diff --git a/AndroidKernel.mk b/AndroidKernel.mk index 453b3c5206fa..dac2244c09b1 100644 --- a/AndroidKernel.mk +++ b/AndroidKernel.mk @@ -20,6 +20,10 @@ USE_MODULE ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_MODULES=y DTS_NAMES ?= $(shell $(PERL) -e 'while (<>) {$$a = $$1 if /CONFIG_ARCH_((?:MSM|QSD|MPQ)[a-zA-Z0-9]+)=y/; $$r = $$1 if /CONFIG_MSM_SOC_REV_(?!NONE)(\w+)=y/; $$arch = $$arch.lc("$$a$$r ") if /CONFIG_ARCH_((?:MSM|QSD|MPQ)[a-zA-Z0-9]+)=y/} print $$arch;' $(KERNEL_CONFIG)) KERNEL_USE_OF ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_USE_OF=y/) { $$of = "y"; break; } } print $$of;' kernel/arch/arm/configs/$(KERNEL_DEFCONFIG)) LOCALE_KOR ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_LOCALE_KOR=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) +LOCALE_JPN ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_LOCALE_JPN=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) +JS_PROJECT ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_JS_PROJECT=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) +JS_TW_PROJECT ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_MACH_JS01LTEZT=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) +LOCALE_CHN_DUOS ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_MACH_H3GDUOS=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) K_PROJECT ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_K_PROJECT=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) H_PROJECT ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_H_PROJECT=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) F_PROJECT ?= $(shell $(PERL) -e '$$of = "n"; while (<>) { if (/CONFIG_SEC_F_PROJECT=y/) { $$of = "y"; break; } } print $$of;' $(KERNEL_CONFIG)) @@ -74,10 +78,18 @@ $(info printing $(DTS_NAMES)) $(info printing $(DTS_FILES)) ifeq "$(H_PROJECT)" "y" - ifeq "$(LOCALE_KOR)" "y" - DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-hltekor*.dts) + ifeq "$(LOCALE_JPN)" "y" + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-hltejpn*.dts) else - DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-hlte-*.dts) + ifeq "$(LOCALE_KOR)" "y" + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-hltekor*.dts) + else + ifeq "$(LOCALE_CHN_DUOS)" "y" + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-h3gchnduos*.dts) + else + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-hlte-*.dts) + endif + endif endif endif ifeq "$(F_PROJECT)" "y" @@ -94,6 +106,15 @@ ifeq "$(KS01_PROJECT)" "y" DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-ks01lte*.dts) endif endif +ifeq "$(JS_PROJECT)" "y" + ifeq "$(LOCALE_JPN)" "y" + ifeq "$(JS_TW_PROJECT)" "y" + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-js01ltetw*.dts) + else + DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974/$(DTS_NAME)-sec-js01ltejpn*.dts) + endif + endif +endif ifeq "$(KACTIVE_PROJECT)" "y" DTS_FILES = $(wildcard $(TOP)/kernel/arch/arm/boot/dts/msm8974pro/$(DTS_NAME)pro-ac-sec-kactive*.dts) endif diff --git a/Documentation/arm/msm/msm_ipc_logging.txt b/Documentation/arm/msm/msm_ipc_logging.txt index cb330b0e0cff..14229dc08ed0 100644 --- a/Documentation/arm/msm/msm_ipc_logging.txt +++ b/Documentation/arm/msm/msm_ipc_logging.txt @@ -149,6 +149,7 @@ Kernel-Space Interface APIs * * @max_num_pages: Number of pages of logging space required (max. 10) * @mod_name : Name of the directory entry under DEBUGFS + * @user_version : Version number of user-defined message formats * * returns reference to context on success, NULL on failure */ diff --git a/Documentation/devicetree/bindings/arm/msm/pm-8x60.txt b/Documentation/devicetree/bindings/arm/msm/pm-8x60.txt index 2fbe4ca13037..795af3bbd7d8 100644 --- a/Documentation/devicetree/bindings/arm/msm/pm-8x60.txt +++ b/Documentation/devicetree/bindings/arm/msm/pm-8x60.txt @@ -12,7 +12,6 @@ debug the power collapse state on each core. The required properties for PM-8x60 are: - compatible: "qcom,pm-8x60" -- qcom,lpm-levels: phandle for associated lpm_levels device. The optional properties are: @@ -40,5 +39,4 @@ qcom,pm-8x60@fe800664 { reg = <0xfe800664 0x40>; qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; - qcom,lpm-levels = <&lpm_levels>; }; diff --git a/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt b/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt index ae6f8ef66267..96485cb1ce5c 100644 --- a/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt +++ b/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt @@ -254,6 +254,11 @@ Optional properties: mode. This master delay (t_init_delay as per DSI spec) should be sum of DSI internal delay to reach fuctional after power up and minimum delay required by panel to reach functional. +- qcom,mdss-dsi-rx-eot-ignore: Boolean used to enable ignoring end of transmission packets. +- qcom,mdss-dsi-tx-eot-append: Boolean used to enable appending end of transmission packets. +- qcom,panel-roi-alignment: Specifies the panel ROI alignment restrictions on its + left, top, width, height alignments and minimum width and + height values Note, if a given optional qcom,* binding is not present, then the driver will configure the default values specified. @@ -348,5 +353,8 @@ Example: qcom,mdss-dsi-reset-sequence = <1 2>, <0 10>, <1 10>; qcom,mdss-dsi-lp11-init; qcom,mdss-dsi-init-delay-us = <100>; + mdss-dsi-rx-eot-ignore; + mdss-dsi-tx-eot-append; + qcom,panel-roi-alignment = <4 4 2 2 20 20>; }; }; diff --git a/Documentation/devicetree/bindings/fb/mdss-mdp.txt b/Documentation/devicetree/bindings/fb/mdss-mdp.txt index fe4ee3576041..ae539b304f47 100644 --- a/Documentation/devicetree/bindings/fb/mdss-mdp.txt +++ b/Documentation/devicetree/bindings/fb/mdss-mdp.txt @@ -246,6 +246,8 @@ Optional properties: - qcom,mdss-has-wfd-blk: Boolean property to indicate the presence of dedicated writeback wfd block in MDSS as opposed to writeback block that is shared between rotator and wfd. +- qcom,mdss-no-lut-read: Boolean property to indicate reading of LUT is + not supported. - qcom,mdss-smp-mb-per-pipe: Maximum number of shared memory pool blocks restricted for a source surface pipe. If this property is not specified, no such restriction @@ -288,6 +290,10 @@ Fudge Factors: Fudge factors are used to boost demand for FUDGE(x, a, b) = ((x * a) / b) - qcom,mdss-ib-factor: This fudge factor is applied to calculated ib values in default conditions. +- qcom,mdss-ib-factor-overlap: This fudge factor is applied to calculated ib + values when the overlap bandwidth is the + predominant value compared to prefill bandwidth + value. - qcom,mdss-clk-factor: This fudge factor is applied to calculated mdp clk rate in default conditions. - qcom,mdss-highest-bank-bit: Property to indicate tile format as opposed to usual @@ -407,6 +413,7 @@ Example: qcom,mdss-has-bwc; qcom,mdss-has-decimation; qcom,mdss-has-wfd-blk; + qcom,mdss-no-lut-read; qcom,mdss-ctl-off = <0x00000600 0x00000700 0x00000800 0x00000900 0x0000A00>; diff --git a/Documentation/devicetree/bindings/tty/serial/msm_serial_hs.txt b/Documentation/devicetree/bindings/tty/serial/msm_serial_hs.txt index 762d40f673e8..031be45f81b8 100644 --- a/Documentation/devicetree/bindings/tty/serial/msm_serial_hs.txt +++ b/Documentation/devicetree/bindings/tty/serial/msm_serial_hs.txt @@ -64,6 +64,9 @@ for uart. receiving interrupt with UART RX GPIO IRQ line (i.e. above wakeup_irq property), HSUART driver injects provided character with property rx_to_inject. - qcom, rx-char-to-inject : The character to be inserted on wakeup. +- qcom, no-suspend-delay : This decides system to go to suspend immediately +or not + - Refer to "Documentation/devicetree/bindings/arm/msm/msm_bus.txt" for below optional properties: - qcom,msm_bus,name diff --git a/Documentation/networking/ip-sysctl.txt b/Documentation/networking/ip-sysctl.txt index 2d4a6db25f0c..b95b6ae2d9ba 100644 --- a/Documentation/networking/ip-sysctl.txt +++ b/Documentation/networking/ip-sysctl.txt @@ -22,6 +22,13 @@ ip_no_pmtu_disc - BOOLEAN min_pmtu - INTEGER default 552 - minimum discovered Path MTU +fwmark_reflect - BOOLEAN + Controls the fwmark of kernel-generated IPv4 reply packets that are not + associated with a socket for example, TCP RSTs or ICMP echo replies). + If unset, these packets have a fwmark of zero. If set, they have the + fwmark of the packet they are replying to. + Default: 0 + route/max_size - INTEGER Maximum number of routes allowed in the kernel. Increase this when using large numbers of interfaces and/or routes. @@ -1048,6 +1055,13 @@ proxy_ndp - INTEGER 2 NDP packets are sent to userspace, where a userspace proxy can be implemented +fwmark_reflect - BOOLEAN + Controls the fwmark of kernel-generated IPv6 reply packets that are not + associated with a socket for example, TCP RSTs or ICMPv6 echo replies). + If unset, these packets have a fwmark of zero. If set, they have the + fwmark of the packet they are replying to. + Default: 0 + conf/interface/*: Change special settings per interface. @@ -1265,6 +1279,19 @@ force_tllao - BOOLEAN race condition where the sender deletes the cached link-layer address prior to receiving a response to a previous solicitation." +optimistic_dad - BOOLEAN + Whether to perform Optimistic Duplicate Address Detection (RFC 4429). + 0: disabled (default) + 1: enabled + +use_optimistic - BOOLEAN + If enabled, do not classify optimistic addresses as deprecated during + source address selection. Preferred addresses will still be chosen + before optimistic addresses, subject to other ranking in the source + address selection algorithm. + 0: disabled (default) + 1: enabled + icmp/*: ratelimit - INTEGER Limit the maximal rates for sending ICMPv6 packets. diff --git a/arch/arm/boot/dts/msm8226-mdss.dtsi b/arch/arm/boot/dts/msm8226-mdss.dtsi index 6286ea04b2ee..cfe5c3dfc29c 100644 --- a/arch/arm/boot/dts/msm8226-mdss.dtsi +++ b/arch/arm/boot/dts/msm8226-mdss.dtsi @@ -50,6 +50,8 @@ qcom,mdss-smp-data = <7 4096>; + qcom,mdss-no-lut-read; + qcom,mdss-ctl-off = <0x00000600 0x00000700>; qcom,mdss-mixer-intf-off = <0x00003200>; qcom,mdss-mixer-wb-off = <0x00003E00>; diff --git a/arch/arm/boot/dts/msm8226-v1-pm.dtsi b/arch/arm/boot/dts/msm8226-v1-pm.dtsi index fca2713ecead..6e79e8a884cb 100644 --- a/arch/arm/boot/dts/msm8226-v1-pm.dtsi +++ b/arch/arm/boot/dts/msm8226-v1-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014 The Linux Foundation. All rights reserved. +/* Copyright (c) 2013 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 @@ -105,7 +105,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_active"; #address-cells = <1>; @@ -297,7 +297,6 @@ qcom,pc-resets-timer; qcom,cpus-as-clocks; qcom,synced-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008{ diff --git a/arch/arm/boot/dts/msm8226-v2-pm.dtsi b/arch/arm/boot/dts/msm8226-v2-pm.dtsi index 1af9a1363909..775356254ef8 100644 --- a/arch/arm/boot/dts/msm8226-v2-pm.dtsi +++ b/arch/arm/boot/dts/msm8226-v2-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014 The Linux Foundation. All rights reserved. +/* Copyright (c) 2013 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 @@ -107,7 +107,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_active"; #address-cells = <1>; @@ -309,7 +309,6 @@ qcom,pc-resets-timer; qcom,cpus-as-clocks; qcom,synced-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008{ diff --git a/arch/arm/boot/dts/msm8610-v1-pm.dtsi b/arch/arm/boot/dts/msm8610-v1-pm.dtsi index a7d0906176bf..5fb406b76079 100644 --- a/arch/arm/boot/dts/msm8610-v1-pm.dtsi +++ b/arch/arm/boot/dts/msm8610-v1-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014 The Linux Foundation. All rights reserved. +/* Copyright (c) 2013 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 @@ -105,7 +105,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_active"; #address-cells = <1>; @@ -295,7 +295,6 @@ qcom,pc-resets-timer; qcom,cpus-as-clocks; qcom,synced-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008{ diff --git a/arch/arm/boot/dts/msm8610-v2-pm.dtsi b/arch/arm/boot/dts/msm8610-v2-pm.dtsi index d353bdffb3ad..331e34470c4f 100644 --- a/arch/arm/boot/dts/msm8610-v2-pm.dtsi +++ b/arch/arm/boot/dts/msm8610-v2-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014 The Linux Foundation. All rights reserved. +/* Copyright (c) 2013 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 @@ -107,7 +107,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_active"; #address-cells = <1>; @@ -307,7 +307,6 @@ qcom,pc-resets-timer; qcom,cpus-as-clocks; qcom,synced-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008{ diff --git a/arch/arm/boot/dts/msm8974-mdss.dtsi b/arch/arm/boot/dts/msm8974-mdss.dtsi index 2f3b733e24dd..649dbe00d059 100644 --- a/arch/arm/boot/dts/msm8974-mdss.dtsi +++ b/arch/arm/boot/dts/msm8974-mdss.dtsi @@ -35,6 +35,7 @@ qcom,mdss-ab-factor = <2 1>; /* 2 times */ qcom,mdss-ib-factor = <6 5>; /* 1.2 times */ qcom,mdss-clk-factor = <5 4>; /* 1.25 times */ + qcom,mdss-ib-factor-overlap = <7 4>; /* 1.75 times */ qcom,max-clk-rate = <320000000>; qcom,mdss-pipe-vig-off = <0x00001200 0x00001600 diff --git a/arch/arm/boot/dts/msm8974-v1-pm.dtsi b/arch/arm/boot/dts/msm8974-v1-pm.dtsi index 516d068eeebc..886177d6fc89 100644 --- a/arch/arm/boot/dts/msm8974-v1-pm.dtsi +++ b/arch/arm/boot/dts/msm8974-v1-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2013, 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 @@ -130,7 +130,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_retention"; #address-cells = <1>; @@ -311,7 +311,6 @@ qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; qcom,cpus-as-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008 { diff --git a/arch/arm/boot/dts/msm8974-v2-pm.dtsi b/arch/arm/boot/dts/msm8974-v2-pm.dtsi index 558a0cb74b43..32ef58684c50 100644 --- a/arch/arm/boot/dts/msm8974-v2-pm.dtsi +++ b/arch/arm/boot/dts/msm8974-v2-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013, 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 @@ -126,7 +126,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_retention"; #address-cells = <1>; @@ -324,7 +324,6 @@ qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; qcom,cpus-as-clocks; - qcom,lpm-levels = <&lpm_levels>; qcom,pm-snoc-client { compatible = "qcom,pm-snoc-client"; diff --git a/arch/arm/boot/dts/msm8974/msm8974-mdss-sec.dtsi b/arch/arm/boot/dts/msm8974/msm8974-mdss-sec.dtsi index b322d8f9aba8..57eebf9b6ac9 100644 --- a/arch/arm/boot/dts/msm8974/msm8974-mdss-sec.dtsi +++ b/arch/arm/boot/dts/msm8974/msm8974-mdss-sec.dtsi @@ -35,6 +35,7 @@ qcom,mdss-ab-factor = <2 1>; /* 2 times */ qcom,mdss-ib-factor = <6 5>; /* 1.2 times */ qcom,mdss-clk-factor = <5 4>; /* 1.25 times */ + qcom,mdss-ib-factor-overlap = <7 4>; /* 1.75 times */ qcom,max-clk-rate = <320000000>; qcom,mdss-pipe-vig-off = <0x00001200 0x00001600 diff --git a/arch/arm/boot/dts/msm8974/msm8974-mdss.dtsi b/arch/arm/boot/dts/msm8974/msm8974-mdss.dtsi index 2f3b733e24dd..649dbe00d059 100644 --- a/arch/arm/boot/dts/msm8974/msm8974-mdss.dtsi +++ b/arch/arm/boot/dts/msm8974/msm8974-mdss.dtsi @@ -35,6 +35,7 @@ qcom,mdss-ab-factor = <2 1>; /* 2 times */ qcom,mdss-ib-factor = <6 5>; /* 1.2 times */ qcom,mdss-clk-factor = <5 4>; /* 1.25 times */ + qcom,mdss-ib-factor-overlap = <7 4>; /* 1.75 times */ qcom,max-clk-rate = <320000000>; qcom,mdss-pipe-vig-off = <0x00001200 0x00001600 diff --git a/arch/arm/boot/dts/msm8974/msm8974-v1-pm.dtsi b/arch/arm/boot/dts/msm8974/msm8974-v1-pm.dtsi index 1765132d66ad..886177d6fc89 100644 --- a/arch/arm/boot/dts/msm8974/msm8974-v1-pm.dtsi +++ b/arch/arm/boot/dts/msm8974/msm8974-v1-pm.dtsi @@ -130,7 +130,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_retention"; #address-cells = <1>; @@ -311,7 +311,6 @@ qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; qcom,cpus-as-clocks; - qcom,lpm-levels = <&lpm_levels>; }; qcom,cpu-sleep-status@f9088008 { diff --git a/arch/arm/boot/dts/msm8974/msm8974-v2-pm.dtsi b/arch/arm/boot/dts/msm8974/msm8974-v2-pm.dtsi index 37dedc92f1a3..6527c54c01dd 100644 --- a/arch/arm/boot/dts/msm8974/msm8974-v2-pm.dtsi +++ b/arch/arm/boot/dts/msm8974/msm8974-v2-pm.dtsi @@ -126,7 +126,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,default-l2-state = "l2_cache_retention"; #address-cells = <1>; @@ -325,7 +325,6 @@ qcom,pc-mode = "tz_l2_int"; qcom,use-sync-timer; qcom,cpus-as-clocks; - qcom,lpm-levels = <&lpm_levels>; qcom,pm-snoc-client { compatible = "qcom,pm-snoc-client"; diff --git a/arch/arm/boot/dts/msm8974pro-pm.dtsi b/arch/arm/boot/dts/msm8974pro-pm.dtsi index 18ab7b0c4ea0..34ae3726822f 100644 --- a/arch/arm/boot/dts/msm8974pro-pm.dtsi +++ b/arch/arm/boot/dts/msm8974pro-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2013-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013, 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 @@ -126,7 +126,7 @@ qcom,L2-spm-is-apcs-master; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,allow-synced-levels; qcom,default-l2-state = "l2_cache_retention"; @@ -333,7 +333,6 @@ reg = <0xfe805664 0x40>; qcom,pc-mode = "tz_l2_int"; qcom,cpus-as-clocks; - qcom,lpm-levels = <&lpm_levels>; qcom,pm-snoc-client { compatible = "qcom,pm-snoc-client"; diff --git a/arch/arm/boot/dts/msm9625-pm.dtsi b/arch/arm/boot/dts/msm9625-pm.dtsi index ec62cd4e88de..1e6cdf2eaffb 100644 --- a/arch/arm/boot/dts/msm9625-pm.dtsi +++ b/arch/arm/boot/dts/msm9625-pm.dtsi @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2013, 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 @@ -28,7 +28,7 @@ 3e 0f]; }; - lpm_levels: qcom,lpm-levels { + qcom,lpm-levels { compatible = "qcom,lpm-levels"; qcom,no-l2-saw; #address-cells = <1>; @@ -167,7 +167,6 @@ reg = <0xfe805664 0x40>; qcom,pc-mode = "tz_l2_ext"; qcom,use-sync-timer; - qcom,lpm-levels = <&lpm_levels>; }; qcom,rpm-log@fc19dc00 { diff --git a/arch/arm/configs/msm8974_sec_defconfig b/arch/arm/configs/msm8974_sec_defconfig index 2e512ca9301e..9c98b04580cf 100755 --- a/arch/arm/configs/msm8974_sec_defconfig +++ b/arch/arm/configs/msm8974_sec_defconfig @@ -1,6 +1,6 @@ # CONFIG_ARM_PATCH_PHYS_VIRT is not set CONFIG_EXPERIMENTAL=y -CONFIG_KERNEL_LZO=y +CONFIG_KERNEL_LZMA=y CONFIG_SYSVIPC=y # CONFIG_RCU_FAST_NO_HZ is not set # CONFIG_IKCONFIG is not set @@ -174,6 +174,7 @@ CONFIG_NETFILTER_TPROXY=y CONFIG_NETFILTER_XTABLES=y CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y CONFIG_NETFILTER_XT_TARGET_LOG=y CONFIG_NETFILTER_XT_TARGET_MARK=y CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y diff --git a/arch/arm/include/asm/mach/mmc.h b/arch/arm/include/asm/mach/mmc.h index e7de62ee0ad0..9e800078cac2 100644 --- a/arch/arm/include/asm/mach/mmc.h +++ b/arch/arm/include/asm/mach/mmc.h @@ -134,7 +134,7 @@ struct mmc_platform_data { u32 (*translate_vdd)(struct device *, unsigned int); unsigned int (*status)(struct device *); struct embedded_sdio_data *embedded_sdio; - int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id); + int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id, void *mmc_host); /* * XPC controls the maximum current in the * default speed mode of SDXC card. diff --git a/arch/arm/mach-msm/bam_dmux.c b/arch/arm/mach-msm/bam_dmux.c index fc99944aa11f..f84f868d2e49 100644 --- a/arch/arm/mach-msm/bam_dmux.c +++ b/arch/arm/mach-msm/bam_dmux.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2014, 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 @@ -2582,7 +2582,7 @@ static ssize_t show_waketime(struct device *dev, if (!bamDmux_pkt_dev) return 0; - return snprintf(buf, sizeof(buf), "%u\n", wakelock_timeout); + return snprintf(buf, PAGE_SIZE, "%u\n", wakelock_timeout); } static ssize_t store_waketime(struct device *dev, @@ -2629,8 +2629,8 @@ static int __init bam_dmux_init(void) pr_err("%s: Failed to create device file(%s)!\n", __func__, dev_attr_waketime.attr.name); #endif - - bam_ipc_log_txt = ipc_log_context_create(BAM_IPC_LOG_PAGES, "bam_dmux"); + bam_ipc_log_txt = ipc_log_context_create(BAM_IPC_LOG_PAGES, "bam_dmux", + 0); if (!bam_ipc_log_txt) { pr_err("%s : unable to create IPC Logging Context", __func__); } diff --git a/arch/arm/mach-msm/include/mach/hlte_felica_gpio.h b/arch/arm/mach-msm/include/mach/hlte_felica_gpio.h new file mode 100644 index 000000000000..226bef241387 --- /dev/null +++ b/arch/arm/mach-msm/include/mach/hlte_felica_gpio.h @@ -0,0 +1,8 @@ +#define GPIO_FELICA_I2C_SCL 51 +#define GPIO_FELICA_I2C_SDA 52 +#define GPIO_FELICA_UART_RX 28 +#define GPIO_FELICA_UART_TX 27 +#define GPIO_FELICA_PON 131 +#define GPIO_FELICA_RFS 63 +#define GPIO_FELICA_HSEL 49 +#define GPIO_FELICA_INTU 18 diff --git a/arch/arm/mach-msm/include/mach/isdbt_pdata.h b/arch/arm/mach-msm/include/mach/isdbt_pdata.h new file mode 100644 index 000000000000..9839e7d0c6e7 --- /dev/null +++ b/arch/arm/mach-msm/include/mach/isdbt_pdata.h @@ -0,0 +1,34 @@ +/* +* Copyright (C) (2011, Samsung Electronics) +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation version 2. +* +* This program is distributed "as is" WITHOUT ANY WARRANTY of any +* kind, whether express or implied; without even the implied warranty +* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +*/ + +#ifndef _ISDBT_PDATA_H_ +#define _ISDBT_PDATA_H_ + +#if defined(CONFIG_ISDBT) +struct isdbt_platform_data { + int irq; + int gpio_en; + int gpio_rst; + int gpio_int; + int gpio_spi_do; + int gpio_spi_di; + int gpio_spi_cs; + int gpio_spi_clk; +#ifdef CONFIG_ISDBT_ANT_DET + int gpio_ant_det; + int irq_ant_det; +#endif +}; +#endif +#endif diff --git a/arch/arm/mach-msm/include/mach/isdbtmm_pdata.h b/arch/arm/mach-msm/include/mach/isdbtmm_pdata.h new file mode 100644 index 000000000000..4b17c5a9a82c --- /dev/null +++ b/arch/arm/mach-msm/include/mach/isdbtmm_pdata.h @@ -0,0 +1,39 @@ +/* +* +* isdbtmm driver +* +* Copyright (C) (2011, Samsung Electronics) +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation version 2. +* +* This program is distributed "as is" WITHOUT ANY WARRANTY of any +* kind, whether express or implied; without even the implied warranty +* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +*/ + +#ifndef _ISDBTMM_PDATA_H_ +#define _ISDBTMM_PDATA_H_ + + +struct isdbtmm_platform_data { + int irq; + int gpio_en; + int gpio_rst; + int gpio_int; + int gpio_spi_do; + int gpio_spi_di; + int gpio_spi_cs; + int gpio_spi_clk; + int gpio_i2c_sda; + int gpio_i2c_scl; +#ifdef CONFIG_TMM_ANT_DET + int gpio_ant_det; + int irq_ant_det; +#endif +}; + +#endif diff --git a/arch/arm/mach-msm/include/mach/msm_ipc_logging.h b/arch/arm/mach-msm/include/mach/msm_ipc_logging.h index b3bf07c8ae7d..82d77850a560 100644 --- a/arch/arm/mach-msm/include/mach/msm_ipc_logging.h +++ b/arch/arm/mach-msm/include/mach/msm_ipc_logging.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -48,10 +48,12 @@ struct decode_context { * * @max_num_pages: Number of pages of logging space required (max. 10) * @mod_name : Name of the directory entry under DEBUGFS + * @user_version : Version number of user-defined message formats * * returns context id on success, NULL on failure */ -void *ipc_log_context_create(int max_num_pages, const char *modname); +void *ipc_log_context_create(int max_num_pages, const char *modname, + uint16_t user_version); /* * msg_encode_start: Start encoding a log message @@ -208,7 +210,7 @@ int ipc_log_context_destroy(void *ctxt); #else static inline void *ipc_log_context_create(int max_num_pages, - const char *modname) + const char *modname, uint16_t user_version) { return NULL; } static inline void msg_encode_start(struct encode_context *ectxt, diff --git a/arch/arm/mach-msm/include/mach/msm_serial_hs.h b/arch/arm/mach-msm/include/mach/msm_serial_hs.h index a555aee63d85..b6b261846952 100644 --- a/arch/arm/mach-msm/include/mach/msm_serial_hs.h +++ b/arch/arm/mach-msm/include/mach/msm_serial_hs.h @@ -1,6 +1,6 @@ /* * Copyright (C) 2008 Google, Inc. - * Copyright (C) 2010-2013, The Linux Foundation. All rights reserved. + * Copyright (C) 2010-2014, The Linux Foundation. All rights reserved. * Author: Nick Pelly * * This software is licensed under the terms of the GNU General Public @@ -32,6 +32,8 @@ * @uart_rfr_gpio: GPIO number for UART RFR Line. * @bam_tx_ep_pipe_index : BAM TX Endpoint Pipe Index for HSUART * @bam_tx_ep_pipe_index : BAM RX Endpoint Pipe Index for HSUART + * @no_suspend_delay : Flag used to make system go to suspend + * immediately or not */ struct msm_serial_hs_platform_data { int wakeup_irq; /* wakeup irq */ @@ -46,6 +48,7 @@ struct msm_serial_hs_platform_data { int uart_rfr_gpio; unsigned bam_tx_ep_pipe_index; unsigned bam_rx_ep_pipe_index; + bool no_suspend_delay; }; unsigned int msm_hs_tx_empty(struct uart_port *uport); @@ -55,6 +58,5 @@ struct uart_port *msm_hs_get_uart_port(int port_index); void msm_hs_set_mctrl(struct uart_port *uport, unsigned int mctrl); -struct uart_port * msm_hs_get_port_by_id(int num); int msm_hs_get_clock_state(struct uart_port *uport); #endif diff --git a/arch/arm/mach-msm/ipc_logging.c b/arch/arm/mach-msm/ipc_logging.c index bad861d6ab9d..8acb78e7f6e6 100644 --- a/arch/arm/mach-msm/ipc_logging.c +++ b/arch/arm/mach-msm/ipc_logging.c @@ -552,8 +552,18 @@ static void *get_deserialization_func(struct ipc_log_context *ilctxt, return NULL; } +/** + * ipc_log_context_create: Create a debug log context + * Should not be called from atomic context + * + * @max_num_pages: Number of pages of logging space required (max. 10) + * @mod_name : Name of the directory entry under DEBUGFS + * @user_version : Version number of user-defined message formats + * + * returns context id on success, NULL on failure + */ void *ipc_log_context_create(int max_num_pages, - const char *mod_name) + const char *mod_name, uint16_t user_version) { struct ipc_log_context *ctxt; struct ipc_log_page *pg = NULL; @@ -587,6 +597,7 @@ void *ipc_log_context_create(int max_num_pages, list_add_tail(&pg->hdr.list, &ctxt->page_list); spin_unlock_irqrestore(&ctxt->ipc_log_context_lock, flags); } + ctxt->user_version = user_version; ctxt->first_page = get_first_page(ctxt); ctxt->last_page = pg; ctxt->write_page = ctxt->first_page; diff --git a/arch/arm/mach-msm/ipc_logging.h b/arch/arm/mach-msm/ipc_logging.h index ddf194b68985..8a8d1b66badc 100644 --- a/arch/arm/mach-msm/ipc_logging.h +++ b/arch/arm/mach-msm/ipc_logging.h @@ -30,7 +30,26 @@ struct ipc_log_page { char data[PAGE_SIZE - sizeof(struct ipc_log_page_header)]; }; +/** + * struct ipc_log_context - main logging context + * + * @user_version: Version number for user-defined messages + * @list: List of log contexts (struct ipc_log_context) + * @page_list: List of log pages (struct ipc_log_page) + * @first_page: First page in list of logging pages + * @last_page: Last page in list of logging pages + * @write_page: Current write page + * @read_page: Current read page (for internal reads) + * @write_avail: Number of bytes available to write in all pages + * @dent: Debugfs node for run-time log extraction + * @dfunc_info_list: List of deserialization functions + * @ipc_log_context_lock: Lock for entire structure + * @read_avail: Completed when new data is added to the log + */ struct ipc_log_context { + uint16_t user_version; + + /* add local data structures after this point */ struct list_head list; struct list_head page_list; struct ipc_log_page *first_page; diff --git a/arch/arm/mach-msm/ipc_router.c b/arch/arm/mach-msm/ipc_router.c index e5cfdbf02a89..3b735aaad5f2 100644 --- a/arch/arm/mach-msm/ipc_router.c +++ b/arch/arm/mach-msm/ipc_router.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2014, 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 @@ -3328,7 +3328,7 @@ static int __init msm_ipc_router_init(void) msm_ipc_router_debug_mask |= SMEM_LOG; ipc_rtr_log_ctxt = ipc_log_context_create(IPC_RTR_LOG_PAGES, - "ipc_router"); + "ipc_router", 0); if (!ipc_rtr_log_ctxt) pr_err("%s: Unable to create IPC logging for IPC RTR", __func__); diff --git a/arch/arm/mach-msm/ipc_socket.c b/arch/arm/mach-msm/ipc_socket.c index 5aa6c93afdf8..77943e3727dd 100644 --- a/arch/arm/mach-msm/ipc_socket.c +++ b/arch/arm/mach-msm/ipc_socket.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2014, 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 @@ -626,13 +626,13 @@ void msm_ipc_router_ipc_log_init(void) { ipc_req_resp_log_txt = ipc_log_context_create(REQ_RESP_IPC_LOG_PAGES, - "ipc_rtr_req_resp"); + "ipc_rtr_req_resp", 0); if (!ipc_req_resp_log_txt) { pr_err("%s: Unable to create IPC logging for Req/Resp", __func__); } ipc_ind_log_txt = - ipc_log_context_create(IND_IPC_LOG_PAGES, "ipc_rtr_ind"); + ipc_log_context_create(IND_IPC_LOG_PAGES, "ipc_rtr_ind", 0); if (!ipc_ind_log_txt) { pr_err("%s: Unable to create IPC logging for Indications", __func__); diff --git a/arch/arm/mach-msm/msm-pm.c b/arch/arm/mach-msm/msm-pm.c index f71afef90983..13487dd26564 100644 --- a/arch/arm/mach-msm/msm-pm.c +++ b/arch/arm/mach-msm/msm-pm.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2010-2013, 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 @@ -26,12 +26,10 @@ #include #include #include -#include #include #include #include #include -#include #include #include #include @@ -120,12 +118,6 @@ static struct msm_pm_sleep_status_data *msm_pm_slp_sts; DEFINE_PER_CPU(struct clk *, cpu_clks); static struct clk *l2_clk; -static int cpu_count; -static DEFINE_SPINLOCK(cpu_cnt_lock); -#define SCM_HANDOFF_LOCK_ID "S:7" -static bool need_scm_handoff_lock; -static remote_spinlock_t scm_handoff_lock; - static void (*msm_pm_disable_l2_fn)(void); static void (*msm_pm_enable_l2_fn)(void); static void (*msm_pm_flush_l2_fn)(void); @@ -487,30 +479,8 @@ static bool msm_pm_pc_hotplug(void) static int msm_pm_collapse(unsigned long unused) { uint32_t cpu = smp_processor_id(); - enum msm_pm_l2_scm_flag flag = MSM_SCM_L2_ON; - - spin_lock(&cpu_cnt_lock); - cpu_count++; - if (cpu_count == num_online_cpus()) - flag = msm_pm_get_l2_flush_flag(); - - pr_debug("cpu:%d cores_in_pc:%d L2 flag: %d\n", - cpu, cpu_count, flag); - - /* - * The scm_handoff_lock will be release by the secure monitor. - * It is used to serialize power-collapses from this point on, - * so that both Linux and the secure context have a consistent - * view regarding the number of running cpus (cpu_count). - * - * It must be acquired before releasing cpu_cnt_lock. - */ - if (need_scm_handoff_lock) - remote_spin_lock_rlock_id(&scm_handoff_lock, - REMOTE_SPINLOCK_TID_START + cpu); - spin_unlock(&cpu_cnt_lock); - if (flag == MSM_SCM_L2_OFF) { + if (msm_pm_get_l2_flush_flag() == MSM_SCM_L2_OFF) { flush_cache_all(); if (msm_pm_flush_l2_fn) msm_pm_flush_l2_fn(); @@ -522,7 +492,8 @@ static int msm_pm_collapse(unsigned long unused) msm_pc_inc_debug_count(cpu, MSM_PC_ENTRY_COUNTER); - scm_call_atomic1(SCM_SVC_BOOT, SCM_CMD_TERMINATE_PC, flag); + scm_call_atomic1(SCM_SVC_BOOT, SCM_CMD_TERMINATE_PC, + msm_pm_get_l2_flush_flag()); msm_pc_inc_debug_count(cpu, MSM_PC_FALLTHRU_COUNTER); @@ -564,12 +535,6 @@ static bool __ref msm_pm_spm_power_collapse( collapsed = save_cpu_regs ? !cpu_suspend(0, msm_pm_collapse) : msm_pm_pc_hotplug(); - if (save_cpu_regs) { - spin_lock(&cpu_cnt_lock); - cpu_count--; - BUG_ON(cpu_count > num_online_cpus()); - spin_unlock(&cpu_cnt_lock); - } msm_jtag_restore_state(); if (collapsed) { @@ -1204,7 +1169,6 @@ static int msm_cpu_pm_probe(struct platform_device *pdev) struct resource *res = NULL; int i; struct msm_pm_init_data_type pdata_local; - struct device_node *lpm_node; int ret = 0; memset(&pdata_local, 0, sizeof(struct msm_pm_init_data_type)); @@ -1231,23 +1195,6 @@ static int msm_cpu_pm_probe(struct platform_device *pdev) msm_pc_debug_counters_phys = 0; } - lpm_node = of_parse_phandle(pdev->dev.of_node, "qcom,lpm-levels", 0); - if (!lpm_node) { - pr_warn("Could not get qcom,lpm-levels handle\n"); - return -EINVAL; - } - need_scm_handoff_lock = of_property_read_bool(lpm_node, - "qcom,allow-synced-levels"); - if (need_scm_handoff_lock) { - ret = remote_spin_lock_init(&scm_handoff_lock, - SCM_HANDOFF_LOCK_ID); - if (ret) { - pr_err("%s: Failed initializing scm_handoff_lock (%d)\n", - __func__, ret); - return ret; - } - } - if (pdev->dev.of_node) { enum msm_pm_pc_mode_type pc_mode; diff --git a/arch/arm/mach-msm/qdsp6v2/Makefile b/arch/arm/mach-msm/qdsp6v2/Makefile index 6bd3efbd0fd4..3d7638d10d52 100644 --- a/arch/arm/mach-msm/qdsp6v2/Makefile +++ b/arch/arm/mach-msm/qdsp6v2/Makefile @@ -12,7 +12,7 @@ obj-$(CONFIG_ARCH_MSM8X60) += pcm_in_proxy.o obj-$(CONFIG_FB_MSM_HDMI_MSM_PANEL) += lpa_if_hdmi.o endif obj-$(CONFIG_MSM_QDSP6_APR) += apr.o apr_v1.o apr_tal.o q6core.o dsp_debug.o -obj-$(CONFIG_MSM_QDSP6_APRV2) += apr.o apr_v2.o apr_tal.o dsp_debug.o +obj-$(CONFIG_MSM_QDSP6_APRV2) += apr.o apr_v2.o apr_tal.o dsp_debug.o voice_svc.o ifdef CONFIG_ARCH_MSM9615 obj-y += audio_acdb.o obj-y += rtac.o diff --git a/arch/arm/mach-msm/qdsp6v2/audio_utils.c b/arch/arm/mach-msm/qdsp6v2/audio_utils.c index 109e120d030e..7ccc0e385aac 100644 --- a/arch/arm/mach-msm/qdsp6v2/audio_utils.c +++ b/arch/arm/mach-msm/qdsp6v2/audio_utils.c @@ -24,9 +24,9 @@ #include "audio_utils.h" #define MIN_FRAME_SIZE 1536 -#define NUM_FRAMES 5 -#define META_SIZE (sizeof(struct meta_out_dsp)) -#define FRAME_SIZE (1 + ((MIN_FRAME_SIZE + META_SIZE) * NUM_FRAMES)) +#define NUM_FRAMES 5 +#define META_SIZE (sizeof(struct meta_out_dsp)) +#define FRAME_SIZE (1 + ((MIN_FRAME_SIZE + META_SIZE) * NUM_FRAMES)) static int audio_in_pause(struct q6audio_in *audio) { diff --git a/arch/arm/mach-msm/qdsp6v2/msm_audio_ion.c b/arch/arm/mach-msm/qdsp6v2/msm_audio_ion.c index 399e0737a90a..e441e35bc398 100644 --- a/arch/arm/mach-msm/qdsp6v2/msm_audio_ion.c +++ b/arch/arm/mach-msm/qdsp6v2/msm_audio_ion.c @@ -29,7 +29,7 @@ struct msm_audio_ion_private { bool smmu_enabled; bool audioheap_enabled; struct iommu_group *group; - u32 domain_id; + int32_t domain_id; struct iommu_domain *domain; }; diff --git a/arch/arm/mach-msm/qdsp6v2/voice_svc.c b/arch/arm/mach-msm/qdsp6v2/voice_svc.c new file mode 100755 index 000000000000..5bf86dcbf548 --- /dev/null +++ b/arch/arm/mach-msm/qdsp6v2/voice_svc.c @@ -0,0 +1,654 @@ +/* Copyright (c) 2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define DRIVER_NAME "voice_svc" +#define MINOR_NUMBER 1 +#define APR_MAX_RESPONSE 10 + +#define MAX(a, b) ((a) >= (b) ? (a) : (b)) + +struct voice_svc_device { + struct cdev *cdev; + struct device *dev; + int major; +}; + +struct voice_svc_prvt { + void* apr_q6_mvm; + void* apr_q6_cvs; + uint16_t response_count; + struct list_head response_queue; + wait_queue_head_t response_wait; + spinlock_t response_lock; +}; + +struct apr_data { + struct apr_hdr hdr; + __u8 payload[0]; +} __packed; + +struct apr_response_list { + struct list_head list; + struct voice_svc_cmd_response resp; +}; + +static struct voice_svc_device *voice_svc_dev; +static struct class *voice_svc_class; +static bool reg_dummy_sess; +static void *dummy_q6_mvm; +static void *dummy_q6_cvs; +dev_t device_num; + +static int voice_svc_dummy_reg(void); +static int32_t qdsp_dummy_apr_callback(struct apr_client_data *data, + void *priv); + +static int32_t qdsp_apr_callback(struct apr_client_data *data, void *priv) +{ + struct voice_svc_prvt *prtd; + struct apr_response_list *response_list; + unsigned long spin_flags; + + if ((data == NULL) || (priv == NULL)) { + pr_err("%s: data or priv is NULL\n", __func__); + return -EINVAL; + } + + prtd = (struct voice_svc_prvt*)priv; + + pr_debug("%s: data->opcode %x\n", __func__, + data->opcode); + + if (data->opcode == RESET_EVENTS) { + if (data->reset_proc == APR_DEST_QDSP6) { + pr_debug("%s: Received reset event\n", __func__); + + if (prtd->apr_q6_mvm != NULL) { + apr_reset(prtd->apr_q6_mvm); + prtd->apr_q6_mvm = NULL; + } + + if (prtd->apr_q6_cvs != NULL) { + apr_reset(prtd->apr_q6_cvs); + prtd->apr_q6_cvs = NULL; + } + } else if (data->reset_proc ==APR_DEST_MODEM) { + pr_debug("%s: Received Modem reset event\n", __func__); + } + } + + spin_lock_irqsave(&prtd->response_lock, spin_flags); + + if (prtd->response_count < APR_MAX_RESPONSE) { + response_list = (struct apr_response_list *)kmalloc( + sizeof(struct apr_response_list) + data->payload_size, + GFP_ATOMIC); + if (response_list == NULL) { + pr_err("%s: kmalloc failed\n", __func__); + + return -ENOMEM; + } + + response_list->resp.src_port = data->src_port; + response_list->resp.dest_port = ((data->dest_port) >> 8); + response_list->resp.token = data->token; + response_list->resp.opcode = data->opcode; + response_list->resp.payload_size = data->payload_size; + if (data->payload != NULL && data->payload_size > 0) { + memcpy(response_list->resp.payload, data->payload, + data->payload_size); + } + + list_add_tail(&response_list->list, &prtd->response_queue); + prtd->response_count++; + + wake_up(&prtd->response_wait); + } else { + pr_err("%s: Response dropped since the queue is full\n", __func__); + } + + spin_unlock_irqrestore(&prtd->response_lock, spin_flags); + + return 0; +} + +static int32_t qdsp_dummy_apr_callback(struct apr_client_data *data, void *priv) +{ + /* Do Nothing */ + return 0; +} + +static void voice_svc_update_hdr(struct voice_svc_cmd_request* apr_req_data, + struct apr_data *aprdata, + struct voice_svc_prvt *prtd) +{ + + aprdata->hdr.hdr_field = APR_HDR_FIELD(APR_MSG_TYPE_SEQ_CMD, \ + APR_HDR_LEN(sizeof(struct apr_hdr)),\ + APR_PKT_VER); + aprdata->hdr.src_port = ((apr_req_data->src_port) << 8 | 0x0001); + aprdata->hdr.dest_port = apr_req_data->dest_port; + aprdata->hdr.token = apr_req_data->token; + aprdata->hdr.opcode = apr_req_data->opcode; + aprdata->hdr.pkt_size = APR_PKT_SIZE(APR_HDR_SIZE, + apr_req_data->payload_size); + memcpy(aprdata->payload, apr_req_data->payload, + apr_req_data->payload_size); +} + +static int voice_svc_send_req(struct voice_svc_cmd_request *apr_request, + struct voice_svc_prvt *prtd) +{ + int ret = 0; + void *apr_handle = NULL; + struct apr_data *aprdata = NULL; + uint32_t user_payload_size = 0; + + if (apr_request == NULL) { + pr_err("%s: apr_request is NULL\n", __func__); + + ret = -EINVAL; + goto done; + } + + user_payload_size = apr_request->payload_size; + + aprdata = kmalloc(sizeof(struct apr_data) + user_payload_size, + GFP_KERNEL); + + if (aprdata == NULL) { + pr_err("%s: aprdata kmalloc failed.", __func__); + + ret = -ENOMEM; + goto done; + } + + voice_svc_update_hdr(apr_request, aprdata, prtd); + + if (!strncmp(apr_request->svc_name, VOICE_SVC_CVS_STR, + MAX(sizeof(apr_request->svc_name), sizeof(VOICE_SVC_CVS_STR)))) { + apr_handle = prtd->apr_q6_cvs; + } else if (!strncmp(apr_request->svc_name, VOICE_SVC_MVM_STR, + MAX(sizeof(apr_request->svc_name), sizeof(VOICE_SVC_MVM_STR)))) { + apr_handle = prtd->apr_q6_mvm; + } else { + pr_err("%s: Invalid service %s\n", __func__, + apr_request->svc_name); + + ret = -EINVAL; + goto done; + } + + ret = apr_send_pkt(apr_handle, (uint32_t *)aprdata); + + if (ret < 0) { + pr_err("%s: Fail in sending SNDRV_VOICE_SVC_REQUEST\n", + __func__); + ret = -EINVAL; + } else { + pr_debug("%s: apr packet sent successfully %d\n", + __func__, ret); + ret = 0; + } + +done: + if (aprdata != NULL) + kfree(aprdata); + + return ret; +} +static int voice_svc_reg(char *svc, uint32_t src_port, + struct voice_svc_prvt *prtd, void **handle) +{ + int ret = 0; + + if (handle == NULL) { + pr_err("%s: handle is NULL\n", __func__); + ret = -EINVAL; + goto done; + } + + if (*handle != NULL) { + pr_err("%s: svc handle not NULL\n", __func__); + ret = -EINVAL; + goto done; + } + + if (src_port == (APR_MAX_PORTS - 1)) { + pr_err("%s: SRC port reserved for dummy session\n", __func__); + pr_err("%s: Unable to register %s\n", __func__, svc); + ret = -EINVAL; + goto done; + } + + *handle = apr_register("ADSP", + svc, qdsp_apr_callback, + ((src_port) << 8 | 0x0001), + prtd); + + if (*handle == NULL) { + pr_err("%s: Unable to register %s\n", + __func__, svc); + + ret = -EFAULT; + goto done; + } + pr_debug("%s: register %s successful\n", + __func__, svc); +done: + return ret; +} + +static int voice_svc_dereg(char *svc, void **handle) +{ + int ret = 0; + if (handle == NULL) { + pr_err("%s: handle is NULL\n", __func__); + ret = -EINVAL; + goto done; + } + + apr_deregister(*handle); + *handle = NULL; + pr_debug("%s: deregister %s successful\n", + __func__, svc); + +done: + return 0; +} + +static int process_reg_cmd(struct voice_svc_register apr_reg_svc, + struct voice_svc_prvt *prtd) +{ + int ret = 0; + char *svc = NULL; + void **handle = NULL; + + if (!strncmp(apr_reg_svc.svc_name, VOICE_SVC_MVM_STR, + MAX(sizeof(apr_reg_svc.svc_name), sizeof(VOICE_SVC_MVM_STR)))) { + svc = VOICE_SVC_MVM_STR; + handle = &prtd->apr_q6_mvm; + } else if (!strncmp(apr_reg_svc.svc_name, VOICE_SVC_CVS_STR, + MAX(sizeof(apr_reg_svc.svc_name), sizeof(VOICE_SVC_CVS_STR)))) { + svc = VOICE_SVC_CVS_STR; + handle = &prtd->apr_q6_cvs; + } else { + pr_err("%s: Invalid Service: %s\n", __func__, + apr_reg_svc.svc_name); + ret = -EINVAL; + goto done; + } + + if (*handle == NULL && + apr_reg_svc.reg_flag) { + ret = voice_svc_reg(svc, apr_reg_svc.src_port, prtd, + handle); + } else if (handle != NULL && + !apr_reg_svc.reg_flag) { + ret = voice_svc_dereg(svc, handle); + } + +done: + return ret; +} + +static long voice_svc_ioctl(struct file *file, unsigned int cmd, + unsigned long u_arg) +{ + int ret = 0; + struct voice_svc_prvt *prtd; + struct voice_svc_register apr_reg_svc; + struct voice_svc_cmd_request *apr_request = NULL; + struct voice_svc_cmd_response *apr_response = NULL; + struct apr_response_list *resp; + void __user *arg = (void __user *)u_arg; + uint32_t user_payload_size = 0; + unsigned long spin_flags; + + pr_debug("%s: cmd: %u\n", __func__, cmd); + + prtd = (struct voice_svc_prvt*)file->private_data; + + switch (cmd) { + case SNDRV_VOICE_SVC_REGISTER_SVC: + pr_debug("%s: size of struct: %d\n", __func__, + sizeof(apr_reg_svc)); + if (copy_from_user(&apr_reg_svc, arg, sizeof(apr_reg_svc))) { + pr_err("%s: copy_from_user failed\n", __func__); + + ret = -EFAULT; + goto done; + } + + ret = process_reg_cmd(apr_reg_svc, prtd); + + break; + case SNDRV_VOICE_SVC_CMD_REQUEST: + if (!access_ok(VERIFY_READ, arg, + sizeof(struct voice_svc_cmd_request))) { + pr_err("%s: Unable to read user data", __func__); + + ret = -EFAULT; + goto done; + } + + user_payload_size = + ((struct voice_svc_cmd_request*)arg)->payload_size; + + apr_request = kmalloc(sizeof(struct voice_svc_cmd_request) + + user_payload_size, GFP_KERNEL); + + if (apr_request == NULL) { + pr_err("%s: apr_request kmalloc failed.", __func__); + + ret = -ENOMEM; + goto done; + } + + if (copy_from_user(apr_request, arg, + sizeof(struct voice_svc_cmd_request) + + user_payload_size)) { + pr_err("%s: copy from user failed, size %d\n", __func__, + sizeof(struct voice_svc_cmd_request) + + user_payload_size); + + ret = -EFAULT; + goto done; + } + + ret = voice_svc_send_req(apr_request, prtd); + + break; + + case SNDRV_VOICE_SVC_CMD_RESPONSE: + do { + if (!access_ok(VERIFY_READ, arg, + sizeof(struct voice_svc_cmd_response))) { + pr_err("%s: Unable to read user data", + __func__); + + ret = -EFAULT; + goto done; + } + + user_payload_size = + ((struct voice_svc_cmd_response*)arg)->payload_size; + pr_debug("%s: RESPONSE: user payload size %d", + __func__, user_payload_size); + + spin_lock_irqsave(&prtd->response_lock, spin_flags); + if (!list_empty(&prtd->response_queue)) { + resp = list_first_entry(&prtd->response_queue, + struct apr_response_list, list); + + if (user_payload_size < + resp->resp.payload_size) { + pr_err("%s: Invalid payload size %d,%d", + __func__, user_payload_size, + resp->resp.payload_size); + ret = -ENOMEM; + spin_unlock_irqrestore( + &prtd->response_lock, + spin_flags); + goto done; + } + + if (!access_ok(VERIFY_WRITE, arg, + sizeof(struct voice_svc_cmd_response) + + resp->resp.payload_size)) { + ret = -EFAULT; + spin_unlock_irqrestore( + &prtd->response_lock, + spin_flags); + goto done; + } + + if (copy_to_user(arg, &resp->resp, + sizeof(struct voice_svc_cmd_response) + + resp->resp.payload_size)) { + pr_err("%s: copy to user failed, size \ + %d\n", __func__, + sizeof(struct voice_svc_cmd_response) + + resp->resp.payload_size); + + ret = -EFAULT; + spin_unlock_irqrestore( + &prtd->response_lock, + spin_flags); + goto done; + } + + prtd->response_count--; + + list_del(&resp->list); + kfree(resp); + spin_unlock_irqrestore(&prtd->response_lock, + spin_flags); + goto done; + } else { + spin_unlock_irqrestore(&prtd->response_lock, + spin_flags); + wait_event_interruptible(prtd->response_wait, + !list_empty(&prtd->response_queue)); + pr_debug("%s: Interupt recieved for response", + __func__); + } + } while(!apr_response); + break; + default: + pr_debug("%s: cmd: %u\n", __func__, cmd); + ret = -EINVAL; + } + +done: + if (apr_request != NULL) + kfree(apr_request); + + return ret; +} + +static int voice_svc_dummy_reg() +{ + uint32_t src_port = APR_MAX_PORTS - 1; + + pr_debug("%s\n", __func__); + dummy_q6_mvm = apr_register("ADSP", "MVM", + qdsp_dummy_apr_callback, + src_port, + NULL); + if (dummy_q6_mvm == NULL) { + pr_err("%s: Unable to register dummy MVM\n", __func__); + goto err; + } + + dummy_q6_cvs = apr_register("ADSP", "CVS", + qdsp_dummy_apr_callback, + src_port, + NULL); + if (dummy_q6_cvs == NULL) { + pr_err("%s: Unable to register dummy CVS\n", __func__); + goto err; + } + return 0; +err: + if (dummy_q6_mvm != NULL) { + apr_deregister(dummy_q6_mvm); + dummy_q6_mvm = NULL; + } + return -EINVAL; +} + +static int voice_svc_open(struct inode *inode, struct file *file) +{ + struct voice_svc_prvt *prtd = NULL; + + prtd = kmalloc(sizeof(struct voice_svc_prvt), GFP_KERNEL); + + if (prtd == NULL) { + pr_err("%s: kmalloc failed", __func__); + + return -ENOMEM; + } + + memset(prtd, 0, sizeof(struct voice_svc_prvt)); + prtd->apr_q6_cvs = NULL; + prtd->apr_q6_mvm = NULL; + prtd->response_count = 0; + + INIT_LIST_HEAD(&prtd->response_queue); + init_waitqueue_head(&prtd->response_wait); + spin_lock_init(&prtd->response_lock); + + file->private_data = (void*)prtd; + + /* Current APR implementation doesn't support session based + * multiple service registrations. The apr_deregister() + * function sets the destination and client IDs to zero, if + * deregister is called for a single service instance. + * To avoid this, register for additional services. + */ + if (!reg_dummy_sess) { + voice_svc_dummy_reg(); + reg_dummy_sess = 1; + } + return 0; +} + +static int voice_svc_release(struct inode *inode, struct file *file) +{ + kfree(file->private_data); + return 0; +} + +static const struct file_operations voice_svc_fops = { + .owner = THIS_MODULE, + .open = voice_svc_open, + .unlocked_ioctl = voice_svc_ioctl, + .release = voice_svc_release, +}; + + +static int voice_svc_probe(struct platform_device *pdev) +{ + int ret = 0; + + voice_svc_dev = devm_kzalloc(&pdev->dev, sizeof(struct voice_svc_device), + GFP_KERNEL); + if (!voice_svc_dev) { + pr_err("%s: kzalloc failed\n", __func__); + ret = -ENOMEM; + goto done; + } + + ret = alloc_chrdev_region(&device_num, 0, MINOR_NUMBER, DRIVER_NAME); + if (ret) { + pr_err("%s: Failed to alloc chrdev\n", __func__); + ret = -ENODEV; + goto done; + } + + voice_svc_dev->major = MAJOR(device_num); + voice_svc_class = class_create(THIS_MODULE, DRIVER_NAME); + if (IS_ERR(voice_svc_class)) { + ret = PTR_ERR(voice_svc_class); + pr_err("%s: Failed to create class; err = %d\n", __func__, + ret); + goto class_err; + } + + voice_svc_dev->dev = device_create(voice_svc_class, NULL, device_num, + NULL, DRIVER_NAME); + if (IS_ERR(voice_svc_dev->dev)) { + ret = PTR_ERR(voice_svc_dev->dev); + pr_err("%s: Failed to create device; err = %d\n", __func__, + ret); + goto dev_err; + } + + voice_svc_dev->cdev = cdev_alloc(); + cdev_init(voice_svc_dev->cdev, &voice_svc_fops); + ret = cdev_add(voice_svc_dev->cdev, device_num, MINOR_NUMBER); + if (ret) { + pr_err("%s: Failed to register chrdev; err = %d\n", __func__, + ret); + goto add_err; + } + pr_debug("%s: Device created\n", __func__); + goto done; + +add_err: + cdev_del(voice_svc_dev->cdev); + device_destroy(voice_svc_class, device_num); +dev_err: + class_destroy(voice_svc_class); +class_err: + unregister_chrdev_region(0, MINOR_NUMBER); +done: + return ret; +} + +static int voice_svc_remove(struct platform_device *pdev) +{ + cdev_del(voice_svc_dev->cdev); + kfree(voice_svc_dev->cdev); + device_destroy(voice_svc_class, device_num); + class_destroy(voice_svc_class); + unregister_chrdev_region(0, MINOR_NUMBER); + kfree(voice_svc_dev); + + return 0; +} + +static struct of_device_id voice_svc_of_match[] = { + {.compatible = "qcom,msm-voice-svc"}, + { } +}; +MODULE_DEVICE_TABLE(of, voice_svc_of_match); + +static struct platform_driver voice_svc_driver = { + .probe = voice_svc_probe, + .remove = voice_svc_remove, + .driver = { + .name = "msm-voice-svc", + .owner = THIS_MODULE, + .of_match_table = voice_svc_of_match, + }, +}; + +static int __init voice_svc_init(void) +{ + return platform_driver_register(&voice_svc_driver); +} + +static void __exit voice_svc_exit(void) +{ + platform_driver_unregister(&voice_svc_driver); +} + +module_init(voice_svc_init); +module_exit(voice_svc_exit); + +MODULE_DESCRIPTION("Soc QDSP6v2 Audio APR driver"); +MODULE_LICENSE("GPL v2"); diff --git a/arch/arm/mach-msm/smd.c b/arch/arm/mach-msm/smd.c index 1241e44b5e21..7d3de3e96a01 100644 --- a/arch/arm/mach-msm/smd.c +++ b/arch/arm/mach-msm/smd.c @@ -1,7 +1,7 @@ /* arch/arm/mach-msm/smd.c * * Copyright (C) 2007 Google, Inc. - * Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2008-2014, The Linux Foundation. All rights reserved. * Author: Brian Swetland * * This software is licensed under the terms of the GNU General Public @@ -3326,13 +3326,13 @@ int __init msm_smd_init(void) if (registered) return 0; - smd_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smd"); + smd_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smd", 0); if (!smd_log_ctx) { pr_err("%s: unable to create SMD logging context\n", __func__); msm_smd_debug_mask = 0; } - smsm_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smsm"); + smsm_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smsm", 0); if (!smsm_log_ctx) { pr_err("%s: unable to create SMSM logging context\n", __func__); msm_smd_debug_mask = 0; diff --git a/arch/arm/mach-msm/smd_init_dt.c b/arch/arm/mach-msm/smd_init_dt.c index 640656cbb515..046f4470d804 100644 --- a/arch/arm/mach-msm/smd_init_dt.c +++ b/arch/arm/mach-msm/smd_init_dt.c @@ -21,7 +21,7 @@ #include #include -#include +#include "smd_private.h" #define MODULE_NAME "msm_smd" #define IPC_LOG(level, x...) do { \ diff --git a/arch/arm/mach-msm/smd_pkt.c b/arch/arm/mach-msm/smd_pkt.c index 1c44f9ac0f7a..90b630d2cda9 100644 --- a/arch/arm/mach-msm/smd_pkt.c +++ b/arch/arm/mach-msm/smd_pkt.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2008-2014, 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 @@ -1123,7 +1123,7 @@ static int __init smd_pkt_init(void) INIT_DELAYED_WORK(&loopback_work, loopback_probe_worker); smd_pkt_ilctxt = ipc_log_context_create(SMD_PKT_IPC_LOG_PAGE_CNT, - "smd_pkt"); + "smd_pkt", 0); D_STATUS("SMD Packet Port Driver Initialized.\n"); return 0; diff --git a/arch/arm/mach-msm/smd_tty.c b/arch/arm/mach-msm/smd_tty.c index 1d786e425aa8..e93a46eb140c 100644 --- a/arch/arm/mach-msm/smd_tty.c +++ b/arch/arm/mach-msm/smd_tty.c @@ -1,7 +1,7 @@ /* arch/arm/mach-msm/smd_tty.c * * Copyright (C) 2007 Google, Inc. - * Copyright (c) 2009-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2009-2014, The Linux Foundation. All rights reserved. * Author: Brian Swetland * * This software is licensed under the terms of the GNU General Public @@ -705,7 +705,7 @@ static int smd_tty_dummy_probe(struct platform_device *pdev) static void smd_tty_log_init(void) { smd_tty_log_ctx = ipc_log_context_create(SMD_TTY_LOG_PAGES, - "smd_tty"); + "smd_tty", 0); if (!smd_tty_log_ctx) pr_err("%s: Unable to create IPC log", __func__); } diff --git a/arch/arm/mach-msm/smem.c b/arch/arm/mach-msm/smem.c index f41240a69eec..8f474dafaade 100644 --- a/arch/arm/mach-msm/smem.c +++ b/arch/arm/mach-msm/smem.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013-2014, 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 @@ -1381,7 +1381,7 @@ int __init msm_smem_init(void) registered = true; - smem_ipc_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smem"); + smem_ipc_log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smem", 0); if (!smem_ipc_log_ctx) { pr_err("%s: unable to create logging context\n", __func__); msm_smem_debug_mask = 0; diff --git a/arch/arm/mach-msm/smp2p.c b/arch/arm/mach-msm/smp2p.c index 5574eae8597c..22eb7991fb12 100644 --- a/arch/arm/mach-msm/smp2p.c +++ b/arch/arm/mach-msm/smp2p.c @@ -1,6 +1,6 @@ /* arch/arm/mach-msm/smp2p.c * - * Copyright (c) 2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2013-2014, 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 @@ -1829,7 +1829,7 @@ static int __init msm_smp2p_init(void) in_list[i].smem_edge_in = NULL; } - log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smp2p"); + log_ctx = ipc_log_context_create(NUM_LOG_PAGES, "smp2p", 0); if (!log_ctx) SMP2P_ERR("%s: unable to create log context\n", __func__); diff --git a/drivers/Kconfig b/drivers/Kconfig index aba8e36789e9..715845bb9d88 100755 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -169,4 +169,6 @@ source "drivers/felica/Kconfig" source "drivers/extcon/Kconfig" source "drivers/irda/Kconfig" + +source "drivers/secfilter/Kconfig" endmenu diff --git a/drivers/Makefile b/drivers/Makefile index 8553baac918f..b2a48152c8f2 100755 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -159,3 +159,6 @@ obj-$(CONFIG_SENSORS_FINGERPRINT) += fingerprint/ obj-$(CONFIG_EXTCON) += extcon/ obj-$(CONFIG_IR_REMOCON_MC96) += irda/ + +# SecFilter Driver +obj-$(CONFIG_SEC_NET_FILTER) += secfilter/ diff --git a/drivers/barcode_emul/barcode_emul_ice4.c b/drivers/barcode_emul/barcode_emul_ice4.c index b86ebc0f995c..87ddf851e723 100755 --- a/drivers/barcode_emul/barcode_emul_ice4.c +++ b/drivers/barcode_emul/barcode_emul_ice4.c @@ -716,7 +716,7 @@ static ssize_t barcode_ver_check_show(struct device *dev, barcode_emul_read(data->client, FW_VER_ADDR, 1, &fw_ver); fw_ver = (fw_ver >> 5) & 0x7; - return snprintf(buf, sizeof(buf), "%d\n", fw_ver+14); + return snprintf(buf, PAGE_SIZE, "%d\n", fw_ver+14); } static DEVICE_ATTR(barcode_ver_check, 0664, barcode_ver_check_show, NULL); @@ -729,7 +729,7 @@ static ssize_t barcode_led_status_show(struct device *dev, u8 status; barcode_emul_read(data->client, BEAM_STATUS_ADDR, 1, &status); status = status & 0x1; - return snprintf(buf, sizeof(buf), "%d\n", status); + return snprintf(buf, PAGE_SIZE, "%d\n", status); } static DEVICE_ATTR(barcode_led_status, 0664, barcode_led_status_show, NULL); diff --git a/drivers/barcode_emul/barcode_emul_ice4_hlte.c b/drivers/barcode_emul/barcode_emul_ice4_hlte.c index 1eb0fa5c5195..856b712d6f40 100755 --- a/drivers/barcode_emul/barcode_emul_ice4_hlte.c +++ b/drivers/barcode_emul/barcode_emul_ice4_hlte.c @@ -790,7 +790,7 @@ static ssize_t barcode_ver_check_show(struct device *dev, pr_info("Actual value read f/w %u \n",fw_ver); fw_ver = (fw_ver >> 5) & 0x7; - return snprintf(buf, sizeof(buf), "%u\n", fw_ver+14); + return snprintf(buf, PAGE_SIZE, "%u\n", fw_ver+14); } static DEVICE_ATTR(barcode_ver_check, 0664, barcode_ver_check_show, NULL); @@ -803,7 +803,7 @@ static ssize_t barcode_led_status_show(struct device *dev, u8 status; barcode_emul_read(data->client, BEAM_STATUS_ADDR, 1, &status); status = status & 0x1; - return snprintf(buf, sizeof(buf), "%d\n", status); + return snprintf(buf, PAGE_SIZE, "%d\n", status); } static DEVICE_ATTR(barcode_led_status, 0664, barcode_led_status_show, NULL); diff --git a/drivers/base/sync.c b/drivers/base/sync.c index 645a698a1baa..7e1ecf34c9ac 100644 --- a/drivers/base/sync.c +++ b/drivers/base/sync.c @@ -34,7 +34,6 @@ static void sync_fence_signal_pt(struct sync_pt *pt); static int _sync_pt_has_signaled(struct sync_pt *pt); static void sync_fence_free(struct kref *kref); -static void sync_dump(struct sync_fence *fence); static LIST_HEAD(sync_timeline_list_head); static DEFINE_SPINLOCK(sync_timeline_list_lock); @@ -586,6 +585,74 @@ static bool sync_fence_check(struct sync_fence *fence) return fence->status != 0; } +static const char *sync_status_str(int status) +{ + if (status > 0) + return "signaled"; + else if (status == 0) + return "active"; + else + return "error"; +} + +static void sync_pt_log(struct sync_pt *pt) +{ + int status = pt->status; + pr_cont(" %s_pt %s", + pt->parent->name, + sync_status_str(status)); + + if (pt->status) { + struct timeval tv = ktime_to_timeval(pt->timestamp); + pr_cont("@%ld.%06ld", tv.tv_sec, tv.tv_usec); + } + + if (pt->parent->ops->timeline_value_str && + pt->parent->ops->pt_value_str) { + char value[64]; + pt->parent->ops->pt_value_str(pt, value, sizeof(value)); + pr_cont(": %s", value); + pt->parent->ops->timeline_value_str(pt->parent, value, + sizeof(value)); + pr_cont(" / %s", value); + } + + pr_cont("\n"); + + /* Show additional details for active fences */ + if (pt->status == 0 && pt->parent->ops->pt_log) + pt->parent->ops->pt_log(pt); +} + +void sync_fence_log(struct sync_fence *fence) +{ + struct list_head *pos; + unsigned long flags; + + pr_info("[%p] %s: %s\n", fence, fence->name, + sync_status_str(fence->status)); + + pr_info("waiters:\n"); + + spin_lock_irqsave(&fence->waiter_list_lock, flags); + list_for_each(pos, &fence->waiter_list_head) { + struct sync_fence_waiter *waiter = + container_of(pos, struct sync_fence_waiter, + waiter_list); + + pr_info(" %pF\n", waiter->callback); + } + spin_unlock_irqrestore(&fence->waiter_list_lock, flags); + + pr_info("syncpoints:\n"); + list_for_each(pos, &fence->pt_list_head) { + struct sync_pt *pt = + container_of(pos, struct sync_pt, pt_list); + sync_pt_log(pt); + } +} +EXPORT_SYMBOL(sync_fence_log); + int sync_fence_wait(struct sync_fence *fence, long timeout) { int err = 0; @@ -611,7 +678,7 @@ int sync_fence_wait(struct sync_fence *fence, long timeout) if (fence->status < 0) { pr_info("fence error %d on [%p]\n", fence->status, fence); - sync_dump(fence); + sync_fence_log(fence); return fence->status; } @@ -619,7 +686,7 @@ int sync_fence_wait(struct sync_fence *fence, long timeout) if (timeout > 0) { pr_info("fence timeout on [%p] after %dms\n", fence, jiffies_to_msecs(timeout)); - sync_dump(fence); + sync_fence_log(fence); } return -ETIME; } @@ -841,16 +908,6 @@ static long sync_fence_ioctl(struct file *file, unsigned int cmd, } #ifdef CONFIG_DEBUG_FS -static const char *sync_status_str(int status) -{ - if (status > 0) - return "signaled"; - else if (status == 0) - return "active"; - else - return "error"; -} - static void sync_print_pt(struct seq_file *s, struct sync_pt *pt, bool fence) { int status = pt->status; @@ -983,35 +1040,4 @@ static __init int sync_debugfs_init(void) return 0; } late_initcall(sync_debugfs_init); - -#define DUMP_CHUNK 256 -static char sync_dump_buf[64 * 1024]; -static void sync_dump(struct sync_fence *fence) -{ - struct seq_file s = { - .buf = sync_dump_buf, - .size = sizeof(sync_dump_buf) - 1, - }; - int i; - - seq_printf(&s, "fence:\n--------------\n"); - sync_print_fence(&s, fence); - seq_printf(&s, "\n"); - - for (i = 0; i < s.count; i += DUMP_CHUNK) { - if ((s.count - i) > DUMP_CHUNK) { - char c = s.buf[i + DUMP_CHUNK]; - s.buf[i + DUMP_CHUNK] = 0; - pr_cont("%s", s.buf + i); - s.buf[i + DUMP_CHUNK] = c; - } else { - s.buf[s.count] = 0; - pr_cont("%s", s.buf + i); - } - } -} -#else -static void sync_dump(struct sync_fence *fence) -{ -} #endif diff --git a/drivers/bluetooth/bluesleep.c b/drivers/bluetooth/bluesleep.c index 673bf1b9e0f2..b8814831c441 100644 --- a/drivers/bluetooth/bluesleep.c +++ b/drivers/bluetooth/bluesleep.c @@ -75,10 +75,12 @@ #define POLARITY_LOW 0 #define POLARITY_HIGH 1 -/* enable/disable wake-on-bluetooth */ -#define BT_ENABLE_IRQ_WAKE 1 - -#define BT_BLUEDROID_SUPPORT 1 +enum msm_hs_clk_states_e { + MSM_HS_CLK_PORT_OFF, /* port not in use */ + MSM_HS_CLK_OFF, /* clock disabled */ + MSM_HS_CLK_REQUEST_OFF, /* disable after TX and RX flushed */ + MSM_HS_CLK_ON, /* clock enabled */ +}; struct bluesleep_info { unsigned host_wake; @@ -92,18 +94,22 @@ struct bluesleep_info { /* work function */ static void bluesleep_sleep_work(struct work_struct *work); +static void bluesleep_uart_awake_work(struct work_struct *work); /* work queue */ DECLARE_DELAYED_WORK(sleep_workqueue, bluesleep_sleep_work); +DECLARE_DELAYED_WORK(uart_awake_workqueue, bluesleep_uart_awake_work); /* Macros for handling sleep work */ #define bluesleep_rx_busy() schedule_delayed_work(&sleep_workqueue, 0) #define bluesleep_tx_busy() schedule_delayed_work(&sleep_workqueue, 0) #define bluesleep_rx_idle() schedule_delayed_work(&sleep_workqueue, 0) #define bluesleep_tx_idle() schedule_delayed_work(&sleep_workqueue, 0) +#define bluesleep_uart_work() schedule_delayed_work(&uart_awake_workqueue, 0) + +/* 5 second timeout */ +#define TX_TIMER_INTERVAL 5 -/* 10 second timeout */ -#define TX_TIMER_INTERVAL 3 /* state variable names and bit positions */ #define BT_PROTO 0x01 @@ -112,12 +118,7 @@ DECLARE_DELAYED_WORK(sleep_workqueue, bluesleep_sleep_work); #define BT_EXT_WAKE 0x08 #define BT_SUSPEND 0x10 -#if BT_BLUEDROID_SUPPORT -static bool has_lpm_enabled; -#else -/* global pointer to a single hci device. */ -static struct hci_dev *bluesleep_hdev; -#endif +static bool bt_enabled; static struct platform_device *bluesleep_uart_dev; static struct bluesleep_info *bsi; @@ -125,10 +126,6 @@ static struct bluesleep_info *bsi; /* * Local function prototypes */ -#if !BT_BLUEDROID_SUPPORT -static int bluesleep_hci_event(struct notifier_block *this, - unsigned long event, void *data); -#endif /* * Global variables @@ -146,20 +143,47 @@ static DEFINE_TIMER(tx_timer, bluesleep_tx_timer_expire, 0, 0); /** Lock for state transitions */ struct mutex bluesleep_mutex; -#if !BT_BLUEDROID_SUPPORT -/** Notifier block for HCI events */ -struct notifier_block hci_event_nblock = { - .notifier_call = bluesleep_hci_event, -}; -#endif - struct proc_dir_entry *bluetooth_dir, *sleep_dir; + +/* extern variable and functions */ +extern int poweroff_charging; + /* * Local functions */ + +static int bluesleep_get_uart_state(void) +{ + int state = 0; + + state = msm_hs_get_clock_state(bsi->uport); + return state; +} + +static void bluesleep_uart_awake_work(struct work_struct *work) +{ + int clk_state; + + if (!bsi->uport) { + BT_DBG("hsuart_power called. But uport is null"); + return; + } + + clk_state = bluesleep_get_uart_state(); + if (clk_state == MSM_HS_CLK_OFF) { + BT_DBG("bluesleep_uart_awake_work : hsuart_power on"); + msm_hs_request_clock_on(bsi->uport); + msm_hs_set_mctrl(bsi->uport, TIOCM_RTS); + }else if(clk_state == MSM_HS_CLK_REQUEST_OFF){ + bluesleep_uart_work(); + } +} + static void hsuart_power(int on) { + int clk_state; + if (test_bit(BT_SUSPEND, &flags) && !on) { BT_DBG("hsuart_power OFF- it's suspend state. so return."); return; @@ -171,9 +195,22 @@ static void hsuart_power(int on) } if (on) { - BT_DBG("hsuart_power on"); - msm_hs_request_clock_on(bsi->uport); - msm_hs_set_mctrl(bsi->uport, TIOCM_RTS); + if(test_bit(BT_TXDATA, &flags)) { + BT_DBG("hsuart_power on"); + msm_hs_request_clock_on(bsi->uport); + msm_hs_set_mctrl(bsi->uport, TIOCM_RTS); + return; + } + + clk_state = bluesleep_get_uart_state(); + if(clk_state == MSM_HS_CLK_REQUEST_OFF) { + BT_DBG("hsuart_power wait"); + bluesleep_uart_work(); + } else { + BT_DBG("hsuart_power on"); + msm_hs_request_clock_on(bsi->uport); + msm_hs_set_mctrl(bsi->uport, TIOCM_RTS); + } } else { BT_DBG("hsuart_power off"); msm_hs_set_mctrl(bsi->uport, 0); @@ -206,6 +243,10 @@ void bluesleep_sleep_wakeup(void) set_bit(BT_EXT_WAKE, &flags); clear_bit(BT_ASLEEP, &flags); } + else { + BT_DBG("bluesleep_sleep_wakeup : already wake up, so start timer..."); + mod_timer(&tx_timer, jiffies + (TX_TIMER_INTERVAL * HZ)); + } } static void bluesleep_tx_data_wakeup(void) @@ -222,6 +263,10 @@ static void bluesleep_tx_data_wakeup(void) set_bit(BT_EXT_WAKE, &flags); clear_bit(BT_ASLEEP, &flags); } + else { + BT_DBG("bluesleep_tx_data_wakeup : already wake up, so start timer..."); + mod_timer(&tx_timer, jiffies + (TX_TIMER_INTERVAL * HZ)); + } } @@ -236,6 +281,20 @@ static void bluesleep_sleep_work(struct work_struct *work) if (mutex_is_locked(&bluesleep_mutex)) BT_DBG("Wait for mutex unlock in bluesleep_sleep_work"); + if (bsi->uport == NULL) { + BT_DBG("bluesleep_sleep_work - uport is null"); + return; + } + + if (bsi->uport->state == NULL) { + BT_DBG("bluesleep_sleep_work - bsi->uport->state is null"); + return; + } + + if (bsi->uport->state->port.tty == NULL) { + BT_DBG("bluesleep_sleep_work - bsi->uport->state->port.tty is null"); + return; + } mutex_lock(&bluesleep_mutex); if (bluesleep_can_sleep()) { @@ -247,12 +306,25 @@ static void bluesleep_sleep_work(struct work_struct *work) } if (msm_hs_tx_empty(bsi->uport)) { + if (test_bit(BT_TXDATA, &flags)) { + BT_DBG("TXDATA remained. Wait until timer expires."); + + mod_timer(&tx_timer, jiffies + TX_TIMER_INTERVAL * HZ); + mutex_unlock(&bluesleep_mutex); + return; + } + BT_DBG("going to sleep..."); set_bit(BT_ASLEEP, &flags); /*Deactivating UART */ hsuart_power(0); + /* Moved from Timer expired */ + if (bsi->has_ext_wake == 1) + gpio_set_value(bsi->ext_wake, 0); + clear_bit(BT_EXT_WAKE, &flags); + /*Deactivating UART */ /* UART clk is not turned off immediately. Release * wakelock after 500 ms. @@ -267,6 +339,7 @@ static void bluesleep_sleep_work(struct work_struct *work) } } else if (!test_bit(BT_EXT_WAKE, &flags) && !test_bit(BT_ASLEEP, &flags)) { + BT_DBG("host_wake high and BT_EXT_WAKE & BT_ASLEEP already freed."); mod_timer(&tx_timer, jiffies + (TX_TIMER_INTERVAL * HZ)); if (bsi->has_ext_wake == 1) { gpio_set_value(bsi->ext_wake, 1); @@ -309,8 +382,11 @@ static void bluesleep_outgoing_data(void) BT_DBG("bluesleep_outgoing_data."); /* if the tx side is sleeping... */ - if (!test_bit(BT_EXT_WAKE, &flags)) { - BT_DBG("tx was sleeping"); + if (!test_bit(BT_EXT_WAKE, &flags)) + BT_DBG("BT_EXT_WAKE freed"); + + if (!test_bit(BT_ASLEEP, &flags)) + BT_DBG("BT_ASLEEP freed"); /* ** Uart Clk should be enabled promptly @@ -319,7 +395,6 @@ static void bluesleep_outgoing_data(void) hsuart_power(1); bluesleep_tx_data_wakeup(); - } mutex_unlock(&bluesleep_mutex); } @@ -343,13 +418,11 @@ static void bluesleep_start(void) gpio_set_value(bsi->ext_wake, 1); } set_bit(BT_EXT_WAKE, &flags); -#if BT_ENABLE_IRQ_WAKE retval = enable_irq_wake(bsi->host_wake_irq); if (retval < 0) { BT_ERR("Couldn't enable BT_HOST_WAKE as wakeup interrupt"); goto fail; } -#endif set_bit(BT_PROTO, &flags); wake_lock(&bsi->wake_lock); return; @@ -372,10 +445,9 @@ static void bluesleep_abnormal_stop(void) del_timer(&tx_timer); clear_bit(BT_PROTO, &flags); -#if BT_ENABLE_IRQ_WAKE if (disable_irq_wake(bsi->host_wake_irq)) BT_ERR("Couldn't disable hostwake IRQ wakeup mode\n"); -#endif + wake_lock_timeout(&bsi->wake_lock, HZ / 2); clear_bit(BT_TXDATA, &flags); @@ -405,21 +477,19 @@ static void bluesleep_stop(void) hsuart_power(1); } -#if BT_ENABLE_IRQ_WAKE if (disable_irq_wake(bsi->host_wake_irq)) BT_ERR("Couldn't disable hostwake IRQ wakeup mode\n"); -#endif + wake_lock_timeout(&bsi->wake_lock, HZ / 2); bsi->uport = NULL; } -#if BT_BLUEDROID_SUPPORT struct uart_port *bluesleep_get_uart_port(void) { struct uart_port *uport = NULL; - uport = msm_hs_get_port_by_id(0); + uport = msm_hs_get_uart_port(0); return uport; } @@ -428,7 +498,7 @@ static int bluesleep_read_proc_lpm(char *page, char **start, off_t offset, int count, int *eof, void *data) { *eof = 1; - return snprintf(page, count, "lpm: %u\n", has_lpm_enabled?1:0 ); + return snprintf(page, count, "lpm: %u\n", bt_enabled?1:0 ); } static int bluesleep_write_proc_lpm(struct file *file, const char *buffer, @@ -446,21 +516,21 @@ static int bluesleep_write_proc_lpm(struct file *file, const char *buffer, BT_ERR("(bluesleep_write_proc_lpm) Unreg HCI notifier."); /* HCI_DEV_UNREG */ bluesleep_stop(); - has_lpm_enabled = false; + bt_enabled = false; //bsi->uport = NULL; } else if (b == '1') { BT_ERR("(bluesleep_write_proc_lpm) Reg HCI notifier."); /* HCI_DEV_REG */ - if (!has_lpm_enabled) { - has_lpm_enabled = true; + if (!bt_enabled) { + bt_enabled = true; bsi->uport = bluesleep_get_uart_port(); /* if bluetooth started, start bluesleep*/ bluesleep_start(); } } else if (b == '2') { BT_ERR("(bluesleep_write_proc_lpm) don`t control ext_wake & uart clk"); - if(has_lpm_enabled) { - has_lpm_enabled = false; + if(bt_enabled) { + bt_enabled = false; bluesleep_abnormal_stop(); } } @@ -492,49 +562,6 @@ static int bluesleep_write_proc_btwrite(struct file *file, const char *buffer, return count; } -#else -/** - * Handles HCI device events. - * @param this Not used. - * @param event The event that occurred. - * @param data The HCI device associated with the event. - * @return NOTIFY_DONE. - */ -static int bluesleep_hci_event(struct notifier_block *this, - unsigned long event, void *data) -{ - struct hci_dev *hdev = (struct hci_dev *) data; - struct hci_uart *hu; - struct uart_state *state; - - if (!hdev) - return NOTIFY_DONE; - - switch (event) { - case HCI_DEV_REG: - if (!bluesleep_hdev) { - bluesleep_hdev = hdev; - hu = (struct hci_uart *) hdev->driver_data; - state = (struct uart_state *) hu->tty->driver_data; - bsi->uport = state->uart_port; - /* if bluetooth started, start bluesleep*/ - bluesleep_start(); - } - break; - case HCI_DEV_UNREG: - bluesleep_stop(); - bluesleep_hdev = NULL; - bsi->uport = NULL; - /* if bluetooth stopped, stop bluesleep also */ - break; - case HCI_DEV_WRITE: - bluesleep_outgoing_data(); - break; - } - - return NOTIFY_DONE; -} -#endif /** * Handles transmission timer expiration. @@ -545,9 +572,7 @@ static void bluesleep_tx_timer_expire(unsigned long data) /* were we silent during the last timeout? */ if (!test_bit(BT_TXDATA, &flags)) { BT_DBG("Tx has been idle"); - if (bsi->has_ext_wake == 1) - gpio_set_value(bsi->ext_wake, 0); - clear_bit(BT_EXT_WAKE, &flags); + bluesleep_tx_idle(); } else { BT_DBG("Tx data during last period"); @@ -797,7 +822,7 @@ static int bluesleep_probe(struct platform_device *pdev) } /* configure ext_wake as output mode*/ - ret = gpio_direction_output(bsi->ext_wake, 1); + ret = gpio_direction_output(bsi->ext_wake, 0); if (ret < 0) { BT_ERR("gpio-keys: failed to configure output direction for GPIO %d, error %d", bsi->ext_wake, ret); @@ -870,7 +895,7 @@ static int bluesleep_resume(struct platform_device *pdev) { if (test_bit(BT_SUSPEND, &flags)) { #ifndef CONFIG_BT_BCM4354 - if (!has_lpm_enabled) { + if (!bt_enabled) { gpio_tlmm_config(GPIO_CFG(bsi->host_wake, 0, GPIO_CFG_INPUT, GPIO_CFG_NO_PULL, GPIO_CFG_16MA), GPIO_CFG_ENABLE); } @@ -888,7 +913,7 @@ static int bluesleep_resume(struct platform_device *pdev) static int bluesleep_suspend(struct platform_device *pdev, pm_message_t state) { #ifndef CONFIG_BT_BCM4354 - if (!has_lpm_enabled) { + if (!bt_enabled) { gpio_tlmm_config(GPIO_CFG(bsi->host_wake, 0, GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_16MA), GPIO_CFG_ENABLE); } @@ -917,11 +942,14 @@ static int __init bluesleep_init(void) int retval; struct proc_dir_entry *ent; + if (poweroff_charging == 1) { + BT_ERR("bluesleep exit : lpm %d\n", poweroff_charging); + return -ENODEV; + } + BT_INFO("BlueSleep Mode Driver Ver %s", VERSION); -#if BT_BLUEDROID_SUPPORT - has_lpm_enabled = false; -#endif + bt_enabled = false; retval = platform_driver_register(&bluesleep_driver); @@ -934,10 +962,6 @@ static int __init bluesleep_init(void) return -1; } -#if !BT_BLUEDROID_SUPPORT - bluesleep_hdev = NULL; -#endif - bluetooth_dir = proc_mkdir("bluetooth", NULL); if (bluetooth_dir == NULL) { BT_ERR("Unable to create /proc/bluetooth directory"); @@ -986,7 +1010,6 @@ static int __init bluesleep_init(void) goto fail; } -#if BT_BLUEDROID_SUPPORT /* read/write proc entries */ ent = create_proc_entry("lpm", 0, sleep_dir); if (ent == NULL) { @@ -1006,7 +1029,6 @@ static int __init bluesleep_init(void) } ent->read_proc = bluesleep_read_proc_btwrite; ent->write_proc = bluesleep_write_proc_btwrite; -#endif flags = 0; /* clear all status bits */ @@ -1030,17 +1052,12 @@ static int __init bluesleep_init(void) } */ set_bit(BT_EXT_WAKE, &flags); -#if !BT_BLUEDROID_SUPPORT - hci_register_notifier(&hci_event_nblock); -#endif return 0; fail: -#if BT_BLUEDROID_SUPPORT remove_proc_entry("btwrite", sleep_dir); remove_proc_entry("lpm", sleep_dir); -#endif remove_proc_entry("asleep", sleep_dir); remove_proc_entry("proto", sleep_dir); remove_proc_entry("hostwake", sleep_dir); @@ -1072,15 +1089,10 @@ static void __exit bluesleep_exit(void) hsuart_power(1); } -#if !BT_BLUEDROID_SUPPORT - hci_unregister_notifier(&hci_event_nblock); -#endif platform_driver_unregister(&bluesleep_driver); -#if BT_BLUEDROID_SUPPORT remove_proc_entry("btwrite", sleep_dir); remove_proc_entry("lpm", sleep_dir); -#endif remove_proc_entry("asleep", sleep_dir); remove_proc_entry("proto", sleep_dir); remove_proc_entry("hostwake", sleep_dir); diff --git a/drivers/devfreq/governor_simpleondemand.c b/drivers/devfreq/governor_simpleondemand.c index d37997da89b1..6ae9f86523b2 100644 --- a/drivers/devfreq/governor_simpleondemand.c +++ b/drivers/devfreq/governor_simpleondemand.c @@ -23,7 +23,7 @@ static int devfreq_simple_ondemand_func(struct devfreq *df, u32 *flag) { struct devfreq_dev_status stat; - int err = df->profile->get_dev_status(df->dev.parent, &stat); + int err; unsigned long long a, b; unsigned int dfso_upthreshold = DFSO_UPTHRESHOLD; unsigned int dfso_downdifferential = DFSO_DOWNDIFFERENCTIAL; @@ -31,6 +31,9 @@ static int devfreq_simple_ondemand_func(struct devfreq *df, unsigned long max = (df->max_freq) ? df->max_freq : UINT_MAX; unsigned long min = (df->min_freq) ? df->min_freq : 0; + stat.private_data = NULL; + + err = df->profile->get_dev_status(df->dev.parent, &stat); if (err) return err; diff --git a/drivers/gpu/msm/adreno.c b/drivers/gpu/msm/adreno.c index e65de437e2d0..5c5eba1a84bb 100644 --- a/drivers/gpu/msm/adreno.c +++ b/drivers/gpu/msm/adreno.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2002,2007-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2002,2007-2014, 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 @@ -272,7 +272,7 @@ static void adreno_input_work(struct work_struct *work) struct adreno_device, input_work); struct kgsl_device *device = &adreno_dev->dev; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); device->flags |= KGSL_FLAG_WAKE_ON_TOUCH; @@ -290,7 +290,7 @@ static void adreno_input_work(struct work_struct *work) */ mod_timer(&device->idle_timer, jiffies + msecs_to_jiffies(_wake_timeout)); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } /* @@ -358,6 +358,10 @@ static const struct input_device_id adreno_input_ids[] = { { .flags = INPUT_DEVICE_ID_MATCH_EVBIT, .evbit = { BIT_MASK(EV_ABS) }, + /* assumption: MT_.._X & MT_.._Y are in the same long */ + .absbit = { [BIT_WORD(ABS_MT_POSITION_X)] = + BIT_MASK(ABS_MT_POSITION_X) | + BIT_MASK(ABS_MT_POSITION_Y) }, }, { }, }; @@ -461,6 +465,7 @@ int adreno_perfcounter_read_group(struct adreno_device *adreno_dev, struct kgsl_perfcounter_read_group __user *reads, unsigned int count) { struct adreno_perfcounters *counters = adreno_dev->gpudev->perfcounters; + struct kgsl_device *device = &adreno_dev->dev; struct adreno_perfcount_group *group; struct kgsl_perfcounter_read_group *list = NULL; unsigned int i, j; @@ -488,6 +493,13 @@ int adreno_perfcounter_read_group(struct adreno_device *adreno_dev, goto done; } + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + ret = kgsl_active_count_get(device); + if (ret) { + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + goto done; + } + /* list iterator */ for (j = 0; j < count; j++) { @@ -496,7 +508,7 @@ int adreno_perfcounter_read_group(struct adreno_device *adreno_dev, /* Verify that the group ID is within range */ if (list[j].groupid >= counters->group_count) { ret = -EINVAL; - goto done; + break; } group = &(counters->groups[list[j].groupid]); @@ -512,11 +524,13 @@ int adreno_perfcounter_read_group(struct adreno_device *adreno_dev, } } + kgsl_active_count_put(device); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + /* write the data */ - if (copy_to_user(reads, list, - sizeof(struct kgsl_perfcounter_read_group) * - count) != 0) - ret = -EFAULT; + if (ret == 0) + ret = copy_to_user(reads, list, + sizeof(struct kgsl_perfcounter_read_group) * count); done: kfree(list); @@ -592,8 +606,11 @@ int adreno_perfcounter_query_group(struct adreno_device *adreno_dev, unsigned int *max_counters) { struct adreno_perfcounters *counters = adreno_dev->gpudev->perfcounters; + struct kgsl_device *device = &adreno_dev->dev; struct adreno_perfcount_group *group; - unsigned int i; + unsigned int i, t; + int ret; + unsigned int *buf; *max_counters = 0; @@ -603,6 +620,8 @@ int adreno_perfcounter_query_group(struct adreno_device *adreno_dev, if (groupid >= counters->group_count) return -EINVAL; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + group = &(counters->groups[groupid]); *max_counters = group->reg_count; @@ -610,24 +629,33 @@ int adreno_perfcounter_query_group(struct adreno_device *adreno_dev, * if NULL countable or *count of zero, return max reg_count in * *max_counters and return success */ - if (countables == NULL || count == 0) + if (countables == NULL || count == 0) { + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; + } - /* - * Go through all available counters. Write upto *count * countable - * values. - */ - for (i = 0; i < group->reg_count && i < count; i++) { - if (copy_to_user(&countables[i], &(group->regs[i].countable), - sizeof(unsigned int)) != 0) - return -EFAULT; + t = min_t(int, group->reg_count, count); + + buf = kmalloc(t * sizeof(unsigned int), GFP_KERNEL); + if (buf == NULL) { + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + return -ENOMEM; } - return 0; + for (i = 0; i < t; i++) + buf[i] = group->regs[i].countable; + + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + + ret = copy_to_user(countables, buf, sizeof(unsigned int) * t); + kfree(buf); + + return ret; } static inline void refcount_group(struct adreno_perfcount_group *group, - unsigned int reg, unsigned int flags, unsigned int *lo) + unsigned int reg, unsigned int flags, + unsigned int *lo, unsigned int *hi) { if (flags & PERFCOUNTER_FLAG_KERNEL) group->regs[reg].kernelcount++; @@ -636,6 +664,9 @@ static inline void refcount_group(struct adreno_perfcount_group *group, if (lo) *lo = group->regs[reg].offset; + + if (hi) + *hi = group->regs[reg].offset_hi; } /** @@ -643,7 +674,8 @@ static inline void refcount_group(struct adreno_perfcount_group *group, * @adreno_dev: Adreno device to configure * @groupid: Desired performance counter group * @countable: Countable desired to be in a counter - * @offset: Return offset of the countable + * @offset: Return offset of the LO counter assigned + * @offset_hi: Return offset of the HI counter assigned * @flags: Used to setup kernel perf counters * * Try to place a countable in an available counter. If the countable is @@ -653,7 +685,7 @@ static inline void refcount_group(struct adreno_perfcount_group *group, int adreno_perfcounter_get(struct adreno_device *adreno_dev, unsigned int groupid, unsigned int countable, unsigned int *offset, - unsigned int flags) + unsigned int *offset_hi, unsigned int flags) { struct adreno_perfcounters *counters = adreno_dev->gpudev->perfcounters; struct adreno_perfcount_group *group; @@ -663,6 +695,8 @@ int adreno_perfcounter_get(struct adreno_device *adreno_dev, /* always clear return variables */ if (offset) *offset = 0; + if (offset_hi) + *offset_hi = 0; if (NULL == counters) return -EINVAL; @@ -684,7 +718,8 @@ int adreno_perfcounter_get(struct adreno_device *adreno_dev, /* If it is already reserved, just increase the refcounts */ if ((group->regs[countable].kernelcount != 0) || (group->regs[countable].usercount != 0)) { - refcount_group(group, countable, flags, offset); + refcount_group(group, countable, flags, + offset, offset_hi); return 0; } @@ -700,7 +735,8 @@ int adreno_perfcounter_get(struct adreno_device *adreno_dev, for (i = 0; i < group->reg_count; i++) { if (group->regs[i].countable == countable) { - refcount_group(group, i, flags, offset); + refcount_group(group, i, flags, + offset, offset_hi); return 0; } else if (group->regs[i].countable == KGSL_PERFCOUNTER_NOT_USED) { @@ -733,6 +769,8 @@ int adreno_perfcounter_get(struct adreno_device *adreno_dev, if (offset) *offset = group->regs[empty].offset; + if (offset_hi) + *offset_hi = group->regs[empty].offset_hi; return ret; } @@ -1213,6 +1251,7 @@ static int adreno_iommu_setstate(struct kgsl_device *device, KGSL_IOMMU_CONTEXT_USER); done: + kfree(link); kgsl_context_put(context); return result; } @@ -1953,6 +1992,10 @@ static int adreno_init(struct kgsl_device *device) for (i = 6; i < FT_DETECT_REGS_COUNT; i++) ft_detect_regs[i] = 0; + /* turn on hang interrupt for a330v2 by default */ + if (adreno_is_a330v2(adreno_dev)) + set_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv); + ret = adreno_perfcounter_init(device); if (ret) goto done; @@ -2092,7 +2135,7 @@ static void adreno_start_work(struct work_struct *work) /* Nice ourselves to be higher priority but not too high priority */ set_user_nice(current, _wake_nice); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* * If adreno start is already called, no need to call it again * it can lead to unpredictable behavior if we try to start @@ -2112,7 +2155,7 @@ static void adreno_start_work(struct work_struct *work) _status = _adreno_start(adreno_dev); else _status = 0; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } /** @@ -2137,9 +2180,9 @@ static int adreno_start(struct kgsl_device *device, int priority) * higher priority work queue and wait for it to finish */ queue_work(adreno_wq, &adreno_dev->start_work); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); flush_work(&adreno_dev->start_work); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); return _status; } @@ -2530,6 +2573,88 @@ static ssize_t _wake_timeout_show(struct device *dev, return snprintf(buf, PAGE_SIZE, "%d\n", _wake_timeout); } +/** + * _ft_hang_intr_status_store - Routine to enable/disable h/w hang interrupt + * @dev: device ptr + * @attr: Device attribute + * @buf: value to write + * @count: size of the value to write + */ +static ssize_t _ft_hang_intr_status_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + unsigned int new_setting, old_setting; + struct kgsl_device *device = kgsl_device_from_dev(dev); + struct adreno_device *adreno_dev; + int ret; + if (device == NULL) + return 0; + adreno_dev = ADRENO_DEVICE(device); + + mutex_lock(&device->mutex); + ret = _ft_sysfs_store(buf, count, &new_setting); + if (ret != count) + goto done; + if (new_setting) + new_setting = 1; + old_setting = + (test_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv) ? 1 : 0); + if (new_setting != old_setting) { + if (new_setting) + set_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv); + else + clear_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv); + /* Set the new setting based on device state */ + switch (device->state) { + case KGSL_STATE_NAP: + case KGSL_STATE_SLEEP: + kgsl_pwrctrl_wake(device, 0); + case KGSL_STATE_ACTIVE: + adreno_dev->gpudev->irq_control(adreno_dev, 1); + /* + * For following states setting will be picked up on device + * start. Still need them in switch statement to differentiate + * from default + */ + case KGSL_STATE_SLUMBER: + case KGSL_STATE_SUSPEND: + break; + default: + ret = -EACCES; + /* reset back to old setting on error */ + if (new_setting) + clear_bit(ADRENO_DEVICE_HANG_INTR, + &adreno_dev->priv); + else + set_bit(ADRENO_DEVICE_HANG_INTR, + &adreno_dev->priv); + goto done; + } + } +done: + mutex_unlock(&device->mutex); + return ret; +} + +/** + * _ft_hang_intr_status_show() - Routine to read hardware hang interrupt + * enablement + * @dev: device ptr + * @attr: Device attribute + * @buf: value read + */ +static ssize_t _ft_hang_intr_status_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + struct adreno_device *adreno_dev = _get_adreno_dev(dev); + if (adreno_dev == NULL) + return 0; + return snprintf(buf, PAGE_SIZE, "%d\n", + test_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv) ? 1 : 0); +} + #define FT_DEVICE_ATTR(name) \ DEVICE_ATTR(name, 0644, _ ## name ## _show, _ ## name ## _store); @@ -2537,6 +2662,7 @@ FT_DEVICE_ATTR(ft_policy); FT_DEVICE_ATTR(ft_pagefault_policy); FT_DEVICE_ATTR(ft_fast_hang_detect); FT_DEVICE_ATTR(ft_long_ib_detect); +FT_DEVICE_ATTR(ft_hang_intr_status); static DEVICE_INT_ATTR(wake_nice, 0644, _wake_nice); static FT_DEVICE_ATTR(wake_timeout); @@ -2548,6 +2674,7 @@ const struct device_attribute *ft_attr_list[] = { &dev_attr_ft_long_ib_detect, &dev_attr_wake_nice.attr, &dev_attr_wake_timeout, + &dev_attr_ft_hang_intr_status, NULL, }; @@ -2724,6 +2851,8 @@ static int adreno_setproperty(struct kgsl_device_private *dev_priv, break; } + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + if (enable) { device->pwrctrl.ctrl_flags = 0; adreno_dev->fast_hang_detect = 1; @@ -2743,6 +2872,7 @@ static int adreno_setproperty(struct kgsl_device_private *dev_priv, kgsl_pwrscale_disable(device); } + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); status = 0; } break; @@ -2761,10 +2891,13 @@ static int adreno_setproperty(struct kgsl_device_private *dev_priv, context = kgsl_context_get_owner(dev_priv, constraint.context_id); + if (context == NULL) break; + status = adreno_set_constraint(device, context, &constraint); + kgsl_context_put(context); } break; @@ -2782,7 +2915,7 @@ static int adreno_setproperty(struct kgsl_device_private *dev_priv, * Return true if the RBBM status register for the GPU type indicates that the * hardware is idle */ -static bool adreno_hw_isidle(struct kgsl_device *device) +bool adreno_hw_isidle(struct kgsl_device *device) { unsigned int reg_rbbm_status; struct adreno_device *adreno_dev = ADRENO_DEVICE(device); @@ -2895,6 +3028,12 @@ bool adreno_isidle(struct kgsl_device *device) rptr = adreno_get_rptr(&adreno_dev->ringbuffer); + /* + * wptr is updated when we add commands to ringbuffer, add a barrier + * to make sure updated wptr is compared to rptr + */ + smp_mb(); + if (rptr == adreno_dev->ringbuffer.wptr) return adreno_hw_isidle(device); @@ -3015,15 +3154,30 @@ struct kgsl_memdesc *adreno_find_ctxtmem(struct kgsl_device *device, return desc; } +/* + * adreno_find_region() - Find corresponding allocation for a given address + * @device: Device on which address operates + * @pt_base: The pagetable in which address is mapped + * @gpuaddr: The gpu address + * @size: Size in bytes of the address + * @entry: If the allocation is part of user space allocation then the mem + * entry is returned in this parameter. Caller is supposed to decrement + * refcount on this entry after its done using it. + * + * Finds an allocation descriptor for a given gpu address range + * + * Returns the descriptor on success else NULL + */ struct kgsl_memdesc *adreno_find_region(struct kgsl_device *device, phys_addr_t pt_base, unsigned int gpuaddr, - unsigned int size) + unsigned int size, + struct kgsl_mem_entry **entry) { - struct kgsl_mem_entry *entry; struct adreno_device *adreno_dev = ADRENO_DEVICE(device); struct adreno_ringbuffer *ringbuffer = &adreno_dev->ringbuffer; + *entry = NULL; if (kgsl_gpuaddr_in_memdesc(&ringbuffer->buffer_desc, gpuaddr, size)) return &ringbuffer->buffer_desc; @@ -3037,20 +3191,33 @@ struct kgsl_memdesc *adreno_find_region(struct kgsl_device *device, size)) return &device->mmu.setstate_memory; - entry = kgsl_get_mem_entry(device, pt_base, gpuaddr, size); + *entry = kgsl_get_mem_entry(device, pt_base, gpuaddr, size); - if (entry) - return &entry->memdesc; + if (*entry) + return &((*entry)->memdesc); return adreno_find_ctxtmem(device, pt_base, gpuaddr, size); } +/* + * adreno_convertaddr() - Convert a gpu address to kernel mapped address + * @device: Device on which the address operates + * @pt_base: The pagetable in which address is mapped + * @gpuaddr: The start address + * @size: The length of address range + * @entry: If the allocation is part of user space allocation then the mem + * entry is returned in this parameter. Caller is supposed to decrement + * refcount on this entry after its done using it. + * + * Returns the converted host pointer on success else NULL + */ uint8_t *adreno_convertaddr(struct kgsl_device *device, phys_addr_t pt_base, - unsigned int gpuaddr, unsigned int size) + unsigned int gpuaddr, unsigned int size, + struct kgsl_mem_entry **entry) { struct kgsl_memdesc *memdesc; - memdesc = adreno_find_region(device, pt_base, gpuaddr, size); + memdesc = adreno_find_region(device, pt_base, gpuaddr, size, entry); return memdesc ? kgsl_gpuaddr_to_vaddr(memdesc, gpuaddr) : NULL; } @@ -3240,23 +3407,28 @@ static long adreno_ioctl(struct kgsl_device_private *dev_priv, } case IOCTL_KGSL_PERFCOUNTER_GET: { struct kgsl_perfcounter_get *get = data; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* * adreno_perfcounter_get() is called by kernel clients * during start(), so it is not safe to take an * active count inside this function. */ result = kgsl_active_count_get(device); - if (result) - break; - result = adreno_perfcounter_get(adreno_dev, get->groupid, - get->countable, &get->offset, PERFCOUNTER_FLAG_NONE); - kgsl_active_count_put(device); + if (result == 0) { + result = adreno_perfcounter_get(adreno_dev, + get->groupid, get->countable, &get->offset, + &get->offset_hi, PERFCOUNTER_FLAG_NONE); + kgsl_active_count_put(device); + } + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); break; } case IOCTL_KGSL_PERFCOUNTER_PUT: { struct kgsl_perfcounter_put *put = data; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); result = adreno_perfcounter_put(adreno_dev, put->groupid, put->countable, PERFCOUNTER_FLAG_NONE); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); break; } case IOCTL_KGSL_PERFCOUNTER_QUERY: { @@ -3268,12 +3440,8 @@ static long adreno_ioctl(struct kgsl_device_private *dev_priv, } case IOCTL_KGSL_PERFCOUNTER_READ: { struct kgsl_perfcounter_read *read = data; - result = kgsl_active_count_get(device); - if (result) - break; result = adreno_perfcounter_read_group(adreno_dev, read->reads, read->count); - kgsl_active_count_put(device); break; } default: @@ -3300,13 +3468,17 @@ static void adreno_power_stats(struct kgsl_device *device, struct adreno_busy_data busy_data; memset(stats, 0, sizeof(*stats)); + /* - * Get the busy cycles counted since the counter was last reset. * If we're not currently active, there shouldn't have been * any cycles since the last time this function was called. */ - if (device->state == KGSL_STATE_ACTIVE) - adreno_dev->gpudev->busy_cycles(adreno_dev, &busy_data); + + if (device->state != KGSL_STATE_ACTIVE) + return; + + /* Get the busy cycles counted since the counter was last reset */ + adreno_dev->gpudev->busy_cycles(adreno_dev, &busy_data); stats->busy_time = adreno_ticks_to_us(busy_data.gpu_busy, kgsl_pwrctrl_active_freq(pwr)); @@ -3367,6 +3539,7 @@ static const struct kgsl_functable adreno_functable = { .drawctxt_create = adreno_drawctxt_create, .drawctxt_detach = adreno_drawctxt_detach, .drawctxt_destroy = adreno_drawctxt_destroy, + .drawctxt_dump = adreno_drawctxt_dump, .setproperty = adreno_setproperty, .postmortem_dump = adreno_dump, .drawctxt_sched = adreno_drawctxt_sched, diff --git a/drivers/gpu/msm/adreno.h b/drivers/gpu/msm/adreno.h index a749b53bf83b..a61eb8f9ce3a 100644 --- a/drivers/gpu/msm/adreno.h +++ b/drivers/gpu/msm/adreno.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2008-2014, 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 @@ -219,6 +219,7 @@ enum adreno_device_flags { ADRENO_DEVICE_PWRON_FIXUP = 1, ADRENO_DEVICE_INITIALIZED = 2, ADRENO_DEVICE_STARTED = 3, + ADRENO_DEVICE_HANG_INTR = 4, }; #define PERFCOUNTER_FLAG_NONE 0x0 @@ -241,6 +242,7 @@ struct adreno_perfcount_register { unsigned int kernelcount; unsigned int usercount; unsigned int offset; + unsigned int offset_hi; int load_bit; unsigned int select; uint64_t value; @@ -311,6 +313,7 @@ enum adreno_regs { ADRENO_REG_CP_IB2_BASE, ADRENO_REG_CP_IB2_BUFSZ, ADRENO_REG_CP_TIMESTAMP, + ADRENO_REG_CP_HW_FAULT, ADRENO_REG_SCRATCH_ADDR, ADRENO_REG_SCRATCH_UMSK, ADRENO_REG_SCRATCH_REG2, @@ -416,7 +419,10 @@ struct log_field { #define KGSL_FT_SKIPFRAME 3 #define KGSL_FT_DISABLE 4 #define KGSL_FT_TEMP_DISABLE 5 -#define KGSL_FT_DEFAULT_POLICY (BIT(KGSL_FT_REPLAY) + BIT(KGSL_FT_SKIPIB)) +#define KGSL_FT_THROTTLE 6 +#define KGSL_FT_SKIPCMD 7 +#define KGSL_FT_DEFAULT_POLICY (BIT(KGSL_FT_REPLAY) + BIT(KGSL_FT_SKIPCMD) \ + + BIT(KGSL_FT_THROTTLE)) /* This internal bit is used to skip the PM dump on replayed command batches */ #define KGSL_FT_SKIP_PMDUMP 31 @@ -434,7 +440,9 @@ struct log_field { { BIT(KGSL_FT_SKIPIB), "skipib" }, \ { BIT(KGSL_FT_SKIPFRAME), "skipframe" }, \ { BIT(KGSL_FT_DISABLE), "disable" }, \ - { BIT(KGSL_FT_TEMP_DISABLE), "temp" } + { BIT(KGSL_FT_TEMP_DISABLE), "temp" }, \ + { BIT(KGSL_FT_THROTTLE), "throttle"}, \ + { BIT(KGSL_FT_SKIPCMD), "skipcmd" } extern struct adreno_gpudev adreno_a2xx_gpudev; extern struct adreno_gpudev adreno_a3xx_gpudev; @@ -464,6 +472,7 @@ void adreno_coresight_disable(struct coresight_device *csdev); void adreno_coresight_remove(struct platform_device *pdev); int adreno_coresight_init(struct platform_device *pdev); +bool adreno_hw_isidle(struct kgsl_device *device); int adreno_idle(struct kgsl_device *device); bool adreno_isidle(struct kgsl_device *device); @@ -481,10 +490,12 @@ unsigned int adreno_a3xx_rbbm_clock_ctl_default(struct adreno_device struct kgsl_memdesc *adreno_find_region(struct kgsl_device *device, phys_addr_t pt_base, unsigned int gpuaddr, - unsigned int size); + unsigned int size, + struct kgsl_mem_entry **entry); uint8_t *adreno_convertaddr(struct kgsl_device *device, - phys_addr_t pt_base, unsigned int gpuaddr, unsigned int size); + phys_addr_t pt_base, unsigned int gpuaddr, unsigned int size, + struct kgsl_mem_entry **entry); struct kgsl_memdesc *adreno_find_ctxtmem(struct kgsl_device *device, phys_addr_t pt_base, unsigned int gpuaddr, unsigned int size); @@ -513,6 +524,10 @@ int adreno_reset(struct kgsl_device *device); int adreno_ft_init_sysfs(struct kgsl_device *device); void adreno_ft_uninit_sysfs(struct kgsl_device *device); +void adreno_fault_skipcmd_detached(struct kgsl_device *device, + struct adreno_context *drawctxt, + struct kgsl_cmdbatch *cmdbatch); + int adreno_perfcounter_get_groupid(struct adreno_device *adreno_dev, const char *name); @@ -521,7 +536,7 @@ const char *adreno_perfcounter_get_name(struct adreno_device int adreno_perfcounter_get(struct adreno_device *adreno_dev, unsigned int groupid, unsigned int countable, unsigned int *offset, - unsigned int flags); + unsigned int *offset_hi, unsigned int flags); int adreno_perfcounter_put(struct adreno_device *adreno_dev, unsigned int groupid, unsigned int countable, unsigned int flags); diff --git a/drivers/gpu/msm/adreno_a3xx.c b/drivers/gpu/msm/adreno_a3xx.c index 47b239e77d07..45554d08cc7d 100644 --- a/drivers/gpu/msm/adreno_a3xx.c +++ b/drivers/gpu/msm/adreno_a3xx.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -13,6 +13,7 @@ #include #include +#include #include #include "kgsl.h" @@ -3040,11 +3041,29 @@ static int a3xx_rb_init(struct adreno_device *adreno_dev, return 0; } -static void a3xx_err_callback(struct adreno_device *adreno_dev, int bit) +static void a3xx_fatal_err_callback(struct adreno_device *adreno_dev, int bit) { struct kgsl_device *device = &adreno_dev->dev; const char *err = ""; + switch (bit) { + case A3XX_INT_MISC_HANG_DETECT: + err = "MISC: GPU hang detected\n"; + break; + default: + return; + } + KGSL_DRV_CRIT(device, "%s\n", err); + kgsl_pwrctrl_irq(device, KGSL_PWRFLAGS_OFF); + + /* Trigger a fault in the dispatcher - this will effect a restart */ + adreno_dispatcher_irq_fault(device); +} + +static void a3xx_err_callback(struct adreno_device *adreno_dev, int bit) +{ + struct kgsl_device *device = &adreno_dev->dev; + switch (bit) { case A3XX_INT_RBBM_AHB_ERROR: { unsigned int reg; @@ -3064,35 +3083,46 @@ static void a3xx_err_callback(struct adreno_device *adreno_dev, int bit) /* Clear the error */ kgsl_regwrite(device, A3XX_RBBM_AHB_CMD, (1 << 3)); - goto done; + break; } case A3XX_INT_RBBM_REG_TIMEOUT: - err = "RBBM: AHB register timeout"; + KGSL_DRV_CRIT_RATELIMIT(device, "RBBM: AHB register timeout\n"); break; case A3XX_INT_RBBM_ME_MS_TIMEOUT: - err = "RBBM: ME master split timeout"; + KGSL_DRV_CRIT_RATELIMIT(device, + "RBBM: ME master split timeout\n"); break; case A3XX_INT_RBBM_PFP_MS_TIMEOUT: - err = "RBBM: PFP master split timeout"; + KGSL_DRV_CRIT_RATELIMIT(device, + "RBBM: PFP master split timeout\n"); break; case A3XX_INT_RBBM_ATB_BUS_OVERFLOW: - err = "RBBM: ATB bus oveflow"; + KGSL_DRV_CRIT_RATELIMIT(device, + "RBBM: ATB bus oveflow\n"); break; case A3XX_INT_VFD_ERROR: - err = "VFD: Out of bounds access"; + KGSL_DRV_CRIT_RATELIMIT(device, + "VFD: Out of bounds access\n"); break; case A3XX_INT_CP_T0_PACKET_IN_IB: - err = "ringbuffer TO packet in IB interrupt"; + KGSL_DRV_CRIT_RATELIMIT(device, + "ringbuffer TO packet in IB interrupt\n"); break; case A3XX_INT_CP_OPCODE_ERROR: - err = "ringbuffer opcode error interrupt"; + KGSL_DRV_CRIT_RATELIMIT(device, + "ringbuffer opcode error interrupt\n"); break; case A3XX_INT_CP_RESERVED_BIT_ERROR: - err = "ringbuffer reserved bit error interrupt"; + KGSL_DRV_CRIT_RATELIMIT(device, + "ringbuffer reserved bit error interrupt\n"); break; - case A3XX_INT_CP_HW_FAULT: - err = "ringbuffer hardware fault"; + case A3XX_INT_CP_HW_FAULT: { + unsigned int reg; + adreno_readreg(adreno_dev, ADRENO_REG_CP_HW_FAULT, ®); + KGSL_DRV_CRIT_RATELIMIT(device, + "CP | Ringbuffer HW fault | status=%x\n", reg); break; + } case A3XX_INT_CP_REG_PROTECT_FAULT: { unsigned int reg; kgsl_regread(device, A3XX_CP_PROTECT_STATUS, ®); @@ -3101,26 +3131,16 @@ static void a3xx_err_callback(struct adreno_device *adreno_dev, int bit) "CP | Protected mode error| %s | addr=%x\n", reg & (1 << 24) ? "WRITE" : "READ", (reg & 0x1FFFF) >> 2); - goto done; + break; } case A3XX_INT_CP_AHB_ERROR_HALT: - err = "ringbuffer AHB error interrupt"; - break; - case A3XX_INT_MISC_HANG_DETECT: - err = "MISC: GPU hang detected"; + KGSL_DRV_CRIT(device, "ringbuffer AHB error interrupt\n"); break; case A3XX_INT_UCHE_OOB_ACCESS: - err = "UCHE: Out of bounds access"; + KGSL_DRV_CRIT_RATELIMIT(device, + "UCHE: Out of bounds access\n"); break; - default: - return; } - KGSL_DRV_CRIT(device, "%s\n", err); - kgsl_pwrctrl_irq(device, KGSL_PWRFLAGS_OFF); - -done: - /* Trigger a fault in the dispatcher - this will effect a restart */ - adreno_dispatcher_irq_fault(device); } static void a3xx_cp_callback(struct adreno_device *adreno_dev, int irq) @@ -3562,7 +3582,7 @@ static struct { A3XX_IRQ_CALLBACK(a3xx_err_callback), /* 21 - CP_AHB_ERROR_FAULT */ A3XX_IRQ_CALLBACK(NULL), /* 22 - Unused */ A3XX_IRQ_CALLBACK(NULL), /* 23 - Unused */ - A3XX_IRQ_CALLBACK(NULL), /* 24 - MISC_HANG_DETECT */ + A3XX_IRQ_CALLBACK(a3xx_fatal_err_callback),/* 24 - MISC_HANG_DETECT */ A3XX_IRQ_CALLBACK(a3xx_err_callback), /* 25 - UCHE_OOB_ACCESS */ /* 26 to 31 - Unused */ }; @@ -3603,7 +3623,9 @@ static void a3xx_irq_control(struct adreno_device *adreno_dev, int state) struct kgsl_device *device = &adreno_dev->dev; if (state) - kgsl_regwrite(device, A3XX_RBBM_INT_0_MASK, A3XX_INT_MASK); + kgsl_regwrite(device, A3XX_RBBM_INT_0_MASK, A3XX_INT_MASK | + (test_bit(ADRENO_DEVICE_HANG_INTR, &adreno_dev->priv) ? + (1 << A3XX_INT_MISC_HANG_DETECT) : 0)); else kgsl_regwrite(device, A3XX_RBBM_INT_0_MASK, 0); } @@ -3803,141 +3825,158 @@ static struct { static struct adreno_perfcount_register a3xx_perfcounters_cp[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_CP_0_LO, - 0, A3XX_CP_PERFCOUNTER_SELECT }, + A3XX_RBBM_PERFCTR_CP_0_HI, 0, A3XX_CP_PERFCOUNTER_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_rbbm[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RBBM_0_LO, - 1, A3XX_RBBM_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_RBBM_0_HI, 1, A3XX_RBBM_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RBBM_1_LO, - 2, A3XX_RBBM_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_RBBM_1_HI, 2, A3XX_RBBM_PERFCOUNTER1_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_pc[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PC_0_LO, - 3, A3XX_PC_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_PC_0_HI, 3, A3XX_PC_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PC_1_LO, - 4, A3XX_PC_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_PC_1_HI, 4, A3XX_PC_PERFCOUNTER1_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PC_2_LO, - 5, A3XX_PC_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_PC_2_HI, 5, A3XX_PC_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PC_3_LO, - 6, A3XX_PC_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_PC_3_HI, 6, A3XX_PC_PERFCOUNTER3_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_vfd[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_VFD_0_LO, - 7, A3XX_VFD_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_VFD_0_HI, 7, A3XX_VFD_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_VFD_1_LO, - 8, A3XX_VFD_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_VFD_1_HI, 8, A3XX_VFD_PERFCOUNTER1_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_hlsq[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_0_LO, - 9, A3XX_HLSQ_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_0_HI, 9, + A3XX_HLSQ_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_1_LO, - 10, A3XX_HLSQ_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_1_HI, 10, + A3XX_HLSQ_PERFCOUNTER1_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_2_LO, - 11, A3XX_HLSQ_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_2_HI, 11, + A3XX_HLSQ_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_3_LO, - 12, A3XX_HLSQ_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_3_HI, 12, + A3XX_HLSQ_PERFCOUNTER3_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_4_LO, - 13, A3XX_HLSQ_PERFCOUNTER4_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_4_HI, 13, + A3XX_HLSQ_PERFCOUNTER4_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_HLSQ_5_LO, - 14, A3XX_HLSQ_PERFCOUNTER5_SELECT }, + A3XX_RBBM_PERFCTR_HLSQ_5_HI, 14, + A3XX_HLSQ_PERFCOUNTER5_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_vpc[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_VPC_0_LO, - 15, A3XX_VPC_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_VPC_0_HI, 15, A3XX_VPC_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_VPC_1_LO, - 16, A3XX_VPC_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_VPC_1_HI, 16, A3XX_VPC_PERFCOUNTER1_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_tse[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TSE_0_LO, - 17, A3XX_GRAS_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_TSE_0_HI, 17, A3XX_GRAS_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TSE_1_LO, - 18, A3XX_GRAS_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_TSE_1_HI, 18, A3XX_GRAS_PERFCOUNTER1_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_ras[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RAS_0_LO, - 19, A3XX_GRAS_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_RAS_0_HI, 19, A3XX_GRAS_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RAS_1_LO, - 20, A3XX_GRAS_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_RAS_1_HI, 20, A3XX_GRAS_PERFCOUNTER3_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_uche[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_0_LO, - 21, A3XX_UCHE_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_0_HI, 21, + A3XX_UCHE_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_1_LO, - 22, A3XX_UCHE_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_1_HI, 22, + A3XX_UCHE_PERFCOUNTER1_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_2_LO, - 23, A3XX_UCHE_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_2_HI, 23, + A3XX_UCHE_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_3_LO, - 24, A3XX_UCHE_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_3_HI, 24, + A3XX_UCHE_PERFCOUNTER3_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_4_LO, - 25, A3XX_UCHE_PERFCOUNTER4_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_4_HI, 25, + A3XX_UCHE_PERFCOUNTER4_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_UCHE_5_LO, - 26, A3XX_UCHE_PERFCOUNTER5_SELECT }, + A3XX_RBBM_PERFCTR_UCHE_5_HI, 26, + A3XX_UCHE_PERFCOUNTER5_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_tp[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_0_LO, - 27, A3XX_TP_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_TP_0_HI, 27, A3XX_TP_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_1_LO, - 28, A3XX_TP_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_TP_1_HI, 28, A3XX_TP_PERFCOUNTER1_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_2_LO, - 29, A3XX_TP_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_TP_2_HI, 29, A3XX_TP_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_3_LO, - 30, A3XX_TP_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_TP_3_HI, 30, A3XX_TP_PERFCOUNTER3_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_4_LO, - 31, A3XX_TP_PERFCOUNTER4_SELECT }, + A3XX_RBBM_PERFCTR_TP_4_HI, 31, A3XX_TP_PERFCOUNTER4_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_TP_5_LO, - 32, A3XX_TP_PERFCOUNTER5_SELECT }, + A3XX_RBBM_PERFCTR_TP_5_HI, 32, A3XX_TP_PERFCOUNTER5_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_sp[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_0_LO, - 33, A3XX_SP_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_SP_0_HI, 33, A3XX_SP_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_1_LO, - 34, A3XX_SP_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_SP_1_HI, 34, A3XX_SP_PERFCOUNTER1_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_2_LO, - 35, A3XX_SP_PERFCOUNTER2_SELECT }, + A3XX_RBBM_PERFCTR_SP_2_HI, 35, A3XX_SP_PERFCOUNTER2_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_3_LO, - 36, A3XX_SP_PERFCOUNTER3_SELECT }, + A3XX_RBBM_PERFCTR_SP_3_HI, 36, A3XX_SP_PERFCOUNTER3_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_4_LO, - 37, A3XX_SP_PERFCOUNTER4_SELECT }, + A3XX_RBBM_PERFCTR_SP_4_HI, 37, A3XX_SP_PERFCOUNTER4_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_5_LO, - 38, A3XX_SP_PERFCOUNTER5_SELECT }, + A3XX_RBBM_PERFCTR_SP_5_HI, 38, A3XX_SP_PERFCOUNTER5_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_6_LO, - 39, A3XX_SP_PERFCOUNTER6_SELECT }, + A3XX_RBBM_PERFCTR_SP_6_HI, 39, A3XX_SP_PERFCOUNTER6_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_SP_7_LO, - 40, A3XX_SP_PERFCOUNTER7_SELECT }, + A3XX_RBBM_PERFCTR_SP_7_HI, 40, A3XX_SP_PERFCOUNTER7_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_rb[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RB_0_LO, - 41, A3XX_RB_PERFCOUNTER0_SELECT }, + A3XX_RBBM_PERFCTR_RB_0_HI, 41, A3XX_RB_PERFCOUNTER0_SELECT }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_RB_1_LO, - 42, A3XX_RB_PERFCOUNTER1_SELECT }, + A3XX_RBBM_PERFCTR_RB_1_HI, 42, A3XX_RB_PERFCOUNTER1_SELECT }, }; static struct adreno_perfcount_register a3xx_perfcounters_pwr[] = { { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PWR_0_LO, - -1, 0 }, + A3XX_RBBM_PERFCTR_PWR_0_HI, -1, 0 }, { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_RBBM_PERFCTR_PWR_1_LO, - -1, 0 }, + A3XX_RBBM_PERFCTR_PWR_1_HI, -1, 0 }, }; static struct adreno_perfcount_register a3xx_perfcounters_vbif[] = { - { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_CNT0_LO, -1, 0 }, - { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_CNT1_LO, -1, 0 }, + { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_CNT0_LO, + A3XX_VBIF_PERF_CNT0_HI, -1, 0 }, + { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_CNT1_LO, + A3XX_VBIF_PERF_CNT1_HI, -1, 0 }, }; static struct adreno_perfcount_register a3xx_perfcounters_vbif_pwr[] = { - { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT0_LO, -1, 0 }, - { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT1_LO, -1, 0 }, - { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT2_LO, -1, 0 }, + { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT0_LO, + A3XX_VBIF_PERF_PWR_CNT0_HI, -1, 0 }, + { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT1_LO, + A3XX_VBIF_PERF_PWR_CNT1_HI, -1, 0 }, + { KGSL_PERFCOUNTER_NOT_USED, 0, 0, A3XX_VBIF_PERF_PWR_CNT2_LO, + A3XX_VBIF_PERF_PWR_CNT2_HI, -1, 0 }, }; static struct adreno_perfcount_group a3xx_perfcounter_groups[] = { @@ -3972,14 +4011,11 @@ static inline int _get_counter(struct adreno_device *adreno_dev, int ret = 0; if (*lo == 0) { - *hi = 0; ret = adreno_perfcounter_get(adreno_dev, group, countable, - lo, PERFCOUNTER_FLAG_KERNEL); + lo, hi, PERFCOUNTER_FLAG_KERNEL); - if (ret == 0) - *hi = *lo + 1; - else { + if (ret) { struct kgsl_device *device = &adreno_dev->dev; KGSL_DRV_ERR(device, @@ -4095,18 +4131,18 @@ static int a3xx_perfcounter_init(struct adreno_device *adreno_dev) /* Reserve and start countable 1 in the PWR perfcounter group */ ret = adreno_perfcounter_get(adreno_dev, KGSL_PERFCOUNTER_GROUP_PWR, 1, - NULL, PERFCOUNTER_FLAG_KERNEL); + NULL, NULL, PERFCOUNTER_FLAG_KERNEL); if (device->pwrctrl.bus_control) { /* VBIF waiting for RAM */ ret |= adreno_perfcounter_get(adreno_dev, KGSL_PERFCOUNTER_GROUP_VBIF_PWR, 0, - NULL, PERFCOUNTER_FLAG_KERNEL); + NULL, NULL, PERFCOUNTER_FLAG_KERNEL); /* VBIF DDR cycles */ ret |= adreno_perfcounter_get(adreno_dev, KGSL_PERFCOUNTER_GROUP_VBIF, VBIF_AXI_TOTAL_BEATS, - &adreno_dev->ram_cycles_lo, + &adreno_dev->ram_cycles_lo, NULL, PERFCOUNTER_FLAG_KERNEL); } @@ -4139,6 +4175,7 @@ static void a3xx_protect_init(struct kgsl_device *device) /* CP registers */ adreno_set_protected_registers(device, &index, 0x1C0, 5); + adreno_set_protected_registers(device, &index, 0x1EC, 1); adreno_set_protected_registers(device, &index, 0x1F6, 1); adreno_set_protected_registers(device, &index, 0x1F8, 2); adreno_set_protected_registers(device, &index, 0x45E, 2); @@ -4194,9 +4231,12 @@ static void a3xx_start(struct adreno_device *adreno_dev) /* Turn on hang detection - this spews a lot of useful information * into the RBBM registers on a hang */ - - kgsl_regwrite(device, A3XX_RBBM_INTERFACE_HANG_INT_CTL, - (1 << 16) | 0xFFF); + if (adreno_is_a330v2(adreno_dev)) + kgsl_regwrite(device, A3XX_RBBM_INTERFACE_HANG_INT_CTL, + (1 << 31) | 0xFFFF); + else + kgsl_regwrite(device, A3XX_RBBM_INTERFACE_HANG_INT_CTL, + (1 << 16) | 0xFFF); /* Enable 64-byte cacheline size. HW Default is 32-byte (0x000000E0). */ kgsl_regwrite(device, A3XX_UCHE_CACHE_MODE_CONTROL_REG, 0x00000001); @@ -4236,7 +4276,7 @@ static void a3xx_start(struct adreno_device *adreno_dev) */ int a3xx_coresight_enable(struct kgsl_device *device) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (!kgsl_active_count_get(device)) { kgsl_regwrite(device, A3XX_RBBM_DEBUG_BUS_CTL, 0x0001093F); kgsl_regwrite(device, A3XX_RBBM_DEBUG_BUS_STB_CTL0, @@ -4257,7 +4297,7 @@ int a3xx_coresight_enable(struct kgsl_device *device) 0x00000001); kgsl_active_count_put(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } @@ -4268,7 +4308,7 @@ int a3xx_coresight_enable(struct kgsl_device *device) */ void a3xx_coresight_disable(struct kgsl_device *device) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (!kgsl_active_count_get(device)) { kgsl_regwrite(device, A3XX_RBBM_DEBUG_BUS_CTL, 0x0); kgsl_regwrite(device, A3XX_RBBM_DEBUG_BUS_STB_CTL0, 0x0); @@ -4281,18 +4321,18 @@ void a3xx_coresight_disable(struct kgsl_device *device) kgsl_regwrite(device, A3XX_RBBM_EXT_TRACE_CMD, 0x0); kgsl_active_count_put(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } static void a3xx_coresight_write_reg(struct kgsl_device *device, unsigned int wordoffset, unsigned int val) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (!kgsl_active_count_get(device)) { kgsl_regwrite(device, wordoffset, val); kgsl_active_count_put(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } void a3xx_coresight_config_debug_reg(struct kgsl_device *device, @@ -4534,6 +4574,7 @@ static unsigned int a3xx_register_offsets[ADRENO_REG_REGISTER_MAX] = { ADRENO_REG_DEFINE(ADRENO_REG_CP_TIMESTAMP, REG_CP_TIMESTAMP), ADRENO_REG_DEFINE(ADRENO_REG_SCRATCH_ADDR, REG_SCRATCH_ADDR), ADRENO_REG_DEFINE(ADRENO_REG_SCRATCH_UMSK, REG_SCRATCH_UMSK), + ADRENO_REG_DEFINE(ADRENO_REG_CP_HW_FAULT, A3XX_CP_HW_FAULT), ADRENO_REG_DEFINE(ADRENO_REG_RBBM_STATUS, A3XX_RBBM_STATUS), ADRENO_REG_DEFINE(ADRENO_REG_RBBM_PERFCTR_CTL, A3XX_RBBM_PERFCTR_CTL), ADRENO_REG_DEFINE(ADRENO_REG_RBBM_PERFCTR_LOAD_CMD0, diff --git a/drivers/gpu/msm/adreno_a3xx_snapshot.c b/drivers/gpu/msm/adreno_a3xx_snapshot.c index 9f5765d16710..c8f0101c6eea 100644 --- a/drivers/gpu/msm/adreno_a3xx_snapshot.c +++ b/drivers/gpu/msm/adreno_a3xx_snapshot.c @@ -463,14 +463,23 @@ void *a3xx_snapshot(struct adreno_device *adreno_dev, void *snapshot, size = (adreno_is_a330(adreno_dev) || adreno_is_a305b(adreno_dev)) ? 0x2E : 0x14; - snapshot = kgsl_snapshot_indexed_registers(device, snapshot, - remain, REG_CP_STATE_DEBUG_INDEX, - REG_CP_STATE_DEBUG_DATA, 0x0, size); - - /* CP_ME indexed registers */ - snapshot = kgsl_snapshot_indexed_registers(device, snapshot, - remain, REG_CP_ME_CNTL, REG_CP_ME_STATUS, - 64, 44); + /* Skip indexed register dump for these chipsets 8974, 8x26, 8x10 */ + if (adreno_is_a330(adreno_dev) || + adreno_is_a330v2(adreno_dev) || + adreno_is_a305b(adreno_dev) || + adreno_is_a305c(adreno_dev) ) { + KGSL_DRV_ERR(device, + "Skipping indexed register dump\n"); + } else { + snapshot = kgsl_snapshot_indexed_registers(device, snapshot, + remain, REG_CP_STATE_DEBUG_INDEX, + REG_CP_STATE_DEBUG_DATA, 0x0, size); + + /* CP_ME indexed registers */ + snapshot = kgsl_snapshot_indexed_registers(device, snapshot, + remain, REG_CP_ME_CNTL, REG_CP_ME_STATUS, + 64, 44); + } /* VPC memory */ snapshot = kgsl_snapshot_add_section(device, @@ -482,10 +491,19 @@ void *a3xx_snapshot(struct adreno_device *adreno_dev, void *snapshot, KGSL_SNAPSHOT_SECTION_DEBUG, snapshot, remain, a3xx_snapshot_cp_meq, NULL); - /* Shader working/shadow memory */ - snapshot = kgsl_snapshot_add_section(device, + /* Skip shader memory dump for these chipsets: 8974, 8x26, 8x10 */ + if (adreno_is_a330(adreno_dev) || + adreno_is_a330v2(adreno_dev) || + adreno_is_a305b(adreno_dev) || + adreno_is_a305c(adreno_dev) ) { + KGSL_DRV_ERR(device, + "Skipping shader memory dump\n"); + } else { + /* Shader working/shadow memory */ + snapshot = kgsl_snapshot_add_section(device, KGSL_SNAPSHOT_SECTION_DEBUG, snapshot, remain, a3xx_snapshot_shader_memory, NULL); + } /* CP PFP and PM4 */ diff --git a/drivers/gpu/msm/adreno_coresight.c b/drivers/gpu/msm/adreno_coresight.c index 6ac4af800fd0..fc1ea28a6739 100644 --- a/drivers/gpu/msm/adreno_coresight.c +++ b/drivers/gpu/msm/adreno_coresight.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013-2014, 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 @@ -116,12 +116,12 @@ static ssize_t coresight_read_reg(struct kgsl_device *device, { unsigned int regval = 0; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (!kgsl_active_count_get(device)) { kgsl_regread(device, offset, ®val); kgsl_active_count_put(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return snprintf(buf, PAGE_SIZE, "0x%X", regval); } diff --git a/drivers/gpu/msm/adreno_dispatch.c b/drivers/gpu/msm/adreno_dispatch.c index 95e40178c447..0b8f6553b7f0 100644 --- a/drivers/gpu/msm/adreno_dispatch.c +++ b/drivers/gpu/msm/adreno_dispatch.c @@ -21,6 +21,7 @@ #include "adreno.h" #include "adreno_ringbuffer.h" #include "adreno_trace.h" +#include "kgsl_sharedmem.h" #define CMDQUEUE_NEXT(_i, _s) (((_i) + 1) % (_s)) @@ -33,6 +34,15 @@ static unsigned int _context_queue_wait = 10000; /* Number of command batches sent at a time from a single context */ static unsigned int _context_cmdbatch_burst = 5; +/* + * GFT throttle parameters. If GFT recovered more than + * X times in Y ms invalidate the context and do not attempt recovery. + * X -> _fault_throttle_burst + * Y -> _fault_throttle_time + */ +static unsigned int _fault_throttle_time = 3000; +static unsigned int _fault_throttle_burst = 3; + /* Number of command batches inflight in the ringbuffer at any time */ static unsigned int _dispatcher_inflight = 15; @@ -40,7 +50,7 @@ static unsigned int _dispatcher_inflight = 15; static unsigned int _cmdbatch_timeout = 2000; /* Interval for reading and comparing fault detection registers */ -static unsigned int _fault_timer_interval = 50; +static unsigned int _fault_timer_interval = 200; /* Local array for the current set of fault detect registers */ static unsigned int fault_detect_regs[FT_DETECT_REGS_COUNT]; @@ -78,15 +88,24 @@ static void fault_detect_read(struct kgsl_device *device) static inline bool _isidle(struct kgsl_device *device) { struct adreno_device *adreno_dev = ADRENO_DEVICE(device); - unsigned int ts; + unsigned int ts, i; + + if (!kgsl_pwrctrl_isenabled(device)) + goto ret; ts = kgsl_readtimestamp(device, NULL, KGSL_TIMESTAMP_RETIRED); - if (adreno_isidle(device) == true && - (ts >= adreno_dev->ringbuffer.global_ts)) - return true; + /* If GPU HW status is idle return true */ + if (adreno_hw_isidle(device) || + (ts == adreno_dev->ringbuffer.global_ts)) + goto ret; return false; + +ret: + for (i = 0; i < FT_DETECT_REGS_COUNT; i++) + fault_detect_regs[i] = 0; + return true; } /** @@ -136,8 +155,9 @@ static inline struct kgsl_cmdbatch *adreno_dispatcher_get_cmdbatch( struct adreno_context *drawctxt) { struct kgsl_cmdbatch *cmdbatch = NULL; + int pending; - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); if (drawctxt->cmdqueue_head != drawctxt->cmdqueue_tail) { cmdbatch = drawctxt->cmdqueue[drawctxt->cmdqueue_head]; @@ -145,7 +165,32 @@ static inline struct kgsl_cmdbatch *adreno_dispatcher_get_cmdbatch( * Don't dequeue a cmdbatch that is still waiting for other * events */ - if (kgsl_cmdbatch_sync_pending(cmdbatch)) { + + spin_lock(&cmdbatch->lock); + pending = list_empty(&cmdbatch->synclist) ? 0 : 1; + + /* + * If changes are pending and the canary timer hasn't been + * started yet, start it + */ + if (pending) { + /* + * If syncpoints are pending start the canary timer if + * it hasn't already been started + */ + if (!timer_pending(&cmdbatch->timer)) + mod_timer(&cmdbatch->timer, jiffies + (5 * HZ)); + spin_unlock(&cmdbatch->lock); + } else { + /* + * Otherwise, delete the timer to make sure it is good + * and dead before queuing the buffer + */ + spin_unlock(&cmdbatch->lock); + del_timer_sync(&cmdbatch->timer); + } + + if (pending) { cmdbatch = ERR_PTR(-EAGAIN); goto done; } @@ -157,7 +202,7 @@ static inline struct kgsl_cmdbatch *adreno_dispatcher_get_cmdbatch( } done: - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return cmdbatch; } @@ -176,13 +221,17 @@ static inline int adreno_dispatcher_requeue_cmdbatch( struct adreno_context *drawctxt, struct kgsl_cmdbatch *cmdbatch) { unsigned int prev; - mutex_lock(&drawctxt->mutex); + struct kgsl_device *device; + spin_lock(&drawctxt->lock); if (kgsl_context_detached(&drawctxt->base) || drawctxt->state == ADRENO_CONTEXT_STATE_INVALID) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); + device = cmdbatch->device; /* get rid of this cmdbatch since the context is bad */ + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_cmdbatch_destroy(cmdbatch); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return -EINVAL; } @@ -202,7 +251,7 @@ static inline int adreno_dispatcher_requeue_cmdbatch( /* Reset the command queue head to reflect the newly requeued change */ drawctxt->cmdqueue_head = prev; - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return 0; } @@ -251,7 +300,7 @@ static int sendcmd(struct adreno_device *adreno_dev, dispatcher->inflight++; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (dispatcher->inflight == 1 && !test_bit(ADRENO_DISPATCHER_POWER, &dispatcher->priv)) { @@ -259,7 +308,7 @@ static int sendcmd(struct adreno_device *adreno_dev, ret = kgsl_active_count_get(device); if (ret) { dispatcher->inflight--; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return ret; } @@ -282,7 +331,7 @@ static int sendcmd(struct adreno_device *adreno_dev, } } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); if (ret) { dispatcher->inflight--; @@ -333,6 +382,7 @@ static int dispatcher_context_sendcmds(struct adreno_device *adreno_dev, struct adreno_dispatcher *dispatcher = &adreno_dev->dispatcher; int count = 0; int requeued = 0; + unsigned int timestamp; /* * Each context can send a specific number of command batches per cycle @@ -368,10 +418,15 @@ static int dispatcher_context_sendcmds(struct adreno_device *adreno_dev, */ if (cmdbatch->flags & KGSL_CONTEXT_SYNC) { + struct kgsl_device *device = cmdbatch->device; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_cmdbatch_destroy(cmdbatch); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); continue; } + timestamp = cmdbatch->timestamp; + ret = sendcmd(adreno_dev, cmdbatch); /* @@ -387,6 +442,8 @@ static int dispatcher_context_sendcmds(struct adreno_device *adreno_dev, break; } + drawctxt->submitted_timestamp = timestamp; + count++; } @@ -523,7 +580,7 @@ static int _check_context_queue(struct adreno_context *drawctxt) { int ret; - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); /* * Wake up if there is room in the context or if the whole thing got @@ -535,7 +592,7 @@ static int _check_context_queue(struct adreno_context *drawctxt) else ret = drawctxt->queued < _context_cmdqueue_size ? 1 : 0; - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return ret; } @@ -590,10 +647,10 @@ int adreno_dispatcher_queue_cmd(struct adreno_device *adreno_dev, { int ret; - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); if (kgsl_context_detached(&drawctxt->base)) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return -EINVAL; } @@ -634,17 +691,17 @@ int adreno_dispatcher_queue_cmd(struct adreno_device *adreno_dev, while (drawctxt->queued >= _context_cmdqueue_size) { trace_adreno_drawctxt_sleep(drawctxt); - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); ret = wait_event_interruptible_timeout(drawctxt->wq, _check_context_queue(drawctxt), msecs_to_jiffies(_context_queue_wait)); - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); trace_adreno_drawctxt_wake(drawctxt); if (ret <= 0) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return (ret == 0) ? -ETIMEDOUT : (int) ret; } } @@ -654,22 +711,26 @@ int adreno_dispatcher_queue_cmd(struct adreno_device *adreno_dev, */ if (drawctxt->state == ADRENO_CONTEXT_STATE_INVALID) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return -EDEADLK; } if (kgsl_context_detached(&drawctxt->base)) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return -EINVAL; } ret = get_timestamp(drawctxt, cmdbatch, timestamp); if (ret) { - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); return ret; } cmdbatch->timestamp = *timestamp; + /* SYNC commands have timestamp 0 and will get optimized out anyway */ + if (!(cmdbatch->flags & KGSL_CONTEXT_SYNC)) + drawctxt->queued_timestamp = *timestamp; + /* * Set the fault tolerance policy for the command batch - assuming the * context hasn't disabled FT use the current device policy @@ -689,7 +750,7 @@ int adreno_dispatcher_queue_cmd(struct adreno_device *adreno_dev, trace_adreno_cmdbatch_queued(cmdbatch, drawctxt->queued); - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); /* Add the context to the dispatcher pending list */ dispatcher_queue_context(adreno_dev, drawctxt); @@ -752,7 +813,8 @@ static void mark_guilty_context(struct kgsl_device *device, unsigned int id) * passed in then zero the size which effectively skips it when it is submitted * in the ringbuffer. */ -static void cmdbatch_skip_ib(struct kgsl_cmdbatch *cmdbatch, unsigned int base) +static void cmdbatch_skip_ib(struct kgsl_cmdbatch *cmdbatch, + unsigned int base) { int i; @@ -765,6 +827,48 @@ static void cmdbatch_skip_ib(struct kgsl_cmdbatch *cmdbatch, unsigned int base) } } +static void cmdbatch_skip_cmd(struct kgsl_cmdbatch *cmdbatch, + struct kgsl_cmdbatch **replay, int count) +{ + struct adreno_context *drawctxt = ADRENO_CONTEXT(cmdbatch->context); + int i; + + /* + * SKIPCMD policy: next IB issued for this context is tentative + * if it fails we assume that GFT failed and if it succeeds + * we mark GFT as a success. + * + * Find next commandbatch for the faulting context + * If commandbatch is found + * a) store the current commandbatch fault_policy in context's next + * commandbatch fault_policy + * b) force preamble for next commandbatch + */ + for (i = 1; i < count; i++) { + if (replay[i]->context->id == cmdbatch->context->id) { + replay[i]->fault_policy = replay[0]->fault_policy; + set_bit(CMDBATCH_FLAG_FORCE_PREAMBLE, &replay[i]->priv); + set_bit(KGSL_FT_SKIPCMD, &replay[i]->fault_recovery); + break; + } + } + + /* + * If we did not find the next cmd then + * a) set a flag for next command issued in this context + * b) store the fault_policy, this fault_policy becomes the policy of + * next command issued in this context + */ + if ((i == count) && drawctxt) { + set_bit(ADRENO_CONTEXT_SKIP_CMD, &drawctxt->priv); + drawctxt->fault_policy = replay[0]->fault_policy; + } + + /* set the flags to skip this cmdbatch */ + set_bit(CMDBATCH_FLAG_SKIP, &cmdbatch->priv); + cmdbatch->fault_recovery = 0; +} + static void cmdbatch_skip_frame(struct kgsl_cmdbatch *cmdbatch, struct kgsl_cmdbatch **replay, int count) { @@ -834,11 +938,8 @@ static void remove_invalidated_cmdbatches(struct kgsl_device *device, drawctxt->state == ADRENO_CONTEXT_STATE_INVALID) { replay[i] = NULL; - mutex_lock(&device->mutex); kgsl_cancel_events_timestamp(device, cmd->context, cmd->timestamp); - mutex_unlock(&device->mutex); - kgsl_cmdbatch_destroy(cmd); } } @@ -907,6 +1008,18 @@ static void adreno_fault_header(struct kgsl_device *device, rptr, wptr, ib1base, ib1sz, ib2base, ib2sz); } +void adreno_fault_skipcmd_detached(struct kgsl_device *device, + struct adreno_context *drawctxt, + struct kgsl_cmdbatch *cmdbatch) +{ + if (test_bit(ADRENO_CONTEXT_SKIP_CMD, &drawctxt->priv) && + kgsl_context_detached(&drawctxt->base)) { + pr_fault(device, cmdbatch, "gpu %s ctx %d\n", + "detached", cmdbatch->context->id); + clear_bit(ADRENO_CONTEXT_SKIP_CMD, &drawctxt->priv); + } +} + static int dispatcher_do_fault(struct kgsl_device *device) { struct adreno_device *adreno_dev = ADRENO_DEVICE(device); @@ -929,6 +1042,12 @@ static int dispatcher_do_fault(struct kgsl_device *device) if (dispatcher->inflight == 0) { KGSL_DRV_WARN(device, "dispatcher_do_fault with 0 inflight commands\n"); + /* + * For certain faults like h/w fault the interrupts are + * turned off, re-enable here + */ + if (kgsl_pwrctrl_isenabled(device)) + kgsl_pwrctrl_irq(device, KGSL_PWRFLAGS_ON); return 0; } @@ -936,7 +1055,7 @@ static int dispatcher_do_fault(struct kgsl_device *device) del_timer_sync(&dispatcher->timer); del_timer_sync(&dispatcher->fault_timer); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); cmdbatch = dispatcher->cmdqueue[dispatcher->head]; @@ -972,7 +1091,8 @@ static int dispatcher_do_fault(struct kgsl_device *device) kgsl_device_snapshot(device, 1); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + /* Allocate memory to store the inflight commands */ replay = kzalloc(sizeof(*replay) * dispatcher->inflight, GFP_KERNEL); @@ -980,6 +1100,7 @@ static int dispatcher_do_fault(struct kgsl_device *device) if (replay == NULL) { unsigned int ptr = dispatcher->head; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* Recovery failed - mark everybody guilty */ mark_guilty_context(device, 0); @@ -999,6 +1120,7 @@ static int dispatcher_do_fault(struct kgsl_device *device) */ count = 0; + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); goto replay; } @@ -1017,6 +1139,35 @@ static int dispatcher_do_fault(struct kgsl_device *device) cmdbatch = replay[0]; + /* + * If GFT recovered more than X times in Y ms invalidate the context + * and do not attempt recovery. + * Example: X==3 and Y==3000 ms, GPU hung at 500ms, 1700ms, 25000ms and + * 3000ms for the same context, we will not try FT and invalidate the + * context @3000ms because context triggered GFT more than 3 times in + * last 3 seconds. If a context caused recoverable GPU hangs + * where 1st and 4th gpu hang are more than 3 seconds apart we + * won't disable GFT and invalidate the context. + */ + if (test_bit(KGSL_FT_THROTTLE, &cmdbatch->fault_policy)) { + if (time_after(jiffies, (cmdbatch->context->fault_time + + msecs_to_jiffies(_fault_throttle_time)))) { + cmdbatch->context->fault_time = jiffies; + cmdbatch->context->fault_count = 1; + } else { + cmdbatch->context->fault_count++; + if (cmdbatch->context->fault_count > + _fault_throttle_burst) { + set_bit(KGSL_FT_DISABLE, + &cmdbatch->fault_policy); + pr_fault(device, cmdbatch, + "gpu fault threshold exceeded %d faults in %d msecs\n", + _fault_throttle_burst, + _fault_throttle_time); + } + } + } + /* * If FT is disabled for this cmdbatch invalidate immediately */ @@ -1027,7 +1178,9 @@ static int dispatcher_do_fault(struct kgsl_device *device) cmdbatch->context->id, cmdbatch->timestamp); mark_guilty_context(device, cmdbatch->context->id); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); adreno_drawctxt_invalidate(device, cmdbatch->context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } /* @@ -1104,6 +1257,16 @@ static int dispatcher_do_fault(struct kgsl_device *device) goto replay; } + /* Skip the faulted command batch submission */ + if (test_and_clear_bit(KGSL_FT_SKIPCMD, &cmdbatch->fault_policy)) { + trace_adreno_cmdbatch_recovery(cmdbatch, BIT(KGSL_FT_SKIPCMD)); + + /* Skip faulting command batch */ + cmdbatch_skip_cmd(cmdbatch, replay, count); + + goto replay; + } + if (test_and_clear_bit(KGSL_FT_SKIPFRAME, &cmdbatch->fault_policy)) { trace_adreno_cmdbatch_recovery(cmdbatch, BIT(KGSL_FT_SKIPFRAME)); @@ -1126,7 +1289,9 @@ static int dispatcher_do_fault(struct kgsl_device *device) mark_guilty_context(device, cmdbatch->context->id); /* Invalidate the context */ + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); adreno_drawctxt_invalidate(device, cmdbatch->context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); replay: @@ -1135,18 +1300,20 @@ static int dispatcher_do_fault(struct kgsl_device *device) dispatcher->head = dispatcher->tail = 0; /* Reset the GPU */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); ret = adreno_reset(device); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); /* if any other fault got in until reset then ignore */ fault = atomic_xchg(&dispatcher->fault, 0); /* If adreno_reset() fails then what hope do we have for the future? */ BUG_ON(ret); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* Remove any pending command batches that have been invalidated */ remove_invalidated_cmdbatches(device, replay, count); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); /* Replay the pending command buffers */ for (i = 0; i < count; i++) { @@ -1188,9 +1355,11 @@ static int dispatcher_do_fault(struct kgsl_device *device) /* Mark this context as guilty (failed recovery) */ mark_guilty_context(device, replay[i]->context->id); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); adreno_drawctxt_invalidate(device, replay[i]->context); remove_invalidated_cmdbatches(device, &replay[i], count - i); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } } @@ -1298,8 +1467,10 @@ static void adreno_dispatcher_work(struct work_struct *work) dispatcher->head = CMDQUEUE_NEXT(dispatcher->head, ADRENO_DISPATCH_CMDQUEUE_SIZE); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* Destroy the retired command batch */ kgsl_cmdbatch_destroy(cmdbatch); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); /* Update the expire time for the next command batch */ @@ -1374,9 +1545,9 @@ static void adreno_dispatcher_work(struct work_struct *work) * stragglers */ if (dispatcher->inflight == 0 && count) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); queue_work(device->work_queue, &device->ts_expired_ws); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } /* Dispatch new commands if we have the room */ @@ -1393,12 +1564,12 @@ static void adreno_dispatcher_work(struct work_struct *work) mod_timer(&dispatcher->timer, cmdbatch->expires); /* There are still things in flight - update the idle counts */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_pwrscale_idle(device); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } else { /* There is nothing left in the pipeline. Shut 'er down boys */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* * Stop the fault timer before decrementing the active count to * avoid reading the hardware registers while we are trying to @@ -1411,13 +1582,13 @@ static void adreno_dispatcher_work(struct work_struct *work) clear_bit(ADRENO_DISPATCHER_POWER, &dispatcher->priv); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } /* Before leaving update the pwrscale information */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_pwrscale_idle(device); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); mutex_unlock(&dispatcher->mutex); } @@ -1515,14 +1686,8 @@ void adreno_dispatcher_irq_fault(struct kgsl_device *device) */ void adreno_dispatcher_start(struct kgsl_device *device) { - struct adreno_device *adreno_dev = ADRENO_DEVICE(device); - complete_all(&device->cmdbatch_gate); - /* a305b & a305c GPUs are slower than a330 and needs a larger timer */ - if (adreno_is_a305b(adreno_dev) || adreno_is_a305c(adreno_dev)) - _fault_timer_interval = 200; - /* Schedule the work loop to get things going */ adreno_dispatcher_schedule(device); } @@ -1550,16 +1715,19 @@ void adreno_dispatcher_stop(struct adreno_device *adreno_dev) void adreno_dispatcher_close(struct adreno_device *adreno_dev) { struct adreno_dispatcher *dispatcher = &adreno_dev->dispatcher; + struct kgsl_device *device = &adreno_dev->dev; mutex_lock(&dispatcher->mutex); del_timer_sync(&dispatcher->timer); del_timer_sync(&dispatcher->fault_timer); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); while (dispatcher->head != dispatcher->tail) { kgsl_cmdbatch_destroy(dispatcher->cmdqueue[dispatcher->head]); dispatcher->head = (dispatcher->head + 1) % ADRENO_DISPATCH_CMDQUEUE_SIZE; } + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); mutex_unlock(&dispatcher->mutex); @@ -1631,6 +1799,10 @@ static DISPATCHER_UINT_ATTR(cmdbatch_timeout, 0644, 0, _cmdbatch_timeout); static DISPATCHER_UINT_ATTR(context_queue_wait, 0644, 0, _context_queue_wait); static DISPATCHER_UINT_ATTR(fault_detect_interval, 0644, 0, _fault_timer_interval); +static DISPATCHER_UINT_ATTR(fault_throttle_time, 0644, 0, + _fault_throttle_time); +static DISPATCHER_UINT_ATTR(fault_throttle_burst, 0644, 0, + _fault_throttle_burst); static struct attribute *dispatcher_attrs[] = { &dispatcher_attr_inflight.attr, @@ -1639,6 +1811,8 @@ static struct attribute *dispatcher_attrs[] = { &dispatcher_attr_cmdbatch_timeout.attr, &dispatcher_attr_context_queue_wait.attr, &dispatcher_attr_fault_detect_interval.attr, + &dispatcher_attr_fault_throttle_time.attr, + &dispatcher_attr_fault_throttle_burst.attr, NULL, }; diff --git a/drivers/gpu/msm/adreno_drawctxt.c b/drivers/gpu/msm/adreno_drawctxt.c index 136456ac7b65..df9d6eca84f1 100644 --- a/drivers/gpu/msm/adreno_drawctxt.c +++ b/drivers/gpu/msm/adreno_drawctxt.c @@ -171,13 +171,63 @@ static int _check_context_timestamp(struct kgsl_device *device, drawctxt->state != ADRENO_CONTEXT_STATE_ACTIVE) return 1; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); ret = kgsl_check_timestamp(device, &drawctxt->base, timestamp); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return ret; } +/** + * adreno_drawctxt_dump() - dump information about a draw context + * @device: KGSL device that owns the context + * @context: KGSL context to dump information about + * + * Dump specific information about the context to the kernel log. Used for + * fence timeout callbacks + */ +void adreno_drawctxt_dump(struct kgsl_device *device, + struct kgsl_context *context) +{ + unsigned int queue, start, retire; + struct adreno_context *drawctxt = ADRENO_CONTEXT(context); + + queue = kgsl_readtimestamp(device, context, KGSL_TIMESTAMP_QUEUED); + start = kgsl_readtimestamp(device, context, KGSL_TIMESTAMP_CONSUMED); + retire = kgsl_readtimestamp(device, context, KGSL_TIMESTAMP_RETIRED); + + spin_lock(&drawctxt->lock); + dev_err(device->dev, + " context[%d]: queue=%d, submit=%d, start=%d, retire=%d\n", + context->id, queue, drawctxt->submitted_timestamp, + start, retire); + + if (drawctxt->cmdqueue_head != drawctxt->cmdqueue_tail) { + struct kgsl_cmdbatch *cmdbatch = + drawctxt->cmdqueue[drawctxt->cmdqueue_head]; + + if (test_bit(CMDBATCH_FLAG_FENCE_LOG, &cmdbatch->priv)) { + dev_err(device->dev, + " possible deadlock. Context %d might be blocked for itself\n", + context->id); + goto done; + } + + spin_lock(&cmdbatch->lock); + + if (!list_empty(&cmdbatch->synclist)) { + dev_err(device->dev, + " context[%d] (ts=%d) Active sync points:\n", + context->id, cmdbatch->timestamp); + + kgsl_dump_syncpoints(device, cmdbatch); + } + spin_unlock(&cmdbatch->lock); + } +done: + spin_unlock(&drawctxt->lock); +} + /** * adreno_drawctxt_wait() - sleep until a timestamp expires * @adreno_dev: pointer to the adreno_device struct @@ -227,7 +277,7 @@ int adreno_drawctxt_wait(struct adreno_device *adreno_dev, io = (io_cnt < pwr->pwrlevels[pwr->active_pwrlevel].io_fraction) ? 0 : 1; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); if (timeout) { ret = (int) adreno_wait_event_interruptible_timeout( @@ -245,7 +295,7 @@ int adreno_drawctxt_wait(struct adreno_device *adreno_dev, io); } - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* -EDEADLK if the context was invalidated while we were waiting */ if (drawctxt->state == ADRENO_CONTEXT_STATE_INVALID) @@ -314,23 +364,19 @@ int adreno_drawctxt_wait_global(struct adreno_device *adreno_dev, goto done; } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); if (timeout) { - ret = (int) wait_event_timeout(drawctxt->waiting, + if (0 == (int) wait_event_timeout(drawctxt->waiting, _check_global_timestamp(device, drawctxt, timestamp), - msecs_to_jiffies(timeout)); - - if (ret == 0) + msecs_to_jiffies(timeout))) ret = -ETIMEDOUT; - else if (ret > 0) - ret = 0; } else { wait_event(drawctxt->waiting, _check_global_timestamp(device, drawctxt, timestamp)); } - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (ret) kgsl_cancel_events_timestamp(device, NULL, timestamp); @@ -355,11 +401,9 @@ void adreno_drawctxt_invalidate(struct kgsl_device *device, trace_adreno_drawctxt_invalidate(drawctxt); + spin_lock(&drawctxt->lock); drawctxt->state = ADRENO_CONTEXT_STATE_INVALID; - /* Clear the pending queue */ - mutex_lock(&drawctxt->mutex); - /* * set the timestamp to the last value since the context is invalidated * and we want the pending events for this context to go away @@ -379,18 +423,13 @@ void adreno_drawctxt_invalidate(struct kgsl_device *device, drawctxt->cmdqueue_head = (drawctxt->cmdqueue_head + 1) % ADRENO_CONTEXT_CMDQUEUE_SIZE; - mutex_unlock(&drawctxt->mutex); - - mutex_lock(&device->mutex); kgsl_cancel_events_timestamp(device, context, cmdbatch->timestamp); - mutex_unlock(&device->mutex); kgsl_cmdbatch_destroy(cmdbatch); - mutex_lock(&drawctxt->mutex); } - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); /* Give the bad news to everybody waiting around */ wake_up_all(&drawctxt->waiting); @@ -439,7 +478,7 @@ adreno_drawctxt_create(struct kgsl_device_private *dev_priv, drawctxt->base.flags |= KGSL_CONTEXT_PER_CONTEXT_TS; drawctxt->type = (drawctxt->base.flags & KGSL_CONTEXT_TYPE_MASK) >> KGSL_CONTEXT_TYPE_SHIFT; - mutex_init(&drawctxt->mutex); + spin_lock_init(&drawctxt->lock); init_waitqueue_head(&drawctxt->wq); init_waitqueue_head(&drawctxt->waiting); @@ -518,7 +557,7 @@ int adreno_drawctxt_detach(struct kgsl_context *context) if (adreno_dev->drawctxt_active == drawctxt) adreno_drawctxt_switch(adreno_dev, NULL, 0); - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); while (drawctxt->cmdqueue_head != drawctxt->cmdqueue_tail) { struct kgsl_cmdbatch *cmdbatch = @@ -527,7 +566,14 @@ int adreno_drawctxt_detach(struct kgsl_context *context) drawctxt->cmdqueue_head = (drawctxt->cmdqueue_head + 1) % ADRENO_CONTEXT_CMDQUEUE_SIZE; - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); + + /* + * If the context is deteached while we are waiting for + * the next command in GFT SKIP CMD, print the context + * detached status here. + */ + adreno_fault_skipcmd_detached(device, drawctxt, cmdbatch); /* * Don't hold the drawctxt mutex while the cmdbatch is being @@ -536,10 +582,10 @@ int adreno_drawctxt_detach(struct kgsl_context *context) */ kgsl_cmdbatch_destroy(cmdbatch); - mutex_lock(&drawctxt->mutex); + spin_lock(&drawctxt->lock); } - mutex_unlock(&drawctxt->mutex); + spin_unlock(&drawctxt->lock); /* * internal_timestamp is set in adreno_ringbuffer_addcmds, * which holds the device mutex. The entire context destroy @@ -548,9 +594,14 @@ int adreno_drawctxt_detach(struct kgsl_context *context) */ BUG_ON(!mutex_is_locked(&device->mutex)); - /* Wait for the last global timestamp to pass before continuing */ + /* Wait for the last global timestamp to pass before continuing. + * The maxumum wait time is 30s, some large IB's can take longer + * than 10s and if hang happens then the time for the context's + * commands to retire will be greater than 10s. 30s should be sufficient + * time to wait for the commands even if a hang happens. + */ ret = adreno_drawctxt_wait_global(adreno_dev, context, - drawctxt->internal_timestamp, 10 * 1000); + drawctxt->internal_timestamp, 30 * 1000); /* * If the wait for global fails then nothing after this point is likely diff --git a/drivers/gpu/msm/adreno_drawctxt.h b/drivers/gpu/msm/adreno_drawctxt.h index 7656cd546bd4..d6ed5d7416f0 100644 --- a/drivers/gpu/msm/adreno_drawctxt.h +++ b/drivers/gpu/msm/adreno_drawctxt.h @@ -130,6 +130,9 @@ extern const struct adreno_context_ops adreno_preamble_ctx_ops; * @waiting: Workqueue structure for contexts waiting for a timestamp or event * @queued: Number of commands queued in the cmdqueue * @ops: Context switch functions for this context. + * @fault_policy: GFT fault policy set in cmdbatch_skip_cmd(); + * @queued_timestamp: The last timestamp that was queued on this context + * @submitted_timestamp: The last timestamp that was submitted for this context */ struct adreno_context { struct kgsl_context base; @@ -139,7 +142,7 @@ struct adreno_context { int state; unsigned long priv; unsigned int type; - struct mutex mutex; + spinlock_t lock; struct kgsl_memdesc gpustate; unsigned int reg_restore[3]; unsigned int shader_save[3]; @@ -178,6 +181,9 @@ struct adreno_context { int queued; const struct adreno_context_ops *ops; + unsigned int fault_policy; + unsigned int queued_timestamp; + unsigned int submitted_timestamp; }; /** @@ -193,6 +199,8 @@ struct adreno_context { * @ADRENO_CONTEXT_SKIP_EOF - Context skip IBs until the next end of frame * marker. * @ADRENO_CONTEXT_FORCE_PREAMBLE - Force the preamble for the next submission. + * @ADRENO_CONTEXT_SKIP_CMD - Context's command batch is skipped during + fault tolerance. */ enum adreno_context_priv { ADRENO_CONTEXT_FAULT = 0, @@ -204,6 +212,7 @@ enum adreno_context_priv { ADRENO_CONTEXT_GPU_HANG_FT, ADRENO_CONTEXT_SKIP_EOF, ADRENO_CONTEXT_FORCE_PREAMBLE, + ADRENO_CONTEXT_SKIP_CMD, }; struct kgsl_context *adreno_drawctxt_create(struct kgsl_device_private *, @@ -284,4 +293,7 @@ static inline void calc_gmemsize(struct gmem_shadow_t *shadow, int gmem_size) shadow->size = shadow->pitch * shadow->height * 4; } +void adreno_drawctxt_dump(struct kgsl_device *device, + struct kgsl_context *context); + #endif /* __ADRENO_DRAWCTXT_H */ diff --git a/drivers/gpu/msm/adreno_postmortem.c b/drivers/gpu/msm/adreno_postmortem.c index 0397cca4e134..08c8b1f79021 100644 --- a/drivers/gpu/msm/adreno_postmortem.c +++ b/drivers/gpu/msm/adreno_postmortem.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2010-2014, 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 @@ -199,8 +199,9 @@ static void dump_ib(struct kgsl_device *device, char *buffId, phys_addr_t pt_base, uint32_t base_offset, uint32_t ib_base, uint32_t ib_size, bool dump) { + struct kgsl_mem_entry *ent = NULL; uint8_t *base_addr = adreno_convertaddr(device, pt_base, - ib_base, ib_size*sizeof(uint32_t)); + ib_base, ib_size*sizeof(uint32_t), &ent); if (base_addr && dump) print_hex_dump(KERN_ERR, buffId, DUMP_PREFIX_OFFSET, @@ -210,6 +211,10 @@ static void dump_ib(struct kgsl_device *device, char *buffId, "offset:%5.5X%s\n", buffId, ib_base, ib_size*4, base_offset, base_addr ? "" : " [Invalid]"); + if (ent) { + kgsl_memdesc_unmap(&ent->memdesc); + kgsl_mem_entry_put(ent); + } } #define IB_LIST_SIZE 64 @@ -228,13 +233,14 @@ static void dump_ib1(struct kgsl_device *device, phys_addr_t pt_base, int i, j; uint32_t value; uint32_t *ib1_addr; + struct kgsl_mem_entry *ent = NULL; dump_ib(device, "IB1:", pt_base, base_offset, ib1_base, ib1_size, dump); /* fetch virtual address for given IB base */ ib1_addr = (uint32_t *)adreno_convertaddr(device, pt_base, - ib1_base, ib1_size*sizeof(uint32_t)); + ib1_base, ib1_size*sizeof(uint32_t), &ent); if (!ib1_addr) return; @@ -261,6 +267,10 @@ static void dump_ib1(struct kgsl_device *device, phys_addr_t pt_base, ++ib_list->count; } } + if (ent) { + kgsl_memdesc_unmap(&ent->memdesc); + kgsl_mem_entry_put(ent); + } } static void adreno_dump_rb_buffer(struct kgsl_device *device, const void *buf, diff --git a/drivers/gpu/msm/adreno_profile.c b/drivers/gpu/msm/adreno_profile.c index 26c8b6917b03..7785f3bc7af5 100644 --- a/drivers/gpu/msm/adreno_profile.c +++ b/drivers/gpu/msm/adreno_profile.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013-2014, 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 @@ -146,7 +146,7 @@ static void _build_pre_ib_cmds(struct adreno_profile *profile, entry->offset, data_offset); IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset, gpuaddr + data_offset, data_offset); - IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset + 1, + IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset_hi, gpuaddr + data_offset, data_offset); /* skip over post_ib counter data */ @@ -185,7 +185,7 @@ static void _build_post_ib_cmds(struct adreno_profile *profile, IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset, gpuaddr + data_offset, data_offset); - IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset + 1, + IB_CMD(ibcmds, CP_REG_TO_MEM, entry->offset_hi, gpuaddr + data_offset, data_offset); } @@ -281,7 +281,7 @@ static bool _in_assignments_list(struct adreno_profile *profile, static bool _add_to_assignments_list(struct adreno_profile *profile, const char *str, unsigned int groupid, unsigned int countable, - unsigned int offset) + unsigned int offset, unsigned int offset_hi) { struct adreno_profile_assigns_list *entry; @@ -295,6 +295,7 @@ static bool _add_to_assignments_list(struct adreno_profile *profile, entry->countable = countable; entry->groupid = groupid; entry->offset = offset; + entry->offset_hi = offset_hi; strlcpy(entry->name, str, sizeof(entry->name)); @@ -479,9 +480,9 @@ static int profile_enable_get(void *data, u64 *val) struct kgsl_device *device = data; struct adreno_device *adreno_dev = ADRENO_DEVICE(device); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); *val = adreno_profile_enabled(&adreno_dev->profile); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } @@ -492,10 +493,10 @@ static int profile_enable_set(void *data, u64 val) struct adreno_device *adreno_dev = ADRENO_DEVICE(device); struct adreno_profile *profile = &adreno_dev->profile; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (adreno_is_a2xx(adreno_dev)) { - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } @@ -503,7 +504,7 @@ static int profile_enable_set(void *data, u64 val) check_close_profile(profile); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } @@ -522,11 +523,11 @@ static ssize_t profile_assignments_read(struct file *filep, if (adreno_is_a2xx(adreno_dev)) return -EINVAL; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); buf = kmalloc(max_size, GFP_KERNEL); if (!buf) { - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return -ENOMEM; } @@ -546,7 +547,7 @@ static ssize_t profile_assignments_read(struct file *filep, kfree(buf); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return size; } @@ -576,7 +577,7 @@ static void _add_assignment(struct adreno_device *adreno_dev, unsigned int groupid, unsigned int countable) { struct adreno_profile *profile = &adreno_dev->profile; - unsigned int offset; + unsigned int offset, offset_hi; const char *name = NULL; name = adreno_perfcounter_get_name(adreno_dev, groupid); @@ -588,13 +589,13 @@ static void _add_assignment(struct adreno_device *adreno_dev, return; /* add to perf counter allocation, if fail skip it */ - if (adreno_perfcounter_get(adreno_dev, groupid, - countable, &offset, PERFCOUNTER_FLAG_NONE)) + if (adreno_perfcounter_get(adreno_dev, groupid, countable, + &offset, &offset_hi, PERFCOUNTER_FLAG_NONE)) return; /* add to assignments list, put counter back if error */ if (!_add_to_assignments_list(profile, name, groupid, - countable, offset)) + countable, offset, offset_hi)) adreno_perfcounter_put(adreno_dev, groupid, countable, PERFCOUNTER_FLAG_KERNEL); } @@ -679,7 +680,16 @@ static ssize_t profile_assignments_write(struct file *filep, if (adreno_is_a2xx(adreno_dev)) return -ENOSPC; - mutex_lock(&device->mutex); + buf = kmalloc(len + 1, GFP_KERNEL); + if (buf == NULL) + return -ENOMEM; + + if (copy_from_user(buf, user_buf, len)) { + size = -EFAULT; + goto error_free; + } + + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (adreno_profile_enabled(profile)) { size = -EINVAL; @@ -687,8 +697,10 @@ static ssize_t profile_assignments_write(struct file *filep, } ret = kgsl_active_count_get(device); - if (ret) - return -EINVAL; + if (ret) { + size = ret; + goto error_unlock; + } /* * When adding/removing assignments, ensure that the GPU is done with @@ -696,19 +708,13 @@ static ssize_t profile_assignments_write(struct file *filep, * GPU and avoid racey conditions. */ if (adreno_idle(device)) { - size = -EINVAL; + size = -ETIMEDOUT; goto error_put; } /* clear all shared buffer results */ adreno_profile_process_results(device); - buf = kmalloc(len + 1, GFP_KERNEL); - if (!buf) { - size = -EINVAL; - goto error_put; - } - pbuf = buf; /* clear the log buffer */ @@ -717,10 +723,6 @@ static ssize_t profile_assignments_write(struct file *filep, profile->log_tail = profile->log_buffer; } - if (copy_from_user(buf, user_buf, len)) { - size = -EFAULT; - goto error_free; - } /* for sanity and parsing, ensure it is null terminated */ buf[len] = '\0'; @@ -740,12 +742,12 @@ static ssize_t profile_assignments_write(struct file *filep, size = len; -error_free: - kfree(buf); error_put: kgsl_active_count_put(device); error_unlock: - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); +error_free: + kfree(buf); return size; } @@ -883,7 +885,7 @@ static int profile_pipe_print(struct file *filep, char __user *ubuf, * for each perf counter */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); while (1) { /* process any results that are available into the log_buffer */ @@ -905,10 +907,10 @@ static int profile_pipe_print(struct file *filep, char __user *ubuf, } } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); set_current_state(TASK_INTERRUPTIBLE); schedule_timeout(HZ / 10); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (signal_pending(current)) { status = 0; @@ -917,7 +919,7 @@ static int profile_pipe_print(struct file *filep, char __user *ubuf, } check_close_profile(profile); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return status; } @@ -934,7 +936,7 @@ static int profile_groups_print(struct seq_file *s, void *unused) if (adreno_is_a2xx(adreno_dev)) return -EINVAL; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); for (i = 0; i < counters->group_count; ++i) { group = &(counters->groups[i]); @@ -950,7 +952,7 @@ static int profile_groups_print(struct seq_file *s, void *unused) group->reg_count, used); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } diff --git a/drivers/gpu/msm/adreno_profile.h b/drivers/gpu/msm/adreno_profile.h index 7e1ccb27ab51..dfd22d857a2e 100644 --- a/drivers/gpu/msm/adreno_profile.h +++ b/drivers/gpu/msm/adreno_profile.h @@ -27,7 +27,8 @@ struct adreno_profile_assigns_list { char name[25]; unsigned int groupid; unsigned int countable; - unsigned int offset; /* LO offset, HI offset is +1 */ + unsigned int offset; /* LO offset */ + unsigned int offset_hi; /* HI offset */ }; struct adreno_profile { diff --git a/drivers/gpu/msm/adreno_ringbuffer.c b/drivers/gpu/msm/adreno_ringbuffer.c index 7bbbc35c0202..57d21f5f8f7b 100644 --- a/drivers/gpu/msm/adreno_ringbuffer.c +++ b/drivers/gpu/msm/adreno_ringbuffer.c @@ -1228,6 +1228,29 @@ int adreno_ringbuffer_submitcmd(struct adreno_device *adreno_dev, /* process any profiling results that are available into the log_buf */ adreno_profile_process_results(device); + /* + * If SKIP CMD flag is set for current context + * a) set SKIPCMD as fault_recovery for current commandbatch + * b) store context's commandbatch fault_policy in current + * commandbatch fault_policy and clear context's commandbatch + * fault_policy + * c) force preamble for commandbatch + */ + if (test_bit(ADRENO_CONTEXT_SKIP_CMD, &drawctxt->priv) && + (!test_bit(CMDBATCH_FLAG_SKIP, &cmdbatch->priv))) { + + set_bit(KGSL_FT_SKIPCMD, &cmdbatch->fault_recovery); + cmdbatch->fault_policy = drawctxt->fault_policy; + set_bit(CMDBATCH_FLAG_FORCE_PREAMBLE, &cmdbatch->priv); + + /* if context is detached print fault recovery */ + adreno_fault_skipcmd_detached(device, drawctxt, cmdbatch); + + /* clear the drawctxt flags */ + clear_bit(ADRENO_CONTEXT_SKIP_CMD, &drawctxt->priv); + drawctxt->fault_policy = 0; + } + /*When preamble is enabled, the preamble buffer with state restoration commands are stored in the first node of the IB chain. We can skip that if a context switch hasn't occured */ diff --git a/drivers/gpu/msm/adreno_snapshot.c b/drivers/gpu/msm/adreno_snapshot.c index b7c2237f79f4..bc37bf2681af 100644 --- a/drivers/gpu/msm/adreno_snapshot.c +++ b/drivers/gpu/msm/adreno_snapshot.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -37,6 +37,7 @@ static struct kgsl_snapshot_obj { phys_addr_t ptbase; void *ptr; int dwords; + struct kgsl_mem_entry *entry; } objbuf[SNAPSHOT_OBJ_BUFSIZE]; /* Pointer to the next open entry in the object list */ @@ -49,6 +50,7 @@ static void push_object(struct kgsl_device *device, int type, { int index; void *ptr; + struct kgsl_mem_entry *entry = NULL; /* * Sometimes IBs can be reused in the same dump. Because we parse from @@ -74,7 +76,7 @@ static void push_object(struct kgsl_device *device, int type, * adreno_convertaddr verifies that the IB size is valid - at least in * the context of it being smaller then the allocated memory space */ - ptr = adreno_convertaddr(device, ptbase, gpuaddr, dwords << 2); + ptr = adreno_convertaddr(device, ptbase, gpuaddr, dwords << 2, &entry); if (ptr == NULL) { KGSL_DRV_ERR(device, @@ -87,6 +89,7 @@ static void push_object(struct kgsl_device *device, int type, objbuf[objbufptr].gpuaddr = gpuaddr; objbuf[objbufptr].ptbase = ptbase; objbuf[objbufptr].dwords = dwords; + objbuf[objbufptr].entry = entry; objbuf[objbufptr++].ptr = ptr; } @@ -562,6 +565,7 @@ static int ib_add_gpu_object(struct kgsl_device *device, phys_addr_t ptbase, { int i, ret, rem = dwords; unsigned int *src; + struct kgsl_mem_entry *entry = NULL; /* * If the object is already in the list, we don't need to parse it again @@ -571,7 +575,7 @@ static int ib_add_gpu_object(struct kgsl_device *device, phys_addr_t ptbase, return 0; src = (unsigned int *) adreno_convertaddr(device, ptbase, gpuaddr, - dwords << 2); + dwords << 2, &entry); if (src == NULL) return -EINVAL; @@ -626,6 +630,11 @@ static int ib_add_gpu_object(struct kgsl_device *device, phys_addr_t ptbase, if (ret >= 0) snapshot_frozen_objsize += ret; + if (entry) { + kgsl_memdesc_unmap(&entry->memdesc); + kgsl_mem_entry_put(entry); + } + return ret; } @@ -944,6 +953,10 @@ static void *dump_object(struct kgsl_device *device, int obj, void *snapshot, snapshot = kgsl_snapshot_add_section(device, KGSL_SNAPSHOT_SECTION_IB, snapshot, remain, snapshot_ib, &objbuf[obj]); + if (objbuf[obj].entry) { + kgsl_memdesc_unmap(&(objbuf[obj].entry->memdesc)); + kgsl_mem_entry_put(objbuf[obj].entry); + } break; default: KGSL_DRV_ERR(device, diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c index d1a86c4c2cd8..1befa67a46c1 100644 --- a/drivers/gpu/msm/kgsl.c +++ b/drivers/gpu/msm/kgsl.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2008-2014, 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 @@ -64,14 +64,8 @@ struct kgsl_dma_buf_meta { struct sg_table *table; }; -static void kgsl_put_process_private(struct kgsl_device *device, - struct kgsl_process_private *private); - static void kgsl_mem_entry_detach_process(struct kgsl_mem_entry *entry); -static void -kgsl_put_process_private(struct kgsl_device *device, - struct kgsl_process_private *private); /** * kgsl_trace_issueibcmds() - Call trace_issueibcmds by proxy * device: KGSL device @@ -111,51 +105,107 @@ void kgsl_trace_regwrite(struct kgsl_device *device, unsigned int offset, } EXPORT_SYMBOL(kgsl_trace_regwrite); -int kgsl_memfree_hist_init(void) +/* + * The memfree list contains the last N blocks of memory that have been freed. + * On a GPU fault we walk the list to see if the faulting address had been + * recently freed and print out a message to that effect + */ + +#define MEMFREE_ENTRIES 512 + +static DEFINE_SPINLOCK(memfree_lock); + +struct memfree_entry { + unsigned long gpuaddr; + unsigned long size; + pid_t pid; + unsigned int flags; +}; + +static struct { + struct memfree_entry *list; + int head; + int tail; +} memfree; + +static int kgsl_memfree_init(void) { - void *base; + memfree.list = kzalloc(MEMFREE_ENTRIES * sizeof(struct memfree_entry), + GFP_KERNEL); - base = kzalloc(KGSL_MEMFREE_HIST_SIZE, GFP_KERNEL); - kgsl_driver.memfree_hist.base_hist_rb = base; - if (base == NULL) - return -ENOMEM; - kgsl_driver.memfree_hist.size = KGSL_MEMFREE_HIST_SIZE; - kgsl_driver.memfree_hist.wptr = base; - return 0; + return (memfree.list) ? 0 : -ENOMEM; } -void kgsl_memfree_hist_exit(void) +static void kgsl_memfree_exit(void) { - kfree(kgsl_driver.memfree_hist.base_hist_rb); - kgsl_driver.memfree_hist.base_hist_rb = NULL; + kfree(memfree.list); + memset(&memfree, 0, sizeof(memfree)); } -void kgsl_memfree_hist_set_event(unsigned int pid, unsigned int gpuaddr, - unsigned int size, int flags) +int kgsl_memfree_find_entry(pid_t pid, unsigned long *gpuaddr, + unsigned long *size, unsigned int *flags) { - struct kgsl_memfree_hist_elem *p; + int ptr; - void *base = kgsl_driver.memfree_hist.base_hist_rb; - int rbsize = kgsl_driver.memfree_hist.size; + if (memfree.list == NULL) + return 0; - if (base == NULL) - return; + spin_lock(&memfree_lock); - mutex_lock(&kgsl_driver.memfree_hist_mutex); - p = kgsl_driver.memfree_hist.wptr; - p->pid = pid; - p->gpuaddr = gpuaddr; - p->size = size; - p->flags = flags; + ptr = memfree.head - 1; + if (ptr < 0) + ptr = MEMFREE_ENTRIES - 1; - kgsl_driver.memfree_hist.wptr++; - if ((void *)kgsl_driver.memfree_hist.wptr >= base+rbsize) { - kgsl_driver.memfree_hist.wptr = - (struct kgsl_memfree_hist_elem *)base; + /* Walk backwards through the list looking for the last match */ + while (ptr != memfree.tail) { + struct memfree_entry *entry = &memfree.list[ptr]; + + if ((entry->pid == pid) && + (*gpuaddr >= entry->gpuaddr && + *gpuaddr < (entry->gpuaddr + entry->size))) { + *gpuaddr = entry->gpuaddr; + *flags = entry->flags; + *size = entry->size; + + spin_unlock(&memfree_lock); + return 1; + } + + ptr = ptr - 1; + + if (ptr < 0) + ptr = MEMFREE_ENTRIES - 1; } - mutex_unlock(&kgsl_driver.memfree_hist_mutex); + + spin_unlock(&memfree_lock); + return 0; } +static void kgsl_memfree_add(pid_t pid, unsigned int gpuaddr, + unsigned int size, int flags) + +{ + struct memfree_entry *entry; + + if (memfree.list == NULL) + return; + + spin_lock(&memfree_lock); + + entry = &memfree.list[memfree.head]; + + entry->pid = pid; + entry->gpuaddr = gpuaddr; + entry->size = size; + entry->flags = flags; + + memfree.head = (memfree.head + 1) % MEMFREE_ENTRIES; + + if (memfree.head == memfree.tail) + memfree.tail = (memfree.tail + 1) % MEMFREE_ENTRIES; + + spin_unlock(&memfree_lock); +} /* kgsl_get_mem_entry - get the mem_entry structure for the specified object * @device - Pointer to the device structure @@ -352,8 +402,8 @@ kgsl_mem_entry_attach_process(struct kgsl_mem_entry *entry, { int ret; struct kgsl_process_private *process = dev_priv->process_priv; - - ret = kref_get_unless_zero(&process->refcount); + + ret = kgsl_process_private_get(process); if (!ret) return -EBADF; @@ -392,7 +442,7 @@ kgsl_mem_entry_attach_process(struct kgsl_mem_entry *entry, return ret; err_put_proc_priv: - kgsl_put_process_private(dev_priv->device, process); + kgsl_process_private_put(process); return ret; } @@ -415,11 +465,38 @@ static void kgsl_mem_entry_detach_process(struct kgsl_mem_entry *entry) entry->priv->stats[entry->memtype].cur -= entry->memdesc.size; spin_unlock(&entry->priv->mem_lock); - kgsl_put_process_private(entry->dev_priv->device, entry->priv); + kgsl_process_private_put(entry->priv); entry->priv = NULL; } +/** + * kgsl_context_dump() - dump information about a draw context + * @device: KGSL device that owns the context + * @context: KGSL context to dump information about + * + * Dump specific information about the context to the kernel log. Used for + * fence timeout callbacks + */ +void kgsl_context_dump(struct kgsl_context *context) +{ + struct kgsl_device *device; + + if (_kgsl_context_get(context) == 0) + return; + + device = context->device; + + if (kgsl_context_detached(context)) { + dev_err(device->dev, " context[%d]: context detached\n", + context->id); + } else if (device->ftbl->drawctxt_dump != NULL) + device->ftbl->drawctxt_dump(device, context); + + kgsl_context_put(context); +} +EXPORT_SYMBOL(kgsl_context_dump); + /** * kgsl_context_init() - helper to initialize kgsl_context members * @dev_priv: the owner of the context @@ -473,7 +550,7 @@ int kgsl_context_init(struct kgsl_device_private *dev_priv, * the context is destroyed. This will also prevent the pagetable * from being destroyed */ - if (!kref_get_unless_zero(&dev_priv->process_priv->refcount)) + if (!kgsl_process_private_get(dev_priv->process_priv)) goto fail_free_id; context->device = dev_priv->device; context->dev_priv = dev_priv; @@ -563,13 +640,19 @@ kgsl_context_destroy(struct kref *kref) write_lock(&device->context_lock); if (context->id != KGSL_CONTEXT_INVALID) { + + /* Clear the timestamps in the memstore during destroy */ + kgsl_sharedmem_writel(device, &device->memstore, + KGSL_MEMSTORE_OFFSET(context->id, soptimestamp), 0); + kgsl_sharedmem_writel(device, &device->memstore, + KGSL_MEMSTORE_OFFSET(context->id, eoptimestamp), 0); + idr_remove(&device->context_idr, context->id); context->id = KGSL_CONTEXT_INVALID; } write_unlock(&device->context_lock); kgsl_sync_timeline_destroy(context); - kgsl_put_process_private(device, - context->proc_priv); + kgsl_process_private_put(context->proc_priv); device->ftbl->drawctxt_destroy(context); } @@ -628,7 +711,7 @@ static int kgsl_suspend_device(struct kgsl_device *device, pm_message_t state) KGSL_PWR_WARN(device, "suspend start\n"); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_pwrctrl_request_state(device, KGSL_STATE_SUSPEND); /* Tell the device to drain the submission queue */ @@ -683,7 +766,7 @@ static int kgsl_suspend_device(struct kgsl_device *device, pm_message_t state) device->ftbl->resume(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); KGSL_PWR_WARN(device, "suspend end\n"); return status; } @@ -694,7 +777,7 @@ static int kgsl_resume_device(struct kgsl_device *device) return -EINVAL; KGSL_PWR_WARN(device, "resume start\n"); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (device->state == KGSL_STATE_SUSPEND) { kgsl_pwrctrl_set_state(device, KGSL_STATE_SLUMBER); complete_all(&device->hwaccess_gate); @@ -718,7 +801,7 @@ static int kgsl_resume_device(struct kgsl_device *device) if (device->ftbl->resume) device->ftbl->resume(device); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); KGSL_PWR_WARN(device, "resume end\n"); return 0; } @@ -811,9 +894,8 @@ static void kgsl_destroy_process_private(struct kref *kref) return; } -static void -kgsl_put_process_private(struct kgsl_device *device, - struct kgsl_process_private *private) +void +kgsl_process_private_put(struct kgsl_process_private *private) { mutex_lock(&kgsl_driver.process_mutex); @@ -828,13 +910,32 @@ kgsl_put_process_private(struct kgsl_device *device, } /** - * find_process_private() - Helper function to search for process private - * @cur_dev_priv: Pointer to device private structure which contains pointers - * to device and process_private structs. + * kgsl_process_private_find() - Find the process associated with the specified + * name + * @name: pid_t of the process to search for + * Return the process struct for the given ID. + */ +struct kgsl_process_private *kgsl_process_private_find(pid_t pid) +{ + struct kgsl_process_private *p, *private = NULL; + + mutex_lock(&kgsl_driver.process_mutex); + list_for_each_entry(p, &kgsl_driver.process_list, list) { + if (p->pid == pid) { + if (kgsl_process_private_get(p)) + private = p; + break; + } + } + mutex_unlock(&kgsl_driver.process_mutex); + return private; +} + +/** + * kgsl_process_private_new() - Helper function to search for process private * Returns: Pointer to the found/newly created private struct */ -static struct kgsl_process_private * -kgsl_find_process_private(struct kgsl_device_private *cur_dev_priv) +static struct kgsl_process_private *kgsl_process_private_new(void) { struct kgsl_process_private *private; @@ -842,18 +943,16 @@ kgsl_find_process_private(struct kgsl_device_private *cur_dev_priv) mutex_lock(&kgsl_driver.process_mutex); list_for_each_entry(private, &kgsl_driver.process_list, list) { if (private->pid == task_tgid_nr(current)) { - kref_get(&private->refcount); + if (!kgsl_process_private_get(private)) + private = NULL; goto done; } } /* no existing process private found for this dev_priv, create one */ private = kzalloc(sizeof(struct kgsl_process_private), GFP_KERNEL); - if (private == NULL) { - KGSL_DRV_ERR(cur_dev_priv->device, "kzalloc(%d) failed\n", - sizeof(struct kgsl_process_private)); + if (private == NULL) goto done; - } kref_init(&private->refcount); @@ -875,11 +974,11 @@ kgsl_find_process_private(struct kgsl_device_private *cur_dev_priv) * NULL if pagetable creation for this process private obj failed. */ static struct kgsl_process_private * -kgsl_get_process_private(struct kgsl_device_private *cur_dev_priv) +kgsl_get_process_private(struct kgsl_device *device) { struct kgsl_process_private *private; - private = kgsl_find_process_private(cur_dev_priv); + private = kgsl_process_private_new(); if (!private) return NULL; @@ -894,15 +993,15 @@ kgsl_get_process_private(struct kgsl_device_private *cur_dev_priv) if ((!private->pagetable) && kgsl_mmu_enabled()) { unsigned long pt_name; - struct kgsl_mmu *mmu = &cur_dev_priv->device->mmu; pt_name = task_tgid_nr(current); - private->pagetable = kgsl_mmu_getpagetable(mmu, pt_name); + private->pagetable = + kgsl_mmu_getpagetable(&device->mmu, pt_name); if (private->pagetable == NULL) goto error; } - if (kgsl_process_init_sysfs(cur_dev_priv->device, private)) + if (kgsl_process_init_sysfs(device, private)) goto error; if (kgsl_process_init_debugfs(private)) goto error; @@ -915,7 +1014,7 @@ kgsl_get_process_private(struct kgsl_device_private *cur_dev_priv) error: mutex_unlock(&private->process_private_mutex); - kgsl_put_process_private(cur_dev_priv->device, private); + kgsl_process_private_put(private); return NULL; } @@ -953,7 +1052,7 @@ static int kgsl_release(struct inode *inodep, struct file *filep) filep->private_data = NULL; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); while (1) { read_lock(&device->context_lock); @@ -1005,11 +1104,11 @@ static int kgsl_release(struct inode *inodep, struct file *filep) kgsl_cancel_events(device, dev_priv); result = kgsl_close_device(device); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); kfree(dev_priv); - kgsl_put_process_private(device, private); + kgsl_process_private_put(private); pm_runtime_put(device->parentdev); return result; @@ -1087,19 +1186,19 @@ static int kgsl_open(struct inode *inodep, struct file *filep) dev_priv->device = device; filep->private_data = dev_priv; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); result = kgsl_open_device(device); if (result) goto err_freedevpriv; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); /* * Get file (per process) private struct. This must be done * after the first start so that the global pagetable mappings * are set up before we create the per-process pagetable. */ - dev_priv->process_priv = kgsl_get_process_private(dev_priv); + dev_priv->process_priv = kgsl_get_process_private(device); if (dev_priv->process_priv == NULL) { result = -ENOMEM; goto err_stop; @@ -1112,7 +1211,7 @@ static int kgsl_open(struct inode *inodep, struct file *filep) return result; err_stop: - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); device->open_count--; if (device->open_count == 0) { /* make sure power is on to stop the device */ @@ -1122,7 +1221,7 @@ static int kgsl_open(struct inode *inodep, struct file *filep) atomic_dec(&device->active_cnt); } err_freedevpriv: - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); filep->private_data = NULL; kfree(dev_priv); err_pmruntime: @@ -1406,7 +1505,6 @@ static long _device_waittimestamp(struct kgsl_device_private *dev_priv, kgsl_readtimestamp(device, context, KGSL_TIMESTAMP_RETIRED), result); - return result; } @@ -1415,9 +1513,14 @@ static long kgsl_ioctl_device_waittimestamp(struct kgsl_device_private void *data) { struct kgsl_device_waittimestamp *param = data; + struct kgsl_device *device = dev_priv->device; + long result = -EINVAL; - return _device_waittimestamp(dev_priv, NULL, + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + result = _device_waittimestamp(dev_priv, NULL, param->timestamp, param->timeout); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + return result; } static long kgsl_ioctl_device_waittimestamp_ctxtid(struct kgsl_device_private @@ -1426,8 +1529,10 @@ static long kgsl_ioctl_device_waittimestamp_ctxtid(struct kgsl_device_private { struct kgsl_device_waittimestamp_ctxtid *param = data; struct kgsl_context *context; + struct kgsl_device *device = dev_priv->device; long result = -EINVAL; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = kgsl_context_get_owner(dev_priv, param->context_id); if (context) @@ -1435,6 +1540,7 @@ static long kgsl_ioctl_device_waittimestamp_ctxtid(struct kgsl_device_private param->timestamp, param->timeout); kgsl_context_put(context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return result; } @@ -1475,6 +1581,90 @@ struct kgsl_cmdbatch_sync_event { struct kref refcount; }; +void kgsl_dump_syncpoints(struct kgsl_device *device, + struct kgsl_cmdbatch *cmdbatch) +{ + struct kgsl_cmdbatch_sync_event *event; + + /* Print all the pending sync objects */ + list_for_each_entry(event, &cmdbatch->synclist, node) { + + switch (event->type) { + case KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP: { + unsigned int retired; + + retired = kgsl_readtimestamp(event->device, + event->context, KGSL_TIMESTAMP_RETIRED); + + dev_err(device->dev, + " [timestamp] context %d timestamp %d (retired %d)\n", + event->context->id, event->timestamp, + retired); + break; + } + case KGSL_CMD_SYNCPOINT_TYPE_FENCE: + if (event->handle) + dev_err(device->dev, " fence: [%p] %s\n", + event->handle->fence, + event->handle->name); + else + dev_err(device->dev, " fence: invalid\n"); + break; + } + } +} + +static void _kgsl_cmdbatch_timer(unsigned long data) +{ + struct kgsl_device *device; + struct kgsl_cmdbatch *cmdbatch = (struct kgsl_cmdbatch *) data; + struct kgsl_cmdbatch_sync_event *event; + + if (cmdbatch == NULL || cmdbatch->context == NULL) + return; + + spin_lock(&cmdbatch->lock); + if (list_empty(&cmdbatch->synclist)) + goto done; + + device = cmdbatch->context->device; + + dev_err(device->dev, + "kgsl: possible gpu syncpoint deadlock for context %d timestamp %d\n", + cmdbatch->context->id, cmdbatch->timestamp); + dev_err(device->dev, " Active sync points:\n"); + + /* Print all the pending sync objects */ + list_for_each_entry(event, &cmdbatch->synclist, node) { + switch (event->type) { + case KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP: { + unsigned int retired; + + retired = kgsl_readtimestamp(event->device, + event->context, KGSL_TIMESTAMP_RETIRED); + + dev_err(device->dev, + " [timestamp] context %d timestamp %d (retired %d)\n", + event->context->id, event->timestamp, retired); + break; + } + case KGSL_CMD_SYNCPOINT_TYPE_FENCE: + if (event->handle && event->handle->fence) { + set_bit(CMDBATCH_FLAG_FENCE_LOG, + &cmdbatch->priv); + kgsl_sync_fence_log(event->handle->fence); + clear_bit(CMDBATCH_FLAG_FENCE_LOG, + &cmdbatch->priv); + } else + dev_err(device->dev, " fence: invalid\n"); + break; + } + } + +done: + spin_unlock(&cmdbatch->lock); +} + /** * kgsl_cmdbatch_sync_event_destroy() - Destroy a sync event object * @kref: Pointer to the kref structure for this object @@ -1549,6 +1739,10 @@ static void kgsl_cmdbatch_sync_expire(struct kgsl_device *device, sched = list_empty(&event->cmdbatch->synclist) ? 1 : 0; spin_unlock(&event->cmdbatch->lock); + /* If the list is empty delete the canary timer */ + if (sched) + del_timer_sync(&event->cmdbatch->timer); + /* * if this is the last event in the list then tell * the GPU device that the cmdbatch can be submitted @@ -1572,6 +1766,9 @@ static void kgsl_cmdbatch_sync_func(struct kgsl_device *device, void *priv, { struct kgsl_cmdbatch_sync_event *event = priv; + trace_syncpoint_timestamp_expire(event->cmdbatch, + event->context, event->timestamp); + kgsl_cmdbatch_sync_expire(device, event); kgsl_context_put(event->context); /* Put events that have signaled */ @@ -1591,10 +1788,12 @@ void kgsl_cmdbatch_destroy(struct kgsl_cmdbatch *cmdbatch) struct kgsl_cmdbatch_sync_event *event, *tmp; LIST_HEAD(cancel_synclist); - /* - * Empty the synclist before canceling events - */ + /* Zap the canary timer */ + del_timer_sync(&cmdbatch->timer); + spin_lock(&cmdbatch->lock); + + /* Empty the synclist before canceling events */ list_splice_init(&cmdbatch->synclist, &cancel_synclist); spin_unlock(&cmdbatch->lock); @@ -1637,6 +1836,9 @@ static void kgsl_cmdbatch_sync_fence_func(void *priv) { struct kgsl_cmdbatch_sync_event *event = priv; + trace_syncpoint_fence_expire(event->cmdbatch, + event->handle ? event->handle->name : "unknown"); + kgsl_cmdbatch_sync_expire(event->device, event); /* Put events that have signaled */ kgsl_cmdbatch_sync_event_put(event); @@ -1695,10 +1897,11 @@ static int kgsl_cmdbatch_add_sync_fence(struct kgsl_device *device, event->handle = kgsl_sync_fence_async_wait(sync->fd, kgsl_cmdbatch_sync_fence_func, event); - if (IS_ERR_OR_NULL(event->handle)) { int ret = PTR_ERR(event->handle); + event->handle = NULL; + /* Failed to add the event to the async callback */ kgsl_cmdbatch_sync_event_put(event); @@ -1711,9 +1914,18 @@ static int kgsl_cmdbatch_add_sync_fence(struct kgsl_device *device, /* Event no longer needed by this function */ kgsl_cmdbatch_sync_event_put(event); + /* + * If ret == 0 the fence was already signaled - print a trace + * message so we can track that + */ + if (ret == 0) + trace_syncpoint_fence_expire(cmdbatch, "signaled"); + return ret; } + trace_syncpoint_fence(cmdbatch, event->handle->name); + /* * Event was successfully added to the synclist, the async * callback and handle to cancel event has been set. @@ -1773,6 +1985,7 @@ static int kgsl_cmdbatch_add_sync_timestamp(struct kgsl_device *device, event->cmdbatch = cmdbatch; event->context = context; event->timestamp = sync->timestamp; + event->device = device; /* * Two krefs are required to support events. The first kref is for @@ -1789,10 +2002,10 @@ static int kgsl_cmdbatch_add_sync_timestamp(struct kgsl_device *device, list_add(&event->node, &cmdbatch->synclist); spin_unlock(&cmdbatch->lock); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); ret = kgsl_add_event(device, context->id, sync->timestamp, kgsl_cmdbatch_sync_func, event, NULL); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); if (ret) { spin_lock(&cmdbatch->lock); @@ -1801,6 +2014,8 @@ static int kgsl_cmdbatch_add_sync_timestamp(struct kgsl_device *device, kgsl_cmdbatch_put(cmdbatch); kfree(event); + } else { + trace_syncpoint_timestamp(cmdbatch, context, sync->timestamp); } done: @@ -1908,6 +2123,10 @@ static struct kgsl_cmdbatch *kgsl_cmdbatch_create(struct kgsl_device *device, cmdbatch->context = context; cmdbatch->flags = flags & ~KGSL_CONTEXT_SUBMIT_IB_LIST; + /* Add a timer to help debug sync deadlocks */ + setup_timer(&cmdbatch->timer, _kgsl_cmdbatch_timer, + (unsigned long) cmdbatch); + return cmdbatch; } @@ -2092,8 +2311,11 @@ static long kgsl_ioctl_rb_issueibcmds(struct kgsl_device_private *dev_priv, * -EPROTO is a "success" error - it just tells the user that the * context had previously faulted */ - if (result && result != -EPROTO) + if (result && result != -EPROTO) { + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_cmdbatch_destroy(cmdbatch); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + } done: kgsl_context_put(context); @@ -2144,8 +2366,11 @@ static long kgsl_ioctl_submit_commands(struct kgsl_device_private *dev_priv, * -EPROTO is a "success" error - it just tells the user that the * context had previously faulted */ - if (result && result != -EPROTO) + if (result && result != -EPROTO) { + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_cmdbatch_destroy(cmdbatch); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + } done: kgsl_context_put(context); @@ -2170,9 +2395,14 @@ static long kgsl_ioctl_cmdstream_readtimestamp(struct kgsl_device_private void *data) { struct kgsl_cmdstream_readtimestamp *param = data; + struct kgsl_device *device = dev_priv->device; + long result = -EINVAL; - return _cmdstream_readtimestamp(dev_priv, NULL, + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + result = _cmdstream_readtimestamp(dev_priv, NULL, param->type, ¶m->timestamp); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + return result; } static long kgsl_ioctl_cmdstream_readtimestamp_ctxtid(struct kgsl_device_private @@ -2180,9 +2410,11 @@ static long kgsl_ioctl_cmdstream_readtimestamp_ctxtid(struct kgsl_device_private void *data) { struct kgsl_cmdstream_readtimestamp_ctxtid *param = data; + struct kgsl_device *device = dev_priv->device; struct kgsl_context *context; long result = -EINVAL; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = kgsl_context_get_owner(dev_priv, param->context_id); if (context) @@ -2190,6 +2422,7 @@ static long kgsl_ioctl_cmdstream_readtimestamp_ctxtid(struct kgsl_device_private param->type, ¶m->timestamp); kgsl_context_put(context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return result; } @@ -2241,9 +2474,14 @@ static long kgsl_ioctl_cmdstream_freememontimestamp(struct kgsl_device_private void *data) { struct kgsl_cmdstream_freememontimestamp *param = data; + struct kgsl_device *device = dev_priv->device; + long result = -EINVAL; - return _cmdstream_freememontimestamp(dev_priv, param->gpuaddr, + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); + result = _cmdstream_freememontimestamp(dev_priv, param->gpuaddr, NULL, param->timestamp, param->type); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + return result; } static long kgsl_ioctl_cmdstream_freememontimestamp_ctxtid( @@ -2253,13 +2491,16 @@ static long kgsl_ioctl_cmdstream_freememontimestamp_ctxtid( { struct kgsl_cmdstream_freememontimestamp_ctxtid *param = data; struct kgsl_context *context; + struct kgsl_device *device = dev_priv->device; long result = -EINVAL; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = kgsl_context_get_owner(dev_priv, param->context_id); if (context) result = _cmdstream_freememontimestamp(dev_priv, param->gpuaddr, context, param->timestamp, param->type); kgsl_context_put(context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return result; } @@ -2271,6 +2512,7 @@ static long kgsl_ioctl_drawctxt_create(struct kgsl_device_private *dev_priv, struct kgsl_context *context = NULL; struct kgsl_device *device = dev_priv->device; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = device->ftbl->drawctxt_create(dev_priv, ¶m->flags); if (IS_ERR(context)) { result = PTR_ERR(context); @@ -2279,6 +2521,7 @@ static long kgsl_ioctl_drawctxt_create(struct kgsl_device_private *dev_priv, trace_kgsl_context_create(dev_priv->device, context, param->flags); param->drawctxt_id = context->id; done: + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return result; } @@ -2286,30 +2529,22 @@ static long kgsl_ioctl_drawctxt_destroy(struct kgsl_device_private *dev_priv, unsigned int cmd, void *data) { struct kgsl_drawctxt_destroy *param = data; + struct kgsl_device *device = dev_priv->device; struct kgsl_context *context; long result; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = kgsl_context_get_owner(dev_priv, param->drawctxt_id); result = kgsl_context_detach(context); kgsl_context_put(context); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return result; } -static long kgsl_ioctl_sharedmem_free(struct kgsl_device_private *dev_priv, - unsigned int cmd, void *data) +static long _sharedmem_free_entry(struct kgsl_mem_entry *entry) { - struct kgsl_sharedmem_free *param = data; - struct kgsl_process_private *private = dev_priv->process_priv; - struct kgsl_mem_entry *entry = NULL; - - entry = kgsl_sharedmem_find(private, param->gpuaddr); - if (!entry) { - KGSL_MEM_INFO(dev_priv->device, "invalid gpuaddr %08x\n", - param->gpuaddr); - return -EINVAL; - } if (!kgsl_mem_entry_set_pend(entry)) { kgsl_mem_entry_put(entry); return -EBUSY; @@ -2317,10 +2552,8 @@ static long kgsl_ioctl_sharedmem_free(struct kgsl_device_private *dev_priv, trace_kgsl_mem_free(entry); - kgsl_memfree_hist_set_event(entry->priv->pid, - entry->memdesc.gpuaddr, - entry->memdesc.size, - entry->memdesc.flags); + kgsl_memfree_add(entry->priv->pid, entry->memdesc.gpuaddr, + entry->memdesc.size, entry->memdesc.flags); /* * First kgsl_mem_entry_put is for the reference that we took in @@ -2329,10 +2562,28 @@ static long kgsl_ioctl_sharedmem_free(struct kgsl_device_private *dev_priv, */ kgsl_mem_entry_put(entry); kgsl_mem_entry_put(entry); + return 0; } -static long kgsl_ioctl_gpumem_free_id(struct kgsl_device_private *dev_priv, +long kgsl_ioctl_sharedmem_free(struct kgsl_device_private *dev_priv, + unsigned int cmd, void *data) +{ + struct kgsl_sharedmem_free *param = data; + struct kgsl_process_private *private = dev_priv->process_priv; + struct kgsl_mem_entry *entry = NULL; + + entry = kgsl_sharedmem_find(private, param->gpuaddr); + if (!entry) { + KGSL_MEM_INFO(dev_priv->device, "invalid gpuaddr %08x\n", + param->gpuaddr); + return -EINVAL; + } + + return _sharedmem_free_entry(entry); +} + +long kgsl_ioctl_gpumem_free_id(struct kgsl_device_private *dev_priv, unsigned int cmd, void *data) { struct kgsl_gpumem_free_id *param = data; @@ -2346,26 +2597,7 @@ static long kgsl_ioctl_gpumem_free_id(struct kgsl_device_private *dev_priv, return -EINVAL; } - if (!kgsl_mem_entry_set_pend(entry)) { - kgsl_mem_entry_put(entry); - return -EBUSY; - } - - trace_kgsl_mem_free(entry); - - kgsl_memfree_hist_set_event(entry->priv->pid, - entry->memdesc.gpuaddr, - entry->memdesc.size, - entry->memdesc.flags); - - /* - * First kgsl_mem_entry_put is for the reference that we took in - * this function when calling kgsl_sharedmem_find_id, second one is - * to free the memory since this is a free ioctl - */ - kgsl_mem_entry_put(entry); - kgsl_mem_entry_put(entry); - return 0; + return _sharedmem_free_entry(entry); } static struct vm_area_struct *kgsl_get_vma_from_start_addr(unsigned int addr) @@ -3060,6 +3292,9 @@ kgsl_ioctl_sharedmem_flush_cache(struct kgsl_device_private *dev_priv, return ret; } +/* The largest allowable alignment for a GPU object is 32MB */ +#define KGSL_MAX_ALIGN (32 * SZ_1M) + /* * The common parts of kgsl_ioctl_gpumem_alloc and kgsl_ioctl_gpumem_alloc_id. */ @@ -3086,11 +3321,13 @@ _gpumem_alloc(struct kgsl_device_private *dev_priv, /* Cap the alignment bits to the highest number we can handle */ align = (flags & KGSL_MEMALIGN_MASK) >> KGSL_MEMALIGN_SHIFT; - if (align >= 32) { - KGSL_CORE_ERR("Alignment too big, restricting to 2^31\n"); + if (align >= ilog2(KGSL_MAX_ALIGN)) { + KGSL_CORE_ERR("Alignment too large; restricting to %dK\n", + KGSL_MAX_ALIGN >> 10); flags &= ~KGSL_MEMALIGN_MASK; - flags |= (31 << KGSL_MEMALIGN_SHIFT) & KGSL_MEMALIGN_MASK; + flags |= (ilog2(KGSL_MAX_ALIGN) << KGSL_MEMALIGN_SHIFT) & + KGSL_MEMALIGN_MASK; } entry = kgsl_mem_entry_create(); @@ -3377,78 +3614,65 @@ static long kgsl_ioctl_timestamp_event(struct kgsl_device_private *dev_priv, typedef long (*kgsl_ioctl_func_t)(struct kgsl_device_private *, unsigned int, void *); -#define KGSL_IOCTL_FUNC(_cmd, _func, _flags) \ +#define KGSL_IOCTL_FUNC(_cmd, _func) \ [_IOC_NR((_cmd))] = \ - { .cmd = (_cmd), .func = (_func), .flags = (_flags) } + { .cmd = (_cmd), .func = (_func) } -#define KGSL_IOCTL_LOCK BIT(0) static const struct { unsigned int cmd; kgsl_ioctl_func_t func; - unsigned int flags; } kgsl_ioctl_funcs[] = { KGSL_IOCTL_FUNC(IOCTL_KGSL_DEVICE_GETPROPERTY, - kgsl_ioctl_device_getproperty, - KGSL_IOCTL_LOCK), + kgsl_ioctl_device_getproperty), KGSL_IOCTL_FUNC(IOCTL_KGSL_DEVICE_WAITTIMESTAMP, - kgsl_ioctl_device_waittimestamp, - KGSL_IOCTL_LOCK), + kgsl_ioctl_device_waittimestamp), KGSL_IOCTL_FUNC(IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID, - kgsl_ioctl_device_waittimestamp_ctxtid, - KGSL_IOCTL_LOCK), + kgsl_ioctl_device_waittimestamp_ctxtid), KGSL_IOCTL_FUNC(IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS, - kgsl_ioctl_rb_issueibcmds, 0), + kgsl_ioctl_rb_issueibcmds), KGSL_IOCTL_FUNC(IOCTL_KGSL_SUBMIT_COMMANDS, - kgsl_ioctl_submit_commands, 0), + kgsl_ioctl_submit_commands), KGSL_IOCTL_FUNC(IOCTL_KGSL_CMDSTREAM_READTIMESTAMP, - kgsl_ioctl_cmdstream_readtimestamp, - KGSL_IOCTL_LOCK), + kgsl_ioctl_cmdstream_readtimestamp), KGSL_IOCTL_FUNC(IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID, - kgsl_ioctl_cmdstream_readtimestamp_ctxtid, - KGSL_IOCTL_LOCK), + kgsl_ioctl_cmdstream_readtimestamp_ctxtid), KGSL_IOCTL_FUNC(IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP, - kgsl_ioctl_cmdstream_freememontimestamp, - KGSL_IOCTL_LOCK), + kgsl_ioctl_cmdstream_freememontimestamp), KGSL_IOCTL_FUNC(IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID, - kgsl_ioctl_cmdstream_freememontimestamp_ctxtid, - KGSL_IOCTL_LOCK), + kgsl_ioctl_cmdstream_freememontimestamp_ctxtid), KGSL_IOCTL_FUNC(IOCTL_KGSL_DRAWCTXT_CREATE, - kgsl_ioctl_drawctxt_create, - KGSL_IOCTL_LOCK), + kgsl_ioctl_drawctxt_create), KGSL_IOCTL_FUNC(IOCTL_KGSL_DRAWCTXT_DESTROY, - kgsl_ioctl_drawctxt_destroy, - KGSL_IOCTL_LOCK), + kgsl_ioctl_drawctxt_destroy), KGSL_IOCTL_FUNC(IOCTL_KGSL_MAP_USER_MEM, - kgsl_ioctl_map_user_mem, 0), + kgsl_ioctl_map_user_mem), KGSL_IOCTL_FUNC(IOCTL_KGSL_SHAREDMEM_FROM_PMEM, - kgsl_ioctl_map_user_mem, 0), + kgsl_ioctl_map_user_mem), KGSL_IOCTL_FUNC(IOCTL_KGSL_SHAREDMEM_FREE, - kgsl_ioctl_sharedmem_free, 0), + kgsl_ioctl_sharedmem_free), KGSL_IOCTL_FUNC(IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE, - kgsl_ioctl_sharedmem_flush_cache, 0), + kgsl_ioctl_sharedmem_flush_cache), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_ALLOC, - kgsl_ioctl_gpumem_alloc, 0), + kgsl_ioctl_gpumem_alloc), KGSL_IOCTL_FUNC(IOCTL_KGSL_CFF_SYNCMEM, - kgsl_ioctl_cff_syncmem, 0), + kgsl_ioctl_cff_syncmem), KGSL_IOCTL_FUNC(IOCTL_KGSL_CFF_USER_EVENT, - kgsl_ioctl_cff_user_event, 0), + kgsl_ioctl_cff_user_event), KGSL_IOCTL_FUNC(IOCTL_KGSL_TIMESTAMP_EVENT, - kgsl_ioctl_timestamp_event, - KGSL_IOCTL_LOCK), + kgsl_ioctl_timestamp_event), KGSL_IOCTL_FUNC(IOCTL_KGSL_SETPROPERTY, - kgsl_ioctl_device_setproperty, - KGSL_IOCTL_LOCK), + kgsl_ioctl_device_setproperty), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_ALLOC_ID, - kgsl_ioctl_gpumem_alloc_id, 0), + kgsl_ioctl_gpumem_alloc_id), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_FREE_ID, - kgsl_ioctl_gpumem_free_id, 0), + kgsl_ioctl_gpumem_free_id), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_GET_INFO, - kgsl_ioctl_gpumem_get_info, 0), + kgsl_ioctl_gpumem_get_info), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_SYNC_CACHE, - kgsl_ioctl_gpumem_sync_cache, 0), + kgsl_ioctl_gpumem_sync_cache), KGSL_IOCTL_FUNC(IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK, - kgsl_ioctl_gpumem_sync_cache_bulk, 0), + kgsl_ioctl_gpumem_sync_cache_bulk), }; static long kgsl_ioctl(struct file *filep, unsigned int cmd, unsigned long arg) @@ -3456,7 +3680,7 @@ 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; kgsl_ioctl_func_t func; - int lock, ret; + int ret; char ustack[64]; void *uptr = NULL; @@ -3513,7 +3737,6 @@ static long kgsl_ioctl(struct file *filep, unsigned int cmd, unsigned long arg) } func = kgsl_ioctl_funcs[nr].func; - lock = kgsl_ioctl_funcs[nr].flags & KGSL_IOCTL_LOCK; } else { func = dev_priv->device->ftbl->ioctl; if (!func) { @@ -3522,17 +3745,10 @@ static long kgsl_ioctl(struct file *filep, unsigned int cmd, unsigned long arg) ret = -ENOIOCTLCMD; goto done; } - lock = 1; } - if (lock) - mutex_lock(&dev_priv->device->mutex); - ret = func(dev_priv, cmd, uptr); - if (lock) - mutex_unlock(&dev_priv->device->mutex); - /* * Still copy back on failure, but assume function took * all necessary precautions sanitizing the return values. @@ -3904,8 +4120,6 @@ struct kgsl_driver kgsl_driver = { .process_mutex = __MUTEX_INITIALIZER(kgsl_driver.process_mutex), .ptlock = __SPIN_LOCK_UNLOCKED(kgsl_driver.ptlock), .devlock = __MUTEX_INITIALIZER(kgsl_driver.devlock), - .memfree_hist_mutex = - __MUTEX_INITIALIZER(kgsl_driver.memfree_hist_mutex), /* * Full cache flushes are faster than line by line on at least * 8064 and 8974 once the region to be flushed is > 16mb. @@ -4253,7 +4467,7 @@ static void kgsl_core_exit(void) kgsl_driver.class = NULL; } - kgsl_memfree_hist_exit(); + kgsl_memfree_exit(); unregister_chrdev_region(kgsl_driver.major, KGSL_DEVICE_MAX); } @@ -4325,8 +4539,7 @@ static int __init kgsl_core_init(void) goto err; } - if (kgsl_memfree_hist_init()) - KGSL_CORE_ERR("failed to init memfree_hist"); + kgsl_memfree_init(); return 0; diff --git a/drivers/gpu/msm/kgsl.h b/drivers/gpu/msm/kgsl.h index de1254b82695..2f994c215fb2 100644 --- a/drivers/gpu/msm/kgsl.h +++ b/drivers/gpu/msm/kgsl.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2008-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2008-2014, 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 @@ -75,25 +75,8 @@ #define KGSL_STATS_ADD(_size, _stat, _max) \ do { _stat += (_size); if (_stat > _max) _max = _stat; } while (0) - -#define KGSL_MEMFREE_HIST_SIZE ((int)(PAGE_SIZE * 2)) - #define KGSL_MAX_NUMIBS 100000 -struct kgsl_memfree_hist_elem { - unsigned int pid; - unsigned int gpuaddr; - unsigned int size; - unsigned int flags; -}; - -struct kgsl_memfree_hist { - void *base_hist_rb; - unsigned int size; - struct kgsl_memfree_hist_elem *wptr; -}; - - struct kgsl_device; struct kgsl_context; @@ -122,9 +105,6 @@ struct kgsl_driver { void *ptpool; - struct mutex memfree_hist_mutex; - struct kgsl_memfree_hist memfree_hist; - struct { unsigned int vmalloc; unsigned int vmalloc_max; @@ -150,7 +130,8 @@ struct kgsl_memdesc_ops { int (*vmfault)(struct kgsl_memdesc *, struct vm_area_struct *, struct vm_fault *); void (*free)(struct kgsl_memdesc *memdesc); - int (*map_kernel_mem)(struct kgsl_memdesc *); + int (*map_kernel)(struct kgsl_memdesc *); + void (*unmap_kernel)(struct kgsl_memdesc *); }; /* Internal definitions for memdesc->priv */ @@ -166,6 +147,7 @@ struct kgsl_memdesc_ops { struct kgsl_memdesc { struct kgsl_pagetable *pagetable; void *hostptr; /* kernel virtual address */ + unsigned int hostptr_count; /* number of threads using hostptr */ unsigned long useraddr; /* userspace address */ unsigned int gpuaddr; phys_addr_t physaddr; @@ -283,13 +265,17 @@ static inline int kgsl_gpuaddr_in_memdesc(const struct kgsl_memdesc *memdesc, static inline void *kgsl_memdesc_map(struct kgsl_memdesc *memdesc) { - if (memdesc->hostptr == NULL && memdesc->ops && - memdesc->ops->map_kernel_mem) - memdesc->ops->map_kernel_mem(memdesc); + if (memdesc->ops && memdesc->ops->map_kernel) + memdesc->ops->map_kernel(memdesc); return memdesc->hostptr; } +static inline void kgsl_memdesc_unmap(struct kgsl_memdesc *memdesc) +{ + if (memdesc->ops && memdesc->ops->unmap_kernel) + memdesc->ops->unmap_kernel(memdesc); +} static inline uint8_t *kgsl_gpuaddr_to_vaddr(struct kgsl_memdesc *memdesc, unsigned int gpuaddr) { diff --git a/drivers/gpu/msm/kgsl_cffdump.c b/drivers/gpu/msm/kgsl_cffdump.c index 43bcc30871fc..171435ae5d28 100644 --- a/drivers/gpu/msm/kgsl_cffdump.c +++ b/drivers/gpu/msm/kgsl_cffdump.c @@ -631,20 +631,20 @@ int kgsl_cff_dump_enable_set(void *data, u64 val) } } if (!device->cff_dump_enable) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); device->cff_dump_enable = 1; ret = kgsl_open_device(device); if (!ret) ret = kgsl_active_count_get(device); if (ret) device->cff_dump_enable = 0; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } } else if (device->cff_dump_enable && !val) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); ret = kgsl_close_device(device); device->cff_dump_enable = 0; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } done: mutex_unlock(&kgsl_driver.devlock); diff --git a/drivers/gpu/msm/kgsl_debugfs.c b/drivers/gpu/msm/kgsl_debugfs.c index 318b10de7319..634577939753 100644 --- a/drivers/gpu/msm/kgsl_debugfs.c +++ b/drivers/gpu/msm/kgsl_debugfs.c @@ -30,9 +30,9 @@ static int pm_dump_set(void *data, u64 val) struct kgsl_device *device = data; if (val) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_postmortem_dump(device, 1); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } return 0; @@ -123,52 +123,6 @@ KGSL_DEBUGFS_LOG(ctxt_log); KGSL_DEBUGFS_LOG(mem_log); KGSL_DEBUGFS_LOG(pwr_log); -static int memfree_hist_print(struct seq_file *s, void *unused) -{ - void *base = kgsl_driver.memfree_hist.base_hist_rb; - - struct kgsl_memfree_hist_elem *wptr = kgsl_driver.memfree_hist.wptr; - struct kgsl_memfree_hist_elem *p; - char str[16]; - - seq_printf(s, "%8s %8s %8s %11s\n", - "pid", "gpuaddr", "size", "flags"); - - mutex_lock(&kgsl_driver.memfree_hist_mutex); - p = wptr; - for (;;) { - kgsl_get_memory_usage(str, sizeof(str), p->flags); - /* - * if the ring buffer is not filled up yet - * all its empty elems have size==0 - * just skip them ... - */ - if (p->size) - seq_printf(s, "%8d %08x %8d %11s\n", - p->pid, p->gpuaddr, p->size, str); - p++; - if ((void *)p >= base + kgsl_driver.memfree_hist.size) - p = (struct kgsl_memfree_hist_elem *) base; - - if (p == kgsl_driver.memfree_hist.wptr) - break; - } - mutex_unlock(&kgsl_driver.memfree_hist_mutex); - return 0; -} - -static int memfree_hist_open(struct inode *inode, struct file *file) -{ - return single_open(file, memfree_hist_print, inode->i_private); -} - -static const struct file_operations memfree_hist_fops = { - .open = memfree_hist_open, - .read = seq_read, - .llseek = seq_lseek, - .release = single_release, -}; - void kgsl_device_debugfs_init(struct kgsl_device *device) { if (kgsl_debugfs_dir && !IS_ERR(kgsl_debugfs_dir)) @@ -188,8 +142,6 @@ void kgsl_device_debugfs_init(struct kgsl_device *device) &mem_log_fops); debugfs_create_file("log_level_pwr", 0644, device->d_debugfs, device, &pwr_log_fops); - debugfs_create_file("memfree_history", 0444, device->d_debugfs, device, - &memfree_hist_fops); /* Create postmortem dump control files */ @@ -247,7 +199,7 @@ static char get_cacheflag(const struct kgsl_memdesc *m) static void print_mem_entry(struct seq_file *s, struct kgsl_mem_entry *entry) { - char flags[6]; + char flags[7]; char usage[16]; struct kgsl_memdesc *m = &entry->memdesc; @@ -256,12 +208,15 @@ static void print_mem_entry(struct seq_file *s, struct kgsl_mem_entry *entry) flags[2] = get_alignflag(m); flags[3] = get_cacheflag(m); flags[4] = kgsl_memdesc_use_cpu_map(m) ? 'p' : '-'; - flags[5] = '\0'; + flags[5] = (m->useraddr) ? 'Y' : 'N'; + flags[6] = '\0'; kgsl_get_memory_usage(usage, sizeof(usage), m->flags); - seq_printf(s, "%08x %08lx %8d %5d %5s %10s %16s %5d\n", - m->gpuaddr, m->useraddr, m->size, entry->id, flags, + seq_printf(s, "%pK %pK %8zd %5d %6s %10s %16s %5d\n", + (unsigned long *) m->gpuaddr, + (unsigned long *) m->useraddr, + m->size, entry->id, flags, memtype_str(entry->memtype), usage, m->sglen); } @@ -272,7 +227,7 @@ static int process_mem_print(struct seq_file *s, void *unused) struct kgsl_process_private *private = s->private; int next = 0; - seq_printf(s, "%8s %8s %8s %5s %5s %10s %16s %5s\n", + seq_printf(s, "%8s %8s %8s %5s %6s %10s %16s %5s\n", "gpuaddr", "useraddr", "size", "id", "flags", "type", "usage", "sglen"); @@ -301,14 +256,38 @@ static int process_mem_print(struct seq_file *s, void *unused) static int process_mem_open(struct inode *inode, struct file *file) { - return single_open(file, process_mem_print, inode->i_private); + int ret; + pid_t pid = (pid_t) (unsigned long) inode->i_private; + struct kgsl_process_private *private = NULL; + + private = kgsl_process_private_find(pid); + + if (!private) + return -ENODEV; + + ret = single_open(file, process_mem_print, private); + if (ret) + kgsl_process_private_put(private); + + return ret; +} + +static int process_mem_release(struct inode *inode, struct file *file) +{ + struct kgsl_process_private *private = + ((struct seq_file *)file->private_data)->private; + + if (private) + kgsl_process_private_put(private); + + return single_release(inode, file); } static const struct file_operations process_mem_fops = { .open = process_mem_open, .read = seq_read, .llseek = seq_lseek, - .release = single_release, + .release = process_mem_release, }; @@ -347,8 +326,8 @@ kgsl_process_init_debugfs(struct kgsl_process_private *private) * So if debugfs is disabled in kernel, return as * success. */ - dentry = debugfs_create_file("mem", 0400, private->debug_root, private, - &process_mem_fops); + dentry = debugfs_create_file("mem", 0444, private->debug_root, + (void *) ((unsigned long) private->pid), &process_mem_fops); if (IS_ERR(dentry)) { ret = PTR_ERR(dentry); diff --git a/drivers/gpu/msm/kgsl_device.h b/drivers/gpu/msm/kgsl_device.h index 5f63cb69191b..780f714216db 100644 --- a/drivers/gpu/msm/kgsl_device.h +++ b/drivers/gpu/msm/kgsl_device.h @@ -127,6 +127,8 @@ struct kgsl_functable { uint32_t *flags); int (*drawctxt_detach) (struct kgsl_context *context); void (*drawctxt_destroy) (struct kgsl_context *context); + void (*drawctxt_dump) (struct kgsl_device *device, + struct kgsl_context *context); long (*ioctl) (struct kgsl_device_private *dev_priv, unsigned int cmd, void *data); int (*setproperty) (struct kgsl_device_private *dev_priv, @@ -174,10 +176,9 @@ struct kgsl_event { * @ibcount: Number of IBs in the command list * @ibdesc: Pointer to the list of IBs * @expires: Point in time when the cmdbatch is considered to be hung - * @invalid: non-zero if the dispatcher determines the command and the owning - * context should be invalidated * @refcount: kref structure to maintain the reference count * @synclist: List of context/timestamp tuples to wait for before issuing + * @timer: a timer used to track possible sync timeouts for this cmdbatch * * This struture defines an atomic batch of command buffers issued from * userspace. @@ -194,9 +195,9 @@ struct kgsl_cmdbatch { uint32_t ibcount; struct kgsl_ibdesc *ibdesc; unsigned long expires; - int invalid; struct kref refcount; struct list_head synclist; + struct timer_list timer; }; /** @@ -204,12 +205,15 @@ struct kgsl_cmdbatch { * @CMDBATCH_FLAG_SKIP - skip the entire command batch * @CMDBATCH_FLAG_FORCE_PREAMBLE - Force the preamble on for the cmdbatch * @CMDBATCH_FLAG_WFI - Force wait-for-idle for the submission + * @CMDBATCH_FLAG_FENCE_LOG - Set if the cmdbatch is dumping fence logs via the + * cmdbatch timer - this is used to avoid recursion */ enum kgsl_cmdbatch_priv { CMDBATCH_FLAG_SKIP = 0, CMDBATCH_FLAG_FORCE_PREAMBLE, CMDBATCH_FLAG_WFI, + CMDBATCH_FLAG_FENCE_LOG, }; struct kgsl_device { @@ -252,6 +256,7 @@ struct kgsl_device { int open_count; struct mutex mutex; + atomic64_t mutex_owner; uint32_t state; uint32_t requested_state; @@ -350,6 +355,8 @@ struct kgsl_process_private; * is set. * @flags: flags from userspace controlling the behavior of this context * @pwr_constraint: power constraint from userspace for this context + * @fault_count: number of times gpu hanged in last _context_throttle_time ms + * @fault_time: time of the first gpu hang in last _context_throttle_time ms */ struct kgsl_context { struct kref refcount; @@ -368,6 +375,8 @@ struct kgsl_context { unsigned int pagefault_ts; unsigned int flags; struct kgsl_pwr_constraint pwr_constraint; + unsigned int fault_count; + unsigned long fault_time; }; /** @@ -544,6 +553,11 @@ int kgsl_context_init(struct kgsl_device_private *, struct kgsl_context *context); int kgsl_context_detach(struct kgsl_context *context); +void kgsl_context_dump(struct kgsl_context *context); + +int kgsl_memfree_find_entry(pid_t pid, unsigned long *gpuaddr, + unsigned long *size, unsigned int *flags); + /** * kgsl_context_put() - Release context reference count * @context: Pointer to the KGSL context to be released @@ -687,11 +701,34 @@ static inline void kgsl_cancel_events_timestamp(struct kgsl_device *device, { kgsl_signal_event(device, context, timestamp, KGSL_EVENT_CANCELLED); } +void kgsl_dump_syncpoints(struct kgsl_device *device, + struct kgsl_cmdbatch *cmdbatch); void kgsl_cmdbatch_destroy(struct kgsl_cmdbatch *cmdbatch); void kgsl_cmdbatch_destroy_object(struct kref *kref); +/** +* kgsl_process_private_get() - increment the refcount on a kgsl_process_private +* struct +* @process: Pointer to the KGSL process_private +* +* Returns 0 if the structure is invalid and a reference count could not be +* obtained, nonzero otherwise. +*/ +static inline int kgsl_process_private_get(struct kgsl_process_private *process) +{ + int ret = 0; + if (process != NULL) + ret = kref_get_unless_zero(&process->refcount); + return ret; +} + +void kgsl_process_private_put(struct kgsl_process_private *private); + + +struct kgsl_process_private *kgsl_process_private_find(pid_t pid); + /** * kgsl_cmdbatch_put() - Decrement the refcount for a command batch object * @cmdbatch: Pointer to the command batch object @@ -702,27 +739,6 @@ static inline void kgsl_cmdbatch_put(struct kgsl_cmdbatch *cmdbatch) kref_put(&cmdbatch->refcount, kgsl_cmdbatch_destroy_object); } -/** - * kgsl_cmdbatch_sync_pending() - return true if the cmdbatch is waiting - * @cmdbatch: Pointer to the command batch object to check - * - * Return non-zero if the specified command batch is still waiting for sync - * point dependencies to be satisfied - */ -static inline int kgsl_cmdbatch_sync_pending(struct kgsl_cmdbatch *cmdbatch) -{ - int ret; - - if (cmdbatch == NULL) - return 0; - - spin_lock(&cmdbatch->lock); - ret = list_empty(&cmdbatch->synclist) ? 0 : 1; - spin_unlock(&cmdbatch->lock); - - return ret; -} - /** * kgsl_sysfs_store() - parse a string from a sysfs store function * @buf: Incoming string to parse @@ -742,4 +758,35 @@ static inline int kgsl_sysfs_store(const char *buf, unsigned int *ptr) return 0; } + +/** + * kgsl_mutex_lock() -- try to acquire the mutex if current thread does not + * already own it + * @mutex: mutex to lock + * @owner: current mutex owner + */ + +static inline int kgsl_mutex_lock(struct mutex *mutex, atomic64_t *owner) +{ + + if (atomic64_read(owner) != (long)current) { + mutex_lock(mutex); + atomic64_set(owner, (long)current); + /* Barrier to make sure owner is updated */ + smp_wmb(); + return 0; + } + return 1; +} + +/** + * kgsl_mutex_unlock() -- Clear the owner and unlock the mutex + * @mutex: mutex to unlock + * @owner: current mutex owner + */ +static inline void kgsl_mutex_unlock(struct mutex *mutex, atomic64_t *owner) +{ + atomic64_set(owner, 0); + mutex_unlock(mutex); +} #endif /* __KGSL_DEVICE_H */ diff --git a/drivers/gpu/msm/kgsl_events.c b/drivers/gpu/msm/kgsl_events.c index ccd13d5ec7e5..6cea80f44f6c 100644 --- a/drivers/gpu/msm/kgsl_events.c +++ b/drivers/gpu/msm/kgsl_events.c @@ -409,7 +409,7 @@ void kgsl_process_events(struct work_struct *work) struct kgsl_context *context, *tmp; uint32_t timestamp; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); timestamp = kgsl_readtimestamp(device, NULL, KGSL_TIMESTAMP_RETIRED); _retire_events(device, &device->events, timestamp); @@ -436,6 +436,6 @@ void kgsl_process_events(struct work_struct *work) } } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } EXPORT_SYMBOL(kgsl_process_events); diff --git a/drivers/gpu/msm/kgsl_iommu.c b/drivers/gpu/msm/kgsl_iommu.c old mode 100755 new mode 100644 index efcc2250601c..a5696e5fe57b --- a/drivers/gpu/msm/kgsl_iommu.c +++ b/drivers/gpu/msm/kgsl_iommu.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2014, 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 @@ -281,39 +281,20 @@ static void _print_entry(struct kgsl_device *device, struct _mem_entry *entry) static void _check_if_freed(struct kgsl_iommu_device *iommu_dev, unsigned long addr, unsigned int pid) { - void *base = kgsl_driver.memfree_hist.base_hist_rb; - struct kgsl_memfree_hist_elem *wptr; - struct kgsl_memfree_hist_elem *p; + unsigned long gpuaddr = addr; + unsigned long size = 0; + unsigned int flags = 0; + char name[32]; memset(name, 0, sizeof(name)); - mutex_lock(&kgsl_driver.memfree_hist_mutex); - wptr = kgsl_driver.memfree_hist.wptr; - p = wptr; - for (;;) { - if (p->size && p->pid == pid) - if (addr >= p->gpuaddr && - addr < (p->gpuaddr + p->size)) { - - kgsl_get_memory_usage(name, sizeof(name) - 1, - p->flags); - KGSL_LOG_DUMP(iommu_dev->kgsldev, - "---- premature free ----\n"); - KGSL_LOG_DUMP(iommu_dev->kgsldev, - "[%8.8X-%8.8X] (%s) was already freed by pid %d\n", - p->gpuaddr, - p->gpuaddr + p->size, - name, - p->pid); - } - p++; - if ((void *)p >= base + kgsl_driver.memfree_hist.size) - p = (struct kgsl_memfree_hist_elem *) base; - - if (p == kgsl_driver.memfree_hist.wptr) - break; + if (kgsl_memfree_find_entry(pid, &gpuaddr, &size, &flags)) { + kgsl_get_memory_usage(name, sizeof(name) - 1, flags); + KGSL_LOG_DUMP(iommu_dev->kgsldev, "---- premature free ----\n"); + KGSL_LOG_DUMP(iommu_dev->kgsldev, + "[%8.8lX-%8.8lX] (%s) was already freed by pid %d\n", + gpuaddr, gpuaddr + size, name, pid); } - mutex_unlock(&kgsl_driver.memfree_hist_mutex); } static int kgsl_iommu_fault_handler(struct iommu_domain *domain, @@ -1763,16 +1744,42 @@ static int kgsl_iommu_start(struct kgsl_mmu *mmu) return status; } +static void kgsl_iommu_flush_tlb_pt_current(struct kgsl_pagetable *pt) +{ + int lock_taken = 0; + struct kgsl_device *device = pt->mmu->device; + struct kgsl_iommu *iommu = pt->mmu->priv; + + /* + * Check to see if the current thread already holds the device mutex. + * If it does not, then take the device mutex which is required for + * flushing the tlb + */ + if (!kgsl_mutex_lock(&device->mutex, &device->mutex_owner)) + lock_taken = 1; + + /* + * Flush the tlb only if the iommu device is attached and the pagetable + * hasn't been switched yet + */ + if (kgsl_mmu_is_perprocess(pt->mmu) && + iommu->iommu_units[0].dev[KGSL_IOMMU_CONTEXT_USER].attached && + kgsl_iommu_pt_equal(pt->mmu, pt, + kgsl_iommu_get_current_ptbase(pt->mmu))) + kgsl_iommu_default_setstate(pt->mmu, KGSL_MMUFLAGS_TLBFLUSH); + + if (lock_taken) + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); +} + static int kgsl_iommu_unmap(struct kgsl_pagetable *pt, struct kgsl_memdesc *memdesc, unsigned int *tlb_flags) { - int ret = 0, lock_taken = 0; + int ret = 0; unsigned int range = memdesc->size; struct kgsl_iommu_pt *iommu_pt = pt->priv; - struct kgsl_device *device = pt->mmu->device; - struct kgsl_iommu *iommu = pt->mmu->priv; /* All GPU addresses as assigned are page aligned, but some functions purturb the gpuaddr with an offset, so apply the @@ -1794,29 +1801,7 @@ kgsl_iommu_unmap(struct kgsl_pagetable *pt, return ret; } - /* - * Check to see if the current thread already holds the device mutex. - * If it does not, then take the device mutex which is required for - * flushing the tlb - */ - if (!mutex_is_locked(&device->mutex) || - device->mutex.owner != current) { - mutex_lock(&device->mutex); - lock_taken = 1; - } - - /* - * Flush the tlb only if the iommu device is attached and the pagetable - * hasn't been switched yet - */ - if (kgsl_mmu_is_perprocess(pt->mmu) && - iommu->iommu_units[0].dev[KGSL_IOMMU_CONTEXT_USER].attached && - kgsl_iommu_pt_equal(pt->mmu, pt, - kgsl_iommu_get_current_ptbase(pt->mmu))) - kgsl_iommu_default_setstate(pt->mmu, KGSL_MMUFLAGS_TLBFLUSH); - - if (lock_taken) - mutex_unlock(&device->mutex); + kgsl_iommu_flush_tlb_pt_current(pt); return ret; } @@ -1858,6 +1843,23 @@ kgsl_iommu_map(struct kgsl_pagetable *pt, size); } } + + /* + * IOMMU V1 BFBs pre-fetch data beyond what is being used by the core. + * This can include both allocated pages and un-allocated pages. + * If an un-allocated page is cached, and later used (if it has been + * newly dynamically allocated by SW) the SMMU HW should automatically + * re-fetch the pages from memory (rather than using the cached + * un-allocated page). This logic is known as the re-fetch logic. + * In current chips we suspect this re-fetch logic is broken, + * it can result in bad translations which can either cause downstream + * bus errors, or upstream cores being hung (because of garbage data + * being read) -> causing TLB sync stuck issues. As a result SW must + * implement the invalidate+map. + */ + if (!msm_soc_version_supports_iommu_v0()) + kgsl_iommu_flush_tlb_pt_current(pt); + return ret; } diff --git a/drivers/gpu/msm/kgsl_log.h b/drivers/gpu/msm/kgsl_log.h index f90627e8dbe5..04ca7a541abe 100644 --- a/drivers/gpu/msm/kgsl_log.h +++ b/drivers/gpu/msm/kgsl_log.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2002,2008-2011,2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2002,2008-2011,2013-2014, 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 @@ -56,6 +56,26 @@ } \ }) +#define dev_crit_ratelimited(dev, fmt, ...) \ + dev_level_ratelimited(dev_crit, dev, fmt, ##__VA_ARGS__) + +#define dev_level_ratelimited(dev_level, dev, fmt, ...) \ +do { \ + static DEFINE_RATELIMIT_STATE(_rs, \ + DEFAULT_RATELIMIT_INTERVAL, \ + DEFAULT_RATELIMIT_BURST); \ + if (__ratelimit(&_rs)) \ + dev_level(dev, fmt, ##__VA_ARGS__); \ +} while (0) + +#define KGSL_LOG_CRIT_RATELIMITED(dev, lvl, fmt, args...) \ + do { \ + if ((lvl) >= 2) \ + dev_crit_ratelimited(dev, "|%s| " fmt, \ + __func__, ##args);\ + } while (0) + + #define KGSL_DRV_INFO(_dev, fmt, args...) \ KGSL_LOG_INFO(_dev->dev, _dev->drv_log, fmt, ##args) #define KGSL_DRV_WARN(_dev, fmt, args...) \ @@ -64,6 +84,8 @@ KGSL_LOG_WARN(_dev->dev, _dev->drv_log, fmt, ##args) KGSL_LOG_ERR(_dev->dev, _dev->drv_log, fmt, ##args) #define KGSL_DRV_CRIT(_dev, fmt, args...) \ KGSL_LOG_CRIT(_dev->dev, _dev->drv_log, fmt, ##args) +#define KGSL_DRV_CRIT_RATELIMIT(_dev, fmt, args...) \ +KGSL_LOG_CRIT_RATELIMITED(_dev->dev, _dev->drv_log, fmt, ##args) #define KGSL_CMD_INFO(_dev, fmt, args...) \ KGSL_LOG_INFO(_dev->dev, _dev->cmd_log, fmt, ##args) diff --git a/drivers/gpu/msm/kgsl_pwrctrl.c b/drivers/gpu/msm/kgsl_pwrctrl.c index 9353b2e380e2..f9402bd2a986 100644 --- a/drivers/gpu/msm/kgsl_pwrctrl.c +++ b/drivers/gpu/msm/kgsl_pwrctrl.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2010-2014, 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 @@ -78,7 +78,7 @@ struct clk_pair clks[KGSL_MAX_CLKS] = { }; static void kgsl_pwrctrl_clk(struct kgsl_device *device, int state, - int requested_state); + int requested_state); static void kgsl_pwrctrl_axi(struct kgsl_device *device, int state); static void kgsl_pwrctrl_pwrrail(struct kgsl_device *device, int state); @@ -233,7 +233,7 @@ static int kgsl_pwrctrl_thermal_pwrlevel_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (level > pwr->num_pwrlevels - 2) level = pwr->num_pwrlevels - 2; @@ -249,7 +249,7 @@ static int kgsl_pwrctrl_thermal_pwrlevel_store(struct device *dev, */ if (pwr->thermal_pwrlevel > pwr->active_pwrlevel) kgsl_pwrctrl_pwrlevel_change(device, pwr->thermal_pwrlevel); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -285,7 +285,7 @@ static int kgsl_pwrctrl_max_pwrlevel_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* You can't set a maximum power level lower than the minimum */ if (level > pwr->min_pwrlevel) @@ -302,7 +302,7 @@ static int kgsl_pwrctrl_max_pwrlevel_store(struct device *dev, */ if (max_level > pwr->active_pwrlevel) kgsl_pwrctrl_pwrlevel_change(device, max_level); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -337,7 +337,7 @@ static int kgsl_pwrctrl_min_pwrlevel_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (level > pwr->num_pwrlevels - 2) level = pwr->num_pwrlevels - 2; @@ -356,7 +356,7 @@ static int kgsl_pwrctrl_min_pwrlevel_store(struct device *dev, if (min_level < pwr->active_pwrlevel) kgsl_pwrctrl_pwrlevel_change(device, min_level); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -418,7 +418,7 @@ static int kgsl_pwrctrl_max_gpuclk_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); level = _get_nearest_pwrlevel(pwr, val); if (level < 0) goto done; @@ -434,7 +434,7 @@ static int kgsl_pwrctrl_max_gpuclk_store(struct device *dev, kgsl_pwrctrl_pwrlevel_change(device, pwr->thermal_pwrlevel); done: - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -470,12 +470,12 @@ static int kgsl_pwrctrl_gpuclk_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); level = _get_nearest_pwrlevel(pwr, val); if (level >= 0) kgsl_pwrctrl_pwrlevel_change(device, level); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -509,13 +509,13 @@ static int kgsl_pwrctrl_idle_timer_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* Let the timeout be requested in ms, but convert to jiffies. */ val /= div; pwr->interval_timeout = val; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -548,9 +548,9 @@ static int kgsl_pwrctrl_pmqos_latency_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); device->pwrctrl.pm_qos_latency = val; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -692,9 +692,9 @@ static int __force_on_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); __force_on(device, flag, val); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -767,9 +767,9 @@ static ssize_t kgsl_pwrctrl_bus_split_store(struct device *dev, if (ret) return ret; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); device->pwrctrl.bus_control = val ? true : false; - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return count; } @@ -883,7 +883,7 @@ static void kgsl_pwrctrl_busy_time(struct kgsl_device *device, bool on_time) } } -static void kgsl_pwrctrl_clk(struct kgsl_device *device, int state, +void kgsl_pwrctrl_clk(struct kgsl_device *device, int state, int requested_state) { struct kgsl_pwrctrl *pwr = &device->pwrctrl; @@ -1243,7 +1243,7 @@ void kgsl_idle_check(struct work_struct *work) if (device == NULL) return; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_pwrscale_update(device); @@ -1267,10 +1267,10 @@ void kgsl_idle_check(struct work_struct *work) if (!device->pwrctrl.irq_last) break; kgsl_pwrctrl_request_state(device, requested_state); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); udelay(delay); delay *= 2; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); } @@ -1294,7 +1294,7 @@ void kgsl_idle_check(struct work_struct *work) } } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } EXPORT_SYMBOL(kgsl_idle_check); @@ -1429,6 +1429,7 @@ _slumber(struct kgsl_device *device) del_timer_sync(&device->idle_timer); /* make sure power is on to stop the device*/ kgsl_pwrctrl_enable(device); + kgsl_pwrctrl_irq(device, KGSL_PWRFLAGS_ON); device->ftbl->suspend_context(device); device->ftbl->stop(device); _sleep_accounting(device); @@ -1628,9 +1629,9 @@ int kgsl_active_count_get(struct kgsl_device *device) if ((atomic_read(&device->active_cnt) == 0) && (device->state != KGSL_STATE_ACTIVE)) { - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); wait_for_completion(&device->hwaccess_gate); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); ret = kgsl_pwrctrl_wake(device, 1); } @@ -1715,16 +1716,21 @@ static int _check_active_count(struct kgsl_device *device, int count) int kgsl_active_count_wait(struct kgsl_device *device, int count) { int result = 0; + long wait_jiffies = HZ; BUG_ON(!mutex_is_locked(&device->mutex)); - if (atomic_read(&device->active_cnt) > count) { - int ret; - mutex_unlock(&device->mutex); + while (atomic_read(&device->active_cnt) > count) { + long ret; + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); ret = wait_event_timeout(device->active_cnt_wq, - _check_active_count(device, count), HZ); - mutex_lock(&device->mutex); + _check_active_count(device, count), wait_jiffies); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); result = ret == 0 ? -ETIMEDOUT : 0; + if (!result) + wait_jiffies = ret; + else + break; } return result; diff --git a/drivers/gpu/msm/kgsl_pwrscale.c b/drivers/gpu/msm/kgsl_pwrscale.c index dc313ba4d3e8..5f66d11be025 100644 --- a/drivers/gpu/msm/kgsl_pwrscale.c +++ b/drivers/gpu/msm/kgsl_pwrscale.c @@ -195,7 +195,7 @@ int kgsl_devfreq_target(struct device *dev, unsigned long *freq, u32 flags) pwr = &device->pwrctrl; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); cur_freq = kgsl_pwrctrl_active_freq(pwr); level = pwr->active_pwrlevel; @@ -245,7 +245,7 @@ int kgsl_devfreq_target(struct device *dev, unsigned long *freq, u32 flags) *freq = kgsl_pwrctrl_active_freq(pwr); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } EXPORT_SYMBOL(kgsl_devfreq_target); @@ -272,7 +272,7 @@ int kgsl_devfreq_get_dev_status(struct device *dev, pwrscale = &device->pwrscale; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); /* make sure we don't turn on clocks just to read stats */ if (device->state == KGSL_STATE_ACTIVE) { struct kgsl_power_stats extra; @@ -300,7 +300,7 @@ int kgsl_devfreq_get_dev_status(struct device *dev, trace_kgsl_pwrstats(device, stat->total_time, &pwrscale->accum_stats); memset(&pwrscale->accum_stats, 0, sizeof(pwrscale->accum_stats)); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } @@ -323,9 +323,9 @@ int kgsl_devfreq_get_cur_freq(struct device *dev, unsigned long *freq) if (freq == NULL) return -EINVAL; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); *freq = kgsl_pwrctrl_active_freq(&device->pwrctrl); - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return 0; } diff --git a/drivers/gpu/msm/kgsl_sharedmem.c b/drivers/gpu/msm/kgsl_sharedmem.c index 821b542b1c1c..c707bc64d6ca 100644 --- a/drivers/gpu/msm/kgsl_sharedmem.c +++ b/drivers/gpu/msm/kgsl_sharedmem.c @@ -389,7 +389,7 @@ static int kgsl_page_alloc_vmfault(struct kgsl_memdesc *memdesc, static int kgsl_page_alloc_vmflags(struct kgsl_memdesc *memdesc) { - return VM_RESERVED | VM_DONTEXPAND; + return VM_RESERVED | VM_DONTEXPAND | VM_DONTCOPY; } static void kgsl_page_alloc_free(struct kgsl_memdesc *memdesc) @@ -411,7 +411,28 @@ static void kgsl_page_alloc_free(struct kgsl_memdesc *memdesc) static int kgsl_contiguous_vmflags(struct kgsl_memdesc *memdesc) { - return VM_RESERVED | VM_IO | VM_PFNMAP | VM_DONTEXPAND; + return VM_RESERVED | VM_IO | VM_PFNMAP | VM_DONTEXPAND | VM_DONTCOPY; +} + +/* + * kgsl_page_alloc_unmap_kernel() - Unmap the memory in memdesc + * + * @memdesc: The memory descriptor which contains information about the memory + * + * Unmaps the memory mapped into kernel address space + */ +static void kgsl_page_alloc_unmap_kernel(struct kgsl_memdesc *memdesc) +{ + if (!memdesc->hostptr) { + BUG_ON(memdesc->hostptr_count); + return; + } + memdesc->hostptr_count--; + if (memdesc->hostptr_count) + return; + vunmap(memdesc->hostptr); + kgsl_driver.stats.vmalloc -= memdesc->size; + memdesc->hostptr = NULL; } /* @@ -482,6 +503,7 @@ static int kgsl_contiguous_vmfault(struct kgsl_memdesc *memdesc, return VM_FAULT_NOPAGE; } + static void kgsl_coherent_free(struct kgsl_memdesc *memdesc) { kgsl_driver.stats.coherent -= memdesc->size; @@ -503,7 +525,8 @@ struct kgsl_memdesc_ops kgsl_page_alloc_ops = { .free = kgsl_page_alloc_free, .vmflags = kgsl_page_alloc_vmflags, .vmfault = kgsl_page_alloc_vmfault, - .map_kernel_mem = kgsl_page_alloc_map_kernel, + .map_kernel = kgsl_page_alloc_map_kernel, + .unmap_kernel = kgsl_page_alloc_unmap_kernel, }; EXPORT_SYMBOL(kgsl_page_alloc_ops); @@ -564,8 +587,12 @@ _kgsl_sharedmem_page_alloc(struct kgsl_memdesc *memdesc, page_size = (align >= ilog2(SZ_64K) && size >= SZ_64K) ? SZ_64K : PAGE_SIZE; - /* update align flags for what we actually use */ - if (page_size != PAGE_SIZE) + /* + * The alignment cannot be less than the intended page size - it can be + * larger however to accomodate hardware quirks + */ + + if (ilog2(align) < page_size) kgsl_memdesc_set_align(memdesc, ilog2(page_size)); /* diff --git a/drivers/gpu/msm/kgsl_snapshot.c b/drivers/gpu/msm/kgsl_snapshot.c index 333089a80755..6dba0bba4d9d 100644 --- a/drivers/gpu/msm/kgsl_snapshot.c +++ b/drivers/gpu/msm/kgsl_snapshot.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -304,6 +304,8 @@ static void kgsl_snapshot_put_object(struct kgsl_device *device, list_del(&obj->node); obj->entry->memdesc.priv &= ~KGSL_MEMDESC_FROZEN; + + kgsl_memdesc_unmap(&obj->entry->memdesc); kgsl_mem_entry_put(obj->entry); kfree(obj); @@ -418,7 +420,7 @@ int kgsl_snapshot_get_object(struct kgsl_device *device, phys_addr_t ptbase, if (obj == NULL) { KGSL_DRV_ERR(device, "Unable to allocate memory\n"); - goto err_put; + goto err_unmap; } obj->type = type; @@ -444,6 +446,9 @@ int kgsl_snapshot_get_object(struct kgsl_device *device, phys_addr_t ptbase, entry->memdesc.priv |= KGSL_MEMDESC_FROZEN; return ret; + +err_unmap: + kgsl_memdesc_unmap(&entry->memdesc); err_put: kgsl_mem_entry_put(entry); return ret; @@ -660,7 +665,7 @@ static ssize_t snapshot_show(struct file *filep, struct kobject *kobj, return 0; /* Get the mutex to keep things from changing while we are dumping */ - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); obj_itr_init(&itr, buf, off, count); @@ -699,7 +704,7 @@ static ssize_t snapshot_show(struct file *filep, struct kobject *kobj, } done: - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return itr.write; } @@ -731,12 +736,12 @@ static ssize_t trigger_store(struct kgsl_device *device, const char *buf, size_t count) { if (device && count > 0) { - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); if (!kgsl_active_count_get(device)) { kgsl_device_snapshot(device, 0); kgsl_active_count_put(device); } - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); } return count; diff --git a/drivers/gpu/msm/kgsl_sync.c b/drivers/gpu/msm/kgsl_sync.c index dc3ad21b5a38..9b277227b03d 100644 --- a/drivers/gpu/msm/kgsl_sync.c +++ b/drivers/gpu/msm/kgsl_sync.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -22,12 +22,13 @@ #include "kgsl_sync.h" struct sync_pt *kgsl_sync_pt_create(struct sync_timeline *timeline, - unsigned int timestamp) + struct kgsl_context *context, unsigned int timestamp) { struct sync_pt *pt; pt = sync_pt_create(timeline, (int) sizeof(struct kgsl_sync_pt)); if (pt) { struct kgsl_sync_pt *kpt = (struct kgsl_sync_pt *) pt; + kpt->context = context; kpt->timestamp = timestamp; } return pt; @@ -45,7 +46,7 @@ void kgsl_sync_pt_destroy(struct sync_pt *pt) static struct sync_pt *kgsl_sync_pt_dup(struct sync_pt *pt) { struct kgsl_sync_pt *kpt = (struct kgsl_sync_pt *) pt; - return kgsl_sync_pt_create(pt->parent, kpt->timestamp); + return kgsl_sync_pt_create(pt->parent, kpt->context, kpt->timestamp); } static int kgsl_sync_pt_has_signaled(struct sync_pt *pt) @@ -95,6 +96,38 @@ static inline void kgsl_fence_event_cb(struct kgsl_device *device, kfree(ev); } +static int _add_fence_event(struct kgsl_device *device, + struct kgsl_context *context, unsigned int timestamp) +{ + struct kgsl_fence_event_priv *event; + int ret; + + event = kmalloc(sizeof(*event), GFP_KERNEL); + if (event == NULL) + return -ENOMEM; + + /* + * Increase the refcount for the context to keep it through the + * callback + */ + + _kgsl_context_get(context); + + event->context = context; + event->timestamp = timestamp; + event->context = context; + + ret = kgsl_add_event(device, context->id, timestamp, + kgsl_fence_event_cb, event, context->dev_priv); + + if (ret) { + kgsl_context_put(context); + kfree(event); + } + + return ret; +} + /** * kgsl_add_fence_event - Create a new fence event * @device - KGSL device to create the event on @@ -112,79 +145,96 @@ int kgsl_add_fence_event(struct kgsl_device *device, u32 context_id, u32 timestamp, void __user *data, int len, struct kgsl_device_private *owner) { - struct kgsl_fence_event_priv *event; struct kgsl_timestamp_event_fence priv; struct kgsl_context *context; struct sync_pt *pt; struct sync_fence *fence = NULL; int ret = -EINVAL; + char fence_name[sizeof(fence->name)] = {}; + unsigned int cur; + + priv.fence_fd = -1; if (len != sizeof(priv)) return -EINVAL; - event = kzalloc(sizeof(*event), GFP_KERNEL); - if (event == NULL) - return -ENOMEM; + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); context = kgsl_context_get_owner(owner, context_id); if (context == NULL) - goto fail_pt; + goto unlock; - event->context = context; - event->timestamp = timestamp; + pt = kgsl_sync_pt_create(context->timeline, context, timestamp); - pt = kgsl_sync_pt_create(context->timeline, timestamp); if (pt == NULL) { KGSL_DRV_ERR(device, "kgsl_sync_pt_create failed\n"); ret = -ENOMEM; - goto fail_pt; + goto unlock; } + snprintf(fence_name, sizeof(fence_name), + "%s-pid-%d-ctx-%d-ts-%d", + device->name, current->group_leader->pid, + context_id, timestamp); + - fence = sync_fence_create("kgsl-fence", pt); + fence = sync_fence_create(fence_name, pt); if (fence == NULL) { /* only destroy pt when not added to fence */ kgsl_sync_pt_destroy(pt); KGSL_DRV_ERR(device, "sync_fence_create failed\n"); ret = -ENOMEM; - goto fail_fence; + goto unlock; } priv.fence_fd = get_unused_fd_flags(0); if (priv.fence_fd < 0) { - KGSL_DRV_ERR(device, "invalid fence fd\n"); - ret = -EINVAL; - goto fail_fd; + KGSL_DRV_ERR(device, "Unable to get a file descriptor: %d\n", + priv.fence_fd); + ret = priv.fence_fd; + goto unlock; } sync_fence_install(fence, priv.fence_fd); + /* + * If the timestamp hasn't expired yet create an event to trigger it. + * Otherwise, just signal the fence - there is no reason to go through + * the effort of creating a fence we don't need. + */ + + cur = kgsl_readtimestamp(device, context, KGSL_TIMESTAMP_RETIRED); + + if (timestamp_cmp(cur, timestamp) >= 0) + kgsl_sync_timeline_signal(context->timeline, cur); + else { + ret = _add_fence_event(device, context, timestamp); + if (ret) + goto unlock; + } + + kgsl_context_put(context); + + /* Unlock the mutex before copying to user */ + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + if (copy_to_user(data, &priv, sizeof(priv))) { ret = -EFAULT; - goto fail_copy_fd; + goto out; } - /* - * Hold the context ref-count for the event - it will get released in - * the callback - */ - ret = kgsl_add_event(device, context_id, timestamp, - kgsl_fence_event_cb, event, owner); - if (ret) - goto fail_event; - return 0; -fail_event: -fail_copy_fd: - /* clean up sync_fence_install */ - put_unused_fd(priv.fence_fd); -fail_fd: - /* clean up sync_fence_create */ - sync_fence_put(fence); -fail_fence: -fail_pt: +unlock: + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); + +out: + if (priv.fence_fd >= 0) + put_unused_fd(priv.fence_fd); + + if (fence) + sync_fence_put(fence); + kgsl_context_put(context); - kfree(event); return ret; } @@ -221,6 +271,14 @@ static void kgsl_sync_pt_value_str(struct sync_pt *sync_pt, snprintf(str, size, "%u", kpt->timestamp); } +static void kgsl_sync_pt_log(struct sync_pt *sync_pt) +{ + struct kgsl_sync_pt *kpt = (struct kgsl_sync_pt *) sync_pt; + pr_info("-----\n"); + kgsl_context_dump(kpt->context); + pr_info("-----\n"); +} + static void kgsl_sync_timeline_release_obj(struct sync_timeline *sync_timeline) { /* @@ -238,6 +296,7 @@ static const struct sync_timeline_ops kgsl_sync_timeline_ops = { .timeline_value_str = kgsl_sync_timeline_value_str, .pt_value_str = kgsl_sync_pt_value_str, .release_obj = kgsl_sync_timeline_release_obj, + .pt_log = kgsl_sync_pt_log, }; int kgsl_sync_timeline_create(struct kgsl_context *context) @@ -310,9 +369,13 @@ struct kgsl_sync_fence_waiter *kgsl_sync_fence_async_wait(int fd, sync_fence_put(fence); return ERR_PTR(-ENOMEM); } + kwaiter->fence = fence; kwaiter->priv = priv; kwaiter->func = func; + + strlcpy(kwaiter->name, fence->name, sizeof(kwaiter->name)); + sync_fence_waiter_init((struct sync_fence_waiter *) kwaiter, kgsl_sync_callback); diff --git a/drivers/gpu/msm/kgsl_sync.h b/drivers/gpu/msm/kgsl_sync.h index 275eaf07dfb5..d9d26ff1ffb3 100644 --- a/drivers/gpu/msm/kgsl_sync.h +++ b/drivers/gpu/msm/kgsl_sync.h @@ -25,19 +25,21 @@ struct kgsl_sync_timeline { struct kgsl_sync_pt { struct sync_pt pt; + struct kgsl_context *context; unsigned int timestamp; }; struct kgsl_sync_fence_waiter { struct sync_fence_waiter waiter; struct sync_fence *fence; + char name[32]; void (*func)(void *priv); void *priv; }; #if defined(CONFIG_SYNC) struct sync_pt *kgsl_sync_pt_create(struct sync_timeline *timeline, - unsigned int timestamp); + struct kgsl_context *context, unsigned int timestamp); void kgsl_sync_pt_destroy(struct sync_pt *pt); int kgsl_add_fence_event(struct kgsl_device *device, u32 context_id, u32 timestamp, void __user *data, int len, @@ -49,9 +51,14 @@ void kgsl_sync_timeline_destroy(struct kgsl_context *context); struct kgsl_sync_fence_waiter *kgsl_sync_fence_async_wait(int fd, void (*func)(void *priv), void *priv); int kgsl_sync_fence_async_cancel(struct kgsl_sync_fence_waiter *waiter); +static inline void kgsl_sync_fence_log(struct sync_fence *fence) +{ + sync_fence_log(fence); +} #else static inline struct sync_pt -*kgsl_sync_pt_create(struct sync_timeline *timeline, unsigned int timestamp) +*kgsl_sync_pt_create(struct sync_timeline *timeline, + struct kgsl_context *context, unsigned int timestamp) { return NULL; } @@ -96,6 +103,10 @@ kgsl_sync_fence_async_cancel(struct kgsl_sync_fence_waiter *waiter) return 1; } +static inline void kgsl_sync_fence_log(struct sync_fence *fence) +{ +} + #endif #endif /* __KGSL_SYNC_H */ diff --git a/drivers/gpu/msm/kgsl_trace.h b/drivers/gpu/msm/kgsl_trace.h index c737cc803e10..8830a9e25608 100644 --- a/drivers/gpu/msm/kgsl_trace.h +++ b/drivers/gpu/msm/kgsl_trace.h @@ -796,13 +796,11 @@ TRACE_EVENT(kgsl_active_count, ) ); - TRACE_EVENT(kgsl_pwrstats, TP_PROTO(struct kgsl_device *device, s64 time, struct kgsl_power_stats *pstats), TP_ARGS(device, time, pstats), - TP_STRUCT__entry( __string(device_name, device->name) __field(s64, total_time) @@ -826,6 +824,61 @@ TRACE_EVENT(kgsl_pwrstats, ) ); +DECLARE_EVENT_CLASS(syncpoint_timestamp_template, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, struct kgsl_context *context, + unsigned int timestamp), + TP_ARGS(cmdbatch, context, timestamp), + TP_STRUCT__entry( + __field(unsigned int, cmdbatch_context_id) + __field(unsigned int, context_id) + __field(unsigned int, timestamp) + ), + TP_fast_assign( + __entry->cmdbatch_context_id = cmdbatch->context->id; + __entry->context_id = context->id; + __entry->timestamp = timestamp; + ), + TP_printk("ctx=%d sync ctx=%d ts=%d", + __entry->cmdbatch_context_id, __entry->context_id, + __entry->timestamp) +); + +DEFINE_EVENT(syncpoint_timestamp_template, syncpoint_timestamp, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, struct kgsl_context *context, + unsigned int timestamp), + TP_ARGS(cmdbatch, context, timestamp) +); + +DEFINE_EVENT(syncpoint_timestamp_template, syncpoint_timestamp_expire, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, struct kgsl_context *context, + unsigned int timestamp), + TP_ARGS(cmdbatch, context, timestamp) +); + +DECLARE_EVENT_CLASS(syncpoint_fence_template, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, char *name), + TP_ARGS(cmdbatch, name), + TP_STRUCT__entry( + __string(fence_name, name) + __field(unsigned int, cmdbatch_context_id) + ), + TP_fast_assign( + __entry->cmdbatch_context_id = cmdbatch->context->id; + __assign_str(fence_name, name); + ), + TP_printk("ctx=%d fence=%s", + __entry->cmdbatch_context_id, __get_str(fence_name)) +); + +DEFINE_EVENT(syncpoint_fence_template, syncpoint_fence, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, char *name), + TP_ARGS(cmdbatch, name) +); + +DEFINE_EVENT(syncpoint_fence_template, syncpoint_fence_expire, + TP_PROTO(struct kgsl_cmdbatch *cmdbatch, char *name), + TP_ARGS(cmdbatch, name) +); #endif /* _KGSL_TRACE_H */ diff --git a/drivers/gpu/msm/z180.c b/drivers/gpu/msm/z180.c index 270a7a6cc081..622bd92a84b8 100644 --- a/drivers/gpu/msm/z180.c +++ b/drivers/gpu/msm/z180.c @@ -404,7 +404,7 @@ z180_cmdstream_issueibcmds(struct kgsl_device_private *dev_priv, unsigned int numibs; struct kgsl_ibdesc *ibdesc; - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); result = kgsl_active_count_get(device); if (result) @@ -518,7 +518,7 @@ z180_cmdstream_issueibcmds(struct kgsl_device_private *dev_priv, kgsl_active_count_put(device); error_active_count: - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); return (int)result; } @@ -866,9 +866,9 @@ static int z180_waittimestamp(struct kgsl_device *device, status = kgsl_active_count_get(device); if (!status) { - mutex_unlock(&device->mutex); + kgsl_mutex_unlock(&device->mutex, &device->mutex_owner); status = z180_wait(device, context, timestamp, msecs); - mutex_lock(&device->mutex); + kgsl_mutex_lock(&device->mutex, &device->mutex_owner); kgsl_active_count_put(device); } diff --git a/drivers/input/keyboard/cypress_touchkey_h/cypress-touchkey.c b/drivers/input/keyboard/cypress_touchkey_h/cypress-touchkey.c index 78ccfe34f07f..652dc6d0efa7 100755 --- a/drivers/input/keyboard/cypress_touchkey_h/cypress-touchkey.c +++ b/drivers/input/keyboard/cypress_touchkey_h/cypress-touchkey.c @@ -659,6 +659,10 @@ static irqreturn_t cypress_touchkey_interrupt(int irq, void *dev_id) int press; int ret; + if (!atomic_read(&info->keypad_enable)) { + goto out; + } + ret = gpio_get_value(info->pdata->gpio_int); if (ret) { dev_info(&info->client->dev, @@ -1350,6 +1354,38 @@ static ssize_t boost_level_store(struct device *dev, } #endif +static ssize_t sec_keypad_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct cypress_touchkey_info *info = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", atomic_read(&info->keypad_enable)); +} + +static ssize_t sec_keypad_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + struct cypress_touchkey_info *info = dev_get_drvdata(dev); + int i; + + unsigned int val = 0; + sscanf(buf, "%d", &val); + val = (val == 0 ? 0 : 1); + atomic_set(&info->keypad_enable, val); + if (val) { + for (i = 0; i < ARRAY_SIZE(info->keycode); i++) + set_bit(info->keycode[i], info->input_dev->keybit); + } else { + for (i = 0; i < ARRAY_SIZE(info->keycode); i++) + clear_bit(info->keycode[i], info->input_dev->keybit); + } + input_sync(info->input_dev); + + return count; +} + +static DEVICE_ATTR(keypad_enable, S_IRUGO|S_IWUSR, sec_keypad_enable_show, + sec_keypad_enable_store); static DEVICE_ATTR(touchkey_firm_update_status, S_IRUGO | S_IWUSR | S_IWGRP, cypress_touchkey_firm_status_show, NULL); static DEVICE_ATTR(touchkey_firm_version_panel, S_IRUGO, @@ -1401,6 +1437,7 @@ static DEVICE_ATTR(boost_level, #endif static struct attribute *touchkey_attributes[] = { + &dev_attr_keypad_enable.attr, &dev_attr_touchkey_firm_update_status.attr, &dev_attr_touchkey_firm_version_panel.attr, &dev_attr_touchkey_firm_version_phone.attr, @@ -1798,6 +1835,8 @@ static int __devinit cypress_touchkey_probe(struct i2c_client *client, set_bit(EV_LED, input_dev->evbit); set_bit(LED_MISC, input_dev->ledbit); + atomic_set(&info->keypad_enable, 1); + for (i = 0; i < pdata->keycodes_size; i++) { info->keycode[i] = pdata->touchkey_keycode[i]; set_bit(info->keycode[i], input_dev->keybit); diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c index 6cf4c3d73b70..501c054623da 100644 --- a/drivers/input/keyboard/gpio_keys.c +++ b/drivers/input/keyboard/gpio_keys.c @@ -653,7 +653,7 @@ static void flip_cover_work(struct work_struct *work) __func__, ddata->flip_cover); input_report_switch(ddata->input, - SW_FLIP, ddata->flip_cover); + SW_LID, !ddata->flip_cover); input_sync(ddata->input); } else { printk(KERN_DEBUG "%s : Value is not same!\n", __func__); @@ -671,7 +671,7 @@ static void flip_cover_work(struct work_struct *work) __func__, ddata->flip_cover); input_report_switch(ddata->input, - SW_FLIP, ddata->flip_cover); + SW_LID, !ddata->flip_cover); input_sync(ddata->input); } #endif // CONFIG_SEC_FACTORY @@ -1070,7 +1070,7 @@ struct regulator *lvs1_1p8 = NULL; #ifdef CONFIG_SENSORS_HALL if(ddata->gpio_flip_cover != 0) { input->evbit[0] |= BIT_MASK(EV_SW); - input_set_capability(input, EV_SW, SW_FLIP); + input_set_capability(input, EV_SW, SW_LID); } #endif #ifdef CONFIG_SENSORS_HALL_DEBOUNCE diff --git a/drivers/media/isdbt/Makefile b/drivers/media/isdbt/Makefile index 8f90869ce463..7f6014a51d3b 100755 --- a/drivers/media/isdbt/Makefile +++ b/drivers/media/isdbt/Makefile @@ -2,7 +2,3 @@ # Makefile for the kernel character device drivers. # obj-$(CONFIG_ISDBT_FC8300) += fc8300/ -obj-$(CONFIG_ISDBT_FC8300_SPI) += fc8300_spi/ -obj-$(CONFIG_ISDBT_FC8150) += fc8150/ -obj-$(CONFIG_ISDBT_FC8150_SPI) += fc8150_spi/ -obj-$(CONFIG_ISDBT_FC8150_HKDI) += fc8150_spi/ diff --git a/drivers/media/platform/msm/vidc/hfi_packetization.c b/drivers/media/platform/msm/vidc/hfi_packetization.c index 4b7a3bead7a9..c45bf3a1d4c7 100644 --- a/drivers/media/platform/msm/vidc/hfi_packetization.c +++ b/drivers/media/platform/msm/vidc/hfi_packetization.c @@ -342,12 +342,6 @@ static int get_hfi_extradata_index(enum hal_extradata_id index) case HAL_EXTRADATA_RECOVERY_POINT_SEI: ret = HFI_PROPERTY_PARAM_VDEC_RECOVERY_POINT_SEI_EXTRADATA; break; - case HAL_EXTRADATA_CLOSED_CAPTION_UD: - ret = HFI_PROPERTY_PARAM_VDEC_CLOSED_CAPTION_EXTRADATA; - break; - case HAL_EXTRADATA_AFD_UD: - ret = HFI_PROPERTY_PARAM_VDEC_AFD_EXTRADATA; - break; case HAL_EXTRADATA_MULTISLICE_INFO: ret = HFI_PROPERTY_PARAM_VENC_MULTI_SLICE_INFO; break; @@ -372,6 +366,9 @@ static int get_hfi_extradata_index(enum hal_extradata_id index) case HAL_EXTRADATA_METADATA_MBI: ret = HFI_PROPERTY_PARAM_VENC_MBI_DUMPING; break; + case HAL_EXTRADATA_STREAM_USERDATA: + ret = HFI_PROPERTY_PARAM_VDEC_STREAM_USERDATA_EXTRADATA; + break; default: dprintk(VIDC_WARN, "Extradata index not found: %d\n", index); break; @@ -1487,6 +1484,20 @@ int create_pkt_cmd_session_set_property( pkt->size += sizeof(u32) * 2; break; } + case HAL_PARAM_VENC_ENABLE_INITIAL_QP: + { + struct hfi_initial_quantization *hfi; + struct hal_initial_quantization *quant = pdata; + pkt->rg_property_data[0] = + HFI_PROPERTY_PARAM_VENC_INITIAL_QP; + hfi = (struct hfi_initial_quantization *) &pkt->rg_property_data[1]; + hfi->init_qp_enable = quant->initqp_enable; + hfi->qp_i = quant->qpi; + hfi->qp_p = quant->qpp; + hfi->qp_b = quant->qpb; + pkt->size += sizeof(u32) + sizeof(struct hfi_initial_quantization); + break; + } /* FOLLOWING PROPERTIES ARE NOT IMPLEMENTED IN CORE YET */ case HAL_CONFIG_BUFFER_REQUIREMENTS: case HAL_CONFIG_PRIORITY: diff --git a/drivers/media/platform/msm/vidc/hfi_response_handler.c b/drivers/media/platform/msm/vidc/hfi_response_handler.c index 3d632050f8fd..032cca4535eb 100644 --- a/drivers/media/platform/msm/vidc/hfi_response_handler.c +++ b/drivers/media/platform/msm/vidc/hfi_response_handler.c @@ -49,7 +49,7 @@ static enum vidc_status hfi_map_err_status(int hfi_err) vidc_err = VIDC_ERR_NOT_SUPPORTED; break; case HFI_ERR_SYS_MAX_SESSIONS_REACHED: - vidc_err = VIDC_ERR_MAX_CLIENT; + vidc_err = VIDC_ERR_MAX_CLIENTS; break; case HFI_ERR_SYS_SESSION_IN_USE: vidc_err = VIDC_ERR_CLIENT_PRESENT; @@ -75,6 +75,8 @@ static enum vidc_status hfi_map_err_status(int hfi_err) vidc_err = VIDC_ERR_FAIL; break; } + if (vidc_err != HFI_ERR_NONE) + dprintk(VIDC_ERR, "HFI Error: %d\n", vidc_err); return vidc_err; } @@ -108,7 +110,8 @@ static void hfi_process_sess_evt_seq_changed( struct hfi_frame_size frame_sz; u8 *data_ptr; int prop_id; - dprintk(VIDC_DBG, "RECEIVED:EVENT_NOTIFY"); + dprintk(VIDC_DBG, "RECEIVED: EVENT_NOTIFY[%u]: %d, 0x%x\n", + pkt->session_id, pkt->event_data1, pkt->event_data2); if (sizeof(struct hfi_msg_event_notify_packet) > pkt->size) { dprintk(VIDC_ERR, "hal_process_session_init_done:bad_pkt_size"); @@ -212,6 +215,7 @@ static void hfi_process_session_error( cmd_done.device_id = device_id; cmd_done.session_id = ((struct hal_session *) pkt->session_id)-> session_id; + cmd_done.status = hfi_map_err_status(pkt->event_data1); dprintk(VIDC_INFO, "Received : SESSION_ERROR with event id : %d\n", pkt->event_data1); switch (pkt->event_data1) { @@ -219,6 +223,7 @@ static void hfi_process_session_error( case HFI_ERR_SESSION_UNSUPPORT_BUFFERTYPE: case HFI_ERR_SESSION_UNSUPPORTED_SETTING: case HFI_ERR_SESSION_UPSCALE_NOT_SUPPORTED: + cmd_done.status = VIDC_ERR_NONE; dprintk(VIDC_INFO, "Non Fatal : HFI_EVENT_SESSION_ERROR\n"); break; default: @@ -249,27 +254,33 @@ static void hfi_process_event_notify( hfi_process_sys_error(callback, device_id); break; case HFI_EVENT_SESSION_ERROR: - dprintk(VIDC_INFO, "HFI_EVENT_SESSION_ERROR"); + dprintk(VIDC_INFO, + "HFI_EVENT_SESSION_ERROR[%u]\n", pkt->session_id); if (!validate_session_pkt(sessions, sess, session_lock)) hfi_process_session_error(callback, device_id, pkt); break; case HFI_EVENT_SESSION_SEQUENCE_CHANGED: - dprintk(VIDC_INFO, "HFI_EVENT_SESSION_SEQUENCE_CHANGED"); + dprintk(VIDC_INFO, "HFI_EVENT_SESSION_SEQUENCE_CHANGED[%u]\n", + pkt->session_id); if (!validate_session_pkt(sessions, sess, session_lock)) hfi_process_sess_evt_seq_changed(callback, device_id, pkt); break; case HFI_EVENT_SESSION_PROPERTY_CHANGED: - dprintk(VIDC_INFO, "HFI_EVENT_SESSION_PROPERTY_CHANGED"); + dprintk(VIDC_INFO, "HFI_EVENT_SESSION_PROPERTY_CHANGED[%u]\n", + pkt->session_id); break; case HFI_EVENT_RELEASE_BUFFER_REFERENCE: - dprintk(VIDC_INFO, "HFI_EVENT_RELEASE_BUFFER_REFERENCE\n"); + dprintk(VIDC_INFO, "HFI_EVENT_RELEASE_BUFFER_REFERENCE[%u]\n", + pkt->session_id); if (!validate_session_pkt(sessions, sess, session_lock)) hfi_process_evt_release_buffer_ref(callback, device_id, pkt); break; default: - dprintk(VIDC_WARN, "hal_process_event_notify:unkown_event_id"); + dprintk(VIDC_WARN, + "hal_process_event_notify: unknown_event_id[%u]\n", + pkt->session_id); break; } } @@ -759,7 +770,8 @@ static void hfi_process_session_prop_info( struct msm_vidc_cb_cmd_done cmd_done; struct buffer_requirements buff_req; - dprintk(VIDC_DBG, "Received SESSION_PROPERTY_INFO"); + dprintk(VIDC_DBG, "Received SESSION_PROPERTY_INFO[%u]\n", + pkt->session_id); if (pkt->size < sizeof(struct hfi_msg_session_property_info_packet)) { dprintk(VIDC_ERR, "hal_process_session_prop_info:bad_pkt_size"); @@ -801,7 +813,8 @@ static void hfi_process_session_init_done( struct msm_vidc_cb_cmd_done cmd_done; struct vidc_hal_session_init_done session_init_done; struct hal_session *sess_close = NULL; - dprintk(VIDC_DBG, "RECEIVED:SESSION_INIT_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_INIT_DONE[%u]\n", + pkt->session_id); if (sizeof(struct hfi_msg_sys_session_init_done_packet) > pkt->size) { dprintk(VIDC_ERR, "hal_process_session_init_done:bad_pkt_size"); @@ -823,12 +836,9 @@ static void hfi_process_session_init_done( } else { sess_close = (struct hal_session *)pkt->session_id; if (sess_close) { - dprintk(VIDC_INFO, - "Sess init failed: Deleting session: 0x%x 0x%p", + dprintk(VIDC_WARN, + "Sess init failed: 0x%x, 0x%p", sess_close->session_id, sess_close); - list_del(&sess_close->list); - kfree(sess_close); - sess_close = NULL; } } cmd_done.size = sizeof(struct vidc_hal_session_init_done); @@ -840,7 +850,8 @@ static void hfi_process_session_load_res_done( struct hfi_msg_session_load_resources_done_packet *pkt) { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_LOAD_RESOURCES_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_LOAD_RESOURCES_DONE[%u]\n", + pkt->session_id); if (sizeof(struct hfi_msg_session_load_resources_done_packet) != pkt->size) { @@ -866,7 +877,8 @@ static void hfi_process_session_flush_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_FLUSH_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_FLUSH_DONE[%u]\n", + pkt->session_id); if (sizeof(struct hfi_msg_session_flush_done_packet) != pkt->size) { dprintk(VIDC_ERR, "hal_process_session_flush_done: " @@ -890,7 +902,8 @@ static void hfi_process_session_etb_done( { struct msm_vidc_cb_data_done data_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_ETB_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_ETB_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size < sizeof(struct hfi_msg_session_empty_buffer_done_packet)) { @@ -931,7 +944,8 @@ static void hfi_process_session_ftb_done( session = (struct hal_session *) ((struct hal_session *) pack->session_id)->session_id; - dprintk(VIDC_DBG, "RECEIVED:SESSION_FTB_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_FTB_DONE[%u]\n", + pack->session_id); memset(&data_done, 0, sizeof(struct msm_vidc_cb_data_done)); @@ -1029,7 +1043,8 @@ static void hfi_process_session_start_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_START_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_START_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_session_start_done_packet)) { @@ -1054,7 +1069,8 @@ static void hfi_process_session_stop_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_STOP_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_STOP_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_session_stop_done_packet)) { @@ -1079,7 +1095,8 @@ static void hfi_process_session_rel_res_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_RELEASE_RESOURCES_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_RELEASE_RESOURCES_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_session_release_resources_done_packet)) { @@ -1103,6 +1120,8 @@ static void hfi_process_session_rel_buf_done( struct hfi_msg_session_release_buffers_done_packet *pkt) { struct msm_vidc_cb_cmd_done cmd_done; + dprintk(VIDC_DBG, "RECEIVED:SESSION_RELEASE_BUFFER_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_session_release_buffers_done_packet)) { @@ -1130,7 +1149,8 @@ static void hfi_process_session_end_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_END_DONE"); + dprintk(VIDC_DBG, "RECEIVED: SESSION_END_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_sys_session_end_done_packet)) { @@ -1155,8 +1175,8 @@ static void hfi_process_session_abort_done( { struct msm_vidc_cb_cmd_done cmd_done; - dprintk(VIDC_DBG, "RECEIVED:SESSION_ABORT_DONE"); - + dprintk(VIDC_DBG, "RECEIVED: SESSION_ABORT_DONE[%u]\n", + pkt->session_id); if (!pkt || pkt->size != sizeof(struct hfi_msg_sys_session_abort_done_packet)) { dprintk(VIDC_ERR, "%s: bad packet/packet size: %d", @@ -1185,6 +1205,8 @@ static void hfi_process_session_get_seq_hdr_done( dprintk(VIDC_ERR, "bad packet/packet size: %d", pkt->size); return; } + dprintk(VIDC_DBG, "RECEIVED:SESSION_GET_SEQ_HDR_DONE[%u]\n", + pkt->session_id); memset(&data_done, 0, sizeof(struct msm_vidc_cb_data_done)); data_done.device_id = device_id; data_done.size = sizeof(struct msm_vidc_cb_data_done); diff --git a/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c b/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c index 4a25801190fc..0abad4926eb3 100644 --- a/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c +++ b/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c @@ -327,6 +327,7 @@ static int msm_vidc_initialize_core(struct platform_device *pdev, init_completion(&core->completions[i]); } + INIT_DELAYED_WORK(&core->fw_unload_work, msm_vidc_fw_unload_handler); return rc; } @@ -543,6 +544,35 @@ static const struct of_device_id msm_vidc_dt_match[] = { {} }; +static int msm_vidc_pm_suspend(struct device *pdev) +{ + struct msm_vidc_core *core; + + if (!pdev) { + dprintk(VIDC_ERR, "%s invalid device\n", __func__); + return -EINVAL; + } + + core = (struct msm_vidc_core *)pdev->platform_data; + if (!core) { + dprintk(VIDC_ERR, "%s invalid core\n", __func__); + return -EINVAL; + } + dprintk(VIDC_INFO, "%s\n", __func__); + + return msm_vidc_suspend(core->id); +} + +static int msm_vidc_pm_resume(struct device *dev) +{ + dprintk(VIDC_INFO, "%s\n", __func__); + return 0; +} + +static const struct dev_pm_ops msm_vidc_pm_ops = { + SET_SYSTEM_SLEEP_PM_OPS(msm_vidc_pm_suspend, msm_vidc_pm_resume) +}; + MODULE_DEVICE_TABLE(of, msm_vidc_dt_match); static struct platform_driver msm_vidc_driver = { @@ -552,6 +582,7 @@ static struct platform_driver msm_vidc_driver = { .name = "msm_vidc_v4l2", .owner = THIS_MODULE, .of_match_table = msm_vidc_dt_match, + .pm = &msm_vidc_pm_ops, }, }; diff --git a/drivers/media/platform/msm/vidc/msm_vdec.c b/drivers/media/platform/msm/vidc/msm_vdec.c index 40cc56b7a765..c18d78f64b29 100644 --- a/drivers/media/platform/msm/vidc/msm_vdec.c +++ b/drivers/media/platform/msm/vidc/msm_vdec.c @@ -21,8 +21,9 @@ #define MSM_VDEC_DVC_NAME "msm_vdec_8974" #define MIN_NUM_OUTPUT_BUFFERS 4 -#define MAX_NUM_OUTPUT_BUFFERS 6 -#define DEFAULT_VIDEO_CONCEAL_COLOR_BLACK 0x8080 +#define MAX_NUM_OUTPUT_BUFFERS VB2_MAX_FRAME +#define DEFAULT_VIDEO_CONCEAL_COLOR_BLACK 0x8010 +#define MB_SIZE_IN_PIXEL (16 * 16) #define TZ_DYNAMIC_BUFFER_FEATURE_ID 12 #define TZ_FEATURE_VERSION(major, minor, patch) \ @@ -211,7 +212,7 @@ static struct msm_vidc_ctrl msm_vdec_ctrls[] = { .name = "Extradata Type", .type = V4L2_CTRL_TYPE_MENU, .minimum = V4L2_MPEG_VIDC_EXTRADATA_NONE, - .maximum = V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO, + .maximum = V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA, .default_value = V4L2_MPEG_VIDC_EXTRADATA_NONE, .menu_skip_mask = ~( (1 << V4L2_MPEG_VIDC_EXTRADATA_NONE) | @@ -224,8 +225,6 @@ static struct msm_vidc_ctrl msm_vdec_ctrls[] = { (1 << V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE) | (1 << V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW) | (1 << V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI) | - (1 << V4L2_MPEG_VIDC_EXTRADATA_CLOSED_CAPTION_UD) | - (1 << V4L2_MPEG_VIDC_EXTRADATA_AFD_UD) | (1 << V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO) | (1 << V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB) | (1 << V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER) | @@ -234,7 +233,8 @@ static struct msm_vidc_ctrl msm_vdec_ctrls[] = { (1 << V4L2_MPEG_VIDC_INDEX_EXTRADATA_ASPECT_RATIO) | (1 << V4L2_MPEG_VIDC_EXTRADATA_MPEG2_SEQDISP) | (1 << V4L2_MPEG_VIDC_EXTRADATA_FRAME_QP) | - (1 << V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO) + (1 << V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO) | + (1 << V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA) ), .qmenu = mpeg_video_vidc_extradata, .step = 0, @@ -317,6 +317,17 @@ static struct msm_vidc_ctrl msm_vdec_ctrls[] = { .default_value = DEFAULT_VIDEO_CONCEAL_COLOR_BLACK, .step = 1, }, + { + .id = V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT, + .name = "Buffer size limit", + .type = V4L2_CTRL_TYPE_INTEGER, + .minimum = 0, + .maximum = 0x7fffffff, + .default_value = 0, + .step = 1, + .menu_skip_mask = 0, + .qmenu = NULL, + }, }; #define NUM_CTRLS ARRAY_SIZE(msm_vdec_ctrls) @@ -328,9 +339,39 @@ static u32 get_frame_size_nv12(int plane, } static u32 get_frame_size_compressed(int plane, - u32 height, u32 width) + u32 max_mbs_per_frame, u32 size_per_mb) { - return (width * height * 3/2)/4; + return (max_mbs_per_frame * size_per_mb * 3/2)/2; +} + +static u32 get_frame_size(struct msm_vidc_inst *inst, + const struct msm_vidc_format *fmt, + int fmt_type, int plane) +{ + u32 frame_size = 0; + if (fmt_type == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE) { + frame_size = fmt->get_frame_size(plane, + inst->capability.mbs_per_frame.max, + MB_SIZE_IN_PIXEL); + if (inst->capability.buffer_size_limit && + (inst->capability.buffer_size_limit < frame_size)) { + frame_size = inst->capability.buffer_size_limit; + dprintk(VIDC_DBG, "input buffer size limited to %d\n", + frame_size); + } else { + dprintk(VIDC_DBG, "set input buffer size to %d\n", + frame_size); + } + } else if (fmt_type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) { + frame_size = fmt->get_frame_size(plane, + inst->capability.height.max, + inst->capability.width.max); + dprintk(VIDC_DBG, "set output buffer size to %d\n", + frame_size); + } else { + dprintk(VIDC_WARN, "Wrong format type\n"); + } + return frame_size; } struct msm_vidc_format vdec_formats[] = { @@ -742,11 +783,11 @@ int msm_vdec_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f) for (i = 0; i < fmt->num_planes; ++i) { if (plane_sizes[i] == 0) { f->fmt.pix_mp.plane_fmt[i].sizeimage = - fmt->get_frame_size(i, - inst->capability.height.max, - inst->capability.width.max); + get_frame_size(inst, fmt, + f->type, i); plane_sizes[i] = - f->fmt.pix_mp.plane_fmt[i].sizeimage; + f->fmt.pix_mp.plane_fmt[i]. + sizeimage; } else f->fmt.pix_mp.plane_fmt[i].sizeimage = plane_sizes[i]; @@ -929,9 +970,7 @@ int msm_vdec_s_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f) if (ret) { for (i = 0; i < fmt->num_planes; ++i) { f->fmt.pix_mp.plane_fmt[i].sizeimage = - fmt->get_frame_size(i, - inst->capability.height.max, - inst->capability.width.max); + get_frame_size(inst, fmt, f->type, i); } } else { buff_req_buffer = @@ -1013,11 +1052,7 @@ int msm_vdec_s_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f) frame_sz.buffer_type, frame_sz.width, frame_sz.height); msm_comm_try_set_prop(inst, HAL_PARAM_FRAME_SIZE, &frame_sz); - - max_input_size = fmt->get_frame_size(0, - inst->capability.height.max, - inst->capability.width.max); - + max_input_size = get_frame_size(inst, fmt, f->type, 0); if (f->fmt.pix_mp.plane_fmt[0].sizeimage > max_input_size || f->fmt.pix_mp.plane_fmt[0].sizeimage == 0) { f->fmt.pix_mp.plane_fmt[0].sizeimage = max_input_size; @@ -1116,9 +1151,8 @@ static int msm_vdec_queue_setup(struct vb2_queue *q, *num_buffers > MAX_NUM_OUTPUT_BUFFERS) *num_buffers = MIN_NUM_OUTPUT_BUFFERS; for (i = 0; i < *num_planes; i++) { - sizes[i] = inst->fmts[OUTPUT_PORT]->get_frame_size( - i, inst->capability.height.max, - inst->capability.width.max); + sizes[i] = get_frame_size(inst, + inst->fmts[OUTPUT_PORT], q->type, i); } property_id = HAL_PARAM_BUFFER_COUNT_ACTUAL; new_buf_count.buffer_type = HAL_BUFFER_INPUT; @@ -1366,7 +1400,7 @@ int msm_vdec_cmd(struct msm_vidc_inst *inst, struct v4l2_decoder_cmd *dec) case V4L2_DEC_QCOM_CMD_FLUSH: if (core->state != VIDC_CORE_INVALID && inst->state == MSM_VIDC_CORE_INVALID) { - rc = msm_comm_recover_from_session_error(inst); + rc = msm_comm_kill_session(inst); if (rc) dprintk(VIDC_ERR, "Failed to recover from session_error: %d\n", @@ -1381,7 +1415,7 @@ int msm_vdec_cmd(struct msm_vidc_inst *inst, struct v4l2_decoder_cmd *dec) case V4L2_DEC_CMD_STOP: if (core->state != VIDC_CORE_INVALID && inst->state == MSM_VIDC_CORE_INVALID) { - rc = msm_comm_recover_from_session_error(inst); + rc = msm_comm_kill_session(inst); if (rc) dprintk(VIDC_ERR, "Failed to recover from session_error: %d\n", @@ -1702,6 +1736,13 @@ static int try_set_ctrl(struct msm_vidc_inst *inst, struct v4l2_ctrl *ctrl) property_val = ctrl->val; pdata = &property_val; break; + case V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT: + { + inst->capability.buffer_size_limit = ctrl->val; + dprintk(VIDC_DBG, + "Limiting input buffer size to :%u\n", ctrl->val); + break; + } default: break; } diff --git a/drivers/media/platform/msm/vidc/msm_venc.c b/drivers/media/platform/msm/vidc/msm_venc.c index 9d6262378433..e52fe34c0011 100644 --- a/drivers/media/platform/msm/vidc/msm_venc.c +++ b/drivers/media/platform/msm/vidc/msm_venc.c @@ -657,8 +657,6 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { (1 << V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE) | (1 << V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW) | (1 << V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI) | - (1 << V4L2_MPEG_VIDC_EXTRADATA_CLOSED_CAPTION_UD) | - (1 << V4L2_MPEG_VIDC_EXTRADATA_AFD_UD) | (1 << V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO) | (1 << V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB) | (1 << V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER) | @@ -771,6 +769,45 @@ static struct msm_vidc_ctrl msm_venc_ctrls[] = { .default_value = 0, .step = 1, .qmenu = NULL, + }, + { + .id = V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP, + .name = "Enable setting initial QP", + .type = V4L2_CTRL_TYPE_BUTTON, + .minimum = 0, + .maximum = 0, + .default_value = 0, + .step = 0, + }, + { + .id = V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP, + .name = "Iframe initial QP", + .type = V4L2_CTRL_TYPE_INTEGER, + .minimum = 1, + .maximum = 51, + .default_value = 1, + .step = 1, + .qmenu = NULL, + }, + { + .id = V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP, + .name = "Pframe initial QP", + .type = V4L2_CTRL_TYPE_INTEGER, + .minimum = 1, + .maximum = 51, + .default_value = 1, + .step = 1, + .qmenu = NULL, + }, + { + .id = V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP, + .name = "Bframe initial QP", + .type = V4L2_CTRL_TYPE_INTEGER, + .minimum = 1, + .maximum = 51, + .default_value = 1, + .step = 1, + .qmenu = NULL, } }; @@ -880,12 +917,12 @@ static int msm_venc_queue_setup(struct vb2_queue *q, } if (*num_buffers < MIN_NUM_CAPTURE_BUFFERS || - *num_buffers > VIDEO_MAX_FRAME) { + *num_buffers > VB2_MAX_FRAME) { int temp = *num_buffers; *num_buffers = clamp_val(*num_buffers, MIN_NUM_CAPTURE_BUFFERS, - VIDEO_MAX_FRAME); + VB2_MAX_FRAME); dprintk(VIDC_INFO, "Changing buffer count on CAPTURE_MPLANE from %d to %d for best effort encoding\n", temp, *num_buffers); @@ -2135,6 +2172,7 @@ static int try_set_ext_ctrl(struct msm_vidc_inst *inst, u32 property_id = 0; void *pdata = NULL; struct msm_vidc_core_capability *cap = NULL; + struct hal_initial_quantization quant; if (!inst || !inst->core || !inst->core->device || !ctrl) { dprintk(VIDC_ERR, "%s invalid parameters\n", __func__); @@ -2171,6 +2209,26 @@ static int try_set_ext_ctrl(struct msm_vidc_inst *inst, property_id = HAL_PARAM_VENC_LTRMODE; pdata = <rmode; break; + case V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP: + property_id = HAL_PARAM_VENC_ENABLE_INITIAL_QP; + quant.initqp_enable = control[i].value; + pdata = &quant; + break; + case V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP: + quant.qpi = control[i].value; + property_id = HAL_PARAM_VENC_ENABLE_INITIAL_QP; + pdata = &quant; + break; + case V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP: + quant.qpp = control[i].value; + property_id = HAL_PARAM_VENC_ENABLE_INITIAL_QP; + pdata = &quant; + break; + case V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP: + quant.qpb = control[i].value; + property_id = HAL_PARAM_VENC_ENABLE_INITIAL_QP; + pdata = &quant; + break; default: dprintk(VIDC_ERR, "Invalid id set: %d\n", control[i].id); diff --git a/drivers/media/platform/msm/vidc/msm_vidc.c b/drivers/media/platform/msm/vidc/msm_vidc.c index c49dffacaaf0..7f95b8dd28d8 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc.c +++ b/drivers/media/platform/msm/vidc/msm_vidc.c @@ -25,6 +25,13 @@ #define MAX_EVENTS 30 +static int open_video_instance = 0; + +int msm_vidc_instance_open(void) +{ + return open_video_instance; +} + static int get_poll_flags(void *instance) { struct msm_vidc_inst *inst = instance; @@ -1218,6 +1225,7 @@ void *msm_vidc_open(int core_id, int session_type) pr_info(VIDC_DBG_TAG "Opening video instance: %p, %d\n", VIDC_INFO, inst, session_type); + open_video_instance = 1; mutex_init(&inst->sync_lock); mutex_init(&inst->bufq[CAPTURE_PORT].lock); mutex_init(&inst->bufq[OUTPUT_PORT].lock); @@ -1265,6 +1273,11 @@ void *msm_vidc_open(int core_id, int session_type) "Failed to initialize vb2 queue on capture port\n"); goto fail_bufq_output; } + + mutex_lock(&core->lock); + list_add_tail(&inst->list, &core->instances); + mutex_unlock(&core->lock); + rc = msm_comm_try_state(inst, MSM_VIDC_CORE_INIT); if (rc) { dprintk(VIDC_ERR, @@ -1276,12 +1289,14 @@ void *msm_vidc_open(int core_id, int session_type) setup_event_queue(inst, &core->vdev[session_type].vdev); - mutex_lock(&core->lock); - list_add_tail(&inst->list, &core->instances); - mutex_unlock(&core->lock); return inst; fail_init: vb2_queue_release(&inst->bufq[OUTPUT_PORT].vb2_bufq); + + mutex_lock(&core->lock); + list_del(&inst->list); + mutex_unlock(&core->lock); + fail_bufq_output: vb2_queue_release(&inst->bufq[CAPTURE_PORT].vb2_bufq); fail_bufq_capture: @@ -1386,6 +1401,9 @@ int msm_vidc_close(void *instance) else if (inst->session_type == MSM_VIDC_ENCODER) msm_venc_ctrl_deinit(inst); + for (i = 0; i < MAX_PORT_NUM; i++) + vb2_queue_release(&inst->bufq[i].vb2_bufq); + cleanup_instance(inst); if (inst->state != MSM_VIDC_CORE_INVALID && core->state != VIDC_CORE_INVALID) @@ -1395,12 +1413,17 @@ int msm_vidc_close(void *instance) if (rc) dprintk(VIDC_ERR, "Failed to move video instance to uninit state\n"); - for (i = 0; i < MAX_PORT_NUM; i++) - vb2_queue_release(&inst->bufq[i].vb2_bufq); msm_smem_delete_client(inst->mem_client); pr_info(VIDC_DBG_TAG "Closed video instance: %p\n", VIDC_INFO, inst); kfree(inst); + open_video_instance = 0; + return 0; } + +int msm_vidc_suspend(int core_id) +{ + return msm_comm_suspend(core_id); +} diff --git a/drivers/media/platform/msm/vidc/msm_vidc_common.c b/drivers/media/platform/msm/vidc/msm_vidc_common.c index fbfd424195a2..d185cad69110 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_common.c +++ b/drivers/media/platform/msm/vidc/msm_vidc_common.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include @@ -38,6 +37,9 @@ #define NUM_MBS_PER_SEC(__height, __width, __fps) ({\ (__height >> 4) * (__width >> 4) * __fps; \ }) +static void msm_comm_generate_session_error(struct msm_vidc_inst *inst); +static void msm_comm_generate_sys_error(struct msm_vidc_inst *inst); +static void handle_session_error(enum command_response cmd, void *data); static bool is_turbo_requested(struct msm_vidc_core *core, enum session_type type) @@ -388,9 +390,10 @@ static int wait_for_sess_signal_receipt(struct msm_vidc_inst *inst, &inst->completions[SESSION_MSG_INDEX(cmd)], msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); if (!rc) { - dprintk(VIDC_ERR, "Wait interrupted or timeout: %d\n", - SESSION_MSG_INDEX(cmd)); - msm_comm_recover_from_session_error(inst); + dprintk(VIDC_ERR, + "%s: Wait interrupted or timeout[%u]: %d\n", + __func__, (u32)inst->session, SESSION_MSG_INDEX(cmd)); + msm_comm_kill_session(inst); rc = -EIO; } else { rc = 0; @@ -424,17 +427,19 @@ void msm_vidc_queue_v4l2_event(struct msm_vidc_inst *inst, int event_type) wake_up(&inst->kernel_event_queue); } -static void msm_comm_generate_session_error(struct msm_vidc_inst *inst) +static void msm_comm_generate_max_clients_error(struct msm_vidc_inst *inst) { + enum command_response cmd = SESSION_ERROR; + struct msm_vidc_cb_cmd_done response = {0}; + if (!inst) { - dprintk(VIDC_ERR, "%s: invalid input parameters", __func__); + dprintk(VIDC_ERR, "%s: invalid input parameters\n", __func__); return; } - mutex_lock(&inst->lock); - inst->session = NULL; - inst->state = MSM_VIDC_CORE_INVALID; - msm_vidc_queue_v4l2_event(inst, V4L2_EVENT_MSM_VIDC_SYS_ERROR); - mutex_unlock(&inst->lock); + dprintk(VIDC_ERR, "%s: Too many clients\n", __func__); + response.session_id = (u32) inst; + response.status = VIDC_ERR_MAX_CLIENTS; + handle_session_error(cmd, (void *)&response); } static void handle_session_init_done(enum command_response cmd, void *data) @@ -467,6 +472,8 @@ static void handle_session_init_done(enum command_response cmd, void *data) inst->capability.hier_p = session_init_done->hier_p; inst->capability.pixelprocess_capabilities = call_hfi_op(hdev, get_core_capabilities); + inst->capability.mbs_per_frame = + session_init_done->mbs_per_frame; inst->capability.capability_set = true; inst->capability.buffer_mode[CAPTURE_PORT] = session_init_done->alloc_mode_out; @@ -474,7 +481,10 @@ static void handle_session_init_done(enum command_response cmd, void *data) dprintk(VIDC_ERR, "Session init response from FW : 0x%x", response->status); - msm_comm_generate_session_error(inst); + if (response->status == VIDC_ERR_MAX_CLIENTS) + msm_comm_generate_max_clients_error(inst); + else + msm_comm_generate_session_error(inst); } signal_session_msg_receipt(cmd, inst); } else { @@ -806,21 +816,50 @@ static void handle_session_flush(enum command_response cmd, void *data) static void handle_session_error(enum command_response cmd, void *data) { struct msm_vidc_cb_cmd_done *response = data; + int rc; + struct hfi_device *hdev = NULL; struct msm_vidc_inst *inst = NULL; - if (response) { - inst = (struct msm_vidc_inst *)response->session_id; - if (inst) { - dprintk(VIDC_WARN, - "Session error receivd for session %p\n", inst); - mutex_lock(&inst->sync_lock); - inst->state = MSM_VIDC_CORE_INVALID; - mutex_unlock(&inst->sync_lock); - msm_vidc_queue_v4l2_event(inst, - V4L2_EVENT_MSM_VIDC_SYS_ERROR); - } - } else { + + if (!response) { dprintk(VIDC_ERR, "Failed to get valid response for session error\n"); + return; + } + + inst = (struct msm_vidc_inst *)response->session_id; + + if (!inst || !inst->session || !inst->core->device) { + dprintk(VIDC_ERR, + "Session (%p) not in a stable enough state to handle session error\n", + inst); + return; + } + + hdev = inst->core->device; + dprintk(VIDC_WARN, "Session error received for session %p\n", inst); + change_inst_state(inst, MSM_VIDC_CORE_INVALID); + + mutex_lock(&inst->lock); + dprintk(VIDC_DBG, "cleaning up inst: %p\n", inst); + rc = call_hfi_op(hdev, session_clean, inst->session); + if (rc) + dprintk(VIDC_ERR, "Session (%p) clean failed: %d\n", inst, rc); + + inst->session = NULL; + mutex_unlock(&inst->lock); + + if (response->status == VIDC_ERR_MAX_CLIENTS) { + dprintk(VIDC_WARN, + "send max clients reached error to client: %p\n", + inst); + msm_vidc_queue_v4l2_event(inst, + V4L2_EVENT_MSM_VIDC_MAX_CLIENTS); + } else { + dprintk(VIDC_ERR, + "send session error to client: %p\n", + inst); + msm_vidc_queue_v4l2_event(inst, + V4L2_EVENT_MSM_VIDC_SYS_ERROR); } } @@ -1221,10 +1260,10 @@ static void handle_fbd(enum command_response cmd, void *data) inst = (struct msm_vidc_inst *)response->session_id; fill_buf_done = (struct vidc_hal_fbd *)&response->output_done; buffer_type = msm_comm_get_hal_output_buffer(inst); - if (fill_buf_done->buffer_type == buffer_type) + if (fill_buf_done->buffer_type == buffer_type) { vb = get_vb_from_device_addr(&inst->bufq[CAPTURE_PORT], (u32)fill_buf_done->packet_buffer1); - else { + } else { if (handle_multi_stream_buffers(inst, (u32)fill_buf_done->packet_buffer1)) dprintk(VIDC_ERR, @@ -1239,6 +1278,10 @@ static void handle_fbd(enum command_response cmd, void *data) vb->v4l2_planes[0].reserved[3] = fill_buf_done->start_y_coord; vb->v4l2_planes[0].reserved[4] = fill_buf_done->frame_width; vb->v4l2_planes[0].reserved[5] = fill_buf_done->frame_height; + vb->v4l2_planes[0].reserved[6] = + inst->prop.width[CAPTURE_PORT]; + vb->v4l2_planes[0].reserved[7] = + inst->prop.height[CAPTURE_PORT]; if (vb->v4l2_planes[0].data_offset > vb->v4l2_planes[0].length) dprintk(VIDC_INFO, "fbd:Overflow data_offset = %d; length = %d\n", @@ -1536,43 +1579,6 @@ void msm_comm_scale_clocks_and_bus(struct msm_vidc_inst *inst) } } -static int msm_comm_unset_ocmem(struct msm_vidc_core *core) -{ - int rc = 0; - struct hfi_device *hdev; - - if (!core || !core->device) { - dprintk(VIDC_ERR, "%s invalid parameters", __func__); - return -EINVAL; - } - hdev = core->device; - - if (core->state == VIDC_CORE_INVALID) { - dprintk(VIDC_ERR, - "Core is in bad state. Cannot unset ocmem\n"); - return -EIO; - } - - init_completion( - &core->completions[SYS_MSG_INDEX(RELEASE_RESOURCE_DONE)]); - - rc = call_hfi_op(hdev, unset_ocmem, hdev->hfi_device_data); - if (rc) { - dprintk(VIDC_INFO, "Failed to unset OCMEM on driver\n"); - goto release_ocmem_failed; - } - rc = wait_for_completion_timeout( - &core->completions[SYS_MSG_INDEX(RELEASE_RESOURCE_DONE)], - msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); - if (!rc) { - dprintk(VIDC_ERR, "Wait interrupted or timeout: %d\n", - SYS_MSG_INDEX(RELEASE_RESOURCE_DONE)); - rc = -EIO; - } -release_ocmem_failed: - return rc; -} - static int msm_comm_init_core_done(struct msm_vidc_inst *inst) { struct msm_vidc_core *core = inst->core; @@ -1588,8 +1594,8 @@ static int msm_comm_init_core_done(struct msm_vidc_inst *inst) &core->completions[SYS_MSG_INDEX(SYS_INIT_DONE)], msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); if (!rc) { - dprintk(VIDC_ERR, "Wait interrupted or timeout: %d\n", - SYS_MSG_INDEX(SYS_INIT_DONE)); + dprintk(VIDC_ERR, "%s: Wait interrupted or timeout: %d\n", + __func__, SYS_MSG_INDEX(SYS_INIT_DONE)); rc = -EIO; goto exit; } else { @@ -1636,6 +1642,7 @@ static int msm_comm_init_core(struct msm_vidc_inst *inst) goto fail_load_fw; } core->state = VIDC_CORE_LOADED; + dprintk(VIDC_DBG, "Firmware downloaded\n"); } mutex_unlock(&core->lock); @@ -1673,7 +1680,6 @@ static int msm_comm_init_core(struct msm_vidc_inst *inst) static int msm_vidc_deinit_core(struct msm_vidc_inst *inst) { - int rc = 0; struct msm_vidc_core *core; struct hfi_device *hdev; @@ -1697,38 +1703,27 @@ static int msm_vidc_deinit_core(struct msm_vidc_inst *inst) mutex_lock(&core->lock); if (list_empty(&core->instances)) { - if (core->state > VIDC_CORE_INIT) { - if (core->resources.ocmem_size) { - if (inst->state != MSM_VIDC_CORE_INVALID) - msm_comm_unset_ocmem(core); - call_hfi_op(hdev, free_ocmem, - hdev->hfi_device_data); - } - dprintk(VIDC_DBG, "Calling vidc_hal_core_release\n"); - rc = call_hfi_op(hdev, core_release, - hdev->hfi_device_data); - if (rc) { - dprintk(VIDC_ERR, - "Failed to release core, id = %d\n", - core->id); - goto exit; - } - } + cancel_delayed_work(&core->fw_unload_work); - core->state = VIDC_CORE_UNINIT; + /* + * Delay unloading of firmware. This is useful + * in avoiding firmware download delays in cases where we + * will have a burst of back to back video playback sessions + * e.g. thumbnail generation. + */ + schedule_delayed_work(&core->fw_unload_work, + msecs_to_jiffies(core->state == VIDC_CORE_INVALID ? + 0 : msm_vidc_firmware_unload_delay)); - call_hfi_op(hdev, unload_fw, hdev->hfi_device_data); - if (core->resources.ocmem_size) - msm_comm_unvote_buses(core, DDR_MEM|OCMEM_MEM); - else - msm_comm_unvote_buses(core, DDR_MEM); + dprintk(VIDC_DBG, "firmware unload delayed by %u ms\n", + core->state == VIDC_CORE_INVALID ? + 0 : msm_vidc_firmware_unload_delay); } core_already_uninited: change_inst_state(inst, MSM_VIDC_CORE_UNINIT); -exit: mutex_unlock(&core->lock); - return rc; + return 0; } int msm_comm_force_cleanup(struct msm_vidc_inst *inst) @@ -1879,7 +1874,6 @@ static int msm_vidc_load_resources(int flipped_state, int rc = 0; struct hfi_device *hdev; int num_mbs_per_sec = 0; - int height, width; if (!inst || !inst->core || !inst->core->device) { dprintk(VIDC_ERR, "%s invalid parameters", __func__); @@ -1906,7 +1900,7 @@ static int msm_vidc_load_resources(int flipped_state, num_mbs_per_sec, inst->core->resources.max_load); msm_vidc_print_running_insts(inst->core); inst->state = MSM_VIDC_CORE_INVALID; - msm_comm_recover_from_session_error(inst); + msm_comm_kill_session(inst); return -EBUSY; } @@ -1916,29 +1910,6 @@ static int msm_vidc_load_resources(int flipped_state, inst, inst->state); goto exit; } - if (inst->core->resources.ocmem_size) { - height = max(inst->prop.height[CAPTURE_PORT], - inst->prop.height[OUTPUT_PORT]); - width = max(inst->prop.width[CAPTURE_PORT], - inst->prop.width[OUTPUT_PORT]); - rc = msm_comm_scale_bus(inst->core, inst->session_type, - OCMEM_MEM); - if (!rc) { - mutex_lock(&inst->core->lock); - rc = call_hfi_op(hdev, alloc_ocmem, - hdev->hfi_device_data, - inst->core->resources.ocmem_size); - mutex_unlock(&inst->core->lock); - if (rc) { - dprintk(VIDC_WARN, - "Failed to allocate OCMEM. Performance will be impacted\n"); - msm_comm_unvote_buses(inst->core, OCMEM_MEM); - } - } else { - dprintk(VIDC_WARN, - "Failed to vote for OCMEM BW. Performance will be impacted\n"); - } - } rc = call_hfi_op(hdev, session_load_res, (void *) inst->session); if (rc) { dprintk(VIDC_ERR, @@ -2081,6 +2052,33 @@ static int msm_comm_session_close(int flipped_state, return rc; } +int msm_comm_suspend(int core_id) +{ + struct hfi_device *hdev; + struct msm_vidc_core *core; + int rc = 0; + + core = get_vidc_core(core_id); + if (!core) { + dprintk(VIDC_ERR, + "%s: Failed to find core for core_id = %d\n", + __func__, core_id); + return -EINVAL; + } + + hdev = (struct hfi_device *)core->device; + if (!hdev) { + dprintk(VIDC_ERR, "%s Invalid device handle\n", __func__); + return -EINVAL; + } + + rc = call_hfi_op(hdev, suspend, hdev->hfi_device_data); + if (rc) + dprintk(VIDC_WARN, "Failed to suspend\n"); + + return rc; +} + static int get_flipped_state(int present_state, int desired_state) { @@ -2695,10 +2693,11 @@ int msm_comm_try_get_bufreqs(struct msm_vidc_inst *inst) msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); if (!rc) { dprintk(VIDC_ERR, - "Wait interrupted or timeout: %d\n", + "%s: Wait interrupted or timeout[%u]: %d\n", + __func__, (u32)inst->session, SESSION_MSG_INDEX(SESSION_PROPERTY_INFO)); inst->state = MSM_VIDC_CORE_INVALID; - msm_comm_recover_from_session_error(inst); + msm_comm_kill_session(inst); rc = -EIO; goto exit; } @@ -2816,11 +2815,9 @@ int msm_comm_release_scratch_buffers(struct msm_vidc_inst *inst) rc = wait_for_sess_signal_receipt(inst, SESSION_RELEASE_BUFFER_DONE); if (rc) { - mutex_lock(&inst->sync_lock); - inst->state = MSM_VIDC_CORE_INVALID; - mutex_unlock(&inst->sync_lock); - msm_comm_recover_from_session_error( - inst); + change_inst_state(inst, + MSM_VIDC_CORE_INVALID); + msm_comm_kill_session(inst); } mutex_lock(&inst->lock); } @@ -2887,11 +2884,9 @@ int msm_comm_release_persist_buffers(struct msm_vidc_inst *inst) rc = wait_for_sess_signal_receipt(inst, SESSION_RELEASE_BUFFER_DONE); if (rc) { - mutex_lock(&inst->sync_lock); - inst->state = MSM_VIDC_CORE_INVALID; - mutex_unlock(&inst->sync_lock); - msm_comm_recover_from_session_error( - inst); + change_inst_state(inst, + MSM_VIDC_CORE_INVALID); + msm_comm_kill_session(inst); } mutex_lock(&inst->lock); } @@ -3112,6 +3107,40 @@ void msm_comm_flush_dynamic_buffers(struct msm_vidc_inst *inst) mutex_unlock(&inst->lock); } +void msm_comm_flush_pending_dynamic_buffers(struct msm_vidc_inst *inst) +{ + struct buffer_info *binfo = NULL; + struct list_head *list = NULL; + + if (!inst) + return; + + if (inst->buffer_mode_set[CAPTURE_PORT] != HAL_BUFFER_MODE_DYNAMIC) + return; + + if (list_empty(&inst->pendingq) || list_empty(&inst->registered_bufs)) + return; + + list = &inst->registered_bufs; + + /* + * Dynamic Buffer mode - Since pendingq is not empty + * no output buffers have been sent to firmware yet. + * Hence remove reference to all pendingq o/p buffers + * before flushing them. + */ + + list_for_each_entry(binfo, list, list) { + if (binfo && binfo->type == + V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE) { + dprintk(VIDC_DBG, + "%s: binfo = %p device_addr = 0x%pa\n", + __func__, binfo, &binfo->device_addr[0]); + buf_ref_put(inst, binfo); + } + } +} + int msm_comm_flush(struct msm_vidc_inst *inst, u32 flags) { int rc = 0; @@ -3177,6 +3206,8 @@ int msm_comm_flush(struct msm_vidc_inst *inst, u32 flags) } else { if (!list_empty(&inst->pendingq)) { + msm_comm_flush_pending_dynamic_buffers(inst); + /*If flush is called after queueing buffers but before * streamon driver should flush the pending queue*/ list_for_each_safe(ptr, next, &inst->pendingq) { @@ -3242,12 +3273,6 @@ enum hal_extradata_id msm_comm_get_hal_extradata_index( case V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI: ret = HAL_EXTRADATA_RECOVERY_POINT_SEI; break; - case V4L2_MPEG_VIDC_EXTRADATA_CLOSED_CAPTION_UD: - ret = HAL_EXTRADATA_CLOSED_CAPTION_UD; - break; - case V4L2_MPEG_VIDC_EXTRADATA_AFD_UD: - ret = HAL_EXTRADATA_AFD_UD; - break; case V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO: ret = HAL_EXTRADATA_MULTISLICE_INFO; break; @@ -3275,6 +3300,9 @@ enum hal_extradata_id msm_comm_get_hal_extradata_index( case V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI: ret = HAL_EXTRADATA_METADATA_MBI; break; + case V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA: + ret = HAL_EXTRADATA_STREAM_USERDATA; + break; default: dprintk(VIDC_WARN, "Extradata not found: %d\n", index); break; @@ -3445,15 +3473,15 @@ int msm_vidc_check_session_supported(struct msm_vidc_inst *inst) capability->height.min); rc = -ENOTSUPP; } + if (!rc && (inst->prop.width[CAPTURE_PORT] > capability->width.max)) { dprintk(VIDC_ERR, - "Unsupported width = %u supported max width = %u\n", + "Unsupported width = %u supported max width = %u", inst->prop.width[CAPTURE_PORT], capability->width.max); rc = -ENOTSUPP; } - if (!rc && (inst->prop.height[CAPTURE_PORT] * inst->prop.width[CAPTURE_PORT] > capability->width.max * capability->height.max)) { @@ -3466,14 +3494,32 @@ int msm_vidc_check_session_supported(struct msm_vidc_inst *inst) } } if (rc) { - mutex_lock(&inst->sync_lock); - inst->state = MSM_VIDC_CORE_INVALID; - mutex_unlock(&inst->sync_lock); - msm_vidc_queue_v4l2_event(inst, V4L2_EVENT_MSM_VIDC_SYS_ERROR); + change_inst_state(inst, MSM_VIDC_CORE_INVALID); + msm_vidc_queue_v4l2_event(inst, + V4L2_EVENT_MSM_VIDC_HW_OVERLOAD); + dprintk(VIDC_WARN, + "%s: Hardware is overloaded\n", __func__); + wake_up(&inst->kernel_event_queue); } return rc; } +static void msm_comm_generate_session_error(struct msm_vidc_inst *inst) +{ + enum command_response cmd = SESSION_ERROR; + struct msm_vidc_cb_cmd_done response = {0}; + + dprintk(VIDC_WARN, "msm_comm_generate_session_error\n"); + if (!inst || !inst->core) { + dprintk(VIDC_ERR, "%s: invalid input parameters\n", __func__); + return; + } + + response.session_id = (u32)inst; + response.status = VIDC_ERR_FAIL; + handle_session_error(cmd, (void *)&response); +} + static void msm_comm_generate_sys_error(struct msm_vidc_inst *inst) { struct msm_vidc_core *core; @@ -3488,42 +3534,55 @@ static void msm_comm_generate_sys_error(struct msm_vidc_inst *inst) handle_sys_error(cmd, (void *) &response); } -int msm_comm_recover_from_session_error(struct msm_vidc_inst *inst) + +int msm_comm_kill_session(struct msm_vidc_inst *inst) { - struct hfi_device *hdev; int rc = 0; if (!inst || !inst->core || !inst->core->device) { dprintk(VIDC_ERR, "%s: invalid input parameters", __func__); return -EINVAL; + } else if (!inst->session) { + /* There's no hfi session to kill */ + return 0; } - if (!inst->session || inst->state < MSM_VIDC_OPEN_DONE) { - dprintk(VIDC_WARN, - "No corresponding FW session. No need to send Abort"); - return rc; - } - hdev = inst->core->device; - - init_completion(&inst->completions[SESSION_MSG_INDEX - (SESSION_ABORT_DONE)]); - /* We have received session_error. Send session_abort to firmware - * to clean up and release the session + /* + * We're internally forcibly killing the session, if fw is aware of + * the session send session_abort to firmware to clean up and release + * the session, else just kill the session inside the driver. */ - rc = call_hfi_op(hdev, session_abort, (void *) inst->session); - if (rc) { - dprintk(VIDC_ERR, "session_abort failed rc: %d\n", rc); - return rc; + if (inst->state >= MSM_VIDC_OPEN_DONE && + inst->state < MSM_VIDC_CLOSE_DONE) { + struct hfi_device *hdev = inst->core->device; + int abort_completion = SESSION_MSG_INDEX(SESSION_ABORT_DONE); + + rc = call_hfi_op(hdev, session_abort, (void *) inst->session); + if (rc) { + dprintk(VIDC_ERR, "session_abort failed rc: %d\n", rc); + return rc; + } + + init_completion(&inst->completions[abort_completion]); + rc = wait_for_completion_timeout( + &inst->completions[abort_completion], + msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); + if (!rc) { + dprintk(VIDC_ERR, + "%s: Wait interrupted or timed out [%p]: %d\n", + __func__, inst, abort_completion); + msm_comm_generate_sys_error(inst); + } else { + change_inst_state(inst, MSM_VIDC_CLOSE_DONE); + } + } else { + dprintk(VIDC_WARN, + "Inactive session %p, triggering an internal session error\n", + inst); + msm_comm_generate_session_error(inst); + } - rc = wait_for_completion_timeout( - &inst->completions[SESSION_MSG_INDEX(SESSION_ABORT_DONE)], - msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); - if (!rc) { - dprintk(VIDC_ERR, "%s: Wait interrupted or timeout: %d\n", - __func__, SESSION_MSG_INDEX(SESSION_ABORT_DONE)); - msm_comm_generate_sys_error(inst); - } else - change_inst_state(inst, MSM_VIDC_CLOSE_DONE); + return rc; } @@ -3608,3 +3667,45 @@ int msm_comm_smem_get_domain_partition(struct msm_vidc_inst *inst, return msm_smem_get_domain_partition(inst->mem_client, flags, buffer_type, domain_num, partition_num); } + +void msm_vidc_fw_unload_handler(struct work_struct *work) +{ + struct msm_vidc_core *core = NULL; + struct hfi_device *hdev = NULL; + int rc = 0; + + core = container_of(work, struct msm_vidc_core, fw_unload_work.work); + if (!core || !core->device) { + dprintk(VIDC_ERR, "%s - invalid work or core handle\n", + __func__); + return; + } + + hdev = core->device; + + mutex_lock(&core->lock); + if (list_empty(&core->instances) && + core->state != VIDC_CORE_UNINIT) { + if (core->state > VIDC_CORE_INIT) { + dprintk(VIDC_DBG, "Calling vidc_hal_core_release\n"); + rc = call_hfi_op(hdev, core_release, + hdev->hfi_device_data); + if (rc) { + dprintk(VIDC_ERR, + "Failed to release core, id = %d\n", + core->id); + return; + } + } + + core->state = VIDC_CORE_UNINIT; + + call_hfi_op(hdev, unload_fw, hdev->hfi_device_data); + dprintk(VIDC_DBG, "Firmware unloaded\n"); + if (core->resources.ocmem_size) + msm_comm_unvote_buses(core, DDR_MEM|OCMEM_MEM); + else + msm_comm_unvote_buses(core, DDR_MEM); + } + mutex_unlock(&core->lock); +} diff --git a/drivers/media/platform/msm/vidc/msm_vidc_common.h b/drivers/media/platform/msm/vidc/msm_vidc_common.h index da7142467bb3..1e862781eec0 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_common.h +++ b/drivers/media/platform/msm/vidc/msm_vidc_common.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -40,6 +40,7 @@ int msm_comm_release_scratch_buffers(struct msm_vidc_inst *inst); int msm_comm_release_persist_buffers(struct msm_vidc_inst *inst); int msm_comm_release_output_buffers(struct msm_vidc_inst *inst); int msm_comm_force_cleanup(struct msm_vidc_inst *inst); +int msm_comm_suspend(int core_id); enum hal_extradata_id msm_comm_get_hal_extradata_index( enum v4l2_mpeg_vidc_extradata index); int msm_comm_get_domain_partition(struct msm_vidc_inst *inst, u32 flags, @@ -51,7 +52,7 @@ struct hal_buffer_requirements *get_buff_req_buffer( V4L2_CTRL_DRIVER_PRIV(idx)) int msm_comm_check_scaling_supported(struct msm_vidc_inst *inst); -int msm_comm_recover_from_session_error(struct msm_vidc_inst *inst); +int msm_comm_kill_session(struct msm_vidc_inst *inst); enum multi_stream msm_comm_get_stream_output_mode(struct msm_vidc_inst *inst); enum hal_buffer msm_comm_get_hal_output_buffer(struct msm_vidc_inst *inst); struct msm_smem *msm_comm_smem_alloc(struct msm_vidc_inst *inst, diff --git a/drivers/media/platform/msm/vidc/msm_vidc_debug.c b/drivers/media/platform/msm/vidc/msm_vidc_debug.c index f272a3ecf7ac..ee91513546d2 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_debug.c +++ b/drivers/media/platform/msm/vidc/msm_vidc_debug.c @@ -21,6 +21,7 @@ int msm_fw_debug = 0x18; int msm_fw_debug_mode = 0x1; int msm_fw_low_power_mode = 0x1; int msm_vidc_hw_rsp_timeout = 1000; +u32 msm_vidc_firmware_unload_delay = 15000; struct debug_buffer { char ptr[MAX_DBG_BUF_SIZE]; @@ -193,6 +194,12 @@ struct dentry *msm_vidc_debugfs_init_core(struct msm_vidc_core *core, dprintk(VIDC_ERR, "debugfs_create_file: fail\n"); goto failed_create_dir; } + if (!debugfs_create_u32("firmware_unload_delay", S_IRUGO | S_IWUSR, + parent, &msm_vidc_firmware_unload_delay)) { + dprintk(VIDC_ERR, + "debugfs_create_file: firmware_unload_delay fail\n"); + goto failed_create_dir; + } failed_create_dir: return dir; } @@ -249,8 +256,8 @@ static ssize_t inst_info_read(struct file *file, char __user *buf, inst->session_type == MSM_VIDC_ENCODER ? "Encoder" : "Decoder"); write_str(&dbg_buf, "===============================\n"); write_str(&dbg_buf, "core: 0x%p\n", inst->core); - write_str(&dbg_buf, "height: %d\n", inst->prop.height); - write_str(&dbg_buf, "width: %d\n", inst->prop.width); + write_str(&dbg_buf, "height: %d\n", inst->prop.height[CAPTURE_PORT]); + write_str(&dbg_buf, "width: %d\n", inst->prop.width[CAPTURE_PORT]); write_str(&dbg_buf, "fps: %d\n", inst->prop.fps); write_str(&dbg_buf, "state: %d\n", inst->state); write_str(&dbg_buf, "-----------Formats-------------\n"); diff --git a/drivers/media/platform/msm/vidc/msm_vidc_debug.h b/drivers/media/platform/msm/vidc/msm_vidc_debug.h index 83eb3b94646f..98cf21f43fbb 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_debug.h +++ b/drivers/media/platform/msm/vidc/msm_vidc_debug.h @@ -53,6 +53,7 @@ extern int msm_fw_debug; extern int msm_fw_debug_mode; extern int msm_fw_low_power_mode; extern int msm_vidc_hw_rsp_timeout; +extern u32 msm_vidc_firmware_unload_delay; #define dprintk(__level, __fmt, arg...) \ do { \ diff --git a/drivers/media/platform/msm/vidc/msm_vidc_internal.h b/drivers/media/platform/msm/vidc/msm_vidc_internal.h index 1677e57a9b0c..e655d7166bdb 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_internal.h +++ b/drivers/media/platform/msm/vidc/msm_vidc_internal.h @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include @@ -193,8 +194,10 @@ struct msm_vidc_core_capability { struct hal_capability_supported scale_y; struct hal_capability_supported ltr_count; struct hal_capability_supported hier_p; + struct hal_capability_supported mbs_per_frame; u32 capability_set; enum buffer_mode_type buffer_mode[MAX_PORT_NUM]; + u32 buffer_size_limit; }; struct msm_vidc_core { @@ -212,6 +215,7 @@ struct msm_vidc_core { struct msm_vidc_platform_resources resources; u32 enc_codec_supported; u32 dec_codec_supported; + struct delayed_work fw_unload_work; }; struct msm_vidc_inst { @@ -310,4 +314,5 @@ int qbuf_dynamic_buf(struct msm_vidc_inst *inst, struct buffer_info *binfo); int unmap_and_deregister_buf(struct msm_vidc_inst *inst, struct buffer_info *binfo); +void msm_vidc_fw_unload_handler(struct work_struct *work); #endif diff --git a/drivers/media/platform/msm/vidc/msm_vidc_res_parse.c b/drivers/media/platform/msm/vidc/msm_vidc_res_parse.c index 9ab9b5dd1036..c8a7a9c2207b 100644 --- a/drivers/media/platform/msm/vidc/msm_vidc_res_parse.c +++ b/drivers/media/platform/msm/vidc/msm_vidc_res_parse.c @@ -590,9 +590,11 @@ int read_platform_resources_from_dt( kres = platform_get_resource(pdev, IORESOURCE_IRQ, 0); res->irq = kres ? kres->start : -1; - of_property_read_u32(pdev->dev.of_node, - "qcom,ocmem-size", &res->ocmem_size); - + rc = of_property_read_u32(pdev->dev.of_node, + "qcom,ocmem-size", &res->ocmem_size); + if (rc) { + dprintk(VIDC_INFO, "Failed to read ocmem size: %d\n", rc); + } rc = msm_vidc_load_freq_table(res); if (rc) { dprintk(VIDC_ERR, "Failed to load freq table: %d\n", rc); diff --git a/drivers/media/platform/msm/vidc/q6_hfi.c b/drivers/media/platform/msm/vidc/q6_hfi.c index 486d740acbe5..4bc534cdfae4 100644 --- a/drivers/media/platform/msm/vidc/q6_hfi.c +++ b/drivers/media/platform/msm/vidc/q6_hfi.c @@ -1033,6 +1033,11 @@ static int q6_hfi_session_set_property(void *sess, dprintk(VIDC_ERR, "Invalid Params"); return -EINVAL; } + if (ptype == HAL_PARAM_VDEC_CONTINUE_DATA_TRANSFER) { + dprintk(VIDC_WARN, "Smoothstreaming is not supported\n"); + return -ENOTSUPP; + } + dev = session->device; dprintk(VIDC_DBG, "in set_prop,with prop id: 0x%x", ptype); @@ -1181,14 +1186,6 @@ static int q6_hfi_session_get_property(void *sess, return 0; } -static int q6_hfi_unset_ocmem(void *dev) -{ - (void)dev; - - /* Q6 does not support ocmem */ - return -EINVAL; -} - static int q6_hfi_iommu_get_domain_partition(void *dev, u32 flags, u32 buffer_type, int *domain, int *partition) { @@ -1369,7 +1366,6 @@ static void q6_init_hfi_callbacks(struct hfi_device *hdev) hdev->session_flush = q6_hfi_session_flush; hdev->session_set_property = q6_hfi_session_set_property; hdev->session_get_property = q6_hfi_session_get_property; - hdev->unset_ocmem = q6_hfi_unset_ocmem; hdev->iommu_get_domain_partition = q6_hfi_iommu_get_domain_partition; hdev->load_fw = q6_hfi_load_fw; hdev->unload_fw = q6_hfi_unload_fw; diff --git a/drivers/media/platform/msm/vidc/venus_hfi.c b/drivers/media/platform/msm/vidc/venus_hfi.c index 2932bf9eacd2..9e0bc40a3da6 100644 --- a/drivers/media/platform/msm/vidc/venus_hfi.c +++ b/drivers/media/platform/msm/vidc/venus_hfi.c @@ -31,6 +31,7 @@ #include "vidc_hfi_io.h" #include "msm_vidc_debug.h" #include +#include #define FIRMWARE_SIZE 0X00A00000 #define REG_ADDR_OFFSET_BITMASK 0x000FFFFF @@ -910,50 +911,130 @@ static int venus_hfi_core_release_resource(void *device, return rc; } -static int venus_hfi_set_ocmem(void *dev, struct ocmem_buf *ocmem, int locked) +static DECLARE_COMPLETION(pc_prep_done); +static DECLARE_COMPLETION(release_resources_done); + +static int __alloc_ocmem(struct venus_hfi_device *device) +{ + int rc = 0; + struct ocmem_buf *ocmem_buffer; + unsigned long size; + + if (!device || !device->res) { + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); + return -EINVAL; + } + + size = device->res->ocmem_size; + if (!size) + return rc; + + ocmem_buffer = device->resources.ocmem.buf; + if (!ocmem_buffer || ocmem_buffer->len < size) { + ocmem_buffer = ocmem_allocate(OCMEM_VIDEO, size); + if (IS_ERR_OR_NULL(ocmem_buffer)) { + dprintk(VIDC_ERR, + "ocmem_allocate failed: %lu\n", + (unsigned long)ocmem_buffer); + rc = -ENOMEM; + device->resources.ocmem.buf = NULL; + goto ocmem_alloc_failed; + } + device->resources.ocmem.buf = ocmem_buffer; + } else { + dprintk(VIDC_DBG, + "OCMEM is enough. reqd: %lu, available: %lu\n", + size, ocmem_buffer->len); + } +ocmem_alloc_failed: + return rc; +} + +static int __free_ocmem(struct venus_hfi_device *device) +{ + int rc = 0; + + if (!device || !device->res) { + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); + return -EINVAL; + } + + if (!device->res->ocmem_size) + return rc; + + if (device->resources.ocmem.buf) { + rc = ocmem_free(OCMEM_VIDEO, device->resources.ocmem.buf); + if (rc) + dprintk(VIDC_ERR, "Failed to free ocmem\n"); + device->resources.ocmem.buf = NULL; + } + return rc; +} + +static int __set_ocmem(struct venus_hfi_device *device, bool locked) { struct vidc_resource_hdr rhdr; - struct venus_hfi_device *device = dev; int rc = 0; - if (!device || !ocmem) { - dprintk(VIDC_ERR, "Invalid params, core:%p, ocmem: %p\n", - device, ocmem); + struct on_chip_mem *ocmem; + + if (!device) { + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); + return -EINVAL; + } + + ocmem = &device->resources.ocmem; + if (!ocmem->buf) { + dprintk(VIDC_ERR, "Invalid params, ocmem_buffer: 0x%p\n", + ocmem->buf); return -EINVAL; } + rhdr.resource_id = VIDC_RESOURCE_OCMEM; - rhdr.resource_handle = (u32) &device->resources.ocmem; - rhdr.size = ocmem->len; - rc = venus_hfi_core_set_resource(device, &rhdr, ocmem, locked); + /* + * This handle is just used as a cookie and not(cannot be) + * accessed by fw + */ + rhdr.resource_handle = (u32)(unsigned long)ocmem; + rhdr.size = ocmem->buf->len; + rc = venus_hfi_core_set_resource(device, &rhdr, ocmem->buf, locked); if (rc) { dprintk(VIDC_ERR, "Failed to set OCMEM on driver\n"); goto ocmem_set_failed; } dprintk(VIDC_DBG, "OCMEM set, addr = %lx, size: %ld\n", - ocmem->addr, ocmem->len); + ocmem->buf->addr, ocmem->buf->len); ocmem_set_failed: return rc; } -static int venus_hfi_unset_ocmem(void *dev) +static int __unset_ocmem(struct venus_hfi_device *device) { struct vidc_resource_hdr rhdr; - struct venus_hfi_device *device = dev; int rc = 0; if (!device) { - dprintk(VIDC_ERR, "%s Invalid params, device:%p\n", - __func__, device); + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); rc = -EINVAL; goto ocmem_unset_failed; } + if (!device->resources.ocmem.buf) { - dprintk(VIDC_INFO, "%s Trying to free OCMEM which is not set", - __func__); + dprintk(VIDC_INFO, + "%s Trying to unset OCMEM which is not allocated\n", + __func__); rc = -EINVAL; goto ocmem_unset_failed; } rhdr.resource_id = VIDC_RESOURCE_OCMEM; - rhdr.resource_handle = (u32) &device->resources.ocmem; + /* + * This handle is just used as a cookie and not(cannot be) + * accessed by fw + */ + rhdr.resource_handle = (u32)(unsigned long)&device->resources.ocmem; rc = venus_hfi_core_release_resource(device, &rhdr); if (rc) dprintk(VIDC_ERR, "Failed to unset OCMEM on driver\n"); @@ -961,75 +1042,78 @@ static int venus_hfi_unset_ocmem(void *dev) return rc; } -static int __alloc_ocmem(void *dev, unsigned long size, int locked) +static int __alloc_set_ocmem(struct venus_hfi_device *device, bool locked) { int rc = 0; - struct ocmem_buf *ocmem_buffer; - struct venus_hfi_device *device = dev; - if (device && !device->res->ocmem_size) - return rc; - if (!device || !size) { - dprintk(VIDC_ERR, "%s Invalid param, core: %p, size: %lu\n", - __func__, device, size); + + if (!device || !device->res) { + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); return -EINVAL; } - ocmem_buffer = device->resources.ocmem.buf; - if (!ocmem_buffer || - ocmem_buffer->len < size) { - ocmem_buffer = ocmem_allocate(OCMEM_VIDEO, size); - if (IS_ERR_OR_NULL(ocmem_buffer)) { - dprintk(VIDC_ERR, - "ocmem_allocate_nb failed: %d\n", - (u32) ocmem_buffer); - rc = -ENOMEM; - goto ocmem_alloc_failed; - } - device->resources.ocmem.buf = ocmem_buffer; - rc = venus_hfi_set_ocmem(device, ocmem_buffer, locked); - if (rc) { - dprintk(VIDC_ERR, "Failed to set ocmem: %d\n", rc); - goto ocmem_set_failed; - } - device->ocmem_size = size; - } else - dprintk(VIDC_DBG, - "OCMEM is enough. reqd: %lu, available: %lu\n", - size, ocmem_buffer->len); + if (!device->res->ocmem_size) + return rc; + rc = __alloc_ocmem(device); + if (rc) { + dprintk(VIDC_ERR, "Failed to allocate ocmem: %d\n", rc); + goto ocmem_alloc_failed; + } + rc = __set_ocmem(device, locked); + if (rc) { + dprintk(VIDC_ERR, "Failed to set ocmem: %d\n", rc); + goto ocmem_set_failed; + } return rc; ocmem_set_failed: - ocmem_free(OCMEM_VIDEO, device->resources.ocmem.buf); - device->resources.ocmem.buf = NULL; + __free_ocmem(device); ocmem_alloc_failed: return rc; } -static int venus_hfi_alloc_ocmem(void *dev, unsigned long size) +static int __unset_free_ocmem(struct venus_hfi_device *device) { - return __alloc_ocmem(dev, size, true); -} - -static int venus_hfi_free_ocmem(void *dev) -{ - struct venus_hfi_device *device = dev; int rc = 0; - - if (!device) { - dprintk(VIDC_ERR, "%s invalid device handle %p", - __func__, device); + if (!device || !device->res) { + dprintk(VIDC_ERR, "%s Invalid param, device: 0x%p\n", + __func__, device); return -EINVAL; } if (!device->res->ocmem_size) return rc; - if (device->resources.ocmem.buf) { - rc = ocmem_free(OCMEM_VIDEO, device->resources.ocmem.buf); - if (rc) - dprintk(VIDC_ERR, "Failed to free ocmem\n"); - device->resources.ocmem.buf = NULL; + if (!device->res->ocmem_size) + return rc; + + init_completion(&release_resources_done); + rc = __unset_ocmem(device); + if (rc) { + dprintk(VIDC_ERR, "Failed to unset OCMEM during PC %d\n", rc); + goto ocmem_unset_failed; } + rc = wait_for_completion_timeout(&release_resources_done, + msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); + if (!rc) { + dprintk(VIDC_ERR, + "Wait interrupted or timeout for RELEASE_RESOURCES: %d\n", + rc); + rc = -EIO; + goto release_resources_failed; + } + + rc = __free_ocmem(device); + if (rc) { + dprintk(VIDC_ERR, "Failed to free OCMEM during PC\n"); + goto ocmem_free_failed; + } + return rc; + +ocmem_free_failed: + __set_ocmem(device, true); +release_resources_failed: +ocmem_unset_failed: return rc; } @@ -1140,9 +1224,6 @@ static inline void venus_hfi_clk_disable(struct venus_hfi_device *device) --device->clk_cnt; } -static DECLARE_COMPLETION(pc_prep_done); -static DECLARE_COMPLETION(release_resources_done); - static int venus_hfi_halt_axi(struct venus_hfi_device *device) { u32 reg; @@ -1241,12 +1322,6 @@ static inline int venus_hfi_power_on(struct venus_hfi_device *device) goto err_enable_gdsc; } - rc = venus_hfi_iommu_attach(device); - if (rc) { - dprintk(VIDC_ERR, "Failed to attach iommu after power on"); - goto err_iommu_attach; - } - if (device->clk_state == DISABLED_UNPREPARED) rc = venus_hfi_prepare_enable_clks(device); else if (device->clk_state == DISABLED_PREPARED) @@ -1257,6 +1332,11 @@ static inline int venus_hfi_power_on(struct venus_hfi_device *device) goto err_enable_clk; } + rc = venus_hfi_iommu_attach(device); + if (rc) { + dprintk(VIDC_ERR, "Failed to attach iommu after power on"); + goto err_iommu_attach; + } /* * Re-program all of the registers that get reset as a result of @@ -1298,11 +1378,12 @@ static inline int venus_hfi_power_on(struct venus_hfi_device *device) * of alloc_ocmem */ WARN_ON(!mutex_is_locked(&device->write_lock)); - rc = __alloc_ocmem(device, device->ocmem_size, false); + rc = __alloc_set_ocmem(device, false); if (rc) { dprintk(VIDC_ERR, "Failed to allocate OCMEM"); goto err_alloc_ocmem; } + device->power_enabled = true; ++device->pwr_cnt; dprintk(VIDC_INFO, "resuming from power collapse\n"); @@ -1311,10 +1392,10 @@ static inline int venus_hfi_power_on(struct venus_hfi_device *device) err_reset_core: venus_hfi_tzbsp_set_video_state(TZBSP_VIDEO_STATE_SUSPEND); err_set_video_state: - venus_hfi_clk_disable(device); -err_enable_clk: venus_hfi_iommu_detach(device); err_iommu_attach: + venus_hfi_clk_disable(device); +err_enable_clk: regulator_disable(device->gdsc); err_enable_gdsc: if (device->res->ocmem_size) @@ -1425,6 +1506,7 @@ static int venus_hfi_iface_cmdq_write_nolock(struct venus_hfi_device *device, void *pkt) { u32 rx_req_is_set = 0; + struct vidc_hal_cmd_pkt_hdr *cmd_packet; struct vidc_iface_q_info *q_info; int result = -EPERM; @@ -1452,6 +1534,12 @@ static int venus_hfi_iface_cmdq_write_nolock(struct venus_hfi_device *device, goto err_q_null; } + cmd_packet = (struct vidc_hal_cmd_pkt_hdr *)pkt; + if ((cmd_packet->packet_type != HFI_CMD_SYS_PC_PREP) && + (cmd_packet->packet_type != HFI_CMD_SYS_RELEASE_RESOURCE)) { + device->pc_num_cmds++; + } + if (!venus_hfi_write_queue(q_info, (u8 *)pkt, &rx_req_is_set)) { WARN(!mutex_is_locked(&device->clk_pwr_lock), "Clock/power lock must be acquired"); @@ -1946,13 +2034,26 @@ static int venus_hfi_core_release(void *device) dprintk(VIDC_ERR, "invalid device"); return -ENODEV; } - if (dev->hal_client) { mutex_lock(&dev->clk_pwr_lock); rc = venus_hfi_clk_gating_off(device); if (rc) { dprintk(VIDC_ERR, - "%s : Clock enable failed\n", __func__); + "%s : Clock enable failed\n", __func__); + mutex_unlock(&dev->clk_pwr_lock); + return -EIO; + } + mutex_unlock(&dev->clk_pwr_lock); + rc = __unset_free_ocmem(dev); + if (rc) + dprintk(VIDC_ERR, + "Failed to unset and free OCMEM in core release, rc : %d\n", + rc); + mutex_lock(&dev->clk_pwr_lock); + rc = venus_hfi_clk_gating_off(device); + if (rc) { + dprintk(VIDC_ERR, + "%s : Clock enable failed\n", __func__); mutex_unlock(&dev->clk_pwr_lock); return -EIO; } @@ -1963,6 +2064,7 @@ static int venus_hfi_core_release(void *device) dev->intr_status = 0; mutex_unlock(&dev->clk_pwr_lock); } + VENUS_SET_STATE(dev, VENUS_STATE_DEINIT); dprintk(VIDC_INFO, "HAL exited\n"); @@ -2755,47 +2857,6 @@ static int venus_hfi_core_pc_prep(void *device) return rc; } -static int venus_hfi_unset_free_ocmem(struct venus_hfi_device *device) -{ - int rc = 0; - - if (!device) { - dprintk(VIDC_ERR, "Invalid param: %p\n", device); - return -EINVAL; - } - if (!device->res->ocmem_size) - return rc; - - init_completion(&release_resources_done); - rc = venus_hfi_unset_ocmem(device); - if (rc) { - dprintk(VIDC_ERR, "Failed to unset OCMEM during PC %d\n", rc); - goto ocmem_unset_failed; - } - rc = wait_for_completion_timeout(&release_resources_done, - msecs_to_jiffies(msm_vidc_hw_rsp_timeout)); - if (!rc) { - dprintk(VIDC_ERR, - "Wait interrupted or timeout for RELEASE_RESOURCES: %d\n", - rc); - rc = -EIO; - goto release_resources_failed; - } - - rc = venus_hfi_free_ocmem(device); - if (rc) { - dprintk(VIDC_ERR, "Failed to free OCMEM during PC\n"); - goto ocmem_free_failed; - } - return rc; - -ocmem_free_failed: - venus_hfi_alloc_ocmem(device, device->ocmem_size); -release_resources_failed: -ocmem_unset_failed: - return rc; -} - static int venus_hfi_prepare_pc(struct venus_hfi_device *device) { int rc = 0; @@ -2822,44 +2883,90 @@ static int venus_hfi_prepare_pc(struct venus_hfi_device *device) static void venus_hfi_pm_hndlr(struct work_struct *work) { int rc = 0; + u32 ctrl_status = 0; struct venus_hfi_device *device = list_first_entry( &hal_ctxt.dev_head, struct venus_hfi_device, list); + + if (!device) { + dprintk(VIDC_ERR, "%s: NULL device\n", __func__); + return; + } + mutex_lock(&device->clk_pwr_lock); if (device->clk_state == ENABLED_PREPARED || !device->power_enabled) { dprintk(VIDC_DBG, "Clocks status: %d, Power status: %d, ignore power off\n", device->clk_state, device->power_enabled); - goto clks_enabled; + mutex_unlock(&device->clk_pwr_lock); + return; } + device->pc_num_cmds = 0; mutex_unlock(&device->clk_pwr_lock); - rc = venus_hfi_unset_free_ocmem(device); + + rc = __unset_free_ocmem(device); if (rc) { dprintk(VIDC_ERR, - "Failed to unset and free OCMEM for PC %d\n", - rc); + "Failed to unset and free OCMEM for PC, rc : %d\n", rc); return; } rc = venus_hfi_prepare_pc(device); if (rc) { - dprintk(VIDC_ERR, "Failed to prepare for PC %d\n", rc); - venus_hfi_alloc_ocmem(device, device->ocmem_size); + dprintk(VIDC_ERR, "Failed to prepare for PC, rc : %d\n", rc); + rc = __alloc_set_ocmem(device, true); + if (rc) + dprintk(VIDC_WARN, + "Failed to re-allocate OCMEM. Performance will be impacted\n"); return; } mutex_lock(&device->clk_pwr_lock); + if (device->pc_num_cmds) { + dprintk(VIDC_DBG, + "ignore power off due to client sent commands = %d\n", + device->pc_num_cmds); + goto skip_power_off; + } if (device->clk_state == ENABLED_PREPARED) { dprintk(VIDC_ERR, "Clocks are still enabled after PC_PREP_DONE, ignore power off"); - goto clks_enabled; + goto skip_power_off; } rc = venus_hfi_power_off(device); - if (rc) + if (rc) { dprintk(VIDC_ERR, "Failed venus power off"); -clks_enabled: + goto err_power_off; + } + mutex_unlock(&device->clk_pwr_lock); + return; + +err_power_off: +skip_power_off: + + /* Reset PC_READY bit as power_off is skipped, if set by Venus */ + ctrl_status = venus_hfi_read_register(device, VIDC_CPU_CS_SCIACMDARG0); + if (ctrl_status & VIDC_CPU_CS_SCIACMDARG0_HFI_CTRL_PC_READY) { + ctrl_status &= ~(VIDC_CPU_CS_SCIACMDARG0_HFI_CTRL_PC_READY); + venus_hfi_write_register(device, VIDC_CPU_CS_SCIACMDARG0, + ctrl_status, 0); + } + + /* Cancel pending delayed works if any */ + cancel_delayed_work(&venus_hfi_pm_work); + dprintk(VIDC_WARN, "Power off skipped (%d, %d)\n", + device->clk_state, device->pc_num_cmds); + + mutex_unlock(&device->clk_pwr_lock); + + rc = __alloc_set_ocmem(device, true); + if (rc) { + dprintk(VIDC_WARN, + "Failed to re-allocate OCMEM. Performance will be impacted\n"); + } + return; } static int venus_hfi_try_clk_gating(struct venus_hfi_device *device) @@ -2940,6 +3047,14 @@ static void venus_hfi_response_handler(struct venus_hfi_device *device) dprintk(VIDC_DBG, "Received HFI_MSG_SYS_RELEASE_RESOURCE\n"); complete(&release_resources_done); + } else if (rc == HFI_MSG_SYS_INIT_DONE) { + int ret = 0; + dprintk(VIDC_DBG, + "Received HFI_MSG_SYS_INIT_DONE\n"); + ret = __alloc_set_ocmem(device, true); + if (ret) + dprintk(VIDC_WARN, + "Failed to allocate OCMEM. Performance will be impacted\n"); } } while (!venus_hfi_iface_dbgq_read(device, packet)) { @@ -3359,59 +3474,6 @@ static int venus_hfi_init_bus(struct venus_hfi_device *device) return -EINVAL; } -static int venus_hfi_ocmem_notify_handler(struct notifier_block *this, - unsigned long event, void *data) -{ - struct ocmem_buf *buff = data; - struct venus_hfi_device *device; - struct venus_resources *resources; - struct on_chip_mem *ocmem; - int rc = NOTIFY_DONE; - if (event == OCMEM_ALLOC_GROW) { - ocmem = container_of(this, struct on_chip_mem, vidc_ocmem_nb); - if (!ocmem) { - dprintk(VIDC_ERR, "Wrong handler passed\n"); - rc = NOTIFY_BAD; - goto err_ocmem_notify; - } - resources = container_of(ocmem, - struct venus_resources, ocmem); - device = container_of(resources, - struct venus_hfi_device, resources); - if (venus_hfi_set_ocmem(device, buff, 1)) { - dprintk(VIDC_ERR, "Failed to set ocmem: %d\n", rc); - goto err_ocmem_notify; - } - rc = NOTIFY_OK; - } - -err_ocmem_notify: - return rc; -} - -static void venus_hfi_ocmem_init(struct venus_hfi_device *device) -{ - struct on_chip_mem *ocmem; - - ocmem = &device->resources.ocmem; - ocmem->vidc_ocmem_nb.notifier_call = venus_hfi_ocmem_notify_handler; - ocmem->handle = - ocmem_notifier_register(OCMEM_VIDEO, &ocmem->vidc_ocmem_nb); - if (IS_ERR_OR_NULL(ocmem->handle)) { - dprintk(VIDC_WARN, - "Failed to register OCMEM notifier. Performance might be impacted\n"); - ocmem->handle = NULL; - } -} - -static void venus_hfi_deinit_ocmem(struct venus_hfi_device *device) -{ - if (device->resources.ocmem.handle) - ocmem_notifier_unregister(device->resources.ocmem.handle, - &device->resources.ocmem.vidc_ocmem_nb); -} - - static int venus_hfi_init_resources(struct venus_hfi_device *device, struct msm_vidc_platform_resources *res) { @@ -3449,9 +3511,6 @@ static int venus_hfi_init_resources(struct venus_hfi_device *device, goto err_register_iommu_domain; } - if (res->ocmem_size) - venus_hfi_ocmem_init(device); - return rc; err_register_iommu_domain: @@ -3465,8 +3524,6 @@ static int venus_hfi_init_resources(struct venus_hfi_device *device, static void venus_hfi_deinit_resources(struct venus_hfi_device *device) { - if (device->res->ocmem_size) - venus_hfi_deinit_ocmem(device); venus_hfi_deregister_iommu_domains(device); venus_hfi_deinit_bus(device); venus_hfi_deinit_clocks(device); @@ -3537,6 +3594,25 @@ static int protect_cp_mem(struct venus_hfi_device *device) return rc; } +static int venus_hfi_suspend(void *dev) +{ + int rc = 0; + struct venus_hfi_device *device = (struct venus_hfi_device *) dev; + + if (!device) { + dprintk(VIDC_ERR, "%s invalid device\n", __func__); + return -EINVAL; + } + dprintk(VIDC_INFO, "%s\n", __func__); + + if (device->power_enabled) { + venus_hfi_try_clk_gating(device); + rc = flush_delayed_work(&venus_hfi_pm_work); + dprintk(VIDC_INFO, "%s flush delayed work %d\n", __func__, rc); + } + return 0; +} + static int venus_hfi_load_fw(void *dev) { int rc = 0; @@ -3549,62 +3625,58 @@ static int venus_hfi_load_fw(void *dev) } device->clk_gating_level = VCODEC_CLK; + mutex_lock(&device->clk_pwr_lock); + rc = regulator_enable(device->gdsc); + if (rc) { + dprintk(VIDC_ERR, "Failed to enable GDSC %d", rc); + goto fail_enable_gdsc; + } + rc = venus_hfi_prepare_enable_clks(device); + if (rc) { + dprintk(VIDC_ERR, "Failed to enable clocks: %d\n", rc); + goto fail_enable_clks; + } rc = venus_hfi_iommu_attach(device); if (rc) { dprintk(VIDC_ERR, "Failed to attach iommu"); goto fail_iommu_attach; } - mutex_lock(&device->clk_pwr_lock); if (!device->resources.fw.cookie) { - rc = regulator_enable(device->gdsc); - if (rc) { - dprintk(VIDC_ERR, "Failed to enable GDSC %d", rc); - mutex_unlock(&device->clk_pwr_lock); - goto fail_enable_gdsc; - } device->resources.fw.cookie = subsystem_get("venus"); } - if (IS_ERR_OR_NULL(device->resources.fw.cookie)) { dprintk(VIDC_ERR, "Failed to download firmware\n"); rc = -ENOMEM; - mutex_unlock(&device->clk_pwr_lock); goto fail_load_fw; } + device->power_enabled = true; ++device->pwr_cnt; - /*Clocks can be enabled only after pil_get since - * gdsc is turned-on in pil_get*/ - rc = venus_hfi_prepare_enable_clks(device); - mutex_unlock(&device->clk_pwr_lock); - if (rc) { - dprintk(VIDC_ERR, "Failed to enable clocks: %d\n", rc); - goto fail_enable_clks; - } + rc = protect_cp_mem(device); if (rc) { dprintk(VIDC_ERR, "Failed to protect memory\n"); goto fail_protect_mem; } + mutex_unlock(&device->clk_pwr_lock); return rc; + fail_protect_mem: - mutex_lock(&device->clk_pwr_lock); - venus_hfi_disable_unprepare_clks(device); - mutex_unlock(&device->clk_pwr_lock); -fail_enable_clks: subsystem_put(device->resources.fw.cookie); -fail_load_fw: - mutex_lock(&device->clk_pwr_lock); device->resources.fw.cookie = NULL; +fail_load_fw: + venus_hfi_iommu_detach(device); +fail_iommu_attach: + venus_hfi_disable_unprepare_clks(device); +fail_enable_clks: regulator_disable(device->gdsc); device->power_enabled = false; --device->pwr_cnt; - mutex_unlock(&device->clk_pwr_lock); fail_enable_gdsc: - venus_hfi_iommu_detach(device); -fail_iommu_attach: + dprintk(VIDC_ERR, "Failed to load firmware\n"); + mutex_unlock(&device->clk_pwr_lock); return rc; } @@ -3649,10 +3721,6 @@ static int venus_hfi_resurrect_fw(void *dev) return -EINVAL; } - rc = venus_hfi_free_ocmem(device); - if (rc) - dprintk(VIDC_WARN, "%s - failed to free ocmem\n", __func__); - rc = venus_hfi_core_release(device); if (rc) { dprintk(VIDC_ERR, "%s - failed to release venus core rc = %d\n", @@ -3946,9 +4014,6 @@ static void venus_init_hfi_callbacks(struct hfi_device *hdev) hdev->scale_clocks = venus_hfi_scale_clocks; hdev->scale_bus = venus_hfi_scale_bus; hdev->unvote_bus = venus_hfi_unvote_bus; - hdev->unset_ocmem = venus_hfi_unset_ocmem; - hdev->alloc_ocmem = venus_hfi_alloc_ocmem; - hdev->free_ocmem = venus_hfi_free_ocmem; hdev->iommu_get_domain_partition = venus_hfi_iommu_get_domain_partition; hdev->load_fw = venus_hfi_load_fw; hdev->unload_fw = venus_hfi_unload_fw; @@ -3958,6 +4023,7 @@ static void venus_init_hfi_callbacks(struct hfi_device *hdev) hdev->get_stride_scanline = venus_hfi_get_stride_scanline; hdev->get_core_capabilities = venus_hfi_get_core_capabilities; hdev->power_enable = venus_hfi_power_enable; + hdev->suspend = venus_hfi_suspend; } int venus_hfi_initialize(struct hfi_device *hdev, u32 device_id, diff --git a/drivers/media/platform/msm/vidc/venus_hfi.h b/drivers/media/platform/msm/vidc/venus_hfi.h index 23a51baa9f8c..c9a2640d58d1 100644 --- a/drivers/media/platform/msm/vidc/venus_hfi.h +++ b/drivers/media/platform/msm/vidc/venus_hfi.h @@ -195,7 +195,6 @@ struct venus_hfi_device { u32 device_id; u32 clk_load; u32 bus_load[MSM_VIDC_MAX_DEVICES]; - unsigned long ocmem_size; enum clock_state clk_state; bool power_enabled; enum vidc_clocks clk_gating_level; @@ -215,6 +214,7 @@ struct venus_hfi_device { struct workqueue_struct *venus_pm_workq; int spur_count; int reg_count; + int pc_num_cmds; u32 base_addr; u32 register_base; u32 register_size; diff --git a/drivers/media/platform/msm/vidc/vidc_hfi.h b/drivers/media/platform/msm/vidc/vidc_hfi.h index 75f583ff0dc7..55663381d156 100644 --- a/drivers/media/platform/msm/vidc/vidc_hfi.h +++ b/drivers/media/platform/msm/vidc/vidc_hfi.h @@ -79,9 +79,8 @@ #define HFI_EXTRADATA_FRAME_RATE 0x00000007 #define HFI_EXTRADATA_PANSCAN_WINDOW 0x00000008 #define HFI_EXTRADATA_RECOVERY_POINT_SEI 0x00000009 -#define HFI_EXTRADATA_CLOSED_CAPTION_UD 0x0000000A -#define HFI_EXTRADATA_AFD_UD 0x0000000B #define HFI_EXTRADATA_MPEG2_SEQDISP 0x0000000D +#define HFI_EXTRADATA_STREAM_USERDATA 0x0000000E #define HFI_EXTRADATA_FRAME_QP 0x0000000F #define HFI_EXTRADATA_FRAME_BITS_INFO 0x00000010 #define HFI_EXTRADATA_MULTISLICE_INFO 0x7F100000 @@ -190,10 +189,6 @@ struct hfi_extradata_header { #define HFI_PROPERTY_PARAM_VDEC_FRAME_ASSEMBLY \ (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x00E) -#define HFI_PROPERTY_PARAM_VDEC_CLOSED_CAPTION_EXTRADATA \ - (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x00F) -#define HFI_PROPERTY_PARAM_VDEC_AFD_EXTRADATA \ - (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x010) #define HFI_PROPERTY_PARAM_VDEC_VC1_FRAMEDISP_EXTRADATA \ (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x011) #define HFI_PROPERTY_PARAM_VDEC_VC1_SEQDISP_EXTRADATA \ @@ -206,6 +201,8 @@ struct hfi_extradata_header { (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x015) #define HFI_PROPERTY_PARAM_VDEC_MPEG2_SEQDISP_EXTRADATA \ (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x016) +#define HFI_PROPERTY_PARAM_VDEC_STREAM_USERDATA_EXTRADATA \ + (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x017) #define HFI_PROPERTY_PARAM_VDEC_FRAME_QP_EXTRADATA \ (HFI_PROPERTY_PARAM_VDEC_OX_START + 0x018) #define HFI_PROPERTY_PARAM_VDEC_FRAME_BITS_INFO_EXTRADATA \ diff --git a/drivers/media/platform/msm/vidc/vidc_hfi_api.h b/drivers/media/platform/msm/vidc/vidc_hfi_api.h index e3c28ed18e7c..376427dec155 100644 --- a/drivers/media/platform/msm/vidc/vidc_hfi_api.h +++ b/drivers/media/platform/msm/vidc/vidc_hfi_api.h @@ -63,7 +63,7 @@ enum vidc_status { VIDC_ERR_BAD_HANDLE, VIDC_ERR_NOT_SUPPORTED, VIDC_ERR_BAD_STATE, - VIDC_ERR_MAX_CLIENT, + VIDC_ERR_MAX_CLIENTS, VIDC_ERR_IFRAME_EXPECTED, VIDC_ERR_HW_FATAL, VIDC_ERR_BITSTREAM_ERR, @@ -91,8 +91,6 @@ enum hal_extradata_id { HAL_EXTRADATA_FRAME_RATE, HAL_EXTRADATA_PANSCAN_WINDOW, HAL_EXTRADATA_RECOVERY_POINT_SEI, - HAL_EXTRADATA_CLOSED_CAPTION_UD, - HAL_EXTRADATA_AFD_UD, HAL_EXTRADATA_MULTISLICE_INFO, HAL_EXTRADATA_INDEX, HAL_EXTRADATA_NUM_CONCEALED_MB, @@ -103,6 +101,7 @@ enum hal_extradata_id { HAL_EXTRADATA_FRAME_BITS_INFO, HAL_EXTRADATA_LTR_INFO, HAL_EXTRADATA_METADATA_MBI, + HAL_EXTRADATA_STREAM_USERDATA, }; enum hal_property { @@ -187,6 +186,7 @@ enum hal_property { HAL_CONFIG_VENC_USELTRFRAME, HAL_CONFIG_VENC_LTRPERIOD, HAL_PARAM_VENC_HIER_P_NUM_FRAMES, + HAL_PARAM_VENC_ENABLE_INITIAL_QP, }; enum hal_domain { @@ -632,6 +632,13 @@ struct hal_quantization { u32 layer_id; }; +struct hal_initial_quantization { + u32 qpi; + u32 qpp; + u32 qpb; + u32 initqp_enable; +}; + struct hal_quantization_range { u32 min_qp; u32 max_qp; @@ -1148,9 +1155,6 @@ struct hfi_device { enum session_type type, enum mem_type mtype); int (*unvote_bus)(void *dev, enum session_type type, enum mem_type mtype); - int (*unset_ocmem)(void *dev); - int (*alloc_ocmem)(void *dev, unsigned long size); - int (*free_ocmem)(void *dev); int (*iommu_get_domain_partition)(void *dev, u32 flags, u32 buffer_type, int *domain_num, int *partition_num); int (*load_fw)(void *dev); @@ -1163,6 +1167,7 @@ struct hfi_device { int (*session_clean)(void *sess); int (*get_core_capabilities)(void); int (*power_enable)(void *dev); + int (*suspend)(void *dev); }; typedef void (*hfi_cmd_response_callback) (enum command_response cmd, diff --git a/drivers/media/platform/msm/vidc/vidc_hfi_helper.h b/drivers/media/platform/msm/vidc/vidc_hfi_helper.h index f5c8888feb76..7cc521b2c2a0 100644 --- a/drivers/media/platform/msm/vidc/vidc_hfi_helper.h +++ b/drivers/media/platform/msm/vidc/vidc_hfi_helper.h @@ -320,6 +320,8 @@ struct hfi_buffer_info { (HFI_PROPERTY_PARAM_VENC_COMMON_START + 0x01F) #define HFI_PROPERTY_PARAM_VENC_MAX_NUM_B_FRAMES \ (HFI_PROPERTY_PARAM_VENC_COMMON_START + 0x020) +#define HFI_PROPERTY_PARAM_VENC_INITIAL_QP \ + (HFI_PROPERTY_PARAM_VENC_COMMON_START + 0x028) #define HFI_PROPERTY_CONFIG_VENC_COMMON_START \ (HFI_DOMAIN_BASE_VENC + HFI_ARCH_COMMON_OFFSET + 0x6000) #define HFI_PROPERTY_CONFIG_VENC_TARGET_BITRATE \ @@ -532,6 +534,13 @@ struct hfi_quantization { u32 layer_id; }; +struct hfi_initial_quantization { + u32 qp_i; + u32 qp_p; + u32 qp_b; + u32 init_qp_enable; +}; + struct hfi_quantization_range { u32 min_qp; u32 max_qp; @@ -769,6 +778,11 @@ struct hfi_mvc_buffer_lauout_descp_type { #define HFI_TEST_SSR_SW_DIV_BY_ZERO 0x2 #define HFI_TEST_SSR_HW_WDOG_IRQ 0x3 +struct vidc_hal_cmd_pkt_hdr { + u32 size; + u32 packet_type; +}; + struct vidc_hal_msg_pkt_hdr { u32 size; u32 packet; diff --git a/drivers/media/video/mem2mem_testdev.c b/drivers/media/video/mem2mem_testdev.c index 12897e8a3314..fd5c96bd048b 100644 --- a/drivers/media/video/mem2mem_testdev.c +++ b/drivers/media/video/mem2mem_testdev.c @@ -49,7 +49,7 @@ MODULE_VERSION("0.1.1"); #define MEM2MEM_NAME "m2m-testdev" /* Per queue */ -#define MEM2MEM_DEF_NUM_BUFS VIDEO_MAX_FRAME +#define MEM2MEM_DEF_NUM_BUFS VB2_MAX_FRAME /* In bytes, per queue */ #define MEM2MEM_VID_MEM_LIMIT (16 * 1024 * 1024) diff --git a/drivers/media/video/saa7134/saa7134-ts.c b/drivers/media/video/saa7134/saa7134-ts.c index 2e3f4b412d8c..851768ae2a63 100644 --- a/drivers/media/video/saa7134/saa7134-ts.c +++ b/drivers/media/video/saa7134/saa7134-ts.c @@ -197,8 +197,8 @@ int saa7134_ts_init1(struct saa7134_dev *dev) /* sanitycheck insmod options */ if (tsbufs < 2) tsbufs = 2; - if (tsbufs > VIDEO_MAX_FRAME) - tsbufs = VIDEO_MAX_FRAME; + if (tsbufs > VB2_MAX_FRAME) + tsbufs = VB2_MAX_FRAME; if (ts_nr_packets < 4) ts_nr_packets = 4; if (ts_nr_packets > 312) diff --git a/drivers/media/video/saa7134/saa7134-vbi.c b/drivers/media/video/saa7134/saa7134-vbi.c index e9aa94b807f1..370292859e09 100644 --- a/drivers/media/video/saa7134/saa7134-vbi.c +++ b/drivers/media/video/saa7134/saa7134-vbi.c @@ -214,8 +214,8 @@ int saa7134_vbi_init1(struct saa7134_dev *dev) if (vbibufs < 2) vbibufs = 2; - if (vbibufs > VIDEO_MAX_FRAME) - vbibufs = VIDEO_MAX_FRAME; + if (vbibufs > VB2_MAX_FRAME) + vbibufs = VB2_MAX_FRAME; return 0; } diff --git a/drivers/media/video/saa7134/saa7134-video.c b/drivers/media/video/saa7134/saa7134-video.c index 417034eb6ad2..e63ffdacd696 100644 --- a/drivers/media/video/saa7134/saa7134-video.c +++ b/drivers/media/video/saa7134/saa7134-video.c @@ -2509,7 +2509,7 @@ struct video_device saa7134_radio_template = { int saa7134_video_init1(struct saa7134_dev *dev) { /* sanitycheck insmod options */ - if (gbuffers < 2 || gbuffers > VIDEO_MAX_FRAME) + if (gbuffers < 2 || gbuffers > VB2_MAX_FRAME) gbuffers = 2; if (gbufsize < 0 || gbufsize > gbufsize_max) gbufsize = gbufsize_max; diff --git a/drivers/media/video/videobuf2-core.c b/drivers/media/video/videobuf2-core.c index 668cc733ee23..ae544a42054c 100644 --- a/drivers/media/video/videobuf2-core.c +++ b/drivers/media/video/videobuf2-core.c @@ -513,13 +513,6 @@ int vb2_reqbufs(struct vb2_queue *q, struct v4l2_requestbuffers *req) return -EINVAL; } - /* - * If the same number of buffers and memory access method is requested - * then return immediately. - */ - if (q->memory == req->memory && req->count == q->num_buffers) - return 0; - if (req->count == 0 || q->num_buffers != 0 || q->memory != req->memory) { /* * We already have buffers allocated, so first check if they @@ -543,7 +536,7 @@ int vb2_reqbufs(struct vb2_queue *q, struct v4l2_requestbuffers *req) /* * Make sure the requested values and current defaults are sane. */ - num_buffers = min_t(unsigned int, req->count, VIDEO_MAX_FRAME); + num_buffers = min_t(unsigned int, req->count, VB2_MAX_FRAME); memset(q->plane_sizes, 0, sizeof(q->plane_sizes)); memset(q->alloc_ctx, 0, sizeof(q->alloc_ctx)); q->memory = req->memory; @@ -651,7 +644,7 @@ int vb2_create_bufs(struct vb2_queue *q, struct v4l2_create_buffers *create) return -EINVAL; } - if (q->num_buffers == VIDEO_MAX_FRAME) { + if (q->num_buffers == VB2_MAX_FRAME) { dprintk(1, "%s(): maximum number of buffers already allocated\n", __func__); return -ENOBUFS; @@ -665,7 +658,7 @@ int vb2_create_bufs(struct vb2_queue *q, struct v4l2_create_buffers *create) q->memory = create->memory; } - num_buffers = min(create->count, VIDEO_MAX_FRAME - q->num_buffers); + num_buffers = min(create->count, VB2_MAX_FRAME - q->num_buffers); /* * Ask the driver, whether the requested number of buffers, planes per @@ -1104,9 +1097,13 @@ int vb2_qbuf(struct vb2_queue *q, struct v4l2_buffer *b) * consistent after getting driver's lock back. */ if (q->memory == V4L2_MEMORY_USERPTR) { - mmap_sem = ¤t->active_mm->mmap_sem; + bool mm_exists = !!current->mm; + + mmap_sem = mm_exists ? ¤t->mm->mmap_sem : NULL; call_qop(q, wait_prepare, q); - down_read(mmap_sem); + /* kthreads have no userspace, hence no pages to lock */ + if (mmap_sem) + down_read(mmap_sem); call_qop(q, wait_finish, q); } @@ -1777,7 +1774,7 @@ struct vb2_fileio_buf { struct vb2_fileio_data { struct v4l2_requestbuffers req; struct v4l2_buffer b; - struct vb2_fileio_buf bufs[VIDEO_MAX_FRAME]; + struct vb2_fileio_buf bufs[VB2_MAX_FRAME]; unsigned int index; unsigned int q_count; unsigned int dq_count; diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 026c8b8f110a..23d9dc50cae4 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -851,6 +851,13 @@ config NFC_PN547_PMC8974_CLK_REQ Communication controller support. This option enables d1 clock for NFC. +config NFC_I2C_OVERWRITE + bool "I2C gpio overwrite" + depends on I2C + default n + help + F-project rev09,10 has no external PU register. + config TI_DRV2667 tristate "TI's DRV2667 haptic controller support" depends on I2C diff --git a/drivers/misc/max77803-muic.c b/drivers/misc/max77803-muic.c index 63bd60358996..c6c64f2999d9 100755 --- a/drivers/misc/max77803-muic.c +++ b/drivers/misc/max77803-muic.c @@ -87,9 +87,13 @@ enum { ADC_DOCK_VOL_UP = 0x0b, /* 0x01011 17.26K ohm */ ADC_DOCK_PLAY_PAUSE_KEY = 0x0d, ADC_VZW_USB_DOCK = 0x0e, /* 0x01110 28.7K ohm VZW Dock */ + ADC_INCOMPATIBLE = 0x0f, /* 0x01111 34K ohm */ ADC_SMARTDOCK = 0x10, /* 0x10000 40.2K ohm */ ADC_INCOMPATIBLE2_CHG = 0x11, /* 0x10001 49.9K ohm */ ADC_AUDIODOCK = 0x12, /* 0x10010 64.9K ohm */ + ADC_LANHUB = 0x13, /* 0x10011 80.07K ohm */ + ADC_CHARGING_CABLE = 0x14, /* 0x10100 102K ohm */ + ADC_HMT = 0x15, /* 0x10101 121K ohm */ ADC_CEA936ATYPE1_CHG = 0x17, /* 0x10111 200K ohm */ ADC_JIG_USB_OFF = 0x18, /* 0x11000 255K ohm */ ADC_JIG_USB_ON = 0x19, /* 0x11001 301K ohm */ @@ -101,6 +105,7 @@ enum { #if defined(CONFIG_MUIC_DET_JACK) ADC_EARJACK = 0x1e, /* 0x11110 1000 or 1002 ohm */ #endif + ADC_CHARGER = 0x1e, /* 0x11110 1000 ohm*/ ADC_OPEN = 0x1f }; @@ -696,6 +701,7 @@ static ssize_t max77803_muic_show_charger_type(struct device *dev, case ADC_AUDIODOCK: case ADC_DESKDOCK: case ADC_CARDOCK: + case ADC_CHARGER: case ADC_OPEN: dev_info(info->dev, "%s: Dedicated Charger State\n", __func__); return snprintf(buf, 4, "%d\n", 0); @@ -1004,8 +1010,8 @@ static int max77803_muic_set_charging_type(struct max77803_muic_info *info, u8 val; //#endif - dev_info(info->dev, "func:%s force_disable:%d\n", - __func__, force_disable); + dev_info(info->dev, "func:%s cable_type:%d: force_disable:%d\n", + __func__, info->cable_type, force_disable); if (mdata->charger_cb) { if (force_disable) { //#if defined(CONFIG_MACH_HLTEVZW) || defined(CONFIG_MACH_HLTESPR) || defined(CONFIG_MACH_HLTEUSC) @@ -1209,6 +1215,7 @@ static int max77803_muic_attach_usb_type(struct max77803_muic_info *info, break; case ADC_CEA936ATYPE1_CHG: case ADC_CEA936ATYPE2_CHG: + case ADC_CHARGER: case ADC_OPEN: if (info->cable_type == CABLE_TYPE_USB_MUIC) { dev_info(info->dev, "%s: duplicated(USB)\n", __func__); @@ -2098,6 +2105,10 @@ static int max77803_muic_handle_attach(struct max77803_muic_info *info, ret = max77803_muic_set_charging_type(info, !vbvolt); } break; + case ADC_CHARGING_CABLE: + info->cable_type = CABLE_TYPE_CHARGING_CABLE_MUIC; + max77803_muic_set_charging_type(info, false); + break; case ADC_SMARTDOCK: max77803_muic_attach_smart_dock(info, adc, vbvolt, chgtyp); break; @@ -2192,6 +2203,7 @@ static int max77803_muic_handle_attach(struct max77803_muic_info *info, break; case ADC_CEA936ATYPE1_CHG: case ADC_CEA936ATYPE2_CHG: + case ADC_CHARGER: case ADC_OPEN: switch (chgtyp) { case CHGTYP_USB: @@ -2231,14 +2243,22 @@ static int max77803_muic_handle_attach(struct max77803_muic_info *info, break; } break; + case ADC_INCOMPATIBLE: + if (vbvolt) { + info->cable_type = CABLE_TYPE_INCOMPATIBLE_MUIC; + ret = max77803_muic_set_charging_type(info, !vbvolt); + } + break; default: - dev_warn(info->dev, "%s: unsupported adc=0x%x\n", __func__, adc); - - info->cable_type = CABLE_TYPE_INCOMPATIBLE_MUIC; - - ret = max77803_muic_set_charging_type(info, !vbvolt); - if (ret) - info->cable_type = CABLE_TYPE_NONE_MUIC; + if (vbvolt) { + dev_warn(info->dev, "%s: unsupported adc=0x%x\n", __func__, adc); + info->cable_type = CABLE_TYPE_TA_MUIC; + ret = max77803_muic_set_charging_type(info, !vbvolt); + if (ret) + info->cable_type = CABLE_TYPE_NONE_MUIC; + } else { + dev_warn(info->dev, "%s: unsupported adc=0x%x\n", __func__, adc); + } break; } return ret; @@ -2287,6 +2307,11 @@ static int max77803_muic_handle_detach(struct max77803_muic_info *info, int irq) } switch (info->cable_type) { + case CABLE_TYPE_CHARGING_CABLE_MUIC: + dev_info(info->dev, "%s: CHARGING CABLE\n", __func__); + info->cable_type = CABLE_TYPE_NONE_MUIC; + max77803_muic_set_charging_type(info, true); + break; case CABLE_TYPE_OTG_MUIC: dev_info(info->dev, "%s: OTG\n", __func__); info->cable_type = CABLE_TYPE_NONE_MUIC; @@ -2470,12 +2495,11 @@ static int max77803_muic_filter_dev(struct max77803_muic_info *info, pr_info("%s:%s ADC_GND & !adclow = OTG\n", DEV_NAME, __func__); break; - case (ADC_CEA936ATYPE1_CHG) ... (ADC_JIG_UART_ON): - if(info->cable_type != CABLE_TYPE_NONE_MUIC - && chgtyp == CHGTYP_NO_VOLTAGE - && info->chgtyp != chgtyp) { - intr = INT_DETACH; - } + case ADC_VZW_USB_DOCK: + case ADC_INCOMPATIBLE2_CHG: + case ADC_LANHUB: + case ADC_HMT: + intr = INT_DETACH; break; case ADC_OPEN: if (!adcerr) { @@ -2491,6 +2515,7 @@ static int max77803_muic_filter_dev(struct max77803_muic_info *info, chgtyp == CHGTYP_1A) { switch (info->cable_type) { case CABLE_TYPE_OTG_MUIC: + case CABLE_TYPE_CHARGING_CABLE_MUIC: case CABLE_TYPE_DESKDOCK_MUIC: case CABLE_TYPE_CARDOCK_MUIC: case CABLE_TYPE_SMARTDOCK_MUIC: diff --git a/drivers/misc/modem_if/modem_link_device_spi.c b/drivers/misc/modem_if/modem_link_device_spi.c index 243071d5e652..52c0e528caaf 100755 --- a/drivers/misc/modem_if/modem_link_device_spi.c +++ b/drivers/misc/modem_if/modem_link_device_spi.c @@ -29,13 +29,15 @@ #include #include #include - #include +#include +#include +#include //#include #include "modem_prj.h" #include "modem_link_device_spi.h" #include "modem_utils.h" -#include + #define USE_SPI_HALF_DUPLEX @@ -123,14 +125,13 @@ static irqreturn_t spi_cp_dump_irq_handler(int irq, void *p_ld) if (!spild->boot_done) goto exit; -#if 0 if (!wake_lock_active(&spild->spi_wake_lock) && spild->send_modem_spi != 1) { wake_lock(&spild->spi_wake_lock); pr_debug("[SPI] [%s](%d) spi_wakelock locked . spild->spi_state[%d]\n", __func__, __LINE__, (int)spild->spi_state); } -#endif + exit: return result; } @@ -350,12 +351,15 @@ static int spi_register_isr goto err; } - ret = enable_irq_wake(irq); - if (ret) { - pr_err("[LNK/E] <%s> enable_irq_wake fail (%d)\n", - __func__, ret); - free_irq(irq, ld); - goto err; + + if (irq == gpio_to_irq(p_spild->gpio_cp_dump_int)){ + ret = enable_irq_wake(irq); + if (ret) { + pr_err("[LNK/E] <%s> enable_irq_wake fail (%d)\n", + __func__, ret); + free_irq(irq, ld); + goto err; + } } pr_debug("[LNK] <%s> IRQ#%d handler is registered.\n", __func__, irq); @@ -1670,6 +1674,96 @@ void spi_work(struct work_struct *work) } } + +static void get_mif_spi_dt_data(struct device *dev) +{ + /* Initialize SPI pin value */ + p_spild->gpio_ipc_mrdy = of_get_named_gpio(dev->of_node, "mif_spi,gpio_ipc_mrdy", 0); + if (gpio_is_valid(p_spild->gpio_ipc_mrdy)) { + int ret; + ret = gpio_request(p_spild->gpio_ipc_mrdy, "ipc_mrdy"); + if (ret) + mif_err("Unable to request ipc_mrdy [%d]\n", p_spild->gpio_ipc_mrdy); + else { + gpio_tlmm_config(GPIO_CFG(p_spild->gpio_ipc_mrdy, GPIOMUX_FUNC_GPIO, + GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), + GPIO_CFG_ENABLE); + gpio_direction_output(p_spild->gpio_ipc_mrdy, 0); + } + } + else { + mif_err("Failed to get is valid ipc_mrdy\n"); + } + + p_spild->gpio_ipc_srdy = of_get_named_gpio(dev->of_node, "mif_spi,gpio_ipc_srdy", 0); + if (gpio_is_valid(p_spild->gpio_ipc_srdy)) { + int ret; + ret = gpio_request(p_spild->gpio_ipc_srdy, "ipc_srdy"); + if (ret) + mif_err("Unable to request ipc_srdy [%d]\n", p_spild->gpio_ipc_srdy); + else { + gpio_tlmm_config(GPIO_CFG(p_spild->gpio_ipc_srdy, GPIOMUX_FUNC_GPIO, + GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_2MA), GPIO_CFG_ENABLE); + } + } + else { + mif_err("Failed to get is valid ipc_srdy\n"); + } + + p_spild->gpio_ipc_sub_mrdy = of_get_named_gpio(dev->of_node, "mif_spi,gpio_ipc_sub_mrdy", 0); + if (gpio_is_valid(p_spild->gpio_ipc_sub_mrdy)) { + int ret; + ret = gpio_request(p_spild->gpio_ipc_sub_mrdy, "ipc_sub_mrdy"); + if (ret) + mif_err("Unable to request ipc_sub_mrdy [%d]\n", p_spild->gpio_ipc_sub_mrdy); + else { + gpio_tlmm_config(GPIO_CFG(p_spild->gpio_ipc_sub_mrdy, GPIOMUX_FUNC_GPIO, + GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA),GPIO_CFG_ENABLE); + gpio_direction_output(p_spild->gpio_ipc_sub_mrdy, 0); + } + } + else { + mif_err("Failed to get is valid ipc_sub_mrdy\n"); + } + + p_spild->gpio_ipc_sub_srdy = of_get_named_gpio(dev->of_node, "mif_spi,gpio_ipc_sub_srdy", 0); + if (gpio_is_valid(p_spild->gpio_ipc_sub_srdy)) { + int ret; + ret = gpio_request(p_spild->gpio_ipc_sub_srdy, "ipc_sub_srdy"); + if (ret) + mif_err("Unable to request ipc_sub_srdy [%d]\n", p_spild->gpio_ipc_sub_srdy); + else { + gpio_tlmm_config(GPIO_CFG(p_spild->gpio_ipc_sub_srdy, GPIOMUX_FUNC_GPIO, + GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_2MA),GPIO_CFG_ENABLE); + } + } + else { + mif_err("Failed to get is valid ipc_sub_srdy\n"); + } + + p_spild->gpio_cp_dump_int = of_get_named_gpio(dev->of_node, "mif_spi,gpio_cp_dump_int", 0); + if (gpio_is_valid(p_spild->gpio_cp_dump_int)) { + int ret; + ret = gpio_request(p_spild->gpio_cp_dump_int, "cp_dump_int"); + if (ret) + mif_err("Unable to request cp_dump_int [%d]\n", p_spild->gpio_cp_dump_int); + else { + gpio_tlmm_config(GPIO_CFG(p_spild->gpio_cp_dump_int, GPIOMUX_FUNC_GPIO, + GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_2MA), GPIO_CFG_ENABLE); + } + } + else { + mif_err("Failed to get is valid cp_dump_int\n"); + } + + p_spild->gpio_modem_bin_srdy = p_spild->gpio_ipc_srdy; + + mif_info("gpio_mrdy:%d, gpio_srdy:%d, gpio_submrdy:%d, gpio_subsrdy:%d, gpio_cpdump_int:%d\n", + p_spild->gpio_ipc_mrdy, p_spild->gpio_ipc_srdy, + p_spild->gpio_ipc_sub_mrdy, p_spild->gpio_ipc_sub_srdy, + p_spild->gpio_cp_dump_int); +} + static int __devinit if_spi_platform_probe(struct platform_device *pdev) { int ret; @@ -1686,18 +1780,6 @@ static int __devinit if_spi_platform_probe(struct platform_device *pdev) goto err; } - /* Initialize SPI pin value */ - p_spild->gpio_ipc_mrdy = pdata->gpio_ipc_mrdy; - p_spild->gpio_ipc_srdy = pdata->gpio_ipc_srdy; - p_spild->gpio_ipc_sub_mrdy = pdata->gpio_ipc_sub_mrdy; - p_spild->gpio_ipc_sub_srdy = pdata->gpio_ipc_sub_srdy; - p_spild->gpio_cp_dump_int = pdata->gpio_cp_dump_int; - p_spild->gpio_modem_bin_srdy = pdata->gpio_ipc_srdy; - - pr_info("(%d) gpio_mrdy : %d, gpio_srdy : %d(%d)\n", - __LINE__, p_spild->gpio_ipc_mrdy, p_spild->gpio_modem_bin_srdy, - gpio_get_value(p_spild->gpio_ipc_srdy)); - od = kzalloc(sizeof(struct spi_v_buff), GFP_KERNEL); if (!od) { pr_err("(%d) failed to allocate device\n", @@ -1787,18 +1869,16 @@ static int if_spi_probe(struct spi_device *spi) #if 0 p_spi->mode = SPI_MODE_1; p_spi->bits_per_word = 32; - ret = spi_setup(p_spi); if (ret != 0) { pr_err("[%s] spi_setup ERROR : %d\n", __func__, ret); return ret; } - - pr_info("[%s] spi probe Done.\n", __func__); - #endif + get_mif_spi_dt_data(&spi->dev); + pr_info("[%s]\n", __func__); return ret; diff --git a/drivers/misc/modem_if/modem_modemctl_device_sc6500.c b/drivers/misc/modem_if/modem_modemctl_device_sc6500.c index 219df8af5a43..b08e83028b39 100755 --- a/drivers/misc/modem_if/modem_modemctl_device_sc6500.c +++ b/drivers/misc/modem_if/modem_modemctl_device_sc6500.c @@ -75,50 +75,16 @@ static unsigned sprd6500_uart_off_table[] = { GPIO_CFG_8MA), }; -#define GPIO_IPC_MRDY 105 -#define GPIO_IPC_SUB_MRDY 106 -#define GPIO_IPC_SRDY 117 -#define GPIO_IPC_SUB_SRDY 104 - -void spi_modem_cfg_gpio1(void) -{ - gpio_tlmm_config(GPIO_CFG(GPIO_IPC_MRDY, GPIOMUX_FUNC_GPIO, - GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), - GPIO_CFG_ENABLE); - gpio_set_value(GPIO_IPC_MRDY, 0); - - gpio_tlmm_config(GPIO_CFG(GPIO_IPC_SUB_MRDY, GPIOMUX_FUNC_GPIO, - GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), - GPIO_CFG_ENABLE); - gpio_set_value(GPIO_IPC_SUB_MRDY, 0); - - gpio_tlmm_config(GPIO_CFG(GPIO_IPC_SRDY, GPIOMUX_FUNC_GPIO, - GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_2MA), - GPIO_CFG_ENABLE); - - gpio_tlmm_config(GPIO_CFG(GPIO_IPC_SUB_SRDY, GPIOMUX_FUNC_GPIO, - GPIO_CFG_INPUT, GPIO_CFG_PULL_DOWN, GPIO_CFG_2MA), - GPIO_CFG_ENABLE); - - pr_info("[SPI] %s done\n", __func__); - -} - - static int sprd6500_on(struct modem_ctl *mc) { - int pin, rc = 0; + int pin = 0; pr_err("[MODEM_IF:SC6500] <%s> start!!!\n", __func__); disable_irq(mc->irq_phone_active); for (pin = 0; pin < ARRAY_SIZE(sprd6500_uart_on_table); pin++) { - rc = gpio_tlmm_config(sprd6500_uart_on_table[pin], - GPIO_CFG_ENABLE); - if (rc < 0) - pr_err("[MODEM_IF:SC6500] %s: gpio_tlmm_config(%#x)=%d\n", - __func__, sprd6500_uart_on_table[pin], rc); + gpio_tlmm_config(sprd6500_uart_on_table[pin], GPIO_CFG_ENABLE); } // UART_SEL for UART download @@ -156,8 +122,6 @@ static int sprd6500_on(struct modem_ctl *mc) gpio_set_value(mc->gpio_pda_active, 1); - spi_modem_cfg_gpio1(); - return 0; } @@ -267,7 +231,6 @@ static irqreturn_t phone_active_irq_handler(int irq, void *arg) } phone_active = gpio_get_value(mc->gpio_phone_active); - cp_dump_int = gpio_get_value(mc->gpio_cp_dump_int); pr_info("[MODEM_IF:SC6500] <%s> phone_active=%d, cp_dump_int=%d\n", __func__, phone_active, cp_dump_int); diff --git a/drivers/misc/modem_if/modem_sim_slot_switch.c b/drivers/misc/modem_if/modem_sim_slot_switch.c index b339169b352c..528fe08b8a6d 100755 --- a/drivers/misc/modem_if/modem_sim_slot_switch.c +++ b/drivers/misc/modem_if/modem_sim_slot_switch.c @@ -165,6 +165,7 @@ static int __init slot_switch_manager_init(void) printk("%s end \n",__func__); } +#if 0 gpio = GPIO_GG_SEL; err = gpio_request(gpio, "GG_SEL"); if (err) { @@ -177,6 +178,7 @@ static int __init slot_switch_manager_init(void) gpio_set_value(GPIO_GG_SEL, 1); // fixed to '1' from '0' by jw01.yoo printk("%s end \n",__func__); } +#endif //initailize slot switch device slot_switch_dev = device_create(sec_class, diff --git a/drivers/misc/modem_if/sipc4_io_device.c b/drivers/misc/modem_if/sipc4_io_device.c index cf381b284bde..fd85b623ff60 100755 --- a/drivers/misc/modem_if/sipc4_io_device.c +++ b/drivers/misc/modem_if/sipc4_io_device.c @@ -711,9 +711,8 @@ static int rx_hdlc_packet(struct io_device *iod, struct link_device *ld, goto data_check; } + mif_info("\n<%s> Rx FMT frame (len %d)\n",iod->name, rest); #ifdef CONFIG_LINK_DEVICE_SPI_DEBUG - mif_info("\n<%s> Rx FMT frame (len %d)\n", - iod->name, rest); mif_print_data((char*)data, rest); mif_info("\n"); #endif diff --git a/drivers/misc/pn547.c b/drivers/misc/pn547.c index 3d9953e2457f..7cba74472e95 100755 --- a/drivers/misc/pn547.c +++ b/drivers/misc/pn547.c @@ -478,7 +478,11 @@ static int pn547_probe(struct i2c_client *client, pn547_dev->clock_state = false; #endif #ifdef CONFIG_NFC_PN547_PMC8974_CLK_REQ +#ifdef CONFIG_NFC_I2C_OVERWRITE + pn547_dev->nfc_clk = clk_get(NULL, "nfc_clk"); +#else pn547_dev->nfc_clk = clk_get(&client->dev, "nfc_clk"); +#endif if (IS_ERR(pn547_dev->nfc_clk)) { ret = PTR_ERR(pn547_dev->nfc_clk); printk(KERN_ERR "%s: Couldn't get D1 (%d)\n", diff --git a/drivers/misc/qseecom.c b/drivers/misc/qseecom.c index 1839d07028a5..18840fa4ca0a 100644 --- a/drivers/misc/qseecom.c +++ b/drivers/misc/qseecom.c @@ -42,6 +42,9 @@ #include #include #include +#ifdef CONFIG_SEC_DEBUG +#include +#endif #include "qseecom_legacy.h" #include "qseecom_kernel.h" @@ -3899,6 +3902,9 @@ static int __devinit qseecom_probe(struct platform_device *pdev) req.size = resource_size(resource); pr_warn("secure app region addr=0x%x size=0x%x", req.addr, req.size); +#ifdef CONFIG_SEC_DEBUG + sec_debug_secure_app_addr_size(req.addr, req.size); +#endif } else { pr_err("Fail to get secure app region info\n"); rc = -EINVAL; diff --git a/drivers/misc/sec_jack.c b/drivers/misc/sec_jack.c index 2d9e438ae26d..502d66364524 100644 --- a/drivers/misc/sec_jack.c +++ b/drivers/misc/sec_jack.c @@ -500,6 +500,9 @@ void sec_jack_buttons_work(struct work_struct *work) int adc; int i; + /* prevent suspend to allow user space to respond to switch */ + wake_lock_timeout(&hi->det_wake_lock, WAKE_LOCK_TIME); + /* when button is released */ if (hi->pressed == 0) { input_report_key(hi->input_dev, hi->pressed_code, 0); diff --git a/drivers/misc/sec_misc.c b/drivers/misc/sec_misc.c index d2f8eca9eecb..3e8a3ba87620 100755 --- a/drivers/misc/sec_misc.c +++ b/drivers/misc/sec_misc.c @@ -1,287 +1,320 @@ -/* - * driver/misc/sec_misc.c - * - * driver supporting miscellaneous functions for Samsung P-series device - * - * COPYRIGHT(C) Samsung Electronics Co., Ltd. 2006-2011 All Right Reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define MOVINAND_CHECKSUM -#define RORY_CONTROL - -static struct wake_lock sec_misc_wake_lock; - -#ifdef MOVINAND_CHECKSUM -unsigned char emmc_checksum_done; -unsigned char emmc_checksum_pass; -#endif - -static const struct file_operations sec_misc_fops = { - .owner = THIS_MODULE, - /* .read = sec_misc_read, - .ioctl = sec_misc_ioctl, - .open = sec_misc_open, - .release = sec_misc_release, */ -}; - -static struct miscdevice sec_misc_device = { - .minor = MISC_DYNAMIC_MINOR, - .name = "sec_misc", - .fops = &sec_misc_fops, -}; - -#ifdef MOVINAND_CHECKSUM -static ssize_t emmc_checksum_done_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return snprintf(buf, sizeof(buf), "%d\n", emmc_checksum_done); -} - -static ssize_t emmc_checksum_done_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int state; - - if (sscanf(buf, "%i", &state) != 1 || (state < 0 || state > 1)) - return -EINVAL; - - emmc_checksum_done = (unsigned char)state; - return size; -} - -static DEVICE_ATTR(emmc_checksum_done, S_IRUGO | S_IWUSR , - emmc_checksum_done_show, emmc_checksum_done_store); - -static ssize_t emmc_checksum_pass_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return snprintf(buf, sizeof(buf), "%d\n", emmc_checksum_pass); -} - -static ssize_t emmc_checksum_pass_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int state; - - if (sscanf(buf, "%i", &state) != 1 || (state < 0 || state > 1)) - return -EINVAL; - - emmc_checksum_pass = (unsigned char)state; - return size; -} - -static DEVICE_ATTR(emmc_checksum_pass, S_IRUGO | S_IWUSR , - emmc_checksum_pass_show, emmc_checksum_pass_store); -#endif /*MOVINAND_CHECKSUM*/ - - -#ifdef RORY_CONTROL -static ssize_t rory_control_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - int rory_control; - - sec_get_param(param_rory_control, &rory_control); - - return snprintf(buf, sizeof(buf), "%d\n", rory_control); -} - -static ssize_t rory_control_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int rory_control; - - sscanf(buf, "%i", &rory_control); - - pr_info("rory control store ..... %d\n", rory_control); - - /* write to param */ - sec_set_param(param_rory_control, &rory_control); - - return size; -} - -static DEVICE_ATTR(rory_control, S_IRUGO | S_IWUSR , - rory_control_show, rory_control_store); -#endif /*RORY_CONTROL*/ - -static unsigned int convert_debug_level_str(const char *str) -{ - if (strncasecmp(str, "0xA0A0", 6) == 0) - return KERNEL_SEC_DEBUG_LEVEL_LOW; - - if (strncasecmp(str, "0xB0B0", 6) == 0) - return KERNEL_SEC_DEBUG_LEVEL_MID; - - if (strncasecmp(str, "0xC0C0", 6) == 0) - return KERNEL_SEC_DEBUG_LEVEL_HIGH; - - return 0; -} - -static void convert_debug_level_int(unsigned int val, char *str) -{ - if (val == KERNEL_SEC_DEBUG_LEVEL_LOW) { - strlcpy(str, "0xA0A0", sizeof("0xA0A0") + 1); - return; - } - - if (val == KERNEL_SEC_DEBUG_LEVEL_MID) { - strlcpy(str, "0xB0B0", sizeof("0xB0B0") + 1); - return; - } - - if (val == KERNEL_SEC_DEBUG_LEVEL_HIGH) { - strlcpy(str, "0xC0C0", sizeof("0xC0C0") + 1); - return; - } -} - -static ssize_t debug_level_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - char buffer[7]; - convert_debug_level_int(kernel_sec_get_debug_level(), buffer); - - return snprintf(buf, sizeof(buffer)+1, "%s\n", buffer); - -} - -static ssize_t debug_level_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int sec_debug_level = convert_debug_level_str(buf); - - if (sec_debug_level == 0) - return -EINVAL; - - kernel_sec_set_debug_level(sec_debug_level); - - return size; - -} - -static DEVICE_ATTR(debug_level, S_IRUGO | S_IWUSR , - debug_level_show, debug_level_store); - -#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_AEGIS2) -static ssize_t slideCount_show - (struct device *dev, struct device_attribute *attr, char *buf) -{ - int slideCount; - - sec_get_param(param_slideCount, &slideCount); - - return snprintf(buf, sizeof(buf), "%d\n", slideCount); -} - -static ssize_t slideCount_store - (struct device *dev, struct device_attribute *attr,\ - const char *buf, size_t size) -{ - int slideCount; - - sscanf(buf, "%i", &slideCount); - sec_set_param(param_slideCount, &slideCount); - - return size; -} -static DEVICE_ATTR(slideCount, S_IRUGO | S_IWUSR | S_IWGRP,\ - slideCount_show, slideCount_store); -#endif - -struct device *sec_misc_dev; - -static struct device_attribute *sec_misc_attrs[] = { - &dev_attr_emmc_checksum_done, - &dev_attr_emmc_checksum_pass, - &dev_attr_rory_control, - &dev_attr_debug_level, -#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_AEGIS2) - &dev_attr_slideCount, -#endif -}; - -static int __init sec_misc_init(void) -{ - int ret = 0; - int i; - - ret = misc_register(&sec_misc_device); - if (ret < 0) { - printk(KERN_ERR "misc_register failed!\n"); - goto failed_register_misc; - } - - sec_misc_dev = device_create(sec_class, NULL, 0, NULL, "sec_misc"); - if (IS_ERR(sec_misc_dev)) { - printk(KERN_ERR "failed to create device!\n"); - ret = -ENODEV; - goto failed_create_device; - } - - for (i = 0; i < ARRAY_SIZE(sec_misc_attrs) ; i++) { - ret = device_create_file(sec_misc_dev, sec_misc_attrs[i]); - if (ret < 0) { - pr_err("failed to create device file - %s\n", - dev_attr_emmc_checksum_done.attr.name); - goto failed_create_device_file; - } - } - - wake_lock_init(&sec_misc_wake_lock, WAKE_LOCK_SUSPEND, "sec_misc"); - - return 0; - -failed_create_device_file: - if (i) { - for (--i; i >= 0; i--) - device_remove_file(sec_misc_dev, sec_misc_attrs[i]); - } -failed_create_device: - misc_deregister(&sec_misc_device); -failed_register_misc: - return ret; -} - -static void __exit sec_misc_exit(void) -{ - wake_lock_destroy(&sec_misc_wake_lock); -} - -module_init(sec_misc_init); -module_exit(sec_misc_exit); - -/* Module information */ -MODULE_AUTHOR("Samsung"); -MODULE_DESCRIPTION("Samsung PX misc. driver"); -MODULE_LICENSE("GPL"); +/* + * driver/misc/sec_misc.c + * + * driver supporting miscellaneous functions for Samsung P-series device + * + * COPYRIGHT(C) Samsung Electronics Co., Ltd. 2006-2011 All Right Reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define MOVINAND_CHECKSUM +#define RORY_CONTROL + +static struct wake_lock sec_misc_wake_lock; + +#ifdef MOVINAND_CHECKSUM +unsigned char emmc_checksum_done; +unsigned char emmc_checksum_pass; +#endif + +static const struct file_operations sec_misc_fops = { + .owner = THIS_MODULE, + /* .read = sec_misc_read, + .ioctl = sec_misc_ioctl, + .open = sec_misc_open, + .release = sec_misc_release, */ +}; + +static struct miscdevice sec_misc_device = { + .minor = MISC_DYNAMIC_MINOR, + .name = "sec_misc", + .fops = &sec_misc_fops, +}; + +#ifdef MOVINAND_CHECKSUM +static ssize_t emmc_checksum_done_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%d\n", emmc_checksum_done); +} + +static ssize_t emmc_checksum_done_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int state; + + if (sscanf(buf, "%i", &state) != 1 || (state < 0 || state > 1)) + return -EINVAL; + + emmc_checksum_done = (unsigned char)state; + return size; +} + +static DEVICE_ATTR(emmc_checksum_done, S_IRUGO | S_IWUSR , + emmc_checksum_done_show, emmc_checksum_done_store); + +static ssize_t emmc_checksum_pass_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%d\n", emmc_checksum_pass); +} + +static ssize_t emmc_checksum_pass_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int state; + + if (sscanf(buf, "%i", &state) != 1 || (state < 0 || state > 1)) + return -EINVAL; + + emmc_checksum_pass = (unsigned char)state; + return size; +} + +static DEVICE_ATTR(emmc_checksum_pass, S_IRUGO | S_IWUSR , + emmc_checksum_pass_show, emmc_checksum_pass_store); +#endif /*MOVINAND_CHECKSUM*/ + + +#ifdef RORY_CONTROL +static ssize_t rory_control_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int rory_control; + + sec_get_param(param_rory_control, &rory_control); + + return snprintf(buf, PAGE_SIZE, "%d\n", rory_control); +} + +static ssize_t rory_control_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int rory_control; + + sscanf(buf, "%i", &rory_control); + + pr_info("rory control store ..... %d\n", rory_control); + + /* write to param */ + sec_set_param(param_rory_control, &rory_control); + + return size; +} + +static DEVICE_ATTR(rory_control, S_IRUGO | S_IWUSR , + rory_control_show, rory_control_store); +#endif /*RORY_CONTROL*/ + +static unsigned int convert_debug_level_str(const char *str) +{ + if (strncasecmp(str, "0xA0A0", 6) == 0) + return KERNEL_SEC_DEBUG_LEVEL_LOW; + + if (strncasecmp(str, "0xB0B0", 6) == 0) + return KERNEL_SEC_DEBUG_LEVEL_MID; + + if (strncasecmp(str, "0xC0C0", 6) == 0) + return KERNEL_SEC_DEBUG_LEVEL_HIGH; + + return 0; +} + +static void convert_debug_level_int(unsigned int val, char *str) +{ + if (val == KERNEL_SEC_DEBUG_LEVEL_LOW) { + strlcpy(str, "0xA0A0", sizeof("0xA0A0") + 1); + return; + } + + if (val == KERNEL_SEC_DEBUG_LEVEL_MID) { + strlcpy(str, "0xB0B0", sizeof("0xB0B0") + 1); + return; + } + + if (val == KERNEL_SEC_DEBUG_LEVEL_HIGH) { + strlcpy(str, "0xC0C0", sizeof("0xC0C0") + 1); + return; + } +} + +static ssize_t debug_level_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char buffer[7]; + convert_debug_level_int(kernel_sec_get_debug_level(), buffer); + + return snprintf(buf, sizeof(buffer)+1, "%s\n", buffer); + +} + +static ssize_t debug_level_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int sec_debug_level = convert_debug_level_str(buf); + + if (sec_debug_level == 0) + return -EINVAL; + + kernel_sec_set_debug_level(sec_debug_level); + + return size; + +} + +static DEVICE_ATTR(debug_level, S_IRUGO | S_IWUSR , + debug_level_show, debug_level_store); + +#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_AEGIS2) +static ssize_t slideCount_show + (struct device *dev, struct device_attribute *attr, char *buf) +{ + int slideCount; + + sec_get_param(param_slideCount, &slideCount); + + return snprintf(buf, PAGE_SIZE, "%d\n", slideCount); +} + +static ssize_t slideCount_store + (struct device *dev, struct device_attribute *attr,\ + const char *buf, size_t size) +{ + int slideCount; + + sscanf(buf, "%i", &slideCount); + sec_set_param(param_slideCount, &slideCount); + + return size; +} +static DEVICE_ATTR(slideCount, S_IRUGO | S_IWUSR | S_IWGRP,\ + slideCount_show, slideCount_store); +#endif + +/* + * For external CP download + */ +#ifdef CONFIG_GSM_MODEM_SPRD6500 +static ssize_t update_cp_bin_show + (struct device *dev, struct device_attribute *attr, char *buf) +{ + int update = 0; + + sec_get_param(param_update_cp_bin, (void *)&update); + + return snprintf(buf, PAGE_SIZE, "%d\n", update); +} + +static ssize_t update_cp_bin_store + (struct device *dev, struct device_attribute *attr,\ + const char *buf, size_t size) +{ + int update = 0; + + sscanf(buf, "%i", &update); + sec_set_param(param_update_cp_bin, &update); + + return size; +} +static DEVICE_ATTR(update_cp_bin, S_IRUGO | S_IWUSR | S_IWGRP,\ + update_cp_bin_show, update_cp_bin_store); +#endif + + +struct device *sec_misc_dev; + +static struct device_attribute *sec_misc_attrs[] = { + &dev_attr_emmc_checksum_done, + &dev_attr_emmc_checksum_pass, + &dev_attr_rory_control, + &dev_attr_debug_level, +#if defined(CONFIG_MACH_APEXQ) || defined(CONFIG_MACH_AEGIS2) + &dev_attr_slideCount, +#endif +#ifdef CONFIG_GSM_MODEM_SPRD6500 + &dev_attr_update_cp_bin, +#endif +}; + +static int __init sec_misc_init(void) +{ + int ret = 0; + int i; + + ret = misc_register(&sec_misc_device); + if (ret < 0) { + printk(KERN_ERR "misc_register failed!\n"); + goto failed_register_misc; + } + + sec_misc_dev = device_create(sec_class, NULL, 0, NULL, "sec_misc"); + if (IS_ERR(sec_misc_dev)) { + printk(KERN_ERR "failed to create device!\n"); + ret = -ENODEV; + goto failed_create_device; + } + + for (i = 0; i < ARRAY_SIZE(sec_misc_attrs) ; i++) { + ret = device_create_file(sec_misc_dev, sec_misc_attrs[i]); + if (ret < 0) { + pr_err("failed to create device file - %s\n", + dev_attr_emmc_checksum_done.attr.name); + goto failed_create_device_file; + } + } + + wake_lock_init(&sec_misc_wake_lock, WAKE_LOCK_SUSPEND, "sec_misc"); + + return 0; + +failed_create_device_file: + if (i) { + for (--i; i >= 0; i--) + device_remove_file(sec_misc_dev, sec_misc_attrs[i]); + } +failed_create_device: + misc_deregister(&sec_misc_device); +failed_register_misc: + return ret; +} + +static void __exit sec_misc_exit(void) +{ + wake_lock_destroy(&sec_misc_wake_lock); +} + +module_init(sec_misc_init); +module_exit(sec_misc_exit); + +/* Module information */ +MODULE_AUTHOR("Samsung"); +MODULE_DESCRIPTION("Samsung PX misc. driver"); +MODULE_LICENSE("GPL"); diff --git a/drivers/misc/sec_param.c b/drivers/misc/sec_param.c index 5dfd810224f5..00ee84163b26 100755 --- a/drivers/misc/sec_param.c +++ b/drivers/misc/sec_param.c @@ -233,7 +233,7 @@ static ssize_t movinand_checksum_done_show pr_err("checksum is not in valuable range.\n"); ret = 1; } - return snprintf(buf, sizeof(buf), "%u\n", ret); + return snprintf(buf, PAGE_SIZE, "%u\n", ret); } static DEVICE_ATTR(movinand_checksum_done, 0664, movinand_checksum_done_show, NULL); @@ -248,7 +248,7 @@ static ssize_t movinand_checksum_pass_show pr_err("checksum is not in valuable range.\n"); ret = 1; } - return snprintf(buf, sizeof(buf), "%u\n", ret); + return snprintf(buf, PAGE_SIZE, "%u\n", ret); } static DEVICE_ATTR(movinand_checksum_pass, 0664, movinand_checksum_pass_show, NULL); diff --git a/drivers/misc/tzic.c b/drivers/misc/tzic.c index d563a4c08c34..850fdd98e13c 100644 --- a/drivers/misc/tzic.c +++ b/drivers/misc/tzic.c @@ -55,15 +55,13 @@ static struct cdev tzic_cdev; static int ic = STATE_IC_GOOD; static int set_tamper_fuse_cmd(void); static uint8_t get_tamper_fuse_cmd(void); + static int set_tamper_fuse_cmd() { uint32_t fuse_id = HLOS_IMG_TAMPER_FUSE; - if (ic == STATE_IC_BAD) - return 0; - ic = STATE_IC_BAD; return scm_call(SCM_SVC_FUSE, SCM_BLOW_SW_FUSE_ID, &fuse_id, - sizeof(fuse_id), 0, 0); + sizeof(fuse_id), NULL, 0); } static uint8_t get_tamper_fuse_cmd() @@ -94,6 +92,12 @@ static long tzic_ioctl(struct file *file, unsigned cmd, LOG(KERN_INFO "tamper_fuse before = %x\n", ret); switch (cmd) { + case TZIC_IOCTL_GET_FUSE_REQ: { + ret = get_tamper_fuse_cmd(); + LOG(KERN_INFO "tamper_fuse value = %x\n", ret); + + break; + } case TZIC_IOCTL_SET_FUSE_REQ: { LOG(KERN_INFO "ioctl set_fuse\n"); mutex_lock(&tzic_mutex); diff --git a/drivers/mmc/card/Kconfig b/drivers/mmc/card/Kconfig index dce99b1a4ecb..01e48b0879fd 100644 --- a/drivers/mmc/card/Kconfig +++ b/drivers/mmc/card/Kconfig @@ -107,3 +107,8 @@ config MMC_BLOCK_TEST Currently used to test eMMC 4.5 features (packed commands, sanitize, BKOPs). +config MMC_CPRM + tristate "MMC CPRM driver" + default n + help + Say Y here to enable the MMC cprm driver diff --git a/drivers/mmc/card/Makefile b/drivers/mmc/card/Makefile index d55107fb4551..a6772ad14e08 100644 --- a/drivers/mmc/card/Makefile +++ b/drivers/mmc/card/Makefile @@ -4,6 +4,9 @@ obj-$(CONFIG_MMC_BLOCK) += mmc_block.o mmc_block-objs := block.o queue.o +ifeq ($(CONFIG_MMC_CPRM),y) +mmc_block-objs += cprmdrv_samsung.o +endif obj-$(CONFIG_MMC_TEST) += mmc_test.o obj-$(CONFIG_SDIO_UART) += sdio_uart.o diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c index cdc0410c8698..ceb9b459263a 100644 --- a/drivers/mmc/card/block.c +++ b/drivers/mmc/card/block.c @@ -50,6 +50,17 @@ #include "../core/core.h" MODULE_ALIAS("mmc:block"); +#if defined(CONFIG_MMC_CPRM) +#include "cprmdrv_samsung.h" +#include +#define MMC_IOCTL_BASE 0xB3 /* Same as MMC block device major number */ +#define MMC_IOCTL_GET_SECTOR_COUNT _IOR(MMC_IOCTL_BASE, 100, int) +#define MMC_IOCTL_GET_SECTOR_SIZE _IOR(MMC_IOCTL_BASE, 101, int) +#define MMC_IOCTL_GET_BLOCK_SIZE _IOR(MMC_IOCTL_BASE, 102, int) +#define MMC_IOCTL_SET_RETRY_AKE_PROCESS _IOR(MMC_IOCTL_BASE, 104, int) + +static int cprm_ake_retry_flag; +#endif #ifdef MODULE_PARAM_PREFIX #undef MODULE_PARAM_PREFIX #endif diff --git a/drivers/mmc/card/cprmdrv_samsung.c b/drivers/mmc/card/cprmdrv_samsung.c new file mode 100644 index 000000000000..7ab1e0b98664 --- /dev/null +++ b/drivers/mmc/card/cprmdrv_samsung.c @@ -0,0 +1,449 @@ +/* drivers/mmc/cprmdrv_samsung.c + * + * Copyright 2010 Samsung Electronics Co.Ltd + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +#include +#include +#include +#include +#include + + +#include +#include + +#include "cprmdrv_samsung.h" +#include + + +static int mmc_wait_busy(struct mmc_card *card) +{ + int ret, busy; + struct mmc_command cmd; + + busy = 0; + do { + memset(&cmd, 0, sizeof(struct mmc_command)); + + cmd.opcode = MMC_SEND_STATUS; + cmd.arg = card->rca << 16; + cmd.flags = MMC_RSP_R1 | MMC_CMD_AC; + + ret = mmc_wait_for_cmd(card->host, &cmd, 0); + if (ret) + break; + + if (!busy && !(cmd.resp[0] & R1_READY_FOR_DATA)) { + busy = 1; + printk(KERN_INFO "%s: Warning: Host did not " + "wait for busy state to end.\n", + mmc_hostname(card->host)); + } + } while (!(cmd.resp[0] & R1_READY_FOR_DATA)); + + return ret; +} + +static int CPRM_CMD_SecureRW(struct mmc_card *card, + unsigned int command, + unsigned int dir, + unsigned long arg, + unsigned char *buff, + unsigned int length) { + + int err; + int i = 0; + struct mmc_request mrq; + struct mmc_command cmd; + struct mmc_command stop; + struct mmc_data data; + struct scatterlist sg; + + if (command == SD_ACMD25_SECURE_WRITE_MULTI_BLOCK || + command == SD_ACMD18_SECURE_READ_MULTI_BLOCK) { + return -EINVAL; + } + + memset(&cmd, 0, sizeof(struct mmc_command)); + + cmd.opcode = MMC_APP_CMD; + cmd.arg = card->rca << 16; + cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_AC; + + //kishore + mmc_rpm_hold(card->host, &card->dev); + mmc_claim_host(card->host); + + err = mmc_wait_for_cmd(card->host, &cmd, 0); + if (err) + { + printk("CPRM mmc_wait_for_cmd fail = %d ERROR\n", err); + mmc_release_host(card->host); + mmc_rpm_release(card->host, &card->dev); + return (u32)-1; + } + if (!mmc_host_is_spi(card->host) && !(cmd.resp[0] & R1_APP_CMD)) + { + printk("CPRM mmc_host_is_spi fail ERROR\n"); + mmc_release_host(card->host); + mmc_rpm_release(card->host, &card->dev); + return (u32)-1; + } + + printk("CPRM_CMD_SecureRW: 1, command : %d\n", command); + + memset(&cmd, 0, sizeof(struct mmc_command)); + + cmd.opcode = command; + + if (command == SD_ACMD43_GET_MKB) + cmd.arg = arg; + else + cmd.arg = 0; + + cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_ADTC; + + memset(&data, 0, sizeof(struct mmc_data)); + + data.timeout_ns = 100000000; + data.timeout_clks = 0; + data.blksz = length; + data.blocks = 1; + data.flags = dir; + data.sg = &sg; + data.sg_len = 1; + + stop.opcode = MMC_STOP_TRANSMISSION; + stop.arg = 0; + stop.flags = MMC_RSP_R1B | MMC_CMD_AC; + + memset(&mrq, 0, sizeof(struct mmc_request)); + + mrq.cmd = &cmd; + mrq.data = &data; + + if (data.blocks == 1) + mrq.stop = NULL; + else + mrq.stop = &stop; + + printk(KERN_DEBUG"CPRM_CMD_SecureRW: 2\n"); + + sg_init_one(&sg, buff, length); + + printk(KERN_DEBUG"CPRM_CMD_SecureRW: 3\n"); + + + + + mmc_wait_for_req(card->host, &mrq); + + //kishore + mmc_release_host(card->host); + mmc_rpm_release(card->host, &card->dev); + + + printk(KERN_DEBUG"CPRM_CMD_SecureRW: 4\n"); + + i = 0; + do { + printk(KERN_DEBUG"%x", buff[i++]); + if (i > 10) + break; + } while (i < length); + printk(KERN_DEBUG"\n"); + + if (cmd.error) { + printk(KERN_DEBUG "%s]cmd.error=%d\n ", __func__, cmd.error); + return cmd.error; + } + + if (data.error) { + printk(KERN_DEBUG "%s]data.error=%d\n ", __func__, data.error); + return data.error; + } + + err = mmc_wait_busy(card); + printk(KERN_DEBUG"CPRM_CMD_SecureRW: 5\n"); + + if (err) + return err; + + return 0; +} + +static int CPRM_CMD_SecureMultiRW(struct mmc_card *card, + unsigned int command, + unsigned int dir, + unsigned long arg, + unsigned char *buff, + unsigned int length) { + + int err; + + struct mmc_request mrq; + struct mmc_command cmd; + struct mmc_command stop; + struct mmc_data data; + unsigned long flags; + + struct scatterlist sg; + + memset(&cmd, 0, sizeof(struct mmc_command)); + memset(&stop, 0, sizeof(struct mmc_command)); + + cmd.opcode = MMC_APP_CMD; + cmd.arg = card->rca << 16; + cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_AC; + + err = mmc_wait_for_cmd(card->host, &cmd, 0); + if (err) + return (u32)-1; + if (!mmc_host_is_spi(card->host) && !(cmd.resp[0] & R1_APP_CMD)) + return (u32)-1; + + printk(KERN_DEBUG"CPRM_CMD_SecureRW: 1\n"); + + memset(&cmd, 0, sizeof(struct mmc_command)); + + cmd.opcode = command; + + if (command == SD_ACMD43_GET_MKB) + cmd.arg = arg; + else + cmd.arg = 0; + + cmd.flags = MMC_RSP_SPI_R1 | MMC_RSP_R1 | MMC_CMD_ADTC; + + memset(&data, 0, sizeof(struct mmc_data)); + + data.timeout_ns = 100000000; + data.timeout_clks = 0; + data.blksz = 512; + data.blocks = (length + 511) / 512; + + data.flags = dir; + data.sg = &sg; + data.sg_len = 1; + + stop.opcode = MMC_STOP_TRANSMISSION; + stop.arg = 0; + stop.flags = MMC_RSP_R1B | MMC_CMD_AC; + + memset(&mrq, 0, sizeof(struct mmc_request)); + + mrq.cmd = &cmd; + mrq.data = &data; + mrq.stop = &stop; + + + printk(KERN_DEBUG "CPRM_CMD_SecureRW: 2\n"); + + sg_init_one(&sg, buff, length); + + if (dir == MMC_DATA_WRITE) { + local_irq_save(flags); + sg_copy_from_buffer(&sg, data.sg_len, buff, length); + local_irq_restore(flags); + } + printk(KERN_DEBUG "CPRM_CMD_SecureRW: 3\n"); + + mmc_wait_for_req(card->host, &mrq); + + printk(KERN_DEBUG "CPRM_CMD_SecureRW: 4\n"); + + if (cmd.error) { + printk(KERN_DEBUG "%s]cmd.error=%d\n", __func__, cmd.error); + return cmd.error; + } + + if (data.error) { + printk(KERN_DEBUG "%s]data.error=%d\n", __func__, data.error); + return data.error; + } + + err = mmc_wait_busy(card); + printk(KERN_DEBUG "CPRM_CMD_SecureRW: 5\n"); + + if (dir == MMC_DATA_READ) { + local_irq_save(flags); + sg_copy_to_buffer(&sg, data.sg_len, buff, length); + local_irq_restore(flags); + } + + if (err) + return err; + + return 0; +} + + +int stub_sendcmd(struct mmc_card *card, + unsigned int cmd, + unsigned long arg, + unsigned int len, + unsigned char *buff) { + + int returnVal = -1; + unsigned char *kbuffer = NULL; + int direction = 0; + int result = 0; + + if (card == NULL) { + printk(KERN_DEBUG "stub_sendcmd: card is null error\n"); + return -ENXIO; + } + + kbuffer = kmalloc(len, GFP_KERNEL); + if (kbuffer == NULL) { + printk(KERN_DEBUG "malloc failed\n"); + return -ENOMEM; + } + + memset(kbuffer, 0x00, len); + + printk(KERN_DEBUG "%s]cmd=0x%x,len=%d\n ", __func__, cmd, len); + + mmc_claim_host(card->host); + + switch (cmd) { + + case ACMD43: + direction = MMC_DATA_READ; + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD43_GET_MKB, + direction, + arg, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD43_GET_MKB:0x%x\n", returnVal); + break; + + case ACMD44: + direction = MMC_DATA_READ; + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD44_GET_MID, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD44_GET_MID:0x%x\n", returnVal); + break; + + case ACMD45: + direction = MMC_DATA_WRITE; + result = copy_from_user((void *)kbuffer, (void *)buff, len); + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD45_SET_CER_RN1, + direction, + 0, + kbuffer, + len); + + printk(KERN_INFO"SD_ACMD45_SET_CER_RN1 [0x%x]\n ", returnVal); + break; + + case ACMD46: + direction = MMC_DATA_READ; + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD46_GET_CER_RN2, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD46_GET_CER_RN2:0x%x\n", + returnVal); + break; + + case ACMD47: + direction = MMC_DATA_WRITE; + result = copy_from_user((void *)kbuffer, (void *)buff, len); + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD47_SET_CER_RES2, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD47_SET_CER_RES2:0x%x\n", + returnVal); + break; + + case ACMD48: + direction = MMC_DATA_READ; + returnVal = CPRM_CMD_SecureRW(card, + SD_ACMD48_GET_CER_RES1, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD48_GET_CER_RES1:0x%x\n", + returnVal); + break; + + case ACMD25: + direction = MMC_DATA_WRITE; + result = copy_from_user((void *)kbuffer, (void *)buff, len); + returnVal = CPRM_CMD_SecureMultiRW(card, + SD_ACMD25_SECURE_WRITE_MULTI_BLOCK, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD25_SECURE_WRITE_MULTI_BLOCK[%d]=%d\n", + len, returnVal); + break; + + case ACMD18: + direction = MMC_DATA_READ; + returnVal = CPRM_CMD_SecureMultiRW(card, + SD_ACMD18_SECURE_READ_MULTI_BLOCK, + direction, + 0, + kbuffer, + len); + + printk(KERN_DEBUG "SD_ACMD18_SECURE_READ_MULTI_BLOCK [%d]=%d\n", + len, returnVal); + break; + + case ACMD13: + break; + + default: + printk(KERN_DEBUG " %s ] : CMD [ %x ] ERROR", __func__, cmd); + break; + } + + if (returnVal == 0) { + if (direction == MMC_DATA_READ) + result = copy_to_user((void *)buff, + (void *)kbuffer, + len); + + result = returnVal; + printk(KERN_DEBUG "stub_sendcmd SDAS_E_SUCCESS\n"); + } else { + printk(KERN_DEBUG "stub_sendcmd SDAS_E_FAIL\n"); + result = -EIO; + } + + mmc_release_host(card->host); + kfree(kbuffer); + return result; +} diff --git a/drivers/mmc/card/cprmdrv_samsung.h b/drivers/mmc/card/cprmdrv_samsung.h new file mode 100644 index 000000000000..234c6936b42e --- /dev/null +++ b/drivers/mmc/card/cprmdrv_samsung.h @@ -0,0 +1,89 @@ +/* drivers/mmc/cprmdrv_samsung.h + * + * Copyright 2010 Samsung Electronics Co.Ltd + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __CPRM_API_SAMSUNG +#define __CPRM_API_SAMSUNG + +#define SETRESP(x) (x << 11) +#define GETRESP(x) ((x >> 11) & 0x0007) + +#define NORESP SETRESP(0) /* No response command */ +#define R1RESP SETRESP(1) /* r1 response command */ +#define R1BRESP SETRESP(2) /* r1b response command */ +#define R2RESP SETRESP(3) /* r2 response command */ +#define R3RESP SETRESP(4) /* r3 response command */ +#define R6RESP SETRESP(5) /* r6 response command */ +#define R7RESP SETRESP(6) /* r7 response command */ + +#define DT 0x8000 /* With data */ +#define DIR_IN 0x0000 /* Data Transfer read */ +#define DIR_OUT 0x4000 /* Data Transfer write */ +#define ACMD 0x0400 /* Is ACMD */ + +#define ACMD6 (6+R1RESP+ACMD) /* Set Bus Width(SD) */ +#define ACMD13 (13+R1RESP+ACMD+DT+DIR_IN) /* SD Status */ +#define ACMD18 (18+R1RESP+ACMD+DT+DIR_IN) /* Secure Read Multi Block */ +#define ACMD22 (22+R1RESP+ACMD+DT+DIR_IN) /* Send Number Write block */ +#define ACMD23 (23+R1RESP+ACMD) /* Set Write block Erase Count */ +#define ACMD25 (25+R1RESP+ACMD+DT+DIR_OUT) /* Secure Write Multiple Block */ +#define ACMD26 (26+R1RESP+ACMD+DT+DIR_OUT) /* Secure Write MKB */ +#define ACMD38 (38+R1BRESP+ACMD) /* Secure Erase */ +#define ACMD41 (41+R3RESP+ACMD) /* Send App Operating Condition */ +#define ACMD42 (42+R1RESP+ACMD) /* Set Clear Card Detect */ +#define ACMD43 (43+R1RESP+ACMD+DT+DIR_IN) /* Get MKB */ +#define ACMD44 (44+R1RESP+ACMD+DT+DIR_IN) /* Get MID */ +#define ACMD45 (45+R1RESP+ACMD+DT+DIR_OUT) /* Set CER RN1 */ +#define ACMD46 (46+R1RESP+ACMD+DT+DIR_IN) /* Get CER RN2 */ +#define ACMD47 (47+R1RESP+ACMD+DT+DIR_OUT) /* Set CER RES2 */ +#define ACMD48 (48+R1RESP+ACMD+DT+DIR_IN) /* Get CER RES1 */ +#define ACMD49 (49+R1BRESP+ACMD) /* Change Erase Area */ +#define ACMD51 (51+R1RESP+ACMD+DT+DIR_IN) /* Send SCR */ + +/* Application-specific commands supported by all SD cards */ +enum SD_ACMD { + SD_ACMD6_SET_BUS_WIDTH = 6, + SD_ACMD13_SD_STATUS = 13, + SD_ACMD18_SECURE_READ_MULTI_BLOCK = 18, + SD_ACMD22_SEND_NUM_WR_BLOCKS = 22, + SD_ACMD23_SET_WR_BLK_ERASE_COUNT = 23, + SD_ACMD25_SECURE_WRITE_MULTI_BLOCK = 25, + SD_ACMD26_SECURE_WRITE_MKB = 26, + SD_ACMD38_SECURE_ERASE = 38, + SD_ACMD41_SD_APP_OP_COND = 41, + SD_ACMD42_SET_CLR_CARD_DETECT = 42, + SD_ACMD43_GET_MKB = 43, + SD_ACMD44_GET_MID = 44, + SD_ACMD45_SET_CER_RN1 = 45, + SD_ACMD46_GET_CER_RN2 = 46, + SD_ACMD47_SET_CER_RES2 = 47, + SD_ACMD48_GET_CER_RES1 = 48, + SD_ACMD49_CHANGE_SECURE_AREA = 49, + SD_ACMD51_SEND_SCR = 51 +}; + +struct cprm_request { + unsigned int cmd; + unsigned long arg; + unsigned char *buff; + unsigned int len; +}; + +int stub_sendcmd(struct mmc_card *card, + unsigned int cmd, + unsigned long arg, + unsigned int len, + unsigned char *buff); + +#endif /* __CPRM_API_SAMSUNG */ diff --git a/drivers/mmc/core/quirks.c b/drivers/mmc/core/quirks.c index bf08942c60e2..f55900637046 100644 --- a/drivers/mmc/core/quirks.c +++ b/drivers/mmc/core/quirks.c @@ -58,6 +58,13 @@ #define SDIO_DEVICE_ID_MSM_QCA_AR6004_2 0x401 #endif +#ifndef SDIO_VENDOR_ID_BC +#define SDIO_VENDOR_ID_BC 0x2D0 +#endif + +#ifndef SDIO_DEVICE_ID_BC +#define SDIO_DEVICE_ID_BC_BCM4339 0x4339 +#endif /* * This hook just adds a quirk for all sdio devices @@ -75,6 +82,9 @@ static const struct mmc_fixup mmc_fixup_methods[] = { add_quirk_for_sdio_devices, MMC_QUIRK_BROKEN_CLK_GATING), + SDIO_FIXUP(SDIO_VENDOR_ID_BC, SDIO_DEVICE_ID_BC_BCM4339, + remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING), + SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271, remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING), diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c index 9814a83a06fc..65f2ba7e586e 100644 --- a/drivers/mmc/core/sdio.c +++ b/drivers/mmc/core/sdio.c @@ -1292,20 +1292,32 @@ int sdio_reset_comm(struct mmc_card *card) printk("%s():\n", __func__); mmc_claim_host(host); + mmc_set_timing(host, MMC_TIMING_LEGACY); + mmc_set_clock(host, host->f_init); + + sdio_reset(host); mmc_go_idle(host); - mmc_set_clock(host, host->f_min); + mmc_send_if_cond(host, host->ocr_avail); err = mmc_send_io_op_cond(host, 0, &ocr); if (err) goto err; - host->ocr = mmc_select_voltage(host, ocr); + if (host->ocr_avail_sdio) + host->ocr_avail = host->ocr_avail_sdio; + + host->ocr = mmc_select_voltage(host, ocr & ~0x7F); if (!host->ocr) { err = -EINVAL; + printk("%s(): voltage err\n", __func__); goto err; } + if (mmc_host_uhs(host)) + /* to query card if 1.8V signalling is supported */ + host->ocr |= R4_18V_PRESENT; + err = mmc_sdio_init_card(host, host->ocr, card, 0); if (err) goto err; @@ -1322,3 +1334,18 @@ int sdio_reset_comm(struct mmc_card *card) #endif /* CONFIG_BCM4339 || CONFIG_BCM4335 || CONFIG_BCM4354 */ } EXPORT_SYMBOL(sdio_reset_comm); + +#if defined(CONFIG_BCM4339) || defined(CONFIG_BCM4335) || defined(CONFIG_BCM4354) +void sdio_ctrl_power(struct mmc_host *host, bool onoff) +{ + mmc_claim_host(host); + if (onoff) + mmc_power_up(host); + else + mmc_power_off(host); + /* Wait at least 1 ms according to SD spec */ + mmc_delay(1); + mmc_release_host(host); +} +EXPORT_SYMBOL(sdio_ctrl_power); +#endif /* CONFIG_BCM4339 || CONFIG_BCM4335 || CONFIG_BCM4354 */ \ No newline at end of file diff --git a/drivers/mmc/host/msm_sdcc.c b/drivers/mmc/host/msm_sdcc.c index 4e04b0bbc636..37b1b70235ee 100644 --- a/drivers/mmc/host/msm_sdcc.c +++ b/drivers/mmc/host/msm_sdcc.c @@ -5748,7 +5748,7 @@ static int msmsdcc_dt_parse_vreg_info(struct device *dev, #if defined(CONFIG_BCM4335) || defined(CONFIG_BCM4335_MODULE) || defined(CONFIG_BCM4339) || defined(CONFIG_BCM4339_MODULE) || defined(CONFIG_BCM4354) int brcm_wifi_status_register( - void (*callback)(int card_present, void *dev_id), void *dev_id); + void (*callback)(int card_present, void *dev_id), void *dev_id, void *mmc_host); unsigned int brcm_wifi_status(struct device *dev); #endif /* defined(CONFIG_BCM4335) || defined(CONFIG_BCM4335_MODULE) || defined(CONFIG_BCM4339) || defined(CONFIG_BCM4339_MODULE) || defined(CONFIG_BCM4354)*/ @@ -6289,7 +6289,7 @@ msmsdcc_probe(struct platform_device *pdev) goto sdiowakeup_irq_free; } } else if (plat->register_status_notify) { - plat->register_status_notify(msmsdcc_status_notify_cb, host); + plat->register_status_notify(msmsdcc_status_notify_cb, host, host->mmc); } else if (!plat->status) pr_err("%s: No card detect facilities available\n", mmc_hostname(mmc)); diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c index fd243274a4ba..106d1f0aa151 100644 --- a/drivers/mmc/host/sdhci-msm.c +++ b/drivers/mmc/host/sdhci-msm.c @@ -324,7 +324,8 @@ struct sdhci_msm_pltfm_data { defined(CONFIG_BCM4339) || defined(CONFIG_BCM4339_MODULE) || \ defined(CONFIG_BCM4354) || defined(CONFIG_BCM4354_MODULE) bool is_status_cb; - int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), void *dev_id); + int (*register_status_notify)(void (*callback)(int card_present, void *dev_id), + void *dev_id, void *mmc_host); #endif /* CONFIG_BCM4335 || CONFIG_BCM4335_MODULE || CONFIG_BCM4339 || CONFIG_BCCM4339_MODULE */ }; @@ -381,7 +382,7 @@ enum vdd_io_level { defined(CONFIG_BCM4339) || defined(CONFIG_BCM4339_MODULE) || \ defined(CONFIG_BCM4354) || defined(CONFIG_BCM4354_MODULE) extern int brcm_wifi_status_register( - void (*callback)(int card_present, void *dev_id), void *dev_id); + void (*callback)(int card_present, void *dev_id), void *dev_id, void *mmc_host); #endif /* MSM platform specific tuning */ @@ -3233,7 +3234,7 @@ static int __devinit sdhci_msm_probe(struct platform_device *pdev) pr_err("%s: id %d\n", mmc_hostname(msm_host->mmc), msm_host->id); if (msm_host->pdata->is_status_cb) { msm_host->pdata->register_status_notify = brcm_wifi_status_register; - msm_host->pdata->register_status_notify(sdhci_msm_status_notify, host); + msm_host->pdata->register_status_notify(sdhci_msm_status_notify, host, host->mmc); host->mmc->pm_flags |= MMC_PM_IGNORE_PM_NOTIFY | MMC_PM_KEEP_POWER; host->mmc->pm_caps |= MMC_PM_IGNORE_PM_NOTIFY | MMC_PM_KEEP_POWER; host->mmc->rescan_disable=1; diff --git a/drivers/motor/Kconfig b/drivers/motor/Kconfig index dbd3a681ddf2..949506bc864c 100644 --- a/drivers/motor/Kconfig +++ b/drivers/motor/Kconfig @@ -10,6 +10,11 @@ menuconfig VIBETONZ ------------- ------------- +config TACTILE_ASSIST + tristate "Auto Haptic" + default n + depends on VIBETONZ + config MOTOR_DRV_MAX77803 tristate "Maxim MAX77803 motor" default n diff --git a/drivers/motor/VibeOSKernelLinuxHRTime.c b/drivers/motor/VibeOSKernelLinuxHRTime.c index c58b4c8ff56c..bba4ebbfbce5 100644 --- a/drivers/motor/VibeOSKernelLinuxHRTime.c +++ b/drivers/motor/VibeOSKernelLinuxHRTime.c @@ -159,6 +159,14 @@ static int VibeOSKernelProcessData(void *data) if (g_bstoprequested) { VibeOSKernelLinuxStopTimer(); +#ifdef CONFIG_TACTILE_ASSIST + // stop all actuator + for (i = 0; i < NUM_ACTUATORS; i++) + { + ImmVibeSPI_ForceOut_AmpDisable(i); + } +#endif + /* Reset watchdog counter */ g_nwatchdog_counter = 0; diff --git a/drivers/motor/immvibespi.c b/drivers/motor/immvibespi.c index 074d1b000860..4b72059c900d 100644 --- a/drivers/motor/immvibespi.c +++ b/drivers/motor/immvibespi.c @@ -321,6 +321,9 @@ int vib_config_pwm_device(void) /* ** Called by the real-time loop to set PWM duty cycle */ +#ifdef CONFIG_TACTILE_ASSIST +static bool g_bOutputDataBufferEmpty = 1; +#endif static int32_t ImmVibeSPI_ForceOut_SetSamples(u_int8_t nActuatorIndex, u_int16_t nOutputSignalBitDepth, u_int16_t nBufferSizeInBytes, @@ -329,6 +332,16 @@ static int32_t ImmVibeSPI_ForceOut_SetSamples(u_int8_t nActuatorIndex, int8_t nforce; static int8_t pre_nforce; int ret; + +#ifdef CONFIG_TACTILE_ASSIST + if (g_bOutputDataBufferEmpty) { + nActuatorIndex = 0; + nOutputSignalBitDepth = 8; + nBufferSizeInBytes = 1; + pForceOutputBuffer[0] = 0; + } +#endif + switch (nOutputSignalBitDepth) { case 8: /* pForceOutputBuffer is expected to contain 1 byte */ diff --git a/drivers/motor/tspdrv.c b/drivers/motor/tspdrv.c index 45116a0faf0e..0fba7a6d19df 100755 --- a/drivers/motor/tspdrv.c +++ b/drivers/motor/tspdrv.c @@ -121,6 +121,20 @@ static int vibrator_work; struct vibrator_platform_data vibrator_drvdata; +/* + * msm8974_sec tspdrv vibration strength control + * (/sys/class/timed_output/vibrator/pwm_value) + * + * sysfs pwm_value + * range : 0 - 100 (100 = old hardcoded value) + * + * Author : Park Ju Hyung + * Modified by : Jean-Pierre Rasquin + */ + +#define BASE_STRENGTH 126 +static unsigned int pwm_val = 100; + static int set_vibetonz(int timeout) { int8_t strength; @@ -134,7 +148,7 @@ static int set_vibetonz(int timeout) } else { DbgOut((KERN_INFO "tspdrv: ENABLE\n")); if (vibrator_drvdata.vib_model == HAPTIC_PWM) { - strength = 126; + strength = (int8_t) (BASE_STRENGTH * pwm_val / 100); /* 90% duty cycle */ ImmVibeSPI_ForceOut_SetSamples(0, 8, 1, &strength); } else { /* HAPTIC_MOTOR */ @@ -147,6 +161,34 @@ static int set_vibetonz(int timeout) return 0; } +static ssize_t pwm_value_show(struct device *dev, struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%u\n", pwm_val); +} + +ssize_t pwm_value_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) +{ + unsigned int new_pwm_val; + + if (!sscanf(buf, "%u", &new_pwm_val)) + return -EINVAL; + + if (new_pwm_val < 0 || new_pwm_val > 100) { + pr_info("[VIB] %s: new pwm_val %d is out of [0, 100] range\n", __func__, pwm_val); + return -EINVAL; + } else { + pr_info("[VIB] %s: pwm_val=%d\n", __func__, pwm_val); + } + + if (new_pwm_val != pwm_val) + pwm_val = new_pwm_val; + + return count; +} + +static DEVICE_ATTR(pwm_value, S_IRUGO | S_IWUSR, + pwm_value_show, pwm_value_store); + static void _set_vibetonz_work(struct work_struct *unused) { set_vibetonz(vibrator_work); @@ -187,6 +229,9 @@ static void enable_vibetonz_from_user(struct timed_output_dev *dev, int value) hrtimer_cancel(&timer); /* set_vibetonz(value); */ +#ifdef CONFIG_TACTILE_ASSIST + g_bOutputDataBufferEmpty = 0; +#endif vibrator_work = value; schedule_work(&vibetonz_work); @@ -216,9 +261,17 @@ static void vibetonz_start(void) ret = timed_output_dev_register(&timed_output_vt); - if (ret) + if (ret) { DbgOut((KERN_ERR "tspdrv: timed_output_dev_register is fail\n")); + return; + } + + ret = device_create_file(timed_output_vt.dev, &dev_attr_pwm_value); + + if (ret) + DbgOut((KERN_ERR + "tspdrv: create sysfs fail: pwm_value\n")); } /* File IO */ @@ -670,12 +723,23 @@ static ssize_t write(struct file *file, const char *buf, size_t count, DbgOut((KERN_ERR "tspdrv: unauthorized write.\n")); return 0; } - +#ifdef CONFIG_TACTILE_ASSIST /* Check buffer size */ + if ((count < SPI_HEADER_SIZE) || (count > SPI_BUFFER_SIZE)) { + DbgOut((KERN_ERR "tspdrv: invalid write buffer size.\n")); + return 0; + } + if (count == SPI_HEADER_SIZE) + g_bOutputDataBufferEmpty = 1; + else + g_bOutputDataBufferEmpty = 0; + +#else if ((count <= SPI_HEADER_SIZE) || (count > SPI_BUFFER_SIZE)) { DbgOut((KERN_ERR "tspdrv: invalid write buffer size.\n")); return 0; } +#endif /* Copy immediately the input buffer */ if (0 != copy_from_user(g_cwrite_buffer, buf, count)) { @@ -690,7 +754,11 @@ static ssize_t write(struct file *file, const char *buf, size_t count, samples_buffer *pinput_buffer = (samples_buffer *)(&g_cwrite_buffer[i]); +#ifdef CONFIG_TACTILE_ASSIST + if ((i + SPI_HEADER_SIZE) > count) { +#else if ((i + SPI_HEADER_SIZE) >= count) { +#endif /* ** Index is about to go beyond the buffer size. ** (Should never happen). @@ -786,7 +854,7 @@ static long ioctl(struct file *filp, unsigned int cmd, unsigned long arg) #ifdef QA_TEST int i; #endif - + printk(KERN_DEBUG "tspdrv: %s %d\n", __func__, cmd); /* DbgOut(KERN_INFO "tspdrv: ioctl cmd[0x%x].\n", cmd); */ switch (cmd) { case TSPDRV_STOP_KERNEL_TIMER: @@ -817,7 +885,9 @@ static long ioctl(struct file *filp, unsigned int cmd, unsigned long arg) break; case TSPDRV_MAGIC_NUMBER: +#ifdef CONFIG_TACTILE_ASSIST case TSPDRV_SET_MAGIC_NUMBER: +#endif filp->private_data = (void *)TSPDRV_MAGIC_NUMBER; break; @@ -837,8 +907,15 @@ static long ioctl(struct file *filp, unsigned int cmd, unsigned long arg) ** If a stop was requested, ignore the request as the amp ** will be disabled by the timer proc when it's ready */ +#ifdef CONFIG_TACTILE_ASSIST + g_bstoprequested = true; + /* Last data processing to disable amp and stop timer */ + VibeOSKernelProcessData(NULL); + g_bisplaying = false; +#else if (!g_bstoprequested) ImmVibeSPI_ForceOut_AmpDisable(arg); +#endif wake_unlock(&vib_wake_lock); break; diff --git a/drivers/motor/tspdrv.h b/drivers/motor/tspdrv.h index 7b923d754d32..ddf5e56b1e99 100644 --- a/drivers/motor/tspdrv.h +++ b/drivers/motor/tspdrv.h @@ -42,9 +42,14 @@ extern struct vibrator_platform_data vibrator_drvdata; #define MODULE_NAME "tspdrv" #define TSPDRV "/dev/"MODULE_NAME #define TSPDRV_MAGIC_NUMBER 0x494D4D52 + +#ifdef CONFIG_TACTILE_ASSIST #define TSPDRV_IOCTL_GROUP 0x52 #define TSPDRV_SET_MAGIC_NUMBER _IO(TSPDRV_IOCTL_GROUP, 2) +#endif + #define TSPDRV_STOP_KERNEL_TIMER _IO(TSPDRV_MAGIC_NUMBER & 0xFF, 1) + /* ** Obsolete IOCTL command ** #define TSPDRV_IDENTIFY_CALLER _IO(TSPDRV_MAGIC_NUMBER & 0xFF, 2) @@ -93,13 +98,12 @@ int32_t g_nforce_32; #if defined(CONFIG_MACH_KS01SKT) \ || defined(CONFIG_MACH_KS01KTT) || defined(CONFIG_MACH_KS01LGT) \ - || defined(CONFIG_MACH_JACTIVESKT) || defined(CONFIG_MACH_HLTEDCM) + || defined(CONFIG_MACH_JACTIVESKT) || defined(CONFIG_MACH_HLTEDCM) \ + || defined(CONFIG_MACH_HLTEKDI) #define MOTOR_STRENGTH 94/*MOTOR_STRENGTH 94 %*/ #elif defined(CONFIG_MACH_LT03EUR) || defined(CONFIG_MACH_LT03SKT)\ || defined(CONFIG_MACH_LT03KTT) || defined(CONFIG_MACH_LT03LGT) || defined(CONFIG_MACH_PICASSO_LTE) #define MOTOR_STRENGTH 98/*MOTOR_STRENGTH 98 %*/ -#elif defined(CONFIG_MACH_JS01LTEDCM) -#define MOTOR_STRENGTH 93/*MOTOR_STRENGTH 93 %*/ #elif defined(CONFIG_MACH_HLTEUSC) || defined(CONFIG_MACH_HLTEVZW) #define MOTOR_STRENGTH 99/*MOTOR_STRENGTH 99 %*/ #elif defined(CONFIG_SEC_K_PROJECT) @@ -114,7 +118,7 @@ int32_t g_nforce_32; #define GP_CLK_N_DEFAULT 138 #define GP_CLK_D_DEFAULT 69 /* 50% duty cycle */ #define IMM_PWM_MULTIPLIER 137 -#elif defined (CONFIG_MACH_JS01LTEDCM) || defined (CONFIG_MACH_JS01LTESBM) +#elif defined (CONFIG_MACH_HLTEDCM) || defined (CONFIG_MACH_HLTEKDI) || defined (CONFIG_MACH_JS01LTEDCM) || defined (CONFIG_MACH_JS01LTESBM) #define GP_CLK_M_DEFAULT 2 #define GP_CLK_N_DEFAULT 92 #define GP_CLK_D_DEFAULT 46 /* 50% duty cycle */ diff --git a/drivers/net/ppp/pppopns.c b/drivers/net/ppp/pppopns.c index 1681bd77eba0..64f6e36e4d97 100644 --- a/drivers/net/ppp/pppopns.c +++ b/drivers/net/ppp/pppopns.c @@ -65,6 +65,61 @@ static inline struct meta *skb_meta(struct sk_buff *skb) return (struct meta *)skb->cb; } +static void recv_queue_timer_callback(unsigned long data); +static void traverse_receive_queue(struct sock *sk) +{ + struct pppox_sock *po = pppox_sk(sk); + struct pppopns_opt *opt = &pppox_sk(sk)->proto.pns; + + struct sk_buff *skb; + struct sk_buff *skb1; + struct meta *meta; + __u32 now = jiffies; + + /* Remove packets from receive queue as long as + * 1. the receive buffer is full, + * 2. they are queued longer than one second, or + * 3. there are no missing packets before them. */ + skb_queue_walk_safe(&sk->sk_receive_queue, skb, skb1) { + meta = skb_meta(skb); + if (atomic_read(&sk->sk_rmem_alloc) < sk->sk_rcvbuf && + now - meta->timestamp < (HZ - 5) && + meta->sequence != opt->recv_sequence) + break; + skb_unlink(skb, &sk->sk_receive_queue); + opt->recv_sequence = meta->sequence + 1; + skb_orphan(skb); + ppp_input(&po->chan, skb); + } + + if (skb_queue_len(&sk->sk_receive_queue) > 0) { + /* Start the timer. The timer will + expire after one second. When the + timer expires, the receive_queue is + checked and all packets older than + one second are removed from the queue and + passed forward. */ + if (timer_pending(&po->recv_queue_timer)) { + /* Something is wrong. Recv timer is already active. However, Ignoring...*/ + } else { + init_timer(&po->recv_queue_timer); + po->recv_queue_timer.data = (unsigned long)sk; + po->recv_queue_timer.function = recv_queue_timer_callback; + po->recv_queue_timer.expires = now + HZ; + add_timer(&po->recv_queue_timer); + } + } +} + +static void recv_queue_timer_callback(unsigned long data) +{ + struct sock *sk = (struct sock *)data; + + spin_lock(&pppox_sk(sk)->recv_queue_lock); + traverse_receive_queue(sk); + spin_unlock(&pppox_sk(sk)->recv_queue_lock); +} + /******************************************************************************/ static int pppopns_recv_core(struct sock *sk_raw, struct sk_buff *skb) @@ -119,17 +174,19 @@ static int pppopns_recv_core(struct sock *sk_raw, struct sk_buff *skb) goto drop; /* Perform reordering if sequencing is enabled. */ - if ((opt->ppp_flags & SC_GRE_SEQ_CHK) && - (hdr->bits & PPTP_GRE_SEQ_BIT)) { + if (hdr->bits & PPTP_GRE_SEQ_BIT) { struct sk_buff *skb1; + spin_lock(&pppox_sk(sk)->recv_queue_lock); /* Insert the packet into receive queue in order. */ skb_set_owner_r(skb, sk); skb_queue_walk(&sk->sk_receive_queue, skb1) { struct meta *meta1 = skb_meta(skb1); __s32 order = meta->sequence - meta1->sequence; - if (order == 0) + if (order == 0) { + spin_unlock(&pppox_sk(sk)->recv_queue_lock); goto drop; + } if (order < 0) { meta->timestamp = meta1->timestamp; skb_insert(skb1, skb, &sk->sk_receive_queue); @@ -141,22 +198,12 @@ static int pppopns_recv_core(struct sock *sk_raw, struct sk_buff *skb) meta->timestamp = now; skb_queue_tail(&sk->sk_receive_queue, skb); } - - /* Remove packets from receive queue as long as - * 1. the receive buffer is full, - * 2. they are queued longer than one second, or - * 3. there are no missing packets before them. */ - skb_queue_walk_safe(&sk->sk_receive_queue, skb, skb1) { - meta = skb_meta(skb); - if (atomic_read(&sk->sk_rmem_alloc) < sk->sk_rcvbuf && - now - meta->timestamp < HZ && - meta->sequence != opt->recv_sequence) - break; - skb_unlink(skb, &sk->sk_receive_queue); - opt->recv_sequence = meta->sequence + 1; - skb_orphan(skb); - ppp_input(&pppox_sk(sk)->chan, skb); + + if (timer_pending(&pppox_sk(sk)->recv_queue_timer)) { + del_timer_sync(&pppox_sk(sk)->recv_queue_timer); } + traverse_receive_queue(sk); + spin_unlock(&pppox_sk(sk)->recv_queue_lock); return NET_RX_SUCCESS; } @@ -319,6 +366,7 @@ static int pppopns_connect(struct socket *sock, struct sockaddr *useraddr, static int pppopns_release(struct socket *sock) { struct sock *sk = sock->sk; + struct pppox_sock *po = pppox_sk(sk); if (!sk) return 0; @@ -329,6 +377,14 @@ static int pppopns_release(struct socket *sock) return -EBADF; } + if (po) { + spin_lock(&po->recv_queue_lock); + if (po && timer_pending( &po->recv_queue_timer )) { + del_timer_sync( &po->recv_queue_timer ); + } + spin_unlock(&po->recv_queue_lock); + } + if (sk->sk_state != PPPOX_NONE) { struct sock *sk_raw = (struct sock *)pppox_sk(sk)->chan.private; lock_sock(sk_raw); @@ -395,6 +451,8 @@ static int pppopns_create(struct net *net, struct socket *sock) po = pppox_sk(sk); opt = &po->proto.pns; opt->ppp_flags = SC_GRE_SEQ_CHK; + init_timer(&po->recv_queue_timer); + spin_lock_init(&po->recv_queue_lock); return 0; } diff --git a/drivers/net/wireless/bcmdhd/Makefile b/drivers/net/wireless/bcmdhd/Makefile index d2f69f39569b..7b3d01b691cd 100644 --- a/drivers/net/wireless/bcmdhd/Makefile +++ b/drivers/net/wireless/bcmdhd/Makefile @@ -105,30 +105,26 @@ DHDCFLAGS += -DWAIT_DEQUEUE # Config PM Control DHDCFLAGS += -DCONFIG_CONTROL_PM +# Use Android wake lock mechanism +DHDCFLAGS += -DCONFIG_HAS_WAKELOCK + # idle count DHDCFLAGS += -DDHD_USE_IDLECOUNT # Used short dwell time during initial scan DHDCFLAGS += -DUSE_INITIAL_SHORT_DWELL_TIME -############ -# JellyBean -############ +########## +# KitKat +########## +# Definitions are filtered by Kernel version DHDCFLAGS += -DWL_ENABLE_P2P_IF -DHDCFLAGS += -DMULTIPLE_SUPPLICANT -DHDCFLAGS += -DWL_CFG80211_STA_EVENT - -################# -# JellyBean Plus -################# DHDCFLAGS += -DWL_SUPPORT_BACKPORTED_KPATCHES - -######################################################## -# Kitkat Only, These FLAGS should be removed on JB/JBP. -######################################################## +# Default definitions for KitKat +DHDCFLAGS += -DWL_CFG80211_STA_EVENT DHDCFLAGS += -DWL_IFACE_COMB_NUM_CHANNELS +# To support p2p private command on kernel 3.8 or above DHDCFLAGS += -DWL_NEWCFG_PRIVCMD_SUPPORT -DHDCFLAGS :=$(filter-out -DMULTIPLE_SUPPLICANT,$(DHDCFLAGS)) ########################## # driver type @@ -158,7 +154,7 @@ ifneq ($(CONFIG_BCM4339),) DHDCFLAGS += -DCUSTOM_AMPDU_BA_WSIZE=64 -DCUSTOM_IBSS_AMPDU_BA_WSIZE=16 DHDCFLAGS += -DCUSTOM_DPC_CPUCORE=0 DHDCFLAGS += -DPROP_TXSTATUS_VSDB -ifeq ($(CONFIG_ARCH_MSM8974),y) +ifeq ($(CONFIG_ARCH_MSM),y) DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000 endif @@ -209,7 +205,7 @@ ifneq ($(CONFIG_BCM4335),) ifeq ($(CONFIG_MACH_JF),y) DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32 endif -ifeq ($(CONFIG_ARCH_MSM8974),y) +ifeq ($(CONFIG_ARCH_MSM),y) DHDCFLAGS += -DCUSTOM_DEF_TXGLOM_SIZE=32 -DDHD_TXBOUND=32 DHDCFLAGS += -DENABLE_ADAPTIVE_SCHED -DCUSTOM_CPUFREQ_THRESH=1000000 endif diff --git a/drivers/net/wireless/bcmdhd/aiutils.c b/drivers/net/wireless/bcmdhd/aiutils.c index ea941516042b..15c4099cf3a6 100644 --- a/drivers/net/wireless/bcmdhd/aiutils.c +++ b/drivers/net/wireless/bcmdhd/aiutils.c @@ -2,7 +2,7 @@ * Misc utility routines for accessing chip-specific features * of the SiliconBackplane-based Broadcom chips. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmevent.c b/drivers/net/wireless/bcmdhd/bcmevent.c index 5fa789271f7b..d0a97baa2bd3 100644 --- a/drivers/net/wireless/bcmdhd/bcmevent.c +++ b/drivers/net/wireless/bcmdhd/bcmevent.c @@ -1,7 +1,7 @@ /* * bcmevent read-only data shared by kernel or app layers * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmsdh.c b/drivers/net/wireless/bcmdhd/bcmsdh.c index d3cdd740397e..e814276ac7e5 100644 --- a/drivers/net/wireless/bcmdhd/bcmsdh.c +++ b/drivers/net/wireless/bcmdhd/bcmsdh.c @@ -2,7 +2,7 @@ * BCMSDH interface glue * implement bcmsdh API for SDIOH driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -636,7 +636,7 @@ bcmsdh_waitlockfree(void *sdh) } -#ifdef BCMSPI /* 4329 gSPI won't have CIS reads. */ +#ifdef BCMSPI /* 4329 gSPI won't have CIS reads. */ int bcmsdh_query_device(void *sdh) { diff --git a/drivers/net/wireless/bcmdhd/bcmsdh_linux.c b/drivers/net/wireless/bcmdhd/bcmsdh_linux.c index 2bfb2e462154..409695334628 100644 --- a/drivers/net/wireless/bcmdhd/bcmsdh_linux.c +++ b/drivers/net/wireless/bcmdhd/bcmsdh_linux.c @@ -1,7 +1,7 @@ /* * SDIO access interface for drivers - linux specific (pci only) * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c b/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c index 68d34c789309..0d420166f94c 100644 --- a/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c +++ b/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c @@ -1,7 +1,7 @@ /* * BCMSDH Function Driver for the native SDIO/MMC driver in the Linux Kernel * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c b/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c index 523837544a56..c3a5553a9a59 100644 --- a/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c +++ b/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c @@ -1,7 +1,7 @@ /* * BCMSDH Function Driver for the native SDIO/MMC driver in the Linux Kernel * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmsdspi_linux.c b/drivers/net/wireless/bcmdhd/bcmsdspi_linux.c index 3d74edc5a270..0f0786921132 100644 --- a/drivers/net/wireless/bcmdhd/bcmsdspi_linux.c +++ b/drivers/net/wireless/bcmdhd/bcmsdspi_linux.c @@ -1,7 +1,7 @@ /* * Broadcom SPI Host Controller Driver - Linux Per-port * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmspibrcm.c b/drivers/net/wireless/bcmdhd/bcmspibrcm.c index 6de84f3a46be..64ad01922475 100644 --- a/drivers/net/wireless/bcmdhd/bcmspibrcm.c +++ b/drivers/net/wireless/bcmdhd/bcmspibrcm.c @@ -1,7 +1,7 @@ /* * Broadcom BCMSDH to gSPI Protocol Conversion Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmutils.c b/drivers/net/wireless/bcmdhd/bcmutils.c index 03940289eb34..3836eed4afee 100644 --- a/drivers/net/wireless/bcmdhd/bcmutils.c +++ b/drivers/net/wireless/bcmdhd/bcmutils.c @@ -1,7 +1,7 @@ /* * Driver O/S-independent utility routines * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -20,7 +20,7 @@ * Notwithstanding the above, under no circumstances may you combine this * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. - * $Id: bcmutils.c 427979 2013-10-07 08:35:57Z $ + * $Id: bcmutils.c 440953 2013-12-04 13:39:58Z $ */ #include @@ -55,6 +55,7 @@ void *_bcmutils_dummy_fn = NULL; + #ifdef BCMDRIVER @@ -2313,7 +2314,7 @@ bcm_uint64_divide(uint32* r, uint32 a_high, uint32 a_low, uint32 b) *r = r0; } -#ifndef setbit /* As in the header file */ +#ifndef setbit /* As in the header file */ #ifdef BCMUTILS_BIT_MACROS_USE_FUNCS /* Set bit in byte array. */ void diff --git a/drivers/net/wireless/bcmdhd/bcmwifi_channels.c b/drivers/net/wireless/bcmdhd/bcmwifi_channels.c index 97c1b6f764e2..d54b452e0948 100644 --- a/drivers/net/wireless/bcmdhd/bcmwifi_channels.c +++ b/drivers/net/wireless/bcmdhd/bcmwifi_channels.c @@ -3,7 +3,7 @@ * Contents are wifi-specific, used by any kernel or app-level * software that might want wifi things as it grows. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -766,6 +766,7 @@ wf_chspec_valid(chanspec_t chanspec) if (chspec_ch == 165) i = 0; + if (chspec_ch == 34 || chspec_ch == 38 || chspec_ch == 42 || chspec_ch == 46) i = 0; diff --git a/drivers/net/wireless/bcmdhd/bcmwifi_channels.h b/drivers/net/wireless/bcmdhd/bcmwifi_channels.h index eeb09203297a..08a0f8b797c7 100644 --- a/drivers/net/wireless/bcmdhd/bcmwifi_channels.h +++ b/drivers/net/wireless/bcmdhd/bcmwifi_channels.h @@ -3,7 +3,7 @@ * This header file housing the define and function prototype use by * both the wl driver, tools & Apps. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/bcmwifi_rates.h b/drivers/net/wireless/bcmdhd/bcmwifi_rates.h index 42b9b9e211ad..079c99b085c9 100644 --- a/drivers/net/wireless/bcmdhd/bcmwifi_rates.h +++ b/drivers/net/wireless/bcmdhd/bcmwifi_rates.h @@ -1,7 +1,7 @@ /* * Indices for 802.11 a/b/g/n/ac 1-3 chain symmetric transmit rates * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd.h b/drivers/net/wireless/bcmdhd/dhd.h index c5578c22ee10..721a514c8215 100644 --- a/drivers/net/wireless/bcmdhd/dhd.h +++ b/drivers/net/wireless/bcmdhd/dhd.h @@ -4,7 +4,7 @@ * Provides type definitions and function prototypes used to link the * DHD OS, bus, and protocol modules. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -116,7 +116,7 @@ enum dhd_op_flags { #define MAX_CNTL_TX_TIMEOUT 2 #endif /* MAX_CNTL_TX_TIMEOUT */ #ifndef MAX_CNTL_RX_TIMEOUT -#define MAX_CNTL_RX_TIMEOUT 1 +#define MAX_CNTL_RX_TIMEOUT 2 #endif /* MAX_CNTL_RX_TIMEOUT */ #define DHD_SCAN_ASSOC_ACTIVE_TIME 40 /* ms: Embedded default Active setting from DHD */ @@ -653,7 +653,9 @@ extern int dhd_keep_alive_onoff(dhd_pub_t *dhd); #define DHD_MULTICAST6_FILTER_NUM 3 #define DHD_MDNS_FILTER_NUM 4 #define DHD_ARP_FILTER_NUM 5 -extern int dhd_os_enable_packet_filter(dhd_pub_t *dhdp, int val); + + +extern int dhd_os_enable_packet_filter(dhd_pub_t *dhdp, int val); extern void dhd_enable_packet_filter(int value, dhd_pub_t *dhd); extern int net_os_enable_packet_filter(struct net_device *dev, int val); extern int net_os_rxfilter_add_remove(struct net_device *dev, int val, int num); diff --git a/drivers/net/wireless/bcmdhd/dhd_bta.c b/drivers/net/wireless/bcmdhd/dhd_bta.c index c7dd6574e1de..e6861357079d 100644 --- a/drivers/net/wireless/bcmdhd/dhd_bta.c +++ b/drivers/net/wireless/bcmdhd/dhd_bta.c @@ -1,7 +1,7 @@ /* * BT-AMP support routines * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_bta.h b/drivers/net/wireless/bcmdhd/dhd_bta.h index 73ccea1683f7..db636a8c20c7 100644 --- a/drivers/net/wireless/bcmdhd/dhd_bta.h +++ b/drivers/net/wireless/bcmdhd/dhd_bta.h @@ -1,7 +1,7 @@ /* * BT-AMP support routines * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_bus.h b/drivers/net/wireless/bcmdhd/dhd_bus.h index 5b922ef0c371..b0d96bff4cb7 100644 --- a/drivers/net/wireless/bcmdhd/dhd_bus.h +++ b/drivers/net/wireless/bcmdhd/dhd_bus.h @@ -4,7 +4,7 @@ * Provides type definitions and function prototypes used to link the * DHD OS, bus, and protocol modules. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_cdc.c b/drivers/net/wireless/bcmdhd/dhd_cdc.c index 71a644936ab4..6d0f7fdfa11f 100644 --- a/drivers/net/wireless/bcmdhd/dhd_cdc.c +++ b/drivers/net/wireless/bcmdhd/dhd_cdc.c @@ -1,7 +1,7 @@ /* * DHD Protocol Module for CDC and BDC. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_cfg80211.c b/drivers/net/wireless/bcmdhd/dhd_cfg80211.c index e4984c6a6e3d..147760da8e9e 100644 --- a/drivers/net/wireless/bcmdhd/dhd_cfg80211.c +++ b/drivers/net/wireless/bcmdhd/dhd_cfg80211.c @@ -1,7 +1,7 @@ /* * Linux cfg80211 driver - Dongle Host Driver (DHD) related * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_cfg80211.h b/drivers/net/wireless/bcmdhd/dhd_cfg80211.h index c5c8c215f995..74e2b80bf183 100644 --- a/drivers/net/wireless/bcmdhd/dhd_cfg80211.h +++ b/drivers/net/wireless/bcmdhd/dhd_cfg80211.h @@ -1,7 +1,7 @@ /* * Linux cfg80211 driver - Dongle Host Driver (DHD) related * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_common.c b/drivers/net/wireless/bcmdhd/dhd_common.c index 90ff3502c678..39eec2ac40cc 100644 --- a/drivers/net/wireless/bcmdhd/dhd_common.c +++ b/drivers/net/wireless/bcmdhd/dhd_common.c @@ -1,7 +1,7 @@ /* * Broadcom Dongle Host Driver (DHD), common DHD core. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: dhd_common.c 439201 2013-11-26 00:31:53Z $ + * $Id: dhd_common.c 447528 2014-01-09 11:26:43Z $ */ #include #include @@ -76,6 +76,8 @@ extern void htsf_update(struct dhd_info *dhd, void *data); int dhd_msg_level = DHD_ERROR_VAL; +extern int disable_proptx; + #include char fw_path[MOD_PARAM_PATHLEN]; @@ -508,6 +510,7 @@ dhd_doiovar(dhd_pub_t *dhd_pub, const bcm_iovar_t *vi, uint32 actionid, const ch case IOV_SVAL(IOV_PROPTXSTATUS_ENABLE): dhd_pub->wlfc_enabled = int_val? 1 : 0; + disable_proptx = int_val? 0 : 1; break; case IOV_GVAL(IOV_PROPTXSTATUS_MODE): { @@ -2125,12 +2128,6 @@ dhd_get_suspend_bcn_li_dtim(dhd_pub_t *dhd) goto exit; } - /* if associated APs Beacon more that 100msec do no dtim skip */ - if (ap_beacon > MAX_DTIM_SKIP_BEACON_INTERVAL) { - DHD_ERROR(("%s NO dtim skip for AP with beacon %d ms\n", __FUNCTION__, ap_beacon)); - goto exit; - } - /* read associated ap's dtim setup */ if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_GET_DTIMPRD, &dtim_period, sizeof(dtim_period), FALSE, 0)) < 0) { diff --git a/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c b/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c index a5093a6bfcc5..4f3f2c3ae356 100644 --- a/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c +++ b/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c @@ -1,6 +1,6 @@ /* * Customer code to add GPIO control during WLAN start/stop -* Copyright (C) 1999-2013, Broadcom Corporation +* Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_custom_sec.c b/drivers/net/wireless/bcmdhd/dhd_custom_sec.c index 7a0571b5b860..d57a42e2d808 100644 --- a/drivers/net/wireless/bcmdhd/dhd_custom_sec.c +++ b/drivers/net/wireless/bcmdhd/dhd_custom_sec.c @@ -1,7 +1,7 @@ /* * Customer HW 4 dependant file * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -107,7 +107,6 @@ const struct cntry_locales_custom translate_custom_table[] = { #endif /* defined(BCM4330_CHIP) || defined(BCM4334_CHIP) || defined(BCM43241_CHIP) */ #if defined(BCM4334_CHIP) || defined(BCM43241_CHIP) {"RU", "RU", 13}, - {"SG", "SG", 4}, {"US", "US", 46}, {"UA", "UA", 8}, {"CO", "CO", 4}, @@ -245,7 +244,6 @@ const struct cntry_locales_custom translate_custom_table[] = { {"RO", "RO", 4}, {"SN", "SN", 2}, {"RS", "RS", 2}, - {"SG", "SG", 4}, {"SK", "SK", 4}, {"SI", "SI", 4}, {"ES", "ES", 4}, diff --git a/drivers/net/wireless/bcmdhd/dhd_dbg.h b/drivers/net/wireless/bcmdhd/dhd_dbg.h index 9e73ef05be52..63997a221326 100644 --- a/drivers/net/wireless/bcmdhd/dhd_dbg.h +++ b/drivers/net/wireless/bcmdhd/dhd_dbg.h @@ -1,7 +1,7 @@ /* * Debug/trace/assert driver definitions for Dongle Host Driver. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_ip.c b/drivers/net/wireless/bcmdhd/dhd_ip.c index b4fb5e3c36f1..d0b0a0ae6afa 100644 --- a/drivers/net/wireless/bcmdhd/dhd_ip.c +++ b/drivers/net/wireless/bcmdhd/dhd_ip.c @@ -1,7 +1,7 @@ /* * IP Packet Parser Module. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_ip.h b/drivers/net/wireless/bcmdhd/dhd_ip.h index ceb3877549c5..4d851d59758d 100644 --- a/drivers/net/wireless/bcmdhd/dhd_ip.h +++ b/drivers/net/wireless/bcmdhd/dhd_ip.h @@ -3,7 +3,7 @@ * * Provides type definitions and function prototypes used to parse ip packet. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_linux.c b/drivers/net/wireless/bcmdhd/dhd_linux.c index 7799697db7a8..a982d88bd97c 100644 --- a/drivers/net/wireless/bcmdhd/dhd_linux.c +++ b/drivers/net/wireless/bcmdhd/dhd_linux.c @@ -2,7 +2,7 @@ * Broadcom Dongle Host Driver (DHD), Linux-specific network interface * Basically selected code segments from usb-cdc.c and usb-rndis.c * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -22,7 +22,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: dhd_linux.c 445384 2013-12-26 11:10:06Z $ + * $Id: dhd_linux.c 446907 2014-01-07 17:58:28Z $ */ #include @@ -105,6 +105,7 @@ typedef struct histo_ { static histo_t vi_d1, vi_d2, vi_d3, vi_d4; #endif /* WLMEDIA_HTSF */ + #if defined(BLOCK_IPV6_PACKET) && defined(CUSTOMER_HW4) #define HEX_PREF_STR "0x" #define UNI_FILTER_STR "010000000000" @@ -276,6 +277,10 @@ extern int dhd_write_macaddr(struct ether_addr *mac); static inline int dhd_write_macaddr(struct ether_addr *mac) { return 0; } #endif #endif /* CUSTOMER_HW4 */ + + + + struct ipv6_addr { char ipv6_addr[IPV6_ADDR_LEN]; dhd_ipv6_op_t ipv6_oper; @@ -391,7 +396,9 @@ typedef struct dhd_info { struct mutex dhd_suspend_mutex; #endif spinlock_t wakelock_spinlock; - int wakelock_counter; + uint32 wakelock_counter; + bool waive_wakelock; + uint32 wakelock_before_waive; int wakelock_wd_counter; int wakelock_rx_timeout_enable; int wakelock_ctrl_timeout_enable; @@ -682,6 +689,8 @@ static int dhd_toe_set(dhd_info_t *dhd, int idx, uint32 toe_ol); static int dhd_wl_host_event(dhd_info_t *dhd, int *ifidx, void *pktdata, wl_event_msg_t *event_ptr, void **data_ptr); +static int dhd_wakelock_waive(dhd_info_t *dhdinfo); +static int dhd_wakelock_restore(dhd_info_t *dhdinfo); #if defined(CONFIG_PM_SLEEP) static int dhd_sleep_pm_callback(struct notifier_block *nfb, unsigned long action, void *ignored) @@ -691,6 +700,8 @@ static int dhd_sleep_pm_callback(struct notifier_block *nfb, unsigned long actio dhd_info_t *dhdinfo = (dhd_info_t*)container_of(nfb, struct dhd_info, pm_notifier); BCM_REFERENCE(dhdinfo); + BCM_REFERENCE(dhd_wakelock_waive); + BCM_REFERENCE(dhd_wakelock_restore); switch (action) { case PM_HIBERNATION_PREPARE: case PM_SUSPEND_PREPARE: @@ -703,10 +714,13 @@ static int dhd_sleep_pm_callback(struct notifier_block *nfb, unsigned long actio } #ifdef PROP_TXSTATUS - if (suspend) + if (suspend) { + dhd_wakelock_waive(dhdinfo); dhd_wlfc_suspend(&dhdinfo->pub); - else + dhd_wakelock_restore(dhdinfo); + } else { dhd_wlfc_resume(&dhdinfo->pub); + } #endif #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)) && (LINUX_VERSION_CODE <= \ @@ -714,6 +728,7 @@ static int dhd_sleep_pm_callback(struct notifier_block *nfb, unsigned long actio dhd_mmc_suspend = suspend; smp_mb(); #endif + return ret; } extern int register_pm_notifier(struct notifier_block *nb); @@ -854,6 +869,7 @@ _turn_on_arp_filter(dhd_pub_t *dhd, int op_mode) } #endif /* PKT_FILTER_SUPPORT && !GAN_LITE_NAT_KEEPALIVE_FILTER */ + void dhd_set_packet_filter(dhd_pub_t *dhd) { #ifdef PKT_FILTER_SUPPORT @@ -874,6 +890,8 @@ void dhd_enable_packet_filter(int value, dhd_pub_t *dhd) int i; DHD_TRACE(("%s: enter, value = %d\n", __FUNCTION__, value)); + + /* 1 - Enable packet filter, only allow unicast packet to send up */ /* 0 - Disable packet filter */ if (dhd_pkt_filter_enable && (!value || @@ -2089,8 +2107,7 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) PKTFREE(dhdp->osh, pktbuf, TRUE); continue; } -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0) - /* Dropping only data packets before registering net device to avoid kernel panic */ + /* Dropping packets before registering net device to avoid kernel panic */ eh = (struct ether_header *)PKTDATA(wl->sh.osh, pktbuf); #ifndef PROP_TXSTATUS_VSDB if ((!ifp->net || ifp->net->reg_state != NETREG_REGISTERED) && @@ -2104,7 +2121,6 @@ dhd_rx_frame(dhd_pub_t *dhdp, int ifidx, void *pktbuf, int numpkt, uint8 chan) PKTFREE(dhdp->osh, pktbuf, TRUE); continue; } -#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0) */ #ifdef WLBTAMP eh = (struct ether_header *)PKTDATA(wl->sh.osh, pktbuf); @@ -2560,7 +2576,6 @@ dhd_rxf_thread(void *data) #define RXF_WATCHDOG_TIME 250 /* BARK_TIME(1000) / */ ulong watchdogTime = OSL_SYSUPTIME(); /* msec */ #endif - /* This thread doesn't need any user-level access, * so get rid of all our resources */ @@ -4506,6 +4521,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) DHD_ERROR(("%s: country code setting failed\n", __FUNCTION__)); } + /* Set Listen Interval */ bcm_mkiovar("assoc_listen", (char *)&listen_interval, 4, iovbuf, sizeof(iovbuf)); if ((ret = dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, iovbuf, sizeof(iovbuf), TRUE, 0)) < 0) @@ -4563,6 +4579,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) #endif /* CUSTOMER_HW4 */ #endif /* WLTDLS */ + #ifdef DHD_ENABLE_LPC /* Set lpc 1 */ bcm_mkiovar("lpc", (char *)&lpc, 4, iovbuf, sizeof(iovbuf)); @@ -4915,6 +4932,7 @@ dhd_preinit_ioctls(dhd_pub_t *dhd) dhd_wl_ioctl_cmd(dhd, WLC_SET_VAR, iovbuf, sizeof(iovbuf), TRUE, 0); #endif /* CUSTOMER_HW4 && ENABLE_BCN_LI_BCN_WAKEUP */ + /* query for 'ver' to get version info from firmware */ memset(buf, 0, sizeof(buf)); ptr = buf; @@ -6816,13 +6834,14 @@ int dhd_os_wake_lock(dhd_pub_t *pub) if (dhd) { spin_lock_irqsave(&dhd->wakelock_spinlock, flags); + if (dhd->wakelock_counter == 0 && !dhd->waive_wakelock) { #ifdef CONFIG_HAS_WAKELOCK - if (!dhd->wakelock_counter) wake_lock(&dhd->wl_wifi); #elif 1 && (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 36)) - if (pm_dev) - pm_stay_awake(pm_dev); + if (pm_dev) + pm_stay_awake(pm_dev); #endif + } dhd->wakelock_counter++; ret = dhd->wakelock_counter; spin_unlock_irqrestore(&dhd->wakelock_spinlock, flags); @@ -6849,15 +6868,16 @@ int dhd_os_wake_unlock(dhd_pub_t *pub) dhd_os_wake_lock_timeout(pub); if (dhd) { spin_lock_irqsave(&dhd->wakelock_spinlock, flags); - if (dhd->wakelock_counter) { + if (dhd->wakelock_counter > 0) { dhd->wakelock_counter--; + if (dhd->wakelock_counter == 0 && !dhd->waive_wakelock) { #ifdef CONFIG_HAS_WAKELOCK - if (!dhd->wakelock_counter) wake_unlock(&dhd->wl_wifi); #elif 1 && (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 36)) - if (pm_dev) - pm_relax(pm_dev); + if (pm_dev) + pm_relax(pm_dev); #endif + } ret = dhd->wakelock_counter; } spin_unlock_irqrestore(&dhd->wakelock_spinlock, flags); @@ -6936,6 +6956,66 @@ int dhd_os_wd_wake_unlock(dhd_pub_t *pub) } return ret; } + +/* waive wakelocks for operations such as IOVARs in suspend function, must be closed + * by a paired function call to dhd_wakelock_restore. returns current wakelock counter + */ +int dhd_wakelock_waive(dhd_info_t *dhdinfo) +{ + unsigned long flags; + int ret = 0; + + spin_lock_irqsave(&dhdinfo->wakelock_spinlock, flags); + /* dhd_wakelock_waive/dhd_wakelock_restore must be paired */ + if (dhdinfo->waive_wakelock) + goto exit; + /* record current lock status */ + dhdinfo->wakelock_before_waive = dhdinfo->wakelock_counter; + dhdinfo->waive_wakelock = TRUE; + +exit: + ret = dhdinfo->wakelock_wd_counter; + spin_unlock_irqrestore(&dhdinfo->wakelock_spinlock, flags); + return ret; +} + +int dhd_wakelock_restore(dhd_info_t *dhdinfo) +{ + unsigned long flags; + int ret = 0; + + spin_lock_irqsave(&dhdinfo->wakelock_spinlock, flags); + /* dhd_wakelock_waive/dhd_wakelock_restore must be paired */ + if (!dhdinfo->waive_wakelock) + goto exit; + + dhdinfo->waive_wakelock = FALSE; + /* if somebody else acquires wakelock between dhd_wakelock_waive/dhd_wakelock_restore, + * we need to make it up by calling wake_lock or pm_stay_awake. or if somebody releases + * the lock in between, do the same by calling wake_unlock or pm_relax + */ + if (dhdinfo->wakelock_before_waive == 0 && dhdinfo->wakelock_counter > 0) { +#ifdef CONFIG_HAS_WAKELOCK + wake_lock(&dhdinfo->wl_wifi); +#elif 1 && (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 36)) + if (pm_dev) + pm_stay_awake(pm_dev); +#endif + } else if (dhdinfo->wakelock_before_waive > 0 && dhdinfo->wakelock_counter == 0) { +#ifdef CONFIG_HAS_WAKELOCK + wake_unlock(&dhdinfo->wl_wifi); +#elif 1 && (LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 36)) + if (pm_dev) + pm_relax(pm_dev); +#endif + } + dhdinfo->wakelock_before_waive = 0; +exit: + ret = dhdinfo->wakelock_wd_counter; + spin_unlock_irqrestore(&dhdinfo->wakelock_spinlock, flags); + return ret; +} + int dhd_os_check_if_up(void *dhdp) { dhd_pub_t *pub = (dhd_pub_t *)dhdp; diff --git a/drivers/net/wireless/bcmdhd/dhd_linux_sched.c b/drivers/net/wireless/bcmdhd/dhd_linux_sched.c index 3486c7b215e5..d9ffaf7ef3b0 100644 --- a/drivers/net/wireless/bcmdhd/dhd_linux_sched.c +++ b/drivers/net/wireless/bcmdhd/dhd_linux_sched.c @@ -1,7 +1,7 @@ /* * Expose some of the kernel scheduler routines * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_pno.c b/drivers/net/wireless/bcmdhd/dhd_pno.c index 3696a83544ca..aa735d5a9cfc 100644 --- a/drivers/net/wireless/bcmdhd/dhd_pno.c +++ b/drivers/net/wireless/bcmdhd/dhd_pno.c @@ -2,7 +2,7 @@ * Broadcom Dongle Host Driver (DHD) * Prefered Network Offload and Wi-Fi Location Service(WLS) code. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -22,7 +22,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: dhd_pno.c 435029 2013-11-08 02:47:59Z $ + * $Id: dhd_pno.c 445963 2014-01-02 06:58:48Z $ */ #include #include @@ -670,6 +670,7 @@ _dhd_pno_reinitialize_prof(dhd_pub_t *dhd, dhd_pno_params_t *params, dhd_pno_mod kfree(iter); } } + params->params_legacy.nssid = 0; params->params_legacy.scan_fr = 0; params->params_legacy.pno_freq_expo_max = 0; params->params_legacy.pno_repeat = 0; @@ -1872,6 +1873,12 @@ int dhd_pno_deinit(dhd_pub_t *dhd) DHD_PNO(("%s enter\n", __FUNCTION__)); _pno_state = PNO_GET_PNOSTATE(dhd); NULL_CHECK(_pno_state, "pno_state is NULL", err); + /* may need to free legacy ssid_list */ + if (_pno_state->pno_mode & DHD_PNO_LEGACY_MODE) { + _params = &_pno_state->pno_params_arr[INDEX_OF_LEGACY_PARAMS]; + _dhd_pno_reinitialize_prof(dhd, _params, DHD_PNO_LEGACY_MODE); + } + if (_pno_state->pno_mode & DHD_PNO_BATCH_MODE) { _params = &_pno_state->pno_params_arr[INDEX_OF_BATCH_PARAMS]; /* clear resource if the BATCH MODE is on */ diff --git a/drivers/net/wireless/bcmdhd/dhd_pno.h b/drivers/net/wireless/bcmdhd/dhd_pno.h index 769cdb99f1e8..09e6614ad421 100644 --- a/drivers/net/wireless/bcmdhd/dhd_pno.h +++ b/drivers/net/wireless/bcmdhd/dhd_pno.h @@ -1,7 +1,7 @@ /* * Header file of Broadcom Dongle Host Driver (DHD) * Prefered Network Offload code and Wi-Fi Location Service(WLS) code. - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_proto.h b/drivers/net/wireless/bcmdhd/dhd_proto.h index 9fb20528eb34..227092ce771d 100644 --- a/drivers/net/wireless/bcmdhd/dhd_proto.h +++ b/drivers/net/wireless/bcmdhd/dhd_proto.h @@ -4,7 +4,7 @@ * Provides type definitions and function prototypes used to link the * DHD OS, bus, and protocol modules. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_sdio.c b/drivers/net/wireless/bcmdhd/dhd_sdio.c index 6860ece0fcd3..1b7bb877aa1d 100644 --- a/drivers/net/wireless/bcmdhd/dhd_sdio.c +++ b/drivers/net/wireless/bcmdhd/dhd_sdio.c @@ -1,7 +1,7 @@ /* * DHD Bus Module for SDIO * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: dhd_sdio.c 445342 2013-12-26 06:03:12Z $ + * $Id: dhd_sdio.c 447771 2014-01-10 05:43:56Z $ */ #include @@ -2373,7 +2373,7 @@ dhd_bus_txdata(struct dhd_bus *bus, void *pkt) ret = dhdsdio_txpkt(bus, pkt, (bus->ext_loop ? SDPCM_TEST_CHANNEL : SDPCM_DATA_CHANNEL), TRUE, FALSE); #endif - if (ret) + if (ret == BCME_OK) bus->dhd->tx_errors++; else bus->dhd->dstats.tx_bytes += datalen; @@ -2498,7 +2498,7 @@ dhdsdio_sendfromq(dhd_bus_t *bus, uint maxframes) #endif } - if (ret) + if (ret == BCME_OK) bus->dhd->tx_errors++; else bus->dhd->dstats.tx_bytes += datalen; @@ -6846,7 +6846,7 @@ dhdsdio_pktgen(dhd_bus_t *bus) #endif /* Send it */ - if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE)) { + if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE) != BCME_OK) { bus->pktgen_fail++; if (bus->pktgen_stop && bus->pktgen_stop == bus->pktgen_fail) bus->pktgen_count = 0; @@ -6891,7 +6891,7 @@ dhdsdio_sdtest_set(dhd_bus_t *bus, uint count) *data++ = (uint8)(count >> 24); /* Send it */ - if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE)) + if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE) != BCME_OK) bus->pktgen_fail++; } @@ -6936,7 +6936,7 @@ dhdsdio_testrcv(dhd_bus_t *bus, void *pkt, uint seq) case SDPCM_TEST_ECHOREQ: /* Rx->Tx turnaround ok (even on NDIS w/current implementation) */ *(uint8 *)(PKTDATA(osh, pkt)) = SDPCM_TEST_ECHORSP; - if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE) == 0) { + if (dhdsdio_txpkt(bus, pkt, SDPCM_TEST_CHANNEL, TRUE, FALSE) == BCME_OK) { bus->pktgen_sent++; } else { bus->pktgen_fail++; @@ -7199,7 +7199,7 @@ dhd_bus_console_in(dhd_pub_t *dhdp, uchar *msg, uint msglen) * sdpcm_sendup (RX) checks for virtual console input. */ if ((pkt = PKTGET(bus->dhd->osh, 4 + SDPCM_RESERVE, TRUE)) != NULL) - dhdsdio_txpkt(bus, pkt, SDPCM_EVENT_CHANNEL, TRUE, FALSE); + rv = dhdsdio_txpkt(bus, pkt, SDPCM_EVENT_CHANNEL, TRUE, FALSE); done: if ((bus->idletime == DHD_IDLE_IMMEDIATE) && !bus->dpc_sched) { @@ -7784,6 +7784,7 @@ dhdsdio_probe_init(dhd_bus_t *bus, osl_t *osh, void *sdh) DHD_TRACE(("%s: Enter\n", __FUNCTION__)); + #ifdef SDTEST dhdsdio_pktgen_init(bus); #endif /* SDTEST */ @@ -8497,7 +8498,9 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) #if defined(OOB_INTR_ONLY) || defined(BCMSPI_ANDROID) /* Clean up any pending IRQ */ + dhd_enable_oob_intr(bus, FALSE); bcmsdh_set_irq(FALSE); + bcmsdh_unregister_oob_intr(); #endif /* defined(OOB_INTR_ONLY) || defined(BCMSPI_ANDROID) */ /* Clean tx/rx buffer pointers, detach from the dongle */ diff --git a/drivers/net/wireless/bcmdhd/dhd_sec_feature.h b/drivers/net/wireless/bcmdhd/dhd_sec_feature.h index 70ebed5ace11..efda21362362 100644 --- a/drivers/net/wireless/bcmdhd/dhd_sec_feature.h +++ b/drivers/net/wireless/bcmdhd/dhd_sec_feature.h @@ -1,7 +1,7 @@ /* * Customer HW 4 dependant file * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_wlfc.c b/drivers/net/wireless/bcmdhd/dhd_wlfc.c index 191ed30670b5..043bd884357b 100644 --- a/drivers/net/wireless/bcmdhd/dhd_wlfc.c +++ b/drivers/net/wireless/bcmdhd/dhd_wlfc.c @@ -1,7 +1,7 @@ /* * DHD PROP_TXSTATUS Module. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dhd_wlfc.h b/drivers/net/wireless/bcmdhd/dhd_wlfc.h index dcc64ac8dbbf..a6f2bb717d35 100644 --- a/drivers/net/wireless/bcmdhd/dhd_wlfc.h +++ b/drivers/net/wireless/bcmdhd/dhd_wlfc.h @@ -1,5 +1,5 @@ /* -* Copyright (C) 1999-2013, Broadcom Corporation +* Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dngl_stats.h b/drivers/net/wireless/bcmdhd/dngl_stats.h index 0bc3b53f29e8..ac84522c7c1d 100644 --- a/drivers/net/wireless/bcmdhd/dngl_stats.h +++ b/drivers/net/wireless/bcmdhd/dngl_stats.h @@ -2,7 +2,7 @@ * Common stats definitions for clients of dongle * ports * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/dngl_wlhdr.h b/drivers/net/wireless/bcmdhd/dngl_wlhdr.h index d5eda8cb3ea5..2c1366a9564e 100644 --- a/drivers/net/wireless/bcmdhd/dngl_wlhdr.h +++ b/drivers/net/wireless/bcmdhd/dngl_wlhdr.h @@ -1,7 +1,7 @@ /* * Dongle WL Header definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/hndpmu.c b/drivers/net/wireless/bcmdhd/hndpmu.c index e94fe802bdb9..855d78620b31 100644 --- a/drivers/net/wireless/bcmdhd/hndpmu.c +++ b/drivers/net/wireless/bcmdhd/hndpmu.c @@ -2,7 +2,7 @@ * Misc utility routines for accessing PMU corerev specific features * of the SiliconBackplane-based Broadcom chips. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/aidmp.h b/drivers/net/wireless/bcmdhd/include/aidmp.h index 55d823e3fd35..79498abcc18c 100644 --- a/drivers/net/wireless/bcmdhd/include/aidmp.h +++ b/drivers/net/wireless/bcmdhd/include/aidmp.h @@ -1,7 +1,7 @@ /* * Broadcom AMBA Interconnect definitions. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcm_cfg.h b/drivers/net/wireless/bcmdhd/include/bcm_cfg.h index 9153cd977b3f..2262394e8488 100644 --- a/drivers/net/wireless/bcmdhd/include/bcm_cfg.h +++ b/drivers/net/wireless/bcmdhd/include/bcm_cfg.h @@ -1,7 +1,7 @@ /* * BCM common config options * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h b/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h index 51a5de712542..2e3610501bc1 100644 --- a/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h +++ b/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h @@ -35,7 +35,7 @@ * and instrumentation on top of the heap, without modifying the heap * allocation implementation. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmcdc.h b/drivers/net/wireless/bcmdhd/include/bcmcdc.h index 999a00879469..9b013d37bccc 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmcdc.h +++ b/drivers/net/wireless/bcmdhd/include/bcmcdc.h @@ -4,7 +4,7 @@ * * Definitions subject to change without notice. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmdefs.h b/drivers/net/wireless/bcmdhd/include/bcmdefs.h index c95209302a50..f44ff40f3b54 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmdefs.h +++ b/drivers/net/wireless/bcmdhd/include/bcmdefs.h @@ -1,7 +1,7 @@ /* * Misc system wide definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmdevs.h b/drivers/net/wireless/bcmdhd/include/bcmdevs.h index 923098f14649..03fde6e841d9 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmdevs.h +++ b/drivers/net/wireless/bcmdhd/include/bcmdevs.h @@ -1,7 +1,7 @@ /* * Broadcom device-specific manifest constants. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: bcmdevs.h 414368 2013-07-24 15:00:23Z $ + * $Id: bcmdevs.h 444038 2013-12-18 09:35:07Z $ */ #ifndef _BCMDEVS_H diff --git a/drivers/net/wireless/bcmdhd/include/bcmendian.h b/drivers/net/wireless/bcmdhd/include/bcmendian.h index 650969886d88..bfb060c59164 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmendian.h +++ b/drivers/net/wireless/bcmdhd/include/bcmendian.h @@ -1,7 +1,7 @@ /* * Byte order utilities * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmnvram.h b/drivers/net/wireless/bcmdhd/include/bcmnvram.h index dbfc3b4597cd..282e7c2e8400 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmnvram.h +++ b/drivers/net/wireless/bcmdhd/include/bcmnvram.h @@ -1,7 +1,7 @@ /* * NVRAM variable manipulation * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmpcispi.h b/drivers/net/wireless/bcmdhd/include/bcmpcispi.h index 53bd7fceaa10..8ecb7c2ac5b0 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmpcispi.h +++ b/drivers/net/wireless/bcmdhd/include/bcmpcispi.h @@ -1,7 +1,7 @@ /* * Broadcom PCI-SPI Host Controller Register Definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmperf.h b/drivers/net/wireless/bcmdhd/include/bcmperf.h index fad33ffa245c..acebfa3a2537 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmperf.h +++ b/drivers/net/wireless/bcmdhd/include/bcmperf.h @@ -1,7 +1,7 @@ /* * Performance counters software interface. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdbus.h b/drivers/net/wireless/bcmdhd/include/bcmsdbus.h index 3abf49383ddb..1da3781a949c 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdbus.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdbus.h @@ -2,7 +2,7 @@ * Definitions for API from sdio common code (bcmsdh) to individual * host controller drivers. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdh.h b/drivers/net/wireless/bcmdhd/include/bcmsdh.h index 657a69ebaa34..db499686c732 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdh.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdh.h @@ -3,7 +3,7 @@ * export functions to client drivers * abstract OS and BUS specific details of SDIO * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h b/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h index 9e0596973092..2c5a7a824340 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h @@ -1,7 +1,7 @@ /* * BCMSDH Function Driver for the native SDIO/MMC driver in the Linux Kernel * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h b/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h index 4ebe3d709295..5d2d4cd233be 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h @@ -2,7 +2,7 @@ * Broadcom SDIO/PCMCIA * Software-specific definitions shared between device and host side * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdspi.h b/drivers/net/wireless/bcmdhd/include/bcmsdspi.h index 21792abca736..b5a0caf50d08 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdspi.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdspi.h @@ -1,7 +1,7 @@ /* * SD-SPI Protocol Conversion - BCMSDH->SPI Translation Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsdstd.h b/drivers/net/wireless/bcmdhd/include/bcmsdstd.h index 096285629578..e6a9fadc474e 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsdstd.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsdstd.h @@ -1,7 +1,7 @@ /* * 'Standard' SDIO HOST CONTROLLER driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmspi.h b/drivers/net/wireless/bcmdhd/include/bcmspi.h index e81ea62524b9..cf814cefde5e 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmspi.h +++ b/drivers/net/wireless/bcmdhd/include/bcmspi.h @@ -1,7 +1,7 @@ /* * Broadcom SPI Low-Level Hardware Driver API * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h b/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h index b014046d2ab9..0c86e6cb91f7 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h +++ b/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h @@ -1,7 +1,7 @@ /* * SD-SPI Protocol Conversion - BCMSDH->gSPI Translation Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h b/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h index aaf8a0a388b9..02d77f8e10ec 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h @@ -1,7 +1,7 @@ /* * SROM format definition. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h b/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h index ad46257214af..274e5ae37ee7 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h +++ b/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h @@ -1,7 +1,7 @@ /* * Table that encodes the srom formats for PCI/PCIe NICs. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/bcmutils.h b/drivers/net/wireless/bcmdhd/include/bcmutils.h index 298ec19378ae..e411d5d1a009 100644 --- a/drivers/net/wireless/bcmdhd/include/bcmutils.h +++ b/drivers/net/wireless/bcmdhd/include/bcmutils.h @@ -1,7 +1,7 @@ /* * Misc useful os-independent macros and functions. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -640,7 +640,7 @@ extern int bcm_format_ssid(char* buf, const uchar ssid[], uint ssid_len); #define ARRAYSIZE(a) (sizeof(a) / sizeof(a[0])) #endif -#ifndef ARRAYLAST +#ifndef ARRAYLAST #define ARRAYLAST(a) (&a[ARRAYSIZE(a)-1]) #endif @@ -650,7 +650,7 @@ extern void *_bcmutils_dummy_fn; #ifndef setbit -#ifndef NBBY +#ifndef NBBY #define NBBY 8 #endif #ifdef BCMUTILS_BIT_MACROS_USE_FUNCS diff --git a/drivers/net/wireless/bcmdhd/include/dbus.h b/drivers/net/wireless/bcmdhd/include/dbus.h index 4458e74faf70..1e7e97f63f72 100644 --- a/drivers/net/wireless/bcmdhd/include/dbus.h +++ b/drivers/net/wireless/bcmdhd/include/dbus.h @@ -2,7 +2,7 @@ * Dongle BUS interface Abstraction layer * target serial buses like USB, SDIO, SPI, etc. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/dhdioctl.h b/drivers/net/wireless/bcmdhd/include/dhdioctl.h index 08758e1ffe83..fd25adf6ad3b 100644 --- a/drivers/net/wireless/bcmdhd/include/dhdioctl.h +++ b/drivers/net/wireless/bcmdhd/include/dhdioctl.h @@ -5,7 +5,7 @@ * * Definitions subject to change without notice. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/epivers.h b/drivers/net/wireless/bcmdhd/include/epivers.h index dd810a8380ea..627ae98b8fba 100644 --- a/drivers/net/wireless/bcmdhd/include/epivers.h +++ b/drivers/net/wireless/bcmdhd/include/epivers.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -30,26 +30,26 @@ #define EPI_MINOR_VERSION 88 -#define EPI_RC_NUMBER 63 +#define EPI_RC_NUMBER 64 #define EPI_INCREMENTAL_NUMBER 0 #define EPI_BUILD_NUMBER 0 -#define EPI_VERSION 1, 88, 63, 0 +#define EPI_VERSION 1, 88, 64, 0 -#define EPI_VERSION_NUM 0x01583f00 +#define EPI_VERSION_NUM 0x01584000 -#define EPI_VERSION_DEV 1.88.63 +#define EPI_VERSION_DEV 1.88.64 /* Driver Version String, ASCII, 32 chars max */ #ifdef BCMINTERNAL -#define EPI_VERSION_STR "1.88.63 (r BCMINT)" +#define EPI_VERSION_STR "1.88.64 (r BCMINT)" #else #ifdef WLTEST -#define EPI_VERSION_STR "1.88.63 (r WLTEST)" +#define EPI_VERSION_STR "1.88.64 (r WLTEST)" #else -#define EPI_VERSION_STR "1.88.63 (r)" +#define EPI_VERSION_STR "1.88.64 (r)" #endif #endif /* BCMINTERNAL */ diff --git a/drivers/net/wireless/bcmdhd/include/hndpmu.h b/drivers/net/wireless/bcmdhd/include/hndpmu.h index 9ed9de264da9..bc9e5832f268 100644 --- a/drivers/net/wireless/bcmdhd/include/hndpmu.h +++ b/drivers/net/wireless/bcmdhd/include/hndpmu.h @@ -1,7 +1,7 @@ /* * HND SiliconBackplane PMU support. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/hndrte_armtrap.h b/drivers/net/wireless/bcmdhd/include/hndrte_armtrap.h index 875a6935f220..70cfa91906e3 100644 --- a/drivers/net/wireless/bcmdhd/include/hndrte_armtrap.h +++ b/drivers/net/wireless/bcmdhd/include/hndrte_armtrap.h @@ -1,7 +1,7 @@ /* * HNDRTE arm trap handling. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/hndrte_cons.h b/drivers/net/wireless/bcmdhd/include/hndrte_cons.h index 4e4272087cca..6d826e6ba451 100644 --- a/drivers/net/wireless/bcmdhd/include/hndrte_cons.h +++ b/drivers/net/wireless/bcmdhd/include/hndrte_cons.h @@ -1,7 +1,7 @@ /* * Console support for hndrte. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/hndsoc.h b/drivers/net/wireless/bcmdhd/include/hndsoc.h index e259cc6f1c0c..86e5c47b5b26 100644 --- a/drivers/net/wireless/bcmdhd/include/hndsoc.h +++ b/drivers/net/wireless/bcmdhd/include/hndsoc.h @@ -1,7 +1,7 @@ /* * Broadcom HND chip & on-chip-interconnect-related definitions. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/linux_osl.h b/drivers/net/wireless/bcmdhd/include/linux_osl.h index 9918f621c98a..6955883fad2e 100644 --- a/drivers/net/wireless/bcmdhd/include/linux_osl.h +++ b/drivers/net/wireless/bcmdhd/include/linux_osl.h @@ -1,7 +1,7 @@ /* * Linux OS Independent Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/linuxver.h b/drivers/net/wireless/bcmdhd/include/linuxver.h index f0b29f6921a3..d6f0690cd0c1 100644 --- a/drivers/net/wireless/bcmdhd/include/linuxver.h +++ b/drivers/net/wireless/bcmdhd/include/linuxver.h @@ -2,7 +2,7 @@ * Linux-specific abstractions to gain some independence from linux kernel versions. * Pave over some 2.2 versus 2.4 versus 2.6 kernel differences. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/miniopt.h b/drivers/net/wireless/bcmdhd/include/miniopt.h index ba48da04438f..73212a88f140 100644 --- a/drivers/net/wireless/bcmdhd/include/miniopt.h +++ b/drivers/net/wireless/bcmdhd/include/miniopt.h @@ -1,7 +1,7 @@ /* * Command line options parser. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/msgtrace.h b/drivers/net/wireless/bcmdhd/include/msgtrace.h index aa5261a1e696..c01676ff41a3 100644 --- a/drivers/net/wireless/bcmdhd/include/msgtrace.h +++ b/drivers/net/wireless/bcmdhd/include/msgtrace.h @@ -1,7 +1,7 @@ /* * Trace messages sent over HBUS * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/osl.h b/drivers/net/wireless/bcmdhd/include/osl.h index 19f8274ada4f..0615b3600fb9 100644 --- a/drivers/net/wireless/bcmdhd/include/osl.h +++ b/drivers/net/wireless/bcmdhd/include/osl.h @@ -1,7 +1,7 @@ /* * OS Abstraction Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/packed_section_end.h b/drivers/net/wireless/bcmdhd/include/packed_section_end.h index 1b6683769073..c4d83e398e5c 100644 --- a/drivers/net/wireless/bcmdhd/include/packed_section_end.h +++ b/drivers/net/wireless/bcmdhd/include/packed_section_end.h @@ -15,7 +15,7 @@ * #include * * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/packed_section_start.h b/drivers/net/wireless/bcmdhd/include/packed_section_start.h index 2b25925c22a9..c38a9c02cdc3 100644 --- a/drivers/net/wireless/bcmdhd/include/packed_section_start.h +++ b/drivers/net/wireless/bcmdhd/include/packed_section_start.h @@ -15,7 +15,7 @@ * #include * * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/pcicfg.h b/drivers/net/wireless/bcmdhd/include/pcicfg.h index 63f415822002..b772af3d3773 100644 --- a/drivers/net/wireless/bcmdhd/include/pcicfg.h +++ b/drivers/net/wireless/bcmdhd/include/pcicfg.h @@ -1,7 +1,7 @@ /* * pcicfg.h: PCI configuration constants and structures. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.11.h b/drivers/net/wireless/bcmdhd/include/proto/802.11.h index c998214d9957..fc0411c14d69 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.11.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.11.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.11_bta.h b/drivers/net/wireless/bcmdhd/include/proto/802.11_bta.h index ee7f9593ca48..19d898b515e5 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.11_bta.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.11_bta.h @@ -1,7 +1,7 @@ /* * BT-AMP (BlueTooth Alternate Mac and Phy) 802.11 PAL (Protocol Adaptation Layer) * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.11e.h b/drivers/net/wireless/bcmdhd/include/proto/802.11e.h index 6f0114e7fda2..33a88635eff4 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.11e.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.11e.h @@ -1,7 +1,7 @@ /* * 802.11e protocol header file * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.1d.h b/drivers/net/wireless/bcmdhd/include/proto/802.1d.h index 3324f7b6744c..171897ed853c 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.1d.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.1d.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/802.3.h b/drivers/net/wireless/bcmdhd/include/proto/802.3.h index 91dc342c6b16..c6575bc561f2 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/802.3.h +++ b/drivers/net/wireless/bcmdhd/include/proto/802.3.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/bcmeth.h b/drivers/net/wireless/bcmdhd/include/proto/bcmeth.h index d03bf7d4bea8..1f2dd9199fdc 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bcmeth.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bcmeth.h @@ -1,7 +1,7 @@ /* * Broadcom Ethernettype protocol definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h b/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h index cafbc1df7ce2..dabf2d73426b 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bcmevent.h @@ -1,7 +1,7 @@ /* * Broadcom Event protocol definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/bcmip.h b/drivers/net/wireless/bcmdhd/include/proto/bcmip.h index e89bed9951dd..c30f73d7bd81 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bcmip.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bcmip.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/bcmipv6.h b/drivers/net/wireless/bcmdhd/include/proto/bcmipv6.h index e5f10d115595..9f4c08ab544b 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bcmipv6.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bcmipv6.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/bt_amp_hci.h b/drivers/net/wireless/bcmdhd/include/proto/bt_amp_hci.h index d56b10b7cdc5..fc05ab14c97d 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/bt_amp_hci.h +++ b/drivers/net/wireless/bcmdhd/include/proto/bt_amp_hci.h @@ -1,7 +1,7 @@ /* * BT-AMP (BlueTooth Alternate Mac and Phy) HCI (Host/Controller Interface) * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/ethernet.h b/drivers/net/wireless/bcmdhd/include/proto/ethernet.h index a85fd656f6cc..eeea916e23e8 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/ethernet.h +++ b/drivers/net/wireless/bcmdhd/include/proto/ethernet.h @@ -1,7 +1,7 @@ /* * From FreeBSD 2.2.7: Fundamental constants relating to ethernet. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -24,7 +24,7 @@ * $Id: ethernet.h 384540 2013-02-12 04:28:58Z $ */ -#ifndef _NET_ETHERNET_H_ +#ifndef _NET_ETHERNET_H_ #define _NET_ETHERNET_H_ #ifndef _TYPEDEFS_H_ @@ -99,7 +99,7 @@ ((uint8 *)ea)[5] = ((mgrp_ip) >> 0) & 0xff; \ } -#ifndef __INCif_etherh +#ifndef __INCif_etherh BWL_PRE_PACKED_STRUCT struct ether_header { uint8 ether_dhost[ETHER_ADDR_LEN]; diff --git a/drivers/net/wireless/bcmdhd/include/proto/p2p.h b/drivers/net/wireless/bcmdhd/include/proto/p2p.h index adb3f30dfeec..941abb2412d4 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/p2p.h +++ b/drivers/net/wireless/bcmdhd/include/proto/p2p.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/sdspi.h b/drivers/net/wireless/bcmdhd/include/proto/sdspi.h index 6263f40a8ae1..f84d0b81ab16 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/sdspi.h +++ b/drivers/net/wireless/bcmdhd/include/proto/sdspi.h @@ -1,7 +1,7 @@ /* * SD-SPI Protocol Standard * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/vlan.h b/drivers/net/wireless/bcmdhd/include/proto/vlan.h index 8de18698929e..2887ee5653e0 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/vlan.h +++ b/drivers/net/wireless/bcmdhd/include/proto/vlan.h @@ -1,7 +1,7 @@ /* * 802.1Q VLAN protocol definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/wpa.h b/drivers/net/wireless/bcmdhd/include/proto/wpa.h index 3ceae2b5f6d5..3b8a4fb38cce 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/wpa.h +++ b/drivers/net/wireless/bcmdhd/include/proto/wpa.h @@ -1,7 +1,7 @@ /* * Fundamental types and constants relating to WPA * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/proto/wps.h b/drivers/net/wireless/bcmdhd/include/proto/wps.h index 184220d40e80..306d554e3718 100644 --- a/drivers/net/wireless/bcmdhd/include/proto/wps.h +++ b/drivers/net/wireless/bcmdhd/include/proto/wps.h @@ -1,7 +1,7 @@ /* * WPS IE definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbchipc.h b/drivers/net/wireless/bcmdhd/include/sbchipc.h index cfdfbd12fa74..512fe1a4cdf0 100644 --- a/drivers/net/wireless/bcmdhd/include/sbchipc.h +++ b/drivers/net/wireless/bcmdhd/include/sbchipc.h @@ -7,7 +7,7 @@ * * $Id: sbchipc.h 385540 2013-02-15 23:14:50Z $ * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbconfig.h b/drivers/net/wireless/bcmdhd/include/sbconfig.h index 6c5cffc88b5d..59c71ac039b4 100644 --- a/drivers/net/wireless/bcmdhd/include/sbconfig.h +++ b/drivers/net/wireless/bcmdhd/include/sbconfig.h @@ -1,7 +1,7 @@ /* * Broadcom SiliconBackplane hardware register definitions. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbhnddma.h b/drivers/net/wireless/bcmdhd/include/sbhnddma.h index 3c74668e1ead..dd05dcdaaa88 100644 --- a/drivers/net/wireless/bcmdhd/include/sbhnddma.h +++ b/drivers/net/wireless/bcmdhd/include/sbhnddma.h @@ -2,7 +2,7 @@ * Generic Broadcom Home Networking Division (HND) DMA engine HW interface * This supports the following chips: BCM42xx, 44xx, 47xx . * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbpcmcia.h b/drivers/net/wireless/bcmdhd/include/sbpcmcia.h index f834a4c7d83e..8b99a33b398f 100644 --- a/drivers/net/wireless/bcmdhd/include/sbpcmcia.h +++ b/drivers/net/wireless/bcmdhd/include/sbpcmcia.h @@ -1,7 +1,7 @@ /* * BCM43XX Sonics SiliconBackplane PCMCIA core hardware definitions. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbsdio.h b/drivers/net/wireless/bcmdhd/include/sbsdio.h index 51f46c4b4985..3f8c700cb86f 100644 --- a/drivers/net/wireless/bcmdhd/include/sbsdio.h +++ b/drivers/net/wireless/bcmdhd/include/sbsdio.h @@ -4,7 +4,7 @@ * * SDIO core support 1bit, 4 bit SDIO mode as well as SPI mode. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbsdpcmdev.h b/drivers/net/wireless/bcmdhd/include/sbsdpcmdev.h index f655eeb139eb..ab3199b793db 100644 --- a/drivers/net/wireless/bcmdhd/include/sbsdpcmdev.h +++ b/drivers/net/wireless/bcmdhd/include/sbsdpcmdev.h @@ -2,7 +2,7 @@ * Broadcom SiliconBackplane SDIO/PCMCIA hardware-specific * device core support * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sbsocram.h b/drivers/net/wireless/bcmdhd/include/sbsocram.h index 30543c0e926d..81ac5a85789c 100644 --- a/drivers/net/wireless/bcmdhd/include/sbsocram.h +++ b/drivers/net/wireless/bcmdhd/include/sbsocram.h @@ -1,7 +1,7 @@ /* * BCM47XX Sonics SiliconBackplane embedded ram core * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sdio.h b/drivers/net/wireless/bcmdhd/include/sdio.h index 0c0dc472cbff..ef5cc2845558 100644 --- a/drivers/net/wireless/bcmdhd/include/sdio.h +++ b/drivers/net/wireless/bcmdhd/include/sdio.h @@ -2,7 +2,7 @@ * SDIO spec header file * Protocol and standard (common) device definitions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sdioh.h b/drivers/net/wireless/bcmdhd/include/sdioh.h index 80cef235eccf..f2bd9ae69e36 100644 --- a/drivers/net/wireless/bcmdhd/include/sdioh.h +++ b/drivers/net/wireless/bcmdhd/include/sdioh.h @@ -2,7 +2,7 @@ * SDIO Host Controller Spec header file * Register map and definitions for the Standard Host Controller * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/sdiovar.h b/drivers/net/wireless/bcmdhd/include/sdiovar.h index c2f274aded2b..3cb05fdb1a73 100644 --- a/drivers/net/wireless/bcmdhd/include/sdiovar.h +++ b/drivers/net/wireless/bcmdhd/include/sdiovar.h @@ -2,7 +2,7 @@ * Structure used by apps whose drivers access SDIO drivers. * Pulled out separately so dhdu and wlu can both use it. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/siutils.h b/drivers/net/wireless/bcmdhd/include/siutils.h index 622f4bc945e4..ed2ba161d16d 100644 --- a/drivers/net/wireless/bcmdhd/include/siutils.h +++ b/drivers/net/wireless/bcmdhd/include/siutils.h @@ -2,7 +2,7 @@ * Misc utility routines for accessing the SOC Interconnects * of Broadcom HNBU chips. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/spid.h b/drivers/net/wireless/bcmdhd/include/spid.h index c4d8493a207d..4dc51910d819 100644 --- a/drivers/net/wireless/bcmdhd/include/spid.h +++ b/drivers/net/wireless/bcmdhd/include/spid.h @@ -1,7 +1,7 @@ /* * SPI device spec header file * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/trxhdr.h b/drivers/net/wireless/bcmdhd/include/trxhdr.h index 84bd1aecb4f1..6e55b151815e 100644 --- a/drivers/net/wireless/bcmdhd/include/trxhdr.h +++ b/drivers/net/wireless/bcmdhd/include/trxhdr.h @@ -1,7 +1,7 @@ /* * TRX image file header format. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/typedefs.h b/drivers/net/wireless/bcmdhd/include/typedefs.h index c928f32f5bb2..abded95636f7 100644 --- a/drivers/net/wireless/bcmdhd/include/typedefs.h +++ b/drivers/net/wireless/bcmdhd/include/typedefs.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/wlfc_proto.h b/drivers/net/wireless/bcmdhd/include/wlfc_proto.h index 0f94ee211048..e4164245fb9d 100644 --- a/drivers/net/wireless/bcmdhd/include/wlfc_proto.h +++ b/drivers/net/wireless/bcmdhd/include/wlfc_proto.h @@ -1,5 +1,5 @@ /* -* Copyright (C) 1999-2013, Broadcom Corporation +* Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/include/wlioctl.h b/drivers/net/wireless/bcmdhd/include/wlioctl.h index 28d6f98627cc..2e6aa10663e7 100644 --- a/drivers/net/wireless/bcmdhd/include/wlioctl.h +++ b/drivers/net/wireless/bcmdhd/include/wlioctl.h @@ -4,7 +4,7 @@ * * Definitions subject to change without notice. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -24,7 +24,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wlioctl.h 443577 2013-12-17 02:32:12Z $ + * $Id: wlioctl.h 445540 2013-12-27 02:29:38Z $ */ #ifndef _wlioctl_h_ @@ -1818,11 +1818,11 @@ typedef struct { /* WLC_GET_AUTH, WLC_SET_AUTH values */ #define WL_AUTH_OPEN_SYSTEM 0 /* d11 open authentication */ #define WL_AUTH_SHARED_KEY 1 /* d11 shared authentication */ -#if (defined(BCM4334_CHIP) || defined(BCM43341_CHIP)) && defined(CUSTOMER_HW4) +#if defined(BCM4334_CHIP) || defined(BCM43341_CHIP) #define WL_AUTH_OPEN_SHARED 3 /* try open, then shared if open failed w/rc 13 */ #else #define WL_AUTH_OPEN_SHARED 2 /* try open, then shared if open failed w/rc 13 */ -#endif +#endif /* BCM4334_CHIP || BCM43341_CHIP */ #endif /* LINUX_POSTMOGRIFY_REMOVAL */ /* Bit masks for radio disabled status - returned by WL_GET_RADIO */ @@ -4337,6 +4337,7 @@ typedef struct wl_pkt_filter_stats { uint32 num_pkts_discarded; /* # packets discarded by dongle for all filters */ } wl_pkt_filter_stats_t; + #define RSN_KCK_LENGTH 16 #define RSN_KEK_LENGTH 16 #define RSN_REPLAY_LEN 8 diff --git a/drivers/net/wireless/bcmdhd/linux_osl.c b/drivers/net/wireless/bcmdhd/linux_osl.c index d2f1f7d97863..24c0bc5c23f9 100644 --- a/drivers/net/wireless/bcmdhd/linux_osl.c +++ b/drivers/net/wireless/bcmdhd/linux_osl.c @@ -1,7 +1,7 @@ /* * Linux OS Independent Layer * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -1147,6 +1147,8 @@ osl_sleep(uint ms) } + + void * osl_pktdup(osl_t *osh, void *skb) { diff --git a/drivers/net/wireless/bcmdhd/sbutils.c b/drivers/net/wireless/bcmdhd/sbutils.c index a118ecb9c657..7015e0571ffe 100644 --- a/drivers/net/wireless/bcmdhd/sbutils.c +++ b/drivers/net/wireless/bcmdhd/sbutils.c @@ -2,7 +2,7 @@ * Misc utility routines for accessing chip-specific features * of the SiliconBackplane-based Broadcom chips. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/siutils.c b/drivers/net/wireless/bcmdhd/siutils.c index 7f3562a40985..6099b62f0023 100644 --- a/drivers/net/wireless/bcmdhd/siutils.c +++ b/drivers/net/wireless/bcmdhd/siutils.c @@ -2,7 +2,7 @@ * Misc utility routines for accessing chip-specific features * of the SiliconBackplane-based Broadcom chips. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -22,7 +22,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: siutils.c 414368 2013-07-24 15:00:23Z $ + * $Id: siutils.c 444038 2013-12-18 09:35:07Z $ */ #include diff --git a/drivers/net/wireless/bcmdhd/siutils_priv.h b/drivers/net/wireless/bcmdhd/siutils_priv.h index 0d6442919eb4..786baa154eb2 100644 --- a/drivers/net/wireless/bcmdhd/siutils_priv.h +++ b/drivers/net/wireless/bcmdhd/siutils_priv.h @@ -1,7 +1,7 @@ /* * Include file private to the SOC Interconnect support files. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/uamp_api.h b/drivers/net/wireless/bcmdhd/uamp_api.h index 31e0d4b020a6..dde4e1c1497c 100644 --- a/drivers/net/wireless/bcmdhd/uamp_api.h +++ b/drivers/net/wireless/bcmdhd/uamp_api.h @@ -3,7 +3,7 @@ * * Description: Universal AMP API * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_android.c b/drivers/net/wireless/bcmdhd/wl_android.c index d2cb3a402e3c..e6df97b6559e 100644 --- a/drivers/net/wireless/bcmdhd/wl_android.c +++ b/drivers/net/wireless/bcmdhd/wl_android.c @@ -1,7 +1,7 @@ /* * Linux cfg80211 driver - Android related functions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wl_android.c 442435 2013-12-11 09:03:27Z $ + * $Id: wl_android.c 445702 2013-12-30 03:11:51Z $ */ #include @@ -124,6 +124,10 @@ #ifdef WLFBT #define CMD_GET_FTKEY "GET_FTKEY" #endif /* WLFBT */ +#ifdef TEST_TX_POWER_CONTROL +#define CMD_TEST_SET_TX_POWER "TEST_SET_TX_POWER" +#define CMD_TEST_GET_TX_POWER "TEST_GET_TX_POWER" +#endif /* TEST_TX_POWER_CONTROL */ #endif /* CUSTOMER_HW4 */ /* CCX Private Commands */ @@ -349,7 +353,6 @@ extern int dhd_os_check_if_up(void *dhdp); #ifdef BCMLXSDMMC extern void *bcmsdh_get_drvdata(void); #endif /* BCMLXSDMMC */ - #if defined(CUSTOMER_HW4) && defined(WES_SUPPORT) /* wl_roam.c */ extern int get_roamscan_mode(struct net_device *dev, int *mode); @@ -1978,6 +1981,57 @@ wl_android_rmc_enable(struct net_device *net, int rmc_enable) } return err; } + +#ifdef TEST_TX_POWER_CONTROL +static int +wl_android_set_tx_power(struct net_device *dev, const char* string_num) +{ + int err = 0; + s32 mw; + enum nl80211_tx_power_setting type; + + mw = bcm_atoi(string_num); + + if (mw < -1) { + DHD_ERROR(("%s: dbm is negative...\n", __FUNCTION__)); + return -EINVAL; + } + + if (mw == -1) + type = NL80211_TX_POWER_AUTOMATIC; + else + type = NL80211_TX_POWER_FIXED; + + err = wl_set_tx_power(dev, type, mw); + if (unlikely(err)) { + DHD_ERROR(("%s: error (%d)\n", __FUNCTION__, err)); + return err; + } + + return 1; +} + +static int +wl_android_get_tx_power(struct net_device *dev, char *command, int total_len) +{ + int err; + int bytes_written; + s32 mw = 0; + + err = wl_get_tx_power(dev, &mw); + if (unlikely(err)) { + DHD_ERROR(("%s: error (%d)\n", __FUNCTION__, err)); + return err; + } + + bytes_written = snprintf(command, total_len, "%s %d", + CMD_TEST_GET_TX_POWER, mw); + + DHD_ERROR(("%s: GET_TX_POWER: mW=%d\n", __FUNCTION__, mw)); + + return bytes_written; +} +#endif /* TEST_TX_POWER_CONTROL */ #endif /* CUSTOMER_HW4 */ int wl_android_set_roam_mode(struct net_device *dev, char *command, int total_len) @@ -2418,6 +2472,7 @@ static int wl_android_get_ibss_peer_info(struct net_device *dev, char *command, peer_info = (bss_peer_info_t *) ((void *)buf + BSS_PEER_LIST_INFO_FIXED_LEN); + for (i = 0; i < peer_list_info.count; i++) { WL_DBG(("index:%d rssi:%d, tx:%u, rx:%u\n", i, peer_info->rssi, @@ -2968,6 +3023,17 @@ int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr, int cmd) bytes_written = FBT_KEYLEN; } #endif /* WLFBT */ +#ifdef TEST_TX_POWER_CONTROL + else if (strnicmp(command, CMD_TEST_SET_TX_POWER, + strlen(CMD_TEST_SET_TX_POWER)) == 0) { + int skip = strlen(CMD_TEST_SET_TX_POWER) + 1; + wl_android_set_tx_power(net, (const char*)command+skip); + } + else if (strnicmp(command, CMD_TEST_GET_TX_POWER, + strlen(CMD_TEST_GET_TX_POWER)) == 0) { + wl_android_get_tx_power(net, command, priv_cmd.total_len); + } +#endif /* TEST_TX_POWER_CONTROL */ #endif /* CUSTOMER_HW4 */ else if (strnicmp(command, CMD_HAPD_MAC_FILTER, strlen(CMD_HAPD_MAC_FILTER)) == 0) { int skip = strlen(CMD_HAPD_MAC_FILTER) + 1; diff --git a/drivers/net/wireless/bcmdhd/wl_android.h b/drivers/net/wireless/bcmdhd/wl_android.h index 602f2da7540d..b3d3f35f91b8 100644 --- a/drivers/net/wireless/bcmdhd/wl_android.h +++ b/drivers/net/wireless/bcmdhd/wl_android.h @@ -1,7 +1,7 @@ /* * Linux cfg80211 driver - Android related functions * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/bcmdhd/wl_cfg80211.c index c5ffd9fb1829..686ec81fba0b 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfg80211.c +++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.c @@ -2,7 +2,7 @@ /* * Linux cfg80211 driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -22,7 +22,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wl_cfg80211.c 445404 2013-12-26 13:52:07Z $ + * $Id: wl_cfg80211.c 447766 2014-01-10 05:20:49Z $ */ /* */ #include @@ -1087,8 +1087,7 @@ static void swap_key_to_BE(struct wl_wsec_key *key) key->iv_initialized = dtoh32(key->iv_initialized); } -#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 4, 0)) && !defined(WL_COMPAT_WIRELESS) -/* For debug: Dump the contents of the encoded wps ie buffe */ +/* Dump the contents of the encoded wps ie buffer and get pbc value */ static void wl_validate_wps_ie(char *wps_ie, s32 wps_ie_len, bool *pbc) { @@ -1171,7 +1170,61 @@ wl_validate_wps_ie(char *wps_ie, s32 wps_ie_len, bool *pbc) subel += subelt_len; } } -#endif /* LINUX_VERSION < VERSION(3, 4, 0) && !WL_COMPAT_WIRELESS */ + +s32 wl_set_tx_power(struct net_device *dev, + enum nl80211_tx_power_setting type, s32 dbm) +{ + s32 err = 0; + s32 disable = 0; + s32 txpwrqdbm; + u16 txpwrmw; + + /* Make sure radio is off or on as far as software is concerned */ + disable = WL_RADIO_SW_DISABLE << 16; + disable = htod32(disable); + err = wldev_ioctl(dev, WLC_SET_RADIO, &disable, sizeof(disable), true); + if (unlikely(err)) { + WL_ERR(("WLC_SET_RADIO error (%d)\n", err)); + return err; + } + + if (dbm > 0xffff) + txpwrmw = 0xffff; + else + txpwrmw = (u16)dbm; + txpwrqdbm = (s32)bcm_mw_to_qdbm(txpwrmw); +#ifdef SUPPORT_WL_TXPOWER + if (type == NL80211_TX_POWER_AUTOMATIC) + txpwrqdbm = 127; + else + txpwrqdbm |= WL_TXPWR_OVERRIDE; +#endif /* SUPPORT_WL_TXPOWER */ + err = wldev_iovar_setint(dev, "qtxpower", txpwrqdbm); + if (unlikely(err)) + WL_ERR(("qtxpower error (%d)\n", err)); + else + WL_ERR(("mW=%d, txpwrqdbm=0x%x\n", dbm, txpwrqdbm)); + + return err; +} + +s32 wl_get_tx_power(struct net_device *dev, s32 *dbm) +{ + s32 err = 0; + s32 txpwrdbm; + u8 result; + + err = wldev_iovar_getint(dev, "qtxpower", &txpwrdbm); + if (unlikely(err)) { + WL_ERR(("error (%d)\n", err)); + return err; + } + + result = (u8) (txpwrdbm & ~WL_TXPWR_OVERRIDE); + *dbm = (s32) bcm_qdbm_to_mw(result); + + return err; +} static chanspec_t wl_cfg80211_get_shared_freq(struct wiphy *wiphy) { @@ -2200,6 +2253,7 @@ wl_run_escan(struct wl_priv *wl, struct net_device *ndev, params->version = htod32(ESCAN_REQ_VERSION); params->action = htod16(action); wl_escan_set_sync_id(params->sync_id, wl); + wl_escan_set_type(wl, WL_SCANTYPE_LEGACY); if (params_size + sizeof("escan") >= WLC_IOCTL_MEDLEN) { WL_ERR(("ioctl buffer length not sufficient\n")); kfree(params); @@ -2387,6 +2441,9 @@ __wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, unsigned long flags; static s32 busy_count = 0; +#ifdef WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST + struct net_device *remain_on_channel_ndev = NULL; +#endif dhd_pub_t *dhd; @@ -2422,9 +2479,10 @@ __wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, return -EOPNOTSUPP; } #ifdef WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST - if (wl_get_drv_status_all(wl, REMAINING_ON_CHANNEL)) { + remain_on_channel_ndev = wl_cfg80211_get_remain_on_channel_ndev(wl); + if (remain_on_channel_ndev) { WL_DBG(("Remain_on_channel bit is set, somehow it didn't get cleared\n")); - wl_notify_escan_complete(wl, ndev, true, true); + wl_notify_escan_complete(wl, remain_on_channel_ndev, true, true); } #endif /* WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST */ @@ -4035,10 +4093,7 @@ wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wl_priv *wl = wiphy_priv(wiphy); struct net_device *ndev = wl_to_prmry_ndev(wl); - u16 txpwrmw; s32 err = 0; - s32 disable = 0; - s32 txpwrqdbm; #if defined(WL_CFG80211_P2P_DEV_IF) s32 dbm = MBM_TO_DBM(mbm); #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0)) || \ @@ -4063,31 +4118,13 @@ wl_cfg80211_set_tx_power(struct wiphy *wiphy, } break; } - /* Make sure radio is off or on as far as software is concerned */ - disable = WL_RADIO_SW_DISABLE << 16; - disable = htod32(disable); - err = wldev_ioctl(ndev, WLC_SET_RADIO, &disable, sizeof(disable), true); - if (unlikely(err)) { - WL_ERR(("WLC_SET_RADIO error (%d)\n", err)); - return err; - } - if (dbm > 0xffff) - txpwrmw = 0xffff; - else - txpwrmw = (u16) dbm; - txpwrqdbm = (s32)bcm_mw_to_qdbm(txpwrmw); -#ifdef SUPPORT_WL_TXPOWER - if (type == NL80211_TX_POWER_AUTOMATIC) - txpwrqdbm = 127; - else - txpwrqdbm |= WL_TXPWR_OVERRIDE; -#endif /* SUPPORT_WL_TXPOWER */ - err = wldev_iovar_setint(ndev, "qtxpower", txpwrqdbm); + err = wl_set_tx_power(ndev, type, dbm); if (unlikely(err)) { - WL_ERR(("qtxpower error (%d)\n", err)); + WL_ERR(("error (%d)\n", err)); return err; } + wl->conf->tx_power = dbm; return err; @@ -4102,18 +4139,12 @@ static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm) { struct wl_priv *wl = wiphy_priv(wiphy); struct net_device *ndev = wl_to_prmry_ndev(wl); - s32 txpwrdbm; - u8 result; s32 err = 0; RETURN_EIO_IF_NOT_UP(wl); - err = wldev_iovar_getint(ndev, "qtxpower", &txpwrdbm); - if (unlikely(err)) { + err = wl_get_tx_power(ndev, dbm); + if (unlikely(err)) WL_ERR(("error (%d)\n", err)); - return err; - } - result = (u8) (txpwrdbm & ~WL_TXPWR_OVERRIDE); - *dbm = (s32) bcm_qdbm_to_mw(result); return err; } @@ -5710,7 +5741,7 @@ wl_cfg80211_mgmt_tx(struct wiphy *wiphy, bcm_struct_cfgdev *cfgdev, if (ieee80211_is_probe_resp(mgmt->frame_control)) { s32 ie_offset = DOT11_MGMT_HDR_LEN + DOT11_BCN_PRB_FIXED_LEN; s32 ie_len = len - ie_offset; - if (dev == wl_to_prmry_ndev(wl)) + if ((dev == wl_to_prmry_ndev(wl)) && wl->p2p) bssidx = wl_to_p2p_bss_bssidx(wl, P2PAPI_BSSCFG_DEVICE); wl_cfgp2p_set_management_ie(wl, dev, bssidx, VNDR_IE_PRBRSP_FLAG, (u8 *)(buf + ie_offset), ie_len); @@ -5969,6 +6000,20 @@ wl_cfg80211_set_channel(struct wiphy *wiphy, struct net_device *dev, return err; } +#ifdef WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST +struct net_device * +wl_cfg80211_get_remain_on_channel_ndev(struct wl_priv *wl) +{ + struct net_info *_net_info, *next; + list_for_each_entry_safe(_net_info, next, &wl->net_list, list) { + if (_net_info->ndev && + test_bit(WL_STATUS_REMAINING_ON_CHANNEL, &_net_info->sme_state)) + return _net_info->ndev; + } + return NULL; +} +#endif /* WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST */ + static s32 wl_validate_opensecurity(struct net_device *dev, s32 bssidx) { @@ -6282,6 +6327,7 @@ wl_validate_wpaie(struct net_device *dev, wpa_ie_fixed_t *wpaie, s32 bssidx) return 0; } + static s32 wl_cfg80211_bcn_validate_sec( struct net_device *dev, @@ -6842,6 +6888,16 @@ wl_cfg80211_start_ap( if ((err = wl_cfg80211_set_ies(dev, &info->beacon, bssidx)) < 0) WL_ERR(("Set IEs failed \n")); + /* Enable Probe Req filter, WPS-AP certification 4.2.13 */ + if ((dev_role == NL80211_IFTYPE_AP) && (ies.wps_ie != NULL)) { + bool pbc = 0; + wl_validate_wps_ie((char *) ies.wps_ie, ies.wps_ie_len, &pbc); + if (pbc) { + WL_DBG(("set WLC_E_PROBREQ_MSG\n")); + wl_add_remove_eventmsg(dev, WLC_E_PROBREQ_MSG, true); + } + } + fail: if (err) { WL_ERR(("ADD/SET beacon failed\n")); @@ -6942,6 +6998,7 @@ wl_cfg80211_change_beacon( struct parsed_ies ies; u32 dev_role = 0; s32 bssidx = 0; + bool pbc = 0; WL_DBG(("Enter \n")); @@ -6986,6 +7043,15 @@ wl_cfg80211_change_beacon( err = -EINVAL; goto fail; } + /* Enable Probe Req filter, WPS-AP certification 4.2.13 */ + if ((dev_role == NL80211_IFTYPE_AP) && (ies.wps_ie != NULL)) { + wl_validate_wps_ie((char *) ies.wps_ie, ies.wps_ie_len, &pbc); + WL_DBG((" WPS AP, wps_ie is exists pbc=%d\n", pbc)); + if (pbc) + wl_add_remove_eventmsg(dev, WLC_E_PROBREQ_MSG, true); + else + wl_add_remove_eventmsg(dev, WLC_E_PROBREQ_MSG, false); + } } fail: @@ -8874,6 +8940,35 @@ wl_notify_rx_mgmt_frame(struct wl_priv *wl, bcm_struct_cfgdev *cfgdev, WL_DBG(("P2P: GO_NEG_PHASE status cleared \n")); wl_clr_p2p_status(wl, GO_NEG_PHASE); } + } else if (event == WLC_E_PROBREQ_MSG) { + + /* Handle probe reqs frame + * WPS-AP certification 4.2.13 + */ + struct parsed_ies prbreq_ies; + u32 prbreq_ie_len = 0; + bool pbc = 0; + + WL_DBG((" Event WLC_E_PROBREQ_MSG received\n")); + mgmt_frame = (u8 *)(data); + mgmt_frame_len = ntoh32(e->datalen); + + prbreq_ie_len = mgmt_frame_len - DOT11_MGMT_HDR_LEN; + + /* Parse prob_req IEs */ + if (wl_cfg80211_parse_ies(&mgmt_frame[DOT11_MGMT_HDR_LEN], + prbreq_ie_len, &prbreq_ies) < 0) { + WL_ERR(("Prob req get IEs failed\n")); + return 0; + } + if (prbreq_ies.wps_ie != NULL) { + wl_validate_wps_ie((char *)prbreq_ies.wps_ie, prbreq_ies.wps_ie_len, &pbc); + WL_DBG((" wps_ie exist pbc = %d\n", pbc)); + /* if pbc method, send prob_req mgmt frame to upper layer */ + if (!pbc) + return 0; + } else + return 0; } else { mgmt_frame = (u8 *)((wl_event_rx_frame_data_t *)rxframe + 1); @@ -9120,6 +9215,8 @@ wl_init_escan_result_buf(struct wl_priv *wl) bzero(wl->escan_info.escan_buf[0], ESCAN_BUF_SIZE); wl->escan_info.escan_buf[1] = dhd_os_prealloc(NULL, DHD_PREALLOC_WIPHY_ESCAN1, 0); bzero(wl->escan_info.escan_buf[1], ESCAN_BUF_SIZE); + wl->escan_info.escan_type[0] = 0; + wl->escan_info.escan_type[1] = 0; #else wl->escan_info.escan_buf = dhd_os_prealloc(NULL, DHD_PREALLOC_WIPHY_ESCAN0, 0); bzero(wl->escan_info.escan_buf, ESCAN_BUF_SIZE); @@ -9132,6 +9229,8 @@ wl_deinit_escan_result_buf(struct wl_priv *wl) #if defined(DUAL_ESCAN_RESULT_BUFFER) wl->escan_info.escan_buf[0] = NULL; wl->escan_info.escan_buf[1] = NULL; + wl->escan_info.escan_type[0] = 0; + wl->escan_info.escan_type[1] = 0; #else wl->escan_info.escan_buf = NULL; #endif @@ -10482,6 +10581,9 @@ void wl_cfg80211_detach(void *para) WL_TRACE(("In\n")); + wl_add_remove_pm_enable_work(wl, FALSE, WL_HANDLER_DEL); + + #if defined(COEX_DHCP) wl_cfg80211_btcoex_deinit(wl); #endif diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.h b/drivers/net/wireless/bcmdhd/wl_cfg80211.h index 568135a115d7..f511f747ba22 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfg80211.h +++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.h @@ -1,7 +1,7 @@ /* * Linux cfg80211 driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wl_cfg80211.h 440872 2013-12-04 05:25:35Z $ + * $Id: wl_cfg80211.h 447766 2014-01-10 05:20:49Z $ */ #ifndef _wl_cfg80211_h_ @@ -442,6 +442,7 @@ struct escan_info { #endif /* STATIC_WL_PRIV_STRUCT */ #if defined(CUSTOMER_HW4) && defined(DUAL_ESCAN_RESULT_BUFFER) u8 cur_sync_id; + u8 escan_type[2]; #endif /* CUSTOMER_HW4 && DUAL_ESCAN_RESULT_BUFFER */ struct wiphy *wiphy; struct net_device *ndev; @@ -451,8 +452,10 @@ struct ap_info { /* Structure to hold WPS, WPA IEs for a AP */ u8 probe_res_ie[VNDR_IES_MAX_BUF_LEN]; u8 beacon_ie[VNDR_IES_MAX_BUF_LEN]; + u8 assoc_res_ie[VNDR_IES_MAX_BUF_LEN]; u32 probe_res_ie_len; u32 beacon_ie_len; + u32 assoc_res_ie_len; u8 *wpa_ie; u8 *rsn_ie; u8 *wps_ie; @@ -959,6 +962,9 @@ void wl_cfg80211_enable_trace(bool set, u32 level); extern s32 wl_update_wiphybands(struct wl_priv *wl, bool notify); extern s32 wl_cfg80211_if_is_group_owner(void); extern chanspec_t wl_ch_host_to_driver(u16 channel); +extern s32 wl_set_tx_power(struct net_device *dev, + enum nl80211_tx_power_setting type, s32 dbm); +extern s32 wl_get_tx_power(struct net_device *dev, s32 *dbm); extern s32 wl_add_remove_eventmsg(struct net_device *ndev, u16 event, bool add); extern void wl_stop_wait_next_action_frame(struct wl_priv *wl); extern int wl_cfg80211_update_power_mode(struct net_device *dev); @@ -971,10 +977,26 @@ extern s32 wl_cfg80211_apply_eventbuffer(struct net_device *ndev, extern void get_primary_mac(struct wl_priv *wl, struct ether_addr *mac); #define SCAN_BUF_CNT 2 #define SCAN_BUF_NEXT 1 +#define WL_SCANTYPE_LEGACY 0x1 +#define WL_SCANTYPE_P2P 0x2 #if defined(DUAL_ESCAN_RESULT_BUFFER) #define wl_escan_set_sync_id(a, b) ((a) = (b)->escan_info.cur_sync_id) -#define wl_escan_get_buf(a, b) ((wl_scan_results_t *) (a)->escan_info.escan_buf\ -[((a)->escan_info.cur_sync_id + (b))%SCAN_BUF_CNT]) +#define wl_escan_set_type(a, b) ((a)->escan_info.escan_type\ +[((a)->escan_info.cur_sync_id)%SCAN_BUF_CNT] = (b)) +static inline wl_scan_results_t *wl_escan_get_buf(struct wl_priv *wl, bool aborted) +{ + u8 index; + if (aborted) { + if (wl->escan_info.escan_type[0] == wl->escan_info.escan_type[1]) + index = (wl->escan_info.cur_sync_id + 1)%SCAN_BUF_CNT; + else + index = (wl->escan_info.cur_sync_id)%SCAN_BUF_CNT; + } + else + index = (wl->escan_info.cur_sync_id)%SCAN_BUF_CNT; + + return (wl_scan_results_t *)wl->escan_info.escan_buf[index]; +} static inline int wl_escan_check_sync_id(s32 status, u16 result_id, u16 wl_id) { if (result_id != wl_id) { @@ -998,6 +1020,7 @@ static inline void wl_escan_print_sync_id(s32 status, u16 result_id, u16 wl_id) #define wl_escan_init_sync_id(a) ((a)->escan_info.cur_sync_id = 0) #else #define wl_escan_set_sync_id(a, b) ((a) = htod16(0x1234)) +#define wl_escan_set_type(a, b) #define wl_escan_get_buf(a, b) ((wl_scan_results_t *) (a)->escan_info.escan_buf) #define wl_escan_check_sync_id(a, b, c) 0 #define wl_escan_print_sync_id(a, b, c) @@ -1016,4 +1039,7 @@ extern void wl_cfg80211_set_txfail_pid(int pid); #ifdef WLFBT extern void wl_get_fbt_key(uint8 *key); #endif -#endif /* _wl_cfg80211_h_ */ +#ifdef WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST +struct net_device *wl_cfg80211_get_remain_on_channel_ndev(struct wl_priv *wl); +#endif /* WL_CFG80211_VSDB_PRIORITIZE_SCAN_REQUEST */ +#endif /* _wl_cfg80211_h_ */ diff --git a/drivers/net/wireless/bcmdhd/wl_cfgp2p.c b/drivers/net/wireless/bcmdhd/wl_cfgp2p.c index cd7a3428e195..42ad2e2b5102 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfgp2p.c +++ b/drivers/net/wireless/bcmdhd/wl_cfgp2p.c @@ -1,7 +1,7 @@ /* * Linux cfgp2p driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -21,7 +21,7 @@ * software in any way with any other Broadcom software provided under a license * other than the GPL, without Broadcom's express prior written consent. * - * $Id: wl_cfgp2p.c 445404 2013-12-26 13:52:07Z $ + * $Id: wl_cfgp2p.c 447531 2014-01-09 11:31:40Z $ * */ #include @@ -617,6 +617,7 @@ wl_cfgp2p_set_p2p_mode(struct wl_priv *wl, u8 mode, u32 channel, u16 listen_ms, return BCME_NOTFOUND; } + /* Put the WL driver into P2P Listen Mode to respond to P2P probe reqs */ discovery_mode.state = mode; discovery_mode.chspec = wl_ch_host_to_driver(channel); @@ -737,12 +738,6 @@ wl_cfgp2p_enable_discovery(struct wl_priv *wl, struct net_device *dev, s32 ret = BCME_OK; s32 bssidx; - if (wl_to_prmry_ndev(wl) == dev) { - bssidx = wl_to_p2p_bss_bssidx(wl, P2PAPI_BSSCFG_DEVICE); - } else if (wl_cfgp2p_find_idx(wl, dev, &bssidx) != BCME_OK) { - WL_ERR(("Find p2p index from dev(%p) failed\n", dev)); - return BCME_ERROR; - } if (wl_get_p2p_status(wl, DISCOVERY_ON)) { CFGP2P_INFO((" DISCOVERY is already initialized, we have nothing to do\n")); goto set_ie; @@ -768,6 +763,13 @@ wl_cfgp2p_enable_discovery(struct wl_priv *wl, struct net_device *dev, } set_ie: if (ie_len) { + if (wl_to_prmry_ndev(wl) == dev) { + bssidx = wl_to_p2p_bss_bssidx(wl, P2PAPI_BSSCFG_DEVICE); + } else if (wl_cfgp2p_find_idx(wl, dev, &bssidx) != BCME_OK) { + WL_ERR(("Find p2p index from dev(%p) failed\n", dev)); + return BCME_ERROR; + } + ret = wl_cfgp2p_set_management_ie(wl, dev, bssidx, VNDR_IE_PRBREQ_FLAG, ie, ie_len); @@ -946,6 +948,7 @@ wl_cfgp2p_escan(struct wl_priv *wl, struct net_device *dev, u16 active, eparams->version = htod32(ESCAN_REQ_VERSION); eparams->action = htod16(action); wl_escan_set_sync_id(eparams->sync_id, wl); + wl_escan_set_type(wl, WL_SCANTYPE_P2P); CFGP2P_INFO(("SCAN CHANNELS : ")); for (i = 0; i < num_chans; i++) { @@ -1180,6 +1183,12 @@ wl_cfgp2p_set_management_ie(struct wl_priv *wl, struct net_device *ndev, s32 bss mgmt_ie_len = &wl->ap_info->beacon_ie_len; mgmt_ie_buf_len = sizeof(wl->ap_info->beacon_ie); break; + case VNDR_IE_ASSOCRSP_FLAG : + /* WPS-AP WSC2.0 assoc res includes wps_ie */ + mgmt_ie_buf = wl->ap_info->assoc_res_ie; + mgmt_ie_len = &wl->ap_info->assoc_res_ie_len; + mgmt_ie_buf_len = sizeof(wl->ap_info->assoc_res_ie); + break; default: mgmt_ie_buf = NULL; mgmt_ie_len = NULL; @@ -1596,6 +1605,7 @@ wl_cfgp2p_listen_complete(struct wl_priv *wl, bcm_struct_cfgdev *cfgdev, ndev = cfgdev_to_wlc_ndev(cfgdev, wl); + if (wl_get_p2p_status(wl, LISTEN_EXPIRED) == 0) { wl_set_p2p_status(wl, LISTEN_EXPIRED); if (timer_pending(&wl->p2p->listen_timer)) { @@ -2603,19 +2613,19 @@ wl_cfgp2p_add_p2p_disc_if(void) struct ether_addr primary_mac; if (!wl) - return NULL; + return ERR_PTR(-EINVAL); WL_TRACE(("Enter\n")); if (wl->p2p_wdev) { CFGP2P_ERR(("p2p_wdev defined already.\n")); - return NULL; + return ERR_PTR(-ENFILE); } wdev = kzalloc(sizeof(*wdev), GFP_KERNEL); if (unlikely(!wdev)) { WL_ERR(("Could not allocate wireless device\n")); - return NULL; + return ERR_PTR(-ENOMEM); } memset(&primary_mac, 0, sizeof(primary_mac)); @@ -2627,6 +2637,11 @@ wl_cfgp2p_add_p2p_disc_if(void) wdev->iftype = NL80211_IFTYPE_P2P_DEVICE; memcpy(wdev->address, &wl->p2p->dev_addr, ETHER_ADDR_LEN); +#if defined(WL_NEWCFG_PRIVCMD_SUPPORT) + if (cfg->p2p_net) + memcpy(cfg->p2p_net->dev_addr, &cfg->p2p->dev_addr, ETHER_ADDR_LEN); +#endif /* WL_NEWCFG_PRIVCMD_SUPPORT */ + /* store p2p wdev ptr for further reference. */ wl->p2p_wdev = wdev; diff --git a/drivers/net/wireless/bcmdhd/wl_cfgp2p.h b/drivers/net/wireless/bcmdhd/wl_cfgp2p.h index 329699b85d9f..71c2dc7f8865 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfgp2p.h +++ b/drivers/net/wireless/bcmdhd/wl_cfgp2p.h @@ -1,7 +1,7 @@ /* * Linux cfgp2p driver * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_dbg.h b/drivers/net/wireless/bcmdhd/wl_dbg.h index c07ae30ee76c..a614e2fe7462 100644 --- a/drivers/net/wireless/bcmdhd/wl_dbg.h +++ b/drivers/net/wireless/bcmdhd/wl_dbg.h @@ -2,7 +2,7 @@ * Minimal debug/trace/assert driver definitions for * Broadcom 802.11 Networking Adapter. * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_iw.c b/drivers/net/wireless/bcmdhd/wl_iw.c index af0764f7de67..980a8a81fd95 100644 --- a/drivers/net/wireless/bcmdhd/wl_iw.c +++ b/drivers/net/wireless/bcmdhd/wl_iw.c @@ -1,7 +1,7 @@ /* * Linux Wireless Extensions support * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_iw.h b/drivers/net/wireless/bcmdhd/wl_iw.h index a35e2cd1b741..9b03fb1f3fb9 100644 --- a/drivers/net/wireless/bcmdhd/wl_iw.h +++ b/drivers/net/wireless/bcmdhd/wl_iw.h @@ -1,7 +1,7 @@ /* * Linux Wireless Extensions support * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_linux_mon.c b/drivers/net/wireless/bcmdhd/wl_linux_mon.c index 117b0abe76de..dc0c5282627f 100644 --- a/drivers/net/wireless/bcmdhd/wl_linux_mon.c +++ b/drivers/net/wireless/bcmdhd/wl_linux_mon.c @@ -1,7 +1,7 @@ /* * Broadcom Dongle Host Driver (DHD), Linux monitor network interface * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wl_roam.c b/drivers/net/wireless/bcmdhd/wl_roam.c index 6e92f5304ded..a807d6b3b533 100644 --- a/drivers/net/wireless/bcmdhd/wl_roam.c +++ b/drivers/net/wireless/bcmdhd/wl_roam.c @@ -1,7 +1,7 @@ /* * Linux roam cache * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wldev_common.c b/drivers/net/wireless/bcmdhd/wldev_common.c index 4e9389a000f2..a4e703b3e204 100644 --- a/drivers/net/wireless/bcmdhd/wldev_common.c +++ b/drivers/net/wireless/bcmdhd/wldev_common.c @@ -1,7 +1,7 @@ /* * Common function shared by Linux WEXT, cfg80211 and p2p drivers * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you diff --git a/drivers/net/wireless/bcmdhd/wldev_common.h b/drivers/net/wireless/bcmdhd/wldev_common.h index ca87b3c08895..7981f4976d8d 100644 --- a/drivers/net/wireless/bcmdhd/wldev_common.h +++ b/drivers/net/wireless/bcmdhd/wldev_common.h @@ -1,7 +1,7 @@ /* * Common function shared by Linux WEXT, cfg80211 and p2p drivers * - * Copyright (C) 1999-2013, Broadcom Corporation + * Copyright (C) 1999-2014, Broadcom Corporation * * Unless you and Broadcom execute a separate written software license * agreement governing use of this software, this software is licensed to you @@ -109,4 +109,5 @@ int wldev_get_band(struct net_device *dev, uint *pband); int wldev_set_band(struct net_device *dev, uint band); + #endif /* __WLDEV_COMMON_H__ */ diff --git a/drivers/net/wireless/bcmdhd4354/dhd_custom_sec.c b/drivers/net/wireless/bcmdhd4354/dhd_custom_sec.c index e2875b53b75b..7d709e2f62c7 100644 --- a/drivers/net/wireless/bcmdhd4354/dhd_custom_sec.c +++ b/drivers/net/wireless/bcmdhd4354/dhd_custom_sec.c @@ -149,7 +149,6 @@ const struct cntry_locales_custom translate_custom_table[] = { {"PS", "XZ", 11}, /* Universal if Country code is PALESTINIAN TERRITORY, OCCUPIED */ {"TL", "XZ", 11}, /* Universal if Country code is TIMOR-LESTE (EAST TIMOR) */ {"MH", "XZ", 11}, /* Universal if Country code is MARSHALL ISLANDS */ - {"SG", "SG", 4}, {"US", "US", 46}, {"UA", "UA", 8}, {"CO", "CO", 4}, @@ -272,7 +271,6 @@ const struct cntry_locales_custom translate_custom_table[] = { {"RO", "RO", 4}, {"SN", "SN", 2}, {"RS", "RS", 2}, - {"SG", "SG", 4}, {"SK", "SK", 4}, {"SI", "SI", 4}, {"ES", "ES", 4}, diff --git a/drivers/net/wireless/bcmdhd4354/dhd_sdio.c b/drivers/net/wireless/bcmdhd4354/dhd_sdio.c index 233bb3f8e16e..76750ae9792e 100644 --- a/drivers/net/wireless/bcmdhd4354/dhd_sdio.c +++ b/drivers/net/wireless/bcmdhd4354/dhd_sdio.c @@ -8462,7 +8462,9 @@ dhd_bus_devreset(dhd_pub_t *dhdp, uint8 flag) #if defined(OOB_INTR_ONLY) || defined(BCMSPI_ANDROID) /* Clean up any pending IRQ */ + dhd_enable_oob_intr(bus, FALSE); bcmsdh_oob_intr_set(bus->sdh, FALSE); + bcmsdh_oob_intr_unregister(bus->sdh); #endif /* defined(OOB_INTR_ONLY) || defined(BCMSPI_ANDROID) */ /* Clean tx/rx buffer pointers, detach from the dongle */ diff --git a/drivers/net/wireless/bcmdhd4354/wl_cfg80211.c b/drivers/net/wireless/bcmdhd4354/wl_cfg80211.c index a1ab2e885159..bc528df68f72 100644 --- a/drivers/net/wireless/bcmdhd4354/wl_cfg80211.c +++ b/drivers/net/wireless/bcmdhd4354/wl_cfg80211.c @@ -4959,8 +4959,10 @@ wl_cfg80211_af_searching_channel(struct bcm_cfg80211 *cfg, struct net_device *de if (cfg->afx_hdl->pending_tx_act_frm) { wl_action_frame_t *action_frame; action_frame = &(cfg->afx_hdl->pending_tx_act_frm->action_frame); - if (wl_cfgp2p_is_p2p_gas_action(action_frame->data, action_frame->len)) + if (wl_cfgp2p_is_p2p_gas_action(action_frame->data, action_frame->len)) { is_p2p_gas = true; + WL_ERR((" is_p2p_gas %d \n",is_p2p_gas)); + } } #endif /* CUSTOMER_HW4 */ @@ -4982,8 +4984,10 @@ wl_cfg80211_af_searching_channel(struct bcm_cfg80211 *cfg, struct net_device *de !(wl_get_drv_status(cfg, FINDING_COMMON_CHANNEL, dev))) break; #ifdef CUSTOMER_HW4 - if (is_p2p_gas) + if (is_p2p_gas) { + WL_ERR((" is_p2p_gas %d break \n",is_p2p_gas)); break; + } #endif /* CUSTOMER_HW4 */ if (cfg->afx_hdl->my_listen_chan) { @@ -5208,6 +5212,18 @@ wl_cfg80211_send_action_frame(struct wiphy *wiphy, struct net_device *dev, ulong off_chan_started_jiffies = 0; #endif dhd_pub_t *dhd = (dhd_pub_t *)(cfg->pub); + +#if defined(CUSTOMER_HW4) +#define PRIVATE_REQ_MASK 0xff000000 + int32 requested_dwell = af_params->dwell_time; +#endif /* CUSTOMER_HW4 */ + + /* Add the default dwell time + * Dwell time to stay off-channel to wait for a response action frame + * after transmitting an GO Negotiation action frame + */ + af_params->dwell_time = WL_DWELL_TIME; + #ifdef WL11U #if defined(WL_CFG80211_P2P_DEV_IF) ndev = dev; @@ -5265,6 +5281,16 @@ wl_cfg80211_send_action_frame(struct wiphy *wiphy, struct net_device *dev, cfg->next_af_subtype = action + 1; af_params->dwell_time = WL_MED_DWELL_TIME; +#if defined(CUSTOMER_HW4) + if (requested_dwell & PRIVATE_REQ_MASK) { + config_af_params.max_tx_retry = (requested_dwell & PRIVATE_REQ_MASK) >> 24; + af_params->dwell_time = (requested_dwell & ~PRIVATE_REQ_MASK); + WL_DBG(("Modified afx request. retry(%d) dwell time(%d)\n", + config_af_params.max_tx_retry, + af_params->dwell_time)); + } +#undef PRIVATE_REQ_MASK +#endif /* CUSTOMER_HW4 */ } else if (action == P2PSD_ACTION_ID_GAS_IRESP || action == P2PSD_ACTION_ID_GAS_CRESP) { /* configure service discovery response frame */ @@ -5337,6 +5363,7 @@ wl_cfg80211_send_action_frame(struct wiphy *wiphy, struct net_device *dev, cfg->afx_hdl->pending_tx_act_frm = af_params; /* search peer's channel */ + WL_ERR(("config_af_params.search_channel %d.\n",config_af_params.search_channel)); if (config_af_params.search_channel) { /* initialize afx_hdl */ if (wl_cfgp2p_find_idx(cfg, dev, &cfg->afx_hdl->bssidx) != BCME_OK) { @@ -5381,6 +5408,7 @@ wl_cfg80211_send_action_frame(struct wiphy *wiphy, struct net_device *dev, /* if failed, retry it. tx_retry_max value is configure by .... */ while ((ack == false) && (tx_retry++ < config_af_params.max_tx_retry)) { + WL_ERR(("(retry %d) (max%d)\n", tx_retry,config_af_params.max_tx_retry)); #ifdef VSDB if (af_params->channel) { if (jiffies_to_msecs(jiffies - off_chan_started_jiffies) > @@ -5608,11 +5636,7 @@ wl_cfg80211_mgmt_tx(struct wiphy *wiphy, bcm_struct_cfgdev *cfgdev, cfg->afx_hdl->peer_listen_chan = af_params->channel; WL_DBG(("channel from upper layer %d\n", cfg->afx_hdl->peer_listen_chan)); - /* Add the default dwell time - * Dwell time to stay off-channel to wait for a response action frame - * after transmitting an GO Negotiation action frame - */ - af_params->dwell_time = WL_DWELL_TIME; + af_params->dwell_time = wait; memcpy(action_frame->data, &buf[DOT11_MGMT_HDR_LEN], action_frame->len); diff --git a/drivers/rtc/alarm-dev.c b/drivers/rtc/alarm-dev.c index 4682e9c1fdfa..a414fbc0839a 100644 --- a/drivers/rtc/alarm-dev.c +++ b/drivers/rtc/alarm-dev.c @@ -68,6 +68,10 @@ static long alarm_ioctl(struct file *file, unsigned int cmd, unsigned long arg) enum android_alarm_type alarm_type = ANDROID_ALARM_IOCTL_TO_TYPE(cmd); uint32_t alarm_type_mask = 1U << alarm_type; +#ifdef CONFIG_RTC_AUTO_PWRON + char bootalarm_data[14]; +#endif + if (alarm_type >= ANDROID_ALARM_TYPE_COUNT) return -EINVAL; @@ -167,6 +171,16 @@ static long alarm_ioctl(struct file *file, unsigned int cmd, unsigned long arg) if (rv < 0) goto err1; break; +#ifdef CONFIG_RTC_AUTO_PWRON + case ANDROID_ALARM_SET_ALARM: + pr_info("[SAPA] %s\n", __func__); + if (copy_from_user(bootalarm_data, (void __user *)arg, 14)) { + rv = -EFAULT; + goto err1; + } + rv = alarm_set_alarm(bootalarm_data); + break; +#endif case ANDROID_ALARM_GET_TIME(0): switch (alarm_type) { case ANDROID_ALARM_RTC_WAKEUP: diff --git a/drivers/rtc/alarm.c b/drivers/rtc/alarm.c index 78996a5cc143..2df7ffa0d9ad 100644 --- a/drivers/rtc/alarm.c +++ b/drivers/rtc/alarm.c @@ -274,6 +274,15 @@ int alarm_set_rtc(struct timespec new_time) rtc_new_rtc_time.tm_mday, rtc_new_rtc_time.tm_year + 1900); +#ifdef CONFIG_RTC_AUTO_PWRON + pr_info("%s : set rtc %ld %ld - rtc %02d:%02d:%02d %02d/%02d/%04d\n", __func__, + new_time.tv_sec, new_time.tv_nsec, + rtc_new_rtc_time.tm_hour, rtc_new_rtc_time.tm_min, + rtc_new_rtc_time.tm_sec, rtc_new_rtc_time.tm_mon + 1, + rtc_new_rtc_time.tm_mday, + rtc_new_rtc_time.tm_year + 1900); +#endif + mutex_lock(&alarm_setrtc_mutex); spin_lock_irqsave(&alarm_slock, flags); wake_lock(&alarm_rtc_wake_lock); @@ -314,6 +323,107 @@ int alarm_set_rtc(struct timespec new_time) return ret; } +#ifdef CONFIG_RTC_AUTO_PWRON +extern int rtc_set_bootalarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm); +// 0|1234|56|78|90|12 +// 1|2010|01|01|00|00 +//en yyyy mm dd hh mm +#define BOOTALM_BIT_EN 0 +#define BOOTALM_BIT_YEAR 1 +#define BOOTALM_BIT_MONTH 5 +#define BOOTALM_BIT_DAY 7 +#define BOOTALM_BIT_HOUR 9 +#define BOOTALM_BIT_MIN 11 +#define BOOTALM_BIT_TOTAL 13 + +int alarm_set_alarm(char* alarm_data) +{ + struct rtc_wkalrm alm; + int ret; + char buf_ptr[BOOTALM_BIT_TOTAL+1]; + struct rtc_time rtc_tm; + unsigned long rtc_sec; + unsigned long rtc_alarm_time; + struct timespec rtc_delta; + struct timespec wall_time; + ktime_t wall_ktm; + struct rtc_time wall_tm; + + if (!alarm_rtc_dev) { + pr_alarm(ERROR, + "alarm_set_alarm: no RTC, time will be lost on reboot\n"); + return -1; + } + + strlcpy(buf_ptr, alarm_data, BOOTALM_BIT_TOTAL+1); + + alm.time.tm_sec = 0; + alm.time.tm_min = (buf_ptr[BOOTALM_BIT_MIN] -'0') * 10 + + (buf_ptr[BOOTALM_BIT_MIN+1] -'0'); + alm.time.tm_hour = (buf_ptr[BOOTALM_BIT_HOUR] -'0') * 10 + + (buf_ptr[BOOTALM_BIT_HOUR+1] -'0'); + alm.time.tm_mday = (buf_ptr[BOOTALM_BIT_DAY] -'0') * 10 + + (buf_ptr[BOOTALM_BIT_DAY+1] -'0'); + alm.time.tm_mon = (buf_ptr[BOOTALM_BIT_MONTH] -'0') * 10 + + (buf_ptr[BOOTALM_BIT_MONTH+1]-'0'); + alm.time.tm_year = (buf_ptr[BOOTALM_BIT_YEAR] -'0') * 1000 + + (buf_ptr[BOOTALM_BIT_YEAR+1] -'0') * 100 + + (buf_ptr[BOOTALM_BIT_YEAR+2] -'0') * 10 + + (buf_ptr[BOOTALM_BIT_YEAR+3] -'0'); + + alm.enabled = (*buf_ptr == '1'); + + pr_info("[SAPA] %s : %s => tm(%d %04d-%02d-%02d %02d:%02d:%02d)\n", + __func__, buf_ptr, alm.enabled, + alm.time.tm_year, alm.time.tm_mon, alm.time.tm_mday, + alm.time.tm_hour, alm.time.tm_min, alm.time.tm_sec); + + if ( alm.enabled ) { + /* If time daemon is exist */ + + alm.time.tm_mon -= 1; + alm.time.tm_year -= 1900; + + /* read current time */ + rtc_read_time(alarm_rtc_dev, &rtc_tm); + rtc_tm_to_time(&rtc_tm, &rtc_sec); + pr_info("[SAPA] rtc %4d-%02d-%02d %02d:%02d:%02d -> %lu\n", + rtc_tm.tm_year, rtc_tm.tm_mon, rtc_tm.tm_mday, + rtc_tm.tm_hour, rtc_tm.tm_min, rtc_tm.tm_sec, rtc_sec); + + /* read kernel time */ + getnstimeofday(&wall_time); + wall_ktm = timespec_to_ktime(wall_time); + wall_tm = rtc_ktime_to_tm(wall_ktm); + pr_info("[SAPA] wall %4d-%02d-%02d %02d:%02d:%02d -> %lu\n", + wall_tm.tm_year, wall_tm.tm_mon, wall_tm.tm_mday, + wall_tm.tm_hour, wall_tm.tm_min, wall_tm.tm_sec, wall_time.tv_sec); + + /* calculate offset */ + set_normalized_timespec(&rtc_delta, + wall_time.tv_sec - rtc_sec, + wall_time.tv_nsec); + + /* convert user requested SAPA time to second type */ + rtc_tm_to_time(&alm.time, &rtc_alarm_time); + + /* convert to RTC time with user requested SAPA time and offset */ + rtc_alarm_time -= rtc_delta.tv_sec; + rtc_time_to_tm(rtc_alarm_time, &alm.time); + pr_info("[SAPA] arlm %4d-%02d-%02d %02d:%02d:%02d -> %lu\n", + alm.time.tm_year, alm.time.tm_mon, alm.time.tm_mday, + alm.time.tm_hour, alm.time.tm_min, alm.time.tm_sec, rtc_alarm_time); + + } + ret = rtc_set_bootalarm(alarm_rtc_dev, &alm); + if (ret < 0) { + pr_alarm(ERROR, "alarm_set_alarm: " + "Failed to set ALARM, time will be lost on reboot\n"); + return -2; + } + return 0; +} +#endif void alarm_update_timedelta(struct timespec tmp_time, struct timespec new_time) diff --git a/drivers/rtc/interface.c b/drivers/rtc/interface.c index eb415bd76494..556c4afbbeb1 100644 --- a/drivers/rtc/interface.c +++ b/drivers/rtc/interface.c @@ -413,7 +413,51 @@ int rtc_initialize_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) } EXPORT_SYMBOL_GPL(rtc_initialize_alarm); +#ifdef CONFIG_RTC_AUTO_PWRON +int rtc_set_bootalarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) +{ + int err; + +/* err = mutex_lock_interruptible(&rtc->ops_lock); */ +/* if (err) */ +/* return err; */ + + if (!rtc->ops) { + dev_err(&rtc->dev, "ops not exist\n"); + err = -ENODEV; + } else if (!rtc->ops->set_bootalarm) { + dev_err(&rtc->dev, "bootalarm func not exist\n"); + err = -EINVAL; + } else + err = rtc->ops->set_bootalarm(rtc->dev.parent, alarm); + pr_info("[SAPA] %s\n",__func__); +/* mutex_unlock(&rtc->ops_lock); */ + return err; +} +EXPORT_SYMBOL_GPL(rtc_set_bootalarm); +int rtc_get_bootalarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) +{ + int err; + +/* err = mutex_lock_interruptible(&rtc->ops_lock); */ +/* if (err) */ +/* return err; */ + + if (!rtc->ops) { + dev_err(&rtc->dev, "ops not exist\n"); + err = -ENODEV; + } else if (!rtc->ops->read_bootalarm) { + dev_err(&rtc->dev, "bootalarm func not exist\n"); + err = -EINVAL; + } else + err = rtc->ops->read_bootalarm(rtc->dev.parent, alarm); + pr_info("[SAPA] %s\n",__func__); +/* mutex_unlock(&rtc->ops_lock); */ + return err; +} +EXPORT_SYMBOL_GPL(rtc_get_bootalarm); +#endif /* CONFIG_AUTO_PWRON */ int rtc_alarm_irq_enable(struct rtc_device *rtc, unsigned int enabled) { diff --git a/drivers/rtc/qpnp-rtc.c b/drivers/rtc/qpnp-rtc.c index 133ae20269b3..9fa4dbb827fc 100644 --- a/drivers/rtc/qpnp-rtc.c +++ b/drivers/rtc/qpnp-rtc.c @@ -21,6 +21,20 @@ #include #include +#ifdef CONFIG_RTC_AUTO_PWRON +#include +extern int poweroff_charging; + +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM +#include +#include + +/* for alarm mode */ +#define ALARM_MODE_NOMAL (0x6A) +#define ALARM_MODE_BOOT_RTC (0x7B) +#endif +#endif + #ifdef CONFIG_SEC_PM #include #endif @@ -67,8 +81,33 @@ struct qpnp_rtc { struct rtc_device *rtc; struct spmi_device *spmi; spinlock_t alarm_ctrl_lock; + +#if defined(CONFIG_RTC_AUTO_PWRON) + bool lpm_mode; + bool alarm_irq_flag; + struct wake_lock alarm_wake_lock; +#endif }; +#if defined(CONFIG_RTC_AUTO_PWRON) +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM +static struct workqueue_struct* sapa_workq; +static struct delayed_work sapa_load_param; +static struct delayed_work sapa_reboot_work; +static struct wake_lock sapa_wakelock; +static int kparam_loaded, shutdown_loaded; +#endif +static struct rtc_wkalrm sapa_saved_time; +static int sapa_dev_suspend; + +static void print_time(char* str, struct rtc_time *time, unsigned long sec) +{ + pr_info("%s: %4d-%02d-%02d %02d:%02d:%02d [%ld]\n", str, + time->tm_year, time->tm_mon, time->tm_mday, + time->tm_hour, time->tm_min, time->tm_sec, sec); +} +#endif + #ifdef CONFIG_SEC_PM static struct wake_lock resume_wakelock; #endif @@ -197,6 +236,12 @@ qpnp_rtc_set_time(struct device *dev, struct rtc_time *tm) rtc_dd->alarm_ctrl_reg1 = ctrl_reg; +#ifdef CONFIG_RTC_AUTO_PWRON + pr_info("%s : secs = %lu, h:m:s == %d:%d:%d, d/m/y = %d/%d/%d\n", __func__, + secs, tm->tm_hour, tm->tm_min, tm->tm_sec, + tm->tm_mday, tm->tm_mon, tm->tm_year); +#endif + rtc_rw_fail: if (alarm_enabled) spin_unlock_irqrestore(&rtc_dd->alarm_ctrl_lock, irq_flags); @@ -285,6 +330,29 @@ qpnp_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alarm) return -EINVAL; } +#ifdef CONFIG_RTC_AUTO_PWRON + if ( sapa_saved_time.enabled ) { + unsigned long secs_pwron; + + /* If there are power on alarm before alarm time, ignore alarm */ + rtc_tm_to_time(&sapa_saved_time.time, &secs_pwron); + + print_time("[SAPA] rtc ", &rtc_tm, secs_rtc); + print_time("[SAPA] sapa", &sapa_saved_time.time, secs_pwron); + print_time("[SAPA] alrm", &alarm->time, secs); + + if ( secs_rtc < secs_pwron && secs_pwron < secs ) { + pr_info("[SAPA] override with SAPA\n"); + memcpy(alarm, &sapa_saved_time, sizeof(struct rtc_wkalrm)); + secs = secs_pwron; + } + if ( secs_pwron < secs_rtc ) { + pr_info("[SAPA] clear\n"); + sapa_saved_time.enabled = 0; + } + } +#endif + value[0] = secs & 0xFF; value[1] = (secs >> 8) & 0xFF; value[2] = (secs >> 16) & 0xFF; @@ -364,6 +432,10 @@ qpnp_rtc_alarm_irq_enable(struct device *dev, unsigned int enabled) struct qpnp_rtc *rtc_dd = dev_get_drvdata(dev); u8 ctrl_reg; +#ifdef CONFIG_RTC_AUTO_PWRON + pr_info("[SAPA] irq=%d\n", enabled); +#endif + spin_lock_irqsave(&rtc_dd->alarm_ctrl_lock, irq_flags); ctrl_reg = rtc_dd->alarm_ctrl_reg1; ctrl_reg = enabled ? (ctrl_reg | BIT_RTC_ALARM_ENABLE) : @@ -383,10 +455,287 @@ qpnp_rtc_alarm_irq_enable(struct device *dev, unsigned int enabled) return rc; } +#ifdef CONFIG_RTC_AUTO_PWRON +static void sapa_reboot(struct work_struct *work) +{ + //machine_restart(NULL); + kernel_restart(NULL); + //panic("Test panic"); +} + +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM +static struct device *sapa_rtc_dev; +static int qpnp_rtc0_resetbootalarm(struct device *dev); +static void sapa_load_kparam(struct work_struct *work) +{ + int temp1, temp2, temp3; + unsigned long pwron_time=(unsigned long)0; + + /* there is no initialize of sapa_saved_time */ + //if ( sapa_saved_time.enabled == 0 ) + { + sec_get_param(param_index_boot_alarm_set, &temp1); + sec_get_param(param_index_boot_alarm_value_l, &temp2); + sec_get_param(param_index_boot_alarm_value_h, &temp3); + pwron_time = temp3<<4 | temp2; + + pr_info("[SAPA] %s %x %lu\n", __func__, temp1, pwron_time); + if ( temp1 == ALARM_MODE_BOOT_RTC ) + sapa_saved_time.enabled = 1; + else + sapa_saved_time.enabled = 0; + + kparam_loaded = 1; + + rtc_time_to_tm( pwron_time, &sapa_saved_time.time ); + print_time("[SAPA] saved_time", &sapa_saved_time.time, pwron_time); + } + /* Bug fix : USB cable or IRQ is disabled in LPM chg */ + qpnp_rtc0_resetbootalarm(sapa_rtc_dev); +} +#endif + +static void sapa_store_kparam(struct rtc_wkalrm *alarm) +{ +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + //int temp1, temp2, temp3; + int MSB=0, LSB=0; + int alarm_mode = 0; + unsigned long secs; + + if ( alarm == &sapa_saved_time ) { + pr_err("[SAPA] %s: already was written\n", __func__); + return ; + } + + if ( alarm->enabled ) { + rtc_tm_to_time(&alarm->time, &secs); + LSB = (int)secs; + MSB = (int)(secs>>4); + + alarm_mode = ALARM_MODE_BOOT_RTC; + sec_set_param(param_index_boot_alarm_set, &alarm_mode); + sec_set_param(param_index_boot_alarm_value_l, &LSB); + sec_set_param(param_index_boot_alarm_value_h, &MSB); + pr_info("[SAPA] %s %x/%x/%x\n", __func__, alarm_mode, LSB, MSB); + + #if 0 // for debugging + sec_get_param(param_index_boot_alarm_set,&temp1); + sec_get_param(param_index_boot_alarm_value_l, &temp2); + sec_get_param(param_index_boot_alarm_value_h, &temp3); + pr_info( "sec_set_param [%x] [%x] [%x] -- feedback\n", temp1, temp2, temp3); + #endif + } + else { + alarm_mode = ALARM_MODE_NOMAL; + sec_set_param(param_index_boot_alarm_set, &alarm_mode); + pr_info("[SAPA] %s clear\n", __func__); + } +#endif +} + +static int +sapa_rtc_getalarm(struct device *dev, struct rtc_wkalrm *alarm) +{ + struct rtc_time b; + int ret = 0; + struct qpnp_rtc *rtc_dd = dev_get_drvdata(dev); + unsigned long secs_alrm, secs_rtc, time_delta; + + /* read rtc time */ + if ( qpnp_rtc_read_time(dev, &b) ) { + pr_err("%s [SAPA] : read time failed.\n", __func__); + ret = -EINVAL; + } + memcpy(alarm, &sapa_saved_time, sizeof(struct rtc_wkalrm)); + + if (rtc_dd->alarm_irq_flag) + alarm->enabled = 0x1; + else + alarm->enabled = 0x0; + + pr_info("%s [SAPA] : %d, %d\n",__func__,rtc_dd->lpm_mode, alarm->enabled); + + if(poweroff_charging && sapa_saved_time.enabled) + { + rtc_tm_to_time(&b, &secs_rtc); + rtc_tm_to_time(&alarm->time, &secs_alrm); + + time_delta = secs_alrm - secs_rtc; + if(abs(time_delta) < 60) + { + rtc_dd->alarm_irq_flag = true; + pr_info("%s [SAPA] : it will be reboot \n",__func__); + } + + } + + if ( !ret ) { + pr_info("[SAPA] %s: [ALRM] %d-%d-%d %d:%d:%d \n", __func__, + alarm->time.tm_year, alarm->time.tm_mon, alarm->time.tm_mday, + alarm->time.tm_hour, alarm->time.tm_min, alarm->time.tm_sec); + pr_info("[SAPA] %s: [RTC ] %d-%d-%d %d:%d:%d \n", __func__, + b.tm_year, b.tm_mon, b.tm_mday, + b.tm_hour, b.tm_min, b.tm_sec); + } + + return rtc_dd->lpm_mode; +} + +static int +sapa_rtc_setalarm(struct device *dev, struct rtc_wkalrm *alarm) +{ + int rc; + u8 value[4] = {0,}, ctrl_reg; + unsigned long secs, secs_rtc;//, irq_flags; + struct qpnp_rtc *rtc_dd = dev_get_drvdata(dev); + struct rtc_time rtc_tm; + + if (!alarm->enabled) { + pr_info("[SAPA] Try to clear : %4d-%02d-%02d %02d:%02d:%02d\n", + alarm->time.tm_year, alarm->time.tm_mon, alarm->time.tm_mday, + alarm->time.tm_hour, alarm->time.tm_min, alarm->time.tm_sec); + + if(poweroff_charging && !kparam_loaded && shutdown_loaded){ + pr_info("%s [SAPA] without loading kparam, it will be shutdown. No need to reset the alarm!! \n",__func__); + + ctrl_reg = (rtc_dd->alarm_ctrl_reg1 | BIT_RTC_ALARM_ENABLE); + rc = qpnp_write_wrapper(rtc_dd, &ctrl_reg,rtc_dd->alarm_base + REG_OFFSET_ALARM_CTRL1, 1); + + if (rc) { + dev_err(dev, "Write to ALARM cntrol reg failed\n"); + goto rtc_rw_fail; + } + + return 0; + } + + rc = qpnp_write_wrapper(rtc_dd, value, + rtc_dd->alarm_base + REG_OFFSET_ALARM_RW, + NUM_8_BIT_RTC_REGS); + if (rc < 0) { + pr_err("[SAPA] Write to RTC ALARM registers failed\n"); + goto rtc_rw_fail; + } + + sapa_saved_time.enabled = 0; // disable pwr on alarm to prevent retrying + sapa_store_kparam(alarm); + + ctrl_reg = (alarm->enabled) ? + (rtc_dd->alarm_ctrl_reg1 | BIT_RTC_ALARM_ENABLE) : + (rtc_dd->alarm_ctrl_reg1 & ~BIT_RTC_ALARM_ENABLE); + + rc = qpnp_write_wrapper(rtc_dd, &ctrl_reg,rtc_dd->alarm_base + REG_OFFSET_ALARM_CTRL1, 1); + + if (rc) { + dev_err(dev, "Write to ALARM cntrol reg failed\n"); + goto rtc_rw_fail; + } + + rtc_dd->alarm_ctrl_reg1 = ctrl_reg; + + /* read boot alarm */ + rc = qpnp_rtc_read_alarm(dev, alarm); + if ( rc < 0 ) { + pr_err("[SAPA] read failed.\n"); + return rc; + } + pr_info("[SAPA] -> %4d-%02d-%02d %02d:%02d:%02d\n", + alarm->time.tm_year, alarm->time.tm_mon, alarm->time.tm_mday, + alarm->time.tm_hour, alarm->time.tm_min, alarm->time.tm_sec); + } + else + { + pr_info("[SAPA] <- %4d-%02d-%02d %02d:%02d:%02d\n", + alarm->time.tm_year, alarm->time.tm_mon, alarm->time.tm_mday, + alarm->time.tm_hour, alarm->time.tm_min, alarm->time.tm_sec); + + rtc_tm_to_time(&alarm->time, &secs); + + /* + * Read the current RTC time and verify if the alarm time is in the + * past. If yes, return invalid. + */ + rc = qpnp_rtc_read_time(dev, &rtc_tm); + if (rc < 0) { + pr_err("[SAPA] Unable to read RTC time\n"); + return -EINVAL; + } + + rtc_tm_to_time(&rtc_tm, &secs_rtc); + if (secs < secs_rtc) { + pr_err("[SAPA] Trying to set alarm in the past\n"); + sapa_saved_time.enabled = 0; // disable pwr on alarm to prevent retrying + sapa_store_kparam(alarm); + return -EINVAL; + } + + value[0] = secs & 0xFF; + value[1] = (secs >> 8) & 0xFF; + value[2] = (secs >> 16) & 0xFF; + value[3] = (secs >> 24) & 0xFF; + + //spin_lock_irqsave(&rtc_dd->alarm_ctrl_lock, irq_flags); + + rc = qpnp_write_wrapper(rtc_dd, value, + rtc_dd->alarm_base + REG_OFFSET_ALARM_RW, + NUM_8_BIT_RTC_REGS); + if (rc < 0) { + pr_err("[SAPA] Write to RTC ALARM registers failed\n"); + goto rtc_rw_fail; + } + + ctrl_reg = (alarm->enabled) ? + (rtc_dd->alarm_ctrl_reg1 | BIT_RTC_ALARM_ENABLE) : + (rtc_dd->alarm_ctrl_reg1 & ~BIT_RTC_ALARM_ENABLE); + + rc = qpnp_write_wrapper(rtc_dd, &ctrl_reg,rtc_dd->alarm_base + REG_OFFSET_ALARM_CTRL1, 1); + if (rc) { + dev_err(dev, "Write to ALARM cntrol reg failed\n"); + goto rtc_rw_fail; + } + + rtc_dd->alarm_ctrl_reg1 = ctrl_reg; + + if ( alarm != &sapa_saved_time ) { + memcpy(&sapa_saved_time, alarm, sizeof(struct rtc_wkalrm)); + sapa_store_kparam(alarm); + pr_info("[SAPA] updated\n"); + } + } + + /* read boot alarm */ + rc = qpnp_rtc_read_alarm(dev, alarm); + if ( rc < 0 ) { + pr_err("[SAPA] read failed.\n"); + return rc; + } + pr_info("[SAPA] -> %4d-%02d-%02d %02d:%02d:%02d\n", + alarm->time.tm_year, alarm->time.tm_mon, alarm->time.tm_mday, + alarm->time.tm_hour, alarm->time.tm_min, alarm->time.tm_sec); + if ( alarm != &sapa_saved_time ) + qpnp_rtc_read_time(dev,&(alarm->time)); + +rtc_rw_fail: + //spin_unlock_irqrestore(&rtc_dd->alarm_ctrl_lock, irq_flags); + return rc; +} + +static int qpnp_rtc0_resetbootalarm(struct device *dev) +{ + pr_info("[SAPA] rewrite [%d]\n", sapa_saved_time.enabled); + return sapa_rtc_setalarm(dev, &sapa_saved_time); +} +#endif /*CONFIG_RTC_AUTO_PWRON*/ + static struct rtc_class_ops qpnp_rtc_ops = { .read_time = qpnp_rtc_read_time, .set_alarm = qpnp_rtc_set_alarm, .read_alarm = qpnp_rtc_read_alarm, +#ifdef CONFIG_RTC_AUTO_PWRON + .read_bootalarm = sapa_rtc_getalarm, + .set_bootalarm = sapa_rtc_setalarm, +#endif /*CONFIG_RTC_AUTO_PWRON*/ .alarm_irq_enable = qpnp_rtc_alarm_irq_enable, }; @@ -397,6 +746,13 @@ static irqreturn_t qpnp_alarm_trigger(int irq, void *dev_id) int rc; unsigned long irq_flags; +#ifdef CONFIG_RTC_AUTO_PWRON + int time_delta; + pr_info("##############################\n"); + pr_info("%s [SAPA] ALARM TRIGGER\n",__func__); + pr_info("##############################\n"); +#endif + rtc_update_irq(rtc_dd->rtc, 1, RTC_IRQF | RTC_AF); spin_lock_irqsave(&rtc_dd->alarm_ctrl_lock, irq_flags); @@ -425,6 +781,44 @@ static irqreturn_t qpnp_alarm_trigger(int irq, void *dev_id) dev_err(rtc_dd->rtc_dev, "Write to ALARM control reg failed\n"); +#ifdef CONFIG_RTC_AUTO_PWRON + pr_info("%s [SAPA] : irq(%d), lpm_mode:(%d)\n", __func__, irq, rtc_dd->lpm_mode); + + if ( poweroff_charging && sapa_saved_time.enabled) { + struct rtc_time now; + struct rtc_wkalrm alarm; + unsigned long curr_time, alarm_time, pwron_time; + + /* To wake up rtc device */ + wake_lock_timeout(&sapa_wakelock, HZ/2 ); + + qpnp_rtc_read_time(rtc_dd->rtc_dev, &now); + rtc_tm_to_time(&now, &curr_time); + + qpnp_rtc_read_alarm(rtc_dd->rtc_dev, &alarm); + rtc_tm_to_time(&alarm.time, &alarm_time); + + rtc_tm_to_time(&sapa_saved_time.time, &pwron_time); + + pr_info("%s [SAPA] curr_time: %lu\n",__func__, curr_time); + pr_info("%s [SAPA] pmic_time: %lu\n",__func__, alarm_time); + pr_info("%s [SAPA] pwrontime: %lu [%d]\n",__func__, pwron_time, sapa_saved_time.enabled); + + time_delta = curr_time - pwron_time; + if ( abs(time_delta) <= 60 ) { + wake_lock(&sapa_wakelock); + rtc_dd->alarm_irq_flag = true; + pr_info("%s [SAPA] Restart since RTC \n",__func__); + queue_delayed_work(sapa_workq, &sapa_reboot_work, (1*HZ)); + } + else { + pr_info("%s [SAPA] not power on alarm.\n", __func__); + if (!sapa_dev_suspend) + qpnp_rtc0_resetbootalarm(rtc_dd->rtc_dev); + } + } +#endif + rtc_alarm_handled: return IRQ_HANDLED; } @@ -563,6 +957,15 @@ static int __devinit qpnp_rtc_probe(struct spmi_device *spmi) goto fail_req_irq; } +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + sapa_rtc_dev = rtc_dd->rtc_dev; + sapa_workq = create_singlethread_workqueue("pwron_alarm_resume"); + if (sapa_workq == NULL) { + pr_err("[SAPA] pwron_alarm work creating failed (%d)\n", rc); + } + wake_lock_init(&sapa_wakelock, WAKE_LOCK_SUSPEND, "alarm_trigger"); +#endif + #ifdef CONFIG_SEC_PM wake_lock_init(&resume_wakelock, WAKE_LOCK_SUSPEND, "resume_wakelock"); #endif @@ -571,6 +974,16 @@ static int __devinit qpnp_rtc_probe(struct spmi_device *spmi) dev_dbg(&spmi->dev, "Probe success !!\n"); +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + rtc_dd->lpm_mode = poweroff_charging; + rtc_dd->alarm_irq_flag = false; + /* To read saved power on alarm time */ + if ( poweroff_charging ) { + INIT_DELAYED_WORK(&sapa_load_param, sapa_load_kparam); + INIT_DELAYED_WORK(&sapa_reboot_work, sapa_reboot); + queue_delayed_work(sapa_workq, &sapa_load_param, (15*HZ)); + } +#endif return 0; fail_req_irq: @@ -581,12 +994,50 @@ static int __devinit qpnp_rtc_probe(struct spmi_device *spmi) return rc; } +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM +static int qpnp_rtc_auto_pwron_resume(struct device *dev) +{ + struct qpnp_rtc *rtc_dd = dev_get_drvdata(dev); + + if(rtc_dd->lpm_mode==1) { + pr_info("%s lpm mode, do not disable irq\n",__func__); + } else { + if (device_may_wakeup(dev)) + disable_irq_wake(rtc_dd->rtc_alarm_irq); + } + sapa_dev_suspend = 0; + qpnp_rtc0_resetbootalarm(dev); + + pr_info("%s\n",__func__); + return 0; +} + +static int qpnp_rtc_auto_pwron_suspend(struct device *dev) +{ + struct qpnp_rtc *rtc_dd = dev_get_drvdata(dev); + + if(rtc_dd->lpm_mode==1) { + pr_info("%s lpm mode, no need to enable irq\n",__func__); + } else { + if (device_may_wakeup(dev)) + enable_irq_wake(rtc_dd->rtc_alarm_irq); + } + sapa_dev_suspend = 1; + pr_info("%s\n",__func__); + return 0; +} +#endif + #ifdef CONFIG_SEC_PM static int qpnp_rtc_resume(struct device *dev) { pr_info("%s\n",__func__); wake_lock_timeout(&resume_wakelock, HZ/10); +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + qpnp_rtc_auto_pwron_resume(dev); +#endif + return 0; } @@ -594,6 +1045,10 @@ static int qpnp_rtc_suspend(struct device *dev) { pr_info("%s\n",__func__); +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + qpnp_rtc_auto_pwron_suspend(dev); +#endif + return 0; } @@ -607,6 +1062,10 @@ static int __devexit qpnp_rtc_remove(struct spmi_device *spmi) { struct qpnp_rtc *rtc_dd = dev_get_drvdata(&spmi->dev); +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + destroy_workqueue(sapa_workq); +#endif + device_init_wakeup(&spmi->dev, 0); free_irq(rtc_dd->rtc_alarm_irq, rtc_dd); rtc_device_unregister(rtc_dd->rtc); @@ -615,6 +1074,42 @@ static int __devexit qpnp_rtc_remove(struct spmi_device *spmi) return 0; } +#ifdef CONFIG_RTC_AUTO_PWRON +static void qpnp_rtc_shutdown(struct spmi_device *spmi) +{ + u8 value[4] = {0}; + unsigned long secs; + u8 ctrl_reg; + int rc; + struct qpnp_rtc *rtc_dd = dev_get_drvdata(&spmi->dev); + + shutdown_loaded = 1; + qpnp_rtc0_resetbootalarm(&spmi->dev); + + /* Check if the RTC is on, else turn it on */ + rc = qpnp_read_wrapper(rtc_dd, &ctrl_reg, + rtc_dd->rtc_base + REG_OFFSET_RTC_CTRL, 1); + if (rc < 0) { + dev_err(&spmi->dev, "%s qpnp read failed!\n",__func__); + } + + rc = qpnp_read_wrapper(rtc_dd, value, + rtc_dd->alarm_base + REG_OFFSET_ALARM_RW, + NUM_8_BIT_RTC_REGS); + + secs = value[0] | (value[1] << 8) | (value[2] << 16) \ + | (value[3] << 24); + pr_info("%s : secs = %lu\n", __func__,secs); + pr_info("%s RTC Register : %d \n", __func__, ctrl_reg); + +#ifdef CONFIG_RTC_AUTO_PWRON_PARAM + wake_lock_destroy(&sapa_wakelock); +#endif +#ifdef CONFIG_SEC_PM + wake_lock_destroy(&resume_wakelock); +#endif +} +#else static void qpnp_rtc_shutdown(struct spmi_device *spmi) { u8 value[4] = {0}; @@ -653,6 +1148,7 @@ static void qpnp_rtc_shutdown(struct spmi_device *spmi) wake_lock_destroy(&resume_wakelock); #endif } +#endif /* CONFIG_RTC_AUTO_PWRON */ static struct of_device_id spmi_match_table[] = { { diff --git a/drivers/rtc/rtc-sysfs.c b/drivers/rtc/rtc-sysfs.c index 380083ca572f..3353b5bebbc5 100644 --- a/drivers/rtc/rtc-sysfs.c +++ b/drivers/rtc/rtc-sysfs.c @@ -116,6 +116,26 @@ rtc_sysfs_show_hctosys(struct device *dev, struct device_attribute *attr, return sprintf(buf, "0\n"); } +#ifdef CONFIG_RTC_AUTO_PWRON +extern int rtc_get_bootalarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm); +static ssize_t +rtc_sysfs_show_alarm_boot(struct device *dev, struct device_attribute *attr, + char *buf) +{ + ssize_t retval; + struct rtc_wkalrm alm; + + retval = rtc_get_bootalarm(to_rtc_device(dev), &alm); + if (retval) { + retval = sprintf(buf, "%d", alm.enabled); + pr_info("%s [SAPA] rtc_sysfs_show_wakealarm enabled? : %d\n",__func__,alm.enabled); + return retval; + } + + return retval; +} +#endif + static struct device_attribute rtc_attrs[] = { __ATTR(name, S_IRUGO, rtc_sysfs_show_name, NULL), __ATTR(date, S_IRUGO, rtc_sysfs_show_date, NULL), @@ -124,6 +144,9 @@ static struct device_attribute rtc_attrs[] = { __ATTR(max_user_freq, S_IRUGO | S_IWUSR, rtc_sysfs_show_max_user_freq, rtc_sysfs_set_max_user_freq), __ATTR(hctosys, S_IRUGO, rtc_sysfs_show_hctosys, NULL), +#ifdef CONFIG_RTC_AUTO_PWRON + __ATTR(alarm_boot, S_IRUGO, rtc_sysfs_show_alarm_boot, NULL), +#endif { }, }; diff --git a/drivers/secfilter/Kconfig b/drivers/secfilter/Kconfig new file mode 100644 index 000000000000..c3e7d1f6240a --- /dev/null +++ b/drivers/secfilter/Kconfig @@ -0,0 +1,3 @@ +config SEC_NET_FILTER + tristate "Samsung Nefilter Driver Module" + default n diff --git a/drivers/secfilter/Makefile b/drivers/secfilter/Makefile new file mode 100644 index 000000000000..c479bd72d687 --- /dev/null +++ b/drivers/secfilter/Makefile @@ -0,0 +1,4 @@ +obj-$(CONFIG_SEC_NET_FILTER) := secfilter.o +secfilter-y := sec_filter.o \ + tcp_track.o \ + url_parser.o diff --git a/drivers/secfilter/sec_filter.c b/drivers/secfilter/sec_filter.c new file mode 100644 index 000000000000..84103d3245eb --- /dev/null +++ b/drivers/secfilter/sec_filter.c @@ -0,0 +1,519 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + + +#include "sec_filter.h" +#include "tcp_track.h" +#include "url_parser.h" + +#define ALLOWED_ID 5001 + +static dev_t url_ver; +static struct cdev url_cdev; +static struct class *url_class = NULL; + +static DECLARE_WAIT_QUEUE_HEAD(user_noti_Q); +static tcp_Info_Manager *getting_TrackInfo = NULL; +static tcp_Info_Manager *notifying_TrackInfo = NULL; +static tcp_Info_Manager *notified_TrackInfo = NULL; +static tcp_Info_Manager *rejected_TrackInfo = NULL; +static char *exceptionURL = NULL; +static atomic_t totalReference = ATOMIC_INIT(0); +static unsigned long resetTime = 0; +static int closingTime = 60; +char *errorMsg = NULL; +int errMsgSize = 0; +int filterMode = FILTER_MODE_OFF; + +#ifdef CONFIG_SEC_NET_FILTER +int nfqnl_enqueue_packet(struct nf_queue_entry *entry, unsigned int queuenum); +#endif + +// sec_filter driver open function +int sec_url_filter_open(struct inode *inode, struct file *filp) +{ + atomic_inc(&totalReference); + return 0; +} + +// sec_filter driver release function +int sec_url_filter_release( struct inode *inode, struct file *filp) +{ + if (atomic_dec_and_test(&totalReference)) + { + if (filterMode != FILTER_MODE_OFF) + { + resetTime = get_jiffies_64()+closingTime*HZ; + filterMode = FILTER_MODE_CLOSING; + } + wake_up_interruptible(&user_noti_Q); + clean_tcp_TrackInfos(getting_TrackInfo); + clean_tcp_TrackInfos(rejected_TrackInfo); + clean_tcp_TrackInfos(notifying_TrackInfo); + clean_tcp_TrackInfos(notified_TrackInfo); + SEC_FREE(exceptionURL); + SEC_FREE(errorMsg); + errMsgSize = 0; + printk(KERN_ALERT "SEC_URL_FILTER : FILE HANDLE IS 0\r\n"); + } + return 0; +} + +// sec_filter driver write function +ssize_t sec_url_filter_write( struct file *filp, const char *buf, size_t count, loff_t *f_pos) +{ + int result = -EIO; + if ((buf != NULL) && (count >4)) + { + short version = *(short *)buf; + int cmd = *(int *)(buf+sizeof(short)); + char *data = (char *)(buf+sizeof(short)+sizeof(int)); + { + if (version == 0) + { + switch(cmd) + { + case SET_FILTER_MODE: // Turn On and Off filtering. + { + filterMode = *(int *)data; + result = count; + if (filterMode == FILTER_MODE_OFF) + { + wake_up_interruptible(&user_noti_Q); + clean_tcp_TrackInfos(getting_TrackInfo); + clean_tcp_TrackInfos(rejected_TrackInfo); + clean_tcp_TrackInfos(notifying_TrackInfo); + clean_tcp_TrackInfos(notified_TrackInfo); + SEC_FREE(exceptionURL); + SEC_FREE(errorMsg); + errMsgSize = 0; + } + printk(KERN_INFO "SEC_URL_Filter : Mode is %d\n", filterMode); + } + break; + case SET_USER_SELECT: //version 2, id 4, choice 2 + { + tcp_TrackInfo *selectInfo = NULL; + int id = *((int *)(data)); + int choice = *((int *)(data+sizeof(unsigned int))); + unsigned int verdict = NF_DROP; + struct nf_queue_entry *entry= NULL; + selectInfo = find_tcp_TrackInfo_withID(notified_TrackInfo, id); + if (selectInfo != NULL) + { + result = count; + entry = (struct nf_queue_entry *)selectInfo->q_entry; + selectInfo->q_entry = NULL; + selectInfo->status = choice; + if (choice == ALLOW || ((filterMode%10) == FILTER_MODE_ON_RESPONSE)) + { + verdict = NF_ACCEPT; //Response case should send packet + } + if (choice == BLOCK) + { + add_tcp_TrackInfo(rejected_TrackInfo, selectInfo); // Add this node to Rejected List. + } + else + { + free_tcp_TrackInfo(selectInfo); + } + nf_reinject(entry, verdict); // Reinject packet with the verdict + } + else + { + printk("SEC_URL_FILTER : NO SUCH ID\n"); + } + } + break; + case SET_EXCEPTION_URL: + { + int urlLen = *((int *)(data)); + SEC_FREE(exceptionURL); + exceptionURL = SEC_MALLOC(urlLen+1); + if (exceptionURL != NULL) + { + memcpy(exceptionURL, (data+sizeof(int)), urlLen); + result = count; + } + } + break; + case SET_ERROR_MSG: + { + int msgLen = *((int *)(data)); + SEC_FREE(errorMsg); + errMsgSize = 0; + errorMsg = SEC_MALLOC(msgLen+1); + if (errorMsg != NULL) + { + memcpy(errorMsg, (data+sizeof(int)), msgLen); + errMsgSize = msgLen; + result = count; + } + } + break; + case SET_CLOSING_TIME: + { + int timedata = *((int *)(data)); + if ((timedata > 0) && (timedata <60)) + { + closingTime = *(int *)data; + printk("SEC_URL_FILTER : TIMER IS %d\n", closingTime); + } + result = count; + } + break; + } + } + } + } + return result; +} + +// sec filter read function +ssize_t sec_url_filter_read( struct file *filp, char *buf, size_t count, loff_t *f_pos) +{ + int result = -EIO; + tcp_TrackInfo *notifyInfo = NULL; + int leftLen = 0; + int writeCount = count; + int notifyFlag = 0; + int loopCount = 0; + if (buf != NULL) + { + while ((filterMode)&&(loopCount < 3)) + { + unsigned long flags = 0; + SEC_spin_lock_irqsave(¬ifying_TrackInfo->tcp_info_lock, flags); + notifyInfo = notifying_TrackInfo->head; + SEC_spin_unlock_irqrestore(¬ifying_TrackInfo->tcp_info_lock, flags); + if (notifyInfo != NULL) + { + result = access_ok( VERIFY_WRITE, (void *)buf, count); // This buffer should be verified because it is already blocked buffer. + if (result != 0) + { + leftLen = notifyInfo->urlLen - notifyInfo->notify_Index; // Get left size + if ( leftLen <= count) // If buffer is enough, it would be last block + { + writeCount = leftLen; + notifyFlag = 1; + } + result = copy_to_user(buf, &(notifyInfo->url[notifyInfo->notify_Index]), writeCount); // Check the result because it is blocked function + if (result == 0) + { + result = writeCount; + notifyInfo->notify_Index += writeCount; + if (notifyFlag == 1) + { + notifyInfo->status = NOTIFIED; + notifyInfo = getFirst_tcp_TrackInfo(notifying_TrackInfo); + add_tcp_TrackInfo(notified_TrackInfo, notifyInfo); + } + } + } + break; // Return result + } + else + { + interruptible_sleep_on(&user_noti_Q); + loopCount++; + } + } + } + return (ssize_t)result; +} + +unsigned int sec_url_filter_hook( unsigned int hook_no, + struct sk_buff *skb, + const struct net_device *dev_in, + const struct net_device *dev_out, + int (*handler)(struct sk_buff *)) +{ + unsigned int verdict = NF_ACCEPT; + if (filterMode) + { + if (skb != NULL) + { + struct iphdr *iph = (struct iphdr*) ip_hdr(skb); + if (iph != NULL) + { + if (iph->protocol == 6) // TCP case + { + int delFlag = 0; + struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + tcp_TrackInfo *rejected = NULL; + + if (filterMode == FILTER_MODE_CLOSING) + { + if (time_before((unsigned long)get_jiffies_64(), resetTime)) + { + verdict = NF_DROP; + } + else + { + filterMode = FILTER_MODE_OFF; + } + return verdict; + } + + if (tcph!= NULL) + { + delFlag = (tcph->fin || tcph->rst); + } + verdict = NF_QUEUE_NR(5001); + rejected = find_tcp_TrackInfo(rejected_TrackInfo, skb, delFlag); // If this is FIN packet, remove TCP Info. + if (rejected != NULL) // This is Rejected + { + verdict = NF_DROP; + } + if (delFlag == 1) + { + tcp_TrackInfo *gettingNode = NULL; + verdict = NF_ACCEPT; // FIN, RST can go out. + free_tcp_TrackInfo(rejected); + gettingNode = find_tcp_TrackInfo(getting_TrackInfo, skb, 1); // Find previous TCP Track Info and remove from list + free_tcp_TrackInfo(gettingNode); + } + } + } + } + } + return verdict; +} + +int sec_url_filter_slow(struct nf_queue_entry *entry, unsigned int queuenum) +{ +#ifdef CONFIG_SEC_NET_FILTER + if (queuenum == ALLOWED_ID) + { +#endif + if (entry != NULL) + { + if (filterMode) + { + struct sk_buff *skb = entry->skb; + char *request = NULL; + tcp_TrackInfo *gettingNode = NULL; + tcp_TrackInfo *notifyNode = NULL; + + if (skb != NULL) + { + struct iphdr *iph = (struct iphdr*)ip_hdr(skb); + if (iph != NULL) + { + if (iph->protocol == 6) + { + struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + if (tcph!= NULL) + { + notifyNode = find_tcp_TrackInfo(notifying_TrackInfo, skb, 0); + if (notifyNode != NULL) // If this is already notified to user, drop it. + { + unsigned int verdict = NF_DROP; + nf_reinject(entry, verdict); + return 0; + } + gettingNode = find_tcp_TrackInfo(getting_TrackInfo, skb, 1); // Find previous TCP Track Info and remove from list + if (gettingNode == NULL) // No previous Info + { + gettingNode = isURL(skb); // If this is URL Request then make TCP Track Info + } + if (gettingNode != NULL) + { + request = getPacketData(skb, gettingNode); // Get Packet + if (request != NULL) // If there is packet data + { + getURL(request, gettingNode); // Get URL and update status + kfree(request); + request = NULL; + if (gettingNode->status == GOT_FULL_URL) // If get Full URL, then make notify info + { + makeNotifyInfo(gettingNode); + if ((exceptionURL != NULL) && (gettingNode->url !=NULL)) + { + if (strstr(&gettingNode->url[sizeof(URL_Info)], exceptionURL) != NULL) // This is exception URL + { + free_tcp_TrackInfo(gettingNode); + nf_reinject(entry, NF_ACCEPT); + return 0; + } + } + gettingNode->q_entry = entry; + add_tcp_TrackInfo(notifying_TrackInfo, gettingNode); + wake_up_interruptible(&user_noti_Q); // Wake Up read function + return 0; + } + } + add_tcp_TrackInfo_ToHead(getting_TrackInfo, gettingNode); + } + } + } + } + } + } + nf_reinject(entry, NF_ACCEPT); + } +#ifdef CONFIG_SEC_NET_FILTER + } + else + { + return nfqnl_enqueue_packet(entry, queuenum); + } +#endif + return 0; +} + + +unsigned int sec_url_filter_recv_hook( unsigned int hook_no, + struct sk_buff *skb, + const struct net_device *dev_in, + const struct net_device *dev_out, + int (*handler)(struct sk_buff *)) +{ + unsigned int verdict = NF_ACCEPT; + if ((filterMode == FILTER_MODE_ON_RESPONSE) ||((filterMode == FILTER_MODE_ON_RESPONSE_REFER))) + { + if (skb != NULL) + { + struct iphdr *iph = (struct iphdr*) ip_hdr(skb); + if (iph != NULL) + { + if (iph->protocol == 6) // TCP case + { + tcp_TrackInfo *rejected = NULL; + rejected = find_tcp_TrackInfo_Reverse(rejected_TrackInfo, skb); // If this is FIN packet, remove TCP Info. + if (rejected != NULL) // This is Rejected + { + change_tcp_Data(skb); + } + } + } + } + } + return verdict; +} + +static struct nf_queue_handler sec_url_queue_handler = { + .name = SEC_MODULE_NAME, + .outfn = sec_url_filter_slow +}; + +static struct nf_hook_ops sec_url_filter = { + .hook = sec_url_filter_hook, + .pf = PF_INET, + .hooknum = NF_INET_LOCAL_OUT, + .priority = NF_IP_PRI_FIRST +}; + + +static struct nf_hook_ops sec_url_recv_filter = { + .hook = sec_url_filter_recv_hook, + .pf = PF_INET, + .hooknum = NF_INET_LOCAL_IN, + .priority = NF_IP_PRI_FIRST +}; + +static struct file_operations sec_url_filter_fops = { + .owner = THIS_MODULE, + .read = sec_url_filter_read, + .write = sec_url_filter_write, + .open = sec_url_filter_open, + .release = sec_url_filter_release +}; + +void deInit_Managers(void) +{ + SEC_FREE(getting_TrackInfo); + SEC_FREE(notifying_TrackInfo); + SEC_FREE(notified_TrackInfo); + SEC_FREE(rejected_TrackInfo); + SEC_FREE(exceptionURL); +} + +int init_Managers(void) +{ + do + { + if ((getting_TrackInfo = create_tcp_Info_Manager()) == NULL) break; + if ((notifying_TrackInfo = create_tcp_Info_Manager()) == NULL) break; + if ((notified_TrackInfo = create_tcp_Info_Manager()) == NULL) break; + if ((rejected_TrackInfo = create_tcp_Info_Manager()) == NULL) break; + return 0; + }while(0); + return -1; +} + +int nfilter_init (void) +{ + int alloc_result = -1; + int add_result = -1; + int add_send_hook = -1; + struct device *device_result = NULL; + + cdev_init(&url_cdev, &sec_url_filter_fops ); + do + { + if (init_Managers() < 0) break; + if ((alloc_result = alloc_chrdev_region(&url_ver, 0, 1, "url")) < 0 ) break; + if ((url_class = class_create(THIS_MODULE, "secfilter")) == NULL) break; + if ((device_result = device_create( url_class, NULL, url_ver, NULL, "url" )) == NULL) break; + if ((add_result = cdev_add(&url_cdev, url_ver, 1)) <0) break; + if ((add_send_hook =nf_register_hook( &sec_url_filter)) <0) break; + if (nf_register_hook( &sec_url_recv_filter) <0) break; +#ifdef _NF_CHECK_REGISTER_NULL + if (nf_register_queue_handler_is_null()) + { + pr_info("%s:%s SEC_URL_FILTER : queue handler is null!\n", __FILE__, __func__); +#endif + nf_register_queue_handler(PF_INET, &sec_url_queue_handler); +#ifdef _NF_CHECK_REGISTER_NULL + } +#endif + return 0; + }while(0); + deInit_Managers(); + if (add_result == 0) cdev_del( &url_cdev ); + if (device_result != NULL) device_destroy(url_class, url_ver); + if (url_class != NULL) class_destroy(url_class); + if (alloc_result == 0) unregister_chrdev_region(url_ver, 1); + if (add_send_hook == 0) nf_unregister_hook(&sec_url_filter); + printk(KERN_ALERT "SEC_URL_FILTER : FAIL TO INIT\n"); + return -1; +} + +void nfilter_exit(void) +{ + filterMode = FILTER_MODE_OFF; + cdev_del( &url_cdev ); + device_destroy( url_class, url_ver ); + class_destroy(url_class); + unregister_chrdev_region( url_ver, 1 ); + nf_unregister_hook(&sec_url_filter); + nf_unregister_hook(&sec_url_recv_filter); + nf_unregister_queue_handlers(&sec_url_queue_handler); + clean_tcp_TrackInfos(getting_TrackInfo); + clean_tcp_TrackInfos(notifying_TrackInfo); + clean_tcp_TrackInfos(notified_TrackInfo); + clean_tcp_TrackInfos(rejected_TrackInfo); + deInit_Managers(); + printk(KERN_ALERT "SEC_URL_FILTER : DEINITED\n"); +} +#ifdef CONFIG_SEC_NET_FILTER +EXPORT_SYMBOL(sec_url_filter_slow); +#endif +late_initcall(nfilter_init); +module_exit(nfilter_exit); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("SAMSUNG Electronics"); +MODULE_DESCRIPTION("SEC FILTER DEVICE"); diff --git a/drivers/secfilter/sec_filter.h b/drivers/secfilter/sec_filter.h new file mode 100644 index 000000000000..abe17762b378 --- /dev/null +++ b/drivers/secfilter/sec_filter.h @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef SEC_FILTER_H_ +#define SEC_FILTER_H_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PREPACKET_BUFFER_SIZE 11 + +// NOTIFICATION INFO.S START +#define FILTER_VERSION 0 +#define URL_TYPE 0 +#define URL_REFER_TYPE 1 +#define DNS_TYPE 2 +// NOTIFICATION INFO.S END + +// USER COMMANDS START +#define SET_FILTER_MODE 0 +#define SET_USER_SELECT 1 +#define SET_EXCEPTION_URL 2 +#define SET_ERROR_MSG 3 +#define SET_CLOSING_TIME 4 +#define MAX_CMDS 5 +// USER COMMANDS END + +#define FILTER_MODE_OFF 0 +#define FILTER_MODE_CLOSING 100 +#define FILTER_MODE_ON_BLOCK 1 +#define FILTER_MODE_ON_RESPONSE 2 +#define FILTER_MODE_ON_BLOCK_REFER 11 +#define FILTER_MODE_ON_RESPONSE_REFER 12 + +#define SEC_MODULE_NAME "Samsung_URL_Filter" +// MACRO FUNCTION START +#define SEC_FREE(x) if((x)!=NULL){kfree(x);(x)=NULL;} +#define USE_ATOMIC +#ifdef USE_ATOMIC +#define SEC_MALLOC(x) kzalloc((x),(in_atomic()==0)?GFP_KERNEL:GFP_ATOMIC) +#define SEC_spin_lock_irqsave(x, y) spin_lock_irqsave((x), (y)) +#define SEC_spin_unlock_irqrestore(x, y) spin_unlock_irqrestore((x), (y)) +#else +#define SEC_MALLOC(x) kzalloc((x),GFP_ATOMIC) +#define SEC_spin_lock_irqsave(x, y) spin_lock_irqsave((x), (y)) +#define SEC_spin_unlock_irqrestore(x, y) spin_unlock_irqrestore((x), (y)) +#endif +// MACRO FUNCTION END + +extern int filterMode; +#endif /* SEC_FILTER_H_ */ diff --git a/drivers/secfilter/tcp_track.c b/drivers/secfilter/tcp_track.c new file mode 100644 index 000000000000..b7678367edd8 --- /dev/null +++ b/drivers/secfilter/tcp_track.c @@ -0,0 +1,349 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "sec_filter.h" +#include "tcp_track.h" + +static int notifyID = 1; +extern char *errorMsg; +extern int errMsgSize; +tcp_TrackInfo * make_tcp_TrackInfo ( struct sk_buff *skb) +{ + tcp_TrackInfo *result = NULL; + struct iphdr *iph = (struct iphdr*) ip_hdr(skb); + struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + + result = SEC_MALLOC(sizeof(tcp_TrackInfo)); + if (result != NULL) + { struct sock *pSk = skb->sk; + result->destIP = iph->daddr; + result->srcIP = iph->saddr; + result->destPort = tcph->dest; + result->srcPort = tcph->source; + result->status = NOTSET; + result->id = notifyID++; + result->uid = 0; + + if (pSk != NULL) + { + struct socket *pSk_socket = pSk->sk_socket; + if (pSk_socket != NULL) + { + struct file *pFile = pSk_socket->file; + if (pFile != NULL) + { + const struct cred *pCred = pFile->f_cred; + if (pCred != NULL) + { + result->uid = (unsigned int)pCred->fsuid; + } + } + } + } + result->buffered = 0; + } + return result; +} + +#define SHORT_MSG_SIZE 131 +#define SHORT_MSG "HTTP/1.1 404 Not Found\r\nContent-Type: text/html\r\nContent-Length: 60\r\n\r\nThis Site is Blocked!" + +void change_tcp_Data(struct sk_buff *skb) +{ + struct iphdr *iph = (struct iphdr*)ip_hdr(skb); + struct tcphdr *tcph = (struct tcphdr *)((char *)iph+(iph->ihl*4)); + char *response = SHORT_MSG; + int copySize = SHORT_MSG_SIZE; + + if (skb->data_len == 0) + { + int dataSize = skb->len - (iph->ihl*4) - (tcph->doff*4); + unsigned char *tcpData = ((unsigned char *)tcph + tcph->doff*4); + + if (dataSize > 0) + { + memset((void *)tcpData , ' ', dataSize); + if (errorMsg != NULL) + { + if (dataSize > errMsgSize) + { + response = errorMsg; + copySize = errMsgSize; + } + } + + if (copySize > dataSize) + { + copySize = dataSize; + } + memcpy(tcpData, response, copySize); + } + } + else + { + int i = 0; + struct skb_shared_info *shinfo = skb_shinfo(skb); + for (i = 0 ; i < shinfo->nr_frags ; i++) + { + int written = 0; + void *frag_addr = page_address(shinfo->frags[i].page.p) + shinfo->frags[i].page_offset; + if (frag_addr != NULL) + { + int dataSize = shinfo->frags[i].size; + if (dataSize >= (copySize-written)) + { + memset((void *)frag_addr, ' ', dataSize); + dataSize = (copySize-written); + } + memcpy((void *)frag_addr, &response[written], dataSize); + written += dataSize; + if (written >=copySize) + { + break; + } + } + } + } +} + +void free_tcp_TrackInfo(tcp_TrackInfo *node) +{ + if (node != NULL) + { + SEC_FREE(node->host) + SEC_FREE(node->referer); + SEC_FREE(node->url); + kfree(node); + } +} + +tcp_Info_Manager * create_tcp_Info_Manager(void) +{ + tcp_Info_Manager *result = NULL; + + result = (tcp_Info_Manager *)SEC_MALLOC(sizeof(tcp_Info_Manager)); + if (result != NULL) + { + result->tcp_info_lock = __SPIN_LOCK_UNLOCKED(getting_TrackInfo.tcp_info_lock); + } + return result; +} + +void clean_tcp_TrackInfos(tcp_Info_Manager *manager) +{ + unsigned long flags = 0; + tcp_TrackInfo *node = NULL; + + if (manager != NULL) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + while (manager->head != NULL) + { + node = manager->head; + manager->head = manager->head->next; + if (node->q_entry != NULL) + { + nf_reinject((struct nf_queue_entry *)node->q_entry, NF_DROP); + node->q_entry = NULL; + } + free_tcp_TrackInfo(node); + } + manager->tail = NULL; + manager->count = 0; + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } +} + +tcp_TrackInfo * add_tcp_TrackInfo_ToHead(tcp_Info_Manager *manager, tcp_TrackInfo *node) +{ + unsigned long flags = 0; + if ((manager != NULL) &&(node != NULL)) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + node->next = manager->head; + manager->head = node; + manager->count++; + if (manager->tail == NULL) + { + manager->tail = node; + } + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } + return node; +} + +tcp_TrackInfo * getFirst_tcp_TrackInfo(tcp_Info_Manager *manager) +{ + unsigned long flags = 0; + tcp_TrackInfo *result = NULL; + if (manager != NULL) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + if (manager->head != NULL) + { + result = manager->head; + manager->head = manager->head->next; + manager->count--; + if (manager->head == NULL) + { + manager->tail= NULL; + } + result->next = NULL; + } + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } + return result; +} + +int add_tcp_TrackInfo( tcp_Info_Manager *manager, tcp_TrackInfo *node) +{ + unsigned long flags = 0; + int result = 0; + if ((manager != NULL) && (node != NULL)) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + if (manager->tail != NULL) + { + manager->tail->next = node; + } + else + { + manager->head = node; + } + manager->tail = node; + manager->count++; + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + result = 1; + } + return result; +} + +tcp_TrackInfo * find_tcp_TrackInfo(tcp_Info_Manager *manager, struct sk_buff *skb, int option) +{ + struct iphdr *iph = (struct iphdr*) ip_hdr(skb); + struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + unsigned long flags = 0; + tcp_TrackInfo *curNode = NULL; + tcp_TrackInfo *preNode = NULL; + + if (manager != NULL) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + curNode = manager->head; + while (curNode != NULL) + { + if ((curNode->srcIP == iph->saddr) && + (curNode->destIP == iph->daddr) && + (curNode->srcPort == tcph->source) && + (curNode->destPort == tcph->dest)) + { + break; + } + preNode = curNode; + curNode = curNode->next; + } + + if ((option == 1) && (curNode != NULL)) + { + if (preNode != NULL) // Cur Node is Head + { + preNode->next = curNode->next; + } + if (manager->head == curNode) + { + manager->head = curNode->next; + } + if (manager->tail == curNode) + { + manager->tail = preNode; + } + curNode->next = NULL; + manager->count--; + } + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } + return curNode; +} + +tcp_TrackInfo * find_tcp_TrackInfo_withID(tcp_Info_Manager *manager, int id) +{ + tcp_TrackInfo *curNode = NULL; + tcp_TrackInfo *preNode = NULL; + unsigned long flags = 0; + + if (manager != NULL) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + curNode = manager->head; + while (curNode != NULL) + { + if (curNode->id == id) + { + break; + } + preNode = curNode; + curNode = curNode->next; + } + if (curNode != NULL) + { + if (preNode != NULL) // Cur Node is Head + { + preNode->next = curNode->next; + } + if (manager->head == curNode) + { + manager->head = curNode->next; + } + if (manager->tail == curNode) + { + manager->tail = preNode; + } + curNode->next = NULL; + manager->count--; + } + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } + return curNode; +} + +tcp_TrackInfo * find_tcp_TrackInfo_Reverse(tcp_Info_Manager *manager, struct sk_buff *skb) +{ + struct iphdr *iph = (struct iphdr*) ip_hdr(skb); + struct tcphdr *tcph = (struct tcphdr *)((char *)iph+(iph->ihl*4)); + //struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + unsigned long flags = 0; + tcp_TrackInfo *curNode = NULL; + tcp_TrackInfo *result = NULL; + + if (manager != NULL) + { + SEC_spin_lock_irqsave(&manager->tcp_info_lock, flags); + curNode = manager->head; + while (curNode != NULL) + { + if ((curNode->srcIP == iph->daddr) && + (curNode->destIP == iph->saddr) && + (curNode->srcPort == tcph->dest) && + (curNode->destPort == tcph->source) ) + { + result = curNode; + break; + } + curNode = curNode->next; + } + SEC_spin_unlock_irqrestore(&manager->tcp_info_lock, flags); + } + return result; +} diff --git a/drivers/secfilter/tcp_track.h b/drivers/secfilter/tcp_track.h new file mode 100644 index 000000000000..cf9509624f66 --- /dev/null +++ b/drivers/secfilter/tcp_track.h @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __TCP_TRACKINFO__ +#define __TCP_TRACKINFO__ +#include "sec_filter.h" + +#include +#include +#include +#include + +#define NOTSET 0 +#define GETTING_URL 1 +#define GOT_URL 2 +#define GETTING_HOST 3 +#define GETTING_REFERER 4 +#define GOT_FULL_URL 5 +#define NOTIFIED 6 + + + +#define BLOCK 100 +#define ALLOW 101 + + +typedef struct __TCP_TRACKINFO +{ + struct __TCP_TRACKINFO *next; + int id; + unsigned int uid; + unsigned int srcIP; + unsigned int destIP; + unsigned short srcPort; + unsigned short destPort; + int status; + int urlLen; + int notify_Index; + char *url; + char *referer; + char *host; + void *q_entry; + int buffered; + char buffer[PREPACKET_BUFFER_SIZE]; +}__attribute((packed)) tcp_TrackInfo; + +typedef struct __TCP_TRACKINFO_MANAGER +{ + spinlock_t tcp_info_lock; + tcp_TrackInfo *head; + tcp_TrackInfo *tail; + int count; +}__attribute((packed)) tcp_Info_Manager; + +void clean_tcp_TrackInfos(tcp_Info_Manager *manager); +int add_tcp_TrackInfo( tcp_Info_Manager *manager, tcp_TrackInfo *node); +tcp_TrackInfo * add_tcp_TrackInfo_ToHead(tcp_Info_Manager *manager, tcp_TrackInfo *node); +tcp_TrackInfo * find_tcp_TrackInfo(tcp_Info_Manager *manager, struct sk_buff *skb, int option); +tcp_TrackInfo * find_tcp_TrackInfo_withID(tcp_Info_Manager *manager, int id); +void free_tcp_TrackInfo(tcp_TrackInfo *node); +tcp_TrackInfo * getFirst_tcp_TrackInfo(tcp_Info_Manager *manager); +tcp_TrackInfo * make_tcp_TrackInfo ( struct sk_buff *skb); +tcp_Info_Manager * create_tcp_Info_Manager(void); +void change_tcp_Data(struct sk_buff *skb); +tcp_TrackInfo * find_tcp_TrackInfo_Reverse(tcp_Info_Manager *manager, struct sk_buff *skb); +#endif diff --git a/drivers/secfilter/url_parser.c b/drivers/secfilter/url_parser.c new file mode 100644 index 000000000000..308a51c4fa1e --- /dev/null +++ b/drivers/secfilter/url_parser.c @@ -0,0 +1,443 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "sec_filter.h" +#include "tcp_track.h" +#include "url_parser.h" + +#define SKIPSPACE(x)// {while(*(x) ==' '){(x)=(x)+1;}} + +#define METHOD_MAX 3 +char *http_method[METHOD_MAX] = {"GET ", "POST ", "CONNECT "}; + +int makeNotifyInfo(tcp_TrackInfo *node) +{ + URL_Info url_info; + char *newURL = NULL; + int hostLen = 0; + int urlLen = 0; + int result = 0; + int referLen = 0; + if (node != NULL) + { + if (node->host != NULL) + { + hostLen = strlen(node->host); + } + if (node->url != NULL) + { + urlLen = strlen(node->url); + } + if (node->referer != NULL) + { + referLen = strlen(node->referer); + } + url_info.id = node->id; + url_info.uid = node->uid; + url_info.version = FILTER_VERSION; + url_info.len = hostLen+urlLen; // HOST + URL not include '\0' + if (referLen == 0) + { + url_info.type = URL_TYPE; + node->urlLen = sizeof(url_info)+url_info.len; + } + else + { + url_info.type = URL_REFER_TYPE; + node->urlLen = sizeof(url_info)+url_info.len + sizeof(int)+ referLen ; + } + + newURL = SEC_MALLOC(node->urlLen+1); + if (newURL != NULL) + { + char *buffer = newURL; + + memcpy(buffer, &url_info, sizeof(url_info)); + buffer = &buffer[sizeof(url_info)]; + if (hostLen >0) + { + memcpy((void *)buffer, (void *)node->host, hostLen); + SEC_FREE(node->host); + buffer = &buffer[hostLen]; + } + if (urlLen >0) + { + memcpy((void *)buffer, (void *)node->url, urlLen); + SEC_FREE(node->url); + buffer = &buffer[urlLen]; + } + if (referLen >0) + { + *((int *)buffer) = referLen; + buffer = &buffer[sizeof(int)]; + memcpy((void *)buffer, (void *)node->referer, referLen); + SEC_FREE(node->referer); + } + result = 1; + node->notify_Index = 0; + node->url = newURL; + } + } + return result; +} + +char * appendString(char *preData, char *postData) +{ + int preDataSize = 0; + int postDataSize = 0; + int totalStringSize = 0; + char *result = NULL; + + if ( (preData != NULL) && (postData !=NULL)) + { + preDataSize = strlen(preData); + postDataSize = strlen(postData); + if (postDataSize > 0) + { + totalStringSize = preDataSize+postDataSize+1; // Include '\0' + result = SEC_MALLOC(totalStringSize); + if (result != NULL) + { + memcpy(result, preData, preDataSize); + memcpy(&result[preDataSize], postData, postDataSize); + } + } + } + return result; +} + +tcp_TrackInfo* isURL( struct sk_buff *skb) +{ + char *request = NULL; + int i = 0; + tcp_TrackInfo *result = NULL; + struct tcphdr *tcph = (struct tcphdr *)skb_transport_header(skb); + + if (skb->data_len == 0) + { + request = (( char *)tcph + tcph->doff*4); + } + else + { + struct skb_shared_info *shinfo = skb_shinfo(skb); + if (shinfo != NULL) + { + void *frag_addr = page_address(shinfo->frags[0].page.p) + shinfo->frags[0].page_offset; + if (frag_addr != NULL) + { + request = (char *)frag_addr; + } + } + } + if (request != NULL) + { + for (i = 0; ilen - (iph->ihl*4) - (tcph->doff*4); + + result = SEC_MALLOC(length+node->buffered+1); + if (result != NULL) + { + if (node->buffered > 0) // If buffered data is exist + { + memcpy((void *)result, (void *)node->buffer, node->buffered); // Copy pre-buffer to current buffer + } + if (length >0) + { + if (skb->data_len == 0) + { + memcpy((void *)&result[node->buffered], (void *)((unsigned char *)tcph + tcph->doff*4) , length); + } + else + { + int i = 0; + int index = node->buffered; + struct skb_shared_info *shinfo = skb_shinfo(skb); + for ( i = 0 ; i < shinfo->nr_frags ; i++) + { + void *frag_addr = page_address(shinfo->frags[i].page.p) + shinfo->frags[i].page_offset; + if (frag_addr != NULL) + { + memcpy((void *)&result[index], (void *)frag_addr, shinfo->frags[i].size); + index += shinfo->frags[i].size; + } + } + } + } + result[length+node->buffered] = 0; + node->buffered = 0; + } + return result; +} + + +int saveToBuffer(tcp_TrackInfo *node, char *data, int size) +{ + int bufferSize = 0; + int result = 0; + if (size < PREPACKET_BUFFER_SIZE) + { + bufferSize = size; + } + else + { + bufferSize = PREPACKET_BUFFER_SIZE; + } + result = size-bufferSize; + memcpy((void *)node->buffer, (void *)&data[result] , bufferSize); + data[result] = 0; + node->buffered = bufferSize; + return result; +} + +int findStringByTag(tcp_TrackInfo *node, char **data, char *dataStart, char *tagInfo) +{ + char *dataEnd = NULL; + int len = 0; + int result = -1; + + if ((dataStart != NULL) && (tagInfo != NULL)) + { + dataEnd = strstr(dataStart, tagInfo); + if (dataEnd != NULL) // Found End String + { + *dataEnd = 0; + len = strlen(dataStart); + result = len; // result has length only when tag's been found + } + else // Next Packet is needed + { + int dataLen = strlen(dataStart); + len = saveToBuffer(node, dataStart, dataLen); // Last buffer size after back-up + } + + if (*data != NULL) //Place to Save has previous string + { + char *newData = appendString(*data, dataStart); + if (newData != NULL) //Get appended string + { + SEC_FREE(*data); + *data = newData; // Replace with New URL + } + } + else if (len >0) // This is FIrst block of data + { + char *newData = NULL; + newData = SEC_MALLOC(len+1); + if (newData != NULL) + { + memcpy((void *)newData, (void *)dataStart, len); + newData[len] =0; + *data = newData; + } + } + } + return result; +} + + +void getURL(char *request, tcp_TrackInfo *node) // request is already checked +{ + int len = 0; + int length = 0; + int i = 0; + int flagLast = 0; + char *dataStart = request; + + length = strlen(dataStart); + if ((length >= 4) && (strcmp(&dataStart[length-4], "\r\n\r\n") == 0)) + { + flagLast = 1; + } + + if (node->status == NOTSET) // This is first Packet + { + for (i = 0 ; istatus = GETTING_URL; + dataStart = &request[methodLen]; + SKIPSPACE(dataStart); + len = findStringByTag(node, &(node->url), dataStart, " HTTP/"); + if (len >= 0) + { + node->status = GOT_URL; + dataStart= &dataStart[len+1]; + } + break; + } + } + } + else if (node->status == GETTING_URL) + { + len = findStringByTag(node, &(node->url), dataStart, " HTTP/"); + if (len >= 0) + { + node->status = GOT_URL; + dataStart= &dataStart[len+1]; + } + } + + if (node->status == GOT_URL) + { + char *referer = NULL; + char *hostStart = NULL; + if ((filterMode == FILTER_MODE_ON_BLOCK_REFER) ||(filterMode == FILTER_MODE_ON_RESPONSE_REFER)) + { + if (node->referer == NULL) + { + referer = strstr(dataStart, "\r\nReferer: "); + if (referer != NULL) + { + referer = &referer[11]; + } + } + } + if ((node->host == NULL) && (node->url[0] == '/')) // Need to find HOST + { + hostStart = strstr(dataStart, "\r\nHost: "); // Find Host: + if (hostStart !=NULL) + { + hostStart = &hostStart[8]; + } + } + + if ((referer != NULL) && (hostStart != NULL)) + { + if (refererreferer), referer, "\r\n"); + SKIPSPACE(hostStart); + if (findStringByTag(node, &(node->host), hostStart, "\r\n") >=0) + { + node->status = GOT_FULL_URL; // + } + else + { + node->status = GETTING_HOST; + } + } + else // Host is first and referer is next + { + SKIPSPACE(hostStart); + findStringByTag(node, &(node->host), hostStart, "\r\n"); + SKIPSPACE(referer); + if (findStringByTag(node, &(node->referer), referer, "\r\n")>=0) + { + node->status = GOT_FULL_URL; + } + else + { + node->status = GETTING_REFERER; + } + } + }else if (referer != NULL) + { + SKIPSPACE(referer); + if (findStringByTag(node, &(node->referer), referer, "\r\n") >=0) + { + if (flagLast == 1) + { + node->status = GOT_FULL_URL; + } + else + { + node->status = GOT_URL; + } + } + else + { + node->status = GETTING_REFERER; + } + } + else if (hostStart != NULL) + { + SKIPSPACE(hostStart); + if (findStringByTag(node, &(node->host), hostStart, "\r\n")>=0) + { + if (flagLast == 1) + { + node->status = GOT_FULL_URL; + } + else + { + node->status = GOT_URL; + } + } + else + { + node->status = GETTING_REFERER; + } + } + else + { + if (flagLast == 1) // This is last packet + { + node->status = GOT_FULL_URL; + } + else + { + saveToBuffer(node, dataStart, length); + } + } + } + else if (node->status == GETTING_HOST) + { + if (findStringByTag(node, &(node->host), dataStart, "\r\n")>=0) + { + if (flagLast == 1) + { + node->status = GOT_FULL_URL; + } + else + { + node->status = GOT_URL; + } + } + } + else if (node->status == GETTING_REFERER) + { + if (findStringByTag(node, &(node->referer), dataStart, "\r\n")>=0) + { + if (flagLast == 1) + { + node->status = GOT_FULL_URL; + } + else + { + node->status = GOT_URL; + } + } + } +} diff --git a/drivers/secfilter/url_parser.h b/drivers/secfilter/url_parser.h new file mode 100644 index 000000000000..f9887a47e1bb --- /dev/null +++ b/drivers/secfilter/url_parser.h @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef URL_PARSER_H_ +#define URL_PARSER_H_ +#include "sec_filter.h" +#include "tcp_track.h" + +typedef struct __URLINFO +{ + short version; + short type; + int id; + unsigned int uid; + int len; +}__attribute((packed)) URL_Info; + +tcp_TrackInfo* isURL(struct sk_buff *skb); +char * getPacketData( struct sk_buff *skb, tcp_TrackInfo *node); +void getURL(char *request, tcp_TrackInfo *node); +int makeNotifyInfo(tcp_TrackInfo *node); +#endif /* URL_PARSER_H_ */ diff --git a/drivers/sensorhub/Kconfig b/drivers/sensorhub/Kconfig index 64b32b07a67d..cabfba665cc0 100755 --- a/drivers/sensorhub/Kconfig +++ b/drivers/sensorhub/Kconfig @@ -35,7 +35,18 @@ config SENSORS_SSP_STM_32F To compile this driver as a module, choose M here: the module will be called ssp. +config SENSORS_SSP_STM_HESTIA + tristate "Sensors ssp STM" + default n + depends on SPI + help + ssp driver for STM sensor hub. + If you say yes here you get ssp support for + sensor hub. + To compile this driver as a module, choose M here: the + module will be called ssp. + source "drivers/sensorhub/atmel/Kconfig" source "drivers/sensorhub/stm/Kconfig" source "drivers/sensorhub/stm32f/Kconfig" - +source "drivers/sensorhub/stm_hestia/Kconfig" diff --git a/drivers/sensorhub/Makefile b/drivers/sensorhub/Makefile index 8489414ecce8..271b8dd0403d 100755 --- a/drivers/sensorhub/Makefile +++ b/drivers/sensorhub/Makefile @@ -4,5 +4,10 @@ # Each configuration option enables a list of files. obj-$(CONFIG_SENSORS_SSP_ATMEL) += atmel/ +ifdef CONFIG_SEC_PATEK_PROJECT +obj-$(CONFIG_SEC_PATEK_PROJECT) += stm_patek/ +else obj-$(CONFIG_SENSORS_SSP_STM) += stm/ +endif obj-$(CONFIG_SENSORS_SSP_STM_32F) += stm32f/ +obj-$(CONFIG_SENSORS_SSP_STM_HESTIA) += stm_hestia/ \ No newline at end of file diff --git a/drivers/sensorhub/atmel/factory/prox_max88920.c b/drivers/sensorhub/atmel/factory/prox_max88920.c index ff0640241f83..999fce15d3ae 100755 --- a/drivers/sensorhub/atmel/factory/prox_max88920.c +++ b/drivers/sensorhub/atmel/factory/prox_max88920.c @@ -27,12 +27,21 @@ #define LDI_GRAY '1' #define LDI_WHITE '2' +#if defined(CONFIG_MACH_JACTIVESKT) +#define DEFUALT_HIGH_THRESHOLD 45 +#define DEFUALT_LOW_THRESHOLD 30 +#define TBD_HIGH_THRESHOLD 45 +#define TBD_LOW_THRESHOLD 30 +#define WHITE_HIGH_THRESHOLD 45 +#define WHITE_LOW_THRESHOLD 30 +#else #define DEFUALT_HIGH_THRESHOLD 60 #define DEFUALT_LOW_THRESHOLD 45 #define TBD_HIGH_THRESHOLD 60 #define TBD_LOW_THRESHOLD 45 #define WHITE_HIGH_THRESHOLD 60 #define WHITE_LOW_THRESHOLD 45 +#endif /*************************************************************************/ /* factory Sysfs */ /*************************************************************************/ @@ -200,6 +209,15 @@ int proximity_open_calibration(struct ssp_data *data) mm_segment_t old_fs; struct file *cancel_filp = NULL; + if(data->prox_state == OFFSET_CAL_DATA) { + data->uProxHiThresh = data->proximity_highThreshold; + data->uProxLoThresh = data->proximity_lowThreshold; + goto exit; + } + else if (data->prox_state == FILE_OPEN_FAIL) { + goto exit; + } + old_fs = get_fs(); set_fs(KERNEL_DS); @@ -210,6 +228,7 @@ int proximity_open_calibration(struct ssp_data *data) pr_err("[SSP]: %s - Can't open cancelation file\n", __func__); set_fs(old_fs); + data->prox_state = FILE_OPEN_FAIL; goto exit; } @@ -220,8 +239,12 @@ int proximity_open_calibration(struct ssp_data *data) iRet = -EIO; } - if (data->uProxCanc != 0) /*If there is an offset cal data. */ + if (data->uProxCanc != 0) /*If there is an offset cal data. */ { get_proximity_threshold(data); + data->prox_state = OFFSET_CAL_DATA; + data->proximity_highThreshold = data->uProxHiThresh; + data->proximity_lowThreshold = data->uProxLoThresh; + } pr_info("%s: proximity ps_canc = %d, ps_thresh hi - %d lo - %d\n", __func__, data->uProxCanc, data->uProxHiThresh, @@ -242,6 +265,8 @@ static int proximity_store_cancelation(struct ssp_data *data, int iCalCMD) mm_segment_t old_fs; struct file *cancel_filp = NULL; + data->prox_state = STORE_SUCCESS; + if (iCalCMD) { data->uProxCanc = get_proximity_rawdata(data); get_proximity_threshold(data); diff --git a/drivers/sensorhub/atmel/ssp.h b/drivers/sensorhub/atmel/ssp.h index 3baf7b1b55e7..515c29f750c1 100755 --- a/drivers/sensorhub/atmel/ssp.h +++ b/drivers/sensorhub/atmel/ssp.h @@ -267,6 +267,12 @@ enum { SENSOR_FACTORY_MAX, }; +enum { + STORE_SUCCESS = 0, + FILE_OPEN_FAIL, + OFFSET_CAL_DATA, +}; + struct sensor_value { union { struct { @@ -417,6 +423,10 @@ struct ssp_data { int sns_combination; struct regulator *reg_hub; struct regulator *reg_sns; + + unsigned char prox_state; + unsigned char proximity_highThreshold; + unsigned char proximity_lowThreshold; }; void ssp_enable(struct ssp_data *, bool); diff --git a/drivers/sensorhub/atmel/ssp_debug.c b/drivers/sensorhub/atmel/ssp_debug.c index 46a46736d8b3..f59043d2585b 100755 --- a/drivers/sensorhub/atmel/ssp_debug.c +++ b/drivers/sensorhub/atmel/ssp_debug.c @@ -145,6 +145,7 @@ static void print_sensordata(struct ssp_data *data, unsigned int uSensor) ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, data->buf[uSensor].step_diff, get_msdelay(data->adDelayBuf[uSensor])); + break; default: ssp_dbg("[SSP] Wrong sensorCnt: %u\n", uSensor); break; diff --git a/drivers/sensorhub/atmel/ssp_firmware.c b/drivers/sensorhub/atmel/ssp_firmware.c index f72823332a41..dd72f901ab08 100755 --- a/drivers/sensorhub/atmel/ssp_firmware.c +++ b/drivers/sensorhub/atmel/ssp_firmware.c @@ -15,12 +15,17 @@ #include "ssp.h" #define SSP_FIRMWARE_REVISION 101901 -#define SSP_FIRMWARE_REVISION_03 13120500/*MCU L5, 6500*/ +#if defined(CONFIG_MACH_JACTIVESKT) +#define SSP_FIRMWARE_REVISION_03 14032500 /*MCU L5, 6500 fortius-skt*/ +#else +#define SSP_FIRMWARE_REVISION_03 14082100/*MCU L5, 6500*/ +#endif /* Bootload mode cmd */ #define BL_FW_NAME_L0 "ssp_L0.fw" #define BL_FW_NAME "ssp.fw" #define BL_FW_NAME_03 "ssp_rev03.fw" +#define BL_FW_NAME_FORTIUS "ssp_fortius.fw" #define BL_UMS_FW_NAME "ssp.bin" #define BL_CRASHED_FW_NAME "ssp_crashed.fw" @@ -440,8 +445,13 @@ static int update_mcu_bin(struct ssp_data *data, int iBinType) iRet = load_kernel_fw_bootmode(data->client, BL_FW_NAME_L0); else /* SSP_MCU_L5 */ +#if defined(CONFIG_MACH_JACTIVESKT) + iRet = load_kernel_fw_bootmode(data->client, + BL_FW_NAME_FORTIUS); // for fortius-kor models +#else iRet = load_kernel_fw_bootmode(data->client, BL_FW_NAME_03); +#endif break; case KERNEL_CRASHED_BINARY: iRet = load_kernel_fw_bootmode(data->client, diff --git a/drivers/sensorhub/atmel/ssp_sysfs.c b/drivers/sensorhub/atmel/ssp_sysfs.c index d9147103a29d..9ce5789c8dec 100755 --- a/drivers/sensorhub/atmel/ssp_sysfs.c +++ b/drivers/sensorhub/atmel/ssp_sysfs.c @@ -78,7 +78,7 @@ static void change_sensor_delay(struct ssp_data *data, data->aiCheckStatus[iSensorType] = RUNNING_SENSOR_STATE; - if (iSensorType == PROXIMITY_SENSOR) { + if (iSensorType == PROXIMITY_SENSOR && !(data->bSspShutdown)) { proximity_open_lcd_ldi(data); proximity_open_calibration(data); diff --git a/drivers/sensorhub/stm/Makefile b/drivers/sensorhub/stm/Makefile index 393a1c685c7c..7fdfce0a75b6 100755 --- a/drivers/sensorhub/stm/Makefile +++ b/drivers/sensorhub/stm/Makefile @@ -12,4 +12,5 @@ obj-$(CONFIG_SENSORS_SSP_SENSORHUB) += ssp_sensorhub.o obj-$(CONFIG_SENSORS_SSP_C12SD) += ssp_c12sd.o obj-$(CONFIG_SENSORS_AD7146) += ad7146.o obj-$(CONFIG_SENSORS_MAX86900) += max86900.o +obj-$(CONFIG_SENSORS_ADPD142) += adpd142.o obj-$(CONFIG_SENSORS_SSP_FACTORY) += factory/ diff --git a/drivers/sensorhub/stm/adpd142.c b/drivers/sensorhub/stm/adpd142.c new file mode 100644 index 000000000000..7cc6e2e27f6b --- /dev/null +++ b/drivers/sensorhub/stm/adpd142.c @@ -0,0 +1,2632 @@ +/** + *\mainpage + * ADPD142 driver + * (c) copyright 2014 Analog Devices Inc. + * Licensed under the GPL version 3 or later. + * \date April 2014 + * \version 1.1 Driver + * \version Linux 3.4.0 +*/ + +#include "adpd142.h" +#ifdef CONFIG_OF +#include +#endif + +static int dbg_enable; + +module_param(dbg_enable, int, S_IRUGO | S_IWUSR); + +/* ADPD142 driver version*/ +#define ADPD142_VERSION "1.2" +/* ADPD142 release date*/ +#define ADPD142_RELEASE_DATE "Tue Apr 22 12:11:42 IST 2014" + + +#define ADPD_DEV_NAME "adpd142" + +/*INPUT DEVICE NAME LIST*/ +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "ADPD142RI" +#define VENDOR "ADI" + +#define MAX_EOL_RESULT 132 + +/*I2C RELATED*/ +#define I2C_RETRY_DELAY 5 +#define I2C_RETRIES 5 + +/*ADPD142 DRIVER RELATED*/ +#define MAX_BUFFER 128 +#define GLOBAL_OP_MODE_OFF 0 +#define GLOBAL_OP_MODE_IDLE 1 +#define GLOBAL_OP_MODE_GO 2 + +#define SET_GLOBAL_OP_MODE(val, cmd) ((val & 0xFC) | cmd) + +#define FRM_FILE 0 +#define FRM_ARR 1 +#define EN_FIFO_CLK 0x3B5B +#define DS_FIFO_CLK 0x3050 + +/******************************************************************/ +/**************** ADPD142 USER OPERATING MODE ********************/ +/* +Operating mode defined to user +*/ +#define IDLE_MODE 0x00 +#define SAMPLE_XY_A_MODE 0x30 +#define SAMPLE_XY_AB_MODE 0x31 +#define SAMPLE_XY_B_MODE 0x32 +#define GET_USR_MODE(usr_val) ((usr_val & 0xF0) >> 4) +#define GET_USR_SUB_MODE(usr_val) (usr_val & 0xF) +/******************************************************************/ +/**************** ADPD142 OPERATING MODE & DATA MODE *************/ +#define R_RDATA_FLAG_EN (0x1 << 15) +#define R_PACK_START_EN (0x0 << 14) +#define R_RDOUT_MODE (0x0 << 13) +#define R_FIFO_PREVENT_EN (0x1 << 12) +#define R_SAMP_OUT_MODE (0x0 << 9) +#define DEFAULT_OP_MODE_CFG_VAL(cfg_x) (R_RDATA_FLAG_EN + R_PACK_START_EN +\ + R_RDOUT_MODE + R_FIFO_PREVENT_EN+\ + R_SAMP_OUT_MODE) + +#define SET_R_OP_MODE_A(val) ((val & 0xF000) >> 12) +#define SET_R_DATAMODE_A(val) ((val & 0x0F00) >> 8) +#define SET_R_OP_MODE_B(val) ((val & 0x00F0) >> 4) +#define SET_R_DATAMODE_B(val) ((val & 0x000F)) +/** +@brief Used to get the value need to be set for slot-A, B operating mode +and data out mode. +*/ +#define SET_MODE_VALUE(val) (SET_R_OP_MODE_A(val) |\ + (SET_R_DATAMODE_A(val) << 2) |\ + (SET_R_OP_MODE_B(val) << 5) |\ + (SET_R_DATAMODE_B(val) << 6)) +/******************************************************************/ +/**************** ADPD142 INTERRUPT MASK *************************/ +#define INTR_MASK_IDLE_USR 0x0000 +#define INTR_MASK_SAMPLE_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_A_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_AB_USR 0x0040 +#define INTR_MASK_S_SAMP_XY_B_USR 0x0040 +#define SET_INTR_MASK(usr_val) ((~(INTR_MASK_##usr_val)) & 0x1FF) +/******************************************************************/ +/***************** ADPD142 PRINT *********************************/ +#ifdef ADPD_DBG +#define ADPD142_dbg(format, arg...) \ + printk(KERN_DEBUG "ADPD142 : "format, ##arg); +#else +#define ADPD142_dbg(format, arg...) {if (dbg_enable)\ + printk(KERN_DEBUG "ADPD142 : "format, ##arg);\ + } +#endif + +#ifdef ADPD_INFO +#define ADPD142_info(format, arg...) \ + printk(KERN_INFO "ADPD142 : "format, ##arg); +#else +#define ADPD142_info(format, arg...) {if (0)\ + ; } +#endif +/******************************************************************/ +/***************** ADPD142 DIFFERENT MODE ************************/ +/* +Main mode +*/ +#define IDLE_USR 0 +#define SAMPLE_USR 3 + +/* +Sub mode +*/ +#define S_SAMP_XY_A 0 +#define S_SAMP_XY_AB 1 +#define S_SAMP_XY_B 2 +/* +OPERATING MODE ==> MAIN_mode[20:16] | + OP_mode_A[15:12] | + DATA_mode_A[11:8]| + OP_mode_B[7:4] | + DATA_mode_B[3:0] +*/ +#define IDLE_OFF ((IDLE_USR << 16) | (0x0000)) + +#define SAMPLE_XY_A ((SAMPLE_USR << 16) | (0x1400)) +#define SAMPLE_XY_AB ((SAMPLE_USR << 16) | (0x1414)) +#define SAMPLE_XY_B ((SAMPLE_USR << 16) | (0x0014)) + +#define MAX_MODE 4 + +#define MAX_IDLE_MODE 1 +#define MAX_SAMPLE_MODE 3 + +#define MODE(val) __arr_mode_##val +#define MODE_SIZE(val) MAX_##val##_MODE + + +#define MAX_LIB_VER 20 +#define OSC_TRIM_ADDR26_REG 0x26 +#define OSC_TRIM_ADDR28_REG 0x28 +#define OSC_TRIM_ADDR29_REG 0x29 +#define OSC_TRIM_32K_REG 0x4B +#define OSC_TRIM_32M_REG 0x4D +#define OSC_DEFAULT_32K_SET 0x2695 +#define OSC_DEFAULT_32M_SET 0x4272 +#define OSCILLATOR_TRIM_FILE_PATH "/efs/osc_trim" + + + +/** +mode mapping structure used to hold the number mode actually supported by +driver +*/ +struct mode_mapping { + char *name; + int *mode_code; + unsigned int size; +}; +int __arr_mode_IDLE[MAX_IDLE_MODE] = { IDLE_OFF }; +int __arr_mode_SAMPLE[MAX_SAMPLE_MODE] = { SAMPLE_XY_A, + SAMPLE_XY_AB, + SAMPLE_XY_B }; + +struct mode_mapping __mode_recv_frm_usr[MAX_MODE] = { + { + .name = "IDLE", + .mode_code = MODE(IDLE), + .size = MODE_SIZE(IDLE) + }, + { .name = "UNSUPPORTED1", + .mode_code = 0, + .size = 0, + }, + { .name = "UNSUPPORTED2", + .mode_code = 0, + .size = 0, + }, + { + .name = "SAMPLE", + .mode_code = MODE(SAMPLE), + .size = MODE_SIZE(SAMPLE) + } +}; + +/** +general data buffer that is required to store the recieved buffer +*/ +unsigned short data_buffer[MAX_BUFFER] = { 0 }; + +struct wrk_q_timestamp { + struct timeval interrupt_trigger; +}; + +struct adpd142_stats { + atomic_t interrupts; + atomic_t fifo_requires_sync; + atomic_t fifo_bytes[4]; + atomic_t wq_pending; + atomic_t wq_schedule_time_peak_usec; + atomic_t wq_schedule_time_last_usec; + struct ewma wq_schedule_time_avg_usec; + atomic_t data_process_time_peak_usec; + atomic_t data_process_time_last_usec; + struct ewma data_process_time_avg_usec; + struct wrk_q_timestamp stamp; +}; + +/** +structure hold adpd142 chip structure, and parameter used +to control the adpd142 software part. +*/ +struct adpd142_data { + struct i2c_client *client; + struct mutex mutex;/*for chip structure*/ + struct device *dev; + struct input_dev *ptr_sample_inputdev; + struct adpd_platform_data *ptr_config; + + struct work_struct work; + struct workqueue_struct *ptr_adpd142_wq_st; + int irq; + int hrm_int; + + unsigned short *ptr_data_buffer; + + struct adpd142_stats stats; + + unsigned short intr_mask_val; + unsigned short intr_status_val; + unsigned short fifo_size; + + /*sysfs register read write */ + unsigned short sysfs_I2C_regaddr; + unsigned short sysfs_I2C_regval; + unsigned short sysfslastreadval; + + atomic_t sample_enabled; + atomic_t adpd_mode; + + int (*read)(struct adpd142_data *, u8 reg_addr, int len, u16 *buf); + int (*write)(struct adpd142_data *, u8 reg_addr, int len, u16 data); + u8 eol_test_is_enable; + u8 eol_test_status; + char *eol_test_result; + char *eol_lib_ver; + char *elf_lib_ver; + + int osc_trim_32K_value; + int osc_trim_32M_value; + int osc_trim_addr26_value; + int osc_trim_addr28_value; + int osc_trim_addr29_value; + u8 osc_trim_open_enable; + + struct regulator *reg_adpd; + struct regulator *vdd_led; + +}; + +/** +structure hold adpd142 configuration data to be written during probe. +*/ +static struct adpd_platform_data adpd142_config_data = { + .config_size = 53, + .config_data = { + 0x00100001, + 0x000100ff, + 0x00020004, + 0x00060000, + 0x00111011, + 0x0012000A, + 0x00130320, + 0x00140449, + 0x00150333, + 0x001C4040, + 0x001D4040, + 0x00181400, + 0x00191400, + 0x001a1650, + 0x001b1000, + 0x001e1ff0, + 0x001f1Fc0, + 0x00201ad0, + 0x00211470, + 0x00233032, + 0x00243035, + 0x002502CC, + 0x00340000, + 0x00260000, + 0x00270800, + 0x00280000, + 0x00294003, + 0x00300330, + 0x00310213, + 0x00421d37, + 0x0043ada5, + 0x003924D2, + 0x00350330, + 0x00360813, + 0x00441d37, + 0x0045ada5, + 0x003b24D2, + 0x00590808, + 0x00320320, + 0x00330113, + 0x003a22d4, + 0x003c0006, + 0x00401010, + 0x0041004c, + 0x004c0004, + 0x004f2090, + 0x00500000, + 0x00523000, + 0x0053e400, + 0x005b1831, + 0x005d1b31, + 0x005e2808, + 0x004e0040, + }, +}; + +/** +This function is used to parse data from the string "0xXXX 1 0xYYY" +@param buf is pointer point constant address +@param cnt store number value need to parse +@param data parse data are stored in it +@return void +*/ +static void +cmd_parsing(const char *buf, unsigned short cnt, unsigned short *data) +{ + char **bp = (char **)&buf; + char *token, minus, parsing_cnt = 0; + int val; + int pos; + + while ((token = strsep(bp, " "))) { + pos = 0; + minus = false; + if ((char)token[pos] == '-') { + minus = true; + pos++; + } + if ((token[pos] == '0') && + (token[pos + 1] == 'x' || token[pos + 1] == 'X')) { + if (kstrtoul(&token[pos + 2], 16, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } else { + if (kstrtoul(&token[pos], 10, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } + + if (parsing_cnt < cnt) + *(data + parsing_cnt) = val; + else + break; + parsing_cnt++; + } +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@return u16 value present in the register. +*/ +static inline u16 +reg_read(struct adpd142_data *pst_adpd, u16 reg) +{ + u16 value; + if (!pst_adpd->read(pst_adpd, reg, 1, &value)) + return value; + return 0xFFFF; +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@param len number of data need to be readout +@param buf is pointer store the value present in the register. +@return u16 status of i2c read. +*/ +static inline u16 +multi_reg_read(struct adpd142_data *pst_adpd, u16 reg, u16 len, u16 *buf) +{ + return pst_adpd->read(pst_adpd, reg, len, buf); +} + +/** +This function is a inline function mapped to i2c write functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address to which the data need to be written +@param value is the data need to be write. +@return u16 status of i2c write. +*/ +static inline u16 +reg_write(struct adpd142_data *pst_adpd, u16 reg, u16 value) +{ + return pst_adpd->write(pst_adpd, reg, 1, value); +} + +/** +This function is used for I2C read from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 status of i2c read. +*/ +static u16 +adpd142_sysfs_I2C_read(struct adpd142_data *pst_adpd) +{ + return reg_read(pst_adpd, pst_adpd->sysfs_I2C_regaddr); +} + +/** +This function is used for I2C write from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 the bytes of written data. +*/ +static u16 +adpd142_sysfs_I2C_write(struct adpd142_data *pst_adpd) +{ + u16 err; + err = reg_write(pst_adpd, pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + if (err) + return 0xFFFF; + else + return pst_adpd->sysfs_I2C_regval; +} + +/** +This function is used to parse string +@param recv_buf pointer point a string +@return int +*/ +static int +parse_data(char *recv_buf) +{ + char **bp = (char **)&recv_buf; + char *token, parsing_cnt = 0; + long val; + int test_data; + unsigned int data = 0; + int ret = 0; + char test[10] = {'\0'}; + + while ((token = strsep(bp, " \t"))) { + memset(test, '\0', 10); + memcpy(test, token, strlen(token)); + memmove(test+2, test, strlen(test)); + test[0] = '0'; + test[1] = 'x'; + ret = kstrtol(test, 0, &val); + if (ret) { + if (ret == -ERANGE) { + ADPD142_info("out of range\n"); + val = 0; + } + if (ret == -EINVAL) { + ADPD142_info("parsing error\n"); + sscanf(test, "%x", &test_data); + val = test_data; + } + } + + if (parsing_cnt == 0) { + data = (int) (0xFF & val); + if (data == 0) + return -1; + } + if (parsing_cnt == 1) { + data = data << 16; + data |= (0xFFFF & val); + } + parsing_cnt++; + if (parsing_cnt > 2) + break; + } + return data; +} + +/** +This function is used for reading configuration file +@param pst_adpd the ADPD142 data structure +@return int status of the configuration file. +*/ +static int +adpd142_read_config_file(struct adpd142_data *pst_adpd) +{ + mm_segment_t old_fs; + struct file *fpt_adpd = NULL; + struct adpd_platform_data *ptr_config = NULL; + int line_cnt = 0; + int start = 0; + int cnt = 0; + int ret = 0; + int i = 0; + char get_char; + char *recieved_buf = NULL; + loff_t pos = 0; + ptr_config = pst_adpd->ptr_config; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + fpt_adpd = filp_open("/data/misc/adpd142_config.dcfg", O_RDONLY, 0666); + if (IS_ERR(fpt_adpd)) { + ADPD142_dbg("unable to find de file %ld\n", PTR_ERR(fpt_adpd)); + set_fs(old_fs); + ret = /*PTR_ERR(fpt_adpd_filp); */ -1; + ptr_config->config_size = 0; + goto err_filp_open; + } + + recieved_buf = kzalloc(sizeof(char) * 15, GFP_KERNEL); + memset(recieved_buf, '\0', sizeof(recieved_buf)); + + while (vfs_read(fpt_adpd, &get_char, sizeof(char), &pos)) { + if (get_char == '\n') { + line_cnt++; + if (cnt > 1) { + ret = parse_data(recieved_buf); + if (ret == -1) { + ADPD142_dbg("Error in reading dcfg\n"); + break; + } + ADPD142_info("0x%08x\n", ret); + ptr_config->config_data[i] = ret; + i++; + } + memset(recieved_buf, '\0', sizeof(recieved_buf)); + start = 0; + cnt = 0; + ret = 0; + } else { + if (get_char != '#') { + if (start != 0xF) { + recieved_buf[cnt] = get_char; + cnt++; + } + } else { + start = 0xF; + } + } + } + + filp_close(fpt_adpd, NULL); + + set_fs(old_fs); + kfree(recieved_buf); + ptr_config->config_size = i; + return 0; +err_filp_open: + return -1; +} + +/** +This function is used for reading interrupt and FIFO status +@param pst_adpd the ADPD142 data structure +@return unsigned short interrupt status value +*/ +static unsigned short +adpd142_rd_intr_fifo(struct adpd142_data *pst_adpd) +{ + unsigned short regval = 0; + unsigned short fifo_size = 0; + unsigned short usr_mode = 0; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + fifo_size = ((regval & 0xFF00) >> 8); + pst_adpd->fifo_size = ((fifo_size / 2) + (fifo_size & 1)); + pst_adpd->intr_status_val = (regval & 0xFF); + + ADPD142_info("Intr_status 0x%x, FIFO_SIZE 0x%x\n", + pst_adpd->intr_status_val, pst_adpd->fifo_size); + + if (fifo_size <= 16) + atomic_inc(&pst_adpd->stats.fifo_bytes[0]); + else if (fifo_size <= 32) + atomic_inc(&pst_adpd->stats.fifo_bytes[1]); + else if (fifo_size <= 64) + atomic_inc(&pst_adpd->stats.fifo_bytes[2]); + else + atomic_inc(&pst_adpd->stats.fifo_bytes[3]); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + if (0 != usr_mode) { + unsigned int mask = 0; + unsigned int mod = 0; + + switch (GET_USR_SUB_MODE(usr_mode)) { + case S_SAMP_XY_AB: + mask = 0x07; + break; + default: + mask = 0x03; + break; + }; + + mod = pst_adpd->fifo_size & mask; + if (mod) { + ADPD142_info("Keeping %d samples in FIFO from %d\n", + mod, pst_adpd->fifo_size); + pst_adpd->fifo_size &= ~mask; + atomic_inc(&pst_adpd->stats.fifo_requires_sync); + } + } + + return pst_adpd->intr_status_val; +} + +/** +This function is used for clearing the Interrupt as well as FIFO +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_clr_intr_fifo(struct adpd142_data *pst_adpd) +{ + /*below code is added for verification */ + unsigned short regval; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); + + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, 0x80FF); + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("After clear - fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); +} + +/** +This function is used for clearing the Interrupt status +@param pst_adpd the ADPD142 data structure +@param mode operating mode of ADPD142 +@return void +*/ +static void +adpd142_clr_intr_status(struct adpd142_data *pst_adpd, unsigned short mode) +{ + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, + pst_adpd->intr_status_val); +} + +/** +This function is used to read out FIFO data from FIFO +@param pst_adpd the ADPD142 data structure +@return unsigned int FIFO size +*/ +static unsigned int +adpd142_rd_fifo_data(struct adpd142_data *pst_adpd) +{ + int loop_cnt = 0; + + if (!pst_adpd->fifo_size) + goto err_rd_fifo_data; + + if (0 != atomic_read(&pst_adpd->adpd_mode) && + pst_adpd->fifo_size & 0x3) { + pr_err("Unexpected FIFO_SIZE=%d,\ + should be multiple of four (channels)!\n", + pst_adpd->fifo_size); + } + +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0001);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, EN_FIFO_CLK); + multi_reg_read(pst_adpd, ADPD_DATA_BUFFER_ADDR, + pst_adpd->fifo_size, pst_adpd->ptr_data_buffer); +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0000);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, DS_FIFO_CLK); + + for (; loop_cnt < pst_adpd->fifo_size; loop_cnt++) { + ADPD142_info("[0x%04x] 0x%04x\n", loop_cnt, + pst_adpd->ptr_data_buffer[loop_cnt]); + } + return pst_adpd->fifo_size; +err_rd_fifo_data: + return 0; +} + +/** +This function is a thing need to configure before changing the register +@param pst_adpd the ADPD142 data structure +@param global_mode OFF, IDLE, GO are the three mode +@return void +*/ +static void +adpd142_config_prerequisite(struct adpd142_data *pst_adpd, u32 global_mode) +{ + unsigned short regval = 0; + regval = reg_read(pst_adpd, ADPD_OP_MODE_ADDR); + regval = SET_GLOBAL_OP_MODE(regval, global_mode); + ADPD142_info("reg 0x%04x,\tafter set 0x%04x\n", + regval, SET_GLOBAL_OP_MODE(regval, global_mode)); + reg_write(pst_adpd, ADPD_OP_MODE_ADDR, regval); +} + +/** +This function is used for switching the adpd142 mode +@param pst_adpd the ADPD142 data structure +@param usr_mode user mode +@return void +*/ +static void +adpd142_mode_switching(struct adpd142_data *pst_adpd, u32 usr_mode) +{ + unsigned int opmode_val = 0; + unsigned short mode_val = 0; + unsigned short intr_mask_val = 0; + + unsigned short mode = GET_USR_MODE(usr_mode); + unsigned short sub_mode = GET_USR_SUB_MODE(usr_mode); + /*disabling further avoid further interrupt to trigger */ + disable_irq(pst_adpd->irq); + + /*stop the pending work */ + /*this function Gurantee that wrk is not pending or executing on CPU */ + cancel_work_sync(&pst_adpd->work); + + atomic_set(&pst_adpd->adpd_mode, 0); + mutex_lock(&pst_adpd->mutex); + + /*Depending upon the mode get the value need to write Operatin mode*/ + opmode_val = *(__mode_recv_frm_usr[mode].mode_code + (sub_mode)); + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*switch to IDLE mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + mode_val += SET_MODE_VALUE(IDLE_OFF); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, intr_mask_val); + + /*clear FIFO and flush buffer */ + adpd142_clr_intr_fifo(pst_adpd); + adpd142_rd_intr_fifo(pst_adpd); + if (pst_adpd->fifo_size != 0) { + adpd142_clr_intr_status(pst_adpd, IDLE_USR); + ADPD142_info("Flushing FIFO\n"); + adpd142_rd_fifo_data(pst_adpd); + } + + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + msleep(20); + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*Find Interrupt mask value */ + switch (mode) { + case IDLE_USR: + ADPD142_info("IDLE MODE\n"); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + atomic_set(&pst_adpd->sample_enabled, 0); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + /*enable interrupt only when data written to FIFO */ + switch (sub_mode) { + case S_SAMP_XY_A: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_A_USR); + break; + case S_SAMP_XY_AB: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_AB_USR); + break; + case S_SAMP_XY_B: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_B_USR); + break; + default: + intr_mask_val = SET_INTR_MASK(SAMPLE_USR); + break; + }; + intr_mask_val |= 0xC000; + atomic_set(&pst_adpd->sample_enabled, 1); + break; + default: + /*This case won't occur */ + ADPD142_dbg("invalid mode\n"); + break; + }; + + ADPD142_info("INT_MASK_ADDR[0x%04x] = 0x%04x\n", ADPD_INT_MASK_ADDR, + intr_mask_val); + pst_adpd->intr_mask_val = intr_mask_val; + + /*Fetch Default opmode configuration other than OP mode + and DATA_OUT mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + /*Get Mode value from the opmode value, + to hardocde the macro, change SET_MODE_VALUE macro and concern + mode macro + */ + mode_val += SET_MODE_VALUE(opmode_val); + + ADPD142_info("OP_MODE_CFG[0x%04x] = 0x%04x\n", + ADPD_OP_MODE_CFG_ADDR, mode_val); + + atomic_set(&pst_adpd->adpd_mode, usr_mode); + + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, pst_adpd->intr_mask_val); + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + + mutex_unlock(&pst_adpd->mutex); + + enable_irq(pst_adpd->irq); + + if (mode != IDLE_USR) + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + else + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_OFF); +} + +/** +This function is used for sending Sample event depend upon +the Sample mode +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_sample_event(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short sub_mode = 0; + unsigned short cnt = 0; + + ADPD142_info("%s\n", __func__); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + switch (sub_mode) { + case S_SAMP_XY_A: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + + case S_SAMP_XY_AB: + if (pst_adpd->fifo_size < 8 || (pst_adpd->fifo_size & 0x7)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 8) { + unsigned int channel; + unsigned int sum_slot_a = 0; + unsigned int sum_slot_b = 0; + + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Z, sub_mode + 1); + + for (channel = 0; channel < 4; ++channel) { + sum_slot_a += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_X, sum_slot_a + 1); + + for (channel = 4; channel < 8; ++channel) { + sum_slot_b += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Y, sum_slot_b + 1); + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + case S_SAMP_XY_B: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, + sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + default: + break; + }; +} + +/** +This function is used for handling FIFO when interrupt occured +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_data_handler(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short mode = 0; + unsigned short sub_mode = 0; + mutex_lock(&pst_adpd->mutex); + usr_mode = atomic_read(&pst_adpd->adpd_mode); + mode = GET_USR_MODE(usr_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + ADPD142_info("mode - 0x%x,\t sub_mode - 0x%x\n", mode, sub_mode); + adpd142_rd_intr_fifo(pst_adpd); + + if (pst_adpd->intr_status_val == 0) { + mutex_unlock(&pst_adpd->mutex); + return; + } + + adpd142_clr_intr_status(pst_adpd, mode); + + switch (mode) { + case IDLE_USR: + ADPD142_dbg("IDLE_MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + adpd142_sample_event(pst_adpd); + break; + default: + ADPD142_info("DEFAULT MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + }; + + mutex_unlock(&pst_adpd->mutex); +} + +/** +This function is a handler for WorkQueue +@param ptr_work linux work structure +@return void +*/ +static void +adpd142_wq_handler(struct work_struct *ptr_work) +{ + + struct adpd142_data *pst_adpd = container_of(ptr_work, + struct adpd142_data, work); + + struct timeval wkq_start; + struct timeval wkq_comp; + int diff_usec = 0; + + do_gettimeofday(&wkq_start); + + diff_usec = timeval_compare(&wkq_start, + &pst_adpd->stats.stamp.interrupt_trigger); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read( + &pst_adpd->stats.wq_schedule_time_peak_usec)) + atomic_set( + &pst_adpd->stats.wq_schedule_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.wq_schedule_time_avg_usec, diff_usec); + } + + adpd142_data_handler(pst_adpd); + + do_gettimeofday(&wkq_comp); + + diff_usec = timeval_compare(&wkq_comp, &wkq_start); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read(&pst_adpd->stats.data_process_time_peak_usec)) + atomic_set( + &pst_adpd->stats.data_process_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.data_process_time_avg_usec, + diff_usec); + } + +} + +/** +This function is used for handling Interrupt from ADPD142 +@param irq is Interrupt number +@param dev_id is pointer point to ADPD142 data structure +@return irqreturn_t is a Interrupt flag +*/ +static irqreturn_t +adpd142_isr_handler(int irq, void *dev_id) +{ + struct adpd142_data *pst_adpd = dev_id; + + atomic_inc(&pst_adpd->stats.interrupts); + + if (!work_pending(&pst_adpd->work)) { + do_gettimeofday(&pst_adpd->stats.stamp.interrupt_trigger); + ADPD142_info("%s\n", __func__); + if (!queue_work(pst_adpd->ptr_adpd142_wq_st, &pst_adpd->work)) + atomic_inc(&pst_adpd->stats.wq_pending); + } else { + atomic_inc(&pst_adpd->stats.wq_pending); + ADPD142_info("work_pending !!\n"); + } + return IRQ_HANDLED; +} + +/** +This function is used for updating the ADPD142 structure after configuration +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_update_config(struct adpd142_data *pst_adpd) +{ + return; +} + +/** +This function is used for loading the configuration data to ADPD142 chip +0 - From file "/data/misc/adpd142_configuration.dcfg" +1 - From Static defined Array +@param pst_adpd the ADPD142 data structure +@param config configuration command +@return int status +*/ +static int +adpd142_configuration(struct adpd142_data *pst_adpd, unsigned char config) +{ + struct adpd_platform_data *ptr_config; + unsigned short addr; + unsigned short data; + unsigned short cnt = 0; + int ret = 0; + adpd142_mode_switching(pst_adpd, 0); + if (config == FRM_FILE) { + ret = adpd142_read_config_file(pst_adpd); + ADPD142_info("ARRAY_SIZE - %d\n", size); + } else { + ret = FRM_ARR; + } + if (ret == 0) + ptr_config = pst_adpd->ptr_config; + else + ptr_config = &adpd142_config_data; + + for (cnt = 0; cnt < ptr_config->config_size; cnt++) { + addr = (unsigned short) ((0xFFFF0000 & + ptr_config->config_data[cnt]) >> 16); + data = (unsigned short) (0x0000FFFF & + ptr_config->config_data[cnt]); + + ADPD142_dbg("addr[0x%04x] = 0x%04x\n", addr, data); + reg_write(pst_adpd, addr, data); + } + + adpd142_update_config(pst_adpd); + + return 0; +} + +/* read & write efs for hrm sensor */ + +static int osc_trim_efs_register_open(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + char buffer[60] = {0, }; + int err = 0; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + mm_segment_t old_fs; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(osc_filp)) { + err = PTR_ERR(osc_filp); + if (err != -ENOENT) + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + return err; + } + + err = osc_filp->f_op->read(osc_filp, + (char *)buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't read the oscillator trim data from file\n", __func__); + err = -EIO; + } + sscanf(buffer, "%d,%d,%d,%d,%d", + &osc_trim_32k, &osc_trim_32m, &osc_trim_addr26, &osc_trim_addr28, &osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + +static int osc_trim_efs_register_save(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + mm_segment_t old_fs; + char buffer[60] = {0, }; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + int err = 0; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(osc_filp)) { + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(osc_filp); + return err; + } + + osc_trim_32k = reg_read(pst_adpd, OSC_TRIM_32K_REG); + osc_trim_32m = reg_read(pst_adpd, OSC_TRIM_32M_REG); + osc_trim_addr26 = reg_read(pst_adpd, OSC_TRIM_ADDR26_REG); + osc_trim_addr28 = reg_read(pst_adpd, OSC_TRIM_ADDR28_REG); + osc_trim_addr29 = reg_read(pst_adpd, OSC_TRIM_ADDR29_REG); + + sprintf(buffer, "%d,%d,%d,%d,%d", + osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + err = osc_filp->f_op->write(osc_filp, + (char *)&buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't write the oscillator trim data to file\n", __func__); + err = -EIO; + } + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + + +/** +This function clears all the statistic counters. +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd_stat_reset(struct adpd142_data *pst_adpd) +{ + atomic_set(&pst_adpd->stats.interrupts, 0); + atomic_set(&pst_adpd->stats.wq_pending, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, 0); + atomic_set(&pst_adpd->stats.fifo_requires_sync, 0); + atomic_set(&pst_adpd->stats.fifo_bytes[0], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[1], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[2], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[3], 0); + ewma_init(&pst_adpd->stats.wq_schedule_time_avg_usec, 2048, 128); + ewma_init(&pst_adpd->stats.data_process_time_avg_usec, 2048, 128); +} + +/* SAMPLE - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the sample enable bit +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +sample_attr_get_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->sample_enabled); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for enabling the Sample mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +sample_attr_set_enable(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + unsigned short osc_trim_32k, osc_trim_32m; + unsigned short osc_trim_addr26 = 0, osc_trim_addr28 = 0, osc_trim_addr29 = 0; + int err; + + int val; + int n = sscanf(buf, "%d", &val); + (void)n; + memset(parse_data, 0, sizeof(parse_data)); + + if (pst_adpd->osc_trim_open_enable == 1) { + err = osc_trim_efs_register_open(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_open() empty(%d)\n", __func__, err); + osc_trim_32k = OSC_DEFAULT_32K_SET; + osc_trim_32m = OSC_DEFAULT_32M_SET; + } else { + osc_trim_32k = (unsigned short)pst_adpd->osc_trim_32K_value; + osc_trim_32m = (unsigned short)pst_adpd->osc_trim_32M_value; + osc_trim_addr26 = (unsigned short)pst_adpd->osc_trim_addr26_value; + osc_trim_addr28 = (unsigned short)pst_adpd->osc_trim_addr28_value; + osc_trim_addr29 = (unsigned short)pst_adpd->osc_trim_addr29_value; + + reg_write(pst_adpd, OSC_TRIM_ADDR26_REG, osc_trim_addr26); + reg_write(pst_adpd, OSC_TRIM_ADDR28_REG, osc_trim_addr28); + reg_write(pst_adpd, OSC_TRIM_ADDR29_REG, osc_trim_addr29); + } + pr_info("adpd142_%s = 32K[%02x], 32M[%02x], addr26[%02x], addr28[%02x], addr29[%02x]\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + reg_write(pst_adpd, OSC_TRIM_32K_REG, osc_trim_32k); + reg_write(pst_adpd, OSC_TRIM_32M_REG, osc_trim_32m); + pst_adpd->osc_trim_open_enable = 0; + } + + if (val == 1) { + pr_info("adpd142_%s_enable.\n", __func__); + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_enable(pst_adpd->vdd_led); + cmd_parsing("0x31", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 1); + } else { + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_disable(pst_adpd->vdd_led); + + cmd_parsing("0x0", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 0); + } + mode = GET_USR_MODE(parse_data[0]); + + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + return size; +} + +/* GENERAL - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the adpd_mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_get_mode(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->adpd_mode); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for switching ADPD142 mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_set_mode(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + + memset(parse_data, 0, sizeof(parse_data)); + cmd_parsing(buf, 1, parse_data); + + ADPD142_info("Mode requested 0x%02x\n", parse_data[0]); + pr_info("adpd142_%s = data0[%02x], data1[%02x]\n", __func__, parse_data[0], parse_data[1]); + mode = GET_USR_MODE(parse_data[0]); + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + + return size; +} + +/** +This function is used for reading the register value +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_reg_read_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + ADPD142_dbg("Regval: 0x%4x\n", pst_adpd->sysfslastreadval); + return sprintf(buf, "0x%04x\n", pst_adpd->sysfslastreadval); +} + +/** +This function is used for writing the register for reading back +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_read_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short addr, cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 2, parse_data); + addr = parse_data[0]; + cnt = parse_data[1]; + + mutex_lock(&pst_adpd->mutex); + + pst_adpd->sysfs_I2C_regaddr = addr; + + ret = adpd142_sysfs_I2C_read(pst_adpd); + if (ret != (-1)) { + ADPD142_dbg("RegRead_Store: addr = 0x%04X,value = 0x%04X\n", + addr, ret); + pst_adpd->sysfslastreadval = ret; + } else { + ADPD142_dbg("%s Error\n", __func__); + pst_adpd->sysfslastreadval = (unsigned short) -1; + } + + mutex_unlock(&pst_adpd->mutex); + return size; +} + +void adpd_power_enable(struct adpd142_data *info, bool onoff) +{ + int ret; + + pr_info("%s: %s\n", __func__, onoff ? "on" : "off"); + + if (!info->vdd_led) { + info->vdd_led = regulator_get(&info->client->dev,"adpd_led"); + if (IS_ERR(info->vdd_led)) { + dev_err(&info->client->dev,"Regulator(adpd_led) get failed rc = %ld\n", PTR_ERR(info->vdd_led)); + return; + } + ret = regulator_set_voltage(info->vdd_led,3300000, 3300000); + if (ret) { + dev_err(&info->client->dev, + "regulator(vdd_led) set_vtg failed rc=%d\n", ret); + return; + } + } + if (!info->reg_adpd) { + info->reg_adpd = regulator_get(&info->client->dev,"adpd_vreg"); + if (IS_ERR(info->reg_adpd)) { + dev_err(&info->client->dev,"Regulator(adpd_vreg) get failed rc = %ld\n", PTR_ERR(info->reg_adpd)); + return; + } + } + + if (onoff) { + if (!regulator_is_enabled(info->vdd_led)) { + ret = regulator_enable(info->vdd_led); + if (ret) { + pr_err("%s: enable vdd_led failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] on is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already on.\n",__func__); + + if (!regulator_is_enabled(info->reg_adpd)) { + ret = regulator_enable(info->reg_adpd); + if (ret) { + pr_err("%s: enable adpd_vreg failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] on is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already on.\n",__func__); + + + } else { + if (regulator_is_enabled(info->vdd_led)) { + ret = regulator_disable(info->vdd_led); + if (ret) { + pr_err("%s: disable vdd_led failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] off is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already off.\n",__func__); + + if (regulator_is_enabled(info->reg_adpd)) { + ret = regulator_disable(info->reg_adpd); + if (ret) { + pr_err("%s: disable adpd_vreg failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] off is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already off.\n",__func__); + + } +} + +static int adpd_parse_dt(struct adpd142_data *data, struct device *dev) +{ + struct device_node *this_node= dev->of_node; + enum of_gpio_flags flags; + int rc; + + if (this_node == NULL) + return -ENODEV; + + data->hrm_int = of_get_named_gpio_flags(this_node,"adpd142,irq_gpio", 0, &flags); + pr_err("%s : get hrm_int(data->hrm_int)(%d) \n", __func__, data->hrm_int); + if (data->hrm_int < 0) { + pr_err("%s : get hrm_int(%d) error\n", __func__, data->hrm_int); + return -ENODEV; + } + + rc = gpio_request(data->hrm_int, "hrm_int"); + if (rc) { + pr_err("%s - failed to request hrm_int\n", __func__); + goto err_int_gpio_req; + } + + rc = gpio_direction_input(data->hrm_int); + if (rc) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_int_gpio_direction_input; + } + + return 0; +err_int_gpio_direction_input: + gpio_free(data->hrm_int); +err_int_gpio_req: + return rc; +} + + +/** +This function is used for writing a particular data to the register +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_write_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 3, parse_data); + if (parse_data[1] != 1) { + ADPD142_dbg("few many argument!!\n"); + goto err_reg_write_argument; + } + + pst_adpd->sysfs_I2C_regaddr = parse_data[0]; + cnt = parse_data[1]; + pst_adpd->sysfs_I2C_regval = parse_data[2]; + mutex_lock(&pst_adpd->mutex); + ret = adpd142_sysfs_I2C_write(pst_adpd); + if (ret == pst_adpd->sysfs_I2C_regval) { + ADPD142_dbg("Reg[0x%04x] = 0x%04x\n", + pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + } else { + ADPD142_dbg("Reg write error!!\n"); + } + + adpd142_update_config(pst_adpd); + + mutex_unlock(&pst_adpd->mutex); +err_reg_write_argument: + return size; +} + +/** +This function is used for getting the status of configuration +TBD +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_config_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "status of config thread\n"); +} + +/** +This function is used for wrting the configuration value to the register +0 - write the configuration data present in file to ADPD142 +1 - write the configuration data present in Array to ADPD142 +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_config_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == FRM_ARR) + adpd142_configuration(pst_adpd, FRM_ARR); + else if (parse_data[0] == FRM_FILE) + adpd142_configuration(pst_adpd, FRM_FILE); + else + ADPD142_dbg("set 1 to config\n"); + return size; +} + + +/** +This function is used for getting the status of adpd142 and driver +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_stat_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned int interrupts = atomic_read(&pst_adpd->stats.interrupts); + unsigned int wq_pending = atomic_read(&pst_adpd->stats.wq_pending); + unsigned int wq_schedule_time_peak_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_peak_usec); + unsigned int wq_schedule_time_last_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_last_usec); + unsigned int data_process_time_peak_usec = + atomic_read(&pst_adpd->stats.data_process_time_peak_usec); + unsigned int data_process_time_last_usec = + atomic_read(&pst_adpd->stats.data_process_time_last_usec); + + return sprintf(buf, "\ + interrupts : %u\n\ + wq_pending : %u\n\ + wq_schedule_time_peak_usec : %u\n\ + wq_schedule_time_avg_usec : %d\n\ + wq_schedule_time_last_usec : %u\n\ + data_process_time_peak_usec : %u\n\ + data_process_time_avg_usec : %d\n\ + data_process_time_last_usec : %u\n\ + fifo_requires_sync : %d\n\ + fifo bytes history : [%d %d %d %d]\n\ + ADPD142 driver version : %s\n\ + ADPD142 Release date : %s\n", + + interrupts, wq_pending, + wq_schedule_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.wq_schedule_time_avg_usec), + wq_schedule_time_last_usec, + data_process_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.data_process_time_avg_usec), + data_process_time_last_usec, + atomic_read(&pst_adpd->stats.fifo_requires_sync), + atomic_read(&pst_adpd->stats.fifo_bytes[0]), + atomic_read(&pst_adpd->stats.fifo_bytes[1]), + atomic_read(&pst_adpd->stats.fifo_bytes[2]), + atomic_read(&pst_adpd->stats.fifo_bytes[3]), + ADPD142_VERSION, + ADPD142_RELEASE_DATE); + +} + +#define ADPD142_STAT_RESET 1 + +/** +This function is used for wrting the adpd stat value to zero +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_stat_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == ADPD142_STAT_RESET) { + ADPD142_dbg("Resetting statistics\n"); + adpd_stat_reset(pst_adpd); + } + + return size; +} + +/** +array of sample attributes +*/ +static struct device_attribute sample_attributes[] = { + __ATTR(enable, 0664, sample_attr_get_enable, sample_attr_set_enable), +}; + + +/** +This function is used for creating sysfs attribute for sample +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + if (device_create_file(dev, sample_attributes + i)) + goto err_sysfs_interface_sample; + return 0; +err_sysfs_interface_sample: + for (; i >= 0; i--) + device_remove_file(dev, sample_attributes + i); + dev_err(dev, "%s:Unable to create interface\n", __func__); + return -1; +} + +/** +This function is used for removing sysfs attribute for sample +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + device_remove_file(dev, sample_attributes + i); +} + +/** +This function is used for creating sysfs attribute +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces(struct device *dev) +{ + return 0; +} + +/** +This function is used for removing sysfs attribute +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces(struct device *dev) +{ + +} + +/** +This function is used for registering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of this function +*/ +static s32 +adpd142_input_init_sample(struct adpd142_data *pst_adpd) +{ + int err; + pst_adpd->ptr_sample_inputdev = input_allocate_device(); + if (!pst_adpd->ptr_sample_inputdev) { + err = -ENOMEM; + dev_err(&pst_adpd->client->dev, "input dev allocation fail\n"); + goto err_sample_allocate; + } + + pst_adpd->ptr_sample_inputdev->name = MODULE_NAME_HRM; + input_set_drvdata(pst_adpd->ptr_sample_inputdev, pst_adpd); + + __set_bit(EV_MSC, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(EV_REL, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(MSC_RAW, pst_adpd->ptr_sample_inputdev->mscbit); + __set_bit(REL_X, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Y, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Z, pst_adpd->ptr_sample_inputdev->relbit); + + err = input_register_device(pst_adpd->ptr_sample_inputdev); + if (err) { + dev_err(&pst_adpd->client->dev, + "unable to register input dev %s\n", + pst_adpd->ptr_sample_inputdev->name); + goto err_sample_register_failed; + } + + err = sensors_create_symlink(&pst_adpd->ptr_sample_inputdev->dev.kobj, + pst_adpd->ptr_sample_inputdev->name); + if (err < 0) { + pr_err("[HRM] %s: create_symlink error\n", __func__); + goto err_sample_register_failed; + } + + return 0; +err_sample_register_failed: + input_free_device(pst_adpd->ptr_sample_inputdev); +err_sample_allocate: + return err; +} + +/** +This function is used for unregistering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup_sample(struct adpd142_data *pst_adpd) +{ + input_set_drvdata(pst_adpd->ptr_sample_inputdev, NULL); + input_unregister_device(pst_adpd->ptr_sample_inputdev); + input_free_device(pst_adpd->ptr_sample_inputdev); +} + +/** +This function is used for registering input event for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the function +*/ +static s32 +adpd142_input_init(struct adpd142_data *pst_adpd) +{ + return adpd142_input_init_sample(pst_adpd); +} + +/** +This function is used for unregistering input event done for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_input_cleanup_sample(pst_adpd); +} + +/** +This function is used for registering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the called function +*/ +static s32 +adpd142_sysfs_init(struct adpd142_data *pst_adpd) +{ + if (create_sysfs_interfaces(&pst_adpd->client->dev)) + goto err_sysfs_create_gen; + + if (create_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev)) + goto err_sysfs_create_sample; + + return 0; +err_sysfs_create_sample: + + remove_sysfs_interfaces(&pst_adpd->client->dev); +err_sysfs_create_gen: + return -1; +} + +/** +This function is used for unregistering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_sysfs_cleanup(struct adpd142_data *pst_adpd) +{ + remove_sysfs_interfaces(&pst_adpd->client->dev); + remove_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev); +} + +/** +This function is used for assigning initial assignment value to +ADPD142 data structure +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_struct_assign(struct adpd142_data *pst_adpd) +{ + pst_adpd->ptr_data_buffer = data_buffer; +} + +/** +This function is used for initializing ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@param id pointer point i2c device id +@return s32 status of the called function +*/ +static s32 +adpd142_initialization(struct adpd142_data *pst_adpd, + const struct i2c_device_id *id) +{ + int err = 0; + + if (adpd142_input_init(pst_adpd)) { + err = -1; + pr_err("%s err line %d\n", __func__, __LINE__); + goto err_input_init; + } + if (adpd142_sysfs_init(pst_adpd)) { + pr_err("%s err line %d\n", __func__, __LINE__); + err = -1; + goto err_sysfs_init; + } + + adpd142_struct_assign(pst_adpd); + + memset(&pst_adpd->stats, 0, sizeof(pst_adpd->stats)); + adpd_stat_reset(pst_adpd); + + INIT_WORK(&pst_adpd->work, adpd142_wq_handler); + pst_adpd->ptr_adpd142_wq_st = + create_workqueue("adpd142_wq"); + if (!pst_adpd->ptr_adpd142_wq_st) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_wq_creation_init; + } + + if (!pst_adpd->client->irq){ + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + pst_adpd->hrm_int = pst_adpd->client->irq; + pst_adpd->irq = pst_adpd->hrm_int; + + irq_set_irq_type(pst_adpd->irq, IRQ_TYPE_EDGE_RISING); + err = request_irq(pst_adpd->irq, adpd142_isr_handler, + IRQF_TRIGGER_RISING, dev_name(&pst_adpd->client->dev), + pst_adpd); + if (err) { + ADPD142_dbg("irq %d busy?\n", pst_adpd->irq); + goto err_work_queue_init; + } + disable_irq_nosync(pst_adpd->irq); + + pst_adpd->ptr_config = kzalloc(sizeof(struct adpd_platform_data), + GFP_KERNEL); + if (pst_adpd->ptr_config == NULL) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + + enable_irq(pst_adpd->irq); + adpd142_configuration(pst_adpd, 1); + adpd142_mode_switching(pst_adpd, 0); /* turn off : idle mode, temp*/ + pst_adpd->osc_trim_open_enable = 1; + + return 0; +//err_gpio_direction_input: + //gpio_free(pst_adpd->hrm_int); +err_work_queue_init: + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); +err_wq_creation_init: + +err_sysfs_init: + adpd142_input_cleanup(pst_adpd); +err_input_init: + return err; +} + +/** +This function is used for cleanup ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_initialization_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_mode_switching(pst_adpd, 0); + + free_irq(pst_adpd->irq, pst_adpd); + + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); + adpd142_sysfs_cleanup(pst_adpd); + adpd142_input_cleanup(pst_adpd); + kobject_uevent(&pst_adpd->client->dev.kobj, KOBJ_OFFLINE); +} + +#ifdef CONFIG_PM +static s32 +adpd142_i2c_suspend(struct device *dev) +{ + return 0; +} + +static s32 +adpd142_i2c_resume(struct device *dev) +{ + return 0; +} +#else +#define adpd142_i2c_resume NULL +#define adpd142_i2c_suspend NULL +#endif /* CONFIG_PM */ + + +/** +This function is used for i2c read communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param buf pointer point the read out data. +@return s32 status of the called function +*/ +static int +adpd142_i2c_read(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 *buf) +{ + int err; + int tries = 0; + int icnt = 0; + + struct i2c_msg msgs[] = { + { + .addr = pst_adpd->client->addr, + .flags = pst_adpd->client->flags & I2C_M_TEN, + .len = 1, + .buf = (s8 *)®_addr, + }, + { + .addr = pst_adpd->client->addr, + .flags = (pst_adpd->client->flags & I2C_M_TEN) | + I2C_M_RD, + .len = len * sizeof(unsigned short), + .buf = (s8 *)buf, + }, + }; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 2); + if (err != 2) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < I2C_RETRIES)); + + if (err != 2) { + dev_err(&pst_adpd->client->dev, "read transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + for (icnt = 0; icnt < len; icnt++) { + /*convert big endian to CPU format*/ + buf[icnt] = be16_to_cpu(buf[icnt]); + } + + return err; +} + +/** +This function is used for i2c write communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param data value to be written on the register. +@return s32 status of the called function +*/ +static int +adpd142_i2c_write(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 data) +{ + struct i2c_msg msgs[1]; + int err; + int tries = 0; + unsigned short data_to_write = cpu_to_be16(data); + char buf[4]; + + buf[0] = (s8) reg_addr; + memcpy(buf + 1, &data_to_write, sizeof(unsigned short)); + msgs[0].addr = pst_adpd->client->addr; + msgs[0].flags = pst_adpd->client->flags & I2C_M_TEN; + msgs[0].len = 1 + (1 * sizeof(unsigned short)); + msgs[0].buf = buf; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 1); + if (err != 1) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 1) && (++tries < I2C_RETRIES)); + + if (err != 1) { + dev_err(&pst_adpd->client->dev, "write transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + return err; +} + +/* set sysfs for hrm sensor */ +static ssize_t adpd142_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, CHIP_NAME); + + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t adpd142_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, VENDOR); + + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size); + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + pst_adpd->eol_test_is_enable = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + pst_adpd->eol_test_is_enable = 0; + else { + pr_debug("adpd142_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + pst_adpd->eol_test_status = 0; + pr_info("adpd142_%s = (%c), value(%u) \n", __func__, *buf, pst_adpd->eol_test_is_enable); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int err; + unsigned int buf_len; + + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (pst_adpd->eol_test_result != NULL) + kfree(pst_adpd->eol_test_result); + + pst_adpd->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_test_result == NULL) { + pr_err("adpd142_%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_test_result, buf, buf_len); + pr_info("adpd142_%s - result = %s, buf_len(%u)\n", __func__, pst_adpd->eol_test_result, buf_len); + pst_adpd->eol_test_status = 1; + + err = osc_trim_efs_register_save(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_save() empty(%d)\n", __func__, err); + } + + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_test_result == NULL) { + pr_info("adpd142_%s - data->eol_test_result is NULL\n", __func__); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("adpd142_%s - result = %s\n", __func__, pst_adpd->eol_test_result); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_status); +} + +static ssize_t adpd142_eol_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->eol_lib_ver != NULL) + kfree(pst_adpd->eol_lib_ver); + + pst_adpd->eol_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_lib_ver, buf, buf_len); + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return size; +} + +static ssize_t adpd142_eol_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_lib_ver == NULL) { + pr_info("%s - data->eol_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_lib_ver); +} + +static ssize_t adpd142_elf_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->elf_lib_ver != NULL) + kfree(pst_adpd->elf_lib_ver); + + pst_adpd->elf_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->elf_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->elf_lib_ver, buf, buf_len); + return size; +} + +static ssize_t adpd142_elf_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->elf_lib_ver == NULL) { + pr_info("%s - data->elf_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - elf_lib_ver = %s\n", __func__, pst_adpd->elf_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->elf_lib_ver); +} + +static DEVICE_ATTR(name, S_IRUGO, adpd142_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, adpd142_vendor_show, NULL); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(eol_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_eol_lib_ver_show, adpd142_eol_lib_ver_store); +static DEVICE_ATTR(elf_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_elf_lib_ver_show, adpd142_elf_lib_ver_store); +static DEVICE_ATTR(adpd_mode, S_IRUGO | S_IWUSR | S_IWGRP, + attr_get_mode, attr_set_mode); +static DEVICE_ATTR(adpd_reg_read, S_IRUGO | S_IWUSR | S_IWGRP, + attr_reg_read_get, attr_reg_read_set); +static DEVICE_ATTR(adpd_reg_write, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, attr_reg_write_set); +static DEVICE_ATTR(adpd_configuration, S_IRUGO | S_IWUSR | S_IWGRP, + attr_config_get, attr_config_set); +static DEVICE_ATTR(adpd_stat, S_IRUGO | S_IWUSR | S_IWGRP, + attr_stat_get, attr_stat_set); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_eol_lib_ver, + &dev_attr_elf_lib_ver, + &dev_attr_adpd_mode, + &dev_attr_adpd_reg_read, + &dev_attr_adpd_reg_write, + &dev_attr_adpd_configuration, + &dev_attr_adpd_stat, + NULL, +}; + +/** +This function is used for ADPD142 probe function +@param client pointer point to the linux i2c client structure +@param id pointer point to the linux i2c device id +@return s32 status of the probe function +*/ +static s32 +adpd_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id) +{ + struct adpd142_data *pst_adpd = NULL; + struct adpd_platform_data *pdata = NULL; + int err = 0; + unsigned short u16_regval = 0; + pr_err("%s, is called Success\n", __func__); + + + if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { + dev_err(&client->dev, "client not i2c capable\n"); + err = -ENODEV; + pr_err("[SENSOR] %s - exit_check_functionality.\n", __func__); + goto exit_check_functionality_failed; + } + + pst_adpd = kzalloc(sizeof(struct adpd142_data), GFP_KERNEL); + if (pst_adpd == NULL) { + err = -ENOMEM; + pr_err("[SENSOR] %s - exit_mem_allocate.\n", __func__); + goto exit_mem_allocate_failed; + } + + if(client->dev.of_node) { + pdata = devm_kzalloc (&client->dev , + sizeof(struct adpd_platform_data), GFP_KERNEL); + if(!pdata) { + dev_err(&client->dev, "Failed to allocate memory\n"); + if(pst_adpd) + kfree(pst_adpd); + return -ENOMEM; + } + } else + pdata = client->dev.platform_data; + if (!pdata) { + pr_err("%s: missing pdata!\n", __func__); + if(pst_adpd) + kfree(pst_adpd); + return err; + } + + err = adpd_parse_dt(pst_adpd, &client->dev); + if (err) { + pr_err("%s, parse dt fail\n", __func__); + goto adpd_parse_dt_err; + } + + mutex_init(&pst_adpd->mutex); + + pst_adpd->client = client; + pst_adpd->client->irq = gpio_to_irq(pst_adpd->hrm_int); + pst_adpd->ptr_config = pdata; + pst_adpd->read = adpd142_i2c_read; + pst_adpd->write = adpd142_i2c_write; + /*Need to allocate and assign data then use the below function */ + i2c_set_clientdata(client, (struct adpd142_data *)pst_adpd); + + adpd_power_enable(pst_adpd, 1); + msleep(30); + + /*chip ID verification */ + u16_regval = reg_read(pst_adpd, ADPD_CHIPID_ADDR); + + switch (u16_regval) { + case ADPD_CHIPID(0): + case ADPD_CHIPID(1): + case ADPD_CHIPID(2): + err = 0; + pr_err("chipID value is = 0x%x\n", u16_regval); + break; + default: + err = 1; + break; + }; + if (err) { + pr_err("[SENSOR] %s - exit_chipid_verification.\n", __func__); + goto exit_chipid_verification; + } + + //pst_adpd->dev = &client->dev; + pr_info("%s - start \n", __func__); + + if (adpd142_initialization(pst_adpd, id)){ + pr_err("[SENSOR] %s - exit_adpd142_init_exit.\n", __func__); + goto exit_adpd142_init; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(pst_adpd->dev, pst_adpd, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + pr_info("%s success\n", __func__); + +goto done; +hrm_sensor_register_failed: +exit_adpd142_init: +exit_chipid_verification: + mutex_destroy(&pst_adpd->mutex); +adpd_parse_dt_err: +exit_mem_allocate_failed: + kfree(pst_adpd); +exit_check_functionality_failed: + dev_err(&client->dev, "%s: Driver Init failed\n", ADPD_DEV_NAME); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/** +This function is used for ADPD142 remove function +@param client pointer point to the linux i2c client structure +@return s32 status of the remove function +*/ +static s32 +adpd_i2c_remove(struct i2c_client *client) +{ + struct adpd142_data *pst_adpd = i2c_get_clientdata(client); + ADPD142_dbg("%s\n", __func__); + adpd142_initialization_cleanup(pst_adpd); + kfree(pst_adpd->ptr_config); + kfree(pst_adpd); + pst_adpd = NULL; + + i2c_set_clientdata(client, NULL); + + gpio_free(pst_adpd->hrm_int); + return 0; +} + +#ifdef CONFIG_PM +/** + device power management operation structure +*/ +static const struct dev_pm_ops adpd_pm_ops = { + .resume = adpd142_i2c_resume, + .suspend = adpd142_i2c_suspend, +}; +#endif + +/** + This table tell which framework it supported + @brief the name has to get matched to the board configuration file setup + */ +/*static struct i2c_device_id adpd_id[] = { {ADPD_DEV_NAME, 0}, {} }; + +MODULE_DEVICE_TABLE(i2c, adpd_id);*/ + +static struct of_device_id adpd_match_table[] = { + { .compatible = "adpd142",}, + {}, +}; + +MODULE_DEVICE_TABLE(i2c, adpd_match_table); + +static const struct i2c_device_id adpd142_device_id[] = { + { "adpd142", 0 }, + { } +}; + +/** + i2c operation structure +*/ +struct i2c_driver adpd142_i2c_driver = { + .driver = { + .name = ADPD_DEV_NAME, + .owner = THIS_MODULE, +#ifdef CONFIG_PM + .pm = &adpd_pm_ops, +#endif + .of_match_table = adpd_match_table, + }, + .probe = adpd_i2c_probe, + .remove = adpd_i2c_remove, + .id_table = adpd142_device_id, +}; + +static struct i2c_client *i2c_client; + +#ifdef ADPD_AUTO_PROBE +static int +i2c_check_dev_attach(char *slave_name, unsigned short *slave_addrs, + unsigned short cnt) +{ + struct i2c_board_info info; + struct i2c_adapter *i2c_adapter = NULL; + int ret = 0; + unsigned short *scan_device = NULL; + unsigned short count = 0; + + /*need to check whether we need to free the memory */ + scan_device = kzalloc(sizeof(unsigned short) * (cnt + 2), GFP_KERNEL); + if (IS_ERR(scan_device)) { + ret = -ENOMEM; /* out of memory */ + goto i2c_check_attach_mem_fail; + } + + memset(scan_device, '\0', sizeof(unsigned short) * (cnt + 2)); + for (count = 0; count < cnt; count++) { + *(scan_device + count) = *(slave_addrs + count); + ADPD142_info("list of slave addr = 0x%x\n", + *(scan_device + count)); + } + *(scan_device + count) = I2C_CLIENT_END; + + count = 0; + + do { + i2c_adapter = i2c_get_adapter(count); + if (i2c_adapter != NULL) { + memset(&info, 0, sizeof(struct i2c_board_info)); + strlcpy(info.type, slave_name /*"adpd142" */ , + I2C_NAME_SIZE); + /*need to check i2c_new_device instead of + i2c_new_probed_device*/ + i2c_client = + i2c_new_probed_device(i2c_adapter, &info, + (const unsigned short *) + scan_device, NULL); + if (i2c_client != NULL) { + ADPD142_dbg("I2C busnum - %d\n", count); + ADPD142_dbg( + "device is attached to the bus i2c-%d\n", + count); + } else { + + } + i2c_put_adapter(i2c_adapter); + } else { + ADPD142_info("Not valid adapter\n"); + } + count++; + } while (i2c_client == NULL && count < 20); + + kfree(scan_device); + + if (i2c_client == NULL) { + /*No such device or address */ + return -ENXIO; + } else { + return 0; + } + +i2c_check_attach_mem_fail: + return ret; +} +#endif + +/** +This function is get called when the module is inserted +@return inti status of the adpd142_multisensor_init +*/ +static int __init +adpd142_multisensor_init(void) +{ +#ifdef ADPD_AUTO_PROBE + ADPD142_dbg("%s\n", __func__); + unsigned short addr[] = { ADPD142_SLAVE_ADDR }; + if (!i2c_check_dev_attach(ADPD_DEV_NAME, addr, 1)) { + return i2c_add_driver(&adpd142_i2c_driver); + } else { + pr_err("i2c bus connect error\n"); + return -1; + } +#else + ADPD142_dbg("%s\n", __func__); + return i2c_add_driver(&adpd142_i2c_driver); +#endif +} + +/** +This function is get called when the module is removed +@return void +*/ +static void __exit +adpd142_multisensor_exit(void) +{ + ADPD142_dbg("%s\n", __func__); + i2c_del_driver(&adpd142_i2c_driver); + if (i2c_client) + i2c_unregister_device(i2c_client); +} + +module_init(adpd142_multisensor_init); +module_exit(adpd142_multisensor_exit); +MODULE_DESCRIPTION(); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR(""); diff --git a/drivers/sensorhub/stm/adpd142.h b/drivers/sensorhub/stm/adpd142.h new file mode 100644 index 000000000000..31db0b979ea7 --- /dev/null +++ b/drivers/sensorhub/stm/adpd142.h @@ -0,0 +1,132 @@ +/** +@file adpd142.h +@brief ADPD142 - Low level driver Header 'H' File +*/ +#ifndef _ADPD142_H_ +#define _ADPD142_H_ + +#include /* module initialization api */ +#include /* module functionality */ +#include /* i2c related functionality */ +#include +#include /* device Power Management functionality */ +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +/** + @brief ADPD142 Slave address +*/ +#define ADPD142_SLAVE_ADDR 0x64 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID_0 0x0016 +/** + @brief ADPD142 ChipID 1 +*/ +#define ADPD_CHIPID_1 0x0116 +/** + @brief ADPD142 ChipID 2 +*/ +#define ADPD_CHIPID_2 0x0216 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID(id) ADPD_CHIPID_##id + +/*ADPD142 REGISTER ADDRESS*/ +/** + @brief ADPD142 Interrupt Status Register +*/ +#define ADPD_INT_STATUS_ADDR 0x0 +/** + @brief ADPD142 Interrupt Mask Register +*/ +#define ADPD_INT_MASK_ADDR 0x1 +/** + @brief ADPD142 ChipID register +*/ +#define ADPD_CHIPID_ADDR 0x8 +/** + @brief ADPD142 Operating mode Register +*/ +#define ADPD_OP_MODE_ADDR 0x10 +/** + @brief ADPD142 Operating Mode Configuration register +*/ +#define ADPD_OP_MODE_CFG_ADDR 0x11 +/** + @brief ADPD142 Gesture Control Register +*/ +#define ADPD_GEST_CTRL_ADDR 0x27 +/** + @brief ADPD142 Gesture Threshold Register +*/ +#define ADPD_GEST_THRESH_ADDR 0x28 +/** + @brief ADPD142 Gesture Size Register +*/ +#define ADPD_GEST_SIZE_ADDR 0x29 +/** + @brief ADPD142 Proximity ON1 Threshold register +*/ +#define ADPD_PROX_ON_TH1_ADDR 0x2A +/** + @brief ADPD142 proximity OFF1 Threshold register +*/ +#define ADPD_PROX_OFF_TH1_ADDR 0x2B +/** + @brief ADPD142 Proximity ON2 Threshold register +*/ +#define ADPD_PROX_ON_TH2_ADDR 0x2C +/** + @brief ADPD142 Proximity OFF2 Threshold register +*/ +#define ADPD_PROX_OFF_TH2_ADDR 0x2D +/** + @brief ADPD142 Test PD register +*/ +#define ADPD_TEST_PD_ADDR 0x52 +/** + @brief ADPD142 Access control register +*/ +#define ADPD_ACCESS_CTRL_ADDR 0x5F +/** + @brief ADPD142 FIFO register +*/ +#define ADPD_DATA_BUFFER_ADDR 0x60 + + +/** + @brief ADPD142 maximum array size of Platform data +*/ +#define MAX_CONFIG_REG_CNT 72 +/** + @brief ADPD142 Platform Data +*/ +struct adpd_platform_data { + unsigned short config_size; + unsigned int config_data[MAX_CONFIG_REG_CNT]; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif diff --git a/drivers/sensorhub/stm/factory/accel_mpu6500.c b/drivers/sensorhub/stm/factory/accel_mpu6500.c index 0bbff8901fac..dc44a58c3ecb 100755 --- a/drivers/sensorhub/stm/factory/accel_mpu6500.c +++ b/drivers/sensorhub/stm/factory/accel_mpu6500.c @@ -113,19 +113,19 @@ int set_accel_cal(struct ssp_data *data) static int enable_accel_for_cal(struct ssp_data *data) { - u8 uBuf[4] = { 0, }; + u8 uBuf[9] = { 0, }; s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); memcpy(&uBuf[0], &dMsDelay, 4); if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { if (get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]) != 10) { send_instruction(data, CHANGE_DELAY, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); return SUCCESS; } } else { send_instruction(data, ADD_SENSOR, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); } return FAIL; @@ -133,14 +133,14 @@ static int enable_accel_for_cal(struct ssp_data *data) static void disable_accel_for_cal(struct ssp_data *data, int iDelayChanged) { - u8 uBuf[4] = { 0, }; + u8 uBuf[9] = { 0, }; s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); memcpy(&uBuf[0], &dMsDelay, 4); if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { if (iDelayChanged) send_instruction(data, CHANGE_DELAY, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); } else { send_instruction(data, REMOVE_SENSOR, ACCELEROMETER_SENSOR, uBuf, 4); @@ -158,6 +158,7 @@ static int accel_do_calibrate(struct ssp_data *data, int iEnable) data->accelcal.x = 0; data->accelcal.y = 0; data->accelcal.z = 0; + set_accel_cal(data); iRet = enable_accel_for_cal(data); msleep(300); diff --git a/drivers/sensorhub/stm/factory/barcode_emul_tmg3992.c b/drivers/sensorhub/stm/factory/barcode_emul_tmg3992.c index b54d6aa00427..cd0aa6747f82 100755 --- a/drivers/sensorhub/stm/factory/barcode_emul_tmg3992.c +++ b/drivers/sensorhub/stm/factory/barcode_emul_tmg3992.c @@ -89,7 +89,6 @@ void mobeam_write(struct ssp_data *data, int type, u8* u_buf) return; } - data->uInstFailCnt = 0; pr_info("[SSP] %s command = 0x%X\n", __func__, command); } @@ -196,14 +195,14 @@ static ssize_t barcode_led_status_show(struct device *dev, struct device_attribute *attr, char *buf) { - return snprintf(buf, sizeof(buf), "%u\n", Is_beaming); + return snprintf(buf, PAGE_SIZE, "%u\n", Is_beaming); } static ssize_t barcode_ver_check_show(struct device *dev, struct device_attribute *attr, char *buf) { - return snprintf(buf, sizeof(buf), "%u\n", 15); + return snprintf(buf, PAGE_SIZE, "%u\n", 15); } static ssize_t barcode_emul_test_store(struct device *dev, @@ -234,7 +233,7 @@ static ssize_t barcode_emul_test_store(struct device *dev, test_data[3], test_data[4], test_data[5]); mobeam_write(data, registerset, test_data); } else if (buf[0] == DATA_TEST) { - memcpy(test_data, &barcode_data[1], 128); + memcpy(test_data, &barcode_data[1], 13); pr_info("[SSP] %s, DATA_TEST - 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X\n", __func__, test_data[0], test_data[1], test_data[2], test_data[3], test_data[4], test_data[5]); diff --git a/drivers/sensorhub/stm/factory/gesture_tmg399x.c b/drivers/sensorhub/stm/factory/gesture_tmg399x.c index 3be4f9212071..f2d4a8de1ce4 100755 --- a/drivers/sensorhub/stm/factory/gesture_tmg399x.c +++ b/drivers/sensorhub/stm/factory/gesture_tmg399x.c @@ -85,6 +85,9 @@ static ssize_t ir_current_show(struct device *dev, { struct ssp_data *data = dev_get_drvdata(dev); + if(data->uIr_Current == 0) + data->uIr_Current = DEFUALT_IR_CURRENT; + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", __func__, data->uIr_Current); diff --git a/drivers/sensorhub/stm/factory/gyro_mpu6500.c b/drivers/sensorhub/stm/factory/gyro_mpu6500.c index 6bdf5706a9a4..fdbfe515eccd 100755 --- a/drivers/sensorhub/stm/factory/gyro_mpu6500.c +++ b/drivers/sensorhub/stm/factory/gyro_mpu6500.c @@ -408,10 +408,9 @@ ssize_t mpu6500_gyro_selftest(char *buf, struct ssp_data *data) } data->uTimeOutCnt = 0; - - pr_err("[SSP]%d %d %d %d %d %d %d %d %d %d %d %d", chTempBuf[0], chTempBuf[1], - chTempBuf[2], chTempBuf[3], chTempBuf[4], chTempBuf[5], chTempBuf[6], - chTempBuf[7], chTempBuf[8], chTempBuf[9], chTempBuf[10], chTempBuf[11]); + pr_err("[SSP]%d %d %d %d %d %d %d %d %d %d %d %d", chTempBuf[0], chTempBuf[1], + chTempBuf[2], chTempBuf[3], chTempBuf[4], chTempBuf[5], chTempBuf[6], + chTempBuf[7], chTempBuf[8], chTempBuf[9], chTempBuf[10], chTempBuf[11]); initialized = chTempBuf[0]; shift_ratio[0] = (s16)((chTempBuf[2] << 8) + @@ -455,6 +454,12 @@ ssize_t mpu6500_gyro_selftest(char *buf, struct ssp_data *data) pr_info("[SSP] avg %+8ld %+8ld %+8ld (LSB)\n", avg[0], avg[1], avg[2]); pr_info("[SSP] rms %+8ld %+8ld %+8ld (LSB)\n", rms[0], rms[1], rms[2]); + if (total_count == 0) { + pr_err("[SSP] %s, total_count is 0. goto exit\n", __func__); + ret_val = 2; + goto exit; + } + if (hw_result < 0) { pr_err("[SSP] %s - hw selftest fail(%d), sw selftest skip\n", __func__, hw_result); diff --git a/drivers/sensorhub/stm/factory/magnetic_ak09911.c b/drivers/sensorhub/stm/factory/magnetic_ak09911.c index 2938eb6c82e8..675ccf9986c0 100755 --- a/drivers/sensorhub/stm/factory/magnetic_ak09911.c +++ b/drivers/sensorhub/stm/factory/magnetic_ak09911.c @@ -21,8 +21,8 @@ #define VENDOR_AK "AKM" #define CHIP_ID_AK "AK09911C" -#define GM_DATA_SPEC_MIN -6500 -#define GM_DATA_SPEC_MAX 6500 +#define GM_DATA_SPEC_MIN -1600 +#define GM_DATA_SPEC_MAX 1600 #define GM_SELFTEST_X_SPEC_MIN -30 #define GM_SELFTEST_X_SPEC_MAX 30 @@ -43,18 +43,18 @@ static ssize_t magnetic_name_show(struct device *dev, return sprintf(buf, "%s\n", CHIP_ID_AK); } -static int check_data_spec(struct ssp_data *data) +static int check_data_spec(struct ssp_data *data, u8 uSensorType) { - if ((data->buf[GEOMAGNETIC_RAW].x == 0) && - (data->buf[GEOMAGNETIC_RAW].y == 0) && - (data->buf[GEOMAGNETIC_RAW].z == 0)) + if ((data->buf[uSensorType].x == 0) && + (data->buf[uSensorType].y == 0) && + (data->buf[uSensorType].z == 0)) return FAIL; - else if ((data->buf[GEOMAGNETIC_RAW].x > GM_DATA_SPEC_MAX) - || (data->buf[GEOMAGNETIC_RAW].x < GM_DATA_SPEC_MIN) - || (data->buf[GEOMAGNETIC_RAW].y > GM_DATA_SPEC_MAX) - || (data->buf[GEOMAGNETIC_RAW].y < GM_DATA_SPEC_MIN) - || (data->buf[GEOMAGNETIC_RAW].z > GM_DATA_SPEC_MAX) - || (data->buf[GEOMAGNETIC_RAW].z < GM_DATA_SPEC_MIN)) + else if ((data->buf[uSensorType].x > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].x < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].y > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].y < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].z > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].z < GM_DATA_SPEC_MIN)) return FAIL; else return SUCCESS; @@ -98,7 +98,7 @@ static ssize_t raw_data_show(struct device *dev, static ssize_t raw_data_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { - char chTempbuf[4] = { 0 }; + char chTempbuf[9] = { 0, }; int iRet; int64_t dEnable; int iRetries = 50; @@ -116,11 +116,11 @@ static ssize_t raw_data_store(struct device *dev, data->buf[GEOMAGNETIC_RAW].z = 0; send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, - chTempbuf, 4); + chTempbuf, 9); do { msleep(20); - if (check_data_spec(data) == SUCCESS) + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) break; } while (--iRetries); @@ -145,9 +145,10 @@ static ssize_t adc_data_read(struct device *dev, struct device_attribute *attr, char *buf) { bool bSuccess = false; - u8 chTempbuf[4] = { 0 }; + u8 chTempbuf[9] = { 0, }; s16 iSensorBuf[3] = {0, }; int iRetries = 10; + bool add_mag = false; struct ssp_data *data = dev_get_drvdata(dev); s32 dMsDelay = 20; memcpy(&chTempbuf[0], &dMsDelay, 4); @@ -156,13 +157,15 @@ static ssize_t adc_data_read(struct device *dev, data->buf[GEOMAGNETIC_SENSOR].y = 0; data->buf[GEOMAGNETIC_SENSOR].z = 0; - if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR))) + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR))) { send_instruction(data, ADD_SENSOR, GEOMAGNETIC_SENSOR, - chTempbuf, 4); + chTempbuf, 9); + add_mag = true; + } do { msleep(60); - if (check_data_spec(data) == SUCCESS) + if (check_data_spec(data, GEOMAGNETIC_SENSOR) == SUCCESS) break; } while (--iRetries); @@ -173,7 +176,7 @@ static ssize_t adc_data_read(struct device *dev, iSensorBuf[1] = data->buf[GEOMAGNETIC_SENSOR].y; iSensorBuf[2] = data->buf[GEOMAGNETIC_SENSOR].z; - if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR))) + if (add_mag == true) send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_SENSOR, chTempbuf, 4); @@ -259,9 +262,9 @@ static ssize_t magnetic_check_cntl(struct device *dev, static ssize_t magnetic_get_selftest(struct device *dev, struct device_attribute *attr, char *buf) { - s8 iResult[4] = {-1, }; + s8 iResult[4] = {-1, -1, -1, -1}; char bufSelftset[22] = {0, }; - char bufAdc[4] = {0, }; + char bufAdc[9] = {0, }; s16 iSF_X = 0, iSF_Y = 0, iSF_Z = 0; s16 iADC_X = 0, iADC_Y = 0, iADC_Z = 0; s32 dMsDelay = 20; @@ -356,11 +359,11 @@ static ssize_t magnetic_get_selftest(struct device *dev, if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_RAW))) send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, - bufAdc, 4); + bufAdc, 9); do { msleep(60); - if (check_data_spec(data) == SUCCESS) + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) break; } while (--iSpecOutRetries); @@ -379,7 +382,8 @@ static ssize_t magnetic_get_selftest(struct device *dev, iADC_X, iADC_Y, iADC_Z, iSpecOutRetries); exit: - pr_info("[SSP] %s out\n", __func__); + pr_info("[SSP] %s out. Result = %d %d %d %d\n", + __func__, iResult[0], iResult[1], iResult[2], iResult[3]); return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", iResult[0], iResult[1], iSF_X, iSF_Y, iSF_Z, @@ -420,7 +424,7 @@ static ssize_t raw_data_logging_store(struct device *dev, if (dEnable) { ssp_dbg("[SSP]: %s - add %u, New = %dns\n", - __func__, 1 << GEOMAGNETIC_SENSOR, SENSOR_NS_DELAY_FASTEST); + __func__, 1 << GEOMAGNETIC_SENSOR, dMsDelay); iRet = send_instruction(data, GET_LOGGING, GEOMAGNETIC_SENSOR, uBuf, 4); if (iRet == SUCCESS) { diff --git a/drivers/sensorhub/stm/factory/mcu_atuc128l5har.c b/drivers/sensorhub/stm/factory/mcu_atuc128l5har.c index 247e0fb80c52..50a24b838604 100755 --- a/drivers/sensorhub/stm/factory/mcu_atuc128l5har.c +++ b/drivers/sensorhub/stm/factory/mcu_atuc128l5har.c @@ -245,14 +245,14 @@ ssize_t mcu_sleep_factorytest_show(struct device *dev, exit: ssp_dbg("[SSP]: %s Result\n" - "accel %d,%d,%d\n" - "gyro %d,%d,%d\n" - "mag %d,%d,%d\n" - "baro %d,%d\n" - "ges %d,%d,%d,%d\n" - "prox %u,%u\n" - "temp %d,%d,%d\n" - "light %u,%u,%u,%u,%u,%u\n", __func__, + "[SSP] accel %d,%d,%d\n" + "[SSP] gyro %d,%d,%d\n" + "[SSP] mag %d,%d,%d\n" + "[SSP] baro %d,%d\n" + "[SSP] ges %d,%d,%d,%d\n" + "[SSP] prox %u,%u\n" + "[SSP] temp %d,%d,%d\n" + "[SSP] light %u,%u,%u,%u,%u,%u\n", __func__, fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, diff --git a/drivers/sensorhub/stm/factory/pressure_bmp182.c b/drivers/sensorhub/stm/factory/pressure_bmp182.c index b360529745b8..d655b80d6ba7 100755 --- a/drivers/sensorhub/stm/factory/pressure_bmp182.c +++ b/drivers/sensorhub/stm/factory/pressure_bmp182.c @@ -14,7 +14,11 @@ */ #include "../ssp.h" +#if defined (CONFIG_SEC_KACTIVE_PROJECT) && !defined (CONFIG_MACH_KACTIVELTE_DCM) +#define LPS25H_REV 0 +#else #define LPS25H_REV 3 +#endif #define VENDOR "BOSCH" #define CHIP_ID "BMP180" @@ -34,19 +38,16 @@ static ssize_t sea_level_pressure_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { struct ssp_data *data = dev_get_drvdata(dev); - int iNewSeaLevelPressure; - sscanf(buf, "%d", &iNewSeaLevelPressure); + sscanf(buf, "%d", &data->sealevelpressure); - if (iNewSeaLevelPressure == 0) { + if (data->sealevelpressure == 0) { pr_info("%s, our->temperature = 0\n", __func__); - iNewSeaLevelPressure = -1; + data->sealevelpressure = -1; } - input_report_rel(data->pressure_input_dev, REL_DIAL, - iNewSeaLevelPressure); - input_sync(data->pressure_input_dev); - + pr_info("[SSP] %s sea_level_pressure = %d\n", + __func__, data->sealevelpressure); return size; } diff --git a/drivers/sensorhub/stm/factory/prox_max88920.c b/drivers/sensorhub/stm/factory/prox_max88920.c index 3e826489c475..805312a0ea98 100755 --- a/drivers/sensorhub/stm/factory/prox_max88920.c +++ b/drivers/sensorhub/stm/factory/prox_max88920.c @@ -32,12 +32,13 @@ #define LDI_GRAY '1' #define LDI_WHITE '2' -#define DEFUALT_HIGH_THRESHOLD 60 -#define DEFUALT_LOW_THRESHOLD 45 -#define TBD_HIGH_THRESHOLD 60 -#define TBD_LOW_THRESHOLD 45 -#define WHITE_HIGH_THRESHOLD 60 -#define WHITE_LOW_THRESHOLD 45 +#if defined(CONFIG_SEC_KACTIVE_PROJECT) +#define CAL_SKIP_ADC 52 +#define CAL_FAIL_ADC 80 +#else +#define CAL_SKIP_ADC 55 +#define CAL_FAIL_ADC 90 +#endif /*************************************************************************/ /* factory Sysfs */ @@ -69,7 +70,7 @@ static ssize_t proximity_avg_show(struct device *dev, static ssize_t proximity_avg_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { - char chTempbuf[4] = { 0 }; + char chTempbuf[9] = { 0, }; int iRet; int64_t dEnable; struct ssp_data *data = dev_get_drvdata(dev); @@ -82,7 +83,7 @@ static ssize_t proximity_avg_store(struct device *dev, return iRet; if (dEnable) { - send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); data->bProximityRawEnabled = true; } else { send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, @@ -96,13 +97,13 @@ static ssize_t proximity_avg_store(struct device *dev, static u16 get_proximity_rawdata(struct ssp_data *data) { u16 uRowdata = 0; - char chTempbuf[4] = { 0 }; + char chTempbuf[9] = { 0, }; s32 dMsDelay = 20; memcpy(&chTempbuf[0], &dMsDelay, 4); if (data->bProximityRawEnabled == false) { - send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); msleep(200); uRowdata = data->buf[PROXIMITY_RAW].prox[0]; send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, @@ -132,14 +133,25 @@ static ssize_t proximity_raw_data_show(struct device *dev, static int get_proximity_threshold(struct ssp_data *data) { - if (data->uProxCanc <= (data->uProxLoThresh_default >> 1)) - return FAIL; - - data->uProxHiThresh = data->uProxHiThresh_default - + (data->uProxCanc - (data->uProxLoThresh_default >> 1)); - data->uProxLoThresh = data->uProxLoThresh_default - + (data->uProxCanc - (data->uProxLoThresh_default >> 1)); + if (data->uCrosstalk < CAL_SKIP_ADC) { + data->uProxCanc = 0; + data->uProxCalResult = 2; + pr_info("[SSP] crosstalk < %d, skip calibration\n", CAL_SKIP_ADC); + } else if (data->uCrosstalk <= CAL_FAIL_ADC) { + data->uProxCanc = data->uCrosstalk * 5 / 10; + data->uProxCalResult = 1; + } else { + data->uProxCanc = 0; + data->uProxCalResult = 0; + pr_info("[SSP] crosstalk > %d, calibration failed\n", CAL_FAIL_ADC); + return ERROR; + } + data->uProxHiThresh = data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = data->uProxLoThresh_default + data->uProxCanc; + pr_info("[SSP] %s - crosstalk_offset = %u(%u), HI_THD = %u, LOW_THD = %u\n", + __func__, data->uProxCanc, data->uCrosstalk, + data->uProxHiThresh, data->uProxLoThresh); return SUCCESS; } @@ -233,8 +245,13 @@ int proximity_open_calibration(struct ssp_data *data) iRet = -EIO; } - if (data->uProxCanc != 0) /*If there is an offset cal data. */ - get_proximity_threshold(data); + if (data->uProxCanc != 0) { + /*If there is an offset cal data. */ + data->uProxHiThresh = + data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = + data->uProxLoThresh_default + data->uProxCanc; + } pr_info("%s: proximity ps_canc = %d, ps_thresh hi - %d lo - %d\n", __func__, data->uProxCanc, data->uProxHiThresh, @@ -244,8 +261,6 @@ int proximity_open_calibration(struct ssp_data *data) set_fs(old_fs); exit: - set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); - return iRet; } @@ -256,15 +271,17 @@ static int proximity_store_cancelation(struct ssp_data *data, int iCalCMD) struct file *cancel_filp = NULL; if (iCalCMD) { - data->uProxCanc = get_proximity_rawdata(data); - get_proximity_threshold(data); + data->uCrosstalk = get_proximity_rawdata(data); + iRet = get_proximity_threshold(data); } else { data->uProxHiThresh = data->uProxHiThresh_default; data->uProxLoThresh = data->uProxLoThresh_default; data->uProxCanc = 0; } - set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); + if (iRet != ERROR) + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); old_fs = get_fs(); set_fs(KERNEL_DS); @@ -295,18 +312,12 @@ static ssize_t proximity_cancel_show(struct device *dev, struct device_attribute *attr, char *buf) { struct ssp_data *data = dev_get_drvdata(dev); - unsigned int uProxCanc = data->uProxCanc; - - if (uProxCanc > (data->uProxLoThresh_default >> 1)) - uProxCanc = uProxCanc - (data->uProxLoThresh_default >> 1); - else - uProxCanc = 0; ssp_dbg("[SSP]: uProxThresh : hi : %u lo : %u, uProxCanc = %u\n", - data->uProxHiThresh, data->uProxLoThresh, uProxCanc); + data->uProxHiThresh, data->uProxLoThresh, data->uProxCanc); - return sprintf(buf, "%u,%u,%u\n", uProxCanc, data->uProxHiThresh, - data->uProxLoThresh); + return sprintf(buf, "%u,%u,%u\n", data->uProxCanc, + data->uProxHiThresh, data->uProxLoThresh); } static ssize_t proximity_cancel_store(struct device *dev, @@ -413,6 +424,15 @@ static ssize_t proximity_thresh_low_store(struct device *dev, return size; } +static ssize_t proximity_cancel_pass_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s, %u\n", __func__, data->uProxCalResult); + return snprintf(buf, PAGE_SIZE, "%u\n", data->uProxCalResult); +} + static ssize_t barcode_emul_enable_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -454,6 +474,7 @@ static DEVICE_ATTR(thresh_high, S_IRUGO | S_IWUSR | S_IWGRP, proximity_thresh_high_show, proximity_thresh_high_store); static DEVICE_ATTR(thresh_low, S_IRUGO | S_IWUSR | S_IWGRP, proximity_thresh_low_show, proximity_thresh_low_store); +static DEVICE_ATTR(prox_offset_pass, S_IRUGO, proximity_cancel_pass_show, NULL); static struct device_attribute *prox_attrs[] = { &dev_attr_vendor, @@ -465,6 +486,7 @@ static struct device_attribute *prox_attrs[] = { &dev_attr_thresh_high, &dev_attr_thresh_low, &dev_attr_barcode_emul_en, + &dev_attr_prox_offset_pass, NULL, }; diff --git a/drivers/sensorhub/stm/factory/temphumidity_shtc1.c b/drivers/sensorhub/stm/factory/temphumidity_shtc1.c index 0d5a2c6c6fa7..c2065a0874c4 100755 --- a/drivers/sensorhub/stm/factory/temphumidity_shtc1.c +++ b/drivers/sensorhub/stm/factory/temphumidity_shtc1.c @@ -52,12 +52,18 @@ #define MODEL_NAME "SM-G900Z" #elif defined(CONFIG_MACH_KLTE_CMCC) #define MODEL_NAME "SM-G9008V" +#elif defined(CONFIG_MACH_KLTE_CMCCDUOS) +#define MODEL_NAME "SM-G9008W" +#elif defined(CONFIG_MACH_KLTE_CU) +#define MODEL_NAME "SM-G9006V" +#elif defined(CONFIG_MACH_KLTE_CUDUOS) +#define MODEL_NAME "SM-G9006W" #elif defined(CONFIG_MACH_KLTE_CTC) #define MODEL_NAME "SM-G9009W" -#elif defined(CONFIG_MACH_KLTE_CAN) -#define MODEL_NAME "SM-G900W8" #elif defined(CONFIG_MACH_K3GDUOS_CTC) #define MODEL_NAME "SM-G9009D" +#elif defined(CONFIG_MACH_KLTE_CAN) +#define MODEL_NAME "SM-G900W8" #elif defined(CONFIG_MACH_KLTE_SKT) #define MODEL_NAME "SM-G900S" #elif defined(CONFIG_MACH_KLTE_KTT) diff --git a/drivers/sensorhub/stm/max86900.c b/drivers/sensorhub/stm/max86900.c index 27d732c5efa8..3283e96236c3 100755 --- a/drivers/sensorhub/stm/max86900.c +++ b/drivers/sensorhub/stm/max86900.c @@ -1,668 +1,1462 @@ -/** - * Copyright (C) 2012 Maxim Integrated Products - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published - * by the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - - * You should have received a copy of the GNU Lesser General Public License - * along with this program. If not, see . - */ - -#include "max86900.h" -#ifdef CONFIG_OF -#include -#endif - -#define MAX86900_I2C_RETRY_DELAY 10 -#define MAX86900_I2C_MAX_RETRIES 5 -#define MAX86900_COUNT_MAX 65535 -#define SENSOR_MIN_ABS 0 -#define SENSOR_MAX_ABS 65535 -#define MAX86900_WHOAMI_REG 0xFF -#define MAX86900_WHOAMI 0x0B -#define MODULE_NAME_HRM "hrm_sensor" -#define CHIP_NAME "MAX86900" -#define VENDOR "MAXIM" - -/* I2C function */ -static int max86900_write_reg(struct max86900_device_data *device, - u8 reg_addr, u8 data) -{ - int err; - int tries = 0; - u8 buffer[2] = { reg_addr, data }; - struct i2c_msg msgs[] = { - { - .addr = device->client->addr, - .flags = device->client->flags & I2C_M_TEN, - .len = 2, - .buf = buffer, - }, - }; - - do { - mutex_lock(&device->i2clock); - err = i2c_transfer(device->client->adapter, msgs, 1); - mutex_unlock(&device->i2clock); - if (err != 1) - msleep_interruptible(MAX86900_I2C_RETRY_DELAY); - - } while ((err != 1) && (++tries < MAX86900_I2C_MAX_RETRIES)); - - if (err != 1) { - pr_err("%s -write transfer error\n", __func__); - err = -EIO; - return err; - } - - return 0; -} - -static int max86900_read_reg(struct max86900_device_data *device, - u8 *buffer, int length) -{ - int err = -1; - int tries = 0; // # of attempts to read the device - - struct i2c_msg msgs[] = { - { - .addr = device->client->addr, - .flags = device->client->flags & I2C_M_TEN, - .len = 1, - .buf = buffer, - }, - { - .addr = device->client->addr, - .flags = (device->client->flags & I2C_M_TEN) | I2C_M_RD, - .len = length, - .buf = buffer, - }, - }; - - do { - mutex_lock(&device->i2clock); - err = i2c_transfer(device->client->adapter, msgs, 2); - mutex_unlock(&device->i2clock); - if (err != 2) - msleep_interruptible(MAX86900_I2C_RETRY_DELAY); - } while ((err != 2) && (++tries < MAX86900_I2C_MAX_RETRIES)); - - if (err != 2) { - pr_err("%s -read transfer error\n", __func__); - err = -EIO; - } else - err = 0; - - return err; -} - -/* Device Control */ -static int max86900_init_device(struct max86900_device_data *device) -{ - int err; - u8 recvData; - - err = max86900_write_reg(device, MAX86900_MODE_CONFIGURATION, 0x40); - if (err != 0) { - pr_err("%s - error sw shutdown device!\n", __func__); - return -EIO; - } - - //Interrupt Clear - recvData = MAX86900_INTERRUPT_STATUS; - if ((err = max86900_read_reg(device, &recvData, 1)) != 0) { - pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", - __func__, err, recvData); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_MODE_CONFIGURATION, 0x83); - if (err != 0) { - pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_INTERRUPT_ENABLE, 0x10); - if (err != 0) { - pr_err("%s - error initializing MAX86900_INTERRUPT_ENABLE!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_SPO2_CONFIGURATION, 0x47); - if (err != 0) { - pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_LED_CONFIGURATION, 0x00); - if (err != 0) { - pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", - __func__); - return -EIO; - } - - pr_info("%s done\n", __func__); - - return 0; -} - -static int max86900_enable(struct max86900_device_data *device) -{ - int err; - device->led = 0; - device->sample_cnt = 0; - - mutex_lock(&device->activelock); - err = max86900_write_reg(device, MAX86900_LED_CONFIGURATION, 0x00); - if (err != 0) { - pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_FIFO_WRITE_POINTER, 0x00); - if (err != 0) { - pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_OVF_COUNTER, 0x00); - if (err != 0) { - pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_FIFO_READ_POINTER, 0x00); - if (err != 0) { - pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", - __func__); - return -EIO; - } - - err = max86900_write_reg(device, MAX86900_MODE_CONFIGURATION, 0x03); - if (err != 0) { - printk("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", - __func__); - return -EIO; - } - enable_irq(device->irq); - mutex_unlock(&device->activelock); - return 0; -} - -static int max86900_disable(struct max86900_device_data *device) -{ - u8 err; - - mutex_lock(&device->activelock); - disable_irq(device->irq); - - err = max86900_write_reg(device, MAX86900_MODE_CONFIGURATION, 0x83); - if (err != 0) { - pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", - __func__); - return -EIO; - } - mutex_unlock(&device->activelock); - - return 0; -} - -static int max86900_read_data(struct max86900_device_data *device, u16 *data) -{ - u8 err; - u8 recvData[4] = { 0x00, }; - int i; - - if (device->sample_cnt == MAX86900_COUNT_MAX) - device->sample_cnt = 0; - - recvData[0] = MAX86900_FIFO_DATA; - if ((err = max86900_read_reg(device, recvData, 4)) != 0) { - pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", - __func__, err, recvData[0]); - return -EIO; - } - - for (i = 0; i < 2; i++) { - data[i] = ((((u16)recvData[i * 2]) << 8 ) & 0xff00) - | ((((u16)recvData[i * 2 + 1])) & 0x00ff); - } - - data[2] = device->led; - data[3] = device->sample_cnt; - - if ((device->sample_cnt % 1000) == 1) - pr_info("%s - %u, %u, %u, %u\n", __func__, - data[0], data[1], data[2], data[3]); - - if (device->sample_cnt++ > 100 && device->led == 0) { - device->led = 1; - err = max86900_write_reg(device, MAX86900_LED_CONFIGURATION, - 0x55); - if (err != 0) { - pr_err("%s - error initializing\ - MAX86900_LED_CONFIGURATION!\n",__func__); - return -EIO; - } - } - - return 0; -} - -void max86900_mode_enable(struct max86900_device_data *device, int onoff) -{ - int err; - if (onoff) { - if (device->sub_ldo4 != NULL) { - regulator_set_voltage(device->vdd_1p8, 1800000, 1800000); - regulator_enable(device->vdd_1p8); - usleep_range(1000, 1100); - err = max86900_init_device(device); - if (err) - pr_err("%s max86900_init device fail err = %d", - __func__, err); - } - err = max86900_enable(device); - if (err > 0) - pr_err("max86900_enable err : %d\n", err); - device->is_enable = 1; - } else { - err = max86900_disable(device); - if (err > 0) - pr_err("max86900_disable err : %d\n", err); - if (device->sub_ldo4 != NULL) - regulator_disable(device->vdd_1p8); - device->is_enable = 0; - } - pr_info("%s - onoff = %d\n", __func__, onoff); -} - -/* sysfs */ -static ssize_t max86900_enable_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct max86900_device_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%d\n", data->is_enable); -} - -static ssize_t max86900_enable_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t count) -{ - struct max86900_device_data *data = dev_get_drvdata(dev); - int new_value; - - if (sysfs_streq(buf, "1")) - new_value = 1; - else if (sysfs_streq(buf, "0")) - new_value = 0; - else { - pr_err("%s - invalid value %d\n", __func__, *buf); - return -EINVAL; - } - - max86900_mode_enable(data, new_value); - return count; -} - -static ssize_t max86900_poll_delay_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return sprintf(buf, "%lld\n", 10000000LL); -} - -static ssize_t max86900_poll_delay_store(struct device *dev, - struct device_attribute *attr, - const char *buf, size_t size) -{ - pr_info("%s - max86900 hrm sensor delay was fixed as 10ms\n", __func__); - return size; -} - -static DEVICE_ATTR(enable, S_IRUGO|S_IWUSR|S_IWGRP, - max86900_enable_show, max86900_enable_store); -static DEVICE_ATTR(poll_delay, S_IRUGO|S_IWUSR|S_IWGRP, - max86900_poll_delay_show, max86900_poll_delay_store); - -static struct attribute *hrm_sysfs_attrs[] = { - &dev_attr_enable.attr, - &dev_attr_poll_delay.attr, - NULL -}; - -static struct attribute_group hrm_attribute_group = { - .attrs = hrm_sysfs_attrs, -}; - -/* test sysfs */ -static ssize_t max86900_name_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); -} - -static ssize_t max86900_vendor_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); -} - -static DEVICE_ATTR(name, S_IRUGO, max86900_name_show, NULL); -static DEVICE_ATTR(vendor, S_IRUGO, max86900_vendor_show, NULL); - -static struct device_attribute *hrm_sensor_attrs[] = { - &dev_attr_name, - &dev_attr_vendor, - NULL, -}; - -irqreturn_t max86900_irq_handler(int irq, void *device) -{ - int err; - struct max86900_device_data *data = device; - u16 raw_data[4] = {0x00, }; - - err = max86900_read_data(device, raw_data); - if (err > 0) - pr_err("max86900_read_data err : %d\n", err); - - input_report_abs(data->hrm_input_dev, ABS_X, raw_data[0]); - input_report_abs(data->hrm_input_dev, ABS_Y, raw_data[1]); - input_report_abs(data->hrm_input_dev, ABS_Z, raw_data[2]); - input_report_abs(data->hrm_input_dev, ABS_RX, raw_data[3]); - input_sync(data->hrm_input_dev); - - return IRQ_HANDLED; -} - -static int max86900_parse_dt(struct max86900_device_data *data, - struct device *dev) -{ - struct device_node *dNode = dev->of_node; - enum of_gpio_flags flags; - - if (dNode == NULL) - return -ENODEV; - - data->hrm_int = of_get_named_gpio_flags(dNode, - "max86900,hrm_int-gpio", 0, &flags); - if (data->hrm_int < 0) { - pr_err("%s - get hrm_int error\n", __func__); - return -ENODEV; - } - - if (of_property_read_string(dNode, "max86900,sub_ldo4", &data->sub_ldo4) < 0) - pr_err("%s - get sub_ldo4 error\n", __func__); - - return 0; -} - -static int max86900_gpio_setup(struct max86900_device_data *data) -{ - int errorno = -EIO; - - errorno = gpio_request(data->hrm_int, "hrm_int"); - if (errorno) { - pr_err("%s - failed to request hrm_int\n", __func__); - return errorno; - } - - errorno = gpio_direction_input(data->hrm_int); - if (errorno) { - pr_err("%s - failed to set hrm_int as input\n", __func__); - goto err_gpio_direction_input; - } - - data->irq = gpio_to_irq(data->hrm_int); - - errorno = request_threaded_irq(data->irq, NULL, - max86900_irq_handler, IRQF_TRIGGER_FALLING, - "hrm_sensor_irq", data); - - if (errorno < 0) { - pr_err("%s - request_irq(%d) failed for gpio %d (%d)\n", - __func__, data->irq, data->hrm_int, errorno); - errorno = -ENODEV; - goto err_request_irq; - } - - disable_irq(data->irq); - goto done; -err_request_irq: -err_gpio_direction_input: - gpio_free(data->hrm_int); -done: - return errorno; -} - -int max86900_probe(struct i2c_client *client, const struct i2c_device_id *id ) -{ - int err = -ENODEV; - u8 buffer; - - struct max86900_device_data *data; - - // check to make sure that the adapter supports I2C - if (!i2c_check_functionality(client->adapter,I2C_FUNC_I2C)) { - pr_err("%s - I2C_FUNC_I2C not supported\n", __func__); - return -ENODEV; - } - - // allocate some memory for the device - data = kzalloc(sizeof(struct max86900_device_data), GFP_KERNEL); - if (data == NULL) { - pr_err("%s - couldn't allocate memory\n", __func__); - return -ENOMEM; - } - - data->client = client; - i2c_set_clientdata(client, data); - - mutex_init(&data->i2clock); - mutex_init(&data->activelock); - - data->dev = &client->dev; - - pr_info("%s - start \n", __func__); - - err = max86900_parse_dt(data, &client->dev); - if (err < 0) { - pr_err("[SENSOR] %s - of_node error\n", __func__); - err = -ENODEV; - goto err_of_node; - } - - if (data->sub_ldo4 != NULL) { - data->vdd_1p8 = regulator_get(&client->dev, data->sub_ldo4); - if (IS_ERR(data->vdd_1p8)) { - pr_err("%s - regulator_get fail\n", __func__); - return -ENODEV; - } - regulator_set_voltage(data->vdd_1p8, 1800000, 1800000); - regulator_enable(data->vdd_1p8); - } - - - buffer = MAX86900_WHOAMI_REG; - err = max86900_read_reg(data, &buffer, 1); - if (err) { - pr_err("%s WHOAMI read fail\n", __func__); - //err = -ENODEV; - //goto err_of_node; - } - if (buffer != MAX86900_WHOAMI) { - pr_err("%s WHOAMI value (0x%x)\n", __func__, buffer); - //err = -ENODEV; - //goto err_of_node; - } - - err = max86900_gpio_setup(data); - if (err) { - pr_err("[SENSOR] %s - could not setup gpio\n", __func__); - goto err_setup_gpio; - } - - /* allocate input device */ - data->hrm_input_dev = input_allocate_device(); - if (!data->hrm_input_dev) { - pr_err("%s - could not allocate input device\n", - __func__); - goto err_input_allocate_device; - } - - input_set_drvdata(data->hrm_input_dev, data); - data->hrm_input_dev->name = MODULE_NAME_HRM; - input_set_capability(data->hrm_input_dev, EV_ABS, ABS_MISC); - input_set_abs_params(data->hrm_input_dev, ABS_X, - SENSOR_MIN_ABS, SENSOR_MAX_ABS, 0, 0); - input_set_abs_params(data->hrm_input_dev, ABS_Y, - SENSOR_MIN_ABS, SENSOR_MAX_ABS, 0, 0); - input_set_abs_params(data->hrm_input_dev, ABS_Z, - SENSOR_MIN_ABS, SENSOR_MAX_ABS, 0, 0); - input_set_abs_params(data->hrm_input_dev, ABS_RX, - SENSOR_MIN_ABS, SENSOR_MAX_ABS, 0, 0); - - err = input_register_device(data->hrm_input_dev); - if (err < 0) { - input_free_device(data->hrm_input_dev); - pr_err("%s - could not register input device\n", __func__); - goto err_input_register_device; - } - - err = sensors_create_symlink(&data->hrm_input_dev->dev.kobj, - data->hrm_input_dev->name); - if (err < 0) { - pr_err("%s - create_symlink error\n", __func__); - goto err_sensors_create_symlink; - } - - err = sysfs_create_group(&data->hrm_input_dev->dev.kobj, - &hrm_attribute_group); - if (err) { - pr_err("[SENSOR] %s - could not create sysfs group\n", - __func__); - goto err_sysfs_create_group; - } - - /* set sysfs for hrm sensor */ - err = sensors_register(data->dev, data, hrm_sensor_attrs, - "hrm_sensor"); - if (err) { - pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", - __func__, err); - goto hrm_sensor_register_failed; - } - - err = max86900_init_device(data); - if (err) { - pr_err("%s max86900_init device fail err = %d", __func__, err); - goto max86900_init_device_failed; - } - - err = dev_set_drvdata(data->dev, data); - if (err) { - pr_err("%s dev_set_drvdata fail err = %d", __func__, err); - goto dev_set_drvdata_failed; - } - - if (data->sub_ldo4 != NULL) - regulator_disable(data->vdd_1p8); - pr_info("%s success\n", __func__); - goto done; - -dev_set_drvdata_failed: -max86900_init_device_failed: - sensors_unregister(data->dev, hrm_sensor_attrs); -hrm_sensor_register_failed: -err_sysfs_create_group: - sensors_remove_symlink(&data->hrm_input_dev->dev.kobj, - data->hrm_input_dev->name); -err_sensors_create_symlink: - input_unregister_device(data->hrm_input_dev); -err_input_register_device: -err_input_allocate_device: - gpio_free(data->hrm_int); -err_setup_gpio: -err_of_node: - mutex_destroy(&data->i2clock); - mutex_destroy(&data->activelock); - kfree(data); - pr_err("%s failed\n", __func__); -done: - return err; -} - -/** - * Remove function for this I2C driver. - * - * @param struct i2c_client *client - * the associated I2C client for the device - * - * @return - * 0 - */ -int max86900_remove(struct i2c_client *client) -{ - pr_info("%s\n", __func__); - free_irq(client->irq, NULL); - return 0; -} - -static void max86900_shutdown(struct i2c_client *client) -{ - pr_info("%s\n", __func__); -} - -static struct of_device_id max86900_match_table[] = { - { .compatible = "max86900",}, - {}, -}; - -static const struct i2c_device_id max86900_device_id[] = { - { "max86900_match_table", 0 }, - { } -}; -// descriptor of the max86900 I2C driver -static struct i2c_driver max86900_i2c_driver = -{ - .driver = { - .name = CHIP_NAME, - .owner = THIS_MODULE, - .of_match_table = max86900_match_table, - }, - .probe = max86900_probe, - .shutdown = max86900_shutdown, - .remove = max86900_remove, - .id_table = max86900_device_id, -}; - -// initialization and exit functions -static int __init max86900_init(void) -{ - return i2c_add_driver(&max86900_i2c_driver); -} - -static void __exit max86900_exit(void) -{ - i2c_del_driver(&max86900_i2c_driver); -} - -module_init(max86900_init); -module_exit(max86900_exit); - -MODULE_DESCRIPTION("max86900 Driver"); -MODULE_AUTHOR("Samsung Electronics"); -MODULE_LICENSE("LGPL"); +/* + * Copyright (c)2013 Maxim Integrated Products, Inc. + * + * This software is licensed under the terms of the GNU General Public + * License, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "max86900.h" +#ifdef CONFIG_OF +#include +#endif + +#define MAX86900_I2C_RETRY_DELAY 10 +#define MAX86900_I2C_MAX_RETRIES 5 +#define MAX86900_COUNT_MAX 65532 +#define MAX86900_WHOAMI_REG 0xFE +#define MAX86900_WHOAMI 0x01 +#define MAX86900A_WHOAMI 0x11 +#define MAX86900A_REV_ID 0x00 +#define MAX86900B_REV_ID 0x04 +#define MAX86900C_REV_ID 0x05 + +#define MAX86900_DEFAULT_CURRENT 0x55 +#define MAX86900A_DEFAULT_CURRENT 0xFF +#define MAX86900C_DEFAULT_CURRENT 0x0F + +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "MAX86900" +#define VENDOR "MAXIM" +#define HRM_LDO_ON 1 +#define HRM_LDO_OFF 0 +#define MAX_EOL_RESULT 132 +#define MAX_LIB_VER 20 + +#define SAMPLE_RATE 4 + +/* I2C function */ +static int max86900_write_reg(struct max86900_device_data *device, + u8 reg_addr, u8 data) +{ + int err; + int tries = 0; + u8 buffer[2] = { reg_addr, data }; + struct i2c_msg msgs[] = { + { + .addr = device->client->addr, + .flags = device->client->flags & I2C_M_TEN, + .len = 2, + .buf = buffer, + }, + }; + + do { + mutex_lock(&device->i2clock); + err = i2c_transfer(device->client->adapter, msgs, 1); + mutex_unlock(&device->i2clock); + if (err != 1) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + + } while ((err != 1) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 1) { + pr_err("%s -write transfer error\n", __func__); + err = -EIO; + return err; + } + + return 0; +} + +static int max86900_read_reg(struct max86900_device_data *data, + u8 *buffer, int length) +{ + int err = -1; + int tries = 0; /* # of attempts to read the device */ + + struct i2c_msg msgs[] = { + { + .addr = data->client->addr, + .flags = data->client->flags & I2C_M_TEN, + .len = 1, + .buf = buffer, + }, + { + .addr = data->client->addr, + .flags = (data->client->flags & I2C_M_TEN) | I2C_M_RD, + .len = length, + .buf = buffer, + }, + }; + + do { + mutex_lock(&data->i2clock); + err = i2c_transfer(data->client->adapter, msgs, 2); + mutex_unlock(&data->i2clock); + if (err != 2) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 2) { + pr_err("%s -read transfer error\n", __func__); + err = -EIO; + } else + err = 0; + + return err; +} + +/* Device Control */ +static int max86900_regulator_onoff(struct max86900_device_data *data, int onoff) +{ + data->vdd_1p8 = regulator_get(NULL, data->sub_ldo4); + if (IS_ERR(data->vdd_1p8)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_1p8; + } + +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + data->vdd_3p3 = regulator_get(NULL, data->led_l19); + if (IS_ERR(data->vdd_3p3)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_3p3; + } +#endif + pr_info("%s - onoff = %d\n", __func__, onoff); + + if (onoff == HRM_LDO_ON) { + regulator_set_voltage(data->vdd_1p8, 1800000, 1800000); + regulator_enable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_set_voltage(data->vdd_3p3, 3300000, 3300000); + regulator_enable(data->vdd_3p3); +#endif + } else { + regulator_disable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_disable(data->vdd_3p3); +#endif + } + + regulator_put(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_put(data->vdd_3p3); +#endif + return 0; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) +err_3p3: + regulator_put(data->vdd_1p8); +#endif +err_1p8: + return -ENODEV; +} + +static int max86900_init_device(struct max86900_device_data *data) +{ + int err; + u8 recvData; + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error sw shutdown device!\n", __func__); + return -EIO; + } + + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x83); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_INTERRUPT_ENABLE, 0x10); + if (err != 0) { + pr_err("%s - error initializing MAX86900_INTERRUPT_ENABLE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); //400hz 400us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Turn off ALC in case of Max86900A */ + if (data->part_type == PART_TYPE_MAX86900A) { + /* ALC OFF start */ + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x54); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x4D); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_GTST, 0x02); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_GTST!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_ALC, 0x01); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_ALC!\n", + __func__); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x00); + if (err != 0) { + pr_err("%s - error Exiting MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + /* ALC OFF end */ + } + + + pr_info("%s done, part_type = %u\n", __func__, data->part_type); + + return 0; +} + +static int max86900_enable(struct max86900_device_data *data) +{ + int err; + data->led = 0; + data->sample_cnt = 0; + data->ir_sum = 0; + data->r_sum = 0; + + mutex_lock(&data->activelock); + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->default_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + printk("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + enable_irq(data->irq); + mutex_unlock(&data->activelock); + return 0; +} + +static int max86900_disable(struct max86900_device_data *data) +{ + u8 err; + + mutex_lock(&data->activelock); + disable_irq(data->irq); + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x80); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + mutex_unlock(&data->activelock); + + return 0; +} + +static int max86900_read_temperature(struct max86900_device_data *data) +{ + u8 recvData[2] = { 0x00, }; + int err; + + recvData[0] = MAX86900_TEMP_INTEGER; + + err = max86900_read_reg(data, recvData, 2); + if (err != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + data->hrm_temp = ((char)recvData[0]) * 16 + recvData[1]; + + pr_info("%s - %d(%x, %x)\n", __func__, data->hrm_temp, recvData[0], recvData[1]); + + return 0; +} + +static int max86900_eol_test_control(struct max86900_device_data *data) +{ + int err = 0; + u8 led_current = 0; + + if (data->sample_cnt < data->hr_range2) { + data->hr_range = 1; + } else if (data->sample_cnt < (data->hr_range2 + 297)) { + /* Fake pulse */ + if (data->sample_cnt % 8 < 4) { + data->test_current_ir++; + data->test_current_red++; + } else { + data->test_current_ir--; + data->test_current_red--; + } + + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + data->hr_range = 2; + } else if (data->sample_cnt == (data->hr_range2 + 297)) { + /* Measure */ + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 400Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } else if (data->sample_cnt < ((data->hr_range2 + 297) + 400 * 10)) { + data->hr_range = 3; + } else if (data->sample_cnt == ((data->hr_range2 + 297) + 400 * 10)) { + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->default_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 100Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } + data->sample_cnt++; + return 0; +} + +static int max86900_read_data(struct max86900_device_data *device, u16 *data) +{ + u8 err; + u8 recvData[4] = { 0x00, }; + int i; + int ret = 0; + + if (device->sample_cnt == MAX86900_COUNT_MAX) + device->sample_cnt = 0; + + recvData[0] = MAX86900_FIFO_DATA; + if ((err = max86900_read_reg(device, recvData, 4)) != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + + for (i = 0; i < 2; i++) { + data[i] = ((((u16)recvData[i * 2]) << 8 ) & 0xff00) + | ((((u16)recvData[i * 2 + 1])) & 0x00ff); + } + + if ((device->sample_cnt % 4000) == 1) + pr_info("%s - %u, %u\n", __func__, data[0], data[1]); + + if (device->sample_cnt == 20 && device->led == 0) { + err = max86900_read_temperature(device); + if (err < 0) { + pr_err("%s - max86900_read_temperature err : %d\n", + __func__, err); + return -EIO; + } + } + + if (device->eol_test_is_enable) { + err = max86900_eol_test_control(device); + if (err < 0) { + pr_err("%s - max86900_eol_test_control err : %d\n", + __func__, err); + return -EIO; + } + } else { + device->ir_sum += data[0]; + device->r_sum += data[1]; + if ((device->sample_cnt % SAMPLE_RATE) == SAMPLE_RATE - 1) { + data[0] = device->ir_sum / SAMPLE_RATE; + data[1] = device->r_sum / SAMPLE_RATE; + device->ir_sum = 0; + device->r_sum = 0; + ret = 0; + } else + ret = 1; + + if (device->sample_cnt++ > 100 && device->led == 0) { + device->led = 1; + } + } + + return ret; +} + +void max86900_mode_enable(struct max86900_device_data *data, int onoff) +{ + int err; + if (onoff) { + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + usleep_range(1000, 1100); + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d\n", + __func__, err); + } + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + atomic_set(&data->is_enable, 1); + } else { + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) + pr_err("%s max86900_regulator_off fail err = %d\n", + __func__, err); + } + + atomic_set(&data->is_enable, 0); + } + pr_info("%s - part_type = %u, onoff = %d\n", __func__, data->part_type, onoff); +} + +/* sysfs */ +static ssize_t max86900_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", atomic_read(&data->is_enable)); +} + +static ssize_t max86900_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int new_value; + + if (sysfs_streq(buf, "1")) + new_value = 1; + else if (sysfs_streq(buf, "0")) + new_value = 0; + else { + pr_err("%s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_mode_enable(data, new_value); + return count; +} + +static ssize_t max86900_poll_delay_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%lld\n", 10000000LL); +} + +static ssize_t max86900_poll_delay_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + pr_info("%s - max86900 hrm sensor delay was fixed as 10ms\n", __func__); + return size; +} + +static DEVICE_ATTR(enable, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_enable_show, max86900_enable_store); +static DEVICE_ATTR(poll_delay, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_poll_delay_show, max86900_poll_delay_store); + +static struct attribute *hrm_sysfs_attrs[] = { + &dev_attr_enable.attr, + &dev_attr_poll_delay.attr, + NULL +}; + +static struct attribute_group hrm_attribute_group = { + .attrs = hrm_sysfs_attrs, +}; + +/* test sysfs */ +static int max86900_set_led_current(struct max86900_device_data *data) +{ + int err; + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + pr_info("%s - led current = %u\n", __func__, data->led_current); + return 0; +} + +static int max86900_set_hr_range(struct max86900_device_data *data) +{ + pr_info("%s - hr_range = %u(0x%x)\n", __func__, + data->hr_range, data->hr_range); + return 0; +} + +static int max86900_set_hr_range2(struct max86900_device_data *data) +{ + pr_info("%s - hr_range2 = %u\n", __func__, data->hr_range2); + return 0; +} + +static int max86900_set_look_mode_ir(struct max86900_device_data *data) +{ + pr_info("%s - look mode ir = %u\n", __func__, data->look_mode_ir); + return 0; +} + +static int max86900_set_look_mode_red(struct max86900_device_data *data) +{ + pr_info("%s - look mode red = %u\n", __func__, data->look_mode_red); + return 0; +} + +static int max86900_eol_test_enable(struct max86900_device_data *data) +{ + int err; + u8 led_current; + data->led = 1; /* Prevent resetting MAX86900_LED_CONFIGURATION */ + data->sample_cnt = 0; + + pr_info("%s\n", __func__); + mutex_lock(&data->activelock); + /* Test Mode Setting Start */ + data->hr_range = 0; /* Set test phase as 0 */ + data->eol_test_status = 0; + data->test_current_ir = data->look_mode_ir; + data->test_current_red = data->look_mode_red; + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); //100Hz 1600us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Clear FIFO */ + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + /* Shutdown Clear */ + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + mutex_unlock(&data->activelock); + return 0; +} + +static void max86900_eol_test_onoff(struct max86900_device_data *data, int onoff) +{ + int err; + + if (onoff) { + err = max86900_eol_test_enable(data); + data->eol_test_is_enable = 1; + if (err != 0) + pr_err("max86900_eol_test_enable err : %d\n", err); + } else { + pr_info("%s - eol test off\n", __func__); + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); + + data->hr_range = 0; + data->led_current = data->default_current; + + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d", __func__, err); + + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + data->eol_test_is_enable = 0; + } + pr_info("%s - onoff = %d\n", __func__, onoff); +} + +static ssize_t max86900_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t max86900_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t led_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->led_current); + if (err < 0) + return err; + + err = max86900_set_led_current(data); + if (err < 0) + return err; + + data->default_current = data->led_current; + + return size; +} + +static ssize_t led_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - led_current = %u\n", __func__, data->led_current); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->led_current); +} + +static ssize_t hr_range_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range); + if (err < 0) + return err; + + err = max86900_set_hr_range(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range = %x\n", __func__, data->hr_range); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range); +} + +static ssize_t hr_range2_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range2); + if (err < 0) + return err; + + err = max86900_set_hr_range2(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range2 = %x\n", __func__, data->hr_range2); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range2); +} + +static ssize_t look_mode_ir_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_ir); + if (err < 0) + return err; + + err = max86900_set_look_mode_ir(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_ir_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_ir = %x\n", __func__, data->look_mode_ir); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_ir); +} + +static ssize_t look_mode_red_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_red); + if (err < 0) + return err; + + err = max86900_set_look_mode_red(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_red_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_red = %x\n", __func__, data->look_mode_red); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_red); +} + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int test_onoff; + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + test_onoff = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + test_onoff = 0; + else { + pr_debug("max86900_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_eol_test_onoff(data, test_onoff); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (data->eol_test_result != NULL) + kfree(data->eol_test_result); + + data->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->eol_test_result == NULL) { + pr_err("max86900_%s - couldn't allocate memory\n", + __func__); + return -ENOMEM; + } + strncpy(data->eol_test_result, buf, buf_len); + pr_info("max86900_%s - result = %s, buf_len(%u)\n", __func__, data->eol_test_result, buf_len); + data->eol_test_status = 1; + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->eol_test_result == NULL) { + pr_info("max86900_%s - data->eol_test_result is NULL\n", __func__); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("max86900_%s - result = %s\n", __func__, data->eol_test_result); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", data->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_status); +} + +static ssize_t int_pin_check(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int err = -1; + int pin_state = -1; + u8 recvData; + + /* DEVICE Power-up */ + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("max86900_%s - regulator on fail\n", __func__); + goto exit; + } + + usleep_range(1000, 1100); + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (pin_state) { + pr_err("max86900_%s - INT pin state is high before INT clear\n", __func__); + err = -1; + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + + pr_info("max86900_%s - Before INT clear %d\n", __func__, pin_state); + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("max86900_%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (!pin_state) { + pr_err("max86900_%s - INT pin state is low after INT clear\n", __func__); + err = -1; + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + pr_info("max86900_%s - After INT clear %d\n", __func__, pin_state); + + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) + pr_err("max86900_%s - regulator off fail\n", __func__); + + pr_info("max86900_%s - success\n", __func__); +exit: + return snprintf(buf, PAGE_SIZE, "%d\n", err); +} + +static ssize_t max86900_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (data->lib_ver != NULL) + kfree(data->lib_ver); + + data->lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(data->lib_ver, buf, buf_len); + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return size; +} + +static ssize_t max86900_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->lib_ver == NULL) { + pr_info("%s - data->lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", data->lib_ver); +} + +static ssize_t max86900_hrm_flush_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + u8 handle = 0; + + if (sysfs_streq(buf, "17")) /* ID_SAM_HRM */ + handle = 17; + else if (sysfs_streq(buf, "18")) /* ID_AOSP_HRM */ + handle = 18; + else if (sysfs_streq(buf, "19")) /* ID_HRM_RAW */ + handle = 19; + else { + pr_info("%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + input_report_rel(data->hrm_input_dev, REL_MISC, handle); + return size; +} + +static DEVICE_ATTR(name, S_IRUGO, max86900_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, max86900_vendor_show, NULL); +static DEVICE_ATTR(led_current, S_IRUGO | S_IWUSR | S_IWGRP, + led_current_show, led_current_store); +static DEVICE_ATTR(hr_range, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range_show, hr_range_store); +static DEVICE_ATTR(hr_range2, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range2_show, hr_range2_store); +static DEVICE_ATTR(look_mode_ir, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_ir_show, look_mode_ir_store); +static DEVICE_ATTR(look_mode_red, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_red_show, look_mode_red_store); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(int_pin_check, S_IRUGO, int_pin_check, NULL); +static DEVICE_ATTR(lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + max86900_lib_ver_show, max86900_lib_ver_store); +static DEVICE_ATTR(hrm_flush, S_IWUSR | S_IWGRP, + NULL, max86900_hrm_flush_store); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_led_current, + &dev_attr_hr_range, + &dev_attr_hr_range2, + &dev_attr_look_mode_ir, + &dev_attr_look_mode_red, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_int_pin_check, + &dev_attr_lib_ver, + &dev_attr_hrm_flush, + NULL, +}; + +irqreturn_t max86900_irq_handler(int irq, void *device) +{ + int err; + struct max86900_device_data *data = device; + u16 raw_data[2] = {0x00, }; + + err = max86900_read_data(data, raw_data); + if (err < 0) + pr_err("max86900_read_data err : %d\n", err); + + if (err == 0) { + input_report_rel(data->hrm_input_dev, REL_X, raw_data[0] + 1); /* IR */ + input_report_rel(data->hrm_input_dev, REL_Y, raw_data[1] + 1); /* RED */ + input_report_rel(data->hrm_input_dev, REL_Z, data->hrm_temp + 1); + input_sync(data->hrm_input_dev); + } + + return IRQ_HANDLED; +} + + +#if defined(CONFIG_MACH_KLTE_KDI) +extern unsigned int system_rev; +#endif + + +static int max86900_parse_dt(struct max86900_device_data *data, + struct device *dev) +{ + struct device_node *dNode = dev->of_node; + enum of_gpio_flags flags; + + if (dNode == NULL) + return -ENODEV; +#if defined(CONFIG_MACH_KLTE_KDI) + if(system_rev==11) + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-kdi-gpio", 0, &flags); + else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#endif + if (data->hrm_int < 0) { + pr_err("%s - get hrm_int error\n", __func__); + return -ENODEV; + } + + if (of_property_read_string(dNode, "max86900,sub_ldo4", &data->sub_ldo4) < 0) + pr_err("%s - get sub_ldo4 error\n", __func__); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + if (of_property_read_string(dNode, "max86900,led_l19", &data->led_l19) < 0) + pr_err("%s - get led_l19 error\n", __func__); +#endif + return 0; +} + +static int max86900_gpio_setup(struct max86900_device_data *data) +{ + int errorno = -EIO; + + errorno = gpio_request(data->hrm_int, "hrm_int"); + if (errorno) { + pr_err("%s - failed to request hrm_int\n", __func__); + return errorno; + } + + errorno = gpio_direction_input(data->hrm_int); + if (errorno) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_gpio_direction_input; + } + + data->irq = gpio_to_irq(data->hrm_int); + + errorno = request_threaded_irq(data->irq, NULL, + max86900_irq_handler, IRQF_TRIGGER_FALLING, + "hrm_sensor_irq", data); + + if (errorno < 0) { + pr_err("%s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, data->irq, data->hrm_int, errorno); + errorno = -ENODEV; + goto err_request_irq; + } + + disable_irq(data->irq); + goto done; +err_request_irq: +err_gpio_direction_input: + gpio_free(data->hrm_int); +done: + return errorno; +} + +int max86900_probe(struct i2c_client *client, const struct i2c_device_id *id ) +{ + int err = -ENODEV; + u8 buffer[2] = {0, }; + + struct max86900_device_data *data; + + /* check to make sure that the adapter supports I2C */ + if (!i2c_check_functionality(client->adapter,I2C_FUNC_I2C)) { + pr_err("%s - I2C_FUNC_I2C not supported\n", __func__); + return -ENODEV; + } + + /* allocate some memory for the device */ + data = kzalloc(sizeof(struct max86900_device_data), GFP_KERNEL); + if (data == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + + data->client = client; + i2c_set_clientdata(client, data); + + mutex_init(&data->i2clock); + mutex_init(&data->activelock); + + data->dev = &client->dev; + + pr_info("%s - start \n", __func__); + + data->hr_range = 0; + + err = max86900_parse_dt(data, &client->dev); + if (err < 0) { + pr_err("[SENSOR] %s - of_node error\n", __func__); + err = -ENODEV; + goto err_of_node; + } + + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + goto err_of_node; + } + } + usleep_range(1000, 1100); + + data->client->addr = MAX86900A_SLAVE_ADDR; + + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (buffer[1] == MAX86900A_WHOAMI) { + /* MAX86900A & MAX86900B */ + switch(buffer[0]) { + case MAX86900A_REV_ID: + data->part_type = PART_TYPE_MAX86900A; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900B_REV_ID: + data->part_type = PART_TYPE_MAX86900B; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900C_REV_ID: + data->part_type = PART_TYPE_MAX86900C; + data->default_current = MAX86900C_DEFAULT_CURRENT; + break; + default: + pr_err("%s WHOAMI read error : REV ID : 0x%02x\n", + __func__, buffer[0]); + err = -ENODEV; + goto err_of_read_chipid; + } + pr_info("%s - MAX86900 OS21(0x%X), REV ID : 0x%02x\n", + __func__, MAX86900A_SLAVE_ADDR, buffer[0]); + } else { + /* MAX86900 */ + data->client->addr = MAX86900_SLAVE_ADDR; + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (err) { + pr_err("%s WHOAMI read fail\n", __func__); + err = -ENODEV; + goto err_of_read_chipid; + } + data->part_type = PART_TYPE_MAX86900; + data->default_current = MAX86900_DEFAULT_CURRENT; + pr_info("%s - MAX86900 OS20 (0x%X)\n", __func__, + MAX86900_SLAVE_ADDR); + } + + data->led_current = data->default_current; + + /* allocate input device */ + data->hrm_input_dev = input_allocate_device(); + if (!data->hrm_input_dev) { + pr_err("%s - could not allocate input device\n", + __func__); + goto err_input_allocate_device; + } + + input_set_drvdata(data->hrm_input_dev, data); + data->hrm_input_dev->name = MODULE_NAME_HRM; + input_set_capability(data->hrm_input_dev, EV_REL, REL_X); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Y); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Z); + input_set_capability(data->hrm_input_dev, EV_REL, REL_MISC); + + err = input_register_device(data->hrm_input_dev); + if (err < 0) { + input_free_device(data->hrm_input_dev); + pr_err("%s - could not register input device\n", __func__); + goto err_input_register_device; + } + + err = sensors_create_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); + if (err < 0) { + pr_err("%s - create_symlink error\n", __func__); + goto err_sensors_create_symlink; + } + + err = sysfs_create_group(&data->hrm_input_dev->dev.kobj, + &hrm_attribute_group); + if (err) { + pr_err("[SENSOR] %s - could not create sysfs group\n", + __func__); + goto err_sysfs_create_group; + } + + err = max86900_gpio_setup(data); + if (err) { + pr_err("[SENSOR] %s - could not setup gpio\n", __func__); + goto err_setup_gpio; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(data->dev, data, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + err = max86900_init_device(data); + if (err) { + pr_err("%s max86900_init device fail err = %d", __func__, err); + goto max86900_init_device_failed; + } + + err = dev_set_drvdata(data->dev, data); + if (err) { + pr_err("%s dev_set_drvdata fail err = %d", __func__, err); + goto dev_set_drvdata_failed; + } + + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) { + pr_err("%s max86900_regulator_off fail(%d, %d)\n", + __func__, err, HRM_LDO_OFF); + goto dev_set_drvdata_failed; + } + } + pr_info("%s success\n", __func__); + goto done; + +dev_set_drvdata_failed: +max86900_init_device_failed: + sensors_unregister(data->dev, hrm_sensor_attrs); +hrm_sensor_register_failed: + gpio_free(data->hrm_int); +err_setup_gpio: +err_sysfs_create_group: + sensors_remove_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); +err_sensors_create_symlink: + input_unregister_device(data->hrm_input_dev); +err_input_register_device: +err_input_allocate_device: +err_of_read_chipid: + max86900_regulator_onoff(data, HRM_LDO_OFF); +err_of_node: + mutex_destroy(&data->i2clock); + mutex_destroy(&data->activelock); + kfree(data); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/* + * Remove function for this I2C driver. + */ +int max86900_remove(struct i2c_client *client) +{ + pr_info("%s\n", __func__); + free_irq(client->irq, NULL); + return 0; +} + +static void max86900_shutdown(struct i2c_client *client) +{ + pr_info("%s\n", __func__); +} + +static int max86900_pm_suspend(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_enable)) { + max86900_mode_enable(data, HRM_LDO_OFF); + atomic_set(&data->is_suspend, 1); + } + pr_info("%s\n", __func__); + return 0; +} + +static int max86900_pm_resume(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_suspend)) { + max86900_mode_enable(data, HRM_LDO_ON); + atomic_set(&data->is_suspend, 0); + } + pr_info("%s\n", __func__); + return 0; +} + +static const struct dev_pm_ops max86900_pm_ops = { + .suspend = max86900_pm_suspend, + .resume = max86900_pm_resume +}; + +static struct of_device_id max86900_match_table[] = { + { .compatible = "max86900",}, + {}, +}; + +static const struct i2c_device_id max86900_device_id[] = { + { "max86900_match_table", 0 }, + { } +}; +/* descriptor of the max86900 I2C driver */ +static struct i2c_driver max86900_i2c_driver = +{ + .driver = { + .name = CHIP_NAME, + .owner = THIS_MODULE, + .pm = &max86900_pm_ops, + .of_match_table = max86900_match_table, + }, + .probe = max86900_probe, + .shutdown = max86900_shutdown, + .remove = max86900_remove, + .id_table = max86900_device_id, +}; + +/* initialization and exit functions */ +static int __init max86900_init(void) +{ + return i2c_add_driver(&max86900_i2c_driver); +} + +static void __exit max86900_exit(void) +{ + i2c_del_driver(&max86900_i2c_driver); +} + +module_init(max86900_init); +module_exit(max86900_exit); + +MODULE_DESCRIPTION("max86900 Driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm/max86900.h b/drivers/sensorhub/stm/max86900.h index 42df262b7685..820f6cd8ca19 100755 --- a/drivers/sensorhub/stm/max86900.h +++ b/drivers/sensorhub/stm/max86900.h @@ -1,75 +1,123 @@ -#ifndef _MAX86900_H_ -#define _MAX86900_H_ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#define MAX86900_DEBUG - -//MAX86900 Registers -#define MAX86900_INTERRUPT_STATUS 0x00 -#define MAX86900_INTERRUPT_ENABLE 0x01 - -#define MAX86900_FIFO_WRITE_POINTER 0x02 -#define MAX86900_OVF_COUNTER 0x03 -#define MAX86900_FIFO_READ_POINTER 0x04 -#define MAX86900_FIFO_DATA 0x05 -#define MAX86900_MODE_CONFIGURATION 0x06 -#define MAX86900_SPO2_CONFIGURATION 0x07 -#define MAX86900_LED_CONFIGURATION 0x09 -#define MAX86900_FIFO_SIZE 16 - -struct max86900_platform_data -{ - int (*init)(void); - int (*deinit)(void); -}; - -struct max86900_device_data -{ - struct i2c_client *client; // represents the slave device - struct device *dev; - struct input_dev *hrm_input_dev; - struct mutex i2clock; - struct mutex activelock; - - bool *bio_status; - u8 is_enable; - u16 led; - u16 sample_cnt; - int hrm_int; - int irq; - - struct regulator *vdd_1p8; - const char *sub_ldo4; -}; - -extern int sensors_create_symlink(struct kobject *target, const char *name); -extern void sensors_remove_symlink(struct kobject *target, const char *name); -extern int sensors_register(struct device *dev, void * drvdata, - struct device_attribute *attributes[], char *name); -extern void sensors_unregister(struct device *dev, - struct device_attribute *attributes[]); -#endif - +#ifndef _MAX86900_H_ +#define _MAX86900_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#define MAX86900_DEBUG + +#define MAX86900_SLAVE_ADDR 0x51 +#define MAX86900A_SLAVE_ADDR 0x57 + +//MAX86900 Registers +#define MAX86900_INTERRUPT_STATUS 0x00 +#define MAX86900_INTERRUPT_ENABLE 0x01 + +#define MAX86900_FIFO_WRITE_POINTER 0x02 +#define MAX86900_OVF_COUNTER 0x03 +#define MAX86900_FIFO_READ_POINTER 0x04 +#define MAX86900_FIFO_DATA 0x05 +#define MAX86900_MODE_CONFIGURATION 0x06 +#define MAX86900_SPO2_CONFIGURATION 0x07 +#define MAX86900_LED_CONFIGURATION 0x09 +#define MAX86900_TEMP_INTEGER 0x16 +#define MAX86900_TEMP_FRACTION 0x17 + + +//Self Test +#define MAX86900_TEST_MODE 0xFF +#define MAX86900_TEST_GTST 0x80 +#define MAX86900_TEST_ENABLE_IDAC 0x81 +#define MAX86900_TEST_ENABLE_PLETH 0x82 +#define MAX86900_TEST_ALC 0x8F +#define MAX86900_TEST_ROUTE_MODULATOR 0x97 +#define MAX86900_TEST_LOOK_MODE_RED 0x98 +#define MAX86900_TEST_LOOK_MODE_IR 0x99 +#define MAX86900_TEST_IDAC_GAIN 0x9C + + +#define MAX86900_FIFO_SIZE 16 + +typedef enum _PART_TYPE +{ + PART_TYPE_MAX86900 = 0, + PART_TYPE_MAX86900A, + PART_TYPE_MAX86900B, + PART_TYPE_MAX86900C, +} PART_TYPE; + +struct max86900_platform_data +{ + int (*init)(void); + int (*deinit)(void); +}; + +struct max86900_device_data +{ + struct i2c_client *client; // represents the slave device + struct device *dev; + struct input_dev *hrm_input_dev; + struct mutex i2clock; + struct mutex activelock; + struct regulator *vdd_1p8; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + struct regulator *vdd_3p3; +#endif + const char *sub_ldo4; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + const char *led_l19; +#endif + bool *bio_status; + atomic_t is_enable; + atomic_t is_suspend; + u8 led_current; + u8 hr_range; + u8 hr_range2; + u8 look_mode_ir; + u8 look_mode_red; + u8 eol_test_is_enable; + u8 part_type; + u8 default_current; + u8 test_current_ir; + u8 test_current_red; + u8 eol_test_status; + u16 led; + u16 sample_cnt; + int hrm_int; + int irq; + int hrm_temp; + char *eol_test_result; + char *lib_ver; + int ir_sum; + int r_sum; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif + diff --git a/drivers/sensorhub/stm/ssp.h b/drivers/sensorhub/stm/ssp.h index cce07b655977..41f50b76209d 100755 --- a/drivers/sensorhub/stm/ssp.h +++ b/drivers/sensorhub/stm/ssp.h @@ -36,6 +36,7 @@ #include #include #include +#include #include #ifdef CONFIG_SENSORS_SSP_STM #include @@ -60,7 +61,13 @@ #define ERROR -1 #define FACTORY_DATA_MAX 100 -#undef SAVE_MAG_LOG /* Magnetic sensor data logging flag */ +#undef SAVE_MAG_LOG/* Magnetic sensor data logging flag */ + +#ifdef SAVE_MAG_LOG/*normal mode = 0, logging mode = 1*/ +#define MAG_LOG_MODE 1 +#else +#define MAG_LOG_MODE 0 +#endif #if SSP_DBG #define SSP_FUNC_DBG 1 @@ -152,7 +159,7 @@ enum { #define GYROSCOPE_DPS2000 2000 /* Gesture Sensor Current */ -#define DEFUALT_IR_CURRENT 100 //0xF0 +#define DEFUALT_IR_CURRENT 100 /* kernel -> ssp manager cmd*/ #define SSP_LIBRARY_SLEEP_CMD (1 << 5) @@ -169,9 +176,9 @@ enum { #define MSG2SSP_INST_LIB_NOTI 0xB4 #define MSG2SSP_INST_LIB_DATA 0xC1 -#define MSG2SSP_AP_STT 0xC8 #define MSG2SSP_AP_MCU_SET_GYRO_CAL 0xCD #define MSG2SSP_AP_MCU_SET_ACCEL_CAL 0xCE +#define MSG2SSP_AP_STATUS_SHUTDOWN 0xD0 #define MSG2SSP_AP_STATUS_WAKEUP 0xD1 #define MSG2SSP_AP_STATUS_SLEEP 0xD2 #define MSG2SSP_AP_STATUS_RESUME 0xD3 @@ -181,7 +188,7 @@ enum { #define MSG2SSP_AP_STATUS_POW_DISCONNECTED 0xD7 #define MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE 0xDA #define MSG2SSP_AP_MCU_SET_DUMPMODE 0xDB -#define MSG2SSP_AP_MCU_DUMP_FINISH 0xDC +#define MSG2SSP_AP_MCU_DUMP_CHECK 0xDC #define MSG2SSP_AP_MCU_BATCH_FLUSH 0xDD #define MSG2SSP_AP_MCU_BATCH_COUNT 0xDF @@ -296,14 +303,11 @@ enum { GAME_ROTATION_VECTOR = 15, ROTATION_VECTOR, STEP_COUNTER, + BIO_HRM_RAW, + BIO_HRM_RAW_FAC, + BIO_HRM_LIB, SENSOR_MAX, }; - -#define SSP_BYPASS_SENSORS_EN_ALL (1 << ACCELEROMETER_SENSOR |\ - 1 << GYROSCOPE_SENSOR | 1 << GEOMAGNETIC_UNCALIB_SENSOR |\ - 1 << GEOMAGNETIC_SENSOR | 1 << PRESSURE_SENSOR |\ - 1 << TEMPERATURE_HUMIDITY_SENSOR | 1 << LIGHT_SENSOR|\ - 1 << GYRO_UNCALIB_SENSOR | 1 << GAME_ROTATION_VECTOR) /* PROXIMITY_SENSOR is not continuos */ struct meta_data_event { s32 what; @@ -354,8 +358,13 @@ struct sensor_value { u8 step_det; u8 sig_motion; u32 step_diff; +#if defined (CONFIG_SENSORS_SSP_MAX88921) + u16 prox[4]; + s16 data[19]; +#else u8 prox[4]; u8 data[20]; +#endif s32 pressure[3]; struct meta_data_event meta_data; #ifdef SAVE_MAG_LOG @@ -367,7 +376,7 @@ struct sensor_value { extern struct class *sensors_event_class; extern int poweroff_charging; -extern int recovery_mode; +extern int boot_mode_recovery; struct calibraion_data { s16 x; @@ -391,6 +400,23 @@ struct hw_offset_data { #define SSP_GYRO_DPS_MASK (3 << SSP_GYRO_DPS) #define SSP_INDEX_MASK (8191 << SSP_INDEX) /* dump index mask. Index is up to 8191 */ +/* proximity sensor threshold */ +#if defined(CONFIG_SEC_KACTIVE_PROJECT) +#define DEFUALT_HIGH_THRESHOLD 110 +#define DEFUALT_LOW_THRESHOLD 85 +#define TBD_HIGH_THRESHOLD 110 +#define TBD_LOW_THRESHOLD 85 +#define WHITE_HIGH_THRESHOLD 110 +#define WHITE_LOW_THRESHOLD 85 +#else +#define DEFUALT_HIGH_THRESHOLD 130 +#define DEFUALT_LOW_THRESHOLD 90 +#define TBD_HIGH_THRESHOLD 130 +#define TBD_LOW_THRESHOLD 90 +#define WHITE_HIGH_THRESHOLD 130 +#define WHITE_LOW_THRESHOLD 90 +#endif + struct ssp_msg { u8 cmd; u16 length; @@ -425,26 +451,40 @@ enum { BIG_TYPE_MAX, }; +enum { + BATCH_MODE_NONE = 0, + BATCH_MODE_RUN, +}; + +struct ssp_time_diff { + u16 batch_count; + u16 batch_mode; + u64 time_diff; + u64 irq_diff; + u16 batch_count_fixed; +}; + struct ssp_data { struct iio_dev *accel_indio_dev; struct iio_dev *gyro_indio_dev; + struct iio_dev *uncal_gyro_indio_dev; struct iio_dev *rot_indio_dev; struct iio_dev *game_rot_indio_dev; struct iio_dev *step_det_indio_dev; + struct iio_dev *pressure_indio_dev; + struct iio_dev *mag_indio_dev; + struct iio_dev *uncal_mag_indio_dev; struct iio_trigger *accel_trig; struct iio_trigger *gyro_trig; struct iio_trigger *rot_trig; struct iio_trigger *game_rot_trig; struct iio_trigger *step_det_trig; - struct input_dev *pressure_input_dev; + struct iio_trigger *pressure_det_trig; struct input_dev *light_input_dev; struct input_dev *prox_input_dev; struct input_dev *temp_humi_input_dev; - struct input_dev *mag_input_dev; - struct input_dev *uncal_mag_input_dev; struct input_dev *gesture_input_dev; struct input_dev *sig_motion_input_dev; - struct input_dev *uncalib_gyro_input_dev; struct input_dev *step_cnt_input_dev; struct input_dev *meta_input_dev; #ifdef CONFIG_SENSORS_SSP_STM @@ -471,6 +511,7 @@ struct ssp_data { struct device *ges_device; struct device *temphumidity_device; struct delayed_work work_firmware; + struct delayed_work work_refresh; struct miscdevice shtc1_device; struct miscdevice batch_io_device; @@ -490,6 +531,8 @@ struct ssp_data { bool bTimeSyncing; unsigned int uProxCanc; + unsigned int uCrosstalk; + unsigned int uProxCalResult; unsigned int uProxHiThresh; unsigned int uProxLoThresh; unsigned int uProxHiThresh_default; @@ -503,15 +546,13 @@ struct ssp_data { int iLibraryLength; int aiCheckStatus[SENSOR_MAX]; - unsigned int uIrqFailCnt; - unsigned int uSsdFailCnt; + unsigned int uComFailCnt; unsigned int uResetCnt; - unsigned int uInstFailCnt; unsigned int uTimeOutCnt; unsigned int uIrqCnt; - unsigned int uMissSensorCnt; unsigned int uDumpCnt; + int sealevelpressure; unsigned int uGyroDps; unsigned int uSensorState; unsigned int uCurFirmRev; @@ -520,10 +561,13 @@ struct ssp_data { char uLastAPState; s32 iPressureCal; u64 step_count_total; + atomic_t aSensorEnable; int64_t adDelayBuf[SENSOR_MAX]; + u64 lastTimestamp[SENSOR_MAX]; s32 batchLatencyBuf[SENSOR_MAX]; s8 batchOptBuf[SENSOR_MAX]; + bool reportedData[SENSOR_MAX]; int (*wakeup_mcu)(void); int (*check_mcu_ready)(void); @@ -566,9 +610,12 @@ struct ssp_data { int ap_int; int rst; int chg; - int vzw_prox_gpio; struct regulator *reg_hub; struct regulator *reg_sns; + u8 regulator_is_enable; + + const char *ges_vdd; + const char *ges_led; struct list_head pending_list; void (*ssp_big_task[BIG_TYPE_MAX])(struct work_struct *); diff --git a/drivers/sensorhub/stm/ssp_data.c b/drivers/sensorhub/stm/ssp_data.c index 64604aa3b589..14aa70b1feeb 100755 --- a/drivers/sensorhub/stm/ssp_data.c +++ b/drivers/sensorhub/stm/ssp_data.c @@ -1,314 +1,427 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" - -/* SSP -> AP Instruction */ -#define MSG2AP_INST_BYPASS_DATA 0x37 -#define MSG2AP_INST_LIBRARY_DATA 0x01 -#define MSG2AP_INST_DEBUG_DATA 0x03 -#define MSG2AP_INST_BIG_DATA 0x04 -#define MSG2AP_INST_META_DATA 0x05 -#define MSG2AP_INST_TIME_SYNC 0x06 -#define MSG2AP_INST_RESET 0x07 - -/*************************************************************************/ -/* SSP parsing the dataframe */ -/*************************************************************************/ - -static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, - int *iDataIdx, struct sensor_value *sensorsdata) { - s32 otimestamp = 0; - s64 ctimestamp = 0; - - memcpy(&otimestamp, pchRcvDataFrame + *iDataIdx, 4); - *iDataIdx += 4; - - ctimestamp = (s64) otimestamp * 1000000; - sensorsdata->timestamp = data->timestamp + ctimestamp; -} - -static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); - *iDataIdx += 6; -} - -static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); - *iDataIdx += 12; -} - - -static void get_geomagnetic_uncaldata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); - *iDataIdx += 12; -} - -static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); - *iDataIdx += 6; -} - -static void get_geomagnetic_caldata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ -#ifdef SAVE_MAG_LOG - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); - *iDataIdx += 20; -#else - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); - *iDataIdx += 7; -#endif -} -static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); - *iDataIdx += 17; -} - -static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); - *iDataIdx += 1; -} - -static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ -#ifdef CONFIG_SENSORS_SSP_TMG399X - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 10); - *iDataIdx += 10; -#else - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); - *iDataIdx += 8; -#endif -} - -static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - s16 temperature = 0; - memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); - memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); - sensorsdata->pressure[1] = temperature; - *iDataIdx += 6; -} - -static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); - *iDataIdx += 20; -} - -static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memset(&sensorsdata->prox[0], 0, 1); - memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); - //memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 1); - *iDataIdx += 2; -} - -static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); - *iDataIdx += 1; -} - -static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memset(&sensorsdata->data[2], 0, 2); - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); - *iDataIdx += 5; -} - -static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); - *iDataIdx += 1; -} - -static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); - *iDataIdx += 4; -} - -int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { - u8 bigType = 0; - struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); - big->data = data; - bigType = pchRcvDataFrame[(*pDataIdx)++]; - memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); - *pDataIdx += 4; - memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); - *pDataIdx += 4; - - INIT_WORK(&big->work, data->ssp_big_task[bigType]); - queue_work(data->debug_wq, &big->work); - return SUCCESS; -} - -void refresh_task(struct work_struct *work) { - struct ssp_data *data = container_of((struct delayed_work *)work, - struct ssp_data, work_firmware); - - pr_err("[SSP]: %s\n", __func__); - - if (initialize_mcu(data) > 0) { - sync_sensor_state(data); - ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); - if (data->uLastAPState != 0) - ssp_send_cmd(data, data->uLastAPState, 0); - if (data->uLastResumeState != 0) - ssp_send_cmd(data, data->uLastResumeState, 0); - data->uTimeOutCnt = 0; - } -} - -int queue_refresh_task(struct ssp_data *data, int delay) { - INIT_DELAYED_WORK(&data->work_firmware, refresh_task); - queue_delayed_work(data->debug_wq, &data->work_firmware, - msecs_to_jiffies(delay)); - return SUCCESS; -} - -int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { - int iDataIdx, iSensorData; - u16 length = 0; - struct sensor_value sensorsdata; - struct timespec ts; - - getnstimeofday(&ts); - - for (iDataIdx = 0; iDataIdx < iLength;) { - switch (pchRcvDataFrame[iDataIdx++]) { - case MSG2AP_INST_BYPASS_DATA: - iSensorData = pchRcvDataFrame[iDataIdx++]; - if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { - pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, - iSensorData); - return ERROR; - } - data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, - &sensorsdata); - get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata); - data->report_sensor_data[iSensorData](data, &sensorsdata); - break; - case MSG2AP_INST_DEBUG_DATA: - iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); - if (iSensorData) { - pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, - iSensorData); - return ERROR; - } - break; - case MSG2AP_INST_LIBRARY_DATA: - memcpy(&length, pchRcvDataFrame + iDataIdx, 2); - iDataIdx += 2; - ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, - iDataIdx + length); - iDataIdx += length; - break; - case MSG2AP_INST_BIG_DATA: - handle_big_data(data, pchRcvDataFrame, &iDataIdx); - break; - case MSG2AP_INST_META_DATA: - sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; - sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; - report_meta_data(data, &sensorsdata); - break; - case MSG2AP_INST_TIME_SYNC: - data->bTimeSyncing = true; - break; - case MSG2AP_INST_RESET: - queue_refresh_task(data, 0); - break; - } - } - - if (data->bTimeSyncing) - data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; - - return SUCCESS; -} - -void initialize_function_pointer(struct ssp_data *data) -{ - data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; - data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; - data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = - get_geomagnetic_uncaldata; - data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; - data->get_sensor_data[GEOMAGNETIC_SENSOR] = - get_geomagnetic_caldata; - data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; - data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; - data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; - data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; - data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; - data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = - get_temp_humidity_sensordata; - data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; - data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; - data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; - data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; - data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; - data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; - - data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; - data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; - data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = - report_mag_uncaldata; - data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; - data->report_sensor_data[GEOMAGNETIC_SENSOR] = - report_mag_data; - data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; - data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; - data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; - data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; - data->report_sensor_data[LIGHT_SENSOR] = report_light_data; - data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = - report_temp_humidity_data; - data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; - data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; - data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; - data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; - data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; - data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; - - data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; - data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; -#ifdef CONFIG_SENSORS_SSP_SHTC1 - data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; -#endif -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include +#include + +/* SSP -> AP Instruction */ +#define MSG2AP_INST_BYPASS_DATA 0x37 +#define MSG2AP_INST_LIBRARY_DATA 0x01 +#define MSG2AP_INST_DEBUG_DATA 0x03 +#define MSG2AP_INST_BIG_DATA 0x04 +#define MSG2AP_INST_META_DATA 0x05 +#define MSG2AP_INST_TIME_SYNC 0x06 +#define MSG2AP_INST_RESET 0x07 + +/*************************************************************************/ +/* SSP parsing the dataframe */ +/*************************************************************************/ + +static void generate_data(struct ssp_data *data, struct sensor_value *sensorsdata, + int iSensorData, u64 timestamp) +{ + u64 move_timestamp = data->lastTimestamp[iSensorData]; + while ((move_timestamp * 10 + data->adDelayBuf[iSensorData] * 15) < (timestamp * 10)) { + move_timestamp += data->adDelayBuf[iSensorData]; + sensorsdata->timestamp = move_timestamp; + data->report_sensor_data[iSensorData](data, sensorsdata); + } +} + +static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, + int *iDataIdx, struct sensor_value *sensorsdata, + struct ssp_time_diff *sensortime, int iSensorData) +{ + if (sensortime->batch_mode == BATCH_MODE_RUN) { + if (sensortime->batch_count == sensortime->batch_count_fixed) { + if (sensortime->time_diff == data->adDelayBuf[iSensorData]) { + generate_data(data, sensorsdata, iSensorData, + (data->timestamp - data->adDelayBuf[iSensorData] * (sensortime->batch_count_fixed - 1))); + } + sensorsdata->timestamp = data->timestamp - ((sensortime->batch_count - 1) * sensortime->time_diff); + } else { + if (sensortime->batch_count > 1) + sensorsdata->timestamp = data->timestamp - ((sensortime->batch_count - 1) * sensortime->time_diff); + else + sensorsdata->timestamp = data->timestamp; + } + } else { + if (((sensortime->irq_diff * 10) > (data->adDelayBuf[iSensorData] * 18)) + && ((sensortime->irq_diff * 10) < (data->adDelayBuf[iSensorData] * 100))) { + generate_data(data, sensorsdata, iSensorData, data->timestamp); + } + sensorsdata->timestamp = data->timestamp; + } + *iDataIdx += 4; +} + +static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_uncaldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_geomagnetic_caldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#ifdef SAVE_MAG_LOG + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); + *iDataIdx += 7; +#endif +} + +static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); + *iDataIdx += 17; +} + +static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 10); + *iDataIdx += 10; +#elif defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); + *iDataIdx += 8; +#endif +} + +static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + s16 temperature = 0; + memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); + memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); + sensorsdata->pressure[1] = temperature; + *iDataIdx += 6; +} + +static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 38); + *iDataIdx += 38; +#else//CONFIG_SENSORS_SSP_TMG399X + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +#endif +} + +static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memset(&sensorsdata->prox[0], 0, 2); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 2); + *iDataIdx += 3; +#else + memset(&sensorsdata->prox[0], 0, 1); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + //memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 1); + *iDataIdx += 2; +#endif +} + +static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + *iDataIdx += 2; +#else + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +#endif +} + +static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->data[2], 0, 2); + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); + *iDataIdx += 5; +} + +static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; +} + +int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { + u8 bigType = 0; + struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); + big->data = data; + bigType = pchRcvDataFrame[(*pDataIdx)++]; + memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + + if (bigType >= BIG_TYPE_MAX) { + kfree(big); + return FAIL; + } + + INIT_WORK(&big->work, data->ssp_big_task[bigType]); + queue_work(data->debug_wq, &big->work); + return SUCCESS; +} + +void refresh_task(struct work_struct *work) { + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_refresh); + + if(data->bSspShutdown == true) { + pr_err("[SSP]: %s - ssp already shutdown\n", __func__); + return; + } + + wake_lock(&data->ssp_wake_lock); + pr_err("[SSP]: %s\n", __func__); + data->uResetCnt++; + + if (initialize_mcu(data) > 0) { + sync_sensor_state(data); + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); + if (data->uLastAPState != 0) + ssp_send_cmd(data, data->uLastAPState, 0); + if (data->uLastResumeState != 0) + ssp_send_cmd(data, data->uLastResumeState, 0); + data->uTimeOutCnt = 0; + } + + wake_unlock(&data->ssp_wake_lock); +} + +int queue_refresh_task(struct ssp_data *data, int delay) { + cancel_delayed_work_sync(&data->work_refresh); + + INIT_DELAYED_WORK(&data->work_refresh, refresh_task); + queue_delayed_work(data->debug_wq, &data->work_refresh, + msecs_to_jiffies(delay)); + return SUCCESS; +} + +int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { + int iDataIdx, iSensorData; + u16 length = 0; + struct sensor_value sensorsdata; + struct ssp_time_diff sensortime; + + for (iDataIdx = 0; iDataIdx < iLength;) { + switch (pchRcvDataFrame[iDataIdx++]) { + case MSG2AP_INST_BYPASS_DATA: + iSensorData = pchRcvDataFrame[iDataIdx++]; + if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { + pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, + iSensorData); + return ERROR; + } + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + sensortime.batch_count = sensortime.batch_count_fixed = length; + sensortime.batch_mode = length > 1 ? BATCH_MODE_RUN : BATCH_MODE_NONE; + sensortime.irq_diff = data->timestamp - data->lastTimestamp[iSensorData]; + + if (sensortime.batch_mode == BATCH_MODE_RUN) { + if (data->reportedData[iSensorData] == true) { + u64 time; + sensortime.time_diff = div64_long((s64)(data->timestamp - data->lastTimestamp[iSensorData]), (s64)length); + if (length > 8) + time = data->adDelayBuf[iSensorData] * 18; + else if (length > 4) + time = data->adDelayBuf[iSensorData] * 25; + else if (length > 2) + time = data->adDelayBuf[iSensorData] * 50; + else + time = data->adDelayBuf[iSensorData] * 100; + if ((sensortime.time_diff * 10) > time) { + data->lastTimestamp[iSensorData] = data->timestamp - (data->adDelayBuf[iSensorData] * length); + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } else { + time = data->adDelayBuf[iSensorData] * 18; + if ((sensortime.time_diff * 10) > time) + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } + } else { + if (data->lastTimestamp[iSensorData] < (data->timestamp - (data->adDelayBuf[iSensorData] * length))) { + data->lastTimestamp[iSensorData] = data->timestamp - (data->adDelayBuf[iSensorData] * length); + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } else + sensortime.time_diff = div64_long((s64)(data->timestamp - data->lastTimestamp[iSensorData]), (s64)length); + } + } else { + if (data->reportedData[iSensorData] == false) + sensortime.irq_diff = data->adDelayBuf[iSensorData]; + } + + do { + data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, + &sensorsdata); + + get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata, &sensortime, iSensorData); + if (sensortime.irq_diff > 1000000) + data->report_sensor_data[iSensorData](data, &sensorsdata); + else if ((iSensorData == PROXIMITY_SENSOR) || (iSensorData == PROXIMITY_RAW) + || (iSensorData == GESTURE_SENSOR) || (iSensorData == SIG_MOTION_SENSOR)) + data->report_sensor_data[iSensorData](data, &sensorsdata); + else + pr_err("[SSP]: %s irq_diff is under 1msec (%d)\n", __func__, iSensorData); + sensortime.batch_count--; + } while ((sensortime.batch_count > 0) && (iDataIdx < iLength)); + + if (sensortime.batch_count > 0) + pr_err("[SSP]: %s batch count error (%d)\n", __func__, sensortime.batch_count); + + data->lastTimestamp[iSensorData] = data->timestamp; + data->reportedData[iSensorData] = true; + break; + case MSG2AP_INST_DEBUG_DATA: + iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); + if (iSensorData) { + pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, + iSensorData); + return ERROR; + } + break; + case MSG2AP_INST_LIBRARY_DATA: + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, + iDataIdx + length); + iDataIdx += length; + break; + case MSG2AP_INST_BIG_DATA: + handle_big_data(data, pchRcvDataFrame, &iDataIdx); + break; + case MSG2AP_INST_META_DATA: + sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; + sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; + report_meta_data(data, &sensorsdata); + break; + case MSG2AP_INST_TIME_SYNC: + data->bTimeSyncing = true; + break; + case MSG2AP_INST_RESET: + queue_refresh_task(data, 0); + break; + } + } + + return SUCCESS; +} + +void initialize_function_pointer(struct ssp_data *data) +{ + data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + get_geomagnetic_uncaldata; + data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; + data->get_sensor_data[GEOMAGNETIC_SENSOR] = + get_geomagnetic_caldata; + data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; + data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; + data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; + data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; + data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; + data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + get_temp_humidity_sensordata; + data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; + data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; + data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; + data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; + + data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; + data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; + data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + report_mag_uncaldata; + data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; + data->report_sensor_data[GEOMAGNETIC_SENSOR] = + report_mag_data; + data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; + data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; + data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; + data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; + data->report_sensor_data[LIGHT_SENSOR] = report_light_data; + data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + report_temp_humidity_data; + data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; + data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; + data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; + data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; + data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; + data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; + + data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; + data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; +#endif +} diff --git a/drivers/sensorhub/stm/ssp_debug.c b/drivers/sensorhub/stm/ssp_debug.c index fa4f8312f356..194a3eb634ef 100755 --- a/drivers/sensorhub/stm/ssp_debug.c +++ b/drivers/sensorhub/stm/ssp_debug.c @@ -21,10 +21,7 @@ #define SSP_DEBUG_TIMER_SEC (10 * HZ) -#define LIMIT_RESET_CNT 3000000 -#define LIMIT_SSD_FAIL_CNT 3 -#define LIMIT_INSTRUCTION_FAIL_CNT 1 -#define LIMIT_IRQ_FAIL_CNT 2 +#define LIMIT_RESET_CNT 20 #define LIMIT_TIMEOUT_CNT 3 #define DUMP_FILE_PATH "/data/log/MCU_DUMP" @@ -37,29 +34,27 @@ void ssp_dump_task(struct work_struct *work) { char *buffer; char strFilePath[60]; struct timeval cur_time; - int iTimeTemp; mm_segment_t fs; int buf_len, packet_len, residue, iRet = 0, index = 0 ,iRetTrans=0 ,iRetWrite=0; big = container_of(work, struct ssp_big, work); - pr_err("[SSP]: %s - start ssp dumping (%d)(%d)\n", - __func__,big->data->bMcuDumpMode,big->data->uDumpCnt); + pr_err("[SSP]: %s - start ssp dumping (%d)(%d)\n", __func__, big->data->bMcuDumpMode, big->data->uDumpCnt); big->data->uDumpCnt++; wake_lock(&big->data->ssp_wake_lock); - fs = get_fs(); set_fs(get_ds()); + if(big->data->bMcuDumpMode == true) { do_gettimeofday(&cur_time); - iTimeTemp = (int) cur_time.tv_sec; - - sprintf(strFilePath, "%s%d.txt", DUMP_FILE_PATH, iTimeTemp); + sprintf(strFilePath, "%s%d.dump", DUMP_FILE_PATH, (int)cur_time.tv_sec); dump_file = filp_open(strFilePath, O_RDWR | O_CREAT | O_APPEND, 0666); - if (IS_ERR(dump_file)) { + + if (IS_ERR(dump_file)) + { pr_err("[SSP]: %s - Can't open dump file\n", __func__); set_fs(fs); iRet = PTR_ERR(dump_file); @@ -76,7 +71,8 @@ void ssp_dump_task(struct work_struct *work) { buffer = kzalloc(buf_len, GFP_KERNEL); residue = big->length; - while (residue > 0) { + while (residue > 0) + { packet_len = residue > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : residue; msg = kzalloc(sizeof(*msg), GFP_KERNEL); @@ -87,16 +83,20 @@ void ssp_dump_task(struct work_struct *work) { msg->buffer = buffer; msg->free_buffer = 0; - iRetTrans = ssp_spi_sync(big->data, msg, 1000); - if (iRetTrans != SUCCESS) { + iRetTrans = ssp_spi_sync(big->data, msg, 5000); + + if (iRetTrans != SUCCESS) + { pr_err("[SSP]: %s - Fail to receive data %d (%d)\n", __func__, iRetTrans,residue); break; } - if(big->data->bMcuDumpMode == true) { - iRetWrite = vfs_write(dump_file, (char __user *) buffer, packet_len, - &dump_file->f_pos); - if (iRetWrite < 0) { + if(big->data->bMcuDumpMode == true) + { + iRetWrite = vfs_write(dump_file, (char __user *) buffer, packet_len, &dump_file->f_pos); + + if (iRetWrite < 0) + { pr_err("[SSP]: %s - Can't write dump to file\n", __func__); break; } @@ -104,22 +104,21 @@ void ssp_dump_task(struct work_struct *work) { residue -= packet_len; } - if(big->data->bMcuDumpMode == true && (iRetTrans != SUCCESS || iRetWrite < 0) ) - { - char FAILSTRING[100]; - sprintf(FAILSTRING,"FAIL OCCURED(%d)(%d)(%d)",iRetTrans,iRetWrite,big->length); - vfs_write(dump_file, (char __user *) FAILSTRING, strlen(FAILSTRING),&dump_file->f_pos); - } - - ssp_send_cmd(big->data, MSG2SSP_AP_MCU_DUMP_FINISH, SUCCESS); - - big->data->bDumping = false; if(big->data->bMcuDumpMode == true) { + if(iRetTrans != SUCCESS || iRetWrite < 0) // error case + { + char FAILSTRING[100]; + sprintf(FAILSTRING,"FAIL OCCURED(%d)(%d)(%d)",iRetTrans,iRetWrite,big->length); + vfs_write(dump_file, (char __user *) FAILSTRING, strlen(FAILSTRING),&dump_file->f_pos); + } + filp_close(dump_file, current->files); } + big->data->bDumping = false; + set_fs(fs); wake_unlock(&big->data->ssp_wake_lock); @@ -300,10 +299,17 @@ static void print_sensordata(struct ssp_data *data, unsigned int uSensor) get_msdelay(data->adDelayBuf[uSensor])); break; case GESTURE_SENSOR: +#if defined (CONFIG_SENSORS_SSP_MAX88921) + ssp_dbg("[SSP] %u : %d %d %d %d (%ums)\n", uSensor, + data->buf[uSensor].data[0], data->buf[uSensor].data[1], + data->buf[uSensor].data[2], data->buf[uSensor].data[3], + get_msdelay(data->adDelayBuf[uSensor])); +#else ssp_dbg("[SSP] %u : %d %d %d %d (%ums)\n", uSensor, data->buf[uSensor].data[3], data->buf[uSensor].data[4], data->buf[uSensor].data[5], data->buf[uSensor].data[6], get_msdelay(data->adDelayBuf[uSensor])); +#endif break; case TEMPERATURE_HUMIDITY_SENSOR: ssp_dbg("[SSP] %u : %d %d %d(%ums)\n", uSensor, @@ -361,7 +367,6 @@ static void print_sensordata(struct ssp_data *data, unsigned int uSensor) data->buf[uSensor].step_diff, get_msdelay(data->adDelayBuf[uSensor])); break; - default: ssp_dbg("[SSP] Wrong sensorCnt: %u\n", uSensor); break; @@ -373,22 +378,16 @@ static void debug_work_func(struct work_struct *work) unsigned int uSensorCnt; struct ssp_data *data = container_of(work, struct ssp_data, work_debug); - ssp_dbg("[SSP]: %s(%u) - Sensor state: 0x%x, RC: %u, MS: %u Dump: %u\n", + ssp_dbg("[SSP]: %s(%u) - Sensor state: 0x%x, RC: %u, CC: %u DC: %u TC: %u\n", __func__, data->uIrqCnt, data->uSensorState, data->uResetCnt, - data->uMissSensorCnt,data->uDumpCnt); - - if (data->fw_dl_state >= FW_DL_STATE_DOWNLOADING && - data->fw_dl_state < FW_DL_STATE_DONE) { - pr_info("[SSP] : %s firmware downloading state = %d\n", - __func__, data->fw_dl_state); - return; - } else if (data->fw_dl_state == FW_DL_STATE_FAIL) { - pr_err("[SSP] : %s firmware download failed = %d\n", - __func__, data->fw_dl_state); - return; - } - if ((data->uSensorState & 0xff) == 0x0){ - pr_err("[SSP] : %s MCU sensor probe fail\n", __func__); + data->uComFailCnt, data->uDumpCnt, data->uTimeOutCnt); + + switch (data->fw_dl_state) { + case FW_DL_STATE_FAIL: + case FW_DL_STATE_DOWNLOADING: + case FW_DL_STATE_SYNC: + pr_info("[SSP] : %s firmware downloading state = %d\n", __func__, + data->fw_dl_state); return; } @@ -397,35 +396,15 @@ static void debug_work_func(struct work_struct *work) || data->batchLatencyBuf[uSensorCnt]) print_sensordata(data, uSensorCnt); - if ((atomic_read(&data->aSensorEnable) & SSP_BYPASS_SENSORS_EN_ALL)\ - && (data->uIrqCnt == 0)) - data->uIrqFailCnt++; - else - data->uIrqFailCnt = 0; - - if (((data->uSsdFailCnt >= LIMIT_SSD_FAIL_CNT) - || (data->uInstFailCnt >= LIMIT_INSTRUCTION_FAIL_CNT) - || (data->uIrqFailCnt >= LIMIT_IRQ_FAIL_CNT) - || (data->uTimeOutCnt > LIMIT_TIMEOUT_CNT)) - && (data->bSspShutdown == false) - && (data->uLastResumeState != MSG2SSP_AP_STATUS_SUSPEND)) { - - if (data->uResetCnt < LIMIT_RESET_CNT) { - wake_lock(&data->ssp_wake_lock); - pr_info("[SSP] : %s - uSsdFailCnt(%u), uInstFailCnt(%u),"\ - "uIrqFailCnt(%u), uTimeOutCnt(%u), pending(%u)\n", - __func__, data->uSsdFailCnt, data->uInstFailCnt, data->uIrqFailCnt, - data->uTimeOutCnt, !list_empty(&data->pending_list)); + if (data->uTimeOutCnt > LIMIT_TIMEOUT_CNT) { + if (data->uComFailCnt < LIMIT_RESET_CNT) { + pr_info("[SSP] : %s - uTimeOutCnt(%u), pending(%u)\n", + __func__, data->uTimeOutCnt, !list_empty(&data->pending_list)); + data->uComFailCnt++; reset_mcu(data); - data->uResetCnt++; - wake_unlock(&data->ssp_wake_lock); } else ssp_enable(data, false); - - data->uSsdFailCnt = 0; - data->uInstFailCnt = 0; data->uTimeOutCnt = 0; - data->uIrqFailCnt = 0; } data->uIrqCnt = 0; diff --git a/drivers/sensorhub/stm/ssp_dev.c b/drivers/sensorhub/stm/ssp_dev.c index 6dcee94a859c..8151d5af6a40 100755 --- a/drivers/sensorhub/stm/ssp_dev.c +++ b/drivers/sensorhub/stm/ssp_dev.c @@ -25,6 +25,11 @@ static void ssp_early_suspend(struct early_suspend *handler); static void ssp_late_resume(struct early_suspend *handler); #endif +#define NORMAL_SENSOR_STATE_K 0x3FEFF + +#define GES_LDO_ON 1 +#define GES_LDO_OFF 0 + void ssp_enable(struct ssp_data *data, bool enable) { pr_info("[SSP] %s, enable = %d, old enable = %d\n", @@ -39,7 +44,7 @@ void ssp_enable(struct ssp_data *data, bool enable) disable_irq(data->iIrq); disable_irq_wake(data->iIrq); } else - pr_err("%s, enable error\n", __func__); + pr_err("[SSP] %s, enable error\n", __func__); } /************************************************************************/ /* interrupt happened due to transition/change of SSP MCU */ @@ -48,6 +53,15 @@ void ssp_enable(struct ssp_data *data, bool enable) static irqreturn_t sensordata_irq_thread_fn(int iIrq, void *dev_id) { struct ssp_data *data = dev_id; + struct timespec ts; + + ts = ktime_to_timespec(alarm_get_elapsed_realtime()); + data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; + + if(gpio_get_value(data->mcu_int1)) { + pr_info("[SSP] MCU int HIGH"); + return IRQ_HANDLED; + } select_irq_msg(data); data->uIrqCnt++; @@ -68,21 +82,20 @@ static void initialize_variable(struct ssp_data *data) data->batchLatencyBuf[iSensorIndex] = 0; data->batchOptBuf[iSensorIndex] = 0; data->aiCheckStatus[iSensorIndex] = INITIALIZATION_STATE; + data->lastTimestamp[iSensorIndex] = 0; + data->reportedData[iSensorIndex] = false; } atomic_set(&data->aSensorEnable, 0); data->iLibraryLength = 0; - data->uSensorState = 0; + data->uSensorState = NORMAL_SENSOR_STATE_K; data->uFactoryProxAvg[0] = 0; data->uMagCntlRegData = 1; data->uResetCnt = 0; - data->uInstFailCnt = 0; data->uTimeOutCnt = 0; - data->uSsdFailCnt = 0; + data->uComFailCnt = 0; data->uIrqCnt = 0; - data->uIrqFailCnt = 0; - data->uMissSensorCnt = 0; data->bSspShutdown = true; data->bProximityRawEnabled = false; @@ -126,6 +139,7 @@ static void initialize_variable(struct ssp_data *data) INIT_LIST_HEAD(&data->pending_list); data->step_count_total = 0; + data->sealevelpressure = 0; initialize_function_pointer(data); } @@ -133,6 +147,8 @@ int initialize_mcu(struct ssp_data *data) { int iRet = 0; + clean_pending_list(data); + iRet = get_chipid(data); pr_info("[SSP] MCU device ID = %d, reading ID = %d\n", DEVICE_ID, iRet); if (iRet != DEVICE_ID) { @@ -168,7 +184,8 @@ int initialize_mcu(struct ssp_data *data) data->uCurFirmRev = get_firmware_rev(data); pr_info("[SSP] MCU Firm Rev : New = %8u\n", data->uCurFirmRev); - iRet = SUCCESS; + + iRet = ssp_send_cmd(data, MSG2SSP_AP_MCU_DUMP_CHECK, 0); out: return iRet; } @@ -180,7 +197,7 @@ static int initialize_irq(struct ssp_data *data) pr_info("[SSP]: requesting IRQ %d\n", iIrq); iRet = request_threaded_irq(iIrq, NULL, sensordata_irq_thread_fn, - IRQF_TRIGGER_FALLING, "SSP_Int", data); + IRQF_TRIGGER_FALLING|IRQF_ONESHOT, "SSP_Int", data); if (iRet < 0) { pr_err("[SSP]: %s - request_irq(%d) failed for gpio %d (%d)\n", __func__, iIrq, iIrq, iRet); @@ -209,11 +226,11 @@ static void work_function_firmware_update(struct work_struct *work) if (iRet < 0) { ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", __func__); + data->uSensorState = 0; return; } - if (data->uCurFirmRev == SSP_INVALID_REVISION) - queue_refresh_task(data, SSP_SW_RESET_TIME); + queue_refresh_task(data, SSP_SW_RESET_TIME); } static int ssp_parse_dt(struct device *dev, @@ -243,32 +260,41 @@ static int ssp_parse_dt(struct device *dev, errorno = data->ap_int; goto dt_exit; } +#if defined(CONFIG_SEC_PATEK_PROJECT) + if (of_property_read_string(np, "ssp,ges_vdd_1p8", + &data->ges_vdd) < 0) + pr_err("%s - get ges_vdd error\n", __func__); + + if (of_property_read_string(np, "ssp,ges_led_3p3", + &data->ges_led) < 0) + pr_err("%s - get ges_led error\n", __func__); + pr_err("%s - get ges_vcc pass\n", __func__); + +#endif + +#if defined(CONFIG_MACH_KLTE_JPN) || defined(CONFIG_MACH_KACTIVELTE_DCM) +#if defined(CONFIG_MACH_KLTE_MAX77828_JPN) data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", 0, &flags); +#else + of_property_read_u32(np, "ssp,rst-gpio", &data->rst); +#endif +#else + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); +#endif if (data->rst < 0) { errorno = data->rst ; goto dt_exit; } -#if defined(CONFIG_MACH_KLTE_VZW) - data->vzw_prox_gpio = of_get_named_gpio_flags(np, "ssp,vzw_prox-gpio", - 0, &flags); - if (data->vzw_prox_gpio < 0) { - errorno = data->vzw_prox_gpio ; - goto dt_exit; - } -#endif if (of_property_read_u32(np, "ssp,acc-position", &data->accel_position)) data->accel_position = 0; if (of_property_read_u32(np, "ssp,mag-position", &data->mag_position)) data->mag_position = 0; -#ifdef CONFIG_MACH_KLTE_KOR - data->mag_position = 2; -#endif - if (of_property_read_u32(np, "ssp,ap-rev", &data->ap_rev)) data->ap_rev = 0; @@ -305,14 +331,6 @@ static int ssp_parse_dt(struct device *dev, } gpio_direction_output(data->rst, 1); -#if defined(CONFIG_MACH_KLTE_VZW) - errorno = gpio_request(data->vzw_prox_gpio, "VZW_PROX_EN_GPIO"); - if (errorno) { - pr_err("[SSP] failed to request VZW_PROX_EN_GPIO for SSP\n"); - goto dt_exit; - } - gpio_direction_output(data->vzw_prox_gpio, 0); -#endif data->reg_hub = devm_regulator_get(dev, "hub_vreg"); if (IS_ERR(data->reg_hub)) { pr_err("[SSP] could not get hub_vreg, %ld\n", @@ -332,17 +350,82 @@ static int ssp_parse_dt(struct device *dev, dt_exit: return errorno; } +#if defined(CONFIG_SEC_PATEK_PROJECT) + static int ssp_gesture_regulator_onoff(struct ssp_data *data, int onoff) + { + int rc = 0; + struct regulator *regulator_led_3p3; + struct regulator *regulator_vdd_1p8; + + pr_info("[SSP] %s - start = %d\n", __func__, onoff); + + regulator_vdd_1p8 = regulator_get(NULL, data->ges_vdd); + if (IS_ERR(regulator_vdd_1p8)) { + pr_err("[SSP] %s - vdd_1p8 regulator_get fail\n", __func__); + return -ENODEV; + } + + regulator_led_3p3 = regulator_get(NULL, data->ges_led); + if (IS_ERR(regulator_led_3p3)) { + pr_err("[SSP] %s - vdd_3p3 regulator_get fail\n", __func__); + regulator_put(regulator_vdd_1p8); + return -ENODEV; + } + pr_info("[SSP] %s - onoff = %d\n", __func__, onoff); + + if (onoff == GES_LDO_ON) { + regulator_set_voltage(regulator_vdd_1p8, 1800000, 1800000); + rc = regulator_enable(regulator_vdd_1p8); + if (rc) { + pr_err("[SSP] %s - enable vdd_1p8 failed, rc=%d\n", + __func__, rc); + goto done; + } + regulator_set_voltage(regulator_led_3p3, 3300000, 3300000); + rc = regulator_enable(regulator_led_3p3); + if (rc) { + pr_err("[SSP] %s - enable led_3p3 failed, rc=%d\n", + __func__, rc); + goto done; + } + }else { + rc = regulator_disable(regulator_vdd_1p8); + if (rc) { + pr_err("[SSP] %s - disable vdd_1p8 failed, rc=%d\n", + __func__, rc); + goto done; + } + rc = regulator_disable(regulator_led_3p3); + if (rc) { + pr_err("[SSP] %s - disable led_3p3 failed, rc=%d\n", + __func__, rc); + goto done; + } + } + + data->regulator_is_enable = (u8)onoff; +done: + regulator_put(regulator_led_3p3); + regulator_put(regulator_vdd_1p8); + return rc; +} +#endif static int ssp_probe(struct spi_device *spi_dev) { int iRet = 0; struct ssp_data *data; struct ssp_platform_data *pdata; +#if defined(CONFIG_SEC_PATEK_PROJECT) + int err =-1; +#endif + pr_info("[SSP] %s\n", __func__); - if (poweroff_charging == 1) { - pr_err("[SSP] probe exit : lpm %d\n", poweroff_charging); + if (poweroff_charging == 1 || boot_mode_recovery == 1) { + pr_err("[SSP] probe exit : lpm %d, recovery %d\n", + poweroff_charging, boot_mode_recovery); return -ENODEV; } @@ -395,6 +478,16 @@ static int ssp_probe(struct spi_device *spi_dev) } } +#if defined(CONFIG_SEC_PATEK_PROJECT) + err = ssp_gesture_regulator_onoff(data, GES_LDO_ON); + if (err < 0) { + pr_err("[SSP] %s max88922_regulator_on fail err = %d\n", + __func__, err); + goto err_setup; + } + usleep_range(1000, 1100); +#endif + spi_dev->mode = SPI_MODE_1; if (spi_setup(spi_dev)) { pr_err("failed to setup spi for ssp_spi\n"); @@ -481,7 +574,6 @@ static int ssp_probe(struct spi_device *spi_dev) if (data->fw_dl_state == FW_DL_STATE_NONE) { iRet = initialize_mcu(data); if (iRet == ERROR) { - data->uResetCnt++; toggle_mcu_reset(data); } else if (iRet < ERROR) { pr_err("[SSP]: %s - initialize_mcu failed\n", __func__); @@ -556,6 +648,12 @@ static void ssp_shutdown(struct spi_device *spi_dev) cancel_delayed_work_sync(&data->work_firmware); } + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SHUTDOWN, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SHUTDOWN failed\n", + __func__); + ssp_enable(data, false); clean_pending_list(data); @@ -563,8 +661,6 @@ static void ssp_shutdown(struct spi_device *spi_dev) unregister_early_suspend(&data->early_suspend); #endif - disable_debug_timer(data); - free_irq(data->iIrq, data); gpio_free(data->mcu_int1); @@ -576,8 +672,7 @@ static void ssp_shutdown(struct spi_device *spi_dev) ssp_sensorhub_remove(data); #endif - del_timer_sync(&data->debug_timer); - cancel_work_sync(&data->work_debug); + cancel_delayed_work_sync(&data->work_refresh); destroy_workqueue(data->debug_wq); wake_lock_destroy(&data->ssp_wake_lock); #ifdef CONFIG_SENSORS_SSP_SHTC1 diff --git a/drivers/sensorhub/stm/ssp_firmware.c b/drivers/sensorhub/stm/ssp_firmware.c index 77f5620b3e0e..4b29682ab218 100755 --- a/drivers/sensorhub/stm/ssp_firmware.c +++ b/drivers/sensorhub/stm/ssp_firmware.c @@ -1,861 +1,893 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" - -#define SSP_FIRMWARE_REVISION_STM 13122000 - -#define BOOT_SPI_HZ 4800000 -#define NORM_SPI_HZ 4800000 - -/* Bootload mode cmd */ -#define BL_FW_NAME "ssp_stm.fw" -#define BL_UMS_FW_NAME "ssp_stm.bin" -#define BL_CRASHED_FW_NAME "ssp_crashed.fw" - -#define BL_UMS_FW_PATH 255 - -#define APP_SLAVE_ADDR 0x18 -#define BOOTLOADER_SLAVE_ADDR 0x26 - -/* Bootloader mode status */ -#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ -#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ -#define BL_FRAME_CRC_CHECK 0x02 -#define BL_FRAME_CRC_FAIL 0x03 -#define BL_FRAME_CRC_PASS 0x04 -#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ -#define BL_BOOT_STATUS_MASK 0x3f - -/* Command to unlock bootloader */ -#define BL_UNLOCK_CMD_MSB 0xaa -#define BL_UNLOCK_CMD_LSB 0xdc - -/* STM */ -#define SSP_STM_DEBUG 0 -#define STM_SHOULD_BE_IMPLEMENT 0 - -#define SEND_ADDR_LEN 5 -#define BL_SPI_SOF 0x5A -#define BL_ACK 0x79 -#define BL_ACK2 0xF9 -#define BL_NACK 0x1F -#define BL_IDLE 0xA5 -#define BL_DUMMY 0x00 - -#define STM_MAX_XFER_SIZE 256 -#define STM_MAX_BUFFER_SIZE 260 -#define STM_APP_ADDR 0x08000000 - -#define BYTE_DELAY_READ 10 -#define BYTE_DELAY_WRITE 8 - -#define DEF_ACK_ERASE_NUMBER 14000 // Erase time ack wait increase : Flash size adjust -#define DEF_ACKCMD_NUMBER 40 -#define DEF_ACKROOF_NUMBER 40 - -#define WMEM_COMMAND 0x31 /* Write Memory command */ -#define GO_COMMAND 0x21 /* GO command */ -#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ - -#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ - -#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ -#define XOR_GO_COMMAND 0xDE /* GO command */ -#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ - -#define EXT_ER_DATA_LEN 3 -#define BLMODE_RETRYCOUNT 3 -#define BYTETOBYTE_USED 0 - -struct stm32fwu_spi_cmd { - u8 cmd; - u8 xor_cmd; - u8 ack_pad; /* Send this when waiting for an ACK */ - u8 reserved; - int status; /* ACK or NACK (or error) */ - int timeout; /* This is number of retries */ - int ack_loops; // Not used -}; - -static int stm32fwu_spi_write(struct spi_device *spi, const u8 *buffer, ssize_t len); - - -unsigned int get_module_rev(struct ssp_data *data) -{ - return SSP_FIRMWARE_REVISION_STM; -} - -static void stm32fwu_spi_send_ack( struct spi_device *spi, u8 SyncData ) -{ - u8 syncb[2] = {0}; - syncb[0] = SyncData; - stm32fwu_spi_write(spi, syncb, 1); -} - -static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, - struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) -{ - static int check_spi_wait_cnt = 1; - - struct spi_message m; - char tx_buf = 0x0; - char rx_buf = 0x0; - struct spi_transfer t = { - .tx_buf = &tx_buf, - .rx_buf = &rx_buf, - .len = 1, - .bits_per_word = 8, - }; - int i = 0; - int ret; - dummy_bytes = BL_DUMMY; -#if SSP_STM_DEBUG - pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", - __func__, dummy_bytes); -#endif - while (i < cmd->timeout) { - tx_buf = dummy_bytes; - spi_message_init(&m); - spi_message_add_tail(&t, &m); - - ret = spi_sync(spi, &m); - - if (ret < 0) { - dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); - return ret; - } else if ((rx_buf == BL_ACK) || (rx_buf == BL_NACK)) { - // ACK cmd set - stm32fwu_spi_send_ack(spi, BL_ACK); - return (int)rx_buf; - } else { - // Cross cmd set - tx_buf = rx_buf; - } - if (check_spi_wait_cnt % 20 == 0) - msleep(1); - else - usleep_range(1000, 1100); - i++; - check_spi_wait_cnt++; - } -#if SSP_STM_DEBUG - dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); -#endif - return -EIO; -} - -static int stm32fwu_spi_send_cmd(struct spi_device *spi, - struct stm32fwu_spi_cmd *cmd) -{ - u8 tx_buf[3] = {0,}; - u8 rx_buf[3] = {0,}; - u8 dummy_byte = 0; - struct spi_message m; - int ret; -#if BYTETOBYTE_USED - int i; - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); -#else - struct spi_transfer t = { - .tx_buf = tx_buf, - .rx_buf = rx_buf, - .len = 3, - .bits_per_word = 8, - }; -#endif - pr_debug("[SSP]%s\n", __func__); - - spi_message_init(&m); - tx_buf[0] = BL_SPI_SOF; - tx_buf[1] = cmd->cmd; - tx_buf[2] = cmd->xor_cmd; - -#if BYTETOBYTE_USED - for (i = 0; i < 3; i++) { - t[i].tx_buf = &tx_buf[i]; - t[i].rx_buf = &rx_buf[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_WRITE; - spi_message_add_tail(&t[i], &m); - } -#else - spi_message_add_tail(&t, &m); -#endif - - ret = spi_sync(spi, &m); - if (ret < 0) { - dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); - return ret; - } - - dummy_byte = cmd->ack_pad; - - /* check for ack/nack and loop until found */ - ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); - cmd->status = ret; - - if (ret != BL_ACK) { - pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); - return ret; - } - - return ret; -} -#if STM_SHOULD_BE_IMPLEMENT -static int stm32fwu_spi_read(struct spi_device *spi, - u8 *buffer, ssize_t len) -{ - int ret; - int i; - u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; - struct spi_message m; - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); - - spi_message_init(&m); - - for (i = 0; i < len; i++) { - t[i].tx_buf = tx_buf; - t[i].rx_buf = &buffer[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_READ; - spi_message_add_tail(&t[i], &m); - } - - ret = spi_sync(spi, &m); - - if (ret < 0) { - pr_err("[SSP] Error in %d spi_read()\n", ret); - return ret; - } - - return len; -} -#endif - -static int stm32fwu_spi_write(struct spi_device *spi, - const u8 *buffer, ssize_t len) -{ - int ret; - u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; - struct spi_message m; -#if BYTETOBYTE_USED - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); - int i; -#else - struct spi_transfer t = { - .tx_buf = buffer, - .rx_buf = rx_buf, - .len = len, - .bits_per_word = 8, - }; -#endif - spi_message_init(&m); -#if BYTETOBYTE_USED - for (i = 0; i < len; i++) { - t[i].tx_buf = &buffer[i]; - t[i].rx_buf = &rx_buf[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_WRITE; - spi_message_add_tail(&t[i], &m); - } -#else - spi_message_add_tail(&t, &m); -#endif - ret = spi_sync(spi, &m); - - if (ret < 0) { - pr_err("[SSP] Error in %d spi_write()\n", ret); - return ret; - } - - return len; -} - -static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) -{ - int res; - int i = send_short; - int len = SEND_ADDR_LEN - send_short; - u8 header[SEND_ADDR_LEN]; - struct stm32fwu_spi_cmd dummy_cmd; - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - pr_debug("[SSP]%s\n", __func__); - - - header[0] = (u8)((fw_addr >> 24) & 0xFF); - header[1] = (u8)((fw_addr >> 16) & 0xFF); - header[2] = (u8)((fw_addr >> 8) & 0xFF); - header[3] = (u8)(fw_addr & 0xFF); - header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; - - res = stm32fwu_spi_write(spi, &header[i], len); - - if (res < len) { - pr_err("[SSP] Error in sending address. Res %d\n", res); - return ((res > 0) ? -EIO : res); - } - - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - if (res != BL_ACK) { - pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", - res); - return res; - } - return 0; -} - -#if STM_SHOULD_BE_IMPLEMENT -static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) -{ - int res; - uchar bbuff[3]; - struct stm32fwu_spi_cmd dummy_cmd; - pr_debug("[SSP]%s\n", __func__); - - if (bytes > 256) { - return -EINVAL; - } - - bbuff[0] = bytes - 1; - bbuff[1] = ~bbuff[0]; - - res = stm32fwu_spi_write(spi, bbuff, 2); - - if (res < 2) { - return -EPROTO; - } - - if (get_ack) { - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - - if (res != BL_ACK) { - return -EPROTO; - } - } - return 0; -} - -static int fw_read_stm(struct spi_device *spi, u32 fw_addr, - int len, const u8 *buffer) -{ - int res; - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int i; - u8 xor = 0; - u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; - - cmd.cmd = WMEM_COMMAND; - cmd.xor_cmd = XOR_RMEM_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); - - res = stm32fwu_spi_send_cmd(spi, &cmd); - - if (res != BL_ACK) { - pr_err("[SSP] Error %d sending read_mem cmd\n", res); - return res; - } - - res = send_addr(spi, fw_addr, 0); - - if (res != 0) { - pr_err("[SSP] Error %d sending read_mem Address\n", res); - return res; - } - - res = send_byte_count(spi, len, 1); - - if (res != 0) { - return -EPROTO; - } - - // Add Read Syc - stm32fwu_spi_send_ack(spi, BL_DUMMY); - - res = stm32fwu_spi_read(spi, buffer, len); - - if (res < len) { - return -EIO; - } - - return len; -} -#endif - -static int fw_write_stm(struct spi_device *spi, u32 fw_addr, - int len, const u8 *buffer) -{ - int res; - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int i; - u8 xor = 0; - u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; - - cmd.cmd = WMEM_COMMAND; - cmd.xor_cmd = XOR_WMEM_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); - pr_debug("[SSP]%s\n", __func__); -#if SSP_STM_DEBUG - pr_info("[SSP] sending WMEM_COMMAND\n"); -#endif - - if (len > STM_MAX_XFER_SIZE) { - pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); - return -EINVAL; - } - - send_buff[0] = len - 1; - memcpy(&send_buff[1], buffer, len); - for (i = 0; i < (len + 1); i++) - xor ^= send_buff[i]; - - send_buff[len + 1] = xor; - - res = stm32fwu_spi_send_cmd(spi, &cmd); - if (res != BL_ACK) { - pr_err("[SSP] Error %d sending read_mem cmd\n", res); - return res; - } - - res = send_addr(spi, fw_addr, 0); - - if (res != 0) { - pr_err("[SSP] Error %d sending write_mem Address\n", res); - return res; - } - - res = stm32fwu_spi_write(spi, send_buff, len + 2); - if (res < len) { - pr_err("[SSP] Error writing to flash. res = %d\n", res); - return ((res > 0) ? -EIO : res); - } - pr_debug("[SSP]%s 2\n", __func__); - - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - usleep_range(100, 150); /* Samsung added */ - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - if (res == BL_ACK) { - return len; - } - - if (res == BL_NACK) { - pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); - return -EPROTO; - } - pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); - return -ETIME; -} - -static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) -{ - const u8 *buff = NULL; - char fw_path[BL_UMS_FW_PATH+1]; - unsigned int uFSize = 0, uNRead = 0; - unsigned int uPos = 0; - int iRet = SUCCESS; - int remaining; - int block = STM_MAX_XFER_SIZE; - unsigned int fw_addr = STM_APP_ADDR; - int retry_count = 0; - int err_count = 0; - int count = 0; - struct file *fp = NULL; - mm_segment_t old_fs = get_fs(); - - pr_info("[SSP] ssp_load_ums_fw start!!!\n"); - - old_fs = get_fs(); - set_fs(get_ds()); - - snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); - - fp = filp_open(fw_path, O_RDONLY, 0); - if (IS_ERR(fp)) { - iRet = ERROR; - pr_err("file %s open error:%d\n", fw_path, (s32)fp); - goto err_open; - } - - uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; - pr_info("ssp_load_ums firmware size: %u\n", uFSize); - - buff = kzalloc((size_t)uFSize, GFP_KERNEL); - if (!buff) { - iRet = ERROR; - pr_err("fail to alloc buffer for fw\n"); - goto err_alloc; - } - - uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, - (unsigned int)uFSize, &fp->f_pos); - if (uNRead != uFSize) { - iRet = ERROR; - pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); - goto err_fw_size; - } - remaining = uFSize; - - while (remaining > 0) { - if (block > remaining) - block = remaining; - - while (retry_count < 3) { - iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); - if (iRet < block) { - pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); - if (iRet < 0) { - pr_err("[SSP] Erro was %d\n", iRet); - } else { - pr_err("[SSP] Incomplete write of %d bytes\n", - iRet); - iRet = -EIO; - } - retry_count++; - err_count++; - } else { - retry_count = 0; - break; - } - } - if (iRet < 0) { - pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); - goto out; - } - remaining -= block; - uPos += block; - fw_addr += block; - if (count++ == 50) { - pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, - uFSize); - count = 0; - } - } - pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); -out: -err_fw_size: - kfree(buff); -err_alloc: - filp_close(fp, NULL); -err_open: - set_fs(old_fs); - - return iRet; -} - -static int fw_erase_stm(struct spi_device *spi) -{ - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int ret; - char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; - pr_debug("[SSP]%s\n", __func__); - cmd.cmd = EXT_ER_COMMAND; - cmd.xor_cmd = XOR_EXT_ER_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = BL_DUMMY; - - ret = stm32fwu_spi_send_cmd(spi, &cmd); - - if (ret != BL_ACK) { - pr_err("[SSP] fw_erase failed - %d\n", ret); - return ret; - } - - ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); - - if( ret < EXT_ER_DATA_LEN ) - { - pr_err("[SSP] fw_erase write failed\n"); - return 0; - } - - dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; - - ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - - if (ret == BL_ACK) - return 0; - else if (ret == BL_NACK) - return -EPROTO; - else - return -ETIME; - -} - -static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) -{ - const struct firmware *fw = NULL; - int remaining; - unsigned int uPos = 0; - unsigned int fw_addr = STM_APP_ADDR; - int iRet; - int block = STM_MAX_XFER_SIZE; - int count = 0; - int err_count = 0; - int retry_count = 0; - - pr_info("[SSP] ssp_load_fw start!!!\n"); - - iRet = request_firmware(&fw, pFn, &spi->dev); - if (iRet) { - pr_err("[SSP] Unable to open firmware %s\n", pFn); - return iRet; - } - - remaining = fw->size; - while (remaining > 0) { - if (block > remaining) - block = remaining; - - while (retry_count < 3) { - iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); - if (iRet < block) { - pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); - if (iRet < 0) { - pr_err("[SSP] Erro was %d\n", iRet); - } else { - pr_err("[SSP] Incomplete write of %d bytes\n", - iRet); - iRet = -EIO; - } - retry_count++; - err_count++; - } else { - retry_count = 0; - break; - } - } - if (iRet < 0) { - pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); - goto out_load_kernel; - } - remaining -= block; - uPos += block; - fw_addr += block; - if (count++ == 20) { - pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, - fw->size); - count = 0; - } - } - - pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); - -out_load_kernel: - release_firmware(fw); - return iRet; -} - -static int change_to_bootmode(struct ssp_data *data) -{ - int iCnt; - int ret; - char syncb = BL_SPI_SOF; - struct stm32fwu_spi_cmd dummy_cmd; - pr_debug("[SSP]%s\n", __func__); - - dummy_cmd.timeout = DEF_ACKCMD_NUMBER; - - gpio_set_value_cansleep(data->rst, 0); - mdelay(4); - gpio_set_value_cansleep(data->rst, 1); - usleep_range(45000, 47000); - - - for (iCnt = 0; iCnt < 9; iCnt++) { - gpio_set_value_cansleep(data->rst, 0); - mdelay(4); - gpio_set_value_cansleep(data->rst, 1); - usleep_range(15000, 15500); - } - - ret = stm32fwu_spi_write(data->spi, &syncb, 1); -#if SSP_STM_DEBUG - pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); -#endif - - ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_DUMMY); -#if SSP_STM_DEBUG - pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", ret, ret); -#endif - - return ret; -} - -void toggle_mcu_reset(struct ssp_data *data) -{ - gpio_set_value_cansleep(data->rst, 0); - - usleep_range(1000, 1200); - - gpio_set_value_cansleep(data->rst, 1); -} - -static int update_mcu_bin(struct ssp_data *data, int iBinType) -{ - int retry = BLMODE_RETRYCOUNT; - int iRet = SUCCESS; - struct stm32fwu_spi_cmd cmd; - - cmd.cmd = GO_COMMAND; - cmd.xor_cmd = XOR_GO_COMMAND; - cmd.timeout = 1000; - cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); - - // 1. Start system boot mode - do { - iRet = change_to_bootmode(data); - pr_info("[ssp] bootmode %d retry: %d\n", iRet, 3 - retry); - } while (retry-- > 0 && iRet != BL_ACK ); - - if(iRet != BL_ACK) { - pr_err("[SSP]: %s - change_to_bootmode %d\n", - __func__, iRet); - return iRet; - } - - // 2. Flash erase all - iRet = fw_erase_stm(data->spi); - if (iRet < 0) { - pr_err("[SSP]: %s - fw_erase_stm %d\n", - __func__, iRet); - return iRet; - } - - switch (iBinType) { - case KERNEL_BINARY: - /* HW request: I2C line is reversed */ - iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME); - break; - case KERNEL_CRASHED_BINARY: - iRet = load_kernel_fw_bootmode(data->spi, BL_CRASHED_FW_NAME); - break; - case UMS_BINARY: - iRet = load_ums_fw_bootmode(data->spi, BL_UMS_FW_NAME); - break; - default: - pr_err("[SSP] binary type error!!\n"); - } -/* STM : GO USER ADDR */ - stm32fwu_spi_send_cmd(data->spi, &cmd); - send_addr(data->spi, STM_APP_ADDR, 0); - - return iRet; -} - -int forced_to_download_binary(struct ssp_data *data, int iBinType) -{ - int iRet = 0; - int retry = 3; - - ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); - - ssp_enable(data, false); - - data->fw_dl_state = FW_DL_STATE_DOWNLOADING; - pr_info("[SSP] %s, DL state = %d\n", __func__, - data->fw_dl_state); - data->spi->max_speed_hz = BOOT_SPI_HZ; - if (spi_setup(data->spi)) - pr_err("failed to setup spi for ssp_boot\n"); - - do { - pr_info("[SSP] %d try\n", 3 - retry); - iRet = update_mcu_bin(data, iBinType); - } while (retry -- > 0 && iRet < 0); - data->spi->max_speed_hz = NORM_SPI_HZ; - if (spi_setup(data->spi)) - pr_err("failed to setup spi for ssp_norm\n"); - - if (iRet < 0) { - ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); - goto out; - } - - data->fw_dl_state = FW_DL_STATE_SYNC; - pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); - ssp_enable(data, true); - - proximity_open_lcd_ldi(data); - proximity_open_calibration(data); - accel_open_calibration(data); - gyro_open_calibration(data); - pressure_open_calibration(data); - - data->fw_dl_state = FW_DL_STATE_DONE; - pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); - - iRet = SUCCESS; -out: - return iRet; -} - -int check_fwbl(struct ssp_data *data) -{ - - unsigned int fw_revision; - - pr_info("[SSP] change_rev = %d\n", data->ssp_changes); - fw_revision = SSP_FIRMWARE_REVISION_STM; - - data->uCurFirmRev = get_firmware_rev(data); - - if ((data->uCurFirmRev == SSP_INVALID_REVISION) - || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { -#if STM_SHOULD_BE_IMPLEMENT - data->client->addr = BOOTLOADER_SLAVE_ADDR; - iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); - - if (iRet >= 0) - pr_info("[SSP] ssp_load_fw_bootmode\n"); - else { - pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", - data->uCurFirmRev); - data->client->addr = APP_SLAVE_ADDR; - data->uCurFirmRev = get_firmware_rev(data); - if (data->uCurFirmRev == SSP_INVALID_REVISION - || data->uCurFirmRev == ERROR) { - pr_err("[SSP] MCU is not working, FW download failed\n"); - return FW_DL_STATE_FAIL; - } - } -#endif - data->uCurFirmRev = SSP_INVALID_REVISION; - pr_err("[SSP] SSP_INVALID_REVISION\n"); - return FW_DL_STATE_NEED_TO_SCHEDULE; - } else { - if (data->uCurFirmRev != fw_revision) { - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - - return FW_DL_STATE_NEED_TO_SCHEDULE; - } - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - } - - return FW_DL_STATE_NONE; -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define SSP_FIRMWARE_REVISION_STM 14120100 +#define SSP_FIRMWARE_REVISION_TASMAN 14061000 +#define SSP_FIRMWARE_REVISION_PATEK 14070700 + +#define BOOT_SPI_HZ 4800000 +#define NORM_SPI_HZ 4800000 + +/* Bootload mode cmd */ +#define BL_FW_NAME "ssp_stm.fw" +#define BL_FW_NAME_TASMAN "ssp_stm_tasman.fw" +#define BL_FW_NAME_PATEK "ssp_stm_patek.fw" +#define BL_UMS_FW_NAME "ssp_stm.bin" +#define BL_CRASHED_FW_NAME "ssp_crashed.fw" + +#define BL_UMS_FW_PATH 255 + +#define APP_SLAVE_ADDR 0x18 +#define BOOTLOADER_SLAVE_ADDR 0x26 + +/* Bootloader mode status */ +#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ +#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ +#define BL_FRAME_CRC_CHECK 0x02 +#define BL_FRAME_CRC_FAIL 0x03 +#define BL_FRAME_CRC_PASS 0x04 +#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ +#define BL_BOOT_STATUS_MASK 0x3f + +/* Command to unlock bootloader */ +#define BL_UNLOCK_CMD_MSB 0xaa +#define BL_UNLOCK_CMD_LSB 0xdc + +/* STM */ +#define SSP_STM_DEBUG 0 +#define STM_SHOULD_BE_IMPLEMENT 0 + +#define SEND_ADDR_LEN 5 +#define BL_SPI_SOF 0x5A +#define BL_ACK 0x79 +#define BL_ACK2 0xF9 +#define BL_NACK 0x1F +#define BL_IDLE 0xA5 +#define BL_DUMMY 0x00 + +#define STM_MAX_XFER_SIZE 256 +#define STM_MAX_BUFFER_SIZE 260 +#define STM_APP_ADDR 0x08000000 + +#define BYTE_DELAY_READ 10 +#define BYTE_DELAY_WRITE 8 + +#define DEF_ACK_ERASE_NUMBER 14000 // Erase time ack wait increase : Flash size adjust +#define DEF_ACKCMD_NUMBER 40 +#define DEF_ACKROOF_NUMBER 40 + +#define WMEM_COMMAND 0x31 /* Write Memory command */ +#define GO_COMMAND 0x21 /* GO command */ +#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ + +#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ + +#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ +#define XOR_GO_COMMAND 0xDE /* GO command */ +#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ + +#define EXT_ER_DATA_LEN 3 +#define BLMODE_RETRYCOUNT 3 +#define BYTETOBYTE_USED 0 + +struct stm32fwu_spi_cmd { + u8 cmd; + u8 xor_cmd; + u8 ack_pad; /* Send this when waiting for an ACK */ + u8 reserved; + int status; /* ACK or NACK (or error) */ + int timeout; /* This is number of retries */ + int ack_loops; // Not used +}; + +static int stm32fwu_spi_write(struct spi_device *spi, const u8 *buffer, ssize_t len); + + +unsigned int get_module_rev(struct ssp_data *data) +{ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + return SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SEC_PATEK_PROJECT) + return SSP_FIRMWARE_REVISION_PATEK; +#else + return SSP_FIRMWARE_REVISION_STM; +#endif +} + +static void stm32fwu_spi_send_ack( struct spi_device *spi, u8 SyncData ) +{ + u8 syncb[2] = {0}; + syncb[0] = SyncData; + stm32fwu_spi_write(spi, syncb, 1); +} + +static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) +{ + static int check_spi_wait_cnt = 1; + + struct spi_message m; + char tx_buf = 0x0; + char rx_buf = 0x0; + struct spi_transfer t = { + .tx_buf = &tx_buf, + .rx_buf = &rx_buf, + .len = 1, + .bits_per_word = 8, + }; + int i = 0; + int ret; + dummy_bytes = BL_DUMMY; +#if SSP_STM_DEBUG + pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", + __func__, dummy_bytes); +#endif + while (i < cmd->timeout) { + tx_buf = dummy_bytes; + spi_message_init(&m); + spi_message_add_tail(&t, &m); + + ret = spi_sync(spi, &m); + + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } else if ((rx_buf == BL_ACK) || (rx_buf == BL_NACK)) { + // ACK cmd set + stm32fwu_spi_send_ack(spi, BL_ACK); + return (int)rx_buf; + } else { + // Cross cmd set + tx_buf = rx_buf; + } + if (check_spi_wait_cnt % 20 == 0) + msleep(1); + else + usleep_range(1000, 1100); + i++; + check_spi_wait_cnt++; + } +#if SSP_STM_DEBUG + dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); +#endif + return -EIO; +} + +static int stm32fwu_spi_send_cmd(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd) +{ + u8 tx_buf[3] = {0,}; + u8 rx_buf[3] = {0,}; + u8 dummy_byte = 0; + struct spi_message m; + int ret; +#if BYTETOBYTE_USED + int i; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); +#else + struct spi_transfer t = { + .tx_buf = tx_buf, + .rx_buf = rx_buf, + .len = 3, + .bits_per_word = 8, + }; +#endif + pr_debug("[SSP]%s\n", __func__); + + spi_message_init(&m); + tx_buf[0] = BL_SPI_SOF; + tx_buf[1] = cmd->cmd; + tx_buf[2] = cmd->xor_cmd; + +#if BYTETOBYTE_USED + for (i = 0; i < 3; i++) { + t[i].tx_buf = &tx_buf[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + + ret = spi_sync(spi, &m); + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } + + dummy_byte = cmd->ack_pad; + + /* check for ack/nack and loop until found */ + ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); + cmd->status = ret; + + if (ret != BL_ACK) { + pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); + return ret; + } + + return ret; +} +#if STM_SHOULD_BE_IMPLEMENT +static int stm32fwu_spi_read(struct spi_device *spi, + u8 *buffer, ssize_t len) +{ + int ret; + int i; + u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + + spi_message_init(&m); + + for (i = 0; i < len; i++) { + t[i].tx_buf = tx_buf; + t[i].rx_buf = &buffer[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_READ; + spi_message_add_tail(&t[i], &m); + } + + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_read()\n", ret); + return ret; + } + + return len; +} +#endif + +static int stm32fwu_spi_write(struct spi_device *spi, + const u8 *buffer, ssize_t len) +{ + int ret; + u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; +#if BYTETOBYTE_USED + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + int i; +#else + struct spi_transfer t = { + .tx_buf = buffer, + .rx_buf = rx_buf, + .len = len, + .bits_per_word = 8, + }; +#endif + spi_message_init(&m); +#if BYTETOBYTE_USED + for (i = 0; i < len; i++) { + t[i].tx_buf = &buffer[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_write()\n", ret); + return ret; + } + + return len; +} + +static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) +{ + int res; + int i = send_short; + int len = SEND_ADDR_LEN - send_short; + u8 header[SEND_ADDR_LEN]; + struct stm32fwu_spi_cmd dummy_cmd; + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + pr_debug("[SSP]%s\n", __func__); + + + header[0] = (u8)((fw_addr >> 24) & 0xFF); + header[1] = (u8)((fw_addr >> 16) & 0xFF); + header[2] = (u8)((fw_addr >> 8) & 0xFF); + header[3] = (u8)(fw_addr & 0xFF); + header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; + + res = stm32fwu_spi_write(spi, &header[i], len); + + if (res < len) { + pr_err("[SSP] Error in sending address. Res %d\n", res); + return ((res > 0) ? -EIO : res); + } + + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res != BL_ACK) { + pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", + res); + return res; + } + return 0; +} + +#if STM_SHOULD_BE_IMPLEMENT +static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) +{ + int res; + uchar bbuff[3]; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + if (bytes > 256) { + return -EINVAL; + } + + bbuff[0] = bytes - 1; + bbuff[1] = ~bbuff[0]; + + res = stm32fwu_spi_write(spi, bbuff, 2); + + if (res < 2) { + return -EPROTO; + } + + if (get_ack) { + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (res != BL_ACK) { + return -EPROTO; + } + } + return 0; +} + +static int fw_read_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_RMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + + res = stm32fwu_spi_send_cmd(spi, &cmd); + + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending read_mem Address\n", res); + return res; + } + + res = send_byte_count(spi, len, 1); + + if (res != 0) { + return -EPROTO; + } + + // Add Read Syc + stm32fwu_spi_send_ack(spi, BL_DUMMY); + + res = stm32fwu_spi_read(spi, buffer, len); + + if (res < len) { + return -EIO; + } + + return len; +} +#endif + +static int fw_write_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_WMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + pr_debug("[SSP]%s\n", __func__); +#if SSP_STM_DEBUG + pr_info("[SSP] sending WMEM_COMMAND\n"); +#endif + + if (len > STM_MAX_XFER_SIZE) { + pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); + return -EINVAL; + } + + send_buff[0] = len - 1; + memcpy(&send_buff[1], buffer, len); + for (i = 0; i < (len + 1); i++) + xor ^= send_buff[i]; + + send_buff[len + 1] = xor; + + res = stm32fwu_spi_send_cmd(spi, &cmd); + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending write_mem Address\n", res); + return res; + } + + res = stm32fwu_spi_write(spi, send_buff, len + 2); + if (res < len) { + pr_err("[SSP] Error writing to flash. res = %d\n", res); + return ((res > 0) ? -EIO : res); + } + pr_debug("[SSP]%s 2\n", __func__); + + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + usleep_range(100, 150); /* Samsung added */ + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res == BL_ACK) { + return len; + } + + if (res == BL_NACK) { + pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); + return -EPROTO; + } + pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); + return -ETIME; +} + +static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const u8 *buff = NULL; + char fw_path[BL_UMS_FW_PATH+1]; + unsigned int uFSize = 0, uNRead = 0; + unsigned int uPos = 0; + int iRet = SUCCESS; + int remaining; + int block = STM_MAX_XFER_SIZE; + unsigned int fw_addr = STM_APP_ADDR; + int retry_count = 0; + int err_count = 0; + int count = 0; + struct file *fp = NULL; + mm_segment_t old_fs = get_fs(); + + pr_info("[SSP] ssp_load_ums_fw start!!!\n"); + + old_fs = get_fs(); + set_fs(get_ds()); + + snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); + + fp = filp_open(fw_path, O_RDONLY, 0); + if (IS_ERR(fp)) { + iRet = ERROR; + pr_err("file %s open error:%d\n", fw_path, (s32)fp); + goto err_open; + } + + uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; + pr_info("ssp_load_ums firmware size: %u\n", uFSize); + + buff = kzalloc((size_t)uFSize, GFP_KERNEL); + if (!buff) { + iRet = ERROR; + pr_err("fail to alloc buffer for fw\n"); + goto err_alloc; + } + + uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, + (unsigned int)uFSize, &fp->f_pos); + if (uNRead != uFSize) { + iRet = ERROR; + pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); + goto err_fw_size; + } + remaining = uFSize; + + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 50) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + uFSize); + count = 0; + } + } + pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); +out: +err_fw_size: + kfree(buff); +err_alloc: + filp_close(fp, NULL); +err_open: + set_fs(old_fs); + + return iRet; +} + +static int fw_erase_stm(struct spi_device *spi) +{ + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int ret; + char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; + pr_debug("[SSP]%s\n", __func__); + cmd.cmd = EXT_ER_COMMAND; + cmd.xor_cmd = XOR_EXT_ER_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = BL_DUMMY; + + ret = stm32fwu_spi_send_cmd(spi, &cmd); + + if (ret != BL_ACK) { + pr_err("[SSP] fw_erase failed - %d\n", ret); + return ret; + } + + ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); + + if( ret < EXT_ER_DATA_LEN ) + { + pr_err("[SSP] fw_erase write failed\n"); + return 0; + } + + dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; + + ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (ret == BL_ACK) + return 0; + else if (ret == BL_NACK) + return -EPROTO; + else + return -ETIME; + +} + +static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const struct firmware *fw = NULL; + int remaining; + unsigned int uPos = 0; + unsigned int fw_addr = STM_APP_ADDR; + int iRet; + int block = STM_MAX_XFER_SIZE; + int count = 0; + int err_count = 0; + int retry_count = 0; + + pr_info("[SSP] ssp_load_fw start!!!\n"); + + iRet = request_firmware(&fw, pFn, &spi->dev); + if (iRet) { + pr_err("[SSP] Unable to open firmware %s\n", pFn); + return iRet; + } + + remaining = fw->size; + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out_load_kernel; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 20) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + fw->size); + count = 0; + } + } + + pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); + +out_load_kernel: + release_firmware(fw); + return iRet; +} + +static int change_to_bootmode(struct ssp_data *data) +{ + int iCnt; + int ret; + char syncb = BL_SPI_SOF; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + dummy_cmd.timeout = DEF_ACKCMD_NUMBER; + + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(45000, 47000); + + + for (iCnt = 0; iCnt < 9; iCnt++) { + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(15000, 15500); + } + + data->spi->mode = SPI_MODE_0; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for boot\n"); + usleep_range(1000, 1100); + + ret = stm32fwu_spi_write(data->spi, &syncb, 1); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); +#endif + + ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_DUMMY); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", ret, ret); +#endif + + return ret; +} + +void toggle_mcu_reset(struct ssp_data *data) +{ + gpio_set_value_cansleep(data->rst, 0); + + usleep_range(1000, 1200); + + gpio_set_value_cansleep(data->rst, 1); +} + +static int update_mcu_bin(struct ssp_data *data, int iBinType) +{ + int retry = BLMODE_RETRYCOUNT; + int iRet = SUCCESS; + struct stm32fwu_spi_cmd cmd; + + cmd.cmd = GO_COMMAND; + cmd.xor_cmd = XOR_GO_COMMAND; + cmd.timeout = 1000; + cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); + + // 1. Start system boot mode + do { + iRet = change_to_bootmode(data); + pr_info("[ssp] bootmode %d retry: %d\n", iRet, 3 - retry); + } while (retry-- > 0 && iRet != BL_ACK ); + + if(iRet != BL_ACK) { + pr_err("[SSP]: %s - change_to_bootmode %d\n", + __func__, iRet); + return iRet; + } + + // 2. Flash erase all + iRet = fw_erase_stm(data->spi); + if (iRet < 0) { + pr_err("[SSP]: %s - fw_erase_stm %d\n", + __func__, iRet); + return iRet; + } + + switch (iBinType) { + case KERNEL_BINARY: + /* HW request: I2C line is reversed */ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_TASMAN); +#elif defined(CONFIG_SEC_PATEK_PROJECT) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_PATEK); +#else + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME); +#endif + break; + case KERNEL_CRASHED_BINARY: + iRet = load_kernel_fw_bootmode(data->spi, BL_CRASHED_FW_NAME); + break; + case UMS_BINARY: + iRet = load_ums_fw_bootmode(data->spi, BL_UMS_FW_NAME); + break; + default: + pr_err("[SSP] binary type error!!\n"); + } +/* STM : GO USER ADDR */ + stm32fwu_spi_send_cmd(data->spi, &cmd); + send_addr(data->spi, STM_APP_ADDR, 0); + + data->spi->mode = SPI_MODE_1; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for app\n"); + usleep_range(1000, 1100); + + return iRet; +} + +int forced_to_download_binary(struct ssp_data *data, int iBinType) +{ + int iRet = 0; + int retry = 3; + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + ssp_enable(data, false); + + data->fw_dl_state = FW_DL_STATE_DOWNLOADING; + pr_info("[SSP] %s, DL state = %d\n", __func__, + data->fw_dl_state); + data->spi->max_speed_hz = BOOT_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_boot\n"); + + do { + pr_info("[SSP] %d try\n", 3 - retry); + iRet = update_mcu_bin(data, iBinType); + } while (retry -- > 0 && iRet < 0); + data->spi->max_speed_hz = NORM_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_norm\n"); + + if (iRet < 0) { + ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); + goto out; + } + + data->fw_dl_state = FW_DL_STATE_SYNC; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + ssp_enable(data, true); + + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + accel_open_calibration(data); + gyro_open_calibration(data); + pressure_open_calibration(data); + + data->fw_dl_state = FW_DL_STATE_DONE; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + + iRet = SUCCESS; +out: + return iRet; +} + +int check_fwbl(struct ssp_data *data) +{ + + unsigned int fw_revision; + + pr_info("[SSP] change_rev = %d\n", data->ssp_changes); +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + fw_revision = SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SEC_PATEK_PROJECT) + fw_revision = SSP_FIRMWARE_REVISION_PATEK; +#else + fw_revision = SSP_FIRMWARE_REVISION_STM; +#endif + + data->uCurFirmRev = get_firmware_rev(data); + + if ((data->uCurFirmRev == SSP_INVALID_REVISION) + || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { +#if STM_SHOULD_BE_IMPLEMENT + data->client->addr = BOOTLOADER_SLAVE_ADDR; + iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); + + if (iRet >= 0) + pr_info("[SSP] ssp_load_fw_bootmode\n"); + else { + pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", + data->uCurFirmRev); + data->client->addr = APP_SLAVE_ADDR; + data->uCurFirmRev = get_firmware_rev(data); + if (data->uCurFirmRev == SSP_INVALID_REVISION + || data->uCurFirmRev == ERROR) { + pr_err("[SSP] MCU is not working, FW download failed\n"); + return FW_DL_STATE_FAIL; + } + } +#endif + data->uCurFirmRev = SSP_INVALID_REVISION; + pr_err("[SSP] SSP_INVALID_REVISION\n"); + return FW_DL_STATE_NEED_TO_SCHEDULE; + } else { + if (data->uCurFirmRev != fw_revision) { + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + } + + return FW_DL_STATE_NONE; +} diff --git a/drivers/sensorhub/stm/ssp_i2c.c b/drivers/sensorhub/stm/ssp_i2c.c index 6c11cd976719..2d164aa46fbc 100755 --- a/drivers/sensorhub/stm/ssp_i2c.c +++ b/drivers/sensorhub/stm/ssp_i2c.c @@ -250,14 +250,12 @@ int ssp_send_cmd(struct ssp_data *data, char command, int arg) msg->free_buffer = 0; iRet = ssp_spi_async(data, msg); - if (iRet != SUCCESS) { pr_err("[SSP]: %s - command 0x%x failed %d\n", __func__, command, iRet); return ERROR; } - data->uInstFailCnt = 0; ssp_dbg("[SSP]: %s - command 0x%x %d\n", __func__, command, arg); return SUCCESS; @@ -312,6 +310,9 @@ int send_instruction(struct ssp_data *data, u8 uInst, iRet = -ENOMEM; return iRet; } + + if(uSensorType == GEOMAGNETIC_SENSOR) + uLength += 1; msg->cmd = command; msg->length = uLength + 1; msg->options = AP2HUB_WRITE; @@ -320,7 +321,9 @@ int send_instruction(struct ssp_data *data, u8 uInst, msg->buffer[0] = uSensorType; memcpy(&msg->buffer[1], uSendBuf, uLength); - + if(uSensorType == GEOMAGNETIC_SENSOR) { + msg->buffer[10] = MAG_LOG_MODE; + } ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = 0x%x, data = %u\n", __func__, command, uSensorType, msg->buffer[1]); @@ -331,8 +334,6 @@ int send_instruction(struct ssp_data *data, u8 uInst, return ERROR; } - data->uInstFailCnt = 0; - return iRet; } @@ -400,8 +401,6 @@ int send_instruction_sync(struct ssp_data *data, u8 uInst, return ERROR; } - data->uInstFailCnt = 0; - return buffer[0]; } @@ -417,6 +416,9 @@ int flush(struct ssp_data *data, u8 uSensorType) { msg->buffer = &buffer; msg->free_buffer = 0; + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, + uSensorType, buffer); + iRet = ssp_spi_sync(data, msg, 1000); if (iRet != SUCCESS) { @@ -424,9 +426,6 @@ int flush(struct ssp_data *data, u8 uSensorType) { return ERROR; } - ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, - buffer); - return buffer ? 0 : -1; } @@ -468,8 +467,7 @@ int get_chipid(struct ssp_data *data) msg = kzalloc(sizeof(*msg), GFP_KERNEL); if (msg == NULL) { pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); - iRet = -ENOMEM; - return iRet; + return -ENOMEM; } msg->cmd = MSG2SSP_AP_WHOAMI; msg->length = 1; @@ -535,21 +533,32 @@ void set_proximity_threshold(struct ssp_data *data, msg= kzalloc(sizeof(*msg), GFP_KERNEL); msg->cmd = MSG2SSP_AP_SENSOR_PROXTHRESHOLD; +#if defined(CONFIG_SENSORS_SSP_MAX88921) + msg->length = 4; +#else msg->length = 2; +#endif msg->options = AP2HUB_WRITE; msg->buffer = (char*) kzalloc(4, GFP_KERNEL); msg->free_buffer = 1; pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); - //msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); - //msg->buffer[1] = (char) uData1; - //msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); - //msg->buffer[3] = (char) uData2; - +#if defined(CONFIG_SENSORS_SSP_MAX88921) + msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); + msg->buffer[1] = (char) uData1; + msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); + msg->buffer[3] = (char) uData2; +#else + if (uData1 < uData2) { + pr_info("[SSP] %s - invalid threshold (%u, %u)\n", + __func__, uData1, uData2); + uData1 = DEFUALT_HIGH_THRESHOLD; + uData2 = DEFUALT_LOW_THRESHOLD; + } msg->buffer[0] = (char)uData1; msg->buffer[1] = (char)uData2; - +#endif iRet = ssp_spi_async(data, msg); if (iRet != SUCCESS) { @@ -557,8 +566,6 @@ void set_proximity_threshold(struct ssp_data *data, __func__, iRet); return; } - - data->uInstFailCnt = 0; pr_info("[SSP]: Proximity Threshold - %u, %u\n", uData1, uData2); } @@ -582,8 +589,6 @@ void set_proximity_barcode_enable(struct ssp_data *data, bool bEnable) __func__, iRet); return; } - - data->uInstFailCnt = 0; pr_info("[SSP] Proximity Barcode En : %u\n", bEnable); } @@ -600,91 +605,59 @@ void set_gesture_current(struct ssp_data *data, unsigned char uData1) msg->buffer[0] = uData1; iRet = ssp_spi_async(data, msg); - if (iRet != SUCCESS) { pr_err("[SSP]: %s - SENSOR_GESTURE_CURRENT CMD fail %d\n", __func__, iRet); return; } - - data->uInstFailCnt = 0; pr_info("[SSP]: Gesture Current Setting - %u\n", uData1); } -unsigned int get_sensor_scanning_info(struct ssp_data *data) -{ - int iRet, iReties = 0; - unsigned int iSensorState = 0; - char buffer[4] = { 0, }; - struct ssp_msg *msg; +unsigned int get_sensor_scanning_info(struct ssp_data *data) { + int iRet = 0, z = 0; + u32 result = 0; + char bin[SENSOR_MAX + 1]; -retries: - msg = kzalloc(sizeof(*msg), GFP_KERNEL); + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); if (msg == NULL) { pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); - iRet = -ENOMEM; - return iRet; + return -ENOMEM; } msg->cmd = MSG2SSP_AP_SENSOR_SCANNING; msg->length = 4; msg->options = AP2HUB_READ; - msg->buffer = buffer; + msg->buffer = (char*) &result; msg->free_buffer = 0; iRet = ssp_spi_sync(data, msg, 1000); - if (iRet != SUCCESS) { - pr_err("[SSP] %s -fail to get_sensor_scanning_info %d\n", - __func__, iRet); + if (iRet != SUCCESS) + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - if(iReties++ < 2) { - pr_err("[SSP] %s get_sensor_scanning_info fail retry\n", - __func__); - mdelay(5); - goto retries; - } - return 0; - } else { - iSensorState = (unsigned int)(buffer[0] << 24 | - buffer[1] << 16 | buffer[2] << 8 | buffer[3] ); - - // exception for abnormail sensorstatus - if(iReties++ < 2 && (iSensorState < 0x10000 || - (iSensorState >> 5 & 0x01) != 0x01 || - (iSensorState & 0x03) != 0x03)) { - pr_err("[SSP] %s get_sensor_scanning_info val retry %d\n", - __func__, iSensorState); - mdelay(5); - goto retries; - } - } + bin[SENSOR_MAX] = '\0'; + for (z = 0; z < SENSOR_MAX; z++) + bin[SENSOR_MAX - 1 - z] = (result & (1 << z)) ? '1' : '0'; + pr_err("[SSP]: state: %s\n", bin); - pr_err("[SSP]: %s - %x %x %x %x\n", __func__, - buffer[0], buffer[1], buffer[2], buffer[3]); - return iSensorState; + return result; } -unsigned int get_firmware_rev(struct ssp_data *data) -{ - unsigned int uRev = SSP_INVALID_REVISION; +unsigned int get_firmware_rev(struct ssp_data *data) { int iRet; - char buffer[3] = { 0, }; + u32 result = SSP_INVALID_REVISION; struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); msg->cmd = MSG2SSP_AP_FIRMWARE_REV; - msg->length = 3; + msg->length = 4; msg->options = AP2HUB_READ; - msg->buffer = buffer; + msg->buffer = (char*) &result; msg->free_buffer = 0; iRet = ssp_spi_sync(data, msg, 1000); - if (iRet != SUCCESS) pr_err("[SSP]: %s - transfer fail %d\n", __func__, iRet); - else - uRev = ((unsigned int)buffer[0] << 16) - | ((unsigned int)buffer[1] << 8) | buffer[2]; - return uRev; + + return result; } int get_fuserom_data(struct ssp_data *data) diff --git a/drivers/sensorhub/stm/ssp_input.c b/drivers/sensorhub/stm/ssp_input.c index 3bbb5ad65c69..d74ae4be1336 100755 --- a/drivers/sensorhub/stm/ssp_input.c +++ b/drivers/sensorhub/stm/ssp_input.c @@ -23,31 +23,32 @@ /* SSP Kernel -> HAL input evnet function */ /*************************************************************************/ -#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ -#define IIO_BUFFER_6_BYTES 14 -#define IIO_BUFFER_1_BYTES 9 -#define IIO_BUFFER_17_BYTES 25 - +#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ +#define IIO_BUFFER_6_BYTES 14 +#define IIO_BUFFER_1_BYTES 9 +#define IIO_BUFFER_17_BYTES 25 +#define IIO_BUFFER_24_BYTES 20 +#define IIO_BUFFER_7_BYTES 15 /* data header defines */ -static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, - u64 t, int *q) +static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, u64 t, int *q) { u8 buf[IIO_BUFFER_17_BYTES]; - + int i; for (i = 0; i < 4; i++) memcpy(buf + 4 * i, &q[i], sizeof(q[i])); - buf[16] = (u8)q[5]; + buf[16] = (u8)q[4]; memcpy(buf + 17, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); return 0; } -static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, - int *q) +static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, int *q) { u8 buf[IIO_BUFFER_12_BYTES]; int i; @@ -55,13 +56,29 @@ static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, for (i = 0; i < 3; i++) memcpy(buf + 4 * i, &q[i], sizeof(q[i])); memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_24bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *q) +{ + u8 buf[IIO_BUFFER_24_BYTES]; + int i; + + for (i = 0; i < 6; i++) + memcpy(buf + 2 * i, &q[i], sizeof(q[i])); + memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); return 0; } -static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, - u64 t, s16 *d) +static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *d) { u8 buf[IIO_BUFFER_6_BYTES]; int i; @@ -70,23 +87,77 @@ static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, memcpy(buf + i * 2, &d[i], sizeof(d[i])); memcpy(buf + 6, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); return 0; } -static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, - u64 t, u8 *d) +static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, u64 t, u8 *d) { u8 buf[IIO_BUFFER_1_BYTES]; memcpy(buf, d, sizeof(u8)); memcpy(buf + 1, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_7bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *d, + u8 status) +{ + u8 buf[IIO_BUFFER_7_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + i * 2, &d[i], sizeof(d[i])); + buf[6] = status; + memcpy(buf + 7, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); return 0; } +void report_meta_data(struct ssp_data *data, struct sensor_value *s) +{ + pr_info("[SSP]: %s - what: %d, sensor: %d\n", __func__, + s->meta_data.what, s->meta_data.sensor); + + if (s->meta_data.sensor == ACCELEROMETER_SENSOR) { + s16 accel_buf[3]; + memset(accel_buf, 0xff, sizeof(s16) * 3); + ssp_push_6bytes_buffer(data->accel_indio_dev, 0, accel_buf); + } else if (s->meta_data.sensor == GYROSCOPE_SENSOR) { + int gyro_buf[3]; + memset(gyro_buf, 0xff, sizeof(int) * 3); + ssp_push_12bytes_buffer(data->gyro_indio_dev, 0, gyro_buf); + } else if (s->meta_data.sensor == PRESSURE_SENSOR) { + int pressure_buf[3]; + memset(pressure_buf, 0xff, sizeof(int) * 3); + ssp_push_12bytes_buffer(data->pressure_indio_dev, 0, + pressure_buf); + } else if (s->meta_data.sensor == GAME_ROTATION_VECTOR) { + int grot_buf[5]; + memset(grot_buf, 0xff, sizeof(int) * 4); + ssp_push_17bytes_buffer(data->game_rot_indio_dev, 0, grot_buf); + } else if (s->meta_data.sensor == STEP_DETECTOR) { + u8 step_buf[1] = {0xff}; + ssp_push_1bytes_buffer(data->step_det_indio_dev, 0, step_buf); + } else { + input_report_rel(data->meta_input_dev, REL_DIAL, + s->meta_data.what); + input_report_rel(data->meta_input_dev, REL_HWHEEL, + s->meta_data.sensor + 1); + input_sync(data->meta_input_dev); + } +} + void convert_acc_data(s16 *iValue) { if (*iValue > MAX_ACCEL_2G) @@ -107,13 +178,6 @@ void report_acc_data(struct ssp_data *data, struct sensor_value *accdata) accel_buf); } -void report_meta_data(struct ssp_data *data, struct sensor_value *s) -{ - input_report_rel(data->meta_input_dev, REL_DIAL, s->meta_data.what); - input_report_rel(data->meta_input_dev, REL_HWHEEL, s->meta_data.sensor + 1); - input_sync(data->meta_input_dev); -} - void report_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) { int lTemp[3] = {0,}; @@ -152,84 +216,45 @@ void report_geomagnetic_raw_data(struct ssp_data *data, } void report_mag_data(struct ssp_data *data, struct sensor_value *magdata) { -#ifdef SAVE_MAG_LOG - s16 arrTemp[9] = {0, }; - - arrTemp[0] = magdata->log_data[0]; // ST1 Reg - arrTemp[1] = (short)((magdata->log_data[3] << 8) +\ - magdata->log_data[2]); - arrTemp[2] = (short)((magdata->log_data[5] << 8) +\ - magdata->log_data[4]); - arrTemp[3] = (short)((magdata->log_data[7] << 8) +\ - magdata->log_data[6]); - arrTemp[4] = magdata->log_data[1]; // ST2 Reg - arrTemp[5] = (short)((magdata->log_data[9] << 8) +\ - magdata->log_data[8]); - arrTemp[6] = (short)((magdata->log_data[11] << 8) +\ - magdata->log_data[10]); - arrTemp[7] = (short)((magdata->log_data[13] << 8) +\ - magdata->log_data[12]); - - /* We report data & register to HAL only when ST1 register sets to 1 */ - if (arrTemp[0] == 1) { - input_report_rel(data->mag_input_dev, REL_X, arrTemp[0] + 1); - input_report_rel(data->mag_input_dev, REL_Y, arrTemp[1]); - input_report_rel(data->mag_input_dev, REL_Z, arrTemp[2]); - input_report_rel(data->mag_input_dev, REL_RX, arrTemp[3]); - input_report_rel(data->mag_input_dev, REL_RY, arrTemp[4] + 1); - input_report_rel(data->mag_input_dev, REL_RZ, arrTemp[5]); - input_report_rel(data->mag_input_dev, REL_HWHEEL, arrTemp[6]); - input_report_rel(data->mag_input_dev, REL_DIAL, arrTemp[7]); - - input_sync(data->mag_input_dev); - } else { - pr_info("[SSP] %s, not initialised, val = %d", __func__, arrTemp[0]); - } -#else + s16 lTemp[3] = { 0, }; + data->buf[GEOMAGNETIC_SENSOR].cal_x = magdata->cal_x; data->buf[GEOMAGNETIC_SENSOR].cal_y = magdata->cal_y; data->buf[GEOMAGNETIC_SENSOR].cal_z = magdata->cal_z; data->buf[GEOMAGNETIC_SENSOR].accuracy = magdata->accuracy; - input_report_rel(data->mag_input_dev, REL_RX, - data->buf[GEOMAGNETIC_SENSOR].cal_x); - input_report_rel(data->mag_input_dev, REL_RY, - data->buf[GEOMAGNETIC_SENSOR].cal_y); - input_report_rel(data->mag_input_dev, REL_RZ, - data->buf[GEOMAGNETIC_SENSOR].cal_z); - input_report_rel(data->mag_input_dev, REL_HWHEEL, - data->buf[GEOMAGNETIC_SENSOR].accuracy + 1); + lTemp[0] = data->buf[GEOMAGNETIC_SENSOR].cal_x; + lTemp[1] = data->buf[GEOMAGNETIC_SENSOR].cal_y; + lTemp[2] = data->buf[GEOMAGNETIC_SENSOR].cal_z; - input_sync(data->mag_input_dev); -#endif + ssp_push_7bytes_buffer(data->mag_indio_dev, magdata->timestamp, + lTemp, data->buf[GEOMAGNETIC_SENSOR].accuracy); } void report_mag_uncaldata(struct ssp_data *data, struct sensor_value *magdata) { + s16 lTemp[6] = {0,}; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x = magdata->uncal_x; data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y = magdata->uncal_y; data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z = magdata->uncal_z; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x= magdata->offset_x; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y= magdata->offset_y; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z= magdata->offset_z; - - input_report_rel(data->uncal_mag_input_dev, REL_RX, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x); - input_report_rel(data->uncal_mag_input_dev, REL_RY, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y); - input_report_rel(data->uncal_mag_input_dev, REL_RZ, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z); - input_report_rel(data->uncal_mag_input_dev, REL_HWHEEL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x); - input_report_rel(data->uncal_mag_input_dev, REL_DIAL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y); - input_report_rel(data->uncal_mag_input_dev, REL_WHEEL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z); - input_sync(data->uncal_mag_input_dev); + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x = magdata->offset_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y = magdata->offset_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z = magdata->offset_z; + + lTemp[0] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x; + lTemp[1] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y; + lTemp[2] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z; + lTemp[3] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x; + lTemp[4] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y; + lTemp[5] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z; + + ssp_push_24bytes_buffer(data->uncal_mag_indio_dev, magdata->timestamp, lTemp); } void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) { + s16 lTemp[6] = {0,}; data->buf[GYRO_UNCALIB_SENSOR].uncal_x = gyrodata->uncal_x; data->buf[GYRO_UNCALIB_SENSOR].uncal_y = gyrodata->uncal_y; data->buf[GYRO_UNCALIB_SENSOR].uncal_z = gyrodata->uncal_z; @@ -237,19 +262,14 @@ void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyroda data->buf[GYRO_UNCALIB_SENSOR].offset_y = gyrodata->offset_y; data->buf[GYRO_UNCALIB_SENSOR].offset_z = gyrodata->offset_z; - input_report_rel(data->uncalib_gyro_input_dev, REL_X, - data->buf[GYRO_UNCALIB_SENSOR].uncal_x); - input_report_rel(data->uncalib_gyro_input_dev, REL_Y, - data->buf[GYRO_UNCALIB_SENSOR].uncal_y); - input_report_rel(data->uncalib_gyro_input_dev, REL_Z, - data->buf[GYRO_UNCALIB_SENSOR].uncal_z); - input_report_rel(data->uncalib_gyro_input_dev, REL_RX, - data->buf[GYRO_UNCALIB_SENSOR].offset_x); - input_report_rel(data->uncalib_gyro_input_dev, REL_RY, - data->buf[GYRO_UNCALIB_SENSOR].offset_y); - input_report_rel(data->uncalib_gyro_input_dev, REL_RZ, - data->buf[GYRO_UNCALIB_SENSOR].offset_z); - input_sync(data->uncalib_gyro_input_dev); + lTemp[0] = gyrodata->uncal_x; + lTemp[1] = gyrodata->uncal_y; + lTemp[2] = gyrodata->uncal_z; + lTemp[3] = gyrodata->offset_x; + lTemp[4] = gyrodata->offset_y; + lTemp[5] = gyrodata->offset_z; + + ssp_push_24bytes_buffer(data->uncal_gyro_indio_dev, gyrodata->timestamp, lTemp); } void report_sig_motion_data(struct ssp_data *data, @@ -349,17 +369,17 @@ void report_gesture_data(struct ssp_data *data, struct sensor_value *gesdata) void report_pressure_data(struct ssp_data *data, struct sensor_value *predata) { + int temp[3] = {0, }; data->buf[PRESSURE_SENSOR].pressure[0] = predata->pressure[0] - data->iPressureCal; data->buf[PRESSURE_SENSOR].pressure[1] = predata->pressure[1]; - /* pressure */ - input_report_rel(data->pressure_input_dev, REL_HWHEEL, - data->buf[PRESSURE_SENSOR].pressure[0]); - /* temperature */ - input_report_rel(data->pressure_input_dev, REL_WHEEL, - data->buf[PRESSURE_SENSOR].pressure[1]); - input_sync(data->pressure_input_dev); + temp[0] = data->buf[PRESSURE_SENSOR].pressure[0]; + temp[1] = data->buf[PRESSURE_SENSOR].pressure[1]; + temp[2] = data->sealevelpressure; + + ssp_push_12bytes_buffer(data->pressure_indio_dev, predata->timestamp, + temp); } void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) @@ -368,9 +388,12 @@ void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) data->buf[LIGHT_SENSOR].g = lightdata->g; data->buf[LIGHT_SENSOR].b = lightdata->b; data->buf[LIGHT_SENSOR].w = lightdata->w; -#ifdef CONFIG_SENSORS_SSP_TMG399X +#if defined (CONFIG_SENSORS_SSP_TMG399X) data->buf[LIGHT_SENSOR].a_time = lightdata->a_time; data->buf[LIGHT_SENSOR].a_gain = (0x03) & (lightdata->a_gain); +#elif defined (CONFIG_SENSORS_SSP_MAX88921) + data->buf[LIGHT_SENSOR].ir_cmp = lightdata->ir_cmp; + data->buf[LIGHT_SENSOR].amb_pga = lightdata->amb_pga; #endif input_report_rel(data->light_input_dev, REL_HWHEEL, @@ -381,20 +404,25 @@ void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) data->buf[LIGHT_SENSOR].b + 1); input_report_rel(data->light_input_dev, REL_MISC, data->buf[LIGHT_SENSOR].w + 1); - -#ifdef CONFIG_SENSORS_SSP_TMG399X +#if defined (CONFIG_SENSORS_SSP_TMG399X) input_report_rel(data->light_input_dev, REL_RY, data->buf[LIGHT_SENSOR].a_time + 1); input_report_rel(data->light_input_dev, REL_RZ, data->buf[LIGHT_SENSOR].a_gain + 1); +#elif defined (CONFIG_SENSORS_SSP_MAX88921) + input_report_rel(data->light_input_dev, REL_RY, + data->buf[LIGHT_SENSOR].ir_cmp + 1); + input_report_rel(data->light_input_dev, REL_RZ, + data->buf[LIGHT_SENSOR].amb_pga + 1); #endif input_sync(data->light_input_dev); } void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) { - ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u\n", - proxdata->prox[0], proxdata->prox[1]); + ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u, thd(%u, %u)\n", + proxdata->prox[0], proxdata->prox[1], + data->uProxHiThresh, data->uProxLoThresh); data->buf[PROXIMITY_SENSOR].prox[0] = proxdata->prox[0]; data->buf[PROXIMITY_SENSOR].prox[1] = proxdata->prox[1]; @@ -403,12 +431,6 @@ void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) (!proxdata->prox[0])); input_sync(data->prox_input_dev); -#if defined(CONFIG_MACH_KLTE_VZW) - if (proxdata->prox[0] == 1) - gpio_set_value_cansleep(data->vzw_prox_gpio, 1); - else - gpio_set_value_cansleep(data->vzw_prox_gpio, 0); -#endif wake_lock_timeout(&data->ssp_wake_lock, 3 * HZ); } @@ -494,12 +516,6 @@ int initialize_event_symlink(struct ssp_data *data) data->sen_dev = device_create(sensors_event_class, NULL, 0, NULL, "%s", "symlink"); - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); - if (iRet < 0) - goto iRet_prs_sysfs_create_link; - iRet = sysfs_create_link(&data->sen_dev->kobj, &data->gesture_input_dev->dev.kobj, data->gesture_input_dev->name); @@ -524,30 +540,12 @@ int initialize_event_symlink(struct ssp_data *data) if (iRet < 0) goto iRet_temp_humi_sysfs_create_link; - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); - if (iRet < 0) - goto iRet_mag_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->uncal_mag_input_dev->dev.kobj, - data->uncal_mag_input_dev->name); - if (iRet < 0) - goto iRet_uncal_mag_sysfs_create_link; - iRet = sysfs_create_link(&data->sen_dev->kobj, &data->sig_motion_input_dev->dev.kobj, data->sig_motion_input_dev->name); if (iRet < 0) goto iRet_sig_motion_sysfs_create_link; - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); - if (iRet < 0) - goto iRet_uncalib_gyro_sysfs_create_link; - iRet = sysfs_create_link(&data->sen_dev->kobj, &data->step_cnt_input_dev->dev.kobj, data->step_cnt_input_dev->name); @@ -566,22 +564,10 @@ int initialize_event_symlink(struct ssp_data *data) &data->step_cnt_input_dev->dev.kobj, data->step_cnt_input_dev->name); iRet_step_cnt_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); -iRet_uncalib_gyro_sysfs_create_link: sysfs_delete_link(&data->sen_dev->kobj, &data->sig_motion_input_dev->dev.kobj, data->sig_motion_input_dev->name); iRet_sig_motion_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncal_mag_input_dev->dev.kobj, - data->uncal_mag_input_dev->name); -iRet_uncal_mag_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); -iRet_mag_sysfs_create_link: sysfs_delete_link(&data->sen_dev->kobj, &data->temp_humi_input_dev->dev.kobj, data->temp_humi_input_dev->name); @@ -594,14 +580,10 @@ int initialize_event_symlink(struct ssp_data *data) &data->light_input_dev->dev.kobj, data->light_input_dev->name); iRet_light_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); -iRet_gesture_sysfs_create_link: sysfs_delete_link(&data->sen_dev->kobj, &data->gesture_input_dev->dev.kobj, data->gesture_input_dev->name); -iRet_prs_sysfs_create_link: +iRet_gesture_sysfs_create_link: pr_err("[SSP]: %s - could not create event symlink\n", __func__); return FAIL; @@ -609,9 +591,6 @@ int initialize_event_symlink(struct ssp_data *data) void remove_event_symlink(struct ssp_data *data) { - sysfs_delete_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); sysfs_delete_link(&data->sen_dev->kobj, &data->gesture_input_dev->dev.kobj, data->gesture_input_dev->name); @@ -624,18 +603,9 @@ void remove_event_symlink(struct ssp_data *data) sysfs_delete_link(&data->sen_dev->kobj, &data->temp_humi_input_dev->dev.kobj, data->temp_humi_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncal_mag_input_dev->dev.kobj, - data->uncal_mag_input_dev->name); sysfs_delete_link(&data->sen_dev->kobj, &data->sig_motion_input_dev->dev.kobj, data->sig_motion_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); sysfs_delete_link(&data->sen_dev->kobj, &data->step_cnt_input_dev->dev.kobj, data->step_cnt_input_dev->name); @@ -653,7 +623,8 @@ static const struct iio_chan_spec accel_channels[] = { .type = IIO_TIMESTAMP, .channel = -1, .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES*8, IIO_BUFFER_6_BYTES*8, 0) + .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES * 8, + IIO_BUFFER_6_BYTES * 8, 0) } }; @@ -661,12 +632,56 @@ static const struct iio_info gyro_info = { .driver_module = THIS_MODULE, }; +static const struct iio_info mag_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec mag_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_7_BYTES * 8, + IIO_BUFFER_7_BYTES * 8, 0) + } +}; + +static const struct iio_info uncal_mag_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec uncal_mag_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + static const struct iio_chan_spec gyro_channels[] = { { .type = IIO_TIMESTAMP, .channel = -1, .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES*8, IIO_BUFFER_12_BYTES*8, 0) + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + + +static const struct iio_info uncal_gyro_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec uncal_gyro_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) } }; @@ -679,7 +694,8 @@ static const struct iio_chan_spec game_rot_channels[] = { .type = IIO_TIMESTAMP, .channel = -1, .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES*8, IIO_BUFFER_17_BYTES*8, 0) + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) } }; @@ -692,7 +708,8 @@ static const struct iio_chan_spec rot_channels[] = { .type = IIO_TIMESTAMP, .channel = -1, .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES*8, IIO_BUFFER_17_BYTES*8, 0) + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) } }; @@ -706,19 +723,32 @@ static const struct iio_chan_spec step_det_channels[] = { .type = IIO_TIMESTAMP, .channel = -1, .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES*8, IIO_BUFFER_1_BYTES*8, 0) + .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES * 8, + IIO_BUFFER_1_BYTES * 8, 0) + } +}; + +static const struct iio_info pressure_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec pressure_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) } }; int initialize_input_dev(struct ssp_data *data) { int iRet = 0; - struct input_dev *pressure_input_dev, - *light_input_dev, *prox_input_dev, *temp_humi_input_dev, - *mag_input_dev, *gesture_input_dev, *uncal_mag_input_dev, - *sig_motion_input_dev, *uncalib_gyro_input_dev, *step_cnt_input_dev, + struct input_dev *light_input_dev, *prox_input_dev, *temp_humi_input_dev, + *gesture_input_dev, *sig_motion_input_dev, *step_cnt_input_dev, *meta_input_dev; - + /* accel */ data->accel_indio_dev = iio_allocate_device(0); if (!data->accel_indio_dev) { pr_err("[SSP]: %s failed to allocate memory for iio accel device\n", __func__); @@ -747,7 +777,65 @@ int initialize_input_dev(struct ssp_data *data) iRet = iio_device_register(data->accel_indio_dev); if (iRet) goto out_remove_trigger_accel; + /* mag */ + data->mag_indio_dev = iio_allocate_device(0); + if (!data->mag_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio mag device\n", __func__); + goto out_alloc_fail_mag; + } + + data->mag_indio_dev->name = "geomagnetic_sensor"; + data->mag_indio_dev->dev.parent = &data->spi->dev; + data->mag_indio_dev->info = &mag_info; + data->mag_indio_dev->channels = mag_channels; + data->mag_indio_dev->num_channels = ARRAY_SIZE(mag_channels); + data->mag_indio_dev->modes = INDIO_DIRECT_MODE; + data->mag_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->mag_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_mag; + } + + iRet = iio_buffer_register(data->mag_indio_dev, + data->mag_indio_dev->channels, data->mag_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_mag; + + iRet = iio_device_register(data->mag_indio_dev); + if (iRet) + goto out_remove_trigger_mag; + /* uncal mag */ + data->uncal_mag_indio_dev = iio_allocate_device(0); + if (!data->uncal_mag_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio uncal mag device\n", __func__); + goto out_alloc_fail_uncal_mag; + } + + data->uncal_mag_indio_dev->name = "uncal_geomagnetic_sensor"; + data->uncal_mag_indio_dev->dev.parent = &data->spi->dev; + data->uncal_mag_indio_dev->info = &uncal_mag_info; + data->uncal_mag_indio_dev->channels = uncal_mag_channels; + data->uncal_mag_indio_dev->num_channels = ARRAY_SIZE(uncal_mag_channels); + data->uncal_mag_indio_dev->modes = INDIO_DIRECT_MODE; + data->uncal_mag_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->uncal_mag_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_uncal_mag; + } + iRet = iio_buffer_register(data->uncal_mag_indio_dev, + data->uncal_mag_indio_dev->channels, data->uncal_mag_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_uncal_mag; + + iRet = iio_device_register(data->uncal_mag_indio_dev); + if (iRet) + goto out_remove_trigger_uncal_mag; + /* gyro */ data->gyro_indio_dev = iio_allocate_device(0); if (!data->gyro_indio_dev) { pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); @@ -777,6 +865,35 @@ int initialize_input_dev(struct ssp_data *data) if (iRet) goto out_remove_trigger_gyro; + data->uncal_gyro_indio_dev = iio_allocate_device(0); + if (!data->uncal_gyro_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_uncal_gyro; + } + + data->uncal_gyro_indio_dev->name = "uncalibrated_gyro_sensor"; + data->uncal_gyro_indio_dev->dev.parent = &data->spi->dev; + data->uncal_gyro_indio_dev->info = &uncal_gyro_info; + data->uncal_gyro_indio_dev->channels = uncal_gyro_channels; + data->uncal_gyro_indio_dev->num_channels = ARRAY_SIZE(uncal_gyro_channels); + data->uncal_gyro_indio_dev->modes = INDIO_DIRECT_MODE; + data->uncal_gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->uncal_gyro_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_uncal_gyro; + } + + iRet = iio_buffer_register(data->uncal_gyro_indio_dev, data->uncal_gyro_indio_dev->channels, + data->uncal_gyro_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_uncal_gyro; + + iRet = iio_device_register(data->uncal_gyro_indio_dev); + if (iRet) + goto out_remove_trigger_uncal_gyro; + data->game_rot_indio_dev = iio_allocate_device(0); if (!data->game_rot_indio_dev) { pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); @@ -864,13 +981,36 @@ int initialize_input_dev(struct ssp_data *data) if (iRet) goto out_remove_trigger_step_det; + data->pressure_indio_dev = iio_allocate_device(0); + if (!data->pressure_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_pressure; + } + + data->pressure_indio_dev->name = "pressure_sensor"; + data->pressure_indio_dev->dev.parent = &data->spi->dev; + data->pressure_indio_dev->info = &pressure_info; + data->pressure_indio_dev->channels = pressure_channels; + data->pressure_indio_dev->num_channels = ARRAY_SIZE(pressure_channels); + data->pressure_indio_dev->modes = INDIO_DIRECT_MODE; + data->pressure_indio_dev->currentmode = INDIO_DIRECT_MODE; - /* allocate input_device */ + iRet = ssp_iio_configure_ring(data->pressure_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_pressure; + } + + iRet = iio_buffer_register(data->pressure_indio_dev, data->pressure_indio_dev->channels, + data->pressure_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_pressure; - pressure_input_dev = input_allocate_device(); - if (pressure_input_dev == NULL) - goto iRet_pressure_input_free_device; + iRet = iio_device_register(data->pressure_indio_dev); + if (iRet) + goto out_remove_trigger_pressure; + /* allocate input_device */ gesture_input_dev = input_allocate_device(); if (gesture_input_dev == NULL) goto iRet_gesture_input_free_device; @@ -887,22 +1027,10 @@ int initialize_input_dev(struct ssp_data *data) if (temp_humi_input_dev == NULL) goto iRet_temp_humidity_input_free_device; - mag_input_dev = input_allocate_device(); - if (mag_input_dev == NULL) - goto iRet_mag_input_free_device; - - uncal_mag_input_dev = input_allocate_device(); - if (uncal_mag_input_dev == NULL) - goto iRet_uncal_mag_input_free_device; - sig_motion_input_dev = input_allocate_device(); if (sig_motion_input_dev == NULL) goto iRet_sig_motion_input_free_device; - uncalib_gyro_input_dev = input_allocate_device(); - if (uncalib_gyro_input_dev == NULL) - goto iRet_uncalib_gyro_input_free_device; - step_cnt_input_dev = input_allocate_device(); if (step_cnt_input_dev == NULL) goto iRet_step_cnt_input_free_device; @@ -911,34 +1039,22 @@ int initialize_input_dev(struct ssp_data *data) if (meta_input_dev == NULL) goto iRet_meta_input_free_device; - input_set_drvdata(pressure_input_dev, data); input_set_drvdata(gesture_input_dev, data); input_set_drvdata(light_input_dev, data); input_set_drvdata(prox_input_dev, data); input_set_drvdata(temp_humi_input_dev, data); - input_set_drvdata(mag_input_dev, data); - input_set_drvdata(uncal_mag_input_dev, data); input_set_drvdata(sig_motion_input_dev, data); - input_set_drvdata(uncalib_gyro_input_dev, data); input_set_drvdata(step_cnt_input_dev, data); input_set_drvdata(meta_input_dev, data); - pressure_input_dev->name = "pressure_sensor"; gesture_input_dev->name = "gesture_sensor"; light_input_dev->name = "light_sensor"; prox_input_dev->name = "proximity_sensor"; temp_humi_input_dev->name = "temp_humidity_sensor"; - mag_input_dev->name = "geomagnetic_sensor"; - uncal_mag_input_dev->name = "uncal_geomagnetic_sensor"; sig_motion_input_dev->name = "sig_motion_sensor"; - uncalib_gyro_input_dev->name = "uncalibrated_gyro_sensor"; step_cnt_input_dev->name = "step_cnt_sensor"; meta_input_dev->name = "meta_event"; - input_set_capability(pressure_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(pressure_input_dev, EV_REL, REL_DIAL); - input_set_capability(pressure_input_dev, EV_REL, REL_WHEEL); - input_set_capability(gesture_input_dev, EV_ABS, ABS_X); input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); @@ -995,72 +1111,24 @@ int initialize_input_dev(struct ssp_data *data) input_set_capability(temp_humi_input_dev, EV_REL, REL_DIAL); input_set_capability(temp_humi_input_dev, EV_REL, REL_WHEEL); -#ifdef SAVE_MAG_LOG - input_set_capability(mag_input_dev, EV_REL, REL_X); - input_set_capability(mag_input_dev, EV_REL, REL_Y); - input_set_capability(mag_input_dev, EV_REL, REL_Z); - input_set_capability(mag_input_dev, EV_REL, REL_RX); - input_set_capability(mag_input_dev, EV_REL, REL_RY); - input_set_capability(mag_input_dev, EV_REL, REL_RZ); - input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(mag_input_dev, EV_REL, REL_DIAL); - input_set_capability(mag_input_dev, EV_REL, REL_WHEEL); -#else - input_set_capability(mag_input_dev, EV_REL, REL_RX); - input_set_capability(mag_input_dev, EV_REL, REL_RY); - input_set_capability(mag_input_dev, EV_REL, REL_RZ); - input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); -#endif - - input_set_capability(uncal_mag_input_dev, EV_REL, REL_RX); - input_set_capability(uncal_mag_input_dev, EV_REL, REL_RY); - input_set_capability(uncal_mag_input_dev, EV_REL, REL_RZ); - input_set_capability(uncal_mag_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(uncal_mag_input_dev, EV_REL, REL_DIAL); - input_set_capability(uncal_mag_input_dev, EV_REL, REL_WHEEL); - input_set_capability(sig_motion_input_dev, EV_REL, REL_MISC); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_X); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Y); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Z); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RX); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RY); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RZ); input_set_capability(step_cnt_input_dev, EV_REL, REL_MISC); input_set_capability(meta_input_dev, EV_REL, REL_HWHEEL); input_set_capability(meta_input_dev, EV_REL, REL_DIAL); /* register input_device */ - iRet = input_register_device(pressure_input_dev); - if (iRet < 0) - goto iRet_pressure_input_unreg_device; - iRet = input_register_device(gesture_input_dev); - if (iRet < 0) { - input_free_device(gesture_input_dev); - input_free_device(light_input_dev); - input_free_device(prox_input_dev); - input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncal_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); + if (iRet < 0) goto iRet_gesture_input_unreg_device; - } iRet = input_register_device(light_input_dev); if (iRet < 0) { input_free_device(light_input_dev); input_free_device(prox_input_dev); input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncal_mag_input_dev); input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); input_free_device(step_cnt_input_dev); input_free_device(meta_input_dev); goto iRet_light_input_unreg_device; @@ -1070,10 +1138,7 @@ int initialize_input_dev(struct ssp_data *data) if (iRet < 0) { input_free_device(prox_input_dev); input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncal_mag_input_dev); input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); input_free_device(step_cnt_input_dev); input_free_device(meta_input_dev); goto iRet_proximity_input_unreg_device; @@ -1082,53 +1147,20 @@ int initialize_input_dev(struct ssp_data *data) iRet = input_register_device(temp_humi_input_dev); if (iRet < 0) { input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncal_mag_input_dev); input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); input_free_device(step_cnt_input_dev); input_free_device(meta_input_dev); goto iRet_tmep_humi_input_unreg_device; } - iRet = input_register_device(mag_input_dev); - if (iRet < 0) { - input_free_device(mag_input_dev); - input_free_device(uncal_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_mag_input_unreg_device; - } - - iRet = input_register_device(uncal_mag_input_dev); - if (iRet < 0) { - input_free_device(uncal_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_uncal_mag_input_unreg_device; - } - iRet = input_register_device(sig_motion_input_dev); if (iRet < 0) { input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); input_free_device(step_cnt_input_dev); input_free_device(meta_input_dev); goto iRet_sig_motion_input_unreg_device; } - iRet = input_register_device(uncalib_gyro_input_dev); - if (iRet < 0) { - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_uncalib_gyro_input_unreg_device; - } - iRet = input_register_device(step_cnt_input_dev); if (iRet < 0) { input_free_device(step_cnt_input_dev); @@ -1142,15 +1174,11 @@ int initialize_input_dev(struct ssp_data *data) goto iRet_meta_input_unreg_device; } - data->pressure_input_dev = pressure_input_dev; data->gesture_input_dev = gesture_input_dev; data->light_input_dev = light_input_dev; data->prox_input_dev = prox_input_dev; data->temp_humi_input_dev = temp_humi_input_dev; - data->mag_input_dev = mag_input_dev; - data->uncal_mag_input_dev = uncal_mag_input_dev; data->sig_motion_input_dev = sig_motion_input_dev; - data->uncalib_gyro_input_dev = uncalib_gyro_input_dev; data->step_cnt_input_dev = step_cnt_input_dev; data->meta_input_dev = meta_input_dev; @@ -1158,14 +1186,8 @@ int initialize_input_dev(struct ssp_data *data) iRet_meta_input_unreg_device: input_unregister_device(step_cnt_input_dev); iRet_step_cnt_input_unreg_device: - input_unregister_device(uncalib_gyro_input_dev); -iRet_uncalib_gyro_input_unreg_device: input_unregister_device(sig_motion_input_dev); iRet_sig_motion_input_unreg_device: - input_unregister_device(uncal_mag_input_dev); -iRet_uncal_mag_input_unreg_device: - input_unregister_device(mag_input_dev); -iRet_mag_input_unreg_device: input_unregister_device(temp_humi_input_dev); iRet_tmep_humi_input_unreg_device: input_unregister_device(prox_input_dev); @@ -1173,22 +1195,14 @@ int initialize_input_dev(struct ssp_data *data) input_unregister_device(light_input_dev); iRet_light_input_unreg_device: input_unregister_device(gesture_input_dev); -iRet_gesture_input_unreg_device: - input_unregister_device(pressure_input_dev); return ERROR; -iRet_pressure_input_unreg_device: +iRet_gesture_input_unreg_device: input_free_device(meta_input_dev); iRet_meta_input_free_device: input_free_device(step_cnt_input_dev); iRet_step_cnt_input_free_device: - input_free_device(uncalib_gyro_input_dev); -iRet_uncalib_gyro_input_free_device: input_free_device(sig_motion_input_dev); iRet_sig_motion_input_free_device: - input_free_device(uncal_mag_input_dev); -iRet_uncal_mag_input_free_device: - input_free_device(mag_input_dev); -iRet_mag_input_free_device: input_free_device(temp_humi_input_dev); iRet_temp_humidity_input_free_device: input_free_device(prox_input_dev); @@ -1197,8 +1211,14 @@ int initialize_input_dev(struct ssp_data *data) iRet_light_input_free_device: input_free_device(gesture_input_dev); iRet_gesture_input_free_device: - input_free_device(pressure_input_dev); -iRet_pressure_input_free_device: + iio_device_unregister(data->pressure_indio_dev); +out_remove_trigger_pressure: + iio_buffer_unregister(data->pressure_indio_dev); +out_unreg_ring_pressure: + ssp_iio_unconfigure_ring(data->pressure_indio_dev); +out_free_pressure: + iio_free_device(data->pressure_indio_dev); +out_alloc_fail_pressure: iio_device_unregister(data->step_det_indio_dev); out_remove_trigger_step_det: iio_buffer_unregister(data->step_det_indio_dev); @@ -1223,6 +1243,14 @@ int initialize_input_dev(struct ssp_data *data) out_free_game_rot: iio_free_device(data->game_rot_indio_dev); out_alloc_fail_game_rot: + iio_device_unregister(data->uncal_gyro_indio_dev); +out_remove_trigger_uncal_gyro: + iio_buffer_unregister(data->uncal_gyro_indio_dev); +out_unreg_ring_uncal_gyro: + ssp_iio_unconfigure_ring(data->uncal_gyro_indio_dev); +out_free_uncal_gyro: + iio_free_device(data->uncal_gyro_indio_dev); +out_alloc_fail_uncal_gyro: iio_device_unregister(data->gyro_indio_dev); out_remove_trigger_gyro: iio_buffer_unregister(data->gyro_indio_dev); @@ -1231,6 +1259,22 @@ int initialize_input_dev(struct ssp_data *data) out_free_gyro: iio_free_device(data->gyro_indio_dev); out_alloc_fail_gyro: + iio_device_unregister(data->uncal_mag_indio_dev); +out_remove_trigger_uncal_mag: + iio_buffer_unregister(data->uncal_mag_indio_dev); +out_unreg_ring_uncal_mag: + ssp_iio_unconfigure_ring(data->uncal_mag_indio_dev); +out_free_uncal_mag: + iio_free_device(data->uncal_mag_indio_dev); +out_alloc_fail_uncal_mag: + iio_device_unregister(data->mag_indio_dev); +out_remove_trigger_mag: + iio_buffer_unregister(data->mag_indio_dev); +out_unreg_ring_mag: + ssp_iio_unconfigure_ring(data->mag_indio_dev); +out_free_mag: + iio_free_device(data->mag_indio_dev); +out_alloc_fail_mag: iio_device_unregister(data->accel_indio_dev); out_remove_trigger_accel: iio_buffer_unregister(data->accel_indio_dev); @@ -1244,15 +1288,11 @@ int initialize_input_dev(struct ssp_data *data) void remove_input_dev(struct ssp_data *data) { - input_unregister_device(data->pressure_input_dev); input_unregister_device(data->gesture_input_dev); input_unregister_device(data->light_input_dev); input_unregister_device(data->prox_input_dev); input_unregister_device(data->temp_humi_input_dev); - input_unregister_device(data->mag_input_dev); - input_unregister_device(data->uncal_mag_input_dev); input_unregister_device(data->sig_motion_input_dev); - input_unregister_device(data->uncalib_gyro_input_dev); input_unregister_device(data->step_cnt_input_dev); input_unregister_device(data->meta_input_dev); } diff --git a/drivers/sensorhub/stm/ssp_sysfs.c b/drivers/sensorhub/stm/ssp_sysfs.c index 7f71a92d1ee2..5f9aaaeffa01 100755 --- a/drivers/sensorhub/stm/ssp_sysfs.c +++ b/drivers/sensorhub/stm/ssp_sysfs.c @@ -29,6 +29,14 @@ struct batch_config { /*************************************************************************/ int get_msdelay(int64_t dDelayRate) { + /* + * From Android 5.0, There is MaxDelay Concept. + * If App request lower frequency then MaxDelay, + * Sensor have to work with MaxDelay. + */ + + if (dDelayRate > 200000000) + dDelayRate = 200000000; return div_s64(dDelayRate, 1000000); } @@ -50,7 +58,7 @@ static void enable_sensor(struct ssp_data *data, switch (data->aiCheckStatus[iSensorType]) { case ADD_SENSOR_STATE: - ssp_dbg("[SSP]: %s - add %u, New = %lldns\n", + pr_debug("[SSP]: %s - add %u, New = %lldns\n", __func__, 1 << iSensorType, dNewDelay); memcpy(&uBuf[0], &dMsDelay, 4); @@ -72,7 +80,6 @@ static void enable_sensor(struct ssp_data *data, atomic_set(&data->aSensorEnable, uNewEnable); data->aiCheckStatus[iSensorType] = NO_SENSOR_STATE; - data->uMissSensorCnt++; break; } @@ -81,9 +88,7 @@ static void enable_sensor(struct ssp_data *data, if (iSensorType == PROXIMITY_SENSOR) { proximity_open_lcd_ldi(data); proximity_open_calibration(data); - - input_report_abs(data->prox_input_dev, ABS_DISTANCE, 1); - input_sync(data->prox_input_dev); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); } break; case RUNNING_SENSOR_STATE: @@ -91,7 +96,7 @@ static void enable_sensor(struct ssp_data *data, == get_msdelay(data->adDelayBuf[iSensorType])) break; - ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", + pr_debug("[SSP]: %s - Change %u, New = %lldns\n", __func__, 1 << iSensorType, dNewDelay); memcpy(&uBuf[0], &dMsDelay, 4); @@ -147,7 +152,7 @@ static int ssp_remove_sensor(struct ssp_data *data, { u8 uBuf[4]; int64_t dSensorDelay = data->adDelayBuf[uChangedSensor]; - ssp_dbg("[SSP]: %s - remove sensor = %d, current state = %d\n", + pr_debug("[SSP]: %s - remove sensor = %d, current state = %d\n", __func__, (1 << uChangedSensor), uNewEnable); data->adDelayBuf[uChangedSensor] = DEFUALT_POLLING_DELAY; @@ -225,7 +230,7 @@ static ssize_t show_sensors_enable(struct device *dev, { struct ssp_data *data = dev_get_drvdata(dev); - ssp_dbg("[SSP]: %s - cur_enable = %d\n", __func__, + pr_debug("[SSP]: %s - cur_enable = %d\n", __func__, atomic_read(&data->aSensorEnable)); return sprintf(buf, "%9u\n", atomic_read(&data->aSensorEnable)); @@ -246,6 +251,13 @@ static ssize_t set_sensors_enable(struct device *dev, ssp_dbg("[SSP]: %s - new_enable = %u, old_enable = %u\n", __func__, uNewEnable, atomic_read(&data->aSensorEnable)); + if ((uNewEnable != atomic_read(&data->aSensorEnable)) && + !(data->uSensorState & (uNewEnable - atomic_read(&data->aSensorEnable)))) { + pr_info("[SSP] %s - %u is not connected(sensortate: 0x%x)\n", + __func__, uNewEnable - atomic_read(&data->aSensorEnable), data->uSensorState); + return -EINVAL; + } + if (uNewEnable == atomic_read(&data->aSensorEnable)) return size; @@ -254,6 +266,7 @@ static ssize_t set_sensors_enable(struct device *dev, != (uNewEnable & (1 << uChangedSensor))) { if (!(uNewEnable & (1 << uChangedSensor))) { + data->reportedData[uChangedSensor] = false; ssp_remove_sensor(data, uChangedSensor, uNewEnable); /* disable */ } else { /* Change to ADD_SENSOR_STATE from KitKat */ @@ -275,6 +288,7 @@ static ssize_t set_sensors_enable(struct device *dev, else if (uChangedSensor == PROXIMITY_SENSOR) { proximity_open_lcd_ldi(data); proximity_open_calibration(data); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); } } data->aiCheckStatus[uChangedSensor] = ADD_SENSOR_STATE; @@ -689,22 +703,21 @@ static DEVICE_ATTR(game_rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_game_rot_delay, set_game_rot_delay); static DEVICE_ATTR(step_det_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_step_det_delay, set_step_det_delay); - +static DEVICE_ATTR(pressure_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_pressure_delay, set_pressure_delay); static DEVICE_ATTR(accel_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_acc_delay, set_acc_delay); static DEVICE_ATTR(gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_gyro_delay, set_gyro_delay); -static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, - NULL, set_flush); -static struct device_attribute dev_attr_mag_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, +static DEVICE_ATTR(uncalib_gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncalib_gyro_delay, set_uncalib_gyro_delay); +static DEVICE_ATTR(mag_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_mag_delay, set_mag_delay); -static struct device_attribute dev_attr_uncal_mag_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, +static DEVICE_ATTR(uncal_mag_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_uncal_mag_delay, set_uncal_mag_delay); -static struct device_attribute dev_attr_pressure_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_pressure_delay, set_pressure_delay); + +static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, + NULL, set_flush); static struct device_attribute dev_attr_gesture_poll_delay = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_gesture_delay, set_gesture_delay); @@ -720,9 +733,6 @@ static struct device_attribute dev_attr_temp_humi_poll_delay static struct device_attribute dev_attr_sig_motion_poll_delay = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_sig_motion_delay, set_sig_motion_delay); -static struct device_attribute dev_attr_uncalib_gyro_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_uncalib_gyro_delay, set_uncalib_gyro_delay); static struct device_attribute dev_attr_step_cnt_poll_delay = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, show_step_cnt_delay, set_step_cnt_delay); @@ -740,11 +750,14 @@ static struct device_attribute *mcu_attrs[] = { &dev_attr_mcu_sleep_test, &dev_attr_enable_irq, &dev_attr_accel_poll_delay, + &dev_attr_mag_poll_delay, + &dev_attr_uncal_mag_poll_delay, &dev_attr_gyro_poll_delay, + &dev_attr_uncalib_gyro_poll_delay, &dev_attr_rot_poll_delay, &dev_attr_game_rot_poll_delay, &dev_attr_step_det_poll_delay, - &dev_attr_step_cnt_poll_delay, + &dev_attr_pressure_poll_delay, &dev_attr_ssp_flush, NULL, }; @@ -823,6 +836,7 @@ static long ssp_batch_ioctl(struct file *file, unsigned int cmd, pr_info("[SSP] batch %d: delay %lld, timeout %lld, flag %d, ret %d", sensor_type, batch.delay, batch.timeout, batch.flag, ret); + if (!batch.timeout) return 0; if (ret <= 0) @@ -851,10 +865,6 @@ static void remove_mcu_factorytest(struct ssp_data *data) int initialize_sysfs(struct ssp_data *data) { - if (device_create_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay)) - goto err_pressure_input_dev; - if (device_create_file(&data->gesture_input_dev->dev, &dev_attr_gesture_poll_delay)) goto err_gesture_input_dev; @@ -868,25 +878,12 @@ int initialize_sysfs(struct ssp_data *data) goto err_prox_input_dev; if (device_create_file(&data->temp_humi_input_dev->dev, - &dev_attr_temp_humi_poll_delay)) - goto err_temp_humi_input_dev; - - if (device_create_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay)) - goto err_mag_input_dev; - - if (device_create_file(&data->uncal_mag_input_dev->dev, - &dev_attr_uncal_mag_poll_delay)) - goto err_uncal_mag_input_dev; + &dev_attr_temp_humi_poll_delay)) + goto err_temp_humi_input_dev; if (device_create_file(&data->sig_motion_input_dev->dev, &dev_attr_sig_motion_poll_delay)) goto err_sig_motion_input_dev; - - if (device_create_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay)) - goto err_uncalib_gyro_input_dev; - if (device_create_file(&data->step_cnt_input_dev->dev, &dev_attr_step_cnt_poll_delay)) goto err_step_cnt_input_dev; @@ -919,18 +916,9 @@ int initialize_sysfs(struct ssp_data *data) device_remove_file(&data->step_cnt_input_dev->dev, &dev_attr_step_cnt_poll_delay); err_step_cnt_input_dev: - device_remove_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay); -err_uncalib_gyro_input_dev: device_remove_file(&data->sig_motion_input_dev->dev, &dev_attr_sig_motion_poll_delay); err_sig_motion_input_dev: - device_remove_file(&data->uncal_mag_input_dev->dev, - &dev_attr_uncal_mag_poll_delay); -err_uncal_mag_input_dev: - device_remove_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay); -err_mag_input_dev: device_remove_file(&data->temp_humi_input_dev->dev, &dev_attr_temp_humi_poll_delay); err_temp_humi_input_dev: @@ -943,17 +931,12 @@ int initialize_sysfs(struct ssp_data *data) device_remove_file(&data->gesture_input_dev->dev, &dev_attr_gesture_poll_delay); err_gesture_input_dev: - device_remove_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay); -err_pressure_input_dev: pr_err("[SSP] error init sysfs"); return ERROR; } void remove_sysfs(struct ssp_data *data) { - device_remove_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay); device_remove_file(&data->gesture_input_dev->dev, &dev_attr_gesture_poll_delay); device_remove_file(&data->light_input_dev->dev, @@ -962,14 +945,8 @@ void remove_sysfs(struct ssp_data *data) &dev_attr_prox_poll_delay); device_remove_file(&data->temp_humi_input_dev->dev, &dev_attr_temp_humi_poll_delay); - device_remove_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay); - device_remove_file(&data->uncal_mag_input_dev->dev, - &dev_attr_uncal_mag_poll_delay); device_remove_file(&data->sig_motion_input_dev->dev, &dev_attr_sig_motion_poll_delay); - device_remove_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay); device_remove_file(&data->step_cnt_input_dev->dev, &dev_attr_step_cnt_poll_delay); ssp_batch_fops.unlocked_ioctl = NULL; diff --git a/drivers/sensorhub/stm32f/factory/accel_mpu6500.c b/drivers/sensorhub/stm32f/factory/accel_mpu6500.c index 6f64663e0087..d166e1b95267 100755 --- a/drivers/sensorhub/stm32f/factory/accel_mpu6500.c +++ b/drivers/sensorhub/stm32f/factory/accel_mpu6500.c @@ -123,19 +123,19 @@ int set_accel_cal(struct ssp_data *data) static int enable_accel_for_cal(struct ssp_data *data) { - u8 uBuf[4] = { 0, }; + u8 uBuf[9] = { 0, }; s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); memcpy(&uBuf[0], &dMsDelay, 4); if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { if (get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]) != 10) { send_instruction(data, CHANGE_DELAY, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); return SUCCESS; } } else { send_instruction(data, ADD_SENSOR, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); } return FAIL; @@ -143,14 +143,14 @@ static int enable_accel_for_cal(struct ssp_data *data) static void disable_accel_for_cal(struct ssp_data *data, int iDelayChanged) { - u8 uBuf[4] = { 0, }; + u8 uBuf[9] = { 0, }; s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); memcpy(&uBuf[0], &dMsDelay, 4); if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { if (iDelayChanged) send_instruction(data, CHANGE_DELAY, - ACCELEROMETER_SENSOR, uBuf, 4); + ACCELEROMETER_SENSOR, uBuf, 9); } else { send_instruction(data, REMOVE_SENSOR, ACCELEROMETER_SENSOR, uBuf, 4); diff --git a/drivers/sensorhub/stm32f/factory/gesture_max88920.c b/drivers/sensorhub/stm32f/factory/gesture_max88920.c index 73e1fd41f1e6..e4a6022abbd0 100755 --- a/drivers/sensorhub/stm32f/factory/gesture_max88920.c +++ b/drivers/sensorhub/stm32f/factory/gesture_max88920.c @@ -103,7 +103,12 @@ static ssize_t ir_current_store(struct device *dev, for(current_index = 0; current_index < 16; current_index++) { if (set_current[0][current_index] == uNewIrCurrent) { data->uIr_Current = set_current[1][current_index]; - } + break; + } + } + if(current_index == 16) // current setting value wrong. + { + return ERROR; } set_gesture_current(data, data->uIr_Current); data->uIr_Current= uNewIrCurrent; diff --git a/drivers/sensorhub/stm32f/factory/gyro_mpu6500.c b/drivers/sensorhub/stm32f/factory/gyro_mpu6500.c index a7dcb4a7a66f..7bd21316040d 100755 --- a/drivers/sensorhub/stm32f/factory/gyro_mpu6500.c +++ b/drivers/sensorhub/stm32f/factory/gyro_mpu6500.c @@ -686,7 +686,7 @@ static DEVICE_ATTR(vendor, S_IRUGO, gyro_vendor_show, NULL); static DEVICE_ATTR(power_off, S_IRUGO, gyro_power_off, NULL); static DEVICE_ATTR(power_on, S_IRUGO, gyro_power_on, NULL); static DEVICE_ATTR(temperature, S_IRUGO, gyro_get_temp, NULL); -static DEVICE_ATTR(selftest, S_IRUGO, gyro_selftest_show, NULL); +static DEVICE_ATTR(selftest, S_IRUSR|S_IRGRP, gyro_selftest_show, NULL); static DEVICE_ATTR(selftest_dps, S_IRUGO | S_IWUSR | S_IWGRP, gyro_selftest_dps_show, gyro_selftest_dps_store); diff --git a/drivers/sensorhub/stm32f/factory/magnetic_yas532.c b/drivers/sensorhub/stm32f/factory/magnetic_yas532.c index d4208dbfd69c..c3929ca5b2b8 100755 --- a/drivers/sensorhub/stm32f/factory/magnetic_yas532.c +++ b/drivers/sensorhub/stm32f/factory/magnetic_yas532.c @@ -473,7 +473,7 @@ static DEVICE_ATTR(vendor, S_IRUGO, magnetic_vendor_show, NULL); static DEVICE_ATTR(raw_data, S_IRUGO | S_IWUSR | S_IWGRP, raw_data_show, raw_data_store); static DEVICE_ATTR(adc, S_IRUGO, adc_data_read, NULL); -static DEVICE_ATTR(selftest, S_IRUGO, magnetic_get_selftest, NULL); +static DEVICE_ATTR(selftest, S_IRUSR|S_IRGRP, magnetic_get_selftest, NULL); static DEVICE_ATTR(hw_offset, S_IRUGO, hw_offset_show, NULL); static struct device_attribute *mag_attrs[] = { diff --git a/drivers/sensorhub/stm32f/factory/magnetic_yas532.h b/drivers/sensorhub/stm32f/factory/magnetic_yas532.h index 51b8313a095c..92da62b6da86 100755 --- a/drivers/sensorhub/stm32f/factory/magnetic_yas532.h +++ b/drivers/sensorhub/stm32f/factory/magnetic_yas532.h @@ -13,15 +13,21 @@ * */ -#if defined (CONFIG_MACH_HLTEEUR) -#define YAS_STATIC_ELLIPSOID_MATRIX \ -{10324, 453, 415, 622, 9019, -65, -564, 1323, 10708} -#elif defined (CONFIG_MACH_H3GDUOS_CU) +#if defined (CONFIG_MACH_H3GDUOS_CTC) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10286, 423, 412, 731, 9062, -100, -301, 1065, 10704} -#elif defined (CONFIG_MACH_H3GDUOS) +#elif defined (CONFIG_MACH_JSGLTE_CHN_CMCC) +#define YAS_STATIC_ELLIPSOID_MATRIX \ +{10138, 635, -346, 763, 9952, 158, -599, 554, 9944} +#elif defined (CONFIG_MACH_HLTE_CHN_CMCC) +#define YAS_STATIC_ELLIPSOID_MATRIX \ +{10289, 169, 104, 763, 8994, -241, 90, 1146, 10767} +#elif defined (CONFIG_MACH_H3GDUOS_CU) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10279, 367, 440, 763, 9028, -94, 204, 1048, 10769} +#elif defined (CONFIG_MACH_HLTEEUR) +#define YAS_STATIC_ELLIPSOID_MATRIX \ +{10324, 453, 415, 622, 9019, -65, -564, 1323, 10708} #elif defined (CONFIG_MACH_HLTEVZW) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10326, 149, 136, 840, 9061, -73, 177, 1074, 10670} @@ -39,20 +45,20 @@ {10613, 480, 164, 795, 9171, -15, -470, 1323, 10613} #elif defined (CONFIG_MACH_JS01LTEDCM) || defined(CONFIG_MACH_JS01LTESBM) #define YAS_STATIC_ELLIPSOID_MATRIX \ -{10072, 110, 81, 410, 9630, 155, -151, -237, 10304} +{9871, -47, 13, 416, 9559, 48, -307, -240, 10590} #elif defined (CONFIG_MACH_HLTEUSC) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10263, 286, 186, 867, 9108, -52, 309, 1017, 10683} #elif defined (CONFIG_MACH_HLTEDCM) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10298, 293, 292, 723, 9031, -17, 126, 1025, 10749} -#elif defined (CONFIG_MACH_HLTESKT) +#elif defined (CONFIG_MACH_HLTESKT) || defined(CONFIG_MACH_FRESCOLTESKT) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10340, 324, 225, 953, 8996, -7, -65, 508, 10743} -#elif defined (CONFIG_MACH_HLTEKTT) +#elif defined (CONFIG_MACH_HLTEKTT) || defined(CONFIG_MACH_FRESCOLTEKTT) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10340, 324, 225, 953, 8996, -7, -65, 508, 10743} -#elif defined (CONFIG_MACH_HLTELGT) +#elif defined (CONFIG_MACH_HLTELGT) || defined(CONFIG_MACH_FRESCOLTELGT) #define YAS_STATIC_ELLIPSOID_MATRIX \ {10340, 324, 225, 953, 8996, -7, -65, 508, 10743} #elif defined (CONFIG_MACH_FLTEEUR) diff --git a/drivers/sensorhub/stm32f/factory/mcu_atuc128l5har.c b/drivers/sensorhub/stm32f/factory/mcu_atuc128l5har.c index d53965de01ca..ce2660d6b14d 100755 --- a/drivers/sensorhub/stm32f/factory/mcu_atuc128l5har.c +++ b/drivers/sensorhub/stm32f/factory/mcu_atuc128l5har.c @@ -1,300 +1,306 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "../ssp.h" - -/*************************************************************************/ -/* factory Sysfs */ -/*************************************************************************/ - -#define MODEL_NAME "STM32F401CCY6B" - -ssize_t mcu_revision_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "ST01%u,ST01%u\n", get_module_rev(data), - data->uCurFirmRev); -} - -ssize_t mcu_model_name_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - return sprintf(buf, "%s\n", MODEL_NAME); -} - -ssize_t mcu_update_kernel_bin_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - bool bSuccess = false; - int iRet = 0; - struct ssp_data *data = dev_get_drvdata(dev); - - ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); - - iRet = forced_to_download_binary(data, UMS_BINARY); - if (iRet == SUCCESS) { - bSuccess = true; - goto out; - } - - iRet = forced_to_download_binary(data, KERNEL_BINARY); - if (iRet == SUCCESS) - bSuccess = true; - else - bSuccess = false; -out: - return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); -} - -ssize_t mcu_update_kernel_crashed_bin_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - bool bSuccess = false; - int iRet = 0; - struct ssp_data *data = dev_get_drvdata(dev); - - ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); - - iRet = forced_to_download_binary(data, UMS_BINARY); - if (iRet == SUCCESS) { - bSuccess = true; - goto out; - } - - iRet = forced_to_download_binary(data, KERNEL_CRASHED_BINARY); - if (iRet == SUCCESS) - bSuccess = true; - else - bSuccess = false; -out: - return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); -} - -ssize_t mcu_update_ums_bin_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - bool bSuccess = false; - int iRet = 0; - struct ssp_data *data = dev_get_drvdata(dev); - - ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); - - iRet = forced_to_download_binary(data, UMS_BINARY); - if (iRet == SUCCESS) - bSuccess = true; - else - bSuccess = false; - - return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); -} - -ssize_t mcu_reset_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - reset_mcu(data); - - return sprintf(buf, "OK\n"); -} - -ssize_t mcu_dump_show(struct device *dev, struct device_attribute *attr, - char *buf) { - struct ssp_data *data = dev_get_drvdata(dev); - int status = 1, iDelaycnt = 0; - - data->bDumping = true; - set_big_data_start(data, BIG_TYPE_DUMP, 0); - msleep(300); - while (data->bDumping) { - mdelay(10); - if (iDelaycnt++ > 1000) { - status = 0; - break; - } - } - return sprintf(buf, "%s\n", status ? "OK" : "NG"); -} - -static char buffer[FACTORY_DATA_MAX]; - -ssize_t mcu_factorytest_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - struct ssp_data *data = dev_get_drvdata(dev); - int iRet = 0; - struct ssp_msg *msg; - - if (sysfs_streq(buf, "1")) { - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MCU_FACTORY; - msg->length = 5; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - memset(msg->buffer, 0, 5); - - iRet = ssp_spi_async(data, msg); - - } else { - pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); - return -EINVAL; - } - - ssp_dbg("[SSP]: MCU Factory Test Start! - %d\n", iRet); - - return size; -} - -ssize_t mcu_factorytest_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - bool bMcuTestSuccessed = false; - struct ssp_data *data = dev_get_drvdata(dev); - - if (data->bSspShutdown == true) { - ssp_dbg("[SSP]: %s - MCU Bin is crashed\n", __func__); - return sprintf(buf, "NG,NG,NG\n"); - } - - ssp_dbg("[SSP] MCU Factory Test Data : %u, %u, %u, %u, %u\n", buffer[0], - buffer[1], buffer[2], buffer[3], buffer[4]); - - /* system clock, RTC, I2C Master, I2C Slave, externel pin */ - if ((buffer[0] == SUCCESS) - && (buffer[1] == SUCCESS) - && (buffer[2] == SUCCESS) - && (buffer[3] == SUCCESS) - && (buffer[4] == SUCCESS)) - bMcuTestSuccessed = true; - - ssp_dbg("[SSP]: MCU Factory Test Result - %s, %s, %s\n", MODEL_NAME, - (bMcuTestSuccessed ? "OK" : "NG"), "OK"); - - return sprintf(buf, "%s,%s,%s\n", MODEL_NAME, - (bMcuTestSuccessed ? "OK" : "NG"), "OK"); -} - -ssize_t mcu_sleep_factorytest_store(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - struct ssp_data *data = dev_get_drvdata(dev); - int iRet = 0; - struct ssp_msg *msg; - - if (sysfs_streq(buf, "1")) { - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MCU_SLEEP_FACTORY; - msg->length = FACTORY_DATA_MAX; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_async(data, msg); - - } else { - pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); - return -EINVAL; - } - - ssp_dbg("[SSP]: MCU Sleep Factory Test Start! - %d\n", 1); - - return size; -} - -ssize_t mcu_sleep_factorytest_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - int iDataIdx, iSensorData = 0; - struct ssp_data *data = dev_get_drvdata(dev); - struct sensor_value fsb[SENSOR_MAX]; - u16 chLength = 0; - - memcpy(&chLength, buffer, 2); - memset(fsb, 0, sizeof(struct sensor_value) * SENSOR_MAX); - - for (iDataIdx = 2; iDataIdx < chLength + 2;) { - iSensorData = (int)buffer[iDataIdx++]; - - if ((iSensorData < 0) || - (iSensorData >= (SENSOR_MAX - 1))) { - pr_err("[SSP]: %s - Mcu data frame error %d\n", - __func__, iSensorData); - goto exit; - } - - data->get_sensor_data[iSensorData]((char *)buffer, - &iDataIdx, &(fsb[iSensorData])); - } - - fsb[PRESSURE_SENSOR].pressure[0] -= data->iPressureCal; - -exit: - ssp_dbg("[SSP]: %s Result\n" - "accel %d,%d,%d\n" - "gyro %d,%d,%d\n" - "mag %d,%d,%d\n" - "baro %d,%d\n" - "ges %d,%d,%d,%d\n" - "prox %u,%u\n" - "temp %d,%d,%d\n" -#if defined (CONFIG_SENSORS_SSP_MAX88921) - "light %u,%u,%u,%u,%u,%u\n", __func__, -#else - "light %u,%u,%u,%u\n", __func__, -#endif - fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, - fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, - fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, - fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, - fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], - fsb[PRESSURE_SENSOR].pressure[1], - fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], - fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], - fsb[PROXIMITY_SENSOR].prox[0], fsb[PROXIMITY_SENSOR].prox[1], - fsb[TEMPERATURE_HUMIDITY_SENSOR].data[0], - fsb[TEMPERATURE_HUMIDITY_SENSOR].data[1], - fsb[TEMPERATURE_HUMIDITY_SENSOR].data[2], - fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, - fsb[LIGHT_SENSOR].w -#if defined (CONFIG_SENSORS_SSP_MAX88921) - , fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga -#endif - ); - - return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%u," -#ifdef CONFIG_SENSORS_SSP_MAX88921 - "%u,%u,%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", -#else - "%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", -#endif - fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, - fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, - fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, - fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, - fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], - fsb[PRESSURE_SENSOR].pressure[1], fsb[PROXIMITY_SENSOR].prox[1], - fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, - fsb[LIGHT_SENSOR].w, -#ifdef CONFIG_SENSORS_SSP_MAX88921 - fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga, -#endif - fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], - fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], - fsb[TEMPERATURE_HUMIDITY_SENSOR].data[0], - fsb[TEMPERATURE_HUMIDITY_SENSOR].data[1]); -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define MODEL_NAME "STM32F401CCY6B" + +ssize_t mcu_revision_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "ST01%u,ST01%u\n", get_module_rev(data), + data->uCurFirmRev); +} + +ssize_t mcu_model_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", MODEL_NAME); +} + +ssize_t mcu_update_kernel_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + data->uCurFirmRev = get_firmware_rev(data); + pr_info("[SSP] %s: MCU Firm Rev : New = %8u\n", + __func__, data->uCurFirmRev); + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_kernel_crashed_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_CRASHED_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_ums_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; + + data->uCurFirmRev = get_firmware_rev(data); + pr_info("[SSP] %s: MCU Firm Rev : New = %8u\n", + __func__, data->uCurFirmRev); + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_reset_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + reset_mcu(data); + + return sprintf(buf, "OK\n"); +} + +ssize_t mcu_dump_show(struct device *dev, struct device_attribute *attr, + char *buf) { + struct ssp_data *data = dev_get_drvdata(dev); + int status = 1, iDelaycnt = 0; + + data->bDumping = true; + set_big_data_start(data, BIG_TYPE_DUMP, 0); + msleep(300); + while (data->bDumping) { + mdelay(10); + if (iDelaycnt++ > 1000) { + status = 0; + break; + } + } + return sprintf(buf, "%s\n", status ? "OK" : "NG"); +} + +static char buffer[FACTORY_DATA_MAX]; + +ssize_t mcu_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_FACTORY; + msg->length = 5; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + memset(msg->buffer, 0, 5); + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Factory Test Start! - %d\n", iRet); + + return size; +} + +ssize_t mcu_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bMcuTestSuccessed = false; + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bSspShutdown == true) { + ssp_dbg("[SSP]: %s - MCU Bin is crashed\n", __func__); + return sprintf(buf, "NG,NG,NG\n"); + } + + ssp_dbg("[SSP] MCU Factory Test Data : %u, %u, %u, %u, %u\n", buffer[0], + buffer[1], buffer[2], buffer[3], buffer[4]); + + /* system clock, RTC, I2C Master, I2C Slave, externel pin */ + if ((buffer[0] == SUCCESS) + && (buffer[1] == SUCCESS) + && (buffer[2] == SUCCESS) + && (buffer[3] == SUCCESS) + && (buffer[4] == SUCCESS)) + bMcuTestSuccessed = true; + + ssp_dbg("[SSP]: MCU Factory Test Result - %s, %s, %s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); + + return sprintf(buf, "%s,%s,%s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); +} + +ssize_t mcu_sleep_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_SLEEP_FACTORY; + msg->length = FACTORY_DATA_MAX; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Sleep Factory Test Start! - %d\n", 1); + + return size; +} + +ssize_t mcu_sleep_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int iDataIdx, iSensorData = 0; + struct ssp_data *data = dev_get_drvdata(dev); + struct sensor_value fsb[SENSOR_MAX]; + u16 chLength = 0; + + memcpy(&chLength, buffer, 2); + memset(fsb, 0, sizeof(struct sensor_value) * SENSOR_MAX); + + for (iDataIdx = 2; iDataIdx < chLength + 2;) { + iSensorData = (int)buffer[iDataIdx++]; + + if ((iSensorData < 0) || + (iSensorData >= (SENSOR_MAX - 1))) { + pr_err("[SSP]: %s - Mcu data frame error %d\n", + __func__, iSensorData); + goto exit; + } + + data->get_sensor_data[iSensorData]((char *)buffer, + &iDataIdx, &(fsb[iSensorData])); + } + + fsb[PRESSURE_SENSOR].pressure[0] -= data->iPressureCal; + +exit: + ssp_dbg("[SSP]: %s Result\n" + "accel %d,%d,%d\n" + "gyro %d,%d,%d\n" + "mag %d,%d,%d\n" + "baro %d,%d\n" + "ges %d,%d,%d,%d\n" + "prox %u,%u\n" + "temp %d,%d,%d\n" +#if defined (CONFIG_SENSORS_SSP_MAX88921) + "light %u,%u,%u,%u,%u,%u\n", __func__, +#else + "light %u,%u,%u,%u\n", __func__, +#endif + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[PROXIMITY_SENSOR].prox[0], fsb[PROXIMITY_SENSOR].prox[1], + fsb[TEMPERATURE_HUMIDITY_SENSOR].data[0], + fsb[TEMPERATURE_HUMIDITY_SENSOR].data[1], + fsb[TEMPERATURE_HUMIDITY_SENSOR].data[2], + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w +#if defined (CONFIG_SENSORS_SSP_MAX88921) + , fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga +#endif + ); + + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%u," +#ifdef CONFIG_SENSORS_SSP_MAX88921 + "%u,%u,%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", +#else + "%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", +#endif + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], fsb[PROXIMITY_SENSOR].prox[1], + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w, +#ifdef CONFIG_SENSORS_SSP_MAX88921 + fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga, +#endif + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[TEMPERATURE_HUMIDITY_SENSOR].data[0], + fsb[TEMPERATURE_HUMIDITY_SENSOR].data[1]); +} diff --git a/drivers/sensorhub/stm32f/factory/pressure_bmp182.c b/drivers/sensorhub/stm32f/factory/pressure_bmp182.c index dcf8a2978cd0..8be7d02d79e2 100755 --- a/drivers/sensorhub/stm32f/factory/pressure_bmp182.c +++ b/drivers/sensorhub/stm32f/factory/pressure_bmp182.c @@ -15,7 +15,7 @@ #include "../ssp.h" #if defined(CONFIG_MACH_KS01SKT) || defined(CONFIG_MACH_KS01KTT)\ - || defined(CONFIG_MACH_KS01LGT) + || defined(CONFIG_MACH_KS01LGT) || defined(CONFIG_MACH_JACTIVESKT) #define LPS25H_REV 4 #endif diff --git a/drivers/sensorhub/stm32f/factory/prox_max88920.c b/drivers/sensorhub/stm32f/factory/prox_max88920.c index a3f36a93eae6..dcdc21183dac 100755 --- a/drivers/sensorhub/stm32f/factory/prox_max88920.c +++ b/drivers/sensorhub/stm32f/factory/prox_max88920.c @@ -27,18 +27,31 @@ #define LDI_GRAY '1' #define LDI_WHITE '2' +#if defined (CONFIG_MACH_JSGLTE_CHN_CMCC) +#define HIGH_THRESHOLD_88921 60 +#define LOW_THRESHOLD_88921 40 +#else #define HIGH_THRESHOLD_88921 60 #define LOW_THRESHOLD_88921 45 +#endif #if defined (CONFIG_MACH_JS01LTEDCM) || defined(CONFIG_MACH_JS01LTESBM) #define DEFUALT_HIGH_THRESHOLD 90 -#define DEFUALT_LOW_THRESHOLD 60 +#define DEFUALT_LOW_THRESHOLD 65 #define TBD_HIGH_THRESHOLD 90 -#define TBD_LOW_THRESHOLD 60 +#define TBD_LOW_THRESHOLD 65 #define WHITE_HIGH_THRESHOLD 90 -#define WHITE_LOW_THRESHOLD 60 -#else +#define WHITE_LOW_THRESHOLD 65 + +#elif defined (CONFIG_MACH_JSGLTE_CHN_CMCC) +#define DEFUALT_HIGH_THRESHOLD 60 +#define DEFUALT_LOW_THRESHOLD 40 +#define TBD_HIGH_THRESHOLD 60 +#define TBD_LOW_THRESHOLD 40 +#define WHITE_HIGH_THRESHOLD 60 +#define WHITE_LOW_THRESHOLD 40 +#else #define DEFUALT_HIGH_THRESHOLD 120 #define DEFUALT_LOW_THRESHOLD 80 #define TBD_HIGH_THRESHOLD 120 @@ -78,7 +91,7 @@ static ssize_t proximity_avg_show(struct device *dev, static ssize_t proximity_avg_store(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) { - char chTempbuf[4] = { 0 }; + char chTempbuf[9] = { 0, }; int iRet; int64_t dEnable; struct ssp_data *data = dev_get_drvdata(dev); @@ -91,7 +104,7 @@ static ssize_t proximity_avg_store(struct device *dev, return iRet; if (dEnable) { - send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); data->bProximityRawEnabled = true; } else { send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, @@ -105,13 +118,13 @@ static ssize_t proximity_avg_store(struct device *dev, static u16 get_proximity_rawdata(struct ssp_data *data) { u16 uRowdata = 0; - char chTempbuf[4] = { 0 }; + char chTempbuf[9] = { 0, }; s32 dMsDelay = 20; memcpy(&chTempbuf[0], &dMsDelay, 4); if (data->bProximityRawEnabled == false) { - send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); msleep(200); uRowdata = data->buf[PROXIMITY_RAW].prox[0]; send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, diff --git a/drivers/sensorhub/stm32f/factory/temphumidity_shtc1.c b/drivers/sensorhub/stm32f/factory/temphumidity_shtc1.c index 1d6c6ffa88e6..bc325b0883a7 100755 --- a/drivers/sensorhub/stm32f/factory/temphumidity_shtc1.c +++ b/drivers/sensorhub/stm32f/factory/temphumidity_shtc1.c @@ -32,8 +32,14 @@ #define IOCTL_READ_THM_BARO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x06, unsigned short *) #define IOCTL_READ_THM_GYRO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x07, unsigned short *) -#if defined (CONFIG_MACH_HLTEATT) +#if defined (CONFIG_MACH_JSGLTE_CHN_CMCC) +#define MODEL_NAME "GT-I9508V" +#elif defined (CONFIG_MACH_HLTEATT) #define MODEL_NAME "SM-N900A" +#elif defined (CONFIG_MACH_HLTE_CHN_CMCC) +#define MODEL_NAME "SM-N9008V" +#elif defined (CONFIG_MACH_HLTE_CHN_TDOPEN) +#define MODEL_NAME "SM-N9008S" #elif defined (CONFIG_MACH_H3GDUOS_CTC) #define MODEL_NAME "SM-N9009" #elif defined (CONFIG_MACH_H3GDUOS_CU) @@ -42,8 +48,12 @@ #define MODEL_NAME "SM-N9006" #elif defined (CONFIG_MACH_H3G_CHN_CMCC) #define MODEL_NAME "SM-N9008" +#elif defined (CONFIG_MACH_HLTECHNTWU) +#define MODEL_NAME "SM-N900U" #elif defined (CONFIG_MACH_HLTEEUR) #define MODEL_NAME "SM-N9005" +#elif defined (CONFIG_MACH_HLTEAUS) +#define MODEL_NAME "SM-N9007" #elif defined (CONFIG_MACH_HLTETMO) #define MODEL_NAME "SM-N900T" #elif defined (CONFIG_MACH_HLTESPR) @@ -58,6 +68,12 @@ #define MODEL_NAME "SM-N900K" #elif defined (CONFIG_MACH_HLTELGT) #define MODEL_NAME "SM-N900L" +#elif defined (CONFIG_MACH_FRESCOLTESKT) +#define MODEL_NAME "SM-N750S" +#elif defined (CONFIG_MACH_FRESCOLTEKTT) +#define MODEL_NAME "SM-N750K" +#elif defined (CONFIG_MACH_FRESCOLTELGT) +#define MODEL_NAME "SM-N750L" #elif defined (CONFIG_MACH_HLTEDCM) #define MODEL_NAME "SM-N900D" #elif defined (CONFIG_MACH_HLTEKDI) diff --git a/drivers/sensorhub/stm32f/ssp.h b/drivers/sensorhub/stm32f/ssp.h index 79967f1e1da8..87828c0664c7 100755 --- a/drivers/sensorhub/stm32f/ssp.h +++ b/drivers/sensorhub/stm32f/ssp.h @@ -1,721 +1,734 @@ -/* - * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ - -#ifndef __SSP_PRJ_H__ -#define __SSP_PRJ_H__ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef CONFIG_HAS_EARLYSUSPEND -#include -#endif -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef CONFIG_HAS_EARLYSUSPEND -#undef CONFIG_HAS_EARLYSUSPEND -#endif - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB -#include "ssp_sensorhub.h" -#endif - -#define SSP_DBG 1 - -#define SUCCESS 1 -#define FAIL 0 -#define ERROR -1 - -#define FACTORY_DATA_MAX 100 - -#if SSP_DBG -#define SSP_FUNC_DBG 1 -#define SSP_DATA_DBG 0 - -/* ssp mcu device ID */ -#define DEVICE_ID 0x55 - - -#define ssp_dbg(dev, format, ...) do { \ - printk(KERN_INFO dev, format, ##__VA_ARGS__); \ - } while (0) -#else -#define ssp_dbg(dev, format, ...) -#endif - -#if SSP_FUNC_DBG -#define func_dbg() do { \ - printk(KERN_INFO "[SSP]: %s\n", __func__); \ - } while (0) -#else -#define func_dbg() -#endif - -#if SSP_DATA_DBG -#define data_dbg(dev, format, ...) do { \ - printk(KERN_INFO dev, format, ##__VA_ARGS__); \ - } while (0) -#else -#define data_dbg(dev, format, ...) -#endif - -#define SSP_SW_RESET_TIME 3000 -#define DEFUALT_POLLING_DELAY (200 * NSEC_PER_MSEC) -#define PROX_AVG_READ_NUM 80 -#define DEFAULT_RETRIES 3 -#define DATA_PACKET_SIZE 960 - -/* SSP Binary Type */ -enum { - KERNEL_BINARY = 0, - KERNEL_CRASHED_BINARY, - UMS_BINARY, -}; - -/* - * SENSOR_DELAY_SET_STATE - * Check delay set to avoid sending ADD instruction twice - */ -enum { - INITIALIZATION_STATE = 0, - NO_SENSOR_STATE, - ADD_SENSOR_STATE, - RUNNING_SENSOR_STATE, -}; - -/* Firmware download STATE */ -enum { - FW_DL_STATE_FAIL = -1, - FW_DL_STATE_NONE = 0, - FW_DL_STATE_NEED_TO_SCHEDULE, - FW_DL_STATE_SCHEDULED, - FW_DL_STATE_DOWNLOADING, - FW_DL_STATE_SYNC, - FW_DL_STATE_DONE, -}; - -/* for MSG2SSP_AP_GET_THERM */ -enum { - ADC_BATT = 0, - ADC_CHG, -}; - -enum { - SENSORS_BATCH_DRY_RUN = 0x00000001, - SENSORS_BATCH_WAKE_UPON_FIFO_FULL = 0x00000002 -}; - -enum { - META_DATA_FLUSH_COMPLETE = 1, -}; - -#define SSP_INVALID_REVISION 99999 -#define SSP_INVALID_REVISION2 0xFFFFFF - -/* Gyroscope DPS */ -#define GYROSCOPE_DPS250 250 -#define GYROSCOPE_DPS500 500 -#define GYROSCOPE_DPS2000 2000 - -/* Gesture Sensor Current */ -#define DEFUALT_IR_CURRENT 100 //0xF0 - -/* kernel -> ssp manager cmd*/ -#define SSP_LIBRARY_SLEEP_CMD (1 << 5) -#define SSP_LIBRARY_LARGE_DATA_CMD (1 << 6) -#define SSP_LIBRARY_WAKEUP_CMD (1 << 7) - -/* ioctl command */ -#define AKMIO 0xA1 -#define ECS_IOCTL_GET_FUSEROMDATA _IOR(AKMIO, 0x01, unsigned char[3]) -#define ECS_IOCTL_GET_MAGDATA _IOR(AKMIO, 0x02, unsigned char[8]) -#define ECS_IOCTL_GET_ACCDATA _IOR(AKMIO, 0x03, int[3]) - -/* AP -> SSP Instruction */ -#define MSG2SSP_INST_BYPASS_SENSOR_ADD 0xA1 -#define MSG2SSP_INST_BYPASS_SENSOR_REMOVE 0xA2 -#define MSG2SSP_INST_REMOVE_ALL 0xA3 -#define MSG2SSP_INST_CHANGE_DELAY 0xA4 -#define MSG2SSP_INST_LIBRARY_ADD 0xB1 -#define MSG2SSP_INST_LIBRARY_REMOVE 0xB2 -#define MSG2SSP_INST_LIB_NOTI 0xB4 -#define MSG2SSP_INST_LIB_DATA 0xC1 - -#define MSG2SSP_AP_STT 0xC8 -#define MSG2SSP_AP_MCU_SET_GYRO_CAL 0xCD -#define MSG2SSP_AP_MCU_SET_ACCEL_CAL 0xCE -#define MSG2SSP_AP_STATUS_WAKEUP 0xD1 -#define MSG2SSP_AP_STATUS_SLEEP 0xD2 -#define MSG2SSP_AP_STATUS_RESUME 0xD3 -#define MSG2SSP_AP_STATUS_SUSPEND 0xD4 -#define MSG2SSP_AP_STATUS_RESET 0xD5 -#define MSG2SSP_AP_STATUS_POW_CONNECTED 0xD6 -#define MSG2SSP_AP_STATUS_POW_DISCONNECTED 0xD7 -#define MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE 0xDA -#define MSG2SSP_AP_MCU_SET_DUMPMODE 0xDB -#define MSG2SSP_AP_MCU_DUMP_FINISH 0xDC -#define MSG2SSP_AP_MCU_BATCH_FLUSH 0xDD -#define MSG2SSP_AP_MCU_BATCH_COUNT 0xDF - - - - -#define MSG2SSP_AP_WHOAMI 0x0F -#define MSG2SSP_AP_FIRMWARE_REV 0xF0 -#define MSG2SSP_AP_SENSOR_FORMATION 0xF1 -#define MSG2SSP_AP_SENSOR_PROXTHRESHOLD 0xF2 -#define MSG2SSP_AP_SENSOR_BARCODE_EMUL 0xF3 -#define MSG2SSP_AP_SENSOR_SCANNING 0xF4 -#define MSG2SSP_AP_SET_MAGNETIC_HWOFFSET 0xF5 -#define MSG2SSP_AP_GET_MAGNETIC_HWOFFSET 0xF6 -#define MSG2SSP_AP_SENSOR_GESTURE_CURRENT 0xF7 -#define MSG2SSP_AP_GET_THERM 0xF8 -#define MSG2SSP_AP_GET_BIG_DATA 0xF9 -#define MSG2SSP_AP_SET_BIG_DATA 0xFA -#define MSG2SSP_AP_START_BIG_DATA 0xFB -#define MSG2SSP_AP_MCU_SANITY_CHECK 0xFC -#define MSG2SSP_AP_MCU_SET_STATIC_MATRIX 0xFD -#define MSG2SSP_AP_SENSOR_TILT 0xEA -#define MSG2SSP_AP_MCU_SET_TIME 0xFE -#define MSG2SSP_AP_MCU_GET_TIME 0xFF - - -#define MSG2SSP_AP_FUSEROM 0X01 - -/* voice data */ -#define TYPE_WAKE_UP_VOICE_SERVICE 0x01 -#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM 0x01 -#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER 0x02 - -/* Factory Test */ -#define ACCELEROMETER_FACTORY 0x80 -#define GYROSCOPE_FACTORY 0x81 -#define GEOMAGNETIC_FACTORY 0x82 -#define PRESSURE_FACTORY 0x85 -#define GESTURE_FACTORY 0x86 -#define TEMPHUMIDITY_CRC_FACTORY 0x88 -#define GYROSCOPE_TEMP_FACTORY 0x8A -#define GYROSCOPE_DPS_FACTORY 0x8B -#define MCU_FACTORY 0x8C -#define MCU_SLEEP_FACTORY 0x8D - -/* Factory data length */ -#define ACCEL_FACTORY_DATA_LENGTH 1 -#define GYRO_FACTORY_DATA_LENGTH 36 -#define MAGNETIC_FACTORY_DATA_LENGTH 26 -#define PRESSURE_FACTORY_DATA_LENGTH 1 -#define MCU_FACTORY_DATA_LENGTH 5 -#define GYRO_TEMP_FACTORY_DATA_LENGTH 2 -#define GYRO_DPS_FACTORY_DATA_LENGTH 1 -#define TEMPHUMIDITY_FACTORY_DATA_LENGTH 1 -#define MCU_SLEEP_FACTORY_DATA_LENGTH FACTORY_DATA_MAX -#define GESTURE_FACTORY_DATA_LENGTH 4 - -/* SSP -> AP ACK about write CMD */ -#define MSG_ACK 0x80 /* ACK from SSP to AP */ -#define MSG_NAK 0x70 /* NAK from SSP to AP */ - -/* Accelerometer sensor */ -#define MAX_ACCEL_1G 16384 -#define MAX_ACCEL_2G 32767 -#define MIN_ACCEL_2G -32768 -#define MAX_ACCEL_4G 65536 - -#define MAX_GYRO 32767 -#define MIN_GYRO -32768 - -#define MCU_IS_SANE 0x20 - -#define MAX_COMP_BUFF 60 -/* temphumidity sensor*/ -struct shtc1_buffer { - u16 batt[MAX_COMP_BUFF]; - u16 chg[MAX_COMP_BUFF]; - s16 temp[MAX_COMP_BUFF]; - u16 humidity[MAX_COMP_BUFF]; - u16 baro[MAX_COMP_BUFF]; - u16 gyro[MAX_COMP_BUFF]; - char len; -}; - -/* sensor combination, data->sns_combination */ -enum { - INVENSENSE_MPU6500_AG = 0, - STM_K330_AG, -}; - -/* SSP_INSTRUCTION_CMD */ -enum { - REMOVE_SENSOR = 0, - ADD_SENSOR, - CHANGE_DELAY, - GO_SLEEP, - REMOVE_LIBRARY, - ADD_LIBRARY, -}; - -/* SENSOR_TYPE */ -enum { - ACCELEROMETER_SENSOR = 0, - GYROSCOPE_SENSOR, - GEOMAGNETIC_UNCALIB_SENSOR, - GEOMAGNETIC_RAW, - GEOMAGNETIC_SENSOR, - PRESSURE_SENSOR, - GESTURE_SENSOR, - PROXIMITY_SENSOR, - TEMPERATURE_HUMIDITY_SENSOR, - LIGHT_SENSOR, - PROXIMITY_RAW, - ORIENTATION_SENSOR, - STEP_DETECTOR = 12, - SIG_MOTION_SENSOR, - GYRO_UNCALIB_SENSOR, - GAME_ROTATION_VECTOR = 15, - ROTATION_VECTOR, - STEP_COUNTER, - SENSOR_MAX, -}; - -#define SSP_BYPASS_SENSORS_EN_ALL (1 << ACCELEROMETER_SENSOR |\ - 1 << GYROSCOPE_SENSOR | 1 << GEOMAGNETIC_UNCALIB_SENSOR |\ - 1 << GEOMAGNETIC_SENSOR | 1 << PRESSURE_SENSOR |\ - 1 << TEMPERATURE_HUMIDITY_SENSOR | 1 << LIGHT_SENSOR|\ - 1 << GYRO_UNCALIB_SENSOR | 1 << GAME_ROTATION_VECTOR) /* PROXIMITY_SENSOR is not continuos */ - -struct meta_data_event { - s32 what; - s32 sensor; -} __attribute__((__packed__)); - -struct sensor_value { - union { - struct { - s16 x; - s16 y; - s16 z; - }; - struct { /*calibrated mag, gyro*/ - s16 cal_x; - s16 cal_y; - s16 cal_z; - u8 accuracy; - }; - struct { /*uncalibrated mag, gyro*/ - s16 uncal_x; - s16 uncal_y; - s16 uncal_z; - s16 offset_x; - s16 offset_y; - s16 offset_z; - }; - struct { /* rotation vector */ - s32 quat_a; - s32 quat_b; - s32 quat_c; - s32 quat_d; - u8 acc_rot; - }; - struct { - u16 r; - u16 g; - u16 b; - u16 w; -#if defined (CONFIG_SENSORS_SSP_MAX88921) - u16 ir_cmp; - u16 amb_pga; -#endif - }; - u8 step_det; - u8 sig_motion; - u32 step_diff; - u16 prox[4]; - s16 data[19]; - s32 pressure[3]; - struct meta_data_event meta_data; - }; - u64 timestamp; -} __attribute__((__packed__)); - -extern struct class *sensors_event_class; -extern int poweroff_charging; -extern int recovery_mode; - -struct calibraion_data { - s16 x; - s16 y; - s16 z; -}; - -struct hw_offset_data { - char x; - char y; - char z; -}; - -/* ssp_msg options bit*/ -#define SSP_SPI 0 /* read write mask */ -#define SSP_RETURN 2 /* write and read option */ -#define SSP_GYRO_DPS 3 /* gyro dps mask */ -#define SSP_INDEX 3 /* data index mask */ - -#define SSP_SPI_MASK (3 << SSP_SPI) /* read write mask */ -#define SSP_GYRO_DPS_MASK (3 << SSP_GYRO_DPS) -#define SSP_INDEX_MASK (8191 << SSP_INDEX) /* dump index mask. Index is up to 8191 */ - -struct ssp_msg { - u8 cmd; - u16 length; - u16 options; - u32 data; - - struct list_head list; - struct completion *done; - char *buffer; - u8 free_buffer; - bool *dead_hook; - bool dead; -} __attribute__((__packed__)); - -enum { - AP2HUB_READ = 0, - AP2HUB_WRITE, - HUB2AP_WRITE, - AP2HUB_READY, - AP2HUB_RETURN -}; - -enum { - BIG_TYPE_DUMP = 0, - BIG_TYPE_READ_LIB, - /*+snamy.jeong 0706 for voice model download & pcm dump*/ - BIG_TYPE_VOICE_NET, - BIG_TYPE_VOICE_GRAM, - BIG_TYPE_VOICE_PCM, - /*-snamy.jeong 0706 for voice model download & pcm dump*/ - BIG_TYPE_TEMP, - BIG_TYPE_MAX, -}; - -struct ssp_data { - struct iio_dev *accel_indio_dev; - struct iio_dev *gyro_indio_dev; - struct iio_dev *rot_indio_dev; - struct iio_dev *game_rot_indio_dev; - struct iio_dev *step_det_indio_dev; - struct iio_trigger *accel_trig; - struct iio_trigger *gyro_trig; - struct iio_trigger *rot_trig; - struct iio_trigger *game_rot_trig; - struct iio_trigger *step_det_trig; - struct input_dev *pressure_input_dev; - struct input_dev *light_input_dev; - struct input_dev *prox_input_dev; - struct input_dev *temp_humi_input_dev; - struct input_dev *mag_input_dev; - struct input_dev *uncalib_mag_input_dev; - struct input_dev *gesture_input_dev; - struct input_dev *sig_motion_input_dev; - struct input_dev *uncalib_gyro_input_dev; - struct input_dev *step_cnt_input_dev; - struct input_dev *meta_input_dev; - struct spi_device *spi; - struct i2c_client *client; - struct wake_lock ssp_wake_lock; - struct miscdevice akmd_device; - struct timer_list debug_timer; - struct workqueue_struct *debug_wq; - struct work_struct work_debug; - struct calibraion_data accelcal; - struct calibraion_data gyrocal; - struct hw_offset_data magoffset; - struct sensor_value buf[SENSOR_MAX]; - struct device *sen_dev; - struct device *mcu_device; - struct device *acc_device; - struct device *gyro_device; - struct device *mag_device; - struct device *prs_device; - struct device *prox_device; - struct device *light_device; - struct delayed_work work_firmware; - struct device *ges_device; - struct device *temphumidity_device; - struct miscdevice shtc1_device; - struct miscdevice batch_io_device; - -/*snamy.jeong@samsung.com temporary code for voice data sending to mcu*/ - struct device *voice_device; - - bool bSspShutdown; - bool bAccelAlert; - bool bProximityRawEnabled; - bool bGeomagneticRawEnabled; - bool bBarcodeEnabled; - bool bMcuDumpMode; - bool bBinaryChashed; - bool bProbeIsDone; - bool bDumping; - bool bTimeSyncing; - - unsigned int uProxCanc; - unsigned int uProxHiThresh; - unsigned int uProxLoThresh; - unsigned int uProxHiThresh_default; - unsigned int uProxLoThresh_default; - - unsigned int uIr_Current; - unsigned char uFuseRomData[3]; - char *pchLibraryBuf; - char chLcdLdi[2]; - int iIrq; - int iLibraryLength; - int aiCheckStatus[SENSOR_MAX]; - - unsigned int uIrqFailCnt; - unsigned int uSsdFailCnt; - unsigned int uResetCnt; - unsigned int uInstFailCnt; - unsigned int uTimeOutCnt; - unsigned int uIrqCnt; - unsigned int uBusyCnt; - unsigned int uMissSensorCnt; - unsigned int uSanityCnt; - unsigned int uDumpCnt; - - unsigned int uGyroDps; - unsigned int uSensorState; - unsigned int uCurFirmRev; - unsigned int uFactoryProxAvg[4]; - char uLastResumeState; - char uLastAPState; - s32 iPressureCal; - u64 step_count_total; - atomic_t aSensorEnable; - int64_t adDelayBuf[SENSOR_MAX]; - s32 batchLatencyBuf[SENSOR_MAX]; - s8 batchOptBuf[SENSOR_MAX]; - - int (*wakeup_mcu)(void); - int (*check_mcu_ready)(void); - int (*check_mcu_busy)(void); - int (*set_mcu_reset)(int); - int (*read_chg)(void); - void (*get_sensor_data[SENSOR_MAX])(char *, int *, - struct sensor_value *); - void (*report_sensor_data[SENSOR_MAX])(struct ssp_data *, - struct sensor_value *); - -#ifdef CONFIG_HAS_EARLYSUSPEND - struct early_suspend early_suspend; -#endif - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - struct ssp_sensorhub_data *hub_data; -#endif - int ap_rev; - int ssp_changes; - int accel_position; - int mag_position; - int rot_direction; - int fw_dl_state; -#ifdef CONFIG_SENSORS_SSP_SHTC1 - char *comp_engine_ver; - char *comp_engine_ver2; - struct mutex cp_temp_adc_lock; -#endif - struct mutex bulk_temp_read_lock; - struct shtc1_buffer* bulk_buffer; - struct mutex comm_mutex; - struct mutex pending_mutex; - - int mcu_int1; - int mcu_int2; - int ap_int; - int rst; - int chg; - int sns_combination; - struct regulator *reg_hub; - struct regulator *reg_sns; - - struct list_head pending_list; - void (*ssp_big_task[BIG_TYPE_MAX])(struct work_struct *); - u64 timestamp; -}; - -struct ssp_big { - struct ssp_data* data; - struct work_struct work; - u32 length; - u32 addr; -}; - -int ssp_iio_configure_ring(struct iio_dev *); -void ssp_iio_unconfigure_ring(struct iio_dev *); -int ssp_iio_probe_trigger(struct ssp_data *, struct iio_dev *, struct iio_trigger *); -void ssp_iio_remove_trigger(struct iio_trigger *); -void ssp_enable(struct ssp_data *, bool); -int waiting_init_mcu(struct ssp_data *); -int waiting_wakeup_mcu(struct ssp_data *); -int ssp_i2c_read(struct ssp_data *, char *, u16, char *, u16, int); -int ssp_spi_async(struct ssp_data *, struct ssp_msg *); -int ssp_spi_sync(struct ssp_data *, struct ssp_msg *, int); -void clean_pending_list(struct ssp_data *); -void toggle_mcu_reset(struct ssp_data *); -int initialize_mcu(struct ssp_data *); -int initialize_input_dev(struct ssp_data *); -int initialize_sysfs(struct ssp_data *); -void initialize_accel_factorytest(struct ssp_data *); -void initialize_prox_factorytest(struct ssp_data *); -void initialize_light_factorytest(struct ssp_data *); -void initialize_gyro_factorytest(struct ssp_data *); -void initialize_pressure_factorytest(struct ssp_data *); -void initialize_magnetic_factorytest(struct ssp_data *); -void initialize_function_pointer(struct ssp_data *); -void initialize_magnetic(struct ssp_data *); -void initialize_gesture_factorytest(struct ssp_data *data); -void initialize_temphumidity_factorytest(struct ssp_data *data); -void remove_accel_factorytest(struct ssp_data *); -void remove_gyro_factorytest(struct ssp_data *); -void remove_prox_factorytest(struct ssp_data *); -void remove_light_factorytest(struct ssp_data *); -void remove_pressure_factorytest(struct ssp_data *); -void remove_magnetic_factorytest(struct ssp_data *); -void remove_gesture_factorytest(struct ssp_data *data); -void remove_temphumidity_factorytest(struct ssp_data *data); -void destroy_sensor_class(void); -int initialize_event_symlink(struct ssp_data *); -int sensors_create_symlink(struct kobject *target, - const char *name); -int accel_open_calibration(struct ssp_data *); -int gyro_open_calibration(struct ssp_data *); -int pressure_open_calibration(struct ssp_data *); -int proximity_open_calibration(struct ssp_data *); -int check_fwbl(struct ssp_data *); -void remove_input_dev(struct ssp_data *); -void remove_sysfs(struct ssp_data *); -void remove_event_symlink(struct ssp_data *); -int ssp_send_cmd(struct ssp_data *, char, int); -int send_instruction(struct ssp_data *, u8, u8, u8 *, u8); -int send_instruction_sync(struct ssp_data *, u8, u8, u8 *, u8); -int flush(struct ssp_data *, u8); -int get_batch_count(struct ssp_data *, u8); -int select_irq_msg(struct ssp_data *); -int get_chipid(struct ssp_data *); -int get_fuserom_data(struct ssp_data *); -int set_big_data_start(struct ssp_data *, u8 , u32); -int mag_open_hwoffset(struct ssp_data *); -int mag_store_hwoffset(struct ssp_data *); -int set_hw_offset(struct ssp_data *); -int get_hw_offset(struct ssp_data *); -int set_gyro_cal(struct ssp_data *); -int set_accel_cal(struct ssp_data *); -#if defined (CONFIG_SENSORS_SSP_YAS532) -int set_static_matrix(struct ssp_data *data); -#endif -int set_sensor_position(struct ssp_data *); -#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) -int set_sensor_tilt(struct ssp_data *); -#endif -int sanity_check(struct ssp_data *data); -void sync_sensor_state(struct ssp_data *); -void set_proximity_threshold(struct ssp_data *, unsigned int, unsigned int); -void set_proximity_barcode_enable(struct ssp_data *, bool); -void set_gesture_current(struct ssp_data *, unsigned char); -int get_msdelay(int64_t); -unsigned int get_sensor_scanning_info(struct ssp_data *); -unsigned int get_firmware_rev(struct ssp_data *); -int forced_to_download_binary(struct ssp_data *, int); -int parse_dataframe(struct ssp_data *, char *, int); -void enable_debug_timer(struct ssp_data *); -void disable_debug_timer(struct ssp_data *); -int initialize_debug_timer(struct ssp_data *); -int proximity_open_lcd_ldi(struct ssp_data *); -void report_meta_data(struct ssp_data *, struct sensor_value *); -void report_acc_data(struct ssp_data *, struct sensor_value *); -void report_gyro_data(struct ssp_data *, struct sensor_value *); -void report_mag_data(struct ssp_data *, struct sensor_value *); -void report_uncalib_mag_data(struct ssp_data *, struct sensor_value *); -void report_rot_data(struct ssp_data *, struct sensor_value *); -void report_game_rot_data(struct ssp_data *, struct sensor_value *); -void report_step_det_data(struct ssp_data *, struct sensor_value *); -void report_gesture_data(struct ssp_data *, struct sensor_value *); -void report_pressure_data(struct ssp_data *, struct sensor_value *); -void report_light_data(struct ssp_data *, struct sensor_value *); -void report_prox_data(struct ssp_data *, struct sensor_value *); -void report_prox_raw_data(struct ssp_data *, struct sensor_value *); -void report_geomagnetic_raw_data(struct ssp_data *, struct sensor_value *); -void report_sig_motion_data(struct ssp_data *, struct sensor_value *); -void report_uncalib_gyro_data(struct ssp_data *, struct sensor_value *); -void report_step_cnt_data(struct ssp_data *, struct sensor_value *); -int print_mcu_debug(char *, int *, int); -void report_temp_humidity_data(struct ssp_data *, struct sensor_value *); -void report_bulk_comp_data(struct ssp_data *data); -unsigned int get_module_rev(struct ssp_data *data); -void reset_mcu(struct ssp_data *); -void convert_acc_data(s16 *); -int sensors_register(struct device *, void *, - struct device_attribute*[], char *); -void sensors_unregister(struct device *, - struct device_attribute*[]); -ssize_t mcu_reset_show(struct device *, struct device_attribute *, char *); -ssize_t mcu_dump_show(struct device *, struct device_attribute *, char *); -ssize_t mcu_revision_show(struct device *, struct device_attribute *, char *); -ssize_t mcu_update_ums_bin_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_update_kernel_bin_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_update_kernel_crashed_bin_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_factorytest_store(struct device *, struct device_attribute *, - const char *, size_t); -ssize_t mcu_factorytest_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_model_name_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_sleep_factorytest_show(struct device *, - struct device_attribute *, char *); -ssize_t mcu_sleep_factorytest_store(struct device *, - struct device_attribute *, const char *, size_t); -ssize_t mpu6500_gyro_selftest(char *, struct ssp_data *); -ssize_t k330_gyro_selftest(char *, struct ssp_data *); - -void ssp_dump_task(struct work_struct *work); -void ssp_read_big_library_task(struct work_struct *work); -void ssp_send_big_library_task(struct work_struct *work); -void ssp_pcm_dump_task(struct work_struct *work); -void ssp_temp_task(struct work_struct *work); -int set_time(struct ssp_data *); -int get_time(struct ssp_data *); - -#if defined (CONFIG_MACH_VIKALCU) -void proximity_ldo_enable(int onoff); -#endif -#endif +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SSP_PRJ_H__ +#define __SSP_PRJ_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_HAS_EARLYSUSPEND +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef CONFIG_HAS_EARLYSUSPEND +#undef CONFIG_HAS_EARLYSUSPEND +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB +#include "ssp_sensorhub.h" +#endif + +#define SSP_DBG 1 + +#define SUCCESS 1 +#define FAIL 0 +#define ERROR -1 + +#define FACTORY_DATA_MAX 100 + +#if SSP_DBG +#define SSP_FUNC_DBG 1 +#define SSP_DATA_DBG 0 + +/* ssp mcu device ID */ +#define DEVICE_ID 0x55 + + +#define ssp_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define ssp_dbg(dev, format, ...) +#endif + +#if SSP_FUNC_DBG +#define func_dbg() do { \ + printk(KERN_INFO "[SSP]: %s\n", __func__); \ + } while (0) +#else +#define func_dbg() +#endif + +#if SSP_DATA_DBG +#define data_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define data_dbg(dev, format, ...) +#endif + +#define SSP_SW_RESET_TIME 3000 +#define DEFUALT_POLLING_DELAY (200 * NSEC_PER_MSEC) +#define PROX_AVG_READ_NUM 80 +#define DEFAULT_RETRIES 3 +#define DATA_PACKET_SIZE 960 + +/* SSP Binary Type */ +enum { + KERNEL_BINARY = 0, + KERNEL_CRASHED_BINARY, + UMS_BINARY, +}; + +/* + * SENSOR_DELAY_SET_STATE + * Check delay set to avoid sending ADD instruction twice + */ +enum { + INITIALIZATION_STATE = 0, + NO_SENSOR_STATE, + ADD_SENSOR_STATE, + RUNNING_SENSOR_STATE, +}; + +/* Firmware download STATE */ +enum { + FW_DL_STATE_FAIL = -1, + FW_DL_STATE_NONE = 0, + FW_DL_STATE_NEED_TO_SCHEDULE, + FW_DL_STATE_SCHEDULED, + FW_DL_STATE_DOWNLOADING, + FW_DL_STATE_SYNC, + FW_DL_STATE_DONE, +}; + +/* for MSG2SSP_AP_GET_THERM */ +enum { + ADC_BATT = 0, + ADC_CHG, +}; + +enum { + SENSORS_BATCH_DRY_RUN = 0x00000001, + SENSORS_BATCH_WAKE_UPON_FIFO_FULL = 0x00000002 +}; + +enum { + META_DATA_FLUSH_COMPLETE = 1, +}; + +#define SSP_INVALID_REVISION 99999 +#define SSP_INVALID_REVISION2 0xFFFFFF + +/* Gyroscope DPS */ +#define GYROSCOPE_DPS250 250 +#define GYROSCOPE_DPS500 500 +#define GYROSCOPE_DPS2000 2000 + +/* Gesture Sensor Current */ +#define DEFUALT_IR_CURRENT 100 //0xF0 + +/* kernel -> ssp manager cmd*/ +#define SSP_LIBRARY_SLEEP_CMD (1 << 5) +#define SSP_LIBRARY_LARGE_DATA_CMD (1 << 6) +#define SSP_LIBRARY_WAKEUP_CMD (1 << 7) + +/* ioctl command */ +#define AKMIO 0xA1 +#define ECS_IOCTL_GET_FUSEROMDATA _IOR(AKMIO, 0x01, unsigned char[3]) +#define ECS_IOCTL_GET_MAGDATA _IOR(AKMIO, 0x02, unsigned char[8]) +#define ECS_IOCTL_GET_ACCDATA _IOR(AKMIO, 0x03, int[3]) + +/* AP -> SSP Instruction */ +#define MSG2SSP_INST_BYPASS_SENSOR_ADD 0xA1 +#define MSG2SSP_INST_BYPASS_SENSOR_REMOVE 0xA2 +#define MSG2SSP_INST_REMOVE_ALL 0xA3 +#define MSG2SSP_INST_CHANGE_DELAY 0xA4 +#define MSG2SSP_INST_LIBRARY_ADD 0xB1 +#define MSG2SSP_INST_LIBRARY_REMOVE 0xB2 +#define MSG2SSP_INST_LIB_NOTI 0xB4 +#define MSG2SSP_INST_LIB_DATA 0xC1 + +#define MSG2SSP_AP_STT 0xC8 +#define MSG2SSP_AP_MCU_SET_GYRO_CAL 0xCD +#define MSG2SSP_AP_MCU_SET_ACCEL_CAL 0xCE +#define MSG2SSP_AP_STATUS_WAKEUP 0xD1 +#define MSG2SSP_AP_STATUS_SLEEP 0xD2 +#define MSG2SSP_AP_STATUS_RESUME 0xD3 +#define MSG2SSP_AP_STATUS_SUSPEND 0xD4 +#define MSG2SSP_AP_STATUS_RESET 0xD5 +#define MSG2SSP_AP_STATUS_POW_CONNECTED 0xD6 +#define MSG2SSP_AP_STATUS_POW_DISCONNECTED 0xD7 +#define MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE 0xDA +#define MSG2SSP_AP_MCU_SET_DUMPMODE 0xDB +#define MSG2SSP_AP_MCU_DUMP_FINISH 0xDC +#define MSG2SSP_AP_MCU_BATCH_FLUSH 0xDD +#define MSG2SSP_AP_MCU_BATCH_COUNT 0xDF + + + + +#define MSG2SSP_AP_WHOAMI 0x0F +#define MSG2SSP_AP_FIRMWARE_REV 0xF0 +#define MSG2SSP_AP_SENSOR_FORMATION 0xF1 +#define MSG2SSP_AP_SENSOR_PROXTHRESHOLD 0xF2 +#define MSG2SSP_AP_SENSOR_BARCODE_EMUL 0xF3 +#define MSG2SSP_AP_SENSOR_SCANNING 0xF4 +#define MSG2SSP_AP_SET_MAGNETIC_HWOFFSET 0xF5 +#define MSG2SSP_AP_GET_MAGNETIC_HWOFFSET 0xF6 +#define MSG2SSP_AP_SENSOR_GESTURE_CURRENT 0xF7 +#define MSG2SSP_AP_GET_THERM 0xF8 +#define MSG2SSP_AP_GET_BIG_DATA 0xF9 +#define MSG2SSP_AP_SET_BIG_DATA 0xFA +#define MSG2SSP_AP_START_BIG_DATA 0xFB +#define MSG2SSP_AP_MCU_SANITY_CHECK 0xFC +#define MSG2SSP_AP_MCU_SET_STATIC_MATRIX 0xFD +#define MSG2SSP_AP_SENSOR_TILT 0xEA +#define MSG2SSP_AP_MCU_SET_TIME 0xFE +#define MSG2SSP_AP_MCU_GET_TIME 0xFF + + +#define MSG2SSP_AP_FUSEROM 0X01 + +/* voice data */ +#define TYPE_WAKE_UP_VOICE_SERVICE 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER 0x02 + +/* Factory Test */ +#define ACCELEROMETER_FACTORY 0x80 +#define GYROSCOPE_FACTORY 0x81 +#define GEOMAGNETIC_FACTORY 0x82 +#define PRESSURE_FACTORY 0x85 +#define GESTURE_FACTORY 0x86 +#define TEMPHUMIDITY_CRC_FACTORY 0x88 +#define GYROSCOPE_TEMP_FACTORY 0x8A +#define GYROSCOPE_DPS_FACTORY 0x8B +#define MCU_FACTORY 0x8C +#define MCU_SLEEP_FACTORY 0x8D + +/* Factory data length */ +#define ACCEL_FACTORY_DATA_LENGTH 1 +#define GYRO_FACTORY_DATA_LENGTH 36 +#define MAGNETIC_FACTORY_DATA_LENGTH 26 +#define PRESSURE_FACTORY_DATA_LENGTH 1 +#define MCU_FACTORY_DATA_LENGTH 5 +#define GYRO_TEMP_FACTORY_DATA_LENGTH 2 +#define GYRO_DPS_FACTORY_DATA_LENGTH 1 +#define TEMPHUMIDITY_FACTORY_DATA_LENGTH 1 +#define MCU_SLEEP_FACTORY_DATA_LENGTH FACTORY_DATA_MAX +#define GESTURE_FACTORY_DATA_LENGTH 4 + +/* SSP -> AP ACK about write CMD */ +#define MSG_ACK 0x80 /* ACK from SSP to AP */ +#define MSG_NAK 0x70 /* NAK from SSP to AP */ + +/* Accelerometer sensor */ +#define MAX_ACCEL_1G 16384 +#define MAX_ACCEL_2G 32767 +#define MIN_ACCEL_2G -32768 +#define MAX_ACCEL_4G 65536 + +#define MAX_GYRO 32767 +#define MIN_GYRO -32768 + +#define MCU_IS_SANE 0x20 + +#define MAX_COMP_BUFF 60 +/* temphumidity sensor*/ +struct shtc1_buffer { + u16 batt[MAX_COMP_BUFF]; + u16 chg[MAX_COMP_BUFF]; + s16 temp[MAX_COMP_BUFF]; + u16 humidity[MAX_COMP_BUFF]; + u16 baro[MAX_COMP_BUFF]; + u16 gyro[MAX_COMP_BUFF]; + char len; +}; + +/* sensor combination, data->sns_combination */ +enum { + INVENSENSE_MPU6500_AG = 0, + STM_K330_AG, +}; + +/* SSP_INSTRUCTION_CMD */ +enum { + REMOVE_SENSOR = 0, + ADD_SENSOR, + CHANGE_DELAY, + GO_SLEEP, + REMOVE_LIBRARY, + ADD_LIBRARY, +}; + +/* SENSOR_TYPE */ +enum { + ACCELEROMETER_SENSOR = 0, + GYROSCOPE_SENSOR, + GEOMAGNETIC_UNCALIB_SENSOR, + GEOMAGNETIC_RAW, + GEOMAGNETIC_SENSOR, + PRESSURE_SENSOR, + GESTURE_SENSOR, + PROXIMITY_SENSOR, + TEMPERATURE_HUMIDITY_SENSOR, + LIGHT_SENSOR, + PROXIMITY_RAW, + ORIENTATION_SENSOR, + STEP_DETECTOR = 12, + SIG_MOTION_SENSOR, + GYRO_UNCALIB_SENSOR, + GAME_ROTATION_VECTOR = 15, + ROTATION_VECTOR, + STEP_COUNTER, + SENSOR_MAX, +}; + +struct meta_data_event { + s32 what; + s32 sensor; +} __attribute__((__packed__)); + +struct sensor_value { + union { + struct { + s16 x; + s16 y; + s16 z; + }; + struct { /*calibrated mag, gyro*/ + s16 cal_x; + s16 cal_y; + s16 cal_z; + u8 accuracy; + }; + struct { /*uncalibrated mag, gyro*/ + s16 uncal_x; + s16 uncal_y; + s16 uncal_z; + s16 offset_x; + s16 offset_y; + s16 offset_z; + }; + struct { /* rotation vector */ + s32 quat_a; + s32 quat_b; + s32 quat_c; + s32 quat_d; + u8 acc_rot; + }; + struct { + u16 r; + u16 g; + u16 b; + u16 w; +#if defined (CONFIG_SENSORS_SSP_MAX88921) + u16 ir_cmp; + u16 amb_pga; +#endif + }; + u8 step_det; + u8 sig_motion; + u32 step_diff; +#if defined (CONFIG_SENSORS_SSP_MAX88920) + u8 prox[2]; +#else + u16 prox[4]; +#endif + s16 data[19]; + s32 pressure[3]; + struct meta_data_event meta_data; + }; + u64 timestamp; +} __attribute__((__packed__)); + +extern struct class *sensors_event_class; +extern int poweroff_charging; +extern int recovery_mode; + +struct calibraion_data { + s16 x; + s16 y; + s16 z; +}; + +struct hw_offset_data { + char x; + char y; + char z; +}; + +/* ssp_msg options bit*/ +#define SSP_SPI 0 /* read write mask */ +#define SSP_RETURN 2 /* write and read option */ +#define SSP_GYRO_DPS 3 /* gyro dps mask */ +#define SSP_INDEX 3 /* data index mask */ + +#define SSP_SPI_MASK (3 << SSP_SPI) /* read write mask */ +#define SSP_GYRO_DPS_MASK (3 << SSP_GYRO_DPS) +#define SSP_INDEX_MASK (8191 << SSP_INDEX) /* dump index mask. Index is up to 8191 */ + +struct ssp_msg { + u8 cmd; + u16 length; + u16 options; + u32 data; + + struct list_head list; + struct completion *done; + char *buffer; + u8 free_buffer; + bool *dead_hook; + bool dead; +} __attribute__((__packed__)); + +enum { + AP2HUB_READ = 0, + AP2HUB_WRITE, + HUB2AP_WRITE, + AP2HUB_READY, + AP2HUB_RETURN +}; + +enum { + BIG_TYPE_DUMP = 0, + BIG_TYPE_READ_LIB, + /*+snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_VOICE_NET, + BIG_TYPE_VOICE_GRAM, + BIG_TYPE_VOICE_PCM, + /*-snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_TEMP, + BIG_TYPE_MAX, +}; + +enum { + BATCH_MODE_NONE = 0, + BATCH_MODE_RUN, +}; + +struct ssp_time_diff { + u16 batch_count; + u16 batch_mode; + u64 time_diff; + u64 irq_diff; + u16 batch_count_fixed; +}; +struct ssp_data { + struct iio_dev *accel_indio_dev; + struct iio_dev *gyro_indio_dev; + struct iio_dev *uncal_gyro_indio_dev; + struct iio_dev *rot_indio_dev; + struct iio_dev *game_rot_indio_dev; + struct iio_dev *step_det_indio_dev; + struct iio_dev *mag_indio_dev; + struct iio_dev *uncal_mag_indio_dev; + struct iio_trigger *accel_trig; + struct iio_trigger *gyro_trig; + struct iio_trigger *rot_trig; + struct iio_trigger *game_rot_trig; + struct iio_trigger *step_det_trig; + struct input_dev *pressure_input_dev; + struct input_dev *light_input_dev; + struct input_dev *prox_input_dev; + struct input_dev *temp_humi_input_dev; + struct input_dev *gesture_input_dev; + struct input_dev *sig_motion_input_dev; + struct input_dev *step_cnt_input_dev; + struct input_dev *meta_input_dev; + struct spi_device *spi; + struct i2c_client *client; + struct wake_lock ssp_wake_lock; + struct miscdevice akmd_device; + struct timer_list debug_timer; + struct workqueue_struct *debug_wq; + struct work_struct work_debug; + struct calibraion_data accelcal; + struct calibraion_data gyrocal; + struct hw_offset_data magoffset; + struct sensor_value buf[SENSOR_MAX]; + struct device *sen_dev; + struct device *mcu_device; + struct device *acc_device; + struct device *gyro_device; + struct device *mag_device; + struct device *prs_device; + struct device *prox_device; + struct device *light_device; + struct delayed_work work_firmware; + struct device *ges_device; + struct device *temphumidity_device; + struct miscdevice shtc1_device; + struct miscdevice batch_io_device; + +/*snamy.jeong@samsung.com temporary code for voice data sending to mcu*/ + struct device *voice_device; + + bool bSspShutdown; + bool bAccelAlert; + bool bProximityRawEnabled; + bool bGeomagneticRawEnabled; + bool bBarcodeEnabled; + bool bMcuDumpMode; + bool bBinaryChashed; + bool bProbeIsDone; + bool bDumping; + bool bTimeSyncing; + + unsigned int uProxCanc; + unsigned int uProxHiThresh; + unsigned int uProxLoThresh; + unsigned int uProxHiThresh_default; + unsigned int uProxLoThresh_default; + + unsigned int uIr_Current; + unsigned char uFuseRomData[3]; + char *pchLibraryBuf; + char chLcdLdi[2]; + int iIrq; + int iLibraryLength; + int aiCheckStatus[SENSOR_MAX]; + + unsigned int uIrqFailCnt; + unsigned int uSsdFailCnt; + unsigned int uResetCnt; + unsigned int uInstFailCnt; + unsigned int uTimeOutCnt; + unsigned int uIrqCnt; + unsigned int uBusyCnt; + unsigned int uMissSensorCnt; + unsigned int uSanityCnt; + unsigned int uDumpCnt; + + unsigned int uGyroDps; + unsigned int uSensorState; + unsigned int uCurFirmRev; + unsigned int uFactoryProxAvg[4]; + char uLastResumeState; + char uLastAPState; + s32 iPressureCal; + u64 step_count_total; + atomic_t aSensorEnable; + int64_t adDelayBuf[SENSOR_MAX]; + u64 lastTimestamp[SENSOR_MAX]; + s32 batchLatencyBuf[SENSOR_MAX]; + s8 batchOptBuf[SENSOR_MAX]; + bool reportedData[SENSOR_MAX]; + + int (*wakeup_mcu)(void); + int (*check_mcu_ready)(void); + int (*check_mcu_busy)(void); + int (*set_mcu_reset)(int); + int (*read_chg)(void); + void (*get_sensor_data[SENSOR_MAX])(char *, int *, + struct sensor_value *); + void (*report_sensor_data[SENSOR_MAX])(struct ssp_data *, + struct sensor_value *); + +#ifdef CONFIG_HAS_EARLYSUSPEND + struct early_suspend early_suspend; +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + struct ssp_sensorhub_data *hub_data; +#endif + int ap_rev; + int ssp_changes; + int accel_position; + int mag_position; + int rot_direction; + int fw_dl_state; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + char *comp_engine_ver; + char *comp_engine_ver2; + struct mutex cp_temp_adc_lock; +#endif + struct mutex bulk_temp_read_lock; + struct shtc1_buffer* bulk_buffer; + struct mutex comm_mutex; + struct mutex pending_mutex; + + int mcu_int1; + int mcu_int2; + int ap_int; + int rst; + int chg; + int sns_combination; + struct regulator *reg_hub; + struct regulator *reg_sns; + + struct list_head pending_list; + void (*ssp_big_task[BIG_TYPE_MAX])(struct work_struct *); + u64 timestamp; +}; + +struct ssp_big { + struct ssp_data* data; + struct work_struct work; + u32 length; + u32 addr; +}; + +int ssp_iio_configure_ring(struct iio_dev *); +void ssp_iio_unconfigure_ring(struct iio_dev *); +int ssp_iio_probe_trigger(struct ssp_data *, struct iio_dev *, struct iio_trigger *); +void ssp_iio_remove_trigger(struct iio_trigger *); +void ssp_enable(struct ssp_data *, bool); +int waiting_init_mcu(struct ssp_data *); +int waiting_wakeup_mcu(struct ssp_data *); +int ssp_i2c_read(struct ssp_data *, char *, u16, char *, u16, int); +int ssp_spi_async(struct ssp_data *, struct ssp_msg *); +int ssp_spi_sync(struct ssp_data *, struct ssp_msg *, int); +void clean_pending_list(struct ssp_data *); +void toggle_mcu_reset(struct ssp_data *); +int initialize_mcu(struct ssp_data *); +int initialize_input_dev(struct ssp_data *); +int initialize_sysfs(struct ssp_data *); +void initialize_accel_factorytest(struct ssp_data *); +void initialize_prox_factorytest(struct ssp_data *); +void initialize_light_factorytest(struct ssp_data *); +void initialize_gyro_factorytest(struct ssp_data *); +void initialize_pressure_factorytest(struct ssp_data *); +void initialize_magnetic_factorytest(struct ssp_data *); +void initialize_function_pointer(struct ssp_data *); +void initialize_magnetic(struct ssp_data *); +void initialize_gesture_factorytest(struct ssp_data *data); +void initialize_temphumidity_factorytest(struct ssp_data *data); +void remove_accel_factorytest(struct ssp_data *); +void remove_gyro_factorytest(struct ssp_data *); +void remove_prox_factorytest(struct ssp_data *); +void remove_light_factorytest(struct ssp_data *); +void remove_pressure_factorytest(struct ssp_data *); +void remove_magnetic_factorytest(struct ssp_data *); +void remove_gesture_factorytest(struct ssp_data *data); +void remove_temphumidity_factorytest(struct ssp_data *data); +void destroy_sensor_class(void); +int initialize_event_symlink(struct ssp_data *); +int sensors_create_symlink(struct kobject *target, + const char *name); +int accel_open_calibration(struct ssp_data *); +int gyro_open_calibration(struct ssp_data *); +int pressure_open_calibration(struct ssp_data *); +int proximity_open_calibration(struct ssp_data *); +int check_fwbl(struct ssp_data *); +void remove_input_dev(struct ssp_data *); +void remove_sysfs(struct ssp_data *); +void remove_event_symlink(struct ssp_data *); +int ssp_send_cmd(struct ssp_data *, char, int); +int send_instruction(struct ssp_data *, u8, u8, u8 *, u8); +int send_instruction_sync(struct ssp_data *, u8, u8, u8 *, u8); +int flush(struct ssp_data *, u8); +int get_batch_count(struct ssp_data *, u8); +int select_irq_msg(struct ssp_data *); +int get_chipid(struct ssp_data *); +int get_fuserom_data(struct ssp_data *); +int set_big_data_start(struct ssp_data *, u8 , u32); +int mag_open_hwoffset(struct ssp_data *); +int mag_store_hwoffset(struct ssp_data *); +int set_hw_offset(struct ssp_data *); +int get_hw_offset(struct ssp_data *); +int set_gyro_cal(struct ssp_data *); +int set_accel_cal(struct ssp_data *); +#if defined (CONFIG_SENSORS_SSP_YAS532) +int set_static_matrix(struct ssp_data *data); +#endif +int set_sensor_position(struct ssp_data *); +#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) +int set_sensor_tilt(struct ssp_data *); +#endif +int sanity_check(struct ssp_data *data); +void sync_sensor_state(struct ssp_data *); +void set_proximity_threshold(struct ssp_data *, unsigned int, unsigned int); +void set_proximity_barcode_enable(struct ssp_data *, bool); +void set_gesture_current(struct ssp_data *, unsigned char); +int get_msdelay(int64_t); +unsigned int get_sensor_scanning_info(struct ssp_data *); +unsigned int get_firmware_rev(struct ssp_data *); +int forced_to_download_binary(struct ssp_data *, int); +int parse_dataframe(struct ssp_data *, char *, int); +void enable_debug_timer(struct ssp_data *); +void disable_debug_timer(struct ssp_data *); +int initialize_debug_timer(struct ssp_data *); +int proximity_open_lcd_ldi(struct ssp_data *); +void report_meta_data(struct ssp_data *, struct sensor_value *); +void report_acc_data(struct ssp_data *, struct sensor_value *); +void report_gyro_data(struct ssp_data *, struct sensor_value *); +void report_mag_data(struct ssp_data *, struct sensor_value *); +void report_uncalib_mag_data(struct ssp_data *, struct sensor_value *); +void report_rot_data(struct ssp_data *, struct sensor_value *); +void report_game_rot_data(struct ssp_data *, struct sensor_value *); +void report_step_det_data(struct ssp_data *, struct sensor_value *); +void report_gesture_data(struct ssp_data *, struct sensor_value *); +void report_pressure_data(struct ssp_data *, struct sensor_value *); +void report_light_data(struct ssp_data *, struct sensor_value *); +void report_prox_data(struct ssp_data *, struct sensor_value *); +void report_prox_raw_data(struct ssp_data *, struct sensor_value *); +void report_geomagnetic_raw_data(struct ssp_data *, struct sensor_value *); +void report_sig_motion_data(struct ssp_data *, struct sensor_value *); +void report_uncalib_gyro_data(struct ssp_data *, struct sensor_value *); +void report_step_cnt_data(struct ssp_data *, struct sensor_value *); +int print_mcu_debug(char *, int *, int); +void report_temp_humidity_data(struct ssp_data *, struct sensor_value *); +void report_bulk_comp_data(struct ssp_data *data); +unsigned int get_module_rev(struct ssp_data *data); +void reset_mcu(struct ssp_data *); +void convert_acc_data(s16 *); +int sensors_register(struct device *, void *, + struct device_attribute*[], char *); +void sensors_unregister(struct device *, + struct device_attribute*[]); +ssize_t mcu_reset_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_dump_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_revision_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_update_ums_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_crashed_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_factorytest_store(struct device *, struct device_attribute *, + const char *, size_t); +ssize_t mcu_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_model_name_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_store(struct device *, + struct device_attribute *, const char *, size_t); +ssize_t mpu6500_gyro_selftest(char *, struct ssp_data *); +ssize_t k330_gyro_selftest(char *, struct ssp_data *); + +void ssp_dump_task(struct work_struct *work); +void ssp_read_big_library_task(struct work_struct *work); +void ssp_send_big_library_task(struct work_struct *work); +void ssp_pcm_dump_task(struct work_struct *work); +void ssp_temp_task(struct work_struct *work); +int set_time(struct ssp_data *); +int get_time(struct ssp_data *); + +#if defined (CONFIG_MACH_VIKALCU) +void proximity_ldo_enable(int onoff); +#endif +#endif diff --git a/drivers/sensorhub/stm32f/ssp_data.c b/drivers/sensorhub/stm32f/ssp_data.c index d75038f17bdf..d676bb1cef5f 100755 --- a/drivers/sensorhub/stm32f/ssp_data.c +++ b/drivers/sensorhub/stm32f/ssp_data.c @@ -1,275 +1,368 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" - -/* SSP -> AP Instruction */ -#define MSG2AP_INST_BYPASS_DATA 0x37 -#define MSG2AP_INST_LIBRARY_DATA 0x01 -#define MSG2AP_INST_DEBUG_DATA 0x03 -#define MSG2AP_INST_BIG_DATA 0x04 -#define MSG2AP_INST_META_DATA 0x05 -#define MSG2AP_INST_TIME_SYNC 0x06 - -/*************************************************************************/ -/* SSP parsing the dataframe */ -/*************************************************************************/ - -static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, - int *iDataIdx, struct sensor_value *sensorsdata) { - s32 otimestamp = 0; - s64 ctimestamp = 0; - - memcpy(&otimestamp, pchRcvDataFrame + *iDataIdx, 4); - *iDataIdx += 4; - - ctimestamp = (s64) otimestamp * 1000000; - sensorsdata->timestamp = data->timestamp + ctimestamp; -} - -static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); - *iDataIdx += 6; -} - -static void get_geomagnetic_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); - *iDataIdx += 7; -} - -static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); - *iDataIdx += 12; -} - -static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); - *iDataIdx += 17; -} - -static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); - *iDataIdx += 1; -} - -static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - -#if defined (CONFIG_SENSORS_SSP_MAX88921) - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); - *iDataIdx += 12; -#else - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); - *iDataIdx += 8; -#endif - -} - -static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - s16 temperature = 0; - memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); - memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); - sensorsdata->pressure[1] = temperature; - *iDataIdx += 6; -} - -static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 38); - *iDataIdx += 38; -} - -static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memset(&sensorsdata->prox[0], 0, 2); - memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); - memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 2); - *iDataIdx += 3; -} - -static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); - *iDataIdx += 2; -} - -static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); - *iDataIdx += 6; -} - -static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memset(&sensorsdata->data[2], 0, 2); - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); - *iDataIdx += 5; -} - -static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); - *iDataIdx += 1; -} - -static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, - struct sensor_value *sensorsdata) -{ - memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); - *iDataIdx += 4; -} - -int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { - u8 bigType = 0; - struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); - big->data = data; - bigType = pchRcvDataFrame[(*pDataIdx)++]; - memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); - *pDataIdx += 4; - memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); - *pDataIdx += 4; - - if (bigType >= BIG_TYPE_MAX) { - kfree(big); - return FAIL; - } - - INIT_WORK(&big->work, data->ssp_big_task[bigType] ); - queue_work(data->debug_wq, &big->work); - return SUCCESS; -} - -int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { - int iDataIdx, iSensorData; - u16 length = 0; - struct sensor_value sensorsdata; - struct timespec ts; - - getnstimeofday(&ts); - - for (iDataIdx = 0; iDataIdx < iLength;) { - switch (pchRcvDataFrame[iDataIdx++]) { - case MSG2AP_INST_BYPASS_DATA: - iSensorData = pchRcvDataFrame[iDataIdx++]; - if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { - pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, - iSensorData); - return ERROR; - } - data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, - &sensorsdata); - get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata); - data->report_sensor_data[iSensorData](data, &sensorsdata); - break; - case MSG2AP_INST_DEBUG_DATA: - iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); - if (iSensorData) { - pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, - iSensorData); - return ERROR; - } - break; - case MSG2AP_INST_LIBRARY_DATA: - memcpy(&length, pchRcvDataFrame + iDataIdx, 2); - iDataIdx += 2; - ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, - iDataIdx + length); - iDataIdx += length; - break; - case MSG2AP_INST_BIG_DATA: - handle_big_data(data, pchRcvDataFrame, &iDataIdx); - break; - case MSG2AP_INST_META_DATA: - sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; - sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; - report_meta_data(data, &sensorsdata); - break; - case MSG2AP_INST_TIME_SYNC: - data->bTimeSyncing = true; - break; - } - } - - if (data->bTimeSyncing) - data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; - - return SUCCESS; -} - -void initialize_function_pointer(struct ssp_data *data) -{ - data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; - data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; - data->get_sensor_data[GEOMAGNETIC_SENSOR] = get_geomagnetic_sensordata; - data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = get_uncalib_sensordata; - data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; - data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; - data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; - data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; - data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; - data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = - get_temp_humidity_sensordata; - data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; - data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; - data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; - data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; - data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; - data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; - data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; - - data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; - data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; - data->report_sensor_data[GEOMAGNETIC_SENSOR] = report_mag_data; - data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = report_uncalib_mag_data; - data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; - data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; - data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; - data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; - data->report_sensor_data[LIGHT_SENSOR] = report_light_data; - data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = - report_temp_humidity_data; - data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; - data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; - data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; - data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; - data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; - data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; - data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; - - data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; - data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; - data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; - data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include +#include + +/* SSP -> AP Instruction */ +#define MSG2AP_INST_BYPASS_DATA 0x37 +#define MSG2AP_INST_LIBRARY_DATA 0x01 +#define MSG2AP_INST_DEBUG_DATA 0x03 +#define MSG2AP_INST_BIG_DATA 0x04 +#define MSG2AP_INST_META_DATA 0x05 +#define MSG2AP_INST_TIME_SYNC 0x06 + +/*************************************************************************/ +/* SSP parsing the dataframe */ +/*************************************************************************/ + +static void generate_data(struct ssp_data *data, struct sensor_value *sensorsdata, + int iSensorData, u64 timestamp) +{ + u64 move_timestamp = data->lastTimestamp[iSensorData]; + while ((move_timestamp * 10 + data->adDelayBuf[iSensorData] * 15) < (timestamp * 10)) { + move_timestamp += data->adDelayBuf[iSensorData]; + sensorsdata->timestamp = move_timestamp; + data->report_sensor_data[iSensorData](data, sensorsdata); + } +} + +static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, + int *iDataIdx, struct sensor_value *sensorsdata, + struct ssp_time_diff *sensortime, int iSensorData) +{ + if (sensortime->batch_mode == BATCH_MODE_RUN) { + if (sensortime->batch_count == sensortime->batch_count_fixed) { + if (sensortime->time_diff == data->adDelayBuf[iSensorData]) { + generate_data(data, sensorsdata, iSensorData, + (data->timestamp - data->adDelayBuf[iSensorData] * (sensortime->batch_count_fixed - 1))); + } + sensorsdata->timestamp = data->timestamp - ((sensortime->batch_count - 1) * sensortime->time_diff); + } else { + if (sensortime->batch_count > 1) + sensorsdata->timestamp = data->timestamp - ((sensortime->batch_count - 1) * sensortime->time_diff); + else + sensorsdata->timestamp = data->timestamp; + } + } else { + if (((sensortime->irq_diff * 10) > (data->adDelayBuf[iSensorData] * 18)) + && ((sensortime->irq_diff * 10) < (data->adDelayBuf[iSensorData] * 100))) { + generate_data(data, sensorsdata, iSensorData, data->timestamp); + } + sensorsdata->timestamp = data->timestamp; + } + *iDataIdx += 4; +} + +static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_geomagnetic_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); + *iDataIdx += 7; +} + +static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); + *iDataIdx += 17; +} + +static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + +#if defined (CONFIG_SENSORS_SSP_MAX88921) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); + *iDataIdx += 8; +#endif + +} + +static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + s16 temperature = 0; + memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); + memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); + sensorsdata->pressure[1] = temperature; + *iDataIdx += 6; +} + +static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined (CONFIG_SENSORS_SSP_MAX88920) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 18); + *iDataIdx += 18; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 38); + *iDataIdx += 38; +#endif +} + +static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->prox[0], 0, 2); +#if defined (CONFIG_SENSORS_SSP_MAX88920) + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + //memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 1); + *iDataIdx += 2; +#else + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 2); + *iDataIdx += 3; +#endif +} + +static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined (CONFIG_SENSORS_SSP_MAX88920) + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +#else + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + *iDataIdx += 2; +#endif +} + +static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->data[2], 0, 2); + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); + *iDataIdx += 5; +} + +static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; +} + +int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { + u8 bigType = 0; + struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); + big->data = data; + bigType = pchRcvDataFrame[(*pDataIdx)++]; + memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + + if (bigType >= BIG_TYPE_MAX) { + kfree(big); + return FAIL; + } + + INIT_WORK(&big->work, data->ssp_big_task[bigType] ); + queue_work(data->debug_wq, &big->work); + return SUCCESS; +} + +int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { + int iDataIdx, iSensorData; + u16 length = 0; + struct sensor_value sensorsdata; + struct ssp_time_diff sensortime; + + for (iDataIdx = 0; iDataIdx < iLength;) { + switch (pchRcvDataFrame[iDataIdx++]) { + case MSG2AP_INST_BYPASS_DATA: + iSensorData = pchRcvDataFrame[iDataIdx++]; + if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { + pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, + iSensorData); + return ERROR; + } + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + sensortime.batch_count = sensortime.batch_count_fixed = length; + sensortime.batch_mode = length > 1 ? BATCH_MODE_RUN : BATCH_MODE_NONE; + sensortime.irq_diff = data->timestamp - data->lastTimestamp[iSensorData]; + + if (sensortime.batch_mode == BATCH_MODE_RUN) { + if (data->reportedData[iSensorData] == true) { + u64 time; + sensortime.time_diff = div64_long((s64)(data->timestamp - data->lastTimestamp[iSensorData]), (s64)length); + if (length > 8) + time = data->adDelayBuf[iSensorData] * 18; + else if (length > 4) + time = data->adDelayBuf[iSensorData] * 25; + else if (length > 2) + time = data->adDelayBuf[iSensorData] * 50; + else + time = data->adDelayBuf[iSensorData] * 100; + if ((sensortime.time_diff * 10) > time) { + data->lastTimestamp[iSensorData] = data->timestamp - (data->adDelayBuf[iSensorData] * length); + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } else { + time = data->adDelayBuf[iSensorData] * 18; + if ((sensortime.time_diff * 10) > time) + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } + } else { + if (data->lastTimestamp[iSensorData] < (data->timestamp - (data->adDelayBuf[iSensorData] * length))) { + data->lastTimestamp[iSensorData] = data->timestamp - (data->adDelayBuf[iSensorData] * length); + sensortime.time_diff = data->adDelayBuf[iSensorData]; + } else + sensortime.time_diff = div64_long((s64)(data->timestamp - data->lastTimestamp[iSensorData]), (s64)length); + } + } else { + if (data->reportedData[iSensorData] == false) + sensortime.irq_diff = data->adDelayBuf[iSensorData]; + } + + do { + data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, + &sensorsdata); + + get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata, &sensortime, iSensorData); + if (sensortime.irq_diff > 1000000) + data->report_sensor_data[iSensorData](data, &sensorsdata); + else if ((iSensorData == PROXIMITY_SENSOR) || (iSensorData == PROXIMITY_RAW) + || (iSensorData == GESTURE_SENSOR) || (iSensorData == SIG_MOTION_SENSOR)) + data->report_sensor_data[iSensorData](data, &sensorsdata); + else + pr_err("[SSP]: %s irq_diff is under 1msec (%d)\n", __func__, iSensorData); + sensortime.batch_count--; + } while ((sensortime.batch_count > 0) && (iDataIdx < iLength)); + + if (sensortime.batch_count > 0) + pr_err("[SSP]: %s batch count error (%d)\n", __func__, sensortime.batch_count); + + data->lastTimestamp[iSensorData] = data->timestamp; + data->reportedData[iSensorData] = true; + break; + case MSG2AP_INST_DEBUG_DATA: + iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); + if (iSensorData) { + pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, + iSensorData); + return ERROR; + } + break; + case MSG2AP_INST_LIBRARY_DATA: + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, + iDataIdx + length); + iDataIdx += length; + break; + case MSG2AP_INST_BIG_DATA: + handle_big_data(data, pchRcvDataFrame, &iDataIdx); + break; + case MSG2AP_INST_META_DATA: + sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; + sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; + report_meta_data(data, &sensorsdata); + break; + case MSG2AP_INST_TIME_SYNC: + data->bTimeSyncing = true; + break; + } + } + + return SUCCESS; +} + +void initialize_function_pointer(struct ssp_data *data) +{ + data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GEOMAGNETIC_SENSOR] = get_geomagnetic_sensordata; + data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = get_uncalib_sensordata; + data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; + data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; + data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; + data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; + data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; + data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + get_temp_humidity_sensordata; + data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; + data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; + data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; + data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; + data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; + + data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; + data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; + data->report_sensor_data[GEOMAGNETIC_SENSOR] = report_mag_data; + data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = report_uncalib_mag_data; + data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; + data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; + data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; + data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; + data->report_sensor_data[LIGHT_SENSOR] = report_light_data; + data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + report_temp_humidity_data; + data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; + data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; + data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; + data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; + data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; + data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; + data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; + + data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; + data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; + data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; +} diff --git a/drivers/sensorhub/stm32f/ssp_debug.c b/drivers/sensorhub/stm32f/ssp_debug.c index 236e01b27d8b..af356f4ca5c1 100755 --- a/drivers/sensorhub/stm32f/ssp_debug.c +++ b/drivers/sensorhub/stm32f/ssp_debug.c @@ -414,12 +414,6 @@ static void debug_work_func(struct work_struct *work) || data->batchLatencyBuf[uSensorCnt]) print_sensordata(data, uSensorCnt); - if ((atomic_read(&data->aSensorEnable) & SSP_BYPASS_SENSORS_EN_ALL)\ - && (data->uIrqCnt == 0)) - data->uIrqFailCnt++; - else - data->uIrqFailCnt = 0; - if (((data->uSsdFailCnt >= LIMIT_SSD_FAIL_CNT) || (data->uInstFailCnt >= LIMIT_INSTRUCTION_FAIL_CNT) || (data->uIrqFailCnt >= LIMIT_IRQ_FAIL_CNT) diff --git a/drivers/sensorhub/stm32f/ssp_dev.c b/drivers/sensorhub/stm32f/ssp_dev.c index ac8c06cb547e..4246e8ad4da1 100755 --- a/drivers/sensorhub/stm32f/ssp_dev.c +++ b/drivers/sensorhub/stm32f/ssp_dev.c @@ -1,707 +1,714 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" -#ifdef CONFIG_OF -#include -#endif -#include - - -#ifdef CONFIG_HAS_EARLYSUSPEND -static void ssp_early_suspend(struct early_suspend *handler); -static void ssp_late_resume(struct early_suspend *handler); -#endif - -void ssp_enable(struct ssp_data *data, bool enable) -{ - pr_info("[SSP] %s, enable = %d, old enable = %d\n", - __func__, enable, data->bSspShutdown); - - if (enable && data->bSspShutdown) { - data->bSspShutdown = false; - enable_irq(data->iIrq); - enable_irq_wake(data->iIrq); - } else if (!enable && !data->bSspShutdown) { - data->bSspShutdown = true; - disable_irq(data->iIrq); - disable_irq_wake(data->iIrq); - } else - pr_err("%s, enable error\n", __func__); -} -/************************************************************************/ -/* interrupt happened due to transition/change of SSP MCU */ -/************************************************************************/ - -static irqreturn_t sensordata_irq_thread_fn(int iIrq, void *dev_id) -{ - struct ssp_data *data = dev_id; - if(gpio_get_value(data->mcu_int1)) { - pr_info("[SSP] MCU int HIGH"); - return IRQ_HANDLED; - } - - select_irq_msg(data); - data->uIrqCnt++; - - return IRQ_HANDLED; -} - -/*************************************************************************/ -/* initialize sensor hub */ -/*************************************************************************/ - -static void initialize_variable(struct ssp_data *data) -{ - int iSensorIndex; - - for (iSensorIndex = 0; iSensorIndex < SENSOR_MAX; iSensorIndex++) { - data->adDelayBuf[iSensorIndex] = DEFUALT_POLLING_DELAY; - data->batchLatencyBuf[iSensorIndex] = 0; - data->batchOptBuf[iSensorIndex] = 0; - data->aiCheckStatus[iSensorIndex] = INITIALIZATION_STATE; - } - - atomic_set(&data->aSensorEnable, 0); - data->iLibraryLength = 0; - data->uSensorState = 0; - data->uFactoryProxAvg[0] = 0; - - data->uResetCnt = 0; - data->uInstFailCnt = 0; - data->uTimeOutCnt = 0; - data->uSsdFailCnt = 0; - data->uBusyCnt = 0; - data->uIrqCnt = 0; - data->uIrqFailCnt = 0; - data->uMissSensorCnt = 0; - - data->bSspShutdown = true; - data->bProximityRawEnabled = false; - data->bGeomagneticRawEnabled = false; - data->bBarcodeEnabled = false; - data->bAccelAlert = false; - data->bTimeSyncing = true; - - data->accelcal.x = 0; - data->accelcal.y = 0; - data->accelcal.z = 0; - - data->gyrocal.x = 0; - data->gyrocal.y = 0; - data->gyrocal.z = 0; - - data->magoffset.x = 0; - data->magoffset.y = 0; - data->magoffset.z = 0; - - data->iPressureCal = 0; - data->uProxCanc = 0; - data->uProxHiThresh = 0; - data->uProxLoThresh = 0; - data->uGyroDps = GYROSCOPE_DPS500; - data->uIr_Current = 0; - - data->mcu_device = NULL; - data->acc_device = NULL; - data->gyro_device = NULL; - data->mag_device = NULL; - data->prs_device = NULL; - data->prox_device = NULL; - data->light_device = NULL; - data->ges_device = NULL; - - data->voice_device = NULL; - data->bMcuDumpMode = sec_debug_is_enabled(); - INIT_LIST_HEAD(&data->pending_list); - - initialize_function_pointer(data); -} - -int initialize_mcu(struct ssp_data *data) -{ - int iRet = 0; - - iRet = get_chipid(data); - pr_info("[SSP] MCU device ID = %d, reading ID = %d\n", DEVICE_ID, iRet); - if (iRet != DEVICE_ID) { - if (iRet < 0) { - pr_err("[SSP]: %s - MCU is not working : 0x%x\n", - __func__, iRet); - } else { - pr_err("[SSP]: %s - MCU identification failed\n", - __func__); - iRet = -ENODEV; - } - goto out; - } - - iRet = set_sensor_position(data); - if (iRet < 0) { - pr_err("[SSP]: %s - set_sensor_position failed\n", __func__); - goto out; - } - -#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) - iRet = set_sensor_tilt(data); - if (iRet < 0) { - pr_err("[SSP]: %s - set_sensor_tilt failed\n", __func__); - goto out; - } -#endif - - data->uSensorState = get_sensor_scanning_info(data); - if (data->uSensorState == 0) { - pr_err("[SSP]: %s - get_sensor_scanning_info failed\n", - __func__); - iRet = ERROR; - goto out; - } -#if defined (CONFIG_SENSORS_SSP_YAS532) - iRet = set_static_matrix(data); - if (iRet < 0) - pr_err("[SSP]: %s - yas set static matrix failed\n", __func__); -#endif - iRet = SUCCESS; -out: - return iRet; -} - -static int initialize_irq(struct ssp_data *data) -{ - int iRet, iIrq; - iIrq = gpio_to_irq(data->mcu_int1); - - pr_info("[SSP]: requesting IRQ %d\n", iIrq); - iRet = request_threaded_irq(iIrq, NULL, sensordata_irq_thread_fn, - IRQF_TRIGGER_FALLING, "SSP_Int", data); - if (iRet < 0) { - pr_err("[SSP]: %s - request_irq(%d) failed for gpio %d (%d)\n", - __func__, iIrq, iIrq, iRet); - goto err_request_irq; - } - - /* start with interrupts disabled */ - data->iIrq = iIrq; - disable_irq(data->iIrq); - return 0; - -err_request_irq: - gpio_free(data->mcu_int1); - return iRet; -} - -static void work_function_firmware_update(struct work_struct *work) -{ - struct ssp_data *data = container_of((struct delayed_work *)work, - struct ssp_data, work_firmware); - int iRet = 0; - - pr_info("[SSP] : %s\n", __func__); - - iRet = forced_to_download_binary(data, KERNEL_BINARY); - if (iRet < 0) { - ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", - __func__); - return; - } - - data->uCurFirmRev = get_firmware_rev(data); - pr_info("[SSP] MCU Firm Rev : New = %8u\n", - data->uCurFirmRev); -} - -static int ssp_parse_dt(struct device *dev, - struct ssp_data *data) -{ - struct device_node *np = dev->of_node; - enum of_gpio_flags flags; - int errorno = 0; - - data->mcu_int1 = of_get_named_gpio_flags(np, "ssp,mcu_int1-gpio", - 0, &flags); - if (data->mcu_int1 < 0) { - errorno = data->mcu_int1; - goto dt_exit; - } - - data->mcu_int2 = of_get_named_gpio_flags(np, "ssp,mcu_int2-gpio", - 0, &flags); - if (data->mcu_int2 < 0) { - errorno = data->mcu_int2; - goto dt_exit; - } - - data->ap_int = of_get_named_gpio_flags(np, "ssp,ap_int-gpio", - 0, &flags); - if (data->ap_int < 0) { - errorno = data->ap_int; - goto dt_exit; - } - - data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", - 0, &flags); - if (data->rst < 0) { - errorno = data->rst ; - goto dt_exit; - } - - if (of_property_read_u32(np, "ssp,acc-position", &data->accel_position)) - data->accel_position = 0; - - if (of_property_read_u32(np, "ssp,mag-position", &data->mag_position)) - data->mag_position = 0; - - if (of_property_read_u32(np, "ssp,sns-combination", &data->sns_combination)) - data->sns_combination = 0; - - if (of_property_read_u32(np, "ssp,ap-rev", &data->ap_rev)) - data->ap_rev = 0; - - if (of_property_read_u32(np, "ssp,rotation-direction", &data->rot_direction)) - data->rot_direction = 0; - - errorno = gpio_request(data->mcu_int1, "mpu_ap_int1"); - if (errorno) { - printk(KERN_ERR "failed to request MCU_INT2 for SSP\n"); - goto dt_exit; - } - - errorno = gpio_direction_input(data->mcu_int1); - if (errorno) { - printk(KERN_ERR "failed to set mcu_int1 as input\n"); - goto dt_exit; - } - - errorno = gpio_request(data->mcu_int2, "MCU_INT2"); - if (errorno) { - printk(KERN_ERR "failed to request MCU_INT2 for SSP\n"); - goto dt_exit; - } - gpio_direction_input(data->mcu_int2); - - errorno = gpio_request(data->ap_int, "AP_MCU_INT"); - if (errorno) { - printk(KERN_ERR "failed to request AP_INT for SSP\n"); - goto dt_exit; - } - gpio_direction_output(data->ap_int, 1); - - errorno = gpio_request(data->rst, "MCU_RST"); - if (errorno) { - printk(KERN_ERR "failed to request MCU_RST for SSP\n"); - goto dt_exit; - } - gpio_direction_output(data->rst, 1); - - data->reg_hub = devm_regulator_get(dev, "hub_vreg"); - if (IS_ERR(data->reg_hub)) { - pr_err("[SSP] could not get hub_vreg, %ld\n", - PTR_ERR(data->reg_hub)); - } else { - regulator_enable(data->reg_hub); - } - - data->reg_sns= devm_regulator_get(dev, "psns_vreg"); - if (IS_ERR(data->reg_hub)) { - pr_err("[SSP] could not get psns_vreg, %ld\n", - PTR_ERR(data->reg_sns)); - } else { - regulator_enable(data->reg_sns); - } - -dt_exit: - return errorno; -} - - -static int ssp_probe(struct spi_device *spi_dev) -{ - int iRet = 0; - struct ssp_data *data; - struct ssp_platform_data *pdata; - - if (poweroff_charging == 1) { - pr_err("[SSP] probe exit : lpm %d\n", poweroff_charging); - return -ENODEV; - } - - data = kzalloc(sizeof(*data), GFP_KERNEL); - if (data == NULL) { - pr_err("[SSP]: %s - failed to allocate memory for data\n", - __func__); - iRet = -ENOMEM; - goto exit; - } - -#if defined (CONFIG_MACH_VIKALCU) - proximity_ldo_enable(1); -#endif - - if (spi_dev->dev.of_node) { - iRet = ssp_parse_dt(&spi_dev->dev, data); - if (iRet) { - pr_err("[SSP]: %s - Failed to parse DT\n", __func__); - goto err_setup; - } - data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ - } else { - pdata = spi_dev->dev.platform_data; - if (pdata == NULL) { - pr_err("[SSP]: %s - platform_data is null\n", __func__); - iRet = -ENOMEM; - goto err_setup; - } - data->wakeup_mcu = pdata->wakeup_mcu; - data->check_mcu_ready = pdata->check_mcu_ready; - data->check_mcu_busy = pdata->check_mcu_busy; - data->set_mcu_reset = pdata->set_mcu_reset; - data->read_chg = pdata->read_chg; - - /* AP system_rev */ - if (pdata->check_ap_rev) - data->ap_rev = pdata->check_ap_rev(); - else - data->ap_rev = 0; - /* For changed devices */ - if (pdata->check_changes) - data->ssp_changes = pdata->check_changes(); - else - data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ - - /* Get sensor positions */ - if (pdata->get_positions) - pdata->get_positions(&data->accel_position, - &data->mag_position); - else if (spi_dev->dev.of_node == NULL) { - data->accel_position = 0; - data->mag_position = 0; - } - - } - spi_dev->mode = SPI_MODE_1; - if (spi_setup(spi_dev)) { - pr_err("failed to setup spi for ssp_spi\n"); - goto err_setup; - } - - data->bProbeIsDone = false; - data->fw_dl_state = FW_DL_STATE_NONE; - data->spi = spi_dev; - spi_set_drvdata(spi_dev, data); - -#ifdef CONFIG_SENSORS_SSP_SHTC1 - mutex_init(&data->cp_temp_adc_lock); - mutex_init(&data->bulk_temp_read_lock); -#endif - mutex_init(&data->comm_mutex); - mutex_init(&data->pending_mutex); - - if (((data->wakeup_mcu == NULL) - || (data->check_mcu_ready == NULL) - || (data->check_mcu_busy == NULL) - || (data->set_mcu_reset == NULL) - || (data->read_chg == NULL)) - && (spi_dev->dev.of_node == NULL)) { - pr_err("[SSP]: %s - function callback is null\n", __func__); - iRet = -EIO; - goto err_reset_null; - } - - pr_info("\n#####################################################\n"); - - INIT_DELAYED_WORK(&data->work_firmware, work_function_firmware_update); - - wake_lock_init(&data->ssp_wake_lock, - WAKE_LOCK_SUSPEND, "ssp_wake_lock"); - - iRet = initialize_input_dev(data); - if (iRet < 0) { - pr_err("[SSP]: %s - could not create input device\n", __func__); - goto err_input_register_device; - } - - iRet = initialize_debug_timer(data); - if (iRet < 0) { - pr_err("[SSP]: %s - could not create workqueue\n", __func__); - goto err_create_workqueue; - } - - iRet = initialize_irq(data); - if (iRet < 0) { - pr_err("[SSP]: %s - could not create irq\n", __func__); - goto err_setup_irq; - } - - iRet = initialize_sysfs(data); - if (iRet < 0) { - pr_err("[SSP]: %s - could not create sysfs\n", __func__); - goto err_sysfs_create; - } - - iRet = initialize_event_symlink(data); - if (iRet < 0) { - pr_err("[SSP]: %s - could not create symlink\n", __func__); - goto err_symlink_create; - } - - initialize_variable(data); - - ssp_enable(data, true); - /* check boot loader binary */ - data->fw_dl_state = check_fwbl(data); - - if (data->fw_dl_state == FW_DL_STATE_NONE) { - iRet = initialize_mcu(data); - if (iRet == ERROR) { - data->uResetCnt++; - toggle_mcu_reset(data); - msleep(SSP_SW_RESET_TIME); - initialize_mcu(data); - } else if (iRet < ERROR) { - pr_err("[SSP]: %s - initialize_mcu failed\n", __func__); - goto err_read_reg; - } - } - -#ifdef CONFIG_HAS_EARLYSUSPEND - data->early_suspend.suspend = ssp_early_suspend; - data->early_suspend.resume = ssp_late_resume; - register_early_suspend(&data->early_suspend); -#endif - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - /* init sensorhub device */ - iRet = ssp_sensorhub_initialize(data); - if (iRet < 0) { - pr_err("%s: ssp_sensorhub_initialize err(%d)", __func__, iRet); - ssp_sensorhub_remove(data); - } -#endif - - data->bMcuDumpMode = sec_debug_is_enabled(); - pr_info("[SSP]: %s - setup debuglevel %d!\n", __func__,data->bMcuDumpMode); - - pr_info("[SSP]: %s - probe success!\n", __func__); - - enable_debug_timer(data); - - iRet = 0; - if (data->fw_dl_state == FW_DL_STATE_NEED_TO_SCHEDULE) { - pr_info("[SSP]: Firmware update is scheduled\n"); - schedule_delayed_work(&data->work_firmware, - msecs_to_jiffies(1000)); - data->fw_dl_state = FW_DL_STATE_SCHEDULED; - } else if (data->fw_dl_state == FW_DL_STATE_FAIL) - data->bSspShutdown = true; - data->bProbeIsDone = true; - - goto exit; - -err_read_reg: -err_symlink_create: - remove_sysfs(data); -err_sysfs_create: - free_irq(data->iIrq, data); - gpio_free(data->mcu_int1); -err_setup_irq: - destroy_workqueue(data->debug_wq); -err_create_workqueue: - remove_input_dev(data); -err_input_register_device: - wake_lock_destroy(&data->ssp_wake_lock); -err_reset_null: -#ifdef CONFIG_SENSORS_SSP_SHTC1 - mutex_destroy(&data->cp_temp_adc_lock); - mutex_destroy(&data->bulk_temp_read_lock); -#endif - mutex_destroy(&data->comm_mutex); - mutex_destroy(&data->pending_mutex); - -err_setup: - kfree(data); - pr_err("[SSP]: %s - probe failed!\n", __func__); -exit: - pr_info("#####################################################\n\n"); - return iRet; -} - -static void ssp_shutdown(struct spi_device *spi_dev) -{ - struct ssp_data *data = spi_get_drvdata(spi_dev); - - func_dbg(); - if (data->bProbeIsDone == false) - goto exit; - - if (data->fw_dl_state >= FW_DL_STATE_SCHEDULED && - data->fw_dl_state < FW_DL_STATE_DONE) { - pr_err("%s, cancel_delayed_work_sync state = %d\n", - __func__, data->fw_dl_state); - cancel_delayed_work_sync(&data->work_firmware); - } - - ssp_enable(data, false); - clean_pending_list(data); - -#ifdef CONFIG_HAS_EARLYSUSPEND - unregister_early_suspend(&data->early_suspend); -#endif - - disable_debug_timer(data); - - free_irq(data->iIrq, data); - gpio_free(data->mcu_int1); - - remove_event_symlink(data); - remove_sysfs(data); - remove_input_dev(data); - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - ssp_sensorhub_remove(data); -#endif - - del_timer_sync(&data->debug_timer); - cancel_work_sync(&data->work_debug); - destroy_workqueue(data->debug_wq); - wake_lock_destroy(&data->ssp_wake_lock); -#ifdef CONFIG_SENSORS_SSP_SHTC1 - mutex_destroy(&data->cp_temp_adc_lock); - mutex_destroy(&data->bulk_temp_read_lock); -#endif - mutex_destroy(&data->comm_mutex); - mutex_destroy(&data->pending_mutex); -#if defined(CONFIG_MACH_VIKALCU) - proximity_ldo_enable(0); -#endif - toggle_mcu_reset(data); -/* gpio_set_value_cansleep(data->rst, 0); */ - pr_info("[SSP]: %s done\n", __func__); -exit: - kfree(data); -} - -#ifdef CONFIG_HAS_EARLYSUSPEND -static void ssp_early_suspend(struct early_suspend *handler) -{ - struct ssp_data *data; - data = container_of(handler, struct ssp_data, early_suspend); - - func_dbg(); - disable_debug_timer(data); - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - /* give notice to user that AP goes to sleep */ - ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_SLEEP); - ssp_sleep_mode(data); - data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; -#else - if (atomic_read(&data->aSensorEnable) > 0) - ssp_sleep_mode(data); -#endif -} - -static void ssp_late_resume(struct early_suspend *handler) -{ - struct ssp_data *data; - data = container_of(handler, struct ssp_data, early_suspend); - - func_dbg(); - enable_debug_timer(data); - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - /* give notice to user that AP goes to sleep */ - ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_WAKEUP); - ssp_resume_mode(data); - data->uLastAPState = MSG2SSP_AP_STATUS_WAKEUP; -#else - if (atomic_read(&data->aSensorEnable) > 0) - ssp_resume_mode(data); -#endif -} - -#else /* CONFIG_HAS_EARLYSUSPEND */ - -static int ssp_suspend(struct device *dev) -{ - struct spi_device *spi_dev = to_spi_device(dev); - struct ssp_data *data = spi_get_drvdata(spi_dev); - - func_dbg(); - data->uLastResumeState = MSG2SSP_AP_STATUS_SUSPEND; - disable_debug_timer(data); - - if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SUSPEND, 0)) - pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SUSPEND failed\n", - __func__); - data->bTimeSyncing = false; - disable_irq(data->iIrq); - return 0; -} - -static int ssp_resume(struct device *dev) -{ - struct spi_device *spi_dev = to_spi_device(dev); - struct ssp_data *data = spi_get_drvdata(spi_dev); - enable_irq(data->iIrq); - func_dbg(); - enable_debug_timer(data); - - if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_RESUME, 0)) - pr_err("[SSP]: %s MSG2SSP_AP_STATUS_RESUME failed\n", - __func__); - data->uLastResumeState = MSG2SSP_AP_STATUS_RESUME; - - return 0; -} - -static const struct dev_pm_ops ssp_pm_ops = { - .suspend = ssp_suspend, - .resume = ssp_resume -}; -#endif /* CONFIG_HAS_EARLYSUSPEND */ - -static const struct spi_device_id ssp_id[] = { - {"ssp", 0}, - {} -}; - -MODULE_DEVICE_TABLE(spi, ssp_id); -#ifdef CONFIG_OF -static struct of_device_id ssp_match_table[] = { - { .compatible = "ssp,STM32F",}, - {}, -}; -#else -#define mpu6500_match_table NULL -#endif - -static struct spi_driver ssp_driver = { - .probe = ssp_probe, - .shutdown = ssp_shutdown, - .id_table = ssp_id, - .driver = { -#ifndef CONFIG_HAS_EARLYSUSPEND - .pm = &ssp_pm_ops, -#endif - .owner = THIS_MODULE, - .name = "ssp", - .of_match_table = ssp_match_table - }, -}; - -module_spi_driver(ssp_driver); -MODULE_DESCRIPTION("ssp driver"); -MODULE_AUTHOR("Samsung Electronics"); -MODULE_LICENSE("GPL"); +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#ifdef CONFIG_OF +#include +#endif +#include + + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler); +static void ssp_late_resume(struct early_suspend *handler); +#endif + +void ssp_enable(struct ssp_data *data, bool enable) +{ + pr_info("[SSP] %s, enable = %d, old enable = %d\n", + __func__, enable, data->bSspShutdown); + + if (enable && data->bSspShutdown) { + data->bSspShutdown = false; + enable_irq(data->iIrq); + enable_irq_wake(data->iIrq); + } else if (!enable && !data->bSspShutdown) { + data->bSspShutdown = true; + disable_irq(data->iIrq); + disable_irq_wake(data->iIrq); + } else + pr_err("%s, enable error\n", __func__); +} +/************************************************************************/ +/* interrupt happened due to transition/change of SSP MCU */ +/************************************************************************/ + +static irqreturn_t sensordata_irq_thread_fn(int iIrq, void *dev_id) +{ + struct ssp_data *data = dev_id; + struct timespec ts; + + ts = ktime_to_timespec(alarm_get_elapsed_realtime()); + data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; + + if(gpio_get_value(data->mcu_int1)) { + pr_info("[SSP] MCU int HIGH"); + return IRQ_HANDLED; + } + + select_irq_msg(data); + data->uIrqCnt++; + + return IRQ_HANDLED; +} + +/*************************************************************************/ +/* initialize sensor hub */ +/*************************************************************************/ + +static void initialize_variable(struct ssp_data *data) +{ + int iSensorIndex; + + for (iSensorIndex = 0; iSensorIndex < SENSOR_MAX; iSensorIndex++) { + data->adDelayBuf[iSensorIndex] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[iSensorIndex] = 0; + data->batchOptBuf[iSensorIndex] = 0; + data->aiCheckStatus[iSensorIndex] = INITIALIZATION_STATE; + data->lastTimestamp[iSensorIndex] = 0; + data->reportedData[iSensorIndex] = false; + } + + atomic_set(&data->aSensorEnable, 0); + data->iLibraryLength = 0; + data->uSensorState = 0; + data->uFactoryProxAvg[0] = 0; + + data->uResetCnt = 0; + data->uInstFailCnt = 0; + data->uTimeOutCnt = 0; + data->uSsdFailCnt = 0; + data->uBusyCnt = 0; + data->uIrqCnt = 0; + data->uIrqFailCnt = 0; + data->uMissSensorCnt = 0; + + data->bSspShutdown = true; + data->bProximityRawEnabled = false; + data->bGeomagneticRawEnabled = false; + data->bBarcodeEnabled = false; + data->bAccelAlert = false; + data->bTimeSyncing = true; + + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + + data->magoffset.x = 0; + data->magoffset.y = 0; + data->magoffset.z = 0; + + data->iPressureCal = 0; + data->uProxCanc = 0; + data->uProxHiThresh = 0; + data->uProxLoThresh = 0; + data->uGyroDps = GYROSCOPE_DPS500; + data->uIr_Current = 0; + + data->mcu_device = NULL; + data->acc_device = NULL; + data->gyro_device = NULL; + data->mag_device = NULL; + data->prs_device = NULL; + data->prox_device = NULL; + data->light_device = NULL; + data->ges_device = NULL; + + data->voice_device = NULL; + data->bMcuDumpMode = sec_debug_is_enabled(); + INIT_LIST_HEAD(&data->pending_list); + + initialize_function_pointer(data); +} + +int initialize_mcu(struct ssp_data *data) +{ + int iRet = 0; + + iRet = get_chipid(data); + pr_info("[SSP] MCU device ID = %d, reading ID = %d\n", DEVICE_ID, iRet); + if (iRet != DEVICE_ID) { + if (iRet < 0) { + pr_err("[SSP]: %s - MCU is not working : 0x%x\n", + __func__, iRet); + } else { + pr_err("[SSP]: %s - MCU identification failed\n", + __func__); + iRet = -ENODEV; + } + goto out; + } + + iRet = set_sensor_position(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_sensor_position failed\n", __func__); + goto out; + } + +#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) + iRet = set_sensor_tilt(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_sensor_tilt failed\n", __func__); + goto out; + } +#endif + + data->uSensorState = get_sensor_scanning_info(data); + if (data->uSensorState == 0) { + pr_err("[SSP]: %s - get_sensor_scanning_info failed\n", + __func__); + iRet = ERROR; + goto out; + } +#if defined (CONFIG_SENSORS_SSP_YAS532) + iRet = set_static_matrix(data); + if (iRet < 0) + pr_err("[SSP]: %s - yas set static matrix failed\n", __func__); +#endif + iRet = SUCCESS; +out: + return iRet; +} + +static int initialize_irq(struct ssp_data *data) +{ + int iRet, iIrq; + iIrq = gpio_to_irq(data->mcu_int1); + + pr_info("[SSP]: requesting IRQ %d\n", iIrq); + iRet = request_threaded_irq(iIrq, NULL, sensordata_irq_thread_fn, + IRQF_TRIGGER_FALLING, "SSP_Int", data); + if (iRet < 0) { + pr_err("[SSP]: %s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, iIrq, iIrq, iRet); + goto err_request_irq; + } + + /* start with interrupts disabled */ + data->iIrq = iIrq; + disable_irq(data->iIrq); + return 0; + +err_request_irq: + gpio_free(data->mcu_int1); + return iRet; +} + +static void work_function_firmware_update(struct work_struct *work) +{ + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_firmware); + int iRet = 0; + + pr_info("[SSP] : %s\n", __func__); + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet < 0) { + ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", + __func__); + return; + } + + data->uCurFirmRev = get_firmware_rev(data); + pr_info("[SSP] MCU Firm Rev : New = %8u\n", + data->uCurFirmRev); +} + +static int ssp_parse_dt(struct device *dev, + struct ssp_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + + data->mcu_int1 = of_get_named_gpio_flags(np, "ssp,mcu_int1-gpio", + 0, &flags); + if (data->mcu_int1 < 0) { + errorno = data->mcu_int1; + goto dt_exit; + } + + data->mcu_int2 = of_get_named_gpio_flags(np, "ssp,mcu_int2-gpio", + 0, &flags); + if (data->mcu_int2 < 0) { + errorno = data->mcu_int2; + goto dt_exit; + } + + data->ap_int = of_get_named_gpio_flags(np, "ssp,ap_int-gpio", + 0, &flags); + if (data->ap_int < 0) { + errorno = data->ap_int; + goto dt_exit; + } + + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); + if (data->rst < 0) { + errorno = data->rst ; + goto dt_exit; + } + + if (of_property_read_u32(np, "ssp,acc-position", &data->accel_position)) + data->accel_position = 0; + + if (of_property_read_u32(np, "ssp,mag-position", &data->mag_position)) + data->mag_position = 0; + + if (of_property_read_u32(np, "ssp,sns-combination", &data->sns_combination)) + data->sns_combination = 0; + + if (of_property_read_u32(np, "ssp,ap-rev", &data->ap_rev)) + data->ap_rev = 0; + + if (of_property_read_u32(np, "ssp,rotation-direction", &data->rot_direction)) + data->rot_direction = 0; + + errorno = gpio_request(data->mcu_int1, "mpu_ap_int1"); + if (errorno) { + printk(KERN_ERR "failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + + errorno = gpio_direction_input(data->mcu_int1); + if (errorno) { + printk(KERN_ERR "failed to set mcu_int1 as input\n"); + goto dt_exit; + } + + errorno = gpio_request(data->mcu_int2, "MCU_INT2"); + if (errorno) { + printk(KERN_ERR "failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + gpio_direction_input(data->mcu_int2); + + errorno = gpio_request(data->ap_int, "AP_MCU_INT"); + if (errorno) { + printk(KERN_ERR "failed to request AP_INT for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->ap_int, 1); + + errorno = gpio_request(data->rst, "MCU_RST"); + if (errorno) { + printk(KERN_ERR "failed to request MCU_RST for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->rst, 1); + + data->reg_hub = devm_regulator_get(dev, "hub_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get hub_vreg, %ld\n", + PTR_ERR(data->reg_hub)); + } else { + regulator_enable(data->reg_hub); + } + + data->reg_sns= devm_regulator_get(dev, "psns_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get psns_vreg, %ld\n", + PTR_ERR(data->reg_sns)); + } else { + regulator_enable(data->reg_sns); + } + +dt_exit: + return errorno; +} + + +static int ssp_probe(struct spi_device *spi_dev) +{ + int iRet = 0; + struct ssp_data *data; + struct ssp_platform_data *pdata; + + if (poweroff_charging == 1) { + pr_err("[SSP] probe exit : lpm %d\n", poweroff_charging); + return -ENODEV; + } + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (data == NULL) { + pr_err("[SSP]: %s - failed to allocate memory for data\n", + __func__); + iRet = -ENOMEM; + goto exit; + } + +#if defined (CONFIG_MACH_VIKALCU) + proximity_ldo_enable(1); +#endif + + if (spi_dev->dev.of_node) { + iRet = ssp_parse_dt(&spi_dev->dev, data); + if (iRet) { + pr_err("[SSP]: %s - Failed to parse DT\n", __func__); + goto err_setup; + } + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + } else { + pdata = spi_dev->dev.platform_data; + if (pdata == NULL) { + pr_err("[SSP]: %s - platform_data is null\n", __func__); + iRet = -ENOMEM; + goto err_setup; + } + data->wakeup_mcu = pdata->wakeup_mcu; + data->check_mcu_ready = pdata->check_mcu_ready; + data->check_mcu_busy = pdata->check_mcu_busy; + data->set_mcu_reset = pdata->set_mcu_reset; + data->read_chg = pdata->read_chg; + + /* AP system_rev */ + if (pdata->check_ap_rev) + data->ap_rev = pdata->check_ap_rev(); + else + data->ap_rev = 0; + /* For changed devices */ + if (pdata->check_changes) + data->ssp_changes = pdata->check_changes(); + else + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + + /* Get sensor positions */ + if (pdata->get_positions) + pdata->get_positions(&data->accel_position, + &data->mag_position); + else if (spi_dev->dev.of_node == NULL) { + data->accel_position = 0; + data->mag_position = 0; + } + + } + spi_dev->mode = SPI_MODE_1; + if (spi_setup(spi_dev)) { + pr_err("failed to setup spi for ssp_spi\n"); + goto err_setup; + } + + data->bProbeIsDone = false; + data->fw_dl_state = FW_DL_STATE_NONE; + data->spi = spi_dev; + spi_set_drvdata(spi_dev, data); + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_init(&data->cp_temp_adc_lock); + mutex_init(&data->bulk_temp_read_lock); +#endif + mutex_init(&data->comm_mutex); + mutex_init(&data->pending_mutex); + + if (((data->wakeup_mcu == NULL) + || (data->check_mcu_ready == NULL) + || (data->check_mcu_busy == NULL) + || (data->set_mcu_reset == NULL) + || (data->read_chg == NULL)) + && (spi_dev->dev.of_node == NULL)) { + pr_err("[SSP]: %s - function callback is null\n", __func__); + iRet = -EIO; + goto err_reset_null; + } + + pr_info("\n#####################################################\n"); + + INIT_DELAYED_WORK(&data->work_firmware, work_function_firmware_update); + + wake_lock_init(&data->ssp_wake_lock, + WAKE_LOCK_SUSPEND, "ssp_wake_lock"); + + iRet = initialize_input_dev(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create input device\n", __func__); + goto err_input_register_device; + } + + iRet = initialize_debug_timer(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create workqueue\n", __func__); + goto err_create_workqueue; + } + + iRet = initialize_irq(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create irq\n", __func__); + goto err_setup_irq; + } + + iRet = initialize_sysfs(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create sysfs\n", __func__); + goto err_sysfs_create; + } + + iRet = initialize_event_symlink(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create symlink\n", __func__); + goto err_symlink_create; + } + + initialize_variable(data); + + ssp_enable(data, true); + /* check boot loader binary */ + data->fw_dl_state = check_fwbl(data); + + if (data->fw_dl_state == FW_DL_STATE_NONE) { + iRet = initialize_mcu(data); + if (iRet == ERROR) { + data->uResetCnt++; + toggle_mcu_reset(data); + msleep(SSP_SW_RESET_TIME); + initialize_mcu(data); + } else if (iRet < ERROR) { + pr_err("[SSP]: %s - initialize_mcu failed\n", __func__); + goto err_read_reg; + } + } + +#ifdef CONFIG_HAS_EARLYSUSPEND + data->early_suspend.suspend = ssp_early_suspend; + data->early_suspend.resume = ssp_late_resume; + register_early_suspend(&data->early_suspend); +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* init sensorhub device */ + iRet = ssp_sensorhub_initialize(data); + if (iRet < 0) { + pr_err("%s: ssp_sensorhub_initialize err(%d)", __func__, iRet); + ssp_sensorhub_remove(data); + } +#endif + + data->bMcuDumpMode = sec_debug_is_enabled(); + pr_info("[SSP]: %s - setup debuglevel %d!\n", __func__,data->bMcuDumpMode); + + pr_info("[SSP]: %s - probe success!\n", __func__); + + enable_debug_timer(data); + + iRet = 0; + if (data->fw_dl_state == FW_DL_STATE_NEED_TO_SCHEDULE) { + pr_info("[SSP]: Firmware update is scheduled\n"); + schedule_delayed_work(&data->work_firmware, + msecs_to_jiffies(1000)); + data->fw_dl_state = FW_DL_STATE_SCHEDULED; + } else if (data->fw_dl_state == FW_DL_STATE_FAIL) + data->bSspShutdown = true; + data->bProbeIsDone = true; + + goto exit; + +err_read_reg: +err_symlink_create: + remove_sysfs(data); +err_sysfs_create: + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); +err_setup_irq: + destroy_workqueue(data->debug_wq); +err_create_workqueue: + remove_input_dev(data); +err_input_register_device: + wake_lock_destroy(&data->ssp_wake_lock); +err_reset_null: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); + +err_setup: + kfree(data); + pr_err("[SSP]: %s - probe failed!\n", __func__); +exit: + pr_info("#####################################################\n\n"); + return iRet; +} + +static void ssp_shutdown(struct spi_device *spi_dev) +{ + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + if (data->bProbeIsDone == false) + goto exit; + + if (data->fw_dl_state >= FW_DL_STATE_SCHEDULED && + data->fw_dl_state < FW_DL_STATE_DONE) { + pr_err("%s, cancel_delayed_work_sync state = %d\n", + __func__, data->fw_dl_state); + cancel_delayed_work_sync(&data->work_firmware); + } + + ssp_enable(data, false); + clean_pending_list(data); + +#ifdef CONFIG_HAS_EARLYSUSPEND + unregister_early_suspend(&data->early_suspend); +#endif + + disable_debug_timer(data); + + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); + + remove_event_symlink(data); + remove_sysfs(data); + remove_input_dev(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + ssp_sensorhub_remove(data); +#endif + + del_timer_sync(&data->debug_timer); + cancel_work_sync(&data->work_debug); + destroy_workqueue(data->debug_wq); + wake_lock_destroy(&data->ssp_wake_lock); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); +#if defined(CONFIG_MACH_VIKALCU) + proximity_ldo_enable(0); +#endif + toggle_mcu_reset(data); +/* gpio_set_value_cansleep(data->rst, 0); */ + pr_info("[SSP]: %s done\n", __func__); +exit: + kfree(data); +} + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + disable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_SLEEP); + ssp_sleep_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_sleep_mode(data); +#endif +} + +static void ssp_late_resume(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + enable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_WAKEUP); + ssp_resume_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_WAKEUP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_resume_mode(data); +#endif +} + +#else /* CONFIG_HAS_EARLYSUSPEND */ + +static int ssp_suspend(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + data->uLastResumeState = MSG2SSP_AP_STATUS_SUSPEND; + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SUSPEND, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SUSPEND failed\n", + __func__); + data->bTimeSyncing = false; + disable_irq(data->iIrq); + return 0; +} + +static int ssp_resume(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + enable_irq(data->iIrq); + func_dbg(); + enable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_RESUME, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_RESUME failed\n", + __func__); + data->uLastResumeState = MSG2SSP_AP_STATUS_RESUME; + + return 0; +} + +static const struct dev_pm_ops ssp_pm_ops = { + .suspend = ssp_suspend, + .resume = ssp_resume +}; +#endif /* CONFIG_HAS_EARLYSUSPEND */ + +static const struct spi_device_id ssp_id[] = { + {"ssp", 0}, + {} +}; + +MODULE_DEVICE_TABLE(spi, ssp_id); +#ifdef CONFIG_OF +static struct of_device_id ssp_match_table[] = { + { .compatible = "ssp,STM32F",}, + {}, +}; +#else +#define mpu6500_match_table NULL +#endif + +static struct spi_driver ssp_driver = { + .probe = ssp_probe, + .shutdown = ssp_shutdown, + .id_table = ssp_id, + .driver = { +#ifndef CONFIG_HAS_EARLYSUSPEND + .pm = &ssp_pm_ops, +#endif + .owner = THIS_MODULE, + .name = "ssp", + .of_match_table = ssp_match_table + }, +}; + +module_spi_driver(ssp_driver); +MODULE_DESCRIPTION("ssp driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm32f/ssp_firmware.c b/drivers/sensorhub/stm32f/ssp_firmware.c index fe294298e691..f544b4cf7dc9 100755 --- a/drivers/sensorhub/stm32f/ssp_firmware.c +++ b/drivers/sensorhub/stm32f/ssp_firmware.c @@ -1,907 +1,918 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" - -#define SSP_FIRMWARE_REVISION 101901 -#ifdef CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE -#define SSP_FIRMWARE_REVISION_STM 13122700 /* Latest, 88922*/ -#else -#define SSP_FIRMWARE_REVISION_STM 14010300 /* Latest, 88922*/ -#endif -#define SSP_FIRMWARE_REVISION_STM_88921 13072401 /* 88921 */ -#define SSP_FIRMWARE_REVISION_STM_RVS 13051500 - -#define BOOT_SPI_HZ 960000 -#define NORM_SPI_HZ 4800000 - -/* Bootload mode cmd */ -#ifdef CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE -#define BL_FW_NAME "ssp_stm_bf.fw" -#else -#define BL_FW_NAME "ssp_stm32f.fw" -#endif -#define BL_UMS_FW_NAME "ssp_stm.bin" -#define BL_CRASHED_FW_NAME "ssp_crashed.fw" - -#define BL_UMS_FW_PATH 255 - -#define APP_SLAVE_ADDR 0x18 -#define BOOTLOADER_SLAVE_ADDR 0x26 - -/* Bootloader mode status */ -#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ -#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ -#define BL_FRAME_CRC_CHECK 0x02 -#define BL_FRAME_CRC_FAIL 0x03 -#define BL_FRAME_CRC_PASS 0x04 -#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ -#define BL_BOOT_STATUS_MASK 0x3f - -/* Command to unlock bootloader */ -#define BL_UNLOCK_CMD_MSB 0xaa -#define BL_UNLOCK_CMD_LSB 0xdc - -/* STM */ -#define SSP_STM_DEBUG 0 -#define STM_SHOULD_BE_IMPLEMENT 0 - -#define SEND_ADDR_LEN 5 -#define BL_SPI_SOF 0x5A -#define BL_ACK 0x79 -#define BL_ACK2 0xF9 -#define BL_NACK 0x1F -#define BL_IDLE 0xA5 - -#define STM_MAX_XFER_SIZE 256 -#define STM_MAX_BUFFER_SIZE 260 -#define STM_APP_ADDR 0x08000000 - -#define BYTE_DELAY_READ 10 -#define BYTE_DELAY_WRITE 8 - -#define DEF_ACK_ERASE_NUMBER 7000 -#define DEF_ACKCMD_NUMBER 30 -#define DEF_ACKROOF_NUMBER 20 - -#define WMEM_COMMAND 0x31 /* Write Memory command */ -#define GO_COMMAND 0x21 /* GO command */ -#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ - -#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ - -#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ -#define XOR_GO_COMMAND 0xDE /* GO command */ -#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ - -#define EXT_ER_DATA_LEN 3 -#define BLMODE_RETRYCOUNT 3 -#define BYTETOBYTE_USED 0 - -struct stm32fwu_spi_cmd { - u8 cmd; - u8 xor_cmd; - u8 ack_pad; /* Send this when waiting for an ACK */ - u8 reserved; - int status; /* ACK or NACK (or error) */ - int timeout; /* This is number of retries */ - int ack_loops; -}; - -unsigned int get_module_rev(struct ssp_data *data) -{ -#if defined (CONFIG_MACH_VIKALCU) - return SSP_FIRMWARE_REVISION_STM; -#else - if (data->ap_rev > 3) - return SSP_FIRMWARE_REVISION_STM; - else - return SSP_FIRMWARE_REVISION_STM_88921; -#endif -} - -static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, - struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) -{ - static int check_spi_wait_cnt = 1; - - struct spi_message m; - char tx_buf = 0x0; - char rx_buf = 0x0; - struct spi_transfer t = { - .tx_buf = &tx_buf, - .rx_buf = &rx_buf, - .len = 1, - .bits_per_word = 8, - }; - int i = 0; - int ret; - -#if SSP_STM_DEBUG - pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", - __func__, dummy_bytes); -#endif - while (i < cmd->timeout) { - tx_buf = dummy_bytes; - spi_message_init(&m); - spi_message_add_tail(&t, &m); - - ret = spi_sync(spi, &m); - if (ret < 0) { - dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); - return ret; - } else if ((rx_buf == BL_ACK) || (rx_buf == BL_ACK2)) { - cmd->ack_loops = i; - return BL_ACK; - } else if (rx_buf == BL_NACK) { - return (int)rx_buf; - } - if (check_spi_wait_cnt % 20 == 0) - msleep(1); - else - usleep_range(1000, 1100); - i++; - check_spi_wait_cnt++; - } -#if SSP_STM_DEBUG - dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); -#endif - return -EIO; -} - -static int stm32fwu_spi_send_cmd(struct spi_device *spi, - struct stm32fwu_spi_cmd *cmd) -{ - u8 tx_buf[3] = {0,}; - u8 rx_buf[3] = {0,}; - u8 dummy_byte = 0; - struct spi_message m; - int ret; -#if BYTETOBYTE_USED - int i; - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); -#else - struct spi_transfer t = { - .tx_buf = tx_buf, - .rx_buf = rx_buf, - .len = 3, - .bits_per_word = 8, - }; -#endif - spi_message_init(&m); - tx_buf[0] = BL_SPI_SOF; - tx_buf[1] = cmd->cmd; - tx_buf[2] = cmd->xor_cmd; - -#if BYTETOBYTE_USED - for (i = 0; i < 3; i++) { - t[i].tx_buf = &tx_buf[i]; - t[i].rx_buf = &rx_buf[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_WRITE; - spi_message_add_tail(&t[i], &m); - } -#else - spi_message_add_tail(&t, &m); -#endif - - ret = spi_sync(spi, &m); - if (ret < 0) { - dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); - return ret; - } - - dummy_byte = cmd->ack_pad; - - /* check for ack/nack and loop until found */ - ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); - cmd->status = ret; - - if (ret != BL_ACK) { - pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); - return ret; - } - - return ret; -} -#if STM_SHOULD_BE_IMPLEMENT -static int stm32fwu_spi_read(struct spi_device *spi, - u8 *buffer, ssize_t len) -{ - int ret; - int i; - u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; - struct spi_message m; - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); - - spi_message_init(&m); - - for (i = 0; i < len; i++) { - t[i].tx_buf = tx_buf; - t[i].rx_buf = &buffer[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_READ; - spi_message_add_tail(&t[i], &m); - } - - ret = spi_sync(spi, &m); - - if (ret < 0) { - pr_err("[SSP] Error in %d spi_read()\n", ret); - return ret; - } - - return len; -} -#endif - -static int stm32fwu_spi_write(struct spi_device *spi, - const u8 *buffer, ssize_t len) -{ - int ret; - u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; - struct spi_message m; -#if BYTETOBYTE_USED - struct spi_transfer t[STM_MAX_BUFFER_SIZE]; - memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); - int i; -#else - struct spi_transfer t = { - .tx_buf = buffer, - .rx_buf = rx_buf, - .len = len, - .bits_per_word = 8, - }; -#endif - spi_message_init(&m); -#if BYTETOBYTE_USED - for (i = 0; i < len; i++) { - t[i].tx_buf = &buffer[i]; - t[i].rx_buf = &rx_buf[i]; - t[i].len = 1; - t[i].bits_per_word = 8; - t[i].delay_usecs = BYTE_DELAY_WRITE; - spi_message_add_tail(&t[i], &m); - } -#else - spi_message_add_tail(&t, &m); -#endif - ret = spi_sync(spi, &m); - - if (ret < 0) { - pr_err("[SSP] Error in %d spi_write()\n", ret); - return ret; - } - - return len; -} - -static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) -{ - int res; - int i = send_short; - int len = SEND_ADDR_LEN - send_short; - u8 header[SEND_ADDR_LEN]; - struct stm32fwu_spi_cmd dummy_cmd; - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - - - header[0] = (u8)((fw_addr >> 24) & 0xFF); - header[1] = (u8)((fw_addr >> 16) & 0xFF); - header[2] = (u8)((fw_addr >> 8) & 0xFF); - header[3] = (u8)(fw_addr & 0xFF); - header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; - - res = stm32fwu_spi_write(spi, &header[i], len); - - if (res < len) { - pr_err("[SSP] Error in sending address. Res %d\n", res); - return ((res > 0) ? -EIO : res); - } - - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - if (res != BL_ACK) { - pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", - res); - return res; - } - return 0; -} - -#if STM_SHOULD_BE_IMPLEMENT -static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) -{ - int res; - uchar bbuff[3]; - struct stm32fwu_spi_cmd dummy_cmd; - - if (bytes > 256) { - return -EINVAL; - } - - bbuff[0] = bytes - 1; - bbuff[1] = ~bbuff[0]; - - res = stm32fwu_spi_write(spi, bbuff, 2); - - if (res < 2) { - return -EPROTO; - } - - if (get_ack) { - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - - if (res != BL_ACK) { - return -EPROTO; - } - } - return 0; -} - -static int fw_read_stm(struct spi_device *spi, u32 fw_addr, - int len, const u8 *buffer) -{ - int res; - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int i; - u8 xor = 0; - u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; - - cmd.cmd = WMEM_COMMAND; - cmd.xor_cmd = XOR_RMEM_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); - - res = stm32fwu_spi_send_cmd(spi, &cmd); - - if (res != BL_ACK) { - pr_err("[SSP] Error %d sending read_mem cmd\n", res); - return res; - } - - if (cmd.ack_loops > 0) - res = send_addr(spi, fw_addr, 1); - else - res = send_addr(spi, fw_addr, 0); - - if (res != 0) { - pr_err("[SSP] Error %d sending read_mem Address\n", res); - return res; - } - - res = send_byte_count(spi, len, 1); - - if (res != 0) { - return -EPROTO; - } - - res = stm32fwu_spi_read(spi, buffer, len); - - if (res < len) { - return -EIO; - } - - return len; -} -#endif - -static int fw_write_stm(struct spi_device *spi, u32 fw_addr, - int len, const u8 *buffer) -{ - int res; - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int i; - u8 xor = 0; - u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; - - cmd.cmd = WMEM_COMMAND; - cmd.xor_cmd = XOR_WMEM_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); - -#if SSP_STM_DEBUG - pr_info("[SSP] sending WMEM_COMMAND\n"); -#endif - - if (len > STM_MAX_XFER_SIZE) { - pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); - return -EINVAL; - } - - send_buff[0] = len - 1; - memcpy(&send_buff[1], buffer, len); - for (i = 0; i < (len + 1); i++) - xor ^= send_buff[i]; - - send_buff[len + 1] = xor; - - res = stm32fwu_spi_send_cmd(spi, &cmd); - if (res != BL_ACK) { - pr_err("[SSP] Error %d sending read_mem cmd\n", res); - return res; - } - - if (cmd.ack_loops > 0) - res = send_addr(spi, fw_addr, 1); - else - res = send_addr(spi, fw_addr, 0); - - if (res != 0) { - pr_err("[SSP] Error %d sending write_mem Address\n", res); - return res; - } - - res = stm32fwu_spi_write(spi, send_buff, len + 2); - if (res < len) { - pr_err("[SSP] Error writing to flash. res = %d\n", res); - return ((res > 0) ? -EIO : res); - } - - dummy_cmd.timeout = DEF_ACKROOF_NUMBER; - usleep_range(100, 150); /* Samsung added */ - res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - if (res == BL_ACK) { - return len; - } - - if (res == BL_NACK) { - pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); - return -EPROTO; - } - pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); - return -ETIME; -} - -static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) -{ - const u8 *buff = NULL; - char fw_path[BL_UMS_FW_PATH+1]; - unsigned int uFSize = 0, uNRead = 0; - unsigned int uPos = 0; - int iRet = SUCCESS; - int remaining; - int block = STM_MAX_XFER_SIZE; - unsigned int fw_addr = STM_APP_ADDR; - int retry_count = 0; - int err_count = 0; - int count = 0; - struct file *fp = NULL; - mm_segment_t old_fs = get_fs(); - - pr_info("[SSP] ssp_load_ums_fw start!!!\n"); - - old_fs = get_fs(); - set_fs(get_ds()); - - snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); - - fp = filp_open(fw_path, O_RDONLY, 0); - if (IS_ERR(fp)) { - iRet = ERROR; - pr_err("file %s open error:%d\n", fw_path, (s32)fp); - goto err_open; - } - - uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; - pr_info("ssp_load_ums firmware size: %u\n", uFSize); - - buff = kzalloc((size_t)uFSize, GFP_KERNEL); - if (!buff) { - iRet = ERROR; - pr_err("fail to alloc buffer for fw\n"); - goto err_alloc; - } - - uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, - (unsigned int)uFSize, &fp->f_pos); - if (uNRead != uFSize) { - iRet = ERROR; - pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); - goto err_fw_size; - } - remaining = uFSize; - - while (remaining > 0) { - if (block > remaining) - block = remaining; - - while (retry_count < 3) { - iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); - if (iRet < block) { - pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); - if (iRet < 0) { - pr_err("[SSP] Erro was %d\n", iRet); - } else { - pr_err("[SSP] Incomplete write of %d bytes\n", - iRet); - iRet = -EIO; - } - retry_count++; - err_count++; - } else { - retry_count = 0; - break; - } - } - if (iRet < 0) { - pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); - goto out; - } - remaining -= block; - uPos += block; - fw_addr += block; - if (count++ == 50) { - pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, - uFSize); - count = 0; - } - } - pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); -out: -err_fw_size: - kfree(buff); -err_alloc: - filp_close(fp, NULL); -err_open: - set_fs(old_fs); - - return iRet; -} - -static int fw_erase_stm(struct spi_device *spi) -{ - struct stm32fwu_spi_cmd cmd; - struct stm32fwu_spi_cmd dummy_cmd; - int ret; - char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; - - cmd.cmd = EXT_ER_COMMAND; - cmd.xor_cmd = XOR_EXT_ER_COMMAND; - cmd.timeout = DEF_ACKCMD_NUMBER; - cmd.ack_pad = 0xFF; - - ret = stm32fwu_spi_send_cmd(spi, &cmd); - - if (ret < 0 || ret != BL_ACK) { - pr_err("[SSP] fw_erase failed\n"); - return ret; - } - if (cmd.ack_loops == 0) - ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); - else - ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN-1); - - if (ret < (EXT_ER_DATA_LEN - cmd.ack_loops)) { - return -EPROTO; - } - dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; - ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); - - - if (ret == BL_ACK) - return 0; - else if (ret == BL_NACK) - return -EPROTO; - else - return -ETIME; - -} - -static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) -{ - const struct firmware *fw = NULL; - int remaining; - unsigned int uPos = 0; - unsigned int fw_addr = STM_APP_ADDR; - int iRet; - int block = STM_MAX_XFER_SIZE; - int count = 0; - int err_count = 0; - int retry_count = 0; - - pr_info("[SSP] ssp_load_fw start!!!\n"); - - iRet = request_firmware(&fw, pFn, &spi->dev); - if (iRet) { - pr_err("[SSP] Unable to open firmware %s\n", pFn); - return iRet; - } - - remaining = fw->size; - while (remaining > 0) { - if (block > remaining) - block = remaining; - - while (retry_count < 3) { - iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); - if (iRet < block) { - pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); - if (iRet < 0) { - pr_err("[SSP] Erro was %d\n", iRet); - } else { - pr_err("[SSP] Incomplete write of %d bytes\n", - iRet); - iRet = -EIO; - } - retry_count++; - err_count++; - } else { - retry_count = 0; - break; - } - } - if (iRet < 0) { - pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); - goto out_load_kernel; - } - remaining -= block; - uPos += block; - fw_addr += block; - if (count++ == 20) { - pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, - fw->size); - count = 0; - } - } - - pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); - -out_load_kernel: - release_firmware(fw); - return iRet; -} - -static int change_to_bootmode(struct ssp_data *data) -{ - int iCnt; - int ret; - char syncb = BL_SPI_SOF; - struct stm32fwu_spi_cmd dummy_cmd; - - dummy_cmd.timeout = DEF_ACKCMD_NUMBER; - - gpio_set_value_cansleep(data->rst, 0); - mdelay(4); - gpio_set_value_cansleep(data->rst, 1); - usleep_range(45000, 47000); - - - for (iCnt = 0; iCnt < 9; iCnt++) { - gpio_set_value_cansleep(data->rst, 0); - mdelay(4); - gpio_set_value_cansleep(data->rst, 1); - usleep_range(15000, 15500); - } - ret = stm32fwu_spi_write(data->spi, &syncb, 1); -#if SSP_STM_DEBUG - pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); -#endif - ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_ACK); -#if SSP_STM_DEBUG - pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", - ret, ret); -#endif - return ret; -} - -void toggle_mcu_reset(struct ssp_data *data) -{ - gpio_set_value_cansleep(data->rst, 0); - - usleep_range(1000, 1200); - - gpio_set_value_cansleep(data->rst, 1); - msleep(50); -} - -static int update_mcu_bin(struct ssp_data *data, int iBinType) -{ - int retry = BLMODE_RETRYCOUNT; - int iRet = SUCCESS; - struct stm32fwu_spi_cmd cmd; - - cmd.cmd = GO_COMMAND; - cmd.xor_cmd = XOR_GO_COMMAND; - cmd.timeout = 1000; - cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); - - do { - iRet = change_to_bootmode(data); - pr_info("[ssp] bootmode %d retry: %d\n", iRet, 3 - retry); - } while (retry-- > 0 && iRet != BL_ACK ); - - if(iRet != BL_ACK) { - pr_err("[SSP]: %s - change_to_bootmode %d\n", - __func__, iRet); - return iRet; - } - - iRet = fw_erase_stm(data->spi); - if (iRet < 0) { - pr_err("[SSP]: %s - fw_erase_stm %d\n", - __func__, iRet); - return iRet; - } - - switch (iBinType) { - case KERNEL_BINARY: - /* HW request: I2C line is reversed */ - iRet = load_kernel_fw_bootmode(data->spi, - BL_FW_NAME); - break; - case KERNEL_CRASHED_BINARY: - iRet = load_kernel_fw_bootmode(data->spi, - BL_CRASHED_FW_NAME); - break; - case UMS_BINARY: - iRet = load_ums_fw_bootmode(data->spi, - BL_UMS_FW_NAME); - break; - - default: - pr_err("[SSP] binary type error!!\n"); - } -/* STM : GO USER ADDR */ - stm32fwu_spi_send_cmd(data->spi, &cmd); - if (cmd.ack_loops > 0) - send_addr(data->spi, STM_APP_ADDR, 1); - else - send_addr(data->spi, STM_APP_ADDR, 0); - - msleep(SSP_SW_RESET_TIME); - - return iRet; -} - -int forced_to_download_binary(struct ssp_data *data, int iBinType) -{ - int iRet = 0; - int retry = 3; - - ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); - - ssp_enable(data, false); - - data->fw_dl_state = FW_DL_STATE_DOWNLOADING; - pr_info("[SSP] %s, DL state = %d\n", __func__, - data->fw_dl_state); - data->spi->max_speed_hz = BOOT_SPI_HZ; - if (spi_setup(data->spi)) - pr_err("failed to setup spi for ssp_boot\n"); - - do { - pr_info("[SSP] %d try\n", 3 - retry); - iRet = update_mcu_bin(data, iBinType); - } while (retry -- > 0 && iRet < 0); - data->spi->max_speed_hz = NORM_SPI_HZ; - if (spi_setup(data->spi)) - pr_err("failed to setup spi for ssp_norm\n"); - - if (iRet < 0) { - ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); - goto out; - } - - data->fw_dl_state = FW_DL_STATE_SYNC; - pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); - clean_pending_list(data); - ssp_enable(data, true); - - iRet = initialize_mcu(data); - if (iRet < 0) { - iRet = ERROR; - ssp_dbg("[SSP]: %s - initialize_mcu failed!\n", __func__); - goto out; - } - - proximity_open_lcd_ldi(data); - proximity_open_calibration(data); - accel_open_calibration(data); - gyro_open_calibration(data); - pressure_open_calibration(data); - if (mag_open_hwoffset(data) < 0) - pr_info("[SSP]: %s - mag_open_hw_offset" - " failed, %d\n", __func__, iRet); - - sync_sensor_state(data); - -#ifdef CONFIG_SENSORS_SSP_SENSORHUB - ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); -#endif - - data->fw_dl_state = FW_DL_STATE_DONE; - pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); - - iRet = SUCCESS; -out: - return iRet; -} - -int check_fwbl(struct ssp_data *data) -{ - - unsigned int fw_revision; - - pr_info("[SSP] change_rev = %d\n", data->ssp_changes); -#if defined (CONFIG_MACH_VIKALCU) - fw_revision = SSP_FIRMWARE_REVISION_STM; -#elif defined (CONFIG_MACH_HLTEVZW) || defined (CONFIG_MACH_HLTESPR) \ - || defined (CONFIG_MACH_HLTEUSC) - if (data->ap_rev > 3) - fw_revision = SSP_FIRMWARE_REVISION_STM; - else if (data->ap_rev > 2) - fw_revision = SSP_FIRMWARE_REVISION_STM_88921; - else - fw_revision = SSP_FIRMWARE_REVISION_STM_RVS; -#else - if (data->ap_rev > 3) - fw_revision = SSP_FIRMWARE_REVISION_STM; - else - fw_revision = SSP_FIRMWARE_REVISION_STM_88921; -#endif - - data->uCurFirmRev = get_firmware_rev(data); - - if ((data->uCurFirmRev == SSP_INVALID_REVISION) \ - || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { -#if STM_SHOULD_BE_IMPLEMENT - data->client->addr = BOOTLOADER_SLAVE_ADDR; - iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); - - if (iRet >= 0) { - pr_info("[SSP] ssp_load_fw_bootmode\n"); - - return FW_DL_STATE_NEED_TO_SCHEDULE; - } else { - pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", - data->uCurFirmRev); - data->client->addr = APP_SLAVE_ADDR; - data->uCurFirmRev = get_firmware_rev(data); - if (data->uCurFirmRev == SSP_INVALID_REVISION ||\ - data->uCurFirmRev == ERROR) { - pr_err("[SSP] MCU is not working, FW download failed\n"); - return FW_DL_STATE_FAIL; - } else if (data->uCurFirmRev != fw_revision) { - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - - return FW_DL_STATE_NEED_TO_SCHEDULE; - } - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - } -#endif - pr_err("[SSP] SSP_INVALID_REVISION\n"); - return FW_DL_STATE_NEED_TO_SCHEDULE; - } else { - if (data->uCurFirmRev != fw_revision) { - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - - return FW_DL_STATE_NEED_TO_SCHEDULE; - } - pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", - data->uCurFirmRev, fw_revision); - } - - return FW_DL_STATE_NONE; -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define SSP_FIRMWARE_REVISION 101901 +#ifdef CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE +#define SSP_FIRMWARE_REVISION_STM 14010300 /* Latest, 88922*/ +#else +#define SSP_FIRMWARE_REVISION_STM 14111800 /* Latest, 88922*/ +#endif +#define SSP_FIRMWARE_REVISION_STM_88921 13072401 /* 88921 */ +#define SSP_FIRMWARE_REVISION_STM_RVS 13051500 +#define SSP_FIRMWARE_REVISION_JSGLTE 14070300 + +#define BOOT_SPI_HZ 960000 +#define NORM_SPI_HZ 4800000 + +/* Bootload mode cmd */ +#ifdef CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE +#define BL_FW_NAME "ssp_stm_bf.fw" +#else +#define BL_FW_NAME "ssp_stm32f.fw" +#endif +#define BL_FW_JSGLTE_NAME "ssp_stm32f_jsglte.fw" +#define BL_UMS_FW_NAME "ssp_stm.bin" +#define BL_CRASHED_FW_NAME "ssp_crashed.fw" + +#define BL_UMS_FW_PATH 255 + +#define APP_SLAVE_ADDR 0x18 +#define BOOTLOADER_SLAVE_ADDR 0x26 + +/* Bootloader mode status */ +#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ +#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ +#define BL_FRAME_CRC_CHECK 0x02 +#define BL_FRAME_CRC_FAIL 0x03 +#define BL_FRAME_CRC_PASS 0x04 +#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ +#define BL_BOOT_STATUS_MASK 0x3f + +/* Command to unlock bootloader */ +#define BL_UNLOCK_CMD_MSB 0xaa +#define BL_UNLOCK_CMD_LSB 0xdc + +/* STM */ +#define SSP_STM_DEBUG 0 +#define STM_SHOULD_BE_IMPLEMENT 0 + +#define SEND_ADDR_LEN 5 +#define BL_SPI_SOF 0x5A +#define BL_ACK 0x79 +#define BL_ACK2 0xF9 +#define BL_NACK 0x1F +#define BL_IDLE 0xA5 + +#define STM_MAX_XFER_SIZE 256 +#define STM_MAX_BUFFER_SIZE 260 +#define STM_APP_ADDR 0x08000000 + +#define BYTE_DELAY_READ 10 +#define BYTE_DELAY_WRITE 8 + +#define DEF_ACK_ERASE_NUMBER 7000 +#define DEF_ACKCMD_NUMBER 30 +#define DEF_ACKROOF_NUMBER 20 + +#define WMEM_COMMAND 0x31 /* Write Memory command */ +#define GO_COMMAND 0x21 /* GO command */ +#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ + +#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ + +#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ +#define XOR_GO_COMMAND 0xDE /* GO command */ +#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ + +#define EXT_ER_DATA_LEN 3 +#define BLMODE_RETRYCOUNT 3 +#define BYTETOBYTE_USED 0 + +struct stm32fwu_spi_cmd { + u8 cmd; + u8 xor_cmd; + u8 ack_pad; /* Send this when waiting for an ACK */ + u8 reserved; + int status; /* ACK or NACK (or error) */ + int timeout; /* This is number of retries */ + int ack_loops; +}; + +unsigned int get_module_rev(struct ssp_data *data) +{ +#if defined (CONFIG_MACH_VIKALCU) + return SSP_FIRMWARE_REVISION_STM; +#elif defined (CONFIG_MACH_JSGLTE_CHN_CMCC) + return SSP_FIRMWARE_REVISION_JSGLTE; +#else + if (data->ap_rev > 3) + return SSP_FIRMWARE_REVISION_STM; + else + return SSP_FIRMWARE_REVISION_STM_88921; +#endif +} + +static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) +{ + static int check_spi_wait_cnt = 1; + + struct spi_message m; + char tx_buf = 0x0; + char rx_buf = 0x0; + struct spi_transfer t = { + .tx_buf = &tx_buf, + .rx_buf = &rx_buf, + .len = 1, + .bits_per_word = 8, + }; + int i = 0; + int ret; + +#if SSP_STM_DEBUG + pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", + __func__, dummy_bytes); +#endif + while (i < cmd->timeout) { + tx_buf = dummy_bytes; + spi_message_init(&m); + spi_message_add_tail(&t, &m); + + ret = spi_sync(spi, &m); + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } else if ((rx_buf == BL_ACK) || (rx_buf == BL_ACK2)) { + cmd->ack_loops = i; + return BL_ACK; + } else if (rx_buf == BL_NACK) { + return (int)rx_buf; + } + if (check_spi_wait_cnt % 20 == 0) + msleep(1); + else + usleep_range(1000, 1100); + i++; + check_spi_wait_cnt++; + } +#if SSP_STM_DEBUG + dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); +#endif + return -EIO; +} + +static int stm32fwu_spi_send_cmd(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd) +{ + u8 tx_buf[3] = {0,}; + u8 rx_buf[3] = {0,}; + u8 dummy_byte = 0; + struct spi_message m; + int ret; +#if BYTETOBYTE_USED + int i; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); +#else + struct spi_transfer t = { + .tx_buf = tx_buf, + .rx_buf = rx_buf, + .len = 3, + .bits_per_word = 8, + }; +#endif + spi_message_init(&m); + tx_buf[0] = BL_SPI_SOF; + tx_buf[1] = cmd->cmd; + tx_buf[2] = cmd->xor_cmd; + +#if BYTETOBYTE_USED + for (i = 0; i < 3; i++) { + t[i].tx_buf = &tx_buf[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + + ret = spi_sync(spi, &m); + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } + + dummy_byte = cmd->ack_pad; + + /* check for ack/nack and loop until found */ + ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); + cmd->status = ret; + + if (ret != BL_ACK) { + pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); + return ret; + } + + return ret; +} +#if STM_SHOULD_BE_IMPLEMENT +static int stm32fwu_spi_read(struct spi_device *spi, + u8 *buffer, ssize_t len) +{ + int ret; + int i; + u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + + spi_message_init(&m); + + for (i = 0; i < len; i++) { + t[i].tx_buf = tx_buf; + t[i].rx_buf = &buffer[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_READ; + spi_message_add_tail(&t[i], &m); + } + + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_read()\n", ret); + return ret; + } + + return len; +} +#endif + +static int stm32fwu_spi_write(struct spi_device *spi, + const u8 *buffer, ssize_t len) +{ + int ret; + u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; +#if BYTETOBYTE_USED + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + int i; +#else + struct spi_transfer t = { + .tx_buf = buffer, + .rx_buf = rx_buf, + .len = len, + .bits_per_word = 8, + }; +#endif + spi_message_init(&m); +#if BYTETOBYTE_USED + for (i = 0; i < len; i++) { + t[i].tx_buf = &buffer[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_write()\n", ret); + return ret; + } + + return len; +} + +static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) +{ + int res; + int i = send_short; + int len = SEND_ADDR_LEN - send_short; + u8 header[SEND_ADDR_LEN]; + struct stm32fwu_spi_cmd dummy_cmd; + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + + + header[0] = (u8)((fw_addr >> 24) & 0xFF); + header[1] = (u8)((fw_addr >> 16) & 0xFF); + header[2] = (u8)((fw_addr >> 8) & 0xFF); + header[3] = (u8)(fw_addr & 0xFF); + header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; + + res = stm32fwu_spi_write(spi, &header[i], len); + + if (res < len) { + pr_err("[SSP] Error in sending address. Res %d\n", res); + return ((res > 0) ? -EIO : res); + } + + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res != BL_ACK) { + pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", + res); + return res; + } + return 0; +} + +#if STM_SHOULD_BE_IMPLEMENT +static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) +{ + int res; + uchar bbuff[3]; + struct stm32fwu_spi_cmd dummy_cmd; + + if (bytes > 256) { + return -EINVAL; + } + + bbuff[0] = bytes - 1; + bbuff[1] = ~bbuff[0]; + + res = stm32fwu_spi_write(spi, bbuff, 2); + + if (res < 2) { + return -EPROTO; + } + + if (get_ack) { + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (res != BL_ACK) { + return -EPROTO; + } + } + return 0; +} + +static int fw_read_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_RMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + + res = stm32fwu_spi_send_cmd(spi, &cmd); + + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + if (cmd.ack_loops > 0) + res = send_addr(spi, fw_addr, 1); + else + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending read_mem Address\n", res); + return res; + } + + res = send_byte_count(spi, len, 1); + + if (res != 0) { + return -EPROTO; + } + + res = stm32fwu_spi_read(spi, buffer, len); + + if (res < len) { + return -EIO; + } + + return len; +} +#endif + +static int fw_write_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_WMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + +#if SSP_STM_DEBUG + pr_info("[SSP] sending WMEM_COMMAND\n"); +#endif + + if (len > STM_MAX_XFER_SIZE) { + pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); + return -EINVAL; + } + + send_buff[0] = len - 1; + memcpy(&send_buff[1], buffer, len); + for (i = 0; i < (len + 1); i++) + xor ^= send_buff[i]; + + send_buff[len + 1] = xor; + + res = stm32fwu_spi_send_cmd(spi, &cmd); + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + if (cmd.ack_loops > 0) + res = send_addr(spi, fw_addr, 1); + else + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending write_mem Address\n", res); + return res; + } + + res = stm32fwu_spi_write(spi, send_buff, len + 2); + if (res < len) { + pr_err("[SSP] Error writing to flash. res = %d\n", res); + return ((res > 0) ? -EIO : res); + } + + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + usleep_range(100, 150); /* Samsung added */ + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res == BL_ACK) { + return len; + } + + if (res == BL_NACK) { + pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); + return -EPROTO; + } + pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); + return -ETIME; +} + +static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const u8 *buff = NULL; + char fw_path[BL_UMS_FW_PATH+1]; + unsigned int uFSize = 0, uNRead = 0; + unsigned int uPos = 0; + int iRet = SUCCESS; + int remaining; + int block = STM_MAX_XFER_SIZE; + unsigned int fw_addr = STM_APP_ADDR; + int retry_count = 0; + int err_count = 0; + int count = 0; + struct file *fp = NULL; + mm_segment_t old_fs = get_fs(); + + pr_info("[SSP] ssp_load_ums_fw start!!!\n"); + + old_fs = get_fs(); + set_fs(get_ds()); + + snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); + + fp = filp_open(fw_path, O_RDONLY, 0); + if (IS_ERR(fp)) { + iRet = ERROR; + pr_err("file %s open error:%d\n", fw_path, (s32)fp); + goto err_open; + } + + uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; + pr_info("ssp_load_ums firmware size: %u\n", uFSize); + + buff = kzalloc((size_t)uFSize, GFP_KERNEL); + if (!buff) { + iRet = ERROR; + pr_err("fail to alloc buffer for fw\n"); + goto err_alloc; + } + + uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, + (unsigned int)uFSize, &fp->f_pos); + if (uNRead != uFSize) { + iRet = ERROR; + pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); + goto err_fw_size; + } + remaining = uFSize; + + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 50) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + uFSize); + count = 0; + } + } + pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); +out: +err_fw_size: + kfree(buff); +err_alloc: + filp_close(fp, NULL); +err_open: + set_fs(old_fs); + + return iRet; +} + +static int fw_erase_stm(struct spi_device *spi) +{ + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int ret; + char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; + + cmd.cmd = EXT_ER_COMMAND; + cmd.xor_cmd = XOR_EXT_ER_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = 0xFF; + + ret = stm32fwu_spi_send_cmd(spi, &cmd); + + if (ret < 0 || ret != BL_ACK) { + pr_err("[SSP] fw_erase failed\n"); + return ret; + } + if (cmd.ack_loops == 0) + ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); + else + ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN-1); + + if (ret < (EXT_ER_DATA_LEN - cmd.ack_loops)) { + return -EPROTO; + } + dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; + ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + + if (ret == BL_ACK) + return 0; + else if (ret == BL_NACK) + return -EPROTO; + else + return -ETIME; + +} + +static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const struct firmware *fw = NULL; + int remaining; + unsigned int uPos = 0; + unsigned int fw_addr = STM_APP_ADDR; + int iRet; + int block = STM_MAX_XFER_SIZE; + int count = 0; + int err_count = 0; + int retry_count = 0; + + pr_info("[SSP] ssp_load_fw start!!!\n"); + + iRet = request_firmware(&fw, pFn, &spi->dev); + if (iRet) { + pr_err("[SSP] Unable to open firmware %s\n", pFn); + return iRet; + } + + remaining = fw->size; + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out_load_kernel; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 20) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + fw->size); + count = 0; + } + } + + pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); + +out_load_kernel: + release_firmware(fw); + return iRet; +} + +static int change_to_bootmode(struct ssp_data *data) +{ + int iCnt; + int ret; + char syncb = BL_SPI_SOF; + struct stm32fwu_spi_cmd dummy_cmd; + + dummy_cmd.timeout = DEF_ACKCMD_NUMBER; + + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(45000, 47000); + + + for (iCnt = 0; iCnt < 9; iCnt++) { + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(15000, 15500); + } + ret = stm32fwu_spi_write(data->spi, &syncb, 1); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); +#endif + ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_ACK); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", + ret, ret); +#endif + return ret; +} + +void toggle_mcu_reset(struct ssp_data *data) +{ + gpio_set_value_cansleep(data->rst, 0); + + usleep_range(1000, 1200); + + gpio_set_value_cansleep(data->rst, 1); + msleep(50); +} + +static int update_mcu_bin(struct ssp_data *data, int iBinType) +{ + int retry = BLMODE_RETRYCOUNT; + int iRet = SUCCESS; + struct stm32fwu_spi_cmd cmd; + + cmd.cmd = GO_COMMAND; + cmd.xor_cmd = XOR_GO_COMMAND; + cmd.timeout = 1000; + cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); + + do { + iRet = change_to_bootmode(data); + pr_info("[ssp] bootmode %d retry: %d\n", iRet, 3 - retry); + } while (retry-- > 0 && iRet != BL_ACK ); + + if(iRet != BL_ACK) { + pr_err("[SSP]: %s - change_to_bootmode %d\n", + __func__, iRet); + return iRet; + } + + iRet = fw_erase_stm(data->spi); + if (iRet < 0) { + pr_err("[SSP]: %s - fw_erase_stm %d\n", + __func__, iRet); + return iRet; + } + + switch (iBinType) { + case KERNEL_BINARY: + /* HW request: I2C line is reversed */ +#if defined(CONFIG_MACH_JSGLTE_CHN_CMCC) + iRet = load_kernel_fw_bootmode(data->spi, + BL_FW_JSGLTE_NAME); +#else + iRet = load_kernel_fw_bootmode(data->spi, + BL_FW_NAME); +#endif + break; + case KERNEL_CRASHED_BINARY: + iRet = load_kernel_fw_bootmode(data->spi, + BL_CRASHED_FW_NAME); + break; + case UMS_BINARY: + iRet = load_ums_fw_bootmode(data->spi, + BL_UMS_FW_NAME); + break; + + default: + pr_err("[SSP] binary type error!!\n"); + } +/* STM : GO USER ADDR */ + stm32fwu_spi_send_cmd(data->spi, &cmd); + if (cmd.ack_loops > 0) + send_addr(data->spi, STM_APP_ADDR, 1); + else + send_addr(data->spi, STM_APP_ADDR, 0); + + msleep(SSP_SW_RESET_TIME); + + return iRet; +} + +int forced_to_download_binary(struct ssp_data *data, int iBinType) +{ + int iRet = 0; + int retry = 3; + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + ssp_enable(data, false); + + data->fw_dl_state = FW_DL_STATE_DOWNLOADING; + pr_info("[SSP] %s, DL state = %d\n", __func__, + data->fw_dl_state); + data->spi->max_speed_hz = BOOT_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_boot\n"); + + do { + pr_info("[SSP] %d try\n", 3 - retry); + iRet = update_mcu_bin(data, iBinType); + } while (retry -- > 0 && iRet < 0); + data->spi->max_speed_hz = NORM_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_norm\n"); + + if (iRet < 0) { + ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); + goto out; + } + + data->fw_dl_state = FW_DL_STATE_SYNC; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + clean_pending_list(data); + ssp_enable(data, true); + + iRet = initialize_mcu(data); + if (iRet < 0) { + iRet = ERROR; + ssp_dbg("[SSP]: %s - initialize_mcu failed!\n", __func__); + goto out; + } + + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + accel_open_calibration(data); + gyro_open_calibration(data); + pressure_open_calibration(data); + if (mag_open_hwoffset(data) < 0) + pr_info("[SSP]: %s - mag_open_hw_offset" + " failed, %d\n", __func__, iRet); + + sync_sensor_state(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); +#endif + + data->fw_dl_state = FW_DL_STATE_DONE; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + + iRet = SUCCESS; +out: + return iRet; +} + +int check_fwbl(struct ssp_data *data) +{ + + unsigned int fw_revision; + + pr_info("[SSP] change_rev = %d\n", data->ssp_changes); +#if defined (CONFIG_MACH_JSGLTE_CHN_CMCC) + fw_revision = SSP_FIRMWARE_REVISION_JSGLTE; +#elif defined (CONFIG_MACH_VIKALCU) + fw_revision = SSP_FIRMWARE_REVISION_STM; +#elif defined (CONFIG_MACH_HLTEVZW) || defined (CONFIG_MACH_HLTESPR) \ + || defined (CONFIG_MACH_HLTEUSC) + if (data->ap_rev > 3) + fw_revision = SSP_FIRMWARE_REVISION_STM; + else if (data->ap_rev > 2) + fw_revision = SSP_FIRMWARE_REVISION_STM_88921; + else + fw_revision = SSP_FIRMWARE_REVISION_STM_RVS; +#else + if (data->ap_rev > 3) + fw_revision = SSP_FIRMWARE_REVISION_STM; + else + fw_revision = SSP_FIRMWARE_REVISION_STM_88921; +#endif + + data->uCurFirmRev = get_firmware_rev(data); + + if ((data->uCurFirmRev == SSP_INVALID_REVISION) \ + || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { +#if STM_SHOULD_BE_IMPLEMENT + data->client->addr = BOOTLOADER_SLAVE_ADDR; + iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); + + if (iRet >= 0) { + pr_info("[SSP] ssp_load_fw_bootmode\n"); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } else { + pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", + data->uCurFirmRev); + data->client->addr = APP_SLAVE_ADDR; + data->uCurFirmRev = get_firmware_rev(data); + if (data->uCurFirmRev == SSP_INVALID_REVISION ||\ + data->uCurFirmRev == ERROR) { + pr_err("[SSP] MCU is not working, FW download failed\n"); + return FW_DL_STATE_FAIL; + } else if (data->uCurFirmRev != fw_revision) { + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + } +#endif + pr_err("[SSP] SSP_INVALID_REVISION\n"); + return FW_DL_STATE_NEED_TO_SCHEDULE; + } else { + if (data->uCurFirmRev != fw_revision) { + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + } + + return FW_DL_STATE_NONE; +} diff --git a/drivers/sensorhub/stm32f/ssp_i2c.c b/drivers/sensorhub/stm32f/ssp_i2c.c index 120d0d479102..2af47d9cb323 100755 --- a/drivers/sensorhub/stm32f/ssp_i2c.c +++ b/drivers/sensorhub/stm32f/ssp_i2c.c @@ -1,886 +1,897 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" - -#define LIMIT_DELAY_CNT 200 -#define RECEIVEBUFFERSIZE 12 -#define DEBUG_SHOW_DATA 0 - -static void clean_msg(struct ssp_msg *msg) { - if (msg->free_buffer) - kfree(msg->buffer); - kfree(msg); -} - -static int do_transfer(struct ssp_data *data, struct ssp_msg *msg, - struct completion *done, int timeout) { - int status = 0; - int iDelaycnt = 0; - bool msg_dead = false, ssp_down = false; - bool use_no_irq = msg->length == 0; - - msg->dead_hook = &msg_dead; - msg->dead = false; - msg->done = done; - - mutex_lock(&data->comm_mutex); - - gpio_set_value_cansleep(data->ap_int, 0); - while (gpio_get_value_cansleep(data->mcu_int2)) { - mdelay(3); - if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { - pr_err("[SSP]: %s exit1 - Time out!!\n", __func__); - gpio_set_value_cansleep(data->ap_int, 1); - status = -1; - goto exit; - } - } - - status = spi_write(data->spi, msg, 9) >= 0; - - if (status == 0) { - pr_err("[SSP]: %s spi_write fail!!\n", __func__); - gpio_set_value_cansleep(data->ap_int, 1); - status = -1; - goto exit; - } - - if (!use_no_irq) { - mutex_lock(&data->pending_mutex); - list_add_tail(&msg->list, &data->pending_list); - mutex_unlock(&data->pending_mutex); - } - - iDelaycnt = 0; - gpio_set_value_cansleep(data->ap_int, 1); - while (!gpio_get_value_cansleep(data->mcu_int2)) { - mdelay(3); - if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { - pr_err("[SSP]: %s exit2 - Time out!!\n", __func__); - status = -2; - goto exit; - } - } - -exit: - mutex_unlock(&data->comm_mutex); - - if (ssp_down) - pr_err("[SSP] : %s, ssp down", __func__); - - if (status == -1) { - data->uTimeOutCnt += ssp_down ? 0 : 1; - clean_msg(msg); - return status; - } - - if (status == 1 && done != NULL) - if (wait_for_completion_timeout(done, msecs_to_jiffies(timeout)) == 0) - status = -2; - - mutex_lock(&data->pending_mutex); - if (!msg_dead) { - msg->done = NULL; - msg->dead_hook = NULL; - - if (status != 1) - msg->dead = true; - if (status == -2) - data->uTimeOutCnt += ssp_down ? 0 : 1; - } - mutex_unlock(&data->pending_mutex); - - if (use_no_irq) - clean_msg(msg); - - return status; -} - -int ssp_spi_async(struct ssp_data *data, struct ssp_msg *msg) { - int status = 0; - - status = do_transfer(data, msg, NULL, 0); - - return status; -} - -int ssp_spi_sync(struct ssp_data *data, struct ssp_msg *msg, int timeout) { - DECLARE_COMPLETION_ONSTACK(done); - int status = 0; - - if (msg->length == 0) { - pr_err("[SSP]: %s length must not be 0\n", __func__); - clean_msg(msg); - return status; - } - - status = do_transfer(data, msg, &done, timeout); - - return status; -} - -int select_irq_msg(struct ssp_data *data) { - struct ssp_msg *msg, *n; - bool found = false; - u16 chLength = 0, msg_options = 0; - u8 msg_type = 0; - int iRet = 0; - char* buffer; - char chTempBuf[4] = { -1 }; - - iRet = spi_read(data->spi, chTempBuf, sizeof(chTempBuf)); - if (iRet < 0) { - pr_err("[SSP]: %s spi_read fail!!\n", __func__); - return ERROR; - } - - memcpy(&msg_options, &chTempBuf[0], 2); - msg_type = msg_options & SSP_SPI_MASK; - memcpy(&chLength, &chTempBuf[2], 2); - - switch (msg_type) { - case AP2HUB_READ: - case AP2HUB_WRITE: - mutex_lock(&data->pending_mutex); - if (!list_empty(&data->pending_list)) { - list_for_each_entry_safe(msg, n, &data->pending_list, list) - { - if (msg->options == msg_options) { - list_del(&msg->list); - found = true; - break; - } - } - - if (!found) { - pr_err("[SSP]: %s %d - Not match error\n", __func__, msg_options); - goto exit; - } - - if (msg->dead && !msg->free_buffer) { - msg->buffer = (char*) kzalloc(msg->length, GFP_KERNEL); - msg->free_buffer = 1; - } // For dead msg, make a temporary buffer to read. - - if (msg_type == AP2HUB_READ) - iRet = spi_read(data->spi, msg->buffer, msg->length); - if (msg_type == AP2HUB_WRITE) { - iRet = spi_write(data->spi, msg->buffer, msg->length); - - if (msg_options & AP2HUB_RETURN) { - msg->options = AP2HUB_READ | AP2HUB_RETURN; - msg->length = 1; - list_add_tail(&msg->list, &data->pending_list); - goto exit; - } - } - - if (msg->done != NULL && !completion_done(msg->done)) - complete(msg->done); - if (msg->dead_hook != NULL) - *(msg->dead_hook) = true; - - clean_msg(msg); - } else - pr_err("[SSP]List empty error(%d)\n", msg_type); - exit: - mutex_unlock(&data->pending_mutex); - break; - case HUB2AP_WRITE: - buffer = (char*) kzalloc(chLength, GFP_KERNEL); - if (buffer == NULL) { - pr_err("[SSP] %s, failed to alloc memory for buffer\n", __func__); - iRet = -ENOMEM; - break; - } - iRet = spi_read(data->spi, buffer, chLength); - parse_dataframe(data, buffer, chLength); - kfree(buffer); - break; - default: - pr_err("[SSP]No type error(%d)\n", msg_type); - break; - } - - if (iRet < 0) { - pr_err("[SSP]: %s - MSG2SSP_SSD error %d\n", __func__, iRet); - return ERROR; - } - - return SUCCESS; -} - -void clean_pending_list(struct ssp_data *data) { - struct ssp_msg *msg, *n; - mutex_lock(&data->pending_mutex); - list_for_each_entry_safe(msg, n, &data->pending_list, list) - { - list_del(&msg->list); - if (msg->done != NULL && !completion_done(msg->done)) - complete(msg->done); - if (msg->dead_hook != NULL) - *(msg->dead_hook) = true; - - clean_msg(msg); - } - mutex_unlock(&data->pending_mutex); -} - -int ssp_send_cmd(struct ssp_data *data, char command, int arg) -{ - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = command; - msg->length = 0; - msg->options = AP2HUB_WRITE; - msg->data = arg; - msg->free_buffer = 0; - - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - command 0x%x failed %d\n", - __func__, command, iRet); - return ERROR; - } - - data->uInstFailCnt = 0; - ssp_dbg("[SSP]: %s - command 0x%x %d\n", __func__, command, arg); - - return SUCCESS; -} - -int send_instruction(struct ssp_data *data, u8 uInst, - u8 uSensorType, u8 *uSendBuf, u8 uLength) -{ - char command; - int iRet = 0; - struct ssp_msg *msg; - - if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { - pr_err("[SSP] %s - Skip Inst! DL state = %d\n", - __func__, data->fw_dl_state); - return SUCCESS; - } else if ((!(data->uSensorState & (1 << uSensorType))) - && (uInst <= CHANGE_DELAY)) { - pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", - __func__, uSensorType); - return FAIL; - } - - switch (uInst) { - case REMOVE_SENSOR: - command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; - break; - case ADD_SENSOR: - command = MSG2SSP_INST_BYPASS_SENSOR_ADD; - break; - case CHANGE_DELAY: - command = MSG2SSP_INST_CHANGE_DELAY; - break; - case GO_SLEEP: - command = MSG2SSP_AP_STATUS_SLEEP; - data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; - break; - case REMOVE_LIBRARY: - command = MSG2SSP_INST_LIBRARY_REMOVE; - break; - case ADD_LIBRARY: - command = MSG2SSP_INST_LIBRARY_ADD; - break; - default: - command = uInst; - break; - } - - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - if (msg == NULL) { - pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); - iRet = -ENOMEM; - return iRet; - } - msg->cmd = command; - msg->length = uLength + 1; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(uLength + 1, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = uSensorType; - memcpy(&msg->buffer[1], uSendBuf, uLength); - - ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = 0x%x, data = %u\n", - __func__, command, uSensorType, msg->buffer[1]); - - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); - return ERROR; - } - - data->uInstFailCnt = 0; - - return iRet; -} - -int send_instruction_sync(struct ssp_data *data, u8 uInst, - u8 uSensorType, u8 *uSendBuf, u8 uLength) -{ - char command; - int iRet = 0; - char buffer[10] = { 0, }; - struct ssp_msg *msg; - - if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { - pr_err("[SSP] %s - Skip Inst! DL state = %d\n", - __func__, data->fw_dl_state); - return SUCCESS; - } else if ((!(data->uSensorState & (1 << uSensorType))) - && (uInst <= CHANGE_DELAY)) { - pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", - __func__, uSensorType); - return FAIL; - } - - switch (uInst) { - case REMOVE_SENSOR: - command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; - break; - case ADD_SENSOR: - command = MSG2SSP_INST_BYPASS_SENSOR_ADD; - break; - case CHANGE_DELAY: - command = MSG2SSP_INST_CHANGE_DELAY; - break; - case GO_SLEEP: - command = MSG2SSP_AP_STATUS_SLEEP; - data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; - break; - case REMOVE_LIBRARY: - command = MSG2SSP_INST_LIBRARY_REMOVE; - break; - case ADD_LIBRARY: - command = MSG2SSP_INST_LIBRARY_ADD; - break; - default: - command = uInst; - break; - } - - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = command; - msg->length = uLength + 1; - msg->options = AP2HUB_WRITE | AP2HUB_RETURN; - msg->buffer = buffer; - msg->free_buffer = 0; - - msg->buffer[0] = uSensorType; - memcpy(&msg->buffer[1], uSendBuf, uLength); - - ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = %u, data = %u\n", - __func__, command, uSensorType, msg->buffer[0]); - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); - return ERROR; - } - - data->uInstFailCnt = 0; - - return buffer[0]; -} - -int flush(struct ssp_data *data, u8 uSensorType) { - int iRet = 0; - char buffer = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_MCU_BATCH_FLUSH; - msg->length = 1; - msg->options = AP2HUB_READ; - msg->data = uSensorType; - msg->buffer = &buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - fail %d\n", __func__, iRet); - return ERROR; - } - - ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, - buffer); - - return buffer ? 0 : -1; -} - -int get_batch_count(struct ssp_data *data, u8 uSensorType) { - int iRet = 0; - s32 result = 0; - char buffer[4] = { 0, }; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_MCU_BATCH_COUNT; - msg->length = 4; - msg->options = AP2HUB_READ; - msg->data = uSensorType; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - fail %d\n", __func__, iRet); - return ERROR; - } - - memcpy(&result, buffer, 4); - - ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, - result); - - return result; -} - -int get_chipid(struct ssp_data *data) -{ - int iRet, iReties = 0; - char buffer = 0; - struct ssp_msg *msg; - -retries: - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - if (msg == NULL) { - pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); - iRet = -ENOMEM; - return iRet; - } - msg->cmd = MSG2SSP_AP_WHOAMI; - msg->length = 1; - msg->options = AP2HUB_READ; - msg->buffer = &buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (buffer != DEVICE_ID && iReties++ < 2) { - mdelay(5); - pr_err("[SSP] %s - get chip ID retry\n", __func__); - goto retries; - } - - if (iRet == SUCCESS) - return buffer; - - pr_err("[SSP] %s - get chip ID failed %d\n", __func__, iRet); - return ERROR; -} - -int set_sensor_position(struct ssp_data *data) -{ - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_SENSOR_FORMATION; - msg->length = 3; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(3, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = data->accel_position; - msg->buffer[1] = data->accel_position; - msg->buffer[2] = data->mag_position; - - pr_info("[SSP] Sensor Posision A : %u, G : %u, M: %u\n", - data->accel_position, data->accel_position, data->mag_position); - - iRet = ssp_spi_async(data, msg); - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - iRet = ERROR; - } - - return iRet; -} - -#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) -int set_sensor_tilt(struct ssp_data *data) -{ - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_SENSOR_TILT; - msg->length = 1; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(1, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = data->rot_direction; - - iRet = ssp_spi_async(data, msg); - - pr_info("[SSP] Sensor Position tilt : %u\n", - data->rot_direction); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - iRet = ERROR; - } - - return iRet; -} -#endif - -void set_proximity_threshold(struct ssp_data *data, - unsigned int uData1, unsigned int uData2) -{ - int iRet = 0; - - struct ssp_msg *msg; - - if (!(data->uSensorState & (1<uSensorState); - return; - } - - msg= kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_SENSOR_PROXTHRESHOLD; - msg->length = 4; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(4, GFP_KERNEL); - msg->free_buffer = 1; - - pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); - - msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); - msg->buffer[1] = (char) uData1; - msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); - msg->buffer[3] = (char) uData2; - - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - SENSOR_PROXTHRESHOLD CMD fail %d\n", - __func__, iRet); - return; - } - - data->uInstFailCnt = 0; - pr_info("[SSP]: Proximity Threshold - %u, %u\n", uData1, uData2); -} - -void set_proximity_barcode_enable(struct ssp_data *data, bool bEnable) -{ - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_SENSOR_BARCODE_EMUL; - msg->length = 1; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(1, GFP_KERNEL); - msg->free_buffer = 1; - - data->bBarcodeEnabled = bEnable; - msg->buffer[0] = bEnable; - - iRet = ssp_spi_async(data, msg); - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - SENSOR_BARCODE_EMUL CMD fail %d\n", - __func__, iRet); - return; - } - - data->uInstFailCnt = 0; - pr_info("[SSP] Proximity Barcode En : %u\n", bEnable); -} - -void set_gesture_current(struct ssp_data *data, unsigned char uData1) -{ - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_SENSOR_GESTURE_CURRENT; - msg->length = 1; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(1, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = uData1; - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - SENSOR_GESTURE_CURRENT CMD fail %d\n", __func__, - iRet); - return; - } - - data->uInstFailCnt = 0; - pr_info("[SSP]: Gesture Current Setting - %u\n", uData1); -} - -unsigned int get_sensor_scanning_info(struct ssp_data *data) -{ - int iRet, iReties = 0; - unsigned int iSensorState = 0; - char buffer[4] = { 0, }; - struct ssp_msg *msg; - -retries: - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - if (msg == NULL) { - pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); - iRet = -ENOMEM; - return iRet; - } - msg->cmd = MSG2SSP_AP_SENSOR_SCANNING; - msg->length = 4; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP] %s -fail to get_sensor_scanning_info %d\n", - __func__, iRet); - - if(iReties++ < 2) - { - pr_err("[SSP] %s get_sensor_scanning_info fail retry\n", - __func__); - - mdelay(5); - goto retries; - } - - return 0; - } - else - { - iSensorState = (unsigned int)(buffer[0] << 24 | buffer[1] << 16 | buffer[2] << 8 | buffer[3] ); - - // exception for abnormail sensorstatus - if(iReties++ < 2 && (iSensorState < 0x10000 || (iSensorState>>5 & 0x01) != 0x01 || (iSensorState & 0x03) != 0x03)) - { - pr_err("[SSP] %s get_sensor_scanning_info val retry %d\n", - __func__, iSensorState); - - mdelay(5); - goto retries; - } - } - - pr_err("[SSP]: %s - %d %d %d %d\n", __func__, buffer[0] ,buffer[1],buffer[2],buffer[3]); - return iSensorState; -} - -unsigned int get_firmware_rev(struct ssp_data *data) -{ - unsigned int uRev = 99999; - int iRet; - char buffer[3] = { 0, }; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_FIRMWARE_REV; - msg->length = 3; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - else - uRev = ((unsigned int)buffer[0] << 16) - | ((unsigned int)buffer[1] << 8) | buffer[2]; - return uRev; -} - -int get_fuserom_data(struct ssp_data *data) -{ - int iRet = 0; - char buffer[3] = { 0, }; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_FUSEROM; - msg->length = 3; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet) { - data->uFuseRomData[0] = buffer[0]; - data->uFuseRomData[1] = buffer[1]; - data->uFuseRomData[2] = buffer[2]; - } else { - data->uFuseRomData[0] = 0; - data->uFuseRomData[1] = 0; - data->uFuseRomData[2] = 0; - return FAIL; - } - - pr_info("[SSP] FUSE ROM Data %d , %d, %d\n", data->uFuseRomData[0], - data->uFuseRomData[1], data->uFuseRomData[2]); - - return SUCCESS; -} - -int set_big_data_start(struct ssp_data *data, u8 type, u32 length) { - int iRet = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_START_BIG_DATA; - msg->length = 5; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(5, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = type; - memcpy(&msg->buffer[1], &length, 4); - - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - iRet = ERROR; - } - - return iRet; -} - -int sanity_check(struct ssp_data *data) { - int iRet; - char buffer = 0; - - struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_MCU_SANITY_CHECK; - msg->length = 1; - msg->options = AP2HUB_READ; - msg->buffer = &buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - iRet = ERROR; - } - - if (iRet == SUCCESS && buffer != MCU_IS_SANE) { - if (initialize_mcu(data) > 0) { - sync_sensor_state(data); - ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); - pr_err("[SSP]: %s %d\n", __func__, iRet); - if( data->uLastAPState!=0 ) - ssp_send_cmd(data, data->uLastAPState, 0); - if( data->uLastResumeState != 0) - ssp_send_cmd(data, data->uLastResumeState, 0); - } - return 1; - } else - return 0; -} - -int set_time(struct ssp_data *data) { - int iRet; - struct ssp_msg *msg; - struct timespec ts; - struct rtc_time tm; - - getnstimeofday(&ts); - rtc_time_to_tm(ts.tv_sec, &tm); - pr_info("[SSP]: %s %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, - tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, - tm.tm_sec, ts.tv_nsec); - - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_MCU_SET_TIME; - msg->length = 12; - msg->options = AP2HUB_WRITE; - msg->buffer = (char*) kzalloc(12, GFP_KERNEL); - msg->free_buffer = 1; - - msg->buffer[0] = tm.tm_hour; - msg->buffer[1] = tm.tm_min; - msg->buffer[2] = tm.tm_sec; - msg->buffer[3] = tm.tm_hour > 11 ? 64 : 0; - msg->buffer[4] = tm.tm_wday; - msg->buffer[5] = tm.tm_mon + 1; - msg->buffer[6] = tm.tm_mday; - msg->buffer[7] = tm.tm_year % 100; - memcpy(&msg->buffer[8], &ts.tv_nsec, 4); - - iRet = ssp_spi_async(data, msg); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); - iRet = ERROR; - } - - return iRet; -} - -int get_time(struct ssp_data *data) { - int iRet; - char buffer[12] = { 0, }; - struct ssp_msg *msg; - struct timespec ts; - struct rtc_time tm; - - getnstimeofday(&ts); - rtc_time_to_tm(ts.tv_sec, &tm); - pr_info("[SSP]: %s ap %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, - tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, - tm.tm_sec, ts.tv_nsec); - - msg = kzalloc(sizeof(*msg), GFP_KERNEL); - msg->cmd = MSG2SSP_AP_MCU_GET_TIME; - msg->length = 12; - msg->options = AP2HUB_READ; - msg->buffer = buffer; - msg->free_buffer = 0; - - iRet = ssp_spi_sync(data, msg, 1000); - - if (iRet != SUCCESS) { - pr_err("[SSP]: %s - i2c failed %d\n", __func__, iRet); - return 0; - } - - tm.tm_hour = buffer[0]; - tm.tm_min = buffer[1]; - tm.tm_sec = buffer[2]; - tm.tm_mon = msg->buffer[5] - 1; - tm.tm_mday = buffer[6]; - tm.tm_year = buffer[7] + 100; - rtc_tm_to_time(&tm, &ts.tv_sec); - memcpy(&ts.tv_nsec, &msg->buffer[8], 4); - - rtc_time_to_tm(ts.tv_sec, &tm); - pr_info("[SSP]: %s mcu %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, - tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, - tm.tm_sec, ts.tv_nsec); - - return iRet; -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define LIMIT_DELAY_CNT 200 +#define RECEIVEBUFFERSIZE 12 +#define DEBUG_SHOW_DATA 0 + +static void clean_msg(struct ssp_msg *msg) { + if (msg->free_buffer) + kfree(msg->buffer); + kfree(msg); +} + +static int do_transfer(struct ssp_data *data, struct ssp_msg *msg, + struct completion *done, int timeout) { + int status = 0; + int iDelaycnt = 0; + bool msg_dead = false, ssp_down = false; + bool use_no_irq = msg->length == 0; + + msg->dead_hook = &msg_dead; + msg->dead = false; + msg->done = done; + + mutex_lock(&data->comm_mutex); + + gpio_set_value_cansleep(data->ap_int, 0); + while (gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit1 - Time out!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + } + + status = spi_write(data->spi, msg, 9) >= 0; + + if (status == 0) { + pr_err("[SSP]: %s spi_write fail!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + + if (!use_no_irq) { + mutex_lock(&data->pending_mutex); + list_add_tail(&msg->list, &data->pending_list); + mutex_unlock(&data->pending_mutex); + } + + iDelaycnt = 0; + gpio_set_value_cansleep(data->ap_int, 1); + while (!gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit2 - Time out!!\n", __func__); + status = -2; + goto exit; + } + } + +exit: + mutex_unlock(&data->comm_mutex); + + if (ssp_down) + pr_err("[SSP] : %s, ssp down", __func__); + + if (status == -1) { + data->uTimeOutCnt += ssp_down ? 0 : 1; + clean_msg(msg); + return status; + } + + if (status == 1 && done != NULL) + if (wait_for_completion_timeout(done, msecs_to_jiffies(timeout)) == 0) + status = -2; + + mutex_lock(&data->pending_mutex); + if (!msg_dead) { + msg->done = NULL; + msg->dead_hook = NULL; + + if (status != 1) + msg->dead = true; + if (status == -2) + data->uTimeOutCnt += ssp_down ? 0 : 1; + } + mutex_unlock(&data->pending_mutex); + + if (use_no_irq) + clean_msg(msg); + + return status; +} + +int ssp_spi_async(struct ssp_data *data, struct ssp_msg *msg) { + int status = 0; + + status = do_transfer(data, msg, NULL, 0); + + return status; +} + +int ssp_spi_sync(struct ssp_data *data, struct ssp_msg *msg, int timeout) { + DECLARE_COMPLETION_ONSTACK(done); + int status = 0; + + if (msg->length == 0) { + pr_err("[SSP]: %s length must not be 0\n", __func__); + clean_msg(msg); + return status; + } + + status = do_transfer(data, msg, &done, timeout); + + return status; +} + +int select_irq_msg(struct ssp_data *data) { + struct ssp_msg *msg, *n; + bool found = false; + u16 chLength = 0, msg_options = 0; + u8 msg_type = 0; + int iRet = 0; + char* buffer; + char chTempBuf[4] = { -1 }; + + iRet = spi_read(data->spi, chTempBuf, sizeof(chTempBuf)); + if (iRet < 0) { + pr_err("[SSP]: %s spi_read fail!!\n", __func__); + return ERROR; + } + + memcpy(&msg_options, &chTempBuf[0], 2); + msg_type = msg_options & SSP_SPI_MASK; + memcpy(&chLength, &chTempBuf[2], 2); + + switch (msg_type) { + case AP2HUB_READ: + case AP2HUB_WRITE: + mutex_lock(&data->pending_mutex); + if (!list_empty(&data->pending_list)) { + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + if (msg->options == msg_options) { + list_del(&msg->list); + found = true; + break; + } + } + + if (!found) { + pr_err("[SSP]: %s %d - Not match error\n", __func__, msg_options); + goto exit; + } + + if (msg->dead && !msg->free_buffer) { + msg->buffer = (char*) kzalloc(msg->length, GFP_KERNEL); + msg->free_buffer = 1; + } // For dead msg, make a temporary buffer to read. + + if (msg_type == AP2HUB_READ) + iRet = spi_read(data->spi, msg->buffer, msg->length); + if (msg_type == AP2HUB_WRITE) { + iRet = spi_write(data->spi, msg->buffer, msg->length); + + if (msg_options & AP2HUB_RETURN) { + msg->options = AP2HUB_READ | AP2HUB_RETURN; + msg->length = 1; + list_add_tail(&msg->list, &data->pending_list); + goto exit; + } + } + + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } else + pr_err("[SSP]List empty error(%d)\n", msg_type); + exit: + mutex_unlock(&data->pending_mutex); + break; + case HUB2AP_WRITE: + buffer = (char*) kzalloc(chLength, GFP_KERNEL); + if (buffer == NULL) { + pr_err("[SSP] %s, failed to alloc memory for buffer\n", __func__); + iRet = -ENOMEM; + break; + } + iRet = spi_read(data->spi, buffer, chLength); + parse_dataframe(data, buffer, chLength); + kfree(buffer); + break; + default: + pr_err("[SSP]No type error(%d)\n", msg_type); + break; + } + + if (iRet < 0) { + pr_err("[SSP]: %s - MSG2SSP_SSD error %d\n", __func__, iRet); + return ERROR; + } + + return SUCCESS; +} + +void clean_pending_list(struct ssp_data *data) { + struct ssp_msg *msg, *n; + mutex_lock(&data->pending_mutex); + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + list_del(&msg->list); + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } + mutex_unlock(&data->pending_mutex); +} + +int ssp_send_cmd(struct ssp_data *data, char command, int arg) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = 0; + msg->options = AP2HUB_WRITE; + msg->data = arg; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - command 0x%x failed %d\n", + __func__, command, iRet); + return ERROR; + } + + data->uInstFailCnt = 0; + ssp_dbg("[SSP]: %s - command 0x%x %d\n", __func__, command, arg); + + return SUCCESS; +} + +int send_instruction(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + iRet = -ENOMEM; + return iRet; + } + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(uLength + 1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + + ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = 0x%x, data = %u\n", + __func__, command, uSensorType, msg->buffer[1]); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + data->uInstFailCnt = 0; + + return iRet; +} + +int send_instruction_sync(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + char buffer[10] = { 0, }; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE | AP2HUB_RETURN; + msg->buffer = buffer; + msg->free_buffer = 0; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + + ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = %u, data = %u\n", + __func__, command, uSensorType, msg->buffer[0]); + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + data->uInstFailCnt = 0; + + return buffer[0]; +} + +int flush(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + char buffer = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_FLUSH; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = &buffer; + msg->free_buffer = 0; + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, + uSensorType, buffer); + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + return buffer ? 0 : -1; +} + +int get_batch_count(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + s32 result = 0; + char buffer[4] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_COUNT; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + memcpy(&result, buffer, 4); + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, + result); + + return result; +} + +int get_chipid(struct ssp_data *data) +{ + int iRet, iReties = 0; + char buffer = 0; + struct ssp_msg *msg; + +retries: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + iRet = -ENOMEM; + return iRet; + } + msg->cmd = MSG2SSP_AP_WHOAMI; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (buffer != DEVICE_ID && iReties++ < 2) { + mdelay(5); + pr_err("[SSP] %s - get chip ID retry\n", __func__); + goto retries; + } + + if (iRet == SUCCESS) + return buffer; + + pr_err("[SSP] %s - get chip ID failed %d\n", __func__, iRet); + return ERROR; +} + +int set_sensor_position(struct ssp_data *data) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_FORMATION; + msg->length = 3; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(3, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = data->accel_position; + msg->buffer[1] = data->accel_position; + msg->buffer[2] = data->mag_position; + + pr_info("[SSP] Sensor Posision A : %u, G : %u, M: %u\n", + data->accel_position, data->accel_position, data->mag_position); + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +#if defined(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) +int set_sensor_tilt(struct ssp_data *data) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_TILT; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = data->rot_direction; + + iRet = ssp_spi_async(data, msg); + + pr_info("[SSP] Sensor Position tilt : %u\n", + data->rot_direction); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} +#endif + +void set_proximity_threshold(struct ssp_data *data, + unsigned int uData1, unsigned int uData2) +{ + int iRet = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1<uSensorState); + return; + } + + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_PROXTHRESHOLD; +#if defined (CONFIG_SENSORS_SSP_MAX88920) + msg->length = 2; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(2, GFP_KERNEL); + msg->free_buffer = 1; + + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); + + msg->buffer[0] = (unsigned char) uData1; + msg->buffer[1] = (unsigned char) uData2; +#else + msg->length = 4; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(4, GFP_KERNEL); + msg->free_buffer = 1; + + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); + + msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); + msg->buffer[1] = (char) uData1; + msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); + msg->buffer[3] = (char) uData2; +#endif + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOLD CMD fail %d\n", + __func__, iRet); + return; + } + + data->uInstFailCnt = 0; + pr_info("[SSP]: Proximity Threshold - %u, %u\n", uData1, uData2); +} + +void set_proximity_barcode_enable(struct ssp_data *data, bool bEnable) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_BARCODE_EMUL; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + data->bBarcodeEnabled = bEnable; + msg->buffer[0] = bEnable; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_BARCODE_EMUL CMD fail %d\n", + __func__, iRet); + return; + } + + data->uInstFailCnt = 0; + pr_info("[SSP] Proximity Barcode En : %u\n", bEnable); +} + +void set_gesture_current(struct ssp_data *data, unsigned char uData1) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_GESTURE_CURRENT; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uData1; + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_GESTURE_CURRENT CMD fail %d\n", __func__, + iRet); + return; + } + + data->uInstFailCnt = 0; + pr_info("[SSP]: Gesture Current Setting - %u\n", uData1); +} + +unsigned int get_sensor_scanning_info(struct ssp_data *data) +{ + int iRet, iReties = 0; + unsigned int iSensorState = 0; + char buffer[4] = { 0, }; + struct ssp_msg *msg; + +retries: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + iRet = -ENOMEM; + return iRet; + } + msg->cmd = MSG2SSP_AP_SENSOR_SCANNING; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP] %s -fail to get_sensor_scanning_info %d\n", + __func__, iRet); + + if(iReties++ < 2) + { + pr_err("[SSP] %s get_sensor_scanning_info fail retry\n", + __func__); + + mdelay(5); + goto retries; + } + + return 0; + } + else + { + iSensorState = (unsigned int)(buffer[0] << 24 | buffer[1] << 16 | buffer[2] << 8 | buffer[3] ); + + // exception for abnormail sensorstatus + if(iReties++ < 2 && (iSensorState < 0x10000 || (iSensorState>>5 & 0x01) != 0x01 || (iSensorState & 0x03) != 0x03)) + { + pr_err("[SSP] %s get_sensor_scanning_info val retry %d\n", + __func__, iSensorState); + + mdelay(5); + goto retries; + } + } + + pr_err("[SSP]: %s - %d %d %d %d\n", __func__, buffer[0] ,buffer[1],buffer[2],buffer[3]); + return iSensorState; +} + +unsigned int get_firmware_rev(struct ssp_data *data) +{ + unsigned int uRev = 99999; + int iRet; + char buffer[3] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FIRMWARE_REV; + msg->length = 3; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + else + uRev = ((unsigned int)buffer[0] << 16) + | ((unsigned int)buffer[1] << 8) | buffer[2]; + return uRev; +} + +int get_fuserom_data(struct ssp_data *data) +{ + int iRet = 0; + char buffer[3] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FUSEROM; + msg->length = 3; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet) { + data->uFuseRomData[0] = buffer[0]; + data->uFuseRomData[1] = buffer[1]; + data->uFuseRomData[2] = buffer[2]; + } else { + data->uFuseRomData[0] = 0; + data->uFuseRomData[1] = 0; + data->uFuseRomData[2] = 0; + return FAIL; + } + + pr_info("[SSP] FUSE ROM Data %d , %d, %d\n", data->uFuseRomData[0], + data->uFuseRomData[1], data->uFuseRomData[2]); + + return SUCCESS; +} + +int set_big_data_start(struct ssp_data *data, u8 type, u32 length) { + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_START_BIG_DATA; + msg->length = 5; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(5, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = type; + memcpy(&msg->buffer[1], &length, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int sanity_check(struct ssp_data *data) { + int iRet; + char buffer = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SANITY_CHECK; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + if (iRet == SUCCESS && buffer != MCU_IS_SANE) { + if (initialize_mcu(data) > 0) { + sync_sensor_state(data); + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); + pr_err("[SSP]: %s %d\n", __func__, iRet); + if( data->uLastAPState!=0 ) + ssp_send_cmd(data, data->uLastAPState, 0); + if( data->uLastResumeState != 0) + ssp_send_cmd(data, data->uLastResumeState, 0); + } + return 1; + } else + return 0; +} + +int set_time(struct ssp_data *data) { + int iRet; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_TIME; + msg->length = 12; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(12, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = tm.tm_hour; + msg->buffer[1] = tm.tm_min; + msg->buffer[2] = tm.tm_sec; + msg->buffer[3] = tm.tm_hour > 11 ? 64 : 0; + msg->buffer[4] = tm.tm_wday; + msg->buffer[5] = tm.tm_mon + 1; + msg->buffer[6] = tm.tm_mday; + msg->buffer[7] = tm.tm_year % 100; + memcpy(&msg->buffer[8], &ts.tv_nsec, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int get_time(struct ssp_data *data) { + int iRet; + char buffer[12] = { 0, }; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s ap %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_GET_TIME; + msg->length = 12; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c failed %d\n", __func__, iRet); + return 0; + } + + tm.tm_hour = buffer[0]; + tm.tm_min = buffer[1]; + tm.tm_sec = buffer[2]; + tm.tm_mon = msg->buffer[5] - 1; + tm.tm_mday = buffer[6]; + tm.tm_year = buffer[7] + 100; + rtc_tm_to_time(&tm, &ts.tv_sec); + memcpy(&ts.tv_nsec, &msg->buffer[8], 4); + + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s mcu %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + return iRet; +} diff --git a/drivers/sensorhub/stm32f/ssp_input.c b/drivers/sensorhub/stm32f/ssp_input.c index 8cf47cb62295..c2e2513cb704 100755 --- a/drivers/sensorhub/stm32f/ssp_input.c +++ b/drivers/sensorhub/stm32f/ssp_input.c @@ -1,1210 +1,1323 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" -#include "../../staging/iio/iio.h" -#include "../../staging/iio/events.h" -#include "../../staging/iio/sysfs.h" -#include "../../staging/iio/buffer.h" -#include "../../staging/iio/types.h" - - -/*************************************************************************/ -/* SSP Kernel -> HAL input evnet function */ -/*************************************************************************/ - -#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ -#define IIO_BUFFER_6_BYTES 14 -#define IIO_BUFFER_1_BYTES 9 -#define IIO_BUFFER_17_BYTES 25 - -/* data header defines */ - -static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, - u64 t, int *q) -{ - u8 buf[IIO_BUFFER_17_BYTES]; - - int i; - - for (i = 0; i < 4; i++) - memcpy(buf + 4 * i, &q[i], sizeof(q[i])); - buf[16] = (u8)q[5]; - memcpy(buf + 17, &t, sizeof(t)); - iio_push_to_buffer(indio_dev->buffer, buf, 0); - - return 0; -} - -static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, - int *q) -{ - u8 buf[IIO_BUFFER_12_BYTES]; - int i; - - for (i = 0; i < 3; i++) - memcpy(buf + 4 * i, &q[i], sizeof(q[i])); - memcpy(buf + 12, &t, sizeof(t)); - iio_push_to_buffer(indio_dev->buffer, buf, 0); - - return 0; -} - -static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, - u64 t, s16 *d) -{ - u8 buf[IIO_BUFFER_6_BYTES]; - int i; - - for (i = 0; i < 3; i++) - memcpy(buf + i * 2, &d[i], sizeof(d[i])); - - memcpy(buf + 6, &t, sizeof(t)); - iio_push_to_buffer(indio_dev->buffer, buf, 0); - - return 0; -} - -static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, - u64 t, u8 *d) -{ - u8 buf[IIO_BUFFER_1_BYTES]; - - memcpy(buf, d, sizeof(u8)); - memcpy(buf + 1, &t, sizeof(t)); - iio_push_to_buffer(indio_dev->buffer, buf, 0); - - return 0; -} - - -void convert_acc_data(s16 *iValue) -{ - if (*iValue > MAX_ACCEL_2G) - *iValue = ((MAX_ACCEL_4G - *iValue)) * (-1); -} - -void report_acc_data(struct ssp_data *data, struct sensor_value *accdata) -{ - s16 accel_buf[3]; - data->buf[ACCELEROMETER_SENSOR].x = accdata->x; - data->buf[ACCELEROMETER_SENSOR].y = accdata->y; - data->buf[ACCELEROMETER_SENSOR].z = accdata->z; - - accel_buf[0] = data->buf[ACCELEROMETER_SENSOR].x; - accel_buf[1] = data->buf[ACCELEROMETER_SENSOR].y; - accel_buf[2] = data->buf[ACCELEROMETER_SENSOR].z; - ssp_push_6bytes_buffer(data->accel_indio_dev, accdata->timestamp, - accel_buf); -} - -void report_meta_data(struct ssp_data *data, struct sensor_value *s) -{ - input_report_rel(data->meta_input_dev, REL_DIAL, s->meta_data.what); - input_report_rel(data->meta_input_dev, REL_HWHEEL, s->meta_data.sensor + 1); - input_sync(data->meta_input_dev); -} - -void report_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) -{ - int lTemp[3] = {0,}; - data->buf[GYROSCOPE_SENSOR].x = gyrodata->x; - data->buf[GYROSCOPE_SENSOR].y = gyrodata->y; - data->buf[GYROSCOPE_SENSOR].z = gyrodata->z; - - if (data->uGyroDps == GYROSCOPE_DPS500) { - lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; - lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; - lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; - } else if (data->uGyroDps == GYROSCOPE_DPS250) { - lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x >> 1; - lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y >> 1; - lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z >> 1; - } else if (data->uGyroDps == GYROSCOPE_DPS2000) { - lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x << 2; - lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y << 2; - lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z << 2; - } else { - lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; - lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; - lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; - } - - ssp_push_12bytes_buffer(data->gyro_indio_dev, gyrodata->timestamp, - lTemp); -} - -void report_mag_data(struct ssp_data *data, struct sensor_value *magdata) -{ - data->buf[GEOMAGNETIC_SENSOR].cal_x = magdata->cal_x; - data->buf[GEOMAGNETIC_SENSOR].cal_y = magdata->cal_y; - data->buf[GEOMAGNETIC_SENSOR].cal_z = magdata->cal_z; - data->buf[GEOMAGNETIC_SENSOR].accuracy = magdata->accuracy; - - - input_report_rel(data->mag_input_dev, REL_RX, - data->buf[GEOMAGNETIC_SENSOR].cal_x); - input_report_rel(data->mag_input_dev, REL_RY, - data->buf[GEOMAGNETIC_SENSOR].cal_y); - input_report_rel(data->mag_input_dev, REL_RZ, - data->buf[GEOMAGNETIC_SENSOR].cal_z); - input_report_rel(data->mag_input_dev, REL_HWHEEL, - data->buf[GEOMAGNETIC_SENSOR].accuracy + 1); - input_sync(data->mag_input_dev); -} - -void report_uncalib_mag_data(struct ssp_data *data, struct sensor_value *magdata) -{ - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x = magdata->uncal_x; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y = magdata->uncal_y; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z = magdata->uncal_z; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x = magdata->offset_x; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y = magdata->offset_y; - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z = magdata->offset_z; - - input_report_rel(data->uncalib_mag_input_dev, REL_RX, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x); - input_report_rel(data->uncalib_mag_input_dev, REL_RY, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y); - input_report_rel(data->uncalib_mag_input_dev, REL_RZ, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z); - input_report_rel(data->uncalib_mag_input_dev, REL_HWHEEL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x); - input_report_rel(data->uncalib_mag_input_dev, REL_DIAL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y); - input_report_rel(data->uncalib_mag_input_dev, REL_WHEEL, - data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z); - input_sync(data->uncalib_mag_input_dev); -} - -void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) -{ - data->buf[GYRO_UNCALIB_SENSOR].uncal_x = gyrodata->uncal_x; - data->buf[GYRO_UNCALIB_SENSOR].uncal_y = gyrodata->uncal_y; - data->buf[GYRO_UNCALIB_SENSOR].uncal_z = gyrodata->uncal_z; - data->buf[GYRO_UNCALIB_SENSOR].offset_x = gyrodata->offset_x; - data->buf[GYRO_UNCALIB_SENSOR].offset_y = gyrodata->offset_y; - data->buf[GYRO_UNCALIB_SENSOR].offset_z = gyrodata->offset_z; - - input_report_rel(data->uncalib_gyro_input_dev, REL_X, - data->buf[GYRO_UNCALIB_SENSOR].uncal_x); - input_report_rel(data->uncalib_gyro_input_dev, REL_Y, - data->buf[GYRO_UNCALIB_SENSOR].uncal_y); - input_report_rel(data->uncalib_gyro_input_dev, REL_Z, - data->buf[GYRO_UNCALIB_SENSOR].uncal_z); - input_report_rel(data->uncalib_gyro_input_dev, REL_RX, - data->buf[GYRO_UNCALIB_SENSOR].offset_x); - input_report_rel(data->uncalib_gyro_input_dev, REL_RY, - data->buf[GYRO_UNCALIB_SENSOR].offset_y); - input_report_rel(data->uncalib_gyro_input_dev, REL_RZ, - data->buf[GYRO_UNCALIB_SENSOR].offset_z); - input_sync(data->uncalib_gyro_input_dev); -} - -void report_sig_motion_data(struct ssp_data *data, - struct sensor_value *sig_motion_data) -{ - data->buf[SIG_MOTION_SENSOR].sig_motion = sig_motion_data->sig_motion; - - input_report_rel(data->sig_motion_input_dev, REL_MISC, - data->buf[SIG_MOTION_SENSOR].sig_motion); - input_sync(data->sig_motion_input_dev); -} - -void report_rot_data(struct ssp_data *data, struct sensor_value *rotdata) -{ - int rot_buf[5]; - data->buf[ROTATION_VECTOR].quat_a = rotdata->quat_a; - data->buf[ROTATION_VECTOR].quat_b = rotdata->quat_b; - data->buf[ROTATION_VECTOR].quat_c = rotdata->quat_c; - data->buf[ROTATION_VECTOR].quat_d = rotdata->quat_d; - data->buf[ROTATION_VECTOR].acc_rot = rotdata->acc_rot; - rot_buf[0] = rotdata->quat_a; - rot_buf[1] = rotdata->quat_b; - rot_buf[2] = rotdata->quat_c; - rot_buf[3] = rotdata->quat_d; - rot_buf[4] = rotdata->acc_rot; - ssp_push_17bytes_buffer(data->rot_indio_dev, rotdata->timestamp, - rot_buf); -} - -void report_game_rot_data(struct ssp_data *data, struct sensor_value *grotdata) -{ - int rot_buf[5]; - data->buf[GAME_ROTATION_VECTOR].quat_a = grotdata->quat_a; - data->buf[GAME_ROTATION_VECTOR].quat_b = grotdata->quat_b; - data->buf[GAME_ROTATION_VECTOR].quat_c = grotdata->quat_c; - data->buf[GAME_ROTATION_VECTOR].quat_d = grotdata->quat_d; - data->buf[GAME_ROTATION_VECTOR].acc_rot = grotdata->acc_rot; - - rot_buf[0] = grotdata->quat_a; - rot_buf[1] = grotdata->quat_b; - rot_buf[2] = grotdata->quat_c; - rot_buf[3] = grotdata->quat_d; - rot_buf[4] = grotdata->acc_rot; - ssp_push_17bytes_buffer(data->game_rot_indio_dev, grotdata->timestamp, - rot_buf); -} - -void report_gesture_data(struct ssp_data *data, struct sensor_value *gesdata) -{ - int i = 0; - for (i=0; i<19; i++) { - data->buf[GESTURE_SENSOR].data[i] = gesdata->data[i]; - } - - input_report_abs(data->gesture_input_dev, - ABS_X, data->buf[GESTURE_SENSOR].data[0]); - input_report_abs(data->gesture_input_dev, - ABS_Y, data->buf[GESTURE_SENSOR].data[1]); - input_report_abs(data->gesture_input_dev, - ABS_Z, data->buf[GESTURE_SENSOR].data[2]); - input_report_abs(data->gesture_input_dev, - ABS_RX, data->buf[GESTURE_SENSOR].data[3]); - input_report_abs(data->gesture_input_dev, - ABS_RY, data->buf[GESTURE_SENSOR].data[4]); - input_report_abs(data->gesture_input_dev, - ABS_RZ, data->buf[GESTURE_SENSOR].data[5]); - input_report_abs(data->gesture_input_dev, - ABS_THROTTLE, data->buf[GESTURE_SENSOR].data[6]); - input_report_abs(data->gesture_input_dev, - ABS_RUDDER, data->buf[GESTURE_SENSOR].data[7]); - input_report_abs(data->gesture_input_dev, - ABS_WHEEL, data->buf[GESTURE_SENSOR].data[8]); - input_report_abs(data->gesture_input_dev, - ABS_GAS, data->buf[GESTURE_SENSOR].data[9]); - input_report_abs(data->gesture_input_dev, - ABS_BRAKE, data->buf[GESTURE_SENSOR].data[10]); - input_report_abs(data->gesture_input_dev, - ABS_HAT0X, data->buf[GESTURE_SENSOR].data[11]); - input_report_abs(data->gesture_input_dev, - ABS_HAT0Y, data->buf[GESTURE_SENSOR].data[12]); - input_report_abs(data->gesture_input_dev, - ABS_HAT1X, data->buf[GESTURE_SENSOR].data[13]); - input_report_abs(data->gesture_input_dev, - ABS_HAT1Y, data->buf[GESTURE_SENSOR].data[14]); - input_report_abs(data->gesture_input_dev, - ABS_HAT2X, data->buf[GESTURE_SENSOR].data[15]); - input_report_abs(data->gesture_input_dev, - ABS_HAT2Y, data->buf[GESTURE_SENSOR].data[16]); - input_report_abs(data->gesture_input_dev, - ABS_HAT3X, data->buf[GESTURE_SENSOR].data[17]); - input_report_abs(data->gesture_input_dev, - ABS_HAT3Y, data->buf[GESTURE_SENSOR].data[18]); - - input_sync(data->gesture_input_dev); -} - -void report_pressure_data(struct ssp_data *data, struct sensor_value *predata) -{ - data->buf[PRESSURE_SENSOR].pressure[0] = - predata->pressure[0] - data->iPressureCal; - data->buf[PRESSURE_SENSOR].pressure[1] = predata->pressure[1]; - - /* pressure */ - input_report_rel(data->pressure_input_dev, REL_HWHEEL, - data->buf[PRESSURE_SENSOR].pressure[0]); - /* temperature */ - input_report_rel(data->pressure_input_dev, REL_WHEEL, - data->buf[PRESSURE_SENSOR].pressure[1]); - input_sync(data->pressure_input_dev); -} - -void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) -{ - data->buf[LIGHT_SENSOR].r = lightdata->r; - data->buf[LIGHT_SENSOR].g = lightdata->g; - data->buf[LIGHT_SENSOR].b = lightdata->b; - data->buf[LIGHT_SENSOR].w = lightdata->w; -#if defined (CONFIG_SENSORS_SSP_MAX88921) - data->buf[LIGHT_SENSOR].ir_cmp = lightdata->ir_cmp; - data->buf[LIGHT_SENSOR].amb_pga = lightdata->amb_pga; -#endif - - input_report_rel(data->light_input_dev, REL_HWHEEL, - data->buf[LIGHT_SENSOR].r + 1); - input_report_rel(data->light_input_dev, REL_DIAL, - data->buf[LIGHT_SENSOR].g + 1); - input_report_rel(data->light_input_dev, REL_WHEEL, - data->buf[LIGHT_SENSOR].b + 1); - input_report_rel(data->light_input_dev, REL_MISC, - data->buf[LIGHT_SENSOR].w + 1); -#if defined (CONFIG_SENSORS_SSP_MAX88921) - input_report_rel(data->light_input_dev, REL_RY, - data->buf[LIGHT_SENSOR].ir_cmp + 1); - input_report_rel(data->light_input_dev, REL_RZ, - data->buf[LIGHT_SENSOR].amb_pga + 1); -#endif - input_sync(data->light_input_dev); -} - -void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) -{ - ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u\n", - proxdata->prox[0], proxdata->prox[1]); - - data->buf[PROXIMITY_SENSOR].prox[0] = proxdata->prox[0]; - data->buf[PROXIMITY_SENSOR].prox[1] = proxdata->prox[1]; - - input_report_abs(data->prox_input_dev, ABS_DISTANCE, - (!proxdata->prox[0])); - input_sync(data->prox_input_dev); - - wake_lock_timeout(&data->ssp_wake_lock, 3 * HZ); -} - -void report_prox_raw_data(struct ssp_data *data, - struct sensor_value *proxrawdata) -{ - if (data->uFactoryProxAvg[0]++ >= PROX_AVG_READ_NUM) { - data->uFactoryProxAvg[2] /= PROX_AVG_READ_NUM; - data->buf[PROXIMITY_RAW].prox[1] = (u16)data->uFactoryProxAvg[1]; - data->buf[PROXIMITY_RAW].prox[2] = (u16)data->uFactoryProxAvg[2]; - data->buf[PROXIMITY_RAW].prox[3] = (u16)data->uFactoryProxAvg[3]; - - data->uFactoryProxAvg[0] = 0; - data->uFactoryProxAvg[1] = 0; - data->uFactoryProxAvg[2] = 0; - data->uFactoryProxAvg[3] = 0; - } else { - data->uFactoryProxAvg[2] += proxrawdata->prox[0]; - - if (data->uFactoryProxAvg[0] == 1) - data->uFactoryProxAvg[1] = proxrawdata->prox[0]; - else if (proxrawdata->prox[0] < data->uFactoryProxAvg[1]) - data->uFactoryProxAvg[1] = proxrawdata->prox[0]; - - if (proxrawdata->prox[0] > data->uFactoryProxAvg[3]) - data->uFactoryProxAvg[3] = proxrawdata->prox[0]; - } - - data->buf[PROXIMITY_RAW].prox[0] = proxrawdata->prox[0]; -} - -void report_geomagnetic_raw_data(struct ssp_data *data, - struct sensor_value *magrawdata) -{ - data->buf[GEOMAGNETIC_RAW].x = magrawdata->x; - data->buf[GEOMAGNETIC_RAW].y = magrawdata->y; - data->buf[GEOMAGNETIC_RAW].z = magrawdata->z; -} - -void report_step_det_data(struct ssp_data *data, - struct sensor_value *sig_motion_data) -{ - data->buf[STEP_DETECTOR].step_det = sig_motion_data->step_det; - ssp_push_1bytes_buffer(data->step_det_indio_dev, sig_motion_data->timestamp, - &sig_motion_data->step_det); -} - -void report_step_cnt_data(struct ssp_data *data, - struct sensor_value *sig_motion_data) -{ - data->buf[STEP_COUNTER].step_diff = sig_motion_data->step_diff; - - data->step_count_total += data->buf[STEP_COUNTER].step_diff; - - input_report_rel(data->step_cnt_input_dev, REL_MISC, - data->step_count_total + 1); - input_sync(data->step_cnt_input_dev); -} - -void report_temp_humidity_data(struct ssp_data *data, - struct sensor_value *temp_humi_data) -{ - data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[0] = - temp_humi_data->data[0]; - data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[1] = - temp_humi_data->data[1]; - data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[2] = - temp_humi_data->data[2]; - - /* Temperature */ - input_report_rel(data->temp_humi_input_dev, REL_HWHEEL, - data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[0]); - /* Humidity */ - input_report_rel(data->temp_humi_input_dev, REL_DIAL, - data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[1]); - input_sync(data->temp_humi_input_dev); - if (data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[2]) - wake_lock_timeout(&data->ssp_wake_lock, 2 * HZ); -} - -void report_bulk_comp_data(struct ssp_data *data) -{ - input_report_rel(data->temp_humi_input_dev, REL_WHEEL, - data->bulk_buffer->len); - input_sync(data->temp_humi_input_dev); -} - -int initialize_event_symlink(struct ssp_data *data) -{ - int iRet = 0; - - data->sen_dev = device_create(sensors_event_class, NULL, 0, NULL, - "%s", "symlink"); - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); - if (iRet < 0) - goto iRet_prs_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->gesture_input_dev->dev.kobj, - data->gesture_input_dev->name); - if (iRet < 0) - goto iRet_gesture_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->light_input_dev->dev.kobj, - data->light_input_dev->name); - if (iRet < 0) - goto iRet_light_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->prox_input_dev->dev.kobj, - data->prox_input_dev->name); - if (iRet < 0) - goto iRet_prox_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->temp_humi_input_dev->dev.kobj, - data->temp_humi_input_dev->name); - if (iRet < 0) - goto iRet_temp_humi_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); - if (iRet < 0) - goto iRet_mag_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->uncalib_mag_input_dev->dev.kobj, - data->uncalib_mag_input_dev->name); - if (iRet < 0) - goto iRet_uncalib_mag_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->sig_motion_input_dev->dev.kobj, - data->sig_motion_input_dev->name); - if (iRet < 0) - goto iRet_sig_motion_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); - if (iRet < 0) - goto iRet_uncalib_gyro_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->step_cnt_input_dev->dev.kobj, - data->step_cnt_input_dev->name); - if (iRet < 0) - goto iRet_step_cnt_sysfs_create_link; - - iRet = sysfs_create_link(&data->sen_dev->kobj, - &data->meta_input_dev->dev.kobj, - data->meta_input_dev->name); - if (iRet < 0) - goto iRet_meta_sysfs_create_link; - - return SUCCESS; -iRet_meta_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->step_cnt_input_dev->dev.kobj, - data->step_cnt_input_dev->name); -iRet_step_cnt_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); -iRet_uncalib_gyro_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->sig_motion_input_dev->dev.kobj, - data->sig_motion_input_dev->name); -iRet_sig_motion_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_mag_input_dev->dev.kobj, - data->uncalib_mag_input_dev->name); -iRet_uncalib_mag_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); -iRet_mag_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->temp_humi_input_dev->dev.kobj, - data->temp_humi_input_dev->name); -iRet_temp_humi_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->prox_input_dev->dev.kobj, - data->prox_input_dev->name); -iRet_prox_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->light_input_dev->dev.kobj, - data->light_input_dev->name); -iRet_light_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); -iRet_gesture_sysfs_create_link: - sysfs_delete_link(&data->sen_dev->kobj, - &data->gesture_input_dev->dev.kobj, - data->gesture_input_dev->name); -iRet_prs_sysfs_create_link: - pr_err("[SSP]: %s - could not create event symlink\n", __func__); - - return FAIL; -} - -void remove_event_symlink(struct ssp_data *data) -{ - sysfs_delete_link(&data->sen_dev->kobj, - &data->pressure_input_dev->dev.kobj, - data->pressure_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->gesture_input_dev->dev.kobj, - data->gesture_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->light_input_dev->dev.kobj, - data->light_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->prox_input_dev->dev.kobj, - data->prox_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->temp_humi_input_dev->dev.kobj, - data->temp_humi_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->mag_input_dev->dev.kobj, - data->mag_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_mag_input_dev->dev.kobj, - data->uncalib_mag_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->sig_motion_input_dev->dev.kobj, - data->sig_motion_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->uncalib_gyro_input_dev->dev.kobj, - data->uncalib_gyro_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->step_cnt_input_dev->dev.kobj, - data->step_cnt_input_dev->name); - sysfs_delete_link(&data->sen_dev->kobj, - &data->meta_input_dev->dev.kobj, - data->meta_input_dev->name); -} - -static const struct iio_info accel_info = { - .driver_module = THIS_MODULE, -}; - -static const struct iio_chan_spec accel_channels[] = { - { - .type = IIO_TIMESTAMP, - .channel = -1, - .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES*8, IIO_BUFFER_6_BYTES*8, 0) - } -}; - - -static const struct iio_info gyro_info = { - .driver_module = THIS_MODULE, -}; - -static const struct iio_chan_spec gyro_channels[] = { - { - .type = IIO_TIMESTAMP, - .channel = -1, - .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES*8, IIO_BUFFER_12_BYTES*8, 0) - } -}; - -static const struct iio_info game_rot_info = { - .driver_module = THIS_MODULE, -}; - -static const struct iio_chan_spec game_rot_channels[] = { - { - .type = IIO_TIMESTAMP, - .channel = -1, - .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES*8, IIO_BUFFER_17_BYTES*8, 0) - } -}; - -static const struct iio_info rot_info = { - .driver_module = THIS_MODULE, -}; - -static const struct iio_chan_spec rot_channels[] = { - { - .type = IIO_TIMESTAMP, - .channel = -1, - .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES*8, IIO_BUFFER_17_BYTES*8, 0) - } -}; - - -static const struct iio_info step_det_info = { - .driver_module = THIS_MODULE, -}; - -static const struct iio_chan_spec step_det_channels[] = { - { - .type = IIO_TIMESTAMP, - .channel = -1, - .scan_index = 3, - .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES*8, IIO_BUFFER_1_BYTES*8, 0) - } -}; - -int initialize_input_dev(struct ssp_data *data) -{ - int iRet = 0; - struct input_dev *pressure_input_dev, - *light_input_dev, *prox_input_dev, *temp_humi_input_dev, - *mag_input_dev, *gesture_input_dev, *uncalib_mag_input_dev, - *sig_motion_input_dev, *uncalib_gyro_input_dev, *step_cnt_input_dev, - *meta_input_dev; - - data->accel_indio_dev = iio_allocate_device(0); - if (!data->accel_indio_dev) { - pr_err("[SSP]: %s failed to allocate memory for iio accel device\n", __func__); - return -ENOMEM; - } - - data->accel_indio_dev->name = "accelerometer_sensor"; - data->accel_indio_dev->dev.parent = &data->spi->dev; - data->accel_indio_dev->info = &accel_info; - data->accel_indio_dev->channels = accel_channels; - data->accel_indio_dev->num_channels = ARRAY_SIZE(accel_channels); - data->accel_indio_dev->modes = INDIO_DIRECT_MODE; - data->accel_indio_dev->currentmode = INDIO_DIRECT_MODE; - - iRet = ssp_iio_configure_ring(data->accel_indio_dev); - if (iRet) { - pr_err("[SSP]: %s configure ring buffer fail\n", __func__); - goto out_free_accel; - } - - iRet = iio_buffer_register(data->accel_indio_dev, data->accel_indio_dev->channels, - data->accel_indio_dev->num_channels); - if (iRet) - goto out_unreg_ring_accel; - - iRet = iio_device_register(data->accel_indio_dev); - if (iRet) - goto out_remove_trigger_accel; - - data->gyro_indio_dev = iio_allocate_device(0); - if (!data->gyro_indio_dev) { - pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); - goto out_alloc_fail_gyro; - } - - data->gyro_indio_dev->name = "gyro_sensor"; - data->gyro_indio_dev->dev.parent = &data->spi->dev; - data->gyro_indio_dev->info = &gyro_info; - data->gyro_indio_dev->channels = gyro_channels; - data->gyro_indio_dev->num_channels = ARRAY_SIZE(gyro_channels); - data->gyro_indio_dev->modes = INDIO_DIRECT_MODE; - data->gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; - - iRet = ssp_iio_configure_ring(data->gyro_indio_dev); - if (iRet) { - pr_err("[SSP]: %s configure ring buffer fail\n", __func__); - goto out_free_gyro; - } - - iRet = iio_buffer_register(data->gyro_indio_dev, data->gyro_indio_dev->channels, - data->gyro_indio_dev->num_channels); - if (iRet) - goto out_unreg_ring_gyro; - - iRet = iio_device_register(data->gyro_indio_dev); - if (iRet) - goto out_remove_trigger_gyro; - - data->game_rot_indio_dev = iio_allocate_device(0); - if (!data->game_rot_indio_dev) { - pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); - goto out_alloc_fail_game_rot; - } - - data->game_rot_indio_dev->name = "game_rotation_vector_sensor"; - data->game_rot_indio_dev->dev.parent = &data->spi->dev; - data->game_rot_indio_dev->info = &game_rot_info; - data->game_rot_indio_dev->channels = game_rot_channels; - data->game_rot_indio_dev->num_channels = ARRAY_SIZE(game_rot_channels); - data->game_rot_indio_dev->modes = INDIO_DIRECT_MODE; - data->game_rot_indio_dev->currentmode = INDIO_DIRECT_MODE; - - iRet = ssp_iio_configure_ring(data->game_rot_indio_dev); - if (iRet) { - pr_err("[SSP]: %s configure ring buffer fail\n", __func__); - goto out_free_game_rot; - } - - iRet = iio_buffer_register(data->game_rot_indio_dev, data->game_rot_indio_dev->channels, - data->game_rot_indio_dev->num_channels); - if (iRet) - goto out_unreg_ring_game_rot; - - iRet = iio_device_register(data->game_rot_indio_dev); - if (iRet) - goto out_remove_trigger_game_rot; - - data->rot_indio_dev = iio_allocate_device(0); - if (!data->rot_indio_dev) { - pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); - goto out_alloc_fail_rot; - } - - data->rot_indio_dev->name = "rotation_vector_sensor"; - data->rot_indio_dev->dev.parent = &data->spi->dev; - data->rot_indio_dev->info = &rot_info; - data->rot_indio_dev->channels = rot_channels; - data->rot_indio_dev->num_channels = ARRAY_SIZE(rot_channels); - data->rot_indio_dev->modes = INDIO_DIRECT_MODE; - data->rot_indio_dev->currentmode = INDIO_DIRECT_MODE; - - iRet = ssp_iio_configure_ring(data->rot_indio_dev); - if (iRet) { - pr_err("[SSP]: %s configure ring buffer fail\n", __func__); - goto out_free_rot; - } - - iRet = iio_buffer_register(data->rot_indio_dev, data->rot_indio_dev->channels, - data->rot_indio_dev->num_channels); - if (iRet) - goto out_unreg_ring_rot; - - iRet = iio_device_register(data->rot_indio_dev); - if (iRet) - goto out_remove_trigger_rot; - - data->step_det_indio_dev = iio_allocate_device(0); - if (!data->step_det_indio_dev) { - pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); - goto out_alloc_fail_step_det; - } - - data->step_det_indio_dev->name = "step_det_sensor"; - data->step_det_indio_dev->dev.parent = &data->spi->dev; - data->step_det_indio_dev->info = &step_det_info; - data->step_det_indio_dev->channels = step_det_channels; - data->step_det_indio_dev->num_channels = ARRAY_SIZE(step_det_channels); - data->step_det_indio_dev->modes = INDIO_DIRECT_MODE; - data->step_det_indio_dev->currentmode = INDIO_DIRECT_MODE; - - iRet = ssp_iio_configure_ring(data->step_det_indio_dev); - if (iRet) { - pr_err("[SSP]: %s configure ring buffer fail\n", __func__); - goto out_free_step_det; - } - - iRet = iio_buffer_register(data->step_det_indio_dev, data->step_det_indio_dev->channels, - data->step_det_indio_dev->num_channels); - if (iRet) - goto out_unreg_ring_step_det; - - iRet = iio_device_register(data->step_det_indio_dev); - if (iRet) - goto out_remove_trigger_step_det; - - - /* allocate input_device */ - - pressure_input_dev = input_allocate_device(); - if (pressure_input_dev == NULL) - goto iRet_pressure_input_free_device; - - gesture_input_dev = input_allocate_device(); - if (gesture_input_dev == NULL) - goto iRet_gesture_input_free_device; - - light_input_dev = input_allocate_device(); - if (light_input_dev == NULL) - goto iRet_light_input_free_device; - - prox_input_dev = input_allocate_device(); - if (prox_input_dev == NULL) - goto iRet_proximity_input_free_device; - - temp_humi_input_dev = input_allocate_device(); - if (temp_humi_input_dev == NULL) - goto iRet_temp_humidity_input_free_device; - - mag_input_dev = input_allocate_device(); - if (mag_input_dev == NULL) - goto iRet_mag_input_free_device; - - uncalib_mag_input_dev = input_allocate_device(); - if (uncalib_mag_input_dev == NULL) - goto iRet_uncalib_mag_input_free_device; - - sig_motion_input_dev = input_allocate_device(); - if (sig_motion_input_dev == NULL) - goto iRet_sig_motion_input_free_device; - - uncalib_gyro_input_dev = input_allocate_device(); - if (uncalib_gyro_input_dev == NULL) - goto iRet_uncalib_gyro_input_free_device; - - step_cnt_input_dev = input_allocate_device(); - if (step_cnt_input_dev == NULL) - goto iRet_step_cnt_input_free_device; - - meta_input_dev = input_allocate_device(); - if (meta_input_dev == NULL) - goto iRet_meta_input_free_device; - - input_set_drvdata(pressure_input_dev, data); - input_set_drvdata(gesture_input_dev, data); - input_set_drvdata(light_input_dev, data); - input_set_drvdata(prox_input_dev, data); - input_set_drvdata(temp_humi_input_dev, data); - input_set_drvdata(mag_input_dev, data); - input_set_drvdata(uncalib_mag_input_dev, data); - input_set_drvdata(sig_motion_input_dev, data); - input_set_drvdata(uncalib_gyro_input_dev, data); - input_set_drvdata(step_cnt_input_dev, data); - input_set_drvdata(meta_input_dev, data); - - pressure_input_dev->name = "pressure_sensor"; - gesture_input_dev->name = "gesture_sensor"; - light_input_dev->name = "light_sensor"; - prox_input_dev->name = "proximity_sensor"; - temp_humi_input_dev->name = "temp_humidity_sensor"; - mag_input_dev->name = "geomagnetic_sensor"; - uncalib_mag_input_dev->name = "uncal_geomagnetic_sensor"; - sig_motion_input_dev->name = "sig_motion_sensor"; - uncalib_gyro_input_dev->name = "uncalibrated_gyro_sensor"; - step_cnt_input_dev->name = "step_cnt_sensor"; - meta_input_dev->name = "meta_event"; - - input_set_capability(pressure_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(pressure_input_dev, EV_REL, REL_DIAL); - input_set_capability(pressure_input_dev, EV_REL, REL_WHEEL); - - input_set_capability(gesture_input_dev, EV_ABS, ABS_X); - input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); - input_set_abs_params(gesture_input_dev, ABS_Y, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_Z); - input_set_abs_params(gesture_input_dev, ABS_Z, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_RX); - input_set_abs_params(gesture_input_dev, ABS_RX, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_RY); - input_set_abs_params(gesture_input_dev, ABS_RY, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_RZ); - input_set_abs_params(gesture_input_dev, ABS_RZ, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_THROTTLE); - input_set_abs_params(gesture_input_dev, ABS_THROTTLE, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_RUDDER); - input_set_abs_params(gesture_input_dev, ABS_RUDDER, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_WHEEL); - input_set_abs_params(gesture_input_dev, ABS_WHEEL, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_GAS); - input_set_abs_params(gesture_input_dev, ABS_GAS, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_BRAKE); - input_set_abs_params(gesture_input_dev, ABS_BRAKE, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0X); - input_set_abs_params(gesture_input_dev, ABS_HAT0X, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0Y); - input_set_abs_params(gesture_input_dev, ABS_HAT0Y, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1X); - input_set_abs_params(gesture_input_dev, ABS_HAT1X, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1Y); - input_set_abs_params(gesture_input_dev, ABS_HAT1Y, 0, 1024, 0, 0); - - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2X); - input_set_abs_params(gesture_input_dev, ABS_HAT2X, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2Y); - input_set_abs_params(gesture_input_dev, ABS_HAT2Y, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3X); - input_set_abs_params(gesture_input_dev, ABS_HAT3X, 0, 1024, 0, 0); - input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3Y); - input_set_abs_params(gesture_input_dev, ABS_HAT3Y, 0, 1024, 0, 0); - - - input_set_capability(light_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(light_input_dev, EV_REL, REL_DIAL); - input_set_capability(light_input_dev, EV_REL, REL_WHEEL); - input_set_capability(light_input_dev, EV_REL, REL_MISC); -#if defined (CONFIG_SENSORS_SSP_MAX88921) - input_set_capability(light_input_dev, EV_REL, REL_RY); - input_set_capability(light_input_dev, EV_REL, REL_RZ); -#endif - - - input_set_capability(prox_input_dev, EV_ABS, ABS_DISTANCE); - input_set_abs_params(prox_input_dev, ABS_DISTANCE, 0, 1, 0, 0); - - input_set_capability(temp_humi_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(temp_humi_input_dev, EV_REL, REL_DIAL); - input_set_capability(temp_humi_input_dev, EV_REL, REL_WHEEL); - - input_set_capability(mag_input_dev, EV_REL, REL_RX); - input_set_capability(mag_input_dev, EV_REL, REL_RY); - input_set_capability(mag_input_dev, EV_REL, REL_RZ); - input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); - - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_RX); - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_RY); - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_RZ); - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_DIAL); - input_set_capability(uncalib_mag_input_dev, EV_REL, REL_WHEEL); - - input_set_capability(sig_motion_input_dev, EV_REL, REL_MISC); - - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_X); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Y); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Z); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RX); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RY); - input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RZ); - input_set_capability(step_cnt_input_dev, EV_REL, REL_MISC); - - input_set_capability(meta_input_dev, EV_REL, REL_HWHEEL); - input_set_capability(meta_input_dev, EV_REL, REL_DIAL); - - /* register input_device */ - iRet = input_register_device(pressure_input_dev); - if (iRet < 0) - goto iRet_pressure_input_unreg_device; - - iRet = input_register_device(gesture_input_dev); - if (iRet < 0) { - input_free_device(gesture_input_dev); - input_free_device(light_input_dev); - input_free_device(prox_input_dev); - input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_gesture_input_unreg_device; - } - - iRet = input_register_device(light_input_dev); - if (iRet < 0) { - input_free_device(light_input_dev); - input_free_device(prox_input_dev); - input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_light_input_unreg_device; - } - - iRet = input_register_device(prox_input_dev); - if (iRet < 0) { - input_free_device(prox_input_dev); - input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_proximity_input_unreg_device; - } - - iRet = input_register_device(temp_humi_input_dev); - if (iRet < 0) { - input_free_device(temp_humi_input_dev); - input_free_device(mag_input_dev); - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_tmep_humi_input_unreg_device; - } - - iRet = input_register_device(mag_input_dev); - if (iRet < 0) { - input_free_device(mag_input_dev); - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_mag_input_unreg_device; - } - - iRet = input_register_device(uncalib_mag_input_dev); - if (iRet < 0) { - input_free_device(uncalib_mag_input_dev); - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_uncalib_mag_input_unreg_device; - } - - iRet = input_register_device(sig_motion_input_dev); - if (iRet < 0) { - input_free_device(sig_motion_input_dev); - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_sig_motion_input_unreg_device; - } - - iRet = input_register_device(uncalib_gyro_input_dev); - if (iRet < 0) { - input_free_device(uncalib_gyro_input_dev); - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_uncalib_gyro_input_unreg_device; - } - - iRet = input_register_device(step_cnt_input_dev); - if (iRet < 0) { - input_free_device(step_cnt_input_dev); - input_free_device(meta_input_dev); - goto iRet_step_cnt_input_unreg_device; - } - - iRet = input_register_device(meta_input_dev); - if (iRet < 0) { - input_free_device(meta_input_dev); - goto iRet_meta_input_unreg_device; - } - - data->pressure_input_dev = pressure_input_dev; - data->gesture_input_dev = gesture_input_dev; - data->light_input_dev = light_input_dev; - data->prox_input_dev = prox_input_dev; - data->temp_humi_input_dev = temp_humi_input_dev; - data->mag_input_dev = mag_input_dev; - data->uncalib_mag_input_dev = uncalib_mag_input_dev; - data->sig_motion_input_dev = sig_motion_input_dev; - data->uncalib_gyro_input_dev = uncalib_gyro_input_dev; - data->step_cnt_input_dev = step_cnt_input_dev; - data->meta_input_dev = meta_input_dev; - - return SUCCESS; -iRet_meta_input_unreg_device: - input_unregister_device(step_cnt_input_dev); -iRet_step_cnt_input_unreg_device: - input_unregister_device(uncalib_gyro_input_dev); -iRet_uncalib_gyro_input_unreg_device: - input_unregister_device(sig_motion_input_dev); -iRet_sig_motion_input_unreg_device: - input_unregister_device(uncalib_mag_input_dev); -iRet_uncalib_mag_input_unreg_device: - input_unregister_device(mag_input_dev); -iRet_mag_input_unreg_device: - input_unregister_device(temp_humi_input_dev); -iRet_tmep_humi_input_unreg_device: - input_unregister_device(prox_input_dev); -iRet_proximity_input_unreg_device: - input_unregister_device(light_input_dev); -iRet_light_input_unreg_device: - input_unregister_device(gesture_input_dev); -iRet_gesture_input_unreg_device: - input_unregister_device(pressure_input_dev); - return ERROR; -iRet_pressure_input_unreg_device: - input_free_device(meta_input_dev); -iRet_meta_input_free_device: - input_free_device(step_cnt_input_dev); -iRet_step_cnt_input_free_device: - input_free_device(uncalib_gyro_input_dev); -iRet_uncalib_gyro_input_free_device: - input_free_device(sig_motion_input_dev); -iRet_sig_motion_input_free_device: - input_free_device(uncalib_mag_input_dev); -iRet_uncalib_mag_input_free_device: - input_free_device(mag_input_dev); -iRet_mag_input_free_device: - input_free_device(temp_humi_input_dev); -iRet_temp_humidity_input_free_device: - input_free_device(prox_input_dev); -iRet_proximity_input_free_device: - input_free_device(light_input_dev); -iRet_light_input_free_device: - input_free_device(gesture_input_dev); -iRet_gesture_input_free_device: - input_free_device(pressure_input_dev); -iRet_pressure_input_free_device: - iio_device_unregister(data->step_det_indio_dev); -out_remove_trigger_step_det: - iio_buffer_unregister(data->step_det_indio_dev); -out_unreg_ring_step_det: - ssp_iio_unconfigure_ring(data->step_det_indio_dev); -out_free_step_det: - iio_free_device(data->step_det_indio_dev); -out_alloc_fail_step_det: - iio_device_unregister(data->rot_indio_dev); -out_remove_trigger_rot: - iio_buffer_unregister(data->rot_indio_dev); -out_unreg_ring_rot: - ssp_iio_unconfigure_ring(data->rot_indio_dev); -out_free_rot: - iio_free_device(data->rot_indio_dev); -out_alloc_fail_rot: - iio_device_unregister(data->game_rot_indio_dev); -out_remove_trigger_game_rot: - iio_buffer_unregister(data->game_rot_indio_dev); -out_unreg_ring_game_rot: - ssp_iio_unconfigure_ring(data->game_rot_indio_dev); -out_free_game_rot: - iio_free_device(data->game_rot_indio_dev); -out_alloc_fail_game_rot: - iio_device_unregister(data->gyro_indio_dev); -out_remove_trigger_gyro: - iio_buffer_unregister(data->gyro_indio_dev); -out_unreg_ring_gyro: - ssp_iio_unconfigure_ring(data->gyro_indio_dev); -out_free_gyro: - iio_free_device(data->gyro_indio_dev); -out_alloc_fail_gyro: - iio_device_unregister(data->accel_indio_dev); -out_remove_trigger_accel: - iio_buffer_unregister(data->accel_indio_dev); -out_unreg_ring_accel: - ssp_iio_unconfigure_ring(data->accel_indio_dev); -out_free_accel: - iio_free_device(data->accel_indio_dev); - pr_err("[SSP]: %s - could not allocate input device\n", __func__); - return ERROR; -} - -void remove_input_dev(struct ssp_data *data) -{ - input_unregister_device(data->pressure_input_dev); - input_unregister_device(data->gesture_input_dev); - input_unregister_device(data->light_input_dev); - input_unregister_device(data->prox_input_dev); - input_unregister_device(data->temp_humi_input_dev); - input_unregister_device(data->mag_input_dev); - input_unregister_device(data->uncalib_mag_input_dev); - input_unregister_device(data->sig_motion_input_dev); - input_unregister_device(data->uncalib_gyro_input_dev); - input_unregister_device(data->step_cnt_input_dev); - input_unregister_device(data->meta_input_dev); -} +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/events.h" +#include "../../staging/iio/sysfs.h" +#include "../../staging/iio/buffer.h" +#include "../../staging/iio/types.h" + + +/*************************************************************************/ +/* SSP Kernel -> HAL input evnet function */ +/*************************************************************************/ + +#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ +#define IIO_BUFFER_6_BYTES 14 +#define IIO_BUFFER_1_BYTES 9 +#define IIO_BUFFER_17_BYTES 25 +#define IIO_BUFFER_24_BYTES 20 +#define IIO_BUFFER_7_BYTES 15 +/* data header defines */ + +static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, u64 t, int *q) +{ + u8 buf[IIO_BUFFER_17_BYTES]; + + int i; + + for (i = 0; i < 4; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + buf[16] = (u8)q[4]; + memcpy(buf + 17, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, int *q) +{ + u8 buf[IIO_BUFFER_12_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_24bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *q) +{ + u8 buf[IIO_BUFFER_24_BYTES]; + int i; + + for (i = 0; i < 6; i++) + memcpy(buf + 2 * i, &q[i], sizeof(q[i])); + memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *d) +{ + u8 buf[IIO_BUFFER_6_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + i * 2, &d[i], sizeof(d[i])); + + memcpy(buf + 6, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, u64 t, u8 *d) +{ + u8 buf[IIO_BUFFER_1_BYTES]; + + memcpy(buf, d, sizeof(u8)); + memcpy(buf + 1, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_7bytes_buffer(struct iio_dev *indio_dev, u64 t, s16 *d, + u8 status) +{ + u8 buf[IIO_BUFFER_7_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + i * 2, &d[i], sizeof(d[i])); + buf[6] = status; + memcpy(buf + 7, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +void report_meta_data(struct ssp_data *data, struct sensor_value *s) +{ + pr_info("[SSP]: %s - what: %d, sensor: %d\n", __func__, + s->meta_data.what, s->meta_data.sensor); + + if (s->meta_data.sensor == ACCELEROMETER_SENSOR) { + s16 accel_buf[3]; + memset(accel_buf, 0xff, sizeof(s16) * 3); + ssp_push_6bytes_buffer(data->accel_indio_dev, 0, accel_buf); + } else if (s->meta_data.sensor == GYROSCOPE_SENSOR) { + int gyro_buf[3]; + memset(gyro_buf, 0xff, sizeof(int) * 3); + ssp_push_12bytes_buffer(data->gyro_indio_dev, 0, gyro_buf); + } else if (s->meta_data.sensor == GAME_ROTATION_VECTOR) { + int grot_buf[5]; + memset(grot_buf, 0xff, sizeof(int) * 4); + ssp_push_17bytes_buffer(data->game_rot_indio_dev, 0, grot_buf); + } else if (s->meta_data.sensor == STEP_DETECTOR) { + u8 step_buf[1] = {0xff}; + ssp_push_1bytes_buffer(data->step_det_indio_dev, 0, step_buf); + } else { + input_report_rel(data->meta_input_dev, REL_DIAL, + s->meta_data.what); + input_report_rel(data->meta_input_dev, REL_HWHEEL, + s->meta_data.sensor + 1); + input_sync(data->meta_input_dev); + } +} + +void convert_acc_data(s16 *iValue) +{ + if (*iValue > MAX_ACCEL_2G) + *iValue = ((MAX_ACCEL_4G - *iValue)) * (-1); +} + +void report_acc_data(struct ssp_data *data, struct sensor_value *accdata) +{ + s16 accel_buf[3]; + data->buf[ACCELEROMETER_SENSOR].x = accdata->x; + data->buf[ACCELEROMETER_SENSOR].y = accdata->y; + data->buf[ACCELEROMETER_SENSOR].z = accdata->z; + + accel_buf[0] = data->buf[ACCELEROMETER_SENSOR].x; + accel_buf[1] = data->buf[ACCELEROMETER_SENSOR].y; + accel_buf[2] = data->buf[ACCELEROMETER_SENSOR].z; + ssp_push_6bytes_buffer(data->accel_indio_dev, accdata->timestamp, + accel_buf); +} + +void report_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + int lTemp[3] = {0,}; + data->buf[GYROSCOPE_SENSOR].x = gyrodata->x; + data->buf[GYROSCOPE_SENSOR].y = gyrodata->y; + data->buf[GYROSCOPE_SENSOR].z = gyrodata->z; + + if (data->uGyroDps == GYROSCOPE_DPS500) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } else if (data->uGyroDps == GYROSCOPE_DPS250) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x >> 1; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y >> 1; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z >> 1; + } else if (data->uGyroDps == GYROSCOPE_DPS2000) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x << 2; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y << 2; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z << 2; + } else { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } + + ssp_push_12bytes_buffer(data->gyro_indio_dev, gyrodata->timestamp, + lTemp); +} + +void report_mag_data(struct ssp_data *data, struct sensor_value *magdata) +{ + s16 lTemp[3] = { 0, }; + + data->buf[GEOMAGNETIC_SENSOR].cal_x = magdata->cal_x; + data->buf[GEOMAGNETIC_SENSOR].cal_y = magdata->cal_y; + data->buf[GEOMAGNETIC_SENSOR].cal_z = magdata->cal_z; + data->buf[GEOMAGNETIC_SENSOR].accuracy = magdata->accuracy; + + lTemp[0] = data->buf[GEOMAGNETIC_SENSOR].cal_x; + lTemp[1] = data->buf[GEOMAGNETIC_SENSOR].cal_y; + lTemp[2] = data->buf[GEOMAGNETIC_SENSOR].cal_z; + + ssp_push_7bytes_buffer(data->mag_indio_dev, magdata->timestamp, + lTemp, data->buf[GEOMAGNETIC_SENSOR].accuracy); +} + +void report_uncalib_mag_data(struct ssp_data *data, struct sensor_value *magdata) +{ + s16 lTemp[6] = {0,}; + + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x = magdata->uncal_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y = magdata->uncal_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z = magdata->uncal_z; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x = magdata->offset_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y = magdata->offset_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z = magdata->offset_z; + + lTemp[0] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x; + lTemp[1] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y; + lTemp[2] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z; + lTemp[3] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x; + lTemp[4] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y; + lTemp[5] = data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z; + + ssp_push_24bytes_buffer(data->uncal_mag_indio_dev, magdata->timestamp, lTemp); +} + +void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + s16 lTemp[6] = {0,}; + data->buf[GYRO_UNCALIB_SENSOR].uncal_x = gyrodata->uncal_x; + data->buf[GYRO_UNCALIB_SENSOR].uncal_y = gyrodata->uncal_y; + data->buf[GYRO_UNCALIB_SENSOR].uncal_z = gyrodata->uncal_z; + data->buf[GYRO_UNCALIB_SENSOR].offset_x = gyrodata->offset_x; + data->buf[GYRO_UNCALIB_SENSOR].offset_y = gyrodata->offset_y; + data->buf[GYRO_UNCALIB_SENSOR].offset_z = gyrodata->offset_z; + + lTemp[0] = gyrodata->uncal_x; + lTemp[1] = gyrodata->uncal_y; + lTemp[2] = gyrodata->uncal_z; + lTemp[3] = gyrodata->offset_x; + lTemp[4] = gyrodata->offset_y; + lTemp[5] = gyrodata->offset_z; + + ssp_push_24bytes_buffer(data->uncal_gyro_indio_dev, gyrodata->timestamp, lTemp); +} + +void report_sig_motion_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[SIG_MOTION_SENSOR].sig_motion = sig_motion_data->sig_motion; + + input_report_rel(data->sig_motion_input_dev, REL_MISC, + data->buf[SIG_MOTION_SENSOR].sig_motion); + input_sync(data->sig_motion_input_dev); +} + +void report_rot_data(struct ssp_data *data, struct sensor_value *rotdata) +{ + int rot_buf[5]; + data->buf[ROTATION_VECTOR].quat_a = rotdata->quat_a; + data->buf[ROTATION_VECTOR].quat_b = rotdata->quat_b; + data->buf[ROTATION_VECTOR].quat_c = rotdata->quat_c; + data->buf[ROTATION_VECTOR].quat_d = rotdata->quat_d; + data->buf[ROTATION_VECTOR].acc_rot = rotdata->acc_rot; + rot_buf[0] = rotdata->quat_a; + rot_buf[1] = rotdata->quat_b; + rot_buf[2] = rotdata->quat_c; + rot_buf[3] = rotdata->quat_d; + rot_buf[4] = rotdata->acc_rot; + ssp_push_17bytes_buffer(data->rot_indio_dev, rotdata->timestamp, rot_buf); +} + +void report_game_rot_data(struct ssp_data *data, struct sensor_value *grotdata) +{ + int rot_buf[5]; + data->buf[GAME_ROTATION_VECTOR].quat_a = grotdata->quat_a; + data->buf[GAME_ROTATION_VECTOR].quat_b = grotdata->quat_b; + data->buf[GAME_ROTATION_VECTOR].quat_c = grotdata->quat_c; + data->buf[GAME_ROTATION_VECTOR].quat_d = grotdata->quat_d; + data->buf[GAME_ROTATION_VECTOR].acc_rot = grotdata->acc_rot; + + rot_buf[0] = grotdata->quat_a; + rot_buf[1] = grotdata->quat_b; + rot_buf[2] = grotdata->quat_c; + rot_buf[3] = grotdata->quat_d; + rot_buf[4] = grotdata->acc_rot; + ssp_push_17bytes_buffer(data->game_rot_indio_dev, grotdata->timestamp, + rot_buf); +} + +void report_gesture_data(struct ssp_data *data, struct sensor_value *gesdata) +{ + int i = 0; + for (i=0; i<19; i++) { + data->buf[GESTURE_SENSOR].data[i] = gesdata->data[i]; + } + +#if defined (CONFIG_SENSORS_SSP_MAX88920) + input_report_abs(data->gesture_input_dev, + ABS_RUDDER, data->buf[GESTURE_SENSOR].data[0]); + input_report_abs(data->gesture_input_dev, + ABS_WHEEL, data->buf[GESTURE_SENSOR].data[1]); + input_report_abs(data->gesture_input_dev, + ABS_GAS, data->buf[GESTURE_SENSOR].data[2]); + input_report_abs(data->gesture_input_dev, + ABS_BRAKE, data->buf[GESTURE_SENSOR].data[3]); + input_report_abs(data->gesture_input_dev, + ABS_THROTTLE, data->buf[GESTURE_SENSOR].data[4]); + input_report_abs(data->gesture_input_dev, + ABS_X, data->buf[GESTURE_SENSOR].data[5]); + input_report_abs(data->gesture_input_dev, + ABS_Y, data->buf[GESTURE_SENSOR].data[6]); + input_report_abs(data->gesture_input_dev, + ABS_Z, data->buf[GESTURE_SENSOR].data[7]); + input_report_abs(data->gesture_input_dev, + ABS_RX, data->buf[GESTURE_SENSOR].data[8]); + +#else + input_report_abs(data->gesture_input_dev, + ABS_X, data->buf[GESTURE_SENSOR].data[0]); + input_report_abs(data->gesture_input_dev, + ABS_Y, data->buf[GESTURE_SENSOR].data[1]); + input_report_abs(data->gesture_input_dev, + ABS_Z, data->buf[GESTURE_SENSOR].data[2]); + input_report_abs(data->gesture_input_dev, + ABS_RX, data->buf[GESTURE_SENSOR].data[3]); + input_report_abs(data->gesture_input_dev, + ABS_RY, data->buf[GESTURE_SENSOR].data[4]); + input_report_abs(data->gesture_input_dev, + ABS_RZ, data->buf[GESTURE_SENSOR].data[5]); + input_report_abs(data->gesture_input_dev, + ABS_THROTTLE, data->buf[GESTURE_SENSOR].data[6]); + input_report_abs(data->gesture_input_dev, + ABS_RUDDER, data->buf[GESTURE_SENSOR].data[7]); + input_report_abs(data->gesture_input_dev, + ABS_WHEEL, data->buf[GESTURE_SENSOR].data[8]); + input_report_abs(data->gesture_input_dev, + ABS_GAS, data->buf[GESTURE_SENSOR].data[9]); + input_report_abs(data->gesture_input_dev, + ABS_BRAKE, data->buf[GESTURE_SENSOR].data[10]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0X, data->buf[GESTURE_SENSOR].data[11]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0Y, data->buf[GESTURE_SENSOR].data[12]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1X, data->buf[GESTURE_SENSOR].data[13]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1Y, data->buf[GESTURE_SENSOR].data[14]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2X, data->buf[GESTURE_SENSOR].data[15]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2Y, data->buf[GESTURE_SENSOR].data[16]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3X, data->buf[GESTURE_SENSOR].data[17]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3Y, data->buf[GESTURE_SENSOR].data[18]); +#endif + + input_sync(data->gesture_input_dev); +} + +void report_pressure_data(struct ssp_data *data, struct sensor_value *predata) +{ + data->buf[PRESSURE_SENSOR].pressure[0] = + predata->pressure[0] - data->iPressureCal; + data->buf[PRESSURE_SENSOR].pressure[1] = predata->pressure[1]; + + /* pressure */ + input_report_rel(data->pressure_input_dev, REL_HWHEEL, + data->buf[PRESSURE_SENSOR].pressure[0]); + /* temperature */ + input_report_rel(data->pressure_input_dev, REL_WHEEL, + data->buf[PRESSURE_SENSOR].pressure[1]); + input_sync(data->pressure_input_dev); +} + +void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) +{ + data->buf[LIGHT_SENSOR].r = lightdata->r; + data->buf[LIGHT_SENSOR].g = lightdata->g; + data->buf[LIGHT_SENSOR].b = lightdata->b; + data->buf[LIGHT_SENSOR].w = lightdata->w; +#if defined (CONFIG_SENSORS_SSP_MAX88921) + data->buf[LIGHT_SENSOR].ir_cmp = lightdata->ir_cmp; + data->buf[LIGHT_SENSOR].amb_pga = lightdata->amb_pga; +#endif + + input_report_rel(data->light_input_dev, REL_HWHEEL, + data->buf[LIGHT_SENSOR].r + 1); + input_report_rel(data->light_input_dev, REL_DIAL, + data->buf[LIGHT_SENSOR].g + 1); + input_report_rel(data->light_input_dev, REL_WHEEL, + data->buf[LIGHT_SENSOR].b + 1); + input_report_rel(data->light_input_dev, REL_MISC, + data->buf[LIGHT_SENSOR].w + 1); +#if defined (CONFIG_SENSORS_SSP_MAX88921) + input_report_rel(data->light_input_dev, REL_RY, + data->buf[LIGHT_SENSOR].ir_cmp + 1); + input_report_rel(data->light_input_dev, REL_RZ, + data->buf[LIGHT_SENSOR].amb_pga + 1); +#endif + input_sync(data->light_input_dev); +} + +void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) +{ + ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u\n", + proxdata->prox[0], proxdata->prox[1]); + + data->buf[PROXIMITY_SENSOR].prox[0] = proxdata->prox[0]; + data->buf[PROXIMITY_SENSOR].prox[1] = proxdata->prox[1]; + + input_report_abs(data->prox_input_dev, ABS_DISTANCE, + (!proxdata->prox[0])); + input_sync(data->prox_input_dev); + + wake_lock_timeout(&data->ssp_wake_lock, 3 * HZ); +} + +void report_prox_raw_data(struct ssp_data *data, + struct sensor_value *proxrawdata) +{ + if (data->uFactoryProxAvg[0]++ >= PROX_AVG_READ_NUM) { + data->uFactoryProxAvg[2] /= PROX_AVG_READ_NUM; + data->buf[PROXIMITY_RAW].prox[1] = (u16)data->uFactoryProxAvg[1]; + data->buf[PROXIMITY_RAW].prox[2] = (u16)data->uFactoryProxAvg[2]; + data->buf[PROXIMITY_RAW].prox[3] = (u16)data->uFactoryProxAvg[3]; + + data->uFactoryProxAvg[0] = 0; + data->uFactoryProxAvg[1] = 0; + data->uFactoryProxAvg[2] = 0; + data->uFactoryProxAvg[3] = 0; + } else { + data->uFactoryProxAvg[2] += proxrawdata->prox[0]; + + if (data->uFactoryProxAvg[0] == 1) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + else if (proxrawdata->prox[0] < data->uFactoryProxAvg[1]) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + + if (proxrawdata->prox[0] > data->uFactoryProxAvg[3]) + data->uFactoryProxAvg[3] = proxrawdata->prox[0]; + } + + data->buf[PROXIMITY_RAW].prox[0] = proxrawdata->prox[0]; +} + +void report_geomagnetic_raw_data(struct ssp_data *data, + struct sensor_value *magrawdata) +{ + data->buf[GEOMAGNETIC_RAW].x = magrawdata->x; + data->buf[GEOMAGNETIC_RAW].y = magrawdata->y; + data->buf[GEOMAGNETIC_RAW].z = magrawdata->z; +} + +void report_step_det_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_DETECTOR].step_det = sig_motion_data->step_det; + ssp_push_1bytes_buffer(data->step_det_indio_dev, sig_motion_data->timestamp, + &sig_motion_data->step_det); +} + +void report_step_cnt_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_COUNTER].step_diff = sig_motion_data->step_diff; + + data->step_count_total += data->buf[STEP_COUNTER].step_diff; + + input_report_rel(data->step_cnt_input_dev, REL_MISC, + data->step_count_total + 1); + input_sync(data->step_cnt_input_dev); +} + +void report_temp_humidity_data(struct ssp_data *data, + struct sensor_value *temp_humi_data) +{ + data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[0] = + temp_humi_data->data[0]; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[1] = + temp_humi_data->data[1]; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[2] = + temp_humi_data->data[2]; + + /* Temperature */ + input_report_rel(data->temp_humi_input_dev, REL_HWHEEL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[0]); + /* Humidity */ + input_report_rel(data->temp_humi_input_dev, REL_DIAL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[1]); + input_sync(data->temp_humi_input_dev); + if (data->buf[TEMPERATURE_HUMIDITY_SENSOR].data[2]) + wake_lock_timeout(&data->ssp_wake_lock, 2 * HZ); +} + +void report_bulk_comp_data(struct ssp_data *data) +{ + input_report_rel(data->temp_humi_input_dev, REL_WHEEL, + data->bulk_buffer->len); + input_sync(data->temp_humi_input_dev); +} + +int initialize_event_symlink(struct ssp_data *data) +{ + int iRet = 0; + + data->sen_dev = device_create(sensors_event_class, NULL, 0, NULL, + "%s", "symlink"); + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->pressure_input_dev->dev.kobj, + data->pressure_input_dev->name); + if (iRet < 0) + goto iRet_prs_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); + if (iRet < 0) + goto iRet_gesture_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + if (iRet < 0) + goto iRet_light_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); + if (iRet < 0) + goto iRet_prox_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); + if (iRet < 0) + goto iRet_temp_humi_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + if (iRet < 0) + goto iRet_sig_motion_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + if (iRet < 0) + goto iRet_step_cnt_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); + if (iRet < 0) + goto iRet_meta_sysfs_create_link; + + return SUCCESS; +iRet_meta_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); +iRet_step_cnt_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); +iRet_sig_motion_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); +iRet_temp_humi_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); +iRet_prox_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); +iRet_light_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->pressure_input_dev->dev.kobj, + data->pressure_input_dev->name); +iRet_gesture_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); +iRet_prs_sysfs_create_link: + pr_err("[SSP]: %s - could not create event symlink\n", __func__); + + return FAIL; +} + +void remove_event_symlink(struct ssp_data *data) +{ + sysfs_delete_link(&data->sen_dev->kobj, + &data->pressure_input_dev->dev.kobj, + data->pressure_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); +} + +static const struct iio_info accel_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec accel_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES * 8, + IIO_BUFFER_6_BYTES * 8, 0) + } +}; + +static const struct iio_info gyro_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_info mag_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec mag_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_7_BYTES * 8, + IIO_BUFFER_7_BYTES * 8, 0) + } +}; + +static const struct iio_info uncal_mag_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec uncal_mag_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +static const struct iio_chan_spec gyro_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + + +static const struct iio_info uncal_gyro_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec uncal_gyro_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +static const struct iio_info game_rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec game_rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + +static const struct iio_info rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + + +static const struct iio_info step_det_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec step_det_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES * 8, + IIO_BUFFER_1_BYTES * 8, 0) + } +}; + +int initialize_input_dev(struct ssp_data *data) +{ + int iRet = 0; + struct input_dev *pressure_input_dev, + *light_input_dev, *prox_input_dev, *temp_humi_input_dev, + *gesture_input_dev, *sig_motion_input_dev, *step_cnt_input_dev, + *meta_input_dev; + /* accel */ + data->accel_indio_dev = iio_allocate_device(0); + if (!data->accel_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio accel device\n", __func__); + return -ENOMEM; + } + + data->accel_indio_dev->name = "accelerometer_sensor"; + data->accel_indio_dev->dev.parent = &data->spi->dev; + data->accel_indio_dev->info = &accel_info; + data->accel_indio_dev->channels = accel_channels; + data->accel_indio_dev->num_channels = ARRAY_SIZE(accel_channels); + data->accel_indio_dev->modes = INDIO_DIRECT_MODE; + data->accel_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->accel_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_accel; + } + + iRet = iio_buffer_register(data->accel_indio_dev, data->accel_indio_dev->channels, + data->accel_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_accel; + + iRet = iio_device_register(data->accel_indio_dev); + if (iRet) + goto out_remove_trigger_accel; + /* mag */ + data->mag_indio_dev = iio_allocate_device(0); + if (!data->mag_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio mag device\n", __func__); + goto out_alloc_fail_mag; + } + + data->mag_indio_dev->name = "geomagnetic_sensor"; + data->mag_indio_dev->dev.parent = &data->spi->dev; + data->mag_indio_dev->info = &mag_info; + data->mag_indio_dev->channels = mag_channels; + data->mag_indio_dev->num_channels = ARRAY_SIZE(mag_channels); + data->mag_indio_dev->modes = INDIO_DIRECT_MODE; + data->mag_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->mag_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_mag; + } + + iRet = iio_buffer_register(data->mag_indio_dev, + data->mag_indio_dev->channels, data->mag_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_mag; + + iRet = iio_device_register(data->mag_indio_dev); + if (iRet) + goto out_remove_trigger_mag; + /* uncal mag */ + data->uncal_mag_indio_dev = iio_allocate_device(0); + if (!data->uncal_mag_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio uncal mag device\n", __func__); + goto out_alloc_fail_uncal_mag; + } + + data->uncal_mag_indio_dev->name = "uncal_geomagnetic_sensor"; + data->uncal_mag_indio_dev->dev.parent = &data->spi->dev; + data->uncal_mag_indio_dev->info = &uncal_mag_info; + data->uncal_mag_indio_dev->channels = uncal_mag_channels; + data->uncal_mag_indio_dev->num_channels = ARRAY_SIZE(uncal_mag_channels); + data->uncal_mag_indio_dev->modes = INDIO_DIRECT_MODE; + data->uncal_mag_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->uncal_mag_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_uncal_mag; + } + + iRet = iio_buffer_register(data->uncal_mag_indio_dev, + data->uncal_mag_indio_dev->channels, data->uncal_mag_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_uncal_mag; + + iRet = iio_device_register(data->uncal_mag_indio_dev); + if (iRet) + goto out_remove_trigger_uncal_mag; + /* gyro */ + data->gyro_indio_dev = iio_allocate_device(0); + if (!data->gyro_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_gyro; + } + + data->gyro_indio_dev->name = "gyro_sensor"; + data->gyro_indio_dev->dev.parent = &data->spi->dev; + data->gyro_indio_dev->info = &gyro_info; + data->gyro_indio_dev->channels = gyro_channels; + data->gyro_indio_dev->num_channels = ARRAY_SIZE(gyro_channels); + data->gyro_indio_dev->modes = INDIO_DIRECT_MODE; + data->gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->gyro_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_gyro; + } + + iRet = iio_buffer_register(data->gyro_indio_dev, data->gyro_indio_dev->channels, + data->gyro_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_gyro; + + iRet = iio_device_register(data->gyro_indio_dev); + if (iRet) + goto out_remove_trigger_gyro; + + data->uncal_gyro_indio_dev = iio_allocate_device(0); + if (!data->uncal_gyro_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_uncal_gyro; + } + + data->uncal_gyro_indio_dev->name = "uncalibrated_gyro_sensor"; + data->uncal_gyro_indio_dev->dev.parent = &data->spi->dev; + data->uncal_gyro_indio_dev->info = &uncal_gyro_info; + data->uncal_gyro_indio_dev->channels = uncal_gyro_channels; + data->uncal_gyro_indio_dev->num_channels = ARRAY_SIZE(uncal_gyro_channels); + data->uncal_gyro_indio_dev->modes = INDIO_DIRECT_MODE; + data->uncal_gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->uncal_gyro_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_uncal_gyro; + } + + iRet = iio_buffer_register(data->uncal_gyro_indio_dev, data->uncal_gyro_indio_dev->channels, + data->uncal_gyro_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_uncal_gyro; + + iRet = iio_device_register(data->uncal_gyro_indio_dev); + if (iRet) + goto out_remove_trigger_uncal_gyro; + + data->game_rot_indio_dev = iio_allocate_device(0); + if (!data->game_rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_game_rot; + } + + data->game_rot_indio_dev->name = "game_rotation_vector_sensor"; + data->game_rot_indio_dev->dev.parent = &data->spi->dev; + data->game_rot_indio_dev->info = &game_rot_info; + data->game_rot_indio_dev->channels = game_rot_channels; + data->game_rot_indio_dev->num_channels = ARRAY_SIZE(game_rot_channels); + data->game_rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->game_rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->game_rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_game_rot; + } + + iRet = iio_buffer_register(data->game_rot_indio_dev, data->game_rot_indio_dev->channels, + data->game_rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_game_rot; + + iRet = iio_device_register(data->game_rot_indio_dev); + if (iRet) + goto out_remove_trigger_game_rot; + + data->rot_indio_dev = iio_allocate_device(0); + if (!data->rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_rot; + } + + data->rot_indio_dev->name = "rotation_vector_sensor"; + data->rot_indio_dev->dev.parent = &data->spi->dev; + data->rot_indio_dev->info = &rot_info; + data->rot_indio_dev->channels = rot_channels; + data->rot_indio_dev->num_channels = ARRAY_SIZE(rot_channels); + data->rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_rot; + } + + iRet = iio_buffer_register(data->rot_indio_dev, data->rot_indio_dev->channels, + data->rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_rot; + + iRet = iio_device_register(data->rot_indio_dev); + if (iRet) + goto out_remove_trigger_rot; + + data->step_det_indio_dev = iio_allocate_device(0); + if (!data->step_det_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_step_det; + } + + data->step_det_indio_dev->name = "step_det_sensor"; + data->step_det_indio_dev->dev.parent = &data->spi->dev; + data->step_det_indio_dev->info = &step_det_info; + data->step_det_indio_dev->channels = step_det_channels; + data->step_det_indio_dev->num_channels = ARRAY_SIZE(step_det_channels); + data->step_det_indio_dev->modes = INDIO_DIRECT_MODE; + data->step_det_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->step_det_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_step_det; + } + + iRet = iio_buffer_register(data->step_det_indio_dev, data->step_det_indio_dev->channels, + data->step_det_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_step_det; + + iRet = iio_device_register(data->step_det_indio_dev); + if (iRet) + goto out_remove_trigger_step_det; + + + /* allocate input_device */ + + pressure_input_dev = input_allocate_device(); + if (pressure_input_dev == NULL) + goto iRet_pressure_input_free_device; + + gesture_input_dev = input_allocate_device(); + if (gesture_input_dev == NULL) + goto iRet_gesture_input_free_device; + + light_input_dev = input_allocate_device(); + if (light_input_dev == NULL) + goto iRet_light_input_free_device; + + prox_input_dev = input_allocate_device(); + if (prox_input_dev == NULL) + goto iRet_proximity_input_free_device; + + temp_humi_input_dev = input_allocate_device(); + if (temp_humi_input_dev == NULL) + goto iRet_temp_humidity_input_free_device; + + sig_motion_input_dev = input_allocate_device(); + if (sig_motion_input_dev == NULL) + goto iRet_sig_motion_input_free_device; + + step_cnt_input_dev = input_allocate_device(); + if (step_cnt_input_dev == NULL) + goto iRet_step_cnt_input_free_device; + + meta_input_dev = input_allocate_device(); + if (meta_input_dev == NULL) + goto iRet_meta_input_free_device; + + input_set_drvdata(pressure_input_dev, data); + input_set_drvdata(gesture_input_dev, data); + input_set_drvdata(light_input_dev, data); + input_set_drvdata(prox_input_dev, data); + input_set_drvdata(temp_humi_input_dev, data); + input_set_drvdata(sig_motion_input_dev, data); + input_set_drvdata(step_cnt_input_dev, data); + input_set_drvdata(meta_input_dev, data); + + pressure_input_dev->name = "pressure_sensor"; + gesture_input_dev->name = "gesture_sensor"; + light_input_dev->name = "light_sensor"; + prox_input_dev->name = "proximity_sensor"; + temp_humi_input_dev->name = "temp_humidity_sensor"; + sig_motion_input_dev->name = "sig_motion_sensor"; + step_cnt_input_dev->name = "step_cnt_sensor"; + meta_input_dev->name = "meta_event"; + + input_set_capability(pressure_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(pressure_input_dev, EV_REL, REL_DIAL); + input_set_capability(pressure_input_dev, EV_REL, REL_WHEEL); + +#if defined (CONFIG_SENSORS_SSP_MAX88920) + input_set_capability(gesture_input_dev, EV_ABS, ABS_RUDDER); + input_set_abs_params(gesture_input_dev, ABS_RUDDER, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_WHEEL); + input_set_abs_params(gesture_input_dev, ABS_WHEEL, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_GAS); + input_set_abs_params(gesture_input_dev, ABS_GAS, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_BRAKE); + input_set_abs_params(gesture_input_dev, ABS_BRAKE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_THROTTLE); + input_set_abs_params(gesture_input_dev, ABS_THROTTLE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_X); + input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); + input_set_abs_params(gesture_input_dev, ABS_Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Z); + input_set_abs_params(gesture_input_dev, ABS_Z, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RX); + input_set_abs_params(gesture_input_dev, ABS_RX, 0, 1024, 0, 0); + +#else + input_set_capability(gesture_input_dev, EV_ABS, ABS_X); + input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); + input_set_abs_params(gesture_input_dev, ABS_Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Z); + input_set_abs_params(gesture_input_dev, ABS_Z, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RX); + input_set_abs_params(gesture_input_dev, ABS_RX, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RY); + input_set_abs_params(gesture_input_dev, ABS_RY, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RZ); + input_set_abs_params(gesture_input_dev, ABS_RZ, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_THROTTLE); + input_set_abs_params(gesture_input_dev, ABS_THROTTLE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RUDDER); + input_set_abs_params(gesture_input_dev, ABS_RUDDER, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_WHEEL); + input_set_abs_params(gesture_input_dev, ABS_WHEEL, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_GAS); + input_set_abs_params(gesture_input_dev, ABS_GAS, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_BRAKE); + input_set_abs_params(gesture_input_dev, ABS_BRAKE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0X); + input_set_abs_params(gesture_input_dev, ABS_HAT0X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0Y); + input_set_abs_params(gesture_input_dev, ABS_HAT0Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1X); + input_set_abs_params(gesture_input_dev, ABS_HAT1X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1Y); + input_set_abs_params(gesture_input_dev, ABS_HAT1Y, 0, 1024, 0, 0); + + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2X); + input_set_abs_params(gesture_input_dev, ABS_HAT2X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2Y); + input_set_abs_params(gesture_input_dev, ABS_HAT2Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3X); + input_set_abs_params(gesture_input_dev, ABS_HAT3X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3Y); + input_set_abs_params(gesture_input_dev, ABS_HAT3Y, 0, 1024, 0, 0); +#endif + + input_set_capability(light_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(light_input_dev, EV_REL, REL_DIAL); + input_set_capability(light_input_dev, EV_REL, REL_WHEEL); + input_set_capability(light_input_dev, EV_REL, REL_MISC); +#if defined (CONFIG_SENSORS_SSP_MAX88921) + input_set_capability(light_input_dev, EV_REL, REL_RY); + input_set_capability(light_input_dev, EV_REL, REL_RZ); +#endif + + + input_set_capability(prox_input_dev, EV_ABS, ABS_DISTANCE); + input_set_abs_params(prox_input_dev, ABS_DISTANCE, 0, 1, 0, 0); + + input_set_capability(temp_humi_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_DIAL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_WHEEL); + + input_set_capability(sig_motion_input_dev, EV_REL, REL_MISC); + + input_set_capability(step_cnt_input_dev, EV_REL, REL_MISC); + + input_set_capability(meta_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(meta_input_dev, EV_REL, REL_DIAL); + + /* register input_device */ + iRet = input_register_device(pressure_input_dev); + if (iRet < 0) + goto iRet_pressure_input_unreg_device; + + iRet = input_register_device(gesture_input_dev); + if (iRet < 0) { + input_free_device(gesture_input_dev); + input_free_device(light_input_dev); + input_free_device(prox_input_dev); + input_free_device(temp_humi_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_gesture_input_unreg_device; + } + + iRet = input_register_device(light_input_dev); + if (iRet < 0) { + input_free_device(light_input_dev); + input_free_device(prox_input_dev); + input_free_device(temp_humi_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_light_input_unreg_device; + } + + iRet = input_register_device(prox_input_dev); + if (iRet < 0) { + input_free_device(prox_input_dev); + input_free_device(temp_humi_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_proximity_input_unreg_device; + } + + iRet = input_register_device(temp_humi_input_dev); + if (iRet < 0) { + input_free_device(temp_humi_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_tmep_humi_input_unreg_device; + } + + iRet = input_register_device(sig_motion_input_dev); + if (iRet < 0) { + input_free_device(sig_motion_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_sig_motion_input_unreg_device; + } + + iRet = input_register_device(step_cnt_input_dev); + if (iRet < 0) { + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_step_cnt_input_unreg_device; + } + + iRet = input_register_device(meta_input_dev); + if (iRet < 0) { + input_free_device(meta_input_dev); + goto iRet_meta_input_unreg_device; + } + + data->pressure_input_dev = pressure_input_dev; + data->gesture_input_dev = gesture_input_dev; + data->light_input_dev = light_input_dev; + data->prox_input_dev = prox_input_dev; + data->temp_humi_input_dev = temp_humi_input_dev; + data->sig_motion_input_dev = sig_motion_input_dev; + data->step_cnt_input_dev = step_cnt_input_dev; + data->meta_input_dev = meta_input_dev; + + return SUCCESS; +iRet_meta_input_unreg_device: + input_unregister_device(step_cnt_input_dev); +iRet_step_cnt_input_unreg_device: + input_unregister_device(sig_motion_input_dev); +iRet_sig_motion_input_unreg_device: + input_unregister_device(temp_humi_input_dev); +iRet_tmep_humi_input_unreg_device: + input_unregister_device(prox_input_dev); +iRet_proximity_input_unreg_device: + input_unregister_device(light_input_dev); +iRet_light_input_unreg_device: + input_unregister_device(gesture_input_dev); +iRet_gesture_input_unreg_device: + input_unregister_device(pressure_input_dev); + return ERROR; +iRet_pressure_input_unreg_device: + input_free_device(meta_input_dev); +iRet_meta_input_free_device: + input_free_device(step_cnt_input_dev); +iRet_step_cnt_input_free_device: + input_free_device(sig_motion_input_dev); +iRet_sig_motion_input_free_device: + input_free_device(temp_humi_input_dev); +iRet_temp_humidity_input_free_device: + input_free_device(prox_input_dev); +iRet_proximity_input_free_device: + input_free_device(light_input_dev); +iRet_light_input_free_device: + input_free_device(gesture_input_dev); +iRet_gesture_input_free_device: + input_free_device(pressure_input_dev); +iRet_pressure_input_free_device: + iio_device_unregister(data->step_det_indio_dev); +out_remove_trigger_step_det: + iio_buffer_unregister(data->step_det_indio_dev); +out_unreg_ring_step_det: + ssp_iio_unconfigure_ring(data->step_det_indio_dev); +out_free_step_det: + iio_free_device(data->step_det_indio_dev); +out_alloc_fail_step_det: + iio_device_unregister(data->rot_indio_dev); +out_remove_trigger_rot: + iio_buffer_unregister(data->rot_indio_dev); +out_unreg_ring_rot: + ssp_iio_unconfigure_ring(data->rot_indio_dev); +out_free_rot: + iio_free_device(data->rot_indio_dev); +out_alloc_fail_rot: + iio_device_unregister(data->game_rot_indio_dev); +out_remove_trigger_game_rot: + iio_buffer_unregister(data->game_rot_indio_dev); +out_unreg_ring_game_rot: + ssp_iio_unconfigure_ring(data->game_rot_indio_dev); +out_free_game_rot: + iio_free_device(data->game_rot_indio_dev); +out_alloc_fail_game_rot: + iio_device_unregister(data->uncal_gyro_indio_dev); +out_remove_trigger_uncal_gyro: + iio_buffer_unregister(data->uncal_gyro_indio_dev); +out_unreg_ring_uncal_gyro: + ssp_iio_unconfigure_ring(data->uncal_gyro_indio_dev); +out_free_uncal_gyro: + iio_free_device(data->uncal_gyro_indio_dev); +out_alloc_fail_uncal_gyro: + iio_device_unregister(data->gyro_indio_dev); +out_remove_trigger_gyro: + iio_buffer_unregister(data->gyro_indio_dev); +out_unreg_ring_gyro: + ssp_iio_unconfigure_ring(data->gyro_indio_dev); +out_free_gyro: + iio_free_device(data->gyro_indio_dev); +out_alloc_fail_gyro: + iio_device_unregister(data->uncal_mag_indio_dev); +out_remove_trigger_uncal_mag: + iio_buffer_unregister(data->uncal_mag_indio_dev); +out_unreg_ring_uncal_mag: + ssp_iio_unconfigure_ring(data->uncal_mag_indio_dev); +out_free_uncal_mag: + iio_free_device(data->uncal_mag_indio_dev); +out_alloc_fail_uncal_mag: + iio_device_unregister(data->mag_indio_dev); +out_remove_trigger_mag: + iio_buffer_unregister(data->mag_indio_dev); +out_unreg_ring_mag: + ssp_iio_unconfigure_ring(data->mag_indio_dev); +out_free_mag: + iio_free_device(data->mag_indio_dev); +out_alloc_fail_mag: + iio_device_unregister(data->accel_indio_dev); +out_remove_trigger_accel: + iio_buffer_unregister(data->accel_indio_dev); +out_unreg_ring_accel: + ssp_iio_unconfigure_ring(data->accel_indio_dev); +out_free_accel: + iio_free_device(data->accel_indio_dev); + pr_err("[SSP]: %s - could not allocate input device\n", __func__); + return ERROR; +} + +void remove_input_dev(struct ssp_data *data) +{ + input_unregister_device(data->pressure_input_dev); + input_unregister_device(data->gesture_input_dev); + input_unregister_device(data->light_input_dev); + input_unregister_device(data->prox_input_dev); + input_unregister_device(data->temp_humi_input_dev); + input_unregister_device(data->sig_motion_input_dev); + input_unregister_device(data->step_cnt_input_dev); + input_unregister_device(data->meta_input_dev); +} diff --git a/drivers/sensorhub/stm32f/ssp_sysfs.c b/drivers/sensorhub/stm32f/ssp_sysfs.c index 22f1de78e8ff..4e972928ff6a 100755 --- a/drivers/sensorhub/stm32f/ssp_sysfs.c +++ b/drivers/sensorhub/stm32f/ssp_sysfs.c @@ -1,1042 +1,1022 @@ -/* - * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - */ -#include "ssp.h" -#include - -#include "../../staging/iio/events.h" -#include "../../staging/iio/iio.h" -#if defined (CONFIG_MACH_VIKALCU) -#include -#endif - -#define BATCH_IOCTL_MAGIC 0xFC - -struct batch_config { - int64_t timeout; - int64_t delay; - int flag; -}; - -/*************************************************************************/ -/* SSP data delay function */ -/*************************************************************************/ - -int get_msdelay(int64_t dDelayRate) { - return div_s64(dDelayRate, 1000000); -} - - -static void enable_sensor(struct ssp_data *data, - int iSensorType, int64_t dNewDelay) -{ - u8 uBuf[9]; - unsigned int uNewEnable = 0; - s32 maxBatchReportLatency = 0; - s8 batchOptions = 0; - int64_t dTempDelay = data->adDelayBuf[iSensorType]; - s32 dMsDelay = get_msdelay(dNewDelay); - int ret = 0; - - data->adDelayBuf[iSensorType] = dNewDelay; - maxBatchReportLatency = data->batchLatencyBuf[iSensorType]; - batchOptions = data->batchOptBuf[iSensorType]; - - switch (data->aiCheckStatus[iSensorType]) { - case ADD_SENSOR_STATE: - ssp_dbg("[SSP]: %s - add %u, New = %lldns\n", - __func__, 1 << iSensorType, dNewDelay); - - memcpy(&uBuf[0], &dMsDelay, 4); - memcpy(&uBuf[4], &maxBatchReportLatency, 4); - uBuf[8] = batchOptions; - - ret = send_instruction(data, ADD_SENSOR, iSensorType, uBuf, 9); - pr_info("[SSP], delay %d, timeout %d, flag=%d, ret%d", - dMsDelay, maxBatchReportLatency, uBuf[8], ret); - if (ret <= 0) { - uNewEnable = - (unsigned int)atomic_read(&data->aSensorEnable) - & (~(unsigned int)(1 << iSensorType)); - atomic_set(&data->aSensorEnable, uNewEnable); - - data->aiCheckStatus[iSensorType] = NO_SENSOR_STATE; - data->uMissSensorCnt++; - break; - } - - data->aiCheckStatus[iSensorType] = RUNNING_SENSOR_STATE; - - if (iSensorType == PROXIMITY_SENSOR) { - proximity_open_lcd_ldi(data); - proximity_open_calibration(data); - - input_report_abs(data->prox_input_dev, ABS_DISTANCE, 1); - input_sync(data->prox_input_dev); - } - break; - case RUNNING_SENSOR_STATE: - if (get_msdelay(dTempDelay) - == get_msdelay(data->adDelayBuf[iSensorType])) - break; - - ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", - __func__, 1 << iSensorType, dNewDelay); - - memcpy(&uBuf[0], &dMsDelay, 4); - memcpy(&uBuf[4], &maxBatchReportLatency, 4); - uBuf[8] = batchOptions; - send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); - - break; - default: - data->aiCheckStatus[iSensorType] = ADD_SENSOR_STATE; - } -} - -static void change_sensor_delay(struct ssp_data *data, - int iSensorType, int64_t dNewDelay) -{ - u8 uBuf[9]; - s32 maxBatchReportLatency = 0; - s8 batchOptions = 0; - int64_t dTempDelay = data->adDelayBuf[iSensorType]; - s32 dMsDelay = get_msdelay(dNewDelay); - - data->adDelayBuf[iSensorType] = dNewDelay; - data->batchLatencyBuf[iSensorType] = maxBatchReportLatency; - data->batchOptBuf[iSensorType] = batchOptions; - - switch (data->aiCheckStatus[iSensorType]) { - case RUNNING_SENSOR_STATE: - if (get_msdelay(dTempDelay) - == get_msdelay(data->adDelayBuf[iSensorType])) - break; - - ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", - __func__, 1 << iSensorType, dNewDelay); - - memcpy(&uBuf[0], &dMsDelay, 4); - memcpy(&uBuf[4], &maxBatchReportLatency, 4); - uBuf[8] = batchOptions; - send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); - - break; - default: - break; - } -} - -/*************************************************************************/ -/* SSP data enable function */ -/*************************************************************************/ - -static int ssp_remove_sensor(struct ssp_data *data, - unsigned int uChangedSensor, unsigned int uNewEnable) -{ - u8 uBuf[4]; - int64_t dSensorDelay = data->adDelayBuf[uChangedSensor]; - ssp_dbg("[SSP]: %s - remove sensor = %d, current state = %d\n", - __func__, (1 << uChangedSensor), uNewEnable); - - data->adDelayBuf[uChangedSensor] = DEFUALT_POLLING_DELAY; - data->batchLatencyBuf[uChangedSensor] = 0; - data->batchOptBuf[uChangedSensor] = 0; - - if (uChangedSensor == ORIENTATION_SENSOR) { - if (!(atomic_read(&data->aSensorEnable) - & (1 << ACCELEROMETER_SENSOR))) { - uChangedSensor = ACCELEROMETER_SENSOR; - } else { - change_sensor_delay(data, ACCELEROMETER_SENSOR, - data->adDelayBuf[ACCELEROMETER_SENSOR]); - return 0; - } - } else if (uChangedSensor == ACCELEROMETER_SENSOR) { - if (atomic_read(&data->aSensorEnable) - & (1 << ORIENTATION_SENSOR)) { - change_sensor_delay(data, ORIENTATION_SENSOR, - data->adDelayBuf[ORIENTATION_SENSOR]); - return 0; - } - } else if (uChangedSensor == GEOMAGNETIC_SENSOR) { - if (mag_store_hwoffset(data)) - pr_err("mag_store_hwoffset success\n"); - } - - if (!data->bSspShutdown) - if (atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) { - s32 dMsDelay = get_msdelay(dSensorDelay); - memcpy(&uBuf[0], &dMsDelay, 4); - - send_instruction(data, REMOVE_SENSOR, uChangedSensor, uBuf, 4); - } - data->aiCheckStatus[uChangedSensor] = NO_SENSOR_STATE; - - return 0; -} - -/*************************************************************************/ -/* ssp Sysfs */ -/*************************************************************************/ - -static ssize_t show_enable_irq(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - ssp_dbg("[SSP]: %s - %d\n", __func__, !data->bSspShutdown); - - return sprintf(buf, "%d\n", !data->bSspShutdown); -} - -static ssize_t set_enable_irq(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - u8 dTemp; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtou8(buf, 10, &dTemp) < 0) - return -1; - - pr_info("[SSP] %s - %d start\n", __func__, dTemp); - if (dTemp) { - reset_mcu(data); - enable_debug_timer(data); - } else if (!dTemp) { - disable_debug_timer(data); - ssp_enable(data, 0); - } else - pr_err("[SSP] %s - invalid value\n", __func__); - pr_info("[SSP] %s - %d end\n", __func__, dTemp); - return size; -} - -static ssize_t show_sensors_enable(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - ssp_dbg("[SSP]: %s - cur_enable = %d\n", __func__, - atomic_read(&data->aSensorEnable)); - - return sprintf(buf, "%9u\n", atomic_read(&data->aSensorEnable)); -} - -static ssize_t set_sensors_enable(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dTemp; - int iRet; - unsigned int uNewEnable = 0, uChangedSensor = 0; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dTemp) < 0) - return -EINVAL; - - uNewEnable = (unsigned int)dTemp; - ssp_dbg("[SSP]: %s - new_enable = %u, old_enable = %u\n", __func__, - uNewEnable, atomic_read(&data->aSensorEnable)); - - if (uNewEnable == atomic_read(&data->aSensorEnable)) - return size; - - for (uChangedSensor = 0; uChangedSensor < SENSOR_MAX; uChangedSensor++) { - if ((atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) - != (uNewEnable & (1 << uChangedSensor))) { - - if (!(uNewEnable & (1 << uChangedSensor))) { - ssp_remove_sensor(data, uChangedSensor, - uNewEnable); /* disable */ - } else { /* Change to ADD_SENSOR_STATE from KitKat */ - if (data->aiCheckStatus[uChangedSensor] == INITIALIZATION_STATE) { - if (uChangedSensor == ACCELEROMETER_SENSOR) { - accel_open_calibration(data); - iRet = set_accel_cal(data); - if (iRet < 0) - pr_err("[SSP]: %s - set_accel_cal failed %d\n", __func__, iRet); - } - else if (uChangedSensor == GYROSCOPE_SENSOR) { - gyro_open_calibration(data); - iRet = set_gyro_cal(data); - if (iRet < 0) - pr_err("[SSP]: %s - set_gyro_cal failed %d\n", __func__, iRet); - } - else if (uChangedSensor == PRESSURE_SENSOR) - pressure_open_calibration(data); - else if (uChangedSensor == PROXIMITY_SENSOR) { - proximity_open_lcd_ldi(data); - proximity_open_calibration(data); - } - } - data->aiCheckStatus[uChangedSensor] = ADD_SENSOR_STATE; - enable_sensor(data, uChangedSensor, data->adDelayBuf[uChangedSensor]); - } - break; - } - } - atomic_set(&data->aSensorEnable, uNewEnable); - - return size; -} - -static ssize_t set_flush(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dTemp; - u8 sensor_type = 0; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dTemp) < 0) - return -EINVAL; - - sensor_type = (u8)dTemp; - if (!(atomic_read(&data->aSensorEnable) & (1 << sensor_type))) - return -EINVAL; - - if (flush(data, sensor_type) < 0) { - pr_err("[SSP] ssp returns error for flush(%x)", sensor_type); - return -EINVAL; - } - return size; -} - -static ssize_t show_acc_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[ACCELEROMETER_SENSOR]); -} - -static ssize_t set_acc_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - if ((atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) && - (data->adDelayBuf[ORIENTATION_SENSOR] < dNewDelay)) - data->adDelayBuf[ACCELEROMETER_SENSOR] = dNewDelay; - else - change_sensor_delay(data, ACCELEROMETER_SENSOR, dNewDelay); - - return size; -} - -static ssize_t show_gyro_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GYROSCOPE_SENSOR]); -} - -static ssize_t set_gyro_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GYROSCOPE_SENSOR, dNewDelay); - return size; -} - -static ssize_t show_mag_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_SENSOR]); -} - -static ssize_t set_mag_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GEOMAGNETIC_SENSOR, dNewDelay); - - return size; -} - -static ssize_t show_uncalib_mag_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_UNCALIB_SENSOR]); -} - -static ssize_t set_uncalib_mag_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GEOMAGNETIC_UNCALIB_SENSOR, dNewDelay); - - return size; -} - -static ssize_t show_rot_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[ROTATION_VECTOR]); -} - -static ssize_t set_rot_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, ROTATION_VECTOR, dNewDelay); - - return size; -} - -static ssize_t show_game_rot_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GAME_ROTATION_VECTOR]); -} - -static ssize_t set_game_rot_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GAME_ROTATION_VECTOR, dNewDelay); - - return size; -} - -static ssize_t show_step_det_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", - data->adDelayBuf[STEP_DETECTOR]); -} - -static ssize_t set_step_det_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -1; - - change_sensor_delay(data, STEP_DETECTOR, dNewDelay); - return size; -} - -static ssize_t show_sig_motion_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", - data->adDelayBuf[SIG_MOTION_SENSOR]); -} - -static ssize_t set_sig_motion_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -1; - - change_sensor_delay(data, SIG_MOTION_SENSOR, dNewDelay); - return size; -} - -static ssize_t show_step_cnt_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", - data->adDelayBuf[STEP_COUNTER]); -} - -static ssize_t set_step_cnt_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -1; - - change_sensor_delay(data, STEP_COUNTER, dNewDelay); - return size; -} - -static ssize_t show_uncalib_gyro_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GYRO_UNCALIB_SENSOR]); -} - -static ssize_t set_uncalib_gyro_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GYRO_UNCALIB_SENSOR, dNewDelay); - - return size; -} - -static ssize_t show_pressure_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[PRESSURE_SENSOR]); -} - -static ssize_t set_pressure_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, PRESSURE_SENSOR, dNewDelay); - return size; -} - -static ssize_t show_gesture_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[GESTURE_SENSOR]); -} - -static ssize_t set_gesture_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, GESTURE_SENSOR, dNewDelay); - - return size; -} - -static ssize_t show_light_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[LIGHT_SENSOR]); -} - -static ssize_t set_light_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, LIGHT_SENSOR, dNewDelay); - return size; -} - -static ssize_t show_prox_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", data->adDelayBuf[PROXIMITY_SENSOR]); -} - -static ssize_t set_prox_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, PROXIMITY_SENSOR, dNewDelay); - return size; -} - -static ssize_t show_temp_humi_delay(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - - return sprintf(buf, "%lld\n", - data->adDelayBuf[TEMPERATURE_HUMIDITY_SENSOR]); -} - -static ssize_t set_temp_humi_delay(struct device *dev, - struct device_attribute *attr, const char *buf, size_t size) -{ - int64_t dNewDelay; - struct ssp_data *data = dev_get_drvdata(dev); - - if (kstrtoll(buf, 10, &dNewDelay) < 0) - return -EINVAL; - - change_sensor_delay(data, TEMPERATURE_HUMIDITY_SENSOR, dNewDelay); - return size; -} - -ssize_t ssp_sensorhub_voicel_pcmdump_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - struct ssp_data *data = dev_get_drvdata(dev); - int status = ssp_sensorhub_pcm_dump(data->hub_data); - - return sprintf(buf, "%s\n", (status ? "OK" : "NG")); -} - -static DEVICE_ATTR(voice_pcmdump, S_IRUGO, ssp_sensorhub_voicel_pcmdump_show, NULL); - -static struct device_attribute *voice_attrs[] = { - &dev_attr_voice_pcmdump, - NULL, -}; - -static void initialize_voice_sysfs(struct ssp_data *data) -{ - sensors_register(data->voice_device, data, voice_attrs, "ssp_voice"); -} - -static void remove_voice_sysfs(struct ssp_data *data) -{ - sensors_unregister(data->voice_device, voice_attrs); -} - - -static DEVICE_ATTR(mcu_rev, S_IRUGO, mcu_revision_show, NULL); -static DEVICE_ATTR(mcu_name, S_IRUGO, mcu_model_name_show, NULL); -static DEVICE_ATTR(mcu_update, S_IRUGO, mcu_update_kernel_bin_show, NULL); -static DEVICE_ATTR(mcu_update2, S_IRUGO, - mcu_update_kernel_crashed_bin_show, NULL); -static DEVICE_ATTR(mcu_update_ums, S_IRUGO, mcu_update_ums_bin_show, NULL); -static DEVICE_ATTR(mcu_reset, S_IRUGO, mcu_reset_show, NULL); -static DEVICE_ATTR(mcu_dump, S_IRUGO, mcu_dump_show, NULL); - -static DEVICE_ATTR(mcu_test, S_IRUGO | S_IWUSR | S_IWGRP, - mcu_factorytest_show, mcu_factorytest_store); -static DEVICE_ATTR(mcu_sleep_test, S_IRUGO | S_IWUSR | S_IWGRP, - mcu_sleep_factorytest_show, mcu_sleep_factorytest_store); -static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, - show_sensors_enable, set_sensors_enable); -static DEVICE_ATTR(enable_irq, S_IRUGO | S_IWUSR | S_IWGRP, - show_enable_irq, set_enable_irq); -static DEVICE_ATTR(rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_rot_delay, set_rot_delay); -static DEVICE_ATTR(game_rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_game_rot_delay, set_game_rot_delay); -static DEVICE_ATTR(step_det_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_step_det_delay, set_step_det_delay); - -static DEVICE_ATTR(accel_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_acc_delay, set_acc_delay); -static DEVICE_ATTR(gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_gyro_delay, set_gyro_delay); -static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, - NULL, set_flush); -static struct device_attribute dev_attr_mag_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_mag_delay, set_mag_delay); -static struct device_attribute dev_attr_uncalib_mag_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_uncalib_mag_delay, set_uncalib_mag_delay); -static struct device_attribute dev_attr_pressure_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_pressure_delay, set_pressure_delay); -static struct device_attribute dev_attr_gesture_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_gesture_delay, set_gesture_delay); -static struct device_attribute dev_attr_light_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_light_delay, set_light_delay); -static struct device_attribute dev_attr_prox_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_prox_delay, set_prox_delay); -static struct device_attribute dev_attr_temp_humi_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_temp_humi_delay, set_temp_humi_delay); -static struct device_attribute dev_attr_sig_motion_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_sig_motion_delay, set_sig_motion_delay); -static struct device_attribute dev_attr_uncalib_gyro_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_uncalib_gyro_delay, set_uncalib_gyro_delay); -static struct device_attribute dev_attr_step_cnt_poll_delay - = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, - show_step_cnt_delay, set_step_cnt_delay); - -static struct device_attribute *mcu_attrs[] = { - &dev_attr_enable, - &dev_attr_mcu_rev, - &dev_attr_mcu_name, - &dev_attr_mcu_test, - &dev_attr_mcu_reset, - &dev_attr_mcu_dump, - &dev_attr_mcu_update, - &dev_attr_mcu_update2, - &dev_attr_mcu_update_ums, - &dev_attr_mcu_sleep_test, - &dev_attr_enable_irq, - &dev_attr_accel_poll_delay, - &dev_attr_gyro_poll_delay, - &dev_attr_rot_poll_delay, - &dev_attr_game_rot_poll_delay, - &dev_attr_step_det_poll_delay, - &dev_attr_step_cnt_poll_delay, - &dev_attr_ssp_flush, - NULL, -}; - -static long ssp_batch_ioctl(struct file *file, unsigned int cmd, - unsigned long arg) -{ - struct ssp_data *data - = container_of(file->private_data, - struct ssp_data, batch_io_device); - - struct batch_config batch; - - void __user *argp = (void __user *)arg; - int retries = 2; - int ret = 0; - int sensor_type, ms_delay; - int timeout_ms = 0; - u8 uBuf[9]; - - sensor_type = (cmd & 0xFF); - - if ((cmd >> 8 & 0xFF) != BATCH_IOCTL_MAGIC) { - pr_err("[SSP] Invalid BATCH CMD %x", cmd); - return -EINVAL; - } - - while (retries--) { - ret = copy_from_user(&batch, argp, sizeof(batch)); - if (likely(!ret)) - break; - } - if (unlikely(ret)) { - pr_err("[SSP] batch ioctl err(%d)", ret); - return -EINVAL; - } - ms_delay = get_msdelay(batch.delay); - timeout_ms = div_s64(batch.timeout, 1000000); - memcpy(&uBuf[0], &ms_delay, 4); - memcpy(&uBuf[4], &timeout_ms, 4); - uBuf[8] = batch.flag; - - if (batch.timeout){ /* add or dry */ - - if(!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* real batch, NOT DRY, change delay */ - ret = 1; - /* if sensor is not running state, enable will be called. - MCU return fail when receive chage delay inst during NO_SENSOR STATE */ - if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { - ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); - } - if (ret > 0) { // ret 1 is success - data->batchOptBuf[sensor_type] = (u8)batch.flag; - data->batchLatencyBuf[sensor_type] = timeout_ms; - data->adDelayBuf[sensor_type] = batch.delay; - } - } else { /* real batch, DRY RUN */ - ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); - if (ret > 0) { // ret 1 is success - data->batchOptBuf[sensor_type] = (u8)batch.flag; - data->batchLatencyBuf[sensor_type] = timeout_ms; - data->adDelayBuf[sensor_type] = batch.delay; - } - } - } else { /* remove batch or normal change delay, remove or add will be called. */ - - if (!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* no batch, NOT DRY, change delay */ - data->batchOptBuf[sensor_type] = 0; - data->batchLatencyBuf[sensor_type] = 0; - data->adDelayBuf[sensor_type] = batch.delay; - if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { - send_instruction(data, CHANGE_DELAY, sensor_type, uBuf, 9); - } - } - } - - pr_info("[SSP] batch %d: delay %lld, timeout %lld, flag %d, ret %d", - sensor_type, batch.delay, batch.timeout, batch.flag, ret); - if (!batch.timeout) - return 0; - if (ret <= 0) - return -EINVAL; - else - return 0; -} - - -static struct file_operations ssp_batch_fops = { - .owner = THIS_MODULE, - .open = nonseekable_open, - .unlocked_ioctl = ssp_batch_ioctl, -}; - - -static void initialize_mcu_factorytest(struct ssp_data *data) -{ - sensors_register(data->mcu_device, data, mcu_attrs, "ssp_sensor"); -} - -static void remove_mcu_factorytest(struct ssp_data *data) -{ - sensors_unregister(data->mcu_device, mcu_attrs); -} - -int initialize_sysfs(struct ssp_data *data) -{ - if (device_create_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay)) - goto err_pressure_input_dev; - - if (device_create_file(&data->gesture_input_dev->dev, - &dev_attr_gesture_poll_delay)) - goto err_gesture_input_dev; - - if (device_create_file(&data->light_input_dev->dev, - &dev_attr_light_poll_delay)) - goto err_light_input_dev; - - if (device_create_file(&data->prox_input_dev->dev, - &dev_attr_prox_poll_delay)) - goto err_prox_input_dev; - - if (device_create_file(&data->temp_humi_input_dev->dev, - &dev_attr_temp_humi_poll_delay)) - goto err_temp_humi_input_dev; - - if (device_create_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay)) - goto err_mag_input_dev; - - if (device_create_file(&data->uncalib_mag_input_dev->dev, - &dev_attr_uncalib_mag_poll_delay)) - goto err_uncalib_mag_input_dev; - - if (device_create_file(&data->sig_motion_input_dev->dev, - &dev_attr_sig_motion_poll_delay)) - goto err_sig_motion_input_dev; - - if (device_create_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay)) - goto err_uncalib_gyro_input_dev; - - if (device_create_file(&data->step_cnt_input_dev->dev, - &dev_attr_step_cnt_poll_delay)) - goto err_step_cnt_input_dev; - - data->batch_io_device.minor = MISC_DYNAMIC_MINOR; - data->batch_io_device.name = "batch_io"; - data->batch_io_device.fops = &ssp_batch_fops; - if (misc_register(&data->batch_io_device)) - goto err_batch_io_dev; - - initialize_accel_factorytest(data); - initialize_gyro_factorytest(data); - initialize_prox_factorytest(data); - initialize_light_factorytest(data); - initialize_pressure_factorytest(data); - initialize_magnetic_factorytest(data); - initialize_mcu_factorytest(data); -#if defined (CONFIG_SENSORS_SSP_MAX88921) - initialize_gesture_factorytest(data); -#endif -#ifdef CONFIG_SENSORS_SSP_SHTC1 - initialize_temphumidity_factorytest(data); -#endif - /*snamy.jeong_0630 voice dump & data*/ - initialize_voice_sysfs(data); - - return SUCCESS; -err_batch_io_dev: - device_remove_file(&data->step_cnt_input_dev->dev, - &dev_attr_step_cnt_poll_delay); -err_step_cnt_input_dev: - device_remove_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay); -err_uncalib_gyro_input_dev: - device_remove_file(&data->sig_motion_input_dev->dev, - &dev_attr_sig_motion_poll_delay); -err_sig_motion_input_dev: - device_remove_file(&data->uncalib_mag_input_dev->dev, - &dev_attr_uncalib_mag_poll_delay); -err_uncalib_mag_input_dev: - device_remove_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay); -err_mag_input_dev: - device_remove_file(&data->temp_humi_input_dev->dev, - &dev_attr_temp_humi_poll_delay); -err_temp_humi_input_dev: - device_remove_file(&data->prox_input_dev->dev, - &dev_attr_prox_poll_delay); -err_prox_input_dev: - device_remove_file(&data->light_input_dev->dev, - &dev_attr_light_poll_delay); -err_light_input_dev: - device_remove_file(&data->gesture_input_dev->dev, - &dev_attr_gesture_poll_delay); -err_gesture_input_dev: - device_remove_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay); -err_pressure_input_dev: - pr_err("[SSP] error init sysfs"); - return ERROR; -} - -void remove_sysfs(struct ssp_data *data) -{ - device_remove_file(&data->pressure_input_dev->dev, - &dev_attr_pressure_poll_delay); - device_remove_file(&data->gesture_input_dev->dev, - &dev_attr_gesture_poll_delay); - device_remove_file(&data->light_input_dev->dev, - &dev_attr_light_poll_delay); - device_remove_file(&data->prox_input_dev->dev, - &dev_attr_prox_poll_delay); - device_remove_file(&data->temp_humi_input_dev->dev, - &dev_attr_temp_humi_poll_delay); - device_remove_file(&data->mag_input_dev->dev, - &dev_attr_mag_poll_delay); - device_remove_file(&data->uncalib_mag_input_dev->dev, - &dev_attr_uncalib_mag_poll_delay); - device_remove_file(&data->sig_motion_input_dev->dev, - &dev_attr_sig_motion_poll_delay); - device_remove_file(&data->uncalib_gyro_input_dev->dev, - &dev_attr_uncalib_gyro_poll_delay); - device_remove_file(&data->step_cnt_input_dev->dev, - &dev_attr_step_cnt_poll_delay); - ssp_batch_fops.unlocked_ioctl = NULL; - misc_deregister(&data->batch_io_device); - remove_accel_factorytest(data); - remove_gyro_factorytest(data); - remove_prox_factorytest(data); - remove_light_factorytest(data); - remove_pressure_factorytest(data); - remove_magnetic_factorytest(data); - remove_mcu_factorytest(data); -#ifdef CONFIG_SENSORS_SSP_MAX88920 - remove_gesture_factorytest(data); -#endif -#ifdef CONFIG_SENSORS_SSP_SHTC1 - remove_temphumidity_factorytest(data); -#endif - - /*snamy.jeong_0630 voice dump & data*/ - remove_voice_sysfs(data); - - destroy_sensor_class(); -} - -#if defined (CONFIG_MACH_VIKALCU) -static struct regulator *sub_ldo1 = NULL; -extern int get_lcd_attached(void); -void proximity_ldo_enable(int onoff) -{ - int ret = 0; - if (get_lcd_attached() == 0) - { - pr_err("skip proximity_ldo_enable : LCD is not attached\n"); - return; - } - - if(!sub_ldo1){ - sub_ldo1 = regulator_get(NULL, "lp8720_ldo1"); - if (IS_ERR(sub_ldo1)){ - pr_err("lp8720 : could not get sub_ldo1, rc = %ld\n", PTR_ERR(sub_ldo1)); - sub_ldo1 = NULL; - } - if(sub_ldo1 != NULL){ - ret = regulator_set_voltage(sub_ldo1, 1800000, 1800000); - if (ret) - pr_err("set_voltage sub_ldo1 failed, rc=%d\n", ret); - } - } - if(sub_ldo1 != NULL){ - if(onoff){ - printk(KERN_ERR "[SSP] %s : on\n",__func__); - ret = regulator_enable(sub_ldo1); - if (ret) - pr_err("enable sub_ldo1 failed, rc=%d\n", ret); - } - else{ - printk(KERN_ERR "[SSP] %s : off ",__func__); - ret = regulator_disable(sub_ldo1); - if (ret) - pr_err("enable sub_ldo1 failed, rc=%d\n", ret); - } - gpio_tlmm_config(GPIO_CFG(561, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), GPIO_CFG_ENABLE); - gpio_set_value(561, 1); - }else{ - pr_err("sub_ldo1 is NULL, failed\n"); - } -} -#endif +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include + +#include "../../staging/iio/events.h" +#include "../../staging/iio/iio.h" +#if defined (CONFIG_MACH_VIKALCU) +#include +#endif + +#define BATCH_IOCTL_MAGIC 0xFC + +struct batch_config { + int64_t timeout; + int64_t delay; + int flag; +}; + +/*************************************************************************/ +/* SSP data delay function */ +/*************************************************************************/ + +int get_msdelay(int64_t dDelayRate) { + /* + * From Android 5.0, There is MaxDelay Concept. + * If App request lower frequency then MaxDelay, + * Sensor have to work with MaxDelay. + */ + + if (dDelayRate > 200000000) + dDelayRate = 200000000; + return div_s64(dDelayRate, 1000000); +} + + +static void enable_sensor(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + unsigned int uNewEnable = 0; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + int ret = 0; + + data->adDelayBuf[iSensorType] = dNewDelay; + maxBatchReportLatency = data->batchLatencyBuf[iSensorType]; + batchOptions = data->batchOptBuf[iSensorType]; + + switch (data->aiCheckStatus[iSensorType]) { + case ADD_SENSOR_STATE: + ssp_dbg("[SSP]: %s - add %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + + ret = send_instruction(data, ADD_SENSOR, iSensorType, uBuf, 9); + pr_info("[SSP], delay %d, timeout %d, flag=%d, ret%d", + dMsDelay, maxBatchReportLatency, uBuf[8], ret); + if (ret <= 0) { + uNewEnable = + (unsigned int)atomic_read(&data->aSensorEnable) + & (~(unsigned int)(1 << iSensorType)); + atomic_set(&data->aSensorEnable, uNewEnable); + + data->aiCheckStatus[iSensorType] = NO_SENSOR_STATE; + data->uMissSensorCnt++; + break; + } + + data->aiCheckStatus[iSensorType] = RUNNING_SENSOR_STATE; + + if (iSensorType == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + + } + break; + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + data->aiCheckStatus[iSensorType] = ADD_SENSOR_STATE; + } +} + +static void change_sensor_delay(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + + data->adDelayBuf[iSensorType] = dNewDelay; + data->batchLatencyBuf[iSensorType] = maxBatchReportLatency; + data->batchOptBuf[iSensorType] = batchOptions; + + switch (data->aiCheckStatus[iSensorType]) { + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + break; + } +} + +/*************************************************************************/ +/* SSP data enable function */ +/*************************************************************************/ + +static int ssp_remove_sensor(struct ssp_data *data, + unsigned int uChangedSensor, unsigned int uNewEnable) +{ + u8 uBuf[4]; + int64_t dSensorDelay = data->adDelayBuf[uChangedSensor]; + ssp_dbg("[SSP]: %s - remove sensor = %d, current state = %d\n", + __func__, (1 << uChangedSensor), uNewEnable); + + data->adDelayBuf[uChangedSensor] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[uChangedSensor] = 0; + data->batchOptBuf[uChangedSensor] = 0; + + if (uChangedSensor == ORIENTATION_SENSOR) { + if (!(atomic_read(&data->aSensorEnable) + & (1 << ACCELEROMETER_SENSOR))) { + uChangedSensor = ACCELEROMETER_SENSOR; + } else { + change_sensor_delay(data, ACCELEROMETER_SENSOR, + data->adDelayBuf[ACCELEROMETER_SENSOR]); + return 0; + } + } else if (uChangedSensor == ACCELEROMETER_SENSOR) { + if (atomic_read(&data->aSensorEnable) + & (1 << ORIENTATION_SENSOR)) { + change_sensor_delay(data, ORIENTATION_SENSOR, + data->adDelayBuf[ORIENTATION_SENSOR]); + return 0; + } + } else if (uChangedSensor == GEOMAGNETIC_SENSOR) { + if (mag_store_hwoffset(data)) + pr_err("mag_store_hwoffset success\n"); + } + + if (!data->bSspShutdown) + if (atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) { + s32 dMsDelay = get_msdelay(dSensorDelay); + memcpy(&uBuf[0], &dMsDelay, 4); + + send_instruction(data, REMOVE_SENSOR, uChangedSensor, uBuf, 4); + } + data->aiCheckStatus[uChangedSensor] = NO_SENSOR_STATE; + + return 0; +} + +/*************************************************************************/ +/* ssp Sysfs */ +/*************************************************************************/ + +static ssize_t show_enable_irq(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - %d\n", __func__, !data->bSspShutdown); + + return sprintf(buf, "%d\n", !data->bSspShutdown); +} + +static ssize_t set_enable_irq(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u8 dTemp; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtou8(buf, 10, &dTemp) < 0) + return -1; + + pr_info("[SSP] %s - %d start\n", __func__, dTemp); + if (dTemp) { + reset_mcu(data); + enable_debug_timer(data); + } else if (!dTemp) { + disable_debug_timer(data); + ssp_enable(data, 0); + } else + pr_err("[SSP] %s - invalid value\n", __func__); + pr_info("[SSP] %s - %d end\n", __func__, dTemp); + return size; +} + +static ssize_t show_sensors_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - cur_enable = %d\n", __func__, + atomic_read(&data->aSensorEnable)); + + return sprintf(buf, "%9u\n", atomic_read(&data->aSensorEnable)); +} + +static ssize_t set_sensors_enable(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + int iRet; + unsigned int uNewEnable = 0, uChangedSensor = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + uNewEnable = (unsigned int)dTemp; + ssp_dbg("[SSP]: %s - new_enable = %u, old_enable = %u\n", __func__, + uNewEnable, atomic_read(&data->aSensorEnable)); + + if (uNewEnable == atomic_read(&data->aSensorEnable)) + return size; + + for (uChangedSensor = 0; uChangedSensor < SENSOR_MAX; uChangedSensor++) { + if ((atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) + != (uNewEnable & (1 << uChangedSensor))) { + + if (!(uNewEnable & (1 << uChangedSensor))) { + data->reportedData[uChangedSensor] = false; + ssp_remove_sensor(data, uChangedSensor, + uNewEnable); /* disable */ + } else { /* Change to ADD_SENSOR_STATE from KitKat */ + if (data->aiCheckStatus[uChangedSensor] == INITIALIZATION_STATE) { + if (uChangedSensor == ACCELEROMETER_SENSOR) { + accel_open_calibration(data); + iRet = set_accel_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_accel_cal failed %d\n", __func__, iRet); + } + else if (uChangedSensor == GYROSCOPE_SENSOR) { + gyro_open_calibration(data); + iRet = set_gyro_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_gyro_cal failed %d\n", __func__, iRet); + } + else if (uChangedSensor == PRESSURE_SENSOR) + pressure_open_calibration(data); + else if (uChangedSensor == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + } + } + data->aiCheckStatus[uChangedSensor] = ADD_SENSOR_STATE; + enable_sensor(data, uChangedSensor, data->adDelayBuf[uChangedSensor]); + } + break; + } + } + atomic_set(&data->aSensorEnable, uNewEnable); + + return size; +} + +static ssize_t set_flush(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + u8 sensor_type = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + sensor_type = (u8)dTemp; + if (!(atomic_read(&data->aSensorEnable) & (1 << sensor_type))) + return -EINVAL; + + if (flush(data, sensor_type) < 0) { + pr_err("[SSP] ssp returns error for flush(%x)", sensor_type); + return -EINVAL; + } + return size; +} + +static ssize_t show_acc_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ACCELEROMETER_SENSOR]); +} + +static ssize_t set_acc_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + if ((atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) && + (data->adDelayBuf[ORIENTATION_SENSOR] < dNewDelay)) + data->adDelayBuf[ACCELEROMETER_SENSOR] = dNewDelay; + else + change_sensor_delay(data, ACCELEROMETER_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYROSCOPE_SENSOR]); +} + +static ssize_t set_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYROSCOPE_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_SENSOR]); +} + +static ssize_t set_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_uncalib_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_UNCALIB_SENSOR]); +} + +static ssize_t set_uncalib_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ROTATION_VECTOR]); +} + +static ssize_t set_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_game_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GAME_ROTATION_VECTOR]); +} + +static ssize_t set_game_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GAME_ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_step_det_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_DETECTOR]); +} + +static ssize_t set_step_det_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_DETECTOR, dNewDelay); + return size; +} + +static ssize_t show_sig_motion_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[SIG_MOTION_SENSOR]); +} + +static ssize_t set_sig_motion_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, SIG_MOTION_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_step_cnt_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_COUNTER]); +} + +static ssize_t set_step_cnt_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_COUNTER, dNewDelay); + return size; +} + +static ssize_t show_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYRO_UNCALIB_SENSOR]); +} + +static ssize_t set_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYRO_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_pressure_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PRESSURE_SENSOR]); +} + +static ssize_t set_pressure_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PRESSURE_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_gesture_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GESTURE_SENSOR]); +} + +static ssize_t set_gesture_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GESTURE_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_light_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[LIGHT_SENSOR]); +} + +static ssize_t set_light_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, LIGHT_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_prox_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PROXIMITY_SENSOR]); +} + +static ssize_t set_prox_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PROXIMITY_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_temp_humi_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[TEMPERATURE_HUMIDITY_SENSOR]); +} + +static ssize_t set_temp_humi_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, TEMPERATURE_HUMIDITY_SENSOR, dNewDelay); + return size; +} + +ssize_t ssp_sensorhub_voicel_pcmdump_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int status = ssp_sensorhub_pcm_dump(data->hub_data); + + return sprintf(buf, "%s\n", (status ? "OK" : "NG")); +} + +static DEVICE_ATTR(voice_pcmdump, S_IRUGO, ssp_sensorhub_voicel_pcmdump_show, NULL); + +static struct device_attribute *voice_attrs[] = { + &dev_attr_voice_pcmdump, + NULL, +}; + +static void initialize_voice_sysfs(struct ssp_data *data) +{ + sensors_register(data->voice_device, data, voice_attrs, "ssp_voice"); +} + +static void remove_voice_sysfs(struct ssp_data *data) +{ + sensors_unregister(data->voice_device, voice_attrs); +} + + +static DEVICE_ATTR(mcu_rev, S_IRUGO, mcu_revision_show, NULL); +static DEVICE_ATTR(mcu_name, S_IRUGO, mcu_model_name_show, NULL); +static DEVICE_ATTR(mcu_update, S_IRUSR|S_IRGRP, mcu_update_kernel_bin_show, NULL); +static DEVICE_ATTR(mcu_update2, S_IRUSR|S_IRGRP, + mcu_update_kernel_crashed_bin_show, NULL); +static DEVICE_ATTR(mcu_update_ums, S_IRUSR|S_IRGRP, mcu_update_ums_bin_show, NULL); +static DEVICE_ATTR(mcu_reset, S_IRUSR|S_IRGRP, mcu_reset_show, NULL); +static DEVICE_ATTR(mcu_dump, S_IRUSR|S_IRGRP, mcu_dump_show, NULL); + +static DEVICE_ATTR(mcu_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_factorytest_show, mcu_factorytest_store); +static DEVICE_ATTR(mcu_sleep_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_sleep_factorytest_show, mcu_sleep_factorytest_store); +static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + show_sensors_enable, set_sensors_enable); +static DEVICE_ATTR(enable_irq, S_IRUGO | S_IWUSR | S_IWGRP, + show_enable_irq, set_enable_irq); +static DEVICE_ATTR(rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_rot_delay, set_rot_delay); +static DEVICE_ATTR(game_rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_game_rot_delay, set_game_rot_delay); +static DEVICE_ATTR(step_det_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_det_delay, set_step_det_delay); + +static DEVICE_ATTR(accel_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_acc_delay, set_acc_delay); +static DEVICE_ATTR(gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gyro_delay, set_gyro_delay); +static DEVICE_ATTR(uncalib_gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncalib_gyro_delay, set_uncalib_gyro_delay); +static DEVICE_ATTR(mag_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_mag_delay, set_mag_delay); +static DEVICE_ATTR(uncal_mag_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncalib_mag_delay, set_uncalib_mag_delay); + +static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, + NULL, set_flush); +static struct device_attribute dev_attr_pressure_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_pressure_delay, set_pressure_delay); +static struct device_attribute dev_attr_gesture_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gesture_delay, set_gesture_delay); +static struct device_attribute dev_attr_light_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_light_delay, set_light_delay); +static struct device_attribute dev_attr_prox_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_prox_delay, set_prox_delay); +static struct device_attribute dev_attr_temp_humi_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_temp_humi_delay, set_temp_humi_delay); +static struct device_attribute dev_attr_sig_motion_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_sig_motion_delay, set_sig_motion_delay); +static struct device_attribute dev_attr_step_cnt_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_cnt_delay, set_step_cnt_delay); + +static struct device_attribute *mcu_attrs[] = { + &dev_attr_enable, + &dev_attr_mcu_rev, + &dev_attr_mcu_name, + &dev_attr_mcu_test, + &dev_attr_mcu_reset, + &dev_attr_mcu_dump, + &dev_attr_mcu_update, + &dev_attr_mcu_update2, + &dev_attr_mcu_update_ums, + &dev_attr_mcu_sleep_test, + &dev_attr_enable_irq, + &dev_attr_accel_poll_delay, + &dev_attr_mag_poll_delay, + &dev_attr_uncal_mag_poll_delay, + &dev_attr_gyro_poll_delay, + &dev_attr_uncalib_gyro_poll_delay, + &dev_attr_rot_poll_delay, + &dev_attr_game_rot_poll_delay, + &dev_attr_step_det_poll_delay, + &dev_attr_step_cnt_poll_delay, + &dev_attr_ssp_flush, + NULL, +}; + +static long ssp_batch_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_data *data + = container_of(file->private_data, + struct ssp_data, batch_io_device); + + struct batch_config batch; + + void __user *argp = (void __user *)arg; + int retries = 2; + int ret = 0; + int sensor_type, ms_delay; + int timeout_ms = 0; + u8 uBuf[9]; + + sensor_type = (cmd & 0xFF); + + if ((cmd >> 8 & 0xFF) != BATCH_IOCTL_MAGIC) { + pr_err("[SSP] Invalid BATCH CMD %x", cmd); + return -EINVAL; + } + + while (retries--) { + ret = copy_from_user(&batch, argp, sizeof(batch)); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] batch ioctl err(%d)", ret); + return -EINVAL; + } + ms_delay = get_msdelay(batch.delay); + timeout_ms = div_s64(batch.timeout, 1000000); + memcpy(&uBuf[0], &ms_delay, 4); + memcpy(&uBuf[4], &timeout_ms, 4); + uBuf[8] = batch.flag; + + if (batch.timeout){ /* add or dry */ + + if(!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* real batch, NOT DRY, change delay */ + ret = 1; + /* if sensor is not running state, enable will be called. + MCU return fail when receive chage delay inst during NO_SENSOR STATE */ + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } else { /* real batch, DRY RUN */ + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } + } else { /* remove batch or normal change delay, remove or add will be called. */ + + if (!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* no batch, NOT DRY, change delay */ + data->batchOptBuf[sensor_type] = 0; + data->batchLatencyBuf[sensor_type] = 0; + data->adDelayBuf[sensor_type] = batch.delay; + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + send_instruction(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + } + } + + pr_info("[SSP] batch %d: delay %lld, timeout %lld, flag %d, ret %d", + sensor_type, batch.delay, batch.timeout, batch.flag, ret); + if (!batch.timeout) + return 0; + if (ret <= 0) + return -EINVAL; + else + return 0; +} + + +static struct file_operations ssp_batch_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = ssp_batch_ioctl, +}; + + +static void initialize_mcu_factorytest(struct ssp_data *data) +{ + sensors_register(data->mcu_device, data, mcu_attrs, "ssp_sensor"); +} + +static void remove_mcu_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->mcu_device, mcu_attrs); +} + +int initialize_sysfs(struct ssp_data *data) +{ + if (device_create_file(&data->pressure_input_dev->dev, + &dev_attr_pressure_poll_delay)) + goto err_pressure_input_dev; + + if (device_create_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay)) + goto err_gesture_input_dev; + + if (device_create_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay)) + goto err_light_input_dev; + + if (device_create_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay)) + goto err_prox_input_dev; + + if (device_create_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay)) + goto err_temp_humi_input_dev; + + if (device_create_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay)) + goto err_sig_motion_input_dev; + if (device_create_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay)) + goto err_step_cnt_input_dev; + + data->batch_io_device.minor = MISC_DYNAMIC_MINOR; + data->batch_io_device.name = "batch_io"; + data->batch_io_device.fops = &ssp_batch_fops; + if (misc_register(&data->batch_io_device)) + goto err_batch_io_dev; + + initialize_accel_factorytest(data); + initialize_gyro_factorytest(data); + initialize_prox_factorytest(data); + initialize_light_factorytest(data); + initialize_pressure_factorytest(data); + initialize_magnetic_factorytest(data); + initialize_mcu_factorytest(data); +#if defined (CONFIG_SENSORS_SSP_MAX88920) || defined (CONFIG_SENSORS_SSP_MAX88921) + initialize_gesture_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + initialize_temphumidity_factorytest(data); +#endif + /*snamy.jeong_0630 voice dump & data*/ + initialize_voice_sysfs(data); + + return SUCCESS; +err_batch_io_dev: + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); +err_step_cnt_input_dev: + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); +err_sig_motion_input_dev: + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); +err_temp_humi_input_dev: + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); +err_prox_input_dev: + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); +err_light_input_dev: + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); +err_gesture_input_dev: + device_remove_file(&data->pressure_input_dev->dev, + &dev_attr_pressure_poll_delay); +err_pressure_input_dev: + pr_err("[SSP] error init sysfs"); + return ERROR; +} + +void remove_sysfs(struct ssp_data *data) +{ + device_remove_file(&data->pressure_input_dev->dev, + &dev_attr_pressure_poll_delay); + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); + ssp_batch_fops.unlocked_ioctl = NULL; + misc_deregister(&data->batch_io_device); + remove_accel_factorytest(data); + remove_gyro_factorytest(data); + remove_prox_factorytest(data); + remove_light_factorytest(data); + remove_pressure_factorytest(data); + remove_magnetic_factorytest(data); + remove_mcu_factorytest(data); +#if defined (CONFIG_SENSORS_SSP_MAX88920) || defined (CONFIG_SENSORS_SSP_MAX88921) + remove_gesture_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + remove_temphumidity_factorytest(data); +#endif + + /*snamy.jeong_0630 voice dump & data*/ + remove_voice_sysfs(data); + + destroy_sensor_class(); +} + +#if defined (CONFIG_MACH_VIKALCU) +static struct regulator *sub_ldo1 = NULL; +extern int get_lcd_attached(void); +void proximity_ldo_enable(int onoff) +{ + int ret = 0; + if (get_lcd_attached() == 0) + { + pr_err("skip proximity_ldo_enable : LCD is not attached\n"); + return; + } + + if(!sub_ldo1){ + sub_ldo1 = regulator_get(NULL, "lp8720_ldo1"); + if (IS_ERR(sub_ldo1)){ + pr_err("lp8720 : could not get sub_ldo1, rc = %ld\n", PTR_ERR(sub_ldo1)); + sub_ldo1 = NULL; + } + if(sub_ldo1 != NULL){ + ret = regulator_set_voltage(sub_ldo1, 1800000, 1800000); + if (ret) + pr_err("set_voltage sub_ldo1 failed, rc=%d\n", ret); + } + } + if(sub_ldo1 != NULL){ + if(onoff){ + printk(KERN_ERR "[SSP] %s : on\n",__func__); + ret = regulator_enable(sub_ldo1); + if (ret) + pr_err("enable sub_ldo1 failed, rc=%d\n", ret); + } + else{ + printk(KERN_ERR "[SSP] %s : off ",__func__); + ret = regulator_disable(sub_ldo1); + if (ret) + pr_err("enable sub_ldo1 failed, rc=%d\n", ret); + } + gpio_tlmm_config(GPIO_CFG(561, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), GPIO_CFG_ENABLE); + gpio_set_value(561, 1); + }else{ + pr_err("sub_ldo1 is NULL, failed\n"); + } +} +#endif diff --git a/drivers/sensorhub/stm_hestia/Kconfig b/drivers/sensorhub/stm_hestia/Kconfig new file mode 100755 index 000000000000..153d151a755d --- /dev/null +++ b/drivers/sensorhub/stm_hestia/Kconfig @@ -0,0 +1,178 @@ +# +# sensor drivers configuration +# +config SENSORS_SYSFS + tristate "Sensors sysfs" + help + Support sysfs for sensors. + If you say yes here you get sysfs support for + sensor factory test. + To compile this driver as a module, choose M here: the + module will be called sensors_core. + +config SENSORS_SSP + tristate "Sensors ssp" + default n + depends on SPI + help + ssp driver for sensor hub. + If you say yes here you get ssp support for + sensor hub. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AK8963C + tristate "Sensors ssp ak8963c" + default n + depends on SPI + help + ak8963c file for factory test in ssp driver. + If you say yes here you get ak8963c support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AK09911 + tristate "Sensors ssp ak09911" + default n + depends on SPI + help + ak09911 file for factory test and doeplus in ssp driver. + If you say yes here you get ak09911 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_YAS532 + tristate "Sensors ssp yas532" + default n + depends on SPI + help + yas532 file for factory test in ssp driver. + If you say yes here you get yas532 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_ACCELEROMETER_POSITION + int "Accelerometer Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_GYROSCOPE_POSITION + int "Gyroscope Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_MAGNETOMETER_POSITION + int "Geomagnetic Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_SENSORHUB + tristate "Sensors ssp sensorhub" + default n + depends on SPI + help + ssp sensor hub driver for sensor hub. + If you say yes here you get ssp support for + sensor hub. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_FACTORY + tristate "ssp factory" + depends on SENSORS_SSP + default n + help + ssp sensor hub driver for factory test. + If you say yes here you can enable fatory drvier for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_C12SD + tristate "Sensors ssp C12SD" + default n + depends on SENSORS_SSP + help + This is for GUVA_C12SD UV Sensor + device driver. + GUVA_C12SD is made by Genicom. + If you say yes here you get c12sd support. + If you say no here c12sd will not be supported. + +config SENSORS_AD7146 + tristate "ANALOG DEVICES AD7146 Multi-Proximity Sensor" + default n + depends on I2C && SYSFS + help + If you say yes here you get support for the AD7146 + multi proximity sensor. + This driver can also be built as a module. If so, the module + will be called ad7146. + +config SENSORS_MAX86900 + tristate "MAXIM MAX86900 HRM Sensor" + default n + depends on I2C && SYSFS + help + If you say yes here you get support for the MAX86900 + HRM sensor. + This driver can also be built as a module. If so, the module + will be called max86900. + +config SENSORS_MLX90615 + tristate "MLX90615 body temperature sensor support" + depends on I2C + default n + help + bodytemp bodytemp bodytemp bodytemp bodytemp bodytemp + +config SENSORS_BIO + tristate "BIO sensor control" + depends on SYSFS + default n + help + bio sensor control + +config SENSORS_SSP_BOUNCE_FIRMWARE + tristate "Sensors ssp BOUNCE_FIRMWARE" + default n + depends on SENSORS_SSP_STM + help + This is for Bounce firmware support. + If you say yes here you get bounce firmware support. + If you say no here bounce firmware will not be supported. + +source "drivers/sensorhub/stm_hestia/factory/Kconfig" diff --git a/drivers/sensorhub/stm_hestia/Makefile b/drivers/sensorhub/stm_hestia/Makefile new file mode 100755 index 000000000000..3069e09ff9ae --- /dev/null +++ b/drivers/sensorhub/stm_hestia/Makefile @@ -0,0 +1,18 @@ +# +# Makefile for the sensor drivers. +# + +# Each configuration option enables a list of files. +obj-$(CONFIG_SENSORS_SSP) += ssp_dev.o ssp_i2c.o ssp_data.o ssp_sysfs.o\ + ssp_input.o ssp_firmware.o ssp_debug.o ssp_iio_ring.o ssp_iio_trigger.o +obj-$(CONFIG_SENSORS_SYSFS) += sensors_core.o +obj-$(CONFIG_SENSORS_SSP_AK8963C) += ssp_ak8963c.o +obj-$(CONFIG_SENSORS_SSP_SENSORHUB) += ssp_sensorhub.o + +obj-$(CONFIG_SENSORS_SSP_C12SD) += ssp_c12sd.o +obj-$(CONFIG_SENSORS_AD7146) += ad7146.o +obj-$(CONFIG_SENSORS_MAX86900) += max86900.o +obj-$(CONFIG_SENSORS_MLX90615) += mlx90615.o +obj-$(CONFIG_SENSORS_BIO) += bio.o +obj-$(CONFIG_SENSORS_ADPD142) += adpd142.o +obj-$(CONFIG_SENSORS_SSP_FACTORY) += factory/ diff --git a/drivers/sensorhub/stm_hestia/ad7146.c b/drivers/sensorhub/stm_hestia/ad7146.c new file mode 100755 index 000000000000..c44cf8cd3e15 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ad7146.c @@ -0,0 +1,1611 @@ +/** + *\mainpage + * AD7146 MLD Driver +\n + * @copyright 2013 Analog Devices Inc. +\n + * Licensed under the GPL Version 3 or later. + * \date April-2013 + * \version Driver 1.3 + * \version Android ICS 4.0 + * \version Linux 3.0.15 + */ + + +/** + * \file ad7146.c + * This file is the core driver part of AD7146 for Event interface + * It also has routines for interrupt handling,suspend, resume, + * initialization routines etc. + * AD7146 MLD Driver + * Copyright 2013 Analog Devices Inc. + * Licensed under the GPL Version 3 or later. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ad7146.h" +#include "ssp.h" +//#include "sensors_core.h" + +#define VENDOR_NAME "ADI" +#define DEVICE_NAME "AD7146" + +//#define AD7146_DEBUG +#define AD7146_DEBUG_L2 + +#define OFFSET_FILE_PATH "/efs/grip_cal_data" + +#define FULL_POWER_MASK (0xFFFC) + +#define FIXED_TH 7000 +#define CAL_HIGH_MAX 62000 +#define CAL_HIGH_MIN 34250 +#define CENTER_CDC 30000 +#define CAL_LOW_MAX 29750 +#define CAL_LOW_MIN 2000 +#define LSB_FOR_CAP 5200 +#define MAX_OFFSET 126 +#define CAL_RET_SUCCESS (2) +#define CAL_RET_EXIST (1) +#define CAL_RET_NONE (0) +#define CAL_RET_FAIL (3) + +#define DO_CALIBRATE 1 +#define DONE_CALIBRATE 0 + +#define LD_POS_AFE_OFFSET(x) ((x & 0x003F) * ((x & 0x0080) ? -1 : 1)) +#define LD_NEG_AFE_OFFSET(x) (((x & 0x3F00) >> 8) * ((x & 0x8000) ? 1 : -1)) +#define ST_POS_AFE_OFFSET(x) (((x > 63) ? ((x - 63) << 8) | 0x003F : x) | 0x8000) +#define ST_NEG_AFE_OFFSET(x) (((-x > 63) ? (-x - 63) | 0x3F00 : (-x) << 8) | 0x0080) + +#ifdef AD7146_DEBUG +#define AD7146_DRIVER_DBG(format, arg...) pr_info("[Grip]:"format,\ + ## arg) +#else +#define AD7146_DRIVER_DBG(format, arg...) if (0) +#endif + +#ifdef AD7146_DEBUG_L2 +#define AD7146_DRIVER_DBG_L2(format, arg...) pr_info("[Grip]:"format,\ + ## arg) +#else +#define AD7146_DRIVER_DBG_L2(format, arg...) if (0) +#endif + +static struct ad7146_platform_data ad7146_i2c_platform_data = { +// For init touch mode + .regs = { +//Samsung GT - Latest Implementation 1.3 version - Initialization settings, 0x(address)(value) + 0x0080FFFF, 0x00811FEF, 0x00823600, 0x00832626, + 0x00840258, 0x00850258, 0x0086013A, 0x0087013A, + 0x0000C000, 0x00010000, 0x0002004B, 0x000301FF, + 0x0004FFFF, 0x0000C002, 0x00450D01, 0x00050000, + 0x00060000, 0x00070000, + }, +// Normal touch mode + .normal_regs = { +//Samsung GT - Latest Implementation 1.3 version - Normal State settings + 0x0000C002, 0x00010001, + }, + .fixed_th_full = 40000, // 0 ~ 65535 +}; + +/** +Look up table for the Sensitivity values of the AD7146 +*/ +static int SS_LUT[16] = { + 2500, 2973, 3440, 3908, + 4379, 4847, 5315, 5783, + 6251, 6722, 7190, 7658, + 8128, 8596, 9064, 9532 +}; + +/** + * The global mutex for the locking of the ISR. + */ +DEFINE_MUTEX(interrupt_thread_mutex); +/* + This elaborates the sysfs attributes used in the driver + */ +/*--------------------------------------------------------------*/ +static ssize_t show_dumpregs(struct device *dev, + struct device_attribute *attr, char *buf); +static struct device_attribute dev_attr_sensor_dump = + __ATTR(status, S_IRUSR | S_IRGRP, + show_dumpregs, NULL); +/*--------------------------------------------------------------*/ +static ssize_t store_enable(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count); +static ssize_t show_enable(struct device *dev, + struct device_attribute *attr, char *buf); + +static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + show_enable, store_enable); +/*--------------------------------------------------------------*/ +/** +SYSFS attributes list +*/ +static struct attribute *ad7146_sysfs_entries[] = { + &dev_attr_enable.attr, + NULL +}; +/** +SYSFS attribute Group +*/ +static struct attribute_group ad7146_attr_group = { + .name = NULL, + .attrs = ad7146_sysfs_entries, +}; + +/** + Writes to the Device register through i2C. + Used to Write the data to the I2C client's Register through the i2c protocol + + @param data The data to be written + @param reg The register address + @param dev The Device Structure + @return 0 on success + + @see ad7146_i2c_read + */ +static int ad7146_i2c_write(struct device *dev, unsigned short reg, + unsigned short data) +{ + struct i2c_client *client = to_i2c_client(dev); + int ret; + u8 *_reg = (u8 *)® + u8 *_data = (u8 *)&data; + + u8 tx[4] = { + _reg[1], + _reg[0], + _data[1], + _data[0] + }; + ret = i2c_master_send(client, tx, 4); + if (ret < 0) + dev_err(&client->dev, "I2C write error (%d)\n", ret); + return ret; +} +/** + Reads data from the Device register through i2C. + This is used to read the data from the AD7146 I2C client + + @param dev The Device Structure (Standard linux call) + @param reg The register address to be read. + @param data The data Read from the Given address. + @return The number of bytes transfered as an integer + + @see ad7146_i2c_write + */ + +static int ad7146_i2c_read(struct device *dev, unsigned short reg, + unsigned short *data) +{ + struct i2c_client *client = to_i2c_client(dev); + int ret; + u8 *_reg = (u8 *)® + u8 *_data = (u8 *)data; + + u8 tx[2] = { + _reg[1], + _reg[0] + }; + u8 rx[2]; + + ret = i2c_master_send(client, tx, 2); + if (ret >= 0) + ret = i2c_master_recv(client, rx, 2); + + if (unlikely(ret < 0)) { + dev_err(&client->dev, "I2C read error (%d)\n", ret); + } else { + _data[0] = rx[1]; + _data[1] = rx[0]; + } + + return ret; +} + +static int sensorshutdownmode(struct ad7146_chip *ad7146) +{ + unsigned short data = 0; + + mutex_lock(&interrupt_thread_mutex); + + ad7146->read(ad7146->dev, AD7146_PWR_CTRL, &data); + data = (data | 0x03); + ad7146->write(ad7146->dev, AD7146_PWR_CTRL, data); + + mutex_unlock(&interrupt_thread_mutex); + return 0; +} + +static void ad7146_force_cal(struct ad7146_chip *ad7146, int cal_time) +{ + unsigned short data; + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + + ad7146->read(ad7146->dev, AD7146_AMB_COMP_CTRL0_REG, &data); + data = data | AD7146_FORCED_CAL_MASK; + ad7146->write(ad7146->dev, AD7146_AMB_COMP_CTRL0_REG, data); + + msleep(cal_time); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); +} + +/** + This function is used to indicate Full Grip state by event + @param ad7146 The AD7146 chip structure pointer + @return void + + */ +static inline void indicatefullgripstate(struct ad7146_chip *ad7146) +{ + AD7146_DRIVER_DBG("indicatefullgripstate()\n"); + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, EVENT_FULL_GRIP + 1); + input_sync(ad7146->input); + } +} + +/** + This function is used to indicate No Grip state by event + @param ad7146 The AD7146 chip structure pointer + @return void + + */ +static inline void indicatenormalstate(struct ad7146_chip *ad7146) +{ + AD7146_DRIVER_DBG("indicatenormalstate()\n"); + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, EVENT_NO_GRIP + 1); + input_sync(ad7146->input); + } +} + +/** +This Function is used to determine the No Grip and + enter to the NORMAL mode of operation + @param ad7146 The Chip Structure. + @return void - Nothing returned + */ + +static void initnormalgrip(struct ad7146_chip *ad7146) +{ + unsigned int lcnt = 0; + + indicatenormalstate(ad7146); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, + DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, + DISABLE_INT); + + for (lcnt = 0; lcnt < (sizeof(ad7146_i2c_platform_data.normal_regs)/sizeof(int)); + lcnt++) { + unsigned short addr; + unsigned short value; + addr = (unsigned short)((ad7146_i2c_platform_data.normal_regs[lcnt] & + 0xffff0000) >> 16); + value = (unsigned short)(ad7146_i2c_platform_data.normal_regs[lcnt] & + 0x0000ffff); + + ad7146->write(ad7146->dev, addr, value); + } + + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + + ad7146->pw_on_grip_status = DRIVER_STATE_NORMAL; + AD7146_DRIVER_DBG("Forced Calibration in func %s\n", __func__); + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, ENABLE_STG0); +} + +/** +This Function is used in the POWER_ON GRIP detection to + determine the Full Grip status. +@param ad7146 The Chip Structure. +@return void - Nothing returned +*/ + +static void initfullgrip(struct ad7146_chip *ad7146) +{ + unsigned short sf_amb = 0; + unsigned short cdc_data = 0; + unsigned short theshold_low; + + indicatefullgripstate(ad7146); + + if (ad7146->cal_flags == CAL_RET_NONE) + theshold_low = ad7146_i2c_platform_data.fixed_th_full; + else + theshold_low = ad7146_i2c_platform_data.cal_fixed_th_full; + + ad7146->write(ad7146->dev, AD7146_STG_CAL_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_0_LOW_THRESHOLD, theshold_low); + /* Change the Ambient to set the theshold as a fixed value + DONOT CHANGE THE FOLLOWING LINE*/ + ad7146->write(ad7146->dev, DRIVER_STG0_SF_AMBIENT , FULL_SCALE_VALUE); + ad7146->pw_on_grip_status = DRIVER_STATE_FULL_GRIP; + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &cdc_data); + ad7146->read(ad7146->dev, STG_0_LOW_THRESHOLD, &theshold_low); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT , &sf_amb); + AD7146_DRIVER_DBG_L2(" %s, AMB %d CurrentCDC %d theshold_low %d\n", __func__, + sf_amb, cdc_data, theshold_low); + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); +} + +/** + This function is used to identify and report the first grip status. + @param ad7146 The AD7146 chip structure pointer + @return void - Nothing Returned +*/ + +static int sensorgrip(struct ad7146_chip *ad7146) +{ + unsigned short conv0_avg = 0; + unsigned short threshold; + + mutex_lock(&interrupt_thread_mutex); + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &conv0_avg); + AD7146_DRIVER_DBG("conv0_avg = %5d\n", conv0_avg); + + if (conv0_avg < OVER_FLOW_SCALE_VALUE) + conv0_avg = FULL_SCALE_VALUE; + + if (ad7146->cal_flags == CAL_RET_NONE) + threshold = ad7146_i2c_platform_data.fixed_th_full; + else + threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + if (conv0_avg < threshold) { + initnormalgrip(ad7146); + } else { + initfullgrip(ad7146); + } + + mutex_unlock(&interrupt_thread_mutex) ; + return 0; +} + +/** + This is to configure the device with the register set defined in platform file. + Finally calibration is done and status registers will be cleared. + * @param ad7146 The Device structure + * @return void Nothing Returned + */ + +static int ad7146_hw_init(struct ad7146_chip *ad7146) +{ + int lcnt = 0; + + mutex_lock(&interrupt_thread_mutex) ; + /** configuration CDC and interrupts */ + for (lcnt = 0; lcnt < (sizeof(ad7146_i2c_platform_data.regs)/sizeof(int)); lcnt++) { + unsigned short addr; + unsigned short value; + addr = (unsigned short)((ad7146_i2c_platform_data.regs[lcnt] & + 0xffff0000) >> 16); + value = (unsigned short)(ad7146_i2c_platform_data.regs[lcnt] & + 0x0000ffff); + if (addr == DRIVER_STG0_AFEOFFSET) { + if (ad7146->cal_flags != CAL_RET_NONE) + value = ad7146_i2c_platform_data.cal_offset; + AD7146_DRIVER_DBG_L2(" %s, Addr %x Val %x\n", __func__, addr, value); + } + if (addr == AD7146_AMB_COMP_CTRL0_REG) + value = value & 0xBFFF; + + ad7146->write(ad7146->dev, addr, value); + } + + msleep(SLEEP_TIME_TO_CALI_INT); + + ad7146->prev_state_value = -1; + ad7146->state_value = EVENT_NO_GRIP; + ad7146->prevhigh = 0; + + AD7146_DRIVER_DBG("Force calibration done\n"); + mutex_unlock(&interrupt_thread_mutex); + + return 0; +} + +/** +This Function is used for the creating a Register Dump of the registers of the AD7146. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146 + @param buf The buffer to store the data to be written + @param count The count of bytes to be transfered to the Device + + \note This is evoked upon an echo request in /sys/../ region. + \note This also prints the results in the console for the user. + @return count of data written + */ +static ssize_t show_dumpregs(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short u16temp; + unsigned int u32_lpcnt = 0; + + mutex_lock(&interrupt_thread_mutex); + pr_info("[Grip]: Bank 1 register\n"); + for (u32_lpcnt = 0; u32_lpcnt < 0x16; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + ad7146->read(ad7146->dev, (unsigned short)0x042, &u16temp); + pr_info("[Grip]: Reg 0X0042 val 0x%x\n", u16temp); + + ad7146->read(ad7146->dev, (unsigned short)0x0045, &u16temp); + pr_info("[Grip]: Reg 0X0045 val 0x%x\n", u16temp); + + pr_info("[Grip]: Bank 2 register - Config\n"); + for (u32_lpcnt = 0x080; u32_lpcnt < 0x090; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + pr_info("[Grip]: Bank 3 register - Results\n"); + for (u32_lpcnt = 0x0E0; u32_lpcnt < 0x128; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + mutex_unlock(&interrupt_thread_mutex); + + return sprintf(buf, "0\n"); +} + +static int ad7146_open_calibration(struct ad7146_chip *ad7146) +{ + struct file *offset_filp = NULL; + unsigned short st_file[2] = {0}; + int err = 0; + mm_segment_t old_fs; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + offset_filp = filp_open(OFFSET_FILE_PATH, O_CREAT | O_RDONLY | O_SYNC, 0666); + if (IS_ERR(offset_filp)) { + pr_err("%s: no offset file\n", __func__); + err = PTR_ERR(offset_filp); + if (err != -ENOENT) + pr_err("%s: Can't open cancelation file\n", __func__); + set_fs(old_fs); + return err; + } + + err = offset_filp->f_op->read(offset_filp, + (char *)&st_file, sizeof(unsigned short) * 2, &offset_filp->f_pos); + if (err != sizeof(unsigned short) * 2) { + pr_err("%s: Can't write the offset data to file\n", __func__); + err = -EIO; + } + + if ((st_file[0] != 0) && (st_file[1] != 0)) { + ad7146->cal_flags = CAL_RET_EXIST; + ad7146_i2c_platform_data.cal_offset = st_file[0]; + ad7146_i2c_platform_data.cal_fixed_th_full = st_file[1]; + } else { + ad7146->cal_flags = CAL_RET_NONE; + ad7146_i2c_platform_data.cal_offset = 0; + ad7146_i2c_platform_data.cal_fixed_th_full = 0; + } + + pr_info("[Grip]: %s, %d, %4x,%d\n", __func__, ad7146->cal_flags, st_file[0], st_file[1]); + + filp_close(offset_filp, current->files); + set_fs(old_fs); + + return err; +} + +/** +This Function is used to enable or to disable the device the Sysfs attribute is +given as "enable" writing a '0' Disables the device. +While writing a '1' enables the device. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146. + @param buf The buffer to store the data to be written. + @param count The count of bytes to be transfered to the Device. + + \note This is evoked upon an echo request in /sys/../ region. + \note This also prints the results in the console for the user. + +@return count of data written. +*/ +static ssize_t store_enable(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + pr_info("[Grip]: %s: enable %d val %d\n", __func__, ad7146->eventcheck, val); + if ((val == 1) || (val == 0)) { + if (ad7146->eventcheck != ((unsigned short) val)) { + ad7146->eventcheck = (unsigned short) val; + + if (ad7146->eventcheck == 1) { + ad7146_open_calibration(ad7146); + ad7146_hw_init(ad7146); + + enable_irq(ad7146->irq); + enable_irq_wake(ad7146->irq); + + sensorgrip(ad7146); + } else { + disable_irq_wake(ad7146->irq); + disable_irq(ad7146->irq); + + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, + DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, + DISABLE_INT); + sensorshutdownmode(ad7146); + } + } + } + } + return count; +} + +/** +This Function is used to show the enabled status of the device. +Status '1' signifies the device is ENABLED, +while the status '0' signifies a DISABLED device. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146. + @param buf The buffer to store the data to be written. + + \note This is evoked upon an cat request in /sys/../ region. + \note This also prints the results in the console for the user. + + @return The count of data written. +*/ +static ssize_t show_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + return sprintf(buf, "%d\n", ad7146->eventcheck); +} + +/** + This callback_tmrfn is the callback function from MLD state machine + for the event intimation of the AD7146 device. + Here the current & previous grip state are compared & the event is sent + accordingly. + + @param data unsigned long data + @return 0 on success + + */ +static inline void callback_tmrfn(unsigned long data) +{ + struct ad7146_chip *ad7146 = (struct ad7146_chip *)data; + short state_value = ad7146->state_value; + short prev_state_value = ad7146->prev_state_value; + + if (state_value != prev_state_value) { + ad7146->prev_state_value = ad7146->state_value; + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, + (unsigned int)state_value + 1); + input_sync(ad7146->input); + pr_info("[Grip]: %s: state_value = %d\n", __func__, state_value); + } else if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 0)) { + pr_info("[Grip]: %s, event locked by flags, %d\n", __func__, ad7146->onoff_flags); + } + } +} + +/** + This MLD State Machine is used to determine the current grip state + + @param ad7146 The AD7146 chip structure + @return 0 on success + + */ +static int sldstateMachine(struct ad7146_chip *ad7146) +{ + unsigned short high = (ad7146->high_status & 3); + unsigned short prevhigh = (ad7146->prevhigh & 3); + short state_value = ad7146->state_value; + + if ((high == 0) && (prevhigh == 0)) { + state_value = EVENT_NO_GRIP; + high = 0; + ad7146->high_status = high; + ad7146->state_value = state_value; + return 0; + } + + if ((high == 1) && (prevhigh == 0)) { + AD7146_DRIVER_DBG("State = 1e\n"); + state_value = EVENT_FULL_GRIP; + } + + if ((high == 0) && (prevhigh == 1)) { + AD7146_DRIVER_DBG("State = 0x\n"); + state_value = EVENT_NO_GRIP; + } + + prevhigh = high; + ad7146->high_status = high; + ad7146->prevhigh = prevhigh; + ad7146->state_value = state_value; + callback_tmrfn((unsigned long)ad7146); + return 0; +} + + +/** + * \fn static int ad7146_hw_detect(struct ad7146_chip *ad7146) + * This Routine reads the Device ID to confirm the existance + * of the Device in the System. + + @param ad7146 The Device structure + @return 0 on Successful detection of the device,-ENODEV on err. + */ + +static int ad7146_hw_detect(struct ad7146_chip *ad7146) +{ + unsigned short data; + + ad7146->read(ad7146->dev, AD7146_PARTID_REG, &data); + switch (data & 0xFFF0) { + case AD7146_PARTID: + ad7146->product = AD7146_PRODUCT_ID; + ad7146->version = data & 0xF; + dev_info(ad7146->dev, "[Grip]: found AD7146 , rev:%d\n", + ad7146->version); + return 0; + + default: + dev_err(ad7146->dev, + "[Grip]: ad7146 Not Found,ID %04x\n", data); + return -ENODEV; + } +} + +/** + This function is used check the stage & accordingly calculate the + hysteresis compensation required. + + @param ad7146 The AD7146 chip structure pointer + @return void - Nothing returned +*/ +static void ad7146_hysteresis_comp(struct ad7146_chip *ad7146) +{ + unsigned short u16_high_threshold = 0; + unsigned short u16_sf_ambient = 0; + unsigned int result = 0; + + if (ad7146->high_status > (short)ad7146->prevhigh) { + if ((ad7146->high_status & 1) && (ad7146->state_value != EVENT_FULL_GRIP)) { + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &u16_high_threshold); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &u16_sf_ambient); + result = HYS(u16_sf_ambient, u16_high_threshold); + ad7146->write(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + (unsigned short)result); + AD7146_DRIVER_DBG_L2(" %s, N STG0 HT 0x%d->0x%d\n", __func__, + u16_high_threshold, result); + } + + } else if (ad7146->high_status < ad7146->prevhigh) { + if ((!(ad7146->high_status & 1)) && + (ad7146->prevhigh & 1)) { + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &u16_high_threshold); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &u16_sf_ambient); + result = HYS_POS(u16_sf_ambient, u16_high_threshold); + ad7146->write(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + (unsigned short)result); + AD7146_DRIVER_DBG_L2(" %s, P STG0 HT 0x%d->0x%d\n", __func__, + u16_high_threshold, result); + } + } +} +/** + IRQ Handler -- Handles the Grip & Normal mode of proximity detection + @param handle The data of the AD7146 Device + @param irq The Interrupt Request queue to be assigned for the device. + + @return IRQ_HANDLED + */ +static irqreturn_t ad7146_isr(int irq, void *handle) +{ + struct ad7146_chip *ad7146 = handle; + mutex_lock(&interrupt_thread_mutex) ; + + wake_lock_timeout(&ad7146->grip_wake_lock, 3 * HZ); + + if (!work_pending(&ad7146->work)) { + schedule_work(&ad7146->work); + } else { + /*Cleared the interrupt for future intterupts to occur*/ + ad7146->read(ad7146->dev, STG_LOW_INT_STA_REG, + &ad7146->low_status); + ad7146->read(ad7146->dev, STG_HIGH_INT_STA_REG, + &ad7146->high_status); + } + + mutex_unlock(&interrupt_thread_mutex); + return IRQ_HANDLED; +} + +/** + Interrupt work Handler -- Handles the Grip & Normal mode of proximity + detection from the ISR + @param work The work structure for the AD7146 chip + + @return void Nothing returned + */ +static void ad7146_interrupt_thread(struct work_struct *work) +{ + struct ad7146_chip *ad7146 = container_of(work, + struct ad7146_chip, work); + unsigned short data = 0; + unsigned short threshold; + + mutex_lock(&interrupt_thread_mutex); + + ad7146->read(ad7146->dev, STG_HIGH_INT_STA_REG, + &ad7146->high_status); + ad7146->read(ad7146->dev, STG_LOW_INT_STA_REG, + &ad7146->low_status); + AD7146_DRIVER_DBG_L2(" %s, HS%x LS%x\n", __func__, + ad7146->high_status, ad7146->low_status); + + if (ad7146->cal_flags == CAL_RET_NONE) + threshold = ad7146_i2c_platform_data.fixed_th_full; + else + threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + if (data < OVER_FLOW_SCALE_VALUE) + data = FULL_SCALE_VALUE; + pr_info("[Grip]: %s, data(%d)\n", __func__, data); + + if (ad7146->pw_on_grip_status == DRIVER_STATE_FULL_GRIP) { // init touch mode + pr_info("[Grip]: %s, FULL_GRIP\n", __func__); + if ((ad7146->low_status & 1) == 1) { + if ((OVER_FLOW_SCALE_VALUE < data) && + (data <= (threshold))) { + initnormalgrip(ad7146); + } else { + ad7146->write(ad7146->dev, DRIVER_STG0_SF_AMBIENT , FULL_SCALE_VALUE); + ad7146->write(ad7146->dev, STG_0_LOW_THRESHOLD, threshold); + pr_info("[Grip]: %s, reset Full Grip\n", __func__); + } + } else { + if (data < threshold) + initnormalgrip(ad7146); + } + } else { // normal mode + pr_info("[Grip]: %s, NORMAL\n", __func__); + if (ad7146->low_status != 0) { + if (OVER_FLOW_SCALE_VALUE < data && data < FULL_SCALE_VALUE) { + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + AD7146_DRIVER_DBG("FCalib(%d) in Low INT\n", data); + } + } else { + ad7146_hysteresis_comp(ad7146); + sldstateMachine(ad7146); + } + } + + mutex_unlock(&interrupt_thread_mutex); +} + +static int offset_write(struct ad7146_chip *ad7146, unsigned short data) +{ + ad7146->write(ad7146->dev, DRIVER_STG0_AFEOFFSET, data); + msleep(SLEEP_TIME_TO_CALI_INT); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &data); + return 0; +} + +static int ad7146_offset_check(struct ad7146_chip *ad7146) +{ + int err = 0; + short cal_offset; + unsigned short data, offset; + + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & + 0x0000ffff); + offset_write(ad7146, offset); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + if (data < CAL_LOW_MIN || CAL_HIGH_MAX < data) { + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + cal_offset += 8; + pr_info("[Grip]: %s,(%d)\n", __func__, cal_offset); + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("[Grip]: %s, Cal offset ERROR(%d)\n", __func__, cal_offset); + } + offset_write(ad7146, offset); + } else { + pr_info("[Grip]: %s, no change offset(%d)\n", __func__, data); + return 0; + } + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + if (data < CAL_LOW_MIN || CAL_HIGH_MAX < data) { + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + if (err < 0) + cal_offset -= 8; + else + cal_offset -= 16; + pr_info("[Grip]: %s,(%d)\n", __func__, cal_offset); + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("[Grip]: %s, Cal offset ERROR(%d)\n", __func__, cal_offset); + } + offset_write(ad7146, offset); + } else { + pr_info("[Grip]: %s, no change offset(%d)\n", __func__, data); + return 0; + } + + return err; +} + +static int ad7146_calibration(struct ad7146_chip *ad7146, bool cal_flag) +{ + struct file *offset_filp = NULL; + mm_segment_t old_fs; + short cal_offset, count = 4; + unsigned short data, offset, temp_offset, temp_fixed_th; + unsigned short st_file[2] = {0}; + int err = 0; + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->cal_flags = CAL_RET_FAIL; + + temp_offset = ad7146_i2c_platform_data.cal_offset; + temp_fixed_th = ad7146_i2c_platform_data.cal_fixed_th_full; + + if (cal_flag) { + ad7146->read(ad7146->dev, AD7146_PWR_CTRL, &data); + data &= FULL_POWER_MASK; + ad7146->write(ad7146->dev, AD7146_PWR_CTRL, data); + msleep(SLEEP_TIME_TO_LOW_POWER + SLEEP_TIME_TO_CALI_INT); + + ad7146_offset_check(ad7146); + + while (count >= 0) { + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + pr_info("[Grip]: %s, %d, %x(%d), %d\n", __func__, + data, offset, cal_offset, count); + + if ((CAL_LOW_MAX < data && data <= CAL_HIGH_MIN) && + (-MAX_OFFSET < cal_offset && cal_offset <= MAX_OFFSET)) { + st_file[0] = offset; + st_file[1] = data + FIXED_TH; + + ad7146_i2c_platform_data.cal_fixed_th_full = data + FIXED_TH; + ad7146_i2c_platform_data.cal_offset = offset; + ad7146->cal_flags = CAL_RET_SUCCESS; + pr_info("[Grip]: %s, cal_fixed_th_full(%u), cal_offset(%u), cal_flags(%d)\n", + __func__, ad7146_i2c_platform_data.cal_fixed_th_full, + ad7146_i2c_platform_data.cal_offset, ad7146->cal_flags); + + break; + } else if (CAL_LOW_MIN < data && data <= CAL_HIGH_MAX) { + if (data > CENTER_CDC) + cal_offset = cal_offset - count; + else + cal_offset = cal_offset + count; + + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("%s, offset ERROR(%d)\n", __func__, data); + break; + } + offset_write(ad7146, offset); + } else { + err = -1; + pr_err("%s, raw data ERROR(%d)\n", __func__, data); + break; + } + if (count > 0) + count /= 2; + else + count -= 1; + } + } else { + st_file[0] = 0; + st_file[1] = 0; + + ad7146->cal_flags = CAL_RET_NONE; + ad7146_i2c_platform_data.cal_fixed_th_full = 0; + ad7146_i2c_platform_data.cal_offset = 0; + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + } + + if (ad7146->cal_flags == CAL_RET_FAIL) { + pr_err("[Grip]: %s, cal fail\n", __func__); + if (ad7146_i2c_platform_data.cal_fixed_th_full != 0) { + offset = ad7146_i2c_platform_data.cal_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } else { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } + } else { + pr_info("[Grip]: %s, cal success\n", __func__); + } + + offset_write(ad7146, offset); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + offset_filp = filp_open(OFFSET_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY | O_SYNC, 0666); + if (IS_ERR(offset_filp)) { + pr_err("[Grip]: %s: Can't open file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(offset_filp); + goto save_fail; + } + + err = offset_filp->f_op->write(offset_filp, + (char *)&st_file, sizeof(unsigned short) * 2, &offset_filp->f_pos); + if (err != sizeof(unsigned short) * 2) { + pr_err("[Grip]: %s: Can't write the offset data to file\n", __func__); + err = -EIO; + filp_close(offset_filp, current->files); + set_fs(old_fs); + goto save_fail; + } + + filp_close(offset_filp, current->files); + set_fs(old_fs); + + return err; +save_fail: + if (cal_flag) { + if (ad7146->cal_flags == CAL_RET_SUCCESS) { + ad7146_i2c_platform_data.cal_fixed_th_full = temp_fixed_th; + ad7146_i2c_platform_data.cal_offset = temp_offset; + if (temp_fixed_th == 0) { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } else { + offset = temp_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } + } + } else { + ad7146_i2c_platform_data.cal_fixed_th_full = temp_fixed_th; + ad7146_i2c_platform_data.cal_offset = temp_offset; + if (temp_fixed_th == 0) { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } else { + offset = temp_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } + } + offset_write(ad7146, offset); + return err; +} + +static ssize_t ad7146_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", DEVICE_NAME); +} + +static ssize_t ad7146_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR_NAME); +} + +static ssize_t ad7146_raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short u16temp; + + if (ad7146->during_cal_flags == DONE_CALIBRATE) { + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &u16temp); + + if (u16temp < OVER_FLOW_SCALE_VALUE) + u16temp = 0xFFFF; + ad7146->during_cal_data = u16temp; + pr_info("[Grip]: %s, raw_data : %d\n", __func__, u16temp); + } + + return snprintf(buf, PAGE_SIZE, "%d\n", ad7146->during_cal_data); +} + +static ssize_t ad7146_onoff_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d\n", ad7146->onoff_flags); +} + +static ssize_t ad7146_onoff_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + pr_info("[Grip]: %s: enable %d val %d\n", __func__, ad7146->onoff_flags, val); + if ((val == 1) || (val == 0)) { + if (ad7146->onoff_flags != ((unsigned char) val)) { + ad7146->onoff_flags = (unsigned char) val; + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 0)) { + input_report_rel(ad7146->input, REL_MISC, + EVENT_NO_GRIP + 1); + input_sync(ad7146->input); + } else if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, + ad7146->state_value + 1); + input_sync(ad7146->input); + pr_info("[Grip]: %s : report state %d\n", __func__, ad7146->state_value); + } + } + } + } + + return size; +} + +static ssize_t ad7146_threshold_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned int fixed_threshold, threshold; + unsigned int sensitivity, data; + unsigned short stg_th, stg_amb; + + if (ad7146->cal_flags == CAL_RET_NONE) + fixed_threshold = ad7146_i2c_platform_data.fixed_th_full; + else + fixed_threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + data = (ad7146_i2c_platform_data.regs[4] & 0x0000ffff); + sensitivity = (ad7146_i2c_platform_data.regs[3] & 0x0000ffff); + threshold = (data / 4) + (((data - (data / 4)) / 16) * SS_LUT[((sensitivity & POS_SENS) >> 8)]) / 10000; + threshold = (threshold * 194) / 100; + + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &stg_th); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &stg_amb); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", (unsigned int)fixed_threshold, + (unsigned int)threshold, (unsigned int) (threshold * (100 - HYS_PERCENT) / 100)); +} + +static ssize_t ad7146_calibration_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d\n", (unsigned int)ad7146->cal_flags); +} + +static ssize_t ad7146_calibration_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + ad7146->during_cal_flags = DO_CALIBRATE; + + if (ad7146->eventcheck != 1) + ad7146_hw_init(ad7146); + + if (val == 0) + ad7146_calibration(ad7146, false); + else if (val == 1) + ad7146_calibration(ad7146, true); + else + pr_err("[Grip]: %s, kstrtoint %d\n", __func__, val); + + ad7146->during_cal_flags = DONE_CALIBRATE; + + if (ad7146->eventcheck == 1) + sensorgrip(ad7146); + else + sensorshutdownmode(ad7146); + } + return size; +} + +static ssize_t ad7146_offset_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short offset; + short cal_offset; + + if (ad7146->cal_flags != CAL_RET_NONE) + offset = ad7146_i2c_platform_data.cal_offset; + else + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + + return snprintf(buf, PAGE_SIZE, "%x,%d\n", offset, cal_offset); +} + +static ssize_t ad7146_offset_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int err; + unsigned short data; + short val; + + err = kstrtos16(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + if (-MAX_OFFSET <= val && val <= MAX_OFFSET) { + pr_info("[Grip]: %s, %d\n", __func__, val); + if (val > 0) + data = ST_POS_AFE_OFFSET(val); + else + data = ST_NEG_AFE_OFFSET(val); + + ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] = + (ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0xFFFF0000) + + ((unsigned int)data & 0x0000FFFF); + + ad7146->write(ad7146->dev, DRIVER_STG0_AFEOFFSET, data); + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + } else { + pr_err("[Grip]: %s, Error for data val(%d)\n", __func__, val); + } + } + + return size; +} + +static struct device_attribute dev_attr_sensor_name = + __ATTR(name, S_IRUSR | S_IRGRP, + ad7146_name_show, NULL); +static struct device_attribute dev_attr_sensor_vendor = + __ATTR(vendor, S_IRUSR | S_IRGRP, + ad7146_vendor_show, NULL); +static struct device_attribute dev_attr_sensor_raw_data = + __ATTR(raw_data, S_IRUSR | S_IRGRP, + ad7146_raw_data_show, NULL); +static struct device_attribute dev_attr_sensor_onoff = + __ATTR(onoff, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_onoff_show, ad7146_onoff_store); +static struct device_attribute dev_attr_sensor_threshold = + __ATTR(threshold, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_threshold_show, NULL); +static struct device_attribute dev_attr_sensor_calibration = + __ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_calibration_show, ad7146_calibration_store); +static struct device_attribute dev_attr_sensor_offset = + __ATTR(offset, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_offset_show, ad7146_offset_store); + + +static struct device_attribute *ad7146_attrs[] = { + &dev_attr_sensor_name, + &dev_attr_sensor_vendor, + &dev_attr_sensor_raw_data, + &dev_attr_sensor_onoff, + &dev_attr_sensor_threshold, + &dev_attr_sensor_calibration, + &dev_attr_sensor_offset, + &dev_attr_sensor_dump, + NULL, +}; + +static int ad7146_parse_dt(struct ad7146_chip *ad7146, struct device *dev) +{ + struct device_node *dNode = dev->of_node; + enum of_gpio_flags flags; + + if (dNode == NULL) + return -ENODEV; + + ad7146->grip_int = of_get_named_gpio_flags(dNode, + "ad7146-i2c,grip_int-gpio", 0, &flags); + if (ad7146->grip_int < 0) { + pr_err("[Grip]: %s - get grip_int error\n", __func__); + return -ENODEV; + } + + return 0; +} +/** + Device probe function + All initialization routines are handled here like the ISR registration, + Work creation,Input device registration,SYSFS attributes creation etc. + + @param i2c_client the i2c structure of the ad7146 device/client. + @param i2c_device_id The i2c_device_id for the supported i2c device. + + @return 0 on success,and On failure -ENOMEM, -EINVAL ,etc., will be returned + */ +static int __devinit ad7146_probe(struct i2c_client *client, + const struct i2c_device_id *id) +{ + int ret = -EINVAL; + struct input_dev *input = NULL; + struct device *dev = &client->dev; + struct ad7146_chip *ad7146 = NULL; + + pr_info("[Grip]: %s: called", __func__); + + if (client == NULL) { + pr_err("[Grip]: %s: Client doesn't exist\n", __func__); + return ret; + } + ad7146 = kzalloc(sizeof(struct ad7146_chip), GFP_KERNEL); + if (!ad7146) { + pr_err("[Grip]: %s: Memory allocation fail\n", __func__); + ret = -ENOMEM; + return ret; + } + + ad7146->read = ad7146_i2c_read; + ad7146->write = ad7146_i2c_write; + ad7146->dev = dev; + + ret = ad7146_parse_dt(ad7146, &client->dev); + if (ret < 0) { + pr_err("[Grip]: %s: - of_node error\n", __func__); + ret = -ENODEV; + goto err_of_node; + } + + i2c_set_clientdata(client, ad7146); + + INIT_WORK(&ad7146->work, ad7146_interrupt_thread); + + /* + * Allocate and register ad7146 input device + */ + input = input_allocate_device(); + if (!input) { + pr_err("[Grip]: %s: could not allocate input device\n", __func__); + ret = -ENOMEM; + goto err_kzalloc_mem; + } + + ad7146->input = input; + input_set_drvdata(ad7146->input, ad7146); + input->name = "grip_sensor"; + set_bit(EV_REL, ad7146->input->evbit); + input_set_capability(ad7146->input, EV_REL, REL_MISC); + + ret = input_register_device(ad7146->input); + if (ret) { + pr_err("[Grip]: %s: could not input_register_device(input);\n", __func__); + ret = -ENOMEM; + goto err_input_register_device; + } + + ret = sensors_create_symlink(&ad7146->input->dev.kobj, + ad7146->input->name); + if (ret < 0) { + pr_err("[Grip]: %s: create_symlink error\n", __func__); + goto err_sensors_create_symlink; + } + + ad7146->eventcheck = 0; + + wake_lock_init(&ad7146->grip_wake_lock, WAKE_LOCK_SUSPEND, "grip_wake_lock"); + + ret = gpio_request(ad7146->grip_int, "gpio_grip_int"); + pr_info("[Grip]: %s : gpio request %d\n", __func__, ad7146->grip_int); + if (ret < 0) { + pr_err("[Grip]: %s: gpio %d request failed (%d)\n", + __func__, ad7146->grip_int, ret); + goto err_gpio_request; + } + + ret = gpio_direction_input(ad7146->grip_int); + if (ret < 0) { + pr_err("[Grip]: %s: failed to set gpio %d as input (%d)\n", + __func__, ad7146->grip_int, ret); + goto err_free_irq; + } + + ad7146->irq = gpio_to_irq(ad7146->grip_int); + pr_info("[Grip]: %s: irq %d\n", __func__, ad7146->irq); + + ret = request_threaded_irq(ad7146->irq, NULL, ad7146_isr, + IRQF_TRIGGER_FALLING | IRQF_ONESHOT, + dev_name(dev), ad7146); + + if (ret) { + pr_err("[Grip]: %s: irq %d Driver init Failed", __func__, ad7146->irq); + goto err_free_irq; + } + disable_irq(ad7146->irq); + + ret = sysfs_create_group(&input->dev.kobj, &ad7146_attr_group); + if (ret) { + pr_err("[Grip]: %s: cound not register sensor device\n", __func__); + goto err_sysfs_create_input; + } + + ret = sensors_register(ad7146->grip_dev, ad7146, ad7146_attrs, "grip_sensor"); + if (ret) { + pr_err("[Grip]: %s: cound not register sensor device\n", __func__); + goto err_sysfs_create_factory_grip; + } + +#ifdef CONFIG_SENSOR_USE_SYMLINK + ret = sensors_initialize_symlink(input); + if (ret) { + pr_err("[Grip]: %s: cound not make grip sensor symlink(%d).\n", + __func__, ret); + goto out_sensors_initialize_symlink; + } +#endif + + /* check if the device is existing by reading device id of AD7146 */ + ret = ad7146_hw_detect(ad7146); + if (ret) + goto err_hw_detect; + + /* initialize and request sw/hw resources */ + sensorshutdownmode(ad7146); + ad7146->onoff_flags = 1; + + pr_info("[Grip]: %s - probe done\n", __func__); + return 0; +err_hw_detect: + pr_err("[Grip]: %s: hw detect error\n", __func__); +#ifdef CONFIG_SENSOR_USE_SYMLINK +out_sensors_initialize_symlink: +#endif +err_sysfs_create_factory_grip: + sysfs_remove_group(&input->dev.kobj, &ad7146_attr_group); +err_sysfs_create_input: + free_irq(ad7146->irq, ad7146); +err_free_irq: + gpio_free(ad7146->grip_int); +err_gpio_request: + wake_lock_destroy(&ad7146->grip_wake_lock); +err_sensors_create_symlink: + input_unregister_device(input); +err_input_register_device: + input_free_device(input); +err_kzalloc_mem: +err_of_node: + kfree(ad7146); + pr_info("[Grip]: %s - probe failed(%d)\n", __func__, ret); + return ret; +} + +/** + Removes the Device. + This is used to Remove the device or the I2C client from the system + + @param client The Client Id to be removed + @return 0 on success + */ +static int __devexit ad7146_i2c_remove(struct i2c_client *client) +{ + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, Start\n", __func__); + if (ad7146 != NULL) { + if (ad7146->eventcheck == ENABLE_INTERRUPTS) { + disable_irq(ad7146->irq); + disable_irq_wake(ad7146->irq); + ad7146->write(ad7146->dev, STG_COM_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + msleep(SLEEP_TIME_TO_CALI_INT); + } + sysfs_remove_group(&ad7146->input->dev.kobj, &ad7146_attr_group); + free_irq(ad7146->irq, ad7146); + gpio_free(client->irq); + input_unregister_device(ad7146->input); + input_free_device(ad7146->input); + kfree(ad7146); + } + return 0; +} + +void ad7146_shutdown(struct i2c_client *client) +{ + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + pr_info("%s, Start\n", __func__); + if (ad7146 != NULL) { + if (ad7146->eventcheck == ENABLE_INTERRUPTS) { + disable_irq(ad7146->irq); + disable_irq_wake(ad7146->irq); + ad7146->write(ad7146->dev, STG_COM_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + msleep(SLEEP_TIME_TO_CALI_INT); + } + sysfs_remove_group(&ad7146->input->dev.kobj, &ad7146_attr_group); + free_irq(ad7146->irq, ad7146); + gpio_free(client->irq); + input_unregister_device(ad7146->input); + input_free_device(ad7146->input); + kfree(ad7146); + } +} +/** +Device ID table for the AD7146 driver +*/ +static int grip_i2c_suspend(struct device *dev) +{ + struct i2c_client *client = to_i2c_client(dev); + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, check (%d)\n", __func__, ad7146->eventcheck); +/* if (ad7146->eventcheck == 0) + ad7146->hw->power_en(0);*/ + + return 0; +} + +static int grip_i2c_resume(struct device *dev) +{ + struct i2c_client *client = to_i2c_client(dev); + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, check (%d)\n", __func__, ad7146->eventcheck); + if (ad7146->eventcheck == 0) { + //ad7146->hw->power_en(1); + msleep(10); + sensorshutdownmode(ad7146); + } + + return 0; +} + +static struct of_device_id ad7146_match_table[] = { + { .compatible = "ad7146-i2c",}, + {}, +}; + +static const struct i2c_device_id ad7146_id[] = { + {"ad7146_match_table", 0}, + {} +/* + { "ad7146_SAR_NORM", 0 }, + { "ad7146_SAR_PROX", 1 }, + { "ad7146_SAR", 2 }, {}, +*/ +}; + +static const struct dev_pm_ops grip_dev_pm_ops = { + .suspend = grip_i2c_suspend, + .resume = grip_i2c_resume, +}; + +/** + The file Operation Table + */ +struct i2c_driver ad7146_i2c_driver = { + .driver = { + .name = DRIVER_NAME, + .owner = THIS_MODULE, + .of_match_table = ad7146_match_table, + .pm = &grip_dev_pm_ops, + }, + .probe = ad7146_probe, + .shutdown = ad7146_shutdown, + .remove = __devexit_p(ad7146_i2c_remove), + .id_table = ad7146_id, +}; + +/** + This is an init function called during module insertion -- + calls in turn i2c driver probe function + */ +static __init int ad7146_i2c_init(void) +{ + pr_info("%s, start\n", __func__); + return i2c_add_driver(&ad7146_i2c_driver); +} +module_init(ad7146_i2c_init); + +/** + Called during the module removal + */ +static __exit void ad7146_i2c_exit(void) +{ + i2c_del_driver(&ad7146_i2c_driver); +} + +module_exit(ad7146_i2c_exit); +MODULE_DESCRIPTION("Analog Devices ad7146 MLD Driver"); +MODULE_AUTHOR("Analog Devices"); +MODULE_LICENSE("GPL"); + diff --git a/drivers/sensorhub/stm_hestia/ad7146.h b/drivers/sensorhub/stm_hestia/ad7146.h new file mode 100755 index 000000000000..f969c7e494cf --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ad7146.h @@ -0,0 +1,315 @@ +/** +\file ad7146.h +This is the Header file for AD7146_Driver. +The file can be found at /include/linux/input +*/ +/* + * include/linux/input/ad7146.h + * + * The platform_data for the device's "struct device" holds this + * information. + * + * Copyright 2013 Analog Devices Inc. + * + * Licensed under the GPL version 3 or later. + */ + +#ifndef __LINUX_INPUT_AD714X_H__ +#define __LINUX_INPUT_AD714X_H__ + +/** +Total number of register count used in the initialization. +\note +This should be kept exactly as the register count in the +initialization of the platform device structure ad7146_platform_data. +*/ +#define REGCNT 18 + +/** +Total number of register count used in the Normal mode transistion. +\note +This should be kept exactly as the register count in the "normal_regs" +of the platform device structure ad7146_platform_data. +*/ +#define NORMAL_REGCNT 2 + +/** +Platform data structure of AD7146_MLD driver. +*/ +struct ad7146_platform_data { +/** +This hold the Initial Register Configurations of AD7146 +*/ + unsigned int regs[REGCNT]; +/** +This hold the Normal Mode Register Configurations of AD7146 +*/ + unsigned int normal_regs[NORMAL_REGCNT]; +/** +This holds the Full Grip threshold value for POWER_ON_GRIP +*/ + unsigned short fixed_th_full; + unsigned short cal_offset; + unsigned short cal_fixed_th_full; + + void (*power_en)(int); +}; + +/** +READ function for AD7146 +*/ +typedef int (*ad7146_read_t)(struct device *, unsigned short, unsigned short *); +/** +WRITE function for AD7146 +*/ +typedef int (*ad7146_write_t)(struct device *, unsigned short, unsigned short); + + +/** + Event value for No Grip State + */ +#define EVENT_NO_GRIP (5) +/** + Event value for Full Grip State + */ +#define EVENT_FULL_GRIP (0) +/** + Minimum OFFSET for POWER_ON grip Detection +*/ +#define PW_ON_OFFSET_MIN (0x200) /* 512 codes */ +/** + Hysteresis Percentage Reduction + */ +#define HYS_PERCENT (20) + +#if (HYS_PERCENT > 99) +#error "Hysteris percentage invalid" +#endif +/** + Hysteresis Compensation Macro + */ +#define HYS(S, T) ((T) - ((((T)-(S)) * HYS_PERCENT)/100)) +/** + Positive Hysteresis Compensation Macro + */ +#define HYS_POS(S, T) ((T) + ((((T)-(S)) * HYS_PERCENT) \ + / (100 - HYS_PERCENT))) +/** + Sleep time required to go to Low Power mode in milliseconds + */ +#define SLEEP_TIME_TO_LOW_POWER (200) +/** + Sleep time for forced calibration during init in milliseconds + */ +#define SLEEP_TIME_TO_CALI_INIT (100) +/** + Sleep time for forced calibration during INT in milliseconds + */ +#define SLEEP_TIME_TO_CALI_INT (20) + +/** + Driver State Normal + */ +#define DRIVER_STATE_NORMAL (0) +/** + Driver State Full Grip + */ +#define DRIVER_STATE_FULL_GRIP (1) + +/** + Driver name of this ad7146 driver + */ +#define DRIVER_NAME "ad7146_MLD" +/** + This hold the product ID of AD7146 + */ +#define AD7146_PRODUCT_ID 0x7146 +/** + \def AD7146_PARTID_REG + Device ID Register Address + */ +#define AD7146_PARTID_REG (0x17) +/** + \def AD7146_PARTID + Device ID for AD7146 chip + */ +#define AD7146_PARTID (0x1490) +/** + Clear Interrupt Enable Register + */ +#define DISABLE_INT (0x0) +/** + Enable Stage 0 + */ +#define ENABLE_STG0 (0x01) +/** + \def AD7146_PWR_CTRL + Power control Register + */ +#define AD7146_PWR_CTRL (0x0) +/** + \def AD7146_STG_CAL_EN_REG + Calibration and Control Register + */ +#define AD7146_STG_CAL_EN_REG (0x1) +/** + \def AD7146_AMB_COMP_CTRL0_REG + Device Control Register 0 + */ +#define AD7146_AMB_COMP_CTRL0_REG (0x2) +/** + \def STG_LOW_INT_EN_REG + Lower Threshold Interrupt Enable register + */ +#define STG_LOW_INT_EN_REG (0x5) +/** + \def STG_HIGH_INT_EN_REG + Higher Threshold Interrupt Enable register + */ +#define STG_HIGH_INT_EN_REG (0x6) +/** + \def STG_COM_INT_EN_REG + Conversion complete Interrupt Enable register + */ +#define STG_COM_INT_EN_REG (0x7) +/** + \def STG_LOW_INT_STA_REG + Lower Threshold Interrupt Status register + */ +#define STG_LOW_INT_STA_REG (0x8) +/** + \def STG_HIGH_INT_STA_REG + Higher Threshold Interrupt Status register + */ +#define STG_HIGH_INT_STA_REG (0x9) +/** + \def CDC_RESULT_S0_REG + CDC Result of Stage 0 Register + */ +#define CDC_RESULT_S0_REG (0xB) +/** + Register address of Stage 0 Sensitivity + */ +#define DRIVER_STG0_AFEOFFSET (0x82) +/** + Register address of Stage 0 Sensitivity + */ +#define DRIVER_STG0_SENSITIVITY (0x83) +/** + Register address of Stage 0 LOW OFFSET + */ +#define LOW_OFFSET_0_REG (0x84) +/** + Register address of Stage 0 HIGH OFFSET + */ +#define HIGH_OFFSET_0_REG (0x85) +/** + Register address of Stage 0 HIGH CLAMP + */ +#define HIGH_OFFSET_CLAMP_0_REG (0x86) +/** + Register address of Stage 0 LOW CLAMP + */ +#define LOW_OFFSET_CLAMP_0_REG (0x87) +/** + \def DRIVER_STG0_SF_AMBIENT + Register address of Stage 0 sf ambient value + */ +#define DRIVER_STG0_SF_AMBIENT (0xF1) +/** + \def DRIVER_STG0_HIGH_THRESHOLD + Register address of Stage 0 High Threshold value + */ +#define DRIVER_STG0_HIGH_THRESHOLD (0xFA) +/** + Stage 0 Low threshold Register + */ +#define STG_0_LOW_THRESHOLD (0x101) +/** + Mask For the Force calibration + */ +#define AD7146_FORCED_CAL_MASK (1<<14) + +/** + Negative Sensitivity Mask + */ +#define NEG_SENS (0xF) +/** + Positive Sensitivity Mask + */ +#define POS_SENS (0xF00) +/** + Used For the Disable of the interrupts + */ +#define DISABLE_INTERRUPTS (0x0) +/** + Used For the Enable of interrupts + */ +#define ENABLE_INTERRUPTS (0x1) +/** + AD7146 Full Scale value +*/ +#define FULL_SCALE_VALUE (0xFFFF) +/** + AD7146 Full Scale value +*/ +#define OVER_FLOW_SCALE_VALUE (0x0005) + +enum bank2_register_type { + STAGE_CONNECTION_1, + STAGE_CONNECTION_2, + STAGE_AFE_OFFSET, + STAGE_SENSITIVITY, + STAGE_OFFSET_LOW, + STAGE_OFFSET_HIGH, + STAGE_OFFSET_HIGH_CLAMP, + STAGE_OFFSET_LOW_CLAMP +}; +/** + * This structure provides chip information of AD7146. + * \note Contains chip information of the AD7146 chip with attributes + * like Product, Status ,version,drive data etc. + * which are used in the control or to read the status of the device + */ +struct ad7146_chip { + unsigned short high_status; + unsigned short low_status; + struct ad7146_platform_data *hw; + struct input_dev *input; + struct device *grip_dev; + int irq; + int grip_int; + struct work_struct work; + struct device *dev; + struct wake_lock grip_wake_lock; + ad7146_read_t read; + ad7146_write_t write; + + /** + power on grip status + 0 - Normal Mode + 1 - Half Grip Mode + 2 - Full Grip Mode + */ + unsigned short pw_on_grip_status; + + /*State check variables */ + unsigned short prevhigh; + short prev_state_value; + short state_value; + /** + event check to send or block the event in the driver + 0 - Disabled(Do not send event) + 1 - Enabled(Send event) + */ + unsigned short eventcheck; + unsigned short during_cal_data; + char onoff_flags; + char cal_flags; + char during_cal_flags; + unsigned short stg0_low_offset; + unsigned product; + unsigned version; +}; + +#endif diff --git a/drivers/sensorhub/stm_hestia/adpd142.c b/drivers/sensorhub/stm_hestia/adpd142.c new file mode 100755 index 000000000000..235a8d50b3a5 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/adpd142.c @@ -0,0 +1,2633 @@ +/** + *\mainpage + * ADPD142 driver + * (c) copyright 2014 Analog Devices Inc. + * Licensed under the GPL version 3 or later. + * \date April 2014 + * \version 1.1 Driver + * \version Linux 3.4.0 +*/ + +#include "adpd142.h" +#ifdef CONFIG_OF +#include +#endif + +static int dbg_enable; + +module_param(dbg_enable, int, S_IRUGO | S_IWUSR); + +/* ADPD142 driver version*/ +#define ADPD142_VERSION "1.2" +/* ADPD142 release date*/ +#define ADPD142_RELEASE_DATE "Tue Apr 22 12:11:42 IST 2014" + + +#define ADPD_DEV_NAME "adpd142" + +/*INPUT DEVICE NAME LIST*/ +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "ADPD142RI" +#define VENDOR "ADI" + +#define MAX_EOL_RESULT 132 + +/*I2C RELATED*/ +#define I2C_RETRY_DELAY 5 +#define I2C_RETRIES 5 + +/*ADPD142 DRIVER RELATED*/ +#define MAX_BUFFER 128 +#define GLOBAL_OP_MODE_OFF 0 +#define GLOBAL_OP_MODE_IDLE 1 +#define GLOBAL_OP_MODE_GO 2 + +#define SET_GLOBAL_OP_MODE(val, cmd) ((val & 0xFC) | cmd) + +#define FRM_FILE 0 +#define FRM_ARR 1 +#define EN_FIFO_CLK 0x3B5B +#define DS_FIFO_CLK 0x3050 + +/******************************************************************/ +/**************** ADPD142 USER OPERATING MODE ********************/ +/* +Operating mode defined to user +*/ +#define IDLE_MODE 0x00 +#define SAMPLE_XY_A_MODE 0x30 +#define SAMPLE_XY_AB_MODE 0x31 +#define SAMPLE_XY_B_MODE 0x32 +#define GET_USR_MODE(usr_val) ((usr_val & 0xF0) >> 4) +#define GET_USR_SUB_MODE(usr_val) (usr_val & 0xF) +/******************************************************************/ +/**************** ADPD142 OPERATING MODE & DATA MODE *************/ +#define R_RDATA_FLAG_EN (0x1 << 15) +#define R_PACK_START_EN (0x0 << 14) +#define R_RDOUT_MODE (0x0 << 13) +#define R_FIFO_PREVENT_EN (0x1 << 12) +#define R_SAMP_OUT_MODE (0x0 << 9) +#define DEFAULT_OP_MODE_CFG_VAL(cfg_x) (R_RDATA_FLAG_EN + R_PACK_START_EN +\ + R_RDOUT_MODE + R_FIFO_PREVENT_EN+\ + R_SAMP_OUT_MODE) + +#define SET_R_OP_MODE_A(val) ((val & 0xF000) >> 12) +#define SET_R_DATAMODE_A(val) ((val & 0x0F00) >> 8) +#define SET_R_OP_MODE_B(val) ((val & 0x00F0) >> 4) +#define SET_R_DATAMODE_B(val) ((val & 0x000F)) +/** +@brief Used to get the value need to be set for slot-A, B operating mode +and data out mode. +*/ +#define SET_MODE_VALUE(val) (SET_R_OP_MODE_A(val) |\ + (SET_R_DATAMODE_A(val) << 2) |\ + (SET_R_OP_MODE_B(val) << 5) |\ + (SET_R_DATAMODE_B(val) << 6)) +/******************************************************************/ +/**************** ADPD142 INTERRUPT MASK *************************/ +#define INTR_MASK_IDLE_USR 0x0000 +#define INTR_MASK_SAMPLE_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_A_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_AB_USR 0x0040 +#define INTR_MASK_S_SAMP_XY_B_USR 0x0040 +#define SET_INTR_MASK(usr_val) ((~(INTR_MASK_##usr_val)) & 0x1FF) +/******************************************************************/ +/***************** ADPD142 PRINT *********************************/ +#ifdef ADPD_DBG +#define ADPD142_dbg(format, arg...) \ + printk(KERN_DEBUG "ADPD142 : "format, ##arg); +#else +#define ADPD142_dbg(format, arg...) {if (dbg_enable)\ + printk(KERN_DEBUG "ADPD142 : "format, ##arg);\ + } +#endif + +#ifdef ADPD_INFO +#define ADPD142_info(format, arg...) \ + printk(KERN_INFO "ADPD142 : "format, ##arg); +#else +#define ADPD142_info(format, arg...) {if (0)\ + ; } +#endif +/******************************************************************/ +/***************** ADPD142 DIFFERENT MODE ************************/ +/* +Main mode +*/ +#define IDLE_USR 0 +#define SAMPLE_USR 3 + +/* +Sub mode +*/ +#define S_SAMP_XY_A 0 +#define S_SAMP_XY_AB 1 +#define S_SAMP_XY_B 2 +/* +OPERATING MODE ==> MAIN_mode[20:16] | + OP_mode_A[15:12] | + DATA_mode_A[11:8]| + OP_mode_B[7:4] | + DATA_mode_B[3:0] +*/ +#define IDLE_OFF ((IDLE_USR << 16) | (0x0000)) + +#define SAMPLE_XY_A ((SAMPLE_USR << 16) | (0x1400)) +#define SAMPLE_XY_AB ((SAMPLE_USR << 16) | (0x1414)) +#define SAMPLE_XY_B ((SAMPLE_USR << 16) | (0x0014)) + +#define MAX_MODE 4 + +#define MAX_IDLE_MODE 1 +#define MAX_SAMPLE_MODE 3 + +#define MODE(val) __arr_mode_##val +#define MODE_SIZE(val) MAX_##val##_MODE + + +#define MAX_LIB_VER 20 +#define OSC_TRIM_ADDR26_REG 0x26 +#define OSC_TRIM_ADDR28_REG 0x28 +#define OSC_TRIM_ADDR29_REG 0x29 +#define OSC_TRIM_32K_REG 0x4B +#define OSC_TRIM_32M_REG 0x4D +#define OSC_DEFAULT_32K_SET 0x2695 +#define OSC_DEFAULT_32M_SET 0x4272 +#define OSCILLATOR_TRIM_FILE_PATH "/efs/osc_trim" + + + +/** +mode mapping structure used to hold the number mode actually supported by +driver +*/ +struct mode_mapping { + char *name; + int *mode_code; + unsigned int size; +}; +int __arr_mode_IDLE[MAX_IDLE_MODE] = { IDLE_OFF }; +int __arr_mode_SAMPLE[MAX_SAMPLE_MODE] = { SAMPLE_XY_A, + SAMPLE_XY_AB, + SAMPLE_XY_B }; + +struct mode_mapping __mode_recv_frm_usr[MAX_MODE] = { + { + .name = "IDLE", + .mode_code = MODE(IDLE), + .size = MODE_SIZE(IDLE) + }, + { .name = "UNSUPPORTED1", + .mode_code = 0, + .size = 0, + }, + { .name = "UNSUPPORTED2", + .mode_code = 0, + .size = 0, + }, + { + .name = "SAMPLE", + .mode_code = MODE(SAMPLE), + .size = MODE_SIZE(SAMPLE) + } +}; + +/** +general data buffer that is required to store the recieved buffer +*/ +unsigned short data_buffer[MAX_BUFFER] = { 0 }; + +struct wrk_q_timestamp { + struct timeval interrupt_trigger; +}; + +struct adpd142_stats { + atomic_t interrupts; + atomic_t fifo_requires_sync; + atomic_t fifo_bytes[4]; + atomic_t wq_pending; + atomic_t wq_schedule_time_peak_usec; + atomic_t wq_schedule_time_last_usec; + struct ewma wq_schedule_time_avg_usec; + atomic_t data_process_time_peak_usec; + atomic_t data_process_time_last_usec; + struct ewma data_process_time_avg_usec; + struct wrk_q_timestamp stamp; +}; + +/** +structure hold adpd142 chip structure, and parameter used +to control the adpd142 software part. +*/ +struct adpd142_data { + struct i2c_client *client; + struct mutex mutex;/*for chip structure*/ + struct device *dev; + struct input_dev *ptr_sample_inputdev; + struct adpd_platform_data *ptr_config; + + struct work_struct work; + struct workqueue_struct *ptr_adpd142_wq_st; + int irq; + int hrm_int; + + unsigned short *ptr_data_buffer; + + struct adpd142_stats stats; + + unsigned short intr_mask_val; + unsigned short intr_status_val; + unsigned short fifo_size; + + /*sysfs register read write */ + unsigned short sysfs_I2C_regaddr; + unsigned short sysfs_I2C_regval; + unsigned short sysfslastreadval; + + atomic_t sample_enabled; + atomic_t adpd_mode; + + int (*read)(struct adpd142_data *, u8 reg_addr, int len, u16 *buf); + int (*write)(struct adpd142_data *, u8 reg_addr, int len, u16 data); + u8 eol_test_is_enable; + u8 eol_test_status; + char *eol_test_result; + char *eol_lib_ver; + char *elf_lib_ver; + + int osc_trim_32K_value; + int osc_trim_32M_value; + int osc_trim_addr26_value; + int osc_trim_addr28_value; + int osc_trim_addr29_value; + u8 osc_trim_open_enable; + + struct regulator *reg_adpd; + struct regulator *vdd_led; + +}; + +/** +structure hold adpd142 configuration data to be written during probe. +*/ +static struct adpd_platform_data adpd142_config_data = { + .config_size = 53, + .config_data = { + 0x00100001, + 0x000100ff, + 0x00020004, + 0x00060000, + 0x00111011, + 0x0012000A, + 0x00130320, + 0x00140449, + 0x00150333, + 0x001C4040, + 0x001D4040, + 0x00181400, + 0x00191400, + 0x001a1650, + 0x001b1000, + 0x001e1ff0, + 0x001f1Fc0, + 0x00201ad0, + 0x00211470, + 0x00231032, + 0x00241039, + 0x002502CC, + 0x00340000, + 0x00260000, + 0x00270800, + 0x00280000, + 0x00294003, + 0x00300330, + 0x00310213, + 0x00421d37, + 0x0043ada5, + 0x003924D2, + 0x00350330, + 0x00360813, + 0x00441d37, + 0x0045ada5, + 0x003b24D2, + 0x00590808, + 0x00320320, + 0x00330113, + 0x003a22d4, + 0x003c0006, + 0x00401010, + 0x0041004c, + 0x004c0004, + 0x004f2090, + 0x00500000, + 0x00523000, + 0x0053e400, + 0x005b1831, + 0x005d1b31, + 0x005e2808, + 0x004e0040, + }, +}; + +/** +This function is used to parse data from the string "0xXXX 1 0xYYY" +@param buf is pointer point constant address +@param cnt store number value need to parse +@param data parse data are stored in it +@return void +*/ +static void +cmd_parsing(const char *buf, unsigned short cnt, unsigned short *data) +{ + char **bp = (char **)&buf; + char *token, minus, parsing_cnt = 0; + int val; + int pos; + + while ((token = strsep(bp, " "))) { + pos = 0; + minus = false; + if ((char)token[pos] == '-') { + minus = true; + pos++; + } + if ((token[pos] == '0') && + (token[pos + 1] == 'x' || token[pos + 1] == 'X')) { + if (kstrtoul(&token[pos + 2], 16, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } else { + if (kstrtoul(&token[pos], 10, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } + + if (parsing_cnt < cnt) + *(data + parsing_cnt) = val; + else + break; + parsing_cnt++; + } +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@return u16 value present in the register. +*/ +static inline u16 +reg_read(struct adpd142_data *pst_adpd, u16 reg) +{ + u16 value; + if (!pst_adpd->read(pst_adpd, reg, 1, &value)) + return value; + return 0xFFFF; +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@param len number of data need to be readout +@param buf is pointer store the value present in the register. +@return u16 status of i2c read. +*/ +static inline u16 +multi_reg_read(struct adpd142_data *pst_adpd, u16 reg, u16 len, u16 *buf) +{ + return pst_adpd->read(pst_adpd, reg, len, buf); +} + +/** +This function is a inline function mapped to i2c write functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address to which the data need to be written +@param value is the data need to be write. +@return u16 status of i2c write. +*/ +static inline u16 +reg_write(struct adpd142_data *pst_adpd, u16 reg, u16 value) +{ + return pst_adpd->write(pst_adpd, reg, 1, value); +} + +/** +This function is used for I2C read from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 status of i2c read. +*/ +static u16 +adpd142_sysfs_I2C_read(struct adpd142_data *pst_adpd) +{ + return reg_read(pst_adpd, pst_adpd->sysfs_I2C_regaddr); +} + +/** +This function is used for I2C write from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 the bytes of written data. +*/ +static u16 +adpd142_sysfs_I2C_write(struct adpd142_data *pst_adpd) +{ + u16 err; + err = reg_write(pst_adpd, pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + if (err) + return 0xFFFF; + else + return pst_adpd->sysfs_I2C_regval; +} + +/** +This function is used to parse string +@param recv_buf pointer point a string +@return int +*/ +static int +parse_data(char *recv_buf) +{ + char **bp = (char **)&recv_buf; + char *token, parsing_cnt = 0; + long val; + int test_data; + unsigned int data = 0; + int ret = 0; + char test[10] = {'\0'}; + + while ((token = strsep(bp, " \t"))) { + memset(test, '\0', 10); + memcpy(test, token, strlen(token)); + memmove(test+2, test, strlen(test)); + test[0] = '0'; + test[1] = 'x'; + ret = kstrtol(test, 0, &val); + if (ret) { + if (ret == -ERANGE) { + ADPD142_info("out of range\n"); + val = 0; + } + if (ret == -EINVAL) { + ADPD142_info("parsing error\n"); + sscanf(test, "%x", &test_data); + val = test_data; + } + } + + if (parsing_cnt == 0) { + data = (int) (0xFF & val); + if (data == 0) + return -1; + } + if (parsing_cnt == 1) { + data = data << 16; + data |= (0xFFFF & val); + } + parsing_cnt++; + if (parsing_cnt > 2) + break; + } + return data; +} + +/** +This function is used for reading configuration file +@param pst_adpd the ADPD142 data structure +@return int status of the configuration file. +*/ +static int +adpd142_read_config_file(struct adpd142_data *pst_adpd) +{ + mm_segment_t old_fs; + struct file *fpt_adpd = NULL; + struct adpd_platform_data *ptr_config = NULL; + int line_cnt = 0; + int start = 0; + int cnt = 0; + int ret = 0; + int i = 0; + char get_char; + char *recieved_buf = NULL; + loff_t pos = 0; + ptr_config = pst_adpd->ptr_config; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + fpt_adpd = filp_open("/data/misc/adpd142_config.dcfg", O_RDONLY, 0666); + if (IS_ERR(fpt_adpd)) { + ADPD142_dbg("unable to find de file %ld\n", PTR_ERR(fpt_adpd)); + set_fs(old_fs); + ret = /*PTR_ERR(fpt_adpd_filp); */ -1; + ptr_config->config_size = 0; + goto err_filp_open; + } + + recieved_buf = kzalloc(sizeof(char) * 15, GFP_KERNEL); + memset(recieved_buf, '\0', sizeof(recieved_buf)); + + while (vfs_read(fpt_adpd, &get_char, sizeof(char), &pos)) { + if (get_char == '\n') { + line_cnt++; + if (cnt > 1) { + ret = parse_data(recieved_buf); + if (ret == -1) { + ADPD142_dbg("Error in reading dcfg\n"); + break; + } + ADPD142_info("0x%08x\n", ret); + ptr_config->config_data[i] = ret; + i++; + } + memset(recieved_buf, '\0', sizeof(recieved_buf)); + start = 0; + cnt = 0; + ret = 0; + } else { + if (get_char != '#') { + if (start != 0xF) { + recieved_buf[cnt] = get_char; + cnt++; + } + } else { + start = 0xF; + } + } + } + + filp_close(fpt_adpd, NULL); + + set_fs(old_fs); + kfree(recieved_buf); + ptr_config->config_size = i; + return 0; +err_filp_open: + return -1; +} + +/** +This function is used for reading interrupt and FIFO status +@param pst_adpd the ADPD142 data structure +@return unsigned short interrupt status value +*/ +static unsigned short +adpd142_rd_intr_fifo(struct adpd142_data *pst_adpd) +{ + unsigned short regval = 0; + unsigned short fifo_size = 0; + unsigned short usr_mode = 0; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + fifo_size = ((regval & 0xFF00) >> 8); + pst_adpd->fifo_size = ((fifo_size / 2) + (fifo_size & 1)); + pst_adpd->intr_status_val = (regval & 0xFF); + + ADPD142_info("Intr_status 0x%x, FIFO_SIZE 0x%x\n", + pst_adpd->intr_status_val, pst_adpd->fifo_size); + + if (fifo_size <= 16) + atomic_inc(&pst_adpd->stats.fifo_bytes[0]); + else if (fifo_size <= 32) + atomic_inc(&pst_adpd->stats.fifo_bytes[1]); + else if (fifo_size <= 64) + atomic_inc(&pst_adpd->stats.fifo_bytes[2]); + else + atomic_inc(&pst_adpd->stats.fifo_bytes[3]); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + if (0 != usr_mode) { + unsigned int mask = 0; + unsigned int mod = 0; + + switch (GET_USR_SUB_MODE(usr_mode)) { + case S_SAMP_XY_AB: + mask = 0x07; + break; + default: + mask = 0x03; + break; + }; + + mod = pst_adpd->fifo_size & mask; + if (mod) { + ADPD142_info("Keeping %d samples in FIFO from %d\n", + mod, pst_adpd->fifo_size); + pst_adpd->fifo_size &= ~mask; + atomic_inc(&pst_adpd->stats.fifo_requires_sync); + } + } + + return pst_adpd->intr_status_val; +} + +/** +This function is used for clearing the Interrupt as well as FIFO +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_clr_intr_fifo(struct adpd142_data *pst_adpd) +{ + /*below code is added for verification */ + unsigned short regval; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); + + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, 0x80FF); + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("After clear - fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); +} + +/** +This function is used for clearing the Interrupt status +@param pst_adpd the ADPD142 data structure +@param mode operating mode of ADPD142 +@return void +*/ +static void +adpd142_clr_intr_status(struct adpd142_data *pst_adpd, unsigned short mode) +{ + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, + pst_adpd->intr_status_val); +} + +/** +This function is used to read out FIFO data from FIFO +@param pst_adpd the ADPD142 data structure +@return unsigned int FIFO size +*/ +static unsigned int +adpd142_rd_fifo_data(struct adpd142_data *pst_adpd) +{ + int loop_cnt = 0; + + if (!pst_adpd->fifo_size) + goto err_rd_fifo_data; + + if (0 != atomic_read(&pst_adpd->adpd_mode) && + pst_adpd->fifo_size & 0x3) { + pr_err("Unexpected FIFO_SIZE=%d,\ + should be multiple of four (channels)!\n", + pst_adpd->fifo_size); + } + +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0001);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, EN_FIFO_CLK); + multi_reg_read(pst_adpd, ADPD_DATA_BUFFER_ADDR, + pst_adpd->fifo_size, pst_adpd->ptr_data_buffer); +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0000);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, DS_FIFO_CLK); + + for (; loop_cnt < pst_adpd->fifo_size; loop_cnt++) { + ADPD142_info("[0x%04x] 0x%04x\n", loop_cnt, + pst_adpd->ptr_data_buffer[loop_cnt]); + } + return pst_adpd->fifo_size; +err_rd_fifo_data: + return 0; +} + +/** +This function is a thing need to configure before changing the register +@param pst_adpd the ADPD142 data structure +@param global_mode OFF, IDLE, GO are the three mode +@return void +*/ +static void +adpd142_config_prerequisite(struct adpd142_data *pst_adpd, u32 global_mode) +{ + unsigned short regval = 0; + regval = reg_read(pst_adpd, ADPD_OP_MODE_ADDR); + regval = SET_GLOBAL_OP_MODE(regval, global_mode); + ADPD142_info("reg 0x%04x,\tafter set 0x%04x\n", + regval, SET_GLOBAL_OP_MODE(regval, global_mode)); + reg_write(pst_adpd, ADPD_OP_MODE_ADDR, regval); +} + +/** +This function is used for switching the adpd142 mode +@param pst_adpd the ADPD142 data structure +@param usr_mode user mode +@return void +*/ +static void +adpd142_mode_switching(struct adpd142_data *pst_adpd, u32 usr_mode) +{ + unsigned int opmode_val = 0; + unsigned short mode_val = 0; + unsigned short intr_mask_val = 0; + + unsigned short mode = GET_USR_MODE(usr_mode); + unsigned short sub_mode = GET_USR_SUB_MODE(usr_mode); + /*disabling further avoid further interrupt to trigger */ + disable_irq(pst_adpd->irq); + + /*stop the pending work */ + /*this function Gurantee that wrk is not pending or executing on CPU */ + cancel_work_sync(&pst_adpd->work); + + atomic_set(&pst_adpd->adpd_mode, 0); + mutex_lock(&pst_adpd->mutex); + + /*Depending upon the mode get the value need to write Operatin mode*/ + opmode_val = *(__mode_recv_frm_usr[mode].mode_code + (sub_mode)); + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*switch to IDLE mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + mode_val += SET_MODE_VALUE(IDLE_OFF); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, intr_mask_val); + + /*clear FIFO and flush buffer */ + adpd142_clr_intr_fifo(pst_adpd); + adpd142_rd_intr_fifo(pst_adpd); + if (pst_adpd->fifo_size != 0) { + adpd142_clr_intr_status(pst_adpd, IDLE_USR); + ADPD142_info("Flushing FIFO\n"); + adpd142_rd_fifo_data(pst_adpd); + } + + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + msleep(20); + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*Find Interrupt mask value */ + switch (mode) { + case IDLE_USR: + ADPD142_info("IDLE MODE\n"); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + atomic_set(&pst_adpd->sample_enabled, 0); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + /*enable interrupt only when data written to FIFO */ + switch (sub_mode) { + case S_SAMP_XY_A: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_A_USR); + break; + case S_SAMP_XY_AB: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_AB_USR); + break; + case S_SAMP_XY_B: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_B_USR); + break; + default: + intr_mask_val = SET_INTR_MASK(SAMPLE_USR); + break; + }; + intr_mask_val |= 0xC000; + atomic_set(&pst_adpd->sample_enabled, 1); + break; + default: + /*This case won't occur */ + ADPD142_dbg("invalid mode\n"); + break; + }; + + ADPD142_info("INT_MASK_ADDR[0x%04x] = 0x%04x\n", ADPD_INT_MASK_ADDR, + intr_mask_val); + pst_adpd->intr_mask_val = intr_mask_val; + + /*Fetch Default opmode configuration other than OP mode + and DATA_OUT mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + /*Get Mode value from the opmode value, + to hardocde the macro, change SET_MODE_VALUE macro and concern + mode macro + */ + mode_val += SET_MODE_VALUE(opmode_val); + + ADPD142_info("OP_MODE_CFG[0x%04x] = 0x%04x\n", + ADPD_OP_MODE_CFG_ADDR, mode_val); + + atomic_set(&pst_adpd->adpd_mode, usr_mode); + + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, pst_adpd->intr_mask_val); + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + + mutex_unlock(&pst_adpd->mutex); + + enable_irq(pst_adpd->irq); + + if (mode != IDLE_USR) + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + else + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_OFF); +} + +/** +This function is used for sending Sample event depend upon +the Sample mode +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_sample_event(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short sub_mode = 0; + unsigned short cnt = 0; + + ADPD142_info("%s\n", __func__); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + switch (sub_mode) { + case S_SAMP_XY_A: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + + case S_SAMP_XY_AB: + if (pst_adpd->fifo_size < 8 || (pst_adpd->fifo_size & 0x7)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 8) { + unsigned int channel; + unsigned int sum_slot_a = 0; + unsigned int sum_slot_b = 0; + + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Z, sub_mode + 1); + + for (channel = 0; channel < 4; ++channel) { + sum_slot_a += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_X, sum_slot_a + 1); + + for (channel = 4; channel < 8; ++channel) { + sum_slot_b += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Y, sum_slot_b + 1); + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + case S_SAMP_XY_B: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, + sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + default: + break; + }; +} + +/** +This function is used for handling FIFO when interrupt occured +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_data_handler(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short mode = 0; + unsigned short sub_mode = 0; + mutex_lock(&pst_adpd->mutex); + usr_mode = atomic_read(&pst_adpd->adpd_mode); + mode = GET_USR_MODE(usr_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + ADPD142_info("mode - 0x%x,\t sub_mode - 0x%x\n", mode, sub_mode); + adpd142_rd_intr_fifo(pst_adpd); + + if (pst_adpd->intr_status_val == 0) { + mutex_unlock(&pst_adpd->mutex); + return; + } + + adpd142_clr_intr_status(pst_adpd, mode); + + switch (mode) { + case IDLE_USR: + ADPD142_dbg("IDLE_MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + adpd142_sample_event(pst_adpd); + break; + default: + ADPD142_info("DEFAULT MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + }; + + mutex_unlock(&pst_adpd->mutex); +} + +/** +This function is a handler for WorkQueue +@param ptr_work linux work structure +@return void +*/ +static void +adpd142_wq_handler(struct work_struct *ptr_work) +{ + + struct adpd142_data *pst_adpd = container_of(ptr_work, + struct adpd142_data, work); + + struct timeval wkq_start; + struct timeval wkq_comp; + int diff_usec = 0; + + do_gettimeofday(&wkq_start); + + diff_usec = timeval_compare(&wkq_start, + &pst_adpd->stats.stamp.interrupt_trigger); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read( + &pst_adpd->stats.wq_schedule_time_peak_usec)) + atomic_set( + &pst_adpd->stats.wq_schedule_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.wq_schedule_time_avg_usec, diff_usec); + } + + adpd142_data_handler(pst_adpd); + + do_gettimeofday(&wkq_comp); + + diff_usec = timeval_compare(&wkq_comp, &wkq_start); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read(&pst_adpd->stats.data_process_time_peak_usec)) + atomic_set( + &pst_adpd->stats.data_process_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.data_process_time_avg_usec, + diff_usec); + } + +} + +/** +This function is used for handling Interrupt from ADPD142 +@param irq is Interrupt number +@param dev_id is pointer point to ADPD142 data structure +@return irqreturn_t is a Interrupt flag +*/ +static irqreturn_t +adpd142_isr_handler(int irq, void *dev_id) +{ + struct adpd142_data *pst_adpd = dev_id; + + atomic_inc(&pst_adpd->stats.interrupts); + + if (!work_pending(&pst_adpd->work)) { + do_gettimeofday(&pst_adpd->stats.stamp.interrupt_trigger); + ADPD142_info("%s\n", __func__); + if (!queue_work(pst_adpd->ptr_adpd142_wq_st, &pst_adpd->work)) + atomic_inc(&pst_adpd->stats.wq_pending); + } else { + atomic_inc(&pst_adpd->stats.wq_pending); + ADPD142_info("work_pending !!\n"); + } + return IRQ_HANDLED; +} + +/** +This function is used for updating the ADPD142 structure after configuration +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_update_config(struct adpd142_data *pst_adpd) +{ + return; +} + +/** +This function is used for loading the configuration data to ADPD142 chip +0 - From file "/data/misc/adpd142_configuration.dcfg" +1 - From Static defined Array +@param pst_adpd the ADPD142 data structure +@param config configuration command +@return int status +*/ +static int +adpd142_configuration(struct adpd142_data *pst_adpd, unsigned char config) +{ + struct adpd_platform_data *ptr_config; + unsigned short addr; + unsigned short data; + unsigned short cnt = 0; + int ret = 0; + adpd142_mode_switching(pst_adpd, 0); + if (config == FRM_FILE) { + ret = adpd142_read_config_file(pst_adpd); + ADPD142_info("ARRAY_SIZE - %d\n", size); + } else { + ret = FRM_ARR; + } + if (ret == 0) + ptr_config = pst_adpd->ptr_config; + else + ptr_config = &adpd142_config_data; + + for (cnt = 0; cnt < ptr_config->config_size; cnt++) { + addr = (unsigned short) ((0xFFFF0000 & + ptr_config->config_data[cnt]) >> 16); + data = (unsigned short) (0x0000FFFF & + ptr_config->config_data[cnt]); + + ADPD142_dbg("addr[0x%04x] = 0x%04x\n", addr, data); + reg_write(pst_adpd, addr, data); + } + + adpd142_update_config(pst_adpd); + + return 0; +} + +/* read & write efs for hrm sensor */ + +static int osc_trim_efs_register_open(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + char buffer[60] = {0, }; + int err = 0; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + mm_segment_t old_fs; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(osc_filp)) { + err = PTR_ERR(osc_filp); + if (err != -ENOENT) + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + return err; + } + + err = osc_filp->f_op->read(osc_filp, + (char *)buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't read the oscillator trim data from file\n", __func__); + err = -EIO; + } + sscanf(buffer, "%d,%d,%d,%d,%d", + &osc_trim_32k, &osc_trim_32m, &osc_trim_addr26, &osc_trim_addr28, &osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + +static int osc_trim_efs_register_save(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + mm_segment_t old_fs; + char buffer[60] = {0, }; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + int err = 0; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(osc_filp)) { + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(osc_filp); + return err; + } + + osc_trim_32k = reg_read(pst_adpd, OSC_TRIM_32K_REG); + osc_trim_32m = reg_read(pst_adpd, OSC_TRIM_32M_REG); + osc_trim_addr26 = reg_read(pst_adpd, OSC_TRIM_ADDR26_REG); + osc_trim_addr28 = reg_read(pst_adpd, OSC_TRIM_ADDR28_REG); + osc_trim_addr29 = reg_read(pst_adpd, OSC_TRIM_ADDR29_REG); + + sprintf(buffer, "%d,%d,%d,%d,%d", + osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + err = osc_filp->f_op->write(osc_filp, + (char *)&buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't write the oscillator trim data to file\n", __func__); + err = -EIO; + } + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + + +/** +This function clears all the statistic counters. +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd_stat_reset(struct adpd142_data *pst_adpd) +{ + atomic_set(&pst_adpd->stats.interrupts, 0); + atomic_set(&pst_adpd->stats.wq_pending, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, 0); + atomic_set(&pst_adpd->stats.fifo_requires_sync, 0); + atomic_set(&pst_adpd->stats.fifo_bytes[0], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[1], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[2], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[3], 0); + ewma_init(&pst_adpd->stats.wq_schedule_time_avg_usec, 2048, 128); + ewma_init(&pst_adpd->stats.data_process_time_avg_usec, 2048, 128); +} + +/* SAMPLE - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the sample enable bit +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +sample_attr_get_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->sample_enabled); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for enabling the Sample mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +sample_attr_set_enable(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + unsigned short osc_trim_32k, osc_trim_32m; + unsigned short osc_trim_addr26 = 0, osc_trim_addr28 = 0, osc_trim_addr29 = 0; + int err; + + int val; + int n = sscanf(buf, "%d", &val); + (void)n; + memset(parse_data, 0, sizeof(parse_data)); + + if (pst_adpd->osc_trim_open_enable == 1) { + err = osc_trim_efs_register_open(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_open() empty(%d)\n", __func__, err); + osc_trim_32k = OSC_DEFAULT_32K_SET; + osc_trim_32m = OSC_DEFAULT_32M_SET; + } else { + osc_trim_32k = (unsigned short)pst_adpd->osc_trim_32K_value; + osc_trim_32m = (unsigned short)pst_adpd->osc_trim_32M_value; + osc_trim_addr26 = (unsigned short)pst_adpd->osc_trim_addr26_value; + osc_trim_addr28 = (unsigned short)pst_adpd->osc_trim_addr28_value; + osc_trim_addr29 = (unsigned short)pst_adpd->osc_trim_addr29_value; + + reg_write(pst_adpd, OSC_TRIM_ADDR26_REG, osc_trim_addr26); + reg_write(pst_adpd, OSC_TRIM_ADDR28_REG, osc_trim_addr28); + reg_write(pst_adpd, OSC_TRIM_ADDR29_REG, osc_trim_addr29); + } + pr_info("adpd142_%s = 32K[%02x], 32M[%02x], addr26[%02x], addr28[%02x], addr29[%02x]\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + reg_write(pst_adpd, OSC_TRIM_32K_REG, osc_trim_32k); + reg_write(pst_adpd, OSC_TRIM_32M_REG, osc_trim_32m); + pst_adpd->osc_trim_open_enable = 0; + } + + if (val == 1) { + pr_info("adpd142_%s_enable.\n", __func__); + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_enable(pst_adpd->vdd_led); + cmd_parsing("0x31", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 1); + } else { + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_disable(pst_adpd->vdd_led); + + cmd_parsing("0x0", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 0); + } + mode = GET_USR_MODE(parse_data[0]); + + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + return size; +} + +/* GENERAL - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the adpd_mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_get_mode(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->adpd_mode); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for switching ADPD142 mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_set_mode(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + + memset(parse_data, 0, sizeof(parse_data)); + cmd_parsing(buf, 1, parse_data); + + ADPD142_info("Mode requested 0x%02x\n", parse_data[0]); + pr_info("adpd142_%s = data0[%02x], data1[%02x]\n", __func__, parse_data[0], parse_data[1]); + mode = GET_USR_MODE(parse_data[0]); + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + + return size; +} + +/** +This function is used for reading the register value +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_reg_read_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + ADPD142_dbg("Regval: 0x%4x\n", pst_adpd->sysfslastreadval); + return sprintf(buf, "0x%04x\n", pst_adpd->sysfslastreadval); +} + +/** +This function is used for writing the register for reading back +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_read_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short addr, cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 2, parse_data); + addr = parse_data[0]; + cnt = parse_data[1]; + + mutex_lock(&pst_adpd->mutex); + + pst_adpd->sysfs_I2C_regaddr = addr; + + ret = adpd142_sysfs_I2C_read(pst_adpd); + if (ret != (-1)) { + ADPD142_dbg("RegRead_Store: addr = 0x%04X,value = 0x%04X\n", + addr, ret); + pst_adpd->sysfslastreadval = ret; + } else { + ADPD142_dbg("%s Error\n", __func__); + pst_adpd->sysfslastreadval = (unsigned short) -1; + } + + mutex_unlock(&pst_adpd->mutex); + return size; +} + +void adpd_power_enable(struct adpd142_data *info, bool onoff) +{ + int ret; + + pr_info("%s: %s\n", __func__, onoff ? "on" : "off"); + + if (!info->vdd_led) { + info->vdd_led = regulator_get(&info->client->dev,"adpd_led"); + if (IS_ERR(info->vdd_led)) { + dev_err(&info->client->dev,"Regulator(adpd_led) get failed rc = %ld\n", PTR_ERR(info->vdd_led)); + return; + } + ret = regulator_set_voltage(info->vdd_led,3300000, 3300000); + if (ret) { + dev_err(&info->client->dev, + "regulator(vdd_led) set_vtg failed rc=%d\n", ret); + return; + } + } + if (!info->reg_adpd) { + info->reg_adpd = regulator_get(&info->client->dev,"adpd_vreg"); + if (IS_ERR(info->reg_adpd)) { + dev_err(&info->client->dev,"Regulator(adpd_vreg) get failed rc = %ld\n", PTR_ERR(info->reg_adpd)); + return; + } + } + + if (onoff) { + if (!regulator_is_enabled(info->vdd_led)) { + ret = regulator_enable(info->vdd_led); + if (ret) { + pr_err("%s: enable vdd_led failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] on is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already on.\n",__func__); + + if (!regulator_is_enabled(info->reg_adpd)) { + ret = regulator_enable(info->reg_adpd); + if (ret) { + pr_err("%s: enable adpd_vreg failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] on is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already on.\n",__func__); + + + } else { + if (regulator_is_enabled(info->vdd_led)) { + ret = regulator_disable(info->vdd_led); + if (ret) { + pr_err("%s: disable vdd_led failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] off is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already off.\n",__func__); + + if (regulator_is_enabled(info->reg_adpd)) { + ret = regulator_disable(info->reg_adpd); + if (ret) { + pr_err("%s: disable adpd_vreg failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] off is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already off.\n",__func__); + + } +} + +static int adpd_parse_dt(struct adpd142_data *data, struct device *dev) +{ + struct device_node *this_node= dev->of_node; + enum of_gpio_flags flags; + int rc; + + if (this_node == NULL) + return -ENODEV; + + data->hrm_int = of_get_named_gpio_flags(this_node,"adpd142,irq_gpio", 0, &flags); + pr_err("%s : get hrm_int(data->hrm_int)(%d) \n", __func__, data->hrm_int); + if (data->hrm_int < 0) { + pr_err("%s : get hrm_int(%d) error\n", __func__, data->hrm_int); + return -ENODEV; + } + + rc = gpio_request(data->hrm_int, "hrm_int"); + if (rc) { + pr_err("%s - failed to request hrm_int\n", __func__); + goto err_int_gpio_req; + } + + rc = gpio_direction_input(data->hrm_int); + if (rc) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_int_gpio_direction_input; + } + + return 0; +err_int_gpio_direction_input: + gpio_free(data->hrm_int); +err_int_gpio_req: + return rc; +} + + +/** +This function is used for writing a particular data to the register +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_write_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 3, parse_data); + if (parse_data[1] != 1) { + ADPD142_dbg("few many argument!!\n"); + goto err_reg_write_argument; + } + + pst_adpd->sysfs_I2C_regaddr = parse_data[0]; + cnt = parse_data[1]; + pst_adpd->sysfs_I2C_regval = parse_data[2]; + mutex_lock(&pst_adpd->mutex); + ret = adpd142_sysfs_I2C_write(pst_adpd); + if (ret == pst_adpd->sysfs_I2C_regval) { + ADPD142_dbg("Reg[0x%04x] = 0x%04x\n", + pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + } else { + ADPD142_dbg("Reg write error!!\n"); + } + + adpd142_update_config(pst_adpd); + + mutex_unlock(&pst_adpd->mutex); +err_reg_write_argument: + return size; +} + +/** +This function is used for getting the status of configuration +TBD +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_config_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "status of config thread\n"); +} + +/** +This function is used for wrting the configuration value to the register +0 - write the configuration data present in file to ADPD142 +1 - write the configuration data present in Array to ADPD142 +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_config_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == FRM_ARR) + adpd142_configuration(pst_adpd, FRM_ARR); + else if (parse_data[0] == FRM_FILE) + adpd142_configuration(pst_adpd, FRM_FILE); + else + ADPD142_dbg("set 1 to config\n"); + return size; +} + + +/** +This function is used for getting the status of adpd142 and driver +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_stat_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned int interrupts = atomic_read(&pst_adpd->stats.interrupts); + unsigned int wq_pending = atomic_read(&pst_adpd->stats.wq_pending); + unsigned int wq_schedule_time_peak_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_peak_usec); + unsigned int wq_schedule_time_last_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_last_usec); + unsigned int data_process_time_peak_usec = + atomic_read(&pst_adpd->stats.data_process_time_peak_usec); + unsigned int data_process_time_last_usec = + atomic_read(&pst_adpd->stats.data_process_time_last_usec); + + return sprintf(buf, "\ + interrupts : %u\n\ + wq_pending : %u\n\ + wq_schedule_time_peak_usec : %u\n\ + wq_schedule_time_avg_usec : %d\n\ + wq_schedule_time_last_usec : %u\n\ + data_process_time_peak_usec : %u\n\ + data_process_time_avg_usec : %d\n\ + data_process_time_last_usec : %u\n\ + fifo_requires_sync : %d\n\ + fifo bytes history : [%d %d %d %d]\n\ + ADPD142 driver version : %s\n\ + ADPD142 Release date : %s\n", + + interrupts, wq_pending, + wq_schedule_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.wq_schedule_time_avg_usec), + wq_schedule_time_last_usec, + data_process_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.data_process_time_avg_usec), + data_process_time_last_usec, + atomic_read(&pst_adpd->stats.fifo_requires_sync), + atomic_read(&pst_adpd->stats.fifo_bytes[0]), + atomic_read(&pst_adpd->stats.fifo_bytes[1]), + atomic_read(&pst_adpd->stats.fifo_bytes[2]), + atomic_read(&pst_adpd->stats.fifo_bytes[3]), + ADPD142_VERSION, + ADPD142_RELEASE_DATE); + +} + +#define ADPD142_STAT_RESET 1 + +/** +This function is used for wrting the adpd stat value to zero +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_stat_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == ADPD142_STAT_RESET) { + ADPD142_dbg("Resetting statistics\n"); + adpd_stat_reset(pst_adpd); + } + + return size; +} + +/** +array of sample attributes +*/ +static struct device_attribute sample_attributes[] = { + __ATTR(enable, 0664, sample_attr_get_enable, sample_attr_set_enable), +}; + + +/** +This function is used for creating sysfs attribute for sample +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + if (device_create_file(dev, sample_attributes + i)) + goto err_sysfs_interface_sample; + return 0; +err_sysfs_interface_sample: + for (; i >= 0; i--) + device_remove_file(dev, sample_attributes + i); + dev_err(dev, "%s:Unable to create interface\n", __func__); + return -1; +} + +/** +This function is used for removing sysfs attribute for sample +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + device_remove_file(dev, sample_attributes + i); +} + +/** +This function is used for creating sysfs attribute +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces(struct device *dev) +{ + return 0; +} + +/** +This function is used for removing sysfs attribute +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces(struct device *dev) +{ + +} + +/** +This function is used for registering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of this function +*/ +static s32 +adpd142_input_init_sample(struct adpd142_data *pst_adpd) +{ + int err; + pst_adpd->ptr_sample_inputdev = input_allocate_device(); + if (!pst_adpd->ptr_sample_inputdev) { + err = -ENOMEM; + dev_err(&pst_adpd->client->dev, "input dev allocation fail\n"); + goto err_sample_allocate; + } + + pst_adpd->ptr_sample_inputdev->name = MODULE_NAME_HRM; + input_set_drvdata(pst_adpd->ptr_sample_inputdev, pst_adpd); + + __set_bit(EV_MSC, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(EV_REL, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(MSC_RAW, pst_adpd->ptr_sample_inputdev->mscbit); + __set_bit(REL_X, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Y, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Z, pst_adpd->ptr_sample_inputdev->relbit); + + err = input_register_device(pst_adpd->ptr_sample_inputdev); + if (err) { + dev_err(&pst_adpd->client->dev, + "unable to register input dev %s\n", + pst_adpd->ptr_sample_inputdev->name); + goto err_sample_register_failed; + } + + err = sensors_create_symlink(&pst_adpd->ptr_sample_inputdev->dev.kobj, + pst_adpd->ptr_sample_inputdev->name); + if (err < 0) { + pr_err("[HRM] %s: create_symlink error\n", __func__); + goto err_sample_register_failed; + } + + return 0; +err_sample_register_failed: + input_free_device(pst_adpd->ptr_sample_inputdev); +err_sample_allocate: + return err; +} + +/** +This function is used for unregistering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup_sample(struct adpd142_data *pst_adpd) +{ + input_set_drvdata(pst_adpd->ptr_sample_inputdev, NULL); + input_unregister_device(pst_adpd->ptr_sample_inputdev); + input_free_device(pst_adpd->ptr_sample_inputdev); +} + +/** +This function is used for registering input event for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the function +*/ +static s32 +adpd142_input_init(struct adpd142_data *pst_adpd) +{ + return adpd142_input_init_sample(pst_adpd); +} + +/** +This function is used for unregistering input event done for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_input_cleanup_sample(pst_adpd); +} + +/** +This function is used for registering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the called function +*/ +static s32 +adpd142_sysfs_init(struct adpd142_data *pst_adpd) +{ + if (create_sysfs_interfaces(&pst_adpd->client->dev)) + goto err_sysfs_create_gen; + + if (create_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev)) + goto err_sysfs_create_sample; + + return 0; +err_sysfs_create_sample: + + remove_sysfs_interfaces(&pst_adpd->client->dev); +err_sysfs_create_gen: + return -1; +} + +/** +This function is used for unregistering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_sysfs_cleanup(struct adpd142_data *pst_adpd) +{ + remove_sysfs_interfaces(&pst_adpd->client->dev); + remove_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev); +} + +/** +This function is used for assigning initial assignment value to +ADPD142 data structure +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_struct_assign(struct adpd142_data *pst_adpd) +{ + pst_adpd->ptr_data_buffer = data_buffer; +} + +/** +This function is used for initializing ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@param id pointer point i2c device id +@return s32 status of the called function +*/ +static s32 +adpd142_initialization(struct adpd142_data *pst_adpd, + const struct i2c_device_id *id) +{ + int err = 0; + + if (adpd142_input_init(pst_adpd)) { + err = -1; + pr_err("%s err line %d\n", __func__, __LINE__); + goto err_input_init; + } + if (adpd142_sysfs_init(pst_adpd)) { + pr_err("%s err line %d\n", __func__, __LINE__); + err = -1; + goto err_sysfs_init; + } + + adpd142_struct_assign(pst_adpd); + + memset(&pst_adpd->stats, 0, sizeof(pst_adpd->stats)); + adpd_stat_reset(pst_adpd); + + INIT_WORK(&pst_adpd->work, adpd142_wq_handler); + pst_adpd->ptr_adpd142_wq_st = + create_workqueue("adpd142_wq"); + if (!pst_adpd->ptr_adpd142_wq_st) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_wq_creation_init; + } + + if (!pst_adpd->client->irq){ + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + pst_adpd->hrm_int = pst_adpd->client->irq; + pst_adpd->irq = pst_adpd->hrm_int; + + irq_set_irq_type(pst_adpd->irq, IRQ_TYPE_EDGE_RISING); + err = request_irq(pst_adpd->irq, adpd142_isr_handler, + IRQF_TRIGGER_RISING, dev_name(&pst_adpd->client->dev), + pst_adpd); + if (err) { + ADPD142_dbg("irq %d busy?\n", pst_adpd->irq); + goto err_work_queue_init; + } + disable_irq_nosync(pst_adpd->irq); + + pst_adpd->ptr_config = kzalloc(sizeof(struct adpd_platform_data), + GFP_KERNEL); + if (pst_adpd->ptr_config == NULL) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + + enable_irq(pst_adpd->irq); + adpd142_configuration(pst_adpd, 1); + adpd142_mode_switching(pst_adpd, 0); /* turn off : idle mode, temp*/ + pst_adpd->osc_trim_open_enable = 1; + + return 0; +//err_gpio_direction_input: + //gpio_free(pst_adpd->hrm_int); +err_work_queue_init: + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); +err_wq_creation_init: + +err_sysfs_init: + adpd142_input_cleanup(pst_adpd); +err_input_init: + return err; +} + +/** +This function is used for cleanup ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_initialization_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_mode_switching(pst_adpd, 0); + + free_irq(pst_adpd->irq, pst_adpd); + + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); + adpd142_sysfs_cleanup(pst_adpd); + adpd142_input_cleanup(pst_adpd); + kobject_uevent(&pst_adpd->client->dev.kobj, KOBJ_OFFLINE); +} + +#ifdef CONFIG_PM +static s32 +adpd142_i2c_suspend(struct device *dev) +{ + return 0; +} + +static s32 +adpd142_i2c_resume(struct device *dev) +{ + return 0; +} +#else +#define adpd142_i2c_resume NULL +#define adpd142_i2c_suspend NULL +#endif /* CONFIG_PM */ + + +/** +This function is used for i2c read communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param buf pointer point the read out data. +@return s32 status of the called function +*/ +static int +adpd142_i2c_read(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 *buf) +{ + int err; + int tries = 0; + int icnt = 0; + + struct i2c_msg msgs[] = { + { + .addr = pst_adpd->client->addr, + .flags = pst_adpd->client->flags & I2C_M_TEN, + .len = 1, + .buf = (s8 *)®_addr, + }, + { + .addr = pst_adpd->client->addr, + .flags = (pst_adpd->client->flags & I2C_M_TEN) | + I2C_M_RD, + .len = len * sizeof(unsigned short), + .buf = (s8 *)buf, + }, + }; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 2); + if (err != 2) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < I2C_RETRIES)); + + if (err != 2) { + dev_err(&pst_adpd->client->dev, "read transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + for (icnt = 0; icnt < len; icnt++) { + /*convert big endian to CPU format*/ + buf[icnt] = be16_to_cpu(buf[icnt]); + } + + return err; +} + +/** +This function is used for i2c write communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param data value to be written on the register. +@return s32 status of the called function +*/ +static int +adpd142_i2c_write(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 data) +{ + struct i2c_msg msgs[1]; + int err; + int tries = 0; + unsigned short data_to_write = cpu_to_be16(data); + char buf[4]; + + buf[0] = (s8) reg_addr; + memcpy(buf + 1, &data_to_write, sizeof(unsigned short)); + msgs[0].addr = pst_adpd->client->addr; + msgs[0].flags = pst_adpd->client->flags & I2C_M_TEN; + msgs[0].len = 1 + (1 * sizeof(unsigned short)); + msgs[0].buf = buf; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 1); + if (err != 1) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 1) && (++tries < I2C_RETRIES)); + + if (err != 1) { + dev_err(&pst_adpd->client->dev, "write transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + return err; +} + +/* set sysfs for hrm sensor */ +static ssize_t adpd142_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, CHIP_NAME); + + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t adpd142_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, VENDOR); + + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size); + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + pst_adpd->eol_test_is_enable = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + pst_adpd->eol_test_is_enable = 0; + else { + pr_debug("adpd142_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + pst_adpd->eol_test_status = 0; + pr_info("adpd142_%s = (%c), value(%u) \n", __func__, *buf, pst_adpd->eol_test_is_enable); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int err; + unsigned int buf_len; + + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (pst_adpd->eol_test_result != NULL) + kfree(pst_adpd->eol_test_result); + + pst_adpd->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_test_result == NULL) { + pr_err("adpd142_%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_test_result, buf, buf_len); + pr_info("adpd142_%s - result = %s, buf_len(%u)\n", __func__, pst_adpd->eol_test_result, buf_len); + pst_adpd->eol_test_status = 1; + + err = osc_trim_efs_register_save(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_save() empty(%d)\n", __func__, err); + } + + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_test_result == NULL) { + pr_info("adpd142_%s - data->eol_test_result is NULL\n", __func__); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("adpd142_%s - result = %s\n", __func__, pst_adpd->eol_test_result); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_status); +} + +static ssize_t adpd142_eol_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->eol_lib_ver != NULL) + kfree(pst_adpd->eol_lib_ver); + + pst_adpd->eol_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_lib_ver, buf, buf_len); + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return size; +} + +static ssize_t adpd142_eol_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_lib_ver == NULL) { + pr_info("%s - data->eol_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_lib_ver); +} + +static ssize_t adpd142_elf_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->elf_lib_ver != NULL) + kfree(pst_adpd->elf_lib_ver); + + pst_adpd->elf_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->elf_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->elf_lib_ver, buf, buf_len); + return size; +} + +static ssize_t adpd142_elf_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->elf_lib_ver == NULL) { + pr_info("%s - data->elf_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - elf_lib_ver = %s\n", __func__, pst_adpd->elf_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->elf_lib_ver); +} + +static DEVICE_ATTR(name, S_IRUGO, adpd142_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, adpd142_vendor_show, NULL); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(eol_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_eol_lib_ver_show, adpd142_eol_lib_ver_store); +static DEVICE_ATTR(elf_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_elf_lib_ver_show, adpd142_elf_lib_ver_store); +static DEVICE_ATTR(adpd_mode, S_IRUGO | S_IWUSR | S_IWGRP, + attr_get_mode, attr_set_mode); +static DEVICE_ATTR(adpd_reg_read, S_IRUGO | S_IWUSR | S_IWGRP, + attr_reg_read_get, attr_reg_read_set); +static DEVICE_ATTR(adpd_reg_write, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, attr_reg_write_set); +static DEVICE_ATTR(adpd_configuration, S_IRUGO | S_IWUSR | S_IWGRP, + attr_config_get, attr_config_set); +static DEVICE_ATTR(adpd_stat, S_IRUGO | S_IWUSR | S_IWGRP, + attr_stat_get, attr_stat_set); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_eol_lib_ver, + &dev_attr_elf_lib_ver, + &dev_attr_adpd_mode, + &dev_attr_adpd_reg_read, + &dev_attr_adpd_reg_write, + &dev_attr_adpd_configuration, + &dev_attr_adpd_stat, + NULL, +}; + +/** +This function is used for ADPD142 probe function +@param client pointer point to the linux i2c client structure +@param id pointer point to the linux i2c device id +@return s32 status of the probe function +*/ +static s32 +adpd_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id) +{ + struct adpd142_data *pst_adpd = NULL; + struct adpd_platform_data *pdata = NULL; + int err = 0; + unsigned short u16_regval = 0; + pr_err("%s, is called Success\n", __func__); + + + if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { + dev_err(&client->dev, "client not i2c capable\n"); + err = -ENODEV; + pr_err("[SENSOR] %s - exit_check_functionality.\n", __func__); + goto exit_check_functionality_failed; + } + + pst_adpd = kzalloc(sizeof(struct adpd142_data), GFP_KERNEL); + if (pst_adpd == NULL) { + err = -ENOMEM; + pr_err("[SENSOR] %s - exit_mem_allocate.\n", __func__); + goto exit_mem_allocate_failed; + } + + if(client->dev.of_node) { + pdata = devm_kzalloc (&client->dev , + sizeof(struct adpd_platform_data), GFP_KERNEL); + if(!pdata) { + dev_err(&client->dev, "Failed to allocate memory\n"); + if(pst_adpd) + kfree(pst_adpd); + return -ENOMEM; + } + } else + pdata = client->dev.platform_data; + if (!pdata) { + pr_err("%s: missing pdata!\n", __func__); + if(pst_adpd) + kfree(pst_adpd); + return err; + } + + err = adpd_parse_dt(pst_adpd, &client->dev); + if (err) { + pr_err("%s, parse dt fail\n", __func__); + goto adpd_parse_dt_err; + } + + mutex_init(&pst_adpd->mutex); + + pst_adpd->client = client; + pst_adpd->ptr_config = pdata; + pst_adpd->read = adpd142_i2c_read; + pst_adpd->write = adpd142_i2c_write; + /*Need to allocate and assign data then use the below function */ + i2c_set_clientdata(client, (struct adpd142_data *)pst_adpd); + + adpd_power_enable(pst_adpd, 1); + msleep(20); + + /*chip ID verification */ + u16_regval = reg_read(pst_adpd, ADPD_CHIPID_ADDR); + + switch (u16_regval) { + case ADPD_CHIPID(0): + case ADPD_CHIPID(1): + case ADPD_CHIPID(2): + err = 0; + ADPD142_dbg("chipID value = 0x%x\n", u16_regval); + break; + default: + err = 1; + break; + }; + if (err) { + ADPD142_dbg("chipID value = 0x%x\n", u16_regval); + pr_err("[SENSOR] %s - exit_chipid_verification.\n", __func__); + goto exit_chipid_verification; + } + ADPD142_info("chipID value = 0x%x\n", u16_regval); + + //pst_adpd->dev = &client->dev; + pr_info("%s - start \n", __func__); + + if (adpd142_initialization(pst_adpd, id)){ + pr_err("[SENSOR] %s - exit_adpd142_init_exit.\n", __func__); + goto exit_adpd142_init; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(pst_adpd->dev, pst_adpd, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + pr_info("%s success\n", __func__); + +goto done; +hrm_sensor_register_failed: +exit_adpd142_init: +exit_chipid_verification: + mutex_destroy(&pst_adpd->mutex); +adpd_parse_dt_err: +exit_mem_allocate_failed: + kfree(pst_adpd); +exit_check_functionality_failed: + dev_err(&client->dev, "%s: Driver Init failed\n", ADPD_DEV_NAME); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/** +This function is used for ADPD142 remove function +@param client pointer point to the linux i2c client structure +@return s32 status of the remove function +*/ +static s32 +adpd_i2c_remove(struct i2c_client *client) +{ + struct adpd142_data *pst_adpd = i2c_get_clientdata(client); + ADPD142_dbg("%s\n", __func__); + adpd142_initialization_cleanup(pst_adpd); + kfree(pst_adpd->ptr_config); + kfree(pst_adpd); + pst_adpd = NULL; + + i2c_set_clientdata(client, NULL); + + gpio_free(pst_adpd->hrm_int); + return 0; +} + +#ifdef CONFIG_PM +/** + device power management operation structure +*/ +static const struct dev_pm_ops adpd_pm_ops = { + .resume = adpd142_i2c_resume, + .suspend = adpd142_i2c_suspend, +}; +#endif + +/** + This table tell which framework it supported + @brief the name has to get matched to the board configuration file setup + */ +/*static struct i2c_device_id adpd_id[] = { {ADPD_DEV_NAME, 0}, {} }; + +MODULE_DEVICE_TABLE(i2c, adpd_id);*/ + +static struct of_device_id adpd_match_table[] = { + { .compatible = "adpd142",}, + {}, +}; + +MODULE_DEVICE_TABLE(i2c, adpd_match_table); + +static const struct i2c_device_id adpd142_device_id[] = { + { "adpd142", 0 }, + { } +}; + +/** + i2c operation structure +*/ +struct i2c_driver adpd142_i2c_driver = { + .driver = { + .name = ADPD_DEV_NAME, + .owner = THIS_MODULE, +#ifdef CONFIG_PM + .pm = &adpd_pm_ops, +#endif + .of_match_table = adpd_match_table, + }, + .probe = adpd_i2c_probe, + .remove = adpd_i2c_remove, + .id_table = adpd142_device_id, +}; + +static struct i2c_client *i2c_client; + +#ifdef ADPD_AUTO_PROBE +static int +i2c_check_dev_attach(char *slave_name, unsigned short *slave_addrs, + unsigned short cnt) +{ + struct i2c_board_info info; + struct i2c_adapter *i2c_adapter = NULL; + int ret = 0; + unsigned short *scan_device = NULL; + unsigned short count = 0; + + /*need to check whether we need to free the memory */ + scan_device = kzalloc(sizeof(unsigned short) * (cnt + 2), GFP_KERNEL); + if (IS_ERR(scan_device)) { + ret = -ENOMEM; /* out of memory */ + goto i2c_check_attach_mem_fail; + } + + memset(scan_device, '\0', sizeof(unsigned short) * (cnt + 2)); + for (count = 0; count < cnt; count++) { + *(scan_device + count) = *(slave_addrs + count); + ADPD142_info("list of slave addr = 0x%x\n", + *(scan_device + count)); + } + *(scan_device + count) = I2C_CLIENT_END; + + count = 0; + + do { + i2c_adapter = i2c_get_adapter(count); + if (i2c_adapter != NULL) { + memset(&info, 0, sizeof(struct i2c_board_info)); + strlcpy(info.type, slave_name /*"adpd142" */ , + I2C_NAME_SIZE); + /*need to check i2c_new_device instead of + i2c_new_probed_device*/ + i2c_client = + i2c_new_probed_device(i2c_adapter, &info, + (const unsigned short *) + scan_device, NULL); + if (i2c_client != NULL) { + ADPD142_dbg("I2C busnum - %d\n", count); + ADPD142_dbg( + "device is attached to the bus i2c-%d\n", + count); + } else { + + } + i2c_put_adapter(i2c_adapter); + } else { + ADPD142_info("Not valid adapter\n"); + } + count++; + } while (i2c_client == NULL && count < 20); + + kfree(scan_device); + + if (i2c_client == NULL) { + /*No such device or address */ + return -ENXIO; + } else { + return 0; + } + +i2c_check_attach_mem_fail: + return ret; +} +#endif + +/** +This function is get called when the module is inserted +@return inti status of the adpd142_multisensor_init +*/ +static int __init +adpd142_multisensor_init(void) +{ +#ifdef ADPD_AUTO_PROBE + ADPD142_dbg("%s\n", __func__); + unsigned short addr[] = { ADPD142_SLAVE_ADDR }; + if (!i2c_check_dev_attach(ADPD_DEV_NAME, addr, 1)) { + return i2c_add_driver(&adpd142_i2c_driver); + } else { + pr_err("i2c bus connect error\n"); + return -1; + } +#else + ADPD142_dbg("%s\n", __func__); + return i2c_add_driver(&adpd142_i2c_driver); +#endif +} + +/** +This function is get called when the module is removed +@return void +*/ +static void __exit +adpd142_multisensor_exit(void) +{ + ADPD142_dbg("%s\n", __func__); + i2c_del_driver(&adpd142_i2c_driver); + if (i2c_client) + i2c_unregister_device(i2c_client); +} + +module_init(adpd142_multisensor_init); +module_exit(adpd142_multisensor_exit); +MODULE_DESCRIPTION(); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR(""); diff --git a/drivers/sensorhub/stm_hestia/adpd142.h b/drivers/sensorhub/stm_hestia/adpd142.h new file mode 100755 index 000000000000..31db0b979ea7 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/adpd142.h @@ -0,0 +1,132 @@ +/** +@file adpd142.h +@brief ADPD142 - Low level driver Header 'H' File +*/ +#ifndef _ADPD142_H_ +#define _ADPD142_H_ + +#include /* module initialization api */ +#include /* module functionality */ +#include /* i2c related functionality */ +#include +#include /* device Power Management functionality */ +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +/** + @brief ADPD142 Slave address +*/ +#define ADPD142_SLAVE_ADDR 0x64 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID_0 0x0016 +/** + @brief ADPD142 ChipID 1 +*/ +#define ADPD_CHIPID_1 0x0116 +/** + @brief ADPD142 ChipID 2 +*/ +#define ADPD_CHIPID_2 0x0216 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID(id) ADPD_CHIPID_##id + +/*ADPD142 REGISTER ADDRESS*/ +/** + @brief ADPD142 Interrupt Status Register +*/ +#define ADPD_INT_STATUS_ADDR 0x0 +/** + @brief ADPD142 Interrupt Mask Register +*/ +#define ADPD_INT_MASK_ADDR 0x1 +/** + @brief ADPD142 ChipID register +*/ +#define ADPD_CHIPID_ADDR 0x8 +/** + @brief ADPD142 Operating mode Register +*/ +#define ADPD_OP_MODE_ADDR 0x10 +/** + @brief ADPD142 Operating Mode Configuration register +*/ +#define ADPD_OP_MODE_CFG_ADDR 0x11 +/** + @brief ADPD142 Gesture Control Register +*/ +#define ADPD_GEST_CTRL_ADDR 0x27 +/** + @brief ADPD142 Gesture Threshold Register +*/ +#define ADPD_GEST_THRESH_ADDR 0x28 +/** + @brief ADPD142 Gesture Size Register +*/ +#define ADPD_GEST_SIZE_ADDR 0x29 +/** + @brief ADPD142 Proximity ON1 Threshold register +*/ +#define ADPD_PROX_ON_TH1_ADDR 0x2A +/** + @brief ADPD142 proximity OFF1 Threshold register +*/ +#define ADPD_PROX_OFF_TH1_ADDR 0x2B +/** + @brief ADPD142 Proximity ON2 Threshold register +*/ +#define ADPD_PROX_ON_TH2_ADDR 0x2C +/** + @brief ADPD142 Proximity OFF2 Threshold register +*/ +#define ADPD_PROX_OFF_TH2_ADDR 0x2D +/** + @brief ADPD142 Test PD register +*/ +#define ADPD_TEST_PD_ADDR 0x52 +/** + @brief ADPD142 Access control register +*/ +#define ADPD_ACCESS_CTRL_ADDR 0x5F +/** + @brief ADPD142 FIFO register +*/ +#define ADPD_DATA_BUFFER_ADDR 0x60 + + +/** + @brief ADPD142 maximum array size of Platform data +*/ +#define MAX_CONFIG_REG_CNT 72 +/** + @brief ADPD142 Platform Data +*/ +struct adpd_platform_data { + unsigned short config_size; + unsigned int config_data[MAX_CONFIG_REG_CNT]; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif diff --git a/drivers/sensorhub/stm_hestia/bgm.c b/drivers/sensorhub/stm_hestia/bgm.c new file mode 100755 index 000000000000..64a21adf61f2 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/bgm.c @@ -0,0 +1,597 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define VENDOR "SAMSUNG" +#define CHIP_ID "COMMON" + +#define EVENT_TYPE_STATUS REL_HWHEEL +#define EVENT_TYPE_RESULT REL_DIAL + +struct bgm_data { + struct platform_device *pdev; + struct miscdevice bgm_device; + struct wake_lock bgm_wake_lock; + + struct work_struct strip_work; + struct workqueue_struct *report_queue; + struct workqueue_struct *indication_queue; + struct delayed_work report_work; + struct delayed_work indication_work; + struct input_dev *input; + struct device *bgm_dev; + u8 enabled; + int strip_irq; + int notify_cmd; + int state_cmd; + u32 indication; + u32 strip_status; + int bgm_state; + u32 ecg_enable; + int check_loop; +}; + +static void report_state(struct bgm_data *data) +{ + input_report_rel(data->input, EVENT_TYPE_STATUS, + data->bgm_state + 1); + input_sync(data->input); +} + +static void start_check(struct bgm_data *data) +{ + data->check_loop = 1; + queue_delayed_work(data->indication_queue, + &data->indication_work, HZ/2); +} + +static void stop_check(struct bgm_data *data) +{ + data->check_loop = 0; + //cancel_delayed_work(&data->indication_work); +} + +static void indication_func(struct work_struct *work) +{ + struct bgm_data *data = container_of(work, + struct bgm_data, indication_work.work); + int strip_value, indi_value; + + indi_value = gpio_get_value(data->indication); + strip_value = gpio_get_value(data->strip_status); + pr_info("[BGM] %s : strip=%d, indication=%d\n", __func__, strip_value, indi_value); + + if (indi_value == 1 && data->bgm_state == 0 && strip_value == 0) { + pr_info("[BGM] %s : Start-up check OK\n", __func__); + data->bgm_state = 1; + report_state(data); + } else if (indi_value == 0 && data->bgm_state == 1) { + pr_info("[BGM] %s : Waiting sample\n", __func__); + data->bgm_state = 2; + report_state(data); + } else if (indi_value == 1 && data->bgm_state == 2) { + pr_info("[BGM] %s : Sample applied\n", __func__); + data->bgm_state = 3; + report_state(data); + } else if (indi_value == 1 && data->bgm_state == 3 + && data->notify_cmd == 1) { + pr_info("[BGM] %s : Send sleep\n", __func__); + data->bgm_state = 4; + report_state(data); + } + + if (data->check_loop) + queue_delayed_work(data->indication_queue, + &data->indication_work, HZ/2); +} + +static void report_func(struct work_struct *work) +{ + struct bgm_data *data = container_of(work, + struct bgm_data, report_work.work); + pr_info("[BGM] %s : %d\n", __func__, data->notify_cmd + 1); + input_report_rel(data->input, EVENT_TYPE_STATUS, + data->notify_cmd + 1); + input_sync(data->input); +} + +static irqreturn_t bgm_strip_irq_handler(int irq, void *dev_id) +{ + struct bgm_data *data = dev_id; + wake_lock_timeout(&data->bgm_wake_lock, 3 * HZ); + + //schedule_work(&data->strip_work); + + pr_info("[BGM] %s : IRQ_HANDLED. %d\n", __func__, + gpio_get_value(data->strip_status)); + return IRQ_HANDLED; +} + + + +static void strip_func(struct work_struct *work) +{ + struct bgm_data *data = container_of((struct work_struct *)work, + struct bgm_data, strip_work); + int ret; + + ret = gpio_get_value(data->strip_status); + pr_info("[BGM] %s : strip gpio value is %d\n", __func__, ret); +} + +static int bgm_parse_dt(struct device *dev, struct bgm_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + int irq; + int rc; + + pr_info("[BGM] %s : bgm,indication\n", __func__); + data->indication = of_get_named_gpio_flags(np, "bgm,indication", + 0, &flags); + if (data->indication < 0) { + errorno = data->indication; + pr_err("[BGM] %s : bgm,indication error\n", __func__); + } else { + + errorno = gpio_request(data->indication, "BGMINDI"); + if (errorno) { + pr_err("[BGM] %s : failed to request indication PIN\n", + __func__); + } else { + errorno = gpio_direction_input(data->indication); + if (errorno) { + pr_err("[BGM] %s : failed to set indication PIN as output\n", + __func__); + } + } + } + + pr_info("[BGM] %s : bgm,strip_status\n", __func__); + data->strip_status = of_get_named_gpio_flags(np, "bgm,strip_status", + 0, &flags); + if (data->strip_status < 0) { + errorno = data->strip_status; + pr_err("[BGM] %s : bgm,strip_status\n", __func__); + } else { + + errorno = gpio_request(data->strip_status, "BGMSTRIP"); + if (errorno) { + pr_err("[BGM] %s : failed to request strip_status PIN\n", + __func__); + } else { + errorno = gpio_direction_input(data->strip_status); + if (errorno) { + pr_err("[BGM] %s : failed to set strip_status PIN as output\n", + __func__); + } + } + } + + if (data->strip_status >= 0) { + irq = gpio_to_irq(data->strip_status); + + rc = request_threaded_irq(irq, NULL, + bgm_strip_irq_handler, + IRQF_TRIGGER_FALLING | + IRQF_TRIGGER_RISING | + IRQF_ONESHOT, + "bgm_ind_int", + data); + if (rc < 0) { + pr_err("[BGM] %s : request_irq(%d) failed for gpio %d (%d)\n", + __func__, irq, + data->strip_status, rc); + //goto dt_exit; + } + + disable_irq(irq); + data->strip_irq = irq; + } + + +#if 1 + pr_info("[BGM] %s : bgm,ecg_enable\n", __func__); + data->ecg_enable = of_get_named_gpio_flags(np, "bgm,ecg_enable", + 0, &flags); + if (data->ecg_enable < 0) { + errorno = data->ecg_enable; + pr_err("[BGM] %s: mlx90615,ecg_enable\n", __func__); + } else { + errorno = gpio_request(data->ecg_enable, "BGM_ECG_ENABLE"); + if (errorno) { + pr_err("[BGM] %s: failed to request ecg_enable PIN \n", + __func__); + } else { + errorno = gpio_direction_output(data->ecg_enable, 1); + if (errorno) { + pr_err("[BGM] %s: failed to set ecg_enable PIN as output\n", + __func__); + } + } + } + +#endif + + return 0; + +//dt_exit: + //return errorno; +} +/* +static ssize_t bgm_io_read(struct file *filp, char __user *buf, + size_t count, loff_t *offset) +{ + //struct bgm_data *data = filp->private_data; + //char tmp[MAX_BUFFER_SIZE] = {0, }; + int ret = 0; + pr_info("[BGM] %s :\n", __func__); +//ret = wait_event_interruptible(pn547_dev->read_wq, + return ret; +} +static ssize_t bgm_io_write(struct file *filp, const char __user *buf, + size_t count, loff_t *offset) +{ + int ret = 0; + struct bgm_data *data =filp->private_data; + pr_info("[BGM] %s :\n", __func__); + + + + + return ret; +} + +static long bgm_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) +{ +// void __user *argp = (void __user *)arg; +// struct bgm_data *data = container_of(filp->private_data, +// struct bgm_data, bgm_device); + + switch (cmd) { + default: + return -ENOTTY; + } + return 0; +} + +*/ +static int bgm_io_open(struct inode *inode, struct file *filp) +{ + pr_info("[BGM] %s :\n", __func__); + return 0; +} + +static int bgm_io_release(struct inode *inode, struct file *filp) +{ + pr_info("[BGM] %s :\n", __func__); + return 0; +} + +static const struct file_operations bgm_fops = { + .owner = THIS_MODULE, + .open = bgm_io_open, + .release = bgm_io_release, + //.unlocked_ioctl = bgm_ioctl, + .llseek = no_llseek, + //.read = bgm_io_read, + //.write = bgm_io_write, +}; + +static ssize_t bgm_enable_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct bgm_data *data = dev_get_drvdata(dev); + int new_value; + + if (sysfs_streq(buf, "1")) + new_value = true; + else if (sysfs_streq(buf, "0")) + new_value = false; + else { + pr_err("[BGM] %s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + if (new_value && !data->enabled) { + pr_err("[BGM] %s : bgm enable, polling start, sensor on\n", __func__); + data->bgm_state = 0; + data->notify_cmd = 0; + data->enabled = 1; + gpio_direction_output(data->ecg_enable, 0); + msleep(300); + gpio_direction_output(data->ecg_enable, 1); + start_check(data); + } else if (!new_value && data->enabled) { + data->enabled = 0; + pr_err("[BGM] %s : bgm enable, polling stop, sensor off\n", __func__); + gpio_direction_output(data->ecg_enable, 1); + stop_check(data); + } + + return size; +} + +static ssize_t bgm_notify_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + int err; + long noti_cmd; + struct bgm_data *data = dev_get_drvdata(dev); + + err = strict_strtol(buf, 10, ¬i_cmd); + + pr_info("[BGM] %s : %s = 0x%02x\n", __func__, buf, (int)noti_cmd); + + if (err < 0) + return -EINVAL; + + if (noti_cmd == 1) + data->notify_cmd = 1; + else { /* error or test state */ + input_report_rel(data->input, EVENT_TYPE_STATUS, noti_cmd + 1); + input_sync(data->input); + data->bgm_state = 0; + data->notify_cmd = 0; + } + //queue_delayed_work(data->report_queue, &data->report_work, HZ*2); + + //TODO : input report + + return size; +} + +static ssize_t bgm_notify_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct bgm_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", data->notify_cmd); +} + + +static ssize_t bgm_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct bgm_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", data->enabled); +} + +static struct device_attribute dev_attr_enable = +__ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + bgm_enable_show, bgm_enable_store); + +static struct attribute *bgm_sysfs_attrs[] = { + &dev_attr_enable.attr, + NULL +}; + +static struct attribute_group bgm_attribute_group = { + .attrs = bgm_sysfs_attrs, +}; + +/* sysfs for vendor & name */ +static ssize_t bgm_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t bgm_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static DEVICE_ATTR(vendor, 0644, bgm_vendor_show, NULL); +static DEVICE_ATTR(name, 0644, bgm_name_show, NULL); +static DEVICE_ATTR(notify, 0666, bgm_notify_show, bgm_notify_store); + + +static struct device_attribute *bgm_sensor_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_notify, + NULL, +}; + +static int bgm_probe(struct platform_device *dev) +{ + int ret; + struct bgm_data *data; + + pr_info("[BGM] %s : bgm_probe\n", __func__); + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (data == NULL) { + pr_err("%s, failed to alloc memory for module data\n", + __func__); + ret = -ENOMEM; + goto exit; + } + + data->pdev = platform_device_register_simple("bgm", -1, NULL, 0); + if (IS_ERR(data->pdev)) { + ret = PTR_ERR(data->pdev); + goto out_driver; + } + + if (dev->dev.of_node) + pr_info("[BGM] %s : of node\n", __func__); + else { + pr_err("%s : no of node\n", __func__); + goto out_device; + } + + ret = bgm_parse_dt(&dev->dev, data); + if (ret) { + pr_err("%s : parse dt error\n", __func__); + //goto err_parse_dt; + } + + data->bgm_state = 0; + + data->bgm_device.minor = MISC_DYNAMIC_MINOR; + data->bgm_device.name = "bgm"; + data->bgm_device.fops = &bgm_fops; + ret = misc_register(&data->bgm_device); + if (ret) + goto exit_misc_device_register_failed; + + wake_lock_init(&data->bgm_wake_lock, + WAKE_LOCK_SUSPEND, "bgm_wake_lock"); + INIT_WORK(&data->strip_work, strip_func); + INIT_DELAYED_WORK(&data->report_work, report_func); + INIT_DELAYED_WORK(&data->indication_work, indication_func); + data->report_queue = + create_singlethread_workqueue(dev_name(&data->pdev->dev)); + data->indication_queue = + create_singlethread_workqueue(dev_name(&data->pdev->dev)); + + + data->input = input_allocate_device(); + if (!data->input) { + pr_err("[BGM] %s : could not allocate mlx90615 input device\n", __func__); + goto err_input_allocate_device; + } + + data->input->name = "bgm_sensor"; + input_set_capability(data->input, EV_REL, EVENT_TYPE_STATUS); + //input_set_capability(data->input, EV_REL, EVENT_TYPE_OBJECT_TEMP); + input_set_drvdata(data->input, data); + + ret = input_register_device(data->input); + if (ret < 0) { + input_free_device(data->input); + pr_err("[BGM] %s : could not register input device\n", __func__); + //goto err_input_register_device; + } + + ret = sensors_create_symlink(&data->input->dev.kobj, + data->input->name); + if (ret < 0) { + input_unregister_device(data->input); + goto err_sysfs_create_symlink; + } + + ret = sysfs_create_group(&data->input->dev.kobj, + &bgm_attribute_group); + if (ret) { + pr_err("[BGM] %s : could not create sysfs group\n", __func__); + goto err_sysfs_create_group; + } + ret = sensors_register(data->bgm_dev, + data, bgm_sensor_attrs, "bgm_sensor"); + if (ret) { + pr_err("[BGM] %s : cound not register prox sensor device(%d).\n", + __func__, ret); + goto err_sysfs_create_symlink; + } + platform_set_drvdata(dev,data); + pr_info("[BGM] %s : success.\n", __func__); + + return 0; +err_input_allocate_device: +err_sysfs_create_symlink: + input_free_device(data->input); +err_sysfs_create_group: + input_unregister_device(data->input); + +exit_misc_device_register_failed: + misc_deregister(&data->bgm_device); + +out_device: + platform_device_unregister(data->pdev); +out_driver: + //mutex_destroy(&data->bgm_lock); + kfree(data); +exit: + pr_err("[BGM] %s : failed!\n", __func__); + return ret; +} + +static int bgm_remove(struct platform_device *dev) +{ + struct bgm_data *data = platform_get_drvdata(dev); + + misc_deregister(&data->bgm_device); + platform_device_unregister(data->pdev); + + kfree(data); + + return 0; +} + +static int bgm_suspend(struct device *dev) +{ + struct bgm_data *data = dev_get_drvdata(dev); + gpio_direction_output(data->ecg_enable, 0); + return 0; +} + +static int bgm_resume(struct device *dev) +{ + struct bgm_data *data = dev_get_drvdata(dev); + gpio_direction_output(data->ecg_enable, 1); + cancel_delayed_work(&data->report_work); + return 0; +} + +#ifdef CONFIG_OF +static struct of_device_id bgm_match_table[] = { + {.compatible = "blood_glucose",}, + {}, +}; +#endif + +static const struct dev_pm_ops bgm_pm_ops = { + .suspend = bgm_suspend, + .resume = bgm_resume +}; + +static struct platform_driver bgm_driver = { + .driver = { +#ifndef CONFIG_HAS_EARLYSUSPEND + .pm = &bgm_pm_ops, +#endif + .name = "blood_glucose", + .owner = THIS_MODULE, + .of_match_table = bgm_match_table, + }, + .probe = bgm_probe, + .remove = bgm_remove, +}; + +static int __init bgm_init(void) +{ + return platform_driver_register(&bgm_driver); +} + +static void __exit bgm_exit(void) +{ + platform_driver_unregister(&bgm_driver); +} + +module_init(bgm_init); +module_exit(bgm_exit); + +MODULE_DESCRIPTION("BGM sensor control"); +MODULE_AUTHOR("Samsung Electronic"); +MODULE_LICENSE("GPL v2"); diff --git a/drivers/sensorhub/stm_hestia/bio.c b/drivers/sensorhub/stm_hestia/bio.c new file mode 100755 index 000000000000..4e19659b882b --- /dev/null +++ b/drivers/sensorhub/stm_hestia/bio.c @@ -0,0 +1,787 @@ +/* + * Copyright (c) 2011 SAMSUNG ELECTRONICS + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define VENDOR "SAMSUNG" +#define CHIP_ID "COMMON" + +#define ECG_VERSION_FILE_PATH "/efs/ecg_ver" + +#define EVENT_TYPE_STATUS REL_HWHEEL +#define EVENT_TYPE_RESULT REL_DIAL + +struct bio_data { + struct platform_device *pdev; + struct miscdevice bio_device; + struct wake_lock bio_wake_lock; + + struct work_struct strip_work; + struct workqueue_struct *report_queue; + struct workqueue_struct *indication_queue; + struct delayed_work report_work; + struct delayed_work indication_work; + struct input_dev *input; + struct device *bio_dev; + u8 enabled; + int strip_irq; + int notify_cmd; + int state_cmd; + u32 indication; + u32 strip_status; + int bgm_state; + int bgm_timeout; + u32 ecg_enable; + u32 bgm_enable; + int check_loop; +}; + +static void report_state(struct bio_data *data) +{ + input_report_rel(data->input, EVENT_TYPE_STATUS, + data->bgm_state + 1); + input_sync(data->input); +} + +static void start_check(struct bio_data *data) +{ + pr_info("[bgm] %s\n", __func__); + data->check_loop = 1; + queue_delayed_work(data->indication_queue, + &data->indication_work, HZ/2); +} + +static void stop_check(struct bio_data *data) +{ + pr_info("[bgm] %s\n", __func__); + data->check_loop = 0; + //cancel_delayed_work(&data->indication_work); +} + +static void indication_func(struct work_struct *work) +{ + struct bio_data *data = container_of(work, + struct bio_data, indication_work.work); + int strip_value, indi_value, bgm_state; + + indi_value = gpio_get_value(data->indication); + strip_value = gpio_get_value(data->strip_status); + bgm_state = data->bgm_state; + pr_info("[bgm] %s : strip=%d, indication=%d, bgm_state=%d\n", + __func__, strip_value, indi_value, data->bgm_state); +#if 0 + if (bgm_state == 0 && indi_value == 0 && strip_value == 1) { + /* initial state */ + pr_info("[bgm] %s : Initial state check", __func__); + + if (data->bgm_timeout == 0) { + pr_info("\n[bgm] %s : Initial state OK", __func__); + report_state(data); + } else if (data->bgm_timeout == 4) { + pr_info("\n[bgm] %s : Initial state T_ind timeout", __func__); + bgm_state = 100; + report_state(data); + bgm_state = 0; + } + //data->bgm_timeout++; + pr_info(",[bgm] time out count is %d\n", data->bgm_timeout); + } else +#endif + if (bgm_state == 0 && indi_value == 1 && strip_value == 0) { + /* strip inserted m Startup check OK */ + pr_info("[bgm] %s : Start-up check OK\n", __func__); + bgm_state = 1; + report_state(data); + } else if (bgm_state == 1 && indi_value == 0) { + /* Waiting sample */ + pr_info("[bgm] %s : Waiting sample\n", __func__); + bgm_state = 2; + report_state(data); + } else if (bgm_state == 2 && indi_value == 1) { + /* Sample applied */ + pr_info("[bgm] %s : Sample applied\n", __func__); + bgm_state = 3; + report_state(data); + } else if (bgm_state == 3 && indi_value == 1 + && data->notify_cmd == 1) { + /* Check complete, send sleep packet */ + pr_info("[bgm] %s : Send sleep\n", __func__); + bgm_state = 4; + report_state(data); + } + + data->bgm_state = bgm_state; + if (data->check_loop) + queue_delayed_work(data->indication_queue, + &data->indication_work, HZ/2); +} + +static void report_func(struct work_struct *work) +{ + struct bio_data *data = container_of(work, + struct bio_data, report_work.work); + pr_info("[bgm] %s : %d\n", __func__, data->notify_cmd + 1); + input_report_rel(data->input, EVENT_TYPE_STATUS, + data->notify_cmd + 1); + input_sync(data->input); +} + +static irqreturn_t bio_strip_irq_handler(int irq, void *dev_id) +{ + struct bio_data *data = dev_id; + wake_lock_timeout(&data->bio_wake_lock, 3 * HZ); + + //schedule_work(&data->strip_work); + + pr_info("[bgm] %s : IRQ_HANDLED. strip %s\n", __func__, + (gpio_get_value(data->strip_status))?"removed":"inserted"); + return IRQ_HANDLED; +} + +static void strip_func(struct work_struct *work) +{ + struct bio_data *data = container_of((struct work_struct *)work, + struct bio_data, strip_work); + int ret; + + ret = gpio_get_value(data->strip_status); + pr_info("[bgm] %s : strip gpio value is %d\n", __func__, ret); +} + +static int bio_parse_dt(struct device *dev, struct bio_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + int irq; + int rc; + + pr_info("[bgm] %s : bio,bgm_indication\n", __func__); + data->indication = of_get_named_gpio_flags(np, "bio,bgm_indication", + 0, &flags); + if (data->indication < 0) { + errorno = data->indication; + pr_err("[bgm] %s : bio,bgm_indication error\n", __func__); + } else { + errorno = gpio_request(data->indication, "BGMINDI"); + if (errorno) { + pr_err("[bgm] %s : failed to request indication PIN\n", + __func__); + } else { + errorno = gpio_direction_input(data->indication); + if (errorno) { + pr_err("[bgm] %s : failed to set indication PIN as output\n", + __func__); + } + } + } + + pr_info("[bgm] %s : bio,bgm_strip_status\n", __func__); + data->strip_status = of_get_named_gpio_flags(np, "bio,bgm_strip_status", + 0, &flags); + if (data->strip_status < 0) { + errorno = data->strip_status; + pr_err("[bgm] %s : bio,bgm_strip_status\n", __func__); + } else { + errorno = gpio_request(data->strip_status, "BGMSTRIP"); + if (errorno) { + pr_err("[bgm] %s : failed to request bgm_strip_status PIN\n", + __func__); + } else { + errorno = gpio_direction_input(data->strip_status); + if (errorno) { + pr_err("[bgm] %s : failed to set strip_status PIN as output\n", + __func__); + } + } + } + + if (data->strip_status >= 0) { + irq = gpio_to_irq(data->strip_status); + + rc = request_threaded_irq(irq, NULL, + bio_strip_irq_handler, + IRQF_TRIGGER_FALLING | + IRQF_TRIGGER_RISING | + IRQF_ONESHOT, + "bio_strip_int", + data); + if (rc < 0) { + pr_err("[bgm] %s : request_irq(%d) failed for gpio %d (%d)\n", + __func__, irq, + data->strip_status, rc); + //goto dt_exit; + } + + disable_irq(irq); + data->strip_irq = irq; + } + + +#if 1 + pr_info("[ecg] %s : bio,ecg_enable\n", __func__); + data->ecg_enable = of_get_named_gpio_flags(np, "bio,ecg_enable", + 0, &flags); + if (data->ecg_enable < 0) { + errorno = data->ecg_enable; + pr_err("[ecg] %s: bio,ecg_enable\n", __func__); + } else { + errorno = gpio_request(data->ecg_enable, "bio_ECG_ENABLE"); + if (errorno) { + pr_err("[ecg] %s: failed to request ecg_enable PIN \n", + __func__); + } else { + errorno = gpio_direction_output(data->ecg_enable, 0); + if (errorno) { + pr_err("[ecg] %s: failed to set ecg_enable PIN as output\n", + __func__); + } + } + } + + pr_info("[bgm] %s : bio,bgm_enable\n", __func__); + data->bgm_enable = of_get_named_gpio_flags(np, "bio,bgm_enable", + 0, &flags); + if (data->bgm_enable < 0) { + errorno = data->bgm_enable; + pr_err("[bgm] %s: bio,bgm_enable\n", __func__); + } else { + errorno = gpio_request(data->bgm_enable, "bio_BGM_ENABLE"); + if (errorno) { + pr_err("[bgm] %s: failed to request bgm_enable PIN \n", + __func__); + } else { + errorno = gpio_direction_output(data->bgm_enable, 1); + if (errorno) { + pr_err("[bgm] %s: failed to set bgm_enable PIN as output\n", + __func__); + } + } + } +#endif + + return 0; + +//dt_exit: + //return errorno; +} +/* +static ssize_t bio_io_read(struct file *filp, char __user *buf, + size_t count, loff_t *offset) +{ + //struct bio_data *data = filp->private_data; + //char tmp[MAX_BUFFER_SIZE] = {0, }; + int ret = 0; + pr_info("[bgm] %s :\n", __func__); +//ret = wait_event_interruptible(pn547_dev->read_wq, + return ret; +} +static ssize_t bio_io_write(struct file *filp, const char __user *buf, + size_t count, loff_t *offset) +{ + int ret = 0; + struct bio_data *data =filp->private_data; + pr_info("[bgm] %s :\n", __func__); + + + + + return ret; +} + +static long bio_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) +{ +// void __user *argp = (void __user *)arg; +// struct bio_data *data = container_of(filp->private_data, +// struct bio_data, bio_device); + + switch (cmd) { + default: + return -ENOTTY; + } + return 0; +} + +*/ +static int bio_io_open(struct inode *inode, struct file *filp) +{ + pr_info("[bgm] %s :\n", __func__); + return 0; +} + +static int bio_io_release(struct inode *inode, struct file *filp) +{ + pr_info("[bgm] %s :\n", __func__); + return 0; +} + +static const struct file_operations bio_fops = { + .owner = THIS_MODULE, + .open = bio_io_open, + .release = bio_io_release, + //.unlocked_ioctl = bio_ioctl, + .llseek = no_llseek, + //.read = bio_io_read, + //.write = bio_io_write, +}; + +static ssize_t bio_enable_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct bio_data *data = dev_get_drvdata(dev); + int new_value; + + if (sysfs_streq(buf, "1")) + new_value = true; + else if (sysfs_streq(buf, "0")) + new_value = false; + else { + pr_err("[bgm] %s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + if (new_value && !data->enabled) { + pr_err("[bgm] %s : bgm enable, polling start, sensor on\n", __func__); + data->bgm_state = 0; + data->bgm_timeout = 0; + data->notify_cmd = 0; + data->enabled = 1; + //gpio_direction_output(data->bgm_enable, 1); + msleep(200); + start_check(data); + } else if (!new_value && data->enabled) { + pr_err("[bgm] %s : bgm enable, polling stop, sensor off\n", __func__); + data->enabled = 0; + stop_check(data); + //gpio_direction_output(data->bgm_enable, 0); + } + + return size; +} + +static ssize_t bio_notify_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct bio_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", data->notify_cmd); +} + +static ssize_t bio_notify_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + int err; + long noti_cmd; + struct bio_data *data = dev_get_drvdata(dev); + + err = strict_strtol(buf, 10, ¬i_cmd); + + pr_info("[bgm] %s : %s = 0x%02x\n", __func__, buf, (int)noti_cmd); + + if (err < 0) + return -EINVAL; + + if (noti_cmd == 1) + data->notify_cmd = 1; + else { /* error or test state */ + input_report_rel(data->input, EVENT_TYPE_STATUS, noti_cmd + 1); + input_sync(data->input); + data->bgm_state = 0; + data->bgm_timeout = 0; + data->notify_cmd = 0; + } + //queue_delayed_work(data->report_queue, &data->report_work, HZ*2); + + //TODO : input report + + return size; +} + +static ssize_t ecg_onoff_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct bio_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", gpio_get_value(data->ecg_enable)); +} + +static ssize_t ecg_onoff_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + int err; + long power_gpio; + struct bio_data *data = dev_get_drvdata(dev); + + err = strict_strtol(buf, 10, &power_gpio); + + pr_info("[ecg] %s : %s = %d\n", __func__, buf, (int)power_gpio); + + if (err < 0) + return -EINVAL; + + if (power_gpio == 1) + gpio_direction_output(data->ecg_enable, 1); + else + gpio_direction_output(data->ecg_enable, 0); + + return size; +} + +static ssize_t ecg_fw_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + //struct bio_data *data = dev_get_drvdata(dev); + struct file *version_filp = NULL; + mm_segment_t old_fs; + int err; + int version; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + version_filp = filp_open(ECG_VERSION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(version_filp)) { + err = PTR_ERR(version_filp); + if (err != -ENOENT) + pr_err("[bgm] %s: Can't open version file\n", __func__); + set_fs(old_fs); + version = 0; + return sprintf(buf, "%d\n", version); + } + + err = version_filp->f_op->read(version_filp, + (char *)&version, sizeof(int), &version_filp->f_pos); + + if (err != sizeof(int)) { + filp_close(version_filp, NULL); + set_fs(old_fs); + version = 0; + return sprintf(buf, "%d\n", version); + } + + filp_close(version_filp, NULL); + set_fs(old_fs); + + return sprintf(buf, "%d\n", version); +} + +static ssize_t ecg_fw_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + int err; + long temp; + int version; + //struct bio_data *data = dev_get_drvdata(dev); + struct file *version_filp = NULL; + mm_segment_t old_fs; + + err = strict_strtol(buf, 10, &temp); + version = (int)temp; + pr_info("[bgm] %s : %s = %d\n", __func__, buf, version); + + if (err < 0) + return -EINVAL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + version_filp = filp_open(ECG_VERSION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY | O_SYNC, 0666); + + if (IS_ERR(version_filp)) { + pr_err("[bgm] %s: Can't open version file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(version_filp); + return size; + } + + err = version_filp->f_op->write(version_filp, + (char *)&version, sizeof(int), &version_filp->f_pos); + if (err != sizeof(int)) { + pr_err("[bgm] %s: Can't write the version data to file\n", __func__); + filp_close(version_filp, NULL); + set_fs(old_fs); + return size; + } + + filp_close(version_filp, NULL); + set_fs(old_fs); + + return size; +} + + +static ssize_t bio_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct bio_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", data->enabled); +} + +static struct device_attribute dev_attr_enable = +__ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + bio_enable_show, bio_enable_store); + +static struct attribute *bio_sysfs_attrs[] = { + &dev_attr_enable.attr, + NULL +}; + +static struct attribute_group bio_attribute_group = { + .attrs = bio_sysfs_attrs, +}; + +/* sysfs for vendor & name */ +static ssize_t bio_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t bio_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static DEVICE_ATTR(vendor, 0644, bio_vendor_show, NULL); +static DEVICE_ATTR(name, 0644, bio_name_show, NULL); +static DEVICE_ATTR(notify, 0666, bio_notify_show, bio_notify_store); +static DEVICE_ATTR(onoff, 0666, ecg_onoff_show, ecg_onoff_store); +static DEVICE_ATTR(fw, 0666, ecg_fw_show, ecg_fw_store); + +static struct device_attribute *bio_sensor_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_notify, + &dev_attr_onoff, + &dev_attr_fw, + NULL, +}; + +static int bio_probe(struct platform_device *dev) +{ + int ret; + struct bio_data *data; + + pr_info("[bgm] %s : bio_probe\n", __func__); + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (data == NULL) { + pr_err("%s, failed to alloc memory for module data\n", + __func__); + ret = -ENOMEM; + goto exit; + } + + data->pdev = platform_device_register_simple("bio", -1, NULL, 0); + if (IS_ERR(data->pdev)) { + ret = PTR_ERR(data->pdev); + goto out_driver; + } + + if (dev->dev.of_node) + pr_info("[bgm] %s : of node\n", __func__); + else { + pr_err("%s : no of node\n", __func__); + goto out_device; + } + + ret = bio_parse_dt(&dev->dev, data); + if (ret) { + pr_err("%s : parse dt error\n", __func__); + //goto err_parse_dt; + } + + data->bgm_state = 0; + data->bgm_timeout = 0; + data->strip_irq = 0; + data->bio_device.minor = MISC_DYNAMIC_MINOR; + data->bio_device.name = "bio"; + data->bio_device.fops = &bio_fops; + ret = misc_register(&data->bio_device); + if (ret) + goto exit_misc_device_register_failed; + + wake_lock_init(&data->bio_wake_lock, + WAKE_LOCK_SUSPEND, "bio_wake_lock"); + INIT_WORK(&data->strip_work, strip_func); + INIT_DELAYED_WORK(&data->report_work, report_func); + INIT_DELAYED_WORK(&data->indication_work, indication_func); + data->report_queue = + create_singlethread_workqueue(dev_name(&data->pdev->dev)); + data->indication_queue = + create_singlethread_workqueue(dev_name(&data->pdev->dev)); + + + data->input = input_allocate_device(); + if (!data->input) { + pr_err("[bgm] %s : could not allocate mlx90615 input device\n", __func__); + goto err_input_allocate_device; + } + + data->input->name = "bio_sensor"; + input_set_capability(data->input, EV_REL, EVENT_TYPE_STATUS); + //input_set_capability(data->input, EV_REL, EVENT_TYPE_OBJECT_TEMP); + input_set_drvdata(data->input, data); + + ret = input_register_device(data->input); + if (ret < 0) { + input_free_device(data->input); + pr_err("[bgm] %s : could not register input device\n", __func__); + //goto err_input_register_device; + } + + ret = sensors_create_symlink(&data->input->dev.kobj, + data->input->name); + if (ret < 0) { + input_unregister_device(data->input); + goto err_sysfs_create_symlink; + } + + ret = sysfs_create_group(&data->input->dev.kobj, + &bio_attribute_group); + if (ret) { + pr_err("[bgm] %s : could not create sysfs group\n", __func__); + goto err_sysfs_create_group; + } + ret = sensors_register(data->bio_dev, + data, bio_sensor_attrs, "bio_sensor"); + if (ret) { + pr_err("[bgm] %s : cound not register prox sensor device(%d).\n", + __func__, ret); + goto err_sysfs_create_symlink; + } + platform_set_drvdata(dev,data); + pr_info("[bgm] %s : success.\n", __func__); + //if (data->strip_irq) + //enable_irq(data->strip_irq); + return 0; +err_input_allocate_device: +err_sysfs_create_symlink: + input_free_device(data->input); +err_sysfs_create_group: + input_unregister_device(data->input); + +exit_misc_device_register_failed: + misc_deregister(&data->bio_device); + +out_device: + platform_device_unregister(data->pdev); +out_driver: + //mutex_destroy(&data->bio_lock); + kfree(data); +exit: + pr_err("[BIO] %s : failed!\n", __func__); + return ret; +} + +static int bio_remove(struct platform_device *dev) +{ + struct bio_data *data = platform_get_drvdata(dev); + + misc_deregister(&data->bio_device); + platform_device_unregister(data->pdev); + + kfree(data); + + return 0; +} + +static int bio_suspend(struct device *dev) +{ + //struct bio_data *data = dev_get_drvdata(dev); + //gpio_direction_output(data->ecg_enable, 0); + return 0; +} + +static int bio_resume(struct device *dev) +{ + struct bio_data *data = dev_get_drvdata(dev); + //gpio_direction_output(data->ecg_enable, 1); + cancel_delayed_work(&data->report_work); + return 0; +} + +#ifdef CONFIG_OF +static struct of_device_id bio_match_table[] = { + {.compatible = "bio_sensor",}, + {}, +}; +#endif + +static const struct dev_pm_ops bio_pm_ops = { + .suspend = bio_suspend, + .resume = bio_resume +}; + +static struct platform_driver bio_driver = { + .driver = { +#ifndef CONFIG_HAS_EARLYSUSPEND + .pm = &bio_pm_ops, +#endif + .name = "bio_sensor", + .owner = THIS_MODULE, + .of_match_table = bio_match_table, + }, + .probe = bio_probe, + .remove = bio_remove, +}; + +static int __init bio_init(void) +{ + return platform_driver_register(&bio_driver); +} + +static void __exit bio_exit(void) +{ + platform_driver_unregister(&bio_driver); +} + +module_init(bio_init); +module_exit(bio_exit); + +MODULE_DESCRIPTION("BIO sensor control"); +MODULE_AUTHOR("Samsung Electronic"); +MODULE_LICENSE("GPL v2"); diff --git a/drivers/sensorhub/stm_hestia/factory/Kconfig b/drivers/sensorhub/stm_hestia/factory/Kconfig new file mode 100755 index 000000000000..478e6d1a58f5 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/Kconfig @@ -0,0 +1,154 @@ +# +# sensor drivers configuration +# +config SENSORS_SSP_LSM330 + tristate "Sensors ssp lsm330" + default n + depends on SPI + help + lsm330 file for factory test in ssp driver. + If you say yes here you get lsm330 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_CM36651 + tristate "Sensors ssp cm36651" + default n + depends on SPI + help + cm36651 file for factory test in ssp driver. + If you say yes here you get cm36651 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_CM3320 + tristate "Sensors ssp cm3320" + default n + depends on SPI + help + cm3320 file for factory test in ssp driver. + If you say yes here you get cm3320 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MAX88920 + tristate "Sensors ssp max88920" + default n + depends on SPI + help + max88005 file for factory test in ssp driver. + If you say yes here you get max88005 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MAX88921 + tristate "Sensors ssp max88921" + default n + depends on SPI + help + max88005 file for factory test in ssp driver. + If you say yes here you get max88005 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_TMG399X + tristate "Sensors ssp tmg399x" + default n + depends on SPI + help + tmg399x file for factory test in ssp driver. + If you say yes here you get tmg399x support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_TMD37823 + tristate "Sensors ssp tmd37823" + default n + depends on SPI + help + tmd37823 file for factory test in ssp driver. + If you say yes here you get tmd37823 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MPU6500 + tristate "Sensors ssp mpu6500" + default n + depends on SPI + help + mpu6500 file for factory test in ssp driver. + If you say yes here you get mpu6500 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_BMP182 + tristate "Sensors ssp bmp182" + default n + depends on SPI + help + bmp182 file for factory test in ssp driver. + If you say yes here you get bmp182 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AT32UC3L0128 + tristate "Sensors ssp at32uc3l0128" + default n + depends on SPI + help + at32uc3l0128 file for factory test in ssp driver. + If you say yes here you get at32uc3l0128 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_ATUC128L5HAR + tristate "Sensors ssp atuc128l5har" + default n + depends on SPI + help + atuc128l5har file for factory test in ssp driver. + If you say yes here you get atuc128l5har support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_SHTC1 + tristate "Sensors ssp shtc1" + default n + depends on SPI + help + shtc1 file for factory test in ssp driver. + If you say yes here you get shtc1 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MOBEAM + tristate "Sensors ssp mobeam" + default n + depends on SPI + help + mobeam file for ssp driver. + If you say yes here you get mobeam support using TMG399x. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_UVIS25 + tristate "Sensors ssp UV" + default n + depends on SENSORS_SSP + help + This is for UV Sensor device driver. + If you say yes here you get uv sensor support. + If you say no here uv sensor will not be supported. + diff --git a/drivers/sensorhub/stm_hestia/factory/Makefile b/drivers/sensorhub/stm_hestia/factory/Makefile new file mode 100755 index 000000000000..41c53c6f16ef --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/Makefile @@ -0,0 +1,19 @@ +# +# Makefile for the sensor drivers. +# + +# Each configuration option enables a list of files. +obj-$(CONFIG_SENSORS_SSP_MPU6500) += accel_mpu6500.o gyro_mpu6500.o +obj-$(CONFIG_SENSORS_SSP_CM3320) += light_cm3320.o +obj-$(CONFIG_SENSORS_SSP_MAX88920) += prox_max88920.o gesture_max88920.o +obj-$(CONFIG_SENSORS_SSP_MAX88921) += light_max88921.o prox_max88920.o gesture_max88922.o +obj-$(CONFIG_SENSORS_SSP_TMG399X) += light_tmg399x.o prox_max88920.o gesture_tmg399x.o +obj-$(CONFIG_SENSORS_SSP_TMD37823) += light_tmg399x.o prox_max88920.o +obj-$(CONFIG_SENSORS_SSP_YAS532) += magnetic_yas532.o +obj-$(CONFIG_SENSORS_SSP_AK09911) += magnetic_ak09911.o +obj-$(CONFIG_SENSORS_SSP_BMP182) += pressure_bmp182.o +obj-$(CONFIG_SENSORS_SSP_AT32UC3L0128) += mcu_at32uc3l0128.o +obj-$(CONFIG_SENSORS_SSP_ATUC128L5HAR) += mcu_atuc128l5har.o +obj-$(CONFIG_SENSORS_SSP_SHTC1) += temphumidity_shtc1.o +obj-$(CONFIG_SENSORS_SSP_MOBEAM) += barcode_emul_tmg3992.o +obj-$(CONFIG_SENSORS_SSP_UVIS25) += uv_uvis25.o diff --git a/drivers/sensorhub/stm_hestia/factory/accel_mpu6500.c b/drivers/sensorhub/stm_hestia/factory/accel_mpu6500.c new file mode 100755 index 000000000000..dc44a58c3ecb --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/accel_mpu6500.c @@ -0,0 +1,387 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "INVENSENSE" +#define CHIP_ID "MPU6500" + +#define CALIBRATION_FILE_PATH "/efs/calibration_data" +#define CALIBRATION_DATA_AMOUNT 20 + +static ssize_t accel_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t accel_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +int accel_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + + return iRet; + } + + iRet = cal_filp->f_op->read(cal_filp, (char *)&data->accelcal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) + iRet = -EIO; + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + ssp_dbg("[SSP]: open accel calibration %d, %d, %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z); + + if ((data->accelcal.x == 0) && (data->accelcal.y == 0) + && (data->accelcal.z == 0)) + return ERROR; + + return iRet; +} + +int set_accel_cal(struct ssp_data *data) +{ + int iRet = 0; + struct ssp_msg *msg; + s16 accel_cal[3]; + + if (!(data->uSensorState & (1 << ACCELEROMETER_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", accel sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return iRet; + } + accel_cal[0] = data->accelcal.x; + accel_cal[1] = data->accelcal.y; + accel_cal[2] = data->accelcal.z; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_ACCEL_CAL; + msg->length = 6; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(6, GFP_KERNEL); + + msg->free_buffer = 1; + memcpy(msg->buffer, accel_cal, 6); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + pr_info("[SSP] Set accel cal data %d, %d, %d\n", accel_cal[0], accel_cal[1], accel_cal[2]); + return iRet; +} + +static int enable_accel_for_cal(struct ssp_data *data) +{ + u8 uBuf[9] = { 0, }; + s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); + memcpy(&uBuf[0], &dMsDelay, 4); + + if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { + if (get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]) != 10) { + send_instruction(data, CHANGE_DELAY, + ACCELEROMETER_SENSOR, uBuf, 9); + return SUCCESS; + } + } else { + send_instruction(data, ADD_SENSOR, + ACCELEROMETER_SENSOR, uBuf, 9); + } + + return FAIL; +} + +static void disable_accel_for_cal(struct ssp_data *data, int iDelayChanged) +{ + u8 uBuf[9] = { 0, }; + s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); + memcpy(&uBuf[0], &dMsDelay, 4); + + if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { + if (iDelayChanged) + send_instruction(data, CHANGE_DELAY, + ACCELEROMETER_SENSOR, uBuf, 9); + } else { + send_instruction(data, REMOVE_SENSOR, + ACCELEROMETER_SENSOR, uBuf, 4); + } +} + +static int accel_do_calibrate(struct ssp_data *data, int iEnable) +{ + int iSum[3] = { 0, }; + int iRet = 0, iCount; + struct file *cal_filp = NULL; + mm_segment_t old_fs; + + if (iEnable) { + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + set_accel_cal(data); + + iRet = enable_accel_for_cal(data); + msleep(300); + + for (iCount = 0; iCount < CALIBRATION_DATA_AMOUNT; iCount++) { + iSum[0] += data->buf[ACCELEROMETER_SENSOR].x; + iSum[1] += data->buf[ACCELEROMETER_SENSOR].y; + iSum[2] += data->buf[ACCELEROMETER_SENSOR].z; + mdelay(10); + } + disable_accel_for_cal(data, iRet); + + data->accelcal.x = (iSum[0] / CALIBRATION_DATA_AMOUNT); + data->accelcal.y = (iSum[1] / CALIBRATION_DATA_AMOUNT); + data->accelcal.z = (iSum[2] / CALIBRATION_DATA_AMOUNT); + + if (data->accelcal.z > 0) + data->accelcal.z -= MAX_ACCEL_1G; + else if (data->accelcal.z < 0) + data->accelcal.z += MAX_ACCEL_1G; + } else { + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + } + + ssp_dbg("[SSP]: do accel calibrate %d, %d, %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(cal_filp)) { + pr_err("[SSP]: %s - Can't open calibration file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + return iRet; + } + + iRet = cal_filp->f_op->write(cal_filp, (char *)&data->accelcal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) { + pr_err("[SSP]: %s - Can't write the accelcal to file\n", + __func__); + iRet = -EIO; + } + + filp_close(cal_filp, current->files); + set_fs(old_fs); + set_accel_cal(data); + return iRet; +} + +static ssize_t accel_calibration_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int iRet; + int iCount = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = accel_open_calibration(data); + if (iRet < 0) + pr_err("[SSP]: %s - calibration open failed(%d)\n", __func__, iRet); + + ssp_dbg("[SSP] Cal data : %d %d %d - %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z, iRet); + + iCount = sprintf(buf, "%d %d %d %d\n", iRet, data->accelcal.x, + data->accelcal.y, data->accelcal.z); + return iCount; +} + +static ssize_t accel_calibration_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + iRet = accel_do_calibrate(data, (int)dEnable); + if (iRet < 0) + pr_err("[SSP]: %s - accel_do_calibrate() failed\n", __func__); + + return size; +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[ACCELEROMETER_SENSOR].x, + data->buf[ACCELEROMETER_SENSOR].y, + data->buf[ACCELEROMETER_SENSOR].z); +} + +static ssize_t accel_reactive_alert_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet = 0; + char chTempBuf = 1; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) + ssp_dbg("[SSP]: %s - on\n", __func__); + else if (sysfs_streq(buf, "0")) + ssp_dbg("[SSP]: %s - off\n", __func__); + else if (sysfs_streq(buf, "2")) { + ssp_dbg("[SSP]: %s - factory\n", __func__); + + data->bAccelAlert = 0; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = ACCELEROMETER_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->data = chTempBuf; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + data->bAccelAlert = chTempBuf; + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - accel Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s factory test success!\n", __func__); + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + exit: return size; +} + +static ssize_t accel_reactive_alert_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bAccelAlert == true) + bSuccess = true; + else + bSuccess = false; + + data->bAccelAlert = false; + return sprintf(buf, "%u\n", bSuccess); +} + +static ssize_t accel_hw_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf[8] = { 2, 0, }; + s8 init_status = 0, result = -1; + s16 shift_ratio[3] = { 0, }; + int iRet; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = ACCELEROMETER_FACTORY; + msg->length = 8; + msg->options = AP2HUB_READ; + msg->data = chTempBuf[0]; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + if (iRet != SUCCESS) { + pr_err("[SSP] %s - accel hw selftest Timeout!!\n", __func__); + return sprintf(buf, "%d,%d,%d,%d\n", -5, 0, 0, 0); + } + + init_status = chTempBuf[0]; + shift_ratio[0] = (s16)((chTempBuf[2] << 8) + chTempBuf[1]); + shift_ratio[1] = (s16)((chTempBuf[4] << 8) + chTempBuf[3]); + shift_ratio[2] = (s16)((chTempBuf[6] << 8) + chTempBuf[5]); + result = chTempBuf[7]; + + pr_info("[SSP] %s - %d, %d, %d, %d, %d\n", __func__, + init_status, result, shift_ratio[0], shift_ratio[1], shift_ratio[2]); + return sprintf(buf, "%d,%d.%d,%d.%d,%d.%d\n", result, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10); +} +static DEVICE_ATTR(name, S_IRUGO, accel_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, accel_vendor_show, NULL); +static DEVICE_ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + accel_calibration_show, accel_calibration_store); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(reactive_alert, S_IRUGO | S_IWUSR | S_IWGRP, + accel_reactive_alert_show, accel_reactive_alert_store); +static DEVICE_ATTR(selftest, S_IRUGO, accel_hw_selftest_show, NULL); + +static struct device_attribute *acc_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_calibration, + &dev_attr_raw_data, + &dev_attr_reactive_alert, + &dev_attr_selftest, + NULL, +}; + +void initialize_accel_factorytest(struct ssp_data *data) +{ + sensors_register(data->acc_device, data, acc_attrs, + "accelerometer_sensor"); +} + +void remove_accel_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->acc_device, acc_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/barcode_emul_tmg3992.c b/drivers/sensorhub/stm_hestia/factory/barcode_emul_tmg3992.c new file mode 100755 index 000000000000..d01762b53cdf --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/barcode_emul_tmg3992.c @@ -0,0 +1,299 @@ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG399x" + +extern struct class *sec_class; +struct device *mobeam_dev; +u8 hop_count; +u8 Is_beaming; + +static struct reg_index_table reg_id_table[15] = { + {0x81, 0}, {0x88, 1}, {0x8F, 2}, {0x96, 3}, {0x9D, 4}, + {0xA4, 5}, {0xAB, 6}, {0xB2, 7}, {0xB9, 8}, {0xC0, 9}, + {0xC7, 10}, {0xCE, 11}, {0xD5, 12}, {0xDC, 13}, {0xE3, 14} +}; + +#define BEAMING_ON 1 +#define BEAMING_OFF 0 +#define STOP_BEAMING 0 + +#define COUNT_TEST 48 /* 0 */ +#define REGISTER_TEST 49 /* 1 */ +#define DATA_TEST 50 /* 2 */ + +enum { + dataset = 0, + registerset, + countset, + start, +}; + +enum { + reg, + index, +}; + +void mobeam_write(struct ssp_data *data, int type, u8* u_buf) +{ + int iRet = 0; + u8 command = -1; + u8 data_length = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << PROXIMITY_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", proximity sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return; + } + + pr_info("[SSP] %s start, command_type = %d\n", __func__, type); + switch (type) { + case dataset: + command = MSG2SSP_AP_MOBEAM_DATA_SET; + data_length = 128; + break; + case registerset: + command = MSG2SSP_AP_MOBEAM_REGISTER_SET; + data_length = 6; + break; + case countset: + command = MSG2SSP_AP_MOBEAM_COUNT_SET; + data_length = 1; + break; + case start: + command = MSG2SSP_AP_MOBEAM_START; + data_length = 1; + Is_beaming = BEAMING_ON; + break; + default: + pr_info("[SSP] %s - unknown cmd type\n", __func__); + break; + } + + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = data_length; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(data_length, GFP_KERNEL); + msg->free_buffer = 1; + + memcpy(msg->buffer, u_buf, data_length); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - MOBEAM CMD fail %d\n", __func__, iRet); + return; + } + + pr_info("[SSP] %s command = 0x%X\n", __func__, command); +} + +void mobeam_stop_set(struct ssp_data *data) +{ + int iRet, iReties = 0; + struct ssp_msg *msg; + u8 buffer = 0; + +retries: + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MOBEAM_STOP; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP] %s fail %d\n", __func__, iRet); + + if(iReties++ < 2) { + pr_err("[SSP] %s fail, retry\n", __func__); + mdelay(5); + goto retries; + } + } else { + Is_beaming = BEAMING_OFF; + pr_info("[SSP] %s - success(%u)\n", __func__, Is_beaming); + } + return; +} + +static ssize_t mobeam_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t mobeam_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t barcode_emul_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 send_buf[128] = { 0, }; + int i; + + memset(send_buf, 0xFF, 128); + if (buf[0] == 0xFF && buf[1] != STOP_BEAMING) { + pr_info("[SSP] %s - START BEAMING(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + send_buf[1] = buf[1]; + mobeam_write(data, start, &send_buf[1]); + } else if (buf[0] == 0xFF && buf[1] == STOP_BEAMING) { + pr_info("[SSP] %s - STOP BEAMING(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + if (Is_beaming == BEAMING_ON) + mobeam_stop_set(data); + else + pr_info("[SSP] %s - skip stop command\n", __func__); + } else if (buf[0] == 0x00) { + pr_info("[SSP] %s - DATA SET(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + memcpy(send_buf, &buf[2], 128); + pr_info("[SSP] %s - %u %u %u %u %u %u\n", __func__, + send_buf[0], send_buf[1], send_buf[2], + send_buf[3], send_buf[4], send_buf[5]); + mobeam_write(data, dataset, send_buf); + } else if (buf[0] == 0x80) { + pr_info("[SSP] %s - HOP COUNT SET(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + hop_count = buf[1]; + mobeam_write(data, countset, &hop_count); + } else { + pr_info("[SSP] %s - REGISTER SET(0x%X)\n", __func__, buf[0]); + for (i = 0; i < 15; i++) { + if (reg_id_table[i].reg == buf[0]) + send_buf[0] = reg_id_table[i].index; + } + send_buf[1] = buf[1]; + send_buf[2] = buf[2]; + send_buf[3] = buf[4]; + send_buf[4] = buf[5]; + send_buf[5] = buf[7]; + mobeam_write(data, registerset, send_buf); + } + return size; +} + +static ssize_t barcode_emul_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return strlen(buf); +} + +static ssize_t barcode_led_status_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return snprintf(buf, sizeof(buf), "%u\n", Is_beaming); +} + +static ssize_t barcode_ver_check_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return snprintf(buf, sizeof(buf), "%u\n", 15); +} + +static ssize_t barcode_emul_test_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 barcode_data[14] = {0xFF, 0xAC, 0xDB, 0x36, 0x42, 0x85, + 0x0A, 0xA8, 0xD1, 0xA3, 0x46, 0xC5, 0xDA, 0xFF}; + u8 test_data[128] = { 0, }; + + memset(test_data, 0xFF, 128); + if (buf[0] == COUNT_TEST) { + test_data[0] = 0x80; + test_data[1] = 1; + pr_info("[SSP] %s, COUNT_TEST - 0x%X, %u\n", __func__, + test_data[0], test_data[1]); + mobeam_write(data, countset, &test_data[1]); + } else if (buf[0] == REGISTER_TEST) { + test_data[0] = 0; + test_data[1] = 10; + test_data[2] = 20; + test_data[3] = 30; + test_data[4] = 40; + test_data[5] = 50; + pr_info("[SSP] %s, REGISTER_TEST - %u: %u %u %u %u %u\n", + __func__, test_data[0], test_data[1], test_data[2], + test_data[3], test_data[4], test_data[5]); + mobeam_write(data, registerset, test_data); + } else if (buf[0] == DATA_TEST) { + memcpy(test_data, &barcode_data[1], 13); + pr_info("[SSP] %s, DATA_TEST - 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X\n", + __func__, test_data[0], test_data[1], test_data[2], + test_data[3], test_data[4], test_data[5]); + mobeam_write(data, dataset, test_data); + } + return size; +} +static DEVICE_ATTR(vendor, S_IRUGO, mobeam_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, mobeam_name_show, NULL); +static DEVICE_ATTR(barcode_send, S_IRUGO | S_IWUSR | S_IWGRP, + barcode_emul_show, barcode_emul_store); +static DEVICE_ATTR(barcode_led_status, S_IRUGO, barcode_led_status_show, NULL); +static DEVICE_ATTR(barcode_ver_check, S_IRUGO, barcode_ver_check_show, NULL); +static DEVICE_ATTR(barcode_test_send, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, barcode_emul_test_store); + +void initialize_mobeam(struct ssp_data *data) +{ + pr_info("[SSP] %s\n", __func__); + + mobeam_dev = device_create(sec_class, NULL, 0, + data, "sec_barcode_emul"); + + if (IS_ERR(mobeam_dev)) + pr_err("[SSP] Failed to create mobeam_dev device\n"); + + if (device_create_file(mobeam_dev, &dev_attr_vendor) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_vendor.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_name) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_name.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_send) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_send.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_led_status) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_led_status.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_ver_check) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_ver_check.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_test_send) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_test_send.attr.name); + + Is_beaming = BEAMING_OFF; +} + +void remove_mobeam(struct ssp_data *data) +{ + pr_info("[SSP] %s\n", __func__); + device_remove_file(mobeam_dev, &dev_attr_barcode_test_send); + device_remove_file(mobeam_dev, &dev_attr_barcode_ver_check); + device_remove_file(mobeam_dev, &dev_attr_barcode_led_status); + device_remove_file(mobeam_dev, &dev_attr_barcode_send); + device_remove_file(mobeam_dev, &dev_attr_name); + device_remove_file(mobeam_dev, &dev_attr_vendor); +} diff --git a/drivers/sensorhub/stm_hestia/factory/gesture_max88920.c b/drivers/sensorhub/stm_hestia/factory/gesture_max88920.c new file mode 100755 index 000000000000..73e1fd41f1e6 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/gesture_max88920.c @@ -0,0 +1,143 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88920" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[0], + data->buf[GESTURE_SENSOR].data[1], + data->buf[GESTURE_SENSOR].data[2], + data->buf[GESTURE_SENSOR].data[3]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[4] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + raw_A = chTempBuf[0]; + raw_B = chTempBuf[1]; + raw_C = chTempBuf[2]; + raw_D = chTempBuf[3]; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + + exit: return sprintf(buf, "%d,%d,%d,%d\n", raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][16] = { {0, 25, 50, 75, 100, 125, 150, 175, 225, 250, 275, 300, 325, 350, 375, 400}, + {2, 28, 34, 50, 66, 82, 98, 114, 130, 146, 162, 178, 194, 210, 226, 242} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 16; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + } + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/gesture_max88922.c b/drivers/sensorhub/stm_hestia/factory/gesture_max88922.c new file mode 100755 index 000000000000..5d5492851b07 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/gesture_max88922.c @@ -0,0 +1,154 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88922" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[1], + data->buf[GESTURE_SENSOR].data[2], + data->buf[GESTURE_SENSOR].data[3], + data->buf[GESTURE_SENSOR].data[9]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[8] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 8; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + printk("%x %x %x %x %x %x %x %x \n", chTempBuf[0], chTempBuf[1], chTempBuf[2], chTempBuf[3], + chTempBuf[4], chTempBuf[5], chTempBuf[6], chTempBuf[7]); + + raw_A = ((((s16)chTempBuf[0]) << 8) + ((s16)chTempBuf[1])) - 1023; + raw_B = ((((s16)chTempBuf[2]) << 8) + ((s16)chTempBuf[3])) - 1023; + raw_C = ((((s16)chTempBuf[4]) << 8) + ((s16)chTempBuf[5])) - 1023; + raw_D = ((((s16)chTempBuf[6]) << 8) + ((s16)chTempBuf[7])) - 1023; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + +exit: + return sprintf(buf, "%d,%d,%d,%d\n", + raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][16] = { {0, 6, 13, 20, 26, 33, 40, 46, 53, 60, 66, 73, 80, 86, 93, 100}, + {0<<4, 1<<4, 2<<4, 3<<4, 4<<4, 5<<4, 6<<4, 7<<4, 8<<4, 9<<4, 10<<4, 11<<4, 12<<4, 13<<4, 14<<4, 15<<4} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 16; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + break; + } + } + if(current_index == 16) // current setting value wrong. + { + return ERROR; + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/gesture_tmg399x.c b/drivers/sensorhub/stm_hestia/factory/gesture_tmg399x.c new file mode 100755 index 000000000000..f2d4a8de1ce4 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/gesture_tmg399x.c @@ -0,0 +1,157 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG3992" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[3], + data->buf[GESTURE_SENSOR].data[4], + data->buf[GESTURE_SENSOR].data[5], + data->buf[GESTURE_SENSOR].data[6]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[8] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s %d %d %d %d\n", + __func__, chTempBuf[0], chTempBuf[1], chTempBuf[2], chTempBuf[3]); + + raw_A = chTempBuf[0]; + raw_B = chTempBuf[1]; + raw_C = chTempBuf[2]; + raw_D = chTempBuf[3]; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + +exit: + return sprintf(buf, "%d,%d,%d,%d\n", + raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->uIr_Current == 0) + data->uIr_Current = DEFUALT_IR_CURRENT; + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][4] = { {12, 25, 50, 100}, + {24, 16, 8, 0} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 4; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + break; + } + } + if(current_index == 4) // current setting value wrong. + { + return ERROR; + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/gyro_mpu6500.c b/drivers/sensorhub/stm_hestia/factory/gyro_mpu6500.c new file mode 100755 index 000000000000..fdbfe515eccd --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/gyro_mpu6500.c @@ -0,0 +1,701 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "INVENSENSE" +#define CHIP_ID "MPU6500" + +#define CALIBRATION_FILE_PATH "/efs/gyro_cal_data" +#define VERBOSE_OUT 1 +#define CALIBRATION_DATA_AMOUNT 20 +#define DEF_GYRO_FULLSCALE 2000 +#define DEF_GYRO_SENS (32768 / DEF_GYRO_FULLSCALE) +#define DEF_BIAS_LSB_THRESH_SELF (20 * DEF_GYRO_SENS) +#define DEF_BIAS_LSB_THRESH_SELF_6500 (30 * DEF_GYRO_SENS) +#define DEF_RMS_LSB_TH_SELF (5 * DEF_GYRO_SENS) +#define DEF_RMS_THRESH ((DEF_RMS_LSB_TH_SELF) * (DEF_RMS_LSB_TH_SELF)) +#define DEF_SCALE_FOR_FLOAT (1000) +#define DEF_RMS_SCALE_FOR_RMS (10000) +#define DEF_SQRT_SCALE_FOR_RMS (100) + +static ssize_t gyro_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t gyro_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +int gyro_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + + return iRet; + } + + iRet = cal_filp->f_op->read(cal_filp, (char *)&data->gyrocal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) + iRet = -EIO; + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + ssp_dbg("[SSP]: open gyro calibration %d, %d, %d\n", + data->gyrocal.x, data->gyrocal.y, data->gyrocal.z); + return iRet; +} + +static int save_gyro_caldata(struct ssp_data *data, s16 *iCalData) +{ + int iRet = 0; + struct file *cal_filp = NULL; + mm_segment_t old_fs; + + data->gyrocal.x = iCalData[0] << 2; + data->gyrocal.y = iCalData[1] << 2; + data->gyrocal.z = iCalData[2] << 2; + + ssp_dbg("[SSP]: do gyro calibrate %d, %d, %d\n", + data->gyrocal.x, data->gyrocal.y, data->gyrocal.z); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(cal_filp)) { + pr_err("[SSP]: %s - Can't open calibration file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + return -EIO; + } + + iRet = cal_filp->f_op->write(cal_filp, (char *)&data->gyrocal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) { + pr_err("[SSP]: %s - Can't write gyro cal to file\n", __func__); + iRet = -EIO; + } + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + return iRet; +} + +int set_gyro_cal(struct ssp_data *data) +{ + int iRet = 0; + struct ssp_msg *msg; + s16 gyro_cal[3]; + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", gyro sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return iRet; + } + + gyro_cal[0] = data->gyrocal.x; + gyro_cal[1] = data->gyrocal.y; + gyro_cal[2] = data->gyrocal.z; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_GYRO_CAL; + msg->length = 6; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(6, GFP_KERNEL); + + msg->free_buffer = 1; + memcpy(msg->buffer, gyro_cal, 6); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + pr_info("[SSP] Set gyro cal data %d, %d, %d\n", gyro_cal[0], gyro_cal[1], gyro_cal[2]); + return iRet; +} + +static ssize_t gyro_power_off(struct device *dev, + struct device_attribute *attr, char *buf) +{ + ssp_dbg("[SSP]: %s\n", __func__); + + return sprintf(buf, "%d\n", 1); +} + +static ssize_t gyro_power_on(struct device *dev, + struct device_attribute *attr, char *buf) +{ + ssp_dbg("[SSP]: %s\n", __func__); + + return sprintf(buf, "%d\n", 1); +} + +short mpu6500_gyro_get_temp(struct ssp_data *data) +{ + char chTempBuf[2] = { 0}; + unsigned char reg[2]; + short temperature = 0; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_TEMP_FACTORY; + msg->length = 2; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Temp Timeout!!\n", __func__); + goto exit; + } + + reg[0] = chTempBuf[1]; + reg[1] = chTempBuf[0]; + temperature = (short) (((reg[0]) << 8) | reg[1]); + ssp_dbg("[SSP]: %s - %d\n", __func__, temperature); + + exit: + return temperature; +} + +char k330_gyro_get_temp(struct ssp_data *data) +{ + char chTemp = 0; + int iRet = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) + goto exit; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_TEMP_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTemp; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Temp Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s - %d\n", __func__, chTemp); + exit: + return chTemp; +} + +static ssize_t gyro_get_temp(struct device *dev, + struct device_attribute *attr, char *buf) +{ + short temperature = 0; + struct ssp_data *data = dev_get_drvdata(dev); + temperature = mpu6500_gyro_get_temp(data); + return sprintf(buf, "%d\n", temperature); +} + +u32 mpu6050_selftest_sqrt(u32 sqsum) +{ + u32 sq_rt; + u32 g0, g1, g2, g3, g4; + u32 seed; + u32 next; + u32 step; + + g4 = sqsum / 100000000; + g3 = (sqsum - g4 * 100000000) / 1000000; + g2 = (sqsum - g4 * 100000000 - g3 * 1000000) / 10000; + g1 = (sqsum - g4 * 100000000 - g3 * 1000000 - g2 * 10000) / 100; + g0 = (sqsum - g4 * 100000000 - g3 * 1000000 - g2 * 10000 - g1 * 100); + + next = g4; + step = 0; + seed = 0; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = seed * 10000; + next = (next - (seed * step)) * 100 + g3; + + step = 0; + seed = 2 * seed * 10; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 1000; + next = (next - seed * step) * 100 + g2; + seed = (seed + step) * 10; + step = 0; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 100; + next = (next - seed * step) * 100 + g1; + seed = (seed + step) * 10; + step = 0; + + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 10; + next = (next - seed * step) * 100 + g0; + seed = (seed + step) * 10; + step = 0; + + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step; + + return sq_rt; +} + +ssize_t k330_gyro_selftest(char *buf, struct ssp_data *data) +{ + char chTempBuf[36] = { 0,}; + u8 uFifoPass = 2; + u8 uBypassPass = 2; + u8 uCalPass = 0; + u8 dummy[2] = {0,}; + s16 iNOST[3] = {0,}, iST[3] = {0,}, iCalData[3] = {0,}; + s16 iZeroRateData[3] = {0,}, fifo_data[4] = {0,}; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_FACTORY; + msg->length = 36; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 5000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest Timeout!!\n", __func__); + goto exit; + } + + data->uTimeOutCnt = 0; + + iNOST[0] = (s16)((chTempBuf[0] << 8) + chTempBuf[1]); + iNOST[1] = (s16)((chTempBuf[2] << 8) + chTempBuf[3]); + iNOST[2] = (s16)((chTempBuf[4] << 8) + chTempBuf[5]); + + iST[0] = (s16)((chTempBuf[6] << 8) + chTempBuf[7]); + iST[1] = (s16)((chTempBuf[8] << 8) + chTempBuf[9]); + iST[2] = (s16)((chTempBuf[10] << 8) + chTempBuf[11]); + + iCalData[0] = (s16)((chTempBuf[12] << 8) + chTempBuf[13]); + iCalData[1] =( s16)((chTempBuf[14] << 8) + chTempBuf[15]); + iCalData[2] = (s16)((chTempBuf[16] << 8) + chTempBuf[17]); + + iZeroRateData[0] = (s16)((chTempBuf[18] << 8) + chTempBuf[19]); + iZeroRateData[1] = (s16)((chTempBuf[20] << 8) + chTempBuf[21]); + iZeroRateData[2] = (s16)((chTempBuf[22] << 8) + chTempBuf[23]); + + fifo_data[0] = chTempBuf[24]; + fifo_data[1] = (s16)((chTempBuf[25] << 8) + chTempBuf[26]); + fifo_data[2] = (s16)((chTempBuf[27] << 8) + chTempBuf[28]); + fifo_data[3] = (s16)((chTempBuf[29] << 8) + chTempBuf[30]); + + uCalPass = chTempBuf[31]; + uFifoPass = chTempBuf[32]; + uBypassPass = chTempBuf[33]; + dummy[0] = chTempBuf[34]; + dummy[1] = chTempBuf[35]; + pr_info("[SSP] %s dummy = 0x%X, 0x%X\n", __func__, dummy[0], dummy[1]); + if (uFifoPass && uBypassPass && uCalPass) + save_gyro_caldata(data, iCalData); + + ssp_dbg("[SSP]: %s - %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + __func__, iNOST[0], iNOST[1], iNOST[2], iST[0], iST[1], iST[2], + iZeroRateData[0], iZeroRateData[1], iZeroRateData[2], + fifo_data[0], fifo_data[1], fifo_data[2], fifo_data[3], + uFifoPass & uBypassPass & uCalPass, uFifoPass, uCalPass); + + exit: + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + iNOST[0], iNOST[1], iNOST[2], iST[0], iST[1], iST[2], + iZeroRateData[0], iZeroRateData[1], iZeroRateData[2], + fifo_data[0], fifo_data[1], fifo_data[2], fifo_data[3], + uFifoPass & uBypassPass & uCalPass, uFifoPass, uCalPass); +} + +ssize_t mpu6500_gyro_selftest(char *buf, struct ssp_data *data) +{ + char chTempBuf[36] = { 0,}; + u8 initialized = 0; + s8 hw_result = 0; + int i = 0, j = 0, total_count = 0, ret_val = 0; + long avg[3] = {0,}, rms[3] = {0,}; + int gyro_bias[3] = {0,}, gyro_rms[3] = {0,}; + s16 shift_ratio[3] = {0,}; + s16 iCalData[3] = {0,}; + char a_name[3][2] = { "X", "Y", "Z" }; + int iRet = 0; + int dps_rms[3] = { 0, }; + u32 temp = 0; + int bias_thresh = DEF_BIAS_LSB_THRESH_SELF_6500; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_FACTORY; + msg->length = 36; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 7000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest Timeout!!\n", __func__); + ret_val = 1; + goto exit; + } + + data->uTimeOutCnt = 0; + pr_err("[SSP]%d %d %d %d %d %d %d %d %d %d %d %d", chTempBuf[0], chTempBuf[1], + chTempBuf[2], chTempBuf[3], chTempBuf[4], chTempBuf[5], chTempBuf[6], + chTempBuf[7], chTempBuf[8], chTempBuf[9], chTempBuf[10], chTempBuf[11]); + + initialized = chTempBuf[0]; + shift_ratio[0] = (s16)((chTempBuf[2] << 8) + + chTempBuf[1]); + shift_ratio[1] = (s16)((chTempBuf[4] << 8) + + chTempBuf[3]); + shift_ratio[2] = (s16)((chTempBuf[6] << 8) + + chTempBuf[5]); + hw_result = (s8)chTempBuf[7]; + total_count = (int)((chTempBuf[11] << 24) + + (chTempBuf[10] << 16) + + (chTempBuf[9] << 8) + + chTempBuf[8]); + avg[0] = (long)((chTempBuf[15] << 24) + + (chTempBuf[14] << 16) + + (chTempBuf[13] << 8) + + chTempBuf[12]); + avg[1] = (long)((chTempBuf[19] << 24) + + (chTempBuf[18] << 16) + + (chTempBuf[17] << 8) + + chTempBuf[16]); + avg[2] = (long)((chTempBuf[23] << 24) + + (chTempBuf[22] << 16) + + (chTempBuf[21] << 8) + + chTempBuf[20]); + rms[0] = (long)((chTempBuf[27] << 24) + + (chTempBuf[26] << 16) + + (chTempBuf[25] << 8) + + chTempBuf[24]); + rms[1] = (long)((chTempBuf[31] << 24) + + (chTempBuf[30] << 16) + + (chTempBuf[29] << 8) + + chTempBuf[28]); + rms[2] = (long)((chTempBuf[35] << 24) + + (chTempBuf[34] << 16) + + (chTempBuf[33] << 8) + + chTempBuf[32]); + pr_info("[SSP] init: %d, total cnt: %d\n", initialized, total_count); + pr_info("[SSP] hw_result: %d, %d, %d, %d\n", hw_result, + shift_ratio[0], shift_ratio[1], shift_ratio[2]); + pr_info("[SSP] avg %+8ld %+8ld %+8ld (LSB)\n", avg[0], avg[1], avg[2]); + pr_info("[SSP] rms %+8ld %+8ld %+8ld (LSB)\n", rms[0], rms[1], rms[2]); + + if (total_count == 0) { + pr_err("[SSP] %s, total_count is 0. goto exit\n", __func__); + ret_val = 2; + goto exit; + } + + if (hw_result < 0) { + pr_err("[SSP] %s - hw selftest fail(%d), sw selftest skip\n", + __func__, hw_result); + return sprintf(buf, "-1,0,0,0,0,0,0,%d.%d,%d.%d,%d.%d,0,0,0\n", + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10); + } + gyro_bias[0] = (avg[0] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[1] = (avg[1] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[2] = (avg[2] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + iCalData[0] = (s16)avg[0]; + iCalData[1] = (s16)avg[1]; + iCalData[2] = (s16)avg[2]; + + if (VERBOSE_OUT) { + pr_info("[SSP] abs bias : %+8d.%03d %+8d.%03d %+8d.%03d (dps)\n", + (int)abs(gyro_bias[0]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[0]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[1]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[1]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[2]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[2]) % DEF_SCALE_FOR_FLOAT); + } + + for (j = 0; j < 3; j++) { + if (unlikely(abs(avg[j]) > bias_thresh)) { + pr_err("[SSP] %s-Gyro bias (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + avg[j], bias_thresh); + ret_val |= 1 << (3 + j); + } + } + /* 3rd, check RMS for dead gyros + If any of the RMS noise value returns zero, + then we might have dead gyro or FIFO/register failure, + the part is sleeping, or the part is not responsive */ + if (rms[0] == 0 || rms[1] == 0 || rms[2] == 0) + ret_val |= 1 << 6; + + if (VERBOSE_OUT) { + pr_info("[SSP] RMS ^ 2 : %+8ld %+8ld %+8ld\n", + (long)rms[0] / total_count, + (long)rms[1] / total_count, (long)rms[2] / total_count); + } + + for (j = 0; j < 3; j++) { + if (unlikely(rms[j] / total_count > DEF_RMS_THRESH)) { + pr_err("[SSP] %s-Gyro rms (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + rms[j] / total_count, DEF_RMS_THRESH); + ret_val |= 1 << (7 + j); + } + } + + for (i = 0; i < 3; i++) { + if (rms[i] > 10000) { + temp = + ((u32) (rms[i] / total_count)) * + DEF_RMS_SCALE_FOR_RMS; + } else { + temp = + ((u32) (rms[i] * DEF_RMS_SCALE_FOR_RMS)) / + total_count; + } + if (rms[i] < 0) + temp = 1 << 31; + + dps_rms[i] = mpu6050_selftest_sqrt(temp) / DEF_GYRO_SENS; + + gyro_rms[i] = + dps_rms[i] * DEF_SCALE_FOR_FLOAT / DEF_SQRT_SCALE_FOR_RMS; + } + + pr_info("[SSP] RMS : %+8d.%03d %+8d.%03d %+8d.%03d (dps)\n", + (int)abs(gyro_rms[0]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[0]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[1]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[1]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[2]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[2]) % DEF_SCALE_FOR_FLOAT); + + if (likely(!ret_val)) { + save_gyro_caldata(data, iCalData); + } else { + pr_err("[SSP] ret_val != 0, gyrocal is 0 at all axis\n"); + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + } + +exit: + ssp_dbg("[SSP]: %s - %d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%d,%d.%d,%d.%d," + "%d,%d,%d\n", + __func__, ret_val, + (int)abs(gyro_bias[0]/1000), + (int)abs(gyro_bias[0])%1000, + (int)abs(gyro_bias[1]/1000), + (int)abs(gyro_bias[1])%1000, + (int)abs(gyro_bias[2]/1000), + (int)abs(gyro_bias[2])%1000, + gyro_rms[0]/1000, + (int)abs(gyro_rms[0])%1000, + gyro_rms[1]/1000, + (int)abs(gyro_rms[1])%1000, + gyro_rms[2]/1000, + (int)abs(gyro_rms[2])%1000, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10, + (int)(total_count/3), + (int)(total_count/3), + (int)(total_count/3)); + + return sprintf(buf, "%d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%d,%d.%d,%d.%d," + "%d,%d,%d\n", + ret_val, + (int)abs(gyro_bias[0]/1000), + (int)abs(gyro_bias[0])%1000, + (int)abs(gyro_bias[1]/1000), + (int)abs(gyro_bias[1])%1000, + (int)abs(gyro_bias[2]/1000), + (int)abs(gyro_bias[2])%1000, + gyro_rms[0]/1000, + (int)abs(gyro_rms[0])%1000, + gyro_rms[1]/1000, + (int)abs(gyro_rms[1])%1000, + gyro_rms[2]/1000, + (int)abs(gyro_rms[2])%1000, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10, + (int)(total_count/3), + (int)(total_count/3), + (int)(total_count/3)); +} + +static ssize_t gyro_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + return mpu6500_gyro_selftest(buf, data); +} + +static ssize_t gyro_selftest_dps_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + int iNewDps = 0; + int iRet = 0; + char chTempBuf = 0; + + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) + goto exit; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_DPS_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + sscanf(buf, "%d", &iNewDps); + + if (iNewDps == GYROSCOPE_DPS250) + msg->options |= 0 << SSP_GYRO_DPS; + else if (iNewDps == GYROSCOPE_DPS500) + msg->options |= 1 << SSP_GYRO_DPS; + else if (iNewDps == GYROSCOPE_DPS2000) + msg->options |= 2 << SSP_GYRO_DPS; + else { + msg->options |= 1 << SSP_GYRO_DPS; + iNewDps = GYROSCOPE_DPS500; + } + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest DPS Timeout!!\n", __func__); + goto exit; + } + + if (chTempBuf != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest DPS Error!!\n", __func__); + goto exit; + } + + data->uGyroDps = (unsigned int)iNewDps; + pr_err("[SSP]: %s - %u dps stored\n", __func__, data->uGyroDps); +exit: + return count; +} + +static ssize_t gyro_selftest_dps_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", data->uGyroDps); +} + +static DEVICE_ATTR(name, S_IRUGO, gyro_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, gyro_vendor_show, NULL); +static DEVICE_ATTR(power_off, S_IRUGO, gyro_power_off, NULL); +static DEVICE_ATTR(power_on, S_IRUGO, gyro_power_on, NULL); +static DEVICE_ATTR(temperature, S_IRUGO, gyro_get_temp, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gyro_selftest_show, NULL); +static DEVICE_ATTR(selftest_dps, S_IRUGO | S_IWUSR | S_IWGRP, + gyro_selftest_dps_show, gyro_selftest_dps_store); + +static struct device_attribute *gyro_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_selftest, + &dev_attr_power_on, + &dev_attr_power_off, + &dev_attr_temperature, + &dev_attr_selftest_dps, + NULL, +}; + +void initialize_gyro_factorytest(struct ssp_data *data) +{ + sensors_register(data->gyro_device, data, gyro_attrs, "gyro_sensor"); +} + +void remove_gyro_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->gyro_device, gyro_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/light_max88921.c b/drivers/sensorhub/stm_hestia/factory/light_max88921.c new file mode 100755 index 000000000000..6f60f019df0d --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/light_max88921.c @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88921" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ +static ssize_t light_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t light_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t light_lux_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].ir_cmp, data->buf[LIGHT_SENSOR].amb_pga); +} + +static ssize_t light_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].ir_cmp, data->buf[LIGHT_SENSOR].amb_pga); +} + +static DEVICE_ATTR(vendor, S_IRUGO, light_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, light_name_show, NULL); +static DEVICE_ATTR(lux, S_IRUGO, light_lux_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, light_data_show, NULL); + +static struct device_attribute *light_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_lux, + &dev_attr_raw_data, + NULL, +}; + +void initialize_light_factorytest(struct ssp_data *data) +{ + sensors_register(data->light_device, data, light_attrs, "light_sensor"); +} + +void remove_light_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->light_device, light_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/light_tmg399x.c b/drivers/sensorhub/stm_hestia/factory/light_tmg399x.c new file mode 100755 index 000000000000..d36a420b0416 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/light_tmg399x.c @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG399X" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ +static ssize_t light_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t light_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t light_lux_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].a_time, data->buf[LIGHT_SENSOR].a_gain); +} + +static ssize_t light_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].a_time, data->buf[LIGHT_SENSOR].a_gain); +} + +static DEVICE_ATTR(vendor, S_IRUGO, light_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, light_name_show, NULL); +static DEVICE_ATTR(lux, S_IRUGO, light_lux_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, light_data_show, NULL); + +static struct device_attribute *light_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_lux, + &dev_attr_raw_data, + NULL, +}; + +void initialize_light_factorytest(struct ssp_data *data) +{ + sensors_register(data->light_device, data, light_attrs, "light_sensor"); +} + +void remove_light_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->light_device, light_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/magnetic_ak09911.c b/drivers/sensorhub/stm_hestia/factory/magnetic_ak09911.c new file mode 100755 index 000000000000..675ccf9986c0 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/magnetic_ak09911.c @@ -0,0 +1,489 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR_AK "AKM" +#define CHIP_ID_AK "AK09911C" + +#define GM_DATA_SPEC_MIN -1600 +#define GM_DATA_SPEC_MAX 1600 + +#define GM_SELFTEST_X_SPEC_MIN -30 +#define GM_SELFTEST_X_SPEC_MAX 30 +#define GM_SELFTEST_Y_SPEC_MIN -30 +#define GM_SELFTEST_Y_SPEC_MAX 30 +#define GM_SELFTEST_Z_SPEC_MIN -400 +#define GM_SELFTEST_Z_SPEC_MAX -50 + +static ssize_t magnetic_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR_AK); +} + +static ssize_t magnetic_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID_AK); +} + +static int check_data_spec(struct ssp_data *data, u8 uSensorType) +{ + if ((data->buf[uSensorType].x == 0) && + (data->buf[uSensorType].y == 0) && + (data->buf[uSensorType].z == 0)) + return FAIL; + else if ((data->buf[uSensorType].x > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].x < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].y > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].y < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].z > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].z < GM_DATA_SPEC_MIN)) + return FAIL; + else + return SUCCESS; +} + +static ssize_t raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - %d,%d,%d\n", __func__, + data->buf[GEOMAGNETIC_RAW].x, + data->buf[GEOMAGNETIC_RAW].y, + data->buf[GEOMAGNETIC_RAW].z); + + if (data->bGeomagneticRawEnabled == false) { + data->buf[GEOMAGNETIC_RAW].x = -1; + data->buf[GEOMAGNETIC_RAW].y = -1; + data->buf[GEOMAGNETIC_RAW].z = -1; + } else { + if (data->buf[GEOMAGNETIC_RAW].x > 18000) + data->buf[GEOMAGNETIC_RAW].x = 18000; + else if (data->buf[GEOMAGNETIC_RAW].x < -18000) + data->buf[GEOMAGNETIC_RAW].x = -18000; + if (data->buf[GEOMAGNETIC_RAW].y > 18000) + data->buf[GEOMAGNETIC_RAW].y = 18000; + else if (data->buf[GEOMAGNETIC_RAW].y < -18000) + data->buf[GEOMAGNETIC_RAW].y = -18000; + if (data->buf[GEOMAGNETIC_RAW].z > 18000) + data->buf[GEOMAGNETIC_RAW].z = 18000; + else if (data->buf[GEOMAGNETIC_RAW].z < -18000) + data->buf[GEOMAGNETIC_RAW].z = -18000; + } + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[GEOMAGNETIC_RAW].x, + data->buf[GEOMAGNETIC_RAW].y, + data->buf[GEOMAGNETIC_RAW].z); +} + +static ssize_t raw_data_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + char chTempbuf[9] = { 0, }; + int iRet; + int64_t dEnable; + int iRetries = 50; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + data->buf[GEOMAGNETIC_RAW].x = 0; + data->buf[GEOMAGNETIC_RAW].y = 0; + data->buf[GEOMAGNETIC_RAW].z = 0; + + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, + chTempbuf, 9); + + do { + msleep(20); + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) + break; + } while (--iRetries); + + if (iRetries > 0) { + pr_info("[SSP] %s - success, %d\n", __func__, iRetries); + data->bGeomagneticRawEnabled = true; + } else { + pr_err("[SSP] %s - wait timeout, %d\n", __func__, + iRetries); + data->bGeomagneticRawEnabled = false; + } + } else { + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_RAW, + chTempbuf, 4); + data->bGeomagneticRawEnabled = false; + } + + return size; +} + +static ssize_t adc_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + u8 chTempbuf[9] = { 0, }; + s16 iSensorBuf[3] = {0, }; + int iRetries = 10; + bool add_mag = false; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + data->buf[GEOMAGNETIC_SENSOR].x = 0; + data->buf[GEOMAGNETIC_SENSOR].y = 0; + data->buf[GEOMAGNETIC_SENSOR].z = 0; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR))) { + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_SENSOR, + chTempbuf, 9); + add_mag = true; + } + + do { + msleep(60); + if (check_data_spec(data, GEOMAGNETIC_SENSOR) == SUCCESS) + break; + } while (--iRetries); + + if (iRetries > 0) + bSuccess = true; + + iSensorBuf[0] = data->buf[GEOMAGNETIC_SENSOR].x; + iSensorBuf[1] = data->buf[GEOMAGNETIC_SENSOR].y; + iSensorBuf[2] = data->buf[GEOMAGNETIC_SENSOR].z; + + if (add_mag == true) + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_SENSOR, + chTempbuf, 4); + + pr_info("[SSP]: %s - x = %d, y = %d, z = %d\n", __func__, + iSensorBuf[0], iSensorBuf[1], iSensorBuf[2]); + + return sprintf(buf, "%s,%d,%d,%d\n", (bSuccess ? "OK" : "NG"), + iSensorBuf[0], iSensorBuf[1], iSensorBuf[2]); +} + +static ssize_t magnetic_get_asa(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d,%d,%d\n", (s16)data->uFuseRomData[0], + (s16)data->uFuseRomData[1], (s16)data->uFuseRomData[2]); +} + +static ssize_t magnetic_get_status(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess; + struct ssp_data *data = dev_get_drvdata(dev); + + if ((data->uFuseRomData[0] == 0) || + (data->uFuseRomData[0] == 0xff) || + (data->uFuseRomData[1] == 0) || + (data->uFuseRomData[1] == 0xff) || + (data->uFuseRomData[2] == 0) || + (data->uFuseRomData[2] == 0xff)) + bSuccess = false; + else + bSuccess = true; + + return sprintf(buf, "%s,%u\n", (bSuccess ? "OK" : "NG"), bSuccess); +} + +static ssize_t magnetic_check_cntl(struct device *dev, + struct device_attribute *attr, char *strbuf) +{ + bool bSuccess = false; + int iRet; + char chTempBuf[22] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + if (!data->uMagCntlRegData) { + bSuccess = true; + } else { + pr_info("[SSP] %s - check cntl register before selftest", __func__); + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = GEOMAGNETIC_FACTORY; + msg->length = 22; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP] %s - spi sync failed due to Timeout!! %d\n", + __func__, iRet); + } + + data->uMagCntlRegData = chTempBuf[21]; + bSuccess = !data->uMagCntlRegData; + } + + pr_info("[SSP] %s - CTRL : 0x%x\n", __func__, + data->uMagCntlRegData); + + data->uMagCntlRegData = 1; /* reset the value */ + + return sprintf(strbuf, "%s,%d,%d,%d\n", + (bSuccess ? "OK" : "NG"), (bSuccess ? 1 : 0), 0, 0); +} + +static ssize_t magnetic_get_selftest(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s8 iResult[4] = {-1, -1, -1, -1}; + char bufSelftset[22] = {0, }; + char bufAdc[9] = {0, }; + s16 iSF_X = 0, iSF_Y = 0, iSF_Z = 0; + s16 iADC_X = 0, iADC_Y = 0, iADC_Z = 0; + s32 dMsDelay = 20; + int iRet = 0, iSpecOutRetries = 0; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + pr_info("[SSP] %s in\n", __func__); + + /* STATUS */ + if ((data->uFuseRomData[0] == 0) || + (data->uFuseRomData[0] == 0xff) || + (data->uFuseRomData[1] == 0) || + (data->uFuseRomData[1] == 0xff) || + (data->uFuseRomData[2] == 0) || + (data->uFuseRomData[2] == 0xff)) + iResult[0] = -1; + else + iResult[0] = 0; + +Retry_selftest: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + goto exit; + } + msg->cmd = GEOMAGNETIC_FACTORY; + msg->length = 22; + msg->options = AP2HUB_READ; + msg->buffer = bufSelftset; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Magnetic Selftest Timeout!! %d\n", __func__, iRet); + goto exit; + } + + /* read 6bytes data registers */ + iSF_X = (s16)((bufSelftset[13] << 8) + bufSelftset[14]); + iSF_Y = (s16)((bufSelftset[15] << 8) + bufSelftset[16]); + iSF_Z = (s16)((bufSelftset[17] << 8) + bufSelftset[18]); + + /* DAC (store Cntl Register value to check power down) */ + iResult[2] = bufSelftset[21]; + + iSF_X = (s16)(((iSF_X * data->uFuseRomData[0]) >> 7) + iSF_X); + iSF_Y = (s16)(((iSF_Y * data->uFuseRomData[1]) >> 7) + iSF_Y); + iSF_Z = (s16)(((iSF_Z * data->uFuseRomData[2]) >> 7) + iSF_Z); + + pr_info("[SSP] %s: self test x = %d, y = %d, z = %d\n", + __func__, iSF_X, iSF_Y, iSF_Z); + + if ((iSF_X >= GM_SELFTEST_X_SPEC_MIN) + && (iSF_X <= GM_SELFTEST_X_SPEC_MAX)) + pr_info("[SSP] x passed self test, expect -30<=x<=30\n"); + else + pr_info("[SSP] x failed self test, expect -30<=x<=30\n"); + if ((iSF_Y >= GM_SELFTEST_Y_SPEC_MIN) + && (iSF_Y <= GM_SELFTEST_Y_SPEC_MAX)) + pr_info("[SSP] y passed self test, expect -30<=y<=30\n"); + else + pr_info("[SSP] y failed self test, expect -30<=y<=30\n"); + if ((iSF_Z >= GM_SELFTEST_Z_SPEC_MIN) + && (iSF_Z <= GM_SELFTEST_Z_SPEC_MAX)) + pr_info("[SSP] z passed self test, expect -400<=z<=-50\n"); + else + pr_info("[SSP] z failed self test, expect -400<=z<=-50\n"); + + /* SELFTEST */ + if ((iSF_X >= GM_SELFTEST_X_SPEC_MIN) + && (iSF_X <= GM_SELFTEST_X_SPEC_MAX) + && (iSF_Y >= GM_SELFTEST_Y_SPEC_MIN) + && (iSF_Y <= GM_SELFTEST_Y_SPEC_MAX) + && (iSF_Z >= GM_SELFTEST_Z_SPEC_MIN) + && (iSF_Z <= GM_SELFTEST_Z_SPEC_MAX)) + iResult[1] = 0; + + if ((iResult[1] == -1) && (iSpecOutRetries++ < 5)) { + pr_err("[SSP] %s, selftest spec out. Retry = %d", __func__, iSpecOutRetries); + goto Retry_selftest; + } + + iSpecOutRetries = 10; + + /* ADC */ + memcpy(&bufAdc[0], &dMsDelay, 4); + + data->buf[GEOMAGNETIC_RAW].x = 0; + data->buf[GEOMAGNETIC_RAW].y = 0; + data->buf[GEOMAGNETIC_RAW].z = 0; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_RAW))) + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, + bufAdc, 9); + + do { + msleep(60); + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) + break; + } while (--iSpecOutRetries); + + if (iSpecOutRetries > 0) + iResult[3] = 0; + + iADC_X = data->buf[GEOMAGNETIC_RAW].x; + iADC_Y = data->buf[GEOMAGNETIC_RAW].y; + iADC_Z = data->buf[GEOMAGNETIC_RAW].z; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_RAW))) + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_RAW, + bufAdc, 4); + + pr_info("[SSP]: %s -adc, x = %d, y = %d, z = %d, retry = %d\n", __func__, + iADC_X, iADC_Y, iADC_Z, iSpecOutRetries); + +exit: + pr_info("[SSP] %s out. Result = %d %d %d %d\n", + __func__, iResult[0], iResult[1], iResult[2], iResult[3]); + + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + iResult[0], iResult[1], iSF_X, iSF_Y, iSF_Z, + iResult[2], iResult[3], iADC_X, iADC_Y, iADC_Z); +} + +#ifdef SAVE_MAG_LOG +static ssize_t raw_data_logging_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bGeomagneticLogged == false) { + data->buf[GEOMAGNETIC_SENSOR].x = -1; + data->buf[GEOMAGNETIC_SENSOR].y = -1; + data->buf[GEOMAGNETIC_SENSOR].z = -1; + } + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[GEOMAGNETIC_SENSOR].x, + data->buf[GEOMAGNETIC_SENSOR].y, + data->buf[GEOMAGNETIC_SENSOR].z); +} + +static ssize_t raw_data_logging_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u8 uBuf[4] = {0, }; + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 10; + memcpy(&uBuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + ssp_dbg("[SSP]: %s - add %u, New = %dns\n", + __func__, 1 << GEOMAGNETIC_SENSOR, dMsDelay); + + iRet = send_instruction(data, GET_LOGGING, GEOMAGNETIC_SENSOR, uBuf, 4); + if (iRet == SUCCESS) { + pr_info("[SSP] %s - success\n", __func__); + data->bGeomagneticLogged = true; + } else { + pr_err("[SSP] %s - failed, %d\n", __func__, iRet); + data->bGeomagneticLogged = false; + } + } else { + iRet = send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_SENSOR, uBuf, 4); + if (iRet == SUCCESS) { + pr_info("[SSP] %s - success\n", __func__); + data->bGeomagneticLogged = false; + } + ssp_dbg("[SSP]: %s - remove sensor = %d\n", + __func__, (1 << GEOMAGNETIC_SENSOR)); + } + + return size; +} +#endif + +static DEVICE_ATTR(name, S_IRUGO, magnetic_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, magnetic_vendor_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO | S_IWUSR | S_IWGRP, + raw_data_show, raw_data_store); +static DEVICE_ATTR(adc, S_IRUGO, adc_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, magnetic_get_selftest, NULL); +static DEVICE_ATTR(status, S_IRUGO, magnetic_get_status, NULL); +static DEVICE_ATTR(dac, S_IRUGO, magnetic_check_cntl, NULL); +static DEVICE_ATTR(ak09911_asa, S_IRUGO, magnetic_get_asa, NULL); +#ifdef SAVE_MAG_LOG +static DEVICE_ATTR(logging_data, S_IRUGO | S_IWUSR | S_IWGRP, + raw_data_logging_show, raw_data_logging_store); +#endif + +static struct device_attribute *mag_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_adc, + &dev_attr_dac, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_status, + &dev_attr_ak09911_asa, +#ifdef SAVE_MAG_LOG + &dev_attr_logging_data, +#endif + NULL, +}; + +void initialize_magnetic_factorytest(struct ssp_data *data) +{ + sensors_register(data->mag_device, data, + mag_attrs, "magnetic_sensor"); +} + +void remove_magnetic_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->mag_device, mag_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/mcu_atuc128l5har.c b/drivers/sensorhub/stm_hestia/factory/mcu_atuc128l5har.c new file mode 100755 index 000000000000..041b109f8ddb --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/mcu_atuc128l5har.c @@ -0,0 +1,301 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define MODEL_NAME "STM32F401CEY6B" + +ssize_t mcu_revision_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "ST01%u,ST01%u\n", get_module_rev(data), + data->uCurFirmRev); +} + +ssize_t mcu_model_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", MODEL_NAME); +} + +ssize_t mcu_update_kernel_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_kernel_crashed_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_CRASHED_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_ums_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; + + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_reset_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + reset_mcu(data); + + return sprintf(buf, "OK\n"); +} + +ssize_t mcu_dump_show(struct device *dev, struct device_attribute *attr, + char *buf) { + struct ssp_data *data = dev_get_drvdata(dev); + int status = 1, iDelaycnt = 0; + + data->bDumping = true; + set_big_data_start(data, BIG_TYPE_DUMP, 0); + msleep(300); + while (data->bDumping) { + mdelay(10); + if (iDelaycnt++ > 1000) { + status = 0; + break; + } + } + return sprintf(buf, "%s\n", status ? "OK" : "NG"); +} + +static char buffer[FACTORY_DATA_MAX]; + +ssize_t mcu_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_FACTORY; + msg->length = 5; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + memset(msg->buffer, 0, 5); + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Factory Test Start! - %d\n", iRet); + + return size; +} + +ssize_t mcu_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bMcuTestSuccessed = false; + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bSspShutdown == true) { + ssp_dbg("[SSP]: %s - MCU Bin is crashed\n", __func__); + return sprintf(buf, "NG,NG,NG\n"); + } + + ssp_dbg("[SSP] MCU Factory Test Data : %u, %u, %u, %u, %u\n", buffer[0], + buffer[1], buffer[2], buffer[3], buffer[4]); + + /* system clock, RTC, I2C Master, I2C Slave, externel pin */ + if ((buffer[0] == SUCCESS) + && (buffer[1] == SUCCESS) + && (buffer[2] == SUCCESS) + && (buffer[3] == SUCCESS) + && (buffer[4] == SUCCESS)) + bMcuTestSuccessed = true; + + ssp_dbg("[SSP]: MCU Factory Test Result - %s, %s, %s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); + + return sprintf(buf, "%s,%s,%s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); +} + +ssize_t mcu_sleep_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_SLEEP_FACTORY; + msg->length = FACTORY_DATA_MAX; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Sleep Factory Test Start! - %d\n", 1); + + return size; +} + +ssize_t mcu_sleep_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int iDataIdx, iSensorData = 0; + struct ssp_data *data = dev_get_drvdata(dev); + struct sensor_value fsb[SENSOR_MAX]; + u16 chLength = 0; + + memcpy(&chLength, buffer, 2); + memset(fsb, 0, sizeof(struct sensor_value) * SENSOR_MAX); + + for (iDataIdx = 2; iDataIdx < chLength + 2;) { + iSensorData = (int)buffer[iDataIdx++]; + + if ((iSensorData < 0) || + (iSensorData >= (SENSOR_MAX - 1))) { + pr_err("[SSP]: %s - Mcu data frame error %d\n", + __func__, iSensorData); + goto exit; + } + + if(data->get_sensor_data[iSensorData] == NULL) + pr_err("[SSP]: %s - get_sensor_data[%d] is null\n", + __func__, iDataIdx); + else { + data->get_sensor_data[iSensorData]((char *)buffer, + &iDataIdx, &(fsb[iSensorData])); + } + } + + fsb[PRESSURE_SENSOR].pressure[0] -= data->iPressureCal; + +exit: + ssp_dbg("[SSP]: %s Result\n" + "[SSP] accel %d,%d,%d\n" + "[SSP] gyro %d,%d,%d\n" + "[SSP] mag %d,%d,%d\n" + "[SSP] baro %d,%d\n" + "[SSP] ges %d,%d,%d,%d\n" + "[SSP] prox %u,%u\n" + "[SSP] temp %d,%d,%d\n" + "[SSP] light %u,%u,%u,%u,%u,%u\n", __func__, + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[PROXIMITY_SENSOR].prox[0], fsb[PROXIMITY_SENSOR].prox[1], + fsb[TEMPERATURE_HUMIDITY_SENSOR].x, + fsb[TEMPERATURE_HUMIDITY_SENSOR].y, + fsb[TEMPERATURE_HUMIDITY_SENSOR].z, + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w, +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + fsb[LIGHT_SENSOR].a_time, fsb[LIGHT_SENSOR].a_gain +#else + fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga +#endif + ); + + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%u," + "%u,%u,%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], fsb[PROXIMITY_SENSOR].prox[1], + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w, +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + fsb[LIGHT_SENSOR].a_time, fsb[LIGHT_SENSOR].a_gain, +#else + fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga, +#endif + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[TEMPERATURE_HUMIDITY_SENSOR].x, + fsb[TEMPERATURE_HUMIDITY_SENSOR].y); +} diff --git a/drivers/sensorhub/stm_hestia/factory/pressure_bmp182.c b/drivers/sensorhub/stm_hestia/factory/pressure_bmp182.c new file mode 100755 index 000000000000..f3b0469dac99 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/pressure_bmp182.c @@ -0,0 +1,237 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#if defined (CONFIG_SEC_KACTIVE_PROJECT) +#define LPS25H_REV 0 +#else +#define LPS25H_REV 3 +#endif + +#define VENDOR "BOSCH" +#define CHIP_ID "BMP180" +#define VENDOR_STM "STM" +#define CHIP_ID_LPS25H "LPS25H" + +#define CALIBRATION_FILE_PATH "/efs/FactoryApp/baro_delta" + +#define PR_ABS_MAX 8388607 /* 24 bit 2'compl */ +#define PR_ABS_MIN -8388608 + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +static ssize_t sea_level_pressure_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + sscanf(buf, "%d", &data->sealevelpressure); + + if (data->sealevelpressure == 0) { + pr_info("%s, our->temperature = 0\n", __func__); + data->sealevelpressure = -1; + } + + pr_info("[SSP] %s sea_level_pressure = %d\n", + __func__, data->sealevelpressure); + return size; +} + +int pressure_open_calibration(struct ssp_data *data) +{ + char chBuf[10] = {0,}; + int iErr = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + iErr = PTR_ERR(cal_filp); + if (iErr != -ENOENT) + pr_err("[SSP]: %s - Can't open calibration file(%d)\n", + __func__, iErr); + set_fs(old_fs); + return iErr; + } + iErr = cal_filp->f_op->read(cal_filp, + chBuf, 10 * sizeof(char), &cal_filp->f_pos); + if (iErr < 0) { + pr_err("[SSP]: %s - Can't read the cal data from file (%d)\n", + __func__, iErr); + return iErr; + } + filp_close(cal_filp, current->files); + set_fs(old_fs); + + iErr = kstrtoint(chBuf, 10, &data->iPressureCal); + if (iErr < 0) { + pr_err("[SSP]: %s - kstrtoint failed. %d", __func__, iErr); + return iErr; + } + + ssp_dbg("[SSP]: open barometer calibration %d\n", data->iPressureCal); + + if (data->iPressureCal < PR_ABS_MIN || data->iPressureCal > PR_ABS_MAX) + pr_err("[SSP]: %s - wrong offset value!!!\n", __func__); + + return iErr; +} + +static ssize_t pressure_cabratioin_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iPressureCal = 0, iErr = 0; + + iErr = kstrtoint(buf, 10, &iPressureCal); + if (iErr < 0) { + pr_err("[SSP]: %s - kstrtoint failed.(%d)", __func__, iErr); + return iErr; + } + + if (iPressureCal < PR_ABS_MIN || iPressureCal > PR_ABS_MAX) + return -EINVAL; + + data->iPressureCal = (s32)iPressureCal; + + return size; +} + +static ssize_t pressure_cabratioin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pressure_open_calibration(data); + + return sprintf(buf, "%d\n", data->iPressureCal); +} + +static ssize_t eeprom_check_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf = 0; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = PRESSURE_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Pressure Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s - %u\n", __func__, chTempBuf); + + exit: + return snprintf(buf, PAGE_SIZE, "%d", chTempBuf); +} + +/* sysfs for vendor & name */ +static ssize_t pressure_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ +#if defined (LPS25H_REV) + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->ap_rev >= LPS25H_REV) + return sprintf(buf, "%s\n", VENDOR_STM); + else + return sprintf(buf, "%s\n", VENDOR); +#else + return sprintf(buf, "%s\n", VENDOR); +#endif +} + +static ssize_t pressure_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ +#if defined (LPS25H_REV) + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->ap_rev >= LPS25H_REV) + return sprintf(buf, "%s\n", CHIP_ID_LPS25H); + else + return sprintf(buf, "%s\n", CHIP_ID); +#else + return sprintf(buf, "%s\n", CHIP_ID); +#endif +} + +static DEVICE_ATTR(vendor, S_IRUGO, pressure_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, pressure_name_show, NULL); +static DEVICE_ATTR(eeprom_check, S_IRUGO, eeprom_check_show, NULL); +static DEVICE_ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + pressure_cabratioin_show, pressure_cabratioin_store); +static DEVICE_ATTR(sea_level_pressure, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, sea_level_pressure_store); + +static struct device_attribute *pressure_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_calibration, + &dev_attr_sea_level_pressure, + &dev_attr_eeprom_check, + NULL, +}; + +#if defined (LPS25H_REV) +static struct device_attribute *pressure_attrs_lps25h[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_calibration, + &dev_attr_sea_level_pressure, + NULL, +}; +#endif + +void initialize_pressure_factorytest(struct ssp_data *data) +{ +#if defined (LPS25H_REV) + if(data->ap_rev >= LPS25H_REV) + sensors_register(data->prs_device, data, pressure_attrs_lps25h, + "barometer_sensor"); + else + sensors_register(data->prs_device, data, pressure_attrs, + "barometer_sensor"); +#else + sensors_register(data->prs_device, data, pressure_attrs, + "barometer_sensor"); +#endif +} + +void remove_pressure_factorytest(struct ssp_data *data) +{ +#if defined (LPS25H_REV) + if(data->ap_rev >= LPS25H_REV) + sensors_unregister(data->prs_device, pressure_attrs_lps25h); + else + sensors_unregister(data->prs_device, pressure_attrs); +#else + sensors_unregister(data->prs_device, pressure_attrs); +#endif +} diff --git a/drivers/sensorhub/stm_hestia/factory/prox_max88920.c b/drivers/sensorhub/stm_hestia/factory/prox_max88920.c new file mode 100755 index 000000000000..df34a4d40953 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/prox_max88920.c @@ -0,0 +1,505 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#ifdef CONFIG_SENSORS_SSP_TMG399X +#define VENDOR "AMS" +#define CHIP_ID "TMG399X" +#else +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88920" +#endif + +#define CANCELATION_FILE_PATH "/efs/prox_cal" +#define LCD_LDI_FILE_PATH "/sys/class/lcd/panel/window_type" + +#define LINE_1 '4' +#define LINE_2 '2' + +#define LDI_OTHERS '0' +#define LDI_GRAY '1' +#define LDI_WHITE '2' + +#if defined(CONFIG_SEC_KACTIVE_PROJECT) +#define CAL_SKIP_ADC 52 +#define CAL_FAIL_ADC 80 +#elif defined(CONFIG_SENSORS_SSP_STM_HESTIA) +#define CAL_SKIP_ADC 205 /* 60% * LOW THD */ +#define CAL_FAIL_ADC 480 /* 100% * HIGH THD */ +#else +#define CAL_SKIP_ADC 55 +#define CAL_FAIL_ADC 90 +#endif + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +static ssize_t prox_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t prox_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t proximity_avg_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[PROXIMITY_RAW].prox[1], + data->buf[PROXIMITY_RAW].prox[2], + data->buf[PROXIMITY_RAW].prox[3]); +} + +static ssize_t proximity_avg_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + char chTempbuf[9] = { 0, }; + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); + data->bProximityRawEnabled = true; + } else { + send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, + chTempbuf, 4); + data->bProximityRawEnabled = false; + } + + return size; +} + +static u16 get_proximity_rawdata(struct ssp_data *data) +{ + u16 uRowdata = 0; + char chTempbuf[9] = { 0, }; + + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + if (data->bProximityRawEnabled == false) { + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); + msleep(200); + uRowdata = data->buf[PROXIMITY_RAW].prox[0]; + send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, + chTempbuf, 4); + } else { + uRowdata = data->buf[PROXIMITY_RAW].prox[0]; + } + + return uRowdata; +} + +static ssize_t proximity_state_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", get_proximity_rawdata(data) - PROX_TRIM); +} + +static ssize_t proximity_raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", get_proximity_rawdata(data) - PROX_TRIM); +} + +static int get_proximity_threshold(struct ssp_data *data) +{ + if (data->uCrosstalk < (CAL_SKIP_ADC + PROX_TRIM)) { + data->uProxCanc = 0; + data->uProxCalResult = 2; + pr_info("[SSP] crosstalk < %d, skip calibration\n", CAL_SKIP_ADC); + } else if (data->uCrosstalk <= (CAL_FAIL_ADC + PROX_TRIM)) { + data->uProxCanc = data->uCrosstalk * 5 / 10; + data->uProxCalResult = 1; + } else { + data->uProxCanc = 0; + data->uProxCalResult = 0; + pr_info("[SSP] crosstalk > %d, calibration failed\n", CAL_FAIL_ADC); + return ERROR; + } + data->uProxHiThresh = data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = data->uProxLoThresh_default + data->uProxCanc; + + pr_info("[SSP] %s - crosstalk_offset = %u(%u), HI_THD = %u, LOW_THD = %u\n", + __func__, data->uProxCanc, data->uCrosstalk, + data->uProxHiThresh, data->uProxLoThresh); + return SUCCESS; +} + +static void change_proximity_default_threshold(struct ssp_data *data) +{ + switch (data->chLcdLdi[1]) { + case LDI_GRAY: + data->uProxHiThresh_default = TBD_HIGH_THRESHOLD; + data->uProxLoThresh_default = TBD_LOW_THRESHOLD; + break; + case LDI_WHITE: + data->uProxHiThresh_default = WHITE_HIGH_THRESHOLD; + data->uProxLoThresh_default = WHITE_LOW_THRESHOLD; + break; + case LDI_OTHERS: + data->uProxHiThresh_default = DEFUALT_HIGH_THRESHOLD; + data->uProxLoThresh_default = DEFUALT_LOW_THRESHOLD; + break; + default: + data->uProxHiThresh_default = DEFUALT_HIGH_THRESHOLD; + data->uProxLoThresh_default = DEFUALT_LOW_THRESHOLD; + break; + } + + data->uProxHiThresh = data->uProxHiThresh_default; + data->uProxLoThresh = data->uProxLoThresh_default; +} + +int proximity_open_lcd_ldi(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(LCD_LDI_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cancel_filp)) { + iRet = PTR_ERR(cancel_filp); + if (iRet != -ENOENT) + pr_err("[SSP]: %s - Can't open lcd ldi file\n", + __func__); + set_fs(old_fs); + data->chLcdLdi[0] = 0; + data->chLcdLdi[1] = 0; + goto exit; + } + + iRet = cancel_filp->f_op->read(cancel_filp, + (u8 *)data->chLcdLdi, sizeof(u8) * 2, &cancel_filp->f_pos); + if (iRet != (sizeof(u8) * 2)) { + pr_err("[SSP]: %s - Can't read the lcd ldi data\n", __func__); + iRet = -EIO; + } + + ssp_dbg("[SSP]: %s - %c%c\n", __func__, + data->chLcdLdi[0], data->chLcdLdi[1]); + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + +exit: + change_proximity_default_threshold(data); + return iRet; +} + +int proximity_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(CANCELATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cancel_filp)) { + iRet = PTR_ERR(cancel_filp); + if (iRet != -ENOENT) + pr_err("[SSP]: %s - Can't open cancelation file\n", + __func__); + set_fs(old_fs); + goto exit; + } + + iRet = cancel_filp->f_op->read(cancel_filp, + (u8 *)&data->uProxCanc, sizeof(unsigned int), &cancel_filp->f_pos); + if (iRet != sizeof(u8)) { + pr_err("[SSP]: %s - Can't read the cancel data\n", __func__); + iRet = -EIO; + } + + if (data->uProxCanc != 0) { + /*If there is an offset cal data. */ + data->uProxHiThresh = + data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = + data->uProxLoThresh_default + data->uProxCanc; + } + + pr_info("%s: proximity ps_canc = %d, ps_thresh hi - %d lo - %d\n", + __func__, data->uProxCanc, data->uProxHiThresh, + data->uProxLoThresh); + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + +exit: + return iRet; +} + +static int proximity_store_cancelation(struct ssp_data *data, int iCalCMD) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + if (iCalCMD) { + data->uCrosstalk = get_proximity_rawdata(data); + iRet = get_proximity_threshold(data); + } else { + data->uProxHiThresh = data->uProxHiThresh_default; + data->uProxLoThresh = data->uProxLoThresh_default; + data->uProxCanc = 0; + } + + if (iRet != ERROR) + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(CANCELATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY | O_SYNC, 0666); + if (IS_ERR(cancel_filp)) { + pr_err("%s: Can't open cancelation file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cancel_filp); + return iRet; + } + + iRet = cancel_filp->f_op->write(cancel_filp, (u8 *)&data->uProxCanc, + sizeof(unsigned int), &cancel_filp->f_pos); + if (iRet != sizeof(unsigned int)) { + pr_err("%s: Can't write the cancel data to file\n", __func__); + iRet = -EIO; + } + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + + return iRet; +} + +static ssize_t proximity_cancel_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh : hi : %u lo : %u, uProxCanc = %u\n", + data->uProxHiThresh, data->uProxLoThresh, data->uProxCanc); + + return sprintf(buf, "%u,%u,%u\n", data->uProxCanc, + data->uProxHiThresh, data->uProxLoThresh); +} + +static ssize_t proximity_cancel_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iCalCMD = 0, iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* calibrate cancelation value */ + iCalCMD = 1; + else if (sysfs_streq(buf, "0")) /* reset cancelation value */ + iCalCMD = 0; + else { + pr_debug("%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + iRet = proximity_store_cancelation(data, iCalCMD); + if (iRet < 0) { + pr_err("[SSP]: - %s proximity_store_cancelation() failed\n", + __func__); + return iRet; + } + + ssp_dbg("[SSP]: %s - %u\n", __func__, iCalCMD); + return size; +} + +static ssize_t proximity_thresh_high_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh = hi - %u, lo - %u\n", + data->uProxHiThresh, data->uProxLoThresh); + + return sprintf(buf, "%u,%u\n", data->uProxHiThresh, + data->uProxLoThresh); +} + +static ssize_t proximity_thresh_high_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewThresh; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtou16(buf, 10, &uNewThresh); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + if(uNewThresh & 0xfc00) + pr_err("[SSP]: %s - allow 10bits.(%d)\n", __func__, uNewThresh); + else { + uNewThresh &= 0x03ff; + data->uProxHiThresh = uNewThresh; + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + } + } + + ssp_dbg("[SSP]: %s - new prox threshold : hi - %u, lo - %u\n", + __func__, data->uProxHiThresh, data->uProxLoThresh); + + return size; +} + +static ssize_t proximity_thresh_low_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh = hi - %u, lo - %u\n", + data->uProxHiThresh, data->uProxLoThresh); + + return sprintf(buf, "%u,%u\n", data->uProxHiThresh, + data->uProxLoThresh); +} + +static ssize_t proximity_thresh_low_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewThresh; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtou16(buf, 10, &uNewThresh); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + if(uNewThresh & 0xfc00) + pr_err("[SSP]: %s - allow 10bits.(%d)\n", __func__, uNewThresh); + else { + uNewThresh &= 0x03ff; + data->uProxLoThresh = uNewThresh; + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + } + } + + ssp_dbg("[SSP]: %s - new prox threshold : hi - %u, lo - %u\n", + __func__, data->uProxHiThresh, data->uProxLoThresh); + + return size; +} + +static ssize_t proximity_cancel_pass_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s, %u\n", __func__, data->uProxCalResult); + return snprintf(buf, PAGE_SIZE, "%u\n", data->uProxCalResult); +} + +static ssize_t barcode_emul_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->bBarcodeEnabled); +} + +static ssize_t barcode_emul_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) + set_proximity_barcode_enable(data, true); + else + set_proximity_barcode_enable(data, false); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, prox_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, prox_name_show, NULL); +static DEVICE_ATTR(state, S_IRUGO, proximity_state_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, proximity_raw_data_show, NULL); +static DEVICE_ATTR(barcode_emul_en, S_IRUGO | S_IWUSR | S_IWGRP, + barcode_emul_enable_show, barcode_emul_enable_store); +static DEVICE_ATTR(prox_avg, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_avg_show, proximity_avg_store); +static DEVICE_ATTR(prox_cal, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_cancel_show, proximity_cancel_store); +static DEVICE_ATTR(thresh_high, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_thresh_high_show, proximity_thresh_high_store); +static DEVICE_ATTR(thresh_low, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_thresh_low_show, proximity_thresh_low_store); +static DEVICE_ATTR(prox_offset_pass, S_IRUGO, proximity_cancel_pass_show, NULL); + +static struct device_attribute *prox_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_state, + &dev_attr_raw_data, + &dev_attr_prox_avg, + &dev_attr_prox_cal, + &dev_attr_thresh_high, + &dev_attr_thresh_low, + &dev_attr_barcode_emul_en, + &dev_attr_prox_offset_pass, + NULL, +}; + +void initialize_prox_factorytest(struct ssp_data *data) +{ + sensors_register(data->prox_device, data, + prox_attrs, "proximity_sensor"); +} + +void remove_prox_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->prox_device, prox_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/factory/temphumidity_shtc1.c b/drivers/sensorhub/stm_hestia/factory/temphumidity_shtc1.c new file mode 100755 index 000000000000..2fad7adde126 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/temphumidity_shtc1.c @@ -0,0 +1,734 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" +#include + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "SENSIRION" +#define CHIP_ID "SHTC1" +#define DONE_CAL 3 + +#define SHTC1_IOCTL_MAGIC 0xFB +#define IOCTL_READ_COMPLETE _IOR(SHTC1_IOCTL_MAGIC, 0x01, unsigned short *) +#define IOCTL_READ_ADC_BATT_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x02, unsigned short *) +#define IOCTL_READ_ADC_CHG_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x03, unsigned short *) +#define IOCTL_READ_THM_SHTC1_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x04, short *) +#define IOCTL_READ_HUM_SHTC1_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x05, unsigned short *) +#define IOCTL_READ_THM_BARO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x06, unsigned short *) +#define IOCTL_READ_THM_GYRO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x07, unsigned short *) + +#if defined(CONFIG_MACH_KLTE_EUR) +#define MODEL_NAME "SM-G900F" +#elif defined(CONFIG_MACH_KLTE_ATT) +#define MODEL_NAME "SM-G900A" +#elif defined(CONFIG_MACH_KLTE_SPR) +#define MODEL_NAME "SM-G900P" +#elif defined(CONFIG_MACH_KLTE_TMO) +#define MODEL_NAME "SM-G900T" +#elif defined(CONFIG_MACH_KLTE_USC) +#define MODEL_NAME "SM-G900R4" +#elif defined(CONFIG_MACH_KLTE_VZW) +#define MODEL_NAME "SM-G900V" +#elif defined(CONFIG_MACH_KLTE_DCM) +#define MODEL_NAME "SM-G900D" +#elif defined(CONFIG_MACH_KLTE_KDI) +#define MODEL_NAME "SM-G900J" +#elif defined(CONFIG_MACH_KLTE_SBM) +#define MODEL_NAME "SM-G900Z" +#elif defined(CONFIG_MACH_KLTE_CMCC) +#define MODEL_NAME "SM-G9008V" +#elif defined(CONFIG_MACH_KLTE_CMCCDUOS) +#define MODEL_NAME "SM-G9008W" +#elif defined(CONFIG_MACH_KLTE_CU) +#define MODEL_NAME "SM-G9006V" +#elif defined(CONFIG_MACH_KLTE_CUDUOS) +#define MODEL_NAME "SM-G9006W" +#elif defined(CONFIG_MACH_KLTE_CTC) +#define MODEL_NAME "SM-G9009W" +#elif defined(CONFIG_MACH_K3GDUOS_CTC) +#define MODEL_NAME "SM-G9009D" +#elif defined(CONFIG_MACH_KLTE_CAN) +#define MODEL_NAME "SM-G900W8" +#elif defined(CONFIG_MACH_KLTE_SKT) +#define MODEL_NAME "SM-G900S" +#elif defined(CONFIG_MACH_KLTE_KTT) +#define MODEL_NAME "SM-G900K" +#elif defined(CONFIG_MACH_KLTE_LGT) +#define MODEL_NAME "SM-G900L" +#elif defined(CONFIG_SEC_HESTIA_PROJECT) +#define MODEL_NAME "SM-G739F" +#else +#define MODEL_NAME "SM-G900" +#endif + +static struct cp_thm_adc_table temp_table_batt[] = { + {636, 600}, {659, 590}, {683, 580}, {707, 570}, {730, 560}, + {754, 550}, {782, 540}, {810, 530}, {838, 520}, {866, 510}, + {894, 500}, {924, 490}, {953, 480}, {982, 470}, {1011, 460}, + {1040, 450}, {1077, 440}, {1114, 430}, {1152, 420}, {1189, 410}, + {1227, 400}, {1259, 390}, {1293, 380}, {1326, 370}, {1360, 360}, + {1394, 350}, {1435, 340}, {1476, 330}, {1516, 320}, {1557, 310}, + {1598, 300}, {1642, 290}, {1687, 280}, {1731, 270}, {1776, 260}, + {1820, 250}, {1866, 240}, {1913, 230}, {1961, 220}, {2008, 210}, + {2055, 200}, {2111, 190}, {2166, 180}, {2222, 170}, {2277, 160}, + {2333, 150}, {2382, 140}, {2431, 130}, {2480, 120}, {2529, 110}, + {2578, 100}, {2624, 90}, {2670, 80}, {2717, 70}, {2763, 60}, + {2810, 50}, {2851, 40}, {2892, 30}, {2933, 20}, {2973, 10}, + {3014, 0}, {3056, -10}, {3099, -20}, {3142, -30}, {3185, -40}, + {3229, -50}, {3320, -60}, {3336, -70}, {3352, -80}, {3368, -90}, + {3385, -100}, {3494, -110}, {3509, -120}, {3524, -130}, {3539, -140}, + {3554, -150}, {3614, -160}, {3629, -170}, {3644, -180},{3659, -190}, + {3674, -200} + }; + +static struct cp_thm_adc_table temp_table_chg[] = { + {636, 600}, {659, 590}, {682, 580}, {705, 570}, {728, 560}, + {751, 550}, {779, 540}, {808, 530}, {837, 520}, {866, 510}, + {895, 500}, {924, 490}, {953, 480}, {982, 470}, {1011, 460}, + {1040, 450}, {1077, 440}, {1115, 430}, {1152, 420}, {1189, 410}, + {1227, 400}, {1260, 390}, {1293, 380}, {1326, 370}, {1360, 360}, + {1393, 350}, {1435, 340}, {1477, 330}, {1520, 320}, {1562, 310}, + {1604, 300}, {1648, 290}, {1691, 280}, {1735, 270}, {1778, 260}, + {1822, 250}, {1869, 240}, {1915, 230}, {1962, 220}, {2009, 210}, + {2056, 200}, {2110, 190}, {2164, 180}, {2219, 170}, {2273, 160}, + {2328, 150}, {2379, 140}, {2430, 130}, {2481, 120}, {2532, 110}, + {2584, 100}, {2629, 90}, {2674, 80}, {2719, 70}, {2764, 60}, + {2810, 50}, {2852, 40}, {2895, 30}, {2937, 20}, {2980, 10}, + {3022, 0}, {3063, -10}, {3103, -20}, {3144, -30}, {3184, -40}, + {3225, -50}, {3257, -60}, {3290, -70}, {3322, -80}, {3355, -90}, + {3387, -100}, {3523, -110}, {3532, -120}, {3540, -130}, {3549, -140}, + {3558, -150}, {3654, -160}, {3658, -170}, {3661, -180}, {3664, -190}, + {3667, -200} + }; + +struct qpnp_vadc_chip *ssp_vadc; + +static long ssp_temphumidity_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_data *data + = container_of(file->private_data, + struct ssp_data, shtc1_device); + + void __user *argp = (void __user *)arg; + int retries = 2; + int length = 0; + int ret = 0; + if (data->bulk_buffer == NULL) + return -EINVAL; + + length = data->bulk_buffer->len; + mutex_lock(&data->bulk_temp_read_lock); + switch (cmd) { + case IOCTL_READ_COMPLETE: /* free */ + if(data->bulk_buffer) { + kfree(data->bulk_buffer); + data->bulk_buffer = NULL; + } + length = 1; + break; + + case IOCTL_READ_ADC_BATT_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->batt, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_ADC_CHG_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->chg, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_SHTC1_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->temp, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_HUM_SHTC1_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->humidity, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_BARO_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->baro, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_GYRO_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->gyro, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + default: + pr_err("[SSP] temp ioctl cmd err(%d)", cmd); + ret = EINVAL; + goto ioctl_error; + } + mutex_unlock(&data->bulk_temp_read_lock); + return length; + +ioctl_error: + mutex_unlock(&data->bulk_temp_read_lock); + return -ret; +} + +static struct file_operations ssp_temphumidity_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = ssp_temphumidity_ioctl, +}; + +static int get_cp_thm_value(struct ssp_data *data) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); +#if defined(CONFIG_SEC_HESTIA_PROJECT) + err = qpnp_vadc_read(ssp_vadc, P_MUX5_1_1, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, P_MUX5_1_1, err); + return err; + } +#else + err = qpnp_vadc_read(ssp_vadc, LR_MUX6_PU1_AMUX_THM3, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX6_PU2_AMUX_THM3, err); + return err; + } +#endif + return results.adc_code; + +} + +static int get_cp_thm2_value(struct ssp_data *data) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); +#if defined(CONFIG_SEC_HESTIA_PROJECT) + err = qpnp_vadc_read(ssp_vadc, P_MUX8_1_1, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, P_MUX8_1_1, err); + return err; + } +#else + err = qpnp_vadc_read(ssp_vadc, LR_MUX8_PU1_AMUX_THM4, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX8_PU2_AMUX_THM4, err); + return err; + } +#endif + return results.adc_code; +} + +static int convert_adc_to_temp(struct ssp_data *data, unsigned int adc) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); +#if defined(CONFIG_SEC_HESTIA_PROJECT) + err = qpnp_vadc_read(ssp_vadc, P_MUX5_1_1, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, P_MUX5_1_1, err); + return err; + } +#else + err = qpnp_vadc_read(ssp_vadc, LR_MUX6_PU1_AMUX_THM3, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX6_PU2_AMUX_THM3, err); + return err; + } +#endif + + return results.physical * 10; +} + +static int convert_adc_to_temp2(struct ssp_data *data, unsigned int adc) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); +#if defined(CONFIG_SEC_HESTIA_PROJECT) + err = qpnp_vadc_read(ssp_vadc, P_MUX8_1_1, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, P_MUX8_1_1, err); + return err; + } +#else + err = qpnp_vadc_read(ssp_vadc, LR_MUX8_PU1_AMUX_THM4, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX8_PU2_AMUX_THM4, err); + return err; + } +#endif + return results.physical * 10; +} + +static ssize_t temphumidity_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t temphumidity_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t engine_version_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - engine_ver = %s_%s\n", + __func__, MODEL_NAME, data->comp_engine_ver); + + return sprintf(buf, "%s_%s\n", + MODEL_NAME, data->comp_engine_ver); +} + +static ssize_t engine_version_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + kfree(data->comp_engine_ver); + data->comp_engine_ver = + kzalloc(((strlen(buf)+1) * sizeof(char)), GFP_KERNEL); + strncpy(data->comp_engine_ver, buf, strlen(buf)+1); + pr_info("[SSP] %s - engine_ver = %s, %s\n", + __func__, data->comp_engine_ver, buf); + + return size; +} + +static ssize_t engine_version2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - engine_ver2 = %s_%s\n", + __func__, MODEL_NAME, data->comp_engine_ver2); + + return sprintf(buf, "%s_%s\n", + MODEL_NAME, data->comp_engine_ver2); +} + +static ssize_t engine_version2_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + kfree(data->comp_engine_ver2); + data->comp_engine_ver2 = + kzalloc(((strlen(buf)+1) * sizeof(char)), GFP_KERNEL); + strncpy(data->comp_engine_ver2, buf, strlen(buf)+1); + pr_info("[SSP] %s - engine_ver2 = %s, %s\n", + __func__, data->comp_engine_ver2, buf); + + return size; +} + +static ssize_t pam_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc = 0; + if (data->bSspShutdown == true) { + adc = 0; + goto exit; + } + adc = get_cp_thm_value(data); + /* pr_info("[SSP] %s cp_thm = %dmV\n", __func__, adc); */ +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t pam_adc2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc; + if (data->bSspShutdown == true) { + adc = 0; + goto exit; + } + adc = get_cp_thm2_value(data); + /* pr_info("[SSP] %s cp_thm = %dmV\n", __func__, adc); */ +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t pam_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc, temp; + + adc = get_cp_thm_value(data); + if (adc < 0) { + pr_err("[SSP] %s - reading adc failed.(%d)\n", __func__, adc); + temp = adc; + } else { + temp = convert_adc_to_temp(data, adc); + } + + pr_info("[SSP] %s cp_temperature(Celsius * 10) = %d\n", + __func__, temp); + return sprintf(buf, "%d\n", temp); +} + +static ssize_t pam_temp2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc, temp; + + adc = get_cp_thm_value(data); + if (adc < 0) { + pr_err("[SSP] %s - reading adc failed.(%d)\n", __func__, adc); + temp = adc; + } else { + temp = convert_adc_to_temp2(data, adc); + } + + pr_info("[SSP] %s cp_temperature(Celsius * 10) = %d\n", + __func__, temp); + return sprintf(buf, "%d\n", temp); +} + +s16 get_hub_adc(struct ssp_data *data, u32 chan) { + + s16 adc = -1; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_THERM; + msg->length = 2; + msg->options = AP2HUB_READ; + msg->data = chan; + msg->buffer = (char *) &adc; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return adc; +} + +static ssize_t hub_batt_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + static s16 prev_adc = 1865; + s16 adc; + + if (data->bSspShutdown == true){ + adc = 0; + goto exit; + } + + adc = get_hub_adc(data, ADC_BATT); + + if (adc > 0) + prev_adc = adc; + else + adc = prev_adc; + + pr_info("[SSP]: %s: adc %d\n", __func__, adc); + +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t hub_chg_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + static s16 prev_adc = 1630; + s16 adc; + + if (data->bSspShutdown == true){ + adc = 0; + goto exit; + } + + adc = get_hub_adc(data, ADC_CHG); + + if (adc > 0) + prev_adc = adc; + else + adc = prev_adc; + + pr_info("[SSP]: %s: adc %d\n", __func__, adc); + +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t hub_batt_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int low = 0; + int high = 0; + int mid = 0; + u8 array_size = ARRAY_SIZE(temp_table_batt); + + s16 adc = get_hub_adc(data, ADC_BATT); + high = array_size - 1; + while (low <= high) { + mid = (low + high) / 2; + if (temp_table_batt[mid].adc > adc) + high = mid - 1; + else if (temp_table_batt[mid].adc < adc) + low = mid + 1; + else + break; + } + + pr_info("[SSP]: %s: adc %d\n", __func__, temp_table_batt[mid].temperature); + + return sprintf(buf, "%d\n", temp_table_batt[mid].temperature); + +} + +static ssize_t hub_chg_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int low = 0; + int high = 0; + int mid = 0; + u8 array_size = ARRAY_SIZE(temp_table_chg); + + s16 adc = get_hub_adc(data, ADC_CHG); + high = array_size - 1; + while (low <= high) { + mid = (low + high) / 2; + if (temp_table_chg[mid].adc > adc) + high = mid - 1; + else if (temp_table_chg[mid].adc < adc) + low = mid + 1; + else + break; + } + + pr_info("[SSP]: %s: adc %d\n", __func__, temp_table_chg[mid].temperature); + return sprintf(buf, "%d\n", temp_table_chg[mid].temperature); +} + +static ssize_t temphumidity_crc_check(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf = 0xff; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = TEMPHUMIDITY_CRC_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Temphumidity check crc Timeout!! %d\n", __func__, + iRet); + goto exit; + } + + pr_info("[SSP] : %s -Check_CRC : %d\n", __func__, + chTempBuf); + + exit: + if (chTempBuf == 1) + return sprintf(buf, "%s\n", "OK"); + else if (chTempBuf == 2) + return sprintf(buf, "%s\n", "NG_NC"); + else + return sprintf(buf, "%s\n", "NG"); +} + +ssize_t temphumidity_send_accuracy(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 accuracy; + + if (kstrtou8(buf, 10, &accuracy) < 0) { + pr_err("[SSP] %s - read buf is fail(%s)\n", __func__, buf); + return size; + } + + if (accuracy == DONE_CAL) + ssp_send_cmd(data, MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE, 0); + pr_info("[SSP] %s - accuracy = %d\n", __func__, accuracy); + + return size; +} + +static DEVICE_ATTR(name, S_IRUGO, temphumidity_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, temphumidity_vendor_show, NULL); +static DEVICE_ATTR(engine_ver, S_IRUGO | S_IWUSR | S_IWGRP, + engine_version_show, engine_version_store); +static DEVICE_ATTR(engine_ver2, S_IRUGO | S_IWUSR | S_IWGRP, + engine_version2_show, engine_version2_store); +static DEVICE_ATTR(cp_thm, S_IRUGO, pam_adc_show, NULL); +static DEVICE_ATTR(cp_thm2, S_IRUGO, pam_adc2_show, NULL); +static DEVICE_ATTR(cp_temperature, S_IRUGO, pam_temp_show, NULL); +static DEVICE_ATTR(cp_temperature2, S_IRUGO, pam_temp2_show, NULL); +static DEVICE_ATTR(mcu_batt_adc, S_IRUGO, hub_batt_adc_show, NULL); +static DEVICE_ATTR(mcu_chg_adc, S_IRUGO, hub_chg_adc_show, NULL); +static DEVICE_ATTR(batt_temperature, S_IRUGO, hub_batt_temp_show, NULL); +static DEVICE_ATTR(chg_temperature, S_IRUGO, hub_chg_temp_show, NULL); +static DEVICE_ATTR(crc_check, S_IRUGO, + temphumidity_crc_check, NULL); +static DEVICE_ATTR(send_accuracy, S_IWUSR | S_IWGRP, + NULL, temphumidity_send_accuracy); + +static struct device_attribute *temphumidity_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_engine_ver, + &dev_attr_engine_ver2, + &dev_attr_cp_thm, + &dev_attr_cp_thm2, + &dev_attr_cp_temperature, + &dev_attr_cp_temperature2, + &dev_attr_mcu_batt_adc, + &dev_attr_mcu_chg_adc, + &dev_attr_batt_temperature, + &dev_attr_chg_temperature, + &dev_attr_crc_check, + &dev_attr_send_accuracy, + NULL, +}; + +void initialize_temphumidity_factorytest(struct ssp_data *data) +{ + int ret; + sensors_register(data->temphumidity_device, + data, temphumidity_attrs, "temphumidity_sensor"); + + data->shtc1_device.minor = MISC_DYNAMIC_MINOR; + data->shtc1_device.name = "shtc1_sensor"; + data->shtc1_device.fops = &ssp_temphumidity_fops; + + ret = misc_register(&data->shtc1_device); + if (ret < 0) { + pr_err("register temphumidity misc device err(%d)", ret); + } + + ssp_vadc = qpnp_get_vadc(&data->spi->dev, "temphumidity_sensor"); + + if (IS_ERR(ssp_vadc)) { + ret = PTR_ERR(ssp_vadc); + if (ret != -EPROBE_DEFER) + pr_err("%s: Fail to get vadc %d\n", __func__, ret); + } + +} + +void remove_temphumidity_factorytest(struct ssp_data *data) +{ + if (data->comp_engine_ver != NULL) + kfree(data->comp_engine_ver); + if (data->comp_engine_ver2 != NULL) + kfree(data->comp_engine_ver2); + sensors_unregister(data->temphumidity_device, temphumidity_attrs); + ssp_temphumidity_fops.unlocked_ioctl = NULL; + misc_deregister(&data->shtc1_device); + +} diff --git a/drivers/sensorhub/stm_hestia/factory/uv_uvis25.c b/drivers/sensorhub/stm_hestia/factory/uv_uvis25.c new file mode 100755 index 000000000000..751e5abe108e --- /dev/null +++ b/drivers/sensorhub/stm_hestia/factory/uv_uvis25.c @@ -0,0 +1,62 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "ST" +#define CHIP_ID "UVIS25" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ +static ssize_t uv_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t uv_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t uv_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", data->buf[UV_SENSOR].uv); +} + +static DEVICE_ATTR(vendor, S_IRUGO, uv_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, uv_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, uv_data_show, NULL); + +static struct device_attribute *uv_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + NULL, +}; + +void initialize_uv_factorytest(struct ssp_data *data) +{ + sensors_register(data->uv_device, data, uv_attrs, "uv_sensor"); +} + +void remove_uv_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->uv_device, uv_attrs); +} diff --git a/drivers/sensorhub/stm_hestia/max86900.c b/drivers/sensorhub/stm_hestia/max86900.c new file mode 100755 index 000000000000..fb0b5757a7e1 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/max86900.c @@ -0,0 +1,1686 @@ +/* + * Copyright (c)2013 Maxim Integrated Products, Inc. + * + * This software is licensed under the terms of the GNU General Public + * License, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "max86900.h" +#ifdef CONFIG_OF +#include +#endif +#if defined(HRM_EOL_FREQ_LOCK) +#include +#endif + +#define MAX86900_I2C_RETRY_DELAY 10 +#define MAX86900_I2C_MAX_RETRIES 5 +#define MAX86900_COUNT_MAX 65532 +#define MAX86900_WHOAMI_REG 0xFE +#define MAX86900_WHOAMI 0x01 +#define MAX86900A_WHOAMI 0x11 +#define MAX86900A_REV_ID 0x00 +#define MAX86900B_REV_ID 0x04 +#define MAX86900C_REV_ID 0x05 + +#define MAX86900_DEFAULT_CURRENT 0x55 +#define MAX86900A_DEFAULT_CURRENT 0xFF +#define MAX86900C_DEFAULT_CURRENT 0x0F + +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "MAX86900" +#define VENDOR "MAXIM" +#define HRM_LDO_ON 1 +#define HRM_LDO_OFF 0 +#define MAX_EOL_RESULT 132 +#define MAX_LIB_VER 20 + +#define SAMPLE_RATE 4 + +/* I2C function */ +static int max86900_write_reg(struct max86900_device_data *device, + u8 reg_addr, u8 data) +{ + int err; + int tries = 0; + u8 buffer[2] = { reg_addr, data }; + struct i2c_msg msgs[] = { + { + .addr = device->client->addr, + .flags = device->client->flags & I2C_M_TEN, + .len = 2, + .buf = buffer, + }, + }; + + do { + mutex_lock(&device->i2clock); + err = i2c_transfer(device->client->adapter, msgs, 1); + mutex_unlock(&device->i2clock); + if (err != 1) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + + } while ((err != 1) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 1) { + pr_err("%s -write transfer error\n", __func__); + err = -EIO; + return err; + } + + return 0; +} + +static int max86900_read_reg(struct max86900_device_data *data, + u8 *buffer, int length) +{ + int err = -1; + int tries = 0; /* # of attempts to read the device */ + + struct i2c_msg msgs[] = { + { + .addr = data->client->addr, + .flags = data->client->flags & I2C_M_TEN, + .len = 1, + .buf = buffer, + }, + { + .addr = data->client->addr, + .flags = (data->client->flags & I2C_M_TEN) | I2C_M_RD, + .len = length, + .buf = buffer, + }, + }; + + do { + mutex_lock(&data->i2clock); + err = i2c_transfer(data->client->adapter, msgs, 2); + mutex_unlock(&data->i2clock); + if (err != 2) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 2) { + pr_err("%s -read transfer error\n", __func__); + err = -EIO; + } else + err = 0; + + return err; +} + +/* Device Control */ +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) +void max86900_led_ldo_onoff(struct max86900_device_data *data, int onoff) +{ + /* from hestia rev0.3, this func enable 1.8V & 3.3V */ + if(onoff) { + gpio_set_value_cansleep(data->vdd_en, onoff); + msleep(100); + } + gpio_set_value_cansleep(data->ldo_en, onoff); + if(!onoff) { + msleep(100); + gpio_set_value_cansleep(data->vdd_en, onoff); + } + pr_info("%s - hrm power onoff = %d\n", __func__, onoff); +} +#else +static int max86900_regulator_onoff(struct max86900_device_data *data, int onoff) +{ + data->vdd_1p8 = regulator_get(NULL, data->sub_ldo4); + if (IS_ERR(data->vdd_1p8)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_1p8; + } + +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + data->vdd_3p3 = regulator_get(NULL, data->led_l19); + if (IS_ERR(data->vdd_3p3)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_3p3; + } +#endif + pr_info("%s - onoff = %d\n", __func__, onoff); + + if (onoff == HRM_LDO_ON) { + regulator_set_voltage(data->vdd_1p8, 1800000, 1800000); + regulator_enable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_set_voltage(data->vdd_3p3, 3300000, 3300000); + regulator_enable(data->vdd_3p3); +#endif + } else { + regulator_disable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_disable(data->vdd_3p3); +#endif + } + + regulator_put(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_put(data->vdd_3p3); +#endif + return 0; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) +err_3p3: + regulator_put(data->vdd_1p8); +#endif +err_1p8: + return -ENODEV; +} +#endif /* CONFIG_SENSORS_SSP_STM_HESTIA */ + +static int max86900_init_device(struct max86900_device_data *data) +{ + int err; + u8 recvData; + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error sw shutdown device!\n", __func__); + return -EIO; + } + + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x83); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_INTERRUPT_ENABLE, 0x10); + if (err != 0) { + pr_err("%s - error initializing MAX86900_INTERRUPT_ENABLE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); //400hz 400us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Turn off ALC in case of Max86900A */ + if (data->part_type == PART_TYPE_MAX86900A) { + /* ALC OFF start */ + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x54); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x4D); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_GTST, 0x02); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_GTST!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_ALC, 0x01); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_ALC!\n", + __func__); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x00); + if (err != 0) { + pr_err("%s - error Exiting MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + /* ALC OFF end */ + } + + + pr_info("%s done, part_type = %u\n", __func__, data->part_type); + + return 0; +} + +static int max86900_enable(struct max86900_device_data *data) +{ + int err; + data->led = 0; + data->sample_cnt = 0; + data->ir_sum = 0; + data->r_sum = 0; + + mutex_lock(&data->activelock); + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->default_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + printk("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + enable_irq(data->irq); + mutex_unlock(&data->activelock); + return 0; +} + +static int max86900_disable(struct max86900_device_data *data) +{ + u8 err; + + mutex_lock(&data->activelock); + disable_irq(data->irq); + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x80); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + mutex_unlock(&data->activelock); + + return 0; +} + +static int max86900_read_temperature(struct max86900_device_data *data) +{ + u8 recvData[2] = { 0x00, }; + int err; + + recvData[0] = MAX86900_TEMP_INTEGER; + + err = max86900_read_reg(data, recvData, 2); + if (err != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + data->hrm_temp = ((char)recvData[0]) * 16 + recvData[1]; + + pr_info("%s - %d(%x, %x)\n", __func__, data->hrm_temp, recvData[0], recvData[1]); + + return 0; +} + +static int max86900_eol_test_control(struct max86900_device_data *data) +{ + int err = 0; + u8 led_current = 0; + + if (data->sample_cnt < data->hr_range2) { + data->hr_range = 1; + } else if (data->sample_cnt < (data->hr_range2 + 297)) { + /* Fake pulse */ + if (data->sample_cnt % 8 < 4) { + data->test_current_ir++; + data->test_current_red++; + } else { + data->test_current_ir--; + data->test_current_red--; + } + + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + data->hr_range = 2; + } else if (data->sample_cnt == (data->hr_range2 + 297)) { + /* Measure */ + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 400Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } else if (data->sample_cnt < ((data->hr_range2 + 297) + 400 * 10)) { + data->hr_range = 3; + } else if (data->sample_cnt == ((data->hr_range2 + 297) + 400 * 10)) { + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->default_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 100Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } + data->sample_cnt++; + return 0; +} + +static int max86900_read_data(struct max86900_device_data *device, u16 *data) +{ + u8 err; + u8 recvData[4] = { 0x00, }; + int i; + int ret = 0; + + if (device->sample_cnt == MAX86900_COUNT_MAX) + device->sample_cnt = 0; + + recvData[0] = MAX86900_FIFO_DATA; + if ((err = max86900_read_reg(device, recvData, 4)) != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + + for (i = 0; i < 2; i++) { + data[i] = ((((u16)recvData[i * 2]) << 8 ) & 0xff00) + | ((((u16)recvData[i * 2 + 1])) & 0x00ff); + } + + data[2] = device->led; + + if ((device->sample_cnt % 1000) == 1) + pr_info("%s - %u, %u, %u, %u\n", __func__, + data[0], data[1], data[2], data[3]); + + if (device->sample_cnt == 20 && device->led == 0) { + err = max86900_read_temperature(device); + if (err < 0) { + pr_err("%s - max86900_read_temperature err : %d\n", + __func__, err); + return -EIO; + } + } + + if (device->eol_test_is_enable) { + err = max86900_eol_test_control(device); + if (err < 0) { + pr_err("%s - max86900_eol_test_control err : %d\n", + __func__, err); + return -EIO; + } + } else { + device->ir_sum += data[0]; + device->r_sum += data[1]; + if ((device->sample_cnt % SAMPLE_RATE) == SAMPLE_RATE - 1) { + data[0] = device->ir_sum / SAMPLE_RATE; + data[1] = device->r_sum / SAMPLE_RATE; + device->ir_sum = 0; + device->r_sum = 0; + ret = 0; + } else + ret = 1; + + if (device->sample_cnt++ > 100 && device->led == 0) { + device->led = 1; + } + } + + return ret; +} + +void max86900_mode_enable(struct max86900_device_data *data, int onoff) +{ + int err; + if (onoff) { +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_ON); + usleep_range(1000, 1100); + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d\n", + __func__, err); +#else + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + usleep_range(1000, 1100); + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d\n", + __func__, err); + } +#endif + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + atomic_set(&data->is_enable, 1); + } else { + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) + pr_err("%s max86900_regulator_off fail err = %d\n", + __func__, err); + } +#endif + atomic_set(&data->is_enable, 0); + } + pr_info("%s - part_type = %u, onoff = %d\n", __func__, data->part_type, onoff); +} + +/* sysfs */ +static ssize_t max86900_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", atomic_read(&data->is_enable)); +} + +static ssize_t max86900_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int new_value; + + if (sysfs_streq(buf, "1")) + new_value = 1; + else if (sysfs_streq(buf, "0")) + new_value = 0; + else { + pr_err("%s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_mode_enable(data, new_value); + return count; +} + +static ssize_t max86900_poll_delay_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%lld\n", 10000000LL); +} + +static ssize_t max86900_poll_delay_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + pr_info("%s - max86900 hrm sensor delay was fixed as 10ms\n", __func__); + return size; +} + +static DEVICE_ATTR(enable, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_enable_show, max86900_enable_store); +static DEVICE_ATTR(poll_delay, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_poll_delay_show, max86900_poll_delay_store); + +static struct attribute *hrm_sysfs_attrs[] = { + &dev_attr_enable.attr, + &dev_attr_poll_delay.attr, + NULL +}; + +static struct attribute_group hrm_attribute_group = { + .attrs = hrm_sysfs_attrs, +}; + +/* test sysfs */ +static int max86900_set_led_current(struct max86900_device_data *data) +{ + int err; + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + pr_info("%s - led current = %u\n", __func__, data->led_current); + return 0; +} + +static int max86900_set_hr_range(struct max86900_device_data *data) +{ + pr_info("%s - hr_range = %u(0x%x)\n", __func__, + data->hr_range, data->hr_range); + return 0; +} + +static int max86900_set_hr_range2(struct max86900_device_data *data) +{ + pr_info("%s - hr_range2 = %u\n", __func__, data->hr_range2); + return 0; +} + +static int max86900_set_look_mode_ir(struct max86900_device_data *data) +{ + pr_info("%s - look mode ir = %u\n", __func__, data->look_mode_ir); + return 0; +} + +static int max86900_set_look_mode_red(struct max86900_device_data *data) +{ + pr_info("%s - look mode red = %u\n", __func__, data->look_mode_red); + return 0; +} + +static int max86900_eol_test_enable(struct max86900_device_data *data) +{ + int err; + u8 led_current; + data->led = 1; /* Prevent resetting MAX86900_LED_CONFIGURATION */ + data->sample_cnt = 0; + + pr_info("%s\n", __func__); + mutex_lock(&data->activelock); + /* Test Mode Setting Start */ + data->hr_range = 0; /* Set test phase as 0 */ + data->eol_test_status = 0; + data->test_current_ir = data->look_mode_ir; + data->test_current_red = data->look_mode_red; + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); //100Hz 1600us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Clear FIFO */ + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + /* Shutdown Clear */ + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + mutex_unlock(&data->activelock); + return 0; +} + +static void max86900_eol_test_onoff(struct max86900_device_data *data, int onoff) +{ + int err; + + if (onoff) { +#if defined(HRM_EOL_FREQ_LOCK) + err = set_freq_limit(DVFS_SENSOR_ID, MIN_SENSOR_LIMIT); + if (err < 0) + pr_err("max86900_eol_test_enable Freq Lock Error : %d\n", err); + else + pr_info("%s - min clock limit adapted = %d\n", __func__, + MIN_SENSOR_LIMIT); +#endif + err = max86900_eol_test_enable(data); + data->eol_test_is_enable = 1; + if (err != 0) + pr_err("max86900_eol_test_enable err : %d\n", err); + } else { + pr_info("%s - eol test off\n", __func__); + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); +#if defined(HRM_EOL_FREQ_LOCK) + err = set_freq_limit(DVFS_SENSOR_ID, -1); + if (err < 0) + pr_err("max86900_eol_test_enable Freq Lock OFF Error : %d\n", err); + else + pr_info("%s - min clock limit dismissed.\n", __func__); +#endif + data->hr_range = 0; + data->led_current = data->default_current; + + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d", __func__, err); + + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + data->eol_test_is_enable = 0; + } + pr_info("%s - onoff = %d\n", __func__, onoff); +} + +static int max86900_get_device_id(struct max86900_device_data *data, unsigned long long *device_id) +{ + u8 recvData; + int err; + int low = 0; + int high = 0; + int clock_code = 0; + int VREF_trim_code = 0; + int IREF_trim_code = 0; + int UVL_trim_code = 0; + int SPO2_trim_code = 0; + int ir_led_code = 0; + int red_led_code = 0; + int TS_trim_code = 0; + + if (!atomic_read(&data->is_enable)) { + pr_info("%s - regulator on\n", __func__); +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_ON); +#else + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + return -EIO; + } +#endif + usleep_range(1000, 1100); + } + + *device_id = 0; + + err = max86900_write_reg(data, 0xFF, 0x54); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_TEST0!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, 0xFF, 0x4d); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_TEST1!\n", + __func__); + return -EIO; + } + + recvData = 0x8B; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + high = recvData; + + recvData = 0x8C; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + low = recvData; + + recvData = 0x88; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + clock_code = recvData; + + recvData = 0x89; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + VREF_trim_code = recvData & 0x0F; + + recvData = 0x8A; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + IREF_trim_code = (recvData >> 4) & 0x0F; + UVL_trim_code = recvData & 0x0F; + + recvData = 0x90; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + SPO2_trim_code = recvData & 0x7F; + + recvData = 0x98; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + ir_led_code = (recvData >> 4) & 0x0F; + red_led_code = recvData & 0x0F; + + recvData = 0x9D; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + TS_trim_code = recvData; + + err = max86900_write_reg(data, 0xFF, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_TEST0!\n", + __func__); + return -EIO; + } + + + if (!atomic_read(&data->is_enable)) { + pr_info("%s - regulator off\n", __func__); +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) { + pr_err("%s max86900_regulator_off fail err = %d\n", + __func__, err); + return -EIO; + } +#endif + } + + *device_id = clock_code * 16 + VREF_trim_code; + *device_id = *device_id * 16 + IREF_trim_code; + *device_id = *device_id * 16 + UVL_trim_code; + *device_id = *device_id * 128 + SPO2_trim_code; + *device_id = *device_id * 64 + ir_led_code; + *device_id = *device_id * 64 + red_led_code; + *device_id = *device_id * 16 + TS_trim_code; + + pr_info("%s - Device ID = %lld\n", __func__, *device_id); + + return 0; +} + +static ssize_t max86900_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t max86900_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t led_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->led_current); + if (err < 0) + return err; + + err = max86900_set_led_current(data); + if (err < 0) + return err; + + data->default_current = data->led_current; + + return size; +} + +static ssize_t led_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - led_current = %u\n", __func__, data->led_current); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->led_current); +} + +static ssize_t hr_range_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range); + if (err < 0) + return err; + + err = max86900_set_hr_range(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range = %x\n", __func__, data->hr_range); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range); +} + +static ssize_t hr_range2_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range2); + if (err < 0) + return err; + + err = max86900_set_hr_range2(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range2 = %x\n", __func__, data->hr_range2); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range2); +} + +static ssize_t look_mode_ir_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_ir); + if (err < 0) + return err; + + err = max86900_set_look_mode_ir(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_ir_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_ir = %x\n", __func__, data->look_mode_ir); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_ir); +} + +static ssize_t look_mode_red_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_red); + if (err < 0) + return err; + + err = max86900_set_look_mode_red(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_red_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_red = %x\n", __func__, data->look_mode_red); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_red); +} + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int test_onoff; + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + test_onoff = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + test_onoff = 0; + else { + pr_debug("max86900_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_eol_test_onoff(data, test_onoff); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (data->eol_test_result != NULL) + kfree(data->eol_test_result); + + data->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->eol_test_result == NULL) { + pr_err("max86900_%s - couldn't allocate memory\n", + __func__); + return -ENOMEM; + } + strncpy(data->eol_test_result, buf, buf_len); + pr_info("max86900_%s - result = %s, buf_len(%u)\n", __func__, data->eol_test_result, buf_len); + data->eol_test_status = 1; + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->eol_test_result == NULL) { + pr_info("max86900_%s - data->eol_test_result is NULL\n", __func__); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("max86900_%s - result = %s\n", __func__, data->eol_test_result); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", data->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_status); +} + +static ssize_t int_pin_check(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int err = -1; + int pin_state = -1; + u8 recvData; + + /* DEVICE Power-up */ +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_ON); +#else + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("max86900_%s - regulator on fail\n", __func__); + goto exit; + } +#endif + usleep_range(1000, 1100); + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (pin_state) { + pr_err("max86900_%s - INT pin state is high before INT clear\n", __func__); + err = -1; +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + max86900_regulator_onoff(data, HRM_LDO_OFF); +#endif + goto exit; + } + + pr_info("max86900_%s - Before INT clear %d\n", __func__, pin_state); + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("max86900_%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + max86900_regulator_onoff(data, HRM_LDO_OFF); +#endif + goto exit; + } + + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (!pin_state) { + pr_err("max86900_%s - INT pin state is low after INT clear\n", __func__); + err = -1; +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + max86900_regulator_onoff(data, HRM_LDO_OFF); +#endif + goto exit; + } + pr_info("max86900_%s - After INT clear %d\n", __func__, pin_state); + +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + err = max86900_regulator_onoff(data, HRM_LDO_OFF); +#endif + if (err < 0) + pr_err("max86900_%s - regulator off fail\n", __func__); + + pr_info("max86900_%s - success\n", __func__); +exit: + return snprintf(buf, PAGE_SIZE, "%d\n", err); +} + +static ssize_t max86900_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (data->lib_ver != NULL) + kfree(data->lib_ver); + + data->lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(data->lib_ver, buf, buf_len); + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return size; +} + +static ssize_t max86900_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->lib_ver == NULL) { + pr_info("%s - data->lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", data->lib_ver); +} + +static ssize_t device_id_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned long long device_id = 0; + max86900_get_device_id(data, &device_id); + return snprintf(buf, PAGE_SIZE, "%lld\n", device_id); +} + +static DEVICE_ATTR(name, S_IRUGO, max86900_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, max86900_vendor_show, NULL); +static DEVICE_ATTR(led_current, S_IRUGO | S_IWUSR | S_IWGRP, + led_current_show, led_current_store); +static DEVICE_ATTR(hr_range, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range_show, hr_range_store); +static DEVICE_ATTR(hr_range2, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range2_show, hr_range2_store); +static DEVICE_ATTR(look_mode_ir, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_ir_show, look_mode_ir_store); +static DEVICE_ATTR(look_mode_red, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_red_show, look_mode_red_store); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(int_pin_check, S_IRUGO, int_pin_check, NULL); +static DEVICE_ATTR(lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + max86900_lib_ver_show, max86900_lib_ver_store); +static DEVICE_ATTR(device_id, S_IRUGO, device_id_show, NULL); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_led_current, + &dev_attr_hr_range, + &dev_attr_hr_range2, + &dev_attr_look_mode_ir, + &dev_attr_look_mode_red, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_int_pin_check, + &dev_attr_lib_ver, + &dev_attr_device_id, + NULL, +}; + +irqreturn_t max86900_irq_handler(int irq, void *device) +{ + int err; + struct max86900_device_data *data = device; + u16 raw_data[4] = {0x00, }; + + err = max86900_read_data(data, raw_data); + if (err < 0) + pr_err("max86900_read_data err : %d\n", err); + + if (err == 0) { + input_report_rel(data->hrm_input_dev, REL_X, raw_data[0] + 1); /* IR */ + input_report_rel(data->hrm_input_dev, REL_Y, raw_data[1] + 1); /* RED */ + input_report_rel(data->hrm_input_dev, REL_Z, data->hrm_temp + 1); + input_sync(data->hrm_input_dev); + } + + return IRQ_HANDLED; +} + + +#if defined(CONFIG_MACH_KLTE_KDI) +extern unsigned int system_rev; +#endif + + +static int max86900_parse_dt(struct max86900_device_data *data, + struct device *dev) +{ + struct device_node *dNode = dev->of_node; + enum of_gpio_flags flags; + + if (dNode == NULL) + return -ENODEV; +#if defined(CONFIG_MACH_KLTE_KDI) + if(system_rev==11) + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-kdi-gpio", 0, &flags); + else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#endif + if (data->hrm_int < 0) { + pr_err("%s - get hrm_int error\n", __func__); + return -ENODEV; + } +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + data->ldo_en = of_get_named_gpio_flags(dNode, + "max86900,led_en-gpio", 0, &flags); + gpio_request(data->ldo_en, "HRM_LDO_EN"); + gpio_direction_output(data->ldo_en, 0); + + data->vdd_en = of_get_named_gpio_flags(dNode, + "max86900,hrm_vdd-gpio", 0, &flags); + gpio_request(data->vdd_en, "HRM_VDD_EN"); + gpio_direction_output(data->vdd_en, 0); +#else + if (of_property_read_string(dNode, "max86900,sub_ldo4", &data->sub_ldo4) < 0) + pr_err("%s - get sub_ldo4 error\n", __func__); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + if (of_property_read_string(dNode, "max86900,led_l19", &data->led_l19) < 0) + pr_err("%s - get led_l19 error\n", __func__); +#endif +#endif /* CONFIG_SENSORS_SSP_STM_HESTIA */ + return 0; +} + +static int max86900_gpio_setup(struct max86900_device_data *data) +{ + int errorno = -EIO; + + errorno = gpio_request(data->hrm_int, "hrm_int"); + if (errorno) { + pr_err("%s - failed to request hrm_int\n", __func__); + return errorno; + } + + errorno = gpio_direction_input(data->hrm_int); + if (errorno) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_gpio_direction_input; + } + + data->irq = gpio_to_irq(data->hrm_int); + + errorno = request_threaded_irq(data->irq, NULL, + max86900_irq_handler, IRQF_TRIGGER_FALLING, + "hrm_sensor_irq", data); + + if (errorno < 0) { + pr_err("%s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, data->irq, data->hrm_int, errorno); + errorno = -ENODEV; + goto err_request_irq; + } + + disable_irq(data->irq); + goto done; +err_request_irq: +err_gpio_direction_input: + gpio_free(data->hrm_int); +done: + return errorno; +} + +int max86900_probe(struct i2c_client *client, const struct i2c_device_id *id ) +{ + int err = -ENODEV; + u8 buffer[2] = {0, }; + + struct max86900_device_data *data; + + /* check to make sure that the adapter supports I2C */ + if (!i2c_check_functionality(client->adapter,I2C_FUNC_I2C)) { + pr_err("%s - I2C_FUNC_I2C not supported\n", __func__); + return -ENODEV; + } + + /* allocate some memory for the device */ + data = kzalloc(sizeof(struct max86900_device_data), GFP_KERNEL); + if (data == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + + data->client = client; + i2c_set_clientdata(client, data); + + mutex_init(&data->i2clock); + mutex_init(&data->activelock); + + data->dev = &client->dev; + + pr_info("%s - start \n", __func__); + + data->hr_range = 0; + + err = max86900_parse_dt(data, &client->dev); + if (err < 0) { + pr_err("[SENSOR] %s - of_node error\n", __func__); + err = -ENODEV; + goto err_of_node; + } + +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_ON); +#else + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + goto err_of_node; + } + } +#endif + usleep_range(1000, 1100); + + data->client->addr = MAX86900A_SLAVE_ADDR; + + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (buffer[1] == MAX86900A_WHOAMI) { + /* MAX86900A & MAX86900B */ + switch(buffer[0]) { + case MAX86900A_REV_ID: + data->part_type = PART_TYPE_MAX86900A; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900B_REV_ID: + data->part_type = PART_TYPE_MAX86900B; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900C_REV_ID: + data->part_type = PART_TYPE_MAX86900C; + data->default_current = MAX86900C_DEFAULT_CURRENT; + break; + default: + pr_err("%s WHOAMI read error : REV ID : 0x%02x\n", + __func__, buffer[0]); + err = -ENODEV; + goto err_of_read_chipid; + } + pr_info("%s - MAX86900 OS21(0x%X), REV ID : 0x%02x\n", + __func__, MAX86900A_SLAVE_ADDR, buffer[0]); + } else { + /* MAX86900 */ + data->client->addr = MAX86900_SLAVE_ADDR; + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (err) { + pr_err("%s WHOAMI read fail\n", __func__); + err = -ENODEV; + goto err_of_read_chipid; + } + data->part_type = PART_TYPE_MAX86900; + data->default_current = MAX86900_DEFAULT_CURRENT; + pr_info("%s - MAX86900 OS20 (0x%X)\n", __func__, + MAX86900_SLAVE_ADDR); + } + + data->led_current = data->default_current; + + /* allocate input device */ + data->hrm_input_dev = input_allocate_device(); + if (!data->hrm_input_dev) { + pr_err("%s - could not allocate input device\n", + __func__); + goto err_input_allocate_device; + } + + input_set_drvdata(data->hrm_input_dev, data); + data->hrm_input_dev->name = MODULE_NAME_HRM; + input_set_capability(data->hrm_input_dev, EV_REL, REL_X); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Y); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Z); + + err = input_register_device(data->hrm_input_dev); + if (err < 0) { + input_free_device(data->hrm_input_dev); + pr_err("%s - could not register input device\n", __func__); + goto err_input_register_device; + } + + err = sensors_create_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); + if (err < 0) { + pr_err("%s - create_symlink error\n", __func__); + goto err_sensors_create_symlink; + } + + err = sysfs_create_group(&data->hrm_input_dev->dev.kobj, + &hrm_attribute_group); + if (err) { + pr_err("[SENSOR] %s - could not create sysfs group\n", + __func__); + goto err_sysfs_create_group; + } + + err = max86900_gpio_setup(data); + if (err) { + pr_err("[SENSOR] %s - could not setup gpio\n", __func__); + goto err_setup_gpio; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(data->dev, data, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + err = max86900_init_device(data); + if (err) { + pr_err("%s max86900_init device fail err = %d", __func__, err); + goto max86900_init_device_failed; + } + + err = dev_set_drvdata(data->dev, data); + if (err) { + pr_err("%s dev_set_drvdata fail err = %d", __func__, err); + goto dev_set_drvdata_failed; + } + +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) { + pr_err("%s max86900_regulator_off fail(%d, %d)\n", + __func__, err, HRM_LDO_OFF); + goto dev_set_drvdata_failed; + } + } +#endif + pr_info("%s success\n", __func__); + goto done; + +dev_set_drvdata_failed: +max86900_init_device_failed: + sensors_unregister(data->dev, hrm_sensor_attrs); +hrm_sensor_register_failed: + gpio_free(data->hrm_int); +err_setup_gpio: +err_sysfs_create_group: + sensors_remove_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); +err_sensors_create_symlink: + input_unregister_device(data->hrm_input_dev); +err_input_register_device: +err_input_allocate_device: +err_of_read_chipid: +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + max86900_led_ldo_onoff(data, HRM_LDO_OFF); +#else + max86900_regulator_onoff(data, HRM_LDO_OFF); +#endif +err_of_node: + mutex_destroy(&data->i2clock); + mutex_destroy(&data->activelock); + kfree(data); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/* + * Remove function for this I2C driver. + */ +int max86900_remove(struct i2c_client *client) +{ + pr_info("%s\n", __func__); + free_irq(client->irq, NULL); + return 0; +} + +static void max86900_shutdown(struct i2c_client *client) +{ + pr_info("%s\n", __func__); +} + +static int max86900_pm_suspend(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_enable)) { + max86900_mode_enable(data, HRM_LDO_OFF); + atomic_set(&data->is_suspend, 1); + } + pr_info("%s\n", __func__); + return 0; +} + +static int max86900_pm_resume(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_suspend)) { + max86900_mode_enable(data, HRM_LDO_ON); + atomic_set(&data->is_suspend, 0); + } + pr_info("%s\n", __func__); + return 0; +} + +static const struct dev_pm_ops max86900_pm_ops = { + .suspend = max86900_pm_suspend, + .resume = max86900_pm_resume +}; + +static struct of_device_id max86900_match_table[] = { + { .compatible = "max86900",}, + {}, +}; + +static const struct i2c_device_id max86900_device_id[] = { + { "max86900_match_table", 0 }, + { } +}; +/* descriptor of the max86900 I2C driver */ +static struct i2c_driver max86900_i2c_driver = +{ + .driver = { + .name = CHIP_NAME, + .owner = THIS_MODULE, + .pm = &max86900_pm_ops, + .of_match_table = max86900_match_table, + }, + .probe = max86900_probe, + .shutdown = max86900_shutdown, + .remove = max86900_remove, + .id_table = max86900_device_id, +}; + +/* initialization and exit functions */ +static int __init max86900_init(void) +{ + return i2c_add_driver(&max86900_i2c_driver); +} + +static void __exit max86900_exit(void) +{ + i2c_del_driver(&max86900_i2c_driver); +} + +module_init(max86900_init); +module_exit(max86900_exit); + +MODULE_DESCRIPTION("max86900 Driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_hestia/max86900.h b/drivers/sensorhub/stm_hestia/max86900.h new file mode 100755 index 000000000000..1e72e8258002 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/max86900.h @@ -0,0 +1,131 @@ +#ifndef _MAX86900_H_ +#define _MAX86900_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#define MAX86900_DEBUG +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) +#define HRM_EOL_FREQ_LOCK +#endif + +#define MAX86900_SLAVE_ADDR 0x51 +#define MAX86900A_SLAVE_ADDR 0x57 + +//MAX86900 Registers +#define MAX86900_INTERRUPT_STATUS 0x00 +#define MAX86900_INTERRUPT_ENABLE 0x01 + +#define MAX86900_FIFO_WRITE_POINTER 0x02 +#define MAX86900_OVF_COUNTER 0x03 +#define MAX86900_FIFO_READ_POINTER 0x04 +#define MAX86900_FIFO_DATA 0x05 +#define MAX86900_MODE_CONFIGURATION 0x06 +#define MAX86900_SPO2_CONFIGURATION 0x07 +#define MAX86900_LED_CONFIGURATION 0x09 +#define MAX86900_TEMP_INTEGER 0x16 +#define MAX86900_TEMP_FRACTION 0x17 + + +//Self Test +#define MAX86900_TEST_MODE 0xFF +#define MAX86900_TEST_GTST 0x80 +#define MAX86900_TEST_ENABLE_IDAC 0x81 +#define MAX86900_TEST_ENABLE_PLETH 0x82 +#define MAX86900_TEST_ALC 0x8F +#define MAX86900_TEST_ROUTE_MODULATOR 0x97 +#define MAX86900_TEST_LOOK_MODE_RED 0x98 +#define MAX86900_TEST_LOOK_MODE_IR 0x99 +#define MAX86900_TEST_IDAC_GAIN 0x9C + + +#define MAX86900_FIFO_SIZE 16 + +typedef enum _PART_TYPE +{ + PART_TYPE_MAX86900 = 0, + PART_TYPE_MAX86900A, + PART_TYPE_MAX86900B, + PART_TYPE_MAX86900C, +} PART_TYPE; + +struct max86900_platform_data +{ + int (*init)(void); + int (*deinit)(void); +}; + +struct max86900_device_data +{ + struct i2c_client *client; // represents the slave device + struct device *dev; + struct input_dev *hrm_input_dev; + struct mutex i2clock; + struct mutex activelock; +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + int ldo_en; + int vdd_en; +#else + struct regulator *vdd_1p8; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + struct regulator *vdd_3p3; +#endif + const char *sub_ldo4; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + const char *led_l19; +#endif +#endif /* CONFIG_SENSORS_SSP_STM_HESTIA */ + bool *bio_status; + atomic_t is_enable; + atomic_t is_suspend; + u8 led_current; + u8 hr_range; + u8 hr_range2; + u8 look_mode_ir; + u8 look_mode_red; + u8 eol_test_is_enable; + u8 part_type; + u8 default_current; + u8 test_current_ir; + u8 test_current_red; + u8 eol_test_status; + u16 led; + u16 sample_cnt; + int hrm_int; + int irq; + int hrm_temp; + char *eol_test_result; + char *lib_ver; + int ir_sum; + int r_sum; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif + diff --git a/drivers/sensorhub/stm_hestia/mlx90615.c b/drivers/sensorhub/stm_hestia/mlx90615.c new file mode 100755 index 000000000000..9ddf329f17dd --- /dev/null +++ b/drivers/sensorhub/stm_hestia/mlx90615.c @@ -0,0 +1,789 @@ +/* driver/sensor/mlx90615.c + * Copyright (c) 2011 SAMSUNG + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define VENDOR "MELEXIS" +#define CHIP_ID "MLX90615" + +#define I2C_M_WR 0 /* for i2c Write */ +#define I2c_M_RD 1 /* for i2c Read */ + +#define RAM_REG_RAW_IR 0x25 +#define RAM_REG_T_AMBIENT 0x26 +#define RAM_REG_T_OUT 0x27 + +#define ROM_REG_I2C_ADDR 0x10 +#define ROM_REG_CONFIG 0x12 +#define ROM_REG_EMISSIVITY 0x13 +#define ROM_REG_ID_NUMBER 0x1E + +#define REG_SLEEP 0xff + +#define DEFAULT_DELAY 210 + +#define I2C_READ 0x01 +#define I2C_WRITE 0x00 + +#define EVENT_TYPE_AMBIENT_TEMP REL_HWHEEL +#define EVENT_TYPE_OBJECT_TEMP REL_DIAL + +#define MLX90615_CMD_LENGTH 2 + +#define TEMPERATURE_OFFSET 0 + +#define ARRAY_DEPTH 7 + +struct mlx90615_data { + struct i2c_client *i2c_client; + struct input_dev *input; + struct mutex power_lock; + struct mutex read_lock; + struct hrtimer timer; + struct workqueue_struct *mlx90615_wq; + struct work_struct work_mlx90615; + struct device *mlx90615_dev; + ktime_t poll_delay; + u8 enabled; + int ambient_temp; + int object_temp; + u32 scl; + u32 sda; + u32 power; + int always_on; + int amb[ARRAY_DEPTH], obj[ARRAY_DEPTH]; + int index; +}; + +static inline void setsda(struct mlx90615_data *data, int state) +{ + if (state) + gpio_direction_input(data->sda); + else + gpio_direction_output(data->sda, 0); +} + +static inline void setscl(struct mlx90615_data *data, int state) +{ + if (state) + gpio_direction_output(data->scl, 1); + else + gpio_direction_output(data->scl, 0); +} + +static int mlx90615_power_parse_dt(struct device *dev, + struct mlx90615_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + + data->power = of_get_named_gpio_flags(np, "mlx90615,power", + 0, &flags); + if (data->power < 0) { + errorno = data->power; + pr_err("[BODYTEMP] %s: mlx90615,power\n", __func__); + goto dt_exit; + } + + errorno = gpio_request(data->power, "MLX9061_POWER"); + if (errorno) { + pr_err("[BODYTEMP] %s: failed to request EN PIN for MLX90615\n", + __func__); + goto dt_exit; + } + + errorno = gpio_direction_output(data->power, 0); + if (errorno) { + pr_err("[BODYTEMP] %s: failed to set ENABLE PIN as input\n", + __func__); + goto dt_exit; + } + + return 0; + +dt_exit: + return errorno; +} + +static int mlx90615_i2c_read_word(struct mlx90615_data *mlx90615, u8 command, + s32 *val) +{ + int err = 0; + struct i2c_client *client = mlx90615->i2c_client; + struct i2c_msg msg[2]; + unsigned char data[3] = {0,}; + s32 value = 0; + + if ((client == NULL) || (!client->adapter)) + return -ENODEV; + + /* send slave address & command */ + msg[0].addr = client->addr; + msg[0].flags = I2C_M_WR; + msg[0].len = 1; + msg[0].buf = &command; + + /* read word data */ + msg[1].addr = client->addr; + msg[1].flags = I2C_M_RD; + msg[1].len = 3; + msg[1].buf = data; + + err = i2c_transfer(client->adapter, msg, 2); + + if (err >= 0) { + if(data[2] == 0xff) { + pr_err("[BODYTEMP] %s : crc error detect", __func__); + return -EINVAL; + } else { + value = (s32)data[1]; + *val= (value << 8) | (s32)data[0]; + } + } else + pr_err("[BODYTEMP] %s, i2c transfer error ret=%d\n", + __func__, err); + + return err; +} + +static void mlx90615_set_power(struct mlx90615_data *mlx90615, int onoff) +{ + pr_info("[BODYTEMP] %s : %s\n", __func__, (onoff)?"ON":"OFF"); + + if (onoff) { + setscl(mlx90615, 1); + + if (mlx90615->power > 0) + gpio_set_value(mlx90615->power, 1); + else { + mlx90615_power_parse_dt(&mlx90615->i2c_client->dev, + mlx90615); + } + udelay(100); + setscl(mlx90615, 0); + msleep(50); + setscl(mlx90615, 1); + msleep(20); + } else + if (mlx90615->power > 0) + gpio_set_value(mlx90615->power, 0); +} + + +static void mlx90615_convert(s32 kalvin, int *real, int* frac) +{ + int temperature; + + temperature = (kalvin * 2) - 27315; + *real = temperature / 100; + *frac = temperature % 100; +} + +static int mlx90615_read_data(struct mlx90615_data *mlx90615, + int *tar, int *taf, int *tor, int *tof) +{ + static s32 object; + static s32 ambient; + s32 ret; + u8 cmd; + + if (mlx90615->always_on == 0) + mlx90615_set_power(mlx90615, 1); + + cmd = RAM_REG_T_AMBIENT; + ret = mlx90615_i2c_read_word(mlx90615, cmd, &ambient); +// ret = i2c_smbus_read_word_data(mlx90615->i2c_client, cmd); + + if (ret < 0) + pr_info("[BODYTEMP] %s : ambient temp read fail %d\n", + __func__, ret); + + mlx90615_convert(ambient, tar, taf); + + cmd = RAM_REG_T_OUT; + ret = mlx90615_i2c_read_word(mlx90615, cmd, &object); +// ret = i2c_smbus_read_word_data(mlx90615->i2c_client, cmd); + + if (ret < 0) + pr_info("[BODYTEMP] %s : object temp read fail %d\n", + __func__, ret); + + mlx90615_convert(object, tor, tof); + + if (mlx90615->always_on == 0) + mlx90615_set_power(mlx90615, 0); + + return 0; +} + +static void mlx90615_enable(struct mlx90615_data *mlx90615) +{ + int i; + /* enable setting */ + pr_info("[BODYTEMP] %s: starting poll timer, delay %lldns\n", + __func__, ktime_to_ns(mlx90615->poll_delay)); + +/* + if (ktime_to_ms(mlx90615->poll_delay) < 200) { + pr_info("%s : power always on mode\n", __func__); + mlx90615->always_on = 1; + mlx90615_set_power(mlx90615, 1); + } else { + pr_info("%s : power on/off mode\n", __func__); + mlx90615->always_on = 0; + mlx90615_set_power(mlx90615, 0); + } +*/ + mlx90615->always_on = 1; + mlx90615_set_power(mlx90615, 1); + + mlx90615->index = 0; + for (i = 0 ; i < 5 ; i++) { + mlx90615->amb[i] = 0; + mlx90615->obj[i] = 0; + } + + hrtimer_start(&mlx90615->timer, mlx90615->poll_delay, + HRTIMER_MODE_REL); +} + +static void mlx90615_disable(struct mlx90615_data *mlx90615) +{ + /* disable setting */ + pr_info("[BODYTEMP] %s: cancelling poll timer\n", __func__); + mlx90615->always_on = 0; + mlx90615_set_power(mlx90615, 0); + hrtimer_cancel(&mlx90615->timer); + cancel_work_sync(&mlx90615->work_mlx90615); +} + +/* sysfs */ +static ssize_t poll_delay_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + return sprintf(buf, "%lld\n", ktime_to_ns(mlx90615->poll_delay)); +} + +static ssize_t poll_delay_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + int64_t new_delay; + int err; + pr_info("[BODYTEMP] %s : %s\n", __func__, buf); + err = strict_strtoll(buf, 10, &new_delay); + if (err < 0) + return err; + + mutex_lock(&mlx90615->power_lock); + if (new_delay != ktime_to_ns(mlx90615->poll_delay)) { +#if 0 + if (new_delay < ktime_to_ns(mlx90615->poll_delay)) + mlx90615->poll_delay = + ns_to_ktime(DEFAULT_DELAY * NSEC_PER_MSEC); + else +#endif + mlx90615->poll_delay = ns_to_ktime(new_delay); + if (mlx90615->enabled) { + mlx90615_disable(mlx90615); + mlx90615_enable(mlx90615); + } + pr_info("[BODYTEMP] %s, poll_delay = %lld\n", + __func__, new_delay); + } + mutex_unlock(&mlx90615->power_lock); + + return size; +} + +static ssize_t mlx90615_enable_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + bool new_value; + + if (sysfs_streq(buf, "1")) + new_value = true; + else if (sysfs_streq(buf, "0")) + new_value = false; + else { + pr_err("[BODYTEMP] %s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + mutex_lock(&mlx90615->power_lock); + pr_info("[BODYTEMP] %s: new_value = %d\n", __func__, new_value); + if (new_value && !mlx90615->enabled) { + mlx90615->enabled = 1; + mlx90615_enable(mlx90615); + } else if (!new_value && mlx90615->enabled) { + mlx90615_disable(mlx90615); + mlx90615->enabled = 0; + } + mutex_unlock(&mlx90615->power_lock); + + return size; +} + +static ssize_t mlx90615_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", mlx90615->enabled); +} + +static ssize_t mlx90615_raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + int tar = 0, taf = 0, tor = 0, tof = 0; + + mutex_lock(&mlx90615->read_lock); + mlx90615_read_data(mlx90615, &tar, &taf, &tor, &tof); + mutex_unlock(&mlx90615->read_lock); + + return sprintf(buf, "%d.%02d,%d.%02d\n", tar,taf,tor,tof); +} + +static DEVICE_ATTR(raw_data, S_IRUGO, mlx90615_raw_data_show, NULL); +static DEVICE_ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + poll_delay_show, poll_delay_store); + +/* sysfs for vendor & name */ +static ssize_t mlx90615_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t mlx90615_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static DEVICE_ATTR(vendor, 0644, mlx90615_vendor_show, NULL); +static DEVICE_ATTR(name, 0644, mlx90615_name_show, NULL); + +static struct device_attribute dev_attr_enable = +__ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + mlx90615_enable_show, mlx90615_enable_store); + +static struct attribute *mlx90615_sysfs_attrs[] = { + &dev_attr_enable.attr, + &dev_attr_poll_delay.attr, + NULL +}; + +static struct attribute_group mlx90615_attribute_group = { + .attrs = mlx90615_sysfs_attrs, +}; + +static struct device_attribute *bodytemp_sensor_attrs[] = { + &dev_attr_raw_data, + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_enable, + &dev_attr_poll_delay, + NULL, +}; + +/* This function is for mlx90615 sensor. It operates every a few seconds. + * It asks for work to be done on a thread because i2c needs a thread + * context (slow and blocking) and then reschedules the timer to run again. + */ +static enum hrtimer_restart timer_func(struct hrtimer *timer) +{ + struct mlx90615_data *mlx90615 + = container_of(timer, struct mlx90615_data, timer); + + queue_work(mlx90615->mlx90615_wq, &mlx90615->work_mlx90615); + hrtimer_forward_now(&mlx90615->timer, mlx90615->poll_delay); + + return HRTIMER_RESTART; +} + +static void mlx90615_work_func(struct work_struct *work) +{ + struct mlx90615_data *mlx90615 = container_of(work, struct mlx90615_data, + work_mlx90615); + int tar = 0, taf = 0, tor = 0, tof = 0; + int ambient, object; + int amb_min = 80000, obj_min = 80000; + int amb_max = -1, obj_max = -1; + int index; + int i, total_a = 0, total_o = 0; + + mutex_lock(&mlx90615->read_lock); + mlx90615_read_data(mlx90615, &tar, &taf, &tor, &tof); + mutex_unlock(&mlx90615->read_lock); + + ambient = tar * 100 + taf + TEMPERATURE_OFFSET; + object = tor * 100 + tof + TEMPERATURE_OFFSET; + + index = mlx90615->index; + mlx90615->amb[index] = ambient; + mlx90615->obj[index] = object; + + index++; + + mlx90615->index = index % ARRAY_DEPTH; + + for ( i = 0 ; i < ARRAY_DEPTH ; i++) { + total_a += mlx90615->amb[i]; + total_o += mlx90615->obj[i]; + + if (mlx90615->amb[i] <= amb_min) + amb_min = mlx90615->amb[i]; + if (mlx90615->amb[i] >= amb_max) + amb_max = mlx90615->amb[i]; + + if (mlx90615->obj[i] <= obj_min) + obj_min = mlx90615->obj[i]; + if (mlx90615->obj[i] >= obj_max) + obj_max = mlx90615->obj[i]; + } + + total_a = total_a - amb_min - amb_max; + total_o = total_o - obj_min - obj_max; + + mlx90615->ambient_temp = total_a / (ARRAY_DEPTH - 2); + mlx90615->object_temp = total_o / (ARRAY_DEPTH - 2); + + input_report_rel(mlx90615->input, EVENT_TYPE_AMBIENT_TEMP, + mlx90615->ambient_temp + 27315); + input_report_rel(mlx90615->input, EVENT_TYPE_OBJECT_TEMP, + mlx90615->object_temp + 27315); + + input_sync(mlx90615->input); + + pr_info("[BODYTEMP] %s: ambient = %d.%02d C object = %d.%02d C\n", + __func__, tar, taf, tor, tof); +} + +static int mlx90615_parse_dt(struct device *dev, struct mlx90615_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + + pr_info("[BODYTEMP] %s : mlx90615,scl\n", __func__); + data->scl = of_get_named_gpio_flags(np, "mlx90615,scl", + 0, &flags); + if (data->scl < 0) { + errorno = data->scl; + pr_err("[BODYTEMP] %s: mlx90615,scl\n", __func__); + goto dt_exit; + } + + pr_info("[BODYTEMP] %s : mlx90615,sda\n", __func__); + data->sda = of_get_named_gpio_flags(np, "mlx90615,sda", + 0, &flags); + if (data->sda < 0) { + errorno = data->sda; + pr_err("[BODYTEMP] %s: mlx90615,sda\n", __func__); + goto dt_exit; + } + + pr_info("[BODYTEMP] %s : mlx90615,power\n", __func__); + data->power = of_get_named_gpio_flags(np, "mlx90615,power", + 0, &flags); + if (data->power < 0) { + errorno = data->power; + pr_err("[BODYTEMP] %s: mlx90615,power\n", __func__); + goto dt_exit; + } + + errorno = gpio_request(data->power, "MLX9061_POWER"); + if (errorno) { + pr_err("[BODYTEMP] %s: failed to request ENABLE PIN\n", + __func__); + goto dt_exit; + } + + errorno = gpio_direction_output(data->power, 0); + if (errorno) { + pr_err("[BODYTEMP] %s: failed to set ENABLE PIN as input\n", + __func__); + goto dt_exit; + } + + return 0; + +dt_exit: + return errorno; +} + +static int mlx90615_i2c_probe(struct i2c_client *client, + const struct i2c_device_id *id) +{ + int ret = -ENODEV; + struct mlx90615_data *mlx90615 = NULL; + + pr_info("[BODYTEMP] %s is called.\n", __func__); + + /* Check i2c functionality */ + if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { + pr_err("[BODYTEMP] %s: i2c functionality check failed!\n", + __func__); + return ret; + } + + mlx90615 = kzalloc(sizeof(struct mlx90615_data), GFP_KERNEL); + if (!mlx90615) { + pr_err("[BODYTEMP] %s: failed to alloc memory mlx90615_data\n", + __func__); + return -ENOMEM; + } + + if (client-> dev.of_node) + pr_info("[BODYTEMP] %s : of node\n", __func__); + else { + pr_err("[BODYTEMP] %s : no of node\n", __func__); + goto err_setup_reg; + } + + ret = mlx90615_parse_dt(&client->dev, mlx90615); + + if (ret) { + pr_err("[BODYTEMP] %s : parse dt error\n", __func__); + //goto err_parse_dt; + } + + mlx90615->i2c_client = client; + mlx90615->always_on = 0; + + i2c_set_clientdata(client, mlx90615); + + mutex_init(&mlx90615->power_lock); + mutex_init(&mlx90615->read_lock); +#if 0 + /* Check if the device is there or not. */ + ret = i2c_master_send(mlx90615->i2c_client, + CMD_READ_ID_REG, MLX90615_CMD_LENGTH); + if (ret < 0) { + pr_err("[BODYTEMP] %s: failed i2c_master_send (err = %d)\n", + __func__, ret); + /* goto err_i2c_master_send;*/ + } +#endif + /* allocate mlx90615 input_device */ + mlx90615->input = input_allocate_device(); + if (!mlx90615->input) { + pr_err("[BODYTEMP] %s: could not allocate input device\n", + __func__); + goto err_input_allocate_device; + } + + mlx90615->input->name = "bodytemp_sensor"; + input_set_capability(mlx90615->input, EV_REL, EVENT_TYPE_AMBIENT_TEMP); + input_set_capability(mlx90615->input, EV_REL, EVENT_TYPE_OBJECT_TEMP); + input_set_drvdata(mlx90615->input, mlx90615); + + ret = input_register_device(mlx90615->input); + if (ret < 0) { + input_free_device(mlx90615->input); + pr_err("[BODYTEMP] %s: could not register input device\n", + __func__); + goto err_input_register_device; + } + + ret = sensors_create_symlink(&mlx90615->input->dev.kobj, + mlx90615->input->name); + if (ret < 0) { + input_unregister_device(mlx90615->input); + goto err_sysfs_create_symlink; + } + + ret = sysfs_create_group(&mlx90615->input->dev.kobj, + &mlx90615_attribute_group); + if (ret) { + pr_err("[BODYTEMP] %s: could not create sysfs group\n", + __func__); + goto err_sysfs_create_group; + } + ret = sensors_register(mlx90615->mlx90615_dev, + mlx90615, bodytemp_sensor_attrs, "bodytemp_sensor"); + if (ret) { + pr_err("[BODYTEMP] %s: cound not register sensor device(%d).\n", + __func__, ret); + goto err_sysfs_create_symlink; + } + /* Timer settings. We poll for mlx90615 values using a timer. */ + hrtimer_init(&mlx90615->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); + mlx90615->poll_delay = ns_to_ktime(DEFAULT_DELAY * NSEC_PER_MSEC); + mlx90615->timer.function = timer_func; + + /* Timer just fires off a work queue request. We need a thread + to read the i2c (can be slow and blocking). */ + mlx90615->mlx90615_wq = + create_singlethread_workqueue("mlx90615_bidytemp_wq"); + if (!mlx90615->mlx90615_wq) { + ret = -ENOMEM; + pr_err("[BODYTEMP] %s: could not create mlx90615 workqueue\n", __func__); + goto err_create_workqueue; + } + + /* This is the thread function we run on the work queue */ + INIT_WORK(&mlx90615->work_mlx90615, mlx90615_work_func); + + pr_info("[BODYTEMP] %s is success.\n", __func__); + + goto done; + + +err_create_workqueue: + sysfs_remove_group(&mlx90615->input->dev.kobj, + &mlx90615_attribute_group); + /* sensors_classdev_unregister(mlx90615->mlx90615_dev);*/ + destroy_workqueue(mlx90615->mlx90615_wq); +err_sysfs_create_group: + input_unregister_device(mlx90615->input); +err_sysfs_create_symlink: + sensors_remove_symlink(&mlx90615->input->dev.kobj, + mlx90615->input->name); +err_input_register_device: +err_input_allocate_device: + mutex_destroy(&mlx90615->read_lock); + mutex_destroy(&mlx90615->power_lock); +err_setup_reg: +//err_parse_dt: + kfree(mlx90615); +done: + return ret; +} + +static int mlx90615_i2c_remove(struct i2c_client *client) +{ + struct mlx90615_data *mlx90615 = i2c_get_clientdata(client); + /* device off */ + if (mlx90615->enabled) + mlx90615_disable(mlx90615); + + /* destroy workqueue */ + destroy_workqueue(mlx90615->mlx90615_wq); +#if 0 + /* sysfs destroy */ + device_remove_file(mlx90615->mlx90615_dev, &dev_attr_name); + device_remove_file(mlx90615->mlx90615_dev, &dev_attr_vendor); + device_remove_file(mlx90615->mlx90615_dev, &dev_attr_raw_data); +#endif + //sensors_classdev_unregister(mlx90615->mlx90615_dev); + + /* input device destroy */ + sysfs_remove_group(&mlx90615->input->dev.kobj, + &mlx90615_attribute_group); + input_unregister_device(mlx90615->input); + + /* lock destroy */ + mutex_destroy(&mlx90615->read_lock); + mutex_destroy(&mlx90615->power_lock); + kfree(mlx90615); + + return 0; +} + +static int mlx90615_suspend(struct device *dev) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + + if (mlx90615->enabled) + mlx90615_disable(mlx90615); + + return 0; +} + +static int mlx90615_resume(struct device *dev) +{ + struct mlx90615_data *mlx90615 = dev_get_drvdata(dev); + + if (mlx90615->enabled) + mlx90615_enable(mlx90615); + + return 0; +} + + +//MODULE_DEVICE_TABLE(i2c, mlx90615_device_id); + + +static struct of_device_id mlx90615_table[] = { + { .compatible = "mlx90615",}, + {}, +}; + +static const struct i2c_device_id mlx90615_device_id[] = { + {"mlx90615_table", 0}, + {} +}; + +static const struct dev_pm_ops mlx90615_pm_ops = { + .suspend = mlx90615_suspend, + .resume = mlx90615_resume +}; + +static struct i2c_driver mlx90615_i2c_driver = { + .driver = { + .name = "mlx90615", + .owner = THIS_MODULE, + .pm = &mlx90615_pm_ops, + .of_match_table = mlx90615_table, + }, + .probe = mlx90615_i2c_probe, + .remove = mlx90615_i2c_remove, + .id_table = mlx90615_device_id, +}; + +static int __init mlx90615_init(void) +{ + return i2c_add_driver(&mlx90615_i2c_driver); +} + +static void __exit mlx90615_exit(void) +{ + i2c_del_driver(&mlx90615_i2c_driver); +} + +module_init(mlx90615_init); +module_exit(mlx90615_exit); + +MODULE_AUTHOR("Samsung Electronics"); +MODULE_DESCRIPTION("mlx90615 Temperature Sensor & mlx90615 sensor device driver"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_hestia/sensors_core.c b/drivers/sensorhub/stm_hestia/sensors_core.c new file mode 100755 index 000000000000..aa5ecb652de7 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/sensors_core.c @@ -0,0 +1,166 @@ +/* + * Universal sensors core class + * + * Author : Ryunkyun Park + */ + +#include +#include +#include +#include +#include +#include + +struct class *sensors_class; +EXPORT_SYMBOL_GPL(sensors_class); +struct class *sensors_event_class; +EXPORT_SYMBOL_GPL(sensors_event_class); +static atomic_t sensor_count; +static struct device *symlink_dev; + +/* + * Create sysfs interface + */ +static void set_sensor_attr(struct device *dev, + struct device_attribute *attributes[]) +{ + int i; + + for (i = 0; attributes[i] != NULL; i++) + if ((device_create_file(dev, attributes[i])) < 0) + pr_err("[SENSOR CORE] fail device_create_file"\ + "(dev, attributes[%d])\n", i); +} + +int sensors_create_symlink(struct kobject *target, + const char *name) +{ + int err = 0; + + if (symlink_dev == NULL) + pr_err("%s, symlink_dev is NULL!!!\n", __func__); + + err = sysfs_create_link(&symlink_dev->kobj, target, name); + + if (err < 0) { + pr_err("%s, %s failed!(%d)\n", __func__, name, err); + return err; + } + + return err; +} +EXPORT_SYMBOL_GPL(sensors_create_symlink); + +void sensors_remove_symlink(struct kobject *target, + const char *name) +{ + + if (symlink_dev == NULL) + pr_err("%s, symlink_dev is NULL!!!\n", __func__); + + sysfs_delete_link(&symlink_dev->kobj, target, name); +} +EXPORT_SYMBOL_GPL(sensors_remove_symlink); + + +int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name) +{ + int ret = 0; + + if (!sensors_class) { + sensors_class = class_create(THIS_MODULE, "sensors"); + if (IS_ERR(sensors_class)) + return PTR_ERR(sensors_class); + } + + dev = device_create(sensors_class, NULL, 0, drvdata, "%s", name); + + if (IS_ERR(dev)) { + ret = PTR_ERR(dev); + pr_err("[SENSORS CORE] device_create failed!"\ + "[%d]\n", ret); + return ret; + } + + set_sensor_attr(dev, attributes); + atomic_inc(&sensor_count); + + return 0; +} +EXPORT_SYMBOL_GPL(sensors_register); + +void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]) +{ + int i; + + for (i = 0; attributes[i] != NULL; i++) + device_remove_file(dev, attributes[i]); +} +EXPORT_SYMBOL_GPL(sensors_unregister); + +void destroy_sensor_class(void) +{ + if (sensors_class) { + class_destroy(sensors_class); + sensors_class = NULL; + } + if (sensors_event_class) { + device_destroy(sensors_event_class, symlink_dev->devt); + class_destroy(sensors_event_class); + sensors_event_class = NULL; + } +} +EXPORT_SYMBOL_GPL(destroy_sensor_class); + +static int __init sensors_class_init(void) +{ + pr_info("[SENSORS CORE] sensors_class_init\n"); + sensors_class = class_create(THIS_MODULE, "sensors"); + + if (IS_ERR(sensors_class)) { + pr_err("%s, create sensors_class is failed.(err=%ld)\n", + __func__, IS_ERR(sensors_class)); + return PTR_ERR(sensors_class); + } + + /* For symbolic link */ + sensors_event_class = class_create(THIS_MODULE, "sensor_event"); + if (IS_ERR(sensors_event_class)) { + pr_err("%s, create sensors_class is failed.(err=%ld)\n", + __func__, IS_ERR(sensors_event_class)); + return PTR_ERR(sensors_event_class); + } + + symlink_dev = device_create(sensors_event_class, NULL, 0, NULL, + "%s", "symlink2"); + + if (IS_ERR(symlink_dev)) { + pr_err("[SENSORS CORE] symlink_dev create failed!"\ + "[%ld]\n", IS_ERR(symlink_dev)); + return PTR_ERR(symlink_dev); + } + + atomic_set(&sensor_count, 0); + sensors_class->dev_uevent = NULL; + + return 0; +} + +static void __exit sensors_class_exit(void) +{ + if (sensors_class || sensors_event_class) { + class_destroy(sensors_class); + sensors_class = NULL; + class_destroy(sensors_event_class); + sensors_event_class = NULL; + } +} + +subsys_initcall(sensors_class_init); +module_exit(sensors_class_exit); + +MODULE_DESCRIPTION("Universal sensors core class"); +MODULE_AUTHOR("Ryunkyun Park "); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_hestia/ssp.h b/drivers/sensorhub/stm_hestia/ssp.h new file mode 100755 index 000000000000..f87efbe60a7f --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp.h @@ -0,0 +1,834 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SSP_PRJ_H__ +#define __SSP_PRJ_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_HAS_EARLYSUSPEND +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef CONFIG_HAS_EARLYSUSPEND +#undef CONFIG_HAS_EARLYSUSPEND +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB +#include "ssp_sensorhub.h" +#endif + +#define SSP_DBG 1 +#ifdef CONFIG_SEC_DEBUG +#define SSP_SEC_DEBUG 1 +#else +#define SSP_SEC_DEBUG 0 +#endif +#define SUCCESS 1 +#define FAIL 0 +#define ERROR -1 + +#define FACTORY_DATA_MAX 100 +#undef SAVE_MAG_LOG/* Magnetic sensor data logging flag */ + +#ifdef SAVE_MAG_LOG/*normal mode = 0, logging mode = 1*/ +#define MAG_LOG_MODE 1 +#else +#define MAG_LOG_MODE 0 +#endif + +#if SSP_DBG +#define SSP_FUNC_DBG 1 +#define SSP_DATA_DBG 0 + +/* ssp mcu device ID */ +#define DEVICE_ID 0x55 + + +#define ssp_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define ssp_dbg(dev, format, ...) +#endif + +#if SSP_FUNC_DBG +#define func_dbg() do { \ + printk(KERN_INFO "[SSP]: %s\n", __func__); \ + } while (0) +#else +#define func_dbg() +#endif + +#if SSP_DATA_DBG +#define data_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define data_dbg(dev, format, ...) +#endif + +#define SSP_SW_RESET_TIME 3000 +#define DEFUALT_POLLING_DELAY (200 * NSEC_PER_MSEC) +#define PROX_AVG_READ_NUM 80 +#define DEFAULT_RETRIES 3 +#define DATA_PACKET_SIZE 960 + +/* SSP Binary Type */ +enum { + KERNEL_BINARY = 0, + KERNEL_CRASHED_BINARY, + UMS_BINARY, +}; + +/* + * SENSOR_DELAY_SET_STATE + * Check delay set to avoid sending ADD instruction twice + */ +enum { + INITIALIZATION_STATE = 0, + NO_SENSOR_STATE, + ADD_SENSOR_STATE, + RUNNING_SENSOR_STATE, +}; + +/* Firmware download STATE */ +enum { + FW_DL_STATE_FAIL = -1, + FW_DL_STATE_NONE = 0, + FW_DL_STATE_NEED_TO_SCHEDULE, + FW_DL_STATE_SCHEDULED, + FW_DL_STATE_DOWNLOADING, + FW_DL_STATE_SYNC, + FW_DL_STATE_DONE, +}; + +/* for MSG2SSP_AP_GET_THERM */ +enum { + ADC_BATT = 0, + ADC_CHG, +}; + +enum { + SENSORS_BATCH_DRY_RUN = 0x00000001, + SENSORS_BATCH_WAKE_UPON_FIFO_FULL = 0x00000002 +}; + +enum { + META_DATA_FLUSH_COMPLETE = 1, +}; + +#define SSP_INVALID_REVISION 99999 +#define SSP_INVALID_REVISION2 0xFFFFFF + +/* Gyroscope DPS */ +#define GYROSCOPE_DPS250 250 +#define GYROSCOPE_DPS500 500 +#define GYROSCOPE_DPS2000 2000 + +/* Gesture Sensor Current */ +#define DEFUALT_IR_CURRENT 100 + +/* kernel -> ssp manager cmd*/ +#define SSP_LIBRARY_SLEEP_CMD (1 << 5) +#define SSP_LIBRARY_LARGE_DATA_CMD (1 << 6) +#define SSP_LIBRARY_WAKEUP_CMD (1 << 7) + +/* AP -> SSP Instruction */ +#define MSG2SSP_INST_BYPASS_SENSOR_ADD 0xA1 +#define MSG2SSP_INST_BYPASS_SENSOR_REMOVE 0xA2 +#define MSG2SSP_INST_REMOVE_ALL 0xA3 +#define MSG2SSP_INST_CHANGE_DELAY 0xA4 +#define MSG2SSP_INST_LIBRARY_ADD 0xB1 +#define MSG2SSP_INST_LIBRARY_REMOVE 0xB2 +#define MSG2SSP_INST_LIB_NOTI 0xB4 +#define MSG2SSP_INST_LIB_DATA 0xC1 + +#define MSG2SSP_AP_MCU_SET_GYRO_CAL 0xCD +#define MSG2SSP_AP_MCU_SET_ACCEL_CAL 0xCE +#define MSG2SSP_AP_STATUS_SHUTDOWN 0xD0 +#define MSG2SSP_AP_STATUS_WAKEUP 0xD1 +#define MSG2SSP_AP_STATUS_SLEEP 0xD2 +#define MSG2SSP_AP_STATUS_RESUME 0xD3 +#define MSG2SSP_AP_STATUS_SUSPEND 0xD4 +#define MSG2SSP_AP_STATUS_RESET 0xD5 +#define MSG2SSP_AP_STATUS_POW_CONNECTED 0xD6 +#define MSG2SSP_AP_STATUS_POW_DISCONNECTED 0xD7 +#define MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE 0xDA +#define MSG2SSP_AP_MCU_SET_DUMPMODE 0xDB +#define MSG2SSP_AP_MCU_DUMP_CHECK 0xDC +#define MSG2SSP_AP_MCU_BATCH_FLUSH 0xDD +#define MSG2SSP_AP_MCU_BATCH_COUNT 0xDF + +#define MSG2SSP_AP_WHOAMI 0x0F +#define MSG2SSP_AP_FIRMWARE_REV 0xF0 +#define MSG2SSP_AP_SENSOR_FORMATION 0xF1 +#define MSG2SSP_AP_SENSOR_PROXTHRESHOLD 0xF2 +#define MSG2SSP_AP_SENSOR_BARCODE_EMUL 0xF3 +#define MSG2SSP_AP_SENSOR_SCANNING 0xF4 +#define MSG2SSP_AP_SET_MAGNETIC_HWOFFSET 0xF5 +#define MSG2SSP_AP_GET_MAGNETIC_HWOFFSET 0xF6 +#define MSG2SSP_AP_SENSOR_GESTURE_CURRENT 0xF7 +#define MSG2SSP_AP_GET_THERM 0xF8 +#define MSG2SSP_AP_GET_BIG_DATA 0xF9 +#define MSG2SSP_AP_SET_BIG_DATA 0xFA +#define MSG2SSP_AP_START_BIG_DATA 0xFB +#define MSG2SSP_AP_SET_MAGNETIC_STATIC_MATRIX 0xFD +#define MSG2SSP_AP_SENSOR_TILT 0xEA +#define MSG2SSP_AP_MCU_SET_TIME 0xFE +#define MSG2SSP_AP_MCU_GET_TIME 0xFF +#define MSG2SSP_AP_MOBEAM_DATA_SET 0x31 +#define MSG2SSP_AP_MOBEAM_REGISTER_SET 0x32 +#define MSG2SSP_AP_MOBEAM_COUNT_SET 0x33 +#define MSG2SSP_AP_MOBEAM_START 0x34 +#define MSG2SSP_AP_MOBEAM_STOP 0x35 + +#define MSG2SSP_AP_FUSEROM 0X01 + +/* voice data */ +#define TYPE_WAKE_UP_VOICE_SERVICE 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER 0x02 + +/* Factory Test */ +#define ACCELEROMETER_FACTORY 0x80 +#define GYROSCOPE_FACTORY 0x81 +#define GEOMAGNETIC_FACTORY 0x82 +#ifdef CONFIG_SENSORS_SSP_BMP182 +#define PRESSURE_FACTORY 0x85 +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +#define GESTURE_FACTORY 0x86 +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 +#define TEMPHUMIDITY_CRC_FACTORY 0x88 +#endif +#define GYROSCOPE_TEMP_FACTORY 0x8A +#define GYROSCOPE_DPS_FACTORY 0x8B +#define MCU_FACTORY 0x8C +#define MCU_SLEEP_FACTORY 0x8D + +/* Factory data length */ +#define ACCEL_FACTORY_DATA_LENGTH 1 +#define GYRO_FACTORY_DATA_LENGTH 36 +#define MAGNETIC_FACTORY_DATA_LENGTH 26 +#ifdef CONFIG_SENSORS_SSP_BMP182 +#define PRESSURE_FACTORY_DATA_LENGTH 1 +#endif +#define MCU_FACTORY_DATA_LENGTH 5 +#define GYRO_TEMP_FACTORY_DATA_LENGTH 2 +#define GYRO_DPS_FACTORY_DATA_LENGTH 1 +#ifdef CONFIG_SENSORS_SSP_SHTC1 +#define TEMPHUMIDITY_FACTORY_DATA_LENGTH 1 +#endif +#define MCU_SLEEP_FACTORY_DATA_LENGTH FACTORY_DATA_MAX +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +#define GESTURE_FACTORY_DATA_LENGTH 4 +#endif + +/* SSP -> AP ACK about write CMD */ +#define MSG_ACK 0x80 /* ACK from SSP to AP */ +#define MSG_NAK 0x70 /* NAK from SSP to AP */ + +/* Accelerometer sensor */ +#define MAX_ACCEL_1G 16384 +#define MAX_ACCEL_2G 32767 +#define MIN_ACCEL_2G -32768 +#define MAX_ACCEL_4G 65536 + +#define MAX_GYRO 32767 +#define MIN_GYRO -32768 + +#define MAX_COMP_BUFF 60 + +/* temphumidity sensor*/ +#ifdef CONFIG_SENSORS_SSP_SHTC1 +struct shtc1_buffer { + u16 batt[MAX_COMP_BUFF]; + u16 chg[MAX_COMP_BUFF]; + s16 temp[MAX_COMP_BUFF]; + u16 humidity[MAX_COMP_BUFF]; + u16 baro[MAX_COMP_BUFF]; + u16 gyro[MAX_COMP_BUFF]; + char len; +}; +#endif +/* SSP_INSTRUCTION_CMD */ +enum { + REMOVE_SENSOR = 0, + ADD_SENSOR, + CHANGE_DELAY, + GO_SLEEP, + REMOVE_LIBRARY, + ADD_LIBRARY, + GET_LOGGING, +}; + +/* SENSOR_TYPE */ +enum { + ACCELEROMETER_SENSOR = 0, + GYROSCOPE_SENSOR, + GEOMAGNETIC_UNCALIB_SENSOR, + GEOMAGNETIC_RAW, + GEOMAGNETIC_SENSOR, + PRESSURE_SENSOR, + GESTURE_SENSOR, + PROXIMITY_SENSOR, + TEMPERATURE_HUMIDITY_SENSOR, + LIGHT_SENSOR, + PROXIMITY_RAW, + ORIENTATION_SENSOR, + STEP_DETECTOR = 12, + SIG_MOTION_SENSOR, + GYRO_UNCALIB_SENSOR, + GAME_ROTATION_VECTOR = 15, + ROTATION_VECTOR, + STEP_COUNTER, + BIO_HRM_RAW, + BIO_HRM_RAW_FAC, + BIO_HRM_LIB, + UV_SENSOR, + SENSOR_MAX, +}; + +struct meta_data_event { + s32 what; + s32 sensor; +} __attribute__((__packed__)); + +struct sensor_value { + union { + struct { + s16 x; + s16 y; + s16 z; + }; + struct { /*calibrated mag, gyro*/ + s16 cal_x; + s16 cal_y; + s16 cal_z; + u8 accuracy; + }; + struct { /*uncalibrated mag, gyro*/ + s16 uncal_x; + s16 uncal_y; + s16 uncal_z; + s16 offset_x; + s16 offset_y; + s16 offset_z; + }; + struct { /* rotation vector */ + s32 quat_a; + s32 quat_b; + s32 quat_c; + s32 quat_d; + u8 acc_rot; + }; + struct { + u16 r; + u16 g; + u16 b; + u16 w; +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + u8 a_time; + u8 a_gain; +#else + u16 ir_cmp; + u16 amb_pga; +#endif + }; + u8 step_det; + u8 sig_motion; + u32 step_diff; +#ifdef CONFIG_SENSORS_SSP_UVIS25 + u8 uv; +#endif +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + u16 prox[4]; +#else + u8 prox[4]; +#endif + u8 data[20]; + s32 pressure[3]; + + struct meta_data_event meta_data; +#ifdef SAVE_MAG_LOG + u8 log_data[20]; +#endif + }; + u64 timestamp; +} __attribute__((__packed__)); + +extern struct class *sensors_event_class; +extern int poweroff_charging; +extern int boot_mode_recovery; + +struct calibraion_data { + s16 x; + s16 y; + s16 z; +}; + +struct hw_offset_data { + char x; + char y; + char z; +}; + +/* ssp_msg options bit*/ +#define SSP_SPI 0 /* read write mask */ +#define SSP_RETURN 2 /* write and read option */ +#define SSP_GYRO_DPS 3 /* gyro dps mask */ +#define SSP_INDEX 3 /* data index mask */ + +#define SSP_SPI_MASK (3 << SSP_SPI) /* read write mask */ +#define SSP_GYRO_DPS_MASK (3 << SSP_GYRO_DPS) +#define SSP_INDEX_MASK (8191 << SSP_INDEX) /* dump index mask. Index is up to 8191 */ + +/* proximity sensor threshold */ +#if defined(CONFIG_SEC_KACTIVE_PROJECT) +#define DEFUALT_HIGH_THRESHOLD 110 +#define DEFUALT_LOW_THRESHOLD 85 +#define TBD_HIGH_THRESHOLD 110 +#define TBD_LOW_THRESHOLD 85 +#define WHITE_HIGH_THRESHOLD 110 +#define WHITE_LOW_THRESHOLD 85 +#elif defined(CONFIG_SENSORS_SSP_STM_HESTIA) +#define DEFUALT_HIGH_THRESHOLD 480 +#define DEFUALT_LOW_THRESHOLD 340 +#define TBD_HIGH_THRESHOLD 480 +#define TBD_LOW_THRESHOLD 340 +#define WHITE_HIGH_THRESHOLD 480 +#define WHITE_LOW_THRESHOLD 340 +#else +#define DEFUALT_HIGH_THRESHOLD 130 +#define DEFUALT_LOW_THRESHOLD 90 +#define TBD_HIGH_THRESHOLD 130 +#define TBD_LOW_THRESHOLD 90 +#define WHITE_HIGH_THRESHOLD 130 +#define WHITE_LOW_THRESHOLD 90 +#endif +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) +#define PROX_TRIM 130 +#else +#define PROX_TRIM 0 +#endif + +struct ssp_msg { + u8 cmd; + u16 length; + u16 options; + u32 data; + + struct list_head list; + struct completion *done; + char *buffer; + u8 free_buffer; + bool *dead_hook; + bool dead; +} __attribute__((__packed__)); + +enum { + AP2HUB_READ = 0, + AP2HUB_WRITE, + HUB2AP_WRITE, + AP2HUB_READY, + AP2HUB_RETURN +}; + +enum { + BIG_TYPE_DUMP = 0, + BIG_TYPE_READ_LIB, + /*+snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_VOICE_NET, + BIG_TYPE_VOICE_GRAM, + BIG_TYPE_VOICE_PCM, + /*-snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_TEMP, + BIG_TYPE_MAX, +}; + +struct ssp_data { + struct iio_dev *accel_indio_dev; + struct iio_dev *gyro_indio_dev; + struct iio_dev *rot_indio_dev; + struct iio_dev *game_rot_indio_dev; + struct iio_dev *step_det_indio_dev; +#ifdef CONFIG_SENSORS_SSP_BMP182 + struct iio_dev *pressure_indio_dev; +#endif + struct iio_trigger *accel_trig; + struct iio_trigger *gyro_trig; + struct iio_trigger *rot_trig; + struct iio_trigger *game_rot_trig; + struct iio_trigger *step_det_trig; +#ifdef CONFIG_SENSORS_SSP_BMP182 + struct iio_trigger *pressure_det_trig; +#endif + struct input_dev *light_input_dev; + struct input_dev *prox_input_dev; + struct input_dev *temp_humi_input_dev; + struct input_dev *mag_input_dev; + struct input_dev *uncal_mag_input_dev; +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + struct input_dev *gesture_input_dev; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + struct input_dev *uv_input_dev; +#endif + struct input_dev *sig_motion_input_dev; + struct input_dev *uncalib_gyro_input_dev; + struct input_dev *step_cnt_input_dev; + struct input_dev *meta_input_dev; + struct spi_device *spi; + struct i2c_client *client; + struct wake_lock ssp_wake_lock; + struct miscdevice akmd_device; + struct timer_list debug_timer; + struct workqueue_struct *debug_wq; + struct work_struct work_debug; + struct calibraion_data accelcal; + struct calibraion_data gyrocal; + struct hw_offset_data magoffset; + struct sensor_value buf[SENSOR_MAX]; + struct device *sen_dev; + struct device *mcu_device; + struct device *acc_device; + struct device *gyro_device; + struct device *mag_device; + struct device *prs_device; + struct device *prox_device; + struct device *light_device; +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + struct device *ges_device; +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + struct device *temphumidity_device; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + struct device *uv_device; +#endif + struct delayed_work work_firmware; + struct delayed_work work_refresh; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + struct miscdevice shtc1_device; +#endif + struct miscdevice batch_io_device; + +/*snamy.jeong@samsung.com temporary code for voice data sending to mcu*/ + struct device *voice_device; + + bool bSspShutdown; + bool bAccelAlert; + bool bProximityRawEnabled; + bool bGeomagneticRawEnabled; + bool bGeomagneticLogged; + bool bBarcodeEnabled; + bool bMcuDumpMode; + bool bBinaryChashed; + bool bProbeIsDone; + bool bDumping; + bool bTimeSyncing; + + unsigned int uProxCanc; + unsigned int uCrosstalk; + unsigned int uProxCalResult; + unsigned int uProxHiThresh; + unsigned int uProxLoThresh; + unsigned int uProxHiThresh_default; + unsigned int uProxLoThresh_default; + unsigned int uIr_Current; + unsigned char uFuseRomData[3]; + unsigned char uMagCntlRegData; + char *pchLibraryBuf; + char chLcdLdi[2]; + int iIrq; + int iLibraryLength; + int aiCheckStatus[SENSOR_MAX]; + + unsigned int uComFailCnt; + unsigned int uResetCnt; + unsigned int uTimeOutCnt; + unsigned int uIrqCnt; + unsigned int uDumpCnt; + + int sealevelpressure; + unsigned int uGyroDps; + unsigned int uSensorState; + unsigned int uCurFirmRev; + unsigned int uFactoryProxAvg[4]; + char uLastResumeState; + char uLastAPState; + s32 iPressureCal; + u64 step_count_total; + + atomic_t aSensorEnable; + int64_t adDelayBuf[SENSOR_MAX]; + s32 batchLatencyBuf[SENSOR_MAX]; + s8 batchOptBuf[SENSOR_MAX]; + + int (*wakeup_mcu)(void); + int (*check_mcu_ready)(void); + int (*check_mcu_busy)(void); + int (*set_mcu_reset)(int); + int (*read_chg)(void); + void (*get_sensor_data[SENSOR_MAX])(char *, int *, + struct sensor_value *); + void (*report_sensor_data[SENSOR_MAX])(struct ssp_data *, + struct sensor_value *); + +#ifdef CONFIG_HAS_EARLYSUSPEND + struct early_suspend early_suspend; +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + struct ssp_sensorhub_data *hub_data; +#endif + int ap_rev; + int ssp_changes; + int accel_position; + int mag_position; + int fw_dl_state; + u8 mag_matrix_size; + u8 *mag_matrix; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + char *comp_engine_ver; + char *comp_engine_ver2; + struct mutex cp_temp_adc_lock; + struct mutex bulk_temp_read_lock; + struct shtc1_buffer* bulk_buffer; +#endif + struct mutex comm_mutex; + struct mutex pending_mutex; + + int mcu_int1; + int mcu_int2; + int ap_int; + int rst; + int chg; + struct regulator *reg_hub; + struct regulator *reg_sns; + + struct list_head pending_list; + void (*ssp_big_task[BIG_TYPE_MAX])(struct work_struct *); + u64 timestamp; +}; + +struct ssp_big { + struct ssp_data* data; + struct work_struct work; + u32 length; + u32 addr; +}; + +int ssp_iio_configure_ring(struct iio_dev *); +void ssp_iio_unconfigure_ring(struct iio_dev *); +int ssp_iio_probe_trigger(struct ssp_data *, struct iio_dev *, struct iio_trigger *); +void ssp_iio_remove_trigger(struct iio_trigger *); + +#ifdef CONFIG_SENSORS_SSP_MOBEAM +struct reg_index_table { + unsigned char reg; + unsigned char index; +}; +#endif + +void ssp_enable(struct ssp_data *, bool); +int waiting_init_mcu(struct ssp_data *); +int waiting_wakeup_mcu(struct ssp_data *); +int ssp_i2c_read(struct ssp_data *, char *, u16, char *, u16, int); +int ssp_spi_async(struct ssp_data *, struct ssp_msg *); +int ssp_spi_sync(struct ssp_data *, struct ssp_msg *, int); +void clean_pending_list(struct ssp_data *); +void toggle_mcu_reset(struct ssp_data *); +int initialize_mcu(struct ssp_data *); +int initialize_input_dev(struct ssp_data *); +int initialize_sysfs(struct ssp_data *); +void initialize_accel_factorytest(struct ssp_data *); +void initialize_prox_factorytest(struct ssp_data *); +void initialize_light_factorytest(struct ssp_data *); +void initialize_gyro_factorytest(struct ssp_data *); +#ifdef CONFIG_SENSORS_SSP_BMP182 +void initialize_pressure_factorytest(struct ssp_data *); +#endif +void initialize_magnetic_factorytest(struct ssp_data *); +void initialize_function_pointer(struct ssp_data *); +void initialize_magnetic(struct ssp_data *); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +void initialize_gesture_factorytest(struct ssp_data *data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void initialize_temphumidity_factorytest(struct ssp_data *data); +#endif +void remove_accel_factorytest(struct ssp_data *); +void remove_gyro_factorytest(struct ssp_data *); +void remove_prox_factorytest(struct ssp_data *); +void remove_light_factorytest(struct ssp_data *); +#ifdef CONFIG_SENSORS_SSP_BMP182 +void remove_pressure_factorytest(struct ssp_data *); +#endif +void remove_magnetic_factorytest(struct ssp_data *); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +void remove_gesture_factorytest(struct ssp_data *data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void remove_temphumidity_factorytest(struct ssp_data *data); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 +void initialize_uv_factorytest(struct ssp_data *); +void remove_uv_factorytest(struct ssp_data *); +#endif +#ifdef CONFIG_SENSORS_SSP_MOBEAM +void initialize_mobeam(struct ssp_data *data); +void remove_mobeam(struct ssp_data *data); +#endif +void destroy_sensor_class(void); +int initialize_event_symlink(struct ssp_data *); +int sensors_create_symlink(struct kobject *target, + const char *name); +int accel_open_calibration(struct ssp_data *); +int gyro_open_calibration(struct ssp_data *); +#ifdef CONFIG_SENSORS_SSP_BMP182 +int pressure_open_calibration(struct ssp_data *); +#endif +int proximity_open_calibration(struct ssp_data *); +int check_fwbl(struct ssp_data *); +void remove_input_dev(struct ssp_data *); +void remove_sysfs(struct ssp_data *); +void remove_event_symlink(struct ssp_data *); +int ssp_send_cmd(struct ssp_data *, char, int); +int send_instruction(struct ssp_data *, u8, u8, u8 *, u8); +int send_instruction_sync(struct ssp_data *, u8, u8, u8 *, u8); +int flush(struct ssp_data *, u8); +int get_batch_count(struct ssp_data *, u8); +int select_irq_msg(struct ssp_data *); +int get_chipid(struct ssp_data *); +int get_fuserom_data(struct ssp_data *); +int set_big_data_start(struct ssp_data *, u8 , u32); +int mag_open_hwoffset(struct ssp_data *); +int mag_store_hwoffset(struct ssp_data *); +int set_hw_offset(struct ssp_data *); +int get_hw_offset(struct ssp_data *); +int set_gyro_cal(struct ssp_data *); +int set_accel_cal(struct ssp_data *); +int set_sensor_position(struct ssp_data *); +int set_magnetic_static_matrix(struct ssp_data *); +void sync_sensor_state(struct ssp_data *); +void set_proximity_threshold(struct ssp_data *, unsigned int, unsigned int); +void set_proximity_barcode_enable(struct ssp_data *, bool); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +void set_gesture_current(struct ssp_data *, unsigned char); +#endif +int get_msdelay(int64_t); +unsigned int get_sensor_scanning_info(struct ssp_data *); +unsigned int get_firmware_rev(struct ssp_data *); +int forced_to_download_binary(struct ssp_data *, int); +int parse_dataframe(struct ssp_data *, char *, int); +void enable_debug_timer(struct ssp_data *); +void disable_debug_timer(struct ssp_data *); +int initialize_debug_timer(struct ssp_data *); +int proximity_open_lcd_ldi(struct ssp_data *); +void report_meta_data(struct ssp_data *, struct sensor_value *); +void report_acc_data(struct ssp_data *, struct sensor_value *); +void report_gyro_data(struct ssp_data *, struct sensor_value *); +void report_mag_data(struct ssp_data *, struct sensor_value *); +void report_mag_uncaldata(struct ssp_data *, struct sensor_value *); +void report_rot_data(struct ssp_data *, struct sensor_value *); +void report_game_rot_data(struct ssp_data *, struct sensor_value *); +void report_step_det_data(struct ssp_data *, struct sensor_value *); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +void report_gesture_data(struct ssp_data *, struct sensor_value *); +#endif +#ifdef CONFIG_SENSORS_SSP_BMP182 +void report_pressure_data(struct ssp_data *, struct sensor_value *); +#endif +void report_light_data(struct ssp_data *, struct sensor_value *); +void report_prox_data(struct ssp_data *, struct sensor_value *); +#ifdef CONFIG_SENSORS_SSP_UVIS25 +void report_uv_data(struct ssp_data *, struct sensor_value *); +#endif +void report_prox_raw_data(struct ssp_data *, struct sensor_value *); +void report_geomagnetic_raw_data(struct ssp_data *, struct sensor_value *); +void report_sig_motion_data(struct ssp_data *, struct sensor_value *); +void report_uncalib_gyro_data(struct ssp_data *, struct sensor_value *); +void report_step_cnt_data(struct ssp_data *, struct sensor_value *); +int print_mcu_debug(char *, int *, int); +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void report_temp_humidity_data(struct ssp_data *, struct sensor_value *); +#endif +void report_bulk_comp_data(struct ssp_data *data); +unsigned int get_module_rev(struct ssp_data *data); +void reset_mcu(struct ssp_data *); +int queue_refresh_task(struct ssp_data *data, int delay); +void convert_acc_data(s16 *); +int sensors_register(struct device *, void *, + struct device_attribute*[], char *); +void sensors_unregister(struct device *, + struct device_attribute*[]); +ssize_t mcu_reset_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_dump_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_revision_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_update_ums_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_crashed_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_factorytest_store(struct device *, struct device_attribute *, + const char *, size_t); +ssize_t mcu_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_model_name_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_store(struct device *, + struct device_attribute *, const char *, size_t); +ssize_t mpu6500_gyro_selftest(char *, struct ssp_data *); +ssize_t k330_gyro_selftest(char *, struct ssp_data *); + +void ssp_dump_task(struct work_struct *work); +void ssp_read_big_library_task(struct work_struct *work); +void ssp_send_big_library_task(struct work_struct *work); +void ssp_pcm_dump_task(struct work_struct *work); +void ssp_temp_task(struct work_struct *work); +int set_time(struct ssp_data *); +int get_time(struct ssp_data *); +#endif diff --git a/drivers/sensorhub/stm_hestia/ssp_ak8963c.c b/drivers/sensorhub/stm_hestia/ssp_ak8963c.c new file mode 100755 index 000000000000..5a462b954a3f --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_ak8963c.c @@ -0,0 +1,105 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +/*************************************************************************/ +/* AKM Daemon Library ioctl */ +/*************************************************************************/ + +static int akmd_copy_in(unsigned int cmd, void __user *argp, + void *buf, size_t buf_size) +{ + if (!(cmd & IOC_IN)) + return 0; + if (_IOC_SIZE(cmd) > buf_size) + return -EINVAL; + if (copy_from_user(buf, argp, _IOC_SIZE(cmd))) + return -EFAULT; + return 0; +} + +static int akmd_copy_out(unsigned int cmd, void __user *argp, + void *buf, size_t buf_size) +{ + if (!(cmd & IOC_OUT)) + return 0; + if (_IOC_SIZE(cmd) > buf_size) + return -EINVAL; + if (copy_to_user(argp, buf, _IOC_SIZE(cmd))) + return -EFAULT; + return 0; +} + +static long akmd_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + int iRet; + void __user *argp = (void __user *)arg; + struct ssp_data *data = container_of(file->private_data, + struct ssp_data, akmd_device); + + union { + u8 uData[8]; + u8 uMagData[8]; + u8 uFuseData[3]; + int iAccData[3]; + } akmdbuf; + + iRet = akmd_copy_in(cmd, argp, akmdbuf.uData, sizeof(akmdbuf)); + if (iRet) + return iRet; + + switch (cmd) { + case ECS_IOCTL_GET_MAGDATA: + akmdbuf.uMagData[0] = 1; + akmdbuf.uMagData[1] = data->buf[GEOMAGNETIC_SENSOR].x & 0xff; + akmdbuf.uMagData[2] = data->buf[GEOMAGNETIC_SENSOR].x >> 8; + akmdbuf.uMagData[3] = data->buf[GEOMAGNETIC_SENSOR].y & 0xff; + akmdbuf.uMagData[4] = data->buf[GEOMAGNETIC_SENSOR].y >> 8; + akmdbuf.uMagData[5] = data->buf[GEOMAGNETIC_SENSOR].z & 0xff; + akmdbuf.uMagData[6] = data->buf[GEOMAGNETIC_SENSOR].z >> 8; + akmdbuf.uMagData[7] = 0x10; + break; + case ECS_IOCTL_GET_ACCDATA: + akmdbuf.iAccData[0] = data->buf[ACCELEROMETER_SENSOR].x; + akmdbuf.iAccData[1] = data->buf[ACCELEROMETER_SENSOR].y; + akmdbuf.iAccData[2] = data->buf[ACCELEROMETER_SENSOR].z; + break; + case ECS_IOCTL_GET_FUSEROMDATA: + akmdbuf.uFuseData[0] = data->uFuseRomData[0]; + akmdbuf.uFuseData[1] = data->uFuseRomData[1]; + akmdbuf.uFuseData[2] = data->uFuseRomData[2]; + break; + default: + return -ENOTTY; + } + + if (iRet < 0) + return iRet; + + return akmd_copy_out(cmd, argp, akmdbuf.uData, sizeof(akmdbuf)); +} + +static const struct file_operations akmd_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = akmd_ioctl, +}; + +void initialize_magnetic(struct ssp_data *data) +{ + data->akmd_device.minor = MISC_DYNAMIC_MINOR; + data->akmd_device.name = "akm8963"; + data->akmd_device.fops = &akmd_fops; +} diff --git a/drivers/sensorhub/stm_hestia/ssp_data.c b/drivers/sensorhub/stm_hestia/ssp_data.c new file mode 100755 index 000000000000..694ec0b3d8cf --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_data.c @@ -0,0 +1,376 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +/* SSP -> AP Instruction */ +#define MSG2AP_INST_BYPASS_DATA 0x37 +#define MSG2AP_INST_LIBRARY_DATA 0x01 +#define MSG2AP_INST_DEBUG_DATA 0x03 +#define MSG2AP_INST_BIG_DATA 0x04 +#define MSG2AP_INST_META_DATA 0x05 +#define MSG2AP_INST_TIME_SYNC 0x06 +#define MSG2AP_INST_RESET 0x07 + +/*************************************************************************/ +/* SSP parsing the dataframe */ +/*************************************************************************/ + +static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, + int *iDataIdx, struct sensor_value *sensorsdata) { + s32 otimestamp = 0; + s64 ctimestamp = 0; + + memcpy(&otimestamp, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; + + ctimestamp = (s64) otimestamp * 1000000; + sensorsdata->timestamp = data->timestamp + ctimestamp; +} + +static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_uncaldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_geomagnetic_caldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#ifdef SAVE_MAG_LOG + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); + *iDataIdx += 7; +#endif +} + +static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); + *iDataIdx += 17; +} + +static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 10); + *iDataIdx += 10; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); + *iDataIdx += 8; +#endif +} + +#ifdef CONFIG_SENSORS_SSP_BMP182 +static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + s16 temperature = 0; + memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); + memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); + sensorsdata->pressure[1] = temperature; + *iDataIdx += 6; +} +#endif + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +} +#endif +static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) + memset(&sensorsdata->prox[0], 0, 1); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + *iDataIdx += 2; +#else + memset(&sensorsdata->prox[0], 0, 2); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 2); + *iDataIdx += 3; +#endif +} + +#ifdef CONFIG_SENSORS_SSP_UVIS25 +static void get_uv_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->uv, 0, 1); + memcpy(&sensorsdata->uv, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} +#endif +static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +#else + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + *iDataIdx += 2; +#endif +} + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->data[2], 0, 2); + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); + *iDataIdx += 5; +} +#endif + +static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; +} + +int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { + u8 bigType = 0; + struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); + big->data = data; + bigType = pchRcvDataFrame[(*pDataIdx)++]; + memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + + if (bigType >= BIG_TYPE_MAX) { + kfree(big); + return FAIL; + } + + INIT_WORK(&big->work, data->ssp_big_task[bigType]); + queue_work(data->debug_wq, &big->work); + return SUCCESS; +} + +void refresh_task(struct work_struct *work) { + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_refresh); + + if(data->bSspShutdown == true) { + pr_err("[SSP]: %s - ssp already shutdown\n", __func__); + return; + } + + wake_lock(&data->ssp_wake_lock); + pr_err("[SSP]: %s\n", __func__); + data->uResetCnt++; + + if (initialize_mcu(data) > 0) { + sync_sensor_state(data); + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); + if (data->uLastAPState != 0) + ssp_send_cmd(data, data->uLastAPState, 0); + if (data->uLastResumeState != 0) + ssp_send_cmd(data, data->uLastResumeState, 0); + data->uTimeOutCnt = 0; + } + + wake_unlock(&data->ssp_wake_lock); +} + +int queue_refresh_task(struct ssp_data *data, int delay) { + cancel_delayed_work_sync(&data->work_refresh); + + INIT_DELAYED_WORK(&data->work_refresh, refresh_task); + queue_delayed_work(data->debug_wq, &data->work_refresh, + msecs_to_jiffies(delay)); + return SUCCESS; +} + +int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { + int iDataIdx, iSensorData; + u16 length = 0; + struct sensor_value sensorsdata; + struct timespec ts; + + getnstimeofday(&ts); + + for (iDataIdx = 0; iDataIdx < iLength;) { + switch (pchRcvDataFrame[iDataIdx++]) { + case MSG2AP_INST_BYPASS_DATA: + iSensorData = pchRcvDataFrame[iDataIdx++]; + if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { + pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, + iSensorData); + return ERROR; + } + data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, + &sensorsdata); + get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata); + data->report_sensor_data[iSensorData](data, &sensorsdata); + break; + case MSG2AP_INST_DEBUG_DATA: + iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); + if (iSensorData) { + pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, + iSensorData); + return ERROR; + } + break; + case MSG2AP_INST_LIBRARY_DATA: + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, + iDataIdx + length); + iDataIdx += length; + break; + case MSG2AP_INST_BIG_DATA: + handle_big_data(data, pchRcvDataFrame, &iDataIdx); + break; + case MSG2AP_INST_META_DATA: + sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; + sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; + report_meta_data(data, &sensorsdata); + break; + case MSG2AP_INST_TIME_SYNC: + data->bTimeSyncing = true; + break; + case MSG2AP_INST_RESET: + queue_refresh_task(data, 0); + break; + } + } + + if (data->bTimeSyncing) + data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; + + return SUCCESS; +} + +void initialize_function_pointer(struct ssp_data *data) +{ + data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + get_geomagnetic_uncaldata; + data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; + data->get_sensor_data[GEOMAGNETIC_SENSOR] = + get_geomagnetic_caldata; +#ifdef CONFIG_SENSORS_SSP_BMP182 + data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; +#endif + data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; + data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; + data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + get_temp_humidity_sensordata; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + data->get_sensor_data[UV_SENSOR] = get_uv_sensordata; +#endif + data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; + data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; + data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; + data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; + + data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; + data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; + data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + report_mag_uncaldata; + data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; + data->report_sensor_data[GEOMAGNETIC_SENSOR] = + report_mag_data; +#ifdef CONFIG_SENSORS_SSP_BMP182 + data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; +#endif + data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; + data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; + data->report_sensor_data[LIGHT_SENSOR] = report_light_data; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + report_temp_humidity_data; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + data->report_sensor_data[UV_SENSOR] = report_uv_data; +#endif + data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; + data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; + data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; + data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; + data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; + data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; + + data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; + data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; +#endif +} diff --git a/drivers/sensorhub/stm_hestia/ssp_debug.c b/drivers/sensorhub/stm_hestia/ssp_debug.c new file mode 100755 index 000000000000..8f09d48a9cc5 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_debug.c @@ -0,0 +1,450 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include +#if SSP_SEC_DEBUG +#include +#endif + + +#define SSP_DEBUG_TIMER_SEC (10 * HZ) + +#define LIMIT_RESET_CNT 20 +#define LIMIT_TIMEOUT_CNT 3 + +#define DUMP_FILE_PATH "/data/log/MCU_DUMP" + +void ssp_dump_task(struct work_struct *work) { +#if SSP_SEC_DEBUG + struct ssp_big *big; + struct file *dump_file; + struct ssp_msg *msg; + char *buffer; + char strFilePath[60]; + struct timeval cur_time; + mm_segment_t fs; + int buf_len, packet_len, residue, iRet = 0, index = 0 ,iRetTrans=0 ,iRetWrite=0; + + + big = container_of(work, struct ssp_big, work); + pr_err("[SSP]: %s - start ssp dumping (%d)(%d)\n", __func__, big->data->bMcuDumpMode, big->data->uDumpCnt); + big->data->uDumpCnt++; + wake_lock(&big->data->ssp_wake_lock); + + fs = get_fs(); + set_fs(get_ds()); + + if(big->data->bMcuDumpMode == true) + { + do_gettimeofday(&cur_time); + + sprintf(strFilePath, "%s%d.dump", DUMP_FILE_PATH, (int)cur_time.tv_sec); + dump_file = filp_open(strFilePath, O_RDWR | O_CREAT | O_APPEND, 0666); + + if (IS_ERR(dump_file)) + { + pr_err("[SSP]: %s - Can't open dump file\n", __func__); + set_fs(fs); + iRet = PTR_ERR(dump_file); + wake_unlock(&big->data->ssp_wake_lock); + kfree(big); + return; + } + } + else + dump_file = NULL; + + + buf_len = big->length > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : big->length; + buffer = kzalloc(buf_len, GFP_KERNEL); + residue = big->length; + + while (residue > 0) + { + packet_len = residue > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = packet_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRetTrans = ssp_spi_sync(big->data, msg, 5000); + + if (iRetTrans != SUCCESS) + { + pr_err("[SSP]: %s - Fail to receive data %d (%d)\n", __func__, iRetTrans,residue); + break; + } + + if(big->data->bMcuDumpMode == true) + { + iRetWrite = vfs_write(dump_file, (char __user *) buffer, packet_len, &dump_file->f_pos); + + if (iRetWrite < 0) + { + pr_err("[SSP]: %s - Can't write dump to file\n", __func__); + break; + } + } + residue -= packet_len; + } + + + if(big->data->bMcuDumpMode == true) + { + if(iRetTrans != SUCCESS || iRetWrite < 0) // error case + { + char FAILSTRING[100]; + sprintf(FAILSTRING,"FAIL OCCURED(%d)(%d)(%d)",iRetTrans,iRetWrite,big->length); + vfs_write(dump_file, (char __user *) FAILSTRING, strlen(FAILSTRING),&dump_file->f_pos); + } + + filp_close(dump_file, current->files); + } + + big->data->bDumping = false; + + set_fs(fs); + + wake_unlock(&big->data->ssp_wake_lock); + kfree(buffer); + kfree(big); +#endif + pr_err("[SSP]: %s done\n", __func__); +} + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void ssp_temp_task(struct work_struct *work) { + struct ssp_big *big; + struct ssp_msg *msg; + char *buffer; + int buf_len, packet_len, residue, iRet = 0, index = 0, i = 0, buffindex = 0; + + big = container_of(work, struct ssp_big, work); + buf_len = big->length > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : big->length; + buffer = kzalloc(buf_len, GFP_KERNEL); + residue = big->length; + mutex_lock(&big->data->bulk_temp_read_lock); + if (big->data->bulk_buffer == NULL) + big->data->bulk_buffer = kzalloc(sizeof(struct shtc1_buffer), + GFP_KERNEL); + big->data->bulk_buffer->len = big->length / 12; + + while (residue > 0) { + packet_len = residue > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = packet_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(big->data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Fail to receive data %d\n", __func__, iRet); + break; + } + // 12 = 1 chunk size for ks79.shin + // order is thermistor Bat, thermistor PA, Temp, Humidity, Baro, Gyro + // each data consist of 2bytes + i = 0; + while (packet_len - i >= 12) { + ssp_dbg("[SSP]: %s %d %d %d %d %d %d", __func__, + *((s16 *) (buffer + i + 0)), *((s16 *) (buffer + i + 2)), + *((s16 *) (buffer + i + 4)), *((s16 *) (buffer + i + 6)), + *((s16 *) (buffer + i + 8)), *((s16 *) (buffer +i + 10))); + big->data->bulk_buffer->batt[buffindex] = *((u16 *) (buffer + i + 0)); + big->data->bulk_buffer->chg[buffindex] = *((u16 *) (buffer + i + 2)); + big->data->bulk_buffer->temp[buffindex] = *((s16 *) (buffer + i + 4)); + big->data->bulk_buffer->humidity[buffindex] = *((u16 *) (buffer + i + 6)); + big->data->bulk_buffer->baro[buffindex] = *((s16 *) (buffer + i + 8)); + big->data->bulk_buffer->gyro[buffindex] = *((s16 *) (buffer + i + 10)); + buffindex++; + i += 12; + } + + residue -= packet_len; + } + if (iRet == SUCCESS) + report_bulk_comp_data(big->data); + mutex_unlock(&big->data->bulk_temp_read_lock); + kfree(buffer); + kfree(big); + ssp_dbg("[SSP]: %s done\n", __func__); +} +#endif + +/*************************************************************************/ +/* SSP Debug timer function */ +/*************************************************************************/ + +int print_mcu_debug(char *pchRcvDataFrame, int *pDataIdx, + int iRcvDataFrameLength) +{ + int iLength = pchRcvDataFrame[(*pDataIdx)++]; + int cur = *pDataIdx; + + if (iLength > iRcvDataFrameLength - *pDataIdx || iLength <= 0) { + ssp_dbg("[SSP]: MSG From MCU - invalid debug length(%d/%d/%d)\n", + iLength, iRcvDataFrameLength, cur); + return iLength ? iLength : ERROR; + } + + ssp_dbg("[SSP]: MSG From MCU - %s\n", &pchRcvDataFrame[*pDataIdx]); + *pDataIdx += iLength; + return 0; +} + +void reset_mcu(struct ssp_data *data) { + func_dbg(); + ssp_enable(data, false); + clean_pending_list(data); + toggle_mcu_reset(data); + ssp_enable(data, true); +} + +void sync_sensor_state(struct ssp_data *data) +{ + unsigned char uBuf[9] = {0,}; + unsigned int uSensorCnt; + int iRet = 0; +#ifdef CONFIG_SENSORS_SSP_YAS532 + iRet = set_hw_offset(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_hw_offset failed\n", __func__); + } +#endif + iRet = set_gyro_cal(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_gyro_cal failed\n", __func__); + } + iRet = set_accel_cal(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_accel_cal failed\n", __func__); + } + udelay(10); + + for (uSensorCnt = 0; uSensorCnt < SENSOR_MAX; uSensorCnt++) { + if (atomic_read(&data->aSensorEnable) & (1 << uSensorCnt)) { + s32 dMsDelay = get_msdelay(data->adDelayBuf[uSensorCnt]); + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &data->batchLatencyBuf[uSensorCnt], 4); + uBuf[8] = data->batchOptBuf[uSensorCnt]; + send_instruction(data, ADD_SENSOR, uSensorCnt, uBuf, 9); + udelay(10); + } + } + + if (data->bProximityRawEnabled == true) { + s32 dMsDelay = 20; + memcpy(&uBuf[0], &dMsDelay, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, uBuf, 4); + } + + set_proximity_threshold(data, data->uProxHiThresh,data->uProxLoThresh); + +#if SSP_SEC_DEBUG + data->bMcuDumpMode = sec_debug_is_enabled(); + iRet = ssp_send_cmd(data, MSG2SSP_AP_MCU_SET_DUMPMODE,data->bMcuDumpMode); + if (iRet < 0) { + pr_err("[SSP]: %s - MSG2SSP_AP_MCU_SET_DUMPMODE failed\n", __func__); + } +#endif +} + +static void print_sensordata(struct ssp_data *data, unsigned int uSensor) +{ + switch (uSensor) { + case ACCELEROMETER_SENSOR: + case GYROSCOPE_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].x, data->buf[uSensor].y, + data->buf[uSensor].z, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GEOMAGNETIC_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].cal_x, data->buf[uSensor].cal_y, + data->buf[uSensor].cal_y, data->buf[uSensor].accuracy, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GEOMAGNETIC_UNCALIB_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].uncal_x, data->buf[uSensor].uncal_y, + data->buf[uSensor].uncal_z, data->buf[uSensor].offset_x, + data->buf[uSensor].offset_y, data->buf[uSensor].offset_z, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#ifdef CONFIG_SENSORS_SSP_BMP182 + case PRESSURE_SENSOR: + ssp_dbg("[SSP] %u : %d, %d (%ums)\n", uSensor, + data->buf[uSensor].pressure[0], + data->buf[uSensor].pressure[1], + get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + case GESTURE_SENSOR: + ssp_dbg("[SSP] %u : %d %d %d %d (%ums)\n", uSensor, + data->buf[uSensor].data[3], data->buf[uSensor].data[4], + data->buf[uSensor].data[5], data->buf[uSensor].data[6], + get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + case TEMPERATURE_HUMIDITY_SENSOR: + ssp_dbg("[SSP] %u : %d %d %d(%ums)\n", uSensor, + data->buf[uSensor].x, data->buf[uSensor].y, + data->buf[uSensor].z, get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + case UV_SENSOR: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, data->buf[uSensor].uv, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif + case LIGHT_SENSOR: +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + ssp_dbg("[SSP] %u : %u, %u, %u, %u, %u, %u (%ums)\n", uSensor, + data->buf[uSensor].r, data->buf[uSensor].g, + data->buf[uSensor].b, data->buf[uSensor].w, + data->buf[uSensor].a_time, data->buf[uSensor].a_gain, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#else + ssp_dbg("[SSP] %u : %u, %u, %u, %u, %u, %u (%ums)\n", uSensor, + data->buf[uSensor].r, data->buf[uSensor].g, + data->buf[uSensor].b, data->buf[uSensor].w, + data->buf[uSensor].ir_cmp, data->buf[uSensor].amb_pga, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif + case PROXIMITY_SENSOR: + ssp_dbg("[SSP] %u : %d %d(%ums)\n", uSensor, + data->buf[uSensor].prox[0], data->buf[uSensor].prox[1], + get_msdelay(data->adDelayBuf[uSensor])); + break; + case STEP_DETECTOR: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].step_det, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GAME_ROTATION_VECTOR: + case ROTATION_VECTOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].quat_a, data->buf[uSensor].quat_b, + data->buf[uSensor].quat_c, data->buf[uSensor].quat_d, + data->buf[uSensor].acc_rot, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case SIG_MOTION_SENSOR: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].sig_motion, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GYRO_UNCALIB_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].uncal_x, data->buf[uSensor].uncal_y, + data->buf[uSensor].uncal_z, data->buf[uSensor].offset_x, + data->buf[uSensor].offset_y, data->buf[uSensor].offset_z, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case STEP_COUNTER: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].step_diff, + get_msdelay(data->adDelayBuf[uSensor])); + break; + default: + ssp_dbg("[SSP] Wrong sensorCnt: %u\n", uSensor); + break; + } +} + +static void debug_work_func(struct work_struct *work) +{ + unsigned int uSensorCnt; + struct ssp_data *data = container_of(work, struct ssp_data, work_debug); + + ssp_dbg("[SSP]: %s(%u) - Sensor state: 0x%x, RC: %u, CC: %u DC: %u TC: %u\n", + __func__, data->uIrqCnt, data->uSensorState, data->uResetCnt, + data->uComFailCnt, data->uDumpCnt, data->uTimeOutCnt); + + switch (data->fw_dl_state) { + case FW_DL_STATE_FAIL: + case FW_DL_STATE_DOWNLOADING: + case FW_DL_STATE_SYNC: + pr_info("[SSP] : %s firmware downloading state = %d\n", __func__, + data->fw_dl_state); + return; + } + + for (uSensorCnt = 0; uSensorCnt < SENSOR_MAX; uSensorCnt++) + if ((atomic_read(&data->aSensorEnable) & (1 << uSensorCnt)) + || data->batchLatencyBuf[uSensorCnt]) + print_sensordata(data, uSensorCnt); + + if (data->uTimeOutCnt > LIMIT_TIMEOUT_CNT) { + if (data->uComFailCnt < LIMIT_RESET_CNT) { + pr_info("[SSP] : %s - uTimeOutCnt(%u), pending(%u)\n", + __func__, data->uTimeOutCnt, !list_empty(&data->pending_list)); + data->uComFailCnt++; + reset_mcu(data); + } else + ssp_enable(data, false); + data->uTimeOutCnt = 0; + } + + data->uIrqCnt = 0; +} + +static void debug_timer_func(unsigned long ptr) +{ + struct ssp_data *data = (struct ssp_data *)ptr; + + queue_work(data->debug_wq, &data->work_debug); + mod_timer(&data->debug_timer, + round_jiffies_up(jiffies + SSP_DEBUG_TIMER_SEC)); +} + +void enable_debug_timer(struct ssp_data *data) +{ + mod_timer(&data->debug_timer, + round_jiffies_up(jiffies + SSP_DEBUG_TIMER_SEC)); +} + +void disable_debug_timer(struct ssp_data *data) +{ + del_timer_sync(&data->debug_timer); + cancel_work_sync(&data->work_debug); +} + +int initialize_debug_timer(struct ssp_data *data) +{ + setup_timer(&data->debug_timer, debug_timer_func, (unsigned long)data); + + data->debug_wq = create_singlethread_workqueue("ssp_debug_wq"); + if (!data->debug_wq) + return ERROR; + + INIT_WORK(&data->work_debug, debug_work_func); + return SUCCESS; +} diff --git a/drivers/sensorhub/stm_hestia/ssp_dev.c b/drivers/sensorhub/stm_hestia/ssp_dev.c new file mode 100755 index 000000000000..b350f21b1e3f --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_dev.c @@ -0,0 +1,713 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#ifdef CONFIG_OF +#include +#endif +#if SSP_SEC_DEBUG +#include +#endif + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler); +static void ssp_late_resume(struct early_suspend *handler); +#endif + +#ifdef CONFIG_SEC_HESTIA_PROJECT +#define NORMAL_SENSOR_STATE 0x23ff9f +#else +#define NORMAL_SENSOR_STATE 0x3FEFF +#endif + +void ssp_enable(struct ssp_data *data, bool enable) +{ + pr_info("[SSP] %s, enable = %d, old enable = %d\n", + __func__, enable, data->bSspShutdown); + + if (enable && data->bSspShutdown) { + data->bSspShutdown = false; + enable_irq(data->iIrq); + enable_irq_wake(data->iIrq); + } else if (!enable && !data->bSspShutdown) { + data->bSspShutdown = true; + disable_irq(data->iIrq); + disable_irq_wake(data->iIrq); + } else + pr_err("[SSP] %s, enable error\n", __func__); +} +/************************************************************************/ +/* interrupt happened due to transition/change of SSP MCU */ +/************************************************************************/ + +static irqreturn_t sensordata_irq_thread_fn(int iIrq, void *dev_id) +{ + struct ssp_data *data = dev_id; + if(gpio_get_value(data->mcu_int1)) { + pr_info("[SSP] MCU int HIGH"); + return IRQ_HANDLED; + } + + select_irq_msg(data); + data->uIrqCnt++; + + return IRQ_HANDLED; +} + +/*************************************************************************/ +/* initialize sensor hub */ +/*************************************************************************/ + +static void initialize_variable(struct ssp_data *data) +{ + int iSensorIndex; + + for (iSensorIndex = 0; iSensorIndex < SENSOR_MAX; iSensorIndex++) { + data->adDelayBuf[iSensorIndex] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[iSensorIndex] = 0; + data->batchOptBuf[iSensorIndex] = 0; + data->aiCheckStatus[iSensorIndex] = INITIALIZATION_STATE; + } + + atomic_set(&data->aSensorEnable, 0); + data->iLibraryLength = 0; + data->uSensorState = NORMAL_SENSOR_STATE; + data->uFactoryProxAvg[0] = 0; + data->uMagCntlRegData = 1; + + data->uResetCnt = 0; + data->uTimeOutCnt = 0; + data->uComFailCnt = 0; + data->uIrqCnt = 0; + + data->bSspShutdown = true; + data->bProximityRawEnabled = false; + data->bGeomagneticRawEnabled = false; + data->bBarcodeEnabled = false; + data->bAccelAlert = false; + data->bTimeSyncing = true; + + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + + data->magoffset.x = 0; + data->magoffset.y = 0; + data->magoffset.z = 0; + data->iPressureCal = 0; + + data->uProxCanc = 0; + data->uProxHiThresh = 0; + data->uProxLoThresh = 0; + data->uGyroDps = GYROSCOPE_DPS500; + data->uIr_Current = 0; + + data->mcu_device = NULL; + data->acc_device = NULL; + data->gyro_device = NULL; + data->mag_device = NULL; + data->prs_device = NULL; + data->prox_device = NULL; + data->light_device = NULL; +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + data->ges_device = NULL; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + data->uv_device = NULL; +#endif + data->voice_device = NULL; +#if SSP_SEC_DEBUG + data->bMcuDumpMode = sec_debug_is_enabled(); +#endif + INIT_LIST_HEAD(&data->pending_list); + + data->step_count_total = 0; + data->sealevelpressure = 0; + initialize_function_pointer(data); +} + +int initialize_mcu(struct ssp_data *data) +{ + int iRet = 0; + + clean_pending_list(data); + + iRet = get_chipid(data); + pr_info("[SSP] MCU device ID = %d, reading ID = %d\n", DEVICE_ID, iRet); + if (iRet != DEVICE_ID) { + if (iRet < 0) { + pr_err("[SSP]: %s - MCU is not working : 0x%x\n", + __func__, iRet); + } else { + pr_err("[SSP]: %s - MCU identification failed\n", + __func__); + iRet = -ENODEV; + } + goto out; + } + + iRet = set_sensor_position(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_sensor_position failed\n", __func__); + goto out; + } + + iRet = get_fuserom_data(data); + if (iRet < 0) + pr_err("[SSP]: %s - get_fuserom_data failed\n", __func__); + + data->uSensorState = get_sensor_scanning_info(data); + if (data->uSensorState == 0) { + pr_err("[SSP]: %s - get_sensor_scanning_info failed\n", + __func__); + iRet = ERROR; + goto out; + } + + data->uCurFirmRev = get_firmware_rev(data); + pr_info("[SSP] MCU Firm Rev : New = %8u\n", + data->uCurFirmRev); + + iRet = ssp_send_cmd(data, MSG2SSP_AP_MCU_DUMP_CHECK, 0); +out: + return iRet; +} + +static int initialize_irq(struct ssp_data *data) +{ + int iRet, iIrq; + iIrq = gpio_to_irq(data->mcu_int1); + + pr_info("[SSP]: requesting IRQ %d\n", iIrq); + iRet = request_threaded_irq(iIrq, NULL, sensordata_irq_thread_fn, + IRQF_TRIGGER_FALLING|IRQF_ONESHOT, "SSP_Int", data); + if (iRet < 0) { + pr_err("[SSP]: %s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, iIrq, iIrq, iRet); + goto err_request_irq; + } + + /* start with interrupts disabled */ + data->iIrq = iIrq; + disable_irq(data->iIrq); + return 0; + +err_request_irq: + gpio_free(data->mcu_int1); + return iRet; +} + +static void work_function_firmware_update(struct work_struct *work) +{ + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_firmware); + int iRet = 0; + + pr_info("[SSP] : %s\n", __func__); + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet < 0) { + ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", + __func__); + data->uSensorState = 0; + return; + } + + queue_refresh_task(data, SSP_SW_RESET_TIME); +} + +static int ssp_parse_dt(struct device *dev, + struct ssp_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + + data->mcu_int1 = of_get_named_gpio_flags(np, "ssp,mcu_int1-gpio", + 0, &flags); + if (data->mcu_int1 < 0) { + errorno = data->mcu_int1; + goto dt_exit; + } + + data->mcu_int2 = of_get_named_gpio_flags(np, "ssp,mcu_int2-gpio", + 0, &flags); + if (data->mcu_int2 < 0) { + errorno = data->mcu_int2; + goto dt_exit; + } + + data->ap_int = of_get_named_gpio_flags(np, "ssp,ap_int-gpio", + 0, &flags); + if (data->ap_int < 0) { + errorno = data->ap_int; + goto dt_exit; + } + +#if defined(CONFIG_MACH_KLTE_JPN) +#if defined(CONFIG_MACH_KLTE_MAX77828_JPN) + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); +#else + of_property_read_u32(np, "ssp,rst-gpio", &data->rst); +#endif +#else + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); +#endif + if (data->rst < 0) { + errorno = data->rst ; + goto dt_exit; + } + + if (of_property_read_u32(np, "ssp,acc-position", &data->accel_position)) + data->accel_position = 0; + + if (of_property_read_u32(np, "ssp,mag-position", &data->mag_position)) + data->mag_position = 0; + + if (of_property_read_u32(np, "ssp,ap-rev", &data->ap_rev)) + data->ap_rev = 0; + + errorno = gpio_request(data->mcu_int1, "mpu_ap_int1"); + if (errorno) { + pr_err("[SSP] failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + + errorno = gpio_direction_input(data->mcu_int1); + if (errorno) { + pr_err("[SSP] failed to set mcu_int1 as input\n"); + goto dt_exit; + } + + errorno = gpio_request(data->mcu_int2, "MCU_INT2"); + if (errorno) { + pr_err("[SSP] failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + gpio_direction_input(data->mcu_int2); + + errorno = gpio_request(data->ap_int, "AP_MCU_INT"); + if (errorno) { + pr_err("[SSP] failed to request AP_INT for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->ap_int, 1); + + errorno = gpio_request(data->rst, "MCU_RST"); + if (errorno) { + pr_err("[SSP] failed to request MCU_RST for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->rst, 1); + + data->reg_hub = devm_regulator_get(dev, "hub_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get hub_vreg, %ld\n", + PTR_ERR(data->reg_hub)); + } else { + regulator_enable(data->reg_hub); + } + + data->reg_sns= devm_regulator_get(dev, "psns_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get psns_vreg, %ld\n", + PTR_ERR(data->reg_sns)); + } else { + regulator_enable(data->reg_sns); + } + +dt_exit: + return errorno; +} + + +static int ssp_probe(struct spi_device *spi_dev) +{ + int iRet = 0; + struct ssp_data *data; + struct ssp_platform_data *pdata; + pr_info("[SSP] %s\n", __func__); + + if (poweroff_charging == 1 || boot_mode_recovery == 1) { + pr_err("[SSP] probe exit : lpm %d, recovery %d\n", + poweroff_charging, boot_mode_recovery); + return -ENODEV; + } + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (data == NULL) { + pr_err("[SSP]: %s - failed to allocate memory for data\n", + __func__); + iRet = -ENOMEM; + goto exit; + } + + if (spi_dev->dev.of_node) { + iRet = ssp_parse_dt(&spi_dev->dev, data); + if (iRet) { + pr_err("[SSP]: %s - Failed to parse DT\n", __func__); + goto err_setup; + } + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + } else { + pdata = spi_dev->dev.platform_data; + if (pdata == NULL) { + pr_err("[SSP]: %s - platform_data is null\n", __func__); + iRet = -ENOMEM; + goto err_setup; + } + data->wakeup_mcu = pdata->wakeup_mcu; + data->check_mcu_ready = pdata->check_mcu_ready; + data->check_mcu_busy = pdata->check_mcu_busy; + data->set_mcu_reset = pdata->set_mcu_reset; + data->read_chg = pdata->read_chg; + + /* AP system_rev */ + if (pdata->check_ap_rev) + data->ap_rev = pdata->check_ap_rev(); + else + data->ap_rev = 0; + /* For changed devices */ + if (pdata->check_changes) + data->ssp_changes = pdata->check_changes(); + else + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + + /* Get sensor positions */ + if (pdata->get_positions) + pdata->get_positions(&data->accel_position, + &data->mag_position); + else if (spi_dev->dev.of_node == NULL) { + data->accel_position = 0; + data->mag_position = 0; + } + + } + spi_dev->mode = SPI_MODE_1; + if (spi_setup(spi_dev)) { + pr_err("failed to setup spi for ssp_spi\n"); + goto err_setup; + } + + data->bProbeIsDone = false; + data->fw_dl_state = FW_DL_STATE_NONE; + data->spi = spi_dev; + spi_set_drvdata(spi_dev, data); + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_init(&data->cp_temp_adc_lock); + mutex_init(&data->bulk_temp_read_lock); +#endif + mutex_init(&data->comm_mutex); + mutex_init(&data->pending_mutex); + + if (((data->wakeup_mcu == NULL) + || (data->check_mcu_ready == NULL) + || (data->check_mcu_busy == NULL) + || (data->set_mcu_reset == NULL) + || (data->read_chg == NULL)) + && (spi_dev->dev.of_node == NULL)) { + pr_err("[SSP]: %s - function callback is null\n", __func__); + iRet = -EIO; + goto err_reset_null; + } + + pr_info("\n#####################################################\n"); + + INIT_DELAYED_WORK(&data->work_firmware, work_function_firmware_update); + + wake_lock_init(&data->ssp_wake_lock, + WAKE_LOCK_SUSPEND, "ssp_wake_lock"); + + iRet = initialize_input_dev(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create input device\n", __func__); + goto err_input_register_device; + } + + iRet = initialize_debug_timer(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create workqueue\n", __func__); + goto err_create_workqueue; + } + + iRet = initialize_irq(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create irq\n", __func__); + goto err_setup_irq; + } + + iRet = initialize_sysfs(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create sysfs\n", __func__); + goto err_sysfs_create; + } + + iRet = initialize_event_symlink(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create symlink\n", __func__); + goto err_symlink_create; + } + + initialize_variable(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* init sensorhub device */ + iRet = ssp_sensorhub_initialize(data); + if (iRet < 0) { + pr_err("%s: ssp_sensorhub_initialize err(%d)", __func__, iRet); + ssp_sensorhub_remove(data); + } +#endif + + ssp_enable(data, true); + /* check boot loader binary */ + data->fw_dl_state = check_fwbl(data); + + if (data->fw_dl_state == FW_DL_STATE_NONE) { + iRet = initialize_mcu(data); + if (iRet == ERROR) { + toggle_mcu_reset(data); + } else if (iRet < ERROR) { + pr_err("[SSP]: %s - initialize_mcu failed\n", __func__); + goto err_read_reg; + } + } + +#ifdef CONFIG_HAS_EARLYSUSPEND + data->early_suspend.suspend = ssp_early_suspend; + data->early_suspend.resume = ssp_late_resume; + register_early_suspend(&data->early_suspend); +#endif + + pr_info("[SSP]: %s - probe success!\n", __func__); + + enable_debug_timer(data); + + iRet = 0; + if (data->fw_dl_state == FW_DL_STATE_NEED_TO_SCHEDULE) { + pr_info("[SSP]: Firmware update is scheduled\n"); + schedule_delayed_work(&data->work_firmware, + msecs_to_jiffies(1000)); + data->fw_dl_state = FW_DL_STATE_SCHEDULED; + } else if (data->fw_dl_state == FW_DL_STATE_FAIL) + data->bSspShutdown = true; + data->bProbeIsDone = true; + + goto exit; + +err_read_reg: +err_symlink_create: + remove_sysfs(data); +err_sysfs_create: + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); +err_setup_irq: + destroy_workqueue(data->debug_wq); +err_create_workqueue: + remove_input_dev(data); +err_input_register_device: + wake_lock_destroy(&data->ssp_wake_lock); +err_reset_null: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); + +err_setup: + kfree(data); + pr_err("[SSP]: %s - probe failed!\n", __func__); +exit: + pr_info("#####################################################\n\n"); + return iRet; +} + +static void ssp_shutdown(struct spi_device *spi_dev) +{ + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + if (data->bProbeIsDone == false) + goto exit; + + if (data->fw_dl_state >= FW_DL_STATE_SCHEDULED && + data->fw_dl_state < FW_DL_STATE_DONE) { + pr_err("%s, cancel_delayed_work_sync state = %d\n", + __func__, data->fw_dl_state); + cancel_delayed_work_sync(&data->work_firmware); + } + + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SHUTDOWN, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SHUTDOWN failed\n", + __func__); + + ssp_enable(data, false); + clean_pending_list(data); + +#ifdef CONFIG_HAS_EARLYSUSPEND + unregister_early_suspend(&data->early_suspend); +#endif + + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); + + remove_event_symlink(data); + remove_sysfs(data); + remove_input_dev(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + ssp_sensorhub_remove(data); +#endif + + cancel_delayed_work_sync(&data->work_refresh); + destroy_workqueue(data->debug_wq); + wake_lock_destroy(&data->ssp_wake_lock); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); + + toggle_mcu_reset(data); +/* gpio_set_value_cansleep(data->rst, 0); */ + pr_info("[SSP]: %s done\n", __func__); +exit: + kfree(data); +} + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + disable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_SLEEP); + ssp_sleep_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_sleep_mode(data); +#endif +} + +static void ssp_late_resume(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + enable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_WAKEUP); + ssp_resume_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_WAKEUP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_resume_mode(data); +#endif +} + +#else /* CONFIG_HAS_EARLYSUSPEND */ + +static int ssp_suspend(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + data->uLastResumeState = MSG2SSP_AP_STATUS_SUSPEND; + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SUSPEND, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SUSPEND failed\n", + __func__); + data->bTimeSyncing = false; + disable_irq(data->iIrq); + return 0; +} + +static int ssp_resume(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + enable_irq(data->iIrq); + func_dbg(); + enable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_RESUME, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_RESUME failed\n", + __func__); + data->uLastResumeState = MSG2SSP_AP_STATUS_RESUME; + + return 0; +} + +static const struct dev_pm_ops ssp_pm_ops = { + .suspend = ssp_suspend, + .resume = ssp_resume +}; +#endif /* CONFIG_HAS_EARLYSUSPEND */ + +static const struct spi_device_id ssp_id[] = { + {"ssp", 0}, + {} +}; + +MODULE_DEVICE_TABLE(spi, ssp_id); +#ifdef CONFIG_OF +static struct of_device_id ssp_match_table[] = { + { .compatible = "ssp,STM32F",}, + {}, +}; +#else +#define mpu6500_match_table NULL +#endif + +static struct spi_driver ssp_driver = { + .probe = ssp_probe, + .shutdown = ssp_shutdown, + .id_table = ssp_id, + .driver = { +#ifndef CONFIG_HAS_EARLYSUSPEND + .pm = &ssp_pm_ops, +#endif + .owner = THIS_MODULE, + .name = "ssp", + .of_match_table = ssp_match_table + }, +}; + +module_spi_driver(ssp_driver); +MODULE_DESCRIPTION("ssp driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_hestia/ssp_firmware.c b/drivers/sensorhub/stm_hestia/ssp_firmware.c new file mode 100755 index 000000000000..a7fa51dd2cc7 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_firmware.c @@ -0,0 +1,894 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define SSP_FIRMWARE_REVISION_STM 14051400 +#define SSP_FIRMWARE_REVISION_TASMAN 14051300 +#define SSP_FIRMWARE_REVISION_HESTIA 14073100 + +#define BOOT_SPI_HZ 4800000 +#define NORM_SPI_HZ 4800000 + +/* Bootload mode cmd */ +#define BL_FW_NAME "ssp_stm.fw" +#define BL_FW_NAME_TASMAN "ssp_stm_tasman.fw" +#define BL_FW_NAME_HESTIA "ssp_stm_hestia.fw" +#define BL_UMS_FW_NAME "ssp_stm.bin" +#define BL_CRASHED_FW_NAME "ssp_crashed.fw" + +#define BL_UMS_FW_PATH 255 + +#define APP_SLAVE_ADDR 0x18 +#define BOOTLOADER_SLAVE_ADDR 0x26 + +/* Bootloader mode status */ +#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ +#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ +#define BL_FRAME_CRC_CHECK 0x02 +#define BL_FRAME_CRC_FAIL 0x03 +#define BL_FRAME_CRC_PASS 0x04 +#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ +#define BL_BOOT_STATUS_MASK 0x3f + +/* Command to unlock bootloader */ +#define BL_UNLOCK_CMD_MSB 0xaa +#define BL_UNLOCK_CMD_LSB 0xdc + +/* STM */ +#define SSP_STM_DEBUG 0 +#define STM_SHOULD_BE_IMPLEMENT 0 + +#define SEND_ADDR_LEN 5 +#define BL_SPI_SOF 0x5A +#define BL_ACK 0x79 +#define BL_ACK2 0xF9 +#define BL_NACK 0x1F +#define BL_IDLE 0xA5 +#define BL_DUMMY 0x00 + +#define STM_MAX_XFER_SIZE 256 +#define STM_MAX_BUFFER_SIZE 260 +#define STM_APP_ADDR 0x08000000 + +#define BYTE_DELAY_READ 10 +#define BYTE_DELAY_WRITE 8 + +#define DEF_ACK_ERASE_NUMBER 14000 // Erase time ack wait increase : Flash size adjust +#define DEF_ACKCMD_NUMBER 40 +#define DEF_ACKROOF_NUMBER 40 + +#define WMEM_COMMAND 0x31 /* Write Memory command */ +#define GO_COMMAND 0x21 /* GO command */ +#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ + +#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ + +#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ +#define XOR_GO_COMMAND 0xDE /* GO command */ +#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ + +#define EXT_ER_DATA_LEN 3 +#define BLMODE_RETRYCOUNT 3 +#define BYTETOBYTE_USED 0 + +struct stm32fwu_spi_cmd { + u8 cmd; + u8 xor_cmd; + u8 ack_pad; /* Send this when waiting for an ACK */ + u8 reserved; + int status; /* ACK or NACK (or error) */ + int timeout; /* This is number of retries */ + int ack_loops; // Not used +}; + +static int stm32fwu_spi_write(struct spi_device *spi, const u8 *buffer, ssize_t len); + + +unsigned int get_module_rev(struct ssp_data *data) +{ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + return SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SENSORS_SSP_STM_HESTIA) + return SSP_FIRMWARE_REVISION_HESTIA; +#else + return SSP_FIRMWARE_REVISION_STM; +#endif +} + +static void stm32fwu_spi_send_ack( struct spi_device *spi, u8 SyncData ) +{ + u8 syncb[2] = {0}; + syncb[0] = SyncData; + stm32fwu_spi_write(spi, syncb, 1); +} + +static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) +{ + static int check_spi_wait_cnt = 1; + + struct spi_message m; + char tx_buf = 0x0; + char rx_buf = 0x0; + struct spi_transfer t = { + .tx_buf = &tx_buf, + .rx_buf = &rx_buf, + .len = 1, + .bits_per_word = 8, + }; + int i = 0; + int ret; + dummy_bytes = BL_DUMMY; +#if SSP_STM_DEBUG + pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", + __func__, dummy_bytes); +#endif + while (i < cmd->timeout) { + tx_buf = dummy_bytes; + spi_message_init(&m); + spi_message_add_tail(&t, &m); + + ret = spi_sync(spi, &m); + + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } else if ((rx_buf == BL_ACK) || (rx_buf == BL_NACK)) { + // ACK cmd set + stm32fwu_spi_send_ack(spi, BL_ACK); + return (int)rx_buf; + } else { + // Cross cmd set + tx_buf = rx_buf; + } + if (check_spi_wait_cnt % 20 == 0) + msleep(1); + else + usleep_range(1000, 1100); + i++; + check_spi_wait_cnt++; + } +#if SSP_STM_DEBUG + dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); +#endif + return -EIO; +} + +static int stm32fwu_spi_send_cmd(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd) +{ + u8 tx_buf[3] = {0,}; + u8 rx_buf[3] = {0,}; + u8 dummy_byte = 0; + struct spi_message m; + int ret; +#if BYTETOBYTE_USED + int i; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); +#else + struct spi_transfer t = { + .tx_buf = tx_buf, + .rx_buf = rx_buf, + .len = 3, + .bits_per_word = 8, + }; +#endif + pr_debug("[SSP]%s\n", __func__); + + spi_message_init(&m); + tx_buf[0] = BL_SPI_SOF; + tx_buf[1] = cmd->cmd; + tx_buf[2] = cmd->xor_cmd; + +#if BYTETOBYTE_USED + for (i = 0; i < 3; i++) { + t[i].tx_buf = &tx_buf[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + + ret = spi_sync(spi, &m); + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } + + dummy_byte = cmd->ack_pad; + + /* check for ack/nack and loop until found */ + ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); + cmd->status = ret; + + if (ret != BL_ACK) { + pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); + return ret; + } + + return ret; +} +#if STM_SHOULD_BE_IMPLEMENT +static int stm32fwu_spi_read(struct spi_device *spi, + u8 *buffer, ssize_t len) +{ + int ret; + int i; + u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + + spi_message_init(&m); + + for (i = 0; i < len; i++) { + t[i].tx_buf = tx_buf; + t[i].rx_buf = &buffer[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_READ; + spi_message_add_tail(&t[i], &m); + } + + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_read()\n", ret); + return ret; + } + + return len; +} +#endif + +static int stm32fwu_spi_write(struct spi_device *spi, + const u8 *buffer, ssize_t len) +{ + int ret; + u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; +#if BYTETOBYTE_USED + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + int i; +#else + struct spi_transfer t = { + .tx_buf = buffer, + .rx_buf = rx_buf, + .len = len, + .bits_per_word = 8, + }; +#endif + spi_message_init(&m); +#if BYTETOBYTE_USED + for (i = 0; i < len; i++) { + t[i].tx_buf = &buffer[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_write()\n", ret); + return ret; + } + + return len; +} + +static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) +{ + int res; + int i = send_short; + int len = SEND_ADDR_LEN - send_short; + u8 header[SEND_ADDR_LEN]; + struct stm32fwu_spi_cmd dummy_cmd; + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + pr_debug("[SSP]%s\n", __func__); + + + header[0] = (u8)((fw_addr >> 24) & 0xFF); + header[1] = (u8)((fw_addr >> 16) & 0xFF); + header[2] = (u8)((fw_addr >> 8) & 0xFF); + header[3] = (u8)(fw_addr & 0xFF); + header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; + + res = stm32fwu_spi_write(spi, &header[i], len); + + if (res < len) { + pr_err("[SSP] Error in sending address. Res %d\n", res); + return ((res > 0) ? -EIO : res); + } + + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res != BL_ACK) { + pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", + res); + return res; + } + return 0; +} + +#if STM_SHOULD_BE_IMPLEMENT +static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) +{ + int res; + uchar bbuff[3]; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + if (bytes > 256) { + return -EINVAL; + } + + bbuff[0] = bytes - 1; + bbuff[1] = ~bbuff[0]; + + res = stm32fwu_spi_write(spi, bbuff, 2); + + if (res < 2) { + return -EPROTO; + } + + if (get_ack) { + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (res != BL_ACK) { + return -EPROTO; + } + } + return 0; +} + +static int fw_read_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_RMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + + res = stm32fwu_spi_send_cmd(spi, &cmd); + + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending read_mem Address\n", res); + return res; + } + + res = send_byte_count(spi, len, 1); + + if (res != 0) { + return -EPROTO; + } + + // Add Read Syc + stm32fwu_spi_send_ack(spi, BL_DUMMY); + + res = stm32fwu_spi_read(spi, buffer, len); + + if (res < len) { + return -EIO; + } + + return len; +} +#endif + +static int fw_write_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_WMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + pr_debug("[SSP]%s\n", __func__); +#if SSP_STM_DEBUG + pr_info("[SSP] sending WMEM_COMMAND\n"); +#endif + + if (len > STM_MAX_XFER_SIZE) { + pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); + return -EINVAL; + } + + send_buff[0] = len - 1; + memcpy(&send_buff[1], buffer, len); + for (i = 0; i < (len + 1); i++) + xor ^= send_buff[i]; + + send_buff[len + 1] = xor; + + res = stm32fwu_spi_send_cmd(spi, &cmd); + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending write_mem Address\n", res); + return res; + } + + res = stm32fwu_spi_write(spi, send_buff, len + 2); + if (res < len) { + pr_err("[SSP] Error writing to flash. res = %d\n", res); + return ((res > 0) ? -EIO : res); + } + pr_debug("[SSP]%s 2\n", __func__); + + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + usleep_range(100, 150); /* Samsung added */ + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res == BL_ACK) { + return len; + } + + if (res == BL_NACK) { + pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); + return -EPROTO; + } + pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); + return -ETIME; +} + +static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const u8 *buff = NULL; + char fw_path[BL_UMS_FW_PATH+1]; + unsigned int uFSize = 0, uNRead = 0; + unsigned int uPos = 0; + int iRet = SUCCESS; + int remaining; + int block = STM_MAX_XFER_SIZE; + unsigned int fw_addr = STM_APP_ADDR; + int retry_count = 0; + int err_count = 0; + int count = 0; + struct file *fp = NULL; + mm_segment_t old_fs = get_fs(); + + pr_info("[SSP] ssp_load_ums_fw start!!!\n"); + + old_fs = get_fs(); + set_fs(get_ds()); + + snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); + + fp = filp_open(fw_path, O_RDONLY, 0); + if (IS_ERR(fp)) { + iRet = ERROR; + pr_err("file %s open error:%d\n", fw_path, (s32)fp); + goto err_open; + } + + uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; + pr_info("ssp_load_ums firmware size: %u\n", uFSize); + + buff = kzalloc((size_t)uFSize, GFP_KERNEL); + if (!buff) { + iRet = ERROR; + pr_err("fail to alloc buffer for fw\n"); + goto err_alloc; + } + + uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, + (unsigned int)uFSize, &fp->f_pos); + if (uNRead != uFSize) { + iRet = ERROR; + pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); + goto err_fw_size; + } + remaining = uFSize; + + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 50) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + uFSize); + count = 0; + } + } + pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); +out: +err_fw_size: + kfree(buff); +err_alloc: + filp_close(fp, NULL); +err_open: + set_fs(old_fs); + + return iRet; +} + +static int fw_erase_stm(struct spi_device *spi) +{ + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int ret; + char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; + pr_debug("[SSP]%s\n", __func__); + cmd.cmd = EXT_ER_COMMAND; + cmd.xor_cmd = XOR_EXT_ER_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = BL_DUMMY; + + ret = stm32fwu_spi_send_cmd(spi, &cmd); + + if (ret != BL_ACK) { + pr_err("[SSP] fw_erase failed - %d\n", ret); + return ret; + } + + ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); + + if( ret < EXT_ER_DATA_LEN ) + { + pr_err("[SSP] fw_erase write failed\n"); + return 0; + } + + dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; + + ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (ret == BL_ACK) + return 0; + else if (ret == BL_NACK) + return -EPROTO; + else + return -ETIME; + +} + +static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const struct firmware *fw = NULL; + int remaining; + unsigned int uPos = 0; + unsigned int fw_addr = STM_APP_ADDR; + int iRet; + int block = STM_MAX_XFER_SIZE; + int count = 0; + int err_count = 0; + int retry_count = 0; + + pr_info("[SSP] ssp_load_fw start!!!\n"); + + iRet = request_firmware(&fw, pFn, &spi->dev); + if (iRet) { + pr_err("[SSP] Unable to open firmware %s\n", pFn); + return iRet; + } + + remaining = fw->size; + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out_load_kernel; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 20) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + fw->size); + count = 0; + } + } + + pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); + +out_load_kernel: + release_firmware(fw); + return iRet; +} + +static int change_to_bootmode(struct ssp_data *data) +{ + int iCnt; + int ret; + char syncb = BL_SPI_SOF; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + dummy_cmd.timeout = DEF_ACKCMD_NUMBER; + + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(45000, 47000); + + + for (iCnt = 0; iCnt < 9; iCnt++) { + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(15000, 15500); + } +#if CONFIG_SENSORS_SSP_STM_HESTIA + data->spi->mode = SPI_MODE_0; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for boot\n"); + usleep_range(1000, 1100); +#endif + ret = stm32fwu_spi_write(data->spi, &syncb, 1); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); +#endif + + ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_DUMMY); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", ret, ret); +#endif + + return ret; +} + +void toggle_mcu_reset(struct ssp_data *data) +{ + gpio_set_value_cansleep(data->rst, 0); + + usleep_range(1000, 1200); + + gpio_set_value_cansleep(data->rst, 1); +} + +static int update_mcu_bin(struct ssp_data *data, int iBinType) +{ + int retry = BLMODE_RETRYCOUNT; + int iRet = SUCCESS; + struct stm32fwu_spi_cmd cmd; + + cmd.cmd = GO_COMMAND; + cmd.xor_cmd = XOR_GO_COMMAND; + cmd.timeout = 1000; + cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); + + // 1. Start system boot mode + do { + iRet = change_to_bootmode(data); + pr_info("[ssp] bootmode 0x%x retry: %d\n", iRet, 3 - retry); + } while (retry-- > 0 && iRet != BL_ACK ); + + if(iRet != BL_ACK) { + pr_err("[SSP]: %s - change_to_bootmode %d\n", + __func__, iRet); + return iRet; + } + + // 2. Flash erase all + iRet = fw_erase_stm(data->spi); + if (iRet < 0) { + pr_err("[SSP]: %s - fw_erase_stm %d\n", + __func__, iRet); + return iRet; + } + + switch (iBinType) { + case KERNEL_BINARY: + /* HW request: I2C line is reversed */ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_TASMAN); +#elif defined(CONFIG_SENSORS_SSP_STM_HESTIA) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_HESTIA); +#else + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME); +#endif + break; + case KERNEL_CRASHED_BINARY: + iRet = load_kernel_fw_bootmode(data->spi, BL_CRASHED_FW_NAME); + break; + case UMS_BINARY: + iRet = load_ums_fw_bootmode(data->spi, BL_UMS_FW_NAME); + break; + default: + pr_err("[SSP] binary type error!!\n"); + } +/* STM : GO USER ADDR */ + stm32fwu_spi_send_cmd(data->spi, &cmd); + send_addr(data->spi, STM_APP_ADDR, 0); +#if CONFIG_SENSORS_SSP_STM_HESTIA + data->spi->mode = SPI_MODE_1; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for app\n"); + usleep_range(1000, 1100); +#endif + return iRet; +} + +int forced_to_download_binary(struct ssp_data *data, int iBinType) +{ + int iRet = 0; + int retry = 3; + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + ssp_enable(data, false); + + data->fw_dl_state = FW_DL_STATE_DOWNLOADING; + pr_info("[SSP] %s, DL state = %d\n", __func__, + data->fw_dl_state); + data->spi->max_speed_hz = BOOT_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_boot\n"); + + do { + pr_info("[SSP] %d try\n", 3 - retry); + iRet = update_mcu_bin(data, iBinType); + } while (retry -- > 0 && iRet < 0); + data->spi->max_speed_hz = NORM_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_norm\n"); + + if (iRet < 0) { + ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); + goto out; + } + + data->fw_dl_state = FW_DL_STATE_SYNC; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + ssp_enable(data, true); + + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + accel_open_calibration(data); + gyro_open_calibration(data); +#ifdef CONFIG_SENSORS_SSP_BMP182 + pressure_open_calibration(data); +#endif + data->fw_dl_state = FW_DL_STATE_DONE; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + + iRet = SUCCESS; +out: + return iRet; +} + +int check_fwbl(struct ssp_data *data) +{ + + unsigned int fw_revision; + + pr_info("[SSP] change_rev = %d\n", data->ssp_changes); +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + fw_revision = SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SENSORS_SSP_STM_HESTIA) + fw_revision = SSP_FIRMWARE_REVISION_HESTIA; +#else + fw_revision = SSP_FIRMWARE_REVISION_STM; +#endif + + data->uCurFirmRev = get_firmware_rev(data); + + if ((data->uCurFirmRev == SSP_INVALID_REVISION) + || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { +#if STM_SHOULD_BE_IMPLEMENT + data->client->addr = BOOTLOADER_SLAVE_ADDR; + iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); + + if (iRet >= 0) + pr_info("[SSP] ssp_load_fw_bootmode\n"); + else { + pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", + data->uCurFirmRev); + data->client->addr = APP_SLAVE_ADDR; + data->uCurFirmRev = get_firmware_rev(data); + if (data->uCurFirmRev == SSP_INVALID_REVISION + || data->uCurFirmRev == ERROR) { + pr_err("[SSP] MCU is not working, FW download failed\n"); + return FW_DL_STATE_FAIL; + } + } +#endif + data->uCurFirmRev = SSP_INVALID_REVISION; + pr_err("[SSP] SSP_INVALID_REVISION\n"); + return FW_DL_STATE_NEED_TO_SCHEDULE; + } else { + if (data->uCurFirmRev != fw_revision) { + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + } + + return FW_DL_STATE_NONE; +} diff --git a/drivers/sensorhub/stm_hestia/ssp_i2c.c b/drivers/sensorhub/stm_hestia/ssp_i2c.c new file mode 100755 index 000000000000..f22764e83257 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_i2c.c @@ -0,0 +1,810 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define LIMIT_DELAY_CNT 200 +#define RECEIVEBUFFERSIZE 12 +#define DEBUG_SHOW_DATA 0 + +static void clean_msg(struct ssp_msg *msg) { + if (msg->free_buffer) + kfree(msg->buffer); + kfree(msg); +} + +static int do_transfer(struct ssp_data *data, struct ssp_msg *msg, + struct completion *done, int timeout) { + int status = 0; + int iDelaycnt = 0; + bool msg_dead = false, ssp_down = false; + bool use_no_irq = msg->length == 0; + + msg->dead_hook = &msg_dead; + msg->dead = false; + msg->done = done; + + mutex_lock(&data->comm_mutex); + + gpio_set_value_cansleep(data->ap_int, 0); + while (gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit1 - Time out!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + } + + status = spi_write(data->spi, msg, 9) >= 0; + + if (status == 0) { + pr_err("[SSP]: %s spi_write fail!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + + if (!use_no_irq) { + mutex_lock(&data->pending_mutex); + list_add_tail(&msg->list, &data->pending_list); + mutex_unlock(&data->pending_mutex); + } + + iDelaycnt = 0; + gpio_set_value_cansleep(data->ap_int, 1); + while (!gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit2 - Time out!!\n", __func__); + status = -2; + goto exit; + } + } + +exit: + mutex_unlock(&data->comm_mutex); + + if (ssp_down) + pr_err("[SSP] : %s, ssp down", __func__); + + if (status == -1) { + data->uTimeOutCnt += ssp_down ? 0 : 1; + clean_msg(msg); + return status; + } + + if (status == 1 && done != NULL) + if (wait_for_completion_timeout(done, msecs_to_jiffies(timeout)) == 0) + status = -2; + + mutex_lock(&data->pending_mutex); + if (!msg_dead) { + msg->done = NULL; + msg->dead_hook = NULL; + + if (status != 1) + msg->dead = true; + if (status == -2) + data->uTimeOutCnt += ssp_down ? 0 : 1; + } + mutex_unlock(&data->pending_mutex); + + if (use_no_irq) + clean_msg(msg); + + return status; +} + +int ssp_spi_async(struct ssp_data *data, struct ssp_msg *msg) { + int status = 0; + + status = do_transfer(data, msg, NULL, 0); + + return status; +} + +int ssp_spi_sync(struct ssp_data *data, struct ssp_msg *msg, int timeout) { + DECLARE_COMPLETION_ONSTACK(done); + int status = 0; + + if (msg->length == 0) { + pr_err("[SSP]: %s length must not be 0\n", __func__); + clean_msg(msg); + return status; + } + + status = do_transfer(data, msg, &done, timeout); + + return status; +} + +int select_irq_msg(struct ssp_data *data) { + struct ssp_msg *msg, *n; + bool found = false; + u16 chLength = 0, msg_options = 0; + u8 msg_type = 0; + int iRet = 0; + char* buffer; + char chTempBuf[4] = { -1 }; + + iRet = spi_read(data->spi, chTempBuf, sizeof(chTempBuf)); + if (iRet < 0) { + pr_err("[SSP]: %s spi_read fail!!\n", __func__); + return ERROR; + } + + memcpy(&msg_options, &chTempBuf[0], 2); + msg_type = msg_options & SSP_SPI_MASK; + memcpy(&chLength, &chTempBuf[2], 2); + + switch (msg_type) { + case AP2HUB_READ: + case AP2HUB_WRITE: + mutex_lock(&data->pending_mutex); + if (!list_empty(&data->pending_list)) { + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + if (msg->options == msg_options) { + list_del(&msg->list); + found = true; + break; + } + } + + if (!found) { + pr_err("[SSP]: %s %d - Not match error\n", __func__, msg_options); + goto exit; + } + + if (msg->dead && !msg->free_buffer) { + msg->buffer = (char*) kzalloc(msg->length, GFP_KERNEL); + msg->free_buffer = 1; + } // For dead msg, make a temporary buffer to read. + + if (msg_type == AP2HUB_READ) + iRet = spi_read(data->spi, msg->buffer, msg->length); + if (msg_type == AP2HUB_WRITE) { + iRet = spi_write(data->spi, msg->buffer, msg->length); + + if (msg_options & AP2HUB_RETURN) { + msg->options = AP2HUB_READ | AP2HUB_RETURN; + msg->length = 1; + list_add_tail(&msg->list, &data->pending_list); + goto exit; + } + } + + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } else + pr_err("[SSP]List empty error(%d)\n", msg_type); + exit: + mutex_unlock(&data->pending_mutex); + break; + case HUB2AP_WRITE: + buffer = (char*) kzalloc(chLength, GFP_KERNEL); + if (buffer == NULL) { + pr_err("[SSP] %s, failed to alloc memory for buffer\n", __func__); + iRet = -ENOMEM; + break; + } + iRet = spi_read(data->spi, buffer, chLength); + parse_dataframe(data, buffer, chLength); + kfree(buffer); + break; + default: + pr_err("[SSP]No type error(%d)\n", msg_type); + break; + } + + if (iRet < 0) { + pr_err("[SSP]: %s - MSG2SSP_SSD error %d\n", __func__, iRet); + return ERROR; + } + + return SUCCESS; +} + +void clean_pending_list(struct ssp_data *data) { + struct ssp_msg *msg, *n; + mutex_lock(&data->pending_mutex); + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + list_del(&msg->list); + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } + mutex_unlock(&data->pending_mutex); +} + +int ssp_send_cmd(struct ssp_data *data, char command, int arg) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = 0; + msg->options = AP2HUB_WRITE; + msg->data = arg; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - command 0x%x failed %d\n", + __func__, command, iRet); + return ERROR; + } + + ssp_dbg("[SSP]: %s - command 0x%x %d\n", __func__, command, arg); + + return SUCCESS; +} + +int send_instruction(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + iRet = -ENOMEM; + return iRet; + } + + if(uSensorType == GEOMAGNETIC_SENSOR) + uLength += 1; + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(uLength + 1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + if(uSensorType == GEOMAGNETIC_SENSOR) { + msg->buffer[10] = MAG_LOG_MODE; + } + ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = 0x%x, data = %u\n", + __func__, command, uSensorType, msg->buffer[1]); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + return iRet; +} + +int send_instruction_sync(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + char buffer[10] = { 0, }; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE | AP2HUB_RETURN; + msg->buffer = buffer; + msg->free_buffer = 0; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + + ssp_dbg("[SSP]: %s - Inst Sync = 0x%x, Sensor Type = %u, data = %u\n", + __func__, command, uSensorType, msg->buffer[0]); + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + return buffer[0]; +} + +int flush(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + char buffer = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_FLUSH; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, + buffer); + + return buffer ? 0 : -1; +} + +int get_batch_count(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + s32 result = 0; + char buffer[4] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_COUNT; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + memcpy(&result, buffer, 4); + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, + result); + + return result; +} + +int get_chipid(struct ssp_data *data) +{ + int iRet, iReties = 0; + char buffer = 0; + struct ssp_msg *msg; + +retries: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = MSG2SSP_AP_WHOAMI; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (buffer != DEVICE_ID && iReties++ < 2) { + mdelay(5); + pr_err("[SSP] %s - get chip ID retry\n", __func__); + goto retries; + } + + if (iRet == SUCCESS) + return buffer; + + pr_err("[SSP] %s - get chip ID failed %d\n", __func__, iRet); + return ERROR; +} + +int set_sensor_position(struct ssp_data *data) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_FORMATION; + msg->length = 3; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(3, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = data->accel_position; + msg->buffer[1] = data->accel_position; + msg->buffer[2] = data->mag_position; + + pr_info("[SSP] Sensor Posision A : %u, G : %u, M: %u\n", + data->accel_position, data->accel_position, data->mag_position); + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +void set_proximity_threshold(struct ssp_data *data, + unsigned int uData1, unsigned int uData2) +{ + int iRet = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1<uSensorState); + return; + } + + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_PROXTHRESHOLD; +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + msg->length = 4; +#else + msg->length = 2; +#endif + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(4, GFP_KERNEL); + msg->free_buffer = 1; + + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); + + //msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); + //msg->buffer[1] = (char) uData1; + //msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); + //msg->buffer[3] = (char) uData2; + + uData1 += PROX_TRIM; + uData2 += PROX_TRIM; + + if (uData1 < uData2) { + pr_info("[SSP] %s - invalid threshold (%u, %u)\n", + __func__, uData1, uData2); + uData1 = DEFUALT_HIGH_THRESHOLD; + uData2 = DEFUALT_LOW_THRESHOLD; + } +#if defined(CONFIG_SENSORS_SSP_STM_HESTIA) + msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); + msg->buffer[1] = (char) uData1; + msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); + msg->buffer[3] = (char) uData2; +#else + msg->buffer[0] = (char)uData1; + msg->buffer[1] = (char)uData2; +#endif + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOLD CMD fail %d\n", + __func__, iRet); + return; + } + + pr_info("[SSP]: Proximity Threshold - %u, %u\n", uData1, uData2); +} + +void set_proximity_barcode_enable(struct ssp_data *data, bool bEnable) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_BARCODE_EMUL; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + data->bBarcodeEnabled = bEnable; + msg->buffer[0] = bEnable; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_BARCODE_EMUL CMD fail %d\n", + __func__, iRet); + return; + } + + pr_info("[SSP] Proximity Barcode En : %u\n", bEnable); +} + +void set_gesture_current(struct ssp_data *data, unsigned char uData1) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_GESTURE_CURRENT; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uData1; + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_GESTURE_CURRENT CMD fail %d\n", __func__, + iRet); + return; + } + + pr_info("[SSP]: Gesture Current Setting - %u\n", uData1); +} + +unsigned int get_sensor_scanning_info(struct ssp_data *data) { + int iRet = 0, z = 0; + u32 result = 0; + char bin[SENSOR_MAX + 1]; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = MSG2SSP_AP_SENSOR_SCANNING; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = (char*) &result; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + + bin[SENSOR_MAX] = '\0'; + for (z = 0; z < SENSOR_MAX; z++) + bin[SENSOR_MAX - 1 - z] = (result & (1 << z)) ? '1' : '0'; + pr_err("[SSP]: state: %s\n", bin); + + return result; +} + +unsigned int get_firmware_rev(struct ssp_data *data) { + int iRet; + u32 result = SSP_INVALID_REVISION; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FIRMWARE_REV; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = (char*) &result; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) + pr_err("[SSP]: %s - transfer fail %d\n", __func__, iRet); + + return result; +} + +int get_fuserom_data(struct ssp_data *data) +{ + int iRet = 0; + char buffer[3] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FUSEROM; + msg->length = 3; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet) { + data->uFuseRomData[0] = buffer[0]; + data->uFuseRomData[1] = buffer[1]; + data->uFuseRomData[2] = buffer[2]; + } else { + data->uFuseRomData[0] = 0; + data->uFuseRomData[1] = 0; + data->uFuseRomData[2] = 0; + return FAIL; + } + + pr_info("[SSP] FUSE ROM Data %d , %d, %d\n", data->uFuseRomData[0], + data->uFuseRomData[1], data->uFuseRomData[2]); + + return SUCCESS; +} + +int set_big_data_start(struct ssp_data *data, u8 type, u32 length) { + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_START_BIG_DATA; + msg->length = 5; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(5, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = type; + memcpy(&msg->buffer[1], &length, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int set_time(struct ssp_data *data) { + int iRet; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_TIME; + msg->length = 12; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(12, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = tm.tm_hour; + msg->buffer[1] = tm.tm_min; + msg->buffer[2] = tm.tm_sec; + msg->buffer[3] = tm.tm_hour > 11 ? 64 : 0; + msg->buffer[4] = tm.tm_wday; + msg->buffer[5] = tm.tm_mon + 1; + msg->buffer[6] = tm.tm_mday; + msg->buffer[7] = tm.tm_year % 100; + memcpy(&msg->buffer[8], &ts.tv_nsec, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int get_time(struct ssp_data *data) { + int iRet; + char buffer[12] = { 0, }; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s ap %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_GET_TIME; + msg->length = 12; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c failed %d\n", __func__, iRet); + return 0; + } + + tm.tm_hour = buffer[0]; + tm.tm_min = buffer[1]; + tm.tm_sec = buffer[2]; + tm.tm_mon = msg->buffer[5] - 1; + tm.tm_mday = buffer[6]; + tm.tm_year = buffer[7] + 100; + rtc_tm_to_time(&tm, &ts.tv_sec); + memcpy(&ts.tv_nsec, &msg->buffer[8], 4); + + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s mcu %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + return iRet; +} + diff --git a/drivers/sensorhub/stm_hestia/ssp_iio_ring.c b/drivers/sensorhub/stm_hestia/ssp_iio_ring.c new file mode 100755 index 000000000000..0f5da8d5eb05 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_iio_ring.c @@ -0,0 +1,1978 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/kfifo_buf.h" +#include "../../staging/iio/trigger_consumer.h" +#include "../../staging/iio/sysfs.h" + +//#include "inv_mpu_iio.h" + +#if 0 +static u8 fifo_data[HARDWARE_FIFO_SIZE + HEADERED_Q_BYTES]; +static int inv_process_batchmode(struct inv_mpu_state *st, bool insert); + +static int inv_push_marker_to_buffer(struct inv_mpu_state *st, u16 hdr) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + + memcpy(buf, &hdr, sizeof(hdr)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_push_8bytes_buffer(struct inv_mpu_state *st, u16 hdr, + u64 t, s16 *d) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + int i; + + memcpy(buf, &hdr, sizeof(hdr)); + for (i = 0; i < 3; i++) + memcpy(&buf[2 + i * 2], &d[i], sizeof(d[i])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + memcpy(buf, &t, sizeof(t)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_push_16bytes_buffer(struct inv_mpu_state *st, u16 hdr, u64 t, + int *q) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + int i; + + memcpy(buf, &hdr, sizeof(hdr)); + memcpy(buf + 4, &q[0], sizeof(q[0])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + for (i = 0; i < 2; i++) + memcpy(buf + 4 * i, &q[i + 1], sizeof(q[i])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + memcpy(buf, &t, sizeof(t)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_send_pressure_data(struct inv_mpu_state *st) +{ + short sen[3]; + struct inv_chip_config_s *conf; + struct inv_mpu_slave *slave; + u64 curr_ts; + + conf = &st->chip_config; + slave = st->slave_pressure; + if (!st->sensor[SENSOR_PRESSURE].on) + return 0; + if (conf->dmp_on && conf->dmp_event_int_on) + return 0; + if (!conf->normal_pressure_measure) { + conf->normal_pressure_measure = 1; + return 0; + } + curr_ts = get_time_ns(); + if (curr_ts - slave->prev_ts > slave->min_read_time) { + slave->read_data(st, sen); + inv_push_8bytes_buffer(st, PRESSURE_HDR, st->last_ts, sen); + slave->prev_ts = curr_ts; + } + + return 0; +} + +static int inv_send_compass_data(struct inv_mpu_state *st) +{ + short sen[3]; + struct inv_chip_config_s *conf; + struct inv_mpu_slave *slave; + u64 curr_ts; + + conf = &st->chip_config; + slave = st->slave_compass; + if (!st->sensor[SENSOR_COMPASS].on) + return 0; + if (conf->dmp_on && conf->dmp_event_int_on) + return 0; + if (!conf->normal_compass_measure) { + conf->normal_compass_measure = 1; + return 0; + } + curr_ts = get_time_ns(); + if (curr_ts - slave->prev_ts > slave->min_read_time) { + slave->read_data(st, sen); + inv_push_8bytes_buffer(st, COMPASS_HDR, st->last_ts, sen); + slave->prev_ts = curr_ts; + } + + return 0; +} + +static void process_step_only_batch(struct inv_mpu_state *st) +{ + int target_bytes, tmp, r; + u8 *dptr, *d; + u16 hdr; + s16 sen[3]; + u64 t; + + d = fifo_data; + dptr = d; + + if (st->fifo_count == 0) + return; + + target_bytes = st->fifo_count; + while (target_bytes > 0) { + if (target_bytes < MAX_READ_SIZE) + tmp = target_bytes; + else + tmp = MAX_READ_SIZE; + r = inv_i2c_read(st, st->reg.fifo_r_w, tmp, dptr); + if (r < 0) + return; + dptr += tmp; + target_bytes -= tmp; + } + dptr = d; + target_bytes = st->fifo_count; + while (dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + switch (hdr & (~1)) { + case STEP_DETECTOR_HDR: + tmp = (int)be32_to_cpup((__be32 *)(dptr + 4)); + t = st->step_detector_base_ts + + (u64)tmp * 5 * NSEC_PER_MSEC; + sen[0] = sen[1] = sen[2] = 0; + inv_push_8bytes_buffer(st, hdr, t, sen); + break; + default: + break; + } + dptr += HEADERED_NORMAL_BYTES; + } + + return; +} +static int inv_batchmode_calc(struct inv_mpu_state *st) +{ + int b, c, num_rate, rate; + int i, j, timeout, num_sensor_on, timeout_count; + bool int_on; + + num_sensor_on = 0; + num_rate = 0; + rate = 0; + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (st->sensor[i].on) { + if (i != SENSOR_STEP) { + if (num_rate == 0) { + rate = st->sensor[i].rate; + num_rate++; + } else if (rate != st->sensor[i].rate) { + num_rate++; + } + num_sensor_on++; + } + } + } + if ((num_sensor_on == 0) && st->sensor[SENSOR_STEP].on) { + /* in step only batchmode, counter is fixed */ + st->batch.counter = FIFO_SIZE / 8; + st->batch.step_only = true; + st->batch.on = true; + + return 0; + } else if (num_sensor_on == 0) { + return 0; + } + + b = st->batch.timeout * st->bytes_per_sec; + if ((b > (FIFO_SIZE * ONE_K_HZ)) && (!st->batch.overflow_on)) + timeout = FIFO_SIZE * ONE_K_HZ / st->bytes_per_sec; + else + timeout = st->batch.timeout; + + /* 5 ms per count */ + timeout_count = timeout / 5; + if (num_rate == 1) { + c = timeout * rate / ONE_K_HZ; + } else { + c = 0; + for (i = 1; i <= timeout_count; i++) { + int_on = false; + for (j = 0; j < SENSOR_NUM_MAX; j++) { + if (st->sensor[j].on) { + if ((i % st->sensor[j].counter) == 0) + int_on = true; + } + } + if (int_on) + c++; + } + } + st->batch.counter = c; + st->batch.on = true; + + return 0; +} + +int inv_batchmode_setup(struct inv_mpu_state *st) +{ + int r; + + r = inv_write_2bytes(st, KEY_BM_NUMWORD_TOFILL, 0); + if (r) + return r; + r = inv_write_2bytes(st, KEY_BM_BATCH_CNTR, 0); + if (r) + return r; + + if (st->chip_config.dmp_on && (st->batch.timeout > 0) && + (st->chip_config.dmp_event_int_on == 0)) { + r = inv_batchmode_calc(st); + if (r) + return r; + } + + if (st->batch.on) { + r = inv_write_2bytes(st, KEY_BM_BATCH_THLD, st->batch.counter); + if (r) + return r; + } + r = inv_write_2bytes(st, KEY_BM_ENABLE, st->batch.on); + + return r; +} + +/** + * reset_fifo_mpu3050() - Reset FIFO related registers + * @indio_dev: Device driver instance. + */ +static int reset_fifo_mpu3050(struct iio_dev *indio_dev) +{ + struct inv_reg_map_s *reg; + int result; + u8 val, user_ctrl; + struct inv_mpu_state *st = iio_priv(indio_dev); + reg = &st->reg; + + /* disable interrupt */ + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config); + if (result) + return result; + /* disable the sensor output to FIFO */ + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + goto reset_fifo_fail; + result = inv_i2c_read(st, reg->user_ctrl, 1, &user_ctrl); + if (result) + goto reset_fifo_fail; + /* disable fifo reading */ + user_ctrl &= ~BIT_FIFO_EN; + st->chip_config.has_footer = 0; + /* reset fifo */ + val = (BIT_3050_FIFO_RST | user_ctrl); + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + if (st->chip_config.dmp_on) { + /* enable interrupt when DMP is done */ + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | BIT_DMP_INT_EN); + if (result) + return result; + + result = inv_i2c_single_write(st, reg->user_ctrl, + BIT_FIFO_EN|user_ctrl); + if (result) + return result; + } else { + /* enable interrupt */ + if (st->sensor[SENSOR_ACCEL].on || + st->sensor[SENSOR_GYRO].on) { + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | BIT_DATA_RDY_EN); + if (result) + return result; + } + /* enable FIFO reading and I2C master interface*/ + result = inv_i2c_single_write(st, reg->user_ctrl, + BIT_FIFO_EN | user_ctrl); + if (result) + return result; + /* enable sensor output to FIFO and FIFO footer*/ + val = 1; + if (st->sensor[SENSOR_ACCEL].on) + val |= BITS_3050_ACCEL_OUT; + if (st->sensor[SENSOR_GYRO].on) + val |= BITS_GYRO_OUT; + result = inv_i2c_single_write(st, reg->fifo_en, val); + if (result) + return result; + } + + return 0; +reset_fifo_fail: + if (st->chip_config.dmp_on) + val = BIT_DMP_INT_EN; + else + val = BIT_DATA_RDY_EN; + inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | val); + pr_err("reset fifo failed\n"); + + return result; +} + +/* + * inv_set_lpf() - set low pass filer based on fifo rate. + */ +static int inv_set_lpf(struct inv_mpu_state *st, int rate) +{ + const short hz[] = {188, 98, 42, 20, 10, 5}; + const int d[] = {INV_FILTER_188HZ, INV_FILTER_98HZ, + INV_FILTER_42HZ, INV_FILTER_20HZ, + INV_FILTER_10HZ, INV_FILTER_5HZ}; + int i, h, data, result; + struct inv_reg_map_s *reg; + + reg = &st->reg; + h = (rate >> 1); + i = 0; + while ((h < hz[i]) && (i < ARRAY_SIZE(d) - 1)) + i++; + data = d[i]; + if (INV_MPU3050 == st->chip_type) { + if (st->slave_accel != NULL) { + result = st->slave_accel->set_lpf(st, rate); + if (result) + return result; + } + result = inv_i2c_single_write(st, reg->lpf, data | + (st->chip_config.fsr << GYRO_CONFIG_FSR_SHIFT)); + } else { + result = inv_i2c_single_write(st, reg->lpf, data); + } + if (result) + return result; + st->chip_config.lpf = data; + + return 0; +} + +/* + * set_fifo_rate_reg() - Set fifo rate in hardware register + */ +static int set_fifo_rate_reg(struct inv_mpu_state *st) +{ + u8 data; + u16 fifo_rate; + int result; + struct inv_reg_map_s *reg; + + reg = &st->reg; + fifo_rate = st->chip_config.new_fifo_rate; + data = ONE_K_HZ / fifo_rate - 1; + result = inv_i2c_single_write(st, reg->sample_rate_div, data); + if (result) + return result; + result = inv_set_lpf(st, fifo_rate); + if (result) + return result; + /* wait for the sampling rate change to stabilize */ + mdelay(INV_MPU_SAMPLE_RATE_CHANGE_STABLE); + st->chip_config.fifo_rate = fifo_rate; + + return 0; +} + +/* + * inv_lpa_mode() - store current low power mode settings + */ +static int inv_lpa_mode(struct inv_mpu_state *st, int lpa_mode) +{ + unsigned long result; + u8 d; + struct inv_reg_map_s *reg; + + reg = &st->reg; + result = inv_i2c_read(st, reg->pwr_mgmt_1, 1, &d); + if (result) + return result; + if (lpa_mode) + d |= BIT_CYCLE; + else + d &= ~BIT_CYCLE; + + result = inv_i2c_single_write(st, reg->pwr_mgmt_1, d); + if (result) + return result; + if (INV_MPU6500 == st->chip_type) { + d = BIT_FIFO_SIZE_1K; + if (lpa_mode) + d |= BIT_ACCEL_FCHOCIE_B; + result = inv_i2c_single_write(st, REG_6500_ACCEL_CONFIG2, d); + if (result) + return result; + } + + return 0; +} + +static int inv_set_master_delay(struct inv_mpu_state *st) +{ + int d, result, rate; + u8 delay; + + if ((!st->sensor[SENSOR_COMPASS].on) && + (!st->sensor[SENSOR_PRESSURE].on)) + return 0; + + delay = 0; + d = 0; + if (st->sensor[SENSOR_COMPASS].on) { + switch (st->plat_data.sec_slave_id) { + case COMPASS_ID_AK8975: + case COMPASS_ID_AK8972: + case COMPASS_ID_AK8963: + delay = (BIT_SLV0_DLY_EN | BIT_SLV1_DLY_EN); + break; + case COMPASS_ID_MLX90399: + delay = (BIT_SLV0_DLY_EN | + BIT_SLV1_DLY_EN | + BIT_SLV2_DLY_EN | + BIT_SLV3_DLY_EN); + break; + default: + return -EINVAL; + } + d = max(d, st->slave_compass->rate_scale); + } + if (st->sensor[SENSOR_PRESSURE].on) { + /* read fake data when compass is disabled for DMP read */ + if (!st->sensor[SENSOR_COMPASS].on) + delay |= BIT_SLV0_DLY_EN; + switch (st->plat_data.aux_slave_id) { + case PRESSURE_ID_BMP280: + delay |= (BIT_SLV2_DLY_EN | BIT_SLV3_DLY_EN); + break; + default: + return -EINVAL; + } + d = max(d, st->slave_pressure->rate_scale); + } + result = inv_i2c_single_write(st, REG_I2C_MST_DELAY_CTRL, delay); + if (result) + return result; + + d = d * st->chip_config.fifo_rate / ONE_K_HZ; + if (st->chip_config.dmp_on) { + rate = 0; + if (st->sensor[SENSOR_PRESSURE].on) + rate = max(rate, st->sensor[SENSOR_PRESSURE].rate); + if (st->sensor[SENSOR_COMPASS].on) + rate = max(rate, st->sensor[SENSOR_COMPASS].rate); + if (rate == 0) + return -EINVAL; + d = max(d, st->chip_config.fifo_rate / rate); + } + + if (d > 0) + d -= 1; + if (d > 0x1F) + d = 0x1F; + + /* I2C_MST_DLY is set to slow down secondary I2C */ + return inv_i2c_single_write(st, REG_I2C_SLV4_CTRL, d); +} + +/* + * reset_fifo_itg() - Reset FIFO related registers. + */ +static int reset_fifo_itg(struct iio_dev *indio_dev) +{ + struct inv_reg_map_s *reg; + int result, i; + u8 val, int_word; + struct inv_mpu_state *st = iio_priv(indio_dev); + + reg = &st->reg; + if (st->chip_config.lpa_mode) { + result = inv_lpa_mode(st, 0); + if (result) { + pr_err("reset lpa mode failed\n"); + return result; + } + } + /* disable interrupt */ + result = inv_i2c_single_write(st, reg->int_enable, 0); + if (result) { + pr_err("int_enable write failed\n"); + return result; + } + /* disable the sensor output to FIFO */ + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + goto reset_fifo_fail; + /* disable fifo reading */ + result = inv_i2c_single_write(st, reg->user_ctrl, 0); + if (result) + goto reset_fifo_fail; + int_word = 0; + + /* MPU6500's BIT_6500_WOM_EN is the same as BIT_MOT_EN */ + if (st->mot_int.mot_on) + int_word |= BIT_MOT_EN; + + if (st->chip_config.dmp_on) { + val = (BIT_FIFO_RST | BIT_DMP_RST); + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + if (st->chip_config.dmp_int_on) { + int_word |= BIT_DMP_INT_EN; + result = inv_i2c_single_write(st, reg->int_enable, + int_word); + if (result) + return result; + } + val = (BIT_DMP_EN | BIT_FIFO_EN); + if ((st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) && + (!st->chip_config.dmp_event_int_on)) + val |= BIT_I2C_MST_EN; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + } else { + /* reset FIFO and possibly reset I2C*/ + val = BIT_FIFO_RST; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + /* enable interrupt */ + if (st->sensor[SENSOR_ACCEL].on || + st->sensor[SENSOR_GYRO].on || + st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) + int_word |= BIT_DATA_RDY_EN; + + result = inv_i2c_single_write(st, reg->int_enable, int_word); + if (result) + return result; + /* enable FIFO reading and I2C master interface*/ + val = BIT_FIFO_EN; + if (st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) + val |= BIT_I2C_MST_EN; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + /* enable sensor output to FIFO */ + val = 0; + if (st->sensor[SENSOR_GYRO].on) + val |= BITS_GYRO_OUT; + if (st->sensor[SENSOR_ACCEL].on) + val |= BIT_ACCEL_OUT; + result = inv_i2c_single_write(st, reg->fifo_en, val); + if (result) + goto reset_fifo_fail; + } + result = inv_set_master_delay(st); + if (result) + goto reset_fifo_fail; + st->last_ts = get_time_ns(); + st->prev_ts = st->last_ts; + st->last_run_time = st->last_ts; + if (st->sensor[SENSOR_COMPASS].on) + st->slave_compass->prev_ts = st->last_ts; + if (st->sensor[SENSOR_PRESSURE].on) + st->slave_pressure->prev_ts = st->last_ts; + + st->dmp_interval = DMP_INTERVAL_INIT; + st->ts_counter = 0; + st->diff_accumulater = 0; + st->dmp_interval_accum = 0; + st->step_detector_base_ts = st->last_ts; + st->chip_config.normal_compass_measure = 0; + st->chip_config.normal_pressure_measure = 0; + st->left_over_size = 0; + st->batch.post_isr_run = false; + for (i = 0; i < SENSOR_NUM_MAX; i++) + st->sensor[i].ts = st->last_ts; + + result = inv_lpa_mode(st, st->chip_config.lpa_mode); + if (result) + goto reset_fifo_fail; + + return 0; + +reset_fifo_fail: + if (st->chip_config.dmp_on) + val = BIT_DMP_INT_EN; + else + val = BIT_DATA_RDY_EN; + inv_i2c_single_write(st, reg->int_enable, val); + pr_err("reset fifo failed\n"); + + return result; +} + +/** + * inv_clear_kfifo() - clear time stamp fifo + * @st: Device driver instance. + */ +static void inv_clear_kfifo(struct inv_mpu_state *st) +{ + unsigned long flags; + + spin_lock_irqsave(&st->time_stamp_lock, flags); + kfifo_reset(&st->timestamps); + spin_unlock_irqrestore(&st->time_stamp_lock, flags); +} + +/* + * inv_reset_fifo() - Reset FIFO related registers. + */ +int inv_reset_fifo(struct iio_dev *indio_dev) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + + inv_clear_kfifo(st); + if (INV_MPU3050 == st->chip_type) + return reset_fifo_mpu3050(indio_dev); + else + return reset_fifo_itg(indio_dev); +} + +static int inv_send_gyro_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_GYRO, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_accel_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_ACCL, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_three_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x13}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_3QUAT, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_six_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x13}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_6QUAT, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_ped_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_PQUAT, ARRAY_SIZE(rn), r); + + return result; +} + +static int inv_add_step_indicator(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xf3, 0xf3}; + u8 rf[] = {0xf4, 0x03}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_PEDSTEP_DET, ARRAY_SIZE(rn), r); + + return result; +} + +static int inv_send_compass_dmp_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_CPASS, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_pressure_dmp_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_PRESS, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_step_detector(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x0e}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_STEPDET, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_set_rate(struct inv_mpu_state *st, int k, int k_ct, int rate) +{ + int v, result; + + v = MPU_DEFAULT_DMP_FREQ / rate - 1; + result = inv_write_2bytes(st, k, v); + if (result) + return result; + result = inv_write_2bytes(st, k_ct, 0); + + return result; +} + +static int inv_set_gyro_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_GYRO_ODR, KEY_ODR_CNTR_GYRO, + st->sensor[SENSOR_GYRO].rate); + + return result; +} + +static int inv_set_accel_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_ACCL_ODR, KEY_ODR_CNTR_ACCL, + st->sensor[SENSOR_ACCEL].rate); + + return result; +} + +static int inv_set_compass_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_CPASS_ODR, KEY_ODR_CNTR_CPASS, + st->sensor[SENSOR_COMPASS].rate); + + return result; +} + +static int inv_set_pressure_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_PRESS_ODR, KEY_ODR_CNTR_PRESS, + st->sensor[SENSOR_PRESSURE].rate); + + return result; +} + +static int inv_set_step_detector(struct inv_mpu_state *st) +{ + return 0; +} + + +static int inv_set_lpq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_3QUAT_ODR, KEY_ODR_CNTR_3QUAT, + st->sensor[SENSOR_LPQ].rate); + + return result; +} + +static int inv_set_sixq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_6QUAT_ODR, KEY_ODR_CNTR_6QUAT, + st->sensor[SENSOR_SIXQ].rate); + + return result; +} + +static int inv_set_pedq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_PQUAT6_ODR, KEY_ODR_CNTR_PQUAT, + st->sensor[SENSOR_PEDQ].rate); + + return result; +} + + +static int inv_set_dmp_sysfs(struct inv_mpu_state *st) +{ + int result, i, s; + u8 d[] = {0, 0, 0, 0}; + + result = inv_set_interrupt_on_gesture_event(st, + st->chip_config.dmp_event_int_on); + if (st->chip_config.dmp_event_int_on) { + for (i = 0; i < SENSOR_NUM_MAX; i++) { + result = st->sensor[i].send_data(st, false); + if (result) + return result; + } + } else { + s = 0; + for (i = 0; i < SENSOR_NUM_MAX; i++) { + result = st->sensor[i].send_data(st, st->sensor[i].on); + if (result) + return result; + if (st->sensor[i].on) { + if (0 == st->sensor[i].rate) + return -EINVAL; + s += st->sensor[i].rate * + st->sensor[i].sample_size; + + result = st->sensor[i].set_rate(st); + if (result) + return result; + st->sensor[i].counter = MPU_DEFAULT_DMP_FREQ / + st->sensor[i].rate; + } + } + st->bytes_per_sec = s; + if (st->sensor[SENSOR_STEP].on) + result = inv_add_step_indicator(st, true); + else + result = inv_add_step_indicator(st, + st->chip_config.step_indicator_on); + if (result) + return result; + } + result = inv_batchmode_setup(st); + if (result) + return result; + + st->dmp_counter = 0; + result = mem_w_key(KEY_DMP_RUN_CNTR, ARRAY_SIZE(d), d); + if (result) + return result; + /* set the compass flag invalid at the beginning */ + result = inv_write_2bytes(st, KEY_CPASS_VALID, 0); + + return result; +} + +static void inv_get_data_count(struct inv_mpu_state *st) +{ + struct inv_chip_config_s *c; + int b, i; + + c = &st->chip_config; + b = 0; + if (st->chip_config.dmp_on) { + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (st->sensor[i].on) + b += st->sensor[i].sample_size; + } + } else { + if (st->sensor[SENSOR_ACCEL].on) + b += BYTES_PER_SENSOR; + if (st->sensor[SENSOR_GYRO].on) + b += BYTES_PER_SENSOR; + } + c->bytes_per_datum = b; + + return; +} +/* + * set_inv_enable() - main enable/disable function. + */ +int set_inv_enable(struct iio_dev *indio_dev, bool enable) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + struct inv_reg_map_s *reg; + u8 data[2]; + int result; + + reg = &st->reg; + if (enable) { + st->batch.on = false; + st->batch.step_only = false; + + inv_get_data_count(st); + if (st->chip_config.new_fifo_rate != + st->chip_config.fifo_rate) { + result = set_fifo_rate_reg(st); + if (result) + return result; + } + if (st->chip_config.dmp_on) { + result = inv_set_dmp_sysfs(st); + if (result) + return result; + } + + if (st->chip_config.gyro_enable) { + result = st->switch_gyro_engine(st, true); + if (result) + return result; + } + if (st->chip_config.accel_enable) { + result = st->switch_accel_engine(st, true); + if (result) + return result; + } + if (st->sensor[SENSOR_COMPASS].on) { + result = st->slave_compass->resume(st); + if (result) + return result; + } + if (st->sensor[SENSOR_PRESSURE].on) { + result = st->slave_pressure->resume(st); + if (result) + return result; + } + result = inv_reset_fifo(indio_dev); + if (result) + return result; + if (st->batch.step_only) + schedule_delayed_work(&st->work, + msecs_to_jiffies(st->batch.timeout)); + + } else { + if (st->batch.step_only) + cancel_delayed_work_sync(&st->work); + if ((INV_MPU3050 != st->chip_type) + && st->chip_config.lpa_mode) { + /* if the chip is in low power mode, + register write/read could fail */ + result = inv_lpa_mode(st, 0); + if (result) + return result; + } + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + return result; + if (st->chip_config.dmp_on) { + result = inv_read_time_and_ticks(st, false); + if (result) + return result; + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + return result; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + result = inv_process_batchmode(st, true); + if (result) + return result; + } + /* disable fifo reading */ + if (INV_MPU3050 != st->chip_type) { + result = inv_i2c_single_write(st, reg->int_enable, 0); + if (result) + return result; + result = inv_i2c_single_write(st, reg->user_ctrl, 0); + } else { + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config); + } + if (result) + return result; + /* turn off the gyro/accel engine during disable phase */ + result = st->switch_gyro_engine(st, false); + if (result) + return result; + result = st->switch_accel_engine(st, false); + if (result) + return result; + if (st->sensor[SENSOR_COMPASS].on) { + result = st->slave_compass->suspend(st); + if (result) + return result; + } + if (st->sensor[SENSOR_PRESSURE].on) { + result = st->slave_pressure->suspend(st); + if (result) + return result; + } + } + st->chip_config.enable = enable; + + return 0; +} + +/* + * inv_irq_handler() - Cache a timestamp at each data ready interrupt. + */ +static irqreturn_t inv_irq_handler(int irq, void *dev_id) +{ + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + u64 ts; + + if (!st->chip_config.dmp_on) { + ts = get_time_ns(); + kfifo_in_spinlocked(&st->timestamps, &ts, 1, + &st->time_stamp_lock); + } + + return IRQ_WAKE_THREAD; +} + +static void inv_report_data_3050(struct iio_dev *indio_dev, s64 t, + int has_footer, u8 *data) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + int ind, i; + short s[THREE_AXIS]; + + ind = 0; + if (has_footer) + ind += 2; + + if (st->sensor[SENSOR_GYRO].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + + inv_push_8bytes_buffer(st, GYRO_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + if (st->sensor[SENSOR_ACCEL].on) { + st->slave_accel->combine_data(&data[ind], s); + inv_push_8bytes_buffer(st, ACCEL_HDR, t, s); + } +} + +/* + * inv_read_fifo_mpu3050() - Transfer data from FIFO to ring buffer for + * mpu3050. + */ +irqreturn_t inv_read_fifo_mpu3050(int irq, void *dev_id) +{ + + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int bytes_per_datum; + u8 data[64]; + int result; + short fifo_count, byte_read; + s64 timestamp; + struct inv_reg_map_s *reg; + + reg = &st->reg; + mutex_lock(&indio_dev->mlock); + if (st->chip_config.dmp_on) + bytes_per_datum = HEADERED_NORMAL_BYTES; + else + bytes_per_datum = (st->sensor[SENSOR_ACCEL].on + + st->sensor[SENSOR_GYRO].on) * BYTES_PER_SENSOR; + if (st->chip_config.has_footer) + byte_read = bytes_per_datum + MPU3050_FOOTER_SIZE; + else + byte_read = bytes_per_datum; + + fifo_count = 0; + if (byte_read != 0) { + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + goto end_session; + fifo_count = be16_to_cpup((__be16 *)(&data[0])); + if (fifo_count < byte_read) + goto end_session; + if (fifo_count & 1) + goto flush_fifo; + if (fifo_count > FIFO_THRESHOLD) + goto flush_fifo; + /* Timestamp mismatch. */ + if (kfifo_len(&st->timestamps) < + fifo_count / byte_read) + goto flush_fifo; + if (kfifo_len(&st->timestamps) > + fifo_count / byte_read + TIME_STAMP_TOR) { + if (st->chip_config.dmp_on) { + result = kfifo_out(&st->timestamps, + ×tamp, 1); + if (result != 1) + goto flush_fifo; + } else { + goto flush_fifo; + } + } + } + while ((bytes_per_datum != 0) && (fifo_count >= byte_read)) { + result = inv_i2c_read(st, reg->fifo_r_w, byte_read, data); + if (result) + goto flush_fifo; + + result = kfifo_out(&st->timestamps, ×tamp, 1); + if (result != 1) + goto flush_fifo; + inv_report_data_3050(indio_dev, timestamp, + st->chip_config.has_footer, data); + fifo_count -= byte_read; + if (st->chip_config.has_footer == 0) { + st->chip_config.has_footer = 1; + byte_read = bytes_per_datum + MPU3050_FOOTER_SIZE; + } + } + +end_session: + mutex_unlock(&indio_dev->mlock); + + return IRQ_HANDLED; + +flush_fifo: + /* Flush HW and SW FIFOs. */ + inv_reset_fifo(indio_dev); + inv_clear_kfifo(st); + mutex_unlock(&indio_dev->mlock); + + return IRQ_HANDLED; +} + +static int inv_report_gyro_accel(struct iio_dev *indio_dev, + u8 *data, s64 t) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + short s[THREE_AXIS]; + int ind; + int i; + + ind = 0; + if (st->sensor[SENSOR_ACCEL].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + inv_push_8bytes_buffer(st, ACCEL_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + + if (st->sensor[SENSOR_GYRO].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + inv_push_8bytes_buffer(st, GYRO_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + + return 0; +} + +static void inv_process_motion(struct inv_mpu_state *st) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int result; + u8 data[1]; + + /* motion interrupt */ + result = inv_i2c_read(st, REG_INT_STATUS, 1, data); + if (result) + return; + + if (data[0] & BIT_MOT_INT) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_accel_motion"); +} + +static int inv_get_timestamp(struct inv_mpu_state *st, int count) +{ + u32 *dur; + u32 thresh; + s32 diff, result, counter; + u64 ts; + + /* goal of algorithm is to estimate the true frequency of the chip */ + if (st->chip_config.dmp_on && st->chip_config.dmp_event_int_on) + return 0; + dur = &st->irq_dur_ns; + counter = 1; + thresh = min((u32)((*dur) >> 2), (u32)(10 * NSEC_PER_MSEC)); + while (kfifo_len(&st->timestamps) >= count) { + result = kfifo_out(&st->timestamps, &ts, 1); + if (result != 1) + return -EINVAL; + /* first time since reset fifo, just take it */ + if (!st->ts_counter) { + st->last_ts = ts; + st->prev_ts = ts; + st->ts_counter++; + return 0; + } + diff = (s32)(ts - st->prev_ts); + st->prev_ts = ts; + if (abs(diff - (*dur)) < thresh) { + st->diff_accumulater >>= 1; + if (*dur > diff) + st->diff_accumulater -= (((*dur) - diff) >> 7); + else + st->diff_accumulater += ((diff - (*dur)) >> 7); + *dur += st->diff_accumulater; + } + } + ts = *dur; + ts *= counter; + st->last_ts += ts; + + return 0; +} + +static int inv_process_dmp_interrupt(struct inv_mpu_state *st) +{ + int r; + u8 d[1]; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + +#define DMP_INT_SMD 0x04 +#define DMP_INT_PED 0x08 +#define DMP_INT_TAP 0x10 + + if ((!st->chip_config.smd_enable) && + (!st->ped.int_on) && + (!st->tap.on)) + return 0; + + r = inv_i2c_read(st, REG_DMP_INT_STATUS, 1, d); + if (r) + return r; + if (d[0] & DMP_INT_SMD) { + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_smd"); + st->chip_config.smd_enable = false; + st->chip_config.smd_triggered = true; + } + if (d[0] & DMP_INT_PED) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_pedometer"); + if (d[0] & DMP_INT_TAP) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_tap"); + + return 0; +} + +static int inv_get_shift2(int count) +{ + int i; + + if (1 == count) + return 13; + if (count > 2000) + return 2; + i = 13; + while (count > 0) { + count >>= 1; + i--; + } + + return i; +} + +static void inv_adjust_sensor_ts(struct inv_mpu_state *st, int sensor_ind) +{ + s64 diff; + int i, rate_adj, s3, delta, total_count; + + if (!st->chip_config.adjust_time) + return; +#define MAX_DIFF 0x7fffffff + total_count = st->dmp_ticks; + if (0 == total_count) + total_count = 1; + + diff = (st->last_ts - st->prev_ts) - (u64)(st->dmp_interval) * + total_count; + if (diff > MAX_DIFF) + diff = MAX_DIFF; + if (diff < -MAX_DIFF) + diff = -MAX_DIFF; + s3 = 4; + rate_adj = (int)diff; + rate_adj /= total_count; + delta = min(abs(rate_adj) >> inv_get_shift2(total_count), + DMP_INTERVAL_MIN_ADJ); + if (rate_adj < 0) + delta = -delta; + st->dmp_interval_accum >>= 1; + st->dmp_interval_accum += delta; + st->dmp_interval += st->dmp_interval_accum; + for (i = 0; i < SENSOR_NUM_MAX; i++) + if (st->sensor[i].on) + st->sensor[i].dur = st->dmp_interval * + st->sensor[i].counter; + + st->prev_ts = st->last_ts; +} + +static void inv_reset_ts(struct inv_mpu_state *st, u64 curr_ts) +{ + u32 dur, i; + + dur = USEC_PER_SEC / st->bytes_per_sec; + dur *= 1024; + curr_ts -= ((u64)dur * NSEC_PER_USEC); + for (i = 0; i < SENSOR_NUM_MAX; i++) + st->sensor[i].ts = curr_ts; +} + +static void inv_push_step_indicator(struct inv_mpu_state *st, int sensor_ind, + int steps) +{ + int dur, i; + s16 sen[3]; + u64 base; +#define STEP_INDICATOR_HEADER 0x0001 + + dur = st->sensor[sensor_ind].dur / steps; + base = st->sensor[sensor_ind].ts; + + for (i = 1; i < steps; i++) + inv_push_8bytes_buffer(st, STEP_INDICATOR_HEADER, + base + i * dur, sen); +} + +static int inv_parse_header(u16 hdr) +{ + int sensor_ind; + + switch (hdr) { + case ACCEL_HDR: + sensor_ind = SENSOR_ACCEL; + break; + case GYRO_HDR: + sensor_ind = SENSOR_GYRO; + break; + case PEDQUAT_HDR: + sensor_ind = SENSOR_PEDQ; + break; + case LPQUAT_HDR: + sensor_ind = SENSOR_LPQ; + break; + case SIXQUAT_HDR: + sensor_ind = SENSOR_SIXQ; + break; + case COMPASS_HDR: + sensor_ind = SENSOR_COMPASS; + break; + case PRESSURE_HDR: + sensor_ind = SENSOR_PRESSURE; + break; + case STEP_DETECTOR_HDR: + sensor_ind = SENSOR_STEP; + break; + default: + sensor_ind = SENSOR_INVALID; + break; + } + + return sensor_ind; +} + +static int inv_get_sensor_count(struct inv_mpu_state *st, + u8 *d, int target_bytes) +{ + u8 *dptr; + u16 hdr; + int sensor_ind; + int sensor_count; + + sensor_count = 0; + dptr = d; + while (dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + hdr &= (~STEP_INDICATOR_MASK); + sensor_ind = inv_parse_header(hdr); + /* incomplete packet */ + if (target_bytes - (dptr - d) < + st->sensor[sensor_ind].sample_size) + break; + if ((sensor_ind != SENSOR_INVALID) && + st->sensor[sensor_ind].on) { + dptr += st->sensor[sensor_ind].sample_size; + sensor_count++; + } else { + dptr += HEADERED_NORMAL_BYTES; + } + } + + return sensor_count; +} +static int inv_process_batchmode(struct inv_mpu_state *st, bool insert) +{ + int i, target_bytes, tmp, res, sensor_count, counter; + int sensor_ind, q[3]; + u8 *dptr, *d; + u16 hdr, steps; + s16 sen[3]; + u64 t; + bool done_flag; + +#define END_MARKER 0x0010 + + if (1024 == st->fifo_count) { + inv_reset_ts(st, st->last_ts); + st->left_over_size = 0; + } + d = fifo_data; + if (st->left_over_size > 0) { + dptr = d + st->left_over_size; + memcpy(d, st->left_over, st->left_over_size); + } else { + dptr = d; + } + target_bytes = st->fifo_count; + while (target_bytes > 0) { + if (target_bytes < MAX_READ_SIZE) + tmp = target_bytes; + else + tmp = MAX_READ_SIZE; + res = inv_i2c_read(st, st->reg.fifo_r_w, tmp, dptr); + if (res < 0) + return res; + dptr += tmp; + target_bytes -= tmp; + } + dptr = d; + done_flag = false; + target_bytes = st->fifo_count + st->left_over_size; + if (insert) + sensor_count = inv_get_sensor_count(st, d, target_bytes); + else + sensor_count = 0; + counter = 0; + while ((dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) && + (!done_flag)) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + steps = (hdr & STEP_INDICATOR_MASK); + hdr &= (~STEP_INDICATOR_MASK); + sensor_ind = inv_parse_header(hdr); + /* incomplete packet */ + if (target_bytes - (dptr - d) < + st->sensor[sensor_ind].sample_size) { + done_flag = true; + continue; + } + /* error packet */ + if ((sensor_ind == SENSOR_INVALID) || + (!st->sensor[sensor_ind].on)) { + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (insert) { + counter++; + if (counter == sensor_count) + hdr |= END_MARKER; + } + + if (sensor_ind == SENSOR_STEP) { + tmp = (int)be32_to_cpup((__be32 *)(dptr + 4)); + t = st->step_detector_base_ts + + (u64)tmp * 5 * NSEC_PER_MSEC; + inv_push_8bytes_buffer(st, hdr, t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (steps > 1) + inv_push_step_indicator(st, sensor_ind, steps); + st->sensor[sensor_ind].ts += (u64)st->sensor[sensor_ind].dur; + t = st->sensor[sensor_ind].ts; + if (sensor_ind == SENSOR_COMPASS) { + if (!st->chip_config.normal_compass_measure) { + st->chip_config.normal_compass_measure = 1; + dptr += HEADERED_NORMAL_BYTES; + continue; + } + for (i = 0; i < 6; i++) + st->fifo_data[i] = dptr[i + 2]; + st->slave_compass->read_data(st, sen); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (sensor_ind == SENSOR_PRESSURE) { + if (!st->chip_config.normal_pressure_measure) { + st->chip_config.normal_pressure_measure = 1; + dptr += HEADERED_NORMAL_BYTES; + continue; + } + for (i = 0; i < 6; i++) + st->fifo_data[i] = dptr[i + 2]; + st->slave_pressure->read_data(st, sen); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (st->sensor[sensor_ind].sample_size == HEADERED_Q_BYTES) { + for (i = 0; i < 3; i++) + q[i] = (int)be32_to_cpup((__be32 *)(dptr + 4 + + i * 4)); + inv_push_16bytes_buffer(st, hdr | (!!steps), t, q); + } else { + for (i = 0; i < 3; i++) + sen[i] = (short)be16_to_cpup((__be16 *)(dptr + + 2 + i * 2)); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + } + dptr += st->sensor[sensor_ind].sample_size; + } + inv_adjust_sensor_ts(st, sensor_ind); + st->left_over_size = target_bytes - (dptr - d); + + if (st->left_over_size) + memcpy(st->left_over, dptr, st->left_over_size); + + return 0; +} + +int inv_read_time_and_ticks(struct inv_mpu_state *st, bool resume) +{ + int result; + u32 counter; + u8 data[4]; + +#define MIN_TICK_READING_TIME NSEC_PER_SEC + st->last_ts = get_time_ns(); + if ((st->last_ts - st->prev_ts < MIN_TICK_READING_TIME) && + (!resume)) { + st->chip_config.adjust_time = false; + return 0; + } + result = mpu_memory_read(st, st->i2c_addr, + inv_dmp_get_address(KEY_DMP_RUN_CNTR), 4, data); + if (result) + return result; + + counter = be32_to_cpup((__be32 *)(data)); + if (resume) { + st->dmp_counter = counter; + st->prev_ts = st->last_ts; + + return 0; + } + if (counter > st->dmp_counter) + st->dmp_ticks = counter - st->dmp_counter; + else + st->dmp_ticks = 0xffffffff - st->dmp_counter + counter + 1; + st->dmp_counter = counter; + st->chip_config.adjust_time = true; + + return 0; +} + +/* + * inv_read_fifo() - Transfer data from FIFO to ring buffer. + */ +irqreturn_t inv_read_fifo(int irq, void *dev_id) +{ + + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int result, bpm; + u8 data[MAX_HW_FIFO_BYTES]; + u16 fifo_count; + struct inv_reg_map_s *reg; + u64 pts1; + +#define DMP_MIN_RUN_TIME (37 * NSEC_PER_MSEC) + mutex_lock(&st->suspend_resume_lock); + mutex_lock(&indio_dev->mlock); + if (st->chip_config.dmp_on) { + pts1 = get_time_ns(); + result = inv_process_dmp_interrupt(st); + if (result || st->chip_config.dmp_event_int_on) + goto end_session; + if (!st->chip_config.smd_triggered) { + if (pts1 - st->last_run_time < DMP_MIN_RUN_TIME) + goto end_session; + else + st->last_run_time = pts1; + } else { + st->chip_config.smd_triggered = false; + } + } + + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + goto end_session; + + reg = &st->reg; + if (!(st->sensor[SENSOR_ACCEL].on | + st->sensor[SENSOR_GYRO].on | + st->sensor[SENSOR_COMPASS].on | + st->sensor[SENSOR_PRESSURE].on | + st->chip_config.dmp_on | + st->mot_int.mot_on)) + goto end_session; + if (st->chip_config.lpa_mode) { + result = inv_i2c_read(st, reg->raw_accel, + BYTES_PER_SENSOR, data); + if (result) + goto end_session; + inv_report_gyro_accel(indio_dev, data, get_time_ns()); + if (st->mot_int.mot_on) + inv_process_motion(st); + + goto end_session; + } + + if (st->chip_config.dmp_on) { + result = inv_read_time_and_ticks(st, false); + if (result) + goto end_session; + } + bpm = st->chip_config.bytes_per_datum; + fifo_count = 0; + if (bpm) { + result = inv_i2c_read(st, reg->fifo_count_h, FIFO_COUNT_BYTE, + data); + if (result) + goto end_session; + fifo_count = be16_to_cpup((__be16 *)(data)); + /* fifo count can't be odd number */ + if (fifo_count & 1) + goto flush_fifo; + if (fifo_count == 0) + goto end_session; + st->fifo_count = fifo_count; + } + + if (st->batch.step_only) { + process_step_only_batch(st); + st->batch.post_isr_run = true; + } else if (st->chip_config.dmp_on) { + result = inv_process_batchmode(st, false); + } else { + if (fifo_count > FIFO_THRESHOLD) + goto flush_fifo; + if (bpm) { + while (fifo_count >= bpm) { + result = inv_i2c_read(st, reg->fifo_r_w, bpm, + data); + if (result) + goto flush_fifo; + result = inv_get_timestamp(st, + fifo_count / bpm); + if (result) + goto flush_fifo; + inv_report_gyro_accel(indio_dev, data, + st->last_ts); + fifo_count -= bpm; + } + } else { + result = inv_get_timestamp(st, 1); + if (result) + goto flush_fifo; + } + inv_send_compass_data(st); + inv_send_pressure_data(st); + } +end_session: + mutex_unlock(&indio_dev->mlock); + mutex_unlock(&st->suspend_resume_lock); + + return IRQ_HANDLED; +flush_fifo: + /* Flush HW and SW FIFOs. */ + inv_reset_fifo(indio_dev); + inv_clear_kfifo(st); + mutex_unlock(&indio_dev->mlock); + mutex_unlock(&st->suspend_resume_lock); + + return IRQ_HANDLED; +} +#endif +void ssp_iio_unconfigure_ring(struct iio_dev *indio_dev) +{ + iio_kfifo_free(indio_dev->buffer); +}; + +static int ssp_predisable(struct iio_dev *indio_dev) +{ + /* sch0317 need to implement + struct inv_mpu_state *st = iio_priv(indio_dev); + int result; + + if (st->chip_config.enable) { + result = set_inv_enable(indio_dev, false); + if (result) + return result; + result = st->set_power_state(st, false); + if (result) + return result; + } +*/ + return 0; +} + +#if 0 +static int inv_check_conflict_sysfs(struct iio_dev *indio_dev) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + + if (st->chip_config.lpa_mode) { + /* dmp cannot run with low power mode on */ + st->chip_config.dmp_on = 0; + st->chip_config.gyro_enable = false; + st->sensor[SENSOR_GYRO].on = false; + st->sensor[SENSOR_COMPASS].on = false; + } + if (st->sensor[SENSOR_GYRO].on && + (!st->chip_config.gyro_enable)) { + st->chip_config.gyro_enable = true; + } + if (st->sensor[SENSOR_ACCEL].on && + (!st->chip_config.accel_enable)) { + st->chip_config.accel_enable = true; + } + + return 0; +} +#endif + +static int ssp_preenable(struct iio_dev *indio_dev) +{ + int result; + + //result = inv_check_conflict_sysfs(indio_dev); + //if (result) + // return result; + result = iio_sw_buffer_preenable(indio_dev); + + return result; +} + +#if 0 +void inv_init_sensor_struct(struct inv_mpu_state *st) +{ + int i; + + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (i < SENSOR_SIXQ) + st->sensor[i].sample_size = + HEADERED_NORMAL_BYTES; + else + st->sensor[i].sample_size = HEADERED_Q_BYTES; + if (i == SENSOR_STEP) { + st->sensor[i].rate = 1; + st->sensor[i].dur = NSEC_PER_SEC; + } else { + st->sensor[i].rate = INIT_DMP_OUTPUT_RATE; + st->sensor[i].dur = NSEC_PER_SEC / + INIT_DMP_OUTPUT_RATE; + } + } + + st->sensor[SENSOR_ACCEL].send_data = inv_send_accel_data; + st->sensor[SENSOR_GYRO].send_data = inv_send_gyro_data; + st->sensor[SENSOR_COMPASS].send_data = inv_send_compass_dmp_data; + st->sensor[SENSOR_PRESSURE].send_data = inv_send_pressure_dmp_data; + st->sensor[SENSOR_STEP].send_data = inv_send_step_detector; + st->sensor[SENSOR_PEDQ].send_data = inv_send_ped_q_data; + st->sensor[SENSOR_SIXQ].send_data = inv_send_six_q_data; + st->sensor[SENSOR_LPQ].send_data = inv_send_three_q_data; + + st->sensor[SENSOR_ACCEL].set_rate = inv_set_accel_rate; + st->sensor[SENSOR_GYRO].set_rate = inv_set_gyro_rate; + st->sensor[SENSOR_COMPASS].set_rate = inv_set_compass_rate; + st->sensor[SENSOR_PRESSURE].set_rate = inv_set_pressure_rate; + st->sensor[SENSOR_STEP].set_rate = inv_set_step_detector; + st->sensor[SENSOR_PEDQ].set_rate = inv_set_pedq_rate; + st->sensor[SENSOR_SIXQ].set_rate = inv_set_sixq_rate; + st->sensor[SENSOR_LPQ].set_rate = inv_set_lpq_rate; +} + +void batch_step_only_work(struct work_struct *work) +{ + struct inv_mpu_state *st = container_of((struct delayed_work *)work, + struct inv_mpu_state, work); + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u32 delay = msecs_to_jiffies(st->batch.timeout); + u8 data[FIFO_COUNT_BYTE]; + int result; + + mutex_lock(&indio_dev->mlock); + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + goto error_ret; + schedule_delayed_work(&st->work, delay); + + if (st->batch.post_isr_run) { + st->batch.post_isr_run = false; + } else { + result = inv_i2c_read(st, st->reg.fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + goto error_ret; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + process_step_only_batch(st); + } + +error_ret: + mutex_unlock(&indio_dev->mlock); + +} + +int inv_flush_batch_data(struct iio_dev *indio_dev, bool *has_data) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + struct inv_reg_map_s *reg; + u8 data[2]; + int result; + +#define EMPTY_MARKER 0x0020 + + reg = &st->reg; + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + return -EINVAL; + + if (st->batch.on) { + result = inv_read_time_and_ticks(st, false); + if (result) + return result; + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + return result; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + if (st->fifo_count) { + result = inv_process_batchmode(st, true); + if (result) + return result; + *has_data = !!st->fifo_count; + + return 0; + } + } + + inv_push_marker_to_buffer(st, EMPTY_MARKER); + + return 0; +} +#endif + +static const struct iio_buffer_setup_ops ssp_iio_ring_setup_ops = { + .preenable = &ssp_preenable, + .predisable = &ssp_predisable, +}; + +int ssp_iio_configure_ring(struct iio_dev *indio_dev) +{ + struct iio_buffer *ring; + + ring = iio_kfifo_allocate(indio_dev); + if (!ring) + return -ENOMEM; + + ring->bytes_per_datum = 8; + indio_dev->buffer = ring; + /* setup ring buffer */ + ring->scan_timestamp = true; + indio_dev->setup_ops = &ssp_iio_ring_setup_ops; + /*scan count double count timestamp. should subtract 1. but + number of channels still includes timestamp*/ + + indio_dev->modes |= INDIO_BUFFER_HARDWARE; // INDIO_BUFFER_TRIGGERED + + return 0; +} + + diff --git a/drivers/sensorhub/stm_hestia/ssp_iio_trigger.c b/drivers/sensorhub/stm_hestia/ssp_iio_trigger.c new file mode 100755 index 000000000000..c5ebd298c3fd --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_iio_trigger.c @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/sysfs.h" +#include "../../staging/iio/trigger.h" +/* + * ssp_iio_data_rdy_trigger_set_state() set data ready interrupt state + */ +static const struct iio_trigger_ops ssp_iio_trigger_ops = { + .owner = THIS_MODULE, +}; + +int ssp_iio_probe_trigger(struct ssp_data *data, struct iio_dev *indio_dev, struct iio_trigger *trig) +{ + int ret; + + trig = iio_allocate_trigger("%s-dev%d", + indio_dev->name, + indio_dev->id); + if (trig == NULL) + return -ENOMEM; + trig->dev.parent = &data->client->dev; + trig->private_data = indio_dev; + trig->ops = &ssp_iio_trigger_ops; + ret = iio_trigger_register(trig); + + if (ret) { + iio_free_trigger(trig); + return -EPERM; + } + indio_dev->trig = trig; + + return 0; +} + +void ssp_iio_remove_trigger(struct iio_trigger *trig) +{ + iio_trigger_unregister(trig); + iio_free_trigger(trig); +} + diff --git a/drivers/sensorhub/stm_hestia/ssp_input.c b/drivers/sensorhub/stm_hestia/ssp_input.c new file mode 100755 index 000000000000..9856943acb8f --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_input.c @@ -0,0 +1,1427 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/events.h" +#include "../../staging/iio/sysfs.h" +#include "../../staging/iio/buffer.h" +#include "../../staging/iio/types.h" + +/*************************************************************************/ +/* SSP Kernel -> HAL input evnet function */ +/*************************************************************************/ + +#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ +#define IIO_BUFFER_6_BYTES 14 +#define IIO_BUFFER_1_BYTES 9 +#define IIO_BUFFER_17_BYTES 25 + +/* data header defines */ + +static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, + u64 t, int *q) +{ + u8 buf[IIO_BUFFER_17_BYTES]; + + int i; + + for (i = 0; i < 4; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + buf[16] = (u8)q[5]; + memcpy(buf + 17, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, + int *q) +{ + u8 buf[IIO_BUFFER_12_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, + u64 t, s16 *d) +{ + u8 buf[IIO_BUFFER_6_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + i * 2, &d[i], sizeof(d[i])); + + memcpy(buf + 6, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, + u64 t, u8 *d) +{ + u8 buf[IIO_BUFFER_1_BYTES]; + + memcpy(buf, d, sizeof(u8)); + memcpy(buf + 1, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +void convert_acc_data(s16 *iValue) +{ + if (*iValue > MAX_ACCEL_2G) + *iValue = ((MAX_ACCEL_4G - *iValue)) * (-1); +} + +void report_acc_data(struct ssp_data *data, struct sensor_value *accdata) +{ + s16 accel_buf[3]; + data->buf[ACCELEROMETER_SENSOR].x = accdata->x; + data->buf[ACCELEROMETER_SENSOR].y = accdata->y; + data->buf[ACCELEROMETER_SENSOR].z = accdata->z; + + accel_buf[0] = data->buf[ACCELEROMETER_SENSOR].x; + accel_buf[1] = data->buf[ACCELEROMETER_SENSOR].y; + accel_buf[2] = data->buf[ACCELEROMETER_SENSOR].z; + ssp_push_6bytes_buffer(data->accel_indio_dev, accdata->timestamp, + accel_buf); +} + +void report_meta_data(struct ssp_data *data, struct sensor_value *s) +{ + input_report_rel(data->meta_input_dev, REL_DIAL, s->meta_data.what); + input_report_rel(data->meta_input_dev, REL_HWHEEL, s->meta_data.sensor + 1); + input_sync(data->meta_input_dev); +} + +void report_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + int lTemp[3] = {0,}; + data->buf[GYROSCOPE_SENSOR].x = gyrodata->x; + data->buf[GYROSCOPE_SENSOR].y = gyrodata->y; + data->buf[GYROSCOPE_SENSOR].z = gyrodata->z; + + if (data->uGyroDps == GYROSCOPE_DPS500) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } else if (data->uGyroDps == GYROSCOPE_DPS250) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x >> 1; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y >> 1; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z >> 1; + } else if (data->uGyroDps == GYROSCOPE_DPS2000) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x << 2; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y << 2; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z << 2; + } else { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } + + ssp_push_12bytes_buffer(data->gyro_indio_dev, gyrodata->timestamp, + lTemp); +} + +void report_geomagnetic_raw_data(struct ssp_data *data, + struct sensor_value *magrawdata) +{ + data->buf[GEOMAGNETIC_RAW].x = magrawdata->x; + data->buf[GEOMAGNETIC_RAW].y = magrawdata->y; + data->buf[GEOMAGNETIC_RAW].z = magrawdata->z; +} +void report_mag_data(struct ssp_data *data, struct sensor_value *magdata) +{ +#ifdef SAVE_MAG_LOG + s16 arrTemp[9] = {0, }; + + arrTemp[0] = magdata->log_data[0]; // ST1 Reg + arrTemp[1] = (short)((magdata->log_data[3] << 8) +\ + magdata->log_data[2]); + arrTemp[2] = (short)((magdata->log_data[5] << 8) +\ + magdata->log_data[4]); + arrTemp[3] = (short)((magdata->log_data[7] << 8) +\ + magdata->log_data[6]); + arrTemp[4] = magdata->log_data[1]; // ST2 Reg + arrTemp[5] = (short)((magdata->log_data[9] << 8) +\ + magdata->log_data[8]); + arrTemp[6] = (short)((magdata->log_data[11] << 8) +\ + magdata->log_data[10]); + arrTemp[7] = (short)((magdata->log_data[13] << 8) +\ + magdata->log_data[12]); + + /* We report data & register to HAL only when ST1 register sets to 1 */ + if (arrTemp[0] == 1) { + input_report_rel(data->mag_input_dev, REL_X, arrTemp[0] + 1); + input_report_rel(data->mag_input_dev, REL_Y, arrTemp[1]); + input_report_rel(data->mag_input_dev, REL_Z, arrTemp[2]); + input_report_rel(data->mag_input_dev, REL_RX, arrTemp[3]); + input_report_rel(data->mag_input_dev, REL_RY, arrTemp[4] + 1); + input_report_rel(data->mag_input_dev, REL_RZ, arrTemp[5]); + input_report_rel(data->mag_input_dev, REL_HWHEEL, arrTemp[6]); + input_report_rel(data->mag_input_dev, REL_DIAL, arrTemp[7]); + mdelay(5); + input_sync(data->mag_input_dev); + } else { + pr_info("[SSP] %s, not initialised, val = %d", __func__, arrTemp[0]); + } +#else + data->buf[GEOMAGNETIC_SENSOR].cal_x = magdata->cal_x; + data->buf[GEOMAGNETIC_SENSOR].cal_y = magdata->cal_y; + data->buf[GEOMAGNETIC_SENSOR].cal_z = magdata->cal_z; + data->buf[GEOMAGNETIC_SENSOR].accuracy = magdata->accuracy; + + input_report_rel(data->mag_input_dev, REL_RX, + data->buf[GEOMAGNETIC_SENSOR].cal_x); + input_report_rel(data->mag_input_dev, REL_RY, + data->buf[GEOMAGNETIC_SENSOR].cal_y); + input_report_rel(data->mag_input_dev, REL_RZ, + data->buf[GEOMAGNETIC_SENSOR].cal_z); + input_report_rel(data->mag_input_dev, REL_HWHEEL, + data->buf[GEOMAGNETIC_SENSOR].accuracy + 1); + + input_sync(data->mag_input_dev); +#endif +} + +void report_mag_uncaldata(struct ssp_data *data, struct sensor_value *magdata) +{ + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x = magdata->uncal_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y = magdata->uncal_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z = magdata->uncal_z; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x= magdata->offset_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y= magdata->offset_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z= magdata->offset_z; + + input_report_rel(data->uncal_mag_input_dev, REL_RX, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x); + input_report_rel(data->uncal_mag_input_dev, REL_RY, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y); + input_report_rel(data->uncal_mag_input_dev, REL_RZ, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z); + input_report_rel(data->uncal_mag_input_dev, REL_HWHEEL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x); + input_report_rel(data->uncal_mag_input_dev, REL_DIAL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y); + input_report_rel(data->uncal_mag_input_dev, REL_WHEEL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z); + input_sync(data->uncal_mag_input_dev); +} + +void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + data->buf[GYRO_UNCALIB_SENSOR].uncal_x = gyrodata->uncal_x; + data->buf[GYRO_UNCALIB_SENSOR].uncal_y = gyrodata->uncal_y; + data->buf[GYRO_UNCALIB_SENSOR].uncal_z = gyrodata->uncal_z; + data->buf[GYRO_UNCALIB_SENSOR].offset_x = gyrodata->offset_x; + data->buf[GYRO_UNCALIB_SENSOR].offset_y = gyrodata->offset_y; + data->buf[GYRO_UNCALIB_SENSOR].offset_z = gyrodata->offset_z; + + input_report_rel(data->uncalib_gyro_input_dev, REL_X, + data->buf[GYRO_UNCALIB_SENSOR].uncal_x); + input_report_rel(data->uncalib_gyro_input_dev, REL_Y, + data->buf[GYRO_UNCALIB_SENSOR].uncal_y); + input_report_rel(data->uncalib_gyro_input_dev, REL_Z, + data->buf[GYRO_UNCALIB_SENSOR].uncal_z); + input_report_rel(data->uncalib_gyro_input_dev, REL_RX, + data->buf[GYRO_UNCALIB_SENSOR].offset_x); + input_report_rel(data->uncalib_gyro_input_dev, REL_RY, + data->buf[GYRO_UNCALIB_SENSOR].offset_y); + input_report_rel(data->uncalib_gyro_input_dev, REL_RZ, + data->buf[GYRO_UNCALIB_SENSOR].offset_z); + input_sync(data->uncalib_gyro_input_dev); +} + +void report_sig_motion_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[SIG_MOTION_SENSOR].sig_motion = sig_motion_data->sig_motion; + + input_report_rel(data->sig_motion_input_dev, REL_MISC, + data->buf[SIG_MOTION_SENSOR].sig_motion); + input_sync(data->sig_motion_input_dev); +} + +void report_rot_data(struct ssp_data *data, struct sensor_value *rotdata) +{ + int rot_buf[5]; + data->buf[ROTATION_VECTOR].quat_a = rotdata->quat_a; + data->buf[ROTATION_VECTOR].quat_b = rotdata->quat_b; + data->buf[ROTATION_VECTOR].quat_c = rotdata->quat_c; + data->buf[ROTATION_VECTOR].quat_d = rotdata->quat_d; + data->buf[ROTATION_VECTOR].acc_rot = rotdata->acc_rot; + rot_buf[0] = rotdata->quat_a; + rot_buf[1] = rotdata->quat_b; + rot_buf[2] = rotdata->quat_c; + rot_buf[3] = rotdata->quat_d; + rot_buf[4] = rotdata->acc_rot; + ssp_push_17bytes_buffer(data->rot_indio_dev, rotdata->timestamp, rot_buf); +} + +void report_game_rot_data(struct ssp_data *data, struct sensor_value *grotdata) +{ + int rot_buf[5]; + data->buf[GAME_ROTATION_VECTOR].quat_a = grotdata->quat_a; + data->buf[GAME_ROTATION_VECTOR].quat_b = grotdata->quat_b; + data->buf[GAME_ROTATION_VECTOR].quat_c = grotdata->quat_c; + data->buf[GAME_ROTATION_VECTOR].quat_d = grotdata->quat_d; + data->buf[GAME_ROTATION_VECTOR].acc_rot = grotdata->acc_rot; + + rot_buf[0] = grotdata->quat_a; + rot_buf[1] = grotdata->quat_b; + rot_buf[2] = grotdata->quat_c; + rot_buf[3] = grotdata->quat_d; + rot_buf[4] = grotdata->acc_rot; + ssp_push_17bytes_buffer(data->game_rot_indio_dev, grotdata->timestamp, + rot_buf); +} + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +void report_gesture_data(struct ssp_data *data, struct sensor_value *gesdata) +{ + int i = 0; + for (i=0; i<20; i++) { + data->buf[GESTURE_SENSOR].data[i] = gesdata->data[i]; + } + + input_report_abs(data->gesture_input_dev, + ABS_X, data->buf[GESTURE_SENSOR].data[0]); + input_report_abs(data->gesture_input_dev, + ABS_Y, data->buf[GESTURE_SENSOR].data[1]); + input_report_abs(data->gesture_input_dev, + ABS_Z, data->buf[GESTURE_SENSOR].data[2]); + input_report_abs(data->gesture_input_dev, + ABS_RX, data->buf[GESTURE_SENSOR].data[3]); + input_report_abs(data->gesture_input_dev, + ABS_RY, data->buf[GESTURE_SENSOR].data[4]); + input_report_abs(data->gesture_input_dev, + ABS_RZ, data->buf[GESTURE_SENSOR].data[5]); + input_report_abs(data->gesture_input_dev, + ABS_THROTTLE, data->buf[GESTURE_SENSOR].data[6]); + input_report_abs(data->gesture_input_dev, + ABS_RUDDER, data->buf[GESTURE_SENSOR].data[7]); + input_report_abs(data->gesture_input_dev, + ABS_WHEEL, data->buf[GESTURE_SENSOR].data[8]); + input_report_abs(data->gesture_input_dev, + ABS_GAS, data->buf[GESTURE_SENSOR].data[9]); + input_report_abs(data->gesture_input_dev, + ABS_BRAKE, data->buf[GESTURE_SENSOR].data[10]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0X, data->buf[GESTURE_SENSOR].data[11]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0Y, data->buf[GESTURE_SENSOR].data[12]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1X, data->buf[GESTURE_SENSOR].data[13]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1Y, data->buf[GESTURE_SENSOR].data[14]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2X, data->buf[GESTURE_SENSOR].data[15]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2Y, data->buf[GESTURE_SENSOR].data[16]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3X, data->buf[GESTURE_SENSOR].data[17]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3Y, data->buf[GESTURE_SENSOR].data[18]); + input_report_abs(data->gesture_input_dev, + ABS_PRESSURE, data->buf[GESTURE_SENSOR].data[19]); + + input_sync(data->gesture_input_dev); +} +#endif +#ifdef CONFIG_SENSORS_SSP_BMP182 +void report_pressure_data(struct ssp_data *data, struct sensor_value *predata) +{ + int temp[3] = {0, }; + data->buf[PRESSURE_SENSOR].pressure[0] = + predata->pressure[0] - data->iPressureCal; + data->buf[PRESSURE_SENSOR].pressure[1] = predata->pressure[1]; + + temp[0] = data->buf[PRESSURE_SENSOR].pressure[0]; + temp[1] = data->buf[PRESSURE_SENSOR].pressure[1]; + temp[2] = data->sealevelpressure; + + ssp_push_12bytes_buffer(data->pressure_indio_dev, predata->timestamp, + temp); +} +#endif +void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) +{ + data->buf[LIGHT_SENSOR].r = lightdata->r; + data->buf[LIGHT_SENSOR].g = lightdata->g; + data->buf[LIGHT_SENSOR].b = lightdata->b; + data->buf[LIGHT_SENSOR].w = lightdata->w; +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_TMD37823) + data->buf[LIGHT_SENSOR].a_time = lightdata->a_time; + data->buf[LIGHT_SENSOR].a_gain = (0x03) & (lightdata->a_gain); +#endif + + input_report_rel(data->light_input_dev, REL_HWHEEL, + data->buf[LIGHT_SENSOR].r + 1); + input_report_rel(data->light_input_dev, REL_DIAL, + data->buf[LIGHT_SENSOR].g + 1); + input_report_rel(data->light_input_dev, REL_WHEEL, + data->buf[LIGHT_SENSOR].b + 1); + input_report_rel(data->light_input_dev, REL_MISC, + data->buf[LIGHT_SENSOR].w + 1); + +#ifdef CONFIG_SENSORS_SSP_TMG399X + input_report_rel(data->light_input_dev, REL_RY, + data->buf[LIGHT_SENSOR].a_time + 1); + input_report_rel(data->light_input_dev, REL_RZ, + data->buf[LIGHT_SENSOR].a_gain + 1); +#endif + input_sync(data->light_input_dev); +} + +void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) +{ + ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u, thd(%u, %u)\n", + proxdata->prox[0], proxdata->prox[1], + data->uProxHiThresh, data->uProxLoThresh); + + data->buf[PROXIMITY_SENSOR].prox[0] = proxdata->prox[0]; + data->buf[PROXIMITY_SENSOR].prox[1] = proxdata->prox[1]; + + input_report_abs(data->prox_input_dev, ABS_DISTANCE, + (!proxdata->prox[0])); + input_sync(data->prox_input_dev); + + wake_lock_timeout(&data->ssp_wake_lock, 3 * HZ); +} + +void report_prox_raw_data(struct ssp_data *data, + struct sensor_value *proxrawdata) +{ + if (data->uFactoryProxAvg[0]++ >= PROX_AVG_READ_NUM) { + data->uFactoryProxAvg[2] /= PROX_AVG_READ_NUM; + data->buf[PROXIMITY_RAW].prox[1] = (u16)data->uFactoryProxAvg[1]; + data->buf[PROXIMITY_RAW].prox[2] = (u16)data->uFactoryProxAvg[2]; + data->buf[PROXIMITY_RAW].prox[3] = (u16)data->uFactoryProxAvg[3]; + + data->uFactoryProxAvg[0] = 0; + data->uFactoryProxAvg[1] = 0; + data->uFactoryProxAvg[2] = 0; + data->uFactoryProxAvg[3] = 0; + } else { + data->uFactoryProxAvg[2] += proxrawdata->prox[0]; + + if (data->uFactoryProxAvg[0] == 1) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + else if (proxrawdata->prox[0] < data->uFactoryProxAvg[1]) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + + if (proxrawdata->prox[0] > data->uFactoryProxAvg[3]) + data->uFactoryProxAvg[3] = proxrawdata->prox[0]; + } + + data->buf[PROXIMITY_RAW].prox[0] = proxrawdata->prox[0]; +} + +void report_step_det_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_DETECTOR].step_det = sig_motion_data->step_det; + ssp_push_1bytes_buffer(data->step_det_indio_dev, sig_motion_data->timestamp, + &sig_motion_data->step_det); +} + +void report_step_cnt_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_COUNTER].step_diff = sig_motion_data->step_diff; + + data->step_count_total += data->buf[STEP_COUNTER].step_diff; + + input_report_rel(data->step_cnt_input_dev, REL_MISC, + data->step_count_total + 1); + input_sync(data->step_cnt_input_dev); +} + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void report_temp_humidity_data(struct ssp_data *data, + struct sensor_value *temp_humi_data) +{ + data->buf[TEMPERATURE_HUMIDITY_SENSOR].x = temp_humi_data->x; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].y = temp_humi_data->y; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].z = temp_humi_data->z; + + /* Temperature */ + input_report_rel(data->temp_humi_input_dev, REL_HWHEEL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].x); + /* Humidity */ + input_report_rel(data->temp_humi_input_dev, REL_DIAL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].y); + input_sync(data->temp_humi_input_dev); + if (data->buf[TEMPERATURE_HUMIDITY_SENSOR].z) + wake_lock_timeout(&data->ssp_wake_lock, 2 * HZ); +} +#endif + +#ifdef CONFIG_SENSORS_SSP_UVIS25 +void report_uv_data(struct ssp_data *data, + struct sensor_value *uv_data) +{ + data->buf[UV_SENSOR].uv = uv_data->uv; + input_report_rel(data->uv_input_dev, REL_MISC, + data->buf[UV_SENSOR].uv + 1); + input_sync(data->uv_input_dev); +} +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void report_bulk_comp_data(struct ssp_data *data) +{ + input_report_rel(data->temp_humi_input_dev, REL_WHEEL, + data->bulk_buffer->len); + input_sync(data->temp_humi_input_dev); +} +#endif + +int initialize_event_symlink(struct ssp_data *data) +{ + int iRet = 0; + + data->sen_dev = device_create(sensors_event_class, NULL, 0, NULL, + "%s", "symlink"); + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); + if (iRet < 0) + goto iRet_gesture_sysfs_create_link; +#endif + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + if (iRet < 0) + goto iRet_light_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); + if (iRet < 0) + goto iRet_prox_sysfs_create_link; + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); + if (iRet < 0) + goto iRet_temp_humi_sysfs_create_link; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->uv_input_dev->dev.kobj, + data->uv_input_dev->name); + if (iRet < 0) + goto iRet_uv_sysfs_create_link; +#endif + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); + if (iRet < 0) + goto iRet_mag_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); + if (iRet < 0) + goto iRet_uncal_mag_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + if (iRet < 0) + goto iRet_sig_motion_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); + if (iRet < 0) + goto iRet_uncalib_gyro_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + if (iRet < 0) + goto iRet_step_cnt_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); + if (iRet < 0) + goto iRet_meta_sysfs_create_link; + + return SUCCESS; +iRet_meta_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); +iRet_step_cnt_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); +iRet_uncalib_gyro_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); +iRet_sig_motion_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); +iRet_uncal_mag_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); +iRet_mag_sysfs_create_link: +#ifdef CONFIG_SENSORS_SSP_UVIS25 + sysfs_delete_link(&data->sen_dev->kobj, + &data->uv_input_dev->dev.kobj, + data->uv_input_dev->name); +iRet_uv_sysfs_create_link: +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); +iRet_temp_humi_sysfs_create_link: +#endif + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); +iRet_prox_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); +iRet_light_sysfs_create_link: +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); +iRet_gesture_sysfs_create_link: +#endif + pr_err("[SSP]: %s - could not create event symlink\n", __func__); + + return FAIL; +} + +void remove_event_symlink(struct ssp_data *data) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); +#endif + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + sysfs_delete_link(&data->sen_dev->kobj, + &data->uv_input_dev->dev.kobj, + data->uv_input_dev->name); +#endif + sysfs_delete_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); +} + +static const struct iio_info accel_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec accel_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES * 8, + IIO_BUFFER_6_BYTES * 8, 0) + } +}; + +static const struct iio_info gyro_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec gyro_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +static const struct iio_info game_rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec game_rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + +static const struct iio_info rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + + +static const struct iio_info step_det_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec step_det_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES * 8, + IIO_BUFFER_1_BYTES * 8, 0) + } +}; + +static const struct iio_info pressure_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec pressure_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +int initialize_input_dev(struct ssp_data *data) +{ + int iRet = 0; + struct input_dev *light_input_dev, *prox_input_dev, +#ifdef CONFIG_SENSORS_SSP_SHTC1 + *temp_humi_input_dev, +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + *uv_input_dev, +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + *gesture_input_dev, +#endif + *mag_input_dev, *uncal_mag_input_dev, *uncalib_gyro_input_dev, + *sig_motion_input_dev, *step_cnt_input_dev, + *meta_input_dev; + + data->accel_indio_dev = iio_allocate_device(0); + if (!data->accel_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio accel device\n", __func__); + return -ENOMEM; + } + + data->accel_indio_dev->name = "accelerometer_sensor"; + data->accel_indio_dev->dev.parent = &data->spi->dev; + data->accel_indio_dev->info = &accel_info; + data->accel_indio_dev->channels = accel_channels; + data->accel_indio_dev->num_channels = ARRAY_SIZE(accel_channels); + data->accel_indio_dev->modes = INDIO_DIRECT_MODE; + data->accel_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->accel_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_accel; + } + + iRet = iio_buffer_register(data->accel_indio_dev, data->accel_indio_dev->channels, + data->accel_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_accel; + + iRet = iio_device_register(data->accel_indio_dev); + if (iRet) + goto out_remove_trigger_accel; + + data->gyro_indio_dev = iio_allocate_device(0); + if (!data->gyro_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_gyro; + } + + data->gyro_indio_dev->name = "gyro_sensor"; + data->gyro_indio_dev->dev.parent = &data->spi->dev; + data->gyro_indio_dev->info = &gyro_info; + data->gyro_indio_dev->channels = gyro_channels; + data->gyro_indio_dev->num_channels = ARRAY_SIZE(gyro_channels); + data->gyro_indio_dev->modes = INDIO_DIRECT_MODE; + data->gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->gyro_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_gyro; + } + + iRet = iio_buffer_register(data->gyro_indio_dev, data->gyro_indio_dev->channels, + data->gyro_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_gyro; + + iRet = iio_device_register(data->gyro_indio_dev); + if (iRet) + goto out_remove_trigger_gyro; + + data->game_rot_indio_dev = iio_allocate_device(0); + if (!data->game_rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_game_rot; + } + + data->game_rot_indio_dev->name = "game_rotation_vector_sensor"; + data->game_rot_indio_dev->dev.parent = &data->spi->dev; + data->game_rot_indio_dev->info = &game_rot_info; + data->game_rot_indio_dev->channels = game_rot_channels; + data->game_rot_indio_dev->num_channels = ARRAY_SIZE(game_rot_channels); + data->game_rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->game_rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->game_rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_game_rot; + } + + iRet = iio_buffer_register(data->game_rot_indio_dev, data->game_rot_indio_dev->channels, + data->game_rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_game_rot; + + iRet = iio_device_register(data->game_rot_indio_dev); + if (iRet) + goto out_remove_trigger_game_rot; + + data->rot_indio_dev = iio_allocate_device(0); + if (!data->rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_rot; + } + + data->rot_indio_dev->name = "rotation_vector_sensor"; + data->rot_indio_dev->dev.parent = &data->spi->dev; + data->rot_indio_dev->info = &rot_info; + data->rot_indio_dev->channels = rot_channels; + data->rot_indio_dev->num_channels = ARRAY_SIZE(rot_channels); + data->rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_rot; + } + + iRet = iio_buffer_register(data->rot_indio_dev, data->rot_indio_dev->channels, + data->rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_rot; + + iRet = iio_device_register(data->rot_indio_dev); + if (iRet) + goto out_remove_trigger_rot; + + data->step_det_indio_dev = iio_allocate_device(0); + if (!data->step_det_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_step_det; + } + + data->step_det_indio_dev->name = "step_det_sensor"; + data->step_det_indio_dev->dev.parent = &data->spi->dev; + data->step_det_indio_dev->info = &step_det_info; + data->step_det_indio_dev->channels = step_det_channels; + data->step_det_indio_dev->num_channels = ARRAY_SIZE(step_det_channels); + data->step_det_indio_dev->modes = INDIO_DIRECT_MODE; + data->step_det_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->step_det_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_step_det; + } + + iRet = iio_buffer_register(data->step_det_indio_dev, data->step_det_indio_dev->channels, + data->step_det_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_step_det; + + iRet = iio_device_register(data->step_det_indio_dev); + if (iRet) + goto out_remove_trigger_step_det; + +#ifdef CONFIG_SENSORS_SSP_BMP182 + data->pressure_indio_dev = iio_allocate_device(0); + if (!data->pressure_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_pressure; + } + + data->pressure_indio_dev->name = "pressure_sensor"; + data->pressure_indio_dev->dev.parent = &data->spi->dev; + data->pressure_indio_dev->info = &pressure_info; + data->pressure_indio_dev->channels = pressure_channels; + data->pressure_indio_dev->num_channels = ARRAY_SIZE(pressure_channels); + data->pressure_indio_dev->modes = INDIO_DIRECT_MODE; + data->pressure_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->pressure_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_pressure; + } + + iRet = iio_buffer_register(data->pressure_indio_dev, data->pressure_indio_dev->channels, + data->pressure_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_pressure; + + iRet = iio_device_register(data->pressure_indio_dev); + if (iRet) + goto out_remove_trigger_pressure; +#endif + + /* allocate input_device */ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + gesture_input_dev = input_allocate_device(); + if (gesture_input_dev == NULL) + goto iRet_gesture_input_free_device; +#endif + + light_input_dev = input_allocate_device(); + if (light_input_dev == NULL) + goto iRet_light_input_free_device; + + prox_input_dev = input_allocate_device(); + if (prox_input_dev == NULL) + goto iRet_proximity_input_free_device; + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + temp_humi_input_dev = input_allocate_device(); + if (temp_humi_input_dev == NULL) + goto iRet_temp_humidity_input_free_device; +#endif + +#ifdef CONFIG_SENSORS_SSP_UVIS25 + uv_input_dev = input_allocate_device(); + if (uv_input_dev == NULL) + goto iRet_uv_input_free_device; +#endif + + mag_input_dev = input_allocate_device(); + if (mag_input_dev == NULL) + goto iRet_mag_input_free_device; + + uncal_mag_input_dev = input_allocate_device(); + if (uncal_mag_input_dev == NULL) + goto iRet_uncal_mag_input_free_device; + + sig_motion_input_dev = input_allocate_device(); + if (sig_motion_input_dev == NULL) + goto iRet_sig_motion_input_free_device; + + uncalib_gyro_input_dev = input_allocate_device(); + if (uncalib_gyro_input_dev == NULL) + goto iRet_uncalib_gyro_input_free_device; + + step_cnt_input_dev = input_allocate_device(); + if (step_cnt_input_dev == NULL) + goto iRet_step_cnt_input_free_device; + + meta_input_dev = input_allocate_device(); + if (meta_input_dev == NULL) + goto iRet_meta_input_free_device; + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + input_set_drvdata(gesture_input_dev, data); +#endif + input_set_drvdata(light_input_dev, data); + input_set_drvdata(prox_input_dev, data); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_set_drvdata(temp_humi_input_dev, data); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + input_set_drvdata(uv_input_dev, data); +#endif + input_set_drvdata(mag_input_dev, data); + input_set_drvdata(uncal_mag_input_dev, data); + input_set_drvdata(sig_motion_input_dev, data); + input_set_drvdata(uncalib_gyro_input_dev, data); + input_set_drvdata(step_cnt_input_dev, data); + input_set_drvdata(meta_input_dev, data); + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + gesture_input_dev->name = "gesture_sensor"; +#endif + light_input_dev->name = "light_sensor"; + prox_input_dev->name = "proximity_sensor"; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + temp_humi_input_dev->name = "temp_humidity_sensor"; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + uv_input_dev->name = "uv_sensor"; +#endif + mag_input_dev->name = "geomagnetic_sensor"; + uncal_mag_input_dev->name = "uncal_geomagnetic_sensor"; + sig_motion_input_dev->name = "sig_motion_sensor"; + uncalib_gyro_input_dev->name = "uncalibrated_gyro_sensor"; + step_cnt_input_dev->name = "step_cnt_sensor"; + meta_input_dev->name = "meta_event"; + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + input_set_capability(gesture_input_dev, EV_ABS, ABS_X); + input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); + input_set_abs_params(gesture_input_dev, ABS_Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Z); + input_set_abs_params(gesture_input_dev, ABS_Z, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RX); + input_set_abs_params(gesture_input_dev, ABS_RX, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RY); + input_set_abs_params(gesture_input_dev, ABS_RY, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RZ); + input_set_abs_params(gesture_input_dev, ABS_RZ, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_THROTTLE); + input_set_abs_params(gesture_input_dev, ABS_THROTTLE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RUDDER); + input_set_abs_params(gesture_input_dev, ABS_RUDDER, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_WHEEL); + input_set_abs_params(gesture_input_dev, ABS_WHEEL, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_GAS); + input_set_abs_params(gesture_input_dev, ABS_GAS, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_BRAKE); + input_set_abs_params(gesture_input_dev, ABS_BRAKE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0X); + input_set_abs_params(gesture_input_dev, ABS_HAT0X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0Y); + input_set_abs_params(gesture_input_dev, ABS_HAT0Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1X); + input_set_abs_params(gesture_input_dev, ABS_HAT1X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1Y); + input_set_abs_params(gesture_input_dev, ABS_HAT1Y, 0, 1024, 0, 0); + + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2X); + input_set_abs_params(gesture_input_dev, ABS_HAT2X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2Y); + input_set_abs_params(gesture_input_dev, ABS_HAT2Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3X); + input_set_abs_params(gesture_input_dev, ABS_HAT3X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3Y); + input_set_abs_params(gesture_input_dev, ABS_HAT3Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_PRESSURE); + input_set_abs_params(gesture_input_dev, ABS_PRESSURE, 0, 1024, 0, 0); +#endif + + input_set_capability(light_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(light_input_dev, EV_REL, REL_DIAL); + input_set_capability(light_input_dev, EV_REL, REL_WHEEL); + input_set_capability(light_input_dev, EV_REL, REL_MISC); + input_set_capability(light_input_dev, EV_REL, REL_RY); + input_set_capability(light_input_dev, EV_REL, REL_RZ); + + input_set_capability(prox_input_dev, EV_ABS, ABS_DISTANCE); + input_set_abs_params(prox_input_dev, ABS_DISTANCE, 0, 1, 0, 0); + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_set_capability(temp_humi_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_DIAL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_WHEEL); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + input_set_capability(uv_input_dev, EV_REL, REL_MISC); +#endif +#ifdef SAVE_MAG_LOG + input_set_capability(mag_input_dev, EV_REL, REL_X); + input_set_capability(mag_input_dev, EV_REL, REL_Y); + input_set_capability(mag_input_dev, EV_REL, REL_Z); + input_set_capability(mag_input_dev, EV_REL, REL_RX); + input_set_capability(mag_input_dev, EV_REL, REL_RY); + input_set_capability(mag_input_dev, EV_REL, REL_RZ); + input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(mag_input_dev, EV_REL, REL_DIAL); + input_set_capability(mag_input_dev, EV_REL, REL_WHEEL); +#else + input_set_capability(mag_input_dev, EV_REL, REL_RX); + input_set_capability(mag_input_dev, EV_REL, REL_RY); + input_set_capability(mag_input_dev, EV_REL, REL_RZ); + input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); +#endif + + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RX); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RY); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RZ); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_DIAL); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_WHEEL); + + input_set_capability(sig_motion_input_dev, EV_REL, REL_MISC); + + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_X); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Y); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Z); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RX); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RY); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RZ); + input_set_capability(step_cnt_input_dev, EV_REL, REL_MISC); + + input_set_capability(meta_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(meta_input_dev, EV_REL, REL_DIAL); + + /* register input_device */ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + iRet = input_register_device(gesture_input_dev); + if (iRet < 0) + goto iRet_gesture_input_unreg_device; +#endif + +#ifdef CONFIG_SENSORS_SSP_UVIS25 + iRet = input_register_device(uv_input_dev); + if (iRet < 0) { + input_free_device(uv_input_dev); + input_free_device(light_input_dev); + input_free_device(prox_input_dev); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_free_device(temp_humi_input_dev); +#endif + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_uv_input_unreg_device; + } +#endif + + iRet = input_register_device(light_input_dev); + if (iRet < 0) { + input_free_device(light_input_dev); + input_free_device(prox_input_dev); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_free_device(temp_humi_input_dev); +#endif + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_light_input_unreg_device; + } + + iRet = input_register_device(prox_input_dev); + if (iRet < 0) { + input_free_device(prox_input_dev); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_free_device(temp_humi_input_dev); +#endif + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_proximity_input_unreg_device; + } + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + iRet = input_register_device(temp_humi_input_dev); + if (iRet < 0) { + input_free_device(temp_humi_input_dev); + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_tmep_humi_input_unreg_device; + } +#endif + + iRet = input_register_device(mag_input_dev); + if (iRet < 0) { + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_mag_input_unreg_device; + } + + iRet = input_register_device(uncal_mag_input_dev); + if (iRet < 0) { + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_uncal_mag_input_unreg_device; + } + + iRet = input_register_device(sig_motion_input_dev); + if (iRet < 0) { + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_sig_motion_input_unreg_device; + } + + iRet = input_register_device(uncalib_gyro_input_dev); + if (iRet < 0) { + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_uncalib_gyro_input_unreg_device; + } + + iRet = input_register_device(step_cnt_input_dev); + if (iRet < 0) { + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_step_cnt_input_unreg_device; + } + + iRet = input_register_device(meta_input_dev); + if (iRet < 0) { + input_free_device(meta_input_dev); + goto iRet_meta_input_unreg_device; + } + +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + data->gesture_input_dev = gesture_input_dev; +#endif + data->light_input_dev = light_input_dev; + data->prox_input_dev = prox_input_dev; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->temp_humi_input_dev = temp_humi_input_dev; +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + data->uv_input_dev = uv_input_dev; +#endif + data->mag_input_dev = mag_input_dev; + data->uncal_mag_input_dev = uncal_mag_input_dev; + data->sig_motion_input_dev = sig_motion_input_dev; + data->uncalib_gyro_input_dev = uncalib_gyro_input_dev; + data->step_cnt_input_dev = step_cnt_input_dev; + data->meta_input_dev = meta_input_dev; + + return SUCCESS; +iRet_meta_input_unreg_device: + input_unregister_device(step_cnt_input_dev); +iRet_step_cnt_input_unreg_device: + input_unregister_device(uncalib_gyro_input_dev); +iRet_uncalib_gyro_input_unreg_device: + input_unregister_device(sig_motion_input_dev); +iRet_sig_motion_input_unreg_device: + input_unregister_device(uncal_mag_input_dev); +iRet_uncal_mag_input_unreg_device: + input_unregister_device(mag_input_dev); +iRet_mag_input_unreg_device: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_unregister_device(temp_humi_input_dev); +iRet_tmep_humi_input_unreg_device: +#endif + input_unregister_device(prox_input_dev); +iRet_proximity_input_unreg_device: + input_unregister_device(light_input_dev); +iRet_light_input_unreg_device: +#ifdef CONFIG_SENSORS_SSP_UVIS25 + input_unregister_device(uv_input_dev); +iRet_uv_input_unreg_device: +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + input_unregister_device(gesture_input_dev); + return ERROR; +iRet_gesture_input_unreg_device: +#endif + input_free_device(meta_input_dev); +iRet_meta_input_free_device: + input_free_device(step_cnt_input_dev); +iRet_step_cnt_input_free_device: + input_free_device(uncalib_gyro_input_dev); +iRet_uncalib_gyro_input_free_device: + input_free_device(sig_motion_input_dev); +iRet_sig_motion_input_free_device: + input_free_device(uncal_mag_input_dev); +iRet_uncal_mag_input_free_device: + input_free_device(mag_input_dev); +iRet_mag_input_free_device: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_free_device(temp_humi_input_dev); +iRet_temp_humidity_input_free_device: +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + input_free_device(uv_input_dev); +iRet_uv_input_free_device: +#endif + input_free_device(prox_input_dev); +iRet_proximity_input_free_device: + input_free_device(light_input_dev); +iRet_light_input_free_device: +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + input_free_device(gesture_input_dev); +iRet_gesture_input_free_device: +#endif +#ifdef CONFIG_SENSORS_SSP_BMP182 + iio_device_unregister(data->pressure_indio_dev); +out_remove_trigger_pressure: + iio_buffer_unregister(data->pressure_indio_dev); +out_unreg_ring_pressure: + ssp_iio_unconfigure_ring(data->pressure_indio_dev); +out_free_pressure: + iio_free_device(data->pressure_indio_dev); +out_alloc_fail_pressure: +#endif + iio_device_unregister(data->step_det_indio_dev); +out_remove_trigger_step_det: + iio_buffer_unregister(data->step_det_indio_dev); +out_unreg_ring_step_det: + ssp_iio_unconfigure_ring(data->step_det_indio_dev); +out_free_step_det: + iio_free_device(data->step_det_indio_dev); +out_alloc_fail_step_det: + iio_device_unregister(data->rot_indio_dev); +out_remove_trigger_rot: + iio_buffer_unregister(data->rot_indio_dev); +out_unreg_ring_rot: + ssp_iio_unconfigure_ring(data->rot_indio_dev); +out_free_rot: + iio_free_device(data->rot_indio_dev); +out_alloc_fail_rot: + iio_device_unregister(data->game_rot_indio_dev); +out_remove_trigger_game_rot: + iio_buffer_unregister(data->game_rot_indio_dev); +out_unreg_ring_game_rot: + ssp_iio_unconfigure_ring(data->game_rot_indio_dev); +out_free_game_rot: + iio_free_device(data->game_rot_indio_dev); +out_alloc_fail_game_rot: + iio_device_unregister(data->gyro_indio_dev); +out_remove_trigger_gyro: + iio_buffer_unregister(data->gyro_indio_dev); +out_unreg_ring_gyro: + ssp_iio_unconfigure_ring(data->gyro_indio_dev); +out_free_gyro: + iio_free_device(data->gyro_indio_dev); +out_alloc_fail_gyro: + iio_device_unregister(data->accel_indio_dev); +out_remove_trigger_accel: + iio_buffer_unregister(data->accel_indio_dev); +out_unreg_ring_accel: + ssp_iio_unconfigure_ring(data->accel_indio_dev); +out_free_accel: + iio_free_device(data->accel_indio_dev); + pr_err("[SSP]: %s - could not allocate input device\n", __func__); + return ERROR; +} + +void remove_input_dev(struct ssp_data *data) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + input_unregister_device(data->gesture_input_dev); +#endif + input_unregister_device(data->light_input_dev); + input_unregister_device(data->prox_input_dev); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + input_unregister_device(data->temp_humi_input_dev); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + input_unregister_device(data->uv_input_dev); +#endif + input_unregister_device(data->mag_input_dev); + input_unregister_device(data->uncal_mag_input_dev); + input_unregister_device(data->sig_motion_input_dev); + input_unregister_device(data->uncalib_gyro_input_dev); + input_unregister_device(data->step_cnt_input_dev); + input_unregister_device(data->meta_input_dev); +} diff --git a/drivers/sensorhub/stm_hestia/ssp_sensorhub.c b/drivers/sensorhub/stm_hestia/ssp_sensorhub.c new file mode 100755 index 000000000000..59529ada5460 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_sensorhub.c @@ -0,0 +1,713 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "ssp_sensorhub.h" + +static void ssp_sensorhub_log(const char *func_name, + const char *data, int length) +{ + char buf[6]; + char *log_str; + int log_size; + int i; + + if (likely(length <= BIG_DATA_SIZE)) + log_size = length; + else + log_size = PRINT_TRUNCATE * 2 + 1; + + log_size = sizeof(buf) * log_size + 1; + log_str = kzalloc(log_size, GFP_ATOMIC); + if (unlikely(!log_str)) { + sensorhub_err("allocate memory for data log err"); + return; + } + + for (i = 0; i < length; i++) { + if (length < BIG_DATA_SIZE || + i < PRINT_TRUNCATE || i >= length - PRINT_TRUNCATE) { + snprintf(buf, sizeof(buf), "%d", (signed char)data[i]); + strlcat(log_str, buf, log_size); + } + if (length < BIG_DATA_SIZE || + i < PRINT_TRUNCATE || i >= length - PRINT_TRUNCATE) { + if (i < length - 1) + strlcat(log_str, ", ", log_size); + } + if (length > BIG_DATA_SIZE && i == PRINT_TRUNCATE) + strlcat(log_str, "..., ", log_size); + } + + pr_info("[SSP]: %s - %s (%d)", func_name, log_str, length); + kfree(log_str); +} + +static int ssp_sensorhub_send_big_data(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + int length = count - 3; + int ret = 0; + + /* only support voice service for the moment */ + if (buf[1] != TYPE_WAKE_UP_VOICE_SERVICE) { + sensorhub_err("not voice service(%d)", buf[1]); + return -EINVAL; + } + + /* am or grammer data? */ + if (buf[2] != TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM && + buf[2] != TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER) { + sensorhub_err("voice data type err(%d)", buf[2]); + return -EINVAL; + } + + hub_data->big_send_events.library_data + = kzalloc(length * sizeof(char), GFP_KERNEL); + if (unlikely(!hub_data->big_send_events.library_data)) { + sensorhub_err("allocate memory for big library err"); + return -ENOMEM; + } + + memcpy(hub_data->big_send_events.library_data, buf+3, length); + hub_data->big_send_events.library_length = length; + + /* trigger big data transfer */ + ret = set_big_data_start(hub_data->ssp_data, buf[2]+1, length); + if (ret != SUCCESS) { + sensorhub_err("set_big_data_start err(%d)", ret); + goto exit; + } + + /* wait until write operation is done */ + ret = wait_for_completion_timeout(&hub_data->big_write_done, + COMPLETION_TIMEOUT + 1*HZ); + if (unlikely(!ret)) { + sensorhub_err("wait timed out"); + ret = -EBUSY; + } else if (unlikely(ret < 0)) { + sensorhub_err("wait for completion err(%d)", ret); + ret = -EIO; + } + +exit: + kfree(hub_data->big_send_events.library_data); + return !ret ? ret + 1 : ret; +} + +static int ssp_sensorhub_send_cmd(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + int ret = 0; + + if (buf[2] < MSG2SSP_AP_STATUS_WAKEUP || + buf[2] >= MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE) { + sensorhub_err("MSG2SSP_INST_LIB_NOTI err(%d)", buf[2]); + return -EINVAL; + } + + ret = ssp_send_cmd(hub_data->ssp_data, buf[2], 0); + + if (buf[2] == MSG2SSP_AP_STATUS_WAKEUP || + buf[2] == MSG2SSP_AP_STATUS_SLEEP) + hub_data->ssp_data->uLastAPState = buf[2]; + + if (buf[2] == MSG2SSP_AP_STATUS_SUSPEND || + buf[2] == MSG2SSP_AP_STATUS_RESUME) + hub_data->ssp_data->uLastResumeState = buf[2]; + + return ret; +} + +static int ssp_sensorhub_send_instruction(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + unsigned char instruction = buf[0]; + + if (buf[0] == MSG2SSP_INST_LIBRARY_REMOVE) + instruction = REMOVE_LIBRARY; + else if (buf[0] == MSG2SSP_INST_LIBRARY_ADD) + instruction = ADD_LIBRARY; + + return send_instruction(hub_data->ssp_data, instruction, + (unsigned char)buf[1], (unsigned char *)(buf+2), count-2); +} + +static ssize_t ssp_sensorhub_write(struct file *file, const char __user *buf, + size_t count, loff_t *pos) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + int ret = 0; + + if (unlikely(count < 2)) { + sensorhub_err("library data length err(%d)", count); + return -EINVAL; + } + + ssp_sensorhub_log(__func__, buf, count); + + if (unlikely(hub_data->ssp_data->bSspShutdown)) { + sensorhub_err("stop sending library data(shutdown)"); + return -EBUSY; + } + + if (buf[0] == MSG2SSP_INST_LIB_DATA && count >= BIG_DATA_SIZE) + ret = ssp_sensorhub_send_big_data(hub_data, buf, count); + else if (buf[0] == MSG2SSP_INST_LIB_NOTI) + ret = ssp_sensorhub_send_cmd(hub_data, buf, count); + else + ret = ssp_sensorhub_send_instruction(hub_data, buf, count); + + if (unlikely(ret <= 0)) { + sensorhub_err("send library data err(%d)", ret); + /* i2c transfer fail */ + if (ret == ERROR) + return -EIO; + /* i2c transfer done but no ack from MCU */ + else if (ret == FAIL) + return -EAGAIN; + else + return ret; + } + + return count; +} + +static ssize_t ssp_sensorhub_read(struct file *file, char __user *buf, + size_t count, loff_t *pos) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + struct sensorhub_event *event; + int retries = MAX_DATA_COPY_TRY; + int length = 0; + int ret = 0; + + spin_lock_bh(&hub_data->sensorhub_lock); + if (unlikely(kfifo_is_empty(&hub_data->fifo))) { + sensorhub_info("no library data"); + goto err; + } + + /* first in first out */ + ret = kfifo_out_peek(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(!ret)) { + sensorhub_err("kfifo out peek err(%d)", ret); + ret = EIO; + goto err; + } + + length = event->library_length; + + while (retries--) { + ret = copy_to_user(buf, + event->library_data, event->library_length); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + sensorhub_err("read library data err(%d)", ret); + goto err; + } + + ssp_sensorhub_log(__func__, + event->library_data, event->library_length); + + /* remove first event from the list */ + ret = kfifo_out(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo out err(%d)", ret); + ret = EIO; + goto err; + } + + complete(&hub_data->read_done); + spin_unlock_bh(&hub_data->sensorhub_lock); + + return length; + +err: + spin_unlock_bh(&hub_data->sensorhub_lock); + return ret ? -ret : 0; +} + +static long ssp_sensorhub_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + void __user *argp = (void __user *)arg; + int retries = MAX_DATA_COPY_TRY; + int length = hub_data->big_events.library_length; + int ret = 0; + + switch (cmd) { + case IOCTL_READ_BIG_CONTEXT_DATA: + if (unlikely(!hub_data->big_events.library_data + || !hub_data->big_events.library_length)) { + sensorhub_info("no big library data"); + return 0; + } + + while (retries--) { + ret = copy_to_user(argp, + hub_data->big_events.library_data, + hub_data->big_events.library_length); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + sensorhub_err("read big library data err(%d)", ret); + return -ret; + } + + ssp_sensorhub_log(__func__, + hub_data->big_events.library_data, + hub_data->big_events.library_length); + + hub_data->is_big_event = false; + kfree(hub_data->big_events.library_data); + hub_data->big_events.library_length = 0; + complete(&hub_data->big_read_done); + break; + + default: + sensorhub_err("ioctl cmd err(%d)", cmd); + return -EINVAL; + } + + return length; +} + +static struct file_operations ssp_sensorhub_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .write = ssp_sensorhub_write, + .read = ssp_sensorhub_read, + .unlocked_ioctl = ssp_sensorhub_ioctl, +}; + +void ssp_sensorhub_report_notice(struct ssp_data *ssp_data, char notice) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + + input_report_rel(hub_data->sensorhub_input_dev, NOTICE, notice); + input_sync(hub_data->sensorhub_input_dev); + + if (notice == MSG2SSP_AP_STATUS_WAKEUP) + sensorhub_info("wake up"); + else if (notice == MSG2SSP_AP_STATUS_SLEEP) + sensorhub_info("sleep"); + else if (notice == MSG2SSP_AP_STATUS_RESET) + sensorhub_info("reset"); + else + sensorhub_err("invalid notice(0x%x)", notice); +} + +static void ssp_sensorhub_report_library(struct ssp_sensorhub_data *hub_data) +{ + input_report_rel(hub_data->sensorhub_input_dev, DATA, DATA); + input_sync(hub_data->sensorhub_input_dev); + wake_lock_timeout(&hub_data->sensorhub_wake_lock, WAKE_LOCK_TIMEOUT); +} + +static void ssp_sensorhub_report_big_library( + struct ssp_sensorhub_data *hub_data) +{ + input_report_rel(hub_data->sensorhub_input_dev, BIG_DATA, BIG_DATA); + input_sync(hub_data->sensorhub_input_dev); + wake_lock_timeout(&hub_data->sensorhub_wake_lock, WAKE_LOCK_TIMEOUT); +} + +static int ssp_sensorhub_list(struct ssp_sensorhub_data *hub_data, + char *dataframe, int length) +{ + struct sensorhub_event *event; + int ret = 0; + + if (unlikely(length <= 0 || length >= PAGE_SIZE)) { + sensorhub_err("library length err(%d)", length); + return -EINVAL; + } + + ssp_sensorhub_log(__func__, dataframe, length); + + /* overwrite new event if list is full */ + if (unlikely(kfifo_is_full(&hub_data->fifo))) { + ret = kfifo_out(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo out err(%d)", ret); + return -EIO; + } + sensorhub_info("overwrite event"); + } + + /* allocate memory for new event */ + kfree(hub_data->events[hub_data->event_number].library_data); + hub_data->events[hub_data->event_number].library_data + = kzalloc(length * sizeof(char), GFP_ATOMIC); + if (unlikely(!hub_data->events[hub_data->event_number].library_data)) { + sensorhub_err("allocate memory for library err"); + return -ENOMEM; + } + + /* copy new event into memory */ + memcpy(hub_data->events[hub_data->event_number].library_data, + dataframe, length); + hub_data->events[hub_data->event_number].library_length = length; + + /* add new event into the end of list */ + event = &hub_data->events[hub_data->event_number]; + ret = kfifo_in(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo in err(%d)", ret); + return -EIO; + } + + /* not to overflow max list capacity */ + if (hub_data->event_number++ >= LIST_SIZE - 1) + hub_data->event_number = 0; + + return kfifo_len(&hub_data->fifo) / sizeof(void *); +} + +int ssp_sensorhub_handle_data(struct ssp_data *ssp_data, char *dataframe, + int start, int end) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + int ret = 0; + + /* add new sensorhub event into list */ + spin_lock_bh(&hub_data->sensorhub_lock); + ret = ssp_sensorhub_list(hub_data, dataframe+start, end-start); + spin_unlock_bh(&hub_data->sensorhub_lock); + + if (ret < 0) + sensorhub_err("sensorhub list err(%d)", ret); + else + wake_up(&hub_data->sensorhub_wq); + + return ret; +} + +static int ssp_sensorhub_thread(void *arg) +{ + struct ssp_sensorhub_data *hub_data = (struct ssp_sensorhub_data *)arg; + int ret = 0; + + while (likely(!kthread_should_stop())) { + /* run thread if list is not empty */ + wait_event_interruptible(hub_data->sensorhub_wq, + kthread_should_stop() || + !kfifo_is_empty(&hub_data->fifo) || + hub_data->is_big_event); + + /* exit thread if kthread should stop */ + if (unlikely(kthread_should_stop())) { + sensorhub_info("kthread_stop()"); + break; + } + + if (likely(!kfifo_is_empty(&hub_data->fifo))) { + /* report sensorhub event to user */ + ssp_sensorhub_report_library(hub_data); + /* wait until transfer finished */ + ret = wait_for_completion_timeout( + &hub_data->read_done, COMPLETION_TIMEOUT); + if (unlikely(!ret)) + sensorhub_err("wait for read timed out"); + else if (unlikely(ret < 0)) + sensorhub_err("read completion err(%d)", ret); + } + + if (unlikely(hub_data->is_big_event)) { + /* report big sensorhub event to user */ + ssp_sensorhub_report_big_library(hub_data); + /* wait until transfer finished */ + ret = wait_for_completion_timeout( + &hub_data->big_read_done, COMPLETION_TIMEOUT); + if (unlikely(!ret)) + sensorhub_err("wait for big read timed out"); + else if (unlikely(ret < 0)) + sensorhub_err("big read completion err(%d)", + ret); + } + } + + return 0; +} + +void ssp_read_big_library_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0, pos = 0; + + hub_data->big_events.library_length = big->length; + hub_data->big_events.library_data = kzalloc(big->length, GFP_KERNEL); + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = hub_data->big_events.library_data + pos; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("read big data err(%d)", ret); + break; + } + + pos += buf_len; + residue -= buf_len; + + sensorhub_info("read big data (%5d / %5d)", pos, big->length); + } + + hub_data->is_big_event = true; + wake_up(&hub_data->sensorhub_wq); + kfree(big); +} + +void ssp_send_big_library_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0, pos = 0; + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_WRITE | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = hub_data->big_send_events.library_data + pos; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("send big data err(%d)", ret); + break; + } + + pos += buf_len; + residue -= buf_len; + + sensorhub_info("send big data (%5d / %5d)", pos, big->length); + } + + complete(&hub_data->big_write_done); + kfree(big); +} + +void ssp_pcm_dump_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0; + + mm_segment_t old_fs; + struct file *voice_filp; + char pcm_path[BIN_PATH_SIZE+1]; + char *buff; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + snprintf(pcm_path, BIN_PATH_SIZE, + "/data/voice%d.pcm", hub_data->pcm_cnt); + voice_filp = filp_open(pcm_path, O_RDWR | O_CREAT | O_APPEND, 0666); + if (IS_ERR(voice_filp)) { + sensorhub_err("open pcm dump file err"); + goto exit; + } + + buf_len = big->length > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : big->length; + buff = kzalloc(buf_len, GFP_KERNEL); + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buff; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("receive pcm dump err(%d)", ret); + break; + } + + ret = voice_filp->f_op->write(voice_filp, (char __user *)buff, + buf_len, &voice_filp->f_pos); + if (ret < 0) { + sensorhub_err("write pcm dump to file err(%d)", ret); + break; + } + + residue -= buf_len; + sensorhub_info("write pcm dump..."); + } + + filp_close(voice_filp, current->files); + kfree(buff); + +exit: + set_fs(old_fs); + kfree(big); +} + +int ssp_sensorhub_pcm_dump(struct ssp_sensorhub_data *hub_data) +{ + hub_data->pcm_cnt++; + return set_big_data_start(hub_data->ssp_data, BIG_TYPE_VOICE_PCM, 0); +} + +int ssp_sensorhub_initialize(struct ssp_data *ssp_data) +{ + struct ssp_sensorhub_data *hub_data; + int ret; + + /* allocate memory for sensorhub data */ + hub_data = kzalloc(sizeof(*hub_data), GFP_KERNEL); + if (!hub_data) { + sensorhub_err("allocate memory for sensorhub data err"); + ret = -ENOMEM; + goto exit; + } + hub_data->ssp_data = ssp_data; + ssp_data->hub_data = hub_data; + + /* init wakelock, list, waitqueue, completion and spinlock */ + wake_lock_init(&hub_data->sensorhub_wake_lock, WAKE_LOCK_SUSPEND, + "ssp_sensorhub_wake_lock"); + init_waitqueue_head(&hub_data->sensorhub_wq); + init_completion(&hub_data->read_done); + init_completion(&hub_data->big_read_done); + init_completion(&hub_data->big_write_done); + spin_lock_init(&hub_data->sensorhub_lock); + + /* allocate sensorhub input device */ + hub_data->sensorhub_input_dev = input_allocate_device(); + if (!hub_data->sensorhub_input_dev) { + sensorhub_err("allocate sensorhub input device err"); + ret = -ENOMEM; + goto err_input_allocate_device_sensorhub; + } + + /* set sensorhub input device */ + input_set_drvdata(hub_data->sensorhub_input_dev, hub_data); + hub_data->sensorhub_input_dev->name = "ssp_context"; + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, DATA); + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, BIG_DATA); + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, NOTICE); + + /* register sensorhub input device */ + ret = input_register_device(hub_data->sensorhub_input_dev); + if (ret < 0) { + sensorhub_err("register sensorhub input device err(%d)", ret); + input_free_device(hub_data->sensorhub_input_dev); + goto err_input_register_device_sensorhub; + } + + /* register sensorhub misc device */ + hub_data->sensorhub_device.minor = MISC_DYNAMIC_MINOR; + hub_data->sensorhub_device.name = "ssp_sensorhub"; + hub_data->sensorhub_device.fops = &ssp_sensorhub_fops; + + ret = misc_register(&hub_data->sensorhub_device); + if (ret < 0) { + sensorhub_err("register sensorhub misc device err(%d)", ret); + goto err_misc_register; + } + + /* allocate fifo */ + ret = kfifo_alloc(&hub_data->fifo, + sizeof(void *) * LIST_SIZE, GFP_KERNEL); + if (ret) { + sensorhub_err("kfifo allocate err(%d)", ret); + goto err_kfifo_alloc; + } + + /* create and run sensorhub thread */ + hub_data->sensorhub_task = kthread_run(ssp_sensorhub_thread, + (void *)hub_data, "ssp_sensorhub_thread"); + if (IS_ERR(hub_data->sensorhub_task)) { + ret = PTR_ERR(hub_data->sensorhub_task); + goto err_kthread_run; + } + + return 0; + +err_kthread_run: + kfifo_free(&hub_data->fifo); +err_kfifo_alloc: + misc_deregister(&hub_data->sensorhub_device); +err_misc_register: + input_unregister_device(hub_data->sensorhub_input_dev); +err_input_register_device_sensorhub: +err_input_allocate_device_sensorhub: + complete_all(&hub_data->big_write_done); + complete_all(&hub_data->big_read_done); + complete_all(&hub_data->read_done); + wake_lock_destroy(&hub_data->sensorhub_wake_lock); + kfree(hub_data); +exit: + return ret; +} + +void ssp_sensorhub_remove(struct ssp_data *ssp_data) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + + ssp_sensorhub_fops.write = NULL; + ssp_sensorhub_fops.read = NULL; + ssp_sensorhub_fops.unlocked_ioctl = NULL; + + kthread_stop(hub_data->sensorhub_task); + kfifo_free(&hub_data->fifo); + misc_deregister(&hub_data->sensorhub_device); + input_unregister_device(hub_data->sensorhub_input_dev); + complete_all(&hub_data->big_write_done); + complete_all(&hub_data->big_read_done); + complete_all(&hub_data->read_done); + wake_lock_destroy(&hub_data->sensorhub_wake_lock); + kfree(hub_data); +} + +MODULE_DESCRIPTION("Seamless Sensor Platform(SSP) sensorhub driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_hestia/ssp_sensorhub.h b/drivers/sensorhub/stm_hestia/ssp_sensorhub.h new file mode 100755 index 000000000000..742806d3679c --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_sensorhub.h @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SSP_SENSORHUB__ +#define __SSP_SENSORHUB__ + +#include +#include +#include +#include +#include +#include "ssp.h" + +/* 'LIST_SIZE' should be be rounded-up to a power of 2 */ +#define LIST_SIZE 4 +#define MAX_DATA_COPY_TRY 2 +#define WAKE_LOCK_TIMEOUT (3*HZ) +#define COMPLETION_TIMEOUT (2*HZ) +#define DATA REL_RX +#define BIG_DATA REL_RY +#define NOTICE REL_RZ +#define BIG_DATA_SIZE 256 +#define PRINT_TRUNCATE 6 +#define BIN_PATH_SIZE 100 + +#define SENSORHUB_IOCTL_MAGIC 'S' +#define IOCTL_READ_BIG_CONTEXT_DATA _IOR(SENSORHUB_IOCTL_MAGIC, 3, char *) + +#define sensorhub_info(str, args...) \ + pr_info("[SSP]: %s - " str, __func__, ##args) +#define sensorhub_debug(str, args...) \ + pr_debug("[SSP]: %s - " str, __func__, ##args) +#define sensorhub_err(str, args...) \ + pr_err("[SSP]: %s - " str, __func__, ##args) + + +struct sensorhub_event { + char *library_data; + int library_length; +}; + +struct ssp_sensorhub_data { + struct ssp_data *ssp_data; + struct input_dev *sensorhub_input_dev; + struct task_struct *sensorhub_task; + struct miscdevice sensorhub_device; + struct wake_lock sensorhub_wake_lock; + struct completion read_done; + struct completion big_read_done; + struct completion big_write_done; + struct sensorhub_event events[LIST_SIZE]; + struct sensorhub_event big_events; + struct sensorhub_event big_send_events; + struct kfifo fifo; + bool is_big_event; + int event_number; + int pcm_cnt; + wait_queue_head_t sensorhub_wq; + spinlock_t sensorhub_lock; +}; + +int ssp_sensorhub_pcm_dump(struct ssp_sensorhub_data *hub_data); +void ssp_sensorhub_report_notice(struct ssp_data *ssp_data, char notice); +int ssp_sensorhub_handle_data(struct ssp_data *ssp_data, char *dataframe, + int start, int end); +int ssp_sensorhub_initialize(struct ssp_data *ssp_data); +void ssp_sensorhub_remove(struct ssp_data *ssp_data); + +#endif diff --git a/drivers/sensorhub/stm_hestia/ssp_spi.c b/drivers/sensorhub/stm_hestia/ssp_spi.c new file mode 100755 index 000000000000..469a95bfa731 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_spi.c @@ -0,0 +1,255 @@ +/* + * driver for Android SensorHub SPI + * + * Copyright (c) 2013, Samsung Electronics. 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 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#include +#include +#include +#include + +#if defined(DEBUG_SSP_SPI) +#define ssp_log(fmt, arg...) \ + do { \ + printk(KERN_ERR "[%s:%d] " fmt , \ + __func__, __LINE__, ##arg); \ + } \ + while (0) +#else +#define ssp_log(fmt, arg...) +#endif + + +/* If AP can't change the endian to BIG */ +/* for s5c73m ISP, this option must is required.*/ +/* This option depends on SPI_DMA_MODE */ +/* in camera driver file*/ +/*#define CHANGE_ENDIAN */ + + +int ssp_spi_write_sync(struct spi_device *spi, const u8 *addr, const int len) +{ + int ret; +#if defined(CHANGE_ENDIAN) + u8 buf[8] = {0}; +#endif + + struct spi_message msg; + + struct spi_transfer xfer = { + .len = len, +#if !defined(CHANGE_ENDIAN) + .tx_buf = addr, + /*QCTK ALRAN QUP_CONFIG 0-4 bits BIG ENDIAN*/ + .bits_per_word = 8, +#else + .tx_buf = buf, +#endif + }; + +#if defined(CHANGE_ENDIAN) + buf[0] = addr[3]; + buf[1] = addr[2]; + buf[2] = addr[1]; + buf[3] = addr[0]; + buf[4] = addr[7]; + buf[5] = addr[6]; + buf[6] = addr[5]; + buf[7] = addr[4]; +#endif + + spi_message_init(&msg); + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + + if (ret < 0) + ssp_log("error %d\n", ret); + + return ret; +} + + +int ssp_spi_read_sync(struct spi_device *spi, u8 *in_buf, size_t len) +{ + int ret; + u8 read_out_buf[2]; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = read_out_buf, + .rx_buf = in_buf, + .len = len, + .cs_change = 0, + }; + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + + +int ssp_spi_sync(struct spi_device *spi, u8 *out_buf, + size_t out_len, u8 *in_buf) +{ + int ret; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = out_buf, + .rx_buf = in_buf, + .len = out_len, + .cs_change = 0, + }; + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + ssp_log("%s - received %d\n", __func__, xfer.len); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + +unsigned int g_flag_spirecv; +void ssp_spi_async_complete(void *context) +{ + g_flag_spirecv = 1; +} + +int ssp_spi_async(struct spi_device *spi, u8 *out_buf, + size_t out_len, u8 *in_buf) +{ + int ret; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = out_buf, + .rx_buf = in_buf, + .len = out_len, + .cs_change = 0, + }; + + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + msg.complete = ssp_spi_async_complete; + + ret = spi_async(spi, &msg); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + + + + +int ssp_spi_read(struct spi_device *spi, u8 *buf, size_t len, const int rxSize) +{ + int k; + int ret = 0; + u8 temp_buf[4] = {0}; + u32 count = len/rxSize; + u32 extra = len%rxSize; + + for (k = 0; k < count; k++) { + ret = ssp_spi_read_sync(spi, &buf[rxSize*k], rxSize); + if (ret < 0) { + ssp_log("%s - error %d\n", + __func__, ret); + return -EINVAL; + } + } + + if (extra != 0) { + ret = ssp_spi_read_sync(spi, &buf[rxSize*k], extra); + if (ret < 0) { + ssp_log("%s - error %d\n", + __func__, ret); + return -EINVAL; + } + } + + for (k = 0; k < len-3; k += 4) { + memcpy(temp_buf, (char *)&buf[k], sizeof(temp_buf)); + buf[k] = temp_buf[3]; + buf[k+1] = temp_buf[2]; + buf[k+2] = temp_buf[1]; + buf[k+3] = temp_buf[0]; + } + + return 0; +} + +int ssp_spi_write(struct spi_device *spi, const u8 *addr, + const int len, const int txSize) +{ + int i, j = 0; + int ret = 0; + u8 paddingData[8]; + u32 count = len/txSize; + u32 extra = len%txSize; + ssp_log("Entered\n"); + ssp_log("count = %d extra = %d\n", count, extra); + + memset(paddingData, 0, sizeof(paddingData)); + + for (i = 0 ; i < count ; i++) { + ret = ssp_spi_write_sync(spi, &addr[j], txSize); + j += txSize; + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + ssp_log("Delay!!!\n"); + msleep(50); + } + + if (extra) { + ret = ssp_spi_write_sync(spi, &addr[j], extra); + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + } + + for (i = 0; i < 4; i++) { + memset(paddingData, 0, sizeof(paddingData)); + ret = ssp_spi_write_sync(spi, paddingData, 8); + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + } + ssp_log("Finish!!\n"); +exit_err: + return ret; +} + diff --git a/drivers/sensorhub/stm_hestia/ssp_sysfs.c b/drivers/sensorhub/stm_hestia/ssp_sysfs.c new file mode 100755 index 000000000000..4f423efe9754 --- /dev/null +++ b/drivers/sensorhub/stm_hestia/ssp_sysfs.c @@ -0,0 +1,1084 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include + +#include "../../staging/iio/events.h" +#include "../../staging/iio/iio.h" +#define BATCH_IOCTL_MAGIC 0xFC + +struct batch_config { + int64_t timeout; + int64_t delay; + int flag; +}; +/*************************************************************************/ +/* SSP data delay function */ +/*************************************************************************/ + +int get_msdelay(int64_t dDelayRate) { + return div_s64(dDelayRate, 1000000); +} + + +static void enable_sensor(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + unsigned int uNewEnable = 0; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + int ret = 0; + + data->adDelayBuf[iSensorType] = dNewDelay; + maxBatchReportLatency = data->batchLatencyBuf[iSensorType]; + batchOptions = data->batchOptBuf[iSensorType]; + + switch (data->aiCheckStatus[iSensorType]) { + case ADD_SENSOR_STATE: + pr_debug("[SSP]: %s - add %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + + if (iSensorType == TEMPERATURE_HUMIDITY_SENSOR && + dMsDelay == 10000) + pr_info("[SSP] Skip Add Temphumidity Sensor\n"); + else + ret = send_instruction(data, ADD_SENSOR, + iSensorType, uBuf, 9); + pr_info("[SSP], delay %d, timeout %d, flag=%d, ret%d", + dMsDelay, maxBatchReportLatency, uBuf[8], ret); + if (ret <= 0) { + uNewEnable = + (unsigned int)atomic_read(&data->aSensorEnable) + & (~(unsigned int)(1 << iSensorType)); + atomic_set(&data->aSensorEnable, uNewEnable); + + data->aiCheckStatus[iSensorType] = NO_SENSOR_STATE; + break; + } + + data->aiCheckStatus[iSensorType] = RUNNING_SENSOR_STATE; + + if (iSensorType == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); + + input_report_abs(data->prox_input_dev, ABS_DISTANCE, 1); + input_sync(data->prox_input_dev); + } + break; + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + pr_debug("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + data->aiCheckStatus[iSensorType] = ADD_SENSOR_STATE; + } +} + +static void change_sensor_delay(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + + data->adDelayBuf[iSensorType] = dNewDelay; + data->batchLatencyBuf[iSensorType] = maxBatchReportLatency; + data->batchOptBuf[iSensorType] = batchOptions; + + switch (data->aiCheckStatus[iSensorType]) { + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + break; + } +} + +/*************************************************************************/ +/* SSP data enable function */ +/*************************************************************************/ + +static int ssp_remove_sensor(struct ssp_data *data, + unsigned int uChangedSensor, unsigned int uNewEnable) +{ + u8 uBuf[4]; + int64_t dSensorDelay = data->adDelayBuf[uChangedSensor]; + pr_debug("[SSP]: %s - remove sensor = %d, current state = %d\n", + __func__, (1 << uChangedSensor), uNewEnable); + + data->adDelayBuf[uChangedSensor] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[uChangedSensor] = 0; + data->batchOptBuf[uChangedSensor] = 0; + + if (uChangedSensor == ORIENTATION_SENSOR) { + if (!(atomic_read(&data->aSensorEnable) + & (1 << ACCELEROMETER_SENSOR))) { + uChangedSensor = ACCELEROMETER_SENSOR; + } else { + change_sensor_delay(data, ACCELEROMETER_SENSOR, + data->adDelayBuf[ACCELEROMETER_SENSOR]); + return 0; + } + } else if (uChangedSensor == ACCELEROMETER_SENSOR) { + if (atomic_read(&data->aSensorEnable) + & (1 << ORIENTATION_SENSOR)) { + change_sensor_delay(data, ORIENTATION_SENSOR, + data->adDelayBuf[ORIENTATION_SENSOR]); + return 0; + } + } + + if (!data->bSspShutdown) + if (atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) { + s32 dMsDelay = get_msdelay(dSensorDelay); + memcpy(&uBuf[0], &dMsDelay, 4); + + send_instruction(data, REMOVE_SENSOR, uChangedSensor, uBuf, 4); + } + data->aiCheckStatus[uChangedSensor] = NO_SENSOR_STATE; + + return 0; +} + +/*************************************************************************/ +/* ssp Sysfs */ +/*************************************************************************/ + +static ssize_t show_enable_irq(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - %d\n", __func__, !data->bSspShutdown); + + return sprintf(buf, "%d\n", !data->bSspShutdown); +} + +static ssize_t set_enable_irq(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u8 dTemp; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtou8(buf, 10, &dTemp) < 0) + return -1; + + pr_info("[SSP] %s - %d start\n", __func__, dTemp); + if (dTemp) { + reset_mcu(data); + enable_debug_timer(data); + } else if (!dTemp) { + disable_debug_timer(data); + ssp_enable(data, 0); + } else + pr_err("[SSP] %s - invalid value\n", __func__); + pr_info("[SSP] %s - %d end\n", __func__, dTemp); + return size; +} + +static ssize_t show_sensors_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_debug("[SSP]: %s - cur_enable = %d\n", __func__, + atomic_read(&data->aSensorEnable)); + + return sprintf(buf, "%9u\n", atomic_read(&data->aSensorEnable)); +} + +static ssize_t set_sensors_enable(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + int iRet; + unsigned int uNewEnable = 0, uChangedSensor = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + uNewEnable = (unsigned int)dTemp; + ssp_dbg("[SSP]: %s - new_enable = %u, old_enable = %u\n", __func__, + uNewEnable, atomic_read(&data->aSensorEnable)); + + if ((uNewEnable != atomic_read(&data->aSensorEnable)) && + !(data->uSensorState & (uNewEnable - atomic_read(&data->aSensorEnable)))) { + pr_info("[SSP] %s - %u is not connected(sensortate: 0x%x)\n", + __func__, uNewEnable - atomic_read(&data->aSensorEnable), data->uSensorState); + return -EINVAL; + } + + if (uNewEnable == atomic_read(&data->aSensorEnable)) + return size; + + for (uChangedSensor = 0; uChangedSensor < SENSOR_MAX; uChangedSensor++) { + if ((atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) + != (uNewEnable & (1 << uChangedSensor))) { + + if (!(uNewEnable & (1 << uChangedSensor))) { + ssp_remove_sensor(data, uChangedSensor, + uNewEnable); /* disable */ + } else { /* Change to ADD_SENSOR_STATE from KitKat */ + if (data->aiCheckStatus[uChangedSensor] == INITIALIZATION_STATE) { + if (uChangedSensor == ACCELEROMETER_SENSOR) { + accel_open_calibration(data); + iRet = set_accel_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_accel_cal failed %d\n", __func__, iRet); + } + else if (uChangedSensor == GYROSCOPE_SENSOR) { + gyro_open_calibration(data); + iRet = set_gyro_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_gyro_cal failed %d\n", __func__, iRet); + } +#if defined(CONFIG_SENSORS_SSP_BMP182) + else if (uChangedSensor == PRESSURE_SENSOR) + pressure_open_calibration(data); +#endif + else if (uChangedSensor == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); + } + } + data->aiCheckStatus[uChangedSensor] = ADD_SENSOR_STATE; + enable_sensor(data, uChangedSensor, data->adDelayBuf[uChangedSensor]); + } + break; + } + } + atomic_set(&data->aSensorEnable, uNewEnable); + + return size; +} + +static ssize_t set_flush(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + u8 sensor_type = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + sensor_type = (u8)dTemp; + if (!(atomic_read(&data->aSensorEnable) & (1 << sensor_type))) + return -EINVAL; + + if (flush(data, sensor_type) < 0) { + pr_err("[SSP] ssp returns error for flush(%x)", sensor_type); + return -EINVAL; + } + return size; +} + +static ssize_t show_acc_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ACCELEROMETER_SENSOR]); +} + +static ssize_t set_acc_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + if ((atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) && + (data->adDelayBuf[ORIENTATION_SENSOR] < dNewDelay)) + data->adDelayBuf[ACCELEROMETER_SENSOR] = dNewDelay; + else + change_sensor_delay(data, ACCELEROMETER_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYROSCOPE_SENSOR]); +} + +static ssize_t set_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYROSCOPE_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_SENSOR]); +} + +static ssize_t set_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_uncal_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_UNCALIB_SENSOR]); +} + +static ssize_t set_uncal_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ROTATION_VECTOR]); +} + +static ssize_t set_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_game_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GAME_ROTATION_VECTOR]); +} + +static ssize_t set_game_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GAME_ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_step_det_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_DETECTOR]); +} + +static ssize_t set_step_det_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_DETECTOR, dNewDelay); + return size; +} + +static ssize_t show_sig_motion_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[SIG_MOTION_SENSOR]); +} + +static ssize_t set_sig_motion_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, SIG_MOTION_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_step_cnt_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_COUNTER]); +} + +static ssize_t set_step_cnt_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_COUNTER, dNewDelay); + return size; +} + +static ssize_t show_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYRO_UNCALIB_SENSOR]); +} + +static ssize_t set_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYRO_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +#ifdef CONFIG_SENSORS_SSP_BMP182 +static ssize_t show_pressure_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PRESSURE_SENSOR]); +} + +static ssize_t set_pressure_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PRESSURE_SENSOR, dNewDelay); + return size; +} +#endif +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +static ssize_t show_gesture_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GESTURE_SENSOR]); +} + +static ssize_t set_gesture_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GESTURE_SENSOR, dNewDelay); + + return size; +} +#endif +static ssize_t show_light_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[LIGHT_SENSOR]); +} + +static ssize_t set_light_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, LIGHT_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_prox_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PROXIMITY_SENSOR]); +} + +static ssize_t set_prox_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PROXIMITY_SENSOR, dNewDelay); + return size; +} + +#ifdef CONFIG_SENSORS_SSP_UVIS25 +static ssize_t show_uv_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[UV_SENSOR]); +} + +static ssize_t set_uv_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + pr_info("[SSP] %s - %lld\n", __func__, dNewDelay); + change_sensor_delay(data, UV_SENSOR, dNewDelay); + + return size; +} +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 +static ssize_t show_temp_humi_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[TEMPERATURE_HUMIDITY_SENSOR]); +} + +static ssize_t set_temp_humi_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, TEMPERATURE_HUMIDITY_SENSOR, dNewDelay); + return size; +} +#endif + +ssize_t ssp_sensorhub_voicel_pcmdump_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int status = ssp_sensorhub_pcm_dump(data->hub_data); + + return sprintf(buf, "%s\n", (status ? "OK" : "NG")); +} + +static DEVICE_ATTR(voice_pcmdump, S_IRUGO, ssp_sensorhub_voicel_pcmdump_show, NULL); + +static struct device_attribute *voice_attrs[] = { + &dev_attr_voice_pcmdump, + NULL, +}; + +static void initialize_voice_sysfs(struct ssp_data *data) +{ + sensors_register(data->voice_device, data, voice_attrs, "ssp_voice"); +} + +static void remove_voice_sysfs(struct ssp_data *data) +{ + sensors_unregister(data->voice_device, voice_attrs); +} + + +static DEVICE_ATTR(mcu_rev, S_IRUGO, mcu_revision_show, NULL); +static DEVICE_ATTR(mcu_name, S_IRUGO, mcu_model_name_show, NULL); +static DEVICE_ATTR(mcu_update, S_IRUGO, mcu_update_kernel_bin_show, NULL); +static DEVICE_ATTR(mcu_update2, S_IRUGO, + mcu_update_kernel_crashed_bin_show, NULL); +static DEVICE_ATTR(mcu_update_ums, S_IRUGO, mcu_update_ums_bin_show, NULL); +static DEVICE_ATTR(mcu_reset, S_IRUGO, mcu_reset_show, NULL); +static DEVICE_ATTR(mcu_dump, S_IRUGO, mcu_dump_show, NULL); + +static DEVICE_ATTR(mcu_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_factorytest_show, mcu_factorytest_store); +static DEVICE_ATTR(mcu_sleep_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_sleep_factorytest_show, mcu_sleep_factorytest_store); +static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + show_sensors_enable, set_sensors_enable); +static DEVICE_ATTR(enable_irq, S_IRUGO | S_IWUSR | S_IWGRP, + show_enable_irq, set_enable_irq); +static DEVICE_ATTR(rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_rot_delay, set_rot_delay); +static DEVICE_ATTR(game_rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_game_rot_delay, set_game_rot_delay); +static DEVICE_ATTR(step_det_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_det_delay, set_step_det_delay); +#ifdef CONFIG_SENSORS_SSP_BMP182 +static DEVICE_ATTR(pressure_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_pressure_delay, set_pressure_delay); +#endif +static DEVICE_ATTR(accel_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_acc_delay, set_acc_delay); +static DEVICE_ATTR(gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gyro_delay, set_gyro_delay); +static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, + NULL, set_flush); +static struct device_attribute dev_attr_mag_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_mag_delay, set_mag_delay); +static struct device_attribute dev_attr_uncal_mag_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncal_mag_delay, set_uncal_mag_delay); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) +static struct device_attribute dev_attr_gesture_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gesture_delay, set_gesture_delay); +#endif +static struct device_attribute dev_attr_light_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_light_delay, set_light_delay); +static struct device_attribute dev_attr_prox_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_prox_delay, set_prox_delay); + +#ifdef CONFIG_SENSORS_SSP_UVIS25 +static struct device_attribute dev_attr_uv_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uv_delay, set_uv_delay); +#endif + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +static struct device_attribute dev_attr_temp_humi_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_temp_humi_delay, set_temp_humi_delay); +#endif +static struct device_attribute dev_attr_sig_motion_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_sig_motion_delay, set_sig_motion_delay); +static struct device_attribute dev_attr_uncalib_gyro_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncalib_gyro_delay, set_uncalib_gyro_delay); +static struct device_attribute dev_attr_step_cnt_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_cnt_delay, set_step_cnt_delay); + +static struct device_attribute *mcu_attrs[] = { + &dev_attr_enable, + &dev_attr_mcu_rev, + &dev_attr_mcu_name, + &dev_attr_mcu_test, + &dev_attr_mcu_reset, + &dev_attr_mcu_dump, + &dev_attr_mcu_update, + &dev_attr_mcu_update2, + &dev_attr_mcu_update_ums, + &dev_attr_mcu_sleep_test, + &dev_attr_enable_irq, + &dev_attr_accel_poll_delay, + &dev_attr_gyro_poll_delay, + &dev_attr_rot_poll_delay, + &dev_attr_game_rot_poll_delay, + &dev_attr_step_det_poll_delay, +#ifdef CONFIG_SENSORS_SSP_BMP182 + &dev_attr_pressure_poll_delay, +#endif + &dev_attr_ssp_flush, + NULL, +}; + +static long ssp_batch_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_data *data + = container_of(file->private_data, + struct ssp_data, batch_io_device); + + struct batch_config batch; + + void __user *argp = (void __user *)arg; + int retries = 2; + int ret = 0; + int sensor_type, ms_delay; + int timeout_ms = 0; + u8 uBuf[9]; + + sensor_type = (cmd & 0xFF); + + if ((cmd >> 8 & 0xFF) != BATCH_IOCTL_MAGIC) { + pr_err("[SSP] Invalid BATCH CMD %x", cmd); + return -EINVAL; + } + + while (retries--) { + ret = copy_from_user(&batch, argp, sizeof(batch)); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] batch ioctl err(%d)", ret); + return -EINVAL; + } + ms_delay = get_msdelay(batch.delay); + timeout_ms = div_s64(batch.timeout, 1000000); + memcpy(&uBuf[0], &ms_delay, 4); + memcpy(&uBuf[4], &timeout_ms, 4); + uBuf[8] = batch.flag; + + if (batch.timeout){ /* add or dry */ + + if(!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* real batch, NOT DRY, change delay */ + ret = 1; + /* if sensor is not running state, enable will be called. + MCU return fail when receive chage delay inst during NO_SENSOR STATE */ + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } else { /* real batch, DRY RUN */ + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } + } else { /* remove batch or normal change delay, remove or add will be called. */ + + if (!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* no batch, NOT DRY, change delay */ + data->batchOptBuf[sensor_type] = 0; + data->batchLatencyBuf[sensor_type] = 0; + data->adDelayBuf[sensor_type] = batch.delay; + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + send_instruction(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + } + } + + pr_info("[SSP] batch %d: delay %lld, timeout %lld, flag %d, ret %d", + sensor_type, batch.delay, batch.timeout, batch.flag, ret); + if (!batch.timeout) + return 0; + if (ret <= 0) + return -EINVAL; + else + return 0; +} + + +static struct file_operations ssp_batch_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = ssp_batch_ioctl, +}; + + +static void initialize_mcu_factorytest(struct ssp_data *data) +{ + sensors_register(data->mcu_device, data, mcu_attrs, "ssp_sensor"); +} + +static void remove_mcu_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->mcu_device, mcu_attrs); +} + +int initialize_sysfs(struct ssp_data *data) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + if (device_create_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay)) + goto err_gesture_input_dev; +#endif + + if (device_create_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay)) + goto err_light_input_dev; + + if (device_create_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay)) + goto err_prox_input_dev; + +#ifdef CONFIG_SENSORS_SSP_UVIS25 + if (device_create_file(&data->uv_input_dev->dev, + &dev_attr_uv_poll_delay)) + goto err_uv_input_dev; +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + if (device_create_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay)) + goto err_temp_humi_input_dev; +#endif + + if (device_create_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay)) + goto err_mag_input_dev; + + if (device_create_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay)) + goto err_uncal_mag_input_dev; + + if (device_create_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay)) + goto err_sig_motion_input_dev; + + if (device_create_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay)) + goto err_uncalib_gyro_input_dev; + + if (device_create_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay)) + goto err_step_cnt_input_dev; + + data->batch_io_device.minor = MISC_DYNAMIC_MINOR; + data->batch_io_device.name = "batch_io"; + data->batch_io_device.fops = &ssp_batch_fops; + if (misc_register(&data->batch_io_device)) + goto err_batch_io_dev; + + initialize_accel_factorytest(data); + initialize_gyro_factorytest(data); + initialize_prox_factorytest(data); + initialize_light_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_BMP182 + initialize_pressure_factorytest(data); +#endif + initialize_magnetic_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_UVIS25 + initialize_uv_factorytest(data); +#endif + initialize_mcu_factorytest(data); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + initialize_gesture_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + initialize_temphumidity_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_MOBEAM + initialize_mobeam(data); +#endif + /*snamy.jeong_0630 voice dump & data*/ + initialize_voice_sysfs(data); + + return SUCCESS; +err_batch_io_dev: + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); +err_step_cnt_input_dev: + device_remove_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay); +err_uncalib_gyro_input_dev: + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); +err_sig_motion_input_dev: + device_remove_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay); +err_uncal_mag_input_dev: + device_remove_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay); +err_mag_input_dev: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); +err_temp_humi_input_dev: +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + device_remove_file(&data->uv_input_dev->dev, + &dev_attr_uv_poll_delay); +err_uv_input_dev: +#endif + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); +err_prox_input_dev: + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); +err_light_input_dev: +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); +err_gesture_input_dev: +#endif + pr_err("[SSP] error init sysfs"); + return ERROR; +} + +void remove_sysfs(struct ssp_data *data) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); +#endif + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); +#endif +#ifdef CONFIG_SENSORS_SSP_UVIS25 + device_remove_file(&data->uv_input_dev->dev, + &dev_attr_uv_poll_delay); +#endif + device_remove_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay); + device_remove_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay); + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); + device_remove_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay); + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); + ssp_batch_fops.unlocked_ioctl = NULL; + misc_deregister(&data->batch_io_device); + remove_accel_factorytest(data); + remove_gyro_factorytest(data); + remove_prox_factorytest(data); + remove_light_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_BMP182 + remove_pressure_factorytest(data); +#endif + remove_magnetic_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_UVIS25 + remove_uv_factorytest(data); +#endif + remove_mcu_factorytest(data); +#if defined(CONFIG_SENSORS_SSP_TMG399X) || defined(CONFIG_SENSORS_SSP_MAX88921) || \ + defined(CONFIG_SENSORS_SSP_MAX88920) + remove_gesture_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_SHTC1 + remove_temphumidity_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_MOBEAM + remove_mobeam(data); +#endif + /*snamy.jeong_0630 voice dump & data*/ + remove_voice_sysfs(data); + + destroy_sensor_class(); +} diff --git a/drivers/sensorhub/stm_patek/Kconfig b/drivers/sensorhub/stm_patek/Kconfig new file mode 100644 index 000000000000..fc1704cf6451 --- /dev/null +++ b/drivers/sensorhub/stm_patek/Kconfig @@ -0,0 +1,164 @@ +# +# sensor drivers configuration +# +config SENSORS_SYSFS + tristate "Sensors sysfs" + help + Support sysfs for sensors. + If you say yes here you get sysfs support for + sensor factory test. + To compile this driver as a module, choose M here: the + module will be called sensors_core. + +config SENSORS_SSP + tristate "Sensors ssp" + default n + depends on SPI + help + ssp driver for sensor hub. + If you say yes here you get ssp support for + sensor hub. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AK8963C + tristate "Sensors ssp ak8963c" + default n + depends on SPI + help + ak8963c file for factory test in ssp driver. + If you say yes here you get ak8963c support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AK09911 + tristate "Sensors ssp ak09911" + default n + depends on SPI + help + ak09911 file for factory test and doeplus in ssp driver. + If you say yes here you get ak09911 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_YAS532 + tristate "Sensors ssp yas532" + default n + depends on SPI + help + yas532 file for factory test in ssp driver. + If you say yes here you get yas532 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_ACCELEROMETER_POSITION + int "Accelerometer Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_GYROSCOPE_POSITION + int "Gyroscope Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_MAGNETOMETER_POSITION + int "Geomagnetic Sensor Mounting Position on Board" + depends on SENSORS_SSP + default "0" + help + X Y Z axis position. + 0: X, Y, Z + 1: Y,-X, Z + 2: -X,-Y, Z + 3: -Y, X, Z + 4: -X, Y,-Z + 5: Y, X,-Z + 6: X,-Y,-Z + 7: -Y,-X,-Z + +config SENSORS_SSP_SENSORHUB + tristate "Sensors ssp sensorhub" + default n + depends on SPI + help + ssp sensor hub driver for sensor hub. + If you say yes here you get ssp support for + sensor hub. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_FACTORY + tristate "ssp factory" + depends on SENSORS_SSP + default n + help + ssp sensor hub driver for factory test. + If you say yes here you can enable fatory drvier for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_C12SD + tristate "Sensors ssp C12SD" + default n + depends on SENSORS_SSP + help + This is for GUVA_C12SD UV Sensor + device driver. + GUVA_C12SD is made by Genicom. + If you say yes here you get c12sd support. + If you say no here c12sd will not be supported. + +config SENSORS_AD7146 + tristate "ANALOG DEVICES AD7146 Multi-Proximity Sensor" + default n + depends on I2C && SYSFS + help + If you say yes here you get support for the AD7146 + multi proximity sensor. + This driver can also be built as a module. If so, the module + will be called ad7146. + +config SENSORS_MAX86900 + tristate "MAXIM MAX86900 HRM Sensor" + default n + depends on I2C && SYSFS + help + If you say yes here you get support for the MAX86900 + HRM sensor. + This driver can also be built as a module. If so, the module + will be called max86900. + +config SENSORS_SSP_BOUNCE_FIRMWARE + tristate "Sensors ssp BOUNCE_FIRMWARE" + default n + depends on SENSORS_SSP_STM + help + This is for Bounce firmware support. + If you say yes here you get bounce firmware support. + If you say no here bounce firmware will not be supported. + +source "drivers/sensorhub/stm/factory/Kconfig" diff --git a/drivers/sensorhub/stm_patek/Makefile b/drivers/sensorhub/stm_patek/Makefile new file mode 100644 index 000000000000..171f43cabbe0 --- /dev/null +++ b/drivers/sensorhub/stm_patek/Makefile @@ -0,0 +1,16 @@ +# +# Makefile for the sensor drivers. +# + +# Each configuration option enables a list of files. +obj-$(CONFIG_SENSORS_SSP) += ssp_dev.o ssp_i2c.o ssp_data.o ssp_sysfs.o\ + ssp_input.o ssp_firmware.o ssp_debug.o ssp_iio_ring.o ssp_iio_trigger.o ssp_misc.o +obj-$(CONFIG_SENSORS_SYSFS) += sensors_core.o +obj-$(CONFIG_SENSORS_SSP_AK8963C) += ssp_ak8963c.o +obj-$(CONFIG_SENSORS_SSP_SENSORHUB) += ssp_sensorhub.o + +obj-$(CONFIG_SENSORS_SSP_C12SD) += ssp_c12sd.o +obj-$(CONFIG_SENSORS_AD7146) += ad7146.o +obj-$(CONFIG_SENSORS_MAX86900) += max86900.o +obj-$(CONFIG_SENSORS_ADPD142) += adpd142.o +obj-$(CONFIG_SENSORS_SSP_FACTORY) += factory/ diff --git a/drivers/sensorhub/stm_patek/ad7146.c b/drivers/sensorhub/stm_patek/ad7146.c new file mode 100644 index 000000000000..c44cf8cd3e15 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ad7146.c @@ -0,0 +1,1611 @@ +/** + *\mainpage + * AD7146 MLD Driver +\n + * @copyright 2013 Analog Devices Inc. +\n + * Licensed under the GPL Version 3 or later. + * \date April-2013 + * \version Driver 1.3 + * \version Android ICS 4.0 + * \version Linux 3.0.15 + */ + + +/** + * \file ad7146.c + * This file is the core driver part of AD7146 for Event interface + * It also has routines for interrupt handling,suspend, resume, + * initialization routines etc. + * AD7146 MLD Driver + * Copyright 2013 Analog Devices Inc. + * Licensed under the GPL Version 3 or later. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ad7146.h" +#include "ssp.h" +//#include "sensors_core.h" + +#define VENDOR_NAME "ADI" +#define DEVICE_NAME "AD7146" + +//#define AD7146_DEBUG +#define AD7146_DEBUG_L2 + +#define OFFSET_FILE_PATH "/efs/grip_cal_data" + +#define FULL_POWER_MASK (0xFFFC) + +#define FIXED_TH 7000 +#define CAL_HIGH_MAX 62000 +#define CAL_HIGH_MIN 34250 +#define CENTER_CDC 30000 +#define CAL_LOW_MAX 29750 +#define CAL_LOW_MIN 2000 +#define LSB_FOR_CAP 5200 +#define MAX_OFFSET 126 +#define CAL_RET_SUCCESS (2) +#define CAL_RET_EXIST (1) +#define CAL_RET_NONE (0) +#define CAL_RET_FAIL (3) + +#define DO_CALIBRATE 1 +#define DONE_CALIBRATE 0 + +#define LD_POS_AFE_OFFSET(x) ((x & 0x003F) * ((x & 0x0080) ? -1 : 1)) +#define LD_NEG_AFE_OFFSET(x) (((x & 0x3F00) >> 8) * ((x & 0x8000) ? 1 : -1)) +#define ST_POS_AFE_OFFSET(x) (((x > 63) ? ((x - 63) << 8) | 0x003F : x) | 0x8000) +#define ST_NEG_AFE_OFFSET(x) (((-x > 63) ? (-x - 63) | 0x3F00 : (-x) << 8) | 0x0080) + +#ifdef AD7146_DEBUG +#define AD7146_DRIVER_DBG(format, arg...) pr_info("[Grip]:"format,\ + ## arg) +#else +#define AD7146_DRIVER_DBG(format, arg...) if (0) +#endif + +#ifdef AD7146_DEBUG_L2 +#define AD7146_DRIVER_DBG_L2(format, arg...) pr_info("[Grip]:"format,\ + ## arg) +#else +#define AD7146_DRIVER_DBG_L2(format, arg...) if (0) +#endif + +static struct ad7146_platform_data ad7146_i2c_platform_data = { +// For init touch mode + .regs = { +//Samsung GT - Latest Implementation 1.3 version - Initialization settings, 0x(address)(value) + 0x0080FFFF, 0x00811FEF, 0x00823600, 0x00832626, + 0x00840258, 0x00850258, 0x0086013A, 0x0087013A, + 0x0000C000, 0x00010000, 0x0002004B, 0x000301FF, + 0x0004FFFF, 0x0000C002, 0x00450D01, 0x00050000, + 0x00060000, 0x00070000, + }, +// Normal touch mode + .normal_regs = { +//Samsung GT - Latest Implementation 1.3 version - Normal State settings + 0x0000C002, 0x00010001, + }, + .fixed_th_full = 40000, // 0 ~ 65535 +}; + +/** +Look up table for the Sensitivity values of the AD7146 +*/ +static int SS_LUT[16] = { + 2500, 2973, 3440, 3908, + 4379, 4847, 5315, 5783, + 6251, 6722, 7190, 7658, + 8128, 8596, 9064, 9532 +}; + +/** + * The global mutex for the locking of the ISR. + */ +DEFINE_MUTEX(interrupt_thread_mutex); +/* + This elaborates the sysfs attributes used in the driver + */ +/*--------------------------------------------------------------*/ +static ssize_t show_dumpregs(struct device *dev, + struct device_attribute *attr, char *buf); +static struct device_attribute dev_attr_sensor_dump = + __ATTR(status, S_IRUSR | S_IRGRP, + show_dumpregs, NULL); +/*--------------------------------------------------------------*/ +static ssize_t store_enable(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count); +static ssize_t show_enable(struct device *dev, + struct device_attribute *attr, char *buf); + +static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + show_enable, store_enable); +/*--------------------------------------------------------------*/ +/** +SYSFS attributes list +*/ +static struct attribute *ad7146_sysfs_entries[] = { + &dev_attr_enable.attr, + NULL +}; +/** +SYSFS attribute Group +*/ +static struct attribute_group ad7146_attr_group = { + .name = NULL, + .attrs = ad7146_sysfs_entries, +}; + +/** + Writes to the Device register through i2C. + Used to Write the data to the I2C client's Register through the i2c protocol + + @param data The data to be written + @param reg The register address + @param dev The Device Structure + @return 0 on success + + @see ad7146_i2c_read + */ +static int ad7146_i2c_write(struct device *dev, unsigned short reg, + unsigned short data) +{ + struct i2c_client *client = to_i2c_client(dev); + int ret; + u8 *_reg = (u8 *)® + u8 *_data = (u8 *)&data; + + u8 tx[4] = { + _reg[1], + _reg[0], + _data[1], + _data[0] + }; + ret = i2c_master_send(client, tx, 4); + if (ret < 0) + dev_err(&client->dev, "I2C write error (%d)\n", ret); + return ret; +} +/** + Reads data from the Device register through i2C. + This is used to read the data from the AD7146 I2C client + + @param dev The Device Structure (Standard linux call) + @param reg The register address to be read. + @param data The data Read from the Given address. + @return The number of bytes transfered as an integer + + @see ad7146_i2c_write + */ + +static int ad7146_i2c_read(struct device *dev, unsigned short reg, + unsigned short *data) +{ + struct i2c_client *client = to_i2c_client(dev); + int ret; + u8 *_reg = (u8 *)® + u8 *_data = (u8 *)data; + + u8 tx[2] = { + _reg[1], + _reg[0] + }; + u8 rx[2]; + + ret = i2c_master_send(client, tx, 2); + if (ret >= 0) + ret = i2c_master_recv(client, rx, 2); + + if (unlikely(ret < 0)) { + dev_err(&client->dev, "I2C read error (%d)\n", ret); + } else { + _data[0] = rx[1]; + _data[1] = rx[0]; + } + + return ret; +} + +static int sensorshutdownmode(struct ad7146_chip *ad7146) +{ + unsigned short data = 0; + + mutex_lock(&interrupt_thread_mutex); + + ad7146->read(ad7146->dev, AD7146_PWR_CTRL, &data); + data = (data | 0x03); + ad7146->write(ad7146->dev, AD7146_PWR_CTRL, data); + + mutex_unlock(&interrupt_thread_mutex); + return 0; +} + +static void ad7146_force_cal(struct ad7146_chip *ad7146, int cal_time) +{ + unsigned short data; + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + + ad7146->read(ad7146->dev, AD7146_AMB_COMP_CTRL0_REG, &data); + data = data | AD7146_FORCED_CAL_MASK; + ad7146->write(ad7146->dev, AD7146_AMB_COMP_CTRL0_REG, data); + + msleep(cal_time); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); +} + +/** + This function is used to indicate Full Grip state by event + @param ad7146 The AD7146 chip structure pointer + @return void + + */ +static inline void indicatefullgripstate(struct ad7146_chip *ad7146) +{ + AD7146_DRIVER_DBG("indicatefullgripstate()\n"); + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, EVENT_FULL_GRIP + 1); + input_sync(ad7146->input); + } +} + +/** + This function is used to indicate No Grip state by event + @param ad7146 The AD7146 chip structure pointer + @return void + + */ +static inline void indicatenormalstate(struct ad7146_chip *ad7146) +{ + AD7146_DRIVER_DBG("indicatenormalstate()\n"); + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, EVENT_NO_GRIP + 1); + input_sync(ad7146->input); + } +} + +/** +This Function is used to determine the No Grip and + enter to the NORMAL mode of operation + @param ad7146 The Chip Structure. + @return void - Nothing returned + */ + +static void initnormalgrip(struct ad7146_chip *ad7146) +{ + unsigned int lcnt = 0; + + indicatenormalstate(ad7146); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, + DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, + DISABLE_INT); + + for (lcnt = 0; lcnt < (sizeof(ad7146_i2c_platform_data.normal_regs)/sizeof(int)); + lcnt++) { + unsigned short addr; + unsigned short value; + addr = (unsigned short)((ad7146_i2c_platform_data.normal_regs[lcnt] & + 0xffff0000) >> 16); + value = (unsigned short)(ad7146_i2c_platform_data.normal_regs[lcnt] & + 0x0000ffff); + + ad7146->write(ad7146->dev, addr, value); + } + + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + + ad7146->pw_on_grip_status = DRIVER_STATE_NORMAL; + AD7146_DRIVER_DBG("Forced Calibration in func %s\n", __func__); + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, ENABLE_STG0); +} + +/** +This Function is used in the POWER_ON GRIP detection to + determine the Full Grip status. +@param ad7146 The Chip Structure. +@return void - Nothing returned +*/ + +static void initfullgrip(struct ad7146_chip *ad7146) +{ + unsigned short sf_amb = 0; + unsigned short cdc_data = 0; + unsigned short theshold_low; + + indicatefullgripstate(ad7146); + + if (ad7146->cal_flags == CAL_RET_NONE) + theshold_low = ad7146_i2c_platform_data.fixed_th_full; + else + theshold_low = ad7146_i2c_platform_data.cal_fixed_th_full; + + ad7146->write(ad7146->dev, AD7146_STG_CAL_EN_REG, ENABLE_STG0); + ad7146->write(ad7146->dev, STG_0_LOW_THRESHOLD, theshold_low); + /* Change the Ambient to set the theshold as a fixed value + DONOT CHANGE THE FOLLOWING LINE*/ + ad7146->write(ad7146->dev, DRIVER_STG0_SF_AMBIENT , FULL_SCALE_VALUE); + ad7146->pw_on_grip_status = DRIVER_STATE_FULL_GRIP; + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &cdc_data); + ad7146->read(ad7146->dev, STG_0_LOW_THRESHOLD, &theshold_low); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT , &sf_amb); + AD7146_DRIVER_DBG_L2(" %s, AMB %d CurrentCDC %d theshold_low %d\n", __func__, + sf_amb, cdc_data, theshold_low); + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, ENABLE_STG0); +} + +/** + This function is used to identify and report the first grip status. + @param ad7146 The AD7146 chip structure pointer + @return void - Nothing Returned +*/ + +static int sensorgrip(struct ad7146_chip *ad7146) +{ + unsigned short conv0_avg = 0; + unsigned short threshold; + + mutex_lock(&interrupt_thread_mutex); + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &conv0_avg); + AD7146_DRIVER_DBG("conv0_avg = %5d\n", conv0_avg); + + if (conv0_avg < OVER_FLOW_SCALE_VALUE) + conv0_avg = FULL_SCALE_VALUE; + + if (ad7146->cal_flags == CAL_RET_NONE) + threshold = ad7146_i2c_platform_data.fixed_th_full; + else + threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + if (conv0_avg < threshold) { + initnormalgrip(ad7146); + } else { + initfullgrip(ad7146); + } + + mutex_unlock(&interrupt_thread_mutex) ; + return 0; +} + +/** + This is to configure the device with the register set defined in platform file. + Finally calibration is done and status registers will be cleared. + * @param ad7146 The Device structure + * @return void Nothing Returned + */ + +static int ad7146_hw_init(struct ad7146_chip *ad7146) +{ + int lcnt = 0; + + mutex_lock(&interrupt_thread_mutex) ; + /** configuration CDC and interrupts */ + for (lcnt = 0; lcnt < (sizeof(ad7146_i2c_platform_data.regs)/sizeof(int)); lcnt++) { + unsigned short addr; + unsigned short value; + addr = (unsigned short)((ad7146_i2c_platform_data.regs[lcnt] & + 0xffff0000) >> 16); + value = (unsigned short)(ad7146_i2c_platform_data.regs[lcnt] & + 0x0000ffff); + if (addr == DRIVER_STG0_AFEOFFSET) { + if (ad7146->cal_flags != CAL_RET_NONE) + value = ad7146_i2c_platform_data.cal_offset; + AD7146_DRIVER_DBG_L2(" %s, Addr %x Val %x\n", __func__, addr, value); + } + if (addr == AD7146_AMB_COMP_CTRL0_REG) + value = value & 0xBFFF; + + ad7146->write(ad7146->dev, addr, value); + } + + msleep(SLEEP_TIME_TO_CALI_INT); + + ad7146->prev_state_value = -1; + ad7146->state_value = EVENT_NO_GRIP; + ad7146->prevhigh = 0; + + AD7146_DRIVER_DBG("Force calibration done\n"); + mutex_unlock(&interrupt_thread_mutex); + + return 0; +} + +/** +This Function is used for the creating a Register Dump of the registers of the AD7146. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146 + @param buf The buffer to store the data to be written + @param count The count of bytes to be transfered to the Device + + \note This is evoked upon an echo request in /sys/../ region. + \note This also prints the results in the console for the user. + @return count of data written + */ +static ssize_t show_dumpregs(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short u16temp; + unsigned int u32_lpcnt = 0; + + mutex_lock(&interrupt_thread_mutex); + pr_info("[Grip]: Bank 1 register\n"); + for (u32_lpcnt = 0; u32_lpcnt < 0x16; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + ad7146->read(ad7146->dev, (unsigned short)0x042, &u16temp); + pr_info("[Grip]: Reg 0X0042 val 0x%x\n", u16temp); + + ad7146->read(ad7146->dev, (unsigned short)0x0045, &u16temp); + pr_info("[Grip]: Reg 0X0045 val 0x%x\n", u16temp); + + pr_info("[Grip]: Bank 2 register - Config\n"); + for (u32_lpcnt = 0x080; u32_lpcnt < 0x090; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + pr_info("[Grip]: Bank 3 register - Results\n"); + for (u32_lpcnt = 0x0E0; u32_lpcnt < 0x128; u32_lpcnt++) { + ad7146->read(ad7146->dev, (unsigned short)u32_lpcnt, &u16temp); + pr_info("[Grip]: Reg 0X%x val 0x%x\n", + u32_lpcnt, u16temp); + } + + mutex_unlock(&interrupt_thread_mutex); + + return sprintf(buf, "0\n"); +} + +static int ad7146_open_calibration(struct ad7146_chip *ad7146) +{ + struct file *offset_filp = NULL; + unsigned short st_file[2] = {0}; + int err = 0; + mm_segment_t old_fs; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + offset_filp = filp_open(OFFSET_FILE_PATH, O_CREAT | O_RDONLY | O_SYNC, 0666); + if (IS_ERR(offset_filp)) { + pr_err("%s: no offset file\n", __func__); + err = PTR_ERR(offset_filp); + if (err != -ENOENT) + pr_err("%s: Can't open cancelation file\n", __func__); + set_fs(old_fs); + return err; + } + + err = offset_filp->f_op->read(offset_filp, + (char *)&st_file, sizeof(unsigned short) * 2, &offset_filp->f_pos); + if (err != sizeof(unsigned short) * 2) { + pr_err("%s: Can't write the offset data to file\n", __func__); + err = -EIO; + } + + if ((st_file[0] != 0) && (st_file[1] != 0)) { + ad7146->cal_flags = CAL_RET_EXIST; + ad7146_i2c_platform_data.cal_offset = st_file[0]; + ad7146_i2c_platform_data.cal_fixed_th_full = st_file[1]; + } else { + ad7146->cal_flags = CAL_RET_NONE; + ad7146_i2c_platform_data.cal_offset = 0; + ad7146_i2c_platform_data.cal_fixed_th_full = 0; + } + + pr_info("[Grip]: %s, %d, %4x,%d\n", __func__, ad7146->cal_flags, st_file[0], st_file[1]); + + filp_close(offset_filp, current->files); + set_fs(old_fs); + + return err; +} + +/** +This Function is used to enable or to disable the device the Sysfs attribute is +given as "enable" writing a '0' Disables the device. +While writing a '1' enables the device. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146. + @param buf The buffer to store the data to be written. + @param count The count of bytes to be transfered to the Device. + + \note This is evoked upon an echo request in /sys/../ region. + \note This also prints the results in the console for the user. + +@return count of data written. +*/ +static ssize_t store_enable(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + pr_info("[Grip]: %s: enable %d val %d\n", __func__, ad7146->eventcheck, val); + if ((val == 1) || (val == 0)) { + if (ad7146->eventcheck != ((unsigned short) val)) { + ad7146->eventcheck = (unsigned short) val; + + if (ad7146->eventcheck == 1) { + ad7146_open_calibration(ad7146); + ad7146_hw_init(ad7146); + + enable_irq(ad7146->irq); + enable_irq_wake(ad7146->irq); + + sensorgrip(ad7146); + } else { + disable_irq_wake(ad7146->irq); + disable_irq(ad7146->irq); + + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, + DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, + DISABLE_INT); + sensorshutdownmode(ad7146); + } + } + } + } + return count; +} + +/** +This Function is used to show the enabled status of the device. +Status '1' signifies the device is ENABLED, +while the status '0' signifies a DISABLED device. + + @param dev The Device Id and Information structure(Linux Standard argument) + @param attr standard Linux Device attributes to the AD7146. + @param buf The buffer to store the data to be written. + + \note This is evoked upon an cat request in /sys/../ region. + \note This also prints the results in the console for the user. + + @return The count of data written. +*/ +static ssize_t show_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + return sprintf(buf, "%d\n", ad7146->eventcheck); +} + +/** + This callback_tmrfn is the callback function from MLD state machine + for the event intimation of the AD7146 device. + Here the current & previous grip state are compared & the event is sent + accordingly. + + @param data unsigned long data + @return 0 on success + + */ +static inline void callback_tmrfn(unsigned long data) +{ + struct ad7146_chip *ad7146 = (struct ad7146_chip *)data; + short state_value = ad7146->state_value; + short prev_state_value = ad7146->prev_state_value; + + if (state_value != prev_state_value) { + ad7146->prev_state_value = ad7146->state_value; + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, + (unsigned int)state_value + 1); + input_sync(ad7146->input); + pr_info("[Grip]: %s: state_value = %d\n", __func__, state_value); + } else if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 0)) { + pr_info("[Grip]: %s, event locked by flags, %d\n", __func__, ad7146->onoff_flags); + } + } +} + +/** + This MLD State Machine is used to determine the current grip state + + @param ad7146 The AD7146 chip structure + @return 0 on success + + */ +static int sldstateMachine(struct ad7146_chip *ad7146) +{ + unsigned short high = (ad7146->high_status & 3); + unsigned short prevhigh = (ad7146->prevhigh & 3); + short state_value = ad7146->state_value; + + if ((high == 0) && (prevhigh == 0)) { + state_value = EVENT_NO_GRIP; + high = 0; + ad7146->high_status = high; + ad7146->state_value = state_value; + return 0; + } + + if ((high == 1) && (prevhigh == 0)) { + AD7146_DRIVER_DBG("State = 1e\n"); + state_value = EVENT_FULL_GRIP; + } + + if ((high == 0) && (prevhigh == 1)) { + AD7146_DRIVER_DBG("State = 0x\n"); + state_value = EVENT_NO_GRIP; + } + + prevhigh = high; + ad7146->high_status = high; + ad7146->prevhigh = prevhigh; + ad7146->state_value = state_value; + callback_tmrfn((unsigned long)ad7146); + return 0; +} + + +/** + * \fn static int ad7146_hw_detect(struct ad7146_chip *ad7146) + * This Routine reads the Device ID to confirm the existance + * of the Device in the System. + + @param ad7146 The Device structure + @return 0 on Successful detection of the device,-ENODEV on err. + */ + +static int ad7146_hw_detect(struct ad7146_chip *ad7146) +{ + unsigned short data; + + ad7146->read(ad7146->dev, AD7146_PARTID_REG, &data); + switch (data & 0xFFF0) { + case AD7146_PARTID: + ad7146->product = AD7146_PRODUCT_ID; + ad7146->version = data & 0xF; + dev_info(ad7146->dev, "[Grip]: found AD7146 , rev:%d\n", + ad7146->version); + return 0; + + default: + dev_err(ad7146->dev, + "[Grip]: ad7146 Not Found,ID %04x\n", data); + return -ENODEV; + } +} + +/** + This function is used check the stage & accordingly calculate the + hysteresis compensation required. + + @param ad7146 The AD7146 chip structure pointer + @return void - Nothing returned +*/ +static void ad7146_hysteresis_comp(struct ad7146_chip *ad7146) +{ + unsigned short u16_high_threshold = 0; + unsigned short u16_sf_ambient = 0; + unsigned int result = 0; + + if (ad7146->high_status > (short)ad7146->prevhigh) { + if ((ad7146->high_status & 1) && (ad7146->state_value != EVENT_FULL_GRIP)) { + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &u16_high_threshold); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &u16_sf_ambient); + result = HYS(u16_sf_ambient, u16_high_threshold); + ad7146->write(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + (unsigned short)result); + AD7146_DRIVER_DBG_L2(" %s, N STG0 HT 0x%d->0x%d\n", __func__, + u16_high_threshold, result); + } + + } else if (ad7146->high_status < ad7146->prevhigh) { + if ((!(ad7146->high_status & 1)) && + (ad7146->prevhigh & 1)) { + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &u16_high_threshold); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &u16_sf_ambient); + result = HYS_POS(u16_sf_ambient, u16_high_threshold); + ad7146->write(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + (unsigned short)result); + AD7146_DRIVER_DBG_L2(" %s, P STG0 HT 0x%d->0x%d\n", __func__, + u16_high_threshold, result); + } + } +} +/** + IRQ Handler -- Handles the Grip & Normal mode of proximity detection + @param handle The data of the AD7146 Device + @param irq The Interrupt Request queue to be assigned for the device. + + @return IRQ_HANDLED + */ +static irqreturn_t ad7146_isr(int irq, void *handle) +{ + struct ad7146_chip *ad7146 = handle; + mutex_lock(&interrupt_thread_mutex) ; + + wake_lock_timeout(&ad7146->grip_wake_lock, 3 * HZ); + + if (!work_pending(&ad7146->work)) { + schedule_work(&ad7146->work); + } else { + /*Cleared the interrupt for future intterupts to occur*/ + ad7146->read(ad7146->dev, STG_LOW_INT_STA_REG, + &ad7146->low_status); + ad7146->read(ad7146->dev, STG_HIGH_INT_STA_REG, + &ad7146->high_status); + } + + mutex_unlock(&interrupt_thread_mutex); + return IRQ_HANDLED; +} + +/** + Interrupt work Handler -- Handles the Grip & Normal mode of proximity + detection from the ISR + @param work The work structure for the AD7146 chip + + @return void Nothing returned + */ +static void ad7146_interrupt_thread(struct work_struct *work) +{ + struct ad7146_chip *ad7146 = container_of(work, + struct ad7146_chip, work); + unsigned short data = 0; + unsigned short threshold; + + mutex_lock(&interrupt_thread_mutex); + + ad7146->read(ad7146->dev, STG_HIGH_INT_STA_REG, + &ad7146->high_status); + ad7146->read(ad7146->dev, STG_LOW_INT_STA_REG, + &ad7146->low_status); + AD7146_DRIVER_DBG_L2(" %s, HS%x LS%x\n", __func__, + ad7146->high_status, ad7146->low_status); + + if (ad7146->cal_flags == CAL_RET_NONE) + threshold = ad7146_i2c_platform_data.fixed_th_full; + else + threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + if (data < OVER_FLOW_SCALE_VALUE) + data = FULL_SCALE_VALUE; + pr_info("[Grip]: %s, data(%d)\n", __func__, data); + + if (ad7146->pw_on_grip_status == DRIVER_STATE_FULL_GRIP) { // init touch mode + pr_info("[Grip]: %s, FULL_GRIP\n", __func__); + if ((ad7146->low_status & 1) == 1) { + if ((OVER_FLOW_SCALE_VALUE < data) && + (data <= (threshold))) { + initnormalgrip(ad7146); + } else { + ad7146->write(ad7146->dev, DRIVER_STG0_SF_AMBIENT , FULL_SCALE_VALUE); + ad7146->write(ad7146->dev, STG_0_LOW_THRESHOLD, threshold); + pr_info("[Grip]: %s, reset Full Grip\n", __func__); + } + } else { + if (data < threshold) + initnormalgrip(ad7146); + } + } else { // normal mode + pr_info("[Grip]: %s, NORMAL\n", __func__); + if (ad7146->low_status != 0) { + if (OVER_FLOW_SCALE_VALUE < data && data < FULL_SCALE_VALUE) { + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + AD7146_DRIVER_DBG("FCalib(%d) in Low INT\n", data); + } + } else { + ad7146_hysteresis_comp(ad7146); + sldstateMachine(ad7146); + } + } + + mutex_unlock(&interrupt_thread_mutex); +} + +static int offset_write(struct ad7146_chip *ad7146, unsigned short data) +{ + ad7146->write(ad7146->dev, DRIVER_STG0_AFEOFFSET, data); + msleep(SLEEP_TIME_TO_CALI_INT); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &data); + return 0; +} + +static int ad7146_offset_check(struct ad7146_chip *ad7146) +{ + int err = 0; + short cal_offset; + unsigned short data, offset; + + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & + 0x0000ffff); + offset_write(ad7146, offset); + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + if (data < CAL_LOW_MIN || CAL_HIGH_MAX < data) { + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + cal_offset += 8; + pr_info("[Grip]: %s,(%d)\n", __func__, cal_offset); + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("[Grip]: %s, Cal offset ERROR(%d)\n", __func__, cal_offset); + } + offset_write(ad7146, offset); + } else { + pr_info("[Grip]: %s, no change offset(%d)\n", __func__, data); + return 0; + } + + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + if (data < CAL_LOW_MIN || CAL_HIGH_MAX < data) { + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + if (err < 0) + cal_offset -= 8; + else + cal_offset -= 16; + pr_info("[Grip]: %s,(%d)\n", __func__, cal_offset); + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("[Grip]: %s, Cal offset ERROR(%d)\n", __func__, cal_offset); + } + offset_write(ad7146, offset); + } else { + pr_info("[Grip]: %s, no change offset(%d)\n", __func__, data); + return 0; + } + + return err; +} + +static int ad7146_calibration(struct ad7146_chip *ad7146, bool cal_flag) +{ + struct file *offset_filp = NULL; + mm_segment_t old_fs; + short cal_offset, count = 4; + unsigned short data, offset, temp_offset, temp_fixed_th; + unsigned short st_file[2] = {0}; + int err = 0; + + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->cal_flags = CAL_RET_FAIL; + + temp_offset = ad7146_i2c_platform_data.cal_offset; + temp_fixed_th = ad7146_i2c_platform_data.cal_fixed_th_full; + + if (cal_flag) { + ad7146->read(ad7146->dev, AD7146_PWR_CTRL, &data); + data &= FULL_POWER_MASK; + ad7146->write(ad7146->dev, AD7146_PWR_CTRL, data); + msleep(SLEEP_TIME_TO_LOW_POWER + SLEEP_TIME_TO_CALI_INT); + + ad7146_offset_check(ad7146); + + while (count >= 0) { + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &data); + ad7146->read(ad7146->dev, DRIVER_STG0_AFEOFFSET, &offset); + + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + pr_info("[Grip]: %s, %d, %x(%d), %d\n", __func__, + data, offset, cal_offset, count); + + if ((CAL_LOW_MAX < data && data <= CAL_HIGH_MIN) && + (-MAX_OFFSET < cal_offset && cal_offset <= MAX_OFFSET)) { + st_file[0] = offset; + st_file[1] = data + FIXED_TH; + + ad7146_i2c_platform_data.cal_fixed_th_full = data + FIXED_TH; + ad7146_i2c_platform_data.cal_offset = offset; + ad7146->cal_flags = CAL_RET_SUCCESS; + pr_info("[Grip]: %s, cal_fixed_th_full(%u), cal_offset(%u), cal_flags(%d)\n", + __func__, ad7146_i2c_platform_data.cal_fixed_th_full, + ad7146_i2c_platform_data.cal_offset, ad7146->cal_flags); + + break; + } else if (CAL_LOW_MIN < data && data <= CAL_HIGH_MAX) { + if (data > CENTER_CDC) + cal_offset = cal_offset - count; + else + cal_offset = cal_offset + count; + + if (0 <= cal_offset && cal_offset <= MAX_OFFSET) { + offset = ST_POS_AFE_OFFSET(cal_offset); + } else if (-MAX_OFFSET <= cal_offset && cal_offset < 0) { + offset = ST_NEG_AFE_OFFSET(cal_offset); + } else { + err = -1; + pr_err("%s, offset ERROR(%d)\n", __func__, data); + break; + } + offset_write(ad7146, offset); + } else { + err = -1; + pr_err("%s, raw data ERROR(%d)\n", __func__, data); + break; + } + if (count > 0) + count /= 2; + else + count -= 1; + } + } else { + st_file[0] = 0; + st_file[1] = 0; + + ad7146->cal_flags = CAL_RET_NONE; + ad7146_i2c_platform_data.cal_fixed_th_full = 0; + ad7146_i2c_platform_data.cal_offset = 0; + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + } + + if (ad7146->cal_flags == CAL_RET_FAIL) { + pr_err("[Grip]: %s, cal fail\n", __func__); + if (ad7146_i2c_platform_data.cal_fixed_th_full != 0) { + offset = ad7146_i2c_platform_data.cal_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } else { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } + } else { + pr_info("[Grip]: %s, cal success\n", __func__); + } + + offset_write(ad7146, offset); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + offset_filp = filp_open(OFFSET_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY | O_SYNC, 0666); + if (IS_ERR(offset_filp)) { + pr_err("[Grip]: %s: Can't open file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(offset_filp); + goto save_fail; + } + + err = offset_filp->f_op->write(offset_filp, + (char *)&st_file, sizeof(unsigned short) * 2, &offset_filp->f_pos); + if (err != sizeof(unsigned short) * 2) { + pr_err("[Grip]: %s: Can't write the offset data to file\n", __func__); + err = -EIO; + filp_close(offset_filp, current->files); + set_fs(old_fs); + goto save_fail; + } + + filp_close(offset_filp, current->files); + set_fs(old_fs); + + return err; +save_fail: + if (cal_flag) { + if (ad7146->cal_flags == CAL_RET_SUCCESS) { + ad7146_i2c_platform_data.cal_fixed_th_full = temp_fixed_th; + ad7146_i2c_platform_data.cal_offset = temp_offset; + if (temp_fixed_th == 0) { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } else { + offset = temp_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } + } + } else { + ad7146_i2c_platform_data.cal_fixed_th_full = temp_fixed_th; + ad7146_i2c_platform_data.cal_offset = temp_offset; + if (temp_fixed_th == 0) { + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + ad7146->cal_flags = CAL_RET_NONE; + } else { + offset = temp_offset; + ad7146->cal_flags = CAL_RET_EXIST; + } + } + offset_write(ad7146, offset); + return err; +} + +static ssize_t ad7146_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", DEVICE_NAME); +} + +static ssize_t ad7146_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR_NAME); +} + +static ssize_t ad7146_raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short u16temp; + + if (ad7146->during_cal_flags == DONE_CALIBRATE) { + ad7146->read(ad7146->dev, CDC_RESULT_S0_REG, &u16temp); + + if (u16temp < OVER_FLOW_SCALE_VALUE) + u16temp = 0xFFFF; + ad7146->during_cal_data = u16temp; + pr_info("[Grip]: %s, raw_data : %d\n", __func__, u16temp); + } + + return snprintf(buf, PAGE_SIZE, "%d\n", ad7146->during_cal_data); +} + +static ssize_t ad7146_onoff_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d\n", ad7146->onoff_flags); +} + +static ssize_t ad7146_onoff_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + pr_info("[Grip]: %s: enable %d val %d\n", __func__, ad7146->onoff_flags, val); + if ((val == 1) || (val == 0)) { + if (ad7146->onoff_flags != ((unsigned char) val)) { + ad7146->onoff_flags = (unsigned char) val; + if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 0)) { + input_report_rel(ad7146->input, REL_MISC, + EVENT_NO_GRIP + 1); + input_sync(ad7146->input); + } else if ((ad7146->eventcheck == 1) && (ad7146->onoff_flags == 1)) { + input_report_rel(ad7146->input, REL_MISC, + ad7146->state_value + 1); + input_sync(ad7146->input); + pr_info("[Grip]: %s : report state %d\n", __func__, ad7146->state_value); + } + } + } + } + + return size; +} + +static ssize_t ad7146_threshold_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned int fixed_threshold, threshold; + unsigned int sensitivity, data; + unsigned short stg_th, stg_amb; + + if (ad7146->cal_flags == CAL_RET_NONE) + fixed_threshold = ad7146_i2c_platform_data.fixed_th_full; + else + fixed_threshold = ad7146_i2c_platform_data.cal_fixed_th_full; + + data = (ad7146_i2c_platform_data.regs[4] & 0x0000ffff); + sensitivity = (ad7146_i2c_platform_data.regs[3] & 0x0000ffff); + threshold = (data / 4) + (((data - (data / 4)) / 16) * SS_LUT[((sensitivity & POS_SENS) >> 8)]) / 10000; + threshold = (threshold * 194) / 100; + + ad7146->read(ad7146->dev, DRIVER_STG0_HIGH_THRESHOLD, + &stg_th); + ad7146->read(ad7146->dev, DRIVER_STG0_SF_AMBIENT, + &stg_amb); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", (unsigned int)fixed_threshold, + (unsigned int)threshold, (unsigned int) (threshold * (100 - HYS_PERCENT) / 100)); +} + +static ssize_t ad7146_calibration_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d\n", (unsigned int)ad7146->cal_flags); +} + +static ssize_t ad7146_calibration_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int val, err; + + err = kstrtoint(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + ad7146->during_cal_flags = DO_CALIBRATE; + + if (ad7146->eventcheck != 1) + ad7146_hw_init(ad7146); + + if (val == 0) + ad7146_calibration(ad7146, false); + else if (val == 1) + ad7146_calibration(ad7146, true); + else + pr_err("[Grip]: %s, kstrtoint %d\n", __func__, val); + + ad7146->during_cal_flags = DONE_CALIBRATE; + + if (ad7146->eventcheck == 1) + sensorgrip(ad7146); + else + sensorshutdownmode(ad7146); + } + return size; +} + +static ssize_t ad7146_offset_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + unsigned short offset; + short cal_offset; + + if (ad7146->cal_flags != CAL_RET_NONE) + offset = ad7146_i2c_platform_data.cal_offset; + else + offset = (unsigned short)(ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0x0000ffff); + + cal_offset = LD_POS_AFE_OFFSET(offset) + LD_NEG_AFE_OFFSET(offset); + + return snprintf(buf, PAGE_SIZE, "%x,%d\n", offset, cal_offset); +} + +static ssize_t ad7146_offset_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ad7146_chip *ad7146 = dev_get_drvdata(dev); + int err; + unsigned short data; + short val; + + err = kstrtos16(buf, 10, &val); + + if (err < 0) { + pr_err("[Grip]: %s, kstrtoint failed\n", __func__); + } else { + if (-MAX_OFFSET <= val && val <= MAX_OFFSET) { + pr_info("[Grip]: %s, %d\n", __func__, val); + if (val > 0) + data = ST_POS_AFE_OFFSET(val); + else + data = ST_NEG_AFE_OFFSET(val); + + ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] = + (ad7146_i2c_platform_data.regs[STAGE_AFE_OFFSET] & 0xFFFF0000) + + ((unsigned int)data & 0x0000FFFF); + + ad7146->write(ad7146->dev, DRIVER_STG0_AFEOFFSET, data); + ad7146_force_cal(ad7146, SLEEP_TIME_TO_CALI_INT); + } else { + pr_err("[Grip]: %s, Error for data val(%d)\n", __func__, val); + } + } + + return size; +} + +static struct device_attribute dev_attr_sensor_name = + __ATTR(name, S_IRUSR | S_IRGRP, + ad7146_name_show, NULL); +static struct device_attribute dev_attr_sensor_vendor = + __ATTR(vendor, S_IRUSR | S_IRGRP, + ad7146_vendor_show, NULL); +static struct device_attribute dev_attr_sensor_raw_data = + __ATTR(raw_data, S_IRUSR | S_IRGRP, + ad7146_raw_data_show, NULL); +static struct device_attribute dev_attr_sensor_onoff = + __ATTR(onoff, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_onoff_show, ad7146_onoff_store); +static struct device_attribute dev_attr_sensor_threshold = + __ATTR(threshold, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_threshold_show, NULL); +static struct device_attribute dev_attr_sensor_calibration = + __ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_calibration_show, ad7146_calibration_store); +static struct device_attribute dev_attr_sensor_offset = + __ATTR(offset, S_IRUGO | S_IWUSR | S_IWGRP, + ad7146_offset_show, ad7146_offset_store); + + +static struct device_attribute *ad7146_attrs[] = { + &dev_attr_sensor_name, + &dev_attr_sensor_vendor, + &dev_attr_sensor_raw_data, + &dev_attr_sensor_onoff, + &dev_attr_sensor_threshold, + &dev_attr_sensor_calibration, + &dev_attr_sensor_offset, + &dev_attr_sensor_dump, + NULL, +}; + +static int ad7146_parse_dt(struct ad7146_chip *ad7146, struct device *dev) +{ + struct device_node *dNode = dev->of_node; + enum of_gpio_flags flags; + + if (dNode == NULL) + return -ENODEV; + + ad7146->grip_int = of_get_named_gpio_flags(dNode, + "ad7146-i2c,grip_int-gpio", 0, &flags); + if (ad7146->grip_int < 0) { + pr_err("[Grip]: %s - get grip_int error\n", __func__); + return -ENODEV; + } + + return 0; +} +/** + Device probe function + All initialization routines are handled here like the ISR registration, + Work creation,Input device registration,SYSFS attributes creation etc. + + @param i2c_client the i2c structure of the ad7146 device/client. + @param i2c_device_id The i2c_device_id for the supported i2c device. + + @return 0 on success,and On failure -ENOMEM, -EINVAL ,etc., will be returned + */ +static int __devinit ad7146_probe(struct i2c_client *client, + const struct i2c_device_id *id) +{ + int ret = -EINVAL; + struct input_dev *input = NULL; + struct device *dev = &client->dev; + struct ad7146_chip *ad7146 = NULL; + + pr_info("[Grip]: %s: called", __func__); + + if (client == NULL) { + pr_err("[Grip]: %s: Client doesn't exist\n", __func__); + return ret; + } + ad7146 = kzalloc(sizeof(struct ad7146_chip), GFP_KERNEL); + if (!ad7146) { + pr_err("[Grip]: %s: Memory allocation fail\n", __func__); + ret = -ENOMEM; + return ret; + } + + ad7146->read = ad7146_i2c_read; + ad7146->write = ad7146_i2c_write; + ad7146->dev = dev; + + ret = ad7146_parse_dt(ad7146, &client->dev); + if (ret < 0) { + pr_err("[Grip]: %s: - of_node error\n", __func__); + ret = -ENODEV; + goto err_of_node; + } + + i2c_set_clientdata(client, ad7146); + + INIT_WORK(&ad7146->work, ad7146_interrupt_thread); + + /* + * Allocate and register ad7146 input device + */ + input = input_allocate_device(); + if (!input) { + pr_err("[Grip]: %s: could not allocate input device\n", __func__); + ret = -ENOMEM; + goto err_kzalloc_mem; + } + + ad7146->input = input; + input_set_drvdata(ad7146->input, ad7146); + input->name = "grip_sensor"; + set_bit(EV_REL, ad7146->input->evbit); + input_set_capability(ad7146->input, EV_REL, REL_MISC); + + ret = input_register_device(ad7146->input); + if (ret) { + pr_err("[Grip]: %s: could not input_register_device(input);\n", __func__); + ret = -ENOMEM; + goto err_input_register_device; + } + + ret = sensors_create_symlink(&ad7146->input->dev.kobj, + ad7146->input->name); + if (ret < 0) { + pr_err("[Grip]: %s: create_symlink error\n", __func__); + goto err_sensors_create_symlink; + } + + ad7146->eventcheck = 0; + + wake_lock_init(&ad7146->grip_wake_lock, WAKE_LOCK_SUSPEND, "grip_wake_lock"); + + ret = gpio_request(ad7146->grip_int, "gpio_grip_int"); + pr_info("[Grip]: %s : gpio request %d\n", __func__, ad7146->grip_int); + if (ret < 0) { + pr_err("[Grip]: %s: gpio %d request failed (%d)\n", + __func__, ad7146->grip_int, ret); + goto err_gpio_request; + } + + ret = gpio_direction_input(ad7146->grip_int); + if (ret < 0) { + pr_err("[Grip]: %s: failed to set gpio %d as input (%d)\n", + __func__, ad7146->grip_int, ret); + goto err_free_irq; + } + + ad7146->irq = gpio_to_irq(ad7146->grip_int); + pr_info("[Grip]: %s: irq %d\n", __func__, ad7146->irq); + + ret = request_threaded_irq(ad7146->irq, NULL, ad7146_isr, + IRQF_TRIGGER_FALLING | IRQF_ONESHOT, + dev_name(dev), ad7146); + + if (ret) { + pr_err("[Grip]: %s: irq %d Driver init Failed", __func__, ad7146->irq); + goto err_free_irq; + } + disable_irq(ad7146->irq); + + ret = sysfs_create_group(&input->dev.kobj, &ad7146_attr_group); + if (ret) { + pr_err("[Grip]: %s: cound not register sensor device\n", __func__); + goto err_sysfs_create_input; + } + + ret = sensors_register(ad7146->grip_dev, ad7146, ad7146_attrs, "grip_sensor"); + if (ret) { + pr_err("[Grip]: %s: cound not register sensor device\n", __func__); + goto err_sysfs_create_factory_grip; + } + +#ifdef CONFIG_SENSOR_USE_SYMLINK + ret = sensors_initialize_symlink(input); + if (ret) { + pr_err("[Grip]: %s: cound not make grip sensor symlink(%d).\n", + __func__, ret); + goto out_sensors_initialize_symlink; + } +#endif + + /* check if the device is existing by reading device id of AD7146 */ + ret = ad7146_hw_detect(ad7146); + if (ret) + goto err_hw_detect; + + /* initialize and request sw/hw resources */ + sensorshutdownmode(ad7146); + ad7146->onoff_flags = 1; + + pr_info("[Grip]: %s - probe done\n", __func__); + return 0; +err_hw_detect: + pr_err("[Grip]: %s: hw detect error\n", __func__); +#ifdef CONFIG_SENSOR_USE_SYMLINK +out_sensors_initialize_symlink: +#endif +err_sysfs_create_factory_grip: + sysfs_remove_group(&input->dev.kobj, &ad7146_attr_group); +err_sysfs_create_input: + free_irq(ad7146->irq, ad7146); +err_free_irq: + gpio_free(ad7146->grip_int); +err_gpio_request: + wake_lock_destroy(&ad7146->grip_wake_lock); +err_sensors_create_symlink: + input_unregister_device(input); +err_input_register_device: + input_free_device(input); +err_kzalloc_mem: +err_of_node: + kfree(ad7146); + pr_info("[Grip]: %s - probe failed(%d)\n", __func__, ret); + return ret; +} + +/** + Removes the Device. + This is used to Remove the device or the I2C client from the system + + @param client The Client Id to be removed + @return 0 on success + */ +static int __devexit ad7146_i2c_remove(struct i2c_client *client) +{ + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, Start\n", __func__); + if (ad7146 != NULL) { + if (ad7146->eventcheck == ENABLE_INTERRUPTS) { + disable_irq(ad7146->irq); + disable_irq_wake(ad7146->irq); + ad7146->write(ad7146->dev, STG_COM_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + msleep(SLEEP_TIME_TO_CALI_INT); + } + sysfs_remove_group(&ad7146->input->dev.kobj, &ad7146_attr_group); + free_irq(ad7146->irq, ad7146); + gpio_free(client->irq); + input_unregister_device(ad7146->input); + input_free_device(ad7146->input); + kfree(ad7146); + } + return 0; +} + +void ad7146_shutdown(struct i2c_client *client) +{ + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + pr_info("%s, Start\n", __func__); + if (ad7146 != NULL) { + if (ad7146->eventcheck == ENABLE_INTERRUPTS) { + disable_irq(ad7146->irq); + disable_irq_wake(ad7146->irq); + ad7146->write(ad7146->dev, STG_COM_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_HIGH_INT_EN_REG, DISABLE_INT); + ad7146->write(ad7146->dev, STG_LOW_INT_EN_REG, DISABLE_INT); + msleep(SLEEP_TIME_TO_CALI_INT); + } + sysfs_remove_group(&ad7146->input->dev.kobj, &ad7146_attr_group); + free_irq(ad7146->irq, ad7146); + gpio_free(client->irq); + input_unregister_device(ad7146->input); + input_free_device(ad7146->input); + kfree(ad7146); + } +} +/** +Device ID table for the AD7146 driver +*/ +static int grip_i2c_suspend(struct device *dev) +{ + struct i2c_client *client = to_i2c_client(dev); + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, check (%d)\n", __func__, ad7146->eventcheck); +/* if (ad7146->eventcheck == 0) + ad7146->hw->power_en(0);*/ + + return 0; +} + +static int grip_i2c_resume(struct device *dev) +{ + struct i2c_client *client = to_i2c_client(dev); + struct ad7146_chip *ad7146 = i2c_get_clientdata(client); + + pr_info("%s, check (%d)\n", __func__, ad7146->eventcheck); + if (ad7146->eventcheck == 0) { + //ad7146->hw->power_en(1); + msleep(10); + sensorshutdownmode(ad7146); + } + + return 0; +} + +static struct of_device_id ad7146_match_table[] = { + { .compatible = "ad7146-i2c",}, + {}, +}; + +static const struct i2c_device_id ad7146_id[] = { + {"ad7146_match_table", 0}, + {} +/* + { "ad7146_SAR_NORM", 0 }, + { "ad7146_SAR_PROX", 1 }, + { "ad7146_SAR", 2 }, {}, +*/ +}; + +static const struct dev_pm_ops grip_dev_pm_ops = { + .suspend = grip_i2c_suspend, + .resume = grip_i2c_resume, +}; + +/** + The file Operation Table + */ +struct i2c_driver ad7146_i2c_driver = { + .driver = { + .name = DRIVER_NAME, + .owner = THIS_MODULE, + .of_match_table = ad7146_match_table, + .pm = &grip_dev_pm_ops, + }, + .probe = ad7146_probe, + .shutdown = ad7146_shutdown, + .remove = __devexit_p(ad7146_i2c_remove), + .id_table = ad7146_id, +}; + +/** + This is an init function called during module insertion -- + calls in turn i2c driver probe function + */ +static __init int ad7146_i2c_init(void) +{ + pr_info("%s, start\n", __func__); + return i2c_add_driver(&ad7146_i2c_driver); +} +module_init(ad7146_i2c_init); + +/** + Called during the module removal + */ +static __exit void ad7146_i2c_exit(void) +{ + i2c_del_driver(&ad7146_i2c_driver); +} + +module_exit(ad7146_i2c_exit); +MODULE_DESCRIPTION("Analog Devices ad7146 MLD Driver"); +MODULE_AUTHOR("Analog Devices"); +MODULE_LICENSE("GPL"); + diff --git a/drivers/sensorhub/stm_patek/ad7146.h b/drivers/sensorhub/stm_patek/ad7146.h new file mode 100644 index 000000000000..f969c7e494cf --- /dev/null +++ b/drivers/sensorhub/stm_patek/ad7146.h @@ -0,0 +1,315 @@ +/** +\file ad7146.h +This is the Header file for AD7146_Driver. +The file can be found at /include/linux/input +*/ +/* + * include/linux/input/ad7146.h + * + * The platform_data for the device's "struct device" holds this + * information. + * + * Copyright 2013 Analog Devices Inc. + * + * Licensed under the GPL version 3 or later. + */ + +#ifndef __LINUX_INPUT_AD714X_H__ +#define __LINUX_INPUT_AD714X_H__ + +/** +Total number of register count used in the initialization. +\note +This should be kept exactly as the register count in the +initialization of the platform device structure ad7146_platform_data. +*/ +#define REGCNT 18 + +/** +Total number of register count used in the Normal mode transistion. +\note +This should be kept exactly as the register count in the "normal_regs" +of the platform device structure ad7146_platform_data. +*/ +#define NORMAL_REGCNT 2 + +/** +Platform data structure of AD7146_MLD driver. +*/ +struct ad7146_platform_data { +/** +This hold the Initial Register Configurations of AD7146 +*/ + unsigned int regs[REGCNT]; +/** +This hold the Normal Mode Register Configurations of AD7146 +*/ + unsigned int normal_regs[NORMAL_REGCNT]; +/** +This holds the Full Grip threshold value for POWER_ON_GRIP +*/ + unsigned short fixed_th_full; + unsigned short cal_offset; + unsigned short cal_fixed_th_full; + + void (*power_en)(int); +}; + +/** +READ function for AD7146 +*/ +typedef int (*ad7146_read_t)(struct device *, unsigned short, unsigned short *); +/** +WRITE function for AD7146 +*/ +typedef int (*ad7146_write_t)(struct device *, unsigned short, unsigned short); + + +/** + Event value for No Grip State + */ +#define EVENT_NO_GRIP (5) +/** + Event value for Full Grip State + */ +#define EVENT_FULL_GRIP (0) +/** + Minimum OFFSET for POWER_ON grip Detection +*/ +#define PW_ON_OFFSET_MIN (0x200) /* 512 codes */ +/** + Hysteresis Percentage Reduction + */ +#define HYS_PERCENT (20) + +#if (HYS_PERCENT > 99) +#error "Hysteris percentage invalid" +#endif +/** + Hysteresis Compensation Macro + */ +#define HYS(S, T) ((T) - ((((T)-(S)) * HYS_PERCENT)/100)) +/** + Positive Hysteresis Compensation Macro + */ +#define HYS_POS(S, T) ((T) + ((((T)-(S)) * HYS_PERCENT) \ + / (100 - HYS_PERCENT))) +/** + Sleep time required to go to Low Power mode in milliseconds + */ +#define SLEEP_TIME_TO_LOW_POWER (200) +/** + Sleep time for forced calibration during init in milliseconds + */ +#define SLEEP_TIME_TO_CALI_INIT (100) +/** + Sleep time for forced calibration during INT in milliseconds + */ +#define SLEEP_TIME_TO_CALI_INT (20) + +/** + Driver State Normal + */ +#define DRIVER_STATE_NORMAL (0) +/** + Driver State Full Grip + */ +#define DRIVER_STATE_FULL_GRIP (1) + +/** + Driver name of this ad7146 driver + */ +#define DRIVER_NAME "ad7146_MLD" +/** + This hold the product ID of AD7146 + */ +#define AD7146_PRODUCT_ID 0x7146 +/** + \def AD7146_PARTID_REG + Device ID Register Address + */ +#define AD7146_PARTID_REG (0x17) +/** + \def AD7146_PARTID + Device ID for AD7146 chip + */ +#define AD7146_PARTID (0x1490) +/** + Clear Interrupt Enable Register + */ +#define DISABLE_INT (0x0) +/** + Enable Stage 0 + */ +#define ENABLE_STG0 (0x01) +/** + \def AD7146_PWR_CTRL + Power control Register + */ +#define AD7146_PWR_CTRL (0x0) +/** + \def AD7146_STG_CAL_EN_REG + Calibration and Control Register + */ +#define AD7146_STG_CAL_EN_REG (0x1) +/** + \def AD7146_AMB_COMP_CTRL0_REG + Device Control Register 0 + */ +#define AD7146_AMB_COMP_CTRL0_REG (0x2) +/** + \def STG_LOW_INT_EN_REG + Lower Threshold Interrupt Enable register + */ +#define STG_LOW_INT_EN_REG (0x5) +/** + \def STG_HIGH_INT_EN_REG + Higher Threshold Interrupt Enable register + */ +#define STG_HIGH_INT_EN_REG (0x6) +/** + \def STG_COM_INT_EN_REG + Conversion complete Interrupt Enable register + */ +#define STG_COM_INT_EN_REG (0x7) +/** + \def STG_LOW_INT_STA_REG + Lower Threshold Interrupt Status register + */ +#define STG_LOW_INT_STA_REG (0x8) +/** + \def STG_HIGH_INT_STA_REG + Higher Threshold Interrupt Status register + */ +#define STG_HIGH_INT_STA_REG (0x9) +/** + \def CDC_RESULT_S0_REG + CDC Result of Stage 0 Register + */ +#define CDC_RESULT_S0_REG (0xB) +/** + Register address of Stage 0 Sensitivity + */ +#define DRIVER_STG0_AFEOFFSET (0x82) +/** + Register address of Stage 0 Sensitivity + */ +#define DRIVER_STG0_SENSITIVITY (0x83) +/** + Register address of Stage 0 LOW OFFSET + */ +#define LOW_OFFSET_0_REG (0x84) +/** + Register address of Stage 0 HIGH OFFSET + */ +#define HIGH_OFFSET_0_REG (0x85) +/** + Register address of Stage 0 HIGH CLAMP + */ +#define HIGH_OFFSET_CLAMP_0_REG (0x86) +/** + Register address of Stage 0 LOW CLAMP + */ +#define LOW_OFFSET_CLAMP_0_REG (0x87) +/** + \def DRIVER_STG0_SF_AMBIENT + Register address of Stage 0 sf ambient value + */ +#define DRIVER_STG0_SF_AMBIENT (0xF1) +/** + \def DRIVER_STG0_HIGH_THRESHOLD + Register address of Stage 0 High Threshold value + */ +#define DRIVER_STG0_HIGH_THRESHOLD (0xFA) +/** + Stage 0 Low threshold Register + */ +#define STG_0_LOW_THRESHOLD (0x101) +/** + Mask For the Force calibration + */ +#define AD7146_FORCED_CAL_MASK (1<<14) + +/** + Negative Sensitivity Mask + */ +#define NEG_SENS (0xF) +/** + Positive Sensitivity Mask + */ +#define POS_SENS (0xF00) +/** + Used For the Disable of the interrupts + */ +#define DISABLE_INTERRUPTS (0x0) +/** + Used For the Enable of interrupts + */ +#define ENABLE_INTERRUPTS (0x1) +/** + AD7146 Full Scale value +*/ +#define FULL_SCALE_VALUE (0xFFFF) +/** + AD7146 Full Scale value +*/ +#define OVER_FLOW_SCALE_VALUE (0x0005) + +enum bank2_register_type { + STAGE_CONNECTION_1, + STAGE_CONNECTION_2, + STAGE_AFE_OFFSET, + STAGE_SENSITIVITY, + STAGE_OFFSET_LOW, + STAGE_OFFSET_HIGH, + STAGE_OFFSET_HIGH_CLAMP, + STAGE_OFFSET_LOW_CLAMP +}; +/** + * This structure provides chip information of AD7146. + * \note Contains chip information of the AD7146 chip with attributes + * like Product, Status ,version,drive data etc. + * which are used in the control or to read the status of the device + */ +struct ad7146_chip { + unsigned short high_status; + unsigned short low_status; + struct ad7146_platform_data *hw; + struct input_dev *input; + struct device *grip_dev; + int irq; + int grip_int; + struct work_struct work; + struct device *dev; + struct wake_lock grip_wake_lock; + ad7146_read_t read; + ad7146_write_t write; + + /** + power on grip status + 0 - Normal Mode + 1 - Half Grip Mode + 2 - Full Grip Mode + */ + unsigned short pw_on_grip_status; + + /*State check variables */ + unsigned short prevhigh; + short prev_state_value; + short state_value; + /** + event check to send or block the event in the driver + 0 - Disabled(Do not send event) + 1 - Enabled(Send event) + */ + unsigned short eventcheck; + unsigned short during_cal_data; + char onoff_flags; + char cal_flags; + char during_cal_flags; + unsigned short stg0_low_offset; + unsigned product; + unsigned version; +}; + +#endif diff --git a/drivers/sensorhub/stm_patek/adpd142.c b/drivers/sensorhub/stm_patek/adpd142.c new file mode 100644 index 000000000000..504fe173e1d1 --- /dev/null +++ b/drivers/sensorhub/stm_patek/adpd142.c @@ -0,0 +1,2632 @@ +/** + *\mainpage + * ADPD142 driver + * (c) copyright 2014 Analog Devices Inc. + * Licensed under the GPL version 3 or later. + * \date April 2014 + * \version 1.1 Driver + * \version Linux 3.4.0 +*/ + +#include "adpd142.h" +#ifdef CONFIG_OF +#include +#endif + +static int dbg_enable; + +module_param(dbg_enable, int, S_IRUGO | S_IWUSR); + +/* ADPD142 driver version*/ +#define ADPD142_VERSION "1.2" +/* ADPD142 release date*/ +#define ADPD142_RELEASE_DATE "Tue Apr 22 12:11:42 IST 2014" + + +#define ADPD_DEV_NAME "adpd142" + +/*INPUT DEVICE NAME LIST*/ +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "ADPD142RI" +#define VENDOR "ADI" + +#define MAX_EOL_RESULT 132 + +/*I2C RELATED*/ +#define I2C_RETRY_DELAY 5 +#define I2C_RETRIES 5 + +/*ADPD142 DRIVER RELATED*/ +#define MAX_BUFFER 128 +#define GLOBAL_OP_MODE_OFF 0 +#define GLOBAL_OP_MODE_IDLE 1 +#define GLOBAL_OP_MODE_GO 2 + +#define SET_GLOBAL_OP_MODE(val, cmd) ((val & 0xFC) | cmd) + +#define FRM_FILE 0 +#define FRM_ARR 1 +#define EN_FIFO_CLK 0x3B5B +#define DS_FIFO_CLK 0x3050 + +/******************************************************************/ +/**************** ADPD142 USER OPERATING MODE ********************/ +/* +Operating mode defined to user +*/ +#define IDLE_MODE 0x00 +#define SAMPLE_XY_A_MODE 0x30 +#define SAMPLE_XY_AB_MODE 0x31 +#define SAMPLE_XY_B_MODE 0x32 +#define GET_USR_MODE(usr_val) ((usr_val & 0xF0) >> 4) +#define GET_USR_SUB_MODE(usr_val) (usr_val & 0xF) +/******************************************************************/ +/**************** ADPD142 OPERATING MODE & DATA MODE *************/ +#define R_RDATA_FLAG_EN (0x1 << 15) +#define R_PACK_START_EN (0x0 << 14) +#define R_RDOUT_MODE (0x0 << 13) +#define R_FIFO_PREVENT_EN (0x1 << 12) +#define R_SAMP_OUT_MODE (0x0 << 9) +#define DEFAULT_OP_MODE_CFG_VAL(cfg_x) (R_RDATA_FLAG_EN + R_PACK_START_EN +\ + R_RDOUT_MODE + R_FIFO_PREVENT_EN+\ + R_SAMP_OUT_MODE) + +#define SET_R_OP_MODE_A(val) ((val & 0xF000) >> 12) +#define SET_R_DATAMODE_A(val) ((val & 0x0F00) >> 8) +#define SET_R_OP_MODE_B(val) ((val & 0x00F0) >> 4) +#define SET_R_DATAMODE_B(val) ((val & 0x000F)) +/** +@brief Used to get the value need to be set for slot-A, B operating mode +and data out mode. +*/ +#define SET_MODE_VALUE(val) (SET_R_OP_MODE_A(val) |\ + (SET_R_DATAMODE_A(val) << 2) |\ + (SET_R_OP_MODE_B(val) << 5) |\ + (SET_R_DATAMODE_B(val) << 6)) +/******************************************************************/ +/**************** ADPD142 INTERRUPT MASK *************************/ +#define INTR_MASK_IDLE_USR 0x0000 +#define INTR_MASK_SAMPLE_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_A_USR 0x0020 +#define INTR_MASK_S_SAMP_XY_AB_USR 0x0040 +#define INTR_MASK_S_SAMP_XY_B_USR 0x0040 +#define SET_INTR_MASK(usr_val) ((~(INTR_MASK_##usr_val)) & 0x1FF) +/******************************************************************/ +/***************** ADPD142 PRINT *********************************/ +#ifdef ADPD_DBG +#define ADPD142_dbg(format, arg...) \ + printk(KERN_DEBUG "ADPD142 : "format, ##arg); +#else +#define ADPD142_dbg(format, arg...) {if (dbg_enable)\ + printk(KERN_DEBUG "ADPD142 : "format, ##arg);\ + } +#endif + +#ifdef ADPD_INFO +#define ADPD142_info(format, arg...) \ + printk(KERN_INFO "ADPD142 : "format, ##arg); +#else +#define ADPD142_info(format, arg...) {if (0)\ + ; } +#endif +/******************************************************************/ +/***************** ADPD142 DIFFERENT MODE ************************/ +/* +Main mode +*/ +#define IDLE_USR 0 +#define SAMPLE_USR 3 + +/* +Sub mode +*/ +#define S_SAMP_XY_A 0 +#define S_SAMP_XY_AB 1 +#define S_SAMP_XY_B 2 +/* +OPERATING MODE ==> MAIN_mode[20:16] | + OP_mode_A[15:12] | + DATA_mode_A[11:8]| + OP_mode_B[7:4] | + DATA_mode_B[3:0] +*/ +#define IDLE_OFF ((IDLE_USR << 16) | (0x0000)) + +#define SAMPLE_XY_A ((SAMPLE_USR << 16) | (0x1400)) +#define SAMPLE_XY_AB ((SAMPLE_USR << 16) | (0x1414)) +#define SAMPLE_XY_B ((SAMPLE_USR << 16) | (0x0014)) + +#define MAX_MODE 4 + +#define MAX_IDLE_MODE 1 +#define MAX_SAMPLE_MODE 3 + +#define MODE(val) __arr_mode_##val +#define MODE_SIZE(val) MAX_##val##_MODE + + +#define MAX_LIB_VER 20 +#define OSC_TRIM_ADDR26_REG 0x26 +#define OSC_TRIM_ADDR28_REG 0x28 +#define OSC_TRIM_ADDR29_REG 0x29 +#define OSC_TRIM_32K_REG 0x4B +#define OSC_TRIM_32M_REG 0x4D +#define OSC_DEFAULT_32K_SET 0x2695 +#define OSC_DEFAULT_32M_SET 0x4272 +#define OSCILLATOR_TRIM_FILE_PATH "/efs/osc_trim" + + + +/** +mode mapping structure used to hold the number mode actually supported by +driver +*/ +struct mode_mapping { + char *name; + int *mode_code; + unsigned int size; +}; +int __arr_mode_IDLE[MAX_IDLE_MODE] = { IDLE_OFF }; +int __arr_mode_SAMPLE[MAX_SAMPLE_MODE] = { SAMPLE_XY_A, + SAMPLE_XY_AB, + SAMPLE_XY_B }; + +struct mode_mapping __mode_recv_frm_usr[MAX_MODE] = { + { + .name = "IDLE", + .mode_code = MODE(IDLE), + .size = MODE_SIZE(IDLE) + }, + { .name = "UNSUPPORTED1", + .mode_code = 0, + .size = 0, + }, + { .name = "UNSUPPORTED2", + .mode_code = 0, + .size = 0, + }, + { + .name = "SAMPLE", + .mode_code = MODE(SAMPLE), + .size = MODE_SIZE(SAMPLE) + } +}; + +/** +general data buffer that is required to store the recieved buffer +*/ +unsigned short data_buffer[MAX_BUFFER] = { 0 }; + +struct wrk_q_timestamp { + struct timeval interrupt_trigger; +}; + +struct adpd142_stats { + atomic_t interrupts; + atomic_t fifo_requires_sync; + atomic_t fifo_bytes[4]; + atomic_t wq_pending; + atomic_t wq_schedule_time_peak_usec; + atomic_t wq_schedule_time_last_usec; + struct ewma wq_schedule_time_avg_usec; + atomic_t data_process_time_peak_usec; + atomic_t data_process_time_last_usec; + struct ewma data_process_time_avg_usec; + struct wrk_q_timestamp stamp; +}; + +/** +structure hold adpd142 chip structure, and parameter used +to control the adpd142 software part. +*/ +struct adpd142_data { + struct i2c_client *client; + struct mutex mutex;/*for chip structure*/ + struct device *dev; + struct input_dev *ptr_sample_inputdev; + struct adpd_platform_data *ptr_config; + + struct work_struct work; + struct workqueue_struct *ptr_adpd142_wq_st; + int irq; + int hrm_int; + + unsigned short *ptr_data_buffer; + + struct adpd142_stats stats; + + unsigned short intr_mask_val; + unsigned short intr_status_val; + unsigned short fifo_size; + + /*sysfs register read write */ + unsigned short sysfs_I2C_regaddr; + unsigned short sysfs_I2C_regval; + unsigned short sysfslastreadval; + + atomic_t sample_enabled; + atomic_t adpd_mode; + + int (*read)(struct adpd142_data *, u8 reg_addr, int len, u16 *buf); + int (*write)(struct adpd142_data *, u8 reg_addr, int len, u16 data); + u8 eol_test_is_enable; + u8 eol_test_status; + char *eol_test_result; + char *eol_lib_ver; + char *elf_lib_ver; + + int osc_trim_32K_value; + int osc_trim_32M_value; + int osc_trim_addr26_value; + int osc_trim_addr28_value; + int osc_trim_addr29_value; + u8 osc_trim_open_enable; + + struct regulator *reg_adpd; + struct regulator *vdd_led; + +}; + +/** +structure hold adpd142 configuration data to be written during probe. +*/ +static struct adpd_platform_data adpd142_config_data = { + .config_size = 53, + .config_data = { + 0x00100001, + 0x000100ff, + 0x00020004, + 0x00060000, + 0x00111011, + 0x0012000A, + 0x00130320, + 0x00140449, + 0x00150333, + 0x001C4040, + 0x001D4040, + 0x00181400, + 0x00191400, + 0x001a1650, + 0x001b1000, + 0x001e1ff0, + 0x001f1Fc0, + 0x00201ad0, + 0x00211470, + 0x00233032, + 0x00243035, + 0x002502CC, + 0x00340000, + 0x00260000, + 0x00270800, + 0x00280000, + 0x00294003, + 0x00300330, + 0x00310213, + 0x00421d37, + 0x0043ada5, + 0x003924D2, + 0x00350330, + 0x00360813, + 0x00441d37, + 0x0045ada5, + 0x003b24D2, + 0x00590808, + 0x00320320, + 0x00330113, + 0x003a22d4, + 0x003c0006, + 0x00401010, + 0x0041004c, + 0x004c0004, + 0x004f2090, + 0x00500000, + 0x00523000, + 0x0053e400, + 0x005b1831, + 0x005d1b31, + 0x005e2808, + 0x004e0040, + }, +}; + +/** +This function is used to parse data from the string "0xXXX 1 0xYYY" +@param buf is pointer point constant address +@param cnt store number value need to parse +@param data parse data are stored in it +@return void +*/ +static void +cmd_parsing(const char *buf, unsigned short cnt, unsigned short *data) +{ + char **bp = (char **)&buf; + char *token, minus, parsing_cnt = 0; + int val; + int pos; + + while ((token = strsep(bp, " "))) { + pos = 0; + minus = false; + if ((char)token[pos] == '-') { + minus = true; + pos++; + } + if ((token[pos] == '0') && + (token[pos + 1] == 'x' || token[pos + 1] == 'X')) { + if (kstrtoul(&token[pos + 2], 16, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } else { + if (kstrtoul(&token[pos], 10, + (long unsigned int *)&val)) + val = 0; + if (minus) + val *= (-1); + } + + if (parsing_cnt < cnt) + *(data + parsing_cnt) = val; + else + break; + parsing_cnt++; + } +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@return u16 value present in the register. +*/ +static inline u16 +reg_read(struct adpd142_data *pst_adpd, u16 reg) +{ + u16 value; + if (!pst_adpd->read(pst_adpd, reg, 1, &value)) + return value; + return 0xFFFF; +} + +/** +This function is a inline function mapped to i2c read functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address from which the value need to be read out +@param len number of data need to be readout +@param buf is pointer store the value present in the register. +@return u16 status of i2c read. +*/ +static inline u16 +multi_reg_read(struct adpd142_data *pst_adpd, u16 reg, u16 len, u16 *buf) +{ + return pst_adpd->read(pst_adpd, reg, len, buf); +} + +/** +This function is a inline function mapped to i2c write functionality +@param pst_adpd the ADPD142 data structure +@param reg is the address to which the data need to be written +@param value is the data need to be write. +@return u16 status of i2c write. +*/ +static inline u16 +reg_write(struct adpd142_data *pst_adpd, u16 reg, u16 value) +{ + return pst_adpd->write(pst_adpd, reg, 1, value); +} + +/** +This function is used for I2C read from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 status of i2c read. +*/ +static u16 +adpd142_sysfs_I2C_read(struct adpd142_data *pst_adpd) +{ + return reg_read(pst_adpd, pst_adpd->sysfs_I2C_regaddr); +} + +/** +This function is used for I2C write from the sysfs +file system of the ADPD142 Chip +@param pst_adpd the ADPD142 data structure +@return u16 the bytes of written data. +*/ +static u16 +adpd142_sysfs_I2C_write(struct adpd142_data *pst_adpd) +{ + u16 err; + err = reg_write(pst_adpd, pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + if (err) + return 0xFFFF; + else + return pst_adpd->sysfs_I2C_regval; +} + +/** +This function is used to parse string +@param recv_buf pointer point a string +@return int +*/ +static int +parse_data(char *recv_buf) +{ + char **bp = (char **)&recv_buf; + char *token, parsing_cnt = 0; + long val; + int test_data; + unsigned int data = 0; + int ret = 0; + char test[10] = {'\0'}; + + while ((token = strsep(bp, " \t"))) { + memset(test, '\0', 10); + memcpy(test, token, strlen(token)); + memmove(test+2, test, strlen(test)); + test[0] = '0'; + test[1] = 'x'; + ret = kstrtol(test, 0, &val); + if (ret) { + if (ret == -ERANGE) { + ADPD142_info("out of range\n"); + val = 0; + } + if (ret == -EINVAL) { + ADPD142_info("parsing error\n"); + sscanf(test, "%x", &test_data); + val = test_data; + } + } + + if (parsing_cnt == 0) { + data = (int) (0xFF & val); + if (data == 0) + return -1; + } + if (parsing_cnt == 1) { + data = data << 16; + data |= (0xFFFF & val); + } + parsing_cnt++; + if (parsing_cnt > 2) + break; + } + return data; +} + +/** +This function is used for reading configuration file +@param pst_adpd the ADPD142 data structure +@return int status of the configuration file. +*/ +static int +adpd142_read_config_file(struct adpd142_data *pst_adpd) +{ + mm_segment_t old_fs; + struct file *fpt_adpd = NULL; + struct adpd_platform_data *ptr_config = NULL; + int line_cnt = 0; + int start = 0; + int cnt = 0; + int ret = 0; + int i = 0; + char get_char; + char *recieved_buf = NULL; + loff_t pos = 0; + ptr_config = pst_adpd->ptr_config; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + fpt_adpd = filp_open("/data/misc/adpd142_config.dcfg", O_RDONLY, 0666); + if (IS_ERR(fpt_adpd)) { + ADPD142_dbg("unable to find de file %ld\n", PTR_ERR(fpt_adpd)); + set_fs(old_fs); + ret = /*PTR_ERR(fpt_adpd_filp); */ -1; + ptr_config->config_size = 0; + goto err_filp_open; + } + + recieved_buf = kzalloc(sizeof(char) * 15, GFP_KERNEL); + memset(recieved_buf, '\0', sizeof(recieved_buf)); + + while (vfs_read(fpt_adpd, &get_char, sizeof(char), &pos)) { + if (get_char == '\n') { + line_cnt++; + if (cnt > 1) { + ret = parse_data(recieved_buf); + if (ret == -1) { + ADPD142_dbg("Error in reading dcfg\n"); + break; + } + ADPD142_info("0x%08x\n", ret); + ptr_config->config_data[i] = ret; + i++; + } + memset(recieved_buf, '\0', sizeof(recieved_buf)); + start = 0; + cnt = 0; + ret = 0; + } else { + if (get_char != '#') { + if (start != 0xF) { + recieved_buf[cnt] = get_char; + cnt++; + } + } else { + start = 0xF; + } + } + } + + filp_close(fpt_adpd, NULL); + + set_fs(old_fs); + kfree(recieved_buf); + ptr_config->config_size = i; + return 0; +err_filp_open: + return -1; +} + +/** +This function is used for reading interrupt and FIFO status +@param pst_adpd the ADPD142 data structure +@return unsigned short interrupt status value +*/ +static unsigned short +adpd142_rd_intr_fifo(struct adpd142_data *pst_adpd) +{ + unsigned short regval = 0; + unsigned short fifo_size = 0; + unsigned short usr_mode = 0; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + fifo_size = ((regval & 0xFF00) >> 8); + pst_adpd->fifo_size = ((fifo_size / 2) + (fifo_size & 1)); + pst_adpd->intr_status_val = (regval & 0xFF); + + ADPD142_info("Intr_status 0x%x, FIFO_SIZE 0x%x\n", + pst_adpd->intr_status_val, pst_adpd->fifo_size); + + if (fifo_size <= 16) + atomic_inc(&pst_adpd->stats.fifo_bytes[0]); + else if (fifo_size <= 32) + atomic_inc(&pst_adpd->stats.fifo_bytes[1]); + else if (fifo_size <= 64) + atomic_inc(&pst_adpd->stats.fifo_bytes[2]); + else + atomic_inc(&pst_adpd->stats.fifo_bytes[3]); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + if (0 != usr_mode) { + unsigned int mask = 0; + unsigned int mod = 0; + + switch (GET_USR_SUB_MODE(usr_mode)) { + case S_SAMP_XY_AB: + mask = 0x07; + break; + default: + mask = 0x03; + break; + }; + + mod = pst_adpd->fifo_size & mask; + if (mod) { + ADPD142_info("Keeping %d samples in FIFO from %d\n", + mod, pst_adpd->fifo_size); + pst_adpd->fifo_size &= ~mask; + atomic_inc(&pst_adpd->stats.fifo_requires_sync); + } + } + + return pst_adpd->intr_status_val; +} + +/** +This function is used for clearing the Interrupt as well as FIFO +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_clr_intr_fifo(struct adpd142_data *pst_adpd) +{ + /*below code is added for verification */ + unsigned short regval; + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); + + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, 0x80FF); + regval = reg_read(pst_adpd, ADPD_INT_STATUS_ADDR); + ADPD142_info("After clear - fifo_size: 0x%04x, Status: 0x%x\n", + ((regval & 0xFF00) >> 8), (regval & 0xFF)); +} + +/** +This function is used for clearing the Interrupt status +@param pst_adpd the ADPD142 data structure +@param mode operating mode of ADPD142 +@return void +*/ +static void +adpd142_clr_intr_status(struct adpd142_data *pst_adpd, unsigned short mode) +{ + reg_write(pst_adpd, ADPD_INT_STATUS_ADDR, + pst_adpd->intr_status_val); +} + +/** +This function is used to read out FIFO data from FIFO +@param pst_adpd the ADPD142 data structure +@return unsigned int FIFO size +*/ +static unsigned int +adpd142_rd_fifo_data(struct adpd142_data *pst_adpd) +{ + int loop_cnt = 0; + + if (!pst_adpd->fifo_size) + goto err_rd_fifo_data; + + if (0 != atomic_read(&pst_adpd->adpd_mode) && + pst_adpd->fifo_size & 0x3) { + pr_err("Unexpected FIFO_SIZE=%d,\ + should be multiple of four (channels)!\n", + pst_adpd->fifo_size); + } + +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0001);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, EN_FIFO_CLK); + multi_reg_read(pst_adpd, ADPD_DATA_BUFFER_ADDR, + pst_adpd->fifo_size, pst_adpd->ptr_data_buffer); +/* reg_write(pst_adpd, ADPD_ACCESS_CTRL_ADDR, 0x0000);*/ + reg_write(pst_adpd, ADPD_TEST_PD_ADDR, DS_FIFO_CLK); + + for (; loop_cnt < pst_adpd->fifo_size; loop_cnt++) { + ADPD142_info("[0x%04x] 0x%04x\n", loop_cnt, + pst_adpd->ptr_data_buffer[loop_cnt]); + } + return pst_adpd->fifo_size; +err_rd_fifo_data: + return 0; +} + +/** +This function is a thing need to configure before changing the register +@param pst_adpd the ADPD142 data structure +@param global_mode OFF, IDLE, GO are the three mode +@return void +*/ +static void +adpd142_config_prerequisite(struct adpd142_data *pst_adpd, u32 global_mode) +{ + unsigned short regval = 0; + regval = reg_read(pst_adpd, ADPD_OP_MODE_ADDR); + regval = SET_GLOBAL_OP_MODE(regval, global_mode); + ADPD142_info("reg 0x%04x,\tafter set 0x%04x\n", + regval, SET_GLOBAL_OP_MODE(regval, global_mode)); + reg_write(pst_adpd, ADPD_OP_MODE_ADDR, regval); +} + +/** +This function is used for switching the adpd142 mode +@param pst_adpd the ADPD142 data structure +@param usr_mode user mode +@return void +*/ +static void +adpd142_mode_switching(struct adpd142_data *pst_adpd, u32 usr_mode) +{ + unsigned int opmode_val = 0; + unsigned short mode_val = 0; + unsigned short intr_mask_val = 0; + + unsigned short mode = GET_USR_MODE(usr_mode); + unsigned short sub_mode = GET_USR_SUB_MODE(usr_mode); + /*disabling further avoid further interrupt to trigger */ + disable_irq(pst_adpd->irq); + + /*stop the pending work */ + /*this function Gurantee that wrk is not pending or executing on CPU */ + cancel_work_sync(&pst_adpd->work); + + atomic_set(&pst_adpd->adpd_mode, 0); + mutex_lock(&pst_adpd->mutex); + + /*Depending upon the mode get the value need to write Operatin mode*/ + opmode_val = *(__mode_recv_frm_usr[mode].mode_code + (sub_mode)); + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*switch to IDLE mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + mode_val += SET_MODE_VALUE(IDLE_OFF); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, intr_mask_val); + + /*clear FIFO and flush buffer */ + adpd142_clr_intr_fifo(pst_adpd); + adpd142_rd_intr_fifo(pst_adpd); + if (pst_adpd->fifo_size != 0) { + adpd142_clr_intr_status(pst_adpd, IDLE_USR); + ADPD142_info("Flushing FIFO\n"); + adpd142_rd_fifo_data(pst_adpd); + } + + + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + msleep(20); + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_IDLE); + + /*Find Interrupt mask value */ + switch (mode) { + case IDLE_USR: + ADPD142_info("IDLE MODE\n"); + intr_mask_val = SET_INTR_MASK(IDLE_USR); + atomic_set(&pst_adpd->sample_enabled, 0); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + /*enable interrupt only when data written to FIFO */ + switch (sub_mode) { + case S_SAMP_XY_A: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_A_USR); + break; + case S_SAMP_XY_AB: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_AB_USR); + break; + case S_SAMP_XY_B: + intr_mask_val = SET_INTR_MASK(S_SAMP_XY_B_USR); + break; + default: + intr_mask_val = SET_INTR_MASK(SAMPLE_USR); + break; + }; + intr_mask_val |= 0xC000; + atomic_set(&pst_adpd->sample_enabled, 1); + break; + default: + /*This case won't occur */ + ADPD142_dbg("invalid mode\n"); + break; + }; + + ADPD142_info("INT_MASK_ADDR[0x%04x] = 0x%04x\n", ADPD_INT_MASK_ADDR, + intr_mask_val); + pst_adpd->intr_mask_val = intr_mask_val; + + /*Fetch Default opmode configuration other than OP mode + and DATA_OUT mode */ + mode_val = DEFAULT_OP_MODE_CFG_VAL(pst_adpd); + /*Get Mode value from the opmode value, + to hardocde the macro, change SET_MODE_VALUE macro and concern + mode macro + */ + mode_val += SET_MODE_VALUE(opmode_val); + + ADPD142_info("OP_MODE_CFG[0x%04x] = 0x%04x\n", + ADPD_OP_MODE_CFG_ADDR, mode_val); + + atomic_set(&pst_adpd->adpd_mode, usr_mode); + + reg_write(pst_adpd, ADPD_INT_MASK_ADDR, pst_adpd->intr_mask_val); + reg_write(pst_adpd, ADPD_OP_MODE_CFG_ADDR, mode_val); + + mutex_unlock(&pst_adpd->mutex); + + enable_irq(pst_adpd->irq); + + if (mode != IDLE_USR) + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_GO); + else + adpd142_config_prerequisite(pst_adpd, GLOBAL_OP_MODE_OFF); +} + +/** +This function is used for sending Sample event depend upon +the Sample mode +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_sample_event(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short sub_mode = 0; + unsigned short cnt = 0; + + ADPD142_info("%s\n", __func__); + + usr_mode = atomic_read(&pst_adpd->adpd_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + switch (sub_mode) { + case S_SAMP_XY_A: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + + case S_SAMP_XY_AB: + if (pst_adpd->fifo_size < 8 || (pst_adpd->fifo_size & 0x7)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 8) { + unsigned int channel; + unsigned int sum_slot_a = 0; + unsigned int sum_slot_b = 0; + + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Z, sub_mode + 1); + + for (channel = 0; channel < 4; ++channel) { + sum_slot_a += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_X, sum_slot_a + 1); + + for (channel = 4; channel < 8; ++channel) { + sum_slot_b += + pst_adpd->ptr_data_buffer[cnt+channel]; + input_event(pst_adpd->ptr_sample_inputdev, + EV_MSC, MSC_RAW, pst_adpd->ptr_data_buffer[cnt+channel] + 1); + } + input_event(pst_adpd->ptr_sample_inputdev, + EV_REL, REL_Y, sum_slot_b + 1); + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + case S_SAMP_XY_B: + if (pst_adpd->fifo_size < 4 || (pst_adpd->fifo_size & 0x3)) { + pr_err("Unexpected FIFO_SIZE=%d\n", + pst_adpd->fifo_size); + break; + } + + for (cnt = 0; cnt < pst_adpd->fifo_size; cnt += 4) { + input_event(pst_adpd->ptr_sample_inputdev, EV_REL, + REL_Z, + sub_mode + 1); + + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 1] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 2] + 1); + input_event(pst_adpd->ptr_sample_inputdev, EV_MSC, + MSC_RAW, + pst_adpd->ptr_data_buffer[cnt + 3] + 1); + + input_sync(pst_adpd->ptr_sample_inputdev); + } + break; + default: + break; + }; +} + +/** +This function is used for handling FIFO when interrupt occured +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_data_handler(struct adpd142_data *pst_adpd) +{ + unsigned short usr_mode = 0; + unsigned short mode = 0; + unsigned short sub_mode = 0; + mutex_lock(&pst_adpd->mutex); + usr_mode = atomic_read(&pst_adpd->adpd_mode); + mode = GET_USR_MODE(usr_mode); + sub_mode = GET_USR_SUB_MODE(usr_mode); + + ADPD142_info("mode - 0x%x,\t sub_mode - 0x%x\n", mode, sub_mode); + adpd142_rd_intr_fifo(pst_adpd); + + if (pst_adpd->intr_status_val == 0) { + mutex_unlock(&pst_adpd->mutex); + return; + } + + adpd142_clr_intr_status(pst_adpd, mode); + + switch (mode) { + case IDLE_USR: + ADPD142_dbg("IDLE_MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + case SAMPLE_USR: + ADPD142_info("SAMPLE MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + adpd142_sample_event(pst_adpd); + break; + default: + ADPD142_info("DEFAULT MODE\n"); + adpd142_rd_fifo_data(pst_adpd); + break; + }; + + mutex_unlock(&pst_adpd->mutex); +} + +/** +This function is a handler for WorkQueue +@param ptr_work linux work structure +@return void +*/ +static void +adpd142_wq_handler(struct work_struct *ptr_work) +{ + + struct adpd142_data *pst_adpd = container_of(ptr_work, + struct adpd142_data, work); + + struct timeval wkq_start; + struct timeval wkq_comp; + int diff_usec = 0; + + do_gettimeofday(&wkq_start); + + diff_usec = timeval_compare(&wkq_start, + &pst_adpd->stats.stamp.interrupt_trigger); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read( + &pst_adpd->stats.wq_schedule_time_peak_usec)) + atomic_set( + &pst_adpd->stats.wq_schedule_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.wq_schedule_time_avg_usec, diff_usec); + } + + adpd142_data_handler(pst_adpd); + + do_gettimeofday(&wkq_comp); + + diff_usec = timeval_compare(&wkq_comp, &wkq_start); + + if (diff_usec > 1) { + if (diff_usec > + atomic_read(&pst_adpd->stats.data_process_time_peak_usec)) + atomic_set( + &pst_adpd->stats.data_process_time_peak_usec, + diff_usec); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, + diff_usec); + ewma_add(&pst_adpd->stats.data_process_time_avg_usec, + diff_usec); + } + +} + +/** +This function is used for handling Interrupt from ADPD142 +@param irq is Interrupt number +@param dev_id is pointer point to ADPD142 data structure +@return irqreturn_t is a Interrupt flag +*/ +static irqreturn_t +adpd142_isr_handler(int irq, void *dev_id) +{ + struct adpd142_data *pst_adpd = dev_id; + + atomic_inc(&pst_adpd->stats.interrupts); + + if (!work_pending(&pst_adpd->work)) { + do_gettimeofday(&pst_adpd->stats.stamp.interrupt_trigger); + ADPD142_info("%s\n", __func__); + if (!queue_work(pst_adpd->ptr_adpd142_wq_st, &pst_adpd->work)) + atomic_inc(&pst_adpd->stats.wq_pending); + } else { + atomic_inc(&pst_adpd->stats.wq_pending); + ADPD142_info("work_pending !!\n"); + } + return IRQ_HANDLED; +} + +/** +This function is used for updating the ADPD142 structure after configuration +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd142_update_config(struct adpd142_data *pst_adpd) +{ + return; +} + +/** +This function is used for loading the configuration data to ADPD142 chip +0 - From file "/data/misc/adpd142_configuration.dcfg" +1 - From Static defined Array +@param pst_adpd the ADPD142 data structure +@param config configuration command +@return int status +*/ +static int +adpd142_configuration(struct adpd142_data *pst_adpd, unsigned char config) +{ + struct adpd_platform_data *ptr_config; + unsigned short addr; + unsigned short data; + unsigned short cnt = 0; + int ret = 0; + adpd142_mode_switching(pst_adpd, 0); + if (config == FRM_FILE) { + ret = adpd142_read_config_file(pst_adpd); + ADPD142_info("ARRAY_SIZE - %d\n", size); + } else { + ret = FRM_ARR; + } + if (ret == 0) + ptr_config = pst_adpd->ptr_config; + else + ptr_config = &adpd142_config_data; + + for (cnt = 0; cnt < ptr_config->config_size; cnt++) { + addr = (unsigned short) ((0xFFFF0000 & + ptr_config->config_data[cnt]) >> 16); + data = (unsigned short) (0x0000FFFF & + ptr_config->config_data[cnt]); + + ADPD142_dbg("addr[0x%04x] = 0x%04x\n", addr, data); + reg_write(pst_adpd, addr, data); + } + + adpd142_update_config(pst_adpd); + + return 0; +} + +/* read & write efs for hrm sensor */ + +static int osc_trim_efs_register_open(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + char buffer[60] = {0, }; + int err = 0; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + mm_segment_t old_fs; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(osc_filp)) { + err = PTR_ERR(osc_filp); + if (err != -ENOENT) + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + return err; + } + + err = osc_filp->f_op->read(osc_filp, + (char *)buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't read the oscillator trim data from file\n", __func__); + err = -EIO; + } + sscanf(buffer, "%d,%d,%d,%d,%d", + &osc_trim_32k, &osc_trim_32m, &osc_trim_addr26, &osc_trim_addr28, &osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + +static int osc_trim_efs_register_save(struct adpd142_data *pst_adpd) +{ + struct file *osc_filp = NULL; + mm_segment_t old_fs; + char buffer[60] = {0, }; + int osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29; + int err = 0; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + osc_filp = filp_open(OSCILLATOR_TRIM_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(osc_filp)) { + pr_err("adpd142_%s: Can't open oscillator trim file\n", __func__); + set_fs(old_fs); + err = PTR_ERR(osc_filp); + return err; + } + + osc_trim_32k = reg_read(pst_adpd, OSC_TRIM_32K_REG); + osc_trim_32m = reg_read(pst_adpd, OSC_TRIM_32M_REG); + osc_trim_addr26 = reg_read(pst_adpd, OSC_TRIM_ADDR26_REG); + osc_trim_addr28 = reg_read(pst_adpd, OSC_TRIM_ADDR28_REG); + osc_trim_addr29 = reg_read(pst_adpd, OSC_TRIM_ADDR29_REG); + + sprintf(buffer, "%d,%d,%d,%d,%d", + osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + pr_info("adpd142_%s = (%d,%d,%d,%d,%d)\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + + err = osc_filp->f_op->write(osc_filp, + (char *)&buffer, + 60 * sizeof(char), &osc_filp->f_pos); + if (err != (60 * sizeof(char))) { + pr_err("adpd142_%s: Can't write the oscillator trim data to file\n", __func__); + err = -EIO; + } + pst_adpd->osc_trim_32K_value = osc_trim_32k; + pst_adpd->osc_trim_32M_value = osc_trim_32m; + pst_adpd->osc_trim_addr26_value = osc_trim_addr26; + pst_adpd->osc_trim_addr28_value = osc_trim_addr28; + pst_adpd->osc_trim_addr29_value = osc_trim_addr29; + + filp_close(osc_filp, current->files); + set_fs(old_fs); + + return err; +} + + +/** +This function clears all the statistic counters. +@param pst_adpd the ADPD142 data structure +@return void +*/ +static void +adpd_stat_reset(struct adpd142_data *pst_adpd) +{ + atomic_set(&pst_adpd->stats.interrupts, 0); + atomic_set(&pst_adpd->stats.wq_pending, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.wq_schedule_time_last_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_peak_usec, 0); + atomic_set(&pst_adpd->stats.data_process_time_last_usec, 0); + atomic_set(&pst_adpd->stats.fifo_requires_sync, 0); + atomic_set(&pst_adpd->stats.fifo_bytes[0], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[1], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[2], 0); + atomic_set(&pst_adpd->stats.fifo_bytes[3], 0); + ewma_init(&pst_adpd->stats.wq_schedule_time_avg_usec, 2048, 128); + ewma_init(&pst_adpd->stats.data_process_time_avg_usec, 2048, 128); +} + +/* SAMPLE - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the sample enable bit +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +sample_attr_get_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->sample_enabled); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for enabling the Sample mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +sample_attr_set_enable(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + unsigned short osc_trim_32k, osc_trim_32m; + unsigned short osc_trim_addr26 = 0, osc_trim_addr28 = 0, osc_trim_addr29 = 0; + int err; + + int val; + int n = sscanf(buf, "%d", &val); + (void)n; + memset(parse_data, 0, sizeof(parse_data)); + + if (pst_adpd->osc_trim_open_enable == 1) { + err = osc_trim_efs_register_open(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_open() empty(%d)\n", __func__, err); + osc_trim_32k = OSC_DEFAULT_32K_SET; + osc_trim_32m = OSC_DEFAULT_32M_SET; + } else { + osc_trim_32k = (unsigned short)pst_adpd->osc_trim_32K_value; + osc_trim_32m = (unsigned short)pst_adpd->osc_trim_32M_value; + osc_trim_addr26 = (unsigned short)pst_adpd->osc_trim_addr26_value; + osc_trim_addr28 = (unsigned short)pst_adpd->osc_trim_addr28_value; + osc_trim_addr29 = (unsigned short)pst_adpd->osc_trim_addr29_value; + + reg_write(pst_adpd, OSC_TRIM_ADDR26_REG, osc_trim_addr26); + reg_write(pst_adpd, OSC_TRIM_ADDR28_REG, osc_trim_addr28); + reg_write(pst_adpd, OSC_TRIM_ADDR29_REG, osc_trim_addr29); + } + pr_info("adpd142_%s = 32K[%02x], 32M[%02x], addr26[%02x], addr28[%02x], addr29[%02x]\n", + __func__, osc_trim_32k, osc_trim_32m, osc_trim_addr26, osc_trim_addr28, osc_trim_addr29); + reg_write(pst_adpd, OSC_TRIM_32K_REG, osc_trim_32k); + reg_write(pst_adpd, OSC_TRIM_32M_REG, osc_trim_32m); + pst_adpd->osc_trim_open_enable = 0; + } + + if (val == 1) { + pr_info("adpd142_%s_enable.\n", __func__); + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_enable(pst_adpd->vdd_led); + cmd_parsing("0x31", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 1); + } else { + if (!IS_ERR(pst_adpd->vdd_led)) + regulator_disable(pst_adpd->vdd_led); + + cmd_parsing("0x0", 1, parse_data); + atomic_set(&pst_adpd->sample_enabled, 0); + } + mode = GET_USR_MODE(parse_data[0]); + + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + return size; +} + +/* GENERAL - SYSFS ATTRIBUTE*/ +/** +This function is used for getting the status of the adpd_mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_get_mode(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int val = atomic_read(&pst_adpd->adpd_mode); + return sprintf(buf, "%d\n", val); +} + +/** +This function is used for switching ADPD142 mode +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_set_mode(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[2]; + unsigned short mode = 0; + + memset(parse_data, 0, sizeof(parse_data)); + cmd_parsing(buf, 1, parse_data); + + ADPD142_info("Mode requested 0x%02x\n", parse_data[0]); + pr_info("adpd142_%s = data0[%02x], data1[%02x]\n", __func__, parse_data[0], parse_data[1]); + mode = GET_USR_MODE(parse_data[0]); + if (GET_USR_MODE(parse_data[0]) < MAX_MODE) { + if ((GET_USR_SUB_MODE(parse_data[0])) < + __mode_recv_frm_usr[mode].size) { + adpd142_mode_switching(pst_adpd, parse_data[0]); + } else { + ADPD142_dbg("Sub mode Out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + } else { + ADPD142_dbg("Mode out of bound\n"); + adpd142_mode_switching(pst_adpd, 0); + } + + return size; +} + +/** +This function is used for reading the register value +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_reg_read_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + ADPD142_dbg("Regval: 0x%4x\n", pst_adpd->sysfslastreadval); + return sprintf(buf, "0x%04x\n", pst_adpd->sysfslastreadval); +} + +/** +This function is used for writing the register for reading back +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_read_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short addr, cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 2, parse_data); + addr = parse_data[0]; + cnt = parse_data[1]; + + mutex_lock(&pst_adpd->mutex); + + pst_adpd->sysfs_I2C_regaddr = addr; + + ret = adpd142_sysfs_I2C_read(pst_adpd); + if (ret != (-1)) { + ADPD142_dbg("RegRead_Store: addr = 0x%04X,value = 0x%04X\n", + addr, ret); + pst_adpd->sysfslastreadval = ret; + } else { + ADPD142_dbg("%s Error\n", __func__); + pst_adpd->sysfslastreadval = (unsigned short) -1; + } + + mutex_unlock(&pst_adpd->mutex); + return size; +} + +void adpd_power_enable(struct adpd142_data *info, bool onoff) +{ + int ret; + + pr_info("%s: %s\n", __func__, onoff ? "on" : "off"); + + if (!info->vdd_led) { + info->vdd_led = regulator_get(&info->client->dev,"adpd_led"); + if (IS_ERR(info->vdd_led)) { + dev_err(&info->client->dev,"Regulator(adpd_led) get failed rc = %ld\n", PTR_ERR(info->vdd_led)); + return; + } + ret = regulator_set_voltage(info->vdd_led,3300000, 3300000); + if (ret) { + dev_err(&info->client->dev, + "regulator(vdd_led) set_vtg failed rc=%d\n", ret); + return; + } + } + if (!info->reg_adpd) { + info->reg_adpd = regulator_get(&info->client->dev,"adpd_vreg"); + if (IS_ERR(info->reg_adpd)) { + dev_err(&info->client->dev,"Regulator(adpd_vreg) get failed rc = %ld\n", PTR_ERR(info->reg_adpd)); + return; + } + } + + if (onoff) { + if (!regulator_is_enabled(info->vdd_led)) { + ret = regulator_enable(info->vdd_led); + if (ret) { + pr_err("%s: enable vdd_led failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] on is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already on.\n",__func__); + + if (!regulator_is_enabled(info->reg_adpd)) { + ret = regulator_enable(info->reg_adpd); + if (ret) { + pr_err("%s: enable adpd_vreg failed, rc=%d\n",__func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] on is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already on.\n",__func__); + + + } else { + if (regulator_is_enabled(info->vdd_led)) { + ret = regulator_disable(info->vdd_led); + if (ret) { + pr_err("%s: disable vdd_led failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_LED 3.3V[vdd_led] off is finished.\n",__func__); + } else + pr_info("%sHRM_LED 3.3V[vdd_led] is already off.\n",__func__); + + if (regulator_is_enabled(info->reg_adpd)) { + ret = regulator_disable(info->reg_adpd); + if (ret) { + pr_err("%s: disable adpd_vreg failed, rc=%d\n", + __func__, ret); + return; + } + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] off is finished.\n",__func__); + } else + pr_info("%sHRM_adpd_vreg 1.8V[adpd_vreg] is already off.\n",__func__); + + } +} + +static int adpd_parse_dt(struct adpd142_data *data, struct device *dev) +{ + struct device_node *this_node= dev->of_node; + enum of_gpio_flags flags; + int rc; + + if (this_node == NULL) + return -ENODEV; + + data->hrm_int = of_get_named_gpio_flags(this_node,"adpd142,irq_gpio", 0, &flags); + pr_err("%s : get hrm_int(data->hrm_int)(%d) \n", __func__, data->hrm_int); + if (data->hrm_int < 0) { + pr_err("%s : get hrm_int(%d) error\n", __func__, data->hrm_int); + return -ENODEV; + } + + rc = gpio_request(data->hrm_int, "hrm_int"); + if (rc) { + pr_err("%s - failed to request hrm_int\n", __func__); + goto err_int_gpio_req; + } + + rc = gpio_direction_input(data->hrm_int); + if (rc) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_int_gpio_direction_input; + } + + return 0; +err_int_gpio_direction_input: + gpio_free(data->hrm_int); +err_int_gpio_req: + return rc; +} + + +/** +This function is used for writing a particular data to the register +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_reg_write_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short cnt; + unsigned short parse_data[4]; + unsigned short ret; + + memset(parse_data, 0, sizeof(unsigned short) * 4); + cmd_parsing(buf, 3, parse_data); + if (parse_data[1] != 1) { + ADPD142_dbg("few many argument!!\n"); + goto err_reg_write_argument; + } + + pst_adpd->sysfs_I2C_regaddr = parse_data[0]; + cnt = parse_data[1]; + pst_adpd->sysfs_I2C_regval = parse_data[2]; + mutex_lock(&pst_adpd->mutex); + ret = adpd142_sysfs_I2C_write(pst_adpd); + if (ret == pst_adpd->sysfs_I2C_regval) { + ADPD142_dbg("Reg[0x%04x] = 0x%04x\n", + pst_adpd->sysfs_I2C_regaddr, + pst_adpd->sysfs_I2C_regval); + } else { + ADPD142_dbg("Reg write error!!\n"); + } + + adpd142_update_config(pst_adpd); + + mutex_unlock(&pst_adpd->mutex); +err_reg_write_argument: + return size; +} + +/** +This function is used for getting the status of configuration +TBD +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_config_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "status of config thread\n"); +} + +/** +This function is used for wrting the configuration value to the register +0 - write the configuration data present in file to ADPD142 +1 - write the configuration data present in Array to ADPD142 +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_config_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == FRM_ARR) + adpd142_configuration(pst_adpd, FRM_ARR); + else if (parse_data[0] == FRM_FILE) + adpd142_configuration(pst_adpd, FRM_FILE); + else + ADPD142_dbg("set 1 to config\n"); + return size; +} + + +/** +This function is used for getting the status of adpd142 and driver +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@return ssize_t size of data presnt in the buffer +*/ +static ssize_t +attr_stat_get(struct device *dev, struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned int interrupts = atomic_read(&pst_adpd->stats.interrupts); + unsigned int wq_pending = atomic_read(&pst_adpd->stats.wq_pending); + unsigned int wq_schedule_time_peak_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_peak_usec); + unsigned int wq_schedule_time_last_usec = + atomic_read(&pst_adpd->stats.wq_schedule_time_last_usec); + unsigned int data_process_time_peak_usec = + atomic_read(&pst_adpd->stats.data_process_time_peak_usec); + unsigned int data_process_time_last_usec = + atomic_read(&pst_adpd->stats.data_process_time_last_usec); + + return sprintf(buf, "\ + interrupts : %u\n\ + wq_pending : %u\n\ + wq_schedule_time_peak_usec : %u\n\ + wq_schedule_time_avg_usec : %d\n\ + wq_schedule_time_last_usec : %u\n\ + data_process_time_peak_usec : %u\n\ + data_process_time_avg_usec : %d\n\ + data_process_time_last_usec : %u\n\ + fifo_requires_sync : %d\n\ + fifo bytes history : [%d %d %d %d]\n\ + ADPD142 driver version : %s\n\ + ADPD142 Release date : %s\n", + + interrupts, wq_pending, + wq_schedule_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.wq_schedule_time_avg_usec), + wq_schedule_time_last_usec, + data_process_time_peak_usec, + (int)ewma_read(&pst_adpd->stats.data_process_time_avg_usec), + data_process_time_last_usec, + atomic_read(&pst_adpd->stats.fifo_requires_sync), + atomic_read(&pst_adpd->stats.fifo_bytes[0]), + atomic_read(&pst_adpd->stats.fifo_bytes[1]), + atomic_read(&pst_adpd->stats.fifo_bytes[2]), + atomic_read(&pst_adpd->stats.fifo_bytes[3]), + ADPD142_VERSION, + ADPD142_RELEASE_DATE); + +} + +#define ADPD142_STAT_RESET 1 + +/** +This function is used for wrting the adpd stat value to zero +@param dev linux device structure +@param attr pointer point linux device_attribute structure +@param buf pointer point the buffer +@param size buffer size +@return ssize_t size of data written to the buffer +*/ +static ssize_t +attr_stat_set(struct device *dev, struct device_attribute *attr, + const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + unsigned short parse_data[1]; + + memset(parse_data, 0, sizeof(unsigned short) * 1); + cmd_parsing(buf, 1, parse_data); + + if (parse_data[0] == ADPD142_STAT_RESET) { + ADPD142_dbg("Resetting statistics\n"); + adpd_stat_reset(pst_adpd); + } + + return size; +} + +/** +array of sample attributes +*/ +static struct device_attribute sample_attributes[] = { + __ATTR(enable, 0664, sample_attr_get_enable, sample_attr_set_enable), +}; + + +/** +This function is used for creating sysfs attribute for sample +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + if (device_create_file(dev, sample_attributes + i)) + goto err_sysfs_interface_sample; + return 0; +err_sysfs_interface_sample: + for (; i >= 0; i--) + device_remove_file(dev, sample_attributes + i); + dev_err(dev, "%s:Unable to create interface\n", __func__); + return -1; +} + +/** +This function is used for removing sysfs attribute for sample +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces_sample(struct device *dev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(sample_attributes); i++) + device_remove_file(dev, sample_attributes + i); +} + +/** +This function is used for creating sysfs attribute +@param dev linux device structure +@return int status of attribute creation +*/ +static int +create_sysfs_interfaces(struct device *dev) +{ + return 0; +} + +/** +This function is used for removing sysfs attribute +@param dev linux device structure +@return void +*/ +static void +remove_sysfs_interfaces(struct device *dev) +{ + +} + +/** +This function is used for registering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of this function +*/ +static s32 +adpd142_input_init_sample(struct adpd142_data *pst_adpd) +{ + int err; + pst_adpd->ptr_sample_inputdev = input_allocate_device(); + if (!pst_adpd->ptr_sample_inputdev) { + err = -ENOMEM; + dev_err(&pst_adpd->client->dev, "input dev allocation fail\n"); + goto err_sample_allocate; + } + + pst_adpd->ptr_sample_inputdev->name = MODULE_NAME_HRM; + input_set_drvdata(pst_adpd->ptr_sample_inputdev, pst_adpd); + + __set_bit(EV_MSC, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(EV_REL, pst_adpd->ptr_sample_inputdev->evbit); + __set_bit(MSC_RAW, pst_adpd->ptr_sample_inputdev->mscbit); + __set_bit(REL_X, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Y, pst_adpd->ptr_sample_inputdev->relbit); + __set_bit(REL_Z, pst_adpd->ptr_sample_inputdev->relbit); + + err = input_register_device(pst_adpd->ptr_sample_inputdev); + if (err) { + dev_err(&pst_adpd->client->dev, + "unable to register input dev %s\n", + pst_adpd->ptr_sample_inputdev->name); + goto err_sample_register_failed; + } + + err = sensors_create_symlink(&pst_adpd->ptr_sample_inputdev->dev.kobj, + pst_adpd->ptr_sample_inputdev->name); + if (err < 0) { + pr_err("[HRM] %s: create_symlink error\n", __func__); + goto err_sample_register_failed; + } + + return 0; +err_sample_register_failed: + input_free_device(pst_adpd->ptr_sample_inputdev); +err_sample_allocate: + return err; +} + +/** +This function is used for unregistering input event for Sample +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup_sample(struct adpd142_data *pst_adpd) +{ + input_set_drvdata(pst_adpd->ptr_sample_inputdev, NULL); + input_unregister_device(pst_adpd->ptr_sample_inputdev); + input_free_device(pst_adpd->ptr_sample_inputdev); +} + +/** +This function is used for registering input event for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the function +*/ +static s32 +adpd142_input_init(struct adpd142_data *pst_adpd) +{ + return adpd142_input_init_sample(pst_adpd); +} + +/** +This function is used for unregistering input event done for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_input_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_input_cleanup_sample(pst_adpd); +} + +/** +This function is used for registering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return s32 status of the called function +*/ +static s32 +adpd142_sysfs_init(struct adpd142_data *pst_adpd) +{ + if (create_sysfs_interfaces(&pst_adpd->client->dev)) + goto err_sysfs_create_gen; + + if (create_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev)) + goto err_sysfs_create_sample; + + return 0; +err_sysfs_create_sample: + + remove_sysfs_interfaces(&pst_adpd->client->dev); +err_sysfs_create_gen: + return -1; +} + +/** +This function is used for unregistering sysfs attribute for ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_sysfs_cleanup(struct adpd142_data *pst_adpd) +{ + remove_sysfs_interfaces(&pst_adpd->client->dev); + remove_sysfs_interfaces_sample(&pst_adpd->ptr_sample_inputdev->dev); +} + +/** +This function is used for assigning initial assignment value to +ADPD142 data structure +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_struct_assign(struct adpd142_data *pst_adpd) +{ + pst_adpd->ptr_data_buffer = data_buffer; +} + +/** +This function is used for initializing ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@param id pointer point i2c device id +@return s32 status of the called function +*/ +static s32 +adpd142_initialization(struct adpd142_data *pst_adpd, + const struct i2c_device_id *id) +{ + int err = 0; + + if (adpd142_input_init(pst_adpd)) { + err = -1; + pr_err("%s err line %d\n", __func__, __LINE__); + goto err_input_init; + } + if (adpd142_sysfs_init(pst_adpd)) { + pr_err("%s err line %d\n", __func__, __LINE__); + err = -1; + goto err_sysfs_init; + } + + adpd142_struct_assign(pst_adpd); + + memset(&pst_adpd->stats, 0, sizeof(pst_adpd->stats)); + adpd_stat_reset(pst_adpd); + + INIT_WORK(&pst_adpd->work, adpd142_wq_handler); + pst_adpd->ptr_adpd142_wq_st = + create_workqueue("adpd142_wq"); + if (!pst_adpd->ptr_adpd142_wq_st) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_wq_creation_init; + } + + if (!pst_adpd->client->irq){ + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + pst_adpd->hrm_int = pst_adpd->client->irq; + pst_adpd->irq = pst_adpd->hrm_int; + + irq_set_irq_type(pst_adpd->irq, IRQ_TYPE_EDGE_RISING); + err = request_irq(pst_adpd->irq, adpd142_isr_handler, + IRQF_TRIGGER_RISING, dev_name(&pst_adpd->client->dev), + pst_adpd); + if (err) { + ADPD142_dbg("irq %d busy?\n", pst_adpd->irq); + goto err_work_queue_init; + } + disable_irq_nosync(pst_adpd->irq); + + pst_adpd->ptr_config = kzalloc(sizeof(struct adpd_platform_data), + GFP_KERNEL); + if (pst_adpd->ptr_config == NULL) { + err = -ENOMEM; + pr_err("%s %d\n", __func__, __LINE__); + goto err_work_queue_init; + } + + enable_irq(pst_adpd->irq); + adpd142_configuration(pst_adpd, 1); + adpd142_mode_switching(pst_adpd, 0); /* turn off : idle mode, temp*/ + pst_adpd->osc_trim_open_enable = 1; + + return 0; +//err_gpio_direction_input: + //gpio_free(pst_adpd->hrm_int); +err_work_queue_init: + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); +err_wq_creation_init: + +err_sysfs_init: + adpd142_input_cleanup(pst_adpd); +err_input_init: + return err; +} + +/** +This function is used for cleanup ADPD142 +@param pst_adpd pointer point ADPD142 data structure +@return void +*/ +static void +adpd142_initialization_cleanup(struct adpd142_data *pst_adpd) +{ + adpd142_mode_switching(pst_adpd, 0); + + free_irq(pst_adpd->irq, pst_adpd); + + destroy_workqueue(pst_adpd->ptr_adpd142_wq_st); + adpd142_sysfs_cleanup(pst_adpd); + adpd142_input_cleanup(pst_adpd); + kobject_uevent(&pst_adpd->client->dev.kobj, KOBJ_OFFLINE); +} + +#ifdef CONFIG_PM +static s32 +adpd142_i2c_suspend(struct device *dev) +{ + return 0; +} + +static s32 +adpd142_i2c_resume(struct device *dev) +{ + return 0; +} +#else +#define adpd142_i2c_resume NULL +#define adpd142_i2c_suspend NULL +#endif /* CONFIG_PM */ + + +/** +This function is used for i2c read communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param buf pointer point the read out data. +@return s32 status of the called function +*/ +static int +adpd142_i2c_read(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 *buf) +{ + int err; + int tries = 0; + int icnt = 0; + + struct i2c_msg msgs[] = { + { + .addr = pst_adpd->client->addr, + .flags = pst_adpd->client->flags & I2C_M_TEN, + .len = 1, + .buf = (s8 *)®_addr, + }, + { + .addr = pst_adpd->client->addr, + .flags = (pst_adpd->client->flags & I2C_M_TEN) | + I2C_M_RD, + .len = len * sizeof(unsigned short), + .buf = (s8 *)buf, + }, + }; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 2); + if (err != 2) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < I2C_RETRIES)); + + if (err != 2) { + dev_err(&pst_adpd->client->dev, "read transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + for (icnt = 0; icnt < len; icnt++) { + /*convert big endian to CPU format*/ + buf[icnt] = be16_to_cpu(buf[icnt]); + } + + return err; +} + +/** +This function is used for i2c write communication between ADPD142 and AP +@param pst_adpd pointer point ADPD142 data structure +@param reg_addr address need to be fetch +@param len number byte to be read +@param data value to be written on the register. +@return s32 status of the called function +*/ +static int +adpd142_i2c_write(struct adpd142_data *pst_adpd, u8 reg_addr, int len, + u16 data) +{ + struct i2c_msg msgs[1]; + int err; + int tries = 0; + unsigned short data_to_write = cpu_to_be16(data); + char buf[4]; + + buf[0] = (s8) reg_addr; + memcpy(buf + 1, &data_to_write, sizeof(unsigned short)); + msgs[0].addr = pst_adpd->client->addr; + msgs[0].flags = pst_adpd->client->flags & I2C_M_TEN; + msgs[0].len = 1 + (1 * sizeof(unsigned short)); + msgs[0].buf = buf; + + do { + err = i2c_transfer(pst_adpd->client->adapter, msgs, 1); + if (err != 1) + msleep_interruptible(I2C_RETRY_DELAY); + } while ((err != 1) && (++tries < I2C_RETRIES)); + + if (err != 1) { + dev_err(&pst_adpd->client->dev, "write transfer error\n"); + err = -EIO; + } else { + err = 0; + } + + return err; +} + +/* set sysfs for hrm sensor */ +static ssize_t adpd142_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, CHIP_NAME); + + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t adpd142_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + pr_info("%s = %s \n", __func__, VENDOR); + + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size); + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + pst_adpd->eol_test_is_enable = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + pst_adpd->eol_test_is_enable = 0; + else { + pr_debug("adpd142_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + pst_adpd->eol_test_status = 0; + pr_info("adpd142_%s = (%c), value(%u) \n", __func__, *buf, pst_adpd->eol_test_is_enable); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + int err; + unsigned int buf_len; + + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (pst_adpd->eol_test_result != NULL) + kfree(pst_adpd->eol_test_result); + + pst_adpd->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_test_result == NULL) { + pr_err("adpd142_%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_test_result, buf, buf_len); + pr_info("adpd142_%s - result = %s, buf_len(%u)\n", __func__, pst_adpd->eol_test_result, buf_len); + pst_adpd->eol_test_status = 1; + + err = osc_trim_efs_register_save(pst_adpd); + if (err < 0) { + pr_err("adpd142_%s: osc_trim_efs_register_save() empty(%d)\n", __func__, err); + } + + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_test_result == NULL) { + pr_info("adpd142_%s - data->eol_test_result is NULL\n", __func__); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("adpd142_%s - result = %s\n", __func__, pst_adpd->eol_test_result); + pst_adpd->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", pst_adpd->eol_test_status); +} + +static ssize_t adpd142_eol_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->eol_lib_ver != NULL) + kfree(pst_adpd->eol_lib_ver); + + pst_adpd->eol_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->eol_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->eol_lib_ver, buf, buf_len); + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return size; +} + +static ssize_t adpd142_eol_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->eol_lib_ver == NULL) { + pr_info("%s - data->eol_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - eol_lib_ver = %s\n", __func__, pst_adpd->eol_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->eol_lib_ver); +} + +static ssize_t adpd142_elf_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (pst_adpd->elf_lib_ver != NULL) + kfree(pst_adpd->elf_lib_ver); + + pst_adpd->elf_lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (pst_adpd->elf_lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(pst_adpd->elf_lib_ver, buf, buf_len); + return size; +} + +static ssize_t adpd142_elf_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct adpd142_data *pst_adpd = dev_get_drvdata(dev); + + if (pst_adpd->elf_lib_ver == NULL) { + pr_info("%s - data->elf_lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - elf_lib_ver = %s\n", __func__, pst_adpd->elf_lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", pst_adpd->elf_lib_ver); +} + +static DEVICE_ATTR(name, S_IRUGO, adpd142_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, adpd142_vendor_show, NULL); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(eol_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_eol_lib_ver_show, adpd142_eol_lib_ver_store); +static DEVICE_ATTR(elf_lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + adpd142_elf_lib_ver_show, adpd142_elf_lib_ver_store); +static DEVICE_ATTR(adpd_mode, S_IRUGO | S_IWUSR | S_IWGRP, + attr_get_mode, attr_set_mode); +static DEVICE_ATTR(adpd_reg_read, S_IRUGO | S_IWUSR | S_IWGRP, + attr_reg_read_get, attr_reg_read_set); +static DEVICE_ATTR(adpd_reg_write, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, attr_reg_write_set); +static DEVICE_ATTR(adpd_configuration, S_IRUGO | S_IWUSR | S_IWGRP, + attr_config_get, attr_config_set); +static DEVICE_ATTR(adpd_stat, S_IRUGO | S_IWUSR | S_IWGRP, + attr_stat_get, attr_stat_set); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_eol_lib_ver, + &dev_attr_elf_lib_ver, + &dev_attr_adpd_mode, + &dev_attr_adpd_reg_read, + &dev_attr_adpd_reg_write, + &dev_attr_adpd_configuration, + &dev_attr_adpd_stat, + NULL, +}; + +/** +This function is used for ADPD142 probe function +@param client pointer point to the linux i2c client structure +@param id pointer point to the linux i2c device id +@return s32 status of the probe function +*/ +static s32 +adpd_i2c_probe(struct i2c_client *client, const struct i2c_device_id *id) +{ + struct adpd142_data *pst_adpd = NULL; + struct adpd_platform_data *pdata = NULL; + int err = 0; + unsigned short u16_regval = 0; + pr_err("%s, is called Success\n", __func__); + + + if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { + dev_err(&client->dev, "client not i2c capable\n"); + err = -ENODEV; + pr_err("[SENSOR] %s - exit_check_functionality.\n", __func__); + goto exit_check_functionality_failed; + } + + pst_adpd = kzalloc(sizeof(struct adpd142_data), GFP_KERNEL); + if (pst_adpd == NULL) { + err = -ENOMEM; + pr_err("[SENSOR] %s - exit_mem_allocate.\n", __func__); + goto exit_mem_allocate_failed; + } + + if(client->dev.of_node) { + pdata = devm_kzalloc (&client->dev , + sizeof(struct adpd_platform_data), GFP_KERNEL); + if(!pdata) { + dev_err(&client->dev, "Failed to allocate memory\n"); + if(pst_adpd) + kfree(pst_adpd); + return -ENOMEM; + } + } else + pdata = client->dev.platform_data; + if (!pdata) { + pr_err("%s: missing pdata!\n", __func__); + if(pst_adpd) + kfree(pst_adpd); + return err; + } + + err = adpd_parse_dt(pst_adpd, &client->dev); + if (err) { + pr_err("%s, parse dt fail\n", __func__); + goto adpd_parse_dt_err; + } + + mutex_init(&pst_adpd->mutex); + + pst_adpd->client = client; + pst_adpd->client->irq = gpio_to_irq(pst_adpd->hrm_int); + pst_adpd->ptr_config = pdata; + pst_adpd->read = adpd142_i2c_read; + pst_adpd->write = adpd142_i2c_write; + /*Need to allocate and assign data then use the below function */ + i2c_set_clientdata(client, (struct adpd142_data *)pst_adpd); + + adpd_power_enable(pst_adpd, 1); + msleep(30); + + /*chip ID verification */ + u16_regval = reg_read(pst_adpd, ADPD_CHIPID_ADDR); + + switch (u16_regval) { + case ADPD_CHIPID(0): + case ADPD_CHIPID(1): + case ADPD_CHIPID(2): + err = 0; + pr_err("chipID value is = 0x%x\n", u16_regval); + break; + default: + err = 1; + break; + }; + if (err) { + pr_err("[SENSOR] %s - exit_chipid_verification.\n", __func__); + goto exit_chipid_verification; + } + + //pst_adpd->dev = &client->dev; + pr_info("%s - start \n", __func__); + + if (adpd142_initialization(pst_adpd, id)){ + pr_err("[SENSOR] %s - exit_adpd142_init_exit.\n", __func__); + goto exit_adpd142_init; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(pst_adpd->dev, pst_adpd, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + pr_info("%s success\n", __func__); + +goto done; +hrm_sensor_register_failed: +exit_adpd142_init: +exit_chipid_verification: + mutex_destroy(&pst_adpd->mutex); +adpd_parse_dt_err: +exit_mem_allocate_failed: + kfree(pst_adpd); +exit_check_functionality_failed: + dev_err(&client->dev, "%s: Driver Init failed\n", ADPD_DEV_NAME); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/** +This function is used for ADPD142 remove function +@param client pointer point to the linux i2c client structure +@return s32 status of the remove function +*/ +static s32 +adpd_i2c_remove(struct i2c_client *client) +{ + struct adpd142_data *pst_adpd = i2c_get_clientdata(client); + ADPD142_dbg("%s\n", __func__); + adpd142_initialization_cleanup(pst_adpd); + gpio_free(pst_adpd->hrm_int); + kfree(pst_adpd->ptr_config); + kfree(pst_adpd); + pst_adpd = NULL; + + i2c_set_clientdata(client, NULL); + + return 0; +} + +#ifdef CONFIG_PM +/** + device power management operation structure +*/ +static const struct dev_pm_ops adpd_pm_ops = { + .resume = adpd142_i2c_resume, + .suspend = adpd142_i2c_suspend, +}; +#endif + +/** + This table tell which framework it supported + @brief the name has to get matched to the board configuration file setup + */ +/*static struct i2c_device_id adpd_id[] = { {ADPD_DEV_NAME, 0}, {} }; + +MODULE_DEVICE_TABLE(i2c, adpd_id);*/ + +static struct of_device_id adpd_match_table[] = { + { .compatible = "adpd142",}, + {}, +}; + +MODULE_DEVICE_TABLE(i2c, adpd_match_table); + +static const struct i2c_device_id adpd142_device_id[] = { + { "adpd142", 0 }, + { } +}; + +/** + i2c operation structure +*/ +struct i2c_driver adpd142_i2c_driver = { + .driver = { + .name = ADPD_DEV_NAME, + .owner = THIS_MODULE, +#ifdef CONFIG_PM + .pm = &adpd_pm_ops, +#endif + .of_match_table = adpd_match_table, + }, + .probe = adpd_i2c_probe, + .remove = adpd_i2c_remove, + .id_table = adpd142_device_id, +}; + +static struct i2c_client *i2c_client; + +#ifdef ADPD_AUTO_PROBE +static int +i2c_check_dev_attach(char *slave_name, unsigned short *slave_addrs, + unsigned short cnt) +{ + struct i2c_board_info info; + struct i2c_adapter *i2c_adapter = NULL; + int ret = 0; + unsigned short *scan_device = NULL; + unsigned short count = 0; + + /*need to check whether we need to free the memory */ + scan_device = kzalloc(sizeof(unsigned short) * (cnt + 2), GFP_KERNEL); + if (IS_ERR(scan_device)) { + ret = -ENOMEM; /* out of memory */ + goto i2c_check_attach_mem_fail; + } + + memset(scan_device, '\0', sizeof(unsigned short) * (cnt + 2)); + for (count = 0; count < cnt; count++) { + *(scan_device + count) = *(slave_addrs + count); + ADPD142_info("list of slave addr = 0x%x\n", + *(scan_device + count)); + } + *(scan_device + count) = I2C_CLIENT_END; + + count = 0; + + do { + i2c_adapter = i2c_get_adapter(count); + if (i2c_adapter != NULL) { + memset(&info, 0, sizeof(struct i2c_board_info)); + strlcpy(info.type, slave_name /*"adpd142" */ , + I2C_NAME_SIZE); + /*need to check i2c_new_device instead of + i2c_new_probed_device*/ + i2c_client = + i2c_new_probed_device(i2c_adapter, &info, + (const unsigned short *) + scan_device, NULL); + if (i2c_client != NULL) { + ADPD142_dbg("I2C busnum - %d\n", count); + ADPD142_dbg( + "device is attached to the bus i2c-%d\n", + count); + } else { + + } + i2c_put_adapter(i2c_adapter); + } else { + ADPD142_info("Not valid adapter\n"); + } + count++; + } while (i2c_client == NULL && count < 20); + + kfree(scan_device); + + if (i2c_client == NULL) { + /*No such device or address */ + return -ENXIO; + } else { + return 0; + } + +i2c_check_attach_mem_fail: + return ret; +} +#endif + +/** +This function is get called when the module is inserted +@return inti status of the adpd142_multisensor_init +*/ +static int __init +adpd142_multisensor_init(void) +{ +#ifdef ADPD_AUTO_PROBE + ADPD142_dbg("%s\n", __func__); + unsigned short addr[] = { ADPD142_SLAVE_ADDR }; + if (!i2c_check_dev_attach(ADPD_DEV_NAME, addr, 1)) { + return i2c_add_driver(&adpd142_i2c_driver); + } else { + pr_err("i2c bus connect error\n"); + return -1; + } +#else + ADPD142_dbg("%s\n", __func__); + return i2c_add_driver(&adpd142_i2c_driver); +#endif +} + +/** +This function is get called when the module is removed +@return void +*/ +static void __exit +adpd142_multisensor_exit(void) +{ + ADPD142_dbg("%s\n", __func__); + i2c_del_driver(&adpd142_i2c_driver); + if (i2c_client) + i2c_unregister_device(i2c_client); +} + +module_init(adpd142_multisensor_init); +module_exit(adpd142_multisensor_exit); +MODULE_DESCRIPTION(); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR(""); diff --git a/drivers/sensorhub/stm_patek/adpd142.h b/drivers/sensorhub/stm_patek/adpd142.h new file mode 100644 index 000000000000..31db0b979ea7 --- /dev/null +++ b/drivers/sensorhub/stm_patek/adpd142.h @@ -0,0 +1,132 @@ +/** +@file adpd142.h +@brief ADPD142 - Low level driver Header 'H' File +*/ +#ifndef _ADPD142_H_ +#define _ADPD142_H_ + +#include /* module initialization api */ +#include /* module functionality */ +#include /* i2c related functionality */ +#include +#include /* device Power Management functionality */ +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +/** + @brief ADPD142 Slave address +*/ +#define ADPD142_SLAVE_ADDR 0x64 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID_0 0x0016 +/** + @brief ADPD142 ChipID 1 +*/ +#define ADPD_CHIPID_1 0x0116 +/** + @brief ADPD142 ChipID 2 +*/ +#define ADPD_CHIPID_2 0x0216 +/** + @brief ADPD142 ChipID +*/ +#define ADPD_CHIPID(id) ADPD_CHIPID_##id + +/*ADPD142 REGISTER ADDRESS*/ +/** + @brief ADPD142 Interrupt Status Register +*/ +#define ADPD_INT_STATUS_ADDR 0x0 +/** + @brief ADPD142 Interrupt Mask Register +*/ +#define ADPD_INT_MASK_ADDR 0x1 +/** + @brief ADPD142 ChipID register +*/ +#define ADPD_CHIPID_ADDR 0x8 +/** + @brief ADPD142 Operating mode Register +*/ +#define ADPD_OP_MODE_ADDR 0x10 +/** + @brief ADPD142 Operating Mode Configuration register +*/ +#define ADPD_OP_MODE_CFG_ADDR 0x11 +/** + @brief ADPD142 Gesture Control Register +*/ +#define ADPD_GEST_CTRL_ADDR 0x27 +/** + @brief ADPD142 Gesture Threshold Register +*/ +#define ADPD_GEST_THRESH_ADDR 0x28 +/** + @brief ADPD142 Gesture Size Register +*/ +#define ADPD_GEST_SIZE_ADDR 0x29 +/** + @brief ADPD142 Proximity ON1 Threshold register +*/ +#define ADPD_PROX_ON_TH1_ADDR 0x2A +/** + @brief ADPD142 proximity OFF1 Threshold register +*/ +#define ADPD_PROX_OFF_TH1_ADDR 0x2B +/** + @brief ADPD142 Proximity ON2 Threshold register +*/ +#define ADPD_PROX_ON_TH2_ADDR 0x2C +/** + @brief ADPD142 Proximity OFF2 Threshold register +*/ +#define ADPD_PROX_OFF_TH2_ADDR 0x2D +/** + @brief ADPD142 Test PD register +*/ +#define ADPD_TEST_PD_ADDR 0x52 +/** + @brief ADPD142 Access control register +*/ +#define ADPD_ACCESS_CTRL_ADDR 0x5F +/** + @brief ADPD142 FIFO register +*/ +#define ADPD_DATA_BUFFER_ADDR 0x60 + + +/** + @brief ADPD142 maximum array size of Platform data +*/ +#define MAX_CONFIG_REG_CNT 72 +/** + @brief ADPD142 Platform Data +*/ +struct adpd_platform_data { + unsigned short config_size; + unsigned int config_data[MAX_CONFIG_REG_CNT]; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif diff --git a/drivers/sensorhub/stm_patek/factory/Kconfig b/drivers/sensorhub/stm_patek/factory/Kconfig new file mode 100644 index 000000000000..4094a7ea0a8d --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/Kconfig @@ -0,0 +1,133 @@ +# +# sensor drivers configuration +# +config SENSORS_SSP_LSM330 + tristate "Sensors ssp lsm330" + default n + depends on SPI + help + lsm330 file for factory test in ssp driver. + If you say yes here you get lsm330 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_CM36651 + tristate "Sensors ssp cm36651" + default n + depends on SPI + help + cm36651 file for factory test in ssp driver. + If you say yes here you get cm36651 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_CM3320 + tristate "Sensors ssp cm3320" + default n + depends on SPI + help + cm3320 file for factory test in ssp driver. + If you say yes here you get cm3320 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MAX88920 + tristate "Sensors ssp max88920" + default n + depends on SPI + help + max88005 file for factory test in ssp driver. + If you say yes here you get max88005 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MAX88921 + tristate "Sensors ssp max88921" + default n + depends on SPI + help + max88005 file for factory test in ssp driver. + If you say yes here you get max88005 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_TMG399X + tristate "Sensors ssp tmg399x" + default n + depends on SPI + help + max88005 file for factory test in ssp driver. + If you say yes here you get tmg399x support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MPU6500 + tristate "Sensors ssp mpu6500" + default n + depends on SPI + help + mpu6500 file for factory test in ssp driver. + If you say yes here you get mpu6500 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_BMP182 + tristate "Sensors ssp bmp182" + default n + depends on SPI + help + bmp182 file for factory test in ssp driver. + If you say yes here you get bmp182 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_AT32UC3L0128 + tristate "Sensors ssp at32uc3l0128" + default n + depends on SPI + help + at32uc3l0128 file for factory test in ssp driver. + If you say yes here you get at32uc3l0128 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_ATUC128L5HAR + tristate "Sensors ssp atuc128l5har" + default n + depends on SPI + help + atuc128l5har file for factory test in ssp driver. + If you say yes here you get atuc128l5har support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_SHTC1 + tristate "Sensors ssp shtc1" + default n + depends on SPI + help + shtc1 file for factory test in ssp driver. + If you say yes here you get shtc1 support for + factory test. + To compile this driver as a module, choose M here: the + module will be called ssp. + +config SENSORS_SSP_MOBEAM + tristate "Sensors ssp mobeam" + default n + depends on SPI + help + mobeam file for ssp driver. + If you say yes here you get mobeam support using TMG399x. + To compile this driver as a module, choose M here: the + module will be called ssp. diff --git a/drivers/sensorhub/stm_patek/factory/Makefile b/drivers/sensorhub/stm_patek/factory/Makefile new file mode 100644 index 000000000000..a5775b63b789 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/Makefile @@ -0,0 +1,17 @@ +# +# Makefile for the sensor drivers. +# + +# Each configuration option enables a list of files. +obj-$(CONFIG_SENSORS_SSP_MPU6500) += accel_mpu6500.o gyro_mpu6500.o +obj-$(CONFIG_SENSORS_SSP_CM3320) += light_cm3320.o +obj-$(CONFIG_SENSORS_SSP_MAX88920) += prox_max88920.o gesture_max88920.o +obj-$(CONFIG_SENSORS_SSP_MAX88921) += light_max88921.o prox_max88920.o gesture_max88922.o +obj-$(CONFIG_SENSORS_SSP_TMG399X) += light_tmg399x.o prox_max88920.o gesture_tmg399x.o +obj-$(CONFIG_SENSORS_SSP_YAS532) += magnetic_yas532.o +obj-$(CONFIG_SENSORS_SSP_AK09911) += magnetic_ak09911.o +obj-$(CONFIG_SENSORS_SSP_BMP182) += pressure_bmp182.o +obj-$(CONFIG_SENSORS_SSP_AT32UC3L0128) += mcu_at32uc3l0128.o +obj-$(CONFIG_SENSORS_SSP_ATUC128L5HAR) += mcu_atuc128l5har.o +obj-$(CONFIG_SENSORS_SSP_SHTC1) += temphumidity_shtc1.o +obj-$(CONFIG_SENSORS_SSP_MOBEAM) += barcode_emul_tmg3992.o diff --git a/drivers/sensorhub/stm_patek/factory/accel_mpu6500.c b/drivers/sensorhub/stm_patek/factory/accel_mpu6500.c new file mode 100644 index 000000000000..03600096dd65 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/accel_mpu6500.c @@ -0,0 +1,415 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "INVENSENSE" +#define CHIP_ID "MPU6500" + +#define VENDOR_MAXIM "MAXIM" +#define CHIP_ID_MAX21103 "MAX21103" + +#define CALIBRATION_FILE_PATH "/efs/calibration_data" +#define CALIBRATION_DATA_AMOUNT 20 + +static ssize_t accel_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return sprintf(buf, "%s\n", VENDOR_MAXIM); + else + return sprintf(buf, "%s\n", VENDOR); +#else + return sprintf(buf, "%s\n", VENDOR); +#endif + +} + +static ssize_t accel_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return sprintf(buf, "%s\n", CHIP_ID_MAX21103); + else + return sprintf(buf, "%s\n", CHIP_ID); +#else + return sprintf(buf, "%s\n", CHIP_ID); +#endif +} + +int accel_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + + return iRet; + } + + iRet = cal_filp->f_op->read(cal_filp, (char *)&data->accelcal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) + iRet = -EIO; + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + ssp_dbg("[SSP]: open accel calibration %d, %d, %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z); + + if ((data->accelcal.x == 0) && (data->accelcal.y == 0) + && (data->accelcal.z == 0)) + return ERROR; + + return iRet; +} + +int set_accel_cal(struct ssp_data *data) +{ + int iRet = 0; + struct ssp_msg *msg; + s16 accel_cal[3]; + + if (!(data->uSensorState & (1 << ACCELEROMETER_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", accel sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return iRet; + } + accel_cal[0] = data->accelcal.x; + accel_cal[1] = data->accelcal.y; + accel_cal[2] = data->accelcal.z; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_ACCEL_CAL; + msg->length = 6; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(6, GFP_KERNEL); + + msg->free_buffer = 1; + memcpy(msg->buffer, accel_cal, 6); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + pr_info("[SSP] Set accel cal data %d, %d, %d\n", accel_cal[0], accel_cal[1], accel_cal[2]); + return iRet; +} + +static int enable_accel_for_cal(struct ssp_data *data) +{ + u8 uBuf[9] = { 0, }; + s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); + memcpy(&uBuf[0], &dMsDelay, 4); + + if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { + if (get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]) != 10) { + send_instruction(data, CHANGE_DELAY, + ACCELEROMETER_SENSOR, uBuf, 9); + return SUCCESS; + } + } else { + send_instruction(data, ADD_SENSOR, + ACCELEROMETER_SENSOR, uBuf, 9); + } + + return FAIL; +} + +static void disable_accel_for_cal(struct ssp_data *data, int iDelayChanged) +{ + u8 uBuf[9] = { 0, }; + s32 dMsDelay = get_msdelay(data->adDelayBuf[ACCELEROMETER_SENSOR]); + memcpy(&uBuf[0], &dMsDelay, 4); + + if (atomic_read(&data->aSensorEnable) & (1 << ACCELEROMETER_SENSOR)) { + if (iDelayChanged) + send_instruction(data, CHANGE_DELAY, + ACCELEROMETER_SENSOR, uBuf, 9); + } else { + send_instruction(data, REMOVE_SENSOR, + ACCELEROMETER_SENSOR, uBuf, 4); + } +} + +static int accel_do_calibrate(struct ssp_data *data, int iEnable) +{ + int iSum[3] = { 0, }; + int iRet = 0, iCount; + struct file *cal_filp = NULL; + mm_segment_t old_fs; + + if (iEnable) { + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + set_accel_cal(data); + + iRet = enable_accel_for_cal(data); + msleep(300); + + for (iCount = 0; iCount < CALIBRATION_DATA_AMOUNT; iCount++) { + iSum[0] += data->buf[ACCELEROMETER_SENSOR].x; + iSum[1] += data->buf[ACCELEROMETER_SENSOR].y; + iSum[2] += data->buf[ACCELEROMETER_SENSOR].z; + mdelay(10); + } + disable_accel_for_cal(data, iRet); + + data->accelcal.x = (iSum[0] / CALIBRATION_DATA_AMOUNT); + data->accelcal.y = (iSum[1] / CALIBRATION_DATA_AMOUNT); + data->accelcal.z = (iSum[2] / CALIBRATION_DATA_AMOUNT); + + if (data->accelcal.z > 0) + data->accelcal.z -= MAX_ACCEL_1G; + else if (data->accelcal.z < 0) + data->accelcal.z += MAX_ACCEL_1G; + } else { + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + } + + ssp_dbg("[SSP]: do accel calibrate %d, %d, %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(cal_filp)) { + pr_err("[SSP]: %s - Can't open calibration file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + return iRet; + } + + iRet = cal_filp->f_op->write(cal_filp, (char *)&data->accelcal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) { + pr_err("[SSP]: %s - Can't write the accelcal to file\n", + __func__); + iRet = -EIO; + } + + filp_close(cal_filp, current->files); + set_fs(old_fs); + set_accel_cal(data); + return iRet; +} + +static ssize_t accel_calibration_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int iRet; + int iCount = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = accel_open_calibration(data); + if (iRet < 0) + pr_err("[SSP]: %s - calibration open failed(%d)\n", __func__, iRet); + + ssp_dbg("[SSP] Cal data : %d %d %d - %d\n", + data->accelcal.x, data->accelcal.y, data->accelcal.z, iRet); + + iCount = sprintf(buf, "%d %d %d %d\n", iRet, data->accelcal.x, + data->accelcal.y, data->accelcal.z); + return iCount; +} + +static ssize_t accel_calibration_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + iRet = accel_do_calibrate(data, (int)dEnable); + if (iRet < 0) + pr_err("[SSP]: %s - accel_do_calibrate() failed\n", __func__); + + return size; +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[ACCELEROMETER_SENSOR].x, + data->buf[ACCELEROMETER_SENSOR].y, + data->buf[ACCELEROMETER_SENSOR].z); +} + +static ssize_t accel_reactive_alert_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet = 0; + char chTempBuf = 1; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) + ssp_dbg("[SSP]: %s - on\n", __func__); + else if (sysfs_streq(buf, "0")) + ssp_dbg("[SSP]: %s - off\n", __func__); + else if (sysfs_streq(buf, "2")) { + ssp_dbg("[SSP]: %s - factory\n", __func__); + + data->bAccelAlert = 0; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = ACCELEROMETER_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->data = chTempBuf; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + data->bAccelAlert = chTempBuf; + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - accel Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s factory test success!\n", __func__); + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + exit: return size; +} + +static ssize_t accel_reactive_alert_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bAccelAlert == true) + bSuccess = true; + else + bSuccess = false; + + data->bAccelAlert = false; + return sprintf(buf, "%u\n", bSuccess); +} + +static ssize_t accel_hw_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf[8] = { 2, 0, }; + s8 init_status = 0, result = -1; + s16 shift_ratio[3] = { 0, }; + int iRet; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = ACCELEROMETER_FACTORY; + msg->length = 8; + msg->options = AP2HUB_READ; + msg->data = chTempBuf[0]; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + if (iRet != SUCCESS) { + pr_err("[SSP] %s - accel hw selftest Timeout!!\n", __func__); + return sprintf(buf, "%d,%d,%d,%d\n", -5, 0, 0, 0); + } + + init_status = chTempBuf[0]; + shift_ratio[0] = (s16)((chTempBuf[2] << 8) + chTempBuf[1]); + shift_ratio[1] = (s16)((chTempBuf[4] << 8) + chTempBuf[3]); + shift_ratio[2] = (s16)((chTempBuf[6] << 8) + chTempBuf[5]); + result = chTempBuf[7]; + + pr_info("[SSP] %s - %d, %d, %d, %d, %d\n", __func__, + init_status, result, shift_ratio[0], shift_ratio[1], shift_ratio[2]); +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return sprintf(buf, "%d,%d,%d,%d\n", result, + shift_ratio[0] , shift_ratio[1] , shift_ratio[2] ); + else + return sprintf(buf, "%d,%d.%d,%d.%d,%d.%d\n", result, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10); +#endif +} +static DEVICE_ATTR(name, S_IRUGO, accel_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, accel_vendor_show, NULL); +static DEVICE_ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + accel_calibration_show, accel_calibration_store); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(reactive_alert, S_IRUGO | S_IWUSR | S_IWGRP, + accel_reactive_alert_show, accel_reactive_alert_store); +static DEVICE_ATTR(selftest, S_IRUGO, accel_hw_selftest_show, NULL); + +static struct device_attribute *acc_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_calibration, + &dev_attr_raw_data, + &dev_attr_reactive_alert, + &dev_attr_selftest, + NULL, +}; + +void initialize_accel_factorytest(struct ssp_data *data) +{ + sensors_register(data->acc_device, data, acc_attrs, + "accelerometer_sensor"); +} + +void remove_accel_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->acc_device, acc_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/barcode_emul_tmg3992.c b/drivers/sensorhub/stm_patek/factory/barcode_emul_tmg3992.c new file mode 100644 index 000000000000..d01762b53cdf --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/barcode_emul_tmg3992.c @@ -0,0 +1,299 @@ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG399x" + +extern struct class *sec_class; +struct device *mobeam_dev; +u8 hop_count; +u8 Is_beaming; + +static struct reg_index_table reg_id_table[15] = { + {0x81, 0}, {0x88, 1}, {0x8F, 2}, {0x96, 3}, {0x9D, 4}, + {0xA4, 5}, {0xAB, 6}, {0xB2, 7}, {0xB9, 8}, {0xC0, 9}, + {0xC7, 10}, {0xCE, 11}, {0xD5, 12}, {0xDC, 13}, {0xE3, 14} +}; + +#define BEAMING_ON 1 +#define BEAMING_OFF 0 +#define STOP_BEAMING 0 + +#define COUNT_TEST 48 /* 0 */ +#define REGISTER_TEST 49 /* 1 */ +#define DATA_TEST 50 /* 2 */ + +enum { + dataset = 0, + registerset, + countset, + start, +}; + +enum { + reg, + index, +}; + +void mobeam_write(struct ssp_data *data, int type, u8* u_buf) +{ + int iRet = 0; + u8 command = -1; + u8 data_length = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << PROXIMITY_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", proximity sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return; + } + + pr_info("[SSP] %s start, command_type = %d\n", __func__, type); + switch (type) { + case dataset: + command = MSG2SSP_AP_MOBEAM_DATA_SET; + data_length = 128; + break; + case registerset: + command = MSG2SSP_AP_MOBEAM_REGISTER_SET; + data_length = 6; + break; + case countset: + command = MSG2SSP_AP_MOBEAM_COUNT_SET; + data_length = 1; + break; + case start: + command = MSG2SSP_AP_MOBEAM_START; + data_length = 1; + Is_beaming = BEAMING_ON; + break; + default: + pr_info("[SSP] %s - unknown cmd type\n", __func__); + break; + } + + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = data_length; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(data_length, GFP_KERNEL); + msg->free_buffer = 1; + + memcpy(msg->buffer, u_buf, data_length); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - MOBEAM CMD fail %d\n", __func__, iRet); + return; + } + + pr_info("[SSP] %s command = 0x%X\n", __func__, command); +} + +void mobeam_stop_set(struct ssp_data *data) +{ + int iRet, iReties = 0; + struct ssp_msg *msg; + u8 buffer = 0; + +retries: + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MOBEAM_STOP; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP] %s fail %d\n", __func__, iRet); + + if(iReties++ < 2) { + pr_err("[SSP] %s fail, retry\n", __func__); + mdelay(5); + goto retries; + } + } else { + Is_beaming = BEAMING_OFF; + pr_info("[SSP] %s - success(%u)\n", __func__, Is_beaming); + } + return; +} + +static ssize_t mobeam_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t mobeam_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t barcode_emul_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 send_buf[128] = { 0, }; + int i; + + memset(send_buf, 0xFF, 128); + if (buf[0] == 0xFF && buf[1] != STOP_BEAMING) { + pr_info("[SSP] %s - START BEAMING(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + send_buf[1] = buf[1]; + mobeam_write(data, start, &send_buf[1]); + } else if (buf[0] == 0xFF && buf[1] == STOP_BEAMING) { + pr_info("[SSP] %s - STOP BEAMING(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + if (Is_beaming == BEAMING_ON) + mobeam_stop_set(data); + else + pr_info("[SSP] %s - skip stop command\n", __func__); + } else if (buf[0] == 0x00) { + pr_info("[SSP] %s - DATA SET(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + memcpy(send_buf, &buf[2], 128); + pr_info("[SSP] %s - %u %u %u %u %u %u\n", __func__, + send_buf[0], send_buf[1], send_buf[2], + send_buf[3], send_buf[4], send_buf[5]); + mobeam_write(data, dataset, send_buf); + } else if (buf[0] == 0x80) { + pr_info("[SSP] %s - HOP COUNT SET(0x%X, 0x%X)\n", __func__, + buf[0], buf[1]); + hop_count = buf[1]; + mobeam_write(data, countset, &hop_count); + } else { + pr_info("[SSP] %s - REGISTER SET(0x%X)\n", __func__, buf[0]); + for (i = 0; i < 15; i++) { + if (reg_id_table[i].reg == buf[0]) + send_buf[0] = reg_id_table[i].index; + } + send_buf[1] = buf[1]; + send_buf[2] = buf[2]; + send_buf[3] = buf[4]; + send_buf[4] = buf[5]; + send_buf[5] = buf[7]; + mobeam_write(data, registerset, send_buf); + } + return size; +} + +static ssize_t barcode_emul_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return strlen(buf); +} + +static ssize_t barcode_led_status_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return snprintf(buf, sizeof(buf), "%u\n", Is_beaming); +} + +static ssize_t barcode_ver_check_show(struct device *dev, + struct device_attribute *attr, + char *buf) +{ + return snprintf(buf, sizeof(buf), "%u\n", 15); +} + +static ssize_t barcode_emul_test_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 barcode_data[14] = {0xFF, 0xAC, 0xDB, 0x36, 0x42, 0x85, + 0x0A, 0xA8, 0xD1, 0xA3, 0x46, 0xC5, 0xDA, 0xFF}; + u8 test_data[128] = { 0, }; + + memset(test_data, 0xFF, 128); + if (buf[0] == COUNT_TEST) { + test_data[0] = 0x80; + test_data[1] = 1; + pr_info("[SSP] %s, COUNT_TEST - 0x%X, %u\n", __func__, + test_data[0], test_data[1]); + mobeam_write(data, countset, &test_data[1]); + } else if (buf[0] == REGISTER_TEST) { + test_data[0] = 0; + test_data[1] = 10; + test_data[2] = 20; + test_data[3] = 30; + test_data[4] = 40; + test_data[5] = 50; + pr_info("[SSP] %s, REGISTER_TEST - %u: %u %u %u %u %u\n", + __func__, test_data[0], test_data[1], test_data[2], + test_data[3], test_data[4], test_data[5]); + mobeam_write(data, registerset, test_data); + } else if (buf[0] == DATA_TEST) { + memcpy(test_data, &barcode_data[1], 13); + pr_info("[SSP] %s, DATA_TEST - 0x%X 0x%X 0x%X 0x%X 0x%X 0x%X\n", + __func__, test_data[0], test_data[1], test_data[2], + test_data[3], test_data[4], test_data[5]); + mobeam_write(data, dataset, test_data); + } + return size; +} +static DEVICE_ATTR(vendor, S_IRUGO, mobeam_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, mobeam_name_show, NULL); +static DEVICE_ATTR(barcode_send, S_IRUGO | S_IWUSR | S_IWGRP, + barcode_emul_show, barcode_emul_store); +static DEVICE_ATTR(barcode_led_status, S_IRUGO, barcode_led_status_show, NULL); +static DEVICE_ATTR(barcode_ver_check, S_IRUGO, barcode_ver_check_show, NULL); +static DEVICE_ATTR(barcode_test_send, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, barcode_emul_test_store); + +void initialize_mobeam(struct ssp_data *data) +{ + pr_info("[SSP] %s\n", __func__); + + mobeam_dev = device_create(sec_class, NULL, 0, + data, "sec_barcode_emul"); + + if (IS_ERR(mobeam_dev)) + pr_err("[SSP] Failed to create mobeam_dev device\n"); + + if (device_create_file(mobeam_dev, &dev_attr_vendor) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_vendor.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_name) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_name.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_send) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_send.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_led_status) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_led_status.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_ver_check) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_ver_check.attr.name); + + if (device_create_file(mobeam_dev, &dev_attr_barcode_test_send) < 0) + pr_err("[SSP] Failed to create device file(%s)!\n", + dev_attr_barcode_test_send.attr.name); + + Is_beaming = BEAMING_OFF; +} + +void remove_mobeam(struct ssp_data *data) +{ + pr_info("[SSP] %s\n", __func__); + device_remove_file(mobeam_dev, &dev_attr_barcode_test_send); + device_remove_file(mobeam_dev, &dev_attr_barcode_ver_check); + device_remove_file(mobeam_dev, &dev_attr_barcode_led_status); + device_remove_file(mobeam_dev, &dev_attr_barcode_send); + device_remove_file(mobeam_dev, &dev_attr_name); + device_remove_file(mobeam_dev, &dev_attr_vendor); +} diff --git a/drivers/sensorhub/stm_patek/factory/gesture_max88920.c b/drivers/sensorhub/stm_patek/factory/gesture_max88920.c new file mode 100644 index 000000000000..2b1e5ad0a390 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/gesture_max88920.c @@ -0,0 +1,143 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88920" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[0], + data->buf[GESTURE_SENSOR].data[1], + data->buf[GESTURE_SENSOR].data[2], + data->buf[GESTURE_SENSOR].data[3]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[4] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + raw_A = chTempBuf[0]; + raw_B = chTempBuf[1]; + raw_C = chTempBuf[2]; + raw_D = chTempBuf[3]; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + + exit: return sprintf(buf, "%d,%d,%d,%d\n", raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][16] = { {0, 25, 50, 75, 100, 125, 150, 175, 225, 250, 275, 300, 325, 350, 375, 400}, + {2, 28, 34, 50, 66, 82, 98, 114, 130, 146, 162, 178, 194, 210, 226, 242} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 16; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + } + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/gesture_max88922.c b/drivers/sensorhub/stm_patek/factory/gesture_max88922.c new file mode 100644 index 000000000000..5d5492851b07 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/gesture_max88922.c @@ -0,0 +1,154 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88922" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[1], + data->buf[GESTURE_SENSOR].data[2], + data->buf[GESTURE_SENSOR].data[3], + data->buf[GESTURE_SENSOR].data[9]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[8] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 8; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + printk("%x %x %x %x %x %x %x %x \n", chTempBuf[0], chTempBuf[1], chTempBuf[2], chTempBuf[3], + chTempBuf[4], chTempBuf[5], chTempBuf[6], chTempBuf[7]); + + raw_A = ((((s16)chTempBuf[0]) << 8) + ((s16)chTempBuf[1])) - 1023; + raw_B = ((((s16)chTempBuf[2]) << 8) + ((s16)chTempBuf[3])) - 1023; + raw_C = ((((s16)chTempBuf[4]) << 8) + ((s16)chTempBuf[5])) - 1023; + raw_D = ((((s16)chTempBuf[6]) << 8) + ((s16)chTempBuf[7])) - 1023; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + +exit: + return sprintf(buf, "%d,%d,%d,%d\n", + raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][16] = { {0, 6, 13, 20, 26, 33, 40, 46, 53, 60, 66, 73, 80, 86, 93, 100}, + {0<<4, 1<<4, 2<<4, 3<<4, 4<<4, 5<<4, 6<<4, 7<<4, 8<<4, 9<<4, 10<<4, 11<<4, 12<<4, 13<<4, 14<<4, 15<<4} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 16; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + break; + } + } + if(current_index == 16) // current setting value wrong. + { + return ERROR; + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/gesture_tmg399x.c b/drivers/sensorhub/stm_patek/factory/gesture_tmg399x.c new file mode 100644 index 000000000000..f2d4a8de1ce4 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/gesture_tmg399x.c @@ -0,0 +1,157 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG3992" + + +static ssize_t gestrue_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t gestrue_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_ID); +} + +static ssize_t raw_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d,%d\n", + data->buf[GESTURE_SENSOR].data[3], + data->buf[GESTURE_SENSOR].data[4], + data->buf[GESTURE_SENSOR].data[5], + data->buf[GESTURE_SENSOR].data[6]); +} + +static ssize_t gesture_get_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s16 raw_A = 0, raw_B = 0, raw_C = 0, raw_D = 0; + int iRet = 0; + char chTempBuf[8] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GESTURE_FACTORY; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 2000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gesture Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s %d %d %d %d\n", + __func__, chTempBuf[0], chTempBuf[1], chTempBuf[2], chTempBuf[3]); + + raw_A = chTempBuf[0]; + raw_B = chTempBuf[1]; + raw_C = chTempBuf[2]; + raw_D = chTempBuf[3]; + + pr_info("[SSP] %s: self test A = %d, B = %d, C = %d, D = %d\n", + __func__, raw_A, raw_B, raw_C, raw_D); + +exit: + return sprintf(buf, "%d,%d,%d,%d\n", + raw_A, raw_B, raw_C, raw_D); +} + +static ssize_t ir_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->uIr_Current == 0) + data->uIr_Current = DEFUALT_IR_CURRENT; + + ssp_dbg("[SSP]: %s - Ir_Current Setting = %d\n", + __func__, data->uIr_Current); + + return sprintf(buf, "%d\n", data->uIr_Current); +} + +static ssize_t ir_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewIrCurrent = DEFUALT_IR_CURRENT; + int iRet = 0; + u16 current_index = 0; + struct ssp_data *data = dev_get_drvdata(dev); + static u16 set_current[2][4] = { {12, 25, 50, 100}, + {24, 16, 8, 0} }; + + iRet = kstrtou16(buf, 10, &uNewIrCurrent); + + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + for(current_index = 0; current_index < 4; current_index++) { + if (set_current[0][current_index] == uNewIrCurrent) { + data->uIr_Current = set_current[1][current_index]; + break; + } + } + if(current_index == 4) // current setting value wrong. + { + return ERROR; + } + set_gesture_current(data, data->uIr_Current); + data->uIr_Current= uNewIrCurrent; + } + + ssp_dbg("[SSP]: %s - new Ir_Current Setting : %d\n", + __func__, data->uIr_Current); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, gestrue_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, gestrue_name_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, raw_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gesture_get_selftest_show, NULL); +static DEVICE_ATTR(ir_current, S_IRUGO | S_IWUSR | S_IWGRP, + ir_current_show, ir_current_store); + +static struct device_attribute *gesture_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_ir_current, + NULL, +}; + +void initialize_gesture_factorytest(struct ssp_data *data) +{ + sensors_register(data->ges_device, data, + gesture_attrs, "gesture_sensor"); +} + +void remove_gesture_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->ges_device, gesture_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/gyro_mpu6500.c b/drivers/sensorhub/stm_patek/factory/gyro_mpu6500.c new file mode 100644 index 000000000000..caf0640a638b --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/gyro_mpu6500.c @@ -0,0 +1,783 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "INVENSENSE" +#define CHIP_ID "MPU6500" + +#define VENDOR_MAXIM "MAXIM" +#define CHIP_ID_MAX21103 "MAX21103" + +#define CALIBRATION_FILE_PATH "/efs/gyro_cal_data" +#define VERBOSE_OUT 1 +#define CALIBRATION_DATA_AMOUNT 20 +#define DEF_GYRO_FULLSCALE 2000 +#define DEF_GYRO_SENS (32768 / DEF_GYRO_FULLSCALE) +#define DEF_GYRO_SENS_MAXIM (30000 / DEF_GYRO_FULLSCALE) + +#define DEF_BIAS_LSB_THRESH_SELF (20 * DEF_GYRO_SENS) +#define DEF_BIAS_LSB_THRESH_SELF_6500 (30 * DEF_GYRO_SENS) +#define DEF_RMS_LSB_TH_SELF (5 * DEF_GYRO_SENS) + +#define DEF_BIAS_LSB_THRESH_SELF_MAXIM (20 * DEF_GYRO_SENS_MAXIM) +#define DEF_BIAS_LSB_THRESH_SELF_MAX21103_MAXIM (30 * DEF_GYRO_SENS_MAXIM) +#define DEF_RMS_LSB_TH_SELF_MAXIM (5 * DEF_GYRO_SENS_MAXIM) + +#define DEF_RMS_THRESH ((DEF_RMS_LSB_TH_SELF) * (DEF_RMS_LSB_TH_SELF)) +#define DEF_RMS_THRESH_MAXIM ((DEF_RMS_LSB_TH_SELF_MAXIM) * (DEF_RMS_LSB_TH_SELF_MAXIM)) + +#define DEF_SCALE_FOR_FLOAT (1000) +#define DEF_RMS_SCALE_FOR_RMS (10000) +#define DEF_SQRT_SCALE_FOR_RMS (100) + +static ssize_t gyro_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return sprintf(buf, "%s\n", VENDOR_MAXIM); + else + return sprintf(buf, "%s\n", VENDOR); +#else + return sprintf(buf, "%s\n", VENDOR); +#endif +} + +static ssize_t gyro_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return sprintf(buf, "%s\n", CHIP_ID_MAX21103); + else + return sprintf(buf, "%s\n", CHIP_ID); +#else + return sprintf(buf, "%s\n", CHIP_ID); +#endif + +} + +int gyro_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + + return iRet; + } + + iRet = cal_filp->f_op->read(cal_filp, (char *)&data->gyrocal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) + iRet = -EIO; + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + ssp_dbg("[SSP]: open gyro calibration %d, %d, %d\n", + data->gyrocal.x, data->gyrocal.y, data->gyrocal.z); + return iRet; +} + +static int save_gyro_caldata(struct ssp_data *data, s16 *iCalData) +{ + int iRet = 0; + struct file *cal_filp = NULL; + mm_segment_t old_fs; + + data->gyrocal.x = iCalData[0] << 2; + data->gyrocal.y = iCalData[1] << 2; + data->gyrocal.z = iCalData[2] << 2; + + ssp_dbg("[SSP]: do gyro calibrate %d, %d, %d\n", + data->gyrocal.x, data->gyrocal.y, data->gyrocal.z); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY, 0666); + if (IS_ERR(cal_filp)) { + pr_err("[SSP]: %s - Can't open calibration file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cal_filp); + return -EIO; + } + + iRet = cal_filp->f_op->write(cal_filp, (char *)&data->gyrocal, + 3 * sizeof(int), &cal_filp->f_pos); + if (iRet != 3 * sizeof(int)) { + pr_err("[SSP]: %s - Can't write gyro cal to file\n", __func__); + iRet = -EIO; + } + + filp_close(cal_filp, current->files); + set_fs(old_fs); + + return iRet; +} + +int set_gyro_cal(struct ssp_data *data) +{ + int iRet = 0; + struct ssp_msg *msg; + s16 gyro_cal[3]; + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) { + pr_info("[SSP]: %s - Skip this function!!!"\ + ", gyro sensor is not connected(0x%x)\n", + __func__, data->uSensorState); + return iRet; + } + + gyro_cal[0] = data->gyrocal.x; + gyro_cal[1] = data->gyrocal.y; + gyro_cal[2] = data->gyrocal.z; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_GYRO_CAL; + msg->length = 6; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(6, GFP_KERNEL); + + msg->free_buffer = 1; + memcpy(msg->buffer, gyro_cal, 6); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + pr_info("[SSP] Set gyro cal data %d, %d, %d\n", gyro_cal[0], gyro_cal[1], gyro_cal[2]); + return iRet; +} + +static ssize_t gyro_power_off(struct device *dev, + struct device_attribute *attr, char *buf) +{ + ssp_dbg("[SSP]: %s\n", __func__); + + return sprintf(buf, "%d\n", 1); +} + +static ssize_t gyro_power_on(struct device *dev, + struct device_attribute *attr, char *buf) +{ + ssp_dbg("[SSP]: %s\n", __func__); + + return sprintf(buf, "%d\n", 1); +} + +short mpu6500_gyro_get_temp(struct ssp_data *data) +{ + char chTempBuf[2] = { 0}; + unsigned char reg[2]; + short temperature = 0; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_TEMP_FACTORY; + msg->length = 2; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Temp Timeout!!\n", __func__); + goto exit; + } + + reg[0] = chTempBuf[1]; + reg[1] = chTempBuf[0]; + temperature = (short) (((reg[0]) << 8) | reg[1]); + ssp_dbg("[SSP]: %s - %d\n", __func__, temperature); + + exit: + return temperature; +} + +char k330_gyro_get_temp(struct ssp_data *data) +{ + char chTemp = 0; + int iRet = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) + goto exit; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_TEMP_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTemp; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Temp Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s - %d\n", __func__, chTemp); + exit: + return chTemp; +} + +static ssize_t gyro_get_temp(struct device *dev, + struct device_attribute *attr, char *buf) +{ + short temperature = 0; + struct ssp_data *data = dev_get_drvdata(dev); + temperature = mpu6500_gyro_get_temp(data); + return sprintf(buf, "%d\n", temperature); +} + +u32 mpu6050_selftest_sqrt(u32 sqsum) +{ + u32 sq_rt; + u32 g0, g1, g2, g3, g4; + u32 seed; + u32 next; + u32 step; + + g4 = sqsum / 100000000; + g3 = (sqsum - g4 * 100000000) / 1000000; + g2 = (sqsum - g4 * 100000000 - g3 * 1000000) / 10000; + g1 = (sqsum - g4 * 100000000 - g3 * 1000000 - g2 * 10000) / 100; + g0 = (sqsum - g4 * 100000000 - g3 * 1000000 - g2 * 10000 - g1 * 100); + + next = g4; + step = 0; + seed = 0; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = seed * 10000; + next = (next - (seed * step)) * 100 + g3; + + step = 0; + seed = 2 * seed * 10; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 1000; + next = (next - seed * step) * 100 + g2; + seed = (seed + step) * 10; + step = 0; + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 100; + next = (next - seed * step) * 100 + g1; + seed = (seed + step) * 10; + step = 0; + + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step * 10; + next = (next - seed * step) * 100 + g0; + seed = (seed + step) * 10; + step = 0; + + while (((seed + 1) * (step + 1)) <= next) { + step++; + seed++; + } + + sq_rt = sq_rt + step; + + return sq_rt; +} + +ssize_t k330_gyro_selftest(char *buf, struct ssp_data *data) +{ + char chTempBuf[36] = { 0,}; + u8 uFifoPass = 2; + u8 uBypassPass = 2; + u8 uCalPass = 0; + u8 dummy[2] = {0,}; + s16 iNOST[3] = {0,}, iST[3] = {0,}, iCalData[3] = {0,}; + s16 iZeroRateData[3] = {0,}, fifo_data[4] = {0,}; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_FACTORY; + msg->length = 36; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 5000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest Timeout!!\n", __func__); + goto exit; + } + + data->uTimeOutCnt = 0; + + iNOST[0] = (s16)((chTempBuf[0] << 8) + chTempBuf[1]); + iNOST[1] = (s16)((chTempBuf[2] << 8) + chTempBuf[3]); + iNOST[2] = (s16)((chTempBuf[4] << 8) + chTempBuf[5]); + + iST[0] = (s16)((chTempBuf[6] << 8) + chTempBuf[7]); + iST[1] = (s16)((chTempBuf[8] << 8) + chTempBuf[9]); + iST[2] = (s16)((chTempBuf[10] << 8) + chTempBuf[11]); + + iCalData[0] = (s16)((chTempBuf[12] << 8) + chTempBuf[13]); + iCalData[1] =( s16)((chTempBuf[14] << 8) + chTempBuf[15]); + iCalData[2] = (s16)((chTempBuf[16] << 8) + chTempBuf[17]); + + iZeroRateData[0] = (s16)((chTempBuf[18] << 8) + chTempBuf[19]); + iZeroRateData[1] = (s16)((chTempBuf[20] << 8) + chTempBuf[21]); + iZeroRateData[2] = (s16)((chTempBuf[22] << 8) + chTempBuf[23]); + + fifo_data[0] = chTempBuf[24]; + fifo_data[1] = (s16)((chTempBuf[25] << 8) + chTempBuf[26]); + fifo_data[2] = (s16)((chTempBuf[27] << 8) + chTempBuf[28]); + fifo_data[3] = (s16)((chTempBuf[29] << 8) + chTempBuf[30]); + + uCalPass = chTempBuf[31]; + uFifoPass = chTempBuf[32]; + uBypassPass = chTempBuf[33]; + dummy[0] = chTempBuf[34]; + dummy[1] = chTempBuf[35]; + pr_info("[SSP] %s dummy = 0x%X, 0x%X\n", __func__, dummy[0], dummy[1]); + if (uFifoPass && uBypassPass && uCalPass) + save_gyro_caldata(data, iCalData); + + ssp_dbg("[SSP]: %s - %d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + __func__, iNOST[0], iNOST[1], iNOST[2], iST[0], iST[1], iST[2], + iZeroRateData[0], iZeroRateData[1], iZeroRateData[2], + fifo_data[0], fifo_data[1], fifo_data[2], fifo_data[3], + uFifoPass & uBypassPass & uCalPass, uFifoPass, uCalPass); + + exit: + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + iNOST[0], iNOST[1], iNOST[2], iST[0], iST[1], iST[2], + iZeroRateData[0], iZeroRateData[1], iZeroRateData[2], + fifo_data[0], fifo_data[1], fifo_data[2], fifo_data[3], + uFifoPass & uBypassPass & uCalPass, uFifoPass, uCalPass); +} + +ssize_t mpu6500_gyro_selftest(char *buf, struct ssp_data *data) +{ + char chTempBuf[36] = { 0,}; + u8 initialized = 0; + s8 hw_result = 0; + int i = 0, j = 0, total_count = 0, ret_val = 0; + long avg[3] = {0,}, rms[3] = {0,}; + int gyro_bias[3] = {0,}, gyro_rms[3] = {0,}; + s16 shift_ratio[3] = {0,}; + s16 iCalData[3] = {0,}; + char a_name[3][2] = { "X", "Y", "Z" }; + int iRet = 0; + int dps_rms[3] = { 0, }; + u32 temp = 0; + +#if defined (CONFIG_SEC_PATEK_PROJECT) + int bias_thresh = DEF_BIAS_LSB_THRESH_SELF_MAX21103_MAXIM; +#else + int bias_thresh = DEF_BIAS_LSB_THRESH_SELF_6500; +#endif + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_FACTORY; + msg->length = 36; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 7000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest Timeout!!\n", __func__); + ret_val = 1; + goto exit; + } + + data->uTimeOutCnt = 0; + pr_err("[SSP]%d %d %d %d %d %d %d %d %d %d %d %d", chTempBuf[0], chTempBuf[1], + chTempBuf[2], chTempBuf[3], chTempBuf[4], chTempBuf[5], chTempBuf[6], + chTempBuf[7], chTempBuf[8], chTempBuf[9], chTempBuf[10], chTempBuf[11]); + + initialized = chTempBuf[0]; + shift_ratio[0] = (s16)((chTempBuf[2] << 8) + + chTempBuf[1]); + shift_ratio[1] = (s16)((chTempBuf[4] << 8) + + chTempBuf[3]); + shift_ratio[2] = (s16)((chTempBuf[6] << 8) + + chTempBuf[5]); + hw_result = (s8)chTempBuf[7]; + total_count = (int)((chTempBuf[11] << 24) + + (chTempBuf[10] << 16) + + (chTempBuf[9] << 8) + + chTempBuf[8]); + avg[0] = (long)((chTempBuf[15] << 24) + + (chTempBuf[14] << 16) + + (chTempBuf[13] << 8) + + chTempBuf[12]); + avg[1] = (long)((chTempBuf[19] << 24) + + (chTempBuf[18] << 16) + + (chTempBuf[17] << 8) + + chTempBuf[16]); + avg[2] = (long)((chTempBuf[23] << 24) + + (chTempBuf[22] << 16) + + (chTempBuf[21] << 8) + + chTempBuf[20]); + rms[0] = (long)((chTempBuf[27] << 24) + + (chTempBuf[26] << 16) + + (chTempBuf[25] << 8) + + chTempBuf[24]); + rms[1] = (long)((chTempBuf[31] << 24) + + (chTempBuf[30] << 16) + + (chTempBuf[29] << 8) + + chTempBuf[28]); + rms[2] = (long)((chTempBuf[35] << 24) + + (chTempBuf[34] << 16) + + (chTempBuf[33] << 8) + + chTempBuf[32]); + pr_info("[SSP] init: %d, total cnt: %d\n", initialized, total_count); + pr_info("[SSP] hw_result: %d, %d, %d, %d\n", hw_result, + shift_ratio[0], shift_ratio[1], shift_ratio[2]); + pr_info("[SSP] avg %+8ld %+8ld %+8ld (LSB)\n", avg[0], avg[1], avg[2]); + pr_info("[SSP] rms %+8ld %+8ld %+8ld (LSB)\n", rms[0], rms[1], rms[2]); + + if (total_count == 0) { + pr_err("[SSP] %s, total_count is 0. goto exit\n", __func__); + ret_val = 2; + goto exit; + } + + if (hw_result < 0) { + pr_err("[SSP] %s - hw selftest fail(%d), sw selftest skip\n", + __func__, hw_result); + return sprintf(buf, "-1,0,0,0,0,0,0,%d.%d,%d.%d,%d.%d,0,0,0\n", + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10); + } +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + { + gyro_bias[0] = (avg[0] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS_MAXIM; + gyro_bias[1] = (avg[1] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS_MAXIM; + gyro_bias[2] = (avg[2] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS_MAXIM; + + }else{ + gyro_bias[0] = (avg[0] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[1] = (avg[1] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[2] = (avg[2] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + + } +#else + gyro_bias[0] = (avg[0] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[1] = (avg[1] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; + gyro_bias[2] = (avg[2] * DEF_SCALE_FOR_FLOAT) / DEF_GYRO_SENS; +#endif + iCalData[0] = (s16)avg[0]; + iCalData[1] = (s16)avg[1]; + iCalData[2] = (s16)avg[2]; + + if (VERBOSE_OUT) { + pr_info("[SSP] abs bias : %+8d.%03d %+8d.%03d %+8d.%03d (dps)\n", + (int)abs(gyro_bias[0]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[0]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[1]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[1]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[2]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_bias[2]) % DEF_SCALE_FOR_FLOAT); + } + + for (j = 0; j < 3; j++) { + if (unlikely(abs(avg[j]) > bias_thresh)) { + pr_err("[SSP] %s-Gyro bias (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + avg[j], bias_thresh); + ret_val |= 1 << (3 + j); + } + } + /* 3rd, check RMS for dead gyros + If any of the RMS noise value returns zero, + then we might have dead gyro or FIFO/register failure, + the part is sleeping, or the part is not responsive */ + if (rms[0] == 0 || rms[1] == 0 || rms[2] == 0) + ret_val |= 1 << 6; + + if (VERBOSE_OUT) { + pr_info("[SSP] RMS ^ 2 : %+8ld %+8ld %+8ld\n", + (long)rms[0] / total_count, + (long)rms[1] / total_count, (long)rms[2] / total_count); + } +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + { + for (j = 0; j < 3; j++) { + if (unlikely(rms[j] / total_count > DEF_RMS_THRESH_MAXIM)) { + pr_err("[SSP] %s-Gyro rms (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + rms[j] / total_count, DEF_RMS_THRESH_MAXIM); + ret_val |= 1 << (7 + j); + } + } + }else{ + for (j = 0; j < 3; j++) { + if (unlikely(rms[j] / total_count > DEF_RMS_THRESH)) { + pr_err("[SSP] %s-Gyro rms (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + rms[j] / total_count, DEF_RMS_THRESH); + ret_val |= 1 << (7 + j); + } + } + } +#else + for (j = 0; j < 3; j++) { + if (unlikely(rms[j] / total_count > DEF_RMS_THRESH)) { + pr_err("[SSP] %s-Gyro rms (%ld) exceeded threshold " + "(threshold = %d LSB)\n", a_name[j], + rms[j] / total_count, DEF_RMS_THRESH); + ret_val |= 1 << (7 + j); + } + } +#endif + for (i = 0; i < 3; i++) { + if (rms[i] > 10000) { + temp = + ((u32) (rms[i] / total_count)) * + DEF_RMS_SCALE_FOR_RMS; + } else { + temp = + ((u32) (rms[i] * DEF_RMS_SCALE_FOR_RMS)) / + total_count; + } + if (rms[i] < 0) + temp = 1 << 31; +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + dps_rms[i] = mpu6050_selftest_sqrt(temp) / DEF_GYRO_SENS_MAXIM; + else + dps_rms[i] = mpu6050_selftest_sqrt(temp) / DEF_GYRO_SENS; +#else + dps_rms[i] = mpu6050_selftest_sqrt(temp) / DEF_GYRO_SENS; +#endif + gyro_rms[i] = + dps_rms[i] * DEF_SCALE_FOR_FLOAT / DEF_SQRT_SCALE_FOR_RMS; + } + + pr_info("[SSP] RMS : %+8d.%03d %+8d.%03d %+8d.%03d (dps)\n", + (int)abs(gyro_rms[0]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[0]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[1]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[1]) % DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[2]) / DEF_SCALE_FOR_FLOAT, + (int)abs(gyro_rms[2]) % DEF_SCALE_FOR_FLOAT); + + if (likely(!ret_val)) { + save_gyro_caldata(data, iCalData); + } else { + pr_err("[SSP] ret_val != 0, gyrocal is 0 at all axis\n"); + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + } +#if defined (CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV){ + gyro_bias[0] = gyro_bias[0]/8; + gyro_bias[1] = gyro_bias[1]/8; + gyro_bias[2] = gyro_bias[2]/8; + } +#endif +exit: + ssp_dbg("[SSP]: %s - %d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%d,%d.%d,%d.%d," + "%d,%d,%d\n", + __func__, ret_val, + (int)abs(gyro_bias[0]/1000), + (int)abs(gyro_bias[0])%1000, + (int)abs(gyro_bias[1]/1000), + (int)abs(gyro_bias[1])%1000, + (int)abs(gyro_bias[2]/1000), + (int)abs(gyro_bias[2])%1000, + gyro_rms[0]/1000, + (int)abs(gyro_rms[0])%1000, + gyro_rms[1]/1000, + (int)abs(gyro_rms[1])%1000, + gyro_rms[2]/1000, + (int)abs(gyro_rms[2])%1000, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10, + (int)(total_count/3), + (int)(total_count/3), + (int)(total_count/3)); + + return sprintf(buf, "%d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%03d,%d.%03d,%d.%03d," + "%d.%d,%d.%d,%d.%d," + "%d,%d,%d\n", + ret_val, + (int)abs(gyro_bias[0]/1000), + (int)abs(gyro_bias[0])%1000, + (int)abs(gyro_bias[1]/1000), + (int)abs(gyro_bias[1])%1000, + (int)abs(gyro_bias[2]/1000), + (int)abs(gyro_bias[2])%1000, + gyro_rms[0]/1000, + (int)abs(gyro_rms[0])%1000, + gyro_rms[1]/1000, + (int)abs(gyro_rms[1])%1000, + gyro_rms[2]/1000, + (int)abs(gyro_rms[2])%1000, + shift_ratio[0] / 10, shift_ratio[0] % 10, + shift_ratio[1] / 10, shift_ratio[1] % 10, + shift_ratio[2] / 10, shift_ratio[2] % 10, + (int)(total_count/3), + (int)(total_count/3), + (int)(total_count/3)); +} + +static ssize_t gyro_selftest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + return mpu6500_gyro_selftest(buf, data); +} + +static ssize_t gyro_selftest_dps_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + int iNewDps = 0; + int iRet = 0; + char chTempBuf = 0; + + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1 << GYROSCOPE_SENSOR))) + goto exit; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = GYROSCOPE_DPS_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + sscanf(buf, "%d", &iNewDps); + + if (iNewDps == GYROSCOPE_DPS250) + msg->options |= 0 << SSP_GYRO_DPS; + else if (iNewDps == GYROSCOPE_DPS500) + msg->options |= 1 << SSP_GYRO_DPS; + else if (iNewDps == GYROSCOPE_DPS2000) + msg->options |= 2 << SSP_GYRO_DPS; + else { + msg->options |= 1 << SSP_GYRO_DPS; + iNewDps = GYROSCOPE_DPS500; + } + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest DPS Timeout!!\n", __func__); + goto exit; + } + + if (chTempBuf != SUCCESS) { + pr_err("[SSP]: %s - Gyro Selftest DPS Error!!\n", __func__); + goto exit; + } + + data->uGyroDps = (unsigned int)iNewDps; + pr_err("[SSP]: %s - %u dps stored\n", __func__, data->uGyroDps); +exit: + return count; +} + +static ssize_t gyro_selftest_dps_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", data->uGyroDps); +} + +static DEVICE_ATTR(name, S_IRUGO, gyro_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, gyro_vendor_show, NULL); +static DEVICE_ATTR(power_off, S_IRUGO, gyro_power_off, NULL); +static DEVICE_ATTR(power_on, S_IRUGO, gyro_power_on, NULL); +static DEVICE_ATTR(temperature, S_IRUGO, gyro_get_temp, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, gyro_selftest_show, NULL); +static DEVICE_ATTR(selftest_dps, S_IRUGO | S_IWUSR | S_IWGRP, + gyro_selftest_dps_show, gyro_selftest_dps_store); + +static struct device_attribute *gyro_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_selftest, + &dev_attr_power_on, + &dev_attr_power_off, + &dev_attr_temperature, + &dev_attr_selftest_dps, + NULL, +}; + +void initialize_gyro_factorytest(struct ssp_data *data) +{ + sensors_register(data->gyro_device, data, gyro_attrs, "gyro_sensor"); +} + +void remove_gyro_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->gyro_device, gyro_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/light_max88921.c b/drivers/sensorhub/stm_patek/factory/light_max88921.c new file mode 100644 index 000000000000..6f60f019df0d --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/light_max88921.c @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88921" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ +static ssize_t light_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t light_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t light_lux_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].ir_cmp, data->buf[LIGHT_SENSOR].amb_pga); +} + +static ssize_t light_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].ir_cmp, data->buf[LIGHT_SENSOR].amb_pga); +} + +static DEVICE_ATTR(vendor, S_IRUGO, light_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, light_name_show, NULL); +static DEVICE_ATTR(lux, S_IRUGO, light_lux_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, light_data_show, NULL); + +static struct device_attribute *light_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_lux, + &dev_attr_raw_data, + NULL, +}; + +void initialize_light_factorytest(struct ssp_data *data) +{ + sensors_register(data->light_device, data, light_attrs, "light_sensor"); +} + +void remove_light_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->light_device, light_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/light_tmg399x.c b/drivers/sensorhub/stm_patek/factory/light_tmg399x.c new file mode 100644 index 000000000000..d36a420b0416 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/light_tmg399x.c @@ -0,0 +1,78 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#define VENDOR "AMS" +#define CHIP_ID "TMG399X" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ +static ssize_t light_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t light_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t light_lux_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].a_time, data->buf[LIGHT_SENSOR].a_gain); +} + +static ssize_t light_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u,%u,%u,%u,%u,%u\n", + data->buf[LIGHT_SENSOR].r, data->buf[LIGHT_SENSOR].g, + data->buf[LIGHT_SENSOR].b, data->buf[LIGHT_SENSOR].w, + data->buf[LIGHT_SENSOR].a_time, data->buf[LIGHT_SENSOR].a_gain); +} + +static DEVICE_ATTR(vendor, S_IRUGO, light_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, light_name_show, NULL); +static DEVICE_ATTR(lux, S_IRUGO, light_lux_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, light_data_show, NULL); + +static struct device_attribute *light_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_lux, + &dev_attr_raw_data, + NULL, +}; + +void initialize_light_factorytest(struct ssp_data *data) +{ + sensors_register(data->light_device, data, light_attrs, "light_sensor"); +} + +void remove_light_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->light_device, light_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/magnetic_ak09911.c b/drivers/sensorhub/stm_patek/factory/magnetic_ak09911.c new file mode 100644 index 000000000000..675ccf9986c0 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/magnetic_ak09911.c @@ -0,0 +1,489 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR_AK "AKM" +#define CHIP_ID_AK "AK09911C" + +#define GM_DATA_SPEC_MIN -1600 +#define GM_DATA_SPEC_MAX 1600 + +#define GM_SELFTEST_X_SPEC_MIN -30 +#define GM_SELFTEST_X_SPEC_MAX 30 +#define GM_SELFTEST_Y_SPEC_MIN -30 +#define GM_SELFTEST_Y_SPEC_MAX 30 +#define GM_SELFTEST_Z_SPEC_MIN -400 +#define GM_SELFTEST_Z_SPEC_MAX -50 + +static ssize_t magnetic_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR_AK); +} + +static ssize_t magnetic_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID_AK); +} + +static int check_data_spec(struct ssp_data *data, u8 uSensorType) +{ + if ((data->buf[uSensorType].x == 0) && + (data->buf[uSensorType].y == 0) && + (data->buf[uSensorType].z == 0)) + return FAIL; + else if ((data->buf[uSensorType].x > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].x < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].y > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].y < GM_DATA_SPEC_MIN) + || (data->buf[uSensorType].z > GM_DATA_SPEC_MAX) + || (data->buf[uSensorType].z < GM_DATA_SPEC_MIN)) + return FAIL; + else + return SUCCESS; +} + +static ssize_t raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - %d,%d,%d\n", __func__, + data->buf[GEOMAGNETIC_RAW].x, + data->buf[GEOMAGNETIC_RAW].y, + data->buf[GEOMAGNETIC_RAW].z); + + if (data->bGeomagneticRawEnabled == false) { + data->buf[GEOMAGNETIC_RAW].x = -1; + data->buf[GEOMAGNETIC_RAW].y = -1; + data->buf[GEOMAGNETIC_RAW].z = -1; + } else { + if (data->buf[GEOMAGNETIC_RAW].x > 18000) + data->buf[GEOMAGNETIC_RAW].x = 18000; + else if (data->buf[GEOMAGNETIC_RAW].x < -18000) + data->buf[GEOMAGNETIC_RAW].x = -18000; + if (data->buf[GEOMAGNETIC_RAW].y > 18000) + data->buf[GEOMAGNETIC_RAW].y = 18000; + else if (data->buf[GEOMAGNETIC_RAW].y < -18000) + data->buf[GEOMAGNETIC_RAW].y = -18000; + if (data->buf[GEOMAGNETIC_RAW].z > 18000) + data->buf[GEOMAGNETIC_RAW].z = 18000; + else if (data->buf[GEOMAGNETIC_RAW].z < -18000) + data->buf[GEOMAGNETIC_RAW].z = -18000; + } + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[GEOMAGNETIC_RAW].x, + data->buf[GEOMAGNETIC_RAW].y, + data->buf[GEOMAGNETIC_RAW].z); +} + +static ssize_t raw_data_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + char chTempbuf[9] = { 0, }; + int iRet; + int64_t dEnable; + int iRetries = 50; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + data->buf[GEOMAGNETIC_RAW].x = 0; + data->buf[GEOMAGNETIC_RAW].y = 0; + data->buf[GEOMAGNETIC_RAW].z = 0; + + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, + chTempbuf, 9); + + do { + msleep(20); + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) + break; + } while (--iRetries); + + if (iRetries > 0) { + pr_info("[SSP] %s - success, %d\n", __func__, iRetries); + data->bGeomagneticRawEnabled = true; + } else { + pr_err("[SSP] %s - wait timeout, %d\n", __func__, + iRetries); + data->bGeomagneticRawEnabled = false; + } + } else { + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_RAW, + chTempbuf, 4); + data->bGeomagneticRawEnabled = false; + } + + return size; +} + +static ssize_t adc_data_read(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + u8 chTempbuf[9] = { 0, }; + s16 iSensorBuf[3] = {0, }; + int iRetries = 10; + bool add_mag = false; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + data->buf[GEOMAGNETIC_SENSOR].x = 0; + data->buf[GEOMAGNETIC_SENSOR].y = 0; + data->buf[GEOMAGNETIC_SENSOR].z = 0; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR))) { + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_SENSOR, + chTempbuf, 9); + add_mag = true; + } + + do { + msleep(60); + if (check_data_spec(data, GEOMAGNETIC_SENSOR) == SUCCESS) + break; + } while (--iRetries); + + if (iRetries > 0) + bSuccess = true; + + iSensorBuf[0] = data->buf[GEOMAGNETIC_SENSOR].x; + iSensorBuf[1] = data->buf[GEOMAGNETIC_SENSOR].y; + iSensorBuf[2] = data->buf[GEOMAGNETIC_SENSOR].z; + + if (add_mag == true) + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_SENSOR, + chTempbuf, 4); + + pr_info("[SSP]: %s - x = %d, y = %d, z = %d\n", __func__, + iSensorBuf[0], iSensorBuf[1], iSensorBuf[2]); + + return sprintf(buf, "%s,%d,%d,%d\n", (bSuccess ? "OK" : "NG"), + iSensorBuf[0], iSensorBuf[1], iSensorBuf[2]); +} + +static ssize_t magnetic_get_asa(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d,%d,%d\n", (s16)data->uFuseRomData[0], + (s16)data->uFuseRomData[1], (s16)data->uFuseRomData[2]); +} + +static ssize_t magnetic_get_status(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess; + struct ssp_data *data = dev_get_drvdata(dev); + + if ((data->uFuseRomData[0] == 0) || + (data->uFuseRomData[0] == 0xff) || + (data->uFuseRomData[1] == 0) || + (data->uFuseRomData[1] == 0xff) || + (data->uFuseRomData[2] == 0) || + (data->uFuseRomData[2] == 0xff)) + bSuccess = false; + else + bSuccess = true; + + return sprintf(buf, "%s,%u\n", (bSuccess ? "OK" : "NG"), bSuccess); +} + +static ssize_t magnetic_check_cntl(struct device *dev, + struct device_attribute *attr, char *strbuf) +{ + bool bSuccess = false; + int iRet; + char chTempBuf[22] = { 0, }; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + if (!data->uMagCntlRegData) { + bSuccess = true; + } else { + pr_info("[SSP] %s - check cntl register before selftest", __func__); + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = GEOMAGNETIC_FACTORY; + msg->length = 22; + msg->options = AP2HUB_READ; + msg->buffer = chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP] %s - spi sync failed due to Timeout!! %d\n", + __func__, iRet); + } + + data->uMagCntlRegData = chTempBuf[21]; + bSuccess = !data->uMagCntlRegData; + } + + pr_info("[SSP] %s - CTRL : 0x%x\n", __func__, + data->uMagCntlRegData); + + data->uMagCntlRegData = 1; /* reset the value */ + + return sprintf(strbuf, "%s,%d,%d,%d\n", + (bSuccess ? "OK" : "NG"), (bSuccess ? 1 : 0), 0, 0); +} + +static ssize_t magnetic_get_selftest(struct device *dev, + struct device_attribute *attr, char *buf) +{ + s8 iResult[4] = {-1, -1, -1, -1}; + char bufSelftset[22] = {0, }; + char bufAdc[9] = {0, }; + s16 iSF_X = 0, iSF_Y = 0, iSF_Z = 0; + s16 iADC_X = 0, iADC_Y = 0, iADC_Z = 0; + s32 dMsDelay = 20; + int iRet = 0, iSpecOutRetries = 0; + struct ssp_data *data = dev_get_drvdata(dev); + struct ssp_msg *msg; + + pr_info("[SSP] %s in\n", __func__); + + /* STATUS */ + if ((data->uFuseRomData[0] == 0) || + (data->uFuseRomData[0] == 0xff) || + (data->uFuseRomData[1] == 0) || + (data->uFuseRomData[1] == 0xff) || + (data->uFuseRomData[2] == 0) || + (data->uFuseRomData[2] == 0xff)) + iResult[0] = -1; + else + iResult[0] = 0; + +Retry_selftest: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + goto exit; + } + msg->cmd = GEOMAGNETIC_FACTORY; + msg->length = 22; + msg->options = AP2HUB_READ; + msg->buffer = bufSelftset; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Magnetic Selftest Timeout!! %d\n", __func__, iRet); + goto exit; + } + + /* read 6bytes data registers */ + iSF_X = (s16)((bufSelftset[13] << 8) + bufSelftset[14]); + iSF_Y = (s16)((bufSelftset[15] << 8) + bufSelftset[16]); + iSF_Z = (s16)((bufSelftset[17] << 8) + bufSelftset[18]); + + /* DAC (store Cntl Register value to check power down) */ + iResult[2] = bufSelftset[21]; + + iSF_X = (s16)(((iSF_X * data->uFuseRomData[0]) >> 7) + iSF_X); + iSF_Y = (s16)(((iSF_Y * data->uFuseRomData[1]) >> 7) + iSF_Y); + iSF_Z = (s16)(((iSF_Z * data->uFuseRomData[2]) >> 7) + iSF_Z); + + pr_info("[SSP] %s: self test x = %d, y = %d, z = %d\n", + __func__, iSF_X, iSF_Y, iSF_Z); + + if ((iSF_X >= GM_SELFTEST_X_SPEC_MIN) + && (iSF_X <= GM_SELFTEST_X_SPEC_MAX)) + pr_info("[SSP] x passed self test, expect -30<=x<=30\n"); + else + pr_info("[SSP] x failed self test, expect -30<=x<=30\n"); + if ((iSF_Y >= GM_SELFTEST_Y_SPEC_MIN) + && (iSF_Y <= GM_SELFTEST_Y_SPEC_MAX)) + pr_info("[SSP] y passed self test, expect -30<=y<=30\n"); + else + pr_info("[SSP] y failed self test, expect -30<=y<=30\n"); + if ((iSF_Z >= GM_SELFTEST_Z_SPEC_MIN) + && (iSF_Z <= GM_SELFTEST_Z_SPEC_MAX)) + pr_info("[SSP] z passed self test, expect -400<=z<=-50\n"); + else + pr_info("[SSP] z failed self test, expect -400<=z<=-50\n"); + + /* SELFTEST */ + if ((iSF_X >= GM_SELFTEST_X_SPEC_MIN) + && (iSF_X <= GM_SELFTEST_X_SPEC_MAX) + && (iSF_Y >= GM_SELFTEST_Y_SPEC_MIN) + && (iSF_Y <= GM_SELFTEST_Y_SPEC_MAX) + && (iSF_Z >= GM_SELFTEST_Z_SPEC_MIN) + && (iSF_Z <= GM_SELFTEST_Z_SPEC_MAX)) + iResult[1] = 0; + + if ((iResult[1] == -1) && (iSpecOutRetries++ < 5)) { + pr_err("[SSP] %s, selftest spec out. Retry = %d", __func__, iSpecOutRetries); + goto Retry_selftest; + } + + iSpecOutRetries = 10; + + /* ADC */ + memcpy(&bufAdc[0], &dMsDelay, 4); + + data->buf[GEOMAGNETIC_RAW].x = 0; + data->buf[GEOMAGNETIC_RAW].y = 0; + data->buf[GEOMAGNETIC_RAW].z = 0; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_RAW))) + send_instruction(data, ADD_SENSOR, GEOMAGNETIC_RAW, + bufAdc, 9); + + do { + msleep(60); + if (check_data_spec(data, GEOMAGNETIC_RAW) == SUCCESS) + break; + } while (--iSpecOutRetries); + + if (iSpecOutRetries > 0) + iResult[3] = 0; + + iADC_X = data->buf[GEOMAGNETIC_RAW].x; + iADC_Y = data->buf[GEOMAGNETIC_RAW].y; + iADC_Z = data->buf[GEOMAGNETIC_RAW].z; + + if (!(atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_RAW))) + send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_RAW, + bufAdc, 4); + + pr_info("[SSP]: %s -adc, x = %d, y = %d, z = %d, retry = %d\n", __func__, + iADC_X, iADC_Y, iADC_Z, iSpecOutRetries); + +exit: + pr_info("[SSP] %s out. Result = %d %d %d %d\n", + __func__, iResult[0], iResult[1], iResult[2], iResult[3]); + + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d\n", + iResult[0], iResult[1], iSF_X, iSF_Y, iSF_Z, + iResult[2], iResult[3], iADC_X, iADC_Y, iADC_Z); +} + +#ifdef SAVE_MAG_LOG +static ssize_t raw_data_logging_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bGeomagneticLogged == false) { + data->buf[GEOMAGNETIC_SENSOR].x = -1; + data->buf[GEOMAGNETIC_SENSOR].y = -1; + data->buf[GEOMAGNETIC_SENSOR].z = -1; + } + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[GEOMAGNETIC_SENSOR].x, + data->buf[GEOMAGNETIC_SENSOR].y, + data->buf[GEOMAGNETIC_SENSOR].z); +} + +static ssize_t raw_data_logging_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u8 uBuf[4] = {0, }; + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + s32 dMsDelay = 10; + memcpy(&uBuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + ssp_dbg("[SSP]: %s - add %u, New = %dns\n", + __func__, 1 << GEOMAGNETIC_SENSOR, dMsDelay); + + iRet = send_instruction(data, GET_LOGGING, GEOMAGNETIC_SENSOR, uBuf, 4); + if (iRet == SUCCESS) { + pr_info("[SSP] %s - success\n", __func__); + data->bGeomagneticLogged = true; + } else { + pr_err("[SSP] %s - failed, %d\n", __func__, iRet); + data->bGeomagneticLogged = false; + } + } else { + iRet = send_instruction(data, REMOVE_SENSOR, GEOMAGNETIC_SENSOR, uBuf, 4); + if (iRet == SUCCESS) { + pr_info("[SSP] %s - success\n", __func__); + data->bGeomagneticLogged = false; + } + ssp_dbg("[SSP]: %s - remove sensor = %d\n", + __func__, (1 << GEOMAGNETIC_SENSOR)); + } + + return size; +} +#endif + +static DEVICE_ATTR(name, S_IRUGO, magnetic_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, magnetic_vendor_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO | S_IWUSR | S_IWGRP, + raw_data_show, raw_data_store); +static DEVICE_ATTR(adc, S_IRUGO, adc_data_read, NULL); +static DEVICE_ATTR(selftest, S_IRUGO, magnetic_get_selftest, NULL); +static DEVICE_ATTR(status, S_IRUGO, magnetic_get_status, NULL); +static DEVICE_ATTR(dac, S_IRUGO, magnetic_check_cntl, NULL); +static DEVICE_ATTR(ak09911_asa, S_IRUGO, magnetic_get_asa, NULL); +#ifdef SAVE_MAG_LOG +static DEVICE_ATTR(logging_data, S_IRUGO | S_IWUSR | S_IWGRP, + raw_data_logging_show, raw_data_logging_store); +#endif + +static struct device_attribute *mag_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_adc, + &dev_attr_dac, + &dev_attr_raw_data, + &dev_attr_selftest, + &dev_attr_status, + &dev_attr_ak09911_asa, +#ifdef SAVE_MAG_LOG + &dev_attr_logging_data, +#endif + NULL, +}; + +void initialize_magnetic_factorytest(struct ssp_data *data) +{ + sensors_register(data->mag_device, data, + mag_attrs, "magnetic_sensor"); +} + +void remove_magnetic_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->mag_device, mag_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/mcu_atuc128l5har.c b/drivers/sensorhub/stm_patek/factory/mcu_atuc128l5har.c new file mode 100644 index 000000000000..af99df54849b --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/mcu_atuc128l5har.c @@ -0,0 +1,296 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define MODEL_NAME "STM32F401CEY6B" + +ssize_t mcu_revision_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "ST01%u,ST01%u\n", get_module_rev(data), + data->uCurFirmRev); +} + +ssize_t mcu_model_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", MODEL_NAME); +} + +ssize_t mcu_update_kernel_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_kernel_crashed_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) { + bSuccess = true; + goto out; + } + + iRet = forced_to_download_binary(data, KERNEL_CRASHED_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; +out: + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_update_ums_bin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bSuccess = false; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + iRet = forced_to_download_binary(data, UMS_BINARY); + if (iRet == SUCCESS) + bSuccess = true; + else + bSuccess = false; + + return sprintf(buf, "%s\n", (bSuccess ? "OK" : "NG")); +} + +ssize_t mcu_reset_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + reset_mcu(data); + + return sprintf(buf, "OK\n"); +} + +ssize_t mcu_dump_show(struct device *dev, struct device_attribute *attr, + char *buf) { + struct ssp_data *data = dev_get_drvdata(dev); + int status = 1, iDelaycnt = 0; + + data->bDumping = true; + set_big_data_start(data, BIG_TYPE_DUMP, 0); + msleep(300); + while (data->bDumping) { + mdelay(10); + if (iDelaycnt++ > 1000) { + status = 0; + break; + } + } + return sprintf(buf, "%s\n", status ? "OK" : "NG"); +} + +static char buffer[FACTORY_DATA_MAX]; + +ssize_t mcu_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_FACTORY; + msg->length = 5; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + memset(msg->buffer, 0, 5); + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Factory Test Start! - %d\n", iRet); + + return size; +} + +ssize_t mcu_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + bool bMcuTestSuccessed = false; + struct ssp_data *data = dev_get_drvdata(dev); + + if (data->bSspShutdown == true) { + ssp_dbg("[SSP]: %s - MCU Bin is crashed\n", __func__); + return sprintf(buf, "NG,NG,NG\n"); + } + + ssp_dbg("[SSP] MCU Factory Test Data : %u, %u, %u, %u, %u\n", buffer[0], + buffer[1], buffer[2], buffer[3], buffer[4]); + + /* system clock, RTC, I2C Master, I2C Slave, externel pin */ + if ((buffer[0] == SUCCESS) + && (buffer[1] == SUCCESS) + && (buffer[2] == SUCCESS) + && (buffer[3] == SUCCESS) + && (buffer[4] == SUCCESS)) + bMcuTestSuccessed = true; + + ssp_dbg("[SSP]: MCU Factory Test Result - %s, %s, %s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); + + return sprintf(buf, "%s,%s,%s\n", MODEL_NAME, + (bMcuTestSuccessed ? "OK" : "NG"), "OK"); +} + +ssize_t mcu_sleep_factorytest_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iRet = 0; + struct ssp_msg *msg; + + if (sysfs_streq(buf, "1")) { + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MCU_SLEEP_FACTORY; + msg->length = FACTORY_DATA_MAX; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + + } else { + pr_err("[SSP]: %s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + ssp_dbg("[SSP]: MCU Sleep Factory Test Start! - %d\n", 1); + + return size; +} + +ssize_t mcu_sleep_factorytest_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + int iDataIdx, iSensorData = 0; + struct ssp_data *data = dev_get_drvdata(dev); + struct sensor_value fsb[SENSOR_MAX-2]; + u16 chLength = 0; + + memcpy(&chLength, buffer, 2); + memset(fsb, 0, sizeof(struct sensor_value) * (SENSOR_MAX-2)); + + for (iDataIdx = 2; iDataIdx < chLength + 2;) { + iSensorData = (int)buffer[iDataIdx++]; + + if ((iSensorData < 0) || + (iSensorData >= (SENSOR_MAX - 2 - 1))) { + pr_err("[SSP]: %s - Mcu data frame error %d\n", + __func__, iSensorData); + goto exit; + } + + data->get_sensor_data[iSensorData]((char *)buffer, + &iDataIdx, &(fsb[iSensorData])); + } + + fsb[PRESSURE_SENSOR].pressure[0] -= data->iPressureCal; + +exit: + ssp_dbg("[SSP]: %s Result\n" + "[SSP] accel %d,%d,%d\n" + "[SSP] gyro %d,%d,%d\n" + "[SSP] mag %d,%d,%d\n" + "[SSP] baro %d,%d\n" + "[SSP] ges %d,%d,%d,%d\n" + "[SSP] prox %u,%u\n" + "[SSP] temp %d,%d,%d\n" + "[SSP] light %u,%u,%u,%u,%u,%u\n", __func__, + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[PROXIMITY_SENSOR].prox[0], fsb[PROXIMITY_SENSOR].prox[1], + fsb[TEMPERATURE_HUMIDITY_SENSOR].x, + fsb[TEMPERATURE_HUMIDITY_SENSOR].y, + fsb[TEMPERATURE_HUMIDITY_SENSOR].z, + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w, +#ifdef CONFIG_SENSORS_SSP_TMG399X + fsb[LIGHT_SENSOR].a_time, fsb[LIGHT_SENSOR].a_gain +#else + fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga +#endif + ); + + return sprintf(buf, "%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%u," + "%u,%u,%u,%u,%u,%u,%d,%d,%d,%d,%d,%d\n", + fsb[ACCELEROMETER_SENSOR].x, fsb[ACCELEROMETER_SENSOR].y, + fsb[ACCELEROMETER_SENSOR].z, fsb[GYROSCOPE_SENSOR].x, + fsb[GYROSCOPE_SENSOR].y, fsb[GYROSCOPE_SENSOR].z, + fsb[GEOMAGNETIC_SENSOR].cal_x, fsb[GEOMAGNETIC_SENSOR].cal_y, + fsb[GEOMAGNETIC_SENSOR].cal_z, fsb[PRESSURE_SENSOR].pressure[0], + fsb[PRESSURE_SENSOR].pressure[1], fsb[PROXIMITY_SENSOR].prox[1], + fsb[LIGHT_SENSOR].r, fsb[LIGHT_SENSOR].g, fsb[LIGHT_SENSOR].b, + fsb[LIGHT_SENSOR].w, +#ifdef CONFIG_SENSORS_SSP_TMG399X + fsb[LIGHT_SENSOR].a_time, fsb[LIGHT_SENSOR].a_gain, +#else + fsb[LIGHT_SENSOR].ir_cmp, fsb[LIGHT_SENSOR].amb_pga, +#endif + fsb[GESTURE_SENSOR].data[0], fsb[GESTURE_SENSOR].data[1], + fsb[GESTURE_SENSOR].data[2], fsb[GESTURE_SENSOR].data[3], + fsb[TEMPERATURE_HUMIDITY_SENSOR].x, + fsb[TEMPERATURE_HUMIDITY_SENSOR].y); +} diff --git a/drivers/sensorhub/stm_patek/factory/pressure_bmp182.c b/drivers/sensorhub/stm_patek/factory/pressure_bmp182.c new file mode 100644 index 000000000000..d655b80d6ba7 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/pressure_bmp182.c @@ -0,0 +1,237 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#if defined (CONFIG_SEC_KACTIVE_PROJECT) && !defined (CONFIG_MACH_KACTIVELTE_DCM) +#define LPS25H_REV 0 +#else +#define LPS25H_REV 3 +#endif + +#define VENDOR "BOSCH" +#define CHIP_ID "BMP180" +#define VENDOR_STM "STM" +#define CHIP_ID_LPS25H "LPS25H" + +#define CALIBRATION_FILE_PATH "/efs/FactoryApp/baro_delta" + +#define PR_ABS_MAX 8388607 /* 24 bit 2'compl */ +#define PR_ABS_MIN -8388608 + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +static ssize_t sea_level_pressure_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + sscanf(buf, "%d", &data->sealevelpressure); + + if (data->sealevelpressure == 0) { + pr_info("%s, our->temperature = 0\n", __func__); + data->sealevelpressure = -1; + } + + pr_info("[SSP] %s sea_level_pressure = %d\n", + __func__, data->sealevelpressure); + return size; +} + +int pressure_open_calibration(struct ssp_data *data) +{ + char chBuf[10] = {0,}; + int iErr = 0; + mm_segment_t old_fs; + struct file *cal_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cal_filp = filp_open(CALIBRATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cal_filp)) { + iErr = PTR_ERR(cal_filp); + if (iErr != -ENOENT) + pr_err("[SSP]: %s - Can't open calibration file(%d)\n", + __func__, iErr); + set_fs(old_fs); + return iErr; + } + iErr = cal_filp->f_op->read(cal_filp, + chBuf, 10 * sizeof(char), &cal_filp->f_pos); + if (iErr < 0) { + pr_err("[SSP]: %s - Can't read the cal data from file (%d)\n", + __func__, iErr); + return iErr; + } + filp_close(cal_filp, current->files); + set_fs(old_fs); + + iErr = kstrtoint(chBuf, 10, &data->iPressureCal); + if (iErr < 0) { + pr_err("[SSP]: %s - kstrtoint failed. %d", __func__, iErr); + return iErr; + } + + ssp_dbg("[SSP]: open barometer calibration %d\n", data->iPressureCal); + + if (data->iPressureCal < PR_ABS_MIN || data->iPressureCal > PR_ABS_MAX) + pr_err("[SSP]: %s - wrong offset value!!!\n", __func__); + + return iErr; +} + +static ssize_t pressure_cabratioin_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int iPressureCal = 0, iErr = 0; + + iErr = kstrtoint(buf, 10, &iPressureCal); + if (iErr < 0) { + pr_err("[SSP]: %s - kstrtoint failed.(%d)", __func__, iErr); + return iErr; + } + + if (iPressureCal < PR_ABS_MIN || iPressureCal > PR_ABS_MAX) + return -EINVAL; + + data->iPressureCal = (s32)iPressureCal; + + return size; +} + +static ssize_t pressure_cabratioin_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pressure_open_calibration(data); + + return sprintf(buf, "%d\n", data->iPressureCal); +} + +static ssize_t eeprom_check_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf = 0; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = PRESSURE_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 3000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Pressure Selftest Timeout!!\n", __func__); + goto exit; + } + + ssp_dbg("[SSP]: %s - %u\n", __func__, chTempBuf); + + exit: + return snprintf(buf, PAGE_SIZE, "%d", chTempBuf); +} + +/* sysfs for vendor & name */ +static ssize_t pressure_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ +#if defined (LPS25H_REV) + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->ap_rev >= LPS25H_REV) + return sprintf(buf, "%s\n", VENDOR_STM); + else + return sprintf(buf, "%s\n", VENDOR); +#else + return sprintf(buf, "%s\n", VENDOR); +#endif +} + +static ssize_t pressure_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ +#if defined (LPS25H_REV) + struct ssp_data *data = dev_get_drvdata(dev); + + if(data->ap_rev >= LPS25H_REV) + return sprintf(buf, "%s\n", CHIP_ID_LPS25H); + else + return sprintf(buf, "%s\n", CHIP_ID); +#else + return sprintf(buf, "%s\n", CHIP_ID); +#endif +} + +static DEVICE_ATTR(vendor, S_IRUGO, pressure_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, pressure_name_show, NULL); +static DEVICE_ATTR(eeprom_check, S_IRUGO, eeprom_check_show, NULL); +static DEVICE_ATTR(calibration, S_IRUGO | S_IWUSR | S_IWGRP, + pressure_cabratioin_show, pressure_cabratioin_store); +static DEVICE_ATTR(sea_level_pressure, S_IRUGO | S_IWUSR | S_IWGRP, + NULL, sea_level_pressure_store); + +static struct device_attribute *pressure_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_calibration, + &dev_attr_sea_level_pressure, + &dev_attr_eeprom_check, + NULL, +}; + +#if defined (LPS25H_REV) +static struct device_attribute *pressure_attrs_lps25h[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_calibration, + &dev_attr_sea_level_pressure, + NULL, +}; +#endif + +void initialize_pressure_factorytest(struct ssp_data *data) +{ +#if defined (LPS25H_REV) + if(data->ap_rev >= LPS25H_REV) + sensors_register(data->prs_device, data, pressure_attrs_lps25h, + "barometer_sensor"); + else + sensors_register(data->prs_device, data, pressure_attrs, + "barometer_sensor"); +#else + sensors_register(data->prs_device, data, pressure_attrs, + "barometer_sensor"); +#endif +} + +void remove_pressure_factorytest(struct ssp_data *data) +{ +#if defined (LPS25H_REV) + if(data->ap_rev >= LPS25H_REV) + sensors_unregister(data->prs_device, pressure_attrs_lps25h); + else + sensors_unregister(data->prs_device, pressure_attrs); +#else + sensors_unregister(data->prs_device, pressure_attrs); +#endif +} diff --git a/drivers/sensorhub/stm_patek/factory/prox_max88920.c b/drivers/sensorhub/stm_patek/factory/prox_max88920.c new file mode 100644 index 000000000000..805312a0ea98 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/prox_max88920.c @@ -0,0 +1,502 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" + +#ifdef CONFIG_SENSORS_SSP_TMG399X +#define VENDOR "AMS" +#define CHIP_ID "TMG399X" +#else +#define VENDOR "MAXIM" +#define CHIP_ID "MAX88920" +#endif + +#define CANCELATION_FILE_PATH "/efs/prox_cal" +#define LCD_LDI_FILE_PATH "/sys/class/lcd/panel/window_type" + +#define LINE_1 '4' +#define LINE_2 '2' + +#define LDI_OTHERS '0' +#define LDI_GRAY '1' +#define LDI_WHITE '2' + +#if defined(CONFIG_SEC_KACTIVE_PROJECT) +#define CAL_SKIP_ADC 52 +#define CAL_FAIL_ADC 80 +#else +#define CAL_SKIP_ADC 55 +#define CAL_FAIL_ADC 90 +#endif + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +static ssize_t prox_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t prox_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t proximity_avg_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%d,%d,%d\n", + data->buf[PROXIMITY_RAW].prox[1], + data->buf[PROXIMITY_RAW].prox[2], + data->buf[PROXIMITY_RAW].prox[3]); +} + +static ssize_t proximity_avg_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + char chTempbuf[9] = { 0, }; + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) { + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); + data->bProximityRawEnabled = true; + } else { + send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, + chTempbuf, 4); + data->bProximityRawEnabled = false; + } + + return size; +} + +static u16 get_proximity_rawdata(struct ssp_data *data) +{ + u16 uRowdata = 0; + char chTempbuf[9] = { 0, }; + + s32 dMsDelay = 20; + memcpy(&chTempbuf[0], &dMsDelay, 4); + + if (data->bProximityRawEnabled == false) { + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, chTempbuf, 9); + msleep(200); + uRowdata = data->buf[PROXIMITY_RAW].prox[0]; + send_instruction(data, REMOVE_SENSOR, PROXIMITY_RAW, + chTempbuf, 4); + } else { + uRowdata = data->buf[PROXIMITY_RAW].prox[0]; + } + + return uRowdata; +} + +static ssize_t proximity_state_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", get_proximity_rawdata(data)); +} + +static ssize_t proximity_raw_data_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%u\n", get_proximity_rawdata(data)); +} + +static int get_proximity_threshold(struct ssp_data *data) +{ + if (data->uCrosstalk < CAL_SKIP_ADC) { + data->uProxCanc = 0; + data->uProxCalResult = 2; + pr_info("[SSP] crosstalk < %d, skip calibration\n", CAL_SKIP_ADC); + } else if (data->uCrosstalk <= CAL_FAIL_ADC) { + data->uProxCanc = data->uCrosstalk * 5 / 10; + data->uProxCalResult = 1; + } else { + data->uProxCanc = 0; + data->uProxCalResult = 0; + pr_info("[SSP] crosstalk > %d, calibration failed\n", CAL_FAIL_ADC); + return ERROR; + } + data->uProxHiThresh = data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = data->uProxLoThresh_default + data->uProxCanc; + + pr_info("[SSP] %s - crosstalk_offset = %u(%u), HI_THD = %u, LOW_THD = %u\n", + __func__, data->uProxCanc, data->uCrosstalk, + data->uProxHiThresh, data->uProxLoThresh); + return SUCCESS; +} + +static void change_proximity_default_threshold(struct ssp_data *data) +{ + switch (data->chLcdLdi[1]) { + case LDI_GRAY: + data->uProxHiThresh_default = TBD_HIGH_THRESHOLD; + data->uProxLoThresh_default = TBD_LOW_THRESHOLD; + break; + case LDI_WHITE: + data->uProxHiThresh_default = WHITE_HIGH_THRESHOLD; + data->uProxLoThresh_default = WHITE_LOW_THRESHOLD; + break; + case LDI_OTHERS: + data->uProxHiThresh_default = DEFUALT_HIGH_THRESHOLD; + data->uProxLoThresh_default = DEFUALT_LOW_THRESHOLD; + break; + default: + data->uProxHiThresh_default = DEFUALT_HIGH_THRESHOLD; + data->uProxLoThresh_default = DEFUALT_LOW_THRESHOLD; + break; + } + + data->uProxHiThresh = data->uProxHiThresh_default; + data->uProxLoThresh = data->uProxLoThresh_default; +} + +int proximity_open_lcd_ldi(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(LCD_LDI_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cancel_filp)) { + iRet = PTR_ERR(cancel_filp); + if (iRet != -ENOENT) + pr_err("[SSP]: %s - Can't open lcd ldi file\n", + __func__); + set_fs(old_fs); + data->chLcdLdi[0] = 0; + data->chLcdLdi[1] = 0; + goto exit; + } + + iRet = cancel_filp->f_op->read(cancel_filp, + (u8 *)data->chLcdLdi, sizeof(u8) * 2, &cancel_filp->f_pos); + if (iRet != (sizeof(u8) * 2)) { + pr_err("[SSP]: %s - Can't read the lcd ldi data\n", __func__); + iRet = -EIO; + } + + ssp_dbg("[SSP]: %s - %c%c\n", __func__, + data->chLcdLdi[0], data->chLcdLdi[1]); + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + +exit: + change_proximity_default_threshold(data); + return iRet; +} + +int proximity_open_calibration(struct ssp_data *data) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(CANCELATION_FILE_PATH, O_RDONLY, 0666); + if (IS_ERR(cancel_filp)) { + iRet = PTR_ERR(cancel_filp); + if (iRet != -ENOENT) + pr_err("[SSP]: %s - Can't open cancelation file\n", + __func__); + set_fs(old_fs); + goto exit; + } + + iRet = cancel_filp->f_op->read(cancel_filp, + (u8 *)&data->uProxCanc, sizeof(unsigned int), &cancel_filp->f_pos); + if (iRet != sizeof(u8)) { + pr_err("[SSP]: %s - Can't read the cancel data\n", __func__); + iRet = -EIO; + } + + if (data->uProxCanc != 0) { + /*If there is an offset cal data. */ + data->uProxHiThresh = + data->uProxHiThresh_default + data->uProxCanc; + data->uProxLoThresh = + data->uProxLoThresh_default + data->uProxCanc; + } + + pr_info("%s: proximity ps_canc = %d, ps_thresh hi - %d lo - %d\n", + __func__, data->uProxCanc, data->uProxHiThresh, + data->uProxLoThresh); + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + +exit: + return iRet; +} + +static int proximity_store_cancelation(struct ssp_data *data, int iCalCMD) +{ + int iRet = 0; + mm_segment_t old_fs; + struct file *cancel_filp = NULL; + + if (iCalCMD) { + data->uCrosstalk = get_proximity_rawdata(data); + iRet = get_proximity_threshold(data); + } else { + data->uProxHiThresh = data->uProxHiThresh_default; + data->uProxLoThresh = data->uProxLoThresh_default; + data->uProxCanc = 0; + } + + if (iRet != ERROR) + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + cancel_filp = filp_open(CANCELATION_FILE_PATH, + O_CREAT | O_TRUNC | O_WRONLY | O_SYNC, 0666); + if (IS_ERR(cancel_filp)) { + pr_err("%s: Can't open cancelation file\n", __func__); + set_fs(old_fs); + iRet = PTR_ERR(cancel_filp); + return iRet; + } + + iRet = cancel_filp->f_op->write(cancel_filp, (u8 *)&data->uProxCanc, + sizeof(unsigned int), &cancel_filp->f_pos); + if (iRet != sizeof(unsigned int)) { + pr_err("%s: Can't write the cancel data to file\n", __func__); + iRet = -EIO; + } + + filp_close(cancel_filp, current->files); + set_fs(old_fs); + + return iRet; +} + +static ssize_t proximity_cancel_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh : hi : %u lo : %u, uProxCanc = %u\n", + data->uProxHiThresh, data->uProxLoThresh, data->uProxCanc); + + return sprintf(buf, "%u,%u,%u\n", data->uProxCanc, + data->uProxHiThresh, data->uProxLoThresh); +} + +static ssize_t proximity_cancel_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iCalCMD = 0, iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* calibrate cancelation value */ + iCalCMD = 1; + else if (sysfs_streq(buf, "0")) /* reset cancelation value */ + iCalCMD = 0; + else { + pr_debug("%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + iRet = proximity_store_cancelation(data, iCalCMD); + if (iRet < 0) { + pr_err("[SSP]: - %s proximity_store_cancelation() failed\n", + __func__); + return iRet; + } + + ssp_dbg("[SSP]: %s - %u\n", __func__, iCalCMD); + return size; +} + +static ssize_t proximity_thresh_high_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh = hi - %u, lo - %u\n", + data->uProxHiThresh, data->uProxLoThresh); + + return sprintf(buf, "%u,%u\n", data->uProxHiThresh, + data->uProxLoThresh); +} + +static ssize_t proximity_thresh_high_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewThresh; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtou16(buf, 10, &uNewThresh); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + if(uNewThresh & 0xfc00) + pr_err("[SSP]: %s - allow 10bits.(%d)\n", __func__, uNewThresh); + else { + uNewThresh &= 0x03ff; + data->uProxHiThresh = uNewThresh; + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + } + } + + ssp_dbg("[SSP]: %s - new prox threshold : hi - %u, lo - %u\n", + __func__, data->uProxHiThresh, data->uProxLoThresh); + + return size; +} + +static ssize_t proximity_thresh_low_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: uProxThresh = hi - %u, lo - %u\n", + data->uProxHiThresh, data->uProxLoThresh); + + return sprintf(buf, "%u,%u\n", data->uProxHiThresh, + data->uProxLoThresh); +} + +static ssize_t proximity_thresh_low_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u16 uNewThresh; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtou16(buf, 10, &uNewThresh); + if (iRet < 0) + pr_err("[SSP]: %s - kstrtoint failed.(%d)\n", __func__, iRet); + else { + if(uNewThresh & 0xfc00) + pr_err("[SSP]: %s - allow 10bits.(%d)\n", __func__, uNewThresh); + else { + uNewThresh &= 0x03ff; + data->uProxLoThresh = uNewThresh; + set_proximity_threshold(data, data->uProxHiThresh, + data->uProxLoThresh); + } + } + + ssp_dbg("[SSP]: %s - new prox threshold : hi - %u, lo - %u\n", + __func__, data->uProxHiThresh, data->uProxLoThresh); + + return size; +} + +static ssize_t proximity_cancel_pass_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s, %u\n", __func__, data->uProxCalResult); + return snprintf(buf, PAGE_SIZE, "%u\n", data->uProxCalResult); +} + +static ssize_t barcode_emul_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->bBarcodeEnabled); +} + +static ssize_t barcode_emul_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int iRet; + int64_t dEnable; + struct ssp_data *data = dev_get_drvdata(dev); + + iRet = kstrtoll(buf, 10, &dEnable); + if (iRet < 0) + return iRet; + + if (dEnable) + set_proximity_barcode_enable(data, true); + else + set_proximity_barcode_enable(data, false); + + return size; +} + +static DEVICE_ATTR(vendor, S_IRUGO, prox_vendor_show, NULL); +static DEVICE_ATTR(name, S_IRUGO, prox_name_show, NULL); +static DEVICE_ATTR(state, S_IRUGO, proximity_state_show, NULL); +static DEVICE_ATTR(raw_data, S_IRUGO, proximity_raw_data_show, NULL); +static DEVICE_ATTR(barcode_emul_en, S_IRUGO | S_IWUSR | S_IWGRP, + barcode_emul_enable_show, barcode_emul_enable_store); +static DEVICE_ATTR(prox_avg, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_avg_show, proximity_avg_store); +static DEVICE_ATTR(prox_cal, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_cancel_show, proximity_cancel_store); +static DEVICE_ATTR(thresh_high, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_thresh_high_show, proximity_thresh_high_store); +static DEVICE_ATTR(thresh_low, S_IRUGO | S_IWUSR | S_IWGRP, + proximity_thresh_low_show, proximity_thresh_low_store); +static DEVICE_ATTR(prox_offset_pass, S_IRUGO, proximity_cancel_pass_show, NULL); + +static struct device_attribute *prox_attrs[] = { + &dev_attr_vendor, + &dev_attr_name, + &dev_attr_state, + &dev_attr_raw_data, + &dev_attr_prox_avg, + &dev_attr_prox_cal, + &dev_attr_thresh_high, + &dev_attr_thresh_low, + &dev_attr_barcode_emul_en, + &dev_attr_prox_offset_pass, + NULL, +}; + +void initialize_prox_factorytest(struct ssp_data *data) +{ + sensors_register(data->prox_device, data, + prox_attrs, "proximity_sensor"); +} + +void remove_prox_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->prox_device, prox_attrs); +} diff --git a/drivers/sensorhub/stm_patek/factory/temphumidity_shtc1.c b/drivers/sensorhub/stm_patek/factory/temphumidity_shtc1.c new file mode 100644 index 000000000000..c2065a0874c4 --- /dev/null +++ b/drivers/sensorhub/stm_patek/factory/temphumidity_shtc1.c @@ -0,0 +1,693 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "../ssp.h" +#include + +/*************************************************************************/ +/* factory Sysfs */ +/*************************************************************************/ + +#define VENDOR "SENSIRION" +#define CHIP_ID "SHTC1" +#define DONE_CAL 3 + +#define SHTC1_IOCTL_MAGIC 0xFB +#define IOCTL_READ_COMPLETE _IOR(SHTC1_IOCTL_MAGIC, 0x01, unsigned short *) +#define IOCTL_READ_ADC_BATT_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x02, unsigned short *) +#define IOCTL_READ_ADC_CHG_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x03, unsigned short *) +#define IOCTL_READ_THM_SHTC1_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x04, short *) +#define IOCTL_READ_HUM_SHTC1_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x05, unsigned short *) +#define IOCTL_READ_THM_BARO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x06, unsigned short *) +#define IOCTL_READ_THM_GYRO_DATA _IOR(SHTC1_IOCTL_MAGIC, 0x07, unsigned short *) + +#if defined(CONFIG_MACH_KLTE_EUR) +#define MODEL_NAME "SM-G900F" +#elif defined(CONFIG_MACH_KLTE_ATT) +#define MODEL_NAME "SM-G900A" +#elif defined(CONFIG_MACH_KLTE_SPR) +#define MODEL_NAME "SM-G900P" +#elif defined(CONFIG_MACH_KLTE_TMO) +#define MODEL_NAME "SM-G900T" +#elif defined(CONFIG_MACH_KLTE_USC) +#define MODEL_NAME "SM-G900R4" +#elif defined(CONFIG_MACH_KLTE_VZW) +#define MODEL_NAME "SM-G900V" +#elif defined(CONFIG_MACH_KLTE_DCM) +#define MODEL_NAME "SM-G900D" +#elif defined(CONFIG_MACH_KLTE_KDI) +#define MODEL_NAME "SM-G900J" +#elif defined(CONFIG_MACH_KLTE_SBM) +#define MODEL_NAME "SM-G900Z" +#elif defined(CONFIG_MACH_KLTE_CMCC) +#define MODEL_NAME "SM-G9008V" +#elif defined(CONFIG_MACH_KLTE_CMCCDUOS) +#define MODEL_NAME "SM-G9008W" +#elif defined(CONFIG_MACH_KLTE_CU) +#define MODEL_NAME "SM-G9006V" +#elif defined(CONFIG_MACH_KLTE_CUDUOS) +#define MODEL_NAME "SM-G9006W" +#elif defined(CONFIG_MACH_KLTE_CTC) +#define MODEL_NAME "SM-G9009W" +#elif defined(CONFIG_MACH_K3GDUOS_CTC) +#define MODEL_NAME "SM-G9009D" +#elif defined(CONFIG_MACH_KLTE_CAN) +#define MODEL_NAME "SM-G900W8" +#elif defined(CONFIG_MACH_KLTE_SKT) +#define MODEL_NAME "SM-G900S" +#elif defined(CONFIG_MACH_KLTE_KTT) +#define MODEL_NAME "SM-G900K" +#elif defined(CONFIG_MACH_KLTE_LGT) +#define MODEL_NAME "SM-G900L" +#else +#define MODEL_NAME "SM-G900" +#endif + +static struct cp_thm_adc_table temp_table_batt[] = { + {636, 600}, {659, 590}, {683, 580}, {707, 570}, {730, 560}, + {754, 550}, {782, 540}, {810, 530}, {838, 520}, {866, 510}, + {894, 500}, {924, 490}, {953, 480}, {982, 470}, {1011, 460}, + {1040, 450}, {1077, 440}, {1114, 430}, {1152, 420}, {1189, 410}, + {1227, 400}, {1259, 390}, {1293, 380}, {1326, 370}, {1360, 360}, + {1394, 350}, {1435, 340}, {1476, 330}, {1516, 320}, {1557, 310}, + {1598, 300}, {1642, 290}, {1687, 280}, {1731, 270}, {1776, 260}, + {1820, 250}, {1866, 240}, {1913, 230}, {1961, 220}, {2008, 210}, + {2055, 200}, {2111, 190}, {2166, 180}, {2222, 170}, {2277, 160}, + {2333, 150}, {2382, 140}, {2431, 130}, {2480, 120}, {2529, 110}, + {2578, 100}, {2624, 90}, {2670, 80}, {2717, 70}, {2763, 60}, + {2810, 50}, {2851, 40}, {2892, 30}, {2933, 20}, {2973, 10}, + {3014, 0}, {3056, -10}, {3099, -20}, {3142, -30}, {3185, -40}, + {3229, -50}, {3320, -60}, {3336, -70}, {3352, -80}, {3368, -90}, + {3385, -100}, {3494, -110}, {3509, -120}, {3524, -130}, {3539, -140}, + {3554, -150}, {3614, -160}, {3629, -170}, {3644, -180},{3659, -190}, + {3674, -200} + }; + +static struct cp_thm_adc_table temp_table_chg[] = { + {636, 600}, {659, 590}, {682, 580}, {705, 570}, {728, 560}, + {751, 550}, {779, 540}, {808, 530}, {837, 520}, {866, 510}, + {895, 500}, {924, 490}, {953, 480}, {982, 470}, {1011, 460}, + {1040, 450}, {1077, 440}, {1115, 430}, {1152, 420}, {1189, 410}, + {1227, 400}, {1260, 390}, {1293, 380}, {1326, 370}, {1360, 360}, + {1393, 350}, {1435, 340}, {1477, 330}, {1520, 320}, {1562, 310}, + {1604, 300}, {1648, 290}, {1691, 280}, {1735, 270}, {1778, 260}, + {1822, 250}, {1869, 240}, {1915, 230}, {1962, 220}, {2009, 210}, + {2056, 200}, {2110, 190}, {2164, 180}, {2219, 170}, {2273, 160}, + {2328, 150}, {2379, 140}, {2430, 130}, {2481, 120}, {2532, 110}, + {2584, 100}, {2629, 90}, {2674, 80}, {2719, 70}, {2764, 60}, + {2810, 50}, {2852, 40}, {2895, 30}, {2937, 20}, {2980, 10}, + {3022, 0}, {3063, -10}, {3103, -20}, {3144, -30}, {3184, -40}, + {3225, -50}, {3257, -60}, {3290, -70}, {3322, -80}, {3355, -90}, + {3387, -100}, {3523, -110}, {3532, -120}, {3540, -130}, {3549, -140}, + {3558, -150}, {3654, -160}, {3658, -170}, {3661, -180}, {3664, -190}, + {3667, -200} + }; + +struct qpnp_vadc_chip *ssp_vadc; + +static long ssp_temphumidity_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_data *data + = container_of(file->private_data, + struct ssp_data, shtc1_device); + + void __user *argp = (void __user *)arg; + int retries = 2; + int length = 0; + int ret = 0; + if (data->bulk_buffer == NULL) + return -EINVAL; + + length = data->bulk_buffer->len; + mutex_lock(&data->bulk_temp_read_lock); + switch (cmd) { + case IOCTL_READ_COMPLETE: /* free */ + if(data->bulk_buffer) { + kfree(data->bulk_buffer); + data->bulk_buffer = NULL; + } + length = 1; + break; + + case IOCTL_READ_ADC_BATT_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->batt, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_ADC_CHG_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->chg, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_SHTC1_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->temp, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_HUM_SHTC1_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->humidity, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_BARO_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->baro, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + case IOCTL_READ_THM_GYRO_DATA: + while (retries--) { + ret = copy_to_user(argp, + data->bulk_buffer->gyro, + data->bulk_buffer->len*2); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] read bluk adc1 data err(%d)", ret); + goto ioctl_error; + } + break; + + default: + pr_err("[SSP] temp ioctl cmd err(%d)", cmd); + ret = EINVAL; + goto ioctl_error; + } + mutex_unlock(&data->bulk_temp_read_lock); + return length; + +ioctl_error: + mutex_unlock(&data->bulk_temp_read_lock); + return -ret; +} + +static struct file_operations ssp_temphumidity_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = ssp_temphumidity_ioctl, +}; + +static int get_cp_thm_value(struct ssp_data *data) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); + err = qpnp_vadc_read(ssp_vadc, LR_MUX6_PU1_AMUX_THM3, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX6_PU2_AMUX_THM3, err); + return err; + } + return results.adc_code; + +} + +static int get_cp_thm2_value(struct ssp_data *data) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); + err = qpnp_vadc_read(ssp_vadc, LR_MUX8_PU1_AMUX_THM4, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX8_PU2_AMUX_THM4, err); + return err; + } + return results.adc_code; +} + +static int convert_adc_to_temp(struct ssp_data *data, unsigned int adc) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); + err = qpnp_vadc_read(ssp_vadc, LR_MUX6_PU1_AMUX_THM3, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX6_PU2_AMUX_THM3, err); + return err; + } + + return results.physical * 10; +} + +static int convert_adc_to_temp2(struct ssp_data *data, unsigned int adc) +{ + int err = 0; + struct qpnp_vadc_result results; + mutex_lock(&data->cp_temp_adc_lock); + err = qpnp_vadc_read(ssp_vadc, LR_MUX8_PU1_AMUX_THM4, &results); + mutex_unlock(&data->cp_temp_adc_lock); + if (err) { + pr_err("%s : error reading chn %d, rc = %d\n", + __func__, LR_MUX8_PU2_AMUX_THM4, err); + return err; + } + + return results.physical * 10; +} + +static ssize_t temphumidity_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", VENDOR); +} + +static ssize_t temphumidity_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%s\n", CHIP_ID); +} + +static ssize_t engine_version_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - engine_ver = %s_%s\n", + __func__, MODEL_NAME, data->comp_engine_ver); + + return sprintf(buf, "%s_%s\n", + MODEL_NAME, data->comp_engine_ver); +} + +static ssize_t engine_version_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + kfree(data->comp_engine_ver); + data->comp_engine_ver = + kzalloc(((strlen(buf)+1) * sizeof(char)), GFP_KERNEL); + strncpy(data->comp_engine_ver, buf, strlen(buf)+1); + pr_info("[SSP] %s - engine_ver = %s, %s\n", + __func__, data->comp_engine_ver, buf); + + return size; +} + +static ssize_t engine_version2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_info("[SSP] %s - engine_ver2 = %s_%s\n", + __func__, MODEL_NAME, data->comp_engine_ver2); + + return sprintf(buf, "%s_%s\n", + MODEL_NAME, data->comp_engine_ver2); +} + +static ssize_t engine_version2_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + kfree(data->comp_engine_ver2); + data->comp_engine_ver2 = + kzalloc(((strlen(buf)+1) * sizeof(char)), GFP_KERNEL); + strncpy(data->comp_engine_ver2, buf, strlen(buf)+1); + pr_info("[SSP] %s - engine_ver2 = %s, %s\n", + __func__, data->comp_engine_ver2, buf); + + return size; +} + +static ssize_t pam_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc = 0; + if (data->bSspShutdown == true) { + adc = 0; + goto exit; + } + adc = get_cp_thm_value(data); + /* pr_info("[SSP] %s cp_thm = %dmV\n", __func__, adc); */ +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t pam_adc2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc; + if (data->bSspShutdown == true) { + adc = 0; + goto exit; + } + adc = get_cp_thm2_value(data); + /* pr_info("[SSP] %s cp_thm = %dmV\n", __func__, adc); */ +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t pam_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc, temp; + + adc = get_cp_thm_value(data); + if (adc < 0) { + pr_err("[SSP] %s - reading adc failed.(%d)\n", __func__, adc); + temp = adc; + } else { + temp = convert_adc_to_temp(data, adc); + } + + pr_info("[SSP] %s cp_temperature(Celsius * 10) = %d\n", + __func__, temp); + return sprintf(buf, "%d\n", temp); +} + +static ssize_t pam_temp2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int adc, temp; + + adc = get_cp_thm_value(data); + if (adc < 0) { + pr_err("[SSP] %s - reading adc failed.(%d)\n", __func__, adc); + temp = adc; + } else { + temp = convert_adc_to_temp2(data, adc); + } + + pr_info("[SSP] %s cp_temperature(Celsius * 10) = %d\n", + __func__, temp); + return sprintf(buf, "%d\n", temp); +} + +s16 get_hub_adc(struct ssp_data *data, u32 chan) { + + s16 adc = -1; + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_THERM; + msg->length = 2; + msg->options = AP2HUB_READ; + msg->data = chan; + msg->buffer = (char *) &adc; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return adc; +} + +static ssize_t hub_batt_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + static s16 prev_adc = 1865; + s16 adc; + + if (data->bSspShutdown == true){ + adc = 0; + goto exit; + } + + adc = get_hub_adc(data, ADC_BATT); + + if (adc > 0) + prev_adc = adc; + else + adc = prev_adc; + + pr_info("[SSP]: %s: adc %d\n", __func__, adc); + +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t hub_chg_adc_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + static s16 prev_adc = 1630; + s16 adc; + + if (data->bSspShutdown == true){ + adc = 0; + goto exit; + } + + adc = get_hub_adc(data, ADC_CHG); + + if (adc > 0) + prev_adc = adc; + else + adc = prev_adc; + + pr_info("[SSP]: %s: adc %d\n", __func__, adc); + +exit: + return sprintf(buf, "%d\n", adc); +} + +static ssize_t hub_batt_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int low = 0; + int high = 0; + int mid = 0; + u8 array_size = ARRAY_SIZE(temp_table_batt); + + s16 adc = get_hub_adc(data, ADC_BATT); + high = array_size - 1; + while (low <= high) { + mid = (low + high) / 2; + if (temp_table_batt[mid].adc > adc) + high = mid - 1; + else if (temp_table_batt[mid].adc < adc) + low = mid + 1; + else + break; + } + + pr_info("[SSP]: %s: adc %d\n", __func__, temp_table_batt[mid].temperature); + + return sprintf(buf, "%d\n", temp_table_batt[mid].temperature); + +} + +static ssize_t hub_chg_temp_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int low = 0; + int high = 0; + int mid = 0; + u8 array_size = ARRAY_SIZE(temp_table_chg); + + s16 adc = get_hub_adc(data, ADC_CHG); + high = array_size - 1; + while (low <= high) { + mid = (low + high) / 2; + if (temp_table_chg[mid].adc > adc) + high = mid - 1; + else if (temp_table_chg[mid].adc < adc) + low = mid + 1; + else + break; + } + + pr_info("[SSP]: %s: adc %d\n", __func__, temp_table_chg[mid].temperature); + return sprintf(buf, "%d\n", temp_table_chg[mid].temperature); +} + +static ssize_t temphumidity_crc_check(struct device *dev, + struct device_attribute *attr, char *buf) +{ + char chTempBuf = 0xff; + int iRet = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = TEMPHUMIDITY_CRC_FACTORY; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &chTempBuf; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Temphumidity check crc Timeout!! %d\n", __func__, + iRet); + goto exit; + } + + pr_info("[SSP] : %s -Check_CRC : %d\n", __func__, + chTempBuf); + + exit: + if (chTempBuf == 1) + return sprintf(buf, "%s\n", "OK"); + else if (chTempBuf == 2) + return sprintf(buf, "%s\n", "NG_NC"); + else + return sprintf(buf, "%s\n", "NG"); +} + +ssize_t temphumidity_send_accuracy(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + u8 accuracy; + + if (kstrtou8(buf, 10, &accuracy) < 0) { + pr_err("[SSP] %s - read buf is fail(%s)\n", __func__, buf); + return size; + } + + if (accuracy == DONE_CAL) + ssp_send_cmd(data, MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE, 0); + pr_info("[SSP] %s - accuracy = %d\n", __func__, accuracy); + + return size; +} + +static DEVICE_ATTR(name, S_IRUGO, temphumidity_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, temphumidity_vendor_show, NULL); +static DEVICE_ATTR(engine_ver, S_IRUGO | S_IWUSR | S_IWGRP, + engine_version_show, engine_version_store); +static DEVICE_ATTR(engine_ver2, S_IRUGO | S_IWUSR | S_IWGRP, + engine_version2_show, engine_version2_store); +static DEVICE_ATTR(cp_thm, S_IRUGO, pam_adc_show, NULL); +static DEVICE_ATTR(cp_thm2, S_IRUGO, pam_adc2_show, NULL); +static DEVICE_ATTR(cp_temperature, S_IRUGO, pam_temp_show, NULL); +static DEVICE_ATTR(cp_temperature2, S_IRUGO, pam_temp2_show, NULL); +static DEVICE_ATTR(mcu_batt_adc, S_IRUGO, hub_batt_adc_show, NULL); +static DEVICE_ATTR(mcu_chg_adc, S_IRUGO, hub_chg_adc_show, NULL); +static DEVICE_ATTR(batt_temperature, S_IRUGO, hub_batt_temp_show, NULL); +static DEVICE_ATTR(chg_temperature, S_IRUGO, hub_chg_temp_show, NULL); +static DEVICE_ATTR(crc_check, S_IRUGO, + temphumidity_crc_check, NULL); +static DEVICE_ATTR(send_accuracy, S_IWUSR | S_IWGRP, + NULL, temphumidity_send_accuracy); + +static struct device_attribute *temphumidity_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_engine_ver, + &dev_attr_engine_ver2, + &dev_attr_cp_thm, + &dev_attr_cp_thm2, + &dev_attr_cp_temperature, + &dev_attr_cp_temperature2, + &dev_attr_mcu_batt_adc, + &dev_attr_mcu_chg_adc, + &dev_attr_batt_temperature, + &dev_attr_chg_temperature, + &dev_attr_crc_check, + &dev_attr_send_accuracy, + NULL, +}; + +void initialize_temphumidity_factorytest(struct ssp_data *data) +{ + int ret; + sensors_register(data->temphumidity_device, + data, temphumidity_attrs, "temphumidity_sensor"); + + data->shtc1_device.minor = MISC_DYNAMIC_MINOR; + data->shtc1_device.name = "shtc1_sensor"; + data->shtc1_device.fops = &ssp_temphumidity_fops; + + ret = misc_register(&data->shtc1_device); + if (ret < 0) { + pr_err("register temphumidity misc device err(%d)", ret); + } + + ssp_vadc = qpnp_get_vadc(&data->spi->dev, "temphumidity_sensor"); + + if (IS_ERR(ssp_vadc)) { + ret = PTR_ERR(ssp_vadc); + if (ret != -EPROBE_DEFER) + pr_err("%s: Fail to get vadc %d\n", __func__, ret); + } + +} + +void remove_temphumidity_factorytest(struct ssp_data *data) +{ + if (data->comp_engine_ver != NULL) + kfree(data->comp_engine_ver); + if (data->comp_engine_ver2 != NULL) + kfree(data->comp_engine_ver2); + sensors_unregister(data->temphumidity_device, temphumidity_attrs); + ssp_temphumidity_fops.unlocked_ioctl = NULL; + misc_deregister(&data->shtc1_device); + +} diff --git a/drivers/sensorhub/stm_patek/max86900.c b/drivers/sensorhub/stm_patek/max86900.c new file mode 100644 index 000000000000..dd7244a0476a --- /dev/null +++ b/drivers/sensorhub/stm_patek/max86900.c @@ -0,0 +1,1440 @@ +/* + * Copyright (c)2013 Maxim Integrated Products, Inc. + * + * This software is licensed under the terms of the GNU General Public + * License, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA + */ + +#include "max86900.h" +#ifdef CONFIG_OF +#include +#endif + +#define MAX86900_I2C_RETRY_DELAY 10 +#define MAX86900_I2C_MAX_RETRIES 5 +#define MAX86900_COUNT_MAX 65532 +#define MAX86900_WHOAMI_REG 0xFE +#define MAX86900_WHOAMI 0x01 +#define MAX86900A_WHOAMI 0x11 +#define MAX86900A_REV_ID 0x00 +#define MAX86900B_REV_ID 0x04 +#define MAX86900C_REV_ID 0x05 + +#define MAX86900_DEFAULT_CURRENT 0x55 +#define MAX86900A_DEFAULT_CURRENT 0xFF +#define MAX86900C_DEFAULT_CURRENT 0x0F + +#define MODULE_NAME_HRM "hrm_sensor" +#define CHIP_NAME "MAX86900" +#define VENDOR "MAXIM" +#define HRM_LDO_ON 1 +#define HRM_LDO_OFF 0 +#define MAX_EOL_RESULT 132 +#define MAX_LIB_VER 20 + +#define SAMPLE_RATE 4 + +/* I2C function */ +static int max86900_write_reg(struct max86900_device_data *device, + u8 reg_addr, u8 data) +{ + int err; + int tries = 0; + u8 buffer[2] = { reg_addr, data }; + struct i2c_msg msgs[] = { + { + .addr = device->client->addr, + .flags = device->client->flags & I2C_M_TEN, + .len = 2, + .buf = buffer, + }, + }; + + do { + mutex_lock(&device->i2clock); + err = i2c_transfer(device->client->adapter, msgs, 1); + mutex_unlock(&device->i2clock); + if (err != 1) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + + } while ((err != 1) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 1) { + pr_err("%s -write transfer error\n", __func__); + err = -EIO; + return err; + } + + return 0; +} + +static int max86900_read_reg(struct max86900_device_data *data, + u8 *buffer, int length) +{ + int err = -1; + int tries = 0; /* # of attempts to read the device */ + + struct i2c_msg msgs[] = { + { + .addr = data->client->addr, + .flags = data->client->flags & I2C_M_TEN, + .len = 1, + .buf = buffer, + }, + { + .addr = data->client->addr, + .flags = (data->client->flags & I2C_M_TEN) | I2C_M_RD, + .len = length, + .buf = buffer, + }, + }; + + do { + mutex_lock(&data->i2clock); + err = i2c_transfer(data->client->adapter, msgs, 2); + mutex_unlock(&data->i2clock); + if (err != 2) + msleep_interruptible(MAX86900_I2C_RETRY_DELAY); + } while ((err != 2) && (++tries < MAX86900_I2C_MAX_RETRIES)); + + if (err != 2) { + pr_err("%s -read transfer error\n", __func__); + err = -EIO; + } else + err = 0; + + return err; +} + +/* Device Control */ +static int max86900_regulator_onoff(struct max86900_device_data *data, int onoff) +{ + data->vdd_1p8 = regulator_get(NULL, data->sub_ldo4); + if (IS_ERR(data->vdd_1p8)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_1p8; + } + +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + data->vdd_3p3 = regulator_get(NULL, data->led_l19); + if (IS_ERR(data->vdd_3p3)) { + pr_err("%s - regulator_get fail\n", __func__); + goto err_3p3; + } +#endif + pr_info("%s - onoff = %d\n", __func__, onoff); + + if (onoff == HRM_LDO_ON) { + regulator_set_voltage(data->vdd_1p8, 1800000, 1800000); + regulator_enable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_set_voltage(data->vdd_3p3, 3300000, 3300000); + regulator_enable(data->vdd_3p3); +#endif + } else { + regulator_disable(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_disable(data->vdd_3p3); +#endif + } + + regulator_put(data->vdd_1p8); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + regulator_put(data->vdd_3p3); +#endif + return 0; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) +err_3p3: + regulator_put(data->vdd_1p8); +#endif +err_1p8: + return -ENODEV; +} + +static int max86900_init_device(struct max86900_device_data *data) +{ + int err; + u8 recvData; + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error sw shutdown device!\n", __func__); + return -EIO; + } + + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x83); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_INTERRUPT_ENABLE, 0x10); + if (err != 0) { + pr_err("%s - error initializing MAX86900_INTERRUPT_ENABLE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); //400hz 400us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Turn off ALC in case of Max86900A */ + if (data->part_type == PART_TYPE_MAX86900A) { + /* ALC OFF start */ + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x54); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x4D); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_GTST, 0x02); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_GTST!\n", + __func__); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_TEST_ALC, 0x01); + if (err != 0) { + pr_err("%s - error initializing MAX86900_TEST_ALC!\n", + __func__); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_TEST_MODE, 0x00); + if (err != 0) { + pr_err("%s - error Exiting MAX86900_TEST_MODE!\n", + __func__); + return -EIO; + } + /* ALC OFF end */ + } + + + pr_info("%s done, part_type = %u\n", __func__, data->part_type); + + return 0; +} + +static int max86900_enable(struct max86900_device_data *data) +{ + int err; + data->led = 0; + data->sample_cnt = 0; + data->ir_sum = 0; + data->r_sum = 0; + + mutex_lock(&data->activelock); + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->default_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + printk("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + enable_irq(data->irq); + mutex_unlock(&data->activelock); + return 0; +} + +static int max86900_disable(struct max86900_device_data *data) +{ + u8 err; + + mutex_lock(&data->activelock); + disable_irq(data->irq); + + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x40); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x80); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + mutex_unlock(&data->activelock); + + return 0; +} + +static int max86900_read_temperature(struct max86900_device_data *data) +{ + u8 recvData[2] = { 0x00, }; + int err; + + recvData[0] = MAX86900_TEMP_INTEGER; + + err = max86900_read_reg(data, recvData, 2); + if (err != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + data->hrm_temp = ((char)recvData[0]) * 16 + recvData[1]; + + pr_info("%s - %d(%x, %x)\n", __func__, data->hrm_temp, recvData[0], recvData[1]); + + return 0; +} + +static int max86900_eol_test_control(struct max86900_device_data *data) +{ + int err = 0; + u8 led_current = 0; + + if (data->sample_cnt < data->hr_range2) { + data->hr_range = 1; + } else if (data->sample_cnt < (data->hr_range2 + 297)) { + /* Fake pulse */ + if (data->sample_cnt % 8 < 4) { + data->test_current_ir++; + data->test_current_red++; + } else { + data->test_current_ir--; + data->test_current_red--; + } + + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + data->hr_range = 2; + } else if (data->sample_cnt == (data->hr_range2 + 297)) { + /* Measure */ + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, data->led_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 400Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x51); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } else if (data->sample_cnt < ((data->hr_range2 + 297) + 400 * 10)) { + data->hr_range = 3; + } else if (data->sample_cnt == ((data->hr_range2 + 297) + 400 * 10)) { + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->default_current); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_LED_CONFIGURATION!\n", __func__); + return -EIO; + } + /* 100Hz setting */ + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); + if (err != 0) { + pr_err("%s - error initializing\ + MAX86900_SPO2_CONFIGURATION!\n", __func__); + return -EIO; + } + } + data->sample_cnt++; + return 0; +} + +static int max86900_read_data(struct max86900_device_data *device, u16 *data) +{ + u8 err; + u8 recvData[4] = { 0x00, }; + int i; + int ret = 0; + + if (device->sample_cnt == MAX86900_COUNT_MAX) + device->sample_cnt = 0; + + recvData[0] = MAX86900_FIFO_DATA; + if ((err = max86900_read_reg(device, recvData, 4)) != 0) { + pr_err("%s max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData[0]); + return -EIO; + } + + for (i = 0; i < 2; i++) { + data[i] = ((((u16)recvData[i * 2]) << 8 ) & 0xff00) + | ((((u16)recvData[i * 2 + 1])) & 0x00ff); + } + + data[2] = device->led; + + if ((device->sample_cnt % 1000) == 1) + pr_info("%s - %u, %u, %u, %u\n", __func__, + data[0], data[1], data[2], data[3]); + + if (device->sample_cnt == 20 && device->led == 0) { + err = max86900_read_temperature(device); + if (err < 0) { + pr_err("%s - max86900_read_temperature err : %d\n", + __func__, err); + return -EIO; + } + } + + if (device->eol_test_is_enable) { + err = max86900_eol_test_control(device); + if (err < 0) { + pr_err("%s - max86900_eol_test_control err : %d\n", + __func__, err); + return -EIO; + } + } else { + device->ir_sum += data[0]; + device->r_sum += data[1]; + if ((device->sample_cnt % SAMPLE_RATE) == SAMPLE_RATE - 1) { + data[0] = device->ir_sum / SAMPLE_RATE; + data[1] = device->r_sum / SAMPLE_RATE; + device->ir_sum = 0; + device->r_sum = 0; + ret = 0; + } else + ret = 1; + + if (device->sample_cnt++ > 100 && device->led == 0) { + device->led = 1; + } + } + + return ret; +} + +void max86900_mode_enable(struct max86900_device_data *data, int onoff) +{ + int err; + if (onoff) { + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + usleep_range(1000, 1100); + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d\n", + __func__, err); + } + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + atomic_set(&data->is_enable, 1); + } else { + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) + pr_err("%s max86900_regulator_off fail err = %d\n", + __func__, err); + } + + atomic_set(&data->is_enable, 0); + } + pr_info("%s - part_type = %u, onoff = %d\n", __func__, data->part_type, onoff); +} + +/* sysfs */ +static ssize_t max86900_enable_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%d\n", atomic_read(&data->is_enable)); +} + +static ssize_t max86900_enable_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int new_value; + + if (sysfs_streq(buf, "1")) + new_value = 1; + else if (sysfs_streq(buf, "0")) + new_value = 0; + else { + pr_err("%s - invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_mode_enable(data, new_value); + return count; +} + +static ssize_t max86900_poll_delay_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%lld\n", 10000000LL); +} + +static ssize_t max86900_poll_delay_store(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t size) +{ + pr_info("%s - max86900 hrm sensor delay was fixed as 10ms\n", __func__); + return size; +} + +static DEVICE_ATTR(enable, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_enable_show, max86900_enable_store); +static DEVICE_ATTR(poll_delay, S_IRUGO|S_IWUSR|S_IWGRP, + max86900_poll_delay_show, max86900_poll_delay_store); + +static struct attribute *hrm_sysfs_attrs[] = { + &dev_attr_enable.attr, + &dev_attr_poll_delay.attr, + NULL +}; + +static struct attribute_group hrm_attribute_group = { + .attrs = hrm_sysfs_attrs, +}; + +/* test sysfs */ +static int max86900_set_led_current(struct max86900_device_data *data) +{ + int err; + + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, + data->led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + return -EIO; + } + pr_info("%s - led current = %u\n", __func__, data->led_current); + return 0; +} + +static int max86900_set_hr_range(struct max86900_device_data *data) +{ + pr_info("%s - hr_range = %u(0x%x)\n", __func__, + data->hr_range, data->hr_range); + return 0; +} + +static int max86900_set_hr_range2(struct max86900_device_data *data) +{ + pr_info("%s - hr_range2 = %u\n", __func__, data->hr_range2); + return 0; +} + +static int max86900_set_look_mode_ir(struct max86900_device_data *data) +{ + pr_info("%s - look mode ir = %u\n", __func__, data->look_mode_ir); + return 0; +} + +static int max86900_set_look_mode_red(struct max86900_device_data *data) +{ + pr_info("%s - look mode red = %u\n", __func__, data->look_mode_red); + return 0; +} + +static int max86900_eol_test_enable(struct max86900_device_data *data) +{ + int err; + u8 led_current; + data->led = 1; /* Prevent resetting MAX86900_LED_CONFIGURATION */ + data->sample_cnt = 0; + + pr_info("%s\n", __func__); + mutex_lock(&data->activelock); + /* Test Mode Setting Start */ + data->hr_range = 0; /* Set test phase as 0 */ + data->eol_test_status = 0; + data->test_current_ir = data->look_mode_ir; + data->test_current_red = data->look_mode_red; + led_current = (data->test_current_red << 4) | data->test_current_ir; + err = max86900_write_reg(data, MAX86900_LED_CONFIGURATION, led_current); + if (err != 0) { + pr_err("%s - error initializing MAX86900_LED_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_SPO2_CONFIGURATION, 0x47); //100Hz 1600us + if (err != 0) { + pr_err("%s - error initializing MAX86900_SPO2_CONFIGURATION!\n", + __func__); + return -EIO; + } + + /* Clear FIFO */ + err = max86900_write_reg(data, MAX86900_FIFO_WRITE_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_WRITE_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_OVF_COUNTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_OVF_COUNTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + err = max86900_write_reg(data, MAX86900_FIFO_READ_POINTER, 0x00); + if (err != 0) { + pr_err("%s - error initializing MAX86900_FIFO_READ_POINTER!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + /* Shutdown Clear */ + err = max86900_write_reg(data, MAX86900_MODE_CONFIGURATION, 0x0B); + if (err != 0) { + pr_err("%s - error initializing MAX86900_MODE_CONFIGURATION!\n", + __func__); + mutex_unlock(&data->activelock); + return -EIO; + } + + mutex_unlock(&data->activelock); + return 0; +} + +static void max86900_eol_test_onoff(struct max86900_device_data *data, int onoff) +{ + int err; + + if (onoff) { + err = max86900_eol_test_enable(data); + data->eol_test_is_enable = 1; + if (err != 0) + pr_err("max86900_eol_test_enable err : %d\n", err); + } else { + pr_info("%s - eol test off\n", __func__); + err = max86900_disable(data); + if (err != 0) + pr_err("max86900_disable err : %d\n", err); + + data->hr_range = 0; + data->led_current = data->default_current; + + err = max86900_init_device(data); + if (err) + pr_err("%s max86900_init device fail err = %d", __func__, err); + + err = max86900_enable(data); + if (err != 0) + pr_err("max86900_enable err : %d\n", err); + + data->eol_test_is_enable = 0; + } + pr_info("%s - onoff = %d\n", __func__, onoff); +} + +static ssize_t max86900_name_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", CHIP_NAME); +} + +static ssize_t max86900_vendor_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%s\n", VENDOR); +} + +static ssize_t led_current_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->led_current); + if (err < 0) + return err; + + err = max86900_set_led_current(data); + if (err < 0) + return err; + + data->default_current = data->led_current; + + return size; +} + +static ssize_t led_current_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - led_current = %u\n", __func__, data->led_current); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->led_current); +} + +static ssize_t hr_range_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range); + if (err < 0) + return err; + + err = max86900_set_hr_range(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range = %x\n", __func__, data->hr_range); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range); +} + +static ssize_t hr_range2_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->hr_range2); + if (err < 0) + return err; + + err = max86900_set_hr_range2(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t hr_range2_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - hr_range2 = %x\n", __func__, data->hr_range2); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->hr_range2); +} + +static ssize_t look_mode_ir_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_ir); + if (err < 0) + return err; + + err = max86900_set_look_mode_ir(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_ir_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_ir = %x\n", __func__, data->look_mode_ir); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_ir); +} + +static ssize_t look_mode_red_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int err; + struct max86900_device_data *data = dev_get_drvdata(dev); + + err = kstrtou8(buf, 10, &data->look_mode_red); + if (err < 0) + return err; + + err = max86900_set_look_mode_red(data); + if (err < 0) + return err; + + return size; +} + +static ssize_t look_mode_red_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + pr_info("max86900_%s - look_mode_red = %x\n", __func__, data->look_mode_red); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->look_mode_red); +} + +static ssize_t eol_test_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int test_onoff; + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (sysfs_streq(buf, "1")) /* eol_test start */ + test_onoff = 1; + else if (sysfs_streq(buf, "0")) /* eol_test stop */ + test_onoff = 0; + else { + pr_debug("max86900_%s: invalid value %d\n", __func__, *buf); + return -EINVAL; + } + + max86900_eol_test_onoff(data, test_onoff); + + return size; +} + +static ssize_t eol_test_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_is_enable); +} + +static ssize_t eol_test_result_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_EOL_RESULT) + buf_len = MAX_EOL_RESULT; + + if (data->eol_test_result != NULL) + kfree(data->eol_test_result); + + data->eol_test_result = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->eol_test_result == NULL) { + pr_err("max86900_%s - couldn't allocate memory\n", + __func__); + return -ENOMEM; + } + strncpy(data->eol_test_result, buf, buf_len); + pr_info("max86900_%s - result = %s, buf_len(%u)\n", __func__, data->eol_test_result, buf_len); + data->eol_test_status = 1; + return size; +} + +static ssize_t eol_test_result_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->eol_test_result == NULL) { + pr_info("max86900_%s - data->eol_test_result is NULL\n", __func__); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", "NO_EOL_TEST"); + } + pr_info("max86900_%s - result = %s\n", __func__, data->eol_test_result); + data->eol_test_status = 0; + return snprintf(buf, PAGE_SIZE, "%s\n", data->eol_test_result); +} + +static ssize_t eol_test_status_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + return snprintf(buf, PAGE_SIZE, "%u\n", data->eol_test_status); +} + +static ssize_t int_pin_check(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + int err = -1; + int pin_state = -1; + u8 recvData; + + /* DEVICE Power-up */ + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("max86900_%s - regulator on fail\n", __func__); + goto exit; + } + + usleep_range(1000, 1100); + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (pin_state) { + pr_err("max86900_%s - INT pin state is high before INT clear\n", __func__); + err = -1; + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + + pr_info("max86900_%s - Before INT clear %d\n", __func__, pin_state); + /* Interrupt Clear */ + recvData = MAX86900_INTERRUPT_STATUS; + if ((err = max86900_read_reg(data, &recvData, 1)) != 0) { + pr_err("max86900_%s - max86900_read_reg err:%d, address:0x%02x\n", + __func__, err, recvData); + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + + /* check INT pin state */ + pin_state = gpio_get_value_cansleep(data->hrm_int); + + if (!pin_state) { + pr_err("max86900_%s - INT pin state is low after INT clear\n", __func__); + err = -1; + max86900_regulator_onoff(data, HRM_LDO_OFF); + goto exit; + } + pr_info("max86900_%s - After INT clear %d\n", __func__, pin_state); + + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) + pr_err("max86900_%s - regulator off fail\n", __func__); + + pr_info("max86900_%s - success\n", __func__); +exit: + return snprintf(buf, PAGE_SIZE, "%d\n", err); +} + +static ssize_t max86900_lib_ver_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + unsigned int buf_len; + buf_len = strlen(buf) + 1; + if (buf_len > MAX_LIB_VER) + buf_len = MAX_LIB_VER; + + if (data->lib_ver != NULL) + kfree(data->lib_ver); + + data->lib_ver = kzalloc(sizeof(char) * buf_len, GFP_KERNEL); + if (data->lib_ver == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + strncpy(data->lib_ver, buf, buf_len); + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return size; +} + +static ssize_t max86900_lib_ver_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + + if (data->lib_ver == NULL) { + pr_info("%s - data->lib_ver is NULL\n", __func__); + return snprintf(buf, PAGE_SIZE, "%s\n", "NULL"); + } + pr_info("%s - lib_ver = %s\n", __func__, data->lib_ver); + return snprintf(buf, PAGE_SIZE, "%s\n", data->lib_ver); +} + +static DEVICE_ATTR(name, S_IRUGO, max86900_name_show, NULL); +static DEVICE_ATTR(vendor, S_IRUGO, max86900_vendor_show, NULL); +static DEVICE_ATTR(led_current, S_IRUGO | S_IWUSR | S_IWGRP, + led_current_show, led_current_store); +static DEVICE_ATTR(hr_range, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range_show, hr_range_store); +static DEVICE_ATTR(hr_range2, S_IRUGO | S_IWUSR | S_IWGRP, + hr_range2_show, hr_range2_store); +static DEVICE_ATTR(look_mode_ir, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_ir_show, look_mode_ir_store); +static DEVICE_ATTR(look_mode_red, S_IRUGO | S_IWUSR | S_IWGRP, + look_mode_red_show, look_mode_red_store); +static DEVICE_ATTR(eol_test, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_show, eol_test_store); +static DEVICE_ATTR(eol_test_result, S_IRUGO | S_IWUSR | S_IWGRP, + eol_test_result_show, eol_test_result_store); +static DEVICE_ATTR(eol_test_status, S_IRUGO, eol_test_status_show, NULL); +static DEVICE_ATTR(int_pin_check, S_IRUGO, int_pin_check, NULL); +static DEVICE_ATTR(lib_ver, S_IRUGO | S_IWUSR | S_IWGRP, + max86900_lib_ver_show, max86900_lib_ver_store); + +static struct device_attribute *hrm_sensor_attrs[] = { + &dev_attr_name, + &dev_attr_vendor, + &dev_attr_led_current, + &dev_attr_hr_range, + &dev_attr_hr_range2, + &dev_attr_look_mode_ir, + &dev_attr_look_mode_red, + &dev_attr_eol_test, + &dev_attr_eol_test_result, + &dev_attr_eol_test_status, + &dev_attr_int_pin_check, + &dev_attr_lib_ver, + NULL, +}; + +irqreturn_t max86900_irq_handler(int irq, void *device) +{ + int err; + struct max86900_device_data *data = device; + u16 raw_data[4] = {0x00, }; + + err = max86900_read_data(data, raw_data); + if (err < 0) + pr_err("max86900_read_data err : %d\n", err); + + if (err == 0) { + input_report_rel(data->hrm_input_dev, REL_X, raw_data[0] + 1); /* IR */ + input_report_rel(data->hrm_input_dev, REL_Y, raw_data[1] + 1); /* RED */ + input_report_rel(data->hrm_input_dev, REL_Z, data->hrm_temp + 1); + input_sync(data->hrm_input_dev); + } + + return IRQ_HANDLED; +} + + +#if defined(CONFIG_MACH_KLTE_KDI) +extern unsigned int system_rev; +#endif + + +static int max86900_parse_dt(struct max86900_device_data *data, + struct device *dev) +{ + struct device_node *dNode = dev->of_node; + enum of_gpio_flags flags; + + if (dNode == NULL) + return -ENODEV; +#if defined(CONFIG_MACH_KLTE_KDI) + if(system_rev==11) + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-kdi-gpio", 0, &flags); + else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#else + data->hrm_int = of_get_named_gpio_flags(dNode, + "max86900,hrm_int-gpio", 0, &flags); +#endif + if (data->hrm_int < 0) { + pr_err("%s - get hrm_int error\n", __func__); + return -ENODEV; + } + + if (of_property_read_string(dNode, "max86900,sub_ldo4", &data->sub_ldo4) < 0) + pr_err("%s - get sub_ldo4 error\n", __func__); +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + if (of_property_read_string(dNode, "max86900,led_l19", &data->led_l19) < 0) + pr_err("%s - get led_l19 error\n", __func__); +#endif + return 0; +} + +static int max86900_gpio_setup(struct max86900_device_data *data) +{ + int errorno = -EIO; + + errorno = gpio_request(data->hrm_int, "hrm_int"); + if (errorno) { + pr_err("%s - failed to request hrm_int\n", __func__); + return errorno; + } + + errorno = gpio_direction_input(data->hrm_int); + if (errorno) { + pr_err("%s - failed to set hrm_int as input\n", __func__); + goto err_gpio_direction_input; + } + + data->irq = gpio_to_irq(data->hrm_int); + + errorno = request_threaded_irq(data->irq, NULL, + max86900_irq_handler, IRQF_TRIGGER_FALLING, + "hrm_sensor_irq", data); + + if (errorno < 0) { + pr_err("%s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, data->irq, data->hrm_int, errorno); + errorno = -ENODEV; + goto err_request_irq; + } + + disable_irq(data->irq); + goto done; +err_request_irq: +err_gpio_direction_input: + gpio_free(data->hrm_int); +done: + return errorno; +} + +int max86900_probe(struct i2c_client *client, const struct i2c_device_id *id ) +{ + int err = -ENODEV; + u8 buffer[2] = {0, }; + + struct max86900_device_data *data; + + /* check to make sure that the adapter supports I2C */ + if (!i2c_check_functionality(client->adapter,I2C_FUNC_I2C)) { + pr_err("%s - I2C_FUNC_I2C not supported\n", __func__); + return -ENODEV; + } + + /* allocate some memory for the device */ + data = kzalloc(sizeof(struct max86900_device_data), GFP_KERNEL); + if (data == NULL) { + pr_err("%s - couldn't allocate memory\n", __func__); + return -ENOMEM; + } + + data->client = client; + i2c_set_clientdata(client, data); + + mutex_init(&data->i2clock); + mutex_init(&data->activelock); + + data->dev = &client->dev; + + pr_info("%s - start \n", __func__); + + data->hr_range = 0; + + err = max86900_parse_dt(data, &client->dev); + if (err < 0) { + pr_err("[SENSOR] %s - of_node error\n", __func__); + err = -ENODEV; + goto err_of_node; + } + + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_ON); + if (err < 0) { + pr_err("%s max86900_regulator_on fail err = %d\n", + __func__, err); + goto err_of_node; + } + } + usleep_range(1000, 1100); + + data->client->addr = MAX86900A_SLAVE_ADDR; + + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (buffer[1] == MAX86900A_WHOAMI) { + /* MAX86900A & MAX86900B */ + switch(buffer[0]) { + case MAX86900A_REV_ID: + data->part_type = PART_TYPE_MAX86900A; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900B_REV_ID: + data->part_type = PART_TYPE_MAX86900B; + data->default_current = MAX86900A_DEFAULT_CURRENT; + break; + case MAX86900C_REV_ID: + data->part_type = PART_TYPE_MAX86900C; + data->default_current = MAX86900C_DEFAULT_CURRENT; + break; + default: + pr_err("%s WHOAMI read error : REV ID : 0x%02x\n", + __func__, buffer[0]); + err = -ENODEV; + goto err_of_read_chipid; + } + pr_info("%s - MAX86900 OS21(0x%X), REV ID : 0x%02x\n", + __func__, MAX86900A_SLAVE_ADDR, buffer[0]); + } else { + /* MAX86900 */ + data->client->addr = MAX86900_SLAVE_ADDR; + buffer[0] = MAX86900_WHOAMI_REG; + err = max86900_read_reg(data, buffer, 2); + + if (err) { + pr_err("%s WHOAMI read fail\n", __func__); + err = -ENODEV; + goto err_of_read_chipid; + } + data->part_type = PART_TYPE_MAX86900; + data->default_current = MAX86900_DEFAULT_CURRENT; + pr_info("%s - MAX86900 OS20 (0x%X)\n", __func__, + MAX86900_SLAVE_ADDR); + } + + data->led_current = data->default_current; + + /* allocate input device */ + data->hrm_input_dev = input_allocate_device(); + if (!data->hrm_input_dev) { + pr_err("%s - could not allocate input device\n", + __func__); + goto err_input_allocate_device; + } + + input_set_drvdata(data->hrm_input_dev, data); + data->hrm_input_dev->name = MODULE_NAME_HRM; + input_set_capability(data->hrm_input_dev, EV_REL, REL_X); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Y); + input_set_capability(data->hrm_input_dev, EV_REL, REL_Z); + + err = input_register_device(data->hrm_input_dev); + if (err < 0) { + input_free_device(data->hrm_input_dev); + pr_err("%s - could not register input device\n", __func__); + goto err_input_register_device; + } + + err = sensors_create_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); + if (err < 0) { + pr_err("%s - create_symlink error\n", __func__); + goto err_sensors_create_symlink; + } + + err = sysfs_create_group(&data->hrm_input_dev->dev.kobj, + &hrm_attribute_group); + if (err) { + pr_err("[SENSOR] %s - could not create sysfs group\n", + __func__); + goto err_sysfs_create_group; + } + + err = max86900_gpio_setup(data); + if (err) { + pr_err("[SENSOR] %s - could not setup gpio\n", __func__); + goto err_setup_gpio; + } + + /* set sysfs for hrm sensor */ + err = sensors_register(data->dev, data, hrm_sensor_attrs, + "hrm_sensor"); + if (err) { + pr_err("[SENSOR] %s - cound not register hrm_sensor(%d).\n", + __func__, err); + goto hrm_sensor_register_failed; + } + + err = max86900_init_device(data); + if (err) { + pr_err("%s max86900_init device fail err = %d", __func__, err); + goto max86900_init_device_failed; + } + + err = dev_set_drvdata(data->dev, data); + if (err) { + pr_err("%s dev_set_drvdata fail err = %d", __func__, err); + goto dev_set_drvdata_failed; + } + + if (data->sub_ldo4 != NULL) { + err = max86900_regulator_onoff(data, HRM_LDO_OFF); + if (err < 0) { + pr_err("%s max86900_regulator_off fail(%d, %d)\n", + __func__, err, HRM_LDO_OFF); + goto dev_set_drvdata_failed; + } + } + pr_info("%s success\n", __func__); + goto done; + +dev_set_drvdata_failed: +max86900_init_device_failed: + sensors_unregister(data->dev, hrm_sensor_attrs); +hrm_sensor_register_failed: + gpio_free(data->hrm_int); +err_setup_gpio: +err_sysfs_create_group: + sensors_remove_symlink(&data->hrm_input_dev->dev.kobj, + data->hrm_input_dev->name); +err_sensors_create_symlink: + input_unregister_device(data->hrm_input_dev); +err_input_register_device: +err_input_allocate_device: +err_of_read_chipid: + max86900_regulator_onoff(data, HRM_LDO_OFF); +err_of_node: + mutex_destroy(&data->i2clock); + mutex_destroy(&data->activelock); + kfree(data); + pr_err("%s failed\n", __func__); +done: + return err; +} + +/* + * Remove function for this I2C driver. + */ +int max86900_remove(struct i2c_client *client) +{ + pr_info("%s\n", __func__); + free_irq(client->irq, NULL); + return 0; +} + +static void max86900_shutdown(struct i2c_client *client) +{ + pr_info("%s\n", __func__); +} + +static int max86900_pm_suspend(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_enable)) { + max86900_mode_enable(data, HRM_LDO_OFF); + atomic_set(&data->is_suspend, 1); + } + pr_info("%s\n", __func__); + return 0; +} + +static int max86900_pm_resume(struct device *dev) +{ + struct max86900_device_data *data = dev_get_drvdata(dev); + if (atomic_read(&data->is_suspend)) { + max86900_mode_enable(data, HRM_LDO_ON); + atomic_set(&data->is_suspend, 0); + } + pr_info("%s\n", __func__); + return 0; +} + +static const struct dev_pm_ops max86900_pm_ops = { + .suspend = max86900_pm_suspend, + .resume = max86900_pm_resume +}; + +static struct of_device_id max86900_match_table[] = { + { .compatible = "max86900",}, + {}, +}; + +static const struct i2c_device_id max86900_device_id[] = { + { "max86900_match_table", 0 }, + { } +}; +/* descriptor of the max86900 I2C driver */ +static struct i2c_driver max86900_i2c_driver = +{ + .driver = { + .name = CHIP_NAME, + .owner = THIS_MODULE, + .pm = &max86900_pm_ops, + .of_match_table = max86900_match_table, + }, + .probe = max86900_probe, + .shutdown = max86900_shutdown, + .remove = max86900_remove, + .id_table = max86900_device_id, +}; + +/* initialization and exit functions */ +static int __init max86900_init(void) +{ + return i2c_add_driver(&max86900_i2c_driver); +} + +static void __exit max86900_exit(void) +{ + i2c_del_driver(&max86900_i2c_driver); +} + +module_init(max86900_init); +module_exit(max86900_exit); + +MODULE_DESCRIPTION("max86900 Driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_patek/max86900.h b/drivers/sensorhub/stm_patek/max86900.h new file mode 100644 index 000000000000..820f6cd8ca19 --- /dev/null +++ b/drivers/sensorhub/stm_patek/max86900.h @@ -0,0 +1,123 @@ +#ifndef _MAX86900_H_ +#define _MAX86900_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#define MAX86900_DEBUG + +#define MAX86900_SLAVE_ADDR 0x51 +#define MAX86900A_SLAVE_ADDR 0x57 + +//MAX86900 Registers +#define MAX86900_INTERRUPT_STATUS 0x00 +#define MAX86900_INTERRUPT_ENABLE 0x01 + +#define MAX86900_FIFO_WRITE_POINTER 0x02 +#define MAX86900_OVF_COUNTER 0x03 +#define MAX86900_FIFO_READ_POINTER 0x04 +#define MAX86900_FIFO_DATA 0x05 +#define MAX86900_MODE_CONFIGURATION 0x06 +#define MAX86900_SPO2_CONFIGURATION 0x07 +#define MAX86900_LED_CONFIGURATION 0x09 +#define MAX86900_TEMP_INTEGER 0x16 +#define MAX86900_TEMP_FRACTION 0x17 + + +//Self Test +#define MAX86900_TEST_MODE 0xFF +#define MAX86900_TEST_GTST 0x80 +#define MAX86900_TEST_ENABLE_IDAC 0x81 +#define MAX86900_TEST_ENABLE_PLETH 0x82 +#define MAX86900_TEST_ALC 0x8F +#define MAX86900_TEST_ROUTE_MODULATOR 0x97 +#define MAX86900_TEST_LOOK_MODE_RED 0x98 +#define MAX86900_TEST_LOOK_MODE_IR 0x99 +#define MAX86900_TEST_IDAC_GAIN 0x9C + + +#define MAX86900_FIFO_SIZE 16 + +typedef enum _PART_TYPE +{ + PART_TYPE_MAX86900 = 0, + PART_TYPE_MAX86900A, + PART_TYPE_MAX86900B, + PART_TYPE_MAX86900C, +} PART_TYPE; + +struct max86900_platform_data +{ + int (*init)(void); + int (*deinit)(void); +}; + +struct max86900_device_data +{ + struct i2c_client *client; // represents the slave device + struct device *dev; + struct input_dev *hrm_input_dev; + struct mutex i2clock; + struct mutex activelock; + struct regulator *vdd_1p8; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + struct regulator *vdd_3p3; +#endif + const char *sub_ldo4; +#if defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_MACH_KSPORTSLTE_SPR) + const char *led_l19; +#endif + bool *bio_status; + atomic_t is_enable; + atomic_t is_suspend; + u8 led_current; + u8 hr_range; + u8 hr_range2; + u8 look_mode_ir; + u8 look_mode_red; + u8 eol_test_is_enable; + u8 part_type; + u8 default_current; + u8 test_current_ir; + u8 test_current_red; + u8 eol_test_status; + u16 led; + u16 sample_cnt; + int hrm_int; + int irq; + int hrm_temp; + char *eol_test_result; + char *lib_ver; + int ir_sum; + int r_sum; +}; + +extern int sensors_create_symlink(struct kobject *target, const char *name); +extern void sensors_remove_symlink(struct kobject *target, const char *name); +extern int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name); +extern void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]); +#endif + diff --git a/drivers/sensorhub/stm_patek/sensors_core.c b/drivers/sensorhub/stm_patek/sensors_core.c new file mode 100644 index 000000000000..aa5ecb652de7 --- /dev/null +++ b/drivers/sensorhub/stm_patek/sensors_core.c @@ -0,0 +1,166 @@ +/* + * Universal sensors core class + * + * Author : Ryunkyun Park + */ + +#include +#include +#include +#include +#include +#include + +struct class *sensors_class; +EXPORT_SYMBOL_GPL(sensors_class); +struct class *sensors_event_class; +EXPORT_SYMBOL_GPL(sensors_event_class); +static atomic_t sensor_count; +static struct device *symlink_dev; + +/* + * Create sysfs interface + */ +static void set_sensor_attr(struct device *dev, + struct device_attribute *attributes[]) +{ + int i; + + for (i = 0; attributes[i] != NULL; i++) + if ((device_create_file(dev, attributes[i])) < 0) + pr_err("[SENSOR CORE] fail device_create_file"\ + "(dev, attributes[%d])\n", i); +} + +int sensors_create_symlink(struct kobject *target, + const char *name) +{ + int err = 0; + + if (symlink_dev == NULL) + pr_err("%s, symlink_dev is NULL!!!\n", __func__); + + err = sysfs_create_link(&symlink_dev->kobj, target, name); + + if (err < 0) { + pr_err("%s, %s failed!(%d)\n", __func__, name, err); + return err; + } + + return err; +} +EXPORT_SYMBOL_GPL(sensors_create_symlink); + +void sensors_remove_symlink(struct kobject *target, + const char *name) +{ + + if (symlink_dev == NULL) + pr_err("%s, symlink_dev is NULL!!!\n", __func__); + + sysfs_delete_link(&symlink_dev->kobj, target, name); +} +EXPORT_SYMBOL_GPL(sensors_remove_symlink); + + +int sensors_register(struct device *dev, void * drvdata, + struct device_attribute *attributes[], char *name) +{ + int ret = 0; + + if (!sensors_class) { + sensors_class = class_create(THIS_MODULE, "sensors"); + if (IS_ERR(sensors_class)) + return PTR_ERR(sensors_class); + } + + dev = device_create(sensors_class, NULL, 0, drvdata, "%s", name); + + if (IS_ERR(dev)) { + ret = PTR_ERR(dev); + pr_err("[SENSORS CORE] device_create failed!"\ + "[%d]\n", ret); + return ret; + } + + set_sensor_attr(dev, attributes); + atomic_inc(&sensor_count); + + return 0; +} +EXPORT_SYMBOL_GPL(sensors_register); + +void sensors_unregister(struct device *dev, + struct device_attribute *attributes[]) +{ + int i; + + for (i = 0; attributes[i] != NULL; i++) + device_remove_file(dev, attributes[i]); +} +EXPORT_SYMBOL_GPL(sensors_unregister); + +void destroy_sensor_class(void) +{ + if (sensors_class) { + class_destroy(sensors_class); + sensors_class = NULL; + } + if (sensors_event_class) { + device_destroy(sensors_event_class, symlink_dev->devt); + class_destroy(sensors_event_class); + sensors_event_class = NULL; + } +} +EXPORT_SYMBOL_GPL(destroy_sensor_class); + +static int __init sensors_class_init(void) +{ + pr_info("[SENSORS CORE] sensors_class_init\n"); + sensors_class = class_create(THIS_MODULE, "sensors"); + + if (IS_ERR(sensors_class)) { + pr_err("%s, create sensors_class is failed.(err=%ld)\n", + __func__, IS_ERR(sensors_class)); + return PTR_ERR(sensors_class); + } + + /* For symbolic link */ + sensors_event_class = class_create(THIS_MODULE, "sensor_event"); + if (IS_ERR(sensors_event_class)) { + pr_err("%s, create sensors_class is failed.(err=%ld)\n", + __func__, IS_ERR(sensors_event_class)); + return PTR_ERR(sensors_event_class); + } + + symlink_dev = device_create(sensors_event_class, NULL, 0, NULL, + "%s", "symlink2"); + + if (IS_ERR(symlink_dev)) { + pr_err("[SENSORS CORE] symlink_dev create failed!"\ + "[%ld]\n", IS_ERR(symlink_dev)); + return PTR_ERR(symlink_dev); + } + + atomic_set(&sensor_count, 0); + sensors_class->dev_uevent = NULL; + + return 0; +} + +static void __exit sensors_class_exit(void) +{ + if (sensors_class || sensors_event_class) { + class_destroy(sensors_class); + sensors_class = NULL; + class_destroy(sensors_event_class); + sensors_event_class = NULL; + } +} + +subsys_initcall(sensors_class_init); +module_exit(sensors_class_exit); + +MODULE_DESCRIPTION("Universal sensors core class"); +MODULE_AUTHOR("Ryunkyun Park "); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_patek/ssp.h b/drivers/sensorhub/stm_patek/ssp.h new file mode 100644 index 000000000000..5f52cc9f0e39 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp.h @@ -0,0 +1,774 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SSP_PRJ_H__ +#define __SSP_PRJ_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_HAS_EARLYSUSPEND +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef CONFIG_SENSORS_SSP_STM +#include +#endif + +#ifdef CONFIG_HAS_EARLYSUSPEND +#undef CONFIG_HAS_EARLYSUSPEND +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB +#include "ssp_sensorhub.h" +#endif + +#define SSP_DBG 1 +#ifdef CONFIG_SEC_DEBUG +#define SSP_SEC_DEBUG 1 +#else +#define SSP_SEC_DEBUG 0 +#endif +#define SUCCESS 1 +#define FAIL 0 +#define ERROR -1 + +#define FACTORY_DATA_MAX 100 +#undef SAVE_MAG_LOG/* Magnetic sensor data logging flag */ + +#ifdef SAVE_MAG_LOG/*normal mode = 0, logging mode = 1*/ +#define MAG_LOG_MODE 1 +#else +#define MAG_LOG_MODE 0 +#endif + +#if SSP_DBG +#define SSP_FUNC_DBG 1 +#define SSP_DATA_DBG 0 + +/* ssp mcu device ID */ +#define DEVICE_ID 0x55 +#define MAXIM_MAX21103_REV 2 + + +#define ssp_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define ssp_dbg(dev, format, ...) +#endif + +#if SSP_FUNC_DBG +#define func_dbg() do { \ + printk(KERN_INFO "[SSP]: %s\n", __func__); \ + } while (0) +#else +#define func_dbg() +#endif + +#if SSP_DATA_DBG +#define data_dbg(dev, format, ...) do { \ + printk(KERN_INFO dev, format, ##__VA_ARGS__); \ + } while (0) +#else +#define data_dbg(dev, format, ...) +#endif + +#define SSP_SW_RESET_TIME 3000 +#define DEFUALT_POLLING_DELAY (200 * NSEC_PER_MSEC) +#define PROX_AVG_READ_NUM 80 +#define DEFAULT_RETRIES 3 +#define DATA_PACKET_SIZE 960 + +/* SSP Binary Type */ +enum { + KERNEL_BINARY = 0, + KERNEL_CRASHED_BINARY, + UMS_BINARY, +}; + +/* + * SENSOR_DELAY_SET_STATE + * Check delay set to avoid sending ADD instruction twice + */ +enum { + INITIALIZATION_STATE = 0, + NO_SENSOR_STATE, + ADD_SENSOR_STATE, + RUNNING_SENSOR_STATE, +}; + +/* Firmware download STATE */ +enum { + FW_DL_STATE_FAIL = -1, + FW_DL_STATE_NONE = 0, + FW_DL_STATE_NEED_TO_SCHEDULE, + FW_DL_STATE_SCHEDULED, + FW_DL_STATE_DOWNLOADING, + FW_DL_STATE_SYNC, + FW_DL_STATE_DONE, +}; + +/* for MSG2SSP_AP_GET_THERM */ +enum { + ADC_BATT = 0, + ADC_CHG, +}; + +enum { + SENSORS_BATCH_DRY_RUN = 0x00000001, + SENSORS_BATCH_WAKE_UPON_FIFO_FULL = 0x00000002 +}; + +enum { + META_DATA_FLUSH_COMPLETE = 1, +}; + +#define SSP_INVALID_REVISION 99999 +#define SSP_INVALID_REVISION2 0xFFFFFF + +/* Gyroscope DPS */ +#define GYROSCOPE_DPS250 250 +#define GYROSCOPE_DPS500 500 +#define GYROSCOPE_DPS2000 2000 + +/* Gesture Sensor Current */ +#define DEFUALT_IR_CURRENT 100 + +/* kernel -> ssp manager cmd*/ +#define SSP_LIBRARY_SLEEP_CMD (1 << 5) +#define SSP_LIBRARY_LARGE_DATA_CMD (1 << 6) +#define SSP_LIBRARY_WAKEUP_CMD (1 << 7) + +/* AP -> SSP Instruction */ +#define MSG2SSP_INST_BYPASS_SENSOR_ADD 0xA1 +#define MSG2SSP_INST_BYPASS_SENSOR_REMOVE 0xA2 +#define MSG2SSP_INST_REMOVE_ALL 0xA3 +#define MSG2SSP_INST_CHANGE_DELAY 0xA4 +#define MSG2SSP_INST_LIBRARY_ADD 0xB1 +#define MSG2SSP_INST_LIBRARY_REMOVE 0xB2 +#define MSG2SSP_INST_LIB_NOTI 0xB4 +#define MSG2SSP_INST_LIB_DATA 0xC1 + +#define MSG2SSP_AP_MCU_SET_GYRO_CAL 0xCD +#define MSG2SSP_AP_MCU_SET_ACCEL_CAL 0xCE +#define MSG2SSP_AP_MCU_SET_MAGNETIC_CAL 0xCF +#define MSG2SSP_AP_STATUS_SHUTDOWN 0xD0 +#define MSG2SSP_AP_STATUS_WAKEUP 0xD1 +#define MSG2SSP_AP_STATUS_SLEEP 0xD2 +#define MSG2SSP_AP_STATUS_RESUME 0xD3 +#define MSG2SSP_AP_STATUS_SUSPEND 0xD4 +#define MSG2SSP_AP_STATUS_RESET 0xD5 +#define MSG2SSP_AP_STATUS_POW_CONNECTED 0xD6 +#define MSG2SSP_AP_STATUS_POW_DISCONNECTED 0xD7 +#define MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE 0xDA +#define MSG2SSP_AP_MCU_SET_DUMPMODE 0xDB +#define MSG2SSP_AP_MCU_DUMP_CHECK 0xDC +#define MSG2SSP_AP_MCU_BATCH_FLUSH 0xDD +#define MSG2SSP_AP_MCU_BATCH_COUNT 0xDF + +#define MSG2SSP_AP_WHOAMI 0x0F +#define MSG2SSP_AP_FIRMWARE_REV 0xF0 +#define MSG2SSP_AP_SENSOR_FORMATION 0xF1 +#define MSG2SSP_AP_SENSOR_PROXTHRESHOLD 0xF2 +#define MSG2SSP_AP_SENSOR_BARCODE_EMUL 0xF3 +#define MSG2SSP_AP_SENSOR_SCANNING 0xF4 +#define MSG2SSP_AP_SET_MAGNETIC_HWOFFSET 0xF5 +#define MSG2SSP_AP_GET_MAGNETIC_HWOFFSET 0xF6 +#define MSG2SSP_AP_SENSOR_GESTURE_CURRENT 0xF7 +#define MSG2SSP_AP_GET_THERM 0xF8 +#define MSG2SSP_AP_GET_BIG_DATA 0xF9 +#define MSG2SSP_AP_SET_BIG_DATA 0xFA +#define MSG2SSP_AP_START_BIG_DATA 0xFB +#define MSG2SSP_AP_SET_MAGNETIC_STATIC_MATRIX 0xFD +#define MSG2SSP_AP_SENSOR_TILT 0xEA +#define MSG2SSP_AP_MCU_SET_TIME 0xFE +#define MSG2SSP_AP_MCU_GET_TIME 0xFF +#define MSG2SSP_AP_MOBEAM_DATA_SET 0x31 +#define MSG2SSP_AP_MOBEAM_REGISTER_SET 0x32 +#define MSG2SSP_AP_MOBEAM_COUNT_SET 0x33 +#define MSG2SSP_AP_MOBEAM_START 0x34 +#define MSG2SSP_AP_MOBEAM_STOP 0x35 + +#define MSG2SSP_AP_FUSEROM 0X01 + +/* voice data */ +#define TYPE_WAKE_UP_VOICE_SERVICE 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM 0x01 +#define TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER 0x02 + +/* Factory Test */ +#define ACCELEROMETER_FACTORY 0x80 +#define GYROSCOPE_FACTORY 0x81 +#define GEOMAGNETIC_FACTORY 0x82 +#define PRESSURE_FACTORY 0x85 +#define GESTURE_FACTORY 0x86 +#define TEMPHUMIDITY_CRC_FACTORY 0x88 +#define GYROSCOPE_TEMP_FACTORY 0x8A +#define GYROSCOPE_DPS_FACTORY 0x8B +#define MCU_FACTORY 0x8C +#define MCU_SLEEP_FACTORY 0x8D + +/* Factory data length */ +#define ACCEL_FACTORY_DATA_LENGTH 1 +#define GYRO_FACTORY_DATA_LENGTH 36 +#define MAGNETIC_FACTORY_DATA_LENGTH 26 +#define PRESSURE_FACTORY_DATA_LENGTH 1 +#define MCU_FACTORY_DATA_LENGTH 5 +#define GYRO_TEMP_FACTORY_DATA_LENGTH 2 +#define GYRO_DPS_FACTORY_DATA_LENGTH 1 +#define TEMPHUMIDITY_FACTORY_DATA_LENGTH 1 +#define MCU_SLEEP_FACTORY_DATA_LENGTH FACTORY_DATA_MAX +#define GESTURE_FACTORY_DATA_LENGTH 4 + +/* SSP -> AP ACK about write CMD */ +#define MSG_ACK 0x80 /* ACK from SSP to AP */ +#define MSG_NAK 0x70 /* NAK from SSP to AP */ + +/* Accelerometer sensor */ +#define MAX_ACCEL_1G 16384 +#define MAX_ACCEL_2G 32767 +#define MIN_ACCEL_2G -32768 +#define MAX_ACCEL_4G 65536 + +#define MAX_GYRO 32767 +#define MIN_GYRO -32768 + +#define MAX_COMP_BUFF 60 + +/* temphumidity sensor*/ +struct shtc1_buffer { + u16 batt[MAX_COMP_BUFF]; + u16 chg[MAX_COMP_BUFF]; + s16 temp[MAX_COMP_BUFF]; + u16 humidity[MAX_COMP_BUFF]; + u16 baro[MAX_COMP_BUFF]; + u16 gyro[MAX_COMP_BUFF]; + char len; +}; + +/* SSP_INSTRUCTION_CMD */ +enum { + REMOVE_SENSOR = 0, + ADD_SENSOR, + CHANGE_DELAY, + GO_SLEEP, + REMOVE_LIBRARY, + ADD_LIBRARY, + GET_LOGGING, +}; + +/* SENSOR_TYPE */ +enum { + ACCELEROMETER_SENSOR = 0, + GYROSCOPE_SENSOR, + GEOMAGNETIC_UNCALIB_SENSOR, + GEOMAGNETIC_RAW, + GEOMAGNETIC_SENSOR, + PRESSURE_SENSOR, + GESTURE_SENSOR, + PROXIMITY_SENSOR, + TEMPERATURE_HUMIDITY_SENSOR, + LIGHT_SENSOR, + PROXIMITY_RAW, + ORIENTATION_SENSOR, + STEP_DETECTOR = 12, + SIG_MOTION_SENSOR, + GYRO_UNCALIB_SENSOR, + GAME_ROTATION_VECTOR = 15, + ROTATION_VECTOR, + STEP_COUNTER, + BIO_HRM_RAW, + BIO_HRM_RAW_FAC, + BIO_HRM_LIB, + SHAKE_CAM = 22, + SENSOR_MAX, +}; + +struct meta_data_event { + s32 what; + s32 sensor; +} __attribute__((__packed__)); + +struct sensor_value { + union { + struct { + s16 x; + s16 y; + s16 z; + }; + struct { /*calibrated mag, gyro*/ + s16 cal_x; + s16 cal_y; + s16 cal_z; + u8 accuracy; + }; + struct { /*uncalibrated mag, gyro*/ + s16 uncal_x; + s16 uncal_y; + s16 uncal_z; + s16 offset_x; + s16 offset_y; + s16 offset_z; + }; + struct { /* rotation vector */ + s32 quat_a; + s32 quat_b; + s32 quat_c; + s32 quat_d; + u8 acc_rot; + }; + struct { + u16 r; + u16 g; + u16 b; + u16 w; +#ifdef CONFIG_SENSORS_SSP_TMG399X + u8 a_time; + u8 a_gain; +#else + u16 ir_cmp; + u16 amb_pga; +#endif + }; + u8 step_det; + u8 sig_motion; + u32 step_diff; +#if defined (CONFIG_SENSORS_SSP_MAX88921) + u16 prox[4]; + s16 data[19]; +#else + u8 prox[4]; + u8 data[20]; +#endif + s32 pressure[3]; + struct meta_data_event meta_data; +#ifdef SAVE_MAG_LOG + u8 log_data[20]; +#endif + }; + u64 timestamp; +} __attribute__((__packed__)); + +extern struct class *sensors_event_class; +extern int poweroff_charging; +extern int boot_mode_recovery; + +struct calibraion_data { + s16 x; + s16 y; + s16 z; +}; + +struct hw_offset_data { + char x; + char y; + char z; +}; + +/* ssp_msg options bit*/ +#define SSP_SPI 0 /* read write mask */ +#define SSP_RETURN 2 /* write and read option */ +#define SSP_GYRO_DPS 3 /* gyro dps mask */ +#define SSP_INDEX 3 /* data index mask */ + +#define SSP_SPI_MASK (3 << SSP_SPI) /* read write mask */ +#define SSP_GYRO_DPS_MASK (3 << SSP_GYRO_DPS) +#define SSP_INDEX_MASK (8191 << SSP_INDEX) /* dump index mask. Index is up to 8191 */ + +/* proximity sensor threshold */ +#if defined(CONFIG_SEC_PATEK_PROJECT) +#define DEFUALT_HIGH_THRESHOLD 90 +#define DEFUALT_LOW_THRESHOLD 65 +#define TBD_HIGH_THRESHOLD 90 +#define TBD_LOW_THRESHOLD 65 +#define WHITE_HIGH_THRESHOLD 90 +#define WHITE_LOW_THRESHOLD 65 +#else +#define DEFUALT_HIGH_THRESHOLD 130 +#define DEFUALT_LOW_THRESHOLD 90 +#define TBD_HIGH_THRESHOLD 130 +#define TBD_LOW_THRESHOLD 90 +#define WHITE_HIGH_THRESHOLD 130 +#define WHITE_LOW_THRESHOLD 90 +#endif + +#ifdef CONFIG_DUAL_LCD +#define HALL_SENSOR_INT_GPIO 426 +#endif + +struct ssp_msg { + u8 cmd; + u16 length; + u16 options; + u32 data; + + struct list_head list; + struct completion *done; + char *buffer; + u8 free_buffer; + bool *dead_hook; + bool dead; +} __attribute__((__packed__)); + +enum { + AP2HUB_READ = 0, + AP2HUB_WRITE, + HUB2AP_WRITE, + AP2HUB_READY, + AP2HUB_RETURN +}; + +enum { + BIG_TYPE_DUMP = 0, + BIG_TYPE_READ_LIB, + /*+snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_VOICE_NET, + BIG_TYPE_VOICE_GRAM, + BIG_TYPE_VOICE_PCM, + /*-snamy.jeong 0706 for voice model download & pcm dump*/ + BIG_TYPE_TEMP, + BIG_TYPE_MAX, +}; + +struct ssp_data { + struct iio_dev *accel_indio_dev; + struct iio_dev *gyro_indio_dev; + struct iio_dev *rot_indio_dev; + struct iio_dev *game_rot_indio_dev; + struct iio_dev *step_det_indio_dev; + struct iio_dev *pressure_indio_dev; + struct iio_trigger *accel_trig; + struct iio_trigger *gyro_trig; + struct iio_trigger *rot_trig; + struct iio_trigger *game_rot_trig; + struct iio_trigger *step_det_trig; + struct iio_trigger *pressure_det_trig; + struct input_dev *light_input_dev; + struct input_dev *prox_input_dev; + struct input_dev *temp_humi_input_dev; + struct input_dev *mag_input_dev; + struct input_dev *uncal_mag_input_dev; + struct input_dev *gesture_input_dev; + struct input_dev *sig_motion_input_dev; + struct input_dev *uncalib_gyro_input_dev; + struct input_dev *step_cnt_input_dev; + struct input_dev *meta_input_dev; +#ifdef CONFIG_SENSORS_SSP_STM + struct spi_device *spi; +#endif + struct i2c_client *client; + struct wake_lock ssp_wake_lock; + struct miscdevice akmd_device; + struct timer_list debug_timer; + struct workqueue_struct *debug_wq; + struct work_struct work_debug; + struct calibraion_data accelcal; + struct calibraion_data gyrocal; + struct hw_offset_data magoffset; + struct sensor_value buf[SENSOR_MAX]; + struct device *sen_dev; + struct device *mcu_device; + struct device *acc_device; + struct device *gyro_device; + struct device *mag_device; + struct device *prs_device; + struct device *prox_device; + struct device *light_device; + struct device *ges_device; + struct device *temphumidity_device; + struct delayed_work work_firmware; + struct delayed_work work_refresh; + struct miscdevice shtc1_device; + struct miscdevice batch_io_device; + +/*snamy.jeong@samsung.com temporary code for voice data sending to mcu*/ + struct device *voice_device; + + bool bSspShutdown; + bool bAccelAlert; + bool bProximityRawEnabled; + bool bGeomagneticRawEnabled; + bool bGeomagneticLogged; + bool bBarcodeEnabled; + bool bMcuDumpMode; + bool bBinaryChashed; + bool bProbeIsDone; + bool bDumping; + bool bTimeSyncing; + + unsigned int uProxCanc; + unsigned int uCrosstalk; + unsigned int uProxCalResult; + unsigned int uProxHiThresh; + unsigned int uProxLoThresh; + unsigned int uProxHiThresh_default; + unsigned int uProxLoThresh_default; + unsigned int uIr_Current; + unsigned char uFuseRomData[3]; + unsigned char uMagCntlRegData; + char *pchLibraryBuf; + char chLcdLdi[2]; + int iIrq; + int iLibraryLength; + int aiCheckStatus[SENSOR_MAX]; + + unsigned int uComFailCnt; + unsigned int uResetCnt; + unsigned int uTimeOutCnt; + unsigned int uIrqCnt; + unsigned int uDumpCnt; + + int sealevelpressure; + unsigned int uGyroDps; + unsigned int uSensorState; + unsigned int uCurFirmRev; + unsigned int uFactoryProxAvg[4]; + char uLastResumeState; + char uLastAPState; + s32 iPressureCal; + u64 step_count_total; + + atomic_t aSensorEnable; + int64_t adDelayBuf[SENSOR_MAX]; + s32 batchLatencyBuf[SENSOR_MAX]; + s8 batchOptBuf[SENSOR_MAX]; + + int (*wakeup_mcu)(void); + int (*check_mcu_ready)(void); + int (*check_mcu_busy)(void); + int (*set_mcu_reset)(int); + int (*read_chg)(void); + void (*get_sensor_data[SENSOR_MAX])(char *, int *, + struct sensor_value *); + void (*report_sensor_data[SENSOR_MAX])(struct ssp_data *, + struct sensor_value *); + +#ifdef CONFIG_HAS_EARLYSUSPEND + struct early_suspend early_suspend; +#endif + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + struct ssp_sensorhub_data *hub_data; +#endif + int ap_rev; + int ssp_changes; + int accel_position; + int mag_position; + int fw_dl_state; + u8 mag_matrix_size; + u8 *mag_matrix; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + char *comp_engine_ver; + char *comp_engine_ver2; + struct mutex cp_temp_adc_lock; + struct mutex bulk_temp_read_lock; + struct shtc1_buffer* bulk_buffer; +#endif +#ifdef CONFIG_SENSORS_SSP_STM + struct mutex comm_mutex; + struct mutex pending_mutex; +#endif + + int mcu_int1; + int mcu_int2; + int ap_int; + int rst; + int chg; + struct regulator *reg_hub; + struct regulator *reg_sns; + u8 regulator_is_enable; + + const char *ges_vdd; + const char *ges_led; + + struct list_head pending_list; + void (*ssp_big_task[BIG_TYPE_MAX])(struct work_struct *); + u64 timestamp; + +}; + +struct ssp_big { + struct ssp_data* data; + struct work_struct work; + u32 length; + u32 addr; +}; + +int ssp_iio_configure_ring(struct iio_dev *); +void ssp_iio_unconfigure_ring(struct iio_dev *); +int ssp_iio_probe_trigger(struct ssp_data *, struct iio_dev *, struct iio_trigger *); +void ssp_iio_remove_trigger(struct iio_trigger *); + +#ifdef CONFIG_SENSORS_SSP_MOBEAM +struct reg_index_table { + unsigned char reg; + unsigned char index; +}; +#endif + +void ssp_enable(struct ssp_data *, bool); +int waiting_init_mcu(struct ssp_data *); +int waiting_wakeup_mcu(struct ssp_data *); +int ssp_i2c_read(struct ssp_data *, char *, u16, char *, u16, int); +int ssp_spi_async(struct ssp_data *, struct ssp_msg *); +int ssp_spi_sync(struct ssp_data *, struct ssp_msg *, int); +void clean_pending_list(struct ssp_data *); +void toggle_mcu_reset(struct ssp_data *); +int initialize_mcu(struct ssp_data *); +int initialize_input_dev(struct ssp_data *); +int initialize_sysfs(struct ssp_data *); +void initialize_accel_factorytest(struct ssp_data *); +void initialize_prox_factorytest(struct ssp_data *); +void initialize_light_factorytest(struct ssp_data *); +void initialize_gyro_factorytest(struct ssp_data *); +void initialize_pressure_factorytest(struct ssp_data *); +void initialize_magnetic_factorytest(struct ssp_data *); +void initialize_function_pointer(struct ssp_data *); +void initialize_magnetic(struct ssp_data *); +void initialize_gesture_factorytest(struct ssp_data *data); +void initialize_temphumidity_factorytest(struct ssp_data *data); +void remove_accel_factorytest(struct ssp_data *); +void remove_gyro_factorytest(struct ssp_data *); +void remove_prox_factorytest(struct ssp_data *); +void remove_light_factorytest(struct ssp_data *); +void remove_pressure_factorytest(struct ssp_data *); +void remove_magnetic_factorytest(struct ssp_data *); +void remove_gesture_factorytest(struct ssp_data *data); +void remove_temphumidity_factorytest(struct ssp_data *data); +#ifdef CONFIG_SENSORS_SSP_MOBEAM +void initialize_mobeam(struct ssp_data *data); +void remove_mobeam(struct ssp_data *data); +#endif +void destroy_sensor_class(void); +int initialize_event_symlink(struct ssp_data *); +int sensors_create_symlink(struct kobject *target, + const char *name); +int accel_open_calibration(struct ssp_data *); +int gyro_open_calibration(struct ssp_data *); +int pressure_open_calibration(struct ssp_data *); +int proximity_open_calibration(struct ssp_data *); +int check_fwbl(struct ssp_data *); +void remove_input_dev(struct ssp_data *); +void remove_sysfs(struct ssp_data *); +void remove_event_symlink(struct ssp_data *); +int ssp_send_cmd(struct ssp_data *, char, int); +int send_instruction(struct ssp_data *, u8, u8, u8 *, u8); +int send_instruction_sync(struct ssp_data *, u8, u8, u8 *, u8); +int flush(struct ssp_data *, u8); +int get_batch_count(struct ssp_data *, u8); +int select_irq_msg(struct ssp_data *); +int get_chipid(struct ssp_data *); +int get_fuserom_data(struct ssp_data *); +int set_big_data_start(struct ssp_data *, u8 , u32); +int mag_open_hwoffset(struct ssp_data *); +int mag_store_hwoffset(struct ssp_data *); +int set_hw_offset(struct ssp_data *); +int get_hw_offset(struct ssp_data *); +int set_gyro_cal(struct ssp_data *); +int set_accel_cal(struct ssp_data *); +int set_sensor_position(struct ssp_data *); +int set_magnetic_static_matrix(struct ssp_data *); +void sync_sensor_state(struct ssp_data *); +void set_proximity_threshold(struct ssp_data *, unsigned int, unsigned int); +void set_proximity_barcode_enable(struct ssp_data *, bool); +#ifdef CONFIG_DUAL_LCD +void set_magnetic_cal_with_folder_state(struct ssp_data *, bool); +int ssp_get_flip_status(void); +void magnetic_set_ssp_info(struct ssp_data *data); +#endif +void set_gesture_current(struct ssp_data *, unsigned char); +int get_msdelay(int64_t); +unsigned int get_sensor_scanning_info(struct ssp_data *); +unsigned int get_firmware_rev(struct ssp_data *); +int forced_to_download_binary(struct ssp_data *, int); +int parse_dataframe(struct ssp_data *, char *, int); +void enable_debug_timer(struct ssp_data *); +void disable_debug_timer(struct ssp_data *); +int initialize_debug_timer(struct ssp_data *); +int proximity_open_lcd_ldi(struct ssp_data *); +void report_meta_data(struct ssp_data *, struct sensor_value *); +void report_acc_data(struct ssp_data *, struct sensor_value *); +void report_gyro_data(struct ssp_data *, struct sensor_value *); +void report_mag_data(struct ssp_data *, struct sensor_value *); +void report_mag_uncaldata(struct ssp_data *, struct sensor_value *); +void report_rot_data(struct ssp_data *, struct sensor_value *); +void report_game_rot_data(struct ssp_data *, struct sensor_value *); +void report_step_det_data(struct ssp_data *, struct sensor_value *); +void report_gesture_data(struct ssp_data *, struct sensor_value *); +void report_pressure_data(struct ssp_data *, struct sensor_value *); +void report_light_data(struct ssp_data *, struct sensor_value *); +void report_prox_data(struct ssp_data *, struct sensor_value *); +void report_prox_raw_data(struct ssp_data *, struct sensor_value *); +void report_geomagnetic_raw_data(struct ssp_data *, struct sensor_value *); +void report_sig_motion_data(struct ssp_data *, struct sensor_value *); +void report_uncalib_gyro_data(struct ssp_data *, struct sensor_value *); +void report_step_cnt_data(struct ssp_data *, struct sensor_value *); +int print_mcu_debug(char *, int *, int); +void report_temp_humidity_data(struct ssp_data *, struct sensor_value *); +void report_shake_cam_data(struct ssp_data *, struct sensor_value *); +void report_bulk_comp_data(struct ssp_data *data); +unsigned int get_module_rev(struct ssp_data *data); +void reset_mcu(struct ssp_data *); +int queue_refresh_task(struct ssp_data *data, int delay); +void convert_acc_data(s16 *); +int sensors_register(struct device *, void *, + struct device_attribute*[], char *); +void sensors_unregister(struct device *, + struct device_attribute*[]); +ssize_t mcu_reset_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_dump_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_revision_show(struct device *, struct device_attribute *, char *); +ssize_t mcu_update_ums_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_update_kernel_crashed_bin_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_factorytest_store(struct device *, struct device_attribute *, + const char *, size_t); +ssize_t mcu_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_model_name_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_show(struct device *, + struct device_attribute *, char *); +ssize_t mcu_sleep_factorytest_store(struct device *, + struct device_attribute *, const char *, size_t); +ssize_t mpu6500_gyro_selftest(char *, struct ssp_data *); +ssize_t k330_gyro_selftest(char *, struct ssp_data *); + +void ssp_dump_task(struct work_struct *work); +void ssp_read_big_library_task(struct work_struct *work); +void ssp_send_big_library_task(struct work_struct *work); +void ssp_pcm_dump_task(struct work_struct *work); +void ssp_temp_task(struct work_struct *work); +int set_time(struct ssp_data *); +int get_time(struct ssp_data *); +#endif diff --git a/drivers/sensorhub/stm_patek/ssp_ak8963c.c b/drivers/sensorhub/stm_patek/ssp_ak8963c.c new file mode 100644 index 000000000000..5a462b954a3f --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_ak8963c.c @@ -0,0 +1,105 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +/*************************************************************************/ +/* AKM Daemon Library ioctl */ +/*************************************************************************/ + +static int akmd_copy_in(unsigned int cmd, void __user *argp, + void *buf, size_t buf_size) +{ + if (!(cmd & IOC_IN)) + return 0; + if (_IOC_SIZE(cmd) > buf_size) + return -EINVAL; + if (copy_from_user(buf, argp, _IOC_SIZE(cmd))) + return -EFAULT; + return 0; +} + +static int akmd_copy_out(unsigned int cmd, void __user *argp, + void *buf, size_t buf_size) +{ + if (!(cmd & IOC_OUT)) + return 0; + if (_IOC_SIZE(cmd) > buf_size) + return -EINVAL; + if (copy_to_user(argp, buf, _IOC_SIZE(cmd))) + return -EFAULT; + return 0; +} + +static long akmd_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + int iRet; + void __user *argp = (void __user *)arg; + struct ssp_data *data = container_of(file->private_data, + struct ssp_data, akmd_device); + + union { + u8 uData[8]; + u8 uMagData[8]; + u8 uFuseData[3]; + int iAccData[3]; + } akmdbuf; + + iRet = akmd_copy_in(cmd, argp, akmdbuf.uData, sizeof(akmdbuf)); + if (iRet) + return iRet; + + switch (cmd) { + case ECS_IOCTL_GET_MAGDATA: + akmdbuf.uMagData[0] = 1; + akmdbuf.uMagData[1] = data->buf[GEOMAGNETIC_SENSOR].x & 0xff; + akmdbuf.uMagData[2] = data->buf[GEOMAGNETIC_SENSOR].x >> 8; + akmdbuf.uMagData[3] = data->buf[GEOMAGNETIC_SENSOR].y & 0xff; + akmdbuf.uMagData[4] = data->buf[GEOMAGNETIC_SENSOR].y >> 8; + akmdbuf.uMagData[5] = data->buf[GEOMAGNETIC_SENSOR].z & 0xff; + akmdbuf.uMagData[6] = data->buf[GEOMAGNETIC_SENSOR].z >> 8; + akmdbuf.uMagData[7] = 0x10; + break; + case ECS_IOCTL_GET_ACCDATA: + akmdbuf.iAccData[0] = data->buf[ACCELEROMETER_SENSOR].x; + akmdbuf.iAccData[1] = data->buf[ACCELEROMETER_SENSOR].y; + akmdbuf.iAccData[2] = data->buf[ACCELEROMETER_SENSOR].z; + break; + case ECS_IOCTL_GET_FUSEROMDATA: + akmdbuf.uFuseData[0] = data->uFuseRomData[0]; + akmdbuf.uFuseData[1] = data->uFuseRomData[1]; + akmdbuf.uFuseData[2] = data->uFuseRomData[2]; + break; + default: + return -ENOTTY; + } + + if (iRet < 0) + return iRet; + + return akmd_copy_out(cmd, argp, akmdbuf.uData, sizeof(akmdbuf)); +} + +static const struct file_operations akmd_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = akmd_ioctl, +}; + +void initialize_magnetic(struct ssp_data *data) +{ + data->akmd_device.minor = MISC_DYNAMIC_MINOR; + data->akmd_device.name = "akm8963"; + data->akmd_device.fops = &akmd_fops; +} diff --git a/drivers/sensorhub/stm_patek/ssp_data.c b/drivers/sensorhub/stm_patek/ssp_data.c new file mode 100644 index 000000000000..251fc3ec2e51 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_data.c @@ -0,0 +1,359 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +/* SSP -> AP Instruction */ +#define MSG2AP_INST_BYPASS_DATA 0x37 +#define MSG2AP_INST_LIBRARY_DATA 0x01 +#define MSG2AP_INST_DEBUG_DATA 0x03 +#define MSG2AP_INST_BIG_DATA 0x04 +#define MSG2AP_INST_META_DATA 0x05 +#define MSG2AP_INST_TIME_SYNC 0x06 +#define MSG2AP_INST_RESET 0x07 + +/*************************************************************************/ +/* SSP parsing the dataframe */ +/*************************************************************************/ + +static void get_timestamp(struct ssp_data *data, char *pchRcvDataFrame, + int *iDataIdx, struct sensor_value *sensorsdata) { + s32 otimestamp = 0; + s64 ctimestamp = 0; + + memcpy(&otimestamp, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; + + ctimestamp = (s64) otimestamp * 1000000; + sensorsdata->timestamp = data->timestamp + ctimestamp; +} + +static void get_3axis_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_uncalib_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_uncaldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +} + +static void get_geomagnetic_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 6); + *iDataIdx += 6; +} + +static void get_geomagnetic_caldata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#ifdef SAVE_MAG_LOG + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 7); + *iDataIdx += 7; +#endif +} + +static void get_rot_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 17); + *iDataIdx += 17; +} + +static void get_step_det_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_light_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_TMG399X) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 10); + *iDataIdx += 10; +#elif defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 12); + *iDataIdx += 12; +#else + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 8); + *iDataIdx += 8; +#endif +} + +static void get_pressure_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + s16 temperature = 0; + memcpy(&sensorsdata->pressure[0], pchRcvDataFrame + *iDataIdx, 4); + memcpy(&temperature, pchRcvDataFrame + *iDataIdx + 4, 2); + sensorsdata->pressure[1] = temperature; + *iDataIdx += 6; +} + +static void get_gesture_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 38); + *iDataIdx += 38; +#else//CONFIG_SENSORS_SSP_TMG399X + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 20); + *iDataIdx += 20; +#endif +} + +static void get_proximity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memset(&sensorsdata->prox[0], 0, 2); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 2); + *iDataIdx += 3; +#else + memset(&sensorsdata->prox[0], 0, 1); + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + //memcpy(&sensorsdata->prox[1], pchRcvDataFrame + *iDataIdx + 1, 1); + *iDataIdx += 2; +#endif +} + +static void get_proximity_rawdata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ +#if defined(CONFIG_SENSORS_SSP_MAX88921) + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 2); + *iDataIdx += 2; +#else + memcpy(&sensorsdata->prox[0], pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +#endif +} + +static void get_temp_humidity_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memset(&sensorsdata->data[2], 0, 2); + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 5); + *iDataIdx += 5; +} + +static void get_sig_motion_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +static void get_step_cnt_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(&sensorsdata->step_diff, pchRcvDataFrame + *iDataIdx, 4); + *iDataIdx += 4; +} + +static void get_shake_cam_sensordata(char *pchRcvDataFrame, int *iDataIdx, + struct sensor_value *sensorsdata) +{ + memcpy(sensorsdata, pchRcvDataFrame + *iDataIdx, 1); + *iDataIdx += 1; +} + +int handle_big_data(struct ssp_data *data, char *pchRcvDataFrame, int *pDataIdx) { + u8 bigType = 0; + struct ssp_big *big = kzalloc(sizeof(*big), GFP_KERNEL); + big->data = data; + bigType = pchRcvDataFrame[(*pDataIdx)++]; + memcpy(&big->length, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + memcpy(&big->addr, pchRcvDataFrame + *pDataIdx, 4); + *pDataIdx += 4; + + if (bigType >= BIG_TYPE_MAX) { + kfree(big); + return FAIL; + } + + INIT_WORK(&big->work, data->ssp_big_task[bigType]); + queue_work(data->debug_wq, &big->work); + return SUCCESS; +} + +void refresh_task(struct work_struct *work) { + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_refresh); + + if(data->bSspShutdown == true) { + pr_err("[SSP]: %s - ssp already shutdown\n", __func__); + return; + } + + wake_lock(&data->ssp_wake_lock); + pr_err("[SSP]: %s\n", __func__); + data->uResetCnt++; + + if (initialize_mcu(data) > 0) { + sync_sensor_state(data); + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_RESET); + if (data->uLastAPState != 0) + ssp_send_cmd(data, data->uLastAPState, 0); + if (data->uLastResumeState != 0) + ssp_send_cmd(data, data->uLastResumeState, 0); + data->uTimeOutCnt = 0; + } + + wake_unlock(&data->ssp_wake_lock); +} + +int queue_refresh_task(struct ssp_data *data, int delay) { + cancel_delayed_work_sync(&data->work_refresh); + + INIT_DELAYED_WORK(&data->work_refresh, refresh_task); + queue_delayed_work(data->debug_wq, &data->work_refresh, + msecs_to_jiffies(delay)); + return SUCCESS; +} + +int parse_dataframe(struct ssp_data *data, char *pchRcvDataFrame, int iLength) { + int iDataIdx, iSensorData; + u16 length = 0; + struct sensor_value sensorsdata; + struct timespec ts; + + getnstimeofday(&ts); + + for (iDataIdx = 0; iDataIdx < iLength;) { + switch (pchRcvDataFrame[iDataIdx++]) { + case MSG2AP_INST_BYPASS_DATA: + iSensorData = pchRcvDataFrame[iDataIdx++]; + if ((iSensorData < 0) || (iSensorData >= SENSOR_MAX)) { + pr_err("[SSP]: %s - Mcu data frame1 error %d\n", __func__, + iSensorData); + return ERROR; + } + data->get_sensor_data[iSensorData](pchRcvDataFrame, &iDataIdx, + &sensorsdata); + get_timestamp(data, pchRcvDataFrame, &iDataIdx, &sensorsdata); + data->report_sensor_data[iSensorData](data, &sensorsdata); + break; + case MSG2AP_INST_DEBUG_DATA: + iSensorData = print_mcu_debug(pchRcvDataFrame, &iDataIdx, iLength); + if (iSensorData) { + pr_err("[SSP]: %s - Mcu data frame3 error %d\n", __func__, + iSensorData); + return ERROR; + } + break; + case MSG2AP_INST_LIBRARY_DATA: + memcpy(&length, pchRcvDataFrame + iDataIdx, 2); + iDataIdx += 2; + ssp_sensorhub_handle_data(data, pchRcvDataFrame, iDataIdx, + iDataIdx + length); + iDataIdx += length; + break; + case MSG2AP_INST_BIG_DATA: + handle_big_data(data, pchRcvDataFrame, &iDataIdx); + break; + case MSG2AP_INST_META_DATA: + sensorsdata.meta_data.what = pchRcvDataFrame[iDataIdx++]; + sensorsdata.meta_data.sensor = pchRcvDataFrame[iDataIdx++]; + report_meta_data(data, &sensorsdata); + break; + case MSG2AP_INST_TIME_SYNC: + data->bTimeSyncing = true; + break; + case MSG2AP_INST_RESET: + queue_refresh_task(data, 0); + break; + } + } + + if (data->bTimeSyncing) + data->timestamp = ts.tv_sec * 1000000000ULL + ts.tv_nsec; + + return SUCCESS; +} + +void initialize_function_pointer(struct ssp_data *data) +{ + data->get_sensor_data[ACCELEROMETER_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GYROSCOPE_SENSOR] = get_3axis_sensordata; + data->get_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + get_geomagnetic_uncaldata; + data->get_sensor_data[GEOMAGNETIC_RAW] = get_geomagnetic_rawdata; + data->get_sensor_data[GEOMAGNETIC_SENSOR] = + get_geomagnetic_caldata; + data->get_sensor_data[PRESSURE_SENSOR] = get_pressure_sensordata; + data->get_sensor_data[GESTURE_SENSOR] = get_gesture_sensordata; + data->get_sensor_data[PROXIMITY_SENSOR] = get_proximity_sensordata; + data->get_sensor_data[PROXIMITY_RAW] = get_proximity_rawdata; + data->get_sensor_data[LIGHT_SENSOR] = get_light_sensordata; + data->get_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + get_temp_humidity_sensordata; + data->get_sensor_data[ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[GAME_ROTATION_VECTOR] = get_rot_sensordata; + data->get_sensor_data[STEP_DETECTOR] = get_step_det_sensordata; + data->get_sensor_data[SIG_MOTION_SENSOR] = get_sig_motion_sensordata; + data->get_sensor_data[GYRO_UNCALIB_SENSOR] = get_uncalib_sensordata; + data->get_sensor_data[STEP_COUNTER] = get_step_cnt_sensordata; + data->get_sensor_data[SHAKE_CAM] = get_shake_cam_sensordata; + + data->report_sensor_data[ACCELEROMETER_SENSOR] = report_acc_data; + data->report_sensor_data[GYROSCOPE_SENSOR] = report_gyro_data; + data->report_sensor_data[GEOMAGNETIC_UNCALIB_SENSOR] = + report_mag_uncaldata; + data->report_sensor_data[GEOMAGNETIC_RAW] = report_geomagnetic_raw_data; + data->report_sensor_data[GEOMAGNETIC_SENSOR] = + report_mag_data; + data->report_sensor_data[PRESSURE_SENSOR] = report_pressure_data; + data->report_sensor_data[GESTURE_SENSOR] = report_gesture_data; + data->report_sensor_data[PROXIMITY_SENSOR] = report_prox_data; + data->report_sensor_data[PROXIMITY_RAW] = report_prox_raw_data; + data->report_sensor_data[LIGHT_SENSOR] = report_light_data; + data->report_sensor_data[TEMPERATURE_HUMIDITY_SENSOR] = + report_temp_humidity_data; + data->report_sensor_data[ROTATION_VECTOR] = report_rot_data; + data->report_sensor_data[GAME_ROTATION_VECTOR] = report_game_rot_data; + data->report_sensor_data[STEP_DETECTOR] = report_step_det_data; + data->report_sensor_data[SIG_MOTION_SENSOR] = report_sig_motion_data; + data->report_sensor_data[GYRO_UNCALIB_SENSOR] = report_uncalib_gyro_data; + data->report_sensor_data[STEP_COUNTER] = report_step_cnt_data; + data->report_sensor_data[SHAKE_CAM] = report_shake_cam_data; + + data->ssp_big_task[BIG_TYPE_DUMP] = ssp_dump_task; + data->ssp_big_task[BIG_TYPE_READ_LIB] = ssp_read_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_NET] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_GRAM] = ssp_send_big_library_task; + data->ssp_big_task[BIG_TYPE_VOICE_PCM] = ssp_pcm_dump_task; +#ifdef CONFIG_SENSORS_SSP_SHTC1 + data->ssp_big_task[BIG_TYPE_TEMP] = ssp_temp_task; +#endif +} diff --git a/drivers/sensorhub/stm_patek/ssp_debug.c b/drivers/sensorhub/stm_patek/ssp_debug.c new file mode 100644 index 000000000000..054dbe8830e4 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_debug.c @@ -0,0 +1,457 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include +#if SSP_SEC_DEBUG +#include +#endif + + +#define SSP_DEBUG_TIMER_SEC (10 * HZ) + +#define LIMIT_RESET_CNT 20 +#define LIMIT_TIMEOUT_CNT 3 + +#define DUMP_FILE_PATH "/data/log/MCU_DUMP" + +void ssp_dump_task(struct work_struct *work) { +#if SSP_SEC_DEBUG + struct ssp_big *big; + struct file *dump_file; + struct ssp_msg *msg; + char *buffer; + char strFilePath[60]; + struct timeval cur_time; + mm_segment_t fs; + int buf_len, packet_len, residue, iRet = 0, index = 0 ,iRetTrans=0 ,iRetWrite=0; + + + big = container_of(work, struct ssp_big, work); + pr_err("[SSP]: %s - start ssp dumping (%d)(%d)\n", __func__, big->data->bMcuDumpMode, big->data->uDumpCnt); + big->data->uDumpCnt++; + wake_lock(&big->data->ssp_wake_lock); + + fs = get_fs(); + set_fs(get_ds()); + + if(big->data->bMcuDumpMode == true) + { + do_gettimeofday(&cur_time); + + sprintf(strFilePath, "%s%d.dump", DUMP_FILE_PATH, (int)cur_time.tv_sec); + dump_file = filp_open(strFilePath, O_RDWR | O_CREAT | O_APPEND, 0666); + + if (IS_ERR(dump_file)) + { + pr_err("[SSP]: %s - Can't open dump file\n", __func__); + set_fs(fs); + iRet = PTR_ERR(dump_file); + wake_unlock(&big->data->ssp_wake_lock); + kfree(big); + return; + } + } + else + dump_file = NULL; + + + buf_len = big->length > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : big->length; + buffer = kzalloc(buf_len, GFP_KERNEL); + residue = big->length; + + while (residue > 0) + { + packet_len = residue > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = packet_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRetTrans = ssp_spi_sync(big->data, msg, 5000); + + if (iRetTrans != SUCCESS) + { + pr_err("[SSP]: %s - Fail to receive data %d (%d)\n", __func__, iRetTrans,residue); + break; + } + + if(big->data->bMcuDumpMode == true) + { + iRetWrite = vfs_write(dump_file, (char __user *) buffer, packet_len, &dump_file->f_pos); + + if (iRetWrite < 0) + { + pr_err("[SSP]: %s - Can't write dump to file\n", __func__); + break; + } + } + residue -= packet_len; + } + + + if(big->data->bMcuDumpMode == true) + { + if(iRetTrans != SUCCESS || iRetWrite < 0) // error case + { + char FAILSTRING[100]; + sprintf(FAILSTRING,"FAIL OCCURED(%d)(%d)(%d)",iRetTrans,iRetWrite,big->length); + vfs_write(dump_file, (char __user *) FAILSTRING, strlen(FAILSTRING),&dump_file->f_pos); + } + + filp_close(dump_file, current->files); + } + + big->data->bDumping = false; + + set_fs(fs); + + wake_unlock(&big->data->ssp_wake_lock); + kfree(buffer); + kfree(big); +#endif + pr_err("[SSP]: %s done\n", __func__); +} + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void ssp_temp_task(struct work_struct *work) { + struct ssp_big *big; + struct ssp_msg *msg; + char *buffer; + int buf_len, packet_len, residue, iRet = 0, index = 0, i = 0, buffindex = 0; + + big = container_of(work, struct ssp_big, work); + buf_len = big->length > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : big->length; + buffer = kzalloc(buf_len, GFP_KERNEL); + residue = big->length; + mutex_lock(&big->data->bulk_temp_read_lock); + if (big->data->bulk_buffer == NULL) + big->data->bulk_buffer = kzalloc(sizeof(struct shtc1_buffer), + GFP_KERNEL); + big->data->bulk_buffer->len = big->length / 12; + + while (residue > 0) { + packet_len = residue > DATA_PACKET_SIZE ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = packet_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(big->data, msg, 1000); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Fail to receive data %d\n", __func__, iRet); + break; + } + // 12 = 1 chunk size for ks79.shin + // order is thermistor Bat, thermistor PA, Temp, Humidity, Baro, Gyro + // each data consist of 2bytes + i = 0; + while (packet_len - i >= 12) { + ssp_dbg("[SSP]: %s %d %d %d %d %d %d", __func__, + *((s16 *) (buffer + i + 0)), *((s16 *) (buffer + i + 2)), + *((s16 *) (buffer + i + 4)), *((s16 *) (buffer + i + 6)), + *((s16 *) (buffer + i + 8)), *((s16 *) (buffer +i + 10))); + big->data->bulk_buffer->batt[buffindex] = *((u16 *) (buffer + i + 0)); + big->data->bulk_buffer->chg[buffindex] = *((u16 *) (buffer + i + 2)); + big->data->bulk_buffer->temp[buffindex] = *((s16 *) (buffer + i + 4)); + big->data->bulk_buffer->humidity[buffindex] = *((u16 *) (buffer + i + 6)); + big->data->bulk_buffer->baro[buffindex] = *((s16 *) (buffer + i + 8)); + big->data->bulk_buffer->gyro[buffindex] = *((s16 *) (buffer + i + 10)); + buffindex++; + i += 12; + } + + residue -= packet_len; + } + if (iRet == SUCCESS) + report_bulk_comp_data(big->data); + mutex_unlock(&big->data->bulk_temp_read_lock); + kfree(buffer); + kfree(big); + ssp_dbg("[SSP]: %s done\n", __func__); +} +#endif + +/*************************************************************************/ +/* SSP Debug timer function */ +/*************************************************************************/ + +int print_mcu_debug(char *pchRcvDataFrame, int *pDataIdx, + int iRcvDataFrameLength) +{ + int iLength = pchRcvDataFrame[(*pDataIdx)++]; + int cur = *pDataIdx; + + if (iLength > iRcvDataFrameLength - *pDataIdx || iLength <= 0) { + ssp_dbg("[SSP]: MSG From MCU - invalid debug length(%d/%d/%d)\n", + iLength, iRcvDataFrameLength, cur); + return iLength ? iLength : ERROR; + } + + ssp_dbg("[SSP]: MSG From MCU - %s\n", &pchRcvDataFrame[*pDataIdx]); + *pDataIdx += iLength; + return 0; +} + +void reset_mcu(struct ssp_data *data) { + func_dbg(); + ssp_enable(data, false); + clean_pending_list(data); + toggle_mcu_reset(data); + ssp_enable(data, true); +} + +void sync_sensor_state(struct ssp_data *data) +{ + unsigned char uBuf[9] = {0,}; + unsigned int uSensorCnt; + int iRet = 0; +#ifdef CONFIG_SENSORS_SSP_YAS532 + iRet = set_hw_offset(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_hw_offset failed\n", __func__); + } +#endif + iRet = set_gyro_cal(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_gyro_cal failed\n", __func__); + } + iRet = set_accel_cal(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_accel_cal failed\n", __func__); + } + udelay(10); + + for (uSensorCnt = 0; uSensorCnt < SENSOR_MAX; uSensorCnt++) { + if (atomic_read(&data->aSensorEnable) & (1 << uSensorCnt)) { + s32 dMsDelay = get_msdelay(data->adDelayBuf[uSensorCnt]); + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &data->batchLatencyBuf[uSensorCnt], 4); + uBuf[8] = data->batchOptBuf[uSensorCnt]; + send_instruction(data, ADD_SENSOR, uSensorCnt, uBuf, 9); + udelay(10); + } + } + + if (data->bProximityRawEnabled == true) { + s32 dMsDelay = 20; + memcpy(&uBuf[0], &dMsDelay, 4); + send_instruction(data, ADD_SENSOR, PROXIMITY_RAW, uBuf, 4); + } + + set_proximity_threshold(data, data->uProxHiThresh,data->uProxLoThresh); + +#if SSP_SEC_DEBUG + data->bMcuDumpMode = sec_debug_is_enabled(); + iRet = ssp_send_cmd(data, MSG2SSP_AP_MCU_SET_DUMPMODE,data->bMcuDumpMode); + if (iRet < 0) { + pr_err("[SSP]: %s - MSG2SSP_AP_MCU_SET_DUMPMODE failed\n", __func__); + } +#endif +} + +static void print_sensordata(struct ssp_data *data, unsigned int uSensor) +{ + switch (uSensor) { + case ACCELEROMETER_SENSOR: + case GYROSCOPE_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].x, data->buf[uSensor].y, + data->buf[uSensor].z, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GEOMAGNETIC_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].cal_x, data->buf[uSensor].cal_y, + data->buf[uSensor].cal_y, data->buf[uSensor].accuracy, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GEOMAGNETIC_UNCALIB_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].uncal_x, data->buf[uSensor].uncal_y, + data->buf[uSensor].uncal_z, data->buf[uSensor].offset_x, + data->buf[uSensor].offset_y, data->buf[uSensor].offset_z, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case PRESSURE_SENSOR: + ssp_dbg("[SSP] %u : %d, %d (%ums)\n", uSensor, + data->buf[uSensor].pressure[0], + data->buf[uSensor].pressure[1], + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GESTURE_SENSOR: +#if defined (CONFIG_SENSORS_SSP_MAX88921) + ssp_dbg("[SSP] %u : %d %d %d %d (%ums)\n", uSensor, + data->buf[uSensor].data[0], data->buf[uSensor].data[1], + data->buf[uSensor].data[2], data->buf[uSensor].data[3], + get_msdelay(data->adDelayBuf[uSensor])); +#else + ssp_dbg("[SSP] %u : %d %d %d %d (%ums)\n", uSensor, + data->buf[uSensor].data[3], data->buf[uSensor].data[4], + data->buf[uSensor].data[5], data->buf[uSensor].data[6], + get_msdelay(data->adDelayBuf[uSensor])); +#endif + break; + case TEMPERATURE_HUMIDITY_SENSOR: + ssp_dbg("[SSP] %u : %d %d %d(%ums)\n", uSensor, + data->buf[uSensor].x, data->buf[uSensor].y, + data->buf[uSensor].z, get_msdelay(data->adDelayBuf[uSensor])); + break; + case LIGHT_SENSOR: +#ifdef CONFIG_SENSORS_SSP_TMG399X + ssp_dbg("[SSP] %u : %u, %u, %u, %u, %u, %u (%ums)\n", uSensor, + data->buf[uSensor].r, data->buf[uSensor].g, + data->buf[uSensor].b, data->buf[uSensor].w, + data->buf[uSensor].a_time, data->buf[uSensor].a_gain, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#else + ssp_dbg("[SSP] %u : %u, %u, %u, %u, %u, %u (%ums)\n", uSensor, + data->buf[uSensor].r, data->buf[uSensor].g, + data->buf[uSensor].b, data->buf[uSensor].w, + data->buf[uSensor].ir_cmp, data->buf[uSensor].amb_pga, + get_msdelay(data->adDelayBuf[uSensor])); + break; +#endif + case PROXIMITY_SENSOR: + ssp_dbg("[SSP] %u : %d %d(%ums)\n", uSensor, + data->buf[uSensor].prox[0], data->buf[uSensor].prox[1], + get_msdelay(data->adDelayBuf[uSensor])); + break; + case STEP_DETECTOR: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].step_det, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GAME_ROTATION_VECTOR: + case ROTATION_VECTOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].quat_a, data->buf[uSensor].quat_b, + data->buf[uSensor].quat_c, data->buf[uSensor].quat_d, + data->buf[uSensor].acc_rot, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case SIG_MOTION_SENSOR: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].sig_motion, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case GYRO_UNCALIB_SENSOR: + ssp_dbg("[SSP] %u : %d, %d, %d, %d, %d, %d (%ums)\n", uSensor, + data->buf[uSensor].uncal_x, data->buf[uSensor].uncal_y, + data->buf[uSensor].uncal_z, data->buf[uSensor].offset_x, + data->buf[uSensor].offset_y, data->buf[uSensor].offset_z, + get_msdelay(data->adDelayBuf[uSensor])); + break; + case STEP_COUNTER: + ssp_dbg("[SSP] %u : %u(%ums)\n", uSensor, + data->buf[uSensor].step_diff, + get_msdelay(data->adDelayBuf[uSensor])); + break; + default: + ssp_dbg("[SSP] Wrong sensorCnt: %u\n", uSensor); + break; + } +} + +static void debug_work_func(struct work_struct *work) +{ + unsigned int uSensorCnt; + struct ssp_data *data = container_of(work, struct ssp_data, work_debug); + + ssp_dbg("[SSP]: %s(%u) - Sensor state: 0x%x, RC: %u, CC: %u DC: %u TC: %u\n", + __func__, data->uIrqCnt, data->uSensorState, data->uResetCnt, + data->uComFailCnt, data->uDumpCnt, data->uTimeOutCnt); + + switch (data->fw_dl_state) { + case FW_DL_STATE_FAIL: + case FW_DL_STATE_DOWNLOADING: + case FW_DL_STATE_SYNC: + pr_info("[SSP] : %s firmware downloading state = %d\n", __func__, + data->fw_dl_state); + return; + } + + for (uSensorCnt = 0; uSensorCnt < SENSOR_MAX; uSensorCnt++) + if ((atomic_read(&data->aSensorEnable) & (1 << uSensorCnt)) + || data->batchLatencyBuf[uSensorCnt]) + print_sensordata(data, uSensorCnt); + + if (data->uTimeOutCnt > LIMIT_TIMEOUT_CNT) { + if (data->uComFailCnt < LIMIT_RESET_CNT) { + pr_info("[SSP] : %s - uTimeOutCnt(%u), pending(%u)\n", + __func__, data->uTimeOutCnt, !list_empty(&data->pending_list)); + data->uComFailCnt++; + reset_mcu(data); + } else + ssp_enable(data, false); + data->uTimeOutCnt = 0; + } + +#if 0 //def CONFIG_DUAL_LCD + if ((atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR)) + || (atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) + || (atomic_read(&data->aSensorEnable) & (1 << ROTATION_VECTOR))) + /*flip_status 0:open, 1:close*/ + if (data->flip_status != ssp_get_flip_status()) { + set_magnetic_cal_with_folder_state(data, ssp_get_flip_status()); + data->flip_status = ssp_get_flip_status(); + pr_info("[SSP] %s : Folder is %sed now.\n", __func__, + data->flip_status ? "clos":"open"); + } +#endif + + data->uIrqCnt = 0; +} + +static void debug_timer_func(unsigned long ptr) +{ + struct ssp_data *data = (struct ssp_data *)ptr; + + queue_work(data->debug_wq, &data->work_debug); + mod_timer(&data->debug_timer, + round_jiffies_up(jiffies + SSP_DEBUG_TIMER_SEC)); +} + +void enable_debug_timer(struct ssp_data *data) +{ + mod_timer(&data->debug_timer, + round_jiffies_up(jiffies + SSP_DEBUG_TIMER_SEC)); +} + +void disable_debug_timer(struct ssp_data *data) +{ + del_timer_sync(&data->debug_timer); + cancel_work_sync(&data->work_debug); +} + +int initialize_debug_timer(struct ssp_data *data) +{ + setup_timer(&data->debug_timer, debug_timer_func, (unsigned long)data); + + data->debug_wq = create_singlethread_workqueue("ssp_debug_wq"); + if (!data->debug_wq) + return ERROR; + + INIT_WORK(&data->work_debug, debug_work_func); + return SUCCESS; +} diff --git a/drivers/sensorhub/stm_patek/ssp_dev.c b/drivers/sensorhub/stm_patek/ssp_dev.c new file mode 100644 index 000000000000..3a41b29c9ebb --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_dev.c @@ -0,0 +1,854 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#ifdef CONFIG_OF +#include +#endif +#if SSP_SEC_DEBUG +#include +#endif + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler); +static void ssp_late_resume(struct early_suspend *handler); +#endif + +#define NORMAL_SENSOR_STATE_K 0x3FEFF + +#define GES_LDO_ON 1 +#define GES_LDO_OFF 0 + +#ifdef CONFIG_DUAL_LCD +int flip_status; +static struct ssp_data *ssp_data_check = NULL; + +void magnetic_set_ssp_info(struct ssp_data *data) +{ + if (data != NULL) + ssp_data_check = data; + else + pr_info("%s : ssp info is null\n", __func__); +} + +static struct ssp_data *magnetic_get_ssp_info(void) +{ + return ssp_data_check; +} + +void samsung_switching_ssp(int flip) +{ + struct ssp_data *data; + + data = magnetic_get_ssp_info(); + + if (data == NULL){ + pr_err("[SSP] %s: ssp info is null\n", __func__); + return; + } + + flip_status = flip; + + if ((atomic_read(&data->aSensorEnable) & (1 << GEOMAGNETIC_SENSOR)) + || (atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) + || (atomic_read(&data->aSensorEnable) & (1 << ROTATION_VECTOR))){ + /*flip_status 0:open, 1:close*/ + set_magnetic_cal_with_folder_state(data, flip_status); + pr_info("[SSP] %s : Folder is %sed now.\n", __func__, + flip_status ? "clos":"open"); +} +} +EXPORT_SYMBOL(samsung_switching_ssp); + +int ssp_get_flip_status(void) +{ + return flip_status; +} +#endif + +void ssp_enable(struct ssp_data *data, bool enable) +{ + pr_info("[SSP] %s, enable = %d, old enable = %d\n", + __func__, enable, data->bSspShutdown); + + if (enable && data->bSspShutdown) { + data->bSspShutdown = false; + enable_irq(data->iIrq); + enable_irq_wake(data->iIrq); + } else if (!enable && !data->bSspShutdown) { + data->bSspShutdown = true; + disable_irq(data->iIrq); + disable_irq_wake(data->iIrq); + } else + pr_err("[SSP] %s, enable error\n", __func__); +} +/************************************************************************/ +/* interrupt happened due to transition/change of SSP MCU */ +/************************************************************************/ + +static irqreturn_t sensordata_irq_thread_fn(int iIrq, void *dev_id) +{ + struct ssp_data *data = dev_id; + if(gpio_get_value(data->mcu_int1)) { + pr_info("[SSP] MCU int HIGH"); + return IRQ_HANDLED; + } + + select_irq_msg(data); + data->uIrqCnt++; + + return IRQ_HANDLED; +} + +/*************************************************************************/ +/* initialize sensor hub */ +/*************************************************************************/ + +static void initialize_variable(struct ssp_data *data) +{ + int iSensorIndex; + + for (iSensorIndex = 0; iSensorIndex < SENSOR_MAX; iSensorIndex++) { + data->adDelayBuf[iSensorIndex] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[iSensorIndex] = 0; + data->batchOptBuf[iSensorIndex] = 0; + data->aiCheckStatus[iSensorIndex] = INITIALIZATION_STATE; + } + + atomic_set(&data->aSensorEnable, 0); + data->iLibraryLength = 0; + data->uSensorState = NORMAL_SENSOR_STATE_K; + data->uFactoryProxAvg[0] = 0; + data->uMagCntlRegData = 1; + + data->uResetCnt = 0; + data->uTimeOutCnt = 0; + data->uComFailCnt = 0; + data->uIrqCnt = 0; + + data->bSspShutdown = true; + data->bProximityRawEnabled = false; + data->bGeomagneticRawEnabled = false; + data->bBarcodeEnabled = false; + data->bAccelAlert = false; + data->bTimeSyncing = true; + + data->accelcal.x = 0; + data->accelcal.y = 0; + data->accelcal.z = 0; + + data->gyrocal.x = 0; + data->gyrocal.y = 0; + data->gyrocal.z = 0; + + data->magoffset.x = 0; + data->magoffset.y = 0; + data->magoffset.z = 0; + + data->iPressureCal = 0; + data->uProxCanc = 0; + data->uProxHiThresh = 0; + data->uProxLoThresh = 0; + data->uGyroDps = GYROSCOPE_DPS500; + data->uIr_Current = 0; + + data->mcu_device = NULL; + data->acc_device = NULL; + data->gyro_device = NULL; + data->mag_device = NULL; + data->prs_device = NULL; + data->prox_device = NULL; + data->light_device = NULL; + data->ges_device = NULL; + + data->voice_device = NULL; +#if SSP_SEC_DEBUG + data->bMcuDumpMode = sec_debug_is_enabled(); +#endif + INIT_LIST_HEAD(&data->pending_list); + + data->step_count_total = 0; + data->sealevelpressure = 0; + initialize_function_pointer(data); +} + +int initialize_mcu(struct ssp_data *data) +{ + int iRet = 0; + + clean_pending_list(data); + + iRet = get_chipid(data); + pr_info("[SSP] MCU device ID = %d, reading ID = %d\n", DEVICE_ID, iRet); + if (iRet != DEVICE_ID) { + if (iRet < 0) { + pr_err("[SSP]: %s - MCU is not working : 0x%x\n", + __func__, iRet); + } else { + pr_err("[SSP]: %s - MCU identification failed\n", + __func__); + iRet = -ENODEV; + } + goto out; + } + + iRet = set_sensor_position(data); + if (iRet < 0) { + pr_err("[SSP]: %s - set_sensor_position failed\n", __func__); + goto out; + } + + iRet = get_fuserom_data(data); + if (iRet < 0) + pr_err("[SSP]: %s - get_fuserom_data failed\n", __func__); + + data->uSensorState = get_sensor_scanning_info(data); + if (data->uSensorState == 0) { + pr_err("[SSP]: %s - get_sensor_scanning_info failed\n", + __func__); + iRet = ERROR; + goto out; + } + + data->uCurFirmRev = get_firmware_rev(data); + pr_info("[SSP] MCU Firm Rev : New = %8u\n", + data->uCurFirmRev); + + iRet = ssp_send_cmd(data, MSG2SSP_AP_MCU_DUMP_CHECK, 0); +out: + return iRet; +} + +static int initialize_irq(struct ssp_data *data) +{ + int iRet, iIrq; + iIrq = gpio_to_irq(data->mcu_int1); + + pr_info("[SSP]: requesting IRQ %d\n", iIrq); + iRet = request_threaded_irq(iIrq, NULL, sensordata_irq_thread_fn, + IRQF_TRIGGER_FALLING|IRQF_ONESHOT, "SSP_Int", data); + if (iRet < 0) { + pr_err("[SSP]: %s - request_irq(%d) failed for gpio %d (%d)\n", + __func__, iIrq, iIrq, iRet); + goto err_request_irq; + } + + /* start with interrupts disabled */ + data->iIrq = iIrq; + disable_irq(data->iIrq); + return 0; + +err_request_irq: + gpio_free(data->mcu_int1); + return iRet; +} + +static void work_function_firmware_update(struct work_struct *work) +{ + struct ssp_data *data = container_of((struct delayed_work *)work, + struct ssp_data, work_firmware); + int iRet = 0; + + pr_info("[SSP] : %s\n", __func__); + + iRet = forced_to_download_binary(data, KERNEL_BINARY); + if (iRet < 0) { + ssp_dbg("[SSP]: %s - forced_to_download_binary failed!\n", + __func__); + data->uSensorState = 0; + return; + } + + queue_refresh_task(data, SSP_SW_RESET_TIME); +} + +static int ssp_parse_dt(struct device *dev, + struct ssp_data *data) +{ + struct device_node *np = dev->of_node; + enum of_gpio_flags flags; + int errorno = 0; + + data->mcu_int1 = of_get_named_gpio_flags(np, "ssp,mcu_int1-gpio", + 0, &flags); + if (data->mcu_int1 < 0) { + errorno = data->mcu_int1; + goto dt_exit; + } + + data->mcu_int2 = of_get_named_gpio_flags(np, "ssp,mcu_int2-gpio", + 0, &flags); + if (data->mcu_int2 < 0) { + errorno = data->mcu_int2; + goto dt_exit; + } + + data->ap_int = of_get_named_gpio_flags(np, "ssp,ap_int-gpio", + 0, &flags); + if (data->ap_int < 0) { + errorno = data->ap_int; + goto dt_exit; + } +#if defined(CONFIG_SEC_PATEK_PROJECT) + if (of_property_read_string(np, "ssp,ges_vdd_1p8", + &data->ges_vdd) < 0) + pr_err("%s - get ges_vdd error\n", __func__); + + if (of_property_read_string(np, "ssp,ges_led_3p3", + &data->ges_led) < 0) + pr_err("%s - get ges_led error\n", __func__); + + pr_err("%s - get ges_vcc pass\n", __func__); + +#endif + +#if defined(CONFIG_MACH_KLTE_JPN) || defined(CONFIG_MACH_KACTIVELTE_DCM) +#if defined(CONFIG_MACH_KLTE_MAX77828_JPN) + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); +#else + of_property_read_u32(np, "ssp,rst-gpio", &data->rst); +#endif +#else + data->rst = of_get_named_gpio_flags(np, "ssp,rst-gpio", + 0, &flags); +#endif + if (data->rst < 0) { + errorno = data->rst ; + goto dt_exit; + } + + if (of_property_read_u32(np, "ssp,acc-position", &data->accel_position)) + data->accel_position = 0; + + if (of_property_read_u32(np, "ssp,mag-position", &data->mag_position)) + data->mag_position = 0; + + if (of_property_read_u32(np, "ssp,ap-rev", &data->ap_rev)) + data->ap_rev = 0; + + errorno = gpio_request(data->mcu_int1, "mpu_ap_int1"); + if (errorno) { + pr_err("[SSP] failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + + errorno = gpio_direction_input(data->mcu_int1); + if (errorno) { + pr_err("[SSP] failed to set mcu_int1 as input\n"); + goto dt_exit; + } + + errorno = gpio_request(data->mcu_int2, "MCU_INT2"); + if (errorno) { + pr_err("[SSP] failed to request MCU_INT2 for SSP\n"); + goto dt_exit; + } + gpio_direction_input(data->mcu_int2); + + errorno = gpio_request(data->ap_int, "AP_MCU_INT"); + if (errorno) { + pr_err("[SSP] failed to request AP_INT for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->ap_int, 1); + + errorno = gpio_request(data->rst, "MCU_RST"); + if (errorno) { + pr_err("[SSP] failed to request MCU_RST for SSP\n"); + goto dt_exit; + } + gpio_direction_output(data->rst, 1); + + data->reg_hub = devm_regulator_get(dev, "hub_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get hub_vreg, %ld\n", + PTR_ERR(data->reg_hub)); + } else { + regulator_enable(data->reg_hub); + } + + data->reg_sns= devm_regulator_get(dev, "psns_vreg"); + if (IS_ERR(data->reg_hub)) { + pr_err("[SSP] could not get psns_vreg, %ld\n", + PTR_ERR(data->reg_sns)); + } else { + regulator_enable(data->reg_sns); + } + +dt_exit: + return errorno; +} +#if defined(CONFIG_SEC_PATEK_PROJECT) + static int ssp_gesture_regulator_onoff(struct ssp_data *data, int onoff) + { + int rc = 0; + struct regulator *regulator_led_3p3; + struct regulator *regulator_vdd_1p8; + + pr_info("[SSP] %s - start = %d\n", __func__, onoff); + + regulator_vdd_1p8 = regulator_get(NULL, data->ges_vdd); + if (IS_ERR(regulator_vdd_1p8)) { + pr_err("[SSP] %s - vdd_1p8 regulator_get fail\n", __func__); + return -ENODEV; + } + + regulator_led_3p3 = regulator_get(NULL, data->ges_led); + if (IS_ERR(regulator_led_3p3)) { + pr_err("[SSP] %s - vdd_3p3 regulator_get fail\n", __func__); + regulator_put(regulator_vdd_1p8); + return -ENODEV; + } + pr_info("[SSP] %s - onoff = %d\n", __func__, onoff); + + if (onoff == GES_LDO_ON) { + regulator_set_voltage(regulator_vdd_1p8, 1800000, 1800000); + rc = regulator_enable(regulator_vdd_1p8); + if (rc) { + pr_err("[SSP] %s - enable vdd_1p8 failed, rc=%d\n", + __func__, rc); + goto done; + } + regulator_set_voltage(regulator_led_3p3, 3300000, 3300000); + rc = regulator_enable(regulator_led_3p3); + if (rc) { + pr_err("[SSP] %s - enable led_3p3 failed, rc=%d\n", + __func__, rc); + goto done; + } + }else { + rc = regulator_disable(regulator_vdd_1p8); + if (rc) { + pr_err("[SSP] %s - disable vdd_1p8 failed, rc=%d\n", + __func__, rc); + goto done; + } + rc = regulator_disable(regulator_led_3p3); + if (rc) { + pr_err("[SSP] %s - disable led_3p3 failed, rc=%d\n", + __func__, rc); + goto done; + } + } + + data->regulator_is_enable = (u8)onoff; + +done: + regulator_put(regulator_led_3p3); + regulator_put(regulator_vdd_1p8); + + return rc; +} +#endif +static int ssp_probe(struct spi_device *spi_dev) +{ + int iRet = 0; + struct ssp_data *data; + struct ssp_platform_data *pdata; +#if defined(CONFIG_SEC_PATEK_PROJECT) + int err =-1; +#endif + + pr_info("[SSP] %s\n", __func__); + + if (poweroff_charging == 1 || boot_mode_recovery == 1) { + pr_err("[SSP] probe exit : lpm %d, recovery %d\n", + poweroff_charging, boot_mode_recovery); + return -ENODEV; + } + + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (data == NULL) { + pr_err("[SSP]: %s - failed to allocate memory for data\n", + __func__); + iRet = -ENOMEM; + goto exit; + } + + if (spi_dev->dev.of_node) { + iRet = ssp_parse_dt(&spi_dev->dev, data); + if (iRet) { + pr_err("[SSP]: %s - Failed to parse DT\n", __func__); + goto err_setup; + } + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + } else { + pdata = spi_dev->dev.platform_data; + if (pdata == NULL) { + pr_err("[SSP]: %s - platform_data is null\n", __func__); + iRet = -ENOMEM; + goto err_setup; + } + data->wakeup_mcu = pdata->wakeup_mcu; + data->check_mcu_ready = pdata->check_mcu_ready; + data->check_mcu_busy = pdata->check_mcu_busy; + data->set_mcu_reset = pdata->set_mcu_reset; + data->read_chg = pdata->read_chg; + + /* AP system_rev */ + if (pdata->check_ap_rev) + data->ap_rev = pdata->check_ap_rev(); + else + data->ap_rev = 0; + /* For changed devices */ + if (pdata->check_changes) + data->ssp_changes = pdata->check_changes(); + else + data->ssp_changes = SSP_MCU_L5; /* K330, MPU L5*/ + + /* Get sensor positions */ + if (pdata->get_positions) + pdata->get_positions(&data->accel_position, + &data->mag_position); + else if (spi_dev->dev.of_node == NULL) { + data->accel_position = 0; + data->mag_position = 0; + } + + } +#if defined(CONFIG_SEC_PATEK_PROJECT) + err = ssp_gesture_regulator_onoff(data, GES_LDO_ON); + if (err < 0) { + pr_err("[SSP] %s max88922_regulator_on fail err = %d\n", + __func__, err); + //goto err_setup; + } + usleep_range(1000, 1100); +#endif + + spi_dev->mode = SPI_MODE_1; + if (spi_setup(spi_dev)) { + pr_err("failed to setup spi for ssp_spi\n"); + goto err_setup; + } + + data->bProbeIsDone = false; + data->fw_dl_state = FW_DL_STATE_NONE; + data->spi = spi_dev; + spi_set_drvdata(spi_dev, data); + +#ifdef CONFIG_DUAL_LCD + magnetic_set_ssp_info(data); +#endif + +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_init(&data->cp_temp_adc_lock); + mutex_init(&data->bulk_temp_read_lock); +#endif +#ifdef CONFIG_SENSORS_SSP_STM + mutex_init(&data->comm_mutex); + mutex_init(&data->pending_mutex); +#endif + + if (((data->wakeup_mcu == NULL) + || (data->check_mcu_ready == NULL) + || (data->check_mcu_busy == NULL) + || (data->set_mcu_reset == NULL) + || (data->read_chg == NULL)) + && (spi_dev->dev.of_node == NULL)) { + pr_err("[SSP]: %s - function callback is null\n", __func__); + iRet = -EIO; + goto err_reset_null; + } + + pr_info("\n#####################################################\n"); + + INIT_DELAYED_WORK(&data->work_firmware, work_function_firmware_update); + + wake_lock_init(&data->ssp_wake_lock, + WAKE_LOCK_SUSPEND, "ssp_wake_lock"); + + iRet = initialize_input_dev(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create input device\n", __func__); + goto err_input_register_device; + } + + iRet = initialize_debug_timer(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create workqueue\n", __func__); + goto err_create_workqueue; + } + + iRet = initialize_irq(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create irq\n", __func__); + goto err_setup_irq; + } + + iRet = initialize_sysfs(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create sysfs\n", __func__); + goto err_sysfs_create; + } + + iRet = initialize_event_symlink(data); + if (iRet < 0) { + pr_err("[SSP]: %s - could not create symlink\n", __func__); + goto err_symlink_create; + } + + initialize_variable(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* init sensorhub device */ + iRet = ssp_sensorhub_initialize(data); + if (iRet < 0) { + pr_err("%s: ssp_sensorhub_initialize err(%d)", __func__, iRet); + ssp_sensorhub_remove(data); + } +#endif + + ssp_enable(data, true); + /* check boot loader binary */ + data->fw_dl_state = check_fwbl(data); + + if (data->fw_dl_state == FW_DL_STATE_NONE) { + iRet = initialize_mcu(data); + if (iRet == ERROR) { + toggle_mcu_reset(data); + } else if (iRet < ERROR) { + pr_err("[SSP]: %s - initialize_mcu failed\n", __func__); + goto err_read_reg; + } + } + +#ifdef CONFIG_HAS_EARLYSUSPEND + data->early_suspend.suspend = ssp_early_suspend; + data->early_suspend.resume = ssp_late_resume; + register_early_suspend(&data->early_suspend); +#endif +#ifdef CONFIG_DUAL_LCD + /* if read gpio , 0: close, 1:open so flip_status 0:open, 1:close*/ + flip_status = !(gpio_get_value(HALL_SENSOR_INT_GPIO)); + pr_info("[SSP] %s : Folder is %sed now.\n", __func__,flip_status ? "clos":"open"); +#endif + + pr_info("[SSP]: %s - probe success!\n", __func__); + + enable_debug_timer(data); + + iRet = 0; + if (data->fw_dl_state == FW_DL_STATE_NEED_TO_SCHEDULE) { + pr_info("[SSP]: Firmware update is scheduled\n"); + schedule_delayed_work(&data->work_firmware, + msecs_to_jiffies(1000)); + data->fw_dl_state = FW_DL_STATE_SCHEDULED; + } else if (data->fw_dl_state == FW_DL_STATE_FAIL) + data->bSspShutdown = true; + data->bProbeIsDone = true; + + goto exit; + +err_read_reg: +err_symlink_create: + remove_sysfs(data); +err_sysfs_create: + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); +err_setup_irq: + destroy_workqueue(data->debug_wq); +err_create_workqueue: + remove_input_dev(data); +err_input_register_device: + wake_lock_destroy(&data->ssp_wake_lock); +err_reset_null: +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif +#ifdef CONFIG_SENSORS_SSP_STM + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); +#endif + +err_setup: + kfree(data); + pr_err("[SSP]: %s - probe failed!\n", __func__); +exit: + pr_info("#####################################################\n\n"); + return iRet; +} + +static void ssp_shutdown(struct spi_device *spi_dev) +{ + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + if (data->bProbeIsDone == false) + goto exit; + + if (data->fw_dl_state >= FW_DL_STATE_SCHEDULED && + data->fw_dl_state < FW_DL_STATE_DONE) { + pr_err("%s, cancel_delayed_work_sync state = %d\n", + __func__, data->fw_dl_state); + cancel_delayed_work_sync(&data->work_firmware); + } + + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SHUTDOWN, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SHUTDOWN failed\n", + __func__); + + ssp_enable(data, false); + clean_pending_list(data); + +#ifdef CONFIG_HAS_EARLYSUSPEND + unregister_early_suspend(&data->early_suspend); +#endif + + free_irq(data->iIrq, data); + gpio_free(data->mcu_int1); + + remove_event_symlink(data); + remove_sysfs(data); + remove_input_dev(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + ssp_sensorhub_remove(data); +#endif + + cancel_delayed_work_sync(&data->work_refresh); + destroy_workqueue(data->debug_wq); + wake_lock_destroy(&data->ssp_wake_lock); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + mutex_destroy(&data->cp_temp_adc_lock); + mutex_destroy(&data->bulk_temp_read_lock); +#endif +#ifdef CONFIG_SENSORS_SSP_STM + mutex_destroy(&data->comm_mutex); + mutex_destroy(&data->pending_mutex); +#endif + toggle_mcu_reset(data); +/* gpio_set_value_cansleep(data->rst, 0); */ + pr_info("[SSP]: %s done\n", __func__); +exit: + kfree(data); +} + +#ifdef CONFIG_HAS_EARLYSUSPEND +static void ssp_early_suspend(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + disable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_SLEEP); + ssp_sleep_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_sleep_mode(data); +#endif +} + +static void ssp_late_resume(struct early_suspend *handler) +{ + struct ssp_data *data; + data = container_of(handler, struct ssp_data, early_suspend); + + func_dbg(); + enable_debug_timer(data); + +#ifdef CONFIG_SENSORS_SSP_SENSORHUB + /* give notice to user that AP goes to sleep */ + ssp_sensorhub_report_notice(data, MSG2SSP_AP_STATUS_WAKEUP); + ssp_resume_mode(data); + data->uLastAPState = MSG2SSP_AP_STATUS_WAKEUP; +#else + if (atomic_read(&data->aSensorEnable) > 0) + ssp_resume_mode(data); +#endif +} + +#else /* CONFIG_HAS_EARLYSUSPEND */ + +static int ssp_suspend(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + + func_dbg(); + data->uLastResumeState = MSG2SSP_AP_STATUS_SUSPEND; + disable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_SUSPEND, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_SUSPEND failed\n", + __func__); + data->bTimeSyncing = false; + disable_irq(data->iIrq); + return 0; +} + +static int ssp_resume(struct device *dev) +{ + struct spi_device *spi_dev = to_spi_device(dev); + struct ssp_data *data = spi_get_drvdata(spi_dev); + enable_irq(data->iIrq); + func_dbg(); + enable_debug_timer(data); + + if (SUCCESS != ssp_send_cmd(data, MSG2SSP_AP_STATUS_RESUME, 0)) + pr_err("[SSP]: %s MSG2SSP_AP_STATUS_RESUME failed\n", + __func__); + data->uLastResumeState = MSG2SSP_AP_STATUS_RESUME; + + return 0; +} + +static const struct dev_pm_ops ssp_pm_ops = { + .suspend = ssp_suspend, + .resume = ssp_resume +}; +#endif /* CONFIG_HAS_EARLYSUSPEND */ + +static const struct spi_device_id ssp_id[] = { + {"ssp", 0}, + {} +}; + +MODULE_DEVICE_TABLE(spi, ssp_id); +#ifdef CONFIG_OF +static struct of_device_id ssp_match_table[] = { + { .compatible = "ssp,STM32F",}, + {}, +}; +#else +#define mpu6500_match_table NULL +#endif + +static struct spi_driver ssp_driver = { + .probe = ssp_probe, + .shutdown = ssp_shutdown, + .id_table = ssp_id, + .driver = { +#ifndef CONFIG_HAS_EARLYSUSPEND + .pm = &ssp_pm_ops, +#endif + .owner = THIS_MODULE, + .name = "ssp", + .of_match_table = ssp_match_table + }, +}; + +module_spi_driver(ssp_driver); +MODULE_DESCRIPTION("ssp driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_patek/ssp_firmware.c b/drivers/sensorhub/stm_patek/ssp_firmware.c new file mode 100644 index 000000000000..bd161eab392d --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_firmware.c @@ -0,0 +1,905 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define SSP_FIRMWARE_REVISION_STM 14062600 +#define SSP_FIRMWARE_REVISION_TASMAN 14061000 +#define SSP_FIRMWARE_REVISION_PATEK 14070700 +#define SSP_FIRMWARE_REVISION_MAXIM_PATEK 14081300 + +#define BOOT_SPI_HZ 4800000 +#define NORM_SPI_HZ 4800000 + +/* Bootload mode cmd */ +#define BL_FW_NAME "ssp_stm.fw" +#define BL_FW_NAME_TASMAN "ssp_stm_tasman.fw" +#define BL_FW_NAME_PATEK "ssp_stm_patek.fw" +#define BL_FW_NAME_MAXIM_PATEK "ssp_stm_maxim_patek.fw" + +#define BL_UMS_FW_NAME "ssp_stm.bin" +#define BL_CRASHED_FW_NAME "ssp_crashed.fw" + +#define BL_UMS_FW_PATH 255 + +#define APP_SLAVE_ADDR 0x18 +#define BOOTLOADER_SLAVE_ADDR 0x26 + +/* Bootloader mode status */ +#define BL_WAITING_BOOTLOAD_CMD 0xc0 /* valid 7 6 bit only */ +#define BL_WAITING_FRAME_DATA 0x80 /* valid 7 6 bit only */ +#define BL_FRAME_CRC_CHECK 0x02 +#define BL_FRAME_CRC_FAIL 0x03 +#define BL_FRAME_CRC_PASS 0x04 +#define BL_APP_CRC_FAIL 0x40 /* valid 7 8 bit only */ +#define BL_BOOT_STATUS_MASK 0x3f + +/* Command to unlock bootloader */ +#define BL_UNLOCK_CMD_MSB 0xaa +#define BL_UNLOCK_CMD_LSB 0xdc + +/* STM */ +#define SSP_STM_DEBUG 0 +#define STM_SHOULD_BE_IMPLEMENT 0 + +#define SEND_ADDR_LEN 5 +#define BL_SPI_SOF 0x5A +#define BL_ACK 0x79 +#define BL_ACK2 0xF9 +#define BL_NACK 0x1F +#define BL_IDLE 0xA5 +#define BL_DUMMY 0x00 + +#define STM_MAX_XFER_SIZE 256 +#define STM_MAX_BUFFER_SIZE 260 +#define STM_APP_ADDR 0x08000000 + +#define BYTE_DELAY_READ 10 +#define BYTE_DELAY_WRITE 8 + +#define DEF_ACK_ERASE_NUMBER 14000 // Erase time ack wait increase : Flash size adjust +#define DEF_ACKCMD_NUMBER 40 +#define DEF_ACKROOF_NUMBER 40 + +#define WMEM_COMMAND 0x31 /* Write Memory command */ +#define GO_COMMAND 0x21 /* GO command */ +#define EXT_ER_COMMAND 0x44 /* Erase Memory command */ + +#define XOR_RMEM_COMMAND 0xEE /* Read Memory command */ + +#define XOR_WMEM_COMMAND 0xCE /* Write Memory command */ +#define XOR_GO_COMMAND 0xDE /* GO command */ +#define XOR_EXT_ER_COMMAND 0xBB /* Erase Memory command */ + +#define EXT_ER_DATA_LEN 3 +#define BLMODE_RETRYCOUNT 3 +#define BYTETOBYTE_USED 0 + +struct stm32fwu_spi_cmd { + u8 cmd; + u8 xor_cmd; + u8 ack_pad; /* Send this when waiting for an ACK */ + u8 reserved; + int status; /* ACK or NACK (or error) */ + int timeout; /* This is number of retries */ + int ack_loops; // Not used +}; + +static int stm32fwu_spi_write(struct spi_device *spi, const u8 *buffer, ssize_t len); + + +unsigned int get_module_rev(struct ssp_data *data) +{ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + return SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + return SSP_FIRMWARE_REVISION_MAXIM_PATEK; + else + return SSP_FIRMWARE_REVISION_PATEK; +#else + return SSP_FIRMWARE_REVISION_STM; +#endif +} + +static void stm32fwu_spi_send_ack( struct spi_device *spi, u8 SyncData ) +{ + u8 syncb[2] = {0}; + syncb[0] = SyncData; + stm32fwu_spi_write(spi, syncb, 1); +} + +static int stm32fwu_spi_wait_for_ack(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd, u8 dummy_bytes) +{ + static int check_spi_wait_cnt = 1; + + struct spi_message m; + char tx_buf = 0x0; + char rx_buf = 0x0; + struct spi_transfer t = { + .tx_buf = &tx_buf, + .rx_buf = &rx_buf, + .len = 1, + .bits_per_word = 8, + }; + int i = 0; + int ret; + dummy_bytes = BL_DUMMY; +#if SSP_STM_DEBUG + pr_info("[SSP] %s: dummy byte = 0x%02hhx\n", + __func__, dummy_bytes); +#endif + while (i < cmd->timeout) { + tx_buf = dummy_bytes; + spi_message_init(&m); + spi_message_add_tail(&t, &m); + + ret = spi_sync(spi, &m); + + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } else if ((rx_buf == BL_ACK) || (rx_buf == BL_NACK)) { + // ACK cmd set + stm32fwu_spi_send_ack(spi, BL_ACK); + return (int)rx_buf; + } else { + // Cross cmd set + tx_buf = rx_buf; + } + if (check_spi_wait_cnt % 20 == 0) + msleep(1); + else + usleep_range(1000, 1100); + i++; + check_spi_wait_cnt++; + } +#if SSP_STM_DEBUG + dev_err(&spi->dev, "%s: Timeout after %d loops\n", __func__, cmd->timeout); +#endif + return -EIO; +} + +static int stm32fwu_spi_send_cmd(struct spi_device *spi, + struct stm32fwu_spi_cmd *cmd) +{ + u8 tx_buf[3] = {0,}; + u8 rx_buf[3] = {0,}; + u8 dummy_byte = 0; + struct spi_message m; + int ret; +#if BYTETOBYTE_USED + int i; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); +#else + struct spi_transfer t = { + .tx_buf = tx_buf, + .rx_buf = rx_buf, + .len = 3, + .bits_per_word = 8, + }; +#endif + pr_debug("[SSP]%s\n", __func__); + + spi_message_init(&m); + tx_buf[0] = BL_SPI_SOF; + tx_buf[1] = cmd->cmd; + tx_buf[2] = cmd->xor_cmd; + +#if BYTETOBYTE_USED + for (i = 0; i < 3; i++) { + t[i].tx_buf = &tx_buf[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + + ret = spi_sync(spi, &m); + if (ret < 0) { + dev_err(&spi->dev, "%s: spi error %d\n", __func__, ret); + return ret; + } + + dummy_byte = cmd->ack_pad; + + /* check for ack/nack and loop until found */ + ret = stm32fwu_spi_wait_for_ack(spi, cmd, dummy_byte); + cmd->status = ret; + + if (ret != BL_ACK) { + pr_err("[SSP] %s: Got NAK or Error %d\n", __func__, ret); + return ret; + } + + return ret; +} +#if STM_SHOULD_BE_IMPLEMENT +static int stm32fwu_spi_read(struct spi_device *spi, + u8 *buffer, ssize_t len) +{ + int ret; + int i; + u8 tx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + + spi_message_init(&m); + + for (i = 0; i < len; i++) { + t[i].tx_buf = tx_buf; + t[i].rx_buf = &buffer[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_READ; + spi_message_add_tail(&t[i], &m); + } + + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_read()\n", ret); + return ret; + } + + return len; +} +#endif + +static int stm32fwu_spi_write(struct spi_device *spi, + const u8 *buffer, ssize_t len) +{ + int ret; + u8 rx_buf[STM_MAX_BUFFER_SIZE] = {0,}; + struct spi_message m; +#if BYTETOBYTE_USED + struct spi_transfer t[STM_MAX_BUFFER_SIZE]; + memset(t, 0, STM_MAX_BUFFER_SIZE * sizeof(struct spi_transfer)); + int i; +#else + struct spi_transfer t = { + .tx_buf = buffer, + .rx_buf = rx_buf, + .len = len, + .bits_per_word = 8, + }; +#endif + spi_message_init(&m); +#if BYTETOBYTE_USED + for (i = 0; i < len; i++) { + t[i].tx_buf = &buffer[i]; + t[i].rx_buf = &rx_buf[i]; + t[i].len = 1; + t[i].bits_per_word = 8; + t[i].delay_usecs = BYTE_DELAY_WRITE; + spi_message_add_tail(&t[i], &m); + } +#else + spi_message_add_tail(&t, &m); +#endif + ret = spi_sync(spi, &m); + + if (ret < 0) { + pr_err("[SSP] Error in %d spi_write()\n", ret); + return ret; + } + + return len; +} + +static int send_addr(struct spi_device *spi, u32 fw_addr, int send_short) +{ + int res; + int i = send_short; + int len = SEND_ADDR_LEN - send_short; + u8 header[SEND_ADDR_LEN]; + struct stm32fwu_spi_cmd dummy_cmd; + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + pr_debug("[SSP]%s\n", __func__); + + + header[0] = (u8)((fw_addr >> 24) & 0xFF); + header[1] = (u8)((fw_addr >> 16) & 0xFF); + header[2] = (u8)((fw_addr >> 8) & 0xFF); + header[3] = (u8)(fw_addr & 0xFF); + header[4] = header[0] ^ header[1] ^ header[2] ^ header[3]; + + res = stm32fwu_spi_write(spi, &header[i], len); + + if (res < len) { + pr_err("[SSP] Error in sending address. Res %d\n", res); + return ((res > 0) ? -EIO : res); + } + + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res != BL_ACK) { + pr_err("[SSP] send_addr(): rcv_ack returned 0x%x\n", + res); + return res; + } + return 0; +} + +#if STM_SHOULD_BE_IMPLEMENT +static int send_byte_count(struct spi_device *spi, int bytes, int get_ack) +{ + int res; + uchar bbuff[3]; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + if (bytes > 256) { + return -EINVAL; + } + + bbuff[0] = bytes - 1; + bbuff[1] = ~bbuff[0]; + + res = stm32fwu_spi_write(spi, bbuff, 2); + + if (res < 2) { + return -EPROTO; + } + + if (get_ack) { + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (res != BL_ACK) { + return -EPROTO; + } + } + return 0; +} + +static int fw_read_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_RMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + + res = stm32fwu_spi_send_cmd(spi, &cmd); + + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending read_mem Address\n", res); + return res; + } + + res = send_byte_count(spi, len, 1); + + if (res != 0) { + return -EPROTO; + } + + // Add Read Syc + stm32fwu_spi_send_ack(spi, BL_DUMMY); + + res = stm32fwu_spi_read(spi, buffer, len); + + if (res < len) { + return -EIO; + } + + return len; +} +#endif + +static int fw_write_stm(struct spi_device *spi, u32 fw_addr, + int len, const u8 *buffer) +{ + int res; + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int i; + u8 xor = 0; + u8 send_buff[STM_MAX_BUFFER_SIZE] = {0,}; + + cmd.cmd = WMEM_COMMAND; + cmd.xor_cmd = XOR_WMEM_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = (u8)((fw_addr >> 24) & 0xFF); + pr_debug("[SSP]%s\n", __func__); +#if SSP_STM_DEBUG + pr_info("[SSP] sending WMEM_COMMAND\n"); +#endif + + if (len > STM_MAX_XFER_SIZE) { + pr_err("[SSP] Can't send more than 256 bytes per transaction\n"); + return -EINVAL; + } + + send_buff[0] = len - 1; + memcpy(&send_buff[1], buffer, len); + for (i = 0; i < (len + 1); i++) + xor ^= send_buff[i]; + + send_buff[len + 1] = xor; + + res = stm32fwu_spi_send_cmd(spi, &cmd); + if (res != BL_ACK) { + pr_err("[SSP] Error %d sending read_mem cmd\n", res); + return res; + } + + res = send_addr(spi, fw_addr, 0); + + if (res != 0) { + pr_err("[SSP] Error %d sending write_mem Address\n", res); + return res; + } + + res = stm32fwu_spi_write(spi, send_buff, len + 2); + if (res < len) { + pr_err("[SSP] Error writing to flash. res = %d\n", res); + return ((res > 0) ? -EIO : res); + } + pr_debug("[SSP]%s 2\n", __func__); + + dummy_cmd.timeout = DEF_ACKROOF_NUMBER; + usleep_range(100, 150); /* Samsung added */ + res = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + if (res == BL_ACK) { + return len; + } + + if (res == BL_NACK) { + pr_err("[SSP] Got NAK waiting for WRITE_MEM to complete\n"); + return -EPROTO; + } + pr_err("[SSP] timeout waiting for ACK for WRITE_MEM command\n"); + return -ETIME; +} + +static int load_ums_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const u8 *buff = NULL; + char fw_path[BL_UMS_FW_PATH+1]; + unsigned int uFSize = 0, uNRead = 0; + unsigned int uPos = 0; + int iRet = SUCCESS; + int remaining; + int block = STM_MAX_XFER_SIZE; + unsigned int fw_addr = STM_APP_ADDR; + int retry_count = 0; + int err_count = 0; + int count = 0; + struct file *fp = NULL; + mm_segment_t old_fs = get_fs(); + + pr_info("[SSP] ssp_load_ums_fw start!!!\n"); + + old_fs = get_fs(); + set_fs(get_ds()); + + snprintf(fw_path, BL_UMS_FW_PATH, "/sdcard/ssp/%s", pFn); + + fp = filp_open(fw_path, O_RDONLY, 0); + if (IS_ERR(fp)) { + iRet = ERROR; + pr_err("file %s open error:%d\n", fw_path, (s32)fp); + goto err_open; + } + + uFSize = (unsigned int)fp->f_path.dentry->d_inode->i_size; + pr_info("ssp_load_ums firmware size: %u\n", uFSize); + + buff = kzalloc((size_t)uFSize, GFP_KERNEL); + if (!buff) { + iRet = ERROR; + pr_err("fail to alloc buffer for fw\n"); + goto err_alloc; + } + + uNRead = (unsigned int)vfs_read(fp, (char __user *)buff, + (unsigned int)uFSize, &fp->f_pos); + if (uNRead != uFSize) { + iRet = ERROR; + pr_err("fail to read file %s (nread = %u)\n", fw_path, uNRead); + goto err_fw_size; + } + remaining = uFSize; + + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, buff + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 50) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + uFSize); + count = 0; + } + } + pr_info("[SSP] Firm up(UMS) success(%d bytes, retry %d)\n", uPos, err_count); +out: +err_fw_size: + kfree(buff); +err_alloc: + filp_close(fp, NULL); +err_open: + set_fs(old_fs); + + return iRet; +} + +static int fw_erase_stm(struct spi_device *spi) +{ + struct stm32fwu_spi_cmd cmd; + struct stm32fwu_spi_cmd dummy_cmd; + int ret; + char buff[EXT_ER_DATA_LEN] = {0xff, 0xff, 0x00}; + pr_debug("[SSP]%s\n", __func__); + cmd.cmd = EXT_ER_COMMAND; + cmd.xor_cmd = XOR_EXT_ER_COMMAND; + cmd.timeout = DEF_ACKCMD_NUMBER; + cmd.ack_pad = BL_DUMMY; + + ret = stm32fwu_spi_send_cmd(spi, &cmd); + + if (ret != BL_ACK) { + pr_err("[SSP] fw_erase failed - %d\n", ret); + return ret; + } + + ret = stm32fwu_spi_write(spi, buff, EXT_ER_DATA_LEN); + + if( ret < EXT_ER_DATA_LEN ) + { + pr_err("[SSP] fw_erase write failed\n"); + return 0; + } + + dummy_cmd.timeout = DEF_ACK_ERASE_NUMBER; + + ret = stm32fwu_spi_wait_for_ack(spi, &dummy_cmd, BL_ACK); + + if (ret == BL_ACK) + return 0; + else if (ret == BL_NACK) + return -EPROTO; + else + return -ETIME; + +} + +static int load_kernel_fw_bootmode(struct spi_device *spi, const char *pFn) +{ + const struct firmware *fw = NULL; + int remaining; + unsigned int uPos = 0; + unsigned int fw_addr = STM_APP_ADDR; + int iRet; + int block = STM_MAX_XFER_SIZE; + int count = 0; + int err_count = 0; + int retry_count = 0; + + pr_info("[SSP] ssp_load_fw start!!!\n"); + + iRet = request_firmware(&fw, pFn, &spi->dev); + if (iRet) { + pr_err("[SSP] Unable to open firmware %s\n", pFn); + return iRet; + } + + remaining = fw->size; + while (remaining > 0) { + if (block > remaining) + block = remaining; + + while (retry_count < 3) { + iRet = fw_write_stm(spi, fw_addr, block, fw->data + uPos); + if (iRet < block) { + pr_err("[SSP] Error writing to addr 0x%08X\n", fw_addr); + if (iRet < 0) { + pr_err("[SSP] Erro was %d\n", iRet); + } else { + pr_err("[SSP] Incomplete write of %d bytes\n", + iRet); + iRet = -EIO; + } + retry_count++; + err_count++; + } else { + retry_count = 0; + break; + } + } + if (iRet < 0) { + pr_err("[SSP] Writing MEM failed: %d, retry cont: %d\n", iRet, err_count); + goto out_load_kernel; + } + remaining -= block; + uPos += block; + fw_addr += block; + if (count++ == 20) { + pr_info("[SSP] Updated %u bytes / %u bytes\n", uPos, + fw->size); + count = 0; + } + } + + pr_info("[SSP] Firmware download is success.(%d bytes, retry %d)\n", uPos, err_count); + +out_load_kernel: + release_firmware(fw); + return iRet; +} + +static int change_to_bootmode(struct ssp_data *data) +{ + int iCnt; + int ret; + char syncb = BL_SPI_SOF; + struct stm32fwu_spi_cmd dummy_cmd; + pr_debug("[SSP]%s\n", __func__); + + dummy_cmd.timeout = DEF_ACKCMD_NUMBER; + + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(45000, 47000); + + + for (iCnt = 0; iCnt < 9; iCnt++) { + gpio_set_value_cansleep(data->rst, 0); + mdelay(4); + gpio_set_value_cansleep(data->rst, 1); + usleep_range(15000, 15500); + } + + data->spi->mode = SPI_MODE_0; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for boot\n"); + usleep_range(1000, 1100); + + ret = stm32fwu_spi_write(data->spi, &syncb, 1); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_write(sync byte) returned %d\n", ret); +#endif + + ret = stm32fwu_spi_wait_for_ack(data->spi, &dummy_cmd, BL_DUMMY); +#if SSP_STM_DEBUG + pr_info("[SSP] stm32fwu_spi_wait_for_ack returned %d (0x%x)\n", ret, ret); +#endif + + return ret; +} + +void toggle_mcu_reset(struct ssp_data *data) +{ + gpio_set_value_cansleep(data->rst, 0); + + usleep_range(1000, 1200); + + gpio_set_value_cansleep(data->rst, 1); +} + +static int update_mcu_bin(struct ssp_data *data, int iBinType) +{ + int retry = BLMODE_RETRYCOUNT; + int iRet = SUCCESS; + struct stm32fwu_spi_cmd cmd; + + cmd.cmd = GO_COMMAND; + cmd.xor_cmd = XOR_GO_COMMAND; + cmd.timeout = 1000; + cmd.ack_pad = (u8)((STM_APP_ADDR >> 24) & 0xFF); + + // 1. Start system boot mode + do { + iRet = change_to_bootmode(data); + pr_info("[ssp] bootmode %d retry: %d\n", iRet, 3 - retry); + } while (retry-- > 0 && iRet != BL_ACK ); + + if(iRet != BL_ACK) { + pr_err("[SSP]: %s - change_to_bootmode %d\n", + __func__, iRet); + return iRet; + } + + // 2. Flash erase all + iRet = fw_erase_stm(data->spi); + if (iRet < 0) { + pr_err("[SSP]: %s - fw_erase_stm %d\n", + __func__, iRet); + return iRet; + } + + switch (iBinType) { + case KERNEL_BINARY: + /* HW request: I2C line is reversed */ +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_TASMAN); +#elif defined(CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_MAXIM_PATEK); + else + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME_PATEK); +#else + iRet = load_kernel_fw_bootmode(data->spi, BL_FW_NAME); +#endif + break; + case KERNEL_CRASHED_BINARY: + iRet = load_kernel_fw_bootmode(data->spi, BL_CRASHED_FW_NAME); + break; + case UMS_BINARY: + iRet = load_ums_fw_bootmode(data->spi, BL_UMS_FW_NAME); + break; + default: + pr_err("[SSP] binary type error!!\n"); + } +/* STM : GO USER ADDR */ + stm32fwu_spi_send_cmd(data->spi, &cmd); + send_addr(data->spi, STM_APP_ADDR, 0); + + data->spi->mode = SPI_MODE_1; + if (spi_setup(data->spi)) + pr_err("failed to setup spi mode for app\n"); + usleep_range(1000, 1100); + + return iRet; +} + +int forced_to_download_binary(struct ssp_data *data, int iBinType) +{ + int iRet = 0; + int retry = 3; + + ssp_dbg("[SSP]: %s - mcu binany update!\n", __func__); + + ssp_enable(data, false); + + data->fw_dl_state = FW_DL_STATE_DOWNLOADING; + pr_info("[SSP] %s, DL state = %d\n", __func__, + data->fw_dl_state); + data->spi->max_speed_hz = BOOT_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_boot\n"); + + do { + pr_info("[SSP] %d try\n", 3 - retry); + iRet = update_mcu_bin(data, iBinType); + } while (retry -- > 0 && iRet < 0); + data->spi->max_speed_hz = NORM_SPI_HZ; + if (spi_setup(data->spi)) + pr_err("failed to setup spi for ssp_norm\n"); + + if (iRet < 0) { + ssp_dbg("[SSP]: %s - update_mcu_bin failed!\n", __func__); + goto out; + } + + data->fw_dl_state = FW_DL_STATE_SYNC; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + ssp_enable(data, true); + + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + accel_open_calibration(data); + gyro_open_calibration(data); + pressure_open_calibration(data); + + data->fw_dl_state = FW_DL_STATE_DONE; + pr_info("[SSP] %s, DL state = %d\n", __func__, data->fw_dl_state); + + iRet = SUCCESS; +out: + return iRet; +} + +int check_fwbl(struct ssp_data *data) +{ + + unsigned int fw_revision; + + pr_info("[SSP] change_rev = %d\n", data->ssp_changes); +#if defined(CONFIG_SEC_KSPORTS_PROJECT) + fw_revision = SSP_FIRMWARE_REVISION_TASMAN; +#elif defined(CONFIG_SEC_PATEK_PROJECT) + if (data->ap_rev >= MAXIM_MAX21103_REV) + fw_revision = SSP_FIRMWARE_REVISION_MAXIM_PATEK; + else + fw_revision = SSP_FIRMWARE_REVISION_PATEK; +#else + fw_revision = SSP_FIRMWARE_REVISION_STM; +#endif + + data->uCurFirmRev = get_firmware_rev(data); + + if ((data->uCurFirmRev == SSP_INVALID_REVISION) + || (data->uCurFirmRev == SSP_INVALID_REVISION2)) { +#if STM_SHOULD_BE_IMPLEMENT + data->client->addr = BOOTLOADER_SLAVE_ADDR; + iRet = check_bootloader(data->client, BL_WAITING_BOOTLOAD_CMD); + + if (iRet >= 0) + pr_info("[SSP] ssp_load_fw_bootmode\n"); + else { + pr_warn("[SSP] Firm Rev is invalid(%8u). Retry.\n", + data->uCurFirmRev); + data->client->addr = APP_SLAVE_ADDR; + data->uCurFirmRev = get_firmware_rev(data); + if (data->uCurFirmRev == SSP_INVALID_REVISION + || data->uCurFirmRev == ERROR) { + pr_err("[SSP] MCU is not working, FW download failed\n"); + return FW_DL_STATE_FAIL; + } + } +#endif + data->uCurFirmRev = SSP_INVALID_REVISION; + pr_err("[SSP] SSP_INVALID_REVISION\n"); + return FW_DL_STATE_NEED_TO_SCHEDULE; + } else { + if (data->uCurFirmRev != fw_revision) { + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + + return FW_DL_STATE_NEED_TO_SCHEDULE; + } + pr_info("[SSP] MCU Firm Rev : Old = %8u, New = %8u\n", + data->uCurFirmRev, fw_revision); + } + + return FW_DL_STATE_NONE; +} diff --git a/drivers/sensorhub/stm_patek/ssp_i2c.c b/drivers/sensorhub/stm_patek/ssp_i2c.c new file mode 100644 index 000000000000..8b1d327f8d5c --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_i2c.c @@ -0,0 +1,824 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define LIMIT_DELAY_CNT 200 +#define RECEIVEBUFFERSIZE 12 +#define DEBUG_SHOW_DATA 0 + +static void clean_msg(struct ssp_msg *msg) { + if (msg->free_buffer) + kfree(msg->buffer); + kfree(msg); +} + +static int do_transfer(struct ssp_data *data, struct ssp_msg *msg, + struct completion *done, int timeout) { + int status = 0; + int iDelaycnt = 0; + bool msg_dead = false, ssp_down = false; + bool use_no_irq = msg->length == 0; + + msg->dead_hook = &msg_dead; + msg->dead = false; + msg->done = done; + + mutex_lock(&data->comm_mutex); + + gpio_set_value_cansleep(data->ap_int, 0); + while (gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit1 - Time out!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + } + + status = spi_write(data->spi, msg, 9) >= 0; + + if (status == 0) { + pr_err("[SSP]: %s spi_write fail!!\n", __func__); + gpio_set_value_cansleep(data->ap_int, 1); + status = -1; + goto exit; + } + + if (!use_no_irq) { + mutex_lock(&data->pending_mutex); + list_add_tail(&msg->list, &data->pending_list); + mutex_unlock(&data->pending_mutex); + } + + iDelaycnt = 0; + gpio_set_value_cansleep(data->ap_int, 1); + while (!gpio_get_value_cansleep(data->mcu_int2)) { + mdelay(3); + if ((ssp_down = data->bSspShutdown) || iDelaycnt++ > 500) { + pr_err("[SSP]: %s exit2 - Time out!!\n", __func__); + status = -2; + goto exit; + } + } + +exit: + mutex_unlock(&data->comm_mutex); + + if (ssp_down) + pr_err("[SSP] : %s, ssp down", __func__); + + if (status == -1) { + data->uTimeOutCnt += ssp_down ? 0 : 1; + clean_msg(msg); + return status; + } + + if (status == 1 && done != NULL) + if (wait_for_completion_timeout(done, msecs_to_jiffies(timeout)) == 0) + status = -2; + + mutex_lock(&data->pending_mutex); + if (!msg_dead) { + msg->done = NULL; + msg->dead_hook = NULL; + + if (status != 1) + msg->dead = true; + if (status == -2) + data->uTimeOutCnt += ssp_down ? 0 : 1; + } + mutex_unlock(&data->pending_mutex); + + if (use_no_irq) + clean_msg(msg); + + return status; +} + +int ssp_spi_async(struct ssp_data *data, struct ssp_msg *msg) { + int status = 0; + + status = do_transfer(data, msg, NULL, 0); + + return status; +} + +int ssp_spi_sync(struct ssp_data *data, struct ssp_msg *msg, int timeout) { + DECLARE_COMPLETION_ONSTACK(done); + int status = 0; + + if (msg->length == 0) { + pr_err("[SSP]: %s length must not be 0\n", __func__); + clean_msg(msg); + return status; + } + + status = do_transfer(data, msg, &done, timeout); + + return status; +} + +int select_irq_msg(struct ssp_data *data) { + struct ssp_msg *msg, *n; + bool found = false; + u16 chLength = 0, msg_options = 0; + u8 msg_type = 0; + int iRet = 0; + char* buffer; + char chTempBuf[4] = { -1 }; + + iRet = spi_read(data->spi, chTempBuf, sizeof(chTempBuf)); + if (iRet < 0) { + pr_err("[SSP]: %s spi_read fail!!\n", __func__); + return ERROR; + } + + memcpy(&msg_options, &chTempBuf[0], 2); + msg_type = msg_options & SSP_SPI_MASK; + memcpy(&chLength, &chTempBuf[2], 2); + + switch (msg_type) { + case AP2HUB_READ: + case AP2HUB_WRITE: + mutex_lock(&data->pending_mutex); + if (!list_empty(&data->pending_list)) { + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + if (msg->options == msg_options) { + list_del(&msg->list); + found = true; + break; + } + } + + if (!found) { + pr_err("[SSP]: %s %d - Not match error\n", __func__, msg_options); + goto exit; + } + + if (msg->dead && !msg->free_buffer) { + msg->buffer = (char*) kzalloc(msg->length, GFP_KERNEL); + msg->free_buffer = 1; + } // For dead msg, make a temporary buffer to read. + + if (msg_type == AP2HUB_READ) + iRet = spi_read(data->spi, msg->buffer, msg->length); + if (msg_type == AP2HUB_WRITE) { + iRet = spi_write(data->spi, msg->buffer, msg->length); + + if (msg_options & AP2HUB_RETURN) { + msg->options = AP2HUB_READ | AP2HUB_RETURN; + msg->length = 1; + list_add_tail(&msg->list, &data->pending_list); + goto exit; + } + } + + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } else + pr_err("[SSP]List empty error(%d)\n", msg_type); + exit: + mutex_unlock(&data->pending_mutex); + break; + case HUB2AP_WRITE: + buffer = (char*) kzalloc(chLength, GFP_KERNEL); + if (buffer == NULL) { + pr_err("[SSP] %s, failed to alloc memory for buffer\n", __func__); + iRet = -ENOMEM; + break; + } + iRet = spi_read(data->spi, buffer, chLength); + parse_dataframe(data, buffer, chLength); + kfree(buffer); + break; + default: + pr_err("[SSP]No type error(%d)\n", msg_type); + break; + } + + if (iRet < 0) { + pr_err("[SSP]: %s - MSG2SSP_SSD error %d\n", __func__, iRet); + return ERROR; + } + + return SUCCESS; +} + +void clean_pending_list(struct ssp_data *data) { + struct ssp_msg *msg, *n; + mutex_lock(&data->pending_mutex); + list_for_each_entry_safe(msg, n, &data->pending_list, list) + { + list_del(&msg->list); + if (msg->done != NULL && !completion_done(msg->done)) + complete(msg->done); + if (msg->dead_hook != NULL) + *(msg->dead_hook) = true; + + clean_msg(msg); + } + mutex_unlock(&data->pending_mutex); +} + +int ssp_send_cmd(struct ssp_data *data, char command, int arg) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = 0; + msg->options = AP2HUB_WRITE; + msg->data = arg; + msg->free_buffer = 0; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - command 0x%x failed %d\n", + __func__, command, iRet); + return ERROR; + } + + ssp_dbg("[SSP]: %s - command 0x%x %d\n", __func__, command, arg); + + return SUCCESS; +} + +int send_instruction(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + iRet = -ENOMEM; + return iRet; + } + + if(uSensorType == GEOMAGNETIC_SENSOR) + uLength += 1; + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(uLength + 1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + if(uSensorType == GEOMAGNETIC_SENSOR) { + msg->buffer[10] = MAG_LOG_MODE; + } + ssp_dbg("[SSP]: %s - Inst = 0x%x, Sensor Type = 0x%x, data = %u\n", + __func__, command, uSensorType, msg->buffer[1]); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + return iRet; +} + +int send_instruction_sync(struct ssp_data *data, u8 uInst, + u8 uSensorType, u8 *uSendBuf, u8 uLength) +{ + char command; + int iRet = 0; + char buffer[10] = { 0, }; + struct ssp_msg *msg; + + if (data->fw_dl_state == FW_DL_STATE_DOWNLOADING) { + pr_err("[SSP] %s - Skip Inst! DL state = %d\n", + __func__, data->fw_dl_state); + return SUCCESS; + } else if ((!(data->uSensorState & (1 << uSensorType))) + && (uInst <= CHANGE_DELAY)) { + pr_err("[SSP]: %s - Bypass Inst Skip! - %u\n", + __func__, uSensorType); + return FAIL; + } + + switch (uInst) { + case REMOVE_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_REMOVE; + break; + case ADD_SENSOR: + command = MSG2SSP_INST_BYPASS_SENSOR_ADD; + break; + case CHANGE_DELAY: + command = MSG2SSP_INST_CHANGE_DELAY; + break; + case GO_SLEEP: + command = MSG2SSP_AP_STATUS_SLEEP; + data->uLastAPState = MSG2SSP_AP_STATUS_SLEEP; + break; + case REMOVE_LIBRARY: + command = MSG2SSP_INST_LIBRARY_REMOVE; + break; + case ADD_LIBRARY: + command = MSG2SSP_INST_LIBRARY_ADD; + break; + default: + command = uInst; + break; + } + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = command; + msg->length = uLength + 1; + msg->options = AP2HUB_WRITE | AP2HUB_RETURN; + msg->buffer = buffer; + msg->free_buffer = 0; + + msg->buffer[0] = uSensorType; + memcpy(&msg->buffer[1], uSendBuf, uLength); + + ssp_dbg("[SSP]: %s - Inst Sync = 0x%x, Sensor Type = %u, data = %u\n", + __func__, command, uSensorType, msg->buffer[0]); + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - Instruction CMD Fail %d\n", __func__, iRet); + return ERROR; + } + + return buffer[0]; +} + +int flush(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + char buffer = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_FLUSH; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, + buffer); + + return buffer ? 0 : -1; +} + +int get_batch_count(struct ssp_data *data, u8 uSensorType) { + int iRet = 0; + s32 result = 0; + char buffer[4] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_BATCH_COUNT; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->data = uSensorType; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - fail %d\n", __func__, iRet); + return ERROR; + } + + memcpy(&result, buffer, 4); + + ssp_dbg("[SSP]: %s Sensor Type = 0x%x, data = %u\n", __func__, uSensorType, + result); + + return result; +} + +int get_chipid(struct ssp_data *data) +{ + int iRet, iReties = 0; + char buffer = 0; + struct ssp_msg *msg; + +retries: + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = MSG2SSP_AP_WHOAMI; + msg->length = 1; + msg->options = AP2HUB_READ; + msg->buffer = &buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (buffer != DEVICE_ID && iReties++ < 2) { + mdelay(5); + pr_err("[SSP] %s - get chip ID retry\n", __func__); + goto retries; + } + + if (iRet == SUCCESS) + return buffer; + + pr_err("[SSP] %s - get chip ID failed %d\n", __func__, iRet); + return ERROR; +} + +int set_sensor_position(struct ssp_data *data) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_FORMATION; + msg->length = 3; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(3, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = data->accel_position; + msg->buffer[1] = data->accel_position; + msg->buffer[2] = data->mag_position; + + pr_info("[SSP] Sensor Posision A : %u, G : %u, M: %u\n", + data->accel_position, data->accel_position, data->mag_position); + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +void set_proximity_threshold(struct ssp_data *data, + unsigned int uData1, unsigned int uData2) +{ + int iRet = 0; + + struct ssp_msg *msg; + + if (!(data->uSensorState & (1<uSensorState); + return; + } + + msg= kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_PROXTHRESHOLD; +#if defined(CONFIG_SENSORS_SSP_MAX88921) + msg->length = 4; +#else + msg->length = 2; +#endif + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(4, GFP_KERNEL); + msg->free_buffer = 1; + + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOL",__func__); + +#if defined(CONFIG_SENSORS_SSP_MAX88921) + msg->buffer[0] = ((char) (uData1 >> 8) & 0x07); + msg->buffer[1] = (char) uData1; + msg->buffer[2] = ((char) (uData2 >> 8) & 0x07); + msg->buffer[3] = (char) uData2; +#else + if (uData1 < uData2) { + pr_info("[SSP] %s - invalid threshold (%u, %u)\n", + __func__, uData1, uData2); + uData1 = DEFUALT_HIGH_THRESHOLD; + uData2 = DEFUALT_LOW_THRESHOLD; + } + msg->buffer[0] = (char)uData1; + msg->buffer[1] = (char)uData2; +#endif + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_PROXTHRESHOLD CMD fail %d\n", + __func__, iRet); + return; + } + pr_info("[SSP]: Proximity Threshold - %u, %u\n", uData1, uData2); +} + +void set_proximity_barcode_enable(struct ssp_data *data, bool bEnable) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_BARCODE_EMUL; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + data->bBarcodeEnabled = bEnable; + msg->buffer[0] = bEnable; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_BARCODE_EMUL CMD fail %d\n", + __func__, iRet); + return; + } + pr_info("[SSP] Proximity Barcode En : %u\n", bEnable); +} + +#ifdef CONFIG_DUAL_LCD +void set_magnetic_cal_with_folder_state(struct ssp_data *data, bool bEnable) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_MAGNETIC_CAL; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + /*if 1: close, 0: open*/ + msg->buffer[0] = bEnable; + + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_MAGNETIC_CAL fail %d\n", + __func__, iRet); + return; + } + pr_info("[SSP] magneticsensor calibration with folder state En : %u\n", bEnable); +} +#endif + +void set_gesture_current(struct ssp_data *data, unsigned char uData1) +{ + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SENSOR_GESTURE_CURRENT; + msg->length = 1; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(1, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = uData1; + iRet = ssp_spi_async(data, msg); + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - SENSOR_GESTURE_CURRENT CMD fail %d\n", __func__, + iRet); + return; + } + pr_info("[SSP]: Gesture Current Setting - %u\n", uData1); +} + +unsigned int get_sensor_scanning_info(struct ssp_data *data) { + int iRet = 0, z = 0; + u32 result = 0; + char bin[SENSOR_MAX + 1]; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + if (msg == NULL) { + pr_err("[SSP] %s, failed to alloc memory for ssp_msg\n", __func__); + return -ENOMEM; + } + msg->cmd = MSG2SSP_AP_SENSOR_SCANNING; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = (char*) &result; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + + bin[SENSOR_MAX] = '\0'; + for (z = 0; z < SENSOR_MAX; z++) + bin[SENSOR_MAX - 1 - z] = (result & (1 << z)) ? '1' : '0'; + pr_err("[SSP]: state: %s\n", bin); + + return result; +} + +unsigned int get_firmware_rev(struct ssp_data *data) { + int iRet; + u32 result = SSP_INVALID_REVISION; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FIRMWARE_REV; + msg->length = 4; + msg->options = AP2HUB_READ; + msg->buffer = (char*) &result; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + if (iRet != SUCCESS) + pr_err("[SSP]: %s - transfer fail %d\n", __func__, iRet); + + return result; +} + +int get_fuserom_data(struct ssp_data *data) +{ + int iRet = 0; + char buffer[3] = { 0, }; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_FUSEROM; + msg->length = 3; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet) { + data->uFuseRomData[0] = buffer[0]; + data->uFuseRomData[1] = buffer[1]; + data->uFuseRomData[2] = buffer[2]; + } else { + data->uFuseRomData[0] = 0; + data->uFuseRomData[1] = 0; + data->uFuseRomData[2] = 0; + return FAIL; + } + + pr_info("[SSP] FUSE ROM Data %d , %d, %d\n", data->uFuseRomData[0], + data->uFuseRomData[1], data->uFuseRomData[2]); + + return SUCCESS; +} + +int set_big_data_start(struct ssp_data *data, u8 type, u32 length) { + int iRet = 0; + + struct ssp_msg *msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_START_BIG_DATA; + msg->length = 5; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(5, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = type; + memcpy(&msg->buffer[1], &length, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int set_time(struct ssp_data *data) { + int iRet; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_SET_TIME; + msg->length = 12; + msg->options = AP2HUB_WRITE; + msg->buffer = (char*) kzalloc(12, GFP_KERNEL); + msg->free_buffer = 1; + + msg->buffer[0] = tm.tm_hour; + msg->buffer[1] = tm.tm_min; + msg->buffer[2] = tm.tm_sec; + msg->buffer[3] = tm.tm_hour > 11 ? 64 : 0; + msg->buffer[4] = tm.tm_wday; + msg->buffer[5] = tm.tm_mon + 1; + msg->buffer[6] = tm.tm_mday; + msg->buffer[7] = tm.tm_year % 100; + memcpy(&msg->buffer[8], &ts.tv_nsec, 4); + + iRet = ssp_spi_async(data, msg); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c fail %d\n", __func__, iRet); + iRet = ERROR; + } + + return iRet; +} + +int get_time(struct ssp_data *data) { + int iRet; + char buffer[12] = { 0, }; + struct ssp_msg *msg; + struct timespec ts; + struct rtc_time tm; + + getnstimeofday(&ts); + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s ap %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_MCU_GET_TIME; + msg->length = 12; + msg->options = AP2HUB_READ; + msg->buffer = buffer; + msg->free_buffer = 0; + + iRet = ssp_spi_sync(data, msg, 1000); + + if (iRet != SUCCESS) { + pr_err("[SSP]: %s - i2c failed %d\n", __func__, iRet); + return 0; + } + + tm.tm_hour = buffer[0]; + tm.tm_min = buffer[1]; + tm.tm_sec = buffer[2]; + tm.tm_mon = msg->buffer[5] - 1; + tm.tm_mday = buffer[6]; + tm.tm_year = buffer[7] + 100; + rtc_tm_to_time(&tm, &ts.tv_sec); + memcpy(&ts.tv_nsec, &msg->buffer[8], 4); + + rtc_time_to_tm(ts.tv_sec, &tm); + pr_info("[SSP]: %s mcu %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", __func__, + tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, + tm.tm_sec, ts.tv_nsec); + + return iRet; +} + diff --git a/drivers/sensorhub/stm_patek/ssp_iio_ring.c b/drivers/sensorhub/stm_patek/ssp_iio_ring.c new file mode 100644 index 000000000000..0f5da8d5eb05 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_iio_ring.c @@ -0,0 +1,1978 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/kfifo_buf.h" +#include "../../staging/iio/trigger_consumer.h" +#include "../../staging/iio/sysfs.h" + +//#include "inv_mpu_iio.h" + +#if 0 +static u8 fifo_data[HARDWARE_FIFO_SIZE + HEADERED_Q_BYTES]; +static int inv_process_batchmode(struct inv_mpu_state *st, bool insert); + +static int inv_push_marker_to_buffer(struct inv_mpu_state *st, u16 hdr) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + + memcpy(buf, &hdr, sizeof(hdr)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_push_8bytes_buffer(struct inv_mpu_state *st, u16 hdr, + u64 t, s16 *d) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + int i; + + memcpy(buf, &hdr, sizeof(hdr)); + for (i = 0; i < 3; i++) + memcpy(&buf[2 + i * 2], &d[i], sizeof(d[i])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + memcpy(buf, &t, sizeof(t)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_push_16bytes_buffer(struct inv_mpu_state *st, u16 hdr, u64 t, + int *q) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u8 buf[IIO_BUFFER_BYTES]; + int i; + + memcpy(buf, &hdr, sizeof(hdr)); + memcpy(buf + 4, &q[0], sizeof(q[0])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + for (i = 0; i < 2; i++) + memcpy(buf + 4 * i, &q[i + 1], sizeof(q[i])); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + memcpy(buf, &t, sizeof(t)); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + + return 0; +} + +static int inv_send_pressure_data(struct inv_mpu_state *st) +{ + short sen[3]; + struct inv_chip_config_s *conf; + struct inv_mpu_slave *slave; + u64 curr_ts; + + conf = &st->chip_config; + slave = st->slave_pressure; + if (!st->sensor[SENSOR_PRESSURE].on) + return 0; + if (conf->dmp_on && conf->dmp_event_int_on) + return 0; + if (!conf->normal_pressure_measure) { + conf->normal_pressure_measure = 1; + return 0; + } + curr_ts = get_time_ns(); + if (curr_ts - slave->prev_ts > slave->min_read_time) { + slave->read_data(st, sen); + inv_push_8bytes_buffer(st, PRESSURE_HDR, st->last_ts, sen); + slave->prev_ts = curr_ts; + } + + return 0; +} + +static int inv_send_compass_data(struct inv_mpu_state *st) +{ + short sen[3]; + struct inv_chip_config_s *conf; + struct inv_mpu_slave *slave; + u64 curr_ts; + + conf = &st->chip_config; + slave = st->slave_compass; + if (!st->sensor[SENSOR_COMPASS].on) + return 0; + if (conf->dmp_on && conf->dmp_event_int_on) + return 0; + if (!conf->normal_compass_measure) { + conf->normal_compass_measure = 1; + return 0; + } + curr_ts = get_time_ns(); + if (curr_ts - slave->prev_ts > slave->min_read_time) { + slave->read_data(st, sen); + inv_push_8bytes_buffer(st, COMPASS_HDR, st->last_ts, sen); + slave->prev_ts = curr_ts; + } + + return 0; +} + +static void process_step_only_batch(struct inv_mpu_state *st) +{ + int target_bytes, tmp, r; + u8 *dptr, *d; + u16 hdr; + s16 sen[3]; + u64 t; + + d = fifo_data; + dptr = d; + + if (st->fifo_count == 0) + return; + + target_bytes = st->fifo_count; + while (target_bytes > 0) { + if (target_bytes < MAX_READ_SIZE) + tmp = target_bytes; + else + tmp = MAX_READ_SIZE; + r = inv_i2c_read(st, st->reg.fifo_r_w, tmp, dptr); + if (r < 0) + return; + dptr += tmp; + target_bytes -= tmp; + } + dptr = d; + target_bytes = st->fifo_count; + while (dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + switch (hdr & (~1)) { + case STEP_DETECTOR_HDR: + tmp = (int)be32_to_cpup((__be32 *)(dptr + 4)); + t = st->step_detector_base_ts + + (u64)tmp * 5 * NSEC_PER_MSEC; + sen[0] = sen[1] = sen[2] = 0; + inv_push_8bytes_buffer(st, hdr, t, sen); + break; + default: + break; + } + dptr += HEADERED_NORMAL_BYTES; + } + + return; +} +static int inv_batchmode_calc(struct inv_mpu_state *st) +{ + int b, c, num_rate, rate; + int i, j, timeout, num_sensor_on, timeout_count; + bool int_on; + + num_sensor_on = 0; + num_rate = 0; + rate = 0; + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (st->sensor[i].on) { + if (i != SENSOR_STEP) { + if (num_rate == 0) { + rate = st->sensor[i].rate; + num_rate++; + } else if (rate != st->sensor[i].rate) { + num_rate++; + } + num_sensor_on++; + } + } + } + if ((num_sensor_on == 0) && st->sensor[SENSOR_STEP].on) { + /* in step only batchmode, counter is fixed */ + st->batch.counter = FIFO_SIZE / 8; + st->batch.step_only = true; + st->batch.on = true; + + return 0; + } else if (num_sensor_on == 0) { + return 0; + } + + b = st->batch.timeout * st->bytes_per_sec; + if ((b > (FIFO_SIZE * ONE_K_HZ)) && (!st->batch.overflow_on)) + timeout = FIFO_SIZE * ONE_K_HZ / st->bytes_per_sec; + else + timeout = st->batch.timeout; + + /* 5 ms per count */ + timeout_count = timeout / 5; + if (num_rate == 1) { + c = timeout * rate / ONE_K_HZ; + } else { + c = 0; + for (i = 1; i <= timeout_count; i++) { + int_on = false; + for (j = 0; j < SENSOR_NUM_MAX; j++) { + if (st->sensor[j].on) { + if ((i % st->sensor[j].counter) == 0) + int_on = true; + } + } + if (int_on) + c++; + } + } + st->batch.counter = c; + st->batch.on = true; + + return 0; +} + +int inv_batchmode_setup(struct inv_mpu_state *st) +{ + int r; + + r = inv_write_2bytes(st, KEY_BM_NUMWORD_TOFILL, 0); + if (r) + return r; + r = inv_write_2bytes(st, KEY_BM_BATCH_CNTR, 0); + if (r) + return r; + + if (st->chip_config.dmp_on && (st->batch.timeout > 0) && + (st->chip_config.dmp_event_int_on == 0)) { + r = inv_batchmode_calc(st); + if (r) + return r; + } + + if (st->batch.on) { + r = inv_write_2bytes(st, KEY_BM_BATCH_THLD, st->batch.counter); + if (r) + return r; + } + r = inv_write_2bytes(st, KEY_BM_ENABLE, st->batch.on); + + return r; +} + +/** + * reset_fifo_mpu3050() - Reset FIFO related registers + * @indio_dev: Device driver instance. + */ +static int reset_fifo_mpu3050(struct iio_dev *indio_dev) +{ + struct inv_reg_map_s *reg; + int result; + u8 val, user_ctrl; + struct inv_mpu_state *st = iio_priv(indio_dev); + reg = &st->reg; + + /* disable interrupt */ + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config); + if (result) + return result; + /* disable the sensor output to FIFO */ + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + goto reset_fifo_fail; + result = inv_i2c_read(st, reg->user_ctrl, 1, &user_ctrl); + if (result) + goto reset_fifo_fail; + /* disable fifo reading */ + user_ctrl &= ~BIT_FIFO_EN; + st->chip_config.has_footer = 0; + /* reset fifo */ + val = (BIT_3050_FIFO_RST | user_ctrl); + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + if (st->chip_config.dmp_on) { + /* enable interrupt when DMP is done */ + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | BIT_DMP_INT_EN); + if (result) + return result; + + result = inv_i2c_single_write(st, reg->user_ctrl, + BIT_FIFO_EN|user_ctrl); + if (result) + return result; + } else { + /* enable interrupt */ + if (st->sensor[SENSOR_ACCEL].on || + st->sensor[SENSOR_GYRO].on) { + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | BIT_DATA_RDY_EN); + if (result) + return result; + } + /* enable FIFO reading and I2C master interface*/ + result = inv_i2c_single_write(st, reg->user_ctrl, + BIT_FIFO_EN | user_ctrl); + if (result) + return result; + /* enable sensor output to FIFO and FIFO footer*/ + val = 1; + if (st->sensor[SENSOR_ACCEL].on) + val |= BITS_3050_ACCEL_OUT; + if (st->sensor[SENSOR_GYRO].on) + val |= BITS_GYRO_OUT; + result = inv_i2c_single_write(st, reg->fifo_en, val); + if (result) + return result; + } + + return 0; +reset_fifo_fail: + if (st->chip_config.dmp_on) + val = BIT_DMP_INT_EN; + else + val = BIT_DATA_RDY_EN; + inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config | val); + pr_err("reset fifo failed\n"); + + return result; +} + +/* + * inv_set_lpf() - set low pass filer based on fifo rate. + */ +static int inv_set_lpf(struct inv_mpu_state *st, int rate) +{ + const short hz[] = {188, 98, 42, 20, 10, 5}; + const int d[] = {INV_FILTER_188HZ, INV_FILTER_98HZ, + INV_FILTER_42HZ, INV_FILTER_20HZ, + INV_FILTER_10HZ, INV_FILTER_5HZ}; + int i, h, data, result; + struct inv_reg_map_s *reg; + + reg = &st->reg; + h = (rate >> 1); + i = 0; + while ((h < hz[i]) && (i < ARRAY_SIZE(d) - 1)) + i++; + data = d[i]; + if (INV_MPU3050 == st->chip_type) { + if (st->slave_accel != NULL) { + result = st->slave_accel->set_lpf(st, rate); + if (result) + return result; + } + result = inv_i2c_single_write(st, reg->lpf, data | + (st->chip_config.fsr << GYRO_CONFIG_FSR_SHIFT)); + } else { + result = inv_i2c_single_write(st, reg->lpf, data); + } + if (result) + return result; + st->chip_config.lpf = data; + + return 0; +} + +/* + * set_fifo_rate_reg() - Set fifo rate in hardware register + */ +static int set_fifo_rate_reg(struct inv_mpu_state *st) +{ + u8 data; + u16 fifo_rate; + int result; + struct inv_reg_map_s *reg; + + reg = &st->reg; + fifo_rate = st->chip_config.new_fifo_rate; + data = ONE_K_HZ / fifo_rate - 1; + result = inv_i2c_single_write(st, reg->sample_rate_div, data); + if (result) + return result; + result = inv_set_lpf(st, fifo_rate); + if (result) + return result; + /* wait for the sampling rate change to stabilize */ + mdelay(INV_MPU_SAMPLE_RATE_CHANGE_STABLE); + st->chip_config.fifo_rate = fifo_rate; + + return 0; +} + +/* + * inv_lpa_mode() - store current low power mode settings + */ +static int inv_lpa_mode(struct inv_mpu_state *st, int lpa_mode) +{ + unsigned long result; + u8 d; + struct inv_reg_map_s *reg; + + reg = &st->reg; + result = inv_i2c_read(st, reg->pwr_mgmt_1, 1, &d); + if (result) + return result; + if (lpa_mode) + d |= BIT_CYCLE; + else + d &= ~BIT_CYCLE; + + result = inv_i2c_single_write(st, reg->pwr_mgmt_1, d); + if (result) + return result; + if (INV_MPU6500 == st->chip_type) { + d = BIT_FIFO_SIZE_1K; + if (lpa_mode) + d |= BIT_ACCEL_FCHOCIE_B; + result = inv_i2c_single_write(st, REG_6500_ACCEL_CONFIG2, d); + if (result) + return result; + } + + return 0; +} + +static int inv_set_master_delay(struct inv_mpu_state *st) +{ + int d, result, rate; + u8 delay; + + if ((!st->sensor[SENSOR_COMPASS].on) && + (!st->sensor[SENSOR_PRESSURE].on)) + return 0; + + delay = 0; + d = 0; + if (st->sensor[SENSOR_COMPASS].on) { + switch (st->plat_data.sec_slave_id) { + case COMPASS_ID_AK8975: + case COMPASS_ID_AK8972: + case COMPASS_ID_AK8963: + delay = (BIT_SLV0_DLY_EN | BIT_SLV1_DLY_EN); + break; + case COMPASS_ID_MLX90399: + delay = (BIT_SLV0_DLY_EN | + BIT_SLV1_DLY_EN | + BIT_SLV2_DLY_EN | + BIT_SLV3_DLY_EN); + break; + default: + return -EINVAL; + } + d = max(d, st->slave_compass->rate_scale); + } + if (st->sensor[SENSOR_PRESSURE].on) { + /* read fake data when compass is disabled for DMP read */ + if (!st->sensor[SENSOR_COMPASS].on) + delay |= BIT_SLV0_DLY_EN; + switch (st->plat_data.aux_slave_id) { + case PRESSURE_ID_BMP280: + delay |= (BIT_SLV2_DLY_EN | BIT_SLV3_DLY_EN); + break; + default: + return -EINVAL; + } + d = max(d, st->slave_pressure->rate_scale); + } + result = inv_i2c_single_write(st, REG_I2C_MST_DELAY_CTRL, delay); + if (result) + return result; + + d = d * st->chip_config.fifo_rate / ONE_K_HZ; + if (st->chip_config.dmp_on) { + rate = 0; + if (st->sensor[SENSOR_PRESSURE].on) + rate = max(rate, st->sensor[SENSOR_PRESSURE].rate); + if (st->sensor[SENSOR_COMPASS].on) + rate = max(rate, st->sensor[SENSOR_COMPASS].rate); + if (rate == 0) + return -EINVAL; + d = max(d, st->chip_config.fifo_rate / rate); + } + + if (d > 0) + d -= 1; + if (d > 0x1F) + d = 0x1F; + + /* I2C_MST_DLY is set to slow down secondary I2C */ + return inv_i2c_single_write(st, REG_I2C_SLV4_CTRL, d); +} + +/* + * reset_fifo_itg() - Reset FIFO related registers. + */ +static int reset_fifo_itg(struct iio_dev *indio_dev) +{ + struct inv_reg_map_s *reg; + int result, i; + u8 val, int_word; + struct inv_mpu_state *st = iio_priv(indio_dev); + + reg = &st->reg; + if (st->chip_config.lpa_mode) { + result = inv_lpa_mode(st, 0); + if (result) { + pr_err("reset lpa mode failed\n"); + return result; + } + } + /* disable interrupt */ + result = inv_i2c_single_write(st, reg->int_enable, 0); + if (result) { + pr_err("int_enable write failed\n"); + return result; + } + /* disable the sensor output to FIFO */ + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + goto reset_fifo_fail; + /* disable fifo reading */ + result = inv_i2c_single_write(st, reg->user_ctrl, 0); + if (result) + goto reset_fifo_fail; + int_word = 0; + + /* MPU6500's BIT_6500_WOM_EN is the same as BIT_MOT_EN */ + if (st->mot_int.mot_on) + int_word |= BIT_MOT_EN; + + if (st->chip_config.dmp_on) { + val = (BIT_FIFO_RST | BIT_DMP_RST); + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + if (st->chip_config.dmp_int_on) { + int_word |= BIT_DMP_INT_EN; + result = inv_i2c_single_write(st, reg->int_enable, + int_word); + if (result) + return result; + } + val = (BIT_DMP_EN | BIT_FIFO_EN); + if ((st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) && + (!st->chip_config.dmp_event_int_on)) + val |= BIT_I2C_MST_EN; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + } else { + /* reset FIFO and possibly reset I2C*/ + val = BIT_FIFO_RST; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + /* enable interrupt */ + if (st->sensor[SENSOR_ACCEL].on || + st->sensor[SENSOR_GYRO].on || + st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) + int_word |= BIT_DATA_RDY_EN; + + result = inv_i2c_single_write(st, reg->int_enable, int_word); + if (result) + return result; + /* enable FIFO reading and I2C master interface*/ + val = BIT_FIFO_EN; + if (st->sensor[SENSOR_COMPASS].on || + st->sensor[SENSOR_PRESSURE].on) + val |= BIT_I2C_MST_EN; + result = inv_i2c_single_write(st, reg->user_ctrl, val); + if (result) + goto reset_fifo_fail; + /* enable sensor output to FIFO */ + val = 0; + if (st->sensor[SENSOR_GYRO].on) + val |= BITS_GYRO_OUT; + if (st->sensor[SENSOR_ACCEL].on) + val |= BIT_ACCEL_OUT; + result = inv_i2c_single_write(st, reg->fifo_en, val); + if (result) + goto reset_fifo_fail; + } + result = inv_set_master_delay(st); + if (result) + goto reset_fifo_fail; + st->last_ts = get_time_ns(); + st->prev_ts = st->last_ts; + st->last_run_time = st->last_ts; + if (st->sensor[SENSOR_COMPASS].on) + st->slave_compass->prev_ts = st->last_ts; + if (st->sensor[SENSOR_PRESSURE].on) + st->slave_pressure->prev_ts = st->last_ts; + + st->dmp_interval = DMP_INTERVAL_INIT; + st->ts_counter = 0; + st->diff_accumulater = 0; + st->dmp_interval_accum = 0; + st->step_detector_base_ts = st->last_ts; + st->chip_config.normal_compass_measure = 0; + st->chip_config.normal_pressure_measure = 0; + st->left_over_size = 0; + st->batch.post_isr_run = false; + for (i = 0; i < SENSOR_NUM_MAX; i++) + st->sensor[i].ts = st->last_ts; + + result = inv_lpa_mode(st, st->chip_config.lpa_mode); + if (result) + goto reset_fifo_fail; + + return 0; + +reset_fifo_fail: + if (st->chip_config.dmp_on) + val = BIT_DMP_INT_EN; + else + val = BIT_DATA_RDY_EN; + inv_i2c_single_write(st, reg->int_enable, val); + pr_err("reset fifo failed\n"); + + return result; +} + +/** + * inv_clear_kfifo() - clear time stamp fifo + * @st: Device driver instance. + */ +static void inv_clear_kfifo(struct inv_mpu_state *st) +{ + unsigned long flags; + + spin_lock_irqsave(&st->time_stamp_lock, flags); + kfifo_reset(&st->timestamps); + spin_unlock_irqrestore(&st->time_stamp_lock, flags); +} + +/* + * inv_reset_fifo() - Reset FIFO related registers. + */ +int inv_reset_fifo(struct iio_dev *indio_dev) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + + inv_clear_kfifo(st); + if (INV_MPU3050 == st->chip_type) + return reset_fifo_mpu3050(indio_dev); + else + return reset_fifo_itg(indio_dev); +} + +static int inv_send_gyro_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_GYRO, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_accel_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_ACCL, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_three_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x13}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_3QUAT, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_six_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x13}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_6QUAT, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_ped_q_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_PQUAT, ARRAY_SIZE(rn), r); + + return result; +} + +static int inv_add_step_indicator(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xf3, 0xf3}; + u8 rf[] = {0xf4, 0x03}; + int result; + u8 *r; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_PEDSTEP_DET, ARRAY_SIZE(rn), r); + + return result; +} + +static int inv_send_compass_dmp_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_CPASS, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_pressure_dmp_data(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x12}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_PRESS, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_send_step_detector(struct inv_mpu_state *st, bool on) +{ + u8 rn[] = {0xa3, 0xa3}; + u8 rf[] = {0xf4, 0x0e}; + u8 *r; + int result; + + if (on) + r = rn; + else + r = rf; + result = mem_w_key(KEY_CFG_OUT_STEPDET, ARRAY_SIZE(rf), r); + + return result; +} + +static int inv_set_rate(struct inv_mpu_state *st, int k, int k_ct, int rate) +{ + int v, result; + + v = MPU_DEFAULT_DMP_FREQ / rate - 1; + result = inv_write_2bytes(st, k, v); + if (result) + return result; + result = inv_write_2bytes(st, k_ct, 0); + + return result; +} + +static int inv_set_gyro_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_GYRO_ODR, KEY_ODR_CNTR_GYRO, + st->sensor[SENSOR_GYRO].rate); + + return result; +} + +static int inv_set_accel_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_ACCL_ODR, KEY_ODR_CNTR_ACCL, + st->sensor[SENSOR_ACCEL].rate); + + return result; +} + +static int inv_set_compass_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_CPASS_ODR, KEY_ODR_CNTR_CPASS, + st->sensor[SENSOR_COMPASS].rate); + + return result; +} + +static int inv_set_pressure_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_PRESS_ODR, KEY_ODR_CNTR_PRESS, + st->sensor[SENSOR_PRESSURE].rate); + + return result; +} + +static int inv_set_step_detector(struct inv_mpu_state *st) +{ + return 0; +} + + +static int inv_set_lpq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_3QUAT_ODR, KEY_ODR_CNTR_3QUAT, + st->sensor[SENSOR_LPQ].rate); + + return result; +} + +static int inv_set_sixq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_6QUAT_ODR, KEY_ODR_CNTR_6QUAT, + st->sensor[SENSOR_SIXQ].rate); + + return result; +} + +static int inv_set_pedq_rate(struct inv_mpu_state *st) +{ + int result; + + result = inv_set_rate(st, KEY_CFG_PQUAT6_ODR, KEY_ODR_CNTR_PQUAT, + st->sensor[SENSOR_PEDQ].rate); + + return result; +} + + +static int inv_set_dmp_sysfs(struct inv_mpu_state *st) +{ + int result, i, s; + u8 d[] = {0, 0, 0, 0}; + + result = inv_set_interrupt_on_gesture_event(st, + st->chip_config.dmp_event_int_on); + if (st->chip_config.dmp_event_int_on) { + for (i = 0; i < SENSOR_NUM_MAX; i++) { + result = st->sensor[i].send_data(st, false); + if (result) + return result; + } + } else { + s = 0; + for (i = 0; i < SENSOR_NUM_MAX; i++) { + result = st->sensor[i].send_data(st, st->sensor[i].on); + if (result) + return result; + if (st->sensor[i].on) { + if (0 == st->sensor[i].rate) + return -EINVAL; + s += st->sensor[i].rate * + st->sensor[i].sample_size; + + result = st->sensor[i].set_rate(st); + if (result) + return result; + st->sensor[i].counter = MPU_DEFAULT_DMP_FREQ / + st->sensor[i].rate; + } + } + st->bytes_per_sec = s; + if (st->sensor[SENSOR_STEP].on) + result = inv_add_step_indicator(st, true); + else + result = inv_add_step_indicator(st, + st->chip_config.step_indicator_on); + if (result) + return result; + } + result = inv_batchmode_setup(st); + if (result) + return result; + + st->dmp_counter = 0; + result = mem_w_key(KEY_DMP_RUN_CNTR, ARRAY_SIZE(d), d); + if (result) + return result; + /* set the compass flag invalid at the beginning */ + result = inv_write_2bytes(st, KEY_CPASS_VALID, 0); + + return result; +} + +static void inv_get_data_count(struct inv_mpu_state *st) +{ + struct inv_chip_config_s *c; + int b, i; + + c = &st->chip_config; + b = 0; + if (st->chip_config.dmp_on) { + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (st->sensor[i].on) + b += st->sensor[i].sample_size; + } + } else { + if (st->sensor[SENSOR_ACCEL].on) + b += BYTES_PER_SENSOR; + if (st->sensor[SENSOR_GYRO].on) + b += BYTES_PER_SENSOR; + } + c->bytes_per_datum = b; + + return; +} +/* + * set_inv_enable() - main enable/disable function. + */ +int set_inv_enable(struct iio_dev *indio_dev, bool enable) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + struct inv_reg_map_s *reg; + u8 data[2]; + int result; + + reg = &st->reg; + if (enable) { + st->batch.on = false; + st->batch.step_only = false; + + inv_get_data_count(st); + if (st->chip_config.new_fifo_rate != + st->chip_config.fifo_rate) { + result = set_fifo_rate_reg(st); + if (result) + return result; + } + if (st->chip_config.dmp_on) { + result = inv_set_dmp_sysfs(st); + if (result) + return result; + } + + if (st->chip_config.gyro_enable) { + result = st->switch_gyro_engine(st, true); + if (result) + return result; + } + if (st->chip_config.accel_enable) { + result = st->switch_accel_engine(st, true); + if (result) + return result; + } + if (st->sensor[SENSOR_COMPASS].on) { + result = st->slave_compass->resume(st); + if (result) + return result; + } + if (st->sensor[SENSOR_PRESSURE].on) { + result = st->slave_pressure->resume(st); + if (result) + return result; + } + result = inv_reset_fifo(indio_dev); + if (result) + return result; + if (st->batch.step_only) + schedule_delayed_work(&st->work, + msecs_to_jiffies(st->batch.timeout)); + + } else { + if (st->batch.step_only) + cancel_delayed_work_sync(&st->work); + if ((INV_MPU3050 != st->chip_type) + && st->chip_config.lpa_mode) { + /* if the chip is in low power mode, + register write/read could fail */ + result = inv_lpa_mode(st, 0); + if (result) + return result; + } + result = inv_i2c_single_write(st, reg->fifo_en, 0); + if (result) + return result; + if (st->chip_config.dmp_on) { + result = inv_read_time_and_ticks(st, false); + if (result) + return result; + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + return result; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + result = inv_process_batchmode(st, true); + if (result) + return result; + } + /* disable fifo reading */ + if (INV_MPU3050 != st->chip_type) { + result = inv_i2c_single_write(st, reg->int_enable, 0); + if (result) + return result; + result = inv_i2c_single_write(st, reg->user_ctrl, 0); + } else { + result = inv_i2c_single_write(st, reg->int_enable, + st->plat_data.int_config); + } + if (result) + return result; + /* turn off the gyro/accel engine during disable phase */ + result = st->switch_gyro_engine(st, false); + if (result) + return result; + result = st->switch_accel_engine(st, false); + if (result) + return result; + if (st->sensor[SENSOR_COMPASS].on) { + result = st->slave_compass->suspend(st); + if (result) + return result; + } + if (st->sensor[SENSOR_PRESSURE].on) { + result = st->slave_pressure->suspend(st); + if (result) + return result; + } + } + st->chip_config.enable = enable; + + return 0; +} + +/* + * inv_irq_handler() - Cache a timestamp at each data ready interrupt. + */ +static irqreturn_t inv_irq_handler(int irq, void *dev_id) +{ + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + u64 ts; + + if (!st->chip_config.dmp_on) { + ts = get_time_ns(); + kfifo_in_spinlocked(&st->timestamps, &ts, 1, + &st->time_stamp_lock); + } + + return IRQ_WAKE_THREAD; +} + +static void inv_report_data_3050(struct iio_dev *indio_dev, s64 t, + int has_footer, u8 *data) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + int ind, i; + short s[THREE_AXIS]; + + ind = 0; + if (has_footer) + ind += 2; + + if (st->sensor[SENSOR_GYRO].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + + inv_push_8bytes_buffer(st, GYRO_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + if (st->sensor[SENSOR_ACCEL].on) { + st->slave_accel->combine_data(&data[ind], s); + inv_push_8bytes_buffer(st, ACCEL_HDR, t, s); + } +} + +/* + * inv_read_fifo_mpu3050() - Transfer data from FIFO to ring buffer for + * mpu3050. + */ +irqreturn_t inv_read_fifo_mpu3050(int irq, void *dev_id) +{ + + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int bytes_per_datum; + u8 data[64]; + int result; + short fifo_count, byte_read; + s64 timestamp; + struct inv_reg_map_s *reg; + + reg = &st->reg; + mutex_lock(&indio_dev->mlock); + if (st->chip_config.dmp_on) + bytes_per_datum = HEADERED_NORMAL_BYTES; + else + bytes_per_datum = (st->sensor[SENSOR_ACCEL].on + + st->sensor[SENSOR_GYRO].on) * BYTES_PER_SENSOR; + if (st->chip_config.has_footer) + byte_read = bytes_per_datum + MPU3050_FOOTER_SIZE; + else + byte_read = bytes_per_datum; + + fifo_count = 0; + if (byte_read != 0) { + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + goto end_session; + fifo_count = be16_to_cpup((__be16 *)(&data[0])); + if (fifo_count < byte_read) + goto end_session; + if (fifo_count & 1) + goto flush_fifo; + if (fifo_count > FIFO_THRESHOLD) + goto flush_fifo; + /* Timestamp mismatch. */ + if (kfifo_len(&st->timestamps) < + fifo_count / byte_read) + goto flush_fifo; + if (kfifo_len(&st->timestamps) > + fifo_count / byte_read + TIME_STAMP_TOR) { + if (st->chip_config.dmp_on) { + result = kfifo_out(&st->timestamps, + ×tamp, 1); + if (result != 1) + goto flush_fifo; + } else { + goto flush_fifo; + } + } + } + while ((bytes_per_datum != 0) && (fifo_count >= byte_read)) { + result = inv_i2c_read(st, reg->fifo_r_w, byte_read, data); + if (result) + goto flush_fifo; + + result = kfifo_out(&st->timestamps, ×tamp, 1); + if (result != 1) + goto flush_fifo; + inv_report_data_3050(indio_dev, timestamp, + st->chip_config.has_footer, data); + fifo_count -= byte_read; + if (st->chip_config.has_footer == 0) { + st->chip_config.has_footer = 1; + byte_read = bytes_per_datum + MPU3050_FOOTER_SIZE; + } + } + +end_session: + mutex_unlock(&indio_dev->mlock); + + return IRQ_HANDLED; + +flush_fifo: + /* Flush HW and SW FIFOs. */ + inv_reset_fifo(indio_dev); + inv_clear_kfifo(st); + mutex_unlock(&indio_dev->mlock); + + return IRQ_HANDLED; +} + +static int inv_report_gyro_accel(struct iio_dev *indio_dev, + u8 *data, s64 t) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + short s[THREE_AXIS]; + int ind; + int i; + + ind = 0; + if (st->sensor[SENSOR_ACCEL].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + inv_push_8bytes_buffer(st, ACCEL_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + + if (st->sensor[SENSOR_GYRO].on) { + for (i = 0; i < 3; i++) + s[i] = be16_to_cpup((__be16 *)(&data[ind + i * 2])); + inv_push_8bytes_buffer(st, GYRO_HDR, t, s); + ind += BYTES_PER_SENSOR; + } + + return 0; +} + +static void inv_process_motion(struct inv_mpu_state *st) +{ + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int result; + u8 data[1]; + + /* motion interrupt */ + result = inv_i2c_read(st, REG_INT_STATUS, 1, data); + if (result) + return; + + if (data[0] & BIT_MOT_INT) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_accel_motion"); +} + +static int inv_get_timestamp(struct inv_mpu_state *st, int count) +{ + u32 *dur; + u32 thresh; + s32 diff, result, counter; + u64 ts; + + /* goal of algorithm is to estimate the true frequency of the chip */ + if (st->chip_config.dmp_on && st->chip_config.dmp_event_int_on) + return 0; + dur = &st->irq_dur_ns; + counter = 1; + thresh = min((u32)((*dur) >> 2), (u32)(10 * NSEC_PER_MSEC)); + while (kfifo_len(&st->timestamps) >= count) { + result = kfifo_out(&st->timestamps, &ts, 1); + if (result != 1) + return -EINVAL; + /* first time since reset fifo, just take it */ + if (!st->ts_counter) { + st->last_ts = ts; + st->prev_ts = ts; + st->ts_counter++; + return 0; + } + diff = (s32)(ts - st->prev_ts); + st->prev_ts = ts; + if (abs(diff - (*dur)) < thresh) { + st->diff_accumulater >>= 1; + if (*dur > diff) + st->diff_accumulater -= (((*dur) - diff) >> 7); + else + st->diff_accumulater += ((diff - (*dur)) >> 7); + *dur += st->diff_accumulater; + } + } + ts = *dur; + ts *= counter; + st->last_ts += ts; + + return 0; +} + +static int inv_process_dmp_interrupt(struct inv_mpu_state *st) +{ + int r; + u8 d[1]; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + +#define DMP_INT_SMD 0x04 +#define DMP_INT_PED 0x08 +#define DMP_INT_TAP 0x10 + + if ((!st->chip_config.smd_enable) && + (!st->ped.int_on) && + (!st->tap.on)) + return 0; + + r = inv_i2c_read(st, REG_DMP_INT_STATUS, 1, d); + if (r) + return r; + if (d[0] & DMP_INT_SMD) { + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_smd"); + st->chip_config.smd_enable = false; + st->chip_config.smd_triggered = true; + } + if (d[0] & DMP_INT_PED) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_pedometer"); + if (d[0] & DMP_INT_TAP) + sysfs_notify(&indio_dev->dev.kobj, NULL, "event_tap"); + + return 0; +} + +static int inv_get_shift2(int count) +{ + int i; + + if (1 == count) + return 13; + if (count > 2000) + return 2; + i = 13; + while (count > 0) { + count >>= 1; + i--; + } + + return i; +} + +static void inv_adjust_sensor_ts(struct inv_mpu_state *st, int sensor_ind) +{ + s64 diff; + int i, rate_adj, s3, delta, total_count; + + if (!st->chip_config.adjust_time) + return; +#define MAX_DIFF 0x7fffffff + total_count = st->dmp_ticks; + if (0 == total_count) + total_count = 1; + + diff = (st->last_ts - st->prev_ts) - (u64)(st->dmp_interval) * + total_count; + if (diff > MAX_DIFF) + diff = MAX_DIFF; + if (diff < -MAX_DIFF) + diff = -MAX_DIFF; + s3 = 4; + rate_adj = (int)diff; + rate_adj /= total_count; + delta = min(abs(rate_adj) >> inv_get_shift2(total_count), + DMP_INTERVAL_MIN_ADJ); + if (rate_adj < 0) + delta = -delta; + st->dmp_interval_accum >>= 1; + st->dmp_interval_accum += delta; + st->dmp_interval += st->dmp_interval_accum; + for (i = 0; i < SENSOR_NUM_MAX; i++) + if (st->sensor[i].on) + st->sensor[i].dur = st->dmp_interval * + st->sensor[i].counter; + + st->prev_ts = st->last_ts; +} + +static void inv_reset_ts(struct inv_mpu_state *st, u64 curr_ts) +{ + u32 dur, i; + + dur = USEC_PER_SEC / st->bytes_per_sec; + dur *= 1024; + curr_ts -= ((u64)dur * NSEC_PER_USEC); + for (i = 0; i < SENSOR_NUM_MAX; i++) + st->sensor[i].ts = curr_ts; +} + +static void inv_push_step_indicator(struct inv_mpu_state *st, int sensor_ind, + int steps) +{ + int dur, i; + s16 sen[3]; + u64 base; +#define STEP_INDICATOR_HEADER 0x0001 + + dur = st->sensor[sensor_ind].dur / steps; + base = st->sensor[sensor_ind].ts; + + for (i = 1; i < steps; i++) + inv_push_8bytes_buffer(st, STEP_INDICATOR_HEADER, + base + i * dur, sen); +} + +static int inv_parse_header(u16 hdr) +{ + int sensor_ind; + + switch (hdr) { + case ACCEL_HDR: + sensor_ind = SENSOR_ACCEL; + break; + case GYRO_HDR: + sensor_ind = SENSOR_GYRO; + break; + case PEDQUAT_HDR: + sensor_ind = SENSOR_PEDQ; + break; + case LPQUAT_HDR: + sensor_ind = SENSOR_LPQ; + break; + case SIXQUAT_HDR: + sensor_ind = SENSOR_SIXQ; + break; + case COMPASS_HDR: + sensor_ind = SENSOR_COMPASS; + break; + case PRESSURE_HDR: + sensor_ind = SENSOR_PRESSURE; + break; + case STEP_DETECTOR_HDR: + sensor_ind = SENSOR_STEP; + break; + default: + sensor_ind = SENSOR_INVALID; + break; + } + + return sensor_ind; +} + +static int inv_get_sensor_count(struct inv_mpu_state *st, + u8 *d, int target_bytes) +{ + u8 *dptr; + u16 hdr; + int sensor_ind; + int sensor_count; + + sensor_count = 0; + dptr = d; + while (dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + hdr &= (~STEP_INDICATOR_MASK); + sensor_ind = inv_parse_header(hdr); + /* incomplete packet */ + if (target_bytes - (dptr - d) < + st->sensor[sensor_ind].sample_size) + break; + if ((sensor_ind != SENSOR_INVALID) && + st->sensor[sensor_ind].on) { + dptr += st->sensor[sensor_ind].sample_size; + sensor_count++; + } else { + dptr += HEADERED_NORMAL_BYTES; + } + } + + return sensor_count; +} +static int inv_process_batchmode(struct inv_mpu_state *st, bool insert) +{ + int i, target_bytes, tmp, res, sensor_count, counter; + int sensor_ind, q[3]; + u8 *dptr, *d; + u16 hdr, steps; + s16 sen[3]; + u64 t; + bool done_flag; + +#define END_MARKER 0x0010 + + if (1024 == st->fifo_count) { + inv_reset_ts(st, st->last_ts); + st->left_over_size = 0; + } + d = fifo_data; + if (st->left_over_size > 0) { + dptr = d + st->left_over_size; + memcpy(d, st->left_over, st->left_over_size); + } else { + dptr = d; + } + target_bytes = st->fifo_count; + while (target_bytes > 0) { + if (target_bytes < MAX_READ_SIZE) + tmp = target_bytes; + else + tmp = MAX_READ_SIZE; + res = inv_i2c_read(st, st->reg.fifo_r_w, tmp, dptr); + if (res < 0) + return res; + dptr += tmp; + target_bytes -= tmp; + } + dptr = d; + done_flag = false; + target_bytes = st->fifo_count + st->left_over_size; + if (insert) + sensor_count = inv_get_sensor_count(st, d, target_bytes); + else + sensor_count = 0; + counter = 0; + while ((dptr - d <= target_bytes - HEADERED_NORMAL_BYTES) && + (!done_flag)) { + hdr = (u16)be16_to_cpup((__be16 *)(dptr)); + steps = (hdr & STEP_INDICATOR_MASK); + hdr &= (~STEP_INDICATOR_MASK); + sensor_ind = inv_parse_header(hdr); + /* incomplete packet */ + if (target_bytes - (dptr - d) < + st->sensor[sensor_ind].sample_size) { + done_flag = true; + continue; + } + /* error packet */ + if ((sensor_ind == SENSOR_INVALID) || + (!st->sensor[sensor_ind].on)) { + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (insert) { + counter++; + if (counter == sensor_count) + hdr |= END_MARKER; + } + + if (sensor_ind == SENSOR_STEP) { + tmp = (int)be32_to_cpup((__be32 *)(dptr + 4)); + t = st->step_detector_base_ts + + (u64)tmp * 5 * NSEC_PER_MSEC; + inv_push_8bytes_buffer(st, hdr, t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (steps > 1) + inv_push_step_indicator(st, sensor_ind, steps); + st->sensor[sensor_ind].ts += (u64)st->sensor[sensor_ind].dur; + t = st->sensor[sensor_ind].ts; + if (sensor_ind == SENSOR_COMPASS) { + if (!st->chip_config.normal_compass_measure) { + st->chip_config.normal_compass_measure = 1; + dptr += HEADERED_NORMAL_BYTES; + continue; + } + for (i = 0; i < 6; i++) + st->fifo_data[i] = dptr[i + 2]; + st->slave_compass->read_data(st, sen); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (sensor_ind == SENSOR_PRESSURE) { + if (!st->chip_config.normal_pressure_measure) { + st->chip_config.normal_pressure_measure = 1; + dptr += HEADERED_NORMAL_BYTES; + continue; + } + for (i = 0; i < 6; i++) + st->fifo_data[i] = dptr[i + 2]; + st->slave_pressure->read_data(st, sen); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + dptr += HEADERED_NORMAL_BYTES; + continue; + } + if (st->sensor[sensor_ind].sample_size == HEADERED_Q_BYTES) { + for (i = 0; i < 3; i++) + q[i] = (int)be32_to_cpup((__be32 *)(dptr + 4 + + i * 4)); + inv_push_16bytes_buffer(st, hdr | (!!steps), t, q); + } else { + for (i = 0; i < 3; i++) + sen[i] = (short)be16_to_cpup((__be16 *)(dptr + + 2 + i * 2)); + inv_push_8bytes_buffer(st, hdr | (!!steps), t, sen); + } + dptr += st->sensor[sensor_ind].sample_size; + } + inv_adjust_sensor_ts(st, sensor_ind); + st->left_over_size = target_bytes - (dptr - d); + + if (st->left_over_size) + memcpy(st->left_over, dptr, st->left_over_size); + + return 0; +} + +int inv_read_time_and_ticks(struct inv_mpu_state *st, bool resume) +{ + int result; + u32 counter; + u8 data[4]; + +#define MIN_TICK_READING_TIME NSEC_PER_SEC + st->last_ts = get_time_ns(); + if ((st->last_ts - st->prev_ts < MIN_TICK_READING_TIME) && + (!resume)) { + st->chip_config.adjust_time = false; + return 0; + } + result = mpu_memory_read(st, st->i2c_addr, + inv_dmp_get_address(KEY_DMP_RUN_CNTR), 4, data); + if (result) + return result; + + counter = be32_to_cpup((__be32 *)(data)); + if (resume) { + st->dmp_counter = counter; + st->prev_ts = st->last_ts; + + return 0; + } + if (counter > st->dmp_counter) + st->dmp_ticks = counter - st->dmp_counter; + else + st->dmp_ticks = 0xffffffff - st->dmp_counter + counter + 1; + st->dmp_counter = counter; + st->chip_config.adjust_time = true; + + return 0; +} + +/* + * inv_read_fifo() - Transfer data from FIFO to ring buffer. + */ +irqreturn_t inv_read_fifo(int irq, void *dev_id) +{ + + struct inv_mpu_state *st = (struct inv_mpu_state *)dev_id; + struct iio_dev *indio_dev = iio_priv_to_dev(st); + int result, bpm; + u8 data[MAX_HW_FIFO_BYTES]; + u16 fifo_count; + struct inv_reg_map_s *reg; + u64 pts1; + +#define DMP_MIN_RUN_TIME (37 * NSEC_PER_MSEC) + mutex_lock(&st->suspend_resume_lock); + mutex_lock(&indio_dev->mlock); + if (st->chip_config.dmp_on) { + pts1 = get_time_ns(); + result = inv_process_dmp_interrupt(st); + if (result || st->chip_config.dmp_event_int_on) + goto end_session; + if (!st->chip_config.smd_triggered) { + if (pts1 - st->last_run_time < DMP_MIN_RUN_TIME) + goto end_session; + else + st->last_run_time = pts1; + } else { + st->chip_config.smd_triggered = false; + } + } + + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + goto end_session; + + reg = &st->reg; + if (!(st->sensor[SENSOR_ACCEL].on | + st->sensor[SENSOR_GYRO].on | + st->sensor[SENSOR_COMPASS].on | + st->sensor[SENSOR_PRESSURE].on | + st->chip_config.dmp_on | + st->mot_int.mot_on)) + goto end_session; + if (st->chip_config.lpa_mode) { + result = inv_i2c_read(st, reg->raw_accel, + BYTES_PER_SENSOR, data); + if (result) + goto end_session; + inv_report_gyro_accel(indio_dev, data, get_time_ns()); + if (st->mot_int.mot_on) + inv_process_motion(st); + + goto end_session; + } + + if (st->chip_config.dmp_on) { + result = inv_read_time_and_ticks(st, false); + if (result) + goto end_session; + } + bpm = st->chip_config.bytes_per_datum; + fifo_count = 0; + if (bpm) { + result = inv_i2c_read(st, reg->fifo_count_h, FIFO_COUNT_BYTE, + data); + if (result) + goto end_session; + fifo_count = be16_to_cpup((__be16 *)(data)); + /* fifo count can't be odd number */ + if (fifo_count & 1) + goto flush_fifo; + if (fifo_count == 0) + goto end_session; + st->fifo_count = fifo_count; + } + + if (st->batch.step_only) { + process_step_only_batch(st); + st->batch.post_isr_run = true; + } else if (st->chip_config.dmp_on) { + result = inv_process_batchmode(st, false); + } else { + if (fifo_count > FIFO_THRESHOLD) + goto flush_fifo; + if (bpm) { + while (fifo_count >= bpm) { + result = inv_i2c_read(st, reg->fifo_r_w, bpm, + data); + if (result) + goto flush_fifo; + result = inv_get_timestamp(st, + fifo_count / bpm); + if (result) + goto flush_fifo; + inv_report_gyro_accel(indio_dev, data, + st->last_ts); + fifo_count -= bpm; + } + } else { + result = inv_get_timestamp(st, 1); + if (result) + goto flush_fifo; + } + inv_send_compass_data(st); + inv_send_pressure_data(st); + } +end_session: + mutex_unlock(&indio_dev->mlock); + mutex_unlock(&st->suspend_resume_lock); + + return IRQ_HANDLED; +flush_fifo: + /* Flush HW and SW FIFOs. */ + inv_reset_fifo(indio_dev); + inv_clear_kfifo(st); + mutex_unlock(&indio_dev->mlock); + mutex_unlock(&st->suspend_resume_lock); + + return IRQ_HANDLED; +} +#endif +void ssp_iio_unconfigure_ring(struct iio_dev *indio_dev) +{ + iio_kfifo_free(indio_dev->buffer); +}; + +static int ssp_predisable(struct iio_dev *indio_dev) +{ + /* sch0317 need to implement + struct inv_mpu_state *st = iio_priv(indio_dev); + int result; + + if (st->chip_config.enable) { + result = set_inv_enable(indio_dev, false); + if (result) + return result; + result = st->set_power_state(st, false); + if (result) + return result; + } +*/ + return 0; +} + +#if 0 +static int inv_check_conflict_sysfs(struct iio_dev *indio_dev) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + + if (st->chip_config.lpa_mode) { + /* dmp cannot run with low power mode on */ + st->chip_config.dmp_on = 0; + st->chip_config.gyro_enable = false; + st->sensor[SENSOR_GYRO].on = false; + st->sensor[SENSOR_COMPASS].on = false; + } + if (st->sensor[SENSOR_GYRO].on && + (!st->chip_config.gyro_enable)) { + st->chip_config.gyro_enable = true; + } + if (st->sensor[SENSOR_ACCEL].on && + (!st->chip_config.accel_enable)) { + st->chip_config.accel_enable = true; + } + + return 0; +} +#endif + +static int ssp_preenable(struct iio_dev *indio_dev) +{ + int result; + + //result = inv_check_conflict_sysfs(indio_dev); + //if (result) + // return result; + result = iio_sw_buffer_preenable(indio_dev); + + return result; +} + +#if 0 +void inv_init_sensor_struct(struct inv_mpu_state *st) +{ + int i; + + for (i = 0; i < SENSOR_NUM_MAX; i++) { + if (i < SENSOR_SIXQ) + st->sensor[i].sample_size = + HEADERED_NORMAL_BYTES; + else + st->sensor[i].sample_size = HEADERED_Q_BYTES; + if (i == SENSOR_STEP) { + st->sensor[i].rate = 1; + st->sensor[i].dur = NSEC_PER_SEC; + } else { + st->sensor[i].rate = INIT_DMP_OUTPUT_RATE; + st->sensor[i].dur = NSEC_PER_SEC / + INIT_DMP_OUTPUT_RATE; + } + } + + st->sensor[SENSOR_ACCEL].send_data = inv_send_accel_data; + st->sensor[SENSOR_GYRO].send_data = inv_send_gyro_data; + st->sensor[SENSOR_COMPASS].send_data = inv_send_compass_dmp_data; + st->sensor[SENSOR_PRESSURE].send_data = inv_send_pressure_dmp_data; + st->sensor[SENSOR_STEP].send_data = inv_send_step_detector; + st->sensor[SENSOR_PEDQ].send_data = inv_send_ped_q_data; + st->sensor[SENSOR_SIXQ].send_data = inv_send_six_q_data; + st->sensor[SENSOR_LPQ].send_data = inv_send_three_q_data; + + st->sensor[SENSOR_ACCEL].set_rate = inv_set_accel_rate; + st->sensor[SENSOR_GYRO].set_rate = inv_set_gyro_rate; + st->sensor[SENSOR_COMPASS].set_rate = inv_set_compass_rate; + st->sensor[SENSOR_PRESSURE].set_rate = inv_set_pressure_rate; + st->sensor[SENSOR_STEP].set_rate = inv_set_step_detector; + st->sensor[SENSOR_PEDQ].set_rate = inv_set_pedq_rate; + st->sensor[SENSOR_SIXQ].set_rate = inv_set_sixq_rate; + st->sensor[SENSOR_LPQ].set_rate = inv_set_lpq_rate; +} + +void batch_step_only_work(struct work_struct *work) +{ + struct inv_mpu_state *st = container_of((struct delayed_work *)work, + struct inv_mpu_state, work); + struct iio_dev *indio_dev = iio_priv_to_dev(st); + u32 delay = msecs_to_jiffies(st->batch.timeout); + u8 data[FIFO_COUNT_BYTE]; + int result; + + mutex_lock(&indio_dev->mlock); + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + goto error_ret; + schedule_delayed_work(&st->work, delay); + + if (st->batch.post_isr_run) { + st->batch.post_isr_run = false; + } else { + result = inv_i2c_read(st, st->reg.fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + goto error_ret; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + process_step_only_batch(st); + } + +error_ret: + mutex_unlock(&indio_dev->mlock); + +} + +int inv_flush_batch_data(struct iio_dev *indio_dev, bool *has_data) +{ + struct inv_mpu_state *st = iio_priv(indio_dev); + struct inv_reg_map_s *reg; + u8 data[2]; + int result; + +#define EMPTY_MARKER 0x0020 + + reg = &st->reg; + if (!(iio_buffer_enabled(indio_dev)) || (!st->chip_config.enable)) + return -EINVAL; + + if (st->batch.on) { + result = inv_read_time_and_ticks(st, false); + if (result) + return result; + result = inv_i2c_read(st, reg->fifo_count_h, + FIFO_COUNT_BYTE, data); + if (result) + return result; + st->fifo_count = be16_to_cpup((__be16 *)(data)); + if (st->fifo_count) { + result = inv_process_batchmode(st, true); + if (result) + return result; + *has_data = !!st->fifo_count; + + return 0; + } + } + + inv_push_marker_to_buffer(st, EMPTY_MARKER); + + return 0; +} +#endif + +static const struct iio_buffer_setup_ops ssp_iio_ring_setup_ops = { + .preenable = &ssp_preenable, + .predisable = &ssp_predisable, +}; + +int ssp_iio_configure_ring(struct iio_dev *indio_dev) +{ + struct iio_buffer *ring; + + ring = iio_kfifo_allocate(indio_dev); + if (!ring) + return -ENOMEM; + + ring->bytes_per_datum = 8; + indio_dev->buffer = ring; + /* setup ring buffer */ + ring->scan_timestamp = true; + indio_dev->setup_ops = &ssp_iio_ring_setup_ops; + /*scan count double count timestamp. should subtract 1. but + number of channels still includes timestamp*/ + + indio_dev->modes |= INDIO_BUFFER_HARDWARE; // INDIO_BUFFER_TRIGGERED + + return 0; +} + + diff --git a/drivers/sensorhub/stm_patek/ssp_iio_trigger.c b/drivers/sensorhub/stm_patek/ssp_iio_trigger.c new file mode 100644 index 000000000000..c5ebd298c3fd --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_iio_trigger.c @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2011, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/sysfs.h" +#include "../../staging/iio/trigger.h" +/* + * ssp_iio_data_rdy_trigger_set_state() set data ready interrupt state + */ +static const struct iio_trigger_ops ssp_iio_trigger_ops = { + .owner = THIS_MODULE, +}; + +int ssp_iio_probe_trigger(struct ssp_data *data, struct iio_dev *indio_dev, struct iio_trigger *trig) +{ + int ret; + + trig = iio_allocate_trigger("%s-dev%d", + indio_dev->name, + indio_dev->id); + if (trig == NULL) + return -ENOMEM; + trig->dev.parent = &data->client->dev; + trig->private_data = indio_dev; + trig->ops = &ssp_iio_trigger_ops; + ret = iio_trigger_register(trig); + + if (ret) { + iio_free_trigger(trig); + return -EPERM; + } + indio_dev->trig = trig; + + return 0; +} + +void ssp_iio_remove_trigger(struct iio_trigger *trig) +{ + iio_trigger_unregister(trig); + iio_free_trigger(trig); +} + diff --git a/drivers/sensorhub/stm_patek/ssp_input.c b/drivers/sensorhub/stm_patek/ssp_input.c new file mode 100644 index 000000000000..277c0b51488e --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_input.c @@ -0,0 +1,1283 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include "../../staging/iio/iio.h" +#include "../../staging/iio/events.h" +#include "../../staging/iio/sysfs.h" +#include "../../staging/iio/buffer.h" +#include "../../staging/iio/types.h" + +/*************************************************************************/ +/* SSP Kernel -> HAL input evnet function */ +/*************************************************************************/ + +#define IIO_BUFFER_12_BYTES 20 /* 12 + timestamp 8*/ +#define IIO_BUFFER_6_BYTES 14 +#define IIO_BUFFER_1_BYTES 9 +#define IIO_BUFFER_17_BYTES 25 + +/* data header defines */ + +static int ssp_push_17bytes_buffer(struct iio_dev *indio_dev, + u64 t, int *q) +{ + u8 buf[IIO_BUFFER_17_BYTES]; + + int i; + + for (i = 0; i < 4; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + buf[16] = (u8)q[5]; + memcpy(buf + 17, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_12bytes_buffer(struct iio_dev *indio_dev, u64 t, + int *q) +{ + u8 buf[IIO_BUFFER_12_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + 4 * i, &q[i], sizeof(q[i])); + memcpy(buf + 12, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_6bytes_buffer(struct iio_dev *indio_dev, + u64 t, s16 *d) +{ + u8 buf[IIO_BUFFER_6_BYTES]; + int i; + + for (i = 0; i < 3; i++) + memcpy(buf + i * 2, &d[i], sizeof(d[i])); + + memcpy(buf + 6, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +static int ssp_push_1bytes_buffer(struct iio_dev *indio_dev, + u64 t, u8 *d) +{ + u8 buf[IIO_BUFFER_1_BYTES]; + + memcpy(buf, d, sizeof(u8)); + memcpy(buf + 1, &t, sizeof(t)); + mutex_lock(&indio_dev->mlock); + iio_push_to_buffer(indio_dev->buffer, buf, 0); + mutex_unlock(&indio_dev->mlock); + + return 0; +} + +void convert_acc_data(s16 *iValue) +{ + if (*iValue > MAX_ACCEL_2G) + *iValue = ((MAX_ACCEL_4G - *iValue)) * (-1); +} + +void report_acc_data(struct ssp_data *data, struct sensor_value *accdata) +{ + s16 accel_buf[3]; + data->buf[ACCELEROMETER_SENSOR].x = accdata->x; + data->buf[ACCELEROMETER_SENSOR].y = accdata->y; + data->buf[ACCELEROMETER_SENSOR].z = accdata->z; + + accel_buf[0] = data->buf[ACCELEROMETER_SENSOR].x; + accel_buf[1] = data->buf[ACCELEROMETER_SENSOR].y; + accel_buf[2] = data->buf[ACCELEROMETER_SENSOR].z; + ssp_push_6bytes_buffer(data->accel_indio_dev, accdata->timestamp, + accel_buf); +} + +void report_meta_data(struct ssp_data *data, struct sensor_value *s) +{ + input_report_rel(data->meta_input_dev, REL_DIAL, s->meta_data.what); + input_report_rel(data->meta_input_dev, REL_HWHEEL, s->meta_data.sensor + 1); + input_sync(data->meta_input_dev); +} + +void report_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + int lTemp[3] = {0,}; + data->buf[GYROSCOPE_SENSOR].x = gyrodata->x; + data->buf[GYROSCOPE_SENSOR].y = gyrodata->y; + data->buf[GYROSCOPE_SENSOR].z = gyrodata->z; + + if (data->uGyroDps == GYROSCOPE_DPS500) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } else if (data->uGyroDps == GYROSCOPE_DPS250) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x >> 1; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y >> 1; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z >> 1; + } else if (data->uGyroDps == GYROSCOPE_DPS2000) { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x << 2; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y << 2; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z << 2; + } else { + lTemp[0] = (int)data->buf[GYROSCOPE_SENSOR].x; + lTemp[1] = (int)data->buf[GYROSCOPE_SENSOR].y; + lTemp[2] = (int)data->buf[GYROSCOPE_SENSOR].z; + } + + ssp_push_12bytes_buffer(data->gyro_indio_dev, gyrodata->timestamp, + lTemp); +} + +void report_geomagnetic_raw_data(struct ssp_data *data, + struct sensor_value *magrawdata) +{ + data->buf[GEOMAGNETIC_RAW].x = magrawdata->x; + data->buf[GEOMAGNETIC_RAW].y = magrawdata->y; + data->buf[GEOMAGNETIC_RAW].z = magrawdata->z; +} +void report_mag_data(struct ssp_data *data, struct sensor_value *magdata) +{ +#ifdef SAVE_MAG_LOG + s16 arrTemp[9] = {0, }; + + arrTemp[0] = magdata->log_data[0]; // ST1 Reg + arrTemp[1] = (short)((magdata->log_data[3] << 8) +\ + magdata->log_data[2]); + arrTemp[2] = (short)((magdata->log_data[5] << 8) +\ + magdata->log_data[4]); + arrTemp[3] = (short)((magdata->log_data[7] << 8) +\ + magdata->log_data[6]); + arrTemp[4] = magdata->log_data[1]; // ST2 Reg + arrTemp[5] = (short)((magdata->log_data[9] << 8) +\ + magdata->log_data[8]); + arrTemp[6] = (short)((magdata->log_data[11] << 8) +\ + magdata->log_data[10]); + arrTemp[7] = (short)((magdata->log_data[13] << 8) +\ + magdata->log_data[12]); + + /* We report data & register to HAL only when ST1 register sets to 1 */ + if (arrTemp[0] == 1) { + input_report_rel(data->mag_input_dev, REL_X, arrTemp[0] + 1); + input_report_rel(data->mag_input_dev, REL_Y, arrTemp[1]); + input_report_rel(data->mag_input_dev, REL_Z, arrTemp[2]); + input_report_rel(data->mag_input_dev, REL_RX, arrTemp[3]); + input_report_rel(data->mag_input_dev, REL_RY, arrTemp[4] + 1); + input_report_rel(data->mag_input_dev, REL_RZ, arrTemp[5]); + input_report_rel(data->mag_input_dev, REL_HWHEEL, arrTemp[6]); + input_report_rel(data->mag_input_dev, REL_DIAL, arrTemp[7]); + mdelay(5); + input_sync(data->mag_input_dev); + } else { + pr_info("[SSP] %s, not initialised, val = %d", __func__, arrTemp[0]); + } +#else + data->buf[GEOMAGNETIC_SENSOR].cal_x = magdata->cal_x; + data->buf[GEOMAGNETIC_SENSOR].cal_y = magdata->cal_y; + data->buf[GEOMAGNETIC_SENSOR].cal_z = magdata->cal_z; + data->buf[GEOMAGNETIC_SENSOR].accuracy = magdata->accuracy; + + input_report_rel(data->mag_input_dev, REL_RX, + data->buf[GEOMAGNETIC_SENSOR].cal_x); + input_report_rel(data->mag_input_dev, REL_RY, + data->buf[GEOMAGNETIC_SENSOR].cal_y); + input_report_rel(data->mag_input_dev, REL_RZ, + data->buf[GEOMAGNETIC_SENSOR].cal_z); + input_report_rel(data->mag_input_dev, REL_HWHEEL, + data->buf[GEOMAGNETIC_SENSOR].accuracy + 1); + + input_sync(data->mag_input_dev); +#endif +} + +void report_mag_uncaldata(struct ssp_data *data, struct sensor_value *magdata) +{ + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x = magdata->uncal_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y = magdata->uncal_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z = magdata->uncal_z; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x= magdata->offset_x; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y= magdata->offset_y; + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z= magdata->offset_z; + + input_report_rel(data->uncal_mag_input_dev, REL_RX, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_x); + input_report_rel(data->uncal_mag_input_dev, REL_RY, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_y); + input_report_rel(data->uncal_mag_input_dev, REL_RZ, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].uncal_z); + input_report_rel(data->uncal_mag_input_dev, REL_HWHEEL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_x); + input_report_rel(data->uncal_mag_input_dev, REL_DIAL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_y); + input_report_rel(data->uncal_mag_input_dev, REL_WHEEL, + data->buf[GEOMAGNETIC_UNCALIB_SENSOR].offset_z); + input_sync(data->uncal_mag_input_dev); +} + +void report_uncalib_gyro_data(struct ssp_data *data, struct sensor_value *gyrodata) +{ + data->buf[GYRO_UNCALIB_SENSOR].uncal_x = gyrodata->uncal_x; + data->buf[GYRO_UNCALIB_SENSOR].uncal_y = gyrodata->uncal_y; + data->buf[GYRO_UNCALIB_SENSOR].uncal_z = gyrodata->uncal_z; + data->buf[GYRO_UNCALIB_SENSOR].offset_x = gyrodata->offset_x; + data->buf[GYRO_UNCALIB_SENSOR].offset_y = gyrodata->offset_y; + data->buf[GYRO_UNCALIB_SENSOR].offset_z = gyrodata->offset_z; + + input_report_rel(data->uncalib_gyro_input_dev, REL_X, + data->buf[GYRO_UNCALIB_SENSOR].uncal_x); + input_report_rel(data->uncalib_gyro_input_dev, REL_Y, + data->buf[GYRO_UNCALIB_SENSOR].uncal_y); + input_report_rel(data->uncalib_gyro_input_dev, REL_Z, + data->buf[GYRO_UNCALIB_SENSOR].uncal_z); + input_report_rel(data->uncalib_gyro_input_dev, REL_RX, + data->buf[GYRO_UNCALIB_SENSOR].offset_x); + input_report_rel(data->uncalib_gyro_input_dev, REL_RY, + data->buf[GYRO_UNCALIB_SENSOR].offset_y); + input_report_rel(data->uncalib_gyro_input_dev, REL_RZ, + data->buf[GYRO_UNCALIB_SENSOR].offset_z); + input_sync(data->uncalib_gyro_input_dev); +} + +void report_sig_motion_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[SIG_MOTION_SENSOR].sig_motion = sig_motion_data->sig_motion; + + input_report_rel(data->sig_motion_input_dev, REL_MISC, + data->buf[SIG_MOTION_SENSOR].sig_motion); + input_sync(data->sig_motion_input_dev); +} + +void report_rot_data(struct ssp_data *data, struct sensor_value *rotdata) +{ + int rot_buf[5]; + data->buf[ROTATION_VECTOR].quat_a = rotdata->quat_a; + data->buf[ROTATION_VECTOR].quat_b = rotdata->quat_b; + data->buf[ROTATION_VECTOR].quat_c = rotdata->quat_c; + data->buf[ROTATION_VECTOR].quat_d = rotdata->quat_d; + data->buf[ROTATION_VECTOR].acc_rot = rotdata->acc_rot; + rot_buf[0] = rotdata->quat_a; + rot_buf[1] = rotdata->quat_b; + rot_buf[2] = rotdata->quat_c; + rot_buf[3] = rotdata->quat_d; + rot_buf[4] = rotdata->acc_rot; + ssp_push_17bytes_buffer(data->rot_indio_dev, rotdata->timestamp, rot_buf); +} + +void report_game_rot_data(struct ssp_data *data, struct sensor_value *grotdata) +{ + int rot_buf[5]; + data->buf[GAME_ROTATION_VECTOR].quat_a = grotdata->quat_a; + data->buf[GAME_ROTATION_VECTOR].quat_b = grotdata->quat_b; + data->buf[GAME_ROTATION_VECTOR].quat_c = grotdata->quat_c; + data->buf[GAME_ROTATION_VECTOR].quat_d = grotdata->quat_d; + data->buf[GAME_ROTATION_VECTOR].acc_rot = grotdata->acc_rot; + + rot_buf[0] = grotdata->quat_a; + rot_buf[1] = grotdata->quat_b; + rot_buf[2] = grotdata->quat_c; + rot_buf[3] = grotdata->quat_d; + rot_buf[4] = grotdata->acc_rot; + ssp_push_17bytes_buffer(data->game_rot_indio_dev, grotdata->timestamp, + rot_buf); +} + +void report_gesture_data(struct ssp_data *data, struct sensor_value *gesdata) +{ + int i = 0; +#if defined (CONFIG_SENSORS_SSP_MAX88921) + int ges_max = 19; +#else + int ges_max = 20; +#endif + for (i=0; ibuf[GESTURE_SENSOR].data[i] = gesdata->data[i]; + } + + input_report_abs(data->gesture_input_dev, + ABS_X, data->buf[GESTURE_SENSOR].data[0]); + input_report_abs(data->gesture_input_dev, + ABS_Y, data->buf[GESTURE_SENSOR].data[1]); + input_report_abs(data->gesture_input_dev, + ABS_Z, data->buf[GESTURE_SENSOR].data[2]); + input_report_abs(data->gesture_input_dev, + ABS_RX, data->buf[GESTURE_SENSOR].data[3]); + input_report_abs(data->gesture_input_dev, + ABS_RY, data->buf[GESTURE_SENSOR].data[4]); + input_report_abs(data->gesture_input_dev, + ABS_RZ, data->buf[GESTURE_SENSOR].data[5]); + input_report_abs(data->gesture_input_dev, + ABS_THROTTLE, data->buf[GESTURE_SENSOR].data[6]); + input_report_abs(data->gesture_input_dev, + ABS_RUDDER, data->buf[GESTURE_SENSOR].data[7]); + input_report_abs(data->gesture_input_dev, + ABS_WHEEL, data->buf[GESTURE_SENSOR].data[8]); + input_report_abs(data->gesture_input_dev, + ABS_GAS, data->buf[GESTURE_SENSOR].data[9]); + input_report_abs(data->gesture_input_dev, + ABS_BRAKE, data->buf[GESTURE_SENSOR].data[10]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0X, data->buf[GESTURE_SENSOR].data[11]); + input_report_abs(data->gesture_input_dev, + ABS_HAT0Y, data->buf[GESTURE_SENSOR].data[12]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1X, data->buf[GESTURE_SENSOR].data[13]); + input_report_abs(data->gesture_input_dev, + ABS_HAT1Y, data->buf[GESTURE_SENSOR].data[14]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2X, data->buf[GESTURE_SENSOR].data[15]); + input_report_abs(data->gesture_input_dev, + ABS_HAT2Y, data->buf[GESTURE_SENSOR].data[16]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3X, data->buf[GESTURE_SENSOR].data[17]); + input_report_abs(data->gesture_input_dev, + ABS_HAT3Y, data->buf[GESTURE_SENSOR].data[18]); +#if !defined (CONFIG_SENSORS_SSP_MAX88921) + input_report_abs(data->gesture_input_dev, + ABS_PRESSURE, data->buf[GESTURE_SENSOR].data[19]); +#endif + input_sync(data->gesture_input_dev); +} + +void report_pressure_data(struct ssp_data *data, struct sensor_value *predata) +{ + int temp[3] = {0, }; + data->buf[PRESSURE_SENSOR].pressure[0] = + predata->pressure[0] - data->iPressureCal; + data->buf[PRESSURE_SENSOR].pressure[1] = predata->pressure[1]; + + temp[0] = data->buf[PRESSURE_SENSOR].pressure[0]; + temp[1] = data->buf[PRESSURE_SENSOR].pressure[1]; + temp[2] = data->sealevelpressure; + + ssp_push_12bytes_buffer(data->pressure_indio_dev, predata->timestamp, + temp); +} + +void report_light_data(struct ssp_data *data, struct sensor_value *lightdata) +{ + data->buf[LIGHT_SENSOR].r = lightdata->r; + data->buf[LIGHT_SENSOR].g = lightdata->g; + data->buf[LIGHT_SENSOR].b = lightdata->b; + data->buf[LIGHT_SENSOR].w = lightdata->w; +#if defined (CONFIG_SENSORS_SSP_TMG399X) + data->buf[LIGHT_SENSOR].a_time = lightdata->a_time; + data->buf[LIGHT_SENSOR].a_gain = (0x03) & (lightdata->a_gain); +#elif defined (CONFIG_SENSORS_SSP_MAX88921) + data->buf[LIGHT_SENSOR].ir_cmp = lightdata->ir_cmp; + data->buf[LIGHT_SENSOR].amb_pga = lightdata->amb_pga; +#endif + + input_report_rel(data->light_input_dev, REL_HWHEEL, + data->buf[LIGHT_SENSOR].r + 1); + input_report_rel(data->light_input_dev, REL_DIAL, + data->buf[LIGHT_SENSOR].g + 1); + input_report_rel(data->light_input_dev, REL_WHEEL, + data->buf[LIGHT_SENSOR].b + 1); + input_report_rel(data->light_input_dev, REL_MISC, + data->buf[LIGHT_SENSOR].w + 1); +#if defined (CONFIG_SENSORS_SSP_TMG399X) + input_report_rel(data->light_input_dev, REL_RY, + data->buf[LIGHT_SENSOR].a_time + 1); + input_report_rel(data->light_input_dev, REL_RZ, + data->buf[LIGHT_SENSOR].a_gain + 1); +#elif defined (CONFIG_SENSORS_SSP_MAX88921) + input_report_rel(data->light_input_dev, REL_RY, + data->buf[LIGHT_SENSOR].ir_cmp + 1); + input_report_rel(data->light_input_dev, REL_RZ, + data->buf[LIGHT_SENSOR].amb_pga + 1); +#endif + input_sync(data->light_input_dev); +} + +void report_prox_data(struct ssp_data *data, struct sensor_value *proxdata) +{ + ssp_dbg("[SSP] Proximity Sensor Detect : %u, raw : %u, thd(%u, %u)\n", + proxdata->prox[0], proxdata->prox[1], + data->uProxHiThresh, data->uProxLoThresh); + + data->buf[PROXIMITY_SENSOR].prox[0] = proxdata->prox[0]; + data->buf[PROXIMITY_SENSOR].prox[1] = proxdata->prox[1]; + + input_report_abs(data->prox_input_dev, ABS_DISTANCE, + (!proxdata->prox[0])); + input_sync(data->prox_input_dev); + + wake_lock_timeout(&data->ssp_wake_lock, 3 * HZ); +} + +void report_prox_raw_data(struct ssp_data *data, + struct sensor_value *proxrawdata) +{ + if (data->uFactoryProxAvg[0]++ >= PROX_AVG_READ_NUM) { + data->uFactoryProxAvg[2] /= PROX_AVG_READ_NUM; + data->buf[PROXIMITY_RAW].prox[1] = (u16)data->uFactoryProxAvg[1]; + data->buf[PROXIMITY_RAW].prox[2] = (u16)data->uFactoryProxAvg[2]; + data->buf[PROXIMITY_RAW].prox[3] = (u16)data->uFactoryProxAvg[3]; + + data->uFactoryProxAvg[0] = 0; + data->uFactoryProxAvg[1] = 0; + data->uFactoryProxAvg[2] = 0; + data->uFactoryProxAvg[3] = 0; + } else { + data->uFactoryProxAvg[2] += proxrawdata->prox[0]; + + if (data->uFactoryProxAvg[0] == 1) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + else if (proxrawdata->prox[0] < data->uFactoryProxAvg[1]) + data->uFactoryProxAvg[1] = proxrawdata->prox[0]; + + if (proxrawdata->prox[0] > data->uFactoryProxAvg[3]) + data->uFactoryProxAvg[3] = proxrawdata->prox[0]; + } + + data->buf[PROXIMITY_RAW].prox[0] = proxrawdata->prox[0]; +} + +void report_step_det_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_DETECTOR].step_det = sig_motion_data->step_det; + ssp_push_1bytes_buffer(data->step_det_indio_dev, sig_motion_data->timestamp, + &sig_motion_data->step_det); +} + +void report_step_cnt_data(struct ssp_data *data, + struct sensor_value *sig_motion_data) +{ + data->buf[STEP_COUNTER].step_diff = sig_motion_data->step_diff; + + data->step_count_total += data->buf[STEP_COUNTER].step_diff; + + input_report_rel(data->step_cnt_input_dev, REL_MISC, + data->step_count_total + 1); + input_sync(data->step_cnt_input_dev); +} + +void report_temp_humidity_data(struct ssp_data *data, + struct sensor_value *temp_humi_data) +{ + data->buf[TEMPERATURE_HUMIDITY_SENSOR].x = temp_humi_data->x; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].y = temp_humi_data->y; + data->buf[TEMPERATURE_HUMIDITY_SENSOR].z = temp_humi_data->z; + + /* Temperature */ + input_report_rel(data->temp_humi_input_dev, REL_HWHEEL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].x); + /* Humidity */ + input_report_rel(data->temp_humi_input_dev, REL_DIAL, + data->buf[TEMPERATURE_HUMIDITY_SENSOR].y); + input_sync(data->temp_humi_input_dev); + if (data->buf[TEMPERATURE_HUMIDITY_SENSOR].z) + wake_lock_timeout(&data->ssp_wake_lock, 2 * HZ); +} + +#ifdef CONFIG_SENSORS_SSP_SHTC1 +void report_bulk_comp_data(struct ssp_data *data) +{ + input_report_rel(data->temp_humi_input_dev, REL_WHEEL, + data->bulk_buffer->len); + input_sync(data->temp_humi_input_dev); +} +#endif + +int initialize_event_symlink(struct ssp_data *data) +{ + int iRet = 0; + + data->sen_dev = device_create(sensors_event_class, NULL, 0, NULL, + "%s", "symlink"); + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); + if (iRet < 0) + goto iRet_gesture_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + if (iRet < 0) + goto iRet_light_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); + if (iRet < 0) + goto iRet_prox_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); + if (iRet < 0) + goto iRet_temp_humi_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); + if (iRet < 0) + goto iRet_mag_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); + if (iRet < 0) + goto iRet_uncal_mag_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + if (iRet < 0) + goto iRet_sig_motion_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); + if (iRet < 0) + goto iRet_uncalib_gyro_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + if (iRet < 0) + goto iRet_step_cnt_sysfs_create_link; + + iRet = sysfs_create_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); + if (iRet < 0) + goto iRet_meta_sysfs_create_link; + + return SUCCESS; +iRet_meta_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); +iRet_step_cnt_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); +iRet_uncalib_gyro_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); +iRet_sig_motion_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); +iRet_uncal_mag_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); +iRet_mag_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); +iRet_temp_humi_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); +iRet_prox_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); +iRet_light_sysfs_create_link: + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); +iRet_gesture_sysfs_create_link: + pr_err("[SSP]: %s - could not create event symlink\n", __func__); + + return FAIL; +} + +void remove_event_symlink(struct ssp_data *data) +{ + sysfs_delete_link(&data->sen_dev->kobj, + &data->gesture_input_dev->dev.kobj, + data->gesture_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->light_input_dev->dev.kobj, + data->light_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->prox_input_dev->dev.kobj, + data->prox_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->temp_humi_input_dev->dev.kobj, + data->temp_humi_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->mag_input_dev->dev.kobj, + data->mag_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncal_mag_input_dev->dev.kobj, + data->uncal_mag_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->sig_motion_input_dev->dev.kobj, + data->sig_motion_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->uncalib_gyro_input_dev->dev.kobj, + data->uncalib_gyro_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->step_cnt_input_dev->dev.kobj, + data->step_cnt_input_dev->name); + sysfs_delete_link(&data->sen_dev->kobj, + &data->meta_input_dev->dev.kobj, + data->meta_input_dev->name); +} + +static const struct iio_info accel_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec accel_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_6_BYTES * 8, + IIO_BUFFER_6_BYTES * 8, 0) + } +}; + +static const struct iio_info gyro_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec gyro_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +static const struct iio_info game_rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec game_rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + +static const struct iio_info rot_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec rot_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_17_BYTES * 8, + IIO_BUFFER_17_BYTES * 8, 0) + } +}; + + +static const struct iio_info step_det_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec step_det_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_1_BYTES * 8, + IIO_BUFFER_1_BYTES * 8, 0) + } +}; + +static const struct iio_info pressure_info = { + .driver_module = THIS_MODULE, +}; + +static const struct iio_chan_spec pressure_channels[] = { + { + .type = IIO_TIMESTAMP, + .channel = -1, + .scan_index = 3, + .scan_type = IIO_ST('s', IIO_BUFFER_12_BYTES * 8, + IIO_BUFFER_12_BYTES * 8, 0) + } +}; + +int initialize_input_dev(struct ssp_data *data) +{ + int iRet = 0; + struct input_dev *light_input_dev, *prox_input_dev, *temp_humi_input_dev, + *mag_input_dev, *gesture_input_dev, *uncal_mag_input_dev, + *sig_motion_input_dev, *uncalib_gyro_input_dev, *step_cnt_input_dev, + *meta_input_dev; + + data->accel_indio_dev = iio_allocate_device(0); + if (!data->accel_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio accel device\n", __func__); + return -ENOMEM; + } + + data->accel_indio_dev->name = "accelerometer_sensor"; + data->accel_indio_dev->dev.parent = &data->spi->dev; + data->accel_indio_dev->info = &accel_info; + data->accel_indio_dev->channels = accel_channels; + data->accel_indio_dev->num_channels = ARRAY_SIZE(accel_channels); + data->accel_indio_dev->modes = INDIO_DIRECT_MODE; + data->accel_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->accel_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_accel; + } + + iRet = iio_buffer_register(data->accel_indio_dev, data->accel_indio_dev->channels, + data->accel_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_accel; + + iRet = iio_device_register(data->accel_indio_dev); + if (iRet) + goto out_remove_trigger_accel; + + data->gyro_indio_dev = iio_allocate_device(0); + if (!data->gyro_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_gyro; + } + + data->gyro_indio_dev->name = "gyro_sensor"; + data->gyro_indio_dev->dev.parent = &data->spi->dev; + data->gyro_indio_dev->info = &gyro_info; + data->gyro_indio_dev->channels = gyro_channels; + data->gyro_indio_dev->num_channels = ARRAY_SIZE(gyro_channels); + data->gyro_indio_dev->modes = INDIO_DIRECT_MODE; + data->gyro_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->gyro_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_gyro; + } + + iRet = iio_buffer_register(data->gyro_indio_dev, data->gyro_indio_dev->channels, + data->gyro_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_gyro; + + iRet = iio_device_register(data->gyro_indio_dev); + if (iRet) + goto out_remove_trigger_gyro; + + data->game_rot_indio_dev = iio_allocate_device(0); + if (!data->game_rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_game_rot; + } + + data->game_rot_indio_dev->name = "game_rotation_vector_sensor"; + data->game_rot_indio_dev->dev.parent = &data->spi->dev; + data->game_rot_indio_dev->info = &game_rot_info; + data->game_rot_indio_dev->channels = game_rot_channels; + data->game_rot_indio_dev->num_channels = ARRAY_SIZE(game_rot_channels); + data->game_rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->game_rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->game_rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_game_rot; + } + + iRet = iio_buffer_register(data->game_rot_indio_dev, data->game_rot_indio_dev->channels, + data->game_rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_game_rot; + + iRet = iio_device_register(data->game_rot_indio_dev); + if (iRet) + goto out_remove_trigger_game_rot; + + data->rot_indio_dev = iio_allocate_device(0); + if (!data->rot_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_rot; + } + + data->rot_indio_dev->name = "rotation_vector_sensor"; + data->rot_indio_dev->dev.parent = &data->spi->dev; + data->rot_indio_dev->info = &rot_info; + data->rot_indio_dev->channels = rot_channels; + data->rot_indio_dev->num_channels = ARRAY_SIZE(rot_channels); + data->rot_indio_dev->modes = INDIO_DIRECT_MODE; + data->rot_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->rot_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_rot; + } + + iRet = iio_buffer_register(data->rot_indio_dev, data->rot_indio_dev->channels, + data->rot_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_rot; + + iRet = iio_device_register(data->rot_indio_dev); + if (iRet) + goto out_remove_trigger_rot; + + data->step_det_indio_dev = iio_allocate_device(0); + if (!data->step_det_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_step_det; + } + + data->step_det_indio_dev->name = "step_det_sensor"; + data->step_det_indio_dev->dev.parent = &data->spi->dev; + data->step_det_indio_dev->info = &step_det_info; + data->step_det_indio_dev->channels = step_det_channels; + data->step_det_indio_dev->num_channels = ARRAY_SIZE(step_det_channels); + data->step_det_indio_dev->modes = INDIO_DIRECT_MODE; + data->step_det_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->step_det_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_step_det; + } + + iRet = iio_buffer_register(data->step_det_indio_dev, data->step_det_indio_dev->channels, + data->step_det_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_step_det; + + iRet = iio_device_register(data->step_det_indio_dev); + if (iRet) + goto out_remove_trigger_step_det; + + data->pressure_indio_dev = iio_allocate_device(0); + if (!data->pressure_indio_dev) { + pr_err("[SSP]: %s failed to allocate memory for iio gyro device\n", __func__); + goto out_alloc_fail_pressure; + } + + data->pressure_indio_dev->name = "pressure_sensor"; + data->pressure_indio_dev->dev.parent = &data->spi->dev; + data->pressure_indio_dev->info = &pressure_info; + data->pressure_indio_dev->channels = pressure_channels; + data->pressure_indio_dev->num_channels = ARRAY_SIZE(pressure_channels); + data->pressure_indio_dev->modes = INDIO_DIRECT_MODE; + data->pressure_indio_dev->currentmode = INDIO_DIRECT_MODE; + + iRet = ssp_iio_configure_ring(data->pressure_indio_dev); + if (iRet) { + pr_err("[SSP]: %s configure ring buffer fail\n", __func__); + goto out_free_pressure; + } + + iRet = iio_buffer_register(data->pressure_indio_dev, data->pressure_indio_dev->channels, + data->pressure_indio_dev->num_channels); + if (iRet) + goto out_unreg_ring_pressure; + + iRet = iio_device_register(data->pressure_indio_dev); + if (iRet) + goto out_remove_trigger_pressure; + + /* allocate input_device */ + gesture_input_dev = input_allocate_device(); + if (gesture_input_dev == NULL) + goto iRet_gesture_input_free_device; + + light_input_dev = input_allocate_device(); + if (light_input_dev == NULL) + goto iRet_light_input_free_device; + + prox_input_dev = input_allocate_device(); + if (prox_input_dev == NULL) + goto iRet_proximity_input_free_device; + + temp_humi_input_dev = input_allocate_device(); + if (temp_humi_input_dev == NULL) + goto iRet_temp_humidity_input_free_device; + + mag_input_dev = input_allocate_device(); + if (mag_input_dev == NULL) + goto iRet_mag_input_free_device; + + uncal_mag_input_dev = input_allocate_device(); + if (uncal_mag_input_dev == NULL) + goto iRet_uncal_mag_input_free_device; + + sig_motion_input_dev = input_allocate_device(); + if (sig_motion_input_dev == NULL) + goto iRet_sig_motion_input_free_device; + + uncalib_gyro_input_dev = input_allocate_device(); + if (uncalib_gyro_input_dev == NULL) + goto iRet_uncalib_gyro_input_free_device; + + step_cnt_input_dev = input_allocate_device(); + if (step_cnt_input_dev == NULL) + goto iRet_step_cnt_input_free_device; + + meta_input_dev = input_allocate_device(); + if (meta_input_dev == NULL) + goto iRet_meta_input_free_device; + + input_set_drvdata(gesture_input_dev, data); + input_set_drvdata(light_input_dev, data); + input_set_drvdata(prox_input_dev, data); + input_set_drvdata(temp_humi_input_dev, data); + input_set_drvdata(mag_input_dev, data); + input_set_drvdata(uncal_mag_input_dev, data); + input_set_drvdata(sig_motion_input_dev, data); + input_set_drvdata(uncalib_gyro_input_dev, data); + input_set_drvdata(step_cnt_input_dev, data); + input_set_drvdata(meta_input_dev, data); + + gesture_input_dev->name = "gesture_sensor"; + light_input_dev->name = "light_sensor"; + prox_input_dev->name = "proximity_sensor"; + temp_humi_input_dev->name = "temp_humidity_sensor"; + mag_input_dev->name = "geomagnetic_sensor"; + uncal_mag_input_dev->name = "uncal_geomagnetic_sensor"; + sig_motion_input_dev->name = "sig_motion_sensor"; + uncalib_gyro_input_dev->name = "uncalibrated_gyro_sensor"; + step_cnt_input_dev->name = "step_cnt_sensor"; + meta_input_dev->name = "meta_event"; + + input_set_capability(gesture_input_dev, EV_ABS, ABS_X); + input_set_abs_params(gesture_input_dev, ABS_X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Y); + input_set_abs_params(gesture_input_dev, ABS_Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_Z); + input_set_abs_params(gesture_input_dev, ABS_Z, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RX); + input_set_abs_params(gesture_input_dev, ABS_RX, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RY); + input_set_abs_params(gesture_input_dev, ABS_RY, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RZ); + input_set_abs_params(gesture_input_dev, ABS_RZ, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_THROTTLE); + input_set_abs_params(gesture_input_dev, ABS_THROTTLE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_RUDDER); + input_set_abs_params(gesture_input_dev, ABS_RUDDER, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_WHEEL); + input_set_abs_params(gesture_input_dev, ABS_WHEEL, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_GAS); + input_set_abs_params(gesture_input_dev, ABS_GAS, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_BRAKE); + input_set_abs_params(gesture_input_dev, ABS_BRAKE, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0X); + input_set_abs_params(gesture_input_dev, ABS_HAT0X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT0Y); + input_set_abs_params(gesture_input_dev, ABS_HAT0Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1X); + input_set_abs_params(gesture_input_dev, ABS_HAT1X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT1Y); + input_set_abs_params(gesture_input_dev, ABS_HAT1Y, 0, 1024, 0, 0); + + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2X); + input_set_abs_params(gesture_input_dev, ABS_HAT2X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT2Y); + input_set_abs_params(gesture_input_dev, ABS_HAT2Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3X); + input_set_abs_params(gesture_input_dev, ABS_HAT3X, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_HAT3Y); + input_set_abs_params(gesture_input_dev, ABS_HAT3Y, 0, 1024, 0, 0); + input_set_capability(gesture_input_dev, EV_ABS, ABS_PRESSURE); + input_set_abs_params(gesture_input_dev, ABS_PRESSURE, 0, 1024, 0, 0); + + input_set_capability(light_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(light_input_dev, EV_REL, REL_DIAL); + input_set_capability(light_input_dev, EV_REL, REL_WHEEL); + input_set_capability(light_input_dev, EV_REL, REL_MISC); + input_set_capability(light_input_dev, EV_REL, REL_RY); + input_set_capability(light_input_dev, EV_REL, REL_RZ); + + input_set_capability(prox_input_dev, EV_ABS, ABS_DISTANCE); + input_set_abs_params(prox_input_dev, ABS_DISTANCE, 0, 1, 0, 0); + + input_set_capability(temp_humi_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_DIAL); + input_set_capability(temp_humi_input_dev, EV_REL, REL_WHEEL); + +#ifdef SAVE_MAG_LOG + input_set_capability(mag_input_dev, EV_REL, REL_X); + input_set_capability(mag_input_dev, EV_REL, REL_Y); + input_set_capability(mag_input_dev, EV_REL, REL_Z); + input_set_capability(mag_input_dev, EV_REL, REL_RX); + input_set_capability(mag_input_dev, EV_REL, REL_RY); + input_set_capability(mag_input_dev, EV_REL, REL_RZ); + input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(mag_input_dev, EV_REL, REL_DIAL); + input_set_capability(mag_input_dev, EV_REL, REL_WHEEL); +#else + input_set_capability(mag_input_dev, EV_REL, REL_RX); + input_set_capability(mag_input_dev, EV_REL, REL_RY); + input_set_capability(mag_input_dev, EV_REL, REL_RZ); + input_set_capability(mag_input_dev, EV_REL, REL_HWHEEL); +#endif + + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RX); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RY); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_RZ); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_DIAL); + input_set_capability(uncal_mag_input_dev, EV_REL, REL_WHEEL); + + input_set_capability(sig_motion_input_dev, EV_REL, REL_MISC); + + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_X); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Y); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_Z); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RX); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RY); + input_set_capability(uncalib_gyro_input_dev, EV_REL, REL_RZ); + input_set_capability(step_cnt_input_dev, EV_REL, REL_MISC); + + input_set_capability(meta_input_dev, EV_REL, REL_HWHEEL); + input_set_capability(meta_input_dev, EV_REL, REL_DIAL); + + /* register input_device */ + iRet = input_register_device(gesture_input_dev); + if (iRet < 0) + goto iRet_gesture_input_unreg_device; + + iRet = input_register_device(light_input_dev); + if (iRet < 0) { + input_free_device(light_input_dev); + input_free_device(prox_input_dev); + input_free_device(temp_humi_input_dev); + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_light_input_unreg_device; + } + + iRet = input_register_device(prox_input_dev); + if (iRet < 0) { + input_free_device(prox_input_dev); + input_free_device(temp_humi_input_dev); + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_proximity_input_unreg_device; + } + + iRet = input_register_device(temp_humi_input_dev); + if (iRet < 0) { + input_free_device(temp_humi_input_dev); + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_tmep_humi_input_unreg_device; + } + + iRet = input_register_device(mag_input_dev); + if (iRet < 0) { + input_free_device(mag_input_dev); + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_mag_input_unreg_device; + } + + iRet = input_register_device(uncal_mag_input_dev); + if (iRet < 0) { + input_free_device(uncal_mag_input_dev); + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_uncal_mag_input_unreg_device; + } + + iRet = input_register_device(sig_motion_input_dev); + if (iRet < 0) { + input_free_device(sig_motion_input_dev); + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_sig_motion_input_unreg_device; + } + + iRet = input_register_device(uncalib_gyro_input_dev); + if (iRet < 0) { + input_free_device(uncalib_gyro_input_dev); + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_uncalib_gyro_input_unreg_device; + } + + iRet = input_register_device(step_cnt_input_dev); + if (iRet < 0) { + input_free_device(step_cnt_input_dev); + input_free_device(meta_input_dev); + goto iRet_step_cnt_input_unreg_device; + } + + iRet = input_register_device(meta_input_dev); + if (iRet < 0) { + input_free_device(meta_input_dev); + goto iRet_meta_input_unreg_device; + } + + data->gesture_input_dev = gesture_input_dev; + data->light_input_dev = light_input_dev; + data->prox_input_dev = prox_input_dev; + data->temp_humi_input_dev = temp_humi_input_dev; + data->mag_input_dev = mag_input_dev; + data->uncal_mag_input_dev = uncal_mag_input_dev; + data->sig_motion_input_dev = sig_motion_input_dev; + data->uncalib_gyro_input_dev = uncalib_gyro_input_dev; + data->step_cnt_input_dev = step_cnt_input_dev; + data->meta_input_dev = meta_input_dev; + + return SUCCESS; +iRet_meta_input_unreg_device: + input_unregister_device(step_cnt_input_dev); +iRet_step_cnt_input_unreg_device: + input_unregister_device(uncalib_gyro_input_dev); +iRet_uncalib_gyro_input_unreg_device: + input_unregister_device(sig_motion_input_dev); +iRet_sig_motion_input_unreg_device: + input_unregister_device(uncal_mag_input_dev); +iRet_uncal_mag_input_unreg_device: + input_unregister_device(mag_input_dev); +iRet_mag_input_unreg_device: + input_unregister_device(temp_humi_input_dev); +iRet_tmep_humi_input_unreg_device: + input_unregister_device(prox_input_dev); +iRet_proximity_input_unreg_device: + input_unregister_device(light_input_dev); +iRet_light_input_unreg_device: + input_unregister_device(gesture_input_dev); + return ERROR; +iRet_gesture_input_unreg_device: + input_free_device(meta_input_dev); +iRet_meta_input_free_device: + input_free_device(step_cnt_input_dev); +iRet_step_cnt_input_free_device: + input_free_device(uncalib_gyro_input_dev); +iRet_uncalib_gyro_input_free_device: + input_free_device(sig_motion_input_dev); +iRet_sig_motion_input_free_device: + input_free_device(uncal_mag_input_dev); +iRet_uncal_mag_input_free_device: + input_free_device(mag_input_dev); +iRet_mag_input_free_device: + input_free_device(temp_humi_input_dev); +iRet_temp_humidity_input_free_device: + input_free_device(prox_input_dev); +iRet_proximity_input_free_device: + input_free_device(light_input_dev); +iRet_light_input_free_device: + input_free_device(gesture_input_dev); +iRet_gesture_input_free_device: + iio_device_unregister(data->pressure_indio_dev); +out_remove_trigger_pressure: + iio_buffer_unregister(data->pressure_indio_dev); +out_unreg_ring_pressure: + ssp_iio_unconfigure_ring(data->pressure_indio_dev); +out_free_pressure: + iio_free_device(data->pressure_indio_dev); +out_alloc_fail_pressure: + iio_device_unregister(data->step_det_indio_dev); +out_remove_trigger_step_det: + iio_buffer_unregister(data->step_det_indio_dev); +out_unreg_ring_step_det: + ssp_iio_unconfigure_ring(data->step_det_indio_dev); +out_free_step_det: + iio_free_device(data->step_det_indio_dev); +out_alloc_fail_step_det: + iio_device_unregister(data->rot_indio_dev); +out_remove_trigger_rot: + iio_buffer_unregister(data->rot_indio_dev); +out_unreg_ring_rot: + ssp_iio_unconfigure_ring(data->rot_indio_dev); +out_free_rot: + iio_free_device(data->rot_indio_dev); +out_alloc_fail_rot: + iio_device_unregister(data->game_rot_indio_dev); +out_remove_trigger_game_rot: + iio_buffer_unregister(data->game_rot_indio_dev); +out_unreg_ring_game_rot: + ssp_iio_unconfigure_ring(data->game_rot_indio_dev); +out_free_game_rot: + iio_free_device(data->game_rot_indio_dev); +out_alloc_fail_game_rot: + iio_device_unregister(data->gyro_indio_dev); +out_remove_trigger_gyro: + iio_buffer_unregister(data->gyro_indio_dev); +out_unreg_ring_gyro: + ssp_iio_unconfigure_ring(data->gyro_indio_dev); +out_free_gyro: + iio_free_device(data->gyro_indio_dev); +out_alloc_fail_gyro: + iio_device_unregister(data->accel_indio_dev); +out_remove_trigger_accel: + iio_buffer_unregister(data->accel_indio_dev); +out_unreg_ring_accel: + ssp_iio_unconfigure_ring(data->accel_indio_dev); +out_free_accel: + iio_free_device(data->accel_indio_dev); + pr_err("[SSP]: %s - could not allocate input device\n", __func__); + return ERROR; +} + +void remove_input_dev(struct ssp_data *data) +{ + input_unregister_device(data->gesture_input_dev); + input_unregister_device(data->light_input_dev); + input_unregister_device(data->prox_input_dev); + input_unregister_device(data->temp_humi_input_dev); + input_unregister_device(data->mag_input_dev); + input_unregister_device(data->uncal_mag_input_dev); + input_unregister_device(data->sig_motion_input_dev); + input_unregister_device(data->uncalib_gyro_input_dev); + input_unregister_device(data->step_cnt_input_dev); + input_unregister_device(data->meta_input_dev); +} diff --git a/drivers/sensorhub/stm_patek/ssp_misc.c b/drivers/sensorhub/stm_patek/ssp_misc.c new file mode 100644 index 000000000000..60dadff2eeac --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_misc.c @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2014, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" + +#define SHAKE_ON 1 +#define SHAKE_OFF 2 + +struct remove_af_noise { + void *af_pdata; + int16_t (*af_func)(void *, bool); +}; + +static struct remove_af_noise af_sensor; + +int remove_af_noise_register(struct remove_af_noise *af_cam) +{ + if (af_cam->af_pdata) + af_sensor.af_pdata = af_cam->af_pdata; + + if (af_cam->af_func) + af_sensor.af_func = af_cam->af_func; + + if (!af_cam->af_pdata || !af_cam->af_func) { + ssp_dbg("[SSP]: %s - no af struct\n", __func__); + return ERROR; + } + + return 0; +} +EXPORT_SYMBOL(remove_af_noise_register); + +void remove_af_noise_unregister(struct remove_af_noise *af_cam) +{ + af_sensor.af_pdata = NULL; + af_sensor.af_func = NULL; +} +EXPORT_SYMBOL(remove_af_noise_unregister); + +void report_shake_cam_data(struct ssp_data *data, + struct sensor_value *shake_cam_data) +{ + data->buf[SHAKE_CAM].x = shake_cam_data->x; + + ssp_dbg("[SSP]: %s - shake = %d\n", __func__, + (char)data->buf[SHAKE_CAM].x); + + if (likely(af_sensor.af_pdata && af_sensor.af_func)) { + if ((char)data->buf[SHAKE_CAM].x == SHAKE_ON) + af_sensor.af_func(af_sensor.af_pdata, true); + else if ((char)data->buf[SHAKE_CAM].x == SHAKE_OFF) + af_sensor.af_func(af_sensor.af_pdata, false); + } else { + ssp_dbg("[SSP]: %s - no af_func\n", __func__); + } +} diff --git a/drivers/sensorhub/stm_patek/ssp_sensorhub.c b/drivers/sensorhub/stm_patek/ssp_sensorhub.c new file mode 100644 index 000000000000..59529ada5460 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_sensorhub.c @@ -0,0 +1,713 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include "ssp_sensorhub.h" + +static void ssp_sensorhub_log(const char *func_name, + const char *data, int length) +{ + char buf[6]; + char *log_str; + int log_size; + int i; + + if (likely(length <= BIG_DATA_SIZE)) + log_size = length; + else + log_size = PRINT_TRUNCATE * 2 + 1; + + log_size = sizeof(buf) * log_size + 1; + log_str = kzalloc(log_size, GFP_ATOMIC); + if (unlikely(!log_str)) { + sensorhub_err("allocate memory for data log err"); + return; + } + + for (i = 0; i < length; i++) { + if (length < BIG_DATA_SIZE || + i < PRINT_TRUNCATE || i >= length - PRINT_TRUNCATE) { + snprintf(buf, sizeof(buf), "%d", (signed char)data[i]); + strlcat(log_str, buf, log_size); + } + if (length < BIG_DATA_SIZE || + i < PRINT_TRUNCATE || i >= length - PRINT_TRUNCATE) { + if (i < length - 1) + strlcat(log_str, ", ", log_size); + } + if (length > BIG_DATA_SIZE && i == PRINT_TRUNCATE) + strlcat(log_str, "..., ", log_size); + } + + pr_info("[SSP]: %s - %s (%d)", func_name, log_str, length); + kfree(log_str); +} + +static int ssp_sensorhub_send_big_data(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + int length = count - 3; + int ret = 0; + + /* only support voice service for the moment */ + if (buf[1] != TYPE_WAKE_UP_VOICE_SERVICE) { + sensorhub_err("not voice service(%d)", buf[1]); + return -EINVAL; + } + + /* am or grammer data? */ + if (buf[2] != TYPE_WAKE_UP_VOICE_SOUND_SOURCE_AM && + buf[2] != TYPE_WAKE_UP_VOICE_SOUND_SOURCE_GRAMMER) { + sensorhub_err("voice data type err(%d)", buf[2]); + return -EINVAL; + } + + hub_data->big_send_events.library_data + = kzalloc(length * sizeof(char), GFP_KERNEL); + if (unlikely(!hub_data->big_send_events.library_data)) { + sensorhub_err("allocate memory for big library err"); + return -ENOMEM; + } + + memcpy(hub_data->big_send_events.library_data, buf+3, length); + hub_data->big_send_events.library_length = length; + + /* trigger big data transfer */ + ret = set_big_data_start(hub_data->ssp_data, buf[2]+1, length); + if (ret != SUCCESS) { + sensorhub_err("set_big_data_start err(%d)", ret); + goto exit; + } + + /* wait until write operation is done */ + ret = wait_for_completion_timeout(&hub_data->big_write_done, + COMPLETION_TIMEOUT + 1*HZ); + if (unlikely(!ret)) { + sensorhub_err("wait timed out"); + ret = -EBUSY; + } else if (unlikely(ret < 0)) { + sensorhub_err("wait for completion err(%d)", ret); + ret = -EIO; + } + +exit: + kfree(hub_data->big_send_events.library_data); + return !ret ? ret + 1 : ret; +} + +static int ssp_sensorhub_send_cmd(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + int ret = 0; + + if (buf[2] < MSG2SSP_AP_STATUS_WAKEUP || + buf[2] >= MSG2SSP_AP_TEMPHUMIDITY_CAL_DONE) { + sensorhub_err("MSG2SSP_INST_LIB_NOTI err(%d)", buf[2]); + return -EINVAL; + } + + ret = ssp_send_cmd(hub_data->ssp_data, buf[2], 0); + + if (buf[2] == MSG2SSP_AP_STATUS_WAKEUP || + buf[2] == MSG2SSP_AP_STATUS_SLEEP) + hub_data->ssp_data->uLastAPState = buf[2]; + + if (buf[2] == MSG2SSP_AP_STATUS_SUSPEND || + buf[2] == MSG2SSP_AP_STATUS_RESUME) + hub_data->ssp_data->uLastResumeState = buf[2]; + + return ret; +} + +static int ssp_sensorhub_send_instruction(struct ssp_sensorhub_data *hub_data, + const char *buf, int count) +{ + unsigned char instruction = buf[0]; + + if (buf[0] == MSG2SSP_INST_LIBRARY_REMOVE) + instruction = REMOVE_LIBRARY; + else if (buf[0] == MSG2SSP_INST_LIBRARY_ADD) + instruction = ADD_LIBRARY; + + return send_instruction(hub_data->ssp_data, instruction, + (unsigned char)buf[1], (unsigned char *)(buf+2), count-2); +} + +static ssize_t ssp_sensorhub_write(struct file *file, const char __user *buf, + size_t count, loff_t *pos) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + int ret = 0; + + if (unlikely(count < 2)) { + sensorhub_err("library data length err(%d)", count); + return -EINVAL; + } + + ssp_sensorhub_log(__func__, buf, count); + + if (unlikely(hub_data->ssp_data->bSspShutdown)) { + sensorhub_err("stop sending library data(shutdown)"); + return -EBUSY; + } + + if (buf[0] == MSG2SSP_INST_LIB_DATA && count >= BIG_DATA_SIZE) + ret = ssp_sensorhub_send_big_data(hub_data, buf, count); + else if (buf[0] == MSG2SSP_INST_LIB_NOTI) + ret = ssp_sensorhub_send_cmd(hub_data, buf, count); + else + ret = ssp_sensorhub_send_instruction(hub_data, buf, count); + + if (unlikely(ret <= 0)) { + sensorhub_err("send library data err(%d)", ret); + /* i2c transfer fail */ + if (ret == ERROR) + return -EIO; + /* i2c transfer done but no ack from MCU */ + else if (ret == FAIL) + return -EAGAIN; + else + return ret; + } + + return count; +} + +static ssize_t ssp_sensorhub_read(struct file *file, char __user *buf, + size_t count, loff_t *pos) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + struct sensorhub_event *event; + int retries = MAX_DATA_COPY_TRY; + int length = 0; + int ret = 0; + + spin_lock_bh(&hub_data->sensorhub_lock); + if (unlikely(kfifo_is_empty(&hub_data->fifo))) { + sensorhub_info("no library data"); + goto err; + } + + /* first in first out */ + ret = kfifo_out_peek(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(!ret)) { + sensorhub_err("kfifo out peek err(%d)", ret); + ret = EIO; + goto err; + } + + length = event->library_length; + + while (retries--) { + ret = copy_to_user(buf, + event->library_data, event->library_length); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + sensorhub_err("read library data err(%d)", ret); + goto err; + } + + ssp_sensorhub_log(__func__, + event->library_data, event->library_length); + + /* remove first event from the list */ + ret = kfifo_out(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo out err(%d)", ret); + ret = EIO; + goto err; + } + + complete(&hub_data->read_done); + spin_unlock_bh(&hub_data->sensorhub_lock); + + return length; + +err: + spin_unlock_bh(&hub_data->sensorhub_lock); + return ret ? -ret : 0; +} + +static long ssp_sensorhub_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_sensorhub_data *hub_data + = container_of(file->private_data, + struct ssp_sensorhub_data, sensorhub_device); + void __user *argp = (void __user *)arg; + int retries = MAX_DATA_COPY_TRY; + int length = hub_data->big_events.library_length; + int ret = 0; + + switch (cmd) { + case IOCTL_READ_BIG_CONTEXT_DATA: + if (unlikely(!hub_data->big_events.library_data + || !hub_data->big_events.library_length)) { + sensorhub_info("no big library data"); + return 0; + } + + while (retries--) { + ret = copy_to_user(argp, + hub_data->big_events.library_data, + hub_data->big_events.library_length); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + sensorhub_err("read big library data err(%d)", ret); + return -ret; + } + + ssp_sensorhub_log(__func__, + hub_data->big_events.library_data, + hub_data->big_events.library_length); + + hub_data->is_big_event = false; + kfree(hub_data->big_events.library_data); + hub_data->big_events.library_length = 0; + complete(&hub_data->big_read_done); + break; + + default: + sensorhub_err("ioctl cmd err(%d)", cmd); + return -EINVAL; + } + + return length; +} + +static struct file_operations ssp_sensorhub_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .write = ssp_sensorhub_write, + .read = ssp_sensorhub_read, + .unlocked_ioctl = ssp_sensorhub_ioctl, +}; + +void ssp_sensorhub_report_notice(struct ssp_data *ssp_data, char notice) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + + input_report_rel(hub_data->sensorhub_input_dev, NOTICE, notice); + input_sync(hub_data->sensorhub_input_dev); + + if (notice == MSG2SSP_AP_STATUS_WAKEUP) + sensorhub_info("wake up"); + else if (notice == MSG2SSP_AP_STATUS_SLEEP) + sensorhub_info("sleep"); + else if (notice == MSG2SSP_AP_STATUS_RESET) + sensorhub_info("reset"); + else + sensorhub_err("invalid notice(0x%x)", notice); +} + +static void ssp_sensorhub_report_library(struct ssp_sensorhub_data *hub_data) +{ + input_report_rel(hub_data->sensorhub_input_dev, DATA, DATA); + input_sync(hub_data->sensorhub_input_dev); + wake_lock_timeout(&hub_data->sensorhub_wake_lock, WAKE_LOCK_TIMEOUT); +} + +static void ssp_sensorhub_report_big_library( + struct ssp_sensorhub_data *hub_data) +{ + input_report_rel(hub_data->sensorhub_input_dev, BIG_DATA, BIG_DATA); + input_sync(hub_data->sensorhub_input_dev); + wake_lock_timeout(&hub_data->sensorhub_wake_lock, WAKE_LOCK_TIMEOUT); +} + +static int ssp_sensorhub_list(struct ssp_sensorhub_data *hub_data, + char *dataframe, int length) +{ + struct sensorhub_event *event; + int ret = 0; + + if (unlikely(length <= 0 || length >= PAGE_SIZE)) { + sensorhub_err("library length err(%d)", length); + return -EINVAL; + } + + ssp_sensorhub_log(__func__, dataframe, length); + + /* overwrite new event if list is full */ + if (unlikely(kfifo_is_full(&hub_data->fifo))) { + ret = kfifo_out(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo out err(%d)", ret); + return -EIO; + } + sensorhub_info("overwrite event"); + } + + /* allocate memory for new event */ + kfree(hub_data->events[hub_data->event_number].library_data); + hub_data->events[hub_data->event_number].library_data + = kzalloc(length * sizeof(char), GFP_ATOMIC); + if (unlikely(!hub_data->events[hub_data->event_number].library_data)) { + sensorhub_err("allocate memory for library err"); + return -ENOMEM; + } + + /* copy new event into memory */ + memcpy(hub_data->events[hub_data->event_number].library_data, + dataframe, length); + hub_data->events[hub_data->event_number].library_length = length; + + /* add new event into the end of list */ + event = &hub_data->events[hub_data->event_number]; + ret = kfifo_in(&hub_data->fifo, &event, sizeof(void *)); + if (unlikely(ret != sizeof(void *))) { + sensorhub_err("kfifo in err(%d)", ret); + return -EIO; + } + + /* not to overflow max list capacity */ + if (hub_data->event_number++ >= LIST_SIZE - 1) + hub_data->event_number = 0; + + return kfifo_len(&hub_data->fifo) / sizeof(void *); +} + +int ssp_sensorhub_handle_data(struct ssp_data *ssp_data, char *dataframe, + int start, int end) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + int ret = 0; + + /* add new sensorhub event into list */ + spin_lock_bh(&hub_data->sensorhub_lock); + ret = ssp_sensorhub_list(hub_data, dataframe+start, end-start); + spin_unlock_bh(&hub_data->sensorhub_lock); + + if (ret < 0) + sensorhub_err("sensorhub list err(%d)", ret); + else + wake_up(&hub_data->sensorhub_wq); + + return ret; +} + +static int ssp_sensorhub_thread(void *arg) +{ + struct ssp_sensorhub_data *hub_data = (struct ssp_sensorhub_data *)arg; + int ret = 0; + + while (likely(!kthread_should_stop())) { + /* run thread if list is not empty */ + wait_event_interruptible(hub_data->sensorhub_wq, + kthread_should_stop() || + !kfifo_is_empty(&hub_data->fifo) || + hub_data->is_big_event); + + /* exit thread if kthread should stop */ + if (unlikely(kthread_should_stop())) { + sensorhub_info("kthread_stop()"); + break; + } + + if (likely(!kfifo_is_empty(&hub_data->fifo))) { + /* report sensorhub event to user */ + ssp_sensorhub_report_library(hub_data); + /* wait until transfer finished */ + ret = wait_for_completion_timeout( + &hub_data->read_done, COMPLETION_TIMEOUT); + if (unlikely(!ret)) + sensorhub_err("wait for read timed out"); + else if (unlikely(ret < 0)) + sensorhub_err("read completion err(%d)", ret); + } + + if (unlikely(hub_data->is_big_event)) { + /* report big sensorhub event to user */ + ssp_sensorhub_report_big_library(hub_data); + /* wait until transfer finished */ + ret = wait_for_completion_timeout( + &hub_data->big_read_done, COMPLETION_TIMEOUT); + if (unlikely(!ret)) + sensorhub_err("wait for big read timed out"); + else if (unlikely(ret < 0)) + sensorhub_err("big read completion err(%d)", + ret); + } + } + + return 0; +} + +void ssp_read_big_library_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0, pos = 0; + + hub_data->big_events.library_length = big->length; + hub_data->big_events.library_data = kzalloc(big->length, GFP_KERNEL); + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = hub_data->big_events.library_data + pos; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("read big data err(%d)", ret); + break; + } + + pos += buf_len; + residue -= buf_len; + + sensorhub_info("read big data (%5d / %5d)", pos, big->length); + } + + hub_data->is_big_event = true; + wake_up(&hub_data->sensorhub_wq); + kfree(big); +} + +void ssp_send_big_library_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0, pos = 0; + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_SET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_WRITE | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = hub_data->big_send_events.library_data + pos; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("send big data err(%d)", ret); + break; + } + + pos += buf_len; + residue -= buf_len; + + sensorhub_info("send big data (%5d / %5d)", pos, big->length); + } + + complete(&hub_data->big_write_done); + kfree(big); +} + +void ssp_pcm_dump_task(struct work_struct *work) +{ + struct ssp_big *big = container_of(work, struct ssp_big, work); + struct ssp_sensorhub_data *hub_data = big->data->hub_data; + struct ssp_msg *msg; + int buf_len, residue = big->length, ret = 0, index = 0; + + mm_segment_t old_fs; + struct file *voice_filp; + char pcm_path[BIN_PATH_SIZE+1]; + char *buff; + + old_fs = get_fs(); + set_fs(KERNEL_DS); + + snprintf(pcm_path, BIN_PATH_SIZE, + "/data/voice%d.pcm", hub_data->pcm_cnt); + voice_filp = filp_open(pcm_path, O_RDWR | O_CREAT | O_APPEND, 0666); + if (IS_ERR(voice_filp)) { + sensorhub_err("open pcm dump file err"); + goto exit; + } + + buf_len = big->length > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : big->length; + buff = kzalloc(buf_len, GFP_KERNEL); + + while (residue > 0) { + buf_len = residue > DATA_PACKET_SIZE + ? DATA_PACKET_SIZE : residue; + + msg = kzalloc(sizeof(*msg), GFP_KERNEL); + msg->cmd = MSG2SSP_AP_GET_BIG_DATA; + msg->length = buf_len; + msg->options = AP2HUB_READ | (index++ << SSP_INDEX); + msg->data = big->addr; + msg->buffer = buff; + msg->free_buffer = 0; + + ret = ssp_spi_sync(big->data, msg, 1000); + if (ret != SUCCESS) { + sensorhub_err("receive pcm dump err(%d)", ret); + break; + } + + ret = voice_filp->f_op->write(voice_filp, (char __user *)buff, + buf_len, &voice_filp->f_pos); + if (ret < 0) { + sensorhub_err("write pcm dump to file err(%d)", ret); + break; + } + + residue -= buf_len; + sensorhub_info("write pcm dump..."); + } + + filp_close(voice_filp, current->files); + kfree(buff); + +exit: + set_fs(old_fs); + kfree(big); +} + +int ssp_sensorhub_pcm_dump(struct ssp_sensorhub_data *hub_data) +{ + hub_data->pcm_cnt++; + return set_big_data_start(hub_data->ssp_data, BIG_TYPE_VOICE_PCM, 0); +} + +int ssp_sensorhub_initialize(struct ssp_data *ssp_data) +{ + struct ssp_sensorhub_data *hub_data; + int ret; + + /* allocate memory for sensorhub data */ + hub_data = kzalloc(sizeof(*hub_data), GFP_KERNEL); + if (!hub_data) { + sensorhub_err("allocate memory for sensorhub data err"); + ret = -ENOMEM; + goto exit; + } + hub_data->ssp_data = ssp_data; + ssp_data->hub_data = hub_data; + + /* init wakelock, list, waitqueue, completion and spinlock */ + wake_lock_init(&hub_data->sensorhub_wake_lock, WAKE_LOCK_SUSPEND, + "ssp_sensorhub_wake_lock"); + init_waitqueue_head(&hub_data->sensorhub_wq); + init_completion(&hub_data->read_done); + init_completion(&hub_data->big_read_done); + init_completion(&hub_data->big_write_done); + spin_lock_init(&hub_data->sensorhub_lock); + + /* allocate sensorhub input device */ + hub_data->sensorhub_input_dev = input_allocate_device(); + if (!hub_data->sensorhub_input_dev) { + sensorhub_err("allocate sensorhub input device err"); + ret = -ENOMEM; + goto err_input_allocate_device_sensorhub; + } + + /* set sensorhub input device */ + input_set_drvdata(hub_data->sensorhub_input_dev, hub_data); + hub_data->sensorhub_input_dev->name = "ssp_context"; + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, DATA); + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, BIG_DATA); + input_set_capability(hub_data->sensorhub_input_dev, EV_REL, NOTICE); + + /* register sensorhub input device */ + ret = input_register_device(hub_data->sensorhub_input_dev); + if (ret < 0) { + sensorhub_err("register sensorhub input device err(%d)", ret); + input_free_device(hub_data->sensorhub_input_dev); + goto err_input_register_device_sensorhub; + } + + /* register sensorhub misc device */ + hub_data->sensorhub_device.minor = MISC_DYNAMIC_MINOR; + hub_data->sensorhub_device.name = "ssp_sensorhub"; + hub_data->sensorhub_device.fops = &ssp_sensorhub_fops; + + ret = misc_register(&hub_data->sensorhub_device); + if (ret < 0) { + sensorhub_err("register sensorhub misc device err(%d)", ret); + goto err_misc_register; + } + + /* allocate fifo */ + ret = kfifo_alloc(&hub_data->fifo, + sizeof(void *) * LIST_SIZE, GFP_KERNEL); + if (ret) { + sensorhub_err("kfifo allocate err(%d)", ret); + goto err_kfifo_alloc; + } + + /* create and run sensorhub thread */ + hub_data->sensorhub_task = kthread_run(ssp_sensorhub_thread, + (void *)hub_data, "ssp_sensorhub_thread"); + if (IS_ERR(hub_data->sensorhub_task)) { + ret = PTR_ERR(hub_data->sensorhub_task); + goto err_kthread_run; + } + + return 0; + +err_kthread_run: + kfifo_free(&hub_data->fifo); +err_kfifo_alloc: + misc_deregister(&hub_data->sensorhub_device); +err_misc_register: + input_unregister_device(hub_data->sensorhub_input_dev); +err_input_register_device_sensorhub: +err_input_allocate_device_sensorhub: + complete_all(&hub_data->big_write_done); + complete_all(&hub_data->big_read_done); + complete_all(&hub_data->read_done); + wake_lock_destroy(&hub_data->sensorhub_wake_lock); + kfree(hub_data); +exit: + return ret; +} + +void ssp_sensorhub_remove(struct ssp_data *ssp_data) +{ + struct ssp_sensorhub_data *hub_data = ssp_data->hub_data; + + ssp_sensorhub_fops.write = NULL; + ssp_sensorhub_fops.read = NULL; + ssp_sensorhub_fops.unlocked_ioctl = NULL; + + kthread_stop(hub_data->sensorhub_task); + kfifo_free(&hub_data->fifo); + misc_deregister(&hub_data->sensorhub_device); + input_unregister_device(hub_data->sensorhub_input_dev); + complete_all(&hub_data->big_write_done); + complete_all(&hub_data->big_read_done); + complete_all(&hub_data->read_done); + wake_lock_destroy(&hub_data->sensorhub_wake_lock); + kfree(hub_data); +} + +MODULE_DESCRIPTION("Seamless Sensor Platform(SSP) sensorhub driver"); +MODULE_AUTHOR("Samsung Electronics"); +MODULE_LICENSE("GPL"); diff --git a/drivers/sensorhub/stm_patek/ssp_sensorhub.h b/drivers/sensorhub/stm_patek/ssp_sensorhub.h new file mode 100644 index 000000000000..742806d3679c --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_sensorhub.h @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2013, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SSP_SENSORHUB__ +#define __SSP_SENSORHUB__ + +#include +#include +#include +#include +#include +#include "ssp.h" + +/* 'LIST_SIZE' should be be rounded-up to a power of 2 */ +#define LIST_SIZE 4 +#define MAX_DATA_COPY_TRY 2 +#define WAKE_LOCK_TIMEOUT (3*HZ) +#define COMPLETION_TIMEOUT (2*HZ) +#define DATA REL_RX +#define BIG_DATA REL_RY +#define NOTICE REL_RZ +#define BIG_DATA_SIZE 256 +#define PRINT_TRUNCATE 6 +#define BIN_PATH_SIZE 100 + +#define SENSORHUB_IOCTL_MAGIC 'S' +#define IOCTL_READ_BIG_CONTEXT_DATA _IOR(SENSORHUB_IOCTL_MAGIC, 3, char *) + +#define sensorhub_info(str, args...) \ + pr_info("[SSP]: %s - " str, __func__, ##args) +#define sensorhub_debug(str, args...) \ + pr_debug("[SSP]: %s - " str, __func__, ##args) +#define sensorhub_err(str, args...) \ + pr_err("[SSP]: %s - " str, __func__, ##args) + + +struct sensorhub_event { + char *library_data; + int library_length; +}; + +struct ssp_sensorhub_data { + struct ssp_data *ssp_data; + struct input_dev *sensorhub_input_dev; + struct task_struct *sensorhub_task; + struct miscdevice sensorhub_device; + struct wake_lock sensorhub_wake_lock; + struct completion read_done; + struct completion big_read_done; + struct completion big_write_done; + struct sensorhub_event events[LIST_SIZE]; + struct sensorhub_event big_events; + struct sensorhub_event big_send_events; + struct kfifo fifo; + bool is_big_event; + int event_number; + int pcm_cnt; + wait_queue_head_t sensorhub_wq; + spinlock_t sensorhub_lock; +}; + +int ssp_sensorhub_pcm_dump(struct ssp_sensorhub_data *hub_data); +void ssp_sensorhub_report_notice(struct ssp_data *ssp_data, char notice); +int ssp_sensorhub_handle_data(struct ssp_data *ssp_data, char *dataframe, + int start, int end); +int ssp_sensorhub_initialize(struct ssp_data *ssp_data); +void ssp_sensorhub_remove(struct ssp_data *ssp_data); + +#endif diff --git a/drivers/sensorhub/stm_patek/ssp_spi.c b/drivers/sensorhub/stm_patek/ssp_spi.c new file mode 100644 index 000000000000..469a95bfa731 --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_spi.c @@ -0,0 +1,255 @@ +/* + * driver for Android SensorHub SPI + * + * Copyright (c) 2013, Samsung Electronics. 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 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#include +#include +#include +#include + +#if defined(DEBUG_SSP_SPI) +#define ssp_log(fmt, arg...) \ + do { \ + printk(KERN_ERR "[%s:%d] " fmt , \ + __func__, __LINE__, ##arg); \ + } \ + while (0) +#else +#define ssp_log(fmt, arg...) +#endif + + +/* If AP can't change the endian to BIG */ +/* for s5c73m ISP, this option must is required.*/ +/* This option depends on SPI_DMA_MODE */ +/* in camera driver file*/ +/*#define CHANGE_ENDIAN */ + + +int ssp_spi_write_sync(struct spi_device *spi, const u8 *addr, const int len) +{ + int ret; +#if defined(CHANGE_ENDIAN) + u8 buf[8] = {0}; +#endif + + struct spi_message msg; + + struct spi_transfer xfer = { + .len = len, +#if !defined(CHANGE_ENDIAN) + .tx_buf = addr, + /*QCTK ALRAN QUP_CONFIG 0-4 bits BIG ENDIAN*/ + .bits_per_word = 8, +#else + .tx_buf = buf, +#endif + }; + +#if defined(CHANGE_ENDIAN) + buf[0] = addr[3]; + buf[1] = addr[2]; + buf[2] = addr[1]; + buf[3] = addr[0]; + buf[4] = addr[7]; + buf[5] = addr[6]; + buf[6] = addr[5]; + buf[7] = addr[4]; +#endif + + spi_message_init(&msg); + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + + if (ret < 0) + ssp_log("error %d\n", ret); + + return ret; +} + + +int ssp_spi_read_sync(struct spi_device *spi, u8 *in_buf, size_t len) +{ + int ret; + u8 read_out_buf[2]; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = read_out_buf, + .rx_buf = in_buf, + .len = len, + .cs_change = 0, + }; + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + + +int ssp_spi_sync(struct spi_device *spi, u8 *out_buf, + size_t out_len, u8 *in_buf) +{ + int ret; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = out_buf, + .rx_buf = in_buf, + .len = out_len, + .cs_change = 0, + }; + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + + ret = spi_sync(spi, &msg); + ssp_log("%s - received %d\n", __func__, xfer.len); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + +unsigned int g_flag_spirecv; +void ssp_spi_async_complete(void *context) +{ + g_flag_spirecv = 1; +} + +int ssp_spi_async(struct spi_device *spi, u8 *out_buf, + size_t out_len, u8 *in_buf) +{ + int ret; + + struct spi_message msg; + struct spi_transfer xfer = { + .tx_buf = out_buf, + .rx_buf = in_buf, + .len = out_len, + .cs_change = 0, + }; + + + spi_message_init(&msg); + + spi_message_add_tail(&xfer, &msg); + msg.complete = ssp_spi_async_complete; + + ret = spi_async(spi, &msg); + + if (ret < 0) + ssp_log("%s - error %d\n", + __func__, ret); + + return ret; +} + + + + +int ssp_spi_read(struct spi_device *spi, u8 *buf, size_t len, const int rxSize) +{ + int k; + int ret = 0; + u8 temp_buf[4] = {0}; + u32 count = len/rxSize; + u32 extra = len%rxSize; + + for (k = 0; k < count; k++) { + ret = ssp_spi_read_sync(spi, &buf[rxSize*k], rxSize); + if (ret < 0) { + ssp_log("%s - error %d\n", + __func__, ret); + return -EINVAL; + } + } + + if (extra != 0) { + ret = ssp_spi_read_sync(spi, &buf[rxSize*k], extra); + if (ret < 0) { + ssp_log("%s - error %d\n", + __func__, ret); + return -EINVAL; + } + } + + for (k = 0; k < len-3; k += 4) { + memcpy(temp_buf, (char *)&buf[k], sizeof(temp_buf)); + buf[k] = temp_buf[3]; + buf[k+1] = temp_buf[2]; + buf[k+2] = temp_buf[1]; + buf[k+3] = temp_buf[0]; + } + + return 0; +} + +int ssp_spi_write(struct spi_device *spi, const u8 *addr, + const int len, const int txSize) +{ + int i, j = 0; + int ret = 0; + u8 paddingData[8]; + u32 count = len/txSize; + u32 extra = len%txSize; + ssp_log("Entered\n"); + ssp_log("count = %d extra = %d\n", count, extra); + + memset(paddingData, 0, sizeof(paddingData)); + + for (i = 0 ; i < count ; i++) { + ret = ssp_spi_write_sync(spi, &addr[j], txSize); + j += txSize; + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + ssp_log("Delay!!!\n"); + msleep(50); + } + + if (extra) { + ret = ssp_spi_write_sync(spi, &addr[j], extra); + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + } + + for (i = 0; i < 4; i++) { + memset(paddingData, 0, sizeof(paddingData)); + ret = ssp_spi_write_sync(spi, paddingData, 8); + if (ret < 0) { + ssp_log("failed to write ssp_spi_write_sync\n"); + goto exit_err; + } + } + ssp_log("Finish!!\n"); +exit_err: + return ret; +} + diff --git a/drivers/sensorhub/stm_patek/ssp_sysfs.c b/drivers/sensorhub/stm_patek/ssp_sysfs.c new file mode 100644 index 000000000000..83bbd563082e --- /dev/null +++ b/drivers/sensorhub/stm_patek/ssp_sysfs.c @@ -0,0 +1,1048 @@ +/* + * Copyright (C) 2012, Samsung Electronics Co. Ltd. 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 as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include "ssp.h" +#include + +#include "../../staging/iio/events.h" +#include "../../staging/iio/iio.h" +#define BATCH_IOCTL_MAGIC 0xFC + +struct batch_config { + int64_t timeout; + int64_t delay; + int flag; +}; +/*************************************************************************/ +/* SSP data delay function */ +/*************************************************************************/ + +int get_msdelay(int64_t dDelayRate) { + return div_s64(dDelayRate, 1000000); +} + +static void enable_sensor(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + unsigned int uNewEnable = 0; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + int ret = 0; + + data->adDelayBuf[iSensorType] = dNewDelay; + maxBatchReportLatency = data->batchLatencyBuf[iSensorType]; + batchOptions = data->batchOptBuf[iSensorType]; + + switch (data->aiCheckStatus[iSensorType]) { + case ADD_SENSOR_STATE: + pr_debug("[SSP]: %s - add %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + + if (iSensorType == TEMPERATURE_HUMIDITY_SENSOR && + dMsDelay == 10000) + pr_info("[SSP] Skip Add Temphumidity Sensor\n"); + else + ret = send_instruction(data, ADD_SENSOR, + iSensorType, uBuf, 9); + pr_info("[SSP], delay %d, timeout %d, flag=%d, ret%d", + dMsDelay, maxBatchReportLatency, uBuf[8], ret); + if (ret <= 0) { + uNewEnable = + (unsigned int)atomic_read(&data->aSensorEnable) + & (~(unsigned int)(1 << iSensorType)); + atomic_set(&data->aSensorEnable, uNewEnable); + + data->aiCheckStatus[iSensorType] = NO_SENSOR_STATE; + break; + } + + data->aiCheckStatus[iSensorType] = RUNNING_SENSOR_STATE; + + if (iSensorType == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); + + input_report_abs(data->prox_input_dev, ABS_DISTANCE, 1); + input_sync(data->prox_input_dev); + } +#ifdef CONFIG_DUAL_LCD + else if ((iSensorType == GEOMAGNETIC_SENSOR)\ + || (iSensorType == ORIENTATION_SENSOR)\ + || (iSensorType == ROTATION_VECTOR)) { + /*flip_status 0:open, 1:close*/ + set_magnetic_cal_with_folder_state(data, ssp_get_flip_status()); + pr_info("[SSP] %s : Folder is %sed now.\n", __func__, + ssp_get_flip_status() ? "clos":"open"); + } +#endif + break; + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + pr_debug("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + data->aiCheckStatus[iSensorType] = ADD_SENSOR_STATE; + } +} + +static void change_sensor_delay(struct ssp_data *data, + int iSensorType, int64_t dNewDelay) +{ + u8 uBuf[9]; + s32 maxBatchReportLatency = 0; + s8 batchOptions = 0; + int64_t dTempDelay = data->adDelayBuf[iSensorType]; + s32 dMsDelay = get_msdelay(dNewDelay); + + data->adDelayBuf[iSensorType] = dNewDelay; + data->batchLatencyBuf[iSensorType] = maxBatchReportLatency; + data->batchOptBuf[iSensorType] = batchOptions; + + switch (data->aiCheckStatus[iSensorType]) { + case RUNNING_SENSOR_STATE: + if (get_msdelay(dTempDelay) + == get_msdelay(data->adDelayBuf[iSensorType])) + break; + + ssp_dbg("[SSP]: %s - Change %u, New = %lldns\n", + __func__, 1 << iSensorType, dNewDelay); + + memcpy(&uBuf[0], &dMsDelay, 4); + memcpy(&uBuf[4], &maxBatchReportLatency, 4); + uBuf[8] = batchOptions; + send_instruction(data, CHANGE_DELAY, iSensorType, uBuf, 9); + + break; + default: + break; + } +} + +/*************************************************************************/ +/* SSP data enable function */ +/*************************************************************************/ + +static int ssp_remove_sensor(struct ssp_data *data, + unsigned int uChangedSensor, unsigned int uNewEnable) +{ + u8 uBuf[4]; + int64_t dSensorDelay = data->adDelayBuf[uChangedSensor]; + pr_debug("[SSP]: %s - remove sensor = %d, current state = %d\n", + __func__, (1 << uChangedSensor), uNewEnable); + + data->adDelayBuf[uChangedSensor] = DEFUALT_POLLING_DELAY; + data->batchLatencyBuf[uChangedSensor] = 0; + data->batchOptBuf[uChangedSensor] = 0; + + if (uChangedSensor == ORIENTATION_SENSOR) { + if (!(atomic_read(&data->aSensorEnable) + & (1 << ACCELEROMETER_SENSOR))) { + uChangedSensor = ACCELEROMETER_SENSOR; + } else { + change_sensor_delay(data, ACCELEROMETER_SENSOR, + data->adDelayBuf[ACCELEROMETER_SENSOR]); + return 0; + } + } else if (uChangedSensor == ACCELEROMETER_SENSOR) { + if (atomic_read(&data->aSensorEnable) + & (1 << ORIENTATION_SENSOR)) { + change_sensor_delay(data, ORIENTATION_SENSOR, + data->adDelayBuf[ORIENTATION_SENSOR]); + return 0; + } + } + + if (!data->bSspShutdown) + if (atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) { + s32 dMsDelay = get_msdelay(dSensorDelay); + memcpy(&uBuf[0], &dMsDelay, 4); + + send_instruction(data, REMOVE_SENSOR, uChangedSensor, uBuf, 4); + } + data->aiCheckStatus[uChangedSensor] = NO_SENSOR_STATE; + + return 0; +} + +/*************************************************************************/ +/* ssp Sysfs */ +/*************************************************************************/ + +static ssize_t show_enable_irq(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + ssp_dbg("[SSP]: %s - %d\n", __func__, !data->bSspShutdown); + + return sprintf(buf, "%d\n", !data->bSspShutdown); +} + +static ssize_t set_enable_irq(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + u8 dTemp; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtou8(buf, 10, &dTemp) < 0) + return -1; + + pr_info("[SSP] %s - %d start\n", __func__, dTemp); + if (dTemp) { + reset_mcu(data); + enable_debug_timer(data); + } else if (!dTemp) { + disable_debug_timer(data); + ssp_enable(data, 0); + } else + pr_err("[SSP] %s - invalid value\n", __func__); + pr_info("[SSP] %s - %d end\n", __func__, dTemp); + return size; +} + +static ssize_t show_sensors_enable(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + pr_debug("[SSP]: %s - cur_enable = %d\n", __func__, + atomic_read(&data->aSensorEnable)); + + return sprintf(buf, "%9u\n", atomic_read(&data->aSensorEnable)); +} + +static ssize_t set_sensors_enable(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + int iRet; + unsigned int uNewEnable = 0, uChangedSensor = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + uNewEnable = (unsigned int)dTemp; + ssp_dbg("[SSP]: %s - new_enable = %u, old_enable = %u\n", __func__, + uNewEnable, atomic_read(&data->aSensorEnable)); + + if ((uNewEnable != atomic_read(&data->aSensorEnable)) && + !(data->uSensorState & (uNewEnable - atomic_read(&data->aSensorEnable)))) { + pr_info("[SSP] %s - %u is not connected(sensortate: 0x%x)\n", + __func__, uNewEnable - atomic_read(&data->aSensorEnable), data->uSensorState); + return -EINVAL; + } + + if (uNewEnable == atomic_read(&data->aSensorEnable)) + return size; + + for (uChangedSensor = 0; uChangedSensor < SENSOR_MAX; uChangedSensor++) { + if ((atomic_read(&data->aSensorEnable) & (1 << uChangedSensor)) + != (uNewEnable & (1 << uChangedSensor))) { + + if (!(uNewEnable & (1 << uChangedSensor))) { + ssp_remove_sensor(data, uChangedSensor, + uNewEnable); /* disable */ + } else { /* Change to ADD_SENSOR_STATE from KitKat */ + if (data->aiCheckStatus[uChangedSensor] == INITIALIZATION_STATE) { + if (uChangedSensor == ACCELEROMETER_SENSOR) { + accel_open_calibration(data); + iRet = set_accel_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_accel_cal failed %d\n", __func__, iRet); + } + else if (uChangedSensor == GYROSCOPE_SENSOR) { + gyro_open_calibration(data); + iRet = set_gyro_cal(data); + if (iRet < 0) + pr_err("[SSP]: %s - set_gyro_cal failed %d\n", __func__, iRet); + } + else if (uChangedSensor == PRESSURE_SENSOR) + pressure_open_calibration(data); + else if (uChangedSensor == PROXIMITY_SENSOR) { + proximity_open_lcd_ldi(data); + proximity_open_calibration(data); + set_proximity_threshold(data, data->uProxHiThresh, data->uProxLoThresh); + } + } + data->aiCheckStatus[uChangedSensor] = ADD_SENSOR_STATE; + enable_sensor(data, uChangedSensor, data->adDelayBuf[uChangedSensor]); + } + break; + } + } + atomic_set(&data->aSensorEnable, uNewEnable); + + return size; +} + +static ssize_t set_flush(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dTemp; + u8 sensor_type = 0; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dTemp) < 0) + return -EINVAL; + + sensor_type = (u8)dTemp; + if (!(atomic_read(&data->aSensorEnable) & (1 << sensor_type))) + return -EINVAL; + + if (flush(data, sensor_type) < 0) { + pr_err("[SSP] ssp returns error for flush(%x)", sensor_type); + return -EINVAL; + } + return size; +} + +static ssize_t show_shake_cam(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int enabled = 0; + + if ((atomic_read(&data->aSensorEnable) & (1 << SHAKE_CAM))) + enabled = 1; + + return sprintf(buf, "%d\n", enabled); +} + +static ssize_t set_shake_cam(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + struct ssp_data *data = dev_get_drvdata(dev); + unsigned long enable = 0; + unsigned char buffer[4]; + unsigned int uNewEnable; + s32 dMsDelay = 20; + + if (strict_strtoul(buf, 10, &enable)) + return -EINVAL; + + memcpy(&buffer[0], &dMsDelay, 4); + + if (enable) { + send_instruction(data, ADD_SENSOR, SHAKE_CAM, + buffer, sizeof(buffer)); + uNewEnable = + (unsigned int)atomic_read(&data->aSensorEnable) + | ((unsigned int)(1 << SHAKE_CAM)); + } else { + send_instruction(data, REMOVE_SENSOR, SHAKE_CAM, + buffer, sizeof(buffer)); + uNewEnable = + (unsigned int)atomic_read(&data->aSensorEnable) + & (~(unsigned int)(1 << SHAKE_CAM)); + } + + atomic_set(&data->aSensorEnable, uNewEnable); + return size; +} + +static ssize_t show_acc_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ACCELEROMETER_SENSOR]); +} + +static ssize_t set_acc_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + if ((atomic_read(&data->aSensorEnable) & (1 << ORIENTATION_SENSOR)) && + (data->adDelayBuf[ORIENTATION_SENSOR] < dNewDelay)) + data->adDelayBuf[ACCELEROMETER_SENSOR] = dNewDelay; + else + change_sensor_delay(data, ACCELEROMETER_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYROSCOPE_SENSOR]); +} + +static ssize_t set_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYROSCOPE_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_SENSOR]); +} + +static ssize_t set_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_uncal_mag_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GEOMAGNETIC_UNCALIB_SENSOR]); +} + +static ssize_t set_uncal_mag_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GEOMAGNETIC_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[ROTATION_VECTOR]); +} + +static ssize_t set_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_game_rot_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GAME_ROTATION_VECTOR]); +} + +static ssize_t set_game_rot_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GAME_ROTATION_VECTOR, dNewDelay); + + return size; +} + +static ssize_t show_step_det_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_DETECTOR]); +} + +static ssize_t set_step_det_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_DETECTOR, dNewDelay); + return size; +} + +static ssize_t show_sig_motion_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[SIG_MOTION_SENSOR]); +} + +static ssize_t set_sig_motion_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, SIG_MOTION_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_step_cnt_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[STEP_COUNTER]); +} + +static ssize_t set_step_cnt_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -1; + + change_sensor_delay(data, STEP_COUNTER, dNewDelay); + return size; +} + +static ssize_t show_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GYRO_UNCALIB_SENSOR]); +} + +static ssize_t set_uncalib_gyro_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GYRO_UNCALIB_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_pressure_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PRESSURE_SENSOR]); +} + +static ssize_t set_pressure_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PRESSURE_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_gesture_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[GESTURE_SENSOR]); +} + +static ssize_t set_gesture_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, GESTURE_SENSOR, dNewDelay); + + return size; +} + +static ssize_t show_light_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[LIGHT_SENSOR]); +} + +static ssize_t set_light_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, LIGHT_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_prox_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", data->adDelayBuf[PROXIMITY_SENSOR]); +} + +static ssize_t set_prox_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, PROXIMITY_SENSOR, dNewDelay); + return size; +} + +static ssize_t show_temp_humi_delay(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + + return sprintf(buf, "%lld\n", + data->adDelayBuf[TEMPERATURE_HUMIDITY_SENSOR]); +} + +static ssize_t set_temp_humi_delay(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) +{ + int64_t dNewDelay; + struct ssp_data *data = dev_get_drvdata(dev); + + if (kstrtoll(buf, 10, &dNewDelay) < 0) + return -EINVAL; + + change_sensor_delay(data, TEMPERATURE_HUMIDITY_SENSOR, dNewDelay); + return size; +} + +ssize_t ssp_sensorhub_voicel_pcmdump_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct ssp_data *data = dev_get_drvdata(dev); + int status = ssp_sensorhub_pcm_dump(data->hub_data); + + return sprintf(buf, "%s\n", (status ? "OK" : "NG")); +} + +static DEVICE_ATTR(voice_pcmdump, S_IRUGO, ssp_sensorhub_voicel_pcmdump_show, NULL); + +static struct device_attribute *voice_attrs[] = { + &dev_attr_voice_pcmdump, + NULL, +}; + +static void initialize_voice_sysfs(struct ssp_data *data) +{ + sensors_register(data->voice_device, data, voice_attrs, "ssp_voice"); +} + +static void remove_voice_sysfs(struct ssp_data *data) +{ + sensors_unregister(data->voice_device, voice_attrs); +} + + +static DEVICE_ATTR(mcu_rev, S_IRUGO, mcu_revision_show, NULL); +static DEVICE_ATTR(mcu_name, S_IRUGO, mcu_model_name_show, NULL); +static DEVICE_ATTR(mcu_update, S_IRUGO, mcu_update_kernel_bin_show, NULL); +static DEVICE_ATTR(mcu_update2, S_IRUGO, + mcu_update_kernel_crashed_bin_show, NULL); +static DEVICE_ATTR(mcu_update_ums, S_IRUGO, mcu_update_ums_bin_show, NULL); +static DEVICE_ATTR(mcu_reset, S_IRUGO, mcu_reset_show, NULL); +static DEVICE_ATTR(mcu_dump, S_IRUGO, mcu_dump_show, NULL); + +static DEVICE_ATTR(mcu_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_factorytest_show, mcu_factorytest_store); +static DEVICE_ATTR(mcu_sleep_test, S_IRUGO | S_IWUSR | S_IWGRP, + mcu_sleep_factorytest_show, mcu_sleep_factorytest_store); +static DEVICE_ATTR(enable, S_IRUGO | S_IWUSR | S_IWGRP, + show_sensors_enable, set_sensors_enable); +static DEVICE_ATTR(enable_irq, S_IRUGO | S_IWUSR | S_IWGRP, + show_enable_irq, set_enable_irq); +static DEVICE_ATTR(rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_rot_delay, set_rot_delay); +static DEVICE_ATTR(game_rot_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_game_rot_delay, set_game_rot_delay); +static DEVICE_ATTR(step_det_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_det_delay, set_step_det_delay); +static DEVICE_ATTR(pressure_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_pressure_delay, set_pressure_delay); +static DEVICE_ATTR(accel_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_acc_delay, set_acc_delay); +static DEVICE_ATTR(gyro_poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gyro_delay, set_gyro_delay); +static DEVICE_ATTR(ssp_flush, S_IWUSR | S_IWGRP, + NULL, set_flush); +static DEVICE_ATTR(shake_cam, S_IRUGO | S_IWUSR | S_IWGRP, + show_shake_cam, set_shake_cam); +static struct device_attribute dev_attr_mag_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_mag_delay, set_mag_delay); +static struct device_attribute dev_attr_uncal_mag_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncal_mag_delay, set_uncal_mag_delay); +static struct device_attribute dev_attr_gesture_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_gesture_delay, set_gesture_delay); +static struct device_attribute dev_attr_light_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_light_delay, set_light_delay); +static struct device_attribute dev_attr_prox_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_prox_delay, set_prox_delay); +static struct device_attribute dev_attr_temp_humi_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_temp_humi_delay, set_temp_humi_delay); +static struct device_attribute dev_attr_sig_motion_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_sig_motion_delay, set_sig_motion_delay); +static struct device_attribute dev_attr_uncalib_gyro_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_uncalib_gyro_delay, set_uncalib_gyro_delay); +static struct device_attribute dev_attr_step_cnt_poll_delay + = __ATTR(poll_delay, S_IRUGO | S_IWUSR | S_IWGRP, + show_step_cnt_delay, set_step_cnt_delay); + +static struct device_attribute *mcu_attrs[] = { + &dev_attr_enable, + &dev_attr_mcu_rev, + &dev_attr_mcu_name, + &dev_attr_mcu_test, + &dev_attr_mcu_reset, + &dev_attr_mcu_dump, + &dev_attr_mcu_update, + &dev_attr_mcu_update2, + &dev_attr_mcu_update_ums, + &dev_attr_mcu_sleep_test, + &dev_attr_enable_irq, + &dev_attr_accel_poll_delay, + &dev_attr_gyro_poll_delay, + &dev_attr_rot_poll_delay, + &dev_attr_game_rot_poll_delay, + &dev_attr_step_det_poll_delay, + &dev_attr_pressure_poll_delay, + &dev_attr_ssp_flush, + &dev_attr_shake_cam, + NULL, +}; + +static long ssp_batch_ioctl(struct file *file, unsigned int cmd, + unsigned long arg) +{ + struct ssp_data *data + = container_of(file->private_data, + struct ssp_data, batch_io_device); + + struct batch_config batch; + + void __user *argp = (void __user *)arg; + int retries = 2; + int ret = 0; + int sensor_type, ms_delay; + int timeout_ms = 0; + u8 uBuf[9]; + + sensor_type = (cmd & 0xFF); + + if ((cmd >> 8 & 0xFF) != BATCH_IOCTL_MAGIC) { + pr_err("[SSP] Invalid BATCH CMD %x", cmd); + return -EINVAL; + } + + while (retries--) { + ret = copy_from_user(&batch, argp, sizeof(batch)); + if (likely(!ret)) + break; + } + if (unlikely(ret)) { + pr_err("[SSP] batch ioctl err(%d)", ret); + return -EINVAL; + } + ms_delay = get_msdelay(batch.delay); + timeout_ms = div_s64(batch.timeout, 1000000); + memcpy(&uBuf[0], &ms_delay, 4); + memcpy(&uBuf[4], &timeout_ms, 4); + uBuf[8] = batch.flag; + + if (batch.timeout){ /* add or dry */ + + if(!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* real batch, NOT DRY, change delay */ + ret = 1; + /* if sensor is not running state, enable will be called. + MCU return fail when receive chage delay inst during NO_SENSOR STATE */ + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } else { /* real batch, DRY RUN */ + ret = send_instruction_sync(data, CHANGE_DELAY, sensor_type, uBuf, 9); + if (ret > 0) { // ret 1 is success + data->batchOptBuf[sensor_type] = (u8)batch.flag; + data->batchLatencyBuf[sensor_type] = timeout_ms; + data->adDelayBuf[sensor_type] = batch.delay; + } + } + } else { /* remove batch or normal change delay, remove or add will be called. */ + + if (!(batch.flag & SENSORS_BATCH_DRY_RUN)) { /* no batch, NOT DRY, change delay */ + data->batchOptBuf[sensor_type] = 0; + data->batchLatencyBuf[sensor_type] = 0; + data->adDelayBuf[sensor_type] = batch.delay; + if (data->aiCheckStatus[sensor_type] == RUNNING_SENSOR_STATE) { + send_instruction(data, CHANGE_DELAY, sensor_type, uBuf, 9); + } + } + } + + pr_info("[SSP] batch %d: delay %lld, timeout %lld, flag %d, ret %d", + sensor_type, batch.delay, batch.timeout, batch.flag, ret); + if (!batch.timeout) + return 0; + if (ret <= 0) + return -EINVAL; + else + return 0; +} + + +static struct file_operations ssp_batch_fops = { + .owner = THIS_MODULE, + .open = nonseekable_open, + .unlocked_ioctl = ssp_batch_ioctl, +}; + + +static void initialize_mcu_factorytest(struct ssp_data *data) +{ + sensors_register(data->mcu_device, data, mcu_attrs, "ssp_sensor"); +} + +static void remove_mcu_factorytest(struct ssp_data *data) +{ + sensors_unregister(data->mcu_device, mcu_attrs); +} + +int initialize_sysfs(struct ssp_data *data) +{ + if (device_create_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay)) + goto err_gesture_input_dev; + + if (device_create_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay)) + goto err_light_input_dev; + + if (device_create_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay)) + goto err_prox_input_dev; + + if (device_create_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay)) + goto err_temp_humi_input_dev; + + if (device_create_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay)) + goto err_mag_input_dev; + + if (device_create_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay)) + goto err_uncal_mag_input_dev; + + if (device_create_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay)) + goto err_sig_motion_input_dev; + + if (device_create_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay)) + goto err_uncalib_gyro_input_dev; + + if (device_create_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay)) + goto err_step_cnt_input_dev; + + data->batch_io_device.minor = MISC_DYNAMIC_MINOR; + data->batch_io_device.name = "batch_io"; + data->batch_io_device.fops = &ssp_batch_fops; + if (misc_register(&data->batch_io_device)) + goto err_batch_io_dev; + + initialize_accel_factorytest(data); + initialize_gyro_factorytest(data); + initialize_prox_factorytest(data); + initialize_light_factorytest(data); + initialize_pressure_factorytest(data); + initialize_magnetic_factorytest(data); + initialize_mcu_factorytest(data); + initialize_gesture_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + initialize_temphumidity_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_MOBEAM + initialize_mobeam(data); +#endif + /*snamy.jeong_0630 voice dump & data*/ + initialize_voice_sysfs(data); + + return SUCCESS; +err_batch_io_dev: + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); +err_step_cnt_input_dev: + device_remove_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay); +err_uncalib_gyro_input_dev: + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); +err_sig_motion_input_dev: + device_remove_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay); +err_uncal_mag_input_dev: + device_remove_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay); +err_mag_input_dev: + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); +err_temp_humi_input_dev: + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); +err_prox_input_dev: + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); +err_light_input_dev: + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); +err_gesture_input_dev: + pr_err("[SSP] error init sysfs"); + return ERROR; +} + +void remove_sysfs(struct ssp_data *data) +{ + device_remove_file(&data->gesture_input_dev->dev, + &dev_attr_gesture_poll_delay); + device_remove_file(&data->light_input_dev->dev, + &dev_attr_light_poll_delay); + device_remove_file(&data->prox_input_dev->dev, + &dev_attr_prox_poll_delay); + device_remove_file(&data->temp_humi_input_dev->dev, + &dev_attr_temp_humi_poll_delay); + device_remove_file(&data->mag_input_dev->dev, + &dev_attr_mag_poll_delay); + device_remove_file(&data->uncal_mag_input_dev->dev, + &dev_attr_uncal_mag_poll_delay); + device_remove_file(&data->sig_motion_input_dev->dev, + &dev_attr_sig_motion_poll_delay); + device_remove_file(&data->uncalib_gyro_input_dev->dev, + &dev_attr_uncalib_gyro_poll_delay); + device_remove_file(&data->step_cnt_input_dev->dev, + &dev_attr_step_cnt_poll_delay); + ssp_batch_fops.unlocked_ioctl = NULL; + misc_deregister(&data->batch_io_device); + remove_accel_factorytest(data); + remove_gyro_factorytest(data); + remove_prox_factorytest(data); + remove_light_factorytest(data); + remove_pressure_factorytest(data); + remove_magnetic_factorytest(data); + remove_mcu_factorytest(data); + remove_gesture_factorytest(data); +#ifdef CONFIG_SENSORS_SSP_SHTC1 + remove_temphumidity_factorytest(data); +#endif +#ifdef CONFIG_SENSORS_SSP_MOBEAM + remove_mobeam(data); +#endif + /*snamy.jeong_0630 voice dump & data*/ + remove_voice_sysfs(data); + + destroy_sensor_class(); +} diff --git a/drivers/slimbus/slim-msm-ctrl.c b/drivers/slimbus/slim-msm-ctrl.c index c662a2b9964e..924a02885484 100644 --- a/drivers/slimbus/slim-msm-ctrl.c +++ b/drivers/slimbus/slim-msm-ctrl.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2014, 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 @@ -207,8 +207,7 @@ static irqreturn_t msm_slim_interrupt(int irq, void *d) * signalling completion/exiting ISR */ mb(); - if (dev->wr_comp) - complete(dev->wr_comp); + msm_slim_manage_tx_msgq(dev, false, NULL); } if (stat & MGR_INT_RX_MSG_RCVD) { u32 rx_buf[10]; @@ -372,8 +371,7 @@ static int msm_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) } } txn->rl--; - pbuf = msm_get_msg_buf(dev, txn->rl); - dev->wr_comp = NULL; + pbuf = msm_get_msg_buf(dev, txn->rl, &done); dev->err = 0; if (txn->dt == SLIM_MSG_DEST_ENUMADDR) { @@ -438,11 +436,8 @@ static int msm_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) if (txn->mt == SLIM_MSG_MT_CORE && mc == SLIM_MSG_MC_BEGIN_RECONFIGURATION) dev->reconf_busy = true; - dev->wr_comp = &done; msm_send_msg_buf(dev, pbuf, txn->rl, MGR_TX_MSG); timeout = wait_for_completion_timeout(&done, HZ); - if (!timeout) - dev->wr_comp = NULL; if (mc == SLIM_MSG_MC_RECONFIGURE_NOW) { if ((txn->mc == (SLIM_MSG_MC_RECONFIGURE_NOW | SLIM_MSG_CLK_PAUSE_SEQ_FLG)) && @@ -505,7 +500,9 @@ static int msm_set_laddr(struct slim_controller *ctrl, const u8 *ea, retry_laddr: init_completion(&done); mutex_lock(&dev->tx_lock); - buf = msm_get_msg_buf(dev, 9); + buf = msm_get_msg_buf(dev, 9, &done); + if (buf == NULL) + return -ENOMEM; buf[0] = SLIM_MSG_ASM_FIRST_WORD(9, SLIM_MSG_MT_CORE, SLIM_MSG_MC_ASSIGN_LOGICAL_ADDRESS, SLIM_MSG_DEST_LOGICALADDR, @@ -513,7 +510,6 @@ static int msm_set_laddr(struct slim_controller *ctrl, const u8 *ea, buf[1] = ea[3] | (ea[2] << 8) | (ea[1] << 16) | (ea[0] << 24); buf[2] = laddr; - dev->wr_comp = &done; ret = msm_send_msg_buf(dev, buf, 9, MGR_TX_MSG); timeout = wait_for_completion_timeout(&done, HZ); if (!timeout) @@ -521,7 +517,6 @@ static int msm_set_laddr(struct slim_controller *ctrl, const u8 *ea, if (dev->err) { ret = dev->err; dev->err = 0; - dev->wr_comp = NULL; } mutex_unlock(&dev->tx_lock); if (ret) { @@ -1183,6 +1178,10 @@ static int __devinit msm_slim_probe(struct platform_device *pdev) ret = -ENOMEM; goto err_get_res_failed; } + dev->wr_comp = kzalloc(sizeof(struct completion *) * MSM_TX_BUFS, + GFP_KERNEL); + if (!dev->wr_comp) + return -ENOMEM; dev->dev = &pdev->dev; platform_set_drvdata(pdev, dev); slim_set_ctrldata(&dev->ctrl, dev); @@ -1271,7 +1270,8 @@ static int __devinit msm_slim_probe(struct platform_device *pdev) dev->ctrl.dev.parent = &pdev->dev; dev->ctrl.dev.of_node = pdev->dev.of_node; - ret = request_irq(dev->irq, msm_slim_interrupt, IRQF_TRIGGER_HIGH, + ret = request_threaded_irq(dev->irq, NULL, msm_slim_interrupt, + IRQF_TRIGGER_HIGH | IRQF_ONESHOT, "msm_slim_irq", dev); if (ret) { dev_err(&pdev->dev, "request IRQ failed\n"); @@ -1400,6 +1400,7 @@ static int __devinit msm_slim_probe(struct platform_device *pdev) err_ioremap_bam_failed: iounmap(dev->base); err_ioremap_failed: + kfree(dev->wr_comp); kfree(dev); err_get_res_failed: release_mem_region(bam_mem->start, resource_size(bam_mem)); @@ -1437,6 +1438,7 @@ static int __devexit msm_slim_remove(struct platform_device *pdev) kthread_stop(dev->rx_msgq_thread); iounmap(dev->bam.base); iounmap(dev->base); + kfree(dev->wr_comp); kfree(dev); bam_mem = platform_get_resource_byname(pdev, IORESOURCE_MEM, "slimbus_bam_physical"); diff --git a/drivers/slimbus/slim-msm-ngd.c b/drivers/slimbus/slim-msm-ngd.c index 69987d93bf83..db9d8421a9cf 100644 --- a/drivers/slimbus/slim-msm-ngd.c +++ b/drivers/slimbus/slim-msm-ngd.c @@ -101,15 +101,13 @@ static irqreturn_t ngd_slim_interrupt(int irq, void *d) dev->err); /* Guarantee that error interrupts are cleared */ mb(); - if (dev->wr_comp) - complete(dev->wr_comp); + msm_slim_manage_tx_msgq(dev, false, NULL); } else if (stat & NGD_INT_TX_MSG_SENT) { writel_relaxed(NGD_INT_TX_MSG_SENT, ngd + NGD_INT_CLR); /* Make sure interrupt is cleared */ mb(); - if (dev->wr_comp) - complete(dev->wr_comp); + msm_slim_manage_tx_msgq(dev, false, NULL); } if (stat & NGD_INT_RX_MSG_RCVD) { u32 rx_buf[10]; @@ -165,27 +163,51 @@ static int ngd_qmi_available(struct notifier_block *n, unsigned long code, case QMI_SERVER_ARRIVE: schedule_work(&qmi->ssr_up); break; - case QMI_SERVER_EXIT: - dev->state = MSM_CTRL_DOWN; + default: + break; + } + return 0; +} + +static int dsp_ssr_notify_cb(struct notifier_block *n, unsigned long code, + void *_cmd) +{ + struct msm_slim_ss *dsp = container_of(n, struct msm_slim_ss, nb); + struct msm_slim_ctrl *dev = container_of(dsp, struct msm_slim_ctrl, + dsp); + + switch (code) { + case SUBSYS_BEFORE_SHUTDOWN: + SLIM_INFO(dev, "SLIM DSP SSR notify cb:%lu\n", code); + /* wait for current transaction */ + mutex_lock(&dev->tx_lock); /* make sure autosuspend is not called until ADSP comes up*/ pm_runtime_get_noresume(dev->dev); + dev->state = MSM_CTRL_DOWN; /* Reset ctrl_up completion */ init_completion(&dev->ctrl_up); - schedule_work(&qmi->ssr_down); + /* disconnect BAM pipes */ + if (dev->use_rx_msgqs == MSM_MSGQ_ENABLED) + dev->use_rx_msgqs = MSM_MSGQ_DOWN; + if (dev->use_tx_msgqs == MSM_MSGQ_ENABLED) + dev->use_tx_msgqs = MSM_MSGQ_DOWN; + msm_slim_sps_exit(dev, false); + schedule_work(&dev->qmi.ssr_down); + mutex_unlock(&dev->tx_lock); break; default: break; } - return 0; + return NOTIFY_DONE; } static int mdm_ssr_notify_cb(struct notifier_block *n, unsigned long code, void *_cmd) { void __iomem *ngd; - struct msm_slim_mdm *mdm = container_of(n, struct msm_slim_mdm, nb); - struct msm_slim_ctrl *dev = container_of(mdm, struct msm_slim_ctrl, - mdm); + struct msm_slim_ss *ext_mdm = container_of(n, struct msm_slim_ss, nb); + struct msm_slim_ctrl *dev = container_of(ext_mdm, struct msm_slim_ctrl, + ext_mdm); struct slim_controller *ctrl = &dev->ctrl; u32 laddr; struct slim_device *sbdev; @@ -200,11 +222,11 @@ static int mdm_ssr_notify_cb(struct notifier_block *n, unsigned long code, * handover later */ msm_slim_qmi_check_framer_request(dev); - dev->mdm.state = MSM_CTRL_DOWN; + dev->ext_mdm.state = MSM_CTRL_DOWN; msm_slim_put_ctrl(dev); break; case SUBSYS_AFTER_POWERUP: - if (dev->mdm.state != MSM_CTRL_DOWN) + if (dev->ext_mdm.state != MSM_CTRL_DOWN) return NOTIFY_DONE; SLIM_INFO(dev, "SLIM %lu external_modem SSR notify cb\n", code); @@ -215,19 +237,21 @@ static int mdm_ssr_notify_cb(struct notifier_block *n, unsigned long code, ngd = dev->base + NGD_BASE(dev->ctrl.nr, dev->ver); laddr = readl_relaxed(ngd + NGD_STATUS); if (!(laddr & NGD_LADDR)) { + mutex_lock(&dev->tx_lock); /* runtime-pm state should be consistent with HW */ pm_runtime_disable(dev->dev); pm_runtime_set_suspended(dev->dev); dev->state = MSM_CTRL_DOWN; + mutex_unlock(&dev->tx_lock); SLIM_INFO(dev, "SLIM MDM SSR (active framer on MDM) dev-down\n"); list_for_each_entry(sbdev, &ctrl->devs, dev_list) slim_report_absent(sbdev); - ngd_slim_power_up(dev, true); + ngd_slim_runtime_resume(dev->dev); pm_runtime_set_active(dev->dev); pm_runtime_enable(dev->dev); } - dev->mdm.state = MSM_CTRL_AWAKE; + dev->ext_mdm.state = MSM_CTRL_AWAKE; msm_slim_put_ctrl(dev); break; default: @@ -286,12 +310,24 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) u16 txn_mc = txn->mc; u8 wbuf[SLIM_MSGQ_BUF_LEN]; bool report_sat = false; + bool sync_wr = true; + + if (txn->mc & SLIM_MSG_CLK_PAUSE_SEQ_FLG) + return -EPROTONOSUPPORT; + + if (txn->mt == SLIM_MSG_MT_CORE && + (txn->mc >= SLIM_MSG_MC_BEGIN_RECONFIGURATION && + txn->mc <= SLIM_MSG_MC_RECONFIGURE_NOW)) + return 0; if (txn->mc == SLIM_USR_MC_REPORT_SATELLITE && txn->mt == SLIM_MSG_MT_SRC_REFERRED_USER) report_sat = true; - if (!pm_runtime_enabled(dev->dev) && dev->state == MSM_CTRL_ASLEEP && - report_sat == false) { + else + mutex_lock(&dev->tx_lock); + + if (!report_sat && !pm_runtime_enabled(dev->dev) && + dev->state == MSM_CTRL_ASLEEP) { /* * Counter-part of system-suspend when runtime-pm is not enabled * This way, resume can be left empty and device will be put in @@ -299,6 +335,7 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) * If the state was DOWN, SSR UP notification will take * care of putting the device in active state. */ + mutex_unlock(&dev->tx_lock); ret = ngd_slim_runtime_resume(dev->dev); if (ret) { @@ -306,21 +343,16 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) ret, dev->state); return -EREMOTEIO; } + mutex_lock(&dev->tx_lock); } - else if (txn->mc & SLIM_MSG_CLK_PAUSE_SEQ_FLG) - return -EPROTONOSUPPORT; - - if (txn->mt == SLIM_MSG_MT_CORE && - (txn->mc >= SLIM_MSG_MC_BEGIN_RECONFIGURATION && - txn->mc <= SLIM_MSG_MC_RECONFIGURE_NOW)) { - return 0; - } /* If txn is tried when controller is down, wait for ADSP to boot */ if (!report_sat) { + if (dev->state == MSM_CTRL_DOWN) { u8 mc = (u8)txn->mc; int timeout; + mutex_unlock(&dev->tx_lock); SLIM_INFO(dev, "ADSP slimbus not up yet\n"); /* * Messages related to data channel management can't @@ -360,27 +392,30 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) return -EREMOTEIO; timeout = wait_for_completion_timeout(&dev->ctrl_up, HZ); - if (!timeout && dev->state == MSM_CTRL_DOWN) + if (!timeout) return -ETIMEDOUT; + mutex_lock(&dev->tx_lock); } + + mutex_unlock(&dev->tx_lock); ret = msm_slim_get_ctrl(dev); + mutex_lock(&dev->tx_lock); /* * Runtime-pm's callbacks are not called until runtime-pm's * error status is cleared * Setting runtime status to suspended clears the error * It also makes HW status cosistent with what SW has it here */ - if (ret < 0) { + if ((pm_runtime_enabled(dev->dev) && ret < 0) || + dev->state == MSM_CTRL_DOWN) { SLIM_ERR(dev, "slim ctrl vote failed ret:%d, state:%d", ret, dev->state); pm_runtime_set_suspended(dev->dev); + mutex_unlock(&dev->tx_lock); msm_slim_put_ctrl(dev); return -EREMOTEIO; - } else { - dev->state = MSM_CTRL_AWAKE; } } - mutex_lock(&dev->tx_lock); if (txn->mt == SLIM_MSG_MT_CORE && (txn->mc == SLIM_MSG_MC_CONNECT_SOURCE || @@ -439,7 +474,25 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) txn->rl = txn->len + 4; } txn->rl--; - pbuf = msm_get_msg_buf(dev, txn->rl); + + if (txn->mt == SLIM_MSG_MT_CORE && txn->comp && + dev->use_tx_msgqs == MSM_MSGQ_ENABLED && + (txn_mc != SLIM_MSG_MC_REQUEST_INFORMATION && + txn_mc != SLIM_MSG_MC_REQUEST_VALUE && + txn_mc != SLIM_MSG_MC_REQUEST_CHANGE_VALUE && + txn_mc != SLIM_MSG_MC_REQUEST_CLEAR_INFORMATION)) { + sync_wr = false; + pbuf = msm_get_msg_buf(dev, txn->rl, txn->comp); + } else if (txn->mt == SLIM_MSG_MT_DEST_REFERRED_USER && + dev->use_tx_msgqs == MSM_MSGQ_ENABLED && + txn->mc == SLIM_USR_MC_REPEAT_CHANGE_VALUE && + txn->comp) { + sync_wr = false; + pbuf = msm_get_msg_buf(dev, txn->rl, txn->comp); + } else { + pbuf = msm_get_msg_buf(dev, txn->rl, &tx_sent); + } + if (!pbuf) { SLIM_ERR(dev, "Message buffer unavailable\n"); ret = -ENOMEM; @@ -510,10 +563,9 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) */ txn_mc = txn->mc; txn_mt = txn->mt; - dev->wr_comp = &tx_sent; ret = msm_send_msg_buf(dev, pbuf, txn->rl, NGD_BASE(dev->ctrl.nr, dev->ver) + NGD_TX_MSG); - if (!ret) { + if (!ret && sync_wr) { int timeout = wait_for_completion_timeout(&tx_sent, HZ); if (!timeout) { ret = -ETIMEDOUT; @@ -522,14 +574,15 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) * transactions don't timeout due to unavailable * descriptors */ - msm_slim_disconnect_endp(dev, &dev->tx_msgq, - &dev->use_tx_msgqs); - msm_slim_connect_endp(dev, &dev->tx_msgq, NULL); + if (dev->state != MSM_CTRL_DOWN) { + msm_slim_disconnect_endp(dev, &dev->tx_msgq, + &dev->use_tx_msgqs); + msm_slim_connect_endp(dev, &dev->tx_msgq, NULL); + } } else { ret = dev->err; } } - dev->wr_comp = NULL; if (ret) { u32 conf, stat, rx_msgq, int_stat, int_en, int_clr; void __iomem *ngd = dev->base + NGD_BASE(dev->ctrl.nr, @@ -570,9 +623,10 @@ static int ngd_xfer_msg(struct slim_controller *ctrl, struct slim_msg_txn *txn) return ret ? ret : dev->err; } ngd_xfer_err: - mutex_unlock(&dev->tx_lock); - if (!report_sat) + if (!report_sat) { + mutex_unlock(&dev->tx_lock); msm_slim_put_ctrl(dev); + } return ret ? ret : dev->err; } @@ -886,7 +940,6 @@ static void ngd_slim_rx(struct msm_slim_ctrl *dev, u8 *buf) enum msm_ctrl_state prev_state = dev->state; SLIM_INFO(dev, "SLIM SAT: capability exchange successful\n"); - dev->state = MSM_CTRL_AWAKE; if (prev_state >= MSM_CTRL_ASLEEP) complete(&dev->reconf); else @@ -970,8 +1023,10 @@ static int ngd_slim_power_up(struct msm_slim_ctrl *dev, bool mdm_restart) if (!mdm_restart && cur_state == MSM_CTRL_DOWN) { int timeout = wait_for_completion_timeout(&dev->qmi.qmi_comp, HZ); - if (!timeout) + if (!timeout) { SLIM_ERR(dev, "slimbus QMI init timed out\n"); + return -EREMOTEIO; + } } /* No need to vote if contorller is not in low power mode */ @@ -1058,11 +1113,11 @@ static int ngd_slim_power_up(struct msm_slim_ctrl *dev, bool mdm_restart) SLIM_ERR(dev, "Failed to receive master capability\n"); return -ETIMEDOUT; } - if (cur_state == MSM_CTRL_DOWN) { - complete(&dev->ctrl_up); - /* Resetting the log level */ - SLIM_RST_LOGLVL(dev); - } + /* mutliple transactions waiting on slimbus to power up? */ + if (cur_state == MSM_CTRL_DOWN) + complete_all(&dev->ctrl_up); + /* Resetting the log level */ + SLIM_RST_LOGLVL(dev); return 0; } @@ -1216,12 +1271,6 @@ static void ngd_adsp_down(struct work_struct *work) struct slim_device *sbdev; ngd_slim_enable(dev, false); - /* disconnect BAM pipes */ - if (dev->use_rx_msgqs == MSM_MSGQ_ENABLED) - dev->use_rx_msgqs = MSM_MSGQ_DOWN; - if (dev->use_tx_msgqs == MSM_MSGQ_ENABLED) - dev->use_tx_msgqs = MSM_MSGQ_DOWN; - msm_slim_sps_exit(dev, false); /* device up should be called again after SSR */ list_for_each_entry(sbdev, &ctrl->devs, dev_list) slim_report_absent(sbdev); @@ -1299,13 +1348,17 @@ static int __devinit ngd_slim_probe(struct platform_device *pdev) dev_err(&pdev->dev, "no memory for MSM slimbus controller\n"); return PTR_ERR(dev); } + dev->wr_comp = kzalloc(sizeof(struct completion *) * MSM_TX_BUFS, + GFP_KERNEL); + if (!dev->wr_comp) + return -ENOMEM; dev->dev = &pdev->dev; platform_set_drvdata(pdev, dev); slim_set_ctrldata(&dev->ctrl, dev); /* Create IPC log context */ dev->ipc_slimbus_log = ipc_log_context_create(IPC_SLIMBUS_LOG_PAGES, - dev_name(dev->dev)); + dev_name(dev->dev), 0); if (!dev->ipc_slimbus_log) dev_err(&pdev->dev, "error creating ipc_logging context\n"); else { @@ -1380,6 +1433,7 @@ static int __devinit ngd_slim_probe(struct platform_device *pdev) init_completion(&dev->reconf); init_completion(&dev->ctrl_up); mutex_init(&dev->tx_lock); + mutex_init(&dev->tx_buf_lock); spin_lock_init(&dev->rx_lock); dev->ee = 1; dev->irq = irq->start; @@ -1407,8 +1461,9 @@ static int __devinit ngd_slim_probe(struct platform_device *pdev) dev->ctrl.dev.of_node = pdev->dev.of_node; dev->state = MSM_CTRL_DOWN; - ret = request_irq(dev->irq, ngd_slim_interrupt, - IRQF_TRIGGER_HIGH, "ngd_slim_irq", dev); + ret = request_threaded_irq(dev->irq, NULL, + ngd_slim_interrupt, + IRQF_TRIGGER_HIGH | IRQF_ONESHOT, "ngd_slim_irq", dev); if (ret) { dev_err(&pdev->dev, "request IRQ failed\n"); @@ -1422,14 +1477,21 @@ static int __devinit ngd_slim_probe(struct platform_device *pdev) pm_runtime_set_suspended(dev->dev); pm_runtime_enable(dev->dev); + dev->dsp.nb.notifier_call = dsp_ssr_notify_cb; + dev->dsp.ssr = subsys_notif_register_notifier("adsp", + &dev->dsp.nb); + if (IS_ERR_OR_NULL(dev->dsp.ssr)) + dev_err(dev->dev, + "subsys_notif_register_notifier failed %p", + dev->dsp.ssr); if (slim_mdm) { - dev->mdm.nb.notifier_call = mdm_ssr_notify_cb; - dev->mdm.ssr = subsys_notif_register_notifier("external_modem", - &dev->mdm.nb); - if (IS_ERR_OR_NULL(dev->mdm.ssr)) + dev->ext_mdm.nb.notifier_call = mdm_ssr_notify_cb; + dev->ext_mdm.ssr = subsys_notif_register_notifier("external_modem", + &dev->ext_mdm.nb); + if (IS_ERR_OR_NULL(dev->ext_mdm.ssr)) dev_err(dev->dev, "subsys_notif_register_notifier failed %p", - dev->mdm.ssr); + dev->ext_mdm.ssr); } INIT_WORK(&dev->qmi.ssr_down, ngd_adsp_down); @@ -1471,6 +1533,7 @@ static int __devinit ngd_slim_probe(struct platform_device *pdev) if (dev->sysfs_created) sysfs_remove_file(&dev->dev->kobj, &dev_attr_debug_mask.attr); + kfree(dev->wr_comp); kfree(dev); return ret; } @@ -1485,13 +1548,18 @@ static int __devexit ngd_slim_remove(struct platform_device *pdev) qmi_svc_event_notifier_unregister(SLIMBUS_QMI_SVC_ID, SLIMBUS_QMI_INS_ID, &dev->qmi.nb); pm_runtime_disable(&pdev->dev); - if (!IS_ERR_OR_NULL(dev->mdm.ssr)) - subsys_notif_unregister_notifier(dev->mdm.ssr, &dev->mdm.nb); + if (!IS_ERR_OR_NULL(dev->dsp.ssr)) + subsys_notif_unregister_notifier(dev->dsp.ssr, + &dev->dsp.nb); + if (!IS_ERR_OR_NULL(dev->ext_mdm.ssr)) + subsys_notif_unregister_notifier(dev->ext_mdm.ssr, + &dev->ext_mdm.nb); free_irq(dev->irq, dev); slim_del_controller(&dev->ctrl); kthread_stop(dev->rx_msgq_thread); iounmap(dev->bam.base); iounmap(dev->base); + kfree(dev->wr_comp); kfree(dev); return 0; } @@ -1501,8 +1569,10 @@ static int ngd_slim_runtime_idle(struct device *device) { struct platform_device *pdev = to_platform_device(device); struct msm_slim_ctrl *dev = platform_get_drvdata(pdev); + mutex_lock(&dev->tx_lock); if (dev->state == MSM_CTRL_AWAKE) dev->state = MSM_CTRL_IDLE; + mutex_unlock(&dev->tx_lock); dev_dbg(device, "pm_runtime: idle...\n"); pm_request_autosuspend(device); return -EAGAIN; @@ -1519,6 +1589,7 @@ static int ngd_slim_runtime_resume(struct device *device) struct platform_device *pdev = to_platform_device(device); struct msm_slim_ctrl *dev = platform_get_drvdata(pdev); int ret = 0; + mutex_lock(&dev->tx_lock); if (dev->state >= MSM_CTRL_ASLEEP) ret = ngd_slim_power_up(dev, false); if (ret) { @@ -1530,6 +1601,7 @@ static int ngd_slim_runtime_resume(struct device *device) } else { dev->state = MSM_CTRL_AWAKE; } + mutex_unlock(&dev->tx_lock); SLIM_INFO(dev, "Slim runtime resume: ret %d\n", ret); return ret; } @@ -1540,6 +1612,7 @@ static int ngd_slim_runtime_suspend(struct device *device) struct platform_device *pdev = to_platform_device(device); struct msm_slim_ctrl *dev = platform_get_drvdata(pdev); int ret = 0; + mutex_lock(&dev->tx_lock); ret = ngd_slim_power_down(dev); if (ret) { if (ret != -EBUSY) @@ -1548,6 +1621,7 @@ static int ngd_slim_runtime_suspend(struct device *device) } else { dev->state = MSM_CTRL_ASLEEP; } + mutex_unlock(&dev->tx_lock); SLIM_INFO(dev, "Slim runtime suspend: ret %d\n", ret); return ret; } diff --git a/drivers/slimbus/slim-msm.c b/drivers/slimbus/slim-msm.c index 9a5d70babb19..30caf7cef4e9 100644 --- a/drivers/slimbus/slim-msm.c +++ b/drivers/slimbus/slim-msm.c @@ -11,6 +11,7 @@ */ #include #include +#include #include #include #include "slim-msm.h" @@ -398,9 +399,9 @@ static int msm_slim_post_tx_msgq(struct msm_slim_ctrl *dev, u8 *buf, int len) struct msm_slim_endp *endpoint = &dev->tx_msgq; struct sps_mem_buffer *mem = &endpoint->buf; struct sps_pipe *pipe = endpoint->sps; - int ix = (buf - (u8 *)mem->base) / SLIM_MSGQ_BUF_LEN; + int ix = (buf - (u8 *)mem->base); - phys_addr_t phys_addr = mem->phys_base + (SLIM_MSGQ_BUF_LEN * ix); + phys_addr_t phys_addr = mem->phys_base + ix; for (ret = 0; ret < ((len + 3) >> 2); ret++) pr_debug("BAM TX buf[%d]:0x%x", ret, ((u32 *)buf)[ret]); @@ -413,29 +414,110 @@ static int msm_slim_post_tx_msgq(struct msm_slim_ctrl *dev, u8 *buf, int len) return ret; } -static u32 *msm_slim_tx_msgq_return(struct msm_slim_ctrl *dev) +void msm_slim_tx_msg_return(struct msm_slim_ctrl *dev) { struct msm_slim_endp *endpoint = &dev->tx_msgq; struct sps_mem_buffer *mem = &endpoint->buf; struct sps_pipe *pipe = endpoint->sps; struct sps_iovec iovec; - int ret; - - /* first transaction after establishing connection */ - if (dev->tx_idx == -1) { - dev->tx_idx = 0; - return mem->base; + int idx, ret = 0; + if (dev->use_tx_msgqs != MSM_MSGQ_ENABLED) { + /* use 1 buffer, non-blocking writes are not possible */ + if (dev->wr_comp[0]) { + struct completion *comp = dev->wr_comp[0]; + dev->wr_comp[0] = NULL; + complete(comp); + } + return; } - ret = sps_get_iovec(pipe, &iovec); - if (ret || iovec.addr == 0) { - dev_err(dev->dev, "sps_get_iovec() failed 0x%x\n", ret); + while (!ret) { + ret = sps_get_iovec(pipe, &iovec); + if (ret || iovec.addr == 0) { + if (ret) + pr_err("SLIM TX get IOVEC failed:%d", ret); + return; + } + idx = (int) ((iovec.addr - mem->phys_base) / SLIM_MSGQ_BUF_LEN); + if (idx < MSM_TX_BUFS && dev->wr_comp[idx]) { + struct completion *comp = dev->wr_comp[idx]; + dev->wr_comp[idx] = NULL; + complete(comp); + } + /* reclaim all packets that were delivered out of order */ + if (idx != dev->tx_head) + pr_err("SLIM OUT OF ORDER TX:idx:%d, head:%d", idx, + dev->tx_head); + while (idx == dev->tx_head) { + dev->tx_head = (dev->tx_head + 1) % MSM_TX_BUFS; + idx++; + if (dev->tx_head == dev->tx_tail || + dev->wr_comp[idx] != NULL) + break; + } + } +} + +static u32 *msm_slim_modify_tx_buf(struct msm_slim_ctrl *dev, + struct completion *comp) +{ + struct msm_slim_endp *endpoint = &dev->tx_msgq; + struct sps_mem_buffer *mem = &endpoint->buf; + u32 *retbuf = NULL; + if ((dev->tx_tail + 1) % MSM_TX_BUFS == dev->tx_head) + return NULL; + + retbuf = (u32 *)((u8 *)mem->base + + (dev->tx_tail * SLIM_MSGQ_BUF_LEN)); + dev->wr_comp[dev->tx_tail] = comp; + dev->tx_tail = (dev->tx_tail + 1) % MSM_TX_BUFS; + return retbuf; +} +u32 *msm_slim_manage_tx_msgq(struct msm_slim_ctrl *dev, bool getbuf, + struct completion *comp) +{ + int ret = 0; + int retries = 0; + u32 *retbuf = NULL; + + mutex_lock(&dev->tx_buf_lock); + if (!getbuf) { + msm_slim_tx_msg_return(dev); + mutex_unlock(&dev->tx_buf_lock); return NULL; } - /* Calculate buffer index */ - dev->tx_idx = ((int)(iovec.addr - mem->phys_base)) / SLIM_MSGQ_BUF_LEN; + retbuf = msm_slim_modify_tx_buf(dev, comp); + if (retbuf) { + mutex_unlock(&dev->tx_buf_lock); + return retbuf; + } - return (u32 *)((u8 *)mem->base + (dev->tx_idx * SLIM_MSGQ_BUF_LEN)); + do { + msm_slim_tx_msg_return(dev); + retbuf = msm_slim_modify_tx_buf(dev, comp); + if (!retbuf) + ret = -EAGAIN; + else { + if (retries > 0) + SLIM_INFO(dev, "SLIM TX retrieved:%d retries", + retries); + mutex_unlock(&dev->tx_buf_lock); + return retbuf; + } + + /* + * superframe size will vary based on clock gear + * 1 superframe will consume at least 1 message + * if HW is in good condition. With MX_RETRIES, + * make sure we wait for a [3, 10] superframes + * before deciding HW couldn't process descriptors + */ + usleep_range(100, 250); + retries++; + } while (ret && (retries < INIT_MX_RETRIES)); + + mutex_unlock(&dev->tx_buf_lock); + return NULL; } int msm_send_msg_buf(struct msm_slim_ctrl *dev, u32 *buf, u8 len, u32 tx_reg) @@ -453,16 +535,19 @@ int msm_send_msg_buf(struct msm_slim_ctrl *dev, u32 *buf, u8 len, u32 tx_reg) return msm_slim_post_tx_msgq(dev, (u8 *)buf, len); } -u32 *msm_get_msg_buf(struct msm_slim_ctrl *dev, int len) +u32 *msm_get_msg_buf(struct msm_slim_ctrl *dev, int len, + struct completion *comp) { /* * Currently we block a transaction until the current one completes. * In case we need multiple transactions, use message Q */ - if (dev->use_tx_msgqs != MSM_MSGQ_ENABLED) + if (dev->use_tx_msgqs != MSM_MSGQ_ENABLED) { + dev->wr_comp[0] = comp; return dev->tx_buf; + } - return msm_slim_tx_msgq_return(dev); + return msm_slim_manage_tx_msgq(dev, true, comp); } static void @@ -612,7 +697,8 @@ int msm_slim_connect_endp(struct msm_slim_ctrl *dev, } dev->use_rx_msgqs = MSM_MSGQ_ENABLED; } else { - dev->tx_idx = -1; + dev->tx_tail = 0; + dev->tx_head = 0; dev->use_tx_msgqs = MSM_MSGQ_ENABLED; } @@ -719,16 +805,18 @@ static int msm_slim_init_tx_msgq(struct msm_slim_ctrl *dev, u32 pipe_reg) config->options = SPS_O_ERROR | SPS_O_NO_Q | SPS_O_ACK_TRANSFERS | SPS_O_AUTO_ENABLE; + /* Desc and TX buf are circular queues */ /* Allocate memory for the FIFO descriptors */ ret = msm_slim_sps_mem_alloc(dev, descr, - MSM_TX_BUFS * sizeof(struct sps_iovec)); + (MSM_TX_BUFS + 1) * sizeof(struct sps_iovec)); if (ret) { dev_err(dev->dev, "unable to allocate SPS descriptors\n"); goto alloc_descr_failed; } - /* Allocate memory for the message buffer(s), N descrs, 40-byte mesg */ - ret = msm_slim_sps_mem_alloc(dev, mem, MSM_TX_BUFS * SLIM_MSGQ_BUF_LEN); + /* Allocate TX buffer from which descriptors are created */ + ret = msm_slim_sps_mem_alloc(dev, mem, ((MSM_TX_BUFS + 1) * + SLIM_MSGQ_BUF_LEN)); if (ret) { dev_err(dev->dev, "dma_alloc_coherent failed\n"); goto alloc_buffer_failed; @@ -871,10 +959,16 @@ static void msm_slim_remove_ep(struct msm_slim_ctrl *dev, void msm_slim_sps_exit(struct msm_slim_ctrl *dev, bool dereg) { + int i; + if (dev->use_rx_msgqs >= MSM_MSGQ_ENABLED) msm_slim_remove_ep(dev, &dev->rx_msgq, &dev->use_rx_msgqs); if (dev->use_tx_msgqs >= MSM_MSGQ_ENABLED) msm_slim_remove_ep(dev, &dev->tx_msgq, &dev->use_tx_msgqs); + for (i = dev->port_b; i < MSM_SLIM_NPORTS; i++) { + if (dev->pipes[i - dev->port_b].connected) + msm_slim_disconn_pipe_port(dev, i - dev->port_b); + } if (dereg) { int i; for (i = dev->port_b; i < MSM_SLIM_NPORTS; i++) { diff --git a/drivers/slimbus/slim-msm.h b/drivers/slimbus/slim-msm.h index bd02353f2bdc..7f4a161a70e9 100644 --- a/drivers/slimbus/slim-msm.h +++ b/drivers/slimbus/slim-msm.h @@ -22,7 +22,7 @@ /* Per spec.max 40 bytes per received message */ #define SLIM_MSGQ_BUF_LEN 40 -#define MSM_TX_BUFS 2 +#define MSM_TX_BUFS 32 #define SLIM_USR_MC_GENERIC_ACK 0x25 #define SLIM_USR_MC_MASTER_CAPABILITY 0x0 @@ -213,7 +213,7 @@ struct msm_slim_qmi { struct work_struct ssr_up; }; -struct msm_slim_mdm { +struct msm_slim_ss { struct notifier_block nb; void *ssr; enum msm_ctrl_state state; @@ -235,14 +235,15 @@ struct msm_slim_ctrl { u8 msg_cnt; u32 tx_buf[10]; u8 rx_msgs[MSM_CONCUR_MSG][SLIM_MSGQ_BUF_LEN]; - int tx_idx; + int tx_tail; + int tx_head; spinlock_t rx_lock; int head; int tail; int irq; int err; int ee; - struct completion *wr_comp; + struct completion **wr_comp; struct msm_slim_sat *satd[MSM_MAX_NSATS]; struct msm_slim_endp pipes[7]; struct msm_slim_sps_bam bam; @@ -253,6 +254,7 @@ struct msm_slim_ctrl { struct clk *rclk; struct clk *hclk; struct mutex tx_lock; + struct mutex tx_buf_lock; u8 pgdla; enum msm_slim_msgq use_rx_msgqs; enum msm_slim_msgq use_tx_msgqs; @@ -266,7 +268,8 @@ struct msm_slim_ctrl { u32 ver; struct msm_slim_qmi qmi; struct msm_slim_pdata pdata; - struct msm_slim_mdm mdm; + struct msm_slim_ss ext_mdm; + struct msm_slim_ss dsp; int default_ipc_log_mask; int ipc_log_mask; bool sysfs_created; @@ -371,7 +374,10 @@ enum slim_port_err msm_slim_port_xfer_status(struct slim_controller *ctr, int msm_slim_port_xfer(struct slim_controller *ctrl, u8 pn, phys_addr_t iobuf, u32 len, struct completion *comp); int msm_send_msg_buf(struct msm_slim_ctrl *dev, u32 *buf, u8 len, u32 tx_reg); -u32 *msm_get_msg_buf(struct msm_slim_ctrl *dev, int len); +u32 *msm_get_msg_buf(struct msm_slim_ctrl *dev, int len, + struct completion *comp); +u32 *msm_slim_manage_tx_msgq(struct msm_slim_ctrl *dev, bool getbuf, + struct completion *comp); int msm_slim_rx_msgq_get(struct msm_slim_ctrl *dev, u32 *data, int offset); int msm_slim_sps_init(struct msm_slim_ctrl *dev, struct resource *bam_mem, u32 pipe_reg, bool remote); diff --git a/drivers/slimbus/slimbus.c b/drivers/slimbus/slimbus.c index fecf5ecb2842..27b92bae854f 100644 --- a/drivers/slimbus/slimbus.c +++ b/drivers/slimbus/slimbus.c @@ -1100,7 +1100,7 @@ int slim_xfer_msg(struct slim_controller *ctrl, struct slim_device *sbdev, } else ret = slim_processtxn(ctrl, SLIM_MSG_DEST_LOGICALADDR, mc, ec, SLIM_MSG_MT_CORE, rbuf, wbuf, len, mlen, - NULL, sbdev->laddr, NULL); + msg->comp, sbdev->laddr, NULL); xfer_err: return ret; } diff --git a/drivers/staging/android/binder.c b/drivers/staging/android/binder.c index c294fe35739e..0168ab2f3935 100644 --- a/drivers/staging/android/binder.c +++ b/drivers/staging/android/binder.c @@ -1405,6 +1405,7 @@ static void binder_transaction(struct binder_proc *proc, struct binder_transaction *t; struct binder_work *tcomplete; size_t *offp, *off_end; + size_t off_min; struct binder_proc *target_proc; struct binder_thread *target_thread = NULL; struct binder_node *target_node = NULL; @@ -1605,18 +1606,22 @@ static void binder_transaction(struct binder_proc *proc, goto err_bad_offset; } off_end = (void *)offp + tr->offsets_size; + off_min = 0; for (; offp < off_end; offp++) { struct flat_binder_object *fp; if (*offp > t->buffer->data_size - sizeof(*fp) || + *offp < off_min || t->buffer->data_size < sizeof(*fp) || !IS_ALIGNED(*offp, sizeof(void *))) { binder_user_error("binder: %d:%d got transaction with " - "invalid offset, %zd\n", - proc->pid, thread->pid, *offp); + "invalid offset, %zd(min %zd, max %zd)\n", + proc->pid, thread->pid, *offp, (u32)off_min, + (u32)(t->buffer->data_size - sizeof(*fp))); return_error = BR_FAILED_REPLY; goto err_bad_offset; } fp = (struct flat_binder_object *)(t->buffer->data + *offp); + off_min = *offp + sizeof(struct flat_binder_object); switch (fp->type) { case BINDER_TYPE_BINDER: case BINDER_TYPE_WEAK_BINDER: { diff --git a/drivers/staging/android/ram_console.c b/drivers/staging/android/ram_console.c index 8e4038b9a40a..c778180ff6cf 100644 --- a/drivers/staging/android/ram_console.c +++ b/drivers/staging/android/ram_console.c @@ -55,6 +55,7 @@ static int __devinit ram_console_probe(struct platform_device *pdev) struct ram_console_platform_data *pdata = pdev->dev.platform_data; struct persistent_ram_zone *prz; + pdev->dev.init_name = "ram_console"; prz = persistent_ram_init_ringbuffer(&pdev->dev, true); if (IS_ERR(prz)) return PTR_ERR(prz); @@ -74,9 +75,15 @@ static int __devinit ram_console_probe(struct platform_device *pdev) return 0; } +static struct of_device_id msm_match_table[] = { + {.compatible = "ram_console"}, + {}, +}; + static struct platform_driver ram_console_driver = { .driver = { .name = "ram_console", + .of_match_table = msm_match_table, }, .probe = ram_console_probe, }; diff --git a/drivers/tty/n_smux.c b/drivers/tty/n_smux.c index e36806fba0c8..ffcfe528373f 100644 --- a/drivers/tty/n_smux.c +++ b/drivers/tty/n_smux.c @@ -1,6 +1,6 @@ /* drivers/tty/n_smux.c * - * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2014, 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 @@ -3905,7 +3905,7 @@ static int __init smux_init(void) return ret; } - log_ctx = ipc_log_context_create(1, "smux"); + log_ctx = ipc_log_context_create(1, "smux", 0); if (!log_ctx) { SMUX_ERR("%s: unable to create log context\n", __func__); disable_ipc_logging = 1; diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c index 8eb55731dca4..91cae305b888 100644 --- a/drivers/tty/n_tty.c +++ b/drivers/tty/n_tty.c @@ -1999,7 +1999,9 @@ static ssize_t n_tty_write(struct tty_struct *tty, struct file *file, tty->ops->flush_chars(tty); } else { while (nr > 0) { + mutex_lock(&tty->output_lock); c = tty->ops->write(tty, b, nr); + mutex_unlock(&tty->output_lock); if (c < 0) { retval = c; goto break_out; diff --git a/drivers/tty/serial/msm_serial_hs.c b/drivers/tty/serial/msm_serial_hs.c index e1e01c2705b3..702d4e954d38 100644 --- a/drivers/tty/serial/msm_serial_hs.c +++ b/drivers/tty/serial/msm_serial_hs.c @@ -3,7 +3,7 @@ * MSM 7k High speed uart driver * * Copyright (c) 2008 Google Inc. - * Copyright (c) 2007-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2007-2014, The Linux Foundation. All rights reserved. * Modified: Nick Pelly * * All source code in this file is licensed under the following license @@ -62,8 +62,6 @@ #include #include -#include -#include #include #include #include @@ -94,7 +92,6 @@ module_param_named(debug_mask, hs_serial_debug_mask, #define MSM_HS_DBG(x...) do { \ if (hs_serial_debug_mask >= DBG_LEV) { \ - pr_debug(x); \ if (ipc_msm_hs_log_ctxt) \ ipc_log_string(ipc_msm_hs_log_ctxt, x); \ } \ @@ -102,7 +99,6 @@ module_param_named(debug_mask, hs_serial_debug_mask, #define MSM_HS_INFO(x...) do { \ if (hs_serial_debug_mask >= INFO_LEV) {\ - pr_info(x); \ if (ipc_msm_hs_log_ctxt) \ ipc_log_string(ipc_msm_hs_log_ctxt, x); \ } \ @@ -141,7 +137,7 @@ enum flush_reason { FLUSH_NONE, FLUSH_DATA_READY, FLUSH_DATA_INVALID, /* values after this indicate invalid data */ - FLUSH_IGNORE = FLUSH_DATA_INVALID, + FLUSH_IGNORE, FLUSH_STOP, FLUSH_SHUTDOWN, }; @@ -178,11 +174,6 @@ struct msm_hs_tx { unsigned int dma_in_flight; /* tx dma in progress */ enum flush_reason flush; wait_queue_head_t wait; - struct msm_dmov_cmd xfer; - dmov_box *command_ptr; - u32 *command_ptr_ptr; - dma_addr_t mapped_cmd_ptr; - dma_addr_t mapped_cmd_ptr_ptr; int tx_count; dma_addr_t dma_base; struct tasklet_struct tlet; @@ -191,11 +182,6 @@ struct msm_hs_tx { struct msm_hs_rx { enum flush_reason flush; - struct msm_dmov_cmd xfer; - dma_addr_t cmdptr_dmaaddr; - dmov_box *command_ptr; - u32 *command_ptr_ptr; - dma_addr_t mapped_cmd_ptr; wait_queue_head_t wait; dma_addr_t rbuffer; unsigned char *buffer; @@ -205,8 +191,9 @@ struct msm_hs_rx { struct delayed_work flip_insert_work; struct tasklet_struct tlet; struct msm_hs_sps_ep_conn_data prod; + bool rx_cmd_queued; + bool rx_cmd_exec; }; - enum buffer_states { NONE_PENDING = 0x0, FIFO_OVERRUN = 0x1, @@ -231,14 +218,6 @@ struct msm_hs_port { struct clk *pclk; struct msm_hs_tx tx; struct msm_hs_rx rx; - /* gsbi uarts have to do additional writes to gsbi memory */ - /* block and top control status block. The following pointers */ - /* keep a handle to these blocks. */ - unsigned char __iomem *mapped_gsbi; - int dma_tx_channel; - int dma_rx_channel; - int dma_tx_crci; - int dma_rx_crci; struct hrtimer clk_off_timer; /* to poll TXEMT before clock off */ ktime_t clk_off_delay; enum msm_hs_clk_states_e clk_state; @@ -252,7 +231,6 @@ struct msm_hs_port { struct workqueue_struct *hsuart_wq; /* hsuart workqueue */ struct mutex clk_mutex; /* mutex to guard against clock off/clock on */ struct work_struct disconnect_rx_endpoint; /* disconnect rx_endpoint */ - bool tty_flush_receive; enum uart_core_type uart_type; u32 bam_handle; resource_size_t bam_mem; @@ -268,67 +246,14 @@ struct msm_hs_port { u32 bus_perf_client; /* BLSP UART required BUS Scaling data */ struct msm_bus_scale_pdata *bus_scale_table; - bool rx_discard_flush_issued; int rx_count_callback; - unsigned int *reg_ptr; bool rx_bam_inprogress; -}; - -unsigned int regmap_nonblsp[UART_DM_LAST] = { - [UART_DM_MR1] = UARTDM_MR1_ADDR, - [UART_DM_MR2] = UARTDM_MR2_ADDR, - [UART_DM_IMR] = UARTDM_IMR_ADDR, - [UART_DM_SR] = UARTDM_SR_ADDR, - [UART_DM_CR] = UARTDM_CR_ADDR, - [UART_DM_CSR] = UARTDM_CSR_ADDR, - [UART_DM_IPR] = UARTDM_IPR_ADDR, - [UART_DM_ISR] = UARTDM_ISR_ADDR, - [UART_DM_RX_TOTAL_SNAP] = UARTDM_RX_TOTAL_SNAP_ADDR, - [UART_DM_TFWR] = UARTDM_TFWR_ADDR, - [UART_DM_RFWR] = UARTDM_RFWR_ADDR, - [UART_DM_RF] = UARTDM_RF_ADDR, - [UART_DM_TF] = UARTDM_TF_ADDR, - [UART_DM_MISR] = UARTDM_MISR_ADDR, - [UART_DM_DMRX] = UARTDM_DMRX_ADDR, - [UART_DM_NCF_TX] = UARTDM_NCF_TX_ADDR, - [UART_DM_DMEN] = UARTDM_DMEN_ADDR, - [UART_DM_TXFS] = UARTDM_TXFS_ADDR, - [UART_DM_RXFS] = UARTDM_RXFS_ADDR, - [UART_DM_RX_TRANS_CTRL] = UARTDM_RX_TRANS_CTRL_ADDR, -}; - -unsigned int regmap_blsp[UART_DM_LAST] = { - [UART_DM_MR1] = 0x0, - [UART_DM_MR2] = 0x4, - [UART_DM_IMR] = 0xb0, - [UART_DM_SR] = 0xa4, - [UART_DM_CR] = 0xa8, - [UART_DM_CSR] = 0xa0, - [UART_DM_IPR] = 0x18, - [UART_DM_ISR] = 0xb4, - [UART_DM_RX_TOTAL_SNAP] = 0xbc, - [UART_DM_TFWR] = 0x1c, - [UART_DM_RFWR] = 0x20, - [UART_DM_RF] = 0x140, - [UART_DM_TF] = 0x100, - [UART_DM_MISR] = 0xac, - [UART_DM_DMRX] = 0x34, - [UART_DM_NCF_TX] = 0x40, - [UART_DM_DMEN] = 0x3c, - [UART_DM_TXFS] = 0x4c, - [UART_DM_RXFS] = 0x50, - [UART_DM_RX_TRANS_CTRL] = 0xcc, + wait_queue_head_t bam_disconnect_wait; }; static struct of_device_id msm_hs_match_table[] = { { .compatible = "qcom,msm-hsuart-v14", - .data = regmap_blsp - }, - { - .compatible = "qcom,msm-hsuart-v13", - .data = regmap_nonblsp }, - {} }; @@ -345,7 +270,6 @@ static struct of_device_id msm_hs_match_table[] = { #define BLSP_UART_CLK_FMAX 63160000 static struct dentry *debug_base; -static struct msm_hs_port q_uart_port[UARTDM_NR]; static struct platform_driver msm_serial_hs_platform_driver; static struct uart_driver msm_hs_driver; static struct uart_ops msm_hs_ops; @@ -353,25 +277,11 @@ static void msm_hs_start_rx_locked(struct uart_port *uport); static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr); static void flip_insert_work(struct work_struct *work); static void msm_hs_bus_voting(struct msm_hs_port *msm_uport, unsigned int vote); +static struct msm_hs_port *msm_hs_get_hs_port(int port_index); #define UARTDM_TO_MSM(uart_port) \ container_of((uart_port), struct msm_hs_port, uport) -struct uart_port * msm_hs_get_port_by_id(int num) -{ - struct uart_port *uport; - struct msm_hs_port *msm_uport; - - if (num < 0 || num >= UARTDM_NR) - return NULL; - - msm_uport = &q_uart_port[num]; - - uport = &(msm_uport->uport); - - return uport; -} - static int msm_hs_ioctl(struct uart_port *uport, unsigned int cmd, unsigned long arg) { @@ -417,29 +327,34 @@ static int msm_hs_clock_vote(struct msm_hs_port *msm_uport) { int rc = 0; + mutex_lock(&msm_uport->clk_mutex); if (1 == atomic_inc_return(&msm_uport->clk_count)) { msm_hs_bus_voting(msm_uport, BUS_SCALING); /* Turn on core clk and iface clk */ - rc = clk_prepare_enable(msm_uport->clk); - if (rc) { - dev_err(msm_uport->uport.dev, - "%s: Could not turn on core clk [%d]\n", - __func__, rc); - return rc; - } - if (msm_uport->pclk) { rc = clk_prepare_enable(msm_uport->pclk); if (rc) { - clk_disable_unprepare(msm_uport->clk); dev_err(msm_uport->uport.dev, "%s: Could not turn on pclk [%d]\n", __func__, rc); + mutex_unlock(&msm_uport->clk_mutex); return rc; } } + + rc = clk_prepare_enable(msm_uport->clk); + if (rc) { + dev_err(msm_uport->uport.dev, + "%s: Could not turn on core clk [%d]\n", + __func__, rc); + clk_disable_unprepare(msm_uport->pclk); + mutex_unlock(&msm_uport->clk_mutex); + return rc; + } msm_uport->clk_state = MSM_HS_CLK_ON; + MSM_HS_DBG("%s: Clock ON successful\n", __func__); } + mutex_unlock(&msm_uport->clk_mutex); return rc; @@ -447,71 +362,100 @@ static int msm_hs_clock_vote(struct msm_hs_port *msm_uport) static void msm_hs_clock_unvote(struct msm_hs_port *msm_uport) { - int rc = atomic_dec_return(&msm_uport->clk_count); + int rc = atomic_read(&msm_uport->clk_count); - if (rc < 0) { - msm_hs_bus_voting(msm_uport, BUS_RESET); + if (rc <= 0) { WARN(rc, "msm_uport->clk_count < 0!"); dev_err(msm_uport->uport.dev, - "%s: Clocks count invalid [%d]\n", __func__, - atomic_read(&msm_uport->clk_count)); + "%s: Clocks count invalid [%d]\n", __func__, rc); return; } + mutex_lock(&msm_uport->clk_mutex); + rc = atomic_dec_return(&msm_uport->clk_count); if (0 == rc) { - msm_hs_bus_voting(msm_uport, BUS_RESET); /* Turn off the core clk and iface clk*/ clk_disable_unprepare(msm_uport->clk); if (msm_uport->pclk) clk_disable_unprepare(msm_uport->pclk); + /* Unvote the PNOC clock */ + msm_hs_bus_voting(msm_uport, BUS_RESET); msm_uport->clk_state = MSM_HS_CLK_OFF; + MSM_HS_DBG("%s: Clock OFF successful\n", __func__); + } + mutex_unlock(&msm_uport->clk_mutex); +} + +/* Check if the uport line number matches with user id stored in pdata. + * User id information is stored during initialization. This function + * ensues that the same device is selected */ + +static struct msm_hs_port *get_matching_hs_port(struct platform_device *pdev) +{ + struct msm_serial_hs_platform_data *pdata = pdev->dev.platform_data; + struct msm_hs_port *msm_uport = msm_hs_get_hs_port(pdev->id); + + if ((!msm_uport) || (msm_uport->uport.line != pdev->id + && msm_uport->uport.line != pdata->userid)) { + MSM_HS_ERR("uport line number mismatch!"); + WARN_ON(1); + return NULL; } + + return msm_uport; } static ssize_t show_clock(struct device *dev, struct device_attribute *attr, char *buf) { int state = 1; + ssize_t ret = 0; enum msm_hs_clk_states_e clk_state; unsigned long flags; - struct platform_device *pdev = container_of(dev, struct platform_device, dev); - struct msm_hs_port *msm_uport = &q_uart_port[pdev->id]; + struct msm_hs_port *msm_uport = get_matching_hs_port(pdev); - spin_lock_irqsave(&msm_uport->uport.lock, flags); - clk_state = msm_uport->clk_state; - spin_unlock_irqrestore(&msm_uport->uport.lock, flags); + /* This check should not fail */ + if (msm_uport) { + spin_lock_irqsave(&msm_uport->uport.lock, flags); + clk_state = msm_uport->clk_state; + spin_unlock_irqrestore(&msm_uport->uport.lock, flags); - if (clk_state <= MSM_HS_CLK_OFF) - state = 0; + if (clk_state <= MSM_HS_CLK_OFF) + state = 0; + ret = snprintf(buf, PAGE_SIZE, "%d\n", state); + } - return snprintf(buf, PAGE_SIZE, "%d\n", state); + return ret; } static ssize_t set_clock(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) { int state; + ssize_t ret = 0; struct platform_device *pdev = container_of(dev, struct platform_device, dev); - struct msm_hs_port *msm_uport = &q_uart_port[pdev->id]; - - state = buf[0] - '0'; - switch (state) { - case 0: { - msm_hs_request_clock_off(&msm_uport->uport); - break; - } - case 1: { - msm_hs_request_clock_on(&msm_uport->uport); - break; - } - default: { - return -EINVAL; - } + struct msm_hs_port *msm_uport = get_matching_hs_port(pdev); + + /* This check should not fail */ + if (msm_uport) { + state = buf[0] - '0'; + switch (state) { + case 0: + msm_hs_request_clock_off(&msm_uport->uport); + ret = count; + break; + case 1: + msm_hs_request_clock_on(&msm_uport->uport); + ret = count; + break; + default: + ret = -EINVAL; + } } - return count; + return ret; } static DEVICE_ATTR(clock, S_IWUSR | S_IRUGO, show_clock, set_clock); @@ -521,21 +465,11 @@ static inline unsigned int use_low_power_wakeup(struct msm_hs_port *msm_uport) return (msm_uport->wakeup.irq > 0); } -static inline int is_gsbi_uart(struct msm_hs_port *msm_uport) -{ - /* assume gsbi uart if gsbi resource found in pdata */ - return ((msm_uport->mapped_gsbi != NULL)); -} -static unsigned int is_blsp_uart(struct msm_hs_port *msm_uport) -{ - return (msm_uport->uart_type == BLSP_HSUART); -} - static void msm_hs_bus_voting(struct msm_hs_port *msm_uport, unsigned int vote) { int ret; - if (is_blsp_uart(msm_uport) && msm_uport->bus_perf_client) { + if (msm_uport->bus_perf_client) { MSM_HS_DBG("Bus voting:%d\n", vote); ret = msm_bus_scale_client_update_request( msm_uport->bus_perf_client, vote); @@ -548,22 +482,13 @@ static void msm_hs_bus_voting(struct msm_hs_port *msm_uport, unsigned int vote) static inline unsigned int msm_hs_read(struct uart_port *uport, unsigned int index) { - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - unsigned int offset; - - offset = *(msm_uport->reg_ptr + index); - - return readl_relaxed(uport->membase + offset); + return readl_relaxed(uport->membase + index); } static inline void msm_hs_write(struct uart_port *uport, unsigned int index, unsigned int value) { - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - unsigned int offset; - - offset = *(msm_uport->reg_ptr + index); - writel_relaxed(value, uport->membase + offset); + writel_relaxed(value, uport->membase + index); } static int sps_rx_disconnect(struct sps_pipe *sps_pipe_handler) @@ -598,71 +523,33 @@ static void hex_dump_ipc(char *prefix, char *string, int size) */ static void dump_uart_hs_registers(struct msm_hs_port *msm_uport) { - msm_hs_clock_vote(msm_uport); - MSM_HS_DBG("============= UART Registers ================\n"); - MSM_HS_DBG("UART_DM_MR1:%x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_MR1)); - MSM_HS_DBG("UART_DM_MR2:%x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_MR2)); - MSM_HS_DBG("UART_DM_IPR:%x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_IPR)); - MSM_HS_DBG("UART_DM_RFWR:%x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_RFWR)); - MSM_HS_DBG("UART_DM_SR:%x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_SR)); - MSM_HS_DBG("UART_DM_IMR: %x\n", msm_hs_read(&(msm_uport->uport), - UART_DM_IMR)); - MSM_HS_DBG("=============================================\n"); - msm_hs_clock_unvote(msm_uport); -} - -static void msm_hs_release_port(struct uart_port *port) -{ - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(port); - struct platform_device *pdev = to_platform_device(port->dev); - struct resource *gsbi_resource; - resource_size_t size; - - if (is_gsbi_uart(msm_uport)) { - iowrite32(GSBI_PROTOCOL_IDLE, msm_uport->mapped_gsbi + - GSBI_CONTROL_ADDR); - gsbi_resource = platform_get_resource_byname(pdev, - IORESOURCE_MEM, - "gsbi_resource"); - if (unlikely(!gsbi_resource)) - return; - - size = resource_size(gsbi_resource); - release_mem_region(gsbi_resource->start, size); - iounmap(msm_uport->mapped_gsbi); - msm_uport->mapped_gsbi = NULL; - } -} - -static int msm_hs_request_port(struct uart_port *port) -{ - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(port); - struct platform_device *pdev = to_platform_device(port->dev); - struct resource *gsbi_resource; - resource_size_t size; - - gsbi_resource = platform_get_resource_byname(pdev, - IORESOURCE_MEM, - "gsbi_resource"); - if (gsbi_resource) { - size = resource_size(gsbi_resource); - if (unlikely(!request_mem_region(gsbi_resource->start, size, - "msm_serial_hs"))) - return -EBUSY; - msm_uport->mapped_gsbi = ioremap(gsbi_resource->start, - size); - if (!msm_uport->mapped_gsbi) { - release_mem_region(gsbi_resource->start, size); - return -EBUSY; - } + struct uart_port *uport = &(msm_uport->uport); + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + return; } - /* no gsbi uart */ - return 0; + + MSM_HS_DBG( + "MR1:%x MR2:%x TFWR:%x RFWR:%x DMEN:%x IMR:%x MISR:%x NCF_TX:%x\n", + msm_hs_read(uport, UART_DM_MR1), + msm_hs_read(uport, UART_DM_MR2), + msm_hs_read(uport, UART_DM_TFWR), + msm_hs_read(uport, UART_DM_RFWR), + msm_hs_read(uport, UART_DM_DMEN), + msm_hs_read(uport, UART_DM_IMR), + msm_hs_read(uport, UART_DM_MISR), + msm_hs_read(uport, UART_DM_NCF_TX)); + MSM_HS_INFO("SR:%x ISR:%x DMRX:%x RX_SNAP:%x TXFS:%x RXFS:%x\n", + msm_hs_read(uport, UART_DM_SR), + msm_hs_read(uport, UART_DM_ISR), + msm_hs_read(uport, UART_DM_DMRX), + msm_hs_read(uport, UART_DM_RX_TOTAL_SNAP), + msm_hs_read(uport, UART_DM_TXFS), + msm_hs_read(uport, UART_DM_RXFS)); + MSM_HS_DBG("clk_req_state:0x%x rx.flush:%u\n", + msm_uport->clk_req_off_state, + msm_uport->rx.flush); + MSM_HS_DBG("clk_state:%d", msm_uport->clk_state); } static int msm_serial_loopback_enable_set(void *data, u64 val) @@ -677,21 +564,15 @@ static int msm_serial_loopback_enable_set(void *data, u64 val) if (val) { spin_lock_irqsave(&uport->lock, flags); ret = msm_hs_read(uport, UART_DM_MR2); - if (is_blsp_uart(msm_uport)) - ret |= (UARTDM_MR2_LOOP_MODE_BMSK | - UARTDM_MR2_RFR_CTS_LOOP_MODE_BMSK); - else - ret |= UARTDM_MR2_LOOP_MODE_BMSK; + ret |= (UARTDM_MR2_LOOP_MODE_BMSK | + UARTDM_MR2_RFR_CTS_LOOP_MODE_BMSK); msm_hs_write(uport, UART_DM_MR2, ret); spin_unlock_irqrestore(&uport->lock, flags); } else { spin_lock_irqsave(&uport->lock, flags); ret = msm_hs_read(uport, UART_DM_MR2); - if (is_blsp_uart(msm_uport)) - ret &= ~(UARTDM_MR2_LOOP_MODE_BMSK | - UARTDM_MR2_RFR_CTS_LOOP_MODE_BMSK); - else - ret &= ~UARTDM_MR2_LOOP_MODE_BMSK; + ret &= ~(UARTDM_MR2_LOOP_MODE_BMSK | + UARTDM_MR2_RFR_CTS_LOOP_MODE_BMSK); msm_hs_write(uport, UART_DM_MR2, ret); spin_unlock_irqrestore(&uport->lock, flags); } @@ -757,25 +638,18 @@ static int __devexit msm_hs_remove(struct platform_device *pdev) return -EINVAL; } - msm_uport = &q_uart_port[pdev->id]; - dev = msm_uport->uport.dev; + msm_uport = get_matching_hs_port(pdev); + if (!msm_uport) + return -EINVAL; + dev = msm_uport->uport.dev; sysfs_remove_file(&pdev->dev.kobj, &dev_attr_clock.attr); debugfs_remove(msm_uport->loopback_dir); - dma_unmap_single(dev, msm_uport->rx.mapped_cmd_ptr, sizeof(dmov_box), - DMA_TO_DEVICE); dma_pool_free(msm_uport->rx.pool, msm_uport->rx.buffer, msm_uport->rx.rbuffer); dma_pool_destroy(msm_uport->rx.pool); - dma_unmap_single(dev, msm_uport->rx.cmdptr_dmaaddr, sizeof(u32), - DMA_TO_DEVICE); - dma_unmap_single(dev, msm_uport->tx.mapped_cmd_ptr_ptr, sizeof(u32), - DMA_TO_DEVICE); - dma_unmap_single(dev, msm_uport->tx.mapped_cmd_ptr, sizeof(dmov_box), - DMA_TO_DEVICE); - wake_lock_destroy(&msm_uport->rx.wake_lock); wake_lock_destroy(&msm_uport->dma_wake_lock); destroy_workqueue(msm_uport->hsuart_wq); @@ -786,14 +660,6 @@ static int __devexit msm_hs_remove(struct platform_device *pdev) if (msm_uport->pclk) clk_put(msm_uport->pclk); - /* Free the tx resources */ - kfree(msm_uport->tx.command_ptr); - kfree(msm_uport->tx.command_ptr_ptr); - - /* Free the rx resources */ - kfree(msm_uport->rx.command_ptr); - kfree(msm_uport->rx.command_ptr_ptr); - iounmap(msm_uport->uport.membase); return 0; @@ -845,14 +711,14 @@ static int msm_hs_spsconnect_tx(struct uart_port *uport) ret = sps_connect(sps_pipe_handle, sps_config); if (ret) { MSM_HS_ERR("msm_serial_hs: sps_connect() failed for tx!!\n" - "pipe_handle=0x%x ret=%d", (u32)sps_pipe_handle, ret); + "pipe_handle=0x%p ret=%d", sps_pipe_handle, ret); return ret; } /* Register callback event for EOT (End of transfer) event. */ ret = sps_register_event(sps_pipe_handle, sps_event); if (ret) { MSM_HS_ERR("msm_serial_hs: sps_connect() failed for tx!!\n" - "pipe_handle=0x%x ret=%d", (u32)sps_pipe_handle, ret); + "pipe_handle=0x%p ret=%d", sps_pipe_handle, ret); goto reg_event_err; } return 0; @@ -886,14 +752,14 @@ static int msm_hs_spsconnect_rx(struct uart_port *uport) ret = sps_connect(sps_pipe_handle, sps_config); if (ret) { MSM_HS_ERR("msm_serial_hs: sps_connect() failed for rx!!\n" - "pipe_handle=0x%x ret=%d", (u32)sps_pipe_handle, ret); + "pipe_handle=0x%p ret=%d", sps_pipe_handle, ret); return ret; } /* Register callback event for DESC_DONE event. */ ret = sps_register_event(sps_pipe_handle, sps_event); if (ret) { MSM_HS_ERR("msm_serial_hs: sps_connect() failed for rx!!\n" - "pipe_handle=0x%x ret=%d", (u32)sps_pipe_handle, ret); + "pipe_handle=0x%p ret=%d", sps_pipe_handle, ret); goto reg_event_err; } return 0; @@ -1009,17 +875,15 @@ static void msm_hs_set_bps_locked(struct uart_port *uport, mb(); if (bps > 460800) { uport->uartclk = bps * 16; - if (is_blsp_uart(msm_uport)) { - /* BLSP based UART supports maximum clock frequency - * of 63.16 Mhz. With this (63.16 Mhz) clock frequency - * UART can support baud rate of 3.94 Mbps which is - * equivalent to 4 Mbps. - * UART hardware is robust enough to handle this - * deviation to achieve baud rate ~4 Mbps. - */ - if (bps == 4000000) - uport->uartclk = BLSP_UART_CLK_FMAX; - } + /* BLSP based UART supports maximum clock frequency + * of 63.16 Mhz. With this (63.16 Mhz) clock frequency + * UART can support baud rate of 3.94 Mbps which is + * equivalent to 4 Mbps. + * UART hardware is robust enough to handle this + * deviation to achieve baud rate ~4 Mbps. + */ + if (bps == 4000000) + uport->uartclk = BLSP_UART_CLK_FMAX; } else { uport->uartclk = 7372800; } @@ -1111,9 +975,12 @@ static void msm_hs_set_termios(struct uart_port *uport, struct msm_hs_rx *rx = &msm_uport->rx; struct sps_pipe *sps_pipe_handle = rx->prod.pipe_handle; - if (msm_uport->clk_state == MSM_HS_CLK_OFF) - msm_hs_request_clock_on(uport); - + /** + * set_termios can be invoked from the framework when + * the clocks are off and the client has not had a chance + * to turn them on. Make sure that they are on + */ + msm_hs_clock_vote(msm_uport); mutex_lock(&msm_uport->clk_mutex); msm_hs_write(uport, UART_DM_IMR, 0); @@ -1127,6 +994,8 @@ static void msm_hs_set_termios(struct uart_port *uport, data = msm_hs_read(uport, UART_DM_MR1); data &= ~UARTDM_MR1_RX_RDY_CTL_BMSK; msm_hs_write(uport, UART_DM_MR1, data); + /* set RFR_N to high */ + msm_hs_write(uport, UART_DM_CR, RFR_HIGH); /* * Disable Rx channel of UARTDM @@ -1138,12 +1007,8 @@ static void msm_hs_set_termios(struct uart_port *uport, * suggested to do disable/reset or reset/disable at the same time. */ data = msm_hs_read(uport, UART_DM_DMEN); - if (is_blsp_uart(msm_uport)) { - /* Disable UARTDM RX BAM Interface */ - data &= ~UARTDM_RX_BAM_ENABLE_BMSK; - } else { - data &= ~UARTDM_RX_DM_EN_BMSK; - } + /* Disable UARTDM RX BAM Interface */ + data &= ~UARTDM_RX_BAM_ENABLE_BMSK; msm_hs_write(uport, UART_DM_DMEN, data); @@ -1213,40 +1078,24 @@ static void msm_hs_set_termios(struct uart_port *uport, msm_hs_write(uport, UART_DM_CR, RESET_RX); msm_hs_write(uport, UART_DM_CR, RESET_TX); + /* Issue TX BAM Start IFC command */ + msm_hs_write(uport, UART_DM_CR, START_TX_BAM_IFC); if (msm_uport->rx.flush == FLUSH_NONE) { wake_lock(&msm_uport->rx.wake_lock); - msm_uport->rx.flush = FLUSH_IGNORE; - /* - * Before using dmov APIs make sure that - * previous writel are completed. Hence - * dsb requires here. - */ + msm_uport->rx.flush = FLUSH_DATA_INVALID; mb(); - if (is_blsp_uart(msm_uport)) { - if (msm_uport->rx_bam_inprogress) - ret = wait_event_timeout(msm_uport->rx.wait, - msm_uport->rx_bam_inprogress == false, - RX_FLUSH_COMPLETE_TIMEOUT); - ret = sps_rx_disconnect(sps_pipe_handle); - if (ret) - MSM_HS_ERR("%s(): sps_disconnect failed\n", - __func__); - msm_hs_spsconnect_rx(uport); - msm_serial_hs_rx_tlet((unsigned long) &rx->tlet); - } else { - msm_uport->rx_discard_flush_issued = true; - /* do discard flush */ - msm_dmov_flush(msm_uport->dma_rx_channel, 0); - MSM_HS_DBG("%s(): wainting for flush completion.\n", - __func__); + if (msm_uport->rx_bam_inprogress) ret = wait_event_timeout(msm_uport->rx.wait, - msm_uport->rx_discard_flush_issued == false, + msm_uport->rx_bam_inprogress == false, RX_FLUSH_COMPLETE_TIMEOUT); - if (!ret) - MSM_HS_ERR("%s(): Discard flush pending.\n", - __func__); - } + ret = sps_rx_disconnect(sps_pipe_handle); + if (ret) + MSM_HS_ERR("%s(): sps_disconnect failed\n", + __func__); + msm_hs_spsconnect_rx(uport); + msm_uport->rx.flush = FLUSH_IGNORE; + msm_serial_hs_rx_tlet((unsigned long) &rx->tlet); } /* Configure HW flow control @@ -1255,6 +1104,8 @@ static void msm_hs_set_termios(struct uart_port *uport, * UART Core would trigger RFR if it is not having any space with * RX FIFO. */ + /* Pulling RFR line high */ + msm_hs_write(uport, UART_DM_CR, RFR_LOW); data = msm_hs_read(uport, UART_DM_MR1); data &= ~(UARTDM_MR1_CTS_CTL_BMSK | UARTDM_MR1_RX_RDY_CTL_BMSK); if (c_cflag & CRTSCTS) { @@ -1268,6 +1119,7 @@ static void msm_hs_set_termios(struct uart_port *uport, mutex_unlock(&msm_uport->clk_mutex); MSM_HS_DBG("Exit %s\n", __func__); dump_uart_hs_registers(msm_uport); + msm_hs_clock_unvote(msm_uport); } /* @@ -1280,9 +1132,15 @@ unsigned int msm_hs_tx_empty(struct uart_port *uport) unsigned int ret = 0; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + if (msm_uport->clk_state == MSM_HS_CLK_PORT_OFF) { + MSM_HS_ERR("%s:UART port is closed\n", __func__); + return -EPERM; + } + msm_hs_clock_vote(msm_uport); data = msm_hs_read(uport, UART_DM_SR); msm_hs_clock_unvote(msm_uport); + MSM_HS_DBG("%s(): SR Reg Read 0x%x", __func__, data); if (data & UARTDM_SR_TXEMT_BMSK) ret = TIOCSER_TEMT; @@ -1308,16 +1166,29 @@ static void hsuart_disconnect_rx_endpoint_work(struct work_struct *w) { struct msm_hs_port *msm_uport = container_of(w, struct msm_hs_port, disconnect_rx_endpoint); + struct uart_port *uport = &msm_uport->uport; struct msm_hs_rx *rx = &msm_uport->rx; struct sps_pipe *sps_pipe_handle = rx->prod.pipe_handle; + struct platform_device *pdev = to_platform_device(uport->dev); + const struct msm_serial_hs_platform_data *pdata = + pdev->dev.platform_data; int ret = 0; + msm_hs_clock_vote(msm_uport); ret = sps_rx_disconnect(sps_pipe_handle); + msm_hs_clock_unvote(msm_uport); + if (ret) MSM_HS_ERR("%s(): sps_disconnect failed\n", __func__); - - wake_lock_timeout(&msm_uport->rx.wake_lock, HZ / 2); + if (pdata->no_suspend_delay) + wake_unlock(&msm_uport->rx.wake_lock); + else + wake_lock_timeout(&msm_uport->rx.wake_lock, + HZ / 2); msm_uport->rx.flush = FLUSH_SHUTDOWN; + MSM_HS_DBG("%s: Calling Completion\n", __func__); + wake_up(&msm_uport->bam_disconnect_wait); + MSM_HS_DBG("%s: Done Completion\n", __func__); wake_up(&msm_uport->rx.wait); } @@ -1334,32 +1205,24 @@ static void msm_hs_stop_rx_locked(struct uart_port *uport) struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); unsigned int data; - /* disable dlink */ - data = msm_hs_read(uport, UART_DM_DMEN); - if (is_blsp_uart(msm_uport)) + MSM_HS_DBG("In %s():\n", __func__); + if (msm_uport->clk_state != MSM_HS_CLK_OFF) { + /* disable dlink */ + data = msm_hs_read(uport, UART_DM_DMEN); data &= ~UARTDM_RX_BAM_ENABLE_BMSK; - else - data &= ~UARTDM_RX_DM_EN_BMSK; - msm_hs_write(uport, UART_DM_DMEN, data); + msm_hs_write(uport, UART_DM_DMEN, data); - /* calling DMOV or CLOCK API. Hence mb() */ - mb(); + /* calling DMOV or CLOCK API. Hence mb() */ + mb(); + } /* Disable the receiver */ if (msm_uport->rx.flush == FLUSH_NONE) { wake_lock(&msm_uport->rx.wake_lock); - if (is_blsp_uart(msm_uport)) { - msm_uport->rx.flush = FLUSH_STOP; - /* workqueue for BAM rx endpoint disconnect */ - queue_work(msm_uport->hsuart_wq, - &msm_uport->disconnect_rx_endpoint); - } else { - /* do discard flush */ - msm_dmov_flush(msm_uport->dma_rx_channel, 0); - } - } - if (!is_blsp_uart(msm_uport) && msm_uport->rx.flush != FLUSH_SHUTDOWN) msm_uport->rx.flush = FLUSH_STOP; - + /* workqueue for BAM rx endpoint disconnect */ + queue_work(msm_uport->hsuart_wq, + &msm_uport->disconnect_rx_endpoint); + } } /* Transmit the next chunk of data */ @@ -1370,7 +1233,7 @@ static void msm_hs_submit_tx_locked(struct uart_port *uport) int aligned_tx_count; dma_addr_t src_addr; dma_addr_t aligned_src_addr; - u32 flags = SPS_IOVEC_FLAG_EOT; + u32 flags = SPS_IOVEC_FLAG_EOT | SPS_IOVEC_FLAG_INT; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); struct msm_hs_tx *tx = &msm_uport->tx; struct circ_buf *tx_buf = &msm_uport->uport.state->xmit; @@ -1380,6 +1243,13 @@ static void msm_hs_submit_tx_locked(struct uart_port *uport) if (uart_circ_empty(tx_buf) || uport->state->port.tty->stopped) { msm_hs_stop_tx_locked(uport); + if (msm_uport->clk_state == MSM_HS_CLK_REQUEST_OFF) { + MSM_HS_DBG("%s(): Clock off requested calling WQ", + __func__); + queue_work(msm_uport->hsuart_wq, + &msm_uport->clock_off_w); + wake_up(&msm_uport->tx.wait); + } return; } @@ -1410,46 +1280,15 @@ static void msm_hs_submit_tx_locked(struct uart_port *uport) dma_sync_single_for_device(uport->dev, aligned_src_addr, aligned_tx_count, DMA_TO_DEVICE); - if (is_blsp_uart(msm_uport)) { - /* Issue TX BAM Start IFC command */ - msm_hs_write(uport, UART_DM_CR, START_TX_BAM_IFC); - } else { - tx->command_ptr->num_rows = - (((tx_count + 15) >> 4) << 16) | - ((tx_count + 15) >> 4); - tx->command_ptr->src_row_addr = src_addr; - - dma_sync_single_for_device(uport->dev, tx->mapped_cmd_ptr, - sizeof(dmov_box), DMA_TO_DEVICE); - - *tx->command_ptr_ptr = CMD_PTR_LP | - DMOV_CMD_ADDR(tx->mapped_cmd_ptr); - } - - /* Save tx_count to use in Callback */ tx->tx_count = tx_count; - msm_hs_write(uport, UART_DM_NCF_TX, tx_count); - - /* Disable the tx_ready interrupt */ - msm_uport->imr_reg &= ~UARTDM_ISR_TX_READY_BMSK; - msm_hs_write(uport, UART_DM_IMR, msm_uport->imr_reg); - /* Calling next DMOV API. Hence mb() here. */ - mb(); msm_uport->tx.flush = FLUSH_NONE; - if (is_blsp_uart(msm_uport)) { - sps_pipe_handle = tx->cons.pipe_handle; - /* Queue transfer request to SPS */ - sps_transfer_one(sps_pipe_handle, src_addr, tx_count, - msm_uport, flags); - } else { - dma_sync_single_for_device(uport->dev, tx->mapped_cmd_ptr_ptr, - sizeof(u32), DMA_TO_DEVICE); - - msm_dmov_enqueue_cmd(msm_uport->dma_tx_channel, &tx->xfer); + sps_pipe_handle = tx->cons.pipe_handle; + /* Queue transfer request to SPS */ + sps_transfer_one(sps_pipe_handle, src_addr, tx_count, + msm_uport, flags); - } MSM_HS_DBG("%s:Enqueue Tx Cmd\n", __func__); dump_uart_hs_registers(msm_uport); } @@ -1464,6 +1303,16 @@ static void msm_hs_start_rx_locked(struct uart_port *uport) unsigned int buffer_pending = msm_uport->rx.buffer_pending; unsigned int data; + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + return; + } + if (rx->rx_cmd_exec) { + MSM_HS_DBG("%s: Rx Cmd got executed, wait for rx_tlet\n", + __func__); + rx->flush = FLUSH_IGNORE; + return; + } msm_uport->rx.buffer_pending = 0; if (buffer_pending && hs_serial_debug_mask) MSM_HS_ERR("Error: rx started in buffer state = %x", @@ -1472,52 +1321,39 @@ static void msm_hs_start_rx_locked(struct uart_port *uport) msm_hs_write(uport, UART_DM_CR, RESET_STALE_INT); msm_hs_write(uport, UART_DM_DMRX, UARTDM_RX_BUF_SIZE); msm_hs_write(uport, UART_DM_CR, STALE_EVENT_ENABLE); - msm_uport->imr_reg |= UARTDM_ISR_RXLEV_BMSK; - /* * Enable UARTDM Rx Interface as previously it has been * disable in set_termios before configuring baud rate. */ data = msm_hs_read(uport, UART_DM_DMEN); - if (is_blsp_uart(msm_uport)) { - /* Enable UARTDM Rx BAM Interface */ - data |= UARTDM_RX_BAM_ENABLE_BMSK; - } else { - data |= UARTDM_RX_DM_EN_BMSK; - } + /* Enable UARTDM Rx BAM Interface */ + data |= UARTDM_RX_BAM_ENABLE_BMSK; msm_hs_write(uport, UART_DM_DMEN, data); msm_hs_write(uport, UART_DM_IMR, msm_uport->imr_reg); /* Calling next DMOV API. Hence mb() here. */ mb(); - if (is_blsp_uart(msm_uport)) { - /* - * RX-transfer will be automatically re-activated - * after last data of previous transfer was read. - */ - data = (RX_STALE_AUTO_RE_EN | RX_TRANS_AUTO_RE_ACTIVATE | - RX_DMRX_CYCLIC_EN); - msm_hs_write(uport, UART_DM_RX_TRANS_CTRL, data); - /* Issue RX BAM Start IFC command */ - msm_hs_write(uport, UART_DM_CR, START_RX_BAM_IFC); - mb(); - } + /* + * RX-transfer will be automatically re-activated + * after last data of previous transfer was read. + */ + data = (RX_STALE_AUTO_RE_EN | RX_TRANS_AUTO_RE_ACTIVATE | + RX_DMRX_CYCLIC_EN); + msm_hs_write(uport, UART_DM_RX_TRANS_CTRL, data); + /* Issue RX BAM Start IFC command */ + msm_hs_write(uport, UART_DM_CR, START_RX_BAM_IFC); + mb(); msm_uport->rx.flush = FLUSH_NONE; - - if (is_blsp_uart(msm_uport)) { - msm_uport->rx_bam_inprogress = true; - sps_pipe_handle = rx->prod.pipe_handle; - /* Queue transfer request to SPS */ - sps_transfer_one(sps_pipe_handle, rx->rbuffer, - UARTDM_RX_BUF_SIZE, msm_uport, flags); - msm_uport->rx_bam_inprogress = false; - wake_up(&msm_uport->rx.wait); - } else { - msm_dmov_enqueue_cmd(msm_uport->dma_rx_channel, - &msm_uport->rx.xfer); - } + msm_uport->rx_bam_inprogress = true; + sps_pipe_handle = rx->prod.pipe_handle; + /* Queue transfer request to SPS */ + sps_transfer_one(sps_pipe_handle, rx->rbuffer, + UARTDM_RX_BUF_SIZE, msm_uport, flags); + msm_uport->rx_bam_inprogress = false; + msm_uport->rx.rx_cmd_queued = true; + wake_up(&msm_uport->rx.wait); MSM_HS_DBG("%s:Enqueue Rx Cmd\n", __func__); dump_uart_hs_registers(msm_uport); } @@ -1576,7 +1412,7 @@ static void flip_insert_work(struct work_struct *work) static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) { int retval; - int rx_count; + int rx_count = 0; unsigned long status; unsigned long flags; unsigned int error_f = 0; @@ -1588,6 +1424,8 @@ static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) struct msm_hs_rx *rx; struct sps_pipe *sps_pipe_handle; u32 sps_flags = SPS_IOVEC_FLAG_INT; + struct platform_device *pdev; + const struct msm_serial_hs_platform_data *pdata; msm_uport = container_of((struct tasklet_struct *)tlet_ptr, struct msm_hs_port, rx.tlet); @@ -1595,14 +1433,16 @@ static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) tty = uport->state->port.tty; notify = &msm_uport->notify; rx = &msm_uport->rx; + pdev = to_platform_device(uport->dev); + pdata = pdev->dev.platform_data; + + msm_uport->rx.rx_cmd_queued = false; + msm_uport->rx.rx_cmd_exec = false; status = msm_hs_read(uport, UART_DM_SR); spin_lock_irqsave(&uport->lock, flags); - if (!is_blsp_uart(msm_uport)) - msm_hs_write(uport, UART_DM_CR, STALE_EVENT_DISABLE); - MSM_HS_DBG("In %s\n", __func__); dump_uart_hs_registers(msm_uport); @@ -1644,30 +1484,22 @@ static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) } } - if (error_f) - msm_hs_write(uport, UART_DM_CR, RESET_ERROR_STATUS); - - if (msm_uport->clk_req_off_state == CLK_REQ_OFF_FLUSH_ISSUED) - msm_uport->clk_req_off_state = CLK_REQ_OFF_RXSTALE_FLUSHED; + if (error_f) { + if (msm_uport->clk_state == MSM_HS_CLK_ON) + msm_hs_write(uport, UART_DM_CR, RESET_ERROR_STATUS); + else + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + } flush = msm_uport->rx.flush; if (flush == FLUSH_IGNORE) - if (!msm_uport->rx.buffer_pending) + if (!msm_uport->rx.buffer_pending) { + MSM_HS_DBG("%s: calling start_rx_locked\n", __func__); msm_hs_start_rx_locked(uport); - - if (flush == FLUSH_STOP) { - msm_uport->rx.flush = FLUSH_SHUTDOWN; - wake_up(&msm_uport->rx.wait); - } + } if (flush >= FLUSH_DATA_INVALID) goto out; - if (is_blsp_uart(msm_uport)) { - rx_count = msm_uport->rx_count_callback; - } else { - rx_count = msm_hs_read(uport, UART_DM_RX_TOTAL_SNAP); - /* order the read of rx.buffer */ - rmb(); - } + rx_count = msm_uport->rx_count_callback; MSM_HS_DBG("%s():[UART_RX]<%d>\n", __func__, rx_count); hex_dump_ipc("HSUART Read: ", msm_uport->rx.buffer, rx_count); @@ -1681,24 +1513,17 @@ static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) retval << 5 | (rx_count - retval) << 16; } } - - MSM_HS_DBG("%s() read rx buffer complete", __func__); - /* order the read of rx.buffer and the start of next rx xfer */ - wmb(); - - if (!msm_uport->rx.buffer_pending) { - if (is_blsp_uart(msm_uport)) { - msm_uport->rx.flush = FLUSH_NONE; - msm_uport->rx_bam_inprogress = true; - sps_pipe_handle = rx->prod.pipe_handle; - /* Queue transfer request to SPS */ - sps_transfer_one(sps_pipe_handle, rx->rbuffer, - UARTDM_RX_BUF_SIZE, msm_uport, sps_flags); - msm_uport->rx_bam_inprogress = false; - wake_up(&msm_uport->rx.wait); - } else { - msm_hs_start_rx_locked(uport); - } + if (!msm_uport->rx.buffer_pending && !msm_uport->rx.rx_cmd_queued) { + msm_uport->rx.flush = FLUSH_NONE; + msm_uport->rx_bam_inprogress = true; + sps_pipe_handle = rx->prod.pipe_handle; + MSM_HS_DBG("Queing bam descriptor\n"); + /* Queue transfer request to SPS */ + sps_transfer_one(sps_pipe_handle, rx->rbuffer, + UARTDM_RX_BUF_SIZE, msm_uport, sps_flags); + msm_uport->rx_bam_inprogress = false; + msm_uport->rx.rx_cmd_queued = true; + wake_up(&msm_uport->rx.wait); } out: if (msm_uport->rx.buffer_pending) { @@ -1707,8 +1532,12 @@ static void msm_serial_hs_rx_tlet(unsigned long tlet_ptr) , msecs_to_jiffies(RETRY_TIMEOUT)); } /* release wakelock in 500ms, not immediately, because higher layers - * don't always take wakelocks when they should */ - wake_lock_timeout(&msm_uport->rx.wake_lock, HZ / 2); + * don't always take wakelocks when they should + */ + if (pdata->no_suspend_delay) + wake_unlock(&msm_uport->rx.wake_lock); + else + wake_lock_timeout(&msm_uport->rx.wake_lock, HZ / 2); /* tty_flip_buffer_push() might call msm_hs_start(), so unlock */ spin_unlock_irqrestore(&uport->lock, flags); if (flush < FLUSH_DATA_INVALID) @@ -1720,11 +1549,13 @@ static void msm_hs_start_tx_locked(struct uart_port *uport ) { struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - if (msm_uport->tx.tx_ready_int_en == 0) { - msm_uport->tx.tx_ready_int_en = 1; - if (msm_uport->tx.dma_in_flight == 0) - msm_hs_submit_tx_locked(uport); + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + return; } + if ((msm_uport->tx.tx_ready_int_en == 0) && + (msm_uport->tx.dma_in_flight == 0)) + msm_hs_submit_tx_locked(uport); } /** @@ -1743,35 +1574,12 @@ static void msm_hs_sps_tx_callback(struct sps_event_notify *notify) ((struct sps_event_notify *)notify)->user; msm_uport->notify = *notify; - MSM_HS_DBG("%s: sps ev_id=%d, addr=0x%x, size=0x%x, flags=0x%x\n", - __func__, notify->event_id, - notify->data.transfer.iovec.addr, - notify->data.transfer.iovec.size, - notify->data.transfer.iovec.flags); - - tasklet_schedule(&msm_uport->tx.tlet); -} - -/* - * This routine is called when we are done with a DMA transfer - * - * This routine is registered with Data mover when we set - * up a Data Mover transfer. It is called from Data mover ISR - * when the DMA transfer is done. - */ -static void msm_hs_dmov_tx_callback(struct msm_dmov_cmd *cmd_ptr, - unsigned int result, - struct msm_dmov_errdata *err) -{ - struct msm_hs_port *msm_uport; - - msm_uport = container_of(cmd_ptr, struct msm_hs_port, tx.xfer); - if (msm_uport->tx.flush == FLUSH_STOP) - /* DMA FLUSH unsuccesfful */ - WARN_ON(!(result & DMOV_RSLT_FLUSH)); - else - /* DMA did not finish properly */ - WARN_ON(!(result & DMOV_RSLT_DONE)); + MSM_HS_DBG("%s: ev_id=%d, addr=0x%x, size=0x%x, flags=0x%x, line=%d\n", + __func__, notify->event_id, + notify->data.transfer.iovec.addr, + notify->data.transfer.iovec.size, + notify->data.transfer.iovec.flags, + msm_uport->uport.line); tasklet_schedule(&msm_uport->tx.tlet); } @@ -1781,8 +1589,37 @@ static void msm_serial_hs_tx_tlet(unsigned long tlet_ptr) unsigned long flags; struct msm_hs_port *msm_uport = container_of((struct tasklet_struct *) tlet_ptr, struct msm_hs_port, tx.tlet); + struct uart_port *uport = &msm_uport->uport; + struct circ_buf *tx_buf = &uport->state->xmit; + struct msm_hs_tx *tx = &msm_uport->tx; + /* + * Do the work buffer related work in BAM + * mode that is equivalent to legacy mode + */ spin_lock_irqsave(&(msm_uport->uport.lock), flags); + + if (!uart_circ_empty(tx_buf)) + tx_buf->tail = (tx_buf->tail + + tx->tx_count) & ~UART_XMIT_SIZE; + else + MSM_HS_DBG("%s:circ buffer is empty\n", __func__); + + tx->dma_in_flight = 0; + + uport->icount.tx += tx->tx_count; + + /* + * Calling to send next chunk of data + * If the circ buffer is empty, we stop + * If the clock off was requested, the clock + * off sequence is kicked off + */ + msm_hs_submit_tx_locked(uport); + + if (uart_circ_chars_pending(tx_buf) < WAKEUP_CHARS) + uart_write_wakeup(uport); + if (msm_uport->tx.flush == FLUSH_STOP) { msm_uport->tx.flush = FLUSH_SHUTDOWN; wake_up(&msm_uport->tx.wait); @@ -1790,11 +1627,6 @@ static void msm_serial_hs_tx_tlet(unsigned long tlet_ptr) return; } - msm_uport->imr_reg |= UARTDM_ISR_TX_READY_BMSK; - msm_hs_write(&(msm_uport->uport), UART_DM_IMR, msm_uport->imr_reg); - /* Calling clk API. Hence mb() requires. */ - mb(); - spin_unlock_irqrestore(&(msm_uport->uport.lock), flags); MSM_HS_DBG("In %s()\n", __func__); dump_uart_hs_registers(msm_uport); @@ -1829,46 +1661,14 @@ static void msm_hs_sps_rx_callback(struct sps_event_notify *notify) if (msm_uport->rx.flush == FLUSH_NONE) { spin_lock_irqsave(&uport->lock, flags); msm_uport->rx_count_callback = notify->data.transfer.iovec.size; + msm_uport->rx.rx_cmd_exec = true; spin_unlock_irqrestore(&uport->lock, flags); tasklet_schedule(&msm_uport->rx.tlet); } } /* - * This routine is called when we are done with a DMA transfer or the - * a flush has been sent to the data mover driver. - * - * This routine is registered with Data mover when we set up a Data Mover - * transfer. It is called from Data mover ISR when the DMA transfer is done. - */ -static void msm_hs_dmov_rx_callback(struct msm_dmov_cmd *cmd_ptr, - unsigned int result, - struct msm_dmov_errdata *err) -{ - struct msm_hs_port *msm_uport; - struct uart_port *uport; - unsigned long flags; - - msm_uport = container_of(cmd_ptr, struct msm_hs_port, rx.xfer); - uport = &(msm_uport->uport); - - MSM_HS_DBG("%s(): called result:%x\n", __func__, result); - if (!(result & DMOV_RSLT_ERROR)) { - if (result & DMOV_RSLT_FLUSH) { - if (msm_uport->rx_discard_flush_issued) { - spin_lock_irqsave(&uport->lock, flags); - msm_uport->rx_discard_flush_issued = false; - spin_unlock_irqrestore(&uport->lock, flags); - wake_up(&msm_uport->rx.wait); - } - } - } - - tasklet_schedule(&msm_uport->rx.tlet); -} - -/* - * Standard API, Current states of modem control inputs + * Standard API, Current states of modem control inputs * * Since CTS can be handled entirely by HARDWARE we always * indicate clear to send and count on the TX FIFO to block when @@ -1898,7 +1698,13 @@ void msm_hs_set_mctrl_locked(struct uart_port *uport, { unsigned int set_rts; unsigned int data; + struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s:Failed.Clocks are OFF\n", __func__); + printk(KERN_INFO "(msm_serial_hs) msm_hs_set_mctrl_locked.Clocks are OFF\n"); + return; + } /* RTS is active low */ set_rts = TIOCM_RTS & mctrl ? 0 : 1; @@ -1922,6 +1728,10 @@ void msm_hs_set_mctrl(struct uart_port *uport, { unsigned long flags; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + if (msm_uport->clk_state == MSM_HS_CLK_PORT_OFF) { + MSM_HS_ERR("%s:UART port is closed\n", __func__); + return ; + } msm_hs_clock_vote(msm_uport); spin_lock_irqsave(&uport->lock, flags); @@ -1936,6 +1746,11 @@ static void msm_hs_enable_ms_locked(struct uart_port *uport) { struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s:Failed.Clocks are OFF\n", __func__); + return; + } + /* Enable DELTA_CTS Interrupt */ msm_uport->imr_reg |= UARTDM_ISR_DELTA_CTS_BMSK; msm_hs_write(uport, UART_DM_IMR, msm_uport->imr_reg); @@ -1943,28 +1758,6 @@ static void msm_hs_enable_ms_locked(struct uart_port *uport) } -static void msm_hs_flush_buffer(struct uart_port *uport) -{ - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - - if (msm_uport->tx.dma_in_flight) - msm_uport->tty_flush_receive = true; -} - -static void msm_hs_power(struct uart_port *port, unsigned int state, - unsigned int oldstate) -{ - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(port); - - switch (state) { - case 1: - msm_hs_request_clock_on(&msm_uport->uport); - break; - default: - pr_err("Unknown PM state %d\n", state); - } -} - /* * Standard API, Break Signal * @@ -1974,6 +1767,12 @@ static void msm_hs_power(struct uart_port *port, unsigned int state, static void msm_hs_break_ctl(struct uart_port *uport, int ctl) { unsigned long flags; + struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + return; + } spin_lock_irqsave(&uport->lock, flags); msm_hs_write(uport, UART_DM_CR, ctl ? START_BREAK : STOP_BREAK); @@ -1983,29 +1782,20 @@ static void msm_hs_break_ctl(struct uart_port *uport, int ctl) static void msm_hs_config_port(struct uart_port *uport, int cfg_flags) { - unsigned long flags; - struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - - if (cfg_flags & UART_CONFIG_TYPE) { + if (cfg_flags & UART_CONFIG_TYPE) uport->type = PORT_MSM; - msm_hs_request_port(uport); - } - if (is_gsbi_uart(msm_uport)) { - if (msm_uport->pclk) - clk_prepare_enable(msm_uport->pclk); - spin_lock_irqsave(&uport->lock, flags); - iowrite32(GSBI_PROTOCOL_UART, msm_uport->mapped_gsbi + - GSBI_CONTROL_ADDR); - spin_unlock_irqrestore(&uport->lock, flags); - if (msm_uport->pclk) - clk_disable_unprepare(msm_uport->pclk); - } } /* Handle CTS changes (Called from interrupt handler) */ static void msm_hs_handle_delta_cts_locked(struct uart_port *uport) { + struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + + if (msm_uport->clk_state != MSM_HS_CLK_ON) { + MSM_HS_WARN("%s: Failed.Clocks are OFF\n", __func__); + return; + } /* clear interrupt */ msm_hs_write(uport, UART_DM_CR, RESET_CTS); /* Calling CLOCK API. Hence mb() requires here. */ @@ -2025,100 +1815,99 @@ static int msm_hs_check_clock_off(struct uart_port *uport) { unsigned long sr_status; unsigned long flags; - int ret; +#ifdef CONFIG_MSM_BT_POWER + unsigned int data; +#endif struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); struct circ_buf *tx_buf = &uport->state->xmit; + struct platform_device *pdev = to_platform_device(uport->dev); mutex_lock(&msm_uport->clk_mutex); spin_lock_irqsave(&uport->lock, flags); + if (msm_uport->clk_state == MSM_HS_CLK_OFF) { + spin_unlock_irqrestore(&uport->lock, flags); + mutex_unlock(&msm_uport->clk_mutex); + MSM_HS_INFO("%s: Clocks Off Successfully\n", __func__); + return 1; + } + MSM_HS_DBG("In %s:\n", __func__); /* Cancel if tx tty buffer is not empty, dma is in flight, - * or tx fifo is not empty */ + * or tx fifo is not empty + */ if (msm_uport->clk_state != MSM_HS_CLK_REQUEST_OFF || !uart_circ_empty(tx_buf) || msm_uport->tx.dma_in_flight || msm_uport->imr_reg & UARTDM_ISR_TXLEV_BMSK) { +#ifdef CONFIG_MSM_BT_POWER + if (msm_uport->clk_state == MSM_HS_CLK_REQUEST_OFF) { + msm_uport->clk_state = MSM_HS_CLK_ON; + /* Pulling RFR line high */ + msm_hs_write(uport, UART_DM_CR, RFR_LOW); + /* Enable auto RFR */ + data = msm_hs_read(uport, UART_DM_MR1); + data |= UARTDM_MR1_RX_RDY_CTL_BMSK; + msm_hs_write(uport, UART_DM_MR1, data); + mb(); + } +#endif spin_unlock_irqrestore(&uport->lock, flags); mutex_unlock(&msm_uport->clk_mutex); + MSM_HS_DBG("%s(): clkstate %d", __func__, msm_uport->clk_state); return -1; } - /* Make sure the uart is finished with the last byte */ + /* Make sure the uart is finished with the last byte, + * use BFamily Register + */ sr_status = msm_hs_read(uport, UART_DM_SR); if (!(sr_status & UARTDM_SR_TXEMT_BMSK)) { spin_unlock_irqrestore(&uport->lock, flags); mutex_unlock(&msm_uport->clk_mutex); + MSM_HS_DBG("%s(): SR TXEMT fail %lx", __func__, sr_status); return 0; /* retry */ } - /* Make sure forced RXSTALE flush complete */ - switch (msm_uport->clk_req_off_state) { - case CLK_REQ_OFF_START: - msm_uport->clk_req_off_state = CLK_REQ_OFF_RXSTALE_ISSUED; - - if (!is_blsp_uart(msm_uport)) { - msm_hs_write(uport, UART_DM_CR, FORCE_STALE_EVENT); - /* - * Before returning make sure that device writel - * completed. Hence mb() requires here. - */ - mb(); - } - spin_unlock_irqrestore(&uport->lock, flags); - mutex_unlock(&msm_uport->clk_mutex); - return 0; /* RXSTALE flush not complete - retry */ - case CLK_REQ_OFF_RXSTALE_ISSUED: - case CLK_REQ_OFF_FLUSH_ISSUED: - spin_unlock_irqrestore(&uport->lock, flags); - if (is_blsp_uart(msm_uport)) { - msm_uport->clk_req_off_state = - CLK_REQ_OFF_RXSTALE_FLUSHED; - } - mutex_unlock(&msm_uport->clk_mutex); - return 0; /* RXSTALE flush not complete - retry */ - case CLK_REQ_OFF_RXSTALE_FLUSHED: - break; /* continue */ - } - if (msm_uport->rx.flush != FLUSH_SHUTDOWN) { - if (msm_uport->rx.flush == FLUSH_NONE) { + if (msm_uport->rx.flush == FLUSH_NONE) msm_hs_stop_rx_locked(uport); - if (!is_blsp_uart(msm_uport)) - msm_uport->rx_discard_flush_issued = true; - } + MSM_HS_DBG("%s: rx.flush %d clk_state %d\n", __func__, + msm_uport->rx.flush, msm_uport->clk_state); spin_unlock_irqrestore(&uport->lock, flags); - if (msm_uport->rx_discard_flush_issued) { - MSM_HS_DBG("%s(): wainting for flush completion.\n", - __func__); - ret = wait_event_timeout(msm_uport->rx.wait, - msm_uport->rx_discard_flush_issued == false, - RX_FLUSH_COMPLETE_TIMEOUT); - if (!ret) - MSM_HS_ERR("%s(): Flush complete pending.\n", - __func__); - } - mutex_unlock(&msm_uport->clk_mutex); return 0; /* come back later to really clock off */ } spin_unlock_irqrestore(&uport->lock, flags); +#ifdef CONFIG_MSM_BT_POWER + /* Pulling RFR line high */ + msm_hs_write(uport, UART_DM_CR, RFR_LOW); + /* Enable auto RFR */ + data = msm_hs_read(uport, UART_DM_MR1); + data |= UARTDM_MR1_RX_RDY_CTL_BMSK; + msm_hs_write(uport, UART_DM_MR1, data); + mb(); +#endif + /* we really want to clock off */ + mutex_unlock(&msm_uport->clk_mutex); msm_hs_clock_unvote(msm_uport); + mutex_lock(&msm_uport->clk_mutex); spin_lock_irqsave(&uport->lock, flags); if (use_low_power_wakeup(msm_uport)) { msm_uport->wakeup.ignore = 1; enable_irq(msm_uport->wakeup.irq); } - printk(KERN_INFO "(msm_serial_hs) msm_hs_check_clock_off - dma wake unlock\n"); + + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) msm_hs_check_clock_off - dma wake unlock\n"); + wake_unlock(&msm_uport->dma_wake_lock); spin_unlock_irqrestore(&uport->lock, flags); - /* Reset PNOC Bus Scaling */ - msm_hs_bus_voting(msm_uport, BUS_RESET); mutex_unlock(&msm_uport->clk_mutex); return 1; @@ -2129,6 +1918,7 @@ static void hsuart_clock_off_work(struct work_struct *w) struct msm_hs_port *msm_uport = container_of(w, struct msm_hs_port, clock_off_w); struct uart_port *uport = &msm_uport->uport; + struct platform_device *pdev = to_platform_device(uport->dev); int check_clk_off = msm_hs_check_clock_off(uport); @@ -2137,9 +1927,11 @@ static void hsuart_clock_off_work(struct work_struct *w) msm_uport->clk_off_delay, HRTIMER_MODE_REL); } else if (check_clk_off == -1) { - printk(KERN_INFO "(msm_serial_hs) hsuart_clock_off_work WORKQUEUE - FIFO is not empty or in flight...\n"); + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) hsuart_clock_off_work WORKQUEUE - FIFO is not empty or in flight...\n"); } else { - printk(KERN_INFO "(msm_serial_hs) hsuart_clock_off_work WORKQUEUE - Maybe, clock is off-ed.\n"); + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) hsuart_clock_off_work WORKQUEUE - Maybe, clock is off-ed.\n"); } } @@ -2187,16 +1979,6 @@ static irqreturn_t msm_hs_isr(int irq, void *dev) */ mb(); MSM_HS_DBG("%s:Stal Interrupt\n", __func__); - - if (msm_uport->clk_req_off_state == - CLK_REQ_OFF_RXSTALE_ISSUED) - msm_uport->clk_req_off_state = - CLK_REQ_OFF_FLUSH_ISSUED; - - if (!is_blsp_uart(msm_uport) && (rx->flush == FLUSH_NONE)) { - rx->flush = FLUSH_DATA_READY; - msm_dmov_flush(msm_uport->dma_rx_channel, 1); - } } /* tx ready interrupt */ if (isr_status & UARTDM_ISR_TX_READY_BMSK) { @@ -2216,12 +1998,11 @@ static irqreturn_t msm_hs_isr(int irq, void *dev) /* Complete DMA TX transactions and submit new transactions */ /* Do not update tx_buf.tail if uart_flush_buffer already - called in serial core */ - if (!msm_uport->tty_flush_receive) + * called in serial core + */ + if (!uart_circ_empty(tx_buf)) tx_buf->tail = (tx_buf->tail + tx->tx_count) & ~UART_XMIT_SIZE; - else - msm_uport->tty_flush_receive = false; tx->dma_in_flight = 0; @@ -2236,6 +2017,7 @@ static irqreturn_t msm_hs_isr(int irq, void *dev) /* TX FIFO is empty */ msm_uport->imr_reg &= ~UARTDM_ISR_TXLEV_BMSK; msm_hs_write(uport, UART_DM_IMR, msm_uport->imr_reg); + MSM_HS_DBG("%s: TXLEV Interrupt\n", __func__); /* * Complete device write before starting clock_off request. * Hence mb() requires here. @@ -2253,37 +2035,61 @@ static irqreturn_t msm_hs_isr(int irq, void *dev) return IRQ_HANDLED; } -/* - * Find UART device port using its port index value. +/* The following two functions provide interfaces to get the underlying + * port structure (struct uart_port or struct msm_hs_port) given + * the port index. msm_hs_get_uart port is called by clients. + * The function msm_hs_get_hs_port is for internal use */ + struct uart_port *msm_hs_get_uart_port(int port_index) { - int i; + struct uart_state *state = msm_hs_driver.state + port_index; - for (i = 0; i < UARTDM_NR; i++) { - if (q_uart_port[i].uport.line == port_index) - return &q_uart_port[i].uport; - } + /* The uart_driver structure stores the states in an array. + * Thus the corresponding offset from the drv->state returns + * the state for the uart_port that is requested + */ + if (port_index == state->uart_port->line) + return state->uart_port; return NULL; } EXPORT_SYMBOL(msm_hs_get_uart_port); +static struct msm_hs_port *msm_hs_get_hs_port(int port_index) +{ + struct uart_port *uport = msm_hs_get_uart_port(port_index); + if (uport) + return UARTDM_TO_MSM(uport); + return NULL; +} + /* request to turn off uart clock once pending TX is flushed */ void msm_hs_request_clock_off(struct uart_port *uport) { unsigned long flags; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + int data; + if (msm_uport->clk_state == MSM_HS_CLK_PORT_OFF) { + MSM_HS_ERR("%s:UART port is closed\n", __func__); + return ; + } spin_lock_irqsave(&uport->lock, flags); if (msm_uport->clk_state == MSM_HS_CLK_ON) { msm_uport->clk_state = MSM_HS_CLK_REQUEST_OFF; - msm_uport->clk_req_off_state = CLK_REQ_OFF_START; - msm_uport->imr_reg |= UARTDM_ISR_TXLEV_BMSK; - msm_hs_write(uport, UART_DM_IMR, msm_uport->imr_reg); - /* - * Complete device write before retuning back. - * Hence mb() requires here. - */ + data = msm_hs_read(uport, UART_DM_MR1); + /*disable auto ready-for-receiving */ + data &= ~UARTDM_MR1_RX_RDY_CTL_BMSK; + msm_hs_write(uport, UART_DM_MR1, data); + mb(); + /* set RFR_N to high */ + msm_hs_write(uport, UART_DM_CR, RFR_HIGH); + + data = msm_hs_read(uport, UART_DM_SR); + MSM_HS_DBG("%s(): TXEMT, queuing clock off work\n", + __func__); + queue_work(msm_uport->hsuart_wq, &msm_uport->clock_off_w); + mb(); } spin_unlock_irqrestore(&uport->lock, flags); @@ -2296,21 +2102,43 @@ void msm_hs_request_clock_on(struct uart_port *uport) unsigned long flags; unsigned int data; int ret = 0; + struct platform_device *pdev = to_platform_device(uport->dev); + + if (msm_uport->clk_state == MSM_HS_CLK_PORT_OFF) { + MSM_HS_ERR("%s:UART port is closed\n", __func__); + return ; + } mutex_lock(&msm_uport->clk_mutex); spin_lock_irqsave(&uport->lock, flags); +#ifdef CONFIG_MSM_BT_POWER + if (msm_uport->clk_state == MSM_HS_CLK_REQUEST_OFF) { + /* Pulling RFR line high */ + msm_hs_write(uport, UART_DM_CR, RFR_LOW); + /* Enable auto RFR */ + data = msm_hs_read(uport, UART_DM_MR1); + data |= UARTDM_MR1_RX_RDY_CTL_BMSK; + msm_hs_write(uport, UART_DM_MR1, data); + mb(); + } +#endif + switch (msm_uport->clk_state) { case MSM_HS_CLK_OFF: - printk(KERN_INFO "(msm_serial_hs) msm_hs_check_clock_on - dma wake lock\n"); + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) msm_hs_check_clock_on - dma wake lock\n"); + wake_lock(&msm_uport->dma_wake_lock); if (use_low_power_wakeup(msm_uport)) disable_irq_nosync(msm_uport->wakeup.irq); spin_unlock_irqrestore(&uport->lock, flags); + mutex_unlock(&msm_uport->clk_mutex); ret = msm_hs_clock_vote(msm_uport); + mutex_lock(&msm_uport->clk_mutex); if (ret) { - dev_err(uport->dev, "Clock ON Failure" + MSM_HS_INFO("Clock ON Failure" "For UART CLK Stalling HSUART\n"); break; } @@ -2318,42 +2146,69 @@ void msm_hs_request_clock_on(struct uart_port *uport) spin_lock_irqsave(&uport->lock, flags); /* else fall-through */ case MSM_HS_CLK_REQUEST_OFF: + hrtimer_cancel(&msm_uport->clk_off_timer); + if (msm_uport->rx.flush == FLUSH_STOP) { + spin_unlock_irqrestore(&uport->lock, flags); + MSM_HS_DBG("%s:Calling wait forxcompletion\n", + __func__); + mutex_unlock(&msm_uport->clk_mutex); + ret = wait_event_timeout(msm_uport->bam_disconnect_wait, + msm_uport->rx.flush == FLUSH_SHUTDOWN, 300); + mutex_lock(&msm_uport->clk_mutex); + if (!ret) + MSM_HS_ERR("BAM Disconnect not happened\n"); + spin_lock_irqsave(&uport->lock, flags); + MSM_HS_DBG("%s:DONE wait for completion\n", __func__); + } + MSM_HS_DBG("%s:clock state %d\n\n", __func__, + msm_uport->clk_state); + if (msm_uport->clk_state == MSM_HS_CLK_REQUEST_OFF) + msm_uport->clk_state = MSM_HS_CLK_ON; if (msm_uport->rx.flush == FLUSH_STOP || msm_uport->rx.flush == FLUSH_SHUTDOWN) { msm_hs_write(uport, UART_DM_CR, RESET_RX); data = msm_hs_read(uport, UART_DM_DMEN); - if (is_blsp_uart(msm_uport)) - data |= UARTDM_RX_BAM_ENABLE_BMSK; - else - data |= UARTDM_RX_DM_EN_BMSK; + data |= UARTDM_RX_BAM_ENABLE_BMSK; msm_hs_write(uport, UART_DM_DMEN, data); /* Complete above device write. Hence mb() here. */ mb(); } - hrtimer_try_to_cancel(&msm_uport->clk_off_timer); + + MSM_HS_DBG("%s: rx.flush %d\n", __func__, msm_uport->rx.flush); if (msm_uport->rx.flush == FLUSH_SHUTDOWN) { - if (is_blsp_uart(msm_uport)) { - spin_unlock_irqrestore(&uport->lock, flags); - msm_hs_spsconnect_rx(uport); - spin_lock_irqsave(&uport->lock, flags); - } + spin_unlock_irqrestore(&uport->lock, flags); + msm_hs_spsconnect_rx(uport); + spin_lock_irqsave(&uport->lock, flags); msm_hs_start_rx_locked(uport); } if (msm_uport->rx.flush == FLUSH_STOP) msm_uport->rx.flush = FLUSH_IGNORE; - msm_uport->clk_state = MSM_HS_CLK_ON; + break; case MSM_HS_CLK_ON: break; case MSM_HS_CLK_PORT_OFF: + MSM_HS_ERR("%s:Clock ON failed;UART Port is Closed\n", + __func__); break; } + MSM_HS_INFO("%s:Clock ON Successful\n", __func__); + dump_uart_hs_registers(msm_uport); spin_unlock_irqrestore(&uport->lock, flags); mutex_unlock(&msm_uport->clk_mutex); } EXPORT_SYMBOL(msm_hs_request_clock_on); +int msm_hs_get_clock_state(struct uart_port *uport) +{ + struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + + return (int)msm_uport->clk_state; +} +EXPORT_SYMBOL(msm_hs_get_clock_state); + + static irqreturn_t msm_hs_wakeup_isr(int irq, void *dev) { unsigned int wakeup = 0; @@ -2365,7 +2220,8 @@ static irqreturn_t msm_hs_wakeup_isr(int irq, void *dev) spin_lock_irqsave(&uport->lock, flags); if (msm_uport->clk_state == MSM_HS_CLK_OFF) { /* ignore the first irq - it is a pending irq that occured - * before enable_irq() */ + * before enable_irq() + */ if (msm_uport->wakeup.ignore) msm_uport->wakeup.ignore = 0; else @@ -2374,7 +2230,8 @@ static irqreturn_t msm_hs_wakeup_isr(int irq, void *dev) if (wakeup) { /* the uart was clocked off during an rx, wake up and - * optionally inject char into tty rx */ + * optionally inject char into tty rx + */ spin_unlock_irqrestore(&uport->lock, flags); msm_hs_request_clock_on(uport); spin_lock_irqsave(&uport->lock, flags); @@ -2383,6 +2240,8 @@ static irqreturn_t msm_hs_wakeup_isr(int irq, void *dev) tty_insert_flip_char(tty, msm_uport->wakeup.rx_to_inject, TTY_NORMAL); + MSM_HS_DBG("%s(): Inject 0x%x", __func__, + msm_uport->wakeup.rx_to_inject); } } @@ -2500,14 +2359,12 @@ static int msm_hs_startup(struct uart_port *uport) unsigned long flags; unsigned int data; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - struct platform_device *pdev = to_platform_device(uport->dev); - const struct msm_serial_hs_platform_data *pdata = - pdev->dev.platform_data; struct circ_buf *tx_buf = &uport->state->xmit; struct msm_hs_tx *tx = &msm_uport->tx; struct msm_hs_rx *rx = &msm_uport->rx; struct sps_pipe *sps_pipe_handle_tx = tx->cons.pipe_handle; struct sps_pipe *sps_pipe_handle_rx = rx->prod.pipe_handle; + struct platform_device *pdev = to_platform_device(uport->dev); rfr_level = uport->fifosize; if (rfr_level > 16) @@ -2516,7 +2373,9 @@ static int msm_hs_startup(struct uart_port *uport) tx->dma_base = dma_map_single(uport->dev, tx_buf->buf, UART_XMIT_SIZE, DMA_TO_DEVICE); - printk(KERN_INFO "(msm_serial_hs) msm_hs_startup - dma wake lock\n"); + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) msm_hs_startup - dma wake lock\n"); + wake_lock(&msm_uport->dma_wake_lock); /* turn on uart clk */ ret = msm_hs_init_clk(uport); @@ -2526,35 +2385,32 @@ static int msm_hs_startup(struct uart_port *uport) return ret; } - if (is_blsp_uart(msm_uport)) { - ret = msm_hs_config_uart_gpios(uport); - if (ret) { - MSM_HS_ERR("Uart GPIO request failed\n"); - goto deinit_uart_clk; - } - } else { - if (pdata && pdata->gpio_config) - if (unlikely(pdata->gpio_config(1))) - dev_err(uport->dev, "Cannot configure gpios\n"); + ret = msm_hs_config_uart_gpios(uport); + if (ret) { + MSM_HS_ERR("Uart GPIO request failed\n"); + goto deinit_uart_clk; } /* SPS Connect for BAM endpoints */ - if (is_blsp_uart(msm_uport)) { - /* SPS connect for TX */ - ret = msm_hs_spsconnect_tx(uport); - if (ret) { - MSM_HS_ERR("msm_serial_hs: SPS connect failed for TX"); - goto unconfig_uart_gpios; - } + /* SPS connect for TX */ + ret = msm_hs_spsconnect_tx(uport); + if (ret) { + MSM_HS_ERR("msm_serial_hs: SPS connect failed for TX"); + goto unconfig_uart_gpios; + } - /* SPS connect for RX */ - ret = msm_hs_spsconnect_rx(uport); - if (ret) { - MSM_HS_ERR("msm_serial_hs: SPS connect failed for RX"); - goto sps_disconnect_tx; - } + /* SPS connect for RX */ + ret = msm_hs_spsconnect_rx(uport); + if (ret) { + MSM_HS_ERR("msm_serial_hs: SPS connect failed for RX"); + goto sps_disconnect_tx; } + data = (UARTDM_BCR_TX_BREAK_DISABLE | UARTDM_BCR_STALE_IRQ_EMPTY | + UARTDM_BCR_RX_DMRX_LOW_EN | UARTDM_BCR_RX_STAL_IRQ_DMRX_EQL | + UARTDM_BCR_RX_DMRX_1BYTE_RES_EN); + msm_hs_write(uport, UART_DM_BCR, data); + /* Set auto RFR Level */ data = msm_hs_read(uport, UART_DM_MR1); data &= ~UARTDM_MR1_AUTO_RFR_LEVEL1_BMSK; @@ -2570,13 +2426,8 @@ static int msm_hs_startup(struct uart_port *uport) msm_hs_write(uport, UART_DM_IPR, data); } - if (is_blsp_uart(msm_uport)) { - /* Enable BAM mode */ - data = UARTDM_TX_BAM_ENABLE_BMSK | UARTDM_RX_BAM_ENABLE_BMSK; - } else { - /* Enable Data Mover Mode */ - data = UARTDM_TX_DM_EN_BMSK | UARTDM_RX_DM_EN_BMSK; - } + /* Enable BAM mode */ + data = UARTDM_TX_BAM_ENABLE_BMSK | UARTDM_RX_BAM_ENABLE_BMSK; msm_hs_write(uport, UART_DM_DMEN, data); /* Reset TX */ @@ -2596,31 +2447,13 @@ static int msm_hs_startup(struct uart_port *uport) /* Initialize the tx */ tx->tx_ready_int_en = 0; tx->dma_in_flight = 0; - msm_uport->tty_flush_receive = false; - MSM_HS_DBG("%s: Setting tty_flush_receive to false\n", __func__); - - if (!is_blsp_uart(msm_uport)) { - tx->xfer.complete_func = msm_hs_dmov_tx_callback; - - tx->command_ptr->cmd = CMD_LC | - CMD_DST_CRCI(msm_uport->dma_tx_crci) | CMD_MODE_BOX; - - tx->command_ptr->src_dst_len = (MSM_UARTDM_BURST_SIZE << 16) - | (MSM_UARTDM_BURST_SIZE); - - tx->command_ptr->row_offset = (MSM_UARTDM_BURST_SIZE << 16); - - tx->command_ptr->dst_row_addr = - msm_uport->uport.mapbase + UART_DM_TF; - - msm_uport->imr_reg |= UARTDM_ISR_RXSTALE_BMSK; - } + rx->rx_cmd_exec = false; /* Enable reading the current CTS, no harm even if CTS is ignored */ msm_uport->imr_reg |= UARTDM_ISR_CURRENT_CTS_BMSK; /* TXLEV on empty TX fifo */ - msm_hs_write(uport, UART_DM_TFWR, 0); + msm_hs_write(uport, UART_DM_TFWR, 4); /* * Complete all device write related configuration before * queuing RX request. Hence mb() requires here. @@ -2654,17 +2487,12 @@ static int msm_hs_startup(struct uart_port *uport) } disable_irq(msm_uport->wakeup.irq); } - - msm_hs_clock_vote(msm_uport); - spin_lock_irqsave(&uport->lock, flags); msm_hs_start_rx_locked(uport); spin_unlock_irqrestore(&uport->lock, flags); - msm_hs_clock_unvote(msm_uport); - pm_runtime_enable(uport->dev); return 0; @@ -2675,18 +2503,16 @@ static int msm_hs_startup(struct uart_port *uport) if (use_low_power_wakeup(msm_uport)) irq_set_irq_wake(msm_uport->wakeup.irq, 0); sps_disconnect_rx: - if (is_blsp_uart(msm_uport)) - sps_disconnect(sps_pipe_handle_rx); + sps_disconnect(sps_pipe_handle_rx); sps_disconnect_tx: - if (is_blsp_uart(msm_uport)) - sps_disconnect(sps_pipe_handle_tx); + sps_disconnect(sps_pipe_handle_tx); unconfig_uart_gpios: - if (is_blsp_uart(msm_uport)) - msm_hs_unconfig_uart_gpios(uport); + msm_hs_unconfig_uart_gpios(uport); deinit_uart_clk: msm_hs_clock_unvote(msm_uport); - printk(KERN_INFO "(msm_serial_hs) msm_hs_startup deinit clk - dma wake unlock\n"); + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) msm_hs_startup deinit clk - dma wake unlock\n"); wake_unlock(&msm_uport->dma_wake_lock); @@ -2703,6 +2529,7 @@ static int uartdm_init_port(struct uart_port *uport) init_waitqueue_head(&rx->wait); init_waitqueue_head(&tx->wait); + init_waitqueue_head(&msm_uport->bam_disconnect_wait); wake_lock_init(&rx->wake_lock, WAKE_LOCK_SUSPEND, "msm_serial_hs_rx"); wake_lock_init(&msm_uport->dma_wake_lock, WAKE_LOCK_SUSPEND, "msm_serial_hs_dma"); @@ -2717,7 +2544,7 @@ static int uartdm_init_port(struct uart_port *uport) if (!rx->pool) { MSM_HS_ERR("%s(): cannot allocate rx_buffer_pool", __func__); ret = -ENOMEM; - goto exit_tasket_init; + goto exit_tasklet_init; } rx->buffer = dma_pool_alloc(rx->pool, GFP_KERNEL, &rx->rbuffer); @@ -2728,99 +2555,15 @@ static int uartdm_init_port(struct uart_port *uport) } /* Set up Uart Receive */ - if (is_blsp_uart(msm_uport)) - msm_hs_write(uport, UART_DM_RFWR, 32); - else - msm_hs_write(uport, UART_DM_RFWR, 0); + msm_hs_write(uport, UART_DM_RFWR, 32); INIT_DELAYED_WORK(&rx->flip_insert_work, flip_insert_work); - if (is_blsp_uart(msm_uport)) - return ret; - - /* Allocate the command pointer. Needs to be 64 bit aligned */ - tx->command_ptr = kmalloc(sizeof(dmov_box), GFP_KERNEL | __GFP_DMA); - if (!tx->command_ptr) { - return -ENOMEM; - goto free_rx_buffer; - } - - tx->command_ptr_ptr = kmalloc(sizeof(u32), GFP_KERNEL | __GFP_DMA); - if (!tx->command_ptr_ptr) { - ret = -ENOMEM; - goto free_tx_command_ptr; - } - - tx->mapped_cmd_ptr = dma_map_single(uport->dev, tx->command_ptr, - sizeof(dmov_box), DMA_TO_DEVICE); - tx->mapped_cmd_ptr_ptr = dma_map_single(uport->dev, - tx->command_ptr_ptr, - sizeof(u32), DMA_TO_DEVICE); - tx->xfer.cmdptr = DMOV_CMD_ADDR(tx->mapped_cmd_ptr_ptr); - - /* Allocate the command pointer. Needs to be 64 bit aligned */ - rx->command_ptr = kmalloc(sizeof(dmov_box), GFP_KERNEL | __GFP_DMA); - if (!rx->command_ptr) { - MSM_HS_ERR("%s(): cannot allocate rx->command_ptr", __func__); - ret = -ENOMEM; - goto free_tx_command_ptr_ptr; - } - - rx->command_ptr_ptr = kmalloc(sizeof(u32), GFP_KERNEL | __GFP_DMA); - if (!rx->command_ptr_ptr) { - MSM_HS_ERR("%s(): cannot allocate rx->command_ptr_ptr", - __func__); - ret = -ENOMEM; - goto free_rx_command_ptr; - } - - rx->command_ptr->num_rows = ((UARTDM_RX_BUF_SIZE >> 4) << 16) | - (UARTDM_RX_BUF_SIZE >> 4); - - rx->command_ptr->dst_row_addr = rx->rbuffer; - - rx->xfer.complete_func = msm_hs_dmov_rx_callback; - - rx->command_ptr->cmd = CMD_LC | - CMD_SRC_CRCI(msm_uport->dma_rx_crci) | CMD_MODE_BOX; - - rx->command_ptr->src_dst_len = (MSM_UARTDM_BURST_SIZE << 16) - | (MSM_UARTDM_BURST_SIZE); - rx->command_ptr->row_offset = MSM_UARTDM_BURST_SIZE; - rx->command_ptr->src_row_addr = uport->mapbase + UART_DM_RF; - - rx->mapped_cmd_ptr = dma_map_single(uport->dev, rx->command_ptr, - sizeof(dmov_box), DMA_TO_DEVICE); - - *rx->command_ptr_ptr = CMD_PTR_LP | DMOV_CMD_ADDR(rx->mapped_cmd_ptr); - - rx->cmdptr_dmaaddr = dma_map_single(uport->dev, rx->command_ptr_ptr, - sizeof(u32), DMA_TO_DEVICE); - rx->xfer.cmdptr = DMOV_CMD_ADDR(rx->cmdptr_dmaaddr); - return ret; - -free_rx_command_ptr: - kfree(rx->command_ptr); - -free_tx_command_ptr_ptr: - kfree(msm_uport->tx.command_ptr_ptr); - dma_unmap_single(uport->dev, msm_uport->tx.mapped_cmd_ptr_ptr, - sizeof(u32), DMA_TO_DEVICE); - dma_unmap_single(uport->dev, msm_uport->tx.mapped_cmd_ptr, - sizeof(dmov_box), DMA_TO_DEVICE); - -free_tx_command_ptr: - kfree(msm_uport->tx.command_ptr); - -free_rx_buffer: - dma_pool_free(msm_uport->rx.pool, msm_uport->rx.buffer, - msm_uport->rx.rbuffer); - free_pool: dma_pool_destroy(msm_uport->rx.pool); -exit_tasket_init: +exit_tasklet_init: wake_lock_destroy(&msm_uport->rx.wake_lock); wake_lock_destroy(&msm_uport->dma_wake_lock); tasklet_kill(&msm_uport->tx.tlet); @@ -2841,6 +2584,7 @@ struct msm_serial_hs_platform_data return ERR_PTR(-ENOMEM); } + pdev->id = of_alias_get_id(pdev->dev.of_node, "uart"); /* UART TX GPIO */ pdata->uart_tx_gpio = of_get_named_gpio(node, "qcom,tx-gpio", 0); @@ -2865,6 +2609,9 @@ struct msm_serial_hs_platform_data if (pdata->uart_rfr_gpio < 0) MSM_HS_DBG("uart_rfr_gpio is not available\n"); + pdata->no_suspend_delay = of_property_read_bool(node, + "qcom,no-suspend-delay"); + pdata->inject_rx_on_wakeup = of_property_read_bool(node, "qcom,inject-rx-on-wakeup"); @@ -2960,8 +2707,8 @@ static int msm_hs_sps_init_ep_conn(struct msm_hs_port *msm_uport, /* Allocate endpoint context */ sps_pipe_handle = sps_alloc_endpoint(); if (!sps_pipe_handle) { - MSM_HS_ERR("msm_serial_hs: sps_alloc_endpoint() failed!!\n" - "is_producer=%d", is_producer); + MSM_HS_ERR("%s(): sps_alloc_endpoint() failed!!\n" + "is_producer=%d", __func__, is_producer); rc = -ENOMEM; goto out; } @@ -2969,8 +2716,8 @@ static int msm_hs_sps_init_ep_conn(struct msm_hs_port *msm_uport, /* Get default connection configuration for an endpoint */ rc = sps_get_config(sps_pipe_handle, sps_config); if (rc) { - MSM_HS_ERR("msm_serial_hs: sps_get_config() failed!!\n" - "pipe_handle=0x%x rc=%d", (u32)sps_pipe_handle, rc); + MSM_HS_ERR("%s(): failed! pipe_handle=0x%p rc=%d", + __func__, sps_pipe_handle, rc); goto get_config_err; } @@ -2983,7 +2730,6 @@ static int msm_hs_sps_init_ep_conn(struct msm_hs_port *msm_uport, sps_config->mode = SPS_MODE_SRC; sps_config->src_pipe_index = msm_uport->bam_rx_ep_pipe_index; sps_config->dest_pipe_index = 0; - sps_config->options = SPS_O_DESC_DONE; } else { /* For UART consumer transfer, source is system memory where as destination is UART peripheral */ @@ -2992,9 +2738,9 @@ static int msm_hs_sps_init_ep_conn(struct msm_hs_port *msm_uport, sps_config->mode = SPS_MODE_DEST; sps_config->src_pipe_index = 0; sps_config->dest_pipe_index = msm_uport->bam_tx_ep_pipe_index; - sps_config->options = SPS_O_EOT; } + sps_config->options = SPS_O_EOT | SPS_O_DESC_DONE | SPS_O_AUTO_ENABLE; sps_config->event_thresh = 0x10; /* Allocate maximum descriptor fifo size */ @@ -3014,20 +2760,19 @@ static int msm_hs_sps_init_ep_conn(struct msm_hs_port *msm_uport, if (is_producer) { sps_event->callback = msm_hs_sps_rx_callback; - sps_event->options = SPS_O_DESC_DONE; } else { sps_event->callback = msm_hs_sps_tx_callback; - sps_event->options = SPS_O_EOT; } + sps_event->options = SPS_O_DESC_DONE | SPS_O_EOT; sps_event->user = (void *)msm_uport; /* Now save the sps pipe handle */ ep->pipe_handle = sps_pipe_handle; - MSM_HS_DBG("msm_serial_hs: success !! %s: pipe_handle=0x%x\n" - "desc_fifo.phys_base=0x%llx\n", + MSM_HS_DBG("msm_serial_hs: success !! %s: pipe_handle=0x%p\n" + "desc_fifo.phys_base=0x%pa\n", is_producer ? "READ" : "WRITE", - (u32) sps_pipe_handle, (u64) sps_config->desc.phys_base); + sps_pipe_handle, &sps_config->desc.phys_base); return 0; get_config_err: @@ -3068,10 +2813,10 @@ static int msm_hs_sps_init(struct msm_hs_port *msm_uport) bam.irq = (u32)msm_uport->bam_irq; bam.manage = SPS_BAM_MGR_DEVICE_REMOTE; - MSM_HS_DBG("msm_serial_hs: bam physical base=0x%x\n", - (u32)bam.phys_addr); - MSM_HS_DBG("msm_serial_hs: bam virtual base=0x%x\n", - (u32)bam.virt_addr); + MSM_HS_DBG("msm_serial_hs: bam physical base=0x%pa\n", + &bam.phys_addr); + MSM_HS_DBG("msm_serial_hs: bam virtual base=0x%p\n", + bam.virt_addr); /* Register UART Peripheral BAM device to SPS driver */ rc = sps_register_bam_device(&bam, &bam_handle); @@ -3106,21 +2851,54 @@ static int msm_hs_sps_init(struct msm_hs_port *msm_uport) return rc; } -#define BLSP_UART_NR 12 -static int deviceid[BLSP_UART_NR] = {0}; -static atomic_t msm_serial_hs_next_id = ATOMIC_INIT(0); + +static bool deviceid[UARTDM_NR] = {0}; +/* + * The mutex synchronizes grabbing next free device number + * both in case of an alias being used or not. When alias is + * used, the msm_hs_dt_to_pdata gets it and the boolean array + * is accordingly updated with device_id_set_used. If no alias + * is used, then device_id_grab_next_free sets that array. + */ +static DEFINE_MUTEX(mutex_next_device_id); + +static int device_id_grab_next_free(void) +{ + int i; + int ret = -ENODEV; + mutex_lock(&mutex_next_device_id); + for (i = 0; i < UARTDM_NR; i++) + if (!deviceid[i]) { + ret = i; + deviceid[i] = true; + break; + } + mutex_unlock(&mutex_next_device_id); + return ret; +} + +static int device_id_set_used(int index) +{ + int ret = 0; + mutex_lock(&mutex_next_device_id); + if (deviceid[index]) + ret = -ENODEV; + else + deviceid[index] = true; + mutex_unlock(&mutex_next_device_id); + return ret; +} static int __devinit msm_hs_probe(struct platform_device *pdev) { - int ret = 0, alias_num = -1; + int ret = 0; struct uart_port *uport; struct msm_hs_port *msm_uport; struct resource *core_resource; struct resource *bam_resource; - struct resource *resource; int core_irqres, bam_irqres, wakeup_irqres; struct msm_serial_hs_platform_data *pdata = pdev->dev.platform_data; - const struct of_device_id *match; + unsigned long data; if (pdev->dev.of_node) { dev_dbg(&pdev->dev, "device tree enabled\n"); @@ -3128,33 +2906,21 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) if (IS_ERR(pdata)) return PTR_ERR(pdata); - if (pdev->id == -1) { - pdev->id = atomic_inc_return(&msm_serial_hs_next_id)-1; - deviceid[pdev->id] = 1; - } - - /* Use alias from device tree if present - * Alias is used as an optional property - */ - alias_num = of_alias_get_id(pdev->dev.of_node, "uart"); - if (alias_num >= 0) { - /* If alias_num is between 0 and 11, check that it not - * equal to previous incremented pdev-ids. If it is - * equal to previous pdev.ids , fail deviceprobe. - */ - if (alias_num < BLSP_UART_NR) { - if (deviceid[alias_num] == 0) { - pdev->id = alias_num; - } else { - MSM_HS_ERR("alias_num=%d already used\n", - alias_num); - return -EINVAL; - } - } else { - pdev->id = alias_num; + if (pdev->id < 0) { + pdev->id = device_id_grab_next_free(); + if (pdev->id < 0) { + dev_err(&pdev->dev, + "Error grabbing next free device id"); + return pdev->id; + } + } else { + ret = device_id_set_used(pdev->id); + if (ret < 0) { + dev_err(&pdev->dev, "%d alias taken", + pdev->id); + return ret; } } - pdev->dev.platform_data = pdata; } @@ -3163,146 +2929,97 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) return -EINVAL; } - msm_uport = &q_uart_port[pdev->id]; + msm_uport = devm_kzalloc(&pdev->dev, sizeof(struct msm_hs_port), + GFP_KERNEL); + if (!msm_uport) { + MSM_HS_ERR("Memory allocation failed\n"); + return -ENOMEM; + } + + msm_uport->uport.type = PORT_UNKNOWN; uport = &msm_uport->uport; uport->dev = &pdev->dev; - match = of_match_device(msm_hs_match_table, &pdev->dev); - if (match) - msm_uport->reg_ptr = (unsigned int *)match->data; - else if (is_gsbi_uart(msm_uport)) - msm_uport->reg_ptr = regmap_nonblsp; - if (pdev->dev.of_node) msm_uport->uart_type = BLSP_HSUART; /* Get required resources for BAM HSUART */ - if (is_blsp_uart(msm_uport)) { - core_resource = platform_get_resource_byname(pdev, - IORESOURCE_MEM, "core_mem"); - bam_resource = platform_get_resource_byname(pdev, - IORESOURCE_MEM, "bam_mem"); - core_irqres = platform_get_irq_byname(pdev, "core_irq"); - bam_irqres = platform_get_irq_byname(pdev, "bam_irq"); - wakeup_irqres = platform_get_irq_byname(pdev, "wakeup_irq"); - - if (!core_resource) { - MSM_HS_ERR("Invalid core HSUART Resources.\n"); - return -ENXIO; - } - - if (!bam_resource) { - MSM_HS_ERR("Invalid BAM HSUART Resources.\n"); - return -ENXIO; - } - - if (!core_irqres) { - MSM_HS_ERR("Invalid core irqres Resources.\n"); - return -ENXIO; - } - if (!bam_irqres) { - MSM_HS_ERR("Invalid bam irqres Resources.\n"); - return -ENXIO; - } - if (!wakeup_irqres) - MSM_HS_DBG("Wakeup irq not specified.\n"); - - uport->mapbase = core_resource->start; - - uport->membase = ioremap(uport->mapbase, - resource_size(core_resource)); - if (unlikely(!uport->membase)) { - MSM_HS_ERR("UART Resource ioremap Failed.\n"); - return -ENOMEM; - } - msm_uport->bam_mem = bam_resource->start; - msm_uport->bam_base = ioremap(msm_uport->bam_mem, - resource_size(bam_resource)); - if (unlikely(!msm_uport->bam_base)) { - MSM_HS_ERR("UART BAM Resource ioremap Failed.\n"); - iounmap(uport->membase); - return -ENOMEM; - } + core_resource = platform_get_resource_byname(pdev, + IORESOURCE_MEM, "core_mem"); + if (!core_resource) { + MSM_HS_ERR("Invalid core HSUART Resources.\n"); + return -ENXIO; + } + bam_resource = platform_get_resource_byname(pdev, + IORESOURCE_MEM, "bam_mem"); + if (!bam_resource) { + MSM_HS_ERR("Invalid BAM HSUART Resources.\n"); + return -ENXIO; + } + core_irqres = platform_get_irq_byname(pdev, "core_irq"); + if (core_irqres < 0) { + MSM_HS_ERR("Invalid core irqres Resources.\n"); + return -ENXIO; + } + bam_irqres = platform_get_irq_byname(pdev, "bam_irq"); + if (bam_irqres < 0) { + MSM_HS_ERR("Invalid bam irqres Resources.\n"); + return -ENXIO; + } + wakeup_irqres = platform_get_irq_byname(pdev, "wakeup_irq"); + if (wakeup_irqres < 0) { + wakeup_irqres = -1; + MSM_HS_DBG("Wakeup irq not specified.\n"); + } + + uport->mapbase = core_resource->start; + + uport->membase = ioremap(uport->mapbase, + resource_size(core_resource)); + if (unlikely(!uport->membase)) { + MSM_HS_ERR("UART Resource ioremap Failed.\n"); + return -ENOMEM; + } + msm_uport->bam_mem = bam_resource->start; + msm_uport->bam_base = ioremap(msm_uport->bam_mem, + resource_size(bam_resource)); + if (unlikely(!msm_uport->bam_base)) { + MSM_HS_ERR("UART BAM Resource ioremap Failed.\n"); + iounmap(uport->membase); + return -ENOMEM; + } - uport->irq = core_irqres; - msm_uport->bam_irq = bam_irqres; - pdata->wakeup_irq = wakeup_irqres; + uport->irq = core_irqres; + msm_uport->bam_irq = bam_irqres; + pdata->wakeup_irq = wakeup_irqres; - msm_uport->bus_scale_table = msm_bus_cl_get_pdata(pdev); - if (!msm_uport->bus_scale_table) { - MSM_HS_ERR("BLSP UART: Bus scaling is disabled.\n"); - } else { - msm_uport->bus_perf_client = - msm_bus_scale_register_client - (msm_uport->bus_scale_table); - if (IS_ERR(&msm_uport->bus_perf_client)) { - MSM_HS_ERR("%s(): Bus client register failed.\n", - __func__); - ret = -EINVAL; - goto unmap_memory; - } - } + msm_uport->bus_scale_table = msm_bus_cl_get_pdata(pdev); + if (!msm_uport->bus_scale_table) { + MSM_HS_ERR("BLSP UART: Bus scaling is disabled.\n"); } else { - resource = platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (unlikely(!resource)) - return -ENXIO; - uport->mapbase = resource->start; - uport->membase = ioremap(uport->mapbase, - resource_size(resource)); - if (unlikely(!uport->membase)) - return -ENOMEM; - - uport->irq = platform_get_irq(pdev, 0); - if (unlikely((int)uport->irq < 0)) { - MSM_HS_ERR("UART IRQ Failed.\n"); - iounmap(uport->membase); - return -ENXIO; + msm_uport->bus_perf_client = + msm_bus_scale_register_client + (msm_uport->bus_scale_table); + if (IS_ERR(&msm_uport->bus_perf_client)) { + MSM_HS_ERR("%s():Bus client register failed\n", + __func__); + ret = -EINVAL; + goto unmap_memory; } } - if (pdata == NULL) { + if (pdata == NULL) msm_uport->wakeup.irq = -1; - } else { msm_uport->wakeup.irq = pdata->wakeup_irq; msm_uport->wakeup.ignore = 1; msm_uport->wakeup.inject_rx = pdata->inject_rx_on_wakeup; msm_uport->wakeup.rx_to_inject = pdata->rx_to_inject; - if (unlikely(msm_uport->wakeup.irq < 0)) { - //ret = -ENXIO; - //goto deregister_bus_client; - pr_debug("Wakeup irq not specified.\n"); - } - - if (is_blsp_uart(msm_uport)) { - msm_uport->bam_tx_ep_pipe_index = - pdata->bam_tx_ep_pipe_index; - msm_uport->bam_rx_ep_pipe_index = - pdata->bam_rx_ep_pipe_index; - } - } - - if (!is_blsp_uart(msm_uport)) { - resource = platform_get_resource_byname(pdev, - IORESOURCE_DMA, "uartdm_channels"); - if (unlikely(!resource)) { - ret = -ENXIO; - goto deregister_bus_client; - } - - msm_uport->dma_tx_channel = resource->start; - msm_uport->dma_rx_channel = resource->end; - - resource = platform_get_resource_byname(pdev, - IORESOURCE_DMA, "uartdm_crci"); - if (unlikely(!resource)) { - ret = -ENXIO; - goto deregister_bus_client; - } - - msm_uport->dma_tx_crci = resource->start; - msm_uport->dma_rx_crci = resource->end; + msm_uport->bam_tx_ep_pipe_index = + pdata->bam_tx_ep_pipe_index; + msm_uport->bam_rx_ep_pipe_index = + pdata->bam_rx_ep_pipe_index; } uport->iotype = UPIO_MEM; @@ -3351,12 +3068,10 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) /* Initialize SPS HW connected with UART core */ - if (is_blsp_uart(msm_uport)) { - ret = msm_hs_sps_init(msm_uport); - if (unlikely(ret)) { - MSM_HS_ERR("SPS Initialization failed ! err=%d", ret); - goto destroy_mutex; - } + ret = msm_hs_sps_init(msm_uport); + if (unlikely(ret)) { + MSM_HS_ERR("SPS Initialization failed ! err=%d", ret); + goto destroy_mutex; } msm_hs_clock_vote(msm_uport); @@ -3376,15 +3091,27 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) */ mb(); - msm_uport->clk_state = MSM_HS_CLK_PORT_OFF; + /* + * Set RX_BREAK_ZERO_CHAR_OFF and RX_ERROR_CHAR_OFF + * so any rx_break and character having parity of framing + * error don't enter inside UART RX FIFO. + */ + data = msm_hs_read(uport, UART_DM_MR2); + data |= (UARTDM_MR2_RX_BREAK_ZERO_CHAR_OFF | + UARTDM_MR2_RX_ERROR_CHAR_OFF); + msm_hs_write(uport, UART_DM_MR2, data); + mb(); + hrtimer_init(&msm_uport->clk_off_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); msm_uport->clk_off_timer.function = msm_hs_clk_off_retry; msm_uport->clk_off_delay = ktime_set(0, 1000000); /* 1ms */ ret = sysfs_create_file(&pdev->dev.kobj, &dev_attr_clock.attr); - if (unlikely(ret)) + if (unlikely(ret)) { + MSM_HS_ERR("Probe Failed as sysfs failed\n"); goto err_clock; + } msm_serial_debugfs_init(msm_uport, pdev->id); @@ -3394,6 +3121,7 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) ret = uart_add_one_port(&msm_hs_driver, uport); if (!ret) { msm_hs_clock_unvote(msm_uport); + msm_uport->clk_state = MSM_HS_CLK_PORT_OFF; return ret; } @@ -3412,12 +3140,10 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) clk_put(msm_uport->clk); deregister_bus_client: - if (is_blsp_uart(msm_uport)) - msm_bus_scale_unregister_client(msm_uport->bus_perf_client); + msm_bus_scale_unregister_client(msm_uport->bus_perf_client); unmap_memory: iounmap(uport->membase); - if (is_blsp_uart(msm_uport)) - iounmap(msm_uport->bam_base); + iounmap(msm_uport->bam_base); return ret; } @@ -3425,17 +3151,12 @@ static int __devinit msm_hs_probe(struct platform_device *pdev) static int __init msm_serial_hs_init(void) { int ret; - int i; ipc_msm_hs_log_ctxt = ipc_log_context_create(IPC_MSM_HS_LOG_PAGES, - "msm_serial_hs"); + "msm_serial_hs", 0); if (!ipc_msm_hs_log_ctxt) MSM_HS_WARN("%s: error creating logging context", __func__); - /* Init all UARTS as non-configured */ - for (i = 0; i < UARTDM_NR; i++) - q_uart_port[i].uport.type = PORT_UNKNOWN; - ret = uart_register_driver(&msm_hs_driver); if (unlikely(ret)) { MSM_HS_WARN("%s failed to load\n", __func__); @@ -3465,54 +3186,55 @@ static int __init msm_serial_hs_init(void) static void msm_hs_shutdown(struct uart_port *uport) { int ret; - unsigned int data; - unsigned long flags; struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); - struct platform_device *pdev = to_platform_device(uport->dev); - const struct msm_serial_hs_platform_data *pdata = - pdev->dev.platform_data; + struct circ_buf *tx_buf = &uport->state->xmit; struct msm_hs_tx *tx = &msm_uport->tx; struct sps_pipe *sps_pipe_handle = tx->cons.pipe_handle; + struct platform_device *pdev = to_platform_device(uport->dev); - msm_hs_clock_vote(msm_uport); - if (msm_uport->tx.dma_in_flight) { - if (!is_blsp_uart(msm_uport)) { - spin_lock_irqsave(&uport->lock, flags); - /* disable UART TX interface to DM */ - data = msm_hs_read(uport, UART_DM_DMEN); - data &= ~UARTDM_TX_DM_EN_BMSK; - msm_hs_write(uport, UART_DM_DMEN, data); - /* turn OFF UART Transmitter */ - msm_hs_write(uport, UART_DM_CR, - UARTDM_CR_TX_DISABLE_BMSK); - /* reset UART TX */ - msm_hs_write(uport, UART_DM_CR, RESET_TX); - /* reset UART TX Error */ - msm_hs_write(uport, UART_DM_CR, RESET_TX_ERROR); - msm_uport->tx.flush = FLUSH_STOP; - spin_unlock_irqrestore(&uport->lock, flags); - /* discard flush */ - msm_dmov_flush(msm_uport->dma_tx_channel, 0); - ret = wait_event_timeout(msm_uport->tx.wait, - msm_uport->tx.flush == FLUSH_SHUTDOWN, 100); - if (!ret) - MSM_HS_ERR("%s():HSUART TX Stalls.\n", __func__); - } else { - /* BAM Disconnect for TX */ - ret = sps_disconnect(sps_pipe_handle); - if (ret) - MSM_HS_ERR("%s(): sps_disconnect failed\n", - __func__); - } + if (pdev->id == 0) + printk(KERN_INFO "(msm_serial_hs) msm_hs_shutdown\n"); + + /* + * cancel the hrtimer first so that + * clk_state can not change in flight + */ + hrtimer_cancel(&msm_uport->clk_off_timer); + flush_work(&msm_uport->clock_off_w); + + if (use_low_power_wakeup(msm_uport)) + irq_set_irq_wake(msm_uport->wakeup.irq, 0); + + /* wake irq or uart irq is active depending on clk_state */ + if (msm_uport->clk_state == MSM_HS_CLK_OFF) { + if (use_low_power_wakeup(msm_uport)) + disable_irq(msm_uport->wakeup.irq); + } else { + disable_irq(uport->irq); + wake_unlock(&msm_uport->dma_wake_lock); } + + /* make sure tx tasklet finishes */ tasklet_kill(&msm_uport->tx.tlet); - BUG_ON(msm_uport->rx.flush < FLUSH_STOP); - wait_event(msm_uport->rx.wait, msm_uport->rx.flush == FLUSH_SHUTDOWN); + ret = wait_event_timeout(msm_uport->tx.wait, + uart_circ_empty(tx_buf), 500); + if (!ret) + MSM_HS_WARN("Shutdown called when tx buff not empty"); + + /* make sure rx tasklet finishes */ tasklet_kill(&msm_uport->rx.tlet); + wait_event(msm_uport->rx.wait, msm_uport->rx.flush == FLUSH_SHUTDOWN); cancel_delayed_work_sync(&msm_uport->rx.flip_insert_work); flush_workqueue(msm_uport->hsuart_wq); - pm_runtime_disable(uport->dev); + msm_hs_clock_vote(msm_uport); + mutex_lock(&msm_uport->clk_mutex); + /* BAM Disconnect for TX */ + ret = sps_disconnect(sps_pipe_handle); + if (ret) + MSM_HS_ERR("%s(): sps_disconnect failed\n", + __func__); + WARN_ON(msm_uport->rx.flush < FLUSH_STOP); /* Disable the transmitter */ msm_hs_write(uport, UART_DM_CR, UARTDM_CR_TX_DISABLE_BMSK); /* Disable the receiver */ @@ -3525,35 +3247,27 @@ static void msm_hs_shutdown(struct uart_port *uport) * Hence mb() requires here. */ mb(); + mutex_unlock(&msm_uport->clk_mutex); + msm_uport->rx.buffer_pending = NONE_PENDING; + MSM_HS_DBG("%s(): tx, rx events complete", __func__); + msm_hs_clock_unvote(msm_uport); if (msm_uport->clk_state != MSM_HS_CLK_OFF) { /* to balance clk_state */ msm_hs_clock_unvote(msm_uport); - - printk(KERN_INFO "(msm_serial_hs) msm_hs_shutdown - dma wake unlock\n"); - wake_unlock(&msm_uport->dma_wake_lock); } - msm_hs_clock_unvote(msm_uport); + pm_runtime_disable(uport->dev); msm_uport->clk_state = MSM_HS_CLK_PORT_OFF; dma_unmap_single(uport->dev, msm_uport->tx.dma_base, UART_XMIT_SIZE, DMA_TO_DEVICE); - if (use_low_power_wakeup(msm_uport)) - irq_set_irq_wake(msm_uport->wakeup.irq, 0); - /* Free the interrupt */ free_irq(uport->irq, msm_uport); if (use_low_power_wakeup(msm_uport)) free_irq(msm_uport->wakeup.irq, msm_uport); - if (is_blsp_uart(msm_uport)) { - msm_hs_unconfig_uart_gpios(uport); - } else { - if (pdata && pdata->gpio_config) - if (pdata->gpio_config(0)) - dev_err(uport->dev, "GPIO config error\n"); - } + msm_hs_unconfig_uart_gpios(uport); } static void __exit msm_serial_hs_exit(void) @@ -3564,7 +3278,6 @@ static void __exit msm_serial_hs_exit(void) uart_unregister_driver(&msm_hs_driver); } -#if 0 /*Bluesleep manages uart clk control*/ static int msm_hs_runtime_idle(struct device *dev) { /* @@ -3578,8 +3291,13 @@ static int msm_hs_runtime_resume(struct device *dev) { struct platform_device *pdev = container_of(dev, struct platform_device, dev); - struct msm_hs_port *msm_uport = &q_uart_port[pdev->id]; - msm_hs_request_clock_on(&msm_uport->uport); + struct msm_hs_port *msm_uport = get_matching_hs_port(pdev); + + /* This check should not fail + * During probe, we set uport->line to either pdev->id or userid */ + if (msm_uport) + msm_hs_request_clock_on(&msm_uport->uport); + return 0; } @@ -3587,8 +3305,12 @@ static int msm_hs_runtime_suspend(struct device *dev) { struct platform_device *pdev = container_of(dev, struct platform_device, dev); - struct msm_hs_port *msm_uport = &q_uart_port[pdev->id]; - msm_hs_request_clock_off(&msm_uport->uport); + struct msm_hs_port *msm_uport = get_matching_hs_port(pdev); + + /* This check should not fail + * During probe, we set uport->line to either pdev->id or userid */ + if (msm_uport) + msm_hs_request_clock_off(&msm_uport->uport); return 0; } @@ -3597,7 +3319,6 @@ static const struct dev_pm_ops msm_hs_dev_pm_ops = { .runtime_resume = msm_hs_runtime_resume, .runtime_idle = msm_hs_runtime_idle, }; -#endif static struct platform_driver msm_serial_hs_platform_driver = { @@ -3605,8 +3326,7 @@ static struct platform_driver msm_serial_hs_platform_driver = { .remove = __devexit_p(msm_hs_remove), .driver = { .name = "msm_serial_hs", - /*Bluesleep manages uart clk control*/ - /*.pm = &msm_hs_dev_pm_ops,*/ + .pm = &msm_hs_dev_pm_ops, .of_match_table = msm_hs_match_table, }, }; @@ -3633,11 +3353,8 @@ static struct uart_ops msm_hs_ops = { .set_termios = msm_hs_set_termios, .type = msm_hs_type, .config_port = msm_hs_config_port, - .release_port = msm_hs_release_port, - .request_port = msm_hs_request_port, - .flush_buffer = msm_hs_flush_buffer, + .flush_buffer = NULL, .ioctl = msm_hs_ioctl, - .pm = msm_hs_power, }; module_init(msm_serial_hs_init); diff --git a/drivers/tty/serial/msm_serial_hs_hwreg.h b/drivers/tty/serial/msm_serial_hs_hwreg.h index 353524abe490..d08dca2e1ca1 100644 --- a/drivers/tty/serial/msm_serial_hs_hwreg.h +++ b/drivers/tty/serial/msm_serial_hs_hwreg.h @@ -1,6 +1,6 @@ /* drivers/serial/msm_serial_hs_hwreg.h * - * Copyright (c) 2007-2009, 2012-2013,The Linux Foundation. All rights reserved. + * Copyright (c) 2007-2009, 2012-2014,The Linux Foundation. All rights reserved. * * All source code in this file is licensed under the following license * except where indicated. @@ -61,27 +61,27 @@ enum msm_hsl_regs { }; enum msm_hs_regs { - UART_DM_MR1, - UART_DM_MR2, - UART_DM_IMR, - UART_DM_SR, - UART_DM_CR, - UART_DM_CSR, - UART_DM_IPR, - UART_DM_ISR, - UART_DM_RX_TOTAL_SNAP, - UART_DM_RFWR, - UART_DM_TFWR, - UART_DM_RF, - UART_DM_TF, - UART_DM_MISR, - UART_DM_DMRX, - UART_DM_NCF_TX, - UART_DM_DMEN, - UART_DM_TXFS, - UART_DM_RXFS, - UART_DM_RX_TRANS_CTRL, - UART_DM_LAST, + UART_DM_MR1 = 0x0, + UART_DM_MR2 = 0x4, + UART_DM_IMR = 0xb0, + UART_DM_SR = 0xa4, + UART_DM_CR = 0xa8, + UART_DM_CSR = 0xa0, + UART_DM_IPR = 0x18, + UART_DM_ISR = 0xb4, + UART_DM_RX_TOTAL_SNAP = 0xbc, + UART_DM_TFWR = 0x1c, + UART_DM_RFWR = 0x20, + UART_DM_RF = 0x140, + UART_DM_TF = 0x100, + UART_DM_MISR = 0xac, + UART_DM_DMRX = 0x34, + UART_DM_NCF_TX = 0x40, + UART_DM_DMEN = 0x3c, + UART_DM_TXFS = 0x4c, + UART_DM_RXFS = 0x50, + UART_DM_RX_TRANS_CTRL = 0xcc, + UART_DM_BCR = 0xc8, }; #define UARTDM_MR1_ADDR 0x0 @@ -94,7 +94,11 @@ enum msm_hs_regs { * UARTDM Core v1.4 STALE_IRQ_EMPTY bit defination * Stale interrupt will fire if bit is set when RX-FIFO is empty */ +#define UARTDM_BCR_TX_BREAK_DISABLE 0x1 #define UARTDM_BCR_STALE_IRQ_EMPTY 0x2 +#define UARTDM_BCR_RX_DMRX_LOW_EN 0x4 +#define UARTDM_BCR_RX_STAL_IRQ_DMRX_EQL 0x10 +#define UARTDM_BCR_RX_DMRX_1BYTE_RES_EN 0x20 /* TRANSFER_CONTROL Register for UARTDM Core v1.4 */ #define UARTDM_RX_TRANS_CTRL_ADDR 0xcc diff --git a/drivers/tty/serial/msm_serial_hs_lite.c b/drivers/tty/serial/msm_serial_hs_lite.c index ad583c7d1256..5f1d10f18738 100644 --- a/drivers/tty/serial/msm_serial_hs_lite.c +++ b/drivers/tty/serial/msm_serial_hs_lite.c @@ -66,7 +66,15 @@ enum uart_core_type { BLSP_HSUART, }; +#if defined(CONFIG_MACH_HLTEDCM)|| defined(CONFIG_MACH_HLTEKDI) +#define CONFIG_DUMP_UART_PACKET_DISABLE 1 +#endif + +#if defined(CONFIG_DUMP_UART_PACKET_DISABLE) +#define DUMP_UART_PACKET 0 +#else #define DUMP_UART_PACKET 1 +#endif #define FULL_DUMP_UART_PACKET 0 #if DUMP_UART_PACKET diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 685ac0b84e70..e9fee67bf31a 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -3006,7 +3006,13 @@ int __devinit dwc3_gadget_init(struct dwc3 *dwc) dev_set_name(&dwc->gadget.dev, "gadget"); dwc->gadget.ops = &dwc3_gadget_ops; -#if defined(CONFIG_SEC_LT03_PROJECT) || defined(CONFIG_SEC_MONDRIAN_PROJECT) +#if defined(CONFIG_SEC_LT03_PROJECT) || defined(CONFIG_SEC_MONDRIAN_PROJECT)\ + || defined(CONFIG_SEC_KS01_PROJECT) || defined(CONFIG_SEC_PICASSO_PROJECT)\ + || defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_SEC_FRESCO_PROJECT)\ + || defined(CONFIG_SEC_KSPORTS_PROJECT) || defined(CONFIG_SEC_JACTIVE_PROJECT)\ + || defined(CONFIG_SEC_S_PROJECT) || defined(CONFIG_SEC_PATEK_PROJECT)\ + || defined(CONFIG_SEC_CHAGALL_PROJECT) || defined(CONFIG_SEC_KLIMT_PROJECT)\ + || defined(CONFIG_MACH_JS01LTEDCM) dwc->gadget.max_speed = USB_SPEED_HIGH; #else dwc->gadget.max_speed = USB_SPEED_SUPER; diff --git a/drivers/usb/gadget/android.c b/drivers/usb/gadget/android.c index deb8868db665..fc443901d8d2 100644 --- a/drivers/usb/gadget/android.c +++ b/drivers/usb/gadget/android.c @@ -3204,7 +3204,13 @@ static struct usb_composite_driver android_usb_driver = { .dev = &device_desc, .strings = dev_strings, .unbind = android_usb_unbind, -#if defined(CONFIG_SEC_LT03_PROJECT) || defined(CONFIG_SEC_MONDRIAN_PROJECT) +#if defined(CONFIG_SEC_LT03_PROJECT) || defined(CONFIG_SEC_MONDRIAN_PROJECT)\ + || defined(CONFIG_SEC_KS01_PROJECT) || defined(CONFIG_SEC_PICASSO_PROJECT)\ + || defined(CONFIG_SEC_KACTIVE_PROJECT) || defined(CONFIG_SEC_FRESCO_PROJECT)\ + || defined(CONFIG_SEC_KSPORTS_PROJECT) || defined(CONFIG_SEC_JACTIVE_PROJECT)\ + || defined(CONFIG_SEC_S_PROJECT) || defined(CONFIG_SEC_PATEK_PROJECT)\ + || defined(CONFIG_SEC_CHAGALL_PROJECT) || defined(CONFIG_SEC_KLIMT_PROJECT)\ + || defined(CONFIG_MACH_JS01LTEDCM) .max_speed = USB_SPEED_HIGH #else .max_speed = USB_SPEED_SUPER diff --git a/drivers/usb/gadget/f_mass_storage.c b/drivers/usb/gadget/f_mass_storage.c index 31174548bf5a..92b43c93e089 100644 --- a/drivers/usb/gadget/f_mass_storage.c +++ b/drivers/usb/gadget/f_mass_storage.c @@ -3259,6 +3259,7 @@ static int fsg_main_thread(void *common_) static DEVICE_ATTR(ro, 0644, fsg_show_ro, fsg_store_ro); static DEVICE_ATTR(nofua, 0644, fsg_show_nofua, fsg_store_nofua); static DEVICE_ATTR(file, 0644, fsg_show_file, fsg_store_file); +static DEVICE_ATTR(cdrom, 0644, fsg_show_cdrom, fsg_store_cdrom); #ifdef CONFIG_USB_MSC_PROFILING static DEVICE_ATTR(perf, 0644, fsg_show_perf, fsg_store_perf); #endif @@ -3384,6 +3385,9 @@ static struct fsg_common *fsg_common_init(struct fsg_common *common, rc = device_create_file(&curlun->dev, &dev_attr_nofua); if (rc) goto error_luns; + rc = device_create_file(&curlun->dev, &dev_attr_cdrom); + if (rc) + goto error_luns; #ifdef CONFIG_USB_MSC_PROFILING rc = device_create_file(&curlun->dev, &dev_attr_perf); if (rc) @@ -3530,6 +3534,7 @@ static void fsg_common_release(struct kref *ref) #ifdef CONFIG_USB_MSC_PROFILING device_remove_file(&lun->dev, &dev_attr_perf); #endif + device_remove_file(&lun->dev, &dev_attr_cdrom); device_remove_file(&lun->dev, &dev_attr_nofua); device_remove_file(&lun->dev, &dev_attr_ro); device_remove_file(&lun->dev, &dev_attr_file); diff --git a/drivers/usb/gadget/storage_common.c b/drivers/usb/gadget/storage_common.c index b0e227219de2..8d0e56fca5d1 100644 --- a/drivers/usb/gadget/storage_common.c +++ b/drivers/usb/gadget/storage_common.c @@ -804,6 +804,14 @@ static ssize_t fsg_show_nofua(struct device *dev, struct device_attribute *attr, return sprintf(buf, "%u\n", curlun->nofua); } +static ssize_t fsg_show_cdrom (struct device *dev, struct device_attribute *attr, + char *buf) +{ + struct fsg_lun *curlun = fsg_lun_from_dev(dev); + + return sprintf(buf, "%d\n", curlun->cdrom); +} + #ifdef CONFIG_USB_MSC_PROFILING static ssize_t fsg_show_perf(struct device *dev, struct device_attribute *attr, char *buf) @@ -959,3 +967,32 @@ static ssize_t fsg_store_file(struct device *dev, struct device_attribute *attr, up_write(filesem); return (rc < 0 ? rc : count); } + +static ssize_t fsg_store_cdrom(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) +{ + ssize_t rc; + struct fsg_lun *curlun = fsg_lun_from_dev(dev); + struct rw_semaphore *filesem = dev_get_drvdata(dev); + unsigned cdrom; + + rc = kstrtouint(buf, 2, &cdrom); + if (rc) + return rc; + + /* + * Allow the cdrom status to change only while the + * backing file is closed. + */ + down_read(filesem); + if (fsg_lun_is_open(curlun)) { + LDBG(curlun, "cdrom status change prevented\n"); + rc = -EBUSY; + } else { + curlun->cdrom = cdrom; + LDBG(curlun, "cdrom status set to %d\n", curlun->cdrom); + rc = count; + } + up_read(filesem); + return rc; +} diff --git a/drivers/video/msm/mdss/Makefile b/drivers/video/msm/mdss/Makefile index c353f4870d36..143764ebf068 100644 --- a/drivers/video/msm/mdss/Makefile +++ b/drivers/video/msm/mdss/Makefile @@ -2,11 +2,11 @@ ifeq ($(TARGET_BUILD_VARIANT),user) EXTRA_CFLAGS += -DDLOG_USER_VARIANT endif obj-$(CONFIG_SAMSUNG_DEBUG_DISPLAY) += dlog.o -mdss-mdp3-objs = mdp3.o mdp3_dma.o mdp3_ctrl.o +mdss-mdp3-objs = mdp3.o mdp3_dma.o mdp3_ctrl.o dsi_status_v2.o mdss-mdp3-objs += mdp3_ppp.o mdp3_ppp_hwio.o mdp3_ppp_data.o obj-$(CONFIG_FB_MSM_MDSS_MDP3) += mdss-mdp3.o -mdss-mdp-objs := mdss_mdp.o mdss_mdp_ctl.o mdss_mdp_pipe.o mdss_mdp_util.o +mdss-mdp-objs := mdss_mdp.o mdss_mdp_ctl.o mdss_mdp_pipe.o mdss_mdp_util.o dsi_status_6g.o mdss-mdp-objs += mdss_mdp_pp.o mdss-mdp-objs += mdss_mdp_intf_video.o mdss-mdp-objs += mdss_mdp_intf_cmd.o @@ -18,7 +18,7 @@ mdss-mdp-objs += mdss_mdp_wb.o obj-$(CONFIG_FB_MSM_MDSS) += mdss-mdp.o ifeq ($(CONFIG_FB_MSM_MDSS),y) -obj-$(CONFIG_DEBUG_FS) += mdss_debug.o +obj-$(CONFIG_DEBUG_FS) += mdss_debug.o mdss_debug_xlog.o endif ifeq ($(CONFIG_FB_MSM_MDSS_DSI_DBG),y) @@ -91,11 +91,7 @@ obj-$(CONFIG_FB_MSM_QPIC_ILI_QVGA_PANEL) += qpic_panel_ili_qvga.o obj-$(CONFIG_FB_MSM_MDSS) += mdss_fb.o -ifeq ($(CONFIG_FB_MSM_MDSS_MDP3),y) -obj-$(CONFIG_FB_MSM_MDSS_DSI_CTRL_STATUS) += dsi_status_v2.o -else obj-$(CONFIG_FB_MSM_MDSS_DSI_CTRL_STATUS) += mdss_dsi_status.o -endif obj-$(CONFIG_FB_MSM_EDP_SAMSUNG) += edp-eeprom.o edp-backlight.o ifeq ($(CONFIG_FB_MSM_EDP_SAMSUNG),y) diff --git a/drivers/video/msm/mdss/dsi_status_6g.c b/drivers/video/msm/mdss/dsi_status_6g.c new file mode 100644 index 000000000000..4f7e4daf65c3 --- /dev/null +++ b/drivers/video/msm/mdss/dsi_status_6g.c @@ -0,0 +1,118 @@ +/* Copyright (c) 2013-2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include + +#include "mdss_dsi.h" +#include "mdss_mdp.h" + +/* + * mdss_check_dsi_ctrl_status() - Check MDP5 DSI controller status periodically. + * @work : dsi controller status data + * @interval : duration in milliseconds to schedule work queue + * + * This function calls check_status API on DSI controller to send the BTA + * command. If DSI controller fails to acknowledge the BTA command, it sends + * the PANEL_ALIVE=0 status to HAL layer. + */ +void mdss_check_dsi_ctrl_status(struct work_struct *work, uint32_t interval) +{ + struct dsi_status_data *pstatus_data = NULL; + struct mdss_panel_data *pdata = NULL; + struct mdss_dsi_ctrl_pdata *ctrl_pdata = NULL; + struct mdss_overlay_private *mdp5_data = NULL; + struct mdss_mdp_ctl *ctl = NULL; + int ret = 0; + + pstatus_data = container_of(to_delayed_work(work), + struct dsi_status_data, check_status); + if (!pstatus_data || !(pstatus_data->mfd)) { + pr_err("%s: mfd not available\n", __func__); + return; + } + + pdata = dev_get_platdata(&pstatus_data->mfd->pdev->dev); + if (!pdata) { + pr_err("%s: Panel data not available\n", __func__); + return; + } + + ctrl_pdata = container_of(pdata, struct mdss_dsi_ctrl_pdata, + panel_data); + if (!ctrl_pdata || !ctrl_pdata->check_status) { + pr_err("%s: DSI ctrl or status_check callback not available\n", + __func__); + return; + } + + mdp5_data = mfd_to_mdp5_data(pstatus_data->mfd); + ctl = mfd_to_ctl(pstatus_data->mfd); + + if (!ctl) { + pr_err("%s: Display is off\n", __func__); + return; + } + + if (ctl->shared_lock) + mutex_lock(ctl->shared_lock); + mutex_lock(&mdp5_data->ov_lock); + + if (pstatus_data->mfd->shutdown_pending) { + mutex_unlock(&mdp5_data->ov_lock); + if (ctl->shared_lock) + mutex_unlock(ctl->shared_lock); + pr_err("%s: DSI turning off, avoiding BTA status check\n", + __func__); + return; + } + + /* + * For the command mode panels, we return pan display + * IOCTL on vsync interrupt. So, after vsync interrupt comes + * and when DMA_P is in progress, if the panel stops responding + * and if we trigger BTA before DMA_P finishes, then the DSI + * FIFO will not be cleared since the DSI data bus control + * doesn't come back to the host after BTA. This may cause the + * display reset not to be proper. Hence, wait for DMA_P done + * for command mode panels before triggering BTA. + */ + if (ctl->wait_pingpong) + ctl->wait_pingpong(ctl, NULL); + + pr_debug("%s: DSI ctrl wait for ping pong done\n", __func__); + + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); + ret = ctrl_pdata->check_status(ctrl_pdata); + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); + + mutex_unlock(&mdp5_data->ov_lock); + if (ctl->shared_lock) + mutex_unlock(ctl->shared_lock); + + if ((pstatus_data->mfd->panel_power_on)) { + if (ret > 0) { + schedule_delayed_work(&pstatus_data->check_status, + msecs_to_jiffies(interval)); + } else { + char *envp[2] = {"PANEL_ALIVE=0", NULL}; + pdata->panel_info.panel_dead = true; + ret = kobject_uevent_env( + &pstatus_data->mfd->fbi->dev->kobj, + KOBJ_CHANGE, envp); + pr_err("%s: Panel has gone bad, sending uevent - %s\n", + __func__, envp[0]); + } + } +} diff --git a/drivers/video/msm/mdss/dsi_status_v2.c b/drivers/video/msm/mdss/dsi_status_v2.c index 565401d6aee1..f0966ccd8eb0 100644 --- a/drivers/video/msm/mdss/dsi_status_v2.c +++ b/drivers/video/msm/mdss/dsi_status_v2.c @@ -10,49 +10,26 @@ * GNU General Public License for more details. */ -#include -#include -#include -#include -#include #include #include -#include -#include -#include -#include #include #include #include -#include "mdss_fb.h" #include "mdss_dsi.h" -#include "mdss_panel.h" #include "mdp3_ctrl.h" -#define STATUS_CHECK_INTERVAL 5000 - -/** - * dsi_status_data - Stores all the data necessary for this module - * @fb_notif: Used to egister for the fb events - * @live_status: Delayed worker structure, used to associate the - * delayed worker function - * @mfd: Used to store the msm_fb_data_type received when the notifier - * call back happens - * @root: Stores the dir created by debuugfs - * @debugfs_reset_panel: The debugfs variable used to inject errors +/* + * mdp3_check_dsi_ctrl_status() - Check MDP3 DSI controller status periodically. + * @work : dsi controller status data + * @interval : duration in milliseconds to schedule work queue + * + * This function calls check_status API on DSI controller to send the BTA + * command. If DSI controller fails to acknowledge the BTA command, it sends + * the PANEL_ALIVE=0 status to HAL layer. */ - -struct dsi_status_data { - struct notifier_block fb_notifier; - struct delayed_work check_status; - struct msm_fb_data_type *mfd; - uint32_t check_interval; -}; -struct dsi_status_data *pstatus_data; -static uint32_t interval = STATUS_CHECK_INTERVAL; - -void check_dsi_ctrl_status(struct work_struct *work) +void mdp3_check_dsi_ctrl_status(struct work_struct *work, + uint32_t interval) { struct dsi_status_data *pdsi_status = NULL; struct mdss_panel_data *pdata = NULL; @@ -61,9 +38,10 @@ void check_dsi_ctrl_status(struct work_struct *work) int ret = 0; pdsi_status = container_of(to_delayed_work(work), - struct dsi_status_data, check_status); - if (!pdsi_status) { - pr_err("%s: DSI status data not available\n", __func__); + struct dsi_status_data, check_status); + + if (!pdsi_status || !(pdsi_status->mfd)) { + pr_err("%s: mfd not available\n", __func__); return; } @@ -72,16 +50,23 @@ void check_dsi_ctrl_status(struct work_struct *work) pr_err("%s: Panel data not available\n", __func__); return; } + ctrl_pdata = container_of(pdata, struct mdss_dsi_ctrl_pdata, panel_data); + if (!ctrl_pdata || !ctrl_pdata->check_status) { - pr_err("%s: DSI ctrl or status_check callback not avilable\n", + pr_err("%s: DSI ctrl or status_check callback not available\n", __func__); return; } + mdp3_session = pdsi_status->mfd->mdp.private1; - mutex_lock(&mdp3_session->lock); + if (!mdp3_session) { + pr_err("%s: Display is off\n", __func__); + return; + } + mutex_lock(&mdp3_session->lock); if (!mdp3_session->status) { pr_info("display off already\n"); mutex_unlock(&mdp3_session->lock); @@ -94,107 +79,22 @@ void check_dsi_ctrl_status(struct work_struct *work) if (!ret) ret = ctrl_pdata->check_status(ctrl_pdata); else - pr_err("wait_for_dma_done error\n"); - + pr_err("%s: wait_for_dma_done error\n", __func__); mutex_unlock(&mdp3_session->lock); if ((pdsi_status->mfd->panel_power_on)) { if (ret > 0) { schedule_delayed_work(&pdsi_status->check_status, - msecs_to_jiffies(pdsi_status->check_interval)); + msecs_to_jiffies(interval)); } else { char *envp[2] = {"PANEL_ALIVE=0", NULL}; pdata->panel_info.panel_dead = true; ret = kobject_uevent_env( - &pdsi_status->mfd->fbi->dev->kobj, - KOBJ_CHANGE, envp); + &pdsi_status->mfd->fbi->dev->kobj, + KOBJ_CHANGE, envp); pr_err("%s: Panel has gone bad, sending uevent - %s\n", __func__, envp[0]); } } } -/** - * fb_notifier_callback() - Call back function for the fb_register_client() - * notifying events - * @self : notifier block - * @event : The event that was triggered - * @data : Of type struct fb_event - * - * - This function listens for FB_BLANK_UNBLANK and FB_BLANK_POWERDOWN events - * - Based on the event the delayed work is either scheduled again after - * PANEL_STATUS_CHECK_INTERVAL or cancelled - */ -static int fb_event_callback(struct notifier_block *self, - unsigned long event, void *data) -{ - struct fb_event *evdata = (struct fb_event *)data; - struct dsi_status_data *pdata = container_of(self, - struct dsi_status_data, fb_notifier); - pdata->mfd = (struct msm_fb_data_type *)evdata->info->par; - - if (event == FB_EVENT_BLANK && evdata) { - int *blank = evdata->data; - switch (*blank) { - case FB_BLANK_UNBLANK: - schedule_delayed_work(&pdata->check_status, - msecs_to_jiffies(STATUS_CHECK_INTERVAL)); - break; - case FB_BLANK_POWERDOWN: - cancel_delayed_work(&pdata->check_status); - break; - } - } - return 0; -} - -int __init mdss_dsi_status_init(void) -{ - int rc; - - pstatus_data = kzalloc(sizeof(struct dsi_status_data), GFP_KERNEL); - if (!pstatus_data) { - pr_err("%s: can't alloc mem\n", __func__); - rc = -ENOMEM; - return rc; - } - - memset(pstatus_data, 0, sizeof(struct dsi_status_data)); - - pstatus_data->fb_notifier.notifier_call = fb_event_callback; - - rc = fb_register_client(&pstatus_data->fb_notifier); - if (rc < 0) { - pr_err("%s: fb_register_client failed, returned with rc=%d\n", - __func__, rc); - kfree(pstatus_data); - return -EPERM; - } - - pstatus_data->check_interval = interval; - pr_info("%s: DSI status check interval:%d\n", __func__, interval); - - INIT_DELAYED_WORK(&pstatus_data->check_status, check_dsi_ctrl_status); - - pr_debug("%s: DSI ctrl status thread initialized\n", __func__); - - return rc; -} - -void __exit mdss_dsi_status_exit(void) -{ - fb_unregister_client(&pstatus_data->fb_notifier); - cancel_delayed_work_sync(&pstatus_data->check_status); - kfree(pstatus_data); - pr_debug("%s: DSI ctrl status thread removed\n", __func__); -} - -module_param(interval, uint, 0); -MODULE_PARM_DESC(interval, - "Duration in milliseconds to send BTA command for checking" - "DSI status periodically"); - -module_init(mdss_dsi_status_init); -module_exit(mdss_dsi_status_exit); - -MODULE_LICENSE("GPL v2"); diff --git a/drivers/video/msm/mdss/mdnie_lite_tuning.c b/drivers/video/msm/mdss/mdnie_lite_tuning.c index e97d996542b6..0a29fed94b5f 100644 --- a/drivers/video/msm/mdss/mdnie_lite_tuning.c +++ b/drivers/video/msm/mdss/mdnie_lite_tuning.c @@ -43,8 +43,6 @@ #if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_FULL_HD_PT_PANEL) // H #include "mdnie_lite_tuning_data_hlte.h" -#elif defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_VIDEO_FULL_HD_PT_PANEL) // KS01 -#include "mdnie_lite_tuning_data.h" #elif defined(CONFIG_FB_MSM_MIPI_SAMSUNG_YOUM_CMD_FULL_HD_PT_PANEL) // F #include "mdnie_lite_tuning_data_flte.h" #elif defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) // K @@ -55,11 +53,11 @@ #include "mdnie_lite_tuning_data_jactiveltexx.h" #elif defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_VIDEO_WVGA_S6E88A0_PT_PANEL) // ? #include "mdnie_lite_tuning_data_wvga_s6e88a0.h" -#elif defined(CONFIG_MACH_JS01LTEDCM) || defined(CONFIG_MACH_JS01LTESBM) // JS01 -#include "mdnie_lite_tuning_data_js01.h" */ +#elif defined(CONFIG_MACH_JS01LTEDCM) // JS01 +#include "mdnie_lite_tuning_data_js01.h" #else -#include "mdnie_lite_tuning_data.h" +#include "mdnie_lite_tuning_data.h" // KS01 #endif #if defined(CONFIG_TDMB) @@ -147,7 +145,9 @@ const char accessibility_name[ACCESSIBILITY_MAX][20] = { "ACCESSIBILITY_OFF", "NEGATIVE_MODE", "COLOR_BLIND_MODE", -#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) +#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) || \ + defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_FULL_HD_PT_PANEL) ||\ + defined(CONFIG_MACH_JS01LTEDCM) "SCREEN_CURTAIN_MODE", #endif }; @@ -697,7 +697,9 @@ static ssize_t accessibility_store(struct device *dev, memcpy(&COLOR_BLIND_2[MDNIE_COLOR_BLINDE_OFFSET], buffer, MDNIE_COLOR_BLINDE_CMD); } -#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) +#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) || \ + defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_FULL_HD_PT_PANEL) ||\ + defined(CONFIG_MACH_JS01LTEDCM) else if (cmd_value == SCREEN_CURTAIN) { mdnie_tun_state.accessibility = SCREEN_CURTAIN; } diff --git a/drivers/video/msm/mdss/mdnie_lite_tuning.h b/drivers/video/msm/mdss/mdnie_lite_tuning.h index 1668c20464df..2dbaa92b2636 100644 --- a/drivers/video/msm/mdss/mdnie_lite_tuning.h +++ b/drivers/video/msm/mdss/mdnie_lite_tuning.h @@ -145,7 +145,9 @@ enum ACCESSIBILITY { ACCESSIBILITY_OFF, NEGATIVE, COLOR_BLIND, -#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) +#if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL) || \ + defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_FULL_HD_PT_PANEL) ||\ + defined(CONFIG_MACH_JS01LTEDCM) SCREEN_CURTAIN, #endif ACCESSIBILITY_MAX, diff --git a/drivers/video/msm/mdss/mdnie_lite_tuning_data_hlte.h b/drivers/video/msm/mdss/mdnie_lite_tuning_data_hlte.h index 0f1e6c1313d8..75b21d5ce260 100644 --- a/drivers/video/msm/mdss/mdnie_lite_tuning_data_hlte.h +++ b/drivers/video/msm/mdss/mdnie_lite_tuning_data_hlte.h @@ -21,6 +21,127 @@ ////////////////// UI /// ///////////////////// +static char SCREEN_CURTAIN_1[] = { + //start + 0xEB, + 0x01, //mdnie_en + 0x00, //data_width mask 00 000 + 0x32, //scr_roi 1 scr algo_roi 1 algo 00 1 0 00 1 0 + 0x00, //sharpen cc gamma 00 0 0 +}; + +static char SCREEN_CURTAIN_2[] = { + 0xEC, + 0x00, //roi ctrl + 0x00, //roi0 x start + 0x00, + 0x00, //roi0 x end + 0x00, + 0x00, //roi0 y start + 0x00, + 0x00, //roi0 y end + 0x00, + 0x00, //roi1 x strat + 0x00, + 0x00, //roi1 x end + 0x00, + 0x00, //roi1 y start + 0x00, + 0x00, //roi1 y end + 0x00, + 0x00, //scr Cr Yb + 0x00, //scr Rr Bb + 0x00, //scr Cg Yg + 0x00, //scr Rg Bg + 0x00, //scr Cb Yr + 0x00, //scr Rb Br + 0x00, //scr Mr Mb + 0x00, //scr Gr Gb + 0x00, //scr Mg Mg + 0x00, //scr Gg Gg + 0x00, //scr Mb Mr + 0x00, //scr Gb Gr + 0x00, //scr Yr Cb + 0x00, //scr Br Rb + 0x00, //scr Yg Cg + 0x00, //scr Bg Rg + 0x00, //scr Yb Cr + 0x00, //scr Bb Rr + 0x00, //scr Wr Wb + 0x00, //scr Kr Kb + 0x00, //scr Wg Wg + 0x00, //scr Kg Kg + 0x00, //scr Wb Wr + 0x00, //scr Kb Kr + 0x00, //curve 1 b + 0x20, //curve 1 a + 0x00, //curve 2 b + 0x20, //curve 2 a + 0x00, //curve 3 b + 0x20, //curve 3 a + 0x00, //curve 4 b + 0x20, //curve 4 a + 0x02, //curve 5 b + 0x1b, //curve 5 a + 0x02, //curve 6 b + 0x1b, //curve 6 a + 0x02, //curve 7 b + 0x1b, //curve 7 a + 0x02, //curve 8 b + 0x1b, //curve 8 a + 0x09, //curve 9 b + 0xa6, //curve 9 a + 0x09, //curve10 b + 0xa6, //curve10 a + 0x09, //curve11 b + 0xa6, //curve11 a + 0x09, //curve12 b + 0xa6, //curve12 a + 0x00, //curve13 b + 0x20, //curve13 a + 0x00, //curve14 b + 0x20, //curve14 a + 0x00, //curve15 b + 0x20, //curve15 a + 0x00, //curve16 b + 0x20, //curve16 a + 0x00, //curve17 b + 0x20, //curve17 a + 0x00, //curve18 b + 0x20, //curve18 a + 0x00, //curve19 b + 0x20, //curve19 a + 0x00, //curve20 b + 0x20, //curve20 a + 0x00, //curve21 b + 0x20, //curve21 a + 0x00, //curve22 b + 0x20, //curve22 a + 0x00, //curve23 b + 0x20, //curve23 a + 0x00, //curve24 b + 0xFF, //curve24 a + 0x04, //cc r1 + 0x00, + 0x00, //cc r2 + 0x00, + 0x00, //cc r3 + 0x00, + 0x00, //cc g1 + 0x00, + 0x04, //cc g2 + 0x00, + 0x00, //cc g3 + 0x00, + 0x00, //cc b1 + 0x00, + 0x00, //cc b2 + 0x00, + 0x04, //cc b3 + 0x00, + //end +}; + static char STANDARD_UI_1[] = { 0xEB, 0x01, //mdnie_en @@ -4483,6 +4604,7 @@ char *blind_tune_value[ACCESSIBILITY_MAX][2] = { {NULL, NULL}, {NEGATIVE_1, NEGATIVE_2}, {COLOR_BLIND_1, COLOR_BLIND_2}, + {SCREEN_CURTAIN_1, SCREEN_CURTAIN_2}, }; char *mdnie_tune_value[MAX_mDNIe_MODE][MAX_BACKGROUND_MODE][MAX_OUTDOOR_MODE][2] = { diff --git a/drivers/video/msm/mdss/mdnie_lite_tuning_data_js01.h b/drivers/video/msm/mdss/mdnie_lite_tuning_data_js01.h index 51d4cb4a8bcb..4484fdb33659 100644 --- a/drivers/video/msm/mdss/mdnie_lite_tuning_data_js01.h +++ b/drivers/video/msm/mdss/mdnie_lite_tuning_data_js01.h @@ -21,6 +21,127 @@ ////////////////// UI /// ///////////////////// +static char SCREEN_CURTAIN_1[] = { + //start + 0xEB, + 0x01, //mdnie_en + 0x00, //data_width mask 00 000 + 0x30, //scr_roi 1 scr algo_roi 1 algo 00 1 0 00 1 0 + 0x00, //sharpen cc gamma 00 0 0 +}; + +static char SCREEN_CURTAIN_2[] = { + 0xEC, + 0x00, //roi ctrl + 0x00, //roi0 x start + 0x00, + 0x00, //roi0 x end + 0x00, + 0x00, //roi0 y start + 0x00, + 0x00, //roi0 y end + 0x00, + 0x00, //roi1 x strat + 0x00, + 0x00, //roi1 x end + 0x00, + 0x00, //roi1 y start + 0x00, + 0x00, //roi1 y end + 0x00, + 0x00, //scr Cr Yb + 0x00, //scr Rr Bb + 0x00, //scr Cg Yg + 0x00, //scr Rg Bg + 0x00, //scr Cb Yr + 0x00, //scr Rb Br + 0x00, //scr Mr Mb + 0x00, //scr Gr Gb + 0x00, //scr Mg Mg + 0x00, //scr Gg Gg + 0x00, //scr Mb Mr + 0x00, //scr Gb Gr + 0x00, //scr Yr Cb + 0x00, //scr Br Rb + 0x00, //scr Yg Cg + 0x00, //scr Bg Rg + 0x00, //scr Yb Cr + 0x00, //scr Bb Rr + 0x00, //scr Wr Wb + 0x00, //scr Kr Kb + 0x00, //scr Wg Wg + 0x00, //scr Kg Kg + 0x00, //scr Wb Wr + 0x00, //scr Kb Kr + 0x00, //curve 1 b + 0x20, //curve 1 a + 0x00, //curve 2 b + 0x20, //curve 2 a + 0x00, //curve 3 b + 0x20, //curve 3 a + 0x00, //curve 4 b + 0x20, //curve 4 a + 0x02, //curve 5 b + 0x1b, //curve 5 a + 0x02, //curve 6 b + 0x1b, //curve 6 a + 0x02, //curve 7 b + 0x1b, //curve 7 a + 0x02, //curve 8 b + 0x1b, //curve 8 a + 0x09, //curve 9 b + 0xa6, //curve 9 a + 0x09, //curve10 b + 0xa6, //curve10 a + 0x09, //curve11 b + 0xa6, //curve11 a + 0x09, //curve12 b + 0xa6, //curve12 a + 0x00, //curve13 b + 0x20, //curve13 a + 0x00, //curve14 b + 0x20, //curve14 a + 0x00, //curve15 b + 0x20, //curve15 a + 0x00, //curve16 b + 0x20, //curve16 a + 0x00, //curve17 b + 0x20, //curve17 a + 0x00, //curve18 b + 0x20, //curve18 a + 0x00, //curve19 b + 0x20, //curve19 a + 0x00, //curve20 b + 0x20, //curve20 a + 0x00, //curve21 b + 0x20, //curve21 a + 0x00, //curve22 b + 0x20, //curve22 a + 0x00, //curve23 b + 0x20, //curve23 a + 0x00, //curve24 b + 0xFF, //curve24 a + 0x04, //cc r1 + 0x00, + 0x00, //cc r2 + 0x00, + 0x00, //cc r3 + 0x00, + 0x00, //cc g1 + 0x00, + 0x04, //cc g2 + 0x00, + 0x00, //cc g3 + 0x00, + 0x00, //cc b1 + 0x00, + 0x00, //cc b2 + 0x00, + 0x04, //cc b3 + 0x00, + //end +}; + static char STANDARD_UI_1[] = { 0xEB, 0x01, //mdnie_en @@ -4474,15 +4595,17 @@ char AUTO_EMAIL_2[] = { 0x36, }; -char *blind_tune_value_fhd[ACCESSIBILITY_MAX][2] = { +char *blind_tune_value[ACCESSIBILITY_MAX][2] = { /* ACCESSIBILITY_OFF, NEGATIVE, COLOR_BLIND, + SCREEN_CURTAIN, */ {NULL, NULL}, - {NEGATIVE_1_FHD, NEGATIVE_2_FHD}, - {COLOR_BLIND_1_FHD, COLOR_BLIND_2_FHD}, + {NEGATIVE_1, NEGATIVE_2}, + {COLOR_BLIND_1, COLOR_BLIND_2}, + {SCREEN_CURTAIN_1, SCREEN_CURTAIN_2}, }; char *mdnie_tune_value[MAX_mDNIe_MODE][MAX_BACKGROUND_MODE][MAX_OUTDOOR_MODE][2] = { diff --git a/drivers/video/msm/mdss/mdp3.c b/drivers/video/msm/mdss/mdp3.c index 52ffe2126a8e..2bd1c569282f 100644 --- a/drivers/video/msm/mdss/mdp3.c +++ b/drivers/video/msm/mdss/mdp3.c @@ -2147,6 +2147,7 @@ static int mdp3_probe(struct platform_device *pdev) .panel_register_done = mdp3_panel_register_done, .fb_stride = mdp3_fb_stride, .fb_mem_alloc_fnc = mdp3_alloc, + .check_dsi_status = mdp3_check_dsi_ctrl_status, }; struct mdp3_intr_cb underrun_cb = { diff --git a/drivers/video/msm/mdss/mdp3.h b/drivers/video/msm/mdss/mdp3.h index a253d8f4589b..9506d21266a0 100644 --- a/drivers/video/msm/mdss/mdp3.h +++ b/drivers/video/msm/mdss/mdp3.h @@ -203,6 +203,8 @@ void mdp3_batfet_ctrl(int enable); int mdp3_misr_set(struct mdp_misr *misr_req); int mdp3_misr_get(struct mdp_misr *misr_resp); +void mdp3_check_dsi_ctrl_status(struct work_struct *work, + uint32_t interval); #define MDP3_REG_WRITE(addr, val) writel_relaxed(val, mdp3_res->mdp_base + addr) #define MDP3_REG_READ(addr) readl_relaxed(mdp3_res->mdp_base + addr) diff --git a/drivers/video/msm/mdss/mdp3_ctrl.c b/drivers/video/msm/mdss/mdp3_ctrl.c index 9ac5f163a922..638f1a95efe6 100644 --- a/drivers/video/msm/mdss/mdp3_ctrl.c +++ b/drivers/video/msm/mdss/mdp3_ctrl.c @@ -652,6 +652,9 @@ static int mdp3_ctrl_off(struct msm_fb_data_type *mfd) panel = mdp3_session->panel; mutex_lock(&mdp3_session->lock); + if (panel && panel->set_backlight) + panel->set_backlight(panel, 0); + if (!mdp3_session->status) { pr_debug("fb%d is off already", mfd->index); goto off_error; diff --git a/drivers/video/msm/mdss/mdss.h b/drivers/video/msm/mdss/mdss.h index ca7f9dd245f6..df9d2b7a1b4b 100644 --- a/drivers/video/msm/mdss/mdss.h +++ b/drivers/video/msm/mdss/mdss.h @@ -126,6 +126,7 @@ struct mdss_data_type { u32 has_bwc; u32 has_decimation; u8 has_wfd_blk; + u32 has_no_lut_read; u8 has_wb_ad; u32 rotator_ot_limit; @@ -157,6 +158,7 @@ struct mdss_data_type { struct mdss_fudge_factor ab_factor; struct mdss_fudge_factor ib_factor; + struct mdss_fudge_factor ib_factor_overlap; struct mdss_fudge_factor clk_factor; struct mdss_hw_settings *hw_settings; diff --git a/drivers/video/msm/mdss/mdss_debug.c b/drivers/video/msm/mdss/mdss_debug.c index 0d0240fa9162..aeb3f866daf3 100644 --- a/drivers/video/msm/mdss/mdss_debug.c +++ b/drivers/video/msm/mdss/mdss_debug.c @@ -30,21 +30,6 @@ #define GROUP_BYTES 4 #define ROW_BYTES 16 #define MAX_VSYNC_COUNT 0xFFFFFFF -struct mdss_debug_data { - struct dentry *root; - struct list_head base_list; -}; - -struct mdss_debug_base { - struct mdss_debug_data *mdd; - void __iomem *base; - size_t off; - size_t cnt; - size_t max_offset; - char *buf; - size_t buf_len; - struct list_head head; -}; static int mdss_debug_base_open(struct inode *inode, struct file *file) { @@ -265,12 +250,14 @@ int mdss_debug_register_base(const char *name, void __iomem *base, if (!dbg) return -ENOMEM; + if (name) + strlcpy(dbg->name, name, sizeof(dbg->name)); dbg->base = base; dbg->max_offset = max_offset; dbg->off = 0; dbg->cnt = DEFAULT_BASE_REG_CNT; - if (name) + if (name && strcmp(name, "mdp")) prefix_len = snprintf(dn, sizeof(dn), "%s_", name); strlcpy(dn + prefix_len, "off", sizeof(dn) - prefix_len); @@ -395,6 +382,11 @@ int mdss_debugfs_init(struct mdss_data_type *mdata) debugfs_create_u32("min_mdp_clk", 0644, mdd->root, (u32 *)&mdata->min_mdp_clk); + if (mdss_create_xlog_debug(mdd)) { + mdss_debugfs_cleanup(mdd); + return -ENODEV; + } + mdata->debug_inf.debug_data = mdd; return 0; @@ -410,6 +402,29 @@ int mdss_debugfs_remove(struct mdss_data_type *mdata) return 0; } +void mdss_dump_reg(char __iomem *base, int len) +{ + char *addr; + u32 x0, x4, x8, xc; + int i; + + addr = base; + if (len % 16) + len += 16; + len /= 16; + + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); + for (i = 0; i < len; i++) { + x0 = readl_relaxed(addr+0x0); + x4 = readl_relaxed(addr+0x4); + x8 = readl_relaxed(addr+0x8); + xc = readl_relaxed(addr+0xc); + pr_info("%p : %08x %08x %08x %08x\n", addr, x0, x4, x8, xc); + addr += 16; + } + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); +} + int vsync_count; static struct mdss_mdp_misr_map { u32 ctrl_reg; diff --git a/drivers/video/msm/mdss/mdss_debug.h b/drivers/video/msm/mdss/mdss_debug.h index 984caab3526b..e2c9edd78800 100644 --- a/drivers/video/msm/mdss/mdss_debug.h +++ b/drivers/video/msm/mdss/mdss_debug.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -14,13 +14,48 @@ #ifndef MDSS_DEBUG_H #define MDSS_DEBUG_H +#include #include "mdss.h" #define MISR_POLL_SLEEP 2000 #define MISR_POLL_TIMEOUT 32000 #define MISR_CRC_BATCH_CFG 0x101 +#define DATA_LIMITER (-1) +#define XLOG_TOUT_DATA_LIMITER (NULL) +#define XLOG_FUNC_ENTRY 0x1111 +#define XLOG_FUNC_EXIT 0x2222 +#define MDSS_REG_BLOCK_NAME_LEN (5) + +#define MDSS_XLOG(...) mdss_xlog(__func__, ##__VA_ARGS__, DATA_LIMITER) +#define MDSS_XLOG_TOUT_HANDLER(...) \ + mdss_xlog_tout_handler(__func__, ##__VA_ARGS__, XLOG_TOUT_DATA_LIMITER) #ifdef CONFIG_DEBUG_FS +struct mdss_debug_base { + struct mdss_debug_data *mdd; + char name[80]; + void __iomem *base; + size_t off; + size_t cnt; + size_t max_offset; + char *buf; + size_t buf_len; + struct list_head head; +}; + +struct debug_log { + struct dentry *xlog; + u32 xlog_enable; + u32 panic_on_err; + u32 enable_reg_dump; +}; + +struct mdss_debug_data { + struct dentry *root; + struct list_head base_list; + struct debug_log logd; +}; + int mdss_debugfs_init(struct mdss_data_type *mdata); int mdss_debugfs_remove(struct mdss_data_type *mdata); int mdss_debug_register_base(const char *name, void __iomem *base, @@ -30,6 +65,13 @@ int mdss_misr_set(struct mdss_data_type *mdata, struct mdp_misr *req, int mdss_misr_get(struct mdss_data_type *mdata, struct mdp_misr *resp, struct mdss_mdp_ctl *ctl); void mdss_misr_crc_collect(struct mdss_data_type *mdata, int block_id); + +int mdss_create_xlog_debug(struct mdss_debug_data *mdd); +void mdss_xlog(const char *name, ...); +void mdss_xlog_dump(void); +void mdss_dump_reg(char __iomem *base, int len); +void mdss_dsi_debug_check_te(struct mdss_panel_data *pdata); +void mdss_xlog_tout_handler(const char *name, ...); #else static inline int mdss_debugfs_init(struct mdss_data_type *mdata) { return 0; } static inline int mdss_debugfs_remove(struct mdss_data_type *mdata) @@ -46,5 +88,12 @@ static inline int mdss_misr_get(struct mdss_data_type *mdata, { return 0; } static inline void mdss_misr_crc_collect(struct mdss_data_type *mdata, int block_id) { } + +static inline int create_xlog_debug(struct mdss_data_type *mdata) { } +static inline void mdss_xlog(const char *name, ...) { } +static inline void mdss_xlog_dump(void) { } +static inline void mdss_dump_reg(char __iomem *base, int len) { } +static inline void mdss_dsi_debug_check_te(struct mdss_panel_data *pdata) { } +static inline void mdss_xlog_tout_handler(const char *name, ...) { } #endif #endif /* MDSS_DEBUG_H */ diff --git a/drivers/video/msm/mdss/mdss_debug_xlog.c b/drivers/video/msm/mdss/mdss_debug_xlog.c new file mode 100644 index 000000000000..e92f1b719e41 --- /dev/null +++ b/drivers/video/msm/mdss/mdss_debug_xlog.c @@ -0,0 +1,199 @@ +/* Copyright (c) 2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include +#include +#include +#include + +#include "mdss.h" +#include "mdss_mdp.h" +#include "mdss_debug.h" + +#define MDSS_XLOG_ENTRY 256 +#define MDSS_XLOG_MAX_DATA 6 +#define MDSS_XLOG_BUF_MAX 512 + +struct tlog { + u64 tick; + const char *name; + u32 data[MDSS_XLOG_MAX_DATA]; + u32 data_cnt; +}; + +struct mdss_dbg_xlog { + struct tlog logs[MDSS_XLOG_ENTRY]; + int first; + int last; + spinlock_t xlock; +} mdss_dbg_xlog; + +static int mdss_xlog_dump_open(struct inode *inode, struct file *file) +{ + /* non-seekable */ + file->f_mode &= ~(FMODE_LSEEK | FMODE_PREAD | FMODE_PWRITE); + file->private_data = inode->i_private; + return 0; +} + +static ssize_t mdss_xlog_dump_read(struct file *file, char __user *buff, + size_t count, loff_t *ppos) +{ + MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", "edp", "hdmi", "panic"); + return 0; +} + +static const struct file_operations mdss_xlog_fops = { + .open = mdss_xlog_dump_open, + .read = mdss_xlog_dump_read, +}; + +int mdss_create_xlog_debug(struct mdss_debug_data *mdd) +{ + spin_lock_init(&mdss_dbg_xlog.xlock); + + mdd->logd.xlog = debugfs_create_dir("xlog", mdd->root); + if (IS_ERR_OR_NULL(mdd->logd.xlog)) { + pr_err("debugfs_create_dir fail, error %ld\n", + PTR_ERR(mdd->logd.xlog)); + mdd->logd.xlog = NULL; + return -ENODEV; + } + debugfs_create_file("dump", 0644, mdd->logd.xlog, NULL, + &mdss_xlog_fops); + debugfs_create_bool("enable", 0644, mdd->logd.xlog, + &mdd->logd.xlog_enable); + debugfs_create_bool("panic", 0644, mdd->logd.xlog, + &mdd->logd.panic_on_err); + debugfs_create_bool("reg_dump", 0644, mdd->logd.xlog, + &mdd->logd.enable_reg_dump); + return 0; +} + +void mdss_xlog(const char *name, ...) +{ + struct mdss_data_type *mdata = mdss_mdp_get_mdata(); + struct mdss_debug_data *mdd = mdata->debug_inf.debug_data; + unsigned long flags; + int i, val = 0; + va_list args; + struct tlog *log; + ktime_t time; + + if (!mdd->logd.xlog_enable) + return; + + spin_lock_irqsave(&mdss_dbg_xlog.xlock, flags); + + time = ktime_get(); + + log = &mdss_dbg_xlog.logs[mdss_dbg_xlog.first]; + log->tick = local_clock(); + log->name = name; + log->data_cnt = 0; + + va_start(args, name); + for (i = 0; i < MDSS_XLOG_MAX_DATA; i++) { + + val = va_arg(args, int); + if (val == DATA_LIMITER) + break; + + log->data[i] = val; + } + va_end(args); + + log->data_cnt = i; + + mdss_dbg_xlog.last = mdss_dbg_xlog.first; + mdss_dbg_xlog.first++; + mdss_dbg_xlog.first %= MDSS_XLOG_ENTRY; + + spin_unlock_irqrestore(&mdss_dbg_xlog.xlock, flags); +} + +void mdss_xlog_dump(void) +{ + struct mdss_data_type *mdata = mdss_mdp_get_mdata(); + struct mdss_debug_data *mdd = mdata->debug_inf.debug_data; + int i, n, d_cnt, off; + unsigned long flags; + unsigned long rem_nsec; + struct tlog *log; + char xlog_buf[MDSS_XLOG_BUF_MAX]; + + if (!mdd->logd.xlog_enable) + return; + + spin_lock_irqsave(&mdss_dbg_xlog.xlock, flags); + i = mdss_dbg_xlog.first; + for (n = 0; n < MDSS_XLOG_ENTRY; n++) { + log = &mdss_dbg_xlog.logs[i]; + rem_nsec = do_div(log->tick, 1000000000); + off = snprintf(xlog_buf, MDSS_XLOG_BUF_MAX, + "%-32s => [%5llu.%06lu]: ", log->name, + log->tick, rem_nsec / 1000); + for (d_cnt = 0; d_cnt < log->data_cnt;) { + off += snprintf((xlog_buf + off), + (MDSS_XLOG_BUF_MAX - off), + "%x ", log->data[d_cnt]); + d_cnt++; + } + pr_err("%s\n", xlog_buf); + + i = (i + 1) % MDSS_XLOG_ENTRY; + } + spin_unlock_irqrestore(&mdss_dbg_xlog.xlock, flags); +} + +void mdss_xlog_tout_handler(const char *name, ...) +{ + struct mdss_data_type *mdata = mdss_mdp_get_mdata(); + struct mdss_debug_data *mdd = mdata->debug_inf.debug_data; + struct mdss_debug_base *blk_base, *tmp; + int i, dead = 0; + va_list args; + char *blk_name = NULL; + + if (!mdd->logd.xlog_enable) + return; + + va_start(args, name); + for (i = 0; i < MDSS_XLOG_MAX_DATA; i++) { + + blk_name = va_arg(args, char*); + if (IS_ERR_OR_NULL(blk_name)) + break; + + list_for_each_entry_safe(blk_base, tmp, &mdd->base_list, head) { + + if (blk_base->name && + !strcmp(blk_base->name, blk_name) && + mdd->logd.enable_reg_dump) { + pr_info("\n%s : =========%s DUMP=========\n", + __func__, blk_base->name); + mdss_dump_reg(blk_base->base, + blk_base->max_offset); + } + } + if (!strcmp(blk_name, "panic")) + dead = 1; + } + va_end(args); + + MDSS_XLOG(0xffff, 0xffff, 0xffff, 0xffff, 0xffff); + mdss_xlog_dump(); + + if (dead && mdd->logd.panic_on_err) + panic(name); +} diff --git a/drivers/video/msm/mdss/mdss_dsi.c b/drivers/video/msm/mdss/mdss_dsi.c index 3804d07dddbc..4cafe096caa7 100644 --- a/drivers/video/msm/mdss/mdss_dsi.c +++ b/drivers/video/msm/mdss/mdss_dsi.c @@ -953,6 +953,15 @@ static int mdss_dsi_ctl_partial_update(struct mdss_panel_data *pdata) return rc; } +int mdss_dsi_register_recovery_handler(struct mdss_dsi_ctrl_pdata *ctrl, + struct mdss_panel_recovery *recovery) +{ + mutex_lock(&ctrl->mutex); + ctrl->recovery = recovery; + mutex_unlock(&ctrl->mutex); + return 0; +} + static int mdss_dsi_event_handler(struct mdss_panel_data *pdata, int event, void *arg) { @@ -967,6 +976,8 @@ static int mdss_dsi_event_handler(struct mdss_panel_data *pdata, panel_data); pr_debug("%s+:event=%d\n", __func__, event); + MDSS_XLOG(event, arg, ctrl_pdata->ndx, 0x3333); + switch (event) { case MDSS_EVENT_UNBLANK: rc = mdss_dsi_on(pdata); @@ -1035,7 +1046,6 @@ static int mdss_dsi_event_handler(struct mdss_panel_data *pdata, #endif break; case MDSS_EVENT_DSI_CMDLIST_KOFF: - ctrl_pdata->recovery = (struct mdss_panel_recovery *)arg; mdss_dsi_cmdlist_commit(ctrl_pdata, 1); break; case MDSS_EVENT_PANEL_UPDATE_FPS: @@ -1068,6 +1078,10 @@ static int mdss_dsi_event_handler(struct mdss_panel_data *pdata, case MDSS_EVENT_ENABLE_PARTIAL_UPDATE: rc = mdss_dsi_ctl_partial_update(pdata); break; + case MDSS_EVENT_REGISTER_RECOVERY_HANDLER: + rc = mdss_dsi_register_recovery_handler(ctrl_pdata, + (struct mdss_panel_recovery *)arg); + break; default: if(ctrl_pdata->event_handler) rc = ctrl_pdata->event_handler(event); @@ -1195,11 +1209,6 @@ static int __devinit mdss_dsi_ctrl_probe(struct platform_device *pdev) return -ENOTSUPP; } - if (get_lcd_attached() == 0) { - pr_err("%s : lcd is not attached..\n",__func__); - return -ENODEV; - } - ctrl_pdata = platform_get_drvdata(pdev); if (!ctrl_pdata) { ctrl_pdata = devm_kzalloc(&pdev->dev, diff --git a/drivers/video/msm/mdss/mdss_dsi.h b/drivers/video/msm/mdss/mdss_dsi.h index 6aca399c6754..1066265d26ed 100644 --- a/drivers/video/msm/mdss/mdss_dsi.h +++ b/drivers/video/msm/mdss/mdss_dsi.h @@ -329,6 +329,13 @@ struct mdss_dsi_ctrl_pdata { }; extern unsigned int gv_manufacture_id; + +struct dsi_status_data { + struct notifier_block fb_notifier; + struct delayed_work check_status; + struct msm_fb_data_type *mfd; +}; + int dsi_panel_device_register(struct device_node *pan_node, struct mdss_dsi_ctrl_pdata *ctrl_pdata); @@ -394,4 +401,7 @@ void mdss_dsi_dump_power_clk(struct mdss_panel_data *pdata, int flag); void pwm_backlight_enable(void); void pwm_backlight_disable(void); +int mdss_dsi_register_recovery_handler(struct mdss_dsi_ctrl_pdata *ctrl, + struct mdss_panel_recovery *recovery); + #endif /* MDSS_DSI_H */ diff --git a/drivers/video/msm/mdss/mdss_dsi_host.c b/drivers/video/msm/mdss/mdss_dsi_host.c index 429612129d07..c03f0685da98 100644 --- a/drivers/video/msm/mdss/mdss_dsi_host.c +++ b/drivers/video/msm/mdss/mdss_dsi_host.c @@ -27,6 +27,7 @@ #include "mdss_mdp.h" #include "mdss_dsi.h" #include "mdss_panel.h" +#include "mdss_debug.h" #define VSYNC_PERIOD 17 @@ -125,16 +126,14 @@ void mdss_dsi_ctrl_init(struct mdss_dsi_ctrl_pdata *ctrl) void mdss_dsi_clk_req(struct mdss_dsi_ctrl_pdata *ctrl, int enable) { -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__,ctrl->ndx, enable, 0, 0, 0, 0); -#endif + MDSS_XLOG(ctrl->ndx, enable, ctrl->mdp_busy, current->pid); if (enable == 0) { /* need wait before disable */ mutex_lock(&ctrl->cmd_mutex); mdss_dsi_cmd_mdp_busy(ctrl); mutex_unlock(&ctrl->cmd_mutex); } - + MDSS_XLOG(ctrl->ndx, enable, ctrl->mdp_busy, current->pid); mdss_dsi_clk_ctrl(ctrl, enable); } @@ -163,6 +162,7 @@ void mdss_dsi_enable_irq(struct mdss_dsi_ctrl_pdata *ctrl, u32 term) return; } if (ctrl->dsi_irq_mask == 0) { + MDSS_XLOG(ctrl->ndx, term); mdss_enable_irq(ctrl->dsi_hw); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__, ctrl->ndx, term, 0, 0, 0, 0); @@ -185,6 +185,7 @@ void mdss_dsi_disable_irq(struct mdss_dsi_ctrl_pdata *ctrl, u32 term) } ctrl->dsi_irq_mask &= ~term; if (ctrl->dsi_irq_mask == 0) { + MDSS_XLOG(ctrl->ndx, term); mdss_disable_irq(ctrl->dsi_hw); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__, ctrl->ndx, term, 0, 0, 0, 0); @@ -208,6 +209,7 @@ void mdss_dsi_disable_irq_nosync(struct mdss_dsi_ctrl_pdata *ctrl, u32 term) } ctrl->dsi_irq_mask &= ~term; if (ctrl->dsi_irq_mask == 0) { + MDSS_XLOG(ctrl->ndx, term); mdss_disable_irq_nosync(ctrl->dsi_hw); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__,ctrl->ndx, term, 0, 0, 0, 0); @@ -1323,9 +1325,7 @@ void mdss_dsi_cmd_mdp_start(struct mdss_dsi_ctrl_pdata *ctrl) ctrl->mdp_busy = true; ctrl_backup = ctrl; INIT_COMPLETION(ctrl->mdp_comp); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctrl->ndx, ctrl->mdp_busy, 0, 0, 0, current->pid); -#endif + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, current->pid); spin_unlock_irqrestore(&ctrl->mdp_lock, flag); } @@ -1336,6 +1336,8 @@ void mdss_dsi_cmd_mdp_busy(struct mdss_dsi_ctrl_pdata *ctrl) pr_debug("%s: start pid=%d\n", __func__, current->pid); + + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, current->pid, XLOG_FUNC_ENTRY); spin_lock_irqsave(&ctrl->mdp_lock, flags); if (ctrl->mdp_busy == true) need_wait++; @@ -1372,8 +1374,8 @@ void mdss_dsi_cmd_mdp_busy(struct mdss_dsi_ctrl_pdata *ctrl) } } - pr_debug("%s: done pid=%d\n", - __func__, current->pid); + pr_debug("%s: done pid=%d\n", __func__, current->pid); + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, current->pid, XLOG_FUNC_EXIT); } int mdss_dsi_cmdlist_tx(struct mdss_dsi_ctrl_pdata *ctrl, @@ -1437,6 +1439,9 @@ void mdss_dsi_cmdlist_commit(struct mdss_dsi_ctrl_pdata *ctrl, int from_mdp) mutex_lock(&ctrl->cmd_mutex); req = mdss_dsi_cmdlist_get(ctrl); + MDSS_XLOG(ctrl->ndx, from_mdp, ctrl->mdp_busy, current->pid, + XLOG_FUNC_ENTRY); + /* make sure dsi_cmd_mdp is idle */ mdss_dsi_cmd_mdp_busy(ctrl); @@ -1445,6 +1450,8 @@ void mdss_dsi_cmdlist_commit(struct mdss_dsi_ctrl_pdata *ctrl, int from_mdp) if (req == NULL) goto need_lock; + MDSS_XLOG(ctrl->ndx, req->flags, req->cmds_cnt, from_mdp, current->pid); + /* * mdss interrupt is generated in mdp core clock domain * mdp clock need to be enabled to receive dsi interrupt @@ -1482,6 +1489,8 @@ void mdss_dsi_cmdlist_commit(struct mdss_dsi_ctrl_pdata *ctrl, int from_mdp) if (from_mdp) /* from pipe_commit */ mdss_dsi_cmd_mdp_start(ctrl); + MDSS_XLOG(ctrl->ndx, from_mdp, ctrl->mdp_busy, current->pid, + XLOG_FUNC_EXIT); mutex_unlock(&ctrl->cmd_mutex); #if defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_FULL_HD_PT_PANEL) || defined(CONFIG_FB_MSM_MIPI_SAMSUNG_OCTA_CMD_WQHD_PT_PANEL)\ @@ -1493,6 +1502,40 @@ void mdss_dsi_cmdlist_commit(struct mdss_dsi_ctrl_pdata *ctrl, int from_mdp) pr_debug("%s : -- \n",__func__); } +void mdss_dsi_debug_check_te(struct mdss_panel_data *pdata) +{ + struct mdss_dsi_ctrl_pdata *ctrl_pdata = NULL; + u8 rc, te_count = 0; + u8 te_max = 250; + + if (pdata == NULL) { + pr_err("%s: Invalid input data\n", __func__); + return; + } + ctrl_pdata = container_of(pdata, struct mdss_dsi_ctrl_pdata, + panel_data); + + pr_info(" ============ start waiting for TE ============\n"); + for (te_count = 0; te_count < te_max; te_count++) { + rc = gpio_get_value(ctrl_pdata->disp_te_gpio); + if (rc != 0) { + pr_info("%s: gpio_get_value(disp_te_gpio) = %d ", + __func__, rc); + pr_info("te_count = %d\n", te_count); + break; + } + /* usleep suspends the calling thread whereas udelay is a + * busy wait. Here the value of te_gpio is checked in a loop of + * max count = 250. If this loop has to iterate multiple + * times before the te_gpio is 1, the calling thread will end + * up in suspend/wakeup sequence multiple times if usleep is + * used, which is an overhead. So use udelay instead of usleep. + */ + udelay(80); + } + pr_info(" ============ finish waiting for TE ============\n"); +} + static void dsi_send_events(struct mdss_dsi_ctrl_pdata *ctrl, u32 events) { struct dsi_event_q *evq; @@ -1547,10 +1590,12 @@ static int dsi_event_thread(void *data) mdss_dsi_pll_relock(ctrl); if (todo & DSI_EV_MDP_FIFO_UNDERFLOW) { + mutex_lock(&ctrl->mutex); if (ctrl->recovery) { mdss_dsi_sw_reset_restore(ctrl); ctrl->recovery->fxn(ctrl->recovery->data); } + mutex_unlock(&ctrl->mutex); } if (todo & DSI_EV_MDP_BUSY_RELEASE) { @@ -1642,6 +1687,9 @@ void mdss_dsi_fifo_status(struct mdss_dsi_ctrl_pdata *ctrl) panic("mdss_dsi_fifo err"); } #endif + + MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", + "edp", "hdmi", "panic"); } } @@ -1722,10 +1770,8 @@ irqreturn_t mdss_dsi_isr(int irq, void *ptr) pr_debug("%s: isr=%x, isr0=%x", __func__, isr, isr0); if (isr & DSI_INTR_ERROR) { -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctrl->ndx, ctrl->mdp_busy, isr, 0, 0, 0x97); -#endif - pr_err("%s: isr[%d]=%x %x", __func__, ctrl->ndx, isr, (int)DSI_INTR_ERROR); + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, isr, 0x97); + pr_err("%s: ndx=%d isr=%x\n", __func__, ctrl->ndx, isr); mdss_dsi_error(ctrl); } @@ -1737,6 +1783,7 @@ irqreturn_t mdss_dsi_isr(int irq, void *ptr) } if (isr & DSI_INTR_CMD_DMA_DONE) { + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, isr, 0x98); spin_lock(&ctrl->mdp_lock); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__,ctrl->ndx, ctrl->mdp_busy, isr, 0, 0, 0x98); @@ -1747,6 +1794,7 @@ irqreturn_t mdss_dsi_isr(int irq, void *ptr) } if (isr & DSI_INTR_CMD_MDP_DONE) { + MDSS_XLOG(ctrl->ndx, ctrl->mdp_busy, isr, 0x99); spin_lock(&ctrl->mdp_lock); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__, ctrl->ndx, ctrl->mdp_busy, isr, 0, 0, 0x99); diff --git a/drivers/video/msm/mdss/mdss_dsi_panel.c b/drivers/video/msm/mdss/mdss_dsi_panel.c index fbf5fd674981..993d35d83e53 100644 --- a/drivers/video/msm/mdss/mdss_dsi_panel.c +++ b/drivers/video/msm/mdss/mdss_dsi_panel.c @@ -629,6 +629,39 @@ static int mdss_dsi_parse_reset_seq(struct device_node *np, return 0; } +static void mdss_dsi_parse_roi_alignment(struct device_node *np, + struct mdss_panel_info *pinfo) +{ + int len = 0; + u32 value[6]; + struct property *data; + data = of_find_property(np, "qcom,panel-roi-alignment", &len); + len /= sizeof(u32); + if (!data || (len != 6)) { + pr_debug("%s: Panel roi alignment not found", __func__); + } else { + int rc = of_property_read_u32_array(np, + "qcom,panel-roi-alignment", value, len); + if (rc) + pr_debug("%s: Error reading panel roi alignment values", + __func__); + else { + pinfo->xstart_pix_align = value[0]; + pinfo->width_pix_align = value[1]; + pinfo->ystart_pix_align = value[2]; + pinfo->height_pix_align = value[3]; + pinfo->min_width = value[4]; + pinfo->min_height = value[5]; + } + + pr_debug("%s: ROI alignment: [%d, %d, %d, %d, %d, %d]", + __func__, pinfo->xstart_pix_align, + pinfo->width_pix_align, pinfo->ystart_pix_align, + pinfo->height_pix_align, pinfo->min_width, + pinfo->min_height); + } +} + static int mdss_panel_parse_dt(struct device_node *np, struct mdss_dsi_ctrl_pdata *ctrl_pdata) @@ -853,6 +886,11 @@ static int mdss_panel_parse_dt(struct device_node *np, rc = of_property_read_u32(np, "qcom,mdss-dsi-t-clk-post", &tmp); pinfo->mipi.t_clk_post = (!rc ? tmp : 0x03); + pinfo->mipi.rx_eot_ignore = of_property_read_bool(np, + "qcom,mdss-dsi-rx-eot-ignore"); + pinfo->mipi.tx_eot_append = of_property_read_bool(np, + "qcom,mdss-dsi-tx-eot-append"); + rc = of_property_read_u32(np, "qcom,mdss-dsi-stream", &tmp); pinfo->mipi.stream = (!rc ? tmp : 0); @@ -885,6 +923,7 @@ static int mdss_panel_parse_dt(struct device_node *np, pinfo->mipi.init_delay = (!rc ? tmp : 0); mdss_dsi_parse_fbc_params(np, pinfo); + mdss_dsi_parse_roi_alignment(np, pinfo); mdss_dsi_parse_trigger(np, &(pinfo->mipi.mdp_trigger), "qcom,mdss-dsi-mdp-trigger"); diff --git a/drivers/video/msm/mdss/mdss_dsi_status.c b/drivers/video/msm/mdss/mdss_dsi_status.c index fd7f3fd56065..e2e3afad2b7f 100644 --- a/drivers/video/msm/mdss/mdss_dsi_status.c +++ b/drivers/video/msm/mdss/mdss_dsi_status.c @@ -30,108 +30,37 @@ #include "mdss_panel.h" #include "mdss_mdp.h" -#define STATUS_CHECK_INTERVAL 5000 - -struct dsi_status_data { - struct notifier_block fb_notifier; - struct delayed_work check_status; - struct msm_fb_data_type *mfd; - uint32_t check_interval; -}; +#define STATUS_CHECK_INTERVAL_MS 5000 +#define STATUS_CHECK_INTERVAL_MIN_MS 200 +#define DSI_STATUS_CHECK_DISABLE 1 + +static uint32_t interval = STATUS_CHECK_INTERVAL_MS; +static uint32_t dsi_status_disable = DSI_STATUS_CHECK_DISABLE; struct dsi_status_data *pstatus_data; -static uint32_t interval = STATUS_CHECK_INTERVAL; /* - * check_dsi_ctrl_status() - Check DSI controller status periodically. + * check_dsi_ctrl_status() - Reads MFD structure and + * calls platform specific DSI ctrl Status function. * @work : dsi controller status data - * - * This function calls check_status API on DSI controller to send the BTA - * command. If DSI controller fails to acknowledge the BTA command, it sends - * the PANEL_ALIVE=0 status to HAL layer. */ static void check_dsi_ctrl_status(struct work_struct *work) { struct dsi_status_data *pdsi_status = NULL; - struct mdss_panel_data *pdata = NULL; - struct mdss_dsi_ctrl_pdata *ctrl_pdata = NULL; - struct mdss_overlay_private *mdp5_data = NULL; - struct mdss_mdp_ctl *ctl = NULL; - int ret = 0; pdsi_status = container_of(to_delayed_work(work), struct dsi_status_data, check_status); + if (!pdsi_status) { pr_err("%s: DSI status data not available\n", __func__); return; } - pdata = dev_get_platdata(&pdsi_status->mfd->pdev->dev); - if (!pdata) { - pr_err("%s: Panel data not available\n", __func__); - return; - } - - ctrl_pdata = container_of(pdata, struct mdss_dsi_ctrl_pdata, - panel_data); - if (!ctrl_pdata || !ctrl_pdata->check_status) { - pr_err("%s: DSI ctrl or status_check callback not available\n", - __func__); + if (!pdsi_status->mfd) { + pr_err("%s: FB data not available\n", __func__); return; } - mdp5_data = mfd_to_mdp5_data(pdsi_status->mfd); - ctl = mfd_to_ctl(pdsi_status->mfd); - - if (ctl->shared_lock) - mutex_lock(ctl->shared_lock); - mutex_lock(&mdp5_data->ov_lock); - - if (pdsi_status->mfd->shutdown_pending) { - mutex_unlock(&mdp5_data->ov_lock); - if (ctl->shared_lock) - mutex_unlock(ctl->shared_lock); - pr_err("%s: DSI turning off, avoiding BTA status check\n", - __func__); - return; - } - - /* - * For the command mode panels, we return pan display - * IOCTL on vsync interrupt. So, after vsync interrupt comes - * and when DMA_P is in progress, if the panel stops responding - * and if we trigger BTA before DMA_P finishes, then the DSI - * FIFO will not be cleared since the DSI data bus control - * doesn't come back to the host after BTA. This may cause the - * display reset not to be proper. Hence, wait for DMA_P done - * for command mode panels before triggering BTA. - */ - if (ctl->wait_pingpong) - ctl->wait_pingpong(ctl, NULL); - - pr_debug("%s: DSI ctrl wait for ping pong done\n", __func__); - - mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); - ret = ctrl_pdata->check_status(ctrl_pdata); - mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); - - mutex_unlock(&mdp5_data->ov_lock); - if (ctl->shared_lock) - mutex_unlock(ctl->shared_lock); - - if ((pdsi_status->mfd->panel_power_on)) { - if (ret > 0) { - schedule_delayed_work(&pdsi_status->check_status, - msecs_to_jiffies(pdsi_status->check_interval)); - } else { - char *envp[2] = {"PANEL_ALIVE=0", NULL}; - pdata->panel_info.panel_dead = true; - ret = kobject_uevent_env( - &pdsi_status->mfd->fbi->dev->kobj, - KOBJ_CHANGE, envp); - pr_err("%s: Panel has gone bad, sending uevent - %s\n", - __func__, envp[0]); - } - } + pdsi_status->mfd->mdp.check_dsi_status(work, interval); } /* @@ -151,23 +80,76 @@ static int fb_event_callback(struct notifier_block *self, struct fb_event *evdata = data; struct dsi_status_data *pdata = container_of(self, struct dsi_status_data, fb_notifier); + struct mdss_dsi_ctrl_pdata *ctrl_pdata = NULL; + pdata->mfd = evdata->info->par; + ctrl_pdata = container_of(dev_get_platdata(&pdata->mfd->pdev->dev), + struct mdss_dsi_ctrl_pdata, panel_data); + if (!ctrl_pdata) { + pr_err("%s: DSI ctrl not available\n", __func__); + return NOTIFY_BAD; + } + if (dsi_status_disable) { + pr_debug("%s: DSI status disabled\n", __func__); + return NOTIFY_DONE; + } if (event == FB_EVENT_BLANK && evdata) { int *blank = evdata->data; switch (*blank) { case FB_BLANK_UNBLANK: schedule_delayed_work(&pdata->check_status, - msecs_to_jiffies(pdata->check_interval)); + msecs_to_jiffies(interval)); break; case FB_BLANK_POWERDOWN: + case FB_BLANK_HSYNC_SUSPEND: + case FB_BLANK_VSYNC_SUSPEND: + case FB_BLANK_NORMAL: cancel_delayed_work(&pdata->check_status); break; + default: + pr_err("Unknown case in FB_EVENT_BLANK event\n"); + break; } } return 0; } +static int param_dsi_status_disable(const char *val, struct kernel_param *kp) +{ + int ret = 0; + int int_val; + + ret = kstrtos32(val, 0, &int_val); + if (ret) + return ret; + + pr_info("%s: Set DSI status disable to %d\n", + __func__, int_val); + *((int *)kp->arg) = int_val; + return ret; +} + +static int param_set_interval(const char *val, struct kernel_param *kp) +{ + int ret = 0; + int int_val; + + ret = kstrtos32(val, 0, &int_val); + if (ret) + return ret; + if (int_val < STATUS_CHECK_INTERVAL_MIN_MS) { + pr_err("%s: Invalid value %d used, ignoring\n", + __func__, int_val); + ret = -EINVAL; + } else { + pr_info("%s: Set check interval to %d msecs\n", + __func__, int_val); + *((int *)kp->arg) = int_val; + } + return ret; +} + int __init mdss_dsi_status_init(void) { int rc = 0; @@ -188,7 +170,6 @@ int __init mdss_dsi_status_init(void) return -EPERM; } - pstatus_data->check_interval = interval; pr_info("%s: DSI status check interval:%d\n", __func__, interval); INIT_DELAYED_WORK(&pstatus_data->check_status, check_dsi_ctrl_status); @@ -206,11 +187,17 @@ void __exit mdss_dsi_status_exit(void) pr_debug("%s: DSI ctrl status work queue removed\n", __func__); } -module_param(interval, uint, 0); +module_param_call(interval, param_set_interval, param_get_uint, + &interval, 0644); MODULE_PARM_DESC(interval, "Duration in milliseconds to send BTA command for checking" "DSI status periodically"); +module_param_call(dsi_status_disable, param_dsi_status_disable, param_get_uint, + &dsi_status_disable, 0644); +MODULE_PARM_DESC(dsi_status_disable, + "Disable DSI status check"); + module_init(mdss_dsi_status_init); module_exit(mdss_dsi_status_exit); diff --git a/drivers/video/msm/mdss/mdss_fb.c b/drivers/video/msm/mdss/mdss_fb.c index 6608221d845a..d4e7b2eee937 100644 --- a/drivers/video/msm/mdss/mdss_fb.c +++ b/drivers/video/msm/mdss/mdss_fb.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -53,6 +54,7 @@ #include #include "mdss_fb.h" +#include "mdss_mdp.h" #include "mdss_mdp_splash_logo.h" #ifdef CONFIG_FB_MSM_TRIPLE_BUFFER @@ -103,7 +105,6 @@ static int __mdss_fb_display_thread(void *data); static int mdss_fb_pan_idle(struct msm_fb_data_type *mfd); static int mdss_fb_send_panel_event(struct msm_fb_data_type *mfd, int event, void *arg); -int get_lcd_attached(void); void mdss_fb_no_update_notify_timer_cb(unsigned long data) { @@ -386,14 +387,162 @@ static ssize_t mdss_mdp_show_blank_event(struct device *dev, return ret; } +static void __mdss_fb_idle_notify_work(struct work_struct *work) +{ + struct delayed_work *dw = to_delayed_work(work); + struct msm_fb_data_type *mfd = container_of(dw, struct msm_fb_data_type, + idle_notify_work); + + /* Notify idle-ness here */ + pr_debug("Idle timeout %dms expired!\n", mfd->idle_time); + sysfs_notify(&mfd->fbi->dev->kobj, NULL, "idle_notify"); +} + +static ssize_t mdss_fb_get_idle_time(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct fb_info *fbi = dev_get_drvdata(dev); + struct msm_fb_data_type *mfd = fbi->par; + int ret; + + ret = scnprintf(buf, PAGE_SIZE, "%d", mfd->idle_time); + + return ret; +} + +static ssize_t mdss_fb_set_idle_time(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + struct fb_info *fbi = dev_get_drvdata(dev); + struct msm_fb_data_type *mfd = fbi->par; + int rc = 0; + int idle_time = 0; + + rc = kstrtoint(buf, 10, &idle_time); + if (rc) { + pr_err("kstrtoint failed. rc=%d\n", rc); + return rc; + } + + pr_debug("Idle time = %d\n", idle_time); + mfd->idle_time = idle_time; + + return count; +} + +static ssize_t mdss_fb_get_idle_notify(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct fb_info *fbi = dev_get_drvdata(dev); + struct msm_fb_data_type *mfd = fbi->par; + int ret; + + ret = scnprintf(buf, PAGE_SIZE, "%s", + work_busy(&mfd->idle_notify_work.work) ? "no" : "yes"); + + return ret; +} + +static int pcc_r = 32768, pcc_g = 32768, pcc_b = 32768; +static ssize_t mdss_get_rgb(struct device *dev, + struct device_attribute *attr, char *buf) +{ + return sprintf(buf, "%d %d %d\n", pcc_r, pcc_g, pcc_b); +} + +/* + * simple color temperature interface using polynomial color correction + * + * input values are r/g/b adjustments from 0-32768 representing 0 -> 1 + * + * example adjustment @ 3500K: + * 1.0000 / 0.5515 / 0.2520 = 32768 / 25828 / 17347 + * + * reference chart: + * http://www.vendian.org/mncharity/dir3/blackbody/UnstableURLs/bbr_color.html + */ +static ssize_t mdss_set_rgb(struct device *dev, + struct device_attribute *attr, + const char *buf, size_t count) +{ + uint32_t r = 0, g = 0, b = 0; + struct mdp_pcc_cfg_data pcc_cfg; + u32 copyback = 0; + int ret; + + if (count > 19) + return -EINVAL; + + sscanf(buf, "%d %d %d", &r, &g, &b); + + if (r < 0 || r > 32768) + return -EINVAL; + if (g < 0 || g > 32768) + return -EINVAL; + if (b < 0 || b > 32768) + return -EINVAL; + + pr_info("%s: r=%d g=%d b=%d", __func__, r, g, b); + + memset(&pcc_cfg, 0, sizeof(struct mdp_pcc_cfg_data)); + + pcc_cfg.block = MDP_LOGICAL_BLOCK_DISP_0; + if (r == 32768 && g == 32768 && b == 32768) + pcc_cfg.ops = MDP_PP_OPS_DISABLE; + else + pcc_cfg.ops = MDP_PP_OPS_ENABLE; + pcc_cfg.ops |= MDP_PP_OPS_WRITE; + pcc_cfg.r.r = r; + pcc_cfg.g.g = g; + pcc_cfg.b.b = b; + + ret = mdss_mdp_pcc_config(&pcc_cfg, ©back); + if (ret != 0) + return ret; + + pcc_r = r; + pcc_g = g; + pcc_b = b; + + return count; +} + +static ssize_t mdss_fb_get_panel_info(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct fb_info *fbi = dev_get_drvdata(dev); + struct msm_fb_data_type *mfd = fbi->par; + struct mdss_panel_info *pinfo = mfd->panel_info; + int ret; + + ret = scnprintf(buf, PAGE_SIZE, + "pu_en=%d\nxstart=%d\nwalign=%d\nystart=%d\nhalign=%d\n" + "min_w=%d\nmin_h=%d", + pinfo->partial_update_enabled, pinfo->xstart_pix_align, + pinfo->width_pix_align, pinfo->ystart_pix_align, + pinfo->height_pix_align, pinfo->min_width, + pinfo->min_height); + + return ret; +} + static DEVICE_ATTR(msm_fb_type, S_IRUGO, mdss_fb_get_type, NULL); static DEVICE_ATTR(msm_fb_split, S_IRUGO, mdss_fb_get_split, NULL); static DEVICE_ATTR(show_blank_event, S_IRUGO, mdss_mdp_show_blank_event, NULL); +static DEVICE_ATTR(idle_time, S_IRUGO | S_IWUSR | S_IWGRP, + mdss_fb_get_idle_time, mdss_fb_set_idle_time); +static DEVICE_ATTR(idle_notify, S_IRUGO, mdss_fb_get_idle_notify, NULL); +static DEVICE_ATTR(msm_fb_panel_info, S_IRUGO, mdss_fb_get_panel_info, NULL); +static DEVICE_ATTR(rgb, S_IRUGO | S_IWUSR | S_IWGRP, mdss_get_rgb, mdss_set_rgb); static struct attribute *mdss_fb_attrs[] = { &dev_attr_msm_fb_type.attr, &dev_attr_msm_fb_split.attr, &dev_attr_show_blank_event.attr, + &dev_attr_idle_time.attr, + &dev_attr_idle_notify.attr, + &dev_attr_msm_fb_panel_info.attr, + &dev_attr_rgb.attr, NULL, }; @@ -544,6 +693,8 @@ static int mdss_fb_probe(struct platform_device *pdev) if (mfd->mdp.splash_init_fnc) mfd->mdp.splash_init_fnc(mfd); + INIT_DELAYED_WORK(&mfd->idle_notify_work, __mdss_fb_idle_notify_work); + return rc; } @@ -863,11 +1014,6 @@ static int mdss_fb_blank_sub(int blank_mode, struct fb_info *info, if (mfd->dcm_state == DCM_ENTER) return -EPERM; - if (get_lcd_attached() == 0) { - pr_err("%s : lcd is not attached..\n",__func__); - return -ENODEV; - } - switch (blank_mode) { case FB_BLANK_UNBLANK: if (!mfd->panel_power_on && mfd->mdp.on_fnc) { @@ -880,6 +1026,11 @@ static int mdss_fb_blank_sub(int blank_mode, struct fb_info *info, mfd->update.type = NOTIFY_TYPE_UPDATE; mfd->update.is_suspend = 0; mutex_unlock(&mfd->update.lock); + + /* Start the work thread to signal idle time */ + if (mfd->idle_time) + schedule_delayed_work(&mfd->idle_notify_work, + msecs_to_jiffies(mfd->idle_time)); } break; @@ -996,6 +1147,7 @@ void mdss_fb_free_fb_ion_memory(struct msm_fb_data_type *mfd) mfd->mdp.fb_mem_get_iommu_domain(), 0); } + dma_buf_put(mfd->fbmem_buf); ion_free(mfd->fb_ion_client, mfd->fb_ion_handle); mfd->fb_ion_handle = NULL; } @@ -1039,9 +1191,11 @@ int mdss_fb_alloc_fb_ion_memory(struct msm_fb_data_type *mfd, size_t fb_size) } else { pr_err("No IOMMU Domain"); goto fb_mmap_failed; - } + mfd->fbmem_buf = ion_share_dma_buf(mfd->fb_ion_client, + mfd->fb_ion_handle); + vaddr = ion_map_kernel(mfd->fb_ion_client, mfd->fb_ion_handle); if (IS_ERR_OR_NULL(vaddr)) { pr_err("ION memory mapping failed - %ld\n", PTR_ERR(vaddr)); @@ -1869,10 +2023,20 @@ static int __mdss_fb_sync_buf_done_callback(struct notifier_block *p, unsigned long event, void *data) { struct msm_sync_pt_data *sync_pt_data; + struct msm_fb_data_type *mfd; sync_pt_data = container_of(p, struct msm_sync_pt_data, notifier); + mfd = container_of(sync_pt_data, struct msm_fb_data_type, + mdp_sync_pt_data); switch (event) { + case MDP_NOTIFY_FRAME_BEGIN: + if (mfd->idle_time) { + cancel_delayed_work_sync(&mfd->idle_notify_work); + schedule_delayed_work(&mfd->idle_notify_work, + msecs_to_jiffies(mfd->idle_time)); + } + break; case MDP_NOTIFY_FRAME_READY: if (sync_pt_data->async_wait_fences) mdss_fb_wait_for_fence(sync_pt_data); diff --git a/drivers/video/msm/mdss/mdss_fb.h b/drivers/video/msm/mdss/mdss_fb.h index d0e1e48d64bb..863423992138 100644 --- a/drivers/video/msm/mdss/mdss_fb.h +++ b/drivers/video/msm/mdss/mdss_fb.h @@ -128,6 +128,7 @@ struct msm_mdp_interface { int (*splash_init_fnc)(struct msm_fb_data_type *mfd); struct msm_sync_pt_data *(*get_sync_fnc)(struct msm_fb_data_type *mfd, const struct mdp_buf_sync *buf_sync); + void (*check_dsi_status)(struct work_struct *work, uint32_t interval); void *private1; }; @@ -163,6 +164,9 @@ struct msm_fb_data_type { u32 dest; struct fb_info *fbi; + int idle_time; + struct delayed_work idle_notify_work; + int op_enable; u32 fb_imgType; int panel_reconfig; @@ -235,6 +239,7 @@ struct msm_fb_data_type { struct ion_client *fb_ion_client; struct ion_handle *fb_ion_handle; + struct dma_buf *fbmem_buf; u32 wait_for_kickoff; }; diff --git a/drivers/video/msm/mdss/mdss_mdp.c b/drivers/video/msm/mdss/mdss_mdp.c index bca9c5b919d8..5446104fd4f8 100644 --- a/drivers/video/msm/mdss/mdss_mdp.c +++ b/drivers/video/msm/mdss/mdss_mdp.c @@ -72,6 +72,7 @@ struct msm_mdp_interface mdp5 = { .fb_mem_get_iommu_domain = mdss_fb_mem_get_iommu_domain, .panel_register_done = mdss_panel_register_done, .fb_stride = mdss_mdp_fb_stride, + .check_dsi_status = mdss_check_dsi_ctrl_status, }; #define DEFAULT_TOTAL_RGB_PIPES 3 @@ -300,6 +301,7 @@ void mdss_disable_irq_nosync(struct mdss_hw *hw) pr_debug("Disable HW=%d irq ena=%d mask=%x\n", hw->hw_ndx, mdss_res->irq_ena, mdss_res->irq_mask); + spin_lock(&mdss_lock); if (!(mdss_res->irq_mask & ndx_bit)) { pr_warn("MDSS HW ndx=%d is NOT set, mask=%x, hist mask=%x\n", hw->hw_ndx, mdss_res->mdp_irq_mask, @@ -311,6 +313,7 @@ void mdss_disable_irq_nosync(struct mdss_hw *hw) disable_irq_nosync(mdss_res->irq); } } + spin_unlock(&mdss_lock); } EXPORT_SYMBOL(mdss_disable_irq_nosync); @@ -754,10 +757,7 @@ void mdss_mdp_clk_ctrl(int enable, int isr) } } -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, mdp_clk_cnt, changed, enable, 0, 0, 0); -#endif - + MDSS_XLOG(mdp_clk_cnt, changed, enable, current->pid); pr_debug("%s: clk_cnt=%d changed=%d enable=%d\n", __func__, mdp_clk_cnt, changed, enable); @@ -885,7 +885,8 @@ int mdss_iommu_attach(struct mdss_data_type *mdata) struct mdss_iommu_map_type *iomap; int i, rc = 0; - xlog(__func__, mdata->iommu_attached, 0, 0, 0, 0, 0); + MDSS_XLOG(mdata->iommu_attached); + if (mdata->iommu_attached) { pr_debug("mdp iommu already attached\n"); goto end; @@ -923,7 +924,8 @@ int mdss_iommu_dettach(struct mdss_data_type *mdata) struct mdss_iommu_map_type *iomap; int i; - xlog(__func__, mdata->iommu_attached, 0, 0, 0, 0, 0); + MDSS_XLOG(mdata->iommu_attached); + if (!mdata->iommu_attached) { pr_debug("mdp iommu already dettached\n"); return 0; @@ -1065,7 +1067,7 @@ static int mdss_mdp_debug_init(struct mdss_data_type *mdata) if (rc) return rc; - mdss_debug_register_base(NULL, mdata->mdp_base, mdata->mdp_reg_size); + mdss_debug_register_base("mdp", mdata->mdp_base, mdata->mdp_reg_size); return 0; } @@ -1112,8 +1114,9 @@ int mdss_hw_init(struct mdss_data_type *mdata) writel_relaxed(1, offset + 16); } - mdata->nmax_concurrent_ad_hw = (mdata->mdp_rev <= MDSS_MDP_HW_REV_102) ? - 1 : 2; + mdata->nmax_concurrent_ad_hw = + (mdata->mdp_rev < MDSS_MDP_HW_REV_103) ? 1 : 2; + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); pr_debug("MDP hw init done\n"); @@ -1155,6 +1158,14 @@ static u32 mdss_mdp_res_init(struct mdss_data_type *mdata) return rc; } +/** + * mdss_mdp_footswitch_ctrl_splash() - clocks handoff for cont. splash screen + * @on: 1 to start handoff, 0 to complete the handoff after first frame update + * + * MDSS Clocks and GDSC are already on during continous splash screen, but + * increasing ref count will keep clocks from being turned off until handoff + * has properly happend after frame update. + */ void mdss_mdp_footswitch_ctrl_splash(int on) { struct mdss_data_type *mdata = mdss_mdp_get_mdata(); @@ -1163,9 +1174,11 @@ void mdss_mdp_footswitch_ctrl_splash(int on) pr_debug("Enable MDP FS for splash.\n"); mdata->handoff_pending = true; regulator_enable(mdata->fs); + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); mdss_hw_init(mdata); } else { pr_debug("Disable MDP FS for splash.\n"); + mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); regulator_disable(mdata->fs); mdata->handoff_pending = false; } @@ -2321,6 +2334,8 @@ static int mdss_mdp_parse_dt_misc(struct platform_device *pdev) "qcom,mdss-has-decimation"); mdata->has_wfd_blk = of_property_read_bool(pdev->dev.of_node, "qcom,mdss-has-wfd-blk"); + mdata->has_no_lut_read = of_property_read_bool(pdev->dev.of_node, + "qcom,mdss-no-lut-read"); prop = of_find_property(pdev->dev.of_node, "batfet-supply", NULL); mdata->batfet_required = prop ? true : false; rc = of_property_read_u32(pdev->dev.of_node, @@ -2347,6 +2362,17 @@ static int mdss_mdp_parse_dt_misc(struct platform_device *pdev) mdss_mdp_parse_dt_fudge_factors(pdev, "qcom,mdss-ib-factor", &mdata->ib_factor); + /* + * Set overlap ib value equal to ib by default. This value can + * be tuned in device tree to be different from ib. + * This factor apply when the max bandwidth per pipe + * is the overlap BW. + */ + mdata->ib_factor_overlap.numer = mdata->ib_factor.numer; + mdata->ib_factor_overlap.denom = mdata->ib_factor.denom; + mdss_mdp_parse_dt_fudge_factors(pdev, "qcom,mdss-ib-factor-overlap", + &mdata->ib_factor_overlap); + mdata->clk_factor.numer = 1; mdata->clk_factor.denom = 1; mdss_mdp_parse_dt_fudge_factors(pdev, "qcom,mdss-clk-factor", diff --git a/drivers/video/msm/mdss/mdss_mdp.h b/drivers/video/msm/mdss/mdss_mdp.h index 926b99d11de9..51874058eb1a 100644 --- a/drivers/video/msm/mdss/mdss_mdp.h +++ b/drivers/video/msm/mdss/mdss_mdp.h @@ -77,6 +77,13 @@ static inline u32 mdss_mdp_reg_read(u32 addr) #define MDSS_MDP_REG_WRITE(addr, val) MDSS_REG_WRITE((u32)(addr), (u32)(val)) #define MDSS_MDP_REG_READ(addr) MDSS_REG_READ((u32)(addr)) #endif +#define PERF_STATUS_DONE 0 +#define PERF_STATUS_BUSY 1 + +enum mdss_mdp_perf_state_type { + PERF_SW_COMMIT_STATE = 0, + PERF_HW_MDP_STATE, +}; enum mdss_mdp_block_power_state { MDP_BLOCK_POWER_OFF = 0, @@ -183,7 +190,7 @@ struct mdss_mdp_ctl { int force_screen_state; struct mdss_mdp_perf_params cur_perf; struct mdss_mdp_perf_params new_perf; - int perf_status; + u32 perf_transaction_status; struct mdss_data_type *mdata; struct msm_fb_data_type *mfd; @@ -197,6 +204,7 @@ struct mdss_mdp_ctl { struct mdss_mdp_vsync_handler vsync_handler; struct mdss_mdp_img_rect roi; + struct mdss_mdp_img_rect roi_bkup; u8 roi_changed; int (*start_fnc) (struct mdss_mdp_ctl *ctl); @@ -567,7 +575,8 @@ int mdss_mdp_perf_bw_check(struct mdss_mdp_ctl *ctl, struct mdss_mdp_pipe **left_plist, int left_cnt, struct mdss_mdp_pipe **right_plist, int right_cnt); int mdss_mdp_perf_calc_pipe(struct mdss_mdp_pipe *pipe, - struct mdss_mdp_perf_params *perf, struct mdss_mdp_img_rect *roi); + struct mdss_mdp_perf_params *perf, struct mdss_mdp_img_rect *roi, + bool apply_fudge); int mdss_mdp_ctl_notify(struct mdss_mdp_ctl *ctl, int event); void mdss_mdp_ctl_notifier_register(struct mdss_mdp_ctl *ctl, struct notifier_block *notifier); @@ -579,8 +588,8 @@ int mdss_mdp_mixer_handoff(struct mdss_mdp_ctl *ctl, u32 num, int mdss_mdp_scan_pipes(void); -void mdss_mdp_ctl_perf_taken(struct mdss_mdp_ctl *ctl); -void mdss_mdp_ctl_perf_done(struct mdss_mdp_ctl *ctl); +void mdss_mdp_ctl_perf_set_transaction_status(struct mdss_mdp_ctl *ctl, + enum mdss_mdp_perf_state_type component, bool new_status); void mdss_mdp_ctl_perf_release_bw(struct mdss_mdp_ctl *ctl); struct mdss_mdp_mixer *mdss_mdp_wb_mixer_alloc(int rotator); @@ -698,6 +707,7 @@ int mdss_mdp_wb_ioctl_handler(struct msm_fb_data_type *mfd, u32 cmd, void *arg); int mdss_mdp_get_ctl_mixers(u32 fb_num, u32 *mixer_id); u32 mdss_mdp_fb_stride(u32 fb_index, u32 xres, int bpp); +void mdss_check_dsi_ctrl_status(struct work_struct *work, uint32_t interval); int mdss_panel_register_done(struct mdss_panel_data *pdata); int mdss_mdp_limited_lut_igc_config(struct mdss_mdp_ctl *ctl); diff --git a/drivers/video/msm/mdss/mdss_mdp_ctl.c b/drivers/video/msm/mdss/mdss_mdp_ctl.c index b686f98ad4ae..95bc6e5244a8 100644 --- a/drivers/video/msm/mdss/mdss_mdp_ctl.c +++ b/drivers/video/msm/mdss/mdss_mdp_ctl.c @@ -22,7 +22,9 @@ #include "mdss_fb.h" #include "mdss_mdp.h" +#include "mdss_debug.h" +static void mdss_mdp_xlog_mixer_reg(struct mdss_mdp_ctl *ctl); static inline u64 fudge_factor(u64 val, u32 numer, u32 denom) { u64 result = (val * (u64)numer); @@ -34,14 +36,11 @@ static inline u64 fudge_factor(u64 val, u32 numer, u32 denom) extern int hdmi_hpd_status(void); #endif -#define AB_FUDGE_FACTOR(val) fudge_factor((val), \ - (mdss_res->ab_factor.numer), (mdss_res->ab_factor.denom)) - -#define IB_FUDGE_FACTOR(val) fudge_factor((val), \ - (mdss_res->ib_factor.numer), (mdss_res->ib_factor.denom)) - -#define CLK_FUDGE_FACTOR(val) fudge_factor((val), \ - (mdss_res->clk_factor.numer), (mdss_res->clk_factor.denom)) +static inline u64 apply_fudge_factor(u64 val, + struct mdss_fudge_factor *factor) +{ + return fudge_factor(val, factor->numer, factor->denom); +} static DEFINE_MUTEX(mdss_mdp_ctl_lock); @@ -68,7 +67,7 @@ static inline u32 mdss_mdp_clk_fudge_factor(struct mdss_mdp_mixer *mixer, { struct mdss_panel_info *pinfo = &mixer->ctl->panel_data->panel_info; - rate = CLK_FUDGE_FACTOR(rate); + rate = apply_fudge_factor(rate, &mdss_res->clk_factor); /* * If the panel is video mode and its back porch period is @@ -77,7 +76,7 @@ static inline u32 mdss_mdp_clk_fudge_factor(struct mdss_mdp_mixer *mixer, */ if (mixer->ctl->is_video_mode && pinfo && (pinfo->lcdc.v_back_porch < MDP_MIN_VBP)) - rate = CLK_FUDGE_FACTOR(rate); + rate = apply_fudge_factor(rate, &mdss_res->clk_factor); return rate; } @@ -307,6 +306,7 @@ static u32 mdss_mdp_perf_calc_pipe_prefill_cmd(struct mdss_mdp_prefill_params * @pipe: Source pipe struct containing updated pipe params * @perf: Structure containing values that should be updated for * performance tuning + * @apply_fudge: Boolean to determine if mdp clock fudge is applicable * * Function calculates the minimum required performance calculations in order * to avoid MDP underflow. The calculations are based on the way MDP @@ -314,7 +314,8 @@ static u32 mdss_mdp_perf_calc_pipe_prefill_cmd(struct mdss_mdp_prefill_params * (MDP clock requirement) based on frame size and scaling requirements. */ int mdss_mdp_perf_calc_pipe(struct mdss_mdp_pipe *pipe, - struct mdss_mdp_perf_params *perf, struct mdss_mdp_img_rect *roi) + struct mdss_mdp_perf_params *perf, struct mdss_mdp_img_rect *roi, + bool apply_fudge) { struct mdss_mdp_mixer *mixer; int fps = DEFAULT_FRAME_RATE; @@ -388,7 +389,10 @@ int mdss_mdp_perf_calc_pipe(struct mdss_mdp_pipe *pipe, perf->bw_overlap = (quota / dst.h) * v_total; } - perf->mdp_clk_rate = mdss_mdp_clk_fudge_factor(mixer, rate); + if (apply_fudge) + perf->mdp_clk_rate = mdss_mdp_clk_fudge_factor(mixer, rate); + else + perf->mdp_clk_rate = rate; prefill_params.smp_bytes = mdss_mdp_smp_get_size(pipe); prefill_params.xres = xres; @@ -444,6 +448,8 @@ static void mdss_mdp_perf_calc_mixer(struct mdss_mdp_mixer *mixer, u64 bw_overlap[MDSS_MDP_MAX_STAGE] = { 0 }; u32 v_region[MDSS_MDP_MAX_STAGE * 2] = { 0 }; u32 prefill_bytes = 0; + struct mdss_data_type *mdata = mdss_mdp_get_mdata(); + bool apply_fudge = true; BUG_ON(num_pipes > MDSS_MDP_MAX_STAGE); @@ -473,13 +479,36 @@ static void mdss_mdp_perf_calc_mixer(struct mdss_mdp_mixer *mixer, memset(bw_overlap, 0, sizeof(u64) * MDSS_MDP_MAX_STAGE); memset(v_region, 0, sizeof(u32) * MDSS_MDP_MAX_STAGE * 2); + /* + * Apply this logic only for 8x26 to reduce clock rate + * for single video playback use case + */ + if (IS_MDSS_MAJOR_MINOR_SAME(mdata->mdp_rev, MDSS_MDP_HW_REV_101) + && mixer->type == MDSS_MDP_MIXER_TYPE_INTF) { + u32 npipes = 0; + for (i = 0; i < MDSS_MDP_MAX_STAGE; i++) { + pipe = mixer->stage_pipe[i]; + if (pipe) { + if (npipes) { + apply_fudge = true; + break; + } + npipes++; + apply_fudge = !(pipe->src_fmt->is_yuv) + || !(pipe->flags + & MDP_SOURCE_ROTATED_90); + } + } + } + for (i = 0; i < num_pipes; i++) { struct mdss_mdp_perf_params tmp; pipe = pipe_list[i]; if (pipe == NULL) continue; - if (mdss_mdp_perf_calc_pipe(pipe, &tmp, &mixer->roi)) + if (mdss_mdp_perf_calc_pipe(pipe, &tmp, &mixer->roi, + apply_fudge)) continue; prefill_bytes += tmp.prefill_bytes; bw_overlap[i] = tmp.bw_overlap; @@ -573,6 +602,29 @@ static u32 mdss_mdp_get_vbp_factor_max(struct mdss_mdp_ctl *ctl) return vbp_max; } +static bool mdss_mdp_video_mode_intf_connected(struct mdss_mdp_ctl *ctl) +{ + int i; + struct mdss_data_type *mdata; + + if (!ctl || !ctl->mdata) + return 0; + + mdata = ctl->mdata; + for (i = 0; i < mdata->nctl; i++) { + struct mdss_mdp_ctl *ctl = mdata->ctl_off + i; + + if (ctl->is_video_mode && ctl->power_on) { + pr_debug("video interface connected ctl:%d\n", + ctl->num); + return true; + } + } + + return false; +} + + static void __mdss_mdp_perf_calc_ctl_helper(struct mdss_mdp_ctl *ctl, struct mdss_mdp_perf_params *perf, struct mdss_mdp_pipe **left_plist, int left_cnt, @@ -626,9 +678,6 @@ static void __mdss_mdp_perf_calc_ctl_helper(struct mdss_mdp_ctl *ctl, } perf->bw_ctl = max(perf->bw_prefill, perf->bw_overlap); - - if (ctl->is_video_mode) - perf->bw_ctl = IB_FUDGE_FACTOR(perf->bw_ctl); } int mdss_mdp_perf_bw_check(struct mdss_mdp_ctl *ctl, @@ -671,84 +720,116 @@ static void mdss_mdp_perf_calc_ctl(struct mdss_mdp_ctl *ctl, left_plist, (left_plist ? MDSS_MDP_MAX_STAGE : 0), right_plist, (right_plist ? MDSS_MDP_MAX_STAGE : 0)); + if (ctl->is_video_mode || mdss_mdp_video_mode_intf_connected(ctl)) { + if (perf->bw_overlap > perf->bw_prefill) + perf->bw_ctl = apply_fudge_factor(perf->bw_overlap, + &mdss_res->ib_factor_overlap); + else + perf->bw_ctl = apply_fudge_factor(perf->bw_prefill, + &mdss_res->ib_factor); + } pr_debug("ctl=%d clk_rate=%u\n", ctl->num, perf->mdp_clk_rate); - pr_debug("bw_overlap=%llu bw_prefill=%llu prefill_byptes=%d\n", + pr_debug("bw_overlap=%llu bw_prefill=%llu prefill_bytes=%d\n", perf->bw_overlap, perf->bw_prefill, perf->prefill_bytes); } -static bool mdss_mdp_ctl_perf_bw_released(struct mdss_mdp_ctl *ctl) +static void set_status(u32 *value, bool status, u32 bit_num) { - unsigned long flags; - bool released = false; - - if (!ctl || !ctl->panel_data || - (ctl->panel_data->panel_info.type != MIPI_CMD_PANEL)) - return released; - - spin_lock_irqsave(&ctl->spin_lock, flags); - if (ctl->perf_status == 0) { - released = true; - ctl->perf_status++; - } else if (ctl->perf_status <= 2) { - ctl->perf_status++; - } else { - pr_debug("pervious commit was not done\n"); - } - - pr_debug("perf_status=%d\n", ctl->perf_status); - spin_unlock_irqrestore(&ctl->spin_lock, flags); - - return released; + if (status) + *value |= BIT(bit_num); + else + *value &= ~BIT(bit_num); } /** - * @mdss_mdp_ctl_perf_taken() - indicates a committed buffer is taken - * by h/w - * @ctl - pointer to ctl data structure + * @ mdss_mdp_ctl_perf_set_transaction_status() - + * Set the status of the on-going operations + * for the command mode panels. + * @ctl - pointer to a ctl * - * A committed buffer to be displayed is taken at a vsync or reader - * pointer interrupt by h/w. This function must be called in vsync - * interrupt context to indicate the buf status is changed. + * This function is called to set the status bit in the perf_transaction_status + * according to the operation that it is on-going for the command mode + * panels, where: + * + * PERF_SW_COMMIT_STATE: + * 1 - If SW operation has been commited and bw + * has been requested (HW transaction have not started yet). + * 0 - If there is no SW operation pending + * PERF_HW_MDP_STATE: + * 1 - If HW transaction is on-going + * 0 - If there is no HW transaction on going (ping-pong interrupt + * has finished) + * Only if both states are zero there are no pending operations and + * BW could be released. + * State can be queried calling "mdss_mdp_ctl_perf_get_transaction_status" */ -void mdss_mdp_ctl_perf_taken(struct mdss_mdp_ctl *ctl) +void mdss_mdp_ctl_perf_set_transaction_status(struct mdss_mdp_ctl *ctl, + enum mdss_mdp_perf_state_type component, bool new_status) { + u32 previous_transaction; + bool previous_status; + unsigned long flags; + if (!ctl || !ctl->panel_data || (ctl->panel_data->panel_info.type != MIPI_CMD_PANEL)) return; - spin_lock(&ctl->spin_lock); - if (ctl->perf_status) - ctl->perf_status++; - pr_debug("perf_status=%d\n", ctl->perf_status); - spin_unlock(&ctl->spin_lock); + spin_lock_irqsave(&ctl->spin_lock, flags); + + previous_transaction = ctl->perf_transaction_status; + previous_status = previous_transaction & BIT(component) ? + PERF_STATUS_BUSY : PERF_STATUS_DONE; + + /* + * If we set "done" state when previous state was not "busy", + * we want to print a warning since maybe there is a state + * that we are not considering + */ + WARN((PERF_STATUS_DONE == new_status) && + (PERF_STATUS_BUSY != previous_status), + "unexpected previous state for component: %d\n", component); + + set_status(&ctl->perf_transaction_status, new_status, + (u32)component); + + pr_debug("component:%d previous_transaction:%d transaction_status:%d\n", + component, previous_transaction, ctl->perf_transaction_status); + pr_debug("new_status:%d prev_status:%d\n", + new_status, previous_status); + + spin_unlock_irqrestore(&ctl->spin_lock, flags); } /** - * @mdss_mdp_ctl_perf_done() - indicates a committed buffer is - * displayed, so resources such as - * bandwidth that are associated to this - * buffer can be released. + * @ mdss_mdp_ctl_perf_get_transaction_status() - + * Get the status of the on-going operations + * for the command mode panels. * @ctl - pointer to a ctl * - * When pingping done interrupt is trigged, mdp finishes displaying a - * buffer which was committed by user and taken by h/w and calling - * this function to clear those two states. This function must be - * called in pinppong done interrupt context. + * Return: + * The status of the transactions for the command mode panels, + * note that the bandwidth can be released only if all transaction + * status bits are zero. */ -void mdss_mdp_ctl_perf_done(struct mdss_mdp_ctl *ctl) +u32 mdss_mdp_ctl_perf_get_transaction_status(struct mdss_mdp_ctl *ctl) { - if (!ctl || !ctl->panel_data || - (ctl->panel_data->panel_info.type != MIPI_CMD_PANEL)) - return; + unsigned long flags; + u32 transaction_status; - spin_lock(&ctl->spin_lock); - if (ctl->perf_status) { - ctl->perf_status--; - if (ctl->perf_status) - ctl->perf_status--; + /* + * If Video Mode or not valid data to determine the status, return busy + * status, so the bandwidth cannot be freed by the caller + */ + if (!ctl || !ctl->panel_data || + (ctl->panel_data->panel_info.type != MIPI_CMD_PANEL)) { + return PERF_STATUS_BUSY; } - pr_debug("perf_status=%d\n", ctl->perf_status); - spin_unlock(&ctl->spin_lock); + + spin_lock_irqsave(&ctl->spin_lock, flags); + transaction_status = ctl->perf_transaction_status; + spin_unlock_irqrestore(&ctl->spin_lock, flags); + + return transaction_status; } static inline void mdss_mdp_ctl_perf_update_bus(struct mdss_mdp_ctl *ctl) @@ -772,8 +853,9 @@ static inline void mdss_mdp_ctl_perf_update_bus(struct mdss_mdp_ctl *ctl) } } bus_ib_quota = bw_sum_of_intfs; - bus_ab_quota = AB_FUDGE_FACTOR(bw_sum_of_intfs); - mdss_bus_scale_set_quota(MDSS_HW_MDP, bus_ab_quota, bus_ib_quota); + bus_ab_quota = apply_fudge_factor(bw_sum_of_intfs, + &mdss_res->ab_factor); + mdss_mdp_bus_scale_set_quota(bus_ab_quota, bus_ib_quota); pr_debug("ab=%llu ib=%llu\n", bus_ab_quota, bus_ib_quota); } @@ -782,13 +864,12 @@ static inline void mdss_mdp_ctl_perf_update_bus(struct mdss_mdp_ctl *ctl) * @ctl - pointer to a ctl * * Function checks a state variable for the ctl, if all pending commit - * requests are done, meanning no more bandwidth is needed, release + * requests are done, meaning no more bandwidth is needed, release * bandwidth request. */ void mdss_mdp_ctl_perf_release_bw(struct mdss_mdp_ctl *ctl) { - unsigned long flags; - int need_release = 0; + int transaction_status; struct mdss_data_type *mdata; int i; @@ -806,23 +887,21 @@ void mdss_mdp_ctl_perf_release_bw(struct mdss_mdp_ctl *ctl) for (i = 0; i < mdata->nctl; i++) { struct mdss_mdp_ctl *ctl = mdata->ctl_off + i; - if (ctl->power_on && ctl->is_video_mode) { - mutex_unlock(&mdss_mdp_ctl_lock); - return; - } + if (ctl->power_on && ctl->is_video_mode) + goto exit; } - spin_lock_irqsave(&ctl->spin_lock, flags); - if (!ctl->perf_status) - need_release = 1; - pr_debug("need release=%d\n", need_release); - spin_unlock_irqrestore(&ctl->spin_lock, flags); + transaction_status = mdss_mdp_ctl_perf_get_transaction_status(ctl); + pr_debug("transaction_status=0x%x\n", transaction_status); - if (need_release) { + /*Release the bandwidth only if there are no transactions pending*/ + if (!transaction_status) { ctl->cur_perf.bw_ctl = 0; ctl->new_perf.bw_ctl = 0; + pr_debug("Release BW ctl=%d\n", ctl->num); mdss_mdp_ctl_perf_update_bus(ctl); } +exit: mutex_unlock(&mdss_mdp_ctl_lock); } @@ -832,6 +911,7 @@ static void mdss_mdp_ctl_perf_update(struct mdss_mdp_ctl *ctl, struct mdss_mdp_perf_params *new, *old; int update_bus = 0, update_clk = 0; struct mdss_data_type *mdata; + bool is_bw_released; if (!ctl || !ctl->mdata) return; @@ -842,8 +922,14 @@ static void mdss_mdp_ctl_perf_update(struct mdss_mdp_ctl *ctl, old = &ctl->cur_perf; new = &ctl->new_perf; + /* + * We could have released the bandwidth if there were no transactions + * pending, so we want to re-calculate the bandwidth in this situation + */ + is_bw_released = !mdss_mdp_ctl_perf_get_transaction_status(ctl); + if (ctl->power_on) { - if (params_changed || mdss_mdp_ctl_perf_bw_released(ctl)) + if (is_bw_released || params_changed) mdss_mdp_perf_calc_ctl(ctl, new); /* * if params have just changed delay the update until @@ -2446,6 +2532,7 @@ int mdss_mdp_display_commit(struct mdss_mdp_ctl *ctl, void *arg) struct mdss_mdp_ctl *sctl = NULL; int mixer1_changed, mixer2_changed; int ret = 0; + bool is_bw_released; if (!ctl) { pr_err("display function not set\n"); @@ -2471,7 +2558,15 @@ int mdss_mdp_display_commit(struct mdss_mdp_ctl *ctl, void *arg) mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); - if (mixer1_changed || mixer2_changed + /* + * We could have released the bandwidth if there were no transactions + * pending, so we want to re-calculate the bandwidth in this situation + */ + is_bw_released = !mdss_mdp_ctl_perf_get_transaction_status(ctl); + mdss_mdp_ctl_perf_set_transaction_status(ctl, PERF_SW_COMMIT_STATE, + PERF_STATUS_BUSY); + + if (is_bw_released || mixer1_changed || mixer2_changed || ctl->force_screen_state) { if (ctl->prepare_fnc) ret = ctl->prepare_fnc(ctl, arg); @@ -2497,11 +2592,15 @@ int mdss_mdp_display_commit(struct mdss_mdp_ctl *ctl, void *arg) } } - mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_READY); + if (!ctl->shared_lock) + mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_READY); if (ctl->wait_pingpong) ctl->wait_pingpong(ctl, NULL); + ctl->roi_bkup.w = ctl->roi.w; + ctl->roi_bkup.h = ctl->roi.h; + if (ctl->mfd && ctl->mfd->dcm_state != DTM_ENTER) /* postprocessing setup, including dspp */ mdss_mdp_pp_setup_locked(ctl); @@ -2514,6 +2613,8 @@ int mdss_mdp_display_commit(struct mdss_mdp_ctl *ctl, void *arg) wmb(); ctl->flush_bits = 0; + mdss_mdp_xlog_mixer_reg(ctl); + if (ctl->display_fnc) ret = ctl->display_fnc(ctl, arg); /* kickoff */ if (ret) @@ -2679,18 +2780,18 @@ int mdss_mdp_mixer_handoff(struct mdss_mdp_ctl *ctl, u32 num, return rc; } -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) -void mdss_mdp_mixer_read(void) + +static void mdss_mdp_xlog_mixer_reg(struct mdss_mdp_ctl *ctl) { int i, off; - u32 data[4]; + u32 data[MDSS_MDP_INTF_MAX_LAYERMIXER]; - for (i=0; i < 4; i++) { + for (i = 0; i < MDSS_MDP_INTF_MAX_LAYERMIXER; i++) { off = MDSS_MDP_REG_CTL_LAYER(i); - data[i] = mdss_mdp_ctl_read(commit_ctl, off); + data[i] = mdss_mdp_ctl_read(ctl, off); } - xlog(__func__, data[0], data[1], data[2], data[3], off, 0); - + MDSS_XLOG(data[MDSS_MDP_INTF_LAYERMIXER0], + data[MDSS_MDP_INTF_LAYERMIXER1], + data[MDSS_MDP_INTF_LAYERMIXER2], + data[MDSS_MDP_INTF_LAYERMIXER3], off); } -#endif - diff --git a/drivers/video/msm/mdss/mdss_mdp_hwio.h b/drivers/video/msm/mdss/mdss_mdp_hwio.h index bff56d26d4bc..4b9ea20d9dbb 100644 --- a/drivers/video/msm/mdss/mdss_mdp_hwio.h +++ b/drivers/video/msm/mdss/mdss_mdp_hwio.h @@ -21,10 +21,6 @@ #define ENHIST_LUT_ENTRIES 256 #define HIST_V_SIZE 256 -#define MDSS_MDP_HW_REV_100 0x10000000 -#define MDSS_MDP_HW_REV_102 0x10020000 -#define MDSS_MDP_HW_REV_103 0x10030000 - #define MDSS_MDP_FETCH_CONFIG_RESET_VALUE 0x00000087 #define MDSS_REG_HW_VERSION 0x0 diff --git a/drivers/video/msm/mdss/mdss_mdp_intf_cmd.c b/drivers/video/msm/mdss/mdss_mdp_intf_cmd.c index 3d5be62ee0be..0f2cf84dd6b8 100644 --- a/drivers/video/msm/mdss/mdss_mdp_intf_cmd.c +++ b/drivers/video/msm/mdss/mdss_mdp_intf_cmd.c @@ -16,6 +16,7 @@ #include "mdss_mdp.h" #include "mdss_panel.h" #include "mdss_fb.h" +#include "mdss_debug.h" #define VSYNC_EXPIRE_TICK 4 @@ -27,7 +28,7 @@ /* wait for at most 2 vsync for lowest refresh rate (24hz) */ #define KOFF_TIMEOUT msecs_to_jiffies(84) -#define STOP_TIMEOUT msecs_to_jiffies(16 * (VSYNC_EXPIRE_TICK + 2)) +#define STOP_TIMEOUT(hz) msecs_to_jiffies((1000 / hz) * (VSYNC_EXPIRE_TICK + 2)) /* * STOP_TIMEOUT need to wait for cmd stop depends on fps * if the command panel support 60fps the timeout value @@ -217,10 +218,8 @@ static inline void mdss_mdp_cmd_clk_on(struct mdss_mdp_cmd_ctx *ctx) unsigned long flags; struct mdss_data_type *mdata = mdss_mdp_get_mdata(); int rc; - mutex_lock(&ctx->clk_mtx); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctx->panel_ndx, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + MDSS_XLOG(ctx->pp_num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); if (!ctx->clk_enabled) { ctx->clk_enabled = 1; @@ -237,7 +236,6 @@ static inline void mdss_mdp_cmd_clk_on(struct mdss_mdp_cmd_ctx *ctx) mdss_mdp_irq_enable(MDSS_MDP_IRQ_PING_PONG_RD_PTR, ctx->pp_num); ctx->rdptr_enabled = VSYNC_EXPIRE_TICK; spin_unlock_irqrestore(&ctx->clk_lock, flags); - mutex_unlock(&ctx->clk_mtx); } static inline void mdss_mdp_cmd_clk_off(struct mdss_mdp_cmd_ctx *ctx) @@ -246,10 +244,8 @@ static inline void mdss_mdp_cmd_clk_off(struct mdss_mdp_cmd_ctx *ctx) struct mdss_data_type *mdata = mdss_mdp_get_mdata(); int set_clk_off = 0; - mutex_lock(&ctx->clk_mtx); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__,ctx->panel_ndx, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + MDSS_XLOG(ctx->pp_num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); spin_lock_irqsave(&ctx->clk_lock, flags); if (!ctx->rdptr_enabled) set_clk_off = 1; @@ -263,7 +259,6 @@ static inline void mdss_mdp_cmd_clk_off(struct mdss_mdp_cmd_ctx *ctx) mdss_iommu_ctrl(0); mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); } - mutex_unlock(&ctx->clk_mtx); } #if defined(DYNAMIC_FPS_USE_TE_CTRL) int dynamic_fps_use_te_ctrl_value; @@ -308,10 +303,10 @@ static void mdss_mdp_cmd_readptr_done(void *arg) } #endif - mdss_mdp_ctl_perf_taken(ctl); - vsync_time = ktime_get(); ctl->vsync_cnt++; + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__,ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0x88888); @@ -388,7 +383,8 @@ static void mdss_mdp_cmd_pingpong_done(void *arg) return; } - mdss_mdp_ctl_perf_done(ctl); + mdss_mdp_ctl_perf_set_transaction_status(ctl, + PERF_HW_MDP_STATE, PERF_STATUS_DONE); spin_lock(&ctx->clk_lock); list_for_each_entry(tmp, &ctx->vsync_handlers, list) { @@ -398,9 +394,8 @@ static void mdss_mdp_cmd_pingpong_done(void *arg) mdss_mdp_irq_disable_nosync(MDSS_MDP_IRQ_PING_PONG_COMP, ctx->pp_num); complete_all(&ctx->pp_comp); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); if (ctx->koff_cnt) { atomic_inc(&ctx->pp_done_cnt); @@ -443,7 +438,9 @@ static void clk_ctrl_work(struct work_struct *work) return; } + mutex_lock(&ctx->clk_mtx); mdss_mdp_cmd_clk_off(ctx); + mutex_unlock(&ctx->clk_mtx); } static int mdss_mdp_cmd_add_vsync_handler(struct mdss_mdp_ctl *ctl, @@ -459,9 +456,8 @@ static int mdss_mdp_cmd_add_vsync_handler(struct mdss_mdp_ctl *ctl, return -ENODEV; } -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); spin_lock_irqsave(&ctx->clk_lock, flags); if (!handle->enabled) { @@ -474,8 +470,11 @@ static int mdss_mdp_cmd_add_vsync_handler(struct mdss_mdp_ctl *ctl, } spin_unlock_irqrestore(&ctx->clk_lock, flags); - if (enable_rdptr) + if (enable_rdptr) { + mutex_lock(&ctx->clk_mtx); mdss_mdp_cmd_clk_on(ctx); + mutex_unlock(&ctx->clk_mtx); + } return 0; } @@ -495,6 +494,9 @@ static int mdss_mdp_cmd_remove_vsync_handler(struct mdss_mdp_ctl *ctl, xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0x88888); #endif + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled, 0x88888); + spin_lock_irqsave(&ctx->clk_lock, flags); if (handle->enabled) { handle->enabled = false; @@ -521,7 +523,6 @@ int mdss_mdp_cmd_reconfigure_splash_done(struct mdss_mdp_ctl *ctl, bool handoff) pdata->panel_info.cont_splash_enabled = 0; mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_PANEL_CLK_CTRL, (void *)0); - mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); return ret; } @@ -553,6 +554,7 @@ void mdp5_dump_regs(void) static int mdss_mdp_cmd_wait4pingpong(struct mdss_mdp_ctl *ctl, void *arg) { struct mdss_mdp_cmd_ctx *ctx; + struct mdss_panel_data *pdata; unsigned long flags; int need_wait = 0; int rc = 0; @@ -563,30 +565,33 @@ static int mdss_mdp_cmd_wait4pingpong(struct mdss_mdp_ctl *ctl, void *arg) return -ENODEV; } + pdata = ctl->panel_data; + spin_lock_irqsave(&ctx->clk_lock, flags); if (ctx->koff_cnt > 0) need_wait = 1; spin_unlock_irqrestore(&ctx->clk_lock, flags); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + + ctl->roi_bkup.w = ctl->width; + ctl->roi_bkup.h = ctl->height; + + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled, ctl->roi_bkup.w, + ctl->roi_bkup.h); + pr_debug("%s: need_wait=%d intf_num=%d ctx=%p\n", __func__, need_wait, ctl->intf_num, ctx); if (need_wait) { rc = wait_for_completion_timeout( - &ctx->pp_comp, KOFF_TIMEOUT); + &ctx->pp_comp, msecs_to_jiffies(150)); if (rc <= 0) { WARN(1, "cmd kickoff timed out (rc = %d) ctl=%d\n", rc, ctl->num); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - dumpreg(); - mdp5_dump_regs(); - mdss_mdp_debug_bus(); - xlog_dump(); - panic("Pingpong Timeout"); -#endif + mdss_dsi_debug_check_te(pdata); + MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", + "edp", "hdmi", "panic"); rc = -EPERM; mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_TIMEOUT); } else { @@ -597,6 +602,8 @@ static int mdss_mdp_cmd_wait4pingpong(struct mdss_mdp_ctl *ctl, void *arg) xlog(__func__,ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, rc); #endif + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled, rc); return rc; } @@ -628,7 +635,8 @@ int mdss_mdp_cmd_kickoff(struct mdss_mdp_ctl *ctl, void *arg) return -ENODEV; } - pr_debug("%s:+\n", __func__); + mdss_mdp_ctl_perf_set_transaction_status(ctl, + PERF_HW_MDP_STATE, PERF_STATUS_BUSY); if (ctx->panel_on == 0) { rc = mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_UNBLANK, NULL); @@ -645,11 +653,17 @@ int mdss_mdp_cmd_kickoff(struct mdss_mdp_ctl *ctl, void *arg) WARN(rc, "intf %d panel on error (%d)\n", ctl->intf_num, rc); ctx->first_kickoff = 1; + mdss_mdp_ctl_intf_event(ctl, + MDSS_EVENT_REGISTER_RECOVERY_HANDLER, + (void *)&ctx->recovery); } #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); #endif + MDSS_XLOG(ctl->num, ctl->roi.x, ctl->roi.y, ctl->roi.w, + ctl->roi.h); + spin_lock_irqsave(&ctx->clk_lock, flags); ctx->koff_cnt++; spin_unlock_irqrestore(&ctx->clk_lock, flags); @@ -658,29 +672,33 @@ int mdss_mdp_cmd_kickoff(struct mdss_mdp_ctl *ctl, void *arg) mdss_mdp_cmd_set_partial_roi(ctl); + mutex_lock(&ctx->clk_mtx); /* * tx dcs command if had any */ + mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_DSI_CMDLIST_KOFF, NULL); + mdss_mdp_cmd_clk_on(ctx); - mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_DSI_CMDLIST_KOFF, - (void *)&ctx->recovery); INIT_COMPLETION(ctx->pp_comp); - mdss_mdp_irq_enable(MDSS_MDP_IRQ_PING_PONG_COMP, ctx->pp_num); - mdss_mdp_ctl_write(ctl, MDSS_MDP_REG_CTL_START, 1); - mb(); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - { - void mdss_mdp_mixer_read(void); - mdss_mdp_mixer_read(); - } -#endif + if (ctx->first_kickoff == 1) { ctx->first_kickoff = 0; mdss_mdp_set_intr_callback(MDSS_MDP_IRQ_PING_PONG_RD_PTR, ctx->pp_num, - mdss_mdp_cmd_readptr_done, ctl); + mdss_mdp_cmd_readptr_done, ctl); } - pr_debug("%s : -- \n", __func__); + + mdss_mdp_ctl_perf_set_transaction_status(ctl, + PERF_SW_COMMIT_STATE, PERF_STATUS_DONE); + + mdss_mdp_irq_enable(MDSS_MDP_IRQ_PING_PONG_COMP, ctx->pp_num); + mdss_mdp_ctl_write(ctl, MDSS_MDP_REG_CTL_START, 1); + + mb(); + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); + + mutex_unlock(&ctx->clk_mtx); return 0; } @@ -692,6 +710,7 @@ int mdss_mdp_cmd_stop(struct mdss_mdp_ctl *ctl) struct mdss_mdp_vsync_handler *tmp, *handle; int need_wait = 0; int ret = 0; + int hz; u8 timeout_status = 0; pr_debug("%s:+\n", __func__); @@ -709,6 +728,8 @@ int mdss_mdp_cmd_stop(struct mdss_mdp_ctl *ctl) list_for_each_entry_safe(handle, tmp, &ctx->vsync_handlers, list) mdss_mdp_cmd_remove_vsync_handler(ctl, handle); + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled, XLOG_FUNC_ENTRY); #if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0x11111); @@ -724,9 +745,11 @@ int mdss_mdp_cmd_stop(struct mdss_mdp_ctl *ctl) if (pinfo->alpm_event) timeout_status = wait_for_completion_timeout(&ctx->stop_comp,\ STOP_TIMEOUT_FOR_ALPM); - else + else { + hz = mdss_panel_get_framerate(&ctl->panel_data->panel_info); timeout_status = wait_for_completion_timeout(&ctx->stop_comp,\ - STOP_TIMEOUT); + STOP_TIMEOUT(hz)); + } if (timeout_status <= 0) { WARN(1, "stop cmd time out\n"); @@ -748,7 +771,13 @@ int mdss_mdp_cmd_stop(struct mdss_mdp_ctl *ctl) if (cancel_work_sync(&ctx->clk_work)) pr_debug("no pending clk work\n"); + mdss_mdp_ctl_intf_event(ctl, + MDSS_EVENT_REGISTER_RECOVERY_HANDLER, + NULL); + + mutex_lock(&ctx->clk_mtx); mdss_mdp_cmd_clk_off(ctx); + mutex_unlock(&ctx->clk_mtx); flush_work(&ctx->pp_done_work); @@ -775,9 +804,9 @@ int mdss_mdp_cmd_stop(struct mdss_mdp_ctl *ctl) ctl->wait_pingpong = NULL; ctl->add_vsync_handler = NULL; ctl->remove_vsync_handler = NULL; -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0x222222); -#endif + + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled, XLOG_FUNC_EXIT); pr_debug("%s:-\n", __func__); return 0; @@ -835,9 +864,8 @@ int mdss_mdp_cmd_start(struct mdss_mdp_ctl *ctl) pr_debug("%s: ctx=%p num=%d mixer=%d\n", __func__, ctx, ctx->pp_num, mixer->num); -#if defined (CONFIG_FB_MSM_MDSS_DSI_DBG) - xlog(__func__, ctl->num, ctx->koff_cnt, ctx->clk_enabled, ctx->rdptr_enabled, 0, 0); -#endif + MDSS_XLOG(ctl->num, ctx->koff_cnt, ctx->clk_enabled, + ctx->rdptr_enabled); mdss_mdp_set_intr_callback(MDSS_MDP_IRQ_PING_PONG_COMP, ctx->pp_num, mdss_mdp_cmd_pingpong_done, ctl); diff --git a/drivers/video/msm/mdss/mdss_mdp_intf_video.c b/drivers/video/msm/mdss/mdss_mdp_intf_video.c index ae5e0eefbb15..cdca10df0130 100644 --- a/drivers/video/msm/mdss/mdss_mdp_intf_video.c +++ b/drivers/video/msm/mdss/mdss_mdp_intf_video.c @@ -23,6 +23,7 @@ #include "mdss_panel.h" #include "mdss_dsi.h" #include "mdss_edp.h" +#include "mdss_debug.h" int count_wait_for_timeout = 0; int get_lcd_attached(void); @@ -260,6 +261,8 @@ static int mdss_mdp_video_add_vsync_handler(struct mdss_mdp_ctl *ctl, goto exit; } + MDSS_XLOG(ctl->num, ctl->vsync_cnt, handle->enabled); + spin_lock_irqsave(&ctx->vsync_lock, flags); if (!handle->enabled) { handle->enabled = true; @@ -286,6 +289,8 @@ static int mdss_mdp_video_remove_vsync_handler(struct mdss_mdp_ctl *ctl, return -ENODEV; } + MDSS_XLOG(ctl->num, ctl->vsync_cnt, handle->enabled); + spin_lock_irqsave(&ctx->vsync_lock, flags); if (handle->enabled) { handle->enabled = false; @@ -312,7 +317,7 @@ static int mdss_mdp_video_stop(struct mdss_mdp_ctl *ctl) pr_err("invalid ctx for ctl=%d\n", ctl->num); return -ENODEV; } - + MDSS_XLOG(ctl->num, ctl->vsync_cnt); if (ctx->timegen_en) { rc = mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_BLANK, NULL); if (rc == -EBUSY) { @@ -373,6 +378,8 @@ static void mdss_mdp_video_vsync_intr_done(void *arg) vsync_time = ktime_get(); ctl->vsync_cnt++; + MDSS_XLOG(ctl->num, ctl->vsync_cnt, ctl->vsync_cnt); + pr_debug("intr ctl=%d vsync cnt=%u vsync_time=%d\n", ctl->num, ctl->vsync_cnt, (int)ktime_to_ms(vsync_time)); @@ -402,6 +409,7 @@ static int mdss_mdp_video_pollwait(struct mdss_mdp_ctl *ctl) mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); if (rc == 0) { + MDSS_XLOG(ctl->num, ctl->vsync_cnt); pr_debug("vsync poll successful! rc=%d status=0x%x\n", rc, status); ctx->poll_cnt++; @@ -470,7 +478,9 @@ static void mdss_mdp_video_underrun_intr_done(void *arg) return; ctl->underrun_cnt++; - pr_info("display underrun detected for ctl=%d count=%d\n", ctl->num, + MDSS_XLOG(ctl->num, ctl->underrun_cnt); + MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", "edp", "hdmi", "panic"); + pr_debug("display underrun detected for ctl=%d count=%d\n", ctl->num, ctl->underrun_cnt); } @@ -643,9 +653,6 @@ static int mdss_mdp_video_config_fps(struct mdss_mdp_ctl *ctl, return rc; } - - - static int mdss_mdp_video_display(struct mdss_mdp_ctl *ctl, void *arg) { struct mdss_mdp_video_ctx *ctx; @@ -667,6 +674,8 @@ static int mdss_mdp_video_display(struct mdss_mdp_ctl *ctl, void *arg) WARN(1, "commit without wait! ctl=%d", ctl->num); } + MDSS_XLOG(ctl->num, ctl->underrun_cnt); + if (!ctx->timegen_en) { rc = mdss_mdp_ctl_intf_event(ctl, MDSS_EVENT_UNBLANK, NULL); if (rc) { @@ -840,6 +849,7 @@ int mdss_mdp_video_start(struct mdss_mdp_ctl *ctl) return -EINVAL; } + MDSS_XLOG(ctl->num, ctl->vsync_cnt); pr_debug("start ctl=%u\n", ctl->num); ctl->priv_data = ctx; diff --git a/drivers/video/msm/mdss/mdss_mdp_intf_writeback.c b/drivers/video/msm/mdss/mdss_mdp_intf_writeback.c index 4a33a017943a..d729f0b26199 100644 --- a/drivers/video/msm/mdss/mdss_mdp_intf_writeback.c +++ b/drivers/video/msm/mdss/mdss_mdp_intf_writeback.c @@ -216,6 +216,7 @@ static int mdss_mdp_writeback_format_setup(struct mdss_mdp_writeback_ctx *ctx, mdp_wb_write(ctx, MDSS_MDP_REG_WB_DST_YSTRIDE0, ystride0); mdp_wb_write(ctx, MDSS_MDP_REG_WB_DST_YSTRIDE1, ystride1); mdp_wb_write(ctx, MDSS_MDP_REG_WB_OUT_SIZE, outsize); + mdp_wb_write(ctx, MDSS_MDP_REG_WB_DST_WRITE_CONFIG, 0x58); return 0; } diff --git a/drivers/video/msm/mdss/mdss_mdp_overlay.c b/drivers/video/msm/mdss/mdss_mdp_overlay.c index 17581fbe1d26..fd361e2be1e8 100644 --- a/drivers/video/msm/mdss/mdss_mdp_overlay.c +++ b/drivers/video/msm/mdss/mdss_mdp_overlay.c @@ -13,6 +13,7 @@ #define pr_fmt(fmt) "%s: " fmt, __func__ +#include #include #include #include @@ -67,6 +68,7 @@ static int mdss_mdp_overlay_free_fb_pipe(struct msm_fb_data_type *mfd); static int mdss_mdp_overlay_fb_parse_dt(struct msm_fb_data_type *mfd); static int mdss_mdp_overlay_off(struct msm_fb_data_type *mfd); static void __overlay_kickoff_requeue(struct msm_fb_data_type *mfd); +static void __vsync_retire_signal(struct msm_fb_data_type *mfd, int val); static int mdss_mdp_overlay_sd_ctrl(struct msm_fb_data_type *mfd, unsigned int enable) @@ -165,6 +167,9 @@ int mdss_mdp_overlay_req_check(struct msm_fb_data_type *mfd, pr_err("Invalid decimation factors horz=%d vert=%d\n", req->horz_deci, req->vert_deci); return -EINVAL; + } else if (req->flags & MDP_BWC_EN) { + pr_err("Decimation can't be enabled with BWC\n"); + return -EINVAL; } } @@ -233,7 +238,8 @@ int mdss_mdp_overlay_req_check(struct msm_fb_data_type *mfd, } } - if (req->flags & MDP_DEINTERLACE) { + if ((req->flags & MDP_DEINTERLACE) && + !req->scale.enable_pxl_ext) { if (req->flags & MDP_SOURCE_ROTATED_90) { if ((req->src_rect.w % 4) != 0) { pr_err("interlaced rect not h/4\n"); @@ -271,7 +277,7 @@ static int __mdp_pipe_tune_perf(struct mdss_mdp_pipe *pipe) int rc; for (;;) { - rc = mdss_mdp_perf_calc_pipe(pipe, &perf, NULL); + rc = mdss_mdp_perf_calc_pipe(pipe, &perf, NULL, true); if (!rc && (perf.mdp_clk_rate <= mdata->max_mdp_clk_rate)) break; @@ -281,7 +287,9 @@ static int __mdp_pipe_tune_perf(struct mdss_mdp_pipe *pipe) * requirement by applying vertical decimation and reduce * mdp clock requirement */ - if (mdata->has_decimation && (pipe->vert_deci < MAX_DECIMATION)) + if (mdata->has_decimation && (pipe->vert_deci < MAX_DECIMATION) + && !pipe->bwc_mode && !pipe->src_fmt->tile && + !pipe->scale.enable_pxl_ext) pipe->vert_deci++; else return -EPERM; @@ -614,14 +622,21 @@ int mdss_mdp_overlay_pipe_setup(struct msm_fb_data_type *mfd, } } - if (pipe->flags & MDP_DEINTERLACE && !pipe->scale.enable_pxl_ext) { + /* + * When scaling is enabled src crop and image + * width and height is modified by user + */ + if ((pipe->flags & MDP_DEINTERLACE)) { if (pipe->flags & MDP_SOURCE_ROTATED_90) { pipe->src.x = DIV_ROUND_UP(pipe->src.x, 2); pipe->src.x &= ~1; - pipe->src.w /= 2; - pipe->img_width /= 2; + if (!pipe->scale.enable_pxl_ext) { + pipe->src.w /= 2; + pipe->img_width /= 2; + } } else { - pipe->src.h /= 2; + if (!pipe->scale.enable_pxl_ext) + pipe->src.h /= 2; pipe->src.y = DIV_ROUND_UP(pipe->src.y, 2); pipe->src.y &= ~1; } @@ -1123,9 +1138,13 @@ int mdss_mdp_overlay_kickoff(struct msm_fb_data_type *mfd, struct mdss_mdp_ctl *ctl = mfd_to_ctl(mfd); int ret = 0; int sd_in_pipe = 0; + bool need_cleanup = false; - if (ctl->shared_lock) + if (ctl->shared_lock) { + mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_BEGIN); + mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_READY); mutex_lock(ctl->shared_lock); + } mutex_lock(&mdp5_data->ov_lock); mutex_lock(&mdp5_data->list_lock); @@ -1162,6 +1181,7 @@ int mdss_mdp_overlay_kickoff(struct msm_fb_data_type *mfd, list_for_each_entry(pipe, &mdp5_data->pipes_cleanup, list) { mdss_mdp_pipe_queue_data(pipe, NULL); mdss_mdp_mixer_pipe_unstage(pipe); + need_cleanup = true; } ret = __overlay_queue_pipes(mfd); @@ -1176,8 +1196,10 @@ int mdss_mdp_overlay_kickoff(struct msm_fb_data_type *mfd, else ret = mdss_mdp_display_commit(mdp5_data->ctl, NULL); - atomic_set(&mfd->kickoff_pending, 0); - wake_up_all(&mfd->kickoff_wait_q); + if (!need_cleanup) { + atomic_set(&mfd->kickoff_pending, 0); + wake_up_all(&mfd->kickoff_wait_q); + } if (IS_ERR_VALUE(ret)) goto commit_fail; @@ -1217,7 +1239,10 @@ int mdss_mdp_overlay_kickoff(struct msm_fb_data_type *mfd, mdss_mdp_overlay_cleanup(mfd); mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_FLUSHED); - + if (need_cleanup) { + atomic_set(&mfd->kickoff_pending, 0); + wake_up_all(&mfd->kickoff_wait_q); + } mutex_unlock(&mdp5_data->ov_lock); if (ctl->shared_lock) mutex_unlock(ctl->shared_lock); @@ -2079,6 +2104,11 @@ static int mdss_mdp_pp_ioctl(struct msm_fb_data_type *mfd, u32 copyback = 0; u32 copy_from_kernel = 0; + if (mfd->panel_info->partial_update_enabled) { + pr_err("Partical update feature is enabled."); + return -EPERM; + } + ret = copy_from_user(&mdp_pp, argp, sizeof(mdp_pp)); if (ret) return ret; @@ -2192,6 +2222,11 @@ static int mdss_mdp_histo_ioctl(struct msm_fb_data_type *mfd, u32 cmd, u32 pp_bus_handle; static int req = -1; + if (mfd->panel_info->partial_update_enabled) { + pr_err("Partical update feature is enabled."); + return -EPERM; + } + switch (cmd) { case MSMFB_HISTOGRAM_START: if (!mfd->panel_power_on) @@ -2317,6 +2352,15 @@ static int mdss_fb_get_metadata(struct msm_fb_data_type *mfd, case metadata_op_get_caps: ret = mdss_fb_get_hw_caps(mfd, &metadata->data.caps); break; + case metadata_op_get_ion_fd: + if (mfd->fb_ion_handle) { + metadata->data.fbmem_ionfd = + dma_buf_fd(mfd->fbmem_buf, 0); + if (metadata->data.fbmem_ionfd < 0) + pr_err("fd allocation failed. fd = %d\n", + metadata->data.fbmem_ionfd); + } + break; case metadata_op_crc: if (!mfd->panel_power_on) return -EPERM; @@ -2680,11 +2724,13 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) if (!mfd->panel_info->cont_splash_enabled && (mfd->panel_info->type != DTV_PANEL) && - (mfd->panel_info->type != WRITEBACK_PANEL) && !(pinfo->alpm_event && pinfo->alpm_event(CHECK_PREVIOUS_STATUS))) { rc = mdss_mdp_overlay_start(mfd); - if (!IS_ERR_VALUE(rc)) + if (!IS_ERR_VALUE(rc) && + (mfd->panel_info->type != WRITEBACK_PANEL)) { + atomic_inc(&mfd->mdp_sync_pt_data.commit_cnt); rc = mdss_mdp_overlay_kickoff(mfd, NULL); + } } else { rc = mdss_mdp_ctl_setup(mdp5_data->ctl); if (rc) @@ -2751,6 +2797,20 @@ static int mdss_mdp_overlay_off(struct msm_fb_data_type *mfd) } } + /* + * If retire fences are still active wait for a vsync time + * for retire fence to be updated. + * As a last resort signal the timeline if vsync doesn't arrive. + */ + if (mdp5_data->retire_cnt) { + u32 fps = mdss_panel_get_framerate(mfd->panel_info); + u32 vsync_time = 1000 / (fps ? : DEFAULT_FRAME_RATE); + + msleep(vsync_time); + + __vsync_retire_signal(mfd, mdp5_data->retire_cnt); + } + rc = mdss_mdp_ctl_stop(mdp5_data->ctl); if (rc == 0) { __mdss_mdp_overlay_free_list_purge(mfd); @@ -2776,19 +2836,9 @@ static int mdss_mdp_overlay_off(struct msm_fb_data_type *mfd) int mdss_panel_register_done(struct mdss_panel_data *pdata) { - /* - * Clocks are already on if continuous splash is enabled, - * increasing ref_cnt to help balance clocks once done. - */ - if (pdata->panel_info.cont_splash_enabled) { + if (pdata->panel_info.cont_splash_enabled) mdss_mdp_footswitch_ctrl_splash(1); -#ifdef CONFIG_FB_MSM_EDP_SAMSUNG - mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); -#else - mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); -#endif - } return 0; } @@ -2910,7 +2960,6 @@ static void __vsync_retire_work_handler(struct work_struct *work) { struct mdss_overlay_private *mdp5_data = container_of(work, typeof(*mdp5_data), retire_work); - struct msm_sync_pt_data *sync_pt_data; if (!mdp5_data->ctl || !mdp5_data->ctl->mfd) return; @@ -2918,12 +2967,18 @@ static void __vsync_retire_work_handler(struct work_struct *work) if (!mdp5_data->ctl->remove_vsync_handler) return; - sync_pt_data = &mdp5_data->ctl->mfd->mdp_sync_pt_data; - mutex_lock(&sync_pt_data->sync_mutex); + __vsync_retire_signal(mdp5_data->ctl->mfd, 1); +} + +static void __vsync_retire_signal(struct msm_fb_data_type *mfd, int val) +{ + struct mdss_overlay_private *mdp5_data = mfd_to_mdp5_data(mfd); + + mutex_lock(&mfd->mdp_sync_pt_data.sync_mutex); if (mdp5_data->retire_cnt > 0) { - sw_sync_timeline_inc(mdp5_data->vsync_timeline, 1); + sw_sync_timeline_inc(mdp5_data->vsync_timeline, val); - mdp5_data->retire_cnt--; + mdp5_data->retire_cnt -= min(val, mdp5_data->retire_cnt); if (mdp5_data->retire_cnt == 0) { mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); mdp5_data->ctl->remove_vsync_handler(mdp5_data->ctl, @@ -2931,7 +2986,7 @@ static void __vsync_retire_work_handler(struct work_struct *work) mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); } } - mutex_unlock(&sync_pt_data->sync_mutex); + mutex_unlock(&mfd->mdp_sync_pt_data.sync_mutex); } static struct sync_fence * @@ -2957,7 +3012,7 @@ __vsync_retire_get_fence(struct msm_sync_pt_data *sync_pt_data) return ERR_PTR(-EPERM); } - if (mdp5_data->retire_cnt == 0) { + if (!mdp5_data->vsync_retire_handler.enabled) { mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); rc = ctl->add_vsync_handler(ctl, &mdp5_data->vsync_retire_handler); diff --git a/drivers/video/msm/mdss/mdss_mdp_pipe.c b/drivers/video/msm/mdss/mdss_mdp_pipe.c index 0b9e6c26a5a9..61049a4f1399 100644 --- a/drivers/video/msm/mdss/mdss_mdp_pipe.c +++ b/drivers/video/msm/mdss/mdss_mdp_pipe.c @@ -55,7 +55,7 @@ static inline u32 mdss_mdp_pipe_read(struct mdss_mdp_pipe *pipe, u32 reg) } static u32 mdss_mdp_smp_mmb_reserve(struct mdss_mdp_pipe_smp_map *smp_map, - size_t n) + size_t n, bool force_alloc) { u32 i, mmb; u32 fixed_cnt = bitmap_weight(smp_map->fixed, SMP_MB_CNT); @@ -73,7 +73,7 @@ static u32 mdss_mdp_smp_mmb_reserve(struct mdss_mdp_pipe_smp_map *smp_map, * that calls for change in smp configuration (addition/removal * of smp blocks), so that fallback solution happens. */ - if (i != 0 && n != i) { + if (i != 0 && n != i && !force_alloc) { pr_debug("Can't change mmb config, num_blks: %d alloc: %d\n", n, i); return 0; @@ -85,7 +85,7 @@ static u32 mdss_mdp_smp_mmb_reserve(struct mdss_mdp_pipe_smp_map *smp_map, */ mdss_mdp_smp_mmb_free(smp_map->reserved, false); - /* Reserve mmb blocks*/ + /* reserve more blocks if needed, but can't free mmb at this point */ for (; i < n; i++) { if (bitmap_full(mdata->mmb_alloc_map, SMP_MB_CNT)) break; @@ -215,8 +215,9 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe) u32 num_blks = 0, reserved = 0; struct mdss_mdp_plane_sizes ps; int i; - int rc = 0, rot_mode = 0; - u32 nlines, format; + int rc = 0, rot_mode = 0, wb_mixer = 0; + bool force_alloc = 0; + u32 nlines, format, seg_w; u16 width; width = pipe->src.w >> pipe->horz_deci; @@ -228,19 +229,17 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe) return rc; /* * Override fetch strides with SMP buffer size for both the - * planes + * planes. BWC line buffer needs to be divided into 16 + * segments and every segment is aligned to format + * specific RAU size */ + seg_w = DIV_ROUND_UP(pipe->src.w, 16); if (pipe->src_fmt->fetch_planes == MDSS_MDP_PLANE_INTERLEAVED) { - /* - * BWC line buffer needs to be divided into 16 - * segments and every segment is aligned to format - * specific RAU size - */ - ps.ystride[0] = ALIGN(pipe->src.w / 16 , 32) * 16 * - ps.rau_h[0] * pipe->src_fmt->bpp; + ps.ystride[0] = ALIGN(seg_w, 32) * 16 * ps.rau_h[0] * + pipe->src_fmt->bpp; ps.ystride[1] = 0; } else { - u32 bwc_width = ALIGN(pipe->src.w / 16, 64) * 16; + u32 bwc_width = ALIGN(seg_w, 64) * 16; ps.ystride[0] = bwc_width * ps.rau_h[0]; ps.ystride[1] = bwc_width * ps.rau_h[1]; /* @@ -301,6 +300,11 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe) else nlines = pipe->bwc_mode ? 1 : 2; + if (pipe->mixer->type == MDSS_MDP_MIXER_TYPE_WRITEBACK) + wb_mixer = 1; + + force_alloc = pipe->flags & MDP_SMP_FORCE_ALLOC; + mutex_lock(&mdss_mdp_smp_lock); for (i = (MAX_PLANES - 1); i >= ps.num_planes; i--) { if (bitmap_weight(pipe->smp_map[i].allocated, SMP_MB_CNT)) { @@ -312,7 +316,7 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe) } for (i = 0; i < ps.num_planes; i++) { - if (rot_mode) { + if (rot_mode || wb_mixer) { num_blks = 1; } else { num_blks = DIV_ROUND_UP(ps.ystride[i] * nlines, @@ -330,7 +334,7 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe) pr_debug("reserving %d mmb for pnum=%d plane=%d\n", num_blks, pipe->num, i); reserved = mdss_mdp_smp_mmb_reserve(&pipe->smp_map[i], - num_blks); + num_blks, force_alloc); if (reserved < num_blks) break; } diff --git a/drivers/video/msm/mdss/mdss_mdp_pp.c b/drivers/video/msm/mdss/mdss_mdp_pp.c index ac980bfb4867..304849e04a0e 100644 --- a/drivers/video/msm/mdss/mdss_mdp_pp.c +++ b/drivers/video/msm/mdss/mdss_mdp_pp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2014, 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 @@ -1015,7 +1015,7 @@ static int mdss_mdp_scale_setup(struct mdss_mdp_pipe *pipe) (pipe->pp_res.pp_sts.sharp_sts & PP_STS_ENABLE) || (chroma_sample == MDSS_MDP_CHROMA_420) || (chroma_sample == MDSS_MDP_CHROMA_H1V2) || - pipe->scale.enable_pxl_ext) { + (pipe->scale.enable_pxl_ext && (src_h != pipe->dst.h))) { pr_debug("scale y - src_h=%d dst_h=%d\n", src_h, pipe->dst.h); if ((src_h / MAX_DOWNSCALE_RATIO) > pipe->dst.h) { @@ -1071,7 +1071,7 @@ static int mdss_mdp_scale_setup(struct mdss_mdp_pipe *pipe) (pipe->pp_res.pp_sts.sharp_sts & PP_STS_ENABLE) || (chroma_sample == MDSS_MDP_CHROMA_420) || (chroma_sample == MDSS_MDP_CHROMA_H2V1) || - pipe->scale.enable_pxl_ext) { + (pipe->scale.enable_pxl_ext && (src_w != pipe->dst.w))) { pr_debug("scale x - src_w=%d dst_w=%d\n", src_w, pipe->dst.w); if ((src_w / MAX_DOWNSCALE_RATIO) > pipe->dst.w) { @@ -1124,39 +1124,51 @@ static int mdss_mdp_scale_setup(struct mdss_mdp_pipe *pipe) } } - if (pipe->scale.enable_pxl_ext && - pipe->type == MDSS_MDP_PIPE_TYPE_VIG) { - - /*program x,y initial phase and phase step*/ - writel_relaxed(pipe->scale.init_phase_x[0], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C03_INIT_PHASEX); - writel_relaxed(pipe->scale.phase_step_x[0], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C03_PHASESTEPX); - writel_relaxed(pipe->scale.init_phase_x[1], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C12_INIT_PHASEX); - writel_relaxed(pipe->scale.phase_step_x[1], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C12_PHASESTEPX); - - writel_relaxed(pipe->scale.init_phase_y[0], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C03_INIT_PHASEY); - writel_relaxed(pipe->scale.phase_step_y[0], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C03_PHASESTEPY); - writel_relaxed(pipe->scale.init_phase_y[1], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C12_INIT_PHASEY); - writel_relaxed(pipe->scale.phase_step_y[1], - pipe->base + MDSS_MDP_REG_VIG_QSEED2_C12_PHASESTEPY); + if (pipe->scale.enable_pxl_ext) { + if (pipe->type == MDSS_MDP_PIPE_TYPE_VIG) { + /*program x,y initial phase and phase step*/ + writel_relaxed(pipe->scale.init_phase_x[0], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C03_INIT_PHASEX); + writel_relaxed(pipe->scale.phase_step_x[0], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C03_PHASESTEPX); + writel_relaxed(pipe->scale.init_phase_x[1], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C12_INIT_PHASEX); + writel_relaxed(pipe->scale.phase_step_x[1], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C12_PHASESTEPX); + + writel_relaxed(pipe->scale.init_phase_y[0], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C03_INIT_PHASEY); + writel_relaxed(pipe->scale.phase_step_y[0], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C03_PHASESTEPY); + writel_relaxed(pipe->scale.init_phase_y[1], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C12_INIT_PHASEY); + writel_relaxed(pipe->scale.phase_step_y[1], + pipe->base + + MDSS_MDP_REG_VIG_QSEED2_C12_PHASESTEPY); + } else { + writel_relaxed(pipe->scale.phase_step_x[0], + pipe->base + + MDSS_MDP_REG_SCALE_PHASE_STEP_X); + writel_relaxed(pipe->scale.phase_step_y[0], + pipe->base + + MDSS_MDP_REG_SCALE_PHASE_STEP_Y); + writel_relaxed(pipe->scale.init_phase_x[0], + pipe->base + + MDSS_MDP_REG_SCALE_INIT_PHASE_X); + writel_relaxed(pipe->scale.init_phase_y[0], + pipe->base + + MDSS_MDP_REG_SCALE_INIT_PHASE_Y); + } /*program pixel extn values for the SSPP*/ mdss_mdp_pipe_program_pixel_extn(pipe); - } else if (pipe->type == MDSS_MDP_PIPE_TYPE_VIG) { - writel_relaxed(phasex_step, pipe->base + - MDSS_MDP_REG_SCALE_PHASE_STEP_X); - writel_relaxed(phasey_step, pipe->base + - MDSS_MDP_REG_SCALE_PHASE_STEP_Y); - writel_relaxed(init_phasex, pipe->base + - MDSS_MDP_REG_SCALE_INIT_PHASE_X); - writel_relaxed(init_phasey, pipe->base + - MDSS_MDP_REG_SCALE_INIT_PHASE_Y); } else { writel_relaxed(phasex_step, pipe->base + MDSS_MDP_REG_SCALE_PHASE_STEP_X); @@ -1803,6 +1815,8 @@ int mdss_mdp_pp_init(struct device *dev) &mdss_pp_res->dspp_hist[i].hist_mutex); spin_lock_init( &mdss_pp_res->dspp_hist[i].hist_lock); + init_completion( + &mdss_pp_res->dspp_hist[i].comp); } } } @@ -1811,6 +1825,7 @@ int mdss_mdp_pp_init(struct device *dev) for (i = 0; i < mdata->nvig_pipes; i++) { mutex_init(&vig[i].pp_res.hist.hist_mutex); spin_lock_init(&vig[i].pp_res.hist.hist_lock); + init_completion(&vig[i].pp_res.hist.comp); } if (!mdata->pp_bus_hdl) { pp_bus_pdata = &mdp_pp_bus_scale_table; @@ -2258,6 +2273,20 @@ int mdss_mdp_pcc_config(struct mdp_pcc_cfg_data *config, return ret; } +static void pp_read_igc_lut_cached(struct mdp_igc_lut_data *cfg) +{ + int i; + u32 disp_num; + + disp_num = cfg->block - MDP_LOGICAL_BLOCK_DISP_0; + for (i = 0; i < IGC_LUT_ENTRIES; i++) { + cfg->c0_c1_data[i] = + mdss_pp_res->igc_disp_cfg[disp_num].c0_c1_data[i]; + cfg->c2_data[i] = + mdss_pp_res->igc_disp_cfg[disp_num].c2_data[i]; + } +} + static void pp_read_igc_lut(struct mdp_igc_lut_data *cfg, char __iomem *addr, u32 blk_idx) { @@ -2378,14 +2407,17 @@ int mdss_mdp_igc_lut_config(struct mdp_igc_lut_data *config, &mdss_pp_res->igc_lut_c0c1[disp_num][0]; local_cfg.c2_data = &mdss_pp_res->igc_lut_c2[disp_num][0]; - pp_read_igc_lut(&local_cfg, igc_addr, dspp_num); - if (copy_to_user(config->c0_c1_data, local_cfg.c2_data, + if (mdata->has_no_lut_read) + pp_read_igc_lut_cached(&local_cfg); + else + pp_read_igc_lut(&local_cfg, igc_addr, dspp_num); + if (copy_to_user(config->c0_c1_data, local_cfg.c0_c1_data, config->len * sizeof(u32))) { ret = -EFAULT; mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); goto igc_config_exit; } - if (copy_to_user(config->c2_data, local_cfg.c0_c1_data, + if (copy_to_user(config->c2_data, local_cfg.c2_data, config->len * sizeof(u32))) { ret = -EFAULT; mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); @@ -2525,6 +2557,41 @@ static int pp_read_argc_lut(struct mdp_pgc_lut_data *config, char __iomem *addr) return ret; } +static int pp_read_argc_lut_cached(struct mdp_pgc_lut_data *config) +{ + int i; + u32 disp_num; + struct mdp_pgc_lut_data *pgc_ptr; + + disp_num = PP_BLOCK(config->block) - MDP_LOGICAL_BLOCK_DISP_0; + switch (PP_LOCAT(config->block)) { + case MDSS_PP_LM_CFG: + pgc_ptr = &mdss_pp_res->argc_disp_cfg[disp_num]; + break; + case MDSS_PP_DSPP_CFG: + pgc_ptr = &mdss_pp_res->pgc_disp_cfg[disp_num]; + break; + default: + return -EINVAL; + } + + for (i = 0; i < GC_LUT_SEGMENTS; i++) { + config->r_data[i].x_start = pgc_ptr->r_data[i].x_start; + config->r_data[i].slope = pgc_ptr->r_data[i].slope; + config->r_data[i].offset = pgc_ptr->r_data[i].offset; + + config->g_data[i].x_start = pgc_ptr->g_data[i].x_start; + config->g_data[i].slope = pgc_ptr->g_data[i].slope; + config->g_data[i].offset = pgc_ptr->g_data[i].offset; + + config->b_data[i].x_start = pgc_ptr->b_data[i].x_start; + config->b_data[i].slope = pgc_ptr->b_data[i].slope; + config->b_data[i].offset = pgc_ptr->b_data[i].offset; + } + + return 0; +} + /* Note: Assumes that its inputs have been checked by calling function */ static void pp_update_hist_lut(char __iomem *addr, struct mdp_hist_lut_data *cfg) @@ -2548,6 +2615,10 @@ int mdss_mdp_argc_config(struct mdp_pgc_lut_data *config, struct mdp_pgc_lut_data *pgc_ptr; u32 tbl_size, r_size, g_size, b_size; char __iomem *argc_addr = 0; + struct mdss_data_type *mdata = mdss_mdp_get_mdata(); + + if (mdata == NULL) + return -EPERM; if ((PP_BLOCK(config->block) < MDP_LOGICAL_BLOCK_DISP_0) || (PP_BLOCK(config->block) >= MDP_BLOCK_MAX)) @@ -2561,6 +2632,12 @@ int mdss_mdp_argc_config(struct mdp_pgc_lut_data *config, mutex_lock(&mdss_pp_mutex); disp_num = PP_BLOCK(config->block) - MDP_LOGICAL_BLOCK_DISP_0; + ret = pp_get_dspp_num(disp_num, &dspp_num); + if (ret) { + pr_err("%s, no dspp connects to disp %d", __func__, disp_num); + goto argc_config_exit; + } + switch (PP_LOCAT(config->block)) { case MDSS_PP_LM_CFG: argc_addr = mdss_mdp_get_mixer_addr_off(dspp_num) + @@ -2586,12 +2663,6 @@ int mdss_mdp_argc_config(struct mdp_pgc_lut_data *config, tbl_size = GC_LUT_SEGMENTS * sizeof(struct mdp_ar_gc_lut_data); if (config->flags & MDP_PP_OPS_READ) { - ret = pp_get_dspp_num(disp_num, &dspp_num); - if (ret) { - pr_err("%s, no dspp connects to disp %d", - __func__, disp_num); - goto argc_config_exit; - } mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON, false); local_cfg = *config; local_cfg.r_data = @@ -2600,21 +2671,31 @@ int mdss_mdp_argc_config(struct mdp_pgc_lut_data *config, &mdss_pp_res->gc_lut_g[disp_num][0]; local_cfg.b_data = &mdss_pp_res->gc_lut_b[disp_num][0]; - pp_read_argc_lut(&local_cfg, argc_addr); - if (copy_to_user(config->r_data, - &mdss_pp_res->gc_lut_r[disp_num][0], tbl_size)) { + if (mdata->has_no_lut_read) + pp_read_argc_lut_cached(&local_cfg); + else + pp_read_argc_lut(&local_cfg, argc_addr); + + if ((tbl_size != local_cfg.num_r_stages * + sizeof(struct mdp_ar_gc_lut_data)) || + (copy_to_user(config->r_data, local_cfg.r_data, + tbl_size))) { mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); ret = -EFAULT; goto argc_config_exit; } - if (copy_to_user(config->g_data, - &mdss_pp_res->gc_lut_g[disp_num][0], tbl_size)) { + if ((tbl_size != local_cfg.num_g_stages * + sizeof(struct mdp_ar_gc_lut_data)) || + (copy_to_user(config->g_data, local_cfg.g_data, + tbl_size))) { mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); ret = -EFAULT; goto argc_config_exit; } - if (copy_to_user(config->b_data, - &mdss_pp_res->gc_lut_b[disp_num][0], tbl_size)) { + if ((tbl_size != local_cfg.num_b_stages * + sizeof(struct mdp_ar_gc_lut_data)) || + (copy_to_user(config->b_data, local_cfg.b_data, + tbl_size))) { mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF, false); ret = -EFAULT; goto argc_config_exit; @@ -2947,7 +3028,7 @@ static int pp_histogram_enable(struct pp_hist_col_info *hist_info, goto exit; } hist_info->frame_cnt = req->frame_cnt; - init_completion(&hist_info->comp); + INIT_COMPLETION(hist_info->comp); hist_info->hist_cnt_read = 0; hist_info->hist_cnt_sent = 0; hist_info->hist_cnt_time = 0; diff --git a/drivers/video/msm/mdss/mdss_panel.h b/drivers/video/msm/mdss/mdss_panel.h index 08db18f05de4..620d822409ff 100644 --- a/drivers/video/msm/mdss/mdss_panel.h +++ b/drivers/video/msm/mdss/mdss_panel.h @@ -166,6 +166,7 @@ enum mdss_intf_events { MDSS_EVENT_DSI_CMDLIST_KOFF, MDSS_EVENT_MDNIE_DEFAULT_UPDATE, MDSS_EVENT_ENABLE_PARTIAL_UPDATE, + MDSS_EVENT_REGISTER_RECOVERY_HANDLER, }; struct lcd_panel_info { @@ -326,6 +327,12 @@ struct mdss_panel_info { bool dynamic_fps; char dfps_update; int new_fps; + u32 xstart_pix_align; + u32 width_pix_align; + u32 ystart_pix_align; + u32 height_pix_align; + u32 min_width; + u32 min_height; u32 cont_splash_enabled; u32 partial_update_enabled; diff --git a/drivers/video/msm/mdss/mdss_samsung_dsi_panel.c b/drivers/video/msm/mdss/mdss_samsung_dsi_panel.c index 1594b37459d3..9fd67659303b 100644 --- a/drivers/video/msm/mdss/mdss_samsung_dsi_panel.c +++ b/drivers/video/msm/mdss/mdss_samsung_dsi_panel.c @@ -65,8 +65,18 @@ #endif +#if defined(CONFIG_MACH_KS01SKT) || defined(CONFIG_MACH_KS01KTT) || defined(CONFIG_MACH_KS01LGT) \ + || defined(CONFIG_MACH_HLTESKT) || defined(CONFIG_MACH_HLTELGT) || defined(CONFIG_MACH_HLTEKTT) +#define octa_manufacture_date +#endif + #define DT_CMD_HDR 6 +#if defined(octa_manufacture_date) +static struct dsi_cmd nv_date_read_cmds; +char mdate_buffer[10]; +#endif + static struct dsi_buf dsi_panel_tx_buf; static struct dsi_buf dsi_panel_rx_buf; @@ -463,7 +473,7 @@ static ssize_t mipi_samsung_disp_get_power(struct device *dev, if (unlikely(mfd->key != MFD_KEY)) return -EINVAL; - rc = snprintf((char *)buf, sizeof(buf), "%d\n", mfd->panel_power_on); + rc = snprintf((char *)buf, PAGE_SIZE, "%d\n", mfd->panel_power_on); pr_info("mipi_samsung_disp_get_power(%d)\n", mfd->panel_power_on); return rc; @@ -532,7 +542,7 @@ static ssize_t mipi_samsung_disp_windowtype_show(struct device *dev, id2 = (msd.manufacture_id & 0x0000FF00) >> 8; id3 = msd.manufacture_id & 0xFF; - snprintf(temp, sizeof(temp), "%x %x %x\n", id1, id2, id3); + snprintf(temp, PAGE_SIZE, "%x %x %x\n", id1, id2, id3); strlcat(buf, temp, 15); return strnlen(buf, 15); } @@ -543,8 +553,8 @@ static ssize_t mipi_samsung_disp_acl_show(struct device *dev, { int rc; - rc = snprintf((char *)buf, sizeof(buf), "%d\n", msd.dstat.acl_on); - pr_info("acl status: %d\n", *buf); + rc = snprintf((char *)buf, PAGE_SIZE, "%d\n", msd.dstat.acl_on); + pr_info("acl status: %c\n", *buf); return rc; } @@ -1164,12 +1174,33 @@ static ssize_t mipi_samsung_disp_acl_store(struct device *dev, return size; } +#if defined(octa_manufacture_date) +static ssize_t manufacture_date_show(struct device *dev, + struct device_attribute *attr, char *buf) +{ + u16 year; + u8 month; + u8 day; + + pr_info("C8 41th : %02x\n", mdate_buffer[0]); + pr_info("C8 42th : %02x\n", mdate_buffer[1]); + + year = ((mdate_buffer[0] & 0xF0)>>4) + 2011; + month = mdate_buffer[0] & 0x0F; + day = mdate_buffer[1] & 0x1F; + + sprintf(buf, "%d, %d, %d\n", year, month, day); + + return strlen(buf); +} +#endif + static ssize_t mipi_samsung_disp_siop_show(struct device *dev, struct device_attribute *attr, char *buf) { int rc; - rc = snprintf((char *)buf, sizeof(buf), "%d\n", msd.dstat.siop_status); + rc = snprintf((char *)buf, PAGE_SIZE, "%d\n", msd.dstat.siop_status); pr_info("siop status: %d\n", *buf); return rc; @@ -1299,7 +1330,7 @@ static ssize_t mipi_samsung_backlight_show(struct device *dev, { int rc; - rc = snprintf((char *)buf, sizeof(buf), "%d\n", + rc = snprintf((char *)buf, PAGE_SIZE, "%d\n", msd.dstat.bright_level ); pr_info("backlight : %d\n", *buf); @@ -1324,7 +1355,7 @@ static ssize_t mipi_samsung_auto_brightness_show(struct device *dev, { int rc; - rc = snprintf((char *)buf, sizeof(buf), "%d\n", + rc = snprintf((char *)buf, PAGE_SIZE, "%d\n", msd.dstat.auto_brightness); pr_info("auto_brightness: %d\n", *buf); @@ -1568,6 +1599,11 @@ static DEVICE_ATTR(partial_disp, S_IRUGO | S_IWUSR | S_IWGRP, mipi_samsung_disp_partial_disp_store); #endif +#if defined(octa_manufacture_date) +static DEVICE_ATTR(manufacture_date, S_IRUGO, + manufacture_date_show, NULL); +#endif + #if defined(FORCE_500CD) static DEVICE_ATTR(force_500cd, S_IRUGO | S_IWUSR | S_IWGRP, mipi_samsung_force_500cd_show, @@ -2158,6 +2194,11 @@ static int mdss_dsi_panel_dimming_init(struct mdss_panel_data *pdata) /* Set the mtp read buffer pointer and read the NVM value*/ mipi_samsung_read_nv_mem(pdata, &nv_mtp_read_cmds, msd.sdimconf->mtp_buffer); + +#if defined(octa_manufacture_date) + mipi_samsung_read_nv_mem(pdata, &nv_date_read_cmds, mdate_buffer); +#endif + #ifdef LDI_FPS_CHANGE if(msd.id3 >= 0x21) { mipi_samsung_read_nv_mem(msd.pdata, &read_ldi_fps_cmds, &ldi_fps_buffer); @@ -3074,7 +3115,10 @@ static int mdss_panel_parse_dt(struct device_node *np, "qcom,panel-off-cmds"); #endif - +#if defined(octa_manufacture_date) + mdss_samsung_parse_panel_cmd(np, &nv_date_read_cmds, + "samsung,panel-nv-mdate-read-cmds"); +#endif mdss_samsung_parse_panel_cmd(np, &nv_mtp_read_cmds, "samsung,panel-nv-mtp-read-cmds"); #if defined(HBM_RE) @@ -3503,6 +3547,9 @@ static struct attribute *panel_sysfs_attributes[] = { #endif #if defined(FORCE_500CD) &dev_attr_force_500cd.attr, +#endif +#if defined(octa_manufacture_date) + &dev_attr_manufacture_date.attr, #endif NULL }; @@ -3591,6 +3638,11 @@ int mdss_dsi_panel_init(struct device_node *node, struct mdss_dsi_ctrl_pdata *ct ctrl_pdata->panel_data.panel_info.cont_splash_enabled = 1; } + if (get_lcd_attached() == 0) { + pr_err("%s:lcd is not attached, set splash flag to 0 \n", __func__); + ctrl_pdata->panel_data.panel_info.cont_splash_enabled = 0; + } + #if defined(CONFIG_LCD_CLASS_DEVICE) lcd_device = lcd_device_register("panel", NULL, NULL, diff --git a/drivers/video/msm/mhl_v2/sii8240/sii8240_platform.c b/drivers/video/msm/mhl_v2/sii8240/sii8240_platform.c index 9c22dc0f41c1..d1b539422dba 100644 --- a/drivers/video/msm/mhl_v2/sii8240/sii8240_platform.c +++ b/drivers/video/msm/mhl_v2/sii8240/sii8240_platform.c @@ -168,9 +168,13 @@ static bool sii8240_vbus_present(void) ret = false; #else struct sii8240_platform_data *pdata = g_pdata; - if (pdata->gpio_ta_int > 0) - ret = gpio_get_value_cansleep(pdata->gpio_ta_int) ? - false : true; + if (pdata->gpio_ta_int > 0){ +#ifdef CONFIG_CHARGER_SMB358 + msleep(300); +#endif + ret = gpio_get_value_cansleep(pdata->gpio_ta_int) ? + false : true; + } #endif pr_info("VBUS : %s in %s\n", ret ? "IN" : "OUT", __func__); return ret; @@ -236,7 +240,7 @@ static void sii8240_charger_mhl_cb(bool otg_enable, int charger) pdata->charging_type = POWER_SUPPLY_TYPE_MHL_1500; } else if (charger == 0x03) { pr_info("%s() USB charger\n", __func__); - pdata->charging_type = POWER_SUPPLY_TYPE_USB; + pdata->charging_type = POWER_SUPPLY_TYPE_MHL_USB; } else pdata->charging_type = POWER_SUPPLY_TYPE_BATTERY; diff --git a/drivers/w1/Kconfig b/drivers/w1/Kconfig index fd2c7bd9dfbe..3f9afa6a91db 100644 --- a/drivers/w1/Kconfig +++ b/drivers/w1/Kconfig @@ -25,6 +25,12 @@ config W1_CON 2. Userspace commands. Includes read/write and search/alarm search commands. 3. Replies to userspace commands. +config W1_WORKQUEUE + bool "Using kthread for checking w1 slave" + default n + help + This allows to start the WQ func. when w1 master is looking for slaves. + source drivers/w1/masters/Kconfig source drivers/w1/slaves/Kconfig diff --git a/drivers/w1/masters/w1-gpio-msm.c b/drivers/w1/masters/w1-gpio-msm.c index 945445fdb61e..0a8981060989 100755 --- a/drivers/w1/masters/w1-gpio-msm.c +++ b/drivers/w1/masters/w1-gpio-msm.c @@ -489,6 +489,9 @@ static int w1_gpio_msm_suspend(struct platform_device *pdev, pm_message_t state) gpio_tlmm_config(GPIO_CFG(pdata->pin, 0, GPIO_CFG_INPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), 1); gpio_direction_input(pdata->pin); +#ifdef CONFIG_W1_WORKQUEUE + cancel_delayed_work_sync(&w1_gdev->w1_dwork); +#endif return 0; } @@ -501,6 +504,9 @@ static int w1_gpio_msm_resume(struct platform_device *pdev) gpio_tlmm_config(GPIO_CFG(pdata->pin, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), 1); gpio_direction_output(pdata->pin, 1); +#ifdef CONFIG_W1_WORKQUEUE + schedule_delayed_work(&w1_gdev->w1_dwork, HZ * 2); +#endif return 0; } diff --git a/drivers/w1/w1.c b/drivers/w1/w1.c index d184889d0ae0..3b508b96ed48 100644 --- a/drivers/w1/w1.c +++ b/drivers/w1/w1.c @@ -53,13 +53,17 @@ int w1_max_slave_ttl = 2; static struct w1_master *master_dev = NULL; extern int w1_ds28el15_verifymac(struct w1_slave *sl); -extern int id, color; +extern int id, color, verification; #else static int w1_timeout = 10; int w1_max_slave_count = 10; int w1_max_slave_ttl = 10; #endif /* CONFIG_W1_SLAVE_DS28E02 */ +#ifdef CONFIG_SEC_H_PROJECT +int verified = -1; +#endif + module_param_named(timeout, w1_timeout, int, 0); module_param_named(max_slave_count, w1_max_slave_count, int, 0); module_param_named(slave_ttl, w1_max_slave_ttl, int, 0); @@ -513,23 +517,18 @@ static ssize_t w1_master_attribute_store_remove(struct device *dev, static ssize_t w1_master_attribute_show_verify_mac(struct device *dev, struct device_attribute *attr, char *buf) { - struct w1_master *md = dev_to_w1_master(dev); int result = -1; - struct list_head *ent, *n; - struct w1_slave *sl = NULL; - - mutex_lock(&md->mutex); - list_for_each_safe(ent, n, &md->slist) { - sl = list_entry(ent, struct w1_slave, w1_slave_entry); - } - - /* verify mac */ - if(sl) - result = w1_ds28el15_verifymac(sl); - else - pr_info("%s : sysfs call fail\n", __func__); - mutex_unlock(&md->mutex); +#ifdef CONFIG_SEC_H_PROJECT + result = verified; +#else +#ifdef CONFIG_W1_WORKQUEUE + cancel_delayed_work_sync(&w1_gdev->w1_dwork); + schedule_delayed_work(&w1_gdev->w1_dwork, 0); + msleep(10); +#endif + result = verification; +#endif return sprintf(buf, "%d\n", result); } @@ -908,10 +907,17 @@ void w1_slave_found(struct w1_master *dev, u64 rn) sl = w1_slave_search_device(dev, tmp); if (sl) { set_bit(W1_SLAVE_ACTIVE, (long *)&sl->flags); +#ifdef CONFIG_SEC_H_PROJECT + verified = 0; +#endif } else { printk(KERN_ERR "%s : no slave before, id=0x%x\n", __func__, tmp->family); - if (rn && tmp->crc == w1_calc_crc8((u8 *)&rn_le, 7)) + if (rn && tmp->crc == w1_calc_crc8((u8 *)&rn_le, 7)) { +#ifdef CONFIG_SEC_H_PROJECT + verified = 0; +#endif w1_attach_slave_device(dev, tmp); + } } atomic_dec(&dev->refcnt); @@ -958,6 +964,9 @@ void w1_search(struct w1_master *dev, u8 search_type, w1_slave_found_callback cb */ if (w1_reset_bus(dev)) { dev_dbg(&dev->dev, "No devices present on the wire.\n"); +#ifdef CONFIG_SEC_H_PROJECT + verified = -1; +#endif break; } @@ -1071,6 +1080,22 @@ int w1_process(void *data) return 0; } +#ifdef CONFIG_W1_WORKQUEUE +void w1_work(struct work_struct *work) +{ + struct w1_master *dev = + container_of(work, struct w1_master, w1_dwork.work); + + if (dev->search_count) { + mutex_lock(&dev->mutex); + w1_search_process(dev, W1_SEARCH); + mutex_unlock(&dev->mutex); + } + + schedule_delayed_work(&dev->w1_dwork, HZ * 2); +} +#endif + static int __init w1_init(void) { int retval; diff --git a/drivers/w1/w1.h b/drivers/w1/w1.h index 4d012ca3f32c..c900c2443d58 100644 --- a/drivers/w1/w1.h +++ b/drivers/w1/w1.h @@ -187,6 +187,11 @@ struct w1_master struct w1_bus_master *bus_master; u32 seq; + +#ifdef CONFIG_W1_WORKQUEUE + struct work_struct work; + struct delayed_work w1_dwork; +#endif }; int w1_create_master_attributes(struct w1_master *); @@ -243,6 +248,11 @@ extern struct mutex w1_mlock; extern int w1_process(void *); +#ifdef CONFIG_W1_WORKQUEUE +extern void w1_work(struct work_struct *work); +extern struct w1_master *w1_gdev; +#endif + #endif /* __KERNEL__ */ #endif /* __W1_H */ diff --git a/drivers/w1/w1_int.c b/drivers/w1/w1_int.c index 68288355727a..27cca98dea88 100644 --- a/drivers/w1/w1_int.c +++ b/drivers/w1/w1_int.c @@ -32,6 +32,11 @@ #include "w1_netlink.h" #include "w1_int.h" + +#ifdef CONFIG_W1_WORKQUEUE +struct w1_master *w1_gdev; +#endif + static int w1_search_count = -1; /* Default is continual scan */ module_param_named(search_count, w1_search_count, int, 0); @@ -151,7 +156,7 @@ int w1_add_master_device(struct w1_bus_master *master) return -ENOMEM; } - retval = w1_create_master_attributes(dev); + retval = w1_create_master_attributes(dev); if (retval) { mutex_unlock(&w1_mlock); goto err_out_free_dev; @@ -161,6 +166,13 @@ int w1_add_master_device(struct w1_bus_master *master) dev->initialized = 1; +#ifdef CONFIG_W1_WORKQUEUE + pr_info("%s : W1 workqueue will start\n", __func__); + INIT_DELAYED_WORK(&dev->w1_dwork, w1_work); + + schedule_delayed_work(&dev->w1_dwork, HZ / 20); +#else + pr_info("%s : W1 thread will start\n", __func__); dev->thread = kthread_run(&w1_process, dev, "%s", dev->name); if (IS_ERR(dev->thread)) { retval = PTR_ERR(dev->thread); @@ -170,7 +182,7 @@ int w1_add_master_device(struct w1_bus_master *master) mutex_unlock(&w1_mlock); goto err_out_rm_attr; } - +#endif list_add(&dev->w1_master_entry, &w1_masters); mutex_unlock(&w1_mlock); @@ -179,14 +191,20 @@ int w1_add_master_device(struct w1_bus_master *master) msg.type = W1_MASTER_ADD; w1_netlink_send(dev, &msg); +#ifdef CONFIG_W1_WORKQUEUE + w1_gdev = dev; +#endif + return 0; #if 0 /* Thread cleanup code, not required currently. */ err_out_kill_thread: kthread_stop(dev->thread); #endif +#ifndef CONFIG_W1_WORKQUEUE err_out_rm_attr: w1_destroy_master_attributes(dev); +#endif err_out_free_dev: w1_free_dev(dev); diff --git a/firmware/Makefile b/firmware/Makefile index 33ac4df19bf4..a4d4035808c3 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -154,10 +154,13 @@ fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_G) += tsp_synaptics/synaptics_ fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_G) += tsp_synaptics/synaptics_s5100_k_fhd.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_G) += tsp_synaptics/synaptics_s5100_k_a2_fhd.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI) += tsp_synaptics/synaptics_s5050_h.fw +fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI) += tsp_synaptics/synaptics_s5000.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI) += tsp_synaptics/synaptics_s5707.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI) += tsp_synaptics/synaptics_s5708.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_S5000) += tsp_synaptics/synaptics_b0_5_1.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_S5000) += tsp_synaptics/synaptics_b0_5_1_fac.fw +fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_S5000) += tsp_synaptics/synaptics_js_b0_5_1.fw +fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI_S5000) += tsp_synaptics/synaptics_js_b0_5_1_fac.fw fw-shipped-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI) += tsp_synaptics/synaptics_s5050_f.fw fw-shipped-$(CONFIG_TOUCHSCREEN_ATMEL_MXT1664S) += tsp_atmel/mXT1664S_v.fw @@ -179,11 +182,21 @@ fw-shipped-$(CONFIG_INPUT_WACOM) += epen/W9010_0208.bin fw-shipped-all := $(fw-shipped-y) $(fw-shipped-m) $(fw-shipped-) #for sensorhub -fw-shipped-$(CONFIG_SENSORS_SSP_ATMEL) += ssp.fw ssp_rev03.fw +fw-shipped-$(CONFIG_SENSORS_SSP_ATMEL) += ssp.fw ssp_rev03.fw ssp_fortius.fw ifndef CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE +ifdef CONFIG_SEC_PATEK_PROJECT +fw-shipped-$(CONFIG_SEC_PATEK_PROJECT) += ssp_stm_patek.fw ssp_stm_maxim_patek.fw +else fw-shipped-$(CONFIG_SENSORS_SSP_STM) += ssp_stm.fw ssp_stm_rvs.fw ssp_stm_88921.fw ssp_stm_w2014.fw +endif +ifdef CONFIG_MACH_JSGLTE_CHN_CMCC +fw-shipped-$(CONFIG_MACH_JSGLTE_CHN_CMCC) += ssp_stm32f_jsglte.fw +else fw-shipped-$(CONFIG_SENSORS_SSP_STM_32F) += ssp_stm32f.fw endif +fw-shipped-$(CONFIG_SEC_KSPORTS_PROJECT) += ssp_stm_tasman.fw +fw-shipped-$(CONFIG_SENSORS_SSP_STM_HESTIA) += ssp_stm_hestia.fw +endif fw-shipped-$(CONFIG_SENSORS_SSP_BOUNCE_FIRMWARE) += ssp_stm_bf.fw fw-shipped-$(CONFIG_SENSORS_SSP) += ssp_crashed.fw diff --git a/firmware/es325/audience-es325-fw-h-dcm.bin b/firmware/es325/audience-es325-fw-h-dcm.bin new file mode 100644 index 000000000000..47d51de14c06 Binary files /dev/null and b/firmware/es325/audience-es325-fw-h-dcm.bin differ diff --git a/firmware/es325/audience-es325-fw-h-js01.bin b/firmware/es325/audience-es325-fw-h-js01.bin new file mode 100644 index 000000000000..ca1413386339 Binary files /dev/null and b/firmware/es325/audience-es325-fw-h-js01.bin differ diff --git a/firmware/es325/audience-es325-fw-h-kdi.bin b/firmware/es325/audience-es325-fw-h-kdi.bin new file mode 100644 index 000000000000..b7a8ab46f717 Binary files /dev/null and b/firmware/es325/audience-es325-fw-h-kdi.bin differ diff --git a/firmware/es325/audience-es325-fw-h-tmo.bin b/firmware/es325/audience-es325-fw-h-tmo.bin index 326f1283ad86..85d092497be2 100755 Binary files a/firmware/es325/audience-es325-fw-h-tmo.bin and b/firmware/es325/audience-es325-fw-h-tmo.bin differ diff --git a/firmware/es325/audience-es325-fw-h-zh.bin b/firmware/es325/audience-es325-fw-h-zh.bin new file mode 100644 index 000000000000..2ed75c6e91a8 Binary files /dev/null and b/firmware/es325/audience-es325-fw-h-zh.bin differ diff --git a/firmware/es325/audience-es325-fw-kor-flte.bin b/firmware/es325/audience-es325-fw-kor-flte.bin index d9ef244574c1..774e196b54b0 100755 Binary files a/firmware/es325/audience-es325-fw-kor-flte.bin and b/firmware/es325/audience-es325-fw-kor-flte.bin differ diff --git a/firmware/es325/audience-es325-fw-kor-hlte.bin b/firmware/es325/audience-es325-fw-kor-hlte.bin index b0e29e359360..a11a695cd692 100755 Binary files a/firmware/es325/audience-es325-fw-kor-hlte.bin and b/firmware/es325/audience-es325-fw-kor-hlte.bin differ diff --git a/firmware/ssp_fortius.fw.ihex b/firmware/ssp_fortius.fw.ihex new file mode 100755 index 000000000000..a7e31f3ba3b6 --- /dev/null +++ b/firmware/ssp_fortius.fw.ihex @@ -0,0 +1,8647 @@ +:10000000000D02F1EC5601002000010000E7F901AB +:100010000D02F1EC56030000000100482D483FD7C7 +:10002000030000000080008001D4F0EBCD40E01818 +:100030009730565907C235E065414CEA150000ED8E +:10004000B70000C0C2301CAADCAAEC30CCAAFC0A63 +:100050009C2F8CE0A0B8F418962F8630CCE0A0B886 +:1000600075FE360005EB5601F45C86F9D6B010A992 +:100070004CAA8CAA96AAA7AABCAAC6E3CF90E080F5 +:100080000192208001912CD401E0A03267E06B3115 +:100090004CEA1B00002B7C198CB68C169CD802E015 +:1000A0006C314CEA1C0000E06B00D6B88B31EBB829 +:1000B0009B374BB8AB5EFCEBCD408018975807C020 +:1000C00031E3CF8080E0A0DC73300BC098EE0B07EB +:1000D0000AF80B00092849B28A2FFB5C5B584BCF0A +:1000E00075E3CF90800000EBCD40E0201D189630E6 +:1000F0000CBA8CE0A0DC5C189530075806C0313093 +:100100000CC1E8E0A0322A2C0C988CEDBC0005C094 +:1001100033301CC1580D8CEB6C0080006000001364 +:1001200002F1EC56040020000080010021000100D3 +:1001300000CB7A010D02F1EC560300000001000D26 +:100140009CEB6C0081301B1A9CE06A43DCEA1A00CD +:1001500000745A74BA746A5D1AC02030170E9C5C21 +:100160005C2FFDE3CD80E0D401201D1A9B300AB640 +:100170008AB69AB6AA580CC031300CC138198BBA5D +:100180008B199BBA9B19ACBAAC303A1A9B301CE065 +:100190006943DCEA190000722972B972895D19306D +:1001A0001C2FFDD8020000D401201D1A9C300BB872 +:1001B0008BB89BB8AB303A1A9B300CE06943DCEA51 +:1001C000190000722972B972895D19E06C314CEA2C +:1001D0001C00001B8BB88B1B9BB89B1BABB8AB2FB9 +:1001E000FDD802EBCD4080201D300BBA8B198CBAA4 +:1001F0008CE06C43DCEA1C000078476EBC782C5D18 +:100200001CC031300CC0D8301A1A9B305C6EB972E9 +:10021000895D19CF806EBC781C5D1CCF40301C2FCF +:10022000FDE3CD80800000EBCD408018975807C0DB +:1002300031E3CF8080E0A0DBCD0F8BF96B00820033 +:1002400076A3001302F1EC560400210000800100A7 +:1002500022000100005EB1010D02F1EC5603000026 +:10026000000100F93C0082580CC060322CE0A0353F +:100270002BE3CF9080E06B43DCEA1B0000765C1937 +:100280009A768C199C180A764C199C180A5C5AC0EC +:1002900041322CE0A03528E3CF908080008C608034 +:1002A000008C80D401E0A0317DE06B314CEA1B0072 +:1002B00000F91A0040A94AB68A2C0C988CB69C16F4 +:1002C0009CD802D63130073006300530043003E0C8 +:1002D000604345EA100000300CA08CE0A0DB8C18D5 +:1002E00092FB2C0007E0A06361C080E06C00C8C7EF +:1002F000CC3C8CA08C3C87C338CB5CC0213016FB37 +:100300002C0007E0A07CCC1891E5610064E51C009E +:100310005E580CC060FB2C0007E0A0C31B1893655F +:100320008C580CC060FB2C0007E0A063571895297F +:10033000A2848C580CC040E0A06F1618945C61C079 +:10034000915C64C0715C65C0515C66C0315C63C027 +:1003500070E06C00C4C49C3C473C4CA08C0E9C5C80 +:100360006CDC32001D5E001302F1EC56040022002A +:10037000008001002300010000E10A010D02F1EC00 +:10038000560300000001008000E94480011C388011 +:1003900001A8EC8000E97480010100EBCD4080E011 +:1003A000A0DB3C1897EF1C005E580CC030E0A06347 +:1003B000516F8C580CC030E0A0634C29A78E8C582C +:1003C0000CC030E0A06F02E0A0325EE0A0355458CF +:1003D0001CC061E0A03556300CE0A03543E3CF806F +:1003E00080D7038000E9C880010140800087FC803D +:1003F000008DEC80008DF880008DD8E06B4342EAE0 +:100400001B0000F72C00005EFC0000E06B4343EA99 +:100410001B0000E04C00CFC071178AF4091518C00A +:1004200030B69AC038300AB69AB68C5EFD0000E04D +:100430006C4343EA1C0000198C5EFCD401E0A00B65 +:10044000EDCADFD80A0000EBCD40C0E067314CEACE +:100450001700003006EF6600FCE0A00793C071AE05 +:1004600096E06C00C4AE8CEF6600FCEF6600FDEF1A +:100470006600FEEF660100EF6600FFEF6601010E09 +:100480009CE3CD80C0000000E65C001302F1EC5656 +:1004900004002300008001002400010000F5220177 +:1004A0000D02F1EC56030000000100E06C314CEA53 +:1004B0001C0000F93B00FD580B5E1DF93B01005884 +:1004C0000B5E1DF93B00FF580B5E1DF93B01015807 +:1004D0000B5E1DF93C00FE580C5E1D5EFF0000EB3C +:1004E000CD40F8201D189616975806C040EE0C1502 +:1004F00018C041300CE08F07533005C138E60C00BE +:100500000B17CBE93A00FCE80A0B0BE93B00FC2F88 +:10051000FBE96B00FC2FFC5C6C581CCF152FF55CC5 +:10052000650E35E084073BEA0310680C03E0643194 +:100530004CEA140000078CE93B00FCE80B0B0CE9CB +:100540003C00FC2FFCE96C00FC078C585CF9BC02F9 +:1005500005FE0C001C984C180F000E05F40CBE058F +:10056000B60518FF9C07ACE93B00FCE80B0B0CE957 +:100570003C00FC2FFCE96C00FC07AC589CF9BC0269 +:1005800009FE0C001C984C180F001600960116016D +:10059000960202038A047A03B60462FF6C862CA9D1 +:1005A0004CE93B00FCE80B0B0CE93C002547001331 +:1005B00002F1EC5604002400008001002500010037 +:1005C000009F9A010D02F1EC5603000000010000AB +:1005D000FC2FFCE96C00FC862CE93B00FCE80B0BD3 +:1005E0000CE93C00FC2FFCE96C00FC863CA94CE9C2 +:1005F0003B00FCE80B0B0CE93C00FC2FFCE96C0019 +:10060000FC863CE93B00FCE80B0B0CE93C00FC2FB2 +:10061000FCE96C00FC864CA94CE93B00FCE80B0BA8 +:100620000CE93C00FC2FFCE96C00FC864CE93B002B +:10063000FCE80B0B0CE93C00FC2FFCE96C00FCC84F +:100640001B862CA94CE93B00FCE80B0B0CE93C0099 +:10065000FC2FFCE96C00FC862CE93B00FCE80B0B52 +:100660000CE93C00FC2FFCE96C00FC863CA94CE941 +:100670003B00FCE80B0B0CE93C00FC2FFCE96C0098 +:10068000FC863CE93B00FCE80B0B0CE93C00FC2F32 +:10069000FCE96C00FC864CA94CE93B00FCE80B0B28 +:1006A0000CE93C00FC2FFCE96C00FC864CE93B00AB +:1006B000FCE80B0B0CE93C00FC2FFCE96C00FCC4D3 +:1006C0001B862CA94CE93B00FCE80B0B0CE93C0019 +:1006D0007608001302F1EC560400250000800100AA +:1006E00026000100000A51010D02F1EC5603000042 +:1006F00000010000FC2FFCE96C00FC862CE93B00AB +:10070000FCE80B0B0CE93C00FC2FFCE96C00FC86C0 +:100710003CA94CE93B00FCE80B0B0CE93C00FC2F2E +:10072000FCE96C00FC863CE93B00FCE80B0B0CE9A7 +:100730003C00FC2FFCE96C00FC864CA94CE93B001A +:10074000FCE80B0B0CE93C00FC2FFCE96C00FC8680 +:100750004CE93B00FCE80B0B0CE93C00FC2FFCE9EE +:100760006C00FCC01B661CB14CE93B00FCE80B0BA9 +:100770000CE93C00FC2FFCE96C00FC661CA94CE970 +:100780003B00FCE80B0B0CE93C00FC2FFCE96C0087 +:10079000FC661CE93B00FCE80B0B0CE93C00FC2F61 +:1007A000FCE96C00FC864CA94CE93B00FCE80B0B17 +:1007B0000CE93C00FC2FFCE96C00FC864CE93B009A +:1007C000FCE80B0B0CE93C00FC2FFCE96C00FCCCBA +:1007D000BA862CA94CE93B00FCE80B0B0CE93C0069 +:1007E000FC2FFCE96C00FC862CE93B00FCE80B0BC1 +:1007F0000CE93C00BEC9001302F1EC5604002600CF +:10080000008001002700010000B5EA010D02F1ECB3 +:100810005603000000010000FC2FFCE96C00FC8680 +:100820003CA94CE93B00FCE80B0B0CE93C00FC2F1D +:10083000FCE96C00FC863CE93B00FCE80B0B0CE996 +:100840003C00FC2FFCE96C00FC864CA94CE93B0009 +:10085000FCE80B0B0CE93C00FC2FFCE96C00FC866F +:100860004CE93B00FCE80B0B0CE93C00FC2FFCE9DD +:100870006C00FC865CA94CE93B00FCE80B0B0CE926 +:100880003C00FC2FFCE96C00FC865CE93B00FCE8CA +:100890000B0B0CE93C00FC2FFCE96C00FC866CA9FE +:1008A0004CE93B00FCE80B0B0CE93C00FC2FFCE99D +:1008B0006C00FC866CE93B00FCE80B0B0CE93C008F +:1008C000FC2FFCE96C00FC867CA94CE93B00FCE8B1 +:1008D0000B0B0CE93C00FC2FFCE96C00FC867CE96E +:1008E0003B00FCE80B0B0CE93C00FC2FFCE96C0026 +:1008F000FCE70C0010A94CE93B00FCE80B0B0CE9F1 +:100900003C00FC2FFCE96C00FCE70C0010E93B000C +:10091000FCE80B0B0CE93C007637001302F1EC56B7 +:1009200004002700008001002800010000220101CE +:100930000D02F1EC5603000000010000FC2FFCE961 +:100940006C00FCE70C0012A94CE93B00FCE80B0B27 +:100950000CE93C00FC2FFCE96C00FCE70C0012E900 +:100960003B00FCE80B0B0CE93C00FC2FFCE96C00A5 +:10097000FCE70C0014A94CE93B00FCE80B0B0CE96C +:100980003C00FC2FFCE96C00FC2EC3860CE93B000C +:10099000FCE80B0B0CE93C00FC2FFCE96C00FCC0F4 +:1009A0007A07CCE93B00FCE80B0B0CE93C00FC2F80 +:1009B000FCE96C00FC07DCE93B00FCE80B0B0CE9F4 +:1009C0003C00FC2FFCE96C00FCFE9FFDF2862CA98C +:1009D0004CE93B00FCE80B0B0CE93C00FC2FFCE96C +:1009E0006C00FC862CE93B00FCE80B0B0CE93C009E +:1009F000FC2FFCE96C00FC863CA94CE93B00FCE8C0 +:100A00000B0B0CE93C00FC2FFCE96C00FC863CE97C +:100A10003B00FCE80B0B0CE93C00FC2FFCE96C00F4 +:100A2000FC864CA94CE93B00FCE80B0B0CE93C00B4 +:100A3000FC2FFCE96C00FC864CE93B001E1E0013F9 +:100A400002F1EC560400280000800100290001009A +:100A50000062BA010D02F1EC560300000001000033 +:100A6000FCE80B0B0CE93C00FC2FFCE96C00FC865D +:100A70005CA94CE93B00FCE80B0B0CE93C00FC2FAB +:100A8000FCE96C00FC865CE93B00FCE80B0B0CE924 +:100A90003C00FC2FFCE96C00FCFE9FFD9C07CCE9B0 +:100AA0003B00FCE80B0B0CE93C00FC2FFCE96C0064 +:100AB000FCFE9FFD90862CA94CE93B00FCE80B0B4B +:100AC0000CE93C00FC2FFCE96C00FC862CE93B00A7 +:100AD000FCE80B0B0CE93C00FC2FFCE96C00FC86ED +:100AE0003CA94CE93B00FCE80B0B0CE93C00FC2F5B +:100AF000FCE96C00FC863CE93B00FCE80B0B0CE9D4 +:100B00003C00FC2FFCE96C00FC2F83078CE93B00C8 +:100B1000FCE80B0B0CE93C00FC2FFCE96C00FCFE34 +:100B20009FFD59E93C00FC080C300BF96BFFFF07F7 +:100B3000ABB88BE93C00FC2FFCE96C00FC07AC2057 +:100B4000BCFE93FD33202CC043C0F0FE9FFD2E075A +:100B5000CCE93B00FCE80B0B0CE93C00FC2FFC0053 +:100B6000776B001302F1EC560400290000800100AD +:100B70002A00010000F771010D02F1EC560300009C +:100B8000000100E96C00FCFE9FFD37661CB98CE992 +:100B90003B00FCE80B0B0CE93C00FC2FFCE96C0073 +:100BA000FC661CB18CE93B00FCE80B0B0CE93C003B +:100BB000FC2FFCE96C00FC661CA98CE93B00FCE8FE +:100BC0000B0B0CE93C00FC2FFCE96C00FC661CE9FB +:100BD0003B00FCE80B0B0CE93C00FC2FFCE96C0033 +:100BE000FCFE9FFD0A07ACE93B00FCE80B0B0CE99F +:100BF0003C00FC2FFCE96C00FC07AC069B2FCBE90A +:100C00003A00FC080A1498580CC0501739201C10E0 +:100C1000C9CFD107ACE93B00FC180BE96B00FCFE27 +:100C20009FFCEB079C581CC050079C583CE081027D +:100C3000DE079C581CC0C1301CE93B00FCE80B0BD4 +:100C40000CE93C00FC2FFCE96C00FCC0E8079C5858 +:100C50003CC0B1303CE93B00FCE80B0B0CE93C002C +:100C6000FC2FFCE96C00FC07AC202C5C5C597CF987 +:100C7000BC0202FE0C001C984C180F04720030F9E4 +:100C8000520472001795001302F1EC5604002A007A +:100C9000008001002B0001000048CA010D02F1ECA8 +:100CA000560300000001000472047204720472040E +:100CB000720472049E0472047204720472F952F98E +:100CC00052F952F952F952F9520472047207ACE91E +:100CD0003B00FCE80B0B0CE93C00FC2FFCE96C0032 +:100CE000FC079C583CC13107CCE93B00FCE80B0BEE +:100CF0000CE93C00FC2FFCE96C00FC07CC500CE03C +:100D00006CF0F4EA1C8001E0A02E0A07DCE93B004D +:100D1000FCE80B0B0CE93C00FC2FFCE96C00FCE947 +:100D20003C00FC080C07DBEDBB0007E083009BE701 +:100D30003B0008B88BE93C00FC2FFCE96C00FCE7A9 +:100D40003C0009E93B00FCE80B0B0CE93C00FC2FE4 +:100D5000FCE96C00FC300CE93B00FCE80B0B0CE9F7 +:100D60003C00FC2FFCE96C00FCE73C000AE93B007E +:100D7000FCE80B0B0CE93C00FC2FFCE96C00FCE7E9 +:100D80001C0012A94CE93B00FCE80B0B0CE93C00F1 +:100D9000FC2FFCE96C00FCE71C0012E93B00FCE8BE +:100DA0000B0B0CE93C00FC0081A2001302F1EC5695 +:100DB00004002B00008001002C000100005CE20117 +:100DC0000D02F1EC560300000001002FFCE96C005D +:100DD000FCE73C0014E93B00FCE80B0B0CE93C0091 +:100DE000FC2FFCE96C00FCE73C0015E93B00FCE84B +:100DF0000B0B0CE93C00FC2FFCE96C00FCE73C0011 +:100E000016E93B00FCE80B0B0CE93C00FC2FFCE96D +:100E10006C00FCE73C0017E93B00FCE80B0B0CE91D +:100E20003C00FC2FFCE96C00FCE73C000BE93B00BC +:100E3000FCE80B0B0CE93C00FC2FFCE96C00FCE728 +:100E40003C000CE93B00FCE80B0B0CE93C00FC2FE0 +:100E5000FCE96C00FCE73C000DE93B00FCE80B0BF7 +:100E60000CE93C00FC2FFCE96C00FC2F23078CE90B +:100E70003B00FCE80B0B0CE93C00FC2FFCE96C0090 +:100E8000FCFE9FFBDE662BB18BB88BE93C00FC2F90 +:100E9000FCE96C00FC662CA98CE93B00FCE80B0B20 +:100EA0000CE93C00FC2FFCE96C00FC662CE93B00E3 +:100EB000FCE80B0B0CE93C00FC2FFCE96C00FC6629 +:100EC0003CB18CE93B00FCE80B0B0C00B322001397 +:100ED00002F1EC5604002C00008001002D000100FE +:100EE00000365A010D02F1EC56030000000100E942 +:100EF0003C00FC2FFCE96C00FC663CA98CE93B0043 +:100F0000FCE80B0B0CE93C00FC2FFCE96C00FC66D8 +:100F10003CE93B00FCE80B0B0CE93C00FC2FFCE936 +:100F20006C00FC664CB18CE93B00FCE80B0B0CE957 +:100F30003C00FC2FFCE96C00FC664CA98CE93B00F2 +:100F4000FCE80B0B0CE93C00FC2FFCE96C00FC6698 +:100F50004CE93B00FCE80B0B0CE93C00FC2FFCE9E6 +:100F60006C00FC665CB18CE93B00FCE80B0B0CE907 +:100F70003C00FC2FFCE96C00FC665CA98CE93B00A2 +:100F8000FCE80B0B0CE93C00FC2FFCE96C00FC6658 +:100F90005CE93B00FCE80B0B0CE93C00FC2FFCE996 +:100FA0006C00FC66BCB18CE93B00FCE80B0B0CE967 +:100FB0003C00FC2FFCE96C00FC66BCA98CE93B0002 +:100FC000FCE80B0B0CE93C00FC2FFCE96C00FC6618 +:100FD000BCE93B00FCE80B0B0CE93C00FC2FFCE9F6 +:100FE0006C00FCE73C0030E93B00FCE80B0B0C001C +:100FF000EA5A001302F1EC5604002D0000800100B3 +:101000002E00010000A391010D02F1EC5603000037 +:10101000000100E93C00FC2FFCE96C00FCE73C000F +:1010200031E93B00FCE80B0B0CE93C00FC2FFCE930 +:101030006C00FCE71C0032A94CE93B00FCE80B0B00 +:101040000CE93C00FC2FFCE96C00FCE71C0032E9D9 +:101050003B00FCE80B0B0CE93C00FC2FFCE96C00AE +:10106000FCE73C0034E93B00FCE80B0B0CE93C00DE +:10107000FC2FFCE96C00FC666CB18CE93B00FCE8E1 +:101080000B0B0CE93C00FC2FFCE96C00FC666CA926 +:101090008CE93B00FCE80B0B0CE93C00FC2FFCE965 +:1010A0006C00FC666CE93B00FCE80B0B0CE93C00B7 +:1010B000FC2FFCE96C00FC667CB18CE93B00FCE891 +:1010C0000B0B0CE93C00FC2FFCE96C00FC667CA9D6 +:1010D0008CE93B00FCE80B0B0CE93C00FC2FFCE925 +:1010E0006C00FC667CE93B00FCE80B0B0CE93C0067 +:1010F000FC2FFCE96C00FC668CB18CE93B00FCE841 +:101100000B0B0CE93C00FC2FFCE96C00FC668CA985 +:101110008CE93B009971001302F1EC5604002E009B +:10112000008001002F000100001C2A010D02F1ECDB +:101130005603000000010000FCE80B0B0CE93C002A +:10114000FC2FFCE96C00FC668CE93B00FCE80B0B17 +:101150000CE93C00FC2FFCE96C00FC669CB18CE9BE +:101160003B00FCE80B0B0CE93C00FC2FFCE96C009D +:10117000FC669CA98CE93B00FCE80B0B0CE93C00ED +:10118000FC2FFCE96C00FC669CE93B00FCE80B0BC7 +:101190000CE93C00FC2FFCE96C00FCFE9FFA870781 +:1011A000ACE93B00FCE80B0B0CE93C00FC2FFCE934 +:1011B0006C00FC07CCE93B00FCE80B0B0CE93C00A5 +:1011C000FC2FFCE96C00FCFE9FFA7107ACE93B00C8 +:1011D000FCE80B0B0CE93C00FC2FFCE96C00FC0765 +:1011E000CCE93B00FCE80B0B0CE93C00FC2FFCE9D4 +:1011F0006C00FC07DCE93B00FCE80B0B0CE93C0055 +:10120000FC2FFCE96C00FC07ECE93B00FCE80B0B55 +:101210000CE93C00FC2FFCE96C00FC864CA94CE975 +:101220003B00FCE80B0B0CE93C00FC2FFCE96C00DC +:10123000FC864CE93B00FC00578F001302F1EC5692 +:1012400004002F000080010030000100000C42016A +:101250000D02F1EC56030000000100E80B0B0CE955 +:101260003C00FC2FFCE96C00FC865CA94CE93B00CF +:10127000FCE80B0B0CE93C00FC2FFCE96C00FC8645 +:101280005CE93B00FCE80B0B0CE93C00FC2FFCE9A3 +:101290006C00FC866CA94CE93B00FCE80B0B0CE9EC +:1012A0003C00FC2FFCE96C00FC866CE93B00FCE890 +:1012B0000B0B0CE93C00FC2FFCE96C00FCFE9FFAD8 +:1012C00008079C582CC4E1302CE93B00FCE80B0BD0 +:1012D0000CE93C00FC2FFCE96C00FC07AC584CFE10 +:1012E00091F9E207ACE93B00FCE80B0B0CE93C0090 +:1012F000FC2FFCE96C00FC07CCE93B00FCE80B0B85 +:101300000CE93C00FC2FFCE96C00FC07DCE93B002D +:10131000FCE80B0B0CE93C00FC2FFCE96C00FC0723 +:10132000ECE93B00FCE80B0B0CE93C00FC2FFCE972 +:101330006C00FC07FCE93B00FCE80B0B0CE93C00F3 +:10134000FC2FFCE96C00FC2F83078CE93B00FCE8D8 +:101350000B0B0CE93C00FC2FFCE96C00F7CC0013F4 +:1013600002F1EC5604003000008001003100010061 +:101370000018FF010D02F1EC56030000000100000F +:10138000FCFE9FF9B8079C583CFE91F99F303CE960 +:101390003B00FCE80B0B0CE93C00FC2FFCE96C006B +:1013A000FC07AC589CFE91F99107ACE93B00FCE8C6 +:1013B0000B0B0CE93C00FC2FFCE96C00FC07CCE9B2 +:1013C0003B00FCE80B0B0CE93C00FC2FFCE96C003B +:1013D000FC07DCE93B00FCE80B0B0CE93C00FC2FB4 +:1013E000FCE96C00FCFE9FF986300C07ABE93A0083 +:1013F000FCE80A0B0BE93B00FC2FFBE96B00FC0748 +:10140000AB58ABF9BB020AFE0B001B964B160F0044 +:1014100018003C0062008600AA00CE00F20116010E +:101420003CF2DEF2BA5C6C581CFE94F964E60C00E7 +:101430000B17CBE93A00FCE80A0B0BE93B00FC2F49 +:10144000FBE96B00FC2FFCCEFB5C6CE04C0024FE47 +:1014500094F951E60C000B17CBE93A00FCE80A0BB3 +:101460000BE93B00FC2FFBE96B00FC2FFCCEEB5C97 +:101470006C596CFE94F93FE60C000B17CBE93A006F +:10148000EE44001302F1EC5604003100008001002C +:1014900032000100008D34010D02F1EC5603000012 +:1014A00000010000FCE80A0B0BE93B00FC2FFBE904 +:1014B0006B00FC2FFCCEFB5C6C581CFE94F92DE6F7 +:1014C0000C000B17CBE93A00FCE80A0B0BE93B00D8 +:1014D000FC2FFBE96B00FC2FFCCEFB5C6C585CFE28 +:1014E00094F91BE60C000B17CBE93A00FCE80A0B59 +:1014F0000BE93B00FC2FFBE96B00FC2FFCCEFB5CF7 +:101500006C581CFE94F909E60C000B17CBE93A0065 +:10151000FCE80A0B0BE93B00FC2FFBE96B00FC2FFE +:10152000FCCEFB5C6C581CFE94F8F7E60C000B1725 +:10153000CBE93A00FCE80A0B0BE93B00FC2FFBE986 +:101540006B00FC2FFCCEFB5C6CE04C0040FE94F882 +:10155000E4E60C000B17CBE93A00FCE80A0B0BE9B8 +:101560003B00FC2FFBE96B00FC2FFCCEEB5C6C58C6 +:101570004CFE94F8D2E60C000B17CBE93A00FCE8DD +:101580000A0B0BE93B00FC2FFBE96B00FC2FFCCEA8 +:10159000FB301C2FFDE3CD80F80000EBCD40E0E0F8 +:1015A00067314C0006DB001302F1EC5604003200F8 +:1015B000008001003300010000328F010D02F1ECC8 +:1015C00056030000000100EA170000302CEF6C0009 +:1015D000FCE06633E4EA160000EF3B00FD0C9C29BA +:1015E0008CFEB0F88D1895EF3B00FE0C9CFE3CF98C +:1015F00080FEB0F8851845EF3B01000C9CFEB0F86A +:101600007F1845EF3B00FF0C9CFE3CF710FEB0F846 +:10161000771845EF3B0101FE36F6A80C9CFEB0F8AA +:101620006F18455815C0F1EF3C00FCFE3CFF02EF7F +:101630006C00FCEF3C00FCAE9CE06C00C4AE8CE3A4 +:10164000CF90E0300CEF6C00FCE3CF80E00000E0D6 +:101650006C414CEA1C0000E06B00C8B88B311BB831 +:101660009B5EFCD401FEB0F639E06C414CEA1C00F4 +:1016700000D802300CE06B414CEA1B0000F75C0123 +:10168000F45EFFEBCD4080201D1A9B300AB68AB66F +:101690009AB6AA590CC065CE6F1897CECF0E9CC1D2 +:1016A000C8581CC1911A9CE0A0D23EE06C314CEAB3 +:1016B0001C00001B8BB8DB1B9BB8EB1BABB8FB30D3 +:1016C0004BF96B00FC300A00642C001302F1EC565D +:1016D0000400330000800100340001000026A7014F +:1016E0000D02F1EC56030000000100B88AB89B30EF +:1016F00019B8A9B8BAB8CBC028300C2FFDE3CD80FB +:1017000080D7038001D85CD431217D18971690587A +:1017100007C040E00C1518C041300CE08F0389E091 +:10172000A02884516C30033006FB560054FB660041 +:101730002D30A5FB65002EFB660030FB660031E016 +:101740006133E0EA110000A2863004C068A296303E +:1017500013038C2FFCA28CE0041800E08203675C6A +:1017600054EE04070CE0623250EA120000038BF6DC +:101770000910280409B28C2FF4E04C00A1C4915C3C +:1017800054EE04070CB29C2FF45C54EE04070CB228 +:10179000CC2FF45C54EE04070CB2DC2FF4139C58ED +:1017A000BCC0B51A9C328A130B18AB204ACFD1E0CB +:1017B000A0B6781893CCEB13CB5C6B139C5C6CE0FD +:1017C000A073F61893038CF80C10281802059C5887 +:1017D0005CCC01300CFB6C002C311CFB6C002DFA36 +:1017E000CCFFD02FC2324A050B18AB00AD970013C7 +:1017F00002F1EC56040034000080010035000100C5 +:10180000004C1F010D02F1EC560300000001002006 +:101810004ACFD1FB65002EFB560054FACCFFD41AF8 +:101820009B32C9190A16AA2049CFD1E0A09FF0180F +:1018300093CA2BE04C00A2C4A15C54EE04070CB286 +:101840009C2FF45C54EE04070CB2CC2FF45C54EEE5 +:1018500004070CB2DC2FF4139C58BCC0B51A9C32A0 +:101860008A130B18AB204ACFD1E0A0B6A31893C8B7 +:101870003B13CB5C6B139C5C6CE0A073B3189303BD +:101880008CF80C10281802059C585CFE91FF7530EE +:101890001CFB6C002C311CFB6C002DFACCFFD02FF4 +:1018A000C2324A050B18AB204ACFD1FB65002EFB94 +:1018B000560054FACCFFD41A9B32C9190A16AA2032 +:1018C00049CFD1E0A09FA41893C56BE04C00A4C100 +:1018D000D15C54EE04070CB29C2FF45C54EE040768 +:1018E0000CB2CC2FF45C54EE04070CB2DC2FF413D2 +:1018F0009C58BCC0353013C3FB13CB5C6B139C5C92 +:101900006CE0A073771893C37BE04C00A8C2810001 +:10191000BFAD001302F1EC56040035000080010059 +:101920003600010000D9D4010D02F1EC560300008D +:101930000001005C54EE04070CB29C2FF45C54EEE2 +:1019400004070CB2CC2FF45C54EE04070CB2DC2F6D +:10195000F4139C500CE06CF208EA1C8001E0A02813 +:10196000A5038CF80C1028180205CB059C5C6CE0D4 +:10197000A0610A1893F7D3C008416CE0A02B9EC069 +:10198000DBE04C00B8C2F15C54EE04000C198CB2E0 +:101990009C2FF45C54EE04000B583C178CC141F3AF +:1019A0006C00082FF4581CC0D15C54EE04000B17D7 +:1019B0008C2F79B28C2FF45C6CE0A09F213013CE79 +:1019C000DA3003CEBAB2CC2FF45C54EE04070CB27A +:1019D000DC2FF413CB5C6B139C5C6CE0A05AB21848 +:1019E00093CDCAE04C00C1E08100D05C54EE04000D +:1019F0000C198CB29C2FF458ECC22130ECB2CC5CA8 +:101A000054EE04070CF36C00082FF45C54EE04074A +:101A10000CF36C00092FF45C54EE04070AF36A001F +:101A20000A2FF45C6AF33B00095C6B2F89138C5C12 +:101A30006CE0A000D4F2001302F1EC560400360072 +:101A4000008001003700010000666F010D02F1EC1B +:101A500056030000000100D0BBE0A09EDD3013CA99 +:101A6000FA592CC281312CB2CC5C54EE04070CF331 +:101A70006C00082FF4306CFB6C002C139CFB6C008A +:101A80002DFACCFFD02FC9324A130B18AB204ACF06 +:101A9000D130BCFB6C002EFB560054FACCFFD41A9C +:101AA0009B32C9190A16AA2049CFD1E0A09ED418AA +:101AB00093C86A593CC281313CB2CC5C54EE0407F5 +:101AC0000CF36C00092FF4306CFB6C002C139CFBA6 +:101AD0006C002DFACCFFD02FC9324A130B18AB2063 +:101AE0004ACFD130BCFB6C002EFB560054FACCFF21 +:101AF000D41A9B32C9190A16AA2049CFD1E0A09E58 +:101B0000AB1893C5DA594CC281314CB2CC5C54EE5F +:101B100004070CF36C000A2FF4306CFB6C002C13E0 +:101B20009CFB6C002DFACCFFD02FC9324A130B1846 +:101B3000AB204ACFD130BCFB6C002EFB560054FAD0 +:101B4000CCFFD41A9B32C9190A16AA2049CFD1E07A +:101B5000A09E821893C34A004806001302F1EC5677 +:101B600004003700008001003800010000F184010A +:101B70000D02F1EC56030000000100595CFE91FFDC +:101B800046315CB2CC5C54EE04070CF36C00082FB9 +:101B9000F4306CFB6C002C139CFB6C002DFACCFF1A +:101BA000D02FC9324A130B18AB204ACFD130BCFB1F +:101BB0006C002EFB560054FACCFFD41A9B32C91984 +:101BC0000A16AA2049CFD1E0A09E581893C0AA13A4 +:101BD0008CE04C00B1E08101465C54EE04000C192D +:101BE0008CB29C2FF45C6CE0A054D0581C038CF891 +:101BF0000C1028E08100E1040C199B583BC1415CAA +:101C000054EE04070BF96B00082FF45C54EE040744 +:101C10000BF96B00092FF45C54EE04070B2F6CB822 +:101C20008B2FF4CD48589BC2915C54EE04070BA94E +:101C30006B2FF45C54EE04070A140B2FF4B84B5CC2 +:101C400054EE04070BA96B2FF45C54EE04070A143E +:101C50000B2FF4B85B5C54EE04070BA96B2FF45CFC +:101C600054EE04070A140B2FF4B86B5C54EE04070F +:101C70000B2F2CB88B2FF4CAA8581B00E8C70013F1 +:101C800002F1EC5604003800008001003900010028 +:101C900000B13F010D02F1EC56030000000100C746 +:101CA000515C54EE04000B178AF96A00082FF45CAB +:101CB00054EE04000B5C5A178BC1F1F96B00092F2D +:101CC000F45C54EE04070BF96B000A2FF45C54EE3D +:101CD00004070BF96B000B2FF4300B5C6B58DBE047 +:101CE0008400885C54EE04070AF80B00092E69B2E0 +:101CF0008A2FF42FFBCF3BB96B2FF45C54EE040713 +:101D00000AB16A140B2FF45C54EE04070AA96A1492 +:101D10000B2FF45C54EE04070A140B2FF4993B5C70 +:101D200054EE04070BB96B2FF45C54EE04070AB1B0 +:101D30006A140B2FF45C54EE04070AA96A140B2FE3 +:101D4000F45C54EE04070A140B2FF4994B5C54EE28 +:101D500004070BB16B2FF45C54EE04070AA96A1454 +:101D60000B2FF45C54EE04070A140B2FF4995B5C00 +:101D700054EE04070BF96B00182FF45C54EE0407C3 +:101D80000B2E7CB88B2FF4C34858CBC1315C54EE7A +:101D900004070BF96B00082FF45C54EE04070B00EA +:101DA0001ED1001302F1EC5604003900008001003E +:101DB0003A0001000024F4010D02F1EC560300008A +:101DC000000100A96B2FF45C54EE04070A140B2FDA +:101DD000F4B85BC20858DBC1E15C54EE04070BF9B0 +:101DE0006B00082FF45C54EE04070BA96B2FF45C16 +:101DF00054EE04070A140B2FF4B85BC0C8040C5C43 +:101E000054EE04070BB8CB2FF45C54EE04070BB868 +:101E1000DB2FF4038CF80C10281802049C199B5833 +:101E20005BC200300AFB6A002CFB6B002DFACBFF73 +:101E3000D02FCC3249190A16AA2049CFD130BCFB89 +:101E40006C002EFB560054FACCFFD41A9B32C919F1 +:101E50000A16AA2049CFD1E0A09D341893FE9FFC1A +:101E6000E6E0A0254FE0A02919581CC1A1300CFBC9 +:101E70006C002C305CFB6C002DFB660030FB6600B8 +:101E80003130BCFB6C002EFB560054FACCFFD41A48 +:101E90009B32C9190A16AA2049CFD1E0A09D123061 +:101EA0001CA29C3013FE9FFCC2E04C00B2FE91FCD1 +:101EB000BE5C54EE04070CB29C2FF45C54EE040795 +:101EC0000CB2CC000EE5001302F1EC5604003A000F +:101ED000008001003B000100009B4F010D02F1EC6E +:101EE000560300000001002FF45C54EE04070CB20E +:101EF000DC2FF4139C585CFE90FCA9301BFB6B009C +:101F00002CFB6C002D30BCFB6C002EFACCFFD41ADD +:101F10009B32C9190A16AA2049CFD1E0A09CE41827 +:101F200093FE9FFC96069C5C5C2E9DD832D7038066 +:101F300001A1B480011CC08001A2A080011CD0803E +:101F4000011CE0800087748000F85080008D848040 +:101F50000174C88000EC0C8001D874800174BC80CE +:101F600000E20C80008CD4800174FCE06C33E0EA69 +:101F70001C0000199C5EFCD421E0A0CEFF1897E065 +:101F8000A024D2189630053004EF2C0064580CC001 +:101F9000E0E06B314CEA1B0000FE3BFF03E06C33DA +:101FA000E4EA1C0000298CE0A09A34EF1C005E5883 +:101FB0000CC0F0E06B314CEA1B0000FE3BFF02E07E +:101FC0006C33E4EA1C0000FE3CF980E0A0B6D6EDDC +:101FD0003C0056581CC235E06C314CEA1C0000E055 +:101FE0006A33E4EA1A000000694A001302F1EC5671 +:101FF00004003B00008001003C000100008F6701ED +:102000000D02F1EC56030000000100F93B0100F65F +:102010000B1068140B303AB68AED3A0056B6AAEDAA +:102020003A00562A962FCB1698580AC0500D3920E0 +:102030001A10C9CFD1301BF96B0100C0282FF45CF6 +:102040006458A4C0A4E06C4348EA1C0000F80406ED +:102050000B581BCF5130155C655815C0F5E06B313E +:102060004CEA1B0000FE3BFF01E06C33E4EA1C007D +:1020700000FE3CF710E0A062816F8C580CC0F0E0CD +:102080006B314CEA1B0000FE3BFEFFE06C33E4EAE0 +:102090001C0000FE3CF6A8E0A0574ED82AD70380CB +:1020A00001D9908000853C800170288001A9908032 +:1020B00001016C8000EB28D401E06CF1A0EA1C80E7 +:1020C00001E0A0255FE06C00D0EA1C0000300BB8F6 +:1020D0008BB8BB301AB8CAB8DAB8EBB8FBB89BE01B +:1020E000A024342C0C988CDA0A0000D401E06CF1A6 +:1020F00098EA1C8001E0A02545E0A024272C0C983C +:102100008CEDBC0005C023DA0AE06C00C7E60013C2 +:1021100002F1EC5604003C00008001003D0001008B +:1021200000E5DF010D02F1EC5603000000010000A4 +:10213000D0EA1C0000300BB88BB8BB301AB8CAB854 +:10214000DAB8EBB8FB19AA581ACF11B8AB30EA309D +:102150008B301CE0A09B2C583CCE91303CD802EB3D +:10216000CD40C0E06C43DCEA1C0000784B179B7844 +:102170005C19961606E0A023FB2C0C988CEDBC0095 +:1021800005C033E3CF90C0E06700D0EA1700000F2E +:10219000BC580CC051301CAEBCE3CF90C00FAC5C3F +:1021A00056C090581CCEF1301CAECC300CAEACE317 +:1021B000CF90C05C5CC1610FCC581CC08130EA304C +:1021C0008B301CE0A09AF4300CAECC30EA308B306F +:1021D0000CE0A09AED582CCD60301CAEACE3CF9053 +:1021E000C02FF7EF2C00005C5C187CC050202CC086 +:1021F00060E3CF90C0C0BCE3CF90C0C44CE3CF90AD +:10220000C0D7038000853C8001737CEBCD40E0208B +:102210002DE06C2C44EA1C0000780C2A8C9807E016 +:102220006500D0EA1500000BDC581CC0A1E0470097 +:1022300054B2001302F1EC5604003D00008001008E +:102240003E000100007014010D02F1EC5603000085 +:10225000000100002EC074300CAADC301CCBBC3056 +:102260000CCA9C8A460C37C1B5EB2C00072FFCAA80 +:10227000FCEB2C0007582CC155302CAA9C300CAA22 +:10228000FCBB17E06CF154EA1C8001E0A0249E33F3 +:10229000CCAA4C301CC9FC301CC8DCC038300CAA9D +:1022A000FC2FEDE3CF90E0EBCD40E0202DE06C2C57 +:1022B00044EA1C0000780C2A8C9807E06600D0EAFB +:1022C000160000E047002DC194ED2C00062FFCAC59 +:1022D000ECED2C0006582CC1353005AC95301CC7F0 +:1022E000AC300CC68CACE58C46BB17E06CF160EAF8 +:1022F0001C8001E0A0246AC038300CACEC2FEDE368 +:10230000CF90E0EBCD4080E06CF190EA1C8001E0E2 +:10231000A0245CE0672C44EA170000E0A0CD6A8F9F +:102320001CE0A0CD618F0C300CE06B00D0EA1B00EC +:1023300000B69C6E1CE06B3CACEA1B8000F94B01C4 +:10234000C8E06B3CE0EA1B8000F94B01CCE06B3D40 +:1023500030EA1B006515001302F1EC5604003E0044 +:10236000008001003F00010000CFAF010D02F1EC41 +:10237000560300000001008000F94B01D0E06B3FE4 +:1023800030EA1B8000F94B01D4E06B3F8CEA1B80E4 +:1023900000F94B01D8E3CF9080D703800087748089 +:1023A00001D99C8001D990D401300BE06A2C44EA19 +:1023B0001A0000741AF53A01C1580AC021D80A5C03 +:1023C0006CC031C12C189B169C5C6CD8020000D4E8 +:1023D00001300CC12CDA0A581C5F0CE06B2C4DEA62 +:1023E0001B0000B68C5EFDE06B2C4CEA1B0000F776 +:1023F0002C00005EFC0000E06B2C4CEA1B0000B6D9 +:102400008C5EFDD401189A301C1789F2091068F40B +:10241000090B0C1789F20910681409B29C30EC17EB +:1024200089F20910681409B2ACE06C2C4DEA1C006A +:1024300000F9290000178CF80C1068180AB4C917A5 +:102440008C2FFCB68CCC5FD80A3000EBCD408030AE +:102450000CE06B464CEA1B0000970CE0674668EA0C +:10246000170000E0A0B45C8F1C305C8F0CE3CF90B1 +:1024700080D7038001A8A400C757001302F1EC56CF +:1024800004003F00008001004000010000CEC701B1 +:102490000D02F1EC56030000000100D7F1C888D707 +:1024A000F1C868D7F1C848D7F1C828D7F1C808D70C +:1024B000F1C7E8D7F1C7C8D7F1C7A8D7F1C788D700 +:1024C000F1C768D7F1C748D7F1C728D7F1C708D7F0 +:1024D000F1C6E8D7F1C6C8D7F1C6A8D7F1C688D7E4 +:1024E000F1C668D7F1C648D7F1C628D7F1C608D7D4 +:1024F000F1C5E8D7F1C5C8D7F1C5A8D7F1C588D7C8 +:10250000F1C568D7F1C548D7F1C528D7F1C508D7B7 +:10251000F1C4E8D7F1C4C8D7F1C4A8D7F1C488D7AB +:10252000F1C468D7F1C448D7F1C428D7F1C408D79B +:10253000F1C3E8D7F1C3C8D7F1C3A8D7F1C388D78F +:10254000F1C368D7F1C348D7F1C328D7F1C308D77F +:10255000F1C2E8D7F1C2C8D7F1C2A8D7F1C288D773 +:10256000F1C268D7F1C248D7F1C228D7F1C208D763 +:10257000F1C1E8D7F1C1C8D7F1C1A8D7F1C188D757 +:10258000F1C168D7F1C148D7F1C128D7F1C108D747 +:10259000F1C0E8D7F1C0C8D7F1C0A800608000132F +:1025A00002F1EC56040040000080010041000100EF +:1025B00000A26B010D02F1EC56030000000100D7F0 +:1025C000F1340A40FBFACCFFC8F01F0007D7F2D65F +:1025D00013E1BA000440FB1A9CF01F0003D7F2D6A7 +:1025E0000300008000B288300CF01F000E580CF879 +:1025F0000F1710D603301CF01F000A580CF80F17E5 +:1026000010D603302CF01F0007580CF80F1710D607 +:1026100003303CF01F0003580CF80F1710D603804E +:1026200001D488E06C4E64EA1C0000780C787BE0F2 +:102630006C4E64EA1C0000780C78AC166C189BE2B7 +:102640001B0700580BC340E21C0300580CC0803F1E +:10265000CCE06B4E70EA1B0000970CC0783FECE0BA +:102660006B4E70EA1B0000970CE06C4E64EA1C0095 +:1026700000780C783CAFDCE06B4E64EA1B0000761F +:102680000B973C3FFCE06B4E64EA1B0000760B9717 +:10269000BC3FFCE06B4E64EA1B0000760B979C305D +:1026A0000CE06B4E84EA1B0000B68CD603EDBC0038 +:1026B00000C312E06C4E64EA1C0000780C785C00E9 +:1026C0009607001302F1EC5604004100008001005F +:1026D000420001000037A0010D02F1EC560300009A +:1026E000000100E06B4E6CEA1B0000760BB68CE03C +:1026F0006C4E6CEA1C0000780B2FFB990BE06C4EC3 +:1027000078EA1C0000780B201B990BE06C4E78EAED +:102710001C0000780C580CE081008C301CE06B4EE3 +:1027200064EA1B0000760B979C300CE06B4E84EA49 +:102730001B0000B68CD603EDBC0004C1623EFCE079 +:102740006B4E64EA1B0000760B97BC3FFCE06B4EBF +:1027500064EA1B0000760B979C300CE06B4E84EA19 +:102760001B0000B68CD603EDBC0001C622E06C4E07 +:1027700074EA1C0000780C580CC161302CE06B4EE0 +:1027800064EA1B0000760B979C310CE06B4E64EA08 +:102790001B0000760B978C300CE06B4E84EA1B001C +:1027A00000B68CD603E06C4E68EA1C0000780C1969 +:1027B0008CE06B4E68EA1B0000760A2FFA970A5CE1 +:1027C0005CE06B4E64EA1B0000760B976CE06C4E8D +:1027D00074EA1C0000780B201B990BE06C4E74EA25 +:1027E0001C0000008B42001302F1EC560400420072 +:1027F000008001004300010000881B010D02F1EC84 +:1028000056030000000100780C580CC241E06C4EE9 +:1028100084EA1C0000198C580CC1D0300CE06B4EBF +:1028200084EA1B0000B68CE06C4E80EA1C00007845 +:102830000C784CE06B4E74EA1B0000970CE06C4E79 +:1028400080EA1C0000780C783CE06B4E68EA1B00C4 +:1028500000970CD6030000EBCD00C0E06C4E88EA78 +:102860001C0000780C7867E06C4E88EA1C00007849 +:102870000C78960E660E9CE21C70C0580CC180FE4F +:102880006CFFFFE06B4E88EA1B0000760B978C3FD5 +:10289000FCE06B4E88EA1B0000760B97AC302CE016 +:1028A0006B4E8CEA1B0000762B5D1BCA580C9CE01B +:1028B0001C0008E41C0040580CC1B0FE6CFFFFE097 +:1028C0006B4E88EA1B0000760B97ACFE6CFFFFE0B6 +:1028D0006B4E88EA1B0000760B978CEDB60003C0A8 +:1028E00082300CE06B4E8CEA1B0000762B5D1BEDFA +:1028F000B60010C3D2308CEA1C0040E06B4E88EA70 +:102900001B0000760B97AC003D3F001302F1EC5624 +:10291000040043000080010044000100009C3301DA +:102920000D02F1EC56030000000100E07C0000E025 +:102930006B4E88EA1B0000760B97ACEDB70005C222 +:1029400012FC1C0080E06B4E88EA1B0000760B979F +:10295000ACE06C70C8EA1C0080E06B4E88EA1B009B +:1029600000760B977CE06C4E8CEA1C0000781C5DB6 +:102970001C5C5CE06B4E88EA1B0000760B974CC039 +:1029800098E06C70C9E06B4E88EA1B0000760B97EC +:102990007CEDB60000C0E2E06C4E88EA1C000078D6 +:1029A0000C783C5C5CE06B4E8CEA1B0000F01B007A +:1029B00000EDB60017C322EDB70008C1A2FC1C0051 +:1029C00080E06B4E88EA1B0000760B978CFC1C00A5 +:1029D00080E06B4E88EA1B0000760B97ACE06C0140 +:1029E00000E06B4E88EA1B0000760B97ACC168FCD8 +:1029F0001C0080E06B4E88EA1B0000760B97ACE071 +:102A00006C4E8CEA1C0000781C5D1C5C5CE06B4E1C +:102A100088EA1B0000760B974CE3CD00C0D603E09C +:102A2000A037C0D603D7038000B47400B654001397 +:102A300002F1EC5604004400008001004500010052 +:102A400000F68B010D02F1EC56030000000100E0DE +:102A5000A0384CD603D7038000B598E0A03858D6EC +:102A600003D7038000B5BCE0A03774D603D703803A +:102A700000B400E0A036F6D603D7038000B310C040 +:102A8000080000D431204D300C503C502CBA0CE0E2 +:102A90006C28D0EA1C00007843E0651E5CEA150053 +:102AA00000EAF609589946EAF70954EB470958EA4B +:102AB000FC0950E0A07AC8189BFC1C447AE0A0797D +:102AC0006DEB4C0954EAF40948EAFC0930081CFE95 +:102AD0003CFF06E06B00FAF80B0D0A5C7B501B40D4 +:102AE0001CE04C004CC054EAFC093C581CC0E130CE +:102AF00006EB5600FAEB5600FC302CE06B28D0EACF +:102B00001B0000B60CE08F022DEAFC0944584CC3B0 +:102B1000D30C9C0E9BE0A07A5BC382EAFB09540EA7 +:102B20009CE0A07A55C322EAFC0954E0A08BC214B1 +:102B30009016910C9CE0A08BBDE068CCCDEA18CC3F +:102B4000CCE069CCCCEA193FFCE0A08B2A009800CD +:102B50007537001302F1EC560400450000800100B7 +:102B600046000100006340010D02F1EC5603000035 +:102B70000001000299E0A08BCFC1A2EAFC09543009 +:102B80001BEA1B4040E0A07A29C123EB470954EB24 +:102B9000460958E06C28D0EA1C00009943303CE01C +:102BA0006B28D0EA1B0000B60CE08F0240EAFC095B +:102BB00014EB4C0918EAFC0924EB4C0928401C5C76 +:102BC0007CE0A07A531892EAFC0910049BE0A078FC +:102BD000F71891EAFC0920049BE0A078F1189330E3 +:102BE00009EB490914EB49092408973004C2682FFE +:102BF000F75C77E04700FAC0213007EA070026ECCF +:102C0000FC013C029BE0A077A3189BE0A07864EA5B +:102C1000FB0914E0A0780AEB4C0914ECFC0524062F +:102C20009BE0A07795189BE0A07856EAFB0924E08A +:102C3000A077FCEB4C09242FF45C74401C1834CDB5 +:102C400085EAFC0914049BE0A078BA1893EB4309C9 +:102C500014EAFC0924049BE0A078B21894EB440920 +:102C600024E06C28D0EA1C0000783CE06B28D0EA15 +:102C70001B00000052FC001302F1EC560400460059 +:102C8000008001004700010000DCFB010D02F1ECB7 +:102C900056030000000100971CEAFC0A0CEAFB0A3C +:102CA00010E0A077671897E06C28D0EA1C00009924 +:102CB00037E0A003FF581CC0713006EB5600FAEB5A +:102CC0005600FCC729EAFC0944580CC111EB1C0052 +:102CD000FCEB1B00FAF60C000A585AC095160CBA09 +:102CE0000C3006EB5600FAEB5600FCC0A8EAFC09D3 +:102CF00044580CC0603006EB5600FAEB5600FCEA74 +:102D0000FB09449A8C180BC3D1FC113FE0EAFB0984 +:102D100028089CE0A0779CE0A08AF030080299E0A7 +:102D2000A08A633008E069C000EA194062E0A08B25 +:102D300005C183EAFB0918069CE0A07789E0A08A18 +:102D4000DD30080299E0A08A503008FC194054E0B8 +:102D5000A08AF4C073FC1B41A00E9CE0A0795CC16A +:102D600012EB1C00FA2FFCEB5C00FAEAFC0930EBDA +:102D70004C094C306CE06B28D0EA1B0000B60CC14B +:102D800049EB1700FAEE0C1510C170EAFB09280890 +:102D90009CE0A07827FC1B00512E001302F1EC569A +:102DA000040047000080010048000100004B1001B2 +:102DB0000D02F1EC560300000001004040E0A07954 +:102DC0003DC0A25837C0B59A8B0E0BBA0B300CEB36 +:102DD0005C00FAC048300CEB5C00FAEAFB09449A4C +:102DE0008C180BC2B1EAFC0954FC1B3F80E0A079AF +:102DF00025C082307CE06B28D0EA1B0000B60CCEE8 +:102E000068EAFC0954E06B6667EA1B4016E0A079AB +:102E100009C143EB1C00FC582CC0D4EB1C00FC2F58 +:102E2000FCEB5C00FC308CE06B28D0EA1B0000B6A9 +:102E30000CCCD89A8A180ABA0A3006EB5600FC065F +:102E4000980899EAFA0954401B9A8CE0A003AA5802 +:102E50001CC181EAFC0958EB4C0954EAFC0928EB37 +:102E60004C0924E06C28D0EA1C0000781CE06B2898 +:102E7000D0EA1B0000973CEAFC0918EB4C0914CA85 +:102E800068EAFC0954301BEA1B40A0E0A078CAC0E5 +:102E900053FC1C40A0EB4C0954EB5600FAEB5600D7 +:102EA000FCEAFC0944580CC1A1EAFB0954EB4B09AC +:102EB0005CEB4B0960EAFC0914EB4C00986D0013C5 +:102EC00002F1EC56040048000080010049000100B6 +:102ED000000BAB010D02F1EC5603000000010009EC +:102EE0001CEAFC0924EB4C092CE06C28D0EA1C00FD +:102EF00000783CE06B28D0EA1B0000972CC6B8E0B5 +:102F0000A002A8581CC261EAFB0954FC1C4000E066 +:102F1000A077181897EB470954301C502CEAFB098E +:102F200014FC1C3F00E0A0770D1896EB460914EA4C +:102F3000FB0924FC1C3F00E0A07704EB4C0924EBC8 +:102F4000460918EB4C0928EB4709589A8B2FFBBA16 +:102F50000BEAF60954EAFB09580C9CE0A0769CFCAD +:102F60001B3F00E0A076EE1897EB47095CEAFB09EF +:102F700014EAFC0918E0A0768FFC1B3F00E0A07665 +:102F8000E1EB4C091CEAFB0924EAFC0928E0A076E5 +:102F900083FC1B3F00E0A076D5EB4C092C0C9C0E6B +:102FA0009BE0A0785DC043402C581CC031EB460923 +:102FB00060E06C28D0EA1C0000781B783CE0A0762A +:102FC0006BFC1B3F00E0A076BDE06B28D0EA1B0045 +:102FD00000972C9A8CC81CE0A004268B0CC65C00C1 +:102FE0001AF5001302F1EC560400490000800100BC +:102FF0004A000100009E60010D02F1EC5603000042 +:10300000000100EAFC0930EB4C094C301C503CEB51 +:103010004C0A04403C581CC051301CEB5C0028C0DA +:1030200088E06C28D0EA1C0000988CEB5C00289AA1 +:103030008C8BBCEAFC09508BCC401CEB5C0034EB65 +:103040001C00F6EB5C0036EAFC09148BECEAFC0988 +:10305000248BFCEAFC0954EB4C0040EAFC091CEB15 +:103060004C0044EAFC092CEB4C0048EAFC095CEB00 +:103070004C004CEAFC0930EB4C09483006EB4609A1 +:10308000503009EB490910EB490920EB46093C6B2C +:103090007CEB4C0A480A9C2B0C300A300BB91BF80D +:1030A000EB00080A9CFE3CFF34B91B992AEAFC0A93 +:1030B00014EB4C0A18EB490A14402CE06B28D0EAB8 +:1030C0001B0000977C403C2FCDD832E06C1E5CEAA0 +:1030D0001C0000F8FB0940991BF8FB0964996BF888 +:1030E000FB0968997BF8FB096C998BF8FB095C99E3 +:1030F0002BF8FB09FC999B5EFD0000D431202D18B4 +:1031000093300600CF65001302F1EC5604004A002C +:10311000008001004B0001000021DB010D02F1ECF9 +:10312000560300000001003005E0671E5CEA17004E +:10313000005813C225EEFC0940189BF7DBC003EED4 +:103140000B002BF6FB0990201CF9DCC003EE0C00F1 +:103150002CF94B0990EEF40944307CE80C0D0AEE92 +:103160000B002CF8FC09702014307BE80B0D0AEEE4 +:103170000B002BF74C0970EEF2095CFC1B4020049D +:103180009CE0A07791C083EEFC09F8FC1B4040E076 +:10319000A0778AC042303CAE6CC038304CAE6C8EEA +:1031A000ECEEFB0940F7DBC003EE0B002BF74C09FC +:1031B00090300CC068583BC0212FF52FFC5C7C5828 +:1031C0008CC094EE0C002BF6FB0990584BCF412F8E +:1031D000F6CF5B5C765C750C05EA0C161F1805A132 +:1031E000550C35C044304CAE7CC038303CAE7C040D +:1031F00096FC153FC0049C0A9BE0A07755C0320A9C +:1032000096C0A8301BEA1B4090049CE0A07740C009 +:1032100033FC1640900C9CE0A088B8149416950CD2 +:103220009CE0A088B3E06800B74C001302F1EC56B4 +:1032300004004B00008001004C0001000035F30148 +:103240000D02F1EC56030000000100B8BBEA1806BD +:103250008DE06916F0EA193FB8E0A0882008980AC6 +:1032600099E0A0881C149416950C9CE0A088A0E01E +:103270006816F0EA185048E06918FCEA193FE9E0DE +:10328000A0880DE0681134EA183C36E06952BDEAC6 +:1032900019BFDAE0A086EE08980A99E0A086B6E0A9 +:1032A000A076BEEEFB00C4E0A07582E0A08880E0BE +:1032B00068EDB8EA181C22E0691818EA193F78E0AE +:1032C000A087EDE0A076ACEF4C0964EF0B00C85886 +:1032D0002BC091E06BC41EEA1B3F7EE0A07568EF37 +:1032E0004C0964EEFB0968EEFC0964E0A0750A185D +:1032F00090EF400968EEFC09640C9BE0A07558FC57 +:103300001B4270E0A075541896EF46096CEEF40964 +:1033100044307CE80C0D0AEE0B002CF946097030A5 +:103320000CEF4C098C58743005C262C0C8EE050021 +:103330002CF8FC0970029BE0A074E4EF4C098C2F80 +:10334000F55C75EEF1098C0A34CF2200462F00138C +:1033500002F1EC5604004C00008001004D00010019 +:10336000005F4B010D02F1EC560300000001005C10 +:10337000750A9CE0A076F8189B029CE0A0759EEF71 +:103380004C098CC158EE05002BF6FB0970E0A074C7 +:10339000CBEF4C098C2FF55C75EEFC098C5875CF82 +:1033A00035FC1B40E0E0A07589EF4C098C0C9CE0DB +:1033B000A08810FC15400C8EFC584CC140E0689968 +:1033C0009AEA189999E0699999EA193FB9E0A087B2 +:1033D0007830080A99E0A0865FE0A07633EF4C0AC7 +:1033E00000C138E068999AEA189999E0699999EAD0 +:1033F000193FC9E0A0876530080A99E0A0864CE033 +:10340000A07620EF4C0A00049CE0A087E33008FC83 +:1034100019404EE0A0875514981699300AFC1B3FBE +:10342000F0E0A0878BBB1BEEFC00C0E0A087D214AD +:10343000941695EEFC0A00E0A087CCE068147BEAC5 +:103440001847AEE0697AE1EA193F74E0A0873908CD +:10345000980A99E0A08735BB08E0A08732E0A07504 +:10346000F11896EF460A00EEFB09FCE0A0745C0040 +:10347000B2DF001302F1EC5604004D0000800100A1 +:103480004E00010000CA80010D02F1EC560300005D +:103490000001001895EF4509FCEEFC09402FFCEFF8 +:1034A0004C0940EEFC09442FFCEF4C0944E60C1596 +:1034B00010C220EEFC0940060CEF4C0940EEFC095E +:1034C00044060CEF4C0944069CE0A0765FEEFB0935 +:1034D00064E0A07491009BE0A07438EF4C0968068A +:1034E0009CE0A076530C9BE0A074860A9BE0A0743D +:1034F0002DEF4C09FC2FEDD83AD70380015CC88032 +:10350000013AF4EBCD40FC3007E0661E5CEA1600A1 +:1035100000ECF50954ECFC0960E0A0876DE06866FA +:1035200066EA186666E0696666EA193FE6E0A08624 +:10353000DA149216930A9CE0A0875E04980699E03C +:10354000A0877AC072ED1C00F6582CC0353017C128 +:1035500078E06B999AEA1B3F990A9CE0A075DAC063 +:10356000F26D74301BEA1B4220089CE0A075C6C0B7 +:1035700073FC1B42C8089CE0A075CCCE93ECFC0900 +:10358000F8FC1B4000E0A075C5C0D2301BEA1B4010 +:10359000000A9C001B21001302F1EC5604004E00AF +:1035A000008001004F00010000753B010D02F1ECAD +:1035B00056030000000100E0A075B2C063ED1C00DE +:1035C000F6583CC02530070E9CE3CD80FC0000EB94 +:1035D000CD40EC3006E0671E5CEA1700008EFC5818 +:1035E0003CC1E4EEFC0954301BEA1B4000E0A0752E +:1035F00097C163EEFC0914FC1B4120E0A0759CC040 +:10360000F2EEFC0924FC1B4220E0A07595C082303C +:103610004CE06B28D0EA1B0000B60C3016EEF50922 +:1036200024FC1B41A00A9CE0A07586C2D3FC133F7A +:10363000E0EEFB09280A9CE0A0739AE0A086EE3039 +:10364000080699E0A086613008FC194044E0A08794 +:1036500005C1A3EEF50914EEFB09180A9CE0A0735E +:1036600087E0A086DB30080699E0A0864E3008FC93 +:10367000194034E0A086F2C073FC1B41200A9CE094 +:10368000A0755AC082305CE06B28D0EA1B0000B6FF +:103690000C30160C9CE3CD80EC0000EBCD40FE1806 +:1036A0009516943006E0671E5CEA170000EEFC09F0 +:1036B0004418055825C1C3003A9F001302F1EC5687 +:1036C00004004F000080010050000100006553011C +:1036D0000D02F1EC56030000000100EEFC0954302D +:1036E0001BEA1B4060E0A0752DC143EEFC0928EEEB +:1036F000FB0924E0A07418301BEA1B40A0E0A07571 +:1037000021C083309CE06B28D0EA1B0000B60C304F +:10371000165825C1F33013EA134170EEFC0928EE68 +:10372000FB0924E0A07400069BE0A0750BC123EE0A +:10373000FC0918EEFB0914E0A073F6069BE0A075E7 +:1037400001C08330ACE06B28D0EA1B0000B60C301F +:10375000165805C1F0E06528D0EA1500006A2CE093 +:10376000A0866EE0683333EA183333E0693333EA16 +:10377000193FD3E0A085DB149216936A3CE0A08643 +:103780005F04980699E0A0867BC04230BCAA0C304A +:1037900016EEFC0954301BEA1B4090E0A074D2C026 +:1037A00092EEFC095C301BEA1B4080E0A074CAC1A9 +:1037B000D3EEFC0924FC1B43C8E0A074CFC0C3EEC9 +:1037C000FC0914FC1B4316E0A074C8C053EF1C0096 +:1037D000F6582CC0B58EFC583CC0850040C900137B +:1037E00002F1EC560400500000800100510001007D +:1037F0000071EE010D02F1EC5603000000010030F3 +:10380000CCE06B28D0EA1B0000B60C3016EEFC09A9 +:103810001CFC1B43C8E0A074B3C083EEFC09F8FC99 +:103820001B40A0E0A074ACC1A2EEFC0A1CEEFB0A97 +:1038300020160CE0A0867B3008FC193FE0E0A08554 +:10384000883018FC194044E0A0862AC08330DCE0B0 +:103850006B28D0EA1B0000B60C3016089CE0A07460 +:10386000E1189BEEFC00CCE0A073701892EF4200D0 +:10387000D8089CE0A074D6189BEEFC00D0E0A073A2 +:10388000651893EF4300DC089CE0A074CB189BEE16 +:10389000FC00D4E0A0735A1895EF4500E0EEF40068 +:1038A000E4089C049BE0A072191891301BE0A074FE +:1038B0005BC0330294C068049C089BE0A0720E18A1 +:1038C00094EEF200E8049C069BE0A0720718913089 +:1038D0001BE0A07449C0330293C068069C049BE0BF +:1038E000A071FC1893EEF200EC049C0A9BE0A0711E +:1038F000F51891301BE0A07437C0330295C0680002 +:10390000B43E001302F1EC560400510000800100A7 +:103910005200010000E425010D02F1EC5603000005 +:103920000001000A9C049BE0A071EA1895089C061F +:103930009BE0A072530A9BE0A07250E06B28D0EA93 +:103940001B0000976C0E9CFE3CFF28FE37FF1CB945 +:103950000AAF1B782A8F2A0C9CE3CD80FED7038008 +:10396000015E2A80015C4EEBCD40E03006E0651E32 +:103970005CEA150000EAFC09405B6CC112E0679646 +:1039800080EA174B18EAFC09680E9BE0A073FEC0A2 +:1039900072EAFC09FC0E9BE0A073F8C02330160C01 +:1039A0009CE3CD80E00000D631201D1694300C50F1 +:1039B0000CE0A004B1E0671E5CEA1700003006EFDF +:1039C000460A043003EF430A0CEF430A10E06C2868 +:1039D000D0EA1C0000B806402CC9BDEEFC09B05866 +:1039E0005CC0A1301CEF4C093CEF4609B0EF56001B +:1039F000F2EF5600F4EEFC0950080CEF4C0950EEC3 +:103A0000F00930EEFC09481830C041301CEF4C0979 +:103A10003CEEF20934E405100C0E05402C780CEB5A +:103A20004C0060001733001302F1EC560400520002 +:103A30000080010053000100005B9E010D02F1ECCB +:103A400056030000000100402C781CEB4C00644041 +:103A50002C782CEB4C0068F7D4C010402CE0A0026E +:103A60000D8F4C6BAC6B946B85189BE0A0721E188D +:103A700091089C089BE0A0721918940A9C0A9BE08C +:103A8000A07214089BE0A071BB029BE0A071B8E09B +:103A9000A0850CE0A0B476E0A073401895EEFC0978 +:103AA00038580CC121300CC068EE0C002BF74501D2 +:103AB000002FFC5C7C587CCF95FC1B40E00A9CE00E +:103AC000A071F4EF4C0138EE020021E2FB01000A84 +:103AD0009CE0A07127EEFB0138E0A071911894EFF3 +:103AE000440138E3450100EE000022E544013CEECC +:103AF000FB0910E0A07184EF4C0910E2FB011C08E7 +:103B00009CE0A0710F1895E5450524E344011CEEE7 +:103B1000FB0920E0A07174EF4C09200E9CFE3CFFD5 +:103B20004C4029B30BB92A130A18AAEF1C00F02F36 +:103B3000FCEF5C00F0EEFC09B0581CC030583CC3F0 +:103B4000A1EF1C00F0582C0083E9001302F1EC56A1 +:103B5000040053000080010054000100004FB60132 +:103B60000D02F1EC56030000000100C2748EFB58F8 +:103B70004BC244EEFC0944580CC761EEF2090C300C +:103B800014EA1440E0049C089BE0A0732FC0620A72 +:103B90009C089BE0A0731EC0D2FC14C0E0049C08EB +:103BA0009BE0A07317C6030A9C089BE0A0731EC588 +:103BB000B2301CEF4C093CC578E04C0027C0D5EF73 +:103BC0001B00F2F60A1510C050160CE04C004BC05A +:103BD00045301CEF4C093C0A9BEEFC090CE0A002AE +:103BE00079EEFC09B0581CC3F1EF1C00F2F80B157C +:103BF00010C3A0EF1B00F4F60A1510C350303A169C +:103C00000CE04C003DC045301CEF4C093C8EFC588C +:103C10004CC025302AEF1C00F6F80A1900C04230CB +:103C20001CEF4C093CEEFC0A1CEF4C0A20EEFB0A90 +:103C300024EEFC0A28180BEEFC0A2C180BEF4B0A9A +:103C40001CEF460A2CEF460A28EF460A24FEB0F87D +:103C500029500CEF5600F4EF5600F6E06C28D0EA3D +:103C60001C00009956EEFB0930EEFC00F20B00132D +:103C700002F1EC56040054000080010055000100E0 +:103C800000250E010D02F1EC5603000000010009B1 +:103C90004C181BFE3BFF06E06C00FAF60C0D0AE028 +:103CA0004B0096C111EF460944EF43095CEF43090D +:103CB0008C8F838F23AE66EF5600FAEF5600FC30F0 +:103CC0001CEF4C0A04E04B0064C1818F838F230EEC +:103CD0009CFE3CF670300A300BB91BF8EB0008F87C +:103CE000EB0010F8EB0018AE768F23301CEF4C0A77 +:103CF00004EF5600FAEF5600FCEEFC0930EE0C0023 +:103D00002CF8FC0524EF4C090CEEFC09302FFCEFDD +:103D10004C0930EEFC0930E04C00FAC031EF4609A6 +:103D200030EEFC09342FFCEF4C0934EEFC0934581A +:103D30007CC031EF460934EEFC09382FFCEF4C090A +:103D400038EEFC0A04580CC120EF470A080E9BFE0F +:103D50003BF5B40E9C169E305AB909BD28201ACFE7 +:103D6000D10E9CFE3CF5B4EF4C0A08400C2FFDDC54 +:103D700032D7038001BC38800139D0EBCD40F81830 +:103D800095E0671E5CEA170000EEF60A30EEF400DC +:103D90009899001302F1EC560400550000800100D0 +:103DA0005600010000B0C5010D02F1EC5603000001 +:103DB00000010000B40C9CE0A0728E18936A0C08FD +:103DC0009BE0A06FE5069BE0A070A6300BE0A07220 +:103DD00031C202EEFB0A3C089CE0A06FD9E0A08350 +:103DE0009BBFDBE068999BEA189999E0699999EA89 +:103DF000193FC9E0A083AEC063EEFC0A242FFCEF9C +:103E00004C0A24EEFC00B4EF4C0A3C5C36EF460A48 +:103E100030EEF60A34EEF400B80C9CE0A0725C18A8 +:103E2000936A1C089BE0A06FB3069BE0A0707430FF +:103E30000BE0A071FFC202EEFB0A40089CE0A06FFD +:103E4000A7E0A08369BFDBE068999BEA189999E035 +:103E5000699999EA193FC9E0A0837CC063EEFC0A26 +:103E6000282FFCEF4C0A28EEFC00B8EF4C0A405C0F +:103E700036EF460A34EEF60A38EEF400BC0C9CE04D +:103E8000A0722A18936A2C089BE0A06F81069BE021 +:103E9000A07042300BE0A071CDC202EEFB0A4408D4 +:103EA0009CE0A06F75E0A08337BFDBE068999BEAD8 +:103EB000189999005B03001302F1EC5604005600B8 +:103EC0000080010057000100000F7E010D02F1EC9F +:103ED00056030000000100E0699999EA193FC9E022 +:103EE000A0834AC063EEFC0A2C2FFCEF4C0A2CEE98 +:103EF000FC00BCEF4C0A445C36EF460A38E3CF8046 +:103F0000F8D70380013B20D531201D1896E0651EAF +:103F10005CEA1500006C0CEAFB00B4E0A06F4A50AC +:103F20000C6C1CEAFB00B8E0A06F4418906C2CEA03 +:103F3000FB00BCE0A06F3E1891400BBFDB009CBFB4 +:103F4000DC0297BFD7E0A06FA30E9BE0A06FA01884 +:103F500097400CBFDC6B4BE0A06F9AEB4C0050001D +:103F60009CBFDC6B5BE0A06F93EB4C0054029CBFEA +:103F7000DC6B6BE0A06F8CEB4C00586B7B0E9CE015 +:103F8000A06F86EB4C005CEAFB00CC6C0CE0A06FF1 +:103F90007FEB4C00CCEAFB00D06C1CE0A06F78EB10 +:103FA0004C00D0EAFC00D46C2BE0A06F71EB4C000D +:103FB000D4EAFC0938580CC121300CC068EA0C0066 +:103FC0002BF74709B42FFC5C7C58FCCF95FC1B41B8 +:103FD000700E9CE0A06FB2009901001302F1EC5644 +:103FE000040057000080010058000100009895016E +:103FF0000D02F1EC56030000000100EB4C09F0EB60 +:104000001C00F8EA0C0026ECFB09B40E9CE0A06E44 +:10401000E3EAFB09F0E0A06F4DEB4C09F0ED470936 +:10402000B4FC1B4170E0A0700F1893EB4309F8E05B +:104030006428F8EA140000681B009CE0A06F901848 +:1040400097680B400CE0A06F8B1896300BE0A071C6 +:1040500015C0E3300B0E9CE0A07110C093682B02DA +:104060009CE0A06F7D300BE0A07108C4D2682B02E9 +:104070009CE0A06F7518920C9C0E9BE0A070FEC097 +:10408000A20C9C049BE0A070F9C0320C9CC0980468 +:104090009CC0780E9C049BE0A070F0CFA20E9C30D8 +:1040A0001BE0A070DF0C9C0E9BC133E0A070E6C04B +:1040B000A20C9C049BE0A070E1C0320C97C1C80424 +:1040C00097C1A80E9C049BE0A070D8CFA2C148E085 +:1040D000A070D4C0A20C9C049BE0A070CFC0320C96 +:1040E00097C0880497C0680E9C049BE0A070C6CF60 +:1040F000A2EE178000EAFC0A140E9B006BF7001377 +:1041000002F1EC5604005800008001005900010043 +:1041100000D82E010D02F1EC56030000000100E072 +:10412000A070BEC032EB470A14400C890C8910897C +:1041300021FC1B3E80069CE0A070B2C0829ADCEAA3 +:10414000FB09F4180BEB4B09F4C048300CEB4C099D +:10415000F4EB1C00F82FFCEB5C00F8EB1C00F858AB +:10416000FCC041300CEB5C00F8EAFC09F42FFDD9EF +:1041700032D703800135D8800136B48001384880B9 +:10418000013760EBCD40FC189616953004E0671EB1 +:104190005CEA1700008EFC584CC035FC144000301F +:1041A0000B0C9CE0A07070C0B3300B0A9CE0A070B8 +:1041B00077C062EF1C00F62FFCEF5C00F6EEFC0906 +:1041C000B0580CC0A0581CC650582CE08000AF5806 +:1041D0003CE08000D3C0B9089CE0A081D33008FC4B +:1041E00019401CE0A08030149216930C9CE0A08132 +:1041F000C914981699049A069BE0A081E1C2730A3B +:104200009CE0A081BF14981699049A069BE0A081B7 +:10421000D9C1D2EF1C00F0590CC043300CEF5C0048 +:104220000027001302F1EC56040059000080010041 +:104230005A000100004DE5010D02F1EC56030000AB +:1042400000010000F0301CEF4C09B0E06328D0EA18 +:10425000130000668CEF4C0A0C669CEF4C0A10EEC3 +:10426000FC0930EE0C002CF8FC0524878CCD18EEF0 +:10427000FC0930EE0C002CF8F20524E06328D0EAAB +:10428000130000669B049CE0A0701CC02287923043 +:104290000B0C9CE0A0700AE08300BC300B0A9CE091 +:1042A000A07010E08200B6301CE06B28D0EA1B0042 +:1042B00000975CCAE8EEFC0930EE0C002CF8F20521 +:1042C00024E06328D0EA130000668C049BE0A06F12 +:1042D000F9C0228782FC133F800C9C069BE0A06FF4 +:1042E000E5E08300970A9C069BE0A06FEBE082006C +:1042F00091EF1C00F0EF5C00F2300CEF5C00F00876 +:104300009CE0A0815114981699300AFC1BC01CE057 +:10431000A07F78149216930A9CE0A0814504980629 +:1043200099E0A08161C102303CEF4C09B0EEFC097C +:1043300030EE0C002CF8FC0524E06B28D0EA1B00C2 +:1043400000979C00FFC8001302F1EC5604005A00CD +:10435000008001005B00010000F25E010D02F1EC43 +:1043600056030000000100C668302CEF4C09B0C6AF +:1043700028089CE0A0812A14981699300AFC1BC0DA +:104380001CE0A07F51149216930C9CE0A0811E04A7 +:10439000980699E0A08138C0930A9CE0A081160499 +:1043A000980699E0A08132CD23301B0C9CE0A06FD1 +:1043B0009BC412301B0A9CE0A06F8AC3C3C87BEE6B +:1043C000FC0930EE0C002CF8F20524E06328D0EA5A +:1043D000130000669B049CE0A06F86C0228792E0D9 +:1043E00063FFFEEA13BF7F0C9C069BE0A06F7CC2BC +:1043F000220A9C069BE0A06F6BC1D3EF1C00F0EF7C +:104400005C00F43006EF5600F00A9CE0A080DE1459 +:10441000921693089CE0A080D93008FC19401CE05B +:10442000A07F3604980699E0A080F0FE93FF1FEF6E +:104430004609B0EEFC09B0E3CD80FC800159BC8098 +:10444000015D9C80013A7C80013A6480015D60805E +:10445000015A2480015DA0E06C1E5CEA1C0000F89B +:10446000FC09B05EFC0000009A09001302F1EC5652 +:1044700004005B00008001005C00010000E67601A2 +:104480000D02F1EC56030000000100300BC0D85CB7 +:104490005BF80B060AE0690900EA1900005C5B168C +:1044A000092C89B28A2FFB5C5B589BCF255EFDD41B +:1044B00001E06BEA7CEA1B8001F80C003C180B164B +:1044C0009CCE5FD80A0000D431205D189716963034 +:1044D000E8FAC9FFFCE06A009035CB302CE0A0166A +:1044E0000F580CC0313FFCCCC830E8FAC9FFFCE0E3 +:1044F0006A009035CB302CE0A01602580CC0313F3A +:10450000FCCBF81BCCBA9C1BDCBA8C1BEB1BFAA3B4 +:104510004A1BF830CCF9E80028FB390008A74910FD +:1045200049FB380008F1D8C006FB3E0009A34EFB4A +:10453000340009330CF9E40044FB35000AA54508B2 +:1045400045FB33000A378CF9E30033FB34000BA53D +:10455000540644FB33000B33ECF9E30013FB3C003F +:104560000CA75C1843FB32000CFB3C000DA75CF968 +:10457000E21012FB31000DA341E3D1C005FB300076 +:104580000D306CF9E00010FB3C000E005890001359 +:1045900002F1EC5604005C00008001005D000100A7 +:1045A000008CCE010D02F1EC56030000000100A7C3 +:1045B0005C1840BAA0FB3C000EF9DCC001FB3000E7 +:1045C0000FA750E1EC101CAEBCFB3C000EA17C5CC4 +:1045D0006CA34CAE8CFB3C000FF9DCC001FB30003F +:1045E00010A750E1EC101CAECCFB3C000FA17C5C92 +:1045F0006CA34CAE9CFB3C0010F9DCC001FB30000E +:1046000011A750E1EC101CAEDCFB3C0010A17C5C5F +:104610006CA34CAEACFB3C0011F9DCC001AEEC1B52 +:104620009CF80C100AE02C05008D0C1B8CF80C106B +:104630000AE02C05008D1C5C5BF60C100AE02C05D2 +:10464000008D2C5C5A220A8D3A5C5920898D495C78 +:104650005822088D585C5E2DAE8D6E5C5522058DFE +:10466000755C5424048D845C5322038D935C528DBD +:10467000A25C518DB1300CC0282FFC5C5C58DCC0B2 +:10468000A4FACBFFFC5C5CF60C070B580BCF603038 +:104690000CC098FB3C0011EDBC0007C032300CC0D0 +:1046A000283F6C2FBDD832EBCD4080201D30070055 +:1046B00014D5001302F1EC5604005D0000800100E7 +:1046C0005E000100001905010D02F1EC5603000027 +:1046D000000100C0282FF7E04703E8C13430181A62 +:1046E00099E06A00B035CB302CE0A0152D580CC0F5 +:1046F000313FFCC0881B8CEDBC0007CED3300CC012 +:10470000283FBC2FFDE3CD80800000D401E06C0980 +:1047100000EA1C00002ACC198C580CC150E06C092E +:1047200000EA1C00002ABC198C580CC0D0CCFF58E1 +:104730000CC0343FBCD802300CE06B0900EA1B000F +:10474000002ABBB68C300CD8020000EBCD40802094 +:104750001D14971A9A3009B489B499E06A0082BA94 +:104760008A301ABA9A580C5F1C1B9A5C5CF5EC10E4 +:104770001CBA9C580B5F1C1B9B5C5CF7EC102CBAA2 +:104780009C30291A9A35CB302CE0A014B1580CC0BB +:10479000313FFCC1F85807C0E0C99F580CC0343FF6 +:1047A000BCC188300CE06B0900EA1B00002ABBB6D4 +:1047B0008CC088301CE06B0900EA1B00002ABBB6E5 +:1047C0008C301CE06B0900EA1B00002ACBB68C3051 +:1047D0000C2FFD0079A5001302F1EC5604005E00D9 +:1047E000008001005F00010000A6BE010D02F1EC97 +:1047F00056030000000100E3CD8080D421202D1459 +:1048000094129710964075E06A0900EA1A00002A8F +:10481000CA158A580AC051301ACABF580CC621306E +:10482000881A99E06A00B035CB302CE0A0149E586D +:104830000CC091E06CF200EA1C8001E0A014183F6B +:10484000FCC508300CE06B0900EA1B00002ACBB65F +:104850008C1B8CA75C890C1B8CA37CE21C03F81BB3 +:104860009BA55B164CAE0C1BACA76CE21C1FC01BBF +:10487000BBA34B164CAC0C1BCCA76CE21C1FC01B83 +:10488000DBA34B164CAC1C1BECA76CE21C1FC01B23 +:10489000FBA34B164CAC2C300C8B0C300BC1E85CE2 +:1048A0005BEC0B041C580CC0916A0A301CF609150D +:1048B00001F809094C184A8B0A5C5BEC0B041CE0FC +:1048C0004C1FFEC0A16A0A301CF60915012FF9F829 +:1048D00009094C184A8B0A2FFB5C5B583BCE1530FC +:1048E0000C2FEDD8220000EBCD4080201D18971A28 +:1048F0009C300BB88BB89B00AAEB001302F1EC566E +:1049000004005F0000800100600001000039D50153 +:104910000D02F1EC56030000000100C1CF580CC09D +:10492000343FBCC438E06C0085BA8CEF2C0000BA70 +:104930009C30291A9A35CB302CE0A013FD580CC0BE +:10494000313FFCC338E06C0086BA8CEF2C0001BA12 +:104950009C30291A9A35CB302CE0A013ED580CC0AE +:10496000313FFCC238E06C0087BA8CEF2C0002BAF1 +:104970009C30291A9A35CB302CE0A013DD580CC09E +:10498000313FFCC138300CC0D85C5CEE0C060BE04B +:104990006A0900EA1A00005C5C180A2BFAB48B2F33 +:1049A000FC5C5C583CCF25300C2FFDE3CD8080D4DF +:1049B00001201D1A9C300BB88BB89BCCCE580CC074 +:1049C000343FBCC118E06C0081BA8C300CBA9C300A +:1049D000291A9A35CB302CE0A013AE580CC0313FC9 +:1049E000FCC028300C2FFDD8020000EBCD40C020C9 +:1049F000AD1897FACCFFFC300BB88BB89BB8ABCA9C +:104A0000AE580CC0343FBCC828300CE06B0900EA3B +:104A10001B00002ACBB68C3006C1C800C8DD0013CD +:104A200002F1EC560400600000800100610001000A +:104A3000008564010D02F1EC56030000000100FA4C +:104A4000CBFFE4F60C032B580BC120FACBFFE4F6A6 +:104A50000C032BE06AEF38EA1A8001F406032AFA05 +:104A6000C9FFFC18091388F60A0348B2882FFC58BE +:104A70003CCE752FF65856C484FACCFFFCC59F581F +:104A80000CC0343FFCC558FACCFFE8500CFAC8FF04 +:104A9000F0FAC9FFF8FACAFFF4300B300CCD3E58DB +:104AA0000CC0343FFCC458403C580CC0303FBCC420 +:104AB00008300CC268FACBFFF0F60C041BE04B1078 +:104AC00000C061300BFACAFFE4F40C092BFACBFFEB +:104AD000F0F60C041BE04B1001C065301BFACAFF56 +:104AE000E4F40C092BFACBFFF0F60C041BE04B109E +:104AF00000C0643FFBFACAFFE4F40C092B2FFC58FA +:104B00003CCDA5300CCB5BFACCFFFCC12F580CC0C0 +:104B1000343FFCC0E83006C098FACCFFFC0C0CF91E +:104B20002B0000EE060B0B2FF65836CF75300C2FEE +:104B30006DE3CD80C00000EBCD40EC209D189600C9 +:104B4000829C001302F1EC56040061000080010019 +:104B5000620001000010AF010D02F1EC56030000ED +:104B60000001001695E0670900EA1700002F873062 +:104B70000C504C300C503CC12E580CC0343FBCC7BC +:104B800098300CE06B0900EA1B00002ACBB68CFAC7 +:104B9000CCFFF0500CFAC8FFE4FAC9FFFCFACAFFD8 +:104BA000F8300B301CC61E402C580CC0303FBCC621 +:104BB00018FACCFFF4500CFAC8FFECFAC9FFFCFA63 +:104BC000CAFFF8301B301CC50E402C580CC0303FBB +:104BD000BCC508FB0C001CFB0B0014161CE0A07DE0 +:104BE000D8E068999AEA189999E0699999EA193F81 +:104BF000B9E0A07CE0149216936EBCE0A07DC904DD +:104C0000980699E0A07CD73008FC194032E0A07DDE +:104C10000FE0A07DA48D0CFB0C001EFB0B001616F4 +:104C20001CFB0B0020161CFB0B0018160CE0A07DD3 +:104C3000B0E068A9FCEA18D2F1E069624DEA193FD8 +:104C400050E0A07CB8149216936EBC6E6BB73CE03B +:104C5000A07D9F04980699E0A07CAD3008FC194027 +:104C600032E0A00062DC001302F1EC5604006200A6 +:104C7000008001006300010000AF14010D02F1EC9F +:104C8000560300000001007CE5E0A07D7A8B0C401B +:104C90004C403B164C2F7DE3CD80EC80015CC8D4AA +:104CA00001FEB0FD8F580CC0343FBCD802300A3032 +:104CB0000B300CFEB0FDA6D8020000EBCD40FE206C +:104CC0009D18921693149612911094E0670900EAC9 +:104CD0001700002F87300C507C3005FACCFFE450D1 +:104CE0000C0698FAC9FFFCFACAFFE0300B300CFE44 +:104CF000B0FDCE580CC0343FFCC859300BC2D8E6CA +:104D00000B041AE06CF1D8EA1C8001E0690900EAA2 +:104D1000190000160913B9F809041C181AE06C09E7 +:104D200000EA1C0000160C2BFCF9290000E06809C1 +:104D300000EA1800001608F12C00001819E06809B4 +:104D400000EA180000F60C15021808712CF20C038A +:104D50004AEC0B092A2FFB583BCD359A2BE06A0908 +:104D600000EA1A0000E06C0900EA1C000079CCA1FE +:104D70007C180A2A8AB40BE06C0900EA1C0000299E +:104D80000C780B2FFB990B002F7D001302F1EC56D2 +:104D900004006300008001006400010000BB3C01CE +:104DA0000D02F1EC56030000000100E06C0900EA7E +:104DB0001C000079CC58ACC085300CE06B0900EACF +:104DC0001B0000F74C0070E06C0900EA1C00002991 +:104DD0004C780B2FFB990BE06C0900EA1C00007962 +:104DE000BC58ACC08530ACE06B0900EA1B0000F792 +:104DF0004C006C300BC0C8E06A0900EA1A0000F6EB +:104E00000C1501180A2A8A940C18052FFBE06C096E +:104E100000EA1C000079BC183BCEF5EA0C100AE051 +:104E20006B0900EA1B000077BBF80B0D0A504A6CB7 +:104E30000C500C6C1C503C6C2C502C5804C1F04095 +:104E4000096E0B404CB93BE06C03E8F60C0C0A14FD +:104E500019500940396E1B404CB93BE06C03E8F631 +:104E60000C0C0A1419503940296E2B404CB93BE008 +:104E70006C03E8F60C0C0A14195029403B402C181E +:104E80001B506B403B5C3B402C181B505B400CF8AC +:104E90000C10646E3B406AF60A034C6E4B405AF6A7 +:104EA0000A034CE0A07C99E068999A00A7A400133B +:104EB00002F1EC560400640000800100650001006E +:104EC00000D184010D02F1EC56030000000100EA5C +:104ED000189999E0699999EA193FB9E0A07BA11462 +:104EE0009416956EBCE0A07C8A08980A99E0A07B95 +:104EF00098E0A07C6A504C6E5C400BB73C6E6B40F7 +:104F00006AF60A034C6E7B405AF60A034CE0A07C1A +:104F100076E068999AEA189999E0699999EA193FAF +:104F2000B9E0A07B7E149416956EBCE0A07C670867 +:104F3000980A99E0A07B75E0A07C47503C6E8C40BD +:104F40000BB73C6E9B406AF60A034C6EAB405AF6B8 +:104F50000A034CE0A07C53E068999AEA189999E01A +:104F6000699999EA193FB9E0A07B5B149416956E94 +:104F7000BCE0A07C4408980A99E0A07B52E0A07CA9 +:104F800024502CE06C0900EA1C00002C8CF92B004A +:104F900000404CB93BE06C0900EA1C00002C7CF995 +:104FA0002A0000403CF40C034BE06C0900EA1C00B2 +:104FB000002C6CF92A0000402CF40C034B850BE00C +:104FC0006C0900EA1C00002C5CF92B0000404C002E +:104FD0007591001302F1EC56040065000080010099 +:104FE0006600010000444F010D02F1EC5603000081 +:104FF000000100B93BE06C0900EA1C00002C4CF9F0 +:105000002A0000403CF40C034BE06C0900EA1C0051 +:10501000002C3CF92A0000402CF40C034B851BE0CB +:105020006C0900EA1C00002C2CF92B0000404CB944 +:105030003BE06C0900EA1C00002C1CF92A0000402F +:105040003CF40C034BE06C0900EA1C00002C0CF94A +:105050002A0000402CF40C034B852B5801C0309AD9 +:105060002CA20C408C580CC0303FBCC028407C2F78 +:105070007DE3CD80FE0000D401201DFACCFFFF307F +:105080000BB88BB89BE06C434EEA1C8000198CBABD +:105090008C300BC108E06CF28CEA1C8001160CF914 +:1050A0002A0000E06C0900EA1C0000160C2BFCB87A +:1050B0008A2FFB583BCF05E06C0088BA9C300CBAB5 +:1050C000AC3029FACAFFFF35CB302CE0A010A05835 +:1050D0000CC0313FFCC618E06C0089BA9C300CBA99 +:1050E000AC3029FACAFFFF35CB302CE0A010905825 +:1050F0000CC03100A58A001302F1EC5604006600D2 +:10510000008001006700010000FBF4010D02F1ECDA +:10511000560300000001003FFCC51830181A99E042 +:105120006A008035CB302CE0A010B0580CC0313F65 +:10513000FCC4581B8CE06B0900EA1B00002BCBB6AB +:105140008CE06B0900EA1B00002F8BE06C0900EA81 +:105150001C0000FEB0FA80580CC315300BC118E0DB +:105160006CF0C4EA1C8001F80B032AE0690900EA2C +:10517000190000F60C15021809F34A00482FFB58D5 +:105180003BCEF5300CE06B0900EA1B00002ACBB6E1 +:105190008C300CE06B0900EA1B00002ABBB68C3097 +:1051A0000CE06B0900EA1B0000F74C0070E06B0993 +:1051B00000EA1B0000F74C006C300C2FFDD8028079 +:1051C00000881880008870580CC1E0F92B0000E0BE +:1051D0004B0020C194F92B0001E04B0020C144F9A1 +:1051E0002B0002E04B0020C0F4F92B00005A1BC03A +:1051F000B5F92B00015A1BC0752FECF92B00005A92 +:105200001B5F4CC028300C5C5C5EFCEBCD40FC208E +:105210001D1896169714940033C1001302F1EC5632 +:10522000040067000080010068000100006C1F019D +:105230000D02F1EC560300000001001293109230B1 +:1052400005E06C0974EA1C000078BC201CC04020FA +:105250001CC400C7F8E06C0974EA1C0000790BE07C +:105260006C0974EA1C000078FC181BE04B01F4C7C1 +:1052700013E06C0974EA1C0000790CE06B0974EA15 +:105280001B000097FCFEB0FC2518955805C625E0CC +:105290006C0974EA1C000078DC580CC091E06C09C1 +:1052A00074EA1C00002C8CCA2F580CC081302CE0F2 +:1052B0006B0974EA1B000097BCC078300CE06B09E6 +:1052C00074EA1B000097BCFEB0FD46580CC424C80D +:1052D000181A9CFEB0FC1C18955805C3B5E06C0963 +:1052E00074EA1C00002C8CF92B0000FB2A0000142F +:1052F0003BC171E06C0974EA1C00002C7CF92B00A6 +:1053000000FB2A0001143BC0C1E06C0974EA1C00D8 +:10531000002C6CF92B0000FB2A0002143BC0203447 +:1053200005300CE06B0974EA1B000097BC300CC020 +:10533000E81A9B5C5CF60C060AE06B007DD5001356 +:1053400002F1EC56040068000080010069000100D1 +:10535000002CA4010D02F1EC56030000000100092D +:1053600074EA1B00005C5C180B2C8BB68A2FFC5C6B +:105370005C583CCF155805C0340A9CC3D804980625 +:1053800099089A0E9B0C9CFEB0FD06580CC345581C +:105390001CC275E06B0974EA1B000076DB580BC079 +:1053A000B1E06B0974EA1B0000770BE06A0974EA4C +:1053B0001A000095FB301BE06A0974EA1A00009598 +:1053C000DBE06B0974EA1B000076BB580BC0713040 +:1053D0001BE06A0974EA1A000095BB1845C07830D2 +:1053E0000CE06B0974EA1B000097DCFEB0FCC658A9 +:1053F0000CC0250A9C2FFDE3CD80FCEBCD4080182E +:105400009716985807C041380CE3CD8080E06C09AE +:1054100074EA1C0000780C580CC0413FDCE3CD80DE +:1054200080E06C0974EA1C000078CC580CC4200E93 +:10543000992E090E9A2ECA0E9B2F4B0E9CC0BF1898 +:105440009B580BC375300AC2A85C5AF40C15010EA8 +:105450000C9869E0680974EA1800005C5AF40C00C2 +:10546000A662001302F1EC560400690000800100FE +:105470006A00010000B96F010D02F1EC5603000053 +:105480000001001502180891495C5AF40C15020E2F +:105490000C7859E0680974EA1800005C5AF40C159D +:1054A00002180891795C5AEE0A0329E0680974EA47 +:1054B0001800005C5AF40C1502180891192FFA5CB8 +:1054C0005A583ACD55E06C0974EA1C00002D8C98AE +:1054D0000CEF5C0020E06C0974EA1C000078CC58EA +:1054E0000CC030580BC374300AC2A8E0690974EAD2 +:1054F0001900005C5AF40C15021809721C5C5AEE73 +:105500000A092CE0690974EA1900005C5AF40C15C8 +:10551000021809724C5C5AF40915010E09B26CE0CC +:10552000690974EA1900005C5AF40C150218097232 +:105530007C5C5AF40915020E09935C2FFA5C5A58E8 +:105540003ACD55E06C0974EA1C00002D8C980C2EA5 +:1055500007AE0CE06C0974EA1C0000791CE06A09D3 +:1055600074EA1A00002C0A740918099509169CE3BC +:10557000CD8080D401300BC3A8E06CF298EA1C8087 +:1055800001160C009424001302F1EC5604006A008A +:10559000008001006B0001000006D4010D02F1EC57 +:1055A00056030000000100F92A0000E06C0974EACB +:1055B0001C0000160C2C8CB88AE06CF0D0EA1C8021 +:1055C00001F80B032AE0690974EA190000F60C15CA +:1055D000021809934AE06CF0D0EA1C8001F80B0332 +:1055E0002AE0690974EA190000F60C1502180993FB +:1055F0001AE06CF0D0EA1C8001F80B032AE069097C +:1056000074EA190000F60C15021809937A2FFB585A +:105610003BCC65300CE06B0974EA1B00002D8BB6A7 +:105620000C300CE06B0974EA1B0000F74C004033AF +:105630002CE06B0974EA1B0000F74C0044300CE0CE +:105640006B0974EA1B000097CC301CE06B0974EA0C +:105650001B000097BC3FFCE06B0974EA1B0000973D +:105660000C300CE06B0974EA1B000097DC303CFE48 +:10567000B0F82EFEB0FD5C580CC094E06CF248EA25 +:105680001C8001E0A00DCC300CD802E06C0974EA5B +:105690001C00002C8CFEB0FDE1580CC1C0E06C0970 +:1056A00074EA1C00002C8C00BCE5001302F1EC56DF +:1056B00004006B00008001006C0001000012FC017E +:1056C0000D02F1EC56030000000100FEB0F9F8589D +:1056D0000CC094E06CF270EA1C8001E0A00DB230C6 +:1056E0000CD802FEB0FA3E580C5F5CE06B0974EA1D +:1056F0001B000097BCC128FEB0FA34580CC084309F +:105700001CE06B0974EA1B000097BCC078302CE0E9 +:105710006B0974EA1B000097BC301CE06B0974EA4B +:105720001B0000970C301CD8020000D401301CE094 +:105730006B0974EA1B000097CCFEB0FB55301CD8F7 +:10574000020000300CE06B0974EA1B000097CC30BB +:105750000CE06B09BCEA1B0000B68C301C5EFC3010 +:105760001C5EFCD401201D5C5C187CC040201CC168 +:10577000B0C678E06C0974EA1C00002C8CF92A0091 +:1057800000B68AE06C0974EA1C00002C7CF92A003F +:1057900000B69AE06C0974EA1C00002C6CF92A002F +:1057A00000B6AAC4E8E06C0974EA1C0000780C5842 +:1057B0000CC0B13FDC500CE06CF148EA1C8001E009 +:1057C000A00D40300CC3E8300CC0D800EEBC001374 +:1057D00002F1EC5604006C00008001006D00010035 +:1057E000007844010D02F1EC560300000001005C5A +:1057F0005CF60C070AE0690974EA1900005C5C18A1 +:10580000092C89B28A2FFC5C5C583CCF25E06C09DE +:1058100074EA1C000078CC580CC031301CC248E03F +:105820006C0974EA1C00002C8CFEB0FD3B580CC0C7 +:1058300090E06C0974EA1C00002C8CFEB0F952C197 +:1058400028FEB0F9A1580CC084301CE06B0974EA42 +:105850001B000097BCC078302CE06B0974EA1B0079 +:105860000097BC301C2FFDD8020000EBCD40E0209B +:10587000BD1895E06CF268EA1C8001B90ABB1BE018 +:105880006C09BCEA1C0000198C580CC171E06C4317 +:10589000DCEA1C0000782B2EEBF72C0000E0A08B3C +:1058A0009DE06B0974EA1B0000F74C0044301CE0DB +:1058B0006B09BCEA1B0000B68CE06C43DCEA1C0000 +:1058C00000782C2F1C198C581CC2F1FEB0F82E58F1 +:1058D0000CC0B43FBC500CE06CF16CEA1C8001E0E1 +:1058E000A00CC2300CC798300BFACCFFF8FEB00009 +:1058F0003D9E001302F1EC5604006D000080010093 +:105900006E00010000ED8F010D02F1EC5603000066 +:10591000000100FDCF1896FEB0F81A580CC0B43F35 +:10592000BC500CE06CF184EA1C8001E0A00CAE30AD +:105930000CC658407CBA0C408B409C181BBA1B40CC +:105940008B5C3B409C181BBA2BC498301BFACCFFD5 +:10595000F8FEB0FDAF18963007C178FACCFFF8F822 +:1059600007032CE0A077EDE068147BEA1847AEE06F +:10597000697AE1EA193F84E0A076F5E0A077C71ADA +:105980009BF6070A1C2FF75837CE955806C03430BF +:105990000CC358EDB60000C042E06C7FFFBA0CEDBE +:1059A000B60001C042FE7C8000BA0CEDB60002C019 +:1059B00042E06C7FFFBA1CEDB60003C042FE7C8063 +:1059C00000BA1CEDB60004C042E06C7FFFBA2CEDBB +:1059D000B60005C042FE7C8000BA2C9A0CAA8C9AB4 +:1059E0000CA94CAA9C9A1CAAAC9A1CA94CAABC9AB9 +:1059F0002CAACC9A2CA94CAADC301C2F5DE3CD80BC +:105A0000E0D703800184E880008774D42120DD186A +:105A100095300700F293001302F1EC5604006E007B +:105A2000008001006F000100005234010D02F1EC12 +:105A300056030000000100E06CF260EA1C8001B92E +:105A40000ABB1BE0A00B181894301CE06B0974EA29 +:105A50001B000097CCE06C0974EA1C0000780C581D +:105A60000CC090E06C0900EA1C00002BCC198C588B +:105A70002CC040FEB0FDDAC90EE06C0900EA1C0043 +:105A8000002BCC198CAA8CAA97AAA7AAB7303AE007 +:105A90006BF298EA1B8001301CC9BE300BFACCFFB8 +:105AA000F0FEB0FD1918975807C034300CCA080E24 +:105AB0009CE21C0015580CC0303FA7C138E217000B +:105AC0002A5807C0303F97C0D8404C580CC091406E +:105AD0005C580CC061406C580CC0313F87C0283006 +:105AE00007E06C0900EA1C00002BFCF92B0000AA5F +:105AF000CBE06C0900EA1C00002BECF92B0000AA9B +:105B0000DBE06C0900EA1C00002BDCF92B0000AA8A +:105B1000EBAAF7300CEB6C0008300CEB6C00093092 +:105B200006C178FACCFFF0F806032CE0A0771BE062 +:105B300068A9FCEA18D2F10052AB001302F1EC564E +:105B400004006F00008001007000010000425C0151 +:105B50000D02F1EC56030000000100E069624DEA1D +:105B6000193F50E0A07623E0A076F51A9BF6060ACE +:105B70001C2FF65836CE951A9B302CE0A048049A7C +:105B80000CA94CEB6C000A9A0CEB6C000B9A1CA94C +:105B90004CEB6C000C9A1CEB6C000D9A2CA94CEB96 +:105BA0006C000E9A2CEB6C000FEB670010302B088A +:105BB0009CE0A00D69FACBFFF8FACCFFF4FEB0F838 +:105BC000CB18975807C034300CC2480E9CE21C001A +:105BD00015580CC0203FA70E9CE21C002A580CC090 +:105BE000203F97403CA94CEB6C0011403CEB6C0013 +:105BF00012402CA94CEB6C0013402CEB6C00142EC3 +:105C0000B5AA87300CE06B0974EA1B000097CC3012 +:105C10001C2F3DD822D7038000853C80015E2A805E +:105C2000015C4E80015DF68001002880008B28EB2E +:105C3000CD40E0201D3007E06CF289EA1C80011A9B +:105C40009B198AB68A199AB69A19ACBAACE0660062 +:105C5000D43018FAC9FFFE30FAF7D600EC1300135F +:105C600002F1EC5604007000008001007100010098 +:105C70000056E1010D02F1EC56030000000100C0E6 +:105C800008301CE0A00BB61BACE04C00D4C0E132E5 +:105C90000CBA8C35FCBA9C30291A9AF7D6C0083059 +:105CA0001CE0A00B7B1897C0510E9C2FFDE3CD800C +:105CB000E0321CBA8C310CBA9C30291A9AF7D6C043 +:105CC00008301CE0A00B6A1897CF00322CBA8C3039 +:105CD00005BA9530291A9AF7D6C008301CE0A00BF7 +:105CE0005D1897CE30323CBA8CE06C00B0EA1C00F4 +:105CF00000198CA7BCBA9C30291A9AF7D6C0083074 +:105D00001CE0A00B4B1897CD10324CBA8C312CBA3A +:105D10009C30291A9AF7D6C008301CE0A00B3E1818 +:105D200097CC40320CBA8CBA9530291A9AF7D6C063 +:105D300008301CE0A00B321897CB8BEBCD408020B5 +:105D40001D1A9C300BB88BB89B320CBA8C35FCBA40 +:105D50009CE06700D430291A9AF7D7C008301CE0BD +:105D6000A00B1CC0412FFDE3CD8080321CBA8C31CA +:105D70000CBA9C30291A9AF7D7C008301CE0A00052 +:105D80008A3E001302F1EC5604007100008001000D +:105D90007200010000C32A010D02F1EC560300005D +:105DA0000001000B0DCF20322CBA8C300CBA9C3085 +:105DB000291A9AF7D7C008301CE0A00B01CE603238 +:105DC0003CBA8CE06C00B0EA1C0000198CA7BCBA8D +:105DD0009C30291A9AF7D7C008301CE0A00AF0CDF1 +:105DE00050324CBA8C312CBA9C30291A9AF7D7C051 +:105DF00008301CE0A00AE4CC9B0000D401201D1A4E +:105E00009C300BB88BB89B320CBA8C300CBA9C30DF +:105E1000291A9AE06B00D4301CE0A00AD12FFDD8DB +:105E2000020000D401201D1A9C300BB88BB89B32A5 +:105E30000CBA8C300CBA9C30291A9AE06B00D43022 +:105E40001CE0A00ABD2FFDD8020000EBCD40F820D9 +:105E50001D18931694E067F0DCEA1780011A9C0F76 +:105E60008BB88B0F9BB89B3056E06500D430181A66 +:105E700099327AF7D5C008301CE0A00ACD581CC171 +:105E8000611B8CEDBC0003C122F1D4C0080699E06F +:105E90006A00A8F7D5C008301CE0A00ABDC0E12FF9 +:105EA000C70E9C0098E3001302F1EC560400720048 +:105EB0000080010073000100007C91010D02F1ECF3 +:105EC00056030000000100E0A00A3A300CC0980C14 +:105ED0009CFE3600015C7CCDB1300CC028301C2FFC +:105EE000FDE3CD80F80000EBCD40C0201D1A9C30B2 +:105EF0000BB88BB89B320CBA8C36FCBA9CE06700AE +:105F0000D430291A9AF7D7C008301CE0A00A6AC01A +:105F1000412FFDE3CD80C0321CBA8C3006BA9630DA +:105F2000291A9AF7D7C008301CE0A00A5BCF2032AC +:105F30002CBA8CBA9630291A9AF7D7C008301CE0D0 +:105F4000A00A50CE70323CBA8CE06C00B0EA1C0063 +:105F500000198CA7BCBA9C30291A9AF7D7C0083010 +:105F60001CE0A00A3FCD60324CBA8C340CBA9C3095 +:105F7000291A9AF7D7C008301CE0A00A33CCABEB43 +:105F8000CD5EFF23AD1A9C300BB88BB89BFACCFFCB +:105F9000FEE06BE5D0EA1B80012FEB178AB88A1769 +:105FA0009AB89AFACCFFD8E06BE5D0EA1B80012FB3 +:105FB000CBE06A00C0B709B928208ACFD13000E011 +:105FC0006CE5D0EA1C80010038B5001302F1EC56F4 +:105FD0000400730000800100740001000068B90132 +:105FE0000D02F1EC56030000000100F8EA00C4FACB +:105FF000EB0004F8EA00CCFAEB000CFACCFFE4E08A +:106000006BE5D0EA1B8001FE3BFF2CB709B92817CE +:106010000818A8E0A0088A506CC79FC0B1E06CE5E2 +:10602000D0EA1C8001FE3CFF20E0A0099B300CC59B +:10603000F9E06B0320406CE0A00B6EC1083010301B +:106040000C507C5082509243CC980CBA6C43CC9844 +:106050001CBA7C43CC982CFB5C001032ECBA8C3020 +:1060600002BA92E06700D430291A9AF7D7C00830F4 +:106070001CE0A009C9C0B1E06CE5D0EA1C8001FEBB +:106080003CFF18E0A0096E300CC32932ECBA8C3307 +:10609000FCBA9C30291A9AF7D7C008301CE0A00936 +:1060A000B3C0B1E06CE5D0EA1C8001FE3CFF10E01B +:1060B000A00958300CC1C9E06B00C8406CE0A00BCF +:1060C0002B3018FAC9FFFE32FAF7D7C008301CE0AF +:1060D000A009C6C0B1E06CE5D0EA1C8001FE3CFF1F +:1060E00008E0A0093F300CC0391BAC00FB0C0013CA +:1060F00002F1EC56040074000080010075000100FC +:10610000000201010D02F1EC56030000000100ED58 +:10611000BC0007C033300CCFD8E06800C0FAC9FF1C +:10612000D8E06A00A8F7D7C008301CE0A009AA5040 +:106130005C405C580CC0B1E06CE5D0EA1C8001FE0C +:106140003CFF00E0A00920300CCE4830033001C0F5 +:10615000282FA1E06451ECEA141EB8E065EB85EA53 +:10616000153F91E04100C0C5E4FACBFFD8020B1700 +:106170009A178CF9EA108ABA2A17BA17ACF9EA10FA +:106180008ABA3A17DA17CCF9EA108ABA4A2FF343D7 +:10619000ECB8039A2CE0A062CDE0A073EB08980A5B +:1061A00099E0A0735EE0A0743043EBB61C9A360C05 +:1061B0009CE0A062BFE0A073DD08980A99E0A0739C +:1061C00050E0A0742243EBB62C9A470E9CE0A062EC +:1061D000B1E0A073CF14981699089A0A9BE0A073B7 +:1061E00040E0A0741243EBB63C9A2C407A180A5057 +:1061F0007A408B0C0B508B409B0E0B509B300CC08D +:10620000282FFC583CCA64FACBFFFCF60C041B0098 +:10621000294D001302F1EC560400750000800100C6 +:10622000760001000097CA010D02F1EC5603000050 +:10623000000100FE3BF3BAE04B188DCF53301C43F6 +:10624000BBB68C300CC7889A2CE0A06285E0A073A6 +:10625000A308980A99E0A07316E0A073E843CBB6B0 +:106260000C9A3CE0A06278E0A0739608980A99E046 +:10627000A07309E0A073DB43CBB61C9A4CE0A0628C +:106280006BE0A0738908980A99E0A072FCE0A07303 +:10629000CE43CBB62C5C505810FE91FEF69A6B4361 +:1062A000CC980C181BBA6B9A7B43CC981C162CBA52 +:1062B0007CFB0A001043CB962B142BFB5B00109A3F +:1062C0006A2FCA589AC3525C8C2FCC589CC3125C5C +:1062D0008B2FCB589BC2D2FC173FA0407CE0A06222 +:1062E0003BE0A0735930080E99E0A072CCE0A07397 +:1062F0009E43DBB60C408CE0A0622EE0A0734C30D5 +:10630000080E99E0A072BFE0A0739143DBB61C4079 +:106310009CE0A06221E0A0733F30080E99E0A072DB +:10632000B2E0A0738443DBB62C301C43BBB68C4078 +:106330005CA1AC00737A001302F1EC560400760005 +:106340000080010077000100002871010D02F1ECCE +:10635000560300000001005C6C2C6DE3CDCEFFEB1A +:10636000CD40C0201D1A9C300BB88BB89B320CBAA4 +:106370008C36FCBA9CE06700D430291A9AF7D7C053 +:1063800008301CE0A00876C3B0321CBA8C3006BAC4 +:106390009630291A9AF7D7C008301CE0A0086AC2C4 +:1063A000F0322CBA8CBA9630291A9AF7D7C0083036 +:1063B0001CE0A0085FC240323CBA8CE06C00A0BA7E +:1063C0009C30291A9AF7D7C008301CE0A00852C1A7 +:1063D00070324CBA8C302CBA9C30291A9AF7D7C03C +:1063E00008301CE0A00846C0B032ECBA8CBA963037 +:1063F000291A9AF7D7C008301CE0A0083B2FFDE30C +:10640000CD80C0D431209D189016913007E063EB09 +:106410000CEA1380011A9C078BB88B079BB89BE68C +:10642000EA0004FAEB0010E6EA000CFAEB001C307C +:1064300002E6EA0014FAEB000830043006300CBA29 +:10644000AC506C303CBABC3035E0A006A5501CC046 +:1064500098069C2E4CE0A00037F0001302F1EC5699 +:1064600004007700008001007800010000BF9A015D +:106470000D02F1EC5603000000010007BB305B4049 +:106480001CE0A009911BBC189BFE3BFF01BABB5C42 +:106490005CC050C78F18975817CEE15817C0C0304E +:1064A000BC810C811C812C830C831C832C0E9C5C76 +:1064B0006CE08F0239E06B0320401CE0A00974C03F +:1064C00068305B401CE0A0096F2FF65C6658A6C1DF +:1064D0000430181A99327AE06B00D4301CE0A0081E +:1064E000071B8CE21C0008BA8C1B8C580CCEA00A2F +:1064F0009CFE35FF015C5CC1703068FAC9FFF0E0BA +:106500006A00A8E06B00D4301CE0A007F11897588F +:1065100017C0A0069C2DCCE0A0076C305B401CE0AF +:10652000A00942CE6BFACCFFF0300A300BB91BC287 +:1065300078FB3B0011FB3C0010F9EB108BBA4BFBD6 +:106540003B0013FB3C0012F9EB108BBA5BFB3B00EA +:1065500015FB3C0014F9EB108BBA6BFB2B00022FE0 +:10656000FBBAAB9A4C600B180B810B9A5C601B1842 +:106570000B811B9A6C602B180B812B005A53001354 +:1065800002F1EC560400780000800100790001005F +:1065900000FF21010D02F1EC560300000001002F65 +:1065A000F45C645854C5143006C078305B401CE07D +:1065B000A0090C2FF22FF65C6658A6C10430181AF9 +:1065C00099327AE06B00D4301CE0A007A31B8CE268 +:1065D0001C0008BA8C1B8C580CCE905C5258A2C080 +:1065E000C1E06C00CC810C811C812C830C831C834A +:1065F0002C0E9C5C6CCA993035C098069C2D4CE0E2 +:10660000A0070A305B401CE0A008E00A9CFE35FFB2 +:10661000015C5CC0E03068FAC9FFF0E06A00A8E005 +:106620006B00D4301CE0A0077518975817CE71582E +:1066300017C920316C810C811C812C830C831C8335 +:106640002C0E9C5C6CC819FB2B0002581B3004C23A +:10665000655C645834C264E0040027FB2C0002E04F +:10666000A060B018966E0CE0A060AC0C9BE0A05F40 +:106670003DE0A071C7E06851ECEA181EB8E069EB94 +:1066800085EA193FB1E0A07134E0A072068F0C2FAB +:10669000F4CE0B300CE004092C2FF45C6458340069 +:1066A0009985001302F1EC56040079000080010086 +:1066B0007A000100006AEA010D02F1EC56030000C5 +:1066C000000100CFA5300CBAAC323CFB6C001CE0E2 +:1066D0006C00A2FB6C001D3029FACAFFE4E06B00DD +:1066E000D4301CE0A006FC18975817C0B0321C81AB +:1066F0000C811C812C830C831C832C0E9C5C6CC332 +:1067000069364B401CE0A008733006C068305B401F +:106710001CE0A0086D2FF65C6658A6C10430181A5C +:1067200099327AE06B00D4301CE0A007051B8CE2A4 +:106730001C0008BA8C1B8C580CCEA03035C09806B3 +:106740009C2CCCE0A0067A305B401CE0A008500AEC +:106750009CFE35FF015C5CC0E03068FAC9FFF0E0E8 +:106760006A00A8E06B00D4301CE0A006E51897583A +:1067700017CE715817C0B032CC810C811C812C838C +:106780000C831C832C0E9C5C6CCF18FACCFFF03071 +:106790000A300BB91B30023004C368FB3B0011FB0D +:1067A0003C0010F9EB108BBA4BFB3B0013FB3C0099 +:1067B00012F9EB108BBA5BFB3B0015FB3C0014F9A4 +:1067C000EB108B00B00E001302F1EC5604007A00BF +:1067D000008001007B00010000D551010D02F1ECA9 +:1067E00056030000000100BA6B9A4C5C4CE04C0070 +:1067F00065C1B59A5C9A5B5C4BE04B0065C1559AEC +:106800006B9A6A5C4AE04A0065C0F5FB2900022FDA +:10681000F9BAA99A4A620914098309621A180A8303 +:106820001A622C160C832C2FF45C645854C5143057 +:1068300006C078305B401CE0A007EC2FF22FF65C1E +:106840006658A6C10430181A99327AE06B00D43029 +:106850001CE0A006831B8CE21C0008BA8C1B8C5821 +:106860000CCE905C5258A2C0C1E06C00DD810C815E +:106870001C812C830C831C832C0E9C5C6CC8983070 +:1068800035C098069C2C4CE0A005EA305B401CE02B +:10689000A007C00A9CFE35FF015C5CC0E03068FACE +:1068A000C9FFF0E06A00A8E06B00D4301CE0A0064D +:1068B0005518975817CE715817C830337C810C8102 +:1068C0001C812C830C831C832C0E9C5C6CC618FBD7 +:1068D0002B0002581B3004C2655C645834C264E269 +:1068E000040027FB2C000200069A001302F1EC566C +:1068F00004007B00008001007C00010000C17901E0 +:106900000D02F1EC56030000000100E0A05F9018BA +:10691000966E0CE0A05F8C0C9BE0A05E1DE0A0706A +:10692000A7E06851ECEA181EB8E069EB85EA193F68 +:10693000B1E0A07014E0A070E68F0C2FF4CE0B3005 +:106940000CE204092C2FF45C645834CFA5620C606F +:106950000B163CC055620B600C162CC048600B62D5 +:106960000C162C621B601A143BC055621A601B1473 +:106970002BC048601A621B142B622A6029123AC08D +:10698000556229602A122AC0486029622A122AFE0A +:1069900079FF51120CE04C02BDC0B2120BE04B0269 +:1069A000BDC072120AE04A02BDC032301C506C40B9 +:1069B0006C5C6C2F7DD8328000853C80008B2880F9 +:1069C000013B208001384880015D6080015C4E8081 +:1069D000015DF6D401198B580BC031C56CD8021972 +:1069E0008B581BC031C05CD802C17CD8020000EBC0 +:1069F000CD40C01897E06615A8EA16000030180CC4 +:106A000099326AE06B00D4301CE0A000DC07001370 +:106A100002F1EC5604007C00008001007D000100C2 +:106A200000ABC1010D02F1EC5603000000010005AE +:106A3000B90D8BAE8BE3CD80C00000EBCD40802044 +:106A40001D18971A9C300BB88BB89B0F8CE21C005A +:106A5000F0210CC040230CC100C088300CE06B005A +:106A6000B0EA1B0000B68CC0E8310CE06B00B0EA65 +:106A70001B0000B68CC078320CE06B00B0EA1B0043 +:106A800000B68C323CBA8CE06C00B0EA1C000019F5 +:106A90008CA7BCBA9C30291A9AE06B00D4301CE059 +:106AA000A00554AE8C2FFDE3CD8080EBCD40FC21C2 +:106AB0009D18973006E065E960EA158001AB0AFA97 +:106AC000EB005C300CFB6C0040EAEA0008FAEB00DB +:106AD00010EAEA0010FAEB0008EAEA0018BB1BFA19 +:106AE000CBFFB00A9C2E0CB909B728190816A8FAD2 +:106AF000CBFFBC0A9C2D4CB909B728190816A8EA87 +:106B0000EA0038FAEB0038EAEA0040FAEB0030EA33 +:106B1000EA0048FAEB0028EAEA0050FAEB0020EA23 +:106B2000EA0058FAEB0018E06200D4E06315AC000C +:106B3000B751001302F1EC5604007D000080010003 +:106B40007E000100003E0A010D02F1EC5603000038 +:106B5000000100EA130000301806992F4930FAF7B7 +:106B6000D2C008301CE0A0052FE73C000CE04C0030 +:106B7000D4E08102CC0A9C2A0CE0A004A73058FA89 +:106B8000C9FFA4E06A00A0F7D2C008301CE0A0054D +:106B90001B1896C08129850A9CE0A00497300CE060 +:106BA0008F02B61A99FACAFFF8FACBFFF0FACCFFB7 +:106BB000C0FEB0FAADE76C000FFACBFFBCFACCFF19 +:106BC000B0FEB0FC9FE76C000E3004C0382FF45CC0 +:106BD000545854C184320CA68CFACCFFA4080C196A +:106BE0008CA69C3029069AF7D2C008301CE0A0047D +:106BF000BF1896CED129050A9CE0A00467300CE0AE +:106C00008F0286E0A0AD70283C198C588CF9BC022C +:106C1000082FECFE0C001FC098C398C6E8CA88CDA8 +:106C2000D8C179C4C9C869CC49414CFB5C00384122 +:106C30005CFB5C003A416CFB5C003C411CFB5C0073 +:106C400030412CFB5C0032413CFB5C0034FB0C000F +:106C500010FB5C004DE8001302F1EC5604007E00CE +:106C6000008001007F0001000081B1010D02F1EC04 +:106C7000560300000001000020FB0C0012FB5C002A +:106C800022FB0C0014FB5C00249A1CFB5C00189A8D +:106C90002CFB5C001A9A3CFB5C001C9A4CFB5C00D1 +:106CA000289A5CFB5C002A9A6CFB5C002CC9394179 +:106CB0005CFB5C0038414C5C3CFB5C003A416CFB8B +:106CC0005C003C412CFB5C0030411C5C3CFB5C00EC +:106CD00032413CFB5C0034FB0C0012FB5C0020FBEF +:106CE0000C00105C3CFB5C0022FB0C0014FB5C0005 +:106CF000249A2CFB5C00189A1C5C3CFB5C001A9AE2 +:106D00003CFB5C001C9A5CFB5C00289A4C5C3CFBE6 +:106D10005C002A9A6CFB5C002CC5D9414C5C3CFBA6 +:106D20005C0038415C5C3CFB5C003A416CFB5C0005 +:106D30003C411C5C3CFB5C0030412C5C3CFB5C003F +:106D400032413CFB5C0034FB0C00105C3CFB5C0003 +:106D500020FB0C00125C3CFB5C0022FB0C0014FBD3 +:106D60005C00249A1C5C3CFB5C00189A2C5C3CFB8D +:106D70005C001A9A3CFB5C00B4C0001302F1EC56B4 +:106D800004007F000080010080000100003CDA0167 +:106D90000D02F1EC56030000000100001C9A4C5C4F +:106DA0003CFB5C00289A5C5C3CFB5C002A9A6CFB18 +:106DB0005C002CC229415C5C3CFB5C0038414CFB14 +:106DC0005C003A416CFB5C003C412C5C3CFB5C0091 +:106DD00030411CFB5C0032413CFB5C0034FB0C008E +:106DE000125C3CFB5C0020FB0C0010FB5C0022FBF7 +:106DF0000C0014FB5C00249A2C5C3CFB5C00189A91 +:106E00001CFB5C001A9A3CFB5C001C9A5C5C3CFB23 +:106E10005C00289A4CFB5C002A9A6CFB5C002CCE30 +:106E2000C8414C5C3CFB5C0038415CFB5C003A4177 +:106E30006C5C3CFB5C003C411C5C3CFB5C003041FE +:106E40002CFB5C0032413C5C3CFB5C0034FB0C00E6 +:106E5000105C3CFB5C0020FB0C0012FB5C0022FB86 +:106E60000C00145C3CFB5C00249A1C5C3CFB5C004A +:106E7000189A2CFB5C001A9A3C5C3CFB5C001C9A48 +:106E80004C5C3CFB5C00289A5CFB5C002A9A6C5CC6 +:106E90003CFB5C002CCB18415CFB5C006A150013CA +:106EA00002F1EC5604008000008001008100010026 +:106EB000007049010D02F1EC5603000000010000D2 +:106EC00038414CFB5C003A416C5C3CFB5C003C4153 +:106ED0002CFB5C0030411CFB5C0032413C5C3CFB09 +:106EE0005C0034FB0C0012FB5C0020FB0C0010FB70 +:106EF0005C0022FB0C00145C3CFB5C00249A2CFB25 +:106F00005C00189A1CFB5C001A9A3C5C3CFB5C0021 +:106F10001C9A5CFB5C00289A4CFB5C002A9A6C5C17 +:106F20003CFB5C002CC7B8414CFB5C0038415C5C0E +:106F30003CFB5C003A416C5C3CFB5C003C411CFB54 +:106F40005C0030412C5C3CFB5C0032413C5C3CFB17 +:106F50005C0034FB0C0010FB5C0020FB0C00125C9E +:106F60003CFB5C0022FB0C00145C3CFB5C00249AA4 +:106F70001CFB5C00189A2C5C3CFB5C001A9A3C5C85 +:106F80003CFB5C001C9A4CFB5C00289A5C5C3CFB64 +:106F90005C002A9A6C5C3CFB5C002CC408415C5C85 +:106FA0003CFB5C0038414C5C3CFB5C003A416C5C57 +:106FB0003CFB5C003C412C5C3CFB5C0030411C0019 +:106FC000216F001302F1EC560400810000800100E3 +:106FD0008200010000E582010D02F1EC5603000081 +:106FE0000001005C3CFB5C0032413C5C3CFB5C0013 +:106FF00034FB0C00125C3CFB5C0020FB0C00105CC2 +:107000003CFB5C0022FB0C00145C3CFB5C00249A03 +:107010002C5C3CFB5C00189A1C5C3CFB5C001A9AE4 +:107020003C5C3CFB5C001C9A5C5C3CFB5C00289A72 +:107030004C5C3CFB5C002A9A6C5C3CFB5C002C309A +:1070400004C2E8E80B1502E80C1501FACAFFC818DB +:107050000A940AFAC9FFB01609930AFACAFFD018AF +:107060000A940AFAC9FFBCF20B090AFACBFFD81836 +:107070000B960BFACAFFF8180AB40BFACBFFE0180C +:107080000B960BFACAFFF0180AB40BFACBFFE818FC +:107090000B960B1A9A140CB81B2FF45C545834CD71 +:1070A00025414CA94CAE8C414CAE9C415CA94CAEE8 +:1070B000AC415CAEBC416CA94CAECC416CAEDC4189 +:1070C0001CA94CAEEC411CAEFC412CA94CEF6C0051 +:1070D00008412CEF6C0009413CA94CEF6C000A41BF +:1070E0003CEF6C000766001302F1EC5604008200CE +:1070F0000080010083000100005A39010D02F1EC0B +:1071000056030000000100000B9A4CA94CEF6C00E4 +:107110000C9A4CEF6C000D9A5CA94CEF6C000E9A27 +:107120005CEF6C000F9A6CA94CEF6C00109A6CEF3E +:107130006C0011FB0C0010A94CEF6C0012FB0C0052 +:1071400010EF6C0013FB0C0012A94CEF6C0014FB49 +:107150000C0012EF6C0015FB0C0014A94CEF6C0036 +:1071600016FB0C0014EF6C00179A0CEF6C00189AC9 +:107170001CA94CEF6C00199A1CEF6C001A9A2CA9F0 +:107180004CEF6C001B9A2CEF6C001C9A3CA94CEF46 +:107190006C001D9A3CEF6C001EFB2B0040EF6B0057 +:1071A0001FE73C000FEF6C00202F23078CEF6C00D3 +:1071B00021E06C00FFEF6C00222DD7AE8C0C9C2ED2 +:1071C0007DE3CD80FCD70380008870800088188024 +:1071D0000087748001D990D401E0A044B1D8028026 +:1071E000010D34D401E0A0458BD80280010EF4D407 +:1071F00001E0A04627D80280011038FE7C100078FC +:107200000CE9B000055EFD00F43B001302F1EC5602 +:10721000040083000080010084000100004E110181 +:107220000D02F1EC56030000000100FE7C10007816 +:107230000CE9B000025EFDFE7C1000780CE9B000A5 +:10724000015EFDFE7C1000780CE9B000005EFDE000 +:107250006C0580EA1C0000F92B00005C5BC060201C +:107260002BC070201BC0A05EFDE07CC1385EFCE03E +:107270006C5A00EA1C02625EFCE06C0E00EA1C071D +:10728000275EFCD401CE5FA38CD802D401F80B0694 +:1072900048E06A03E7300B1408F20B0049109A1219 +:1072A0009BE06803E83009E0A0A886149CD802D4CB +:1072B00001F80B0648EE7A423F300B1408F20B003F +:1072C00049109A129BEE7842403009E0A0A874144D +:1072D0009CD8028001D588E1BA0042970A760A1448 +:1072E0000C971C300C2F8BB68C5EFDE1BB0042F975 +:1072F0003A0008582AC0215EFDF93A0008581AC021 +:10730000215EFF781A7809123A780AC0A2143B5E0F +:107310002D781A163A5E2D301B2F8CB88B5EFF1419 +:107320003BCFB3CF7B0000D401203D00B56C0013F0 +:1073300002F1EC5604008400008001008500010089 +:107340000024A9010D02F1EC56030000000100CB5E +:107350000F1A9BCD4F1A9CCDCFCFE02FDDD80AD48A +:1073600001203DCB8F1A9BCCAF1A9CCD2FCFE02FA5 +:10737000DDD80AE06C2B14EA1C0000300A300B1830 +:107380009831B9B12A2019CFE15EFCE06C2B14EAE8 +:107390001C00005EFC0000EBCD40C0CECF18973043 +:1073A00006E06C2BECEA1C0000B886B896B8A6B8CC +:1073B00026E0A016830E9CC2CC0E9CC24C0E9CC72D +:1073C0006C0E9CE0A002C80E9CC75C0E9CC27C0E9A +:1073D0009CC3BCE0A001D2E0A0377C346CE0A09B51 +:1073E00035343CE0A09B32EF66002AEF66002BEFBD +:1073F00066002C2D37AE86E3CF90C08000B2688047 +:1074000000F480D401300B998B999BC96CD802D4BD +:1074100001E0A03599DA0A8000F0F4EBCD40C01805 +:107420009730166E8C5C6CE0A03526C045301C8F02 +:107430005CC048300C8F5C30060C9C5C5CE3CD80FB +:10744000C0D7038000F024EBCD40C0189730160061 +:10745000C873001302F1EC5604008500008001009F +:107460008600010000B162010D02F1EC560300003C +:107470000001006E8C5C6CE0A0354EC045301C8F66 +:107480006CC048300C8F6C30060C9C5C5CE3CD808B +:10749000C0D7038000F0A0EBCD40C018973016E0B5 +:1074A000A0367E300B581CC051301C8F3C8F2BC037 +:1074B00098582C8F3BC041301C8F2CC0388F2B30FC +:1074C000060C9C5C5CE3CD80C0D7038000F328D41D +:1074D00001E0A03729DA0AD401E0A0A3EBDA0A80A0 +:1074E00001CE3CD401300BE06A2B14EA1A00007480 +:1074F000395809C030301BC058742A580AC020308F +:107500002B581CC265189A20AAC08020AAC0B0229D +:107510008AC0E0278AC110C1685C6B30ACE0A0383B +:1075200031C1485C6B314CE0A0382CC0F85C6B3347 +:10753000CCE0A03827C0A85C6BE06C00B4E0A038B9 +:1075400021C0485C6BE0A0381DE0A03863DA0AE097 +:10755000A03850DA0AD7038000F70CEBCD40801832 +:1075600097301C6E9B580BC1516E8C580CC041E07B +:10757000A0386C0055F1001302F1EC5604008600AF +:107580000080010087000100000ED9010D02F1EC1E +:1075900056030000000100C0586E8C5C5CE0A0380F +:1075A00071300B5C5C581CC051301A8F0A8F1BC0A5 +:1075B000E88F0BC0C8300B6E9A581AC051301A8F22 +:1075C0001A8F0BC0488F1B8F0B300C5C5CE3CD8097 +:1075D00080D7038000F7D48000F7E8EBCD40E018B7 +:1075E0009730066E858F8BCCCFC0700E9CC3BF0EBC +:1075F0009CC4FF3016C0488F850E9CCC2F0C9C5C21 +:107600005CE3CD80E000005EFF0000EBCD40C024D5 +:107610000D18971A9C30083009320BB928201BCF5F +:10762000E1CD9E1896ED3C0056E04C0064C2B4FAE1 +:10763000CAFEF40E9B1A9CE0A0A63C1A9CE0A0A8EF +:10764000AB2FFCED3B0056180BE04B0065C055ED31 +:107650003C0056F80C116430AB1A9A180A201AB480 +:107660008B1A9AED3900560C092A99189B129E58CC +:107670000BC0501538201B1CC8CFD12AA60D8B1863 +:107680000BAC8B2C0DE3CF80C0D7038001D41880C6 +:1076900001D8FCD401C9FE00C1DA001302F1EC5696 +:1076A0000400870000800100880001000099320179 +:1076B0000D02F1EC56030000000100189B2A9B30DC +:1076C000091698364A10C9201ACFE1300B2AACB8F7 +:1076D0008BD80AEBCD40C0207D1897A15B502B3092 +:1076E0000CFB6C0010505A506930260E9BE06C2B3E +:1076F00014EA1C0000C7DCFACBFFF8FE7C4400FE55 +:10770000B0FDD2C035301CC0F80E9B189ABB1BE0F0 +:107710006CF094EA1C8001C8CF0C9CFE36FF015C23 +:107720005CCE51300C2F9DE3CD80C0EBCD40C0200E +:107730007D1897A15B502B301CFB6C0010506850DB +:107740003A505930260E9BE06C2B14EA1C0000C501 +:107750000CFACBFFF8FE7C4400FEB0FD99C035303A +:107760001CC0F80E9B189ABB1BE06CF0A0EA1C80B2 +:1077700001C5FF0C9CFE36FF015C5CCE51300C2F26 +:107780009DE3CD80C00000EBCD40FC202D18971468 +:107790009312961094A15B169230250E9BE06C2BF1 +:1077A00014EA1C0000C25CE80C15185F1804990C60 +:1077B0009A069BFE7C4400FEB0FD7000A1180013E9 +:1077C00002F1EC56040088000080010089000100ED +:1077D00000D989010D02F1EC56030000000100C040 +:1077E00035301CC0F80E9B189ABB1BE06CF0ACEA5D +:1077F0001C8001C30F0A9CFE35FF015C5CCE11307A +:107800000C2FEDE3CD80FCD401E0A0A0C9D80A8004 +:1078100001CABCD401580BC0B0581BC090582BC033 +:1078200070583BC050584BC030585BC041300BC003 +:107830006CD80A301BC03CD80A0000EBCD40801841 +:1078400097D303580BC0A16EFC581CC111301CE02B +:10785000A0336C300C8FFCC0B8581BC0916EFC5824 +:107860000CC061300CE0A03361301C8FFCD503E309 +:10787000CF80808000F048D421189730053006C1B1 +:10788000380A9BFE35FF015C5BC5C1580CC091EF07 +:107890001C0040301BF606094B168CEF5C00403094 +:1078A000052FF65C6658B6C6E45806C161E0A0A68E +:1078B0000BE06443DCEA140000680C78BCF01C00A8 +:1078C00000C0B0EF1C0040A1ACEF5C0040301C6871 +:1078D0000B2F2BB68CCE6B5816C161E0A0A70C0005 +:1078E0008ED5001302F1EC560400890000800100DF +:1078F0008A000100004C42010D02F1EC5603000029 +:10790000000100E06443DCEA140000681C78BCF06D +:107910001C0000C0B0EF1C0040A1BCEF5C00403078 +:107920001C681B2F2BB68CCCFB5876C1D1E0A0A6CF +:10793000C5E06443DCEA140000687C78BCF01C00FD +:1079400000C0D0EF1C0040A7BCEF5C0040301CEF33 +:107950004C00D0687B2F2BB68CCB6BE0A0A6C6303A +:107960000CEF4C00D05896C0B0E06C43DCEA1C0031 +:1079700000F806032C78BCF01C0000C028301C580E +:107980001CC921EF1A0040301BF606094B164AEFBE +:107990005A0040301BE06A43DCEA1A0000F4060398 +:1079A0002A2F2AB48BC85B30BCC18858BCC061EF99 +:1079B0001B0040ABBBEF5B004058CCC061EF1B002D +:1079C00040ADABEF5B004058DCC061EF1B0040AD49 +:1079D000BBEF5B00402FFC5C6C58ECCE85301C2B61 +:1079E000E7AE8CD82AD7038001D5E48001D8148073 +:1079F00001D7B48001D7E42CDCB88B5EFD0000D445 +:107A000001FEB00054AD001302F1EC5604008A00F0 +:107A1000008001008B00010000F3F9010D02F1EC80 +:107A200056030000000100FC81D80AD401E0A03414 +:107A30006FD80A8000F3E4D401FEB0FC71D80AD4F8 +:107A400001FEB0FC7FD80AD401FEB0FC75D80AEB69 +:107A5000CD40801697FEB0FC95189B0E9CFEB0FCA6 +:107A6000E3E3CF80800000EBCD40801697FEB0FCB2 +:107A700089189BEE0C100AFEB0FCE0E3CF8080D4A6 +:107A8000012D6CB88BC03CD80A0000EBCD40C02162 +:107A90006DFEB0D80D1897FEB0FCE61896E0A0A7D2 +:107AA0000D300CFB5C0054FB6C002D30ABFB6B000D +:107AB0002EFB6C0030FB6C00312D660D8C580CC118 +:107AC000705807C2A0300CFB6C002C305CFB6C00C3 +:107AD0002D30BCFB6C002EFACCFFD41A9B32C91996 +:107AE0000A16AA2049CFD1E0A0749EC1685807C1E8 +:107AF00040301CFB6C002C305CFB6C002D30BCFB60 +:107B00006C002EFACCFFD41A9B32C9190A16AA208F +:107B100049CFD1E0A074882EADE3CF80C0D70380D9 +:107B2000003B84800174FC00472D001302F1EC56E9 +:107B300004008B00008001008C00010000E7D101EF +:107B40000D02F1EC56030000000100D401348CE07A +:107B5000A097D8320CE0A0A587348CE0A097F4D889 +:107B60000A0000D401348CE0A097CC320CE0A0A530 +:107B700097348CE0A097E8D80A0000D401348CE058 +:107B8000A097C0321CE0A0A56F348CE0A097DCD891 +:107B90000A0000D401348CE0A097B4321CE0A0A508 +:107BA0007F348CE0A097D0D80A0000EBCD4080183D +:107BB00097348CE0A097A60E9CE0A0A555348CE0ED +:107BC000A097C2E3CF80808001D718EBCD4080180A +:107BD00097348CE0A097960E9CE0A0A561348CE0D1 +:107BE000A097B2E3CF80808001BBB48001D75080E2 +:107BF00001BBF8D401E0A03403D80A8000F4B0D56A +:107C0000035EFDD401581CC041E0A0356FD80AE0E6 +:107C1000A0355CD80AD7038000F79C8000F77C2D44 +:107C20006C198C5EFC00002D0CB88B5EFD00002DE5 +:107C30000C198C5EFC00002CECB88B5EFD00002C57 +:107C4000EC198C5EFC00002D1C198C00DBC80013A5 +:107C500002F1EC5604008C00008001008D00010050 +:107C6000008D69010D02F1EC560300000001005E79 +:107C7000FC0000D401F96B002F5C5BC031301BC3EA +:107C8000ECD80A2D2C198C5EFC00002D2CB88B5ED4 +:107C9000FD00002CFC198C5EFC0000F96B003158D3 +:107CA0000B5E0DF92B00532FFBF96B0053F92B00E2 +:107CB00053E04B00655E5D364B2ADCB88B5EFD2BD6 +:107CC000AC198C5EFC00002BACB88B5EFD00002C68 +:107CD000CCB88B5EFD00002C8CF92B0000169C5E4E +:107CE000FC00002C8CB88B5EFD00002C7C198C5E97 +:107CF000FC00002C7CB88B5EFD0000EBCD408018B2 +:107D0000975C5BC091301BCD4E2C678E8C2FFCAEE8 +:107D10000CE3CF8080300C2C67AE0CE3CF80802C3E +:107D20006C988C5EFC0000D4015C6A5C6CE0A03353 +:107D3000D1D80A8000F5602B4CB88B5EFD00002B7B +:107D40004C198C5EFC0000EBCD40801897FEB0FB18 +:107D5000AF2ABCB887E3CF80800000D401FEB0FB1F +:107D6000A72ABC198CD802D401FEB0FBA1FE3C00AE +:107D70002EDD001302F1EC5604008D00008001009E +:107D80008E0001000018A2010D02F1EC5603000064 +:107D9000000100FF44300A1899312B12CA201BCF72 +:107DA000E1D80AEBCD40FC204D1897169614951299 +:107DB00093109240E4301CCDAFFEB0FB8BF957001E +:107DC000BCFEB0FB87F95600BEFEB0FB83F9550040 +:107DD000C0FEB0FB7FF95300C2FEB0FB7BF954003C +:107DE000C4FEB0FB77F95200C640B3FEB0FB72F997 +:107DF0005300C840C3FEB0FB6DF95300CA40D3FE28 +:107E0000B0FB68F95300CC5C845C85FAE500085C43 +:107E1000865C87BB17E06CEF24EA1C8001FEB0FC97 +:107E2000752FCDE3CF80FCEBCD40C018973006C353 +:107E30000FC02030160E9CC96FC080301CEF3B0075 +:107E40004CF80B094C18465C760E9CC36FC030A3EF +:107E5000A65C760E9CC47FC030A5A65C760C9C5CAC +:107E60007CE3CD80C00000EBCD40E0202D189730A2 +:107E700005300CBA8CE066ED88EA1680010C9C2F68 +:107E80008CFEB0FC430E9CC18FC780300CBACC3046 +:107E900018FAC9002DCD001302F1EC5604008E0033 +:107EA000008001008F00010000A719010D02F1EC14 +:107EB00056030000000100FFFC300AE06B008C302C +:107EC0005CFEB0FCB3C0B01BCCEDBC0000C0720CBB +:107ED0009C2F4CFEB0FC2C301CBA8C1B8C580CC652 +:107EE00030301B0E9C2BCCE06A43DCEA1A00007495 +:107EF0005A74BA745A5D1AE0A0A5281895EF3C0090 +:107F000044500C0C9C2F0CFEB0FC12EF3C00D458DB +:107F10000CC251EB3C0080EF3B0044163CC0D20C3D +:107F20009CFEB0FC05301CEF6C0043EB3B0081E095 +:107F30006C00FFC42CC328EF3C0044EB3B008116CF +:107F40003CC2C22FD60C9CFEB0FBF2300CEF6C0092 +:107F500043300BEB3C0080C30CC208EF3C0044E014 +:107F60004C0079C0C50C9CFEB0FBE2301CEF6C00ED +:107F700043364BE06C00FFC20CC108EF3C0044E00C +:107F80004C0064C0B42FD60C9CFEB0FBD1300CEF7B +:107F90006C0043300B378CC10C3015C0582E860C4A +:107FA0009CFEB0FBC5300B0E9CC9DE0A9C5C5C2FAE +:107FB000EDE3CD80E0000000029E001302F1EC56DC +:107FC00004008F00008001009000010000B77101E3 +:107FD0000D02F1EC56030000000100EBCD40C02083 +:107FE0001D16971A9B300AB68AB69A308BBA8BBA8E +:107FF0009CE066008C30291A9AF7D6C008305CFEE7 +:10800000B0FBFAC031300CC0D8309CBA8CBA973073 +:10801000291A9AF7D6C008305CFEB0FBEDCF40308D +:108020001C2FFDE3CD80C0EBCD40801897C7FEC06C +:10803000A0301A300B303CCAEE300B0E9CC7BEE3AA +:10804000CF9080E3CF8080EBCD40E018961697303C +:1080500005C4FCC1500C9CC50CC3700E77C04020F9 +:1080600017C060C0883F4CFEB0FB72C0483F3CFE6A +:10807000B0FB6E3015301B0C9CC77EC268E0A0A41C +:108080007729AC988C580CC2010C9CFEB0FE12C033 +:1080900050E0A0A46D294C988C0C9CC78EE06B9C82 +:1080A00040F60C1900C0E30E77C0402017C060C036 +:1080B000883F4CFEB0FB4CC0483F3CFEB0FB483014 +:1080C00015300B0C9CC51E0A9C5C5CE3CD80E0D493 +:1080D00001581BC095301A2B9CB88A00F6810013FA +:1080E00002F1EC56040090000080010091000100B4 +:1080F00000A3CC010D02F1EC56030000000100F9D1 +:10810000DBC010FEB0FAB6D80A300BF96B0047C0DE +:10811000ACD80A2B9C198C5EFC00002B8C198C5E51 +:10812000FC0000EBCD40E018971696EC0C1518C03B +:10813000C1E0A0A42F1895300B0E9CFEB0FDE429E1 +:10814000458A8CFEB0FA962B87AE86E3CF80E0801E +:1081500001D990EBCD40C0201D1897C10EC3A130AE +:1081600006300CBA0C0E9CFEB0FDB65C6CFEB0C8BE +:1081700079C200FEB0C91AE04C00C8C030FEB0C9D8 +:108180001BFEB0FD4B300B0E9CFEB0FDA90E9CFEFD +:10819000B0FDAAC0D19A8B2FFBBA0B300B0E9CCA34 +:1081A0008D1896C0519A8CE04C9C40CF15FEB0FDC6 +:1081B000295806C0509A8CE04C9C40C045300CEFCA +:1081C0006C0050300CEF6C004A300B0E9CFEB0FD82 +:1081D000872FFDE3CF80C0800023A8EBCD40F8209F +:1081E0002D18971696301CBADC3004300CBA3CBA05 +:1081F000CCBACCC0481BCB2FFBBACB1BCC58AC00A5 +:108200005A57001302F1EC5604009100008001005F +:1082100092000100003607010D02F1EC5603000048 +:10822000000100C084EF1C00661BCBF80B0A4CA1B8 +:108230009CCF42E065ED68EA1580011BCC500C0A2A +:108240009CFEB0FAAB1BCC58ACC0612F850A9CFEDB +:10825000B0FAA4CBF83003C128EF1C005CF8030A85 +:108260004CA19CC0A2E06C43DCEA1C0000F80303B4 +:108270002C78BC782C5D1C2FF35C5358B3CEE5EF03 +:108280001C0066EDBC0004C0A3EF1C0066EDBC0042 +:1082900007C053E06B13880C9CC3FF1BDC580CC653 +:1082A000A00E9CE0A03312C4D0300CFEB0C7ECC6C8 +:1082B00020FEB0C893FEB0FCC3300B0C9CFEB0FD9A +:1082C00021C118ED3C004E581CC0C1FEB0FCAC30C2 +:1082D0001B0C9CFEB0FC3CFEB0FCB2300CED6C0004 +:1082E0004E2FF45C545834C2340C9CFEB0FD0EC1C9 +:1082F00001301B0C9CFEB0FC2B9ABB2FFBBA3B3011 +:108300000B0C9CCC6EC0519ABCE04C1388CEE50C93 +:108310009CC17FC0D1ED3C004E580CC051FEB0C88E +:1083200083581C00392A001302F1EC560400920015 +:1083300000800100930001000089BC010D02F1ECF6 +:1083400056030000000100C0509ABCE04C1388CCDA +:10835000C5FEB0FC7B300CED6C004A300B0C9CFE73 +:10836000B0FCE2C1A80C9CFEB0FCE2C101301B0CC9 +:108370009CFEB0FBFF9ABB2FFBBA3B300B0C9CC999 +:10838000AEC0519ABCE04C0BB8CEE51BCC500C0AE9 +:108390009C2F0CFEB0FA143004EF5400663003C179 +:1083A00028EF1C005CF8030A4CA19CC0A2E06C43BF +:1083B000DCEA1C0000F803032C78BC781C5D1C2F41 +:1083C000F35C5358B3CEE51BCC500C2E850A9CFEB3 +:1083D000B0F9F6300CC068EE0C001B290BB6042F68 +:1083E000FC5C6C586CCF95300B0C9CCA8E300B0C1F +:1083F0009CFEB0FCED2FEDE3CF80F88000F8A48068 +:10840000002260800023B480002400EBCD40E018FF +:108410009730063005C158E06C43DCEA1C0000F8D8 +:1084200005032C78BC782C5D1CC090EF1C004030FC +:108430001BF605094B168CEF5C00402FF55C655868 +:1084400085CEB52C078E8C00CC2D001302F1EC5696 +:10845000040093000080010094000100009D94013D +:108460000D02F1EC56030000000100580CC0213051 +:10847000160C9C5C5CE3CD80E00000D421189416BF +:108480009614970C9CFEB0FD3D1895ED3C003958B4 +:108490001CC0D1E06CF1B0EA1C8001FEB0F9A23042 +:1084A0000CFEB0FC410C9B089CCCFE5805C2F0EDC4 +:1084B000B50000C052300B0C9CFEB0FC5BEDB5006B +:1084C00002C1020C9CFEB0FD3DF9D5B008E0A0470A +:1084D0009BF9D5B008E0A02B0B5817C0310C9CC7F6 +:1084E0000E0A9CE21C0018590CC0D1EE0C1518C0E5 +:1084F000305837C0810C9CFEB0FDE0F9D5B008E0E3 +:10850000A02AF6300B0C9CFEB0FC96D82AD703802C +:108510000123988000EA80EBCD40801897300CEF63 +:108520006C004FEF6C0050303BEF6B0032EF6C0093 +:108530004A301B0E9CFEB0FC09EF1C003A580CC0E0 +:1085400050301B0E9CFEB0FC59301CEF6C004E0EE0 +:108550009CFEB0F889E3CD80800000EBCD40E020A8 +:108560002D1897169530060A9C187C00E17B0013A5 +:1085700002F1EC5604009400008001009500010017 +:1085800000F72C010D02F1EC56030000000100C0C1 +:1085900040201CC270C4D8E06C2BF4EA1C0000EF31 +:1085A0002B004A581BC0A198BB2FFBB83B98BCE0DE +:1085B0004C9C40C2653016C3C898AB2FFBB82B98B3 +:1085C000BB2FFBB83B98ACE04C9C40C1A5EF3C00F6 +:1085D000502FFCEF6C0050301CEF6C004D3026C269 +:1085E00088E06C2BF4EA1C0000EF3B0032582BC0F3 +:1085F000D1989B2FFBB81B989CE04C9C40CDC4307D +:108600001B0E9CFEB0FAE6C148988B2FFBB80B9866 +:108610009B2FFBB81B988CE04C9C40CF25EF3C0077 +:108620004F2FFCEF6C004F301CEF6C004D3026EFED +:108630003C004D580CC3010A75C0402015C1C0C58F +:1086400008EF2C004A582CC0305816C4A13005EF52 +:10865000650050E06C2BF4EA1C0000B825B835EF3B +:108660003C0030580CC3D1301B0E9CFEB0FB802B5D +:1086700067AE85C368EF3C0032583CC0305816C323 +:108680000130052B17AE85E06C2BF4EA1C000000CE +:108690001958001302F1EC56040095000080010007 +:1086A000960001000062E7010D02F1EC56030000A4 +:1086B000000100B805B815C268EF3C004D580CC267 +:1086C00020EF3C004F581CC054EF3C0050581CC1D8 +:1086D00075EF3A0050EF3B004FBB1BE06CF0E8EA4F +:1086E0001C8001FEB0F8A20E9CC3BFE06C2BF4EA24 +:1086F0001C00003005B825B835B805B815300C2B6E +:1087000037AE8C0C9C2FEDE3CD80E0EBCD4080E0CC +:10871000A0039AE0A004063007C0E8F3D7C00830F1 +:108720000A300B300CE0A00777F7D7C008305CE0C8 +:10873000A007802FF75C5759E7CF15300CE06B4648 +:1087400078EA1B0000F76C01ACF74C01B8F74C015C +:10875000BCF74C01C0F74C01C4300AF74A01C8F716 +:108760004A01CCF74A01D0305AF76A01B130AAF772 +:108770006A01B0F76C01ADF76C01AEF74C01B4F7CC +:108780006A01B2F76C01AFE3CF8080E06B4678EA14 +:108790001B0000F76C01AF5EFD0000D43140924039 +:1087A000A340B6E0674678EA170000EF3C01AF58F7 +:1087B0001CC031002B91001302F1EC56040096000E +:1087C000008001009700010000DD5C010D02F1EC6A +:1087D000560300000001003005C0283055EF340179 +:1087E000AC59E4C144F3D4C0080C9A069B049CE045 +:1087F000A00724F7D4C008F9D5C008E0A0072CEFE3 +:108800003C01AC2FFCEF6C01ACC2783004C188E8AD +:108810000C1502EE0C000BF3D4C008F6FA00F47746 +:10882000FB0E0C781CE0A00709F7D4C008EE04008A +:108830000CF93C018DE0A0070F2FF45C5459D4CE05 +:108840008531D90C9A069B049CE0A006F731DBF930 +:10885000D5C008E0A007005835C104EEFC01BC2FCC +:10886000FCEF4C01BCEEFC01BCEE5C4241C143EEAE +:108870007C4240EF4C01BCC0F8EEFC01B82FFCEF8D +:108880004C01B8EEFC01B8EE5C4241C053EE7C42B4 +:1088900040EF4C01B8E0A0062D1893E0A005EE18BB +:1088A00094E0A00363EEFC01B8E0A063393008FC5B +:1088B000194034E0A06239E0A063071896EEF00199 +:1088C000C4009CE0A0632C3008FC194034E0A06296 +:1088D0002CE0A062FA189200D385001302F1EC5646 +:1088E000040097000080010098000100004AB701D1 +:1088F0000D02F1EC56030000000100EF3C01B02036 +:10890000ACC04020ACC550C748E061999AEA113F1D +:1089100019069C029BE0A05131C102089C029BE019 +:10892000A0512CC0B25835C094314CEF6C01B0A1AD +:1089300090009CE0A00446C5C8EEFC01C42FFCEFEB +:108940004C01C4EEFC01C4EE5C4241C053EE7C42DB +:1089500040EF4C01C45845C4C5E0A002A5EEFC019F +:10896000B4581CC461E04603E9C433EEF40184301A +:108970001B089CE0A050F6C032EE148000FC1342AD +:1089800020089C069BE0A050EDC0F2EEF401883078 +:108990001B089CE0A050E6C032EE148000089C0644 +:1089A0009BE0A050DFC253300CEF4C01B4C218E082 +:1089B00061999AEA113F19069C029BE0A050D2C02F +:1089C00062089C029BE0A050CDC05330ACEF6C011C +:1089D000B0C0F8EEFC01C02FFCEF4C01C0EEFC0172 +:1089E000C0EE5C4241C053EE7C4240EF4C01C030CF +:1089F00004EF6401ADEF3C01B1202C00E5580013F9 +:108A000002F1EC560400980000800100990001007A +:108A1000000A0C010D02F1EC560300000001005C9D +:108A20005C585CF9BC0205FE0C001C98CC180F00C9 +:108A30000E010C004001FA023402F05835C154EE28 +:108A4000FC01BC581CC061EF3C01B0EF6C01B2C628 +:108A50007958ACE0810165304CEF6C01B1E0A004C5 +:108A600035EF4401B8C5C9EF4401BCC599EEFC011E +:108A7000B4581CC351EF3C01B0C67D581CC301E083 +:108A80004603E9C0825806C060EF3C01AEEF6C01BE +:108A9000ADC268E04203E9C0325802CF71EEF50181 +:108AA00084301B0A9CE0A0506FC032EE158000FCA1 +:108AB0001342200A9C069BE0A05072C0F2EEF50122 +:108AC00088301B0A9CE0A0505FC032EE1580000A7F +:108AD0009C069BE0A05064CD93EF4401B4EEFC01F2 +:108AE000B4580CC191E0460191C0825806C060EFB5 +:108AF0003C01AEEF6C01ADC0F8EF3C01AE580CC0CC +:108B000060E04200FBC0325802CF31EF3C01B0C5FB +:108B1000EDEF6C01AD303CEF6C01B1EF3C01AD000D +:108B2000932F001302F1EC5604009900008001001D +:108B30009A000100009FC7010D02F1EC56030000EE +:108B4000000100EF6C01AEEF4401B8EF4401BCEF4F +:108B50004401C0EF4401C4E0A0034CCF385845C2E3 +:108B600035EEFC01B8581CC041E0A00223CEA8EEAF +:108B7000FC01B8586CE08300E6300BEEFC01B8E075 +:108B8000A002F4EF3C01AE583CC041EF4401B4C038 +:108B900058E0A00545EF4C01B4302CEF6C01B1EF6B +:108BA0004401BCCCF8EF4401B8EF3C01B058ACC470 +:108BB000B1EEFC01C458ACE08300C5300BE0A0026C +:108BC000D5EF3C01AEE0A0052BEF4C01B4EEF60171 +:108BD000D4301B0C9CE0A04FE90C9CC032EE1C80F2 +:108BE000003015EA153FC00A9BE0A04FDFE083008C +:108BF000AAEEF301D8301B069CE0A04FD7069CC01C +:108C000032EE1C80000A9BE0A04FD0E083009B3036 +:108C10001B069CE0A04FCAC032EE138000301B0C34 +:108C20009CE0A04FC3C032EE168000069C0C9BE077 +:108C3000A04FC8E0820087305CEF6C01B1CB9DEFA4 +:108C40004401C000C023001302F1EC5604009A0056 +:108C5000008001009B00010000207C010D02F1EC6E +:108C600056030000000100C7F8EF4401C4C7C8EE76 +:108C7000FC01B8586CCA42EEFC01C0581CC0A1EE01 +:108C8000FC01C4E0A002D4EF3C01B0EF6C01B2C61D +:108C9000B8585CC693EEFC01BC585CC653306CEF10 +:108CA0006C01B1EF4401B8C5F8EF3C01B0594CC5B7 +:108CB000B1EEFC01B4581CC301E04603E9C0825880 +:108CC00006C060EF3C01AEEF6C01ADC268E042034C +:108CD000E9C0325802CF71EEF50184301B0A9CE0E6 +:108CE000A04F76C032EE158000FC1342200A9C068D +:108CF0009BE0A04F79C0F2EEF50188301B0A9CE0A2 +:108D0000A04F66C032EE1580000A9C069BE0A04F83 +:108D10006BCD93EF4401B4EEFC01B4580CC151E0AB +:108D2000460191C0825806C060EF3C01AEEF6C0175 +:108D3000ADC0B8E0420191C0325802CF71EF3C01A2 +:108D4000B2C69CEF6C01AD303CEF6C01B1EF3C0161 +:108D5000ADEF6C01AEEF4401B8EF4401BCEF44014C +:108D6000C4EF4401C0EF3C006A18001302F1EC5656 +:108D700004009B00008001009C00010000345401AD +:108D80000D02F1EC5603000000010001AD581CC0BB +:108D900031301CC0A8582CC031302CC068583CC0A1 +:108DA00031303CC028300C5C5CD83280015E44809D +:108DB000015DEEEBCD40E0300B58ACC0C1E06A463F +:108DC00078EA1A0000F4FC01C8F4F601CCF4F501CD +:108DD000D0C128594CC0C1E06A4678EA1A0000F4B4 +:108DE000FC01DCF4F601E0F4F501E4C058300C308D +:108DF000063005303B5C5B583BC194E067999AEACA +:108E0000173E99E0A0048A0E9BE0A04EFFC1120C11 +:108E10009CE0A004830E9BE0A04EF8C0A20A9CE058 +:108E2000A0047C0E9BE0A04EF1C032300CC0283074 +:108E30001C5C5CE3CD80E0EBCD40F8300B58ACC05F +:108E4000D1E06C4678EA1C0000F8F501C8F8F4019E +:108E5000CCF8F301D03006C168594CC101E06C4632 +:108E600078EA1C0000F8F501DCF8F401E0F8F30101 +:108E7000E4E066999AEA16BE99C05830053004308D +:108E800003303B5C5B583BC4640C9C0076FB0013D6 +:108E900002F1EC5604009C00008001009D000100DE +:108EA000005EEC010D02F1EC560300000001000A27 +:108EB0009BE0A04EBDC112E067CCCCEA17BDCC0848 +:108EC0009C0E9BE0A04EB4C082069C0E9BE0A04E80 +:108ED000AFC032302BC3180C9C0A9BE0A04EA8C137 +:108EE00012E067CCCDEA173DCC089C0E9BE0A04E6B +:108EF00093C083069C0E9BE0A04E8EC033301BC1F6 +:108F0000C80C9C0A9BE0A04E93C092E06BCCCDEACB +:108F10001B3ECC069CE0A04E7FCF220C9C0A9BE01F +:108F2000A04E86C092E06BCCCCEA1BBECC069CE087 +:108F3000A04E7ECD03303B169C5C5CE3CD80F8E018 +:108F40006C4678EA1C0000300BF94B0168F94B01C4 +:108F50006CF94B01705EFDEBCD40FEE0674678EAB0 +:108F6000170000EEFC0174300BE0A09C91C191EE63 +:108F7000FC0178300BE0A09C8BC131EEFC017C3011 +:108F80000BE0A09C85C0D1EEFC0168EF4C0174EEB3 +:108F9000FC016CEF4C0178EEFC0170EF4C017CEEB3 +:108FA000F40168EEFB0174089CE0A04BEFCF3C009D +:108FB000B75C001302F1EC5604009D000080010034 +:108FC0009E00010000CB27010D02F1EC56030000CA +:108FD0000001001892EEF5016CEEFB01780A9CE0AE +:108FE000A04BE6CEAC1893EEF60170EEFB017C0CC4 +:108FF0009CE0A04BDDCE1C1891EEFC0180049BE0B0 +:10900000A04C44CDACEF4C0180EEFC0184069BE00B +:10901000A04C3CCD2CEF4C0184EEFC0188029BE07F +:10902000A04C34CCACEF4C0188EF440174EF450107 +:1090300078EF46017CE3CF80FED7038001D6DCE0E9 +:109040006C4678EA1C0000300BF94B0180F94B01AB +:1090500084F94B0188F94B0174F94B0178F94B0104 +:109060007C5EFDEBCD40FB205D31DBFACCFFF8E010 +:10907000A00352402CBFDCE066D70BEA163D230C60 +:109080009BE0A04DE7C032300C502C4037301B0E17 +:109090009CE0A04DD3C032EE1780000E9C0C9BE0EC +:1090A000A04DD8C032300C503C4047301B0E9CE0E5 +:1090B000A04DC4C032EE1780000E9C0C9BE0A04D6A +:1090C000C9C032300C504CE060C1F8EA101A63E0BD +:1090D00061A5DC004BED001302F1EC5604009E008C +:1090E000008001009F00010000749C010D02F1EC62 +:1090F00056030000000100EA11404CE0654000EA20 +:1091000015408FFC174034E0634678EA13000040B6 +:109110002CE0A05F2330080E99E0A05E9630080A8C +:1091200099E0A05ECF00980299E0A05E8EBB1BE69E +:10913000FC0168E0A05F12BB08E0A05D71E0A04DFB +:1091400045E74C0168C4BCE74C0168403CE0A05FC7 +:109150000530080E99E0A05E7830080A99E0A05E1C +:10916000B100980299E0A05E70BB1BE6FC016CE0C8 +:10917000A05EF4BB08E0A05D53E0A04D27E74C01E2 +:109180006CC2DCE74C016C404CE0A05EE730080E9E +:1091900099E0A05E5A30080A99E0A05E9300980218 +:1091A00099E0A05E5214961697E6FC0170E0A05E6E +:1091B000D50C980E99E0A05D33E0A04D07E74C0177 +:1091C00070C0DCE74C01702FBDE3CF80FBD703807C +:1091D000015CC880015C4E80015A24EBCD408018B0 +:1091E00097301BEA1B4334E0A04D3AC083FC1CC3FC +:1091F000B40E9BE0A04B5C00FB53001302F1EC5655 +:1092000004009F0000800100A000010000EBF701B6 +:109210000D02F1EC560300000001001897C0D8FCC5 +:109220001BC3340E9CE0A04D39C072FC1C43B40E2D +:109230009BE0A04B4F18970E9CE3CD80800000EB85 +:10924000CD40FC16923007300459FCC03331E6C0E3 +:10925000385C5C18963005C1985812C1B1EA0C11FF +:1092600018E0634678EA1300005C5CE60C002367B4 +:10927000EC0E9BE0A04B2E1897E6FC00F0089BE05C +:10928000A04B2818942FF55C550C35C0645802CEBD +:1092900051EA0C111DCE6B5C560C9CE0A04D3A18A7 +:1092A00096E0634678EA1300000E9C0C9BE0A04B0E +:1092B000DBE74C01D4089C0C9BE0A04BD5E74C01AC +:1092C000D8E3CF80FC0000E06C4678EA1C00003058 +:1092D0000BF94B01DCF94B01E0F94B01E45EFDD4E5 +:1092E00031202D300B500B3000300159FCC0433180 +:1092F000DC501CC058FE3CFF015C5C501C3007C1B8 +:1093000048400C680BE0A04AE5500C0A066DEC00E2 +:109310009BE0A04ADF1890ECFC00F000161C001344 +:1093200002F1EC560400A00000800100A100010041 +:10933000005746010D02F1EC560300000001000247 +:109340009BE0A04AD918912FF75C77E0664678EA4F +:10935000160000401C1837C2C4ED3501AC59E5C0F9 +:10936000640E15FE35FF015C55C048EE05111D5C0D +:1093700055A3650C940A046803EC05000C204C7896 +:1093800002069C049BE0A04A49E06B999AEA1B3EC6 +:1093900099E0A04C89CC83301B069CE0A04C84CC87 +:1093A00033300B049CE0A04C8BCBE258B7CBC55CB0 +:1093B000770E9CE0A04CC01897400C0E9BE0A04B91 +:1093C00065ED4C01DC009C0E9BE0A04B5FED4C0179 +:1093D000E0029C0E9BE0A04B59ED4C01E42FEDD830 +:1093E0003AD70380013AF4D431208DE06C37BDEADE +:1093F0001C3586506C505C504C300C503C502C301E +:1094000000E0674678EA170000EF3C01AC59ECC079 +:1094100034501CC03831EC501CEEFC01B8401B1815 +:109420003BC092401CF80B161F160CA15C5C5C50F4 +:109430007CC048A19C5C5C507C300CBA8CC158004C +:10944000F260001302F1EC560400A100008001005C +:10945000A200010000C28D010D02F1EC56030000D4 +:10946000000100EE1C80000A9BE0A04C2FC0C3004E +:109470009C0C9BE0A04A521890404BFC1C3F80E0A3 +:10948000A04A4C504C1B8B2FFBBA8B1B8C407B167D +:109490003CE08400A4401C1B861826FE36FF015CBD +:1094A00056ECC1FF015C51A361EE01000B7604A3F1 +:1094B00066EE0600056A0C760BE0A049C1301BE0A1 +:1094C000A04C04C0736A0C089BE0A049B91894C072 +:1094D000686A0B089CE0A049B318940E0163E30E80 +:1094E000066DEC63EBE0A049AB301BE0A04BEEC097 +:1094F000736DEC069BE0A049A31893C0686DEB0662 +:109500009CE0A0499D1893E2F200F0ECFC00F0E230 +:10951000FB00F0E0A04994301BE0A04BD7C083ECE7 +:10952000FC00F0049BE0A0498B1892C078ECFB0093 +:10953000F0049CE0A0498418923011EA1140A00880 +:109540009C029BE0A04BC2C0B3069C029BE0A04BD8 +:10955000BDC063049C029BE0A04BB8C3F26A043018 +:109560001B089C000C2C001302F1EC560400A20016 +:1095700000800100A3000100007D36010D02F1EC26 +:1095800056030000000100E0A04BB2089CC032EE80 +:109590001C8000E065CCCDEA153D4C0A9BE0A04B59 +:1095A000A7C0C3403C089BE0A049CA503C406BFCAC +:1095B0001C3F80E0A049C4506C6DE4301B089CE067 +:1095C000A04B96089CC032EE1C80000A9BE0A04B8A +:1095D0008FC0C3402C089BE0A049B2502C405BFCDC +:1095E0001C3F80E0A049AC505CECF600F0301B0C56 +:1095F0009CE0A04B7D0C9CFE93FF48C48B403C40FC +:109600006BE0A04A67EF4C01C8402C405BE0A04AE9 +:1096100061EF4C01CC404B009CE0A04A5BEF4C0159 +:10962000D02F8DD83A0000EBCD40F830073006C27D +:10963000E8EC0C111D5C5CA36CE06A4678EA1A0049 +:1096400000F40C0009F2FB00F073E3F40C030516C0 +:109650009CE0A049CB1894069C069BE0A049C61844 +:10966000930A9C0A9BE0A049C1069BE0A0496808B8 +:109670009BE0A04965E0A05CB9E0A08C23E0A04A93 +:10968000ED0E9BE0A0495C002F44001302F1EC5664 +:109690000400A30000800100A400010000691E0175 +:1096A0000D02F1EC5603000000010018972FF65C44 +:1096B000565866CD15FC1B40C00E9CE0A04A1CE32A +:1096C000CD80F8EBCD40FC300730063004C388E88D +:1096D0000C111D5C5CA36CE06A4678EA1A0000F489 +:1096E0000C0009F2FB00F073E3F40C0305169CE098 +:1096F000A0498E1892069C069BE0A0498918930AFF +:109700009C0A9BE0A04984069BE0A0492B049BE0B7 +:10971000A04928E0A05C7CE0A08BE6E0A04AB0185D +:10972000950E9C0A9BE0A0491D18970A9C0A9BE095 +:10973000A0496E0C9BE0A0491518962FF45C545874 +:1097400064CC75FC1B40C00E9CE0A049D5189BE082 +:10975000A0495E1897FC1B40C00C9CE0A049CC0EB1 +:109760009BE0A04891E3CD80FCD70380015D608041 +:1097700001BC38800139D0800136B480013848807E +:109780000135D8EBCD40E03016582CC1613017EAD6 +:10979000173F00E0654678EA150000EAFC01D40EA8 +:1097A0009BE0A04AB7C1D3EAFC01D8007651001370 +:1097B00002F1EC560400A40000800100A5000100A5 +:1097C0000003A6010D02F1EC560300000001000E9B +:1097D0009BE0A04AB1C1733006C158581CC131FC8E +:1097E00017BF00E0654678EA150000EAFC01D40ED8 +:1097F0009BE0A04AADC072EAFC01D80E9BE0A04AF3 +:10980000A7CEB30C9CE3CD80E0D70380013A64A3DC +:109810006BE06A4678EA1A0000F40B030999091410 +:109820000B77EA991AF6FB00F0992B5EFD0000A376 +:1098300069E0684678EA180000F009090C1009F39D +:109840004B0078F34A00F05EFD0000E06A4678EADB +:109850001A0000140BF76C018C5EFDEBCD408018F4 +:1098600097300BE0A04A74C072FC1CBF800E9BE0D6 +:10987000A048E018970E9CE3CD808080013A7C8060 +:10988000013760D43121FD14961297502C503B3093 +:109890000550C5371032B132D232540D8CF80B1549 +:1098A00018C04140CC2E1DD832083CC091506550A4 +:1098B000755085509550A550B5300CC0A82FF6189E +:1098C0009B1A9CE0A0061ECEA73FFCCEDBA1AC00FD +:1098D000679A001302F1EC560400A5000080010015 +:1098E000A600010000966D010D02F1EC5603000088 +:1098F000000100189BA3AB0D9A2FF6F4C90020CFEE +:10990000902039C0D02089C0602029C0702039C083 +:10991000C1C088A1BC5C7CCEEB169CCECBA3BCCFD7 +:10992000BBA5AC5C7CCE7BE04A002AC0E16E0A7429 +:109930000A50EA6E092FC98F09580AC0475C3A508D +:10994000EA169C2FF6C15850E5C0E840EAE069FFEE +:10995000FFEA197FFF123AC06030A9F409034B23D4 +:109960000B50EB2FF60D8B3D0A160A58AACEF30DBD +:109970008BE04B002EC0403FFB50DBC2280D9B2FDD +:10998000F6E04B002AC0916E0B760B50DB6E0B2F6E +:10999000CB8F0B2FF6C15850D5C0E840DAE069FFF5 +:1099A000FFEA197FFF123AC06030A9F409034B2384 +:1099B0000B50DB2FF60D8B3D0A160A58AACEF3FB8F +:1099C0005C003C0D8BE06CF1B8EA1C8001E0A099D2 +:1099D00009C0200D3CFB6C003E5C5CE04C0068C0A4 +:1099E000910D8BE04B0068C051362CFB6C003EC0E3 +:1099F000A8E04C0042F5001302F1EC560400A6006A +:109A000000800100A70001000029D6010D02F1EC41 +:109A100056030000000100006CC0810D8CE04C007A +:109A20006CC041FB60003E2FF6FACCFFC0505C0DCD +:109A30003B320CF6CA0025C2D021CAE080008F203C +:109A40004AE083016D203AE0830089210AE080002A +:109A5000B5209AE0800083202AE0800156201AE099 +:109A60008000F0E088015C204AC783201AE0800073 +:109A7000E9205AC3E0201AE08000A0201AC270201A +:109A80003AC0E0202AE0800099203AE0800096C4A5 +:109A900069FACCFFC0406BF80B0B04C4F96E0C786C +:109AA0000C504C6E0B2FCB8F0B40DA580AC057E08E +:109AB000A098B2189BC098300BE0A09873C04040AB +:109AC0004B182BC02840DB507BC3B96E0C780A3092 +:109AD0000BBB1B6E0C2FCC8F0CBB0AE61B0000BB14 +:109AE0001BFACCFFC0504C378B240CC90DC299FB1C +:109AF0003C003E262CC280206CC120202CC1D020EE +:109B00002CC060205CC190209CC0F0C22840CC6E6C +:109B10000B760B970C6E0C00D662001302F1EC561C +:109B20000400A70000800100A800010000BE3D0164 +:109B30000D02F1EC560300000001002FCC8F0CC188 +:109B40002940CC6E0B760BB60CCF8B40CC6E0B76CF +:109B50000B970C6E0C2FCC8F0CC05940CAF40B1411 +:109B60001F6E0C780CB91BCE9B40CC6E0B760BB6DF +:109B70008CCF1B40CC6E0B760B970CCDFBFB3A00C9 +:109B80003EE04A004C6E0AB5082F8A8F0ABB19F2D4 +:109B90000A1501C072FACCFFC0406AF80A0B02C174 +:109BA00038FB1A003CEDBA0001C072FACCFFC0408D +:109BB0006AF80A0B01C088A19AC092FACAFFC04095 +:109BC00069F4090B0C406A2FFA506AFACAFFC040C8 +:109BD0006C180A504A1A9CCD8DCC58FB3C003EE0D4 +:109BE0004C006CC0516E0A15083009C0D8003CC04A +:109BF00080E04C006AC0506E0A15083009C0486EFB +:109C00000AB5082F8A8F0ABB19E04C0068C0315C86 +:109C100078C0C8E04C0062C0315C58C078E04C00AD +:109C200074C040E04C007AC0313009BB19FB1C0005 +:109C30003CA58CC742BB0858085C29009715001347 +:109C400002F1EC560400A80000800100A900010008 +:109C500000FE86010D02F1EC56030000000100C772 +:109C600000169CA5BCE04C0078C6B1330CFACAFFC4 +:109C7000C04069F4090B0C406A2FFA506AFACCFF15 +:109C8000C0F80A0B0BC5A8FB3A003E262AC0E0200C +:109C90006AC130202AC250202AC270205AC2102025 +:109CA0003AC190206AC100C2686E09F2CAFFFC8FF7 +:109CB0000A72085C68C2486E09F2CAFFFC8F0A7219 +:109CC000085C88C1D86E09F2CAFFFC8F0A7208309E +:109CD00009C1886E09F2CAFFFC8F0A7208C1086EBA +:109CE0000AB5098F0AC0E86E09F2CAFFFC8F0A7232 +:109CF00008C0686E09F2CAFFFC8F0A7208F00914E6 +:109D00001FBB1958085C29C074FACCFFC0406AF820 +:109D10000A0B02C138FB1A003CEDBA0001C072FA0E +:109D2000CCFFC0406AF80A0B01C088A19AC092FA21 +:109D3000CAFFC04069F4090B0C406A2FFA506AFA56 +:109D4000CAFFC0406C180A504A1A9CCF4A6E0C7861 +:109D50000CFACBFFC0406AF60A0B0C6E0C2FCC003D +:109D60003447001302F1EC560400A9000080010002 +:109D7000AA000100006B4D010D02F1EC560300003A +:109D80000001008F0CC108FACCFFC0406AF80A0B32 +:109D900004406A2FFA506AF60C1518C080FACCFFFE +:109DA000C0F80A0B0B406B2FFB506B40EB406C185C +:109DB0001B409C181B407C181B40AC181B408C1887 +:109DC0001B40B31623FB1C003CA39CC073320A0645 +:109DD0009B1A9CC40CFE90FDD4406AFACBFFC01ABB +:109DE0009CE0A003F7FE91FDCC330A409B1A9CC374 +:109DF0002CFE90FDC6407A404B1A9CE0A003EAFE80 +:109E000091FDBF330A40AB1A9CC25CFE90FDB94085 +:109E10008A404B407C180B1A9CE0A003DBFE91FDAE +:109E2000B0330A40BB1A9CC16CFE90FDAAFB1C001B +:109E30003CA39CFE92FD8E320A069B1A9CC0BCFE7F +:109E400091FD88FE9FFD9D8001D8EC8001D8FC80AB +:109E500001D888D4A1189716963005C0282FF50C84 +:109E600035C094301AFACBFFF90E9CE0A003B2CFB4 +:109E700070D8AADAAA0000D431189016957853E069 +:109E80004B006F00039A001302F1EC560400AA0085 +:109E900000800100AB00010000D4F6010D02F1ECDE +:109EA00056030000000100C0313082C088169CA516 +:109EB000BCE04C007830A2F9B2001033C4A10A14FF +:109EC000961697E0450064C040E0450069C07158AF +:109ED0000A5C2BC0445C375C365C1758065C27C0B4 +:109EE000F160DC580CC0C15882C3B1E11C003CA534 +:109EF0008CC37233B4330CE76C003BC328E8C10059 +:109F00000120140C9A0E9B0498E409141FE0A095FC +:109F1000112D085C58E048003AC045EACCFF5118C2 +:109F2000080601A2880C9A0E9B0498E409141FE00D +:109F3000A0950014961697580A5C2BC040604C02FE +:109F40003CCDE35882C0D1E11C003CA58CC09203FB +:109F50008CE04C0030C0502014330CE6040B0CE8AD +:109F60000B113C817B0803814360DC183BC09418D3 +:109F70002B819BE11C003CA5CCE15C003CD83A580D +:109F80000CC117E11C003CE21C0014590CC0B1606C +:109F9000EA606C181A609C181AF40B01045814C07B +:109FA000258194D83AD70300A456001302F1EC5649 +:109FB0000400AB0000800100AC00010000C0DE0125 +:109FC0000D02F1EC560300000001008001D58880ED +:109FD00001D588D43114961697189330043005EAC9 +:109FE000154024C158EDB30000C0920C9A0E9B0896 +:109FF000980A99E0A0581314961697A153089A0A44 +:10A000009B08980A99E0A0580A149416955803CE14 +:10A01000B10C9A0E9BD832D43120DD18921693FAE7 +:10A02000C6FFF4B90AFAEB00040695A5B536170E7B +:10A0300035C0C078DC580CC037306CC068C061E0F7 +:10A04000450067C031301C85DC049B1A9CE0A09160 +:10A0500005189A39F90609E06BF064EA1B800130B3 +:10A0600038582CC0E1857859A9F7BB02FC644A1422 +:10A0700098303C173910C9201CE080016ECFBB58C6 +:10A080001CC105857859A9F7BB03F8F7BB02F46436 +:10A090004A1498303C173910C9201CE080015DCF6C +:10A0A000BB33040E35C111644CB884644C2FFC855D +:10A0B0004CF8CBFFFF854B0E33378BF9BB0158B8FB +:10A0C0008B646C2FEC856C580AC05100A0500013B3 +:10A0D00002F1EC560400AC0000800100AD0001006C +:10A0E00000AA66010D02F1EC5603000000010030E9 +:10A0F00007300CBA0CC3B9FAC0FFF3300830090EB0 +:10A1000035E081009164D75807F7B707FFF9B70624 +:10A11000215C87EEC1FFFFA504FAEA0004E0A05825 +:10A1200039C032EE158000FAE500049A0B204BBAD4 +:10A130000B300CFB6C000C2FF6C0282F965811C268 +:10A14000F5FAEA000430183009E0A05821C2833142 +:10A15000CBFACCFFFCE0A085DDFAEA0004E0A058D1 +:10A1600044189520715811C0B5E0A058581498169D +:10A1700099FAEA0004E0A0561BFAEB00042F96308F +:10A180007CC058F7D5C0040CFBA5455815C0352038 +:10A190001CCF97201CCD36300B0CFBCFCB0C20FAFC +:10A1A000C6FFF30E30E00717505C87C3460037C088 +:10A1B00094FACCFFF40E0C199C588CC03530FCC0BE +:10A1C00028300C0E9BC0282017201BFACAFFF4165B +:10A1D0000A1599F8091800CF8058FCC041F2CCFF4D +:10A1E000FFB49C580BC06720162FF79A0B2FCB009B +:10A1F000525D001302F1EC560400AD000080010036 +:10A20000AE000100003FAD010D02F1EC560300006D +:10A21000000100BA0B5C870E9CC0D8EC0C070A2D1D +:10A220000A5C5AE04A003AC045E6C9FF3A120AEC15 +:10A230000C0B0A201CCF3764DC580CE08700AAEE18 +:10A24000CC000185DCCA58FAEA0004BFDBFAEB0057 +:10A25000049A0BE06C7597B93BE07C86A0F60C0C79 +:10A260000ABA0AF9DAB010F80C1107E069AC08EA8A +:10A27000198000581CC055FAEA00045D19C0D85C6A +:10A280003C300A300BEA1B3FF05D1914981699FA1E +:10A29000EA0004E0A05724FAEB000436610235C05E +:10A2A000419A062F66C028306664DC18065946F9C4 +:10A2B000B60413330CFB6C000CFAC7FFF35816C23C +:10A2C000B5FAEA0004E0A0579E18992F87308C3029 +:10A2D000ABF20B0D0A1499F6C8FFD00EF8201CCF74 +:10A2E000812F8720865816CEB5FAEA0004E0A057E1 +:10A2F0008AE0A057B314981699FAEA0004E0A05532 +:10A30000693008E069D784EA194197E0A056ABFAB2 +:10A31000EB00040067F0001302F1EC560400AE00FD +:10A3200000800100AF000100008016010D02F1EC79 +:10A3300056030000000100CD7B0E20FAC6FFF3C0DB +:10A340006820109A0B201BBA0B2FF60D8C083CCFFF +:10A35000900235C0419A072FF7C048E04500655F7D +:10A360000764DC18075C870E30E00717505C87C273 +:10A37000260037C084EC07070CE04C0035C03533AD +:10A380009CC028330C0E9BC0282017201BEC0B0709 +:10A3900009F8091800CFA0E04C0039C051F2CCFFF9 +:10A3A000FFEC0B0B0C580BC06720162FF79A0B2FE6 +:10A3B000FBBA0B9A08F3D7B0100C9A069B049CC109 +:10A3C000AC2F3DD83AD7038001CE8C80015DA080B0 +:10A3D000015D9C8001B92080015DF680015E2A80CC +:10A3E000015CC880015DEE80015E44800159BC8043 +:10A3F000015C4ED431203D189316971496109C663C +:10A40000D85819C0643019E0663FD2EA168000A51A +:10A41000BB330232EE366A143BC0B03674083BE000 +:10A420008100995BCCE085009B103CE08400982F74 +:10A43000FC143BC0C0E71B008A18001302F1EC5665 +:10A440000400AF0000800100B000010000907E0118 +:10A450000D02F1EC56030000000100003CA58BC08A +:10A46000431039F20817505C8C1818F9B8060066CA +:10A470004A667714075C8C581CC2E4AE82667B2F58 +:10A48000FB877B5818C054E71B003CA58BC0726645 +:10A490007BF40B0B0E667B2FFB877BF80B110016F2 +:10A4A00038C034109C5C3C5C8CF80B110087AB18F6 +:10A4B000081238F00917505C898789129B667C184E +:10A4C0000A149E5809C0500D3C201B1CCCCFD11043 +:10A4D0002987B9CC38F8091900C1D4129B0E9458B9 +:10A4E00009C0500D3A201B08CACFD1667B120B87DA +:10A4F0007B182987A95818C054E71C003CA58CC0BC +:10A5000082664C667BF80B0B0E668C2FFC878C8763 +:10A51000B8CA48189A0C9B0E92580CC05017342099 +:10A520001A04C4CFD1667B180B877B18195818C042 +:10A5300054E71B003CA58BC082664B667AF60A0B7B +:10A540000E667B2FFB877B5C891238F00917505C05 +:10A55000891806664B667C180B129C0095DD00136B +:10A5600002F1EC560400B00000800100B1000100CF +:10A570000084C3010D02F1EC560300000001001637 +:10A580009E5809C0500D3A201C1CCACFD1667C12BF +:10A590000C877C102987A9C738E0470061C12137A3 +:10A5A00007C1481039C064E71B003CA58BF20817AF +:10A5B000202018F9B8060008373657F9B70145C00A +:10A5C00058E0470041F9B70050664A0D3B6674F405 +:10A5D000040B0B667B2FFB877B5818C054E71B00CE +:10A5E0003CA58BC1D2667BF40B0B0E667B2FFB87E1 +:10A5F0007B5818C15520195C891238F00917505C36 +:10A6000089160A129B14945809C0500D3E201B084D +:10A61000CECFD1667B120B877B102987A9664B664C +:10A620007616060CC7580CC04632BB0CCBC048325D +:10A63000DB0CCB5C3C3004C08830ABE0A09370FAFC +:10A64000040B0A169C2FF45C8C581CCF745824C041 +:10A6500064A5B7E0470065C0210CC25804C0910C46 +:10A66000C2C09820141A9CF804070C2D0C0CCC586E +:10A6700014CF94664B667C180B16168786E71C0071 +:10A680006761001302F1EC560400B1000080010084 +:10A69000B2000100001108010D02F1EC56030000A8 +:10A6A000000100003CE21C0014590CC0F1666B660E +:10A6B0007C180B66AC180B668C180B66BC160C6607 +:10A6C000EB163CC034162C879C2FDDD83AD703807C +:10A6D00001D89CD4211897783C6E2A5D1A8F3CC013 +:10A6E000506ECC2FFC8FCCD82A3FFCD8220000D44F +:10A6F00021189616951497300CC02820175807C0BB +:10A70000500B3B0C9CCE7FCFA7D822EBCD4080E0F6 +:10A71000674E98EA170000FEB0E9648F0CE0A09342 +:10A720008B8F1CE3CF80808001D990EBCD40E0215E +:10A73000FD18971495360CE0A08490322CE0A0848C +:10A740008D321CE0A0848AE0660008EA1680803022 +:10A750001937CA300B0C9CE0A05D10A36550053082 +:10A7600019304A1A9B0C9CE0A05DFA300CC0780F9F +:10A770000BFACAFFFCF40C092B2FFC59ECC044E087 +:10A78000477FFCCF613019378AFACBFFFC2FC60C0C +:10A790009CE0A05DE5321CE0A08482322CE0A08425 +:10A7A0007F360C00B0ED001302F1EC560400B2004D +:10A7B00000800100B300010000AEB3010D02F1EC16 +:10A7C00056030000000100E0A0847CC008D703808D +:10A7D000016CD480016EB8D421FEB0EC9BE0A021C6 +:10A7E000E9E0A088551897E0664E98EA1600006CDC +:10A7F0001CF9150068296CF92400005807C0803046 +:10A800000CE0A0930DF9D5C010FEB0E997301B6C99 +:10A810000CFEB0ED216C0C300BF96B004D301BFEC3 +:10A82000B0ECD66C0CF93B0047580BC050301BFE07 +:10A83000B0EEDEC2782C7C198C581CC131E06CF172 +:10A84000E0EA1C8001FEB0E9FB300CFEB0EC9A6C33 +:10A850000B6C1CFEB0EF28300B6C0CFEB0ED1AC177 +:10A86000186C1C294C988C5C8CE0A08C41E0A00FEB +:10A87000B1303A6C0B6C1CFEB0F0306C0CFEB0EEDC +:10A88000CF5807C0606C1CF955006C292CB884FEA9 +:10A89000B0EC34D82AD70380008C488000F6E880DA +:10A8A00001C3C48001D9548000867080008D04806B +:10A8B00000912480008CB8800091DC8001CC248041 +:10A8C00000D30880008C30009554001302F1EC5640 +:10A8D0000400B30000800100B400010000BA9B0135 +:10A8E0000D02F1EC56030000000100EBCD4080E0CA +:10A8F000674E98EA170000301B6E0CFEB0EC8E6EAF +:10A900000CFEB0ED5FC070304CE0A037BD304CE0C5 +:10A91000A01B2E6E1CF91B006C580BC081300A6EF8 +:10A920000BFEB0EFED6E0CFEB0EE8C346CE0A0834D +:10A93000B9301BFE7C2400E0A0812E346CE0A083A3 +:10A94000D3E3CF8080D70380008D2C80008ED4800D +:10A950000123988000EA808000941080009154EBDD +:10A96000CD40C0201DE0674E98EA1700006E0C3005 +:10A970001BF96B00523006300BBA0B301BFEB0EBEC +:10A98000316E0CFEB0EC2E583CC1409A8B2FFBBAB6 +:10A990000B301B6E0CFEB0F0231896C0B19A8CE001 +:10A9A0004C9C40CEF5E06CEFD4EA1C8001FEB0E98F +:10A9B000595806C0519A8CE04C9C40C225E06C0569 +:10A9C00084EA1C0000300BF95B002EF95B0030F9C3 +:10A9D0005B0034F95B0036F96B002B78FAB48B78A6 +:10A9E000FAB49B300AB91BF8EB0008003D010013D4 +:10A9F00002F1EC560400B40000800100B500010033 +:10AA000000D023010D02F1EC56030000000100F814 +:10AA1000EB0010F8EB0018F8EB00202D8CB80BB809 +:10AA2000ABC058300C6E0B2B1BB68C300B6E0CFE73 +:10AA3000B0EBE6300B6E0CFEB0EAE66E0CFEB0EC4E +:10AA400027581CC0D1E06CEFD4EA1C80012F8CFE8B +:10AA5000B0E91A303B6E0CFEB0EC40C058301B6EB3 +:10AA60000CFEB0EC3B346CE0A0832E302BFE7C243B +:10AA700000E0A080A3346CE0A08348300C6E0B2A69 +:10AA8000EBB68C2FFDE3CF80C0D70380008CF48021 +:10AA90000094F080008CEC80008AF480008D7C8033 +:10AAA00000877480008DC8D401FEB0E7D1301BFE52 +:10AAB000B0EBDC346CE0A08307304BFE7C2400E07C +:10AAC000A0807C346CE0A08321D80AD401FEB0E7DA +:10AAD000BF301BFEB0EBCA346CE0A082F5305BFEE9 +:10AAE0007C2400E0A0806A346CE0A0830FD80A8048 +:10AAF00000853C80008D588001BBB48001B6A880E1 +:10AB000001BBF8EBCD4080F80B1518C030582C0075 +:10AB1000B4F9001302F1EC560400B5000080010006 +:10AB2000B60001000045E8010D02F1EC56030000FB +:10AB3000000100C2C1E0670584EA170000EF3C0095 +:10AB40002D582CC0D1301BE06C4E98EA1C000078C8 +:10AB50000CFEB0EB7FE06C00FFEF6C002D300CEFD3 +:10AB60005C002EEF5C0030EF5C0032EF6C002B30AD +:10AB70000A300BAF1BEEEB0008EEEB0010EEEB0023 +:10AB800018EEEB00202D87AE0CAEACE3CF808080BA +:10AB9000008D1CD421E0670584EA170000EF1B003C +:10ABA0002E169A2FFAEF5A002EEE0B0B0C0F8C2C50 +:10ABB0002C5C5CE04C004EF9BC0201FE0C001C98C1 +:10ABC000CC180F009E064606460646064606460078 +:10ABD000E20646015A01BC064606460568064604DA +:10ABE0007602EC0326035A038E064603D003D004F4 +:10ABF0000204020434064606460646064606460693 +:10AC000046064606460646064606460646064606E4 +:10AC100046064606460646064606460646064602D8 +:10AC20008C04A004BC055202BC04F6050C053C06CD +:10AC30004606460048D3001302F1EC560400B60065 +:10AC400000800100B700010000FA53010D02F1EC91 +:10AC50005603000000010006460646064606460664 +:10AC60004606460646064606460646064606460684 +:10AC70004606460646064606460646064606460674 +:10AC8000460240EF1C002E582CE08102DA0F9CEFA8 +:10AC90005C0032EF1C0032581CC065E06C0080EF95 +:10ACA0006C0028C048370CEF6C0028301BE06C4E5D +:10ACB00098EA1C0000780C2CECB88BEF6B002B3062 +:10ACC0000C2D27AE0CD82AEF1C002E582CE0810248 +:10ACD000B80F9CFEB0BE20189B305A3026C2308F71 +:10ACE000FB19BBA96B19CC180BEF5B0034EF5A00B2 +:10ACF00036EF66002CE0644E98EA140000680CFE03 +:10AD0000B0EAE0581CC171302B680CFEB0EAE06E6E +:10AD1000FC19ACF9DCC004EF5C0038300CEF5C00CF +:10AD20003AC0980E9C2C0C8FFC300CEF5C0034EF7A +:10AD30005A0036EF66002B300C2D27AE0CD82AE0D7 +:10AD4000644E98EA140000300B680CFEB0EA746898 +:10AD50000CF92B004A581B009D7C001302F1EC56A5 +:10AD60000400B70000800100B8000100006DB801C8 +:10AD70000D02F1EC56030000000100C041302BF938 +:10AD80006B004A303BEF6B002B3005EF55002EFE79 +:10AD9000B0EAAA582CE0810266EF1C003A2FFCEFC3 +:10ADA0005C003AEF1C0038EF1B003AF60C1900E08B +:10ADB000810259303B680CFEB0EA9CEF5500382CFC +:10ADC00067AE05D82AEF1C002E582CC265EF1C0078 +:10ADD00032580CC0510F9CEF5C0032C088EF1C0051 +:10ADE00032EF1B002E163CE081023DEF1C0032EFDB +:10ADF0001B002EF80B1900E0810235EF1B0032FE1C +:10AE00003BFF025C5B0E9C2FECFEB0BDC7C09137D0 +:10AE10000CEF6C0028C098300C2CE7AE0CD82AE060 +:10AE20006C0080EF6C0028302CE06B4E98EA1B0021 +:10AE300000760B2CEBB68C3005EF550032EF550049 +:10AE40002E301C2D57AE8CD82A3005E06C1981EAC3 +:10AE50001C00DA8B0CFEB0B3C98FFC301BEF5B001B +:10AE6000363026EF66002BE0644E98EA1400006846 +:10AE70000CF966004A303AF96A0032001FE5001307 +:10AE800002F1EC560400B80000800100B900010096 +:10AE9000002D03010D02F1EC56030000000100EF4C +:10AEA00055002E2D37AE8B300BFEB0E9E9300A305D +:10AEB0005B306CE0A06510D82AFEB0B3B58FFC30D3 +:10AEC0003BEF5B00363026EF66002BE0644E98EADD +:10AED000140000680CF966004AF96B0032300B2D43 +:10AEE00027AE0BFEB0E9CCD82AFEB0B47B8FFC3085 +:10AEF00026EF560036EF66002BE0644E98EA140009 +:10AF000000680CF966004A303BF96B0032300B2DBB +:10AF100027AE0BFEB0E9B4D82AE06C0080EF6C00DD +:10AF200028301CEF6C002BE0644E98EA1400006897 +:10AF30000C302BF96B0032301BFEB0E9E3300B68AC +:10AF40000CFEB0E8DB300CE0A08FCA300C2D27AE31 +:10AF50000CD82AE06C0080EF6C0028301CEF6C00ED +:10AF60002BE0644E98EA140000680C302BF96B005B +:10AF700032301BFEB0E9C6301B680CFEB0E8BE30B4 +:10AF80000C2D27AE0CD82AE06C0080EF6C00283026 +:10AF90001CEF6C002BE0644E98EA140000680C0073 +:10AFA000CE63001302F1EC560400B90000800100EA +:10AFB000BA00010000B8C8010D02F1EC5603000010 +:10AFC000000100302BF96B003230052D5CB8853064 +:10AFD0000A305B306CE0A064912D27AE05D82AE0E2 +:10AFE0006C0080EF6C0028301BEF6B002BE0644E90 +:10AFF00098EA140000680C302AF96A0032F96B00F4 +:10B000002B2D4C198C580CC091300A305B306CE001 +:10B01000A064CE301CE0A08F75300C2D27AE0CD86C +:10B020002AE06C0080EF6C0028301CEF6C002BE0F5 +:10B03000644E98EA140000680C302BF96B00320F54 +:10B040008BE04B00D65F0B2D4CB88B300C2D27AE10 +:10B050000CD82AE06C0080EF6C0028301CEF6C00EC +:10B060002BE0644E98EA140000680C302BF96B005A +:10B07000320F8BE04B00D95F0B2D3CB88B300C2D81 +:10B0800027AE0CD82AE06C0080EF6C0028301CEF53 +:10B090006C002B302CE06B4E98EA1B0000760B2CDA +:10B0A000EBB68CE06C43DCEA1C0000786CF90B001A +:10B0B00028581BCB35300B2D8CB80B300A304B3059 +:10B0C0006CE0A0009809001302F1EC560400BA00ED +:10B0D00000800100BB000100000773010D02F1ECCC +:10B0E000560300000001006475CAABE06C0080EFFD +:10B0F0006C0028301CEF6C002BE0644E98EA1400C2 +:10B1000000680C302BF96B0032FEB0EC51300C2D86 +:10B1100027AE0CD82AEF1C002E585CE08100D90E17 +:10B120009C2FFCFEB0B2B0C0F1370CEF6C0028C011 +:10B13000F8EF1C002E583CE08100CB0E9C2FFCFE4B +:10B14000B0B2BACF30E06C0080EF6C0028302CE059 +:10B150006B4E98EA1B0000760B2CEBB68C301CEF84 +:10B160006C002B300C2D27AE0CD82AEF1C002E586B +:10B170004CE08100AE0E9C2FFCFEB0B2CBCE41CD98 +:10B180005BFEB0B2E78FFC303BEF5B00363026EF62 +:10B1900066002BE0644E98EA140000680CF9660023 +:10B1A0004AF96B0032300B2D27AE0BFEB0E88CD87D +:10B1B0002AEF1C002E582CE081008B0E9C2FFCFEE9 +:10B1C000B0B2E6CC11CB2BEF1C002E582CE0810046 +:10B1D000800E9C2FFCFEB0B2FDCB61CA7BFEB0B3EB +:10B1E000D9C2F0E02C00C4006FAD001302F1EC56A0 +:10B1F0000400BB0000800100BC00010000135B01E3 +:10B200000D02F1EC56030000000100C0A0204CC06C +:10B2100040207CC140C1C8FEB0BBBE8FFCC1F8FE5F +:10B22000B0B3D68FFC198B580BC041E06B00C4B88B +:10B230008B6EFC199CEF5C0034C118E06C00CF6E83 +:10B24000FBB68CFEB0B39E6EFBB69CC088E06C0073 +:10B25000C46EFBB68C300C6EFBB69C303CEF6C00C1 +:10B260002CC0B8E06C00CF6EFBB68C355C6EFBB6C4 +:10B270009C303CEF6C002C6EFC199B580BC0D130FD +:10B280002CE06B4E98EA1B0000760B2B6BB68C30D3 +:10B290000CEF5C0034C0D8198CE04C00CFCF1030DC +:10B2A0001CE06B4E98EA1B0000760B2B6BB68C30C3 +:10B2B00026EF560036300CEF5C002E2D57AE86E0A0 +:10B2C000644E98EA140000301B680CFEB0E866304B +:10B2D0000B680CFEB0E80A300CFEB0B35BD82A371E +:10B2E0000CEF6C0028301CEF6C002B300C2D27AEBF +:10B2F0000CD82A800033BC80008D6880008D74805B +:10B3000000341C8000206C800020840046B70013AD +:10B3100002F1EC560400BC0000800100BD000100F9 +:10B320000079E3010D02F1EC5603000000010080FA +:10B3300000224080008D6080008B58800183348023 +:10B3400001D93C800183E8800093C48000209C8068 +:10B350000020CC8000212880002168800021A4806A +:10B360000021E8800023A880003388800023C0806B +:10B3700000237480008D8C80002384EBCD40C0308E +:10B3800006E0670584EA170000EF3C002B581CC05C +:10B3900051311CEF6C002BC108EF3C002B582CC026 +:10B3A00051312CEF6C002BC088EF3C002B583CC077 +:10B3B00041313CEF6C002BEF3C002B211CC0602086 +:10B3C0001CC1C0201CC580C998EF360028321CEF74 +:10B3D0006C002BE06C4E98EA1C0000780CF93B00E6 +:10B3E00032582BE0810090303B2CECB88B300C6E47 +:10B3F000FBB68C6EFBB69CC868EF1C0036581CC3AD +:10B4000075EF1C0030EF1B0036F60C1900C7B26E4A +:10B41000FCEF1B0030F80B0706EF1C00302FFCEF91 +:10B420005C0030EF1B0036F60C1900C6C1300C0072 +:10B430003DB8001302F1EC560400BD00008001008D +:10B44000BE00010000EC28010D02F1EC56030000E3 +:10B45000000100EF5C0030EF5C0036323CEF6C0026 +:10B460002BE06C4E98EA1C0000780C2B6CF92B003A +:10B4700000582BC5A1301BE06C4E98EA1C000078E8 +:10B480000CFEB0E757300C6EFBB68C6EFBB69CC45E +:10B49000C8323C2D57AE8CC488EF1C0030EF1B0027 +:10B4A00034F60C1900C412EF3C002C582CC1216E4C +:10B4B000FBEF1C0030180B17D6E06C4E98EA1C000E +:10B4C00000780CFEB0E752C0E1302CEF6C002DC0CC +:10B4D000A8EF3C002C583CC0616EFBEF1C003018FC +:10B4E0000B17A6EF1C00302FFCEF5C0030EF1B00A9 +:10B4F00034F60C1900C191300CEF5C0030EF5C00A9 +:10B5000034323CEF6C002BE06C4E98EA1C00007863 +:10B510000C2B6CF92B0000582BC071CADB300CEFE0 +:10B520005C00302CC7AE0C0C9C5C5CE3CD80C08012 +:10B53000008CDC80008D14EBCD4080303A300B3035 +:10B540000CE0A05A47582CC041302CE3CD8080E05D +:10B550006CF034004BDC001302F1EC560400BE002A +:10B5600000800100BF000100005393010D02F1ECC7 +:10B5700056030000000100EA1C8001FEB0E43830F0 +:10B580000CE0672FE4EA170000EF6C0071EF5C003D +:10B5900072FB3A000EFB3B000DFB3C000CE0A00DE3 +:10B5A0005D300A300B0E9930ACB32A201CCFE193EA +:10B5B0000AE3CF9080D703800087748000D9E05ED3 +:10B5C000FF0000EBCD40E020EDFACCFFF4E0A05A04 +:10B5D0008D303B303CE0A05ABDC041FC1C447A5049 +:10B5E000BCE0672FE4EA1700006FDC29ECF92500C6 +:10B5F000005C75F9D5B008E0A062B41896E0A00C24 +:10B60000DFEF6C006CEF2C006C582CC0815825C00B +:10B6100061301B303CE0A05A6FC098581CC0715874 +:10B6200015C051302B303CE0A05A66FACCFFF478BC +:10B630000A500A781A501A782A502AF7D6C01040B1 +:10B64000BCE0A00C4F28876E0C0C0C8F0C2F2DE348 +:10B65000CF90E080017470800174D8800184E8800C +:10B6600000D9448001747C8000D868EBCD408020F4 +:10B670002DE0672FE4EA170008D4001302F1EC561E +:10B680000400BF0000800100C00001000052FB0167 +:10B690000D02F1EC560300000001000000EF2C0049 +:10B6A00054580CC4551A9CE0A08C1C0E9C2ACC1A31 +:10B6B0009B3069172A18BA2029CFD1EF2C0055EFFB +:10B6C0002B006EF60C1800C291EF2B0070EF2A00D1 +:10B6D0006E160AEF6A006EEF2B006EE04B003DC065 +:10B6E00065EF2B006E23CBEF6B006E300BEF4B0042 +:10B6F0007829B7EF2B00005BFBC051301C2FEDE326 +:10B70000CD8080161CE0A04EE0BFDBE0A04EC35C05 +:10B710006C581CCF44300CCF3BEF2B005DF60C185F +:10B7200000CFA0EEEA00542A47AF1BCF5B6FECE0DE +:10B730006B7740EA1B001B163CCEE5CE0B0000EBFE +:10B74000CD40FC3007C0682926ED2C00000A0CAC67 +:10B750008CE0662FE4EA160000ED24006E5C67586A +:10B7600007C1D5ED27005508175C67ED2500705817 +:10B7700007CEB4F9D7B008E0A04EA7BFDB149216ED +:10B78000930A9CE0A04EA104980699E0A04E58CEE2 +:10B790001208252926AC853007CDCB007D980013F3 +:10B7A00002F1EC560400C00000800100C10001005D +:10B7B000003E57010D02F1EC56030000000100E0CD +:10B7C00044003DC0652926ED2C000023CCAC8CE361 +:10B7D000CF80FC80015E2AEBCD4080E0672FE4EA59 +:10B7E000170000301CEF6C006C300CEF6C006D3FEC +:10B7F000FBEF6B005430FBEF6B006F314BEF6B00D6 +:10B8000070EF6C0071EF5C0072E0A08C29EF4C00CF +:10B8100074E06BBEE4EA1B8000F94B0068E06BBF8C +:10B8200048EA1B8000F94B006CE06BBF4CEA1B80C0 +:10B8300000F94B0070E06BC198EA1B8000F94B00E7 +:10B8400074E06BC638EA1B8000F94B0078E3CF90B8 +:10B8500080D7038001D99CD42122AD18943006FAF8 +:10B86000CCFFACE0A00BD8E0672FE4EA1700000E95 +:10B870009C1A9B3549190A16AA2049CFD1300B30A2 +:10B880001CCCDC1895423C6EEBE0A03A07E0A04DE2 +:10B89000C93008FC194024E0A04D3BE0A04E0DFB50 +:10B8A0001A009AEF1B0046142B5C64C2715805C045 +:10B8B000515C7CC0315C5BC0E030165805C0B00004 +:10B8C000C7B9001302F1EC560400C100008001006A +:10B8D000C200010000AB9C010D02F1EC5603000018 +:10B8E0000001006FFC0A0CEF4C007C301CE06B3058 +:10B8F00064EA1B0000B68C300CEF4C00783FFCEF84 +:10B900006C0054EEEA0054EEEB005CEEEA0054EEFC +:10B91000EB0064EF2C006FEF6C006EC1D8C39DC1CB +:10B9200040300CEF6C006DEEEA0054EEEB005C1A58 +:10B930009CE0A08AFB0E9C2ACC1A9B3069172A181F +:10B94000BA2029CFD1C21FCC8EC060EEEA0054EEDF +:10B95000EB00643016EF3C0071581CC0C1EF1C00B6 +:10B9600072580CC0313016C068300CEF6C0071EFAB +:10B970005C00725C665816C041300CEF4C00786F6A +:10B98000DCF93B0061580BC0B1300BEF4B00782A5B +:10B990000C198C581CC025C24C300CC0280C9C2D96 +:10B9A0006DD8228001D844EBCD4080300CE06B2F65 +:10B9B000E4EA1B0000F74C0078303A303BE0A05836 +:10B9C000511897C0EC0E9CE3CD8080D401303A3002 +:10B9D0003B301CE0A05846D802D7038001737CD4CA +:10B9E00001215D0085C4001302F1EC560400C20081 +:10B9F00000800100C3000100001427010D02F1ECDA +:10BA0000560300000001001A9CE0A00B291A9BE0DD +:10BA10006A2FE4EA1A0000149E30ACB709BD282052 +:10BA20001CCFD176089D082EBDDA0AE06C3064EA9E +:10BA30001C0000198C5EFCE06C2FE4EA1C0000790D +:10BA4000FC5EFC300CE06B2FE4EA1B0000F74C00BE +:10BA50007C5EFD300CE06B3064EA1B0000B68C5E4F +:10BA6000FD0000EBCD40C0215D18963007581BC08B +:10BA7000F1E0A00BDD418B163CC053418718275CD9 +:10BA800057C8A8280C418718275C57C8581A9CE04B +:10BA9000A00AE65C5658A6F9B602001E06ED36006E +:10BAA0000AFE06001F7A071927350743515F6D40CC +:10BAB0000C418B163CC053400C41871827C6C84028 +:10BAC0000BE06C9680EA1C0098180B418716272F14 +:10BAD000F7C628401B41970E3BC0331627C5C8E068 +:10BAE0006C9680EA1C0098180B16272FF7C5484063 +:10BAF0002B41A70E3BC0331627C4E8E06C9680EAC2 +:10BB00001C0098180B162700820B001302F1EC564C +:10BB10000400C30000800100C400010000000F0108 +:10BB20000D02F1EC560300000001002FF7C468403D +:10BB30003B41B70E3BC0331627C408E06C9680EA41 +:10BB40001C0098180B16272FF7C388404B41C70ECF +:10BB50003BC0331627C328E06C9680EA1C00981877 +:10BB60000B16272FF7C2A8405B41D70E3BC03316F8 +:10BB700027C248E06C9680EA1C0098180B16272F05 +:10BB8000F7C1C8406B41E70E3BC0331627C168E0E0 +:10BB90006C9680EA1C0098180B16272FF7C0E84017 +:10BBA0007B41F70E3BC0331627C088E06C9680EAD5 +:10BBB0001C0098180B16272FF70E9C2EBDE3CD8086 +:10BBC000C0D7038000DB24301CE06B2FE4EA1B00AD +:10BBD00000293BB68C5EFDE06C2FE4EA1C000029D6 +:10BBE0003C198C5EFC0000D401E0A00A5BD80A80FE +:10BBF00000D974E06B2FE4EA1B0000F75C007230A0 +:10BC00001C28FBB68C5EFD5EFD0000EBCD40C02124 +:10BC10005D1A9CE0A00A36408642070C9C0E9BE011 +:10BC2000A03AB8C0630C9C0E9BE0A000BFE40013D8 +:10BC300002F1EC560400C40000800100C5000100C0 +:10BC4000006AB7010D02F1EC560300000001003854 +:10BC50006DC0B8E06C2400EA1C49740E9BE0A0386B +:10BC6000650C9BE0A038D0E0A04C24E068147BEA8F +:10BC70001847AEE0697AE1EA193F74E0A04A7CE037 +:10BC8000A03A50E0A04C163008FC194059E0A04BF7 +:10BC900088E0A04C5AE0A03AEDE0A04C0BE068141C +:10BCA0007BEA1847AEE0697AE1EA193F84E0A04BED +:10BCB00078E068432DEA18EB1CE06936E2EA193FA8 +:10BCC0001AE0A04A59E0A03A2D2EBDE3CD80C0EB8A +:10BCD000CD40C0215D1A9CE0A009E640D642570C39 +:10BCE0009C0E9BE0A03A68C0630C9C0E9BE0A038C1 +:10BCF0001DC0B8E06C2400EA1C49740E9BE0A0381B +:10BD0000150C9BE0A03880E0A04BD4E068147BEADF +:10BD10001847AEE0697AE1EA193F74E0A04A2CE0E6 +:10BD2000A03A00E0A04BC63008FC194059E0A04BF7 +:10BD300038E0A04C0AE0A03A9DE0A04BBBE06814BC +:10BD40007BEA1847AEE0697AE1EA193F84E0A00097 +:10BD500044E2001302F1EC560400C500008001002B +:10BD6000C600010000FF7C010D02F1EC560300004B +:10BD70000001004B28E068432DEA18EB1CE069360F +:10BD8000E2EA193F1AE0A04A09E0A039DD2EBDE33E +:10BD9000CD80C080013A64800135D8800136B480FE +:10BDA000013B2080015A24800139D0EBCD40FE2296 +:10BDB000AD18971696FACCFFACE0A00987301B0DA2 +:10BDC0008CF80C1068EE0C0B0BE0612FE4EA11000C +:10BDD00000E33A0071303C581AC1510D89F2091044 +:10BDE000680E09B29C0D89F20910680E09B2CB5891 +:10BDF0001AC0E1E31B0072580BC0A1300BE36B00CB +:10BE000071C0680D8AF40A10680E0AB49B0D8BF697 +:10BE10000B10680E0BB6ACFC134059029C1A9B35F4 +:10BE200049190A16AA2049CFD1300B301CC51E581B +:10BE3000ACE08200EA300C0D8BF60B10680E0BB6EE +:10BE4000DC0D8CF80C10680E0C19D5029C1A9B3571 +:10BE500049190A16AA2049CFD1300B302CC39E5C59 +:10BE60005C18450D8CF80C10680E0CB8D5029C1AA5 +:10BE70009B3549002CD4001302F1EC560400C60097 +:10BE800000800100C70001000040C7010D02F1EC75 +:10BE900056030000000100190A16AA2049CFD1302C +:10BEA0000B303CC28E0D8BF60B10680E0B2F8BB631 +:10BEB0008C029C1A9B3549190A16AA2049CFD13009 +:10BEC0000B304CC18E0D8BF60B10680E0B2F7BB612 +:10BED0008C029C1A9B3549190A16AA2049CFD130E9 +:10BEE0000B305CFEB0FE080D8BF60B10680E0B2FAE +:10BEF0006BB68C029C1A9B3549190A16AA2049CFA9 +:10BF0000D1C0BFE0A04AFA30080699E0A04A6DE02F +:10BF1000A04B3F0D8BF60B10680E0B2EEBB60C42B0 +:10BF20003CE0A04AEB3008FC194024E0A04A5DE068 +:10BF3000A04B2F0D8BF60B10680E0B2ECBB68CFB87 +:10BF40001C009A0D8BF60B10680E0B2EBBB68C02E4 +:10BF50009C1A9B3549190A16AA2049CFD1C8DEE0A0 +:10BF6000A04ACC30080699E0A04A3FE0A04B110D52 +:10BF70008BF60B10680E0B2EABB68C425CE0A04A21 +:10BF8000BD3008FC194024E0A04A2FE0A04B010D71 +:10BF90008BF60B10680E0B0094DC001302F1EC56CC +:10BFA0000400C70000800100C800010000D72C0178 +:10BFB0000D02F1EC560300000001002E9BB68C022E +:10BFC0009C1A9B3549190A16AA2049CFD1300B304B +:10BFD0006CFEB0FDA30D8BF60B10680E0B2F5BB63D +:10BFE0008C029C1A9B3549190A16AA2049CFD130D8 +:10BFF0000B307CFEB0FD920D8BF60B10680E0B2FF4 +:10C000004BB68C029C1A9B3549190A16AA2049CFB7 +:10C01000D1300B308CFEB0FD810D8BF60B10680E0D +:10C020000B2F3BB68C1A9C354A030B18AB204ACF1A +:10C03000D1300B309CFEB0FD710D8BF60B106816E5 +:10C04000072F27AE8C0D8C2FFCAC8CCFF8E06C004A +:10C05000800D8BF60B10680E0BB6DC029C1A9B351C +:10C0600049190A16AA2049CFD1300B302CFEB0FD59 +:10C07000550D8BF60B10680E0B972C029C1A9B35F6 +:10C0800049190A16AA2049CFD1300B303CFEB0FD29 +:10C09000450D8BF60B10680E0B973C029C1A9B35D6 +:10C0A00049190A16AA2049CFD1300B304CFEB0FDF9 +:10C0B000350D8BF60B10680E0B974C0006B900136C +:10C0C00002F1EC560400C80000800100C900010024 +:10C0D000009797010D02F1EC5603000000010002E9 +:10C0E0009C1A9B3549190A16AA2049CFD1300B302A +:10C0F0005CFEB0FD250D8BF60B10680E0B975C02F5 +:10C100009C1A9B3549190A16AA2049CFD1C29EE034 +:10C11000A04A1830080699E0A0498BE0A04A590DC2 +:10C120008BF60B10680E0B97BC423CE0A04A0A301D +:10C1300008FC194024E0A0497CE0A04A4E0D8BF693 +:10C140000B10680E0B2D0BB68CFB1C009A0D8BF69A +:10C150000B10680E0B2CFBB68C029C1A9B354919F0 +:10C160000A16AA2049CFD1FEB0FDACE0A049EA14DE +:10C17000941695E0681EB8EA18EB85E069B851EAB4 +:10C18000193F9EE0A049FCC123E062999AEA129906 +:10C1900099E0639999EA133FB9089A0A9B049806B3 +:10C1A00099E0A049EFC03204940695300AFC1B4088 +:10C1B0002408980A99E0A0493CE0A04A0E0D8BF6AD +:10C1C0000B10680E0B2CEBB60C425CE0A049BA30A9 +:10C1D00008FC194024E0A0492CE0A049FE0D8B008A +:10C1E000C133001302F1EC560400C90000800100C5 +:10C1F000CA00010000025C010D02F1EC56030000D0 +:10C20000000100F60B10680E0B2CCBB68C029C1AAA +:10C210009B3549190A16AA2049CFD1300B306CFE44 +:10C22000B0FCA00D8BF60B10680E0B976C029C1ADD +:10C230009B3549190A16AA2049CFD1300B307CFE14 +:10C24000B0FC900D8BF60B10680E0B977C029C1ABD +:10C250009B3549190A16AA2049CFD1300B308CFEE4 +:10C26000B0FC800D8BF60B10680E0B978C1A9C356A +:10C270004A030B18AB204ACFD1300B309CFEB0FCE8 +:10C28000710D8BF60B106816078F9C0D8C2FFCAC74 +:10C290008CFEB0FC372D6DE3CF80FE8000D954803A +:10C2A000015DEE80015D9C80015DA080015D60808C +:10C2B000015C4E80015DF6202DE06BF1C8EA1B8029 +:10C2C00001B70ABB1BF92B00005C5BC090201BE090 +:10C2D000800101201BE08001C0E08F02A2E06B2BF7 +:10C2E00004EA1B0000760B284B178B588BF9BB0216 +:10C2F000001E0BF73B000AFE0B001F061D36516A9D +:10C30000859EB900BD54001302F1EC560400CA002A +:10C3100000800100CB00010000BDE7010D02F1EC3F +:10C3200056030000000100782BF92A0004F60A04E5 +:10C330001BBA0B782BF92A0004F60A001B2ECB96A9 +:10C340000BBA1B782BF92A0004F60A001B2D8B96DA +:10C350000BBA2BCB98782BF92A0004F60A001B2E77 +:10C36000CB960BBA0B782BF92A0004F60A041BF6BD +:10C370000B11FFBA1B782BF92A0004F60A001B2DBB +:10C380008B960BBA2BCA08782BF92A0004F60A04FC +:10C390001BF60B11FFBA0B782BF92A0004F60A00E2 +:10C3A0001B2ECB960BF60B11FFBA1B782BF92A002C +:10C3B00004F60A001B2D8B960BBA2BC858782BF964 +:10C3C0002A0004F60A001B2ECB960BF60B11FFBABF +:10C3D0000B782BF92A0004F60A041BBA1B782BF9F8 +:10C3E0002A0004F60A001B2D8B960BBA2BC6C878C0 +:10C3F0002BF92A0004F60A041BF60B11FFBA0B787E +:10C400002BF92A0004F60A001B2ECB960BBA1B78D8 +:10C410002BF92A0004F60A001B2D8B960BF60B1144 +:10C42000FFBA2BC518782B00F2D3001302F1EC569B +:10C430000400CB0000800100CC00010000A9CF0166 +:10C440000D02F1EC56030000000100F92A0004F689 +:10C450000A001B2ECB960BBA0B782BF92A0004F698 +:10C460000A041BBA1B782BF92A0004F60A001B2DBC +:10C470008B960BF60B11FFBA2BC388782BF92A0089 +:10C4800004F60A041BBA0B782BF92A0004F60A00FA +:10C490001B2ECB960BF60B11FFBA1B782BF92A003B +:10C4A00004F60A001B2D8B960BF60B11FFBA2BC15D +:10C4B000D8782BF92A0004F60A001B2ECB960BF62F +:10C4C0000B11FFBA0B782BF92A0004F60A041BF6AD +:10C4D0000B11FFBA1B782BF92A0004F60A001B2D5A +:10C4E0008B960BF60B11FFBA2B9A0B782AF92900C1 +:10C4F00004F4090A1B9A1B782AF9290004F409009C +:10C500001A2ECAB40B9A2B782A2FCCF9290000F4E2 +:10C5100009001A2D8AB40BCA79E06B2B04EA1B00C0 +:10C5200000760B283B178B588BF9BB02002FEBFED4 +:10C530000B001FC0CBC078C1E8C368C4D8C658C7B9 +:10C54000C8C948782BF92A0004F60A005F90001346 +:10C5500002F1EC560400CC0000800100CD00010087 +:10C5600000C377010D02F1EC56030000000100004A +:10C570001B2ECB960BBA0B782BF92A0004F60A0473 +:10C580001B5C3BBA1B782BF92A0004F60A001B2D12 +:10C590008B960BBA2BCBCB782BF92A0004F60A0426 +:10C5A0001B5C3BBA0B782BF92A0004F60A001B2E01 +:10C5B000CB960B5C3BBA1B782BF92A0004F60A00D9 +:10C5C0001B2D8B960BBA2BCA3B782BF92A0004F64D +:10C5D0000A001B2ECB960B5C3BBA0B782BF92A007A +:10C5E00004F60A041BBA1B782BF92A0004F60A0089 +:10C5F0001B2D8B960BBA2BC8BB782BF92A0004F69F +:10C600000A041B5C3BBA0B782BF92A0004F60A00DB +:10C610001B2ECB960BBA1B782BF92A0004F60A00C6 +:10C620001B2D8B960B5C3BBA2BC72B782BF92A0062 +:10C6300004F60A001B2ECB960BBA0B782BF92A00B6 +:10C6400004F60A041BBA1B782BF92A0004F60A0028 +:10C650001B2D8B960B5C3BBA2BC5AB782BF92A00B4 +:10C6600004F60A041BBA0B782BF92A0004F60A0018 +:10C67000BAB3001302F1EC560400CD0000800100B3 +:10C68000CE0001000056BC010D02F1EC5603000083 +:10C69000000100001B2ECB960B5C3BBA1B782BF9DC +:10C6A0002A0004F60A001B2D8B960B5C3BBA2BC4A8 +:10C6B0001B782BF92A0004F60A001B2ECB960B5C84 +:10C6C0003BBA0B782BF92A0004F60A041B5C3BBA30 +:10C6D0001B782BF92A0004F60A001B2D8B960B5CA5 +:10C6E0003BBA2BC27BE06B2B04EA1B0000760B28C5 +:10C6F0002B178B588BF9BB02001E0BF73B000AFE71 +:10C700000B001F061C334B627A91A9782BF92A0083 +:10C7100004F60A041BBA0B782BF92A0004F60A0067 +:10C720001B965BBA1B782BF92A0004F60A001B2E15 +:10C73000CB960BBA2BCA68782BF92A0004F60A00AC +:10C740001B965BBA0B782BF92A0004F60A041B5CD3 +:10C750003BBA1B782BF92A0004F60A001B2ECB9655 +:10C760000BBA2BC8F8782BF92A0004F60A041B5CD4 +:10C770003BBA0B782BF92A0004F60A001B965B5C87 +:10C780003BBA1B782BF92A0004F60A001B2ECB9625 +:10C790000BBA2B008DA0001302F1EC560400CE0062 +:10C7A00000800100CF00010000E907010D02F1EC5B +:10C7B00056030000000100C778782BF92A0004F620 +:10C7C0000A001B965B5C3BBA0B782BF92A0004F637 +:10C7D0000A041BBA1B782BF92A0004F60A001B2E48 +:10C7E000CB960BBA2BC608782BF92A0004F60A045C +:10C7F0001B5C3BBA0B782BF92A0004F60A001B9647 +:10C800005BBA1B782BF92A0004F60A001B2ECB9684 +:10C810000B5C3BBA2BC488782BF92A0004F60A007B +:10C820001B965BBA0B782BF92A0004F60A041BBA94 +:10C830001B782BF92A0004F60A001B2ECB960B5C02 +:10C840003BBA2BC318782BF92A0004F60A041BBA4A +:10C850000B782BF92A0004F60A001B965B5C3BBAA6 +:10C860001B782BF92A0004F60A001B2ECB960B5CD2 +:10C870003BBA2BC198782BF92A0004F60A001B96C4 +:10C880005B5C3BBA0B782BF92A0004F60A041B5CAC +:10C890003BBA1B782BF92A0004F60A001B2ECB9614 +:10C8A0000B5C3BBA2B9A0B782AF9290004F4090A8D +:10C8B0001B9A1B782AF9290028B0001302F1EC56C4 +:10C8C0000400CF0000800100D000010000F96F01DA +:10C8D0000D02F1EC560300000001000004F4090011 +:10C8E0001AB45B9A2B782A2FCCF9290000F409009E +:10C8F0001A2ECAB40B2FED5EFF0000EBCD40FC20DA +:10C900004D1897E06CF074EA1C8001B90ABB1B2F2C +:10C910008CB90AFAEB0008EF2C00005C5C589CF91B +:10C92000BC02042FECFE0C001FC098C598CF68CD48 +:10C9300018C499C489C9D8C119C3896E2CEF2B00BA +:10C9400004F80B041CBA0C6E2CEF2B0004F80B003F +:10C950001C2ECC980CBA1C6E2B2FC7EF2A0000F6A9 +:10C960000A001B2D8B960BBA2B9A0ABA4ABA5CBAEC +:10C970006B300CC0F8F80B1501FACAFFF8160A94D0 +:10C980008AE04A8001C0451A99F20B0A0A2FFC5C22 +:10C990005C583CCF15E06C2B04EA1C000078069A2A +:10C9A0000CE0A0352DE06BF660EA1B3A1CE0A033EA +:10C9B000478D0C9A1CE0A03523E06BF660EA1B3A29 +:10C9C0001CE0A0333D8D1C9A2CE0A03519E06BF6DD +:10C9D00060EA1B3A1CE0A033338D2C00167600135E +:10C9E00002F1EC560400D00000800100D1000100EB +:10C9F00000EDD2010D02F1EC56030000000100CF62 +:10CA0000486E2CEF2B0004F80B041CBA0C6E2CEFB4 +:10CA10002B0004F80B001C2ECC9805BA156E2C2F99 +:10CA2000C7EF2B0000F80B001C2D8C9807BA27E0ED +:10CA30006C2B04EA1C00007806E06296A6EA121D40 +:10CA4000A1E063044FEA133F349A0CE0A034EAE01B +:10CA5000A0460804980699E0A0457BE0A0343A8DF2 +:10CA60003C0A9CE0A034DEE0A045FC04980699E076 +:10CA7000A0456FE0A0342E8D4C0E9CE0A034D2E097 +:10CA8000A045F004980699E0A04563E0A034228D0B +:10CA90005CCAB8E06C2B04EA1C00007806E0641461 +:10CAA0007BEA1447AEE0657AE1EA153F846E2CEF2D +:10CAB0002B0004F80B041CE0A034B4E0A045D2081D +:10CAC000980A99E0A04545E0A034048DFC6E2C2F17 +:10CAD000C7EF2B0000F80B001C985CE0A034A2E02C +:10CAE000A045C008980A99E0A04533E0A033F2EDD4 +:10CAF0004C0040C7A8E06C2B04EA1C00007806003C +:10CB00003CAD001302F1EC560400D100008001009E +:10CB1000D2000100007819010D02F1EC560300006B +:10CB20000001006E2CEF2B0004F80B041CA96CE034 +:10CB3000A0348A8DCC6E2C2FC7EF2B0000F80B0091 +:10CB40001C985CE0A034806CCBE0A032478DCC6CAC +:10CB5000CBE06CD70AEA1C3C23E0A032958DCCC513 +:10CB600068E06C2B04EA1C000078066E2CEF2B00AA +:10CB700004F80B041CED5C004A6E2CEF2B0004F84B +:10CB80000B001C2ECC980CED5C004C6E2C2FC7EFCC +:10CB90002B0000F80B001C2D8C980C2B26AC0CC322 +:10CBA00068E06C2B04EA1C000078066E2CEF2B006A +:10CBB00004F80B041CED5C00506E2CEF2B0004F805 +:10CBC0000B001C985CED5C00526E2CEF2B0004F8FF +:10CBD0000B001C2ECC980CED5C00546E2C2FC7EF74 +:10CBE0002B0000F80B001C2E2C980C2AA6AC0CC0B5 +:10CBF000E86E2C2FC7EF2B0000F80B041CE06B2B0A +:10CC000004EA1B0000760B2A8BB60C2FCDE3CF90E5 +:10CC1000FCD70380015D6080015C4E800139D080CB +:10CC2000013B2000D38B001302F1EC560400D2002C +:10CC300000800100D300010000C7A2010D02F1EC49 +:10CC400056030000000100800136B480013760D433 +:10CC50002121DD300CBA9CBA8CBA9CC1180E9CFE06 +:10CC6000B0FBCE5826C0410E9CE0A024E75825C05A +:10CC7000310E9CC7AEFB2B00012FFBBA9BFB2B0098 +:10CC80000158BBE0840160FB2B0001585BCF40FBE7 +:10CC90002B000158ABCF00FB2B0001589BCEC0E00E +:10CCA0006C43DCEA1C0000FB2A0001F80A0327EFB2 +:10CCB0000C0024580CC0D4E06C2B04EA1C00007853 +:10CCC0000C294C988CEF0B0024180BEF5B002430E0 +:10CCD0000B0E9C6ECA746A5D1A1896301B0E9C6E01 +:10CCE000CA746A5D1A18955816C0305815C081EF7D +:10CCF0002C00265C5C6EBB764B5D1BCBDB5826C0E4 +:10CD0000305825CB91306BFACCFFD46EBA745A5D93 +:10CD10001ACB20FB2B0001584BC041FEB0DD0CCAE2 +:10CD2000B0EF2C00042FFCAECCEF2C0004EF3B0046 +:10CD30000CF60C1900C035300CAECC300CBA8CC2DD +:10CD400098FACCFFD4FB2A00B082001302F1EC5613 +:10CD50000400D30000800100D400010000D38A0148 +:10CD60000D02F1EC560300000001000000F80A0774 +:10CD70001BA96BFB290000F809001C199C180BFA71 +:10CD8000CCFFCCFB290000F8090A1BFACCFFCCFB36 +:10CD90002A0000F80A041C6E2BEF2A0004EF390069 +:10CDA0000CFB2E0000F20E034AF60A0A1CFB2B00B5 +:10CDB000002FFBBA8BFB2B0000EF3C0011F80B1986 +:10CDC00000FE94FF60FB2B00015C5B589BF9BB02EB +:10CDD000052FEBFE0B001FC098C278C3C8C518C949 +:10CDE00048CD5BCC1BCAD8C9F8FACCFFD4FB2A00CB +:10CDF00000F80A001C199BA96BFACCFFD4FB290090 +:10CE000000F809071C180BE06C06D0EA1C0000FBB8 +:10CE1000290000F809041C180BFACCFFCCFB2900F0 +:10CE200000F8090A1BCB3BFACCFFD4FB2A0000F820 +:10CE30000A001C199BA96BFACCFFD4FB290000F84F +:10CE400009071C180BFACCFFCCFB290000F8090AD3 +:10CE50001BC9DBFACCFFD4FB2A0000F80A001C191E +:10CE60009BA96BFACCFFD4FB29000000BE920013F3 +:10CE700002F1EC560400D40000800100D50001004E +:10CE800000B932010D02F1EC56030000000100F878 +:10CE900009071C180BFACCFFCCFB290000F8090A83 +:10CEA0001BC87BFB2B0000580BC161FACCFFD4FBE5 +:10CEB0002A0000F80A070BA96BFACAFFD4FB2C0062 +:10CEC00000180A159C180BFACCFFCCFB290000F8BF +:10CED000090A1BC6EBFB2B0000581BC0E1FACBFF75 +:10CEE000D4FB2C0000180B179CFACBFFCCFB2900BD +:10CEF00000F6090A1CC5DBFB2B0000582BFE91FF36 +:10CF000059FACBFFD4FB2C0000180B179BA96BFA26 +:10CF1000CAFFD4FB2C0000180A15AC180BFACCFF82 +:10CF2000CCFB290000F8090A1BC43BFB240000FECF +:10CF3000B0D7CEFB2A0000F80A001CF90C00BCFA9E +:10CF4000CBFFCCF6040A1CC34BFACCFFD4FB2A005F +:10CF500000F80A070CFACBFFCCFB290000F6090AFF +:10CF60001CC27BFACCFFD4FB2A0000F80A071BA9DD +:10CF70006BFB290000F809001C199C180BFACCFF68 +:10CF8000CCFB290000F8090A1BC13BE0672B040019 +:10CF9000F931001302F1EC560400D50000800100C5 +:10CFA000D6000100002CF9010D02F1EC560300003F +:10CFB000000100EA1700006E0CF91B005E580BC060 +:10CFC00050294C988CE0A081D96E0C798B580BC1FC +:10CFD000E0300BFB5B0070FB6B004930AAFB6A0082 +:10CFE0004AFB6B004CFB6B004D302BFB6B00482960 +:10CFF0004C988CFB5C0070FACCFFB81A9B32C919B4 +:10D000000A16AA2049CFD1E0A04F542E3DDA2A803B +:10D01000011CF080008DEC8000853C8001D9C4802B +:10D020000174FCD431E06615C0EA160000ED3C0145 +:10D0300059EC0C0023ED32015AE0420020C191EC82 +:10D04000FC0464E6FB0164E0A02FA2ED4C0464EC58 +:10D05000FC0468E6FB01E4E0A02F9AED4C0468ECC8 +:10D06000FC046CE6FB0264E0A02F92ED4C046C40E3 +:10D070009CE74C0164ECFB0464E6FC0164E0A02F37 +:10D08000F51895ED45046440ACE74C01E4ECFB0475 +:10D0900068E0A02FEB1894ED44046840BCE74C0214 +:10D0A00064ECFB046CE0A02FE11897ED47046CE002 +:10D0B00042002000E91F001302F1EC560400D600E4 +:10D0C00000800100D7000100009342010D02F1EC45 +:10D0D00056030000000100C064ED3C015A2FFCED36 +:10D0E0006C015AED3C015AE04C0020C174E0A031C3 +:10D0F000EF18920A9C049BE0A03094E74C02E408ED +:10D100009C049BE0A0308EE74C03640E9C049BE0E3 +:10D11000A03088E74C03E4C248FC113FA00A9CE021 +:10D12000A0430C30080299E0A0427FE0A0313EE726 +:10D130004C02E4089CE0A0430130080299E0A042C0 +:10D1400074E0A03133E74C03640E9CE0A042F6305B +:10D15000080299E0A04269E0A03128E74C03E4ED21 +:10D160003C01592FFCED6C0159ED3C0159E04C009C +:10D1700020C041300CED6C0159D83A80013848D4B8 +:10D18000313002E06715C0EA170000EF30015A584D +:10D1900020C024D83A3001C0382FF22FF10031C41A +:10D1A000B4EF3C0159F80B1518C04131FC31EBC00C +:10D1B00078201C189B201B580BC0242E0BEE0B0054 +:10D1C00026EE0C0025EAFC0164ECFB0164E0A02ED5 +:10D1D000F1E0A042B3BFDB000962001302F1EC569C +:10D1E0000400D70000800100D80001000004A9015C +:10D1F0000D02F1EC56030000000100E0A030E81839 +:10D2000093EAFC01E4ECFB01E4E0A02EE5E0A0429F +:10D21000A7BFDBE0A030DC1894EAFC0264ECFB0260 +:10D2200064E0A02ED9E0A0429BBFDBE0A030D01884 +:10D23000963015EA153F80069C0A9BE0A03112CB80 +:10D24000F2089C0A9BE0A0310DCBA20C9C0A9BE04B +:10D25000A03108CB523002CB4B5C525952CAD5DABE +:10D260003A0000EBCD40E020DD18971696411C50A7 +:10D27000AC412C50BC413C50CCFACCFFD8780A5081 +:10D280000A781A501A782A502ACF1EE06515C0EA8B +:10D29000150000EB3C0158582CC3F1F7D6C0100E16 +:10D2A0009CE0A01DCFF7D6C010FACCFFD8FEB0BCD2 +:10D2B000E90A9CFE3CFF30E0A07F00EAFC00D05869 +:10D2C0001CC141E0A05A740A9CFE3CFF30E0A07EE5 +:10D2D000F50A9BFE3BFF30FE35FF580A9A305CB7DB +:10D2E00009B528201CCFD1C1F80A9CFE3CFF301A9A +:10D2F0009B3289190A16AA2049CFD100196400135C +:10D3000002F1EC560400D80000800100D9000100B1 +:10D31000004412010D02F1EC56030000000100C1AF +:10D320004DE0A0027BC120EB1C00DE580CC0E130B8 +:10D330001CEB6C0158E0A07DD3C088581CC061C4B0 +:10D340004FC040302CEB6C01582F3DE3CF80E08084 +:10D350000114448000528480018DB08001D6BC80CD +:10D3600001D4BCE06C15C0EA1C0000F93C01585E19 +:10D37000FC0000580C5E0DE06B15C0EA1B0000F6C7 +:10D38000FB01603549170A18AA2049CFD1254C5E08 +:10D39000FD0000EBCD4080F80A1518C111E06715BB +:10D3A000C0EA170000169CE0A030B6EF4C0150FE1A +:10D3B00037FEB40E9CE0A07E73E3CF8080581CC182 +:10D3C00011E06715C0EA170000169CE0A030A4EF3A +:10D3D0004C014CFE37FEB40E9CE0A07E61E3CF8092 +:10D3E00080582CC0C1E06715C0EA170000EF5B0150 +:10D3F00054FE37FEB40E9CE0A07E52E3CF8080D472 +:10D400002116971496E06515C0EA150000300A3021 +:10D410000B0A9830A9B12A2019CFE1910A0A9B0082 +:10D420003E97001302F1EC560400D9000080010081 +:10D43000DA00010000D1D9010D02F1EC5603000021 +:10D44000000100FE3BFB8C30083009169E30AABD5F +:10D4500028201ACFE19D080A9B2ACB169E30AABD30 +:10D4600028201ACFE19D080A9AFE3AFB8C0A9B14E9 +:10D4700094305EB709A928201ECFD10A9BFE3BFB42 +:10D480008CEB4B01600A9BFE3BFF0830083009160D +:10D490009E30AABD28201ACFE19D080A9BFE3BFEC4 +:10D4A000B4B71997280A9BFE3BFF30B719F6E9007D +:10D4B00008F6E90010F6E90018F6E900200A9BFEDC +:10D4C0003BFF58B719F6E90008F6E90010F6E90045 +:10D4D00018F6E90020E0A03031EB4C01500E9CE042 +:10D4E000A0302CEB4C014CEB560154E0A058520AF2 +:10D4F0009CFE3CFEB4E0A07DE5E06C2710EB5C00F8 +:10D500004AEB5C004C3007EB570044EB57004630C9 +:10D5100016EB660158EB670159EB67015A300CEBCB +:10D520004C0464EB4C0468EB4C046CE06C15BCEAF6 +:10D530001C00009907EB470470E0A07517EB67012A +:10D540005BEB660045C1001302F1EC560400DA0003 +:10D5500000800100DB000100006E62010D02F1ECB1 +:10D5600056030000000100015CE06CEFE4EA1C805F +:10D5700001FEB0D635D82A80013AF480018B4C8068 +:10D5800001D67C8001C524800087745EFD0000D434 +:10D590002120ADE06715C0EA170000EEF500AC41B0 +:10D5A0000C0A3CC081FB1B004AEF1A00B6143BE09A +:10D5B0008000B218255805C064E06C9681EA1C0012 +:10D5C000981805418CEEFB00CCE0A02D3B1896305E +:10D5D0000BE0A02F89C092E06C2400EA1C49740C77 +:10D5E0009BE0A02D9D1896416CEEFB00C4E0A02DA1 +:10D5F000291894300BE0A02F77C092E06C2400EA49 +:10D600001C4974089BE0A02D8B1894417CE0A01D60 +:10D61000A3EF3B015C201BC040201BC3C0C498FA91 +:10D62000CCFFC41A9B3289190A16AA2049CFD10E01 +:10D63000982AC83009089A0C9B0A9CC72CEF3C0119 +:10D640005B0A0CEF6C015BEF3C015B583CC315FAC5 +:10D65000CCFFC41A9B3289190A16AA2049CFD10ED1 +:10D66000983009EEFA008800AD24001302F1EC5660 +:10D670000400DB0000800100DC000100007A4A01A8 +:10D680000D02F1EC560300000001006FDB6F5CC57A +:10D69000ACEF3C015B2FFCEF6C015B0E9C2ACC30A5 +:10D6A0000A300B189830A9B12A2019CFE1910A301D +:10D6B0002CEF6C015CC0F8FACBFFC41A9A328817C1 +:10D6C0000914A92048CFD10E981899089A0C9B0AE2 +:10D6D0009CC39CFB1C004A580CC1110E9C2ACC30E8 +:10D6E0000A300B189830A9B12A2019CFE1910A30DD +:10D6F0000CEF6C015B301CEF6C015CFACAFFC40ECE +:10D700009CFE3CFF58189E305BB509BD28201BCFFE +:10D71000D1EF4701600E9BFE3BFB8C0E9C169E30AA +:10D72000AAB909BD28201ACFD178089D080E9CFE01 +:10D730003CFB8CEF4C01602F6DD82A800135D880DE +:10D740000116ECEBCD40F820DD16941493129510E1 +:10D7500097FB16005AEF5600480E9A0A9BCD3CE004 +:10D760006C15BCEA1C0000780C580CC1116E8C08BA +:10D770009BE0A02CE78F8C6E8CE0A0024F8F8CEF8B +:10D78000560046FB1C0058EF5C0044001F58001375 +:10D7900002F1EC560400DC0000800100DD00010015 +:10D7A0000010F2010D02F1EC56030000000100C46C +:10D7B00038E06C15C0EA1C0000FE3CFEB4780A504C +:10D7C000AA781A50BA782A50CAFACCFFB41A9B32F7 +:10D7D00089190A16AA2049CFD10A9CC54D6E8BE043 +:10D7E000A02CC28F8C6E8CE0A0022A8F8C301B0A7A +:10D7F0009CE0A02E91C1135836C071306CEF5C00D4 +:10D8000046EF5C0044C1885846C161308CEF5C0033 +:10D8100046EF5C0044C1085836C071307CEF5C00B4 +:10D8200046EF5C0044C0885846C061309CEF5C0005 +:10D8300046EF5C0044419C8FCC6EDC069BE0A02C44 +:10D84000938FDC6EDCCE5D8FDC41BCE0A03FE2E07C +:10D85000681EB8EA18EB85E069B851EA193FAEE0F6 +:10D86000A03F4FE0A02E0E8FEC6EEC301BEA1B4168 +:10D87000C8E0A02E51C043FC1C41C88FEC415CEFB6 +:10D880004C0040300CEF1B0046580BC031EF4C00F1 +:10D89000408FFC417CEF4C0050FB1C00622B47AEDC +:10D8A0000C2F3DE3CF80F8D401E0A07D89E04C004F +:10D8B000C84E001302F1EC560400DD0000800100A8 +:10D8C000DE000100008539010D02F1EC5603000075 +:10D8D0000001000BB95F2CD802D7038001D90CEBF3 +:10D8E000CD40C01896169C1497EF1B0048583BC1BA +:10D8F00051301BE0A02E22C0936E4C0C0C8F4C6E4E +:10D900004CCC9D8F4CE3CF80C06E5C0C0C8F5C6E5A +:10D910005CCC1D8F5CE3CF80C0EF1B0048584BC12F +:10D9200031301BE0A02E0AC0936E6C0C0C8F6C6E15 +:10D930006CCB1D8F6CE3CF80C06E7C0C0C8F7C6E2B +:10D940007CCA9D8F7CE3CF80C00000EBCD40F818EF +:10D9500096169514976E0C0C0C8F0C6E0CC9BD8F1F +:10D960000C0A9CE0A03F68BFDB30183009E0A03F04 +:10D9700081C4D3E06415C0EA140000E8FC01045837 +:10D980005CC392E06315BCEA130000660B580BC33E +:10D9900021584CC1A16E3B180B8F3B6E3CC7BD8F0D +:10D9A0003C0E9A0A9BE8FC0104C9BF6E3C0C0C8F2C +:10D9B0003C6E3CC70D8F3C0E9A0A9B0C9CC91FC540 +:10D9C0008C301C870CC1082BA78E8C584CC070E87B +:10D9D000FC00FC001330001302F1EC560400DE00E2 +:10D9E00000800100DF000100003A82010D02F1EC2D +:10D9F000560300000001000C0CE94C00FCC068E874 +:10DA0000FC01000C0CE94C0100E8FC01040C0CE9E1 +:10DA10004C0104E3CF80F86E3C0C0C8F3C6E3CC490 +:10DA2000CD8F3C0E9A0A9B0C9CC6DFE3CF80F8EFAB +:10DA30001C0046203CC040201CC090C0F86E1C0C4E +:10DA40000C8F1C6E1CC39D8F1CC0E86E2C0C0C8FA1 +:10DA50002C6E2CC32D8F2CC0786E1C0C0C8F1C6E62 +:10DA60001CC2BD8F1CE06415C0EA140000E8FC0174 +:10DA700004585CC042580CC020C19CC0CC300CE0A3 +:10DA80006B15BCEA1B0000970CE3CF80F8D703802E +:10DA9000015D9CE06C15C0EA1C0000300BF94B00E6 +:10DAA000FCF94B0100F94B01045EFDE06C15C0EA86 +:10DAB0001C0000F8FB00FC781A160A991AF8FB0102 +:10DAC000002F8C780A160A990A5EFDD4311893301B +:10DAD0000230053004FB1C0032203CC040201CC337 +:10DAE00070C6A8411CE0A03EB914961697E068994C +:10DAF0009AEA189999E06900E4CB001302F1EC5618 +:10DB00000400DF0000800100E000010000A5E90141 +:10DB10000D02F1EC560300000001009999EA193F4B +:10DB2000B9E0A03E243008FC19400CE0A03D0AE01A +:10DB3000A02CDE1895300B069CE0A02D2FC4E30628 +:10DB40009CE0A03E9D14901691E06ACCCDEA1ACCE0 +:10DB5000CCE06BCCCCEA1B3FFC0C980E99E0A03ECD +:10DB60000600980299E0A03E02E0A02CC11894C3E0 +:10DB700058411CE0A03E8414961697E068999AEAF2 +:10DB8000189999E0699999EA193FC9E0A03DEF30E9 +:10DB900008FC19400CE0A03CD5E0A02CA918953059 +:10DBA0000B069CE0A02CFAC193069CE0A03E6814F2 +:10DBB000901691E06ACCCDEA1ACCCCE06BCCCCEAE2 +:10DBC0001B3FEC0C980E99E0A03DD100980299E023 +:10DBD000A03DCDE0A02C8C1894411C300BE0A07B24 +:10DBE0000DC19040B7300B0E9CE0A07B07C1300EFA +:10DBF0009CE0A03E453008FC19404EE0A03DB71423 +:10DC0000981699300AFC1B3FF0E0A03DEDE0A02CF7 +:10DC10006F1892049CE0A03E33149200C18100135F +:10DC200002F1EC560400E00000800100E100010078 +:10DC3000001958010D02F1EC560300000001001616 +:10DC400093413CE0A03E2E149616970A9C089BE058 +:10DC5000A02AD2E0A03E26E068147BEA1847AEE096 +:10DC6000697AE1EA193F74E0A03D930C980E99E0BF +:10DC7000A03D8F04980699E0A03D8BE0A02C4AD8E7 +:10DC800032D70380015A2480013A7C8001D6DC809F +:10DC9000015CC880015D6080015C4E800139D0EB81 +:10DCA000CD40801897E06B2401EA1B4974E0A02C5A +:10DCB0007BC093E06C2400EA1CC9740E9BE0A02A90 +:10DCC0009B18970E9CE3CD80800000EBCD40801820 +:10DCD00097E06B2401EA1B4974E0A02C65C093E037 +:10DCE0006C2400EA1CC9740E9BE0A02A8518970ECC +:10DCF0009CE3CD8080D70380013A64800136B4E094 +:10DD00006B9681EA1B0098163C5E3CE06B6980EAEA +:10DD10001BFF67160C5EFC3FFB201C5C5C598CF9FA +:10DD2000BC02031E0C19EC180F1A1A1A1C1A1A1A24 +:10DD30001A1A1A1A1A1A1A1A1A1A1C1C1C1C1C0053 +:10DD4000DF3C001302F1EC560400E100008001000A +:10DD5000E2000100008C93010D02F1EC560300007B +:10DD60000001001A1A301B169C5C6C5EFC0000302F +:10DD70000B201C5C5C58DCF9BC02011E0C19EC1871 +:10DD80000F10121012121212121010121010003076 +:10DD90001B169C5C6C5EFC3FFB599CF9BC02121E7E +:10DDA0000C19EC180F1C1C201C1C201C1C202020F3 +:10DDB0001C242028281C282A2A2A2A2A1C20003031 +:10DDC0002BC068301BC048304BC028303B169C5CD1 +:10DDD0006C5EFCEBCD40C0E0672BFCEA170000E076 +:10DDE000A07B8A8F0CE0A056F7E0A07B8B8F1C30C5 +:10DDF00006C0D85986C071E06ABD68EA1A8001F78A +:10DE00004A031C787C5D1C2FF65C665996E0840002 +:10DE1000DB6E1BEC0C1505160C300AB88AB89A3F5D +:10DE2000F9B8A9B8BAB83AB8CA5836C081E06AC1D8 +:10DE300018EA1A8000F74A007CCE5B5816C071E0E1 +:10DE40006AD21CEA1A800197FACDDB5826C081E01D +:10DE50006ACD64EA1A8001F74A005CCD4B5806C0CF +:10DE6000B05926004A6D001302F1EC560400E2009E +:10DE700000800100E3000100003328010D02F1ECF5 +:10DE800056030000000100C0905936C0705946C0CA +:10DE9000505956C0305966C201E06BD9B0EA1B80B8 +:10DEA00001992BE06BD9BCEA1B8001993BE06BD94F +:10DEB000D8EA1B8001994BE06BD9D4EA1B80019909 +:10DEC0005BE06BD9CCEA1B8001996BE06BD9BCEAB3 +:10DED0001B8001997BCA9B5846C081E06ACF38EA13 +:10DEE0001A8001F74A009CCA0B5856C081E06A7735 +:10DEF00090EA1A8001F74A00BCC97B5866C081E0ED +:10DF00006AD034EA1A8001F74A00DCC8EB5876C0C0 +:10DF100081E06AB1E8EA1A8001F74A00FCC85B5860 +:10DF200086C081E06A8EFCEA1A8001F74A011CC7AC +:10DF3000CB5896C081E06A6374EA1A8001F74A01FF +:10DF40003CC73B58A6C081E06ACFE0EA1A8001F7DF +:10DF50004A015CC6AB58B6C081E06AD0DCEA1A80E0 +:10DF600001F74A017CC61B58C6C081E06ACDC8EAE9 +:10DF70001A8001F74A019CC58B58D6C081E06AAD72 +:10DF8000F8EA1A8001F74A00C9F6001302F1EC56CC +:10DF90000400E30000800100E4000100002700010C +:10DFA0000D02F1EC5603000000010001BCC4FB5857 +:10DFB000E6C081E06A3EB0EA1A8000F74A01DCC49C +:10DFC0006B58F6C081E06AAB14EA1A8001F74A0187 +:10DFD000FCC3DB5906C081E06AAF50EA1A8001F742 +:10DFE0004A021CC34B5916C081E06A82C0EA1A80FB +:10DFF00001F74A023CC2BB5976FE91FF21E06AB8A4 +:10E0000018EA1A8001F74A02FCC21BE3CF90C080D5 +:10E0100001D990800190708001D99CEBCD40FC200B +:10E020009D189716943016EE051505E0632BFCEA53 +:10E0300013000058B4C1F166120A02059C581CC1B5 +:10E04000A5F9D7B008C9FE581CC1550592F9D7B03B +:10E0500008C99EF8021900C0E50E9CC0CD18963084 +:10E060000C661B0A0BB69CE06CEE40EA1C8001FEBD +:10E07000B0D158661C0A0C198B581BC184199B58C7 +:10E080001BC154300BB88BB89BFACCFFC01A9B3223 +:10E0900049190A16AA2049CFD10E9CC3CC582CC0CE +:10E0A00031302CC338583CC0213036006C8C001302 +:10E0B00002F1EC560400E40000800100E5000100DC +:10E0C000004DB8010D02F1EC5603000000010058AC +:10E0D000A4C071661C0A0C198B2FFBB88BC1285881 +:10E0E000B4C1015837C081661C29FC198C580CC07A +:10E0F00031FEB0EED1661C0A0C2FFC198B2FFBB839 +:10E100008B661C1805660C798A2A4C988BFAEB00F2 +:10E110000C0B9A0B8BFAEB00045007E06CEE40EA14 +:10E120001C80012F8CFEB0D10F0C9C5C6C2F7DE30A +:10E13000CD80FC8000C2C4D421209D18973016E009 +:10E14000652BFCEA1500006A1CEE0415051804F99D +:10E15000D7C008C58EA8AC300CA8BCA83CFACCFF30 +:10E16000C81A9B3249190A16AA2049CFD1682C5DDA +:10E170001C582CC031302CC0F8583CC0313036C04F +:10E18000986A0B778A301CF807094C184AF74A003E +:10E19000600C9C5C6C2F7DD8220000EBCD40FE20F3 +:10E1A0005D189716943016EE051505E0632BFCEA12 +:10E1B00013000066120A02059C582CC1A5F9D7B0BD +:10E1C00008FEB0FDF3581CC1450591F9D7B0080011 +:10E1D0004AF4001302F1EC560400E500008001004F +:10E1E000E600010000D873010D02F1EC56030000B7 +:10E1F000000100FEB0FDECF8011900C0C5F9D7B070 +:10E2000008FEB0FDE5A49CE06CEE5CEA1C8001FE1B +:10E21000B0D0AC661BF605000C198A581AC0441918 +:10E220009A581AC30558A4C0C1198B581BC0651948 +:10E230008BFE3BFF01B88BC198300BB88BC168587F +:10E24000B4C141199A581AC0752FFC198AFE3AFFB9 +:10E2500001B88AC038300AB89A5837C07129FB17FC +:10E260008C580CC031FEB0EE3B661C0A0C198B5862 +:10E270000BC091199C580CC0610E9CC20C583CC03C +:10E28000213036661C1805660C798A2A4C988BFA60 +:10E29000EB000C0B9A0B8BFAEB00045007E06CEED2 +:10E2A0005CEA1C80012F8CFEB0D0600C9C5C6C2F53 +:10E2B000BDE3CD80FED7038000C2E8D4211897309B +:10E2C00016EE051505E0642BFCEA140000681C0A34 +:10E2D0000C783C5D1C583CC0213036F9D7B008C8DA +:10E2E000CD583CC0213036681C18053FFCAAAC3024 +:10E2F0000CAABC009D2D001302F1EC560400E600B0 +:10E3000000800100E70001000067C8010D02F1EC88 +:10E3100056030000000100AA3C680C798B301AF407 +:10E3200007094A148BF94B00600C9C5C6CD822EBFB +:10E33000CD40C0202D1897E0662BFCEA1600006C3B +:10E340001BEE0C1505160C300BB88BB89BF9D7B02B +:10E3500010CC7F6C0C7986BB17E06CF10CEA1C804A +:10E3600001FEB0D0152FEDE3CF90C0EBCD40F822E9 +:10E37000FD18961697301CFB6C005DE0652BFCEADF +:10E38000150000FACCFFA06A0B35C9170A18AA209D +:10E3900049CFD1FACCFFA01A9B35C9190A16AA2079 +:10E3A00049CFD10A9C2F8CE0A002583004C0E85815 +:10E3B0003CC061FB64005C303CFB6C005D300C6A6F +:10E3C0001B1603A6BC2FF45C645994C2F4301CF8ED +:10E3D00004094B6A0C798C186BCF60E80315056A49 +:10E3E0001B060BF72C0002580CCEE52FEBF72C0088 +:10E3F00000E0A04E876A1B060B17BA2FFAB6BA17B1 +:10E40000BAAF3A183ACE05764C5D1C582CCD11FBAC +:10E4100064005C302CFB6C002FBE001302F1EC5644 +:10E420000400E70000800100E800010000F0230183 +:10E430000D02F1EC56030000000100005DFACCFF74 +:10E44000A4198BAC8B199BAC9B0C9CC088FACCFF9D +:10E45000A4198BAC8B199BAC9B0C9C2D1DE3CD8020 +:10E46000F8D703800184E8300B586CC022301B16AB +:10E470009C5C6C5EFC0000EBCD40FC204DFB36004C +:10E48000305C66FB23002DE6071505E0652BFCEAF2 +:10E490001500006A140E04E92C00020C3CC09150D7 +:10E4A00003E06CEA2CEA1C8001FEB0CF83C638F989 +:10E4B000D6B008CDAFC0F12FE4E9270000FAE7009D +:10E4C000045003E06CEA2CEA1C80012F4CFEB0CF14 +:10E4D00071C5183004C2386A1C0E0C98BCF8040AC6 +:10E4E0004CA19CC1B2301AF7D6B008F9D4B008E0FC +:10E4F000A04D405C6CC1216A1C0E0C2FECF92B0066 +:10E50000000C9AFAEB00080892BB13E06CEA2CEAC4 +:10E510001C80012E0CFEB0CF4D2FF45C6458B4CD9E +:10E52000C53004C22898BBF6040A4BA19BC1C23077 +:10E530001A2FECF92B0000F9D4B00800564B001349 +:10E5400002F1EC560400E80000800100E90001003F +:10E5500000B098010D02F1EC56030000000100E04C +:10E56000A04D745C6CC1216A1C0E0C2FECF92B00C1 +:10E57000000C9AFAEB00080892BB13E06CEA2CEA54 +:10E580001C80012C8CFEB0CF272FF46A1C0E0C5C73 +:10E590006458B4CDB5B8A62FCDE3CF80FCD70380A7 +:10E5A000018334EBCD40803007E06C2BFCEA1C008B +:10E5B00000780C798CEDBC000CC072E06C00C8E0F7 +:10E5C000A07084C02030170E9C5C6CE3CD808080EE +:10E5D00001CA68EBCD40F8189730063005C1E8EA6B +:10E5E000041505E0632BFCEA130000661B080B30E2 +:10E5F0000CB6CC301CF805094A660C798C186AC038 +:10E60000B0F9D7B008765B5D1BC060301C661B1686 +:10E6100004A8CC30162FF55C655995CE250C9C5C72 +:10E620006CE3CD80F80000300BC0C8300AE06C2BE2 +:10E63000FCEA1C00007819F60C15051809B2CA2F5F +:10E64000FB5C6B599BCF355EFD0000301BF60C095F +:10E650004BE06C2BFCEA1C0000780C798C186B00EA +:10E660003066001302F1EC560400E900008001005E +:10E67000EA000100002553010D02F1EC56030000F1 +:10E680000001005F1C5EFCEBCD40FC202D18933098 +:10E6900015E6071505E0662BFCEA1600006C1C0E5B +:10E6A0000C98BC581CC2653004C04830352FF45C4F +:10E6B0006458B4C1F46C190E0992BB301CF80409FB +:10E6C0004C186BF604084C5C6C581CCF11301A2F98 +:10E6D000E9F32B0000F9D4B008E0A04CC9CE7008D3 +:10E6E00092BB13E06CF124EA1C8001FEB0CE86CD13 +:10E6F000FB0A9C5C6C2FEDE3CD80FC800183E880FD +:10E70000008774EBCD4080216D1897300CFB5C00C6 +:10E7100054FB6C002D30ABFB6B002EFB6C0030FB10 +:10E720006C0031EDB70002C272305CCA2FC11030EC +:10E730004CFB6C002C305CFB6C002DFACCFFD41A27 +:10E740009B32C9190A16AA2049CFD1E0A0451A3038 +:10E750002CC8FFC110304CFB6C002C302CFB6C0023 +:10E760002DFACCFFD41A9B32C9190A16AA2049CF18 +:10E77000D1E0A04507EDB70004C142308CC79FC16E +:10E7800010303C00EDC8001302F1EC560400EA0022 +:10E7900000800100EB000100009AE8010D02F1EC9D +:10E7A00056030000000100FB6C002C308CFB6C0059 +:10E7B0002DFACCFFD41A9B32C9190A16AA2049CFC8 +:10E7C000D1E0A044F12EADE3CF8080800174FCD471 +:10E7D00021E02D03AC18971696300CFB6C006830C6 +:10E7E00005C1C8E06B2BFCEA1B0000301CF80509D2 +:10E7F0004A760C798C186AC0F0761CEA0A1505185E +:10E800000AF52C0004581CC071FACBFF98FACCFF13 +:10E8100094746A5D1A2FF55C655995CE450D8BFB96 +:10E820003C0068180B58BBC2450D8CFB35006818BE +:10E830000520A55C65E9D5B008C158E80C10680E44 +:10E840000C189B1A9A3688170914A92048CFD1E8CA +:10E8500005010BF60B10680E0B19AC5C6CC65C2F37 +:10E86000F45C640D8C1834CEA50D8C1825AC853065 +:10E8700005C198FACBFF94EA0C1068160C189B1A85 +:10E880009A3688170914A92048CFD10D8BF60B10A2 +:10E89000680E0B19AC5C6CC48C0D8C2FFCAC8C2FEF +:10E8A000F55C65FB3C0068001413001302F1EC56A4 +:10E8B0000400EB0000800100EC000100008EC001AC +:10E8C0000D02F1EC560300000001001835CE55FE94 +:10E8D0003DFC54D82A0000D401300A589CC061582D +:10E8E0001BC041E0A03C28301A149C5C6CD802800C +:10E8F000016468E06B2BFCEA1B00002F8B32C91708 +:10E900000A18AA2049CFD122CC5EFC400B990B40BB +:10E910001B991B402B992B403B993B404B994B40FB +:10E920005B995BFB0B004AF95B0018FB0B004CF991 +:10E930005B001AFB0B004EF95B001C40CB998B402F +:10E94000FB999B410B99AB5EFD0000202C5C5C5950 +:10E950007CF9BC02021E0C19EC180F801AAE8080E4 +:10E960008080628080928080808080AEAEAEAEAECD +:10E970008080001B8CB68C1B9CB69C583CC0311B05 +:10E98000CCB6CC1BACB6AC1BDCEDBC0007C0B3B640 +:10E99000DC2F8BFACCFFF83109192A16BA2029CFBF +:10E9A000D15EFDE06C0080B6DC2F8BFACCFFF83333 +:10E9B0000AB909B728208ACFD15EFD1B8CB68C1B03 +:10E9C0009CB69C1BACB6AC169C2FCC00C612001398 +:10E9D00002F1EC560400EC0000800100ED000100A3 +:10E9E00000E478010D02F1EC56030000000100FA8A +:10E9F000CAFFFC3648150918A92048CFD11B8CB690 +:10EA00008C1B9CB69C1BACB6AC1BCCB6CC5EFD1B69 +:10EA10008CB68C1B9CB69C1BACB6AC2FCBFACCFF37 +:10EA2000FC30A9192A16BA2029CFD15EFD0000B109 +:10EA30008CF9DCC001EC1C00015EFCD401201CC080 +:10EA400060201CC070201CC080D80AE0A0695CD87F +:10EA50000AE0A06977D80AE0A06992D80AD70380B3 +:10EA600001C0148001C0508001C08CD401201CC0A2 +:10EA700060201CC070201CC080D80AE0A06952D859 +:10EA80000AE0A0696DD80AE0A06988D80AD7038097 +:10EA900001C0308001C06C8001C0A8201CC0802053 +:10EAA0001CC0C0201CC0F0201C5E0F5EFDFE7C1848 +:10EAB00014780CF9DCC0015EFC486C780CF9DCC001 +:10EAC000015EFC484C780CF9DCC0015EFCD703FF0A +:10EAD000FF1864FFFF1850EBCD40801897F9D7C09E +:10EAE00008CDDFCFD0E3CF80800000300B990B0042 +:10EAF0000B5F001302F1EC560400ED0000800100F2 +:10EB0000EE0001000071B3010D02F1EC56030000AC +:10EB10000001005EFD0000780AE01AE0FFF5EB104E +:10EB20008B990B5EFD0000780AE21AFFFD990A58E6 +:10EB30002B5E3D780AA1BA990A780A201BAF7BE6C2 +:10EB40001BFFFF144B990B5EFD0000EBCD40E0185E +:10EB50009616951497300BCDCF0A9B0C9CCDDF0EEB +:10EB60009B0C9CCE2F362C8D1CE06CB400EA1C0450 +:10EB7000C48D2CE46C00048D3C300C8D4CE3CF80B4 +:10EB8000E00000FE7C1814780CA99CF9DCC0015E42 +:10EB9000FC0000EBCD408018970E9CCF4FCFE0E3F8 +:10EBA000CF8080E06C0580EA1C0000F92B00005C3F +:10EBB0005BC060202BC070201BC0A05EFDE07CC14C +:10EBC000385EFCE06C5A00EA1C02625EFCE06C0EEF +:10EBD00000EA1C07275EFCD401CE5FA38CD802D4C8 +:10EBE00001189B302CE0A057F7D80A80019EC0EB9B +:10EBF000CD40C018961697CF0F8F0CFE7C4400189E +:10EC000036C04130BCCEDFC078FE7C48001836C02C +:10EC10003130CC00CB76001302F1EC560400EE004C +:10EC200000800100EF00010000CE08010D02F1ECB0 +:10EC300056030000000100CE6F0E9B0C9CE0A00E5E +:10EC4000C9E3CD80C0D70380010C98EBCD4080E0B4 +:10EC50006C0160EA1CAA004B5B970C4B1C780CA162 +:10EC6000DC4B0B970C300CE0A0660CE0A03E48316A +:10EC70001CEA1CA500FE6B0000971C3007FE6C0010 +:10EC8000009907304CEA1CAA004A9B970CFE7C14A2 +:10EC9000049907308CEA1CAA00970C4A5C9907304B +:10ECA000CCEA1CAA00970C4A3C9907310CEA1CAA32 +:10ECB00000970C4A1C9907E0A06B2A4A1C9907FC94 +:10ECC0001C0FF84A0B970C4A1C780C3447EA17AA19 +:10ECD000004A0B9707A5DC49DB970CFE7C1800E087 +:10ECE000A00262E0A06B2E499C780CE81C0017493A +:10ECF0008B9707496B970C496B9707B3CC494B9798 +:10ED00000C34CCEA1CAA00492B970C492C780CE057 +:10ED10001CFFF0490B970CE0A06B2AE3CF9080FF1B +:10ED2000FF15608001BB4880016BC4FFFF1458FFD2 +:10ED3000FF1408FFFF140C00C0CD001302F1EC56C5 +:10ED40000400EF0000800100F000010000DE60011F +:10ED50000D02F1EC56030000000100FFFF141080CB +:10ED600001C5D4FFFF2C70FFFF2E708001C608FF85 +:10ED7000FF1844FFFF1818FFFF184C8001C634D459 +:10ED800001204D1A9CE06BF084EA1B8001B709B9A1 +:10ED900028B709B9281A9BFE7C4400C4EF5C6C2F8D +:10EDA000CDD802EBCD40C0201D1897348CE0A06573 +:10EDB000B1E066F1F0EA1680015C57C0E0305CE03B +:10EDC000A0731C304CE0A073196C0C500C302B1A43 +:10EDD0009CE0A066D7C0D8315CE0A0730F314CE056 +:10EDE000A0730C6C1C500C302B1A9CE0A066CA342B +:10EDF0008CE0A065B12FFDE3CF80C0D401206DFA77 +:10EE0000CCFFF4E06BF13CEA1B8001B709B928178D +:10EE10000818A8C06F503CE06CB660EA1C80005037 +:10EE20000CE06CBD4CEA1C8000501CE06CB5F4EAB0 +:10EE30001C8000502C1A9AFACBFFF4FE7C4C00E0A8 +:10EE4000A068665C6C2FADD802D7038001C1B0EB1F +:10EE5000CD4080202D306CE0A072D0001CBE00138D +:10EE600002F1EC560400F00000800100F100010006 +:10EE700000CADD010D02F1EC560300000001003074 +:10EE80001B306CE0A06BDA309CE0A072C9301B3004 +:10EE90009CE0A06BD330BCE0A072C2301B30BCE061 +:10EEA000A06BCC30ECE0A072BB301B30ECE0A06B70 +:10EEB000C5316CE0A072B4301B316CE0A06BBE3287 +:10EEC0005CE0A072AD301B325CE0A06BB7329CE01E +:10EED000A072A6301B329CE0A06BB032BCE0A072E6 +:10EEE0009F301B32BCE0A06BA932CCE0A0729830FE +:10EEF0001B32CCE0A06BA232DCE0A07291301B325E +:10EF0000DCE0A06B9B32ECE0A0728A301B32ECE0BC +:10EF1000A06B94310CE0A07283301B310CE0A06B2D +:10EF20008D323CE0A0727C301B323CE0A06B86311D +:10EF30003CE0A07275301B313CE0A06B7F326CE08E +:10EF4000A0726E301B326CE0A06B7830DCE0A072F7 +:10EF500067300B30DCE0A06B71300CE0A0726030E9 +:10EF60001B300CE0A06B6A301CE0A07259301B30E3 +:10EF70001CE0A06B63302CE0A07252301B302C00E0 +:10EF8000C4B6001302F1EC560400F1000080010049 +:10EF9000F2000100005F16010D02F1EC56030000C3 +:10EFA000000100E0A06B5C303CE0A0724B301B30F5 +:10EFB0003CE0A06B55307CE0A07244301B307CE01C +:10EFC000A06B4E308CE0A0723D301B308CE0A06B0B +:10EFD00047320CE0A07236301B320CE0A06B40329E +:10EFE0001CE0A0722F301B321CE0A06B39324CE0C9 +:10EFF000A07228300B324CE0A06B32311CE0A072C2 +:10F0000021300B311CE0A06B2B314CE0A0721A3088 +:10F010000B314CE0A06B24315CE0A07213300B315B +:10F020005CE0A06B1D304CE0A0720C300B304CE06B +:10F03000A06B16305CE0A07205300B305CE0A06B7A +:10F040000F322CE0A071FE301B322CE0A06B083098 +:10F05000FCE0A071F7300B30FCE0A06B01327CE0EB +:10F06000A071F0300B327CE0A06AFA312CE0A07184 +:10F07000E9300B312CE0A06AF332ACE0A071E23051 +:10F080000B32ACE0A06AEC328CE0A071DB300B32CA +:10F090008CE0A06AE5E067F1E8EA1780016E0C50A9 +:10F0A0001C302B000E76001302F1EC560400F20027 +:10F0B00000800100F300010000E0AD010D02F1EC61 +:10F0C00056030000000100FACCFFFCE0A065906E42 +:10F0D0001C500C302B1A9CE0A0658A2FEDE3CF80EA +:10F0E00080D7038001D69C8001C8B88001BE24EB84 +:10F0F000CD40C03016FE771C003009300A301BFEB0 +:10F100007C1C00E0A06A3EC0C13009300A300BFE12 +:10F110007C1C00E0A06A36C031E3CF80C03026CB33 +:10F120006DCC7DCA2D301AE06B0120E06C4524EADD +:10F130001C8000E0A06C2048BC780CEDBC0018CF0F +:10F14000C36E0CA9AC8F0C487C780CEDBC0018CFBA +:10F15000C3E0A001F90C9C5C6CE3CD80C0D70380B8 +:10F1600001C7B8FFFF1C08300BC0B8FE6A0400F4EA +:10F170000B002A7409E019FFF8A1A995092FFB5883 +:10F180004BCF53300BC0F8FE6A0440F40B002A74D6 +:10F1900009E419FFFCE2780000F1EC010810499540 +:10F1A000092FFB584BCF135EFD0000D401300CCD6E +:10F1B000CF340CE0A06406345CE0A06403347CE04F +:10F1C000A06400349CE0A0006F71001302F1EC56C3 +:10F1D0000400F30000800100F400010000F4850148 +:10F1E0000D02F1EC5603000000010063FD34ACE0B9 +:10F1F000A063FA34CCE0A063F734ECE0A063F4350C +:10F200007CE0A063F1359CE0A063EE360CE0A063E7 +:10F21000EB361CE0A063E8320CE0A063E5322CE0A2 +:10F22000A063E2324CE0A063DF340CEA1CAA004881 +:10F230009B970C300C487B970C310CEA1CAA0048B9 +:10F240005B970CE06C0081FE7B1410970CD80AFFD2 +:10F25000FF1440FFFF1458791B344AEA1AAA009998 +:10F260006AA5DBF94B00445EFD0000D401E1BC005F +:10F2700000FEB0FC5DD303E06B0160EA1BAA00FE58 +:10F280007A1458950BE06B00C0484A950B5C5CC043 +:10F2900020D503D80AD703FFFF1560EBCD4080309F +:10F2A0001CE0674E44EA170000AE9C300BAEFBEF4B +:10F2B0006B000DEF6B0019EF6B0013AEABEF6B0043 +:10F2C00008EF6B000EEF6B001AEF6B0014AECBEF84 +:10F2D0006B000AEF6B0010EF6B001CEF6B0016AEBB +:10F2E000DCEF6C000BEF6C0011EF6C00BB2B00131C +:10F2F00002F1EC560400F40000800100F50001006A +:10F30000009E3D010D02F1EC5603000000010000DB +:10F310001DEF6C0017AE8C302CAEEC303CEF6C0067 +:10F320000C305CEF6C0018304CEF6C0012306B321C +:10F330007CE0A06491306B328CE0A0648D306B3047 +:10F34000FCE0A06489306B312CE0A06485306B3226 +:10F35000ACE0A06481305A0E9BFE7C2400E0A060EB +:10F360002BE3CF8080D7038001BE448001B5A4D4B5 +:10F37000211895169714960A942FF45C64346CE067 +:10F38000A06322EA0C1518C261EC0C1518C081307C +:10F390000CE06B4E44EA1B0000B6BCC0985816C087 +:10F3A00071301CE06B4E44EA1B0000B6BCE06C4EB2 +:10F3B00044EA1C0000301B198AF60A094B19BC5894 +:10F3C0001C4B6C780CC031184BC038168C189B4BFA +:10F3D0002C990B5C57C4B0089BFE7C2400E0A06015 +:10F3E0004D5815C101301AE06B0161E06C44F4EA3C +:10F3F0001C8000E0A06AE4089BFE7C2400E0A06082 +:10F4000049C468EA0C1518C101301AE06B016000AC +:10F4100017F9001302F1EC560400F500008001001A +:10F42000F6000100000BF6010D02F1EC560300009E +:10F43000000100E06C4518EA1C8000E0A06AD208D8 +:10F440009BFE7C2400E0A06037C3485835C10130E2 +:10F450001AE06B0163E06C4500EA1C8000E0A06AE2 +:10F46000C1089BFE7C2400E0A06026C2385845C23B +:10F4700011301AE06B0180E06C450CEA1C8000E062 +:10F48000A06AB0089BFE7C2400E0A06015C128584B +:10F4900015C060EA0C1518C0305835C061089BFED5 +:10F4A0007C2400E0A0600E089BFE7C2400E0A05FAE +:10F4B000FD346CE0A062BCD82AD703FFFF241C8077 +:10F4C00001B6688001CBAC8001B6808001B68C802B +:10F4D00001B674FE7C1C08780BEDBB0018CFB34856 +:10F4E0005B760BA9AB484A950B780BEDBB0018CFA8 +:10F4F000D35EFDFFFF1C10FE7C1C08780BEDBB00EB +:10F5000018CFB3485B760BA9AB484A950B780BED47 +:10F51000BB0018CFD35EFDFFFF1C1CFE7C1C0878CF +:10F520000BEDBB0018CFB3485B760BA9AB484A95EF +:10F530000B780B000E7D001302F1EC560400F60070 +:10F5400000800100F700010000B44D010D02F1EC54 +:10F5500056030000000100EDBB0018CFD35EFDFF95 +:10F56000FF1C0CEBCD4080581BC0D1E0A021F0E087 +:10F570006B126FEA1B4183E0A02020E0A021C2189B +:10F580009BC0A8E0A021E4FC1B4266E0A02016E09E +:10F59000A021B8189B4A0C780CEDBC0018CFC3FE14 +:10F5A0007C1C00E0A0687049BC780CEDBC0018CF52 +:10F5B000C3300BFE7C1C00E0A06858E3CF80808045 +:10F5C000013AF48001376080013AA88001C82C809C +:10F5D00001C810490C780CEDBC0018CFC3FE7C1C90 +:10F5E00000780BA1CB990B48BC780CEDBC0018CF70 +:10F5F000C35EFD488C780CEDBC0018CFC3FE7C1CAC +:10F6000000780BA1AB990B483C780CEDBC0018CFEF +:10F61000C35EFDFFFF1C08300CFE7B1C00760BED6B +:10F62000BB0000C022301C5C5C5EFCD401340CFECC +:10F630006B0000970CE0A053D1DA0A80019F80D4C0 +:10F6400001205D343CE0A061E3301CFEB0FAACE088 +:10F650006904C4301A301B00A7F5001302F1EC5600 +:10F660000400F70000800100F80001000023A6015B +:10F670000D02F1EC560300000001001A9CFEB0FBE5 +:10F680001B301CFEB0FAF0300B1A9CE0A047C030D3 +:10F690002A302B302CE0A0536D300CFEB0FB303004 +:10F6A0002CE0A05397303CFEB0FAA8343CE0A061B7 +:10F6B000E32FBDDA0AD7038001BBB48001879080B5 +:10F6C000019EF480019F548001BBF8D421201D18B5 +:10F6D0009616973005E0A0709B1894E91B006630E1 +:10F6E0001CF806094C184BE95B0066E91C006650E3 +:10F6F0000CE06CF100EA1C8001FEB0C77B5866C0CC +:10F7000071E06C4348EA1C0000F967009229A48864 +:10F710008C581CC02530150A9C5C5C2FFDD822EB50 +:10F72000CD40FC204D18943006FEB0C6471893E03B +:10F7300065EE78EA1580010A9CFEB0C75B3007C011 +:10F74000282FF75C6758A7E0840111E91C0066F8D0 +:10F75000070A4CA19CCF620E9C5C5C58ACF9BC02C1 +:10F760000A2FECFE0C001FC0B8C1C8C348C498C51E +:10F77000A8C9E8CB48CD08C6B8CDC800B2D600139A +:10F7800002F1EC560400F80000800100F9000100CD +:10F7900000631D010D02F1EC56030000000100CED4 +:10F7A000D8E06C43DCEA1C00007802E0644348EADD +:10F7B000140000089C2F6C300BB88B64BB767B5D0B +:10F7C0001B1896CDB8E06C43DCEA1C00007812E010 +:10F7D000644348EA140000300CE96C000B089C2FCD +:10F7E0005C300A1899324B12CA201BCFE164BB76F9 +:10F7F0007B5D1B1896CC28E06C43DCEA1C0000788B +:10F8000022E0644348EA140000089C2D1C300A18CA +:10F8100099316B12CA201BCFE164BB767B5D1B184C +:10F8200096CAC8E06C43DCEA1C00007832E064430E +:10F8300048EA140000089C2BBC300BB88B64BB76E4 +:10F840007B5D1B1896C9A8E0644348EA1400006673 +:10F850000CE96C0046663CE96C0047665CE96C00AC +:10F8600048666CE96C0049301C2B64A88C3016C8C3 +:10F8700058E06C43DCEA1C00007842E0644348EA4C +:10F88000140000089C2B5C300BB88BB89BB8ABB84D +:10F89000BB64BC781C5D1C30AB069CFEB0C89600F7 +:10F8A000365A001302F1EC560400F9000080010002 +:10F8B000FA00010000F6D6010D02F1EC560300003B +:10F8C000000100089C2B5C64BB767B5D1B18966472 +:10F8D000BC782C5D1CE93A004EE93B004DFAEB0088 +:10F8E00008E93A004C2B54098BBB1B2F850A9CFE60 +:10F8F000B0C6A4C558E06C43DCEA1C00007812E0F6 +:10F90000644348EA140000089C2B1C300BB88B3071 +:10F910001CE96C004F2B14089C64BB767B5D1B18A4 +:10F9200096C3E8E06C43DCEA1C00007812E0644314 +:10F9300048EA140000089C2B0C300BB88B301CE9F3 +:10F940003B00922FCBF80B094CA1BCE96C00502B6B +:10F9500004089C64BB767B5D1B1896C218E06A4362 +:10F9600048EA1A00002AFA300B1499340C12CB2002 +:10F970001CCFE1C24C1896C138E06C43DCEA1C0095 +:10F98000007862E0644348EA140000089CFE3CFFF3 +:10F990006F300BB88B64BB767B5D1B1896F5D6C0B9 +:10F9A00008F7D7B008E06C4348EA1C0000E0A00369 +:10F9B000270C9C5C5C2FCDE3CD80FCD43120CD3076 +:10F9C0000CBACC008875001302F1EC560400FA0062 +:10F9D00000800100FB00010000496D010D02F1EC07 +:10F9E00056030000000100E060EDA8EA108001FA73 +:10F9F000CCFFF8009B3149170A18AA2049CFD13013 +:10FA000007FEB0C51118963005C2C8169AA17AFA39 +:10FA1000C9FFF814091388A96813991009FAC8FFD7 +:10FA2000E4F00A0A095C89F20A14082AFCB88A2F51 +:10FA3000F75C67E807000C2AFCB8892FF72FFB5CFE +:10FA40006B089C5C670E0C582BCE15300B2AFCB84B +:10FA50008B2FF766BC782C5D1CE08101B02FF55C24 +:10FA6000655885E084024FE0644348EA1400005C76 +:10FA700067E807000C2AFCB8852FF7E06143DCEA51 +:10FA8000110000E20503230A9C588CF9BC0208FE11 +:10FA90000C001C984C180F001400AE013A01C6026D +:10FAA000B4032A043603C0FFC866BC781C5D1CCDB5 +:10FAB00070E06B02BC0C9CFEB0C7AC306BFACCFFA4 +:10FAC000F866BA745A5D1ACCB0300BC178F60A15D4 +:10FAD00001FACCFFF8140C1999A969198C1809E0DE +:10FAE0006C06D0EA1C000000DB30001302F1EC567B +:10FAF0000400FB0000800100FC000100005D4501E6 +:10FB00000D02F1EC56030000000100140C980C18D3 +:10FB100009FACCFFE4F80A0A092FFB5C6B583BCECC +:10FB200095FACBFFE4300CE0A00206300BC158FA86 +:10FB3000CCFFE4F80B041CF80A14085C67E8070023 +:10FB4000092AF9B28A2FF75C67E807000A2AFAB493 +:10FB50008C2FF72FFB5C6B583BCEB566BC782C5DC9 +:10FB60001CC901300CCE1966BC781C5D1CC8A0E015 +:10FB70006B03200C9CFEB0C75F306BFACCFFF866BD +:10FB8000BA745A5D1AFE90FF7E300BC108F60A1552 +:10FB900001FACCFFF8140C1999A969198C1809FA03 +:10FBA000CCFFE4F80A0A092FFB5C6B583BCF05FA3F +:10FBB000CBFFE4301CCBFD300BC158FACCFFE4F88E +:10FBC0000B041CF80A14085C67E80700092AF9B25C +:10FBD0008A2FF75C67E807000A2AFAB48C2FF72F00 +:10FBE000FB5C6B583BCEB566BC782C5D1CFE91FF70 +:10FBF0004ACB9B66BC781C5D1CFE90FF44332B0CEB +:10FC00009CFEB0C719306BFACCFFF800103B001314 +:10FC100002F1EC560400FC0000800100FD00010030 +:10FC20000037FD010D02F1EC5603000000010066F3 +:10FC3000BA745A5D1AFE90FF38300BC108F60A15E7 +:10FC400001FACCFFF8140C1999A969198C1809FA52 +:10FC5000CCFFE4F80A0A092FFB5C6B583BCF05FA8E +:10FC6000CBFFE4302CC79D300BC158FACCFFE4F831 +:10FC70000B041CF80A14085C67E80700092AF9B2AB +:10FC80008A2FF75C67E807000A2AFAB48C2FF72F4F +:10FC9000FB5C6B583BCEB566BC782C5D1CFE91FFBF +:10FCA00004C73B66BC781C5D1CFE90FEFE33CB0C8B +:10FCB0009CFEB0C6D33002C188300C66BB764B5D6B +:10FCC0001B314B0C9CFEB0C6C9301C66BB764B5D2D +:10FCD0001B314B0C9CFEB0C6C1306BFACCFFF866F2 +:10FCE000BA745A5D1A2FF25832CE85300BC0D858EC +:10FCF0002BC091FB3A000BA96AFB3C000C180AFBD5 +:10FD00005A00202FFB5C6B583BC134580BC0A1FB41 +:10FD10003A0008A96AFB3C0009180AFB5A001CCFEC +:10FD20002B581BCE61FB3C000AFB5C001ECEBB00C7 +:10FD3000B0D0001302F1EC560400FD000080010079 +:10FD4000FE00010000A236010D02F1EC5603000096 +:10FD5000000100FB0B001CA96BFB0C001E160CF82D +:10FD60000B14105C67E807000A2AFAB48B2FF7F827 +:10FD70000B14085C67E807000A2AFAB48B2FF75CBB +:10FD800067E807000B2AFBB68C2FF7FB0C0020F866 +:10FD90000B14085C67E807000A2AFAB48B2FF75C9B +:10FDA000670E042AF4A88C2FF766BC782C5D1CFE25 +:10FDB00091FE8DCFCA66BC781C5D1CFE90FE873319 +:10FDC000CB0C9CFEB0C65C306BFACCFFF866BA7404 +:10FDD0005A5D1AFE90FE7B300BC1F8F60C1501FA45 +:10FDE000CAFFF8180A1589A969159A120AFAC9FFF3 +:10FDF000E4F20C0A0A5C8AF40C14085C67E8070059 +:10FE0000092AF9B28C2FF75C67E807000C2AFCB8C6 +:10FE10008A2FF72FFB5C6B589BCE1566BC782C5D48 +:10FE20001CFE90FE54301CBACCC50A300CBADC3033 +:10FE30000266BC781C5D1CFE90FE49301BFACCFFAC +:10FE4000FB625A74BA746A5D1AE06B00960C9CFEF1 +:10FE5000B0C61600B71D001302F1EC560400FE00F8 +:10FE600000800100FF000100001D8D010D02F1EC7A +:10FE7000560300000001003001C0282FF158A1C135 +:10FE800064306BFACCFFF866BA745A5D1A314B0CC9 +:10FE90009CFEB0C607FB3C0008500C009C2ECCFE1C +:10FEA000B0C426FB3200085862CE94E0A06D2E5CF0 +:10FEB00067E807000BF93C0080043CC064301C2A52 +:10FEC000FBB68C2FF7C058300C2AFBB68C2FF75C92 +:10FED000670E042AF4A8822FF766BC782C5D1CFEFE +:10FEE00091FE07C76A66BC781C5D1CFE90FE01E0AF +:10FEF0006B02580C9CFEB0C5D5306BFACCFFF8668F +:10FF0000BA745A5D1AFE90FDF4300BC1F8F60C1568 +:10FF100001FACAFFF8180A1589A969159A120AFA8E +:10FF2000C9FFE4F20C0A0A5C8AF40C14085C67E866 +:10FF30000700092AF9B28C2FF75C67E807000C2A42 +:10FF4000FCB88A2FF72FFB5C6B584BCE1566BC783C +:10FF50002C5D1CFE91FF7BFE9FFDCB66BC781C5D7B +:10FF60001CFE90FDC6300C66BB764B5D1B301CE75B +:10FF70006C001033CB0C9C004FAC001302F1EC561C +:10FF80000400FF0000800101000001000058E501AD +:10FF90000D02F1EC56030000000100FEB0C59430E4 +:10FFA0006BFACCFFF866BA745A5D1AFE90FDB33056 +:10FFB0000BFE9FFDA21BCC2F4DD8328000853C80CC +:10FFC000008B28EBCD40C0202D18961697E0A06C32 +:10FFD000AFE06BF228EA1B8001B70ABB1B300B585D +:10FFE00006C031E06BFFFF180628460D8C588CF9CF +:10FFF000BC02001E0C19EC180F0A18283A4A5C6C57 +:020000021000EC +:100000007E8E0CBA0C8E1CBA1C8E2CBA2CC3D88EC9 +:100010001CBA0C8E0C181BBA1B8E2CBA2CC3588E13 +:100020000C162CBA0C8E1C181BBA1B8E2CBA2CC2A8 +:10003000C88E1C181BBA0B8E0CBA1C8E2CBA2CC284 +:10004000488E0C162CBA0C8E1CBA1C8E2C181BBA9F +:100050002BC1B88E1CBA0C8E0CBA1C8E2C181BBA75 +:100060002BC1388E0CBA0C8E1C162CBA1C8E2C1878 +:100070001BBA2BC0A88E1C162CBA0C8E0C162CBAD0 +:100080001C8E2C181BBA2B9A0CAE0C9A1CAE1C9A08 +:100090002CAE2C2FEDE3CF80C000000067080013CA +:1000A00002F1EC5604010000008001010100010092 +:1000B000005408010D02F1EC56030000000100EBB2 +:1000C000CD40803007E06CF230EA1C8001FEB0C306 +:1000D00033300CC0B8E06B4348EA1B0000F60C0656 +:1000E0000A580AC02030172FFC5C6C58ACCF450E64 +:1000F0009C5C6CE3CD8080F80B0B0A5EFD0000D4A5 +:1001000001E06CF238EA1C8001FEB0C315300CC06F +:1001100098300BE06A4348EA1A0000F40C0B0B2FEE +:10012000FC5C6C58ACCF65D80A0000EBCD40E01801 +:10013000961697E0A06C0E1895E06CF240EA1C80D1 +:1001400001FEB0C2F9300CC0382FFC5C6C58ACE03A +:100150008400C5301BF60C094BEB1A0066166ACFFB +:1001600050302A0F89F2091068EC090B0A0F8AF443 +:100170000A10680C0AB4AC58ACF9BC020A1E0CF99F +:100180003C000AFE0C001F081526374455626F809C +:1001900093A000E06A4348EA1A00002F6A0F8CF827 +:1001A0000C106818062FC6158CAC8CC8C8E06943C3 +:1001B00048EA1900002F590F8CF80C106818060037 +:1001C0001421001302F1EC5604010100008001012A +:1001D0000200010000C1C3010D02F1EC5603000052 +:1001E0000001002FC60C98324A133C10CC201ACFC5 +:1001F000D1C7B8E0694348EA1900002D190F8CF8FF +:100200000C106818062FC60C98316A133C10CC20CD +:100210001ACFD1C6A8E06A4348EA1A00002BBA0FE9 +:100220008CF80C106818062FC6158CAC8CC5D8E05D +:10023000694348EA1900002BA90F8CF80C106818C4 +:10024000062FC60C98305A133C10CC201ACFD1C4BC +:10025000C8E06A4348EA1A00002B1A0F8CF80C1009 +:100260006818062FC6158CAC8CC3F8E06A4348EAC0 +:100270001A00002B0A0F8CF80C106818062FC615F0 +:100280008CAC8CC328E0694348EA1900002AF90FB6 +:100290008CF80C106818062FC60C98340A133C1002 +:1002A000CC201ACFD1C218E06A4348EA1A00002BCA +:1002B0005A0F8CF80C106818062FC6158CAC8C15CC +:1002C0009CAC9C15ACACAC15BCACBCC0E8E06A43C3 +:1002D00048EA1A0000FE3AFF6F0F8CF80C106818FD +:1002E000062FC6003D55001302F1EC560401020032 +:1002F0000080010103000100007E78010D02F1EC95 +:1003000056030000000100158CAC8C0F8C2FFCAE46 +:100310008CEB1C0066168CEB5C0066300C29A5AAE1 +:100320000C300CE06B4348EA1B0000F76C0092E3D2 +:10033000CF80E08001D99080008774EBCD40C02051 +:100340001DE06CF292EA1C8001FACBFFFF198AB61D +:100350008A199AB69A19ACBA8C3006C0382FF65C56 +:1003600056E067008C58A6C184E06C0070EA1C005F +:1003700000F806000B2F0B178BBA9B0C0C198CBACC +:10038000AC3029FACAFFFFF7D7C008304CFEB0C224 +:1003900049CE61300CC1B830181A99305AF7D7C01D +:1003A00008304CFEB0C26ACF601B8CA7BCBA8C3040 +:1003B0005CBA9C1B8CBAAC3029FACAFFFFF7D7C0D5 +:1003C00008304CFEB0C22ECE60301C2FFDE3CD8035 +:1003D000C00000D421203DE067EF10EA178001FA49 +:1003E000CCFFFB0F8BB88B0F9BB89B0FACBACC6EBE +:1003F0001C502C0E9C2F8CFEB0C1C2305CBADCE0CD +:100400006C0080BAECE066000D45001302F1EC567A +:10041000040103000080010104000100006A500192 +:100420000D02F1EC56030000000100008C3029FAA7 +:10043000CAFFFBF7D6C008304CFEB0C205C0313051 +:100440000CC658322CFEB0C4233004C1E85834C165 +:10045000A05844C1805854C160E0650070EA15009E +:1004600000EA04000C2F0C198CBADC08050B8CBABE +:10047000EC3029FACAFFFBF7D6C008304CFEB0C1F9 +:10048000E3CDF02FF45C5458A4CE253018FAC9FF00 +:10049000FC305AF7D6C008304CFEB0C201CD101B5C +:1004A000CCF9DCC007BACC3019FACAFFFCF7D6C0C9 +:1004B00008304CFEB0C1C8CC40E0A027E5E06500A4 +:1004C00070EA150000EB3C000C581CC1F1304BFAEF +:1004D000CCFFF8CA2C581CC1C1FB3C000B500CFBD4 +:1004E00038000AFB390009FB3A0008E06B8E10EA7D +:1004F0001B8000300CE0A06419300CFEB0C484FEF8 +:10050000B0C492300C2F45AA8C301C2FDDD8222F7E +:10051000470E9CFEB0C146300CCF9B8001545880E2 +:1005200001CCFC80008DD880008DF8008DB50013C3 +:1005300002F1EC56040104000080010105000100F5 +:100540000000E8010D02F1EC56030000000100EB91 +:10055000CD4080201DE06CF250EA1C8001FACBFFF8 +:10056000FF198AB68A199AB69A19ABBA8B2FCCFEA4 +:10057000B0C12AE067008C30181A99305AF7D7C0FA +:1005800008304CFEB0C19EC031300CC1B81B8CA7E6 +:10059000BCBA8C305CBA9C1B8CBAAC3029FACAFF4E +:1005A000FFF7D7C008304CFEB0C160CEF0E0A06AC3 +:1005B00019F93C0082580CC041322CFEB0C38A307D +:1005C0001C2FFDE3CD8080EBCD4080201DE06CF240 +:1005D00083EA1C8001FACBFFFF198AB68A199AB602 +:1005E0009A19ACBA8CE067008C30181A99305AF717 +:1005F000D7C008304CFEB0C165C031300CC1B81B4B +:100600008CA7BCBA8C305CBA9C1B8CBAAC3029FA73 +:10061000CAFFFFF7D7C008304CFEB0C127CEF0E0CC +:10062000A069E0F93C0082580CC041322CFEB0C3F6 +:1006300051301C2FFDE3CD80800000EBCD408018B1 +:100640009730480E99301AE06B008C304CFEB000A9 +:100650008B8C001302F1EC560401050000800101AF +:1006600006000100009523010D02F1EC5603000085 +:10067000000100C139C091E06CF220EA1C8001FE4B +:10068000B0C0B4E3CF80800E9CC0DC30080FB90F3F +:10069000AA0F9B0F8CE0A024CFE3CF9080D70380DC +:1006A000014FC0EBCD40E0201DE067F130EA17803C +:1006B000011A9B0F8AB68A0F9AB69A300AC09830F0 +:1006C0000893A872A95839C035301997F92FFAE064 +:1006D0006B0070EA1B0000584AC1341699F20A00F8 +:1006E00029F80A07085808CEC172A82FF893A872F3 +:1006F000A8E05886A1CE75E07886A093A8CE3B7678 +:10070000FC580CC43076EC580CC401301C97ECE05B +:100710006600FFBA86354CBA9CE065008C30291A19 +:100720009AF7D5C008304CFEB0C0B2BA8634DCBAF5 +:100730009C30291A9AF7D5C008304CFEB0C0A834B6 +:100740005CBA8C305CBA9C30291A9AF7D5C0083054 +:100750004CFEB0C09D344CBA8C340CBA9C30291A73 +:100760009AF7D5C008304CFEB0C092345CBA8C30D9 +:100770000CBA9C009AFB001302F1EC56040106002F +:100780000080010107000100002A98010D02F1EC30 +:100790005603000000010030291A9AF7D5C008302E +:1007A0004CFEB0C0872FC70E9CFEB0C0312FFDE3BA +:1007B000CF80E0D401201D198BE06A0070EA1A0096 +:1007C00000B4AB198C500CE06CF118EA1C8001FEEF +:1007D000B0C01E2FFDDA0AD421205D1897E066EE26 +:1007E00094EA168001FACCFFFC0C9BB709B928B734 +:1007F00009B9286C4C500CFEB0BEEE18953004C1FF +:10080000681B8C401A180A501A1B9C402A180A5060 +:100810002A1BAC403A180A503A1BBC404A180A50EE +:100820004A30AB0A9CFEB0C1CD2FF45854C074308E +:100830004B1A9CC28FCE61300CC148300CC0B8FA44 +:10084000CBFFFCF60C032B305AF60A0C0AEE0C0B0D +:100850000A2FFC584CCF552EC60C9CFEB0BFD8308A +:100860001C2FBDD822D7038000853C80008B28D464 +:1008700001300A585CC041169CC9DF189A149CD8F4 +:10088000020000D401E06BEC08EA1B8001304CE070 +:10089000A0520AD80A000000E8C9001302F1EC5681 +:1008A00004010700008001010800010000BD730180 +:1008B0000D02F1EC56030000000100EBCD40E020FA +:1008C0001DE06CF280EA1C8001FACBFFFF198AB6AA +:1008D0008A199AB69A19ACBA8CE0A068B918973000 +:1008E00005C0382FF55C55E066008C58A5C174E052 +:1008F0006C0070EA1C00000A0CF93B0010BA9B2E39 +:100900004C198CBAAC3029FACAFFFFF7D6C00830B0 +:100910005CFEB0BFE1CE71300CC41830181A9930AB +:100920005AF7D6C008305CFEB0C002CF601B8CA165 +:10093000ACBA8C305CBA9C1B8CBAAC3029FACAFFBA +:10094000FFF7D6C008305CFEB0BFC6CE603018FAE4 +:10095000C9FFFF300AF7D6C008305CFEB0BFE8CD53 +:10096000C01B8CA7BCBA8C305CBA9C1B8CBAAC3058 +:1009700029FACAFFFFF7D6C008305CFEB0BFACCC86 +:10098000C0300A300B300CFEB0C276EF3C0082580B +:100990000CC041322CFEB0C1D3301C2FFDE3CD8002 +:1009A000E00000D421202DE066ED48EA168001FA2F +:1009B000CCFFFC0D8BB88B0D9BB89B00EC6B001330 +:1009C00002F1EC5604010800008001010900010059 +:1009D00000FDC8010D02F1EC560300000001000DFE +:1009E000ACBAEC0C9C2FCCFEB0BF36322CFEB0C1A2 +:1009F000A93005C0382FF55C5558A5C1D45865CF2E +:100A0000B05875CF905885CF70E0670070EA170036 +:100A1000000A07EF3C0010BACC2E470F8CBADC302E +:100A200029FACAFFFCE06B008C305CFEB0BF66CEDA +:100A300031300CC988E0670070EA1700006EEC5096 +:100A40000C0C9C2F8CFEB0BF07E065008C6EEC5840 +:100A50001CC461E06400FFBAC4354CBADC3029FA2A +:100A6000CAFFFCF7D5C008304CFEB0BF47CE20BA55 +:100A7000C434DCBADC3029FACAFFFCF7D5C0083030 +:100A80004CFEB0BF3BCD60345CBACC305CBADC30DD +:100A900029FACAFFFCF7D5C008304CFEB0BF2ECCF7 +:100AA00090344CBACC3004BAD43029FACAFFFCF7DF +:100AB000D5C008304CFEB0BF21CBC0345CBACCBA34 +:100AC000D43029FACAFFFCF7D5C008304CFEB0BFBD +:100AD00015CB002EC60C9CFEB0BEBE8FE4301800B5 +:100AE00060A9001302F1EC56040109000080010125 +:100AF0000A000100006803010D02F1EC560300003A +:100B0000000100FAC9FFFA305AF7D5C008305CFE80 +:100B1000B0BF32CA101BECF9DCC007BAEC3019FACE +:100B2000CAFFFAF7D5C008305CFEB0BEF9C9403044 +:100B300018FAC9FFFA305AF7D5C008305CFEB0BFCA +:100B40001BC8A01BECA1ACBAEC305CBACC1BECBA55 +:100B5000DC3029FACAFFFCF7D5C008305CFEB0BE15 +:100B6000DFFE90FF7A3018FAC9FFFA300AF7D5C0D5 +:100B700008305CFEB0BF00FE90FF6F300A301B30C3 +:100B80000CFEB0C19D301C2FEDD82280008C60EB94 +:100B9000CD4080201DE06CF210EA1C8001FACBFFF2 +:100BA000FF198AB68A199AB69A19ABBA8B2FCCFE5E +:100BB000B0BE64E067008C30181A99305AF7D7C07D +:100BC00008305CFEB0BED8C031300CC2081B8CA708 +:100BD000BCBA8C305CBA9C1B8CBAAC3029FACAFF08 +:100BE000FFF7D7C008305CFEB0BE9ACEF0300A30B6 +:100BF0000B300CFEB0C164E0A0674EF93C00825897 +:100C00000CC04100BB7F001302F1EC5604010A0046 +:100C1000008001010B00010000D7B8010D02F1ECCA +:100C200056030000000100322CFEB0C0BF301C2F64 +:100C3000FDE3CD8080D70380008DB880008C80EBF1 +:100C4000CD4080201DE06CF286EA1C8001FACBFFCB +:100C5000FF198AB68A199AB69A19ACBA8CE067005D +:100C60008C30181A99305AF7D7C008305CFEB0BEE5 +:100C700095C031300CC1481B8CA7BCBA8C305CBA13 +:100C80009C1BAB1B8C184BBAAB3029FACAFFFFF781 +:100C9000D7C008305CFEB0BE55CED0301C2FFDE36F +:100CA000CD8080EBCD40C01897E06613E4EA1600D3 +:100CB0000030180C99304AE06B008C305CFEB0BEFE +:100CC0006DC091E06CF1F8EA1C8001FEB0BDE8E374 +:100CD000CF80C00D8CE06B13E5EA1B0000B68CAE34 +:100CE0008CE3CF90C0D7038000887080008774EBBE +:100CF000CD4080201D1A9C300BB88BB89BE0A066BD +:100D0000DD308BBA8BF93C0080BA9CE067008C30F8 +:100D1000291A9AF7D7C008305CFEB0BE13C0313034 +:100D20000CC0E8309CBA8C00A38D001302F1EC5685 +:100D300004010B00008001010C00010000C39001C0 +:100D40000D02F1EC56030000000100300CBA9C309B +:100D5000291A9AF7D7C008305CFEB0BE05CF3030F4 +:100D60001C2FFDE3CD80808001D99080008818EB96 +:100D7000CD4080E067EC74EA1780010E9B305CE0A8 +:100D8000A04FEC0E9B308CE0A04FE8E3CF8080803A +:100D900001AC0CEDBC00105F2C5C5C5EFC00003014 +:100DA00009F40B0D0AA19AC0382FF9A19AE04A0163 +:100DB00000C0435C595889CF955C595889C0353F6C +:100DC0008C5EFCF40B1601F40816011428F7E810E9 +:100DD0008B5C59F7E911C9F3EA110A991A300C5ED4 +:100DE000FC0000EBCD40C018971696E1BC0000CD8A +:100DF0002F300BE06A4E70EA1A0000950BF80B15C5 +:100E000018C020D3033FFB8F9B301B8F0BE06B0080 +:100E1000808F0B5C5C580CC020D5033FFC8FBC302E +:100E20003AE06B0280E06C4164EA1C8000E0A05F65 +:100E300065ED3C000C580CC050310C8F0C3FFC8F02 +:100E40002C6C0A6C1B0E9CCACF5B8C008530001387 +:100E500002F1EC5604010C00008001010D000100BC +:100E600000A928010D02F1EC56030000000100C0AA +:100E7000413F8CE3CD80C0300CE3CD80C0D70380F0 +:100E800001CBACEBCD40801897E1BC0000C95F5CA2 +:100E90005C580CC020D3033FFC8F9C3FFC8FBCE30D +:100EA000CF8080EBCD40C0201D18961697300C5097 +:100EB0000C34BCE0A05738302C8D0CE06C4E64EA4A +:100EC0001C00009906E06C4E64EA1C0000780CCD12 +:100ED000AF6E3CE06B4E6CEA1B0000970C6E4CE072 +:100EE0006B4E78EA1B0000970C300CE06B4E84EAE6 +:100EF0001B0000B68C300CE06B4E70EA1B000097B4 +:100F00000CEF3C0008580CC570301CE06B4E64EAD6 +:100F10001B0000760B970CE06C0080E06B4E64EADF +:100F20001B0000760B970C302CE06B4E64EA1B0024 +:100F300000760B970C0E9C2FCCE06B4E68EA1B00E2 +:100F400000970CE06C4E68EA1C0000780CEF3B0048 +:100F5000085C3B160C2FCCE06B4E68EA1B00009738 +:100F60000CEF3C0008E06B4E74EA1B0000970C008D +:100F70003897001302F1EC5604010D0000800101C6 +:100F80000E000100003CE3010D02F1EC56030000ED +:100F9000000100E06C0703E06B4E7CEA1B00009749 +:100FA0000C6E0CA17CEF3B0008F9EB110CE81CA0C7 +:100FB00000E06B4E64EA1B0000760B973C6E0CA1C0 +:100FC0007C6E4BF9EB110CE81CE001E06B4E64EA1F +:100FD0001B0000760B974CC1B8300CE06B4E74EAE6 +:100FE0001B0000970CE06C0701E06B4E7CEA1B00D5 +:100FF00000970C6E0CA17C6E4BF9EB110CE81CE019 +:1010000001E06B4E64EA1B0000760B973CE06C4EEF +:101010007CEA1C0000780CE06B4E64EA1B00007652 +:101020000B978C301C8D0CD503E06C4E70EA1C00C5 +:1010300000780C580CC101E0A002C4580CC0C1FEDD +:10104000CFFFFC400B2FFB500B400CEE5C4240CE20 +:10105000D33FDCC178302C8D0CE06C4E70EA1C0064 +:1010600000780C5BCCC080E06C4E70EA1C0000780D +:101070000C5BECC0313FFCC05834BCE0A05688305B +:101080000C2FFDE3CD80C0EBCD40F8201D18951648 +:1010900097149600F3B1001302F1EC5604010E0010 +:1010A000008001010F000100008358010D02F1ECE6 +:1010B0005603000000010012941093300C500C34C1 +:1010C000BCE0A05655301C8B0CE06C00808B0C30C3 +:1010D0002C8B0CE06C4E64EA1C00009905E06C4E11 +:1010E00064EA1C0000780CCF2EE06C4E6CEA1C0009 +:1010F000009907E06C4E78EA1C00009906300CE07D +:101100006B4E84EA1B0000B68C300CE06B4E70EA2C +:101110001B0000970C5C535803C170E80C1501E8E4 +:101120001CA800E06B4E64EA1B0000760B973CA104 +:1011300074E9E61106E816F801E06C4E64EA1C005A +:1011400000780C9946C0C8A174E9E61106E816E0DB +:1011500001E06C4E64EA1C0000780C9936E06C07E4 +:1011600001E06B4E7CEA1B0000970CE06C4E7CEAC1 +:101170001C0000780CE06B4E64EA1B0000760B97B5 +:101180008C301CE06B4E64EA1B0000760B970CD58C +:1011900003E06C4E70EA1C0000780C580CC101E0B2 +:1011A000A00222580CC0C1FECFFFFC400B2FFB5009 +:1011B0000B400CEE5C4240002AB9001302F1EC56E1 +:1011C00004010F00008001011000010000933001B4 +:1011D0000D02F1EC56030000000100CED33FDCC14C +:1011E00078302C8B0CE06C4E70EA1C0000780C5BA5 +:1011F000CCC080E06C4E70EA1C0000780C5BECC048 +:10120000313FFCC05834BCE0A055E6300C2FFDE364 +:10121000CD80F8EBCD40C0201D18961697300C50AD +:101220000C34BCE0A055B6301C8D0CE06C00808DF9 +:101230000C302C8D0CE06C4E64EA1C00009906E02A +:101240006C4E64EA1C0000780CC53E300CE06B4E1E +:1012500070EA1B0000970CE06C0702E06B4E7CEA22 +:101260001B0000970C300CE06B4E84EA1B0000B6AC +:101270008CEF3C0008580CC2A00E9C2FCCE06B4EAB +:1012800068EA1B0000970CE06C4E68EA1C000078CE +:101290000CEF3B00085C3B160C2FCCE06B4E68EA71 +:1012A0001B0000970CEF3C0008E06B4E74EA1B003B +:1012B00000970C301CE06B4E84EA1B0000B68CE0FB +:1012C0006C4E80EA1C00009907C0D86E3CE06B4E63 +:1012D00068EA1B0000970C6E4CE06B00950C001345 +:1012E00002F1EC5604011000008001011100010020 +:1012F00000878D010D02F1EC560300000001004E45 +:1013000074EA1B0000970C6E0BA17B6E4A2F870FAF +:101310008C180AF7EA110BE81BE0008D3BE06C4EDD +:101320007CEA1C0000780CE06B4E64EA1B0000763F +:101330000B978C301CE06B4E64EA1B0000760B9719 +:101340000CD503E06C4E70EA1C0000780C580CC001 +:10135000F1C6DD580CC0C1FECFFFFC400B2FFB5087 +:101360000B400CEE5C4240CEE33FDCC178302C8D6C +:101370000CE06C4E70EA1C0000780C5BCCC080E086 +:101380006C4E70EA1C0000780C5BECC0313FFCC076 +:101390005834BCE0A05532300C2FFDE3CD80C0D4D2 +:1013A00021189416971496129534BCE0A055043079 +:1013B0001C890CE06C0080890C302C890CE06C4E90 +:1013C00064EA1C00009904E06C4E64EA1C0000789A +:1013D0000CFEB0FDA1300CE06B4E84EA1B0000B6A1 +:1013E0008C300CE06B4E70EA1B0000970CEA0C1579 +:1013F00018C1C0EF3C000C580CC1806E0CA17C00E1 +:10140000D86F001302F1EC560401110000800101B5 +:1014100012000100001246010D02F1EC560300001B +:10142000000100E81CA800893C6E0CA17C6E2BF921 +:10143000EB110CE81CB801894CC038FECFFFFC68EA +:101440007CEDBC0003CFB2308C89BCC0F86E0BA120 +:101450007B6E2CF7EC110B5C55F7E510BBEF3C00F5 +:101460000C184BE81BA000893B6C0B6C2C5C550ADC +:101470009A5C555805C040ED39000CC0283009A1D0 +:101480007BF7EC110BF7EA10BBF7E910CBED3C0052 +:101490000C184BE81BE000894BEF3C000C580CC3C8 +:1014A000106E1CE06B4E6CEA1B0000970CC1386894 +:1014B0007CEDBC0000C0F2685CE06B4E6CEA1B0087 +:1014C00000760BB68CE06C4E6CEA1C0000780B2F9B +:1014D000FB990B687CEDBC0003CEB2687CEDBC00D0 +:1014E00000C422685CE06B4E6CEA1B0000760BB611 +:1014F0008CE06C4E6CEA1C0000780B2FFB990BC340 +:10150000386E1CE06B4E68EA1B0000970C6E2CE0F6 +:101510006B4E74EA1B0000970CC228E06C4E74EA14 +:101520001C0000005FD1001302F1EC560401120010 +:10153000008001011300010000ADFD010D02F1EC7E +:1015400056030000000100780C580CC1B0687CED17 +:10155000BC0001C172E06C4E68EA1C0000780C19F6 +:101560008CE06B4E68EA1B0000760A2FFA970A5C43 +:101570005C896CE06C4E74EA1C0000780B201B99AF +:101580000B687CEDBC0003CDC2308C89BCED3C0007 +:101590000C580CC1E06C1CE06B4E6CEA1B00009711 +:1015A0000C687CEDBC0004C463687CEDBC0000CF1B +:1015B00092685CE06B4E6CEA1B0000760BB68CE028 +:1015C0006C4E6CEA1C0000780B2FFB990BCEAB6CB9 +:1015D0001CE06B4E68EA1B0000970C6C2CE06B4E15 +:1015E00074EA1B0000970CC228E06C4E74EA1C00E1 +:1015F00000780C580CC1B0687CEDBC0001C172E0F1 +:101600006C4E68EA1C0000780C198CE06B4E68EA9E +:101610001B0000760A2FFA970A5C5C896CE06C4E1E +:1016200074EA1C0000780B201B990B687CEDBC0051 +:1016300004CDC2687CEDBC000AC062E06C04008985 +:10164000BC3FFCD822687C009F52001302F1EC568C +:1016500004011300008001011400010000B9D5014C +:101660000D02F1EC56030000000100E21C030058DB +:101670000CC0A0683CEC1C8000893CE06C03008935 +:10168000BC3FFCD82234BCE0A053EE300CD8228002 +:1016900001BBB48001BBF8E06C4E64EA1C0000782A +:1016A0000C787CE21C0030580C5F1C5C5C5EFCD447 +:1016B00031202D1897E0651A88EA1500008ACC16AB +:1016C0000CAA4C8ADC160CAA5C0BEC599CC0940B3F +:1016D000EC2FFCAAEC0E9CE0A0247AEAEB013C3053 +:1016E00016EA1643FA0E9C0C9BE0A012F3E083016D +:1016F00031EAF401F4089C0C9BE0A012EBE08301BA +:10170000290BEC599CE08501258ACCE04C00AFE028 +:101710008501200E9C089BE0A01096E06400B4EACE +:10172000140000892CEB4701F4E0A02451BFDBE05A +:1017300068999BEA189999E0699999EA193FC9E073 +:10174000A02464C063EAEA013CE0A0127918970B78 +:101750009C580CC061EB4701F8EB4701FCC4A8683A +:1017600006FC133FF00E9CE0A0243200F3CC0013E3 +:1017700002F1EC5604011400008001011500010083 +:1017800000D36D010D02F1EC5603000000010014BE +:101790009016910C9CE0A0242D14981699300A06FE +:1017A0009BE0A0225500980299E0A0239A1490167D +:1017B00091EAFC01F80C9BE0A0111CE0A0241A00A7 +:1017C000980299E0A02278E0A0124CEB4C01F86856 +:1017D00016E0A0240F149016910C9CE0A0240A148B +:1017E000981699300A069BE0A0223200980299E0F0 +:1017F000A0237714921693EAFC01FC0C9BE0A01046 +:10180000F9E0A023F704980699E0A02255E0A01281 +:1018100029EB4C01FC8ADCE04C03E9C185EAFC01C0 +:10182000FC0BABEA0B002BF74C01540BAC2FFCAAC2 +:10183000AC0BAC594CC031300CAAAC0BBC594CC0F1 +:10184000440BBC2FFCAABC300CAA5C0B860C90EAA3 +:101850000000210B9C594CC2716374089CE0A023CA +:10186000C914981699EAEA0124E0A021F1EAEB01F3 +:1018700024089C089BE0A010BDE0A023BB14981690 +:1018800099EAEA012CE0A021E3EAEB012CE2FC005A +:10189000517C001302F1EC56040115000080010197 +:1018A000160001000046A6010D02F1EC56030000EF +:1018B00000010000D4E0A023AF14981699EAEA01D1 +:1018C00034E0A021D7EAEB0134E347005C0E9CE052 +:1018D000A023A2EAE80124E0A02200EAEB01240E02 +:1018E0009C0E9BE0A01098E0A02396EAE8012CE073 +:1018F000A021F414921693EAE3012CF5D6C0080B4C +:101900009B0A9C2A4CC99DE34C00D4E0A02384EAA6 +:10191000E80134E0A021E214961697EAE70134EAE0 +:10192000FC01FC833C8ACCEA00001BF75C00AC0B9A +:101930009C594CC0440B9C2FFCAA9C0B9CE0A02300 +:10194000DD14901691EAEA012400980299E0A023A0 +:1019500017EAEB013C14981699E0A022D4BB1B04B3 +:101960009A069B00980299E0A0230ABB08E0A021F8 +:1019700081EAEB01440C9A0E9B00980299E0A022A8 +:10198000FFEAEB014C0B8C2FFCAA8C300C0B8B5913 +:101990004BC021AA8CAA4C2FEDD83A800159BCD655 +:1019A00031202D30033007300C501C3005500CE036 +:1019B000661A8800B742001302F1EC5604011600C3 +:1019C000008001011700010000F91D010D02F1EC7A +:1019D00056030000000100EA1600000D925942E093 +:1019E0008101300DBC585CE085012C403C301BE08F +:1019F000A011A6E0830126ECE00144E068999AEA90 +:101A0000189999E0699999EA193FA9009A029BE00F +:101A1000A02334C062E064126FEA143B03C248E0C2 +:101A200068999AEA189999E0699999EA193FA90081 +:101A30009A029BE0A02320C133009A029BE06866D3 +:101A400066EA186666E0696666EA193FE6E0A02382 +:101A500015C062E0649BA6EA143B44C058E064CC25 +:101A6000CDEA143DCC0DAB169C201C580CC0242E86 +:101A7000CC204B580BC0242ECBEC0C002CF8FC01D6 +:101A800054EC0B002BF6FB0154E0A00F13E0A02256 +:101A9000D5BFDBE0A0110AE06BC290EA1B3CF5E089 +:101AA000A0114EC143ECEA014CBFDB149016910823 +:101AB0009CE0A022C300980299E0A022DFC072F748 +:101AC000D2C0080D8C201CC3CD18935C535813E072 +:101AD0008500B3300BC08800C41F001302F1EC5620 +:101AE000040117000080010118000100006EF601DA +:101AF0000D02F1EC56030000000100EC0B001CF994 +:101B00001C00AC18075C772FFB5C7B594BCF7540F2 +:101B10003CE0A022A5E0689204EA186FB0E06911E9 +:101B200027EA193F91E0A02212E0A010D118945C9E +:101B3000770E9CE0A02306E068A9FCEA18D2F1E049 +:101B400069624DEA193F50E0A02201E0A010C008F0 +:101B50009BE0A00F8518940D8A149C201C580CC083 +:101B6000242ECC0D9B142B580BC0242ECBEC0C0038 +:101B70002C783CEC0B002B763BE0A00EADFC1BBFA1 +:101B800080E0A00F6DE0A0226BE0681EB8EA18EBC1 +:101B900085E069B851EA193FBEE0A02215E0A01027 +:101BA000971897089BE0A010DDC0333007C1480E9E +:101BB0009C0E9BE0A00F541893089C089BE0A00F7C +:101BC0004F069BE0A00E88E0A0224AE0A051B4E0BE +:101BD000A0107E501C401B0E9CE0A00FB50DCBEC5E +:101BE0000B002BF74C01A40DCC2FFCACCC0DCC5929 +:101BF0004CC031300CACCC0DDC594C0061270013CB +:101C000002F1EC56040118000080010119000100E6 +:101C1000002E4D010D02F1EC56030000000100C042 +:101C2000440DDC2FFCACDC3007C0B85C77EC07005F +:101C30002CF8FC01A40A9BE0A00ECE18952FF70DFE +:101C4000DCF8071900CF33E0A010E61897FC1C4120 +:101C5000200A9BE0A00F160E9BE0A00F87E0A022B9 +:101C600011E068999AEA189999E0699999EA193FF7 +:101C7000B9E0A0217EE0A0103D500CC048300CAC73 +:101C8000CCACDC400CC028300C2FEDDC32D703800C +:101C9000015D9C80015DA080015E448001BC3880B4 +:101CA000015C4ED53118901492300430053001306B +:101CB000063007C2685943C02521430E9CE0A0109E +:101CC000C1089BE0A00E881894E0030023660C0A6C +:101CD0009BE0A00E8118950E9CE0A010B3660BE06F +:101CE000A00ED0029BE0A00E771891EE07024CE008 +:101CF000A010A80C9BE0A00E6F18962FF75C571B46 +:101D0000FC1837C0941BF304230E032FF35803CDA4 +:101D1000342EC3CD4B089C089BE0A00EB31897004F +:101D20003F32001302F1EC5604011900008001015A +:101D30001A00010000BB86010D02F1EC5603000001 +:101D40000001001BFCE0A010790C9BE0A00EAC0E83 +:101D50009BE0A00DE5E0A021A7E068ED8DEA18A0CA +:101D6000B5E069C6F7EA193EB0E0A01FFF14961669 +:101D700097089C0A9BE0A00E9718951BFCE0A0100A +:101D80005D029BE0A00E900A9BE0A00DC9E0A0219F +:101D90008B0C980E99E0A0213BE0A00FBDD93280BA +:101DA000013B2080015A2480015CC8EBCD40FE1825 +:101DB00094169330075804C0342EC4C0485944C008 +:101DC000252144300630053002C0C8E06B126FEAAE +:101DD0001B3B03029CE0A00FE9C0332FF55C752F7D +:101DE000F2E803010B5C52069C201C1832C264040A +:101DF0000B2FFB580BC0342ECBC048594BC02521AC +:101E00004B169C2FFC594CC025214CE06A1A88EADD +:101E10001A0000F40C002C783CF40B002A743BE010 +:101E2000A00D7E1891E06B126EEA1BBB03E0A00FC1 +:101E3000C9CCD22FF65C76CD4B2FFB580BC0242E8D +:101E4000CBE06A007135001302F1EC5604011A0070 +:101E5000008001011B00010000043D010D02F1ECB6 +:101E6000560300000001001A88EA1A0000F404007A +:101E70002C783CF40B002A743BE0A00D63E0A02119 +:101E800025BFDBE0A00F5A18945C7558B5C125E05A +:101E90006BC290EA1B3D75E0A00F9AC0B3E06BCC1B +:101EA000CDEA1B3ECC089CE0A00F9EC0323017C18B +:101EB000585C7658B6C125E06BC290EA1B3D7508A8 +:101EC0009CE0A00F85C0A3E06BCCCDEA1B3ECC0804 +:101ED0009CE0A00F89C02230270E9C5C5CE3CD8083 +:101EE000FED70380015D60800139D080013A6480B3 +:101EF000013A7CEBCD42FF18951697149310913060 +:101F00000230063004C0E8401C5C54081C580CC069 +:101F1000240E0CEA0C032C049BE0A00D8118922FD8 +:101F2000F4E6041800CF13069CE0A00F99189B0458 +:101F30009CE0A00E3F830C3004C1B8401B5C5408E9 +:101F40009C162C580CC0240E0CEA0C0022620C6467 +:101F50000BE0A00CF71890620C640BE0A00CF200F0 +:101F60009BE0A00DB30C9B000D50001302F1EC564A +:101F700004011B00008001011C000100001015017C +:101F80000D02F1EC56030000000100E0A00D5A180C +:101F9000962FF4E6041800CE43069CE0A00F7218BA +:101FA0009B0C9CE0A00E1840AB970CE3CF82FF8007 +:101FB0000135D880013760800136B480013AF48061 +:101FC000013848D401FEB0B4812D5C198C580CC284 +:101FD000C0E06C43DCEA1C0000785BF72A00225862 +:101FE0001AC0652F3B178B581BC025DA0A787BF780 +:101FF0002A0022581AC0552F3B178B581BCF7478D4 +:102000006CF92B0022581BC205F93B000D581BC16F +:10201000C5F92B0014584BC0512D8C980C581CCE70 +:1020200064585BC121DA0A300CC0C8E06B43DCEABB +:102030001B0000F60C032B2F3B178B581BCD742F66 +:10204000FC5C6C58BCCF35D80A0000D401300AE0E3 +:10205000A03338D802D70380018334D401300AE09A +:10206000A0338AD802D703800183E8D401300AE084 +:10207000A033DCD802D7038001849CEBCD408018CC +:102080009BF73C000D585CE084017600B4EE001331 +:1020900002F1EC5604011C00008001011D0001004A +:1020A000007AAD010D02F1EC56030000000100F7CB +:1020B000290004F73C000DF72A00005C5A589AF9F1 +:1020C000BA0205FE0A001A94CA140F0014005A003E +:1020D000A000E601640678028E0216026EE06A290C +:1020E00040EA1A0000F80C1006180A762CF80904C9 +:1020F0001CF55C00AC762CF738000C1208F80804CC +:102100001CF55C00AE762CF738000CF2080019F8CC +:1021100009041CF55C00B02F3B178C2FFCB68CE338 +:10212000CF8080E06A2940EA1A0000F80C100618F7 +:102130000A762CF809041CF55C00CC762CF73800E4 +:102140000C1208F808041CF55C00CE762CF7380059 +:102150000CF2080019F809041CF55C00D02F3B179D +:102160008C2FFCB68CE3CF8080E06A2940EA1A000D +:1021700000F80C1006180A762CF809041CF55C000F +:10218000EC762CF738000C1208F808041CF55C00FB +:10219000EE762CF738000CF2080019F809041CF54B +:1021A0005C00F02F3B178C2FFCB68CE3CF808000B7 +:1021B000261F001302F1EC5604011D0000800101EE +:1021C0001E00010000EF66010D02F1EC5603000055 +:1021D000000100F2081501762A100A940A580AC173 +:1021E00031762AF73E000C120EF40E041A580AC07B +:1021F000B1762AF73E000CF20E001EF40E041A58B7 +:102200000AE08002B2E06A2940EA1A0000F40C00F9 +:102210003A762CF808040CA96CF54C0084762CF75F +:1022200038000C1208F808041CF4F800841808F5AB +:10223000480084762CF738000CF2080019F80904DD +:102240001CF55C00882F3B178C2FFCB68CE3CF80ED +:1022500080E06A2940EA1A0000F80C1012180A7689 +:102260002CF809041CB40C762CF738000C1208F872 +:1022700008041CB41C762CF738000CF2080018F87F +:1022800008041CB42C762CF738000C303E1297F062 +:102290000E0347F807041CB43C762CF738000CF208 +:1022A000080028F808041CB44C762CF738000C30D1 +:1022B0005E1297F00E0347F807041CB45C762CF707 +:1022C00038000C306E1297F00E0347F807041CB468 +:1022D0006C762C00F9AE001302F1EC5604011E00DE +:1022E000008001011F0001000050DD010D02F1EC32 +:1022F00056030000000100F738000C307E1297F002 +:102300000E0347F807041CB47C762CF738000CF257 +:10231000080039F809041C2F0AB40C2F3B178C2F26 +:10232000FCB68CE3CF8080E06A2940EA1A0000F412 +:102330000C003A762CF809041CF55C005C762CF74E +:1023400038000C1208F808041CF55C005E762CF7C7 +:1023500038000CF2080018F808041CF55C006076E0 +:102360002CF738000C303EF00E0349F809041C2904 +:10237000EAB40C2F3B178C2FFCB68CE3CF80807611 +:102380002AF409041AE0692940EA190000120CF93C +:102390006A012C2F3B178C2FFCB68CE3CF8080E09A +:1023A0006A2940EA1A0000F80C1006180A762CF880 +:1023B00009041CF55C010C7628F73C000C1809F0A8 +:1023C00009041CF55C010EF70C0028581C5F4CF545 +:1023D0006C01102F3B178C2FFCB68CE3CF8080F75D +:1023E0003C000D585CE08101D2F7290004F72C0075 +:1023F000005C5C589CF9BC00B786001302F1EC56F7 +:1024000004011F00008001012000010000CFB6017F +:102410000D02F1EC560300000001000205FE0C0065 +:102420001C98CC180F0014007400D40134019203DE +:10243000840326028202FC3018C128F00C10061812 +:102440000AF50C00ACF55C00A6F50C00AEF55C00DE +:10245000A8F50C00B0F55C00AA2FF85C68E06A29CA +:1024600040EA1A00005858CEA5762CF809041CF54D +:102470005C00C4762CF738000C1208F808041CF530 +:102480005C00C6762CF738000CF2080019F8090435 +:102490001CF55C00C8C8993018C128F00C1006184B +:1024A0000AF50C00CCF55C00C6F50C00CEF55C001E +:1024B000C8F50C00D0F55C00CA2FF85C68E06A290A +:1024C00040EA1A00005858CEA5762CF809041CF5ED +:1024D0005C00E4762CF738000C1208F808041CF5B0 +:1024E0005C00E6762CF738000CF2080019F80904B5 +:1024F0001CF55C00E8C5993018C128F00C100618CE +:102500000AF50C00ECF55C00E6F50C00EEF55C005D +:10251000E8F50C00F0F55C00EA2FF8007C460013AB +:1025200002F1EC56040120000080010121000100AD +:10253000007307010D02F1EC560300000001005C7E +:1025400068E06A2940EA1A00005858CEA5762CF8AF +:1025500009041CF55C0104762CF738000C1208F80D +:1025600008041CF55C0106762CF738000CF2080014 +:1025700019F809041CF55C0108C299301CC0D8F494 +:102580000C003AF4F80084F548007CF5080088F562 +:102590005800802FFC5C6CE06A2940EA1A00005861 +:1025A0005CCEF5762CF809041CA96CF54C00A476D9 +:1025B0002CF738000C1208F808041CF4F800A418D2 +:1025C00008F54800A4762CF738000CF2080019F83A +:1025D00009041CF55C00A8CFA83018C1C8F00C1085 +:1025E00012180A149C212C940EB80E2FEA940EB8DF +:1025F0001E941EB82E942EB83E943EB84E944EB8FB +:102600005E945EB86E946EB87E947A2F0CB80A2FE2 +:10261000F85C68E06A2940EA1A00005858CE05764E +:102620002CF809041CF55C0048762CF738000C12D5 +:1026300008F808041CF55C004A762CF738000C00FA +:102640003C82001302F1EC560401210000800101DC +:102650002200010000E6CC010D02F1EC560300005F +:10266000000100F2080018F808041CF55C004C7624 +:102670002CF738000C303E1297F00E0347F8070491 +:102680001CF55C004E762CF738000CF2080028F898 +:1026900008041CF55C0050762CF738000C305E12F4 +:1026A00097F00E0347F807041CF55C0052762CF7F0 +:1026B00038000C306E1297F00E0347F807041CF533 +:1026C0005C0054762CF738000C307E1297F00E0325 +:1026D00047F807041CF55C0056762CF738000CF21E +:1026E000080039F809041C2A8AB40CC828301CC117 +:1026F00058F40C003AF508005CF5580054F5080051 +:102700005EF5580056F5080060F5580058F50800C9 +:10271000622A6AB4082FFC5C6CE06A2940EA1A005D +:1027200000585CCE75762CF809041CF55C007C76AC +:102730002CF738000C1208F808041CF55C007E76B3 +:102740002CF738000CF2080018F808041CF55C009F +:1027500080762CF738000C303EF00E0349F809045F +:102760001CF55C006C53001302F1EC5604012200CE +:102770000080010123000100005977010D02F1ECF6 +:10278000560300000001000082C458301CC08818A5 +:102790000AF538012CF568012B2FFC5C6CE06A29E6 +:1027A00040EA1A0000585CCF45762CF809041CF565 +:1027B0006C0130C3083018C128F00C1006180AF557 +:1027C0000C010CF55C0106F50C010EF55C0108F539 +:1027D0003C0110F56C010A2FF85C68E06A2940EAB8 +:1027E0001A00005858CEA5762CF809041CF55C0197 +:1027F00024762CF738000C1208F808041CF55C014C +:1028000026762CF738000CF2080019F809041CF59C +:102810006C0128305C2F3BB68CE3CF80800000EB4E +:10282000CD40801897FEB0B0CFEDB70002C382E074 +:102830006B43DCEA1B0000765B179A581AC305F756 +:102840003A000DE0692A74EA190000585AC0F4F2FF +:102850000A0019F93A0043B28A2BCC198CB29C2F8A +:102860003B178C2FFCB68CE3CF8080301AC0B8F2B7 +:102870000A0018109E202E1187BC871198BC982F33 +:10288000FA5C6A585ACF55009DC5001302F1EC5608 +:10289000040123000080010124000100004D5F01BC +:1028A0000D02F1EC56030000000100F93A0043F379 +:1028B0006A00082BCC198C2F79B28C305C2F3BB678 +:1028C0008CE3CF8080D7038000853CD531208D30CC +:1028D0000BBACBE06706D8EA170000780B8F0B78AD +:1028E0001B8F1B782C8F2C3006300C504C507C509A +:1028F0006C505C305A0E9B2F8B6E4CE0A0027230F5 +:102900005A0E9B2FCB6E5CE0A0026C305A0E9B6E71 +:102910006CE0A002673059FACAFFF0303B6E4CE021 +:10292000A0027618913059FACAFFE4303B6E5CE0A1 +:10293000A0026E18923059FACAFFE8303B6E6CE084 +:10294000A002661890305A303B6E4CE0A002A8FC02 +:102950001B4040E0A009D0502C6E146E03300B06D3 +:102960009CE0A05913C0E1300B089CE0A0590EC0B8 +:10297000916E2C300BE0A05909C041E0A002283034 +:10298000163005EF3C000D503C6E2B169CE0A00964 +:102990003F500C089C089BE0A0093A1894069C063E +:1029A0009BE0A00935089BE0A008DC00E3010013D0 +:1029B00002F1EC5604012400008001012500010011 +:1029C0000027E7010D02F1EC560300000001004072 +:1029D0000BE0A008D9E0A01C2DE0A04B97E0A00AD6 +:1029E00061500C305A1A9B6E7CE0A0020D400CE046 +:1029F0006B0CDDEA1B40FBE0A00AAAC093400CE090 +:102A00006B49A7EA1B413CE0A00A96C043CF1D30AA +:102A10000CCE683059FACAFFEC303B6E7CE0A00265 +:102A200009FC1B4060E0A00A93CF22E06B6667EAD6 +:102A30001B3FE6029CE0A00A8BCEA2402CE06B1B61 +:102A40003EEA1B4130E0A00A83C172402CE06BB427 +:102A5000D7EA1B4109E0A00A6FC0F3EF3C000DE08C +:102A60004C00FFCD50E06C00FF2F37AE8C3FFC4098 +:102A70009BB68C301CCB48402CE0A01BDBBFDB306E +:102A800008FC194010E0A01BF5C6B2FC144000047D +:102A90009C089BE0A00A5CC58230066E2C400BE0CF +:102AA000A0093CE0A01BC6E0A04A30E0640758EA59 +:102AB000140000FC188000E069A5DCEA19404CE035 +:102AC000A01B2FE0A05478E0A01BFF891C5C5600DF +:102AD000B19C001302F1EC560401250000800101B5 +:102AE0002600010000B22C010D02F1EC560300009B +:102AF000000100C5B1681C5C4CE04C003DC9A46EEF +:102B00001CE0A01BA914981699109212936E0CEE5B +:102B10001C8000E0A01BA004980699E0A04C78FC63 +:102B2000188000E069A5DCEA19C04CE0A01B0BE0AE +:102B3000A05454E0A01BDB18955805C034FE35FEA8 +:102B4000980A9C2D3C35ABF80B0C0A14965846C0DD +:102B50002130066813069B0C9CC6FCC060069A0ACE +:102B60009B0C9CC7ACC1C1C56DC208049C089BE00E +:102B7000A009F4FE92FF5F009C089BE0A009EECA4A +:102B800003C58B3059FACAFFF0305B6E4CC63DFC72 +:102B90001B3F80E0A009EEFE92FF4DC91BEF3C00F9 +:102BA0000E0C3CC030EF66000EEF3C000E403B16B2 +:102BB0003CC051403BE04B00FFC2316816680BE25D +:102BC0001B0006C030301CC0480C9A0A9BC8BC5C75 +:102BD00046E046003DC1545C5CC130EF3C000EEF66 +:102BE0003B000DF80B1800C0C0EF6C000D409BB609 +:102BF0008C301B00F53B001302F1EC56040126005B +:102C00000080010127000100000D97010D02F1EC89 +:102C100056030000000100BACBE04C00FFC0302F8B +:102C200047AE8C1BCC2F8DD932D7038001D6DC80E8 +:102C300001BC38800139D080015DA08001BA3880A4 +:102C4000015D608001BF1880015C4E8001CEE48090 +:102C5000015DF680013A6480013A7CE06A0008EA8E +:102C60001A0000F40C003A740C183BC055741C1682 +:102C70003C5F4CC028300C5C5C5EFCD401E0690613 +:102C8000D8EA1900002F491389E0680758EA1800AC +:102C9000007008E2180006C030C37CD8025809C38F +:102CA00035123CC0C0129A2FFAF4081401BF8814E0 +:102CB00008A348F408012A143CC101F80A105A225A +:102CC0008A580CC091E04B013BC085FE3AFE981437 +:102CD0003BC044D80A143BCFE5123CC0B02FD9F218 +:102CE0000A1401BF8A120AA34AF20A0129123CC03F +:102CF000B1F80A105A2D8A580CC041E04B002EC082 +:102D000034163ACE85DA0AEBCD40F8210DE06E0696 +:102D1000D8EA1E0000FD350071BB001302F1EC562D +:102D2000040127000080010128000100009A7C01B5 +:102D30000D02F1EC56030000000100000CE067E812 +:102D4000CCEA1780011A990E983144110612A62078 +:102D500044CFD13006401914985C4840040838C06C +:102D60005514985C481238C0B5402814965C461239 +:102D700036C31514995C491039C2D430165805C6AB +:102D800095580CC3D50A3CC0C00A9A2FFAF409140E +:102D900001BF891409A349F409012A143CC3611A2B +:102DA000940E9A2ECA3403B509A9282083CFD1ECFA +:102DB0000A15041A99120A580CC2417409123BC22E +:102DC00054741A163AC224E06C00FF2F2EBC8C30CB +:102DD0000CC418403914965C461036C07514985CC3 +:102DE000481238C0343026CCBB14985C481238C026 +:102DF0007540495C4A1439C0353036CC1B300CC2A2 +:102E0000A8F40C032A143BCE050A3CC0B02FD5EA27 +:102E10000A1401BF8A0A0AA34AEA0A01250A3CC128 +:102E2000911A9A2AC73405AF09B5282085CFD1A5B4 +:102E3000660C9A1A99120A580CC0810072C60013C7 +:102E400002F1EC5604012800008001012900010074 +:102E500000DAC7010D02F1EC560300000001007416 +:102E60000C163CC094743C183BC064CC0BF40C03AF +:102E70002C163CCBC5301C2F0DE3CD80F80000E0B4 +:102E80006C00FFE06B06D8EA1B00002F2BB68C5EAF +:102E9000FD00009889F4091900C0333009B8099879 +:102EA000892FF9B8099889F4091900C033300AB894 +:102EB0000A760B988AF80A002C991B5EFF0000D452 +:102EC00031201D1896169114901294300530038C01 +:102ED000875C87029CE0A008D51892F5D4C010F753 +:102EE000D1B0100C9CC35C049BE0A0075F810CC0B8 +:102EF00058089720175C872FF3E2031900C184EC70 +:102F0000070022641C600BE0A00618500C641C60D3 +:102F10000BE0A00613400BE0A006D40A9BE0A0063D +:102F20007B18955817CE6520175C87CE6B029CE006 +:102F3000A008A8189B0A9CE0A007382FFDD8328073 +:102F40000135D88001376080013B2080013848EB93 +:102F5000CD40F8189516971496300C30048A8300EB +:102F60007ABE001302F1EC56040129000080010131 +:102F70002A000100004F0C010D02F1EC5603000085 +:102F8000000100C1085C835803C075EA03002B767A +:102F90001BE0A0065320135C835803C0340C93201D +:102FA000132FF4EE041900CEF5E3CD80F8D703809B +:102FB0000136B4300BF96B000DE06B43DCEA1B000B +:102FC0000076BBF71A005C3019F9280000F20809F6 +:102FD0004C184A2A4BB60A5EFF0000300BF96B0012 +:102FE0000DE06B43DCEA1B000076BBF71A005C3097 +:102FF00019F9280000F208094C188A2A4BB60A5E13 +:10300000FF00005EFF0000EBCD40F8204D18951644 +:10301000941297EA0A001C0E0C5817C050F92B00A6 +:1030200016580BC1012EACF92B00002FFBB88BEA10 +:1030300007000C2DECF92B00002FFBB88B0B9C2FFD +:10304000FCAA9CEA070003E7260022FAE700080B27 +:103050009AEB2B0000BB1BE06CEFF4EA1C8001FE36 +:10306000B0AE4C300CC0282FFC5C6C586CC104EA2C +:103070000C001B0E0B2EABF72A0000581ACF555828 +:1030800004C024007B39001302F1EC5604012A002D +:10309000008001012B00010000F0B7010D02F1ECEE +:1030A000560300000001001894E76400122EC3A626 +:1030B0008C2FCDE3CF80F8EBCD40F8204D1895163E +:1030C000941297EA0A001C0E0CEA070003F92B0081 +:1030D00016581BC1252EACF92B0000201BB88BE71E +:1030E0002C0022201CE76C00220B9C581CC0550BA6 +:1030F0009CFE3CFF01AA9CE7260022FAE700080B91 +:103100009AEB2B0000BB1BE06CEFB4EA1C8001FEC5 +:10311000B0AE06300CC0282FFC5C6C586CC114EAB1 +:103120000C001B0E0B2EABF72A0000581ACF555877 +:1031300004C0241894E76400122EC3A68CC0683F14 +:10314000FCE76C00122EC3A68C2FCDE3CF80F88055 +:10315000008774180BF72A0012580A5E5DE06A4374 +:10316000DCEA1A000074BA2ECBF7290000F409003B +:103170001A290A940B2DCC980C580CC0245EFD5CC7 +:103180008B5E1D302C5EFCD401F3DAB008F5DBB0A9 +:10319000083FFBC4CFD80AD401F3DAB008F5DBB09E +:1031A000083FFBC8AFD80A003097001302F1EC5675 +:1031B00004012B00008001012C00010000E49F01AC +:1031C0000D02F1EC56030000000100584CC0415CB8 +:1031D0006B5F0CC028300C5C5C5EFCEBCD40E018F3 +:1031E000951497585BC0303046C0283056F7D7B09A +:1031F00008F9D6B008CEBFC0403FFCEB5C0028F316 +:10320000D7B008F5D6B008302B0A9CC22FE3CF8088 +:10321000E00000EBCD40E018951497585BC03030CB +:1032200046C0283056F7D7B008F9D6B008CCFFC151 +:1032300010EB0C0028580CC0A4E06C0134EA1C0010 +:1032400000980C2D85AA0CE3CF80E03FFCEB5C00DE +:1032500028F3D7B008F5D6B008302B0A9CC3FFE39B +:10326000CF80E0D42118961697EC07000CF92B00BC +:1032700012580BC2F52ECCF9250000E06C43DCEAB5 +:103280001C000078BCF805001C290C9804F7D7B086 +:1032900008F9D5B008C9BFC0F05845C121089C2C19 +:1032A0004CE06B00F0F80B0C0A580BC0A1300C2D51 +:1032B000A6AC8CDA2A5845C041E0440384CF80583C +:1032C00055C041E04426E8CF30ED0C002128001322 +:1032D00002F1EC5604012C00008001012D000100D8 +:1032E000008E27010D02F1EC5603000000010000E2 +:1032F00024580CC024D82A5804C221301CED6C007C +:1033000010F7D7B008F9D5B008C73FC170ED0C0071 +:1033100028581CC135ED0C0028201CED5C0028ED60 +:103320000C0028580CC0A1F5D7C008F7D5B008ED9F +:103330002C0000E0A02B52D82A302CD822F7D7B08E +:1033400008F9D5B008C55FCD70E06C00F0E80C0C52 +:103350000A580BCD11300C2F06AC8C302CD82280A3 +:103360000183E8EBCD40801897169A0E0A2ECAF515 +:103370002C0000C3EFC0702D878E0C580CC034E3B6 +:10338000CF8080E3CF9080EBCD40C018971696EEAB +:1033900006000A2ECAF52C0000C2BFC070EF0C0058 +:1033A00028580CC034E3CF80C0F7D6B0080E9CC4B8 +:1033B000CEE3CF90C00000D401FE7AFE98F95A0007 +:1033C00024C2FED8020000D401F3DAB008303A304B +:1033D0002BC51ED80A0000D401F3DAB008303A3009 +:1033E0002BC8FED80A0000180BF72A0012580A0052 +:1033F0005FBE001302F1EC5604012D0000800101B4 +:103400002E000100001BEC010D02F1EC5603000040 +:103410000001005E5DE06A43DCEA1A000074BA2E27 +:10342000CBF7290000F409001A290A940BE04B009D +:103430003CC051300B2DACB88B5EFFE04B0078C028 +:1034400051301B2DACB88B5EFF2DCC980C580CC0A6 +:10345000245EFD580B5E1D302C5EFCD401388AF9C9 +:103460005A0024FEB0FDF0D8020000D401FE7AFE1E +:10347000D4F95A0024FEB0FDE7D802EBCD40C018C5 +:10348000971496F3D6B008300A3FFBFEB0FE060C48 +:10349000073FFCEF6C00122EC7AE8CE3CF80C0EB71 +:1034A000CD40C018971496F3D6B008300A3FFBC33E +:1034B000AE0C073FFCEF6C00122EC7AE8CE3CF8042 +:1034C000C00000E06C43DCEA1C0000784B179B58FE +:1034D0001BC064788C199C580C5F0CC028301C5C95 +:1034E0005C5EFCEBCD40C0E06C43DCEA1C00007885 +:1034F0008778460F9C580CC0710D9C581CC0456CB9 +:10350000BC781C5D1C0D9C580CC0510F9C580C5F66 +:103510000CC02800FED8001302F1EC5604012E0066 +:10352000008001012F00010000A457010D02F1EC01 +:1035300056030000000100300C5C5CE3CD80C0D479 +:1035400001FEB0FD93FEB0AB17300BF96B0043F9F1 +:103550006B00452B5CB88BDA0A0000D401FEB0FD8D +:1035600099FEB0AB09300BF96B0043F96B00452BAA +:103570005CB88BDA0AD7038000853CE06C43DCEA58 +:103580001C0000784B179B581BC064785C199C5832 +:103590000C5F0CC028301C5C5C5EFCEBCD40C0E0D6 +:1035A0006C43DCEA1C0000785778460F9C580CC02E +:1035B000710D9C581CC0456CBC781C5D1C0D9C5842 +:1035C0000CC0510F9C580C5F0CC028300C5C5CE3A5 +:1035D000CD80C0EBCD40C0E06C43DCEA1C0000783D +:1035E0005778860D9C581CC0440F9C581CC0456ED3 +:1035F000BC781C5D1C0D9C580CC0510F9C580C5F76 +:103600000CC028300C5C5CE3CD80C0E06C43DCEA8D +:103610001C000078AC199C580C5F0C5EFC0000D4B8 +:1036200001E06C43DCEA1C0000780C199B580BC0CD +:103630004178BC781C5D1C009B6A001302F1EC56BB +:1036400004012F00008001013000010000B43F019F +:103650000D02F1EC56030000000100DA0A0000D46C +:1036600001FEB0FD29E06C43DCEA1C0000780C1977 +:103670009B580BC04178BC782C5D1CDA0A0000EB2B +:10368000CD40C0201DE06CF27CEA1C80011A9B1921 +:103690008AB68A199AB69AFACBFFFE2FEC198AB627 +:1036A0008A199AB69A3018FAC9FFFE30FA33CB302D +:1036B0000CFEB0AC0D18975817C7711BACE04C004E +:1036C00040C731320CBA8C36FCBA9C30291A9A3376 +:1036D000CB300CFEB0ABD0C031300CC688324CBA07 +:1036E0008CE06C00C0BA9C30291A9A33CB300CFEA7 +:1036F000B0ABC2CF30325CBA8C310CBA9C30291AD4 +:103700009A33CB300CFEB0ABB7CE8035ACBA8CE080 +:103710006C00F0BA9C30291A9A33CB300CFEB0AB57 +:10372000ABCDC035BCBA8C301CBA9C30291A9A3348 +:10373000CB300CFEB0ABA0CD10323CBA8C308CBA82 +:103740009C30291A9A33CB300CFEB0AB95CC603448 +:103750000CBA8C305CBA9C30291A9A00583A001383 +:1037600002F1EC560401300000800101310001003B +:1037700000A082010D02F1EC5603000000010033AD +:10378000CB300CFEB0AB8ACBB0341CBA8C311CBA37 +:103790009C30291A9A33CB300CFEB0AB7FCB00346F +:1037A0002CBA8C3006BA9630291A9A33CB300CFEDC +:1037B000B0AB74CA50320CBA8CBA9630291A9A330C +:1037C000CB300CFEB0AB6AC031C9AB30070E9C2FBA +:1037D000FDE3CD80C00000D421202DE06CF1D0EAC3 +:1037E0001C80011A9B198AB68A199AB69A781C50BD +:1037F0001C301CBA8CE06C0080BA9C30291A9A33B9 +:10380000CB300CFEB0AB4A581CC030300CC728304F +:1038100048FAC9FFFC350A33CB300CFEB0AB6AC0A6 +:10382000901BCCE04C00ACC1001BCCE04C00CAC0EB +:10383000C0E06C06C0EA1C0000300B990B991B3EDF +:10384000CA992A993BC4A81BCCE04C00ACC1B11B5F +:10385000DC1897EFD7C007EDBC0007C0225C371B10 +:10386000EC1896EDD6C007EDBC0007C0225C361BF5 +:10387000FC1895EBD5C007EDBC0007C0225C3500F5 +:10388000C24A001302F1EC5604013100008001012C +:1038900032000100003549010D02F1EC5603000031 +:1038A0000001003004C2481BCCE04C00CAC2011B1E +:1038B000DC189BF7DBC007F6071100EDBC0007C062 +:1038C0002216971BEC189BF7DBC007F6061100EDDC +:1038D000BC0007C02216961BFC189BF7DBC007F63E +:1038E000051100EDBC0007C02216953014E06C06EF +:1038F000C0EA1C00009907991699259934301CBA22 +:103900008C300CBA9C30291A9A33CBFEB0AAD85806 +:103910001CC8F1301C2FEDD8220000EBCD408020D8 +:103920001DE067F014EA1780011A9C0F8BB88B0F0B +:103930009BB89B320CBA8C36FCBA9C30291A9A334D +:10394000CB300CFEB0AABC581CC0702FC70E9CFE1A +:10395000B0AA64300CC078C52F2F470E9CFEB0AAC9 +:103960005D301C2FFDE3CD80800000EBCD4080203A +:103970001DE067F004EA1780011A9C0F8BB88B0FCB +:103980009BB89B320CBA8C300CBA9C30291A9A33F3 +:10399000CBFEB0AA95581CC0702FC70E9CFEB0AAD3 +:1039A0003D300C00D701001302F1EC560401320047 +:1039B0000080010133000100008AF2010D02F1ECE8 +:1039C00056030000000100C0B8301A300B303CFE36 +:1039D000B0AD582F470E9CFEB0AA32301C2FFDE32D +:1039E000CD8080EBCD40F8202D189316943057E011 +:1039F00066EEF8EA168001AD0ABB1B300CE06506E6 +:103A0000C0EA150000EB5C0010EB5C0012EB5C0000 +:103A10001430181A99327A33CB300CFEB0AA8E5873 +:103A20001CC1511B8CEDBC0003C112F1D4C00806AF +:103A300099E06A00A833CB300CFEB0AA7FC1212FD9 +:103A4000060C9CFEB0A9FC300CC3C80E9CFE3700CF +:103A5000015C7CCDF12F860C9CFEB0A9F1300CC32B +:103A6000183007E0A052FA29AC988C580CC0A1E09D +:103A70006C43DCEA1C0000781C199C581CC02530E3 +:103A8000175C576A3C1837C1C16A0CF80C107DA34B +:103A90007C33CBF80B0C0AEB5A00106A1CF80C10A4 +:103AA0007DA37C33CBF80B0C0AEB5A00126A2CF87E +:103AB0000C107DA37C33CBF80B0C0A2EC5AA0A3060 +:103AC0001C2FEDE3CD80F80082D9001302F1EC56F3 +:103AD000040133000080010134000100009EDA017E +:103AE0000D02F1EC56030000000100800088708098 +:103AF00001D990EBCD4080201DE067EEB0EA178041 +:103B0000011A9C0F8BB88B0F9BB89B0E9C2FCCFE81 +:103B1000B0A9A8357CBA8C314CBA9C30291A9A339A +:103B2000CB300CFEB0A9F0C0712F870E9CFEB0A95F +:103B300099300CC188301A301B303CFEB0ACB43226 +:103B40001CBA8C301CBA9C30291A9A33CB300CFE2C +:103B5000B0A9DAC0712F070E9CFEB0A983300CC04B +:103B600028301C2FFDE3CD80800000EBCD4080206D +:103B70001DE067EFC4EA1780011A9C0F8BB88B0F0A +:103B80009BB89B301A300B303CFEB0AC8D0E9C2F96 +:103B9000CCFEB0A967321CBA8C300CBA9C30291A02 +:103BA0009A33CBFEB0A9B0C0712F870E9CFEB0A98E +:103BB00059300CC028301C2FFDE3CD80800000EB75 +:103BC000CD40F8202D1893CCEEE067EF60EA178027 +:103BD000011A9C0F8BB88B0F9BB89BFACBFFFC0E86 +:103BE0009C2FEC198AB68A199AB69A00D5630013ED +:103BF00002F1EC560401340000800101350001009F +:103C000000F462010D02F1EC56030000000100FE19 +:103C1000B0A81E1896300CBA1C357CBA8C3005BA88 +:103C20009530291A9A33CB300CFEB0A97FC03130C1 +:103C30000CC448321CBA8C3014BA9430291A9A3306 +:103C4000CB300CFEB0A972CF40301A301B303CFE96 +:103C5000B0AC3CA6840C9CFEB0AC04581CC19030A7 +:103C60001B0C9CFEB0AAEA9A9B2FFBBA1B0C9CFE75 +:103C7000B0ADDEC0602FC70E9CFEB0A905C0989AFB +:103C80009CE04C0032CE852F470E9CFEB0A8FC3045 +:103C90001A300B303CFEB0AC19300B0C9CFEB0ABB4 +:103CA000E5321CBA8CBA9530291A9A33CB300CFE07 +:103CB000B0A93CCBE0C91E301C2FEDE3CD80F880CD +:103CC00000853C80008D5080008B288000911C80F6 +:103CD00000877480008DB880008D5880008818EEB1 +:103CE0001B8000E08F0006F7EC2008E0860068F8F3 +:103CF0000B010AEE1A8000F9BA0200140B141CF52D +:103D0000DCC2E8E04A00FFC3F0F3DBC2E8C42000F5 +:103D100003EB001302F1EC560401350000800101B1 +:103D2000360001000061A9010D02F1EC560300000C +:103D3000000100A96BBFBB1429C0B059A9C3B2F6DA +:103D4000090A48F2091120F609094B5F1B104B18AC +:103D500098E6188000A96CBFBC161CC140F80B1275 +:103D600000F80B094CF40B010AE08A000EF1EC128A +:103D70008BF7DAD2E8B96C5C0CF5BC0601F7BB0630 +:103D8000FF5EFB5EFDF40A1109F4091120C0805E9C +:103D90003DF80A0A4B104BF809094CCEEB187CF59C +:103DA000BC06015F6C104C5EFCF3DBB2E85BF9F91A +:103DB000BC00FF5EFCF80915015E0DA17B5E0C14D2 +:103DC0007AC080F6091200F609094BF2091108CBF6 +:103DD0004BF20B010AF9BC0000A17C5D0A5EFAEE11 +:103DE0001B8000E08F0006F7EC2008FE96FF8CF6A3 +:103DF0000C0C4AF60C0D4BF9DAC2E8E04C00FFC39C +:103E000050F3DBC2E8E0800033A96BBFBB1829C0C8 +:103E1000B05999C2B2F6090A48F2091120F6090907 +:103E20004B5F1B104B1498E6188000A96ABFBA16A6 +:103E30000AC112000426001302F1EC5604013600F8 +:103E4000008001013700010000DE12010D02F1ECDB +:103E5000560300000001005C0CE04C00FFF9BA02C0 +:103E600000F1EA129BF7DCD2E8B77A5C0AF5BA06F1 +:103E700001F7BB06FF5EFBF1EA128BF7DCD2E8B973 +:103E80006A5C0AF5BA0601F7BB06FF5EFB5EFAF450 +:103E90000915015E0AA17B5E0A187CC080F6091232 +:103EA00000F609094BF2091108CC4BF20B000BA1EB +:103EB0007A5D0B5EFB0000F9EB2008F5DCC2E8C37D +:103EC000A0E04A00FFC2A0A96CBFBCF3DBC2E8C4FB +:103ED00050E04900FFC3F0A96BBFBB1409F60C0604 +:103EE0004AE6188000147A5F1AF5EB101C144BF8A0 +:103EF0000B1770F7B9070127E9E08A0038E049009D +:103F0000FFC4C4F1EB128CF9D9D2E8B96B5C0BF5A4 +:103F1000BB0601F7BC06FF5EFCF1DCD01FA17BF9FC +:103F2000B800FFF3DBB3085BF9F9BB0100F1EB125A +:103F30001C5EFCA97CC091E6188000F5DBB2E85B52 +:103F4000FAF9B800FF5EF8F80A1200F80A094C5CAA +:103F50003ACBDBF1DBD01F00BD44001302F1EC567D +:103F60000401370000800101380001000049F90117 +:103F70000D02F1EC560300000001005EF8A97BCEB3 +:103F8000E0F6091200F609094B5C39CBABF20911D6 +:103F900009F20A1120C0E0F9BB0300F6090A4C102F +:103FA0004CF60A094B5C0BF5BB0601F7BC06FF5E3D +:103FB000FC167BF5BB06015F6B104B5EFBEA187FBE +:103FC000805EF8F7EC2008F3DCC2E8C610E0490098 +:103FD000FFC710A96CBFBCF5DBC2E8C740E04A00D0 +:103FE000FFC7E0A96BBFBB163CF20A014A281AE0E2 +:103FF0008A007EE04A00FFC6E4F1DAD2E81AD01A5D +:10400000D8F6001601E0697999EA19BA821220F609 +:10401000000648301A5C9A1429F2000648F200158E +:1040200002F60006481429F2000648F2001502F6CE +:104030000006485C38F4090149F2000648F2001510 +:1040400002E1E813E0F60006485C38F4090149F2A1 +:10405000000648A369F3E813EAF80A0648F20A15CD +:1040600001E01AFFC02C0AF60A0648F809011CF7FD +:10407000BA0840F4091200F409094A00FEBA001314 +:1040800002F1EC5604013800008001013900010002 +:10409000000942010D02F1EC560300000001002866 +:1040A0000A1B0C1B00E61CFF80A98AF9DAD0175EF8 +:1040B000FCA97CC070F8091200F809094C5C39C9E8 +:1040C000EBF60915015E0EF5DBC2E8E04A00FFC120 +:1040D00090E61880005EF8F5DBB2E85BFAF9BC0008 +:1040E000FFF1DCD01F5EF8A97BC070F60A1200F663 +:1040F0000A094B5C3AC8BBEA187F80E618FF805E6D +:10410000F8E6188000F6091509F60817105EF83170 +:10411000A9A19CA19BE6188000BB88163CC0231671 +:104120001C5CF8A17C2019CFA110995CD95C3C5C87 +:10413000F9F20B1506A579F6091770F40A1109F4BE +:104140000C1120C0F0F9B90300F20A0A4BF1DBD0E0 +:104150001FF20C09495C09F5B90601F7B806FF5EC4 +:10416000F81279F5B906015F69F1D9D01F5EF8F34D +:10417000DBC28BF7D9D2E7E0290381E04900FEC01A +:10418000F2F60C1503F9EA13DCB79BF9DBD2E9A3CD +:104190007A5C0AF5BA0601F7BC06FF5EFC2FF9004F +:1041A000DA72001302F1EC560401390000800101BB +:1041B0003A000100009C89010D02F1EC5603000059 +:1041C000000100E08A000EE049047FC060EA1B7F26 +:1041D00080E61BFF805EFBF5EB10CACFB05EFEF6FB +:1041E0000C150BF9EA135CAB7A5F1A144CBFBCE6F2 +:1041F0001B8000F2091109F20A1120C0F0F9BC037A +:1042000000F8090A481648B7D8F80A094C5C0CF5BA +:10421000BC0601F7B806FF5EF8187CF5BC06015F26 +:104220006C164C5EFC00003FFAB96AF40C011AC02F +:1042300073F40C001AF40B011AE082000F1C9F3F6C +:10424000FAB96AF40C011AC073F40C001AF40B01E9 +:104250001AE08200035EFDF7EC100AA17A5E0DC041 +:1042600033163C1C9F183B1C9F0000F7DCB2E9276B +:10427000FB5E6DE04B00205E2EF60B111FA96CBF9C +:10428000BCF80B0A4C5EFCF7DCC2E827FB5E3D592C +:10429000FBC0E2F60B111FF80A1508BFBAF40B0AAF +:1042A0004AF40B1100187CF60A17605EFABF5C5CDA +:1042B000DCEE1C80005EFCE0690000F80B12005E82 +:1042C0003DF80B0090CD001302F1EC5604013A00CA +:1042D000008001013B000100002332010D02F1ECDE +:1042E00056030000000100094AF60B111F281BF3BA +:1042F000EA128CF9DBD2E8B96A5C0AF5BA0601F772 +:10430000BC06FF5EFC00001899F80B1100E619804E +:1043100000F60C1760CE5BD42118961695149412F3 +:1043200097E06C0760EA1C0000405B99BB406BEEB5 +:104330001B800099CB407BEE1B800099DB30AA18D4 +:104340009B2D4BF8FC010CE0A0025AC50C582CC068 +:1043500030584CC161E06C08ECEA1C0000783B2F3F +:10436000FB993B7839314BE80B0C0A1439C04530C6 +:104370000B994BC1382F0C780B2FFB990BC0E858C9 +:104380008CC030590CC0A1E06C08ECEA1C0000782D +:104390004B2FFB994B300B993BE06C08ECEA1C006F +:1043A000007839314BEC0B0C0A1439C035301B99AD +:1043B0002B7849314BEA0B0C0A1439C035302B9954 +:1043C0002B782B581BC050582BC030300B992B78B2 +:1043D0002A149B3009580AC060AE8A9939994999C4 +:1043E00029C028AE89169C00879E001302F1EC5666 +:1043F00004013B00008001013C00010000371A016C +:104400000D02F1EC56030000000100D8220000D498 +:1044100031201D3003E0670760EA1700003001EF2C +:104420004100F0EF4100F4E06008ECEA10000060A9 +:104430001C2FFC811CEEF600FC58A6C554EEF401BE +:104440000C30AA300B089CE0A002061895EF45013D +:104450000030AA301B089CE0A001FE1894EF440134 +:1044600004EE06002C500C601CF80C1014400BF7E6 +:104470004C00985816C3356A0C680BFEB0FCB41893 +:10448000928FE26A1C681BFEB0FCAE18968FF66A2B +:104490002C682BFEB0FCA8189BEF4B0040FEB0FD33 +:1044A0006718950C9C0C9BFEB0FD621896049C044A +:1044B0009BFEB0FD5D0C9BFEB0FD040A9BFEB0FDB3 +:1044C00001400BF74C0070400CF8FB0098400CF8D2 +:1044D000FC0094181B400CF94B00BCEEFC00FC2FB8 +:1044E000FCEF4C00FC601C58ACC044303CEF4C006E +:1044F000F8EEFC00FC58ACE0850102EEFC00FC206C +:104500001CEF4C00FC30AA30ABEEFC0070B6001380 +:1045100002F1EC5604013C00008001013D00010065 +:10452000005DA2010D02F1EC560300000001000144 +:104530000CE0A00CE3EF4C006830AA30ABEEFC01BD +:104540000CE0A00CF9EF4C006C30AA30ABEEFC0193 +:104550000CE0A00D0F1894EF4400703006C098EEE8 +:1045600006002C79DC069BFEB0FCBE18932FF65893 +:1045700096CF756FACFC1B4120FEB0FD7F1896EF07 +:104580004600446FBCFC1B4120FEB0FD771895EF40 +:10459000450048FC1B4120089CFEB0FD6F1894EFBD +:1045A00044004C601C58ACC075EF46005CEF450001 +:1045B00060EF4400643002C0F830AAE40B11095CDB +:1045C0008BEEFC010CC59DEF4C01086F996F8A6F53 +:1045D0007BCCBC2FF258A2CF156E9CEEFB00F016E0 +:1045E0003CC494018C580CC0D1EEFC0098EF4C00F8 +:1045F000E4301CA08CEF46005CEF450060EF440007 +:10460000646EACEEFB00F4163CC114019C580CC067 +:10461000F1EEFC0098EF4C00E8301CA09CEF460047 +:104620005CEF450060EF440064C028A091EEFB0001 +:10463000467A001302F1EC5604013D0000800101AE +:104640003E00010000C869010D02F1EC56030000B4 +:1046500000010000986E0AEEFC00E8162C183AC023 +:10466000A2019C580CC070A0A1A0B1301CEF4C005E +:10467000F8C558EEFC00E4181B163AC0A2018C588D +:104680000CC070A0A1A0B1302CEF4C00F8C4783061 +:104690003CEF4C00F8C438EF46005CEF450060EF9B +:1046A000440064A081A09101AC580CC031301CA022 +:1046B000ACFC1B447A069CFEB0FC7E1896301BFEB8 +:1046C000B0FDFCC072FC1CC47A069BFEB0FC7418E2 +:1046D000966E2BFC1C41A0FEB0FC6E0C9BFEB0FD48 +:1046E000F9C0B201BC580CC091EEFC0098EF4C0030 +:1046F000EC301CA0BCC028A0B16E1BFE7CFE0C18C8 +:104700000BEEFA0098EEFC00EC181A143BCC1201E8 +:10471000BC580CCBE0304CEF4C00F8300CC118EE1C +:104720000C002BF6FA009CF74A0098588CC084774E +:10473000EAF74A0074F6FA00C4F74A00C02FFC58A2 +:104740009CCEF5EEFC00F8581CC080582CC0805858 +:104750003CC08000700A001302F1EC5604013E00D8 +:10476000008001013F0001000077D2010D02F1EC51 +:1047700056030000000100584CC080C098302CC087 +:1047800088304CC068308CC048310CC028300C2FA9 +:10479000FDD832800156C8800157048001574080FF +:1047A0000136B48001384880013A6480013760EBFB +:1047B000CD40F81895149712966A0CFEB0FB4A1873 +:1047C00094E0630760EA130000E74400506A1C0E9F +:1047D0009BFEB0FB3F1897E74700546A2C0C9BFEEA +:1047E000B0FB381896E7460058300B089CFEB0FD29 +:1047F00083C052EE148000E7440050300B0E9CFE44 +:10480000B0FD7AC052EE178000E7470054300B0C21 +:104810009CFEB0FD71C052EE168000E7460058675E +:1048200047663B0E9CFEB0FD67C0D2675C664BFEE0 +:10483000B0FD62C082676C665BFEB0FD5DC0323069 +:1048400016C0283006666B0E9CFEB0FD55C0D267C0 +:104850005C667BFEB0FD50C082676C668BFEB0FD6F +:104860004BC032301CC028300CE6FB00F00C0BE7CC +:104870004B00F0E6FB00F400C7DA001302F1EC563F +:1048800004013F0000800101400001000076BA01F0 +:104890000D02F1EC56030000000100180BE74B007D +:1048A000F4E3CF80F8D703800135D880013A7C98B3 +:1048B00089F4091900C0333009B80998892FF9B86B +:1048C000099889F4091900C033300AB80A988AF4A3 +:1048D0000A100C140C2FCCB709B928170818A85EB9 +:1048E000FF00009889122B5C8B580BC024140B5CC2 +:1048F0008BF60B100C160C2FCC5EFCEBCD40FCE0C5 +:104900006504F0EA15000030A9EB4900483078EB67 +:1049100048004CEB4800503058EB480054E0669992 +:104920009AEA169999E0679999EA173FC9AB17E097 +:10493000663333EA163333E0673333EA173FD3EA9B +:10494000E70008E066999AEA169999E0679999EA6A +:10495000173FE9EAE70010E0663333EA163333E045 +:10496000673333EA173FF3EAE70018E0673333EAC7 +:10497000174003EAE70020E0673333EA173FE3EA32 +:10498000E70028EB490058E0644C88EA14000078FE +:104990000C3149F8090C08E9480048007AEC00138A +:1049A00002F1EC56040140000080010141000100C9 +:1049B000001A16010D02F1EC56030000000100740C +:1049C0000C582CC031305CC2A8760C590CC230E0B7 +:1049D0004C0100C080E04C0400C110E04C0800C154 +:1049E00040C078E06C0100EB4C005C300CC178E01A +:1049F0006C0200EB4C005C301CC118E06C0400EB56 +:104A00004C005C302CC0B8E06C0800EB4C005C3013 +:104A10003CC058310CEB4C005C304CEA0C0033E0ED +:104A200066851FEA1651EBE0679EB8EA174023A798 +:104A3000080C9A0E9BE0A00D6C3008FC194014E0A5 +:104A4000A00D67E8EB0034E8EB002CE068147BEA8B +:104A50001847AEE0697AE1EA193F84E0A00D59E811 +:104A6000EB003C300A300BA91BE8EB0008E8EB0038 +:104A700010E8EB0018A70A0C980E99E0A00D491455 +:104A8000921693FC173FE06B2CE0A00E3030080E1E +:104A900099E0A00D3E04980699E0A00D3AA91B6B81 +:104AA0003CE0A00E2430080E99E0A00D32049806D8 +:104AB00099E0A00D2EE8EB00086B4CE0A00E17006B +:104AC000573E001302F1EC56040141000080010141 +:104AD00042000100008FDD010D02F1EC56030000E1 +:104AE00000010030080E99E0A00D2504980699E019 +:104AF000A00D21E8EB00106B5CE0A00E0A30080E60 +:104B000099E0A00D1804980699E0A00D14E8EB00B8 +:104B100018300CE94C0044301CEB4C0060EB4C00AE +:104B200064089C2B0CE94C004CE3CF80FC0000E0B7 +:104B30006C04F0EA1C0000301BF94B0060F94B00DC +:104B4000645EFDD43120AD189730043005FACCFFF7 +:104B5000F0300A300BB91BF8EB0008F8EB0010300E +:104B60000CFB6C0008E0614C88EA110000413C83BA +:104B70008C414CEE1C8000839C415CEE1C800083C9 +:104B8000AC31EA029B2E0B633CE0A009EB6E0C58A3 +:104B90002CC041302C503CC038303C503C633CE091 +:104BA0006604F0EA1600006D8B580BC0E0580CC08C +:104BB00080988C6D6B163CC045300CED4C0060FB52 +:104BC0003C00082F6DD8326D9B580B31EAC3B06D95 +:104BD0006B5C8BE0A009EC18936D670E9CFEB0FC3B +:104BE00013189B00A96B001302F1EC56040142005C +:104BF0000080010143000100003066010D02F1EC6C +:104C000056030000000100069CFEB0FAA3E0A00DD0 +:104C10002DECEB003031EAF7D7B010633CE0A0098F +:104C2000F718936D670E9CFEB0FC00189B069CFE67 +:104C3000B0FA90E0A00D1AECEB003831EAF7D7B0EB +:104C400010633CE0A00A0218976D6CFEB0FBEE18F2 +:104C50009B0E9CFEB0FA7EE0A00D08ECEB0040300D +:104C60000CED4C0064C3D8300BE0A009A7189331B9 +:104C7000EA6D6B5C8B633CE0A009A018976D6CFE3D +:104C8000B0FBD41892660C6E0BFEB0F92B049BFEA1 +:104C9000B0FA60E0A00CEAECE80030E0A00B48ECD1 +:104CA000EB0030661C6E1BFEB0F91C049BFEB0FAD4 +:104CB00051E0A00CDBECE80038E0A00B39ECEB0095 +:104CC00038662C6E2BFEB0F90D049BFEB0FA42E064 +:104CD000A00CCCECE80040E0A00B2AECEB0040FA82 +:104CE000CCFFF0300A300BB91BF8EB0008F8EB00F2 +:104CF000103000C57831EAF7D0B010633CE0A0096D +:104D00005D1897ECE200300079E3001302F1EC56F5 +:104D100004014300008001014400010000244E0111 +:104D20000D02F1EC560300000001006E0CE0A00C37 +:104D3000AF04980699E0A00AD9BB1B6E0CE0A00C4A +:104D4000A704980699E0A00AD1BB08E0A00C17FAC6 +:104D5000E80010E0A00AFEFAEB0010ECE200386E6A +:104D60001CE0A00C9504980699E0A00ABFBB1B6E3E +:104D70001CE0A00C8D04980699E0A00AB7BB08E0DF +:104D8000A00BFDFAE80018E0A00AE4FAEB0018EC2A +:104D9000E200406E2CE0A00C7B04980699E0A00A8B +:104DA000A5BB1B6E2CE0A00C7304980699E0A00A2A +:104DB0009DBB08E0A00BE3FAE80020E0A00ACAFAD5 +:104DC000EB00202FF06D6C1830CA85E0A00CC514E4 +:104DD000961697FAEA00100C980E99E0A00C0CFABF +:104DE000EB0010FAEA00180C980E99E0A00C04FAF7 +:104DF000EB0018FAEA00200C980E99E0A00BFCFAE0 +:104E0000EB00203007C0F8FACCFFF0F807023208B8 +:104E10009A0A9B04980699E0A00C5AC032049406A2 +:104E2000952FF7403C1837CF05631700E94B001367 +:104E300002F1EC560401440000800101450001002C +:104E4000004EF6010D02F1EC560300000001006374 +:104E500026E2EA002C08980A99E0A00C49C0E30E6B +:104E600036C044301CFB6C0008300CE34C0044E2BC +:104E7000EA00342D41A31BCDAA0E36C084302CFB92 +:104E80006C0008E2EA003CE2EB002C2BC1620C2F24 +:104E9000FC830CCCCAD7038001567C800156C880A5 +:104EA0000157048001574080013B20800135D880A4 +:104EB000013848800156B080015D60800159BC8096 +:104EC000015C4E80015A2480015E2A80015CC8800A +:104ED000015DA080015D9CD5313005E0674A4CEA58 +:104EE0001700003003EF4300F0EF4300F4EEFC0145 +:104EF000002FFCEF4C0100401C581CC051EF430038 +:104F0000ECEF4300E8EEFC00FC58ACC52431EA307D +:104F10000BEEFC0104E0A00875EF4C010831EA300B +:104F20001BEEFC0104E0A0086D1894EF44010CEEA8 +:104F3000FC00FCEE0C0020EEFB0100F60B1014E16F +:104F40004B008C581CC305EEF20108640C680B0082 +:104F5000A3FC001302F1EC5604014500008001019E +:104F60004600010000DB3D010D02F1EC560300009C +:104F7000000100FEB0F7EC18918FB1641C681BFEB5 +:104F8000B0F7E618968FC6642C682BFEB0F7E018D1 +:104F90009B8FDBFEB0F8A018940C9C0C9BFEB0F825 +:104FA0009B1896029C029BFEB0F8960C9BFEB0F8F4 +:104FB0003D089BFEB0F83AE14C0064E0FB008CE059 +:104FC000FC0088181BE14B00B0EEFC00FC2FFCEF4E +:104FD0004C00FCEEFB010058ABC044303CEF4C00F1 +:104FE000F8EEFC00FC58ACE0850157EEFC00FC201C +:104FF0001CEF4C00FCEEFC010458AB31EA30ABC2B4 +:1050000011E0A0081DEF4C005C31EA30ABEEFC0172 +:1050100004E0A00833EF4C006031EA30ABEEFC0155 +:1050200004E0A00849EF4C006430065896C3C4EE73 +:1050300006002C79AC0A9BFEB0F7F818952FF6CF36 +:105040006BE0A007F11896EF460110EEF501086F2E +:105050007C6C0BFEB0F77C6A0BFEB0F7E7EF4C0000 +:105060005C6F8C6C1BFEB0F7736A1BFEB0F7DEEF53 +:105070004C006000A5E1001302F1EC56040146006B +:105080000080010147000100006486010D02F1EC7F +:10509000560300000001006F9C6C2BFEB0F76A6A9B +:1050A0002BFEB0F7D5EF4C0064EEFC00FCEE0C00DC +:1050B000266D9B6D8CFEB0F7CB6D7BFEB0F7C8FC08 +:1050C0001B4040FEB0F81A18956F7CFC1B4120FE77 +:1050D000B0F88818968FE66F8CFC1B4120FEB0F864 +:1050E0008118948FF46F9CFC1B4120FEB0F87AEF7E +:1050F0004C0040EEFB010058ABC071EF460050EF92 +:10510000440054EF4C00583006C10831EAEC0B1152 +:10511000095C8BEEFC0104E0A00798EF4C01146FD2 +:10512000696F5A6F4BC21D2FF658A6CF05E0644B2E +:1051300068EA1400006E9CEEFB00F0163CC5A46803 +:105140000C580CC101EEFC008CEF4C00D8301C89CF +:105150000C6EECEF4C00506EFCEF4C00546F0CEFFB +:105160004C00586EACEEFB00F4163CC144681C5871 +:105170000CC121EEFC008CEF4C00DC301C891C6E55 +:10518000ECEF4C00506EFCEF4C00546F0CEF4C00F9 +:1051900058C0288913EEF600D076001302F1EC56C1 +:1051A00004014700008001014800010000F36D0187 +:1051B0000D02F1EC56030000000100008CEEFC0033 +:1051C000D80C2CEF4C00E86E0BEEFA00DC0C2A1425 +:1051D0003BC0C2681A581AC09189238933EF430033 +:1051E000EC301CEF4C00F8C678183BC0C2680C5875 +:1051F0001CC09189238933EF4300EC302CEF4C0025 +:10520000F8C5A8EEFC00E01816EF4600EC303CEFC5 +:105210004C00F8C5186EECEF4C00506EFCEF4C00E3 +:10522000546F0CEF4C005889038913EF4300E8EEEC +:10523000F6008C682C580CC051EF4600E0301C89F9 +:105240002CEEFC00E00C2CEF4C00ECFC1B447A0A2A +:105250009CFEB0F7651892301BFEB0F8E3C072FCFC +:105260001CC47A0A9BFEB0F75B18926E2BFC1C41A3 +:10527000A0FEB0F755049BFEB0F8E0C092683C5821 +:105280000CC071EF4600E4301C893CC02889336EA5 +:105290001BFE7CFE0C180BEEFC00E418160C3BC049 +:1052A00082683C581CC051304CEF4C00F8C048306C +:1052B0003CEF4C00F8300CC118EE0C0058D5001330 +:1052C00002F1EC5604014800008001014900010090 +:1052D00000B3D6010D02F1EC5603000000010000FE +:1052E0002BF6FA0090F74A008C588CC08477BAF7F6 +:1052F0004A0068F6FA00B8F74A00B42FFC589CCE72 +:10530000F5EEFC00F8581CC080582CC180583CC2F7 +:1053100030584CC2E0D93AEEFC0118301B99BBEE74 +:10532000FB00E899CB302B99DB401C580CC2D130E4 +:105330002BEEFC0118E0A02FA3D93AEEFC011830A7 +:105340001B99BBEEFB00E899CB304B99DB401C5816 +:105350000CC1B1CEEBEEFC0118301B99BBEEFB008B +:10536000EC99CB308B99DB401C580CC0E1CE1BEE86 +:10537000FC0118301B99BBEEFB00EC99CB310B996B +:10538000DB401C580CCD50D93AD703800156C88059 +:1053900001570480015740800136B48001384880AD +:1053A0000156B080013A64800137608001A89CEB0F +:1053B000CD40F81895149712966A0CFEB0F5FE18B9 +:1053C00094E0634A4CEA130000E74400446A1C0E70 +:1053D0009BFEB0F5F31897E74700486A2C0C9B003A +:1053E0008881001302F1EC5604014900008001019C +:1053F0004A00010000261D010D02F1EC56030000D9 +:10540000000100FEB0F5EC1896E746004C300B08A2 +:105410009CFEB0F837C052EE148000E744004430E0 +:105420000B0E9CFEB0F82EC052EE178000E747002E +:1054300048300B0C9CFEB0F825C052EE168000E7F9 +:1054400046004C6717663B0E9CFEB0F81BC0D26747 +:105450002C664BFEB0F816C082673C665BFEB0F867 +:1054600011C0323016C0283006666B0E9CFEB0F8B4 +:1054700009C0D2672C667BFEB0F804C082673C6628 +:105480008BFEB0F7FFC032301CC028300CE6FB00AA +:10549000F00C0BE74B00F0E6FB00F4180BE74B00B9 +:1054A000F4E3CF80F8D703800135D880013A7CEB54 +:1054B000CD40F8205D1693300B504B503B502B5095 +:1054C0001BE067464CEA1700005813C0918F0B7819 +:1054D0000B8F1B781B8F3B782C8F2CC7A8E0664660 +:1054E00068EA1600006C1C6C09129A201A6E0B14E4 +:1054F0003BC1A431EA2FFB5C8BE0A005E98F4C3166 +:10550000EA6E0B007412001302F1EC5604014A001B +:10551000008001014B0001000099A6010D02F1EC91 +:10552000560300000001002FFB5C8B6C1CE0A00503 +:10553000FF8F6C31EA6E0B2FFB5C8B6C1CE0A006BE +:10554000158F5C6E062FF6C3E831EAC161F7D9B05A +:1055500010E0A005CF8F4C31EA6C0B5C8B6C1CE02B +:10556000A005E68F6C31EA6C0B5C8B6C1CE0A0052F +:10557000FD8F5C6C06C278F7D9B010E0A005AE8D47 +:105580002C31EA300B6C1CE0A005A818958D356C09 +:10559000246E4C680BFEB0F5356A0BFEB0F5A08F9B +:1055A0004C6E6C681BFEB0F52D6A1BFEB0F5988F33 +:1055B0006C6E5C682BFEB0F5256A2BFEB0F5908F03 +:1055C0005C6C060C9CFEB0F7C1189B6E4CFEB0F6EE +:1055D000518F1C0C9CFEB0F7B9189B6E6CFEB0F698 +:1055E000498F3C0C9CFEB0F7B1189B6E5CFEB0F688 +:1055F000418F2C6E286E396E1AFACBFFF8FACCFF69 +:10560000F0C37C300C500C6E286E396E1AFACBFF4A +:10561000FCFACCFFF4CCFC6E0C2FFC8F0C300C8F02 +:105620001C8F3C8F2CE0A0000C3A001302F1EC56CA +:1056300004014B00008001014C000100008D8E012F +:105640000D02F1EC560300000001002E3D404B9985 +:105650006B402B997B403B998B401B999B5823C0F7 +:1056600040301BE0A02E422FBDE3CF90F8D703803F +:105670000156C88001570480015740800156B08010 +:105680000135D880013B20800138488001A878800E +:1056900001A89CEBCD40FE1893169114961292101F +:1056A00097300B0E9CFEB0F711C4120E9BEE1B80C0 +:1056B000000C9CE0A00644E064C1E6EA141A63E032 +:1056C00065A5DCEA15404CE0A0087208980A99E04C +:1056D000A007E5FEB0F6A4C3CDFEB0F71B870C0E05 +:1056E0009C0E9BFEB0F56418970C9C0C9BFEB0F5CD +:1056F0005F0E9BFEB0F506E0A0085AE0A037C4FE9E +:10570000B0F68E189BEE128000049CE0A00618E014 +:10571000A0084E08980A99E0A007C1FEB0F680C123 +:105720008DFEB0F6F7830CE3CF80FE301B0E9CFE9F +:10573000B0F6C0C4F30E9B0C9CEE1C8000E0A005EC +:10574000FFE064C1E6EA141A63E0650024970013E1 +:1057500002F1EC5604014C00008001014D000100F3 +:1057600000E736010D02F1EC56030000000100A530 +:10577000DCEA15404CE0A0082D08980A99E0A00743 +:10578000A03008E0698000EA194066E0A00684FEC7 +:10579000B0F658CF0CFEB0F6CF870C0E9C0E9BFED9 +:1057A000B0F51818970C9C0C9BFEB0F5130E9BFEE1 +:1057B000B0F4BAE0A0080EE0A03778FEB0F64218C8 +:1057C0009BEE128000049CE0A005CCE0A00802083B +:1057D000980A99E0A007753008E0698000EA19C0CE +:1057E00066E0A00659FEB0F62DCC5CEE1C8000FEF3 +:1057F000B0F6A2830CE3CF80FE0000EBCD40F8189A +:10580000951693149612971094300B0E9CFEB0F6DA +:105810006FC1C20E9BEE1B80000C9CE0A005A2E0B5 +:10582000A007D8E068C1E6EA181A63E069A5DCEAD7 +:1058300019404CE0A00745FEB0F604C9CCEE1C8030 +:1058400000FEB0F6798B0CC278300B0E9CFEB0F6E1 +:1058500043C2230E9B0C9CEE1C8000E0A00582E05E +:10586000A007B8E068C1E6EA181A63E069A5DC00A1 +:105870009CBF001302F1EC5604014D0000800101B1 +:105880004E0001000072FD010D02F1EC5603000014 +:10589000000100EA19404CE0A007253008E06980CB +:1058A00000EA19C066E0A00609FEB0F5DDC75CEEAF +:1058B0001C8000FEB0F6528B0C300B089CFEB0F63C +:1058C00029C2B20E9C0E9BFEB0F49618970C9C0C4D +:1058D0009BFEB0F4910E9BFEB0F438E0A0078CE084 +:1058E000A036F6FEB0F5C0189B089CE0A0054CE081 +:1058F000A00782E068C1E6EA181A63E069A5DCEA5D +:1059000019404CE0A006EFFEB0F5AEC46CFEB0F658 +:1059100025870CE3CF80F8301B089CFEB0F5EEC263 +:10592000930E9C0E9BFEB0F46718970C9C0C9BFE8C +:10593000B0F4620E9BFEB0F409E0A0075DE0A03673 +:10594000C7FEB0F591189B089CE0A0051DE0A007DC +:1059500053E068C1E6EA181A63E069A5DCEA194079 +:105960004CE0A006C0FEB0F57FC17CFEB0F5F68726 +:105970000CE3CF80F8D70380015A24800137608080 +:1059800001BC38800158F080015D6080015C4E8070 +:105990000139D0002593001302F1EC5604014E00AA +:1059A000008001014F00010000CD46010D02F1EC25 +:1059B0005603000000010080013AC4EBCD40E0181E +:1059C00097E065FFFFEA15C406FC16C4340C9BFE85 +:1059D000B0F5A6C0D30E9C0A9BFEB0F5ADC082FC0C +:1059E0001C44340E9BFEB0F3C31897C3C80E9C0A28 +:1059F0009BFEB0F595C103E06BFFFFEA1BC3330EBE +:105A00009CFEB0F599C082FC1C43B40E9BFEB0F323 +:105A1000AF1897C2883015EA154407301BEA1B43BC +:105A2000340E9CFEB0F57CC0D30E9C0A9BFEB0F5F4 +:105A300083C082FC1CC3B40E9BFEB0F3991897C1BF +:105A4000280E9C0A9BFEB0F56BC0D3301BEA1B44AA +:105A5000340E9CFEB0F570C0620E9C0C9BFEB0F341 +:105A60008718970E9CE3CD80E0D70380013A6480CD +:105A7000013A7C800136B4D631204D169014911233 +:105A800092E0670028EA1700006F0C580CC0416EC6 +:105A9000CC580CC7406EDC189B201B8FDB581CC0F9 +:105AA000453FFCE08F022B405CE04C0097C105E0D5 +:105AB000400097C0D5E041006A93001302F1EC5614 +:105AC00004014F00008001015000010000DD2E01A3 +:105AD0000D02F1EC560300000001000097C0A5E0A4 +:105AE000420097C075305CEF4C00443FFCE08F02F1 +:105AF000186F1C189B201BEF4B0044581CCE4430E1 +:105B000006EF4600408FC6049CFEB0F579E06BFEC0 +:105B100000EA1B46FFFEB0F393FEB0F543E06B00D6 +:105B2000FFF80B0C0A14991295029CFEB0F568E080 +:105B30006BFE00EA1B46FFFEB0F382FEB0F532E0DA +:105B40006B00FFF80B0C0A1494009CFEB0F558E0B3 +:105B50006BFE00EA1B46FFFEB0F372FEB0F522E0DA +:105B60006B00FFF80B0C0A149C189B1693405CFE0C +:105B7000B0F546E06BFE00EA1B46FFFEB0F360FEA8 +:105B8000B0F510E06B00FFF80B0C0A149C0A9908A2 +:105B90009A069BCDADE06C09C0EA1C000099464016 +:105BA0005CFEB0F52DFC1B437FFEB0F3BDE06BFE49 +:105BB00000EA1B46FFFEB0F343FEB0F4F318930077 +:105BC0009CFEB0F51DFC1B437FFEB0F3ADE06BFE09 +:105BD00000EA1B46FFFEB0F333FEB00079ED001380 +:105BE00002F1EC5604015000008001015100010057 +:105BF00000C993010D02F1EC56030000000100F40E +:105C0000E31896029CFEB0F50DFC1B437FFEB0F33B +:105C10009DE06BFE00EA1B46FFFEB0F323FEB0F4EE +:105C2000D31894049CFEB0F4FDFC1B437FFEB0F33C +:105C30008DE06BFE00EA1B46FFFEB0F313FEB0F4EE +:105C4000C36E0BE06509C0EA1500005BFBC0C06ACB +:105C50004A580AC090EAFA0A20580AC0556E2AE04B +:105C60004A0050C2456EB9E0687FFF12186A0AB157 +:105C70003AAF5AF203024EAF5E1C0A8B0A6A1AB19F +:105C80003AAF5AF206024EAF5E1C0A8B1A6A2AB16C +:105C90003AAF5AF204024EAF5E1C0A8B2A6A3AB53A +:105CA00038AF58B939AF5910098B396E6A14992F2A +:105CB000F98F69E04A003CC174405CE04C0097FEFB +:105CC00095FF15E0400097FE95FF11E0410097FE1B +:105CD00095FF0DE0420097FE95FF092E876E0C2080 +:105CE0001C8F0CC03B362A8FBA301A8B4A6A0A14B2 +:105CF000136A1A14166A2A14146A3A141CEAFA006F +:105D00001075001302F1EC560401510000800101EE +:105D100052000100005C58010D02F1EC5603000036 +:105D20000001000A18E0694666B539AF59EC030175 +:105D300008E06A3999B538AF581009EB490A18EAF2 +:105D4000FA0A1CE0684666B538AF58E80C010EE068 +:105D50006A3999B53EAF5E1C08EB480A1CEAFA0A9C +:105D600020E06E4666B53EAF5EEC04000206021807 +:105D700002E06A3999B532B152040EEB4E0A206E38 +:105D80009A1C3AC0348F9EC068F402150E1412AFEC +:105D9000528F926EA2049AFE3AE0016E911431C0C5 +:105DA000248F9A5BFBC0506E2AE04A0050C145E048 +:105DB000610667BD31AF51E06A7998B532AF5202E2 +:105DC000028FA26E910411E06A0A3DB531AF510213 +:105DD00002EB420A145BFBC0416E7A2FFA8F7AEA1B +:105DE000F20A141C32C0A45BFBC0816E3B2B1B3536 +:105DF0000AF60A0C0A8F0BC0E8043EC0C45BFBC065 +:105E0000A06E1B5BFBC0716E3B2FFB350AF60A0CC4 +:105E10000A8F1B6E31350BE20B0C0AEA0B002B9735 +:105E200059F748003404001302F1EC560401520003 +:105E3000008001015300010000E3E3010D02F1ECD9 +:105E4000560300000001000154F74E0294F742038C +:105E5000D4F7430514F7460654F7440794F74C0863 +:105E6000D46E0C5BFCC5C06E1B5BFBC5901631C5C8 +:105E7000716EFE580EC2906E4AE04A0050C2546ED7 +:105E80007B59ABC0446E8B580BC1F1140C350BF829 +:105E90000B0C08EA09002C5C3AF8FB08D4FAEB007A +:105EA00008F8FA0794F8FB0654BB1BF8F80514F839 +:105EB000F903D4F8FA0294F8FB0154785C5D1E6E85 +:105EC0007C59AC5F5C8F8C30068F466E285848C07A +:105ED000258F766EEE580EC1F05858C1D56E7C599C +:105EE000ACC0446E8C580CC171580EC0D0350C50EB +:105EF0000C6E090A9AFE3AFD6C0A9BFE3BFEAC0A48 +:105F00009C2ECC5D1E6E5C2FFC8F5C6E7C59AC5F52 +:105F10005C8F8C8F763FFC8F0C8F1C8F266E0C5BFA +:105F2000FCC2D06EFE580EC2706E4AE04A0050C2EB +:105F3000346E7B59ABC0446E8B580BC1D1140C35F9 +:105F40000BF80B0C08EA09007AEA001302F1EC5690 +:105F500004015300008001015400010000F7CB014F +:105F60000D02F1EC560300000001000025EAFB08D9 +:105F7000D4FAEB0008EAFA0794EAFB0654BB1BEAE2 +:105F8000F80514EAF903D4EAFA0294EAFB01546A28 +:105F90005C5D1E6E4C2FFC8F4C6E2C2FFC8F2C6E7C +:105FA0003C2FFC350BF80B0C0A8F3B300C2FCDDC53 +:105FB00032D70380013B2080013848800137608060 +:105FC000013AC4E06C0028EA1C0000303B99DB3049 +:105FD0001B99CB5EFD0000EBCD4080E0680028EA15 +:105FE000180000E06E7FFF919EE06E0CCC91AEE059 +:105FF0006E014791BE300E916E917E918E912E3F33 +:10600000F791079117913E914EE06809C0EA180098 +:1060100000F14E0A20F14E0A1CF14E0A18910C9123 +:106020001B912A9139E3CF80800000EBCD40FC1812 +:10603000971694E06C486CEA1C00007806E065480E +:1060400060EA1500006C3CFEB0F30C18926C0CFE7C +:10605000B0F30818938E8CEE0C001C982CFEB0F355 +:1060600017069BFEB0F0706A0BFEB0006E6900135D +:1060700002F1EC56040154000080010155000100BA +:10608000009D73010D02F1EC56030000000100F0C9 +:106090006D049BFEB0F1A2E06BF5C3EA1B411CFE50 +:1060A000B0F128890C6C4CFEB0F2EE18938E8CEE99 +:1060B0000C001C983CFEB0F2FD18926C1CFEB0F275 +:1060C000E3049BFEB0F0526A1BFEB0F0BD069BFEDF +:1060D000B0F184E06BF5C3EA1B411CFEB0F10A8904 +:1060E0001C6C5CFEB0F2D018938E8CEE0C001C98E9 +:1060F0004CFEB0F2DF18926C2CFEB0F2C5049BFE91 +:10610000B0F0346A2BFEB0F09F069BFEB0F166E063 +:106110006BF5C3EA1B411CFEB0F0EC892C089B0E0A +:106120009CC03CE3CF90FCEBCD40FC18971694E06C +:106130006C486CEA1C00007806E0654860EA1500CF +:10614000006C3CFEB0F2A018926C0CFEB0F29C18F1 +:10615000938E8CEE0C001C982CFEB0F2AB069BFECE +:10616000B0F0046A0BFEB0F001049BFEB0F136E023 +:106170006BF5C3EA1B411CFEB0F0BC890C6C4CFEF5 +:10618000B0F28218938E8CEE0C001C983CFEB0008E +:106190006F02001302F1EC5604015500008001016A +:1061A000560001000008B8010D02F1EC5603000092 +:1061B000000100F29118926C1CFEB0F277049BFE75 +:1061C000B0EFE66A1BFEB0F051069BFEB0F118E09E +:1061D0006BF5C3EA1B411CFEB0F09E891C6C5CFE93 +:1061E000B0F26418938E8CEE0C00178E4CFEB0F259 +:1061F0007318976C2CFEB0F2590E9BFEB0EFC86A74 +:106200002BFEB0F033069BFEB0F0FAE06BF5C3EA6C +:106210001B411CFEB0F080892CE3CF90FCD703809B +:10622000013B2080013AF4800135D8800137609825 +:1062300089F4091900C0333009B80998892FF9B8D1 +:10624000099889F4091900C033300AB80A988AF409 +:106250000A100C140C2FCCB709B928170818A85E1F +:10626000FF00009889122B5C8B580BC024140B5C28 +:106270008BF60B100C160C2FCC5EFCEBCD40F818F7 +:106280009516971496300C30048A83C1185C835895 +:1062900003C085E60B100C0A0B761BFEB0EFE62060 +:1062A000135C835803C0340C9320132FF4EE0419AD +:1062B00000CEE500ABA6001302F1EC560401560037 +:1062C000008001015700010000B703010D02F1EC4D +:1062D00056030000000100E3CD80F8EBCD40F81834 +:1062E0009516971496300C30048A83C1185C835835 +:1062F00003C085E60B100C0A0B762BFEB0EFC8200E +:10630000135C835803C0340C9320132FF4EE04194C +:1063100000CEE5E3CD80F8EBCD40F8189516971444 +:1063200096300C30048A83C1185C835803C085E61C +:106330000B100C0A0B763BFEB0EFAA20135C8358BF +:1063400003C0340C9320132FF4EE041900CEE5E3C0 +:10635000CD80F8800136B4D431E02D07D418911ADD +:106360009CE06BD9DCEA1B8001E06907D4170A18AE +:10637000AA2049CFD1FC173FE0E0654000EA154074 +:106380007F300B029CFEB0F15BC4B3FC133F503076 +:106390001BEA1B3F80029CFEB0F15E1A90C1920284 +:1063A0009CE0A002CB30080A99E0A0023E30080E23 +:1063B00099E0A00125E0A0030CE00C032CE0A00371 +:1063C0002230080699E0A00230FEB0F0EFC718FCBA +:1063D0001C3F80029BFEB0005D1A001302F1EC56D8 +:1063E0000401570000800101580001000020E8016D +:1063F0000D02F1EC56030000000100F025E0A002C0 +:10640000AF30080A99E0A0022230080E99E0A001FE +:1064100009E0A002F0E00C032CE0A003063008061F +:1064200099E0A0021414981699E06A2D18EA1A54FB +:1064300044E06B21FBEA1B3FF9E0A000BFFEB0F097 +:10644000C7C498FC1BBF80029CFEB0F10B1A93C11D +:10645000C3EE118000029CE0A0028230080A99E09D +:10646000A001F530080E99E0A000DCE0A002C3E630 +:106470000C032CE0A002D93008FC19BF50E0A001A9 +:10648000E6FEB0F0A5C278FC1CBF80029BFEB0EF18 +:10649000DBE0A0026530080A99E0A001D830080EC0 +:1064A00099E0A000BFE0A002A6E60C032CE0A00249 +:1064B000BC3008FC193F50E0A001C9E0682D18EA83 +:1064C000185444E06921FBEA19BFF9E0A000AAFED4 +:1064D000B0F07EFE3DF82CD832D703800159BC8045 +:1064E000015DF680015E2A80015C4EEBCD40C01854 +:1064F000971696301B0C9CFEB0F0B4009E0400135F +:1065000002F1EC560401580000800101590001001D +:10651000006053010D02F1EC56030000000100C0C1 +:10652000830E9C0C9BFEB0EFA1C3BFE3CD80C030B7 +:106530000B0C9CFEB0F0B4C2E20E9C0C9BFEB0EFC4 +:10654000951896300B0E9CFEB0F09E0C9CC123C299 +:106550008FE0A00217E0682D18EA185444E0692182 +:10656000FBEA194009E0A0006FFEB0F043E3CD80E4 +:10657000C0C17FE0A00206E0682D18EA185444E08C +:106580006921FBEA19C009E0A0005EFEB0F032E329 +:10659000CD80C0301B0E9CFEB0F076C073E06C0F57 +:1065A000DBEA1C3FC9E3CD80C0300B0E9CFEB0F08F +:1065B00077C072E06C0FDBEA1CBFC9E3CD80C0E39B +:1065C000CF80C08001384880015D6080015A2480FE +:1065D0000139D080013A6480013A7CD021F7E9206A +:1065E00004C047EE198000C358A17BF7EA1004C02D +:1065F00041EE198000C7F85CFCA179F1E91004E0D4 +:106600008000E2103AF20B1300C0825CDC16971493 +:1066100096129B109A0E990C984ED50A3BC0C20058 +:106620007F96001302F1EC5604015900008001012D +:106630005A00010000F598010D02F1EC560300002C +:10664000000100D401C43CD402101AF609014BF732 +:10665000EA1004C721D0225EFB5C2AE08100B30A65 +:1066600039E08300C3CAE8D021F7E92004C047EE2F +:10667000198000CCDBA17BF7EA1004C4E05CFCA12C +:1066800079F1E91004E08000B1123BC07216971452 +:1066900096129B109A0E990C984D650A3BC0E2D455 +:1066A00001C15CD402100AF609004BC4625D0B5DA7 +:1066B0000AC022A1AA2FF7C4085C2AE08100830A3D +:1066C00039E0830093129B109AC8F8D401CC7CCD9A +:1066D0004CD4020E265E0CE046003FC1B2EC051120 +:1066E00020E0460020C0B2F0050944F2050945F05B +:1066F000060A48F2060A490A48C088F20509441009 +:106700004412983009F0060A485804C020A1A85E37 +:10671000FCD402D743C5E85CFCA179F3E81004C0BF +:10672000605D09129B109AD0225EFB5D09A19C5D01 +:106730000B126BD0225EFBD401C5DCD4025807E0FB +:106740008A0016007596001302F1EC5604015A00F7 +:10675000008001015B000100004A23010D02F1EC01 +:1067600056030000000100E9DAC00BE0240400C079 +:10677000C3C041EDBA000BC082E0640800080A5CA7 +:106780000BC032BFBB2FF7E04707FFC324C3485CF1 +:10679000372FF7E0470036C2922F67EE051120E051 +:1067A000470020C0B2F4050946F6050945F4070A7A +:1067B0004AF6070A4B0A4AC088F6050946144616E7 +:1067C0009A300BF4070A4AEDBA0000C0920C76C06A +:1067D00041EDBA0001C04230160C0A5C0B5D0B5D46 +:1067E0000AA17BC1483FFBC128300B300AC0F848E2 +:1067F0009B300AC0C8EDBB001FF7B70101AB9AF58B +:10680000EB115AA17BAB9BF7E7115BA19C5D0BD011 +:10681000225EFBFFE00000F60412005E0CE0440084 +:1068200020C0C0E8051120F604094BF4050A450A0A +:106830004BF404094A08175EFCF40412002E0414F9 +:106840009BF604094B300A08175EFCF20412005E46 +:106850000CE0440020C0C0E8051120F2040949F012 +:10686000050A450A49F0040036CB001302F1EC5644 +:1068700004015B00008001015C000100005E0B016F +:106880000D02F1EC56030000000100094808165EF5 +:10689000FCF00412002E041099F204094930080893 +:1068A000165EFCF6071615AB6BF7EA135BAB7A5C6A +:1068B00037EFBB001FF7B700015C375EFC0000F24A +:1068C000061615AB69F3E81359AB785C36EFB900DF +:1068D0001FF7B600015C365EFCD021A17B5CFCA1F9 +:1068E000795C0C103AF20B1300C0721697149612D2 +:1068F0009B109A0E990C984BC50A3BC242F3E810C4 +:1069000005C860D411CCFFC9AFCDBFCB2F0C07E0B9 +:106910002703FEF4080640F6080642F4090644F68A +:1069200009064A0202F403004A5C0B0404F4050061 +:106930004A5C0B004408743006F7B601FF0C4AD4D9 +:1069400012C1FB5C2AFE91FF62F3E81005FE91FF85 +:1069500071C5CBD021A17B5CFCA1795C0C4A350AC6 +:106960003BC3320A39C382F3E81005C390F7EA103B +:1069700005FE90FF5FD401C96FC61FCA2FC79FD401 +:10698000020C17FE37FC013376A19B00D97D001362 +:1069900002F1EC5604015C00008001015D00010081 +:1069A0000034B3010D02F1EC560300000001005D5C +:1069B0000AA1995D08103AF20B1300C043101AF6B1 +:1069C00009014B5CF45CF5EC140001A17A5CFB203E +:1069D00016CF21F7EA100B5C3B5CF45CF5089A0AD1 +:1069E0009BA96BF7EA138BA96ACDDA5C2AFE91FFAB +:1069F000200A39FE93FF30C1BB5C28FE90FF1BC10B +:106A00007BF7EA1005FE90FF14C17BFFE00000D089 +:106A100021F80B15015CFC167BFE90FF0CEFDBC32D +:106A200008E04700FFC0F0A77B300A5C37EFBB00EF +:106A30001FF7B700015C37FE37FC80D401C11FD4BB +:106A400002CFEAA96BFE90FEF9CF2AD233C028D438 +:106A500033F5EB101CF9E9101C104C5E0DF9DBC28C +:106A60008BEC1C07FFC061F5EB10CCC030D0331CA1 +:106A70009FF9D9C28BEC1C07FFC041F1E910CCCFC4 +:106A800071F7E9200CEDBB001FC056C053103AF25D +:106A90000B13001C9F1438F60913001C9F580B5E43 +:106AA0006D3209C02831F9F9DBC28BE02C03FF00FD +:106AB000494B001302F1EC5604015D000080010116 +:106AC0005E00010000A178010D02F1EC5603000008 +:106AD0000001005E3D123CC0E2F80C111F1699AB9C +:106AE0007BBFBBF7EA135BF60C0A4BA1795E2B5C0C +:106AF0003B5EFB3FFCA19CA17B5C0C5EFC189B58A1 +:106B00000B5F5CC0245C3B300A580B5E0BD021E06D +:106B100067041EFE9FFE5A189B300CCF6B0000D7F7 +:106B2000F1206D109A129BFAEB0010300C503CFAD9 +:106B3000CBFFE01A9CE0A038151891E066C93CEA4A +:106B4000168001300BFACCFFF05D161897407C5888 +:106B50000CC040300C407BB60C5807C081FAEA00EC +:106B60002830083009E0A03BE3C1A05801C1D79A02 +:106B70000C581CC1F1FAEA002030083009EA193F2C +:106B8000E0E0A03BD5C0C05817C141FAEA00203070 +:106B9000083009EA19BFE0E0A03BCAC451300A300E +:106BA0000BEA1B3FF0CD595821C061FAEA0020CD15 +:106BB000095817C6D55827C041FAEA0028CC9930A1 +:106BC00005EA158000F06300005811C2B1408CA1A5 +:106BD0007C40AC00D185001302F1EC5604015E004C +:106BE000008001015F000100001EC3010D02F1ECF5 +:106BF00056030000000100C0C3EDBC001FC04230BE +:106C00000A300BCB89300A300BEA1B7FF0CB39ED11 +:106C1000BC001FC0E35807C0613FFBFACCFFF05D2A +:106C200016C0463003EA137FF0300A069BCA395873 +:106C300007C0613FFBFACCFFF05D16C0263005307F +:106C40000A0A9BC9895817C0F140ACA17C9A0CC0B4 +:106C500043581CCD94CD5B581CCD34300A300BEA20 +:106C60001B7FF0C88940ACEDBC001FC0E35807C0D3 +:106C7000A13FFBFACCFFF05D16C057408CEDBC0085 +:106C80001FCDF33005CDDB322CE06B4EA0EA1B00AC +:106C900000970C5807C0A13FFBFACCFFF05D16C06F +:106CA00057408CEDBC001FCC133003EA137FF0CBB0 +:106CB000DB408CA17CC0F25807C0D7321CE06B4E81 +:106CC000A0EA1B0000970C3FFAE06BFFFFEA1B7F76 +:106CD000FFC519FAEA002030183009FEB0FEDCC00A +:106CE00033300CC0B8FAEA0020EE1B8000FAEB004B +:106CF000203FFBFACCFFF0003D3F001302F1EC56C1 +:106D000004015F0000800101600001000081A80112 +:106D10000D02F1EC560300000001005D16BA1C9A4A +:106D20000C581CC1E1FAEA0020E0683BCDEA186685 +:106D30007FE069A09EEA193FE6FEB0FEC1C11230B5 +:106D40000730023003EA133FF0FAE80020300A303F +:106D50000BEA1B4000FEB0FE0AFAEB0020C248FA24 +:106D6000E80020300A300BEA1B4050FEB0FDFF3037 +:106D7000083009EA193FE0FEB0FCE4FEB0FECBF8B3 +:106D8000C70020220CFEB0FEE030083009EA193FAF +:106D900090FEB0FDEC30083009EA193FE0FEB0FC8F +:106DA000D114921693E06CE1B0EA1C8001A577182B +:106DB000075037FAEA002004980699FEB0FC8E14BA +:106DC000941695FAE80020049A069BFEB0FCBA14CB +:106DD000981699089A0A9BFEB0FE06149016911414 +:106DE000981699FEB0FDC314961697FAE50020E0B8 +:106DF000A02FFA14941695300A300BEA1B3FF004CA +:106E0000980699FEB0FC6A30083009EA194000FE85 +:106E1000B0FDADBB2B0C9A0E9B089800B7D00013A9 +:106E200002F1EC56040160000080010161000100E4 +:106E3000003D19010D02F1EC560300000001000AAB +:106E400099FEB0FDA6FAE80028FEB0FC59BB09FE89 +:106E5000B0FC8A00980299FEB0FD9BFAE80020FE83 +:106E6000B0FC8214961697E06239EFEA12FEFAE05F +:106E7000632E42EA133FE604980699FEB0FDC6FA77 +:106E8000EB00109A0CFEB0FE72403CB908FEB0FC5C +:106E90006BFAE80010FEB0FC67FAEB0010FAE800AD +:106EA00028FEB0FD76FAEB000430083009EA19C07C +:106EB000E0FEB0FE17C6D3FAEA000430183009EA43 +:106EC0001940E0FEB0FE0CC672FAEA000430083049 +:106ED00009FEB0FE07FAE80004300AC052300BEA9F +:106EE0001BBFE0C048300BEA1B3FE0FEB0FC3CFE9D +:106EF000B0FE231895FAEA00280C980E99FEB0FD12 +:106F000048FAEB0004403CF8E80008F8EA0010FEFC +:106F1000B0FC2AFAE80028FEB0FD3B04980699FE72 +:106F2000B0FD37FAE80004FEB0FC1EFAEB00040ADC +:106F30009CFEB0FE1CBB2B9A4CFEB0FE18405C00C1 +:106F4000C242001302F1EC5604016100008001010D +:106F50006200010000A8D2010D02F1EC560300000E +:106F6000000100B908FEB0FC11FAE80030FEB0FDE7 +:106F700022BB09FEB0FBD604980699FEB0FD1BFAB1 +:106F8000E80004FEB0FC02FAEB0004407C580CC0A0 +:106F900030B80530050A99300A300BEA1B3FF0FA89 +:106FA000CCFFFCE0A00C0E5C7C187CC040201CC018 +:106FB00050C108300A300BC058300A300BEA1B7F32 +:106FC000F0FAEB0004322CE06B4EA0EA1B000097B5 +:106FD0000C9A1C580CFAEA0004C030EE1B80002FFB +:106FE000AD1B0E2FBDD0325EFCD7038001CE8C804E +:106FF00001D6588001C0C880015CC880015D9C80BA +:10700000015DA080015DF680015E2A800159BC808F +:10701000015C4E80015A2480017A5CD401300CFE60 +:10702000B0FDC8D8020000D401E0A03221E06C001D +:10703000DEEA1C0000305BB89B300BB88BB8CBB8D5 +:10704000DBE06C2F9CEA1C0000FACBFFFC324917F6 +:107050000A18AA2049CFD1309A300B300CE0A00892 +:1070600041582C000C53001302F1EC56040162004D +:107070000080010163000100001769010D02F1ECBD +:1070800056030000000100C031302CD802DA0A801B +:1070900001737CD401CAFDD8020000EBCD4080E032 +:1070A0006700DEEA170000EF2C0001585CC0A1C2A7 +:1070B0006DC200304CAE9CE0A031ECC54DE3CD80FC +:1070C00080584CC171CEBCC0A0303CAE8C305CAEA0 +:1070D0009CE0A031DFC8FDE3CD8080CBEDC0A030C7 +:1070E0002CAE8C305CAE9CE0A031D4C84DE3CD809A +:1070F00080E3CF9080D7038001C708D401E0A03B94 +:1071000013E06B2F98EA1B0000970CE06B62C4EA57 +:107110001B8001F94B0128E06B630CEA1B8001F92D +:107120004B012CE06B6314EA1B8001F94B0130E04A +:107130006B63C8EA1B8001F94B0134E06B6478EAA9 +:107140001B8001F94B0138DA0AD7038001D99C3042 +:107150000CE06B00DEEA1B0000300AB6BAE06A2FD2 +:1071600098EA1A0000740AF53A0121580AC0215E13 +:10717000FDF72A0000580AC040302CB6BC301CF77E +:107180002A0004581AC061005D92001302F1EC5607 +:10719000040163000080010164000100000341015B +:1071A0000D02F1EC56030000000100F72C0003A3D0 +:1071B000ACB6BC301C5C6C5EFC0000E06C00DEEA2F +:1071C0001C0000300BB88BB8BBB8CB5EFF0000EBE7 +:1071D000CD408020AD18971A9CE0A03947401C0E86 +:1071E0003CC04318275C57C048280C18275C570E32 +:1071F0009CFEB0EB57406BFEB0E98AFEB0FC882FD6 +:107200006DE3CD8080D70380013AF4800137608040 +:10721000015D60301CE06B00DEEA1B0000B6CC5E56 +:10722000FD0000D401E06A00DEEA1A0000F5290042 +:1072300003EDB90001C1C230191788F0081068F8D1 +:10724000080B091788F00810681808B099309917CA +:1072500088F00810681808B0A9F52900001788F010 +:107260000810681808B0C917892FF9B689F52900E0 +:1072700003EDB90002C23230191788F0081068F81F +:10728000080B093038178EFC0E1068180EBC9830A9 +:1072900098178EFC0E1068180EBCA81788F00810FE +:1072A000681808B0C92FFAF52900000024830013DC +:1072B00002F1EC5604016400008001016500010048 +:1072C0000069F9010D02F1EC5603000000010017FE +:1072D0008AF40A1068140CB8D9178C2FFCB68CC825 +:1072E0000FD80AEBCD408020FD3007300CFB6C003E +:1072F0000CFACCFFF0E0A007A5E06C2F9CEA1C0084 +:1073000000FACBFFF076095009761950197629500A +:1073100029FAC9FFF498CBF60A107DA37A98BBF638 +:107320000B107DA37B98ACF80C107DA37CFEB0EA1B +:10733000E9582CC02130170E9C5C6C2F1DE3CD80CA +:10734000800000EBCD408020FD3007300CFB6C004E +:107350000CFACCFFF0E0A00775E06C2F9CEA1C0053 +:1073600000FACBFFF07609500976195019762950AA +:1073700029FAC9FFF498CBF60A107DA37A98BBF6D8 +:107380000B107DA37B98ACF80C107DA37CFEB0EABB +:10739000B9581CC02130170E9C5C6C2F1DE3CD80AA +:1073A00080D7038001747080013B30EBCD40E02238 +:1073B0000D3017300CFB5C0054FB6C002D30ABFB28 +:1073C0006B002EFB6C0030FB6C0031E06600DE00D1 +:1073D000797B001302F1EC56040165000080010185 +:1073E0006600010000FC32010D02F1EC56030000C2 +:1073F000000100EA160000ED2C0005580CC2A1E0C7 +:107400006C00B4BACC346CBADC3015BAE5300CFB85 +:107410006C002C303CFB6C002DFACCFFD01A9B3258 +:1074200049170A18AA2049CFD1FACCFFD41A9B32A7 +:10743000C9190A16AA2049CFD1E0A0075BC0313094 +:1074400027C088FACCFFA8E0A03834417CACACACB3 +:10745000D50E9C5C6C2E0DE3CD80E08001D6BCEB9C +:10746000CD40E0216D3017E06600DEEA160000ED49 +:107470002C0005581CC2013005FB550054FB65006B +:107480002D30ACFB6C002EFB650030FB650031300D +:107490001CFB6C002C303CFB6C002DFACCFFD41A8A +:1074A0009B32C9190A16AA2049CFD1E0A00722C0F1 +:1074B000213037ACD50E9C5C6C2EADE3CD80E080E6 +:1074C0000174FCEBCD40B03007E06C00DEEA1C003C +:1074D0000019ACCA2E14941695E06C2F9CEA1C007F +:1074E000002F6C198CFEB0FBA914981699089A0A03 +:1074F0009BFEB0001DF2001302F1EC560401660081 +:107500000080010167000100004389010D02F1ECD8 +:1075100056030000000100FB4FC02330170E9C5C97 +:107520006CE3CD80B0D70380015E4480015D9CE0B8 +:107530006B4B84EA1B0000F6FA00ECF60A002AF511 +:107540004C0078F6FC00EC2FFCF74C00ECF6FC004D +:10755000EC585C5E3FF6FC00EC201CF74C00EC5E47 +:10756000FD0000300CE06B4B84EA1B0000300AF792 +:107570004A00F0F6FA00EC580A5E0D77EAF74A0086 +:10758000F0F6FA00EC201AF74A00ECC078F60C008E +:107590002A75F9F54900782FFC584CCF955EFDEB24 +:1075A000CD40803007E06C0138EA1C0000F93C0354 +:1075B000B0E0A02013C038C62C2FF7E06C4B84EA53 +:1075C0001C0000298C198C1837CF73E3CF80808082 +:1075D00001A7C0EBCD40E016973006E0654B84EA8A +:1075E000150000EB3B008D169A2FFAEB6A008DE038 +:1075F0004B0033C045300BEB6B008DEB3B008C58E0 +:107600003BC215780BEB4B006C781BEB4B00707892 +:107610002CEB4C0074300C00AB18001302F1EC564C +:1076200004016700008001016800010000D46201CC +:107630000D02F1EC56030000000100E0A01FD6E0AF +:107640006C0138EA1C0000F93B03B02FFBF96B0317 +:10765000B0F93B03B0EB3A0068143BC053300BF970 +:107660006B03B0CB0FC91FEB3C008C189B2FFBEBBF +:107670006B008CE04C0065C045332CEB6C008CEA51 +:10768000FC00F0580CC070AE8C301658ACC03130D5 +:10769000ACAE8C5C560C9CE3CD80E08001A7ACEBDB +:1076A000CD40FC300C300AC0E8F40B1035A36B0E53 +:1076B0000B17C95809C06017E92E0BF6090F8B1676 +:1076C0004C2FFAE0670138EA170000583ACEE5E09F +:1076D000A01FB6E0664B84EA160000E0A01FECEDA8 +:1076E0004C00E83005ED4500F03004C0588DB57809 +:1076F0009C8DCC2FF45834C454E8021035A3620E8C +:107700000205CC580CC2A0089CC5DCECF300E805CF +:10771000ECE4CBFFE0F60C0F8B660C186BC1700528 +:10772000ECE4CBFFCCF60C0F8C580CC05005ECF6FB +:107730000C0F8CC10F05EC2FFCA4EC00F0AF001374 +:1077400002F1EC56040168000080010169000100AB +:107750000094D9010D02F1EC560300000001000570 +:10776000EC05DB163CC053640CEC04092CA4E56763 +:107770000C580CC050660B670C184B870B5814CC78 +:10778000C1EF3C00DAF80C101C0E0CF8FC011C8D4B +:107790009CECFC00E8789B2BABE04B008DCBA278F7 +:1077A0008B8DBBCB8BECFC00E8780CE0A01F9EEE31 +:1077B000FC03B4189B2FFBEF4B03B4E04C03E9C070 +:1077C00033EF4503B40C9CFE3CFF6C3509AD0BB99F +:1077D0002A2089CFD1E3CF80FCD7038001A8008085 +:1077E00001A8788001A888D4213007E0644B84EA9E +:1077F000140000E8FB00E8F7470040E06B0138EABE +:107800001B0000F8091035A369160913E8F20800F7 +:10781000256A8C582CC541F006101C12066D2C5898 +:107820001CC4E1E8FE00E86D4C582CC0B17CDC586B +:107830003CC0646D7C2FFCED4C005CC038ED470013 +:107840005C6D4C584CC0B17CDC585CC0646D7C2FC6 +:10785000FCED4C005CC038ED47005C6D4C588C0072 +:10786000C2B0001302F1EC5604016900008001016E +:107870006A000100000112010D02F1EC5603000044 +:10788000000100C0B17CDC588CC0656D7C2FFCED24 +:107890004C005CC038ED47005C6D4C590CC0B17CAD +:1078A000DC590CC0656D7C2FFCED4C005CC038EDE4 +:1078B00047005C6D7C6D3B314AF60A0C0A143CC0F3 +:1078C000B47C0C6A8B168C9D0C6A8CE8FB00E8F784 +:1078D0004C0040C078ED47005C7C0B6A8C184B9DD7 +:1078E0000B6A8C581CC641F00C101C180912966DBE +:1078F0002CEDBC0000C5C26D3CEDBC0002C282692B +:10790000DCFC1BC080FEB0E7FDC362E8FB00E8764C +:107910006AFE3AFF6FE04A0123C2E3767BF6CCFFB2 +:107920006FE04C0123C2836D7C2FFCED4C005CE8C2 +:10793000FB00E86D7C585CC354760C6A8A148C9703 +:107940000C6A8CE8FB00E8F74C0040D82AEDBC003C +:1079500001C15269DC301BFEB0E7C8C0D3E8FB00B0 +:10796000E8766C2A6CE04C00B5C062767C2A6CE04C +:107970004C00B5CDA3ED47005CCDBBEDBC0004CD04 +:107980008269DC00E9D3001302F1EC5604016A00BD +:10799000008001016B00010000BEA9010D02F1ECA5 +:1079A00056030000000100FEB0F930BFDBE0683391 +:1079B00034EA183333E0693333EA19401DFEB0F975 +:1079C00043CEC3CC4BED47005C760A6A8C184A97CD +:1079D0000AD82A80013A7C80013A6480015D608087 +:1079E000015D9C208D1A9CE06BED28EA1B80013222 +:1079F0000AB709B928208ACFD11A9CFE6B000C76F1 +:107A00000BF7DBC004F80B051CAB6C2F8D5EFCFE86 +:107A10006A00007409A7C9340BF7EC006C124C958E +:107A20000C5EFDD401E06BE1C1EA1B00E4163CC131 +:107A300023E06BC381EA1B01C9163C301CC062CE37 +:107A40008F3FFB311CC1DCD80ACE3F3FFB310CC15C +:107A50008CD80A300CCDDF3FFB311CC12CD80AFE7C +:107A60006C0008780CF9DCC0015EFCD401CF9FCF1C +:107A7000F0D80AFE6C0008780CE21C000C5EFCEBEF +:107A8000CD40E018961697E0650578EA150000F0FD +:107A9000150000FE6C0004780BE01BFFC0EDD6C0A3 +:107AA0000616460C9B580700C723001302F1EC563C +:107AB00004016B00008001016C00010000AA81013B +:107AC0000D02F1EC56030000000100C0B5E01B0000 +:107AD000FFE41BFF00A967EFD7C110A96716470E87 +:107AE0009BF7DBC018EA1BA500990BCD6F8B1CF030 +:107AF000150000E3CF80E0D4013FFB303CFEB0FF37 +:107B0000D3D80AFE6C0008780CA59CF9DCC0015E95 +:107B1000FC0000D401189B30CCFEB0FFC5CF3FD88D +:107B2000020000EBCD40E016973016189B302CFE7B +:107B3000B0FFBA5C57C0C0E0670578EA1700006E76 +:107B4000153FFCCE8F18966E1C18458F150C9C5C4B +:107B50005CE3CD80E00000D401189B301CFEB0FF38 +:107B6000A3D80AD4013FFB30FCFEB0FF9DCCBFD8A8 +:107B7000020000EBCD408018973FFB30ECFEB0FFD9 +:107B8000935C57C030CEFFC028301C580C5F1CE3FC +:107B9000CD8080D4013FFB30DCFEB0FF85D80AD415 +:107BA000011698F1EB108BC02CD802D4011698F175 +:107BB000EB110BC02CD802EBCD40C01696F1D9C00A +:107BC0000814990C9A300B0C970E4B00F314001309 +:107BD00002F1EC5604016C00008001016D0001000F +:107BE00000C039010D02F1EC56030000000100C095 +:107BF0004CE3CD80C00000D631204D149416951270 +:107C0000961091E06CF218EA1C8001B90AFAEB00B8 +:107C1000083003FC178000FEB0FF0A18920E0240E5 +:107C2000570E9BF7DBC003201BF7DBC003C0C8FA6D +:107C3000CCFFF8160CB884A984E9E51184A9852045 +:107C40001BF7DBC00358045C25CF310E06FC1C80FB +:107C5000001837C042FC178000C0980437C073FC7E +:107C60001C80801837C032FC178080E06C0101EA6C +:107C70001C80801836C063FC168080FE36FF00C072 +:107C800098301CEA1C80801836C0420C32C0220496 +:107C9000960C95A1C5E015FFFCE015FFF8C0C8E201 +:107CA0000C1518C050300CC78F681C1843C85F06ED +:107CB0009C68131843E0640578EA1400000C37C789 +:107CC00002C2DF681C18430E98E018FF00109CFEEB +:107CD0003CFF00EA0C0D4C0C9BE01BFF0016385FCC +:107CE00029FAEA0008BB1B0E9B5C5BC1F0C02800B0 +:107CF000C29B001302F1EC5604016D0000800101EB +:107D00006E0001000055F2010D02F1EC5603000077 +:107D10000001002F880E9AE01AFFF81438CFB30E36 +:107D20009EFDDEC003C140300BC06811371A9016AB +:107D300000A0872FFB1C3BCFA314970A37C08240BB +:107D40000B0EAB401B0EABFAEA0008BB1BA39CEE6C +:107D50000B1603182BC068402C0EAC403C0EAC2018 +:107D60001B580BCFA15C59C1700C980C9BF7DBC062 +:107D700003C0F0C068113C1A9A160AB48C2FFB5845 +:107D80008BCFA3400C0EAC401C0EACC0282F88102B +:107D90009C5C5CCFD1301CEA1C80801837C932E271 +:107DA0000C1518C060300B3FFCCE1E681C18433FFA +:107DB000FCCF7E069C681318430437C8F3FC178079 +:107DC00080C8CB8913405C2FCDDC32EBCD42FF2045 +:107DD0002D18901497300300961692FC1C80801882 +:107DE000305F210C955C550C25C0683FFCCD9E068C +:107DF0009C68131843E0640578EA1400005807C330 +:107E000050C9FE681C18433009C1585807C0900C6F +:107E100035C07100C796001302F1EC5604016E00E4 +:107E2000008001016F00010000EA49010D02F1EC40 +:107E300056030000000100053B1A9AF40C0B0B2FAF +:107E4000F620172FF52FFC5C5C588CCF23BB0A0A59 +:107E50009C208CB91B2F89F9D9C010E04C0100C0BF +:107E600054AB0ABB1B300CCF0BFB3C000F580CC0B3 +:107E7000B05801C040300CCB4EC048300B3FFCC85E +:107E80008E681C18435801CC40CBBECC4B891300E4 +:107E90009C2FEDE3CD82FFD421203D3009E06843E3 +:107EA000DCEA1800007058300EC2185859C1D4F2DC +:107EB000071501E0662A74EA160000F135000D1C72 +:107EC00015EC05001520250B851A940E04A885F1E4 +:107ED00035000D1C15EC05001620160D861A950AA6 +:107EE00007AE962FF95C592FFE5C6EF137000D0E30 +:107EF0003ECDD5581BC1955C6BC158F6081068186B +:107F0000082668118E585EC0C15859C0A41A9EFC3C +:107F100009001E11A7BC8711B8BC982FF95C592025 +:107F20001B5C6B581BCEB4300CC148F80B106814A6 +:107F30000B3008B688305800D25B001302F1EC56C3 +:107F400004016F00008001017000010000FA2101AE +:107F50000D02F1EC56030000000100B6A81A98F2D9 +:107F60000C010EF00E00182028118EB6CE1198B616 +:107F7000D82FFC5C6C123CCEC5129C5C5C2FDDD80B +:107F8000220000EBCD40C0E02D0218189716961A7B +:107F90009C300A300BB91BF8EB0008300CC188F894 +:107FA0000B10680E0B17AA585AC100E06A43DCEAAE +:107FB0001A000017ABF40B0F8B2F3B178B580BC01D +:107FC00051301B1A9A180AB48B2FFC5C6C0D8B165F +:107FD0003CCE75FACAFFF00D8B0E9CC70F300BC15B +:107FE000F82FF95C6958F9C1941A9A120AF5280019 +:107FF000005808CF71F20910680E093008B28830B5 +:1080000058B2A8FACEFFF0F60810681C0811CEB2DC +:10801000CE11D8B2D83019B4892FFB5C6B183BC095 +:10802000343009CE1B300BC228E0682940EA180022 +:1080300000F93E000DFC0E1006100EFD0E0106B2FA +:108040002EF93E000DFC0E1006100EFD0E0108B2BA +:108050003E2F3C198CF80C10061808002C58001301 +:1080600002F1EC5604017000008001017100010072 +:1080700000EE9C010D02F1EC56030000000100F13E +:108080003C010A2F89B28C301CB48C2FFB5C6B58DE +:10809000BBE0840115E06C43DCEA1C0000F80B0334 +:1080A0002CF93A000D581ACF25585BCF003009C083 +:1080B000382FF95C6958F9CEA41A9A120AF52800EB +:1080C000005808CF71F20910680E093008B288B262 +:1080D000AB16985898F9B802052FE8FE08001FC0A3 +:1080E00098C258C418C5D8C6E8CCFBCB1BCBB8CDBA +:1080F000B8E0682940EA180000F93E000DFC0E10B7 +:1081000006100EFD0E00A6B22EF93E000DFC0E105C +:1081100006100EFD0E00A8B23E2F3C198CF80C1074 +:10812000061808F10C00AAB24CCAFBE0682940EA24 +:10813000180000F93E000DFC0E1006100EFD0E009A +:10814000C6B22EF93E000DFC0E1006100EFD0E00FC +:10815000C8B23E2F3C198CF80C10061808F10C0020 +:10816000CAB24CC92BE0682940EA180000F93E0069 +:108170000DFC0E1006100EFD0E00E6B22EF93E00AC +:10818000AF32001302F1EC560401710000800101CE +:1081900072000100007B57010D02F1EC5603000054 +:1081A000000100000DFC0E1006100EFD0E00E8B2DE +:1081B0003E2F3C198CF80C10061808F10C00EAB29E +:1081C0004CC75BE0682940EA180000F93E000DF05A +:1081D0000E003E7DFE931E2F3C198CF00C0038F1F2 +:1081E0000C0080B24CC63BE0682940EA180000F958 +:1081F0003E000DFC0E1012100E212E9C0EB22EF918 +:108200003E000DFC0E1012100E210E9C0EB23EF917 +:108210003E000DFC0E1012100E20EE9C0EB24EF918 +:108220003E000DFC0E1012100E20CE9C0EB25EF918 +:108230003E000DFC0E1012100E20AE9C0EB26EF918 +:108240003E000DFC0E1012100E208E9C0EB27EF918 +:108250003E000DFC0E1012100E206E9C0EF35E0000 +:1082600010F93E000DFC0E1012100E204E9C0EF365 +:108270005E00122F3C198CF80C1012180820289060 +:108280000C2EC9B20CC13BE0682940EA180000F985 +:108290003E000DF00E003E2ACE9C0EB22EF93E009E +:1082A0000DF00E005C8D001302F1EC56040172001B +:1082B000008001017300010000C4EC010D02F1EC2B +:1082C00056030000000100003E2AAE9C0EB23EF9AB +:1082D0003E000DF00E003E2A8E9C0EB24E2F3C1931 +:1082E0008CF00C00382A68900CB25CCF2AE0682928 +:1082F00040EA1800002F3C198C1808F13C012BB201 +:10830000CCCE7A300CC0282FFC5C6C58FCC0741AA0 +:108310009BF60C060A580ACF81AC8C300CC0B830E2 +:108320000BE06A43DCEA1A0000F40C032A2F3AB48B +:108330008B2FFC5C6C58BCCF45FE3DFDE8E3CF8045 +:10834000C00000EBCD40FC203D169214963017F88B +:108350000B1518C341E06C2C68EA1C0000EC0515F5 +:10836000051805301CF80209448ABC086CC0D08A84 +:10837000B3FAE300045006E06CEB50EA1C8001FE07 +:10838000B089DE302CC528301AEB2B0002F9D2B0B0 +:1083900008E0A007B5C1108ABB049AFAEB000450AC +:1083A00006E06CEB50EA1C80012F0CFEB089C88AF5 +:1083B000BC1844AA34C388302CC388581CC341E07D +:1083C0006C2C68EA1C000000224E001302F1EC56EF +:1083D00004017300008001017400010000D0C40199 +:1083E0000D02F1EC56030000000100EC0515051824 +:1083F00005301CF80209448ABC086CC0E18AB3FA53 +:10840000E300045006E06CEB50EA1C80012E0CFEE9 +:10841000B089A83037C1A8301AEB2B0002F9D2B0CE +:1084200008E0A007D9C0E08ABB049AFAEB00045028 +:1084300006E06CEB50EA1C80012D0CFEB08992C066 +:108440002830378ABC088CAA3C0E9C5C6C2FDDE37C +:10845000CD80FC80018334800183E8D401FEB0BB71 +:10846000DBD8028000EC28D401216D300AFB5A00D1 +:1084700054FB6A002D30A9FB69002EFB6A0030FB1B +:108480006A0031305AFB6A002CFB6C002DFB6B003C +:1084900030FACCFFD41A9B32C9190A16AA2049CF48 +:1084A000D1C23C2EADD80AD401FEB0A7EFD80A80C5 +:1084B00000C49CD4015C5CFEB0A7FED80AD7038040 +:1084C00000C4C8300A599CC0D2E0692C68EA19007F +:1084D00000A57C120C98BCF80B0A4CA19CC0223061 +:1084E0001A149C5C6C5EFCEBCD40E000A9A3001369 +:1084F00002F1EC56040174000080010175000100D6 +:1085000000BA7C010D02F1EC5603000000010020CE +:10851000BD3017FB2B003C5C5B587BF9BB02072F7F +:10852000EBFE0B001FC088C318C448C6A8C898CB70 +:1085300008CBA8CC48FB26003DFACCFFC01A9B32E2 +:1085400049190A16AA2049CFD1FB2B003EF9D6B013 +:1085500008FEB0B797582CC0D10C9CFEB0B8E630DE +:10856000075006E06CE9D8EA1C8001FEB0890CCB0C +:1085700018583CE08100AF5006E06CE9D8EA1C8056 +:10858000012F8CFEB08900CA58FB26003DFB2B0052 +:108590003EF9D6B008FEB0B823583CE081009B50AD +:1085A00006E06CE9D8EA1C80012F0CFEB088ECC90B +:1085B00018FB1B0064FACCFFFCFEB0B8D5FB2C0006 +:1085C00005582CC111FB2C0004FEB0B8AF3007FBDE +:1085D0002B0004500BE06CE9D8EA1C80012E8CFEC5 +:1085E000B088D2C778583CC751FB2B0004500BE031 +:1085F0006CE9D8EA1C80012E0CFEB088C5C6A8E044 +:10860000A00CF8582CC101FB26003D0C9CFEB000CC +:10861000E0EA001302F1EC5604017500008001014C +:1086200076000100002FB7010D02F1EC56030000A7 +:10863000000100B88D30075006E06CE9D8EA1C80D4 +:10864000012D8CFEB088B2C578583CC551FB2B007B +:108650003D500BE06CE9D8EA1C80012D0CFEB0887F +:10866000A5C4A8FB26003D0C955855C131301CE02F +:10867000A00106582CC1410C9CFEB0B869300750CF +:1086800005E06CE9D8EA1C80012C8CFEB0888EC312 +:10869000385825C311E0A03069582CCEE0583CC2B0 +:1086A000B15005E06CE9D8EA1C80012C0CFEB088C2 +:1086B0007DC228FACCFFC41A9B32C9190A16AA2017 +:1086C00049CFD1FEB0B8D6C178FACCFFC41A9B32DC +:1086D000C9190A16AA2049CFD1E0A02D95C0C8FB20 +:1086E0002B003D500BE06CE9D8EA1C80012B8CFE7E +:1086F000B0885C30070E9C5C6C2F5DE3CD80E08021 +:1087000000E4708000E5CC8000E75480018FE080B9 +:108710000178488000E7188001D7348000E83C8069 +:1087200001D1D080008774D401301CE06B2FCCEADB +:108730001B000000E873001302F1EC560401760000 +:10874000008001017700010000900C010D02F1ECA6 +:1087500056030000000100B68C305A300B300CFE7E +:10876000B0FE3A582CC031302CD802305A305B3031 +:108770000CFEB0FE31582CCF80C73DE0A02D06DAAC +:108780000A0000EBCD40C03017305A305B301CFE81 +:10879000B0FE22583CC0213037E0662FCCEA1600EC +:1087A00000ED2C0000583CC030581CC091305A30AD +:1087B0000B301CFEB0FE10583CC0213037300CACE2 +:1087C0008CC4FDE0A030600E9C5C6CE3CD80C0D416 +:1087D00001300CC66C582CC031302CD802583CC02B +:1087E00031303CD802DA0AEBCD4080E0672FC0EA96 +:1087F000170000E0A031008F2CE0A030F78F0CFEB6 +:10880000B086CA8F1C6E2CE06B76F4EA1B8001F9EF +:108810004B00A8E06B772CEA1B8001F94B00ACE021 +:108820006B7778EA1B8001F94B00B0E06B77FCEACC +:108830001B8001F94B00B4E06B7A1CEA1B8001F944 +:108840004B00B8E3CF90808001D99C8001D9908003 +:1088500000853CD401300B002080001302F1EC565F +:108860000401770000800101780001000007E701A2 +:108870000D02F1EC56030000000100E06A2FC0EA8F +:108880001A0000742AF53A00A1580AC021D80A58E3 +:108890001CC031C0AC189B169C5C6CD8020000D484 +:1088A00001300CC0ACD80AE06B2FD2EA1B0000F7F5 +:1088B0002C00005EFC0000E06B2FD2EA1B0000B62B +:1088C0008C5EFDEBCD40E0201D18953017E0662F43 +:1088D000CCEA160000ED2C0000581CC2E18C2C2FB5 +:1088E000FCAC2C8C2CE04C004CC0D5300CAC2C30AB +:1088F0002CAC8C305A300B301CFEB0FD7F583CC085 +:108900002130375815C701E06C2FC0EA1C000078F1 +:108910001C2BDC198C581CC0A18C2C59FCC6452F73 +:10892000F6ED2C00002FFCAC8CC5E82FE6ED2C00FA +:10893000002FFCAC8CC588582CC2515815C131E0B1 +:108940006C2FC0EA1C0000781C2BDC198C581CC052 +:1089500061ED2C00012FFCAC9CC058ED2C00022FC7 +:10896000FCACACED2C0001581CC3E5305A300B3088 +:108970000CFEB0FD43582CC031302C0091B80013D0 +:1089800002F1EC5604017800008001017900010039 +:1089900000475C010D02F1EC56030000000100C32A +:1089A00078303CAC8CC328583CC301E06C434FEAA0 +:1089B0001C8000198CBA8C1A9BE06C2FC0EA1C003A +:1089C00000780CE0A007C65C5C582CC0E1305A303F +:1089D0000B301CFEB0FD24583CC0213037301CC782 +:1089E000EF304CAC8CC128583CC101305A300B30B0 +:1089F0001CFEB0FD15583CC0213037300CAC9CAC8F +:108A0000AC302CAC8CE0A02BE50E9C5C6C2FFDE315 +:108A1000CD80E0800188B0D401301CE06B2FCCEA1F +:108A20001B0000B68C305A300B300CFEB0FCF858EE +:108A30002CC031302CD802305A305B300CFEB0FCE8 +:108A4000EF582CCF80C31CE0A02BC4DA0AD70380D8 +:108A500001D130EBCD40C03017305A305B301CFEB6 +:108A6000B0FCDE583CC0213037E0662FCCEA16005F +:108A700000ED2C0000583CC030581CC091305A30DA +:108A80000B301CFEB0FCCC583CC0213037300CAC55 +:108A90008CC0BCE0A02F1C0E9C5C6CE3CD80C000A1 +:108AA0007FE4001302F1EC5604017900008001011B +:108AB0007A00010000D297010D02F1EC560300008C +:108AC0000001008001737C8001D82CE06C2FCCEA7F +:108AD0001C0000300BB82BB89BB8AB5EFD0000EB60 +:108AE000CD40801697301A0F8BF60B1068F80B0BE1 +:108AF0000A0F8BF60B1068180BB69A305B0F89F2D1 +:108B00000910681809B2AB0F8BF60B1068160CB879 +:108B1000CACEBE0F8C2FFCAE8CE3CF80800000D677 +:108B200071203D14901691B906E065D524EA1580B0 +:108B3000010C9A0E9B5D151893009A029B5D1530EF +:108B400005EA157FF05803C087580CC606582CC09C +:108B500091404CB911C0385823CFA1302C2FDDDC07 +:108B600072580CC1A10C9A0E9B30080A99E0A02DF6 +:108B7000D7C050404CB911300CCF2B321CE06B4E9B +:108B8000A0EA1B0000970C3FFAE06BFFFFEA1B7F97 +:108B9000FF404CB91BCE3B581CC0D13008F06900D7 +:108BA000000C9A0E9BE0A02DBBCE90404CB911302A +:108BB0001CCD6B5803C121404CB911405BE0A01F94 +:108BC00013189300AB9F001302F1EC5604017A00D6 +:108BD000008001017B000100006D2C010D02F1EC11 +:108BE000560300000001005C7C202CC072322CE097 +:108BF0006B4EA0EA1B0000970C069CCC3B0C9A0E17 +:108C00009B30080A99E0A02D9DC0A1009A029B30DC +:108C1000080A99FEB0F091404CB91BCDCB300A3018 +:108C20000B00980299FEB0F088404CB91BCB7B300A +:108C300008E069C800EA19C09C0C9A0E9BFEB0F1CE +:108C400025CEE33018E069C800EA19409C0C9A0E62 +:108C50009BFEB0F119C113009A029B30080A99FEDD +:108C6000B0F06B404CB91B322CE06B4EA0EA1B00FD +:108C700000970C301CC86BE06882FEEA18652BE098 +:108C8000691547EA193FF70C9A0E9BFEB0F0551490 +:108C900094169530083009FEB0F0F8300AC0523012 +:108CA0000BEA1BBFE0C048300BEA1B3FE008980A04 +:108CB00099FEB0EF2DFEB0F114502CFEB0F12B1444 +:108CC000941695E068E4F2EA18BCD5E069E8E7EAB2 +:108CD000193E4BFEB0F031BB2B300AEA1AF800E027 +:108CE0006B2E42EA1B3FE600BF3A001302F1EC563E +:108CF00004017B00008001017C0001000079040177 +:108D00000D02F1EC5603000000010008980A99FEDC +:108D1000B0F025149816990C9A0E9BFEB0EED6BBB7 +:108D200009FEB0EED3149416953FE8E069FFFFEA20 +:108D300019BC8FFEB0F0BAC0D330083009EA193C34 +:108D400090089A0A9BFEB0F0B3C042009A029BC6FC +:108D500088089A0A9B08980A99FEB0F000149616A3 +:108D600097E0682E11EA188157E0693FA0EA193FA1 +:108D700050FEB0EFF4E0684358EA188C12E06971D5 +:108D80008FEA193FBCFEB0EED50C980E99FEB0EFFD +:108D9000E614921693E068E84BEA1841A5E06952A0 +:108DA000B7EA193F010C9A0E9BFEB0EFD8E068BD00 +:108DB0000BEA18DAF3E06970E8EA193F8CFEB0EECE +:108DC000B90C980E99FEB0EFCA30083009EA193F85 +:108DD000E0FEB0EEAF08980A99FEB0EFC014961608 +:108DE000973005EA153FF0049A069B0C980E99FE01 +:108DF000B0EE6C30080A99FEB0EE9CBB1B049A06DC +:108E00009B0C980E99FEB0EE95300800F2240013EA +:108E100002F1EC5604017C00008001017D0001009C +:108E20000013BC010D02F1EC560300000001000A22 +:108E300099FEB0EE91BB08FEB0EFE000980299FEFB +:108E4000B0EF9F404CB91B402B405C180B404CE0EE +:108E5000A01E0018935C7C202CFE93FEEECF2A808F +:108E600001D65880015DF680015E2A80015D9C80FC +:108E7000015DA0800159BC80015A2480015CC8803A +:108E8000015C4E8001B920EBCD40C0189BE06C1E08 +:108E900010EA1C0000300A994AE06E1C88EA1E00A5 +:108EA0000030599D39990A991A992A993A3008300F +:108EB00009F8E90014F8E9001CF8E90024F8E900D1 +:108EC0002CF8E90034F8E9003CF94A0044F94A007A +:108ED000481C9A2E4A9D4A1C9A2E4A149632D7ADA7 +:108EE000282017CFE18D08BD199D287628EE18801F +:108EF000007619EE198000760A189B2FCBFEB0E79A +:108F00003DE3CF90C00000EBCD40FE1691E0661C23 +:108F100088EA160000780B8D0B781BEE1B80008D05 +:108F20001B782CEE1C80008D2C31EA0C9B6C4C00C5 +:108F30005FB7001302F1EC5604017D0000800101CF +:108F40007E000100008677010D02F1EC560300005F +:108F5000000100FEB0EC3E6C39129A201A6C4CE015 +:108F6000671E10EA1700006E4B143BC23431EA2F23 +:108F7000FB5C8BFEB0EC54FEB0EF9EEEEB002C31B0 +:108F8000EA6E4B2FFB5C8B6C4CFEB0EC67FEB0EFD7 +:108F900093EEEB003431EA6E4B2FFB5C8B6C4CFE96 +:108FA000B0EC7AFEB0EF88EEEB003C6E462FF6C6D2 +:108FB000B831EAC1F1F7D9B010FEB0EC31FEB0EF34 +:108FC0007BEEEB002C31EA6C3B5C8B6C4CFEB0EC26 +:108FD00045FEB0EF71EEEB003431EA6C3B5C8B6C1C +:108FE0004CFEB0EC59FEB0EF67EEEB003C6C36C4C3 +:108FF000B8F7D9B010FEB0EC078D5C31EA300B6CDD +:109000004CFEB0EC0118958D656C546A0CFEB0EF07 +:109010005314921693680CFEB0EF4E14981699EE06 +:10902000EA002CFEB0ED7604980699FEB0EDA6EEAF +:10903000EB002C6A1CFEB0EF3F14921693681CFEE6 +:10904000B0EF3A14981699EEEA0034FEB0ED6204DF +:10905000980699002AD9001302F1EC5604017E000B +:10906000008001017F0001000039CC010D02F1EC0C +:1090700056030000000100FEB0ED92EEEB00346AF2 +:109080002CFEB0EF2B14921693682CFEB0EF261432 +:10909000981699EEEA003CFEB0ED4E04980699FE53 +:1090A000B0ED7EEEEB003C6C360C9CFEB0EF7B141A +:1090B000981699EEEA002CFEB0EEC414921693EEC8 +:1090C000E300140C9CFEB0EF6E14981699EEEA00C3 +:1090D00034FEB0EEB714941695EEE500240C9CFE19 +:1090E000B0EF6114981699EEEA003CFEB0EEAAEEDD +:1090F000EB001CFEB0DD2A18981096089A0A9BFE19 +:10910000B0DD2418991295049A069BFEB0DD1E0C62 +:10911000980A99189A0E9B2F4B0E9C2F8CFEB0E646 +:10912000516E4C2FFC8F4C300A300BEEEB0014EEDE +:10913000EB0024EEEB001C6E0B6E2CC32C1896EF8C +:109140004600446E1B6E3CC2CCEF4C00482D86E0BE +:10915000460051C0522D8CE04C0051C053301CA22F +:109160008CE3CF90FE300CA28CE3CF80FED703803F +:1091700001567C800156C800C5E3001302F1EC568D +:1091800004017F0000800101800001000084A7012C +:109190000D02F1EC5603000000010080015704802D +:1091A000015740800156B080015D60800159BC804C +:1091B000015A2480015E2A80015CC8800139D08078 +:1091C000014C48F80B010AE04A00B5C065162CFEB8 +:1091D0003CFE985C3C5EFCFE5AFF4CC054FE3CFEDC +:1091E00098161C5EFC149C5EFC0000EBCD4080E0F9 +:1091F00067EDE8EA1780010E9CFEB0838B311A30D0 +:109200007B300CFEB0F98A582CC0812EC70E9CFE14 +:10921000B08380302CE3CD8080E3CF90800000EBE2 +:10922000CD4080E067EDC8EA1780010E9CFEB08358 +:1092300071311A307B301CFEB0F970583CC0812E61 +:10924000C70E9CFEB08366303CE3CD8080E3CF90B8 +:1092500080D7038001737CEBCD40C0202DFEB0820F +:109260003D1896E067EF84EA178001AF0ABB1BE068 +:109270006B2C5CEA1B0000761B2B0B1A9A1498309F +:109280008C173910C9201CCFD19AB99AAA9A9B9AE7 +:109290008CC33CE04C2711C125301C001F06001375 +:1092A00002F1EC5604018000008001018100010000 +:1092B00000C834010D02F1EC56030000000100ED7E +:1092C0006C00D42BD60D8C581CC221364BE06C00A0 +:1092D000FFFEB087772F870E9CFEB0832DC188C11B +:1092E00074ED3C00D4581CC131300CED6C00D42B13 +:1092F000D60D8C580CC0C1E0A02C2C300BF93C00D2 +:1093000080FEB0875F2F870E9CFEB083152FEDE3A4 +:10931000CF90C08000853C80009000D43118961614 +:1093200095129430073003089CFEB0DCDB189208DD +:109330009CFEB0DCD7049BFEB0DAF418920A9CFEC7 +:10934000B0DCD018950C9CFEB0DCCC0A9BFEB0DAE9 +:10935000E9049BFEB0DB5A18965854C765E06733A2 +:1093600034EA173F330E9BFEB0DC6AC1F30C9C0E4F +:109370009BFEB0DC59C183E06B6666EA1B3FE60CDE +:109380009CFEB0DC5DC102E06B3333EA1BBF330CE3 +:109390009CFEB0DA71E06BBA2EEA1B3F68FEB0DAD1 +:1093A000C11893C038FC133F80089CFEB0DC9AFEC5 +:1093B000B0EDB8149416953008E0691CACEA1900B9 +:1093C00083DD001302F1EC560401810000800101ED +:1093D00082000100005DFF010D02F1EC5603000068 +:1093E0000001003FF8FEB0F05B14961697069CFE55 +:1093F000B0EDAA14901691FC188000E069353FEAA0 +:10940000193FF0089A0A9BFEB0F04AFC18A000E051 +:10941000697CEDEA193FF1FEB0ED0D00980299FE6E +:10942000B0ED0914901691FC1C3F80069BFEB0D94C +:10943000C7FEB0ED8914941695FC1A4000E06BA9A4 +:109440002AEA1B3F430C980E99FEB0ECF408980AE8 +:1094500099FEB0ECF0FEB0EDC2FEB0EDDA0098027D +:1094600099FEB0EBD3FEB0EDBA18970E9CD83280BF +:1094700001384880013A6480013A7C800136B4802A +:1094800001376080013B20800162B8800135D880BF +:10949000015D6080015C4E80015E2A80015A24805B +:1094A000015DF6EBCD4080E06CEF4CEA1C8001FEE4 +:1094B000B08254E0672C5CEA170000E0A02B628FBA +:1094C0000CE0A02B598F1C6E0CE06B8050EA1B80C7 +:1094D00001F94B0228E06B8084EA1B8001F94B0202 +:1094E0002CE06B000393001302F1EC5604018200A0 +:1094F000008001018300010000E244010D02F1EC53 +:109500005603000000010080BCEA1B8001F94B02F9 +:1095100030E06BC830EA1B8001F94B0234E06BC8C5 +:1095200070EA1B8001F94B0238E3CF9080D70380AB +:109530000087748001D99C8001D990EBCD40FC1844 +:109540009516971496E06C43DCEA1C00005895C011 +:10955000613025301B782A2F1AB48B5C65F805031F +:109560002430033022E93C000E580CC031E3CF8098 +:10957000FC099C580CC1B1F7D6B008089C68CAF029 +:109580001A0000C14068BC781C5D1C18935C53C075 +:1095900061049CFE32FF015C5CCF615803CE80F712 +:1095A000D6B008089C68CA741A5D1AF5D6B008F7D8 +:1095B000D7B008089C68C972495D195C53C140095D +:1095C0009C580CC111F7D6B008089C68CA742A5D73 +:1095D0001AC04068BC782C5D1CF7D6B008089C689F +:1095E000CA743A5D1AF9D5B008C9FCE3CF90FCEB18 +:1095F000CD40FC189516971496E06C43DCEA1C00ED +:10960000005895C0613025008F62001302F1EC56BE +:1096100004018300008001018400010000F66C0158 +:109620000D02F1EC56030000000100300B782A2FE8 +:109630001AB48B5C65F805032430033022E93C0042 +:109640000E580CC031E3CF80FC099C581CC1A1F717 +:10965000D6B008089C68CA742A5D1AC0D068BC7865 +:109660002C5D1C1893E60C1518C061049CFE32FF9B +:10967000015C5CCF51F7D6B008089C68CA743A5DAB +:109680001AF5D6B008F7D7B008089C68C972595DBA +:10969000195C53C150099C581CC125F7D6B0080865 +:1096A0009C68CAF01A0000C0B068BC781C5D1CCC75 +:1096B000B0F7D6B008089C68CA741A5D1AF9D5B01C +:1096C00008C45CE3CF90FCD421189716961495E05B +:1096D0006C43DCEA1C0000F8070324E93C000E5848 +:1096E0000CC021D82AF5D5B008E805000C2ECCF91D +:1096F0002B0000089C68C972595D19F5D5B008F7B0 +:10970000D6B008089C68C972495D19F9D7B008C17C +:10971000ECDA2A5C5C586CF9BC02061E0C19EC18D9 +:109720000F0A0E12161C22280030AC0032F900136A +:1097300002F1EC5604018400008001018500010063 +:10974000009CD4010D02F1EC560300000001005E04 +:10975000FC314C5EFC33CC5EFCE06C00B45EFCE0A3 +:109760006C03C05EFCE06C27105EFC5EFD0000EB4D +:10977000CD40E030673FF6300CC148149B120BF728 +:109780002800125808C0955C670E38C064F727009F +:10979000122ECBF72600002FF95C695829CEF52F41 +:1097A000FC5C6C58BCC094E06B43DCEA1B0000F628 +:1097B0000C032A3009CF3BF9D7B008CBEFE0652B7B +:1097C00004EA1500006A0BF75C0068F767006AF7A7 +:1097D00066006BF71A006CF80A1900C210F80A1537 +:1097E00010C090F71A0066580AC171F71A006C5839 +:1097F0000AC131300AC0783009F60A00182908B0C9 +:10980000092FFA5C6A586ACF85F75C006C292BB681 +:1098100087FEB08057C048301CE0A029C5E0A029D1 +:10982000CFC1216A0CF91B006C581BC0D529AC981C +:109830008C580CC091FEB0B8DBE06CF1C0EA1C8023 +:1098400001FEB080C1E3CF90E0D7038000867000B6 +:10985000CD44001302F1EC560401850000800101A3 +:109860008600010000091F010D02F1EC5603000003 +:109870000001008001D9548001D96C8000F79C80E0 +:10988000008774E1BC0000D3035EFCB18CF9DCC03E +:1098900001EC1C00015EFCD401CF9FC020D503D891 +:1098A0000A0000D401201CC060201CC070201CC015 +:1098B00080D80AE0A01CEAD80AE0A01D05D80AE07A +:1098C000A01D20D80AD7038001C0148001C0508099 +:1098D00001C08C201CC080201CC0C0201CC0F020F7 +:1098E0001C5E0F5EFDFE7C1814780CF9DCC0015E76 +:1098F000FC486C780CF9DCC0015EFC484C780CF933 +:10990000DCC0015EFCD703FFFF1864FFFF1850EBBB +:10991000CD40801897F9D7C008CDDFCFD0E3CF80F6 +:10992000800000300B990B5EFD0000780AE01AE021 +:10993000FFF5EB108B990B5EFD0000780AE21AFF31 +:10994000FD990A582B5E3D780AA1BA990A780A2037 +:109950001BAF7BE61BFFFF144B990B5EFD000078ED +:109960000CA1ACFE7A1868F40B092C5EFD000030E7 +:109970000BFE7A00AB58001302F1EC56040186008E +:10998000008001018700010000B6A4010D02F1EC86 +:10999000560300000001001868F40C092B5EFDEB73 +:1099A000CD40E0189616951497300BCCEF0A9B0C1F +:1099B0009CCCFF0E9B0C9CCD4F362C8D1CE06CB4C8 +:1099C00000EA1C04C48D2CE46C00048D3C300C8D2A +:1099D0004CE3CF80E00000FE7C1814780CA99CF9C1 +:1099E000DCC0015EFC0000D401581CC060584CC0B3 +:1099F000C0589CC120D80A301CC7FFC151301CC6BA +:109A00004F301CC98FD80A303CC77FC0D1303CC50D +:109A1000CF303CC90FD80A302CC6FFC051302CC5FE +:109A20004F302CC88FD80AEBCD40E01897300BCAC6 +:109A3000AFC3BF3246EA16AA004B5B9706301B4BFA +:109A40004A950BC3CFFE7518146A0CEDBC000ECFFF +:109A5000B2C2BF32CBEA1BAA004ADA950B6E3B4971 +:109A60007A950BC2CF6A0CEDBC000ECFD2C1DF32AB +:109A70008BEA1BAA004A6A950B6E2B491A950BC1FB +:109A8000EF6A0CEDBC000ECFD2C0FF330BEA1BAA6D +:109A90000049FA950B6E4B00DA8F001302F1EC5679 +:109AA00004018700008001018800010000214F01AE +:109AB0000D02F1EC5603000000010048BA950BC1FD +:109AC0000F6A0CEDBC000ECFD2C01F499B97066EEB +:109AD0001BA1AB498A950BC04FE3CF80E0D703FFB2 +:109AE000FF182CFFFF1828FFFF1830EBCD40C0FEF9 +:109AF0007618146C0CEDBC000ECFB2CE8E3247EA55 +:109B000017AA0048BB9707301B48BA950BCE9E6C2E +:109B10000CEDBC000ECFD2CDAE486B9707300B4892 +:109B20005A950BCDEE300CC48FE3CF80C0D703FF26 +:109B3000FF1818FFFF1824EBCD4080205D1897C553 +:109B4000EFC1115807C091301CC61FE06904C43032 +:109B50001A301B1A9CC37F0E9B1A9CC78F0E9CC485 +:109B6000EFCFE02FBDE3CF80800000EBCD40E018C9 +:109B7000961697E06513E8EA1500006ADC2FFC8B67 +:109B8000DC0C9CC1ECC0800C9CCEBCC0506ACC2FBD +:109B9000FC8BCCC038300C8BCC6ADC58FCC0D46A4F +:109BA000CC58BCC065301CAE8C302CE3CD80E0308E +:109BB0000CAE8CE3CF90E0303CE3CD0004B6001354 +:109BC00002F1EC56040188000080010189000100C7 +:109BD0000061F4010D02F1EC560300000001008069 +:109BE000E00000D421E0661420EA160000780B8D16 +:109BF0000B781BEE1B80008D1B782CEE1C80008DDB +:109C00002C30AA0C9B6C4CFEB0E6AA6C39129A2040 +:109C10001A6C4CE06713E8EA1700006E5B143BC156 +:109C2000A430AA2FFB5C8BFEB0E6C08F9C30AA6EDE +:109C30005B2FFB5C8B6C4CFEB0E6D68FAC30AA6E13 +:109C40005B2FFB5C8B6C4CFEB0E6EC8FBC6E542F34 +:109C5000F4C3E830AAC161F7D9B010FEB0E6A68F10 +:109C60009C30AA6C3B5C8B6C4CFEB0E6BD8FAC307C +:109C7000AA6C3B5C8B6C4CFEB0E6D48FBC6C34C2DF +:109C800078F7D9B010FEB0E6858D5C30AA300B6C49 +:109C90004CFEB0E67F18958D656C546E9C680BFE8B +:109CA000B0D60C6A0BFEB0D6778F9C6EAC681BFEEC +:109CB000B0D6046A1BFEB0D66F8FAC6EBC682BFEAC +:109CC000B0D5FC6A2BFEB0D6678FBC6C34089CFE06 +:109CD000B0D898189B6E9CFEB0D72818968F660057 +:109CE0009768001302F1EC5604018900008001011D +:109CF0008A00010000F43F010D02F1EC5603000060 +:109D0000000100089CFEB0D88F189B6EACFEB0D747 +:109D10001F18958F85089CFEB0D886189B6EBCFED8 +:109D2000B0D71618988F780A990C9A0E9B2F0B0EA5 +:109D30009C2F4CFEB0E10C6E5C2FFC8F5C300C8FC6 +:109D40006C8F8C8F7C6E3C580CC045FEB0D86CC0BC +:109D5000485C3CFEB0D868FC1641C80C9BFEB0D8ED +:109D600011C0F26E4C580CC045FEB0D85DC0485CC6 +:109D70003CFEB0D8590C9BFEB0D804C022DA2AD8D9 +:109D80002AD7038001567C800156C8800157048081 +:109D9000015740800156B0800136B48001384880B8 +:109DA000014C4880013B20EBCD40FC18953004E08D +:109DB0006313E8EA1300006607300B0E9CE0A02650 +:109DC00011C131661C300BE0A0260CC0E1662C30BE +:109DD0000BE0A02607C0916A0C870C6A1C871C6ADE +:109DE0002C872CE3CF80FC6A0C0E9BFEB0D5781834 +:109DF000976A1C661BFEB0D57318926A2C662BFE00 +:109E0000B0D56E002A8A001302F1EC5604018A00D4 +:109E1000008001018B000100004B84010D02F1EC78 +:109E2000560300000001001896BFD70E9CFC173E99 +:109E3000800E9BFEB0D7B8C0E2BFD2049C0E9BFE42 +:109E4000B0D7B2C082BFD60C9C0E9BFEB0D7ACC0C0 +:109E50002230146A0C870C6A1C871C6A2C872C0819 +:109E60009C5C5CE3CD80FC8001D6DC800135D88031 +:109E7000013A7CD421E0691E5CEA190000129C2A98 +:109E80000C300A300B189E30A8BD2A2018CFE19D57 +:109E90000A129CFE3CFF4CB91B992A129CFE3CFF07 +:109EA00000B91BF8EB0008F8EB0010996A129CFE51 +:109EB0003CFEE4B91BF8EB0008F8EB0010996A309F +:109EC00008F3480138E06E03E8129BFE3BFEC4E055 +:109ED0006C03E83006169A580CC040201C14C6CFFC +:109EE000E1129CFE3CFADC300A1897580EC0402064 +:109EF0001E0ECACFE1F348090CF3480910F34809D4 +:109F000014F3480918F348091CF3480920F34809D9 +:109F100024F3480928F348092C300EF34E0930F396 +:109F20004E0934F34E0938003AA7001302F1EC56FB +:109F300004018B00008001018C000100005FAC0176 +:109F40000D02F1EC560300000001003015F3450945 +:109F50003CF34E0940F34E09443FFCF34C0948F3EF +:109F60004C094CF34E0950F3480954F3480958F38F +:109F700048095CF3480960F3480964F3480968F349 +:109F800048096C129CFE3CF690300BB91BF8EB00B4 +:109F900008F8EB0010996AF348098C129CFE3CF615 +:109FA00070B91BF8EB0008F8EB0010F8EB0018B3E1 +:109FB0001BF2EB0008F2EB0010F2EB0018F2EB00E2 +:109FC00020E06C2710F35C0014F35C0016B26EB254 +:109FD0007E930E129CFE3CFF40B91B992AFC1C4349 +:109FE00035F34C00C4FC1C4290F34C00C03FFCF322 +:109FF0005C00C8F34E09B0F35E00F0F35E00F2F3CC +:10A000005E00F4F35E00F6129CFE3CF64CB91BF8C1 +:10A01000EB0008F8EB0010F8EB0018F8EB0020F864 +:10A02000EB0028F8EB003099EAF34809F0F348090F +:10A03000F8F35E00F8F34E09F4F35E00FAF35E0005 +:10A04000FCF3480A00F34809FCF34E00FF8B0013B1 +:10A0500002F1EC5604018C00008001018D0001002A +:10A06000003514010D02F1EC560300000001000A56 +:10A0700004129BFE3BF5B4129C1694305AB907A902 +:10A0800026201ACFD1129CFE3CF5B4F34C0A08F3FB +:10A09000480A0CF3480A10E06728D0EA1700008F3E +:10A0A000188F288F388F48F34E0A20F34E0A1CF37E +:10A0B0004E0A2CF34E0A28F34E0A24F3450A38F3CD +:10A0C000450A34F3450A30F3480A44F3480A40F39A +:10A0D000480A3C129C2D8C300A300BB91BF8EB005F +:10A0E00008F8EB0010F8EB0018F8EB00208F5EF397 +:10A0F000480A14F3480A18129CFE3CFF34B91B9915 +:10A100002A129CFE3CFF28B91B992A129C2B0CB9E1 +:10A110001BF8EB0008F3480A488F7ED82A0000EBB2 +:10A12000CD4080203DE0671E5CEA1700000E9CFEDB +:10A130003CFF401A9BB908B71978289728CBFE1A1C +:10A140009CFE37FF40B90AAF1B782A8F2A2FDDE328 +:10A15000CF8080D401308A300B300CFEB0F2C8586A +:10A160002CC031302CD802300CE06B30B4EA1B002C +:10A170003250001302F1EC5604018D000080010101 +:10A180008E00010000A0DF010D02F1EC560300007B +:10A190000001000000B68CB61CDA0A300CE06B300F +:10A1A000B4EA1B0000B68C5EFF0000EBCD40C0207F +:10A1B0001D3017300CBA9CBA8CE06630B4EA160039 +:10A1C00000ED2C0000F80B1518C0F1301CAC8C30E1 +:10A1D0000CAC2CE06C30ACEA1C0000780CFEB0F744 +:10A1E00087E0A01259C458581CC2A18C1C2FFCAC8B +:10A1F0001CFACBFFFFE06C30ACEA1C0000780CFED0 +:10A20000B0ECA8C150308A300B301CFEB0F282583E +:10A210003CC0213037308A30AB300CFEB0F27A5877 +:10A220002C302CC280AC8CE0A0148CC2288C1CE09A +:10A230004C0096C1E5305CAC8CC8FCC1A8583CC150 +:10A2400081584CC1608C2C2FFCAC2C8C2CE04C0029 +:10A25000FBCF241A9BE06C30ACEA1C0000780CFEAB +:10A26000B0F786C060304CAC8C301CC64CC75C0E5E +:10A270009C5C6C2FFDE3CD80C0D70380017D5880AE +:10A2800001B300800167BC8001B7AC80017DD8EBD1 +:10A29000CD408000042A001302F1EC5604018E0028 +:10A2A000008001018F000100001F64010D02F1EC2C +:10A2B00056030000000100E06730ACEA170000E040 +:10A2C000A0254A8F1CE0A025418F0C6E1CE06B8DF1 +:10A2D000E4EA1B8001F94B0108E06B8E08EA1B8061 +:10A2E00001F94B010CE06B8E18EA1B8001F94B0160 +:10A2F00010E06B8F60EA1B8001F94B0114E06B905A +:10A3000038EA1B8001F94B0118E3CF9080D7038016 +:10A3100001D99C8001D990D401300BE06A30ACEABD +:10A320001A0000741AF53A0101580AC021D80A58D7 +:10A330001CC031C0AC189B169C5C6CD8020000D4C9 +:10A3400001300CC0ACDA0AE06B30BAEA1B0000F74F +:10A350002C00005EFC0000E06B30BAEA1B0000B687 +:10A360008C5EFDD401308A300B300CFEB0F1E45825 +:10A370002CC031302CD802DA0A0000D401E06C3055 +:10A38000B4EA1C0000300BB82BB81B308A301CFE1E +:10A39000B0F1D2DA0A0000EBCD40C03017E06630F1 +:10A3A000B4EA160000ED2C0000582CC1A1308A3010 +:10A3B000AB301CFEB0F1C0007EEC001302F1EC5695 +:10A3C00004018F000080010190000100000F0C01CA +:10A3D0000D02F1EC56030000000100583CC0213092 +:10A3E00037CD3F582CC041302CE3CD80C0583CC005 +:10A3F000213037303CAC8CE06CF278EA1C8001FEF6 +:10A40000B07BA80E9C5C6CE3CD80C08001737C8027 +:10A41000008774D4013019178AF40A1068F80A0BFF +:10A4200009178AF40A1068180AB499308A1788F054 +:10A430000810681808B0AA178AF40A1068140CB833 +:10A44000C9178C2FFCB68CC8EFD80AD401C0FC30D9 +:10A450000CC098300BE06A314AEA1A0000F40C0B89 +:10A460000B2FFC5C6C582CCF65D80A300BE06C319C +:10A4700048EA1C0000B80B300AC128E06830D0EA76 +:10A48000180000F40C10061808F20C10061808B09A +:10A49000CB2FF95C695819CF252FFA5C8A594A5E8F +:10A4A0004D3009CF8B0000E06B30D0EA1B0000F884 +:10A4B0000C1006F60C040C5EFC0000E06B30D0EAD9 +:10A4C0001B0000F80C1006180B961C5EFC0000EB3D +:10A4D000CD4080201D3FF7189B5C5B00FE3F0013C2 +:10A4E00002F1EC560401900000800101910001008E +:10A4F000001BB1010D02F1EC560300000001002029 +:10A500001BC04020BBC040C0583007C0A83017C097 +:10A5100088500CE06CF024EA1C8001FEB07B2C0E0D +:10A520009C5C6C2FFDE3CD80800000EBCD40E020F3 +:10A530001D18973016CDFF18950E9C5C5C201CC032 +:10A540004020BCC040C058CB8CC0B8CA2FC0985067 +:10A5500007E06CEF94EA1C8001FEB07B0D300658DA +:10A5600005C085300CE06B314AEA1B0000F6050B94 +:10A570000C0C9C5C6C2FFDE3CD80E0EBCD4080208B +:10A580001D3FF7586CC0313007C088500CE06CEFAD +:10A5900074EA1C8001FEB07AEF0E9C5C6C2FFDE328 +:10A5A000CD808080008774EBCD4080E06B3148EA3D +:10A5B0001B0000968A149C2FFC595CC035E3CF80A9 +:10A5C000803009C158F2081006E06E30D0EA1E0053 +:10A5D00000F40C1006180E100EFACCFFF818083014 +:10A5E00067112C1CBC2027CFD12FF95C695819CEDC +:10A5F000B5968C2FFCB60CE3CF9080E06C31480010 +:10A60000A334001302F1EC56040191000080010113 +:10A6100092000100008E7A010D02F1EC5603000059 +:10A62000000100EA1C0000988C5EFCEBCD408030FD +:10A6300007CF7F594CC02530170E9C5C6CE3CD8052 +:10A64000800000EBCD40C0232D302BBA8B301BBADD +:10A650009B306BBAABE06B3148EA1B0000968A1462 +:10A6600099F20B1408BABBBAC9305B3008C278E063 +:10A670006E30D0EA1E0000F00910061C09920E5C34 +:10A680007EEFDEC010A9471A965C8BEC0B0B072FF0 +:10A69000FB1A975C8BEE0B0B0E2FFB92195C79FD6E +:10A6A000D9C010A94E5C8BEE0B0B0E2FFB1A9E5CD3 +:10A6B0008BFC0B0B092FFB2FF85C681438CD955CD5 +:10A6C0008B1A99169A189EC0501338201A1CC8CF9E +:10A6D000D1169C2CEDE3CD80C00000E06C00E4EAD4 +:10A6E0001C0000300BB82BB88BB89B301BB8AB5E8E +:10A6F000FF0000D401E06C0558EA1C000078295CDA +:10A7000059189A2EAA198B306CFEB07A99D802D4B7 +:10A7100001E06C0558EA1C000078295C59189A2E53 +:10A720008A198B0036C8001302F1EC56040192001E +:10A7300000800101930001000031C1010D02F1EC24 +:10A7400056030000000100306CFEB07A8BD802EB9B +:10A75000CD40C0E0680574EA180000119E3007C0C3 +:10A76000282FF7F6071800C1825C57F8070709126F +:10A770005E5C5E3089C0580C9E5C5EFE39FF015CF9 +:10A78000595819CEF5FC061501EDBE0007CF521140 +:10A790008E0C5E5C5ECF3B143E5F0CE3CD80C0D47C +:10A7A00001CBBFD8020000D421202D18973055E0EE +:10A7B000660558EA160000300830691A9A0D8B3089 +:10A7C0006CFEB07AA918945814C080E06CEFA4EA2B +:10A7D0001C80012F8CFEB079F35814CEA10A9CFE88 +:10A7E0003500015C7CCE501BAA302B1A9CCB1FC0BD +:10A7F000701BDA302BFACCFFFDCABFC091E06CEFC2 +:10A80000A4EA1C8001FEB079DB300CC3F88C2C2F3D +:10A81000FCAC2C1B9B1B8CF7EC108BE06C1117B95C +:10A820003BAF4BE02B11945C8B6C3C160C8D3C1BAE +:10A83000CB1BBCF7EC108BE06C09C4B93BAF4B5C95 +:10A840008B6C4C160C8D4C00D3F5001302F1EC56BA +:10A850000401930000800101940001000025E9013A +:10A860000D02F1EC56030000000100E06C43DCEA4D +:10A870001C0000786C2F0C198C580CC1808C2C6C2F +:10A880003BF60C0C0A6C4BF60C0C08300C8D3C8D16 +:10A890004CAC2CF9DAB010A94CAE8CAE9AF9D8B009 +:10A8A00010A94CAEACAEB8301CC028300C2FEDD87F +:10A8B000220000EBCD40C0201DE0670558EA1700DC +:10A8C000006E295C590E9A2E6A0F8B306CFEB0799F +:10A8D000DB300830391A9A0F8B306CFEB07A2E18A4 +:10A8E000965816C090E06CF258EA1C8001FEB079D0 +:10A8F000790C9CC1081BAA302B1A9CC3CFC03130E5 +:10A900000CC0981B9B0FAC186B0F9CF80B1800CF5A +:10A9100081301C2FFDE3CD80C0D70380008774D425 +:10A9200001E06C0558EA1C0000300B993B994BB8CC +:10A930002BC13FD80200005EFF0000EBCD40C020DD +:10A940001D1897300CAE8CE0660558EA1600006CB6 +:10A95000295C590C9A2E6A0D8B306CFEB0799430BC +:10A960000830391A9A0D8B306CFEB00050EC001391 +:10A9700002F1EC56040194000080010195000100F1 +:10A98000004F51010D02F1EC560300000001007967 +:10A99000E7581CC0A11BAA302B1A9CCFEEC0313047 +:10A9A0000CC038301CAE8C2FFDE3CD80C0D70380A7 +:10A9B000008818800088CCD431203D300CFB6C001E +:10A9C0000840DCFEB0E41614961697FC153FE040F4 +:10A9D000CCFEB0E40FBFDB30080A99FEB0E42AC118 +:10A9E000B20C9A0E9BBFDB30080A99FEB0E422C17C +:10A9F0003240ECFEB0E3FEBFDB30080A99FEB0E463 +:10AA000019C0A2300CE06B4B78EA1B0000970C9742 +:10AA10001C972CCE38FC13404EE064C1E6EA141AB1 +:10AA200063E065A5DCEA15404C40CCFEB0E3E208EB +:10AA3000980A99FEB0E35530080699FEB0E351300C +:10AA400008E0694000EA19408FFEB0E387149016D1 +:10AA500091E06C4B78EA1C0000780CFEB0E3CA0071 +:10AA6000980299FEB0E228FEB0D1FC1891E06C4B40 +:10AA700078EA1C000099010C9A0E9B08980A99FE2E +:10AA8000B0E32F30080699FEB0E32B3008E06900F0 +:10AA90002792001302F1EC56040195000080010199 +:10AAA0009600010000DA9A010D02F1EC5603000055 +:10AAB0000001004000EA19408FFEB0E361149616D1 +:10AAC00097E06C4B78EA1C0000781CFEB0E3A40C05 +:10AAD000980E99FEB0E202FEB0D1D61896E06C4B0B +:10AAE00078EA1C0000991640ECFEB0E39508980A3D +:10AAF00099FEB0E30830080699FEB0E3043008E0A0 +:10AB0000694000EA19408FFEB0E33A14941695E0CC +:10AB10006C4B78EA1C0000782CFEB0E37D08980AA4 +:10AB200099FEB0E1DBFEB0D1AF1897E06C4B78EA4C +:10AB30001C00009927029CFEB0E36E14941695BF8A +:10AB4000D50C9CFEB0E3681490169100920293BF5E +:10AB5000D30E9CFEB0E36014961697BFDBBB1B08B8 +:10AB60009A0A9B04980699FEB0E1B8BB08FEB0E1D2 +:10AB7000B5FEB0D189301BEA1B42AAFEB0D1CEC3CC +:10AB800013BFD73018FC1940440C9A0E9BFEB0E35B +:10AB900061C283BFD13018FC194034009A029BFE79 +:10ABA000B0E358C1F3FEB07725FEB07AEF5F1BE04B +:10ABB0006C4B7800D217001302F1EC56040196009A +:10ABC0000080010197000100006521010D02F1ECF8 +:10ABD00056030000000100EA1C0000780C5C5BC01A +:10ABE000A0FC1BC170FEB0D1B7C0E2301CFB6C00F2 +:10ABF00008C0A8301BEA1B4170FEB0D1A1C0433091 +:10AC00002CFB6C0008FB3C0008580CC090300CE09A +:10AC10006B4B78EA1B0000970C971C972CFB3C00B1 +:10AC2000082FDDD832D70380015DA080015C4E8003 +:10AC3000015CC880015D6080015A24800139D080A8 +:10AC4000015D9C8000853C80008CD480013A7C8032 +:10AC5000013A64D401201D338CBA8C30191A9A320F +:10AC60000B307CFEB07846C071E06C2910EA1C0005 +:10AC700000780CC1E8370CBA8C30191A9A322B3094 +:10AC80007CFEB07837CF20300CBA8C30191A9A324B +:10AC90004B307CFEB0782ECE90E06C0080BA8C30C9 +:10ACA000191A9A320B307CFEB07824CDF0301C2F6C +:10ACB000FDD802D401201DE06C0080BA8C30191A36 +:10ACC0009A320B307CFEB07815C071E06C2914EA22 +:10ACD0001C0000780CC1D800CD4C001302F1EC56DA +:10ACE00004019700008001019800010000F2CA01F0 +:10ACF0000D02F1EC56030000000100338CBA8C30D9 +:10AD0000191A9A320B307CFEB07806CF20370CBA75 +:10AD10008C30191A9A322B307CFEB077FDCE9030F1 +:10AD20000CBA8C30191A9A324B307CFEB077F4CEC4 +:10AD300000301C2FFDD802D401201DE06C0080BA29 +:10AD40008C30191A9A320B307CFEB077E55F1C2FDD +:10AD5000FDD802D401201DE06C0080BA8C30191A95 +:10AD60009A320B307CFEB077D75F1C2FFDD802EBF8 +:10AD7000CD40FC203D18973005300CBA8C300430A3 +:10AD80001230133006C448EE040005300830190AAA +:10AD90009A2FFA323B307CFEB07818581CC070E015 +:10ADA0006CEEE0EA1C8001FEB07764300830190ACE +:10ADB0009A321B307CFEB0780918955815C080E097 +:10ADC0006CEEE0EA1C80012F8CFEB077535815CD55 +:10ADD000C12FE45C54EC0C1501EE0C000B178AA992 +:10ADE0006A179B140BFACAFFFC180AB40BE06A2915 +:10ADF00004EA1A0000140C982CF80B0064F80013F5 +:10AE000002F1EC5604019800008001019900010054 +:10AE100000B271010D02F1EC5603000000010019AF +:10AE200000C02030025C8B581BC02530032FF65C1D +:10AE3000565836C0F40C9C2D0CBA8C30191A9A3224 +:10AE40000B307CFEB0777ACB210A9C2FDDE3CD80DE +:10AE5000FC3006AEE6AEF65C525812C0405C535869 +:10AE600013C1E1E0672904EA170000EF2C00005845 +:10AE70006CCEC48E9C2FFCAE1C8E9C58ACCE65E074 +:10AE80006CEEE0EA1C80012F0CFEB07705C67FC394 +:10AE90006FEF2C00002FFCAE8CAE16CD7BE0672947 +:10AEA00004EA170000FACAFFFC0E9C2FCC18983059 +:10AEB0006B153910C9201BCFD1AE16AE86CC6B8076 +:10AEC0000088CC8000881880008774D421201D3031 +:10AED00007E066EEC8EA1680011A9C0D8BB88B0D50 +:10AEE0009BB89BFEB075BC18940C9C2FCCFEB07622 +:10AEF000D3320CBA8C300CBA9CE06500B830291AF9 +:10AF00009AF7D5C008303CFEB07718C031300CC27B +:10AF1000A830AB089CFEB078A52FF730181A99001E +:10AF2000478E001302F1EC560401990000800101E4 +:10AF30009A0001000027BA010D02F1EC560300004F +:10AF4000000100321AF7D5C008303CFEB07734CF8C +:10AF5000105C77E04701F5C0752F060C9CFEB076BB +:10AF6000AD300CC1281B8CEDBC0007CE53320CBA9F +:10AF70008C302CBA9C30291A9AF7D5C008303CFE88 +:10AF8000B076EECD70301C2FFDD8228000853C803D +:10AF9000008B40EBCD40E0201D1897E066EBD0EA37 +:10AFA0001680011A9C0D8BB88B0D9BB89B0C9C2DA9 +:10AFB000CCFEB07683E06500B830181A9930FAF705 +:10AFC000D5C008303CFEB076F7C031300CC2F81B5B +:10AFD0008CE04C00BDCFB1C2ECCF90303CC048FEFD +:10AFE0003CFF015C5C580CC085EC0C003B761B16EA +:10AFF00037C032580CCF51320CBA8CE06C0094BA86 +:10B000009C30291A9AF7D5C008303CFEB076A8CDFE +:10B01000E0310CBA8C37FCBA9C30291A9AF7D5C0AB +:10B0200008303CFEB0769CCD20301C2FFDE3CD8057 +:10B03000E00000EBCD4080201DE067F0B8EA17800B +:10B04000011A9C00BD6C001302F1EC5604019A0039 +:10B05000008001019B000100009801010D02F1EC4C +:10B06000560300000001000F8BB88B0F9BB89B327A +:10B070000CBA8C300CBA9C30291A9AE06B00B830AC +:10B080003CFEB0767FC0712FC70E9CFEB076283094 +:10B090000CC028301C2FFDE3CD80808000881880F4 +:10B0A000008774D401E06C008FC87F5F1CD802D485 +:10B0B00001C31F5F1CD802D401CF5F5F1CD802D42C +:10B0C00001CCBF5F1CD8025EFF00005EFF0000EBFA +:10B0D000CD40C0203D18971A9C300A300BB91B99FF +:10B0E0002AE06600B830181A9930FAF7D6C008304E +:10B0F0003CFEB07673C031300CC1A81B8CE04C0014 +:10B10000BDCFB130581A99E06A00A8F7D6C0083010 +:10B110003CFEB07663CF101BACAE8C1B9CAE9C1B70 +:10B120008CAEAC1BCCAEBC1BBCAECC301C2FDDE35C +:10B13000CD80C080008870EBCD40FE18973002E0D3 +:10B14000662930EA1600000D8C581CC051049C5C26 +:10B150005CE3CD80FE0D9C580CC5916C1C580CC155 +:10B1600001E0652924EA15004D8E001302F1EC562A +:10B1700004019B00008001019C000100008C29015A +:10B180000D02F1EC5603000000010000006E0C8B74 +:10B190000C6E1C8B1C6E2C8B2C2FC66C0C2FFC8DFC +:10B1A0000CCE8BE0652924EA1500006E0C6A0BFEBC +:10B1B000B0CCDAFEB0E09CBFDBFEB0CED118936E0F +:10B1C0001C6A1BFEB0CCD0FEB0E092BFDBFEB0CE5E +:10B1D000C718946E2C6A2BFEB0CCC6FEB0E088BFB8 +:10B1E000DBFEB0CEBD1897E0616666EA113FA606A9 +:10B1F0009C029BFEB0CF0AC192089C029BFEB0CF7E +:10B2000005C1420E9C029BFEB0CF00C0F26C1C2F09 +:10B21000FC8D1C6C1C595CCAD5300C8B0C8B1C8BA8 +:10B220002C8D1C301CAC9CCA5B300C8D1CCA2B6C4A +:10B230002C580CC3F16C1C580CCA60E0652924EA38 +:10B240001500006E0C6A0BFEB0CC8EFEB0E050BF55 +:10B25000DBFEB0CE8518936E1C6A1BFEB0CC84FE5C +:10B26000B0E046BFDBFEB0CE7B18946E2C6A2BFE9E +:10B27000B0CC7AFEB0E03CBFDBFEB0CE711897E0F8 +:10B28000656667EA153FA6069C0A9B00B44A001350 +:10B2900002F1EC5604019C00008001019D000100B8 +:10B2A00000E691010D02F1EC56030000000100FEE2 +:10B2B000B0CEB2C0C2089C0A9BFEB0CEADC0720E2A +:10B2C0009C0A9BFEB0CEA8FE93FF67301C8D2C30ED +:10B2D0000C8D1CC61B581CFE91FF5F6C1CE04C00C3 +:10B2E00096C0642FC66C0C2FFC8D0CC55BFE90FFC6 +:10B2F0005E6C3CE04C0032C3E4E0652924EA1500B2 +:10B30000006E0C6A0BFEB0CC41FEB0E003BFDBFE6A +:10B31000B0CE3818936E1C6A1BFEB0CC37FEB0DF7F +:10B32000F9BFDBFEB0CE2E18946E2C6A2BFEB0CC8B +:10B330002DFEB0DFEFBFDBFEB0CE2418976C3C2FA4 +:10B34000FC8D3CE0656667EA153FA6069C0A9BFEFD +:10B35000B0CE62C0C2089C0A9BFEB0CE5DC0720E29 +:10B360009C0A9BFEB0CE58FE93FF17301CAC8C306D +:10B3700012C12B300C8D1C8D2C8D3CAC9CC0CB8015 +:10B38000013A7C800135D880015D60800139D08030 +:10B39000013A64E1BC0000D3035EFCB18CF9DCC06F +:10B3A00001EC1C00015EFCD401CF9FC020D503003E +:10B3B000DF2C001302F1EC5604019D000080010116 +:10B3C0009E00010000735A010D02F1EC56030000CB +:10B3D000000100D80A0000D401201CC060201CC05D +:10B3E00070201CC080D80AE0A01100D80AE0A0118B +:10B3F0001BD80AE0A01136D80AD7038001C01480F8 +:10B4000001C0508001C08C201CC080201CC0C02006 +:10B410001CC0F0201C5E0F5EFDFE7C1814780CF939 +:10B42000DCC0015EFC486C780CF9DCC0015EFC48B5 +:10B430004C780CF9DCC0015EFCD703FFFF1864FFF9 +:10B44000FF1850EBCD40801897F9D7C008CDDFCF5B +:10B45000D0E3CF80800000E06C0580EA1C0000F99A +:10B460002B00005C5BC060202BC070201BC0A05E66 +:10B47000FDE07CC1385EFCE06C5A00EA1C02625EB2 +:10B48000FCE06C0E00EA1C07275EFCD401CE5FA333 +:10B490008CD802EBCD40C018961697C8EFFE7A14F0 +:10B4A00020F406002A7409320BEA1BAA00F60600F3 +:10B4B0002BFE781458910B301BF607094B16499553 +:10B4C00009C85FE3CF80C0EBCD40E03007300630E5 +:10B4D00005580C001BB9001302F1EC5604019E0044 +:10B4E000008001019F00010000CCE1010D02F1ECA0 +:10B4F00056030000000100C040201CA7BC1897584C +:10B500000BC040201BA7BB1696580AC040201AA7A4 +:10B51000BA1495C64F304BEA1BAA00496A950BFE38 +:10B520007B1404970730CBEA1BAA00950B486B9756 +:10B5300006310BEA1BAA00950B484B9705C59FE304 +:10B54000CF80E0FFFF140CFFFF1410EBCD408018FC +:10B5500097C45FFC1BAA00487A950BFE7B140097EA +:10B5600007C47FE06C0580EA1C0000B887E3CF8049 +:10B5700080D703FFFF1458D401302A302B302CCB56 +:10B580006FE06C0580EA1C0000F92B00005C5B207A +:10B590002BC040201BC0B0C138300CFEB0F46CC8CA +:10B5A0008FFEB0E5E9302CCD2FC0A8303CC27F30F3 +:10B5B0003CC5BFC7EFFEB0E5DF303CCC8FC0FFC15C +:10B5C0008FD80A8001887C80016B7CEBCD40C02045 +:10B5D0001DD553300CBA8CE0A01CB4C7D0E0673046 +:10B5E000C4EA170000FEB072A78F1CE0A01BBCFECF +:10B5F000B0A13C6E1CE06600FE94001302F1EC5614 +:10B6000004019F0000800101A000010000538A0195 +:10B610000D02F1EC5603000000010030CCEA1600E8 +:10B6200000780B580BC0400D8BA1ABAC8B301BFED0 +:10B63000B073986E1CFEB073056E1C783B580BC03F +:10B64000400D8BA1BBAC8B785B580BC0400D8BA31E +:10B65000ABAC8B786B580BC0400D8BA3BBAC8B0D88 +:10B660008B58FBC051355B2B7CB88BC0382B7CB81A +:10B670008B300A301B301CFEB076AEFEB0762AE06E +:10B68000A01A7A332B6E1CFEB0755E6E1CFEB07471 +:10B6900093FEB075C5FEB075DBFE7C1580780C6E30 +:10B6A0001CF93B0049E04B0055C211301BFEB0763F +:10B6B00045301CBA8C300B6E1CFEB0761FE0A01C0F +:10B6C00077324BF96B008031CBF96B0081300BF98D +:10B6D0005B006C1B8B580BC120301BF96B007CF995 +:10B6E0006B007D303BF96B007EC098300CFEB0756E +:10B6F000F3307CE0A017D8CFDB300C2FFDE3CD80FA +:10B70000C0D7038001D9488000853C8001D76C8078 +:10B7100000E270800087448000862400CD7800130A +:10B7200002F1EC560401A00000800101A10001001B +:10B7300000EF3B010D02F1EC560300000001008018 +:10B74000008DB880008CB48001D55880008B288093 +:10B7500000899880008C0080008C3080008D1C80D7 +:10B76000008CDC8001D990EBCD40C0E06730C4EAAA +:10B77000170000C50F8F0CC078301AFEB0796A3000 +:10B780007CE0A017A36E1B6E0CF91A006C581ACF40 +:10B7900054300AFEB0795E6E1CFEB077FDFEB041FB +:10B7A00051C0D13006C0282FF65C565836C0746E92 +:10B7B0001CFEB077F1FEB04145CF70300B6E1CFE21 +:10B7C000B075C26E0C294C988C580CCDD1300CFE43 +:10B7D000B07594307CE0A01779CD6B800094108018 +:10B7E0000091548000240080008D0480008CB8807B +:10B7F00001D088EBCD40E0216DE0672B08EA17000F +:10B8000000E0A01BE78F0C300CFB5C0054FB6C00CD +:10B810002D30ABFB6B002EFB6C0030FB6C0031FB62 +:10B820003600690C9B20BBC060E088004A203BC109 +:10B8300033C468318CFB6C002D300CFB6C002C0089 +:10B84000F02D001302F1EC560401A100008001016B +:10B85000A2000100007AF0010D02F1EC5603000095 +:10B86000000100FACCFFD41A9B32C9190A16AA208B +:10B8700049CFD1FEB0E976C358E0652B0CEA15003C +:10B88000000BBC580CC2410BCC580CC211E06C0030 +:10B89000AABACC33CCBADC301CBAEC300CFB6C004E +:10B8A0002C303CFB6C002DFACCFFD01A9B32491790 +:10B8B0000A18AA2049CFD1FACCFFD41A9B32C91951 +:10B8C0000A16AA2049CFD1FEB0E94CC028301C0C82 +:10B8D0009B58CBC031301AAABA58DBC031301BAAF2 +:10B8E000CB5C6C581CC0C16E0AF519005E301BFEA3 +:10B8F00036FF0BF606094B16492A2AB4092EADE38A +:10B90000CD80E0EBCD40E0216DE0672B08EA170029 +:10B9100000E0A01B718F0C3006FB560054FB660044 +:10B920002D30ACFB6C002EFB660030FB6600313026 +:10B930000CFB3500690A9B20BBC060201BC1A02006 +:10B940001BC200C268318CFB6C002D301CFB6C00EC +:10B950002CFACCFFD41A9B32C9190A16AA2049CF57 +:10B96000D1FEB0008FAB001302F1EC560401A2002F +:10B9700000800101A300010000C54B010D02F1ECA4 +:10B9800056030000000100E8FFE06B2B0CEA1B00EF +:10B9900000B686C108E06B2B0CEA1B0000B6B6307F +:10B9A0001CB696C088E06B2B0CEA1B0000B6C630B4 +:10B9B0001CB6A6E06B2B0CEA1B000017BA580AC194 +:10B9C0004117CB580BC111303CFB6C002D301CFBD8 +:10B9D0006C002CFACCFFD41A9B32C9190A16AA2083 +:10B9E00049CFD1FEB0E8D06E0BF71A005E3019FED9 +:10B9F00035FF0BF2050949128A2A2BB60A5C6C2E18 +:10BA0000ADE3CD80E0D7038001D990800174FCD4F0 +:10BA100001201D1A9CE06BF28FEA1B800130391760 +:10BA20003A18CA2019CFD130391A9A320B307CFE1D +:10BA3000B07238C031300CC068E06C00C0EA1C0045 +:10BA400000780C2FFDD802D401201D1A9C300BB8B1 +:10BA50008BB89BB8AB30391A9A320B307CFEB0727F +:10BA600021C031300CC068E06C00C4EA1C000078D2 +:10BA70000C2FFDD8020000D401201D1A9CE06BF2AF +:10BA800095EA1B8001303900F30F001302F1EC56E8 +:10BA90000401A30000800101A400010000D16301A2 +:10BAA0000D02F1EC56030000000100173A18CA20FD +:10BAB00019CFD130391A9A320B307CFEB07204C0E3 +:10BAC00031300CC068E06C00C8EA1C0000780C2F14 +:10BAD000FDD802D401201D1A9CE06BF29BEA1B806A +:10BAE000013039173A18CA2019CFD130391A9A3291 +:10BAF0000B307CFEB071E8C031300CC068E06C00E7 +:10BB0000CCEA1C0000780C2FFDD80280008818EBCE +:10BB1000CD40FE202D18923011301330143007C163 +:10BB2000C80D8C0D9BAC8BAC9C0D8BA96B0D9C1622 +:10BB30000C1A9B0A0BB60CE06B2918EA1B000016C6 +:10BB4000058A2BF60C1900C02030035C8C581CC0F1 +:10BB50002530042FF75C575847C1A4EE051501E4C2 +:10BB600005000630280C990E9A2F8A5C5A320B3049 +:10BB70007CFEB071D51891CD51E06CF054EA1C8078 +:10BB800001FEB0714F300C2FEDE3CD80FE5C5358B9 +:10BB900013C0405C545814C211E0672918EA17001A +:10BBA00000EF2C0000586CC035029C00EEA1001381 +:10BBB00002F1EC560401A40000800101A50001007F +:10BBC00000BBDB010D02F1EC56030000000100CECA +:10BBD000EB8E9C2FFCAE1C8E9C58ACCF95E06CF08D +:10BBE00054EA1C80012F8CFEB0712EC6AFC51FEF2A +:10BBF0002C00002FFCAE8C300CAE1CCE9BE06729D5 +:10BC000018EA1700001A9A0E9C2FCC1898308B1542 +:10BC10003910C9201BCFD1300CAE1CAE8CCD8B801F +:10BC200000887080008774D431202D1494169518E4 +:10BC300093E068CD57EA185E9EE0692614EA193F42 +:10BC4000D1FEB0DC15C223E0664CAAEA16E858E043 +:10BC500067B67AEA173FFB089A0A9B0C980E99FE82 +:10BC6000B0DA4ABB2B089A0A9B0C980E99FEB0DBFF +:10BC70005830083009EA19BFF0FEB0DA3DBB09FEC2 +:10BC8000B0DB8C14941695A1A330083009EA19BED4 +:10BC900040089A0A9BFEB0DBEDC0A330183009EAD9 +:10BCA000193E40089A0A9BFEB0DBE2C7B3089A0A25 +:10BCB0009B08980A99FEB0DB3414961697E0683911 +:10BCC000DEEA188F02E069C0C7EA193F74FEB000CF +:10BCD0004FBE001302F1EC560401A50000800101E3 +:10BCE000A6000100002E10010D02F1EC5603000029 +:10BCF000000100DB28E068AB8AEA188312E0690CD7 +:10BD000000EA193FC8FEB0DA090C980E99FEB0DBC4 +:10BD10001AE068D724EA1808E5E069D8B6EA193FBE +:10BD2000F0FEB0D9FB0C980E99FEB0DB0CE0683445 +:10BD30000FEA180E58E0699558EA193FFDFEB0D990 +:10BD4000ED0C980E99FEB0DAFE30083009EA193F82 +:10BD5000F0FEB0D9E3BB1BE0685D84EA181357E03E +:10BD600069574BEA193FB00C9A0E9BFEB0DAEBE034 +:10BD70006893B2EA18194CE0695EEDEA193FE4FEF7 +:10BD8000B0D9CC0C980E99FEB0DADDE068DEBEEAE0 +:10BD900018B902E0694002EA193FF8FEB0D9BEBB0B +:10BDA0002B089A0A9B0C980E99FEB0DACCBB09FEC0 +:10BDB000B0DAC908980A99FEB0D9B0BB08FEB0DA6B +:10BDC000FF14941695EDB30001C032EE158000F912 +:10BDD000D3C003C0D0E06BEB90EA1B8001F60C02ED +:10BDE0003A08980A99FEB0D99914941695A583E853 +:10BDF0000A172000D965001302F1EC560401A600D1 +:10BE000000800101A70001000091AB010D02F1ECDF +:10BE100056030000000100EA0B1720C052EE158007 +:10BE200000089A0A9B2FEDD832D70380015DA080CD +:10BE3000015D9C80015C4E80015CC880015A24D465 +:10BE400001CC9CE0A01204FEB04C52E0A0194EE0E0 +:10BE5000694870EA190000129CFE3CFE7C300A30F2 +:10BE60000B189E3088BD2A2018CFE19D0A129C2F06 +:10BE70004CB91BB84AB31BB24A129CFE3CFE38B9FF +:10BE80001B992A129C2E8C189E32D8BD2A2018CFBE +:10BE9000E19D0A31EC2E89B20CD80A80003FD48093 +:10BEA00001D9D0D401E0A011D3D80A8001CB34D479 +:10BEB00001E0A01913E0A018C7D80A8001D9C080FA +:10BEC00001D92CD401E06C4870EA1C0000E0A00706 +:10BED00087D80A8001B6C4E06C4870EA1C000018DC +:10BEE0009B2F4B189AB509B728150816A8300BB820 +:10BEF0001B5EFDEBCD40801897FEB0D66F8E8C2F69 +:10BF0000FCAE0C8E8C8E1B163CC0358E1CAE0CE32A +:10BF1000CF9080800154C0005540001302F1EC56D0 +:10BF20000401A70000800101A800010000064001F3 +:10BF30000D02F1EC56030000000100EBCD40C0E023 +:10BF40006C4A48EA1C00007807E0664870EA160070 +:10BF5000000C9BFE3BFE380C9C2F4CCDEF31EA0CC5 +:10BF60009BFE3BFE380C9C2E8CFEB0D727301B0C62 +:10BF70009CFE3CFE38FEB0D139EDB70001C08230E6 +:10BF80000B0C9CFE3CFE38FEB0CE9EC078301B0CE5 +:10BF90009CFE3CFE38FEB0CE97300BFE36FE7C0C8D +:10BFA0009CC1BCE3CF80C08001567C80014AAC803C +:10BFB000014588E06C4870EA1C0000FE3CFE7C5E97 +:10BFC000FC0000E06B4870EA1B0000F6FA018418E0 +:10BFD0008AF74A01845EFD780A144B990B5EFDE0F6 +:10BFE0006C4870EA1C00002E8C5EFCE06B4A44EA50 +:10BFF0001B0000970C5EFDE06C4A44EA1C00003018 +:10C000000B780A950B780A951B780A952BE06B0440 +:10C0100000780A953B780A954B780A955B301B7837 +:10C020000C2E8CB88B5EFDEBCD40C018973006E02F +:10C03000A00A7C581CC081301CE06B007CBB001344 +:10C0400002F1EC560401A80000800101A9000100E2 +:10C050000046FB010D02F1EC560300000001002B2D +:10C060000CEA1B0000B68C3016FEB08D0D581CC1BA +:10C07000315C67C111E06C2B0CEA1C000019BB5845 +:10C080001BC041301BB89B301619CB581BC0413028 +:10C090001BB8AB30160C9C5C6CE3CD80C0D7038022 +:10C0A00001BDECD401300CE06B2B0CEA1B0000B698 +:10C0B0008CE0A00A51D80A8001BDF4D401300CE014 +:10C0C0006B2B0CEA1B0000B69CFEB08CF1D80AD496 +:10C0D00001300CE06B2B0CEA1B0000B6ACFEB08C00 +:10C0E000E7FEB08CDDD80A8000C34C8000C33CEB77 +:10C0F000CD40F824ED189616973005E0642B0CEA35 +:10C10000140000E92C0000581CC0A1304CBA8C303F +:10C11000BCBAACE0A00A2ABACC3015CC4FE92C004E +:10C1200001581CC0F11A9CEA0310681803304CA691 +:10C130008C30CCA6ACFEB08CA7A6CC2FF55C55CB32 +:10C14000EF2FE4E92C0000581CC0F11A9CEA0410FF +:10C15000681804304CA88C30DCA8ACFEB08C9A0077 +:10C16000CEA3001302F1EC560401A90000800101E6 +:10C17000AA00010000D330010D02F1EC56030000CB +:10C18000000100891C2FF55C55CB5F0F8C0A0C5801 +:10C190007CC1D50F8C0A0C20AC5C6CF3DCB008C100 +:10C1A00008F20810680C08F20C010BF60E10680C6F +:10C1B0000E3684BD0BB12A2084CFD12FF95C690FD4 +:10C1C0008B1639CEF50F8B162CAE8C3009C1280F8B +:10C1D0008CF80810680C081A9EF20C1068180E36BD +:10C1E0008CBD0BB12A208CCFD10F8C2FFCAE8C2FA5 +:10C1F000F95C690A39CED52B2DE3CF80F8D70380BF +:10C2000001BE088000C3248000C330EBCD4080E035 +:10C2100067EE24EA1780010E9CFEB06E6F30FA3094 +:10C220001B300CFEB0E46E582CC0812F070E9CFE14 +:10C23000B06E64302CE3CD8080E3CF90800000EBC3 +:10C24000CD4080E067EE08EA1780010E9CFEB06EDC +:10C250005530FA301B301CFEB0E454583CC0812FDE +:10C26000070E9CFEB06E4A303CE3CD8080E3CF9059 +:10C2700080D7038001737CD401201D300CBA8C1A46 +:10C280009CFEB000B089001302F1EC560401AA0034 +:10C2900000800101AB000100006C8B010D02F1EC8C +:10C2A0005603000000010068F3301CC5ACFB2C00F5 +:10C2B00000C49C2FFDDA0A80007CE4D401E06CF01D +:10C2C00044EA1C8001FEB06E2BE0A0173DE06B2F0E +:10C2D000D4EA1B0000970CE06BAA88EA1B8001F9E6 +:10C2E0004B01E8E06BAABCEA1B8001F94B01ECE0D2 +:10C2F0006BAAF4EA1B8001F94B01F0E06BAB78EA22 +:10C300001B8001F94B01F4E06BABC4EA1B8001F91F +:10C310004B01F8DA0AD703800087748001D99CD4D6 +:10C3200001E06C2FD4EA1C0000780CF93C01E158C4 +:10C330000CC021D80AC0DCD8020000D401300CC1E6 +:10C340000CDA0AE06B2FD9EA1B0000B68C5EFDE028 +:10C350006B2FD8EA1B0000F72C00005EFC0000E009 +:10C360006B2FD8EA1B0000B68C5EFDD401189A3002 +:10C370001C1789F2091068F4090B0C1789F20910CF +:10C38000681409B29C30FC1789F20910681409B2CC +:10C39000ACE06C2FD9EA1C0000F9290000178CF8DA +:10C3A0000C1068180AB4C90081FB001302F1EC56A6 +:10C3B0000401AB0000800101AC0001000078A30182 +:10C3C0000D02F1EC56030000000100178C2FFCB6A3 +:10C3D0008CCC7FD80A0000EBCD40C01697E06B43B1 +:10C3E000DCEA1B0000F60C0326AC8CE06BE6D8EA16 +:10C3F0001B80018DCB58BCF9BC02091E0C19EC182E +:10C400000F0E223044566AA27C8EC6B400303CED3A +:10C410006C001130ACED6C000CFE3BFF3C8DCBC5CD +:10C4200038303CED6C001130ACED6C000CC4C83001 +:10C430003CED6C0011305CED6C000C300CED6C00D0 +:10C440000FC428303CED6C0011305CED6C000C2CFE +:10C450008B8DCBC398309CED6C001130ACED6C0033 +:10C460000CFE3BFF588DCBC2F8301CED6C00113038 +:10C470005CED6C000C290B8DCBC268304CED6C0070 +:10C4800011305CED6C000C2ACB8DCBC1D8301CED8B +:10C490006C0011305CED6C000CFE3BFF748DCBC169 +:10C4A00038303CED6C0011305CED6C000C2E4B8D87 +:10C4B000CBC0A8303CED6C001130ACED6C000CFE34 +:10C4C0003BFF208DCBED3C000CED3B00DA49001327 +:10C4D00002F1EC560401AC0000800101AD00010046 +:10C4E00000121B010D02F1EC5603000000010000D8 +:10C4F00011B73CA17CE0A00AA58D2CED3C000C20DE +:10C500001CACDCED3C000C201CACCC300CED6C0009 +:10C510000E301BED6B0010ED6C000DAC9CED5C0063 +:10C52000243FFBED6B00263FFAED5A0028300AC18C +:10C5300048EC09001814082EA8B08C2FF95C695833 +:10C5400069CF85EC0A0009F36C0022F36B00122E10 +:10C55000C9B28B2FFA5C6A582AC0343009CF0B8DD0 +:10C56000B7E3CF80C0D7038001C250EBCD40E021BC +:10C570008DFACCFFF4FEB0E375FACCFFC8E0A0144E +:10C5800097E0673098EA170000FB1C0046AECCFA33 +:10C59000CCFFF4780A500A781A501A782A502A0EDA +:10C5A0009CFEB0CA571896E06530A9EA1500000B4A +:10C5B0008C1836C1005826C071301CC62C301C2F78 +:10C5C00087AE8CC0885816C061301CC5AC302C2F8B +:10C5D00087AE8CAA862E8DE3CF90E08001747080A8 +:10C5E00001D6BC80014260D401E0A015D1E06B000F +:10C5F0009099001302F1EC560401AD000080010196 +:10C60000AE0001000087D0010D02F1EC56030000DE +:10C610000001003098EA1B0000973C300A2F8BB6CF +:10C620008AE06BB444EA1B8001F94B01A8E06BB5CA +:10C6300020EA1B8001F94B01ACE06BAD7CEA1B806A +:10C6400001F94B01B0E06BAE50EA1B8001F94B01E0 +:10C65000B4E06BAE9CEA1B8001F94B01B8DA0A80AA +:10C6600001D99CD401E06C3098EA1C0000783CF9B8 +:10C670003C01A1580CC021D80AC0DCD8020000D46B +:10C6800001300CE06B3098EA1B00002F8BB68CC099 +:10C69000ACDA0AE06B30A8EA1B0000F72C00005E61 +:10C6A000FC0000E06B30A8EA1B0000B68C5EFDD4F5 +:10C6B00001189A301C1789F2091068F4090B0C173D +:10C6C00089F20910681409B29C30DC1789F209104C +:10C6D000681409B2ACE06C3098EA1C00002F8CF9A9 +:10C6E000290000178CF80C1068180AB4C9178C2F91 +:10C6F000FCB68CCC6FD80AEBCD40C020EDFACCFF55 +:10C70000F4FEB0E2C1FACCFFE8780A500A781A5079 +:10C710001A782A00DEC5001302F1EC560401AE00BF +:10C7200000800101AF00010000386B010D02F1EC47 +:10C7300056030000000100502AFEB0F3131897E0E2 +:10C74000663074EA1600000D8C0E3CC1705817C09C +:10C75000A1301CC6EC301CE06B3068EA1B0000B650 +:10C760008CC0B85827C091301CC63C302CE06B30D0 +:10C7700068EA1B0000B68CAC872F2DE3CF90C080F9 +:10C7800001747080019528EBCD4080E0673068EA45 +:10C79000170000E0A015208F2CE0A015178F1C308B +:10C7A0000CAE8C6E2CE06BD2ECEA1B8001F94B02D4 +:10C7B00008E06BD30CEA1B8001F94B020CE06BAE76 +:10C7C000E4EA1B8001F94B0210E06BAFB8EA1B8072 +:10C7D00001F94B0214E06BB004EA1B8001F94B0233 +:10C7E00018E3CF9080D7038001D99C8001D990D4E1 +:10C7F00001E06C3068EA1C0000782CF93C0201581A +:10C800000CC021D80AC0DCD8020000D401300CE0F2 +:10C810006B3068EA1B0000B68CC0BCDA0A0000E08E +:10C820006B3075EA1B0000F72C00005EFC0000E096 +:10C830006B3075EA1B00000003EA001302F1EC56AE +:10C840000401AF0000800101B000010000280301D5 +:10C850000D02F1EC56030000000100B68C5EFDD421 +:10C8600001189A301C1789F2091068F4090B0C178B +:10C8700089F20910681409B29C310C1789F2091069 +:10C88000681409B2ACE06C3068EA1C0000F92900B9 +:10C8900000178CF80C1068180AB4C9178C2FFCB656 +:10C8A0008CCC7FD80A0000EBCD40EC18963005E028 +:10C8B000674C7CEA1700000F8CF80B1518C451FC6C +:10C8C000133FF86C0CFEB0D67BBFDB30080699FE38 +:10C8D000B0D696C1A26C1CFEB0D672BFDB30080683 +:10C8E00099FEB0D68DC1126C2CFEB0D669BFDB307C +:10C8F00018FC194021FEB0D681C0736E1C2FFC8F2E +:10C900001C300C8F2CC0686E2C2FFC8F2C300C8FA1 +:10C910001C6E1C585CC1056C2C301BFEB0C4D2C010 +:10C92000533015301CAE8CC0483025302CAE8C30C6 +:10C930000C8F1CC5F86E2C585CC5C53035303CAE2C +:10C940008C300C8F2CC568583CC291FC133FF86C9E +:10C950000CFEB0D635BFDB30080699008EAA001356 +:10C9600002F1EC560401B00000800101B1000100A9 +:10C97000003CBE010D02F1EC56030000000100FE78 +:10C98000B0D650C1826C1CFEB0D62CBFDB3008067E +:10C9900099FEB0D647C0F26C2CFEB0D623BFDB3078 +:10C9A00018FC194021FEB0D63BC0536E1C2FFC8FE3 +:10C9B0001CC038300C8F1C6E1C585CC2D5CBFB5889 +:10C9C0001CC030582CC281FC133FF86C0CFEB0D652 +:10C9D00009BFDB30180699FEB0D622C1426C1CFE9E +:10C9E000B0D600BFDB30180699FEB0D619C0B26CC5 +:10C9F0002CFEB0D5F7BFDB3008FC194021FEB0D6C5 +:10CA000011C0526E2C2FFC8F2CC038300C8F2C6E26 +:10CA10002C582CCA640A9C5C5CE3CD80ECD7038064 +:10CA2000013A6480015D9C80015D6080015DA0EB46 +:10CA3000CD4080201D300CBA8CE0672C34EA170002 +:10CA4000001A9B6E1CFEB0B92DC090301CC67CFB3A +:10CA50002B0000AE8BEF2C0000AE9C2FFDE3CF909F +:10CA600080D70380012420EBCD4080E0672C34EA9E +:10CA7000170000E0A013D48F2CE0A013CB8F1C0074 +:10CA800003FB001302F1EC560401B1000080010128 +:10CA9000B200010000A975010D02F1EC560300007F +:10CAA000000100300CAE8C6E2CE06BD3DCEA1B80F6 +:10CAB00001F94B00E8E06BD3FCEA1B8001F94B0065 +:10CAC000ECE06BB1B0EA1B8001F94B00F0E06BB217 +:10CAD00050EA1B8001F94B00F4E06BB2A8EA1B801E +:10CAE00001F94B00F8E3CF9080D7038001D99C80F7 +:10CAF00001D990D401300BE06A2C34EA1A0000749A +:10CB00002AF53A00E1580AC021D80A5C6CC031C14C +:10CB10000C189B169C5C6CD8020000D401300CE011 +:10CB20006B2C34EA1B0000B68CC0BCDA0A0000E0B3 +:10CB30006B2C40EA1B0000F72C00005EFC0000E0BC +:10CB40006B2C40EA1B0000B68C5EFDD401189A30B5 +:10CB50001C1789F2091068F4090B0C1789F20910E7 +:10CB6000681409B29C307C1789F20910681409B264 +:10CB7000ACE06C2C34EA1C0000F9290000178CF89A +:10CB80000C1068180AB4C9178C2FFCB68CCC7FE047 +:10CB90006CF1A8EA1C8001FEB06A40D80AD7038075 +:10CBA00000877400BE2F001302F1EC560401B2009E +:10CBB00000800101B30001000016CE010D02F1EC6E +:10CBC00056030000000100D421E0670138EA170095 +:10CBD00000EF3C03B2581CC021D82AE0654B84EA20 +:10CBE0001500000A9C2B0CFEB0FAC80A9C2B0CE026 +:10CBF000A0131C3006EB66008CEB66008DFEB0FACD +:10CC0000C3EB4700E4EB4600EC0A9C288C300A306A +:10CC10000BB91BF8EB0008994A0A9930ACB32A20EB +:10CC20001CCFE10A9CFE3CFF6C189830A9B12A2069 +:10CC300019CFE1EB4600F0300CC088F80B1035A39B +:10CC40006B0E0BB6C6B6E62FFC583CCF853014EB06 +:10CC5000440090301CC19CEF64038D301CFEB0F981 +:10CC6000C9EF4603B4EF6603B0FEB0F9F5EF640315 +:10CC7000B2DA2A8001A8B08001D9608001A8BC8006 +:10CC800001A7288001A78CEBCD4080189A3008C1FD +:10CC9000A8F808002CF8FC0358F80E1035A36E16FF +:10CCA0000E301CBCCCF2F700F4F00C1035A36C185D +:10CCB0000B17ECFCCBFFE0F60C0F8C1847F347008A +:10CCC000F42FF8E06B0138002DC8001302F1EC5688 +:10CCD0000401B30000800101B40001000002E6017C +:10CCE0000D02F1EC56030000000100EA1B0000F405 +:10CCF0000C1505160CE0694B84EA190000F93E0397 +:10CD0000541C38CD95F93A0354F76A03B1F93C0342 +:10CD10006CF36C0068581AC044169CE3CD8080F315 +:10CD20006A000DF34B00E4169CE3CD80800000EB1D +:10CD3000CD4080218D300C50CC50BC30DA300BFE11 +:10CD4000B0DF94582CC031302CC5983017E06A30D1 +:10CD500098EA1A00009507FB1C006E50CCFB3C00C3 +:10CD60006C50BC40BC581CC051E06C010050BCC1B0 +:10CD7000B840BC582CC051E06C020050BCC14840C7 +:10CD8000BC583CC051E06C040050BCC0D840BC58FA +:10CD90004CC051E06C080050BCC06840BC585CC03E +:10CDA00031310C50BCFACBFFD4FACCFFD0FEB0C569 +:10CDB000CFE06C00B4BACC346CBADCBAE7300CFB10 +:10CDC0006C0034303CFB6C0035FACCFFC81A9B3247 +:10CDD00049170A18AA2049CFD130ACFB6C0036FBAA +:10CDE00057005CFACCFFCC1A9B32C9009411001397 +:10CDF00002F1EC560401B40000800101B50001000D +:10CE000000685E010D02F1EC5603000000010019FC +:10CE10000A16AA2049CFD1FEB0DFFACA80301C2EF4 +:10CE20008DE3CD8080D7038001737C80014060D486 +:10CE300001216DE06C00B4BACC346CBADC301CBAA1 +:10CE4000EC301BFB6B002C303BFB6B002DFACBFF57 +:10CE5000D01A9A3248150916A92048CFD130ABFB19 +:10CE60006B002EFB5C0054FACCFFD41A9B32C9191C +:10CE70000A16AA2049CFD1FEB0DFCAC031303CC06B +:10CE800048FEB0C66D301C2EADD802800174FC8007 +:10CE900001424CE1BC0000D3035EFCB18CF9DCC064 +:10CEA00001EC1C00015EFCD401CF9FC020D503D84B +:10CEB0000A0000EBCD40C03009C09878AE301711A1 +:10CEC00088EE0809470E8E99AE2FF91439C522F263 +:10CED0000810061608119E581EC0817857301E1182 +:10CEE00086FC06094E0E4EC078785E30171186EE2D +:10CEF0000609470E8E995E11AE581EC081786730C4 +:10CF00001E1186FC06094E0E4EC078786E30170052 +:10CF100068E8001302F1EC560401B500008001013D +:10CF2000B600010000FD95010D02F1EC5603000072 +:10CF30000001001186EE0609470E8E996E11BE584B +:10CF40001EC0817877301E1186FC06094E0E4EC039 +:10CF500078787E30171186EE0609470E8E997E117D +:10CF6000CE581EC0817887301E1186FC06094E0EF1 +:10CF70004EC078788E30171186EE0609470E8E99CE +:10CF80008E11DE581ECAD178A7301E1188FC080900 +:10CF90004E0E4ECACBE3CF80C00000301AF40B090E +:10CFA0004A99CA5EFD0000301AF40B094A99DA5E0C +:10CFB000FD0000301AF40B094A990A5EFD0000EBEF +:10CFC000CD40C018961697C78F301BF607094B8DBA +:10CFD0001B6C2BC7CFE3CF80C00000EBCD40C01847 +:10CFE000961697C6AF301BF607094B8D4B6C3BC6A8 +:10CFF000EFE3CF80C00000EBCD40F81897E0664B20 +:10D0000084EA1600006D7C580CC091E06C0400EDC1 +:10D010004C005CED4C0060ED4C00646D5CFEB0C2F9 +:10D020000518956D8CFEB0C2016DCBFEB0C034E02A +:10D030006BF5C300E9D8001302F1EC560401B60009 +:10D0400000800101B700010000422E010D02F1EC49 +:10D0500056030000000100EA1B411CFEB0C0A20AFA +:10D060009BFEB0BFD5FEB0C1DB18946D6CFEB0C1A5 +:10D07000EF18956D9CFEB0C1EB6DDBFEB0C01EE0FD +:10D080006BF5C3EA1B411CFEB0C08C0A9BFEB0BF0F +:10D09000BFFEB0C1C518956D4CFEB0C1D918936DD7 +:10D0A0007CFEB0C1D56DBBFEB0C008E06BF5C3EA35 +:10D0B0001B411CFEB0C076069BFEB0BFA9FEB0C1EE +:10D0C000AF8E1BEE0B001BB62C8E1CEE0C001CB89A +:10D0D000348E1CEE0C001CB8458E1C2FFCAE1C8E32 +:10D0E0001C59ECC03531DCAE1CE3CF90F8D703807F +:10D0F000013AF48001376080013848800136B480FD +:10D10000013AC4EBCD40E0300BC078F60C1035A3EB +:10D110006C1807AEC62FFBE0670138EA1700003035 +:10D1200006583BCF45E0654B84EA150000EB46000E +:10D1300090EF6603B1FEB0F7DDEB4600F4EF660357 +:10D14000B2E3CF80E0D7038001A798D401E06C3030 +:10D1500088EA1C0000781C00AC2B001302F1EC568E +:10D160000401B70000800101B800010000D5C5012D +:10D170000D02F1EC56030000000100FEB0FC26F8A1 +:10D180000B1518C0505C6CC60C301CC58CDA0A80BC +:10D1900001B04CEBCD4080E0673088EA170000E03A +:10D1A000A010BC8F2CE0A010B38F1C300CAE8C6E86 +:10D1B0002CE06BD328EA1B8001F94B02E8E06BD32B +:10D1C00048EA1B8001F94B02ECE06BB7F4EA1B80E4 +:10D1D00001F94B02F0E06BB880EA1B8001F94B02C9 +:10D1E000F4E06BB8D8EA1B8001F94B02F8E3CF906A +:10D1F00080D7038001D99C8001D990D401E06C30A4 +:10D2000088EA1C0000782CF93C02E1580CC021D8B7 +:10D210000AC0DCD8020000D401300CE06B3088EA90 +:10D220001B0000B68CC0BCDA0A0000E06B3094EA48 +:10D230001B0000F72C00005EFC0000E06B3094EA5D +:10D240001B0000B68C5EFDE06B3088EA1B0000B668 +:10D250008C5EFDD401189A301C1789F2091068F40D +:10D26000090B0C1789F20910681409B29C317C175C +:10D2700089F20910681409B2ACE06C004ADA0013B4 +:10D2800002F1EC560401B80000800101B900010070 +:10D2900000957E010D02F1EC560300000001003004 +:10D2A00088EA1C0000F9290000178CF80C10681897 +:10D2B0000AB4C9178C2FFCB68CCC1FD80A0000D436 +:10D2C0002118961697E06507FF780CEBEC034C0AE3 +:10D2D0003CC0B16C0CF9DCC014C0416C1C580CC0D3 +:10D2E00030302CD822DA2A580CC0710C9CE0A00CEB +:10D2F000AF581CC025D82A5817C10518150A37C0C1 +:10D30000D36C0CA17C300AC042F06B0000C04830E6 +:10D310000BEA1B7FF0AD1BDA2AF80B11000E3BC0A5 +:10D32000A46C0BE41B800F1807F7E711478D073F2C +:10D33000FCD822300BEA1B80006C0A166A6C09F3D9 +:10D34000D9C014B5A98D09201C1807300CEEC9FFEF +:10D35000CBE0490035C0438D0A8D1CD82A30095ACC +:10D3600017C0642E076C196C088D188D0C5C37C1C2 +:10D370005058095F19EE0811206C1CF808094C1868 +:10D38000496C1CF8070A4E6C0CF808094C184E8DB5 +:10D390001E6C0CF8070A4C8D0C6C0C144C8D0C0098 +:10D3A000C947001302F1EC560401B90000800101E5 +:10D3B000BA0001000000B5010D02F1EC56030000B7 +:10D3C000000100301CEA1C80001839C0621639C008 +:10D3D000C16C1CA19CC0926C1C2FFC8D1CC0516C9C +:10D3E0000C2FFC8D0CC0786C0C143CC0416C1C588C +:10D3F0000CC9403FFCD8228001D2ACD431202D147E +:10D40000961697E0A00D725C7C187CC030202CC072 +:10D41000410C9A0E9BC678300830090C9A0E9BFE80 +:10D42000B0D1A2C052EE1780003083C0283003E094 +:10D4300061A558EA118001E062BC38EA128001302F +:10D4400005EA153FF0E0683BCEEA18667FE069A088 +:10D450009EEA193FE60C9A0E9BFEB0D185C1B20C34 +:10D460009A0E9B30080A99FEB0CFC0BB1B300A0A47 +:10D470009B0C980E99FEB0CF85BB08FEB0D0CB5D5B +:10D4800012149816990C9A0E9BFEB0D101069C5D61 +:10D4900011C29830180A990C9A0E9BFEB0D164C143 +:10D4A000720C9A0E9B30080A99FEB0CF9FBB1B30BE +:10D4B0000A0A9B0C980E99FEB0CF64BB08FEB0D050 +:10D4C000AA5D12002B39001302F1EC560401BA00D8 +:10D4D00000800101BB00010000BF0E010D02F1EC54 +:10D4E00056030000000100EC1300020C980E99CDC9 +:10D4F000FB321CE06B4EA0EA1B0000970C3FFAE0E9 +:10D500006BFFFFEA1B7FFF2FEDD8328001D524800F +:10D51000015CC880015DA080015A24800159BC8053 +:10D52000015C4EB18CF9DCC001EC1C00015EFCEB2F +:10D53000CD40801897E1BC0000CF5FD303FC1BAA4D +:10D5400000496A950BFE7B14009707C020D503E3C2 +:10D55000CF8080EBCD40C01897FE7C14047806483D +:10D56000DC780CEDBC0005CFC2E1BC0000CDBFD320 +:10D5700003304BF607002BEA1BAA00487A950BA74D +:10D58000D6FE7B1404F60709265C5CC020D503E3B5 +:10D59000CF80C0FFFF14D4FFFF1458D4211897EE9A +:10D5A000041605FE761420EC0400266C05E1BC0090 +:10D5B00000CB9F189BD303320CF804002CEA1CAA62 +:10D5C00000FE7A1458950C301CEFD7C005F80709F7 +:10D5D0004C18458D055C5BC020D503D82A0000D4CB +:10D5E000211897EE041605005A52001302F1EC566A +:10D5F0000401BB0000800101BC00010000AB26015A +:10D600000D02F1EC56030000000100FE761420EC40 +:10D610000400266C05E1BC0000C97FD303320BF681 +:10D6200004002BEA1BAA00FE7A1458950B301BEF5E +:10D63000D7C005F607094B16858D055C5CC020D563 +:10D6400003D82A167BC696F9DBC28BC440E04C0790 +:10D65000FFC400E41B000FBB213019B5693008126C +:10D660004BFE3CFC03A19CC032A17A5CFBA36BF790 +:10D67000EA13EBA36AF3E91030001BF3E910113051 +:10D68000001ADCA1995D08F1E9100CC160167BC09D +:10D6900086001AF601014B1000E2090041C0780033 +:10D6A0000AF601004B1010E2090141A17A5CFB105F +:10D6B0001AF609014BCE7B167B5F7CE00C000A1B3F +:10D6C0000C5C01E20B1601BB015D0AB56CF60C00A7 +:10D6D0000B5EFCF5EB101C5E0CE41B000FC110F69A +:10D6E0000C1200F80C110BF8091120F60C094BF480 +:10D6F000090A49124BF40C094AF80C1101CADBF46F +:10D700000C1200C030F409094A2EBC00739D0013AE +:10D7100002F1EC560401BC0000800101BD000100D3 +:10D7200000C19E010D02F1EC56030000000100F45F +:10D730000B160BB57AF80C1101CA1BF5EB101C5E29 +:10D740000C3FFCB56C580AF80B13005EBC484C3219 +:10D750001B990B3FFB3FFA5EFE000000004EA0EB62 +:10D76000CD4080E0673085EA1700000F8C581CC060 +:10D7700031E3CF8080E06C3078EA1C0000781CFE3A +:10D78000B0EF40581CC051301CC5FC301CAE8CE3BF +:10D79000CF908080019BD0EBCD4080E0673078EA6D +:10D7A000170000E0A00E148F2CE0A00E0B8F1C3091 +:10D7B0000CAE8C6E2CE06BCF8CEA1B8001F94B0316 +:10D7C00008E06BCFB8EA1B8001F94B030CE06BBD9E +:10D7D00030EA1B8001F94B0310E06BBDD0EA1B80DF +:10D7E00001F94B0314E06BD184EA1B8001F94B0370 +:10D7F00018E3CF9080D7038001D99C8001D990D4C1 +:10D8000001E06C3078EA1C0000782CF93C030158E8 +:10D810000CC021D80AC11CD8020000D401C0DCD839 +:10D82000020000D401300CE06B3078EA1B000000ED +:10D830000E2A001302F1EC560401BD000080010124 +:10D84000BE000100005455010D02F1EC560300002A +:10D85000000100B68CC0BCDA0A0000E06B3084EA3C +:10D860001B0000F72C00005EFC0000E06B3084EA37 +:10D870001B0000B68C5EFDD421189716963005303B +:10D8800004C0780F9B0F8CC08C18452FE72FF40C29 +:10D8900034CF930A9CD822189AFE7C2C00F40916E7 +:10D8A00005A9791809588BF9BB02081E0B17EB164E +:10D8B0000F0C2C4054687C90A4B800301B149CF9C9 +:10D8C000DCC005F60C094B936B93AB93EB301CF566 +:10D8D000DAC005F80A094C932C5EFD301B149CF944 +:10D8E000DCC005F60C094B935B93AB93EBCF0B308D +:10D8F0001B149CF9DCC005F60C094B936B939B93AE +:10D90000EBCE6B301B149CF9DCC005F60C094B9375 +:10D910005B939B93EBCDCB301B149CF9DCC005F6DD +:10D920000C094B936B93AB93DBCD2B301B149CF901 +:10D93000DCC005F60C094B935B93AB93DBCC8B30CF +:10D940001B149CF9DCC005F60C094B936B939B935D +:10D95000DBCBEB0092CB001302F1EC560401BE00CE +:10D9600000800101BF00010000EBEE010D02F1ECAF +:10D9700056030000000100301B149CF9DCC005F6C2 +:10D980000C094B935B939B93DBCB4B5EFF0000D565 +:10D99000E1E067D524EA178001109A129B5D171801 +:10D9A00095FAEA00045D175815C354581CC3344057 +:10D9B0001CA17CC092FAEA0004EE1B8000FAEB0086 +:10D9C000043084C0283004403CA17CC092FAEA00B4 +:10D9D0000CEE1B8000FAEB000CEC140006FAEA00D7 +:10D9E0000CFAE80004FEB0CF19C082FAEA000CFA83 +:10D9F000E80004FEB0CEA6C2E85805F9BA0700F95F +:10DA0000BB0700C2A7FAEA0004FAE8000CFEB0CE99 +:10DA100099C238582CC041FAEA0004DE625825C089 +:10DA200041FAEA000CDE621835F9BA0100F9BB01CF +:10DA300000C051300A300BEA1B3FF04019A1793089 +:10DA400084F9B402004039A179C032EC14000658C0 +:10DA50001CC031EC140002089CFEB0F2BBDE6280F8 +:10DA6000015DA080015CC88001A558E1BC0000D325 +:10DA7000035EFCB18CF9DC001FF1001302F1EC56DF +:10DA80000401BF0000800101C000010000EA86011E +:10DA90000D02F1EC56030000000100C001EC1C0077 +:10DAA000015EFCD401CF9FC020D503D80A0000D46A +:10DAB00001CEFF320BEA1BAA00FE7A1818950BE480 +:10DAC0007B0105489A950BCEEFD80AD401CE1F32C0 +:10DAD0000BEA1BAA00FE7A1818950B300B483A95F2 +:10DAE0000BCE1FD80AD703FFFF1820D401CD1F3655 +:10DAF0004BEA1BAA00FE7A1818950B301B48AA9512 +:10DB00000BCD1FD80A0000D401CC3F364BEA1BAA2C +:10DB100000FE7A1818950B300B483A950BCC3FD87D +:10DB20000AD703FFFF1864D401CB3F350BEA1BAAC9 +:10DB300000FE7A1818950B301B48AA950BCB3FD8DE +:10DB40000A0000D401CA5F350BEA1BAA00FE7A184E +:10DB500018950B300B483A950BCA5FD80AD703FFCC +:10DB6000FF1850D42114961697E068DEF7EA18BF24 +:10DB700029E069F8D8EA193FC2FEB0CDB8E068B331 +:10DB8000F4EA18CCFEE069991AEA193FC3FEB0CC5A +:10DB9000990C980E99FEB0CDAAE06800643D001380 +:10DBA00002F1EC560401C00000800101C100010037 +:10DBB00000862A010D02F1EC56030000000100CBA3 +:10DBC00062EA18D968E069466FEA193FC7FEB0CC2F +:10DBD0008B0C980E99FEB0CD9CE068C9C6EA18DAA5 +:10DBE00012E06971C4EA193FCCFEB0CC7D0C980EEE +:10DBF00099FEB0CD8EE068E94AEA18948AE0694956 +:10DC000024EA193FD2FEB0CC6F0C980E99FEB0CD2D +:10DC100080E0685FF7EA189997E0699999EA193FF7 +:10DC2000D9FEB0CC610C980E99FEB0CD72E068556B +:10DC3000BCEA185555E0695555EA193FE5FEB0CCE8 +:10DC400053D82280015C4E80015A24E1BC0000D3ED +:10DC5000035EFCEDBC00105F2C5C5C5EFC0000D43D +:10DC600001CF9F5C5C580CC020D503D80A0000EBA4 +:10DC7000CD40E0189716951496CE9F3FFB8F8B3FB3 +:10DC8000FB8FABE06B00808F0BCEBF3FFC8FAC30C7 +:10DC90002AE06B02C0E06C4350EA1C8000E0A00464 +:10DCA000E7E06C4E88EA1C00009907315C8F0CEBB2 +:10DCB0003C0009580CC0406E0CA1BC8F0CEB3C0022 +:10DCC000CF20001302F1EC560401C10000800101D5 +:10DCD000C20001000013E1010D02F1EC5603000047 +:10DCE000000100000A580CC0406E0CBBAC8F0C6EDB +:10DCF0000CEB3B0008F9EB110C8F0C6A0C6A1BF85B +:10DD00000B0D0A307CF40C0D0A5C5AB16AA5AA8F7F +:10DD10002AE06C4E8CEA1C0000AD0BB92A0D0A18E3 +:10DD2000AA20CCE07C00008F7C300CE3CD80E0802A +:10DD300001CBACD421F8C7FFF9E017FFFC0E3CC0C3 +:10DD400023D82A5887F9B70308C0482FCCE0A0038E +:10DD5000ABE0664EA8EA1600006C0C189B580CC18C +:10DD600011ECCBFFFC760C580CC1C0780A0E3AC1FE +:10DD7000D2F8CBFFFCCF8B74090E39C172F4CBFF04 +:10DD8000FC760A580ACF91780CECCBFFFCC038F433 +:10DD9000CBFFFC760A183AC05074090E39C062CF26 +:10DDA0008BE0A0097DCD31300B580BCCB0760C78D0 +:10DDB0000AF4C900080E39C042781A970AC0B8F8A8 +:10DDC00007000997097819760891190E1A760993B0 +:10DDD0000A9907760B580BC060761A580AC0302F84 +:10DDE000CBC02800A30B001302F1EC560401C200C3 +:10DDF00000800101C300010000AC5A010D02F1ECEA +:10DE000056030000000100300B8D0B2FCCD8228070 +:10DE100001C9C08001D5B8EBCD40C020FDFACCFFD0 +:10DE2000F0FEB0D8ABE06C00DAEA1C0000988B2F53 +:10DE3000FBB80B988B989A143BC3B3300BB80B30DC +:10DE400007C2F8E06C2F8CEA1C0000781CF91C015A +:10DE500086F8070A4CA19CC232F9D7B008FEB0E799 +:10DE600013C1E5F806100640DBFC1C42C8FEB0B941 +:10DE7000FDFEB0BBADFACBFFF80C0BB60C40EBFCD3 +:10DE80001C42C8FEB0B9F2FEB0BBA2FACBFFF80C40 +:10DE90000BB61C301CFACBFFF81606ACCC2FF75C87 +:10DEA0006758C7CD05FAEA0008BB1BFEB0E7022F92 +:10DEB0001DE3CF90C0D703800174708001917C80F6 +:10DEC00001376080013AC4800191A8D421E0A00A02 +:10DED000E51897EF26006EC178EE060015EF1C00DE +:10DEE0006CEB0B0070180BEB5B0070EB040070F92F +:10DEF000D6B008FEB0E07E1834C045300C2905AA23 +:10DF00000C2FF65C665866009A67001302F1EC5617 +:10DF10000401C30000800101C400010000B87201C7 +:10DF20000D02F1EC56030000000100CE95E06C46B6 +:10DF300048EA1C0000198C580CC2E0EF1C0066581F +:10DF40000CC2A1EF2C006B585CC06128878E0C5866 +:10DF50000C5F0CD822EF2C006AEF2B006E163CC130 +:10DF600004EF2C006AC088300B5C6CEE0C001A29A0 +:10DF70000AB40B2FFCEF2B006EF60C1800CF550ED9 +:10DF80009C295CF92B0000EE0B001729078E0C581A +:10DF90000C5F0CD822D82A8001D990800184E8EB4C +:10DFA000CD40C018961697301C0F8BF60B1068ECFE +:10DFB0000B0B0C0F8BF60B10680C0BB69C30CB0FB9 +:10DFC0008AF40A10680C0AB4ABE06B2F94EA1B00C9 +:10DFD00000F72A0000580AC080302B0F8AF40A107C +:10DFE000680C0AB4CBC0680F8BF60B10680C0BB62C +:10DFF000CC0F8BF60B10680C0BB6DC306B0F8AF471 +:10E000000A10680C0AB4EB0F8BF60B10680C0BB6F9 +:10E010004C300CFEB0E5F20F8BF60B10680C0BB613 +:10E020005C300CFEB0E5F40F8BF60B00A3810013FF +:10E0300002F1EC560401C40000800101C50001009A +:10E0400000D2CA010D02F1EC5603000000010010DD +:10E05000681606AC6C0F8C2FFCAE8C30CCFEB0E694 +:10E060000FE3CF80C0D703800190CC800190E08087 +:10E0700001912CD401E0691A88EA190000129C2F42 +:10E080004C300A300B189E30A8BD2A2018CFE11260 +:10E090009C2F4C189E30A8BD2A2018CFE1129CFE60 +:10E0A0003CFE5C189E30A8BD2A2018CFE1129C2AA5 +:10E0B0004C189E30A8BD2A2018CFE1129CFE3CFFD0 +:10E0C0002C189E30A8BD2A2018CFE1129CFE3CFEE1 +:10E0D000AC189E30A8BD2A2018CFE1300CB28CB20B +:10E0E0009CB2CCB2DCB2ACB2BCB2ECB24CB25CE032 +:10E0F0006C4000EA1C447EF34C01F4F2EB0124F284 +:10E10000EB012CF2EB0134F2EB0144F2EB013CF2B7 +:10E11000EB014CD80A0000EDBC00105F2C5C5C5E8B +:10E12000FC0000EBCD4080FE7C18507807A1C7E1D1 +:10E13000BC0000FEB0FFF2D303350BEA1BAA00FEC1 +:10E140007A1818950BFE7B185097075C5C580C00EA +:10E15000BDBB001302F1EC560401C50000800101B3 +:10E16000C6000100004701010D02F1EC560300005A +:10E17000000100C020D503E3CF8080D401E1BC00C2 +:10E1800000FEB0FFDDD303364BEA1BAA00FE7A186F +:10E1900018950B301BFE7A1864950B5C5C580CC00C +:10E1A00020D503D80A0000EBCD4080FE7C186478AF +:10E1B00007A1C7E1BC0000FEB0FFC2D303364BEAA3 +:10E1C0001BAA00FE7A1818950BFE7B186497075C53 +:10E1D0005C580CC020D503E3CF8080300CE06B2C62 +:10E1E00050EA1B0000B68C5EFF0000EBCD408020A3 +:10E1F0001D3007189B5C5B201BC060201BC060208B +:10E200001BC0E0C0583017C0B83027C09830375016 +:10E210000CE06CF178EA1C8001FEB060670E9C5C3B +:10E220006C2FFDE3CD808080008774EBCD40C0185B +:10E23000961697301C0F8BF60B1068EC0B0B0C0F1F +:10E240008BF60B10680C0BB69C302C0F8BF60B105A +:10E25000680C0BB6ACE06B2C50EA1B0000F72C00EE +:10E2600000CC5F0F8BF60B10681606ACCC0F8C2F12 +:10E27000FCAE8C001DDC001302F1EC560401C6005C +:10E2800000800101C700010000F8BA010D02F1ECA5 +:10E2900056030000000100CB4FE3CF80C00000D444 +:10E2A00001300CC068F20C0029F34B00982FFCE001 +:10E2B000690760EA190000300B589CCF55E06C08E4 +:10E2C000ECEA1C0000991BF34B00FC364A930A93BE +:10E2D0001AFC1A4140932AFC1A3E80933A934A93BF +:10E2E0005A936A937AE06A3333EA1A3EB3938A30D8 +:10E2F0005A939A93AA300AC068F20A0028F14B0098 +:10E30000982FFA589ACFA5992B993B994B129CFEBE +:10E310003CFEF0300A189E30F8BD2A2018CFE19D4F +:10E320000A129C2D4CB91B992A129CFE3CFEF0F35C +:10E330004C010CD80A0000782CB98CF9DCC0015EC5 +:10E34000FC0000782CBD8CF9DCC0015EFC0000D420 +:10E3500021201D1895169414971296300C500C0A13 +:10E360009CCF1FC0F0FEB05EB7301BFEB061AA406C +:10E370000B2FFB500B400CE04C07D0CF23300CC0D0 +:10E38000E8A964A1A4EB440040B1678B070A9CCDC7 +:10E390004FCFE10C9B0A9C0013A7001302F1EC562F +:10E3A0000401C70000800101C8000100006F510195 +:10E3B0000D02F1EC56030000000100C08C301C2F50 +:10E3C000FDD8228000853C80008B28EBCD40C01812 +:10E3D0009616970C9CCC3FCFE18D170C9CCBFFCFB2 +:10E3E000E1E3CF80C00000998B5EFDD401E06C2C8E +:10E3F0005CEA1C0000780CF93C0221580CC021D8C2 +:10E400000AC07CD8020000D401300CC0ACDA0AE0AB +:10E410006B2C64EA1B0000F72C00005EFC0000E09F +:10E420006B2C64EA1B0000B68C5EFDD401189A3098 +:10E430001C1789F2091068F4090B0C1789F20910EE +:10E44000681409B29C311C1789F20910681409B2CA +:10E45000ACE06C2C65EA1C0000F9290000178CF870 +:10E460000C1068180AB4C9178C2FFCB68CCCDFD8F6 +:10E470000A0000FE792C00F80A1605A97A120A3063 +:10E4800019F9DCC005F20C0949EDBB0002C042F5E8 +:10E49000490074C038F5490078EDBB0007C1B216D9 +:10E4A0009CE21C0180C060F54900A8F54900B8C194 +:10E4B00028169CE21C0280C060F5490092BE001341 +:10E4C00002F1EC560401C80000800101C9000100FE +:10E4D000002FEA010D02F1EC5603000000010000DC +:10E4E000A4F54900B8C098169CE21C0380C050F502 +:10E4F0004900A8F54900B4EDBB0000C0C2EDBB0067 +:10E5000001C042F5490054C038F5490058F54900AA +:10E5100044C038F549004895195EFDE06A07FF7868 +:10E5200009F5E903491439C0B1780BF7DBC014C011 +:10E5300051781C580CC0215EFF302C5EFC780AF527 +:10E54000DAC01FC051781A580AC0215EFDE06A0483 +:10E55000331429161958195E5D300AE0490035C098 +:10E5600075780BE61B8000990B991A5EFE3018F740 +:10E57000D9C005F00B09482018A789C092780B165E +:10E5800068105B990B781B1648991AC058781B16AF +:10E5900068105B991B58083FFCF9BC00005EFC58F2 +:10E5A0000C5E0DF8FBFFFC204C588B5E3DF5DBC08C +:10E5B000025E1DE06A4EA8EA1A000074195809C0EC +:10E5C00030123CC0529919951CC1A8109972185864 +:10E5D00008C0301838CFB372081208103C5E3D00F6 +:10E5E000C9E6001302F1EC560401C90000800101E4 +:10E5F000CA00010000BA21010D02F1EC560300002F +:10E600000001001838C061720C160C930C129CC0EB +:10E610009872185808C040180B16385E3D99189328 +:10E620001C781B580B5E0D7809180916395E1D30D1 +:10E63000099509760A780914099909761B991B5ED0 +:10E64000FD0000EBCD40803007E06C2F94EA1C0009 +:10E6500000F92B0000580BC061FEB0E3D3581CC07A +:10E660002530170E9C5C6CE3CD8080EBCD40803074 +:10E6700007E06B2F94EA1B0000F72A0000580AC03D +:10E6800080E04C00C8C151FEB0E3C21897C118E049 +:10E690004C00C8C071FEB0E3B5582CC0A53017C0FF +:10E6A00088E04C00C4C051FEB0E3AC581CCF840ECF +:10E6B0009C5C6CE3CD808080019208800191FCEB32 +:10E6C000CD4080E06743DCEA170000E0A007648FDC +:10E6D000BC300CC088F80B10340E0B2D0BEE0C095F +:10E6E0002B2FFC58BCCF85E0A00674FEB0A09EE0A6 +:10E6F000A0064CFEB09E7EE0A00684300CC0C83F51 +:10E70000FB6E9A007BED001302F1EC560401CA0087 +:10E7100000800101CB00010000059A010D02F1EC1F +:10E7200056030000000100180A2EEAB48B6E9A18F6 +:10E730000A2ECAB48B2FFC5C6C582CCF45E3CF80DB +:10E7400080D7038001D9908001D7CC80010C248030 +:10E7500001D784800107EC8001D7FCEBCD4080E03D +:10E76000674A4CEA170000FEB0EEB2EF4C010430ED +:10E770000CC068EE0C002AF54B008C2FFC300B58B7 +:10E780009CCF95EF4B0100EF4B00FCFEB0EE8AEF03 +:10E790004C0118E06C01F48F0C8F1CFC1C41408F65 +:10E7A0002CE06C999AEA1C3F198F3C8F4C8F5CFCD3 +:10E7B0001C3E808F6C8F7CE06C3333EA1C3EB38F41 +:10E7C0008C307C8F9C8FACE3CF80808001A8A480AC +:10E7D00001A878F6091605E068E7D4EA188001F088 +:10E7E0000900387018F7DBC005F00B092CFE7C100F +:10E7F00000F809002CE06B4000EA1B8000580AC0BA +:10E8000081E06A4128EA1A8000142B990B5EFD58BA +:10E810001AC091E06A4136EA1A8000142BBFAB9906 +:10E820000B5EFD582AC09100DFE7001302F1EC56A1 +:10E830000401CB0000800101CC0001000011B201F5 +:10E840000D02F1EC56030000000100E06A4144EAC9 +:10E850001A8000142BBFBB990B5EFDE06A4152EA9F +:10E860001A8000142BEA1BC000990B5EFD000058B3 +:10E870001C5E5DE06B2BECEA1B0000962A180AB6C2 +:10E880002A962CE04C03E85E5D962CE02C03E8B65B +:10E890002CF72C00022FFCB6ACF72C0002E04C0049 +:10E8A0003C5E5DF72C000223CCB6ACF72C00012FA8 +:10E8B000FCB69CF72C0001E04C003C5E5DF72C00A0 +:10E8C0000123CCB69CF72C00002FFCB68CF72C0053 +:10E8D00000598C5E5D300CB68C5EFDD021E06CF290 +:10E8E000A0EA1C8001190B190A1909F7EA1008F1AE +:10E8F000D8C002C221F2081603C1F0F3D9C0031434 +:10E900003BC080B707B5262018CFD15809C171C0C8 +:10E91000C830063007B5262018CFC15809C050307E +:10E920000B14CB2019CFD1E06BF2B8EA1B80011693 +:10E930003CCDA3D0225EFD143BCF30173814C82045 +:10E9400019CF30CFCB0000D401300A0065FA001394 +:10E9500002F1EC560401CC0000800101CD00010061 +:10E96000007B0A010D02F1EC56030000000100C11A +:10E9700038F20A00299358F3480154F3480294F3FB +:10E980004803D4F3480514F3480654F3480794F3B6 +:10E990004808D42FFAE06909C0EA1900003008E0FD +:10E9A0004A0050CE75E06A0028EA1A00003FFE9542 +:10E9B0000E951E952895589548F3480A20F3480A65 +:10E9C0001CF3480A18749EF34E0A1495EC95FB93B9 +:10E9D00048D80AEBCD4080E0672C50EA170000E0F1 +:10E9E000A006168F2CFEB05BE38F1C6E2CE06BD361 +:10E9F00064EA1B8001F94B0048E06BD91CEA1B80DC +:10EA000001F94B004CE06BD450EA1B8001F94B003C +:10EA100050E06BD634EA1B8001F94B0054E06BC622 +:10EA2000B8EA1B8001F94B0058E3CF9080D70380F0 +:10EA300001D99C8000853CEBCD4080E0672F8CEABB +:10EA4000170000E0A005E48F1CFEB05BB18F0C6ED8 +:10EA50001CE06BD3A0EA1B8001F94B0188E06BD866 +:10EA6000B0EA1B8001F94B018CE06BC310EA1B007C +:10EA70008093001302F1EC560401CD0000800101E7 +:10EA8000CE00010000EEC1010D02F1EC56030000C2 +:10EA90000001008001F94B0190E06BCA40EA1B8045 +:10EAA00001F94B0194E06BC474EA1B8001F94B013E +:10EAB00098E3CF9080D7038001D99C8000853CE00B +:10EAC0006C4000EA1C8000E3BC00015EFD0000D445 +:10EAD00001CF7F300BC208E0694530EA1980007829 +:10EAE0001CF80A09292FFAE06CE7D4EA1C8001F827 +:10EAF0000B003C7809123ACF03E06A4128EA1A80F9 +:10EB000000E06C4000EA1C8000181AFE7C1000F83F +:10EB10000B092A2FFB59FBC032300ACE6BD80AD41E +:10EB20002118961697E06B07FF6E0CF7EC034C303C +:10EB300005163CC0C1AC056E0CF9DCC014C0416EBA +:10EB40001C580CC030302CD822DA2A581CC0640E55 +:10EB50009CE0A001F7581CC0C46E0BE41B800FEAB8 +:10EB60001B3FE08F0BE02C03FEAC0C3FFCD822AC2B +:10EB700005D82A8001D2ACD5A1E067C93CEA17804C +:10EB800001301BFACCFFFC5D175C7C201CC190207F +:10EB90001CC1700014DA001302F1EC560401CE001F +:10EBA00000800101CF00010000517A010D02F1EC5B +:10EBB00056030000000100300BFACCFFFC5D17C1CA +:10EBC00020401CA17CFAE80004300AC052300BEA55 +:10EBD0001BBFF0C048300BEA1B3FF0FEB0C580FA07 +:10EBE000EB0004FAEA0004D862D70380015A24D467 +:10EBF00001E0A00531E06B2FE0EA1B0000970CE07C +:10EC00006BD9B0EA1B8001F94B0088E06BD9BCEAF4 +:10EC10001B8001F94B008CE06BD9D8EA1B8001F90D +:10EC20004B0090E06BD9D4EA1B8001F94B0094E0D3 +:10EC30006BD9CCEA1B8001F94B0098DA0AD7038024 +:10EC400001D99CD401318A300B300CFEB0D1F4587C +:10EC50002CC031302CD802E0A00336300CE06B30F1 +:10EC600085EA1B0000B68CDA0AD7038001D60CD4E3 +:10EC700001318A300B301CFEB0D1DE583CC031303F +:10EC80003CD802300CE06B3085EA1B0000B68CDA11 +:10EC90000AD7038001737CD401E0A004DDE06B2F70 +:10ECA00088EA1B0000970CE06BD9B0EA1B8001F9E1 +:10ECB0004B0148E06BD9BC00C7C8001302F1EC5609 +:10ECC0000401CF0000800101D000010000411201C9 +:10ECD0000D02F1EC56030000000100EA1B8001F96F +:10ECE0004B014CE06BD9D8EA1B8001F94B0150E095 +:10ECF0006BD9D4EA1B8001F94B0154E06BD9CCEA03 +:10ED00001B8001F94B0158DA0AD7038001D99CD442 +:10ED100001E0A004B3E06B30C0EA1B0000970CE0F8 +:10ED20006BD9B0EA1B8001F94B00C8E06BD9BCEA93 +:10ED30001B8001F94B00CCE06BD9D8EA1B8001F9AC +:10ED40004B00D0E06BD9D4EA1B8001F94B00D4E032 +:10ED50006BD9CCEA1B8001F94B00D8DA0AD70380C3 +:10ED600001D99CEBCD40801897FEB05A575817C078 +:10ED7000905827C0B05837C0D05877C0F0E3CF9034 +:10ED800080FEB05D39E3CF9080FEB05D39E3CF9077 +:10ED900080FEB05D23E3CF9080FEB05D29E3CF908D +:10EDA00080D7038000853C80008B1880008B2080FA +:10EDB000008AFC80008B10D401E0A0045FE06B307F +:10EDC000BCEA1B0000970CE06BD9B0EA1B8001F98C +:10EDD0004B0168E06BD9BCEA1B800100A65200130E +:10EDE00002F1EC560401D00000800101D1000100C5 +:10EDF0000055AF010D02F1EC56030000000100F9CF +:10EE00004B016CE06BD9D8EA1B8001F94B0170E033 +:10EE10006BD9D4EA1B8001F94B0174E06BD9CCEAC1 +:10EE20001B8001F94B0178DA0AD7038001D99CD401 +:10EE300001E06C13E8EA1C0000300B990B991B9958 +:10EE40002B300A995AE0691420EA190000305893CF +:10EE500038993A994A996B997B998B999B99AB9977 +:10EE6000BB99CA99DA129C2E4C934C129C2E4C18CA +:10EE70009E32D8BD2A2018CFE19D0AB31B932AD811 +:10EE80000A0000D401189A301C1789F2091068F49E +:10EE9000090B0C1789F20910681409B29C318C1700 +:10EEA00089F20910681409B2ACE06C3078EA1C00F1 +:10EEB00000F9290000178CF80C1068180AB4C9175B +:10EEC0008C2FFCB68CFEB0EF07D80A8001AFD4D4EB +:10EED00001FB2C0005592CC071FB3B000C300CFED3 +:10EEE000B0796ED80A593CC071FB3B000D301CFE56 +:10EEF000B07966D80A594CC071FB3B000E302C002B +:10EF00002ECD001302F1EC560401D1000080010166 +:10EF1000D200010000C064010D02F1EC56030000B4 +:10EF2000000100FEB0795ED80A595CC051FB3C007C +:10EF30000CFEB07967D80A8000C4BC8000C4DCD461 +:10EF400001E0A003BFE06B2C30EA1B0000970CE04F +:10EF50006BD9B0EA1B800199ABE06BD9BCEA1B808E +:10EF60000199BBE06BD9D8EA1B800199CBE06BD942 +:10EF7000D4EA1B800199DBE06BD9CCEA1B800199B4 +:10EF8000EBDA0A8001D99CE06B0758EA1B00009776 +:10EF90000CE06C06D8EA1C0000300A300BB91B9953 +:10EFA0002A189B2E0B994B189B2C8B995B189B2B2B +:10EFB0000B996B189B298B997B300BF96B000CE03C +:10EFC0006B00FFF96B000D2F2CB88B5EFD000078F5 +:10EFD0000AE61A8000301B7809F3D9C0149909C0D9 +:10EFE000D178195809C0A1C1087819A178F1E9139D +:10EFF000F89908A1799919201B7808EDB80014CF69 +:10F0000052F3D8C01499097809124A990A5EFBD4C0 +:10F0100001310A301B300CFEB0D044582CC03130C6 +:10F020002CD80200415B001302F1EC560401D2001F +:10F0300000800101D3000100007FDF010D02F1EC2F +:10F0400056030000000100E0A002E2DA0AD70380C4 +:10F0500001D8C4D401310A301B301CFEB0D0345862 +:10F060003CC031303CD802DA0AD7038001737CD42B +:10F0700001317A300B300CFEB0D026582CC0313024 +:10F080002CD802E0A002CEDA0AD7038001D8D8D467 +:10F0900001317A300B301CFEB0D016583CC03130F4 +:10F0A0003CD802DA0AD7038001737CD401302A30BD +:10F0B0001B300CFEB0D008582CC031302CD8023098 +:10F0C0002A305B300CFEB0CFFF582CCF80FEB061F1 +:10F0D00069300CE06B2C50EA1B0000B68CDA0A8019 +:10F0E00001737C80009658D4019ADCE06B00DAEA68 +:10F0F0001B0000B61C582CC055FE3C0002B60CC0CC +:10F1000038300CB60C30CAFB3B00085C6B300CFE90 +:10F11000B0CFDA583CC031302CD802DA0AD703809D +:10F1200001737CD401307A300B300CFEB0CFCC5858 +:10F130002CC031302CD8021BCCFEB0FF39DA0A804B +:10F1400001D264D401307A00DDEE001302F1EC56F6 +:10F150000401D30000800101D4000100006BF7011D +:10F160000D02F1EC56030000000100300B301CFED4 +:10F17000B0CFBC583CC031303CD802DA0AD703804B +:10F1800001737CD4A1201D1897500CFAC9FFF81602 +:10F190009A1A9BE06CD978EA1C8001FEB068C230F4 +:10F1A0000B400AB48BF8071760C036400C18270EC6 +:10F1B0009C2FFDD8A2D7038000A5B4D40120EDFA7E +:10F1C000CCFFF4FEB0D00CFACCFFE8780A500A78F5 +:10F1D0001A501A782A502AFEB0613EE06B2C50EA91 +:10F1E0001B0000B68C2F2DDA0AD7038001747080C3 +:10F1F0000096E8FE7B12005C3CF60C002B763CFE91 +:10F200007B1100F60C032B580B5E0DF60A1200E082 +:10F210006BE7D4EA1B8001F60C003B761C5C3AF8E5 +:10F220000A002C79FC5EFCE06C1E5CEA1C000030DD +:10F230000BF94B0938B86BB87B305AF94A09B0F969 +:10F240004B0944300AF94A095CF94A098C998A99B0 +:10F250002AF95B00FAF95B00FC5EFD488CE3BC0018 +:10F2600001F01F000AC030F01F000900B63E001375 +:10F2700002F1EC560401D40000800101D500010028 +:10F2800000014F010D02F1EC56030000000100D710 +:10F2900043F01F0005F01F0005E9B00002CFEB802E +:10F2A0000040008001A1288001D9848000EF1480F3 +:10F2B00001CC90149C169AE06B07FFF7EA0349F51E +:10F2C000DAC0141639C0A05809C0205EFE580AC022 +:10F2D00031580C5E0D3FEC5EFC580AC031580C5E94 +:10F2E0000F302C5EFC0000EBCD4080E0672FDAEAA7 +:10F2F000170000303A0E9B300CE06943DCEA19003D +:10F3000000722972B972895D19C051300CAE8CAE91 +:10F310009CAEACE3CF8080EBCD4080340C30073026 +:10F320000EA17A5CFB5CFE5CF7103EF2071300C096 +:10F3300053101EEE090147A1AA201CCF310E991CC3 +:10F3400098E3CD80800000E06B4EA4EA1B000076BD +:10F350000C580CC0205EFDE06C4F94EA1C00009736 +:10F360000CE06B5794EA1B0000E01BFFFC181B9994 +:10F370000B5EFCEBCD4080E067EAC4EA1780010E2B +:10F380009B300CFEB0EB0C2DC70E9B30ACFEB000DA +:10F3900087BA001302F1EC560401D5000080010188 +:10F3A000D6000100009484010D02F1EC5603000028 +:10F3B000000100EB07E3CF8080D7038001AC0CE0B5 +:10F3C0006C2924EA1C0000300B990B991B992BE047 +:10F3D0006C2930EA1C0000991B992B993BB88B30A3 +:10F3E0001BB89B5EFD0000300CE06B2C50EA1B004C +:10F3F00000762A2BFA158A580AC0215EFDF72A00EA +:10F4000000580AC020301C5C6C5EFC103AF20B13F2 +:10F4100000C070F7E9100CF5EC101C104C5EFCF904 +:10F42000DBB28B5BFC5E1DF5EB10CC5EFC00005884 +:10F430000C5E0DE06B1E5CEA1B0000781AF74A00B8 +:10F44000C4780AF74A00C0984CF75C00C85EFDFE1D +:10F450007A2C00F80B1605A97B140B301AF9DCC0C6 +:10F4600005F40C094AF74A0048971A5EFD00005857 +:10F470000C5E0DE06B1E5CEA1B0000F6FB0A083216 +:10F480008AB709B928208ACFD1228C5EFD0000F707 +:10F49000EC200AC060F7EC100AF40A15011C9FEA80 +:10F4A0001AFF00F40C011A5F3A147A1C9F0000EB5B +:10F4B000CD4080004BEB001302F1EC560401D60066 +:10F4C00000800101D7000100002B3F010D02F1EC8B +:10F4D000560300000001003007FEB05723C0203063 +:10F4E000170E9C5C5CE3CD8080D70380008548309C +:10F4F0001A189BF7DBC005F40B094AFE7B2C00A50C +:10F500009CA97C160CF94A00545EFDD401E06C2CD9 +:10F5100050EA1C0000781C2BDC198CFEB05FCADAA4 +:10F520000AD703800096D8301A189BF7DBC005F481 +:10F530000B094AFE7B2C00A59CA97C160CF94A00FD +:10F54000585EFDD401E0A00111E06B2B04EA1B0022 +:10F5500000970CDA0AD7038001D990D401E06BEC54 +:10F5600098EA1B8001303CFEB0EA3ED80AD70380FF +:10F5700001AC0CD421201D189750071A9B301CE0B9 +:10F58000A00110CFBBD7038001D9C8D401E06BEC38 +:10F5900050EA1B8001307CFEB0EA26D80AD70380EF +:10F5A00001AC0CD401E06BECBCEA1B8001302CFEFA +:10F5B000B0EA1AD80AD7038001AC0CD401E06BEC96 +:10F5C0002CEA1B8001307CFEB0EA0ED80AD70380FB +:10F5D00001AC0CD401E06B000B25001302F1EC56DA +:10F5E0000401D70000800101D800010000BCD40153 +:10F5F0000D02F1EC56030000000100ED04EA1B804F +:10F6000001306CFEB0EA02D80AD7038001AC0CD4FA +:10F6100001E06BECE0EA1B8001301CFEB0E9F6D89B +:10F620000AD7038001AC0CE06C13E8EA1C00003040 +:10F630000B990B991B992B99CB99DB5EFD0000E090 +:10F640006B2BECEA1B00003069172A18BA2029CF6F +:10F65000D1206C5EFC0000E06B2FDAEA1B00001783 +:10F660008AB88A179AB89A17ABB8AB5EFD0000E06B +:10F67000692BECEA190000B28CB29BB2AA300CB232 +:10F680002C5EFD5C5BC0382FFC201A580A5E0D19F9 +:10F69000891639CFA15EFCD021F80B0C06AD3B16C4 +:10F6A0001C189A0C9BD0225EFC0000E06C00DAEA89 +:10F6B0001C0000301BB81B300BB80B5EFF0000E0D5 +:10F6C0006C4B78EA1C0000300B990B991B992B5E50 +:10F6D000FD0000300CE06B4C7CEA1B0000B68C9700 +:10F6E0001C972C5EFD00005C5B198A163A5E0C2F9D +:10F6F000FC580ACFB15EFD189BC02800219B00F387 +:10F7000002F1EC560401D80000800101D90001008B +:10F710000300000000DA2FFB178A580ACFD1162CFD +:10F720005EFCE06C1E5CEA1C0000F8FC09F45EFC68 +:10F730000000300CE06B2C50EA1B0000B68C5EFF22 +:10F740000000300CE06B464CEA1B0000970C5EFF9B +:10F750000000E06B2F94EA1B0000B68C5EFDD40124 +:10F76000FEB0FED9D8028001D6FCE06B4648EA1B09 +:10F770000000B68C5EFDE06B486CEA1B0000970C45 +:10F780005EFDD401FEB08F29D8028000F7C0780A50 +:10F79000B48B780B2FFB990B5EFCD401E0A000101A +:10F7A000D80A8001D9A6E06C2A80EA1C00005EFC21 +:10F7B0000000E06C2C68EA1C00005EFC482FD703B8 +:10F7C00000008001D79C302C5EFC5EFF00005EFFD5 +:10F7D00000005EFF00005EFD00005EFF00005EFDB9 +:10F7E00000005EFD00005EFF00005EFD00005EFFA9 +:10F7F0000057FD003D02F1EC56030000DC00240040 +:10F8000000000000000002000000040000000600EC +:10F810000000080000000A0000000C0000000E00BC +:10F820000000100401D90000800101DA000100008D +:10F83000634C010D02F1EC560300000001000000D2 +:10F840000012000000140000001700000019000062 +:10F85000001B0000001D0000001F00000021000030 +:10F860000023000000250000002700000029000000 +:10F87000002B0000002D0000002F000000310000D0 +:10F8800000330000003500000037000000390000A0 +:10F89000003B0000003D0000003F00000041000070 +:10F8A000004300000046000000480000004A00003D +:10F8B000004C0000004E000000500000005200000C +:10F8C000005400000056000000580000005A0000DC +:10F8D000005C0000005E00000060000000620000AC +:10F8E000006400000066000000680000006A00007C +:10F8F000006C0000006E000000700000007200004C +:10F90000007400000076000000780000007A00001B +:10F91000007C0000007E00000080000000820000EB +:10F92000008400000086000000880000008A0000BB +:10F93000008C0000008E000000900000009200DFAC +:10F9400021001302F1EC560401DA0000800101DB12 +:10F9500000010000D61F010D02F1EC56030000006B +:10F9600001000000009400000096000000980000D4 +:10F97000009A0000009C0000009E000000A0000013 +:10F9800000A2000000A4000000A6000000A80000E3 +:10F9900000AA000000AC000000AE000000B00000B3 +:10F9A00000B2000000B4000000B6000000B8000083 +:10F9B00000BA000000BC000000BE000000C0000053 +:10F9C00000C2000000C4000000C6000000C8000023 +:10F9D00000CA000000CC000000CE000000D00000F3 +:10F9E00000D2000000D4000000D6000000D80000C3 +:10F9F00000DA000000DC000000DE000000E0000093 +:10FA000000E2000000E4000000E6000000E7000063 +:10FA100000E9000000EB000000ED000000EF000036 +:10FA200000F1000000F3000000F5000000F7000006 +:10FA300000F9000000FB000000FD000000FF0000D6 +:10FA400001010000010300000104000001060000A4 +:10FA500001080000010A0000010C0000010E000076 +:10FA60000110005CF7001302F1EC560401DB00000A +:10FA7000800101DC00010000C237010D02F1EC56EB +:10FA8000030000000100000001120000011400004A +:10FA9000011600000118000001190000011B000000 +:10FAA000011D0000011F00000121000001230000D2 +:10FAB000012500000127000001290000012A0000A3 +:10FAC000012C0000012E0000013000000132000076 +:10FAD0000134000001360000013800000139000047 +:10FAE000013B0000013D0000013F0000014100001A +:10FAF00001430000014500000146000001480000EC +:10FB0000014A0000014C0000014E000001500000BD +:10FB10000151000001530000015500000157000091 +:10FB200001590000015B0000015C0000015E000063 +:10FB30000160000001620000016400000165000036 +:10FB40000167000001690000016B0000016D000009 +:10FB5000016E0000017000000172000001740000DD +:10FB6000017600000177000001790000017B0000B0 +:10FB7000017D0000017F0000018000000182000083 +:10FB800001840000018600B361001302F1EC560409 +:10FB900001DC0000800101DD00010000A88F010DE3 +:10FBA00002F1EC5603000000010000000187000094 +:10FBB00001890000018B0000018D0000018E000012 +:10FBC00001900000019200000194000001950000E6 +:10FBD0000197000001990000019B0000019C0000BA +:10FBE000019E000001A0000001A2000001A300008E +:10FBF00001A5000001A7000001A8000001AA000063 +:10FC000001AC000001AE000001AF000001B1000036 +:10FC100001B3000001B4000001B6000001B800000B +:10FC200001B9000001BB000001BD000001BF0000E0 +:10FC300001C0000001C2000001C4000001C50000B5 +:10FC400001C7000001C9000001CA000001CC00008A +:10FC500001CE000001CF000001D1000001D300005F +:10FC600001D4000001D6000001D7000001D9000036 +:10FC700001DB000001DC000001DE000001E000000B +:10FC800001E1000001E3000001E5000001E60000E1 +:10FC900001E8000001E9000001EB000001ED0000B7 +:10FCA00001EE000001F0000001F1004A2C001302F7 +:10FCB000F1EC560401DD0000800101DE00010000CE +:10FCC0003D44010D02F1EC5603000000010000006C +:10FCD00001F3000001F5000001F6000001F800004A +:10FCE00001F9000001FB000001FD000001FE000021 +:10FCF00002000000020100000203000002040000F4 +:10FD0000020600000208000002090000020B0000C9 +:10FD1000020C0000020E0000020F000002110000A1 +:10FD20000213000002140000021600000217000077 +:10FD300002190000021A0000021C0000021D00004F +:10FD4000021F000002200000022200000223000027 +:10FD500002250000022600000228000002290000FF +:10FD6000022B0000022C0000022E0000022F0000D7 +:10FD700002310000023200000234000002350000AF +:10FD80000237000002380000023A0000023B000087 +:10FD9000023D0000023E000002400000024100005F +:10FDA0000243000002440000024600000247000037 +:10FDB00002480000024A0000024B0000024D000011 +:10FDC000024E00000250000002510000025300DB0E +:10FDD00038001302F1EC560401DE0000800101DF5F +:10FDE0000001000082FF010D02F1EC56030000004B +:10FDF00001000000025400000255000002570000FC +:10FE000002580000025A0000025B0000025C000081 +:10FE1000025E0000025F000002610000026200005A +:10FE20000264000002650000026600000268000033 +:10FE300002690000026A0000026C0000026D00000E +:10FE4000026F0000027000000271000002730000E7 +:10FE500002740000027500000277000002780000C2 +:10FE6000027A0000027B0000027C0000027E00009B +:10FE7000027F000002800000028200000283000076 +:10FE80000284000002860000028700000288000051 +:10FE9000028A0000028B0000028C0000028E00002B +:10FEA000028F000002900000029200000293000006 +:10FEB00002940000029600000297000002980000E1 +:10FEC00002990000029B0000029C0000029D0000BD +:10FED000029F000002A0000002A1000002A2000098 +:10FEE00002A4000002A5000002A6000002A8000073 +:10FEF00002A900ED81001302F1EC560401DF0000BD +:10FF0000800101E0000100001D94010D02F1EC569A +:10FF1000030000000100000002AA000002AB000084 +:10FF200002AD000002AE000002AF000002B000000F +:10FF300002B2000002B3000002B4000002B50000EB +:10FF400002B7000002B8000002B9000002BA0000C7 +:10FF500002BC000002BD000002BE000002BF0000A3 +:10FF600002C1000002C2000002C3000002C400007F +:10FF700002C5000002C7000002C8000002C900005C +:10FF800002CA000002CB000002CD000002CE000039 +:10FF900002CF000002D0000002D1000002D3000016 +:10FFA00002D4000002D5000002D6000002D70000F3 +:10FFB00002D8000002DA000002DB000002DC0000D0 +:10FFC00002DD000002DE000002E0000002E10000AD +:10FFD00002E2000002E3000002E4000002E500008B +:10FFE00002E6000002E8000002E9000002EA000068 +:10FFF00002EB000002EC000002ED000002EE000047 +:020000022000DC +:1000000002F0000002F1000002F2000002F3000022 +:1000100002F4000002F500AC4B001302F1EC5604B0 +:1000200001E00000800101E100010000A125010DB7 +:1000300002F1EC56030000000100000002F600008F +:1000400002F7000002F8000002FA000002FB0000C4 +:1000500002FC000002FD000002FE000002FF0000A2 +:10006000030000000301000003020000030300007E +:10007000030500000306000003070000030800005A +:1000800003090000030A0000030B0000030C00003A +:10009000030D0000030E0000030F0000031000001A +:1000A00003110000031300000314000003150000F7 +:1000B00003160000031700000318000003190000D6 +:1000C000031A0000031B0000031C0000031D0000B6 +:1000D000031E0000031F0000032000000321000096 +:1000E00003220000032300000324BFF000000000EF +:1000F0000000800000000000000080000000000000 +:1001000000000000000000000000BFEE9452C0009C +:100110000000BE514E2048000000BCBC6764F800DF +:1001200000000000000000000000BFED338120004F +:100130000000BE14DBB38000000000545200130224 +:10014000F1EC560401E10000800101E20001000031 +:1001500034EE010D02F1EC56030000000100BCA3D7 +:100160000667500000000000000000000000BFEB28 +:10017000DCE9D0000000BE5992C308000000BCB802 +:10018000D3B0800000000000000000000000BFEAC3 +:100190008FF970000000BE2810A5C0000000BCB0A0 +:1001A000C0BFE80000000000000000000000BFE940 +:1001B0004C2870000000BE424B1360000000BCB829 +:1001C000203DC00000000000000000000000BFE86B +:1001D00010FA50000000BE2BF65FC0000000BCA764 +:1001E000715C900000000000000000000000BFE60D +:1001F000DDFC20000000BE54F1F8C0000000BCB9D6 +:10020000F6E9180000000000000000000000BFE553 +:10021000B2C3D0000000BE5432E470000000BCB491 +:1002200006DB500000000000000000000000BFE4FA +:100230008EEF10000000BE5262F320000000BC9A56 +:10024000872AC00000000000000000000000BFE39B +:100250007222B0000000BE56E0E8F0000000002767 +:10026000D7001302F1EC560401E20000800101E323 +:10027000000100008B55010D02F1EC560300000057 +:100280000100BCBD2D35280000000000000000006A +:100290000000BFE25C0A00000000BE418EFAB00020 +:1002A0000000BCBD6FAE4000000000000000000078 +:1002B0000000BFE14C5600000000BE5FCD15F0000D +:1002C0000000BC901C1400000000000000000000B2 +:1002D0000000BFE042BD40000000BE5734F93000CE +:1002E0000000BC931E6CE000000000000000000055 +:1002F0000000BFDE7DF5E0000000BE5E538AB00066 +:100300000000BCAA77DA80000000000000000000B6 +:100310000000BFDC819DC0000000BE26A2FF0000DF +:100320000000BCB0E25760000000000000000000C8 +:100330000000BFDA8FF960000000BE51810A58004A +:100340000000BCB8605FF00000000000000000008A +:100350000000BFD8A89800000000BE457F7A60006A +:100360000000BCA33354D0000000000000000000D7 +:100370000000BFD6CB0F60000000BE40CB91D00084 +:10038000000000D95C001302F1EC560401E3000008 +:10039000800101E4000100009F7D010D02F1EC5697 +:1003A000030000000100BCA01B6D40000000000025 +:1003B000000000000000BFD4F6FBA0000000BE5209 +:1003C000CEC598000000BC7E393A00000000000055 +:1003D000000000000000BFD32BFEE0000000BE2B99 +:1003E000877340000000BC796892000000000000A4 +:1003F000000000000000BFD169C040000000BE53F3 +:1004000063F158000000BC7C8D43800000000000B8 +:10041000000000000000BFCF5FD880000000BE5485 +:10042000831F18000000BCA2423FB0000000000083 +:10043000000000000000BFCBFC6780000000BE533E +:10044000FFFA60000000BCB80DE0500000000000A2 +:10045000000000000000BFC8A89800000000BE35E2 +:100460007F7A60000000BC933354C000000000009D +:10047000000000000000BFC563DC00000000BE54A7 +:10048000FFD658000000BC90643900000000000056 +:10049000000000000000BFC22DADC0000000BE156E +:1004A00059A480000000004186001302F1EC5604BC +:1004B00001E40000800101E500010000F5C5010D27 +:1004C00002F1EC56030000000100BCAB4B48E00019 +:1004D00000000000000000000000BFBE0B1A8000FA +:1004E0000000BE5A3CBF50000000BCB664B3A00080 +:1004F00000000000000000000000BFB7D60480002C +:100500000000BE36CFBB40000000BCA8CE76800005 +:1005100000000000000000000000BFB1BB328000FE +:100520000000BE43002A40000000BCBD0CC62800ED +:1005300000000000000000000000BFA7739400004E +:100540000000BE593B2B18000000BCA55DE5C000B3 +:1005500000000000000000000000BF9743EE000014 +:100560000000BE40C3E6A0000000BCB58D95200091 +:1005700000000000000000000000800000000000FB +:10058000000080000000000000008000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C000000000000000000000000063D4001302DF +:1005D000F1EC560401E50000800101E60001000095 +:1005E000600E010D02F1EC56030000000100000056 +:1005F00000000000000000000000000000000000FB +:1006000000000000000000000000000000000000EA +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:1006900000000000000000000000000000004753C0 +:1006A000462D310000004753462D320000004753CD +:1006B000462D330000004753462D340000004753B9 +:1006C000462D3500000080012A8080012A308001FB +:1006D0002A8080012A5880012BE080012BF08001C4 +:1006E0002BAC80012A8080012DC880012D7400DC94 +:1006F000B8001302F1EC560401E60000800101E7A6 +:1007000000010000DFB5010D02F1EC56030000000E +:10071000010080012D9880012C1080012C4880015F +:100720002C9880012A8080012E4880012A80800137 +:100730002A5880012DD880012DE880012DF88001F4 +:100740002A8080012E5880012A8080012A58800149 +:100750002BE080012BF080012BAC80012EB08001BA +:100760002F0880012ED080012F2480012E68800167 +:100770002E8C80012BAC80012F4480012A30800117 +:100780002F6480012A5880012BE080012BF080012A +:100790002BAC80012A8080012A3080012F9C8001AF +:1007A0002A5880012BE080012BF080012BAC8001C6 +:1007B0002FD480012A3080012FD480012A58800153 +:1007C0002BE080012BF080012BAC80012FE8800111 +:1007D0002A3080012A808001300480012E68800147 +:1007E0002E8C80012BAC0000000100004EB00000F8 +:1007F000000200004EB40000000100004EBC0000EA +:10080000000100004EC00000000400004EC40000C3 +:10081000000400BD2B001302F1EC560401E70000B8 +:10082000800101E800010000485E010D02F1EC5674 +:1008300003000000010000004ED400000000000092 +:100840004EE40000000100004EE80000000100003E +:100850004EEC0000000100004EF00000000400001B +:100860004EF40000000400004F04000000050000EA +:100870004F140000000100004F2800000008000095 +:100880004F2C0000000100004F4C00000000000051 +:100890004F500000000000004F5400000000000016 +:1008A0004F580000000100004F5C000000010000F4 +:1008B0004F600000000100004F64000000010000D4 +:1008C0004F680000000000004F6C000000000000B6 +:1008D0004F700000000300004F7400000000000093 +:1008E0004F800000000000004F8400000000000066 +:1008F0004F880000000100004F8C00000001000044 +:100900004F90000000000000001E000000280000C2 +:1009100000320000003C0000014A0000003C0000E2 +:100920000096000000F00000014F000000410000B0 +:10093000009B000000F500CAFF001302F1EC560412 +:1009400001E80000800101E90001000008E5010D57 +:1009500002F1EC5603000000010000000154000009 +:100960000046000000A0000000FA0000015E000048 +:100970000050000000AA000001040000001E00005A +:100980000078000000D20000012C000000190000D7 +:100990000073000000CD00000127000000140000DB +:1009A000006E000000C8000001220000000A0000E4 +:1009B0000064000000BE00000118000000000000FC +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A000000000000000000000000000000000000E6 +:100A1000000000000000000000004759524F2D5315 +:100A200000004753462D313100004753462D3132E7 +:100A30000000414C4F4620256400414C4346202590 +:100A40006400524C434620256400504C4F462025FC +:100A50006400504C434620256400007723001302B5 +:100A6000F1EC560401E90000800101EA00010000F8 +:100A70009D2E010D02F1EC560300000001005041D3 +:100A80004F462025640050414346202564005050C5 +:100A90004F462025640050504346202564004558A9 +:100AA000204C4D454C20256400004558204C4D43BA +:100AB0005231202564004558204C4D4352322025A8 +:100AC000642025642025640000004558204C4D43D7 +:100AD00052332025642025642025642025640000ED +:100AE00000004558204C4D43523420256420256495 +:100AF00020256420256400000000000100FF0000A4 +:100B0000000001FF000000FF0000000100FF0001E5 +:100B1000000000000101000000010000000100FFD2 +:100B200000FF00000000FF01000000FF000000FFC8 +:100B30000001000100000000FFFF000000010000B4 +:100B400000FF8001302480013278800132C88001AA +:100B500032C8000000008001331C0000000080014A +:100B600034D400000000800130248001340880016A +:100B70003480000000000000000000000000004F72 +:100B8000AF001302F1EC560401EA0000800101EB12 +:100B9000000100002295010D02F1EC560300000057 +:100BA0000100000000000000000000000000000044 +:100BB0000000000000000000000000000000000035 +:100BC000000000000000000000004753462D3600E2 +:100BD00000004753462D370000004753462D38008C +:100BE00000004753462D390000004753462D313051 +:100BF0000000534D414320256420256420256400D6 +:100C00000000534D41202564202564202564000008 +:100C10000000534D524320256420256420256400A4 +:100C20000000534D522025642025642025640000D7 +:100C3000000000000000000000003FE0C152382D1D +:100C400073663FF921FB54442D183FF0C152382DF3 +:100C500073663FF921FB54442D184000C152382DD2 +:100C60007366400921FB54442D184004F1A6C63890 +:100C7000D03F0000000000000028000000700000CD +:100C80000050000000600000008F000000500000D5 +:100C900003E8000000104C50533235485F55706433 +:100CA00061740052AB001302F1EC560401EB00003A +:100CB000800101EC0001000036BD010D02F1EC568F +:100CC000030000000100654F445200000000800155 +:100CD0000334800103CC8001050080010578000009 +:100CE0000000800105EC0000000080010740800149 +:100CF00007D88001977C800197DC8001983C8001B7 +:100D00009858000000008001987400000000000066 +:100D10000000000000008001A3888001A3C08001C2 +:100D2000A3F08001A428000000008001A46400005A +:100D300000000000000000000000800108008001A9 +:100D400008E880010A8C80010B1800000000800177 +:100D50000B7C80010BC80000000000000000800137 +:100D60009B4880019B5080019B5880019B608001C3 +:100D70009B6480019B68000000008001D9B880015D +:100D8000D9B480006AF080006C6080006C788000CC +:100D90006C940000000080006D7C0000000080006A +:100DA0006EF880006C98800070D4800071BC800068 +:100DB00072588000728000000000800072A800005D +:100DC000000080007CC800E2EF001302F1EC560442 +:100DD00001EC0000800101ED000100005C05010D47 +:100DE00002F1EC5603000000010000000000800149 +:100DF0009448800194B4800194CC000000008001EC +:100E000093588001936000000000800194D000009E +:100E100000000004000800100020003000400060C6 +:100E2000008000C0010001800200030004000800EF +:100E300000000000000050524F0050726F7869535C +:100E400065743D25640050726F78695265670000D3 +:100E500000005354256420530000535420536B6901 +:100E600070005354256420460000535425642043E9 +:100E700000005031005032000000505550005043E7 +:100E80004B0050535431202564005055503200001F +:100E90000000000000000000000000000000000052 +:100EA00000000000000053542050726F783D25640C +:100EB0000000436865636B4C696768744C75782003 +:100EC00053746F70000053746F70204661696C003A +:100ED0000000537461727420436865636B4C6967EA +:100EE00068744C757800537461720043D300130228 +:100EF000F1EC560401ED0000800101EE000100005C +:100F0000C9CE010D02F1EC5603000000010074206F +:100F10004661696C00004779726F2054656D7020DE +:100F200053746F70000053746F70204661696C00D9 +:100F300000005374617274204779726F2054656D9C +:100F400070005374617274204661696C0000414CFA +:100F5000204558000000414C25642025642025646C +:100F600020256420256400000000524C20455800D4 +:100F70000000524C2564202564202564202564202F +:100F800025640000000053544D2D520000004745D9 +:100F90002025642C2025642C2025642C2025640029 +:100FA0000000000000000000000000000000000041 +:100FB0000000000000004745205354450000000099 +:100FC000000041494F00494F452D31000000494F75 +:100FD000452D32000000000000004C5053323548CF +:100FE0005F496E69740042522D52460000004C5316 +:100FF000302D524631004C53302D5246320052466D +:10100000203200000000000000000000000000246A +:1010100059001302F1EC560401EE0000800101EFCB +:10102000000100007675010D02F1EC56030000008E +:101030000100414620300000000041462031000000 +:101040000000000000000000000047454F00474539 +:10105000204F46000000472025642C2025642C20CA +:1010600025642C2025640000000000000010000012 +:1010700000080000000400000002000000014368B6 +:1010800065636B4C696768744C757820496E697448 +:101090000000000000005354302D31000000535474 +:1010A000302D320000004558205044524D4D204311 +:1010B00032202564000000000000000000004C7594 +:1010C0007843000000004558205044524D4D2043C5 +:1010D00033202564000054482D5246320000544805 +:1010E0002D5246310000524D2025642025642025D4 +:1010F000642025640000000000004149430049438A +:10110000452D310000004549433220540000454937 +:1011100043322D53000050443A496E504654303902 +:10112000323200000000414420256420256420253F +:101130006420002E57001302F1EC560401EF00006A +:10114000800101F000010000661D010D02F1EC5666 +:10115000030000000100256400000000000041437E +:101160002D5745000000414B430000000000414F57 +:101170002D5745000000414B4F0045582050445228 +:101180004D4D204331202564000050443A205374D3 +:101190006172745065646F0000004779726F20546B +:1011A000656D7020496E697400004C53332D5246B2 +:1011B000310052462032000000006E616E004E4148 +:1011C0004E00696E6600494E4600000000000000B7 +:1011D0000000000000000000000000000000000C03 +:1011E00035000000000C0000000049574520256430 +:1011F0002025640000004952452025642025640014 +:10120000000049524F45202564202564000000005D +:10121000000042522D43460000000000035200002F +:1012200002EE000002EE00000000000000000000DE +:101230000000000000004746203100000000495235 +:101240002025642C25640000000050443A7074206E +:101250002564000000000054C7001302F1EC56049E +:1012600001F00000800101F10001000072A0010DF9 +:1012700002F1EC56030000000100534F312030789A +:101280002578200000005445524D20256420256417 +:101290000000474520435520256400000000534DC1 +:1012A00052412025642025640000000000004765AD +:1012B0007374526567000000000000061A80180071 +:1012C0000000474D2D494F46202564000000436C27 +:1012D0006F7365202564202564004F70656E20259E +:1012E000642025640000474D2D52463120256400BE +:1012F00000004C4D43505320312025640000474DE1 +:101300002D524632202564000000496E69740000A9 +:10131000000053746F700000000053746172740019 +:1013200000004A415254203200004558542D5300C9 +:101330000000686A6C747A4C0000542D4558000017 +:10134000000000000000000000000000000000009D +:1013500000000E890F83107D11775254432D5300E6 +:1013600000001501140111052404140115010401E4 +:10137000050650522D524631000000676D00B7023D +:10138000F1EC560401F10000800101F200010003BC +:10139000000000009E474D2D52463100005341444D +:1013A000202564200000000000505243000000008F +:1013B000000000000047532D52463100000000009D +:1013C000000000000053544D2D4200000053544DC6 +:1013D0002D4900000053544D2D41000000474D2D74 +:1013E0005046310000000000004745430054482D9E +:1013F0005046310000000000000000000000000026 +:101400000000000000474D2D504632000053414976 +:1014100000000000000000000000000000000000CC +:10142000000000000001000000000001007F7F7F3D +:10143000000100009B04007902F1EC56030000A0BB +:101440000060000006C0000006C0000047F08001F8 +:10145000F2B800000008000006B8FFFFFFC400005B +:10146000003CFFFFFFC40000003CFFFFFFC4000082 +:10147000003CFFFFFFC40000003CFFFFFFFFFFFF39 +:10148000FFFF00000000000000000000000000005E +:10149000000000000000000000000000000000004C +:1014A0007FFF0401F20000800101F30001000062EF +:1014B0003A010D02F1EC5603000000010000000C9F +:1014C000CC00000147000000000000000300000005 +:1014D000000000000000000001000000000033F2E6 +:1014E000FF0000707070700000010000000506072A +:1014F00008090A0B0E0C0D00000853923C00010075 +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000100000BB +:10152000003F6666663F4CCCCD0000000000000026 +:1015300001000000010000000100000001000000A7 +:101540000001010000003C00000001000500000057 +:10155000000000010000000000000000000000008A +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:10158000000000000000000000000000000000005B +:10159000000000000000000000000000000000004B +:1015A00000012C000000000000000000000000000E +:1015B0000000000000000000000000000000A74E36 +:1015C000001302F1EC560401F30000800101F40065 +:1015D0000100004CF8010D02F1EC5603000000017F +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000000000000000000000EB +:1016000000000000000000000000000000000000DA +:1016100000000000000000000000000000000000CA +:1016200000000000000000000000000000000000BA +:1016300000000000000000000000000000000000AA +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000000000008A +:10166000000000000000000000000000000000007A +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:10169000000000000000000000000000000000004A +:1016A0000100010000000000000000000000000038 +:1016B000000000000000000000000000000000002A +:1016C0000100000000000000000000000000000019 +:1016D000000000000000000000000000000000000A +:1016E0000000ADB4001302F1EC560401F4000080D8 +:1016F0000101F5000100002640010D02F1EC560346 +:1017000000000001000000000000000000000000D8 +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000000000000000000000000000A9 +:101740000000000000000000000000000000000099 +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:101780000000000000000000000000000000000059 +:101790000000000000000000020002000000000045 +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000010000000200000026 +:1017C0000000000000000000000000000000000019 +:1017D00047000000000000000000000000000000C2 +:1017E00001000000100000000000000000000000E8 +:1017F00000000000000000000000000001000000E8 +:10180000C800000004003250001302F1EC5604013D +:10181000F50000800101F600010000B38B010D020C +:10182000F1EC560300000001000000000000000081 +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:101850000000000000000000000000000000000088 +:101860000000000000000000000000000000000078 +:101870000000000000000000000000000000000068 +:101880000000000000000000000000000000000058 +:101890000300000000000000000000000000000045 +:1018A0000000000000000000000000000000000038 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D0000000000000000000000000000000000008 +:1018E00000000000000000000000000000000000F8 +:1018F00000000000000000000000000000000000E8 +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:1019200000000000000000000000AA27001302F1E0 +:10193000EC560401F60000800101F7000100000CE4 +:1019400030010D02F1EC5603000000010000000020 +:101950000000000000000000000000000000000087 +:101960000000000000000000000000000000000077 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:101990000000000000000000000000000000000047 +:1019A0000001000000000000010100000000000034 +:1019B0000200000000000000000000000000000025 +:1019C0000001000000000000020000000000000014 +:1019D0000000000000000000000000000000000007 +:1019E000000100000000000000000000003FC99955 +:1019F000999999999A3FE33333333333333FE999D4 +:101A0000999999999A3FF3333333333333400333FE +:101A100033333333333FE333333333333300000073 +:101A200000000000000000000000000000000000B6 +:101A300000000000000000000A0000000700000095 +:101A40000700000005000000140000020000EA1377 +:101A5000001302F1EC560401F70000800101F800C8 +:101A60000100009BDB010D02F1EC560300000001B8 +:101A7000000000000100000001E0071F000000005E +:101A800000000000020000000000000000609C78E0 +:101A900066805DEFC831FF000080016BC40000006C +:101AA0000003000000000000000000000000000033 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD0000000000000000000000000000000000006 +:101AE00000000005C400000000000000000000002D +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B200000000000000000000000000000000000B5 +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B60000000000000000000000000000000000075 +:101B70000000D8F500C902F1EC560401F80000801D +:101B80000101F900010003000000007000000000E6 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000000F5 +:101BF0000000000000000000000000000401F900E7 +:101C000000800101FA0001000101FB000100010157 +:101C1000FC0001000101FD0001000101FE000100C6 +:101C20000101FF000100030000FC0004DB5A4A66CA +:0F1C30000401FF000080070027064D8E00BDD97C +:00000001FF diff --git a/firmware/ssp_rev03.fw.ihex b/firmware/ssp_rev03.fw.ihex index a5d84d3bd78d..eca0b233fc92 100755 --- a/firmware/ssp_rev03.fw.ihex +++ b/firmware/ssp_rev03.fw.ihex @@ -1,79 +1,79 @@ :10000000000D02F1EC5601002000010000E7F901AB :100010000D02F1EC56030000000100482D483FD7C7 -:10002000030000000080008001D3F8EBCD40E01811 -:100030009730565907C235E0654150EA150000ED8A +:10002000030000000080008001D4D8EBCD40E01830 +:100030009730565907C235E065414CEA150000ED8E :10004000B70000C0C2301CAADCAAEC30CCAAFC0A63 -:100050009C2F8CE0A0B8B618962F8630CCE0A0B8C4 -:1000600037FE360005EB5601F45C86F9D6B010A9D0 +:100050009C2F8CE0A0B8E818962F8630CCE0A0B892 +:1000600069FE360005EB5601F45C86F9D6B010A99E :100070004CAA8CAA96AAA7AABCAAC6E3CF90E080F5 -:100080000191A4800190B0D401E0A03267E06B310F -:1000900050EA1B00002B7C198CB68C169CD802E011 -:1000A0006C3150EA1C0000E06B00C8B88B333BB8E1 -:1000B0009BE06B00F4B8AB5EFC0000EBCD40801819 -:1000C000975807C031E3CF8080E0A0DC31300BC00F +:1000800001920880019114D401E0A03267E06B3145 +:100090004CEA1B00002B7C198CB68C169CD802E015 +:1000A0006C314CEA1C0000E06B00D6B88BE06B00B2 +:1000B000E0B89B334BB8AB5EFC0000EBCD40801842 +:1000C000975807C031E3CF8080E0A0DC67300BC0D9 :1000D00098EE0B070AF80B00092849B28A2FFB5C3F :1000E0005B584BCF75E3CF90800000EBCD40E02014 -:1000F0001D1896300CBA8CE0A0DC1A189530075801 +:1000F0001D1896300CBA8CE0A0DC501895300758CB :1001000006C031300CC1E8E0A032282C0C988CEDF0 -:10011000BC0005C033301CC1580D8C009A940013EC +:10011000BC0005C033301CC1580D8C007E8200131A :1001200002F1EC56040020000080010021000100D3 :1001300000CB7A010D02F1EC56030000000100EB48 :100140006C00800D9CEB6C0081301B1A9CE06A43B4 -:10015000E0EA1A0000745A74BA746A5D1AC020305A +:10015000DCEA1A0000745A74BA746A5D1AC020305E :10016000170E9C5C5C2FFDE3CD80E0D401201D1AAE :100170009B300AB68AB69AB6AA580CC031300CC168 :1001800038198BBA8B199BBA9B19ACBAAC303A1A96 -:100190009B301CE06943E0EA190000722972B972D1 +:100190009B301CE06943DCEA190000722972B972D5 :1001A000895D19301C2FFDD8020000D401201D1AD2 :1001B0009C300BB88BB89BB8AB303A1A9B300CE034 -:1001C0006943E0EA190000722972B972895D19E089 -:1001D0006C3150EA1C00001B8BB88B1B9BB89B1B1F +:1001C0006943DCEA190000722972B972895D19E08D +:1001D0006C314CEA1C00001B8BB88B1B9BB89B1B23 :1001E000ABB8AB2FFDD802EBCD4080201D300BBA51 -:1001F0008B198CBA8CE06C43E0EA1C000078476EE7 +:1001F0008B198CBA8CE06C43DCEA1C000078476EEB :10020000BC782C5D1CC031300CC0D8301A1A9B3021 :100210005C6EB972895D19CF806EBC781C5D1CCF95 :1002200040301C2FFDE3CD80800000EBCD408018D6 -:10023000975807C031E3CF8080E0A0DB8B0F8B00A5 -:10024000F214001302F1EC560400210000800100BA +:10023000975807C031E3CF8080E0A0DBC10F8B006F +:100240001C3A001302F1EC5604002100008001006A :1002500022000100005EB1010D02F1EC5603000026 :10026000000100F96B0082F93C0082580CC060323A -:100270002CE0A03529E3CF9080E06B43E0EA1B003F +:100270002CE0A03529E3CF9080E06B43DCEA1B0043 :1002800000765C199A768C199C180A764C199C1881 :100290000A5C5AC041322CE0A03526E3CF90808022 :1002A000008C6080008C80D401E0A0317BE06B3159 -:1002B00050EA1B0000F91A0040A94AB68A2C0C9893 +:1002B0004CEA1B0000F91A0040A94AB68A2C0C9897 :1002C0008CB69C169CD802D63130073006300530EB -:1002D000043003E0604349EA100000300CA08CE0D9 -:1002E000A0DB4A1892FB2C0007E0A0635FC080E00F +:1002D000043003E0604345EA100000300CA08CE0DD +:1002E000A0DB801892FB2C0007E0A06353C080E0E5 :1002F0006C00C8C7CC3C8CA08C3C87C338CB5CC09E -:10030000213016FB2C0007E0A07CCA1891E56100A3 -:1003100064E51C005E580CC060FB2C0007E0A0C226 -:10032000DB1893658C580CC060FB2C0007E0A063C1 -:1003300055189529A2848C580CC040E0A06F141861 +:10030000213016FB2C0007E0A07CBE1891E56100AF +:1003100064E51C005E580CC060FB2C0007E0A0C325 +:100320000D1893658C580CC060FB2C0007E0A0638F +:1003300049189529A2848C580CC040E0A06F081879 :10034000945C61C0915C64C0715C65C0515C66C0C6 :10035000315C63C070E06C00C4C49C3C473C4CA062 -:100360008C0E9C00234B001302F1EC56040022007B +:100360008C0E9C004961001302F1EC56040022003F :10037000008001002300010000E10A010D02F1EC00 -:10038000560300000001005C6CDC328000E9448010 -:10039000011C388001A8708000E97480010100EB25 -:1003A000CD4080E0A0DAFA1897EF1C005E580CC030 -:1003B00030E0A0634F6F8C580CC030E0A0634A2936 -:1003C000A78E8C580CC030E0A06F00E0A0325CE03B +:10038000560300000001005C6CDC328000E92C8028 +:10039000011C208001A8D48000E95C800100E8EB0A +:1003A000CD4080E0A0DB301897EF1C005E580CC0F9 +:1003B00030E0A063436F8C580CC030E0A0633E294E +:1003C000A78E8C580CC030E0A06EF4E0A0325CE048 :1003D000A03552581CC061E0A03554300CE0A03567 -:1003E00041E3CF8080D7038000E9C88001014080CD +:1003E00041E3CF8080D7038000E9B08001012880FD :1003F0000087FC80008DEC80008DF880008DD8E0B7 -:100400006B4346EA1B0000F72C00005EFC0000E096 -:100410006B4347EA1B0000E04C00CFC071178AF421 +:100400006B4342EA1B0000F72C00005EFC0000E09A +:100410006B4343EA1B0000E04C00CFC071178AF425 :10042000091518C030B69AC038300AB69AB68C5E34 -:10043000FD0000E06C4347EA1C0000198C5EFCD410 -:1004400001E0A00BCBCADFD80A0000EBCD40C0E032 -:10045000673150EA1700003006EF6600FCE0A007A5 +:10043000FD0000E06C4343EA1C0000198C5EFCD414 +:1004400001E0A00BEDCADFD80A0000EBCD40C0E010 +:1004500067314CEA1700003006EF6600FCE0A007A9 :1004600093C071AE96E06C00C4AE8CEF6600FCEFFA :100470006600FDEF6600FEEF660100EF6600FFEF2D -:100480006601010E9CE3CD005572001302F1EC569B +:100480006601010E9CE3CD006704001302F1EC56F7 :1004900004002300008001002400010000F5220177 :1004A0000D02F1EC5603000000010080C00000E0E6 -:1004B0006C3150EA1C0000F93B00FD580B5E1DF941 +:1004B0006C314CEA1C0000F93B00FD580B5E1DF945 :1004C0003B0100580B5E1DF93B00FF580B5E1DF908 :1004D0003B0101580B5E1DF93C00FE580C5E1D5E91 :1004E000FF0000EBCD40F8201D189616975806C067 @@ -81,14 +81,14 @@ :1005000038E60C000B17CBE93A00FCE80A0B0BE9C4 :100510003B00FC2FFBE96B00FC2FFC5C6C581CCFF4 :10052000152FF55C650E35E084073BEA0310680C77 -:1005300003E0643150EA140000078CE93B00FCE85A +:1005300003E064314CEA140000078CE93B00FCE85E :100540000B0B0CE93C00FC2FFCE96C00FC078C5801 :100550005CF9BC0205FE0C001C984C180F000E053F :10056000F40CBE05B60518FF9C07ACE93B00FCE89F :100570000B0B0CE93C00FC2FFCE96C00FC07AC58B1 :100580009CF9BC0209FE0C001C984C180F001600C8 :1005900096011601960202038A047A03B60462FFEA -:1005A0006C862CA94CE93B00FCE80B00AF3600132D +:1005A0006C862CA94CE93B00FCE80B00DC2F001307 :1005B00002F1EC5604002400008001002500010037 :1005C000009F9A010D02F1EC560300000001000BA0 :1005D0000CE93C00FC2FFCE96C00FC862CE93B009C @@ -206,7 +206,7 @@ :100CD0007207ACE93B00FCE80B0B0CE93C00FC2F75 :100CE000FCE96C00FC079C583CC13107CCE93B0097 :100CF000FCE80B0B0CE93C00FC2FFCE96C00FC074A -:100D0000CC500CE06CF074EA1C8001E0A02E0807C7 +:100D0000CC500CE06CF0E0EA1C8001E0A02E08075B :100D1000DCE93B00FCE80B0B0CE93C00FC2FFCE998 :100D20006C00FCE93C00FC080C07DBEDBB0007E0B5 :100D300083009BE73B0008B88BE93C00FC2FFCE9F3 @@ -216,7 +216,7 @@ :100D70000AE93B00FCE80B0B0CE93C00FC2FFCE90A :100D80006C00FCE71C0012A94CE93B00FCE80B0BD3 :100D90000CE93C00FC2FFCE96C00FCE71C0012E9AC -:100DA0003B00FCE80B0B0C00B499001302F1EC566D +:100DA0003B00FCE80B0B0C009D39001302F1EC56E4 :100DB00004002B00008001002C000100005CE20117 :100DC0000D02F1EC56030000000100E93C00FC2F8D :100DD000FCE96C00FCE73C0014E93B00FCE80B0B71 @@ -346,8 +346,8 @@ :10159000FC2FFCCEFB301C2FFDE3CD80F80000EBD0 :1015A000CD40E000D96D001302F1EC56040032008A :1015B000008001003300010000328F010D02F1ECC8 -:1015C00056030000000100E0673150EA17000030C8 -:1015D0002CEF6C00FCE06633E8EA160000EF3B00FD +:1015C00056030000000100E067314CEA17000030CC +:1015D0002CEF6C00FCE06633E4EA160000EF3B0001 :1015E000FD0C9C298CFEB0F88D1895EF3B00FE0C8D :1015F0009CFE3CF980FEB0F8851845EF3B01000CDD :101600009CFEB0F87F1845EF3B00FF0C9CFE3CF7BA @@ -355,96 +355,96 @@ :101620009CFEB0F86F18455815C0F1EF3C00FCFE69 :101630003CFF02EF6C00FCEF3C00FCAE9CE06C0059 :10164000C4AE8CE3CF90E0300CEF6C00FCE3CF80B5 -:10165000E00000E06C4150EA1C0000E06B00C8B8FC +:10165000E00000E06C414CEA1C0000E06B00C8B800 :101660008B311BB89B5EFCD401FEB0F637E06C41B9 -:1016700050EA1C0000D802300CE06B4150EA1B001D +:101670004CEA1C0000D802300CE06B414CEA1B0025 :1016800000F75C01F45EFFEBCD4080201D1A9B301B :101690000AB68AB69AB6AA590CC065CE6F1897CE0C -:1016A000CF0E9CC1C8581CC1911A9CE0A0D1F0E09B -:1016B0006C3150EA1C00001B8BB8DB1B9BB8EB1B8A -:1016C000ABB8FB304BF96B00696E001302F1EC56BE +:1016A000CF0E9CC1C8581CC1911A9CE0A0D232E058 +:1016B0006C314CEA1C00001B8BB8DB1B9BB8EB1B8E +:1016C000ABB8FB304BF96B00C08C001302F1EC5649 :1016D0000400330000800100340001000026A7014F :1016E0000D02F1EC5603000000010000FC300AB8C6 :1016F0008AB89B3019B8A9B8BAB8CBC028300C2F1B -:10170000FDE3CD8080D7038001D7C4D431217D187B +:10170000FDE3CD8080D7038001D848D431217D18F6 :101710009716905807C040E00C1518C041300CE0F7 -:101720008F036AE0A02882516C30033006FB56001C +:101720008F0389E0A02882516C30033006FB5600FD :1017300054FB66002D30A5FB65002EFB660030FBD8 -:10174000660031E06133E4EA110000A2863004C093 +:10174000660031E06133E0EA110000A2863004C097 :1017500068A2963013038C2FFCA28CE0041800E0E2 -:101760008203485C54EE04070CE0623254EA120033 +:101760008203675C54EE04070CE0623250EA120018 :1017700000038BF60910280409B28C2FF4E04C000A :10178000A1C4915C54EE04070CB29C2FF45C54EE9F :1017900004070CB2CC2FF45C54EE04070CB2DC2F1F :1017A000F4139C58BCC0B51A9C328A130B18AB209A -:1017B0004ACFD1E0A0B6381893CCEB13CB5C6B13B7 -:1017C0009C5C6CE0A073F41893038CF80C10281840 +:1017B0004ACFD1E0A0B66A1893CCEB13CB5C6B1385 +:1017C0009C5C6CE0A073E81893038CF80C1028184C :1017D00002059C585CCC01300CFB6C002C311CFBCE -:1017E0006C002DFACCFFD02FC2324A008B9200132E +:1017E0006C002DFACCFFD02FC2324A001DB7001377 :1017F00002F1EC56040034000080010035000100C5 :10180000004C1F010D02F1EC560300000001000521 :101810000B18AB204ACFD1FB65002EFB560054FAC3 :10182000CCFFD41A9B32C9190A16AA2049CFD1E09D -:10183000A004661893CA2BE04C00A2C4A15C54EE2D +:10183000A09FE21893CA2BE04C00A2C4A15C54EE16 :1018400004070CB29C2FF45C54EE04070CB2CC2FAE :10185000F45C54EE04070CB2DC2FF4139C58BCC0AB :10186000B51A9C328A130B18AB204ACFD1E0A0B630 -:10187000631893C83B13CB5C6B139C5C6CE0A07348 -:10188000B11893038CF80C10281802059C585CFEC4 +:10187000951893C83B13CB5C6B139C5C6CE0A07316 +:10188000A51893038CF80C10281802059C585CFED0 :1018900091FF75301CFB6C002C311CFB6C002DFA89 :1018A000CCFFD02FC2324A050B18AB204ACFD1FB58 :1018B00065002EFB560054FACCFFD41A9B32C9198E -:1018C0000A16AA2049CFD1E0A0041A1893C56BE0EC +:1018C0000A16AA2049CFD1E0A09F961893C56BE0D5 :1018D0004C00A4C1D15C54EE04070CB29C2FF45C04 :1018E00054EE04070CB2CC2FF45C54EE04070CB297 :1018F000DC2FF4139C58BCC0353013C3FB13CB5CF6 -:101900006B139C5C6CE0A073751893C37BE04C0078 -:10191000D465001302F1EC5604003500008001008C +:101900006B139C5C6CE0A073691893C37BE04C0084 +:101910000C84001302F1EC56040035000080010035 :101920003600010000D9D4010D02F1EC560300008D :1019300000010000A8C2815C54EE04070CB29C2F89 :10194000F45C54EE04070CB2CC2FF45C54EE0407A4 -:101950000CB2DC2FF4139C500CE06CF188EA1C8074 +:101950000CB2DC2FF4139C500CE06CF1F4EA1C8008 :1019600001E0A028A3038CF80C1028180205CB0571 -:101970009C5C6CE0A061081893F7D3C008416CE050 +:101970009C5C6CE0A060FC1893F7D3C008416CE05D :10198000A02B9CC0DBE04C00B8C2F15C54EE04001C :101990000C198CB29C2FF45C54EE04000B583C17CD :1019A0008CC141F36C00082FF4581CC0D15C54EE7C -:1019B00004000B178C2F79B28C2FF45C6CE0A00321 -:1019C000973013CEDA3003CEBAB2CC2FF45C54EE9B +:1019B00004000B178C2F79B28C2FF45C6CE0A09F85 +:1019C000133013CEDA3003CEBAB2CC2FF45C54EE1F :1019D00004070CB2DC2FF413CB5C6B139C5C6CE043 -:1019E000A05AB01893CDCAE04C00C1E08100D05C91 +:1019E000A05AA41893CDCAE04C00C1E08100D05C9D :1019F00054EE04000C198CB29C2FF458ECC2213028 :101A0000ECB2CC5C54EE04070CF36C00082FF45CD1 :101A100054EE04070CF36C00092FF45C54EE040739 :101A20000AF36A000A2FF45C6AF33B00095C6B2F2F -:101A300089138C00B251001302F1EC5604003600F9 +:101A300089138C003289001302F1EC560400360041 :101A4000008001003700010000666F010D02F1EC1B -:101A5000560300000001005C6CE0A0D079E0A00318 -:101A6000533013CAFA592CC281312CB2CC5C54EEDB +:101A5000560300000001005C6CE0A0D0AFE0A09E47 +:101A6000CF3013CAFA592CC281312CB2CC5C54EE5F :101A700004070CF36C00082FF4306CFB6C002C1383 :101A80009CFB6C002DFACCFFD02FC9324A130B18E7 :101A9000AB204ACFD130BCFB6C002EFB560054FA71 :101AA000CCFFD41A9B32C9190A16AA2049CFD1E01B -:101AB000A0034A1893C86A593CC281313CB2CC5C3D +:101AB000A09EC61893C86A593CC281313CB2CC5C26 :101AC00054EE04070CF36C00092FF4306CFB6C002F :101AD0002C139CFB6C002DFACCFFD02FC9324A137B :101AE0000B18AB204ACFD130BCFB6C002EFB56004C :101AF00054FACCFFD41A9B32C9190A16AA2049CF2E -:101B0000D1E0A003211893C5DA594CC281314CB2FF +:101B0000D1E0A09E9D1893C5DA594CC281314CB2E8 :101B1000CC5C54EE04070CF36C000A2FF4306CFB21 :101B20006C002C139CFB6C002DFACCFFD02FC9321B :101B30004A130B18AB204ACFD130BCFB6C002EFBF4 :101B4000560054FACCFFD41A9B32C9190A16AA209F -:101B500049CFD1E0A002F8005092001302F1EC56F8 +:101B500049CFD1E0A09E740069AA001302F1EC56AF :101B600004003700008001003800010000F184010A :101B70000D02F1EC560300000001001893C34A590E :101B80005CFE91FF46315CB2CC5C54EE04070CF372 :101B90006C00082FF4306CFB6C002C139CFB6C0069 :101BA0002DFACCFFD02FC9324A130B18AB204ACFE5 :101BB000D130BCFB6C002EFB560054FACCFFD41A7B -:101BC0009B32C9190A16AA2049CFD1E0A002CE182B -:101BD00093C0AA138CE04C00B1E08101275C54EE65 -:101BE00004000C198CB29C2FF45C6CE0A054CE580D +:101BC0009B32C9190A16AA2049CFD1E0A09E4A1813 +:101BD00093C0AA138CE04C00B1E08101465C54EE46 +:101BE00004000C198CB29C2FF45C6CE0A054C25819 :101BF0001C038CF80C1028E08100E1040C199B58A0 :101C00003BC1415C54EE04070BF96B00082FF45CF8 :101C100054EE04070BF96B00092FF45C54EE040733 @@ -453,7 +453,7 @@ :101C4000F4B84B5C54EE04070BA96B2FF45C54EE14 :101C500004070A140B2FF4B85B5C54EE04070BA9BD :101C60006B2FF45C54EE04070A140B2FF4B86B5C72 -:101C700054EE04070B2F2CB88B2FF400C93B001334 +:101C700054EE04070B2F2CB88B2FF400E2D4001382 :101C800002F1EC5604003800008001003900010028 :101C900000B13F010D02F1EC56030000000100CA43 :101CA000A8581BC7515C54EE04000B178AF96A0050 @@ -483,105 +483,105 @@ :101E20009C199B585BC200300AFB6A002CFB6B00BC :101E30002DFACBFFD02FCC3249190A16AA2049CF50 :101E4000D130BCFB6C002EFB560054FACCFFD41AE8 -:101E50009B32C9190A16AA2049CFD1E0A001AA18BD -:101E600093FE9FFCE6301CA29C3013FE9FFCE1E039 -:101E70004C00B2FE91FCDD5C54EE04070CB29C2FCA -:101E8000F45C54EE04070CB2CC2FF45C54EE04075F -:101E90000CB2DC2FF4139C585CFE90FCC8301BFB8A -:101EA0006B002CFB6C002D30BCFB6C002EFACCFFC1 -:101EB000D41A9B32C9190A16AA2049CFD1E0A00131 -:101EC00079189300F6D8001302F1EC5604003A009A +:101E50009B32C9190A16AA2049CFD1E0A09D2618A5 +:101E600093FE9FFCE6E0A0254DE0A02917581CC179 +:101E7000A1300CFB6C002C305CFB6C002DFB660071 +:101E800030FB66003130BCFB6C002EFB560054FA70 +:101E9000CCFFD41A9B32C9190A16AA2049CFD1E027 +:101EA000A09D04301CA29C3013FE9FFCC2E04C009D +:101EB000B2FE91FCBE5C54EE04070CB29C2FF45CA5 +:101EC00054EE0400C7C0001302F1EC5604003A00BF :101ED000008001003B000100009B4F010D02F1EC6E -:101EE00056030000000100FE9FFCB5069C5C5C2EC2 -:101EF0009DD8328001A13880011CC08001A22480BD -:101F0000011CD080011CE0800087748000F85080A4 -:101F1000008D8480003DB88000EC0C8001D7F480F7 -:101F2000003DAC8000E20C80003DECE06C33E4EA64 -:101F30001C0000199C5EFCD421E0A0CEDF1897E0C5 -:101F4000A024F2189630053004EF2C0064580CC021 -:101F5000E0E06B3150EA1B0000FE3BFF03E06C3316 -:101F6000E8EA1C0000298CE0A09A3EEF1C005E58B5 -:101F70000CC0F0E06B3150EA1B0000FE3BFF02E0BA -:101F80006C33E8EA1C0000FE3CF980E0A0B6B8ED36 -:101F90003C0056581CC235E06C3150EA1C0000E091 -:101FA0006A33E8EA1A0000F93B0100F60B106814E6 -:101FB0000B303AB68AED3A0056B6AAED3A00562AE8 -:101FC000962FCB1698580AC0500D39201A10C9CF39 -:101FD000D1301BF96B0100C0282FF45C6458A4C0F9 -:101FE000A4E06C434CEA1C00BCBD001302F1EC56AB +:101EE00056030000000100070CB2CC2FF45C54EE46 +:101EF00004070CB2DC2FF4139C585CFE90FCA93054 +:101F00001BFB6B002CFB6C002D30BCFB6C002EFA15 +:101F1000CCFFD41A9B32C9190A16AA2049CFD1E0A6 +:101F2000A09CD61893FE9FFC96069C5C5C2E9DD8C8 +:101F300032D7038001A19C80011CA88001A2888067 +:101F4000011CB880011CC8800087748000F83880AC +:101F5000008D84800174B08000EBF48001D8608033 +:101F60000174A48000E1F480008CD4800174E4E06A +:101F70006C33E0EA1C0000199C5EFCD421E0A0CE8A +:101F8000F31897E0A024D0189630053004EF2C0009 +:101F900064580CC0E0E06B314CEA1B0000FE3BFFD4 +:101FA00003E06C33E4EA1C0000298CE0A09A26EFE1 +:101FB0001C005E580CC0F0E06B314CEA1B0000FEC8 +:101FC0003BFF02E06C33E4EA1C0000FE3CF980E0D9 +:101FD000A0B6C8ED3C0056581CC235E06C314CEA46 +:101FE0001C0000E06A33E400A1B3001302F1EC56D8 :101FF00004003B00008001003C000100008F6701ED -:102000000D02F1EC560300000001000000F8040688 -:102010000B581BCF5130155C655815C0F5E06B317E -:1020200050EA1B0000FE3BFF01E06C33E8EA1C00B5 -:1020300000FE3CF710E0A062A16F8C580CC0F0E0ED -:102040006B3150EA1B0000FE3BFEFFE06C33E8EA18 -:102050001C0000FE3CF6A8E0A0576ED82AD70380EB -:1020600001D9108000853C80016FFC8001A914809B -:1020700001016C8000EB28EBCD40FC203D16921452 -:10208000963017F80B1518C341E06C2C6CEA1C0055 -:1020900000EC0515051805301CF80209448ABC0837 -:1020A0006CC0D08AB3FAE300045006E06CEAD0EAD0 -:1020B0001C8001E0A02566302CC528301AEB2B00CF -:1020C00002F9D2B008E0A0A2FFC1108ABB049AFABC -:1020D000EB00045006E06CEAD0EA1C80012F0CE013 -:1020E000A025508ABC1844AA34C388302CC3885811 -:1020F0001CC341E06C2C6CEA1C0000EC05150518B3 -:1021000005301CF80209448ABC086C001AA90013A7 +:102000000D02F1EC56030000000100EA1A0000F98D +:102010003B0100F60B1068140B303AB68AED3A001B +:1020200056B6AAED3A00562A962FCB1698580AC0F3 +:10203000500D39201A10C9CFD1301BF96B0100C0E7 +:10204000282FF45C6458A4C0A4E06C4348EA1C0048 +:1020500000F804060B581BCF5130155C655815C0AD +:10206000F5E06B314CEA1B0000FE3BFF01E06C33F6 +:10207000E4EA1C0000FE3CF710E0A062736F8C588D +:102080000CC0F0E06B314CEA1B0000FE3BFEFFE0B1 +:102090006C33E4EA1C0000FE3CF6A8E0A05740D8F0 +:1020A0002AD7038001D97C8000853C800170108094 +:1020B00001A978800101548000EB10D401E06CF19B +:1020C0008CEA1C8001E0A0255DE06C00D0EA1C00D9 +:1020D00000300BB88BB8BB301AB8CAB8DAB8EBB856 +:1020E000FBB89BE0A024322C0C988CDA0A0000D4B8 +:1020F00001E06CF184EA1C8001E0A02543E0A0240B +:10210000252C0C988CEDBC0005C02300D58900134C :1021100002F1EC5604003C00008001003D0001008B -:1021200000E5DF010D02F1EC56030000000100C0E4 -:10213000E18AB3FAE300045006E06CEAD0EA1C80BE -:10214000012E0CE0A025303037C1A8301AEB2B004F -:1021500002F9D2B008E0A0A323C0E08ABB049AFA37 -:10216000EB00045006E06CEAD0EA1C80012D0CE084 -:10217000A0251AC02830378ABC088CAA3C0E9C5C6B -:102180006C2FDDE3CD80FC800182B88001836CD4AC -:1021900001E0A05763D8028000EC28D401216D3003 -:1021A0000AFB5A0054FB6A002D30A9FB69002EFB84 -:1021B0006A0030FB6A0031305AFB6A002CFB6C006D -:1021C0002DFB6B0030FACCFFD41A9B32C9190A16CA -:1021D000AA2049CFD1C23C2EADD80AD401E0A043F9 -:1021E00077D80A8000C49CD4015C5CE0A04386D808 -:1021F0000AD7038000C4C8300A599CC0D2E0692CB9 -:102200006CEA190000A57C120C98BCF80B0A4CA1D2 -:102210009CC022301A149C5C6C5EFCEBCD40E0202C -:10222000BD3017FB2B003C5C5B587BF9BB02070001 -:10223000E18B001302F1EC5604003D000080010028 +:1021200000E5DF010D02F1EC56030000000100DACA +:102130000AE06C00D0EA1C0000300BB88BB8BB3052 +:102140001AB8CAB8DAB8EBB8FB19AA581ACF11B83E +:10215000AB30EA308B301CE0A09B1E583CCE913057 +:102160003CD802EBCD40C0E06C43DCEA1C000078B8 +:102170004B179B785C19961606E0A023F92C0C9857 +:102180008CEDBC0005C033E3CF90C0E06700D0EA1F +:102190001700000FBC580CC051301CAEBCE3CF90F0 +:1021A000C00FAC5C56C090581CCEF1301CAECC3089 +:1021B0000CAEACE3CF90C05C5CC1610FCC581CC0CE +:1021C0008130EA308B301CE0A09AE6300CAECC3087 +:1021D000EA308B300CE0A09ADF582CCD60301CAE7A +:1021E000ACE3CF90C02FF7EF2C00005C5C187CC0F4 +:1021F00050202CC060E3CF90C0C0BCE3CF90C0C4DF +:102200004CE3CF90C0D7038000853C80017364EB22 +:10221000CD40E0202DE06C2C44EA1C0000780C2A14 +:102220008C9807E06500D0EA1500000BDC581C0014 +:102230000AA0001302F1EC5604003D0000800100EA :102240003E000100007014010D02F1EC5603000085 -:102250000001002FEBFE0B001FC088C318C448C646 -:10226000A8C898CB08CBA8CC48FB26003DFACCFFE9 -:10227000C01A9B3249190A16AA2049CFD1FB2B005C -:102280003EF9D6B008E0A0531F582CC0D10C9CE0FA -:10229000A0546E30075006E06CE958EA1C8001E05B -:1022A000A02494CB18583CE08100AF5006E06CE9C4 -:1022B00058EA1C80012F8CE0A02488CA58FB260015 -:1022C0003DFB2B003EF9D6B008E0A053AB583CE0F4 -:1022D00081009B5006E06CE958EA1C80012F0CE05D -:1022E000A02474C918FB1B0064FACCFFFCE0A054C6 -:1022F0005DFB2C0005582CC111FB2C0004E0A05400 -:10230000373007FB2B0004500BE06CE958EA1C80C7 -:10231000012E8CE0A0245AC778583CC751FB2B00F3 -:1023200004500BE06CE958EA1C80012E0CE0A0245C -:102330004DC6A8E0A0A842582CC101FB26003D0CC8 -:102340009CE0A0541530075006E06CE958EA1C8068 -:10235000012D8C004402001302F1EC5604003E00F3 +:10225000000100C0A1E047002EC074300CAADC30A1 +:102260001CCBBC300CCA9C8A460C37C1B5EB2C0089 +:10227000072FFCAAFCEB2C0007582CC155302CAAC8 +:102280009C300CAAFCBB17E06CF140EA1C8001E01A +:10229000A0249C33CCAA4C301CC9FC301CC8DCC028 +:1022A00038300CAAFC2FEDE3CF90E0EBCD40E020DE +:1022B0002DE06C2C44EA1C0000780C2A8C9807E076 +:1022C0006600D0EA160000E047002DC194ED2C0016 +:1022D000062FFCACECED2C0006582CC1353005ACBB +:1022E00095301CC7AC300CC68CACE58C46BB17E0F7 +:1022F0006CF14CEA1C8001E0A02468C038300CACC2 +:10230000EC2FEDE3CF90E0EBCD4080E06CF17CEA88 +:102310001C8001E0A0245AE0672C44EA170000E08A +:10232000A0CD5E8F1CE0A0CD558F0C300CE06B0073 +:10233000D0EA1B0000B69C6E1CE06B3CB0EA1B8030 +:1023400000F94B01C8E06B3CE4EA1B8000F94B014B +:10235000CCE06B0042AE001302F1EC5604003E00EC :10236000008001003F00010000CFAF010D02F1EC41 -:1023700056030000000100E0A0243AC578583CC58F -:1023800051FB2B003D500BE06CE958EA1C80012DFD -:102390000CE0A0242DC4A8FB26003D0C955855C187 -:1023A00031301CE0A09ABC582CC1410C9CE0A053D9 -:1023B000F130075005E06CE958EA1C80012C8CE0F4 -:1023C000A02416C3385825C311E0A0CBA3582CCEA7 -:1023D000E0583CC2B15005E06CE958EA1C80012C81 -:1023E0000CE0A02405C228FACCFFC41A9B32C919FC -:1023F0000A16AA2049CFD1E0A0545EC178FACCFFDA -:10240000C41A9B32C9190A16AA2049CFD1E0A0C824 -:10241000DFC0C8FB2B003D500BE06CE958EA1C8084 -:10242000012B8CE0A023E430070E9C5C6C2F5DE355 -:10243000CD80E08000E4708000E5CC8000E754802F -:10244000018F64800174A48000E7188001D6988011 -:1024500000E83C8001D15480008774301A189BF743 -:10246000DBC005F40B094AFE7B2C00A59CA97C1659 -:102470000CF94A00545EFD00233C001302F1EC56B7 +:10237000560300000001003D34EA1B8000F94B01C8 +:10238000D0E06B3F34EA1B8000F94B01D4E06B3F97 +:1023900090EA1B8000F94B01D8E3CF9080D70380EF +:1023A0000087748001D9888001D97CD401300BE08A +:1023B0006A2C44EA1A0000741AF53A01C1580AC09E +:1023C00021D80A5C6CC031C12C189B169C5C6CD85F +:1023D000020000D401300CC12CDA0A581C5F0CE05A +:1023E0006B2C4DEA1B0000B68C5EFDE06B2C4CEABA +:1023F0001B0000F72C00005EFC0000E06B2C4CEA98 +:102400001B0000B68C5EFDD401189A301C1789F2AF +:10241000091068F4090B0C1789F20910681409B245 +:102420009C30EC1789F20910681409B2ACE06C2CEE +:102430004DEA1C0000F9290000178CF80C106818F0 +:102440000AB4C9178C2FFCB68CCC5FD80A3000EBCD +:10245000CD4080E067EAB0EA1780010E9B300CE0C7 +:10246000A0B6062DC70E9B30ACE0A0B601E3CF802E +:1024700080D7038001ABF4008ED0001302F1EC563C :1024800004003F00008001004000010000CEC701B1 :102490000D02F1EC56030000000100D7F1C888D707 :1024A000F1C868D7F1C848D7F1C828D7F1C808D70C @@ -608,167 +608,167 @@ :1025F0000F1710D603301CF01F000A580CF80F17E5 :1026000010D603302CF01F0007580CF80F1710D607 :1026100003303CF01F0003580CF80F1710D603804E -:1026200001D460E06C4E68EA1C0000780C787BE016 -:102630006C4E68EA1C0000780C78AC166C189BE2B3 +:1026200001D470E06C4E64EA1C0000780C787BE00A +:102630006C4E64EA1C0000780C78AC166C189BE2B7 :102640001B0700580BC340E21C0300580CC0803F1E -:10265000CCE06B4E74EA1B0000970CC0783FECE0B6 -:102660006B4E74EA1B0000970CE06C4E68EA1C008D -:1026700000780C783CAFDCE06B4E68EA1B0000761B -:102680000B973C3FFCE06B4E68EA1B0000760B9713 -:10269000BC3FFCE06B4E68EA1B0000760B979C3059 -:1026A0000CE06B4E88EA1B0000B68CD603EDBC0034 -:1026B00000C312E06C4E68EA1C0000780C785C00E5 -:1026C0003735001302F1EC56040041000080010090 +:10265000CCE06B4E70EA1B0000970CC0783FECE0BA +:102660006B4E70EA1B0000970CE06C4E64EA1C0095 +:1026700000780C783CAFDCE06B4E64EA1B0000761F +:102680000B973C3FFCE06B4E64EA1B0000760B9717 +:10269000BC3FFCE06B4E64EA1B0000760B979C305D +:1026A0000CE06B4E84EA1B0000B68CD603EDBC0038 +:1026B00000C312E06C4E64EA1C0000780C785C00E9 +:1026C000E6C4001302F1EC56040041000080010052 :1026D000420001000037A0010D02F1EC560300009A -:1026E000000100E06B4E70EA1B0000760BB68CE038 -:1026F0006C4E70EA1C0000780B2FFB990BE06C4EBF -:102700007CEA1C0000780B201B990BE06C4E7CEAE5 +:1026E000000100E06B4E6CEA1B0000760BB68CE03C +:1026F0006C4E6CEA1C0000780B2FFB990BE06C4EC3 +:1027000078EA1C0000780B201B990BE06C4E78EAED :102710001C0000780C580CE081008C301CE06B4EE3 -:1027200068EA1B0000760B979C300CE06B4E88EA41 +:1027200064EA1B0000760B979C300CE06B4E84EA49 :102730001B0000B68CD603EDBC0004C1623EFCE079 -:102740006B4E68EA1B0000760B97BC3FFCE06B4EBB -:1027500068EA1B0000760B979C300CE06B4E88EA11 +:102740006B4E64EA1B0000760B97BC3FFCE06B4EBF +:1027500064EA1B0000760B979C300CE06B4E84EA19 :102760001B0000B68CD603EDBC0001C622E06C4E07 -:1027700078EA1C0000780C580CC161302CE06B4EDC -:1027800068EA1B0000760B979C310CE06B4E68EA00 -:102790001B0000760B978C300CE06B4E88EA1B0018 -:1027A00000B68CD603E06C4E6CEA1C0000780C1965 -:1027B0008CE06B4E6CEA1B0000760A2FFA970A5CDD -:1027C0005CE06B4E68EA1B0000760B976CE06C4E89 -:1027D00078EA1C0000780B201B990BE06C4E78EA1D -:1027E0001C000000103E001302F1EC5604004200F1 +:1027700074EA1C0000780C580CC161302CE06B4EE0 +:1027800064EA1B0000760B979C310CE06B4E64EA08 +:102790001B0000760B978C300CE06B4E84EA1B001C +:1027A00000B68CD603E06C4E68EA1C0000780C1969 +:1027B0008CE06B4E68EA1B0000760A2FFA970A5CE1 +:1027C0005CE06B4E64EA1B0000760B976CE06C4E8D +:1027D00074EA1C0000780B201B990BE06C4E74EA25 +:1027E0001C0000008B42001302F1EC560400420072 :1027F000008001004300010000881B010D02F1EC84 :1028000056030000000100780C580CC241E06C4EE9 -:1028100088EA1C0000198C580CC1D0300CE06B4EBB -:1028200088EA1B0000B68CE06C4E84EA1C0000783D -:102830000C784CE06B4E78EA1B0000970CE06C4E75 -:1028400084EA1C0000780C783CE06B4E6CEA1B00BC -:1028500000970CD6033000EBCD00C0E06C4E8CEA44 -:102860001C0000780C7867E06C4E8CEA1C00007845 +:1028100084EA1C0000198C580CC1D0300CE06B4EBF +:1028200084EA1B0000B68CE06C4E80EA1C00007845 +:102830000C784CE06B4E74EA1B0000970CE06C4E79 +:1028400080EA1C0000780C783CE06B4E68EA1B00C4 +:1028500000970CD6030000EBCD00C0E06C4E88EA78 +:102860001C0000780C7867E06C4E88EA1C00007849 :102870000C78960E660E9CE21C70C0580CC180FE4F -:102880006CFFFFE06B4E8CEA1B0000760B978C3FD1 -:10289000FCE06B4E8CEA1B0000760B97AC302CE012 -:1028A0006B4E90EA1B0000762B5D1BCA580C9CE017 +:102880006CFFFFE06B4E88EA1B0000760B978C3FD5 +:10289000FCE06B4E88EA1B0000760B97AC302CE016 +:1028A0006B4E8CEA1B0000762B5D1BCA580C9CE01B :1028B0001C0008E41C0040580CC1B0FE6CFFFFE097 -:1028C0006B4E8CEA1B0000760B97ACFE6CFFFFE0B2 -:1028D0006B4E8CEA1B0000760B978CEDB60003C0A4 -:1028E00082300CE06B4E90EA1B0000762B5D1BEDF6 -:1028F000B60010C3D2308CEA1C0040E06B4E8CEA6C -:102900001B0000760B97AC007798001302F1EC5691 +:1028C0006B4E88EA1B0000760B97ACFE6CFFFFE0B6 +:1028D0006B4E88EA1B0000760B978CEDB60003C0A8 +:1028E00082300CE06B4E8CEA1B0000762B5D1BEDFA +:1028F000B60010C3D2308CEA1C0040E06B4E88EA70 +:102900001B0000760B97AC003D3F001302F1EC5624 :10291000040043000080010044000100009C3301DA :102920000D02F1EC56030000000100E07C0000E025 -:102930006B4E8CEA1B0000760B97ACEDB70005C21E -:1029400012FC1C0080E06B4E8CEA1B0000760B979B -:10295000ACE06C70C8EA1C0080E06B4E8CEA1B0097 -:1029600000760B977CE06C4E90EA1C0000781C5DB2 -:102970001C5C5CE06B4E8CEA1B0000760B974CC035 -:1029800098E06C70C9E06B4E8CEA1B0000760B97E8 -:102990007CEDB60000C0E2E06C4E8CEA1C000078D2 -:1029A0000C783C5C5CE06B4E90EA1B0000F01B0076 +:102930006B4E88EA1B0000760B97ACEDB70005C222 +:1029400012FC1C0080E06B4E88EA1B0000760B979F +:10295000ACE06C70C8EA1C0080E06B4E88EA1B009B +:1029600000760B977CE06C4E8CEA1C0000781C5DB6 +:102970001C5C5CE06B4E88EA1B0000760B974CC039 +:1029800098E06C70C9E06B4E88EA1B0000760B97EC +:102990007CEDB60000C0E2E06C4E88EA1C000078D6 +:1029A0000C783C5C5CE06B4E8CEA1B0000F01B007A :1029B00000EDB60017C322EDB70008C1A2FC1C0051 -:1029C00080E06B4E8CEA1B0000760B978CFC1C00A1 -:1029D00080E06B4E8CEA1B0000760B97ACE06C013C -:1029E00000E06B4E8CEA1B0000760B97ACC168FCD4 -:1029F0001C0080E06B4E8CEA1B0000760B97ACE06D -:102A00006C4E90EA1C0000781C5D1C5C5CE06B4E18 -:102A10008CEA1B0000760B974CE3CD00C0D603E098 -:102A2000A037C0D603D7038000B4740070A8001389 +:1029C00080E06B4E88EA1B0000760B978CFC1C00A5 +:1029D00080E06B4E88EA1B0000760B97ACE06C0140 +:1029E00000E06B4E88EA1B0000760B97ACC168FCD8 +:1029F0001C0080E06B4E88EA1B0000760B97ACE071 +:102A00006C4E8CEA1C0000781C5D1C5C5CE06B4E1C +:102A100088EA1B0000760B974CE3CD00C0D603E09C +:102A2000A037C0D603D7038000B47400B654001397 :102A300002F1EC5604004400008001004500010052 :102A400000F68B010D02F1EC56030000000100E0DE :102A5000A0384CD603D7038000B598E0A03858D6EC :102A600003D7038000B5BCE0A03774D603D703803A :102A700000B400E0A036F6D603D7038000B310C040 :102A8000080000D431204D300C503C502CBA0CE0E2 -:102A90006C28D4EA1C00007843E0651E60EA15004B +:102A90006C28D0EA1C00007843E0651E5CEA150053 :102AA00000EAF609589946EAF70954EB470958EA4B -:102AB000FC0950E0A07AB2189BFC1C447AE0A07993 -:102AC00057EB4C0954EAF40948EAFC0930081CFEAB +:102AB000FC0950E0A07ABC189BFC1C447AE0A07989 +:102AC00061EB4C0954EAF40948EAFC0930081CFEA1 :102AD0003CFF06E06B00FAF80B0D0A5C7B501B40D4 :102AE0001CE04C004CC054EAFC093C581CC0E130CE -:102AF00006EB5600FAEB5600FC302CE06B28D4EACB +:102AF00006EB5600FAEB5600FC302CE06B28D0EACF :102B00001B0000B60CE08F022DEAFC0944584CC3B0 -:102B1000D30C9C0E9BE0A07A45C382EAFB09540EBD -:102B20009CE0A07A3FC322EAFC0954E0A08BAC14DD -:102B30009016910C9CE0A08BA7E068CCCDEA18CC55 -:102B4000CCE069CCCCEA193FFCE0A08B14009800E3 -:102B5000A7F1001302F1EC560400450000800100CB +:102B1000D30C9C0E9BE0A07A4FC382EAFB09540EB3 +:102B20009CE0A07A49C322EAFC0954E0A08BB614C9 +:102B30009016910C9CE0A08BB1E068CCCDEA18CC4B +:102B4000CCE069CCCCEA193FFCE0A08B1E009800D9 +:102B50009E08001302F1EC560400450000800100BD :102B600046000100006340010D02F1EC5603000035 -:102B70000001000299E0A08BB9C1A2EAFC0954301F -:102B80001BEA1B4040E0A07A13C123EB470954EB3A -:102B9000460958E06C28D4EA1C00009943303CE018 -:102BA0006B28D4EA1B0000B60CE08F0240EAFC0957 +:102B70000001000299E0A08BC3C1A2EAFC09543015 +:102B80001BEA1B4040E0A07A1DC123EB470954EB30 +:102B9000460958E06C28D0EA1C00009943303CE01C +:102BA0006B28D0EA1B0000B60CE08F0240EAFC095B :102BB00014EB4C0918EAFC0924EB4C0928401C5C76 -:102BC0007CE0A07A3D1892EAFC0910049BE0A07812 -:102BD000E11891EAFC0920049BE0A078DB1893300F +:102BC0007CE0A07A471892EAFC0910049BE0A07808 +:102BD000EB1891EAFC0920049BE0A078E5189330FB :102BE00009EB490914EB49092408973004C2682FFE :102BF000F75C77E04700FAC0213007EA070026ECCF -:102C0000FC013C029BE0A0778D189BE0A0784EEA87 -:102C1000FB0914E0A077F4EB4C0914ECFC05240646 -:102C20009BE0A0777F189BE0A07840EAFB0924E0B6 -:102C3000A077E6EB4C09242FF45C74401C1834CDCB -:102C400085EAFC0914049BE0A078A41893EB4309DF -:102C500014EAFC0924049BE0A0789C1894EB440936 -:102C600024E06C28D4EA1C0000783CE06B28D4EA0D -:102C70001B0000000559001302F1EC560400460049 +:102C0000FC013C029BE0A07797189BE0A07858EA73 +:102C1000FB0914E0A077FEEB4C0914ECFC0524063C +:102C20009BE0A07789189BE0A0784AEAFB0924E0A2 +:102C3000A077F0EB4C09242FF45C74401C1834CDC1 +:102C400085EAFC0914049BE0A078AE1893EB4309D5 +:102C500014EAFC0924049BE0A078A61894EB44092C +:102C600024E06C28D0EA1C0000783CE06B28D0EA15 +:102C70001B000000FC19001302F1EC560400460092 :102C8000008001004700010000DCFB010D02F1ECB7 :102C900056030000000100971CEAFC0A0CEAFB0A3C -:102CA00010E0A077511897E06C28D4EA1C00009936 +:102CA00010E0A0775B1897E06C28D0EA1C00009930 :102CB00037E0A003FF581CC0713006EB5600FAEB5A :102CC0005600FCC729EAFC0944580CC111EB1C0052 :102CD000FCEB1B00FAF60C000A585AC095160CBA09 :102CE0000C3006EB5600FAEB5600FCC0A8EAFC09D3 :102CF00044580CC0603006EB5600FAEB5600FCEA74 :102D0000FB09449A8C180BC3D1FC113FE0EAFB0984 -:102D100028089CE0A07786E0A08ADA30080299E0D3 -:102D2000A08A4D3008E069C000EA194062E0A08A3C -:102D3000EFC183EAFB0918069CE0A07773E0A08A44 -:102D4000C730080299E0A08A3A3008FC194054E0E4 -:102D5000A08ADEC073FC1B41A00E9CE0A07946C196 +:102D100028089CE0A07790E0A08AE430080299E0BF +:102D2000A08A573008E069C000EA194062E0A08A32 +:102D3000F9C183EAFB0918069CE0A0777DE0A08A30 +:102D4000D130080299E0A08A443008FC194054E0D0 +:102D5000A08AE8C073FC1B41A00E9CE0A07950C182 :102D600012EB1C00FA2FFCEB5C00FAEAFC0930EBDA -:102D70004C094C306CE06B28D4EA1B0000B60CC147 +:102D70004C094C306CE06B28D0EA1B0000B60CC14B :102D800049EB1700FAEE0C1510C170EAFB09280890 -:102D90009CE0A07811FC1B00A2A2001302F1EC56EB +:102D90009CE0A0781BFC1B0032C6001302F1EC562D :102DA000040047000080010048000100004B1001B2 :102DB0000D02F1EC560300000001004040E0A07954 -:102DC00027C0A25837C0B59A8B0E0BBA0B300CEB4C +:102DC00031C0A25837C0B59A8B0E0BBA0B300CEB42 :102DD0005C00FAC048300CEB5C00FAEAFB09449A4C :102DE0008C180BC2B1EAFC0954FC1B3F80E0A079AF -:102DF0000FC082307CE06B28D4EA1B0000B60CCEFA +:102DF00019C082307CE06B28D0EA1B0000B60CCEF4 :102E000068EAFC0954E06B6667EA1B4016E0A078AC -:102E1000F3C143EB1C00FC582CC0D4EB1C00FC2F6E -:102E2000FCEB5C00FC308CE06B28D4EA1B0000B6A5 +:102E1000FDC143EB1C00FC582CC0D4EB1C00FC2F64 +:102E2000FCEB5C00FC308CE06B28D0EA1B0000B6A9 :102E30000CCCD89A8A180ABA0A3006EB5600FC065F :102E4000980899EAFA0954401B9A8CE0A003AA5802 :102E50001CC181EAFC0958EB4C0954EAFC0928EB37 -:102E60004C0924E06C28D4EA1C0000781CE06B2894 -:102E7000D4EA1B0000973CEAFC0918EB4C0914CA81 -:102E800068EAFC0954301BEA1B40A0E0A078B4C0FB +:102E60004C0924E06C28D0EA1C0000781CE06B2898 +:102E7000D0EA1B0000973CEAFC0918EB4C0914CA85 +:102E800068EAFC0954301BEA1B40A0E0A078BEC0F1 :102E900053FC1C40A0EB4C0954EB5600FAEB5600D7 :102EA000FCEAFC0944580CC1A1EAFB0954EB4B09AC -:102EB0005CEB4B0960EAFC0914EB4C0052CC0013AC +:102EB0005CEB4B0960EAFC0914EB4C00FF090013C2 :102EC00002F1EC56040048000080010049000100B6 :102ED000000BAB010D02F1EC5603000000010009EC -:102EE0001CEAFC0924EB4C092CE06C28D4EA1C00F9 -:102EF00000783CE06B28D4EA1B0000972CC6B8E0B1 +:102EE0001CEAFC0924EB4C092CE06C28D0EA1C00FD +:102EF00000783CE06B28D0EA1B0000972CC6B8E0B5 :102F0000A002A8581CC261EAFB0954FC1C4000E066 -:102F1000A077021897EB470954301C502CEAFB09A4 -:102F200014FC1C3F00E0A076F71896EB460914EA63 -:102F3000FB0924FC1C3F00E0A076EEEB4C0924EBDF +:102F1000A0770C1897EB470954301C502CEAFB099A +:102F200014FC1C3F00E0A077011896EB460914EA58 +:102F3000FB0924FC1C3F00E0A076F8EB4C0924EBD5 :102F4000460918EB4C0928EB4709589A8B2FFBBA16 -:102F50000BEAF60954EAFB09580C9CE0A07686FCC3 -:102F60001B3F00E0A076D81897EB47095CEAFB0905 -:102F700014EAFC0918E0A07679FC1B3F00E0A0767B -:102F8000CBEB4C091CEAFB0924EAFC0928E0A076FB -:102F90006DFC1B3F00E0A076BFEB4C092C0C9C0E97 -:102FA0009BE0A07847C043402C581CC031EB460939 -:102FB00060E06C28D4EA1C0000781B783CE0A07626 -:102FC00055FC1B3F00E0A076A7E06B28D4EA1B006D +:102F50000BEAF60954EAFB09580C9CE0A07690FCB9 +:102F60001B3F00E0A076E21897EB47095CEAFB09FB +:102F700014EAFC0918E0A07683FC1B3F00E0A07671 +:102F8000D5EB4C091CEAFB0924EAFC0928E0A076F1 +:102F900077FC1B3F00E0A076C9EB4C092C0C9C0E83 +:102FA0009BE0A07851C043402C581CC031EB46092F +:102FB00060E06C28D0EA1C0000781B783CE0A0762A +:102FC0005FFC1B3F00E0A076B1E06B28D0EA1B005D :102FD00000972C9A8CC81CE0A004268B0CC65C00C1 -:102FE000AD0E001302F1EC56040049000080010010 +:102FE0002266001302F1EC56040049000080010043 :102FF0004A000100009E60010D02F1EC5603000042 :10300000000100EAFC0930EB4C094C301C503CEB51 :103010004C0A04403C581CC051301CEB5C0028C0DA -:1030200088E06C28D4EA1C0000988CEB5C00289A9D +:1030200088E06C28D0EA1C0000988CEB5C00289AA1 :103030008C8BBCEAFC09508BCC401CEB5C0034EB65 :103040001C00F6EB5C0036EAFC09148BECEAFC0988 :10305000248BFCEAFC0954EB4C0040EAFC091CEB15 @@ -777,182 +777,182 @@ :10308000503009EB490910EB490920EB46093C6B2C :103090007CEB4C0A480A9C2B0C300A300BB91BF80D :1030A000EB00080A9CFE3CFF34B91B992AEAFC0A93 -:1030B00014EB4C0A18EB490A14402CE06B28D4EAB4 -:1030C0001B0000977C403C2FCDD832E06C1E60EA9C +:1030B00014EB4C0A18EB490A14402CE06B28D0EAB8 +:1030C0001B0000977C403C2FCDD832E06C1E5CEAA0 :1030D0001C0000F8FB0940991BF8FB0964996BF888 :1030E000FB0968997BF8FB096C998BF8FB095C99E3 :1030F0002BF8FB09FC999B5EFD0000D431202D18B4 -:10310000933006009F6F001302F1EC5604004A0052 +:1031000093300600CF65001302F1EC5604004A002C :10311000008001004B0001000021DB010D02F1ECF9 -:10312000560300000001003005E0671E60EA17004A +:10312000560300000001003005E0671E5CEA17004E :10313000005813C225EEFC0940189BF7DBC003EED4 :103140000B002BF6FB0990201CF9DCC003EE0C00F1 :103150002CF94B0990EEF40944307CE80C0D0AEE92 :103160000B002CF8FC09702014307BE80B0D0AEEE4 :103170000B002BF74C0970EEF2095CFC1B4020049D -:103180009CE0A0777BC083EEFC09F8FC1B4040E08C -:10319000A07774C042303CAE6CC038304CAE6C8E00 +:103180009CE0A07785C083EEFC09F8FC1B4040E082 +:10319000A0777EC042303CAE6CC038304CAE6C8EF6 :1031A000ECEEFB0940F7DBC003EE0B002BF74C09FC :1031B00090300CC068583BC0212FF52FFC5C7C5828 :1031C0008CC094EE0C002BF6FB0990584BCF412F8E :1031D000F6CF5B5C765C750C05EA0C161F1805A132 :1031E000550C35C044304CAE7CC038303CAE7C040D -:1031F00096FC153FC0049C0A9BE0A0773FC0320AB2 -:1032000096C0A8301BEA1B4090049CE0A0772AC01F -:1032100033FC1640900C9CE0A088A2149416950CE8 -:103220009CE0A0889DE06800A547001302F1EC56E1 +:1031F00096FC153FC0049C0A9BE0A07749C0320AA8 +:1032000096C0A8301BEA1B4090049CE0A07734C015 +:1032100033FC1640900C9CE0A088AC149416950CDE +:103220009CE0A088A7E068004D97001302F1EC56DF :1032300004004B00008001004C0001000035F30148 :103240000D02F1EC56030000000100B8BBEA1806BD -:103250008DE06916F0EA193FB8E0A0880A08980ADC -:1032600099E0A08806149416950C9CE0A0888AE04A +:103250008DE06916F0EA193FB8E0A0881408980AD2 +:1032600099E0A08810149416950C9CE0A08894E036 :103270006816F0EA185048E06918FCEA193FE9E0DE -:10328000A087F7E0681134EA183C36E06952BDEADD -:1032900019BFDAE0A086D808980A99E0A086A0E0D5 -:1032A000A076A8EEFB00C4E0A0756CE0A0886AE000 +:10328000A08801E0681134EA183C36E06952BDEAD2 +:1032900019BFDAE0A086E208980A99E0A086AAE0C1 +:1032A000A076B2EEFB00C4E0A07576E0A08874E0E2 :1032B00068EDB8EA181C22E0691818EA193F78E0AE -:1032C000A087D7E0A07696EF4C0964EF0B00C858B2 -:1032D0002BC091E06BC41EEA1B3F7EE0A07552EF4D -:1032E0004C0964EEFB0968EEFC0964E0A074F41874 -:1032F00090EF400968EEFC09640C9BE0A07542FC6D -:103300001B4270E0A0753E1896EF46096CEEF4097A +:1032C000A087E1E0A076A0EF4C0964EF0B00C8589E +:1032D0002BC091E06BC41EEA1B3F7EE0A0755CEF43 +:1032E0004C0964EEFB0968EEFC0964E0A074FE186A +:1032F00090EF400968EEFC09640C9BE0A0754CFC63 +:103300001B4270E0A075481896EF46096CEEF40970 :1033100044307CE80C0D0AEE0B002CF946097030A5 :103320000CEF4C098C58743005C262C0C8EE050021 -:103330002CF8FC0970029BE0A074CEEF4C098C2F96 -:10334000F55C75EEF1098C0A34CF22006B01001395 +:103330002CF8FC0970029BE0A074D8EF4C098C2F8C +:10334000F55C75EEF1098C0A34CF2200C7990013A1 :1033500002F1EC5604004C00008001004D00010019 :10336000005F4B010D02F1EC560300000001005C10 -:10337000750A9CE0A076E2189B029CE0A07588EF9D +:10337000750A9CE0A076EC189B029CE0A07592EF89 :103380004C098CC158EE05002BF6FB0970E0A074C7 -:10339000B5EF4C098C2FF55C75EEFC098C5875CF98 -:1033A00035FC1B40E0E0A07573EF4C098C0C9CE0F1 -:1033B000A087FAFC15400C8EFC584CC140E068997F +:10339000BFEF4C098C2FF55C75EEFC098C5875CF8E +:1033A00035FC1B40E0E0A0757DEF4C098C0C9CE0E7 +:1033B000A08804FC15400C8EFC584CC140E0689974 :1033C0009AEA189999E0699999EA193FB9E0A087B2 -:1033D0006230080A99E0A08649E0A0761DEF4C0A09 +:1033D0006C30080A99E0A08653E0A07627EF4C0AEB :1033E00000C138E068999AEA189999E0699999EAD0 -:1033F000193FC9E0A0874F30080A99E0A08636E05F -:10340000A0760AEF4C0A00049CE0A087CD3008FCAF -:1034100019404EE0A0873F14981699300AFC1B3FD4 -:10342000F0E0A08775BB1BEEFC00C0E0A087BC14D9 -:10343000941695EEFC0A00E0A087B6E068147BEADB -:103440001847AEE0697AE1EA193F74E0A0872308E3 -:10345000980A99E0A0871FBB08E0A0871CE0A07530 -:10346000DB1896EF460A00EEFB09FCE0A07446006C -:10347000F138001302F1EC5604004D000080010009 +:1033F000193FC9E0A0875930080A99E0A08640E04B +:10340000A07614EF4C0A00049CE0A087D73008FC9B +:1034100019404EE0A0874914981699300AFC1B3FCA +:10342000F0E0A0877FBB1BEEFC00C0E0A087C614C5 +:10343000941695EEFC0A00E0A087C0E068147BEAD1 +:103440001847AEE0697AE1EA193F74E0A0872D08D9 +:10345000980A99E0A08729BB08E0A08726E0A0751C +:10346000E51896EF460A00EEFB09FCE0A074500058 +:1034700058A0001302F1EC5604004D00008001003A :103480004E00010000CA80010D02F1EC560300005D :103490000001001895EF4509FCEEFC09402FFCEFF8 :1034A0004C0940EEFC09442FFCEF4C0944E60C1596 :1034B00010C220EEFC0940060CEF4C0940EEFC095E -:1034C00044060CEF4C0944069CE0A07649EEFB094B -:1034D00064E0A0747B009BE0A07422EF4C096806B6 -:1034E0009CE0A0763D0C9BE0A074700A9BE0A07469 -:1034F00017EF4C09FC2FEDD83AD70380015C9C8074 -:10350000013AC8EBCD40FC3007E0661E60EA1600C9 -:1035100000ECF50954ECFC0960E0A08757E0686610 +:1034C00044060CEF4C0944069CE0A07653EEFB0941 +:1034D00064E0A07485009BE0A0742CEF4C096806A2 +:1034E0009CE0A076470C9BE0A0747A0A9BE0A07455 +:1034F00021EF4C09FC2FEDD83AD70380015CB08056 +:10350000013ADCEBCD40FC3007E0661E5CEA1600B9 +:1035100000ECF50954ECFC0960E0A08761E0686606 :1035200066EA186666E0696666EA193FE6E0A08624 -:10353000C4149216930A9CE0A0874804980699E068 -:10354000A08764C072ED1C00F6582CC0353017C13E -:1035500078E06B999AEA1B3F990A9CE0A075C4C079 -:10356000F26D74301BEA1B4220089CE0A075B0C0CD -:1035700073FC1B42C8089CE0A075B6CE93ECFC0916 -:10358000F8FC1B4000E0A075AFC0D2301BEA1B4026 -:10359000000A9C00F2BC001302F1EC5604004E003D +:10353000CE149216930A9CE0A0875204980699E054 +:10354000A0876EC072ED1C00F6582CC0353017C134 +:1035500078E06B999AEA1B3F990A9CE0A075CEC06F +:10356000F26D74301BEA1B4220089CE0A075BAC0C3 +:1035700073FC1B42C8089CE0A075C0CE93ECFC090C +:10358000F8FC1B4000E0A075B9C0D2301BEA1B401C +:10359000000A9C008DE4001302F1EC5604004E007A :1035A000008001004F00010000753B010D02F1ECAD -:1035B00056030000000100E0A0759CC063ED1C00F4 +:1035B00056030000000100E0A075A6C063ED1C00EA :1035C000F6583CC02530070E9CE3CD80FC0000EB94 -:1035D000CD40EC3006E0671E60EA1700008EFC5814 +:1035D000CD40EC3006E0671E5CEA1700008EFC5818 :1035E0003CC1E4EEFC0954301BEA1B4000E0A0752E -:1035F00081C163EEFC0914FC1B4120E0A07586C06C -:10360000F2EEFC0924FC1B4220E0A0757FC0823052 -:103610004CE06B28D4EA1B0000B60C3016EEF5091E -:1036200024FC1B41A00A9CE0A07570C2D3FC133F90 -:10363000E0EEFB09280A9CE0A07384E0A086D83065 -:10364000080699E0A0864B3008FC194044E0A086AB -:10365000EFC1A3EEF50914EEFB09180A9CE0A07374 -:1036600071E0A086C530080699E0A086383008FCD5 -:10367000194034E0A086DCC073FC1B41200A9CE0AA -:10368000A07544C082305CE06B28D4EA1B0000B611 +:1035F0008BC163EEFC0914FC1B4120E0A07590C058 +:10360000F2EEFC0924FC1B4220E0A07589C0823048 +:103610004CE06B28D0EA1B0000B60C3016EEF50922 +:1036200024FC1B41A00A9CE0A0757AC2D3FC133F86 +:10363000E0EEFB09280A9CE0A0738EE0A086E23051 +:10364000080699E0A086553008FC194044E0A086A1 +:10365000F9C1A3EEF50914EEFB09180A9CE0A0736A +:103660007BE0A086CF30080699E0A086423008FCB7 +:10367000194034E0A086E6C073FC1B41200A9CE0A0 +:10368000A0754EC082305CE06B28D0EA1B0000B60B :103690000C30160C9CE3CD80EC0000EBCD40FE1806 -:1036A0009516943006E0671E60EA170000EEFC09EC -:1036B0004418055825C1C300555B001302F1EC56B0 +:1036A0009516943006E0671E5CEA170000EEFC09F0 +:1036B0004418055825C1C3002B87001302F1EC56AE :1036C00004004F000080010050000100006553011C :1036D0000D02F1EC56030000000100EEFC0954302D -:1036E0001BEA1B4060E0A07517C143EEFC0928EE01 -:1036F000FB0924E0A07402301BEA1B40A0E0A07587 -:103700000BC083309CE06B28D4EA1B0000B60C3061 +:1036E0001BEA1B4060E0A07521C143EEFC0928EEF7 +:1036F000FB0924E0A0740C301BEA1B40A0E0A0757D +:1037000015C083309CE06B28D0EA1B0000B60C305B :10371000165825C1F33013EA134170EEFC0928EE68 -:10372000FB0924E0A073EA069BE0A074F5C123EE38 -:10373000FC0918EEFB0914E0A073E0069BE0A074FE -:10374000EBC08330ACE06B28D4EA1B0000B60C3031 -:10375000165805C1F0E06528D4EA1500006A2CE08F -:10376000A08658E0683333EA183333E0693333EA2C -:10377000193FD3E0A085C5149216936A3CE0A08659 -:103780004904980699E0A08665C04230BCAA0C3076 -:1037900016EEFC0954301BEA1B4090E0A074BCC03C -:1037A00092EEFC095C301BEA1B4080E0A074B4C1BF -:1037B000D3EEFC0924FC1B43C8E0A074B9C0C3EEDF -:1037C000FC0914FC1B4316E0A074B2C053EF1C00AC -:1037D000F6582CC0B58EFC583CC08500F01900137B +:10372000FB0924E0A073F4069BE0A074FFC123EE24 +:10373000FC0918EEFB0914E0A073EA069BE0A074F4 +:10374000F5C08330ACE06B28D0EA1B0000B60C302B +:10375000165805C1F0E06528D0EA1500006A2CE093 +:10376000A08662E0683333EA183333E0693333EA22 +:10377000193FD3E0A085CF149216936A3CE0A0864F +:103780005304980699E0A0866FC04230BCAA0C3062 +:1037900016EEFC0954301BEA1B4090E0A074C6C032 +:1037A00092EEFC095C301BEA1B4080E0A074BEC1B5 +:1037B000D3EEFC0924FC1B43C8E0A074C3C0C3EED5 +:1037C000FC0914FC1B4316E0A074BCC053EF1C00A2 +:1037D000F6582CC0B58EFC583CC0850005DC0013A3 :1037E00002F1EC560400500000800100510001007D :1037F0000071EE010D02F1EC5603000000010030F3 -:10380000CCE06B28D4EA1B0000B60C3016EEFC09A5 -:103810001CFC1B43C8E0A0749DC083EEFC09F8FCAF -:103820001B40A0E0A07496C1A2EEFC0A1CEEFB0AAD -:1038300020160CE0A086653008FC193FE0E0A0856A -:10384000723018FC194044E0A08614C08330DCE0DC -:103850006B28D4EA1B0000B60C3016089CE0A0745C -:10386000CB189BEEFC00CCE0A0735A1892EF4200FC -:10387000D8089CE0A074C0189BEEFC00D0E0A073B8 -:103880004F1893EF4300DC089CE0A074B5189BEE42 -:10389000FC00D4E0A073441895EF4500E0EEF4007E -:1038A000E4089C049BE0A072031891301BE0A07414 -:1038B00045C0330294C068049C089BE0A071F818CE -:1038C00094EEF200E8049C069BE0A071F1189130A0 -:1038D0001BE0A07433C0330293C068069C049BE0D5 -:1038E000A071E61893EEF200EC049C0A9BE0A07134 -:1038F000DF1891301BE0A07421C0330295C068002E -:10390000B2D6001302F1EC56040051000080010011 +:10380000CCE06B28D0EA1B0000B60C3016EEFC09A9 +:103810001CFC1B43C8E0A074A7C083EEFC09F8FCA5 +:103820001B40A0E0A074A0C1A2EEFC0A1CEEFB0AA3 +:1038300020160CE0A0866F3008FC193FE0E0A08560 +:103840007C3018FC194044E0A0861EC08330DCE0C8 +:103850006B28D0EA1B0000B60C3016089CE0A07460 +:10386000D5189BEEFC00CCE0A073641892EF4200E8 +:10387000D8089CE0A074CA189BEEFC00D0E0A073AE +:10388000591893EF4300DC089CE0A074BF189BEE2E +:10389000FC00D4E0A0734E1895EF4500E0EEF40074 +:1038A000E4089C049BE0A0720D1891301BE0A0740A +:1038B0004FC0330294C068049C089BE0A0720218B9 +:1038C00094EEF200E8049C069BE0A071FB18913096 +:1038D0001BE0A0743DC0330293C068069C049BE0CB +:1038E000A071F01893EEF200EC049C0A9BE0A0712A +:1038F000E91891301BE0A0742BC0330295C068001A +:10390000E202001302F1EC560400510000800100B5 :103910005200010000E425010D02F1EC5603000005 -:103920000001000A9C049BE0A071D41895089C0635 -:103930009BE0A0723D0A9BE0A0723AE06B28D4EABB +:103920000001000A9C049BE0A071DE1895089C062B +:103930009BE0A072470A9BE0A07244E06B28D0EAAB :103940001B0000976C0E9CFE3CFF28FE37FF1CB945 :103950000AAF1B782A8F2A0C9CE3CD80FED7038008 -:10396000015DFE80015C22EBCD40E03006E0651E8B -:1039700060EA150000EAFC09405B6CC112E0679642 -:1039800080EA174B18EAFC09680E9BE0A073E8C0B8 -:1039900072EAFC09FC0E9BE0A073E2C02330160C17 +:10396000015E1280015C36EBCD40E03006E0651E62 +:103970005CEA150000EAFC09405B6CC112E0679646 +:1039800080EA174B18EAFC09680E9BE0A073F2C0AE +:1039900072EAFC09FC0E9BE0A073ECC02330160C0D :1039A0009CE3CD80E00000D631201D1694300C50F1 -:1039B0000CE0A004B1E0671E60EA1700003006EFDB +:1039B0000CE0A004B1E0671E5CEA1700003006EFDF :1039C000460A043003EF430A0CEF430A10E06C2868 -:1039D000D4EA1C0000B806402CC9BDEEFC09B05862 +:1039D000D0EA1C0000B806402CC9BDEEFC09B05866 :1039E0005CC0A1301CEF4C093CEF4609B0EF56001B :1039F000F2EF5600F4EEFC0950080CEF4C0950EEC3 :103A0000F00930EEFC09481830C041301CEF4C0979 :103A10003CEEF20934E405100C0E05402C780CEB5A -:103A20004C00600077E2001302F1EC5604005200F3 +:103A20004C0060008F62001302F1EC56040052005B :103A30000080010053000100005B9E010D02F1ECCB :103A400056030000000100402C781CEB4C00644041 :103A50002C782CEB4C0068F7D4C010402CE0A0026E -:103A60000D8F4C6BAC6B946B85189BE0A0720818A3 -:103A700091089C089BE0A0720318940A9C0A9BE0A2 -:103A8000A071FE089BE0A071A5029BE0A071A2E0DE -:103A9000A084F6E0A0B438E0A0732A1895EEFC09E3 +:103A60000D8F4C6BAC6B946B85189BE0A072121899 +:103A700091089C089BE0A0720D18940A9C0A9BE098 +:103A8000A07208089BE0A071AF029BE0A071ACE0BF +:103A9000A08500E0A0B46AE0A073341895EEFC099C :103AA00038580CC121300CC068EE0C002BF74501D2 :103AB000002FFC5C7C587CCF95FC1B40E00A9CE00E -:103AC000A071DEEF4C0138EE020021E2FB01000A9A -:103AD0009CE0A07111EEFB0138E0A0717B1894EF1F +:103AC000A071E8EF4C0138EE020021E2FB01000A90 +:103AD0009CE0A0711BEEFB0138E0A071851894EF0B :103AE000440138E3450100EE000022E544013CEECC -:103AF000FB0910E0A0716EEF4C0910E2FB011C08FD -:103B00009CE0A070F91895E5450524E344011CEEFE -:103B1000FB0920E0A0715EEF4C09200E9CFE3CFFEB +:103AF000FB0910E0A07178EF4C0910E2FB011C08F3 +:103B00009CE0A071031895E5450524E344011CEEF3 +:103B1000FB0920E0A07168EF4C09200E9CFE3CFFE1 :103B20004C4029B30BB92A130A18AAEF1C00F02F36 :103B3000FCEF5C00F0EEFC09B0581CC030583CC3F0 -:103B4000A1EF1C00F0582C002029001302F1EC56C4 +:103B4000A1EF1C00F0582C0043EA001302F1EC56E0 :103B5000040053000080010054000100004FB60132 :103B60000D02F1EC56030000000100C2748EFB58F8 :103B70004BC244EEFC0944580CC761EEF2090C300C -:103B800014EA1440E0049C089BE0A07319C0620A88 -:103B90009C089BE0A07308C0D2FC14C0E0049C0801 -:103BA0009BE0A07301C6030A9C089BE0A07308C5B4 +:103B800014EA1440E0049C089BE0A07323C0620A7E +:103B90009C089BE0A07312C0D2FC14C0E0049C08F7 +:103BA0009BE0A0730BC6030A9C089BE0A07312C5A0 :103BB000B2301CEF4C093CC578E04C0027C0D5EF73 :103BC0001B00F2F60A1510C050160CE04C004BC05A :103BD00045301CEF4C093C0A9BEEFC090CE0A002AE @@ -963,8 +963,8 @@ :103C20001CEF4C093CEEFC0A1CEF4C0A20EEFB0A90 :103C300024EEFC0A28180BEEFC0A2C180BEF4B0A9A :103C40001CEF460A2CEF460A28EF460A24FEB0F87D -:103C500029500CEF5600F4EF5600F6E06C28D4EA39 -:103C60001C00009956EEFB0930EEFC008013001397 +:103C500029500CEF5600F4EF5600F6E06C28D0EA3D +:103C60001C00009956EEFB0930EEFC009112001387 :103C700002F1EC56040054000080010055000100E0 :103C800000250E010D02F1EC5603000000010009B1 :103C90004C181BFE3BFF06E06C00FAF60C0D0AE028 @@ -981,123 +981,123 @@ :103D400038EEFC0A04580CC120EF470A080E9BFE0F :103D50003BF5B40E9C169E305AB909BD28201ACFE7 :103D6000D10E9CFE3CF5B4EF4C0A08400C2FFDDC54 -:103D700032D7038001BBBC800139A4EBCD40F818D9 -:103D800095E0671E60EA170000EEF60A30EEF400D8 -:103D90005402001302F1EC560400550000800100AB +:103D700032D7038001BC20800139B8EBCD40F81860 +:103D800095E0671E5CEA170000EEF60A30EEF400DC +:103D90000D7C001302F1EC56040055000080010078 :103DA0005600010000B0C5010D02F1EC5603000001 -:103DB00000010000B40C9CE0A0727818936A0C0813 -:103DC0009BE0A06FCF069BE0A07090300BE0A0724C -:103DD0001BC202EEFB0A3C089CE0A06FC3E0A0837C -:103DE00085BFDBE068999BEA189999E0699999EA9F -:103DF000193FC9E0A08398C063EEFC0A242FFCEFB2 +:103DB00000010000B40C9CE0A0728218936A0C0809 +:103DC0009BE0A06FD9069BE0A0709A300BE0A07238 +:103DD00025C202EEFB0A3C089CE0A06FCDE0A08368 +:103DE0008FBFDBE068999BEA189999E0699999EA95 +:103DF000193FC9E0A083A2C063EEFC0A242FFCEFA8 :103E00004C0A24EEFC00B4EF4C0A3C5C36EF460A48 -:103E100030EEF60A34EEF400B80C9CE0A0724618BE -:103E2000936A1C089BE0A06F9D069BE0A0705E302B -:103E30000BE0A071E9C202EEFB0A40089CE0A06F13 -:103E400091E0A08353BFDBE068999BEA189999E061 -:103E5000699999EA193FC9E0A08366C063EEFC0A3C +:103E100030EEF60A34EEF400B80C9CE0A0725018B4 +:103E2000936A1C089BE0A06FA7069BE0A070683017 +:103E30000BE0A071F3C202EEFB0A40089CE0A06F09 +:103E40009BE0A0835DBFDBE068999BEA189999E04D +:103E5000699999EA193FC9E0A08370C063EEFC0A32 :103E6000282FFCEF4C0A28EEFC00B8EF4C0A405C0F :103E700036EF460A34EEF60A38EEF400BC0C9CE04D -:103E8000A0721418936A2C089BE0A06F6B069BE04D -:103E9000A0702C300BE0A071B7C202EEFB0A440800 -:103EA0009CE0A06F5FE0A08321BFDBE068999BEA04 -:103EB0001899990096EE001302F1EC560400560092 +:103E8000A0721E18936A2C089BE0A06F75069BE039 +:103E9000A07036300BE0A071C1C202EEFB0A4408EC +:103EA0009CE0A06F69E0A0832BBFDBE068999BEAF0 +:103EB00018999900A04F001302F1EC560400560027 :103EC0000080010057000100000F7E010D02F1EC9F :103ED00056030000000100E0699999EA193FC9E022 -:103EE000A08334C063EEFC0A2C2FFCEF4C0A2CEEAE +:103EE000A0833EC063EEFC0A2C2FFCEF4C0A2CEEA4 :103EF000FC00BCEF4C0A445C36EF460A38E3CF8046 -:103F0000F8D70380013AF4D531201D1896E0651EDC -:103F100060EA1500006C0CEAFB00B4E0A06F3450BE -:103F20000C6C1CEAFB00B8E0A06F2E18906C2CEA19 -:103F3000FB00BCE0A06F281891400BBFDB009CBFCA -:103F4000DC0297BFD7E0A06F8D0E9BE0A06F8A18B0 -:103F500097400CBFDC6B4BE0A06F84EB4C00500033 -:103F60009CBFDC6B5BE0A06F7DEB4C0054029CBF00 -:103F7000DC6B6BE0A06F76EB4C00586B7B0E9CE02B -:103F8000A06F70EB4C005CEAFB00CC6C0CE0A06F07 -:103F900069EB4C00CCEAFB00D06C1CE0A06F62EB3C -:103FA0004C00D0EAFC00D46C2BE0A06F5BEB4C0023 +:103F0000F8D70380013B08D531201D1896E0651EC7 +:103F10005CEA1500006C0CEAFB00B4E0A06F3E50B8 +:103F20000C6C1CEAFB00B8E0A06F3818906C2CEA0F +:103F3000FB00BCE0A06F321891400BBFDB009CBFC0 +:103F4000DC0297BFD7E0A06F970E9BE0A06F94189C +:103F500097400CBFDC6B4BE0A06F8EEB4C00500029 +:103F60009CBFDC6B5BE0A06F87EB4C0054029CBFF6 +:103F7000DC6B6BE0A06F80EB4C00586B7B0E9CE021 +:103F8000A06F7AEB4C005CEAFB00CC6C0CE0A06FFD +:103F900073EB4C00CCEAFB00D06C1CE0A06F6CEB28 +:103FA0004C00D0EAFC00D46C2BE0A06F65EB4C0019 :103FB000D4EAFC0938580CC121300CC068EA0C0066 :103FC0002BF74709B42FFC5C7C58FCCF95FC1B41B8 -:103FD000700E9CE0A06F9C00AE22001302F1EC5624 +:103FD000700E9CE0A06FA6008368001302F1EC56FF :103FE000040057000080010058000100009895016E :103FF0000D02F1EC56030000000100EB4C09F0EB60 :104000001C00F8EA0C0026ECFB09B40E9CE0A06E44 -:10401000CDEAFB09F0E0A06F37EB4C09F0ED470962 -:10402000B4FC1B4170E0A06FF91893EB4309F8E072 -:104030006428FCEA140000681B009CE0A06F7A185A -:1040400097680B400CE0A06F751896300BE0A070DD -:10405000FFC0E3300B0E9CE0A070FAC093682B0207 -:104060009CE0A06F67300BE0A070F2C4D2682B0216 -:104070009CE0A06F5F18920C9C0E9BE0A070E8C0C3 -:10408000A20C9C049BE0A070E3C0320C9CC098047E -:104090009CC0780E9C049BE0A070DACFA20E9C30EE -:1040A0001BE0A070C90C9C0E9BC133E0A070D0C077 -:1040B000A20C9C049BE0A070CBC0320C97C1C8043A -:1040C00097C1A80E9C049BE0A070C2CFA2C148E09B -:1040D000A070BEC0A20C9C049BE0A070B9C0320CC2 -:1040E00097C0880497C0680E9C049BE0A070B0CF76 -:1040F000A2EE178000EAFC0A140E9B00D02F0013DA +:10401000D7EAFB09F0E0A06F41EB4C09F0ED47094E +:10402000B4FC1B4170E0A070031893EB4309F8E067 +:104030006428F8EA140000681B009CE0A06F841854 +:1040400097680B400CE0A06F7F1896300BE0A071D2 +:1040500009C0E3300B0E9CE0A07104C093682B02F2 +:104060009CE0A06F71300BE0A070FCC4D2682B0202 +:104070009CE0A06F6918920C9C0E9BE0A070F2C0AF +:10408000A20C9C049BE0A070EDC0320C9CC0980474 +:104090009CC0780E9C049BE0A070E4CFA20E9C30E4 +:1040A0001BE0A070D30C9C0E9BC133E0A070DAC063 +:1040B000A20C9C049BE0A070D5C0320C97C1C80430 +:1040C00097C1A80E9C049BE0A070CCCFA2C148E091 +:1040D000A070C8C0A20C9C049BE0A070C3C0320CAE +:1040E00097C0880497C0680E9C049BE0A070BACF6C +:1040F000A2EE178000EAFC0A140E9B0080CA00138F :1041000002F1EC5604005800008001005900010043 :1041100000D82E010D02F1EC56030000000100E072 -:10412000A070A8C032EB470A14400C890C89108992 -:1041300021FC1B3E80069CE0A0709CC0829ADCEAB9 +:10412000A070B2C032EB470A14400C890C89108988 +:1041300021FC1B3E80069CE0A070A6C0829ADCEAAF :10414000FB09F4180BEB4B09F4C048300CEB4C099D :10415000F4EB1C00F82FFCEB5C00F8EB1C00F858AB :10416000FCC041300CEB5C00F8EAFC09F42FFDD9EF -:1041700032D703800135AC800136888001381C803D -:10418000013734EBCD40FC189616953004E0671EDD -:1041900060EA1700008EFC584CC035FC144000301B -:1041A0000B0C9CE0A0705AC0B3300B0A9CE0A070CE -:1041B00061C062EF1C00F62FFCEF5C00F6EEFC091C +:1041700032D703800135C08001369C800138308001 +:10418000013748EBCD40FC189616953004E0671EC9 +:104190005CEA1700008EFC584CC035FC144000301F +:1041A0000B0C9CE0A07064C0B3300B0A9CE0A070C4 +:1041B0006BC062EF1C00F62FFCEF5C00F6EEFC0912 :1041C000B0580CC0A0581CC650582CE08000AF5806 -:1041D0003CE08000D3C0B9089CE0A081BD3008FC61 -:1041E00019401CE0A0801A149216930C9CE0A08148 -:1041F000B314981699049A069BE0A081CBC2730A67 -:104200009CE0A081A914981699049A069BE0A081CD -:10421000C3C1D2EF1C00F0590CC043300CEF5C005E -:104220000153001302F1EC56040059000080010014 +:1041D0003CE08000D3C0B9089CE0A081C73008FC57 +:1041E00019401CE0A08024149216930C9CE0A0813E +:1041F000BD14981699049A069BE0A081D5C2730A53 +:104200009CE0A081B314981699049A069BE0A081C3 +:10421000CDC1D2EF1C00F0590CC043300CEF5C0054 +:10422000951D001302F1EC560400590000800100B6 :104230005A000100004DE5010D02F1EC56030000AB -:1042400000010000F0301CEF4C09B0E06328D4EA14 +:1042400000010000F0301CEF4C09B0E06328D0EA18 :10425000130000668CEF4C0A0C669CEF4C0A10EEC3 :10426000FC0930EE0C002CF8FC0524878CCD18EEF0 -:10427000FC0930EE0C002CF8F20524E06328D4EAA7 -:10428000130000669B049CE0A07006C02287923059 -:104290000B0C9CE0A06FF4E08300BC300B0A9CE0A8 -:1042A000A06FFAE08200B6301CE06B28D4EA1B0055 +:10427000FC0930EE0C002CF8F20524E06328D0EAAB +:10428000130000669B049CE0A07010C0228792304F +:104290000B0C9CE0A06FFEE08300BC300B0A9CE09E +:1042A000A07004E08200B6301CE06B28D0EA1B004E :1042B00000975CCAE8EEFC0930EE0C002CF8F20521 -:1042C00024E06328D4EA130000668C049BE0A06F0E -:1042D000E3C0228782FC133F800C9C069BE0A06F0A -:1042E000CFE08300970A9C069BE0A06FD5E0820098 +:1042C00024E06328D0EA130000668C049BE0A06F12 +:1042D000EDC0228782FC133F800C9C069BE0A06F00 +:1042E000D9E08300970A9C069BE0A06FDFE0820084 :1042F00091EF1C00F0EF5C00F2300CEF5C00F00876 -:104300009CE0A0813B14981699300AFC1BC01CE06D -:10431000A07F62149216930A9CE0A0812F04980655 -:1043200099E0A0814BC102303CEF4C09B0EEFC0992 -:1043300030EE0C002CF8FC0524E06B28D4EA1B00BE -:1043400000979C007F64001302F1EC5604005A00B1 +:104300009CE0A0814514981699300AFC1BC01CE063 +:10431000A07F6C149216930A9CE0A0813904980641 +:1043200099E0A08155C102303CEF4C09B0EEFC0988 +:1043300030EE0C002CF8FC0524E06B28D0EA1B00C2 +:1043400000979C0036B8001302F1EC5604005A00A6 :10435000008001005B00010000F25E010D02F1EC43 :1043600056030000000100C668302CEF4C09B0C6AF -:1043700028089CE0A0811414981699300AFC1BC0F0 -:104380001CE0A07F3B149216930C9CE0A0810804D3 -:10439000980699E0A08122C0930A9CE0A0810004C5 -:1043A000980699E0A0811CCD23301B0C9CE0A06FE7 -:1043B00085C412301B0A9CE0A06F74C3C3C87BEE97 -:1043C000FC0930EE0C002CF8F20524E06328D4EA56 -:1043D000130000669B049CE0A06F70C0228792E0EF -:1043E00063FFFEEA13BF7F0C9C069BE0A06F66C2D2 -:1043F000220A9C069BE0A06F55C1D3EF1C00F0EF92 -:104400005C00F43006EF5600F00A9CE0A080C8146F -:10441000921693089CE0A080C33008FC19401CE071 -:10442000A07F2004980699E0A080DAFE93FF1FEF9A -:104430004609B0EEFC09B0E3CD80FC8001599080C4 -:10444000015D7080013A5080013A3880015D34800E -:104450000159F880015D74E06C1E60EA1C0000F8F0 -:10446000FC09B05EFC00000054C5001302F1EC56DC +:1043700028089CE0A0811E14981699300AFC1BC0E6 +:104380001CE0A07F45149216930C9CE0A0811204BF +:10439000980699E0A0812CC0930A9CE0A0810A04B1 +:1043A000980699E0A08126CD23301B0C9CE0A06FDD +:1043B0008FC412301B0A9CE0A06F7EC3C3C87BEE83 +:1043C000FC0930EE0C002CF8F20524E06328D0EA5A +:1043D000130000669B049CE0A06F7AC0228792E0E5 +:1043E00063FFFEEA13BF7F0C9C069BE0A06F70C2C8 +:1043F000220A9C069BE0A06F5FC1D3EF1C00F0EF88 +:104400005C00F43006EF5600F00A9CE0A080D21465 +:10441000921693089CE0A080CD3008FC19401CE067 +:10442000A07F2A04980699E0A080E4FE93FF1FEF86 +:104430004609B0EEFC09B0E3CD80FC800159A480B0 +:10444000015D8480013A6480013A4C80015D4880BE +:10445000015A0C80015D88E06C1E5CEA1C0000F8CB +:10446000FC09B05EFC00000078E0001302F1EC569D :1044700004005B00008001005C00010000E67601A2 :104480000D02F1EC56030000000100300BC0D85CB7 -:104490005BF80B060AE0690904EA1900005C5B1688 +:104490005BF80B060AE0690900EA1900005C5B168C :1044A000092C89B28A2FFB5C5B589BCF255EFDD41B -:1044B00001E06BE9FCEA1B8001F80C003C180B16CC +:1044B00001E06BEA68EA1B8001F80C003C180B165F :1044C0009CCE5FD80A0000D431205D189716963034 :1044D000E8FAC9FFFCE06A009035CB302CE0A0166A :1044E0000F580CC0313FFCCCC830E8FAC9FFFCE0E3 @@ -1110,7 +1110,7 @@ :10455000540644FB33000B33ECF9E30013FB3C003F :104560000CA75C1843FB32000CFB3C000DA75CF968 :10457000E21012FB31000DA341E3D1C005FB300076 -:104580000D306CF9E00010FB3C000E00E2CD001392 +:104580000D306CF9E00010FB3C000E0064F30013EA :1045900002F1EC5604005C00008001005D000100A7 :1045A000008CCE010D02F1EC56030000000100A7C3 :1045B0005C1840BAA0FB3C000EF9DCC001FB3000E7 @@ -1135,26 +1135,26 @@ :1046E00099E06A00B035CB302CE0A0152D580CC0F5 :1046F000313FFCC0881B8CEDBC0007CED3300CC012 :10470000283FBC2FFDE3CD80800000D401E06C0980 -:1047100004EA1C00002ACC198C580CC150E06C092A -:1047200004EA1C00002ABC198C580CC0D0CCFF58DD -:104730000CC0343FBCD802300CE06B0904EA1B000B +:1047100000EA1C00002ACC198C580CC150E06C092E +:1047200000EA1C00002ABC198C580CC0D0CCFF58E1 +:104730000CC0343FBCD802300CE06B0900EA1B000F :10474000002ABBB68C300CD8020000EBCD40802094 :104750001D14971A9A3009B489B499E06A0082BA94 :104760008A301ABA9A580C5F1C1B9A5C5CF5EC10E4 :104770001CBA9C580B5F1C1B9B5C5CF7EC102CBAA2 :104780009C30291A9A35CB302CE0A014B1580CC0BB :10479000313FFCC1F85807C0E0C99F580CC0343FF6 -:1047A000BCC188300CE06B0904EA1B00002ABBB6D0 -:1047B0008CC088301CE06B0904EA1B00002ABBB6E1 -:1047C0008C301CE06B0904EA1B00002ACBB68C304D -:1047D0000C2FFD005DD8001302F1EC5604005E00C2 +:1047A000BCC188300CE06B0900EA1B00002ABBB6D4 +:1047B0008CC088301CE06B0900EA1B00002ABBB6E5 +:1047C0008C301CE06B0900EA1B00002ACBB68C3051 +:1047D0000C2FFD0079A5001302F1EC5604005E00D9 :1047E000008001005F00010000A6BE010D02F1EC97 :1047F00056030000000100E3CD8080D421202D1459 -:1048000094129710964075E06A0904EA1A00002A8B +:1048000094129710964075E06A0900EA1A00002A8F :10481000CA158A580AC051301ACABF580CC621306E :10482000881A99E06A00B035CB302CE0A0149E586D -:104830000CC091E06CF180EA1C8001E0A014183FEC -:10484000FCC508300CE06B0904EA1B00002ACBB65B +:104830000CC091E06CF1ECEA1C8001E0A014183F80 +:10484000FCC508300CE06B0900EA1B00002ACBB65F :104850008C1B8CA75C890C1B8CA37CE21C03F81BB3 :104860009BA55B164CAE0C1BACA76CE21C1FC01BBF :10487000BBA34B164CAC0C1BCCA76CE21C1FC01B83 @@ -1165,7 +1165,7 @@ :1048C0004C1FFEC0A16A0A301CF60915012FF9F829 :1048D00009094C184A8B0A2FFB5C5B583BCE1530FC :1048E0000C2FEDD8220000EBCD4080201D18971A28 -:1048F0009C300BB88BB89B00B550001302F1EC56FE +:1048F0009C300BB88BB89B005400001302F1EC56AF :1049000004005F0000800100600001000039D50153 :104910000D02F1EC56030000000100C1CF580CC09D :10492000343FBCC438E06C0085BA8CEF2C0000BA70 @@ -1175,19 +1175,19 @@ :10496000313FFCC238E06C0087BA8CEF2C0002BAF1 :104970009C30291A9A35CB302CE0A013DD580CC09E :10498000313FFCC138300CC0D85C5CEE0C060BE04B -:104990006A0904EA1A00005C5C180A2BFAB48B2F2F +:104990006A0900EA1A00005C5C180A2BFAB48B2F33 :1049A000FC5C5C583CCF25300C2FFDE3CD8080D4DF :1049B00001201D1A9C300BB88BB89BCCCE580CC074 :1049C000343FBCC118E06C0081BA8C300CBA9C300A :1049D000291A9A35CB302CE0A013AE580CC0313FC9 :1049E000FCC028300C2FFDD8020000EBCD40C020C9 :1049F000AD1897FACCFFFC300BB88BB89BB8ABCA9C -:104A0000AE580CC0343FBCC828300CE06B0904EA37 -:104A10001B00002ACBB68C3006C1C800C877001333 +:104A0000AE580CC0343FBCC828300CE06B0900EA3B +:104A10001B00002ACBB68C3006C1C800C8DD0013CD :104A200002F1EC560400600000800100610001000A :104A3000008564010D02F1EC56030000000100FA4C :104A4000CBFFE4F60C032B580BC120FACBFFE4F6A6 -:104A50000C032BE06AEEB8EA1A8001F406032AFA86 +:104A50000C032BE06AEF24EA1A8001F406032AFA19 :104A6000C9FFFC18091388F60A0348B2882FFC58BE :104A70003CCE752FF65856C484FACCFFFCC59F581F :104A80000CC0343FFCC558FACCFFE8500CFAC8FF04 @@ -1202,53 +1202,53 @@ :104B1000343FFCC0E83006C098FACCFFFC0C0CF91E :104B20002B0000EE060B0B2FF65836CF75300C2FEE :104B30006DE3CD80C00000EBCD40EC209D189600C9 -:104B40003280001302F1EC56040061000080010085 +:104B40001AE1001302F1EC5604006100008001003C :104B5000620001000010AF010D02F1EC56030000ED -:104B60000001001695E0670904EA1700002F87305E +:104B60000001001695E0670900EA1700002F873062 :104B70000C504C300C503CC12E580CC0343FBCC7BC -:104B800098300CE06B0904EA1B00002ACBB68CFAC3 +:104B800098300CE06B0900EA1B00002ACBB68CFAC7 :104B9000CCFFF0500CFAC8FFE4FAC9FFFCFACAFFD8 :104BA000F8300B301CC61E402C580CC0303FBCC621 :104BB00018FACCFFF4500CFAC8FFECFAC9FFFCFA63 :104BC000CAFFF8301B301CC50E402C580CC0303FBB :104BD000BCC508FB0C001CFB0B0014161CE0A07DE0 -:104BE000C2E068999AEA189999E0699999EA193F97 -:104BF000B9E0A07CCA149216936EBCE0A07DB30409 -:104C0000980699E0A07CC13008FC194032E0A07CF5 -:104C1000F9E0A07D8E8D0CFB0C001EFB0B00161620 +:104BE000CCE068999AEA189999E0699999EA193F8D +:104BF000B9E0A07CD4149216936EBCE0A07DBD04F5 +:104C0000980699E0A07CCB3008FC194032E0A07DEA +:104C100003E0A07D988D0CFB0C001EFB0B0016160C :104C20001CFB0B0020161CFB0B0018160CE0A07DD3 -:104C30009AE068A9FCEA18D2F1E069624DEA193FEE -:104C400050E0A07CA2149216936EBC6E6BB73CE051 -:104C5000A07D8904980699E0A07C973008FC194053 -:104C600032E0A000D76E001302F1EC56040062009F +:104C3000A4E068A9FCEA18D2F1E069624DEA193FE4 +:104C400050E0A07CAC149216936EBC6E6BB73CE047 +:104C5000A07D9304980699E0A07CA13008FC19403F +:104C600032E0A0000578001302F1EC560400620067 :104C7000008001006300010000AF14010D02F1EC9F -:104C8000560300000001007CCFE0A07D648B0C4047 -:104C90004C403B164C2F7DE3CD80EC80015C9CD4D6 +:104C8000560300000001007CD9E0A07D6E8B0C4033 +:104C90004C403B164C2F7DE3CD80EC80015CB0D4C2 :104CA00001FEB0FD8F580CC0343FBCD802300A3032 :104CB0000B300CFEB0FDA6D8020000EBCD40FE206C -:104CC0009D18921693149612911094E0670904EAC5 +:104CC0009D18921693149612911094E0670900EAC9 :104CD0001700002F87300C507C3005FACCFFE450D1 :104CE0000C0698FAC9FFFCFACAFFE0300B300CFE44 :104CF000B0FDCE580CC0343FFCC859300BC2D8E6CA -:104D00000B041AE06CF158EA1C8001E0690904EA1E +:104D00000B041AE06CF1C4EA1C8001E0690900EAB6 :104D1000190000160913B9F809041C181AE06C09E7 -:104D200004EA1C0000160C2BFCF9290000E06809BD -:104D300004EA1800001608F12C00001819E06809B0 -:104D400004EA180000F60C15021808712CF20C0386 +:104D200000EA1C0000160C2BFCF9290000E06809C1 +:104D300000EA1800001608F12C00001819E06809B4 +:104D400000EA180000F60C15021808712CF20C038A :104D50004AEC0B092A2FFB583BCD359A2BE06A0908 -:104D600004EA1A0000E06C0904EA1C000079CCA1F6 -:104D70007C180A2A8AB40BE06C0904EA1C0000299A -:104D80000C780B2FFB990B0017DE001302F1EC5689 +:104D600000EA1A0000E06C0900EA1C000079CCA1FE +:104D70007C180A2A8AB40BE06C0900EA1C0000299E +:104D80000C780B2FFB990B003CE1001302F1EC5661 :104D900004006300008001006400010000BB3C01CE -:104DA0000D02F1EC56030000000100E06C0904EA7A -:104DB0001C000079CC58ACC085300CE06B0904EACB -:104DC0001B0000F74C0070E06C0904EA1C0000298D -:104DD0004C780B2FFB990BE06C0904EA1C0000795E -:104DE000BC58ACC08530ACE06B0904EA1B0000F78E -:104DF0004C006C300BC0C8E06A0904EA1A0000F6E7 +:104DA0000D02F1EC56030000000100E06C0900EA7E +:104DB0001C000079CC58ACC085300CE06B0900EACF +:104DC0001B0000F74C0070E06C0900EA1C00002991 +:104DD0004C780B2FFB990BE06C0900EA1C00007962 +:104DE000BC58ACC08530ACE06B0900EA1B0000F792 +:104DF0004C006C300BC0C8E06A0900EA1A0000F6EB :104E00000C1501180A2A8A940C18052FFBE06C096E -:104E100004EA1C000079BC183BCEF5EA0C100AE04D -:104E20006B0904EA1B000077BBF80B0D0A504A6CB3 +:104E100000EA1C000079BC183BCEF5EA0C100AE051 +:104E20006B0900EA1B000077BBF80B0D0A504A6CB7 :104E30000C500C6C1C503C6C2C502C5804C1F04095 :104E4000096E0B404CB93BE06C03E8F60C0C0A14FD :104E500019500940396E1B404CB93BE06C03E8F631 @@ -1256,180 +1256,180 @@ :104E70006C03E8F60C0C0A14195029403B402C181E :104E80001B506B403B5C3B402C181B505B400CF8AC :104E90000C10646E3B406AF60A034C6E4B405AF6A7 -:104EA0000A034CE0A07C83E068999A00A0DF00131D +:104EA0000A034CE0A07C8DE068999A00C7B000131B :104EB00002F1EC560400640000800100650001006E :104EC00000D184010D02F1EC56030000000100EA5C -:104ED000189999E0699999EA193FB9E0A07B8B1478 -:104EE0009416956EBCE0A07C7408980A99E0A07BAB -:104EF00082E0A07C54504C6E5C400BB73C6E6B4023 +:104ED000189999E0699999EA193FB9E0A07B95146E +:104EE0009416956EBCE0A07C7E08980A99E0A07BA1 +:104EF0008CE0A07C5E504C6E5C400BB73C6E6B400F :104F00006AF60A034C6E7B405AF60A034CE0A07C1A -:104F100060E068999AEA189999E0699999EA193FC5 -:104F2000B9E0A07B68149416956EBCE0A07C510893 -:104F3000980A99E0A07B5FE0A07C31503C6E8C40E9 +:104F10006AE068999AEA189999E0699999EA193FBB +:104F2000B9E0A07B72149416956EBCE0A07C5B087F +:104F3000980A99E0A07B69E0A07C3B503C6E8C40D5 :104F40000BB73C6E9B406AF60A034C6EAB405AF6B8 -:104F50000A034CE0A07C3DE068999AEA189999E030 -:104F6000699999EA193FB9E0A07B45149416956EAA -:104F7000BCE0A07C2E08980A99E0A07B3CE0A07CD5 -:104F80000E502CE06C0904EA1C00002C8CF92B005C -:104F900000404CB93BE06C0904EA1C00002C7CF991 -:104FA0002A0000403CF40C034BE06C0904EA1C00AE +:104F50000A034CE0A07C47E068999AEA189999E026 +:104F6000699999EA193FB9E0A07B4F149416956EA0 +:104F7000BCE0A07C3808980A99E0A07B46E0A07CC1 +:104F800018502CE06C0900EA1C00002C8CF92B0056 +:104F900000404CB93BE06C0900EA1C00002C7CF995 +:104FA0002A0000403CF40C034BE06C0900EA1C00B2 :104FB000002C6CF92A0000402CF40C034B850BE00C -:104FC0006C0904EA1C00002C5CF92B0000404C002A -:104FD000E5B7001302F1EC56040065000080010003 +:104FC0006C0900EA1C00002C5CF92B0000404C002E +:104FD000726E001302F1EC560400650000800100BF :104FE0006600010000444F010D02F1EC5603000081 -:104FF000000100B93BE06C0904EA1C00002C4CF9EC -:105000002A0000403CF40C034BE06C0904EA1C004D +:104FF000000100B93BE06C0900EA1C00002C4CF9F0 +:105000002A0000403CF40C034BE06C0900EA1C0051 :10501000002C3CF92A0000402CF40C034B851BE0CB -:105020006C0904EA1C00002C2CF92B0000404CB940 -:105030003BE06C0904EA1C00002C1CF92A0000402B -:105040003CF40C034BE06C0904EA1C00002C0CF946 +:105020006C0900EA1C00002C2CF92B0000404CB944 +:105030003BE06C0900EA1C00002C1CF92A0000402F +:105040003CF40C034BE06C0900EA1C00002C0CF94A :105050002A0000402CF40C034B852B5801C0309AD9 :105060002CA20C408C580CC0303FBCC028407C2F78 :105070007DE3CD80FE0000D401201DFACCFFFF307F -:105080000BB88BB89BE06C4532EA1C8000198CBAD7 -:105090008C300BC108E06CF20CEA1C8001160CF994 -:1050A0002A0000E06C0904EA1C0000160C2BFCB876 +:105080000BB88BB89BE06C434EEA1C8000198CBABD +:105090008C300BC108E06CF278EA1C8001160CF928 +:1050A0002A0000E06C0900EA1C0000160C2BFCB87A :1050B0008A2FFB583BCF05E06C0088BA9C300CBAB5 :1050C000AC3029FACAFFFF35CB302CE0A010A05835 :1050D0000CC0313FFCC618E06C0089BA9C300CBA99 :1050E000AC3029FACAFFFF35CB302CE0A010905825 -:1050F0000CC031007C5C001302F1EC560400660029 +:1050F0000CC03100AF4D001302F1EC560400660005 :10510000008001006700010000FBF4010D02F1ECDA :10511000560300000001003FFCC51830181A99E042 :105120006A008035CB302CE0A010B0580CC0313F65 -:10513000FCC4581B8CE06B0904EA1B00002BCBB6A7 -:105140008CE06B0904EA1B00002F8BE06C0904EA79 +:10513000FCC4581B8CE06B0900EA1B00002BCBB6AB +:105140008CE06B0900EA1B00002F8BE06C0900EA81 :105150001C0000FEB0FA80580CC315300BC118E0DB -:105160006CF044EA1C8001F80B032AE0690904EAA8 +:105160006CF0B0EA1C8001F80B032AE0690900EA40 :10517000190000F60C15021809F34A00482FFB58D5 -:105180003BCEF5300CE06B0904EA1B00002ACBB6DD -:105190008C300CE06B0904EA1B00002ABBB68C3093 -:1051A0000CE06B0904EA1B0000F74C0070E06B098F -:1051B00004EA1B0000F74C006C300C2FFDD8028075 +:105180003BCEF5300CE06B0900EA1B00002ACBB6E1 +:105190008C300CE06B0900EA1B00002ABBB68C3097 +:1051A0000CE06B0900EA1B0000F74C0070E06B0993 +:1051B00000EA1B0000F74C006C300C2FFDD8028079 :1051C00000881880008870580CC1E0F92B0000E0BE :1051D0004B0020C194F92B0001E04B0020C144F9A1 :1051E0002B0002E04B0020C0F4F92B00005A1BC03A :1051F000B5F92B00015A1BC0752FECF92B00005A92 :105200001B5F4CC028300C5C5C5EFCEBCD40FC208E -:105210001D18961697149400BB8B001302F1EC56E0 +:105210001D18961697149400993B001302F1EC5652 :10522000040067000080010068000100006C1F019D :105230000D02F1EC560300000001001293109230B1 -:1052400005E06C0978EA1C000078BC201CC04020F6 -:105250001CC400C7F8E06C0978EA1C0000790BE078 -:105260006C0978EA1C000078FC181BE04B01F4C7BD -:1052700013E06C0978EA1C0000790CE06B0978EA0D +:1052400005E06C0974EA1C000078BC201CC04020FA +:105250001CC400C7F8E06C0974EA1C0000790BE07C +:105260006C0974EA1C000078FC181BE04B01F4C7C1 +:1052700013E06C0974EA1C0000790CE06B0974EA15 :105280001B000097FCFEB0FC2518955805C625E0CC -:105290006C0978EA1C000078DC580CC091E06C09BD -:1052A00078EA1C00002C8CCA2F580CC081302CE0EE -:1052B0006B0978EA1B000097BCC078300CE06B09E2 -:1052C00078EA1B000097BCFEB0FD46580CC424C809 +:105290006C0974EA1C000078DC580CC091E06C09C1 +:1052A00074EA1C00002C8CCA2F580CC081302CE0F2 +:1052B0006B0974EA1B000097BCC078300CE06B09E6 +:1052C00074EA1B000097BCFEB0FD46580CC424C80D :1052D000181A9CFEB0FC1C18955805C3B5E06C0963 -:1052E00078EA1C00002C8CF92B0000FB2A0000142B -:1052F0003BC171E06C0978EA1C00002C7CF92B00A2 -:1053000000FB2A0001143BC0C1E06C0978EA1C00D4 +:1052E00074EA1C00002C8CF92B0000FB2A0000142F +:1052F0003BC171E06C0974EA1C00002C7CF92B00A6 +:1053000000FB2A0001143BC0C1E06C0974EA1C00D8 :10531000002C6CF92B0000FB2A0002143BC0203447 -:1053200005300CE06B0978EA1B000097BC300CC01C -:10533000E81A9B5C5CF60C060AE06B006F610013D8 +:1053200005300CE06B0974EA1B000097BC300CC020 +:10533000E81A9B5C5CF60C060AE06B007DD5001356 :1053400002F1EC56040068000080010069000100D1 :10535000002CA4010D02F1EC56030000000100092D -:1053600078EA1B00005C5C180B2C8BB68A2FFC5C67 +:1053600074EA1B00005C5C180B2C8BB68A2FFC5C6B :105370005C583CCF155805C0340A9CC3D804980625 :1053800099089A0E9B0C9CFEB0FD06580CC345581C -:105390001CC275E06B0978EA1B000076DB580BC075 -:1053A000B1E06B0978EA1B0000770BE06A0978EA44 -:1053B0001A000095FB301BE06A0978EA1A00009594 -:1053C000DBE06B0978EA1B000076BB580BC071303C -:1053D0001BE06A0978EA1A000095BB1845C07830CE -:1053E0000CE06B0978EA1B000097DCFEB0FCC658A5 +:105390001CC275E06B0974EA1B000076DB580BC079 +:1053A000B1E06B0974EA1B0000770BE06A0974EA4C +:1053B0001A000095FB301BE06A0974EA1A00009598 +:1053C000DBE06B0974EA1B000076BB580BC0713040 +:1053D0001BE06A0974EA1A000095BB1845C07830D2 +:1053E0000CE06B0974EA1B000097DCFEB0FCC658A9 :1053F0000CC0250A9C2FFDE3CD80FCEBCD4080182E :105400009716985807C041380CE3CD8080E06C09AE -:1054100078EA1C0000780C580CC0413FDCE3CD80DA -:1054200080E06C0978EA1C000078CC580CC4200E8F +:1054100074EA1C0000780C580CC0413FDCE3CD80DE +:1054200080E06C0974EA1C000078CC580CC4200E93 :10543000992E090E9A2ECA0E9B2F4B0E9CC0BF1898 :105440009B580BC375300AC2A85C5AF40C15010EA8 -:105450000C9869E0680978EA1800005C5AF40C00BE -:10546000B056001302F1EC56040069000080010000 +:105450000C9869E0680974EA1800005C5AF40C00C2 +:10546000A662001302F1EC560400690000800100FE :105470006A00010000B96F010D02F1EC5603000053 :105480000001001502180891495C5AF40C15020E2F -:105490000C7859E0680978EA1800005C5AF40C1599 -:1054A00002180891795C5AEE0A0329E0680978EA43 +:105490000C7859E0680974EA1800005C5AF40C159D +:1054A00002180891795C5AEE0A0329E0680974EA47 :1054B0001800005C5AF40C1502180891192FFA5CB8 -:1054C0005A583ACD55E06C0978EA1C00002D8C98AA -:1054D0000CEF5C0020E06C0978EA1C000078CC58E6 -:1054E0000CC030580BC374300AC2A8E0690978EACE +:1054C0005A583ACD55E06C0974EA1C00002D8C98AE +:1054D0000CEF5C0020E06C0974EA1C000078CC58EA +:1054E0000CC030580BC374300AC2A8E0690974EAD2 :1054F0001900005C5AF40C15021809721C5C5AEE73 -:105500000A092CE0690978EA1900005C5AF40C15C4 +:105500000A092CE0690974EA1900005C5AF40C15C8 :10551000021809724C5C5AF40915010E09B26CE0CC -:10552000690978EA1900005C5AF40C15021809722E +:10552000690974EA1900005C5AF40C150218097232 :105530007C5C5AF40915020E09935C2FFA5C5A58E8 -:105540003ACD55E06C0978EA1C00002D8C980C2EA1 -:1055500007AE0CE06C0978EA1C0000791CE06A09CF -:1055600078EA1A00002C0A740918099509169CE3B8 -:10557000CD8080D401300BC3A8E06CF218EA1C8007 -:1055800001160C003B51001302F1EC5604006A00B6 +:105540003ACD55E06C0974EA1C00002D8C980C2EA5 +:1055500007AE0CE06C0974EA1C0000791CE06A09D3 +:1055600074EA1A00002C0A740918099509169CE3BC +:10557000CD8080D401300BC3A8E06CF284EA1C809B +:1055800001160C00D469001302F1EC5604006A0005 :10559000008001006B0001000006D4010D02F1EC57 -:1055A00056030000000100F92A0000E06C0978EAC7 -:1055B0001C0000160C2C8CB88AE06CF050EA1C80A1 -:1055C00001F80B032AE0690978EA190000F60C15C6 -:1055D000021809934AE06CF050EA1C8001F80B03B2 -:1055E0002AE0690978EA190000F60C1502180993F7 -:1055F0001AE06CF050EA1C8001F80B032AE06909FC -:1056000078EA190000F60C15021809937A2FFB5856 -:105610003BCC65300CE06B0978EA1B00002D8BB6A3 -:105620000C300CE06B0978EA1B0000F74C004033AB -:105630002CE06B0978EA1B0000F74C0044300CE0CA -:105640006B0978EA1B000097CC301CE06B0978EA04 -:105650001B000097BC3FFCE06B0978EA1B00009739 -:105660000C300CE06B0978EA1B000097DC303CFE44 -:10567000B0F82EFEB0FD5C580CC094E06CF1C8EAA6 -:105680001C8001E0A00DCC300CD802E06C0978EA57 +:1055A00056030000000100F92A0000E06C0974EACB +:1055B0001C0000160C2C8CB88AE06CF0BCEA1C8035 +:1055C00001F80B032AE0690974EA190000F60C15CA +:1055D000021809934AE06CF0BCEA1C8001F80B0346 +:1055E0002AE0690974EA190000F60C1502180993FB +:1055F0001AE06CF0BCEA1C8001F80B032AE0690990 +:1056000074EA190000F60C15021809937A2FFB585A +:105610003BCC65300CE06B0974EA1B00002D8BB6A7 +:105620000C300CE06B0974EA1B0000F74C004033AF +:105630002CE06B0974EA1B0000F74C0044300CE0CE +:105640006B0974EA1B000097CC301CE06B0974EA0C +:105650001B000097BC3FFCE06B0974EA1B0000973D +:105660000C300CE06B0974EA1B000097DC303CFE48 +:10567000B0F82EFEB0FD5C580CC094E06CF234EA39 +:105680001C8001E0A00DCC300CD802E06C0974EA5B :105690001C00002C8CFEB0FDE1580CC1C0E06C0970 -:1056A00078EA1C00002C8C00B56E001302F1EC5659 +:1056A00074EA1C00002C8C009D0A001302F1EC56D9 :1056B00004006B00008001006C0001000012FC017E :1056C0000D02F1EC56030000000100FEB0F9F8589D -:1056D0000CC094E06CF1F0EA1C8001E0A00DB23047 -:1056E0000CD802FEB0FA3E580C5F5CE06B0978EA19 +:1056D0000CC094E06CF25CEA1C8001E0A00DB230DA +:1056E0000CD802FEB0FA3E580C5F5CE06B0974EA1D :1056F0001B000097BCC128FEB0FA34580CC084309F -:105700001CE06B0978EA1B000097BCC078302CE0E5 -:105710006B0978EA1B000097BC301CE06B0978EA43 +:105700001CE06B0974EA1B000097BCC078302CE0E9 +:105710006B0974EA1B000097BC301CE06B0974EA4B :105720001B0000970C301CD8020000D401301CE094 -:105730006B0978EA1B000097CCFEB0FB55301CD8F3 -:10574000020000300CE06B0978EA1B000097CC30B7 -:105750000CE06B09C0EA1B0000B68C301C5EFC300C +:105730006B0974EA1B000097CCFEB0FB55301CD8F7 +:10574000020000300CE06B0974EA1B000097CC30BB +:105750000CE06B09BCEA1B0000B68C301C5EFC3010 :105760001C5EFCD401201D5C5C187CC040201CC168 -:10577000B0C678E06C0978EA1C00002C8CF92A008D -:1057800000B68AE06C0978EA1C00002C7CF92A003B -:1057900000B69AE06C0978EA1C00002C6CF92A002B -:1057A00000B6AAC4E8E06C0978EA1C0000780C583E -:1057B0000CC0B13FDC500CE06CF0C8EA1C8001E08A -:1057C000A00D40300CC3E8300CC0D80051050013C8 +:10577000B0C678E06C0974EA1C00002C8CF92A0091 +:1057800000B68AE06C0974EA1C00002C7CF92A003F +:1057900000B69AE06C0974EA1C00002C6CF92A002F +:1057A00000B6AAC4E8E06C0974EA1C0000780C5842 +:1057B0000CC0B13FDC500CE06CF134EA1C8001E01D +:1057C000A00D40300CC3E8300CC0D80096910013F7 :1057D00002F1EC5604006C00008001006D00010035 :1057E000007844010D02F1EC560300000001005C5A -:1057F0005CF60C070AE0690978EA1900005C5C189D +:1057F0005CF60C070AE0690974EA1900005C5C18A1 :10580000092C89B28A2FFC5C5C583CCF25E06C09DE -:1058100078EA1C000078CC580CC031301CC248E03B -:105820006C0978EA1C00002C8CFEB0FD3B580CC0C3 -:1058300090E06C0978EA1C00002C8CFEB0F952C193 -:1058400028FEB0F9A1580CC084301CE06B0978EA3E -:105850001B000097BCC078302CE06B0978EA1B0075 +:1058100074EA1C000078CC580CC031301CC248E03F +:105820006C0974EA1C00002C8CFEB0FD3B580CC0C7 +:1058300090E06C0974EA1C00002C8CFEB0F952C197 +:1058400028FEB0F9A1580CC084301CE06B0974EA42 +:105850001B000097BCC078302CE06B0974EA1B0079 :105860000097BC301C2FFDD8020000EBCD40E0209B -:10587000BD1895E06CF1E8EA1C8001B90ABB1BE099 -:105880006C09C0EA1C0000198C580CC171E06C4313 -:10589000E0EA1C0000782B2EEBF72C0000E0A08B38 -:1058A0005FE06B0978EA1B0000F74C0044301CE015 -:1058B0006B09C0EA1B0000B68CE06C43E0EA1C00F8 +:10587000BD1895E06CF254EA1C8001B90ABB1BE02C +:105880006C09BCEA1C0000198C580CC171E06C4317 +:10589000DCEA1C0000782B2EEBF72C0000E0A08B3C +:1058A00091E06B0974EA1B0000F74C0044301CE0E7 +:1058B0006B09BCEA1B0000B68CE06C43DCEA1C0000 :1058C00000782C2F1C198C581CC2F1FEB0F82E58F1 -:1058D0000CC0B43FBC500CE06CF0ECEA1C8001E062 +:1058D0000CC0B43FBC500CE06CF158EA1C8001E0F5 :1058E000A00CC2300CC798300BFACCFFF8FEB00009 -:1058F000CBB0001302F1EC5604006D0000800100F3 +:1058F000493F001302F1EC5604006D0000800100E6 :105900006E00010000ED8F010D02F1EC5603000066 :10591000000100FDCF1896FEB0F81A580CC0B43F35 -:10592000BC500CE06CF104EA1C8001E0A00CAE302D +:10592000BC500CE06CF170EA1C8001E0A00CAE30C1 :105930000CC658407CBA0C408B409C181BBA1B40CC :105940008B5C3B409C181BBA2BC498301BFACCFFD5 :10595000F8FEB0FDAF18963007C178FACCFFF8F822 -:1059600007032CE0A077D7E068147BEA1847AEE085 -:10597000697AE1EA193F84E0A076DFE0A077B11A06 +:1059600007032CE0A077E1E068147BEA1847AEE07B +:10597000697AE1EA193F84E0A076E9E0A077BB1AF2 :105980009BF6070A1C2FF75837CE955806C03430BF :105990000CC358EDB60000C042E06C7FFFBA0CEDBE :1059A000B60001C042FE7C8000BA0CEDB60002C019 @@ -1438,30 +1438,30 @@ :1059D000B60005C042FE7C8000BA2C9A0CAA8C9AB4 :1059E0000CA94CAA9C9A1CAAAC9A1CA94CAABC9AB9 :1059F0002CAACC9A2CA94CAADC301C2F5DE3CD80BC -:105A0000E0D7038001846C80008774D42120DD18E6 -:105A100095300700C09C001302F1EC5604006E00A4 +:105A0000E0D703800184D080008774D42120DD1882 +:105A1000953007008D9D001302F1EC5604006E00D6 :105A2000008001006F000100005234010D02F1EC12 -:105A300056030000000100E06CF1E0EA1C8001B9AF -:105A40000ABB1BE0A00B181894301CE06B0978EA25 -:105A50001B000097CCE06C0978EA1C0000780C5819 -:105A60000CC090E06C0904EA1C00002BCC198C5887 -:105A70002CC040FEB0FDDAC90EE06C0904EA1C003F +:105A300056030000000100E06CF24CEA1C8001B942 +:105A40000ABB1BE0A00B181894301CE06B0974EA29 +:105A50001B000097CCE06C0974EA1C0000780C581D +:105A60000CC090E06C0900EA1C00002BCC198C588B +:105A70002CC040FEB0FDDAC90EE06C0900EA1C0043 :105A8000002BCC198CAA8CAA97AAA7AAB7303AE007 -:105A90006BF218EA1B8001301CC9BE300BFACCFF38 +:105A90006BF284EA1B8001301CC9BE300BFACCFFCC :105AA000F0FEB0FD1918975807C034300CCA080E24 :105AB0009CE21C0015580CC0303FA7C138E217000B :105AC0002A5807C0303F97C0D8404C580CC091406E :105AD0005C580CC061406C580CC0313F87C0283006 -:105AE00007E06C0904EA1C00002BFCF92B0000AA5B -:105AF000CBE06C0904EA1C00002BECF92B0000AA97 -:105B0000DBE06C0904EA1C00002BDCF92B0000AA86 +:105AE00007E06C0900EA1C00002BFCF92B0000AA5F +:105AF000CBE06C0900EA1C00002BECF92B0000AA9B +:105B0000DBE06C0900EA1C00002BDCF92B0000AA8A :105B1000EBAAF7300CEB6C0008300CEB6C00093092 -:105B200006C178FACCFFF0F806032CE0A07705E078 -:105B300068A9FCEA18D2F1002407001302F1EC5620 +:105B200006C178FACCFFF0F806032CE0A0770FE06E +:105B300068A9FCEA18D2F10021AC001302F1EC567E :105B400004006F00008001007000010000425C0151 :105B50000D02F1EC56030000000100E069624DEA1D -:105B6000193F50E0A0760DE0A076DF1A9BF6060AFA -:105B70001C2FF65836CE951A9B302CE0A048049A7C +:105B6000193F50E0A07617E0A076E91A9BF6060AE6 +:105B70001C2FF65836CE951A9B302CE0A047F89A89 :105B80000CA94CEB6C000A9A0CEB6C000B9A1CA94C :105B90004CEB6C000C9A1CEB6C000D9A2CA94CEB96 :105BA0006C000E9A2CEB6C000FEB670010302B088A @@ -1470,12 +1470,12 @@ :105BD00015580CC0203FA70E9CE21C002A580CC090 :105BE000203F97403CA94CEB6C0011403CEB6C0013 :105BF00012402CA94CEB6C0013402CEB6C00142EC3 -:105C0000B5AA87300CE06B0978EA1B000097CC300E -:105C10001C2F3DD822D7038000853C80015DFE808B -:105C2000015C2280015DCA8001002880008B28EB86 -:105C3000CD40E0201D3007E06CF209EA1C80011A1B +:105C0000B5AA87300CE06B0974EA1B000097CC3012 +:105C10001C2F3DD822D7038000853C80015E128076 +:105C2000015C3680015DDE8001001080008B28EB76 +:105C3000CD40E0201D3007E06CF275EA1C80011AAF :105C40009B198AB68A199AB69A19ACBAACE0660062 -:105C5000D43018FAC9FFFE30FAF7D60049A700136E +:105C5000D43018FAC9FFFE30FAF7D600D7D10013B6 :105C600002F1EC5604007000008001007100010098 :105C70000056E1010D02F1EC56030000000100C0E6 :105C800008301CE0A00BB61BACE04C00D4C0E132E5 @@ -1484,7 +1484,7 @@ :105CB000E0321CBA8C310CBA9C30291A9AF7D6C043 :105CC00008301CE0A00B6A1897CF00322CBA8C3039 :105CD00005BA9530291A9AF7D6C008301CE0A00BF7 -:105CE0005D1897CE30323CBA8CE06C00C0EA1C00E4 +:105CE0005D1897CE30323CBA8CE06C00B0EA1C00F4 :105CF00000198CA7BCBA9C30291A9AF7D6C0083074 :105D00001CE0A00B4B1897CD10324CBA8C312CBA3A :105D10009C30291A9AF7D6C008301CE0A00B3E1818 @@ -1494,11 +1494,11 @@ :105D50009CE06700D430291A9AF7D7C008301CE0BD :105D6000A00B1CC0412FFDE3CD8080321CBA8C31CA :105D70000CBA9C30291A9AF7D7C008301CE0A00052 -:105D8000937A001302F1EC560400710000800100C8 +:105D80008A3E001302F1EC5604007100008001000D :105D90007200010000C32A010D02F1EC560300005D :105DA0000001000B0DCF20322CBA8C300CBA9C3085 :105DB000291A9AF7D7C008301CE0A00B01CE603238 -:105DC0003CBA8CE06C00C0EA1C0000198CA7BCBA7D +:105DC0003CBA8CE06C00B0EA1C0000198CA7BCBA8D :105DD0009C30291A9AF7D7C008301CE0A00AF0CDF1 :105DE00050324CBA8C312CBA9C30291A9AF7D7C051 :105DF00008301CE0A00AE4CC9B0000D401201D1A4E @@ -1507,12 +1507,12 @@ :105E2000020000D401201D1A9C300BB88BB89B32A5 :105E30000CBA8C300CBA9C30291A9AE06B00D43022 :105E40001CE0A00ABD2FFDD8020000EBCD40F820D9 -:105E50001D18931694E067F05CEA1780011A9C0FF6 +:105E50001D18931694E067F0C8EA1780011A9C0F8A :105E60008BB88B0F9BB89B3056E06500D430181A66 :105E700099327AF7D5C008301CE0A00ACD581CC171 :105E8000611B8CEDBC0003C122F1D4C0080699E06F :105E90006A00A8F7D5C008301CE0A00ABDC0E12FF9 -:105EA000C70E9C00C898001302F1EC560400720063 +:105EA000C70E9C0086EF001302F1EC56040072004E :105EB0000080010073000100007C91010D02F1ECF3 :105EC00056030000000100E0A00A3A300CC0980C14 :105ED0009CFE3600015C7CCDB1300CC028301C2FFC @@ -1522,70 +1522,70 @@ :105F1000412FFDE3CD80C0321CBA8C3006BA9630DA :105F2000291A9AF7D7C008301CE0A00A5BCF2032AC :105F30002CBA8CBA9630291A9AF7D7C008301CE0D0 -:105F4000A00A50CE70323CBA8CE06C00C0EA1C0053 +:105F4000A00A50CE70323CBA8CE06C00B0EA1C0063 :105F500000198CA7BCBA9C30291A9AF7D7C0083010 :105F60001CE0A00A3FCD60324CBA8C340CBA9C3095 :105F7000291A9AF7D7C008301CE0A00A33CCABEB43 :105F8000CD5EFF23AD1A9C300BB88BB89BFACCFFCB -:105F9000FEE06BE550EA1B80012FEB178AB88A17E9 -:105FA0009AB89AFACCFFD8E06BE550EA1B80012F33 +:105F9000FEE06BE5BCEA1B80012FEB178AB88A177D +:105FA0009AB89AFACCFFD8E06BE5BCEA1B80012FC7 :105FB000CBE06A00C0B709B928208ACFD13000E011 -:105FC0006CE550EA1C8001005E52001302F1EC56B1 +:105FC0006CE5BCEA1C8001004EE7001302F1EC56C0 :105FD0000400730000800100740001000068B90132 :105FE0000D02F1EC56030000000100F8EA00C4FACB :105FF000EB0004F8EA00CCFAEB000CFACCFFE4E08A -:106000006BE550EA1B8001FE3BFF2CB709B928174E +:106000006BE5BCEA1B8001FE3BFF2CB709B92817E2 :106010000818A8E0A0088A506CC79FC0B1E06CE5E2 -:1060200050EA1C8001FE3CFF20E0A0099B300CC51B +:10602000BCEA1C8001FE3CFF20E0A0099B300CC5AF :10603000F9E06B0320406CE0A00B6EC1083010301B :106040000C507C5082509243CC980CBA6C43CC9844 :106050001CBA7C43CC982CFB5C001032ECBA8C3020 :1060600002BA92E06700D430291A9AF7D7C00830F4 -:106070001CE0A009C9C0B1E06CE550EA1C8001FE3B +:106070001CE0A009C9C0B1E06CE5BCEA1C8001FECF :106080003CFF18E0A0096E300CC32932ECBA8C3307 :10609000FCBA9C30291A9AF7D7C008301CE0A00936 -:1060A000B3C0B1E06CE550EA1C8001FE3CFF10E09B +:1060A000B3C0B1E06CE5BCEA1C8001FE3CFF10E02F :1060B000A00958300CC1C9E06B00C8406CE0A00BCF :1060C0002B3018FAC9FFFE32FAF7D7C008301CE0AF -:1060D000A009C6C0B1E06CE550EA1C8001FE3CFF9F -:1060E00008E0A0093F300CC0391BAC00BE2B0013E8 +:1060D000A009C6C0B1E06CE5BCEA1C8001FE3CFF33 +:1060E00008E0A0093F300CC0391BAC0032AF0013F0 :1060F00002F1EC56040074000080010075000100FC :10610000000201010D02F1EC56030000000100ED58 :10611000BC0007C033300CCFD8E06800C0FAC9FF1C :10612000D8E06A00A8F7D7C008301CE0A009AA5040 -:106130005C405C580CC0B1E06CE550EA1C8001FE8C +:106130005C405C580CC0B1E06CE5BCEA1C8001FE20 :106140003CFF00E0A00920300CCE4830033001C0F5 :10615000282FA1E06451ECEA141EB8E065EB85EA53 :10616000153F91E04100C0C5E4FACBFFD8020B1700 :106170009A178CF9EA108ABA2A17BA17ACF9EA10FA :106180008ABA3A17DA17CCF9EA108ABA4A2FF343D7 -:10619000ECB8039A2CE0A062B7E0A073D508980A87 -:1061A00099E0A07348E0A0741A43EBB61C9A360C31 -:1061B0009CE0A062A9E0A073C708980A99E0A073C8 -:1061C0003AE0A0740C43EBB62C9A470E9CE0A06218 -:1061D0009BE0A073B914981699089A0A9BE0A073E3 -:1061E0002AE0A073FC43EBB63C9A2C407A180A5084 +:10619000ECB8039A2CE0A062C1E0A073DF08980A73 +:1061A00099E0A07352E0A0742443EBB61C9A360C1D +:1061B0009CE0A062B3E0A073D108980A99E0A073B4 +:1061C00044E0A0741643EBB62C9A470E9CE0A06204 +:1061D000A5E0A073C314981699089A0A9BE0A073CF +:1061E00034E0A0740643EBB63C9A2C407A180A506F :1061F0007A408B0C0B508B409B0E0B509B300CC08D :10620000282FFC583CCA64FACBFFFCF60C041B0098 -:10621000A1A5001302F1EC560400750000800100F6 +:106210007C1B001302F1EC560400750000800100A5 :10622000760001000097CA010D02F1EC5603000050 :10623000000100FE3BF3BAE04B188DCF53301C43F6 -:10624000BBB68C300CC7889A2CE0A0626FE0A073BC -:106250008D08980A99E0A07300E0A073D243CBB6F2 -:106260000C9A3CE0A06262E0A0738008980A99E072 -:10627000A072F3E0A073C543CBB61C9A4CE0A062B9 -:1062800055E0A0737308980A99E0A072E6E0A07345 -:10629000B843CBB62C5C505810FE91FEF69A6B4377 +:10624000BBB68C300CC7889A2CE0A06279E0A073B2 +:106250009708980A99E0A0730AE0A073DC43CBB6D4 +:106260000C9A3CE0A0626CE0A0738A08980A99E05E +:10627000A072FDE0A073CF43CBB61C9A4CE0A062A5 +:106280005FE0A0737D08980A99E0A072F0E0A07327 +:10629000C243CBB62C5C505810FE91FEF69A6B436D :1062A000CC980C181BBA6B9A7B43CC981C162CBA52 :1062B0007CFB0A001043CB962B142BFB5B00109A3F :1062C0006A2FCA589AC3525C8C2FCC589CC3125C5C :1062D0008B2FCB589BC2D2FC173FA0407CE0A06222 -:1062E00025E0A0734330080E99E0A072B6E0A073D9 -:1062F0008843DBB60C408CE0A06218E0A073363017 -:10630000080E99E0A072A9E0A0737B43DBB61C40A5 -:106310009CE0A0620BE0A0732930080E99E0A07207 -:106320009CE0A0736E43DBB62C301C43BBB68C40A4 -:106330005CA1AC007F3F001302F1EC560400760034 +:1062E0002FE0A0734D30080E99E0A072C0E0A073BB +:1062F0009243DBB60C408CE0A06222E0A0734030F9 +:10630000080E99E0A072B3E0A0738543DBB61C4091 +:106310009CE0A06215E0A0733330080E99E0A072F3 +:10632000A6E0A0737843DBB62C301C43BBB68C4090 +:106330005CA1AC00EA77001302F1EC560400760091 :106340000080010077000100002871010D02F1ECCE :10635000560300000001005C6C2C6DE3CDCEFFEB1A :10636000CD40C0201D1A9C300BB88BB89B320CBAA4 @@ -1599,11 +1599,11 @@ :1063E00008301CE0A00846C0B032ECBA8CBA963037 :1063F000291A9AF7D7C008301CE0A0083B2FFDE30C :10640000CD80C0D431209D189016913007E063EA0A -:106410008CEA1380011A9C078BB88B079BB89BE60C +:10641000F8EA1380011A9C078BB88B079BB89BE6A0 :10642000EA0004FAEB0010E6EA000CFAEB001C307C :1064300002E6EA0014FAEB000830043006300CBA29 :10644000AC506C303CBABC3035E0A006A5501CC046 -:1064500098069C2E4CE0A00072AE001302F1EC56A0 +:1064500098069C2E4CE0A000DD85001302F1EC565E :1064600004007700008001007800010000BF9A015D :106470000D02F1EC5603000000010007BB305B4049 :106480001CE0A009911BBC189BFE3BFF01BABB5C42 @@ -1636,11 +1636,11 @@ :1066300017C920316C810C811C812C830C831C8335 :106640002C0E9C5C6CC819FB2B0002581B3004C23A :10665000655C645834C264E0040027FB2C0002E04F -:10666000A0609A18966E0CE0A060960C9BE0A05F6C -:1066700027E0A071B1E06851ECEA181EB8E069EBC0 -:1066800085EA193FB1E0A0711EE0A071F08F0C2FD8 +:10666000A060A418966E0CE0A060A00C9BE0A05F58 +:1066700031E0A071BBE06851ECEA181EB8E069EBAC +:1066800085EA193FB1E0A07128E0A071FA8F0C2FC4 :10669000F4CE0B300CE004092C2FF45C6458340069 -:1066A000CB03001302F1EC560400790000800100D6 +:1066A000BF09001302F1EC560400790000800100DC :1066B0007A000100006AEA010D02F1EC56030000C5 :1066C000000100CFA5300CBAAC323CFB6C001CE0E2 :1066D0006C00A2FB6C001D3029FACAFFE4E06B00DD @@ -1678,10 +1678,10 @@ :1068D0002B0002581B3004C2655C645834C264E269 :1068E000040027FB2C000200069A001302F1EC566C :1068F00004007B00008001007C00010000C17901E0 -:106900000D02F1EC56030000000100E0A05F7A18D0 -:10691000966E0CE0A05F760C9BE0A05E07E0A07096 -:1069200091E06851ECEA181EB8E069EB85EA193F7E -:10693000B1E0A06FFEE0A070D08F0C2FF4CE0B3032 +:106900000D02F1EC56030000000100E0A05F8418C6 +:10691000966E0CE0A05F800C9BE0A05E11E0A07082 +:106920009BE06851ECEA181EB8E069EB85EA193F74 +:10693000B1E0A07008E0A070DA8F0C2FF4CE0B301D :106940000CE204092C2FF45C645834CFA5620C606F :106950000B163CC055620B600C162CC048600B62D5 :106960000C162C621B601A143BC055621A601B1473 @@ -1690,30 +1690,30 @@ :1069900079FF51120CE04C02BDC0B2120BE04B0269 :1069A000BDC072120AE04A02BDC032301C506C40B9 :1069B0006C5C6C2F7DD8328000853C80008B2880F9 -:1069C000013AF48001381C80015D3480015C228032 -:1069D000015DCAD401198B580BC031C56CD802199E +:1069C000013B088001383080015D4880015C3680E1 +:1069D000015DDED401198B580BC031C56CD802198A :1069E0008B581BC031C05CD802C17CD8020000EBC0 -:1069F000CD40C01897E06615ACEA16000030180CC0 -:106A000099326AE06B00D4301CE0A000569C001361 +:1069F000CD40C01897E06615A8EA16000030180CC4 +:106A000099326AE06B00D4301CE0A0003EA900136C :106A100002F1EC5604007C00008001007D000100C2 :106A200000ABC1010D02F1EC5603000000010005AE :106A3000B90D8BAE8BE3CD80C00000EBCD40802044 :106A40001D18971A9C300BB88BB89B0F8CE21C005A :106A5000F0210CC040230CC100C088300CE06B005A -:106A6000C0EA1B0000B68CC0E8310CE06B00C0EA45 -:106A70001B0000B68CC078320CE06B00C0EA1B0033 -:106A800000B68C323CBA8CE06C00C0EA1C000019E5 +:106A6000B0EA1B0000B68CC0E8310CE06B00B0EA65 +:106A70001B0000B68CC078320CE06B00B0EA1B0043 +:106A800000B68C323CBA8CE06C00B0EA1C000019F5 :106A90008CA7BCBA9C30291A9AE06B00D4301CE059 :106AA000A00554AE8C2FFDE3CD8080EBCD40FC21C2 -:106AB0009D18973006E065E8E0EA158001AB0AFA18 +:106AB0009D18973006E065E94CEA158001AB0AFAAB :106AC000EB005C300CFB6C0040EAEA0008FAEB00DB :106AD00010EAEA0010FAEB0008EAEA0018BB1BFA19 :106AE000CBFFB00A9C2E0CB909B728190816A8FAD2 :106AF000CBFFBC0A9C2D4CB909B728190816A8EA87 :106B0000EA0038FAEB0038EAEA0040FAEB0030EA33 :106B1000EA0048FAEB0028EAEA0050FAEB0020EA23 -:106B2000EA0058FAEB0018E06200D4E06315B00008 -:106B3000A716001302F1EC5604007D00008001004E +:106B2000EA0058FAEB0018E06200D4E06315AC000C +:106B30005BB5001302F1EC5604007D0000800100FB :106B40007E000100003E0A010D02F1EC5603000038 :106B5000000100EA130000301806992F4930FAF7B7 :106B6000D2C008301CE0A0052FE73C000CE04C0030 @@ -1726,12 +1726,12 @@ :106BD000545854C184320CA68CFACCFFA4080C196A :106BE0008CA69C3029069AF7D2C008301CE0A0047D :106BF000BF1896CED129050A9CE0A00467300CE0AE -:106C00008F0286E0A0AD30283C198C588CF9BC026C +:106C00008F0286E0A0AD66283C198C588CF9BC0236 :106C1000082FECFE0C001FC098C398C6E8CA88CDA8 :106C2000D8C179C4C9C869CC49414CFB5C00384122 :106C30005CFB5C003A416CFB5C003C411CFB5C0073 :106C400030412CFB5C0032413CFB5C0034FB0C000F -:106C500010FB5C008D6D001302F1EC5604007E0009 +:106C500010FB5C0003C4001302F1EC5604007E003C :106C6000008001007F0001000081B1010D02F1EC04 :106C7000560300000001000020FB0C0012FB5C002A :106C800022FB0C0014FB5C00249A1CFB5C00189A8D @@ -1819,174 +1819,174 @@ :1071A0001FE73C000FEF6C00202F23078CEF6C00D3 :1071B00021E06C00FFEF6C00222DD7AE8C0C9C2ED2 :1071C0007DE3CD80FCD70380008870800088188024 -:1071D0000087748001D910D401E0A044B1D80280A6 -:1071E000010D34D401E0A0458BD80280010EF4D407 -:1071F00001E0A04627D80280011038FE7C100078FC -:107200000CE9B000055EFD00C380001302F1EC56EE +:1071D0000087748001D97CD401E0A044A5D8028046 +:1071E000010D1CD401E0A0457FD80280010EDCD443 +:1071F00001E0A0461BD80280011020FE7C10007820 +:107200000CE9B000055EFD002147001302F1EC56C9 :10721000040083000080010084000100004E110181 :107220000D02F1EC56030000000100FE7C10007816 :107230000CE9B000025EFDFE7C1000780CE9B000A5 :10724000015EFDFE7C1000780CE9B000005EFDE000 -:107250006C0590EA1C0000F92B00005C5BC060200C +:107250006C0580EA1C0000F92B00005C5BC060201C :107260002BC070201BC0A05EFDE07CC1385EFCE03E :107270006C5A00EA1C02625EFCE06C0E00EA1C071D :10728000275EFCD401CE5FA38CD802D401F80B0694 :1072900048E06A03E7300B1408F20B0049109A1219 -:1072A0009BE06803E83009E0A0A83E149CD802D413 +:1072A0009BE06803E83009E0A0A87A149CD802D4D7 :1072B00001F80B0648EE7A423F300B1408F20B003F -:1072C00049109A129BEE7842403009E0A0A82C1495 -:1072D0009CD8028001D4F8E1BA0042970A760A14D9 +:1072C00049109A129BEE7842403009E0A0A8681459 +:1072D0009CD8028001D570E1BA0042970A760A1460 :1072E0000C971C300C2F8BB68C5EFDE1BB0042F975 :1072F0003A0008582AC0215EFDF93A0008581AC021 :10730000215EFF781A7809123A780AC0A2143B5E0F :107310002D781A163A5E2D301B2F8CB88B5EFF1419 -:107320003BCFB3CF7B0000D401203D0085F6001396 +:107320003BCFB3CF7B0000D401203D00B1890013D7 :1073300002F1EC5604008400008001008500010089 :107340000024A9010D02F1EC56030000000100CB5E :107350000F1A9BCD4F1A9CCDCFCFE02FDDD80AD48A :1073600001203DCB8F1A9BCCAF1A9CCD2FCFE02FA5 -:10737000DDD80AE06C2B18EA1C0000300A300B182C -:107380009831B9B12A2019CFE15EFCE06C2B18EAE4 +:10737000DDD80AE06C2B14EA1C0000300A300B1830 +:107380009831B9B12A2019CFE15EFCE06C2B14EAE8 :107390001C00005EFC0000EBCD40C0CECF18973043 -:1073A00006E06C2BF0EA1C0000B886B896B8A6B8C8 +:1073A00006E06C2BECEA1C0000B886B896B8A6B8CC :1073B00026E0A016830E9CC2CC0E9CC24C0E9CC72D :1073C0006C0E9CE0A002C80E9CC75C0E9CC27C0E9A -:1073D0009CC3BCE0A001D2E0A0377C346CE0A09A52 -:1073E000F7343CE0A09AF4EF66002AEF66002BEF3A +:1073D0009CC3BCE0A001D2E0A03770346CE0A09B5D +:1073E00029343CE0A09B26EF66002AEF66002BEFD5 :1073F00066002C2D37AE86E3CF90C08000B2688047 -:1074000000F480D401300B998B999BC96CD802D4BD -:1074100001E0A03599DA0A8000F0F4EBCD40C01805 -:107420009730166E8C5C6CE0A03526C045301C8F02 +:1074000000F468D401300B998B999BC96CD802D4D5 +:1074100001E0A0358DDA0A8000F0DCEBCD40C01829 +:107420009730166E8C5C6CE0A0351AC045301C8F0E :107430005CC048300C8F5C30060C9C5C5CE3CD80FB -:10744000C0D7038000F024EBCD40C0189730160061 -:10745000FAF9001302F1EC560400850000800100E7 +:10744000C0D7038000F00CEBCD40C0189730160079 +:10745000175D001302F1EC56040085000080010066 :107460008600010000B162010D02F1EC560300003C -:107470000001006E8C5C6CE0A0354EC045301C8F66 +:107470000001006E8C5C6CE0A03542C045301C8F72 :107480006CC048300C8F6C30060C9C5C5CE3CD808B -:10749000C0D7038000F0A0EBCD40C018973016E0B5 -:1074A000A0367E300B581CC051301C8F3C8F2BC037 +:10749000C0D7038000F088EBCD40C018973016E0CD +:1074A000A03672300B581CC051301C8F3C8F2BC043 :1074B00098582C8F3BC041301C8F2CC0388F2B30FC -:1074C000060C9C5C5CE3CD80C0D7038000F328D41D -:1074D00001E0A03729DA0AD401E0A0A3ADDA0A80DE -:1074E00001CDC0D401300BE06A2B18EA1A000074F9 +:1074C000060C9C5C5CE3CD80C0D7038000F310D435 +:1074D00001E0A0371DDA0AD401E0A0A3DFDA0A80B8 +:1074E00001CE24D401300BE06A2B14EA1A00007498 :1074F000395809C030301BC058742A580AC020308F :107500002B581CC265189A20AAC08020AAC0B0229D :107510008AC0E0278AC110C1685C6B30ACE0A0383B -:1075200031C1485C6B314CE0A0382CC0F85C6B3347 -:10753000CCE0A03827C0A85C6BE06C00B4E0A038B9 -:1075400021C0485C6BE0A0381DE0A03863DA0AE097 -:10755000A03850DA0AD7038000F70CEBCD40801832 +:1075200025C1485C6B314CE0A03820C0F85C6B335F +:10753000CCE0A0381BC0A85C6BE06C00B4E0A038C5 +:1075400015C0485C6BE0A03811E0A03857DA0AE0BB +:10755000A03844DA0AD7038000F6F4EBCD40801857 :1075600097301C6E9B580BC1516E8C580CC041E07B -:10757000A0386C0065B7001302F1EC5604008600D9 +:10757000A0386000AE79001302F1EC5604008600DA :107580000080010087000100000ED9010D02F1EC1E :1075900056030000000100C0586E8C5C5CE0A0380F -:1075A00071300B5C5C581CC051301A8F0A8F1BC0A5 +:1075A00065300B5C5C581CC051301A8F0A8F1BC0B1 :1075B000E88F0BC0C8300B6E9A581AC051301A8F22 :1075C0001A8F0BC0488F1B8F0B300C5C5CE3CD8097 -:1075D00080D7038000F7D48000F7E8EBCD40E018B7 +:1075D00080D7038000F7BC8000F7D0EBCD40E018E7 :1075E0009730066E858F8BCCCFC0700E9CC3BF0EBC :1075F0009CC4FF3016C0488F850E9CCC2F0C9C5C21 :107600005CE3CD80E000005EFF0000EBCD40C024D5 :107610000D18971A9C30083009320BB928201BCF5F :10762000E1CD9E1896ED3C0056E04C0064C2B4FAE1 -:10763000CAFEF40E9B1A9CE0A0A5F61A9CE0A0A836 -:107640006B2FFCED3B0056180BE04B0065C055ED71 +:10763000CAFEF40E9B1A9CE0A0A6301A9CE0A0A8FB +:10764000A12FFCED3B0056180BE04B0065C055ED3B :107650003C0056F80C116430AB1A9A180A201AB480 :107660008B1A9AED3900560C092A99189B129E58CC :107670000BC0501538201B1CC8CFD12AA60D8B1863 -:107680000BAC8B2C0DE3CF80C0D7038001D38C8053 -:1076900001D87CD401C9FE00A3C4001302F1EC564A +:107680000BAC8B2C0DE3CF80C0D7038001D40080DE +:1076900001D8E8D401C9FE00314A001302F1EC56CA :1076A0000400870000800100880001000099320179 :1076B0000D02F1EC56030000000100189B2A9B30DC :1076C000091698364A10C9201ACFE1300B2AACB8F7 :1076D0008BD80AEBCD40C0207D1897A15B502B3092 :1076E0000CFB6C0010505A506930260E9BE06C2B3E -:1076F00018EA1C0000C7DCFACBFFF8FE7C4400FE51 +:1076F00014EA1C0000C7DCFACBFFF8FE7C4400FE55 :10770000B0FDD2C035301CC0F80E9B189ABB1BE0F0 -:107710006CF014EA1C8001C8CF0C9CFE36FF015CA3 +:107710006CF080EA1C8001C8CF0C9CFE36FF015C37 :107720005CCE51300C2F9DE3CD80C0EBCD40C0200E :107730007D1897A15B502B301CFB6C0010506850DB -:107740003A505930260E9BE06C2B18EA1C0000C5FD +:107740003A505930260E9BE06C2B14EA1C0000C501 :107750000CFACBFFF8FE7C4400FEB0FD99C035303A -:107760001CC0F80E9B189ABB1BE06CF020EA1C8032 +:107760001CC0F80E9B189ABB1BE06CF08CEA1C80C6 :1077700001C5FF0C9CFE36FF015C5CCE51300C2F26 :107780009DE3CD80C00000EBCD40FC202D18971468 :107790009312961094A15B169230250E9BE06C2BF1 -:1077A00018EA1C0000C25CE80C15185F1804990C5C -:1077B0009A069BFE7C4400FEB0FD7000BFAF001334 +:1077A00014EA1C0000C25CE80C15185F1804990C60 +:1077B0009A069BFE7C4400FEB0FD7000A588001375 :1077C00002F1EC56040088000080010089000100ED :1077D00000D989010D02F1EC56030000000100C040 -:1077E00035301CC0F80E9B189ABB1BE06CF02CEADD +:1077E00035301CC0F80E9B189ABB1BE06CF098EA71 :1077F0001C8001C30F0A9CFE35FF015C5CCE11307A -:107800000C2FEDE3CD80FCD401E0A0A08BD80A8042 -:1078100001CA40D401580BC0B0581BC090582BC0AF +:107800000C2FEDE3CD80FCD401E0A0A0BDD80A8010 +:1078100001CAA4D401580BC0B0581BC090582BC04B :1078200070583BC050584BC030585BC041300BC003 :107830006CD80A301BC03CD80A0000EBCD40801841 :1078400097D303580BC0A16EFC581CC111301CE02B -:10785000A0336C300C8FFCC0B8581BC0916EFC5824 -:107860000CC061300CE0A03361301C8FFCD503E309 -:10787000CF80808000F048D421189730053006C1B1 +:10785000A03360300C8FFCC0B8581BC0916EFC5830 +:107860000CC061300CE0A03355301C8FFCD503E315 +:10787000CF80808000F030D421189730053006C1C9 :10788000380A9BFE35FF015C5BC5C1580CC091EF07 :107890001C0040301BF606094B168CEF5C00403094 -:1078A000052FF65C6658B6C6E45806C161E0A0A58F -:1078B000D9E06443E0EA140000680C78BCF01C00D6 +:1078A000052FF65C6658B6C6E45806C161FEB0DB2B +:1078B00005E06443DCEA140000680C78BCF01C00AE :1078C00000C0B0EF1C0040A1ACEF5C0040301C6871 -:1078D0000B2F2BB68CCE6B5816C161E0A0A6CC0046 -:1078E000A77E001302F1EC5604008900008001001D +:1078D0000B2F2BB68CCE6B5816C161E0A0A702000F +:1078E00067F8001302F1EC560400890000800100E3 :1078F0008A000100004C42010D02F1EC5603000029 -:10790000000100E06443E0EA140000681C78BCF069 +:10790000000100E06443DCEA140000681C78BCF06D :107910001C0000C0B0EF1C0040A1BCEF5C00403078 :107920001C681B2F2BB68CCCFB5876C1D1E0A0A6CF -:10793000A9E06443E0EA140000687C78BCF01C0015 +:10793000BBE06443DCEA140000687C78BCF01C0007 :1079400000C0D0EF1C0040A7BCEF5C0040301CEF33 -:107950004C00D0687B2F2BB68CCB6BE0A0A66E3092 -:107960000CEF4C00D05896C0B0E06C43E0EA1C002D +:107950004C00D0687B2F2BB68CCB6BE0A0A6BC3044 +:107960000CEF4C00D05896C0B0E06C43DCEA1C0031 :1079700000F806032C78BCF01C0000C028301C580E :107980001CC921EF1A0040301BF606094B164AEFBE -:107990005A0040301BE06A43E0EA1A0000F4060394 +:107990005A0040301BE06A43DCEA1A0000F4060398 :1079A0002A2F2AB48BC85B30BCC18858BCC061EF99 :1079B0001B0040ABBBEF5B004058CCC061EF1B002D :1079C00040ADABEF5B004058DCC061EF1B0040AD49 :1079D000BBEF5B00402FFC5C6C58ECCE85301C2B61 -:1079E000E7AE8CD82AD7038001D5808001D7948058 -:1079F00001D77C8001D7342CDCB88B5EFD0000D42D -:107A000001FEB000937F001302F1EC5604008A00DF +:1079E000E7AE8CD82AD70380003FD88001D800802A +:1079F00001D7A08001D7D02CDCB88B5EFD0000D46D +:107A000001FEB00009B4001302F1EC5604008A0034 :107A1000008001008B00010000F3F9010D02F1EC80 :107A200056030000000100FC81D80AD401E0A03414 -:107A30006FD80A8000F3E4D401FEB0FC71D80AD4F8 +:107A300063D80A8000F3CCD401FEB0FC71D80AD41C :107A400001FEB0FC7FD80AD401FEB0FC75D80AEB69 :107A5000CD40801697FEB0FC95189B0E9CFEB0FCA6 :107A6000E3E3CF80800000EBCD40801697FEB0FCB2 :107A700089189BEE0C100AFEB0FCE0E3CF8080D4A6 :107A8000012D6CB88BC03CD80A0000EBCD40C02162 -:107A90006DFEB0D7ED1897FEB0FCE61896E0A0A6F4 -:107AA000CD300CFB5C0054FB6C002D30ABFB6B004D +:107A90006DFEB0D80F1897FEB0FCE61896E0A0A7D0 +:107AA00003300CFB5C0054FB6C002D30ABFB6B0017 :107AB0002EFB6C0030FB6C00312D660D8C580CC118 :107AC000705807C2A0300CFB6C002C305CFB6C00C3 :107AD0002D30BCFB6C002EFACCFFD41A9B32C91996 -:107AE0000A16AA2049CFD1FEB0D916C1685807C1DD +:107AE0000A16AA2049CFD1E0A07492C1685807C1F4 :107AF00040301CFB6C002C305CFB6C002D30BCFB60 :107B00006C002EFACCFFD41A9B32C9190A16AA208F -:107B100049CFD1FEB0D9002EADE3CF80C0D70380CE -:107B2000003B4480003DEC0090C7001302F1EC568E +:107B100049CFD1E0A0747C2EADE3CF80C0D70380E5 +:107B2000003B88800174E400F450001302F1EC562D :107B300004008B00008001008C00010000E7D101EF :107B40000D02F1EC56030000000100D401348CE07A -:107B5000A0979A320CFEB0D9ED348CE0A097B6D83D -:107B60000A0000D401348CE0A0978E320CE0A0A56E -:107B700057348CE0A097AAD80A0000D401348CE0D6 -:107B8000A09782321CFEB0D9D5348CE0A0979ED845 -:107B90000A0000D401348CE0A09776321CE0A0A546 -:107BA0003F348CE0A09792D80A0000EBCD408018BB -:107BB00097348CE0A097680E9CFEB0D9BB348CE063 -:107BC000A09784E3CF808080003FE4EBCD40801815 -:107BD00097348CE0A097580E9CE0A0A521348CE04F -:107BE000A09774E3CF80808001BB388001D6D0801D -:107BF00001BB7CD401E0A03403D80A8000F4B0D5E6 -:107C0000035EFDD401581CC041E0A0356FD80AE0E6 -:107C1000A0355CD80AD7038000F79C8000F77C2D44 +:107B5000A097CC320CE0A0A57D348CE0A097E8D8AB +:107B60000A0000D401348CE0A097C0320CE0A0A53C +:107B70008D348CE0A097DCD80A0000D401348CE06E +:107B8000A097B4321CE0A0A565348CE0A097D0D8B3 +:107B90000A0000D401348CE0A097A8321CE0A0A514 +:107BA00075348CE0A097C4D80A0000EBCD40801853 +:107BB00097348CE0A0979A0E9CE0A0A54B348CE003 +:107BC000A097B6E3CF80808001D704EBCD4080182A +:107BD00097348CE0A0978A0E9CE0A0A557348CE0E7 +:107BE000A097A6E3CF80808001BB9C8001D73C801A +:107BF00001BBE0D401E0A033F7D80A8000F498D5A7 +:107C0000035EFDD401581CC041E0A03563D80AE0F2 +:107C1000A03550D80AD7038000F7848000F7642D80 :107C20006C198C5EFC00002D0CB88B5EFD00002DE5 :107C30000C198C5EFC00002CECB88B5EFD00002C57 -:107C4000EC198C5EFC00002D1C198C0074A0001334 +:107C4000EC198C5EFC00002D1C198C00834800137D :107C500002F1EC5604008C00008001008D00010050 :107C6000008D69010D02F1EC560300000001005E79 :107C7000FC0000D401F96B002F5C5BC031301BC3EA @@ -2001,11 +2001,11 @@ :107D0000975C5BC091301BCD4E2C678E8C2FFCAEE8 :107D10000CE3CF8080300C2C67AE0CE3CF80802C3E :107D20006C988C5EFC0000D4015C6A5C6CE0A03353 -:107D3000D1D80A8000F5602B4CB88B5EFD00002B7B +:107D3000C5D80A8000F5482B4CB88B5EFD00002B9F :107D40004C198C5EFC0000EBCD40801897FEB0FB18 :107D5000AF2ABCB887E3CF80800000D401FEB0FB1F :107D6000A72ABC198CD802D401FEB0FBA1FE3C00AE -:107D70002EDD001302F1EC5604008D00008001009E +:107D700082A5001302F1EC5604008D000080010082 :107D80008E0001000018A2010D02F1EC5603000064 :107D9000000100FF44300A1899312B12CA201BCF72 :107DA000E1D80AEBCD40FC204D1897169614951299 @@ -2015,21 +2015,21 @@ :107DE000C4FEB0FB77F95200C640B3FEB0FB72F997 :107DF0005300C840C3FEB0FB6DF95300CA40D3FE28 :107E0000B0FB68F95300CC5C845C85FAE500085C43 -:107E1000865C87BB17E06CEEA4EA1C8001FEB0FC18 +:107E1000865C87BB17E06CEF10EA1C8001FEB0FCAB :107E2000752FCDE3CF80FCEBCD40C018973006C353 :107E30000FC02030160E9CC96FC080301CEF3B0075 :107E40004CF80B094C18465C760E9CC36FC030A3EF :107E5000A65C760E9CC47FC030A5A65C760C9C5CAC :107E60007CE3CD80C00000EBCD40E0202D189730A2 -:107E700005300CBA8CE066ED08EA1680010C9C2FE8 +:107E700005300CBA8CE066ED74EA1680010C9C2F7C :107E80008CFEB0FC430E9CC18FC780300CBACC3046 -:107E900018FAC900ADC8001302F1EC5604008E00B8 +:107E900018FAC9006231001302F1EC5604008E009A :107EA000008001008F00010000A719010D02F1EC14 :107EB00056030000000100FFFC300AE06B008C302C :107EC0005CFEB0FCB3C0B01BCCEDBC0000C0720CBB :107ED0009C2F4CFEB0FC2C301CBA8C1B8C580CC652 -:107EE00030301B0E9C2BCCE06A43E0EA1A00007491 -:107EF0005A74BA745A5D1AE0A0A4E81895EF3C00D1 +:107EE00030301B0E9C2BCCE06A43DCEA1A00007495 +:107EF0005A74BA745A5D1AE0A0A51E1895EF3C009A :107F000044500C0C9C2F0CFEB0FC12EF3C00D458DB :107F10000CC251EB3C0080EF3B0044163CC0D20C3D :107F20009CFEB0FC05301CEF6C0043EB3B0081E095 @@ -2041,7 +2041,7 @@ :107F80004C0064C0B42FD60C9CFEB0FBD1300CEF7B :107F90006C0043300B378CC10C3015C0582E860C4A :107FA0009CFEB0FBC5300B0E9CC9DE0A9C5C5C2FAE -:107FB000EDE3CD80E000000074C8001302F1EC5640 +:107FB000EDE3CD80E00000001945001302F1EC561E :107FC00004008F00008001009000010000B77101E3 :107FD0000D02F1EC56030000000100EBCD40C02083 :107FE0001D16971A9B300AB68AB69A308BBA8BBA8E @@ -2054,20 +2054,20 @@ :1080500005C4FCC1500C9CC50CC3700E77C04020F9 :1080600017C060C0883F4CFEB0FB72C0483F3CFE6A :10807000B0FB6E3015301B0C9CC77EC268E0A0A41C -:108080003729AC988C580CC2010C9CFEB0FE12C073 -:1080900050E0A0A42D294C988C0C9CC78EE06B9CC2 +:108080006D29AC988C580CC2010C9CFEB0FE12C03D +:1080900050E0A0A463294C988C0C9CC78EE06B9C8C :1080A00040F60C1900C0E30E77C0402017C060C036 :1080B000883F4CFEB0FB4CC0483F3CFEB0FB483014 :1080C00015300B0C9CC51E0A9C5C5CE3CD80E0D493 -:1080D00001581BC095301A2B9CB88A00E923001365 +:1080D00001581BC095301A2B9CB88A00541C001301 :1080E00002F1EC56040090000080010091000100B4 :1080F00000A3CC010D02F1EC56030000000100F9D1 :10810000DBC010FEB0FAB6D80A300BF96B0047C0DE :10811000ACD80A2B9C198C5EFC00002B8C198C5E51 :10812000FC0000EBCD40E018971696EC0C1518C03B -:10813000C1E0A0A3EF1895300B0E9CFEB0FDE42922 +:10813000C1E0A0A4251895300B0E9CFEB0FDE429EB :10814000458A8CFEB0FA962B87AE86E3CF80E0801E -:1081500001D910EBCD40C0201D1897C10EC3A1302E +:1081500001D97CEBCD40C0201D1897C10EC3A130C2 :1081600006300CBA0C0E9CFEB0FDB65C6CFEB0C8BE :108170007BC200FEB0C91CE04C00C8C030FEB0C9D4 :108180001DFEB0FD4B300B0E9CFEB0FDA90E9CFEFB @@ -2078,17 +2078,17 @@ :1081D000872FFDE3CF80C0800023ACEBCD40F8209B :1081E0002D18971696301CBADC3004300CBA3CBA05 :1081F000CCBACCC0481BCB2FFBBACB1BCC58AC00A5 -:10820000BF82001302F1EC560400910000800100CF +:10820000D346001302F1EC560400910000800100F7 :1082100092000100003607010D02F1EC5603000048 :10822000000100C084EF1C00661BCBF80B0A4CA1B8 -:108230009CCF42E065ECE8EA1580011BCC500C0AAB +:108230009CCF42E065ED54EA1580011BCC500C0A3E :108240009CFEB0FAAB1BCC58ACC0612F850A9CFEDB :10825000B0FAA4CBF83003C128EF1C005CF8030A85 -:108260004CA19CC0A2E06C43E0EA1C0000F80303B0 +:108260004CA19CC0A2E06C43DCEA1C0000F80303B4 :108270002C78BC782C5D1C2FF35C5358B3CEE5EF03 :108280001C0066EDBC0004C0A3EF1C0066EDBC0042 :1082900007C053E06B13880C9CC3FF1BDC580CC653 -:1082A000A00E9CE0A03312C4D0300CFEB0C7EEC6C6 +:1082A000A00E9CE0A03306C4D0300CFEB0C7EEC6D2 :1082B00020FEB0C895FEB0FCC3300B0C9CFEB0FD98 :1082C00021C118ED3C004E581CC0C1FEB0FCAC30C2 :1082D0001B0C9CFEB0FC3CFEB0FCB2300CED6C0004 @@ -2096,7 +2096,7 @@ :1082F00001301B0C9CFEB0FC2B9ABB2FFBBA3B3011 :108300000B0C9CCC6EC0519ABCE04C1388CEE50C93 :108310009CC17FC0D1ED3C004E580CC051FEB0C88E -:1083200085581C002DF9001302F1EC560400920050 +:1083200085581C0046DF001302F1EC560400920051 :1083300000800100930001000089BC010D02F1ECF6 :1083400056030000000100C0509ABCE04C1388CCDA :10835000C5FEB0FC7B300CED6C004A300B0C9CFE73 @@ -2105,71 +2105,71 @@ :10838000AEC0519ABCE04C0BB8CEE51BCC500C0AE9 :108390009C2F0CFEB0FA143004EF5400663003C179 :1083A00028EF1C005CF8030A4CA19CC0A2E06C43BF -:1083B000E0EA1C0000F803032C78BC781C5D1C2F3D +:1083B000DCEA1C0000F803032C78BC781C5D1C2F41 :1083C000F35C5358B3CEE51BCC500C2E850A9CFEB3 :1083D000B0F9F6300CC068EE0C001B290BB6042F68 :1083E000FC5C6C586CCF95300B0C9CCA8E300B0C1F -:1083F0009CFEB0FCED2FEDE3CF80F88000F8A48068 +:1083F0009CFEB0FCED2FEDE3CF80F88000F88C8080 :10840000002264800023B880002404EBCD40E018F3 -:108410009730063005C158E06C43E0EA1C0000F8D4 +:108410009730063005C158E06C43DCEA1C0000F8D8 :1084200005032C78BC782C5D1CC090EF1C004030FC :108430001BF605094B168CEF5C00402FF55C655868 -:1084400085CEB52C078E8C001A38001302F1EC563D +:1084400085CEB52C078E8C009A8E001302F1EC5667 :10845000040093000080010094000100009D94013D :108460000D02F1EC56030000000100580CC0213051 :10847000160C9C5C5CE3CD80E00000D421189416BF :108480009614970C9CFEB0FD3D1895ED3C003958B4 -:108490001CC0D1E06CF130EA1C8001FEB0F9A230C2 +:108490001CC0D1E06CF19CEA1C8001FEB0F9A23056 :1084A0000CFEB0FC410C9B089CCCFE5805C2F0EDC4 :1084B000B50000C052300B0C9CFEB0FC5BEDB5006B :1084C00002C1020C9CFEB0FD3DF9D5B008E0A0470A -:1084D0009BF9D5B008E0A02B0B5817C0310C9CC7F6 +:1084D0008FF9D5B008E0A02AFF5817C0310C9CC70F :1084E0000E0A9CE21C0018590CC0D1EE0C1518C0E5 :1084F000305837C0810C9CFEB0FDE0F9D5B008E0E3 -:10850000A02AF6300B0C9CFEB0FC96D82AD703802C -:108510000123988000EA80EBCD40801897300CEF63 +:10850000A02AEA300B0C9CFEB0FC96D82AD7038038 +:108510000123808000EA68EBCD40801897300CEF93 :108520006C004FEF6C0050303BEF6B0032EF6C0093 :108530004A301B0E9CFEB0FC09EF1C003A580CC0E0 :1085400050301B0E9CFEB0FC59301CEF6C004E0EE0 :108550009CFEB0F889E3CD80800000EBCD40E020A8 -:108560002D1897169530060A9C187C00DE2A0013F9 +:108560002D1897169530060A9C187C00ACED001368 :1085700002F1EC5604009400008001009500010017 :1085800000F72C010D02F1EC56030000000100C0C1 -:1085900040201CC270C4D8E06C2BF8EA1C0000EF2D +:1085900040201CC270C4D8E06C2BF4EA1C0000EF31 :1085A0002B004A581BC0A198BB2FFBB83B98BCE0DE :1085B0004C9C40C2653016C3C898AB2FFBB82B98B3 :1085C000BB2FFBB83B98ACE04C9C40C1A5EF3C00F6 :1085D000502FFCEF6C0050301CEF6C004D3026C269 -:1085E00088E06C2BF8EA1C0000EF3B0032582BC0EF +:1085E00088E06C2BF4EA1C0000EF3B0032582BC0F3 :1085F000D1989B2FFBB81B989CE04C9C40CDC4307D :108600001B0E9CFEB0FAE6C148988B2FFBB80B9866 :108610009B2FFBB81B988CE04C9C40CF25EF3C0077 :108620004F2FFCEF6C004F301CEF6C004D3026EFED :108630003C004D580CC3010A75C0402015C1C0C58F :1086400008EF2C004A582CC0305816C4A13005EF52 -:10865000650050E06C2BF8EA1C0000B825B835EF37 +:10865000650050E06C2BF4EA1C0000B825B835EF3B :108660003C0030580CC3D1301B0E9CFEB0FB802B5D :1086700067AE85C368EF3C0032583CC0305816C323 -:108680000130052B17AE85E06C2BF8EA1C000000CA -:108690006524001302F1EC560400950000800100EF +:108680000130052B17AE85E06C2BF4EA1C000000CE +:108690001958001302F1EC56040095000080010007 :1086A000960001000062E7010D02F1EC56030000A4 :1086B000000100B805B815C268EF3C004D580CC267 :1086C00020EF3C004F581CC054EF3C0050581CC1D8 -:1086D00075EF3A0050EF3B004FBB1BE06CF068EACF -:1086E0001C8001FEB0F8A20E9CC3BFE06C2BF8EA20 +:1086D00075EF3A0050EF3B004FBB1BE06CF0D4EA63 +:1086E0001C8001FEB0F8A20E9CC3BFE06C2BF4EA24 :1086F0001C00003005B825B835B805B815300C2B6E :1087000037AE8C0C9C2FEDE3CD80E0EBCD4080E0CC :10871000A0039AE0A004063007C0E8F3D7C00830F1 :108720000A300B300CE0A00777F7D7C008305CE0C8 :10873000A007802FF75C5759E7CF15300CE06B4648 -:108740007CEA1B0000F76C01ACF74C01B8F74C0158 +:1087400078EA1B0000F76C01ACF74C01B8F74C015C :10875000BCF74C01C0F74C01C4300AF74A01C8F716 :108760004A01CCF74A01D0305AF76A01B130AAF772 :108770006A01B0F76C01ADF76C01AEF74C01B4F7CC -:108780006A01B2F76C01AFE3CF8080E06B467CEA10 +:108780006A01B2F76C01AFE3CF8080E06B4678EA14 :108790001B0000F76C01AF5EFD0000D43140924039 -:1087A000A340B6E067467CEA170000EF3C01AF58F3 -:1087B0001CC031004F6F001302F1EC56040096000C +:1087A000A340B6E0674678EA170000EF3C01AF58F7 +:1087B0001CC03100F5A2001302F1EC560400960033 :1087C000008001009700010000DD5C010D02F1EC6A :1087D000560300000001003005C0283055EF340179 :1087E000AC59E4C144F3D4C0080C9A069B049CE045 @@ -2184,28 +2184,28 @@ :108870007C4240EF4C01BCC0F8EEFC01B82FFCEF8D :108880004C01B8EEFC01B8EE5C4241C053EE7C42B4 :1088900040EF4C01B8E0A0062D1893E0A005EE18BB -:1088A00094E0A00363EEFC01B8E0A063233008FC71 -:1088B000194034E0A06223E0A062F11896EEF001C6 -:1088C000C4009CE0A063163008FC194034E0A062AC -:1088D00016E0A062E4189200DC12001302F1EC56DC +:1088A00094E0A00363EEFC01B8E0A0632D3008FC67 +:1088B000194034E0A0622DE0A062FB1896EEF001B2 +:1088C000C4009CE0A063203008FC194034E0A062A2 +:1088D00020E0A062EE1892001B3B001302F1EC5660 :1088E000040097000080010098000100004AB701D1 :1088F0000D02F1EC56030000000100EF3C01B02036 :10890000ACC04020ACC550C748E061999AEA113F1D -:1089100019069C029BE0A0511BC102089C029BE02F -:10892000A05116C0B25835C094314CEF6C01B0A1C3 +:1089100019069C029BE0A05125C102089C029BE025 +:10892000A05120C0B25835C094314CEF6C01B0A1B9 :1089300090009CE0A00446C5C8EEFC01C42FFCEFEB :108940004C01C4EEFC01C4EE5C4241C053EE7C42DB :1089500040EF4C01C45845C4C5E0A002A5EEFC019F :10896000B4581CC461E04603E9C433EEF40184301A -:108970001B089CE0A050E0C032EE148000FC1342C3 -:1089800020089C069BE0A050D7C0F2EEF40188308E -:108990001B089CE0A050D0C032EE148000089C065A -:1089A0009BE0A050C9C253300CEF4C01B4C218E098 -:1089B00061999AEA113F19069C029BE0A050BCC045 -:1089C00062089C029BE0A050B7C05330ACEF6C0132 +:108970001B089CE0A050EAC032EE148000FC1342B9 +:1089800020089C069BE0A050E1C0F2EEF401883084 +:108990001B089CE0A050DAC032EE148000089C0650 +:1089A0009BE0A050D3C253300CEF4C01B4C218E08E +:1089B00061999AEA113F19069C029BE0A050C6C03B +:1089C00062089C029BE0A050C1C05330ACEF6C0128 :1089D000B0C0F8EEFC01C02FFCEF4C01C0EEFC0172 :1089E000C0EE5C4241C053EE7C4240EF4C01C030CF -:1089F00004EF6401ADEF3C01B1202C00F7AF001390 +:1089F00004EF6401ADEF3C01B1202C003BD100132A :108A000002F1EC560400980000800100990001007A :108A1000000A0C010D02F1EC560300000001005C9D :108A20005C585CF9BC0205FE0C001C98CC180F00C9 @@ -2216,15 +2216,15 @@ :108A7000B4581CC351EF3C01B0C67D581CC301E083 :108A80004603E9C0825806C060EF3C01AEEF6C01BE :108A9000ADC268E04203E9C0325802CF71EEF50181 -:108AA00084301B0A9CE0A05059C032EE158000FCB7 -:108AB0001342200A9C069BE0A0505CC0F2EEF50138 -:108AC00088301B0A9CE0A05049C032EE1580000A95 -:108AD0009C069BE0A0504ECD93EF4401B4EEFC0108 +:108AA00084301B0A9CE0A05063C032EE158000FCAD +:108AB0001342200A9C069BE0A05066C0F2EEF5012E +:108AC00088301B0A9CE0A05053C032EE1580000A8B +:108AD0009C069BE0A05058CD93EF4401B4EEFC01FE :108AE000B4580CC191E0460191C0825806C060EFB5 :108AF0003C01AEEF6C01ADC0F8EF3C01AE580CC0CC :108B000060E04200FBC0325802CF31EF3C01B0C5FB :108B1000EDEF6C01AD303CEF6C01B1EF3C01AD000D -:108B20005B2B001302F1EC56040099000080010059 +:108B2000FD7D001302F1EC56040099000080010065 :108B30009A000100009FC7010D02F1EC56030000EE :108B4000000100EF6C01AEEF4401B8EF4401BCEF4F :108B50004401C0EF4401C4E0A0034CCF385845C2E3 @@ -2235,14 +2235,14 @@ :108BA0004401BCCCF8EF4401B8EF3C01B058ACC470 :108BB000B1EEFC01C458ACE08300C5300BE0A0026C :108BC000D5EF3C01AEE0A0052BEF4C01B4EEF60171 -:108BD000D4301B0C9CE0A04FD30C9CC032EE1C8008 -:108BE000003015EA153FC00A9BE0A04FC9E08300A2 -:108BF000AAEEF301D8301B069CE0A04FC1069CC032 -:108C000032EE1C80000A9BE0A04FBAE083009B304C -:108C10001B069CE0A04FB4C032EE138000301B0C4A -:108C20009CE0A04FADC032EE168000069C0C9BE08D -:108C3000A04FB2E0820087305CEF6C01B1CB9DEFBA -:108C40004401C000A8A9001302F1EC5604009A00E8 +:108BD000D4301B0C9CE0A04FDD0C9CC032EE1C80FE +:108BE000003015EA153FC00A9BE0A04FD3E0830098 +:108BF000AAEEF301D8301B069CE0A04FCB069CC028 +:108C000032EE1C80000A9BE0A04FC4E083009B3042 +:108C10001B069CE0A04FBEC032EE138000301B0C40 +:108C20009CE0A04FB7C032EE168000069C0C9BE083 +:108C3000A04FBCE0820087305CEF6C01B1CB9DEFB0 +:108C40004401C00089AA001302F1EC5604009A0006 :108C5000008001009B00010000207C010D02F1EC6E :108C600056030000000100C7F8EF4401C4C7C8EE76 :108C7000FC01B8586CCA42EEFC01C0581CC0A1EE01 @@ -2252,198 +2252,198 @@ :108CB000B1EEFC01B4581CC301E04603E9C0825880 :108CC00006C060EF3C01AEEF6C01ADC268E042034C :108CD000E9C0325802CF71EEF50184301B0A9CE0E6 -:108CE000A04F60C032EE158000FC1342200A9C06A3 -:108CF0009BE0A04F63C0F2EEF50188301B0A9CE0B8 -:108D0000A04F50C032EE1580000A9C069BE0A04F99 -:108D100055CD93EF4401B4EEFC01B4580CC151E0C1 +:108CE000A04F6AC032EE158000FC1342200A9C0699 +:108CF0009BE0A04F6DC0F2EEF50188301B0A9CE0AE +:108D0000A04F5AC032EE1580000A9C069BE0A04F8F +:108D10005FCD93EF4401B4EEFC01B4580CC151E0B7 :108D2000460191C0825806C060EF3C01AEEF6C0175 :108D3000ADC0B8E0420191C0325802CF71EF3C01A2 :108D4000B2C69CEF6C01AD303CEF6C01B1EF3C0161 :108D5000ADEF6C01AEEF4401B8EF4401BCEF44014C -:108D6000C4EF4401C0EF3C000F57001302F1EC5672 +:108D6000C4EF4401C0EF3C00DD00001302F1EC56FB :108D700004009B00008001009C00010000345401AD :108D80000D02F1EC5603000000010001AD581CC0BB :108D900031301CC0A8582CC031302CC068583CC0A1 -:108DA00031303CC028300C5C5CD83280015E1880C9 -:108DB000015DC2EBCD40E0300B58ACC0C1E06A466B -:108DC0007CEA1A0000F4FC01C8F4F601CCF4F501C9 -:108DD000D0C128594CC0C1E06A467CEA1A0000F4B0 +:108DA00031303CC028300C5C5CD83280015E2C80B5 +:108DB000015DD6EBCD40E0300B58ACC0C1E06A4657 +:108DC00078EA1A0000F4FC01C8F4F601CCF4F501CD +:108DD000D0C128594CC0C1E06A4678EA1A0000F4B4 :108DE000FC01DCF4F601E0F4F501E4C058300C308D :108DF000063005303B5C5B583BC194E067999AEACA -:108E0000173E99E0A0048A0E9BE0A04EE9C1120C27 -:108E10009CE0A004830E9BE0A04EE2C0A20A9CE06E -:108E2000A0047C0E9BE0A04EDBC032300CC028308A +:108E0000173E99E0A0048A0E9BE0A04EF3C1120C1D +:108E10009CE0A004830E9BE0A04EECC0A20A9CE064 +:108E2000A0047C0E9BE0A04EE5C032300CC0283080 :108E30001C5C5CE3CD80E0EBCD40F8300B58ACC05F -:108E4000D1E06C467CEA1C0000F8F501C8F8F4019A +:108E4000D1E06C4678EA1C0000F8F501C8F8F4019E :108E5000CCF8F301D03006C168594CC101E06C4632 -:108E60007CEA1C0000F8F501DCF8F401E0F8F301FD +:108E600078EA1C0000F8F501DCF8F401E0F8F30101 :108E7000E4E066999AEA16BE99C05830053004308D -:108E800003303B5C5B583BC4640C9C008E9A00131F +:108E800003303B5C5B583BC4640C9C00F0AA0013AD :108E900002F1EC5604009C00008001009D000100DE :108EA000005EEC010D02F1EC560300000001000A27 -:108EB0009BE0A04EA7C112E067CCCCEA17BDCC085E -:108EC0009C0E9BE0A04E9EC082069C0E9BE0A04E96 -:108ED00099C032302BC3180C9C0A9BE0A04E92C163 +:108EB0009BE0A04EB1C112E067CCCCEA17BDCC0854 +:108EC0009C0E9BE0A04EA8C082069C0E9BE0A04E8C +:108ED000A3C032302BC3180C9C0A9BE0A04E9CC14F :108EE00012E067CCCDEA173DCC089C0E9BE0A04E6B -:108EF0007DC083069C0E9BE0A04E78C033301BC122 -:108F0000C80C9C0A9BE0A04E7DC092E06BCCCDEAE1 -:108F10001B3ECC069CE0A04E69CF220C9C0A9BE035 -:108F2000A04E70C092E06BCCCCEA1BBECC069CE09D -:108F3000A04E68CD03303B169C5C5CE3CD80F8E02E -:108F40006C467CEA1C0000300BF94B0168F94B01C0 -:108F50006CF94B01705EFDEBCD40FEE067467CEAAC -:108F6000170000EEFC0174300BE0A09C5FC191EE95 -:108F7000FC0178300BE0A09C59C131EEFC017C3043 -:108F80000BE0A09C53C0D1EEFC0168EF4C0174EEE5 +:108EF00087C083069C0E9BE0A04E82C033301BC10E +:108F0000C80C9C0A9BE0A04E87C092E06BCCCDEAD7 +:108F10001B3ECC069CE0A04E73CF220C9C0A9BE02B +:108F2000A04E7AC092E06BCCCCEA1BBECC069CE093 +:108F3000A04E72CD03303B169C5C5CE3CD80F8E024 +:108F40006C4678EA1C0000300BF94B0168F94B01C4 +:108F50006CF94B01705EFDEBCD40FEE0674678EAB0 +:108F6000170000EEFC0174300BE0A09C87C191EE6D +:108F7000FC0178300BE0A09C81C131EEFC017C301B +:108F80000BE0A09C7BC0D1EEFC0168EF4C0174EEBD :108F9000FC016CEF4C0178EEFC0170EF4C017CEEB3 -:108FA000F40168EEFB0174089CE0A04BD9CF3C00B3 -:108FB0000291001302F1EC5604009D0000800100B4 +:108FA000F40168EEFB0174089CE0A04BE3CF3C00A9 +:108FB0001558001302F1EC5604009D0000800100DA :108FC0009E00010000CB27010D02F1EC56030000CA :108FD0000001001892EEF5016CEEFB01780A9CE0AE -:108FE000A04BD0CEAC1893EEF60170EEFB017C0CDA -:108FF0009CE0A04BC7CE1C1891EEFC0180049BE0C6 -:10900000A04C2ECDACEF4C0180EEFC0184069BE021 -:10901000A04C26CD2CEF4C0184EEFC0188029BE095 -:10902000A04C1ECCACEF4C0188EF440174EF45011D -:1090300078EF46017CE3CF80FED7038001D678E04D -:109040006C467CEA1C0000300BF94B0180F94B01A7 +:108FE000A04BDACEAC1893EEF60170EEFB017C0CD0 +:108FF0009CE0A04BD1CE1C1891EEFC0180049BE0BC +:10900000A04C38CDACEF4C0180EEFC0184069BE017 +:10901000A04C30CD2CEF4C0184EEFC0188029BE08B +:10902000A04C28CCACEF4C0188EF440174EF450113 +:1090300078EF46017CE3CF80FED7038001D6C8E0FD +:109040006C4678EA1C0000300BF94B0180F94B01AB :1090500084F94B0188F94B0174F94B0178F94B0104 :109060007C5EFDEBCD40FB205D31DBFACCFFF8E010 :10907000A00352402CBFDCE066D70BEA163D230C60 -:109080009BE0A04DD1C032300C502C4037301B0E2D -:109090009CE0A04DBDC032EE1780000E9C0C9BE002 -:1090A000A04DC2C032300C503C4047301B0E9CE0FB -:1090B000A04DAEC032EE1780000E9C0C9BE0A04D80 -:1090C000B3C032300C504CE060C1F8EA101A63E0D3 -:1090D00061A5DC008403001302F1EC5604009E003D +:109080009BE0A04DDBC032300C502C4037301B0E23 +:109090009CE0A04DC7C032EE1780000E9C0C9BE0F8 +:1090A000A04DCCC032300C503C4047301B0E9CE0F1 +:1090B000A04DB8C032EE1780000E9C0C9BE0A04D76 +:1090C000BDC032300C504CE060C1F8EA101A63E0C9 +:1090D00061A5DC000782001302F1EC5604009E003B :1090E000008001009F00010000749C010D02F1EC62 :1090F00056030000000100EA11404CE0654000EA20 -:1091000015408FFC174034E063467CEA13000040B2 -:109110002CE0A05F0D30080E99E0A05E8030080AB8 -:1091200099E0A05EB900980299E0A05E78BB1BE6CA -:10913000FC0168E0A05EFCBB08E0A05D5BE0A04D28 -:109140002FE74C0168C4BCE74C0168403CE0A05EDE -:10915000EF30080E99E0A05E6230080A99E0A05E48 -:109160009B00980299E0A05E5ABB1BE6FC016CE0F4 -:10917000A05EDEBB08E0A05D3DE0A04D11E74C0124 -:109180006CC2DCE74C016C404CE0A05ED130080EB4 -:1091900099E0A05E4430080A99E0A05E7D00980244 -:1091A00099E0A05E3C14961697E6FC0170E0A05E84 -:1091B000BF0C980E99E0A05D1DE0A04CF1E74C01BA +:1091000015408FFC174034E0634678EA13000040B6 +:109110002CE0A05F1730080E99E0A05E8A30080AA4 +:1091200099E0A05EC300980299E0A05E82BB1BE6B6 +:10913000FC0168E0A05F06BB08E0A05D65E0A04D13 +:1091400039E74C0168C4BCE74C0168403CE0A05ED4 +:10915000F930080E99E0A05E6C30080A99E0A05E34 +:10916000A500980299E0A05E64BB1BE6FC016CE0E0 +:10917000A05EE8BB08E0A05D47E0A04D1BE74C0106 +:109180006CC2DCE74C016C404CE0A05EDB30080EAA +:1091900099E0A05E4E30080A99E0A05E8700980230 +:1091A00099E0A05E4614961697E6FC0170E0A05E7A +:1091B000C90C980E99E0A05D27E0A04CFBE74C019C :1091C00070C0DCE74C01702FBDE3CF80FBD703807C -:1091D000015C9C80015C22800159F8EBCD40801835 -:1091E00097301BEA1B4334E0A04D24C083FC1CC312 -:1091F000B40E9BE0A04B46003050001302F1EC5639 +:1091D000015CB080015C3680015A0CEBCD408018F8 +:1091E00097301BEA1B4334E0A04D2EC083FC1CC308 +:1091F000B40E9BE0A04B5000AFB4001302F1EC564C :1092000004009F0000800100A000010000EBF701B6 :109210000D02F1EC560300000001001897C0D8FCC5 -:109220001BC3340E9CE0A04D23C072FC1C43B40E43 -:109230009BE0A04B3918970E9CE3CD80800000EB9B +:109220001BC3340E9CE0A04D2DC072FC1C43B40E39 +:109230009BE0A04B4318970E9CE3CD80800000EB91 :10924000CD40FC16923007300459FCC03331E6C0E3 :10925000385C5C18963005C1985812C1B1EA0C11FF -:1092600018E063467CEA1300005C5CE60C002367B0 -:10927000EC0E9BE0A04B181897E6FC00F0089BE072 -:10928000A04B1218942FF55C550C35C0645802CED3 -:1092900051EA0C111DCE6B5C560C9CE0A04D2418BD -:1092A00096E063467CEA1300000E9C0C9BE0A04B0A -:1092B000C5E74C01D4089C0C9BE0A04BBFE74C01D8 -:1092C000D8E3CF80FC0000E06C467CEA1C00003054 +:1092600018E0634678EA1300005C5CE60C002367B4 +:10927000EC0E9BE0A04B221897E6FC00F0089BE068 +:10928000A04B1C18942FF55C550C35C0645802CEC9 +:1092900051EA0C111DCE6B5C560C9CE0A04D2E18B3 +:1092A00096E0634678EA1300000E9C0C9BE0A04B0E +:1092B000CFE74C01D4089C0C9BE0A04BC9E74C01C4 +:1092C000D8E3CF80FC0000E06C4678EA1C00003058 :1092D0000BF94B01DCF94B01E0F94B01E45EFDD4E5 :1092E00031202D300B500B3000300159FCC0433180 :1092F000DC501CC058FE3CFF015C5C501C3007C1B8 -:1093000048400C680BE0A04ACF500C0A066DEC00F8 -:109310009BE0A04AC91890ECFC00F000DE8A001324 +:1093000048400C680BE0A04AD9500C0A066DEC00EE +:109310009BE0A04AD31890ECFC00F0005DE0001345 :1093200002F1EC560400A00000800100A100010041 :10933000005746010D02F1EC560300000001000247 -:109340009BE0A04AC318912FF75C77E066467CEA61 +:109340009BE0A04ACD18912FF75C77E0664678EA5B :10935000160000401C1837C2C4ED3501AC59E5C0F9 :10936000640E15FE35FF015C55C048EE05111D5C0D :1093700055A3650C940A046803EC05000C204C7896 -:1093800002069C049BE0A04A33E06B999AEA1B3EDC -:1093900099E0A04C73CC83301B069CE0A04C6ECCB3 -:1093A00033300B049CE0A04C75CBE258B7CBC55CC6 -:1093B000770E9CE0A04CAA1897400C0E9BE0A04BA7 -:1093C0004FED4C01DC009C0E9BE0A04B49ED4C01A5 -:1093D000E0029C0E9BE0A04B43ED4C01E42FEDD846 -:1093E0003AD70380013AC8D431208DE06C37BDEA0A +:1093800002069C049BE0A04A3DE06B999AEA1B3ED2 +:1093900099E0A04C7DCC83301B069CE0A04C78CC9F +:1093A00033300B049CE0A04C7FCBE258B7CBC55CBC +:1093B000770E9CE0A04CB41897400C0E9BE0A04B9D +:1093C00059ED4C01DC009C0E9BE0A04B53ED4C0191 +:1093D000E0029C0E9BE0A04B4DED4C01E42FEDD83C +:1093E0003AD70380013ADCD431208DE06C37BDEAF6 :1093F0001C3586506C505C504C300C503C502C301E -:1094000000E067467CEA170000EF3C01AC59ECC075 +:1094000000E0674678EA170000EF3C01AC59ECC079 :1094100034501CC03831EC501CEEFC01B8401B1815 :109420003BC092401CF80B161F160CA15C5C5C50F4 :109430007CC048A19C5C5C507C300CBA8CC158004C -:10944000D010001302F1EC560400A10000800100CE +:10944000ADB7001302F1EC560400A100008001004A :10945000A200010000C28D010D02F1EC56030000D4 -:10946000000100EE1C80000A9BE0A04C19C0C30064 -:109470009C0C9BE0A04A3C1890404BFC1C3F80E0B9 -:10948000A04A36504C1B8B2FFBBA8B1B8C407B1693 +:10946000000100EE1C80000A9BE0A04C23C0C3005A +:109470009C0C9BE0A04A461890404BFC1C3F80E0AF +:10948000A04A40504C1B8B2FFBBA8B1B8C407B1689 :109490003CE08400A4401C1B861826FE36FF015CBD :1094A00056ECC1FF015C51A361EE01000B7604A3F1 -:1094B00066EE0600056A0C760BE0A049AB301BE0B7 -:1094C000A04BEEC0736A0C089BE0A049A31894C09F -:1094D000686A0B089CE0A0499D18940E0163E30E96 -:1094E000066DEC63EBE0A04995301BE0A04BD8C0C3 -:1094F000736DEC069BE0A0498D1893C0686DEB0678 -:109500009CE0A049871893E2F200F0ECFC00F0E246 -:10951000FB00F0E0A0497E301BE0A04BC1C083EC13 -:10952000FC00F0049BE0A049751892C078ECFB00A9 -:10953000F0049CE0A0496E18923011EA1140A00896 -:109540009C029BE0A04BACC0B3069C029BE0A04BEE -:10955000A7C063049C029BE0A04BA2C3F26A043044 -:109560001B089C00A830001302F1EC560400A20076 +:1094B00066EE0600056A0C760BE0A049B5301BE0AD +:1094C000A04BF8C0736A0C089BE0A049AD1894C08B +:1094D000686A0B089CE0A049A718940E0163E30E8C +:1094E000066DEC63EBE0A0499F301BE0A04BE2C0AF +:1094F000736DEC069BE0A049971893C0686DEB066E +:109500009CE0A049911893E2F200F0ECFC00F0E23C +:10951000FB00F0E0A04988301BE0A04BCBC083ECFF +:10952000FC00F0049BE0A0497F1892C078ECFB009F +:10953000F0049CE0A0497818923011EA1140A0088C +:109540009C029BE0A04BB6C0B3069C029BE0A04BE4 +:10955000B1C063049C029BE0A04BACC3F26A043030 +:109560001B089C00AAFB001302F1EC560400A200A9 :1095700000800100A3000100007D36010D02F1EC26 -:1095800056030000000100E0A04B9C089CC032EE96 +:1095800056030000000100E0A04BA6089CC032EE8C :109590001C8000E065CCCDEA153D4C0A9BE0A04B59 -:1095A00091C0C3403C089BE0A049B4503C406BFCD8 -:1095B0001C3F80E0A049AE506C6DE4301B089CE07D -:1095C000A04B80089CC032EE1C80000A9BE0A04BA0 -:1095D00079C0C3402C089BE0A0499C502C405BFC08 -:1095E0001C3F80E0A04996505CECF600F0301B0C6C -:1095F0009CE0A04B670C9CFE93FF48C48B403C4012 -:109600006BE0A04A51EF4C01C8402C405BE0A04AFF -:109610004BEF4C01CC404B009CE0A04A45EF4C0185 +:1095A0009BC0C3403C089BE0A049BE503C406BFCC4 +:1095B0001C3F80E0A049B8506C6DE4301B089CE073 +:1095C000A04B8A089CC032EE1C80000A9BE0A04B96 +:1095D00083C0C3402C089BE0A049A6502C405BFCF4 +:1095E0001C3F80E0A049A0505CECF600F0301B0C62 +:1095F0009CE0A04B710C9CFE93FF48C48B403C4008 +:109600006BE0A04A5BEF4C01C8402C405BE0A04AF5 +:1096100055EF4C01CC404B009CE0A04A4FEF4C0171 :10962000D02F8DD83A0000EBCD40F830073006C27D -:10963000E8EC0C111D5C5CA36CE06A467CEA1A0045 +:10963000E8EC0C111D5C5CA36CE06A4678EA1A0049 :1096400000F40C0009F2FB00F073E3F40C030516C0 -:109650009CE0A049B51894069C069BE0A049B01870 -:10966000930A9C0A9BE0A049AB069BE0A0495208E4 -:109670009BE0A0494FE0A05CA3E0A08BE5E0A04AFE -:10968000D70E9BE0A0494600D3D9001302F1EC5657 +:109650009CE0A049BF1894069C069BE0A049BA185C +:10966000930A9C0A9BE0A049B5069BE0A0495C08D0 +:109670009BE0A04959E0A05CADE0A08C17E0A04AB7 +:10968000E10E9BE0A04950004E6B001302F1EC5636 :109690000400A30000800100A400010000691E0175 :1096A0000D02F1EC5603000000010018972FF65C44 -:1096B000565866CD15FC1B40C00E9CE0A04A06E340 +:1096B000565866CD15FC1B40C00E9CE0A04A10E336 :1096C000CD80F8EBCD40FC300730063004C388E88D -:1096D0000C111D5C5CA36CE06A467CEA1A0000F485 +:1096D0000C111D5C5CA36CE06A4678EA1A0000F489 :1096E0000C0009F2FB00F073E3F40C0305169CE098 -:1096F000A049781892069C069BE0A0497318930A2B -:109700009C0A9BE0A0496E069BE0A04915049BE0E3 -:10971000A04912E0A05C66E0A08BA8E0A04A9A18DD -:10972000950E9C0A9BE0A0490718970A9C0A9BE0AB -:10973000A049580C9BE0A048FF18962FF45C5458A1 -:1097400064CC75FC1B40C00E9CE0A049BF189BE098 -:10975000A049481897FC1B40C00C9CE0A049B60EDD -:109760009BE0A0487BE3CD80FCD70380015D348083 -:1097700001BBBC800139A4800136888001381C807F -:109780000135ACEBCD40E03016582CC1613017EA02 -:10979000173F00E065467CEA150000EAFC01D40EA4 -:1097A0009BE0A04AA1C1D3EAFC01D800D716001360 +:1096F000A049821892069C069BE0A0497D18930A17 +:109700009C0A9BE0A04978069BE0A0491F049BE0CF +:10971000A0491CE0A05C70E0A08BDAE0A04AA4188D +:10972000950E9C0A9BE0A0491118970A9C0A9BE0A1 +:10973000A049620C9BE0A0490918962FF45C54588C +:1097400064CC75FC1B40C00E9CE0A049C9189BE08E +:10975000A049521897FC1B40C00C9CE0A049C00EC9 +:109760009BE0A04885E3CD80FCD70380015D488065 +:1097700001BC20800139B88001369C8001383080DE +:109780000135C0EBCD40E03016582CC1613017EAEE +:10979000173F00E0654678EA150000EAFC01D40EA8 +:1097A0009BE0A04AABC1D3EAFC01D800202B0013F8 :1097B00002F1EC560400A40000800100A5000100A5 :1097C0000003A6010D02F1EC560300000001000E9B -:1097D0009BE0A04A9BC1733006C158581CC131FCA4 -:1097E00017BF00E065467CEA150000EAFC01D40ED4 -:1097F0009BE0A04A97C072EAFC01D80E9BE0A04A09 -:1098000091CEB30C9CE3CD80E0D70380013A38A31E -:109810006BE06A467CEA1A0000F40B03099909140C +:1097D0009BE0A04AA5C1733006C158581CC131FC9A +:1097E00017BF00E0654678EA150000EAFC01D40ED8 +:1097F0009BE0A04AA1C072EAFC01D80E9BE0A04AFF +:109800009BCEB30C9CE3CD80E0D70380013A4CA300 +:109810006BE06A4678EA1A0000F40B030999091410 :109820000B77EA991AF6FB00F0992B5EFD0000A376 -:1098300069E068467CEA180000F009090C1009F399 -:109840004B0078F34A00F05EFD0000E06A467CEAD7 +:1098300069E0684678EA180000F009090C1009F39D +:109840004B0078F34A00F05EFD0000E06A4678EADB :109850001A0000140BF76C018C5EFDEBCD408018F4 -:1098600097300BE0A04A5EC072FC1CBF800E9BE0EC -:10987000A048CA18970E9CE3CD808080013A5080A2 -:10988000013734D43121FD14961297502C503B30BF +:1098600097300BE0A04A68C072FC1CBF800E9BE0E2 +:10987000A048D418970E9CE3CD808080013A648084 +:10988000013748D43121FD14961297502C503B30AB :109890000550C5371032B132D232540D8CF80B1549 :1098A00018C04140CC2E1DD832083CC091506550A4 :1098B000755085509550A550B5300CC0A82FF6189E :1098C0009B1A9CE0A0061ECEA73FFCCEDBA1AC00FD -:1098D000B448001302F1EC560400A500008001001A +:1098D000F1A6001302F1EC560400A500008001007F :1098E000A600010000966D010D02F1EC5603000088 :1098F000000100189BA3AB0D9A2FF6F4C90020CFEE :10990000902039C0D02089C0602029C0702039C083 @@ -2458,10 +2458,10 @@ :10999000CB8F0B2FF6C15850D5C0E840DAE069FFF5 :1099A000FFEA197FFF123AC06030A9F409034B2384 :1099B0000B50DB2FF60D8B3D0A160A58AACEF3FB8F -:1099C0005C003C0D8BE06CF138EA1C8001E0A09853 -:1099D000C9C0200D3CFB6C003E5C5CE04C0068C0E4 +:1099C0005C003C0D8BE06CF1A4EA1C8001E0A098E7 +:1099D000FFC0200D3CFB6C003E5C5CE04C0068C0AE :1099E000910D8BE04B0068C051362CFB6C003EC0E3 -:1099F000A8E04C00C46B001302F1EC560400A60072 +:1099F000A8E04C00E33D001302F1EC560400A60081 :109A000000800100A70001000029D6010D02F1EC41 :109A100056030000000100006CC0810D8CE04C007A :109A20006CC041FB60003E2FF6FACCFFC0505C0DCD @@ -2473,13 +2473,13 @@ :109A80003AC0E0202AE0800099203AE0800096C4A5 :109A900069FACCFFC0406BF80B0B04C4F96E0C786C :109AA0000C504C6E0B2FCB8F0B40DA580AC057E08E -:109AB000A09872189BC098300BE0A09833C040402B +:109AB000A098A8189BC098300BE0A09869C04040BF :109AC0004B182BC02840DB507BC3B96E0C780A3092 :109AD0000BBB1B6E0C2FCC8F0CBB0AE61B0000BB14 :109AE0001BFACCFFC0504C378B240CC90DC299FB1C :109AF0003C003E262CC280206CC120202CC1D020EE :109B00002CC060205CC190209CC0F0C22840CC6E6C -:109B10000B760B970C6E0C00BAEB001302F1EC56AF +:109B10000B760B970C6E0C005956001302F1EC56A5 :109B20000400A70000800100A800010000BE3D0164 :109B30000D02F1EC560300000001002FCC8F0CC188 :109B40002940CC6E0B760BB60CCF8B40CC6E0B76CF @@ -2530,11 +2530,11 @@ :109E10008A404B407C180B1A9CE0A003DBFE91FDAE :109E2000B0330A40BB1A9CC16CFE90FDAAFB1C001B :109E30003CA39CFE92FD8E320A069B1A9CC0BCFE7F -:109E400091FD88FE9FFD9D8001D86C8001D87C80AB -:109E500001D808D4A1189716963005C0282FF50C04 +:109E400091FD88FE9FFD9D8001D8D88001D8E880D3 +:109E500001D874D4A1189716963005C0282FF50C98 :109E600035C094301AFACBFFF90E9CE0A003B2CFB4 :109E700070D8AADAAA0000D431189016957853E069 -:109E80004B006F00D17C001302F1EC560400AA00D5 +:109E80004B006F000DA0001302F1EC560400AA0075 :109E900000800100AB00010000D4F6010D02F1ECDE :109EA00056030000000100C0313082C088169CA516 :109EB000BCE04C007830A2F9B2001033C4A10A14FF @@ -2542,46 +2542,46 @@ :109ED0000A5C2BC0445C375C365C1758065C27C0B4 :109EE000F160DC580CC0C15882C3B1E11C003CA534 :109EF0008CC37233B4330CE76C003BC328E8C10059 -:109F00000120140C9A0E9B0498E409141FE0A094FD -:109F1000C92D085C58E048003AC045EACCFF51180A +:109F00000120140C9A0E9B0498E409141FE0A095FC +:109F1000052D085C58E048003AC045EACCFF5118CE :109F2000080601A2880C9A0E9B0498E409141FE00D -:109F3000A094B814961697580A5C2BC040604C0247 +:109F3000A094F414961697580A5C2BC040604C020B :109F40003CCDE35882C0D1E11C003CA58CC09203FB :109F50008CE04C0030C0502014330CE6040B0CE8AD :109F60000B113C817B0803814360DC183BC09418D3 :109F70002B819BE11C003CA5CCE15C003CD83A580D :109F80000CC117E11C003CE21C0014590CC0B1606C :109F9000EA606C181A609C181AF40B01045814C07B -:109FA000258194D83AD703002158001302F1EC56CA +:109FA000258194D83AD703007CBE001302F1EC5609 :109FB0000400AB0000800100AC00010000C0DE0125 -:109FC0000D02F1EC560300000001008001D4F8807E -:109FD00001D4F8D43114961697189330043005EA5A +:109FC0000D02F1EC560300000001008001D5708005 +:109FD00001D570D43114961697189330043005EAE1 :109FE000154024C158EDB30000C0920C9A0E9B0896 -:109FF000980A99E0A057FD14961697A153089A0A5B -:10A000009B08980A99E0A057F4149416955803CE2B +:109FF000980A99E0A0580714961697A153089A0A50 +:10A000009B08980A99E0A057FE149416955803CE21 :10A01000B10C9A0E9BD832D43120DD18921693FAE7 :10A02000C6FFF4B90AFAEB00040695A5B536170E7B :10A0300035C0C078DC580CC037306CC068C061E0F7 :10A04000450067C031301C85DC049B1A9CE0A09061 -:10A05000C7189A39F90609E06BEFE4EA1B80013072 +:10A05000F9189A39F90609E06BF050EA1B800130D3 :10A0600038582CC0E1857859A9F7BB02FC644A1422 :10A0700098303C173910C9201CE080016ECFBB58C6 :10A080001CC105857859A9F7BB03F8F7BB02F46436 :10A090004A1498303C173910C9201CE080015DCF6C :10A0A000BB33040E35C111644CB884644C2FFC855D :10A0B0004CF8CBFFFF854B0E33378BF9BB0158B8FB -:10A0C0008B646C2FEC856C580AC051000C2C00136B +:10A0C0008B646C2FEC856C580AC0510061A600139C :10A0D00002F1EC560400AC0000800100AD0001006C :10A0E00000AA66010D02F1EC5603000000010030E9 :10A0F00007300CBA0CC3B9FAC0FFF3300830090EB0 :10A1000035E081009164D75807F7B707FFF9B70624 :10A11000215C87EEC1FFFFA504FAEA0004E0A05825 -:10A1200023C032EE158000FAE500049A0B204BBAEA +:10A120002DC032EE158000FAE500049A0B204BBAE0 :10A130000B300CFB6C000C2FF6C0282F965811C268 -:10A14000F5FAEA000430183009E0A0580BC2833158 -:10A15000CBFACCFFFCE0A0859FFAEA0004E0A0580F -:10A160002E189520715811C0B5E0A05842149816C9 -:10A1700099FAEA0004E0A05605FAEB00042F9630A5 +:10A14000F5FAEA000430183009E0A05815C283314E +:10A15000CBFACCFFFCE0A085D1FAEA0004E0A058DD +:10A1600038189520715811C0B5E0A0584C149816B5 +:10A1700099FAEA0004E0A0560FFAEB00042F96309B :10A180007CC058F7D5C0040CFBA5455815C0352038 :10A190001CCF97201CCD36300B0CFBCFCB0C20FAFC :10A1A000C6FFF30E30E00717505C87C3460037C088 @@ -2589,7 +2589,7 @@ :10A1C00028300C0E9BC0282017201BFACAFFF4165B :10A1D0000A1599F8091800CF8058FCC041F2CCFF4D :10A1E000FFB49C580BC06720162FF79A0B2FCB009B -:10A1F000759C001302F1EC560400AD0000800100D4 +:10A1F0008C57001302F1EC560400AD000080010002 :10A20000AE000100003FAD010D02F1EC560300006D :10A21000000100BA0B5C870E9CC0D8EC0C070A2D1D :10A220000A5C5AE04A003AC045E6C9FF3A120AEC15 @@ -2599,15 +2599,15 @@ :10A260000ABA0AF9DAB010F80C1107E069AC08EA8A :10A27000198000581CC055FAEA00045D19C0D85C6A :10A280003C300A300BEA1B3FF05D1914981699FA1E -:10A29000EA0004E0A0570EFAEB000436610235C074 +:10A29000EA0004E0A05718FAEB000436610235C06A :10A2A000419A062F66C028306664DC18065946F9C4 :10A2B000B60413330CFB6C000CFAC7FFF35816C23C -:10A2C000B5FAEA0004E0A0578818992F87308C303F +:10A2C000B5FAEA0004E0A0579218992F87308C3035 :10A2D000ABF20B0D0A1499F6C8FFD00EF8201CCF74 :10A2E000812F8720865816CEB5FAEA0004E0A057E1 -:10A2F00074E0A0579D14981699FAEA0004E0A0555E -:10A30000533008E069D784EA194197E0A05695FADE -:10A31000EB000400FA6D001302F1EC560400AE00ED +:10A2F0007EE0A057A714981699FAEA0004E0A0554A +:10A300005D3008E069D784EA194197E0A0569FFACA +:10A31000EB000400B272001302F1EC560400AE0030 :10A3200000800100AF000100008016010D02F1EC79 :10A3300056030000000100CD7B0E20FAC6FFF3C0DB :10A340006820109A0B201BBA0B2FF60D8C083CCFFF @@ -2618,14 +2618,14 @@ :10A3900009F8091800CFA0E04C0039C051F2CCFFF9 :10A3A000FFEC0B0B0C580BC06720162FF79A0B2FE6 :10A3B000FBBA0B9A08F3D7B0100C9A069B049CC109 -:10A3C000AC2F3DD83AD7038001CE1080015D748058 -:10A3D000015D708001B8A480015DCA80015DFE80CE -:10A3E000015C9C80015DC280015E188001599080F3 -:10A3F000015C22D431203D189316971496109C6668 -:10A40000D85819C0643019E066434EEA168000A59A +:10A3C000AC2F3DD83AD7038001CE7480015D8880E0 +:10A3D000015D848001B90880015DDE80015E12802C +:10A3E000015CB080015DD680015E2C800159A480A3 +:10A3F000015C36D431203D189316971496109C6654 +:10A40000D85819C0643019E0663FD6EA168000A516 :10A41000BB330232EE366A143BC0B03674083BE000 :10A420008100995BCCE085009B103CE08400982F74 -:10A43000FC143BC0C0E71B00EF1E001302F1EC56FA +:10A43000FC143BC0C0E71B006867001302F1EC5638 :10A440000400AF0000800100B000010000907E0118 :10A450000D02F1EC56030000000100003CA58BC08A :10A46000431039F20817505C8C1818F9B8060066CA @@ -2657,93 +2657,93 @@ :10A6000089160A129B14945809C0500D3E201B084D :10A61000CECFD1667B120B877B102987A9664B664C :10A620007616060CC7580CC04632BB0CCBC048325D -:10A63000DB0CCB5C3C3004C08830ABE0A09330FA3C +:10A63000DB0CCB5C3C3004C08830ABE0A09366FA06 :10A64000040B0A169C2FF45C8C581CCF745824C041 :10A6500064A5B7E0470065C0210CC25804C0910C46 :10A66000C2C09820141A9CF804070C2D0C0CCC586E :10A6700014CF94664B667C180B16168786E71C0071 -:10A68000E276001302F1EC560400B10000800100F4 +:10A68000B65F001302F1EC560400B1000080010037 :10A69000B2000100001108010D02F1EC56030000A8 :10A6A000000100003CE21C0014590CC0F1666B660E :10A6B0007C180B66AC180B668C180B66BC160C6607 :10A6C000EB163CC034162C879C2FDDD83AD703807C -:10A6D00001D81CD4211897783C6E2A5D1A8F3CC093 +:10A6D00001D888D4211897783C6E2A5D1A8F3CC027 :10A6E000506ECC2FFC8FCCD82A3FFCD8220000D44F :10A6F00021189616951497300CC02820175807C0BB :10A70000500B3B0C9CCE7FCFA7D822EBCD4080E0F6 -:10A71000674E9CEA170000FEB0E9648F0CE0A0933E -:10A720004B8F1CE3CF80808001D910EBCD40E0211E -:10A73000FD18971495360CE0A08452322CE0A084CA -:10A740004F321CE0A0844CE0660008EA168080309E -:10A750001937CA300B0C9CE0A05CFAA36550053099 -:10A7600019304A1A9B0C9CE0A05DE4300CC0780FB5 +:10A71000674E98EA170000FEB0E9648F0CE0A09342 +:10A72000818F1CE3CF80808001D97CEBCD40E0217C +:10A73000FD18971495360CE0A08484322CE0A08498 +:10A7400081321CE0A0847EE0660008EA168080303A +:10A750001937CA300B0C9CE0A05D04A3655005308E +:10A7600019304A1A9B0C9CE0A05DEE300CC0780FAB :10A770000BFACAFFFCF40C092B2FFC59ECC044E087 :10A78000477FFCCF613019378AFACBFFFC2FC60C0C -:10A790009CE0A05DCF321CE0A08444322CE0A08479 -:10A7A00041360C008B59001302F1EC560400B20044 +:10A790009CE0A05DD9321CE0A08476322CE0A0843D +:10A7A00073360C0067BF001302F1EC560400B200D0 :10A7B00000800100B300010000AEB3010D02F1EC16 -:10A7C00056030000000100E0A0843EC008D70380CB -:10A7D000016CA880016E8CD421FEB0EC9BE0A0211E -:10A7E000E9E0A088171897E0664E9CEA1600006C16 +:10A7C00056030000000100E0A08470C008D7038099 +:10A7D000016CBC80016EA0D421FEB0EC9BE0A021F6 +:10A7E000DDE0A088491897E0664E98EA1600006CF4 :10A7F0001CF9150068296CF92400005807C0803046 -:10A800000CE0A092CDF9D5C010FEB0E997301B6CDA +:10A800000CE0A09303F9D5C010FEB0E997301B6CA3 :10A810000CFEB0ED216C0C300BF96B004D301BFEC3 :10A82000B0ECD66C0CF93B0047580BC050301BFE07 :10A83000B0EEDEC2782C7C198C581CC131E06CF172 -:10A8400060EA1C8001FEB0E9FB300CFEB0EC9A6CB3 +:10A84000CCEA1C8001FEB0E9FB300CFEB0EC9A6C47 :10A850000B6C1CFEB0EF28300B6C0CFEB0ED1AC177 -:10A86000186C1C294C988C5C8CE0A08C03E0A00F29 -:10A87000B1303A6C0B6C1CFEB0F0306C0CFEB0EEDC +:10A86000186C1C294C988C5C8CE0A08C35E0A00FF7 +:10A87000A5303A6C0B6C1CFEB0F0306C0CFEB0EEE8 :10A88000CF5807C0606C1CF955006C292CB884FEA9 -:10A89000B0EC34D82AD70380008C488000F6E880DA -:10A8A00001C3488001D8D48000867080008D048068 -:10A8B00000912480008CB8800091DC8001CBA880BE -:10A8C00000D30880008C3000239F001302F1EC5667 +:10A89000B0EC34D82AD70380008C488000F6D080F2 +:10A8A00001C3AC8001D9408000867080008D048097 +:10A8B00000912480008CB8800091DC8001CC0C8059 +:10A8C00000D2F080008C300008E6001302F1EC5654 :10A8D0000400B30000800100B400010000BA9B0135 :10A8E0000D02F1EC56030000000100EBCD4080E0CA -:10A8F000674E9CEA170000301B6E0CFEB0EC8E6EAB -:10A900000CFEB0ED5FC070304CE0A037BD304CE0C5 -:10A91000A01B2E6E1CF91B006C580BC081300A6EF8 +:10A8F000674E98EA170000301B6E0CFEB0EC8E6EAF +:10A900000CFEB0ED5FC070304CE0A037B1304CE0D1 +:10A91000A01B226E1CF91B006C580BC081300A6E04 :10A920000BFEB0EFED6E0CFEB0EE8C346CE0A0834D -:10A930007B301BFE7C2400E0A080F0346CE0A08320 -:10A9400095E3CF8080D70380008D2C80008ED4804B -:10A950000123988000EA808000941080009154EBDD -:10A96000CD40C0201DE0674E9CEA1700006E0C3001 +:10A93000AD301BFE7C2400E0A08122346CE0A083BB +:10A94000C7E3CF8080D70380008D2C80008ED48019 +:10A950000123808000EA688000941080009154EB0D +:10A96000CD40C0201DE0674E98EA1700006E0C3005 :10A970001BF96B00523006300BBA0B301BFEB0EBEC :10A98000316E0CFEB0EC2E583CC1409A8B2FFBBAB6 :10A990000B301B6E0CFEB0F0231896C0B19A8CE001 -:10A9A0004C9C40CEF5E06CEF54EA1C8001FEB0E90F +:10A9A0004C9C40CEF5E06CEFC0EA1C8001FEB0E9A3 :10A9B000595806C0519A8CE04C9C40C225E06C0569 -:10A9C00094EA1C0000300BF95B002EF95B0030F9B3 +:10A9C00084EA1C0000300BF95B002EF95B0030F9C3 :10A9D0005B0034F95B0036F96B002B78FAB48B78A6 -:10A9E000FAB49B300AB91BF8EB0008002587001366 +:10A9E000FAB49B300AB91BF8EB0008003644001398 :10A9F00002F1EC560400B40000800100B500010033 :10AA000000D023010D02F1EC56030000000100F814 :10AA1000EB0010F8EB0018F8EB00202D8CB80BB809 :10AA2000ABC058300C6E0B2B1BB68C300B6E0CFE73 :10AA3000B0EBE6300B6E0CFEB0EAE66E0CFEB0EC4E -:10AA400027581CC0D1E06CEF54EA1C80012F8CFE0B +:10AA400027581CC0D1E06CEFC0EA1C80012F8CFE9F :10AA5000B0E91A303B6E0CFEB0EC40C058301B6EB3 -:10AA60000CFEB0EC3B346CE0A082F0302BFE7C247A -:10AA700000E0A08065346CE0A0830A300C6E0B2AE5 +:10AA60000CFEB0EC3B346CE0A08322302BFE7C2447 +:10AA700000E0A08097346CE0A0833C300C6E0B2A81 :10AA8000EBB68C2FFDE3CF80C0D70380008CF48021 :10AA90000094F080008CEC80008AF480008D7C8033 :10AAA00000877480008DC8D401FEB0E7D1301BFE52 -:10AAB000B0EBDC346CE0A082C9304BFE7C2400E0BB -:10AAC000A0803E346CE0A082E3D80AD401FEB0E757 -:10AAD000BF301BFEB0EBCA346CE0A082B7305BFE27 -:10AAE0007C2400E0A0802C346CE0A082D1D80A80C5 -:10AAF00000853C80008D588001BB388001B62C80D9 -:10AB000001BB7CEBCD4080F80B1518C030582C00F1 -:10AB1000B0F9001302F1EC560400B500008001000A +:10AAB000B0EBDC346CE0A082FB304BFE7C2400E089 +:10AAC000A08070346CE0A08315D80AD401FEB0E7F2 +:10AAD000BF301BFEB0EBCA346CE0A082E9305BFEF5 +:10AAE0007C2400E0A0805E346CE0A08303D80A8060 +:10AAF00000853C80008D588001BB9C8001B6908011 +:10AB000001BBE0EBCD4080F80B1518C030582C008D +:10AB10000125001302F1EC560400B500008001008D :10AB2000B60001000045E8010D02F1EC56030000FB -:10AB3000000100C2C1E0670594EA170000EF3C0085 -:10AB40002D582CC0D1301BE06C4E9CEA1C000078C4 +:10AB3000000100C2C1E0670584EA170000EF3C0095 +:10AB40002D582CC0D1301BE06C4E98EA1C000078C8 :10AB50000CFEB0EB7FE06C00FFEF6C002D300CEFD3 :10AB60005C002EEF5C0030EF5C0032EF6C002B30AD :10AB70000A300BAF1BEEEB0008EEEB0010EEEB0023 :10AB800018EEEB00202D87AE0CAEACE3CF808080BA -:10AB9000008D1CD421E0670594EA170000EF1B002C +:10AB9000008D1CD421E0670584EA170000EF1B003C :10ABA0002E169A2FFAEF5A002EEE0B0B0C0F8C2C50 :10ABB0002C5C5CE04C004EF9BC0201FE0C001C98C1 :10ABC000CC180F009E064606460646064606460078 @@ -2753,7 +2753,7 @@ :10AC000046064606460646064606460646064606E4 :10AC100046064606460646064606460646064602D8 :10AC20008C04A004BC055202BC04F6050C053C06CD -:10AC3000460646006452001302F1EC560400B600CA +:10AC30004606460048D3001302F1EC560400B60065 :10AC400000800100B700010000FA53010D02F1EC91 :10AC50005603000000010006460646064606460664 :10AC60004606460646064606460646064606460684 @@ -2761,17 +2761,17 @@ :10AC8000460240EF1C002E582CE08102DA0F9CEFA8 :10AC90005C0032EF1C0032581CC065E06C0080EF95 :10ACA0006C0028C048370CEF6C0028301BE06C4E5D -:10ACB0009CEA1C0000780C2CECB88BEF6B002B305E +:10ACB00098EA1C0000780C2CECB88BEF6B002B3062 :10ACC0000C2D27AE0CD82AEF1C002E582CE0810248 :10ACD000B80F9CFEB0BE22189B305A3026C2308F6F :10ACE000FB19BBA96B19CC180BEF5B0034EF5A00B2 -:10ACF00036EF66002CE0644E9CEA140000680CFEFF +:10ACF00036EF66002CE0644E98EA140000680CFE03 :10AD0000B0EAE0581CC171302B680CFEB0EAE06E6E :10AD1000FC19ACF9DCC004EF5C0038300CEF5C00CF :10AD20003AC0980E9C2C0C8FFC300CEF5C0034EF7A :10AD30005A0036EF66002B300C2D27AE0CD82AE0D7 -:10AD4000644E9CEA140000300B680CFEB0EA746894 -:10AD50000CF92B004A581B000FD8001302F1EC56D7 +:10AD4000644E98EA140000300B680CFEB0EA746898 +:10AD50000CF92B004A581B00F57F001302F1EC564A :10AD60000400B70000800100B8000100006DB801C8 :10AD70000D02F1EC56030000000100C041302BF938 :10AD80006B004A303BEF6B002B3005EF55002EFE79 @@ -2784,67 +2784,67 @@ :10ADF0001B002EF80B1900E0810235EF1B0032FE1C :10AE00003BFF025C5B0E9C2FECFEB0BDC9C09137CE :10AE10000CEF6C0028C098300C2CE7AE0CD82AE060 -:10AE20006C0080EF6C0028302CE06B4E9CEA1B001D +:10AE20006C0080EF6C0028302CE06B4E98EA1B0021 :10AE300000760B2CEBB68C3005EF550032EF550049 :10AE40002E301C2D57AE8CD82A3005E06C1981EAC3 :10AE50001C00DA8B0CFEB0B3C98FFC301BEF5B001B -:10AE6000363026EF66002BE0644E9CEA1400006842 -:10AE70000CF966004A303AF96A0032009BAA0013C6 +:10AE6000363026EF66002BE0644E98EA1400006846 +:10AE70000CF966004A303AF96A003200B3CA00138E :10AE800002F1EC560400B80000800100B900010096 :10AE9000002D03010D02F1EC56030000000100EF4C :10AEA00055002E2D37AE8B300BFEB0E9E9300A305D -:10AEB0005B306CE0A064D2D82AFEB0B3B58FFC3012 -:10AEC0003BEF5B00363026EF66002BE0644E9CEAD9 +:10AEB0005B306CE0A06504D82AFEB0B3B58FFC30DF +:10AEC0003BEF5B00363026EF66002BE0644E98EADD :10AED000140000680CF966004AF96B0032300B2D43 :10AEE00027AE0BFEB0E9CCD82AFEB0B47D8FFC3083 -:10AEF00026EF560036EF66002BE0644E9CEA140005 +:10AEF00026EF560036EF66002BE0644E98EA140009 :10AF000000680CF966004A303BF96B0032300B2DBB :10AF100027AE0BFEB0E9B4D82AE06C0080EF6C00DD -:10AF200028301CEF6C002BE0644E9CEA1400006893 +:10AF200028301CEF6C002BE0644E98EA1400006897 :10AF30000C302BF96B0032301BFEB0E9E3300B68AC -:10AF40000CFEB0E8DB300CE0A08F8A300C2D27AE71 +:10AF40000CFEB0E8DB300CE0A08FC0300C2D27AE3B :10AF50000CD82AE06C0080EF6C0028301CEF6C00ED -:10AF60002BE0644E9CEA140000680C302BF96B0057 +:10AF60002BE0644E98EA140000680C302BF96B005B :10AF700032301BFEB0E9C6301B680CFEB0E8BE30B4 :10AF80000C2D27AE0CD82AE06C0080EF6C00283026 -:10AF90001CEF6C002BE0644E9CEA140000680C006F -:10AFA00022EA001302F1EC560400B900008001000F +:10AF90001CEF6C002BE0644E98EA140000680C0073 +:10AFA0009A76001302F1EC560400B900008001000B :10AFB000BA00010000B8C8010D02F1EC5603000010 :10AFC000000100302BF96B003230052D5CB8853064 -:10AFD0000A305B306CE0A064532D27AE05D82AE020 +:10AFD0000A305B306CE0A064852D27AE05D82AE0EE :10AFE0006C0080EF6C0028301BEF6B002BE0644E90 -:10AFF0009CEA140000680C302AF96A0032F96B00F0 +:10AFF00098EA140000680C302AF96A0032F96B00F4 :10B000002B2D4C198C580CC091300A305B306CE001 -:10B01000A06490301CE0A08F35300C2D27AE0CD8EA +:10B01000A064C2301CE0A08F6B300C2D27AE0CD882 :10B020002AE06C0080EF6C0028301CEF6C002BE0F5 -:10B03000644E9CEA140000680C302BF96B00320F50 +:10B03000644E98EA140000680C302BF96B00320F54 :10B040008BE04B00D65F0B2D4CB88B300C2D27AE10 :10B050000CD82AE06C0080EF6C0028301CEF6C00EC -:10B060002BE0644E9CEA140000680C302BF96B0056 +:10B060002BE0644E98EA140000680C302BF96B005A :10B07000320F8BE04B00D95F0B2D3CB88B300C2D81 :10B0800027AE0CD82AE06C0080EF6C0028301CEF53 -:10B090006C002B302CE06B4E9CEA1B0000760B2CD6 -:10B0A000EBB68CE06C43E0EA1C0000786CF90B0016 +:10B090006C002B302CE06B4E98EA1B0000760B2CDA +:10B0A000EBB68CE06C43DCEA1C0000786CF90B001A :10B0B00028581BCB35300B2D8CB80B300A304B3059 -:10B0C0006CE0A000280F001302F1EC560400BA0057 +:10B0C0006CE0A000ED98001302F1EC560400BA0009 :10B0D00000800100BB000100000773010D02F1ECCC -:10B0E000560300000001006437CAABE06C0080EF3B -:10B0F0006C0028301CEF6C002BE0644E9CEA1400BE +:10B0E000560300000001006469CAABE06C0080EF09 +:10B0F0006C0028301CEF6C002BE0644E98EA1400C2 :10B1000000680C302BF96B0032FEB0EC51300C2D86 :10B1100027AE0CD82AEF1C002E585CE08100D90E17 :10B120009C2FFCFEB0B2B2C0F1370CEF6C0028C00F :10B13000F8EF1C002E583CE08100CB0E9C2FFCFE4B :10B14000B0B2BCCF30E06C0080EF6C0028302CE057 -:10B150006B4E9CEA1B0000760B2CEBB68C301CEF80 +:10B150006B4E98EA1B0000760B2CEBB68C301CEF84 :10B160006C002B300C2D27AE0CD82AEF1C002E586B :10B170004CE08100AE0E9C2FFCFEB0B2CDCE41CD96 :10B180005BFEB0B2E98FFC303BEF5B00363026EF60 -:10B1900066002BE0644E9CEA140000680CF966001F +:10B1900066002BE0644E98EA140000680CF9660023 :10B1A0004AF96B0032300B2D27AE0BFEB0E88CD87D :10B1B0002AEF1C002E582CE081008B0E9C2FFCFEE9 :10B1C000B0B2E8CC11CB2BEF1C002E582CE0810044 :10B1D000800E9C2FFCFEB0B2FFCB61CA7BFEB0B3E9 -:10B1E000DBC2F0E02C00C400FAA8001302F1EC5618 +:10B1E000DBC2F0E02C00C400849D001302F1EC5699 :10B1F0000400BB0000800100BC00010000135B01E3 :10B200000D02F1EC56030000000100C0A0204CC06C :10B2100040207CC140C1C8FEB0BBC08FFCC1F8FE5D @@ -2854,143 +2854,143 @@ :10B25000C46EFBB68C300C6EFBB69C303CEF6C00C1 :10B260002CC0B8E06C00CF6EFBB68C355C6EFBB6C4 :10B270009C303CEF6C002C6EFC199B580BC0D130FD -:10B280002CE06B4E9CEA1B0000760B2B6BB68C30CF +:10B280002CE06B4E98EA1B0000760B2B6BB68C30D3 :10B290000CEF5C0034C0D8198CE04C00CFCF1030DC -:10B2A0001CE06B4E9CEA1B0000760B2B6BB68C30BF +:10B2A0001CE06B4E98EA1B0000760B2B6BB68C30C3 :10B2B00026EF560036300CEF5C002E2D57AE86E0A0 -:10B2C000644E9CEA140000301B680CFEB0E8663047 +:10B2C000644E98EA140000301B680CFEB0E866304B :10B2D0000B680CFEB0E80A300CFEB0B35DD82A371C :10B2E0000CEF6C0028301CEF6C002B300C2D27AEBF :10B2F0000CD82A800033C080008D6880008D748057 -:10B300000034208000206C8000208400A7060013F9 +:10B300000034208000206C80002084005F35001312 :10B3100002F1EC560400BC0000800100BD000100F9 :10B320000079E3010D02F1EC5603000000010080FA -:10B3300000224480008D6080008B58800182B8809C -:10B3400001D8BC8001836C800093C4800020A08061 +:10B3300000224480008D6080008B588001831C8037 +:10B3400001D928800183D0800093C4800020A08090 :10B350000020D08000212C8000216C800021A8805A :10B360000021EC800023AC8000338C800023C4805B :10B3700000237880008D8C80002388EBCD40C03086 -:10B3800006E0670594EA170000EF3C002B581CC04C +:10B3800006E0670584EA170000EF3C002B581CC05C :10B3900051311CEF6C002BC108EF3C002B582CC026 :10B3A00051312CEF6C002BC088EF3C002B583CC077 :10B3B00041313CEF6C002BEF3C002B211CC0602086 :10B3C0001CC1C0201CC580C998EF360028321CEF74 -:10B3D0006C002BE06C4E9CEA1C0000780CF93B00E2 +:10B3D0006C002BE06C4E98EA1C0000780CF93B00E6 :10B3E00032582BE0810090303B2CECB88B300C6E47 :10B3F000FBB68C6EFBB69CC868EF1C0036581CC3AD :10B4000075EF1C0030EF1B0036F60C1900C7B26E4A :10B41000FCEF1B0030F80B0706EF1C00302FFCEF91 :10B420005C0030EF1B0036F60C1900C6C1300C0072 -:10B43000EE52001302F1EC560400BD000080010042 +:10B43000CF03001302F1EC560400BD0000800100B0 :10B44000BE00010000EC28010D02F1EC56030000E3 :10B45000000100EF5C0030EF5C0036323CEF6C0026 -:10B460002BE06C4E9CEA1C0000780C2B6CF92B0036 -:10B4700000582BC5A1301BE06C4E9CEA1C000078E4 +:10B460002BE06C4E98EA1C0000780C2B6CF92B003A +:10B4700000582BC5A1301BE06C4E98EA1C000078E8 :10B480000CFEB0E757300C6EFBB68C6EFBB69CC45E :10B49000C8323C2D57AE8CC488EF1C0030EF1B0027 :10B4A00034F60C1900C412EF3C002C582CC1216E4C -:10B4B000FBEF1C0030180B17D6E06C4E9CEA1C000A +:10B4B000FBEF1C0030180B17D6E06C4E98EA1C000E :10B4C00000780CFEB0E752C0E1302CEF6C002DC0CC :10B4D000A8EF3C002C583CC0616EFBEF1C003018FC :10B4E0000B17A6EF1C00302FFCEF5C0030EF1B00A9 :10B4F00034F60C1900C191300CEF5C0030EF5C00A9 -:10B5000034323CEF6C002BE06C4E9CEA1C0000785F +:10B5000034323CEF6C002BE06C4E98EA1C00007863 :10B510000C2B6CF92B0000582BC071CADB300CEFE0 :10B520005C00302CC7AE0C0C9C5C5CE3CD80C08012 :10B53000008CDC80008D14EBCD4080303A300B3035 -:10B540000CFEB0BEBF582CC041302CE3CD8080E053 -:10B550006CEFB400782C001302F1EC560400BE002E +:10B540000CE0A05A3B582CC041302CE3CD8080E069 +:10B550006CF020003AD2001302F1EC560400BE0059 :10B5600000800100BF000100005393010D02F1ECC7 :10B5700056030000000100EA1C8001FEB0E43830F0 -:10B580000CE0672FE8EA170000EF6C0071EF5C0039 +:10B580000CE0672FE4EA170000EF6C0071EF5C003D :10B5900072FB3A000EFB3B000DFB3C000CE0A00DE3 -:10B5A0005D300A300B0E9930ACB32A201CCFE193EA -:10B5B0000AE3CF9080D703800087748000D9E05ED3 -:10B5C000FF0000EBCD40E020EDFACCFFF4FEB0BF71 -:10B5D00005303B303CFEB0BF35C041FC1C447A50C6 -:10B5E000BCE0672FE8EA1700006FDC29ECF92500C2 -:10B5F000005C75F9D5B008E0A062761896E0A00C62 -:10B60000DFEF6C006CEF2C006C582CC0815825C00B -:10B6100061301B303CFEB0BEE7C098581CC071586A -:10B6200015C051302B303CFEB0BEDEFACCFFF478B2 +:10B5A00051300A300B0E9930ACB32A201CCFE193F6 +:10B5B0000AE3CF9080D703800087748000D9C85EEB +:10B5C000FF0000EBCD40E020EDFACCFFF4E0A05A04 +:10B5D00081303B303CE0A05AB1C041FC1C447A5061 +:10B5E000BCE0672FE4EA1700006FDC29ECF92500C6 +:10B5F000005C75F9D5B008E0A062A81896E0A00C30 +:10B60000D3EF6C006CEF2C006C582CC0815825C017 +:10B6100061301B303CE0A05A63C098581CC0715880 +:10B6200015C051302B303CE0A05A5AFACCFFF478C8 :10B630000A500A781A501A782A502AF7D6C01040B1 -:10B64000BCE0A00C4F28876E0C0C0C8F0C2F2DE348 -:10B65000CF90E080003D6080003DC88001846C8018 -:10B6600000D94480003D6C8000D868EBCD4080203C -:10B670002DE0672FE8EA17009E7D001302F1EC56DB +:10B64000BCE0A00C4328876E0C0C0C8F0C2F2DE354 +:10B65000CF90E080017458800174C0800184D08054 +:10B6600000D92C800174648000D850EBCD4080203C +:10B670002DE0672FE4EA17005ED8001302F1EC56C4 :10B680000400BF0000800100C00001000052FB0167 :10B690000D02F1EC560300000001000000EF2C0049 -:10B6A00054580CC4551A9CE0A08BE80E9C2ACC1A66 +:10B6A00054580CC4551A9CE0A08C120E9C2ACC1A3B :10B6B0009B3069172A18BA2029CFD1EF2C0055EFFB :10B6C0002B006EF60C1800C291EF2B0070EF2A00D1 :10B6D0006E160AEF6A006EEF2B006EE04B003DC065 :10B6E00065EF2B006E23CBEF6B006E300BEF4B0042 :10B6F0007829B7EF2B00005BFBC051301C2FEDE326 -:10B70000CD8080161CE0A04ECABFDBE0A04EAD5C31 +:10B70000CD8080161CE0A04ED4BFDBE0A04EB75C1D :10B710006C581CCF44300CCF3BEF2B005DF60C185F :10B7200000CFA0EEEA00542A47AF1BCF5B6FECE0DE :10B730006B7740EA1B001B163CCEE5CE0B0000EBFE :10B74000CD40FC3007C0682926ED2C00000A0CAC67 -:10B750008CE0662FE8EA160000ED24006E5C675866 +:10B750008CE0662FE4EA160000ED24006E5C67586A :10B7600007C1D5ED27005508175C67ED2500705817 -:10B7700007CEB4F9D7B008E0A04E91BFDB14921603 -:10B78000930A9CE0A04E8B04980699E0A04E42CE0E -:10B790001208252926AC853007CDCB00EE380013E2 +:10B7700007CEB4F9D7B008E0A04E9BBFDB149216F9 +:10B78000930A9CE0A04E9504980699E0A04E4CCEFA +:10B790001208252926AC853007CDCB006E79001321 :10B7A00002F1EC560400C00000800100C10001005D :10B7B000003E57010D02F1EC56030000000100E0CD :10B7C00044003DC0652926ED2C000023CCAC8CE361 -:10B7D000CF80FC80015DFEEBCD4080E0672FE8EA82 +:10B7D000CF80FC80015E12EBCD4080E0672FE4EA71 :10B7E000170000301CEF6C006C300CEF6C006D3FEC :10B7F000FBEF6B005430FBEF6B006F314BEF6B00D6 -:10B8000070EF6C0071EF5C0072E0A08BE9EF4C0010 +:10B8000070EF6C0071EF5C0072E0A08C1FEF4C00D9 :10B8100074E06BBEE4EA1B8000F94B0068E06BBF8C :10B8200048EA1B8000F94B006CE06BBF4CEA1B80C0 :10B8300000F94B0070E06BC198EA1B8000F94B00E7 :10B8400074E06BC638EA1B8000F94B0078E3CF90B8 -:10B8500080D7038001D91CD42122AD18943006FA78 -:10B86000CCFFACE0A00BD8E0672FE8EA1700000E91 +:10B8500080D7038001D988D42122AD18943006FA0C +:10B86000CCFFACE0A00BCCE0672FE4EA1700000EA1 :10B870009C1A9B3549190A16AA2049CFD1300B30A2 -:10B880001CCCDC1895423C6EEBE0A039F1E0A04DF9 -:10B89000B33008FC194024E0A04D25E0A04DF7FB93 +:10B880001CCCDC1895423C6EEBE0A039FBE0A04DEF +:10B89000BD3008FC194024E0A04D2FE0A04E01FB74 :10B8A0001A009AEF1B0046142B5C64C2715805C045 :10B8B000515C7CC0315C5BC0E030165805C0B00004 -:10B8C00077BA001302F1EC560400C10000800100B9 +:10B8C00016EB001302F1EC560400C10000800100E9 :10B8D000C200010000AB9C010D02F1EC5603000018 :10B8E0000001006FFC0A0CEF4C007C301CE06B3058 -:10B8F00068EA1B0000B68C300CEF4C00783FFCEF80 +:10B8F00064EA1B0000B68C300CEF4C00783FFCEF84 :10B900006C0054EEEA0054EEEB005CEEEA0054EEFC :10B91000EB0064EF2C006FEF6C006EC1D8C39DC1CB :10B9200040300CEF6C006DEEEA0054EEEB005C1A58 -:10B930009CE0A08AC70E9C2ACC1A9B3069172A1853 +:10B930009CE0A08AF10E9C2ACC1A9B3069172A1829 :10B94000BA2029CFD1C21FCC8EC060EEEA0054EEDF :10B95000EB00643016EF3C0071581CC0C1EF1C00B6 :10B9600072580CC0313016C068300CEF6C0071EFAB :10B970005C00725C665816C041300CEF4C00786F6A :10B98000DCF93B0061580BC0B1300BEF4B00782A5B :10B990000C198C581CC025C24C300CC0280C9C2D96 -:10B9A0006DD8228001D7DCEBCD4080300CE06B2FCE -:10B9B000E8EA1B0000F74C0078303A303BFEB0BCA0 -:10B9C000C91897C0EC0E9CE3CD8080D401303A308A -:10B9D0003B301CFEB0BCBED802D70380003C6CD408 -:10B9E00001215D001523001302F1EC560400C20092 +:10B9A0006DD8228001D830EBCD4080300CE06B2F79 +:10B9B000E4EA1B0000F74C0078303A303BE0A05836 +:10B9C000451897C0EC0E9CE3CD8080D401303A300E +:10B9D0003B301CE0A0583AD802D70380017364D4EE +:10B9E00001215D006301001302F1EC560400C20066 :10B9F00000800100C3000100001427010D02F1ECDA -:10BA0000560300000001001A9CE0A00B291A9BE0DD -:10BA10006A2FE8EA1A0000149E30ACB709BD28204E -:10BA20001CCFD176089D082EBDDA0AE06C3068EA9A -:10BA30001C0000198C5EFCE06C2FE8EA1C00007909 -:10BA4000FC5EFC300CE06B2FE8EA1B0000F74C00BA -:10BA50007C5EFD300CE06B3068EA1B0000B68C5E4B +:10BA0000560300000001001A9CE0A00B1D1A9BE0E9 +:10BA10006A2FE4EA1A0000149E30ACB709BD282052 +:10BA20001CCFD176089D082EBDDA0AE06C3064EA9E +:10BA30001C0000198C5EFCE06C2FE4EA1C0000790D +:10BA4000FC5EFC300CE06B2FE4EA1B0000F74C00BE +:10BA50007C5EFD300CE06B3064EA1B0000B68C5E4F :10BA6000FD0000EBCD40C0215D18963007581BC08B -:10BA7000F1E0A00BDD418B163CC053418718275CD9 +:10BA7000F1E0A00BD1418B163CC053418718275CE5 :10BA800057C8A8280C418718275C57C8581A9CE04B -:10BA9000A00AE65C5658A6F9B602001E06ED36006E +:10BA9000A00ADA5C5658A6F9B602001E06ED36007A :10BAA0000AFE06001F7A071927350743515F6D40CC :10BAB0000C418B163CC053400C41871827C6C84028 :10BAC0000BE06C9680EA1C0098180B418716272F14 :10BAD000F7C628401B41970E3BC0331627C5C8E068 :10BAE0006C9680EA1C0098180B16272FF7C5484063 :10BAF0002B41A70E3BC0331627C4E8E06C9680EAC2 -:10BB00001C0098180B1627003EA3001302F1EC56F8 +:10BB00001C0098180B1627008DE4001302F1EC5668 :10BB10000400C30000800100C400010000000F0108 :10BB20000D02F1EC560300000001002FF7C468403D :10BB30003B41B70E3BC0331627C408E06C9680EA41 @@ -3002,39 +3002,39 @@ :10BB90006C9680EA1C0098180B16272FF7C0E84017 :10BBA0007B41F70E3BC0331627C088E06C9680EAD5 :10BBB0001C0098180B16272FF70E9C2EBDE3CD8086 -:10BBC000C0D7038000DB24301CE06B2FE8EA1B00A9 -:10BBD00000293BB68C5EFDE06C2FE8EA1C000029D2 -:10BBE0003C198C5EFC0000D401E0A00A5BD80A80FE -:10BBF00000D974E06B2FE8EA1B0000F75C0072309C +:10BBC000C0D7038000DB0C301CE06B2FE4EA1B00C5 +:10BBD00000293BB68C5EFDE06C2FE4EA1C000029D6 +:10BBE0003C198C5EFC0000D401E0A00A4FD80A800A +:10BBF00000D95CE06B2FE4EA1B0000F75C007230B8 :10BC00001C28FBB68C5EFD5EFD0000EBCD40C02124 -:10BC10005D1A9CE0A00A36408642070C9C0E9BE011 -:10BC2000A03AA2C0630C9C0E9BE0A0007A7C00139B +:10BC10005D1A9CE0A00A2A408642070C9C0E9BE01D +:10BC2000A03AACC0630C9C0E9BE0A00039EB001363 :10BC300002F1EC560400C40000800100C5000100C0 :10BC4000006AB7010D02F1EC560300000001003854 -:10BC500057C0B8E06C2400EA1C49740E9BE0A03881 -:10BC60004F0C9BE0A038BAE0A04C0EE068147BEAD1 -:10BC70001847AEE0697AE1EA193F74E0A04A66E04D -:10BC8000A03A3AE0A04C003008FC194059E0A04B23 -:10BC900072E0A04C44E0A03AD7E0A04BF5E0681475 +:10BC500061C0B8E06C2400EA1C49740E9BE0A03877 +:10BC6000590C9BE0A038C4E0A04C18E068147BEAB3 +:10BC70001847AEE0697AE1EA193F74E0A04A70E043 +:10BC8000A03A44E0A04C0A3008FC194059E0A04B0F +:10BC90007CE0A04C4EE0A03AE1E0A04BFFE068144D :10BCA0007BEA1847AEE0697AE1EA193F84E0A04BED -:10BCB00062E068432DEA18EB1CE06936E2EA193FBE -:10BCC0001AE0A04A43E0A03A172EBDE3CD80C0EBB6 -:10BCD000CD40C0215D1A9CE0A009E640D642570C39 -:10BCE0009C0E9BE0A03A52C0630C9C0E9BE0A038D7 -:10BCF00007C0B8E06C2400EA1C49740E9BE0A03732 -:10BD0000FF0C9BE0A0386AE0A04BBEE068147BEA21 -:10BD10001847AEE0697AE1EA193F74E0A04A16E0FC -:10BD2000A039EAE0A04BB03008FC194059E0A04B24 -:10BD300022E0A04BF4E0A03A87E0A04BA5E0681415 +:10BCB0006CE068432DEA18EB1CE06936E2EA193FB4 +:10BCC0001AE0A04A4DE0A03A212EBDE3CD80C0EBA2 +:10BCD000CD40C0215D1A9CE0A009DA40D642570C45 +:10BCE0009C0E9BE0A03A5CC0630C9C0E9BE0A038CD +:10BCF00011C0B8E06C2400EA1C49740E9BE0A03827 +:10BD0000090C9BE0A03874E0A04BC8E068147BEA03 +:10BD10001847AEE0697AE1EA193F74E0A04A20E0F2 +:10BD2000A039F4E0A04BBA3008FC194059E0A04B10 +:10BD30002CE0A04BFEE0A03A91E0A04BAFE06814ED :10BD40007BEA1847AEE0697AE1EA193F84E0A00097 -:10BD5000BA06001302F1EC560400C5000080010091 +:10BD5000C5A9001302F1EC560400C50000800100E3 :10BD6000C600010000FF7C010D02F1EC560300004B -:10BD70000001004B12E068432DEA18EB1CE0693625 -:10BD8000E2EA193F1AE0A049F3E0A039C72EBDE36B -:10BD9000CD80C080013A38800135AC800136888082 -:10BDA000013AF4800159F8800139A4EBCD40FE221C -:10BDB000AD18971696FACCFFACE0A00987301B0DA2 -:10BDC0008CF80C1068EE0C0B0BE0612FE8EA110008 +:10BD70000001004B1CE068432DEA18EB1CE069361B +:10BD8000E2EA193F1AE0A049FDE0A039D12EBDE357 +:10BD9000CD80C080013A4C800135C08001369C8046 +:10BDA000013B0880015A0C800139B8EBCD40FE22DE +:10BDB000AD18971696FACCFFACE0A0097B301B0DAE +:10BDC0008CF80C1068EE0C0B0BE0612FE4EA11000C :10BDD00000E33A0071303C581AC1510D89F2091044 :10BDE000680E09B29C0D89F20910680E09B2CB5891 :10BDF0001AC0E1E31B0072580BC0A1300BE36B00CB @@ -3045,7 +3045,7 @@ :10BE4000DC0D8CF80C10680E0C19D5029C1A9B3571 :10BE500049190A16AA2049CFD1300B302CC39E5C59 :10BE60005C18450D8CF80C10680E0CB8D5029C1AA5 -:10BE70009B3549001D28001302F1EC560400C60052 +:10BE70009B35490002D9001302F1EC560400C600BC :10BE800000800100C70001000040C7010D02F1EC75 :10BE900056030000000100190A16AA2049CFD1302C :10BEA0000B303CC28E0D8BF60B10680E0B2F8BB631 @@ -3054,16 +3054,16 @@ :10BED0008C029C1A9B3549190A16AA2049CFD130E9 :10BEE0000B305CFEB0FE080D8BF60B10680E0B2FAE :10BEF0006BB68C029C1A9B3549190A16AA2049CFA9 -:10BF0000D1C0BFE0A04AE430080699E0A04A57E05B -:10BF1000A04B290D8BF60B10680E0B2EEBB60C42C6 -:10BF20003CE0A04AD53008FC194024E0A04A47E094 -:10BF3000A04B190D8BF60B10680E0B2ECBB68CFB9D +:10BF0000D1C0BFE0A04AEE30080699E0A04A61E047 +:10BF1000A04B330D8BF60B10680E0B2EEBB60C42BC +:10BF20003CE0A04ADF3008FC194024E0A04A51E080 +:10BF3000A04B230D8BF60B10680E0B2ECBB68CFB93 :10BF40001C009A0D8BF60B10680E0B2EBBB68C02E4 :10BF50009C1A9B3549190A16AA2049CFD1C8DEE0A0 -:10BF6000A04AB630080699E0A04A29E0A04AFB0D95 +:10BF6000A04AC030080699E0A04A33E0A04B050D76 :10BF70008BF60B10680E0B2EABB68C425CE0A04A21 -:10BF8000A73008FC194024E0A04A19E0A04AEB0DB4 -:10BF90008BF60B10680E0B0091D6001302F1EC56D5 +:10BF8000B13008FC194024E0A04A23E0A04AF50D96 +:10BF90008BF60B10680E0B00AA38001302F1EC565A :10BFA0000400C70000800100C800010000D72C0178 :10BFB0000D02F1EC560300000001002E9BB68C022E :10BFC0009C1A9B3549190A16AA2049CFD1300B304B @@ -3087,20 +3087,20 @@ :10C0E0009C1A9B3549190A16AA2049CFD1300B302A :10C0F0005CFEB0FD250D8BF60B10680E0B975C02F5 :10C100009C1A9B3549190A16AA2049CFD1C29EE034 -:10C11000A04A0230080699E0A04975E0A04A430D04 -:10C120008BF60B10680E0B97BC423CE0A049F43034 -:10C1300008FC194024E0A04966E0A04A380D8BF6BF +:10C11000A04A0C30080699E0A0497FE0A04A4D0DE6 +:10C120008BF60B10680E0B97BC423CE0A049FE302A +:10C1300008FC194024E0A04970E0A04A420D8BF6AB :10C140000B10680E0B2D0BB68CFB1C009A0D8BF69A :10C150000B10680E0B2CFBB68C029C1A9B354919F0 -:10C160000A16AA2049CFD1FEB0FDACE0A049D414F4 +:10C160000A16AA2049CFD1FEB0FDACE0A049DE14EA :10C17000941695E0681EB8EA18EB85E069B851EAB4 -:10C18000193F9EE0A049E6C123E062999AEA12991C +:10C18000193F9EE0A049F0C123E062999AEA129912 :10C1900099E0639999EA133FB9089A0A9B049806B3 -:10C1A00099E0A049D9C03204940695300AFC1B409E -:10C1B0002408980A99E0A04926E0A049F80D8BF6DA -:10C1C0000B10680E0B2CEBB60C425CE0A049A430BF -:10C1D00008FC194024E0A04916E0A049E80D8B00B6 -:10C1E000E533001302F1EC560400C90000800100A1 +:10C1A00099E0A049E3C03204940695300AFC1B4094 +:10C1B0002408980A99E0A04930E0A04A020D8BF6C5 +:10C1C0000B10680E0B2CEBB60C425CE0A049AE30B5 +:10C1D00008FC194024E0A04920E0A049F20D8B00A2 +:10C1E0001D42001302F1EC560400C900008001005A :10C1F000CA00010000025C010D02F1EC56030000D0 :10C20000000100F60B10680E0B2CCBB68C029C1AAA :10C210009B3549190A16AA2049CFD1300B306CFE44 @@ -3111,14 +3111,14 @@ :10C26000B0FC800D8BF60B10680E0B978C1A9C356A :10C270004A030B18AB204ACFD1300B309CFEB0FCE8 :10C28000710D8BF60B106816078F9C0D8C2FFCAC74 -:10C290008CFEB0FC372D6DE3CF80FE8000D954803A -:10C2A000015DC280015D7080015D7480015D34803C -:10C2B000015C2280015DCA202DE06BF148EA1B8001 +:10C290008CFEB0FC372D6DE3CF80FE8000D93C8052 +:10C2A000015DD680015D8480015D8880015D4880EC +:10C2B000015C3680015DDE202DE06BF1B4EA1B806D :10C2C00001B70ABB1BF92B00005C5BC090201BE090 :10C2D000800101201BE08001C0E08F02A2E06B2BF7 -:10C2E00008EA1B0000760B284B178B588BF9BB0212 +:10C2E00004EA1B0000760B284B178B588BF9BB0216 :10C2F000001E0BF73B000AFE0B001F061D36516A9D -:10C30000859EB900573F001302F1EC560400CA00A5 +:10C30000859EB9001733001302F1EC560400CA00F1 :10C3100000800100CB00010000BDE7010D02F1EC3F :10C3200056030000000100782BF92A0004F60A04E5 :10C330001BBA0B782BF92A0004F60A001B2ECB96A9 @@ -3151,10 +3151,10 @@ :10C4E0008B960BF60B11FFBA2B9A0B782AF92900C1 :10C4F00004F4090A1B9A1B782AF9290004F409009C :10C500001A2ECAB40B9A2B782A2FCCF9290000F4E2 -:10C5100009001A2D8AB40BCA79E06B2B08EA1B00BC +:10C5100009001A2D8AB40BCA79E06B2B04EA1B00C0 :10C5200000760B283B178B588BF9BB02002FEBFED4 :10C530000B001FC0CBC078C1E8C368C4D8C658C7B9 -:10C54000C8C948782BF92A0004F60A000D4F0013D9 +:10C54000C8C948782BF92A0004F60A005F90001346 :10C5500002F1EC560400CC0000800100CD00010087 :10C5600000C377010D02F1EC56030000000100004A :10C570001B2ECB960BBA0B782BF92A0004F60A0473 @@ -3180,7 +3180,7 @@ :10C6B0001B782BF92A0004F60A001B2ECB960B5C84 :10C6C0003BBA0B782BF92A0004F60A041B5C3BBA30 :10C6D0001B782BF92A0004F60A001B2D8B960B5CA5 -:10C6E0003BBA2BC27BE06B2B08EA1B0000760B28C1 +:10C6E0003BBA2BC27BE06B2B04EA1B0000760B28C5 :10C6F0002B178B588BF9BB02001E0BF73B000AFE71 :10C700000B001F061C334B627A91A9782BF92A0083 :10C7100004F60A041BBA0B782BF92A0004F60A0067 @@ -3191,7 +3191,7 @@ :10C760000BBA2BC8F8782BF92A0004F60A041B5CD4 :10C770003BBA0B782BF92A0004F60A001B965B5C87 :10C780003BBA1B782BF92A0004F60A001B2ECB9625 -:10C790000BBA2B009737001302F1EC560400CE00C1 +:10C790000BBA2B008DA0001302F1EC560400CE0062 :10C7A00000800100CF00010000E907010D02F1EC5B :10C7B00056030000000100C778782BF92A0004F620 :10C7C0000A001B965B5C3BBA0B782BF92A0004F637 @@ -3214,5377 +3214,5377 @@ :10C8D0000D02F1EC560300000001000004F4090011 :10C8E0001AB45B9A2B782A2FCCF9290000F409009E :10C8F0001A2ECAB40B2FED5EFF0000EBCD40FC20DA -:10C900004D1897E06CEFF4EA1C8001B90ABB1B2FAD +:10C900004D1897E06CF060EA1C8001B90ABB1B2F40 :10C910008CB90AFAEB0008EF2C00005C5C589CF91B -:10C92000BC02042FECFE0C001FC098C598CF68CD48 -:10C9300018C499C489C9D8C119C3896E2CEF2B00BA +:10C92000BC02042FECFE0C001FC098C598CED8CDD9 +:10C9300018C409C3F9C9D8C089C2F96E2CEF2B00FD :10C9400004F80B041CBA0C6E2CEF2B0004F80B003F :10C950001C2ECC980CBA1C6E2B2FC7EF2A0000F6A9 :10C960000A001B2D8B960BBA2B9A0ABA4ABA5CBAEC :10C970006B300CC0F8F80B1501FACAFFF8160A94D0 :10C980008AE04A8001C0451A99F20B0A0A2FFC5C22 -:10C990005C583CCF15E06C2B08EA1C000078069A26 -:10C9A0000CE0A03517E06BF660EA1B3A1CE0A03300 -:10C9B000318D0C9A1CE0A0350DE06BF660EA1B3A55 -:10C9C0001CE0A033278D1C9A2CE0A03503E06BF609 -:10C9D00060EA1B3A1CE0A0331D8D2C0024080013D4 +:10C990005C583CCF15E06C2B04EA1C000078069A2A +:10C9A0000CE0A03521E06BF660EA1B3A1CE0A033F6 +:10C9B0003B8D0C9A1CE0A03517E06BF660EA1B3A41 +:10C9C0001CE0A033318D1C9A2CE0A0350DE06BF6F5 +:10C9D00060EA1B3A1CE0A033278D2C00DA9000138C :10C9E00002F1EC560400D00000800100D1000100EB -:10C9F00000EDD2010D02F1EC56030000000100CF62 -:10CA0000486E2CEF2B0004F80B041CBA0C6E2CEFB4 +:10C9F00000EDD2010D02F1EC56030000000100CE63 +:10CA0000B86E2CEF2B0004F80B041CBA0C6E2CEF44 :10CA10002B0004F80B001C2ECC9805BA156E2C2F99 :10CA2000C7EF2B0000F80B001C2D8C9807BA27E0ED -:10CA30006C2B08EA1C00007806E06296A6EA121D3C -:10CA4000A1E063044FEA133F349A0CE0A034D4E031 -:10CA5000A045F204980699E0A04565E0A034248D35 -:10CA60003C0A9CE0A034C8E0A045E604980699E0A2 -:10CA7000A04559E0A034188D4C0E9CE0A034BCE0D9 -:10CA8000A045DA04980699E0A0454DE0A0340C8D4D -:10CA90005CCAB8E06C2B08EA1C00007806E064145D +:10CA30006C2B04EA1C00007806E06296A6EA121D40 +:10CA4000A1E063044FEA133F349A0CE0A034DEE027 +:10CA5000A045FC04980699E0A0456FE0A0342E8D17 +:10CA60003C0A9CE0A034D2E0A045F004980699E08E +:10CA7000A04563E0A034228D4C0E9CE0A034C6E0BB +:10CA8000A045E404980699E0A04557E0A034168D2F +:10CA90005CCA28E06C2B04EA1C00007806E06414F1 :10CAA0007BEA1447AEE0657AE1EA153F846E2CEF2D -:10CAB0002B0004F80B041CE0A0349EE0A045BC0849 -:10CAC000980A99E0A0452FE0A033EE8DFC6E2C2F44 -:10CAD000C7EF2B0000F80B001C985CE0A0348CE042 -:10CAE000A045AA08980A99E0A0451DE0A033DCED16 -:10CAF0004C0040C7A8E06C2B08EA1C000078060038 -:10CB0000B69B001302F1EC560400D1000080010036 +:10CAB0002B0004F80B041CE0A034A8E0A045C60835 +:10CAC000980A99E0A04539E0A033F88DFC6E2C2F30 +:10CAD000C7EF2B0000F80B001C985CE0A03496E038 +:10CAE000A045B408980A99E0A04527E0A033E6EDF8 +:10CAF0004C0040C7186E2CEF2B0004F80B041C00F0 +:10CB00006747001302F1EC560400D10000800100D9 :10CB1000D2000100007819010D02F1EC560300006B -:10CB20000001006E2CEF2B0004F80B041CA96CE034 -:10CB3000A034748DCC6E2C2FC7EF2B0000F80B00A7 -:10CB40001C985CE0A0346A6CCBE0A032318DCC6CD8 -:10CB5000CBE06CD70AEA1C3C23E0A0327F8DCCC529 -:10CB600068E06C2B08EA1C000078066E2CEF2B00A6 -:10CB700004F80B041CED5C004A6E2CEF2B0004F84B -:10CB80000B001C2ECC980CED5C004C6E2C2FC7EFCC -:10CB90002B0000F80B001C2D8C980C2B26AC0CC322 -:10CBA00068E06C2B08EA1C000078066E2CEF2B0066 -:10CBB00004F80B041CED5C00506E2CEF2B0004F805 -:10CBC0000B001C985CED5C00526E2CEF2B0004F8FF -:10CBD0000B001C2ECC980CED5C00546E2C2FC7EF74 -:10CBE0002B0000F80B001C2E2C980C2AA6AC0CC0B5 -:10CBF000E86E2C2FC7EF2B0000F80B041CE06B2B0A -:10CC000008EA1B0000760B2A8BB60C2FCDE3CF90E1 -:10CC1000FCD70380015D3480015C22800139A4804F -:10CC2000013AF400BB7C001302F1EC560400D20080 +:10CB2000000100A96C6E2B2FC7EF2A0000F60A0047 +:10CB30001B965B160CE0A0347BFC1B3980E0A03216 +:10CB400097E06B2B04EA1B0000760B97CCC568E0DE +:10CB50006C2B04EA1C000078066E2CEF2B0004F806 +:10CB60000B041CED5C004A6E2CEF2B0004F80B004C +:10CB70001C2ECC980CED5C004C6E2C2FC7EF2B00BC +:10CB800000F80B001C2D8C980C2B26AC0CC368E015 +:10CB90006C2B04EA1C000078066E2CEF2B0004F8C6 +:10CBA0000B041CED5C00506E2CEF2B0004F80B0006 +:10CBB0001C985CED5C00526E2CEF2B0004F80B000F +:10CBC0001C2ECC980CED5C00546E2C2FC7EF2B0064 +:10CBD00000F80B001C2E2C980C2AA6AC0CC0E86E9A +:10CBE0002C2FC7EF2B0000F80B041CE06B2B04EA82 +:10CBF0001B0000760B2A8BB60C2FCDE3CF90FC8068 +:10CC0000015D4880015C36800139B880013B0880B5 +:10CC1000013748D42121DD300CBA9CBA8CBA9CC1B2 +:10CC2000180E9C00A35A001302F1EC560400D20027 :10CC300000800100D300010000C7A2010D02F1EC49 -:10CC4000560300000001008001368880013734D48B -:10CC50002121DD300CBA9CBA8CBA9CC1180E9CFE06 -:10CC6000B0FBCE5826C0410E9CE0A024E75825C05A -:10CC7000310E9CC7AEFB2B00012FFBBA9BFB2B0098 -:10CC80000158BBE0840160FB2B0001585BCF40FBE7 -:10CC90002B000158ABCF00FB2B0001589BCEC0E00E -:10CCA0006C43E0EA1C0000FB2A0001F80A0327EFAE -:10CCB0000C0024580CC0D4E06C2B08EA1C0000784F -:10CCC0000C294C988CEF0B0024180BEF5B002430E0 -:10CCD0000B0E9C6ECA746A5D1A1896301B0E9C6E01 -:10CCE000CA746A5D1A18955816C0305815C081EF7D -:10CCF0002C00265C5C6EBB764B5D1BCBDB5826C0E4 -:10CD0000305825CB91306BFACCFFD46EBA745A5D93 -:10CD10001ACB20FB2B0001584BC041FEB0DD0CCAE2 -:10CD2000B0EF2C00042FFCAECCEF2C0004EF3B0046 -:10CD30000CF60C1900C035300CAECC300CBA8CC2DD -:10CD400098FACCFFD4FB2A00ADC8001302F1EC56D0 +:10CC400056030000000100FEB0FBDA5826C0410E7A +:10CC50009CE0A024E75825C0310E9CC86EFB2B0039 +:10CC6000012FFBBA9BFB2B000158BBE0840160FB4A +:10CC70002B0001585BCF40FB2B000158ABCF00FBD2 +:10CC80002B0001589BCEC0E06C43DCEA1C0000FB8B +:10CC90002A0001F80A0327EF0C0024580CC0D4E046 +:10CCA0006C2B04EA1C0000780C294C988CEF0B00CC +:10CCB00024180BEF5B0024300B0E9C6ECA746A5D67 +:10CCC0001A1896301B0E9C6ECA746A5D1A18955815 +:10CCD00016C0305815C081EF2C00265C5C6EBB7608 +:10CCE0004B5D1BCBDB5826C0305825CB91306BFAFF +:10CCF000CCFFD46EBA745A5D1ACB20FB2B000158BE +:10CD00004BC041FEB0DD18CAB0EF2C00042FFCAEC2 +:10CD1000CCEF2C0004EF3B000CF60C1900C03530B2 +:10CD20000CAECC300CBA8CC298FACCFFD4FB2A00E3 +:10CD300000F80A071BA96BFB290000F809001C1961 +:10CD40009C180BFACCFFCC00B3F3001302F1EC56A5 :10CD50000400D30000800100D400010000D38A0148 -:10CD60000D02F1EC560300000001000000F80A0774 -:10CD70001BA96BFB290000F809001C199C180BFA71 -:10CD8000CCFFCCFB290000F8090A1BFACCFFCCFB36 -:10CD90002A0000F80A041C6E2BEF2A0004EF390069 -:10CDA0000CFB2E0000F20E034AF60A0A1CFB2B00B5 -:10CDB000002FFBBA8BFB2B0000EF3C0011F80B1986 -:10CDC00000FE94FF60FB2B00015C5B589BF9BB02EB -:10CDD000052FEBFE0B001FC098C278C3C8C518C949 -:10CDE00048CD5BCC1BCAD8C9F8FACCFFD4FB2A00CB -:10CDF00000F80A001C199BA96BFACCFFD4FB290090 -:10CE000000F809071C180BE06C06E0EA1C0000FBA8 -:10CE1000290000F809041C180BFACCFFCCFB2900F0 -:10CE200000F8090A1BCB3BFACCFFD4FB2A0000F820 -:10CE30000A001C199BA96BFACCFFD4FB290000F84F -:10CE400009071C180BFACCFFCCFB290000F8090AD3 -:10CE50001BC9DBFACCFFD4FB2A0000F80A001C191E -:10CE60009BA96BFACCFFD4FB2900000085FC0013C2 +:10CD60000D02F1EC56030000000100FB290000F861 +:10CD7000090A1BFACCFFCCFB2A0000F80A041C6E3F +:10CD80002BEF2A0004EF39000CFB2E0000F20E03FB +:10CD90004AF60A0A1CFB2B00002FFBBA8BFB2B0068 +:10CDA00000EF3C0011F80B1900FE94FF60FB2B0014 +:10CDB000015C5B589BF9BB02052FEBFE0B001FC00B +:10CDC00098C278C3C8C518C948CD5BCC1BCAD8C99E +:10CDD000F8FACCFFD4FB2A0000F80A001C199BA922 +:10CDE0006BFACCFFD4FB290000F809071C180BE0F4 +:10CDF0006C06D0EA1C0000FB290000F809041C188E +:10CE00000BFACCFFCCFB290000F8090A1BCB3BFA3C +:10CE1000CCFFD4FB2A0000F80A001C199BA96BFA6E +:10CE2000CCFFD4FB290000F809071C180BFACCFF33 +:10CE3000CCFB290000F8090A1BC9DBFACCFFD4FBA4 +:10CE40002A0000F80A001C199BA96BFACCFFD4FB3E +:10CE5000290000F809071C180BFACCFFCCFB2900AD +:10CE600000F8090A1BC87BFB2B0000002E8A001368 :10CE700002F1EC560400D40000800100D50001004E -:10CE800000B932010D02F1EC56030000000100F878 -:10CE900009071C180BFACCFFCCFB290000F8090A83 -:10CEA0001BC87BFB2B0000580BC161FACCFFD4FBE5 -:10CEB0002A0000F80A070BA96BFACAFFD4FB2C0062 -:10CEC00000180A159C180BFACCFFCCFB290000F8BF -:10CED000090A1BC6EBFB2B0000581BC0E1FACBFF75 -:10CEE000D4FB2C0000180B179CFACBFFCCFB2900BD -:10CEF00000F6090A1CC5DBFB2B0000582BFE91FF36 -:10CF000059FACBFFD4FB2C0000180B179BA96BFA26 -:10CF1000CAFFD4FB2C0000180A15AC180BFACCFF82 -:10CF2000CCFB290000F8090A1BC43BFB240000FECF -:10CF3000B0D7CEFB2A0000F80A001CF90C00BCFA9E -:10CF4000CBFFCCF6040A1CC34BFACCFFD4FB2A005F -:10CF500000F80A070CFACBFFCCFB290000F6090AFF -:10CF60001CC27BFACCFFD4FB2A0000F80A071BA9DD -:10CF70006BFB290000F809001C199C180BFACCFF68 -:10CF8000CCFB290000F8090A1BC13BE0672B080015 -:10CF9000D131001302F1EC560400D50000800100ED +:10CE800000B932010D02F1EC560300000001005818 +:10CE90000BC161FACCFFD4FB2A0000F80A070BA9EA +:10CEA0006BFACAFFD4FB2C0000180A159C180BFA69 +:10CEB000CCFFCCFB290000F8090A1BC6EBFB2B00BA +:10CEC00000581BC0E1FACBFFD4FB2C0000180B1755 +:10CED0009CFACBFFCCFB290000F6090A1CC5DBFB42 +:10CEE0002B0000582BFE91FF59FACBFFD4FB2C00EE +:10CEF00000180B179BA96BFACAFFD4FB2C00001873 +:10CF00000A15AC180BFACCFFCCFB290000F8090A73 +:10CF10001BC43BFB240000FEB0D7DAFB2A0000F85C +:10CF20000A001CF90C00BCFACBFFCCF6040A1CC3A7 +:10CF30004BFACCFFD4FB2A0000F80A070CFACBFF0F +:10CF4000CCFB290000F6090A1CC27BFACCFFD4FBFB +:10CF50002A0000F80A071BA96BFB290000F809004A +:10CF60001C199C180BFACCFFCCFB290000F8090A0D +:10CF70001BC13BE0672B04EA1700006E0CF91B0095 +:10CF80005E580BC050294C988CE0A081DB6E0C00E1 +:10CF90005871001302F1EC560400D5000080010026 :10CFA000D6000100002CF9010D02F1EC560300003F -:10CFB000000100EA1700006E0CF91B005E580BC060 -:10CFC00050294C988CE0A081996E0C798B580BC13C -:10CFD000E0300BFB5B0070FB6B004930AAFB6A0082 -:10CFE0004AFB6B004CFB6B004D302BFB6B00482960 -:10CFF0004C988CFB5C0070FACCFFB81A9B32C919B4 -:10D000000A16AA2049CFD1FEB0B3CC2E3DDA2A8031 -:10D01000011CF080008DEC8000853C8001D94480AB -:10D02000003DECD431E06615C4EA160000ED3C0189 -:10D0300059EC0C0023ED32015AE0420020C191EC82 -:10D04000FC0464E6FB0164E0A02F8CED4C0464EC6E -:10D05000FC0468E6FB01E4E0A02F84ED4C0468ECDE -:10D06000FC046CE6FB0264E0A02F7CED4C046C40F9 -:10D070009CE74C0164ECFB0464E6FC0164E0A02F37 -:10D08000DF1895ED45046440ACE74C01E4ECFB048B -:10D0900068E0A02FD51894ED44046840BCE74C022A -:10D0A00064ECFB046CE0A02FCB1897ED47046CE018 -:10D0B000420020000654001302F1EC560400D60092 +:10CFB000000100798B580BC1E0300BFB5B0070FB6C +:10CFC0006B004930AAFB6A004AFB6B004CFB6B000C +:10CFD0004D302BFB6B0048294C988CFB5C0070FAA1 +:10CFE000CCFFB81A9B32C9190A16AA2049CFD1E042 +:10CFF000A04F542E3DDA2A80011CD880008DEC8091 +:10D0000000853C8001D9B0800174E4D431E066151C +:10D01000C0EA160000ED3C0159EC0C0023ED320192 +:10D020005AE0420020C191ECFC0464E6FB0164E09C +:10D03000A02FA2ED4C0464ECFC0468E6FB01E4E0E4 +:10D04000A02F9AED4C0468ECFC046CE6FB0264E053 +:10D05000A02F92ED4C046C409CE74C0164ECFB0467 +:10D0600064E6FC0164E0A02FF51895ED45046440EA +:10D07000ACE74C01E4ECFB0468E0A02FEB1894ED66 +:10D0800044046840BCE74C0264ECFB046CE0A02F55 +:10D09000E11897ED47046CE0420020C064ED3C01CC +:10D0A0005A2FFCED6C015AED3C015AE04C0020C1B6 +:10D0B00074E0A0002F75001302F1EC560400D600B6 :10D0C00000800100D7000100009342010D02F1EC45 -:10D0D00056030000000100C064ED3C015A2FFCED36 -:10D0E0006C015AED3C015AE04C0020C174E0A031C3 -:10D0F000D918920A9C049BE0A0307EE74C02E40819 -:10D100009C049BE0A03078E74C03640E9C049BE0F9 -:10D11000A03072E74C03E4C248FC113FA00A9CE037 -:10D12000A042F630080299E0A04269E0A03128E769 -:10D130004C02E4089CE0A042EB30080299E0A042D7 -:10D140005EE0A0311DE74C03640E9CE0A042E0309D -:10D15000080299E0A04253E0A03112E74C03E4ED4D -:10D160003C01592FFCED6C0159ED3C0159E04C009C -:10D1700020C041300CED6C0159D83A8001381CD4E4 -:10D18000313002E06715C4EA170000EF30015A5849 -:10D1900020C024D83A3001C0382FF22FF10031C41A -:10D1A000B4EF3C0159F80B1518C04131FC31EBC00C -:10D1B00078201C189B201B580BC0242E0BEE0B0054 -:10D1C00026EE0C0025EAFC0164ECFB0164E0A02ED5 -:10D1D000DBE0A0429DBFDB00630F001302F1EC56C1 +:10D0D0005603000000010031EF18920A9C049BE007 +:10D0E000A03094E74C02E4089C049BE0A0308EE75B +:10D0F0004C03640E9C049BE0A03088E74C03E4C220 +:10D1000048FC113FA00A9CE0A0430C30080299E0C3 +:10D11000A0427FE0A0313EE74C02E4089CE0A0433F +:10D120000130080299E0A04274E0A03133E74C03DB +:10D13000640E9CE0A042F630080299E0A04269E04B +:10D14000A03128E74C03E4ED3C01592FFCED6C01C4 +:10D1500059ED3C0159E04C0020C041300CED6C0110 +:10D1600059D83A80013830D4313002E06715C0EA2E +:10D17000170000EF30015A5820C024D83A3001C0BF +:10D18000382FF22FF10031C4B4EF3C0159F80B15E0 +:10D1900018C04131FC31EBC078201C189B201B5873 +:10D1A0000BC0242E0BEE0B0026EE0C0025EAFC0132 +:10D1B00064ECFB0164E0A02EF1E0A042B3BFDBE031 +:10D1C000A030E81893EAFC01E4ECFB01E4E0A02EB7 +:10D1D000E5E0A042A7BFDB00AA7D001302F1EC56F8 :10D1E0000400D70000800100D80001000004A9015C -:10D1F0000D02F1EC56030000000100E0A030D2184F -:10D2000093EAFC01E4ECFB01E4E0A02ECFE0A042B5 -:10D2100091BFDBE0A030C61894EAFC0264ECFB028C -:10D2200064E0A02EC3E0A04285BFDBE0A030BA18C6 -:10D23000963015EA153F80069C0A9BE0A030FCCB97 -:10D24000F2089C0A9BE0A030F7CBA20C9C0A9BE062 -:10D25000A030F2CB523002CB4B5C525952CAD5DAD5 -:10D260003A0000EBCD40E020DD18971696411C50A7 -:10D27000AC412C50BC413C50CCFACCFFD8780A5081 -:10D280000A781A501A782A502ACF1EE06515C4EA87 -:10D29000150000EB3C0158582CC3F1F7D6C0100E16 -:10D2A0009CE0A01DCFF7D6C010FACCFFD8FEB0BCD2 -:10D2B000E90A9CFE3CFF30E0A07ECEEAFC00D0589C -:10D2C0001CC141E0A05A360A9CFE3CFF30E0A07E23 -:10D2D000C30A9BFE3BFF30FE35FF580A9A305CB70D -:10D2E00009B528201CCFD1C1F80A9CFE3CFF301A9A -:10D2F0009B3289190A16AA2049CFD100894E001302 +:10D1F0000D02F1EC56030000000100E0A030DC1845 +:10D2000094EAFC0264ECFB0264E0A02ED9E0A042A8 +:10D210009BBFDBE0A030D018963015EA153F8006A2 +:10D220009C0A9BE0A03112CBF2089C0A9BE0A03143 +:10D230000DCBA20C9C0A9BE0A03108CB523002CB54 +:10D240004B5C525952CAD5DA3A0000EBCD40E0208F +:10D25000DD18971696411C50AC412C50BC413C50F7 +:10D26000CCFACCFFD8780A500A781A501A782A508B +:10D270002ACF1EE06515C0EA150000EB3C015858A6 +:10D280002CC3F1F7D6C0100E9CE0A01DCFF7D6C07E +:10D2900010FACCFFD8FEB0BCF50A9CFE3CFF30E093 +:10D2A000A07F02EAFC00D0581CC141E0A05A740AD9 +:10D2B0009CFE3CFF30E0A07EF70A9BFE3BFF30FE69 +:10D2C00035FF580A9A305CB709B528201CCFD1C168 +:10D2D000F80A9CFE3CFF301A9B3289190A16AA20D4 +:10D2E00049CFD1C14DE0A0027BC120EB1C00DE582C +:10D2F0000CC0E1301CEB6C0158E0A00059FB00139E :10D3000002F1EC560400D80000800100D9000100B1 -:10D31000004412010D02F1EC56030000000100C1AF -:10D320004DE0A0027BC120EB1C00DE580CC0E130B8 -:10D330001CEB6C0158E0A07D57C088581CC061C42C -:10D340004FC040302CEB6C01582F3DE3CF80E08084 -:10D350000114448000528480018D348001D65880AD -:10D3600001D3C4E06C15C4EA1C0000F93C01585E0E -:10D37000FC0000580C5E0DE06B15C4EA1B0000F6C3 -:10D38000FB01603549170A18AA2049CFD1254C5E08 -:10D39000FD0000EBCD4080F80A1518C111E06715BB -:10D3A000C4EA170000169CE0A030A0EF4C0150FE2C -:10D3B00037FEB40E9CE0A07E41E3CF8080581CC1B4 -:10D3C00011E06715C4EA170000169CE0A0308EEF4C -:10D3D0004C014CFE37FEB40E9CE0A07E2FE3CF80C4 -:10D3E00080582CC0C1E06715C4EA170000EF5B014C -:10D3F00054FE37FEB40E9CE0A07E20E3CF8080D4A4 -:10D400002116971496E06515C4EA150000300A301D -:10D410000B0A9830A9B12A2019CFE1910A0A9B0082 -:10D42000F4CD001302F1EC560400D9000080010095 +:10D31000004412010D02F1EC560300000001007DF3 +:10D32000D3C088581CC061C44FC040302CEB6C0186 +:10D33000582F3DE3CF80E08001142C800052848080 +:10D34000018D988001D6A88001D4A4E06C15C0EAB4 +:10D350001C0000F93C01585EFC0000580C5E0DE01A +:10D360006B15C0EA1B0000F6FB01603549170A186F +:10D37000AA2049CFD1254C5EFD0000EBCD4080F8BE +:10D380000A1518C111E06715C0EA170000169CE0E5 +:10D39000A030B6EF4C0150FE37FEB40E9CE0A07EEC +:10D3A00075E3CF8080581CC111E06715C0EA1700F3 +:10D3B00000169CE0A030A4EF4C014CFE37FEB40EEA +:10D3C0009CE0A07E63E3CF8080582CC0C1E067154D +:10D3D000C0EA170000EF5B0154FE37FEB40E9CE07C +:10D3E000A07E54E3CF8080D42116971496E0651573 +:10D3F000C0EA150000300A300B0A9830A9B12A2083 +:10D4000019CFE1910A0A9BFE3BFB8C3008300916CC +:10D410009E30AABD28201ACFE19D080A9B2ACB0086 +:10D420002440001302F1EC560400D90000800100F2 :10D43000DA00010000D1D9010D02F1EC5603000021 -:10D44000000100FE3BFB8C30083009169E30AABD5F -:10D4500028201ACFE19D080A9B2ACB169E30AABD30 -:10D4600028201ACFE19D080A9AFE3AFB8C0A9B14E9 -:10D4700094305EB709A928201ECFD10A9BFE3BFB42 -:10D480008CEB4B01600A9BFE3BFF0830083009160D -:10D490009E30AABD28201ACFE19D080A9BFE3BFEC4 -:10D4A000B4B71997280A9BFE3BFF30B719F6E9007D -:10D4B00008F6E90010F6E90018F6E900200A9BFEDC -:10D4C0003BFF58B719F6E90008F6E90010F6E90045 -:10D4D00018F6E90020E0A0301BEB4C01500E9CE058 -:10D4E000A03016EB4C014CEB560154E0A058140A46 -:10D4F0009CFE3CFEB4E0A07DB3E06C2710EB5C002A -:10D500004AEB5C004C3007EB570044EB57004630C9 -:10D5100016EB660158EB670159EB67015A300CEBCB -:10D520004C0464EB4C0468EB4C046CE06C15C0EAF2 -:10D530001C00009907EB470470E0A074D9EB670169 -:10D540005BEB660058C3001302F1EC560400DA00EE +:10D44000000100169E30AABD28201ACFE19D080ACF +:10D450009AFE3AFB8C0A9B1494305EB709A92820E7 +:10D460001ECFD10A9BFE3BFB8CEB4B01600A9BFE5F +:10D470003BFF0830083009169E30AABD28201ACF7D +:10D48000E19D080A9BFE3BFEB4B71997280A9BFE54 +:10D490003BFF30B719F6E90008F6E90010F6E9009D +:10D4A00018F6E900200A9BFE3BFF58B719F6E90081 +:10D4B00008F6E90010F6E90018F6E90020E0A030CF +:10D4C00031EB4C01500E9CE0A0302CEB4C014CEBAE +:10D4D000560154E0A058520A9CFE3CFEB4E0A07DE8 +:10D4E000E7E06C2710EB5C004AEB5C004C3007EB8C +:10D4F000570044EB5700463016EB660158EB6701C6 +:10D5000059EB67015A300CEB4C0464EB4C0468EBAC +:10D510004C046CE06C15BCEA1C00009907EB470456 +:10D5200070E0A07517EB67015BEB66015CE06CEFE8 +:10D53000D0EA1C8001FEB0D641D82A80013ADC80B6 +:10D54000018B3400F5FE001302F1EC560400DA0002 :10D5500000800100DB000100006E62010D02F1ECB1 -:10D5600056030000000100015CE06CEF64EA1C80DF -:10D5700001FEB0D635D82A80013AC880018AD08011 -:10D5800001D6188001C4A8800087745EFD0000D415 -:10D590002120ADE06715C4EA170000EEF500AC41AC -:10D5A0000C0A3CC081FB1B004AEF1A00B6143BE09A -:10D5B0008000B218255805C064E06C9681EA1C0012 -:10D5C000981805418CEEFB00CCE0A02D2518963074 -:10D5D0000BE0A02F73C092E06C2400EA1C49740C8D -:10D5E0009BE0A02D871896416CEEFB00C4E0A02DB7 -:10D5F000131894300BE0A02F61C092E06C2400EA75 -:10D600001C4974089BE0A02D751894417CE0A01D76 -:10D61000A3EF3B015C201BC040201BC3C0C498FA91 -:10D62000CCFFC41A9B3289190A16AA2049CFD10E01 -:10D63000982AC83009089A0C9B0A9CC72CEF3C0119 -:10D640005B0A0CEF6C015BEF3C015B583CC315FAC5 -:10D65000CCFFC41A9B3289190A16AA2049CFD10ED1 -:10D66000983009EEFA00880079F2001302F1EC56C6 +:10D56000560300000001008001D6688001C50C80D0 +:10D570000087745EFD0000D42120ADE06715C0EA8D +:10D58000170000EEF500AC410C0A3CC081FB1B000B +:10D590004AEF1A00B6143BE08000B218255805C0C7 +:10D5A00064E06C9681EA1C00981805418CEEFB0043 +:10D5B000CCE0A02D3B1896300BE0A02F89C092E064 +:10D5C0006C2400EA1C49740C9BE0A02D9D18964128 +:10D5D0006CEEFB00C4E0A02D291894300BE0A02FC6 +:10D5E00077C092E06C2400EA1C4974089BE0A02DEF +:10D5F0008B1894417CE0A01DA3EF3B015C201BC075 +:10D6000040201BC3C0C498FACCFFC41A9B328919AE +:10D610000A16AA2049CFD10E982AC83009089A0CB8 +:10D620009B0A9CC72CEF3C015B0A0CEF6C015BEF83 +:10D630003C015B583CC315FACCFFC41A9B328919D4 +:10D640000A16AA2049CFD10E983009EEFA00886F49 +:10D65000DB6F5CC5ACEF3C015B2FFCEF6C015B0E3C +:10D660009C2ACC300A300B000B68001302F1EC56F8 :10D670000400DB0000800100DC000100007A4A01A8 -:10D680000D02F1EC560300000001006FDB6F5CC57A -:10D69000ACEF3C015B2FFCEF6C015B0E9C2ACC30A5 -:10D6A0000A300B189830A9B12A2019CFE1910A301D -:10D6B0002CEF6C015CC0F8FACBFFC41A9A328817C1 -:10D6C0000914A92048CFD10E981899089A0C9B0AE2 -:10D6D0009CC39CFB1C004A580CC1110E9C2ACC30E8 -:10D6E0000A300B189830A9B12A2019CFE1910A30DD -:10D6F0000CEF6C015B301CEF6C015CFACAFFC40ECE -:10D700009CFE3CFF58189E305BB509BD28201BCFFE -:10D71000D1EF4701600E9BFE3BFB8C0E9C169E30AA -:10D72000AAB909BD28201ACFD178089D080E9CFE01 -:10D730003CFB8CEF4C01602F6DD82A800135AC800A -:10D740000116ECEBCD40F820DD16941493129510E1 -:10D7500097FB16005AEF5600480E9A0A9BCD3CE004 -:10D760006C15C0EA1C0000780C580CC1116E8C08B6 -:10D770009BE0A02CD18F8C6E8CE0A0024F8F8CEFA1 -:10D78000560046FB1C0058EF5C004400AEE100135D +:10D680000D02F1EC56030000000100189830A9B11A +:10D690002A2019CFE1910A302CEF6C015CC0F8FA16 +:10D6A000CBFFC41A9A3288170914A92048CFD10E8B +:10D6B000981899089A0C9B0A9CC39CFB1C004A581A +:10D6C0000CC1110E9C2ACC300A300B189830A9B12D +:10D6D0002A2019CFE1910A300CEF6C015B301CEF6E +:10D6E0006C015CFACAFFC40E9CFE3CFF58189E30C9 +:10D6F0005BB509BD28201BCFD1EF4701600E9BFE13 +:10D700003BFB8C0E9C169E30AAB909BD28201ACF6F +:10D71000D178089D080E9CFE3CFB8CEF4C01602FDD +:10D720006DD82A800135C0800116D4EBCD40F82099 +:10D73000DD1694149312951097FB16005AEF5600BD +:10D74000480E9A0A9BCD3CE06C15BCEA1C000078A0 +:10D750000C580CC1116E8C089BE0A02CE78F8C6ECE +:10D760008CE0A0024F8F8CEF560046FB1C0058EF58 +:10D770005C0044C438E06C15C0EA1C0000FE3CFEAE +:10D78000B4780A50AA781A50BA782A008F45001344 :10D7900002F1EC560400DC0000800100DD00010015 -:10D7A0000010F2010D02F1EC56030000000100C46C -:10D7B00038E06C15C4EA1C0000FE3CFEB4780A5048 -:10D7C000AA781A50BA782A50CAFACCFFB41A9B32F7 -:10D7D00089190A16AA2049CFD10A9CC54D6E8BE043 -:10D7E000A02CAC8F8C6E8CE0A0022A8F8C301B0A90 -:10D7F0009CE0A02E7BC1135836C071306CEF5C00EA -:10D8000046EF5C0044C1885846C161308CEF5C0033 -:10D8100046EF5C0044C1085836C071307CEF5C00B4 -:10D8200046EF5C0044C0885846C061309CEF5C0005 -:10D8300046EF5C0044419C8FCC6EDC069BE0A02C44 -:10D840007D8FDC6EDCCE5D8FDC41BCE0A03FCCE0A8 -:10D85000681EB8EA18EB85E069B851EA193FAEE0F6 -:10D86000A03F39E0A02DF88FEC6EEC301BEA1B4195 -:10D87000C8E0A02E3BC043FC1C41C88FEC415CEFCC -:10D880004C0040300CEF1B0046580BC031EF4C00F1 -:10D89000408FFC417CEF4C0050FB1C00622B47AEDC -:10D8A0000C2F3DE3CF80F8D401E0A07D49E04C008F -:10D8B00098AA001302F1EC560400DD00008001007C +:10D7A0000010F2010D02F1EC5603000000010050E0 +:10D7B000CAFACCFFB41A9B3289190A16AA2049CF9B +:10D7C000D10A9CC54D6E8BE0A02CC28F8C6E8CE074 +:10D7D000A0022A8F8C301B0A9CE0A02E91C1135806 +:10D7E00036C071306CEF5C0046EF5C0044C1885875 +:10D7F00046C161308CEF5C0046EF5C0044C10858C4 +:10D8000036C071307CEF5C0046EF5C0044C0885845 +:10D8100046C061309CEF5C0046EF5C0044419C8F49 +:10D82000CC6EDC069BE0A02C938FDC6EDCCE5D8F93 +:10D83000DC41BCE0A03FE2E0681EB8EA18EB85E0FE +:10D8400069B851EA193FAEE0A03F4FE0A02E0E8F1D +:10D85000EC6EEC301BEA1B41C8E0A02E51C043FC2B +:10D860001C41C88FEC415CEF4C0040300CEF1B00BA +:10D8700046580BC031EF4C00408FFC417CEF4C0010 +:10D8800050FB1C00622B47AE0C2F3DE3CF80F8D439 +:10D8900001E0A07D8BE04C0BB95F2CD802D7038050 +:10D8A00001D8F8EBCD40C01896169C1497EF1B00DA +:10D8B000E8DF001302F1EC560400DD0000800100F7 :10D8C000DE000100008539010D02F1EC5603000075 -:10D8D0000001000BB95F2CD802D7038001D88CEB74 -:10D8E000CD40C01896169C1497EF1B0048583BC1BA -:10D8F00051301BE0A02E0CC0936E4C0C0C8F4C6E64 -:10D900004CCC9D8F4CE3CF80C06E5C0C0C8F5C6E5A -:10D910005CCC1D8F5CE3CF80C0EF1B0048584BC12F -:10D9200031301BE0A02DF4C0936E6C0C0C8F6C6E2C -:10D930006CCB1D8F6CE3CF80C06E7C0C0C8F7C6E2B -:10D940007CCA9D8F7CE3CF80C00000EBCD40F818EF -:10D9500096169514976E0C0C0C8F0C6E0CC9BD8F1F -:10D960000C0A9CE0A03F52BFDB30183009E0A03F1A -:10D970006BC4D3E06415C4EA140000E8FC01045849 -:10D980005CC392E06315C0EA130000660B580BC33A -:10D9900021584CC1A16E3B180B8F3B6E3CC7BD8F0D -:10D9A0003C0E9A0A9BE8FC0104C9BF6E3C0C0C8F2C -:10D9B0003C6E3CC70D8F3C0E9A0A9B0C9CC91FC540 -:10D9C0008C301C870CC1082BA78E8C584CC070E87B -:10D9D000FC00FC004267001302F1EC560400DE007C +:10D8D0000001000048583BC151301BE0A02E22C07F +:10D8E000936E4C0C0C8F4C6E4CCC9D8F4CE3CF80C8 +:10D8F000C06E5C0C0C8F5C6E5CCC1D8F5CE3CF80CB +:10D90000C0EF1B0048584BC131301BE0A02E0AC0AD +:10D91000936E6C0C0C8F6C6E6CCB1D8F6CE3CF8098 +:10D92000C06E7C0C0C8F7C6E7CCA9D8F7CE3CF809C +:10D93000C00000EBCD40F81896169514976E0C0CAD +:10D940000C8F0C6E0CC9BD8F0C0A9CE0A03F68BF09 +:10D95000DB30183009E0A03F81C4D3E06415C0EA91 +:10D96000140000E8FC0104585CC392E06315BCEAB3 +:10D97000130000660B580BC321584CC1A16E3B1815 +:10D980000B8F3B6E3CC7BD8F3C0E9A0A9BE8FC0197 +:10D9900004C9BF6E3C0C0C8F3C6E3CC70D8F3C0E17 +:10D9A0009A0A9B0C9CC91FC58C301C870CC1082B84 +:10D9B000A78E8C584CC070E8FC00FC0C0CE94C00A5 +:10D9C000FCC068E8FC01000C0CE94C0100E8FC011B +:10D9D000040C0C0072A3001302F1EC560400DE00EC :10D9E00000800100DF000100003A82010D02F1EC2D -:10D9F000560300000001000C0CE94C00FCC068E874 -:10DA0000FC01000C0CE94C0100E8FC01040C0CE9E1 -:10DA10004C0104E3CF80F86E3C0C0C8F3C6E3CC490 -:10DA2000CD8F3C0E9A0A9B0C9CC6DFE3CF80F8EFAB -:10DA30001C0046203CC040201CC090C0F86E1C0C4E -:10DA40000C8F1C6E1CC39D8F1CC0E86E2C0C0C8FA1 -:10DA50002C6E2CC32D8F2CC0786E1C0C0C8F1C6E62 -:10DA60001CC2BD8F1CE06415C4EA140000E8FC0170 -:10DA700004585CC042580CC020C19CC0CC300CE0A3 -:10DA80006B15C0EA1B0000970CE3CF80F8D703802A -:10DA9000015D70E06C15C4EA1C0000300BF94B000E -:10DAA000FCF94B0100F94B01045EFDE06C15C4EA82 -:10DAB0001C0000F8FB00FC781A160A991AF8FB0102 -:10DAC000002F8C780A160A990A5EFDD4311893301B -:10DAD0000230053004FB1C0032203CC040201CC337 -:10DAE00070C6A8411CE0A03EA314961697E0689962 -:10DAF0009AEA189999E06900E4DC001302F1EC5607 +:10D9F00056030000000100E94C0104E3CF80F86EFB +:10DA00003C0C0C8F3C6E3CC4CD8F3C0E9A0A9B0C98 +:10DA10009CC6DFE3CF80F8EF1C0046203CC04020CE +:10DA20001CC090C0F86E1C0C0C8F1C6E1CC39D8F0C +:10DA30001CC0E86E2C0C0C8F2C6E2CC32D8F2CC0B0 +:10DA4000786E1C0C0C8F1C6E1CC2BD8F1CE0641504 +:10DA5000C0EA140000E8FC0104585CC042580CC045 +:10DA600020C19CC0CC300CE06B15BCEA1B000097B9 +:10DA70000CE3CF80F8D70380015D84E06C15C0EA29 +:10DA80001C0000300BF94B00FCF94B0100F94B0175 +:10DA9000045EFDE06C15C0EA1C0000F8FB00FC7899 +:10DAA0001A160A991AF8FB01002F8C780A160A999F +:10DAB0000A5EFDD4311893300230053004FB1C009F +:10DAC00032203CC040201CC370C6A8411CE0A03ED0 +:10DAD000B914961697E068999AEA189999E06999A5 +:10DAE00099EA193FB9E0A03E243008FC19400CE047 +:10DAF000A03D0AE0A02CDE000CF3001302F1EC566E :10DB00000400DF0000800100E000010000A5E90141 -:10DB10000D02F1EC560300000001009999EA193F4B -:10DB2000B9E0A03E0E3008FC19400CE0A03CF4E047 -:10DB3000A02CC81895300B069CE0A02D19C4E30654 -:10DB40009CE0A03E8714901691E06ACCCDEA1ACCF6 -:10DB5000CCE06BCCCCEA1B3FFC0C980E99E0A03DCE -:10DB6000F000980299E0A03DECE0A02CAB1894C323 -:10DB700058411CE0A03E6E14961697E068999AEA08 -:10DB8000189999E0699999EA193FC9E0A03DD930FF -:10DB900008FC19400CE0A03CBFE0A02C9318953085 -:10DBA0000B069CE0A02CE4C193069CE0A03E52141E -:10DBB000901691E06ACCCDEA1ACCCCE06BCCCCEAE2 -:10DBC0001B3FEC0C980E99E0A03DBB00980299E039 -:10DBD000A03DB7E0A02C761894411C300BE0A07A51 -:10DBE000DBC19040B7300B0E9CE0A07AD5C1300E5F -:10DBF0009CE0A03E2F3008FC19404EE0A03DA1144F -:10DC0000981699300AFC1B3FF0E0A03DD7E0A02C0D -:10DC1000591892049CE0A03E1D149200704300131A +:10DB10000D02F1EC560300000001001895300B06D1 +:10DB20009CE0A02D2FC4E3069CE0A03E9D1490161F +:10DB300091E06ACCCDEA1ACCCCE06BCCCCEA1B3FAE +:10DB4000FC0C980E99E0A03E0600980299E0A03ED9 +:10DB500002E0A02CC11894C358411CE0A03E8414DC +:10DB6000961697E068999AEA189999E0699999EA5E +:10DB7000193FC9E0A03DEF3008FC19400CE0A03C83 +:10DB8000D5E0A02CA91895300B069CE0A02CFAC17A +:10DB900093069CE0A03E6814901691E06ACCCDEA12 +:10DBA0001ACCCCE06BCCCCEA1B3FEC0C980E99E085 +:10DBB000A03DD100980299E0A03DCDE0A02C8C18AA +:10DBC00094411C300BE0A07B0FC19040B7300B0E8E +:10DBD0009CE0A07B09C1300E9CE0A03E453008FCD3 +:10DBE00019404EE0A03DB714981699300AFC1B3F2F +:10DBF000F0E0A03DEDE0A02C6F1892049CE0A03E68 +:10DC00003314921693413CE0A03E2E149616970AC8 +:10DC10009C089BE0A02AD2E0A03E2600EB02001365 :10DC200002F1EC560400E00000800100E100010078 -:10DC3000001958010D02F1EC560300000001001616 -:10DC400093413CE0A03E18149616970A9C089BE06E -:10DC5000A02ABCE0A03E10E068147BEA1847AEE0C2 -:10DC6000697AE1EA193F74E0A03D7D0C980E99E0D5 -:10DC7000A03D7904980699E0A03D75E0A02C34D829 -:10DC800032D703800159F880013A508001D678805C -:10DC9000015C9C80015D3480015C22800139A4EB31 -:10DCA000CD40801897E06B2401EA1B4974E0A02C5A -:10DCB00065C093E06C2400EA1CC9740E9BE0A02AA6 -:10DCC0008518970E9CE3CD80800000EBCD40801836 -:10DCD00097E06B2401EA1B4974E0A02C4FC093E04D -:10DCE0006C2400EA1CC9740E9BE0A02A6F18970EE2 -:10DCF0009CE3CD8080D70380013A3880013688E0EC -:10DD00006B9681EA1B0098163C5E3CE06B6980EAEA -:10DD10001BFF67160C5EFC3FFB201C5C5C598CF9FA -:10DD2000BC02031E0C19EC180F1A1A1A1C1A1A1A24 -:10DD30001A1A1A1A1A1A1A1A1A1A1C1C1C1C1C0053 -:10DD400008D3001302F1EC560400E100008001004A +:10DC3000001958010D02F1EC56030000000100E04C +:10DC400068147BEA1847AEE0697AE1EA193F74E0AC +:10DC5000A03D930C980E99E0A03D8F04980699E0A2 +:10DC6000A03D8BE0A02C4AD832D70380015A0C800B +:10DC7000013A648001D6C880015CB080015D4880B3 +:10DC8000015C36800139B8EBCD40801897E06B24F9 +:10DC900001EA1B4974E0A02C7BC093E06C2400EAED +:10DCA0001CC9740E9BE0A02A9B18970E9CE3CD80A4 +:10DCB000800000EBCD40801897E06B2401EA1B49FF +:10DCC00074E0A02C65C093E06C2400EA1CC9740EBB +:10DCD0009BE0A02A8518970E9CE3CD8080D7038017 +:10DCE000013A4C8001369CE06B9681EA1B00981645 +:10DCF0003C5E3CE06B6980EA1BFF67160C5EFC3FF4 +:10DD0000FB201C5C5C598CF9BC02031E0C19EC183E +:10DD10000F1A1A1A1C1A1A1A1A1A1A1A1A1A1A1A6C +:10DD20001A1A1C1C1C1C1C1A1A301B169C5C6C5EDC +:10DD3000FC0000300B201C5C5C58DCF9BC020100CC +:10DD400039B1001302F1EC560400E100008001003B :10DD5000E2000100008C93010D02F1EC560300007B -:10DD60000001001A1A301B169C5C6C5EFC0000302F -:10DD70000B201C5C5C58DCF9BC02011E0C19EC1871 -:10DD80000F10121012121212121010121010003076 -:10DD90001B169C5C6C5EFC3FFB599CF9BC02121E7E -:10DDA0000C19EC180F1C1C201C1C201C1C202020F3 -:10DDB0001C242028281C282A2A2A2A2A1C20003031 -:10DDC0002BC068301BC048304BC028303B169C5CD1 -:10DDD0006C5EFCEBCD40C0E0672C00EA170000E071 -:10DDE000A07B4A8F0CE0A056B9E0A07B4B8F1C3083 -:10DDF00006C0D85986C071E06ABCECEA1A8001F707 -:10DE00004A031C787C5D1C2FF65C665996E0840002 -:10DE1000DB6E1BEC0C1505160C300AB88AB89A3F5D -:10DE2000F9B8A9B8BAB83AB8CA5836C081E06AC1D8 -:10DE300018EA1A8000F74A007CCE5B5816C071E0E1 -:10DE40006AD1A0EA1A800197FACDDB5826C081E09A -:10DE50006ACCE8EA1A8001F74A005CCD4B5806C04C -:10DE6000B0592600A973001302F1EC560400E20039 +:10DD60000001001E0C19EC180F10121012121212E2 +:10DD700012101012101000301B169C5C6C5EFC3FE1 +:10DD8000FB599CF9BC02121E0C19EC180F1C1C202C +:10DD90001C1C201C1C2020201C242028281C282A75 +:10DDA0002A2A2A2A1C2000302BC068301BC0483089 +:10DDB0004BC028303B169C5C6C5EFCEBCD40C0E059 +:10DDC000672BFCEA170000E0A07B8C8F0CE0A056CC +:10DDD000F7E0A07B8D8F1C3006C0D85986C071E05B +:10DDE0006ABD50EA1A8001F74A031C787C5D1C2F3B +:10DDF000F65C665996E08400DB6E1BEC0C1505168C +:10DE00000C300AB88AB89A3FF9B8A9B8BAB83AB883 +:10DE1000CA5836C081E06AC118EA1A8000F74A0081 +:10DE20007CCE5B5816C071E06AD204EA1A80019772 +:10DE3000FACDDB5826C081E06ACD4CEA1A8001F7A2 +:10DE40004A005CCD4B5806C0B05926C0905936C028 +:10DE5000705946C0505956C0305966C201E06BD95E +:10DE60009CEA1B00D550001302F1EC560400E200BE :10DE700000800100E3000100003328010D02F1ECF5 -:10DE800056030000000100C0905936C0705946C0CA -:10DE9000505956C0305966C201E06BD930EA1B8038 -:10DEA00001992BE06BD93CEA1B8001993BE06BD9CF -:10DEB00058EA1B8001994BE06BD954EA1B80019909 -:10DEC0005BE06BD94CEA1B8001996BE06BD93CEAB3 -:10DED0001B8001997BCA9B5846C081E06ACE68EAE4 -:10DEE0001A8001F74A009CCA0B5856C081E06A7339 -:10DEF000ECEA1A8001F74A00BCC97B5866C081E091 -:10DF00006ACFB8EA1A8001F74A00DCC8EB5876C03D -:10DF100081E06AB16CEA1A8001F74A00FCC85B58DC -:10DF200086C081E06A8E80EA1A8001F74A011CC728 -:10DF3000CB5896C081E06A6348EA1A8001F74A012B -:10DF40003CC73B58A6C081E06ACF64EA1A8001F75B -:10DF50004A015CC6AB58B6C081E06AD060EA1A805C -:10DF600001F74A017CC61B58C6C081E06ACD4CEA65 -:10DF70001A8001F74A019CC58B58D6C081E06AAD72 -:10DF80007CEA1A8001F74A00FEDE001302F1EC562B +:10DE8000560300000001008001992BE06BD9A8EA3D +:10DE90001B8001993BE06BD9C4EA1B8001994BE0E0 +:10DEA0006BD9C0EA1B8001995BE06BD9B8EA1B8093 +:10DEB00001996BE06BD9A8EA1B8001997BCA9B583A +:10DEC00046C081E06ACF20EA1A8001F74A009CCA66 +:10DED0000B5856C081E06A7778EA1A8001F74A0049 +:10DEE000BCC97B5866C081E06AD01CEA1A8001F781 +:10DEF0004A00DCC8EB5876C081E06AB1D0EA1A80EB +:10DF000001F74A00FCC85B5886C081E06A8EE4EAEB +:10DF10001A8001F74A011CC7CB5896C081E06A639A +:10DF20005CEA1A8001F74A013CC73B58A6C081E071 +:10DF30006ACFC8EA1A8001F74A015CC6AB58B6C07E +:10DF400081E06AD0C4EA1A8001F74A017CC61B58F6 +:10DF5000C6C081E06ACDB0EA1A8001F74A019CC5CB +:10DF60008B58D6C081E06AADE0EA1A8001F74A0119 +:10DF7000BCC4FB58E6C081E06A3EB4EA1A8000F7F0 +:10DF80004A01DCC46B58F6002D6D001302F1EC560B :10DF90000400E30000800100E4000100002700010C -:10DFA0000D02F1EC5603000000010001BCC4FB5857 -:10DFB000E6C081E06A78BCEA1A8001F74A01DCC455 -:10DFC0006B58F6C081E06AAA98EA1A8001F74A0104 -:10DFD000FCC3DB5906C081E06AAED4EA1A8001F7BF -:10DFE0004A021CC34B5916C081E06A8244EA1A8077 -:10DFF00001F74A023CC2BB5976FE91FF21E06AB7A5 -:10E000009CEA1A8001F74A02FCC21BE3CF90C08051 -:10E0100001D91080018FF48001D91CEBCD40FC2088 -:10E020009D189716943016EE051505E0632C00EA4E -:10E0300013000058B4C1F166120A02059C581CC1B5 -:10E04000A5F9D7B008C9FE581CC1550592F9D7B03B -:10E0500008C99EF8021900C0E50E9CC0CD18963084 -:10E060000C661B0A0BB69CE06CEDC0EA1C8001FE3E -:10E07000B0D158661C0A0C198B581BC184199B58C7 -:10E080001BC154300BB88BB89BFACCFFC01A9B3223 -:10E0900049190A16AA2049CFD10E9CC3CC582CC0CE -:10E0A00031302CC338583CC02130360040C50013F5 +:10DFA0000D02F1EC56030000000100C081E06AAAF6 +:10DFB000FCEA1A8001F74A01FCC3DB5906C081E084 +:10DFC0006AAF38EA1A8001F74A021CC34B5916C0DF +:10DFD00081E06A82A8EA1A8001F74A023CC2BB5972 +:10DFE00076FE91FF21E06AB800EA1A8001F74A0242 +:10DFF000FCC21BE3CF90C08001D97C800190588087 +:10E0000001D988EBCD40FC209D189716943016EE70 +:10E01000051505E0632BFCEA13000058B4C1F16656 +:10E02000120A02059C581CC1A5F9D7B008C9FE58B0 +:10E030001CC1550592F9D7B008C99EF8021900C055 +:10E04000E50E9CC0CD1896300C661B0A0BB69CE002 +:10E050006CEE2CEA1C8001FEB0D164661C0A0C191F +:10E060008B581BC184199B581BC154300BB88BB8FB +:10E070009BFACCFFC01A9B3249190A16AA2049CF35 +:10E08000D10E9CC3CC582CC031302CC338583CC066 +:10E0900021303658A4C071661C0A0C198B2FFBB8AE +:10E0A0008BC12858B4C1015837C08100E8C600139D :10E0B00002F1EC560400E40000800100E5000100DC -:10E0C000004DB8010D02F1EC5603000000010058AC -:10E0D000A4C071661C0A0C198B2FFBB88BC1285881 -:10E0E000B4C1015837C081661C29FC198C580CC07A -:10E0F00031FEB0EED1661C0A0C2FFC198B2FFBB839 -:10E100008B661C1805660C798A2A4C988BFAEB00F2 -:10E110000C0B9A0B8BFAEB00045007E06CEDC0EA95 -:10E120001C80012F8CFEB0D10F0C9C5C6C2F7DE30A -:10E13000CD80FC8000C2C4D421209D18973016E009 -:10E14000652C00EA1500006A1CEE0415051804F998 -:10E15000D7C008C58EA8AC300CA8BCA83CFACCFF30 -:10E16000C81A9B3249190A16AA2049CFD1682C5DDA -:10E170001C582CC031302CC0F8583CC0313036C04F -:10E18000986A0B778A301CF807094C184AF74A003E -:10E19000600C9C5C6C2F7DD8220000EBCD40FE20F3 -:10E1A0005D189716943016EE051505E0632C00EA0D -:10E1B00013000066120A02059C582CC1A5F9D7B0BD -:10E1C00008FEB0FDF3581CC1450591F9D7B0080011 -:10E1D0008C71001302F1EC560400E5000080010090 +:10E0C000004DB8010D02F1EC56030000000100669E +:10E0D0001C29FC198C580CC031FEB0EEDD661C0A00 +:10E0E0000C2FFC198B2FFBB88B661C1805660C795E +:10E0F0008A2A4C988BFAEB000C0B9A0B8BFAEB00EC +:10E10000045007E06CEE2CEA1C80012F8CFEB0D18D +:10E110001B0C9C5C6C2F7DE3CD80FC8000C2C4D4C2 +:10E1200021209D18973016E0652BFCEA1500006A47 +:10E130001CEE0415051804F9D7C008C58EA8AC302C +:10E140000CA8BCA83CFACCFFC81A9B3249190A1685 +:10E15000AA2049CFD1682C5D1C582CC031302CC06E +:10E16000F8583CC0313036C0986A0B778A301CF8BA +:10E1700007094C184AF74A00600C9C5C6C2F7DD84C +:10E18000220000EBCD40FE205D189716943016EE6D +:10E19000051505E0632BFCEA13000066120A020570 +:10E1A0009C582CC1A5F9D7B008FEB0FDF3581CC18E +:10E1B000450591F9D7B008FEB0FDECF8011900C093 +:10E1C000C5F9D7B008FEB0FDE5A49CE06CEE4800B0 +:10E1D0001584001302F1EC560400E50000800100F4 :10E1E000E600010000D873010D02F1EC56030000B7 -:10E1F000000100FEB0FDECF8011900C0C5F9D7B070 -:10E2000008FEB0FDE5A49CE06CEDDCEA1C8001FE9C -:10E21000B0D0AC661BF605000C198A581AC0441918 -:10E220009A581AC30558A4C0C1198B581BC0651948 -:10E230008BFE3BFF01B88BC198300BB88BC168587F -:10E24000B4C141199A581AC0752FFC198AFE3AFFB9 -:10E2500001B88AC038300AB89A5837C07129FB17FC -:10E260008C580CC031FEB0EE3B661C0A0C198B5862 -:10E270000BC091199C580CC0610E9CC20C583CC03C -:10E28000213036661C1805660C798A2A4C988BFA60 -:10E29000EB000C0B9A0B8BFAEB00045007E06CEDD3 -:10E2A000DCEA1C80012F8CFEB0D0600C9C5C6C2FD3 -:10E2B000BDE3CD80FED7038000C2E8D4211897309B -:10E2C00016EE051505E0642C00EA140000681C0A2F -:10E2D0000C783C5D1C583CC0213036F9D7B008C8DA -:10E2E000CD583CC0213036681C18053FFCAAAC3024 -:10E2F0000CAABC00143F001302F1EC560400E60027 +:10E1F000000100EA1C8001FEB0D0B8661BF60500E5 +:10E200000C198A581AC044199A581AC30558A4C040 +:10E21000C1198B581BC065198BFE3BFF01B88BC120 +:10E2200098300BB88BC16858B4C141199A581AC0BC +:10E23000752FFC198AFE3AFF01B88AC038300AB837 +:10E240009A5837C07129FB178C580CC031FEB0EEBC +:10E2500047661C0A0C198B580BC091199C580CC0AE +:10E26000610E9CC20C583CC0213036661C180566F5 +:10E270000C798A2A4C988BFAEB000C0B9A0B8BFAD0 +:10E28000EB00045007E06CEE48EA1C80012F8CFE86 +:10E29000B0D06C0C9C5C6C2FBDE3CD80FED70380AE +:10E2A00000C2E8D42118973016EE051505E0642B5E +:10E2B000FCEA140000681C0A0C783C5D1C583CC049 +:10E2C000213036F9D7B008C8CD583CC02130366867 +:10E2D0001C18053FFCAAAC300CAABCAA3C680C79FF +:10E2E0008B301AF407094A148BF94B00600C9C5CC4 +:10E2F0006CD82200CDD4001302F1EC560400E600E5 :10E3000000800100E70001000067C8010D02F1EC88 -:10E3100056030000000100AA3C680C798B301AF407 -:10E3200007094A148BF94B00600C9C5C6CD822EBFB -:10E33000CD40C0202D1897E0662C00EA1600006C36 -:10E340001BEE0C1505160C300BB88BB89BF9D7B02B -:10E3500010CC7F6C0C7986BB17E06CF08CEA1C80CB -:10E3600001FEB0D0152FEDE3CF90C0EBCD40F822E9 -:10E37000FD18961697301CFB6C005DE0652C00EADA -:10E38000150000FACCFFA06A0B35C9170A18AA209D -:10E3900049CFD1FACCFFA01A9B35C9190A16AA2079 -:10E3A00049CFD10A9C2F8CE0A002583004C0E85815 -:10E3B0003CC061FB64005C303CFB6C005D300C6A6F -:10E3C0001B1603A6BC2FF45C645994C2F4301CF8ED -:10E3D00004094B6A0C798C186BCF60E80315056A49 -:10E3E0001B060BF72C0002580CCEE52FEBF72C0088 -:10E3F00000E0A04E496A1B060B17BA2FFAB6BA17EF -:10E40000BAAF3A183ACE05764C5D1C582CCD11FBAC -:10E4100064005C302CFB6C00FA6C001302F1EC56CB +:10E3100056030000000100EBCD40C0202D1897E00F +:10E32000662BFCEA1600006C1BEE0C1505160C3073 +:10E330000BB88BB89BF9D7B010CC7F6C0C7986BB2F +:10E3400017E06CF0F8EA1C8001FEB0D0212FEDE35D +:10E35000CF90C0EBCD40F822FD18961697301CFBED +:10E360006C005DE0652BFCEA150000FACCFFA06AAA +:10E370000B35C9170A18AA2049CFD1FACCFFA01A29 +:10E380009B35C9190A16AA2049CFD10A9C2F8CE0C7 +:10E39000A002583004C0E8583CC061FB64005C3007 +:10E3A0003CFB6C005D300C6A1B1603A6BC2FF45CB2 +:10E3B000645994C2F4301CF804094B6A0C798C1827 +:10E3C0006BCF60E80315056A1B060BF72C0002589B +:10E3D0000CCEE52FEBF72C0000E0A04E876A1B0661 +:10E3E0000B17BA2FFAB6BA17BAAF3A183ACE057663 +:10E3F0004C5D1C582CCD11FB64005C302CFB6C0078 +:10E400005DFACCFFA4198BAC8B199BAC9B0C9CC008 +:10E4100088FACCFFA4198B004F19001302F1EC56B7 :10E420000400E70000800100E800010000F0230183 -:10E430000D02F1EC56030000000100005DFACCFF74 -:10E44000A4198BAC8B199BAC9B0C9CC088FACCFF9D -:10E45000A4198BAC8B199BAC9B0C9C2D1DE3CD8020 -:10E46000F8D7038001846C300B586CC022301B1627 -:10E470009C5C6C5EFC0000EBCD40FC204DFB36004C -:10E48000305C66FB23002DE6071505E0652C00EAED -:10E490001500006A140E04E92C00020C3CC09150D7 -:10E4A00003E06CE9ACEA1C8001FEB0CF83C638F90A -:10E4B000D6B008CDAFC0F12FE4E9270000FAE7009D -:10E4C000045003E06CE9ACEA1C80012F4CFEB0CF95 -:10E4D00071C5183004C2386A1C0E0C98BCF8040AC6 -:10E4E0004CA19CC1B2301AF7D6B008F9D4B008E0FC -:10E4F000A04D025C6CC1216A1C0E0C2FECF92B00A4 -:10E50000000C9AFAEB00080892BB13E06CE9ACEA45 -:10E510001C80012E0CFEB0CF4D2FF45C6458B4CD9E -:10E52000C53004C22898BBF6040A4BA19BC1C23077 -:10E530001A2FECF92B0000F9D4B008006AC30013BD +:10E430000D02F1EC56030000000100AC8B199BACFF +:10E440009B0C9C2D1DE3CD80F8D703800184D03038 +:10E450000B586CC022301B169C5C6C5EFC0000EB01 +:10E46000CD40FC204DFB3600305C66FB23002DE6E2 +:10E47000071505E0652BFCEA1500006A140E04E997 +:10E480002C00020C3CC0915003E06CEA18EA1C809E +:10E4900001FEB0CF8FC638F9D6B008CDAFC0F12F8E +:10E4A000E4E9270000FAE700045003E06CEA18EA08 +:10E4B0001C80012F4CFEB0CF7DC5183004C2386AD5 +:10E4C0001C0E0C98BCF8040A4CA19CC1B2301AF77F +:10E4D000D6B008F9D4B008E0A04D405C6CC1216A08 +:10E4E0001C0E0C2FECF92B00000C9AFAEB0008081C +:10E4F00092BB13E06CEA18EA1C80012E0CFEB0CF30 +:10E50000592FF45C6458B4CDC53004C22898BBF6CA +:10E51000040A4BA19BC1C2301A2FECF92B0000F961 +:10E52000D4B008E0A04D745C6CC1216A1C0E0C2FA5 +:10E53000ECF92B00000C9AFAEB000800B6A60013C9 :10E5400002F1EC560400E80000800100E90001003F -:10E5500000B098010D02F1EC56030000000100E04C -:10E56000A04D365C6CC1216A1C0E0C2FECF92B00FF -:10E57000000C9AFAEB00080892BB13E06CE9ACEAD5 -:10E580001C80012C8CFEB0CF272FF46A1C0E0C5C73 -:10E590006458B4CDB5B8A62FCDE3CF80FCD70380A7 -:10E5A0000182B8EBCD40803007E06C2C00EA1C0003 -:10E5B00000780C798CEDBC000CC072E06C00C8E0F7 -:10E5C000A07046C02030170E9C5C6CE3CD8080802C -:10E5D00001C9ECEBCD40F8189730063005C1E8EAE8 -:10E5E000041505E0632C00EA130000661B080B30DD -:10E5F0000CB6CC301CF805094A660C798C186AC038 -:10E60000B0F9D7B008765B5D1BC060301C661B1686 -:10E6100004A8CC30162FF55C655995CE250C9C5C72 -:10E620006CE3CD80F80000300BC0C8300AE06C2CE1 -:10E6300000EA1C00007819F60C15051809B2CA2F5B -:10E64000FB5C6B599BCF355EFD0000301BF60C095F -:10E650004BE06C2C00EA1C0000780C798C186B00E5 -:10E660007BD4001302F1EC560400E90000800100A5 +:10E5500000B098010D02F1EC560300000001000824 +:10E5600092BB13E06CEA18EA1C80012C8CFEB0CF41 +:10E57000332FF46A1C0E0C5C6458B4CDB5B8A62FCA +:10E58000CDE3CF80FCD7038001831CEBCD408030EE +:10E5900007E06C2BFCEA1C0000780C798CEDBC00C9 +:10E5A0000CC072E06C00C8E0A07084C02030170E70 +:10E5B0009C5C6CE3CD80808001CA50EBCD40F818A4 +:10E5C0009730063005C1E8EA041505E0632BFCEA44 +:10E5D000130000661B080B300CB6CC301CF8050984 +:10E5E0004A660C798C186AC0B0F9D7B008765B5DC2 +:10E5F0001BC060301C661B1604A8CC30162FF55CBF +:10E60000655995CE250C9C5C6CE3CD80F8000030FC +:10E610000BC0C8300AE06C2BFCEA1C00007819F62D +:10E620000C15051809B2CA2FFB5C6B599BCF355EE0 +:10E63000FD0000301BF60C094BE06C2BFCEA1C00C3 +:10E6400000780C798C186B5F1C5EFCEBCD40FC20D5 +:10E650002D18933015E6071505E0662BFCEA160029 +:10E6600002A0001302F1EC560400E9000080010052 :10E67000EA000100002553010D02F1EC56030000F1 -:10E680000001005F1C5EFCEBCD40FC202D18933098 -:10E6900015E6071505E0662C00EA1600006C1C0E56 -:10E6A0000C98BC581CC2653004C04830352FF45C4F -:10E6B0006458B4C1F46C190E0992BB301CF80409FB -:10E6C0004C186BF604084C5C6C581CCF11301A2F98 -:10E6D000E9F32B0000F9D4B008E0A04C8BCE700811 -:10E6E00092BB13E06CF0A4EA1C8001FEB0CE86CD94 -:10E6F000FB0A9C5C6C2FEDE3CD80FC8001836C8079 -:10E70000008774EBCD4080216D1897300CFB5C00C6 -:10E7100054FB6C002D30ABFB6B002EFB6C0030FB10 -:10E720006C0031EDB70002C272305CCA2FC11030EC -:10E730004CFB6C002C305CFB6C002DFACCFFD41A27 -:10E740009B32C9190A16AA2049CFD1FEB0A992302E -:10E750002CC8FFC110304CFB6C002C302CFB6C0023 -:10E760002DFACCFFD41A9B32C9190A16AA2049CF18 -:10E77000D1FEB0A97FEDB70004C142308CC79FC164 -:10E7800010303C003DEC001302F1EC560400EA00AE +:10E6800000010000006C1C0E0C98BC581CC26530C8 +:10E6900004C04830352FF45C6458B4C1F46C190ED2 +:10E6A0000992BB301CF804094C186BF604084C5C4A +:10E6B0006C581CCF11301A2FE9F32B0000F9D4B09D +:10E6C00008E0A04CC9CE700892BB13E06CF110EAD0 +:10E6D0001C8001FEB0CE92CDFB0A9C5C6C2FEDE35A +:10E6E000CD80FC800183D080008774EBCD408021F9 +:10E6F0006D1897300CFB5C0054FB6C002D30ABFBAD +:10E700006B002EFB6C0030FB6C0031EDB70002C2D9 +:10E7100072305CCA2FC110304CFB6C002C305CFB9B +:10E720006C002DFACCFFD41A9B32C9190A16AA2004 +:10E7300049CFD1E0A0451A302CC8FFC110304CFBA6 +:10E740006C002C302CFB6C002DFACCFFD41A9B32C1 +:10E75000C9190A16AA2049CFD1E0A04507EDB70094 +:10E7600004C142308CC79FC110303CFB6C002C3080 +:10E770008CFB6C002DFACCFFD41A9B32C9190A16F7 +:10E78000AA2049001B9C001302F1EC560400EA0089 :10E7900000800100EB000100009AE8010D02F1EC9D -:10E7A00056030000000100FB6C002C308CFB6C0059 -:10E7B0002DFACCFFD41A9B32C9190A16AA2049CFC8 -:10E7C000D1FEB0A9692EADE3CF808080003DECD4AE -:10E7D00021E02D03AC18971696300CFB6C006830C6 -:10E7E00005C1C8E06B2C00EA1B0000301CF80509CD -:10E7F0004A760C798C186AC0F0761CEA0A1505185E -:10E800000AF52C0004581CC071FACBFF98FACCFF13 -:10E8100094746A5D1A2FF55C655995CE450D8BFB96 -:10E820003C0068180B58BBC2450D8CFB35006818BE -:10E830000520A55C65E9D5B008C158E80C10680E44 -:10E840000C189B1A9A3688170914A92048CFD1E8CA -:10E8500005010BF60B10680E0B19AC5C6CC65C2F37 -:10E86000F45C640D8C1834CEA50D8C1825AC853065 -:10E8700005C198FACBFF94EA0C1068160C189B1A85 -:10E880009A3688170914A92048CFD10D8BF60B10A2 -:10E89000680E0B19AC5C6CC48C0D8C2FFCAC8C2FEF -:10E8A000F55C65FB3C00680033E6001302F1EC56B2 +:10E7A00056030000000100CFD1E0A044F12EADE3FC +:10E7B000CF8080800174E4D421E02D03AC1897163B +:10E7C00096300CFB6C00683005C1C8E06B2BFCEA8E +:10E7D0001B0000301CF805094A760C798C186AC0B9 +:10E7E000F0761CEA0A1505180AF52C0004581CC01E +:10E7F00071FACBFF98FACCFF94746A5D1A2FF55C1E +:10E80000655995CE450D8BFB3C0068180B58BBC273 +:10E81000450D8CFB350068180520A55C65E9D5B071 +:10E8200008C158E80C10680E0C189B1A9A36881705 +:10E830000914A92048CFD1E805010BF60B10680E8A +:10E840000B19AC5C6CC65C2FF45C640D8C1834CE78 +:10E85000A50D8C1825AC853005C198FACBFF94EA3C +:10E860000C1068160C189B1A9A3688170914A920E0 +:10E8700048CFD10D8BF60B10680E0B19AC5C6CC435 +:10E880008C0D8C2FFCAC8C2FF55C65FB3C00681864 +:10E8900035CE55FE3DFC54D82A0000D401300A582C +:10E8A0009CC061581BC04100FE4E001302F1EC56A3 :10E8B0000400EB0000800100EC000100008EC001AC -:10E8C0000D02F1EC560300000001001835CE55FE94 -:10E8D0003DFC54D82A0000D401300A589CC061582D -:10E8E0001BC041E0A03C12301A149C5C6CD8028022 -:10E8F00001643CE06B2C00EA1B00002F8B32C9172F -:10E900000A18AA2049CFD122CC5EFC400B990B40BB -:10E910001B991B402B992B403B993B404B994B40FB -:10E920005B995BFB0B004AF95B0018FB0B004CF991 -:10E930005B001AFB0B004EF95B001C40CB998B402F -:10E94000FB999B410B99AB5EFD0000202C5C5C5950 -:10E950007CF9BC02021E0C19EC180F801AAE8080E4 -:10E960008080628080928080808080AEAEAEAEAECD -:10E970008080001B8CB68C1B9CB69C583CC0311B05 -:10E98000CCB6CC1BACB6AC1BDCEDBC0007C0B3B640 -:10E99000DC2F8BFACCFFF83109192A16BA2029CFBF -:10E9A000D15EFDE06C0080B6DC2F8BFACCFFF83333 -:10E9B0000AB909B728208ACFD15EFD1B8CB68C1B03 -:10E9C0009CB69C1BACB6AC169C2FCC00346D0013CF +:10E8C0000D02F1EC56030000000100E0A03C2830EE +:10E8D0001A149C5C6CD80280016450E06B2BFCEA3B +:10E8E0001B00002F8B32C9170A18AA2049CFD1224A +:10E8F000CC5EFC400B990B401B991B402B992B4085 +:10E900003B993B404B994B405B995BFB0B004AF9B1 +:10E910005B0018FB0B004CF95B001AFB0B004EF977 +:10E920005B001C40CB998B40FB999B410B99AB5EE4 +:10E93000FD0000202C5C5C597CF9BC02021E0C1905 +:10E94000EC180F801AAE8080808062808092808078 +:10E95000808080AEAEAEAEAE8080001B8CB68C1BCD +:10E960009CB69C583CC0311BCCB6CC1BACB6AC1B87 +:10E97000DCEDBC0007C0B3B6DC2F8BFACCFFF8315E +:10E9800009192A16BA2029CFD15EFDE06C0080B6A5 +:10E99000DC2F8BFACCFFF8330AB909B728208ACFCD +:10E9A000D15EFD1B8CB68C1B9CB69C1BACB6AC160A +:10E9B0009C2FCCFACAFFFC3648150918A92048CF6D +:10E9C000D11B8CB68C1B9CB69C1BAC008620001304 :10E9D00002F1EC560400EC0000800100ED000100A3 -:10E9E00000E478010D02F1EC56030000000100FA8A -:10E9F000CAFFFC3648150918A92048CFD11B8CB690 -:10EA00008C1B9CB69C1BACB6AC1BCCB6CC5EFD1B69 -:10EA10008CB68C1B9CB69C1BACB6AC2FCBFACCFF37 -:10EA2000FC30A9192A16BA2029CFD15EFD0000B109 -:10EA30008CF9DCC001EC1C00015EFCD401201CC080 -:10EA400060201CC070201CC080D80AE0A0691ED8BD -:10EA50000AE0A06939D80AE0A06954D80AD703802F -:10EA600001BF988001BFD48001C010D401201CC018 -:10EA700060201CC070201CC080D80AE0A06914D897 -:10EA80000AE0A0692FD80AE0A0694AD80AD7038013 -:10EA900001BFB48001BFF08001C02C201CC08020C9 -:10EAA0001CC0C0201CC0F0201C5E0F5EFDFE7C1848 -:10EAB00014780CF9DCC0015EFC486C780CF9DCC001 -:10EAC000015EFC484C780CF9DCC0015EFCD703FF0A -:10EAD000FF1864FFFF1850EBCD40801897F9D7C09E -:10EAE00008CDDFCFD0E3CF80800000300B990B0042 -:10EAF000201A001302F1EC560400ED000080010022 +:10E9E00000E478010D02F1EC56030000000100B6CE +:10E9F000AC1BCCB6CC5EFD1B8CB68C1B9CB69C1B9A +:10EA0000ACB6AC2FCBFACCFFFC30A9192A16BA2031 +:10EA100029CFD15EFD0000B18CF9DCC001EC1C00F7 +:10EA2000015EFCD401201CC060201CC070201CC0F2 +:10EA300080D80AE0A0695CD80AE0A06977D80AE02B +:10EA4000A06992D80AD7038001BFFC8001C038803A +:10EA500001C074D401201CC060201CC070201CC0E8 +:10EA600080D80AE0A06952D80AE0A0696DD80AE00F +:10EA7000A06988D80AD7038001C0188001C05480DB +:10EA800001C090201CC080201CC0C0201CC0F020F1 +:10EA90001C5E0F5EFDFE7C1814780CF9DCC0015E74 +:10EAA000FC486C780CF9DCC0015EFC484C780CF931 +:10EAB000DCC0015EFCD703FFFF1864FFFF1850EBBA +:10EAC000CD40801897F9D7C008CDDFCFD0E3CF80F5 +:10EAD000800000300B990B5EFD0000780AE01AE020 +:10EAE000FFF5EB108B990B5EFD0000780AE21A002F +:10EAF000D585001302F1EC560400ED000080010002 :10EB0000EE0001000071B3010D02F1EC56030000AC -:10EB10000001005EFD0000780AE01AE0FFF5EB104E -:10EB20008B990B5EFD0000780AE21AFFFD990A58E6 -:10EB30002B5E3D780AA1BA990A780A201BAF7BE6C2 -:10EB40001BFFFF144B990B5EFD0000EBCD40E0185E -:10EB50009616951497300BCDCF0A9B0C9CCDDF0EEB -:10EB60009B0C9CCE2F362C8D1CE06CB400EA1C0450 -:10EB7000C48D2CE46C00048D3C300C8D4CE3CF80B4 -:10EB8000E00000FE7C1814780CA99CF9DCC0015E42 -:10EB9000FC0000EBCD408018970E9CCF4FCFE0E3F8 -:10EBA000CF8080E06C0590EA1C0000F92B00005C2F -:10EBB0005BC060202BC070201BC0A05EFDE07CC14C -:10EBC000385EFCE06C5A00EA1C02625EFCE06C0EEF -:10EBD00000EA1C07275EFCD401CE5FA38CD802D4C8 -:10EBE00001189B302CE0A057B9D80A80019E44EB55 -:10EBF000CD40C018961697CF0F8F0CFE7C4400189E -:10EC000036C04130BCCEDFC078FE7C48001836C02C -:10EC10003130CC004B1A001302F1EC560400EE0028 +:10EB1000000100FFFD990A582B5E3D780AA1BA99C1 +:10EB20000A780A201BAF7BE61BFFFF144B990B5E94 +:10EB3000FD0000EBCD40E0189616951497300BCDF4 +:10EB4000CF0A9B0C9CCDDF0E9B0C9CCE2F362C8DC0 +:10EB50001CE06CB400EA1C04C48D2CE46C00048D31 +:10EB60003C300C8D4CE3CF80E00000FE7C18147824 +:10EB70000CA99CF9DCC0015EFC0000EBCD408018C4 +:10EB8000970E9CCF4FCFE0E3CF8080E06C0580EA0A +:10EB90001C0000F92B00005C5BC060202BC07020C3 +:10EBA0001BC0A05EFDE07CC1385EFCE06C5A00EA50 +:10EBB0001C02625EFCE06C0E00EA1C07275EFCD4BF +:10EBC00001CE5FA38CD802D401189B302CE0A05753 +:10EBD000F7D80A80019EA8EBCD40C018961697CFB3 +:10EBE0000F8F0CFE7C44001836C04130BCCEDFC015 +:10EBF00078FE7C48001836C03130CCCE6F0E9B0CAE +:10EC00009CE0A00EC9E3CD80C0D70380010C80EB4F +:10EC1000CD4080001CC0001302F1EC560400EE0051 :10EC200000800100EF00010000CE08010D02F1ECB0 -:10EC300056030000000100CE6F0E9B0C9CE0A00E5E -:10EC4000C9E3CD80C0D70380010C98EBCD4080E0B4 -:10EC50006C0160EA1CAA004B5B970C4B1C780CA162 -:10EC6000DC4B0B970C300CE0A065CEE0A03E3231BF -:10EC70001CEA1CA500FE6B0000971C3007FE6C0010 -:10EC8000009907304CEA1CAA004A9B970CFE7C14A2 -:10EC9000049907308CEA1CAA00970C4A5C9907304B -:10ECA000CCEA1CAA00970C4A3C9907310CEA1CAA32 -:10ECB00000970C4A1C9907E0A06AEC4A1C9907FCD3 -:10ECC0001C0FF84A0B970C4A1C780C3447EA17AA19 -:10ECD000004A0B9707A5DC49DB970CFE7C1800E087 -:10ECE000A00262E0A06AF0499C780CE81C00174979 -:10ECF0008B9707496B970C496B9707B3CC494B9798 -:10ED00000C34CCEA1CAA00492B970C492C780CE057 -:10ED10001CFFF0490B970CE0A06AECE3CF9080FF5A -:10ED2000FF15608001BACC80016B98FFFF1458FF7B -:10ED3000FF1408FFFF140C001723001302F1EC5618 +:10EC300056030000000100E06C0160EA1CAA004BD2 +:10EC40005B970C4B1C780CA1DC4B0B970C300CE049 +:10EC5000A0660CE0A03E48311CEA1CA500FE6B003B +:10EC600000971C3007FE6C00009907304CEA1CAA84 +:10EC7000004A9B970CFE7C14049907308CEA1CAA6E +:10EC800000970C4A5C990730CCEA1CAA00970C4A02 +:10EC90003C9907310CEA1CAA00970C4A1C9907E022 +:10ECA000A06B2A4A1C9907FC1C0FF84A0B970C4AC8 +:10ECB0001C780C3447EA17AA004A0B9707A5DC49D1 +:10ECC000DB970CFE7C1800E0A00262E0A06B2E49EE +:10ECD0009C780CE81C0017498B9707496B970C49E7 +:10ECE0006B9707B3CC494B970C34CCEA1CAA00496C +:10ECF0002B970C492C780CE01CFFF0490B970CE08B +:10ED0000A06B2AE3CF9080FFFF15608001BB3080AD +:10ED1000016BACFFFF1458FFFF1408FFFF140CFF3A +:10ED2000FF14108001C5BCFFFF2C70FFFF2E708008 +:10ED300001C5F0FFFF184400F756001302F1EC562E :10ED40000400EF0000800100F000010000DE60011F -:10ED50000D02F1EC56030000000100FFFF141080CB -:10ED600001C558FFFF2C70FFFF2E708001C58CFF7E -:10ED7000FF1844FFFF1818FFFF184C8001C5B8D4D6 -:10ED800001204D1A9CE06BF004EA1B8001B709B921 -:10ED900028B709B9281A9BFE7C4400C4EF5C6C2F8D -:10EDA000CDD802EBCD40C0201D1897348CE0A06573 -:10EDB00073E066F170EA1680015C57C0E0305CE0F9 -:10EDC000A072EA304CE0A072E76C0C500C302B1AA9 -:10EDD0009CE0A06699C0D8315CE0A072DD314CE0C7 -:10EDE000A072DA6C1C500C302B1A9CE0A0668C349C -:10EDF0008CE0A065732FFDE3CF80C0D401206DFAB5 -:10EE0000CCFFF4E06BF0BCEA1B8001B709B928170E -:10EE10000818A8C06F503CE06CB660EA1C80005037 -:10EE20000CE06CBD4CEA1C8000501CE06CB5F4EAB0 -:10EE30001C8000502C1A9AFACBFFF4FE7C4C00E0A8 -:10EE4000A068285C6C2FADD802D7038001C134EBD9 -:10EE5000CD4080202D306CE0A0729E00B391001355 +:10ED50000D02F1EC56030000000100FFFF1818FF40 +:10ED6000FF184C8001C61CD401204D1A9CE06BF0AA +:10ED700070EA1B8001B709B928B709B9281A9BFEA8 +:10ED80007C4400C4EF5C6C2FCDD802EBCD40C0209A +:10ED90001D1897348CE0A065B1E066F1DCEA1680BE +:10EDA000015C57C0E0305CE0A0731E304CE0A07303 +:10EDB0001B6C0C500C302B1A9CE0A066D7C0D831CD +:10EDC0005CE0A07311314CE0A0730E6C1C500C3051 +:10EDD0002B1A9CE0A066CA348CE0A065B12FFDE33D +:10EDE000CF80C0D401206DFACCFFF4E06BF128EAAB +:10EDF0001B8001B709B928170818A8C06F503CE05C +:10EE00006CB660EA1C8000500CE06CBD4CEA1C80C3 +:10EE100000501CE06CB5F4EA1C8000502C1A9AFAE1 +:10EE2000CBFFF4FE7C4C00E0A068665C6C2FADD894 +:10EE300002D7038001C198EBCD4080202D306CE0DB +:10EE4000A072D2301B306CE0A06BDA309CE0A07274 +:10EE5000CB301B309CE0A06BD330BC001B9E00135A :10EE600002F1EC560400F00000800100F100010006 -:10EE700000CADD010D02F1EC560300000001003074 -:10EE80001B306CE0A06BDE309CE0A07297301B3032 -:10EE90009CE0A06BD730BCE0A07290301B30BCE08F -:10EEA000A06BD030ECE0A07289301B30ECE0A06B9E -:10EEB000C9316CE0A07282301B316CE0A06BC232B1 -:10EEC0005CE0A0727B301B325CE0A06BBB329CE04C -:10EED000A07274301B329CE0A06BB432BCE0A07214 -:10EEE0006D301B32BCE0A06BAD32CCE0A07266305E -:10EEF0001B32CCE0A06BA632DCE0A0725F301B328C -:10EF0000DCE0A06B9F32ECE0A07258301B32ECE0EA -:10EF1000A06B98310CE0A07251301B310CE0A06B5B -:10EF200091323CE0A0724A301B323CE0A06B8A3147 -:10EF30003CE0A07243301B313CE0A06B83326CE0BC -:10EF4000A0723C301B326CE0A06B7C30DCE0A07225 -:10EF500035300B30DCE0A06B75300CE0A0722E3049 -:10EF60001B300CE0A06B6E301CE0A07227301B3011 -:10EF70001CE0A06B67302CE0A07220301B302C000E -:10EF8000B6B3001302F1EC560400F100008001005A +:10EE700000CADD010D02F1EC56030000000100E0C4 +:10EE8000A072C4301B30BCE0A06BCC30ECE0A072B0 +:10EE9000BD301B30ECE0A06BC5316CE0A072B63029 +:10EEA0001B316CE0A06BBE325CE0A072AF301B3255 +:10EEB0005CE0A06BB7329CE0A072A8301B329CE0F3 +:10EEC000A06BB032BCE0A072A1301B32BCE0A06BE2 +:10EED000A932CCE0A0729A301B32CCE0A06BA232F7 +:10EEE000DCE0A07293301B32DCE0A06B9B32ECE0E4 +:10EEF000A0728C301B32ECE0A06B94310CE0A0725D +:10EF000085301B310CE0A06B8D323CE0A0727E306E +:10EF10001B323CE0A06B86313CE0A07277301B31A5 +:10EF20003CE0A06B7F326CE0A07270301B326CE072 +:10EF3000A06B7830DCE0A07269300B30DCE0A06BB5 +:10EF400071300CE0A07262301B300CE0A06B6A30B4 +:10EF50001CE0A0725B301B301CE0A06B63302CE027 +:10EF6000A07254301B302CE0A06B5C303CE0A072EF +:10EF70004D301B303CE0A06B55307CE0A072460069 +:10EF8000812F001302F1EC560400F1000080010013 :10EF9000F2000100005F16010D02F1EC56030000C3 -:10EFA000000100E0A06B60303CE0A07219301B3023 -:10EFB0003CE0A06B59307CE0A07212301B307CE04A -:10EFC000A06B52308CE0A0720B301B308CE0A06B39 -:10EFD0004B320CE0A07204301B320CE0A06B4432C8 -:10EFE0001CE0A071FD301B321CE0A06B3D324CE0F8 -:10EFF000A071F6300B324CE0A06B36311CE0A071F2 -:10F00000EF300B311CE0A06B2F314CE0A071E830E9 -:10F010000B314CE0A06B28315CE0A071E1300B318A -:10F020005CE0A06B21304CE0A071DA300B304CE09A -:10F03000A06B1A305CE0A071D3300B305CE0A06BA9 -:10F0400013322CE0A071CC301B322CE0A06B0C30C2 -:10F05000FCE0A071C5300B30FCE0A06B05327CE019 -:10F06000A071BE300B327CE0A06AFE312CE0A071B2 -:10F07000B7300B312CE0A06AF732ACE0A071B030B1 -:10F080000B32ACE0A06AF0328CE0A071A9300B32F8 -:10F090008CE0A06AE9E067F168EA1780016E0C5025 -:10F0A0001C302B0039B0001302F1EC560400F200C2 +:10EFA000000100301B307CE0A06B4E308CE0A07282 +:10EFB0003F301B308CE0A06B47320CE0A072383041 +:10EFC0001B320CE0A06B40321CE0A07231301B32CF +:10EFD0001CE0A06B39324CE0A0722A300B324CE0BE +:10EFE000A06B32311CE0A07223300B311CE0A06B0F +:10EFF0002B314CE0A0721C300B314CE0A06B243163 +:10F000005CE0A07215300B315CE0A06B1D304CE071 +:10F01000A0720E300B304CE0A06B16305CE0A0729A +:10F0200007300B305CE0A06B0F322CE0A072003098 +:10F030001B322CE0A06B0830FCE0A071F9300B30E3 +:10F04000FCE0A06B01327CE0A071F2300B327CE07E +:10F05000A06AFA312CE0A071EB300B312CE0A06AF1 +:10F06000F332ACE0A071E4300B32ACE0A06AEC32D9 +:10F070008CE0A071DD300B328CE0A06AE5E067F136 +:10F08000D4EA1780016E0C501C302BFACCFFFCE048 +:10F09000A065906E1C500C302B1A9CE0A0658A2F46 +:10F0A000EDE3CF00F65D001302F1EC560400F20030 :10F0B00000800100F300010000E0AD010D02F1EC61 -:10F0C00056030000000100FACCFFFCE0A065526E80 -:10F0D0001C500C302B1A9CE0A0654C2FEDE3CF8028 -:10F0E00080D7038001D6388001C8C08001BDA8EB5D -:10F0F000CD40C03016FE771C003009300A301BFEB0 -:10F100007C1C00E0A06A00C0C13009300A300BFE50 -:10F110007C1C00E0A069F8C031E3CF80C03026CB72 -:10F120006DCC7DCA2D301AE06B0120E06C4524EADD -:10F130001C8000E0A06BE248BC780CEDBC0018CF4E -:10F14000C36E0CA9AC8F0C487C780CEDBC0018CFBA -:10F15000C3E0A001F90C9C5C6CE3CD80C0D70380B8 -:10F1600001C73CFFFF1C08300BC0B8FE6A0400F466 -:10F170000B002A7409E019FFF8A1A995092FFB5883 -:10F180004BCF53300BC0F8FE6A0440F40B002A74D6 -:10F1900009E419FFFCE2780000F1EC010810499540 -:10F1A000092FFB584BCF135EFD0000D401300CCD6E -:10F1B000CF340CE0A063C8345CE0A063C5347CE0CD -:10F1C000A063C2349CE0A0000120001302F1EC56C1 +:10F0C000560300000001008080D7038001D68880AD +:10F0D00001C8A08001BE0CEBCD40C03016FE771CED +:10F0E000003009300A301BFE7C1C00E0A06A3EC0E4 +:10F0F000C13009300A300BFE7C1C00E0A06A36C02B +:10F1000031E3CF80C03026CB6DCC7DCA2D301AE0E4 +:10F110006B0120E06C4524EA1C8000E0A06C2048D4 +:10F12000BC780CEDBC0018CFC36E0CA9AC8F0C489A +:10F130007C780CEDBC0018CFC3E0A001F90C9C5CFE +:10F140006CE3CD80C0D7038001C7A0FFFF1C08304F +:10F150000BC0B8FE6A0400F40B002A7409E019FF22 +:10F16000F8A1A995092FFB584BCF53300BC0F8FEDF +:10F170006A0440F40B002A7409E419FFFCE27800E9 +:10F1800000F1EC0108104995092FFB584BCF135E95 +:10F19000FD0000D401300CCDCF340CE0A064063467 +:10F1A0005CE0A06403347CE0A06400349CE0A063D5 +:10F1B000FD34ACE0A063FA34CCE0A063F734ECE0BB +:10F1C000A063F4357CE0A0001EF9001302F1EC56B8 :10F1D0000400F30000800100F400010000F4850148 -:10F1E0000D02F1EC5603000000010063BF34ACE0F7 -:10F1F000A063BC34CCE0A063B934ECE0A063B635C6 -:10F200007CE0A063B3359CE0A063B0360CE0A06363 -:10F21000AD361CE0A063AA320CE0A063A7322CE05C -:10F22000A063A4324CE0A063A1340CEA1CAA0048FD -:10F230009B970C300C487B970C310CEA1CAA0048B9 -:10F240005B970CE06C0081FE7B1410970CD80AFFD2 -:10F25000FF1440FFFF1458791B344AEA1AAA009998 -:10F260006AA5DBF94B00445EFD0000D401E1BC005F -:10F2700000FEB0FC5DD303E06B0160EA1BAA00FE58 -:10F280007A1458950BE06B00C0484A950B5C5CC043 -:10F2900020D503D80AD703FFFF1560EBCD4080309F -:10F2A0001CE0674E48EA170000AE9C300BAEFBEF47 -:10F2B0006B000DEF6B0019EF6B0013AEABEF6B0043 -:10F2C00008EF6B000EEF6B001AEF6B0014AECBEF84 -:10F2D0006B000AEF6B0010EF6B001CEF6B0016AEBB -:10F2E000DCEF6C000BEF6C0011EF6C0044090013B5 +:10F1E0000D02F1EC5603000000010063F1359CE0D4 +:10F1F000A063EE360CE0A063EB361CE0A063E832BF +:10F200000CE0A063E5322CE0A063E2324CE0A063A6 +:10F21000DF340CEA1CAA00489B970C300C487B9703 +:10F220000C310CEA1CAA00485B970CE06C0081FED4 +:10F230007B1410970CD80AFFFF1440FFFF14587975 +:10F240001B344AEA1AAA00996AA5DBF94B00445E0E +:10F25000FD0000D401E1BC0000FEB0FC5DD303E082 +:10F260006B0160EA1BAA00FE7A1458950BE06B0054 +:10F27000C0484A950B5C5CC020D503D80AD703FF71 +:10F28000FF1560EBCD4080301CE0674E44EA17006C +:10F2900000AE9C300BAEFBEF6B000DEF6B0019EF77 +:10F2A0006B0013AEABEF6B0008EF6B000EEF6B0063 +:10F2B0001AEF6B0014AECBEF6B000AEF6B0010EF90 +:10F2C0006B001CEF6B0016AEDCEF6C000BEF6C00FC +:10F2D00011EF6C001DEF6C0017AE8C302CAEEC30D3 +:10F2E0003CEF6C000C305CEF6C0018000F09001351 :10F2F00002F1EC560400F40000800100F50001006A -:10F30000009E3D010D02F1EC5603000000010000DB -:10F310001DEF6C0017AE8C302CAEEC303CEF6C0067 -:10F320000C305CEF6C0018304CEF6C0012306B321C -:10F330007CE0A06453306B328CE0A0644F306B30C3 -:10F34000FCE0A0644B306B312CE0A06447306B32A2 -:10F35000ACE0A06443305A0E9BFE7C2400E0A05F2A -:10F36000EDE3CF8080D7038001BDC88001B528D4EC -:10F37000211895169714960A942FF45C64346CE067 -:10F38000A062E4EA0C1518C261EC0C1518C08130BB -:10F390000CE06B4E48EA1B0000B6BCC0985816C083 -:10F3A00071301CE06B4E48EA1B0000B6BCE06C4EAE -:10F3B00048EA1C0000301B198AF60A094B19BC5890 -:10F3C0001C4B6C780CC031184BC038168C189B4BFA -:10F3D0002C990B5C57C4B0089BFE7C2400E0A06015 -:10F3E0000F5815C101301AE06B0161E06C44F4EA7A -:10F3F0001C8000E0A06AA6089BFE7C2400E0A060C0 -:10F400000BC468EA0C1518C101301AE06B016000EA -:10F4100037EC001302F1EC560400F5000080010007 +:10F30000009E3D010D02F1EC5603000000010030AB +:10F310004CEF6C0012306B327CE0A06491306B32A9 +:10F320008CE0A0648D306B30FCE0A06489306B31E0 +:10F330002CE0A06485306B32ACE0A06481305A0EC2 +:10F340009BFE7C2400E0A0602BE3CF8080D703806D +:10F3500001BE2C8001B58CD4211895169714960AFD +:10F36000942FF45C64346CE0A06322EA0C1518C29C +:10F3700061EC0C1518C081300CE06B4E44EA1B00A8 +:10F3800000B6BCC0985816C071301CE06B4E44EA01 +:10F390001B0000B6BCE06C4E44EA1C0000301B1998 +:10F3A0008AF60A094B19BC581C4B6C780CC03118F2 +:10F3B0004BC038168C189B4B2C990B5C57C4B0086B +:10F3C0009BFE7C2400E0A0604D5815C101301AE07E +:10F3D0006B0161E06C44F4EA1C8000E0A06AE40880 +:10F3E0009BFE7C2400E0A06049C468EA0C1518C1AB +:10F3F00001301AE06B0160E06C4518EA1C8000E007 +:10F40000A06AD2089BFE7C2400E0A06037C34800BD +:10F41000DB75001302F1EC560400F50000800100DA :10F42000F6000100000BF6010D02F1EC560300009E -:10F43000000100E06C4518EA1C8000E0A06A940816 -:10F440009BFE7C2400E0A05FF9C3485835C1013021 -:10F450001AE06B0163E06C4500EA1C8000E0A06AE2 -:10F4600083089BFE7C2400E0A05FE8C2385845C2B8 -:10F4700011301AE06B0180E06C450CEA1C8000E062 -:10F48000A06A72089BFE7C2400E0A05FD7C12858C8 -:10F4900015C060EA0C1518C0305835C061089BFED5 -:10F4A0007C2400E0A05FD0089BFE7C2400E0A05FED -:10F4B000BF346CE0A0627ED82AD703FFFF241C80F3 -:10F4C00001B5EC8001CB308001B6048001B610801C -:10F4D00001B5F8FE7C1C08780BEDBB0018CFB348D3 -:10F4E0005B760BA9AB484A950B780BEDBB0018CFA8 -:10F4F000D35EFDFFFF1C10FE7C1C08780BEDBB00EB -:10F5000018CFB3485B760BA9AB484A950B780BED47 -:10F51000BB0018CFD35EFDFFFF1C1CFE7C1C0878CF -:10F520000BEDBB0018CFB3485B760BA9AB484A95EF -:10F530000B780B004B6C001302F1EC560400F60044 +:10F430000001005835C101301AE06B0163E06C45F2 +:10F4400000EA1C8000E0A06AC1089BFE7C2400E06A +:10F45000A06026C2385845C211301AE06B0180E026 +:10F460006C450CEA1C8000E0A06AB0089BFE7C247E +:10F4700000E0A06015C1285815C060EA0C1518C03E +:10F48000305835C061089BFE7C2400E0A0600E0867 +:10F490009BFE7C2400E0A05FFD346CE0A062BCD841 +:10F4A0002AD703FFFF241C8001B6508001CB948033 +:10F4B00001B6688001B6748001B65CFE7C1C0878D9 +:10F4C0000BEDBB0018CFB3485B760BA9AB484A9550 +:10F4D0000B780BEDBB0018CFD35EFDFFFF1C10FEB9 +:10F4E0007C1C08780BEDBB0018CFB3485B760BA9EA +:10F4F000AB484A950B780BEDBB0018CFD35EFDFFF0 +:10F50000FF1C1CFE7C1C08780BEDBB0018CFB34819 +:10F510005B760BA9AB484A950B780BEDBB0018CF77 +:10F52000D35EFDFFFF1C0CEBCD4080581BC0D1E02B +:10F53000A021F000E7BA001302F1EC560400F60037 :10F5400000800100F700010000B44D010D02F1EC54 -:10F5500056030000000100EDBB0018CFD35EFDFF95 -:10F56000FF1C0CEBCD4080581BC0D1E0A021DAE09D -:10F570006B126FEA1B4183E0A0200AE0A021AC18C7 -:10F580009BC0A8E0A021CEFC1B4266E0A02000E0CA -:10F59000A021A2189B4A0C780CEDBC0018CFC3FE2A -:10F5A0007C1C00E0A0683249BC780CEDBC0018CF90 -:10F5B000C3300BFE7C1C00E0A0681AE3CF80808083 -:10F5C000013AC88001373480013A7C8001C7B0809D -:10F5D00001C794490C780CEDBC0018CFC3FE7C1C0D -:10F5E00000780BA1CB990B48BC780CEDBC0018CF70 -:10F5F000C35EFD488C780CEDBC0018CFC3FE7C1CAC -:10F6000000780BA1AB990B483C780CEDBC0018CFEF -:10F61000C35EFDFFFF1C08300CFE7B1C00760BED6B -:10F62000BB0000C022301C5C5C5EFCD401340CFECC -:10F630006B0000970CE0A05393DA0A80019F04D47A -:10F6400001205D343CE0A061A5301CFEB0FAACE0C6 -:10F650006904C4301A301B00F6D5001302F1EC56D1 +:10F5500056030000000100E06B126FEA1B4183E0DC +:10F56000A02020E0A021C2189BC0A8E0A021E4FCBC +:10F570001B4266E0A02016E0A021B8189B4A0C7838 +:10F580000CEDBC0018CFC3FE7C1C00E0A0687049E5 +:10F59000BC780CEDBC0018CFC3300BFE7C1C00E027 +:10F5A000A06858E3CF808080013ADC800137488032 +:10F5B000013A908001C8148001C7F8490C780CED1D +:10F5C000BC0018CFC3FE7C1C00780BA1CB990B4864 +:10F5D000BC780CEDBC0018CFC35EFD488C780CEDF8 +:10F5E000BC0018CFC3FE7C1C00780BA1AB990B4864 +:10F5F0003C780CEDBC0018CFC35EFDFFFF1C08304B +:10F600000CFE7B1C00760BEDBB0000C022301C5CA6 +:10F610005C5EFCD401340CFE6B0000970CE0A05340 +:10F62000D1DA0A80019F68D401205D343CE0A061FA +:10F63000E3301CFEB0FAACE06904C4301A301B1A87 +:10F640009CFEB0FB1B301CFEB0FAF0300B1A9CE0A5 +:10F65000A047C0302A302B009562001302F1EC560F :10F660000400F70000800100F80001000023A6015B -:10F670000D02F1EC560300000001001A9CFEB0FBE5 -:10F680001B301CFEB0FAF0300B1A9CE0A047823011 -:10F690002A302B302CE0A0532F300CFEB0FB303042 -:10F6A0002CE0A05359303CFEB0FAA8343CE0A061F5 -:10F6B000A52FBDDA0AD7038001BB388001871480EB -:10F6C000019E7880019ED88001BB7CD421201D182A -:10F6D0009616973005E0A0705B1894E91B00663021 -:10F6E0001CF806094C184BE95B0066E91C006650E3 -:10F6F0000CE06CF080EA1C8001FEB0C77B5866C04D -:10F7000071E06C434CEA1C0000F967009229A48860 -:10F710008C581CC02530150A9C5C5C2FFDD822EB50 -:10F72000CD40FC204D18943006FEB0C6471893E03B -:10F7300065EDF8EA1580010A9CFEB0C75B3007C092 -:10F74000282FF75C6758A7E0840111E91C0066F8D0 -:10F75000070A4CA19CCF620E9C5C5C58ACF9BC02C1 -:10F760000A2FECFE0C001FC0B8C1C8C348C498C51E -:10F77000A8C9E8CB48CD08C6B8CDC800F93D0013EC +:10F670000D02F1EC56030000000100302CE0A05315 +:10F680006D300CFEB0FB30302CE0A05397303CFEC8 +:10F69000B0FAA8343CE0A061E32FBDDA0AD70380BA +:10F6A00001BB9C8001877880019EDC80019F3C80AB +:10F6B00001BBE0D421201D189616973005E0A070FC +:10F6C0009D1894E91B0066301CF806094C184BE99C +:10F6D0005B0066E91C0066500CE06CF0ECEA1C80F4 +:10F6E00001FEB0C7875866C071E06C4348EA1C0051 +:10F6F00000F967009229A4888C581CC02530150A8F +:10F700009C5C5C2FFDD822EBCD40FC204D18943042 +:10F7100006FEB0C6531893E065EE64EA1580010A50 +:10F720009CFEB0C7673007C0282FF75C6758A7E07A +:10F73000840111E91C0066F8070A4CA19CCF620EF7 +:10F740009C5C5C58ACF9BC020A2FECFE0C001FC09C +:10F75000B8C1C8C348C498C5A8C9E8CB48CD08C635 +:10F76000B8CDC8CED8E06C43DCEA1C00007802E0DB +:10F77000644348EA140000089C2F6C009FC80013E3 :10F7800002F1EC560400F80000800100F9000100CD -:10F7900000631D010D02F1EC56030000000100CED4 -:10F7A000D8E06C43E0EA1C00007802E064434CEAD5 -:10F7B000140000089C2F6C300BB88B64BB767B5D0B -:10F7C0001B1896CDB8E06C43E0EA1C00007812E00C -:10F7D00064434CEA140000300CE96C000B089C2FC9 -:10F7E0005C300A1899324B12CA201BCFE164BB76F9 -:10F7F0007B5D1B1896CC28E06C43E0EA1C00007887 -:10F8000022E064434CEA140000089C2D1C300A18C6 -:10F8100099316B12CA201BCFE164BB767B5D1B184C -:10F8200096CAC8E06C43E0EA1C00007832E064430A -:10F830004CEA140000089C2BBC300BB88B64BB76E0 -:10F840007B5D1B1896C9A8E064434CEA140000666F -:10F850000CE96C0046663CE96C0047665CE96C00AC -:10F8600048666CE96C0049301C2B64A88C3016C8C3 -:10F8700058E06C43E0EA1C00007842E064434CEA44 -:10F88000140000089C2B5C300BB88BB89BB8ABB84D -:10F89000BB64BC781C5D1C30AB069CFEB0C89600F7 -:10F8A000871E001302F1EC560400F90000800100ED +:10F7900000631D010D02F1EC560300000001003072 +:10F7A0000BB88B64BB767B5D1B1896CDB8E06C43C1 +:10F7B000DCEA1C00007812E0644348EA14000030E0 +:10F7C0000CE96C000B089C2F5C300A1899324B1224 +:10F7D000CA201BCFE164BB767B5D1B1896CC28E06A +:10F7E0006C43DCEA1C00007822E0644348EA140021 +:10F7F00000089C2D1C300A1899316B12CA201BCFAF +:10F80000E164BB767B5D1B1896CAC8E06C43DCEAFA +:10F810001C00007832E0644348EA140000089C2B86 +:10F82000BC300BB88B64BB767B5D1B1896C9A8E017 +:10F83000644348EA140000660CE96C0046663CE943 +:10F840006C0047665CE96C0048666CE96C00493006 +:10F850001C2B64A88C3016C858E06C43DCEA1C00F2 +:10F86000007842E0644348EA140000089C2B5C30B6 +:10F870000BB88BB89BB8ABB8BB64BC781C5D1C30B4 +:10F88000AB069CFEB0C8A2089C2B5C64BB767B5D7B +:10F890001B189664BC782C5D1CE93A004EE93B00CD +:10F8A0009A8D001302F1EC560400F900008001006B :10F8B000FA00010000F6D6010D02F1EC560300003B -:10F8C000000100089C2B5C64BB767B5D1B18966472 -:10F8D000BC782C5D1CE93A004EE93B004DFAEB0088 -:10F8E00008E93A004C2B54098BBB1B2F850A9CFE60 -:10F8F000B0C6A4C558E06C43E0EA1C00007812E0F2 -:10F9000064434CEA140000089C2B1C300BB88B306D -:10F910001CE96C004F2B14089C64BB767B5D1B18A4 -:10F9200096C3E8E06C43E0EA1C00007812E0644310 -:10F930004CEA140000089C2B0C300BB88B301CE9EF -:10F940003B00922FCBF80B094CA1BCE96C00502B6B -:10F9500004089C64BB767B5D1B1896C218E06A4362 -:10F960004CEA1A00002AFA300B1499340C12CB20FE -:10F970001CCFE1C24C1896C138E06C43E0EA1C0091 -:10F98000007862E064434CEA140000089CFE3CFFEF -:10F990006F300BB88B64BB767B5D1B1896F5D6C0B9 -:10F9A00008F7D7B008E06C434CEA1C0000E0A00365 -:10F9B000270C9C5C5C2FCDE3CD80FCD43120CD3076 -:10F9C0000CBACC009EAD001302F1EC560400FA0014 +:10F8C000000100004DFAEB0008E93A004C2B540906 +:10F8D0008BBB1B2F850A9CFEB0C6B0C558E06C439D +:10F8E000DCEA1C00007812E0644348EA14000008D7 +:10F8F0009C2B1C300BB88B301CE96C004F2B140870 +:10F900009C64BB767B5D1B1896C3E8E06C43DCEA25 +:10F910001C00007812E0644348EA140000089C2BA5 +:10F920000C300BB88B301CE93B00922FCBF80B0945 +:10F930004CA1BCE96C00502B04089C64BB767B5D39 +:10F940001B1896C218E06A4348EA1A00002AFA30E7 +:10F950000B1499340C12CB201CCFE1C24C1896C169 +:10F9600038E06C43DCEA1C00007862E0644348EA5B +:10F97000140000089CFE3CFF6F300BB88B64BB7614 +:10F980007B5D1B1896F5D6C008F7D7B008E06C432E +:10F9900048EA1C0000E0A003270C9C5C5C2FCDE330 +:10F9A000CD80FCD43120CD300CBACCE060ED94EAAF +:10F9B000108001FACCFFF8009B3149170A18AA20E1 +:10F9C00049CFD100B6ED001302F1EC560400FA0065 :10F9D00000800100FB00010000496D010D02F1EC07 -:10F9E00056030000000100E060ED28EA108001FAF3 -:10F9F000CCFFF8009B3149170A18AA2049CFD13013 -:10FA000007FEB0C51118963005C2C8169AA17AFA39 -:10FA1000C9FFF814091388A96813991009FAC8FFD7 -:10FA2000E4F00A0A095C89F20A14082AFCB88A2F51 -:10FA3000F75C67E807000C2AFCB8892FF72FFB5CFE -:10FA40006B089C5C670E0C582BCE15300B2AFCB84B -:10FA50008B2FF766BC782C5D1CE08101B02FF55C24 -:10FA6000655885E084024FE064434CEA1400005C72 -:10FA700067E807000C2AFCB8852FF7E06143E0EA4D -:10FA8000110000E20503230A9C588CF9BC0208FE11 -:10FA90000C001C984C180F001400AE013A01C6026D -:10FAA000B4032A043603C0FFC866BC781C5D1CCDB5 -:10FAB00070E06B02BC0C9CFEB0C7AC306BFACCFFA4 -:10FAC000F866BA745A5D1ACCB0300BC178F60A15D4 -:10FAD00001FACCFFF8140C1999A969198C1809E0DE -:10FAE0006C06E0EA1C000000D1E7001302F1EC56BE +:10F9E000560300000001003007FEB0C51D18963018 +:10F9F00005C2C8169AA17AFAC9FFF814091388A992 +:10FA00006813991009FAC8FFE4F00A0A095C89F240 +:10FA10000A14082AFCB88A2FF75C67E807000C2A4A +:10FA2000FCB8892FF72FFB5C6B089C5C670E0C58A9 +:10FA30002BCE15300B2AFCB88B2FF766BC782C5DCB +:10FA40001CE08101B02FF55C655885E084024FE031 +:10FA5000644348EA1400005C67E807000C2AFCB81D +:10FA6000852FF7E06143DCEA110000E20503230A79 +:10FA70009C588CF9BC0208FE0C001C984C180F0016 +:10FA80001400AE013A01C602B4032A043603C0FFD3 +:10FA9000C866BC781C5D1CCD70E06B02BC0C9CFE83 +:10FAA000B0C7B8306BFACCFFF866BA745A5D1ACC9E +:10FAB000B0300BC178F60A1501FACCFFF8140C1916 +:10FAC00099A969198C1809E06C06D0EA1C00001489 +:10FAD0000C980C1809FACCFFE4F80A0A092FFB5C11 +:10FAE0006B583BCE95FACB0080FF001302F1EC5629 :10FAF0000400FB0000800100FC000100005D4501E6 -:10FB00000D02F1EC56030000000100140C980C18D3 -:10FB100009FACCFFE4F80A0A092FFB5C6B583BCECC -:10FB200095FACBFFE4300CE0A00206300BC158FA86 -:10FB3000CCFFE4F80B041CF80A14085C67E8070023 -:10FB4000092AF9B28A2FF75C67E807000A2AFAB493 -:10FB50008C2FF72FFB5C6B583BCEB566BC782C5DC9 -:10FB60001CC901300CCE1966BC781C5D1CC8A0E015 -:10FB70006B03200C9CFEB0C75F306BFACCFFF866BD -:10FB8000BA745A5D1AFE90FF7E300BC108F60A1552 -:10FB900001FACCFFF8140C1999A969198C1809FA03 -:10FBA000CCFFE4F80A0A092FFB5C6B583BCF05FA3F -:10FBB000CBFFE4301CCBFD300BC158FACCFFE4F88E -:10FBC0000B041CF80A14085C67E80700092AF9B25C -:10FBD0008A2FF75C67E807000A2AFAB48C2FF72F00 -:10FBE000FB5C6B583BCEB566BC782C5D1CFE91FF70 -:10FBF0004ACB9B66BC781C5D1CFE90FF44332B0CEB -:10FC00009CFEB0C719306BFACCFFF800103B001314 +:10FB00000D02F1EC56030000000100FFE4300CE0B0 +:10FB1000A00206300BC158FACCFFE4F80B041CF825 +:10FB20000A14085C67E80700092AF9B28A2FF75C13 +:10FB300067E807000A2AFAB48C2FF72FFB5C6B5892 +:10FB40003BCEB566BC782C5D1CC901300CCE196665 +:10FB5000BC781C5D1CC8A0E06B03200C9CFEB0C7E9 +:10FB60006B306BFACCFFF866BA745A5D1AFE90FFE0 +:10FB70007E300BC108F60A1501FACCFFF8140C19F7 +:10FB800099A969198C1809FACCFFE4F80A0A092F17 +:10FB9000FB5C6B583BCF05FACBFFE4301CCBFD3050 +:10FBA0000BC158FACCFFE4F80B041CF80A14085CEB +:10FBB00067E80700092AF9B28A2FF75C67E80700AF +:10FBC0000A2AFAB48C2FF72FFB5C6B583BCEB56634 +:10FBD000BC782C5D1CFE91FF4ACB9B66BC781C5DFB +:10FBE0001CFE90FF44332B0C9CFEB0C725306BFAF3 +:10FBF000CCFFF866BA745A5D1AFE90FF38300BC11C +:10FC000008F60A1501FACCFFF8140C00C0800013A6 :10FC100002F1EC560400FC0000800100FD00010030 -:10FC20000037FD010D02F1EC5603000000010066F3 -:10FC3000BA745A5D1AFE90FF38300BC108F60A15E7 -:10FC400001FACCFFF8140C1999A969198C1809FA52 -:10FC5000CCFFE4F80A0A092FFB5C6B583BCF05FA8E -:10FC6000CBFFE4302CC79D300BC158FACCFFE4F831 -:10FC70000B041CF80A14085C67E80700092AF9B2AB -:10FC80008A2FF75C67E807000A2AFAB48C2FF72F4F -:10FC9000FB5C6B583BCEB566BC782C5D1CFE91FFBF -:10FCA00004C73B66BC781C5D1CFE90FEFE33CB0C8B -:10FCB0009CFEB0C6D33002C188300C66BB764B5D6B -:10FCC0001B314B0C9CFEB0C6C9301C66BB764B5D2D -:10FCD0001B314B0C9CFEB0C6C1306BFACCFFF866F2 -:10FCE000BA745A5D1A2FF25832CE85300BC0D858EC -:10FCF0002BC091FB3A000BA96AFB3C000C180AFBD5 -:10FD00005A00202FFB5C6B583BC134580BC0A1FB41 -:10FD10003A0008A96AFB3C0009180AFB5A001CCFEC -:10FD20002B581BCE61FB3C000AFB5C001ECEBB00C7 -:10FD3000B0D0001302F1EC560400FD000080010079 +:10FC20000037FD010D02F1EC560300000001001940 +:10FC300099A969198C1809FACCFFE4F80A0A092F66 +:10FC4000FB5C6B583BCF05FACBFFE4302CC79D30F3 +:10FC50000BC158FACCFFE4F80B041CF80A14085C3A +:10FC600067E80700092AF9B28A2FF75C67E80700FE +:10FC70000A2AFAB48C2FF72FFB5C6B583BCEB56683 +:10FC8000BC782C5D1CFE91FF04C73B66BC781C5DF4 +:10FC90001CFE90FEFE33CB0C9CFEB0C6DF3002C1D2 +:10FCA00088300C66BB764B5D1B314B0C9CFEB0C69E +:10FCB000D5301C66BB764B5D1B314B0C9CFEB0C631 +:10FCC000CD306BFACCFFF866BA745A5D1A2FF25831 +:10FCD00032CE85300BC0D8582BC091FB3A000BA90F +:10FCE0006AFB3C000C180AFB5A00202FFB5C6B5887 +:10FCF0003BC134580BC0A1FB3A0008A96AFB3C0089 +:10FD000009180AFB5A001CCF2B581BCE61FB3C0084 +:10FD10000AFB5C001ECEBBFB0B001CA96BFB0C009E +:10FD20001E160CF80B14105C67E807000A2AFA008C +:10FD30006F8B001302F1EC560400FD0000800100FF :10FD4000FE00010000A236010D02F1EC5603000096 -:10FD5000000100FB0B001CA96BFB0C001E160CF82D -:10FD60000B14105C67E807000A2AFAB48B2FF7F827 -:10FD70000B14085C67E807000A2AFAB48B2FF75CBB -:10FD800067E807000B2AFBB68C2FF7FB0C0020F866 -:10FD90000B14085C67E807000A2AFAB48B2FF75C9B -:10FDA000670E042AF4A88C2FF766BC782C5D1CFE25 -:10FDB00091FE8DCFCA66BC781C5D1CFE90FE873319 -:10FDC000CB0C9CFEB0C65C306BFACCFFF866BA7404 -:10FDD0005A5D1AFE90FE7B300BC1F8F60C1501FA45 -:10FDE000CAFFF8180A1589A969159A120AFAC9FFF3 -:10FDF000E4F20C0A0A5C8AF40C14085C67E8070059 -:10FE0000092AF9B28C2FF75C67E807000C2AFCB8C6 -:10FE10008A2FF72FFB5C6B589BCE1566BC782C5D48 -:10FE20001CFE90FE54301CBACCC50A300CBADC3033 -:10FE30000266BC781C5D1CFE90FE49301BFACCFFAC -:10FE4000FB625A74BA746A5D1AE06B00960C9CFEF1 -:10FE5000B0C61600B71D001302F1EC560400FE00F8 +:10FD5000000100B48B2FF7F80B14085C67E807006C +:10FD60000A2AFAB48B2FF75C67E807000B2AFBB668 +:10FD70008C2FF7FB0C0020F80B14085C67E80700D9 +:10FD80000A2AFAB48B2FF75C670E042AF4A88C2F8A +:10FD9000F766BC782C5D1CFE91FE8DCFCA66BC78E0 +:10FDA0001C5D1CFE90FE8733CB0C9CFEB0C66830F9 +:10FDB0006BFACCFFF866BA745A5D1AFE90FE7B307F +:10FDC0000BC1F8F60C1501FACAFFF8180A1589A933 +:10FDD00069159A120AFAC9FFE4F20C0A0A5C8AF45D +:10FDE0000C14085C67E80700092AF9B28C2FF75C4D +:10FDF00067E807000C2AFCB88A2FF72FFB5C6B58CA +:10FE00009BCE1566BC782C5D1CFE90FE54301CBA4F +:10FE1000CCC50A300CBADC300266BC781C5D1CFE16 +:10FE200090FE49301BFACCFFFB625A74BA746A5DCB +:10FE30001AE06B00960C9CFEB0C6223001C0282F41 +:10FE4000F158A1C164306BFACCFFF866BA745A5D00 +:10FE50001A314B00AFEF001302F1EC560400FE0024 :10FE600000800100FF000100001D8D010D02F1EC7A -:10FE7000560300000001003001C0282FF158A1C135 -:10FE800064306BFACCFFF866BA745A5D1A314B0CC9 -:10FE90009CFEB0C607FB3C0008500C009C2ECCFE1C -:10FEA000B0C426FB3200085862CE94E0A06CEE5C31 -:10FEB00067E807000BF93C0080043CC064301C2A52 -:10FEC000FBB68C2FF7C058300C2AFBB68C2FF75C92 -:10FED000670E042AF4A8822FF766BC782C5D1CFEFE -:10FEE00091FE07C76A66BC781C5D1CFE90FE01E0AF -:10FEF0006B02580C9CFEB0C5D5306BFACCFFF8668F -:10FF0000BA745A5D1AFE90FDF4300BC1F8F60C1568 -:10FF100001FACAFFF8180A1589A969159A120AFA8E -:10FF2000C9FFE4F20C0A0A5C8AF40C14085C67E866 -:10FF30000700092AF9B28C2FF75C67E807000C2A42 -:10FF4000FCB88A2FF72FFB5C6B584BCE1566BC783C -:10FF50002C5D1CFE91FF7BFE9FFDCB66BC781C5D7B -:10FF60001CFE90FDC6300C66BB764B5D1B301CE75B -:10FF70006C001033CB0C9C003906001302F1EC56D8 +:10FE7000560300000001000C9CFEB0C613FB3C00C2 +:10FE800008500C009C2ECCFEB0C432FB3200085847 +:10FE900062CE94E0A06D305C67E807000BF93C008F +:10FEA00080043CC064301C2AFBB68C2FF7C058304D +:10FEB0000C2AFBB68C2FF75C670E042AF4A8822F5D +:10FEC000F766BC782C5D1CFE91FE07C76A66BC789D +:10FED0001C5D1CFE90FE01E06B02580C9CFEB0C540 +:10FEE000E1306BFACCFFF866BA745A5D1AFE90FDE9 +:10FEF000F4300BC1F8F60C1501FACAFFF8180A1510 +:10FF000089A969159A120AFAC9FFE4F20C0A0A5C77 +:10FF10008AF40C14085C67E80700092AF9B28C2FF0 +:10FF2000F75C67E807000C2AFCB88A2FF72FFB5C08 +:10FF30006B584BCE1566BC782C5D1CFE91FF7BFE8A +:10FF40009FFDCB66BC781C5D1CFE90FDC6300C6628 +:10FF5000BB764B5D1B301CE76C001033CB0C9CFE5A +:10FF6000B0C5A0306BFACCFFF866BA745A5D1AFEC1 +:10FF700090FDB3300BFE9F009689001302F1EC5602 :10FF80000400FF0000800101000001000058E501AD -:10FF90000D02F1EC56030000000100FEB0C59430E4 -:10FFA0006BFACCFFF866BA745A5D1AFE90FDB33056 -:10FFB0000BFE9FFDA21BCC2F4DD8328000853C80CC -:10FFC000008B28EBCD40C0202D18961697E0A06C32 -:10FFD0006FE06BF1A8EA1B8001B70ABB1B300B581E -:10FFE00006C031E06BFFFF180628460D8C588CF9CF -:10FFF000BC02001E0C19EC180F0A18283A4A5C6C57 +:10FF90000D02F1EC56030000000100FDA21BCC2F66 +:10FFA0004DD8328000853C80008B28EBCD40C020AE +:10FFB0002D18961697E0A06CB1E06BF214EA1B8046 +:10FFC00001B70ABB1B300B5806C031E06BFFFF18AE +:10FFD0000628460D8C588CF9BC02001E0C19EC1832 +:10FFE0000F0A18283A4A5C6C7E8E0CBA0C8E1CBA2A +:10FFF0001C8E2CBA2CC3D88E1CBA0C8E0C181BBAB3 :020000021000EC -:100000007E8E0CBA0C8E1CBA1C8E2CBA2CC3D88EC9 -:100010001CBA0C8E0C181BBA1B8E2CBA2CC3588E13 -:100020000C162CBA0C8E1C181BBA1B8E2CBA2CC2A8 -:10003000C88E1C181BBA0B8E0CBA1C8E2CBA2CC284 -:10004000488E0C162CBA0C8E1CBA1C8E2C181BBA9F -:100050002BC1B88E1CBA0C8E0CBA1C8E2C181BBA75 -:100060002BC1388E0CBA0C8E1C162CBA1C8E2C1878 -:100070001BBA2BC0A88E1C162CBA0C8E0C162CBAD0 -:100080001C8E2C181BBA2B9A0CAE0C9A1CAE1C9A08 -:100090002CAE2C2FEDE3CF80C0000000F0D9001370 +:100000001B8E2CBA2CC3588E0C162CBA0C8E1C18B6 +:100010001BBA1B8E2CBA2CC2C88E1C181BBA0B8E96 +:100020000CBA1C8E2CBA2CC2488E0C162CBA0C8E14 +:100030001CBA1C8E2C181BBA2BC1B88E1CBA0C8E85 +:100040000CBA1C8E2C181BBA2BC1388E0CBA0C8E15 +:100050001C162CBA1C8E2C181BBA2BC0A88E1C1672 +:100060002CBA0C8E0C162CBA1C8E2C181BBA2B9A80 +:100070000CAE0C9A1CAE1C9A2CAE2C2FEDE3CF804C +:10008000C00000EBCD40803007E06CF21CEA1C8021 +:1000900001FEB0C33F300CC0B8E06B00E6A800130F :1000A00002F1EC5604010000008001010100010092 -:1000B000005408010D02F1EC56030000000100EBB2 -:1000C000CD40803007E06CF1B0EA1C8001FEB0C387 -:1000D00033300CC0B8E06B434CEA1B0000F60C0652 -:1000E0000A580AC02030172FFC5C6C58ACCF450E64 -:1000F0009C5C6CE3CD8080F80B0B0A5EFD0000D4A5 -:1001000001E06CF1B8EA1C8001FEB0C315300CC0F0 -:1001100098300BE06A434CEA1A0000F40C0B0B2FEA -:10012000FC5C6C58ACCF65D80A0000EBCD40E01801 -:10013000961697E0A06BCE1895E06CF1C0EA1C8093 -:1001400001FEB0C2F9300CC0382FFC5C6C58ACE03A -:100150008400C5301BF60C094BEB1A0066166ACFFB -:1001600050302A0F89F2091068EC090B0A0F8AF443 -:100170000A10680C0AB4AC58ACF9BC020A1E0CF99F -:100180003C000AFE0C001F081526374455626F809C -:1001900093A000E06A434CEA1A00002F6A0F8CF823 -:1001A0000C106818062FC6158CAC8CC8C8E06943C3 -:1001B0004CEA1900002F590F8CF80C106818060033 -:1001C000DCC7001302F1EC560401010000800101BC +:1000B000005408010D02F1EC56030000000100435A +:1000C00048EA1B0000F60C060A580AC02030172F19 +:1000D000FC5C6C58ACCF450E9C5C6CE3CD8080F82A +:1000E0000B0B0A5EFD0000D401E06CF224EA1C80D8 +:1000F00001FEB0C321300CC098300BE06A4348EADF +:100100001A0000F40C0B0B2FFC5C6C58ACCF65D8BC +:100110000A0000EBCD40E018961697E0A06C10188E +:1001200095E06CF22CEA1C8001FEB0C305300CC0D7 +:10013000382FFC5C6C58ACE08400C5301BF60C0911 +:100140004BEB1A0066166ACF50302A0F89F209105D +:1001500068EC090B0A0F8AF40A10680C0AB4AC5850 +:10016000ACF9BC020A1E0CF93C000AFE0C001F0888 +:100170001526374455626F8093A000E06A4348EA31 +:100180001A00002F6A0F8CF80C106818062FC6157D +:100190008CAC8CC8C8E0694348EA1900002F590F9D +:1001A0008CF80C106818062FC60C98324A133C10B5 +:1001B000CC201ACFD1C7B8E0694348EA1900000043 +:1001C0000F3A001302F1EC56040101000080010116 :1001D0000200010000C1C3010D02F1EC5603000052 -:1001E0000001002FC60C98324A133C10CC201ACFC5 -:1001F000D1C7B8E069434CEA1900002D190F8CF8FB -:100200000C106818062FC60C98316A133C10CC20CD -:100210001ACFD1C6A8E06A434CEA1A00002BBA0FE5 -:100220008CF80C106818062FC6158CAC8CC5D8E05D -:1002300069434CEA1900002BA90F8CF80C106818C0 -:10024000062FC60C98305A133C10CC201ACFD1C4BC -:10025000C8E06A434CEA1A00002B1A0F8CF80C1005 -:100260006818062FC6158CAC8CC3F8E06A434CEABC -:100270001A00002B0A0F8CF80C106818062FC615F0 -:100280008CAC8CC328E069434CEA1900002AF90FB2 -:100290008CF80C106818062FC60C98340A133C1002 -:1002A000CC201ACFD1C218E06A434CEA1A00002BC6 -:1002B0005A0F8CF80C106818062FC6158CAC8C15CC -:1002C0009CAC9C15ACACAC15BCACBCC0E8E06A43C3 -:1002D0004CEA1A0000FE3AFF6F0F8CF80C106818F9 -:1002E000062FC6006AE0001302F1EC56040102007A +:1001E0000001002D190F8CF80C106818062FC60C92 +:1001F00098316A133C10CC201ACFD1C6A8E06A43CC +:1002000048EA1A00002BBA0F8CF80C106818062F59 +:10021000C6158CAC8CC5D8E0694348EA1900002BA0 +:10022000A90F8CF80C106818062FC60C98305A13BA +:100230003C10CC201ACFD1C4C8E06A4348EA1A0067 +:10024000002B1A0F8CF80C106818062FC6158CACF2 +:100250008CC3F8E06A4348EA1A00002B0A0F8CF8B6 +:100260000C106818062FC6158CAC8CC328E06943A7 +:1002700048EA1900002AF90F8CF80C106818062FAC +:10028000C60C98340A133C10CC201ACFD1C218E007 +:100290006A4348EA1A00002B5A0F8CF80C106818B1 +:1002A000062FC6158CAC8C159CAC9C15ACACAC1553 +:1002B000BCACBCC0E8E06A4348EA1A0000FE3AFF62 +:1002C0006F0F8CF80C106818062FC6158CAC8C0FAD +:1002D0008C2FFCAE8CEB1C0066168CEB5C00663041 +:1002E0000C29A50055B0001302F1EC5604010200E0 :1002F0000080010103000100007E78010D02F1EC95 -:1003000056030000000100158CAC8C0F8C2FFCAE46 -:100310008CEB1C0066168CEB5C0066300C29A5AAE1 -:100320000C300CE06B434CEA1B0000F76C0092E3CE -:10033000CF80E08001D91080008774EBCD40C020D1 -:100340001DE06CF212EA1C8001FACBFFFF198AB69D -:100350008A199AB69A19ACBA8C3006C0382FF65C56 -:1003600056E067008C58A6C184E06C0080EA1C004F -:1003700000F806000B2F0B178BBA9B0C0C198CBACC -:10038000AC3029FACAFFFFF7D7C008304CFEB0C224 -:1003900049CE61300CC1B830181A99305AF7D7C01D -:1003A00008304CFEB0C26ACF601B8CA7BCBA8C3040 -:1003B0005CBA9C1B8CBAAC3029FACAFFFFF7D7C0D5 -:1003C00008304CFEB0C22ECE60301C2FFDE3CD8035 -:1003D000C00000D421203DE067EE90EA178001FACA -:1003E000CCFFFB0F8BB88B0F9BB89B0FACBACC6EBE -:1003F0001C502C0E9C2F8CFEB0C1C2305CBADCE0CD -:100400006C0080BAECE0660073A6001302F1EC56B3 +:1003000056030000000100AA0C300CE06B4348EAE1 +:100310001B0000F76C0092E3CF80E08001D97C8065 +:10032000008774EBCD40C0201DE06CF27EEA1C809B +:1003300001FACBFFFF198AB68A199AB69A19ACBA94 +:100340008C3006C0382FF65C56E067008C58A6C18A +:1003500084E06C0070EA1C0000F806000B2F0B17FD +:100360008BBA9B0C0C198CBAAC3029FACAFFFFF778 +:10037000D7C008304CFEB0C255CE61300CC1B83089 +:10038000181A99305AF7D7C008304CFEB0C276CF51 +:10039000601B8CA7BCBA8C305CBA9C1B8CBAAC308E +:1003A00029FACAFFFFF7D7C008304CFEB0C23ACED8 +:1003B00060301C2FFDE3CD80C00000D421203DE043 +:1003C00067EEFCEA178001FACCFFFB0F8BB88B0FAE +:1003D0009BB89B0FACBACC6E1C502C0E9C2F8CFE85 +:1003E000B0C1CE305CBADCE06C0080BAECE06600F4 +:1003F0008C3029FACAFFFBF7D6C008304CFEB0C2D9 +:1004000011C031300CC658009436001302F1EC567E :10041000040103000080010104000100006A500192 -:100420000D02F1EC56030000000100008C3029FAA7 -:10043000CAFFFBF7D6C008304CFEB0C205C0313051 -:100440000CC658322CFEB0C4233004C1E85834C165 -:10045000A05844C1805854C160E0650080EA15008E -:1004600000EA04000C2F0C198CBADC08050B8CBABE -:10047000EC3029FACAFFFBF7D6C008304CFEB0C1F9 -:10048000E3CDF02FF45C5458A4CE253018FAC9FF00 -:10049000FC305AF7D6C008304CFEB0C201CD101B5C -:1004A000CCF9DCC007BACC3019FACAFFFCF7D6C0C9 -:1004B00008304CFEB0C1C8CC40E0A027CFE06500BA -:1004C00080EA150000EB3C000C581CC1F1304BFADF -:1004D000CCFFF8CA2C581CC1C1FB3C000B500CFBD4 -:1004E00038000AFB390009FB3A0008E06B8E10EA7D -:1004F0001B8000300CE0A063DB300CFEB0C484FE37 -:10050000B0C492300C2F45AA8C301C2FDDD8222F7E -:10051000470E9CFEB0C146300CCF9B8001542C800E -:1005200001CC8080008DD880008DF8009E360013AD +:100420000D02F1EC56030000000100322CFEB0C4B6 +:100430002F3004C1E85834C1A05844C1805854C179 +:1004400060E0650070EA150000EA04000C2F0C194A +:100450008CBADC08050B8CBAEC3029FACAFFFBF722 +:10046000D6C008304CFEB0C1EFCDF02FF45C54582C +:10047000A4CE253018FAC9FFFC305AF7D6C0083090 +:100480004CFEB0C20DCD101BCCF9DCC007BACC308D +:1004900019FACAFFFCF7D6C008304CFEB0C1D4CC64 +:1004A00040E0A027E5E0650070EA150000EB3C00A5 +:1004B0000C581CC1F1304BFACCFFF8CA2C581CC1A7 +:1004C000C1FB3C000B500CFB38000AFB390009FB58 +:1004D0003A0008E06B8E10EA1B8000300CE0A0644C +:1004E00019300CFEB0C490FEB0C49E300C2F45AA4B +:1004F0008C301C2FDDD8222F470E9CFEB0C152300D +:100500000CCF9B800154408001CCE480008DD880CA +:10051000008DF8EBCD4080201DE06CF23CEA1C80A1 +:1005200001FACBFFFF198AB68A199A006AC500132F :1005300002F1EC56040104000080010105000100F5 -:100540000000E8010D02F1EC56030000000100EB91 -:10055000CD4080201DE06CF1D0EA1C8001FACBFF79 -:10056000FF198AB68A199AB69A19ABBA8B2FCCFEA4 -:10057000B0C12AE067008C30181A99305AF7D7C0FA -:1005800008304CFEB0C19EC031300CC1B81B8CA7E6 -:10059000BCBA8C305CBA9C1B8CBAAC3029FACAFF4E -:1005A000FFF7D7C008304CFEB0C160CEF0E0A069C4 -:1005B000D9F93C0082580CC041322CFEB0C38A30BD -:1005C0001C2FFDE3CD8080EBCD4080201DE06CF240 -:1005D00003EA1C8001FACBFFFF198AB68A199AB682 -:1005E0009A19ACBA8CE067008C30181A99305AF717 -:1005F000D7C008304CFEB0C165C031300CC1B81B4B -:100600008CA7BCBA8C305CBA9C1B8CBAAC3029FA73 -:10061000CAFFFFF7D7C008304CFEB0C127CEF0E0CC -:10062000A069A0F93C0082580CC041322CFEB0C336 -:1006300051301C2FFDE3CD80800000EBCD408018B1 -:100640009730480E99301AE06B008C304CFEB000A9 -:10065000A92E001302F1EC560401050000800101EF +:100540000000E8010D02F1EC56030000000100B6C6 +:100550009A19ABBA8B2FCCFEB0C136E067008C3055 +:10056000181A99305AF7D7C008304CFEB0C1AAC04B +:1005700031300CC1B81B8CA7BCBA8C305CBA9C1B48 +:100580008CBAAC3029FACAFFFFF7D7C008304CFE4E +:10059000B0C16CCEF0E0A06A1BF93C0082580CC0E0 +:1005A00041322CFEB0C396301C2FFDE3CD8080EB92 +:1005B000CD4080201DE06CF26FEA1C8001FACBFF79 +:1005C000FF198AB68A199AB69A19ACBA8CE06700F4 +:1005D0008C30181A99305AF7D7C008304CFEB0C189 +:1005E00071C031300CC1B81B8CA7BCBA8C305CBA5E +:1005F0009C1B8CBAAC3029FACAFFFFF7D7C0083071 +:100600004CFEB0C133CEF0E0A069E2F93C00825864 +:100610000CC041322CFEB0C35D301C2FFDE3CD80F9 +:10062000800000EBCD4080189730480E99301AE0DA +:100630006B008C304CFEB0C145C091E06CF20CEA0E +:100640001C8001FEB0C0C0E3CF80800E9CC0DC00E7 +:100650002BBA001302F1EC560401050000800101E1 :1006600006000100009523010D02F1EC5603000085 -:10067000000100C139C091E06CF1A0EA1C8001FECC -:10068000B0C0B4E3CF80800E9CC0DC30080FB90F3F -:10069000AA0F9B0F8CE0A024B9E3CF9080D70380F2 -:1006A000014F94EBCD40E0201DE067F0B0EA1780E9 -:1006B000011A9B0F8AB68A0F9AB69A300AC09830F0 -:1006C0000893A872A95839C035301997F92FFAE064 -:1006D0006B0080EA1B0000584AC1341699F20A00E8 -:1006E00029F80A07085808CEC172A82FF893A872F3 -:1006F000A8E05886A1CE75E07886A093A8CE3B7678 -:10070000FC580CC43076EC580CC401301C97ECE05B -:100710006600FFBA86354CBA9CE065008C30291A19 -:100720009AF7D5C008304CFEB0C0B2BA8634DCBAF5 -:100730009C30291A9AF7D5C008304CFEB0C0A834B6 -:100740005CBA8C305CBA9C30291A9AF7D5C0083054 -:100750004CFEB0C09D344CBA8C340CBA9C30291A73 -:100760009AF7D5C008304CFEB0C092345CBA8C30D9 -:100770000CBA9C00BA51001302F1EC5604010600B9 +:1006700000010030080FB90FAA0F9B0F8CE0A024D7 +:10068000CFE3CF9080D70380014FA8EBCD40E0208F +:100690001DE067F11CEA1780011A9B0F8AB68A0FCA +:1006A0009AB69A300AC098300893A872A95839C0EF +:1006B00035301997F92FFAE06B0070EA1B000058EB +:1006C0004AC1341699F20A0029F80A07085808CED8 +:1006D000C172A82FF893A872A8E05886A1CE75E041 +:1006E0007886A093A8CE3B76FC580CC43076EC58A4 +:1006F0000CC401301C97ECE06600FFBA86354CBA9A +:100700009CE065008C30291A9AF7D5C008304CFE61 +:10071000B0C0BEBA8634DCBA9C30291A9AF7D5C06C +:1007200008304CFEB0C0B4345CBA8C305CBA9C303B +:10073000291A9AF7D5C008304CFEB0C0A9344CBA7B +:100740008C340CBA9C30291A9AF7D5C008304CFE6C +:10075000B0C09E345CBA8C300CBA9C30291A9AF71F +:10076000D5C008304CFEB0C0932FC70E9CFEB0C061 +:100770003D2FFD00CF2F001302F1EC5604010600BF :100780000080010107000100002A98010D02F1EC30 -:100790005603000000010030291A9AF7D5C008302E -:1007A0004CFEB0C0872FC70E9CFEB0C0312FFDE3BA -:1007B000CF80E0D401201D198BE06A0080EA1A0086 -:1007C00000B4AB198C500CE06CF098EA1C8001FE70 -:1007D000B0C01E2FFDDA0AD421205D1897E066EE26 -:1007E00014EA168001FACCFFFC0C9BB709B928B7B4 -:1007F00009B9286C4C500CFEB0BEEE18953004C1FF -:10080000681B8C401A180A501A1B9C402A180A5060 -:100810002A1BAC403A180A503A1BBC404A180A50EE -:100820004A30AB0A9CFEB0C1CD2FF45854C074308E -:100830004B1A9CC28FCE61300CC148300CC0B8FA44 -:10084000CBFFFCF60C032B305AF60A0C0AEE0C0B0D -:100850000A2FFC584CCF552EC60C9CFEB0BFD8308A -:100860001C2FBDD822D7038000853C80008B28D464 -:1008700001300A585CC041169CC9DF189A149CD8F4 -:10088000020000D401E06BEB88EA1B8001304CE0F1 -:10089000A051CCD80A0000000D88001302F1EC56DC +:1007900056030000000100E3CF80E0D401201D19C2 +:1007A0008BE06A0070EA1A0000B4AB198C500CE0C0 +:1007B0006CF104EA1C8001FEB0C02A2FFDDA0AD4D5 +:1007C00021205D1897E066EE80EA168001FACCFFE2 +:1007D000FC0C9BB709B928B709B9286C4C500CFE22 +:1007E000B0BEFA18953004C1681B8C401A180A5024 +:1007F0001A1B9C402A180A502A1BAC403A180A506F +:100800003A1BBC404A180A504A30AB0A9CFEB0C1A1 +:10081000D92FF45854C074304B1A9CC28FCE61301B +:100820000CC148300CC0B8FACBFFFCF60C032B30DF +:100830005AF60A0C0AEE0C0B0A2FFC584CCF552E18 +:10084000C60C9CFEB0BFE4301C2FBDD822D703805D +:1008500000853C80008B28D401300A585CC04116CA +:100860009CC9DF189A149CD8020000D401E06BEBFD +:10087000F4EA1B8001304CE0A0520AD80A0000EBD9 +:10088000CD40E0201DE06CF26CEA1C8001FACBFF49 +:10089000FF198AB68A199A00B857001302F1EC566C :1008A00004010700008001010800010000BD730180 -:1008B0000D02F1EC56030000000100EBCD40E020FA -:1008C0001DE06CF200EA1C8001FACBFFFF198AB62A -:1008D0008A199AB69A19ACBA8CE0A0687918973040 -:1008E00005C0382FF55C55E066008C58A5C174E052 -:1008F0006C0080EA1C00000A0CF93B0010BA9B2E29 -:100900004C198CBAAC3029FACAFFFFF7D6C00830B0 -:100910005CFEB0BFE1CE71300CC41830181A9930AB -:100920005AF7D6C008305CFEB0C002CF601B8CA165 -:10093000ACBA8C305CBA9C1B8CBAAC3029FACAFFBA -:10094000FFF7D6C008305CFEB0BFC6CE603018FAE4 -:10095000C9FFFF300AF7D6C008305CFEB0BFE8CD53 -:10096000C01B8CA7BCBA8C305CBA9C1B8CBAAC3058 -:1009700029FACAFFFFF7D6C008305CFEB0BFACCC86 -:10098000C0300A300B300CFEB0C276EF3C0082580B -:100990000CC041322CFEB0C1D3301C2FFDE3CD8002 -:1009A000E00000D421202DE066ECC8EA168001FAB0 -:1009B000CCFFFC0D8BB88B0D9BB89B00B49B001338 +:1008B0000D02F1EC56030000000100B69A19ACBA23 +:1008C0008CE0A068BB18973005C0382FF55C55E068 +:1008D00066008C58A5C174E06C0070EA1C00000A28 +:1008E0000CF93B0010BA9B2E4C198CBAAC3029FA8B +:1008F000CAFFFFF7D6C008305CFEB0BFEDCE713046 +:100900000CC41830181A99305AF7D6C008305CFE5B +:10091000B0C00ECF601B8CA1ACBA8C305CBA9C1BF3 +:100920008CBAAC3029FACAFFFFF7D6C008305CFE9B +:10093000B0BFD2CE603018FAC9FFFF300AF7D6C078 +:1009400008305CFEB0BFF4CDC01B8CA7BCBA8C30A5 +:100950005CBA9C1B8CBAAC3029FACAFFFFF7D6C030 +:1009600008305CFEB0BFB8CCC0300A300B300CFE93 +:10097000B0C282EF3C0082580CC041322CFEB0C1A4 +:10098000DF301C2FFDE3CD80E00000D421202DE0DE +:1009900066ED34EA168001FACCFFFC0D8BB88B0DA6 +:1009A0009BB89B0DACBAEC0C9C2FCCFEB0BF423276 +:1009B0002CFEB0C1B53005C0382FF500E698001305 :1009C00002F1EC5604010800008001010900010059 -:1009D00000FDC8010D02F1EC560300000001000DFE -:1009E000ACBAEC0C9C2FCCFEB0BF36322CFEB0C1A2 -:1009F000A93005C0382FF55C5558A5C1D45865CF2E -:100A0000B05875CF905885CF70E0670080EA170026 -:100A1000000A07EF3C0010BACC2E470F8CBADC302E -:100A200029FACAFFFCE06B008C305CFEB0BF66CEDA -:100A300031300CC988E0670080EA1700006EEC5086 -:100A40000C0C9C2F8CFEB0BF07E065008C6EEC5840 -:100A50001CC461E06400FFBAC4354CBADC3029FA2A -:100A6000CAFFFCF7D5C008304CFEB0BF47CE20BA55 -:100A7000C434DCBADC3029FACAFFFCF7D5C0083030 -:100A80004CFEB0BF3BCD60345CBACC305CBADC30DD -:100A900029FACAFFFCF7D5C008304CFEB0BF2ECCF7 -:100AA00090344CBACC3004BAD43029FACAFFFCF7DF -:100AB000D5C008304CFEB0BF21CBC0345CBACCBA34 -:100AC000D43029FACAFFFCF7D5C008304CFEB0BFBD -:100AD00015CB002EC60C9CFEB0BEBE8FE4301800B5 -:100AE0006E1F001302F1EC560401090000800101A1 +:1009D00000FDC8010D02F1EC560300000001005CAF +:1009E0005558A5C1D45865CFB05875CF905885CF0C +:1009F00070E0670070EA1700000A07EF3C0010BAC9 +:100A0000CC2E470F8CBADC3029FACAFFFCE06B0011 +:100A10008C305CFEB0BF72CE31300CC988E067000C +:100A200070EA1700006EEC500C0C9C2F8CFEB0BFCF +:100A300013E065008C6EEC581CC461E06400FFBAE2 +:100A4000C4354CBADC3029FACAFFFCF7D5C00830EF +:100A50004CFEB0BF53CE20BAC434DCBADC3029FA25 +:100A6000CAFFFCF7D5C008304CFEB0BF47CD60349C +:100A70005CBACC305CBADC3029FACAFFFCF7D5C0CE +:100A800008304CFEB0BF3ACC90344CBACC3004BAEB +:100A9000D43029FACAFFFCF7D5C008304CFEB0BFED +:100AA0002DCBC0345CBACCBAD43029FACAFFFCF7DB +:100AB000D5C008304CFEB0BF21CB002EC60C9CFE2A +:100AC000B0BECA8FE43018FAC9FFFA305AF7D5C061 +:100AD00008305CFEB0BF3ECA101BECF9DCC007005A +:100AE0001D23001302F1EC560401090000800101EE :100AF0000A000100006803010D02F1EC560300003A -:100B0000000100FAC9FFFA305AF7D5C008305CFE80 -:100B1000B0BF32CA101BECF9DCC007BAEC3019FACE -:100B2000CAFFFAF7D5C008305CFEB0BEF9C9403044 -:100B300018FAC9FFFA305AF7D5C008305CFEB0BFCA -:100B40001BC8A01BECA1ACBAEC305CBACC1BECBA55 -:100B5000DC3029FACAFFFCF7D5C008305CFEB0BE15 -:100B6000DFFE90FF7A3018FAC9FFFA300AF7D5C0D5 -:100B700008305CFEB0BF00FE90FF6F300A301B30C3 -:100B80000CFEB0C19D301C2FEDD82280008C60EB94 -:100B9000CD4080201DE06CF190EA1C8001FACBFF73 -:100BA000FF198AB68A199AB69A19ABBA8B2FCCFE5E -:100BB000B0BE64E067008C30181A99305AF7D7C07D -:100BC00008305CFEB0BED8C031300CC2081B8CA708 -:100BD000BCBA8C305CBA9C1B8CBAAC3029FACAFF08 -:100BE000FFF7D7C008305CFEB0BE9ACEF0300A30B6 -:100BF0000B300CFEB0C164E0A0670EF93C008258D7 -:100C00000CC041002BEF001302F1EC5604010A0066 +:100B0000000100BAEC3019FACAFFFAF7D5C0083074 +:100B10005CFEB0BF05C9403018FAC9FFFA305AF779 +:100B2000D5C008305CFEB0BF27C8A01BECA1ACBA92 +:100B3000EC305CBACC1BECBADC3029FACAFFFCF70B +:100B4000D5C008305CFEB0BEEBFE90FF7A3018FADC +:100B5000C9FFFA300AF7D5C008305CFEB0BF0CFE02 +:100B600090FF6F300A301B300CFEB0C1A9301C2F33 +:100B7000EDD82280008C60EBCD4080201DE06CF130 +:100B8000FCEA1C8001FACBFFFF198AB68A199AB6D3 +:100B90009A19ABBA8B2FCCFEB0BE70E067008C30D8 +:100BA000181A99305AF7D7C008305CFEB0BEE4C0BE +:100BB00031300CC2081B8CA7BCBA8C305CBA9C1BB1 +:100BC0008CBAAC3029FACAFFFFF7D7C008305CFEF8 +:100BD000B0BEA6CEF0300A300B300CFEB0C170E0D3 +:100BE000A06750F93C0082580CC041322CFEB0C0C6 +:100BF000CB301C2FFDE3CD8080D70380008DB880E3 +:100C0000008C80009506001302F1EC5604010A00E6 :100C1000008001010B00010000D7B8010D02F1ECCA -:100C200056030000000100322CFEB0C0BF301C2F64 -:100C3000FDE3CD8080D70380008DB880008C80EBF1 -:100C4000CD4080201DE06CF206EA1C8001FACBFF4B -:100C5000FF198AB68A199AB69A19ACBA8CE067005D -:100C60008C30181A99305AF7D7C008305CFEB0BEE5 -:100C700095C031300CC1481B8CA7BCBA8C305CBA13 -:100C80009C1BAB1B8C184BBAAB3029FACAFFFFF781 -:100C9000D7C008305CFEB0BE55CED0301C2FFDE36F -:100CA000CD8080EBCD40C01897E06613E8EA1600CF -:100CB0000030180C99304AE06B008C305CFEB0BEFE -:100CC0006DC091E06CF178EA1C8001FEB0BDE8E3F4 -:100CD000CF80C00D8CE06B13E9EA1B0000B68CAE30 -:100CE0008CE3CF90C0D7038000887080008774EBBE -:100CF000CD4080201D1A9C300BB88BB89BE0A066BD -:100D00009D308BBA8BF93C0080BA9CE067008C3038 -:100D1000291A9AF7D7C008305CFEB0BE13C0313034 -:100D20000CC0E8309CBA8C002EE6001302F1EC56A1 +:100C200056030000000100EBCD4080201DE06CF277 +:100C300072EA1C8001FACBFFFF198AB68A199AB6AC +:100C40009A19ACBA8CE067008C30181A99305AF7B0 +:100C5000D7C008305CFEB0BEA1C031300CC1481B0B +:100C60008CA7BCBA8C305CBA9C1BAB1B8C184BBAE3 +:100C7000AB3029FACAFFFFF7D7C008305CFEB0BE20 +:100C800061CED0301C2FFDE3CD8080EBCD40C0186D +:100C900097E06613E4EA16000030180C99304AE039 +:100CA0006B008C305CFEB0BE79C091E06CF1E4EA80 +:100CB0001C8001FEB0BDF4E3CF80C00D8CE06B134F +:100CC000E5EA1B0000B68CAE8CE3CF90C0D7038062 +:100CD00000887080008774EBCD4080201D1A9C3006 +:100CE0000BB88BB89BE0A066DF308BBA8BF93C0069 +:100CF00080BA9CE067008C30291A9AF7D7C0083078 +:100D00005CFEB0BE1FC031300CC0E8309CBA8C30E5 +:100D10000CBA9C30291A9AF7D7C008305CFEB0BED6 +:100D200011CF30301C2FFD00FEBA001302F1EC563B :100D300004010B00008001010C00010000C39001C0 -:100D40000D02F1EC56030000000100300CBA9C309B -:100D5000291A9AF7D7C008305CFEB0BE05CF3030F4 -:100D60001C2FFDE3CD80808001D91080008818EB16 -:100D7000CD4080E067EBF4EA1780010E9B305CE029 -:100D8000A04FAE0E9B308CE0A04FAAE3CF808080B6 -:100D900001AB90EDBC00105F2C5C5C5EFC00003091 -:100DA00009F40B0D0AA19AC0382FF9A19AE04A0163 -:100DB00000C0435C595889CF955C595889C0353F6C -:100DC0008C5EFCF40B1601F40816011428F7E810E9 -:100DD0008B5C59F7E911C9F3EA110A991A300C5ED4 -:100DE000FC0000EBCD40C018971696E1BC0000CD8A -:100DF0002F300BE06A4E74EA1A0000950BF80B15C1 -:100E000018C020D3033FFB8F9B301B8F0BE06B0080 -:100E1000808F0B5C5C580CC020D5033FFC8FBC302E -:100E20003AE06B0280E06C4164EA1C8000E0A05F65 -:100E300027ED3C000C580CC050310C8F0C3FFC8F40 -:100E40002C6C0A6C1B0E9CCACF5B8C00FF4E0013EF +:100D40000D02F1EC56030000000100E3CD8080802D +:100D500001D97C80008818EBCD4080E067EC60EA28 +:100D60001780010E9B305CE0A04FEC0E9B308CE0B6 +:100D7000A04FE8E3CF80808001ABF4EDBC00105FB2 +:100D80002C5C5C5EFC00003009F40B0D0AA19AC0DB +:100D9000382FF9A19AE04A0100C0435C595889CF25 +:100DA000955C595889C0353F8C5EFCF40B1601F4F4 +:100DB0000816011428F7E8108B5C59F7E911C9F3FC +:100DC000EA110A991A300C5EFC0000EBCD40C01805 +:100DD000971696E1BC0000CD2F300BE06A4E70EA0A +:100DE0001A0000950BF80B1518C020D3033FFB8F9A +:100DF0009B301B8F0BE06B00808F0B5C5C580CC032 +:100E000020D5033FFC8FBC303AE06B0280E06C41A0 +:100E100064EA1C8000E0A05F65ED3C000C580CC04B +:100E200050310C8F0C3FFC8F2C6C0A6C1B0E9CCA33 +:100E3000CF5B8CC0413F8CE3CD80C0300CE3CD80D4 +:100E4000C0D7038001CB94EBCD4080006D830013AD :100E500002F1EC5604010C00008001010D000100BC -:100E600000A928010D02F1EC56030000000100C0AA -:100E7000413F8CE3CD80C0300CE3CD80C0D70380F0 -:100E800001CB30EBCD40801897E1BC0000C95F5C1E -:100E90005C580CC020D3033FFC8F9C3FFC8FBCE30D -:100EA000CF8080EBCD40C0201D18961697300C5097 -:100EB0000C34BCE0A056FA302C8D0CE06C4E68EA85 -:100EC0001C00009906E06C4E68EA1C0000780CCD0E -:100ED000AF6E3CE06B4E70EA1B0000970C6E4CE06E -:100EE0006B4E7CEA1B0000970C300CE06B4E88EADE -:100EF0001B0000B68C300CE06B4E74EA1B000097B0 -:100F00000CEF3C0008580CC570301CE06B4E68EAD2 -:100F10001B0000760B970CE06C0080E06B4E68EADB -:100F20001B0000760B970C302CE06B4E68EA1B0020 -:100F300000760B970C0E9C2FCCE06B4E6CEA1B00DE -:100F400000970CE06C4E6CEA1C0000780CEF3B0044 -:100F5000085C3B160C2FCCE06B4E6CEA1B00009734 -:100F60000CEF3C0008E06B4E78EA1B0000970C0089 -:100F7000B064001302F1EC5604010D000080010181 +:100E600000A928010D02F1EC560300000001001852 +:100E700097E1BC0000C95F5C5C580CC020D3033F05 +:100E8000FC8F9C3FFC8FBCE3CF8080EBCD40C0202B +:100E90001D18961697300C500C34BCE0A057383013 +:100EA0002C8D0CE06C4E64EA1C00009906E06C4E40 +:100EB00064EA1C0000780CCDAF6E3CE06B4E6CEA2F +:100EC0001B0000970C6E4CE06B4E78EA1B000097FD +:100ED0000C300CE06B4E84EA1B0000B68C300CE04A +:100EE0006B4E70EA1B0000970CEF3C0008580CC5D5 +:100EF00070301CE06B4E64EA1B0000760B970CE030 +:100F00006C0080E06B4E64EA1B0000760B970C309F +:100F10002CE06B4E64EA1B0000760B970C0E9C2FA6 +:100F2000CCE06B4E68EA1B0000970CE06C4E68EA60 +:100F30001C0000780CEF3B00085C3B160C2FCCE04B +:100F40006B4E68EA1B0000970CEF3C0008E06B4E0C +:100F500074EA1B0000970CE06C0703E06B4E7CEA20 +:100F60001B0000970C6E0CA17CEF3B0008F9EB0016 +:100F70004DB4001302F1EC5604010D000080010194 :100F80000E000100003CE3010D02F1EC56030000ED -:100F9000000100E06C0703E06B4E80EA1B00009745 -:100FA0000C6E0CA17CEF3B0008F9EB110CE81CA0C7 -:100FB00000E06B4E68EA1B0000760B973C6E0CA1BC -:100FC0007C6E4BF9EB110CE81CE001E06B4E68EA1B -:100FD0001B0000760B974CC1B8300CE06B4E78EAE2 -:100FE0001B0000970CE06C0701E06B4E80EA1B00D1 -:100FF00000970C6E0CA17C6E4BF9EB110CE81CE019 -:1010000001E06B4E68EA1B0000760B973CE06C4EEB -:1010100080EA1C0000780CE06B4E68EA1B0000764A -:101020000B978C301C8D0CD503E06C4E74EA1C00C1 -:1010300000780C580CC101E0A002C4580CC0C1FEDD -:10104000CFFFFC400B2FFB500B400CEE5C4240CE20 -:10105000D33FDCC178302C8D0CE06C4E74EA1C0060 -:1010600000780C5BCCC080E06C4E74EA1C00007809 -:101070000C5BECC0313FFCC05834BCE0A0564A3099 -:101080000C2FFDE3CD80C0EBCD40F8201D18951648 -:10109000971496008D53001302F1EC5604010E00D4 +:100F9000000100110CE81CA000E06B4E64EA1B008D +:100FA00000760B973C6E0CA17C6E4BF9EB110CE8B4 +:100FB0001CE001E06B4E64EA1B0000760B974CC10D +:100FC000B8300CE06B4E74EA1B0000970CE06C0725 +:100FD00001E06B4E7CEA1B0000970C6E0CA17C6E4E +:100FE0004BF9EB110CE81CE001E06B4E64EA1B00CE +:100FF00000760B973CE06C4E7CEA1C0000780CE01D +:101000006B4E64EA1B0000760B978C301C8D0CD560 +:1010100003E06C4E70EA1C0000780C580CC101E033 +:10102000A002C4580CC0C1FECFFFFC400B2FFB50E8 +:101030000B400CEE5C4240CED33FDCC178302C8DAF +:101040000CE06C4E70EA1C0000780C5BCCC080E0B9 +:101050006C4E70EA1C0000780C5BECC0313FFCC0A9 +:101060005834BCE0A05688300C2FFDE3CD80C0EB97 +:10107000CD40F8201D1895169714961294109330B1 +:101080000C500C34BCE0A05655301C8B0CE06C00AE +:10109000808B0C001C41001302F1EC5604010E0081 :1010A000008001010F000100008358010D02F1ECE6 -:1010B0005603000000010012941093300C500C34C1 -:1010C000BCE0A05617301C8B0CE06C00808B0C3001 -:1010D0002C8B0CE06C4E68EA1C00009905E06C4E0D -:1010E00068EA1C0000780CCF2EE06C4E70EA1C0001 -:1010F000009907E06C4E7CEA1C00009906300CE079 -:101100006B4E88EA1B0000B68C300CE06B4E74EA24 -:101110001B0000970C5C535803C170E80C1501E8E4 -:101120001CA800E06B4E68EA1B0000760B973CA100 -:1011300074E9E61106E816F801E06C4E68EA1C0056 -:1011400000780C9946C0C8A174E9E61106E816E0DB -:1011500001E06C4E68EA1C0000780C9936E06C07E0 -:1011600001E06B4E80EA1B0000970CE06C4E80EAB9 -:101170001C0000780CE06B4E68EA1B0000760B97B1 -:101180008C301CE06B4E68EA1B0000760B970CD588 -:1011900003E06C4E74EA1C0000780C580CC101E0AE -:1011A000A00222580CC0C1FECFFFFC400B2FFB5009 -:1011B0000B400CEE5C4240003622001302F1EC566C +:1010B00056030000000100302C8B0CE06C4E64EAFB +:1010C0001C00009905E06C4E64EA1C0000780CCF0F +:1010D0002EE06C4E6CEA1C00009907E06C4E78EA3A +:1010E0001C00009906300CE06B4E84EA1B0000B631 +:1010F0008C300CE06B4E70EA1B0000970C5C535870 +:1011000003C170E80C1501E81CA800E06B4E64EA0E +:101110001B0000760B973CA174E9E61106E816F86F +:1011200001E06C4E64EA1C0000780C9946C0C8A12E +:1011300074E9E61106E816E001E06C4E64EA1C0072 +:1011400000780C9936E06C0701E06B4E7CEA1B00DE +:1011500000970CE06C4E7CEA1C0000780CE06B4EB3 +:1011600064EA1B0000760B978C301CE06B4E64EA3F +:101170001B0000760B970CD503E06C4E70EA1C0048 +:1011800000780C580CC101E0A00222580CC0C1FE2E +:10119000CFFFFC400B2FFB500B400CEE5C4240CECF +:1011A000D33FDCC178302C8B0CE06C4E70EA1C0015 +:1011B00000780C5BCCC080001CCF001302F1EC5611 :1011C00004010F00008001011000010000933001B4 -:1011D0000D02F1EC56030000000100CED33FDCC14C -:1011E00078302C8B0CE06C4E74EA1C0000780C5BA1 -:1011F000CCC080E06C4E74EA1C0000780C5BECC044 -:10120000313FFCC05834BCE0A055A8300C2FFDE3A2 -:10121000CD80F8EBCD40C0201D18961697300C50AD -:101220000C34BCE0A05578301C8D0CE06C00808D37 -:101230000C302C8D0CE06C4E68EA1C00009906E026 -:101240006C4E68EA1C0000780CC53E300CE06B4E1A -:1012500074EA1B0000970CE06C0702E06B4E80EA1A -:101260001B0000970C300CE06B4E88EA1B0000B6A8 -:101270008CEF3C0008580CC2A00E9C2FCCE06B4EAB -:101280006CEA1B0000970CE06C4E6CEA1C000078C6 -:101290000CEF3B00085C3B160C2FCCE06B4E6CEA6D -:1012A0001B0000970CEF3C0008E06B4E78EA1B0037 -:1012B00000970C301CE06B4E88EA1B0000B68CE0F7 -:1012C0006C4E84EA1C00009907C0D86E3CE06B4E5F -:1012D0006CEA1B0000970C6E4CE06B00F3040013EB +:1011D0000D02F1EC56030000000100E06C4E70EAD5 +:1011E0001C0000780C5BECC0313FFCC05834BCE004 +:1011F000A055E6300C2FFDE3CD80F8EBCD40C020AC +:101200001D18961697300C500C34BCE0A055B63023 +:101210001C8D0CE06C00808D0C302C8D0CE06C4E25 +:1012200064EA1C00009906E06C4E64EA1C00007839 +:101230000CC53E300CE06B4E70EA1B0000970CE0D2 +:101240006C0702E06B4E7CEA1B0000970C300CE050 +:101250006B4E84EA1B0000B68CEF3C0008580CC2B1 +:10126000A00E9C2FCCE06B4E68EA1B0000970CE0B0 +:101270006C4E68EA1C0000780CEF3B00085C3B16E3 +:101280000C2FCCE06B4E68EA1B0000970CEF3C0083 +:1012900008E06B4E74EA1B0000970C301CE06B4EAC +:1012A00084EA1B0000B68CE06C4E80EA1C000099BA +:1012B00007C0D86E3CE06B4E68EA1B0000970C6ECE +:1012C0004CE06B4E74EA1B0000970C6E0BA17B6E1A +:1012D0004A2F870F8C180AF7EA110B00AB12001384 :1012E00002F1EC5604011000008001011100010020 -:1012F00000878D010D02F1EC560300000001004E45 -:1013000078EA1B0000970C6E0BA17B6E4A2F870FAB -:101310008C180AF7EA110BE81BE0008D3BE06C4EDD -:1013200080EA1C0000780CE06B4E68EA1B00007637 -:101330000B978C301CE06B4E68EA1B0000760B9715 -:101340000CD503E06C4E74EA1C0000780C580CC0FD -:10135000F1C6DD580CC0C1FECFFFFC400B2FFB5087 -:101360000B400CEE5C4240CEE33FDCC178302C8D6C -:101370000CE06C4E74EA1C0000780C5BCCC080E082 -:101380006C4E74EA1C0000780C5BECC0313FFCC072 -:101390005834BCE0A054F4300C2FFDE3CD80C0D411 -:1013A00021189416971496129534BCE0A054C630B8 -:1013B0001C890CE06C0080890C302C890CE06C4E90 -:1013C00068EA1C00009904E06C4E68EA1C00007892 -:1013D0000CFEB0FDA1300CE06B4E88EA1B0000B69D -:1013E0008C300CE06B4E74EA1B0000970CEA0C1575 -:1013F00018C1C0EF3C000C580CC1806E0CA17C00E1 -:10140000E81F001302F1EC560401110000800101F5 +:1012F00000878D010D02F1EC56030000000100E8AB +:101300001BE0008D3BE06C4E7CEA1C0000780CE09A +:101310006B4E64EA1B0000760B978C301CE06B4E22 +:1013200064EA1B0000760B970CD503E06C4E70EA64 +:101330001C0000780C580CC0F1C6DD580CC0C1FE72 +:10134000CFFFFC400B2FFB500B400CEE5C4240CE1D +:10135000E33FDCC178302C8D0CE06C4E70EA1C0051 +:1013600000780C5BCCC080E06C4E70EA1C0000780A +:101370000C5BECC0313FFCC05834BCE0A0553230AF +:101380000C2FFDE3CD80C0D421189416971496122B +:101390009534BCE0A05504301C890CE06C008089B9 +:1013A0000C302C890CE06C4E64EA1C00009904E0BF +:1013B0006C4E64EA1C0000780CFEB0FDA1300CE01D +:1013C0006B4E84EA1B0000B68C300CE06B4E70EA6A +:1013D0001B0000970CEA0C1518C1C0EF3C000C581C +:1013E0000CC1806E0CA17CE81CA800893C6E0CA18D +:1013F0007C6E2BF9EB110CE81CB801894CC038004D +:101400004FC1001302F1EC560401110000800101EC :1014100012000100001246010D02F1EC560300001B -:10142000000100E81CA800893C6E0CA17C6E2BF921 -:10143000EB110CE81CB801894CC038FECFFFFC68EA -:101440007CEDBC0003CFB2308C89BCC0F86E0BA120 -:101450007B6E2CF7EC110B5C55F7E510BBEF3C00F5 -:101460000C184BE81BA000893B6C0B6C2C5C550ADC -:101470009A5C555805C040ED39000CC0283009A1D0 -:101480007BF7EC110BF7EA10BBF7E910CBED3C0052 -:101490000C184BE81BE000894BEF3C000C580CC3C8 -:1014A000106E1CE06B4E70EA1B0000970CC1386890 -:1014B0007CEDBC0000C0F2685CE06B4E70EA1B0083 -:1014C00000760BB68CE06C4E70EA1C0000780B2F97 -:1014D000FB990B687CEDBC0003CEB2687CEDBC00D0 -:1014E00000C422685CE06B4E70EA1B0000760BB60D -:1014F0008CE06C4E70EA1C0000780B2FFB990BC33C -:10150000386E1CE06B4E6CEA1B0000970C6E2CE0F2 -:101510006B4E78EA1B0000970CC228E06C4E78EA0C -:101520001C000000CF28001302F1EC560401120049 +:10142000000100FECFFFFC687CEDBC0003CFB230B2 +:101430008C89BCC0F86E0BA17B6E2CF7EC110B5C99 +:1014400055F7E510BBEF3C000C184BE81BA00089DA +:101450003B6C0B6C2C5C550A9A5C555805C040EDF2 +:1014600039000CC0283009A17BF7EC110BF7EA100A +:10147000BBF7E910CBED3C000C184BE81BE00089F2 +:101480004BEF3C000C580CC3106E1CE06B4E6CEA2A +:101490001B0000970CC138687CEDBC0000C0F268EE +:1014A0005CE06B4E6CEA1B0000760BB68CE06C4E79 +:1014B0006CEA1C0000780B2FFB990B687CEDBC00DC +:1014C00003CEB2687CEDBC0000C422685CE06B4EC9 +:1014D0006CEA1B0000760BB68CE06C4E6CEA1C00CC +:1014E00000780B2FFB990BC3386E1CE06B4E68EA3B +:1014F0001B0000970C6E2CE06B4E74EA1B000097EB +:101500000CC228E06C4E74EA1C0000780C580CC128 +:10151000B0687CEDBC0001C172E06C4E68EA1C0052 +:1015200000780C002DD1001302F1EC5604011200DA :10153000008001011300010000ADFD010D02F1EC7E -:1015400056030000000100780C580CC1B0687CED17 -:10155000BC0001C172E06C4E6CEA1C0000780C19F2 -:101560008CE06B4E6CEA1B0000760A2FFA970A5C3F -:101570005C896CE06C4E78EA1C0000780B201B99AB -:101580000B687CEDBC0003CDC2308C89BCED3C0007 -:101590000C580CC1E06C1CE06B4E70EA1B0000970D -:1015A0000C687CEDBC0004C463687CEDBC0000CF1B -:1015B00092685CE06B4E70EA1B0000760BB68CE024 -:1015C0006C4E70EA1C0000780B2FFB990BCEAB6CB5 -:1015D0001CE06B4E6CEA1B0000970C6C2CE06B4E11 -:1015E00078EA1B0000970CC228E06C4E78EA1C00D9 -:1015F00000780C580CC1B0687CEDBC0001C172E0F1 -:101600006C4E6CEA1C0000780C198CE06B4E6CEA96 -:101610001B0000760A2FFA970A5C5C896CE06C4E1E -:1016200078EA1C0000780B201B990B687CEDBC004D -:1016300004CDC2687CEDBC000AC062E06C04008985 -:10164000BC3FFCD822687C008F6A001302F1EC5684 +:1015400056030000000100198CE06B4E68EA1B0096 +:1015500000760A2FFA970A5C5C896CE06C4E74EA9C +:101560001C0000780B201B990B687CEDBC0003CDA0 +:10157000C2308C89BCED3C000C580CC1E06C1CE006 +:101580006B4E6CEA1B0000970C687CEDBC0004C439 +:1015900063687CEDBC0000CF92685CE06B4E6CEA47 +:1015A0001B0000760BB68CE06C4E6CEA1C000078D9 +:1015B0000B2FFB990BCEAB6C1CE06B4E68EA1B004B +:1015C00000970C6C2CE06B4E74EA1B0000970CC269 +:1015D00028E06C4E74EA1C0000780C580CC1B0680E +:1015E0007CEDBC0001C172E06C4E68EA1C00007822 +:1015F0000C198CE06B4E68EA1B0000760A2FFA97F4 +:101600000A5C5C896CE06C4E74EA1C0000780B206C +:101610001B990B687CEDBC0004CDC2687CEDBC005E +:101620000AC062E06C040089BC3FFCD822687CE2FE +:101630001C0300580CC0A0683CEC1C8000893CE0F6 +:101640006C030089BC3FFC009EFA001302F1EC56CB :1016500004011300008001011400010000B9D5014C -:101660000D02F1EC56030000000100E21C030058DB -:101670000CC0A0683CEC1C8000893CE06C03008935 -:10168000BC3FFCD82234BCE0A053B0300CD8228040 -:1016900001BB388001BB7CE06C4E68EA1C0000781E -:1016A0000C787CE21C0030580C5F1C5C5C5EFCD447 -:1016B00031202D1897E0651A8CEA1500008ACC16A7 -:1016C0000CAA4C8ADC160CAA5C0BEC599CC0940B3F -:1016D000EC2FFCAAEC0E9CE0A02464EAEB013C3069 -:1016E00016EA1643FA0E9C0C9BE0A012DDE0830183 -:1016F00031EAF401F4089C0C9BE0A012D5E08301D0 -:10170000290BEC599CE08501258ACCE04C00AFE028 -:101710008501200E9C089BE0A01080E06400C4EAD4 -:10172000140000892CEB4701F4E0A0243BBFDBE070 -:1017300068999BEA189999E0699999EA193FC9E073 -:10174000A0244EC063EAEA013CE0A0126318970BA4 -:101750009C580CC061EB4701F8EB4701FCC4A8683A -:1017600006FC133FF00E9CE0A0241C00D79300134E +:101660000D02F1EC56030000000100D82234BCE06A +:10167000A053EE300CD8228001BB9C8001BBE0E07F +:101680006C4E64EA1C0000780C787CE21C00305838 +:101690000C5F1C5C5C5EFCD431202D1897E0651A51 +:1016A00088EA1500008ACC160CAA4C8ADC160CAA13 +:1016B0005C0BEC599CC0940BEC2FFCAAEC0E9CE04C +:1016C000A0247AEAEB013C3016EA1643FA0E9C0C91 +:1016D0009BE0A012F3E0830131EAF401F4089C0CD2 +:1016E0009BE0A012EBE08301290BEC599CE0850103 +:1016F000258ACCE04C00AFE08501200E9C089BE0E1 +:10170000A01096E06400B4EA140000892CEB4701B5 +:10171000F4E0A02451BFDBE068999BEA189999E0B6 +:10172000699999EA193FC9E0A02464C063EAEA0113 +:101730003CE0A0127918970B9C580CC061EB470154 +:10174000F8EB4701FCC4A86806FC133FF00E9CE0D0 +:10175000A02432149016910C9CE0A0242D1498160D +:1017600099300A069BE0A0225500980033880013A8 :1017700002F1EC5604011400008001011500010083 -:1017800000D36D010D02F1EC5603000000010014BE -:101790009016910C9CE0A0241714981699300A0614 -:1017A0009BE0A0223F00980299E0A02384149016A9 -:1017B00091EAFC01F80C9BE0A01106E0A0240400D3 -:1017C000980299E0A02262E0A01236EB4C01F86882 -:1017D00016E0A023F9149016910C9CE0A023F414B9 -:1017E000981699300A069BE0A0221C00980299E006 -:1017F000A0236114921693EAFC01FC0C9BE0A0105C -:10180000E3E0A023E104980699E0A0223FE0A012C3 -:1018100013EB4C01FC8ADCE04C03E9C185EAFC01D6 -:10182000FC0BABEA0B002BF74C01540BAC2FFCAAC2 -:10183000AC0BAC594CC031300CAAAC0BBC594CC0F1 -:10184000440BBC2FFCAABC300CAA5C0B860C90EAA3 -:101850000000210B9C594CC2716374089CE0A023CA -:10186000B314981699EAEA0124E0A021DBEAEB011F -:1018700024089C089BE0A010A7E0A023A5149816BC -:1018800099EAEA012CE0A021CDEAEB012CE2FC0070 -:1018900016DA001302F1EC56040115000080010174 +:1017800000D36D010D02F1EC5603000000010002D0 +:1017900099E0A0239A14901691EAFC01F80C9BE0C2 +:1017A000A0111CE0A0241A00980299E0A02278E081 +:1017B000A0124CEB4C01F86816E0A0240F14901610 +:1017C000910C9CE0A0240A14981699300A069BE01C +:1017D000A0223200980299E0A0237714921693EA8F +:1017E000FC01FC0C9BE0A010F9E0A023F704980694 +:1017F00099E0A02255E0A01229EB4C01FC8ADCE024 +:101800004C03E9C185EAFC01FC0BABEA0B002BF7AA +:101810004C01540BAC2FFCAAAC0BAC594CC0313072 +:101820000CAAAC0BBC594CC0440BBC2FFCAABC305E +:101830000CAA5C0B860C90EA0000210B9C594CC250 +:10184000716374089CE0A023C914981699EAEA0110 +:1018500024E0A021F1EAEB0124089C089BE0A01001 +:10186000BDE0A023BB14981699EAEA012CE0A02160 +:10187000E3EAEB012CE2FC00D4E0A023AF149816BD +:1018800099EAEA0134E0A021D7EAEB0134E347000A +:101890002EF4001302F1EC56040115000080010142 :1018A000160001000046A6010D02F1EC56030000EF -:1018B00000010000D4E0A0239914981699EAEA01E7 -:1018C00034E0A021C1EAEB0134E347005C0E9CE068 -:1018D000A0238CEAE80124E0A021EAEAEB01240E2F -:1018E0009C0E9BE0A01082E0A02380EAE8012CE09F -:1018F000A021DE14921693EAE3012CF5D6C0080B62 -:101900009B0A9C2A4CC99DE34C00D4E0A0236EEABC -:10191000E80134E0A021CC14961697EAE70134EAF6 -:10192000FC01FC833C8ACCEA00001BF75C00AC0B9A -:101930009C594CC0440B9C2FFCAA9C0B9CE0A02300 -:10194000C714901691EAEA012400980299E0A023B6 -:1019500001EAEB013C14981699E0A022BEBB1B04DF -:101960009A069B00980299E0A022F4BB08E0A0210F -:101970006BEAEB01440C9A0E9B00980299E0A022BE -:10198000E9EAEB014C0B8C2FFCAA8C300C0B8B5929 -:101990004BC021AA8CAA4C2FEDD83A80015990D681 -:1019A00031202D30033007300C501C3005500CE036 -:1019B000661A8C00D9F1001302F1EC5604011600EE +:1018B000000100005C0E9CE0A023A2EAE80124E005 +:1018C000A02200EAEB01240E9C0E9BE0A01098E001 +:1018D000A02396EAE8012CE0A021F414921693EAE2 +:1018E000E3012CF5D6C0080B9B0A9C2A4CC99DE34A +:1018F0004C00D4E0A02384EAE80134E0A021E21403 +:10190000961697EAE70134EAFC01FC833C8ACCEAAC +:1019100000001BF75C00AC0B9C594CC0440B9C2F87 +:10192000FCAA9C0B9CE0A023DD14901691EAEA012E +:101930002400980299E0A02317EAEB013C149816C2 +:1019400099E0A022D4BB1B049A069B00980299E060 +:10195000A0230ABB08E0A02181EAEB01440C9A0E07 +:101960009B00980299E0A022FFEAEB014C0B8C2F20 +:10197000FCAA8C300C0B8B594BC021AA8CAA4C2F83 +:10198000EDD83A800159A4D631202D3003300730EC +:101990000C501C3005500CE0661A88EA1600000D49 +:1019A000925942E08101300DBC585CE085012C4029 +:1019B0003C301B0078C1001302F1EC560401160004 :1019C000008001011700010000F91D010D02F1EC7A -:1019D00056030000000100EA1600000D925942E093 -:1019E0008101300DBC585CE085012C403C301BE08F -:1019F000A01190E0830126ECE00144E068999AEAA6 -:101A0000189999E0699999EA193FA9009A029BE00F -:101A1000A0231EC062E064126FEA143B03C248E0D8 -:101A200068999AEA189999E0699999EA193FA90081 -:101A30009A029BE0A0230AC133009A029BE06866E9 -:101A400066EA186666E0696666EA193FE6E0A02283 -:101A5000FFC062E0649BA6EA143B44C058E064CC3B -:101A6000CDEA143DCC0DAB169C201C580CC0242E86 -:101A7000CC204B580BC0242ECBEC0C002CF8FC01D6 -:101A800054EC0B002BF6FB0154E0A00EFDE0A0226D -:101A9000BFBFDBE0A010F4E06BC290EA1B3CF5E0B6 -:101AA000A01138C143ECEA014CBFDB149016910839 -:101AB0009CE0A022AD00980299E0A022C9C072F774 -:101AC000D2C0080D8C201CC3CD18935C535813E072 -:101AD0008500B3300BC088006432001302F1EC566D +:1019D00056030000000100E0A011A6E0830126EC00 +:1019E000E00144E068999AEA189999E0699999EABE +:1019F000193FA9009A029BE0A02334C062E0641260 +:101A00006FEA143B03C248E068999AEA189999E092 +:101A1000699999EA193FA9009A029BE0A02320C185 +:101A200033009A029BE0686666EA186666E06966BB +:101A300066EA193FE6E0A02315C062E0649BA6EACF +:101A4000143B44C058E064CCCDEA143DCC0DAB1639 +:101A50009C201C580CC0242ECC204B580BC0242E8C +:101A6000CBEC0C002CF8FC0154EC0B002BF6FB012A +:101A700054E0A00F13E0A022D5BFDBE0A0110AE0E4 +:101A80006BC290EA1B3CF5E0A0114EC143ECEA01A9 +:101A90004CBFDB14901691089CE0A022C300980272 +:101AA00099E0A022DFC072F7D2C0080D8C201CC3C1 +:101AB000CD18935C535813E08500B3300BC088EC0D +:101AC0000B001CF91C00AC18075C772FFB5C7B59E2 +:101AD0004BCF75403CE0A000364E001302F1EC56AF :101AE000040117000080010118000100006EF601DA -:101AF0000D02F1EC56030000000100EC0B001CF994 -:101B00001C00AC18075C772FFB5C7B594BCF7540F2 -:101B10003CE0A0228FE0689204EA186FB0E06911FF -:101B200027EA193F91E0A021FCE0A010BB18945CCB -:101B3000770E9CE0A022F0E068A9FCEA18D2F1E060 -:101B400069624DEA193F50E0A021EBE0A010AA081D -:101B50009BE0A00F6F18940D8A149C201C580CC099 -:101B6000242ECC0D9B142B580BC0242ECBEC0C0038 -:101B70002C783CEC0B002B763BE0A00E97FC1BBFB7 -:101B800080E0A00F57E0A02255E0681EB8EA18EBED -:101B900085E069B851EA193FBEE0A021FFE0A0103E -:101BA000811897089BE0A010C7C0333007C1480ECA -:101BB0009C0E9BE0A00F3E1893089C089BE0A00F92 -:101BC00039069BE0A00E72E0A02234E0A05176E03E -:101BD000A01068501C401B0E9CE0A00F9F0DCBEC8A -:101BE0000B002BF74C01A40DCC2FFCACCC0DCC5929 -:101BF0004CC031300CACCC0DDC594C004BAB00135D +:101AF0000D02F1EC5603000000010022A5E06892FF +:101B000004EA186FB0E0691127EA193F91E0A022BA +:101B100012E0A010D118945C770E9CE0A02306E0A0 +:101B200068A9FCEA18D2F1E069624DEA193F50E079 +:101B3000A02201E0A010C0089BE0A00F8518940D22 +:101B40008A149C201C580CC0242ECC0D9B142B589E +:101B50000BC0242ECBEC0C002C783CEC0B002B762D +:101B60003BE0A00EADFC1BBF80E0A00F6DE0A0220B +:101B70006BE0681EB8EA18EB85E069B851EA193FD6 +:101B8000BEE0A02215E0A010971897089BE0A010D7 +:101B9000DDC0333007C1480E9C0E9BE0A00F5418E7 +:101BA00093089C089BE0A00F4F069BE0A00E88E0E6 +:101BB000A0224AE0A051B4E0A0107E501C401B0EB1 +:101BC0009CE0A00FB50DCBEC0B002BF74C01A40D46 +:101BD000CC2FFCACCC0DCC594CC031300CACCC0D66 +:101BE000DC594CC0440DDC2FFCACDC3007C0B85CC9 +:101BF00077EC07002CF8FC01A40A9B00A651001307 :101C000002F1EC56040118000080010119000100E6 -:101C1000002E4D010D02F1EC56030000000100C042 -:101C2000440DDC2FFCACDC3007C0B85C77EC07005F -:101C30002CF8FC01A40A9BE0A00EB818952FF70D14 -:101C4000DCF8071900CF33E0A010D01897FC1C4136 -:101C5000200A9BE0A00F000E9BE0A00F71E0A021E6 -:101C6000FBE068999AEA189999E0699999EA193F0D -:101C7000B9E0A02168E0A01027500CC048300CAC9F -:101C8000CCACDC400CC028300C2FEDDC32D703800C -:101C9000015D7080015D7480015E188001BBBC80B5 -:101CA000015C22D531189014923004300530013097 -:101CB000063007C2685943C02521430E9CE0A0109E -:101CC000AB089BE0A00E721894E0030023660C0A98 -:101CD0009BE0A00E6B18950E9CE0A0109D660BE09B -:101CE000A00EBA029BE0A00E611891EE07024CE034 -:101CF000A010920C9BE0A00E5918962FF75C571B72 -:101D0000FC1837C0941BF304230E032FF35803CDA4 -:101D1000342EC3CD4B089C089BE0A00E9D18970065 -:101D20001B2B001302F1EC56040119000080010185 +:101C1000002E4D010D02F1EC56030000000100E022 +:101C2000A00ECE18952FF70DDCF8071900CF33E082 +:101C3000A010E61897FC1C41200A9BE0A00F160E8E +:101C40009BE0A00F87E0A02211E068999AEA18991A +:101C500099E0699999EA193FB9E0A0217EE0A010C6 +:101C60003D500CC048300CACCCACDC400CC0283033 +:101C70000C2FEDDC32D70380015D8480015D88800C +:101C8000015E2C8001BC2080015C36D53118901497 +:101C90009230043005300130063007C2685943C025 +:101CA0002521430E9CE0A010C1089BE0A00E8818DF +:101CB00094E0030023660C0A9BE0A00E8118950EA9 +:101CC0009CE0A010B3660BE0A00ED0029BE0A00E3B +:101CD000771891EE07024CE0A010A80C9BE0A00E34 +:101CE0006F18962FF75C571BFC1837C0941BF30432 +:101CF000230E032FF35803CD342EC3CD4B089C087D +:101D00009BE0A00EB318971BFCE0A010790C9BE0A1 +:101D1000A00EAC0E9BE0A00DE5E0A021A7E06800BE +:101D200093DA001302F1EC5604011900008001015E :101D30001A00010000BB86010D02F1EC5603000001 -:101D40000001001BFCE0A010630C9BE0A00E960EAF -:101D50009BE0A00DCFE0A02191E068ED8DEA18A0F6 -:101D6000B5E069C6F7EA193EB0E0A01FE91496167F -:101D700097089C0A9BE0A00E8118951BFCE0A01020 -:101D800047029BE0A00E7A0A9BE0A00DB3E0A021E1 -:101D9000750C980E99E0A02125E0A00FA7D93280FC -:101DA000013AF4800159F880015C9CEBCD40FE18AB -:101DB00094169330075804C0342EC4C0485944C008 -:101DC000252144300630053002C0C8E06B126FEAAE -:101DD0001B3B03029CE0A00FD3C0332FF55C752F93 -:101DE000F2E803010B5C52069C201C1832C264040A -:101DF0000B2FFB580BC0342ECBC048594BC02521AC -:101E00004B169C2FFC594CC025214CE06A1A8CEAD9 -:101E10001A0000F40C002C783CF40B002A743BE010 -:101E2000A00D681891E06B126EEA1BBB03E0A00FD7 -:101E3000B3CCD22FF65C76CD4B2FFB580BC0242EA3 -:101E4000CBE06A0030C8001302F1EC5604011A001E +:101D4000000100ED8DEA18A0B5E069C6F7EA193E7A +:101D5000B0E0A01FFF14961697089C0A9BE0A00E07 +:101D60009718951BFCE0A0105D029BE0A00E900A66 +:101D70009BE0A00DC9E0A0218B0C980E99E0A0215A +:101D80003BE0A00FBDD93280013B0880015A0C8096 +:101D9000015CB0EBCD40FE1894169330075804C098 +:101DA000342EC4C0485944C0252144300630053083 +:101DB00002C0C8E06B126FEA1B3B03029CE0A00F5D +:101DC000E9C0332FF55C752FF2E803010B5C520676 +:101DD0009C201C1832C264040B2FFB580BC0342EFD +:101DE000CBC048594BC025214B169C2FFC594CC0E9 +:101DF00025214CE06A1A88EA1A0000F40C002C78BD +:101E00003CF40B002A743BE0A00D7E1891E06B12AD +:101E10006EEA1BBB03E0A00FC9CCD22FF65C76CDD7 +:101E20004B2FFB580BC0242ECBE06A1A88EA1A000D +:101E300000F404002C783CF40B002A743BE0A00D65 +:101E400063E0A000EF91001302F1EC5604011A00C8 :101E5000008001011B00010000043D010D02F1ECB6 -:101E6000560300000001001A8CEA1A0000F4040076 -:101E70002C783CF40B002A743BE0A00D4DE0A0212F -:101E80000FBFDBE0A00F4418945C7558B5C125E086 -:101E90006BC290EA1B3D75E0A00F84C0B3E06BCC31 -:101EA000CDEA1B3ECC089CE0A00F88C0323017C1A1 -:101EB000585C7658B6C125E06BC290EA1B3D7508A8 -:101EC0009CE0A00F6FC0A3E06BCCCDEA1B3ECC081A -:101ED0009CE0A00F73C02230270E9C5C5CE3CD8099 -:101EE000FED70380015D34800139A480013A388037 -:101EF000013A50EBCD42FF1895169714931091308C -:101F00000230063004C0E8401C5C54081C580CC069 -:101F1000240E0CEA0C032C049BE0A00D6B18922FEE -:101F2000F4E6041800CF13069CE0A00F83189B046E -:101F30009CE0A00E29830C3004C1B8401B5C5408FF -:101F40009C162C580CC0240E0CEA0C0022620C6467 -:101F50000BE0A00CE11890620C640BE0A00CDC001C -:101F60009BE0A00D9D0C9B0018D3001302F1EC56D2 +:101E6000560300000001002125BFDBE0A00F5A1837 +:101E7000945C7558B5C125E06BC290EA1B3D75E0D6 +:101E8000A00F9AC0B3E06BCCCDEA1B3ECC089CE01F +:101E9000A00F9EC0323017C1585C7658B6C125E0FD +:101EA0006BC290EA1B3D75089CE0A00F85C0A3E0C3 +:101EB0006BCCCDEA1B3ECC089CE0A00F89C0223041 +:101EC000270E9C5C5CE3CD80FED70380015D4880DB +:101ED0000139B880013A4C80013A64EBCD42FF18D9 +:101EE00095169714931091300230063004C0E840E4 +:101EF0001C5C54081C580CC0240E0CEA0C032C0467 +:101F00009BE0A00D8118922FF4E6041800CF130671 +:101F10009CE0A00F99189B049CE0A00E3F830C301E +:101F200004C1B8401B5C54089C162C580CC0240EED +:101F30000CEA0C0022620C640BE0A00CF718906213 +:101F40000C640BE0A00CF2009BE0A00DB30C9BE036 +:101F5000A00D5A18962FF4E6041800CE43069CE014 +:101F6000A00F72189B0C9C00AE0F001302F1EC56F0 :101F700004011B00008001011C000100001015017C -:101F80000D02F1EC56030000000100E0A00D441822 -:101F9000962FF4E6041800CE43069CE0A00F5C18D0 -:101FA0009B0C9CE0A00E0240AB970CE3CF82FF801D -:101FB0000135AC800137348001368880013AC88011 -:101FC00001381CD401FEB0B4812D5C198C580CC2B0 -:101FD000C0E06C43E0EA1C0000785BF72A0022585E -:101FE0001AC0652F3B178B581BC025DA0A787BF780 -:101FF0002A0022581AC0552F3B178B581BCF7478D4 -:102000006CF92B0022581BC205F93B000D581BC16F -:10201000C5F92B0014584BC0512D8C980C581CCE70 -:1020200064585BC121DA0A300CC0C8E06B43E0EAB7 -:102030001B0000F60C032B2F3B178B581BCD742F66 -:10204000FC5C6C58BCCF35D80A0000D401300AE0E3 -:10205000A032FAD802D703800182B8D401300AE056 -:10206000A0334CD802D7038001836CD401300AE03E -:10207000A0339ED802D70380018420EBCD40801886 -:102080009BF73C000D585CE084017600F16800137A +:101F80000D02F1EC56030000000100E0A00E184025 +:101F9000AB970CE3CF82FF800135C08001374880CA +:101FA00001369C80013ADC80013830D401FEB0B4A7 +:101FB0008D2D5C198C580CC2C0E06C43DCEA1C000F +:101FC00000785BF72A0022581AC0652F3B178B5800 +:101FD0001BC025DA0A787BF72A0022581AC0552F31 +:101FE0003B178B581BCF74786CF92B0022581BC2FF +:101FF00005F93B000D581BC1C5F92B0014584BC007 +:10200000512D8C980C581CCE64585BC121DA0A30D3 +:102010000CC0C8E06B43DCEA1B0000F60C032B2F5E +:102020003B178B581BCD742FFC5C6C58BCCF35D83C +:102030000A0000D401300AE0A03338D802D7038068 +:1020400001831CD401300AE0A0338AD802D7038070 +:102050000183D0D401300AE0A033DCD802D703805A +:10206000018484EBCD4080189BF73C000D585CE068 +:10207000840176F7290004F73C000DF72A00005C84 +:102080005A589AF9BA0205FE0A001A00C44700130A :1020900002F1EC5604011C00008001011D0001004A -:1020A000007AAD010D02F1EC56030000000100F7CB -:1020B000290004F73C000DF72A00005C5A589AF9F1 -:1020C000BA0205FE0A001A94CA140F0014005A003E -:1020D000A000E601640678028E0216026EE06A290C -:1020E00044EA1A0000F80C1006180A762CF80904C5 -:1020F0001CF55C00AC762CF738000C1208F80804CC -:102100001CF55C00AE762CF738000CF2080019F8CC -:1021100009041CF55C00B02F3B178C2FFCB68CE338 -:10212000CF8080E06A2944EA1A0000F80C100618F3 -:102130000A762CF809041CF55C00CC762CF73800E4 -:102140000C1208F808041CF55C00CE762CF7380059 -:102150000CF2080019F809041CF55C00D02F3B179D -:102160008C2FFCB68CE3CF8080E06A2944EA1A0009 -:1021700000F80C1006180A762CF809041CF55C000F -:10218000EC762CF738000C1208F808041CF55C00FB -:10219000EE762CF738000CF2080019F809041CF54B -:1021A0005C00F02F3B178C2FFCB68CE3CF808000B7 -:1021B000F0E3001302F1EC5604011D000080010160 +:1020A000007AAD010D02F1EC56030000000100942E +:1020B000CA140F0014005A00A000E601640678025A +:1020C0008E0216026EE06A2940EA1A0000F80C102F +:1020D00006180A762CF809041CF55C00AC762CF77F +:1020E00038000C1208F808041CF55C00AE762CF7DA +:1020F00038000CF2080019F809041CF55C00B02F38 +:102100003B178C2FFCB68CE3CF8080E06A2940EA35 +:102110001A0000F80C1006180A762CF809041CF5B1 +:102120005C00CC762CF738000C1208F808041CF57B +:102130005C00CE762CF738000CF2080019F8090480 +:102140001CF55C00D02F3B178C2FFCB68CE3CF80A6 +:1021500080E06A2940EA1A0000F80C1006180A7696 +:102160002CF809041CF55C00EC762CF738000C12F6 +:1021700008F808041CF55C00EE762CF738000CF229 +:10218000080019F809041CF55C00F02F3B178C2F90 +:10219000FCB68CE3CF8080F2081501762A100A94F1 +:1021A0000A580AC131762AF73E000C120EF40E00CE +:1021B0002667001302F1EC5604011D0000800101A6 :1021C0001E00010000EF66010D02F1EC5603000055 -:1021D000000100F2081501762A100A940A580AC173 -:1021E00031762AF73E000C120EF40E041A580AC07B -:1021F000B1762AF73E000CF20E001EF40E041A58B7 -:102200000AE08002B2E06A2944EA1A0000F40C00F5 -:102210003A762CF808040CA96CF54C0084762CF75F -:1022200038000C1208F808041CF4F800841808F5AB -:10223000480084762CF738000CF2080019F80904DD -:102240001CF55C00882F3B178C2FFCB68CE3CF80ED -:1022500080E06A2944EA1A0000F80C1012180A7685 -:102260002CF809041CB40C762CF738000C1208F872 -:1022700008041CB41C762CF738000CF2080018F87F -:1022800008041CB42C762CF738000C303E1297F062 -:102290000E0347F807041CB43C762CF738000CF208 -:1022A000080028F808041CB44C762CF738000C30D1 -:1022B0005E1297F00E0347F807041CB45C762CF707 -:1022C00038000C306E1297F00E0347F807041CB468 -:1022D0006C762C00AA67001302F1EC5604011E0074 +:1021D000000100041A580AC0B1762AF73E000CF23A +:1021E0000E001EF40E041A580AE08002B2E06A29BA +:1021F00040EA1A0000F40C003A762CF808040CA906 +:102200006CF54C0084762CF738000C1208F80804A2 +:102210001CF4F800841808F5480084762CF7380080 +:102220000CF2080019F809041CF55C00882F3B1714 +:102230008C2FFCB68CE3CF8080E06A2940EA1A003C +:1022400000F80C1012180A762CF809041CB40C764D +:102250002CF738000C1208F808041CB41C762CF774 +:1022600038000CF2080018F808041CB42C762CF77F +:1022700038000C303E1297F00E0347F807041CB4E8 +:102280003C762CF738000CF2080028F808041CB43F +:102290004C762CF738000C305E1297F00E0347F89E +:1022A00007041CB45C762CF738000C306E1297F0E3 +:1022B0000E0347F807041CB46C762CF738000C307A +:1022C0007E1297F00E0347F807041CB47C762CF7B7 +:1022D00038000C00B4AC001302F1EC5604011E00EF :1022E000008001011F0001000050DD010D02F1EC32 -:1022F00056030000000100F738000C307E1297F002 -:102300000E0347F807041CB47C762CF738000CF257 -:10231000080039F809041C2F0AB40C2F3B178C2F26 -:10232000FCB68CE3CF8080E06A2944EA1A0000F40E -:102330000C003A762CF809041CF55C005C762CF74E -:1023400038000C1208F808041CF55C005E762CF7C7 -:1023500038000CF2080018F808041CF55C006076E0 -:102360002CF738000C303EF00E0349F809041C2904 -:10237000EAB40C2F3B178C2FFCB68CE3CF80807611 -:102380002AF409041AE0692944EA190000120CF938 -:102390006A012C2F3B178C2FFCB68CE3CF8080E09A -:1023A0006A2944EA1A0000F80C1006180A762CF87C -:1023B00009041CF55C010C7628F73C000C1809F0A8 -:1023C00009041CF55C010EF70C0028581C5F4CF545 -:1023D0006C01102F3B178C2FFCB68CE3CF8080F75D -:1023E0003C000D585CE08101D2F7290004F72C0075 -:1023F000005C5C589CF9BC0034BF001302F1EC5641 +:1022F00056030000000100F2080039F809041C2F01 +:102300000AB40C2F3B178C2FFCB68CE3CF8080E0F7 +:102310006A2940EA1A0000F40C003A762CF8090405 +:102320001CF55C005C762CF738000C1208F80804E9 +:102330001CF55C005E762CF738000CF2080018F8EB +:1023400008041CF55C0060762CF738000C303EF079 +:102350000E0349F809041C29EAB40C2F3B178C2FF3 +:10236000FCB68CE3CF8080762AF409041AE0692950 +:1023700040EA190000120CF96A012C2F3B178C2F30 +:10238000FCB68CE3CF8080E06A2940EA1A0000F8AE +:102390000C1006180A762CF809041CF55C010C7662 +:1023A00028F73C000C1809F009041CF55C010EF735 +:1023B0000C0028581C5F4CF56C01102F3B178C2F1C +:1023C000FCB68CE3CF8080F73C000D585CE08101C7 +:1023D000D2F7290004F72C00005C5C589CF9BC0281 +:1023E00005FE0C001C98CC180F0014007400D401DA +:1023F0003401920384032600067A001302F1EC569E :1024000004011F00008001012000010000CFB6017F -:102410000D02F1EC560300000001000205FE0C0065 -:102420001C98CC180F0014007400D40134019203DE -:10243000840326028202FC3018C128F00C10061812 -:102440000AF50C00ACF55C00A6F50C00AEF55C00DE -:10245000A8F50C00B0F55C00AA2FF85C68E06A29CA -:1024600044EA1A00005858CEA5762CF809041CF549 -:102470005C00C4762CF738000C1208F808041CF530 -:102480005C00C6762CF738000CF2080019F8090435 -:102490001CF55C00C8C8993018C128F00C1006184B -:1024A0000AF50C00CCF55C00C6F50C00CEF55C001E -:1024B000C8F50C00D0F55C00CA2FF85C68E06A290A -:1024C00044EA1A00005858CEA5762CF809041CF5E9 -:1024D0005C00E4762CF738000C1208F808041CF5B0 -:1024E0005C00E6762CF738000CF2080019F80904B5 -:1024F0001CF55C00E8C5993018C128F00C100618CE -:102500000AF50C00ECF55C00E6F50C00EEF55C005D -:10251000E8F50C00F0F55C00EA2FF8002C40001301 +:102410000D02F1EC56030000000100028202FC30C4 +:1024200018C128F00C1006180AF50C00ACF55C0079 +:10243000A6F50C00AEF55C00A8F50C00B0F55C004C +:10244000AA2FF85C68E06A2940EA1A00005858CEC2 +:10245000A5762CF809041CF55C00C4762CF738002E +:102460000C1208F808041CF55C00C6762CF738003E +:102470000CF2080019F809041CF55C00C8C8993072 +:1024800018C128F00C1006180AF50C00CCF55C00F9 +:10249000C6F50C00CEF55C00C8F50C00D0F55C006C +:1024A000CA2FF85C68E06A2940EA1A00005858CE42 +:1024B000A5762CF809041CF55C00E4762CF73800AE +:1024C0000C1208F808041CF55C00E6762CF73800BE +:1024D0000CF2080019F809041CF55C00E8C59930F5 +:1024E00018C128F00C1006180AF50C00ECF55C0079 +:1024F000E6F50C00EEF55C00E8F50C00F0F55C008C +:10250000EA2FF85C68E06A2940EA1A00005858CEC1 +:10251000A5762CF809041CF55C010400293500138C :1025200002F1EC56040120000080010121000100AD -:10253000007307010D02F1EC560300000001005C7E -:1025400068E06A2944EA1A00005858CEA5762CF8AB -:1025500009041CF55C0104762CF738000C1208F80D -:1025600008041CF55C0106762CF738000CF2080014 -:1025700019F809041CF55C0108C299301CC0D8F494 -:102580000C003AF4F80084F548007CF5080088F562 -:102590005800802FFC5C6CE06A2944EA1A0000585D -:1025A0005CCEF5762CF809041CA96CF54C00A476D9 -:1025B0002CF738000C1208F808041CF4F800A418D2 -:1025C00008F54800A4762CF738000CF2080019F83A -:1025D00009041CF55C00A8CFA83018C1C8F00C1085 -:1025E00012180A149C212C940EB80E2FEA940EB8DF -:1025F0001E941EB82E942EB83E943EB84E944EB8FB -:102600005E945EB86E946EB87E947A2F0CB80A2FE2 -:10261000F85C68E06A2944EA1A00005858CE05764A -:102620002CF809041CF55C0048762CF738000C12D5 -:1026300008F808041CF55C004A762CF738000C00FA -:10264000C7E7001302F1EC560401210000800101EC +:10253000007307010D02F1EC560300000001007664 +:102540002CF738000C1208F808041CF55C0106761C +:102550002CF738000CF2080019F809041CF55C018E +:1025600008C299301CC0D8F40C003AF4F80084F585 +:1025700048007CF5080088F55800802FFC5C6CE072 +:102580006A2940EA1A0000585CCEF5762CF8090456 +:102590001CA96CF54C00A4762CF738000C1208F836 +:1025A00008041CF4F800A41808F54800A4762CF7D9 +:1025B00038000CF2080019F809041CF55C00A8CFDB +:1025C000A83018C1C8F00C1012180A149C212C94C1 +:1025D0000EB80E2FEA940EB81E941EB82E942EB884 +:1025E0003E943EB84E944EB85E945EB86E946EB80B +:1025F0007E947A2F0CB80A2FF85C68E06A2940EACA +:102600001A00005858CE05762CF809041CF55C0019 +:1026100048762CF738000C1208F808041CF55C000A +:102620004A762CF738000CF2080018F808041CF55C +:102630005C004C762CF738000C303E1297F00E0000 +:102640008C8F001302F1EC5604012100008001017F :102650002200010000E6CC010D02F1EC560300005F -:10266000000100F2080018F808041CF55C004C7624 -:102670002CF738000C303E1297F00E0347F8070491 -:102680001CF55C004E762CF738000CF2080028F898 -:1026900008041CF55C0050762CF738000C305E12F4 -:1026A00097F00E0347F807041CF55C0052762CF7F0 -:1026B00038000C306E1297F00E0347F807041CF533 -:1026C0005C0054762CF738000C307E1297F00E0325 -:1026D00047F807041CF55C0056762CF738000CF21E -:1026E000080039F809041C2A8AB40CC828301CC117 -:1026F00058F40C003AF508005CF5580054F5080051 -:102700005EF5580056F5080060F5580058F50800C9 -:10271000622A6AB4082FFC5C6CE06A2944EA1A0059 -:1027200000585CCE75762CF809041CF55C007C76AC -:102730002CF738000C1208F808041CF55C007E76B3 -:102740002CF738000CF2080018F808041CF55C009F -:1027500080762CF738000C303EF00E0349F809045F -:102760001CF55C00F5B6001302F1EC5604012200E2 +:102660000001000347F807041CF55C004E762CF7C8 +:1026700038000CF2080028F808041CF55C005076BD +:102680002CF738000C305E1297F00E0347F8070461 +:102690001CF55C0052762CF738000C306E1297F067 +:1026A0000E0347F807041CF55C0054762CF738003D +:1026B0000C307E1297F00E0347F807041CF55C00FF +:1026C00056762CF738000CF2080039F809041C2A59 +:1026D0008AB40CC828301CC158F40C003AF5080024 +:1026E0005CF5580054F508005EF5580056F50800F2 +:1026F00060F5580058F50800622A6AB4082FFC5C9F +:102700006CE06A2940EA1A0000585CCE75762CF815 +:1027100009041CF55C007C762CF738000C1208F8D4 +:1027200008041CF55C007E762CF738000CF20800DB +:1027300018F808041CF55C0080762CF738000C3083 +:102740003EF00E0349F809041CF55C0082C45830C1 +:102750001CC088180AF538012CF568012B2FFC5C89 +:102760006CE06A008C6D001302F1EC56040122004B :102770000080010123000100005977010D02F1ECF6 -:10278000560300000001000082C458301CC08818A5 -:102790000AF538012CF568012B2FFC5C6CE06A29E6 -:1027A00044EA1A0000585CCF45762CF809041CF561 -:1027B0006C0130C3083018C128F00C1006180AF557 -:1027C0000C010CF55C0106F50C010EF55C0108F539 -:1027D0003C0110F56C010A2FF85C68E06A2944EAB4 -:1027E0001A00005858CEA5762CF809041CF55C0197 -:1027F00024762CF738000C1208F808041CF55C014C -:1028000026762CF738000CF2080019F809041CF59C -:102810006C0128305C2F3BB68CE3CF80800000EB4E -:10282000CD40801897FEB0B0CFEDB70002C382E074 -:102830006B43E0EA1B0000765B179A581AC305F752 -:102840003A000DE0692A78EA190000585AC0F4F2FB -:102850000A0019F93A0043B28A2BCC198CB29C2F8A -:102860003B178C2FFCB68CE3CF8080301AC0B8F2B7 -:102870000A0018109E202E1187BC871198BC982F33 -:10288000FA5C6A585ACF550074E0001302F1EC5616 +:10278000560300000001002940EA1A0000585CCFFF +:1027900045762CF809041CF56C0130C3083018C1CB +:1027A00028F00C1006180AF50C010CF55C0106F572 +:1027B0000C010EF55C0108F53C0110F56C010A2FC7 +:1027C000F85C68E06A2940EA1A00005858CEA576FD +:1027D0002CF809041CF55C0124762CF738000C1247 +:1027E00008F808041CF55C0126762CF738000CF27A +:1027F000080019F809041CF56C0128305C2F3BB661 +:102800008CE3CF80800000EBCD40801897FEB0B005 +:10281000DBEDB70002C382E06B43DCEA1B0000760D +:102820005B179A581AC305F73A000DE0692A74EA53 +:10283000190000585AC0F4F20A0019F93A0043B2DC +:102840008A2BCC198CB29C2F3B178C2FFCB68CE3B7 +:10285000CF8080301AC0B8F20A0018109E202E11C6 +:1028600087BC871198BC982FFA5C6A585ACF55F9E3 +:102870003A0043F36A00082BCC198C2F79B28C30C4 +:102880005C2F3BB68CE3CF001E2A001302F1EC56FE :10289000040123000080010124000100004D5F01BC -:1028A0000D02F1EC56030000000100F93A0043F379 -:1028B0006A00082BCC198C2F79B28C305C2F3BB678 -:1028C0008CE3CF8080D7038000853C300BF96B0010 -:1028D0000DE06B43E0EA1B000076BBF71A005C30AA -:1028E00019F9280000F208094C184A2A4BB60A5E6A -:1028F000FF0000300BF96B000DE06B43E0EA1B00BA -:102900000076BBF71A005C3019F9280000F20809BC -:102910004C188A2A4BB60A5EFF00005EFF0000EBEF -:10292000CD40F8204D189516941297EA0A001C0E17 -:102930000C5817C050F92B0016580BC1012EACF9DA -:102940002B00002FFBB88BEA07000C2DECF92B00B5 -:10295000002FFBB88B0B9C2FFCAA9CEA070003E717 -:10296000260022FAE700080B9AEB2B0000BB1BE0C5 -:102970006CEF74EA1C8001FEB0B154300CC0282FFB -:10298000FC5C6C586CC104EA0C001B0E0B2EABF700 -:102990002A0000581ACF555804C0241894E7640040 -:1029A000122EC3A68C2FCDE3CF80F8009B8000139E +:1028A0000D02F1EC560300000001008080D7038088 +:1028B00000853CD531208D300BBACBE06706D8EAD5 +:1028C000170000780B8F0B781B8F1B782C8F2C3008 +:1028D00006300C504C507C506C505C305A0E9B2F84 +:1028E0008B6E4CE0A00272305A0E9B2FCB6E5CE0D8 +:1028F000A0026C305A0E9B6E6CE0A002673059FA51 +:10290000CAFFF0303B6E4CE0A0027618913059FAC5 +:10291000CAFFE4303B6E5CE0A0026E18923059FAB8 +:10292000CAFFE8303B6E6CE0A002661890305A3067 +:102930003B6E4CE0A002A8FC1B4040E0A009D05038 +:102940002C6E146E03300B069CE0A05915C0E130CC +:102950000B089CE0A05910C0916E2C300BE0A059E0 +:102960000BC041E0A0022830163005EF3C000D50AE +:102970003C6E2B169CE0A0093F500C089C089BE085 +:10298000A0093A1894069C069BE0A00935089BE034 +:10299000A008DC400BE0A008D9E0A01C2DE0A04B73 +:1029A00097E0A00A61500C305A1A9B000FA0001348 :1029B00002F1EC5604012400008001012500010011 -:1029C0000027E7010D02F1EC56030000000100EBC7 -:1029D000CD40F8204D189516941297EA0A001C0E67 -:1029E0000CEA070003F92B0016581BC1252EACF981 -:1029F0002B0000201BB88BE72C0022201CE76C006A -:102A0000220B9C581CC0550B9CFE3CFF01AA9CE766 -:102A1000260022FAE700080B9AEB2B0000BB1BE014 -:102A20006CEF34EA1C8001FEB0B10E300CC0282FD0 -:102A3000FC5C6C586CC114EA0C001B0E0B2EABF73F -:102A40002A0000581ACF555804C0241894E764008F -:102A5000122EC3A68CC0683FFCE76C00122EC3A6E2 -:102A60008C2FCDE3CF80F880008774180BF72A00F5 -:102A700012580A5E5DE06A43E0EA1A000074BA2E5A -:102A8000CBF7290000F409001A290A940B2DCC98E1 -:102A90000C580CC0245EFD5C8B5E1D302C5EFCD49B -:102AA00001F3DAB008F5DBB0083FFBC4CFD80AD495 -:102AB00001F3DAB008F5DBB0083FFBC8AFD80A581D -:102AC0004CC0415C6B5F0CC028300C5C5C5EFC0051 -:102AD0006137001302F1EC5604012500008001016A +:1029C0000027E7010D02F1EC560300000001006E44 +:1029D0007CE0A0020D400CE06B0CDDEA1B40FBE04C +:1029E000A00AAAC093400CE06B49A7EA1B413CE057 +:1029F000A00A96C043CF1D300CCE683059FACAFFEA +:102A0000EC303B6E7CE0A00209FC1B4060E0A00AB9 +:102A100093CF22E06B6667EA1B3FE6029CE0A00AC8 +:102A20008BCEA2402CE06B1B3EEA1B4130E0A00A9B +:102A300083C172402CE06BB4D7EA1B4109E0A00AC5 +:102A40006FC0F3EF3C000DE04C00FFCD50E06C0098 +:102A5000FF2F37AE8C3FFC409BB68C301CCB4840E0 +:102A60002CE0A01BDBBFDB3008FC194010E0A01BF2 +:102A7000F5C6B2FC144000049C089BE0A00A5CC5AB +:102A80008230066E2C400BE0A0093CE0A01BC6E0A3 +:102A9000A04A30E0640758EA140000FC188000E007 +:102AA00069A5DCEA19404CE0A01B2FE0A05478E0B7 +:102AB000A01BFF891C5C56C5B1681C5C4CE04C0037 +:102AC0003DC9A46E1CE0A01BA91498169910920091 +:102AD0008B15001302F1EC56040125000080010162 :102AE0002600010000B22C010D02F1EC560300009B -:102AF000000100EBCD40E018951497585BC03030D2 -:102B000046C0283056F7D7B008F9D6B008CEBFC0B7 -:102B1000403FFCEB5C0028F3D7B008F5D6B0083096 -:102B20002B0A9CC22FE3CF80E00000EBCD40E018E1 -:102B3000951497585BC0303046C0283056F7D7B050 -:102B400008F9D6B008CCFFC110EB0C0028580CC017 -:102B5000A4E06C0144EA1C0000980C2D85AA0CE34B -:102B6000CF80E03FFCEB5C0028F3D7B008F5D6B08F -:102B700008302B0A9CC3FFE3CF80E0D421189616BF -:102B800097EC07000CF92B0012580BC2F52ECCF96C -:102B9000250000E06C43E0EA1C000078BCF805006A -:102BA0001C290C9804F7D7B008F9D5B008C9BFC0E4 -:102BB000F05845C121089C2C4CE06B00F0F80B0C40 -:102BC0000A580BC0A1300C2DA6AC8CDA2A5845C08F -:102BD00041E0440384CF805855C041E04426E8CF0B -:102BE00030ED0C0024580CC024D82A5804C22130DF -:102BF0001CED6C00C5E9001302F1EC56040126003F +:102AF00000010012936E0CEE1C8000E0A01BA004ED +:102B0000980699E0A04C78FC188000E069A5DCEA02 +:102B100019C04CE0A01B0BE0A05454E0A01BDB1834 +:102B2000955805C034FE35FE980A9C2D3C35ABF80F +:102B30000B0C0A14965846C02130066813069B0CED +:102B40009CC6FCC060069A0A9B0C9CC7ACC1C1C560 +:102B50006DC208049C089BE0A009F4FE92FF5F0090 +:102B60009C089BE0A009EECA03C58B3059FACAFF46 +:102B7000F0305B6E4CC63DFC1B3F80E0A009EEFED2 +:102B800092FF4DC91BEF3C000E0C3CC030EF6600BD +:102B90000EEF3C000E403B163CC051403BE04B006A +:102BA000FFC2316816680BE21B0006C030301CC043 +:102BB000480C9A0A9BC8BC5C46E046003DC1545C88 +:102BC0005CC130EF3C000EEF3B000DF80B1800C06D +:102BD000C0EF6C000D409BB68C301BBACBE04C00B4 +:102BE000FFC0302F47AE8C1BCC2F8DD932D703803E +:102BF00001D6C8006685001302F1EC5604012600D8 :102C00000080010127000100000D97010D02F1EC89 -:102C1000560300000001000010F7D7B008F9D5B046 -:102C200008C73FC170ED0C0028581CC135ED0C00E1 -:102C300028201CED5C0028ED0C0028580CC0A1F5E4 -:102C4000D7C008F7D5B008ED2C0000E0A02E1CD8A6 -:102C50002A302CD822F7D7B008F9D5B008C55FCDF7 -:102C600070E06C00F0E80C0C0A580BCD11300C2F02 -:102C700006AC8C302CD8228001836CEBCD408018C0 -:102C800097169A0E0A2ECAF52C0000C3EFC0702DBD -:102C9000878E0C580CC034E3CF8080E3CF9080EB5C -:102CA000CD40C018971696EE06000A2ECAF52C00E5 -:102CB00000C2BFC070EF0C0028580CC034E3CF80B6 -:102CC000C0F7D6B0080E9CC4CEE3CF90C00000D4AD -:102CD00001FE7AFE98F95A0024C2FED8020000D400 -:102CE00001F3DAB008303A302BC51ED80A0000D400 -:102CF00001F3DAB008303A302BC8FED80A000018C9 -:102D00000BF72A0012580A5E5DE06A43E0EA1A00F7 -:102D10000074BA2ECBF72900E935001302F1EC5606 +:102C1000560300000001008001BC20800139B8800B +:102C2000015D888001BA2080015D488001BF00807D +:102C3000015C368001CECC80015DDE80013A4C80A3 +:102C4000013A64E06A0008EA1A0000F40C003A74E1 +:102C50000C183BC055741C163C5F4CC028300C5CF3 +:102C60005C5EFCD401E06906D8EA1900002F491324 +:102C700089E0680758EA1800007008E2180006C0EA +:102C800030C37CD8025809C335123CC0C0129A2FF9 +:102C9000FAF4081401BF881408A348F408012A14A0 +:102CA0003CC101F80A105A228A580CC091E04B012D +:102CB0003BC085FE3AFE98143BC044D80A143BCF73 +:102CC000E5123CC0B02FD9F20A1401BF8A120AA340 +:102CD0004AF20A0129123CC0B1F80A105A2D8A584A +:102CE0000CC041E04B002EC034163ACE85DA0AEB18 +:102CF000CD40F8210DE06E06D8EA1E0000FD35003B +:102D00000CE067E8B8EA1780011A990E983144116F +:102D10000612A62044CFD10071E6001302F1EC5652 :102D2000040127000080010128000100009A7C01B5 -:102D30000D02F1EC560300000001000000F4090050 -:102D40001A290A940BE04B003CC051300B2DACB853 -:102D50008B5EFFE04B0078C051301B2DACB88B5E12 -:102D6000FF2DCC980C580CC0245EFD580B5E1D3016 -:102D70002C5EFCD401388AF95A0024FEB0FDF0D84C -:102D8000020000D401FE7AFED4F95A0024FEB0FD00 -:102D9000E7D802EBCD40C018971496F3D6B00830B0 -:102DA0000A3FFBFEB0FE060C073FFCEF6C00122E44 -:102DB000C7AE8CE3CF80C0EBCD40C018971496F31C -:102DC000D6B008300A3FFBC3AE0C073FFCEF6C00E7 -:102DD000122EC7AE8CE3CF80C00000E06C43E0EA67 -:102DE0001C0000784B179B581BC064788C199C58AA -:102DF0000C5F0CC028301C5C5C5EFCEBCD40C0E07E -:102E00006C43E0EA1C0000788778460F9C580CC0A1 -:102E1000710D9C581CC0456CBC781C5D1C0D9C58E9 -:102E20000CC0510F9C580C5F0CC028300C5C5CE34C -:102E3000CD80C0D401FEB0FD93FEB000A48D001380 +:102D30000D02F1EC560300000001003006401914AA +:102D4000985C4840040838C05514985C481238C054 +:102D5000B5402814965C461236C31514995C491088 +:102D600039C2D430165805C695580CC3D50A3CC094 +:102D7000C00A9A2FFAF4091401BF891409A349F46F +:102D800009012A143CC3611A940E9A2ECA3403B561 +:102D900009A9282083CFD1EC0A15041A99120A58E0 +:102DA0000CC2417409123BC254741A163AC224E090 +:102DB0006C00FF2F2EBC8C300CC418403914965C6C +:102DC000461036C07514985C481238C0343026CC92 +:102DD000BB14985C481238C07540495C4A1439C02D +:102DE000353036CC1B300CC2A8F40C032A143BCE71 +:102DF000050A3CC0B02FD5EA0A1401BF8A0A0AA30B +:102E00004AEA0A01250A3CC1911A9A2AC73405AF39 +:102E100009B5282085CFD1A5660C9A1A99120A58AF +:102E20000CC081740C163CC094743C183BC064CC3C +:102E30000BF40C032C163CCBC5301C0001E0001336 :102E400002F1EC5604012800008001012900010074 -:102E500000DAC7010D02F1EC56030000000100AEDC -:102E60001F300BF96B0043F96B00452B5CB88BDA14 -:102E70000A0000D401FEB0FD99FEB0AE11300BF98E -:102E80006B0043F96B00452B5CB88BDA0AD70380E3 -:102E900000853CE06C43E0EA1C0000784B179B582F -:102EA0001BC064785C199C580C5F0CC028301C5CFB -:102EB0005C5EFCEBCD40C0E06C43E0EA1C000078B7 -:102EC0005778460F9C580CC0710D9C581CC0456C1F -:102ED000BC781C5D1C0D9C580CC0510F9C580C5F9D -:102EE0000CC028300C5C5CE3CD80C0EBCD40C0E072 -:102EF0006C43E0EA1C0000785778860D9C581CC093 -:102F0000440F9C581CC0456EBC781C5D1C0D9C5821 -:102F10000CC0510F9C580C5F0CC028300C5C5CE35B -:102F2000CD80C0E06C43E0EA1C000078AC199C58EE -:102F30000C5F0C5EFC0000D401E06C43E0EA1C0076 -:102F400000780C199B580BC04178BC781C5D1CDACA -:102F50000A0000D401FEB0FD29E06C43E0EA1C0049 -:102F6000C563001302F1EC56040129000080010141 +:102E500000DAC7010D02F1EC560300000001002F5B +:102E60000DE3CD80F80000E06C00FFE06B06D8EACF +:102E70001B00002F2BB68C5EFD00009889F4091909 +:102E800000C0333009B80998892FF9B8099889F436 +:102E9000091900C033300AB80A760B988AF80A007C +:102EA0002C991B5EFF0000D431201D18961691143A +:102EB000901294300530038C875C87029CE0A00858 +:102EC000D51892F5D4C010F7D1B0100C9CC35C0497 +:102ED0009BE0A0075F810CC058089720175C872FE4 +:102EE000F3E2031900C184EC070022641C600BE0CC +:102EF000A00618500C641C600BE0A00613400BE009 +:102F0000A006D40A9BE0A0067B18955817CE652032 +:102F1000175C87CE6B029CE0A008A8189B0A9CE077 +:102F2000A007382FFDD832800135C0800137488096 +:102F3000013B0880013830EBCD40F8189516971406 +:102F400096300C30048A83C1085C835803C075EA4C +:102F500003002B761BE0A0065320135C835803006C +:102F6000EEAB001302F1EC560401290000800101D0 :102F70002A000100004F0C010D02F1EC5603000085 -:102F80000001000000780C199B580BC04178BC78F8 -:102F90002C5D1CDA0A0000D531209D300BBACBE045 -:102FA0006706E8EA170000780B8F0B781B8F1B78F9 -:102FB0002C8F2C3005300C504C508C507C506C3089 -:102FC0005A0E9B2F8B6E3CE0A0025C305A0E9B2F5A -:102FD000CB6E4CE0A00256305A0E9B6E5CE0A00215 -:102FE000513059FACAFFF0303B6E3CE0A002601845 -:102FF000903059FACAFFE0303B6E4CE0A0025818FE -:10300000913059FACAFFE4303B6E5CE0A0025050A8 -:103010005C305A303B6E3CE0A00292FC1B4040E02A -:10302000A006C0502C6E146E02300B049CE0A0551C -:10303000E7C0E1300B089CE0A055E2C0916E2C3057 -:103040000BE0A055DDC041E0A0021430153003E0D4 -:10305000660008EA1600000D9C503C6E2B169CE0A2 -:10306000A0062C500C089C089BE0A006271894048E -:103070009C049BE0A00622089BE0A005C9400BE051 -:10308000A005C6005E0A001302F1EC5604012A00F6 +:102F8000000100C0340C9320132FF4EE041900CE7E +:102F9000F5E3CD80F8D7038001369C300BF96B0048 +:102FA0000DE06B43DCEA1B000076BBF71A005C30D7 +:102FB00019F9280000F208094C184A2A4BB60A5E93 +:102FC000FF0000300BF96B000DE06B43DCEA1B00E7 +:102FD0000076BBF71A005C3019F9280000F20809E6 +:102FE0004C188A2A4BB60A5EFF00005EFF0000EB19 +:102FF000CD40F8204D189516941297EA0A001C0E41 +:103000000C5817C050F92B0016580BC1012EACF903 +:103010002B00002FFBB88BEA07000C2DECF92B00DE +:10302000002FFBB88B0B9C2FFCAA9CEA070003E740 +:10303000260022FAE700080B9AEB2B0000BB1BE0EE +:103040006CEFE0EA1C8001FEB0AE58300CC0282FB7 +:10305000FC5C6C586CC104EA0C001B0E0B2EABF729 +:103060002A0000581ACF555804C0241894E7640069 +:10307000122EC3A68C2FCDE3CF80F8EBCD40F820E5 +:103080004D1895002DD1001302F1EC5604012A00D1 :10309000008001012B00010000F0B7010D02F1ECEE -:1030A00056030000000100E0A0191AE0A0485CE00F -:1030B000A0074E500C305A1A9B6E6CCF4D400CE05E -:1030C0006B0CDDEA1B40FBE0A00798C093400CE0CE -:1030D0006B49A7EA1B413CE0A00784C043CDBD304B -:1030E0000CCD783059FACAFFE8303B6E6CCF1DFC2E -:1030F0001B4060E0A00782CF32E06B6667EA1B3FAF -:10310000E6009CE0A0077ACEB2402CE06B1B3EEAC2 -:103110001B4130E0A00772C152402CE06BB4D7EAEB -:103120001B4109E0A0075EC0D30D9CE04C00FFCD21 -:1031300070E06C00FFAC9C3FFC40ABB68C301CCA0E -:1031400088402CE0A018CCBFDB3008FC194010E010 -:10315000A018E6C662FC144000029C089BE0A00791 -:103160004DC53230056E2C400BE0A0062DE0A018B6 -:10317000B7E0A046F9FC188000E069A5DCEA194038 -:103180004CE0A01824E0A0516FE0A018F48D2C5C56 -:1031900055C5816C2C5C4CE04C003DCA146E1CE0A3 -:1031A000A0189E1498169900232C001302F1EC56D7 +:1030A0005603000000010016941297EA0A001C0E55 +:1030B0000CEA070003F92B0016581BC1252EACF9AA +:1030C0002B0000201BB88BE72C0022201CE76C0093 +:1030D000220B9C581CC0550B9CFE3CFF01AA9CE790 +:1030E000260022FAE700080B9AEB2B0000BB1BE03E +:1030F0006CEFA0EA1C8001FEB0AE12300CC0282F8D +:10310000FC5C6C586CC114EA0C001B0E0B2EABF768 +:103110002A0000581ACF555804C0241894E76400B8 +:10312000122EC3A68CC0683FFCE76C00122EC3A60B +:103130008C2FCDE3CF80F880008774180BF72A001E +:1031400012580A5E5DE06A43DCEA1A000074BA2E87 +:10315000CBF7290000F409001A290A940B2DCC980A +:103160000C580CC0245EFD5C8B5E1D302C5EFCD4C4 +:1031700001F3DAB008F5DBB0083FFBC4CFD80AD4BE +:1031800001F3DAB008F5DBB0083FFBC8AFD80A5846 +:103190004CC0415C6B5F0CC028300C5C5C5EFCEB8F +:1031A000CD40E0189514970068D1001302F1EC5659 :1031B00004012B00008001012C00010000E49F01AC -:1031C0000D02F1EC56030000000100109412956E00 -:1031D0000CEE1C8000E0A0189508980A99E0A04920 -:1031E00045FC188000E069A5DCEA19C04CE0A01895 -:1031F00000E0A0514BE0A018D018935803C034FE53 -:1032000033FE98069C2D3C35ABF80B0C045844C09B -:103210002130046C270E9B089CC67CC0600E9A0669 -:103220009B089CC72CC1C1C48DC1E8029C089BE0CF -:10323000A006EAFE92FF67405C089BE0A006E4CA95 -:1032400053C60B3059FACAFFF0305B6E3CC53DFCEB -:103250001B3F80E0A006E4FE92FF55C96B0DAC0851 -:103260003CC020ACA40DAC403B163CC051403BE000 -:103270004B00FFC1F16C276C1BE21B0006C0303015 -:103280001CC0480E9A069BC82C5C47E047003DC115 -:10329000145C5CC0F00DAC0D9BF80B1800C0A0AC2A -:1032A0009C40ABB68C301BBACBE04C00FFC020ACCE -:1032B0008C1BCC2F7DD9328001D6788001BBBC809D -:1032C0000139A480015D748001B9BC0023000013A2 +:1031C0000D02F1EC56030000000100585BC03030E6 +:1031D00046C0283056F7D7B008F9D6B008CEBFC0E1 +:1031E000403FFCEB5C0028F3D7B008F5D6B00830C0 +:1031F0002B0A9CC22FE3CF80E00000EBCD40E0180B +:10320000951497585BC0303046C0283056F7D7B079 +:1032100008F9D6B008CCFFC110EB0C0028580CC040 +:10322000A4E06C0134EA1C0000980C2D85AA0CE384 +:10323000CF80E03FFCEB5C0028F3D7B008F5D6B0B8 +:1032400008302B0A9CC3FFE3CF80E0D421189616E8 +:1032500097EC07000CF92B0012580BC2F52ECCF995 +:10326000250000E06C43DCEA1C000078BCF8050097 +:103270001C290C9804F7D7B008F9D5B008C9BFC00D +:10328000F05845C121089C2C4CE06B00F0F80B0C69 +:103290000A580BC0A1300C2DA6AC8CDA2A5845C0B8 +:1032A00041E0440384CF805855C041E04426E8CF34 +:1032B00030ED0C0024580CC024D82A5804C2213008 +:1032C0001CED6C0010F7D7B008F9D500D119001328 :1032D00002F1EC5604012C00008001012D000100D8 -:1032E000008E27010D02F1EC560300000001008062 -:1032F000015D348001BE9C80015C228001CEBC80D7 -:10330000015DCA80013A3880013A50E06A0018EA4B -:103310001A0000F40C003A740C183BC055741C16CB -:103320003C5F4CC028300C5C5C5EFCD401E0690062 -:1033300008EA19000013887219E2190006C030C3A8 -:103340008CD8025808C335103CC0C0109A2FFAF42C -:10335000091401BF891409A349F409012A143CC1C5 -:1033600001F80A105A228A580CC091E04B013BC068 -:1033700085FE3AFE98143BC044D80A143BCFE510B2 -:103380003CC0B02FD8F00A1401BF8A100AA34AF03B -:103390000A0128103CC0B1F80A105A2D8A580CC0F6 -:1033A00041E04B002EC034163ACE85DA0A0000EB1D -:1033B000CD40F8210DE06E0008EA1E00001D85E0FA -:1033C00067E84CEA1780011A990E983144110612E9 -:1033D000A62044CFD13006401914985C4840040818 -:1033E00038C05514985C481238C0B540281496006F -:1033F000D002001302F1EC5604012D0000800101FF +:1032E000008E27010D02F1EC56030000000100B032 +:1032F00008C73FC170ED0C0028581CC135ED0C000B +:1033000028201CED5C0028ED0C0028580CC0A1F50D +:10331000D7C008F7D5B008ED2C0000E0A02B52D89C +:103320002A302CD822F7D7B008F9D5B008C55FCD20 +:1033300070E06C00F0E80C0C0A580BCD11300C2F2B +:1033400006AC8C302CD822800183D0EBCD40801885 +:1033500097169A0E0A2ECAF52C0000C3EFC0702DE6 +:10336000878E0C580CC034E3CF8080E3CF9080EB85 +:10337000CD40C018971696EE06000A2ECAF52C000E +:1033800000C2BFC070EF0C0028580CC034E3CF80DF +:10339000C0F7D6B0080E9CC4CEE3CF90C00000D4D6 +:1033A00001FE7AFE98F95A0024C2FED8020000D429 +:1033B00001F3DAB008303A302BC51ED80A0000D429 +:1033C00001F3DAB008303A302BC8FED80A000018F2 +:1033D0000BF72A0012580A5E5DE06A43DCEA1A0025 +:1033E0000074BA2ECBF7290000F409001A290A004C +:1033F000439B001302F1EC5604012D0000800101F3 :103400002E000100001BEC010D02F1EC5603000040 -:103410000001005C461236C30514995C491039C29C -:10342000C430165805C685580CC3C50A3CC0C00A2E -:103430009A2FFAF4091401BF891409A349F4090168 -:103440002A143CC3511A940E9A2ECA3403B509A902 -:10345000282083CFD1EC0A15041A99120A580CC2FD -:10346000317409123BC244741A163AC214E06C005B -:10347000FFBCAC300CC418403914965C461036C002 -:103480007514985C481238C0343026CCCB14985C44 -:10349000481238C07540495C4A1439C0353036CCC2 -:1034A0002B300CC2A8F40C032A143BCE150A3CC0E6 -:1034B000B02FD5EA0A1401BF8A0A0AA34AEA0A0110 -:1034C000250A3CC1911A9A2AC73405AF09B52820AC -:1034D00085CFD1A5660C9A1A99120A580CC081742E -:1034E0000C163CC094743C183BC064CC1BF40C0319 -:1034F0002C163CCBD5301C2F0DE3CD80F80000E01E -:103500006C00FFE06B0008EA1B0000B6AC5EFD98A3 -:1035100089F40900C2E3001302F1EC5604012E0005 +:10341000000100940BE04B003CC051300B2DACB8C8 +:103420008B5EFFE04B0078C051301B2DACB88B5E3B +:10343000FF2DCC980C580CC0245EFD580B5E1D303F +:103440002C5EFCD401388AF95A0024FEB0FDF0D875 +:10345000020000D401FE7AFED4F95A0024FEB0FD29 +:10346000E7D802EBCD40C018971496F3D6B00830D9 +:103470000A3FFBFEB0FE060C073FFCEF6C00122E6D +:10348000C7AE8CE3CF80C0EBCD40C018971496F345 +:10349000D6B008300A3FFBC3AE0C073FFCEF6C0010 +:1034A000122EC7AE8CE3CF80C00000E06C43DCEA94 +:1034B0001C0000784B179B581BC064788C199C58D3 +:1034C0000C5F0CC028301C5C5C5EFCEBCD40C0E0A7 +:1034D0006C43DCEA1C0000788778460F9C580CC0CF +:1034E000710D9C581CC0456CBC781C5D1C0D9C5813 +:1034F0000CC0510F9C580C5F0CC028300C5C5CE376 +:10350000CD80C0D401FEB0FD93FEB0AB23300BF9EB +:103510006B0043000308001302F1EC5604012E0077 :10352000008001012F00010000A457010D02F1EC01 -:10353000560300000001001900C0333009B8099893 -:10354000892FF9B8099889F4091900C033300AB8ED -:103550000A760B988AF80A002C991B5EFF0000D4AB -:1035600031201D1896169114901294300530038C5A -:10357000875C87029CE0A005DB1892F5D4C010F7A9 -:10358000D1B0100C9CC35C049BE0A00465810CC00E -:1035900058089720175C872FF3E2031900C184ECC9 -:1035A000070022641C600BE0A0031E500C641C602A -:1035B0000BE0A00319400BE0A003DA0A9BE0A00394 -:1035C0008118955817CE6520175C87CE6B029CE05A -:1035D000A005AE189B0A9CE0A0043E2FFDD83280C7 -:1035E0000135AC8001373480013AF48001381CEB9E -:1035F000CD40F8189516971496300C30048A83C184 -:10360000085C835803C075EA03002B761BE0A00317 -:103610005920135C835803C0340C9320132FF4EE0D -:10362000041900CEF5E3CD80F8D70380013688EB8E -:10363000CD40C0201DE06C006987001302F1EC56FC +:1035300056030000000100F96B00452B5CB88BDAE4 +:103540000A0000D401FEB0FD99FEB0AB15300BF9B6 +:103550006B0043F96B00452B5CB88BDA0AD703800C +:1035600000853CE06C43DCEA1C0000784B179B585C +:103570001BC064785C199C580C5F0CC028301C5C24 +:103580005C5EFCEBCD40C0E06C43DCEA1C000078E4 +:103590005778460F9C580CC0710D9C581CC0456C48 +:1035A000BC781C5D1C0D9C580CC0510F9C580C5FC6 +:1035B0000CC028300C5C5CE3CD80C0EBCD40C0E09B +:1035C0006C43DCEA1C0000785778860D9C581CC0C0 +:1035D000440F9C581CC0456EBC781C5D1C0D9C584B +:1035E0000CC0510F9C580C5F0CC028300C5C5CE385 +:1035F000CD80C0E06C43DCEA1C000078AC199C581C +:103600000C5F0C5EFC0000D401E06C43DCEA1C00A3 +:1036100000780C199B580BC04178BC781C5D1CDAF3 +:103620000A0000D401FEB0FD29E06C43DCEA1C0076 +:1036300000780C199B580B00F3A3001302F1EC5611 :1036400004012F00008001013000010000B43F019F -:103650000D02F1EC56030000000100F1FCEA1C80B1 -:10366000011A9B198AB68A199AB69AFACBFFFE2FCD -:10367000EC198AB68A199AB69A3018FAC9FFFE3040 -:10368000FA33CB300CFEB0AC2318975817C7711B18 -:10369000ACE04C0040C731320CBA8C36FCBA9C30DE -:1036A000291A9A33CB300CFEB0ABE6C031300CC6D1 -:1036B00088324CBA8CE06C00C0BA9C30291A9A331C -:1036C000CB300CFEB0ABD8CF30325CBA8C310CBAF8 -:1036D0009C30291A9A33CB300CFEB0ABCDCE80355E -:1036E000ACBA8CE06C00F0BA9C30291A9A33CB301B -:1036F0000CFEB0ABC1CDC035BCBA8C301CBA9C300E -:10370000291A9A33CB300CFEB0ABB6CD10323CBA8E -:103710008C308CBA9C30291A9A33CB300CFEB0AB6B -:10372000ABCC60340CBA8C305CBA9C30291A9A331A -:10373000CB300CFEB0ABA0CBB0341CBA8C311CBA71 -:103740009C30291A9A33CB300CFEB0AB95CB0034A9 -:103750002CBA8C3006BA9630291A9A00C7F5001395 +:103650000D02F1EC56030000000100C04178BC7877 +:103660002C5D1CDA0A0000EBCD40C0201DE06CF29E +:1036700068EA1C80011A9B198AB68A199AB69AFAC6 +:10368000CBFFFE2FEC198AB68A199AB69A3018FA2F +:10369000C9FFFE30FA33CB300CFEB0AC1918975886 +:1036A00017C7711BACE04C0040C731320CBA8C36E6 +:1036B000FCBA9C30291A9A33CB300CFEB0ABDCC07C +:1036C00031300CC688324CBA8CE06C00C0BA9C30E9 +:1036D000291A9A33CB300CFEB0ABCECF30325CBA65 +:1036E0008C310CBA9C30291A9A33CB300CFEB0AB1B +:1036F000C3CE8035ACBA8CE06C00F0BA9C30291A8D +:103700009A33CB300CFEB0ABB7CDC035BCBA8C30E1 +:103710001CBA9C30291A9A33CB300CFEB0ABACCD1E +:1037200010323CBA8C308CBA9C30291A9A33CB3088 +:103730000CFEB0ABA1CC60340CBA8C305CBA9C30BF +:10374000291A9A33CB300CFEB0AB96CBB0341CBAEE +:103750008C311CBA9C30291A9A33CB00B76A0013FB :1037600002F1EC560401300000800101310001003B -:1037700000A082010D02F1EC5603000000010033AD -:10378000CB300CFEB0AB8ACA50320CBA8CBA963031 -:10379000291A9A33CB300CFEB0AB80C031C9AB30A4 -:1037A000070E9C2FFDE3CD80C00000D421202DE02A -:1037B0006CF150EA1C80011A9B198AB68A199AB6D4 -:1037C0009A781C501C301CBA8CE06C0080BA9C307B -:1037D000291A9A33CB300CFEB0AB60581CC0303085 -:1037E0000CC7283048FAC9FFFC350A33CB300CFE31 -:1037F000B0AB80C0901BCCE04C00ACC1001BCCE057 -:103800004C00CAC0C0E06C06D0EA1C0000300B9926 -:103810000B991B3ECA992A993BC4A81BCCE04C00CB -:10382000ACC1B11BDC1897EFD7C007EDBC0007C0D7 -:10383000225C371BEC1896EDD6C007EDBC0007C024 -:10384000225C361BFC1895EBD5C007EDBC0007C009 -:10385000225C353004C2481BCCE04C00CAC2011BBC -:10386000DC189BF7DBC007F6071100EDBC0007C0B2 -:103870002216971BEC189BF7DBC007F60611000019 -:1038800054F1001302F1EC560401310000800101F3 +:1037700000A082010D02F1EC5603000000010030B0 +:103780000CFEB0AB8BCB00342CBA8C3006BA963022 +:10379000291A9A33CB300CFEB0AB80CA50320CBA27 +:1037A0008CBA9630291A9A33CB300CFEB0AB76C067 +:1037B00031C9AB30070E9C2FFDE3CD80C00000D493 +:1037C00021202DE06CF1BCEA1C80011A9B198AB6FD +:1037D0008A199AB69A781C501C301CBA8CE06C007E +:1037E00080BA9C30291A9A33CB300CFEB0AB5658B5 +:1037F0001CC030300CC7283048FAC9FFFC350A33EA +:10380000CB300CFEB0AB76C0901BCCE04C00ACC112 +:10381000001BCCE04C00CAC0C0E06C06C0EA1C0033 +:1038200000300B990B991B3ECA992A993BC4A81BDF +:10383000CCE04C00ACC1B11BDC1897EFD7C007ED52 +:10384000BC0007C0225C371BEC1896EDD6C007ED14 +:10385000BC0007C0225C361BFC1895EBD5C007EDF9 +:10386000BC0007C0225C353004C2481BCCE04C00D1 +:10387000CAC2011BDC189BF7DBC007F6071100006A +:10388000771C001302F1EC560401310000800101A5 :1038900032000100003549010D02F1EC5603000031 -:1038A000000100EDBC0007C02216961BFC189BF718 -:1038B000DBC007F6051100EDBC0007C022169530ED -:1038C00014E06C06D0EA1C00009907991699259916 -:1038D00034301CBA8C300CBA9C30291A9A33CBFE87 -:1038E000B0AAEE581CC8F1301C2FEDD8220000EB16 -:1038F000CD4080201DE067EF94EA1780011A9C0FED -:103900008BB88B0F9BB89B320CBA8C36FCBA9C30B0 -:10391000291A9A33CB300CFEB0AAD2581CC0702F93 -:10392000C70E9CFEB0AA7A300CC078C52F2F470E68 -:103930009CFEB0AA73301C2FFDE3CD80800000EB0D -:10394000CD4080201DE067EF84EA1780011A9C0FAC -:103950008BB88B0F9BB89B320CBA8C300CBA9C3056 -:10396000291A9A33CBFEB0AAAB581CC0702FC70ED1 -:103970009CFEB0AA53300CC0B8301A300B303CFE5D -:10398000B0AD6E2F470E9CFEB0AA48301C2FFDE351 -:10399000CD8080EBCD40F8202D189316943057E061 -:1039A00066EE78007454001302F1EC560401320004 +:1038A000000100EDBC0007C02216971BEC189BF727 +:1038B000DBC007F6061100EDBC0007C02216961B00 +:1038C000FC189BF7DBC007F6051100EDBC0007C034 +:1038D0002216953014E06C06C0EA1C000099079986 +:1038E0001699259934301CBA8C300CBA9C30291AA0 +:1038F0009A33CBFEB0AAE4581CC8F1301C2FEDD887 +:10390000220000EBCD4080201DE067F000EA178028 +:10391000011A9C0F8BB88B0F9BB89B320CBA8C365C +:10392000FCBA9C30291A9A33CB300CFEB0AAC85886 +:103930001CC0702FC70E9CFEB0AA70300CC078C59A +:103940002F2F470E9CFEB0AA69301C2FFDE3CD80BF +:10395000800000EBCD4080201DE067EFF0EA17808B +:10396000011A9C0F8BB88B0F9BB89B320CBA8C3012 +:103970000CBA9C30291A9A33CBFEB0AAA1581CC0AD +:10398000702FC70E9CFEB0AA49300CC0B8301A3058 +:103990000B303CFEB0AD642F470E9CFEB0AA3E300B +:1039A0001C2FFD00291F001302F1EC560401320008 :1039B0000080010133000100008AF2010D02F1ECE8 -:1039C00056030000000100EA168001AD0ABB1B305F -:1039D0000CE06506D0EA150000EB5C0010EB5C0023 -:1039E00012EB5C001430181A99327A33CB300CFE8B -:1039F000B0AAA4581CC1511B8CEDBC0003C112F12C -:103A0000D4C0080699E06A00A833CB300CFEB0AAF7 -:103A100095C1212F060C9CFEB0AA12300CC3C80E13 -:103A20009CFE3700015C7CCDF12F860C9CFEB0AA79 -:103A300007300CC3183007E0A052D029AC988C583E -:103A40000CC0A1E06C43E0EA1C0000781C199C58F3 -:103A50001CC02530175C576A3C1837C1C16A0CF886 -:103A60000C107DA37C33CBF80B0C0AEB5A00106AC8 -:103A70001CF80C107DA37C33CBF80B0C0AEB5A001E -:103A8000126A2CF80C107DA37C33CBF80B0C0A2E99 -:103A9000C5AA0A301C2FEDE3CD80F8800088708025 -:103AA00001D910EBCD4080201DE067EE30EA178091 -:103AB000011A9C0F8BB88B0F9BB89B0E9C2FCCFED2 -:103AC000B0A9BE357CBA8C00A3EF001302F1EC560E +:1039C00056030000000100E3CD8080EBCD40F820DD +:1039D0002D189316943057E066EEE4EA168001AD98 +:1039E0000ABB1B300CE06506C0EA150000EB5C006A +:1039F00010EB5C0012EB5C001430181A99327A3329 +:103A0000CB300CFEB0AA9A581CC1511B8CEDBC00E7 +:103A100003C112F1D4C0080699E06A00A833CB3084 +:103A20000CFEB0AA8BC1212F060C9CFEB0AA083058 +:103A30000CC3C80E9CFE3700015C7CCDF12F860CB8 +:103A40009CFEB0A9FD300CC3183007E0A052FC2941 +:103A5000AC988C580CC0A1E06C43DCEA1C000078E8 +:103A60001C199C581CC02530175C576A3C1837C17C +:103A7000C16A0CF80C107DA37C33CBF80B0C0AEB5D +:103A80005A00106A1CF80C107DA37C33CBF80B0C89 +:103A90000AEB5A00126A2CF80C107DA37C33CBF889 +:103AA0000B0C0A2EC5AA0A301C2FEDE3CD80F8803E +:103AB0000088708001D97CEBCD4080201DE067EE4E +:103AC0009CEA1780011A9C00AB23001302F1EC560C :103AD000040133000080010134000100009EDA017E -:103AE0000D02F1EC56030000000100314CBA9C308D -:103AF000291A9A33CB300CFEB0AA06C0712F870E5C -:103B00009CFEB0A9AF300CC188301A301B303CFE8F -:103B1000B0ACCA321CBA8C301CBA9C30291A9A3309 -:103B2000CB300CFEB0A9F0C0712F070E9CFEB0A9DF -:103B300099300CC028301C2FFDE3CD80800000EBB5 -:103B4000CD4080201DE067EF44EA1780011A9C0FEA -:103B50008BB88B0F9BB89B301A300B303CFEB0AC4F -:103B6000A30E9C2FCCFEB0A97D321CBA8C300CBAAF -:103B70009C30291A9A33CBFEB0A9C6C0712F870E8C -:103B80009CFEB0A96F300CC028301C2FFDE3CD8007 -:103B9000800000EBCD40F8202D1893CCEEE067EECE -:103BA000E0EA1780011A9C0F8BB88B0F9BB89BFA29 -:103BB000CBFFFC0E9C2FEC198AB68A199AB69AFE96 -:103BC000B0A8341896300CBA1C357CBA8C3005BAC3 -:103BD0009530291A9A33CB300CFEB0A995C03130FC -:103BE0000CC448321CBA8C3014BA940039570013F4 +:103AE0000D02F1EC560300000001000F8BB88B0FA4 +:103AF0009BB89B0E9C2FCCFEB0A9B4357CBA8C3100 +:103B00004CBA9C30291A9A33CB300CFEB0A9FCC0B9 +:103B1000712F870E9CFEB0A9A5300CC188301A30D9 +:103B20001B303CFEB0ACC0321CBA8C301CBA9C308E +:103B3000291A9A33CB300CFEB0A9E6C0712F070EBC +:103B40009CFEB0A98F300CC028301C2FFDE3CD8027 +:103B5000800000EBCD4080201DE067EFB0EA1780C9 +:103B6000011A9C0F8BB88B0F9BB89B301A300B300F +:103B70003CFEB0AC990E9C2FCCFEB0A973321CBA9F +:103B80008C300CBA9C30291A9A33CBFEB0A9BCC039 +:103B9000712F870E9CFEB0A965300CC028301C2FF9 +:103BA000FDE3CD80800000EBCD40F8202D1893CCB4 +:103BB000EEE067EF4CEA1780011A9C0F8BB88B0F71 +:103BC0009BB89BFACBFFFC0E9C2FEC198AB68A1986 +:103BD0009AB69AFEB0A82A1896300CBA1C357CBA50 +:103BE0008C3005BA9530291A9A33CB00412D001339 :103BF00002F1EC560401340000800101350001009F :103C000000F462010D02F1EC5603000000010030E7 -:103C1000291A9A33CB300CFEB0A988CF40301A3025 -:103C20001B303CFEB0AC52A6840C9CFEB0AC1A58C3 -:103C30001CC190301B0C9CFEB0AB009A9B2FFBBAB2 -:103C40001B0C9CFEB0ADF4C0602FC70E9CFEB0A94B -:103C50001BC0989A9CE04C0032CE852F470E9CFEEC -:103C6000B0A912301A300B303CFEB0AC2F300B0C28 -:103C70009CFEB0ABFB321CBA8CBA9530291A9A3331 -:103C8000CB300CFEB0A952CBE0C91E301C2FEDE3A7 -:103C9000CD80F88000853C80008D5080008B28808E -:103CA00000911C8000877480008DB880008D588042 -:103CB000008818EE1B8000E08F0006F7EC2008E07B -:103CC000860068F80B010AEE1A8000F9BA020014A7 -:103CD0000B141CF5DCC2E8E04A00FFC3F0F3DBC2C2 -:103CE000E8C420A96BBFBB1429C0B059A9C3B2F660 -:103CF000090A48F2091120F609094B5F1B104B18FD -:103D000098E6188000A96CBFBC161CC140F80B00D7 -:103D1000C532001302F1EC560401350000800101A8 +:103C10000CFEB0A98BC031300CC448321CBA8C30B9 +:103C200014BA9430291A9A33CB300CFEB0A97ECF47 +:103C300040301A301B303CFEB0AC48A6840C9CFED1 +:103C4000B0AC10581CC190301B0C9CFEB0AAF69A68 +:103C50009B2FFBBA1B0C9CFEB0ADEAC0602FC70EB9 +:103C60009CFEB0A911C0989A9CE04C0032CE852FE2 +:103C7000470E9CFEB0A908301A300B303CFEB0ACA9 +:103C800025300B0C9CFEB0ABF1321CBA8CBA9530CF +:103C9000291A9A33CB300CFEB0A948CBE0C91E30AC +:103CA0001C2FEDE3CD80F88000853C80008D508096 +:103CB000008B288000911C8000877480008DB88064 +:103CC000008D5880008818EE1B8000E08F0006F7FA +:103CD000EC2008E0860068F80B010AEE1A8000F973 +:103CE000BA0200140B141CF5DCC2E8E04A00FFC362 +:103CF000F0F3DBC2E8C420A96BBFBB1429C0B059E4 +:103D0000A9C3B2F6090A48F2091120F609094B00C5 +:103D1000B0AF001302F1EC56040135000080010140 :103D2000360001000061A9010D02F1EC560300000C -:103D30000001001200F80B094CF40B010AE08A00A4 -:103D40000EF1EC128BF7DAD2E8B96C5C0CF5BC061C -:103D500001F7BB06FF5EFB5EFDF40A1109F40911D1 -:103D600020C0805E3DF80A0A4B104BF809094CCE82 -:103D7000EB187CF5BC06015F6C104C5EFCF3DBB20B -:103D8000E85BF9F9BC00FF5EFCF80915015E0DA1C6 -:103D90007B5E0C147AC080F6091200F609094BF21A -:103DA000091108CB4BF20B010AF9BC0000A17C5DA4 -:103DB0000A5EFAEE1B8000E08F0006F7EC2008FE9A -:103DC00096FF8CF60C0C4AF60C0D4BF9DAC2E8E0C3 -:103DD0004C00FFC350F3DBC2E8E0800033A96BBFA7 -:103DE000BB1829C0B05999C2B2F6090A48F20911A4 -:103DF00020F609094B5F1B104B1498E6188000A9A8 -:103E00006ABFBA160AC1125C0CE04C00FFF9BA0294 -:103E100000F1EA129BF7DCD2E8B77A5C0AF5BA0641 -:103E200001F7BB06FF5EFBF1EA128BF7DCD2E8B9C3 -:103E30006A5C0A00DCE6001302F1EC56040136006D +:103D30000001005F1B104B1898E6188000A96CBFAB +:103D4000BC161CC140F80B1200F80B094CF40B0117 +:103D50000AE08A000EF1EC128BF7DAD2E8B96C5C5B +:103D60000CF5BC0601F7BB06FF5EFB5EFDF40A1115 +:103D700009F4091120C0805E3DF80A0A4B104BF887 +:103D800009094CCEEB187CF5BC06015F6C104C5E4B +:103D9000FCF3DBB2E85BF9F9BC00FF5EFCF8091547 +:103DA000015E0DA17B5E0C147AC080F6091200F64C +:103DB00009094BF2091108CB4BF20B010AF9BC00BF +:103DC00000A17C5D0A5EFAEE1B8000E08F0006F722 +:103DD000EC2008FE96FF8CF60C0C4AF60C0D4BF905 +:103DE000DAC2E8E04C00FFC350F3DBC2E8E0800039 +:103DF00033A96BBFBB1829C0B05999C2B2F6090AE2 +:103E000048F2091120F609094B5F1B104B1498E684 +:103E1000188000A96ABFBA160AC1125C0CE04C00F7 +:103E2000FFF9BA0200F1EA129BF7DCD2E8B77A5C3C +:103E30000AF5BA001DF7001302F1EC560401360032 :103E4000008001013700010000DE12010D02F1ECDB -:103E500056030000000100F5BA0601F7BB06FF5E3D -:103E6000FB5EFAF40915015E0AA17B5E0A187CC0AC -:103E700080F6091200F609094BF2091108CC4BF241 -:103E80000B000BA17A5D0B5EFB0000F9EB2008F53F -:103E9000DCC2E8C3A0E04A00FFC2A0A96CBFBCF32B -:103EA000DBC2E8C450E04900FFC3F0A96BBFBB14FC -:103EB00009F60C064AE6188000147A5F1AF5EB1032 -:103EC0001C144BF80B1770F7B9070127E9E08A00BB -:103ED00038E04900FFC4C4F1EB128CF9D9D2E8B93B -:103EE0006B5C0BF5BB0601F7BC06FF5EFCF1DCD09A -:103EF0001FA17BF9B800FFF3DBB3085BF9F9BB0145 -:103F000000F1EB121C5EFCA97CC091E6188000F564 -:103F1000DBB2E85BFAF9B800FF5EF8F80A1200F8C5 -:103F20000A094C5C3ACBDBF1DBD01F5EF8A97BCEF3 -:103F3000E0F6091200F609094B5C39CBABF2091126 -:103F400009F20A1120C0E0F9BB0300F6090A4C107F -:103F50004CF60A094B5C0B005BF1001302F1EC56C6 +:103E5000560300000001000601F7BB06FF5EFBF100 +:103E6000EA128BF7DCD2E8B96A5C0AF5BA0601F708 +:103E7000BB06FF5EFB5EFAF40915015E0AA17B5EDC +:103E80000A187CC080F6091200F609094BF20911E4 +:103E900008CC4BF20B000BA17A5D0B5EFB0000F926 +:103EA000EB2008F5DCC2E8C3A0E04A00FFC2A0A9ED +:103EB0006CBFBCF3DBC2E8C450E04900FFC3F0A90B +:103EC0006BBFBB1409F60C064AE6188000147A5F33 +:103ED0001AF5EB101C144BF80B1770F7B9070127F4 +:103EE000E9E08A0038E04900FFC4C4F1EB128CF924 +:103EF000D9D2E8B96B5C0BF5BB0601F7BC06FF5ED7 +:103F0000FCF1DCD01FA17BF9B800FFF3DBB3085B49 +:103F1000F9F9BB0100F1EB121C5EFCA97CC091E633 +:103F2000188000F5DBB2E85BFAF9B800FF5EF8F83C +:103F30000A1200F80A094C5C3ACBDBF1DBD01F5EB9 +:103F4000F8A97BCEE0F6091200F609094B5C39CBE3 +:103F5000ABF2091109F20A00F165001302F1EC5607 :103F60000401370000800101380001000049F90117 -:103F70000D02F1EC56030000000100F5BB0601F74D -:103F8000BC06FF5EFC167BF5BB06015F6B104B5E4B -:103F9000FBEA187F805EF8F7EC2008F3DCC2E8C685 -:103FA00010E04900FFC710A96CBFBCF5DBC2E8C731 -:103FB00040E04A00FFC7E0A96BBFBB163CF20A0114 -:103FC0004A281AE08A007EE04A00FFC6E4F1DAD20D -:103FD000E81AD01AD8F6001601E0697999EA19BAF8 -:103FE000821220F6000648301A5C9A1429F2000664 -:103FF00048F2001502F60006481429F2000648F2BD -:10400000001502F60006485C38F4090149F2000682 -:1040100048F2001502E1E813E0F60006485C38F4C7 -:10402000090149F2000648A369F3E813EAF80A0611 -:1040300048F20A1501E01AFFC02C0AF60A0648F8F1 -:1040400009011CF7BA0840F4091200F409094A28CA -:104050000A1B0C1B00E61CFF80A98AF9DAD0175E48 -:10406000FCA97CC070F8091200F809094C5C39C938 -:10407000EBF60915015E0EF5DBC2E800E719001347 +:103F70000D02F1EC560300000001001120C0E0F931 +:103F8000BB0300F6090A4C104CF60A094B5C0BF512 +:103F9000BB0601F7BC06FF5EFC167BF5BB06015FA6 +:103FA0006B104B5EFBEA187F805EF8F7EC2008F39D +:103FB000DCC2E8C610E04900FFC710A96CBFBCF521 +:103FC000DBC2E8C740E04A00FFC7E0A96BBFBB16F1 +:103FD0003CF20A014A281AE08A007EE04A00FFC645 +:103FE000E4F1DAD2E81AD01AD8F6001601E06979BD +:103FF00099EA19BA821220F6000648301A5C9A141F +:1040000029F2000648F2001502F60006481429F2CB +:10401000000648F2001502F60006485C38F4090173 +:1040200049F2000648F2001502E1E813E0F6000646 +:10403000485C38F4090149F2000648A369F3E81323 +:10404000EAF80A0648F20A1501E01AFFC02C0AF63F +:104050000A0648F809011CF7BA0840F4091200F4EE +:1040600009094A280A1B0C1B00E61CFF80A98AF9D3 +:10407000DAD0175EFCA97CC070F809005EA40013BA :1040800002F1EC5604013800008001013900010002 -:10409000000942010D02F1EC56030000000100E0AE -:1040A0004A00FFC190E61880005EF8F5DBB2E85BDD -:1040B000FAF9BC00FFF1DCD01F5EF8A97BC070F6F6 -:1040C0000A1200F60A094B5C3AC8BBEA187F80E680 -:1040D00018FF805EF8E6188000F6091509F6081743 -:1040E000105EF831A9A19CA19BE6188000BB881640 -:1040F0003CC023161C5CF8A17C2019CFA110995C50 -:10410000D95C3C5CF9F20B1506A579F6091770F439 -:104110000A1109F40C1120C0F0F9B90300F20A0ADF -:104120004BF1DBD01FF20C09495C09F5B90601F728 -:10413000B806FF5EF81279F5B906015F69F1D9D0CA -:104140001F5EF8F3DBC28BF7D9D2E7E0290381E0E9 -:104150004900FEC0F2F60C1503F9EA13DCB79BF92F -:10416000DBD2E9A37A5C0AF5BA0601F7BC06FF5E6A -:10417000FC2FF9E08A000EE049047FC060EA1B7F53 -:1041800080E61BFF805EFBF5EB10CACFB05EFEF64B -:104190000C150BF9EA135CAB7A5F1A144CBFBC0028 -:1041A000C603001302F1EC5604013900008001013E +:10409000000942010D02F1EC56030000000100127C +:1040A00000F809094C5C39C9EBF60915015E0EF5FB +:1040B000DBC2E8E04A00FFC190E61880005EF8F538 +:1040C000DBB2E85BFAF9BC00FFF1DCD01F5EF8A9B7 +:1040D0007BC070F60A1200F60A094B5C3AC8BBEACC +:1040E000187F80E618FF805EF8E6188000F6091554 +:1040F00009F60817105EF831A9A19CA19BE618806B +:1041000000BB88163CC023161C5CF8A17C2019CF8C +:10411000A110995CD95C3C5CF9F20B1506A579F607 +:10412000091770F40A1109F40C1120C0F0F9B90351 +:1041300000F20A0A4BF1DBD01FF20C09495C09F5C9 +:10414000B90601F7B806FF5EF81279F5B906015F06 +:1041500069F1D9D01F5EF8F3DBC28BF7D9D2E7E063 +:10416000290381E04900FEC0F2F60C1503F9EA13B9 +:10417000DCB79BF9DBD2E9A37A5C0AF5BA0601F752 +:10418000BC06FF5EFC2FF9E08A000EE049047FC008 +:1041900060EA1B7F80E61BFF805EFBF5EB10CA0028 +:1041A000E456001302F1EC560401390000800101CD :1041B0003A000100009C89010D02F1EC5603000059 -:1041C000000100E61B8000F2091109F20A1120C06B -:1041D000F0F9BC0300F8090A481648B7D8F80A09EC -:1041E0004C5C0CF5BC0601F7B806FF5EF8187CF5D0 -:1041F000BC06015F6C164C5EFC00003FFAB96AF425 -:104200000C011AC073F40C001AF40B011AE08200BE -:104210000F1C9F3FFAB96AF40C011AC073F40C002A -:104220001AF40B011AE08200035EFDF7EC100AA1FC -:104230007A5E0DC033163C1C9F183B1C9F0000F794 -:10424000DCB2E927FB5E6DE04B00205E2EF60B1121 -:104250001FA96CBFBCF80B0A4C5EFCF7DCC2E82758 -:10426000FB5E3D59FBC0E2F60B111FF80A1508BFB3 -:10427000BAF40B0A4AF40B1100187CF60A17605EB8 -:10428000FABF5C5CDCEE1C80005EFCE0690000F8BC -:104290000B12005E3DF80B094AF60B111F281BF3A9 -:1042A000EA128CF9DBD2E8B96A5C0AF5BA0601F7C2 -:1042B000BC06FF5EFC00001899F80B1100E619809F -:1042C00000F60C003516001302F1EC5604013A001A +:1041C000000100CFB05EFEF60C150BF9EA135CABF4 +:1041D0007A5F1A144CBFBCE61B8000F2091109F289 +:1041E0000A1120C0F0F9BC0300F8090A481648B7C4 +:1041F000D8F80A094C5C0CF5BC0601F7B806FF5E5E +:10420000F8187CF5BC06015F6C164C5EFC00003FA4 +:10421000FAB96AF40C011AC073F40C001AF40B0119 +:104220001AE082000F1C9F3FFAB96AF40C011AC011 +:1042300073F40C001AF40B011AE08200035EFDF720 +:10424000EC100AA17A5E0DC033163C1C9F183B1C73 +:104250009F0000F7DCB2E927FB5E6DE04B00205EBB +:104260002EF60B111FA96CBFBCF80B0A4C5EFCF7B5 +:10427000DCC2E827FB5E3D59FBC0E2F60B111FF8DC +:104280000A1508BFBAF40B0A4AF40B1100187CF6A1 +:104290000A17605EFABF5C5CDCEE1C80005EFCE02E +:1042A000690000F80B12005E3DF80B094AF60B118D +:1042B0001F281BF3EA128CF9DBD2E8B96A5C0AF515 +:1042C000BA060100C07E001302F1EC5604013A0068 :1042D000008001013B000100002332010D02F1ECDE -:1042E000560300000001001760CE5BD4211896161B -:1042F0009514941297E06C0764EA1C0000405B99E7 -:10430000BB406BEE1B800099CB407BEE1B8000997D -:10431000DB30AA189B2D4BF8FC010CE0A0025AC51B -:104320000C582CC030584CC161E06C08F0EA1C00FD -:1043300000783B2FFB993B7839314BE80B0C0A1482 -:1043400039C045300B994BC1382F0C780B2FFB9996 -:104350000BC0E8588CC030590CC0A1E06C08F0EAE2 -:104360001C0000784B2FFB994B300B993BE06C08FD -:10437000F0EA1C00007839314BEC0B0C0A1439C000 -:1043800035301B992B7849314BEA0B0C0A1439C094 -:1043900035302B992B782B581BC050582BC0303000 -:1043A0000B992B782A149B3009580AC060AE8A9961 -:1043B0003999499929C028AE89169CD8220000D481 -:1043C00031201D3003E0670764EA1700003001EF79 -:1043D0004100F0EF4100F4E06008F0EA10000060F6 -:1043E0001C2FFC811CEEF600580F001302F1EC5656 +:1042E00056030000000100F7BC06FF5EFC0000184A +:1042F00099F80B1100E6198000F60C1760CE5BD41C +:10430000211896169514941297E06C0760EA1C0029 +:1043100000405B99BB406BEE1B800099CB407BEE6D +:104320001B800099DB30AA189B2D4BF8FC010CE098 +:10433000A0025AC50C582CC030584CC161E06C0822 +:10434000ECEA1C0000783B2FFB993B7839314BE8B5 +:104350000B0C0A1439C045300B994BC1382F0C781F +:104360000B2FFB990BC0E8588CC030590CC0A1E052 +:104370006C08ECEA1C0000784B2FFB994B300B9932 +:104380003BE06C08ECEA1C00007839314BEC0B0C7C +:104390000A1439C035301B992B7849314BEA0B0C84 +:1043A0000A1439C035302B992B782B581BC0505824 +:1043B0002BC030300B992B782A149B3009580AC037 +:1043C00060AE8A993999499929C028AE89169CD836 +:1043D000220000D431201D3003E0670760EA170097 +:1043E000003001EF4100F000ED75001302F1EC56D2 :1043F00004013B00008001013C00010000371A016C -:104400000D02F1EC5603000000010000FC58A6C5A7 -:1044100054EEF4010C30AA300B089CE0A002061800 -:1044200095EF45010030AA301B089CE0A001FE1862 -:1044300094EF440104EE06002C500C601CF80C10A4 -:1044400014400BF74C00985816C3356A0C680BFEE5 -:10445000B0FCB418928FE26A1C681BFEB0FCAE1868 -:10446000968FF66A2C682BFEB0FCA8189BEF4B00C9 -:1044700040FEB0FD6718950C9C0C9BFEB0FD6218C9 -:1044800096049C049BFEB0FD5D0C9BFEB0FD040AEF -:104490009BFEB0FD01400BF74C0070400CF8FB0098 -:1044A00098400CF8FC0094181B400CF94B00BCEE33 -:1044B000FC00FC2FFCEF4C00FC601C58ACC04430EE -:1044C0003CEF4C00F8EEFC00FC58ACE0850102EE3D -:1044D000FC00FC201CEF4C00FC30AA30ABEEFC01D1 -:1044E0000CE0A00CE3EF4C006830AA30ABEEFC010E -:1044F0000CE0A00CF9EF4C006C30AA30ABEEFC01E4 -:104500000CE0A00D0F1894EF4400700058540013F5 +:104400000D02F1EC56030000000100EF4100F4E062 +:104410006008ECEA100000601C2FFC811CEEF60026 +:10442000FC58A6C554EEF4010C30AA300B089CE0F1 +:10443000A002061895EF45010030AA301B089CE049 +:10444000A001FE1894EF440104EE06002C500C600D +:104450001CF80C1014400BF74C00985816C3356A22 +:104460000C680BFEB0FCB418928FE26A1C681BFE4D +:10447000B0FCAE18968FF66A2C682BFEB0FCA8181C +:104480009BEF4B0040FEB0FD6718950C9C0C9BFE0B +:10449000B0FD621896049C049BFEB0FD5D0C9BFE73 +:1044A000B0FD040A9BFEB0FD01400BF74C007040CC +:1044B0000CF8FB0098400CF8FC0094181B400CF919 +:1044C0004B00BCEEFC00FC2FFCEF4C00FC601C58C9 +:1044D000ACC044303CEF4C00F8EEFC00FC58ACE0C3 +:1044E000850102EEFC00FC201CEF4C00FC30AA30E1 +:1044F000ABEEFC010CE0A00CE3EF4C006830AA30FE +:10450000ABEEFC010CE0A00CF9EF4C00A70F001380 :1045100002F1EC5604013C00008001013D00010065 -:10452000005DA2010D02F1EC560300000001003015 -:1045300006C098EE06002C79DC069BFEB0FCBE1887 -:10454000932FF65896CF756FACFC1B4120FEB0FD43 -:104550007F1896EF4600446FBCFC1B4120FEB0FD67 -:10456000771895EF450048FC1B4120089CFEB0FDE4 -:104570006F1894EF44004C601C58ACC075EF4600B7 -:104580005CEF450060EF4400643002C0F830AAE4FC -:104590000B11095C8BEEFC010CC59DEF4C01086F03 -:1045A000996F8A6F7BCCBC2FF258A2CF156E9CEE10 -:1045B000FB00F0163CC494018C580CC0D1EEFC00FA -:1045C00098EF4C00E4301CA08CEF46005CEF4500F7 -:1045D00060EF4400646EACEEFB00F4163CC11401C5 -:1045E0009C580CC0F1EEFC0098EF4C00E8301CA089 -:1045F0009CEF46005CEF450060EF440064C028A0DB -:1046000091EEFB00986E0AEEFC00E8162C183AC0FA -:10461000A2019C580CC070A0A1A0B1301CEF4C00AE -:10462000F8C558EEFC00E4181B163AC0A2018C0035 -:10463000678C001302F1EC5604013D00008001017B +:10452000005DA2010D02F1EC560300000001000045 +:104530006C30AA30ABEEFC010CE0A00D0F1894EF2C +:104540004400703006C098EE06002C79DC069BFE15 +:10455000B0FCBE18932FF65896CF756FACFC1B417C +:1045600020FEB0FD7F1896EF4600446FBCFC1B4157 +:1045700020FEB0FD771895EF450048FC1B41200850 +:104580009CFEB0FD6F1894EF44004C601C58ACC00A +:1045900075EF46005CEF450060EF4400643002C0F8 +:1045A000F830AAE40B11095C8BEEFC010CC59DEF01 +:1045B0004C01086F996F8A6F7BCCBC2FF258A2CF49 +:1045C000156E9CEEFB00F0163CC494018C580CC098 +:1045D000D1EEFC0098EF4C00E4301CA08CEF4600BC +:1045E0005CEF450060EF4400646EACEEFB00F41637 +:1045F0003CC114019C580CC0F1EEFC0098EF4C003B +:10460000E8301CA09CEF46005CEF450060EF4400E2 +:1046100064C028A091EEFB00986E0AEEFC00E8163C +:104620002C183AC0A2019C580CC070A0A1A0B100E7 +:104630004AE0001302F1EC5604013D000080010144 :104640003E00010000C869010D02F1EC56030000B4 -:10465000000100580CC070A0A1A0B1302CEF4C009C -:10466000F8C478303CEF4C00F8C438EF46005CEFFB -:10467000450060EF440064A081A09101AC580CC0DB -:1046800031301CA0ACFC1B447A069CFEB0FC7E18AA -:1046900096301BFEB0FDFCC072FC1CC47A069BFE6B -:1046A000B0FC7418966E2BFC1C41A0FEB0FC6E0C86 -:1046B0009BFEB0FDF9C0B201BC580CC091EEFC00ED -:1046C00098EF4C00EC301CA0BCC028A0B16E1BFEC3 -:1046D0007CFE0C180BEEFA0098EEFC00EC181A1495 -:1046E0003BCC1201BC580CCBE0304CEF4C00F83006 -:1046F0000CC118EE0C002BF6FA009CF74A009858F3 -:104700008CC08477EAF74A0074F6FA00C4F74A00CE -:10471000C02FFC589CCEF5EEFC00F8581CC0805809 -:104720002CC080583CC080584CC080C098302CC0F1 -:1047300088304CC068308CC048310CC028300C2FF9 -:10474000FDD8328001569C800156D88001571480D4 -:1047500001368800DC9E001302F1EC5604013E0095 +:10465000000100301CEF4C00F8C558EEFC00E418D7 +:104660001B163AC0A2018C580CC070A0A1A0B1309A +:104670002CEF4C00F8C478303CEF4C00F8C438EF15 +:1046800046005CEF450060EF440064A081A091010A +:10469000AC580CC031301CA0ACFC1B447A069CFE0C +:1046A000B0FC7E1896301BFEB0FDFCC072FC1CC432 +:1046B0007A069BFEB0FC7418966E2BFC1C41A0FE83 +:1046C000B0FC6E0C9BFEB0FDF9C0B201BC580CC032 +:1046D00091EEFC0098EF4C00EC301CA0BCC028A070 +:1046E000B16E1BFE7CFE0C180BEEFA0098EEFC007F +:1046F000EC181A143BCC1201BC580CCBE0304CEF38 +:104700004C00F8300CC118EE0C002BF6FA009CF7A8 +:104710004A0098588CC08477EAF74A0074F6FA0089 +:10472000C4F74A00C02FFC589CCEF5EEFC00F858A8 +:104730001CC080582CC080583CC080584CC080C0E1 +:1047400098302CC088304CC068308CC048310CC0C8 +:1047500028300C003C64001302F1EC5604013E00CA :10476000008001013F0001000077D2010D02F1EC51 -:10477000560300000001008001381C80013A388097 -:10478000013734EBCD40F81895149712966A0CFE59 -:10479000B0FB4A1894E0630764EA130000E74400A2 -:1047A000506A1C0E9BFEB0FB3F1897E74700546A07 -:1047B0002C0C9BFEB0FB381896E7460058300B08CF -:1047C0009CFEB0FD83C052EE148000E744005030E0 -:1047D0000B0E9CFEB0FD7AC052EE178000E747003A -:1047E00054300B0C9CFEB0FD71C052EE168000E7F9 -:1047F0004600586747663B0E9CFEB0FD67C0D26717 -:104800005C664BFEB0FD62C082676C665BFEB0FD0D -:104810005DC0323016C0283006666B0E9CFEB0FDBF -:1048200055C0D2675C667BFEB0FD50C082676C6687 -:104830008BFEB0FD4BC032301CC028300CE6FB00B4 -:10484000F00C0BE74B00F0E6FB00F4180BE74B0015 -:10485000F4E3CF80F8D703800135AC80013A50985B -:1048600089F4091900C0333009B80998892FF9B8BB -:10487000099889F409190000628C001302F1EC56C2 +:10477000560300000001002FFDD832800156B080A2 +:104780000156EC800157288001369C80013830802A +:10479000013A4C80013748EBCD40F8189514971238 +:1047A000966A0CFEB0FB4A1894E0630760EA1300B7 +:1047B00000E74400506A1C0E9BFEB0FB3F1897E7D1 +:1047C0004700546A2C0C9BFEB0FB381896E7460055 +:1047D00058300B089CFEB0FD83C052EE148000E7F9 +:1047E000440050300B0E9CFEB0FD7AC052EE178094 +:1047F00000E7470054300B0C9CFEB0FD71C052EE38 +:10480000168000E74600586747663B0E9CFEB0FDE9 +:1048100067C0D2675C664BFEB0FD62C082676C66A3 +:104820005BFEB0FD5DC0323016C0283006666B0EF0 +:104830009CFEB0FD55C0D2675C667BFEB0FD50C0EB +:1048400082676C668BFEB0FD4BC032301CC02830D6 +:104850000CE6FB00F00C0BE74B00F0E6FB00F41855 +:104860000BE74B00F4E3CF80F8D703800135C0801D +:10487000013A649889F40900EA3E001302F1EC560B :1048800004013F0000800101400001000076BA01F0 -:104890000D02F1EC56030000000100C033300AB8ED -:1048A0000A988AF40A100C140C2FCCB709B92817EF -:1048B0000818A85EFF00009889122B5C8B580BC06B -:1048C00024140B5C8BF60B100C160C2FCC5EFCEB3F -:1048D000CD40FCE0650500EA15000030A9EB490079 -:1048E000483078EB48004CEB4800503058EB48001B -:1048F00054E066999AEA169999E0679999EA173F00 -:10490000C9AB17E0663333EA163333E0673333EA73 -:10491000173FD3EAE70008E066999AEA169999E00A -:10492000679999EA173FE9EAE70010E0663333EA4E -:10493000163333E0673333EA173FF3EAE70018E052 -:10494000673333EA174003EAE70020E0673333EACE -:10495000173FE3EAE70028EB490058E0644C8CEA93 -:10496000140000780C3149F8090C08E94800487433 -:104970000C582CC031305CC2A8760C590CC230E007 -:104980004C0100C080E04C0400C110E04C0800C1A4 -:1049900040C078E06C0100EB4C005C000FE50013B8 +:104890000D02F1EC560300000001001900C0333096 +:1048A00009B80998892FF9B8099889F4091900C03D +:1048B00033300AB80A988AF40A100C140C2FCCB7BB +:1048C00009B928170818A85EFF00009889122B5C08 +:1048D0008B580BC024140B5C8BF60B100C160C2F92 +:1048E000CC5EFCEBCD40FCE06504F0EA1500003046 +:1048F000A9EB4900483078EB48004CEB48005030B9 +:1049000058EB480054E066999AEA169999E067993D +:1049100099EA173FC9AB17E0663333EA163333E041 +:10492000673333EA173FD3EAE70008E066999AEA6B +:10493000169999E0679999EA173FE9EAE70010E0CC +:10494000663333EA163333E0673333EA173FF3EA6B +:10495000E70018E0673333EA174003EAE70020E096 +:10496000673333EA173FE3EAE70028EB490058E0F2 +:10497000644C88EA140000780C3149F8090C08E905 +:10498000480048740C582CC031305CC2A8760C59D1 +:104990000CC230E04C0100C080E04C00DE78001317 :1049A00002F1EC56040140000080010141000100C9 -:1049B000001A16010D02F1EC560300000001003050 -:1049C0000CC178E06C0200EB4C005C301CC118E0BC -:1049D0006C0400EB4C005C302CC0B8E06C0800EBC1 -:1049E0004C005C303CC058310CEB4C005C304CEA65 -:1049F0000C0033E066851FEA1651EBE0679EB8EACB -:104A0000174023A7080C9A0E9BE0A00D6C3008FC01 -:104A1000194014E0A00D67E8EB0034E8EB002CE04F -:104A200068147BEA1847AEE0697AE1EA193F84E04E -:104A3000A00D59E8EB003C300A300BA91BE8EB0055 -:104A400008E8EB0010E8EB0018A70A0C980E99E0B4 -:104A5000A00D4914921693FC173FE06B2CE0A00EBA -:104A60003030080E99E0A00D3E04980699E0A00DA4 -:104A70003AA91B6B3CE0A00E2430080E99E0A00D73 -:104A80003204980699E0A00D2EE8EB00086B4CE08C -:104A9000A00E1730080E99E0A00D2504980699E0A5 -:104AA000A00D21E8EB00106B5CE0A00E0A30080EB0 -:104AB00099E0A00D1804980699E0A00D14E8EB0009 -:104AC0007655001302F1EC5604014100008001010B +:1049B000001A16010D02F1EC56030000000100047C +:1049C00000C110E04C0800C140C078E06C0100EB71 +:1049D0004C005C300CC178E06C0200EB4C005C30A9 +:1049E0001CC118E06C0400EB4C005C302CC0B8E03B +:1049F0006C0800EB4C005C303CC058310CEB4C00B8 +:104A00005C304CEA0C0033E066851FEA1651EBE09F +:104A1000679EB8EA174023A7080C9A0E9BE0A00DEA +:104A20006C3008FC194014E0A00D67E8EB0034E896 +:104A3000EB002CE068147BEA1847AEE0697AE1EA03 +:104A4000193F84E0A00D59E8EB003C300A300BA977 +:104A50001BE8EB0008E8EB0010E8EB0018A70A0CD5 +:104A6000980E99E0A00D4914921693FC173FE06B45 +:104A70002CE0A00E3030080E99E0A00D3E04980600 +:104A800099E0A00D3AA91B6B3CE0A00E2430080E63 +:104A900099E0A00D3204980699E0A00D2EE8EB00F5 +:104AA000086B4CE0A00E1730080E99E0A00D25040D +:104AB000980699E0A00D21E8EB00106B5CE0A000E7 +:104AC0001D8F001302F1EC5604014100008001012A :104AD00042000100008FDD010D02F1EC56030000E1 -:104AE0000001000018300CE94C0044301CEB4C0075 -:104AF00060EB4C0064089C2B0CE94C004CE3CF802D -:104B0000FC0000E06C0500EA1C0000301BF94B00C3 -:104B100060F94B00645EFDD43120AD18973004304D -:104B200005FACCFFF0300A300BB91BF8EB0008F89F -:104B3000EB0010300CFB6C0008E0614C8CEA1100BB -:104B400000413C838C414CEE1C8000839C415CEE18 -:104B50001C800083AC31EA029B2E0B633CE0A00971 -:104B6000EB6E0C582CC041302C503CC038303C50BF -:104B70003C633CE0660500EA1600006D8B580BC0F4 -:104B8000E0580CC080988C6D6B163CC045300CED25 -:104B90004C0060FB3C00082F6DD8326D9B580B31E8 -:104BA000EAC3B06D6B5C8BE0A009EC18936D670EE7 -:104BB0009CFEB0FC13189B069CFEB0FAA3E0A00D6F -:104BC0002DECEB003031EAF7D7B010633CE0A009E0 -:104BD000F718936D670E9CFEB0FC00189B069CFEB8 -:104BE000B0FA90009C1C001302F1EC560401420044 +:104AE0000001000E0A30080E99E0A00D1804980687 +:104AF00099E0A00D14E8EB0018300CE94C004430AC +:104B00001CEB4C0060EB4C0064089C2B0CE94C0047 +:104B10004CE3CF80FC0000E06C04F0EA1C000030A5 +:104B20001BF94B0060F94B00645EFDD43120AD18D9 +:104B30009730043005FACCFFF0300A300BB91BF87F +:104B4000EB0008F8EB0010300CFB6C0008E0614C47 +:104B500088EA110000413C838C414CEE1C800083AC +:104B60009C415CEE1C800083AC31EA029B2E0B63FF +:104B70003CE0A009EB6E0C582CC041302C503CC0DE +:104B800038303C503C633CE06604F0EA1600006DAF +:104B90008B580BC0E0580CC080988C6D6B163CC0D5 +:104BA00045300CED4C0060FB3C00082F6DD8326D99 +:104BB0009B580B31EAC3B06D6B5C8BE0A009EC181D +:104BC000936D670E9CFEB0FC13189B069CFEB0FA1A +:104BD000A3E0A00D2DECEB003031EAF7D7B0106365 +:104BE0003CE0A00012F3001302F1EC560401420075 :104BF0000080010143000100003066010D02F1EC6C -:104C000056030000000100E0A00D1AECEB00383163 -:104C1000EAF7D7B010633CE0A00A0218976D6CFE6B -:104C2000B0FBEE189B0E9CFEB0FA7EE0A00D08ECE7 -:104C3000EB0040300CED4C0064C3D8300BE0A00911 -:104C4000A7189331EA6D6B5C8B633CE0A009A01858 -:104C5000976D6CFEB0FBD41892660C6E0BFEB0F92B -:104C60002B049BFEB0FA60E0A00CEAECE80030E018 -:104C7000A00B48ECEB0030661C6E1BFEB0F91C0468 -:104C80009BFEB0FA51E0A00CDBECE80038E0A00B92 -:104C900039ECEB0038662C6E2BFEB0F90D049BFE50 -:104CA000B0FA42E0A00CCCECE80040E0A00B2AEC0B -:104CB000EB0040FACCFFF0300A300BB91BF8EB00E8 -:104CC00008F8EB00103000C57831EAF7D0B0106377 -:104CD0003CE0A0095D1897ECE200306E0CE0A00CFF -:104CE000AF04980699E0A00AD9BB1B6E0CE0A00C9B -:104CF000A704980699E0A00AD1BB08E0A00C17FA17 -:104D0000E80010E0A00AFE007A47001302F1EC561A +:104C00005603000000010009F718936D670E9CFE23 +:104C1000B0FC00189B069CFEB0FA90E0A00D1AECC8 +:104C2000EB003831EAF7D7B010633CE0A00A021875 +:104C3000976D6CFEB0FBEE189B0E9CFEB0FA7EE00A +:104C4000A00D08ECEB0040300CED4C0064C3D830F4 +:104C50000BE0A009A7189331EA6D6B5C8B633CE015 +:104C6000A009A018976D6CFEB0FBD41892660C6E6C +:104C70000BFEB0F92B049BFEB0FA60E0A00CEAEC4E +:104C8000E80030E0A00B48ECEB0030661C6E1BFE29 +:104C9000B0F91C049BFEB0FA51E0A00CDBECE8007C +:104CA00038E0A00B39ECEB0038662C6E2BFEB0F927 +:104CB0000D049BFEB0FA42E0A00CCCECE80040E012 +:104CC000A00B2AECEB0040FACCFFF0300A300BB915 +:104CD0001BF8EB0008F8EB00103000C57831EAF75C +:104CE000D0B010633CE0A0095D1897ECE200306E94 +:104CF0000CE0A00CAF04980699E0A00AD9BB1B6E8B +:104D00000CE0A00CA7049800DE9C001302F1EC5606 :104D100004014300008001014400010000244E0111 -:104D20000D02F1EC56030000000100FAEB0010EC5C -:104D3000E200386E1CE0A00C9504980699E0A00AE9 -:104D4000BFBB1B6E1CE0A00C8D04980699E0A00A66 -:104D5000B7BB08E0A00BFDFAE80018E0A00AE4FAEF -:104D6000EB0018ECE200406E2CE0A00C7B049806EF -:104D700099E0A00AA5BB1B6E2CE0A00C730498065A -:104D800099E0A00A9DBB08E0A00BE3FAE80020E050 -:104D9000A00ACAFAEB00202FF06D6C1830CA85E02B -:104DA000A00CC514961697FAEA00100C980E99E01C -:104DB000A00C0CFAEB0010FAEA00180C980E99E01F -:104DC000A00C04FAEB0018FAEA00200C980E99E007 -:104DD000A00BFCFAEB00203007C0F8FACCFFF0F88B -:104DE000070232089A0A9B04980699E0A00C5AC060 -:104DF00032049406952FF7403C1837CF05631763AC -:104E000026E2EA002C08980A99E0A00C49C0E30EBB -:104E100036C044301CFB6C0008300CE34C0044E20C -:104E2000EA00342D41A31BCDAA0E3600735E001399 +:104D20000D02F1EC560300000001000699E0A00A14 +:104D3000D1BB08E0A00C17FAE80010E0A00AFEFAC8 +:104D4000EB0010ECE200386E1CE0A00C9504980615 +:104D500099E0A00ABFBB1B6E1CE0A00C8D04980656 +:104D600099E0A00AB7BB08E0A00BFDFAE80018E044 +:104D7000A00AE4FAEB0018ECE200406E2CE0A00C74 +:104D80007B04980699E0A00AA5BB1B6E2CE0A00C42 +:104D90007304980699E0A00A9DBB08E0A00BE3FA13 +:104DA000E80020E0A00ACAFAEB00202FF06D6C1892 +:104DB00030CA85E0A00CC514961697FAEA00100CCC +:104DC000980E99E0A00C0CFAEB0010FAEA00180C0F +:104DD000980E99E0A00C04FAEB0018FAEA00200CF7 +:104DE000980E99E0A00BFCFAEB00203007C0F8FA0F +:104DF000CCFFF0F8070232089A0A9B04980699E063 +:104E0000A00C5AC032049406952FF7403C1837CFB7 +:104E10000563176326E2EA002C08980A99E0A00CC3 +:104E200049C0E30E36C044301CFB6C00ABD4001309 :104E300002F1EC560401440000800101450001002C -:104E4000004EF6010D02F1EC56030000000100C017 -:104E500084302CFB6C0008E2EA003CE2EB002C2BD7 -:104E6000C1620C2FFC830CCCCAD703800156508042 -:104E700001569C800156D88001571480013AF48075 -:104E80000135AC8001381C8001568480015D34807E -:104E900001599080015C22800159F880015DFE80FB -:104EA000015C9C80015D7480015D70D5313005E04E -:104EB000674A50EA1700003003EF4300F0EF430069 -:104EC000F4EEFC01002FFCEF4C0100401C581CC00C -:104ED00051EF4300ECEF4300E8EEFC00FC58ACC59A -:104EE0002431EA300BEEFC0104E0A00875EF4C0120 -:104EF0000831EA301BEEFC0104E0A0086D1894EFC5 -:104F000044010CEEFC00FCEE0C0020EEFB0100F670 -:104F10000B1014E14B008C581CC305EEF201086421 -:104F20000C680BFEB0F7EC18918FB1641C681BFE87 -:104F3000B0F7E618968FC6642C682BFEB0F7E01821 -:104F40009B8FDBFEB0F8A018940C9C0C9BFEB0006D -:104F5000EE5F001302F1EC560401450000800101F0 +:104E4000004EF6010D02F1EC5603000000010000D7 +:104E500008300CE34C0044E2EA00342D41A31BCDA2 +:104E6000AA0E36C084302CFB6C0008E2EA003CE25B +:104E7000EB002C2BC1620C2FFC830CCCCAD7038017 +:104E8000015664800156B0800156EC80015728809D +:104E9000013B08800135C080013830800156988080 +:104EA000015D48800159A480015C3680015A0C8064 +:104EB000015E1280015CB080015D8880015D84D557 +:104EC000313005E0674A4CEA1700003003EF430039 +:104ED000F0EF4300F4EEFC01002FFCEF4C0100402A +:104EE0001C581CC051EF4300ECEF4300E8EEFC00FF +:104EF000FC58ACC52431EA300BEEFC0104E0A008FC +:104F000075EF4C010831EA301BEEFC0104E0A0080B +:104F10006D1894EF44010CEEFC00FCEE0C0020EE4A +:104F2000FB0100F60B1014E14B008C581CC305EE7E +:104F3000F20108640C680BFEB0F7EC18918FB164B5 +:104F40001C681BFEB0F7E618968FC6642C682B0011 +:104F50007A53001302F1EC56040145000080010170 :104F60004600010000DB3D010D02F1EC560300009C -:104F7000000100F89B1896029C029BFEB0F8960C6C -:104F80009BFEB0F83D089BFEB0F83AE14C0064E0AF -:104F9000FB008CE0FC0088181BE14B00B0EEFC002D -:104FA000FC2FFCEF4C00FCEEFB010058ABC0443082 -:104FB0003CEF4C00F8EEFC00FC58ACE0850157EEED -:104FC000FC00FC201CEF4C00FCEEFC010458AB3153 -:104FD000EA30ABC211E0A0081DEF4C005C31EA30B2 -:104FE000ABEEFC0104E0A00833EF4C006031EA3086 -:104FF000ABEEFC0104E0A00849EF4C006430065819 -:1050000096C3C4EE06002C79AC0A9BFEB0F7F818E4 -:10501000952FF6CF6BE0A007F11896EF460110EE42 -:10502000F501086F7C6C0BFEB0F77C6A0BFEB0F7E5 -:10503000E7EF4C005C6F8C6C1BFEB0F7736A1BFED5 -:10504000B0F7DEEF4C00606F9C6C2BFEB0F76A6A25 -:105050002BFEB0F7D5EF4C0064EEFC00FCEE0C002C -:10506000266D9B6D8CFEB0F7CB6D7BFEB0F7C8FC58 -:105070001B404000D156001302F1EC5604014600DB +:104F7000000100FEB0F7E0189B8FDBFEB0F8A01830 +:104F8000940C9C0C9BFEB0F89B1896029C029BFE16 +:104F9000B0F8960C9BFEB0F83D089BFEB0F83AE1E5 +:104FA0004C0064E0FB008CE0FC0088181BE14B0027 +:104FB000B0EEFC00FC2FFCEF4C00FCEEFB010058B7 +:104FC000ABC044303CEF4C00F8EEFC00FC58ACE0C9 +:104FD000850157EEFC00FC201CEF4C00FCEEFC01B0 +:104FE0000458AB31EA30ABC211E0A0081DEF4C0011 +:104FF0005C31EA30ABEEFC0104E0A00833EF4C007A +:105000006031EA30ABEEFC0104E0A00849EF4C004F +:105010006430065896C3C4EE06002C79AC0A9BFE99 +:10502000B0F7F818952FF6CF6BE0A007F11896EFC0 +:10503000460110EEF501086F7C6C0BFEB0F77C6A40 +:105040000BFEB0F7E7EF4C005C6F8C6C1BFEB0F70B +:10505000736A1BFEB0F7DEEF4C00606F9C6C2BFE9A +:10506000B0F76A6A2BFEB0F7D5EF4C0064EEFC0097 +:10507000FCEE0C00AFEA001302F1EC56040146000E :105080000080010147000100006486010D02F1EC7F -:1050900056030000000100FEB0F81A18956F7CFC62 -:1050A0001B4120FEB0F88818968FE66F8CFC1B41E0 -:1050B00020FEB0F88118948FF46F9CFC1B4120FEF9 -:1050C000B0F87AEF4C0040EEFB010058ABC071EF36 -:1050D000460050EF440054EF4C00583006C10831F0 -:1050E000EAEC0B11095C8BEEFC0104E0A00798EFE1 -:1050F0004C01146F696F5A6F4BC21D2FF658A6CF23 -:1051000005E0644B6CEA1400006E9CEEFB00F016A8 -:105110003CC5A4680C580CC101EEFC008CEF4C009F -:10512000D8301C890C6EECEF4C00506EFCEF4C003C -:10513000546F0CEF4C00586EACEEFB00F4163CC103 -:1051400044681C580CC121EEFC008CEF4C00DC3094 -:105150001C891C6EECEF4C00506EFCEF4C00546F41 -:105160000CEF4C0058C0288913EEF6008CEEFC00C2 -:10517000D80C2CEF4C00E86E0BEEFA00DC0C2A1475 -:105180003BC0C2681A581AC09189238933EF430083 -:10519000EC301CEF4C00F8000069001302F1EC56F3 +:105090005603000000010000266D9B6D8CFEB0F7EA +:1050A000CB6D7BFEB0F7C8FC1B4040FEB0F81A1871 +:1050B000956F7CFC1B4120FEB0F88818968FE66F38 +:1050C0008CFC1B4120FEB0F88118948FF46F9CFC7F +:1050D0001B4120FEB0F87AEF4C0040EEFB01005877 +:1050E000ABC071EF460050EF440054EF4C00583015 +:1050F00006C10831EAEC0B11095C8BEEFC0104E0FF +:10510000A00798EF4C01146F696F5A6F4BC21D2FA7 +:10511000F658A6CF05E0644B68EA1400006E9CEEDA +:10512000FB00F0163CC5A4680C580CC101EEFC0055 +:105130008CEF4C00D8301C890C6EECEF4C00506E9C +:10514000FCEF4C00546F0CEF4C00586EACEEFB00C3 +:10515000F4163CC144681C580CC121EEFC008CEFD5 +:105160004C00DC301C891C6EECEF4C00506EFCEFE8 +:105170004C00546F0CEF4C0058C0288913EEF60019 +:105180008CEEFC00D80C2CEF4C00E86E0BEEFA0015 +:10519000DC0C2A143BC0C20017D1001302F1EC56FC :1051A00004014700008001014800010000F36D0187 -:1051B0000D02F1EC56030000000100C678183BC058 -:1051C000C2680C581CC09189238933EF4300EC302E -:1051D0002CEF4C00F8C5A8EEFC00E01816EF4600D6 -:1051E000EC303CEF4C00F8C5186EECEF4C00506E04 -:1051F000FCEF4C00546F0CEF4C005889038913EFFF -:105200004300E8EEF6008C682C580CC051EF4600C5 -:10521000E0301C892CEEFC00E00C2CEF4C00ECFC88 -:105220001B447A0A9CFEB0F7651892301BFEB0F85A -:10523000E3C072FC1CC47A0A9BFEB0F75B18926E46 -:105240002BFC1C41A0FEB0F755049BFEB0F8E0C05B -:1052500092683C580CC071EF4600E4301C893CC099 -:105260002889336E1BFE7CFE0C180BEEFC00E41844 -:10527000160C3BC082683C581CC051304CEF4C00AF -:10528000F8C048303CEF4C00F8300CC118EE0C0070 -:105290002BF6FA0090F74A008C588CC08477BAF746 -:1052A0004A0068F6FA00B8F74A00B42FFC589CCEC2 -:1052B000F5EEFC00F8581CC080582C00B3B8001361 +:1051B0000D02F1EC56030000000100681A581AC0F5 +:1051C0009189238933EF4300EC301CEF4C00F8C683 +:1051D00078183BC0C2680C581CC09189238933EFF2 +:1051E0004300EC302CEF4C00F8C5A8EEFC00E018B2 +:1051F00016EF4600EC303CEF4C00F8C5186EECEFB3 +:105200004C00506EFCEF4C00546F0CEF4C00588972 +:10521000038913EF4300E8EEF6008C682C580CC0AD +:1052200051EF4600E0301C892CEEFC00E00C2CEF26 +:105230004C00ECFC1B447A0A9CFEB0F765189230D7 +:105240001BFEB0F8E3C072FC1CC47A0A9BFEB0F7E8 +:105250005B18926E2BFC1C41A0FEB0F755049BFE20 +:10526000B0F8E0C092683C580CC071EF4600E430E2 +:105270001C893CC02889336E1BFE7CFE0C180BEE8B +:10528000FC00E418160C3BC082683C581CC051302E +:105290004CEF4C00F8C048303CEF4C00F8300CC1EB +:1052A00018EE0C002BF6FA0090F74A008C588CC0D0 +:1052B0008477BAF74A0068F6FA00B8008213001340 :1052C00002F1EC5604014800008001014900010090 -:1052D00000B3D6010D02F1EC56030000000100C13D -:1052E00080583CC230584CC2E0D93AEEFC0118302C -:1052F0001B99BBEEFB00E899CB302B99DB401C5887 -:105300000CC2D1302BEEFC0118E0A02F7BD93AEE75 -:10531000FC0118301B99BBEEFB00E899CB304B9990 -:10532000DB401C580CC1B1CEEBEEFC0118301B99D0 -:10533000BBEEFB00EC99CB308B99DB401C580CC0CA -:10534000E1CE1BEEFC0118301B99BBEEFB00EC9983 -:10535000CB310B99DB401C580CCD50D93AD7038088 -:1053600001569C800156D8800157148001368880F0 -:1053700001381C8001568480013A3880013734801E -:1053800001A820EBCD40F81895149712966A0CFEF0 -:10539000B0F5FE1894E0634A50EA130000E74400B9 -:1053A000446A1C0E9BFEB0F5F31897E74700486A65 -:1053B0002C0C9BFEB0F5EC1896E746004C300B0821 -:1053C0009CFEB0F837C052EE148000E74400443031 -:1053D0000B0E9CFEB0F82EC052EE178000E747007F -:1053E000E26D001302F1EC56040149000080010156 +:1052D00000B3D6010D02F1EC56030000000100F707 +:1052E0004A00B42FFC589CCEF5EEFC00F8581CC0C8 +:1052F00080582CC180583CC230584CC2E0D93AEE9C +:10530000FC0118301B99BBEEFB00E899CB302B99C0 +:10531000DB401C580CC2D1302BEEFC0118E0A02F52 +:10532000A3D93AEEFC0118301B99BBEEFB00E899BB +:10533000CB304B99DB401C580CC1B1CEEBEEFC01DD +:1053400018301B99BBEEFB00EC99CB308B99DB40FE +:105350001C580CC0E1CE1BEEFC0118301B99BBEEB3 +:10536000FB00EC99CB310B99DB401C580CCD50D98C +:105370003AD703800156B0800156EC80015728804F +:1053800001369C800138308001569880013A4C806B +:105390000137488001A884EBCD40F8189514971286 +:1053A000966A0CFEB0F5FE1894E0634A4CEA1300CE +:1053B00000E74400446A1C0E9BFEB0F5F31897E723 +:1053C0004700486A2C0C9BFEB0F5EC1896E74600A7 +:1053D0004C300B089CFEB0F837C052EE1480000031 +:1053E00005FF001302F1EC560401490000800101A1 :1053F0004A00010000261D010D02F1EC56030000D9 -:105400000001000048300B0C9CFEB0F825C052EEA5 -:10541000168000E746004C6717663B0E9CFEB0F80E -:105420001BC0D2672C664BFEB0F816C082673C6684 -:105430005BFEB0F811C0323016C0283006666B0E25 -:105440009CFEB0F809C0D2672C667BFEB0F804C0A1 -:1054500082673C668BFEB0F7FFC032301CC028303C -:105460000CE6FB00F00C0BE74B00F0E6FB00F41839 -:105470000BE74B00F4E3CF80F8D703800135AC8015 -:10548000013A50EBCD40F8205D1693300B504B5055 -:105490003B502B501BE0674650EA1700005813C0E2 -:1054A000918F0B780B8F1B781B8F3B782C8F2CC721 -:1054B000A8E066466CEA1600006C1C6C09129A2083 -:1054C0001A6E0B143BC1A431EA2FFB5C8BE0A005E4 -:1054D000E98F4C31EA6E0B2FFB5C8B6C1CE0A00556 -:1054E000FF8F6C31EA6E0B2FFB5C8B6C1CE0A0060F -:1054F000158F5C6E062FF6C3E831EAC161F7D9B0AB -:1055000010E0A000D826001302F1EC5604014A0076 +:10540000000100E7440044300B0E9CFEB0F82EC0B3 +:1054100052EE178000E7470048300B0C9CFEB0F8B6 +:1054200025C052EE168000E746004C6717663B0E1B +:105430009CFEB0F81BC0D2672C664BFEB0F816C0BD +:1054400082673C665BFEB0F811C0323016C028306F +:1054500006666B0E9CFEB0F809C0D2672C667BFE18 +:10546000B0F804C082673C668BFEB0F7FFC03230F4 +:105470001CC028300CE6FB00F00C0BE74B00F0E6FC +:10548000FB00F4180BE74B00F4E3CF80F8D7038060 +:105490000135C080013A64EBCD40F8205D169330B1 +:1054A0000B504B503B502B501BE067464CEA17000B +:1054B000005813C0918F0B780B8F1B781B8F3B7894 +:1054C0002C8F2CC7A8E0664668EA1600006C1C6C9E +:1054D00009129A201A6E0B143BC1A431EA2FFB5C0F +:1054E0008BE0A005E98F4C31EA6E0B2FFB5C8B6CD7 +:1054F0001CE0A005FF8F6C31EA6E0B2FFB5C8B6C00 +:105500001CE0A000892C001302F1EC5604014A00B3 :10551000008001014B0001000099A6010D02F1EC91 -:105520005603000000010005CF8F4C31EA6C0B5C84 -:105530008B6C1CE0A005E68F6C31EA6C0B5C8B6C0D -:105540001CE0A005FD8F5C6C06C278F7D9B010E0B6 -:10555000A005AE8D2C31EA300B6C1CE0A005A8181C -:10556000958D356C246E4C680BFEB0F5356A0BFEDC -:10557000B0F5A08F4C6E6C681BFEB0F52D6A1BFE5B -:10558000B0F5988F6C6E5C682BFEB0F5256A2BFE2B -:10559000B0F5908F5C6C060C9CFEB0F7C1189B6E4A -:1055A0004CFEB0F6518F1C0C9CFEB0F7B9189B6EE8 -:1055B0006CFEB0F6498F3C0C9CFEB0F7B1189B6EA8 -:1055C0005CFEB0F6418F2C6E286E396E1AFACBFF56 -:1055D000F8FACCFFF0C37C300C500C6E286E396E9C -:1055E0001AFACBFFFCFACCFFF4CCFC6E0C2FFC8F2C -:1055F0000C300C8F1C8F3C8F2CE0A02E15404B994B -:105600006B402B997B403B998B401B999B5823C047 -:1056100040301BE0A02E1A2FBDE3CF90F8D70380B7 -:1056200001569C800156D8006BA2001302F1EC5683 +:105520005603000000010006158F5C6E062FF6C3BF +:10553000E831EAC161F7D9B010E0A005CF8F4C3156 +:10554000EA6C0B5C8B6C1CE0A005E68F6C31EA6C9E +:105550000B5C8B6C1CE0A005FD8F5C6C06C278F7C1 +:10556000D9B010E0A005AE8D2C31EA300B6C1CE0F8 +:10557000A005A818958D356C246E4C680BFEB0F50F +:10558000356A0BFEB0F5A08F4C6E6C681BFEB0F553 +:105590002D6A1BFEB0F5988F6C6E5C682BFEB0F523 +:1055A000256A2BFEB0F5908F5C6C060C9CFEB0F764 +:1055B000C1189B6E4CFEB0F6518F1C0C9CFEB0F7D0 +:1055C000B9189B6E6CFEB0F6498F3C0C9CFEB0F790 +:1055D000B1189B6E5CFEB0F6418F2C6E286E396E52 +:1055E0001AFACBFFF8FACCFFF0C37C300C500C6EEB +:1055F000286E396E1AFACBFFFCFACCFFF4CCFC6EA5 +:105600000C2FFC8F0C300C8F1C8F3C8F2CE0A02EAD +:105610003D404B996B402B997B403B998B401B99AC +:105620009B5823C040301B004308001302F1EC5686 :1056300004014B00008001014C000100008D8E012F -:105640000D02F1EC560300000001008001571480A8 -:10565000015684800135AC80013AF48001381C8009 -:1056600001A7FC8001A820EBCD40FE1893169114F1 -:105670009612921097300B0E9CFEB0F711C4120ECA -:105680009BEE1B80000C9CE0A00644E064C1E6EAAF -:10569000141A63E065A5DCEA15404CE0A008720826 -:1056A000980A99E0A007E5FEB0F6A4C3CDFEB0F7D6 -:1056B0001B870C0E9C0E9BFEB0F56418970C9C0C7F -:1056C0009BFEB0F55F0E9BFEB0F506E0A0085AE029 -:1056D000A0379CFEB0F68E189BEE128000049CE072 -:1056E000A00618E0A0084E08980A99E0A007C1FE9D -:1056F000B0F680C18DFEB0F6F7830CE3CF80FE30AC -:105700001B0E9CFEB0F6C0C4F30E9B0C9CEE1C80DE -:1057100000E0A005FFE064C1E6EA141A63E065A5B5 -:10572000DCEA15404CE0A0082D08980A99E0A00793 -:10573000A03008E0698000EA194066E0A00684FE17 -:10574000B0F658CF0CFEB0F6CF870C0033DE001356 +:105640000D02F1EC56030000000100E0A02E422FF5 +:10565000BDE3CF90F8D703800156B0800156EC80AF +:1056600001572880015698800135C080013B088091 +:105670000138308001A8608001A884EBCD40FE187D +:10568000931691149612921097300B0E9CFEB0F761 +:1056900011C4120E9BEE1B80000C9CE0A00644E09F +:1056A00064C1E6EA141A63E065A5DCEA15404CE043 +:1056B000A0087208980A99E0A007E5FEB0F6A4C316 +:1056C000CDFEB0F71B870C0E9C0E9BFEB0F5641848 +:1056D000970C9C0C9BFEB0F55F0E9BFEB0F506E0B0 +:1056E000A0085AE0A037C4FEB0F68E189BEE1280D8 +:1056F00000049CE0A00618E0A0084E08980A99E073 +:10570000A007C1FEB0F680C18DFEB0F6F7830CE3B2 +:10571000CF80FE301B0E9CFEB0F6C0C4F30E9B0C77 +:105720009CEE1C8000E0A005FFE064C1E6EA141ACC +:1057300063E065A5DCEA15404CE0A0082D08980A56 +:1057400099E0A007A03008E069800000B47400135D :1057500002F1EC5604014C00008001014D000100F3 -:1057600000E736010D02F1EC560300000001000EC7 -:105770009C0E9BFEB0F51818970C9C0C9BFEB0F588 -:10578000130E9BFEB0F4BAE0A0080EE0A03750FE66 -:10579000B0F642189BEE128000049CE0A005CCE01D -:1057A000A0080208980A99E0A007753008E069800F -:1057B00000EA19C066E0A00659FEB0F62DCC5CEEFA -:1057C0001C8000FEB0F6A2830CE3CF80FE0000EB4D -:1057D000CD40F818951693149612971094300B0E2E -:1057E0009CFEB0F66FC1C20E9BEE1B80000C9CE0CD -:1057F000A005A2E0A007D8E068C1E6EA181A63E0B5 -:1058000069A5DCEA19404CE0A00745FEB0F604C9E2 -:10581000CCEE1C8000FEB0F6798B0CC278300B0EFB -:105820009CFEB0F643C2230E9B0C9CEE1C8000E055 -:10583000A00582E0A007B8E068C1E6EA181A63E0B4 -:1058400069A5DCEA19404CE0A007253008E0698032 -:1058500000EA19C066E0A00609FEB0F5DDC75CEEFF -:105860001C8000FEB0F6528B0C300B089CFEB00082 -:105870009E47001302F1EC5604014D000080010127 +:1057600000E736010D02F1EC56030000000100EAEB +:10577000194066E0A00684FEB0F658CF0CFEB0F6E5 +:10578000CF870C0E9C0E9BFEB0F51818970C9C0C46 +:105790009BFEB0F5130E9BFEB0F4BAE0A0080EE03D +:1057A000A03778FEB0F642189BEE128000049CE011 +:1057B000A005CCE0A0080208980A99E0A00775307F +:1057C00008E0698000EA19C066E0A00659FEB0F65C +:1057D0002DCC5CEE1C8000FEB0F6A2830CE3CF80E3 +:1057E000FE0000EBCD40F818951693149612971012 +:1057F00094300B0E9CFEB0F66FC1C20E9BEE1B8068 +:10580000000C9CE0A005A2E0A007D8E068C1E6EA91 +:10581000181A63E069A5DCEA19404CE0A00745FED0 +:10582000B0F604C9CCEE1C8000FEB0F6798B0CC239 +:1058300078300B0E9CFEB0F643C2230E9B0C9CEE00 +:105840001C8000E0A00582E0A007B8E068C1E6EA9D +:10585000181A63E069A5DCEA19404CE0A00725307E +:1058600008E0698000EA19C066E0A00609FEB00001 +:105870009815001302F1EC5604014D00008001015F :105880004E0001000072FD010D02F1EC5603000014 -:10589000000100F629C2B20E9C0E9BFEB0F49618D1 -:1058A000970C9C0C9BFEB0F4910E9BFEB0F438E07C -:1058B000A0078CE0A036CEFEB0F5C0189B089CE097 -:1058C000A0054CE0A00782E068C1E6EA181A63E090 -:1058D00069A5DCEA19404CE0A006EFFEB0F5AEC4C5 -:1058E0006CFEB0F625870CE3CF80F8301B089CFED9 -:1058F000B0F5EEC2930E9C0E9BFEB0F46718970CA9 -:105900009C0C9BFEB0F4620E9BFEB0F409E0A00775 -:105910005DE0A0369FFEB0F591189B089CE0A005C5 -:105920001DE0A00753E068C1E6EA181A63E069A524 -:10593000DCEA19404CE0A006C0FEB0F57FC17CFE59 -:10594000B0F5F6870CE3CF80F8D703800159F880D3 -:105950000137348001BBBC800158C480015D3480B4 -:10596000015C22800139A480013A98EBCD40E01817 -:1059700097E065FFFFEA15C406FC16C4340C9BFED5 -:10598000B0F5A6C0D30E9C0A9BFEB0F5ADC082FC5C -:105990001C44340080FB001302F1EC5604014E005D +:10589000000100F5DDC75CEE1C8000FEB0F6528B07 +:1058A0000C300B089CFEB0F629C2B20E9C0E9BFE7B +:1058B000B0F49618970C9C0C9BFEB0F4910E9BFED6 +:1058C000B0F438E0A0078CE0A036F6FEB0F5C018C2 +:1058D0009B089CE0A0054CE0A00782E068C1E6EAD6 +:1058E000181A63E069A5DCEA19404CE0A006EFFE57 +:1058F000B0F5AEC46CFEB0F625870CE3CF80F8306F +:105900001B089CFEB0F5EEC2930E9C0E9BFEB0F4FD +:105910006718970C9C0C9BFEB0F4620E9BFEB0F4D3 +:1059200009E0A0075DE0A036C7FEB0F591189B081E +:105930009CE0A0051DE0A00753E068C1E6EA181A44 +:1059400063E069A5DCEA19404CE0A006C0FEB0F5B2 +:105950007FC17CFEB0F5F6870CE3CF80F8D70380DB +:10596000015A0C800137488001BC20800158D88042 +:10597000015D4880015C36800139B880013AACEBAA +:10598000CD40E01897E065FFFFEA15C406FC16C499 +:10599000340C9B002EFB001302F1EC5604014E0068 :1059A000008001014F00010000CD46010D02F1EC25 -:1059B000560300000001000E9BFEB0F3C31897C30E -:1059C000C80E9C0A9BFEB0F595C103E06BFFFFEA91 -:1059D0001BC3330E9CFEB0F599C082FC1C43B40E71 -:1059E0009BFEB0F3AF1897C2883015EA1544073014 -:1059F0001BEA1B43340E9CFEB0F57CC0D30E9C0A00 -:105A00009BFEB0F583C082FC1CC3B40E9BFEB0F3BA -:105A1000991897C1280E9C0A9BFEB0F56BC0D33035 -:105A20001BEA1B44340E9CFEB0F570C0620E9C0C49 -:105A30009BFEB0F38718970E9CE3CD80E0D70380E0 -:105A4000013A3880013A5080013688D631204D160F -:105A50009014911292E0670038EA1700006F0C581A -:105A60000CC0416ECC580CC7406EDC189B201B8FBD -:105A7000DB581CC0453FFCE08F022B405CE04C0033 -:105A800097C105E0400097C0D5E0410097C0A5E070 -:105A9000420097C075305CEF4C00443FFCE08F0241 -:105AA000186F1C189B201BEF4B0044581CCE443031 -:105AB00006EF4600408FC60005AB001302F1EC561E +:1059B00056030000000100FEB0F5A6C0D30E9C0AFD +:1059C0009BFEB0F5ADC082FC1C44340E9BFEB0F3D0 +:1059D000C31897C3C80E9C0A9BFEB0F595C103E09F +:1059E0006BFFFFEA1BC3330E9CFEB0F599C082FC2F +:1059F0001C43B40E9BFEB0F3AF1897C2883015EA73 +:105A0000154407301BEA1B43340E9CFEB0F57CC0E6 +:105A1000D30E9C0A9BFEB0F583C082FC1CC3B40E5F +:105A20009BFEB0F3991897C1280E9C0A9BFEB0F517 +:105A30006BC0D3301BEA1B44340E9CFEB0F570C023 +:105A4000620E9C0C9BFEB0F38718970E9CE3CD80F2 +:105A5000E0D70380013A4C80013A648001369CD63D +:105A600031204D169014911292E0670028EA170039 +:105A7000006F0C580CC0416ECC580CC7406EDC183F +:105A80009B201B8FDB581CC0453FFCE08F022B4046 +:105A90005CE04C0097C105E0400097C0D5E04100B4 +:105AA00097C0A5E0420097C075305CEF4C00443FC2 +:105AB000FCE08F02186F1C00FAA4001302F1EC56F0 :105AC00004014F00008001015000010000DD2E01A3 -:105AD0000D02F1EC56030000000100049CFEB0F53D -:105AE00079E06BFE00EA1B46FFFEB0F393FEB0F5D3 -:105AF00043E06B00FFF80B0C0A14991295029CFE10 -:105B0000B0F568E06BFE00EA1B46FFFEB0F382FED4 -:105B1000B0F532E06B00FFF80B0C0A1494009CFE09 -:105B2000B0F558E06BFE00EA1B46FFFEB0F372FED4 -:105B3000B0F522E06B00FFF80B0C0A149C189B16C2 -:105B400093405CFEB0F546E06BFE00EA1B46FFFEAC -:105B5000B0F360FEB0F510E06B00FFF80B0C0A1418 -:105B60009C0A99089A069BCDADE06C09C4EA1C001A -:105B7000009946405CFEB0F52DFC1B437FFEB0F360 -:105B8000BDE06BFE00EA1B46FFFEB0F343FEB0F43F -:105B9000F31893009CFEB0F51DFC1B437FFEB0F391 -:105BA000ADE06BFE00EA1B46FFFEB0F333FEB0F43F -:105BB000E31896029CFEB0F50DFC1B437FFEB0F38C -:105BC0009DE06BFE00EA1B46FFFEB0F323FEB0F43F -:105BD000D31894049CFEB0F4FDFC1B002D4600136A +:105AD0000D02F1EC56030000000100189B201BEFA3 +:105AE0004B0044581CCE443006EF4600408FC6049D +:105AF0009CFEB0F579E06BFE00EA1B46FFFEB0F3BA +:105B000093FEB0F543E06B00FFF80B0C0A149912FA +:105B100095029CFEB0F568E06BFE00EA1B46FFFEB6 +:105B2000B0F382FEB0F532E06B00FFF80B0C0A1404 +:105B300094009CFEB0F558E06BFE00EA1B46FFFEA9 +:105B4000B0F372FEB0F522E06B00FFF80B0C0A1404 +:105B50009C189B1693405CFEB0F546E06BFE00EA95 +:105B60001B46FFFEB0F360FEB0F510E06B00FFF8DF +:105B70000B0C0A149C0A99089A069BCDADE06C099F +:105B8000C0EA1C00009946405CFEB0F52DFC1B43AA +:105B90007FFEB0F3BDE06BFE00EA1B46FFFEB0F3F4 +:105BA00043FEB0F4F31893009CFEB0F51DFC1B43BC +:105BB0007FFEB0F3ADE06BFE00EA1B46FFFEB0F3E4 +:105BC00033FEB0F4E31896029CFEB0F50DFC1B43C7 +:105BD0007FFEB0F39DE06BFE00EA1B00230B001379 :105BE00002F1EC5604015000008001015100010057 -:105BF00000C993010D02F1EC5603000000010043BF -:105C00007FFEB0F38DE06BFE00EA1B46FFFEB0F3B3 -:105C100013FEB0F4C36E0BE06509C4EA1500005B27 -:105C2000FBC0C06A4A580AC090EAFA0A20580AC063 -:105C3000556E2AE04A0050C2456EB9E0687FFF12F7 -:105C4000186A0AB13AAF5AF203024EAF5E1C0A8BD1 -:105C50000A6A1AB13AAF5AF206024EAF5E1C0A8BBC -:105C60001A6A2AB13AAF5AF204024EAF5E1C0A8B8E -:105C70002A6A3AB538AF58B939AF5910098B396E1D -:105C80006A14992FF98F69E04A003CC174405CE0C6 -:105C90004C0097FE95FF15E0400097FE95FF11E040 -:105CA000410097FE95FF0DE0420097FE95FF092EFB -:105CB000876E0C201C8F0CC03B362A8FBA301A8B93 -:105CC0004A6A0A14136A1A14166A2A14146A3A14CD -:105CD0001CEAFA0A18E0694666B539AF59EC0301C7 -:105CE00008E06A3999B538AF581009EB490A18EA43 -:105CF000FA0A1CE0684666B538AF58E80C010E0099 -:105D000029F1001302F1EC56040151000080010159 +:105BF00000C993010D02F1EC5603000000010046BC +:105C0000FFFEB0F323FEB0F4D31894049CFEB0F46E +:105C1000FDFC1B437FFEB0F38DE06BFE00EA1B46EC +:105C2000FFFEB0F313FEB0F4C36E0BE06509C0EAEB +:105C30001500005BFBC0C06A4A580AC090EAFA0A25 +:105C400020580AC0556E2AE04A0050C2456EB9E09D +:105C5000687FFF12186A0AB13AAF5AF203024EAFD8 +:105C60005E1C0A8B0A6A1AB13AAF5AF206024EAFAC +:105C70005E1C0A8B1A6A2AB13AAF5AF204024EAF7E +:105C80005E1C0A8B2A6A3AB538AF58B939AF591039 +:105C9000098B396E6A14992FF98F69E04A003CC16B +:105CA00074405CE04C0097FE95FF15E0400097FEC5 +:105CB00095FF11E0410097FE95FF0DE0420097FE31 +:105CC00095FF092E876E0C201C8F0CC03B362A8F47 +:105CD000BA301A8B4A6A0A14136A1A14166A2A14FA +:105CE000146A3A141CEAFA0A18E0694666B539AF34 +:105CF00059EC030108E06A3999B538AF581009002A +:105D0000DA15001302F1EC56040151000080010184 :105D100052000100005C58010D02F1EC5603000036 -:105D2000000100E06A3999B53EAF5E1C08EB480AF5 -:105D30001CEAFA0A20E06E4666B53EAF5EEC04004F -:105D40000206021802E06A3999B532B152040EEB2C -:105D50004E0A206E9A1C3AC0348F9EC068F4021519 -:105D60000E1412AF528F926EA2049AFE3AE0016EA8 -:105D7000911431C0248F9A5BFBC0506E2AE04A0018 -:105D800050C145E0610667BD31AF51E06A7998B511 -:105D900032AF5202028FA26E910411E06A0A3DB541 -:105DA00031AF510202EB420A145BFBC0416E7A2F05 -:105DB000FA8F7AEAF20A141C32C0A45BFBC0816E2F -:105DC0003B2B1B350AF60A0C0A8F0BC0E8043EC0B9 -:105DD000C45BFBC0A06E1B5BFBC0716E3B2FFB3531 -:105DE0000AF60A0C0A8F1B6E31350BE20B0C0AEA1D -:105DF0000B002B9759F7480154F74E0294F74203D2 -:105E0000D4F7430514F7460654F7440794F74C08B3 -:105E1000D46E0C5BFCC5C06E1B5BFBC5901631C518 -:105E2000716EFE00B970001302F1EC5604015200CD +:105D2000000100EB490A18EAFA0A1CE0684666B569 +:105D300038AF58E80C010EE06A3999B53EAF5E1CE9 +:105D400008EB480A1CEAFA0A20E06E4666B53EAF48 +:105D50005EEC04000206021802E06A3999B532B11D +:105D600052040EEB4E0A206E9A1C3AC0348F9EC02D +:105D700068F402150E1412AF528F926EA2049AFEAE +:105D80003AE0016E911431C0248F9A5BFBC0506ED3 +:105D90002AE04A0050C145E0610667BD31AF51E0DD +:105DA0006A7998B532AF5202028FA26E910411E067 +:105DB0006A0A3DB531AF510202EB420A145BFBC0E7 +:105DC000416E7A2FFA8F7AEAF20A141C32C0A45B71 +:105DD000FBC0816E3B2B1B350AF60A0C0A8F0BC0E9 +:105DE000E8043EC0C45BFBC0A06E1B5BFBC0716ED1 +:105DF0003B2FFB350AF60A0C0A8F1B6E31350BE27E +:105E00000B0C0AEA0B002B9759F7480154F74E0286 +:105E100094F74203D4F7430514F7460654F74407B2 +:105E200094F74C00D0DB001302F1EC560401520051 :105E3000008001015300010000E3E3010D02F1ECD9 -:105E400056030000000100580EC2906E4AE04A005E -:105E500050C2546E7B59ABC0446E8B580BC1F114C9 -:105E60000C350BF80B0C08EA09002C5C3AF8FB081F -:105E7000D4FAEB0008F8FA0794F8FB0654BB1BF8B9 -:105E8000F80514F8F903D4F8FA0294F8FB015478F1 -:105E90005C5D1E6E7C59AC5F5C8F8C30068F466EED -:105EA000285848C0258F766EEE580EC1F05858C15C -:105EB000D56E7C59ACC0446E8C580CC171580EC064 -:105EC000D0350C500C6E090A9AFE3AFD6C0A9BFE06 -:105ED0003BFEAC0A9C2ECC5D1E6E5C2FFC8F5C6E74 -:105EE0007C59AC5F5C8F8C8F763FFC8F0C8F1C8F46 -:105EF000266E0C5BFCC2D06EFE580EC2706E4AE07D -:105F00004A0050C2346E7B59ABC0446E8B580BC1F3 -:105F1000D1140C350BF80B0C08EA090025EAFB0834 -:105F2000D4FAEB0008EAFA0794EAFB0654BB1BEA32 -:105F3000F80514EAF903D4EAFA0294EAFB01546A78 -:105F40005C5D1E6E4C2FFC0091BD001302F1EC56FF +:105E40005603000000010008D46E0C5BFCC5C06E58 +:105E50001B5BFBC5901631C5716EFE580EC2906E6D +:105E60004AE04A0050C2546E7B59ABC0446E8B5816 +:105E70000BC1F1140C350BF80B0C08EA09002C5C73 +:105E80003AF8FB08D4FAEB0008F8FA0794F8FB0696 +:105E900054BB1BF8F80514F8F903D4F8FA0294F887 +:105EA000FB0154785C5D1E6E7C59AC5F5C8F8C305E +:105EB000068F466E285848C0258F766EEE580EC164 +:105EC000F05858C1D56E7C59ACC0446E8C580CC18A +:105ED00071580EC0D0350C500C6E090A9AFE3AFD6E +:105EE0006C0A9BFE3BFEAC0A9C2ECC5D1E6E5C2FAA +:105EF000FC8F5C6E7C59AC5F5C8F8C8F763FFC8F27 +:105F00000C8F1C8F266E0C5BFCC2D06EFE580EC22E +:105F1000706E4AE04A0050C2346E7B59ABC0446E8A +:105F20008B580BC1D1140C350BF80B0C08EA090087 +:105F300025EAFB08D4FAEB0008EAFA0794EAFB0624 +:105F400054BB1BEAF80514002382001302F1EC563F :105F500004015300008001015400010000F7CB014F -:105F60000D02F1EC560300000001008F4C6E2C2F47 -:105F7000FC8F2C6E3C2FFC350BF80B0C0A8F3B3042 -:105F80000C2FCDDC32D70380013AF48001381C801D -:105F900001373480013A98E06C0038EA1C00003088 -:105FA0003B99DB301B99CB5EFD0000EBCD4080E0E0 -:105FB000680038EA180000E06E7FFF919EE06E0CEA -:105FC000CC91AEE06E014791BE300E916E917E9104 -:105FD0008E912E3FF791079117913E914EE06809FF -:105FE000C4EA180000F14E0A20F14E0A1CF14E0AD4 -:105FF00018910C911B912A9139E3CF80800000EB1E -:10600000CD40FC18971694E06C4870EA1C000078AC -:1060100006E0654864EA1500006C3CFEB0F30C181D -:10602000926C0CFEB0F30818938E8CEE0C001C984A -:106030002CFEB0F317069BFEB0F0706A0BFEB0F0BA -:106040006D049BFEB0F1A2E06BF5C3EA1B411CFEA0 -:10605000B0F128890C6C4CFEB0F2EE18938E8CEEE9 -:106060000C001C983CFEB0F2FD189200B17F0013AA +:105F60000D02F1EC56030000000100EAF903D4EA47 +:105F7000FA0294EAFB01546A5C5D1E6E4C2FFC8FA2 +:105F80004C6E2C2FFC8F2C6E3C2FFC350BF80B0C21 +:105F90000A8F3B300C2FCDDC32D70380013B0880C9 +:105FA0000138308001374880013AACE06C0028EAC3 +:105FB0001C0000303B99DB301B99CB5EFD0000EBF1 +:105FC000CD4080E0680028EA180000E06E7FFF9175 +:105FD0009EE06E0CCC91AEE06E014791BE300E910A +:105FE0006E917E918E912E3FF791079117913E9180 +:105FF0004EE06809C0EA180000F14E0A20F14E0A8E +:106000001CF14E0A18910C911B912A9139E3CF8013 +:10601000800000EBCD40FC18971694E06C486CEAC9 +:106020001C00007806E0654860EA1500006C3CFE44 +:10603000B0F30C18926C0CFEB0F30818938E8CEE33 +:106040000C001C982CFEB0F317069BFEB0F0706A93 +:106050000BFEB0F06D049BFEB0F1A2E06BF5C3EA5D +:106060001B411CFEB0F128890C6C4C005F370013FB :1060700002F1EC56040154000080010155000100BA -:10608000009D73010D02F1EC560300000001006C4D -:106090001CFEB0F2E3049BFEB0F0526A1BFEB0F0AF -:1060A000BD069BFEB0F184E06BF5C3EA1B411CFE0C -:1060B000B0F10A891C6C5CFEB0F2D018938E8CEEA5 -:1060C0000C001C984CFEB0F2DF18926C2CFEB0F263 -:1060D000C5049BFEB0F0346A2BFEB0F09F069BFE19 -:1060E000B0F166E06BF5C3EA1B411CFEB0F0EC8931 -:1060F0002C089B0E9CC03CE3CF90FCEBCD40FC18E1 -:10610000971694E06C4870EA1C00007806E0654839 -:1061100064EA1500006C3CFEB0F2A018926C0CFE14 -:10612000B0F29C18938E8CEE0C001C982CFEB0F2F2 -:10613000AB069BFEB0F0046A0BFEB0F001049BFEC0 -:10614000B0F136E06BF5C3EA1B411CFEB0F0BC8930 -:106150000C6C4CFEB0F28218938E8CEE0C001C98E6 -:106160003CFEB0F29118926C1CFEB0F277049BFEDC -:10617000B0EFE66A1BFEB0F051069BFEB0F118E0EE -:106180006BF5C3EA1B411CFEB0F09E891C6C5C00E1 -:10619000A2ED001302F1EC5604015500008001014C +:10608000009D73010D02F1EC56030000000100FEBB +:10609000B0F2EE18938E8CEE0C001C983CFEB0F221 +:1060A000FD18926C1CFEB0F2E3049BFEB0F0526A45 +:1060B0001BFEB0F0BD069BFEB0F184E06BF5C3EAB9 +:1060C0001B411CFEB0F10A891C6C5CFEB0F2D018BA +:1060D000938E8CEE0C001C984CFEB0F2DF18926C84 +:1060E0002CFEB0F2C5049BFEB0F0346A2BFEB0F07B +:1060F0009F069BFEB0F166E06BF5C3EA1B411CFEF8 +:10610000B0F0EC892C089B0E9CC03CE3CF90FCEBDC +:10611000CD40FC18971694E06C486CEA1C0000789F +:1061200006E0654860EA1500006C3CFEB0F2A0187D +:10613000926C0CFEB0F29C18938E8CEE0C001C98A6 +:106140002CFEB0F2AB069BFEB0F0046A0BFEB0F082 +:1061500001049BFEB0F136E06BF5C3EA1B411CFE67 +:10616000B0F0BC890C6C4CFEB0F28218938E8CEEB1 +:106170000C001C983CFEB0F29118926C1CFEB0F220 +:1061800077049BFEB0EFE66A1BFEB0F051069B0061 +:106190002D66001302F1EC56040155000080010148 :1061A000560001000008B8010D02F1EC5603000092 -:1061B000000100FEB0F26418938E8CEE0C00178E76 -:1061C0004CFEB0F27318976C2CFEB0F2590E9BFE89 -:1061D000B0EFC86A2BFEB0F033069BFEB0F0FAE0D9 -:1061E0006BF5C3EA1B411CFEB0F080892CE3CF9015 -:1061F000FCD70380013AF480013AC8800135AC80B5 -:106200000137349889F4091900C0333009B8099866 -:10621000892FF9B8099889F4091900C033300AB8F0 -:106220000A988AF40A100C140C2FCCB709B9281755 -:106230000818A85EFF00009889122B5C8B580BC0D1 -:1062400024140B5C8BF60B100C160C2FCC5EFCEBA5 -:10625000CD40F8189516971496300C30048A83C1F7 -:10626000185C835803C085E60B100C0A0B761BFEE6 -:10627000B0EFE620135C835803C0340C9320132F37 -:10628000F4EE041900CEE5E3CD80F8EBCD40F8182C -:106290009516971496300C30048A83C1185C835885 -:1062A00003C085E60B100C0A0B762BFEB0EFC8205E -:1062B000135C830006A9001302F1EC56040156009A +:1061B000000100FEB0F118E06BF5C3EA1B411CFEC4 +:1061C000B0F09E891C6C5CFEB0F26418938E8CEE6D +:1061D0000C00178E4CFEB0F27318976C2CFEB0F2C8 +:1061E000590E9BFEB0EFC86A2BFEB0F033069BFE43 +:1061F000B0F0FAE06BF5C3EA1B411CFEB0F08089F9 +:106200002CE3CF90FCD70380013B0880013ADC806F +:106210000135C0800137489889F4091900C033302E +:1062200009B80998892FF9B8099889F4091900C0A3 +:1062300033300AB80A988AF40A100C140C2FCCB721 +:1062400009B928170818A85EFF00009889122B5C6E +:106250008B580BC024140B5C8BF60B100C160C2FF8 +:10626000CC5EFCEBCD40F8189516971496300C30A8 +:10627000048A83C1185C835803C085E60B100C0A9E +:106280000B761BFEB0EFE620135C835803C0340C82 +:106290009320132FF4EE041900CEE5E3CD80F8EB44 +:1062A000CD40F8189516971496300C30048A83C1A7 +:1062B000185C8300AF28001302F1EC56040156006D :1062C000008001015700010000B703010D02F1EC4D -:1062D000560300000001005803C0340C9320132F14 -:1062E000F4EE041900CEE5E3CD80F8EBCD40F818CC -:1062F0009516971496300C30048A83C1185C835825 -:1063000003C085E60B100C0A0B763BFEB0EFAA200B -:10631000135C835803C0340C9320132FF4EE04193C -:1063200000CEE5E3CD80F880013688D431E02D073A -:10633000D418911A9CE06BD95CEA1B8001E06907D4 -:10634000D4170A18AA2049CFD1FC173FE0E06540D6 -:1063500000EA15407F300B029CFEB0F15BC4B3FC39 -:10636000133F50301BEA1B3F80029CFEB0F15E1AC7 -:1063700090C192029CE0A002CB30080A99E0A002F2 -:106380003E30080E99E0A00125E0A0030CE00C03CC -:106390002CE0A0032230080699E0A00230FEB0F005 -:1063A000EFC718FC1C3F80029BFEB0F025E0A00266 -:1063B000AF30080A99E0A0022230080E99E0A0014F -:1063C00009E0A002F0E00C032CE0A0030630080670 -:1063D00099E0A002141498006696001302F1EC569E +:1062D000560300000001005803C085E60B100C0AAD +:1062E0000B762BFEB0EFC820135C835803C0340C30 +:1062F0009320132FF4EE041900CEE5E3CD80F8EBE4 +:10630000CD40F8189516971496300C30048A83C146 +:10631000185C835803C085E60B100C0A0B763BFE15 +:10632000B0EFAA20135C835803C0340C9320132FC2 +:10633000F4EE041900CEE5E3CD80F88001369CD45C +:1063400031E02D07D418911A9CE06BD9C8EA1B8064 +:1063500001E06907D4170A18AA2049CFD1FC173FDA +:10636000E0E0654000EA15407F300B029CFEB0F192 +:106370005BC4B3FC133F50301BEA1B3F80029CFE02 +:10638000B0F15E1A90C192029CE0A002CB30080AE4 +:1063900099E0A0023E30080E99E0A00125E0A0039C +:1063A0000CE00C032CE0A0032230080699E0A002C8 +:1063B00030FEB0F0EFC718FC1C3F80029BFEB0F02F +:1063C00025E0A002AF30080A99E0A0022230080EB2 +:1063D00099E0A00109E0A00040BE001302F1EC56D4 :1063E0000401570000800101580001000020E8016D -:1063F0000D02F1EC560300000001001699E06A2D31 -:1064000018EA1A5444E06B21FBEA1B3FF9E0A000B4 -:10641000BFFEB0F0C7C498FC1BBF80029CFEB0F169 -:106420000B1A93C1C3EE118000029CE0A0028230DF -:10643000080A99E0A001F530080E99E0A000DCE020 -:10644000A002C3E60C032CE0A002D93008FC19BF5F -:1064500050E0A001E6FEB0F0A5C278FC1CBF8002AF -:106460009BFEB0EFDBE0A0026530080A99E0A001D6 -:10647000D830080E99E0A000BFE0A002A6E60C0309 -:106480002CE0A002BC3008FC193F50E0A001C9E09C -:10649000682D18EA185444E06921FBEA19BFF9E0B5 -:1064A000A000AAFEB0F07EFE3DF82CD832D70380C3 -:1064B00001599080015DCA80015DFE80015C22EB84 -:1064C000CD40C018971696301B0C9CFEB0F0B4C09F -:1064D000830E9C0C9BFEB0EFA1C3BFE3CD80C03008 -:1064E0000B0C9CFEB0F0B4C2E20E9C0C9BFEB0EF15 -:1064F000951896300B0E9CFEB0F09E0084B60013EB +:1063F0000D02F1EC5603000000010002F0E00C0376 +:106400002CE0A0030630080699E0A00214149816A8 +:1064100099E06A2D18EA1A5444E06B21FBEA1B3F0D +:10642000F9E0A000BFFEB0F0C7C498FC1BBF80021B +:106430009CFEB0F10B1A93C1C3EE118000029CE0E8 +:10644000A0028230080A99E0A001F530080E99E018 +:10645000A000DCE0A002C3E60C032CE0A002D930CF +:1064600008FC19BF50E0A001E6FEB0F0A5C278FC20 +:106470001CBF80029BFEB0EFDBE0A0026530080A83 +:1064800099E0A001D830080E99E0A000BFE0A0027A +:10649000A6E60C032CE0A002BC3008FC193F50E03B +:1064A000A001C9E0682D18EA185444E06921FBEA0C +:1064B00019BFF9E0A000AAFEB0F07EFE3DF82CD88E +:1064C00032D703800159A480015DDE80015E128015 +:1064D000015C36EBCD40C018971696301B0C9CFE25 +:1064E000B0F0B4C0830E9C0C9BFEB0EFA1C3BFE321 +:1064F000CD80C0300B0C9CFEB0F0B4002C9B001380 :1065000002F1EC560401580000800101590001001D -:10651000006053010D02F1EC560300000001000C75 -:106520009CC123C28FE0A00217E0682D18EA18541E -:1065300044E06921FBEA194009E0A0006FFEB0F0D9 -:1065400043E3CD80C0C17FE0A00206E0682D18EAD9 -:10655000185444E06921FBEA19C009E0A0005EFE7E -:10656000B0F032E3CD80C0301B0E9CFEB0F076C0A0 -:1065700073E06C0FDBEA1C3FC9E3CD80C0300B0E2B -:106580009CFEB0F077C072E06C0FDBEA1CBFC9E381 -:10659000CD80C0E3CF80C08001381C80015D348095 -:1065A0000159F8800139A480013A3880013A50D06D -:1065B00021F7E92004C047EE198000C358A17BF7FA -:1065C000EA1004C041EE198000C7F85CFCA179F123 -:1065D000E91004E08000E2103AF20B1300C0825C84 -:1065E000DC16971496129B109A0E990C984ED50AA9 -:1065F0003BC0C2D401C43CD402101AF609014BF7C7 -:10660000EA1004C721D0225EFB5C2AE08100B30AB5 -:1066100039E08300C3CAE8D021F7E92004C047006D -:106620009729001302F1EC56040159000080010182 +:10651000006053010D02F1EC56030000000100C2BF +:10652000E20E9C0C9BFEB0EF951896300B0E9CFE75 +:10653000B0F09E0C9CC123C28FE0A00217E0682D32 +:1065400018EA185444E06921FBEA194009E0A00068 +:106550006FFEB0F043E3CD80C0C17FE0A00206E053 +:10656000682D18EA185444E06921FBEA19C009E0D3 +:10657000A0005EFEB0F032E3CD80C0301B0E9CFE6A +:10658000B0F076C073E06C0FDBEA1C3FC9E3CD804E +:10659000C0300B0E9CFEB0F077C072E06C0FDBEAEF +:1065A0001CBFC9E3CD80C0E3CF80C08001383080FC +:1065B000015D4880015A0C800139B880013A4C8055 +:1065C000013A64D021F7E92004C047EE198000C3E6 +:1065D00058A17BF7EA1004C041EE198000C7F85CAF +:1065E000FCA179F1E91004E08000E2103AF20B130B +:1065F00000C0825CDC16971496129B109A0E990CC0 +:10660000984ED50A3BC0C2D401C43CD402101AF63D +:1066100009014BF7EA1004C721D0225EFB5C2A0077 +:106620000616001302F1EC56040159000080010126 :106630005A00010000F598010D02F1EC560300002C -:10664000000100EE198000CCDBA17BF7EA1004C446 -:10665000E05CFCA179F1E91004E08000B1123BC0DC -:106660007216971496129B109A0E990C984D650A03 -:106670003BC0E2D401C15CD402100AF609004BC44D -:10668000625D0B5D0AC022A1AA2FF7C4085C2AE054 -:106690008100830A39E0830093129B109AC8F8D4D2 -:1066A00001CC7CCD4CD4020E265E0CE046003FC1EE -:1066B000B2EC051120E0460020C0B2F0050944F21A -:1066C000050945F0060A48F2060A490A48C088F258 -:1066D000050944104412983009F0060A485804C0CD -:1066E00020A1A85EFCD402D743C5E85CFCA179F3E5 -:1066F000E81004C0605D09129B109AD0225EFB5D19 -:1067000009A19C5D0B126BD0225EFBD401C5DCD4C9 -:10671000025807E08A0016E9DAC00BE0240400C042 -:10672000C3C041EDBA000BC082E0640800080A5CF7 -:106730000BC032BFBB2FF7E04707FFC324C3485C41 -:10674000372FF700167F001302F1EC5604015A00B0 +:10664000000100E08100B30A39E08300C3CAE8D04A +:1066500021F7E92004C047EE198000CCDBA17BF7CD +:10666000EA1004C4E05CFCA179F1E91004E08000C8 +:10667000B1123BC07216971496129B109A0E990C89 +:10668000984D650A3BC0E2D401C15CD402100AF601 +:1066900009004BC4625D0B5D0AC022A1AA2FF7C49A +:1066A000085C2AE08100830A39E0830093129B1082 +:1066B0009AC8F8D401CC7CCD4CD4020E265E0CE0F6 +:1066C00046003FC1B2EC051120E0460020C0B2F008 +:1066D000050944F2050945F0060A48F2060A490A86 +:1066E00048C088F2050944104412983009F0060A9F +:1066F000485804C020A1A85EFCD402D743C5E85C7A +:10670000FCA179F3E81004C0605D09129B109AD0D7 +:10671000225EFB5D09A19C5D0B126BD0225EFBD457 +:1067200001C5DCD4025807E08A0016E9DAC00BE0A4 +:10673000240400C0C3C041EDBA000BC082E064086D +:1067400000080A0013E7001302F1EC5604015A0096 :10675000008001015B000100004A23010D02F1EC01 -:1067600056030000000100E0470036C2922F67EE9A -:10677000051120E0470020C0B2F4050946F60509DE -:1067800045F4070A4AF6070A4B0A4AC088F6050983 -:10679000461446169A300BF4070A4AEDBA0000C0B8 -:1067A000920C76C041EDBA0001C04230160C0A5C72 -:1067B0000B5D0B5D0AA17BC1483FFBC128300B304C -:1067C0000AC0F8489B300AC0C8EDBB001FF7B701EC -:1067D00001AB9AF5EB115AA17BAB9BF7E7115BA1DB -:1067E0009C5D0BD0225EFBFFE00000F60412005E11 -:1067F0000CE0440020C0C0E8051120F604094BF469 -:10680000050A450A4BF404094A08175EFCF4041211 -:10681000002E04149BF604094B300A08175EFCF2A4 -:106820000412005E0CE0440020C0C0E8051120F214 -:10683000040949F0050A450A49F004094808165EAA -:10684000FCF00412002E041099F2040949300808E3 -:10685000165EFCF6071615AB6BF7EA135BAB7A5CBA -:1068600037EFBB001FF7B700BF9D001302F1EC56D6 +:10676000560300000001005C0BC032BFBB2FF7E0F6 +:106770004707FFC324C3485C372FF7E0470036C202 +:10678000922F67EE051120E0470020C0B2F4050902 +:1067900046F6050945F4070A4AF6070A4B0A4AC0B5 +:1067A00088F60509461446169A300BF4070A4AED96 +:1067B000BA0000C0920C76C041EDBA0001C0423070 +:1067C000160C0A5C0B5D0B5D0AA17BC1483FFBC147 +:1067D00028300B300AC0F8489B300AC0C8EDBB0017 +:1067E0001FF7B70101AB9AF5EB115AA17BAB9BF7F1 +:1067F000E7115BA19C5D0BD0225EFBFFE00000F681 +:106800000412005E0CE0440020C0C0E8051120F630 +:1068100004094BF4050A450A4BF404094A08175EBB +:10682000FCF40412002E04149BF604094B300A08F1 +:10683000175EFCF20412005E0CE0440020C0C0E8C9 +:10684000051120F2040949F0050A450A49F0040936 +:106850004808165EFCF00412002E041099F2040998 +:1068600049300808165EFC0021FE001302F1EC56C8 :1068700004015B00008001015C000100005E0B016F -:106880000D02F1EC5603000000010000015C375ED0 -:10689000FC0000F2061615AB69F3E81359AB785CFF -:1068A00036EFB9001FF7B600015C365EFCD021A1BF -:1068B0007B5CFCA1795C0C103AF20B1300C07216E1 -:1068C000971496129B109A0E990C984BC50A3BC2CE -:1068D00042F3E81005C860D411CCFFC9AFCDBFCBDF -:1068E0002F0C07E02703FEF4080640F6080642F4E2 -:1068F000090644F609064A0202F403004A5C0B0446 -:1069000004F405004A5C0B004408743006F7B60135 -:10691000FF0C4AD412C1FB5C2AFE91FF62F3E8101F -:1069200005FE91FF71C5CBD021A17B5CFCA1795CF8 -:106930000C4A350A3BC3320A39C382F3E81005C357 -:1069400090F7EA1005FE90FF5FD401C96FC61FCA19 -:106950002FC79FD4020C17FE37FC013376A19B5D35 -:106960000AA1995D08103AF20B1300C043101AF601 -:1069700009014B5CF45CF5EC140001A17A5CFB208E -:1069800016CF21F7EA100B5C3B5CF400AC57001308 +:106880000D02F1EC56030000000100F6071615ABEF +:106890006BF7EA135BAB7A5C37EFBB001FF7B7000F +:1068A000015C375EFC0000F2061615AB69F3E813D5 +:1068B00059AB785C36EFB9001FF7B600015C365E65 +:1068C000FCD021A17B5CFCA1795C0C103AF20B138B +:1068D00000C07216971496129B109A0E990C984B42 +:1068E000C50A3BC242F3E81005C860D411CCFFC909 +:1068F000AFCDBFCB2F0C07E02703FEF4080640F610 +:10690000080642F4090644F609064A0202F40300A6 +:106910004A5C0B0404F405004A5C0B004408743024 +:1069200006F7B601FF0C4AD412C1FB5C2AFE91FFA8 +:1069300062F3E81005FE91FF71C5CBD021A17B5C0D +:10694000FCA1795C0C4A350A3BC3320A39C382F395 +:10695000E81005C390F7EA1005FE90FF5FD401C967 +:106960006FC61FCA2FC79FD4020C17FE37FC013316 +:1069700076A19B5D0AA1995D08103AF20B1300C045 +:1069800043101AF609014B5CF45CF5006ABF001372 :1069900002F1EC5604015C00008001015D00010081 -:1069A0000034B3010D02F1EC560300000001005C5D -:1069B000F5089A0A9BA96BF7EA138BA96ACDDA5CF2 -:1069C0002AFE91FF200A39FE93FF30C1BB5C28FEEE -:1069D00090FF1BC17BF7EA1005FE90FF14C17BFFFF -:1069E000E00000D021F80B15015CFC167BFE90FF47 -:1069F0000CEFDBC308E04700FFC0F0A77B300A5C68 -:106A000037EFBB001FF7B700015C37FE37FC80D4BF -:106A100001C11FD402CFEAA96BFE90FEF9CF2AD2A2 -:106A200033C028D433F5EB101CF9E9101C104C5E70 -:106A30000DF9DBC28BEC1C07FFC061F5EB10CCC07D -:106A400030D0331C9FF9D9C28BEC1C07FFC041F139 -:106A5000E910CCCF71F7E9200CEDBB001FC056C088 -:106A600053103AF20B13001C9F1438F60913001C44 -:106A70009F580B5E6D3209C02831F9F9DBC28BE0FB -:106A80002C03FF5E3D123CC0E2F80C111F1699ABBF -:106A90007BBFBBF7EA135BF60C0A4BA1795E2B5C5C -:106AA0003B5EFB3FFCA19CA17B5C0C5EFC189B0049 -:106AB00051FD001302F1EC5604015D00008001015C +:1069A0000034B3010D02F1EC56030000000100ECCD +:1069B000140001A17A5CFB2016CF21F7EA100B5CD2 +:1069C0003B5CF45CF5089A0A9BA96BF7EA138BA968 +:1069D0006ACDDA5C2AFE91FF200A39FE93FF30C1AE +:1069E000BB5C28FE90FF1BC17BF7EA1005FE90FF01 +:1069F00014C17BFFE00000D021F80B15015CFC16F0 +:106A00007BFE90FF0CEFDBC308E04700FFC0F0A760 +:106A10007B300A5C37EFBB001FF7B700015C37FE25 +:106A200037FC80D401C11FD402CFEAA96BFE90FECF +:106A3000F9CF2AD233C028D433F5EB101CF9E91072 +:106A40001C104C5E0DF9DBC28BEC1C07FFC061F51E +:106A5000EB10CCC030D0331C9FF9D9C28BEC1C0793 +:106A6000FFC041F1E910CCCF71F7E9200CEDBB007C +:106A70001FC056C053103AF20B13001C9F1438F677 +:106A80000913001C9F580B5E6D3209C02831F9F9BB +:106A9000DBC28BE02C03FF5E3D123CC0E2F80C1120 +:106AA0001F1699AB7BBFBBF7EA135BF60C0A4B00D2 +:106AB000DBAE001302F1EC5604015D000080010121 :106AC0005E00010000A178010D02F1EC5603000008 -:106AD000000100580B5F5CC0245C3B300A580B5E21 -:106AE0000BD021E067041EFE9FFE5A189B300CCF8E -:106AF0006B0000D7F1206D109A129BFAEB0010305A -:106B00000C503CFACBFFE01A9CE0A037ED1891E066 -:106B100066C83CEA168001300BFACCFFF05D16180F -:106B200097407C580CC040300C407BB60C5807C0D6 -:106B300081FAEA002830083009E0A03BC7C1A0581C -:106B400001C1D79A0C581CC1F1FAEA002030083074 -:106B500009EA193FE0E0A03BB9C0C05817C141FAAB -:106B6000EA002030083009EA19BFE0E0A03BAEC4DB -:106B700051300A300BEA1B3FF0CD595821C061FA61 -:106B8000EA0020CD095817C6D55827C041FAEA00B7 -:106B900028CC993005EA158000F06300005811C236 -:106BA000B1408CA17C40ACC0C3EDBC001FC04230E2 -:106BB0000A300BCB89300A300BEA1B7FF0CB39ED62 -:106BC000BC001FC0E35807C0613FFBFACCFFF05D7B -:106BD00016C04600E9A2001302F1EC5604015E0063 +:106AD000000100A1795E2B5C3B5EFB3FFCA19CA109 +:106AE0007B5C0C5EFC189B580B5F5CC0245C3B30ED +:106AF0000A580B5E0BD021E067041EFE9FFE5A1859 +:106B00009B300CCF6B0000D7F1206D109A129BFACE +:106B1000EB0010300C503CFACBFFE01A9CE0A038A0 +:106B2000151891E066C924EA168001300BFACCFFF3 +:106B3000F05D161897407C580CC040300C407BB676 +:106B40000C5807C081FAEA002830083009E0A03B61 +:106B5000E5C1A05801C1D79A0C581CC1F1FAEA004E +:106B60002030083009EA193FE0E0A03BD7C0C05808 +:106B700017C141FAEA002030083009EA19BFE0E005 +:106B8000A03BCCC451300A300BEA1B3FF0CD595822 +:106B900021C061FAEA0020CD095817C6D55827C090 +:106BA00041FAEA0028CC993005EA158000F063002C +:106BB000005811C2B1408CA17C40ACC0C3EDBC00F8 +:106BC0001FC042300A300BCB89300A300BEA1B7FE2 +:106BD000F0CB3900D23F001302F1EC5604015E0005 :106BE000008001015F000100001EC3010D02F1ECF5 -:106BF000560300000001003003EA137FF0300A065C -:106C00009BCA395807C0613FFBFACCFFF05D16C044 -:106C1000263005300A0A9BC9895817C0F140ACA13B -:106C20007C9A0CC043581CCD94CD5B581CCD34309D -:106C30000A300BEA1B7FF0C88940ACEDBC001FC0D6 -:106C4000E35807C0A13FFBFACCFFF05D16C05740E8 -:106C50008CEDBC001FCDF33005CDDB322CE06B4E4C -:106C6000A4EA1B0000970C5807C0A13FFBFACCFF19 -:106C7000F05D16C057408CEDBC001FCC133003EA0A -:106C8000137FF0CBDB408CA17CC0F25807C0D73219 -:106C90001CE06B4EA4EA1B0000970C3FFAE06BFF70 -:106CA000FFEA1B7FFFC519FAEA002030183009FE01 -:106CB000B0FEDCC033300CC0B8FAEA0020EE1B8016 -:106CC00000FAEB00203FFBFACCFFF05D16BA1C9AED -:106CD0000C581CC1E1FAEA0020E0683BCDEA1866D6 -:106CE0007FE069A09EEA193FE6FEB0FEC1C1123006 -:106CF0000730023003EA130021AD001302F1EC5615 +:106BF00056030000000100EDBC001FC0E35807C0B1 +:106C0000613FFBFACCFFF05D16C0463003EA137F0C +:106C1000F0300A069BCA395807C0613FFBFACCFF27 +:106C2000F05D16C0263005300A0A9BC9895817C086 +:106C3000F140ACA17C9A0CC043581CCD94CD5B585C +:106C40001CCD34300A300BEA1B7FF0C88940ACED14 +:106C5000BC001FC0E35807C0A13FFBFACCFFF05DAA +:106C600016C057408CEDBC001FCDF33005CDDB3294 +:106C70002CE06B4EA0EA1B0000970C5807C0A13F08 +:106C8000FBFACCFFF05D16C057408CEDBC001FCC6A +:106C9000133003EA137FF0CBDB408CA17CC0F258A9 +:106CA00007C0D7321CE06B4EA0EA1B0000970C3FD8 +:106CB000FAE06BFFFFEA1B7FFFC519FAEA002030FC +:106CC000183009FEB0FEDCC033300CC0B8FAEA0060 +:106CD00020EE1B8000FAEB00203FFBFACCFFF05DBA +:106CE00016BA1C9A0C581CC1E1FAEA0020E0683B75 +:106CF000CDEA18667FE0690041C0001302F1EC564E :106D000004015F0000800101600001000081A80112 -:106D10000D02F1EC560300000001003FF0FAE8001C -:106D200020300A300BEA1B4000FEB0FE0AFAEB00EE -:106D300020C248FAE80020300A300BEA1B4050FE1F -:106D4000B0FDFF30083009EA193FE0FEB0FCE4FE78 -:106D5000B0FECBF8C70020220CFEB0FEE0300830B9 -:106D600009EA193F90FEB0FDEC30083009EA193FFE -:106D7000E0FEB0FCD114921693E06CE130EA1C8086 -:106D800001A57718075037FAEA002004980699FE03 -:106D9000B0FC8E14941695FAE80020049A069BFE27 -:106DA000B0FCBA14981699089A0A9BFEB0FE061415 -:106DB00090169114981699FEB0FDC314961697FA82 -:106DC000E50020E0A02FD214941695300A300BEA8B -:106DD0001B3FF004980699FEB0FC6A30083009EABF -:106DE000194000FEB0FDADBB2B0C9A0E9B08980A13 -:106DF00099FEB0FDA6FAE80028FEB0FC59BB09FEDA -:106E0000B0FC8A00980299FEB0FD9BFAE80020FED3 -:106E1000B0FC8214961697E06239EF009B330013A2 +:106D10000D02F1EC56030000000100A09EEA193FAD +:106D2000E6FEB0FEC1C112300730023003EA133F65 +:106D3000F0FAE80020300A300BEA1B4000FEB0FEFB +:106D40000AFAEB0020C248FAE80020300A300BEAC9 +:106D50001B4050FEB0FDFF30083009EA193FE0FE4D +:106D6000B0FCE4FEB0FECBF8C70020220CFEB0FE63 +:106D7000E030083009EA193F90FEB0FDEC300830F1 +:106D800009EA193FE0FEB0FCD114921693E06CE1E1 +:106D90009CEA1C8001A57718075037FAEA00200406 +:106DA000980699FEB0FC8E14941695FAE80020041B +:106DB0009A069BFEB0FCBA14981699089A0A9BFE94 +:106DC000B0FE061490169114981699FEB0FDC314E7 +:106DD000961697FAE50020E0A02FFA149416953045 +:106DE0000A300BEA1B3FF004980699FEB0FC6A30AB +:106DF000083009EA194000FEB0FDADBB2B0C9A0E1D +:106E00009B08980A99FEB0FDA6FAE80028FEB0FC9F +:106E100059BB09FEB0FC8A0098029900A5E800134E :106E200002F1EC56040160000080010161000100E4 -:106E3000003D19010D02F1EC56030000000100EACB -:106E400012FEFAE0632E42EA133FE604980699FE2A -:106E5000B0FDC6FAEB00109A0CFEB0FE72403CB9D1 -:106E600008FEB0FC6BFAE80010FEB0FC67FAEB001D -:106E700010FAE80028FEB0FD76FAEB000430083086 -:106E800009EA19C0E0FEB0FE17C6D3FAEA000430E2 -:106E9000183009EA1940E0FEB0FE0CC672FAEA00AA -:106EA0000430083009FEB0FE07FAE80004300AC0DA -:106EB00052300BEA1BBFE0C048300BEA1B3FE0FE3C -:106EC000B0FC3CFEB0FE231895FAEA00280C980EA0 -:106ED00099FEB0FD48FAEB0004403CF8E80008F8E1 -:106EE000EA0010FEB0FC2AFAE80028FEB0FD3B04E0 -:106EF000980699FEB0FD37FAE80004FEB0FC1EFAD1 -:106F0000EB00040A9CFEB0FE1CBB2B9A4CFEB0FEAC -:106F100018405CB908FEB0FC11FAE80030FEB0FD84 -:106F200022BB09FEB0FBD604980699FEB0FD1BFA01 -:106F3000E80004FEB0FC02FAEB0004407C580C00B0 -:106F40000513001302F1EC560401610000800101F9 +:106E3000003D19010D02F1EC56030000000100FEB7 +:106E4000B0FD9BFAE80020FEB0FC8214961697E095 +:106E50006239EFEA12FEFAE0632E42EA133FE604DB +:106E6000980699FEB0FDC6FAEB00109A0CFEB0FE33 +:106E700072403CB908FEB0FC6BFAE80010FEB0FCB2 +:106E800067FAEB0010FAE80028FEB0FD76FAEB0096 +:106E90000430083009EA19C0E0FEB0FE17C6D3FA84 +:106EA000EA000430183009EA1940E0FEB0FE0CC6D2 +:106EB00072FAEA000430083009FEB0FE07FAE80072 +:106EC00004300AC052300BEA1BBFE0C048300BEA66 +:106ED0001B3FE0FEB0FC3CFEB0FE231895FAEA0032 +:106EE000280C980E99FEB0FD48FAEB0004403CF8DF +:106EF000E80008F8EA0010FEB0FC2AFAE80028FED4 +:106F0000B0FD3B04980699FEB0FD37FAE80004FE98 +:106F1000B0FC1EFAEB00040A9CFEB0FE1CBB2B9AD0 +:106F20004CFEB0FE18405CB908FEB0FC11FAE80057 +:106F300030FEB0FD22BB09FEB0FBD60498069900D6 +:106F400025C7001302F1EC56040161000080010125 :106F50006200010000A8D2010D02F1EC560300000E -:106F6000000100C030B80530050A99300A300BEA3C -:106F70001B3FF0FACCFFFCE0A00BE65C7C187CC069 -:106F800040201CC050C108300A300BC058300A30B5 -:106F90000BEA1B7FF0FAEB0004322CE06B4EA4EA04 -:106FA0001B0000970C9A1C580CFAEA0004C030EE43 -:106FB0001B80002FAD1B0E2FBDD0325EFCD703808F -:106FC00001CE108001D5F48001C04C80015C9C8012 -:106FD000015D7080015D7480015DCA80015DFE808D -:106FE00001599080015C22800159F8800179E0D438 -:106FF00001300CFEB0FDC8D8020000D401E0A03181 -:10700000F9E06C00EEEA1C0000305BB89B300BB876 -:107010008BB8CBB8DBE06C2FA0EA1C0000FACBFFEA -:10702000FC3249170A18AA2049CFD1309A300B30C8 -:107030000CFEB06CCF582CC031302CD802DA0A804C -:10704000003C6CD401CAFDD8020000EBCD4080E0CA -:107050006700EEEA170000EF2C0001585CC0A1C2E7 -:107060006DC20000ACA4001302F1EC5604016200F2 +:106F6000000100FEB0FD1BFAE80004FEB0FC02FACE +:106F7000EB0004407C580CC030B80530050A99304D +:106F80000A300BEA1B3FF0FACCFFFCE0A00C0E5CD1 +:106F90007C187CC040201CC050C108300A300BC097 +:106FA00058300A300BEA1B7FF0FAEB0004322CE079 +:106FB0006B4EA0EA1B0000970C9A1C580CFAEA00D2 +:106FC00004C030EE1B80002FAD1B0E2FBDD0325EF3 +:106FD000FCD7038001CE748001D6448001C0B0800C +:106FE000015CB080015D8480015D8880015DDE8090 +:106FF000015E12800159A480015C3680015A0C8028 +:10700000017A44D401300CFEB0FDC8D8020000D48F +:1070100001E0A03221E06C00DEEA1C0000305BB829 +:107020009B300BB88BB8CBB8DBE06C2F9CEA1C0014 +:1070300000FACBFFFC3249170A18AA2049CFD130F9 +:107040009A300B300CE0A00841582CC031302CD8BD +:1070500002DA0A80017364D401CAFDD8020000EB91 +:10706000CD40800014E1001302F1EC5604016200EF :107070000080010163000100001769010D02F1ECBD -:1070800056030000000100304CAE9CE0A031C4C5A6 -:107090004DE3CD8080584CC171CEBCC0A0303CAE19 -:1070A0008C305CAE9CE0A031B7C8FDE3CD8080CBD6 -:1070B000EDC0A0302CAE8C305CAE9CE0A031ACC8F2 -:1070C0004DE3CD8080E3CF9080D7038001C68CD480 -:1070D00001E0A03AE9E06B2F9CEA1B0000970CE06E -:1070E0006B6298EA1B8001F94B0128E06B62E0EAD1 -:1070F0001B8001F94B012CE06B62E8EA1B8001F96F -:107100004B0130E06B639CEA1B8001F94B0134E0DA -:107110006B644CEA1B8001F94B0138DA0AD7038013 -:1071200001D91C300CE06B00EEEA1B0000300AB6FF -:10713000BAE06A2F9CEA1A0000740AF53A01215855 -:107140000AC0215EFDF72A0000580AC040302CB664 -:10715000BC301CF72A0004581AC061F72C0003A3A6 -:10716000ACB6BC301C5C6C5EFC0000E06C00EEEA6F -:107170001C0000300BB88BB8BBB8CB5EFF0000EB37 -:10718000CD408020AD1897001771001302F1EC5626 +:1070800056030000000100E06700DEEA170000EF91 +:107090002C0001585CC0A1C26DC200304CAE9CE017 +:1070A000A031ECC54DE3CD8080584CC171CEBCC041 +:1070B000A0303CAE8C305CAE9CE0A031DFC8FDE37C +:1070C000CD8080CBEDC0A0302CAE8C305CAE9CE08F +:1070D000A031D4C84DE3CD8080E3CF9080D703802A +:1070E00001C6F0D401E0A03B15E06B2F98EA1B002D +:1070F00000970CE06B62ACEA1B8001F94B0128E0C1 +:107100006B62F4EA1B8001F94B012CE06B62FCEA34 +:107110001B8001F94B0130E06B63B0EA1B8001F981 +:107120004B0134E06B6460EA1B8001F94B0138DAF3 +:107130000AD7038001D988300CE06B00DEEA1B001F +:1071400000300AB6BAE06A2F98EA1A0000740AF50D +:107150003A0121580AC0215EFDF72A0000580AC0F2 +:1071600040302CB6BC301CF72A0004581AC061F716 +:107170002C0003A3ACB6BC301C5C6C5EFC0000E0D1 +:107180006C00DEEA1C000000FBF0001302F1EC567C :10719000040163000080010164000100000341015B -:1071A0000D02F1EC560300000001001A9CE0A0392A -:1071B0002B401C0E3CC04318275C57C048280C18B5 -:1071C000275C570E9CFEB0EB57406BFEB0E98AFE81 -:1071D000B0FC882F6DE3CD8080D70380013AC88052 -:1071E00001373480015D34301CE06B00EEEA1B0097 -:1071F00000B6CC5EFD0000D401E06A00EEEA1A00A1 -:1072000000F5290003EDB90001C1C230191788F05B -:10721000081068F8080B091788F00810681808B0FB -:107220009930991788F00810681808B0A9F5290056 -:10723000001788F00810681808B0C917892FF9B628 -:1072400089F5290003EDB90002C23230191788F020 -:10725000081068F8080B093038178EFC0E106818F3 -:107260000EBC983098178EFC0E1068180EBCA8172C -:1072700088F00810681808B0C92FFAF5290000171F -:107280008AF40A1068140CB8D9178C2FFCB68CC875 -:107290000FD80AEBCD408020FD3007300CFB6C008E -:1072A0000CFACCFFF0FEB06C33E06C00554F0013CD +:1071A0000D02F1EC56030000000100300BB88BB863 +:1071B000BBB8CB5EFF0000EBCD408020AD18971A26 +:1071C0009CE0A03949401C0E3CC04318275C57C0C6 +:1071D00048280C18275C570E9CFEB0EB57406BFEFE +:1071E000B0E98AFEB0FC882F6DE3CD8080D70380A4 +:1071F000013ADC8001374880015D48301CE06B00BB +:10720000DEEA1B0000B6CC5EFD0000D401E06A009F +:10721000DEEA1A0000F5290003EDB90001C1C23011 +:10722000191788F0081068F8080B091788F008107B +:10723000681808B09930991788F00810681808B0D5 +:10724000A9F52900001788F00810681808B0C917B8 +:10725000892FF9B689F5290003EDB90002C2323051 +:10726000191788F0081068F8080B093038178EFCD9 +:107270000E1068180EBC983098178EFC0E10681807 +:107280000EBCA81788F00810681808B0C92FFAF5C6 +:10729000290000178AF40A1068140CB8D9178C2F2B +:1072A000FCB68CC80FD80AEBCD408000BC8500131B :1072B00002F1EC5604016400008001016500010048 -:1072C0000069F9010D02F1EC560300000001002FE6 -:1072D000A0EA1C0000FACBFFF0760950097619509D -:1072E0001976295029FAC9FFF498CBF60A107DA324 -:1072F0007A98BBF60B107DA37B98ACF80C107DA39D -:107300007CFEB0EAE9582CC02130170E9C5C6C2F33 -:107310001DE3CD80800000EBCD408020FD300730A4 -:107320000CFB6C000CFACCFFF0FEB06C03E06C2F91 -:10733000A0EA1C0000FACBFFF0760950097619503C -:107340001976295029FAC9FFF498CBF60A107DA3C3 -:107350007A98BBF60B107DA37B98ACF80C107DA33C -:107360007CFEB0EAB9581CC02130170E9C5C6C2F13 -:107370001DE3CD8080D70380003D6080013B04EB9E -:10738000CD40E0220D3017300CFB5C0054FB6C004C -:107390002D30ABFB6B002EFB6C0030FB6C0031E042 -:1073A0006600EEEA160000ED2C0005580CC2A1E0C4 -:1073B0006C00B4BACC346CBADC3015BAE5300CFBD6 -:1073C0006C002C303CFB6C002DFACCFFD01A9B00DB -:1073D000DC9B001302F1EC56040165000080010102 +:1072C0000069F9010D02F1EC5603000000010020F5 +:1072D000FD3007300CFB6C000CFACCFFF0E0A0078F +:1072E000A5E06C2F9CEA1C0000FACBFFF076095059 +:1072F000097619501976295029FAC9FFF498CBF666 +:107300000A107DA37A98BBF60B107DA37B98ACF88E +:107310000C107DA37CFEB0EAE9582CC02130170E7A +:107320009C5C6C2F1DE3CD80800000EBCD40802065 +:10733000FD3007300CFB6C000CFACCFFF0E0A0072E +:1073400075E06C2F9CEA1C0000FACBFFF076095028 +:10735000097619501976295029FAC9FFF498CBF605 +:107360000A107DA37A98BBF60B107DA37B98ACF82E +:107370000C107DA37CFEB0EAB9581CC02130170E5A +:107380009C5C6C2F1DE3CD8080D7038001745880F6 +:10739000013B18EBCD40E0220D3017300CFB5C00B8 +:1073A00054FB6C002D30ABFB6B002EFB6C0030FBF4 +:1073B0006C0031E06600DEEA160000ED2C00055896 +:1073C0000CC2A1E06C00B4BACC346CBADC3015004D +:1073D000895E001302F1EC56040165000080010192 :1073E0006600010000FC32010D02F1EC56030000C2 -:1073F0000001003249170A18AA2049CFD1FACCFF60 -:10740000D41A9B32C9190A16AA2049CFD1FEB06BF3 -:10741000E9C0313027C088FACCFFA8E0A038184175 -:107420007CACACACD50E9C5C6C2E0DE3CD80E080CA -:1074300001D658EBCD40E0216D3017E06600EEEA52 -:10744000160000ED2C0005581CC2013005FB55004C -:1074500054FB65002D30ACFB6C002EFB650030FB4F -:10746000650031301CFB6C002C303CFB6C002DFAAD -:10747000CCFFD41A9B32C9190A16AA2049CFD1FED3 -:10748000B06BB0C0213037ACD50E9C5C6C2EADE338 -:10749000CD80E080003DECEBCD40B03007E06C00EB -:1074A000EEEA1C000019ACCA2E14941695E06C2F5D -:1074B000A0EA1C00002F6C198CFEB0FBA9149816D2 -:1074C00099089A0A9BFEB0FB4FC02330170E9C5CB4 -:1074D0006CE3CD80B0D70380015E1880015D70E061 -:1074E0006B4B88EA1B0000F6FA00ECF60A002AF55E -:1074F0004C0078006694001302F1EC56040166001B +:1073F000000100BAE5300CFB6C002C303CFB6C004B +:107400002DFACCFFD01A9B3249170A18AA2049CF6F +:10741000D1FACCFFD41A9B32C9190A16AA2049CF37 +:10742000D1E0A0075BC0313027C088FACCFFA8E0CC +:10743000A03836417CACACACD50E9C5C6C2E0DE318 +:10744000CD80E08001D6A8EBCD40E0216D3017E083 +:107450006600DEEA160000ED2C0005581CC2013063 +:1074600005FB550054FB65002D30ACFB6C002EFB7A +:10747000650030FB650031301CFB6C002C303CFBA0 +:107480006C002DFACCFFD41A9B32C9190A16AA2017 +:1074900049CFD1E0A00722C0213037ACD50E9C5C8B +:1074A0006C2EADE3CD80E0800174E4EBCD40B030D4 +:1074B00007E06C00DEEA1C000019ACCA2E1494161A +:1074C00095E06C2F9CEA1C00002F6C198CFEB0FB21 +:1074D000A914981699089A0A9BFEB0FB4FC0233056 +:1074E000170E9C5C6CE3CD80B0D70380015E2C80CE +:1074F000015D8400CFD0001302F1EC560401660058 :107500000080010167000100004389010D02F1ECD8 -:1075100056030000000100F6FC00EC2FFCF74C00C5 -:10752000ECF6FC00EC585C5E3FF6FC00EC201CF72F -:107530004C00EC5EFD0000300CE06B4B88EA1B0059 -:1075400000300AF74A00F0F6FA00EC580A5E0D77B0 -:10755000EAF74A00F0F6FA00EC201AF74A00ECC00D -:1075600078F60C002A75F9F54900782FFC584CCFB5 -:10757000955EFDEBCD40803007E06C0148EA1C00D1 -:1075800000F93C03B0E0A01FEBC038C62C2FF7E099 -:107590006C4B88EA1C0000298C198C1837CF73E3D8 -:1075A000CF80808001A744EBCD40E016973006E005 -:1075B000654B88EA150000EB3B008D169A2FFAEB1D -:1075C0006A008DE04B0033C045300BEB6B008DEB58 -:1075D0003B008C583BC215780BEB4B006C781BEBD7 -:1075E0004B0070782CEB4C0074300CE0A01FAEE028 -:1075F0006C0148EA1C0000F93B03B02FFBF96B0358 -:10760000B0F93B03B0EB3A0068143BC053300BF9C0 -:107610006B03B0CB0FC91F0002CC001302F1EC5674 +:1075100056030000000100E06B4B84EA1B0000F6FC +:10752000FA00ECF60A002AF54C0078F6FC00EC2F85 +:10753000FCF74C00ECF6FC00EC585C5E3FF6FC00FF +:10754000EC201CF74C00EC5EFD0000300CE06B4BB7 +:1075500084EA1B0000300AF74A00F0F6FA00EC5803 +:107560000A5E0D77EAF74A00F0F6FA00EC201AF707 +:107570004A00ECC078F60C002A75F9F54900782F1E +:10758000FC584CCF955EFDEBCD40803007E06C01A0 +:1075900038EA1C0000F93C03B0E0A02013C038C654 +:1075A0002C2FF7E06C4B84EA1C0000298C198C18F6 +:1075B00037CF73E3CF80808001A7A8EBCD40E016E2 +:1075C000973006E0654B84EA150000EB3B008D1612 +:1075D0009A2FFAEB6A008DE04B0033C045300BEB7D +:1075E0006B008DEB3B008C583BC215780BEB4B00CE +:1075F0006C781BEB4B0070782CEB4C0074300CE07B +:10760000A01FD6E06C0138EA1C0000F93B03B02F44 +:10761000FBF96B03B0F93B001825001302F1EC569F :1076200004016700008001016800010000D46201CC -:107630000D02F1EC56030000000100EB3C008C1839 -:107640009B2FFBEB6B008CE04C0065C045332CEBB3 -:107650006C008CEAFC00F0580CC070AE8C301658F0 -:10766000ACC03130ACAE8C5C560C9CE3CD80E0807D -:1076700001A730EBCD40FC300C300AC0E8F40B1011 -:1076800035A36B0E0B17C95809C06017E92E0BF60E -:10769000090F8B164C2FFAE0670148EA17000058D3 -:1076A0003ACEE5E0A01F8EE0664B88EA160000E0C7 -:1076B000A01FC4ED4C00E83005ED4500F03004C0DB -:1076C000588DB5789C8DCC2FF45834C454E80210F2 -:1076D00035A3620E0205CC580CC2A0089CC5DCEC98 -:1076E000F300E805ECE4CBFFE0F60C0F8B660C181A -:1076F0006BC17005ECE4CBFFCCF60C0F8C580CC0C2 -:107700005005ECF60C0F8CC10F05EC2FFCA4EC051A -:10771000EC05DB163CC053640CEC04092CA4E567B3 -:107720000C580CC050660B670C184B870B5814CCC8 -:10773000C1EF3C00DAF80C101C0E0C00242E0013D4 +:107630000D02F1EC5603000000010003B0EB3A002C +:1076400068143BC053300BF96B03B0CB0FC91FEB71 +:107650003C008C189B2FFBEB6B008CE04C0065C052 +:1076600045332CEB6C008CEAFC00F0580CC070AE7B +:107670008C301658ACC03130ACAE8C5C560C9CE3F0 +:10768000CD80E08001A794EBCD40FC300C300AC0E7 +:10769000E8F40B1035A36B0E0B17C95809C060171F +:1076A000E92E0BF6090F8B164C2FFAE0670138EA2A +:1076B000170000583ACEE5E0A01FB6E0664B84EA1A +:1076C000160000E0A01FECED4C00E83005ED450091 +:1076D000F03004C0588DB5789C8DCC2FF45834C44C +:1076E00054E8021035A3620E0205CC580CC2A00863 +:1076F0009CC5DCECF300E805ECE4CBFFE0F60C0FF6 +:107700008B660C186BC17005ECE4CBFFCCF60C0F4C +:107710008C580CC05005ECF60C0F8CC10F05EC2FEB +:10772000FCA4EC05EC05DB163CC053640CEC04092E +:107730002CA4E5670C580CC050660B00ED2A001312 :1077400002F1EC56040168000080010169000100AB -:107750000094D9010D02F1EC56030000000100F87D -:10776000FC011C8D9CECFC00E8789B2BABE04B00F3 -:107770008DCBA2788B8DBBCB8BECFC00E8780CE03A -:10778000A01F76EEFC03B4189B2FFBEF4B03B4E075 -:107790004C03E9C033EF4503B40C9CFE3CFF6C3551 -:1077A00009AD0BB92A2089CFD1E3CF80FCD7038064 -:1077B00001A7848001A7FC8001A80CD4213007E038 -:1077C000644B88EA140000E8FB00E8F7470040E05B -:1077D0006B0148EA1B0000F8091035A3691609136C -:1077E000E8F20800256A8C582CC541F006101C12DE -:1077F000066D2C581CC4E1E8FE00E86D4C582CC006 -:10780000B17CDC583CC0646D7C2FFCED4C005CC04E -:1078100038ED47005C6D4C584CC0B17CDC585CC006 -:10782000646D7C2FFCED4C005CC038ED47005C6D56 -:107830004C588CC0B17CDC588CC0656D7C2FFCED45 -:107840004C005CC038ED47005C6D4C590CC0B17CFD -:10785000DC590CC0656D7C2FFCED4C005CC0380021 -:10786000610E001302F1EC56040169000080010171 +:107750000094D9010D02F1EC56030000000100670E +:107760000C184B870B5814CCC1EF3C00DAF80C1006 +:107770001C0E0CF8FC011C8D9CECFC00E8789B2B8B +:10778000ABE04B008DCBA2788B8DBBCB8BECFC00A0 +:10779000E8780CE0A01F9EEEFC03B4189B2FFBEFD3 +:1077A0004B03B4E04C03E9C033EF4503B40C9CFE3B +:1077B0003CFF6C3509AD0BB92A2089CFD1E3CF80CE +:1077C000FCD7038001A7E88001A8608001A870D4DD +:1077D000213007E0644B84EA140000E8FB00E8F77E +:1077E000470040E06B0138EA1B0000F8091035A3A0 +:1077F00069160913E8F20800256A8C582CC541F077 +:1078000006101C12066D2C581CC4E1E8FE00E86D41 +:107810004C582CC0B17CDC583CC0646D7C2FFCED16 +:107820004C005CC038ED47005C6D4C584CC0B17CDE +:10783000DC585CC0646D7C2FFCED4C005CC038ED06 +:1078400047005C6D4C588CC0B17CDC588CC0656DB9 +:107850007C2FFCED4C005CC038ED47005C6D4C00AB +:1078600013C3001302F1EC5604016900008001010A :107870006A000100000112010D02F1EC5603000044 -:10788000000100ED47005C6D7C6D3B314AF60A0C4F -:107890000A143CC0B47C0C6A8B168C9D0C6A8CE874 -:1078A000FB00E8F74C0040C078ED47005C7C0B6AB9 -:1078B0008C184B9D0B6A8C581CC641F00C101C1880 -:1078C0000912966D2CEDBC0000C5C26D3CEDBC00EC -:1078D00002C28269DCFC1BC080FEB0E7FDC362E827 -:1078E000FB00E8766AFE3AFF6FE04A0123C2E376C6 -:1078F0007BF6CCFF6FE04C0123C2836D7C2FFCED47 -:107900004C005CE8FB00E86D7C585CC354760C6A64 -:107910008A148C970C6A8CE8FB00E8F74C0040D87E -:107920002AEDBC0001C15269DC301BFEB0E7C8C0C3 -:10793000D3E8FB00E8766C2A6CE04C00B5C06276B8 -:107940007C2A6CE04C00B5CDA3ED47005CCDBBEDCF -:10795000BC0004CD8269DCFEB0F930BFDBE06833E7 -:1079600034EA183333E0693333EA19401DFEB0F9C5 -:1079700043CEC3CC4BED47005C760A6A8C184A971D -:107980000AD82A005BE5001302F1EC5604016A00F4 +:10788000000100590CC0B17CDC590CC0656D7C2F27 +:10789000FCED4C005CC038ED47005C6D7C6D3B310D +:1078A0004AF60A0C0A143CC0B47C0C6A8B168C9DF8 +:1078B0000C6A8CE8FB00E8F74C0040C078ED47000C +:1078C0005C7C0B6A8C184B9D0B6A8C581CC641F073 +:1078D0000C101C180912966D2CEDBC0000C5C26D71 +:1078E0003CEDBC0002C28269DCFC1BC080FEB0E73C +:1078F000FDC362E8FB00E8766AFE3AFF6FE04A01EA +:1079000023C2E3767BF6CCFF6FE04C0123C2836D8C +:107910007C2FFCED4C005CE8FB00E86D7C585CC300 +:1079200054760C6A8A148C970C6A8CE8FB00E8F792 +:107930004C0040D82AEDBC0001C15269DC301BFE6E +:10794000B0E7C8C0D3E8FB00E8766C2A6CE04C00D6 +:10795000B5C062767C2A6CE04C00B5CDA3ED470043 +:107960005CCDBBEDBC0004CD8269DCFEB0F930BF5C +:10797000DBE0683334EA183333E0693333EA194023 +:107980001DFEB000FE43001302F1EC5604016A0034 :10799000008001016B00010000BEA9010D02F1ECA5 -:1079A0005603000000010080013A5080013A3880FF -:1079B000015D3480015D70208D1A9CE06BECA8EABB -:1079C0001B8001320AB709B928208ACFD11A9CFE40 -:1079D0006B000C760BF7DBC004F80B051CAB6C2FAF -:1079E0008D5EFCFE6A00007409A7C9340BF7EC0039 -:1079F0006C124C950C5EFDD401E06BE1C1EA1B00FA -:107A0000E4163CC123E06BC381EA1B01C9163C307C -:107A10001CC062CE8F3FFB311CC1DCD80ACE3F3F79 -:107A2000FB310CC18CD80A300CCDDF3FFB311CC1BF -:107A30002CD80AFE6C0008780CF9DCC0015EFCD47E -:107A400001CF9FCFF0D80AFE6C0008780CE21C0032 -:107A50000C5EFCEBCD40E018961697E0650588EAD1 -:107A6000150000F0150000FE6C0004780BE01BFF11 -:107A7000C0EDD6C00616460C9B5807C0B5E01B00EB -:107A8000FFE41BFF00A967EFD7C110A96716470ED7 -:107A90009BF7DBC018EA1BA500990BCD6F8B1CF080 -:107AA000150000E3CF80E000FFD8001302F1EC5690 +:1079A00056030000000100F943CEC3CC4BED470065 +:1079B0005C760A6A8C184A970AD82A80013A648051 +:1079C000013A4C80015D4880015D84208D1A9CE065 +:1079D0006BED14EA1B8001320AB709B928208ACF5F +:1079E000D11A9CFE6B000C760BF7DBC004F80B057C +:1079F0001CAB6C2F8D5EFCFE6A00007409A7C934B5 +:107A00000BF7EC006C124C950C5EFDD401E06BE1C1 +:107A1000C1EA1B00E4163CC123E06BC381EA1B01F1 +:107A2000C9163C301CC062CE8F3FFB311CC1DCD874 +:107A30000ACE3F3FFB310CC18CD80A300CCDDF3F62 +:107A4000FB311CC12CD80AFE6C0008780CF9DCC094 +:107A5000015EFCD401CF9FCFF0D80AFE6C000878FD +:107A60000CE21C000C5EFCEBCD40E018961697E093 +:107A7000650578EA150000F0150000FE6C0004783A +:107A80000BE01BFFC0EDD6C00616460C9B5807C086 +:107A9000B5E01B00FFE41BFF00A967EFD7C110A9E9 +:107AA0006716470E9BF7DB006A2E001302F1EC56B7 :107AB00004016B00008001016C00010000AA81013B -:107AC0000D02F1EC56030000000100D4013FFB3031 -:107AD0003CFEB0FFD3D80AFE6C0008780CA59CF9D8 -:107AE000DCC0015EFC0000D401189B30CCFEB0FF6E -:107AF000C5CF3FD8020000EBCD40E01697301618F6 -:107B00009B302CFEB0FFBA5C57C0C0E0670588EA26 -:107B10001700006E153FFCCE8F18966E1C18458F0F -:107B2000150C9C5C5CE3CD80E00000D401189B3018 -:107B30001CFEB0FFA3D80AD4013FFB30FCFEB0FF0F -:107B40009DCCBFD8020000EBCD408018973FFB30A2 -:107B5000ECFEB0FF935C57C030CEFFC028301C58FD -:107B60000C5F1CE3CD8080D4013FFB30DCFEB0FF16 -:107B700085D80AD4011698F1EB108BC02CD802D40A -:107B8000011698F1EB110BC02CD802EBCD40C016BA -:107B900096F1D9C00814990C9A300B0C970E4BC073 -:107BA0004CE3CD80C00000D631204D1494169512C0 -:107BB000961091E06CF198EA1C8001B90AFAEB008A -:107BC000083003FC178000FEB0FF0A0071FF0013AD +:107AC0000D02F1EC56030000000100C018EA1BA5EE +:107AD00000990BCD6F8B1CF0150000E3CF80E0D434 +:107AE000013FFB303CFEB0FFD3D80AFE6C000878A3 +:107AF0000CA59CF9DCC0015EFC0000D401189B3091 +:107B0000CCFEB0FFC5CF3FD8020000EBCD40E01661 +:107B1000973016189B302CFEB0FFBA5C57C0C0E0FF +:107B2000670578EA1700006E153FFCCE8F18966E39 +:107B30001C18458F150C9C5C5CE3CD80E00000D4E4 +:107B400001189B301CFEB0FFA3D80AD4013FFB30C4 +:107B5000FCFEB0FF9DCCBFD8020000EBCD408018EA +:107B6000973FFB30ECFEB0FF935C57C030CEFFC0B8 +:107B700028301C580C5F1CE3CD8080D4013FFB30C3 +:107B8000DCFEB0FF85D80AD4011698F1EB108BC04B +:107B90002CD802D4011698F1EB110BC02CD802EBB3 +:107BA000CD40C01696F1D9C00814990C9A300B0C30 +:107BB000970E4BC04CE3CD80C00000D631204D1451 +:107BC00094169512961091E06CF20400605D00131B :107BD00002F1EC5604016C00008001016D0001000F -:107BE00000C039010D02F1EC56030000000100183D -:107BF000920E0240570E9BF7DBC003201BF7DBC041 -:107C000003C0C8FACCFFF8160CB884A984E9E511C2 -:107C100084A985201BF7DBC00358045C25CF310EF7 -:107C200006FC1C80001837C042FC178000C0980476 -:107C300037C073FC1C80801837C032FC178080E08E -:107C40006C0101EA1C80801836C063FC168080FE3F -:107C500036FF00C098301CEA1C80801836C0420CE9 -:107C600032C02204960C95A1C5E015FFFCE015FF7B -:107C7000F8C0C8E20C1518C050300CC78F681C182B -:107C800043C85F069C68131843E0640588EA140043 -:107C9000000C37C702C2DF681C18430E98E018FFBB -:107CA00000109CFE3CFF00EA0C0D4C0C9BE01BFFFF -:107CB0000016385F29FAEA0008BB1B0E9B5C5BC10B -:107CC000F0C0282F880E9AE01AFFF81438CFB30EB0 -:107CD0009EFDDEC003C140300BC06811371A9016FC -:107CE00000A0872FFB1C3BCFA314970A37C082004C -:107CF00005E3001302F1EC5604016D000080010160 +:107BE00000C039010D02F1EC56030000000100EA6B +:107BF0001C8001B90AFAEB00083003FC178000FE74 +:107C0000B0FF0A18920E0240570E9BF7DBC003200C +:107C10001BF7DBC003C0C8FACCFFF8160CB884A968 +:107C200084E9E51184A985201BF7DBC00358045CB7 +:107C300025CF310E06FC1C80001837C042FC17808F +:107C400000C0980437C073FC1C80801837C032FC19 +:107C5000178080E06C0101EA1C80801836C063FC4C +:107C6000168080FE36FF00C098301CEA1C80801809 +:107C700036C0420C32C02204960C95A1C5E015FF17 +:107C8000FCE015FFF8C0C8E20C1518C050300CC756 +:107C90008F681C1843C85F069C68131843E064058E +:107CA00078EA1400000C37C702C2DF681C18430EC4 +:107CB00098E018FF00109CFE3CFF00EA0C0D4C0CF5 +:107CC0009BE01BFF0016385F29FAEA0008BB1B0E79 +:107CD0009B5C5BC1F0C0282F880E9AE01AFFF81455 +:107CE00038CFB30E9EFDDEC003C140300BC068002C +:107CF0001146001302F1EC5604016D0000800101F1 :107D00006E0001000055F2010D02F1EC5603000077 -:107D1000000100400B0EAB401B0EABFAEA0008BBA3 -:107D20001BA39CEE0B1603182BC068402C0EAC4016 -:107D30003C0EAC201B580BCFA15C59C1700C980CA9 -:107D40009BF7DBC003C0F0C068113C1A9A160AB456 -:107D50008C2FFB588BCFA3400C0EAC401C0EACC03C -:107D6000282F88109C5C5CCFD1301CEA1C808018C6 -:107D700037C932E20C1518C060300B3FFCCE1E68CC -:107D80001C18433FFCCF7E069C681318430437C879 -:107D9000F3FC178080C8CB8913405C2FCDDC32EB1D -:107DA000CD42FF202D18901497300300961692FCB8 -:107DB0001C808018305F210C955C550C25C0683FF5 -:107DC000FCCD9E069C68131843E0640588EA140005 -:107DD000005807C350C9FE681C18433009C15858E1 -:107DE00007C0900C35C071053B1A9AF40C0B0B2F91 -:107DF000F620172FF52FFC5C5C588CCF23BB0A0AAA -:107E00009C208CB91B2F89F9D9C010E04C0100C00F -:107E100054AB0A002E17001302F1EC5604016E0059 +:107D100000010011371A901600A0872FFB1C3BCFE3 +:107D2000A314970A37C082400B0EAB401B0EABFA70 +:107D3000EA0008BB1BA39CEE0B1603182BC068407F +:107D40002C0EAC403C0EAC201B580BCFA15C59C193 +:107D5000700C980C9BF7DBC003C0F0C068113C1A94 +:107D60009A160AB48C2FFB588BCFA3400C0EAC4054 +:107D70001C0EACC0282F88109C5C5CCFD1301CEA54 +:107D80001C80801837C932E20C1518C060300B3FD8 +:107D9000FCCE1E681C18433FFCCF7E069C6813185F +:107DA000430437C8F3FC178080C8CB8913405C2F8D +:107DB000CDDC32EBCD42FF202D189014973003001C +:107DC000961692FC1C808018305F210C955C550C37 +:107DD00025C0683FFCCD9E069C68131843E06405EF +:107DE00078EA1400005807C350C9FE681C184330D5 +:107DF00009C1585807C0900C35C071053B1A9AF458 +:107E00000C0B0B2FF620172FF52FFC5C5C588CCF3A +:107E100023BB0A005EDE001302F1EC5604016E0083 :107E2000008001016F00010000EA49010D02F1EC40 -:107E300056030000000100BB1B300CCF0BFB3C00C5 -:107E40000F580CC0B05801C040300CCB4EC0483069 -:107E50000B3FFCC88E681C18435801CC40CBBECCED -:107E60004B8913009C2FEDE3CD82FFD421203D30C0 -:107E700009E06843E0EA1800007058300EC2185854 -:107E800059C1D4F2071501E0662A78EA160000F11C -:107E900035000D1C15EC05001520250B851A940ED8 -:107EA00004A885F135000D1C15EC05001620160DF3 -:107EB000861A950A07AE962FF95C592FFE5C6EF173 -:107EC00037000D0E3ECDD5581BC1955C6BC158F6E1 -:107ED00008106818082668118E585EC0C15859C02D -:107EE000A41A9EFC09001E11A7BC8711B8BC982FCC -:107EF000F95C59201B5C6B581BCEB4300CC148F8A0 -:107F00000B1068140B3008B6883058B6A81A98F2CF -:107F10000C010EF00E00182028118EB6CE1198B666 -:107F2000D82FFC5C6C123CCEC5129C5C5C2FDDD85B -:107F3000220000EBCD40C0009B77001302F1EC560D +:107E3000560300000001000A9C208CB91B2F89F911 +:107E4000D9C010E04C0100C054AB0ABB1B300CCFB2 +:107E50000BFB3C000F580CC0B05801C040300CCB9D +:107E60004EC048300B3FFCC88E681C18435801CCEC +:107E700040CBBECC4B8913009C2FEDE3CD82FFD4C9 +:107E800021203D3009E06843DCEA180000705830DA +:107E90000EC2185859C1D4F2071501E0662A74EAD7 +:107EA000160000F135000D1C15EC05001520250B02 +:107EB000851A940E04A885F135000D1C15EC0500FB +:107EC0001620160D861A950A07AE962FF95C592FC3 +:107ED000FE5C6EF137000D0E3ECDD5581BC1955C92 +:107EE0006BC158F608106818082668118E585EC0D5 +:107EF000C15859C0A41A9EFC09001E11A7BC8711C5 +:107F0000B8BC982FF95C59201B5C6B581BCEB43061 +:107F10000CC148F80B1068140B3008B6883058B6FE +:107F2000A81A98F20C010EF00E00182028118EB637 +:107F3000CE1198B6D82FFC00D306001302F1EC56F0 :107F400004016F00008001017000010000FA2101AE -:107F50000D02F1EC56030000000100E02D0218189C -:107F60009716961A9C300A300BB91BF8EB000830B4 -:107F70000CC188F80B10680E0B17AA585AC100E004 -:107F80006A43E0EA1A000017ABF40B0F8B2F3B1784 -:107F90008B580BC051301B1A9A180AB48B2FFC5CFB -:107FA0006C0D8B163CCE75FACAFFF00D8B0E9CC77C -:107FB0000F300BC1F82FF95C6958F9C1941A9A1265 -:107FC0000AF52800005808CF71F20910680E093030 -:107FD00008B2883058B2A8FACEFFF0F60810681C34 -:107FE0000811CEB2CE11D8B2D83019B4892FFB5CAB -:107FF0006B183BC0343009CE1B300BC228E0682917 -:1080000044EA180000F93E000DFC0E1006100EFDAB -:108010000E0106B22EF93E000DFC0E1006100EFDEC -:108020000E0108B23E2F3C198CF80C10061808F10E -:108030003C010A2F89B28C301CB48C2FFB5C6B582E -:10804000BBE0840115E06C43E0EA1C0000F80B0380 -:108050002CF93A000D581ACF25585B00170200136F +:107F50000D02F1EC560300000001005C6C123CCEF7 +:107F6000C5129C5C5C2FDDD8220000EBCD40C0E048 +:107F70002D0218189716961A9C300A300BB91BF868 +:107F8000EB0008300CC188F80B10680E0B17AA58CC +:107F90005AC100E06A43DCEA1A000017ABF40B0F89 +:107FA0008B2F3B178B580BC051301B1A9A180AB4F1 +:107FB0008B2FFC5C6C0D8B163CCE75FACAFFF00D56 +:107FC0008B0E9CC70F300BC1F82FF95C6958F9C1B3 +:107FD000941A9A120AF52800005808CF71F2091075 +:107FE000680E093008B2883058B2A8FACEFFF0F611 +:107FF0000810681C0811CEB2CE11D8B2D83019B40E +:10800000892FFB5C6B183BC0343009CE1B300BC290 +:1080100028E0682940EA180000F93E000DFC0E1027 +:1080200006100EFD0E0106B22EF93E000DFC0E10DC +:1080300006100EFD0E0108B23E2F3C198CF80C10F4 +:10804000061808F13C010A2F89B28C301CB48C2F21 +:10805000FB5C6B58BBE0840115E06C00D229001377 :1080600002F1EC5604017000008001017100010072 -:1080700000EE9C010D02F1EC56030000000100CF60 -:10808000003009C0382FF95C6958F9CEA41A9A1249 -:108090000AF52800005808CF71F20910680E09305F -:1080A00008B288B2AB16985898F9B802052FE8FEC6 -:1080B00008001FC098C258C418C5D8C6E8CCFBCB6E -:1080C0001BCBB8CDB8E0682944EA180000F93E009F -:1080D0000DFC0E1006100EFD0E00A6B22EF93E008D -:1080E0000DFC0E1006100EFD0E00A8B23E2F3C191E -:1080F0008CF80C10061808F10C00AAB24CCAFBE070 -:10810000682944EA180000F93E000DFC0E10061024 -:108110000EFD0E00C6B22EF93E000DFC0E1006102C -:108120000EFD0E00C8B23E2F3C198CF80C1006183C -:1081300008F10C00CAB24CC92BE0682944EA1800C7 -:1081400000F93E000DFC0E1006100EFD0E00E6B20A -:108150002EF93E000DFC0E1006100EFD0E00E8B2CA -:108160003E2F3C198CF80C10061808F10C00EAB2EE -:108170004CC75BE0682944EA180000F93E000D0096 -:108180004B8C001302F1EC560401710000800101D8 +:1080700000EE9C010D02F1EC5603000000010043EC +:10808000DCEA1C0000F80B032CF93A000D581ACF5B +:1080900025585BCF003009C0382FF95C6958F9CEFC +:1080A000A41A9A120AF52800005808CF71F2091094 +:1080B000680E093008B288B2AB16985898F9B80221 +:1080C000052FE8FE08001FC098C258C418C5D8C6BE +:1080D000E8CCFBCB1BCBB8CDB8E0682940EA180050 +:1080E00000F93E000DFC0E1006100EFD0E00A6B2AB +:1080F0002EF93E000DFC0E1006100EFD0E00A8B26B +:108100003E2F3C198CF80C10061808F10C00AAB28E +:108110004CCAFBE0682940EA180000F93E000DFC5B +:108120000E1006100EFD0E00C6B22EF93E000DFC1C +:108130000E1006100EFD0E00C8B23E2F3C198CF832 +:108140000C10061808F10C00CAB24CC92BE06829C3 +:1081500040EA180000F93E000DFC0E1006100EFD5E +:108160000E00E6B22EF93E000DFC0E1006100EFDBC +:108170000E00E8B23E2F3C198CF80C1006180800CF +:10818000E9C2001302F1EC56040171000080010104 :1081900072000100007B57010D02F1EC5603000054 -:1081A000000100F00E003E7DFE931E2F3C198CF066 -:1081B0000C0038F10C0080B24CC63BE0682944EA60 -:1081C000180000F93E000DFC0E1012100E212E9C1E -:1081D0000EB22EF93E000DFC0E1012100E210E9C58 -:1081E0000EB23EF93E000DFC0E1012100E20EE9C59 -:1081F0000EB24EF93E000DFC0E1012100E20CE9C59 -:108200000EB25EF93E000DFC0E1012100E20AE9C58 -:108210000EB26EF93E000DFC0E1012100E208E9C58 -:108220000EB27EF93E000DFC0E1012100E206E9C58 -:108230000EF35E0010F93E000DFC0E1012100E2021 -:108240004E9C0EF35E00122F3C198CF80C10121885 -:10825000082028900C2EC9B20CC13BE0682944EAE2 -:10826000180000F93E000DF00E003E2ACE9C0EB222 -:108270002EF93E000DF00E003E2AAE9C0EB23EF9E5 -:108280003E000DF00E003E2A8E9C0EB24E2F3C1981 -:108290008CF00C00382A68900CB25CCF2AE0682978 -:1082A00044EA18005A1B001302F1EC560401720054 +:1081A000000100F10C00EAB24CC75BE0682940EA2C +:1081B000180000F93E000DF00E003E7DFE931E2FCC +:1081C0003C198CF00C0038F10C0080B24CC63BE03E +:1081D000682940EA180000F93E000DFC0E1012104C +:1081E0000E212E9C0EB22EF93E000DFC0E10121028 +:1081F0000E210E9C0EB23EF93E000DFC0E10121028 +:108200000E20EE9C0EB24EF93E000DFC0E10121028 +:108210000E20CE9C0EB25EF93E000DFC0E10121028 +:108220000E20AE9C0EB26EF93E000DFC0E10121028 +:108230000E208E9C0EB27EF93E000DFC0E10121028 +:108240000E206E9C0EF35E0010F93E000DFC0E1029 +:1082500012100E204E9C0EF35E00122F3C198CF86B +:108260000C101218082028900C2EC9B20CC13BE04B +:10827000682940EA180000F93E000DF00E003E2A81 +:10828000CE9C0EB22EF93E000DF00E003E2AAE9CA2 +:108290000EB23EF93E000DF00E003E2A8E9C0EB24C +:1082A0004E2F3C00C857001302F1EC560401720037 :1082B000008001017300010000C4EC010D02F1EC2B -:1082C0005603000000010000002F3C198C1808F133 -:1082D0003C012BB2CCCE7A300CC0282FFC5C6C5801 -:1082E000FCC0741A9BF60C060A580ACF81AC8C307D -:1082F0000CC0B8300BE06A43E0EA1A0000F40C034B -:108300002A2F3AB48B2FFC5C6C58BCCF45FE3DFD48 -:10831000E8E3CF80C00000D401301CE06B2FD0EA2E -:108320001B0000B68C305A300B300CFEB064845801 -:108330002CC031302CD802305A305B300CFEB06487 -:108340007B582CCF80C73DE0A02E9ADA0A0000EBC4 -:10835000CD40C03017305A305B301CFEB0646C58D2 -:108360003CC0213037E0662FD0EA160000ED2C002B -:1083700000583CC030581CC091305A300B301CFEA5 -:10838000B0645A583CC0213037300CAC8CC4FDE08E -:10839000A031F20E9C5C6CE3CD80C0D401300CC6E1 -:1083A0006C582CC031302CD802583CC031303CD8ED -:1083B00002DA0AEBCD4080E0672FC4EA170000E044 -:1083C000A032928F2CE0A000990B001302F1EC5622 +:1082C00056030000000100198CF00C00382A689059 +:1082D0000CB25CCF2AE0682940EA1800002F3C1954 +:1082E0008C1808F13C012BB2CCCE7A300CC0282F70 +:1082F000FC5C6C58FCC0741A9BF60C060A580ACF3A +:1083000081AC8C300CC0B8300BE06A43DCEA1A0058 +:1083100000F40C032A2F3AB48B2FFC5C6C58BCCFB2 +:1083200045FE3DFDE8E3CF80C00000EBCD40FC20E2 +:108330003D169214963017F80B1518C341E06C2CBB +:1083400068EA1C0000EC0515051805301CF8020948 +:10835000448ABC086CC0D08AB3FAE300045006E03B +:108360006CEB3CEA1C8001FEB089EA302CC5283059 +:108370001AEB2B0002F9D2B008E0A007B5C1108AB1 +:10838000BB049AFAEB00045006E06CEB3CEA1C805C +:10839000012F0CFEB089D48ABC1844AA34C388309B +:1083A0002CC388581CC341E06C2C68EA1C0000EC0C +:1083B0000515051805301CF80209448ABC086CC074 +:1083C000E18AB3FAE300040026F7001302F1EC5649 :1083D00004017300008001017400010000D0C40199 -:1083E0000D02F1EC5603000000010032898F0CFEF3 -:1083F000B0889C8F1C6E2CE06B7350EA1B8001F9D7 -:108400004B00A8E06B7388EA1B8001F94B00ACE0DD -:108410006B73D4EA1B8001F94B00B0E06B7458EA2F -:108420001B8001F94B00B4E06B7678EA1B8001F900 -:108430004B00B8E3CF90808001D91C8001D9108017 -:1084400000853CD401300BE06A2FC4EA1A000074A6 -:108450002AF53A00A1580AC021D80A581CC031C0D8 -:10846000AC189B169C5C6CD8020000D401300CC088 -:10847000ACD80AE06B2FD6EA1B0000F72C00005E98 -:10848000FC0000E06B2FD6EA1B0000B68C5EFDEB13 -:10849000CD40E0201D18953017E0662FD0EA160079 -:1084A00000ED2C0000581CC2E18C2C2FFCAC2C8C55 -:1084B0002CE04C004CC0D5300CAC2C302CAC8C30AB -:1084C0005A300B301CFEB063C9583CC021303758BD -:1084D00015C701E06C2FC4EA1C0000781C2BDC19C6 -:1084E0008C581CC0A18C2C59FCC64500242E0013AE +:1083E0000D02F1EC560300000001005006E06CEBBA +:1083F0003CEA1C80012E0CFEB089B43037C1A83095 +:108400001AEB2B0002F9D2B008E0A007D9C0E08A2D +:10841000BB049AFAEB00045006E06CEB3CEA1C80CB +:10842000012D0CFEB0899EC02830378ABC088CAA6A +:108430003C0E9C5C6C2FDDE3CD80FC8001831C80B6 +:108440000183D0D401FEB0BBDBD8028000EC10D495 +:1084500001216D300AFB5A0054FB6A002D30A9FB44 +:1084600069002EFB6A0030FB6A0031305AFB6A005B +:108470002CFB6C002DFB6B0030FACCFFD41A9B3226 +:10848000C9190A16AA2049CFD1C23C2EADD80AD4A8 +:1084900001FEB0A7FBD80A8000C49CD4015C5CFE3E +:1084A000B0A80AD80AD7038000C4C8300A599CC0B3 +:1084B000D2E0692C68EA190000A57C120C98BCF87F +:1084C0000B0A4CA19CC022301A149C5C6C5EFCEB25 +:1084D000CD40E020BD3017FB2B003C5C5B587BF9A6 +:1084E000BB02072FEBFE0B001FC088000D9200138C :1084F00002F1EC56040174000080010175000100D6 -:1085000000BA7C010D02F1EC560300000001002FBF -:10851000F6ED2C00002FFCAC8CC5E82FE6ED2C000E -:10852000002FFCAC8CC588582CC2515815C131E0C5 -:108530006C2FC4EA1C0000781C2BDC198C581CC062 -:1085400061ED2C00012FFCAC9CC058ED2C00022FDB -:10855000FCACACED2C0001581CC3E5305A300B309C -:108560000CFEB0638D582CC031302CC378303CAC3D -:108570008CC328583CC301E06C4533EA1C800019C9 -:108580008CBA8C1A9BE06C2FC4EA1C0000780CE0BB -:10859000A0095A5C5C582CC0E1305A300B301CFEEC -:1085A000B0636E583CC0213037301CC7EF304CAC44 -:1085B0008CC128583CC101305A300B301CFEB063CE -:1085C0005F583CC0213037300CAC9CACAC302CAC8C -:1085D0008CE0A02D790E9C5C6C2FFDE3CD80E080BB -:1085E000018834D401301CE06B2FD0EA1B0000B6A8 -:1085F0008C305A300B300CFEB06342582CC03130F6 -:108600002CD802305A305B300CFEB06339582C0045 -:108610001C52001302F1EC560401750000800101A8 +:1085000000BA7C010D02F1EC56030000000100C32B +:1085100018C448C6A8C898CB08CBA8CC48FB2600EE +:108520003DFACCFFC01A9B3249190A16AA2049CF3E +:10853000D1FB2B003EF9D6B008FEB0B797582CC03F +:10854000D10C9CFEB0B8E630075006E06CE9C4EAF6 +:108550001C8001FEB08918CB18583CE08100AF5058 +:1085600006E06CE9C4EA1C80012F8CFEB0890CCABD +:1085700058FB26003DFB2B003EF9D6B008FEB0B8F4 +:1085800023583CE081009B5006E06CE9C4EA1C8063 +:10859000012F0CFEB088F8C918FB1B0064FACCFF51 +:1085A000FCFEB0B8D5FB2C0005582CC111FB2C00EB +:1085B00004FEB0B8AF3007FB2B0004500BE06CE9B1 +:1085C000C4EA1C80012E8CFEB088DEC778583CC7F8 +:1085D00051FB2B0004500BE06CE9C4EA1C80012E17 +:1085E0000CFEB088D1C6A8E0A00CF8582CC101FB45 +:1085F00026003D0C9CFEB0B88D30075006E06CE9BB +:10860000C4EA1C80012D8CFEB088BEC578583C00A1 +:10861000FD74001302F1EC560401750000800101A5 :1086200076000100002FB7010D02F1EC56030000A7 -:10863000000100CF80C31CE0A02D58DA0AD70380C8 -:1086400001D0B4EBCD40C03017305A305B301CFE47 -:10865000B06328583CC0213037E0662FD0EA1600BE -:1086600000ED2C0000583CC030581CC091305A30EE -:108670000B301CFEB06316583CC0213037300CACB8 -:108680008CC0BCE0A030AE0E9C5C6CE3CD80C080A2 -:10869000003C6C8001D7ACE06C2FD0EA1C000030AD -:1086A0000BB82BB89BB8AB5EFD0000EBCD4080163D -:1086B00097301A0F8BF60B1068F80B0B0A0F8BF61E -:1086C0000B1068180BB69A305B0F89F20910681806 -:1086D00009B2AB0F8BF60B1068160CB8CACEBE0FE2 -:1086E0008C2FFCAE8CE3CF80800000D401E06CF1D5 -:1086F00020EA1C8001FEB08859E06C00E0EA1C0012 -:1087000000300BB88BB8BB301AB8CAB8DAB8EBB8BF -:10871000FBB89BFEB0872E2C0C988CDA0A0000D494 -:1087200001E06CF118EA1C8001FEB0883FFEB087C2 -:10873000212C0C000E2C001302F1EC5604017600E3 +:10863000000100C551FB2B003D500BE06CE9C4EA82 +:108640001C80012D0CFEB088B1C4A8FB26003D0C97 +:10865000955855C131301CE0A00106582CC1410C81 +:108660009CFEB0B86930075005E06CE9C4EA1C8094 +:10867000012C8CFEB0889AC3385825C311E0A03075 +:108680006B582CCEE0583CC2B15005E06CE9C4EA0E +:108690001C80012C0CFEB08889C228FACCFFC41AB9 +:1086A0009B32C9190A16AA2049CFD1FEB0B8D6C14B +:1086B00078FACCFFC41A9B32C9190A16AA2049CFEE +:1086C000D1E0A02D95C0C8FB2B003D500BE06CE91C +:1086D000C4EA1C80012B8CFEB0886830070E9C5CBD +:1086E0006C2F5DE3CD80E08000E4588000E5B4802D +:1086F00000E73C80018FC8800178308000E700806F +:1087000001D7208000E8248001D1B880008774D48C +:1087100001301CE06B2FCCEA1B0000B68C305A30C5 +:108720000B300CFEB0FE3A582CC031302CD8023041 +:108730005A305B005DCA001302F1EC56040176006A :10874000008001017700010000900C010D02F1ECA6 -:1087500056030000000100988CEDBC0005C023DA30 -:108760000AE06C00E0EA1C0000300BB88BB8BB30AC -:108770001AB8CAB8DAB8EBB8FB19AA581ACF11B8A8 -:10878000AB30EA308B301CFEB0629E583CCE91304C -:108790003CD802EBCD40C0E06C43E0EA1C0000781E -:1087A0004B179B785C19961606FEB086F52C0C9834 -:1087B0008CEDBC0005C033E3CF90C0E06700E0EA79 -:1087C0001700000FBC580CC051301CAEBCE3CF905A -:1087D000C00FAC5C56C090581CCEF1301CAECC30F3 -:1087E0000CAEACE3CF90C05C5CC1610FCC581CC038 -:1087F0008130EA308B301CFEB06266300CAECC307B -:10880000EA308B300CFEB0625F582CCD60301CAE6D -:10881000ACE3CF90C02FF7EF2C00005C5C187CC05D -:1088200050202CC060E3CF90C0C0BCE3CF90C0C448 -:108830004CE3CF90C0D7038000853C80003C6CEBBC -:10884000CD40E0202DE06C2C48EA1C0000780C2A7A -:108850008C9807E06500E0004C83001302F1EC56B1 +:1087500056030000000100300CFEB0FE31582CCF53 +:1087600080C73DE0A02D06DA0A0000EBCD40C03006 +:1087700017305A305B301CFEB0FE22583CC021300E +:1087800037E0662FCCEA160000ED2C0000583CC004 +:1087900030581CC091305A300B301CFEB0FE1058BF +:1087A0003CC0213037300CAC8CC4FDE0A030620EF0 +:1087B0009C5C6CE3CD80C0D401300CC66C582CC0DE +:1087C00031302CD802583CC031303CD802DA0AEBA8 +:1087D000CD4080E0672FC0EA170000E0A031028F93 +:1087E0002CE0A030F98F0CFEB086D68F1C6E2CE0EA +:1087F0006B76DCEA1B8001F94B00A8E06B7714EA8A +:108800001B8001F94B00ACE06B7760EA1B8001F93B +:108810004B00B0E06B77E4EA1B8001F94B00B4E059 +:108820006B7A04EA1B8001F94B00B8E3CF9080809B +:1088300001D9888001D97C8000853CD401300BE0CF +:108840006A2FC0EA1A0000742AF53A00A1580AC03B +:1088500021D80A581CC031004CDC001302F1EC5640 :108860000401770000800101780001000007E701A2 -:108870000D02F1EC56030000000100EA1500000BA8 -:10888000DC581CC0A1E047002EC074300CAADC30BC -:108890001CCBBC300CCA9C8A460C37C1B5EB2C00F3 -:1088A000072FFCAAFCEB2C0007582CC155302CAA32 -:1088B0009C300CAAFCBB17E06CF0D4EA1C8001FED3 -:1088C000B0879833CCAA4C301CC9FC301CC8DCC023 -:1088D00038300CAAFC2FEDE3CF90E0EBCD40E02048 -:1088E0002DE06C2C48EA1C0000780C2A8C9807E0DC -:1088F0006600E0EA160000E047002DC194ED2C0070 -:10890000062FFCACECED2C0006582CC1353005AC24 -:1089100095301CC7AC300CC68CACE58C46BB17E060 -:108920006CF0E0EA1C8001FEB08764C038300CAC0B -:10893000EC2FEDE3CF90E0EBCD4080E06CF110EA5E -:108940001C8001FEB08756E0672C48EA170000E063 -:10895000A030248F1CE0A0301B8F0C300CE06B008B -:10896000E0EA1B0000B69C6E1CE06B76B8EA1B8048 -:1089700001F94B01C8E06B76ECEA1B00F9410013EA +:108870000D02F1EC56030000000100C0AC189B167D +:108880009C5C6CD8020000D401300CC0ACD80AE06B +:108890006B2FD2EA1B0000F72C00005EFC0000E00A +:1088A0006B2FD2EA1B0000B68C5EFDEBCD40E020C2 +:1088B0001D18953017E0662FCCEA160000ED2C004D +:1088C00000581CC2E18C2C2FFCAC2C8C2CE04C00F2 +:1088D0004CC0D5300CAC2C302CAC8C305A300B301A +:1088E0001CFEB0FD7F583CC02130375815C701E051 +:1088F0006C2FC0EA1C0000781C2BDC198C581CC0A3 +:10890000A18C2C59FCC6452FF6ED2C00002FFCAC99 +:108910008CC5E82FE6ED2C00002FFCAC8CC58858E8 +:108920002CC2515815C131E06C2FC0EA1C000078F0 +:108930001C2BDC198C581CC061ED2C00012FFCACE9 +:108940009CC058ED2C00022FFCACACED2C00015863 +:108950001CC3E5305A300B300CFEB0FD43582CC020 +:1089600031302CC378303CAC8CC328583CC301E078 +:108970006C434FEA1C8000198CBA8C00224800130B :1089800002F1EC5604017800008001017900010039 -:1089900000475C010D02F1EC56030000000100806D -:1089A00001F94B01CCE06B773CEA1B8001F94B01EC -:1089B000D0E06B793CEA1B8001F94B01D4E06B7984 -:1089C00098EA1B8001F94B01D8E3CF9080D7038050 -:1089D0000087748001D91C8001D910D401300BE0CC -:1089E0006A2C48EA1A0000741AF53A01C1580AC004 -:1089F00021D80A5C6CC031C12C189B169C5C6CD8C9 -:108A0000020000D401300CC12CDA0A581C5F0CE0C3 -:108A10006B2C51EA1B0000B68C5EFDE06B2C50EA1B -:108A20001B0000F72C00005EFC0000E06B2C50EAFD -:108A30001B0000B68C5EFDD401189A301C1789F219 -:108A4000091068F4090B0C1789F20910681409B2AF -:108A50009C30EC1789F20910681409B2ACE06C2C58 -:108A600051EA1C0000F9290000178CF80C10681856 -:108A70000AB4C9178C2FFCB68CCC5FD80A0000D67C -:108A800071203D14901691B906E065D494EA1580E2 -:108A9000010C9A0E9B5D151893009A029B5D1500C0 -:108AA000032C001302F1EC5604017900008001014F +:1089900000475C010D02F1EC560300000001001AD3 +:1089A0009BE06C2FC0EA1C0000780CE0A007C65CBE +:1089B0005C582CC0E1305A300B301CFEB0FD2458FE +:1089C0003CC0213037301CC7EF304CAC8CC128582C +:1089D0003CC101305A300B301CFEB0FD15583CC074 +:1089E000213037300CAC9CACAC302CAC8CE0A02BE4 +:1089F000E50E9C5C6C2FFDE3CD80E080018898D46F +:108A000001301CE06B2FCCEA1B0000B68C305A30D2 +:108A10000B300CFEB0FCF8582CC031302CD8023092 +:108A20005A305B300CFEB0FCEF582CCF80C31CE0FA +:108A3000A02BC4DA0AD7038001D118EBCD40C03097 +:108A400017305A305B301CFEB0FCDE583CC0213081 +:108A500037E0662FCCEA160000ED2C0000583CC031 +:108A600030581CC091305A300B301CFEB0FCCC5832 +:108A70003CC0213037300CAC8CC0BCE0A02F1E0EA7 +:108A80009C5C6CE3CD80C0800173648001D818E0E9 +:108A90006C2FCCEA1C0000300BB82BB89BB8AB0095 +:108AA000A820001302F1EC560401790000800101B6 :108AB0007A00010000D297010D02F1EC560300008C -:108AC0000001003005EA157FF05803C087580CC636 -:108AD00006582CC091404CB911C0385823CFA13052 -:108AE0002C2FDDDC72580CC1A10C9A0E9B30080AA9 -:108AF00099E0A02DE3C050404CB911300CCF2B327F -:108B00001CE06B4EA4EA1B0000970C3FFAE06BFFE1 -:108B1000FFEA1B7FFF404CB91BCE3B581CC0D13035 -:108B200008F06900000C9A0E9BE0A02DC7CE904083 -:108B30004CB911301CCD6B5803C121404CB91140C8 -:108B40005BE0A01F1318935C7C202CC072322CE0D9 -:108B50006B4EA4EA1B0000970C069CCC3B0C9A0EB3 -:108B60009B30080A99E0A02DA9C0A1009A029B3071 -:108B7000080A99FEB0F0B9404CB91BCDCB300A3091 -:108B80000B00980299FEB0F0B0404CB91BCB7B3083 -:108B900008E069C800EA19C09C0C9A0E9BFEB0F16F -:108BA0004DCEE33018E069C800EA19409C0C9A0EDB -:108BB0009BFEB0F141C113009A029B30080A99FE56 -:108BC000B0F09300056E001302F1EC5604017A0038 +:108AC0000001005EFD0000EBCD40801697301A0FCC +:108AD0008BF60B1068F80B0B0A0F8BF60B1068184F +:108AE0000BB69A305B0F89F20910681809B2AB0F08 +:108AF0008BF60B1068160CB8CACEBE0F8C2FFCAECE +:108B00008CE3CF80800000D671203D14901691B97F +:108B100006E065D50CEA1580010C9A0E9B5D1518D0 +:108B200093009A029B5D153005EA157FF05803C04B +:108B300087580CC606582CC091404CB911C0385803 +:108B400023CFA1302C2FDDDC72580CC1A10C9A0E62 +:108B50009B30080A99E0A02DD9C050404CB9113083 +:108B60000CCF2B321CE06B4EA0EA1B0000970C3F91 +:108B7000FAE06BFFFFEA1B7FFF404CB91BCE3B586E +:108B80001CC0D13008F06900000C9A0E9BE0A02DAB +:108B9000BDCE90404CB911301CCD6B5803C1214063 +:108BA0004CB911405BE0A01F1318935C7C202CC0D3 +:108BB00072322CE06B4EA0EA1B0000970C069CCC96 +:108BC0003B0C9A0059A3001302F1EC5604017A0001 :108BD000008001017B000100006D2C010D02F1EC11 -:108BE00056030000000100404CB91B322CE06B4ED4 -:108BF000A4EA1B0000970C301CC86BE06882FEEAF8 -:108C000018652BE0691547EA193FF70C9A0E9BFE91 -:108C1000B0F07D1494169530083009FEB0F1203084 -:108C20000AC052300BEA1BBFE0C048300BEA1B3FC2 -:108C3000E008980A99FEB0EF55FEB0F13C502CFECA -:108C4000B0F15314941695E068E4F2EA18BCD5E04C -:108C500069E8E7EA193E4BFEB0F059BB2B300AEA4F -:108C60001AF800E06B2E42EA1B3FE608980A99FECC -:108C7000B0F04D149816990C9A0E9BFEB0EEFEBB08 -:108C800009FEB0EEFB149416953FE8E069FFFFEA99 -:108C900019BC8FFEB0F0E2C0D330083009EA193CAD -:108CA00090089A0A9BFEB0F0DBC042009A029BC675 -:108CB00088089A0A9B08980A99FEB0F0281496161C -:108CC00097E0682E11EA188157E0693FA0EA193F42 -:108CD00050FEB0F01CE0684358EA188C12E069714D -:108CE0008FEA193FBCFEB000363F001302F1EC568C +:108BE000560300000001000E9B30080A99E0A02DFA +:108BF0009FC0A1009A029B30080A99FEB0F09140F4 +:108C00004CB91BCDCB300A300B00980299FEB0F066 +:108C100088404CB91BCB7B3008E069C800EA19C01A +:108C20009C0C9A0E9BFEB0F125CEE33018E069C88B +:108C300000EA19409C0C9A0E9BFEB0F119C113007A +:108C40009A029B30080A99FEB0F06B404CB91B3277 +:108C50002CE06B4EA0EA1B0000970C301CC86BE0A8 +:108C60006882FEEA18652BE0691547EA193FF70CA0 +:108C70009A0E9BFEB0F0551494169530083009FEFC +:108C8000B0F0F8300AC052300BEA1BBFE0C04830E9 +:108C90000BEA1B3FE008980A99FEB0EF2DFEB0F1F9 +:108CA00014502CFEB0F12B14941695E068E4F2EA0F +:108CB00018BCD5E069E8E7EA193E4BFEB0F031BBDD +:108CC0002B300AEA1AF800E06B2E42EA1B3FE60856 +:108CD000980A99FEB0F025149816990C9A0E9BFEEE +:108CE000B0EED6BB09FEB000F4BA001302F1EC56A8 :108CF00004017B00008001017C0001000079040177 -:108D00000D02F1EC56030000000100EEFD0C980E80 -:108D100099FEB0F00E14921693E068E84BEA184101 -:108D2000A5E06952B7EA193F010C9A0E9BFEB0F01C -:108D300000E068BD0BEA18DAF3E06970E8EA193F71 -:108D40008CFEB0EEE10C980E99FEB0EFF2300830D8 -:108D500009EA193FE0FEB0EED708980A99FEB0EF95 -:108D6000E8149616973005EA153FF0049A069B0C16 -:108D7000980E99FEB0EE9430080A99FEB0EEC4BB8E -:108D80001B049A069B0C980E99FEB0EEBD30080AA3 -:108D900099FEB0EEB9BB08FEB0F00800980299FE4B -:108DA000B0EFC7404CB91B402B405C180B404CE067 -:108DB000A01E0018935C7C202CFE93FEEECF2A8030 -:108DC00001D5F480015DCA80015DFE80015D708087 -:108DD000015D7480015990800159F880015C9C808C -:108DE000015C228001B8A4EBCD40C0189BE06C1E52 -:108DF00014EA1C0000300A994AE06E1C8CEA1E003E -:108E00000030599D39990A991A992A003DBA0013E0 +:108D00000D02F1EC56030000000100EED31494169E +:108D1000953FE8E069FFFFEA19BC8FFEB0F0BAC0EA +:108D2000D330083009EA193C90089A0A9BFEB0F04B +:108D3000B3C042009A029BC688089A0A9B08980A08 +:108D400099FEB0F00014961697E0682E11EA18818B +:108D500057E0693FA0EA193F50FEB0EFF4E06843E6 +:108D600058EA188C12E069718FEA193FBCFEB0EE28 +:108D7000D50C980E99FEB0EFE614921693E068E8D1 +:108D80004BEA1841A5E06952B7EA193F010C9A0E67 +:108D90009BFEB0EFD8E068BD0BEA18DAF3E069702B +:108DA000E8EA193F8CFEB0EEB90C980E99FEB0EFD0 +:108DB000CA30083009EA193FE0FEB0EEAF08980A61 +:108DC00099FEB0EFC0149616973005EA153FF004EF +:108DD0009A069B0C980E99FEB0EE6C30080A99FE2C +:108DE000B0EE9CBB1B049A069B0C980E99FEB0EE4D +:108DF0009530080A99FEB0EE91BB08FEB0EFE00096 +:108E0000980299FEB0EF9F404CB91B00231E00133F :108E100002F1EC5604017C00008001017D0001009C -:108E20000013BC010D02F1EC560300000001009993 -:108E30003A30083009F8E90014F8E9001CF8E900B4 -:108E400024F8E9002CF8E90034F8E9003CF94A007C -:108E500044F94A00481C9A2E4A9D4A1C9A2E4A14EC -:108E60009632D7AD282017CFE18D08BD199D287601 -:108E700028EE1880007619EE198000760A189B2FCC -:108E8000CBFEB0E765E3CF90C00000EBCD40FE160F -:108E900091E0661C8CEA160000780B8D0B781BEEB7 -:108EA0001B80008D1B782CEE1C80008D2C31EA0C71 -:108EB0009B6C4CFEB0EC666C39129A201A6C4CE03C -:108EC000671E14EA1700006E4B143BC23431EA2FC0 -:108ED000FB5C8BFEB0EC7CFEB0EFC6EEEB002C3101 -:108EE000EA6E4B2FFB5C8B6C4CFEB0EC8FFEB0EF50 -:108EF000BBEEEB003431EA6E4B2FFB5C8B6C4CFE0F -:108F0000B0ECA2FEB0EFB0EEEB003C6E462FF6C622 -:108F1000B831EAC1F1F7D9B010FEB0EC59FEB0EFAC -:108F2000A3EEEB002C31EA6C3B5C8B6C4CFEB0008A -:108F3000ACCD001302F1EC5604017D00008001016C +:108E20000013BC010D02F1EC5603000000010040EC +:108E30002B405C180B404CE0A01E0018935C7C207B +:108E40002CFE93FEEECF2A8001D64480015DDE80A9 +:108E5000015E1280015D8480015D88800159A480DB +:108E6000015A0C80015CB080015C368001B908EBCE +:108E7000CD40C0189BE06C1E10EA1C0000300A991F +:108E80004AE06E1C88EA1E000030599D39990A9903 +:108E90001A992A993A30083009F8E90014F8E900DB +:108EA0001CF8E90024F8E9002CF8E90034F8E9009E +:108EB0003CF94A0044F94A00481C9A2E4A9D4A1C33 +:108EC0009A2E4A149632D7AD282017CFE18D08BDCF +:108ED000199D287628EE1880007619EE1980007604 +:108EE0000A189B2FCBFEB0E73DE3CF90C00000EB0C +:108EF000CD40FE1691E0661C88EA160000780B8DC6 +:108F00000B781BEE1B80008D1B782CEE1C80008DD7 +:108F10002C31EA0C9B6C4CFEB0EC3E6C39129A2062 +:108F20001A6C4CE0671E10EA1700006E4B143B00F1 +:108F30000A1F001302F1EC5604017D0000800101BC :108F40007E000100008677010D02F1EC560300005F -:108F5000000100EC6DFEB0EF99EEEB003431EA6CED -:108F60003B5C8B6C4CFEB0EC81FEB0EF8FEEEB0007 -:108F70003C6C36C4B8F7D9B010FEB0EC2F8D5C3124 -:108F8000EA300B6C4CFEB0EC2918958D656C546A78 -:108F90000CFEB0EF7B14921693680CFEB0EF7614C3 -:108FA000981699EEEA002CFEB0ED9E04980699FE04 -:108FB000B0EDCEEEEB002C6A1CFEB0EF67149216FB -:108FC00093681CFEB0EF6214981699EEEA0034FE26 -:108FD000B0ED8A04980699FEB0EDBAEEEB00346A63 -:108FE0002CFEB0EF5314921693682CFEB0EF4E1483 -:108FF000981699EEEA003CFEB0ED7604980699FECC -:10900000B0EDA6EEEB003C6C360C9CFEB0EFA3146A -:10901000981699EEEA002CFEB0EEEC14921693EE40 -:10902000E300140C9CFEB0EF9614981699EEEA003B -:1090300034FEB0EEDF14941695EEE500240C9CFE91 -:10904000B0EF8914981699EEEA003CFEB0EED2EE2D -:10905000EB001C001366001302F1EC5604017E00C5 +:108F5000000100C23431EA2FFB5C8BFEB0EC54FE02 +:108F6000B0EF9EEEEB002C31EA6E4B2FFB5C8B6C6E +:108F70004CFEB0EC67FEB0EF93EEEB003431EA6EDE +:108F80004B2FFB5C8B6C4CFEB0EC7AFEB0EF88EEA6 +:108F9000EB003C6E462FF6C6B831EAC1F1F7D9B006 +:108FA00010FEB0EC31FEB0EF7BEEEB002C31EA6C42 +:108FB0003B5C8B6C4CFEB0EC45FEB0EF71EEEB0011 +:108FC0003431EA6C3B5C8B6C4CFEB0EC59FEB0EF7C +:108FD00067EEEB003C6C36C4B8F7D9B010FEB0ECCD +:108FE000078D5C31EA300B6C4CFEB0EC0118958DAE +:108FF000656C546A0CFEB0EF5314921693680CFE25 +:10900000B0EF4E14981699EEEA002CFEB0ED7604FF +:10901000980699FEB0EDA6EEEB002C6A1CFEB0EFB0 +:109020003F14921693681CFEB0EF3A14981699EE0E +:10903000EA0034FEB0ED6204980699FEB0ED92EEBF +:10904000EB00346A2CFEB0EF2B14921693682CFEC2 +:10905000B0EF26008829001302F1EC5604017E00CF :10906000008001017F0001000039CC010D02F1EC0C -:1090700056030000000100FEB0DD5218981096085B -:109080009A0A9BFEB0DD4C18991295049A069BFE35 -:10909000B0DD460C980A99189A0E9B2F4B0E9C2F08 -:1090A0008CFEB0E6796E4C2FFC8F4C300A300BEE04 -:1090B000EB0014EEEB0024EEEB001C6E0B6E2CC3E9 -:1090C0002C1896EF4600446E1B6E3CC2CCEF4C0051 -:1090D000482D86E0460051C0522D8CE04C0051C016 -:1090E00053301CA28CE3CF90FE300CA28CE3CF80D7 -:1090F000FED703800156508001569C800156D880CF -:109100000157148001568480015D3480015990809C -:109110000159F880015DFE80015C9C800139A480CA -:10912000014C1CF80B010AE04A00B5C065162CFE84 -:109130003CFE985C3C5EFCFE5AFF4CC054FE3CFE7C -:1091400098161C5EFC149C5EFC0000EBCD4080E099 -:1091500067ED68EA1780010E9CFEB083C9311A30B2 -:109160007B300CFEB05E40582CC0812EC70E9CFE9A -:10917000B083BE302CE3CD00175C001302F1EC5637 +:109070005603000000010014981699EEEA003CFE29 +:10908000B0ED4E04980699FEB0ED7EEEEB003C6C20 +:10909000360C9CFEB0EF7B14981699EEEA002CFE7D +:1090A000B0EEC414921693EEE300140C9CFEB0EFE5 +:1090B0006E14981699EEEA0034FEB0EEB7149416CA +:1090C00095EEE500240C9CFEB0EF6114981699EE25 +:1090D000EA003CFEB0EEAAEEEB001CFEB0DD2A1862 +:1090E000981096089A0A9BFEB0DD241899129504F0 +:1090F0009A069BFEB0DD1E0C980A99189A0E9B2FBB +:109100004B0E9C2F8CFEB0E6516E4C2FFC8F4C30DA +:109110000A300BEEEB0014EEEB0024EEEB001C6EBD +:109120000B6E2CC32C1896EF4600446E1B6E3CC28F +:10913000CCEF4C00482D86E0460051C0522D8CE00B +:109140004C0051C053301CA28CE3CF90FE300CA2D7 +:109150008CE3CF80FED70380015664800156B08037 +:109160000156EC800157288001569880015D4880A7 +:109170000159A480015A0C008DE4001302F1EC5651 :1091800004017F0000800101800001000084A7012C -:109190000D02F1EC560300000001008080E3CF9047 -:1091A000800000EBCD4080E067ED48EA1780010EBB -:1091B0009CFEB083AF311A307B301CFEB05E265867 -:1091C0003CC0812EC70E9CFEB083A4303CE3CD8012 -:1091D00080E3CF9080D70380003C6CEBCD40C02073 -:1091E0002DFEB0827B1896E067EF04EA178001AF8E -:1091F0000ABB1BE06B2C60EA1B0000761B2B0B1AD2 -:109200009A1498308C173910C9201CCFD19AB99A6A -:10921000AA9A9B9A8CC33CE04C2711C125301CEDC7 -:109220006C00D42BD60D8C581CC221364BE06C0040 -:10923000FFFEB087B52F870E9CFEB0836BC188C13F -:1092400074ED3C00D4581CC131300CED6C00D42BB3 -:10925000D60D8C580CC0C1E0A02C2A300BF93C0074 -:1092600080FEB0879D2F870E9CFEB083532FEDE3C9 -:10927000CF90C08000853C80009000D431189616B5 -:1092800095129430073003089CFEB0DD0318920855 -:109290009CFEB0DCFF049BFEB0DB1C001FB700137C +:109190000D02F1EC5603000000010080015E128018 +:1091A000015CB0800139B880014C30F80B010AE055 +:1091B0004A00B5C065162CFE3CFE985C3C5EFCFE89 +:1091C0005AFF4CC054FE3CFE98161C5EFC149C5E7C +:1091D000FC0000EBCD4080E067EDD4EA1780010E83 +:1091E0009CFEB08397311A307B300CFEB0F98A5860 +:1091F0002CC0812EC70E9CFEB0838C302CE3CD801A +:1092000080E3CF90800000EBCD4080E067EDB4EAD2 +:109210001780010E9CFEB0837D311A307B301CFE1E +:10922000B0F970583CC0812EC70E9CFEB0837230DE +:109230003CE3CD8080E3CF9080D70380017364EB63 +:10924000CD40C0202DFEB082491896E067EF70EA4D +:10925000178001AF0ABB1BE06B2C5CEA1B00007699 +:109260001B2B0B1A9A1498308C173910C9201CCF5D +:10927000D19AB99AAA9A9B9A8CC33CE04C2711C107 +:1092800025301CED6C00D42BD60D8C581CC2213619 +:109290004BE06C00FFFEB087832F870058D6001389 :1092A00002F1EC5604018000008001018100010000 -:1092B00000C834010D02F1EC560300000001001853 -:1092C000920A9CFEB0DCF818950C9CFEB0DCF40A07 -:1092D0009BFEB0DB11049BFEB0DB8218965854C78E -:1092E00065E0673334EA173F330E9BFEB0DC92C172 -:1092F000F30C9C0E9BFEB0DC81C183E06B6666EADA -:109300001B3FE60C9CFEB0DC85C102E06B3333EA08 -:109310001BBF330C9CFEB0DA99E06BBA2EEA1B3F00 -:1093200068FEB0DAE91893C038FC133F80089CFE51 -:10933000B0DCC2FEB0EDE0149416953008E0691C74 -:10934000ACEA193FF8FEB0F08314961697069CFE1F -:10935000B0EDD214901691FC188000E069353FEA18 -:10936000193FF0089A0A9BFEB0F072FC18A000E0CA -:10937000697CEDEA193FF1FEB0ED3500980299FEE7 -:10938000B0ED3114901691FC1C3F80069BFEB0D9C5 -:10939000EFFEB0EDB114941695FC1A4000E06BA9F5 -:1093A0002AEA1B3F430C980E99FEB0ED1C08980A60 -:1093B00099FEB0ED18FEB0EDEAFEB0EE02009800A6 -:1093C00052F9001302F1EC56040181000080010102 +:1092B00000C834010D02F1EC560300000001000E5D +:1092C0009CFEB08339C188C174ED3C00D4581CC1E8 +:1092D00031300CED6C00D42BD60D8C580CC0C1E095 +:1092E000A02C2E300BF93C0080FEB0876B2F870E30 +:1092F0009CFEB083212FEDE3CF90C08000853C80A1 +:10930000009000D431189616951294300730030857 +:109310009CFEB0DCDB1892089CFEB0DCD7049BFE00 +:10932000B0DAF418920A9CFEB0DCD018950C9CFEC2 +:10933000B0DCCC0A9BFEB0DAE9049BFEB0DB5A1825 +:10934000965854C765E0673334EA173F330E9BFEE7 +:10935000B0DC6AC1F30C9C0E9BFEB0DC59C183E00B +:109360006B6666EA1B3FE60C9CFEB0DC5DC102E06A +:109370006B3333EA1BBF330C9CFEB0DA71E06BBA7F +:109380002EEA1B3F68FEB0DAC11893C038FC133FC9 +:1093900080089CFEB0DC9AFEB0EDB81494169530AF +:1093A00008E0691CACEA193FF8FEB0F05B149616B1 +:1093B00097069CFEB0EDAA14901691FC1880000050 +:1093C000D51E001302F1EC5604018100008001015A :1093D00082000100005DFF010D02F1EC5603000068 -:1093E0000001000299FEB0EBFBFEB0EDE218970E13 -:1093F0009CD8328001381C80013A3880013A508074 -:109400000136888001373480013AF48001628C8013 -:109410000135AC80015D3480015C2280015DFE80FD -:109420000159F880015DCAEBCD4080E06CEECCEADA -:109430001C8001FEB08292E0672C60EA170000E019 -:10944000A02B608F0CE0A02B578F1C6E0CE06B7F65 -:10945000D4EA1B8001F94B0228E06B8008EA1B80EC -:1094600001F94B022CE06B8040EA1B8001F94B02B2 -:1094700030E06BC7B4EA1B8001F94B0234E06BC7E4 -:10948000F4EA1B8001F94B0238E3CF9080D70380C8 -:109490000087748001D91C8001D910EBCD40FC18E5 -:1094A0009516971496E06C43E0EA1C00005895C0AE -:1094B000613025301B782A2F1AB48B5C65F80503C0 -:1094C0002430033022E93C000E580CC031E3CF8039 -:1094D000FC099C580CC1B1F7D6B008089C68CAF0CA -:1094E0001A0000003264001302F1EC5604018200FD +:1093E000000100E069353FEA193FF0089A0A9BFE48 +:1093F000B0F04AFC18A000E0697CEDEA193FF1FEEC +:10940000B0ED0D00980299FEB0ED0914901691FC94 +:109410001C3F80069BFEB0D9C7FEB0ED89149416A0 +:1094200095FC1A4000E06BA92AEA1B3F430C980EFA +:1094300099FEB0ECF408980A99FEB0ECF0FEB0ED9D +:10944000C2FEB0EDDA00980299FEB0EBD3FEB0EDAB +:10945000BA18970E9CD8328001383080013A4C807F +:10946000013A648001369C8001374880013B0880C6 +:109470000162A0800135C080015D4880015C3680BA +:10948000015E1280015A0C80015DDEEBCD4080E070 +:109490006CEF38EA1C8001FEB08260E0672C5CEA69 +:1094A000170000E0A02B648F0CE0A02B5B8F1C6EDC +:1094B0000CE06B8038EA1B8001F94B0228E06B80DE +:1094C0006CEA1B8001F94B022CE06B80A4EA1B8044 +:1094D00001F94B0230E06BC818EA1B8001F94B021E +:1094E00034E06B00DF5A001302F1EC5604018200F5 :1094F000008001018300010000E244010D02F1EC53 -:1095000056030000000100C14068BC781C5D1C18B7 -:10951000935C53C061049CFE32FF015C5CCF6158D8 -:1095200003CE80F7D6B008089C68CA741A5D1AF595 -:10953000D6B008F7D7B008089C68C972495D195CB5 -:1095400053C140099C580CC111F7D6B008089C685B -:10955000CA742A5D1AC04068BC782C5D1CF7D6B06E -:1095600008089C68CA743A5D1AF9D5B008C9FCE3CA -:10957000CF90FCEBCD40FC189516971496E06C4309 -:10958000E0EA1C00005895C0613025300B782A2F86 -:109590001AB48B5C65F805032430033022E93C00E3 -:1095A0000E580CC031E3CF80FC099C581CC1A1F7B8 -:1095B000D6B008089C68CA742A5D1AC0D068BC7806 -:1095C0002C5D1C1893E60C1518C061049CFE32FF3C -:1095D000015C5CCF51F7D6B008089C68CA743A5D4C -:1095E0001AF5D6B008F7D7B008089C68C972595D5B -:1095F000195C53C150099C581CC125F7D6B0080806 -:109600009C68CAF01A0000003F15001302F1EC56E6 +:1095000056030000000100C858EA1B8001F94B0215 +:1095100038E3CF9080D703800087748001D988809A +:1095200001D97CEBCD40FC189516971496E06C435E +:10953000DCEA1C00005895C0613025301B782A2FCA +:109540001AB48B5C65F805032430033022E93C0033 +:109550000E580CC031E3CF80FC099C580CC1B1F708 +:10956000D6B008089C68CAF01A0000C14068BC78F0 +:109570001C5D1C18935C53C061049CFE32FF015CAF +:109580005CCF615803CE80F7D6B008089C68CA74D7 +:109590001A5D1AF5D6B008F7D7B008089C68C972EA +:1095A000495D195C53C140099C580CC111F7D6B0F4 +:1095B00008089C68CA742A5D1AC04068BC782C5D93 +:1095C0001CF7D6B008089C68CA743A5D1AF9D5B081 +:1095D00008C9FCE3CF90FCEBCD40FC18951697141E +:1095E00096E06C43DCEA1C00005895C061302530E1 +:1095F0000B782A2F1AB48B5C65F8050324300330EE +:1096000022E93C000E580C00727F001302F1EC5668 :1096100004018300008001018400010000F66C0158 -:109620000D02F1EC56030000000100C0B068BC78E8 -:109630001C5D1CCCB0F7D6B008089C68CA741A5DD3 -:109640001AF9D5B008C45CE3CF90FCD42118971662 -:10965000961495E06C43E0EA1C0000F8070324E947 -:109660003C000E580CC021D82AF5D5B008E80500FA -:109670000C2ECCF92B0000089C68C972595D19F5B5 -:10968000D5B008F7D6B008089C68C972495D19F9C9 -:10969000D7B008C1ECDA2A5C5C586CF9BC02061E33 -:1096A0000C19EC180F0A0E12161C22280030AC5EA2 -:1096B000FC314C5EFC33CC5EFCE06C00B45EFCE044 -:1096C0006C03C05EFCE06C27105EFC5EFD0000EBEE -:1096D000CD40E030673FF6300CC148149B120BF7C9 -:1096E0002800125808C0955C670E38C064F7270040 -:1096F000122ECBF72600002FF95C695829CEF52FE2 -:10970000FC5C6C58BCC094E06B43E0EA1B0000F6C4 -:109710000C032A3009CF3BF9D7B008CBEFE0652B1B -:1097200008EA1500006A0BF75C00680099EA00136C +:109620000D02F1EC56030000000100C031E3CF80D1 +:10963000FC099C581CC1A1F7D6B008089C68CA74E4 +:109640002A5D1AC0D068BC782C5D1C1893E60C15F6 +:1096500018C061049CFE32FF015C5CCF51F7D6B0AC +:1096600008089C68CA743A5D1AF5D6B008F7D7B0F6 +:1096700008089C68C972595D195C53C150099C580F +:109680001CC125F7D6B008089C68CAF01A0000C0B3 +:10969000B068BC781C5D1CCCB0F7D6B008089C68DC +:1096A000CA741A5D1AF9D5B008C45CE3CF90FCD433 +:1096B00021189716961495E06C43DCEA1C0000F81C +:1096C000070324E93C000E580CC021D82AF5D5B078 +:1096D00008E805000C2ECCF92B0000089C68C97224 +:1096E000595D19F5D5B008F7D6B008089C68C9725D +:1096F000495D19F9D7B008C1ECDA2A5C5C586CF9FD +:10970000BC02061E0C19EC180F0A0E12161C222899 +:109710000030AC5EFC314C5EFC33CC5EFCE06C0097 +:10972000B45EFCE06C03C05EFCE06C009B4B00137D :1097300002F1EC5604018400008001018500010063 -:10974000009CD4010D02F1EC56030000000100F76B -:1097500067006AF766006BF71A006CF80A1900C216 -:1097600010F80A1510C090F71A0066580AC171F770 -:109770001A006C580AC131300AC0783009F60A0064 -:10978000182908B0092FFA5C6A586ACF85F75C007F -:109790006C292BB687FEB08095C048301CE0A0290C -:1097A000C3E0A029CDC1216A0CF91B006C581BC075 -:1097B000D529AC988C580CC091FEB0B919E06CF169 -:1097C00040EA1C8001FEB080FFE3CF90E0D7038029 -:1097D0000086708001D8D48001D8EC8000F79C808E -:1097E000008774E1BC0000D3035EFCB18CF9DCC0DF -:1097F00001EC1C00015EFCD401CF9FC020D503D832 -:109800000A0000D401201CC060201CC070201CC0B5 -:1098100080D80AE0A01CEAD80AE0A01D05D80AE01A -:10982000A01D20D80AD7038001BF988001BFD48033 -:1098300001C010201CC080201CC0C0201CC0F02013 -:109840001C5E0F5EFDFE7C1814780CF9DCC0010074 -:10985000541B001302F1EC56040185000080010145 +:10974000009CD4010D02F1EC56030000000100273B +:10975000105EFC5EFD0000EBCD40E030673FF63070 +:109760000CC148149B120BF72800125808C0955CD6 +:10977000670E38C064F72700122ECBF72600002FA3 +:10978000F95C695829CEF52FFC5C6C58BCC094E09C +:109790006B43DCEA1B0000F60C032A3009CF3BF9CF +:1097A000D7B008CBEFE0652B04EA1500006A0BF791 +:1097B0005C0068F767006AF766006BF71A006CF8E0 +:1097C0000A1900C210F80A1510C090F71A0066585E +:1097D0000AC171F71A006C580AC131300AC07830DA +:1097E00009F60A00182908B0092FFA5C6A586ACFEE +:1097F00085F75C006C292BB687FEB08063C04830CB +:109800001CE0A029C7E0A029D1C1216A0CF91B00E6 +:109810006C581BC0D529AC988C580CC091FEB0B8C0 +:10982000DBE06CF1ACEA1C8001FEB080CDE3CF90B0 +:10983000E0D703800086708001D9408001D958802C +:1098400000F78480008774E1BC0000D3035EFC0055 +:1098500008E8001302F1EC560401850000800101C4 :109860008600010000091F010D02F1EC5603000003 -:109870000001005EFC486C780CF9DCC0015EFC481D -:109880004C780CF9DCC0015EFCD703FFFF1864FFC5 -:10989000FF1850EBCD40801897F9D7C008CDDFCF27 -:1098A000D0E3CF80800000300B990B5EFD00007884 -:1098B0000AE01AE0FFF5EB108B990B5EFD000078D3 -:1098C0000AE21AFFFD990A582B5E3D780AA1BA995F -:1098D0000A780A201BAF7BE61BFFFF144B990B5E37 -:1098E000FD0000780CA1ACFE7A1868F40B092C5E20 -:1098F000FD0000300BFE7A1868F40C092B5EFDEBBE -:10990000CD40E0189616951497300BCCEF0A9B0CBF -:109910009CCCFF0E9B0C9CCD4F362C8D1CE06CB468 -:1099200000EA1C04C48D2CE46C00048D3C300C8DCA -:109930004CE3CF80E00000FE7C1814780CA99CF961 -:10994000DCC0015EFC0000D401581CC060584CC053 -:10995000C0589CC120D80A301CC7FFC151301CC65A -:109960004F301CC98FD80A303CC77FC0D1303CC5AE -:10997000CF303C00EFDB001302F1EC56040186000F +:10987000000100B18CF9DCC001EC1C00015EFCD4DD +:1098800001CF9FC020D503D80A0000D401201CC0FE +:1098900060201CC070201CC080D80AE0A01CEAD840 +:1098A0000AE0A01D05D80AE0A01D20D80AD7038031 +:1098B00001BFFC8001C0388001C074201CC0802022 +:1098C0001CC0C0201CC0F0201C5E0F5EFDFE7C187A +:1098D00014780CF9DCC0015EFC486C780CF9DCC033 +:1098E000015EFC484C780CF9DCC0015EFCD703FF3C +:1098F000FF1864FFFF1850EBCD40801897F9D7C0D0 +:1099000008CDDFCFD0E3CF80800000300B990B5E15 +:10991000FD0000780AE01AE0FFF5EB108B990B5E72 +:10992000FD0000780AE21AFFFD990A582B5E3D7887 +:109930000AA1BA990A780A201BAF7BE61BFFFF1425 +:109940004B990B5EFD0000780CA1ACFE7A1868F410 +:109950000B092C5EFD0000300BFE7A1868F40C0930 +:109960002B5EFDEBCD40E0189616951497300BCC8E +:10997000EF0A9B00B803001302F1EC5604018600C5 :10998000008001018700010000B6A4010D02F1EC86 -:1099900056030000000100C90FD80A302CC6FFC0D2 -:1099A00051302CC54F302CC88FD80AEBCD40E01871 -:1099B00097300BCAAFC3BF3246EA16AA004B5B977B -:1099C00006301B4B4A950BC3CFFE7518146A0CED7D -:1099D000BC000ECFB2C2BF32CBEA1BAA004ADA9556 -:1099E0000B6E3B497A950BC2CF6A0CEDBC000ECFD3 -:1099F000D2C1DF328BEA1BAA004A6A950B6E2B4953 -:109A00001A950BC1EF6A0CEDBC000ECFD2C0FF332C -:109A10000BEA1BAA0049FA950B6E4B48BA950BC18D -:109A20000F6A0CEDBC000ECFD2C01F499B97066E8B -:109A30001BA1AB498A950BC04FE3CF80E0D703FF52 -:109A4000FF182CFFFF1828FFFF1830EBCD40C0FE99 -:109A50007618146C0CEDBC000ECFB2CE8E3247EAF5 -:109A600017AA0048BB9707301B48BA950BCE9E6CCF -:109A70000CEDBC000ECFD2CDAE486B9707300B4833 -:109A80005A950BCDEE300CC48FE3CF80C0D703FFC7 -:109A9000FF1818FFFF1824007F6A001302F1EC562C +:10999000560300000001000C9CCCFF0E9B0C9CCDDC +:1099A0004F362C8D1CE06CB400EA1C04C48D2CE4F2 +:1099B0006C00048D3C300C8D4CE3CF80E00000FE49 +:1099C0007C1814780CA99CF9DCC0015EFC0000D462 +:1099D00001581CC060584CC0C0589CC120D80A30E7 +:1099E0001CC7FFC151301CC64F301CC98FD80A306C +:1099F0003CC77FC0D1303CC5CF303CC90FD80A30FE +:109A00002CC6FFC051302CC54F302CC88FD80AEB64 +:109A1000CD40E01897300BCAAFC3BF3246EA16AA52 +:109A2000004B5B9706301B4B4A950BC3CFFE751856 +:109A3000146A0CEDBC000ECFB2C2BF32CBEA1BAA37 +:109A4000004ADA950B6E3B497A950BC2CF6A0CED52 +:109A5000BC000ECFD2C1DF328BEA1BAA004A6A9546 +:109A60000B6E2B491A950BC1EF6A0CEDBC000ECFA3 +:109A7000D2C0FF330BEA1BAA0049FA950B6E4B4884 +:109A8000BA950BC10F6A0CEDBC000ECFD2C01F49B6 +:109A90009B97066E1BA1AB005438001302F1EC56E5 :109AA00004018700008001018800010000214F01AE -:109AB0000D02F1EC56030000000100EBCD408020C8 -:109AC0005D1897C5EFC1115807C091301CC61FE043 -:109AD0006904C4301A301B1A9CC37F0E9B1A9CC7A2 -:109AE0008F0E9CC4EFCFE02FBDE3CF80800000EB52 -:109AF000CD40E018961697E06513ECEA1500006A71 -:109B0000DC2FFC8BDC0C9CC1ECC0800C9CCEBCC060 -:109B1000506ACC2FFC8BCCC038300C8BCC6ADC5814 -:109B2000FCC0D46ACC58BCC065301CAE8C302CE371 -:109B3000CD80E0300CAE8CE3CF90E0303CE3CD80C4 -:109B4000E00000D421E0661424EA160000780B8DB2 -:109B50000B781BEE1B80008D1B782CEE1C80008D7B -:109B60002C30AA0C9B6C4CFEB0E6D26C39129A20B9 -:109B70001A6C4CE06713ECEA1700006E5B143BC1F3 -:109B8000A430AA2FFB5C8BFEB0E6E88F9C30AA6E57 -:109B90005B2FFB5C8B6C4CFEB0E6FE8FAC30AA6E8C -:109BA0005B2FFB5C8B6C4CFEB0E7148FBC6E542FAC -:109BB000F4C3E830AAC161F7D9B01000B175001341 +:109AB0000D02F1EC56030000000100498A950BC02D +:109AC0004FE3CF80E0D703FFFF182CFFFF1828FFDC +:109AD000FF1830EBCD40C0FE7618146C0CEDBC00C6 +:109AE0000ECFB2CE8E3247EA17AA0048BB97073096 +:109AF0001B48BA950BCE9E6C0CEDBC000ECFD2CDA0 +:109B0000AE486B9707300B485A950BCDEE300CC41E +:109B10008FE3CF80C0D703FFFF1818FFFF1824EB97 +:109B2000CD4080205D1897C5EFC1115807C0913016 +:109B30001CC61FE06904C4301A301B1A9CC37F0E78 +:109B40009B1A9CC78F0E9CC4EFCFE02FBDE3CF8044 +:109B5000800000EBCD40E018961697E06513E8EA28 +:109B60001500006ADC2FFC8BDC0C9CC1ECC0800C67 +:109B70009CCEBCC0506ACC2FFC8BCCC038300C8B38 +:109B8000CC6ADC58FCC0D46ACC58BCC065301CAE72 +:109B90008C302CE3CD80E0300CAE8CE3CF90E03005 +:109BA0003CE3CD80E00000D421E0661420EA1600FA +:109BB00000780B8D0B781BEE1B80000069250013CD :109BC00002F1EC56040188000080010189000100C7 -:109BD0000061F4010D02F1EC56030000000100FEEB -:109BE000B0E6CE8F9C30AA6C3B5C8B6C4CFEB0E632 -:109BF000E58FAC30AA6C3B5C8B6C4CFEB0E6FC8F06 -:109C0000BC6C34C278F7D9B010FEB0E6AD8D5C30D4 -:109C1000AA300B6C4CFEB0E6A718958D656C546E9F -:109C20009C680BFEB0D6346A0BFEB0D69F8F9C6E3C -:109C3000AC681BFEB0D62C6A1BFEB0D6978FAC6EFC -:109C4000BC682BFEB0D6246A2BFEB0D68F8FBC6CBE -:109C500034089CFEB0D8C0189B6E9CFEB0D750183C -:109C6000968F66089CFEB0D8B7189B6EACFEB0D736 -:109C70004718958F85089CFEB0D8AE189B6EBCFE29 -:109C8000B0D73E18988F780A990C9A0E9B2F0B0E1E -:109C90009C2F4CFEB0E1346E5C2FFC8F5C300C8F3F -:109CA0006C8F8C8F7C6E3C580CC045FEB0D894C035 -:109CB000485C3CFEB0D890FC1641C80C9BFEB0D866 -:109CC00039C0F26E4C580CC045FEB0D885C0485C17 -:109CD0003CFEB0D8810C9BFEB0D82CC022DA2A0002 -:109CE0004C5B001302F1EC56040189000080010175 +:109BD0000061F4010D02F1EC560300000001008D5C +:109BE0001B782CEE1C80008D2C30AA0C9B6C4CFE3C +:109BF000B0E6AA6C39129A201A6C4CE06713E8EAB6 +:109C00001700006E5B143BC1A430AA2FFB5C8BFED7 +:109C1000B0E6C08F9C30AA6E5B2FFB5C8B6C4CFE59 +:109C2000B0E6D68FAC30AA6E5B2FFB5C8B6C4CFE23 +:109C3000B0E6EC8FBC6E542FF4C3E830AAC161F7D4 +:109C4000D9B010FEB0E6A68F9C30AA6C3B5C8B6C42 +:109C50004CFEB0E6BD8FAC30AA6C3B5C8B6C4CFE0E +:109C6000B0E6D48FBC6C34C278F7D9B010FEB0E641 +:109C7000858D5C30AA300B6C4CFEB0E67F18958D5C +:109C8000656C546E9C680BFEB0D60C6A0BFEB0D6A9 +:109C9000778F9C6EAC681BFEB0D6046A1BFEB0D6F4 +:109CA0006F8FAC6EBC682BFEB0D5FC6A2BFEB0D6B5 +:109CB000678FBC6C34089CFEB0D898189B6E9CFED5 +:109CC000B0D72818968F66089CFEB0D88F189B6E68 +:109CD000ACFEB0D71F18958F85089CFEB0D88600C3 +:109CE000358B001302F1EC5604018900008001015C :109CF0008A00010000F43F010D02F1EC5603000060 -:109D0000000100D82AD703800156508001569C805C -:109D10000156D8800157148001568480013688800E -:109D200001381C80014C1C80013AF4EBCD40FC183A -:109D3000953004E06313ECEA1300006607300B0E65 -:109D40009CE0A0261DC131661C300BE0A02618C087 -:109D5000E1662C300BE0A02613C0916A0C870C6AD8 -:109D60001C871C6A2C872CE3CF80FC6A0C0E9BFEA0 -:109D7000B0D5A018976A1C661BFEB0D59B18926AD6 -:109D80002C662BFEB0D5961896BFD70E9CFC173EBE -:109D9000800E9BFEB0D7E0C0E2BFD2049C0E9BFEBB -:109DA000B0D7DAC082BFD60C9C0E9BFEB0D7D4C011 -:109DB0002230146A0C870C6A1C871C6A2C872C08BA -:109DC0009C5C5CE3CD80FC8001D678800135AC8062 -:109DD000013A50D421E0691E60EA190000129C2A61 -:109DE0000C300A300B189E30A8BD2A2018CFE19DF8 -:109DF0000A129CFE3CFF4CB91B992A129CFE3CFFA8 -:109E000000B91B00F01A001302F1EC5604018A009D +:109D0000000100189B6EBCFEB0D71618988F780A19 +:109D1000990C9A0E9B2F0B0E9C2F4CFEB0E10C6EF3 +:109D20005C2FFC8F5C300C8F6C8F8C8F7C6E3C5862 +:109D30000CC045FEB0D86CC0485C3CFEB0D868FC96 +:109D40001641C80C9BFEB0D811C0F26E4C580CC026 +:109D500045FEB0D85DC0485C3CFEB0D8590C9BFEB7 +:109D6000B0D804C022DA2AD82AD7038001566480EA +:109D70000156B0800156EC8001572880015698802A +:109D800001369C8001383080014C3080013B08EB6B +:109D9000CD40FC18953004E06313E8EA1300006638 +:109DA00007300B0E9CE0A02613C131661C300BE07F +:109DB000A0260EC0E1662C300BE0A02609C0916AF7 +:109DC0000C870C6A1C871C6A2C872CE3CF80FC6AEA +:109DD0000C0E9BFEB0D57818976A1C661BFEB0D59A +:109DE0007318926A2C662BFEB0D56E1896BFD70EEC +:109DF0009CFC173E800E9BFEB0D7B8C0E2BFD204D9 +:109E00009C0E9B003762001302F1EC5604018A009D :109E1000008001018B000100004B84010D02F1EC78 -:109E200056030000000100F8EB0008F8EB00109961 -:109E30006A129CFE3CFEE4B91BF8EB0008F8EB004C -:109E400010996A3008F3480138E06E03E8129BFE6F -:109E50003BFEC4E06C03E83006169A580CC0402064 -:109E60001C14C6CFE1129CFE3CFADC300A1897584D -:109E70000EC040201E0ECACFE1F348090CF348097A -:109E800010F3480914F3480918F348091CF348096A -:109E900020F3480924F3480928F348092C300EF32D -:109EA0004E0930F34E0934F34E09383015F34509A5 -:109EB0003CF34E0940F34E09443FFCF34C0948F390 -:109EC0004C094CF34E0950F3480954F3480958F330 -:109ED00048095CF3480960F3480964F3480968F3EA -:109EE00048096C129CFE3CF690300BB91BF8EB0055 -:109EF00008F8EB0010996AF348098C129CFE3CF6B6 -:109F000070B91BF8EB0008F8EB0010F8EB0018B381 -:109F10001BF2EB0008F2EB0010F2EB0018F2EB0082 -:109F200020E06C2710F35C00DAEC001302F1EC5631 +:109E200056030000000100FEB0D7B2C082BFD60CBE +:109E30009C0E9BFEB0D7ACC02230146A0C870C6A13 +:109E40001C871C6A2C872C089C5C5CE3CD80FC8002 +:109E500001D6C8800135C080013A64D421E0691E72 +:109E60005CEA190000129C2A0C300A300B189E3054 +:109E7000A8BD2A2018CFE19D0A129CFE3CFF4CB9D8 +:109E80001B992A129CFE3CFF00B91BF8EB0008F856 +:109E9000EB0010996A129CFE3CFEE4B91BF8EB0043 +:109EA00008F8EB0010996A3008F3480138E06E03B7 +:109EB000E8129BFE3BFEC4E06C03E83006169A589D +:109EC0000CC040201C14C6CFE1129CFE3CFADC30D2 +:109ED0000A1897580EC040201E0ECACFE1F3480959 +:109EE0000CF3480910F3480914F3480918F348091A +:109EF0001CF3480920F3480924F3480928F34809CA +:109F00002C300EF34E0930F34E0934F34E0938303D +:109F100015F345093CF34E0940F34E09443FFCF369 +:109F20004C0948F34C094C000F67001302F1EC5642 :109F300004018B00008001018C000100005FAC0176 -:109F40000D02F1EC560300000001000014F35C0068 -:109F500016B26EB27E930E129CFE3CFF40B91B9966 -:109F60002AFC1C4335F34C00C4FC1C4290F34C000B -:109F7000C03FFCF35C00C8F34E09B0F35E00F0F3A1 -:109F80005E00F2F35E00F4F35E00F6129CFE3CF617 -:109F90004CB91BF8EB0008F8EB0010F8EB0018F8D0 -:109FA000EB0020F8EB0028F8EB003099EAF34809C1 -:109FB000F0F34809F8F35E00F8F34E09F4F35E009D -:109FC000FAF35E00FCF3480A00F34809FCF34E0A7A -:109FD00004129BFE3BF5B4129C1694305AB907A9A3 -:109FE00026201ACFD1129CFE3CF5B4F34C0A08F39C -:109FF000480A0CF3480A10E06728D4EA1700008FDB -:10A00000188F288F388F48F34E0A20F34E0A1CF31E -:10A010004E0A2CF34E0A28F34E0A24F3450A38F36D -:10A02000450A34F3450A30F3480A44F3480A40F33A -:10A03000480A3C129C2D8C300A300BB91BF8EB00FF -:10A0400008F8EB0010F8EB0018F8EB008AAF0013EB +:109F40000D02F1EC56030000000100F34E0950F33E +:109F5000480954F3480958F348095CF3480960F389 +:109F6000480964F3480968F348096C129CFE3CF602 +:109F700090300BB91BF8EB0008F8EB0010996AF36E +:109F800048098C129CFE3CF670B91BF8EB0008F8EF +:109F9000EB0010F8EB0018B31BF2EB0008F2EB003B +:109FA00010F2EB0018F2EB0020E06C2710F35C00DD +:109FB00014F35C0016B26EB27E930E129CFE3CFF50 +:109FC00040B91B992AFC1C4335F34C00C4FC1C42CD +:109FD00090F34C00C03FFCF35C00C8F34E09B0F3B3 +:109FE0005E00F0F35E00F2F35E00F4F35E00F61242 +:109FF0009CFE3CF64CB91BF8EB0008F8EB0010F89F +:10A00000EB0018F8EB0020F8EB0028F8EB00309993 +:10A01000EAF34809F0F34809F8F35E00F8F34E0953 +:10A02000F4F35E00FAF35E00FCF3480A00F348091B +:10A03000FCF34E0A04129BFE3BF5B4129C169430BE +:10A040005AB907A926201ACFD1129C007F440013C9 :10A0500002F1EC5604018C00008001018D0001002A -:10A06000003514010D02F1EC560300000001000060 -:10A07000208F5EF3480A14F3480A18129CFE3CFF36 -:10A0800034B91B992A129CFE3CFF28B91B992A124D -:10A090009C2B0CB91BF8EB0008F3480A488F7ED8BC -:10A0A0002A0000EBCD4080203DE0671E60EA1700EB -:10A0B000000E9CFE3CFF401A9BB908B71978289700 -:10A0C00028CBFE1A9CFE37FF40B90AAF1B782A8FB7 -:10A0D0002A2FDDE3CF8080D401308A300B300CFE94 -:10A0E000B0577E582CC031302CD802300CE06B3089 -:10A0F000B8EA1B0000B68CB61CDA0A300CE06B30F4 -:10A10000B8EA1B0000B68C5EFF0000EBCD40C0201B -:10A110001D3017300CBA9CBA8CE06630B8EA1600D5 -:10A1200000ED2C0000F80B1518C0F1301CAC8C3081 -:10A130000CAC2CE06C30B0EA1C0000780CFEB0F7E0 -:10A1400087E0A01259C458581CC2A18C1C2FFCAC2B -:10A150001CFACBFFFFE06C30B0EA1C0000780CFE6C -:10A16000B0ECD0C150308A300B301CFEB0573800F4 -:10A1700045C5001302F1EC5604018D000080010179 +:10A06000003514010D02F1EC56030000000100FE62 +:10A070003CF5B4F34C0A08F3480A0CF3480A10E024 +:10A080006728D0EA1700008F188F288F388F48F381 +:10A090004E0A20F34E0A1CF34E0A2CF34E0A28F304 +:10A0A0004E0A24F3450A38F3450A34F3450A30F3DF +:10A0B000480A44F3480A40F3480A3C129C2D8C306D +:10A0C0000A300BB91BF8EB0008F8EB0010F8EB00B6 +:10A0D00018F8EB00208F5EF3480A14F3480A1812B0 +:10A0E0009CFE3CFF34B91B992A129CFE3CFF28B908 +:10A0F0001B992A129C2B0CB91BF8EB0008F3480A99 +:10A10000488F7ED82A0000EBCD4080203DE0671EBE +:10A110005CEA1700000E9CFE3CFF401A9BB908B792 +:10A120001978289728CBFE1A9CFE37FF40B90AAF52 +:10A130001B782A8F2A2FDDE3CF8080D401308A302C +:10A140000B300CFEB0F2C8582CC031302CD8023085 +:10A150000CE06B30B4EA1B0000B68CB61CDA0A3097 +:10A160000CE06B30B4EA1B0000B68C5EFF00000010 +:10A170003013001302F1EC5604018D000080010140 :10A180008E00010000A0DF010D02F1EC560300007B -:10A19000000100583CC0213037308A30AB300CFE13 -:10A1A000B05730582C302CC280AC8CE0A0148CC23C -:10A1B000288C1CE04C0096C1E5305CAC8CC8FCC11E -:10A1C000A8583CC181584CC1608C2C2FFCAC2C8C05 -:10A1D0002CE04C00FBCF241A9BE06C30B0EA1C0052 -:10A1E00000780CFEB0F786C060304CAC8C301CC6DA -:10A1F0004CC75C0E9C5C6C2FFDE3CD80C0D7038008 -:10A20000017CDC8001B284800167908001B73080DE -:10A21000017D5CEBCD4080E06730B0EA170000E0E4 -:10A22000A025488F1CE0A0253F8F0C6E1CE06B8D95 -:10A2300068EA1B8001F94B0108E06B8D8CEA1B80FA -:10A2400001F94B010CE06B8D9CEA1B8001F94B017D -:10A2500010E06B8EE4EA1B8001F94B0114E06B8F78 -:10A26000BCEA1B8001F94B0118E3CF9080D7038033 -:10A2700001D91C8001D910D401300BE06A30B0EA5A -:10A280001A0000741AF53A0101580AC021D80A5878 -:10A290001CC03100974D001302F1EC5604018E00F2 +:10A19000000100EBCD40C0201D3017300CBA9CBA36 +:10A1A0008CE06630B4EA160000ED2C0000F80B15C8 +:10A1B00018C0F1301CAC8C300CAC2CE06C30ACEA2C +:10A1C0001C0000780CFEB0F787E0A01259C4585864 +:10A1D0001CC2A18C1C2FFCAC1CFACBFFFFE06C3026 +:10A1E000ACEA1C0000780CFEB0ECA8C150308A30FC +:10A1F0000B301CFEB0F282583CC0213037308A3020 +:10A20000AB300CFEB0F27A582C302CC280AC8CE013 +:10A21000A0148CC2288C1CE04C0096C1E5305CACCC +:10A220008CC8FCC1A8583CC181584CC1608C2C2FF3 +:10A23000FCAC2C8C2CE04C00FBCF241A9BE06C3047 +:10A24000ACEA1C0000780CFEB0F786C060304CAC65 +:10A250008C301CC64CC75C0E9C5C6C2FFDE3CD8023 +:10A26000C0D70380017D408001B2E8800167A480EF +:10A2700001B79480017DC0EBCD4080E06730ACEA4F +:10A28000170000E0A0254C8F1CE0A025438F0C6E2A +:10A290001CE06B000836001302F1EC5604018E003E :10A2A000008001018F000100001F64010D02F1EC2C -:10A2B00056030000000100C0AC189B169C5C6CD8D3 -:10A2C000020000D401300CC0ACDA0AE06B30BEEA08 -:10A2D0001B0000F72C00005EFC0000E06B30BEEAC3 -:10A2E0001B0000B68C5EFDD401308A300B300CFEB2 -:10A2F000B0569A582CC031302CD802DA0A0000D45B -:10A3000001E06C30B8EA1C0000300BB82BB81B30F1 -:10A310008A301CFEB05688DA0A0000EBCD40C0300F -:10A3200017E06630B8EA160000ED2C0000582CC18A -:10A33000A1308A30AB301CFEB05676583CC021307C -:10A3400037CD3F582CC041302CE3CD80C0583CC0A5 -:10A35000213037303CAC8CE06CF1F8EA1C8001FE17 -:10A36000B07BE60E9C5C6CE3CD80C080003C6C80D2 -:10A37000008774D4013019178AF40A1068F80A0BA0 -:10A3800009178AF40A1068180AB499308A1788F0F5 -:10A390000810681808B0AA178AF40A1068140CB8D4 -:10A3A000C9178C2FFCB68CC8EFD80AD401C0FC307A -:10A3B0000CC098300BE06A00C9AB001302F1EC56F8 +:10A2B000560300000001008DCCEA1B8001F94B0120 +:10A2C00008E06B8DF0EA1B8001F94B010CE06B8E0E +:10A2D00000EA1B8001F94B0110E06B8F48EA1B80FC +:10A2E00001F94B0114E06B9020EA1B8001F94B014E +:10A2F00018E3CF9080D7038001D9888001D97CD41E +:10A3000001300BE06A30ACEA1A0000741AF53A0129 +:10A3100001580AC021D80A581CC031C0AC189B167D +:10A320009C5C6CD8020000D401300CC0ACDA0AE0AE +:10A330006B30BAEA1B0000F72C00005EFC0000E066 +:10A340006B30BAEA1B0000B68C5EFDD401308A3057 +:10A350000B300CFEB0F1E4582CC031302CD802DAAE +:10A360000A0000D401E06C30B4EA1C0000300BB8E5 +:10A370002BB81B308A301CFEB0F1D2DA0A0000EB99 +:10A38000CD40C03017E06630B4EA160000ED2C0076 +:10A3900000582CC1A1308A30AB301CFEB0F1C0583F +:10A3A0003CC0213037CD3F582CC041302CE3CD800C +:10A3B000C0583CC021303700D40E001302F1EC56D7 :10A3C00004018F000080010190000100000F0C01CA -:10A3D0000D02F1EC56030000000100314EEA1A00B4 -:10A3E00000F40C0B0B2FFC5C6C582CCF65D80A309A -:10A3F0000BE06C314CEA1C0000B80B300AC128E0BD -:10A400006830D4EA180000F40C10061808F20C109A -:10A41000061808B0CB2FF95C695819CF252FFA5CC4 -:10A420008A594A5E4D3009CF8B0000E06B30D4EA88 -:10A430001B0000F80C1006F60C040C5EFC0000E09B -:10A440006B30D4EA1B0000F80C1006180B961C5E4B -:10A45000FC0000EBCD4080201D3FF7189B5C5B208B -:10A460001BC04020BBC040C0583007C0A83017C038 -:10A4700088500CE06CEFA4EA1C8001FEB07B6A0EF1 -:10A480009C5C6C2FFDE3CD80800000EBCD40E02094 -:10A490001D18973016CDFF18950E9C5C5C201CC0D3 -:10A4A0004020BCC040C058CB8CC0B8CA2FC0985008 -:10A4B00007E06CEF14EA1C8001FEB07B4B300658BD -:10A4C00005C085300CE06B314EEA1B0000F6050B31 -:10A4D0000C0C9C5C6C2FFDE3CD80E000504700131A +:10A3D0000D02F1EC56030000000100303CAC8CE0B3 +:10A3E0006CF264EA1C8001FEB07BB40E9C5C6CE3F2 +:10A3F000CD80C08001736480008774D40130191748 +:10A400008AF40A1068F80A0B09178AF40A10681807 +:10A410000AB499308A1788F00810681808B0AA178B +:10A420008AF40A1068140CB8C9178C2FFCB68CC8B3 +:10A43000EFD80AD401C0FC300CC098300BE06A3170 +:10A440004AEA1A0000F40C0B0B2FFC5C6C582CCF62 +:10A4500065D80A300BE06C3148EA1C0000B80B30BC +:10A460000AC128E06830D0EA180000F40C10061881 +:10A4700008F20C10061808B0CB2FF95C695819CFF8 +:10A48000252FFA5C8A594A5E4D3009CF8B0000E0D7 +:10A490006B30D0EA1B0000F80C1006F60C040C5EC2 +:10A4A000FC0000E06B30D0EA1B0000F80C1006182E +:10A4B0000B961C5EFC0000EBCD4080201D3FF71882 +:10A4C0009B5C5B201BC04020BBC040C0583007C015 +:10A4D000A83017C088500CE06CF010002314001353 :10A4E00002F1EC560401900000800101910001008E -:10A4F000001BB1010D02F1EC56030000000100EB5E -:10A50000CD4080201D3FF7586CC0313007C08850C7 -:10A510000CE06CEEF4EA1C8001FEB07B2D0E9C5C1E -:10A520006C2FFDE3CD808080008774EBCD4080E010 -:10A530006B314CEA1B0000968A149C2FFC595CC0BE -:10A5400035E3CF80803009C158F2081006E06E3044 -:10A55000D4EA1E0000F40C1006180E100EFACCFF00 -:10A56000F818083067112C1CBC2027CFD12FF95CBC -:10A57000695819CEB5968C2FFCB60CE3CF9080E0CD -:10A580006C314CEA1C0000988C5EFCEBCD408030B6 -:10A5900007CF7F594CC02530170E9C5C6CE3CD80F3 -:10A5A000800000EBCD40C0232D302BBA8B301BBA7E -:10A5B0009B306BBAABE06B314CEA1B0000968A14FF -:10A5C00099F20B1408BABBBAC9305B3008C278E004 -:10A5D0006E30D4EA1E0000F00910061C09920E5CD1 -:10A5E0007EEFDEC010A9471A965C8BEC0B0B072F91 -:10A5F000FB1A975C8BEE0B0B0E2FFB92195C79000C -:10A60000C97D001302F1EC560401910000800101A4 +:10A4F000001BB1010D02F1EC56030000000100EA5F +:10A500001C8001FEB07B380E9C5C6C2FFDE3CD807F +:10A51000800000EBCD40E0201D18973016CDFF18CD +:10A52000950E9C5C5C201CC04020BCC040C058CB39 +:10A530008CC0B8CA2FC0985007E06CEF80EA1C802E +:10A5400001FEB07B1930065805C085300CE06B3138 +:10A550004AEA1B0000F6050B0C0C9C5C6C2FFDE31B +:10A56000CD80E0EBCD4080201D3FF7586CC03130EE +:10A5700007C088500CE06CEF60EA1C8001FEB07AE6 +:10A58000FB0E9C5C6C2FFDE3CD808080008774EB1C +:10A59000CD4080E06B3148EA1B0000968A149C2F66 +:10A5A000FC595CC035E3CF80803009C158F20810F7 +:10A5B00006E06E30D0EA1E0000F40C1006180E10F3 +:10A5C0000EFACCFFF818083067112C1CBC2027CFDE +:10A5D000D12FF95C695819CEB5968C2FFCB60CE3D7 +:10A5E000CF9080E06C3148EA1C0000988C5EFCEB58 +:10A5F000CD40803007CF7F594CC02530170E9C00CE +:10A60000E67A001302F1EC5604019100008001018A :10A6100092000100008E7A010D02F1EC5603000059 -:10A62000000100FDD9C010A94E5C8BEE0B0B0E2F64 -:10A63000FB1A9E5C8BFC0B0B092FFB2FF85C68143C -:10A6400038CD955C8B1A99169A189EC050133820F5 -:10A650001A1CC8CFD1169C2CEDE3CD80C00000E0C1 -:10A660006C00F4EA1C0000300BB82BB88BB89B30A0 -:10A670001BB8AB5EFF0000D401E06C0568EA1C006B -:10A680000078295C59189A2EAA198B306CFEB07A82 -:10A69000D7D802D401E06C0568EA1C000078295C78 -:10A6A00059189A2E8A198B306CFEB07AC9D802EBF1 -:10A6B000CD40C0E0680584EA180000119E3007C054 -:10A6C000282FF7F6071800C1825C57F80707091210 -:10A6D0005E5C5E3089C0580C9E5C5EFE39FF015C9A -:10A6E000595819CEF5FC061501EDBE0007CF5211E1 -:10A6F0008E0C5E5C5ECF3B143E5F0CE3CD80C0D41D -:10A7000001CBBFD8020000D421202D18973055E08E -:10A71000660568EA160000300830691A9A0D8B3019 -:10A720006CFEB000E2E2001302F1EC56040192006C +:10A620000001005C6CE3CD80800000EBCD40C023D6 +:10A630002D302BBA8B301BBA9B306BBAABE06B3131 +:10A6400048EA1B0000968A1499F20B1408BABBBAA8 +:10A65000C9305B3008C278E06E30D0EA1E0000F0EE +:10A660000910061C09920E5C7EEFDEC010A9471A85 +:10A67000965C8BEC0B0B072FFB1A975C8BEE0B0B8E +:10A680000E2FFB92195C79FDD9C010A94E5C8BEEA0 +:10A690000B0B0E2FFB1A9E5C8BFC0B0B092FFB2F59 +:10A6A000F85C681438CD955C8B1A99169A189EC080 +:10A6B000501338201A1CC8CFD1169C2CEDE3CD8046 +:10A6C000C00000E06C00E4EA1C0000300BB82BB8BE +:10A6D0008BB89B301BB8AB5EFF0000D401E06C056B +:10A6E00058EA1C000078295C59189A2EAA198B3058 +:10A6F0006CFEB07AA5D802D401E06C0558EA1C00C3 +:10A700000078295C59189A2E8A198B306CFEB07A21 +:10A7100097D802EBCD40C0E0680574EA180000113C +:10A720009E300700C069001302F1EC56040192004C :10A7300000800101930001000031C1010D02F1EC24 -:10A74000560300000001007AE718945814C080E016 -:10A750006CEF24EA1C80012F8CFEB07A315814CEA5 -:10A76000A10A9CFE3500015C7CCE501BAA302B1A3E -:10A770009CCB1FC0701BDA302BFACCFFFDCABFC0C8 -:10A7800091E06CEF24EA1C8001FEB07A19300CC312 -:10A79000F88C2C2FFCAC2C1B9B1B8CF7EC108BE04B -:10A7A0006C1117B93BAF4BE02B11945C8B6C3C16D2 -:10A7B0000C8D3C1BCB1BBCF7EC108BE06C09C4B9B7 -:10A7C0003BAF4B5C8B6C4C160C8D4CE06C43E0EA61 -:10A7D0001C0000786C2F0C198C580CC1808C2C6CD0 -:10A7E0003BF60C0C0A6C4BF60C0C08300C8D3C8DB7 -:10A7F0004CAC2CF9DAB010A94CAE8CAE9AF9D8B0AA -:10A8000010A94CAEACAEB8301CC028300C2FEDD81F -:10A81000220000EBCD40C0201DE0670568EA17006C -:10A82000006E295C590E9A2E6A0F8B306CFEB07A3E -:10A8300019300830391A9A0F8B306CFEB07A6C18C8 -:10A84000965816C090E06C002EC5001302F1EC562D +:10A7400056030000000100C0282FF7F6071800C1CB +:10A75000825C57F8070709125E5C5E3089C0580CAE +:10A760009E5C5EFE39FF015C595819CEF5FC06155A +:10A7700001EDBE0007CF52118E0C5E5C5ECF3B1424 +:10A780003E5F0CE3CD80C0D401CBBFD8020000D423 +:10A7900021202D18973055E0660558EA1600003044 +:10A7A0000830691A9A0D8B306CFEB07AB51894583F +:10A7B00014C080E06CEF90EA1C80012F8CFEB07911 +:10A7C000FF5814CEA10A9CFE3500015C7CCE501BC4 +:10A7D000AA302B1A9CCB1FC0701BDA302BFACCFF8F +:10A7E000FDCABFC091E06CEF90EA1C8001FEB07919 +:10A7F000E7300CC3F88C2C2FFCAC2C1B9B1B8CF76C +:10A80000EC108BE06C1117B93BAF4BE02B11945C53 +:10A810008B6C3C160C8D3C1BCB1BBCF7EC108BE0FF +:10A820006C09C4B93BAF4B5C8B6C4C160C8D4CE087 +:10A830006C43DCEA1C0000786C2F0C198C580CC19E +:10A84000808C2C6C3BF60C007DB6001302F1EC56AC :10A850000401930000800101940001000025E9013A -:10A860000D02F1EC56030000000100F1D8EA1C8053 -:10A8700001FEB079B70C9CC1081BAA302B1A9CC3EF -:10A88000CFC031300CC0981B9B0FAC186B0F9CF8DD -:10A890000B1800CF81301C2FFDE3CD80C0D7038083 -:10A8A000008774D401E06C0568EA1C0000300B9945 -:10A8B0003B994BB82BC13FD80200005EFF0000EB74 -:10A8C000CD40C0201D1897300CAE8CE0660568EABC -:10A8D0001600006C295C590C9A2E6A0D8B306CFEA8 -:10A8E000B079D2300830391A9A0D8B306CFEB07ABC -:10A8F00025581CC0A11BAA302B1A9CCFEEC03130AA -:10A900000CC038301CAE8C2FFDE3CD80C0D7038047 -:10A91000008818800088CCD431203D300CFB6C00BE -:10A920000840DCFEB0E43E14961697FC153FE0406C -:10A93000CCFEB0E437BFDB30080A99FEB0E452C168 -:10A94000B20C9A0E9BBFDB30080A99FEB0E44AC1F4 -:10A950003240ECFEB0E426BFDB30080A99FEB0E4DA -:10A9600041C0A2300CE06B4B7CEA1B002984001331 +:10A860000D02F1EC560300000001000C0A6C4BF6DF +:10A870000C0C08300C8D3C8D4CAC2CF9DAB010A9C6 +:10A880004CAE8CAE9AF9D8B010A94CAEACAEB83084 +:10A890001CC028300C2FEDD8220000EBCD40C0208A +:10A8A0001DE0670558EA1700006E295C590E9A2EC4 +:10A8B0006A0F8B306CFEB079E7300830391A9A0F86 +:10A8C0008B306CFEB07A3A18965816C090E06CF255 +:10A8D00044EA1C8001FEB079850C9CC1081BAA309B +:10A8E0002B1A9CC3CFC031300CC0981B9B0FAC18E7 +:10A8F0006B0F9CF80B1800CF81301C2FFDE3CD802F +:10A90000C0D70380008774D401E06C0558EA1C00AE +:10A9100000300B993B994BB82BC13FD80200005E29 +:10A92000FF0000EBCD40C0201D1897300CAE8CE02E +:10A93000660558EA1600006C295C590C9A2E6A0DBF +:10A940008B306CFEB079A0300830391A9A0D8B30FC +:10A950006CFEB079F3581CC0A11BAA302B1A9CCFF7 +:10A96000EEC031300CC038301CAE8C00A56D001329 :10A9700002F1EC56040194000080010195000100F1 -:10A98000004F51010D02F1EC5603000000010000E0 -:10A9900000970C971C972CCE38FC13404EE064C1F6 -:10A9A000E6EA141A63E065A5DCEA15404C40CCFEEB -:10A9B000B0E40A08980A99FEB0E37D30080699FED3 -:10A9C000B0E3793008E0694000EA19408FFEB0E357 -:10A9D000AF14901691E06C4B7CEA1C0000780CFEE2 -:10A9E000B0E3F200980299FEB0E250FEB0D2241813 -:10A9F00091E06C4B7CEA1C000099010C9A0E9B08BC -:10AA0000980A99FEB0E35730080699FEB0E3533038 -:10AA100008E0694000EA19408FFEB0E389149616F9 -:10AA200097E06C4B7CEA1C0000781CFEB0E3CC0C79 -:10AA3000980E99FEB0E22AFEB0D1FE1896E06C4B5B -:10AA40007CEA1C0000991640ECFEB0E3BD08980AB1 -:10AA500099FEB0E33030080699FEB0E32C3008E0F0 -:10AA6000694000EA19408FFEB0E36214941695E045 -:10AA70006C4B7CEA1C0000782CFEB0E3A508980A19 -:10AA800099FEB0E203FEB0D1D71897E06C4B7C0082 -:10AA9000F8AF001302F1EC560401950000800101AB +:10A98000004F51010D02F1EC560300000001002FB1 +:10A99000FDE3CD80C0D70380008818800088CCD428 +:10A9A00031203D300CFB6C000840DCFEB0E4161496 +:10A9B000961697FC153FE040CCFEB0E40FBFDB30AD +:10A9C000080A99FEB0E42AC1B20C9A0E9BBFDB3094 +:10A9D000080A99FEB0E422C13240ECFEB0E3FEBFAB +:10A9E000DB30080A99FEB0E419C0A2300CE06B4BD2 +:10A9F00078EA1B0000970C971C972CCE38FC13406C +:10AA00004EE064C1E6EA141A63E065A5DCEA15408D +:10AA10004C40CCFEB0E3E208980A99FEB0E3553012 +:10AA2000080699FEB0E3513008E0694000EA194099 +:10AA30008FFEB0E38714901691E06C4B78EA1C000F +:10AA400000780CFEB0E3CA00980299FEB0E228FE3E +:10AA5000B0D1FC1891E06C4B78EA1C000099010C15 +:10AA60009A0E9B08980A99FEB0E32F30080699FECB +:10AA7000B0E32B3008E0694000EA19408FFEB0E3F4 +:10AA80006114961697E06C4B78EA1C0000781C0065 +:10AA90007070001302F1EC56040195000080010172 :10AAA0009600010000DA9A010D02F1EC5603000055 -:10AAB000000100EA1C00009927029CFEB0E39614F6 -:10AAC000941695BFD50C9CFEB0E39014901691009F -:10AAD000920293BFD30E9CFEB0E38814961697BFE4 -:10AAE000DBBB1B089A0A9B04980699FEB0E1E0BB09 -:10AAF00008FEB0E1DDFEB0D1B1301BEA1B42AAFE78 -:10AB0000B0D1F6C313BFD73018FC1940440C9A0ECD -:10AB10009BFEB0E389C283BFD13018FC19403400DA -:10AB20009A029BFEB0E380C1F3FEB07763FEB07B78 -:10AB30002D5F1BE06C4B7CEA1C0000780C5C5BC05A -:10AB4000A0FC1BC170FEB0D1DFC0E2301CFB6C006A -:10AB500008C0A8301BEA1B4170FEB0D1C9C0433009 -:10AB60002CFB6C0008FB3C0008580CC090300CE03B -:10AB70006B4B7CEA1B0000970C971C972CFB3C004E -:10AB8000082FDDD832D70380015D7480015C2280FC -:10AB9000015C9C80015D34800159F8800139A480FA -:10ABA000015D708000853C80008CD480013A50802B -:10ABB000013A3800CF1D001302F1EC560401960053 +:10AAB000000100FEB0E3A40C980E99FEB0E202FE85 +:10AAC000B0D1D61896E06C4B78EA1C00009916407D +:10AAD000ECFEB0E39508980A99FEB0E3083008064A +:10AAE00099FEB0E3043008E0694000EA19408FFEA7 +:10AAF000B0E33A14941695E06C4B78EA1C000078A9 +:10AB00002CFEB0E37D08980A99FEB0E1DBFEB0D1DF +:10AB1000AF1897E06C4B78EA1C00009927029CFE66 +:10AB2000B0E36E14941695BFD50C9CFEB0E3681488 +:10AB300090169100920293BFD30E9CFEB0E3601476 +:10AB4000961697BFDBBB1B089A0A9B04980699FED2 +:10AB5000B0E1B8BB08FEB0E1B5FEB0D189301BEA68 +:10AB60001B42AAFEB0D1CEC313BFD73018FC194088 +:10AB7000440C9A0E9BFEB0E361C283BFD13018FC37 +:10AB8000194034009A029BFEB0E358C1F3FEB0773F +:10AB900031FEB07AFB5F1BE06C4B78EA1C0000785A +:10ABA0000C5C5BC0A0FC1BC170FEB0D1B7C0E23032 +:10ABB0001CFB6C0048DD001302F1EC56040196000A :10ABC0000080010197000100006521010D02F1ECF8 -:10ABD00056030000000100D401201D338CBA8C30D4 -:10ABE000191A9A320B307CFEB07884C071E06C295F -:10ABF00014EA1C0000780CC1E8370CBA8C30191A22 -:10AC00009A322B307CFEB07875CF20300CBA8C3065 -:10AC1000191A9A324B307CFEB0786CCE90E06C0002 -:10AC200080BA8C30191A9A320B307CFEB07862CD23 -:10AC3000F0301C2FFDD802D401201DE06C0080BA3A -:10AC40008C30191A9A320B307CFEB07853C071E008 -:10AC50006C2918EA1C0000780CC1D8338CBA8C30EF -:10AC6000191A9A320B307CFEB07844CF20370CBAD8 -:10AC70008C30191A9A322B307CFEB0783BCE903053 -:10AC80000CBA8C30191A9A324B307CFEB07832CE26 -:10AC900000301C2FFDD802D401201DE06C0080BACA -:10ACA0008C30191A9A320B307CFEB078235F1C2F3F -:10ACB000FDD802D401201DE06C0080BA8C30191A36 -:10ACC0009A320B307CFEB078155F1C2FFDD802EB5A -:10ACD000CD40FC203D189700FE9F001302F1EC567A +:10ABD000560300000001000008C0A8301BEA1B411A +:10ABE00070FEB0D1A1C043302CFB6C0008FB3C00D0 +:10ABF00008580CC090300CE06B4B78EA1B000097B3 +:10AC00000C971C972CFB3C00082FDDD832D7038013 +:10AC1000015D8880015C3680015CB080015D488008 +:10AC2000015A0C800139B880015D848000853C8028 +:10AC3000008CD480013A6480013A4CD401201D3349 +:10AC40008CBA8C30191A9A320B307CFEB07852C014 +:10AC500071E06C2910EA1C0000780CC1E8370CBACE +:10AC60008C30191A9A322B307CFEB07843CF2030CA +:10AC70000CBA8C30191A9A324B307CFEB0783ACE2E +:10AC800090E06C0080BA8C30191A9A320B307CFE3E +:10AC9000B07830CDF0301C2FFDD802D401201DE05B +:10ACA0006C0080BA8C30191A9A320B307CFEB07866 +:10ACB00021C071E06C2914EA1C0000780CC1D83363 +:10ACC0008CBA8C30191A9A320B307CFEB07812CFC5 +:10ACD00020370CBA8C301900108A001302F1EC56A0 :10ACE00004019700008001019800010000F2CA01F0 -:10ACF0000D02F1EC560300000001003005300CBAE3 -:10AD00008C3004301230133006C448EE0400053095 -:10AD10000830190A9A2FFA323B307CFEB078565828 -:10AD20001CC070E06CEE60EA1C8001FEB077A230BF -:10AD30000830190A9A321B307CFEB07847189558B3 -:10AD400015C080E06CEE60EA1C80012F8CFEB077AD -:10AD5000915815CDC12FE45C54EC0C1501EE0C009C -:10AD60000B178AA96A179B140BFACAFFFC180AB4BE -:10AD70000BE06A2908EA1A0000140C982CF80B1949 -:10AD800000C02030025C8B581BC02530032FF65CBE -:10AD9000565836C0F40C9C2D0CBA8C30191A9A32C5 -:10ADA0000B307CFEB077B8CB210A9C2FDDE3CD8041 -:10ADB000FC3006AEE6AEF65C525812C0405C53580A -:10ADC00013C1E1E0672908EA170000EF2C000058E2 -:10ADD0006CCEC48E9C2FFCAE1C8E9C58ACCE65E015 -:10ADE0006CEE60EA1C80012F0CFEB07743C67FC377 -:10ADF0006FEF2C00002FFCAE8CAE16004015001338 +:10ACF0000D02F1EC560300000001001A9A322B30CD +:10AD00007CFEB07809CE90300CBA8C30191A9A3289 +:10AD10004B307CFEB07800CE00301C2FFDD802D422 +:10AD200001201DE06C0080BA8C30191A9A320B3069 +:10AD30007CFEB077F15F1C2FFDD802D401201DE00E +:10AD40006C0080BA8C30191A9A320B307CFEB077C6 +:10AD5000E35F1C2FFDD802EBCD40FC203D1897305F +:10AD600005300CBA8C3004301230133006C448EE73 +:10AD7000040005300830190A9A2FFA323B307CFE65 +:10AD8000B07824581CC070E06CEECCEA1C8001FE48 +:10AD9000B07770300830190A9A321B307CFEB078D8 +:10ADA0001518955815C080E06CEECCEA1C80012F78 +:10ADB0008CFEB0775F5815CDC12FE45C54EC0C15B8 +:10ADC00001EE0C000B178AA96A179B140BFACAFF35 +:10ADD000FC180AB40BE06A2904EA1A0000140C9863 +:10ADE0002CF80B1900C02030025C8B581BC025309A +:10ADF000032FF65C565836C0F40C9C00596B0013B8 :10AE000002F1EC5604019800008001019900010054 -:10AE100000B271010D02F1EC56030000000100CDFB -:10AE20007BE0672908EA170000FACAFFFC0E9C2F96 -:10AE3000CC1898306B153910C9201BCFD1AE16AE87 -:10AE400086CC6B800088CC8000881880008774D402 -:10AE500021201D3007E066EE48EA1680011A9C0D9D -:10AE60008BB88B0D9BB89BFEB075FA18940C9C2F79 -:10AE7000CCFEB07711320CBA8C300CBA9CE0650075 -:10AE8000B830291A9AF7D5C008303CFEB07756C0C2 -:10AE900031300CC2A830AB089CFEB078E32FF730FD -:10AEA000181A99321AF7D5C008303CFEB07772CF25 -:10AEB000105C77E04701F5C0752F060C9CFEB0765C -:10AEC000EB300CC1281B8CEDBC0007CE53320CBA02 -:10AED0008C302CBA9C30291A9AF7D5C008303CFE29 -:10AEE000B0772CCD70301C2FFDD8228000853C809F -:10AEF000008B40EBCD40E0201D1897E066EB50EA58 -:10AF00001680011A9C0D8BB88B0D9BB89B0C9C2D49 -:10AF1000CCFEB076C1E06500B830181A9930FA005E -:10AF2000DCF8001302F1EC560401990000800101E5 +:10AE100000B271010D02F1EC560300000001002D9B +:10AE20000CBA8C30191A9A320B307CFEB07786CB74 +:10AE3000210A9C2FDDE3CD80FC3006AEE6AEF65C49 +:10AE4000525812C0405C535813C1E1E0672904EA2C +:10AE5000170000EF2C0000586CCEC48E9C2FFCAE67 +:10AE60001C8E9C58ACCE65E06CEECCEA1C80012FA9 +:10AE70000CFEB07711C67FC36FEF2C00002FFCAE25 +:10AE80008CAE16CD7BE0672904EA170000FACAFFF2 +:10AE9000FC0E9C2FCC1898306B153910C9201BCF95 +:10AEA000D1AE16AE86CC6B800088CC80008818802E +:10AEB000008774D421201D3007E066EEB4EA1680C6 +:10AEC000011A9C0D8BB88B0D9BB89BFEB075C818F2 +:10AED000940C9C2FCCFEB076DF320CBA8C300CBABE +:10AEE0009CE06500B830291A9AF7D5C008303CFEBE +:10AEF000B07724C031300CC2A830AB089CFEB078CB +:10AF0000B12FF730181A99321AF7D5C008303CFE25 +:10AF1000B07740CF105C77E04701F5C0752F060091 +:10AF2000AAEA001302F1EC56040199000080010125 :10AF30009A0001000027BA010D02F1EC560300004F -:10AF4000000100F7D5C008303CFEB07735C0313085 -:10AF50000CC2F81B8CE04C00BDCFB1C2ECCF9030DE -:10AF60003CC048FE3CFF015C5C580CC085EC0C000A -:10AF70003B761B1637C032580CCF51320CBA8CE0DE -:10AF80006C0094BA9C30291A9AF7D5C008303CFE60 -:10AF9000B076E6CDE0310CBA8C37FCBA9C30291A79 -:10AFA0009AF7D5C008303CFEB076DACD20301C2FA1 -:10AFB000FDE3CD80E00000EBCD4080201DE067F098 -:10AFC00038EA1780011A9C0F8BB88B0F9BB89B3205 -:10AFD0000CBA8C300CBA9C30291A9AE06B00B8304D -:10AFE0003CFEB076BDC0712FC70E9CFEB0766630B9 -:10AFF0000CC028301C2FFDE3CD8080800088188095 -:10B00000008774D401E06C008FC87F5F1CD802D425 -:10B0100001C31F5F1CD802D401CF5F5F1CD802D4CC -:10B0200001CCBF5F1CD8025EFF00005EFF0000EB9A -:10B03000CD40C0203D18971A9C300A300BB91B999F -:10B040002AE06600C89B001302F1EC5604019A0046 +:10AF40000001000C9CFEB076B9300CC1281B8CEDC2 +:10AF5000BC0007CE53320CBA8C302CBA9C30291A64 +:10AF60009AF7D5C008303CFEB076FACD70301C2F71 +:10AF7000FDD8228000853C80008B40EBCD40E02056 +:10AF80001D1897E066EBBCEA1680011A9C0D8BB881 +:10AF90008B0D9BB89B0C9C2DCCFEB0768FE0650092 +:10AFA000B830181A9930FAF7D5C008303CFEB0779F +:10AFB00003C031300CC2F81B8CE04C00BDCFB1C2D5 +:10AFC000ECCF90303CC048FE3CFF015C5C580CC0AC +:10AFD00085EC0C003B761B1637C032580CCF513233 +:10AFE0000CBA8CE06C0094BA9C30291A9AF7D5C040 +:10AFF00008303CFEB076B4CDE0310CBA8C37FCBAE8 +:10B000009C30291A9AF7D5C008303CFEB076A8CDFE +:10B0100020301C2FFDE3CD80E00000EBCD408020F0 +:10B020001DE067F0A4EA1780011A9C0F8BB88B0F04 +:10B030009BB89B320CBA8C300CBA9C30291A9AE01F +:10B040006B00B800E90D001302F1EC5604019A0000 :10B05000008001019B000100009801010D02F1EC4C -:10B060005603000000010000B830181A9930FAF7B2 -:10B07000D6C008303CFEB076B1C031300CC1A81B40 -:10B080008CE04C00BDCFB130581A99E06A00A8F7A7 -:10B09000D6C008303CFEB076A1CF101BACAE8C1BE6 -:10B0A0009CAE9C1B8CAEAC1BCCAEBC1BBCAECC30E7 -:10B0B0001C2FDDE3CD80C080008870EBCD40FE18F2 -:10B0C000973002E0662934EA1600000D8C581CC047 -:10B0D00051049C5C5CE3CD80FE0D9C580CC5916CCA -:10B0E0001C580CC101E0652928EA1500006E0C8B84 -:10B0F0000C6E1C8B1C6E2C8B2C2FC66C0C2FFC8D9D -:10B100000CCE8BE0652928EA1500006E0C6A0BFE58 -:10B11000B0CD02FEB0E0C4BFDBFEB0CEF918936E36 -:10B120001C6A1BFEB0CCF8FEB0E0BABFDBFEB0CEAE -:10B13000EF18946E2C6A2BFEB0CCEEFEB0E0B0BFE0 -:10B14000DBFEB0CEE51897E0616666EA113FA60621 -:10B150009C029BFEB0CF32C192089C029BFEB0CFF6 -:10B160002DC1420E9C029B00A3B4001302F1EC56C9 +:10B0600056030000000100303CFEB0768BC0712F0B +:10B07000C70E9CFEB07634300CC028301C2FFDE388 +:10B08000CD80808000881880008774D401E06C0037 +:10B090008FC87F5F1CD802D401C31F5F1CD802D4A5 +:10B0A00001CF5F5F1CD802D401CCBF5F1CD8025E09 +:10B0B000FF00005EFF0000EBCD40C0203D18971A56 +:10B0C0009C300A300BB91B992AE06600B830181A78 +:10B0D0009930FAF7D6C008303CFEB0767FC03130E8 +:10B0E0000CC1A81B8CE04C00BDCFB130581A99E0C0 +:10B0F0006A00A8F7D6C008303CFEB0766FCF101BB0 +:10B10000ACAE8C1B9CAE9C1B8CAEAC1BCCAEBC1BEB +:10B11000BCAECC301C2FDDE3CD80C080008870EB4E +:10B12000CD40FE18973002E0662930EA1600000D87 +:10B130008C581CC051049C5C5CE3CD80FE0D9C5877 +:10B140000CC5916C1C580CC101E0652924EA15005E +:10B15000006E0C8B0C6E1C8B1C6E2C8B2C2FC66CFB +:10B160000C2FFC8D0CCE8B0056D1001302F1EC5647 :10B1700004019B00008001019C000100008C29015A -:10B180000D02F1EC56030000000100FEB0CF28C014 -:10B19000F26C1C2FFC8D1C6C1C595CCAD5300C8BBE -:10B1A0000C8B1C8B2C8D1C301CAC9CCA5B300C8D0A -:10B1B0001CCA2B6C2C580CC3F16C1C580CCA60E0D8 -:10B1C000652928EA1500006E0C6A0BFEB0CCB6FEAD -:10B1D000B0E078BFDBFEB0CEAD18936E1C6A1BFEEC -:10B1E000B0CCACFEB0E06EBFDBFEB0CEA318946E68 -:10B1F0002C6A2BFEB0CCA2FEB0E064BFDBFEB0CE6A -:10B20000991897E0656667EA153FA6069C0A9BFEBB -:10B21000B0CEDAC0C2089C0A9BFEB0CED5C0720E7A -:10B220009C0A9BFEB0CED0FE93FF67301C8D2C3065 -:10B230000C8D1CC61B581CFE91FF5F6C1CE04C0063 -:10B2400096C0642FC66C0C2FFC8D0CC55BFE90FF66 -:10B250005E6C3CE04C0032C3E4E0652928EA15004E -:10B26000006E0C6A0BFEB0CC69FEB0E02BBFDBFEBB -:10B27000B0CE6018936E1C6A1BFEB0CC5FFEB0E0CF -:10B2800021BFDBFEB0CE5618946E2C00E68B001367 +:10B180000D02F1EC56030000000100E0652924EAFD +:10B190001500006E0C6A0BFEB0CCDAFEB0E09CBF6E +:10B1A000DBFEB0CED118936E1C6A1BFEB0CCD0FE75 +:10B1B000B0E092BFDBFEB0CEC718946E2C6A2BFEB7 +:10B1C000B0CCC6FEB0E088BFDBFEB0CEBD1897E0C5 +:10B1D000616666EA113FA6069C029BFEB0CF0AC1DB +:10B1E00092089C029BFEB0CF05C1420E9C029BFEC2 +:10B1F000B0CF00C0F26C1C2FFC8D1C6C1C595CCABB +:10B20000D5300C8B0C8B1C8B2C8D1C301CAC9CCA31 +:10B210005B300C8D1CCA2B6C2C580CC3F16C1C5869 +:10B220000CCA60E0652924EA1500006E0C6A0BFE6A +:10B23000B0CC8EFEB0E050BFDBFEB0CE8518936E72 +:10B240001C6A1BFEB0CC84FEB0E046BFDBFEB0CE75 +:10B250007B18946E2C6A2BFEB0CC7AFEB0E03CBF1B +:10B26000DBFEB0CE711897E0656667EA153FA6066B +:10B270009C0A9BFEB0CEB2C0C2089C0A9BFEB0CE18 +:10B28000ADC0720E9C0A9BFEB0CEA800A2BE0013F9 :10B2900002F1EC5604019C00008001019D000100B8 -:10B2A00000E691010D02F1EC560300000001006A76 -:10B2B0002BFEB0CC55FEB0E017BFDBFEB0CE4C1875 -:10B2C000976C3C2FFC8D3CE0656667EA153FA6064F -:10B2D0009C0A9BFEB0CE8AC0C2089C0A9BFEB0CEE0 -:10B2E00085C0720E9C0A9BFEB0CE80FE93FF173085 -:10B2F0001CAC8C3012C12B300C8D1C8D2C8D3CACB9 -:10B300009CC0CB80013A50800135AC80015D348017 -:10B310000139A480013A38E1BC0000D3035EFCB1DE -:10B320008CF9DCC001EC1C00015EFCD401CF9FC095 -:10B3300020D503D80A0000D401201CC060201CC006 -:10B3400070201CC080D80AE0A01100D80AE0A0112B -:10B350001BD80AE0A01136D80AD7038001BF988015 -:10B3600001BFD48001C010201CC080201CC0C020A0 -:10B370001CC0F0201C5E0F5EFDFE7C1814780CF9DA -:10B38000DCC0015EFC486C780CF9DCC0015EFC4856 -:10B390004C780CF9DCC0015EFCD703FFFF1864FF9A -:10B3A000FF1850EBCD40801897F9D7C008CDDF00CB -:10B3B000E0AD001302F1EC5604019D000080010194 +:10B2A00000E691010D02F1EC56030000000100FEE2 +:10B2B00093FF67301C8D2C300C8D1CC61B581CFE58 +:10B2C00091FF5F6C1CE04C0096C0642FC66C0C2F85 +:10B2D000FC8D0CC55BFE90FF5E6C3CE04C0032C305 +:10B2E000E4E0652924EA1500006E0C6A0BFEB0CC80 +:10B2F00041FEB0E003BFDBFEB0CE3818936E1C6A8F +:10B300001BFEB0CC37FEB0DFF9BFDBFEB0CE2E188F +:10B31000946E2C6A2BFEB0CC2DFEB0DFEFBFDBFEAF +:10B32000B0CE2418976C3C2FFC8D3CE0656667EA34 +:10B33000153FA6069C0A9BFEB0CE62C0C2089C0ABE +:10B340009BFEB0CE5DC0720E9C0A9BFEB0CE58FE36 +:10B3500093FF17301CAC8C3012C12B300C8D1C8D20 +:10B360002C8D3CAC9CC0CB80013A64800135C08000 +:10B37000015D48800139B880013A4CE1BC0000D33E +:10B38000035EFCB18CF9DCC001EC1C00015EFCD456 +:10B3900001CF9FC020D503D80A0000D401201CC0D3 +:10B3A00060201CC070201CC080D80AE0A0110000E2 +:10B3B00016B4001302F1EC5604019D000080010157 :10B3C0009E00010000735A010D02F1EC56030000CB -:10B3D000000100CFD0E3CF80800000E06C0590EA50 -:10B3E0001C0000F92B00005C5BC060202BC07020AB -:10B3F0001BC0A05EFDE07CC1385EFCE06C5A00EA38 -:10B400001C02625EFCE06C0E00EA1C07275EFCD4A6 -:10B4100001CE5FA38CD802EBCD40C018961697C81A -:10B42000EFFE7A1420F406002A7409320BEA1BAAF4 -:10B4300000F606002BFE781458910B301BF6070916 -:10B440004B16499509C85FE3CF80C0EBCD40E03093 -:10B450000730063005580CC040201CA7BC18975870 -:10B460000BC040201BA7BB1696580AC040201AA745 -:10B47000BA1495C64F304BEA1BAA00496A950BFED9 -:10B480007B1404970730CBEA1BAA00950B486B97F7 -:10B4900006310BEA1BAA00950B484B9705C59FE3A5 -:10B4A000CF80E0FFFF140CFFFF1410EBCD4080189D -:10B4B00097C45FFC1BAA00487A950BFE7B1400978B -:10B4C00007C47FE06C0590EA1C0000B887E3CF80DA -:10B4D00080D70300F84B001302F1EC5604019E00E4 +:10B3D000000100D80AE0A0111BD80AE0A01136D85D +:10B3E0000AD7038001BFFC8001C0388001C07420EF +:10B3F0001CC080201CC0C0201CC0F0201C5E0F5E42 +:10B40000FDFE7C1814780CF9DCC0015EFC486C78F9 +:10B410000CF9DCC0015EFC484C780CF9DCC0015E24 +:10B42000FCD703FFFF1864FFFF1850EBCD408018D6 +:10B4300097F9D7C008CDDFCFD0E3CF80800000E000 +:10B440006C0580EA1C0000F92B00005C5BC06020EA +:10B450002BC070201BC0A05EFDE07CC1385EFCE00C +:10B460006C5A00EA1C02625EFCE06C0E00EA1C07EB +:10B47000275EFCD401CE5FA38CD802EBCD40C01870 +:10B48000961697C8EFFE7A1420F406002A74093243 +:10B490000BEA1BAA00F606002BFE781458910B301D +:10B4A0001BF607094B16499509C85FE3CF80C0EB2F +:10B4B000CD40E0300730063005580CC040201CA7B6 +:10B4C000BC1897580BC040201BA7BB1696580AC043 +:10B4D00040201A008E6F001302F1EC5604019E000A :10B4E000008001019F00010000CCE1010D02F1ECA0 -:10B4F00056030000000100FFFF1458D401302A3029 -:10B500002B302CCB6FE06C0590EA1C0000F92B006F -:10B51000005C5B202BC040201BC0B0C138300CFE4B -:10B52000B0F46CC88FFEB0E611302CCD2FC0A8301F -:10B530003CC27F303CC5BFC7EFFEB0E607303CCC15 -:10B540008FC0FFC18FD80A8001880080016B50EB4B -:10B55000CD40C0201DD553300CBA8CE0A01CB2C722 -:10B56000D0E06730C8EA170000FEB072E58F1CE03B -:10B57000A01BBAFEB0A17A6E1CE06630D0EA1600BD -:10B5800000780B580BC0400D8BA1ABAC8B301BFE71 -:10B59000B073D66E1CFEB073436E1C783B580BC064 -:10B5A000400D8BA1BBAC8B785B580BC0400D8BA3BF -:10B5B000ABAC8B786B580BC0400D8BA3BBAC8B0D29 -:10B5C0008B58FBC051355B2B7CB88BC0382B7CB8BB -:10B5D0008B300A301B301CFEB076ECFEB07668E093 -:10B5E000A01A70332B6E1CFEB0759C6E1CFEB074DE -:10B5F000D1FEB07603FEB0001EFB001302F1EC5644 +:10B4F00056030000000100A7BA1495C64F304BEA6E +:10B500001BAA00496A950BFE7B1404970730CBEA0F +:10B510001BAA00950B486B9706310BEA1BAA0095F6 +:10B520000B484B9705C59FE3CF80E0FFFF140CFF4E +:10B53000FF1410EBCD40801897C45FFC1BAA004895 +:10B540007A950BFE7B14009707C47FE06C0580EAB8 +:10B550001C0000B887E3CF8080D703FFFF1458D4C6 +:10B5600001302A302B302CCB6FE06C0580EA1C00B8 +:10B5700000F92B00005C5B202BC040201BC0B0C139 +:10B5800038300CFEB0F46CC88FFEB0E5E9302CCD3D +:10B590002FC0A8303CC27F303CC5BFC7EFFEB0E52E +:10B5A000DF303CCC8FC0FFC18FD80A800188648017 +:10B5B000016B64EBCD40C0201DD553300CBA8CE03C +:10B5C000A01CB6C7D0E06730C4EA170000FEB07216 +:10B5D000B38F1CE0A01BBEFEB0A13C6E1CE0663029 +:10B5E000CCEA160000780B580BC0400D8BA1ABAC19 +:10B5F0008B301BFEB073A4001335001302F1EC5620 :10B6000004019F0000800101A000010000538A0195 -:10B610000D02F1EC560300000001007619FE7C15C6 -:10B6200080780C6E1CF93B0049E04B0055C211308C -:10B630001BFEB07683301CBA8C300B6E1CFEB076CD -:10B640005DE0A01C75324BF96B008031CBF96B00CB -:10B6500081300BF95B006C1B8B580BC120301BF940 -:10B660006B007CF96B007D303BF96B007EC098303D -:10B670000CFEB07631307CE0A017D8CFDB300C2F39 -:10B68000FDE3CD80C0D7038001D8C88000853C8011 -:10B6900001D6EC8000E27080008744800086248020 -:10B6A000008DB880008CB48001D4C880008B2880C5 -:10B6B00000899880008C0080008C3080008D1C8078 -:10B6C000008CDC8001D910EBCD40C0E06730C8EAC7 -:10B6D000170000C50F8F0CC078301AFEB079A83063 -:10B6E0007CE0A017A36E1B6E0CF91A006C581ACFE1 -:10B6F00054300AFEB0799C6E1CFEB0783BFEB0411F -:10B7000091C0D13006C0282FF65C565836C0746EF2 -:10B710001CFEB0782FFEB04185CF70008FB80013AB +:10B610000D02F1EC560300000001006E1CFEB07339 +:10B62000116E1C783B580BC0400D8BA1BBAC8B78C6 +:10B630005B580BC0400D8BA3ABAC8B786B580BC029 +:10B64000400D8BA3BBAC8B0D8B58FBC051355B2BD6 +:10B650007CB88BC0382B7CB88B300A301B301CFE7A +:10B66000B076BAFEB07636E0A01A7A332B6E1CFEA6 +:10B67000B0756A6E1CFEB0749FFEB075D1FEB075D9 +:10B68000E7FE7C1580780C6E1CF93B0049E04B000E +:10B6900055C211301BFEB07651301CBA8C300B6E87 +:10B6A0001CFEB0762BE0A01C79324BF96B00803188 +:10B6B000CBF96B0081300BF95B006C1B8B580BC115 +:10B6C00020301BF96B007CF96B007D303BF96B007F +:10B6D0007EC098300CFEB075FF307CE0A017D8CF4C +:10B6E000DB300C2FFDE3CD80C0D7038001D934803F +:10B6F00000853C8001D7588000E258800087448054 +:10B7000000862480008DB880008CB48001D54080F4 +:10B71000008B288000899880008C000080D1001365 :10B7200002F1EC560401A00000800101A10001001B -:10B7300000EF3B010D02F1EC560300000001003068 -:10B740000B6E1CFEB076006E0C294C988C580CCDFC -:10B75000D1300CFEB075D2307CE0A01779CD6B8073 -:10B76000009410800091548000240480008D048097 -:10B77000008CB88001D00CEBCD40E0216DE0672B50 -:10B780000CEA170000E0A01BE58F0C300CFB5C00FE -:10B7900054FB6C002D30ABFB6B002EFB6C0030FBC0 -:10B7A0006C0031FB3600690C9B20BBC060E0880058 -:10B7B0004A203BC133C468318CFB6C002D300CFB3C -:10B7C0006C002CFACCFFD41A9B32C9190A16AA2095 -:10B7D00049CFD1FEB04E2CC358E0652B10EA1500BE -:10B7E000000BBC580CC2410BCC580CC211E06C00D1 -:10B7F000AABACC33CCBADC301CBAEC300CFB6C00EF -:10B800002C303CFB6C002DFACCFFD01A9B32491730 -:10B810000A18AA2049CFD1FACCFFD41A9B32C919F1 -:10B820000A16AA2049CFD1FEB04E02C028301C0C07 -:10B830009B58CBC031301AAABA58DBC031301B003C -:10B840008D88001302F1EC560401A1000080010173 +:10B7300000EF3B010D02F1EC560300000001008018 +:10B74000008C3080008D1C80008CDC8001D97CEB6B +:10B75000CD40C0E06730C4EA170000C50F8F0CC0B1 +:10B7600078301AFEB07976307CE0A017A36E1B6E9D +:10B770000CF91A006C581ACF54300AFEB0796A6E70 +:10B780001CFEB07809FEB0415FC0D13006C0282F42 +:10B79000F65C565836C0746E1CFEB077FDFEB041A4 +:10B7A00053CF70300B6E1CFEB075CE6E0C294C98CA +:10B7B0008C580CCDD1300CFEB075A0307CE0A017B9 +:10B7C00079CD6B8000941080009154800024048017 +:10B7D000008D0480008CB88001D070EBCD40E0215A +:10B7E0006DE0672B08EA170000E0A01BE98F0C3022 +:10B7F0000CFB5C0054FB6C002D30ABFB6B002EFB94 +:10B800006C0030FB6C0031FB3600690C9B20BBC028 +:10B8100060E088004A203BC133C468318CFB6C0077 +:10B820002D300CFB6C002CFACCFFD41A9B32C919BA +:10B830000A16AA2049CFD1FEB0E976C358E06500C8 +:10B84000AAAC001302F1EC560401A1000080010132 :10B85000A2000100007AF0010D02F1EC5603000095 -:10B86000000100AACB5C6C581CC0C16E0AF519001F -:10B870005E301BFE36FF0BF606094B16492A2AB42A -:10B88000092EADE3CD80E0EBCD40E0216DE0672BEC -:10B890000CEA170000E0A01B6F8F0C3006FB56006F -:10B8A00054FB66002D30ACFB6C002EFB660030FBB9 -:10B8B000660031300CFB3500690A9B20BBC060205C -:10B8C0001BC1A0201BC200C268318CFB6C002D3054 -:10B8D0001CFB6C002CFACCFFD41A9B32C9190A1637 -:10B8E000AA2049CFD1FEB04DB5E06B2B10EA1B006A -:10B8F00000B686C108E06B2B10EA1B0000B6B6301C -:10B900001CB696C088E06B2B10EA1B0000B6C63050 -:10B910001CB6A6E06B2B10EA1B000017BA580AC130 -:10B920004117CB580BC111303CFB6C002D301CFB78 -:10B930006C002CFACCFFD41A9B32C9190A16AA2023 -:10B9400049CFD1FEB04D866E0BF71A005E3019FE5E -:10B9500035FF0BF2050949128A2A2BB60A5C6C2EB8 -:10B96000ADE3CD00F2BE001302F1EC560401A200DB +:10B860000001002B0CEA1500000BBC580CC2410B68 +:10B87000CC580CC211E06C00AABACC33CCBADC3084 +:10B880001CBAEC300CFB6C002C303CFB6C002DFA2D +:10B89000CCFFD01A9B3249170A18AA2049CFD1FAF7 +:10B8A000CCFFD41A9B32C9190A16AA2049CFD1FE5F +:10B8B000B0E94CC028301C0C9B58CBC031301AAAC0 +:10B8C000BA58DBC031301BAACB5C6C581CC0C16EAF +:10B8D0000AF519005E301BFE36FF0BF606094B1603 +:10B8E000492A2AB4092EADE3CD80E0EBCD40E0211A +:10B8F0006DE0672B08EA170000E0A01B738F0C3087 +:10B9000006FB560054FB66002D30ACFB6C002EFB92 +:10B91000660030FB660031300CFB3500690A9B2065 +:10B92000BBC060201BC1A0201BC200C268318CFBC1 +:10B930006C002D301CFB6C002CFACCFFD41A9B320F +:10B94000C9190A16AA2049CFD1FEB0E8FFE06B2B37 +:10B950000CEA1B0000B686C108E06B2B0CEA1B004A +:10B9600000B6B600BBB8001302F1EC560401A20009 :10B9700000800101A300010000C54B010D02F1ECA4 -:10B980005603000000010080E0D7038001D9108039 -:10B99000003DECD401201D1A9CE06BF20FEA1B80E5 -:10B9A000013039173A18CA2019CFD130391A9A32D2 -:10B9B0000B307CFEB07276C031300CC068E06C0099 -:10B9C000D0EA1C0000780C2FFDD802D401201D1AEB -:10B9D0009C300BB88BB89BB8AB30391A9A320B300D -:10B9E0007CFEB0725FC031300CC068E06C00D4EAFD -:10B9F0001C0000780C2FFDD8020000D401201D1A75 -:10BA00009CE06BF215EA1B80013039173A18CA2006 -:10BA100019CFD130391A9A320B307CFEB07242C045 -:10BA200031300CC068E06C00D8EA1C0000780C2FA4 -:10BA3000FDD802D401201D1A9CE06BF21BEA1B808A -:10BA4000013039173A18CA2019CFD130391A9A3231 -:10BA50000B307CFEB07226C031300CC068E06C0048 -:10BA6000DCEA1C0000780C2FFDD80280008818EB5F -:10BA7000CD40FE202D18923011301330143007C104 -:10BA8000C80D8C0D9BAC8B009B8B001302F1EC5608 +:10B9800056030000000100301CB696C088E06B2B07 +:10B990000CEA1B0000B6C6301CB6A6E06B2B0CEA06 +:10B9A0001B000017BA580AC14117CB580BC1113000 +:10B9B0003CFB6C002D301CFB6C002CFACCFFD41A25 +:10B9C0009B32C9190A16AA2049CFD1FEB0E8D06E21 +:10B9D0000BF71A005E3019FE35FF0BF2050949120C +:10B9E0008A2A2BB60A5C6C2EADE3CD80E0D70380AB +:10B9F00001D97C800174E4D401201D1A9CE06BF213 +:10BA00007BEA1B80013039173A18CA2019CFD13090 +:10BA1000391A9A320B307CFEB07244C031300CC0FF +:10BA200068E06C00C0EA1C0000780C2FFDD802D43E +:10BA300001201D1A9C300BB88BB89BB8AB30391A5B +:10BA40009A320B307CFEB0722DC031300CC068E0F1 +:10BA50006C00C4EA1C0000780C2FFDD8020000D452 +:10BA600001201D1A9CE06BF281EA1B80013039171E +:10BA70003A18CA2019CFD130391A9A320B307CFECD +:10BA8000B07210C031300C006859001302F1EC564E :10BA90000401A30000800101A400010000D16301A2 -:10BAA0000D02F1EC56030000000100AC9C0D8BA9C7 -:10BAB0006B0D9C160C1A9B0A0BB60CE06B291CEA4A -:10BAC0001B000016058A2BF60C1900C02030035C01 -:10BAD0008C581CC02530042FF75C575847C1A4EE82 -:10BAE000051501E405000630280C990E9A2F8A5C92 -:10BAF0005A320B307CFEB072131891CD51E06CEFCE -:10BB0000D4EA1C8001FEB0718D300C2FEDE3CD80A6 -:10BB1000FE5C535813C0405C545814C211E06729AE -:10BB20001CEA170000EF2C0000586CC035029CCEB8 -:10BB3000EB8E9C2FFCAE1C8E9C58ACCF95E06CEF2E -:10BB4000D4EA1C80012F8CFEB0716CC6AFC51FEF0C -:10BB50002C00002FFCAE8C300CAE1CCE9BE0672975 -:10BB60001CEA1700001A9A0E9C2FCC1898308B15DF -:10BB70003910C9201BCFD1300CAE1CAE8CCD8B80C0 -:10BB800000887080008774D431202D149416951885 -:10BB900093E068CD57EA185E9EE0692614EA193FE3 -:10BBA000D1FEB0DC3DC223E0664CAA00843A00130B +:10BAA0000D02F1EC56030000000100C068E06C00DC +:10BAB000C8EA1C0000780C2FFDD802D401201D1A02 +:10BAC0009CE06BF287EA1B80013039173A18CA20D4 +:10BAD00019CFD130391A9A320B307CFEB071F4C0D4 +:10BAE00031300CC068E06C00CCEA1C0000780C2FF0 +:10BAF000FDD80280008818EBCD40FE202D18923032 +:10BB000011301330143007C1C80D8C0D9BAC8BACB9 +:10BB10009C0D8BA96B0D9C160C1A9B0A0BB60CE0A6 +:10BB20006B2918EA1B000016058A2BF60C1900C0B9 +:10BB30002030035C8C581CC02530042FF75C57580C +:10BB400047C1A4EE051501E405000630280C990E46 +:10BB50009A2F8A5C5A320B307CFEB071E11891CD7D +:10BB600051E06CF040EA1C8001FEB0715B300C2F9C +:10BB7000EDE3CD80FE5C535813C0405C545814C2B2 +:10BB800011E0672918EA170000EF2C0000586CC07C +:10BB900035029CCEEB8E9C2FFCAE1C8E9C58ACCFFD +:10BBA00095E06CF040EA1C80012F8C00EF0A001336 :10BBB00002F1EC560401A40000800101A50001007F -:10BBC00000BBDB010D02F1EC56030000000100EAAE -:10BBD00016E858E067B67AEA173FFB089A0A9B0C0A -:10BBE000980E99FEB0DA72BB2B089A0A9B0C980E3D -:10BBF00099FEB0DB8030083009EA19BFF0FEB0DAF8 -:10BC000065BB09FEB0DBB414941695A1A3300830CF -:10BC100009EA19BE40089A0A9BFEB0DC15C0A330A1 -:10BC2000183009EA193E40089A0A9BFEB0DC0AC7A0 -:10BC3000B3089A0A9B08980A99FEB0DB5C14961622 -:10BC400097E06839DEEA188F02E069C0C7EA193F59 -:10BC500074FEB0DB50E068AB8AEA188312E0690C2E -:10BC600000EA193FC8FEB0DA310C980E99FEB0DB3D -:10BC700042E068D724EA1808E5E069D8B6EA193F37 -:10BC8000F0FEB0DA230C980E99FEB0DB34E0683495 -:10BC90000FEA180E58E0699558EA193FFDFEB0DA30 -:10BCA000150C980E99FEB0DB2630083009EA193FD2 -:10BCB000F0FEB0DA0BBB1BE0685D84EA181357E0B6 -:10BCC00069574BEA193FB00C9A0E9BFEB0DB13008C -:10BCD00066CA001302F1EC560401A50000800101C0 +:10BBC00000BBDB010D02F1EC56030000000100FE9A +:10BBD000B0713AC6AFC51FEF2C00002FFCAE8C3001 +:10BBE0000CAE1CCE9BE0672918EA1700001A9A0ECB +:10BBF0009C2FCC1898308B153910C9201BCFD13011 +:10BC00000CAE1CAE8CCD8B8000887080008774D405 +:10BC100031202D149416951893E068CD57EA185EDC +:10BC20009EE0692614EA193FD1FEB0DC15C223E07C +:10BC3000664CAAEA16E858E067B67AEA173FFB08AE +:10BC40009A0A9B0C980E99FEB0DA4ABB2B089A0A06 +:10BC50009B0C980E99FEB0DB5830083009EA19BFEA +:10BC6000F0FEB0DA3DBB09FEB0DB8C14941695A152 +:10BC7000A330083009EA19BE40089A0A9BFEB0DBDF +:10BC8000EDC0A330183009EA193E40089A0A9BFE1D +:10BC9000B0DBE2C7B3089A0A9B08980A99FEB0DBAA +:10BCA0003414961697E06839DEEA188F02E069C00E +:10BCB000C7EA193F74FEB0DB28E068AB8AEA188354 +:10BCC00012E0690C00EA193FC8FEB0DA090C9800CE +:10BCD0009948001302F1EC560401A500008001010F :10BCE000A6000100002E10010D02F1EC5603000029 -:10BCF000000100E06893B2EA18194CE0695EEDEAD1 -:10BD0000193FE4FEB0D9F40C980E99FEB0DB05E0C3 -:10BD100068DEBEEA18B902E0694002EA193FF8FE9F -:10BD2000B0D9E6BB2B089A0A9B0C980E99FEB0DAA4 -:10BD3000F4BB09FEB0DAF108980A99FEB0D9D8BB75 -:10BD400008FEB0DB2714941695EDB30001C032EE67 -:10BD5000158000F9D3C003C0D0E06BEB10EA1B8064 -:10BD600001F60C023A08980A99FEB0D9C11494164B -:10BD700095A583E80A1720EA0B1720C052EE15801C -:10BD800000089A0A9B2FEDD832D70380015D74809A -:10BD9000015D7080015C2280015C9C800159F8D4B7 -:10BDA00001CC9CE0A01204E0A0173AE0A0194CE0FE -:10BDB000694874EA190000129CFE3CFE7C300A308F -:10BDC0000B189E3088BD2A2018CFE19D0A129C2FA7 -:10BDD0004CB91BB84AB31BB24A129CFE3CFE38B9A0 -:10BDE0001B992A129C2E8C189E32D8BD2A2018CF5F -:10BDF000E19D0A00E767001302F1EC560401A6007A +:10BCF0000001000E99FEB0DB1AE068D724EA1808AC +:10BD0000E5E069D8B6EA193FF0FEB0D9FB0C980E11 +:10BD100099FEB0DB0CE068340FEA180E58E0699524 +:10BD200058EA193FFDFEB0D9ED0C980E99FEB0DA35 +:10BD3000FE30083009EA193FF0FEB0D9E3BB1BE042 +:10BD4000685D84EA181357E069574BEA193FB00C55 +:10BD50009A0E9BFEB0DAEBE06893B2EA18194CE059 +:10BD6000695EEDEA193FE4FEB0D9CC0C980E99FE5D +:10BD7000B0DADDE068DEBEEA18B902E0694002EA46 +:10BD8000193FF8FEB0D9BEBB2B089A0A9B0C980E3F +:10BD900099FEB0DACCBB09FEB0DAC908980A99FE60 +:10BDA000B0D9B0BB08FEB0DAFF14941695EDB3001D +:10BDB00001C032EE158000F9D3C003C0D0E06BEBB8 +:10BDC0007CEA1B8001F60C023A08980A99FEB0D969 +:10BDD0009914941695A583E80A1720EA0B1720C03A +:10BDE00052EE158000089A0A9B2FEDD832D70380B7 +:10BDF000015D8800C16C001302F1EC560401A6003D :10BE000000800101A70001000091AB010D02F1ECDF -:10BE10005603000000010031EC2E89B20CD80A80D4 -:10BE200001D5288001D950D401E0A011D3D80A80CF -:10BE300001CAB8D401E0A01911E0A018C5D80A8041 -:10BE400001D9408001D8ACD401E06C4874EA1C00F0 -:10BE500000E0A00787D80A8001B648E06C4874EA81 -:10BE60001C0000189B2F4B189AB509B72815081607 -:10BE7000A8300BB81B5EFDEBCD40801897FEB0D606 -:10BE8000978E8C2FFCAE0C8E8C8E1B163CC0358E84 -:10BE90001CAE0CE3CF908080015494EBCD40C0E009 -:10BEA0006C4A4CEA1C00007807E0664874EA160009 -:10BEB000000C9BFE3BFE380C9C2F4CCDEF31EA0C66 -:10BEC0009BFE3BFE380C9C2E8CFEB0D74F301B0CDB -:10BED0009CFE3CFE38FEB0D161EDB70001C082305F -:10BEE0000B0C9CFE3CFE38FEB0CEC6C078301B0C5E -:10BEF0009CFE3CFE38FEB0CEBF300BFE36FE7C0C06 -:10BF00009CC1BCE3CF80C08001565080014A808034 -:10BF100001455CE06C487400BAE1001302F1EC5694 +:10BE10005603000000010080015D8480015C3680D3 +:10BE2000015CB080015A0CD401CC9CE0A01204E06B +:10BE3000A01744E0A01950E0694870EA1900001208 +:10BE40009CFE3CFE7C300A300B189E3088BD2A20B8 +:10BE500018CFE19D0A129C2F4CB91BB84AB31BB2F4 +:10BE60004A129CFE3CFE38B91B992A129C2E8C1853 +:10BE70009E32D8BD2A2018CFE19D0A31EC2E89B21E +:10BE80000CD80A8001D5A08001D9BCD401E0A01152 +:10BE9000D3D80A8001CB1CD401E0A01915E0A0186A +:10BEA000C9D80A8001D9AC8001D918D401E06C4806 +:10BEB00070EA1C0000E0A00787D80A8001B6ACE059 +:10BEC0006C4870EA1C0000189B2F4B189AB509B7F4 +:10BED00028150816A8300BB81B5EFDEBCD40801866 +:10BEE00097FEB0D66F8E8C2FFCAE0C8E8C8E1B16F0 +:10BEF0003CC0358E1CAE0CE3CF9080800154A8EB83 +:10BF0000CD40C0E06C4A48EA1C00007807E0664873 +:10BF100070EA1600000C9B00211F001302F1EC5682 :10BF20000401A70000800101A800010000064001F3 -:10BF30000D02F1EC56030000000100EA1C0000FEB7 -:10BF40003CFE7C5EFC0000E06B4874EA1B0000F6DF -:10BF5000FA0184188AF74A01845EFD780A144B9925 -:10BF60000B5EFDE06C4874EA1C00002E8C5EFCE069 -:10BF70006B4A48EA1B0000970C5EFDE06C4A48EAF9 -:10BF80001C0000300B780A950B780A951B780A95EF -:10BF90002BE06B0400780A953B780A954B780A955C -:10BFA0005B301B780C2E8CB88B5EFDEBCD40C0183F -:10BFB000973006E0A00A7C581CC081301CE06B2B37 -:10BFC00010EA1B0000B68C3016FEB08D4B581CC119 -:10BFD000315C67C111E06C2B10EA1C000019BB58E2 -:10BFE0001BC041301BB89B301619CB581BC04130C9 -:10BFF0001BB8AB30160C9C5C6CE3CD80C0D70380C3 -:10C0000001BD70D401300CE06B2B10EA1B0000B6B0 -:10C010008CE0A00A51D80A8001BD78D401300CE030 -:10C020006B2B10EA1B0000B69CFEB08D2FD80AD4F3 -:10C0300001300CE06B2B10EA1B0000004D72001366 +:10BF30000D02F1EC56030000000100FE3BFE380C40 +:10BF40009C2F4CCDEF31EA0C9BFE3BFE380C9C2E17 +:10BF50008CFEB0D727301B0C9CFE3CFE38FEB0D1C7 +:10BF600039EDB70001C082300B0C9CFE3CFE38FE60 +:10BF7000B0CE9EC078301B0C9CFE3CFE38FEB0CE8E +:10BF800097300BFE36FE7C0C9CC1BCE3CF80C0809A +:10BF900001566480014A9480014570E06C4870EA63 +:10BFA0001C0000FE3CFE7C5EFC0000E06B4870EA7A +:10BFB0001B0000F6FA0184188AF74A01845EFD78B6 +:10BFC0000A144B990B5EFDE06C4870EA1C00002ED1 +:10BFD0008C5EFCE06B4A44EA1B0000970C5EFDE0BF +:10BFE0006C4A44EA1C0000300B780A950B780A95DD +:10BFF0001B780A952BE06B0400780A953B780A952C +:10C000004B780A955B301B780C2E8CB88B5EFDEB61 +:10C01000CD40C018973006E0A00A7C581CC0813083 +:10C020001CE06B2B0CEA1B0000B68C3016FEB08DAA +:10C0300019581CC1315C67C111E06C00540A00132F :10C0400002F1EC560401A80000800101A9000100E2 -:10C050000046FB010D02F1EC56030000000100B6A2 -:10C06000ACFEB08D25FEB08D1BD80A8000C34C807D -:10C0700000C33CEBCD40F824ED189616973005E050 -:10C08000642B10EA140000E92C0000581CC0A130F9 -:10C090004CBA8C30BCBAACE0A00A2ABACC3015CC71 -:10C0A0004FE92C0001581CC0F11A9CEA03106818D3 -:10C0B00003304CA68C30CCA6ACFEB08CE5A6CC2FC1 -:10C0C000F55C55CBEF2FE4E92C0000581CC0F11AA9 -:10C0D0009CEA0410681804304CA88C30DCA8ACFE34 -:10C0E000B08CD8891C2FF55C55CB5F0F8C0A0C588F -:10C0F0007CC1D50F8C0A0C20AC5C6CF3DCB008C1A1 -:10C1000008F20810680C08F20C010BF60E10680C0F -:10C110000E3684BD0BB12A2084CFD12FF95C690F74 -:10C120008B1639CEF50F8B162CAE8C3009C1280F2B -:10C130008CF80810680C081A9EF20C1068180E365D -:10C140008CBD0BB12A208CCFD10F8C2FFCAE8C2F45 -:10C15000F95C690A39CED52B2DE3CF80F8D70300DF -:10C160004B77001302F1EC560401A9000080010195 +:10C050000046FB010D02F1EC560300000001002B2D +:10C060000CEA1C000019BB581BC041301BB89B30A8 +:10C070001619CB581BC041301BB8AB30160C9C5C5A +:10C080006CE3CD80C0D7038001BDD4D401300CE077 +:10C090006B2B0CEA1B0000B68CE0A00A51D80A807A +:10C0A00001BDDCD401300CE06B2B0CEA1B0000B6A8 +:10C0B0009CFEB08CFDD80AD401300CE06B2B0CEA4E +:10C0C0001B0000B6ACFEB08CF3FEB08CE9D80A8041 +:10C0D00000C34C8000C33CEBCD40F824ED1896160D +:10C0E000973005E0642B0CEA140000E92C0000589E +:10C0F0001CC0A1304CBA8C30BCBAACE0A00A2ABA41 +:10C10000CC3015CC4FE92C0001581CC0F11A9CEA28 +:10C110000310681803304CA68C30CCA6ACFEB08C53 +:10C12000B3A6CC2FF55C55CBEF2FE4E92C000058DB +:10C130001CC0F11A9CEA0410681804304CA88C301A +:10C14000DCA8ACFEB08CA6891C2FF55C55CB5F0F2C +:10C150008C0A0C587CC1D50F8C0A0C20AC5C6C008E +:10C160000C9A001302F1EC560401A90000800101B1 :10C17000AA00010000D330010D02F1EC56030000CB -:10C180000001008001BD8C8000C3248000C330EB1F -:10C19000CD4080E067EDA4EA1780010E9CFEB06EF2 -:10C1A000AD30FA301B300CFEB04924582CC0812F22 -:10C1B000070E9CFEB06EA2302CE3CD8080E3CF90C2 -:10C1C000800000EBCD4080E067ED88EA1780010E2B -:10C1D0009CFEB06E9330FA301B301CFEB0490A58FA -:10C1E0003CC0812F070E9CFEB06E88303CE3CD80B2 -:10C1F00080E3CF9080D70380003C6CD401201D30B9 -:10C200000CBA8C1A9CFEB06931301CC5ACFB2C00FA -:10C2100000C49C2FFDDA0A80007CE4D401E06CEFBE -:10C22000C4EA1C8001FEB06E69E0A0173BE06B2FF2 -:10C23000D8EA1B0000970CE06BAA0CEA1B8001F9FE -:10C240004B01E8E06BAA40EA1B8001F94B01ECE0EE -:10C250006BAA78EA1B8001F94B01F0E06BAAFCEABB -:10C260001B8001F94B01F4E06BAB48EA1B8001F93C -:10C270004B01F8DA0AD703800087748001D91CD4F7 -:10C2800001E06C00BE72001302F1EC560401AA003A +:10C18000000100F3DCB008C108F20810680C08F2E6 +:10C190000C010BF60E10680C0E3684BD0BB12A2074 +:10C1A00084CFD12FF95C690F8B1639CEF50F8B1622 +:10C1B0002CAE8C3009C1280F8CF80810680C081AB6 +:10C1C0009EF20C1068180E368CBD0BB12A208CCF55 +:10C1D000D10F8C2FFCAE8C2FF95C690A39CED52B90 +:10C1E0002DE3CF80F8D7038001BDF08000C3248009 +:10C1F00000C330EBCD4080E067EE10EA1780010EFF +:10C200009CFEB06E7B30FA301B300CFEB0E46E58F2 +:10C210002CC0812F070E9CFEB06E70302CE3CD80B9 +:10C2200080E3CF90800000EBCD4080E067EDF4EA42 +:10C230001780010E9CFEB06E6130FA301B301CFE80 +:10C24000B0E454583CC0812F070E9CFEB06E5630AF +:10C250003CE3CD8080E3CF9080D70380017364D42A +:10C2600001201D300CBA8C1A9CFEB068FF301CC532 +:10C27000ACFB2C0000C49C2FFDDA0A80007CE4D4C7 +:10C2800001E06C00C255001302F1EC560401AA0053 :10C2900000800101AB000100006C8B010D02F1EC8C -:10C2A000560300000001002FD8EA1C0000780CF9AA -:10C2B0003C01E1580CC021D80AC0DCD8020000D4EF -:10C2C00001300CC10CDA0AE06B2FDDEA1B0000B66E -:10C2D0008C5EFDE06B2FDCEA1B0000F72C00005E9B -:10C2E000FC0000E06B2FDCEA1B0000B68C5EFDD486 -:10C2F00001189A301C1789F2091068F4090B0C1701 -:10C3000089F20910681409B29C30FC1789F20910EF -:10C31000681409B2ACE06C2FDDEA1C0000F92900BA -:10C3200000178CF80C1068180AB4C9178C2FFCB6CB -:10C330008CCC7FD80A0000EBCD40C01697E06B4351 -:10C34000E0EA1B0000F60C0326AC8CE06BE658EA32 -:10C350001B80018DCB58BCF9BC02091E0C19EC18CE -:10C360000F0E223044566AA27C8EC6B400303CEDDB -:10C370006C001130ACED6C000CFE3BFF3C8DCBC56E -:10C3800038303CED6C001130ACED6C000CC4C830A2 -:10C390003CED6C0011305CED6C000C300CED6C0071 -:10C3A0000FC428303CED6C006E25001302F1EC56F2 +:10C2A00056030000000100F030EA1C8001FEB06E71 +:10C2B00037E0A0173FE06B2FD4EA1B0000970CE09B +:10C2C0006BAA70EA1B8001F94B01E8E06BAAA4EAB3 +:10C2D0001B8001F94B01ECE06BAADCEA1B8001F941 +:10C2E0004B01F0E06BAB60EA1B8001F94B01F4E01D +:10C2F0006BABACEA1B8001F94B01F8DA0AD703807B +:10C300000087748001D988D401E06C2FD4EA1C0026 +:10C3100000780CF93C01E1580CC021D80AC0DCD8E7 +:10C32000020000D401300CC10CDA0AE06B2FD9EA0C +:10C330001B0000B68C5EFDE06B2FD8EA1B0000F7F7 +:10C340002C00005EFC0000E06B2FD8EA1B0000B65A +:10C350008C5EFDD401189A301C1789F2091068F41C +:10C36000090B0C1789F20910681409B29C30FC17EC +:10C3700089F20910681409B2ACE06C2FD9EA1C00EC +:10C3800000F9290000178CF80C1068180AB4C917B6 +:10C390008C2FFCB68CCC7FD80A0000EBCD40C016A9 +:10C3A00097E06B43DCEA1B002096001302F1EC5689 :10C3B0000401AB0000800101AC0001000078A30182 -:10C3C0000D02F1EC560300000001000011305CED9D -:10C3D0006C000C2C8B8DCBC398309CED6C00113015 -:10C3E000ACED6C000CFE3BFF588DCBC2F8301CED61 -:10C3F0006C0011305CED6C000C290B8DCBC26830E9 -:10C400004CED6C0011305CED6C000C2ACB8DCBC177 -:10C41000D8301CED6C0011305CED6C000CFE3BFF65 -:10C42000748DCBC138303CED6C0011305CED6C008C -:10C430000C2E4B8DCBC0A8303CED6C001130ACED18 -:10C440006C000CFE3BFF208DCBED3C000CED3B0067 -:10C4500011B73CA17CE0A00AA58D2CED3C000C207E -:10C460001CACDCED3C000C201CACCC300CED6C00AA -:10C470000E301BED6B0010ED6C000DAC9CED5C0004 -:10C48000243FFBED6B00263FFAED5A0028300AC12D -:10C4900048EC09001814082EA8B08C2FF95C6958D4 -:10C4A00069CF85EC0A0009F36C0022F36B00122EB1 -:10C4B000C9B28B2FFA5C6A582AC0343009CF0B8D71 -:10C4C000B7E3CF80C0D7038001C1D4003A3900134D +:10C3C0000D02F1EC560300000001000000F60C0322 +:10C3D00026AC8CE06BE6C4EA1B80018DCB58BCF91F +:10C3E000BC02091E0C19EC180F0E223044566AA22A +:10C3F0007C8EC6B400303CED6C001130ACED6C00AE +:10C400000CFE3BFF3C8DCBC538303CED6C00113051 +:10C41000ACED6C000CC4C8303CED6C0011305CED30 +:10C420006C000C300CED6C000FC428303CED6C003F +:10C4300011305CED6C000C2C8B8DCBC398309CEDD7 +:10C440006C001130ACED6C000CFE3BFF588DCBC284 +:10C45000F8301CED6C0011305CED6C000C290B8D7C +:10C46000CBC268304CED6C0011305CED6C000C2AD6 +:10C47000CB8DCBC1D8301CED6C0011305CED6C0065 +:10C480000CFE3BFF748DCBC138303CED6C0011309D +:10C490005CED6C000C2E4B8DCBC0A8303CED6C00DD +:10C4A0001130ACED6C000CFE3BFF208DCBED3C0061 +:10C4B0000CED3B0011B73CA17CE0A00AA58D2CED52 +:10C4C0003C000C201CACDCED3C000C00F3D1001354 :10C4D00002F1EC560401AC0000800101AD00010046 -:10C4E00000121B010D02F1EC56030000000100EBED -:10C4F000CD40E0218DFACCFFF4FEB0482BFACCFF02 -:10C50000C8E0A014A3E067309CEA170000FB1C0001 -:10C5100046AECCFACCFFF4780A500A781A501A7852 -:10C520002A502A0E9CFEB0CA7F1896E06530ADEA0C -:10C530001500000B8C1836C1005826C071301CC67F -:10C540002C301C2F87AE8CC0885816C061301CC59B -:10C55000AC302C2F87AE8CAA862E8DE3CF90E08056 -:10C56000003D608001D65880014234D401E0A0151E -:10C57000CFE06B309CEA1B0000973C300A2F8BB653 -:10C580008AE06BB3C8EA1B8001F94B01A8E06BB4E9 -:10C59000A4EA1B8001F94B01ACE06BAD00EA1B8003 -:10C5A00001F94B01B0E06BADD4EA1B8001F94B01FE -:10C5B000B4E06BAE20EA1B8001F94B01B8DA0A80C7 -:10C5C00001D91CD401E06C309CEA1C0000783CF9D5 -:10C5D0003C01A1580CC021D80AC0DCD8020000D40C -:10C5E00001300CE06B309CEA1B00002F8BB68C00F6 -:10C5F0009976001302F1EC560401AD0000800101B0 +:10C4E00000121B010D02F1EC5603000000010020B8 +:10C4F0001CACCC300CED6C000E301BED6B0010ED65 +:10C500006C000DAC9CED5C00243FFBED6B00263F06 +:10C51000FAED5A0028300AC148EC09001814082E18 +:10C52000A8B08C2FF95C695869CF85EC0A0009F333 +:10C530006C0022F36B00122EC9B28B2FFA5C6A5882 +:10C540002AC0343009CF0B8DB7E3CF80C0D703802A +:10C5500001C238EBCD40E0218DFACCFFF4FEB0E310 +:10C5600075FACCFFC8E0A01499E0673098EA17008C +:10C5700000FB1C0046AECCFACCFFF4780A500A78D7 +:10C580001A501A782A502A0E9CFEB0CA571896E004 +:10C590006530A9EA1500000B8C1836C1005826C07A +:10C5A00071301CC62C301C2F87AE8CC0885816C02A +:10C5B00061301CC5AC302C2F87AE8CAA862E8DE343 +:10C5C000CF90E0800174588001D6A880014248D401 +:10C5D00001E0A015D3E06B3098EA1B0000973C30D7 +:10C5E0000A2F8BB68AE06BB42CEA1B8001F94B0052 +:10C5F000CF0C001302F1EC560401AD0000800101E4 :10C60000AE0001000087D0010D02F1EC56030000DE -:10C61000000100C0ACDA0AE06B30ACEA1B0000F7A6 -:10C620002C00005EFC0000E06B30ACEA1B0000B6A2 -:10C630008C5EFDD401189A301C1789F2091068F439 -:10C64000090B0C1789F20910681409B29C30DC1729 -:10C6500089F20910681409B2ACE06C309CEA1C0045 -:10C66000002F8CF9290000178CF80C1068180AB4F8 -:10C67000C9178C2FFCB68CCC6FD80AEBCD40C020EC -:10C68000EDFACCFFF4FEB04777FACCFFE8780A5019 -:10C690000A781A501A782A502AFEB0F3131897E035 -:10C6A000663078EA1600000D8C0E3CC1705817C039 -:10C6B000A1301CC6EC301CE06B306CEA1B0000B6ED -:10C6C0008CC0B85827C091301CC63C302CE06B3071 -:10C6D0006CEA1B0000B68CAC872F2DE3CF90C08096 -:10C6E000003D60800194ACEBCD4080E067306CEAA7 -:10C6F000170000E0A0151E8F2CE0A015158F1C3030 -:10C700000CAE8C6E2CE06BD264EA1B8001F94B02FC -:10C7100008E06B003AA0001302F1EC560401AE00F1 +:10C6100000010001A8E06BB508EA1B8001F94B019D +:10C62000ACE06BAD64EA1B8001F94B01B0E06BAE8E +:10C6300038EA1B8001F94B01B4E06BAE84EA1B8041 +:10C6400001F94B01B8DA0A8001D988D401E06C30D5 +:10C6500098EA1C0000783CF93C01A1580CC021D894 +:10C660000AC0DCD8020000D401300CE06B3098EA3C +:10C670001B00002F8BB68CC0ACDA0AE06B30A8EA46 +:10C680001B0000F72C00005EFC0000E06B30A8EA05 +:10C690001B0000B68C5EFDD401189A301C1789F27D +:10C6A000091068F4090B0C1789F20910681409B213 +:10C6B0009C30DC1789F20910681409B2ACE06C30C8 +:10C6C00098EA1C00002F8CF9290000178CF80C1038 +:10C6D00068180AB4C9178C2FFCB68CCC6FD80AEB3B +:10C6E000CD40C020EDFACCFFF4FEB0E2C1FACCFFA1 +:10C6F000E8780A500A781A501A782A502AFEB0F3BD +:10C70000131897E0663074EA1600000D8C0E3CC1D9 +:10C71000705817006DA7001302F1EC560401AE002B :10C7200000800101AF00010000386B010D02F1EC47 -:10C7300056030000000100D284EA1B8001F94B027D -:10C740000CE06BAE68EA1B8001F94B0210E06BAFA6 -:10C750003CEA1B8001F94B0214E06BAF88EA1B80B6 -:10C7600001F94B0218E3CF9080D7038001D91C80D8 -:10C7700001D910D401E06C306CEA1C0000782CF96F -:10C780003C0201580CC021D80AC0DCD8020000D4F9 -:10C7900001300CE06B306CEA1B0000B68CC0BCDAD8 -:10C7A0000A0000E06B3079EA1B0000F72C00005E05 -:10C7B000FC0000E06B3079EA1B0000B68C5EFDD413 -:10C7C00001189A301C1789F2091068F4090B0C172C -:10C7D00089F20910681409B29C310C1789F209100A -:10C7E000681409B2ACE06C306CEA1C0000F9290056 -:10C7F00000178CF80C1068180AB4C9178C2FFCB6F7 -:10C800008CCC7FD80A0000EBCD40EC18963005E0C8 -:10C81000674C80EA1700000F8CF80B1518C451FC08 -:10C82000133FF86C0CFEB0D6A3BFDB30080699FEB0 -:10C83000B0D6BEC1A26C1C000B4E001302F1EC5628 +:10C7300056030000000100C0A1301CC6EC301CE014 +:10C740006B3068EA1B0000B68CC0B85827C0913027 +:10C750001CC63C302CE06B3068EA1B0000B68CAC89 +:10C76000872F2DE3CF90C08001745880019510EB86 +:10C77000CD4080E0673068EA170000E0A015228F06 +:10C780002CE0A015198F1C300CAE8C6E2CE06BD2F7 +:10C79000D4EA1B8001F94B0208E06BD2F4EA1B805B +:10C7A00001F94B020CE06BAECCEA1B8001F94B02A5 +:10C7B00010E06BAFA0EA1B8001F94B0214E06BAFF5 +:10C7C000ECEA1B8001F94B0218E3CF9080D703807D +:10C7D00001D9888001D97CD401E06C3068EA1C0062 +:10C7E00000782CF93C0201580CC021D80AC0DCD8D2 +:10C7F000020000D401300CE06B3068EA1B0000B688 +:10C800008CC0BCDA0A0000E06B3075EA1B0000F750 +:10C810002C00005EFC0000E06B3075EA1B0000B6E7 +:10C820008C5EFDD401189A301C1789F2091068F447 +:10C83000090B0C1789F20900EA09001302F1EC5602 :10C840000401AF0000800101B000010000280301D5 -:10C850000D02F1EC56030000000100FEB0D69ABFB5 -:10C86000DB30080699FEB0D6B5C1126C2CFEB0D6EE -:10C8700091BFDB3018FC194021FEB0D6A9C0736E01 -:10C880001C2FFC8F1C300C8F2CC0686E2C2FFC8F43 -:10C890002C300C8F1C6E1C585CC1056C2C301BFEA0 -:10C8A000B0C4FAC0533015301CAE8CC048302530AF -:10C8B0002CAE8C300C8F1CC5F86E2C585CC5C53066 -:10C8C00035303CAE8C300C8F2CC568583CC291FC86 -:10C8D000133FF86C0CFEB0D65DBFDB30080699FE46 -:10C8E000B0D678C1826C1CFEB0D654BFDB300806CF -:10C8F00099FEB0D66FC0F26C2CFEB0D64BBFDB30C9 -:10C9000018FC194021FEB0D663C0536E1C2FFC8F5B -:10C910001CC038300C8F1C6E1C585CC2D5CBFB5829 -:10C920001CC030582CC281FC133FF86C0CFEB0D6F2 -:10C9300031BFDB30180699FEB0D64AC1426C1CFEEE -:10C94000B0D628BFDB30180699FEB0D641C0B26C15 -:10C950002CFEB0D61FBFDB3008FC1900F5E4001335 +:10C850000D02F1EC5603000000010010681409B24B +:10C860009C310C1789F20910681409B2ACE06C30E5 +:10C8700068EA1C0000F9290000178CF80C106818F1 +:10C880000AB4C9178C2FFCB68CCC7FD80A0000EBF9 +:10C89000CD40EC18963005E0674C7CEA1700000F9D +:10C8A0008CF80B1518C451FC133FF86C0CFEB0D675 +:10C8B0007BBFDB30080699FEB0D696C1A26C1CFE89 +:10C8C000B0D672BFDB30080699FEB0D68DC1126CAF +:10C8D0002CFEB0D669BFDB3018FC194021FEB0D663 +:10C8E00081C0736E1C2FFC8F1C300C8F2CC0686EA7 +:10C8F0002C2FFC8F2C300C8F1C6E1C585CC1056CCF +:10C900002C301BFEB0C4D2C0533015301CAE8CC0CE +:10C91000483025302CAE8C300C8F1CC5F86E2C584E +:10C920005CC5C53035303CAE8C300C8F2CC568589A +:10C930003CC291FC133FF86C0CFEB0D635BFDB3027 +:10C94000080699FEB0D650C1826C1CFEB0D62CBF32 +:10C95000DB30080699FEB0D647C0F2002DD6001392 :10C9600002F1EC560401B00000800101B1000100A9 -:10C97000003CBE010D02F1EC560300000001004036 -:10C9800021FEB0D639C0526E2C2FFC8F2CC038300F -:10C990000C8F2C6E2C582CCA640A9C5C5CE3CD80F6 -:10C9A000ECD70380013A3880015D7080015D3480EE -:10C9B000015D74EBCD4080201D300CBA8CE0672CFB -:10C9C00038EA1700001A9B6E1CFEB0BC65C09030A0 -:10C9D0001CC67CFB2B0000AE8BEF2C0000AE9C2F06 -:10C9E000FDE3CF9080D70380012A14EBCD4080E097 -:10C9F000672C38EA170000E0A013D28F2CE0A013B8 -:10CA0000C98F1C300CAE8C6E2CE06BD318EA1B80E7 -:10CA100001F94B00E8E06BD338EA1B8001F94B00C9 -:10CA2000ECE06BB134EA1B8001F94B00F0E06BB134 -:10CA3000D4EA1B8001F94B00F4E06BB22CEA1B80B6 -:10CA400001F94B00F8E3CF9080D7038001D91C8017 -:10CA500001D910D401300BE06A2C38EA1A000074B6 -:10CA60002AF53A00E1580AC021D80A5C6CC031C1ED -:10CA70000C189B169C5C6CD8020000D401300C0092 -:10CA8000CC1E001302F1EC560401B100008001013C +:10C97000003CBE010D02F1EC560300000001006C0A +:10C980002CFEB0D623BFDB3018FC194021FEB0D6F8 +:10C990003BC0536E1C2FFC8F1CC038300C8F1C6E9C +:10C9A0001C585CC2D5CBFB581CC030582CC281FC33 +:10C9B000133FF86C0CFEB0D609BFDB30180699FEA9 +:10C9C000B0D622C1426C1CFEB0D600BFDB301806C8 +:10C9D00099FEB0D619C0B26C2CFEB0D5F7BFDB30D3 +:10C9E00008FC194021FEB0D611C0526E2C2FFC8FCE +:10C9F0002CC038300C8F2C6E2C582CCA640A9C5CCE +:10CA00005CE3CD80ECD70380013A4C80015D8480EB +:10CA1000015D4880015D88EBCD4080201D300CBA5F +:10CA20008CE0672C34EA1700001A9B6E1CFEB0B92C +:10CA30002DC090301CC67CFB2B0000AE8BEF2C0071 +:10CA400000AE9C2FFDE3CF9080D70380012408EB3C +:10CA5000CD4080E0672C34EA170000E0A013D68FA9 +:10CA60002CE0A013CD8F1C300CAE8C6E2CE06BD361 +:10CA7000C4EA1B8001F94B00E8E06BD3E4EA1B0039 +:10CA8000A0F0001302F1EC560401B1000080010196 :10CA9000B200010000A975010D02F1EC560300007F -:10CAA000000100E06B2C38EA1B0000B68CC0BCDA39 -:10CAB0000A0000E06B2C44EA1B0000F72C00005E2B -:10CAC000FC0000E06B2C44EA1B0000B68C5EFDD439 -:10CAD00001189A301C1789F2091068F4090B0C1719 -:10CAE00089F20910681409B29C307C1789F2091088 -:10CAF000681409B2ACE06C2C38EA1C0000F929007B -:10CB000000178CF80C1068180AB4C9178C2FFCB6E3 -:10CB10008CCC7FE06CF128EA1C8001FEB06A7ED8E4 -:10CB20000AD70380008774D421E0670148EA170020 -:10CB300000EF3C03B2581CC021D82AE0654B88EABC -:10CB40001500000A9C2B0CFEB0FAC80A9C2B0CE0C6 -:10CB5000A0131A3006EB66008CEB66008DFEB0FA6F -:10CB6000C3EB4700E4EB4600EC0A9C288C300A300B -:10CB70000BB91BF8EB0008994A0A9930ACB32A208C -:10CB80001CCFE10A9CFE3CFF6C189830A9B12A200A -:10CB900019CFE1EB4600F0300CC088F80B1035A33C -:10CBA0006B0E0B00D60F001302F1EC560401B2001D +:10CAA0000001008001F94B00ECE06BB198EA1B80BB +:10CAB00001F94B00F0E06BB238EA1B8001F94B0042 +:10CAC000F4E06BB290EA1B8001F94B00F8E3CF90E1 +:10CAD00080D7038001D9888001D97CD401300BE054 +:10CAE0006A2C34EA1A0000742AF53A00E1580AC0A8 +:10CAF00021D80A5C6CC031C10C189B169C5C6CD8A8 +:10CB0000020000D401300CE06B2C34EA1B0000B6AC +:10CB10008CC0BCDA0A0000E06B2C40EA1B0000F776 +:10CB20002C00005EFC0000E06B2C40EA1B0000B60D +:10CB30008C5EFDD401189A301C1789F2091068F434 +:10CB4000090B0C1789F20910681409B29C307C1784 +:10CB500089F20910681409B2ACE06C2C34EA1C00AC +:10CB600000F9290000178CF80C1068180AB4C917CE +:10CB70008C2FFCB68CCC7FE06CF194EA1C8001FE1B +:10CB8000B06A4CD80AD70380008774D421E06701CB +:10CB900038EA170000EF3C03B2581CC021D82AE045 +:10CBA000654B8400C646001302F1EC560401B20046 :10CBB00000800101B30001000016CE010D02F1EC6E -:10CBC00056030000000100B6C6B6E62FFC583CCF65 -:10CBD000853014EB440090301CC19CEF64038D3011 -:10CBE0001CFEB0F9C9EF4603B4EF6603B0FEB0F91E -:10CBF000F5EF6403B2DA2A8001A8348001D8E0801E -:10CC000001A8408001A6AC8001A710EBCD408018A0 -:10CC10009A3008C1A8F808002CF8FC0358F80E1048 -:10CC200035A36E160E301CBCCCF2F700F4F00C10DD -:10CC300035A36C180B17ECFCCBFFE0F60C0F8C182F -:10CC400047F34700F42FF8E06B0148EA1B0000F4BB -:10CC50000C1505160CE0694B88EA190000F93E0333 -:10CC6000541C38CD95F93A0354F76A03B1F93C03E3 -:10CC70006CF36C0068581AC044169CE3CD8080F3B6 -:10CC80006A000DF34B00E4169CE3CD80800000EBBE -:10CC9000CD4080218D300C50CC50BC30DA300BFEB2 -:10CCA000B0444A582CC031302CC5983017E06A3057 -:10CCB0009CEA1A00009507FB1C006E50CCFB3C0060 -:10CCC0006C50BC40BC581C003DEB001302F1EC560C +:10CBC00056030000000100EA1500000A9C2B0CFE31 +:10CBD000B0FAC80A9C2B0CE0A0131E3006EB6600CE +:10CBE0008CEB66008DFEB0FAC3EB4700E4EB460029 +:10CBF000EC0A9C288C300A300BB91BF8EB00089922 +:10CC00004A0A9930ACB32A201CCFE10A9CFE3CFFB3 +:10CC10006C189830A9B12A2019CFE1EB4600F0300A +:10CC20000CC088F80B1035A36B0E0BB6C6B6E62FFA +:10CC3000FC583CCF853014EB440090301CC19CEF75 +:10CC400064038D301CFEB0F9C9EF4603B4EF6603F0 +:10CC5000B0FEB0F9F5EF6403B2DA2A8001A898803B +:10CC600001D94C8001A8A48001A7108001A774EB12 +:10CC7000CD4080189A3008C1A8F808002CF8FC03B1 +:10CC800058F80E1035A36E160E301CBCCCF2F7000F +:10CC9000F4F00C1035A36C180B17ECFCCBFFE0F68E +:10CCA0000C0F8C1847F34700F42FF8E06B0138EABB +:10CCB0001B0000F40C1505160CE0694B84EA190002 +:10CCC00000F93E03541C3800EBA6001302F1EC56A9 :10CCD0000401B30000800101B40001000002E6017C -:10CCE0000D02F1EC56030000000100C051E06C01A0 -:10CCF0000050BCC1B840BC582CC051E06C02005080 -:10CD0000BCC14840BC583CC051E06C040050BCC0A1 -:10CD1000D840BC584CC051E06C080050BCC06840C2 -:10CD2000BC585CC031310C50BCFACBFFD4FACCFFFC -:10CD3000D0FEB0C5F7E06C00B4BACC346CBADCBA43 -:10CD4000E7300CFB6C0034303CFB6C0035FACCFF58 -:10CD5000C81A9B3249170A18AA2049CFD130ACFB18 -:10CD60006C0036FB57005CFACCFFCC1A9B32C91919 -:10CD70000A16AA2049CFD1FEB044B0CA80301C2E7A -:10CD80008DE3CD8080D70380003C6C80014034D49B -:10CD900001216DE06C00B4BACC346CBADC301CBA42 -:10CDA000EC301BFB6B002C303BFB6B002DFACBFFF8 -:10CDB000D01A9A3248150916A92048CFD130ABFBBA -:10CDC0006B002EFB5C0054FACCFFD41A9B32C919BD -:10CDD0000A16AA2049CFD1FEB04480C031303CC0F1 -:10CDE00048FEB0C695301C2EADD80200627B001301 +:10CCE0000D02F1EC56030000000100CD95F93A0366 +:10CCF00054F76A03B1F93C036CF36C0068581AC02E +:10CD000044169CE3CD8080F36A000DF34B00E416DB +:10CD10009CE3CD80800000EBCD4080218D300C5015 +:10CD2000CC50BC30DA300BFEB0DF94582CC0313020 +:10CD30002CC5983017E06A3098EA1A00009507FB76 +:10CD40001C006E50CCFB3C006C50BC40BC581CC05E +:10CD500051E06C010050BCC1B840BC582CC051E03F +:10CD60006C020050BCC14840BC583CC051E06C044F +:10CD70000050BCC0D840BC584CC051E06C080050BA +:10CD8000BCC06840BC585CC031310C50BCFACBFF11 +:10CD9000D4FACCFFD0FEB0C5CFE06C00B4BACC342E +:10CDA0006CBADCBAE7300CFB6C0034303CFB6C0036 +:10CDB00035FACCFFC81A9B3249170A18AA2049CF66 +:10CDC000D130ACFB6C0036FB57005CFACCFFCC1AC0 +:10CDD0009B32C9190A16AA2049CFD1FEB0DFFACA80 +:10CDE00080301C2E8DE3CD8080D70300AB0500136F :10CDF00002F1EC560401B40000800101B50001000D :10CE000000685E010D02F1EC560300000001008095 -:10CE1000003DEC80014220E1BC0000D3035EFCB188 -:10CE20008CF9DCC001EC1C00015EFCD401CF9FC07A -:10CE300020D503D80A0000EBCD40C03009C0987857 -:10CE4000AE30171188EE0809470E8E99AE2FF914EF -:10CE500039C522F20810061608119E581EC08178A6 -:10CE600057301E1186FC06094E0E4EC078785E3093 -:10CE7000171186EE0609470E8E995E11AE581EC038 -:10CE8000817867301E1186FC06094E0E4EC07878F8 -:10CE90006E30171186EE0609470E8E996E11BE5838 -:10CEA0001EC0817877301E1186FC06094E0E4EC0DA -:10CEB00078787E30171186EE0609470E8E997E111E -:10CEC000CE581EC0817887301E1186FC06094E0E92 -:10CED0004EC078788E30171186EE0609470E8E996F -:10CEE0008E11DE581ECAD178A7301E1188FC0809A1 -:10CEF0004E0E4ECACBE3CF80C00000301AF40B09AF -:10CF00004A99CA5EFD0000301AF40B094A99DA000A -:10CF10005FC2001302F1EC560401B500008001016C +:10CE100001736480014048D401216DE06C00B4BA14 +:10CE2000CC346CBADC301CBAEC301BFB6B002C3001 +:10CE30003BFB6B002DFACBFFD01A9A32481509162E +:10CE4000A92048CFD130ABFB6B002EFB5C0054FA1D +:10CE5000CCFFD41A9B32C9190A16AA2049CFD1FE99 +:10CE6000B0DFCAC031303CC048FEB0C66D301C2EA9 +:10CE7000ADD802800174E480014234E1BC0000D3EB +:10CE8000035EFCB18CF9DCC001EC1C00015EFCD43B +:10CE900001CF9FC020D503D80A0000EBCD40C030A1 +:10CEA00009C09878AE30171188EE0809470E8E99A0 +:10CEB000AE2FF91439C522F20810061608119E5833 +:10CEC0001EC0817857301E1186FC06094E0E4EC0DA +:10CED00078785E30171186EE0609470E8E995E113E +:10CEE000AE581EC0817867301E1186FC06094E0EB2 +:10CEF0004EC078786E30171186EE0609470E8E996F +:10CF00006E11BE581EC0817877301E1186FC060057 +:10CF1000D89B001302F1EC560401B500008001011A :10CF2000B600010000FD95010D02F1EC5603000072 -:10CF30000001005EFD0000301AF40B094A990A5EF8 -:10CF4000FD0000EBCD40C018961697C78F301BF63A -:10CF500007094B8D1B6C2BC7CFE3CF80C00000EBC4 -:10CF6000CD40C018961697C6AF301BF607094B8DFB -:10CF70004B6C3BC6EFE3CF80C00000EBCD40F81810 -:10CF800097E0664B88EA1600006D7C580CC091E073 -:10CF90006C0400ED4C005CED4C0060ED4C00646DE9 -:10CFA0005CFEB0C22D18956D8CFEB0C2296DCBFE13 -:10CFB000B0C05CE06BF5C3EA1B411CFEB0C0CA0AFE -:10CFC0009BFEB0BFFDFEB0C20318946D6CFEB0C2F4 -:10CFD0001718956D9CFEB0C2136DDBFEB0C046E025 -:10CFE0006BF5C3EA1B411CFEB0C0B40A9BFEB0BF88 -:10CFF000E7FEB0C1ED18956D4CFEB0C20118936DFF -:10D000007CFEB0C1FD6DBBFEB0C030E06BF5C3EA85 -:10D010001B411CFEB0C09E069BFEB0BFD1FEB0C13E -:10D02000D78E1BEE0B001BB62C8E1CEE0C001CB812 -:10D03000348E1C003940001302F1EC560401B60096 +:10CF3000000100094E0E4EC078787E30171186EE43 +:10CF40000609470E8E997E11CE581EC08178873013 +:10CF50001E1186FC06094E0E4EC078788E301711D1 +:10CF600086EE0609470E8E998E11DE581ECAD178BC +:10CF7000A7301E1188FC08094E0E4ECACBE3CF80A5 +:10CF8000C00000301AF40B094A99CA5EFD00003057 +:10CF90001AF40B094A99DA5EFD0000301AF40B0905 +:10CFA0004A990A5EFD0000EBCD40C018961697C75F +:10CFB0008F301BF607094B8D1B6C2BC7CFE3CF803F +:10CFC000C00000EBCD40C018961697C6AF301BF6D8 +:10CFD00007094B8D4B6C3BC6EFE3CF80C00000EBE5 +:10CFE000CD40F81897E0664B84EA1600006D7C5837 +:10CFF0000CC091E06C0400ED4C005CED4C0060ED69 +:10D000004C00646D5CFEB0C20518956D8CFEB0C21C +:10D01000016DCBFEB0C034E06BF5C3EA1B411CFED2 +:10D02000B0C0A20A9BFEB0BFD5FEB0C1DB18946DA4 +:10D030006CFEB000EAA6001302F1EC560401B60043 :10D0400000800101B700010000422E010D02F1EC49 -:10D0500056030000000100EE0C001CB8458E1C2F8A -:10D06000FCAE1C8E1C59ECC03531DCAE1CE3CF90FD -:10D07000F8D70380013AC8800137348001381C801A -:10D0800001368880013A98EBCD40E0300BC078F64D -:10D090000C1035A36C1807AEC62FFBE0670148EAF9 -:10D0A0001700003006583BCF45E0654B88EA150075 -:10D0B00000EB460090EF6603B1FEB0F7DDEB4600F3 -:10D0C000F4EF6603B2E3CF80E0D7038001A71CD45E -:10D0D00001E06C308CEA1C0000781CFEB0FC26F8E5 -:10D0E0000B1518C0505C6CC60C301CC58CDA0A805D -:10D0F00001AFD0EBCD4080E067308CEA170000E054 -:10D10000A010BA8F2CE0A010B18F1C300CAE8C6E2A -:10D110002CE06BD2DCEA1B8001F94B02E8E06BD219 -:10D12000FCEA1B8001F94B02ECE06BB778EA1B804C -:10D1300001F94B02F0E06BB804EA1B8001F94B02E5 -:10D14000F4E06BB85CEA1B8001F94B02F8E3CF9086 -:10D1500080D7038001D91C004E34001302F1EC5635 +:10D0500056030000000100C1EF18956D9CFEB0C1A1 +:10D06000EB6DDBFEB0C01EE06BF5C3EA1B411CFE9E +:10D07000B0C08C0A9BFEB0BFBFFEB0C1C518956D95 +:10D080004CFEB0C1D918936D7CFEB0C1D56DBBFE0E +:10D09000B0C008E06BF5C3EA1B411CFEB0C07606C9 +:10D0A0009BFEB0BFA9FEB0C1AF8E1BEE0B001BB63E +:10D0B0002C8E1CEE0C001CB8348E1CEE0C001CB820 +:10D0C000458E1C2FFCAE1C8E1C59ECC03531DCAEDD +:10D0D0001CE3CF90F8D70380013ADC800137488009 +:10D0E0000138308001369C80013AACEBCD40E03015 +:10D0F0000BC078F60C1035A36C1807AEC62FFBE0FA +:10D10000670138EA1700003006583BCF45E0654B11 +:10D1100084EA150000EB460090EF6603B1FEB0F71D +:10D12000DDEB4600F4EF6603B2E3CF80E0D7038087 +:10D1300001A780D401E06C3088EA1C0000781CFE56 +:10D14000B0FC26F80B1518C0505C6CC60C301CC522 +:10D150008CDA0A8001B03400AB44001302F1EC56C3 :10D160000401B70000800101B800010000D5C5012D -:10D170000D02F1EC560300000001008001D910D42B -:10D1800001E06C308CEA1C0000782CF93C02E1587C -:10D190000CC021D80AC0DCD8020000D401300CE059 -:10D1A0006B308CEA1B0000B68CC0BCDA0A0000E0D1 -:10D1B0006B3098EA1B0000F72C00005EFC0000E0DA -:10D1C0006B3098EA1B0000B68C5EFDE06B308CEA99 -:10D1D0001B0000B68C5EFDD401189A301C1789F232 -:10D1E000091068F4090B0C1789F20910681409B2C8 -:10D1F0009C317C1789F20910681409B2ACE06C30DC -:10D200008CEA1C0000F9290000178CF80C10681833 -:10D210000AB4C9178C2FFCB68CCC1FD80A0000D4D6 -:10D220002118961697E06507FF780CEBEC034C0A83 -:10D230003CC0B16C0CF9DCC014C0416C1C580CC073 -:10D2400030302CD822DA2A580CC0710C9CE0A00C8B -:10D250008B581CC025D82A5817C10518150A37C085 -:10D26000D36C0CA17C300AC042F06B0000C0483087 -:10D270000BEA1B7FF0AD1BDA2AF80B00D712001364 +:10D170000D02F1EC56030000000100EBCD4080E011 +:10D18000673088EA170000E0A010BE8F2CE0A010E6 +:10D19000B58F1C300CAE8C6E2CE06BD310EA1B806C +:10D1A00001F94B02E8E06BD330EA1B8001F94B0236 +:10D1B000ECE06BB7DCEA1B8001F94B02F0E06BB8E6 +:10D1C00068EA1B8001F94B02F4E06BB8C0EA1B80EF +:10D1D00001F94B02F8E3CF9080D7038001D9888012 +:10D1E00001D97CD401E06C3088EA1C0000782CF96D +:10D1F0003C02E1580CC021D80AC0DCD8020000D49F +:10D2000001300CE06B3088EA1B0000B68CC0BCDA41 +:10D210000A0000E06B3094EA1B0000F72C00005E6F +:10D22000FC0000E06B3094EA1B0000B68C5EFDE071 +:10D230006B3088EA1B0000B68C5EFDD401189A3072 +:10D240001C1789F2091068F4090B0C1789F20910F0 +:10D25000681409B29C317C1789F20910681409B26C +:10D26000ACE06C3088EA1C0000F9290000178CF84B +:10D270000C1068180AB4C9178C2FFC001978001319 :10D2800002F1EC560401B80000800101B900010070 -:10D2900000957E010D02F1EC560300000001001123 -:10D2A000000E3BC0A46C0BE41B800F1807F7E711BE -:10D2B000478D073FFCD822300BEA1B80006C0A1612 -:10D2C0006A6C09F3D9C014B5A98D09201C18073060 -:10D2D0000CEEC9FFCBE0490035C0438D0A8D1CD848 -:10D2E0002A30095A17C0642E076C196C088D188DE6 -:10D2F0000C5C37C15058095F19EE0811206C1CF8FE -:10D3000008094C18496C1CF8070A4E6C0CF80809FF -:10D310004C184E8D1E6C0CF8070A4C8D0C6C0C14BE -:10D320004C8D0C301CEA1C80001839C0621639C0C4 -:10D33000C16C1CA19CC0926C1C2FFC8D1CC0516C3C -:10D340000C2FFC8D0CC0786C0C143CC0416C1C582C -:10D350000CC9403FFCD8228001D1E8D431202D14E3 -:10D36000961697E0A00D685C7C187CC030202CC01D -:10D37000410C9A0E9BC678300830090C9A0E9BFE21 -:10D38000B0D1CAC052EE1780003083C0283003E00D -:10D3900061A4DCEA118001E062BBBCEA12800100FA -:10D3A0005D5E001302F1EC560401B900008001013A +:10D2900000957E010D02F1EC56030000000100B67E +:10D2A0008CCC1FD80A0000D42118961697E0650789 +:10D2B000FF780CEBEC034C0A3CC0B16C0CF9DCC001 +:10D2C00014C0416C1C580CC030302CD822DA2A58BB +:10D2D0000CC0710C9CE0A00CAF581CC025D82A587B +:10D2E00017C10518150A37C0D36C0CA17C300AC0D1 +:10D2F00042F06B0000C048300BEA1B7FF0AD1BDA38 +:10D300002AF80B11000E3BC0A46C0BE41B800F1815 +:10D3100007F7E711478D073FFCD822300BEA1B8047 +:10D32000006C0A166A6C09F3D9C014B5A98D0920DE +:10D330001C1807300CEEC9FFCBE0490035C0438D07 +:10D340000A8D1CD82A30095A17C0642E076C196C34 +:10D35000088D188D0C5C37C15058095F19EE081103 +:10D36000206C1CF808094C18496C1CF8070A4E6C14 +:10D370000CF808094C184E8D1E6C0CF8070A4C8DE1 +:10D380000C6C0C144C8D0C301CEA1C80001839C03D +:10D39000621639C0C16C1CA19CC0926C1C2FFC0091 +:10D3A000DF3F001302F1EC560401B90000800101D7 :10D3B000BA0001000000B5010D02F1EC56030000B7 -:10D3C0000001003005EA153FF0E0683BCEEA186640 -:10D3D0007FE069A09EEA193FE60C9A0E9BFEB0D151 -:10D3E000ADC1B20C9A0E9B30080A99FEB0CFE8BBD3 -:10D3F0001B300A0A9B0C980E99FEB0CFADBB08FEFD -:10D40000B0D0F35D12149816990C9A0E9BFEB0D111 -:10D4100029069C5D11C29830180A990C9A0E9BFE41 -:10D42000B0D18CC1720C9A0E9B30080A99FEB0CF15 -:10D43000C7BB1B300A0A9B0C980E99FEB0CF8CBB61 -:10D4400008FEB0D0D25D12EC1300020C980E99CDFC -:10D45000FB321CE06B4EA4EA1B0000970C3FFAE085 -:10D460006BFFFFEA1B7FFF2FEDD8328001D4948041 -:10D47000015C9C80015D74800159F88001599080A5 -:10D48000015C22B18CF9DCC001EC1C00015EFCEBFC -:10D49000CD40801897E1BC0000CF5FD303FC1BAAEE -:10D4A00000496A950BFE7B14009707C020D503E363 -:10D4B000CF8080EBCD40C01897FE7C1404780648DE -:10D4C000DC780C0056EF001302F1EC560401BA00B0 +:10D3C0000001008D1CC0516C0C2FFC8D0CC0786CC2 +:10D3D0000C143CC0416C1C580CC9403FFCD8228046 +:10D3E00001D294D431202D14961697E0A00D725CD2 +:10D3F0007C187CC030202CC0410C9A0E9BC6783023 +:10D400000830090C9A0E9BFEB0D1A2C052EE1780D4 +:10D41000003083C0283003E061A540EA118001E0BC +:10D4200062BC20EA1280013005EA153FF0E0683B5B +:10D43000CEEA18667FE069A09EEA193FE60C9A0ED4 +:10D440009BFEB0D185C1B20C9A0E9B30080A99FEA2 +:10D45000B0CFC0BB1B300A0A9B0C980E99FEB0CF10 +:10D4600085BB08FEB0D0CB5D12149816990C9A0EAD +:10D470009BFEB0D101069C5D11C29830180A990C30 +:10D480009A0E9BFEB0D164C1720C9A0E9B30080AB2 +:10D4900099FEB0CF9FBB1B300A0A9B0C980E99FED9 +:10D4A000B0CF64BB08FEB0D0AA5D12EC1300020C32 +:10D4B000980E99CDFB321CE06B4EA0EA1B00009742 +:10D4C0000C3FFA00CA69001302F1EC560401BA00DD :10D4D00000800101BB00010000BF0E010D02F1EC54 -:10D4E00056030000000100EDBC0005CFC2E1BC0006 -:10D4F00000CDBFD303304BF607002BEA1BAA004830 -:10D500007A950BA7D6FE7B1404F60709265C5CC04F -:10D5100020D503E3CF80C0FFFF14D4FFFF1458D4FD -:10D52000211897EE041605FE761420EC0400266CF4 -:10D5300005E1BC0000CB9F189BD303320CF804001C -:10D540002CEA1CAA00FE7A1458950C301CEFD7C0A8 -:10D5500005F807094C18458D055C5BC020D503D83C -:10D560002A0000D4211897EE041605FE761420EC4C -:10D570000400266C05E1BC0000C97FD303320BF622 -:10D5800004002BEA1BAA00FE7A1458950B301BEFFF -:10D59000D7C005F607094B16858D055C5CC020D504 -:10D5A00003D82A167BC696F9DBC28BC440E04C0731 -:10D5B000FFC400E41B000FBB213019B5693008120D -:10D5C0004BFE3CFC03A19CC032A17A5CFBA36BF731 -:10D5D000EA13EBA36AF3E91030001BF3E9101130F2 -:10D5E000001ADCA1995D0800540B001302F1EC56FF +:10D4E00056030000000100E06BFFFFEA1B7FFF2FE7 +:10D4F000EDD8328001D50C80015CB080015D888060 +:10D50000015A0C800159A480015C36B18CF9DCC051 +:10D5100001EC1C00015EFCEBCD40801897E1BC00E3 +:10D5200000CF5FD303FC1BAA00496A950BFE7B1456 +:10D53000009707C020D503E3CF8080EBCD40C01813 +:10D5400097FE7C1404780648DC780CEDBC0005CF0F +:10D55000C2E1BC0000CDBFD303304BF607002BEA7D +:10D560001BAA00487A950BA7D6FE7B1404F6070980 +:10D57000265C5CC020D503E3CF80C0FFFF14D4FF3E +:10D58000FF1458D4211897EE041605FE761420ECEB +:10D590000400266C05E1BC0000CB9F189BD303322E +:10D5A0000CF804002CEA1CAA00FE7A1458950C30E2 +:10D5B0001CEFD7C005F807094C18458D055C5BC00A +:10D5C00020D503D82A0000D4211897EE041605FEB2 +:10D5D000761420EC0400266C05E1BC0000C97FD362 +:10D5E00003320BF604002B00E57A001302F1EC562F :10D5F0000401BB0000800101BC00010000AB26015A -:10D600000D02F1EC56030000000100F1E9100CC11D -:10D6100060167BC086001AF601014B1000E209007B -:10D6200041C078000AF601004B1010E2090141A147 -:10D630007A5CFB101AF609014BCE7B167B5F7CE00F -:10D640000C000A1B0C5C01E20B1601BB015D0AB564 -:10D650006CF60C000B5EFCF5EB101C5E0CE41B0082 -:10D660000FC110F60C1200F80C110BF8091120F67E -:10D670000C094BF4090A49124BF40C094AF80C1135 -:10D6800001CADBF40C1200C030F409094A2EBCF4C4 -:10D690000B160BB57AF80C1101CA1BF5EB101C5ECA -:10D6A0000C3FFCB56C580AF80B13005EBC484C32BA -:10D6B0001B990B3FFB3FFA5EFE000000004EA4EBFF -:10D6C000CD4080E0673089EA1700000F8C581CC0FD -:10D6D00031E3CF8080E06C307CEA1C0000781CFED7 -:10D6E000B0EF40581CC051301CC5FC301CAE8CE360 -:10D6F000CF908080019B54EBCD4080E067307CEA86 -:10D70000170000E0A00E128F2CE0A000A69E0013D0 +:10D600000D02F1EC56030000000100EA1BAA00FE27 +:10D610007A1458950B301BEFD7C005F607094B1647 +:10D62000858D055C5CC020D503D82A167BC696F98B +:10D63000DBC28BC440E04C07FFC400E41B000FBBFF +:10D64000213019B5693008124BFE3CFC03A19CC087 +:10D6500032A17A5CFBA36BF7EA13EBA36AF3E91040 +:10D6600030001BF3E9101130001ADCA1995D08F1BC +:10D67000E9100CC160167BC086001AF601014B1040 +:10D6800000E2090041C078000AF601004B1010E2E8 +:10D69000090141A17A5CFB101AF609014BCE7B16F9 +:10D6A0007B5F7CE00C000A1B0C5C01E20B1601BBEB +:10D6B000015D0AB56CF60C000B5EFCF5EB101C5E10 +:10D6C0000CE41B000FC110F60C1200F80C110BF843 +:10D6D000091120F60C094BF4090A49124BF40C0904 +:10D6E0004AF80C1101CADBF40C1200C030F409092D +:10D6F0004A2EBCF40B160BB57AF80C1101CA1BF5B7 +:10D70000EB101C5E0C3FFCB56C580A0055B60013BC :10D7100002F1EC560401BC0000800101BD000100D3 -:10D7200000C19E010D02F1EC560300000001000E45 -:10D73000098F1C300CAE8C6E2CE06BCF10EA1B8076 -:10D7400001F94B0308E06BCF3CEA1B8001F94B0366 -:10D750000CE06BBCB4EA1B8001F94B0310E06BBD1D -:10D7600054EA1B8001F94B0314E06BD108EA1B80DB -:10D7700001F94B0318E3CF9080D7038001D91C80B7 -:10D7800001D910D401E06C307CEA1C0000782CF93F -:10D790003C0301580CC021D80AC11CD8020000D497 -:10D7A00001C0DCD8020000D401300CE06B307CEA10 -:10D7B0001B0000B68CC0BCDA0A0000E06B3088EABF -:10D7C0001B0000F72C00005EFC0000E06B3088EAD4 -:10D7D0001B0000B68C5EFDD42118971696300530DC -:10D7E00004C0780F9B0F8CC08C18452FE72FF40CCA -:10D7F00034CF930A9CD822189AFE7C2C00F4091688 -:10D8000005A9791809588BF9BB02081E0B17EB16EE -:10D810000F0C2C4054687C90A4B800301B149CF969 -:10D82000DCC005F60C094B936B93AB93EB301C00FB -:10D8300003A9001302F1EC560401BD0000800101B0 +:10D7200000C19E010D02F1EC56030000000100F85B +:10D730000B13005EBC484C321B990B3FFB3FFA5E5B +:10D74000FE000000004EA0EBCD4080E0673085EA8F +:10D750001700000F8C581CC031E3CF8080E06C3084 +:10D7600078EA1C0000781CFEB0EF40581CC0513015 +:10D770001CC5FC301CAE8CE3CF908080019BB8EBC5 +:10D78000CD4080E0673078EA170000E0A00E168FE9 +:10D790002CE0A00E0D8F1C300CAE8C6E2CE06BCFED +:10D7A00074EA1B8001F94B0308E06BCFA0EA1B80F1 +:10D7B00001F94B030CE06BBD18EA1B8001F94B0328 +:10D7C00010E06BBDB8EA1B8001F94B0314E06BD18C +:10D7D0006CEA1B8001F94B0318E3CF9080D70380DC +:10D7E00001D9888001D97CD401E06C3078EA1C0032 +:10D7F00000782CF93C0301580CC021D80AC11CD870 +:10D80000020000D401C0DCD8020000D401300CE0DA +:10D810006B3078EA1B0000B68CC0BCDA0A0000E06E +:10D820006B3084EA1B0000F72C00005EFC00000057 +:10D83000F021001302F1EC560401BD00008001014B :10D84000BE000100005455010D02F1EC560300002A -:10D85000000100F5DAC005F80A094C932C5EFD3092 -:10D860001B149CF9DCC005F60C094B935B93AB933E -:10D87000EBCF0B301B149CF9DCC005F60C094B9365 -:10D880006B939B93EBCE6B301B149CF9DCC005F6BD -:10D890000C094B935B939B93EBCDCB301B149CF902 -:10D8A000DCC005F60C094B936B93AB93DBCD2B30AF -:10D8B0001B149CF9DCC005F60C094B935B93AB93EE -:10D8C000DBCC8B301B149CF9DCC005F60C094B93A8 -:10D8D0006B939B93DBCBEB301B149CF9DCC005F600 -:10D8E0000C094B935B939B93DBCB4B5EFF0000D506 -:10D8F000E1E067D494EA178001109A129B5D171833 -:10D9000095FAEA00045D175815C354581CC33440F7 -:10D910001CA17CC092FAEA0004EE1B8000FAEB0026 -:10D92000043084C0283004403CA17CC092FAEA0054 -:10D930000CEE1B8000FAEB000CEC140006FAEA0077 -:10D940000CFAE80004FEB0CF41C082FAEA000CFAFB -:10D95000E8000400E7DB001302F1EC560401BE000E +:10D85000000100E06B3084EA1B0000B68C5EFDD452 +:10D86000211897169630053004C0780F9B0F8CC096 +:10D870008C18452FE72FF40C34CF930A9CD822182C +:10D880009AFE7C2C00F4091605A9791809588BF921 +:10D89000BB02081E0B17EB160F0C2C4054687C9033 +:10D8A000A4B800301B149CF9DCC005F60C094B939E +:10D8B0006B93AB93EB301CF5DAC005F80A094C9377 +:10D8C0002C5EFD301B149CF9DCC005F60C094B9353 +:10D8D0005B93AB93EBCF0B301B149CF9DCC005F6CC +:10D8E0000C094B936B939B93EBCE6B301B149CF901 +:10D8F000DCC005F60C094B935B939B93EBCDCB30CF +:10D900001B149CF9DCC005F60C094B936B93AB938D +:10D91000DBCD2B301B149CF9DCC005F60C094B93B6 +:10D920005B93AB93DBCC8B301B149CF9DCC005F60E +:10D930000C094B936B939B93DBCBEB301B149CF943 +:10D94000DCC005F60C094B935B939B93DBCB4B5EE2 +:10D95000FF0000005BFA001302F1EC560401BE0068 :10D9600000800101BF00010000EBEE010D02F1ECAF -:10D9700056030000000100FEB0CECEC2E85805F903 -:10D98000BA0700F9BB0700C2A7FAEA0004FAE800E8 -:10D990000CFEB0CEC1C238582CC041FAEA0004DEF9 -:10D9A000625825C041FAEA000CDE621835F9BA0166 -:10D9B00000F9BB0100C051300A300BEA1B3FF040B8 -:10D9C00019A1793084F9B402004039A179C032EC50 -:10D9D000140006581CC031EC140002089CFEB0F282 -:10D9E000BBDE6280015D7480015C9C8001A4DCE18F -:10D9F000BC0000D3035EFCB18CF9DCC001EC1C0060 -:10DA0000015EFCD401CF9FC020D503D80A0000D40A -:10DA100001CEFF320BEA1BAA00FE7A1818950BE420 -:10DA20007B0105489A950BCEEFD80AD401CE1F3260 -:10DA30000BEA1BAA00FE7A1818950B300B483A9592 -:10DA40000BCE1FD80AD703FFFF1820D401CD1F36F5 -:10DA50004BEA1BAA00FE7A1818950B301B48AA95B2 -:10DA60000BCD1FD80A0000D401CC3F364BEA1BAACD -:10DA700000FE7A1818950B00B291001302F1EC56D3 +:10D9700056030000000100D5E1E067D50CEA1780EE +:10D9800001109A129B5D171895FAEA00045D17586A +:10D9900015C354581CC334401CA17CC092FAEA0041 +:10D9A00004EE1B8000FAEB00043084C028300440F1 +:10D9B0003CA17CC092FAEA000CEE1B8000FAEB005E +:10D9C0000CEC140006FAEA000CFAE80004FEB0CFF2 +:10D9D00019C082FAEA000CFAE80004FEB0CEA6C232 +:10D9E000E85805F9BA0700F9BB0700C2A7FAEA0030 +:10D9F00004FAE8000CFEB0CE99C238582CC041FAA7 +:10DA0000EA0004DE625825C041FAEA000CDE621822 +:10DA100035F9BA0100F9BB0100C051300A300BEAF8 +:10DA20001B3FF04019A1793084F9B402004039A1BC +:10DA300079C032EC140006581CC031EC1400020806 +:10DA40009CFEB0F2BBDE6280015D8880015CB0802C +:10DA500001A540E1BC0000D3035EFCB18CF9DCC041 +:10DA600001EC1C00015EFCD401CF9FC020D503D87F +:10DA70000A0000D401CEFF006DE1001302F1EC5664 :10DA80000401BF0000800101C000010000EA86011E -:10DA90000D02F1EC56030000000100300B483A95EE -:10DAA0000BCC3FD80AD703FFFF1864D401CB3F3516 -:10DAB0000BEA1BAA00FE7A1818950B301B48AA9592 -:10DAC0000BCB3FD80A0000D401CA5F350BEA1BAA72 -:10DAD00000FE7A1818950B300B483A950BCA5FD8A0 -:10DAE0000AD703FFFF1850D42114961697E068DE7A -:10DAF000F7EA18BF29E069F8D8EA193FC2FEB0CDAD -:10DB0000E0E068B3F4EA18CCFEE069991AEA193F3C -:10DB1000C3FEB0CCC10C980E99FEB0CDD2E068CB5C -:10DB200062EA18D968E069466FEA193FC7FEB0CCCF -:10DB3000B30C980E99FEB0CDC4E068C9C6EA18DAF5 -:10DB400012E06971C4EA193FCCFEB0CCA50C980E66 -:10DB500099FEB0CDB6E068E94AEA18948AE06949CE -:10DB600024EA193FD2FEB0CC970C980E99FEB0CDA6 -:10DB7000A8E0685FF7EA189997E0699999EA193F70 -:10DB8000D9FEB0CC890C980E99FEB0CD9AE06855BC -:10DB9000BCEA185555E0695555EA19004C5D00136B +:10DA90000D02F1EC56030000000100320BEA1BAA54 +:10DAA00000FE7A1818950BE47B0105489A950BCE79 +:10DAB000EFD80AD401CE1F320BEA1BAA00FE7A1857 +:10DAC00018950B300B483A950BCE1FD80AD703FF99 +:10DAD000FF1820D401CD1F364BEA1BAA00FE7A188E +:10DAE00018950B301B48AA950BCD1FD80A0000D4FF +:10DAF00001CC3F364BEA1BAA00FE7A1818950B3072 +:10DB00000B483A950BCC3FD80AD703FFFF1864D4D3 +:10DB100001CB3F350BEA1BAA00FE7A1818950B3093 +:10DB20001B48AA950BCB3FD80A0000D401CA5F3529 +:10DB30000BEA1BAA00FE7A1818950B300B483A9591 +:10DB40000BCA5FD80AD703FFFF1850D421149616CA +:10DB500097E068DEF7EA18BF29E069F8D8EA193FCC +:10DB6000C2FEB0CDB8E068B3F4EA18CCFEE0699923 +:10DB70001AEA193FC3FEB0CC990C980E99FEB0CDAD +:10DB8000AAE068CB62EA18D968E069466FEA193FF3 +:10DB9000C7FEB0CC8B0C980E99FEB0003DE500138B :10DBA00002F1EC560401C00000800101C100010037 -:10DBB00000862A010D02F1EC560300000001003F2F -:10DBC000E5FEB0CC7BD82280015C22800159F8E1CF -:10DBD000BC0000D3035EFCEDBC00105F2C5C5C5EFF -:10DBE000FC0000D401CF9F5C5C580CC020D503D84A -:10DBF0000A0000EBCD40E0189716951496CE9F3F93 -:10DC0000FB8F8B3FFB8FABE06B00808F0BCEBF3F5A -:10DC1000FC8FAC302AE06B02C0E06C4350EA1C8001 -:10DC200000E0A004E7E06C4E8CEA1C00009907318C -:10DC30005C8F0CEB3C0009580CC0406E0CA1BC8FF3 -:10DC40000CEB3C000A580CC0406E0CBBAC8F0C6E49 -:10DC50000CEB3B0008F9EB110C8F0C6A0C6A1BF8FB -:10DC60000B0D0A307CF40C0D0A5C5AB16AA5AA8F20 -:10DC70002AE06C4E90EA1C0000AD0BB92A0D0A1880 -:10DC8000AA20CCE07C00008F7C300CE3CD80E080CB -:10DC900001CB30D421F8C7FFF9E017FFFC0E3CC0E0 -:10DCA00023D82A5887F9B70308C0482FCCE0A0032F -:10DCB000ABE0664EACEA1600006C0C189B580C00EA -:10DCC000E325001302F1EC560401C10000800101BC +:10DBB00000862A010D02F1EC56030000000100CDA1 +:10DBC0009CE068C9C6EA18DA12E06971C4EA193F34 +:10DBD000CCFEB0CC7D0C980E99FEB0CD8EE068E9FD +:10DBE0004AEA18948AE0694924EA193FD2FEB0CC87 +:10DBF0006F0C980E99FEB0CD80E0685FF7EA189937 +:10DC000097E0699999EA193FD9FEB0CC610C980E5A +:10DC100099FEB0CD72E06855BCEA185555E06955DB +:10DC200055EA193FE5FEB0CC53D82280015C36801E +:10DC3000015A0CE1BC0000D3035EFCEDBC00105F98 +:10DC40002C5C5C5EFC0000D401CF9F5C5C580CC077 +:10DC500020D503D80A0000EBCD40E01897169514A4 +:10DC600096CE9F3FFB8F8B3FFB8FABE06B00808F8F +:10DC70000BCEBF3FFC8FAC302AE06B02C0E06C43A0 +:10DC800050EA1C8000E0A004E7E06C4E88EA1C002B +:10DC9000009907315C8F0CEB3C0009580CC0406EBA +:10DCA0000CA1BC8F0CEB3C000A580CC0406E0CBBA6 +:10DCB000AC8F0C6E0CEB3B0008F9EB110C8F0C00D9 +:10DCC0000F02001302F1EC560401C10000800101B3 :10DCD000C20001000013E1010D02F1EC5603000047 -:10DCE000000100C111ECCBFFFC760C580CC1C078D0 -:10DCF0000A0E3AC1D2F8CBFFFCCF8B74090E39C1A2 -:10DD000072F4CBFFFC760A580ACF91780CECCBFF6B -:10DD1000FCC038F4CBFFFC760A183AC05074090EE8 -:10DD200039C062CF8BE0A00989CD31300B580BCCC4 -:10DD3000B0760C780AF4C900080E39C042781A97F8 -:10DD40000AC0B8F807000997097819760891190EE2 -:10DD50001A7609930A9907760B580BC060761A5801 -:10DD60000AC0302FCBC028300B8D0B2FCCD822808F -:10DD700001C9448001D554EBCD40C020FDFACCFF51 -:10DD8000F0FEB03D61E06C00EAEA1C0000988B2FC9 -:10DD9000FBB80B988B989A143BC3B3300BB80B307D -:10DDA00007C2F8E06C2F90EA1C0000781CF91C01F7 -:10DDB00086F8070A4CA19CC232F9D7B008FEB0E73A -:10DDC00013C1E5F806100640DBFC1C42C8FEB0BAE1 -:10DDD00025FEB0BBD5FACBFFF80C0BB60C40EBFC24 -:10DDE0001C42C800912A001302F1EC560401C20043 +:10DCE0000001006A0C6A1BF80B0D0A307CF40C0D65 +:10DCF0000A5C5AB16AA5AA8F2AE06C4E8CEA1C0015 +:10DD000000AD0BB92A0D0A18AA20CCE07C00008FC8 +:10DD10007C300CE3CD80E08001CB94D421F8C7FFA8 +:10DD2000F9E017FFFC0E3CC023D82A5887F9B70347 +:10DD300008C0482FCCE0A003ABE0664EA8EA16006E +:10DD4000006C0C189B580CC111ECCBFFFC760C58E6 +:10DD50000CC1C0780A0E3AC1D2F8CBFFFCCF8B744D +:10DD6000090E39C172F4CBFFFC760A580ACF9178BC +:10DD70000CECCBFFFCC038F4CBFFFC760A183AC0A1 +:10DD80005074090E39C062CF8BE0A00993CD3130B9 +:10DD90000B580BCCB0760C780AF4C900080E39C0C9 +:10DDA00042781A970AC0B8F80700099709781976D7 +:10DDB0000891190E1A7609930A9907760B580BC029 +:10DDC00060761A580AC0302FCBC028300B8D0B2F2D +:10DDD000CCD8228001C9A88001D5CCEBCD40C02091 +:10DDE000FDFACC0023DD001302F1EC560401C20061 :10DDF00000800101C300010000AC5A010D02F1ECEA -:10DE000056030000000100FEB0BA1AFEB0BBCAFA09 -:10DE1000CBFFF80C0BB61C301CFACBFFF81606AC87 -:10DE2000CC2FF75C6758C7CD05FAEA0008BB1BFE8C -:10DE3000B0E7022F1DE3CF90C0D70380003D608084 -:10DE40000191008001373480013A988001912CD4EF -:10DE500021E0A00AE31897EF26006EC178EE0600D5 -:10DE600015EF1C006CEB0B0070180BEB5B0070EBFC -:10DE7000040070F9D6B008FEB0E07E1834C045301A -:10DE80000C2905AA0C2FF65C665866CE95E06C4608 -:10DE90004CEA1C0000198C580CC2E0EF1C006658BC -:10DEA0000CC2A1EF2C006B585CC06128878E0C5807 -:10DEB0000C5F0CD822EF2C006AEF2B006E163CC1D1 -:10DEC00004EF2C006AC088300B5C6CEE0C001A2941 -:10DED0000AB40B2FFCEF2B006EF60C1800CF550E7A -:10DEE0009C295CF92B0000EE0B001729078E0C58BB -:10DEF0000C5F0CD822D82A8001D9108001846CEBE9 -:10DF0000CD40C01896169700DF6A001302F1EC5658 +:10DE000056030000000100FFF0FEB0D8ABE06C004C +:10DE1000DAEA1C0000988B2FFBB80B988B989A14A9 +:10DE20003BC3B3300BB80B3007C2F8E06C2F8CEA61 +:10DE30001C0000781CF91C0186F8070A4CA19CC242 +:10DE400032F9D7B008FEB0E713C1E5F80610064076 +:10DE5000DBFC1C42C8FEB0B9FDFEB0BBADFACBFF87 +:10DE6000F80C0BB60C40EBFC1C42C8FEB0B9F2FE3D +:10DE7000B0BBA2FACBFFF80C0BB61C301CFACBFFE0 +:10DE8000F81606ACCC2FF75C6758C7CD05FAEA0048 +:10DE900008BB1BFEB0E7022F1DE3CF90C0D7038065 +:10DEA000017458800191648001374880013AAC8048 +:10DEB000019190D421E0A00AE71897EF26006EC1E7 +:10DEC00078EE060015EF1C006CEB0B0070180BEBE6 +:10DED0005B0070EB040070F9D6B008FEB0E07E186D +:10DEE00034C045300C2905AA0C2FF65C665866CE66 +:10DEF00095E06C4648EA1C0000198C580CC2E0EF13 +:10DF00001C0066580CC2A100AF23001302F1EC56AE :10DF10000401C30000800101C400010000B87201C7 -:10DF20000D02F1EC56030000000100301C0F8BF6CF -:10DF30000B1068EC0B0B0C0F8BF60B10680C0BB670 -:10DF40009C30CB0F8AF40A10680C0AB4ABE06B2F3C -:10DF500098EA1B0000F72A0000580AC080302B0FF7 -:10DF60008AF40A10680C0AB4CBC0680F8BF60B1049 -:10DF7000680C0BB6CC0F8BF60B10680C0BB6DC30B4 -:10DF80006B0F8AF40A10680C0AB4EB0F8BF60B10B7 -:10DF9000680C0BB64C300CFEB0E5F20F8BF60B1094 -:10DFA000680C0BB65C300CFEB0E5F40F8BF60B1072 -:10DFB000681606AC6C0F8C2FFCAE8C30CCFEB0E635 -:10DFC0000FE3CF80C0D70380019050800190648020 -:10DFD0000190B0D401E0691A8CEA190000129C2F5C -:10DFE0004C300A300B189E30A8BD2A2018CFE11201 -:10DFF0009C2F4C189E30A8BD2A2018CFE1129CFE01 -:10E000003CFE5C189E30A8BD2A2018CFE1129C2A45 -:10E010004C189E30A8BD2A2018CFE1129CFE3CFF70 -:10E020002C189E30A8BD2A2018CFE100C8A20013EA +:10DF20000D02F1EC56030000000100EF2C006B58CD +:10DF30005CC06128878E0C580C5F0CD822EF2C0037 +:10DF40006AEF2B006E163CC104EF2C006AC08830CB +:10DF50000B5C6CEE0C001A290AB40B2FFCEF2B00A3 +:10DF60006EF60C1800CF550E9C295CF92B0000EEC4 +:10DF70000B001729078E0C580C5F0CD822D82A806A +:10DF800001D97C800184D0EBCD40C0189616973023 +:10DF90001C0F8BF60B1068EC0B0B0C0F8BF60B1099 +:10DFA000680C0BB69C30CB0F8AF40A10680C0AB4CC +:10DFB000ABE06B2F94EA1B0000F72A0000580AC060 +:10DFC00080302B0F8AF40A10680C0AB4CBC0680F9B +:10DFD0008BF60B10680C0BB6CC0F8BF60B10680C85 +:10DFE0000BB6DC306B0F8AF40A10680C0AB4EB0F26 +:10DFF0008BF60B10680C0BB64C300CFEB0E5F20F34 +:10E000008BF60B10680C0BB65C300CFEB0E5F40F11 +:10E010008BF60B10681606AC6C0F8C2FFCAE8C3098 +:10E02000CCFEB0E60FE3CF80C0D7030046660013F6 :10E0300002F1EC560401C40000800101C50001009A -:10E0400000D2CA010D02F1EC5603000000010012DB -:10E050009CFE3CFEAC189E30A8BD2A2018CFE130B3 -:10E060000CB28CB29CB2CCB2DCB2ACB2BCB2ECB2F0 -:10E070004CB25CE06C4000EA1C447EF34C01F4F2CC -:10E08000EB0124F2EB012CF2EB0134F2EB0144F250 -:10E09000EB013CF2EB014CD80A0000EDBC00105F34 -:10E0A0002C5C5C5EFC0000EBCD4080FE7C18507860 -:10E0B00007A1C7E1BC0000FEB0FFF2D303350BEAB5 -:10E0C0001BAA00FE7A1818950BFE7B185097075C68 -:10E0D0005C580CC020D503E3CF8080D401E1BC00A4 -:10E0E00000FEB0FFDDD303364BEA1BAA00FE7A1810 -:10E0F00018950B301BFE7A1864950B5C5C580CC0AD -:10E1000020D503D80A0000EBCD4080FE7C1864784F -:10E1100007A1C7E1BC0000FEB0FFC2D303364BEA43 -:10E120001BAA00FE7A1818950BFE7B186497075CF3 -:10E130005C580CC020D503E3CF8080300CE06B2C02 -:10E1400054EA1B0000B68C5EFF0000EBCD4080005F -:10E15000DB15001302F1EC560401C500008001013B +:10E0400000D2CA010D02F1EC56030000000100806D +:10E050000190B4800190C880019114D401E0691A44 +:10E0600088EA190000129C2F4C300A300B189E30A1 +:10E07000A8BD2A2018CFE1129C2F4C189E30A8BDB5 +:10E080002A2018CFE1129CFE3CFE5C189E30A8BDF1 +:10E090002A2018CFE1129C2A4C189E30A8BD2A20B5 +:10E0A00018CFE1129CFE3CFF2C189E30A8BD2A2000 +:10E0B00018CFE1129CFE3CFEAC189E30A8BD2A2071 +:10E0C00018CFE1300CB28CB29CB2CCB2DCB2ACB2A4 +:10E0D000BCB2ECB24CB25CE06C4000EA1C447EF393 +:10E0E0004C01F4F2EB0124F2EB012CF2EB0134F2DF +:10E0F000EB0144F2EB013CF2EB014CD80A0000EDDD +:10E10000BC00105F2C5C5C5EFC0000EBCD4080FE30 +:10E110007C18507807A1C7E1BC0000FEB0FFF2D325 +:10E1200003350BEA1BAA00FE7A1818950BFE7B1824 +:10E130005097075C5C580CC020D503E3CF8080D497 +:10E1400001E1BC0000FEB0FFDDD303364BEA1B004B +:10E1500018B8001302F1EC560401C500008001015B :10E16000C6000100004701010D02F1EC560300005A -:10E17000000100201D3007189B5C5B201BC0602045 -:10E180001BC060201BC0E0C0583017C0B83027C08B -:10E19000983037500CE06CF0F8EA1C8001FEB0605B -:10E1A000A50E9C5C6C2FFDE3CD808080008774EB16 -:10E1B000CD40C018961697301C0F8BF60B1068ECEC -:10E1C0000B0B0C0F8BF60B10680C0BB69C302C0F46 -:10E1D0008BF60B10680C0BB6ACE06B2C54EA1B00F2 -:10E1E00000F72C0000CC5F0F8BF60B10681606AC06 -:10E1F000CC0F8C2FFCAE8CCB4FE3CF80C00000D473 -:10E2000001300CC068F20C0029F34B00982FFCE0A1 -:10E21000690764EA190000300B589CCF55E06C0880 -:10E22000F0EA1C0000991BF34B00FC364A930A935A -:10E230001AFC1A4140932AFC1A3E80933A934A935F -:10E240005A936A937AE06A3333EA1A3EB3938A3078 -:10E250005A939A93AA300AC068F20A0028F14B0038 -:10E26000982FFA589ACFA5992B993B994B129CFE5F -:10E270003CFEF0002EA5001302F1EC560401C6008E +:10E17000000100AA00FE7A1818950B301BFE7A18D1 +:10E1800064950B5C5C580CC020D503D80A0000EBEA +:10E19000CD4080FE7C18647807A1C7E1BC0000FE7A +:10E1A000B0FFC2D303364BEA1BAA00FE7A181895BB +:10E1B0000BFE7B186497075C5C580CC020D503E30A +:10E1C000CF8080300CE06B2C50EA1B0000B68C5ED8 +:10E1D000FF0000EBCD4080201D3007189B5C5B20CA +:10E1E0001BC060201BC060201BC0E0C0583017C09F +:10E1F000B83027C0983037500CE06CF164EA1C80CE +:10E2000001FEB060730E9C5C6C2FFDE3CD808080BE +:10E21000008774EBCD40C018961697301C0F8BF614 +:10E220000B1068EC0B0B0C0F8BF60B10680C0BB67D +:10E230009C302C0F8BF60B10680C0BB6ACE06B2CE3 +:10E2400050EA1B0000F72C0000CC5F0F8BF60B1080 +:10E25000681606ACCC0F8C2FFCAE8CCB4FE3CF8076 +:10E26000C00000D401300CC068F20C0029F34B0050 +:10E27000982FFC000AD6001302F1EC560401C600E8 :10E2800000800101C700010000F8BA010D02F1ECA5 -:10E2900056030000000100300A189E30F8BD2A2005 -:10E2A00018CFE19D0A129C2D4CB91B992A129CFE95 -:10E2B0003CFEF0F34C010CD80A0000782CB98CF924 -:10E2C000DCC0015EFC0000782CBD8CF9DCC0015E76 -:10E2D000FC0000D421201D18951694149712963036 -:10E2E0000C500C0A9CCF1FC0F0FEB05EF5301BFE38 -:10E2F000B061E8400B2FFB500B400CE04C07D0CF37 -:10E3000023300CC0E8A964A1A4EB440040B1678BA2 -:10E31000070A9CCD4FCFE10C9B0A9CC08C301C2F70 -:10E32000FDD8228000853C80008B28EBCD40C018B2 -:10E330009616970C9CCC3FCFE18D170C9CCBFFCF52 -:10E34000E1E3CF80C00000998B5EFDD401E06C2C2E -:10E3500060EA1C0000780CF93C0221580CC021D85E -:10E360000AC07CD8020000D401300CC0ACDA0AE04C -:10E370006B2C68EA1B0000F72C00005EFC0000E03C -:10E380006B2C68EA1B0000B68C5EFDD401189A3035 -:10E390001C1789F2091068006AD1001302F1EC56CB +:10E2900056030000000100E0690760EA1900003041 +:10E2A0000B589CCF55E06C08ECEA1C0000991BF35E +:10E2B0004B00FC364A930A931AFC1A4140932AFCFD +:10E2C0001A3E80933A934A935A936A937AE06A3358 +:10E2D00033EA1A3EB3938A305A939A93AA300AC00B +:10E2E00068F20A0028F14B00982FFA589ACFA599A6 +:10E2F0002B993B994B129CFE3CFEF0300A189E3045 +:10E30000F8BD2A2018CFE19D0A129C2D4CB91B990B +:10E310002A129CFE3CFEF0F34C010CD80A00007857 +:10E320002CB98CF9DCC0015EFC0000782CBD8CF9A6 +:10E33000DCC0015EFC0000D421201D189516941449 +:10E34000971296300C500C0A9CCF1FC0F0FEB05EA6 +:10E35000C3301BFEB061B6400B2FFB500B400CE0EE +:10E360004C07D0CF23300CC0E8A964A1A4EB440033 +:10E3700040B1678B070A9CCD4FCFE10C9B0A9CC034 +:10E380008C301C2FFDD8228000853C80008B28EB30 +:10E39000CD40C0189616970058D0001302F1EC56E5 :10E3A0000401C70000800101C8000100006F510195 -:10E3B0000D02F1EC56030000000100F4090B0C17EC -:10E3C00089F20910681409B29C311C1789F20910EE -:10E3D000681409B2ACE06C2C69EA1C0000F9290051 -:10E3E00000178CF80C1068180AB4C9178C2FFCB6EB -:10E3F0008CCCDFD80A0000E06A07FF7809F5E90352 -:10E40000491439C0B1780BF7DBC014C051781C58DF -:10E410000CC0215EFF302C5EFC780AF5DAC01FC00C -:10E4200051781A580AC0215EFDE06A043314291697 -:10E430001958195E5D300AE0490035C075780BE661 -:10E440001B8000990B991A5EFE3018F7D9C005F0B1 -:10E450000B09482018A789C092780B1668105B99A1 -:10E460000B781B1648991AC058781B1668105B99D0 -:10E470001B58083FFCF9BC00005EFCFE792C00F83C -:10E480000A1605A97A120A3019F9DCC005F20C093E -:10E4900049EDBB0002C042F5490074C038F549009F -:10E4A00078EDBB0007C1B2169CE21C0180C060F58C -:10E4B0004900A8F54900B8C128169C0092F3001342 +:10E3B0000D02F1EC560300000001000C9CCC3FCF95 +:10E3C000E18D170C9CCBFFCFE1E3CF80C00000991B +:10E3D0008B5EFDD401E06C2C5CEA1C0000780CF92B +:10E3E0003C0221580CC021D80AC07CD8020000D4BD +:10E3F00001300CC0ACDA0AE06B2C64EA1B0000F7B9 +:10E400002C00005EFC0000E06B2C64EA1B0000B6F0 +:10E410008C5EFDD401189A301C1789F2091068F43B +:10E42000090B0C1789F20910681409B29C311C17EA +:10E4300089F20910681409B2ACE06C2C65EA1C0082 +:10E4400000F9290000178CF80C1068180AB4C917D5 +:10E450008C2FFCB68CCCDFD80A0000FE792C00F89B +:10E460000A1605A97A120A3019F9DCC005F20C095E +:10E4700049EDBB0002C042F5490074C038F54900BF +:10E4800078EDBB0007C1B2169CE21C0180C060F5AC +:10E490004900A8F54900B8C128169CE21C0280C0BA +:10E4A00060F54900A4F54900B8C098169CE21C0329 +:10E4B00080C050F54900A8F54900B400FC2A0013BB :10E4C00002F1EC560401C80000800101C9000100FE -:10E4D000002FEA010D02F1EC56030000000100E2FA -:10E4E0001C0280C060F54900A4F54900B8C0981628 -:10E4F0009CE21C0380C050F54900A8F54900B4ED2A -:10E50000BB0000C0C2EDBB0001C042F5490054C0D1 -:10E5100038F5490058F5490044C038F54900489598 -:10E52000195EFD580C5E0DF8FBFFFC204C588B5E0D -:10E530003DF5DBC0025E1DE06A4EACEA1A000074D5 -:10E54000195809C030123CC0529919951CC1A81025 -:10E550009972185808C0301838CFB37208120810D2 -:10E560003C5E3D1838C061720C160C930C129CC0B6 -:10E570009872185808C040180B16385E3D991893C9 -:10E580001C781B580B5E0D7809180916395E1D3072 -:10E59000099509760A780914099909761B991B5E71 -:10E5A000FD0000EBCD40803007E06C2F98EA1C00A6 -:10E5B00000F92B0000580BC061FEB0E3D3581CC01B -:10E5C0002530170E9C5C6CE3CD8080EBCD40803015 -:10E5D00007E06B2F98EA1B0000F72A0000580A009A -:10E5E000B7CD001302F1EC560401C900008001010F +:10E4D000002FEA010D02F1EC56030000000100EDEF +:10E4E000BB0000C0C2EDBB0001C042F5490054C0F2 +:10E4F00038F5490058F5490044C038F549004895B9 +:10E50000195EFDE06A07FF7809F5E903491439C08F +:10E51000B1780BF7DBC014C051781C580CC0215ED9 +:10E52000FF302C5EFC780AF5DAC01FC051781A580B +:10E530000AC0215EFDE06A04331429161958195ED9 +:10E540005D300AE0490035C075780BE61B80009904 +:10E550000B991A5EFE3018F7D9C005F00B09482058 +:10E5600018A789C092780B1668105B990B781B1658 +:10E5700048991AC058781B1668105B991B58083FB9 +:10E58000FCF9BC00005EFC580C5E0DF8FBFFFC20A3 +:10E590004C588B5E3DF5DBC0025E1DE06A4EA8EA7A +:10E5A0001A000074195809C030123CC052991995CC +:10E5B0001CC1A8109972185808C0301838CFB3720F +:10E5C000081208103C5E3D1838C061720C160C939E +:10E5D0000C129CC09872185808C040180B163800CE +:10E5E0002932001302F1EC560401C9000080010138 :10E5F000CA00010000BA21010D02F1EC560300002F -:10E60000000100C080E04C00C8C151FEB0E3C21858 -:10E6100097C118E04C00C8C071FEB0E3B5582CC0DB -:10E62000A53017C088E04C00C4C051FEB0E3AC5820 -:10E630001CCF840E9C5C6CE3CD80808001918C802B -:10E64000019180EBCD4080E06743E0EA170000E0F5 -:10E65000A007628FBC300CC088F80B10340E0B2D55 -:10E660000BEE0C092B2FFC58BCCF85E0A00672FEE8 -:10E67000B0A0DCE0A0064AFEB09EBCE0A00676306A -:10E680000CC0C83FFB6E9A180A2EEAB48B6E9A181B -:10E690000A2ECAB48B2FFC5C6C582CCF45E3CF807C -:10E6A00080D7038001D9108001D74C80010C2480D1 -:10E6B00001D704800107EC8001D764EBCD4080E0F6 -:10E6C000674A50EA170000FEB0EEB2EF4C0104308A -:10E6D0000CC068EE0C002AF54B008C2FFC300B5858 -:10E6E0009CCF95EF4B0100EF4B00FCFEB0EE8AEFA4 -:10E6F0004C0118E06C01F48F0C8F1CFC1C41408F06 -:10E700002CE06C00F95E001302F1EC560401CA0023 +:10E600000001005E3D9918931C781B580B5E0D7835 +:10E6100009180916395E1D30099509760A7809141A +:10E62000099909761B991B5EFD0000EBCD408030F7 +:10E6300007E06C2F94EA1C0000F92B0000580BC077 +:10E6400061FEB0E3D3581CC02530170E9C5C6CE310 +:10E65000CD8080EBCD40803007E06B2F94EA1B002B +:10E6600000F72A0000580AC080E04C00C8C151FEE3 +:10E67000B0E3C21897C118E04C00C8C071FEB0E307 +:10E68000B5582CC0A53017C088E04C00C4C051FE5E +:10E69000B0E3AC581CCF840E9C5C6CE3CD808080D2 +:10E6A0000191F0800191E4EBCD4080E06743DCEA2A +:10E6B000170000E0A007668FBC300CC088F80B1074 +:10E6C000340E0B2D0BEE0C092B2FFC58BCCF85E024 +:10E6D000A00676FEB0A09EE0A0064EFEB09E7EE0B4 +:10E6E000A00686300CC0C83FFB6E9A180A2EEAB40A +:10E6F0008B6E9A180A2ECAB48B2FFC5C6C582CCFE8 +:10E7000045E3CF0064A1001302F1EC560401CA00F6 :10E7100000800101CB00010000059A010D02F1EC1F -:10E7200056030000000100999AEA1C3F198F3C8FA4 -:10E730004C8F5CFC1C3E808F6C8F7CE06C3333EA2A -:10E740001C3EB38F8C307C8F9C8FACE3CF8080805D -:10E7500001A8288001A7FCF6091605E068E754EA3D -:10E76000188001F00900387018F7DBC005F00B09BC -:10E770002CFE7C1000F809002CE06B4000EA1B80A6 -:10E7800000580AC081E06A4128EA1A8000142B99D7 -:10E790000B5EFD581AC091E06A4136EA1A800014F7 -:10E7A0002BBFAB990B5EFD582AC091E06A4144EA49 -:10E7B0001A8000142BBFBB990B5EFDE06A4152EA40 -:10E7C0001A8000142BEA1BC000990B5EFD00005854 -:10E7D0001C5E5DE06B2BF0EA1B0000962A180AB65F -:10E7E0002A962CE04C03E85E5D962CE02C03E8B6FC -:10E7F0002CF72C00022FFCB6ACF72C0002E04C00EA -:10E800003C5E5DF72C000223CCB6ACF72C00012F48 -:10E81000FCB69CF72C0001E04C003C5E5DF72C0040 -:10E820000123CCB69CF72C00EB7E001302F1EC56D2 +:10E72000560300000001008080D7038001D97C805F +:10E7300001D7B880010C0C8001D770800107D4800C +:10E7400001D7E8EBCD4080E0674A4CEA170000FEB5 +:10E75000B0EEB2EF4C0104300CC068EE0C002AF5AC +:10E760004B008C2FFC300B589CCF95EF4B0100EFEA +:10E770004B00FCFEB0EE8AEF4C0118E06C01F48F08 +:10E780000C8F1CFC1C41408F2CE06C999AEA1C3FBA +:10E79000198F3C8F4C8F5CFC1C3E808F6C8F7CE013 +:10E7A0006C3333EA1C3EB38F8C307C8F9C8FACE390 +:10E7B000CF80808001A88C8001A860F6091605E052 +:10E7C00068E7C0EA188001F00900387018F7DBC06C +:10E7D00005F00B092CFE7C1000F809002CE06B40C2 +:10E7E00000EA1B8000580AC081E06A4128EA1A80CA +:10E7F00000142B990B5EFD581AC091E06A4136EA6D +:10E800001A8000142BBFAB990B5EFD582AC091E013 +:10E810006A4144EA1A8000142BBFBB990B5EFDE0ED +:10E820006A4152EA1A80000009FF001302F1EC5617 :10E830000401CB0000800101CC0001000011B201F5 -:10E840000D02F1EC5603000000010000002FFCB6A1 -:10E850008CF72C0000598C5E5D300CB68C5EFDD0C0 -:10E8600021E06CF220EA1C8001190B190A1909F742 -:10E87000EA1008F1D8C002C221F2081603C1F0F371 -:10E88000D9C003143BC080B707B5262018CFD15894 -:10E8900009C171C0C830063007B5262018CFC1584D -:10E8A00009C050300B14CB2019CFD1E06BF238EAFD -:10E8B0001B8001163CCDA3D0225EFD143BCF301748 -:10E8C0003814C82019CF30CFCB0000D401300AC192 -:10E8D00038F20A00299358F3480154F3480294F39C -:10E8E0004803D4F3480514F3480654F3480794F357 -:10E8F0004808D42FFAE06909C4EA1900003008E09A -:10E900004A0050CE75E06A0038EA1A00003FFE95D2 -:10E910000E951E952895589548F3480A20F3480A05 -:10E920001CF3480A18749EF34E0A1495EC95FB9359 -:10E9300048D80AEBCD4080E0672C54EA170000E08D -:10E94000A006148F2CFEB05C218F1C003D520013DA +:10E840000D02F1EC56030000000100142BEA1BC07E +:10E8500000990B5EFD0000581C5E5DE06B2BECEA3E +:10E860001B0000962A180AB62A962CE04C03E85E94 +:10E870005D962CE02C03E8B62CF72C00022FFCB69A +:10E88000ACF72C0002E04C003C5E5DF72C0002234C +:10E89000CCB6ACF72C00012FFCB69CF72C0001E0A5 +:10E8A0004C003C5E5DF72C000123CCB69CF72C009D +:10E8B000002FFCB68CF72C0000598C5E5D300CB636 +:10E8C0008C5EFDD021E06CF28CEA1C8001190B19E2 +:10E8D0000A1909F7EA1008F1D8C002C221F2081695 +:10E8E00003C1F0F3D9C003143BC080B707B526209D +:10E8F00018CFD15809C171C0C830063007B52620DD +:10E9000018CFC15809C050300B14CB2019CFD1E01B +:10E910006BF2A4EA1B8001163CCDA3D0225EFD144D +:10E920003BCF30173814C82019CF30CFCB0000D4DC +:10E9300001300AC138F20A00299358F3480154F310 +:10E94000480294F34803D4F348051400FFFC001375 :10E9500002F1EC560401CC0000800101CD00010061 -:10E96000007B0A010D02F1EC560300000001006E6D -:10E970002CE06BD228EA1B8001F94B0048E06BD8F1 -:10E980009CEA1B8001F94B004CE06BD354EA1B80DE -:10E9900001F94B0050E06BD5D0EA1B8001F94B0028 -:10E9A00054E06BC63CEA1B8001F94B0058E3CF9062 -:10E9B00080D7038001D91C8000853CEBCD4080E0EE -:10E9C000672F90EA170000E0A005E28F1CFEB05B05 -:10E9D000EF8F0C6E1CE06BD2A0EA1B8001F94B019B -:10E9E00088E06BD830EA1B8001F94B018CE06BC2E8 -:10E9F00094EA1B8001F94B0190E06BC9C4EA1B80CB -:10EA000001F94B0194E06BC3F8EA1B8001F94B015B -:10EA100098E3CF9080D7038001D91C8000853CE02B -:10EA20006C4000EA1C8000E3BC00015EFD0000D4E5 -:10EA300001CF7F300BC208E0694530EA19800078C9 -:10EA40001CF80A09292FFAE06CE754EA1C8001F847 -:10EA50000B003C7809123ACF03E06A4128EA1A8099 -:10EA600000E06C4000EA1C8000181AFE7C100000D8 -:10EA700073BE001302F1EC560401CD0000800101C9 +:10E96000007B0A010D02F1EC56030000000100F3E8 +:10E97000480654F3480794F34808D42FFAE069098D +:10E98000C0EA1900003008E04A0050CE75E06A0085 +:10E9900028EA1A00003FFE950E951E952895589579 +:10E9A00048F3480A20F3480A1CF3480A18749EF3F7 +:10E9B0004E0A1495EC95FB9348D80AEBCD4080E0C5 +:10E9C000672C50EA170000E0A006188F2CFEB05B01 +:10E9D000EF8F1C6E2CE06BD34CEA1B8001F94B00CF +:10E9E00048E06BD908EA1B8001F94B004CE06BD47E +:10E9F00038EA1B8001F94B0050E06BD620EA1B80FF +:10EA000001F94B0054E06BC6A0EA1B8001F94B00F2 +:10EA100058E3CF9080D7038001D9888000853CEBF4 +:10EA2000CD4080E0672F8CEA170000E0A005E68F5C +:10EA30001CFEB05BBD8F0C6E1CE06BD388EA1B80A4 +:10EA400001F94B0188E06BD89CEA1B8001F94B016E +:10EA50008CE06BC2F8EA1B8001F94B0190E06BCAB5 +:10EA600028EA1B8001F94B0194E06BC45CEA1B00AF +:10EA700006AD001302F1EC560401CD000080010147 :10EA8000CE00010000EEC1010D02F1EC56030000C2 -:10EA9000000100F80B092A2FFB59FBC032300ACEC7 -:10EAA0006BD80AD42118961697E06B07FF6E0CF707 -:10EAB000EC034C3005163CC0C1AC056E0CF9DCC053 -:10EAC00014C0416E1C580CC030302CD822DA2A58A1 -:10EAD0001CC0640E9CE0A001D3581CC0C46E0BE4A3 -:10EAE0001B800FEA1B3FE08F0BE02C03FEAC0C3FBA -:10EAF000FCD822AC05D82A8001D1E8D401E0A005D9 -:10EB000059E06B2FE4EA1B0000970CE06BD930EA68 -:10EB10001B8001F94B0088E06BD93CEA1B8001F9AE -:10EB20004B008CE06BD958EA1B8001F94B0090E058 -:10EB30006BD954EA1B8001F94B0094E06BD94CEA85 -:10EB40001B8001F94B0098DA0AD7038001D91CD544 -:10EB5000A1E067C83CEA178001301BFACCFFFC5DDE -:10EB6000175C7C201CC190201CC170300BFACCFFBC -:10EB7000FC5D17C120401CA17CFAE80004300AC0EB -:10EB800052300BEA1BBFF0C048300BEA1B3FF0FECF -:10EB9000B0C57E008A39001302F1EC560401CE00A4 +:10EA90000001008001F94B0198E3CF9080D70380FB +:10EAA00001D9888000853CE06C4000EA1C8000E3CE +:10EAB000BC00015EFD0000D401CF7F300BC208E036 +:10EAC000694530EA198000781CF80A09292FFAE014 +:10EAD0006CE7C0EA1C8001F80B003C7809123ACFC1 +:10EAE00003E06A4128EA1A8000E06C4000EA1C80DA +:10EAF00000181AFE7C1000F80B092A2FFB59FBC0E6 +:10EB000032300ACE6BD80AD42118961697E06B07DC +:10EB1000FF6E0CF7EC034C3005163CC0C1AC056E23 +:10EB20000CF9DCC014C0416E1C580CC030302CD81D +:10EB300022DA2A581CC0640E9CE0A001F7581CC0C1 +:10EB4000C46E0BE41B800FEA1B3FE08F0BE02C032D +:10EB5000FEAC0C3FFCD822AC05D82A8001D294D55B +:10EB6000A1E067C924EA178001301BFACCFFFC5DE5 +:10EB7000175C7C201CC190201CC170300BFACCFFAC +:10EB8000FC5D17C120401CA17CFAE80004300AC0DB +:10EB900052300B00927A001302F1EC560401CE00C1 :10EBA00000800101CF00010000517A010D02F1EC5B -:10EBB00056030000000100FAEB0004FAEA0004D852 -:10EBC00062D703800159F8D401318A300B300CFE32 -:10EBD000B036AA582CC031302CD802E0A003423005 -:10EBE0000CE06B3089EA1B0000B68CDA0AD7038090 -:10EBF00001D5A8D401318A300B301CFEB0369458B0 -:10EC00003CC031303CD802300CE06B3089EA1B004C -:10EC100000B68CDA0AD70380003C6CD401E0A00473 -:10EC2000DBE06B2F8CEA1B0000970CE06BD930EA1D -:10EC30001B8001F94B0148E06BD93CEA1B8001F9CC -:10EC40004B014CE06BD958EA1B8001F94B0150E0B5 -:10EC50006BD954EA1B8001F94B0154E06BD94CEAA3 -:10EC60001B8001F94B0158DA0AD7038001D91CD463 -:10EC700001E0A004B1E06B30C4EA1B0000970CE097 -:10EC80006BD930EA1B8001F94B00C8E06BD93CEA34 -:10EC90001B8001F94B00CCE06BD958EA1B8001F9CD -:10ECA0004B00D0E06BD954EA1B8001F94B00D4E053 -:10ECB0006BD94CEA1B800100557F001302F1EC5622 +:10EBB00056030000000100EA1BBFF0C048300BEA1A +:10EBC0001B3FF0FEB0C580FAEB0004FAEA0004D85F +:10EBD00062D70380015A0CD401E0A00533E06B2F0B +:10EBE000E0EA1B0000970CE06BD99CEA1B8001F95E +:10EBF0004B0088E06BD9A8EA1B8001F94B008CE040 +:10EC00006BD9C4EA1B8001F94B0090E06BD9C0EAD4 +:10EC10001B8001F94B0094E06BD9B8EA1B8001F925 +:10EC20004B0098DA0AD7038001D988D401318A30A1 +:10EC30000B300CFEB0D1F4582CC031302CD802E08F +:10EC4000A00338300CE06B3085EA1B0000B68CDA8C +:10EC50000AD7038001D5F8D401318A300B301CFE6D +:10EC6000B0D1DE583CC031303CD802300CE06B30C3 +:10EC700085EA1B0000B68CDA0AD70380017364D4DE +:10EC800001E0A004DFE06B2F88EA1B0000970CE096 +:10EC90006BD99CEA1B8001F94B0148E06BD9A8EACB +:10ECA0001B8001F94B014CE06BD9C4EA1B8001F9D0 +:10ECB0004B0150E06BD9C000079B001302F1EC56EA :10ECC0000401CF0000800101D000010000411201C9 -:10ECD0000D02F1EC56030000000100F94B00D8DAF8 -:10ECE0000AD7038001D91CEBCD40801897FEB05A9B -:10ECF000955817C0905827C0B05837C0D05877C023 -:10ED0000F0E3CF9080FEB05D77E3CF9080FEB05D02 -:10ED100077E3CF9080FEB05D61E3CF9080FEB05D81 -:10ED200067E3CF9080D7038000853C80008B1880FC -:10ED3000008B2080008AFC80008B10D401E0A004AE -:10ED40005DE06B30C0EA1B0000970CE06BD930EA45 -:10ED50001B8001F94B0168E06BD93CEA1B8001F98B -:10ED60004B016CE06BD958EA1B8001F94B0170E054 -:10ED70006BD954EA1B8001F94B0174E06BD94CEA62 -:10ED80001B8001F94B0178DA0AD7038001D91CD422 -:10ED900001E06C13ECEA1C0000300B990B991B99F5 -:10EDA0002B300A995AE0691424EA1900003058936C -:10EDB00038993A994A996B997B998B999B99AB9918 -:10EDC000BB99CA99DA129C2E4C934C129C2E4C186B -:10EDD0009E32D8BD2A2018CFE19D0A00EC1A0013FC +:10ECD0000D02F1EC56030000000100EA1B8001F96F +:10ECE0004B0154E06BD9B8EA1B8001F94B0158DAAB +:10ECF0000AD7038001D988D401E0A004B5E06B30C5 +:10ED0000C0EA1B0000970CE06BD99CEA1B8001F95C +:10ED10004B00C8E06BD9A8EA1B8001F94B00CCE09E +:10ED20006BD9C4EA1B8001F94B00D0E06BD9C0EA73 +:10ED30001B8001F94B00D4E06BD9B8EA1B8001F9C4 +:10ED40004B00D8DA0AD7038001D988EBCD40801870 +:10ED500097FEB05A635817C0905827C0B05837C0B4 +:10ED6000D05877C0F0E3CF9080FEB05D45E3CF9000 +:10ED700080FEB05D45E3CF9080FEB05D2FE3CF9085 +:10ED800080FEB05D35E3CF9080D7038000853C8066 +:10ED9000008B1880008B2080008AFC80008B10D4B0 +:10EDA00001E0A00461E06B30BCEA1B0000970CE0BE +:10EDB0006BD99CEA1B8001F94B0168E06BD9A8EA8A +:10EDC0001B8001F94B016CE06BD9C4EA1B8001F98F +:10EDD0004B0170E06BD9C0EA1B8001007C57001327 :10EDE00002F1EC560401D00000800101D1000100C5 -:10EDF0000055AF010D02F1EC56030000000100B315 -:10EE00001B932AD80A0000D401189A301C1789F2E3 -:10EE1000091068F4090B0C1789F20910681409B27B -:10EE20009C318C1789F20910681409B2ACE06C307F -:10EE30007CEA1C0000F9290000178CF80C106818F7 -:10EE40000AB4C9178C2FFCB68CFEB0EF07D80A8025 -:10EE500001AF58D401FB2C0005592CC071FB3B00BD -:10EE60000C300CFEB079ACD80A593CC071FB3B00A9 -:10EE70000D301CFEB079A4D80A594CC071FB3B0080 -:10EE80000E302CFEB0799CD80A595CC051FB3C0076 -:10EE90000CFEB079A5D80A8000C4BC8000C4DCD4C4 -:10EEA00001E0A003BDE06B2C34EA1B0000970CE0EE -:10EEB0006BD930EA1B800199ABE06BD93CEA1B802F -:10EEC0000199BBE06BD958EA1B800199CBE06BD963 -:10EED00054EA1B800199DBE06BD94CEA1B80019955 -:10EEE000EBDA0A8001D91C780AE61A8000301B7818 -:10EEF00009F3D9C0149909C0D178195809C0A100E3 -:10EF0000AE72001302F1EC560401D1000080010141 +:10EDF0000055AF010D02F1EC56030000000100F9CF +:10EE00004B0174E06BD9B8EA1B8001F94B0178DA49 +:10EE10000AD7038001D988D401E06C13E8EA1C000A +:10EE200000300B990B991B992B300A995AE0691401 +:10EE300020EA19000030589338993A994A996B9909 +:10EE40007B998B999B99AB99BB99CA99DA129C2EA5 +:10EE50004C934C129C2E4C189E32D8BD2A2018CFB1 +:10EE6000E19D0AB31B932AD80A0000D401189A30F6 +:10EE70001C1789F2091068F4090B0C1789F20910A4 +:10EE8000681409B29C318C1789F20910681409B210 +:10EE9000ACE06C3078EA1C0000F9290000178CF80F +:10EEA0000C1068180AB4C9178C2FFCB68CFEB0EF92 +:10EEB00007D80A8001AFBCD401FB2C0005592CC037 +:10EEC00071FB3B000C300CFEB0797AD80A593CC07B +:10EED00071FB3B000D301CFEB07972D80A594CC052 +:10EEE00071FB3B000E302CFEB0796AD80A595CC029 +:10EEF00051FB3C000CFEB07973D80A8000C4BC0002 +:10EF00007A3C001302F1EC560401D10000800101AB :10EF1000D200010000C064010D02F1EC56030000B4 -:10EF2000000100C1087819A178F1E913F89908A146 -:10EF3000799919201B7808EDB80014CF52F3D8C086 -:10EF40001499097809124A990A5EFBD401302A30D3 -:10EF50001B300CFEB0351E582CC031302CD802307E -:10EF60002A305B300CFEB03515582CCF80FEB062D5 -:10EF700007300CE06B2C54EA1B0000B68CDA0A80D8 -:10EF8000003C6C80009658D401310A301B300CFED6 -:10EF9000B03500582CC031302CD802E0A002E6DA9F -:10EFA0000AD7038001D844D401310A301B301CFE3B -:10EFB000B034F0583CC031303CD802DA0AD7038074 -:10EFC000003C6CD4019ADCE06B00EAEA1B0000B65E -:10EFD0001C582CC055FE3C0002B60CC038300CB694 -:10EFE0000C30CAFB3B00085C6B300CFEB034D258CE -:10EFF0003CC031302CD802DA0AD70380003C6CD4F4 -:10F0000001317A300B300CFEB034C4582CC0313092 -:10F010002CD802E0A002B4DA0AD7038001D858D471 -:10F0200001317A001AD0001302F1EC560401D2002B +:10EF20000001008000C4DCD401E0A003C1E06B2C30 +:10EF300030EA1B0000970CE06BD99CEA1B8001991A +:10EF4000ABE06BD9A8EA1B800199BBE06BD9C4EA9E +:10EF50001B800199CBE06BD9C0EA1B800199DBE0F3 +:10EF60006BD9B8EA1B800199EBDA0A8001D988E0F5 +:10EF70006B0758EA1B0000970CE06C06D8EA1C00EF +:10EF800000300A300BB91B992A189B2E0B994B188D +:10EF90009B2C8B995B189B2B0B996B189B298B993E +:10EFA0007B300BF96B000CE06B00FFF96B000D2F51 +:10EFB0002CB88B5EFD0000780AE61A8000301B78C2 +:10EFC00009F3D9C0149909C0D178195809C0A1C151 +:10EFD000087819A178F1E913F89908A1799919200D +:10EFE0001B7808EDB80014CF52F3D8C014990978F3 +:10EFF00009124A990A5EFBD401310A301B300CFE1B +:10F00000B0D044582CC031302CD802E0A002E4DA51 +:10F010000AD7038001D8B0D401310A301B301CFE5E +:10F02000B0D0340055E9001302F1EC560401D200CF :10F0300000800101D3000100007FDF010D02F1EC2F -:10F0400056030000000100300B301CFEB034B458F1 -:10F050003CC031303CD802DA0AD70380003C6CD483 -:10F0600001307A300B300CFEB034A6582CC0313051 -:10F070002CD8021BCCE0A0007FDA0A8001D42CD46B -:10F0800001307A300B301CFEB03496583CC0313021 -:10F090003CD802DA0AD70380003C6CD40120EDFA98 -:10F0A000CCFFF4FEB03502FACCFFE8780A500A78BB -:10F0B0001A501A782A502AFEB061BCE06B2C54EA30 -:10F0C0001B0000B68C2F2DDA0AD70380003D60802C -:10F0D0000096E8D4A1201D1897500CFAC9FFF81625 -:10F0E0009A1A9BE06CD8F8EA1C8001FEB0690830DF -:10F0F0000B400AB48BF8071760C036400C18270E77 -:10F100009C2FFDD8A2D7038000A5B4E06C1E60EA56 -:10F110001C0000300BF94B0938B86BB87B305AF93A -:10F120004A09B0F94B0944300AF94A095CF94A091D -:10F130008C998A992AF95B00FAF95B00FC5EFD481C -:10F140008CE3BC0001F01F009CCE001302F1EC56D2 +:10F0400056030000000100583CC031303CD802DAC1 +:10F050000AD70380017364D401317A300B300CFE7F +:10F06000B0D026582CC031302CD802E0A002D0DA23 +:10F070000AD7038001D8C4D401317A300B301CFE8A +:10F08000B0D016583CC031303CD802DA0AD70380E1 +:10F09000017364D401302A301B300CFEB0D0085804 +:10F0A0002CC031302CD802302A305B300CFEB0CF6F +:10F0B000FF582CCF80FEB06175300CE06B2C50EA0D +:10F0C0001B0000B68CDA0A8001736480009658D465 +:10F0D000019ADCE06B00DAEA1B0000B61C582CC079 +:10F0E00055FE3C0002B60CC038300CB60C30CAFBE2 +:10F0F0003B00085C6B300CFEB0CFDA583CC03130BE +:10F100002CD802DA0AD70380017364D401307A3034 +:10F110000B300CFEB0CFCC582CC031302CD8021B99 +:10F12000CCFEB0FF39DA0A8001D24CD401307A30FB +:10F130000B301CFEB0CFBC583CC031303CD802DA9A +:10F140000AD70380017364009F84001302F1EC5618 :10F150000401D30000800101D4000100006BF7011D -:10F160000D02F1EC56030000000100000AC030F06F -:10F170001F0009D743F01F0005F01F0005E9B0008C -:10F1800002CFEB800040008001A0AC8001D9048058 -:10F1900000EF148001CC14E06B0008EA1B0000971C -:10F1A0001CE06C06E8EA1C0000300A300BB91B9921 -:10F1B0002A189B2E4B993B189B2CCB994B189B2BB9 -:10F1C0004B995B189B29CB996B5EFDFE7B12005C13 -:10F1D0003CF60C002B763CFE7B1100F60C032B5802 -:10F1E0000B5E0DF60A1200E06BE754EA1B8001F695 -:10F1F0000C003B761C5C3AF80A002C79FC5EFC148F -:10F200009C169AE06B07FFF7EA0349F5DAC014167B -:10F2100039C0A05809C0205EFE580AC031580C5EA3 -:10F220000D3FEC5EFC580AC031580C5E0F302C5E6E -:10F23000FC0000EBCD4080E0672FDEEA17000030D5 -:10F240003A0E9B300CE06943E0EA19000072297223 -:10F25000B972895D19C051300CAE8CAE9CAEACE376 -:10F26000CF8080EBCD4080340C3007001B0F0013A3 +:10F160000D02F1EC56030000000100D4A1201D188F +:10F1700097500CFAC9FFF8169A1A9BE06CD964EA0A +:10F180001C8001FEB068CE300B400AB48BF8071724 +:10F1900060C036400C18270E9C2FFDD8A2D70380E4 +:10F1A00000A5B4D40120EDFACCFFF4FEB0D00CFAE7 +:10F1B000CCFFE8780A500A781A501A782A502AFEAA +:10F1C000B0614AE06B2C50EA1B0000B68C2F2DDAA0 +:10F1D0000AD70380017458800096E8FE7B12005C19 +:10F1E0003CF60C002B763CFE7B1100F60C032B58F2 +:10F1F0000B5E0DF60A1200E06BE7C0EA1B8001F619 +:10F200000C003B761C5C3AF80A002C79FC5EFCE0B2 +:10F210006C1E5CEA1C0000300BF94B0938B86BB867 +:10F220007B305AF94A09B0F94B0944300AF94A09C6 +:10F230005CF94A098C998A992AF95B00FAF95B0012 +:10F24000FC5EFD488CE3BC0001F01F000AC030F0FA +:10F250001F0009D743F01F0005F01F0005E9B000AB +:10F2600002CFEB800040008001A11000E3EF00130B :10F2700002F1EC560401D40000800101D500010028 -:10F2800000014F010D02F1EC5603000000010030B7 -:10F290000EA17A5CFB5CFE5CF7103EF2071300C027 -:10F2A00053101EEE090147A1AA201CCF310E991C54 -:10F2B00098E3CD80800000EBCD4080300CE06B46C1 -:10F2C00050EA1B0000970CE067466CEA170000FE4E -:10F2D000B0E9748F1C305C8F0CE3CF9080D7038033 -:10F2E00001A828E06B4EA8EA1B0000760C580CC061 -:10F2F000205EFDE06C4F98EA1C0000970CE06B5715 -:10F3000098EA1B0000E01BFFFC181B990B5EFCEB4E -:10F31000CD4080E067EA44EA1780010E9B300CFE86 -:10F32000B0EB002DC70E9B30ACFEB0EAFBE3CF8004 -:10F3300080D7038001AB90E06C2928EA1C000030E4 -:10F340000B990B991B992BE06C2934EA1C0000994E -:10F350001B992B993BB88B301BB89B5EFD0000308E -:10F360000CE06B2C54EA1B0000762A2BFA158A5805 -:10F370000AC0215EFDF72A0000580AC020301C5C3C -:10F380006C5EFC103AF20B1300C070F7E9100C0031 -:10F3900093FE001302F1EC560401D5000080010138 +:10F2800000014F010D02F1EC560300000001008067 +:10F2900001D9708000EEFC8001CC78149C169AE0B5 +:10F2A0006B07FFF7EA0349F5DAC0141639C0A05816 +:10F2B00009C0205EFE580AC031580C5E0D3FEC5E5E +:10F2C000FC580AC031580C5E0F302C5EFC0000EB7D +:10F2D000CD4080E0672FDAEA170000303A0E9B300D +:10F2E0000CE06943DCEA190000722972B972895D89 +:10F2F00019C051300CAE8CAE9CAEACE3CF8080EB2D +:10F30000CD4080340C3007300EA17A5CFB5CFE5C93 +:10F31000F7103EF2071300C053101EEE090147A17B +:10F32000AA201CCF310E991C98E3CD80800000EB01 +:10F33000CD4080300CE06B464CEA1B0000970CE09F +:10F34000674668EA170000FEB0E96A8F1C305C8FE0 +:10F350000CE3CF9080D7038001A88CE06B4EA4EA29 +:10F360001B0000760C580CC0205EFDE06C4F94EA48 +:10F370001C0000970CE06B5794EA1B0000E01BFF99 +:10F38000FC181B990B5EFCE06C2924EA1C000000B1 +:10F39000799A001302F1EC560401D50000800101B6 :10F3A000D6000100009484010D02F1EC5603000028 -:10F3B000000100F5EC101C104C5EFCF9DBB28B5B1D -:10F3C000FC5E1DF5EB10CC5EFC0000580C5E0DE001 -:10F3D0006B1E60EA1B0000781AF74A00C4780AF72F -:10F3E0004A00C0984CF75C00C85EFDFE7A2C00F81D -:10F3F0000B1605A97B140B301AF9DCC005F40C09B7 -:10F400004AF74A0048971A5EFD0000580C5E0DE06E -:10F410006B1E60EA1B0000F6FB0A08328AB709B9C6 -:10F4200028208ACFD1228C5EFD0000F7EC200AC094 -:10F4300060F7EC100AF40A15011C9FEA1AFF00F4A9 -:10F440000C011A5F3A147A1C9F0000D401E06C2C66 -:10F4500054EA1C0000781C2BDC198CFEB06018DA12 -:10F460000AD703800096D8EBCD40803007FEB05716 -:10F4700047C02030170E9C5C5CE3CD8080D70380B2 -:10F48000008548301A189BF7DBC005F40B094AFECB -:10F490007B2C00A59CA97C160CF94A00585EFDD473 -:10F4A00001E0A00111E06B2B08EA1B0000970CDAC9 -:10F4B0000AD70300A8CD001302F1EC560401D600D0 +:10F3B000000100300B990B991B992BE06C2930EA66 +:10F3C0001C0000991B992B993BB88B301BB89B5E96 +:10F3D000FD0000300CE06B2C50EA1B0000762A2B5D +:10F3E000FA158A580AC0215EFDF72A0000580AC0A3 +:10F3F00020301C5C6C5EFC103AF20B1300C070F7FE +:10F40000E9100CF5EC101C104C5EFCF9DBB28B5BC8 +:10F41000FC5E1DF5EB10CC5EFC0000580C5E0DE0B0 +:10F420006B1E5CEA1B0000781AF74A00C4780AF7E2 +:10F430004A00C0984CF75C00C85EFDFE7A2C00F8CC +:10F440000B1605A97B140B301AF9DCC005F40C0966 +:10F450004AF74A0048971A5EFD0000580C5E0DE01E +:10F460006B1E5CEA1B0000F6FB0A08328AB709B97A +:10F4700028208ACFD1228C5EFD0000F7EC200AC044 +:10F4800060F7EC100AF40A15011C9FEA1AFF00F459 +:10F490000C011A5F3A147A1C9F0000EBCD408030BB +:10F4A00007FEB0572DC02030170E9C5C5CE3CD806A +:10F4B00080D703004379001302F1EC560401D60013 :10F4C00000800101D7000100002B3F010D02F1EC8B -:10F4D000560300000001008001D910D401E06BEC5C -:10F4E00018EA1B8001303CFEB0EA40D80AD70380FE -:10F4F00001AB90D421201D189750071A9B301CE0B7 -:10F50000A00110CFBBD7038001D948D401E06BEB39 -:10F51000ACEA1B8001307CFEB0EA28D80AD7038011 -:10F5200001AB90D401E06BEC3CEA1B8001302CFE77 -:10F53000B0EA1CD80AD7038001AB90D401E06BEC91 -:10F5400084EA1B8001306CFEB0EA10D80AD7038031 -:10F5500001AB90D401E06BEBD0EA1B8001307CFE64 -:10F56000B0EA04D80AD7038001AB90D401E06BEC79 -:10F5700060EA1B8001301CFEB0E9F8D80AD703808E -:10F5800001AB90E06C13ECEA1C0000300B990B9976 -:10F590001B992B99CB99DB5EFD0000E06B2FDEEA17 -:10F5A0001B0000178AB88A179AB89A17ABB8AB5ED7 -:10F5B000FD0000E06B2BF0EA1B00003069172A18F1 -:10F5C000BA2029CFD1206C5EFC0000E0692BF0EA64 -:10F5D000190000B28CB29B00B079001302F1EC5616 +:10F4D0005603000000010080008548301A189BF791 +:10F4E000DBC005F40B094AFE7B2C00A59CA97C1609 +:10F4F0000CF94A00545EFDD401E06C2C50EA1C006B +:10F5000000781C2BDC198CFEB05FD4DA0AD703809C +:10F510000096D8301A189BF7DBC005F40B094AFE99 +:10F520007B2C00A59CA97C160CF94A00585EFDD4E2 +:10F5300001E0A00111E06B2B04EA1B0000970CDA3C +:10F540000AD7038001D97CD401E06BEC84EA1B80EC +:10F5500001303CFEB0EA3CD80AD7038001ABF4D4BA +:10F5600021201D189750071A9B301CE0A00110CFD6 +:10F57000BBD7038001D9B4D401E06BEC3CEA1B801B +:10F5800001307CFEB0EA24D80AD7038001ABF4D462 +:10F5900001E06BECA8EA1B8001302CFEB0EA18D821 +:10F5A0000AD7038001ABF4D401E06BEC18EA1B80AE +:10F5B00001307CFEB0EA0CD80AD7038001ABF4D44A +:10F5C00001E06BECF0EA1B8001306CFEB0EA00D881 +:10F5D0000AD7038001ABF4004E48001302F1EC5649 :10F5E0000401D70000800101D800010000BCD40153 -:10F5F0000D02F1EC56030000000100B2AA300CB27B -:10F600002C5EFD5C5BC0382FFC201A580A5E0D1979 -:10F61000891639CFA15EFCD021F80B0C06AD3B1644 -:10F620001C189A0C9BD0225EFC0000E06C00EAEAF9 -:10F630001C0000301BB81B300BB80B5EFF0000E055 -:10F640006C4B7CEA1C0000300B990B991B992B5ECC -:10F65000FD0000300CE06B4C80EA1B0000B68C977C -:10F660001C972C5EFD00005C5B198A163A5E0C2F1D -:10F67000FC580ACFB15EFD189BC0282FFB178A5893 -:10F680000ACFD1162C5EFCE06C1E60EA1C0000F86C -:10F69000FC09F45EFC0000300CE06B2C54EA1B000B -:10F6A00000B68C5EFF0000300CE06B4650EA1B0099 -:10F6B00000970C5EFF0000E06B2F98EA1B0000B67D -:10F6C0008C5EFDD401FEB0FEF5D8028001D6B4E018 -:10F6D0006B464CEA1B0000B68C5EFDE06B4870EA9E -:10F6E0001B0000970C5EFDD401FEB08F69D802802C -:10F6F00000F7C0780AB48B780B2FFB004316007319 +:10F5F0000D02F1EC56030000000100D401E06BECB9 +:10F60000CCEA1B8001301CFEB0E9F4D80AD7038095 +:10F6100001ABF4E06C13E8EA1C0000300B990B9985 +:10F620001B992B99CB99DB5EFD0000E06B2BECEA7C +:10F630001B00003069172A18BA2029CFD1206C5E30 +:10F64000FC0000E06B2FDAEA1B0000178AB88A176B +:10F650009AB89A17ABB8AB5EFD0000E0692BECEAF4 +:10F66000190000B28CB29BB2AA300CB22C5EFD5CC9 +:10F670005BC0382FFC201A580A5E0D19891639CF45 +:10F68000A15EFCD021F80B0C06AD3B161C189A0CA1 +:10F690009BD0225EFC0000E06C00DAEA1C00003027 +:10F6A0001BB81B300BB80B5EFF0000E06C4B78EA18 +:10F6B0001C0000300B990B991B992B5EFD0000304C +:10F6C0000CE06B4C7CEA1B0000B68C971C972C5E00 +:10F6D000FD00005C5B198A163A5E0C2FFC580ACFBD +:10F6E000B15EFD189BC0282FFB178A580ACFD11690 +:10F6F0002C5EFCE06C1E5CEA1C000000C8B800DF59 :10F7000002F1EC560401D80000800101D90001008B -:10F7100003000000005A990B5EFCD401E0A0001029 -:10F72000D80A8001D926E06C2A84EA1C00005EFC1D -:10F730000000E06C2C6CEA1C00005EFC482FD70334 -:10F7400000008001D71C302C5EFC5EFF00005EFFD5 -:10F7500000005EFF00005EFD00005EFF00005EFD39 -:10F7600000005EFD00005EFF00005EFD00005EFF29 -:10F770000053FD00BD02F1EC560300005C00A40044 -:10F78000000000000000020000000400000006006D -:10F790000000080000000A0000000C0000000E003D -:10F7A000000010000000120000001400000017000C -:10F7B0000000190000001B0000001D0000001F00D9 -:10F7C00000002100000023000000250000002700A9 -:10F7D0000000290000002B0000002D0000002F0079 -:10F7E0000000310000003300000035000000370049 -:10F7F0000000390000003B0000003D0000003F0019 -:10F8000000004100000043000000460000004800E6 -:10F8100000004A0000004C0000004E0000005000B4 -:10F820000000520401D90000800101DA000100004B -:10F830005751010D02F1EC560300000001000000D9 -:10F84000005400000056000000580000005A00005C -:10F85000005C0000005E000000600000006200002C -:10F86000006400000066000000680000006A0000FC -:10F87000006C0000006E00000070000000720000CC -:10F88000007400000076000000780000007A00009C -:10F89000007C0000007E000000800000008200006C -:10F8A000008400000086000000880000008A00003C -:10F8B000008C0000008E000000900000009200000C -:10F8C000009400000096000000980000009A0000DC -:10F8D000009C0000009E000000A0000000A20000AC -:10F8E00000A4000000A6000000A8000000AA00007C -:10F8F00000AC000000AE000000B0000000B200004C -:10F9000000B4000000B6000000B8000000BA00001B -:10F9100000BC000000BE000000C0000000C20000EB -:10F9200000C4000000C6000000C8000000CA0000BB -:10F9300000CC000000CE000000D0000000D200BBD0 -:10F9400050001302F1EC560401DA0000800101DBE3 +:10F710000300000000C6F8FC09F45EFC0000300C99 +:10F72000E06B2C50EA1B0000B68C5EFF0000300C32 +:10F73000E06B464CEA1B0000970C5EFF0000E06B9C +:10F740002F94EA1B0000B68C5EFDD401FEB0FED9FA +:10F75000D8028001D6E8E06B4648EA1B0000B68C70 +:10F760005EFDE06B486CEA1B0000970C5EFDD40167 +:10F77000FEB08F27D8028000F7A8780AB48B780BE8 +:10F780002FFB990B5EFCD401E0A00010D80A800189 +:10F79000D992E06C2A80EA1C00005EFC0000E06C5C +:10F7A0002C68EA1C00005EFC482FD7030000800193 +:10F7B000D788302C5EFC5EFF00005EFF00005EFF1D +:10F7C00000005EFD00005EFF00005EFD00005EFDCB +:10F7D00000005EFF00005EFD00005EFF006B850024 +:10F7E0005102F1EC56030000C80038000000000090 +:10F7F00000000200000004000000060000000800F5 +:10F8000000000A0000000C0000000E0000001000C4 +:10F810000000120000001400000017000000190092 +:10F8200000001B0401D90000800101DA0001000082 +:10F8300057DB010D02F1EC5603000000010000004F +:10F84000001D0000001F0000002100000023000038 +:10F85000002500000027000000290000002B000008 +:10F86000002D0000002F00000031000000330000D8 +:10F87000003500000037000000390000003B0000A8 +:10F88000003D0000003F0000004100000043000078 +:10F890000046000000480000004A0000004C000044 +:10F8A000004E000000500000005200000054000014 +:10F8B0000056000000580000005A0000005C0000E4 +:10F8C000005E0000006000000062000000640000B4 +:10F8D0000066000000680000006A0000006C000084 +:10F8E000006E000000700000007200000074000054 +:10F8F0000076000000780000007A0000007C000024 +:10F90000007E0000008000000082000000840000F3 +:10F910000086000000880000008A0000008C0000C3 +:10F92000008E000000900000009200000094000093 +:10F930000096000000980000009A0000009C004221 +:10F9400044001302F1EC560401DA0000800101DBEF :10F9500000010000D61F010D02F1EC56030000006B -:10F960000100000000D4000000D6000000D8000014 -:10F9700000DA000000DC000000DE000000E0000013 -:10F9800000E2000000E4000000E6000000E70000E4 -:10F9900000E9000000EB000000ED000000EF0000B7 -:10F9A00000F1000000F3000000F5000000F7000087 -:10F9B00000F9000000FB000000FD000000FF000057 -:10F9C0000101000001030000010400000106000025 -:10F9D00001080000010A0000010C0000010E0000F7 -:10F9E00001100000011200000114000001160000C7 -:10F9F0000118000001190000011B0000011D00009A -:10FA0000011F00000121000001230000012500006A -:10FA10000127000001290000012A0000012C00003C -:10FA2000012E00000130000001320000013400000E -:10FA3000013600000138000001390000013B0000E0 -:10FA4000013D0000013F00000141000001430000B2 -:10FA5000014500000146000001480000014A000085 -:10FA6000014C001955001302F1EC560401DB0000B3 +:10F9600001000000009E000000A0000000A20000B6 +:10F9700000A4000000A6000000A8000000AA0000EB +:10F9800000AC000000AE000000B0000000B20000BB +:10F9900000B4000000B6000000B8000000BA00008B +:10F9A00000BC000000BE000000C0000000C200005B +:10F9B00000C4000000C6000000C8000000CA00002B +:10F9C00000CC000000CE000000D0000000D20000FB +:10F9D00000D4000000D6000000D8000000DA0000CB +:10F9E00000DC000000DE000000E0000000E200009B +:10F9F00000E4000000E6000000E7000000E900006D +:10FA000000EB000000ED000000EF000000F100003E +:10FA100000F3000000F5000000F7000000F900000E +:10FA200000FB000000FD000000FF000001010000DD +:10FA300001030000010400000106000001080000AD +:10FA4000010A0000010C0000010E0000011000007E +:10FA5000011200000114000001160000011800004E +:10FA600001190018B7001302F1EC560401DB000085 :10FA7000800101DC00010000C237010D02F1EC56EB -:10FA80000300000001000000014E000001500000D2 -:10FA90000151000001530000015500000157000012 -:10FAA00001590000015B0000015C0000015E0000E4 -:10FAB00001600000016200000164000001650000B7 -:10FAC0000167000001690000016B0000016D00008A -:10FAD000016E00000170000001720000017400005E -:10FAE000017600000177000001790000017B000031 -:10FAF000017D0000017F0000018000000182000004 -:10FB000001840000018600000187000001890000D7 -:10FB1000018B0000018D0000018E000001900000AB -:10FB2000019200000194000001950000019700007F -:10FB300001990000019B0000019C0000019E000053 -:10FB400001A0000001A2000001A3000001A5000027 -:10FB500001A7000001A8000001AA000001AC0000FC -:10FB600001AE000001AF000001B1000001B30000D0 -:10FB700001B4000001B6000001B8000001B90000A6 -:10FB800001BB000001BD00E92B001302F1EC56049B +:10FA80000300000001000000011B0000011D000038 +:10FA9000011F0000012100000123000001250000DA +:10FAA0000127000001290000012A0000012C0000AC +:10FAB000012E00000130000001320000013400007E +:10FAC000013600000138000001390000013B000050 +:10FAD000013D0000013F0000014100000143000022 +:10FAE000014500000146000001480000014A0000F5 +:10FAF000014C0000014E00000150000001510000C7 +:10FB00000153000001550000015700000159000099 +:10FB1000015B0000015C0000015E0000016000006C +:10FB2000016200000164000001650000016700003F +:10FB300001690000016B0000016D0000016E000012 +:10FB400001700000017200000174000001760000E5 +:10FB50000177000001790000017B0000017D0000B9 +:10FB6000017F00000180000001820000018400008C +:10FB7000018600000187000001890000018B000060 +:10FB8000018D0000018E008110001302F1EC56047B :10FB900001DC0000800101DD00010000A88F010DE3 -:10FBA00002F1EC56030000000100000001BF00005C -:10FBB00001C0000001C2000001C4000001C5000036 -:10FBC00001C7000001C9000001CA000001CC00000B -:10FBD00001CE000001CF000001D1000001D30000E0 -:10FBE00001D4000001D6000001D7000001D90000B7 -:10FBF00001DB000001DC000001DE000001E000008C -:10FC000001E1000001E3000001E5000001E6000061 -:10FC100001E8000001E9000001EB000001ED000037 -:10FC200001EE000001F0000001F1000001F300000E -:10FC300001F5000001F6000001F8000001F90000E4 -:10FC400001FB000001FD000001FE000002000000B9 -:10FC5000020100000203000002040000020600008E -:10FC60000208000002090000020B0000020C000064 -:10FC7000020E0000020F000002110000021300003B -:10FC80000214000002160000021700000219000012 -:10FC9000021A0000021C0000021D0000021F0000EA -:10FCA000022000000222000002230011DD001302E6 +:10FBA00002F1EC560300000001000000019000008B +:10FBB00001920000019400000195000001970000EF +:10FBC00001990000019B0000019C0000019E0000C3 +:10FBD00001A0000001A2000001A3000001A5000097 +:10FBE00001A7000001A8000001AA000001AC00006C +:10FBF00001AE000001AF000001B1000001B3000040 +:10FC000001B4000001B6000001B8000001B9000015 +:10FC100001BB000001BD000001BF000001C00000E9 +:10FC200001C2000001C4000001C5000001C70000BE +:10FC300001C9000001CA000001CC000001CE000093 +:10FC400001CF000001D1000001D3000001D4000069 +:10FC500001D6000001D7000001D9000001DB00003F +:10FC600001DC000001DE000001E0000001E1000015 +:10FC700001E3000001E5000001E6000001E80000EA +:10FC800001E9000001EB000001ED000001EE0000C1 +:10FC900001F0000001F1000001F3000001F5000097 +:10FCA00001F6000001F8000001F900190800130234 :10FCB000F1EC560401DD0000800101DE00010000CE :10FCC0003D44010D02F1EC5603000000010000006C -:10FCD0000225000002260000022800000229000080 -:10FCE000022B0000022C0000022E0000022F000058 -:10FCF0000231000002320000023400000235000030 -:10FD00000237000002380000023A0000023B000007 -:10FD1000023D0000023E00000240000002410000DF -:10FD200002430000024400000246000002470000B7 -:10FD300002480000024A0000024B0000024D000091 -:10FD4000024E000002500000025100000253000069 -:10FD50000254000002550000025700000258000043 -:10FD6000025A0000025B0000025C0000025E00001C -:10FD7000025F0000026100000262000002640000F5 -:10FD800002650000026600000268000002690000CF -:10FD9000026A0000026C0000026D0000026F0000A9 -:10FDA0000270000002710000027300000274000083 -:10FDB000027500000277000002780000027A00005D -:10FDC000027B0000027C0000027E0000027F001621 -:10FDD00061001302F1EC560401DE0000800101DF36 +:10FCD00001FB000001FD000001FE00000200000029 +:10FCE00002010000020300000204000002060000FE +:10FCF0000208000002090000020B0000020C0000D4 +:10FD0000020E0000020F00000211000002130000AA +:10FD10000214000002160000021700000219000081 +:10FD2000021A0000021C0000021D0000021F000059 +:10FD30000220000002220000022300000225000031 +:10FD4000022600000228000002290000022B000009 +:10FD5000022C0000022E0000022F000002310000E1 +:10FD600002320000023400000235000002370000B9 +:10FD700002380000023A0000023B0000023D000091 +:10FD8000023E000002400000024100000243000069 +:10FD90000244000002460000024700000248000042 +:10FDA000024A0000024B0000024D0000024E00001B +:10FDB00002500000025100000253000002540000F3 +:10FDC000025500000257000002580000025A0016B7 +:10FDD000FA001302F1EC560401DE0000800101DF9D :10FDE0000001000082FF010D02F1EC56030000004B -:10FDF0000100000002800000028200000283000077 -:10FE000002840000028600000287000002880000D1 -:10FE1000028A0000028B0000028C0000028E0000AB -:10FE2000028F000002900000029200000293000086 -:10FE30000294000002960000029700000298000061 -:10FE400002990000029B0000029C0000029D00003D -:10FE5000029F000002A0000002A1000002A2000018 -:10FE600002A4000002A5000002A6000002A80000F3 -:10FE700002A9000002AA000002AB000002AD0000CF -:10FE800002AE000002AF000002B0000002B20000AB -:10FE900002B3000002B4000002B5000002B7000087 -:10FEA00002B8000002B9000002BA000002BC000063 -:10FEB00002BD000002BE000002BF000002C100003F -:10FEC00002C2000002C3000002C4000002C500001C -:10FED00002C7000002C8000002C9000002CA0000F8 -:10FEE00002CB000002CD000002CE000002CF0000D5 -:10FEF00002D00070B7001302F1EC560401DF0000DD +:10FDF00001000000025B0000025C0000025E0000E7 +:10FE0000025F000002610000026200000264000064 +:10FE1000026500000266000002680000026900003E +:10FE2000026A0000026C0000026D0000026F000018 +:10FE300002700000027100000273000002740000F2 +:10FE4000027500000277000002780000027A0000CC +:10FE5000027B0000027C0000027E0000027F0000A6 +:10FE60000280000002820000028300000284000081 +:10FE7000028600000287000002880000028A00005B +:10FE8000028B0000028C0000028E0000028F000036 +:10FE90000290000002920000029300000294000011 +:10FEA00002960000029700000298000002990000EC +:10FEB000029B0000029C0000029D0000029F0000C7 +:10FEC00002A0000002A1000002A2000002A40000A3 +:10FED00002A5000002A6000002A8000002A900007E +:10FEE00002AA000002AB000002AD000002AE00005A +:10FEF00002AF00864F001302F1EC560401DF000050 :10FF0000800101E0000100001D94010D02F1EC569A -:10FF1000030000000100000002D1000002D3000035 -:10FF200002D4000002D5000002D6000002D7000073 -:10FF300002D8000002DA000002DB000002DC000050 -:10FF400002DD000002DE000002E0000002E100002D -:10FF500002E2000002E3000002E4000002E500000B -:10FF600002E6000002E8000002E9000002EA0000E8 -:10FF700002EB000002EC000002ED000002EE0000C7 -:10FF800002F0000002F1000002F2000002F30000A3 -:10FF900002F4000002F5000002F6000002F7000083 -:10FFA00002F8000002FA000002FB000002FC000060 -:10FFB00002FD000002FE000002FF0000030000003E -:10FFC000030100000302000003030000030500001A -:10FFD00003060000030700000308000003090000F7 -:10FFE000030A0000030B0000030C0000030D0000D7 -:10FFF000030E0000030F00000310000003110000B7 +:10FF1000030000000100000002B0000002B2000077 +:10FF200002B3000002B4000002B5000002B70000F6 +:10FF300002B8000002B9000002BA000002BC0000D2 +:10FF400002BD000002BE000002BF000002C10000AE +:10FF500002C2000002C3000002C4000002C500008B +:10FF600002C7000002C8000002C9000002CA000067 +:10FF700002CB000002CD000002CE000002CF000044 +:10FF800002D0000002D1000002D3000002D4000021 +:10FF900002D5000002D6000002D7000002D80000FF +:10FFA00002DA000002DB000002DC000002DD0000DB +:10FFB00002DE000002E0000002E1000002E20000B8 +:10FFC00002E3000002E4000002E5000002E6000097 +:10FFD00002E8000002E9000002EA000002EB000073 +:10FFE00002EC000002ED000002EE000002F0000052 +:10FFF00002F1000002F2000002F3000002F400002F :020000022000DC -:100000000313000003140000031500000316000092 -:10001000031700000318007FC2001302F1EC56041E +:1000000002F5000002F6000002F7000002F800000E +:1000100002FA000002FB00C131001302F1EC5604A9 :1000200001E00000800101E100010000A125010DB7 -:1000300002F1EC560300000001000000031900006B -:10004000031A0000031B0000031C0000031D000036 -:10005000031E0000031F0000032000000321000016 -:1000600003220000032300000324BFF0000000006F -:100070000000800000000000000080000000000080 -:1000800000000000000000000000BFEE9452C0001D -:100090000000BE514E2048000000BCBC6764F80060 -:1000A00000000000000000000000BFED33812000D0 -:1000B0000000BE14DBB380000000BCA30667500044 -:1000C00000000000000000000000BFEBDCE9D000F1 -:1000D0000000BE5992C308000000BCB8D3B0800035 -:1000E00000000000000000000000BFEA8FF970006F -:1000F0000000BE2810A5C0000000BCB0C0BFE800D2 -:1001000000000000000000000000BFE94C28700063 -:100110000000BE424B1360000000BCB8203DC00090 -:1001200000000000000000000000BFE810FA5000CE -:100130000000BE2BF65FC0000000004C87001302D9 +:1000300002F1EC56030000000100000002FC000089 +:1000400002FD000002FE000002FF000003000000AD +:100050000301000003020000030300000305000089 +:100060000306000003070000030800000309000066 +:10007000030A0000030B0000030C0000030D000046 +:10008000030E0000030F0000031000000311000026 +:100090000313000003140000031500000316000002 +:1000A000031700000318000003190000031A0000E2 +:1000B000031B0000031C0000031D0000031E0000C2 +:1000C000031F0000032000000321000003220000A2 +:1000D000032300000324BFF00000000000008000A4 +:1000E0000000000000008000000000000000000090 +:1000F000000000000000BFEE9452C0000000BE519E +:100100004E2048000000BCBC6764F80000000000FE +:10011000000000000000BFED338120000000BE148D +:10012000DBB380000000BCA30667500000000000A5 +:10013000000000000000BFEBDCE9004D23001302CB :10014000F1EC560401E10000800101E20001000031 -:1001500034EE010D02F1EC56030000000100BCA7D3 -:10016000715C900000000000000000000000BFE68D -:10017000DDFC20000000BE54F1F8C0000000BCB956 -:10018000F6E9180000000000000000000000BFE5D4 -:10019000B2C3D0000000BE5432E470000000BCB412 -:1001A00006DB500000000000000000000000BFE47B -:1001B0008EEF10000000BE5262F320000000BC9AD7 -:1001C000872AC00000000000000000000000BFE31C -:1001D0007222B0000000BE56E0E8F0000000BCBD96 -:1001E0002D35280000000000000000000000BFE2E4 -:1001F0005C0A00000000BE418EFAB0000000BCBDE9 -:100200006FAE400000000000000000000000BFE1F1 -:100210004C5600000000BE5FCD15F0000000BC9001 -:100220001C14000000000000000000000000BFE0FF -:1002300042BD40000000BE5734F930000000BC93BE -:100240001E6CE00000000000000000000000BFDEA7 -:100250007DF5E0000000BE5E538AB0000000005F44 -:1002600053001302F1EC560401E20000800101E3A7 +:1001500034EE010D02F1EC56030000000100D00066 +:100160000000BE5992C308000000BCB8D3B08000A4 +:1001700000000000000000000000BFEA8FF97000DE +:100180000000BE2810A5C0000000BCB0C0BFE80041 +:1001900000000000000000000000BFE94C287000D3 +:1001A0000000BE424B1360000000BCB8203DC00000 +:1001B00000000000000000000000BFE810FA50003E +:1001C0000000BE2BF65FC0000000BCA7715C900071 +:1001D00000000000000000000000BFE6DDFC200081 +:1001E0000000BE54F1F8C0000000BCB9F6E91800E8 +:1001F00000000000000000000000BFE5B2C3D00016 +:100200000000BE5432E470000000BCB406DB5000B5 +:1002100000000000000000000000BFE48EEF1000AE +:100220000000BE5262F320000000BC9A872AC00082 +:1002300000000000000000000000BFE37222B000D8 +:100240000000BE56E0E8F0000000BCBD2D352800DF +:1002500000000000000000000000BFE25C0A002770 +:1002600004001302F1EC560401E20000800101E3F6 :10027000000100008B55010D02F1EC560300000057 -:100280000100BCAA77DA8000000000000000000036 -:100290000000BFDC819DC0000000BE26A2FF000060 -:1002A0000000BCB0E2576000000000000000000049 -:1002B0000000BFDA8FF960000000BE51810A5800CB -:1002C0000000BCB8605FF00000000000000000000B -:1002D0000000BFD8A89800000000BE457F7A6000EB -:1002E0000000BCA33354D000000000000000000058 -:1002F0000000BFD6CB0F60000000BE40CB91D00005 -:100300000000BCA01B6D40000000000000000000C9 -:100310000000BFD4F6FBA0000000BE52CEC598007E -:100320000000BC7E393A0000000000000000000020 -:100330000000BFD32BFEE0000000BE2B87734000FF -:100340000000BC796892000000000000000000007E -:100350000000BFD169C040000000BE5363F15800E7 -:100360000000BC7C8D438000000000000000000005 -:100370000000BFCF5FD880000000BE54831F18006C -:10038000000000F085001302F1EC560401E30000C8 +:10028000010000000000BE418EFAB0000000BCBDBD +:100290006FAE400000000000000000000000BFE161 +:1002A0004C5600000000BE5FCD15F0000000BC9071 +:1002B0001C14000000000000000000000000BFE06F +:1002C00042BD40000000BE5734F930000000BC932E +:1002D0001E6CE00000000000000000000000BFDE17 +:1002E0007DF5E0000000BE5E538AB0000000BCAAAD +:1002F00077DA800000000000000000000000BFDC92 +:10030000819DC0000000BE26A2FF00000000BCB01E +:10031000E257600000000000000000000000BFDAAB +:100320008FF960000000BE51810A58000000BCB87F +:10033000605FF00000000000000000000000BFD877 +:10034000A89800000000BE457F7A60000000BCA3B2 +:100350003354D00000000000000000000000BFD6B1 +:10036000CB0F60000000BE40CB91D0000000BCA0CD +:100370001B6D400000000000000000000000BFD422 +:10038000F6FB009A87001302F1EC560401E300002B :10039000800101E4000100009F7D010D02F1EC5697 -:1003A000030000000100BCA2423FB00000000000BA -:1003B000000000000000BFCBFC6780000000BE53BF -:1003C000FFFA60000000BCB80DE050000000000023 -:1003D000000000000000BFC8A89800000000BE3563 -:1003E0007F7A60000000BC933354C000000000001E -:1003F000000000000000BFC563DC00000000BE5428 -:10040000FFD658000000BC906439000000000000D6 -:10041000000000000000BFC22DADC0000000BE15EE -:1004200059A480000000BCAB4B48E0000000000075 -:10043000000000000000BFBE0B1A80000000BE5A82 -:100440003CBF50000000BCB664B3A0000000000038 -:10045000000000000000BFB7D60480000000BE36D8 -:10046000CFBB40000000BCA8CE768000000000009A -:10047000000000000000BFB1BB3280000000BE439E -:10048000002A40000000BCBD0CC62800000000008F -:10049000000000000000BFA7739400000000BE59D8 -:1004A0003B2B1800000000B76D001302F1EC56045E +:1003A000030000000100A0000000BE52CEC598006E +:1003B0000000BC7E393A0000000000000000000090 +:1003C0000000BFD32BFEE0000000BE2B877340006F +:1003D0000000BC79689200000000000000000000EE +:1003E0000000BFD169C040000000BE5363F1580057 +:1003F0000000BC7C8D438000000000000000000075 +:100400000000BFCF5FD880000000BE54831F1800DB +:100410000000BCA2423FB00000000000000000004D +:100420000000BFCBFC6780000000BE53FFFA6000F5 +:100430000000BCB80DE0500000000000000000000B +:100440000000BFC8A89800000000BE357F7A600099 +:100450000000BC933354C000000000000000000006 +:100460000000BFC563DC00000000BE54FFD658008A +:100470000000BC9064390000000000000000000093 +:100480000000BFC22DADC0000000BE1559A4800001 +:100490000000BCAB4B48E000000000000000000082 +:1004A0000000BFBE0B1A00E1F5001302F1EC560488 :1004B00001E40000800101E500010000F5C5010D27 -:1004C00002F1EC56030000000100BCA55DE5C00090 -:1004D00000000000000000000000BF9743EE000095 -:1004E0000000BE40C3E6A0000000BCB58D95200012 -:1004F000000000000000000000008000000000007C -:1005000000008000000000000000800000000000EB -:1005100000000000000000000000000000000000DB -:1005200000000000000000000000000000000000CB -:1005300000000000000000000000000000000000BB -:1005400000000000000000000000000000000000AB -:10055000000000000000000000000000000000009B -:10056000000000000000000000000000000000008B -:10057000000000000000000000000000000000007B +:1004C00002F1EC5603000000010080000000BE5A5B +:1004D0003CBF50000000BCB664B3A00000000000A8 +:1004E000000000000000BFB7D60480000000BE3648 +:1004F000CFBB40000000BCA8CE768000000000000A +:10050000000000000000BFB1BB3280000000BE430D +:10051000002A40000000BCBD0CC6280000000000FE +:10052000000000000000BFA7739400000000BE5947 +:100530003B2B18000000BCA55DE5C00000000000DA +:10054000000000000000BF9743EE00000000BE4026 +:10055000C3E6A0000000BCB58D952000000000009F +:10056000000000000000800000000000000080008B +:1005700000000000000080000000000000000000FB :10058000000000000000000000000000000000006B :10059000000000000000000000000000000000005B :1005A000000000000000000000000000000000004B :1005B000000000000000000000000000000000003B -:1005C0000000000000000000000000E19F00130296 +:1005C00000000000000000000000002841001302AD :1005D000F1EC560401E50000800101E60001000095 :1005E000600E010D02F1EC56030000000100000056 :1005F00000000000000000000000000000000000FB :1006000000000000000000000000000000000000EA -:100610000000000000000000000000000000475340 -:10062000462D310000004753462D3200000047534D -:10063000462D330000004753462D34000000475339 -:10064000462D3500000080012470800124208001A7 -:10065000247080012448800125D0800125E080019C -:10066000259C80012470800127B8800127648001C7 -:100670002788800126008001263880012688800195 -:100680002470800128388001247080012448800172 -:1006900027C8800127D8800127E8800124708001C5 -:1006A00028488001247080012448800125D08001E1 -:1006B00025E08001259C800128A0800128F8800188 -:1006C00028C080012914800128588001287C8001DD -:1006D000259C800129348001242080012954800137 -:1006E0002448800125D0800125E08001259C0062FE -:1006F00051001302F1EC560401E60000800101E70D +:1006100000000000000000000000000000000000DA +:1006200000000000000000000000000000000000CA +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:10065000000000000000000000000000000000009A +:10066000000000000000000000000000000000008A +:10067000000000000000000000000000000000007A +:10068000000000000000000000004753462D31002C +:1006900000004753462D320000004753462D3300DB +:1006A00000004753462D340000004753462D3500C7 +:1006B000000080012A6880012A1880012A688001D0 +:1006C0002A4080012BC880012BD880012B94800107 +:1006D0002A6880012DB080012D5C80012D80800171 +:1006E0002BF880012C3080012C8080012A6800C604 +:1006F0008A001302F1EC560401E60000800101E7D4 :1007000000010000DFB5010D02F1EC56030000000E -:10071000010080012470800124208001298C800147 -:100720002448800125D0800125E08001259C80019E -:1007300029C480012420800129C48001244880012B -:1007400025D0800125E08001259C800129D88001E9 -:10075000242080012470800129F480012858800120 -:10076000287C8001259C0000000100004EB40000A0 -:10077000000200004EB80000000100004EC0000062 -:10078000000100004EC40000000400004EC800003C -:10079000000400004ED80000000000004EE80000F9 -:1007A000000100004EEC0000000100004EF00000CF -:1007B000000100004EF40000000400004EF80000AC -:1007C000000400004F080000000500004F18000062 -:1007D000000100004F2C0000000800004F30000016 -:1007E000000100004F500000000000004F540000C6 -:1007F000000000004F580000000000004F5C0000A7 -:10080000000100004F600000000100004F64000084 -:10081000000100C432001302F1EC560401E70000AD +:10071000010080012E3080012A6880012A4080017A +:100720002DC080012DD080012DE080012A6880013C +:100730002E4080012A6880012A4080012BC8800158 +:100740002BD880012B9480012E9880012EF08001FF +:100750002EB880012F0C80012E5080012E74800154 +:100760002B9480012F2C80012A1880012F4C8001AE +:100770002A4080012BC880012BD880012B94800156 +:100780002A6880012A1880012F8480012A40800174 +:100790002BC880012BD880012B9480012FBC8001B5 +:1007A0002A1880012FBC80012A4080012BC88001BB +:1007B0002BD880012B9480012FD080012A18800132 +:1007C0002A6880012FEC80012E5080012E74800158 +:1007D0002B940000000100004EB000000002000059 +:1007E0004EB40000000100004EBC000000010000FB +:1007F0004EC00000000400004EC4000000040000D1 +:100800004ED40000000000004EE400000001000093 +:100810004EE80089CB001302F1EC560401E700001A :10082000800101E800010000485E010D02F1EC5674 -:1008300003000000010000004F68000000010000FC -:100840004F6C0000000000004F700000000000002E -:100850004F740000000300004F780000000000000B -:100860004F840000000000004F88000000000000DE -:100870004F8C0000000100004F90000000010000BC -:100880004F94000000000000001E0000002800003F -:1008900000320000003C0000014A0000003C000063 -:1008A0000096000000F00000014F00000041000031 -:1008B000009B000000F5000001540000004600000D -:1008C00000A0000000FA0000015E000000500000DF -:1008D00000AA000001040000001E000000780000D3 -:1008E00000D20000012C000000190000007300007D -:1008F00000CD00000127000000140000006E000081 -:1009000000C8000001220000000A0000006400008E -:1009100000BE000001180000000000000000000000 -:1009200000000000000000000000000000000000C7 -:1009300000000000000000485D001302F1EC5604C6 +:100830000300000001000000000100004EEC000079 +:10084000000100004EF00000000400004EF4000023 +:10085000000400004F040000000500004F140000D9 +:10086000000100004F280000000800004F2C00008D +:10087000000100004F4C0000000000004F5000003D +:10088000000000004F540000000000004F5800001E +:10089000000100004F5C0000000100004F600000FC +:1008A000000100004F640000000100004F680000DC +:1008B000000000004F6C0000000000004F700000BE +:1008C000000300004F740000000000004F80000093 +:1008D000000000004F840000000000004F8800006E +:1008E000000100004F8C0000000100004F9000004C +:1008F00000000000001E0000002800000032000080 +:10090000003C0000014A0000003C0000009600008E +:1009100000F00000014F000000410000009B0000BB +:1009200000F50000015400000046000000A0000097 +:1009300000FA0000015E005E5D001302F1EC560457 :1009400001E80000800101E90001000008E5010D57 -:1009500002F1EC560300000001000000000000005E -:100960000000000000000000000000000000000087 -:100970000000000000000000000000000000000077 -:100980000000000000000000000000000000000067 -:10099000000000000000000000004759524F2D5396 -:1009A00000004753462D313100004753462D313268 -:1009B0000000414C4F4620256400414C4346202511 -:1009C0006400524C434620256400504C4F4620257D -:1009D0006400504C43462025640050414F4620257A -:1009E0006400504143462025640050504F46202566 -:1009F000640050504346202564004558204C4D4526 -:100A00004C20256400004558204C4D435231202590 -:100A100064004558204C4D43523220256420256403 -:100A20002025640000004558204C4D4352332025BA -:100A300064202564202564202564000000004558BA -:100A4000204C4D4352342025642025642025642009 -:100A5000256400000000000100FF00914A0013021D +:1009500002F1EC560300000001000000005000000E +:1009600000AA000001040000001E00000078000042 +:1009700000D20000012C00000019000000730000EC +:1009800000CD00000127000000140000006E0000F0 +:1009900000C8000001220000000A000000640000FE +:1009A00000BE000001180000000000000000000070 +:1009B0000000000000000000000000000000000037 +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000000000000007 +:1009F00000000000000000000000000000000000F7 +:100A00000000000000004759524F2D53000047538B +:100A1000462D313100004753462D31320000414C04 +:100A20004F4620256400414C434620256400524C2B +:100A3000434620256400504C4F4620256400504C0E +:100A400043462025640050414F4620256400504114 +:100A500043462025640050504F4600848D00130209 :100A6000F1EC560401E90000800101EA00010000F8 -:100A70009D2E010D02F1EC56030000000100000064 -:100A8000000001FF000000FF0000000100FF000166 -:100A9000000000000101000000010000000100FF53 -:100AA00000FF00000000FF01000000FF000000FF49 -:100AB0000001000100000000FFFF00000001000035 -:100AC00000FF80012FF88001324C8001329C8001B0 -:100AD000329C00000000800132F000000000800124 -:100AE00034A80000000080012FF8800133DC800171 -:100AF000345400000000000000000000000000006E -:100B000000000000000000000000000000000000E5 -:100B100000000000000000000000000000000000D5 -:100B20000000000000004753462D360000004753E8 -:100B3000462D370000004753462D3800000047532C -:100B4000462D390000004753462D31300000534DEB -:100B50004143202564202564202564000000534D76 -:100B60004120256420256420256400000000534DA9 -:100B7000524320256420256420256400000000F5F0 -:100B8000C8001302F1EC560401EA0000800101EBF9 +:100A70009D2E010D02F1EC5603000000010020251F +:100A8000640050504346202564004558204C4D4595 +:100A90004C20256400004558204C4D435231202500 +:100AA00064004558204C4D43523220256420256473 +:100AB0002025640000004558204C4D43523320252A +:100AC000642025642025642025640000000045582A +:100AD000204C4D4352342025642025642025642079 +:100AE000256400000000000100FF0000000001FF7D +:100AF000000000FF0000000100FF000100000000F6 +:100B00000101000000010000000100FF00FF0000E3 +:100B10000000FF01000000FF000000FF00010001D5 +:100B200000000000FFFF00000001000000FF800146 +:100B3000300C80013260800132B0800132B00000A0 +:100B400000008001330400000000800134BC00007C +:100B500000008001300C800133F080013468000017 +:100B60000000000000000000000000000000000085 +:100B7000000000000000000000000000000000C5B0 +:100B800027001302F1EC560401EA0000800101EB9A :100B9000000100002295010D02F1EC560300000057 -:100BA0000100534D52202564202564202564000057 -:100BB000000000000000000000003FE0C152382D9E -:100BC00073663FF921FB54442D183FF0C152382D74 -:100BD00073663FF921FB54442D184000C152382D53 -:100BE0007366400921FB54442D184004F1A6C63811 -:100BF000D03F00000000000000280000007000004E -:100C00000050000000600000008F00000050000055 -:100C100003E8000000104C50533235485F557064B3 -:100C20006174654F4452000000008001033480016C -:100C300003CC8001050080010578000000008001E0 -:100C400005EC0000000080010740800107D880010A -:100C5000970080019760800197C0800197DC0000B9 -:100C60000000800197F80000000000000000000074 -:100C700000008001A30C8001A3448001A3748001C3 -:100C8000A3AC000000008001A3E800000000000009 -:100C900000000000000080010800800108E88001D9 -:100CA0000A8C004C7E001302F1EC560401EB0000AC +:100BA0000100000000000000000000000000000044 +:100BB0000000000000004753462D36000000475358 +:100BC000462D370000004753462D3800000047539C +:100BD000462D390000004753462D31300000534D5B +:100BE0004143202564202564202564000000534DE6 +:100BF0004120256420256420256400000000534D19 +:100C00005243202564202564202564000000534DB4 +:100C10005220256420256420256400000000000087 +:100C20000000000000003FE0C152382D73663FF91C +:100C300021FB54442D183FF0C152382D73663FF903 +:100C400021FB54442D184000C152382D73664009D1 +:100C500021FB54442D184004F1A6C638D03F0000B3 +:100C6000000000000028000000700000005000009C +:100C700000600000008F00000050000003E800004A +:100C800000104C50533235485F5570646174654FA5 +:100C90004452000000008001031C800103B4800165 +:100CA00004E800E4C6001302F1EC560401EB000076 :100CB000800101EC0001000036BD010D02F1EC568F -:100CC00003000000010080010B18000000008001FB -:100CD0000B7C80010BC800000000000000008001B8 -:100CE0009ACC80019AD480019ADC80019AE4800138 -:100CF0009AE880019AEC000000008001D938800158 -:100D0000D93480006AF080006C6080006C788000CC -:100D10006C940000000080006D7C000000008000EA -:100D20006EF880006C98800070D4800071BC8000E8 -:100D300072588000728000000000800072A80000DD -:100D4000000080007CC800000000800193CC80017E -:100D500094388001945000000000800192DC8001F2 -:100D600092E40000000080019454000000000004A0 -:100D7000000800100020003000400060008000C02B -:100D800001000180020003000400080000000000D0 -:100D9000000050524F0050726F78695365743D25C2 -:100DA000640050726F786952656700000000535408 -:100DB000256420530000535420536B697000535432 -:100DC000256420460000008134001302F1EC560433 +:100CC00003000000010080010560000000008001B9 +:100CD00005D40000000080010728800107C08001C2 +:100CE0009764800197C48001982480019840000097 +:100CF00000008001985C000000000000000000007F +:100D000000008001A3708001A3A88001A3D8800106 +:100D1000A410000000008001A44C000000000000AE +:100D2000000000000000800107E8800108D0800179 +:100D30000A7480010B000000000080010B64800138 +:100D40000BB0000000000000000080019B3080011B +:100D50009B3880019B4080019B4880019B4C800117 +:100D60009B50000000008001D9A48001D9A0800020 +:100D70006AF080006C6080006C7880006C940000E9 +:100D8000000080006D7C0000000080006EF8800094 +:100D90006C98800070D4800071BC80007258800014 +:100DA000728000000000800072A800000000800037 +:100DB0007CC800000000800194308001949C800178 +:100DC00094B400000000001C14001302F1EC56045F :100DD00001EC0000800101ED000100005C05010D47 -:100DE00002F1EC5603000000010053542564204337 -:100DF0000000503100503200000050555000504368 -:100E00004B0050535431202564005055503200009F -:100E100000000000000000000000000000000000D2 -:100E200000000000000053542050726F783D25648C -:100E30000000436865636B4C696768744C75782083 -:100E400053746F70000053746F70204661696C00BA -:100E50000000537461727420436865636B4C69676A -:100E600068744C7578005374617274204661696CC3 -:100E700000004779726F2054656D702053746F7055 -:100E8000000053746F70204661696C000000537459 -:100E9000617274204779726F2054656D70005374CD -:100EA000617274204661696C0000414C2045580015 -:100EB0000000414C25642025642025642025642001 -:100EC000256400000000524C204558000000524CA0 -:100ED00025642025642025642025642025640000E5 -:100EE000000053544D2D5200000000B9840013023D +:100DE00002F1EC56030000000100800193408001F5 +:100DF000934800000000800194B800000000000447 +:100E0000000800100020003000400060008000C09A +:100E1000010001800200030004000800000000003F +:100E2000000050524F0050726F78695365743D2531 +:100E3000640050726F786952656700000000535477 +:100E4000256420530000535420536B6970005354A1 +:100E5000256420460000535425642043000050318F +:100E60000050320000005055500050434B0050538A +:100E7000543120256400505550320000000000001D +:100E80000000000000000000000000000000000062 +:100E9000000053542050726F783D25640000436871 +:100EA00065636B4C696768744C75782053746F7018 +:100EB000000053746F70204661696C000000537429 +:100EC00061727420436865636B4C696768744C7524 +:100ED00078005374617274204661696C0000477930 +:100EE000726F2054656D7020537400ABE7001302DD :100EF000F1EC560401ED0000800101EE000100005C -:100F0000C9CE010D02F1EC56030000000100474577 -:100F10002025642C2025642C2025642C20256400A9 -:100F200000000000000000000000000000000000C1 -:100F30000000000000004745205354450000000019 -:100F4000000041494F00494F452D31000000494FF5 -:100F5000452D32000000000000004C50533235484F -:100F60005F496E69740042522D52460000004C5396 -:100F7000302D524631004C53302D524632005246ED -:100F80002032000000000000000000000000414688 -:100F90002030000000004146203100000000000029 -:100FA00000000000000047454F004745204F460025 -:100FB0000000472025642C2025642C2025642C204B -:100FC0002564000000000000001000000008000080 -:100FD00000040000000200000001436865636B4CE0 -:100FE000696768744C757820496E69740000000068 -:100FF00000005354302D310000005354302D320086 -:1010000000004558205044524D4D2043322000B737 -:10101000E3001302F1EC560401EE0000800101EF41 +:100F0000C9CE010D02F1EC560300000001006F7024 +:100F1000000053746F70204661696C0000005374C8 +:100F2000617274204779726F2054656D700053743C +:100F3000617274204661696C0000414C2045580084 +:100F40000000414C25642025642025642025642070 +:100F5000256400000000524C204558000000524C0F +:100F60002564202564202564202564202564000054 +:100F7000000053544D2D5200000047452025642C9D +:100F80002025642C2025642C20256400000000000E +:100F90000000000000000000000000000000000051 +:100FA000000047452053544500000000000041491F +:100FB0004F00494F452D31000000494F452D32006B +:100FC0000000000000004C50533235485F496E6904 +:100FD000740042522D52460000004C53302D5246B0 +:100FE00031004C53302D5246320052462032000020 +:100FF000000000000000000000004146203000001A +:1010000000004146203100000000000000000052B6 +:1010100031001302F1EC560401EE0000800101EFF3 :10102000000100007675010D02F1EC56030000008E -:1010300001002564000000000000000000004C7565 -:101040007843000000004558205044524D4D204345 -:1010500033202564000054482D5246320000544885 -:101060002D5246310000524D202564202564202554 -:10107000642025640000000000004149430049430A -:10108000452D3100000045494332205400004549B8 -:1010900043322D53000050443A496E504654303983 -:1010A00032320000000041442025642025642025C0 -:1010B0006420256400000000000041432D574500D6 -:1010C0000000414B430000000000414F2D574500F8 -:1010D0000000414B4F004558205044524D4D204395 -:1010E00031202564000050443A20537461727450DA -:1010F00065646F0000004779726F2054656D702041 -:10110000496E697400004C53332D524631005246EB -:101110002032000000006E616E004E414E00696E8C -:101120006600494E4600000000000000000000007C -:1011300000000064A1001302F1EC560401EF00006E +:1010300001000000000047454F004745204F460093 +:101040000000472025642C2025642C2025642C20BA +:1010500025640000000000000010000000080000EF +:1010600000040000000200000001436865636B4C4F +:10107000696768744C757820496E697400000000D7 +:1010800000005354302D310000005354302D3200F5 +:1010900000004558205044524D4D204332202564D5 +:1010A000000000000000000000004C7578430000C4 +:1010B00000004558205044524D4D204333202564B4 +:1010C000000054482D524632000054482D524631FB +:1010D0000000524D202564202564202564202564CD +:1010E000000000000000414943004943452D310004 +:1010F00000004549433220540000454943322D53F6 +:10110000000050443A496E504654303932320000A3 +:1011100000004144202564202564202564202564A6 +:1011200000000000000041432D5745000000414BE6 +:10113000430000FF96001302F1EC560401EF00009B :10114000800101F000010000661D010D02F1EC5666 -:101150000300000001000000000000000000000C7F -:1011600035000000000C00000000495745202564B0 -:101170002025640000004952452025642025640094 -:10118000000049524F4520256420256400000000DE -:10119000000042522D4346000000000003520000B0 -:1011A00002EE000002EE000000000000000000005F -:1011B00000000000000047462031000000004952B6 -:1011C0002025642C25640000000050443A707420EF -:1011D000256400000000534F31203078257820002E -:1011E00000005445524D20256420256400004745E9 -:1011F00020435520256400000000534D5241202516 -:101200006420256400000000000047657374526587 -:1012100067000000000000061A8018000000474D1B -:101220002D494F46202564000000436C6F736520F4 -:101230002564202564004F70656E20256420256498 -:101240000000474D2D5246312025640000004C4DD2 -:10125000435053203120006537001302F1EC56044F +:1011500003000000010000000000414F2D57450032 +:101160000000414B4F004558205044524D4D204304 +:1011700031202564000050443A2053746172745049 +:1011800065646F0000004779726F2054656D7020B0 +:10119000496E697400004C53332D5246310052465B +:1011A0002032000000006E616E004E414E00696EFC +:1011B0006600494E460000000000000000000000EC +:1011C00000000000000000000000000C35000000DE +:1011D000000C0000000049574520256420256400CC +:1011E0000000495245202564202564000000495232 +:1011F0004F45202564202564000000000000425275 +:101200002D434600000000000352000002EE0000E3 +:1012100002EE0000000000000000000000000000DE +:101220000000474620310000000049522025642C70 +:1012300025640000000050443A70742025640000CA +:101240000000534F312030782578200000005445AD +:10125000524D20256420003104001302F1EC5604A5 :1012600001F00000800101F10001000072A0010DF9 -:1012700002F1EC5603000000010025640000474D18 -:101280002D524632202564000000496E697400002A -:10129000000053746F70000000005374617274009A -:1012A00000004A415254203200004558542D53004A -:1012B0000000686A6C747A4C0000542D4558000098 -:1012C000000000000000000000000000000000001E -:1012D00000000E890F83107D11775254432D530067 -:1012E0000000150114011105240414011501040165 -:1012F000050650522D5246310000474D2D524631C1 -:10130000000053414420256420000000000050529A -:101310004300000000000000000047532D524631FA -:101320000000000000000000000053544D2D42005A -:10133000000053544D2D4900000053544D2D4100E1 -:101340000000474D2D504631000000000000474589 -:10135000430054482D5046310000000000000000BA -:1013600000000000000000000000474D2D504632F4 -:101370000000534149000000000000589800370267 +:1012700002F1EC5603000000010025640000474520 +:1012800020435520256400000000534D5241202585 +:1012900064202564000000000000476573745265F7 +:1012A00067000000000000061A8018000000474D8B +:1012B0002D494F46202564000000436C6F73652064 +:1012C0002564202564004F70656E20256420256408 +:1012D0000000474D2D5246312025640000004C4D42 +:1012E00043505320312025640000474D2D52463293 +:1012F000202564000000496E6974000000005374EA +:101300006F700000000053746172740000004A4165 +:101310005254203200004558542D53000000686A92 +:101320006C747A4C0000542D4558000000000000F9 +:1013300000000000000000000000000000000E8916 +:101340000F83107D11775254432D53000000150177 +:10135000140111052404140115010401050650525D +:101360002D5246310000474D2D5246310000534169 +:1013700044202564200000000000004D9E00C102B2 :10138000F1EC560401F10000800101F200010003BC -:10139000000000001E00000000000000000000002F -:1013A000000000000001000000000001007F7F7FBE -:1013B00000010000732100F902F1EC560300002047 -:1013C00000E0000006D0000006D0000047E48001E5 -:1013D000F23800000008000006C800FFFF0000000F -:1013E00000000000000000000000FFFFFFC400003C -:1013F000003CFFFFFFC40000003CFFFFFFC40000F3 -:10140000003CFFFFFFC40000003CFFFFFFFFFFFFA9 -:10141000FFFF0000000000000000000000000000CE -:1014200000000000000000000000000000000000BC -:101430007FFF00000CCC000001470000000000000E -:101440000003000000000000000000000001000098 -:1014500000000033F2FF00007070707000000100A7 -:10146000000005060708090A0B0E0C0D00000853C2 -:10147000923C00010000000000000000000000009D +:10139000000000008A5052430000000000000000DE +:1013A0000047532D524631000000000000000000AD +:1013B0000053544D2D4200000053544D2D49000060 +:1013C0000053544D2D41000000474D2D5046310033 +:1013D00000000000004745430054482D50463100AE +:1013E00000000000000000000000000000000000FD +:1013F00000474D2D50463200005341490000000087 +:1014000000000000000000000000000000000000DC +:101410000001000000000001007F7F7F0001000349 +:1014200000008C0018000006C0000006C000004745 +:10143000F08001F2A800000008000006B80004488F +:10144000007102F1EC56030000A80058FFFFFFC432 +:101450000000003CFFFFFFC40000003CFFFFFFC492 +:101460000000003CFFFFFFC40000003CFFFFFFFF47 +:10147000FFFFFFFF00000000000000000000000070 :10148000000000000000000000000000000000005C -:101490000000100000003F6666663F4CCCCD0000A7 -:1014A00000000401F20000800101F300010000B817 -:1014B000D4010D02F1EC5603000000010000000011 -:1014C0000100000001000000010000000100000018 -:1014D0000001010000003C000000010005000000C8 -:1014E00000000001000000000000000000000000FB -:1014F00000000000000000000000000000000000EC -:1015000000000000000000000000000000000000DB -:1015100000000000000000000000000000000000CB -:1015200000000000000000000000000000000000BB -:1015300000012C000000000000000000000000007E -:10154000000000000000000000000000000000009B +:1014900000007FFF00000CCC0000014700000000AE +:1014A000000000030401F20000800101F3000100CC +:1014B0000035B4010D02F1EC5603000000010000FC +:1014C000000000000000000000000100000000001B +:1014D00033F2FF0000707070700000010000000522 +:1014E000060708090A0B0E0C0D00000853923C0079 +:1014F00001000000000000000000000000000000EB +:1015000000000000000000000000000000000010CB +:101510000000003F6666663F4CCCCD000000000036 +:1015200000000100000001000000010000000100B7 +:1015300000000001010000003C0000000100050067 +:10154000000000000001000000000000000000009A :10155000000000000000000000000000000000008B :10156000000000000000000000000000000000007B :10157000000000000000000000000000000000006B :10158000000000000000000000000000000000005B -:10159000000000000000000000000000000000004B +:10159000000000012C00000000000000000000001E :1015A000000000000000000000000000000000003B -:1015B0000000000000000000000000000000480FD4 -:1015C000001302F1EC560401F30000800101F40065 -:1015D0000100004CF8010D02F1EC5603000000017F -:1015E00000000000000000000000000000000000FB +:1015B000000000000000000000000000000000002B +:1015C000F560001302F1EC560401F3000080010104 +:1015D000F4000100004CF8010D02F1EC560300008C +:1015E00000010000000000000000000000000000FA :1015F00000000000000000000000000000000000EB :1016000000000000000000000000000000000000DA :1016100000000000000000000000000000000000CA :1016200000000000000000000000000000000000BA -:1016300001000100000000000000000000000000A8 +:1016300000000000000000000000000000000000AA :10164000000000000000000000000000000000009A -:101650000100000000000000000000000000000089 +:10165000000000000000000000000000000000008A :10166000000000000000000000000000000000007A :10167000000000000000000000000000000000006A :10168000000000000000000000000000000000005A -:10169000000000000000000000000000000000004A +:101690000000010001000000000000000000000048 :1016A000000000000000000000000000000000003A -:1016B000000000000000000000000000000000002A +:1016B0000000010000000000000000000000000029 :1016C000000000000000000000000000000000001A :1016D000000000000000000000000000000000000A -:1016E00000002AB7001302F1EC560401F400008058 -:1016F0000101F5000100002640010D02F1EC560346 -:1017000000000001000000000000000000000000D8 +:1016E00000000000EEEC001302F1EC560401F400DF +:1016F00000800101F5000100002640010D02F1EC1F +:10170000560300000001000000000000000000007F :1017100000000000000000000000000000000000C9 -:1017200000000000000000000200020000000000B5 +:1017200000000000000000000000000000000000B9 :1017300000000000000000000000000000000000A9 -:101740000000000000000000010000000200000096 +:101740000000000000000000000000000000000099 :101750000000000000000000000000000000000089 -:101760004700000000000000000000000000000032 -:101770000100000010000000000000000000000058 -:101780000000000000000000000000000100000058 -:10179000C80000000400000000000000000000007D -:1017A0000000000000000000000000000000000039 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000000000000069 +:101780000000000000000000000002000200000055 +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000001000000020036 :1017B0000000000000000000000000000000000029 -:1017C0000000000000000000000000000000000019 -:1017D0000000000000000000000000000000000009 -:1017E00000000000000000000000000000000000F9 -:1017F00000000000000000000000000003000000E6 -:101800000000000000006C61001302F1EC560401BE -:10181000F50000800101F600010000B38B010D020C -:10182000F1EC560300000001000000000000000081 +:1017C00000004700000000000000000000000000D2 +:1017D00000000100000010000000000000000000F8 +:1017E00000000000000000000000000000000100F8 +:1017F0000000C8000000040000000000000000001D +:10180000000000000000000049FC001302F1EC564B +:101810000401F50000800101F600010000B38B0116 +:101820000D02F1EC56030000000100000000000072 :1018300000000000000000000000000000000000A8 :101840000000000000000000000000000000000098 :101850000000000000000000000000000000000088 :101860000000000000000000000000000000000078 :101870000000000000000000000000000000000068 -:101880000000000000000000000000000000000058 +:101880000000030000000000000000000000000055 :101890000000000000000000000000000000000048 :1018A0000000000000000000000000000000000038 :1018B0000000000000000000000000000000000028 @@ -8592,36 +8592,36 @@ :1018D0000000000000000000000000000000000008 :1018E00000000000000000000000000000000000F8 :1018F00000000000000000000000000000000000E8 -:1019000000000000000000000000000000010000D6 -:1019100000000000010100000000000002000000C3 -:1019200000000000000000000000B7A5001302F155 -:10193000EC560401F60000800101F7000100000CE4 -:1019400030010D02F1EC5603000000010000000020 -:101950000001000000000000020000000000000084 +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:10192000000000000000000000000000EC97001321 +:1019300002F1EC560401F60000800101F7000100FD +:10194000000C30010D02F1EC560300000001000014 +:101950000000000000000000000000000000000087 :101960000000000000000000000000000000000077 -:10197000000100000000000000000000003FC999C5 -:10198000999999999A3FE33333333333333FE99944 -:10199000999999999A3FF33333333333334003336F -:1019A00033333333333FE3333333333333000000E4 -:1019B0000000000000000000000000000000000027 -:1019C00000000000000000000A0000000700000006 -:1019D00007000000050000001400000200000000E5 -:1019E0000100000001E0071F0000000000000000EF -:1019F000020000000000000000609C7866805DEF3F -:101A0000C831FF000080016B980000000003000057 +:101970000000000000000000000000000000000067 +:101980000000000000000000000000000000000057 +:101990000000000100000000000001010000000044 +:1019A0000000020000000000000000000000000035 +:1019B0000000000100000000000002000000000024 +:1019C0000000000000000000000000000000000017 +:1019D0000000000100000000000000000000003FC7 +:1019E000C999999999999A3FE33333333333333F04 +:1019F000E999999999999A3FF333333333333340C3 +:101A0000033333333333333FE3333333333333004D :101A100000000000000000000000000000000000C6 -:101A200000000000000000000000000000000000B6 -:101A300000000000000000000000000000000000A6 -:101A4000000000000000000000000000000049C687 -:101A5000001302F1EC560401F70000800101F800C8 -:101A60000100009BDB010D02F1EC560300000001B8 -:101A700000000005D400000000000000000000008D -:101A80000000000000000000000000000000000056 -:101A90000000000000000000000000000000000046 +:101A2000000000000000000000000A0000000700A5 +:101A30000000070000000500000014000002000084 +:101A400000000100000001E0071F0000000000008E +:101A5000B251001302F1EC560401F70000800101BD +:101A6000F8000100009BDB010D02F1EC56030000C1 +:101A70000001000000000200000000000000006003 +:101A80009C7866805DEFC831FF000080016BAC0080 +:101A90000000000300000000000000000000000043 :101AA0000000000000000000000000000000000036 :101AB0000000000000000000000000000000000026 :101AC0000000000000000000000000000000000016 -:101AD0000000000000000000000000000000000006 +:101AD000000000000005C40000000000000000003D :101AE00000000000000000000000000000000000F6 :101AF00000000000000000000000000000000000E6 :101B000000000000000000000000000000000000D5 @@ -8631,10 +8631,17 @@ :101B40000000000000000000000000000000000095 :101B50000000000000000000000000000000000085 :101B60000000000000000000000000000000000075 -:101B70000000A039004D02F1EC560401F80000808D -:101B80000101F90001000101FA0001000101FB005F -:101B900001000101FC0001000101FD000100010143 -:101BA000FE0001000101FF000100030000FC000431 -:101BB000D6408A420401FF00008007006A4074C3D7 -:031BC000003B9E49 +:101B700000000000CBE900B902F1EC560401F800C6 +:101B800000800101F9000100030000000060000076 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB0000000000000000000000000000000000025 +:101BC0000000000000000000000000000000000015 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000401F0 +:101BF000F90000800101FA0001000101FB00010071 +:101C00000101FC0001000101FD0001000101FE00D5 +:101C100001000101FF000100030000FC000494E149 +:101C200079A80401FF000080070064612706009C7A +:011C3000F5BE :00000001FF diff --git a/firmware/ssp_stm.fw.ihex b/firmware/ssp_stm.fw.ihex index 0cca940d4d34..cb0546e94bd4 100755 --- a/firmware/ssp_stm.fw.ihex +++ b/firmware/ssp_stm.fw.ihex @@ -1,10904 +1,13545 @@ -:1000000088DE002031A30208196E0208C19B020895 -:100010002D6E0208416E0208556E020800000000B5 -:10002000000000000000000000000000696E0208EF -:100030007D6E020800000000F13A00082F9B0208C4 -:10004000F1A50208F5A50208F9A5020859720208EF -:1000500001A6020805A60208637002084B71020897 -:100060009B71020815A6020819A602081DA602081F -:1000700021A6020825A6020829A602082DA6020824 -:1000800031A6020835A6020839A602083DA60208D4 -:1000900041A6020845A6020849A602084DA6020884 -:1000A00051A6020855A6020859A602085DA6020834 -:1000B00061A6020865A6020869A602086DA60208E4 -:1000C00071A6020875A6020879A60208956E0208B4 -:1000D00081A6020885A6020889A602088DA6020844 -:1000E000FD710208E172020899A602089DA60208A5 -:1000F000A1A60208A5A60208A9A60208ADA60208A4 -:10010000B1A60208B5A60208B9A60208BDA6020853 -:10011000C1A60208C5A60208C9A60208CDA6020803 -:10012000D1A60208D5A60208D9A60208DDA60208B3 -:10013000E1A60208E5A60208E9A60208EDA6020863 -:10014000F1A60208F5A60208F9A60208FDA6020813 -:1001500001A7020805A7020809A702080DA70208BF -:1001600011A7020815A7020819A702081DA702086F -:1001700021A7020825A7020829A702082DA702081F -:1001800031A7020835A70208DFF8CC0D00787047C8 -:100190002DE9F0418CB001F0DFFC0446DFF8BC5DD6 -:1001A0002E6841E096F9080007283CD00B283ADA7F -:1001B000062838D006F10807B86C002802D5216F50 -:1001C0000818B8644FF0FF313046FA6D92699047D5 -:1001D0008046B8F1010F04D197F84C00B96D096958 -:1001E0008847B8F1020F0BD1797E38697A68801898 -:1001F000BA6D52699047002802D0304601F032FDB6 -:1002000000213046FA6D92699047022801D1012001 -:10021000B87501213046FA6D92699047022802D1E3 -:10022000304601F0CDFD3668AE42BBD1D4E91801AD -:10023000002901D100280BD00A208DF808000220E7 -:100240008DF80000206FADF82A0000A802F046F9F2 -:1002500001200CB0BDE8F08130B585B004460D46F4 -:10026000CA208DF800002888ADF801000220ADF802 -:100270000300BDF80100001D02F050FACDF809009E -:1002800002220DF1030102F073FA02222946DDF881 -:100290000900801C02F06CFA2A882146DDF809006A -:1002A000001D02F065FA0020288000A9DFF8B00CDC -:1002B00002F064FA05B030BDC0F58060322801DA82 -:1002C000012070470020704780B502F086FA407B1D -:1002D000002804D001F04CFCDFF8881C086001BD48 -:1002E00080B501F045FCDFF8801C086001BDDFF837 -:1002F000780C0068704718B400F10C030422DFF892 -:10030000681C5C7DDB68C0681818201818BC02F0F7 -:100310002FBA30B41488651C1580052565541488DF -:10032000651C1580635413885C1C1480007A585433 -:1003300030BC7047F8B50E4614461D4629884A1C45 -:100340002A8037220A5529884A1C2A80027A0A55AF -:1003500000F108077A7E786831182888001902F0C1 -:1003600007FA2888797E40182880787E7968711885 -:100370004058DFF8F01B0968401A0090042200A9D9 -:100380002888001902F0F4F92888001D288080B21E -:10039000FFF792FF002803D029462046FFF75CFFB5 -:1003A000F1BD2DE9F04104460D4616461F46DDF825 -:1003B000188008E043463A4629462046FFF7BAFF30 -:1003C00094F822002D18B542F4DBBDE8F081F8B5B1 -:1003D000044615461E46069F00972269FFF7E1FF77 -:1003E0002069854206DA009733462A4600212046D6 -:1003F000FFF7D7FFF1BD00F110018A688B7CD2189E -:100400008A600069824201D10020886000208873E0 -:10041000704770B582B000F1140674684569002D0C -:1004200007D500920B462246B17B6118FFF7CFFF3C -:1004300073BDAC4200920B462246294602DAFFF712 -:10044000C6FF73BDFFF7ADFF73BD70B504460D4623 -:100450001646FFF7DEFF0123324629462046FFF706 -:1004600058FFA069606170BD2DE9F84304460D4650 -:10047000164601F071FB804602F0AFF98146204636 -:10048000FFF739FF04F10807386C012849DB99F8B8 -:100490000A00002821D0B87D002879D00020786497 -:1004A000B87E3A69F9688B1A834205D0002910D1C9 -:1004B000BB689B1A83420CD13B7E002B06D0009672 -:1004C0002B4682182046FFF782FF02E04FF0FF30F4 -:1004D000F8602046BDE8F2438DE7786CD8F87010DC -:1004E000401A7864012815DA386C78643246294657 -:1004F0002046FFF78EFFB87D002808D033462A46F5 -:1005000039692046FFF716FF2046FFF774FF386968 -:10051000F8603DE0B87D00283AD02046BDE8F243BF -:1005200069E7B87D002833D094F9080099F80A10DB -:1005300000291BD0092801D0072805D133462A46B7 -:1005400039692046FFF7F6FE94F9080008281AD109 -:1005500097F92C00012816DB386B8068B0F57A7F9C -:100560000BD1B7F94E00012807DA11E0082804D1B1 -:10057000DFF8780C406800280AD133462A463969EA -:100580002046FFF7D7FE2046FFF735FF3869F860B1 -:10059000BDE8F183F8B504460D46DFF8C069376859 -:1005A00005E02A4621463846FFF75EFF3F68B7421E -:1005B000F7D1F1BD2DE9F04104460D46DFF8306C6E -:1005C000F76907F10C0898F81510D8F80C00FA68CC -:1005D0008018D8F854205269904700280AD001208A -:1005E00088F81200787A002804D02A462146384636 -:1005F000FFF73AFFB66906F10C07797DF868F268F3 -:1006000080187A6D52699047002809D00120B8748B -:10061000707A002804D02A4621463046FFF724FF8E -:100620000120BDE8F0810288D21C02800A80704758 -:1006300080B50B889B1AADF80030BDF80030002B58 -:1006400009D01018012100F8031C022200A9801E05 -:1006500002F08EF801BD0888C01E088001BD2DE99A -:10066000F04FADF61C1D04460D4601F075FA074625 -:1006700002F0B3F880462DA840F6680102F0C2FBF4 -:1006800000208DF8020023A8282102F0BBFB05A85A -:10069000142102F0B7FB0AA8642102F0B3FB02A800 -:1006A00000210A460B460EC00846ADF8000006467B -:1006B000D7E91801002902D1002800F0EA8298F950 -:1006C000090003F00DF8002800F0E38200A9284695 -:1006D000FFF7A9FFB0461CE0D7E91801424603F036 -:1006E000EBF900F0010011F0000101D100280ED05B -:1006F00008EB8800DFF8FC1A01EBC00292F9090050 -:10070000012804D10DF102012DA8126A904708F1C9 -:100710000108B8F1240FDFDB304601901BE0288888 -:10072000411C2980B97801552888FFF7C5FD0028AC -:100730000DD0BDF8002029462046FFF779FF294655 -:100740002046FFF789FD00A92846FFF76CFF0198B6 -:10075000401C40B2019001989DF80210884280F23E -:1007600090822988481C2880019840F20D1250433D -:100770002DAA825C0A5529884A1C2A802DAA00EBE2 -:10078000020898F8010008552888411C298008F1C2 -:100790000107797801557878032815D0092800F0E9 -:1007A00023810C2800F0FD801A2800F00B821B2802 -:1007B00000F02F811C2800F02F821D2800F03981C5 -:1007C0001E2800F01982AAE798F80100032804D136 -:1007D0002888411C2980B97801552888411C298026 -:1007E000F9780155711CF878000647D405A83A79C4 -:1007F0003254C9B27A790A54491CC9B200220A5447 -:10080000491CC9B2BA790A54491CB8F80E20C9B2B9 -:10081000130A0B54491CC9B20A54491C08F20E02AF -:10082000C9B293780B54491CC9B2D2780A54491CF6 -:10083000C9B298F812200A54491CC9B298F813207A -:100840000A54491CC9B2FA790A54491CC9B23A7A05 -:100850000A54491CC9B27A7A0A54491CC9B2BA7AF4 -:100860000A544E1CF6B2324605A92888001901F038 -:100870007FFF288850FA86F0288055E77A6823A8F9 -:10088000130C3354C9B2130A0B54491CC9B20A548D -:10089000491CBA68C9B2130C0B54491CC9B2130ADB -:1008A0000B54491CC9B20A54491CFA68C9B2130C4A -:1008B0000B54491CC9B2130A0B54491CC9B20A543F -:1008C000491CD8F81120C9B2130C0B54491CC9B2E9 -:1008D000130A0B54491CC9B20A54491CD8F82720E2 -:1008E000C9B2130C0B54491CC9B2130A0B54491C4E -:1008F000C9B20A54491C08F22702C9B213790B5431 -:10090000491CC9B253790B54491CD388C9B21E0A79 -:100910000E54491CC9B20B54491CC9B2127A0A546C -:10092000491CD8F81520C9B2130C0B54491CC9B284 -:10093000130A0B54491CC9B20A54491CD8F819208F -:10094000C9B2130C0B54491CC9B2130A0B54491CED -:10095000C9B20A54491CD8F81D20C9B2130C0B5453 -:10096000491CC9B2130A0B54491CC9B20A54491C88 -:10097000D8F82120C9B2130C0B54491CC9B2130A70 -:100980000B54491CC9B20A544E1CF6B2324623A974 -:100990002888001901F0ECFE288850FA86F028809B -:1009A000C2E608F10301B1F90300C0F3072242EAED -:1009B0000020A1F80300B1F90700C0F3072242EAC2 -:1009C0000020A1F80700B1F90500C0F3072242EAB0 -:1009D0000020A1F8050009222888001901F0C8FEAE -:1009E0002888093028809FE62888034698F8011057 -:1009F000032909D1022208F10301181901F0B8FEF8 -:100A00002888801C28808FE6401C2880B8781855DC -:100A10008AE62888411C2980B978015598F8010098 -:100A200005287FF481AE2888411C29803979015539 -:100A30007AE698F80100012840F0AA802888411C35 -:100A40002980B97901554FF000090DF1280B7CE0A0 -:100A5000192010FB098ADAF81B10F6B2080E06F806 -:100A60000B00701CC0B20A0C00F80B20401CC0B276 -:100A70000A0A00F80B20401CC0B200F80B10461CFC -:100A80000FF2182001F024FFDAF80B00F6B2010E85 -:100A900006F80B10711CC9B2020C01F80B20491C9E -:100AA000C9B2020A01F80B20491CC9B201F80B00B7 -:100AB000491CDAF80F00C9B2020E01F80B20491CDC -:100AC000C9B2020C01F80B20491CC9B2020A01F894 -:100AD0000B20491CC9B201F80B00491CDAF81300BD -:100AE000C9B2020E01F80B20491CC9B2020C01F870 -:100AF0000B20491CC9B2020A01F80B20491CC9B2DB -:100B000001F80B00481CBAF81F10C0B20A0A00F81E -:100B10000B20401CC0B200F80B10401CBAF8193072 -:100B2000C0B2190A00F80B10401CC0B200F80B301C -:100B3000461CBAF81F20DAF81B100FF26C1001F0F7 -:100B4000C7FE09F101095FFA89F9B8798145FFF615 -:100B50007FAFF6B232460AA92888001901F008FED4 -:100B6000288850FA86F02880B8F80721D8F80911AB -:100B700080B2001901F0FCFD2888B8F807110818A8 -:100B80002880B8F807110FF2441001F0A1FECBE560 -:100B900005287FF4C9AD0DF1280B387906F80B0054 -:100BA000701CC0B2797900F80B10461CF6B23246C0 -:100BB0000AA92888001901F0DBFD288850FA86F080 -:100BC0002880B1E508F10301D1F80100020222F00A -:100BD000FF12000A00F0FF101043C1F801004FEAB5 -:100BE0003040C1F8010007222888001901F0C0FD3B -:100BF0002888C01D288097E508F103010888020AAB -:100C000042EA0020088002222888001901F0B0FD85 -:100C10002888801C288087E598F8010001287FF447 -:100C200083AD02A8B9783154711CC9B2FA780A545C -:100C3000491CC9B23A790A54491CC9B27A790A5492 -:100C4000491CFA88C9B2130A0B54491CC9B20A5488 -:100C5000491CC9B27A7A0A54491CC9B23A7A0A5470 -:100C6000491CC9B2BA7A0A544E1CF6B2324602A9DD -:100C70002888001901F07CFD288850FA86F0288029 -:100C800052E5BDF8002029462046FFF7D1FC02F0CE -:100C900055FD0DF61C1DBDE8F08F000050443A4193 -:100CA000504D33202564000050443A205374696D40 -:100CB000652025642C204474696D653A2025642CD8 -:100CC000205261643A202564000000004F4A483AEF -:100CD00020415442442073697A653A20256400001B -:100CE0002DE9F04105460E4601F077FD0746DFF895 -:100CF000B04D2078401C207002F055FF6078401CF9 -:100D0000607097F81880B8F1000F26D03088404402 -:100D100080B2FFF7D1FA002803D031462846FFF70A -:100D20009BFA3088411C3180032141553088411C99 -:100D3000318000F80580424607F1190130884019DA -:100D400001F016FD308840443080FF22002107F179 -:100D5000190002F03FFF002038766078401E607076 -:100D6000C0B2002801D102F018FFBDE8F04102F046 -:100D7000C7BF38B504460D4601F02FFD817A002922 -:100D800009D1417B002906D129884A1C2A800622E4 -:100D90000A550121417331BD38B504460D462888F6 -:100DA00000280CD02046FFF79BFF29462046FFF77E -:100DB000E0FF29462046BDE83440FFF74DBA31BD7B -:100DC00014B585B0049101A90022134614461CC134 -:100DD0000A21ADF8001004218DF804108DF80500EB -:100DE0000A4605A90DF1060001F0C2FC042204A97F -:100DF0000DF10A0001F0BCFC00A901A8FFF72CFAD4 -:100E000006B010BD80B507208DF802000120ADF8B6 -:100E1000000000A90DF10200FFF71EFA01BDF8B5B0 -:100E2000044601F0DAFCDFF8C853296A496C8A6885 -:100E300042F210739A425AD10969002957D1807A37 -:100E4000002854D0DFF8A46330880C30B0F5347F2C -:100E500001DD00203080012003F08AFA03F0C4FA9B -:100E6000ADF80200032003F083FA03F0BDFAADF8F9 -:100E7000000003F0D0FA378802220DF10201B81900 -:100E8000083001F075FCBF1C3780022200A9BFB2F8 -:100E9000B819083001F06CFCBF1C378004222146D1 -:100EA000BFB2B819083001F063FC381D308002224F -:100EB00080B2801900F1080106206B691B6E1B6A65 -:100EC00098473088801C3080022280B2801900F15F -:100ED000080106206B681B6E1B6A98473088801CCF -:100EE000308070680C30B0F5347F00D27060F1BD96 -:100EF0002DE9F041BD4C6068002828D02188884247 -:100F00001FD001F00BFC054666682788A6EB070892 -:100F10001FFA88F84246381900F10801284601F006 -:100F200027FC3A4604F1080108EB050001F020FC1B -:100F30003246294604F1080001F01AFC284601F067 -:100F400005FC626804F108010520FFF739FF002065 -:100F500060602080BDE8F0817EBE0020BC070020DC -:100F6000D868002038BE00203CBE00202DE9F843A0 -:100F700006460F46904601F030FC8146002500F001 -:100F8000EBFDD6F80900041D3078014601297CD01C -:100F90000F2933D0352947D0802900F0A28081293C -:100FA00000F0A980822900F0A680852900F0A380A6 -:100FB000862900F0A080882900F09D808A2900F011 -:100FC000A2808B2900F0BB808C2900F0C7808D297E -:100FD00000F0D380DD2900F0DD80DF2900F0F38010 -:100FE000F0292AD0F42934D0F62943D0F82961D049 -:100FF000F9294FD0FF2900F0C58079E099F8160053 -:10100000207099F81700002840F0DB804FF0FF3087 -:10101000009003462A4642F21071082000F0E9FFD2 -:10102000012089F81700CCE0012005F0D6FB284606 -:1010300005F0C6FB207001205BE0DFF8680A01685C -:10104000090C21700168090A61700068A070012014 -:101050004FE0D9F81000000E2070D9F81000000CF5 -:101060006070D9F81000000AA070D9F81000E07084 -:1010700001203EE0032221462846DFF82C3A9B68F7 -:101080001B6E1B6A9847012033E0204605F018FDCF -:1010900001202EE0B6F80120B6F80300C010C0EB26 -:1010A0000011D6F8050000EB8111204601F060FB2D -:1010B00001201EE02846ADF80000012071790129C9 -:1010C00000D1032003F054F903F08EF9ADF80000CD -:1010D00003F0A1F9022200A9204601F049FB0120FA -:1010E00007E0D6F8050020702146284600F040FFB2 -:1010F0002846BDE8F28329462170214600F07F0092 -:1011000000F036FFF4E701202070DFF89C09466804 -:101110002F46307F002801D12846EAE7707A002860 -:1011200003D1306E4068804707462046316EC9695A -:101130008847002FDCD0306E80688047D8E70120D8 -:10114000B6F80310C1F3C101091D884040F0020048 -:1011500020702146012000F00BFFC9E799F800003C -:10116000207099F80300607099F80500A07099F854 -:101170000600E07001202071BBE7204605F0B4FCBA -:101180000546B5E704F10802211D204603F0A6FE3E -:101190000120AEE77079DFF8101951F82060707AFD -:1011A00000280CD0424639463046FFF74EF9DFF8AA -:1011B000FC18082005F058FD0120207001E02846A9 -:1011C0002070012095E77079DFF8DC1851F8206075 -:1011D000306996F8221090FBF1F0401E0090042236 -:1011E00000A9204601F0C4FA012082E7148B0020F8 -:1011F00000000020F06C0020F0B599B0064601F028 -:10120000ECFA054600F0A8FCD6F809100C1D317860 -:1012100000220B924FF0FF320C9217460A46312AF9 -:1012200000F04281322A00F04381332A00F04981E4 -:10123000342A00F04A81A12A00F06381A22A00F03A -:101240007B81A42A00F08681B12A00F0C682B22AEE -:1012500000F0E583B82A00F09881C12A00F0B4813B -:10126000CD2A00F0B480CE2A00F0C980D12A2ED039 -:10127000D22A34D0D32A3BD0D42A52D0D62A71D005 -:10128000D72A6FD0D82A75D0D92A73D0DA2A79D044 -:10129000DB2A00F02881DC2A00F02C81F12A00F002 -:1012A0008480F22A00F0C380F52A00F0D880F72A63 -:1012B00000F0EB80FA2A00F0E983FB2A00F0D983E2 -:1012C000FD2A00F0D780FE2A00F0E283C4E000216E -:1012D000284601F08EFCFFF70BFE0120BDE0012146 -:1012E000284601F086FC012005F000FD0120B4E055 -:1012F0000020A872E87D002840F0C88342F21074F4 -:1013000038460090034600222146082000F071FE76 -:101310003B4601222146082000F0E2FE0120E8754C -:10132000B4E30120A87200206873E87A002840F036 -:10133000AD83E87D002811D042F210743B460022B4 -:101340002146082000F0CCFE3846009003460122DA -:101350002146082000F04DFE0020E875012005F030 -:10136000C5FC93E3D62901D1012000E00020E872FA -:10137000012072E0D92901D1012000E0002028736A -:1013800001206AE0DFF82007056AB5F95600012858 -:10139000C0F27C830020A5F856003B4602464FF47D -:1013A0007A71082000F09CFE70E30021032980F28E -:1013B0006D830A180B5D82F87430022905D10A5D2D -:1013C00080F877200A5D80F87820491CEEE7002637 -:1013D000032E80F25B83DFF8D006456805EB4605F7 -:1013E000022204EB460105F1580001F0C1F9B5F9FC -:1013F0005810DFF8BC0601F06BFA761CE8E700260F -:10140000032E80F24383DFF8A006056805EB46054E -:10141000022204EB460105F1580001F0A9F9B5F9E3 -:101420005810DFF8900601F053FA761CE8E72969B6 -:10143000090640F12B832178A0F87A106178A0F892 -:101440007C1002212046DFF86026D269126E926974 -:101450009047002840F01A83002019B0F0BD032205 -:1014600021460120DFF840369B681B6E1B6A9847B7 -:101470000120F2E7122221460220DFF82C369B6879 -:101480001B6E1B6A98470120E7E7DFF81C06856999 -:10149000286E806880470028DED001222146052082 -:1014A0002B6E1B6A9847D7E7204605F01DF9D3E756 -:1014B000204605F05CF920780028CDD005F07AF9B7 -:1014C000CAE7207805F07CF9C6E705F064F84FF428 -:1014D0008051002001F0C1FB207805F083F905F070 -:1014E000CBF80120B9E7D6F80510DFF8CC0501F0FC -:1014F000EFF9B1E7D6F80510DFF8C00501F0E8F91B -:10150000AAE794F900500422611C0BA801F030F9FD -:10151000B6F80100062806DB0422611D0CA801F0C4 -:1015200027F994F9097000970C9B00220B99284623 -:1015300000F05FFD20708FE794F900500422611CD9 -:101540000BA801F015F900231A460B99284600F064 -:10155000C7FD82E794F900500422611C0BA801F03A -:1015600007F9B6F80100062806DB0422611D0CA865 -:1015700001F0FEF894F9097000970C9B00220B997A -:10158000284600F011FE207066E720780146032906 -:1015900002D01A290DD010E061788DF80A100129C7 -:1015A00040F07482A0788DF80B0040B200F05EFF2E -:1015B0006CE2617800F066FF68E294F9011040B2D5 -:1015C00002F061F9C0B248E7207801460E3908D030 -:1015D000091F03291CD9091F37D0491E00F09F801D -:1015E000E5E00E208DF8080060788DF80A00A178FB -:1015F0008DF80B10E2788DF80C200023ADF80D303B -:1016000052B249B240B201F040FB00F026FFCEE0FA -:101610008DF80800122802D161788DF80A1013287D -:1016200002D161788DF80B10142802D161788DF801 -:101630000C10152802D160788DF80A0062782178A4 -:101640000FF2804001F044F9B1E06078A17809041C -:1016500001EB0060E17800EB012021794018CDF822 -:101660000A006079A179090401EB0060E17900EBDF -:101670000120217A4018CDF80E00607AA17A090481 -:1016800001EB0060E17A00EB0120217B4018CDF8EE -:101690001200607B8DF81600A17B8DF81710E27B9D -:1016A0008DF81820237C8DF819300FF2284001F0B6 -:1016B0000FF9607C8DF81A00A07CE17C11EB002012 -:1016C00000B20146ADF81B10217D00EB0120617DC9 -:1016D0004018ADF81D00A07D8DF81F00DDF80A0050 -:1016E000002807D1DDF80E00002803D1DDF8120034 -:1016F000002809D00DF10A0184B06846162205F0D1 -:10170000B1FB0FBC01F006FB0DF10A0184B0684685 -:10171000162205F0A7FB0FBC00F0BAFE47E0617887 -:101720008DF809101D2942D1A2780FF2C03001F0C6 -:10173000CFF8A0788DF81300A07801280ED1E078BA -:10174000217911EB0021ADF80A1089B20A469DF803 -:1017500009100FF2AC3001F0BBF828E002280BD1E1 -:10176000E078217911EB0021ADF80C1089B20FF26D -:10177000A03001F0ADF81AE003280BD1E078217910 -:1017800011EB0021ADF8141089B20FF2903001F086 -:101790009FF80CE004280AD1E078217911EB0021B0 -:1017A000ADF8161089B20FF2803001F091F80620E2 -:1017B0008DF8340020780E900DF13D0002A9212211 -:1017C00005F050FB0B208DF83C000020ADF85E00CA -:1017D0000DA800F083FEC0B23FE694F9000001F0CE -:1017E00040FB012840F0ED8020780146032918D005 -:1017F000062955D009291BD00C2935D00D2941D0F7 -:10180000192971D01A2958D01B2900F082801C296F -:1018100000F0BD801D2900F095801E2900F0BE80DB -:10182000CAE00322611C0DF10A0000F0A1FFC8E02C -:101830000722611C0DF10A0000F09AFFBDF80A00B2 -:10184000010A41EA0020ADF80A00BDF80C00010AC7 -:1018500041EA0020ADF80C00BDF80E00010A41EA93 -:101860000020ADF80E00ACE00322611C0DF10A006F -:1018700000F07EFFBDF80B00010A41EA0020ADF840 -:101880000B009EE00322611C0DF10A0000F070FFC6 -:10189000BDF80B00010A41EA0020ADF80B0090E012 -:1018A0000122611C0DF10A0000F062FF9DF80A1090 -:1018B0000FF2802001F00CF883E00822611C0DF18A -:1018C0000A0000F055FFBDF80D00010A41EA0020B2 -:1018D000ADF80D0000239DF911209DF910109DF920 -:1018E0000F0001F0D2F96CE00622611C0DF10A0034 -:1018F00000F03EFFBDF80A00010A41EA0020ADF801 -:101900000A00BDF80E00010A41EA0020ADF80E0001 -:1019100057E00422611C0DF10A0000F029FFBDF818 -:101920000A00010A41EA0020ADF80A00BDF80C00E7 -:10193000010A41EA0020ADF80C000FF2042000F08B -:10194000C7FF3EE00922611C0DF10A0000F010FF04 -:10195000BDF80A00010A41EA0020ADF80A00BDF80E -:101960000C00010A41EA0020ADF80C00BDF80E00A1 -:10197000010A41EA0020ADF80E0000239DF9122073 -:101980009DF911109DF9100001F07FF919E01F2257 -:10199000611C0DF10A0000F0EBFE12E00322611C55 -:1019A0000DF10A0000F0E4FEBDF80B00010A41EA67 -:1019B0000020ADF80B0004E08DF8080060788DF889 -:1019C000090020780146052906D13D480121017012 -:1019D000687A00280DD159E018290AD18DF808003D -:1019E00060788DF80900A0788DF80A00E0788DF80D -:1019F0000B0000208DF8340020780E900DF13D0092 -:101A000002A9212205F02EFA0B208DF83C000020BF -:101A1000ADF85E000DA800F061FDC0B21DE52078B4 -:101A2000052804D1264800210170012015E51A2857 -:101A30000CD10522611C0DF10A0000F099FEBDF8E1 -:101A40000D00010A41EA0020ADF80D0001208DF8DB -:101A5000340020780E900DF13D0002A9212205F0FE -:101A600001FA0B208DF83C000DA800F037FDC0B244 -:101A7000F3E42078002802D0052805D006E00FF214 -:101A8000CC0005F0DEFB01E0FFF732FA0120E4E4D0 -:101A900004F10802211D204603F0E2F90120DCE4F4 -:101AA0003436002048370020000000205466002013 -:101AB000A0A30208ACA30208B8A30208C4A30208AA -:101AC0007EBE002050443A2053657425642025646E -:101AD0000000000050443A20504F5354696D652077 -:101AE00025642025642025640000000050443A202D -:101AF0004441544154595045202564202564000038 -:101B000050443A205354502025642C202564000072 -:101B100050443A20575450202564000050443A2045 -:101B2000535220256400000050443A205352412073 -:101B30002564000050443A205343202564000000EF -:101B400050443A20535320414444000041505F52D6 -:101B500045515545535400000048704718AB0020CC -:101B600080B5FFF7F9FFDFF8A4170860012002BD78 -:101B700080B503F01CFADFF89817D1E90023801A2A -:101B800002BDF8B50446A069E1684518B5F9000042 -:101B9000B5F90270B5F90460B4F85810411A2980FB -:101BA000B4F85A10791A6980B4F85C10711AA980D7 -:101BB000B5F90010C913B1EBE03F13D0B4F95810D8 -:101BC000C913B1EBE03F0DD00FF2587000F080FE6A -:101BD000B5F90000012802DBDFF8380701E047F61D -:101BE000FF702880B5F90210C913B1EBE73F13D09D -:101BF000B4F95A10C913B1EBE73F0DD00FF23070B2 -:101C000000F066FEB5F90200012802DBDFF80407E8 -:101C100001E047F6FF706880B5F90410C913B1EB15 -:101C2000E63F13D0B4F95C10C913B1EBE63F0DD019 -:101C30000FF2087000F04CFEB5F90400012802DB39 -:101C4000DFF8D00601E047F6FF70A88094F908009D -:101C5000002804D1002000E0401C0328FCDBF1BD7B -:101C60000000000070B584B0044600A800210A46B8 -:101C70000B460EC0A069E1684518164694F90800A5 -:101C8000012802D12046FFF77CFF94F908000146A5 -:101C9000012902D9C91E40F08980002801D14FF6E0 -:101CA000FF76DFF868160968411891F87410491E2C -:101CB00006295ED8DFE801F004101D2936424F00E6 -:101CC000B5F90210009100A9B5F90020B21A4A60D6 -:101CD000B5F904208A6056E0B5F90010711A009138 -:101CE00000A9B5F90220B21A4A60B5F904208A6049 -:101CF00049E0B5F90210711A009100A9B5F9002068 -:101D00004A60B5F904208A603DE0B5F90010711A07 -:101D1000009100A9B5F902204A60B5F90420B21A71 -:101D20008A6030E0B5F90210009100A9B5F90020F1 -:101D30004A60B5F90420B21A8A6024E0B5F90010AF -:101D4000009100A9B5F90220B21A4A60B5F9042041 -:101D5000B21A8A6017E0B5F90210711A009100A951 -:101D6000B5F90020B21A4A60B5F90420B21A8A60A7 -:101D700009E0B5F90010009100A9B5F902204A6008 -:101D8000B5F904208A6001280AD1002006E051F844 -:101D9000202002F30F0241F82020401C0328F6DB2C -:101DA00000982880486868808868A88094F90800AE -:101DB000002802D12046FFF7E4FE012004B070BDE8 -:101DC00070B52DED028B82B08169C2688A1890F9D6 -:101DD000081008460A2800F2C280DFE800F0062B4F -:101DE0009DC0C08BC0C065AAB800B2F90240B2F96C -:101DF0000450DFF8180500689FEDB80AB2F900102A -:101E000000EE901AF8EEE00A60EE800AC0ED000ADB -:101E100000EE904AF8EEE00A60EE800AC0ED010A9A -:101E200000EE905AF8EEE00A20EE800A001D80EDE8 -:101E3000010A98E0B2F90240B2F90450DFF8CC048C -:101E40000068061D9FEDD58BB2F9000000EE100A68 -:101E5000B8EEC00A10EE100A05F054FB53EC182B34 -:101E600005F078FB05F048FCB06000EE104AB8EED3 -:101E7000C00A10EE100A05F045FB53EC182B05F0D4 -:101E800069FB05F039FCF06000EE105AB8EEC00AAC -:101E900010EE100A05F036FB53EC182B05F05AFB38 -:101EA00005F02AFC30615EE00020ADF80200ADF8DC -:101EB00000001088ADF802005088ADF80000DFF88F -:101EC0004C040068061D9FEDB70ABDF9020000EE44 -:101ED000900AF8EEE00A60EE800AC6ED0E0ABDF93F -:101EE000000000EE900AF8EEE00A20EE800A86ED8F -:101EF0000F0A38E000200190106801909DED010A62 -:101F0000B8EEC00ADFEDA70A20EE200ADFF8FC03D6 -:101F1000006880ED0C0A26E0DFF8F0030068118805 -:101F2000A0F84A1000F24A005188418091888180CF -:101F300019E0DFF8D803006800F24A001188C18078 -:101F40005188018191884181D18881810BE0DFF83E -:101F5000BC03006892F9001080F8581003E00FF2FB -:101F6000E83000F0B5FC012002B0BDEC028B70BD82 -:101F700070B50D46DFF8A01351F820400026207FF1 -:101F8000002801D1304670BD607A002803D0206E51 -:101F90008068804706462846216EC96988470546FD -:101FA000002E02D0206E40688047284670BD9B07F7 -:101FB00001D542F2107292FBF1F190F822205143C8 -:101FC0000069814201DA0120704700207047002932 -:101FD00001D48164C164002A03D4910701D580F83B -:101FE00020207047002903D4002181644161816170 -:101FF00070472DE9F2418BB0044615461946002082 -:10200000ADF82A0001900A208DF8080000208DF814 -:1020100009008DF80A002646BF4850F826704FF098 -:102020000208387F002831D09DF94820002A08D4C2 -:10203000D00706D513460A460B993846FFF7B7FF77 -:1020400048E03846FFF7C3FFA4F10C00062805D28C -:102050002146C9B20BA83A6E92699047787A002857 -:102060001CD1294649B238467A6E1268904700283A -:102070000ED0386E40688047002805D14146A1F156 -:102080000108C9B20029F4D1002801D1002021E0C3 -:10209000294649B238467A6E52689047787A401C91 -:1020A00078722A4652B20B9938467B6E1B69984764 -:1020B00000F0C0F8072E0CD1002D0AD100208DF8B9 -:1020C0000000112001900A208DF8080000A800F0FF -:1020D00005FA01200CB0BDE8F081000060F61C3A62 -:1020E0002DE9F0418CB006460C46154619460020F5 -:1020F000ADF82A0001900A208DF8080000208DF824 -:1021000009008DF80A00844850F826704FF0020844 -:10211000387F002801D100203CE03846FFF762FFFD -:10212000787A012818D1294649B238467A6E9268E1 -:10213000904700280AD0386E80688047002805D173 -:102140004046A0F10108C0B20028F4D1294649B2A6 -:1021500038467A6ED2689047787A002801D0401EBF -:1021600078722A4652B2214638467B6E5B699847A0 -:1021700000F060F8072E0CD1002D0AD101208DF857 -:102180000000112001900A208DF8080000A800F03E -:10219000A5F901200CB0BDE8F081000089AD84FAFA -:1021A0000A74313F0AD7233C2DE9F04104460D461D -:1021B00016461946584850F82470387F002815D024 -:1021C0009DF91820002A08D4D00706D513460A46E0 -:1021D00029463846BDE8F041E9E606EB460007EB44 -:1021E0008008D8F838008068002801D500201FE05A -:1021F0003846FFF7ECFE324652B2D8F83800816814 -:1022000038467B6E5B699847324652B2294638465B -:102210007B6E1B699847A4F10C00062805D229465D -:10222000204605F01FFD012002E000F003F8012028 -:10223000BDE8F08170B56FF000452C463748016865 -:1022400004E08A68A24200DA144609688142F8D1A3 -:10225000334E3078401C307001F0A5FC7078401C83 -:102260007070AC4200D1002428480168CC660A6F27 -:10227000204682420AD0002801D0002A03D10867F4 -:1022800000F002FB02E0012005F0C9FD7078401E5D -:102290007070C0B2002801D101F07FFC01F030FD68 -:1022A000012070BD38B505461D4C2078401C2070BB -:1022B00001F079FC6078401C607014480068056784 -:1022C0001648016805E08A68B2FBF5F26A43CA6005 -:1022D00009688142F7D16078401E6070C0B2002862 -:1022E00001D101F05AFCBDE8314001F009BD0B49B4 -:1022F0000A6808E01369012B01DAD36813611369D6 -:102300001B1A136112688A42F4D1704710BE002074 -:10231000B0BD00200080FFFF000000206000002012 -:102320003436002058206973206F766572000000F3 -:1023300059206973206F7665720000005A20697316 -:10234000206F766572000000554353542825642998 -:102350004E53000060487047F8B50C4616460125FC -:1023600000282BD106EB86005B4901EBC007F8681B -:10237000E040C00708D52346FA6831460FF2D8205E -:1023800000F0A6FA0220F2BD4FF0FF3000900346A5 -:102390002A4679682046FFF72CFE00280CD02346F9 -:1023A000FA6831460FF2C02000F092FAF868294628 -:1023B000A1400843F8602CE00220F2BD012828D19A -:1023C00006EB8600444901EBC007F868E040C0070F -:1023D00008D42346FA6831460FF29C2000F078FAC0 -:1023E000032516E04FF0FF332A4679682046FFF7B1 -:1023F00077FE002807D02346FA6831460FF288207E -:1024000000F066FA00E00325F8680121A140884346 -:10241000F8602846F2BD01F042BA02B58CB0002146 -:10242000ADF82A1001910A218DF8081000218DF8CD -:1024300009108DF80A1005218DF800100190042272 -:102440000CA90DF1090000F093F90020ADF82A0065 -:1024500000A800F043F80DB000BD80B505F09EFF68 -:102460000FF23420BDE8024000F032BA10B5044645 -:10247000C0B205F09EFF21460FF22820BDE81040B3 -:1024800000F026BA1A2802D1084607F0C7B87047EC -:102490000FB480B5002805D10846002802D11046A7 -:1024A000002804D007F067FBC046C04601E007F0F3 -:1024B0004BFB01BC5DF814FB0022242809D200EB81 -:1024C0008003054800EBC300C068C840C00700D5C2 -:1024D0000122104670470000F06C002030B587B034 -:1024E0000446012594F90000062800F2A180DFE8E7 -:1024F00000F00428445F76979B0004F1090182B044 -:102500006846212204F0AEFC0CBC94F90810606807 -:1025100040B200F01AFE02280AD1606800B200F052 -:10252000D9FF002561680FF2881000F0D1F985E02D -:10253000032840F0838061680FF27C1000F0C8F936 -:102540007CE060681A280AD104F1090001F019FA48 -:10255000637B227BE17A0FF2681000F0B9F994F9FD -:102560000810606840B200F0D5FE032866D16168AB -:102570000FF2641000F0ACF960E0618D00A800F08B -:10258000C3FF9DF9040002280AD1009800B200F0B0 -:10259000A1FF002500990FF2481000F099F94DE0D5 -:1025A00003284BD100990FF2401000F091F945E05B -:1025B00007F010FC02280AD1606800B200F08AFF20 -:1025C000002561680FF2281000F082F936E0032838 -:1025D00034D161680FF2201000F07AF92EE06068C3 -:1025E00005280CD1284607F0CEFC02280DD0032880 -:1025F00024D161680FF2101000F06AF91EE0022881 -:102600001CD107F0B1FD0228F1D1606800B200F0E2 -:1026100061FF002561680FF2E80000F059F90DE054 -:10262000204600F0D6FF09E0204601F063F905E0FE -:1026300061680FF2DC0000F04BF90025284607B076 -:1026400030BD012070470FB4022004B07047012054 -:102650007047002070477047534D41432025642048 -:102660002564202564000000534D41202564202569 -:102670006420256400000000534D5243202564204F -:102680002564202564000000534D52202564202538 -:1026900064202564000000005044205365745354A6 -:1026A0000000000050442055543A202564000000EA -:1026B000414C4F4620256400414C43462025640090 -:1026C0004F4A4820454C20307825782030782578AE -:1026D0002030782578000000524C434620256400C5 -:1026E000504C4F4620256400504C43462025640042 -:1026F00050414F4620256400504143462025640048 -:1027000050504F4620256400505043462025640019 -:102710004558204C4D454C202564000030B5134DE4 -:10272000044681B0287820B9281D07F09BFD0120C0 -:102730002870281D07F0B0FD204608F05DFC044617 -:10274000281D07F0CAFD204601B030BD30B5074D49 -:10275000044681B0281D07F09FFD204608F0A6FD25 -:10276000281D01B0BDE8304007F0B7BDF0BB002028 -:1027700010B5044604F076FB204610BD30B5044683 -:102780000F480D46017881B0491C017001F00BFA29 -:10279000A068E168884209D13821204609F014F880 -:1027A00001F001FAA068E1688842F5D02946204688 -:1027B00009F028F801B0BDE8304001F0A1BA00BF2F -:1027C0003436002010B5DFF8D8454FF48E72002162 -:1027D000204601F0FFF9204610BDDFF8C405704720 -:1027E00010B5FFF7EFFF044600231A4611460846CE -:1027F00000F04BFAC046C04601F00EFB204600F048 -:1028000018F801F051FD204600F0B1F9204600F023 -:1028100014F8204600F018F800F072F900206072F9 -:10282000A072E0722073012060730020E075012027 -:1028300010BD0021C17101722BE010B5044601F0FA -:1028400092FB0120607110BD10B5044601F0F9FB48 -:102850000120A07110BD38B50446012501F0A4FC8B -:10286000012804D12846E0700020A0700AE0022868 -:1028700004D10020E0702846A07003E00020E07042 -:10288000A0700546284632BD80B501F0D3FD012079 -:1028900002BD10B50446E07901F0D6FE0121217099 -:1028A00010BD70B504460025E679E171FFF7F1FF30 -:1028B000002807D02046FFF7C0FF2046FFF7C4FFDF -:1028C000012503E0E6712046FFF7E3FF284670BDCF -:1028D0000EB470B5C1B0054600A84FF4807100F089 -:1028E00091FAFFF77AFF044645AB2A464FF4807110 -:1028F00000A808F0D5FF00A808F0F0FF451C00A8CC -:102900002818002100F8011CDFF898643078401C7A -:10291000307001F048F97078401C7070207E2818E3 -:10292000FF2810DA207E002803D0207E00190A211B -:1029300001762A4600A9207E00191930FFF718FFFA -:10294000207E281820767078401E7070C0B2002853 -:1029500001D101F022F901F0D3F941B070BC5DF86A -:1029600010FB0428DFF8400403D8DFF840140160AE -:102970007047DFF83C14016070472DE9F8430546C5 -:102980000E4617464FF0020801F00DF9DFF8144427 -:102990006078401C60709DF80000401E8DF80000BB -:1029A00017F8019B2846FFF7DCFF00AB4A46394683 -:1029B000304601F071FE002809D06078401E60703A -:1029C000C0B2002801D101F0E8F8012015E05FFA5B -:1029D00088F8424629460FF2F430FFF779FF404667 -:1029E000A0F101080028E0D16078401E6070C0B2FC -:1029F000002801D101F0D1F80020BDE8F2832DE9D3 -:102A0000F04704460D4616461F46DFF8A88308988F -:102A100088F8000001F0C7F8DFF8889399F8010002 -:102A2000401C89F801002046FFF79BFF4FF0020A87 -:102A3000434632463946284601F0D8FE00280BD0DE -:102A400099F80100401E89F80100C0B2002801D1A8 -:102A500001F0A3F8012017E05FFA8AFA52462146F6 -:102A60000FF27430FFF734FF5046A0F1010A00283E -:102A7000DED199F80100401E89F80100C0B200289B -:102A800001D101F08AF80020BDE8F0872DE9F84374 -:102A900005460E46174698464FF0020901F083F8A6 -:102AA000C04C6078401C60702846FFF75AFF4246D1 -:102AB0003946304601F08CFF002809D06078401E6E -:102AC0006070C0B2002801D101F067F8012015E064 -:102AD0005FFA89F94A4629460FF20830FFF7F8FEF7 -:102AE0004846A0F101090028E1D16078401E6070DD -:102AF000C0B2002801D101F050F80020BDE8F283F7 -:102B000009F0D6BAF8B5044600273D46AA4E0DE0B6 -:102B100039464F1EC9B200290AD1002804D12069C4 -:102B20000121A9408843206100276D1C122D10DA75 -:102B300056F82500006E006880470128E8D1216919 -:102B40000122AA401143216156F8251001220A777B -:102B5000E3E72069032805D02069022802D0206914 -:102B6000012803D1206940F480502061F1BD02F0BA -:102B700023B802F0A0B881B00022ADF80220ADF871 -:102B80000020C079042808D0062809D008280AD0D7 -:102B900009280BD00A280CD00EE04FF4C8600DE0D5 -:102BA0004FF448600AE04FF4C85007E04FF4FA5081 -:102BB00004E042F2107001E041F27070ADF80220C2 -:102BC0000DE0BDF80020521CADF80020BDF800203B -:102BD0008242F6DBBDF80220521CADF80220BDF89F -:102BE00002208A4203D20022ADF80020EEE701B0B5 -:102BF0007047417210B58CB0FDF7C6FA0446FFF776 -:102C0000ECFD0021ADF82A1001910A218DF8081081 -:102C100000218DF809108DF80A10407A00280DD097 -:102C2000002C18D008468DF80000052001900B20DC -:102C30008DF8080000A8FFF751FC0CE0002C0AD02A -:102C400001208DF80000052001900B208DF8080070 -:102C500000A8FFF743FC0CB010BD02F053B802F01F -:102C60005BB801210846F8E701210846F7E7022191 -:102C70000120F2E702210120F1E702F057B810B578 -:102C80000446FFF7AAFD447510BD10B44B4C2070EC -:102C9000002801D5183020706170A270A4F80330AC -:102CA00010BC704710B504002FD0FDF720FB43493E -:102CB0008A68002A00D0841AB1F80320A218A1F86B -:102CC000032012B2B2F57A7F06DBA2F57A72A1F880 -:102CD00003208A78521C8A7091F902203C2A04DB76 -:102CE0003C3A8A704A78521C4A7091F901203C2A79 -:102CF00004DB3C3A4A700A78521C0A7091F90020B1 -:102D0000182A01DB00220A70886010BD2B490522B9 -:102D100004F0A8B80FB470B51546294E284609F03E -:102D200093FA0022274B09F09DFA306171610498F3 -:102D300009F08AFA0022244B09F094FA306071609D -:102D4000059C204609F080FA00221F4B09F08AFA00 -:102D5000B060F1609DF81C0030769DF81D00707623 -:102D60009DF81E00B0769DF81F00F0769DF82000BB -:102D70003077BDF82100A6F81D00BDF82300A6F8A5 -:102D80001F002B46224604990FF26400FFF7A0FDB6 -:102D900070BC5DF814FB0A49222204F063B80000FD -:102DA00020A1002034360020383700200054004095 -:102DB0000058004061BE002000000020F0BC002050 -:102DC000FCB9002000408F4080842E4149574520A7 -:102DD00025642025640000004952452025642025F3 -:102DE0006400000049524F452025642025640000FE -:102DF00050443A20536574506F7320256420256435 -:102E000020256400002209F051BB50F8041B61B179 -:102E100050F8042BD30744BFA9F101039A180023EB -:102E200042F8043B091FFAD1EFE770474FF0FF313A -:102E3000801E012812D9C01E04280FD9C01F0528E2 -:102E40000CD909380AD0801E022807D9C01E03D029 -:102E5000401E082802D902E00A2100E001210846AC -:102E6000704780B501460020C91E0DD0C91E0BD089 -:102E7000C91E09D0C91E012906D90D39032903D954 -:102E8000091F03D0491E07D1012002BD1D210FF2E9 -:102E90000C00FFF71DFD012002BD000050443A2048 -:102EA0004C4C53202564000038B504464FF0FF35E4 -:102EB000FFF750FA232C2DD8DFE804F02B2C172B2A -:102EC0002B172B2B17172C2C141712122B2B2C2CE7 -:102ED0002C2B2C2B142B172B172B2B191C202428B5 -:102EE000C82517E04FF47A7514E0142512E0D0F8E5 -:102EF000DC540FE000F2DC40856A0BE000F2DC40BD -:102F0000056D07E000F2DC40856F03E0D0F87C55EA -:102F100000E04225284632BD38B5DFF88C49FEF77F -:102F20001BFEE06209F0DCFAFFF714FA20630025CB -:102F300008E01D2D03D1DFF87429C1F8AC24406AE4 -:102F400080476D1C242D80F2FE80216B05EB8500EF -:102F5000C00000224254401842704FF0FF324260DD -:102F600000220272C2604272032D04D17431DFF874 -:102F700040298A62E3E71C2D00F0E180022D03D195 -:102F8000DFF8082A4A67DAE7002D67D0042D04D15C -:102F90007431DFF8042A0A65D1E7052D04D17431B4 -:102FA000DFF8F8298A67CAE7062D04D1DFF8F0298F -:102FB000C1F81421C3E7072D05D101F58A71DFF8A7 -:102FC000E4298A62BBE7082D05D101F58A71DFF893 -:102FD000D8290A65B3E7092D05D101F58A71DFF813 -:102FE000CC298A67ABE70A2D38D00B2D36D0012DBE -:102FF00034D00C2D04D1DFF8B829C1F804229EE7A3 -:103000000D2D05D101F50171DFF8A8298A6296E737 -:103010000E2D05D101F50171DFF89C290A658EE7B7 -:103020000F2D05D101F50171DFF890298A6786E738 -:10303000102D04D1DFF88829C1F8A4227FE7112DD3 -:1030400004D1DFF88029C1F8CC2278E7122D05D011 -:10305000142D03D0132D01D0162D10D1DFF86819CF -:103060000161DFF868194161DFF864298261DFF8E6 -:103070006429C261DFF86029026241625FE7152DB1 -:1030800004D1DFF85829C1F86C2358E7172D05D172 -:1030900001F55B71DFF848290A6550E7182D05D165 -:1030A00001F55B71DFF83C298A6748E71A2D05D1E5 -:1030B00001F20C41DFF830298A6240E71E2D05D16C -:1030C00001F2AC41DFF824298A6238E7192D04D1D6 -:1030D000DFF81C29C1F80C2431E71F2D05D101F2BE -:1030E000AC41DFF810290A6529E7202D05D101F24E -:1030F000AC41DFF804298A6721E7212D04D1DFF8EC -:10310000FC28C1F84C251AE7222D05D101F24C51BB -:10311000DFF8EC288A6212E7232D05D101F24C5129 -:10312000DFF8E0280A650AE71B2D05D101F20C4102 -:10313000DFF8D4280A6502E71C2D7FF4FAAEDFF829 -:10314000CC184162FBE6012032BD0CB42DE9F047FA -:1031500086B005460F4601242E461A2E48D006EBAF -:1031600086004FEAC008DFF840970B2F20D1D9F82E -:10317000300008EB000A9AF80100002818D0284611 -:10318000FFF754FE012813DB2846FFF74FFE9AF89D -:10319000011081420CDB284600F066F90446D9F89C -:1031A00030004044002141700FF66C00FFF790FBA7 -:1031B000D9F8300018F8001000292AD108EB0001D6 -:1031C0004A78002A25D1002208F8002010464870CD -:1031D0000EA983B06846242203F054FE0EBC284694 -:1031E00000F060F802280FD0032812D1032410E069 -:1031F0000EA983B06846242203F044FE0EBC284684 -:1032000000F050F8022801D1022046E0032800D146 -:1032100003240A2F0DD1DFF89096D9F8300006EB81 -:1032200086014FEAC10818F80010491C08F8001080 -:1032300017E00B2F15D1DFF87096032E07D1D9F8C0 -:10324000300090F87900002801D104F0F4FF06EB7B -:1032500086004FEAC008D9F8300040444178491C44 -:103260004170DFF84496D9F83000D9F82C1006EBFD -:1032700086024FEAC208D1E91823CDE90223B1F84A -:103280005C10009108EB00014B7818F800203146E3 -:103290000FF28C70FFF71CFB204606B0BDE8F0076C -:1032A0005DF80CFB0EB42DE9F04185B00546012414 -:1032B000C0B2FFF7F9FDDFF8F06505EB8501326B71 -:1032C00002EBC107786000203872F8600BA984B067 -:1032D0006846242203F0D6FD0FBC3F69B847022898 -:1032E00001D1022011E0032801D103240CE0D6F81B -:1032F0002C80D8E91867204600212A4609F098F961 -:1033000030433943C8E91801204605B0BDE8F00153 -:103310005DF810FB2DE9FF4704460D4601262746C0 -:1033200007EB87004FEAC008DFF87C95D9F830003A -:103330001A2F56D008EB000A9AF80100022814DB75 -:103340002046FFF773FD01280FDB2046FFF76EFDD7 -:103350009AF80110814208DB2046FFF767FD8AF8E2 -:1033600001000FF2D060FFF7B3FAD9F8300018F877 -:103370000010002904D108EB00025278002A5AD02C -:103380000A2D09D1002903D0491E08F8001017E0C2 -:10339000002108F8001013E00B2D11D108EB0001FB -:1033A0004A78002A02D0521E4A7001E000224A7078 -:1033B000032F05D190F87900002801D104F04AFFCD -:1033C000D9F8300018F80010002934D14044407872 -:1033D000002830D1204600F047F803282BD10326DF -:1033E00029E018F80010002904D108EB00025278F7 -:1033F000002A20D00A2D09D1002903D0491E08F83F -:10340000001012E0002108F800100EE00B2D0CD186 -:1034100008EB000A9AF80100002803D0401E8AF841 -:10342000010002E000208AF80100204600F01CF8AC -:10343000032800D10326D9F83000D9F82C10D1E99F -:103440001823CDE90223B1F85C10009108EB0001CC -:103450004B7818F8002039460FF2E050FFF738FAA1 -:10346000304604B0BDE8F0872DE9F041074601265B -:1034700007EB8700C500DFF83044206B281840694F -:103480008047032800D10326384640B200F080F977 -:10349000032800D10326206B295C002917D12818A6 -:1034A0004178002913D14FF0FF31416000210172B2 -:1034B000C160D4F82C80D8E9184501203A4609F0BB -:1034C000B7F824EA000025EA0101C8E918013046EE -:1034D000BDE8F08138B5044604EB8400C000DFF895 -:1034E000C853296B002242544018114641702046AF -:1034F000FFF7BAFFE86AD0E9182321460FF25050CF -:10350000FFF7E6F9012032BD2DE9F041AEB00446E7 -:103510000E46B6B201208DF85400DFF88C5316A881 -:10352000E96A5C2203F0AEFC139516A984B06846E4 -:103530005C2203F0A7FC0FBC00F0BCF900270BE0F5 -:10354000032803D1149703208DF85400286B4044BE -:10355000002101727F1C7FB2242F2ADAEA6AD2E9A5 -:1035600018013A4600F0A8FA00F0010011F000013D -:1035700001D10028EED007EB87004FEAC008286B86 -:10358000404441680029E5D4027A521C0272D2B24A -:10359000724389B28A42DDDB806980470228CFD13D -:1035A000149702208DF85400DDE91401C4E90001EC -:1035B00003E0DDE91401C4E900012EB0BDE8F081AB -:1035C00000210A3842F20772904200D201210846D7 -:1035D00070472DE9F04383B0044600200190042297 -:1035E00004F1090101A8FFF7C3F86168DFF8B862C8 -:1035F000376B282505FB01704068019A904204D181 -:103600000FF25840FFF764F968E01046FFF7D8FF63 -:10361000002809D16168019B05FB017042680FF227 -:103620004840FFF755F959E0DFF8E4733868D0F8FF -:10363000008025E090F908906068316B05FB001070 -:10364000C06820FA09F0C00717D54FF0FF3000908E -:103650000346012201994846FEF7CBFC40B2002800 -:103660000BD1616801980090306B05FB0100436845 -:103670004A460FF20840FFF72BF94046D0F8008089 -:10368000B842D7D13868D0F800801FE090F9089090 -:10369000C86820FA09F0C00715D54FF0FF330122A2 -:1036A00049684846FEF71CFD40B200280BD161680E -:1036B00001980090306B05FB010043684A460FF209 -:1036C000D430FFF705F94046D0F800806168326BCE -:1036D00005FB0121B842D9D101984860BDE8F783C4 -:1036E0002DE9F8438146002425466F4F21E005EB84 -:1036F0008500C600386B06EB0008002088F809003A -:10370000FA6AD2E918012A4600F0D6F900F0010061 -:1037100011F0000101D100280AD04846D8F81C1049 -:103720008847002804D0386B3018012141720C46BC -:103730006D1C242DDBDB2046BDE8F2835A48C16AAC -:10374000D1E91823002B01D1002A0DD0002107E078 -:1037500002EB8203026B02EBC30200235372491C8B -:1037600049B20A46242AF3DB704700B502464E48A8 -:10377000C36AD3E9180100F09FF900F0010011F0CD -:10378000000101D1002801D0012000BD084600BD84 -:103790002DE9F0478146012409EB8900C500424E1E -:1037A000306B2818C068002829D0DFF864723868A8 -:1037B000D0F8008003E003244046D0F80080B842EF -:1037C0001DD090F908A0306B2818C168012202FAB8 -:1037D0000AF2114021FA0AF149B20129ECD14FF065 -:1037E000FF33012241685046FEF77AFC0028E2D000 -:1037F000524649460FF2B420FFF76AF8DCE720464C -:10380000BDE8F08710B58CB004460020ADF82A0062 -:1038100001900A208DF8080000208DF809008DF82D -:103820000A00FEF799F90020ADF82A00600719D5C3 -:103830000520FFF79AFF002807D004208DF800002C -:103840000520019000A8FEF749FE0220FFF78DFF3A -:10385000002807D004208DF800000220019000A865 -:10386000FEF73CFEE0060CD50820FFF77EFF00289F -:1038700007D003208DF800000820019000A8FEF773 -:103880002DFE0CB010BD02460020092A00D0704762 -:1038900080B5012902D108F083FF012002BD024951 -:1038A0002C2203F0EFBA000078B90020C7CC000842 -:1038B0001D8000080FB417980099016001994160BC -:1038C000029981600399C160049901610599416180 -:1038D000BDF84A100183BDF84C104183BDF84E106D -:1038E00081830C9901620F9941621099816204B041 -:1038F000704700004168122903D1C17A002004F00A -:1039000056BD132903D1017B012004F050BD1429B9 -:1039100003D1417B022004F04ABD152902D1C07AAF -:1039200004F056BD17292BD1817A1B2902D01D29FD -:103930000DD07047C17B012903D1B0F80B0006F010 -:1039400007B902291CD1B0F80D0006F0FFB8017DBF -:10395000012903D1B0F80B0009F0ECB9022903D119 -:10396000B0F80D0009F0DAB9042903D1B0F8170056 -:1039700009F0ECB9032903D1B0F8150009F0F2B948 -:103980007047244908607047000000003BA1000810 -:103990002048006870470000856A0008239F0008DF -:1039A000BB8A0208CD9D0208399D0008EFC60008B9 -:1039B000796D000869890208E57D0208AD93020867 -:1039C0003B9A0208C9A002084726000843260008BF -:1039D0004F2600085326000857260008E59E0208D7 -:1039E000FD9F0208899202084B940008C5860208D0 -:1039F000C9970208B9040108CBB501081F91020854 -:103A00008FDE010815060108C99A0008859602088C -:103A1000BC07002014BE0020414C20455800000087 -:103A2000414C2564202564202564202564202564DC -:103A300000000000524C204558000000524C256404 -:103A400020256420256420256420256400000000D2 -:103A50005445524D20256420256400004558204CD3 -:103A60004D435231202564004558204C4D4352327D -:103A70002025642025642025640000004558204C42 -:103A80004D4352332025642025642025642025647D -:103A9000000000004558204C4D435234202564203E -:103AA000256420256420256400000000534D524108 -:103AB0002025642025640000D2B2203A22BF21FADA -:103AC00002F0002170472032D141D040484091405F -:103AD000D140484070478268521C8260426832B1CF -:103AE0000268531C036011704168491E41607047B1 -:103AF00030488168002904BF08B008E0EFF309826C -:103B0000A2F12802036882E8F84F83685A6000F047 -:103B1000A6F8816859B14A6892E8F84F036002F14B -:103B2000280282F3098813F47F4F36D07047224869 -:103B300022490968401A80F308884FF08071C161FA -:103B40001F4981617FF0060E704701BC2046DFF8F7 -:103B500074E000BDFEE71C48006818490968401A77 -:103B6000203820F0070080F308884FF0000181F32F -:103B7000118862B600F00DF8FEE74FF0000181F306 -:103B800011881249124A0A604FF0800181F31188AE -:103B900070470E490E4A0A6070474FF0000181F3EA -:103BA0001188704700BF4FF0800181F31188704782 -:103BB00000BF00003436002068DE0020C8A50208DF -:103BC000A59B0208553B00080000000804ED00E03A -:103BD0000000001010B5044610460A460146204673 -:103BE00009F048F9204610BD30B504460020A07108 -:103BF000206A81B000F57A606062E16908001CBF4C -:103C000020468847FFF7C9FFE5681FE0FFF7CBFFB5 -:103C1000206920B1687C2169497C88421DD3287CB9 -:103C2000400710D5E868216A401A012806DA2846BC -:103C300000F082F8FFF7B7FF287C70B1E868616A8E -:103C4000411A48BF6062FFF7A8FF2D68002DDDD143 -:103C500001B0BDE83040FFF7A6BF01B030BD70B580 -:103C600004460020607001202070206938B303E012 -:103C700028682061FFF791FFFFF795FF2569002D68 -:103C80001CBF2E7C002E1CD070070ED5E868216A60 -:103C9000411A012905DA284600F04EF8287C20B99F -:103CA0000DE0616A411A48BF606206F0FB0010280F -:103CB000DED1A86880684068007C0028D8D1FFF772 -:103CC00072FFA07968B900206071206990B1206905 -:103CD000007C002820690BD0806880684068A06064 -:103CE0000CE02046FFF780FFA0790028F9D1EAE731 -:103CF000A06003E0A0602070FFF74FFF204670BD7A -:103D000010B5444C2078401E2070C0B298B960684D -:103D100088B1FFF748FF606830B10120207020466D -:103D2000FFF72BFF002020706078002804BFBDE85B -:103D30001040FFF732BF10BD10B5816849B1354A58 -:103D4000126AC2600A68496802B151600A600021C3 -:103D50008160017C11F0030101741BD12D4C21699C -:103D600091B92061207838B9012020702046FFF7F2 -:103D700004FF0020207001E001206071607848B9E4 -:103D8000BDE81040FFF709BF4A7C437C9A42E8D364 -:103D90008142E7D010BD30B51E4D04462978607CC5 -:103DA00081B0491C297005F20C0100E011460A6837 -:103DB00012B1537C9842F9DB22600C60207C40B940 -:103DC000FFF7F1FE2046FFF7B7FF687808B9FFF765 -:103DD000E4FE01B0BDE8304092E730B50D4C81B053 -:103DE0002578681C20702046FFF7C7FE2570607894 -:103DF00020B901B0BDE83040FFF7CFBE01B030BD03 -:103E000000B581B009F06AF802480121017001B0E3 -:103E100000BD0000343600207CB50121032009F0EC -:103E2000DBF8DFF8A84B204609F050F9DFF8845D95 -:103E3000284609F04BF901208DF8040000208DF888 -:103E4000050001208DF8060000208DF807000121F3 -:103E500028460183C0460120009000A9284609F0A9 -:103E600091F9022128460183C0460220009000A952 -:103E7000284609F087F901208DF8040000208DF80C -:103E80000500ADF806004FF48056009600A92846BC -:103E900009F078F9314628464183C04601208DF863 -:103EA000040000208DF8050001208DF80600002098 -:103EB0008DF80700009600A9204609F063F9314605 -:103EC00020464183C04604220621284609F0A8F96D -:103ED00004220721284609F0A3F902208DF80400E6 -:103EE00001208DF805008DF8060000208DF80700F0 -:103EF0004020009000A9284609F044F98020009055 -:103F000000A9284609F03EF904220A21284609F0B2 -:103F100087F909220321284609F082F902208DF849 -:103F2000040001208DF805008DF8060000208DF8B2 -:103F300007004FF48060009000A9284609F022F99C -:103F40000820009000A9284609F01CF9286820F0F4 -:103F5000300040F010002860206820F0300040F071 -:103F60001000206073BD2DE9FF4101214FF40010C6 -:103F700009F03DF80121022009F02EF801214FF44B -:103F8000804009F03FF801214FF4001009F050F88B -:103F900000214FF4001009F04BF80020ADF80400A8 -:103FA0004BF6FF74ADF806404FF48065ADF80A504B -:103FB0004FF480463046ADF80C000A20ADF80800FA -:103FC000DFF85C7C0097DFF85C8C00A9404609F0C4 -:103FD0006AF90121404609F0C9F90A20ADF8080044 -:103FE000009701214FF4800009F001F8012102201F -:103FF00008F0F2FF01214FF4800009F019F80021C8 -:104000004FF4800009F014F80020ADF80400ADF87A -:104010000640ADF80A50ADF80C600A20ADF8080073 -:104020000097DFF8044C00A9204609F03CF9012173 -:10403000204609F09BF9DFF8C00CC0F80080BDE80D -:10404000FF812DE9F04192B001214FF4805008F03A -:10405000D9FF0121084608F0BFFF01214FF480007D -:1040600008F0BAFFDFF8644905221146204609F03E -:10407000D7F805220721204609F0D2F805220621AB -:10408000204609F0CDF805220421204609F0C8F8A1 -:1040900002208DF8040001208DF805000020ADF805 -:1040A00006002020009000A9204609F06BF880202F -:1040B000009000A9204609F065F84020009000A972 -:1040C000204609F05FF81020009000A9204609F072 -:1040D00059F8DFF8EC4B204609F0AAF9DFF8E45B69 -:1040E0000020288068600120288100206881E86025 -:1040F0000720288200206880DFF8006C304609F035 -:1041000007FADFF8FC7B384609F002FA4FF48060CA -:10411000069000210D9103210E9100210F910A912B -:104120000890DFF8B40C03900846109009900790AF -:104130004FF400300C9008460B904FF0C068CDF85B -:104140000880402005900846049002A9304609F0F6 -:1041500063FA00200B90CDF80880059005F114005B -:10416000049002A9384609F057FA002068802946D1 -:10417000204609F08CF901220221204609F0B6F907 -:1041800001221146204609F0B1F90121204609F02B -:10419000A1F90021304609F066FA0021384609F0FD -:1041A00062FA12B0BDE8F08110B588B001214FF07D -:1041B000805008F01CFF01214FF4802008F00CFF14 -:1041C000012009F0B9FA0F2009F066FC044601202D -:1041D00008F0FFFE002008F0FCFE002C01D003F0E8 -:1041E0007DF8012008F096FE412008F037FF0028F6 -:1041F000FAD04FF4807008F0D6FE012008F0E6FEF9 -:1042000009F0EDFA3F20069040F2FF1007900020E1 -:10421000059005A809F09AFA0020029002A909F079 -:10422000FFFA00208DF8070001208DF804008DF8BA -:1042300005008DF8060001A9002009F06AFB4FF483 -:10424000800009F009FD4FF48000039000208DF8F4 -:10425000100008208DF8110001208DF8120003A82D -:1042600009F0B8FC03208DF800000D208DF8010046 -:1042700000208DF8020001208DF8030000A809F04D -:10428000F8FC032009F0B9FB4FF4804009F06FFC03 -:104290004FF4800009F0E0FC01214FF4804009F068 -:1042A0002CFC012008B010BD30B585B001210846B6 -:1042B00008F092FE01214FF4804008F0A3FE002098 -:1042C0008DF810008DF8130001200390DFF8FC56E4 -:1042D00003A9284608F056FF4FF40064039403A98D -:1042E000284608F04FFF0420039003A9284608F051 -:1042F00049FF0021084609F0F5FC0B21002009F0D8 -:10430000F1FC0221002009F0EDFC00208DF80800EE -:1043100001208DF80A0001900C208DF8090001A8F9 -:1043200009F058FC01940C208DF8090001A809F04F -:1043300051FC204609F090FC042001900C208DF8DF -:10434000090001A809F046FC042009F085FC28209A -:104350008DF800000F208DF8010000208DF802007C -:1043600001208DF8030000A809F083FC05B030BDE2 -:1043700030B58DB0044601214FF4807008F042FE44 -:1043800000A808F039FF0A20009003208DF80400EF -:1043900000208DF8070000A9DFF8300608F0F2FED3 -:1043A00009F0B4FC02A809F0F6FC4FF48030039049 -:1043B00002A809F0E2FC06A809F0D5FCDFF8545C7D -:1043C00006A9284609F0AFFC07230122214628460A -:1043D00009F0F2FC0121284609F031FD01212846AF -:1043E00009F0DFFC0DB030BD38B5DFF8284C2046B1 -:1043F00009F020FD4FF47A750221204609F036FDC0 -:10440000002803D12846451E0128F5DA2046BDE8DC -:10441000324009F01FBD80B50021DFF8F80B09F02C -:10442000C0FC00214FF48070BDE8044008F0EABDF4 -:104430000000000038B5040039D0012009F07CF9F3 -:10444000002009F0F4FA4FF40055042009F070FB45 -:10445000012804D12846451E80B20028F5D100EE7F -:10446000104AB8EE400ADFED8A0A80EE800AF0EECC -:10447000000A20EE200ADFED870A80EE800ABDEEFA -:10448000C00A10EE100A401E80B209F0C6FA4FF4BE -:10449000804009F06CFB4FF4800009F0DDFB012047 -:1044A00009F0C5FADFF88C0B0121416031BD012014 -:1044B00009F042F90020BDE8324009F0B8BA000026 -:1044C00030B4014601200023DFF86C2B1C469460B9 -:1044D000946814F00C0FFBD10C460B2C55D8DFE878 -:1044E00004F02054545406192031383F464D946846 -:1044F00044F080049460DFF8444B4FF4C0652560BD -:10450000146824F080741460DFF8344BDFF8345BF7 -:1045100025603BE00346DFF8284BDFF82C5B256085 -:1045200034E094689460DFF8144B4FF4C065256064 -:10453000146824F080741460DFF8044BDFF80C5B1F -:10454000256023E00223DFF8F84ADFF8045B2560EA -:104550001CE00323DFF8E84ADFF8F85A256015E08D -:104560000423DFF8DC4ADFF8F05A25600EE005236B -:10457000DFF8CC4ADFF8E45A256007E00623DFF8CD -:10458000C04ADFF8DC5A256000E01846002B4AD00C -:1045900003EBC3030FF62C341B1994689460146862 -:1045A00024F080741460146824F0806414609C7893 -:1045B0001D8844EA8514DD786D086D1E44EA0544C3 -:1045C0001D7944EA05645460DC881D7A2D0745EAAC -:1045D0008414DFF8905A2C60146844F080741460DE -:1045E0001468A401FCD55B7943F4C063DFF84C4A3E -:1045F00023609368936093689360052904D1916860 -:1046000041F09001916005E00A2903D1916841F4DD -:1046100080519160916841F002019160916801F0D0 -:104620000C010829FAD1DFF8181A0968DFF8382ACE -:10463000914207D2DFF8341A0A6822F4404242F469 -:1046400080420A6030BC70473AE710B5DFF8204A74 -:104650000121206808F0C3FE206808F0F5FDBDE8E0 -:10466000104080E430B40022838A008BDFF8004AD7 -:10467000656843EA00400840000255EA1020606087 -:104680000840884200D10122104630BC704700002B -:1046900000007A44000000472DE9F84F04460D461B -:1046A00016464FF420491F78DFF84C864FF400314E -:1046B000D8F8000008F09EFE002808D04846A0F177 -:1046C00001090028F2D1FFF7C0FF00208CE0D8F8E4 -:1046D000000001884FF6FF52114001800121D8F8F7 -:1046E000000008F04FFE4FF4805AD1460020C8F871 -:1046F0000400D8F800B0DFF87C195846FFF7B2FF85 -:10470000002805D14846A0F101090028F1D163E055 -:10471000D14600222146584608F04CFE0020C8F839 -:104720000400D8F80040DFF850192046FFF79AFF40 -:10473000002805D14846A0F101090028F1D14BE03D -:104740003146C9B220460182C046D1460020C8F891 -:104750000400D8F80040DFF824192046FFF782FF54 -:10476000002805D14846A0F101090028F1D133E025 -:10477000012F15D1297820460182C046D14600205C -:10478000C8F80400DFF8F818D8F80000FFF76AFF4F -:10479000002823D14846A0F101090028F2D11BE0EE -:1047A0003846471EC0B2002818D015F8011BD8F8AB -:1047B00000000182C046D1460020C8F80400DFF89E -:1047C000C018D8F80000FFF74DFF0028E8D1484690 -:1047D000A0F101090028F2D1002005E00121D8F85C -:1047E000000008F0DBFD0120BDE8F28F2DE9F54F58 -:1047F00081B00D461E464FF420483778DFF8F84464 -:104800004FF40031206808F0F5FD002808D040463C -:10481000A0F101080028F3D1FFF717FF0020D3E033 -:10482000206801884FF6FF52114001800121206865 -:1048300008F0A8FD4FF48059C84600206060DFF8FA -:1048400034A8D4F800B051465846FFF70BFF0028B3 -:1048500005D14046A0F101080028F2D191E00022E4 -:104860009DF80410584608F0A5FDC8460020606079 -:10487000D4F800B0DFF800185846FFF7F3FE002820 -:1048800005D14046A0F101080028F1D179E0BDF83A -:104890000810C9B258460182C046C846DFF8E4177E -:1048A000206808F0A7FD002805D14046A0F10108C6 -:1048B0000028F3D165E00121206808F063FDC846B7 -:1048C00000206060D4F800B051465846FFF7CAFE99 -:1048D000002805D14046A0F101080028F2D150E09F -:1048E00001229DF80410584608F064FD022FC846C6 -:1048F00039DADFF89417206808F07CFD002805D12C -:104900004046A0F101080028F3D13AE000212068D8 -:1049100008F059FD2068018B012108F03FFDC846D1 -:10492000DFF86817206808F065FD002805D14046CB -:10493000A0F101080028F3D123E02068008AC0B26A -:1049400028703078401E3070C8462068018889057C -:1049500005D54046A0F101080028F6D111E001215B -:1049600008F031FD2BE000206060DFF8241720689C -:10497000FFF778FE002806D14046A0F10108002884 -:10498000F3D1002020E0012616E0012F0CD1012EEA -:104990000AD100263146206808F015FD2068818A7A -:1049A000018B012108F0FAFC2068818A490603D5B1 -:1049B000008A05F8010B7F1EFFB2002FE5D101210F -:1049C000206808F000FD0120BDE8FE8F00000240D5 -:1049D0002DE9F04707460D4616464FF42048C64CD1 -:1049E0004FF40031206808F005FD002808D040464B -:1049F000A0F101080028F3D1FFF727FE00208DE089 -:104A0000206801884FF6FF52114001800121206883 -:104A100008F0B8FC4FF48059C84600206060D4F814 -:104A200000A0DFF850165046FFF71CFE002805D105 -:104A30004046A0F101080028F1D14CE0012239469E -:104A4000504608F0B7FC022EC84636DADFF83816B2 -:104A5000206808F0CFFC002805D14046A0F10108ED -:104A60000028F3D137E00021206808F0ACFC206872 -:104A7000018B012108F092FCC846DFF8101620686F -:104A800008F0B8FC002805D14046A0F10108002834 -:104A9000F3D120E02068008AC0B22870C8462068A0 -:104AA0000188890505D54046A0F101080028F6D106 -:104AB00011E0012108F087FC2BE000206060DFF8A6 -:104AC000D0152068FFF7CEFD002806D14046A0F1A2 -:104AD00001080028F3D1002020E0012716E0012E74 -:104AE0000CD1012F0AD100273946206808F06BFC51 -:104AF0002068818A018B012108F050FC2068818A9E -:104B0000490603D5008A05F8010B761EF6B2002E81 -:104B1000E5D10121206808F056FC0120BDE8F087AE -:104B2000DFF870050168082933D1DFF80C150A6831 -:104B300042F080720A604268B2F1806F03D10A6865 -:104B400042F080620A600A689201FCD58A6842F0ED -:104B500002028A608A6802F00C02082AFAD14268CE -:104B6000B2F1806F02D10A681201FCD5DFF8D014CF -:104B70000968DFF8F424914207D2DFF8F0140A68DC -:104B800022F4404242F480420A6000210160416008 -:104B900070474168B1F1806F0AD1DFF89C140A6850 -:104BA00042F080620A600A681201FCD5002141606F -:104BB0007047000000040240DFF8DC04016841F0A7 -:104BC00080510160DFF8A40401688908890041F080 -:104BD00001010160DFF85C040FF20501016070471C -:104BE00010B5DFF8B844208840F004002080DFF8DA -:104BF0004404416800290DD000214160DFF8A01471 -:104C00000A6842F004020A600FF22101016000F01C -:104C10000DF800E030BF608840F00400608010BDF7 -:104C2000801A0600005400400058004038B5DFF8F4 -:104C30000804DFF86014826802F00C020A60006861 -:104C400000F080604860DFF85444208840F00400A1 -:104C50002080FDF7C2FD807A012803D1012008F0F1 -:104C60006EFD02E0002008F06AFDDFF83454802178 -:104C7000134808F045FC00280BD1286840F00400D8 -:104C8000286030BF286820F004002860FFF748FF44 -:104C90000CE0608840F004006080286820F0040088 -:104CA000286030BF286840F004002860608840F029 -:104CB0000400608031BDDFF87C030068004700001D -:104CC00000300140D8B90020DFF8D813012806D001 -:104CD00010D3032809D005D3042809D00AE0DFF84F -:104CE000C81307E0DFF8C41304E0DFF8C41301E0E1 -:104CF000DFF8C01308467047383700208864024048 -:104D00001064024010B50C46FFF7DEFF214689B261 -:104D1000BDE8104008F080BA10B50C46FFF7D4FF8C -:104D2000214689B2BDE8104008F078BAE0B500230A -:104D30008DF8083001238DF80A30002A03D10C22A7 -:104D40008DF8092002E008228DF8092004283CD8BB -:104D5000DFE800F00315212A2A004FF400600190DB -:104D600028208DF800000F208DF8010000208DF81C -:104D70000200012921D118468DF803001FE01846D2 -:104D8000019010208DF8090006208DF800000E20FB -:104D90008DF80100EAE70220019007208DF800005D -:104DA0000F208DF80100E1E70420019008208DF824 -:104DB00000000F208DF80100D8E78DF8030001A84E -:104DC00008F008FF00A808F054FF07BD4FF4006189 -:104DD000B44808F01ABA00000C30014080B57B20BE -:104DE00008F03CF9002806D08BA0FDF771FD08F013 -:104DF00047F9002002BD7A2008F030F9002802D0DF -:104E000086A0FDF765FD792008F028F9002802D07A -:104E100083A0FDF75DFD7C2008F020F9002802D07A -:104E200080A0FDF755FD7D2008F018F9002802D07C -:104E30007DA0FDF74DFD7E2008F010F9002802D07E -:104E40007AA0FDF745FD7F2008F008F9002802D080 -:104E500077A0FDF73DFD08F013F9012002BD000029 -:104E60003EB50C4615460422014602A8FDF780FC1B -:104E70000422214601A8FDF77BFC0422294600A854 -:104E8000FDF776FC02A9002008F0CAFC01A9002069 -:104E900008F03FFD08F038FD0446874A00230098DB -:104EA0001946101A63EB0101490241EAD051400250 -:104EB00009F006F80090844205D2011B4FF0004033 -:104EC00008F0F7FD37BDA04207D2C4F50070009985 -:104ED00009184FF0004008F0ECFD37BD2DE9704394 -:104EE00084B004460D46164602A9002008F0E7FCEF -:104EF00001A9002008F05DFD08F006FD00906E4A53 -:104F0000A2FB00894FEA582848EAC958A2EB0800DA -:104F10000090042202A92046FDF72AFC042201A9E0 -:104F20002846FDF725FC042200A93046FDF720FCA9 -:104F3000BDE87F8370B48C1E012C01DA0C34401E56 -:104F40003C216425B0FBF5F5C5EB90054FF4C87620 -:104F5000B0FBF6F6751940F26F1674430C26B4FBDD -:104F6000F6F46419121940F26D1404FB0020534A40 -:104F7000101800EB400203EBC200039A01FB002073 -:104F8000049A01FB002070BC70471CB50C460168F8 -:104F90000191416800918368C2680169491C4069B8 -:104FA00000F26C70FFF7C6FF2060002016BD10B540 -:104FB0008EB04348046801A9002008F080FC00A9D5 -:104FC000002008F0F6FC9DF8040006909DF805000E -:104FD00005909DF8060004909DF80100401E089081 -:104FE0009DF8020007909DF803006430099002A923 -:104FF00004A8FFF7CAFF4FF47A706043400AC0F577 -:105000007A700390029A4FF47A73C117E3FB02019E -:105010000EB010BD00200140504F520050494E00CC -:10502000424F5200534654004957440057574400DA -:105030004C50570098BD002000380240003C024010 -:10504000AC36002000127A00809698000024F4000C -:1050500000366E010048E801005A620280F0FA0250 -:1050600000BD0105843802400187930300700040B1 -:10507000383700200100030082000700800007008D -:10508000840007000400001002000010400000101F -:1050900002000300A0BD002040380240180002407A -:1050A00010ED00E000000240000402400008024051 -:1050B000000C02400010024000CA9A3B7505F5FF43 -:1050C00028280040200110040F03020103F0001003 -:1050D000060F01020103C00010080F01020103C006 -:1050E0000010060F01020103F00010060F0102017B -:1050F00003C80010040F02020103A80010020F03EE -:105100000201030038B50020ADF800000446FDF7A9 -:1051100064FB05464FF480512046FDF79EFD0A21B1 -:105120002846FDF728FD00E0641C062C12D2DFF8AB -:10513000100D215C8DF800102018007A8DF8010008 -:10514000022300AA72210720FDF717FC0028EBD1EB -:10515000002032BD012032BD2DE9FC4104468846C5 -:10516000FCF7FAFC06460020ADF80400DFF8D45C3A -:10517000288D0746B8F1000F02D02043288501E0B2 -:10518000A0432885012000900DF10603AB22722177 -:105190000620FDF734FC002801D100205EE1288DB7 -:1051A0000E2800F23F81DFE810F00F003D011C00E7 -:1051B0003D013A003D013A003D01AB003D01AB002D -:1051C0003D01AB003D01AB0080208DF804000020C4 -:1051D0008DF805009DF8060000F0FD008DF8060032 -:1051E00020E181208DF8040001ACEE2060700223E4 -:1051F00001AA72210920FDF7C0FB002801D100207F -:105200002CE16078E87280208DF804000320607043 -:105210009DF8060000F0FD008DF8060002E19D20DB -:105220008DF8040001AC00206070022301AA7221F5 -:105230000920FDF7A2FB002801D100200EE19E20ED -:105240008DF8040000206070022301AA7221092059 -:10525000FDF793FB002801D10020FFE081208DF8AD -:105260000400FB206070022301AA72210920FDF7CF -:1052700084FB002801D10020F0E06078E8728E20E5 -:105280008DF80400E87B002812D00C218F2008F054 -:1052900058FF04218F2008F02AFF3021902008F0C9 -:1052A00050FF3021902008F022FF4520607011E06F -:1052B0000C218F2008F045FF08218F2008F017FFF0 -:1052C0003021902008F03DFF1021902008F00FFFC2 -:1052D00082206070022301AA72210920FDF74DFB94 -:1052E000002801D10020B9E080208DF8040027209B -:1052F00060709DF8060000F0FD008DF8060091E05A -:105300003846000701D408F0E2FF81208DF8040040 -:1053100001ACFE206070022301AA72210920FDF772 -:105320002CFB002801D1002098E06078E8728E20E4 -:105330008DF80400E87B002812D00C218F2008F0A3 -:1053400000FF04218F2008F0D2FE3021902008F0C9 -:10535000F8FE3021902008F0CAFE4B20607011E06A -:105360000C218F2008F0EDFE08218F2008F0BFFEF1 -:105370003021902008F0E5FE1021902008F0B7FEC3 -:1053800085206070022301AA72210920FDF7F5FA39 -:10539000002801D1002061E0380713D4B6F87A0064 -:1053A000B6F87C10401AE884B6F87A104900A9844F -:1053B00089B2FF2901DDFF21A984A98C80B2A1EB6C -:1053C0004000E884A6208DF80400E87B00280AD07D -:1053D0006021A32008F0B5FE2021A32008F087FE5D -:1053E0005720607009E06021A32008F0AAFE402148 -:1053F000A32008F07CFE8B206070022301AA72219A -:105400000920FDF7BAFA002801D1002026E080200B -:105410008DF80400672060709DF8060040F00200DF -:105420008DF80600022301AA72210920FDF7A5FAD2 -:10543000002801D1002011E0AB208DF804009DF878 -:1054400006008DF80500022301AA72210920FDF74C -:1054500094FA002801D1002000E00120BDE8F68187 -:1054600010B534220021DFF8980BFEF7B3FBDFF80C -:10547000D4490120607309F00BF908F08DFE01207A -:10548000A074E07410BD10B582B00FF25800FDF7A3 -:105490001FFA0020ADF8000080208DF8000000AC5D -:1054A00000206070022300AA72210620FDF765FA31 -:1054B000002816D08C208DF8000000206070DFF8E6 -:1054C000840900218172022300AA72210620FDF7BF -:1054D00054FA002805D0FFF7C3FF01210020FFF791 -:1054E0003BFE13BD233E484C5300000010B582B074 -:1054F0000FF24000FDF7ECF90020ADF80000044683 -:1055000000E0641C052C12D2DFF8700D215C8DF8D0 -:1055100000102018007A8DF80100022300AA7221E1 -:105520000720FDF72AFA0028EBD1002016BD012044 -:1055300016BD0000233E5052500000001CB50FF273 -:105540008C00FDF7C5F90020ADF804008DF80600C9 -:10555000FCF702FB80208DF8040001AC0020607095 -:10556000022301AA72210620FDF707FA002801D1C3 -:10557000002016BD8C208DF8040000206070DFF83C -:10558000844DA072022301AA72210620FDF7F5F9CD -:10559000002801D1002016BD0120207401460420FE -:1055A000FFF7DAFD002801D1002016BD0120009090 -:1055B0000DF10603E52272210720FDF720FA0028ED -:1055C00001D1002016BD012016BD0000233E50521F -:1055D0004F00000000B583B00FF26800FDF778F9C6 -:1055E0000020ADF806008DF80400FCF7B5FA802025 -:1055F0008DF8060000208DF8070002230DF1060249 -:1056000072210620FDF7B9F9002801D100200EBD56 -:10561000DFF8F00C002101740420FFF79DFD002845 -:1056200001D100200EBD0120009001ABE5227221C6 -:105630000720FDF7E4F9002801D100200EBD01206C -:105640000EBD0000233E5052430000000120704771 -:1056500030B583B004460020ADF80400DFF8E4570D -:10566000687D002828D1012000900DF105039322C8 -:1056700072210620FDF7C3F900280DD09DF8050022 -:10568000800724D50120009001AB9C2272210620C6 -:10569000FDF7B5F9002801D100203EBD9DF80400BA -:1056A000A97E51FA80F080B2400820702078A87559 -:1056B0009DF80400A8760AE0012808D1DFF8400927 -:1056C0004169AA7E8918491021704069A876012095 -:1056D0003EBD2DE9F04792B004468846FCF73CFAFF -:1056E0000546FDF77AF806460020ADF80800ADF84B -:1056F0000C008DF80A00012000900DF10A0393229E -:1057000072210620FDF77BF9002801D100207AE103 -:105710000420009003AB942272210620FDF76FF95C -:10572000002801D100206EE1DFF818779DF80D0008 -:105730009DF80C1041EA0020DFF8501D4843F97A2B -:10574000C1F580713A7BDFF8483DD25C12FB01F174 -:1057500040F242325143B0FBF1F042F21171884203 -:105760000AD300203875F87B00281DD10120F8737A -:10577000FFF789FE012046E141F65831884211D2F7 -:10578000F87B00280ED09DF80A0080060CD5387DE5 -:10579000411C3975652807DB0020F873FFF773FE9D -:1057A000012030E1002038759DF80A00800640F1A4 -:1057B0002981002078754146601CFFF749FFB87CBD -:1057C000002802D00020B8740EE1DFF8C88C6078A1 -:1057D00088F80000787B00280AD008F0E7FC002851 -:1057E00006D1787C002803D0607808F0F1FC87E0CF -:1057F000387C002839D0787CB97A084335D100202C -:1058000030758C208DF808000DF10809202089F8EA -:105810000100B872022302AA72210620FDF7ADF83A -:10582000002801D10020EEE089208DF8080000203A -:1058300089F80100022302AA72210720FDF79DF8D2 -:10584000002801D10020DEE08B208DF80800B5F89B -:105850007A0089F80100022302AA72210720FDF7CD -:105860008CF8002801D10020CDE0787C00280ED1F2 -:1058700005F17A004288B5F87A100FF29010FDF722 -:1058800027F861780FF29410FDF722F838E04146CE -:1058900084B06846182201F0F5FA0FBC08F009FF41 -:1058A00004A808F06CFFDFF8609D484604A9342284 -:1058B00001F0E8FA99F81C00002814D097F808A025 -:1058C0003420DFF83C1710FB0A104946342201F05F -:1058D000D9FA0AF101003872C0B2092801DB401E72 -:1058E00038720120787209F11C00417D88F814108B -:1058F000817D88F81510007D002801D0FFF7B0FDEC -:10590000387C002870D0787C00286DD16078B5F89C -:105910007A10884231D3307D00282ED10120B8730F -:1059200020702078307589208DF808000DF1080965 -:1059300005F17A00408889F80100022302AA722149 -:105940000720FDF71AF8002801D100205BE08B202A -:105950008DF80800FF2089F80100022302AA7221B5 -:105960000720FDF70AF8002801D100204BE06178FC -:105970000FF2B400FCF7ACFF36E005F17A00408886 -:105980006178884230D3307D01282DD10120B87351 -:10599000002020702078307589208DF808000DF1E6 -:1059A0000809002089F80100022302AA72210720B9 -:1059B000FCF7E3FF002801D1002024E08B208DF8C4 -:1059C0000800B5F87A0089F80100022302AA7221C2 -:1059D0000720FCF7D2FF002801D1002013E06178F6 -:1059E0000FF24C00FCF774FF0120009003ABE5229E -:1059F00072210720FDF703F8002801D1002002E002 -:105A0000012000E0002012B0BDE8F087233E557071 -:105A10003D25642C4C6F3D2564000000233E505210 -:105A20004157202564000000233E503120256400AA -:105A3000233E5032202564002DE9F84304460D46EC -:105A4000DFF80064F07D002804D000F0DFFD0020C6 -:105A500030838BE0FCF780F800273846ADF8000073 -:105A60000020308329462046FFF733FE00280DD062 -:105A7000307C00280AD0B07B002807D00FF2F0005D -:105A8000FCF726FF0020B07301207076707C0028A0 -:105A900066D0DFF86C8DD8F8189009F10C00417DC4 -:105AA000C068D9F80C20801800F0CEF9002857D033 -:105AB00001203076707A002801D000207072307C8E -:105AC00000284BD0D9F80C0040780DF1000989F876 -:105AD0000100B18C814212D2FCF77FFE007D0028CC -:105AE0000DD1F07E401CF076C0B2022821D10020FA -:105AF000F0760127FCF771FE3946017519E099F837 -:105B00000100F18C884212D2FCF767FE007D01286B -:105B10000DD1F07E401CF076C0B2022809D10020E1 -:105B2000F0760127FCF759FE0021017501E0002005 -:105B3000F076002F12D0D8F81C80FCF74EFE007DC6 -:105B40008DF8000008F10C00427D00A9C068D8F86B -:105B50000C30C018FCF70CFE01207076002030726B -:105B6000FFF734F900283FF47BAF707EBDE8F28385 -:105B7000233E50555000000070B582B0064600200C -:105B8000ADF80000FBF7E8FF04463078A4F87A008F -:105B900004F27A0570786880B4F87A00002802D0A0 -:105BA0006888002808D10FF25C00FCF791FE78208D -:105BB000A4F87A000020688089208DF8000000AEEB -:105BC00068887070022300AA72210720FCF7D5FEB6 -:105BD000002801D1002076BD8B208DF80000B4F89C -:105BE0007A007070022300AA72210720FCF7C5FE1C -:105BF000002801D1002076BD0FF21000FCF768FEEE -:105C0000012076BD233E5054483D3000233E544889 -:105C10005345540080B50FF21801072006F0F4F840 -:105C20000FF230010A20BDE8044006F0EDB8000094 -:105C3000ED5400083D550008D55500084D560008A4 -:105C400000000000395A0008795B000800000000DD -:105C500000000000ED5400083D550008D55500082F -:105C60004D5600080000000051560008795B0008FE -:105C7000000000000000000010B582B00FF6F440F4 -:105C8000FCF726FE0020ADF80000FFF73BFA0028E5 -:105C900003D10FF6E840FCF71BFE002400E0641C73 -:105CA0000B2C12D2DFF88C0C2118097B8DF8001018 -:105CB000205C8DF80100022300AA72210620FCF767 -:105CC0005CFE0028EBD1002016BD012016BD10B5EA -:105CD00082B00FF6B440FCF7FBFD0020ADF80000E9 -:105CE000FBF73AFF80208DF8000000AC00206070C8 -:105CF000022300AA72210620FCF73FFE002801D1F2 -:105D0000002016BD8C208DF8000000206070DFF8A8 -:105D1000284CA072022300AA72210620FCF72DFE57 -:105D2000002801D1002016BD01206074FFF798FB08 -:105D300001210820FFF710FA002801D1002016BD2C -:105D4000012016BD80B50FF64840FCF7C1FD0020CC -:105D5000ADF80000FBF700FF80208DF80000002068 -:105D60008DF80100022300AA72210620FCF705FE2F -:105D7000002801D1002002BDDFF8BC0B00214174D6 -:105D80000820FFF7E9F9002801D1002002BD012019 -:105D900002BD0120704770B58EB02A4C607B002890 -:105DA00014D008F003FA002810D0DFF8E856281DB8 -:105DB0000FC808F0B4FA08F002FA00283CD000201E -:105DC0006073012068752875A87535E0607B002830 -:105DD00032D1DFF8C056294684B06846182201F057 -:105DE00051F80FBC08F098FC00A808F0C8FCDFF8D8 -:105DF0001868304600A9342201F044F806F11C006E -:105E0000417D2975817D6975007D002801D0FFF7EE -:105E100027FB307F00280FD0257A3420784910FBEB -:105E200005103146342201F02DF8681C2072C0B2F2 -:105E3000092801DB401E207201200EB070BD000059 -:105E4000B036002004360020FEB5044602A800212A -:105E500001600846ADF80400FBF77EFE01200090CB -:105E600001AB932272210620FCF7C9FD002800F047 -:105E7000A9809DF8040010F0040005D1DFF8B81ADD -:105E8000497A002900F09E80002806D0DFF8A80A91 -:105E9000417A002901D101214175012000900DF1C5 -:105EA0000503AE2272210620FCF7A9FD002800F0B0 -:105EB00089809DF80500002842D00420009002ABA4 -:105EC000FC2272210620FCF79AFD00287AD09DF86A -:105ED0000850DFF8C015DFF8600A02AA437B002BE8 -:105EE0001FD0DFF8583A1E7855FA86F56D104D60D0 -:105EF00055785E7856FA85F676108E6096789F789B -:105F000057FA86F77F10CF60D278DF7857FA82F79A -:105F10007F100F619DF8081019705D709E70DA7027 -:105F200006E04D6053788B609378CB60D2780A613D -:105F3000C17C002902D00021C17441E0FFF72BFF92 -:105F40002F4908782070486960708869A070486897 -:105F5000E07088682071C86860710869A071086A7B -:105F6000E071486A2072886A6072C86AA072487FCD -:105F7000E072DFF8CC0900782073DFF8C8090078F8 -:105F80006073DFF8C4090078A073DFF8C0090078F7 -:105F9000E073DFF8BC0900782074DFF8B8090078F6 -:105FA0006074DFF8B4090078A074DFF88C09827D92 -:105FB000E274002202720878042801D110460870A9 -:105FC0000120FEBD0020FEBDDFF86C09007E704799 -:105FD00080B5052802D1084600F002F8012002BD74 -:105FE00080B5017841F04103DFF84819CB700278A1 -:105FF00001780FF6A410FCF76BFC012002BD000035 -:1060000044B9002070B584B004460020019002A875 -:10601000002101600E46FBF79FFD0FF69010FCF784 -:1060200057FC01210820FFF797F8A0208DF8060003 -:106030000DF106053046687002230DF1060272214B -:106040000620FCF79AFC002801D13046B6E0A120DA -:106050008DF80600FF20687002230DF10602722100 -:106060000620FCF78AFC002801D13046A6E0AB20D0 -:106070008DF806000120687002230DF106027221DE -:106080000620FCF77AFC002801D1304696E001207A -:10609000009001AB802272210620FCF7B0FC0028A2 -:1060A00001D130468AE080208DF806009DF804007A -:1060B00040F04500687002230DF1060272210620AF -:1060C000FCF75BFC002801D1304677E0012000900E -:1060D0000DF10503AF2272210620FCF790FC002889 -:1060E00001D100206AE09DF80500C0070BD504200F -:1060F000009002ABFC2272210620FCF780FC0028F5 -:106100000CD100205AE03046461CB0F57A7FDDDB2A -:106110000FF6A000FCF7DCFB00204FE09DF8080024 -:10612000207002A8417861708178A170C078E07019 -:106130000120009001AB802272210620FCF75FFC59 -:10614000002801D1002039E080208DF806006D483C -:10615000007C00289DF8040003D000F0BF006870A8 -:106160000CE000F0BB006870DFF8F0070078002852 -:1061700004D19DF8040000F0BA00687002230DF10C -:10618000060272210620FCF7F8FB002801D100204E -:1061900014E0AB208DF806000020687002230DF19A -:1061A000060272210620FCF7E8FB002801D100203E -:1061B00004E000210820FEF7CFFF012004B070BDED -:1061C0000FF67801062005F01FBE10B582B00FF261 -:1061D000F070FCF77DFB0020ADF80000044600E005 -:1061E000641C052C12DADFF87807215C8DF80010AA -:1061F0002018007A8DF80100022300AA72210920DC -:10620000FCF7BBFB0028EBD1002016BD012016BD1A -:1062100000B583B00FF2B070FCF75AFB0020ADF868 -:106220000600FBF799FC80208DF8060000208DF811 -:10623000070002230DF1060272210620FCF79DFBE8 -:10624000002801D100200EBDDFF8100701210170E8 -:106250000220FEF781FF002801D100200EBD0120A1 -:10626000009001ABE62272210720FCF7C8FB002852 -:1062700001D100200EBD01200EBD0000C03600205F -:1062800000B583B00FF24870FCF722FB0020ADF898 -:106290000600FBF761FC80208DF8060000208DF8D9 -:1062A000070002230DF1060272210620FCF765FBB0 -:1062B000002801D100200EBD0120009001AB8F22EB -:1062C00072210720FCF79BFB002801D100200EBDA6 -:1062D000DFF88806002101700220FEF73DFF00284C -:1062E00001D100200EBD0120009001ABE6227221F9 -:1062F0000720FCF784FB002801D100200EBD0120FF -:106300000EBD000004360020012070473EB5044653 -:106310000020ADF8040002908DF8060001200090E6 -:106320000DF10603932272210620FCF768FB00287A -:106330003BD09DF80600C00744D50220009001AB79 -:10634000962272210920FCF75AFB00282DD09DF8D7 -:106350000400207001AD687860700220009001ABED -:10636000982272210920FCF74AFB00281DD09DF8D5 -:106370000400A0706878E0700220009001AB9A22BF -:1063800072210920FCF73BFB00280ED09DF8040089 -:106390002071687860710220009001AB9422722114 -:1063A0000920FCF72CFB002801D100203EBD9DF800 -:1063B0000400A0716878E071DFF87C05C17A217271 -:1063C000007B60726078217841EA0020E178A27851 -:1063D00042EA01216279237943EA0222E379A4792E -:1063E00044EA032302AC009400F056F801203EBDBD -:1063F0001CB504460020ADF806008DF8040001200D -:10640000009001AB8F2272210920FCF7F8FA0028D6 -:1064100001D1002016BD9DF8040000F0FC008DF8AD -:106420000400012C0AD0042C04D0102C1FD0402CC6 -:1064300022D026E040F001008DF804008F208DF876 -:1064400006009DF804008DF80700DFF8EC049DF8C5 -:10645000041001F00301017302230DF10602722101 -:106460000920FCF78AFA00280DD1002016BD40F063 -:1064700002008DF80400E1E740F003008DF804000D -:10648000DCE7002016BD012016BD00006094060068 -:10649000386A00082CBB00202DE9F0419C461446C8 -:1064A0000D460646A8192018A0EB0C00401C47100A -:1064B0003FB2002F00D50027DFF87C14087B0FF2D5 -:1064C0007852805CC97AC1F5807110FB01F240F608 -:1064D000DC2E0EFB02F88902B1F5803F01D34FF6A6 -:1064E000FF71C9000A22B1FBF2F1102832D18B42B0 -:1064F00030D30120FFF77CFF002845D0EA1BE11BC9 -:106500000698B74206DA0368F61B06EB460C03EB67 -:106510008C030360AF4205DA03684FF47A7505FB1C -:1065200002320260A74205DA02684FF4DD7303FB12 -:10653000112101600168002901D500210160016875 -:1065400041F2D80251430160B1FBF8F10160012032 -:10655000BDE8F081102808D1BCF1640F05DA4020B5 -:10656000FFF746FF0028C9D10EE0402802D1643968 -:106570008B4204D20128C1D1BCF1640FBEDA1020D5 -:10658000FFF736FF0028B9D10020E1E70FF2D04134 -:10659000092005F039BC10B5DFF89C432920207094 -:1065A000002060700A20A0703120E0700A20207165 -:1065B00032206071A0710020E0770120E075072291 -:1065C0002146DFF8A003FCF7D3F800206077012014 -:1065D00010BD00B583B000A800210A4606C00722FE -:1065E000D5490DF10100FCF7C3F8A0208DF800009B -:1065F000082300AA72210720FCF7BFF9002801D167 -:1066000000200EBD01200EBDA8B8002000B583B04B -:1066100000208DF80400C848417F8177828DFF2AD1 -:106620000BD0002A0CD0C37F5B1CC377521E82851F -:10663000DBB2994201D20021C17700F01DF80DE0D4 -:1066400090F82010012903D100F03DF901200EBD82 -:10665000C18D81850021C17700F00EF801200090E6 -:1066600001ABE32272210720FCF7C9F9002801D110 -:1066700000200EBD01200EBD38B50020ADF8000091 -:10668000AD4CA08D002803D1E08DA085A07F607760 -:106690000722E07FC0EBC000B24941182046FCF75A -:1066A00067F8FFF796FF80208DF8000000AD81208D -:1066B0006870022300AA72210720FCF75EF9002807 -:1066C00001D1002032BDA7208DF80000608D6870D8 -:1066D000022300AA72210720FCF74FF9002801D1FC -:1066E000002032BD012032BD30B585B00446002007 -:1066F0008DF80C006079029020790190E07800908C -:10670000A378627821780FF2D020FCF7E1F801201D -:10671000009003AB802272210720FCF770F900285B -:1067200001D1002021E084489DF80C10017700F091 -:1067300069F88D4D8122FF212846FDF74BFA802212 -:106740002146681CFCF714F80020287081232A4693 -:1067500072210720FCF711F9002805D10FF29020D3 -:10676000FCF7B6F8002000E0012005B030BD80B590 -:1067700001780F2904DA704A527F521C8A4205DAE6 -:106780000FF27820FCF7A4F8002002BDC1EBC10194 -:10679000744A29238B54891800224A7042788A71DE -:1067A00082788A70C278CA7002790A714079487119 -:1067B000012002BD6048417F491C4177012070479C -:1067C00080B55D498885002800D0C88501460FF254 -:1067D0003C20FCF77DF8012002BD574981F82000DC -:1067E0000120704780B56149087009784900524A14 -:1067F000518501460FF22420FCF76AF8012002BD02 -:106800000000002000B583B00020ADF806008DF830 -:10681000040080208DF8060001208DF80700022377 -:106820000DF1060272210720FCF7A7F8002801D11C -:1068300000200EBD102000904D4BA0227221072099 -:10684000FCF7DDF8002801D100200EBD01200090EA -:1068500001AB802272210720FCF7D1F8002801D17A -:1068600000200EBD01200EBD00B587B00020ADF8A0 -:10687000000001A81421FCF7C5FA80208DF8000063 -:1068800001208DF80100022300AA72210720FCF7E5 -:1068900074F8002801D1002013E0102234490DF1D2 -:1068A0000500FBF765FFA0208DF80400112301AA65 -:1068B00072210720FCF761F8002801D1002000E0D8 -:1068C000012007B000BD1CB50020ADF806008DF812 -:1068D0000400FBF741F9184C217F0FF25010FBF731 -:1068E000F7FF0020E075E0776077A08584F820004E -:1068F000FFF7BAFF80208DF80600207F8DF8070093 -:1069000002230DF1060272210720FCF736F8002859 -:1069100001D1002016BD0120009001ABE3227221BD -:106920000720FCF76CF8002801D1002016BD0120DB -:1069300016BD00005C3600200436002008BE002092 -:106940005DBE002090BD002091BD002092BD0020C2 -:1069500093BD002095BD002096BD00205EBE0020A6 -:10696000D0360020EC8D002038AC00205FBE002027 -:1069700054BC0020233E474550000000233E4750B2 -:106980004641494C00000000233E47454F000000AF -:10699000233E4745430000003D3E474520435520E8 -:1069A000257820257820257800000000233E4753D5 -:1069B000454C4600233E47535445525200000000C8 -:1069C000233E4C4947500000233E4C49474F0000AE -:1069D000233E4C49474300004D4244202564202576 -:1069E000642025642025642025642025640000009F -:1069F0004D6F6265616D2057460000004D6F626506 -:106A0000616D20486F70204661696C004D422048DE -:106A10006F70436F756E7420256400004D6F626562 -:106A2000616D204C656E3D25640000004D422043A1 -:106A30006C6F73652025640001041040795C0008C8 -:106A4000CF5C0008455D0008935D00080000000071 -:106A5000C95F00080000000005600008D15F000861 -:106A6000CB61000811620008816200080963000818 -:106A7000000000000D63000800000000000000009E -:106A80000000000038B5FBF765FC0446104DFBF72D -:106A900063F8286008F082F908F085F9686008F06A -:106AA000D8FA0C48C4F8B00004F1B0000A494160BB -:106AB0000A4981600A49C1600A490161012032BD69 -:106AC00003494968896808470148406800680047E9 -:106AD000C8BD002047260008432600084F260008AE -:106AE00053260008572600082DE9F04786B00446D3 -:106AF00001A81421FCF786F9FBF76FFE05464FF05D -:106B00000209002601E0761C76B20A2E80F29D80F2 -:106B1000022EF8D0032EF6D0062EF4D0514850F8AD -:106B2000267007F10C08787A002805D1D8F85400AF -:106B3000406880470028E6D009F8046009F101099F -:106B40004FFA89F9304609284FD8DFE800F0050AE6 -:106B50004E4E10154E10423CC8212846FCF70BF84B -:106B600043E04FF448712846FCF705F83DE0322138 -:106B70002846FCF700F838E03C212846FBF7FBFFED -:106B80004FF0000ABAF1030F2FDA0020D8F85410A2 -:106B90000969884714212846FBF7EDFF0120D8F842 -:106BA00054100969884714212846FBF7E4FFBAF11D -:106BB000020F05DA062101A8D8F85420526990473F -:106BC0000AF1010ADEE74FF416712846FBF7D3FFFE -:106BD0000BE00020D8F8541009698847012088F894 -:106BE00011003C212846FBF7C6FF98F8151001A8B4 -:106BF000D8F8542052699047002819D0D8F80C00D2 -:106C0000F96800EB010A98F8152001A95046FBF736 -:106C1000AFFD3846FBF726F898F81520514609EBEA -:106C20000400FBF7A5FD98F9150081444FFA89F996 -:106C3000787A00287FF467AFD8F8540080688047DE -:106C400000287FF460AF002009E0A9F10200ADF850 -:106C50000000022200A92046FBF78AFD002006B0B2 -:106C6000BDE8F0870000002030B581B004460D4635 -:106C7000FCF799FF686920436861297C01F0F801FD -:106C8000082905D1A96901421CBF2846FDF754F81F -:106C90000448407820B901B0BDE83040FCF77DBF22 -:106CA00001B030BD343600200FB480B5BDF80B0004 -:106CB00067494880022802DB801E088001E000202E -:106CC00008800C229DF90A100020FBF745FB0328E1 -:106CD00001D1022000E0012002BC5DF814FB5C48F9 -:106CE000012141800021018001207047594908702D -:106CF0007047000030B58DB002A8FBF78CFB544CF8 -:106D00002088401C2080618880B2884231D30020D6 -:106D10002080054627E06068D0F8EC01E840C00715 -:106D200020D5284605F02EFC00281BD400EB80005F -:106D30009FED460ADDED0B0A60EE800AFDEEE00AEB -:106D400010EE901A00AA8152DDED0C0A20EE800AA6 -:106D5000BDEEC00A10EE101A8218518000A940182A -:106D6000012101716D1C132DD5DBDDE9000105F05A -:106D700017FC01200DB030BD80B5FBF7EBFA3449AC -:106D800048603549C0F8F01100F5F87033494160AA -:106D9000334981600FF20D01C1600FF225010161DD -:106DA000012002BD10B500242A4890F900000028F7 -:106DB00004D105F015FC002800D00124204610BDA8 -:106DC000F8B504460D4640F20D16287816FB004033 -:106DD00001210170287816FB00404170287816FBCD -:106DE00000400C218170287816FB0040194991F968 -:106DF0000010002902D00221C17001E00121C17000 -:106E0000287816FB004001210171287816FB00400C -:106E100008214171287816FB00400121C1802878A3 -:106E200016FB0047002005F077FB3881287816FB19 -:106E30000044002005F075FB60812878401C287014 -:106E40000C20BDE8F24005F085BB00000000C84200 -:106E5000403700206ABE0020A96C0008DF6C0008E3 -:106E6000F56C000862B38B0708D0521E11F8013B85 -:106E700000F8013B00F024808B07F6D1830740F037 -:106E8000208000BF103A07D330B4B1E83810103A70 -:106E9000A0E83810F9D230BC530724BFB1E808107D -:106EA000A0E8081044BF51F8043B40F8043BD20767 -:106EB00024BF31F8022B20F8022B44BF0B7803705B -:106EC0007047083A07D3B1E80810083A40F8043B85 -:106ED00040F804CBF7D25307E4E70268531C036081 -:106EE00011707047EFF303807047BFF34F8FDFF8E7 -:106EF000B403016801F4E061DFF8AC2311430160E1 -:106F0000BFF34F8FFEE72DE9F041044600F092F900 -:106F1000002840F0118100F016F908F0F1FBF32091 -:106F200008F068FCE14800210160E1480D4605E0F9 -:106F300054F8251008F028FC30466D1C061D082D5D -:106F4000F6D3214608F020FCEFF30881304608F024 -:106F50001BFC341DEFF30981204608F015FC241DAD -:106F6000EFF31481204608F00FFC241DEFF3058198 -:106F7000204608F009FC241DEFF30081204608F0AC -:106F800003FC241DFFF7AEFF0146204608F0FCFB82 -:106F9000241DEFF31081204608F0F6FB241DEFF3CB -:106FA0001181204608F0F0FB241DEFF313812046E9 -:106FB00008F0EAFB241DF1EE101A204608F0E4FB6D -:106FC000241D4421204608F0FBFB641C552120466B -:106FD00008F0F6FB641C4D21204608F0F1FB641C10 -:106FE0005021204608F0ECFB641C002505E03178B8 -:106FF000204608F0C9FB241D6D1C122D16D20FF27D -:10700000D43050F8356000EBC50040680128EED060 -:10701000022806D00428EED13168204608F0B4FBDF -:10702000E9E73188204608F0AFFBE4E7002609E0F5 -:107030000FF2304050F836000168204608F0A4FBFB -:107040002C46761C251D042EF2D3002409E00FF2F5 -:10705000344050F834000168284608F095FB2D1D97 -:10706000641C052CF3D300240FF240480CE0316877 -:10707000284608F089FB2D1D361D7F1C08EBC40037 -:1070800040688742F3D3641C072C03D258F834605D -:107090000027F3E7002409E00FF2484050F83400DD -:1070A0000168284608F070FB2D1D641C042CF3D3E6 -:1070B0004321284608F084FB6C1C4F21204608F031 -:1070C0007FFB641C5221204608F07AFB4521601C9E -:1070D00008F076FB774C4FF00055224629460FF218 -:1070E0005C20FBF7F5FB002606E029786D1C2046A6 -:1070F00008F066FB3C46761C671CB6F5B83FF4D337 -:10710000224629460FF27420FBF7E2FB532120466A -:1071100008F056FB5221384608F052FB7C1C4121F6 -:10712000204608F04DFB4D21601C08F049FB08F09B -:10713000F0FA614800F023F80FF27820FBF7C8FB63 -:10714000BDE8F041D1E610B508F0DAFAF32008F016 -:1071500051FB5A4C3820206002E020680830206043 -:107160002068402807D2002108F0D9FA0928F4D075 -:10717000FFF7BBFEFCE7BDE8104008F0CABA2DE9F6 -:10718000F04704464E4841684E4A11400D0C0A0A29 -:1071900002F01F0601F03F0700684B490840010C50 -:1071A00001F03F08010A01F07F0900F07F0A08F0B2 -:1071B000A7FAF32008F01EFB44480168204608F0B7 -:1071C000E3FA241DFF21204608F0FAFA641C294640 -:1071D000204608F0F5FA641C3146204608F0F0FA23 -:1071E000641C3946204608F0EBFA641C41462046F0 -:1071F00008F0E6FA641C4946204608F0E1FA641CEF -:107200005146204608F0DCFAF521601C08F0D8FA57 -:10721000BDE8F04708F07DBA80B508F071FAF320B8 -:1072200008F0E8FAAA212A4808F0CAFABDE80140A5 -:1072300008F06FBA002026490978F52900D101200D -:10724000704710B5044604F049FBC0B2142800DBB7 -:107250001320024621461F48FBF78AFA4FF0AC3054 -:10726000007810BD80B500F039F8BDE801403CE67B -:1072700080B5FFF7D1FF4FF4C8320D490020BDE8BB -:107280000840F9F79DBD10B500F037F8124C2046C4 -:1072900004F024FB024621460020BDE81040F9F727 -:1072A0008FBD00000CED00E00400FA0500BE0020D8 -:1072B00000000608000A0608F4FF070804BE0020C4 -:1072C000002800403FFFFF007F7F7F0048370020FD -:1072D000FFFF07088CBB00202037002080B501216C -:1072E0004FF4802005F078FE012006F025FA942165 -:1072F0000F20BDE8044006F0C2BB80B501214FF469 -:10730000802005F069FE012006F016FA00210F200A -:10731000BDE8044006F0B3BB10B5002401214FF4D2 -:10732000802005F059FE012006F006FA0F2006F035 -:10733000B3FB942800D10124204610BD5B53535069 -:107340005D5B4A616E675D202D2D2D2D207374616C -:1073500072742072616D2064756D70202D2D2D2D3D -:10736000203A2072616D2830782578292C20666CAF -:107370006173682830782578290A00005B4A616EBD -:10738000675D202D2D2D2D20656E642072616D208E -:1073900064756D70202D2D2D2D203A2072616D2881 -:1073A00030782578292C20666C6173682830782520 -:1073B00078290A005B5353505D5B4A616E675D201C -:1073C00021212120205245534554202020212121D4 -:1073D0000A00000008E000E00400000000ED00E00A -:1073E0000400000004ED00E00400000008ED00E0EF -:1073F000040000000CED00E00400000010ED00E0CF -:107400000400000014ED00E00400000018ED00E0AE -:10741000040000001CED00E00400000020ED00E08E -:107420000400000024ED00E00400000028ED00E06E -:107430000100000029ED00E0010000002AED00E05D -:10744000020000002CED00E00400000034ED00E03C -:107450000400000038ED00E0040000003CED00E016 -:107460000400000010E000E00400000014E000E070 -:107470000400000018E000E0040000001CE000E050 -:107480000400000090ED00E00400000094ED00E036 -:107490000400000098ED00E0040000009CED00E016 -:1074A00004000000A0ED00E00400000000E100E0A6 -:1074B0000800000080E100E00800000000E200E0B9 -:1074C0000800000080E200E00800000000E300E0A7 -:1074D0000800000000E400E03C00000000EF00E0D5 -:1074E0000100000088ED00E00400000034EF00E03F -:1074F0000400000038EF00E0040000003CEF00E072 -:10750000040000005FF0FF0C1CEAD05114BF61457D -:1075100006E0C110400721F0E04101F160517047E1 -:1075200079B900F0004100020AD0B0FA80FC00FAFC -:107530000CF001F16051A1EB0C5101EBD0214005A1 -:10754000704741020CBF40F4E0016FF000010020E1 -:1075500070470000B0B581EA030C0CF0004C40F21B -:10756000FF7515EA11541DBF15EA1357AC42AF421F -:1075700039E0E41923EA455343F48013C90241F08A -:10758000004141EA505EC7021100A7FB0202002839 -:107590004FF00000EEFB01204FF00001E3FB07215C -:1075A00018BF42F00102401800214941E3FB0E01DF -:1075B000A4F580640F0302D252004041494154F1C6 -:1075C00001046CDD470872F1004250F1000051EBFC -:1075D0000451A1F580115CBF41EA0C01B0BD4CEA39 -:1075E00005510020B0BD05EA1357AC4214BFAF42AD -:1075F00041E050EA410E1CBF52EA430E02E06146F0 -:107600000020B0BD24423C441BD15FEA070EF6D0F7 -:10761000090302BF01460020AEF1140EB1FA81F752 -:10762000AEEB070401FA07FE0C37C7F1200100FAA0 -:1076300007F7C8404EEA000E23EA455343F480138F -:10764000A2E733F00043B3FA83F704BFB2FA82FE35 -:1076500077440B3FE41BB7F1200E2FBF02FA0EF365 -:10766000BB40C7F1200E22FA0EFE38BF43EA0E03DC -:10767000BA40641C82E750EA410E14BF52EA430E3E -:107680006FF000014FF4001717EB430F8ABF194644 -:1076900017EB410FB5E74CEA05510020B0BDD4F11E -:1076A0000104B4F120070FDAC4F12007520828BF03 -:1076B00042F0010210FA07F501FA07F7E1BF2A4389 -:1076C000E0403843E1400FE0352C98DCC7F120045E -:1076D00052EA400220FA07F218BF42F0010231FAE2 -:1076E00007F0A1400A43002172F1004250F100006E -:1076F00051EB0C01B0BD00004FEAF17CBCF1E04C55 -:107700002CBFBCF5001F11E05FEA4C0C34BFBCF18C -:107710007F5F2EE05FEA9C0C4FEA0C1C4FEA3C0CAA -:10772000C10071F100414CEB50707047C90241EA51 -:107730005051C00218BF41F0010141F000414FEA31 -:107740006C50C0F10900212810D240EACC7CCCF169 -:10775000200C11FA0CF070F10040CCF1200C21FA51 -:107760000CF00CF0004C40EB0C0070474FEACC7072 -:107770007047490011F5001F04D84FEACC10FF30C4 -:10778000C0057047C817704710B50024FBF725F8EF -:107790000069C00700D50124204610BD00B58BB09C -:1077A0000020ADF82A000A208DF8080000208DF88E -:1077B00009008DF80A008DF800001F20019000A834 -:1077C000FAF78CFE01200BB000BD00B58BB0002095 -:1077D000ADF82A000A208DF8080000208DF8090075 -:1077E0008DF80A0001208DF800001F20019000A8EC -:1077F000FAF774FE01200BB000BD00B58BB000207D -:10780000ADF82A000A208DF8080000208DF8090044 -:107810008DF80A0001208DF800001F20019000A8BB -:10782000FAF75CFE01200BB000BD0120704710B5D7 -:107830000024FAF7D2FF0069C00700D501242046D2 -:1078400010BD00B58BB00020ADF82A000A208DF8DD -:10785000080000208DF809008DF80A008DF800005E -:107860002020019000A8FAF739FE01200BB000BDDE -:1078700000B58BB00020ADF82A000A208DF8080072 -:1078800000208DF809008DF80A0001208DF8000015 -:107890002020019000A8FAF721FE01200BB000BDC6 -:1078A00000B58BB00020ADF82A000A208DF8080042 -:1078B00000208DF809008DF80A0001208DF80000E5 -:1078C0002020019000A8FAF709FE01200BB000BDAE -:1078D0000120704710B50024FAF77FFF0069800788 -:1078E00000D50124204610BD00B58BB00020ADF8B6 -:1078F0002A000A208DF8080000208DF809008DF874 -:107900000A008DF800002120019000A8FAF7E6FD9A -:1079100001200BB000BD00B58BB00020ADF82A00EF -:107920000A208DF8080000208DF809008DF80A0063 -:1079300001208DF800002120019000A8FAF7CEFD6B -:1079400001200BB000BD00B58BB00020ADF82A00BF -:107950000A208DF8080000208DF809008DF80A0033 -:1079600001208DF800002120019000A8FAF7B6FD53 -:1079700001200BB000BD0120704710B50024FAF7BC -:107980002CFF006900F00300032800D101242046E9 -:1079900010BD00B58BB0FAF720FFB048017841F078 -:1079A000020101700020ADF82A000A208DF80800BD -:1079B00001208DF809008DF80A1000208DF80000D4 -:1079C0002220019000A8FAF789FD01200BB000BD2C -:1079D00000B58BB0FAF701FFA048017811F0FD0166 -:1079E000017013D10020ADF82A000A208DF808009C -:1079F00001208DF8090000208DF80A0001208DF883 -:107A000000002220019000A8FAF768FD01200BB0C9 -:107A100000BD012070470120704710B50024FAF71F -:107A2000DCFE006900F00700072800D10124204691 -:107A300010BD00B58BB0FAF7D0FE8848017841F050 -:107A4000010101700020ADF82A000A208DF808001D -:107A500000208DF809008DF80A108DF80000222012 -:107A6000019000A8FAF73AFD01200BB000BD00B567 -:107A70008BB0FAF7B2FE7948017811F0FE0101707F -:107A800012D10020ADF82A000A208DF8080000204D -:107A90008DF809008DF80A0001208DF800002220E1 -:107AA000019000A8FAF71AFD01200BB000BD0120DB -:107AB00070470120704710B50024FAF78EFE006968 -:107AC000C00700D50124204610BD00B58BB00020B2 -:107AD000ADF82A000A208DF8080000208DF8090072 -:107AE0008DF80A008DF800002320019000A8FAF715 -:107AF000F5FC01200BB000BD00B58BB00020ADF847 -:107B00002A000A208DF8080000208DF809008DF861 -:107B10000A0001208DF800002320019000A8FAF748 -:107B2000DDFC01200BB000BD00B58BB00020ADF82E -:107B30002A000A208DF8080000208DF809008DF831 -:107B40000A0001208DF800002320019000A8FAF718 -:107B5000C5FC01200BB000BD0120704770B58CB092 -:107B600006460D46FAF7F6FB044600200090042274 -:107B7000314600A8FAF7FCFD009A29460FF2901052 -:107B8000FAF7A6FE28460C3805283AD8DFE800F0B8 -:107B9000030D121717090098C4F8DC0401200CB07B -:107BA00070BD0098C4F87C05F8E704F2DC4042217F -:107BB0008162F3E704F2DC4000990165EEE72748B3 -:107BC0000078002812D00021ADF82E100A218DF87F -:107BD0000C1000218DF80D108DF80E0001208DF88D -:107BE00004002220029001A8FAF778FC00992846A8 -:107BF00040B200F00CF8009004F2DC40009981677C -:107C0000CCE70FF21C10FAF763FE0020C7E710B4B0 -:107C1000134AD36B126C114C2478002C1AD00F2805 -:107C200002D010280BD015E0507A002812D0906BAB -:107C3000806800280ED488420DDD08460BE0587A93 -:107C4000002807D0986B8068002803D4884202DDA2 -:107C5000084600E0084610BC7047000060BE0020E7 -:107C60000000002012B58BB001460C39052928D838 -:107C7000DFE801F0031D1F21211B1F240020ADF8A8 -:107C80002A0001900A208DF8080005208DF80000D8 -:107C9000019404220BA90DF10900FAF769FD00A86F -:107CA000FAF71CFC01200CB010BD2324E6E72024C9 -:107CB000E4E72124E2E722240B99FFF7A8FF0B90C9 -:107CC000DCE70FF26400FAF703FE0020EBE780B573 -:107CD0000FF25C010C2004F097F80FF278011120EC -:107CE00004F092F80FF290010D2004F08DF80FF2DD -:107CF000AC010E2004F088F80FF2C4010F2004F04C -:107D000083F80FF2E0011020BDE8044004F07CB8D5 -:107D10004D52322044523D25642C25640000000061 -:107D20004D523220534446004D52322052434600B9 -:107D3000897700089D770008CB770008FB7700085B -:107D4000000000002B7800085D7B000800000000A8 -:107D500000000000B77A0008CB7A0008F97A000822 -:107D6000297B000800000000597B00085D7B0008AB -:107D700000000000000000002F7800084378000891 -:107D800071780008A178000800000000D178000890 -:107D90005D7B00080000000000000000D5780008AE -:107DA000E97800081779000847790008000000000A -:107DB000777900085D7B00080000000000000000EB -:107DC0007B79000893790008D1790008137A0008BC -:107DD00000000000177A00085D7B0008000000002A -:107DE000000000001B7A0008337A00086F7A000850 -:107DF000AF7A000800000000B37A00085D7B00083D -:107E0000000000000000000007F032BD80B5F9F767 -:107E1000A3FE006FFAF76BFA0348007802BD02492F -:107E200008707047000000007FBE00200FB480B5CE -:107E3000032200210846FAF78FFA022801D1022016 -:107E400018E00FF63040FAF743FDDFF8C80B0021C9 -:107E50004173C18181619DF80C209DF80B109DF844 -:107E60000A0007F0ABFE54220021DFF8C00BFBF73D -:107E7000B1FE012002BC5DF814FB0120704730B553 -:107E80008BB000A8FAF7C7FA05210320FAF714FB14 -:107E9000002802D1DFF8800B0890DFF8784B2069CA -:107EA000C56F07F03CFE207294F90800022806D145 -:107EB000422D04D114210320FAF7AFFA07E001287C -:107EC00005D1142D03D142210320FAF7A6FA284642 -:107ED00080B2DDED081A00A991EC030A07F081FDDC -:107EE00060692818606101200BB030BD1CB5DFF857 -:107EF000244B94F90000002842D400A8FAF706FFAA -:107F0000204600A90522FEF7ADFF94F90A0094F976 -:107F10000110814228D1217B0818A07240B23D286F -:107F200001DB3C38A07294F90A100FF65830FAF7CA -:107F3000CFFC00206061DFF8E40A90F9010010F145 -:107F4000010F01D1012016BD94F90110081A04F0A7 -:107F500071F921F0004108F015FA40B2012801DB67 -:107F6000012016BD002016BDDFF8B40A90F90120EB -:107F7000914203D0D4E90023C0E90023002016BDBC -:107F80006069DFF8D41A884205DB0FF60430FAF78F -:107F90009FFC012016BD002016BD2DE9F8430026E8 -:107FA000DFF8704A07E07A19A27252B231460FF632 -:107FB000EC20FAF78DFC94F90A50002E21D4607859 -:107FC000461B76B294F90C70002EECD5304604F0C6 -:107FD00031F921F0004102460B4690469946384659 -:107FE00004F028F942464B4608F0F8F9E3D2EA1BC0 -:107FF000A272002652B231460FF6B420FAF768FC9E -:10800000D9E73D2D02DBA5F13C00A07294F90A10DE -:108010000FF6B020BDE8F443FAF75ABC10B5DFF80C -:10802000F44901202072002060724FF0FF30207070 -:108030000F20E0721420207300206073E081A061A3 -:10804000FAF788F92061DFF8DC19C0F88810883069 -:10805000DFF8D4194160DFF8041A81600FF20D01D6 -:10806000C1600FF21D510161012010BD2DE9F043E7 -:10807000A9B00546002413A807F055FDDFF8AC6948 -:108080002046129001201190314684B06846542257 -:10809000FEF7F8FE0FBC00F0F9F807469DED210A47 -:1080A000D6ED0E0A30EE600A10EE100AFFF72AFA3B -:1080B0002246DFF87C39FFF74DFA08F063F9804675 -:1080C0001FFA88F8BDF89200B6F84610461AF6B2C4 -:1080D000DFF84099002D38D1002F02D156EA080070 -:1080E00018D00124002F15D0DFF87459A868B842C1 -:1080F00010D0204608F0FFF9204608F0AAFAA86838 -:10810000381AC9F81C00AF60324639460FF6C01065 -:10811000FAF7DEFBDFF84859AF600020C9F8140019 -:108120004FF0FF3089F80000DFF8F428D9E90001AA -:10813000C2E90001C5E90001DFF8E028C2E9000159 -:1081400099F80B0089F80A002BE000F02CF90028C0 -:108150001CD0204689F80900DFF8C428D9E90001BD -:10816000C2E9000100A8FAF7D1FD484600A905229E -:10817000FEF778FE99F9023099F9012099F900107B -:108180000FF65810FAF7A4FBFFF707FFFFF7AEFE54 -:10819000002806D0DFF88408D9E90023C0E90023CD -:1081A000012499F80D00012832D1B9F80E000028F9 -:1081B00005D10FF64010FAF78BFB012428E0D9F81F -:1081C0001810814219D2002F02D156EA080000D0BF -:1081D0000124DFF88C5895F9020099F902209042A9 -:1081E00016D0491CC9F818100FF61810FAF770FBD2 -:1081F000D9E90001C5E900010AE0002089F80D0075 -:10820000A9F80E00C9F818000FF60810FAF760FB7D -:10821000012C02D10020C9F81400D9F8100090F800 -:108220007900002803D10020C9F814000446204634 -:1082300029B0BDE8F08310B5DFF8D807002141610F -:10824000032205210020FAF787F8044600F007F81A -:10825000204610BD032205210120FAF77DB800B5A4 -:1082600095B000A807F05FFC542200A9DFF8BC0716 -:10827000FAF77EFA012015B000BDDFF89807C06953 -:108280007047DFF890070021C16170470FB410B547 -:1082900096B000249DF9B80001280BD107F00AFD23 -:1082A0001899884202D3441AE4B272E08038441A22 -:1082B000E4B26EE000A807F036FC9DF9B400401E61 -:1082C000082866D8DFE800F02905111D2936424E3E -:1082D0005A0001981999884201D3441A59E0DFF8ED -:1082E00084271018401A441C53E002981A998842B7 -:1082F00001D3441A4DE0DFF86C271018401A441CD3 -:1083000047E003981B99884201D3441A41E0DFF803 -:1083100054271018401A441C3BE0009818998842D2 -:1083200001D3441A35E0DFF83C1708181899401AB1 -:10833000441C2EE004981C99884201D3441A28E07A -:10834000DFF820271018401A441C22E005981D99D8 -:10835000884201D3441A1CE0DFF808271018401A9D -:10836000441C16E006981E99884201D3441A10E076 -:10837000DFF8F0261018401A441C0AE007981F99ED -:10838000884201D3441A04E0DFF8D8261018401AB6 -:10839000441C204616B010BC5DF814FBDFF87406D0 -:1083A000012141727047DFF86C06407A704707F090 -:1083B000C3BB0146DFF85C26792902DB7820D08137 -:1083C00000E0D081012050730FF25870FAF780BAA4 -:1083D00010B5040001D1012402E0072C00DB0624C3 -:1083E00021460FF25470FAF773FA641E052C2DD84B -:1083F000DFE804F0030A11181F26DFF818063721FA -:10840000C1723C21017321E0DFF808061921C17215 -:108410001E2101731AE0DFF8FC050F21C17214213F -:10842000017313E0DFF8EC050A21C1720F2101731B -:108430000CE0DFF8E0050721C1720C21017305E0B3 -:10844000DFF8D0050521C1720A210173DFF8C405E8 -:10845000C17A8172BDE810409FE500000FB400B5FD -:1084600095B000A807F05FFB9DED080ADDED1E0A40 -:10847000B4EE600AF1EE10FA02DB30EE600A05E0BD -:108480009FED3E1A71EE600A30EE800A10EE100A7F -:10849000FFF738F8DFF89C25DFF89C3508F016F96F -:1084A000FFF72AF9FFF72EF80022DFF89035FFF7E3 -:1084B00051F807F067FF00EE100AB8EEC00A10EEA0 -:1084C000100AFFF71FF8DFF86C25DFF87435FFF7A7 -:1084D00041F8DFF87025DFF8903508F0F7F8FFF77E -:1084E0000BF900EE100A15B05DF814FB0FB400B5DF -:1084F00095B000A807F017FB9DED0D0ADDED230AEE -:10850000B4EE600AF1EE10FA02DB30EE600A05E02C -:108510009FED1A1A71EE600A30EE800A10EE100A12 -:10852000FEF7F0FFDFF80C25DFF80C3508F0CEF889 -:10853000FFF7E2F8FEF7E6FF0022DFF80035FFF76D -:1085400009F807F01FFF00EE100AB8EEC00A10EE9F -:10855000100AFEF7D7FFDFF8DC24DFF8E434FEF77B -:10856000F9FFDFF8E024DFF8003508F0AFF8FFF797 -:10857000C3F800EE100A15B05DF814FB002474492E -:108580002DE9F0472DED068BA8B006460D4613A841 -:1085900007F0C9FA40F20D14287814FB006001219D -:1085A0000170287814FB0060DFF868144A7B012A08 -:1085B0000ED103234370287814FB00600123C3709D -:1085C000012A07D1C889002804D10020487301E09E -:1085D00001214170287814FB0060032181700DF1A6 -:1085E00084099FED868B9FED879BDFF84074002008 -:1085F000129001201190394684B068465422FEF74B -:1086000041FC0FBCFFF742FE0A28287814FB0060EB -:1086100080F0FC8000210171287814FB006898F834 -:1086200004A00846129002201190394684B0684692 -:108630005422FEF727FC0FBCFFF728FE40EA0A0091 -:1086400088F80400287814FB0068002012900320AA -:108650001190394684B068465422FEF713FC0FBCD3 -:10866000FFF714FE88F80500287814FB0068002046 -:10867000129004201190394684B068465422FEF7C7 -:1086800001FC0FBCFFF702FE88F80600287814FBF7 -:1086900000680020129005201190394684B0684689 -:1086A0005422FEF7EFFB0FBCFFF7F0FD88F8070040 -:1086B000394684B068465422FEF7E4FB0FBCFFF74E -:1086C00015FF10EE100AFEF71DFF41EC100B287885 -:1086D00014FB006853EC102B51EC190BFEF73AFF1A -:1086E00007F050FEA8F80E00287814FB00682198C7 -:1086F000FEF708FF53EC182BFEF72CFF07F042FEA5 -:1087000088F81000287814FB0060B9F80E10417446 -:10871000394684B068465422FEF7B4FB0FBCFFF71D -:108720009DFE10EE100AFEF7EDFE41EC1A0B2878C4 -:1087300014FB006853EC1A2B51EC190BFEF70AFFDF -:1087400007F020FE88F81200287814FB0068D9F89A -:108750000800FEF7D7FE53EC182BFEF7FBFE07F0E0 -:1087600011FE88F81300287814FB0068002012908E -:1087700006201190394684B068465422FEF782FBE9 -:108780000FBCFFF783FD88F80800287814FB006809 -:108790000020129007201190394684B06846542278 -:1087A000FEF770FB0FBCFFF771FD88F80900287811 -:1087B00014FB00680020129008201190394684B004 -:1087C00068465422FEF75EFB0FBCFFF75FFD88F89A -:1087D0000A00287814FB00640020129009201190F0 -:1087E000394684B068465422FEF74CFB0FBCFFF7B5 -:1087F0004DFDE0722878401C287004E10000000064 -:108800000000244000000000000059408021017158 -:10881000287814FB0068002012900220119039463D -:1088200084B068465422FEF72DFB0FBCFFF72EFDE7 -:10883000C8F80500287814FB006800201290032077 -:108840001190394684B068465422FEF71BFB0FBCDA -:10885000FFF71CFDC8F80900287814FB0068002009 -:10886000129004201190394684B068465422FEF7D5 -:1088700009FB0FBCFFF70AFDC8F80D00287814FBB0 -:1088800000680020129005201190394684B0684697 -:108890005422FEF7F7FA0FBCFFF7F8FCC8F81100F6 -:1088A000394684B068465422FEF7ECFA0FBCFFF755 -:1088B0001DFE10EE100AFEF725FE41EC100B287885 -:1088C00014FB006853EC102B51EC190BFEF742FE21 -:1088D00007F06EFDC8F82700287814FB006821987F -:1088E000FEF710FE53EC182BFEF734FE07F04AFD9E -:1088F00088F82B00287814FB0060B9F80E1080F877 -:108900002C10394684B068465422FEF7BBFA0FBCDF -:10891000FFF7A4FD10EE100AFEF7F4FD41EC1A0B70 -:10892000494A4A4B07F046FF06D8494A494B07F0E7 -:1089300055FD01D29FED4DAB287814FB006853EC38 -:108940001A2B51EC180BFEF705FE07F01BFDA8F8DB -:108950002D00287814FB0068D9F80800FEF7D2FD36 -:1089600053EC182BFEF7F6FD07F00CFD88F82F00EE -:10897000287814FB006800201290062011903946D8 -:1089800084B068465422FEF77DFA0FBCFFF77EFCE8 -:10899000C8F81500287814FB006800201290072002 -:1089A0001190394684B068465422FEF76BFA0FBC2A -:1089B000FFF76CFCC8F81900287814FB0068002049 -:1089C000129008201190394684B068465422FEF770 -:1089D00059FA0FBCFFF75AFCC8F81D00287814FBA1 -:1089E00000640020129009201190394684B0684636 -:1089F0005422FEF747FA0FBCFFF748FCC4F82100E9 -:108A00002878401C2870FFF72AFC28B0BDEC068BA4 -:108A1000BDE8F08744BA002000007A44D8BD0020A9 -:108A2000D0BD00202D7E00087B7E0008C8B5002048 -:108A3000000024407B14AE47E17A743F00005940A7 -:108A4000E17A843F2D431CEBB81E85EB51B89E3F65 -:108A50009A9999999999B93F40771B007F7E0008B0 -:108A60002CBD002080969800E2361A3F9A99999979 -:108A70009999B93F50443A205374617274506564B7 -:108A80006F00000050443A204E542025640000003E -:108A900050443A204E6F54696D65000050443A20AE -:108AA000636F6D70312025642C2025640000000068 -:108AB00050443A20636F6D70322025642C20256469 -:108AC0000000000050443A20435554202564000023 -:108AD000537465703D25642C2025640050443A543D -:108AE000696D654E6F7469202564202564202564B6 -:108AF0000000000050443A2053746F7020446174A9 -:108B00006131000050443A207574696D657220250A -:108B10006400000050443A2053746F702044617424 -:108B20006132000050443A205374617274204461F1 -:108B3000746120256400000050443A2055542025DB -:108B40006400000010B5DFF8EC4A40F281220021F9 -:108B50002046FBF73FF800202070E07284F84C02BA -:108B600010BD0FB470B5A6B0DFF8CC4A606890F8BD -:108B7000101400292ED190F8110400282AD10020C9 -:108B80008DF81400032006900DF11D002AA9212262 -:108B9000FEF768F90A208DF81C0005A8F9F79EFC7D -:108BA000002801D1022079E0FFF7CCFF10A806F0E1 -:108BB000BAFF00A8FAF7AAF8DFF8785A9DF8000083 -:108BC000E8769DF8010028779DF802006877BDF8E7 -:108BD0000300E8839DF8AA60022E2DD100A8FAF7C1 -:108BE00095F8DFF8505A9DF900004FF461619DF946 -:108BF0000120C2EB02139A0011FB00209DF9021024 -:108C000040FA81F04FF47A71BDF9032001FB002096 -:108C1000C5F87902C5F8750205F1200005F11B01C0 -:108C20000522FEF71FF94FF49660A5F81900DFF84A -:108C30000C0AC5F86D020AE0002E08D1DFF8F4092D -:108C40000078002803D00021012000F025FCDFF887 -:108C5000E459A87D0121B1400143A975E87D9DF843 -:108C6000AB200243EA75287E9DF8AC3003432B7697 -:108C7000606890F87940049490F87840039490F8F4 -:108C80001144029490F810040190B5F81900009076 -:108C9000C9B20FF6D410F9F71BFE012026B070BC44 -:108CA0005DF814FB10B590B0FAF772FE002854D0AE -:108CB000DFF88049A17D012290F902309A4091436A -:108CC000A175E27DC3789A43E275227E007922EA9B -:108CD00000002076002914D10FF6B410F9F7F8FD42 -:108CE000FFF730FF01208DF81400032006900A20C2 -:108CF0008DF81C0005A8F9F7F1FB002813D103201B -:108D000030E0DFF83409406890F8781000290AD183 -:108D1000002180F8101480F81114FFF713FF0FF6EC -:108D20008010F9F7D5FDDFF81009406890F8791048 -:108D3000049190F87810039190F81114029190F832 -:108D400010040190B4F819000090237EE27DA17D0B -:108D50000FF66010F9F7BCFD03E00FF68010F9F78D -:108D6000B7FD012010B010BD2DE9F04F9DB00024DB -:108D700000A8F9F7CBFF08A806F0D5FE06A807F073 -:108D800074FD2746254640F6B83841F28839DFF8A9 -:108D9000A4689DF80000B0719DF80100F0719DF885 -:108DA00002003072BDF80300A6F80900B0794FF454 -:108DB0006161F279C2EB02139A0011FB0020317A53 -:108DC00040184FF47A71B6F8092001FB0020C6F86C -:108DD0000200BDF866000146042901D1032414E015 -:108DE000BDF81820012A03D0022A03D1002801D19E -:108DF00001240AE0022A03D1032901D1022404E05C -:108E0000042A02D1042900D00424D6F80D10D6F883 -:108E1000020000F0A1FB8246B07D400722D5DFF8BA -:108E200018B8DBF808005044CBF8080042F2107183 -:108E3000884217D3DBF80C104118CBF80C100FF652 -:108E4000A800D6F86D228A4205D3F9F741FD2846DD -:108E5000CBF8080006E0F9F73BFD2846CBF80C00FC -:108E6000CBF80800F07AA04200F0BB802846707072 -:108E70003470C6F8710221460FF67C00F9F728FD20 -:108E8000B07D400740F1A180D6F87512D6F80200F7 -:108E900000F062FB8046D6F87D0244F62067B845B4 -:108EA00014D24044C6F87D02F07A06EB8000D0F878 -:108EB00059124144C0F85912F07A8019317B90F868 -:108EC00054228A4212D280F854120FE0804428467D -:108ED000C6F87D021422014606F25920FAF77AFEFE -:108EE0000522294606F51570FAF774FE4246D6F8B3 -:108EF0007D120FF61400F9F7EBFCD6F87D02B842AC -:108F000056D32F46D6F85D12D6F85902814200D3C7 -:108F1000012702200BE006EB8903D3F8593206EB58 -:108F20008202D2F85922934200D20746401CB94629 -:108F3000C0B20246052AEEDBD6F869020090D6F8E8 -:108F40006532D6F861220FF2D870F9F7C1FC09EB4F -:108F5000060AD6F87D329AF8542249460FF2DC70A0 -:108F6000F9F7B6FC8DF80C709AF854028DF80D00E4 -:108F7000D6F87D1296F84C029DF80C20904204D150 -:108F8000022203A800F082F903E0012203A800F006 -:108F90007DF91422294606F25920FAF71BFE052214 -:108FA000294606F51570FAF715FE2846C6F87D0223 -:108FB00096F84902002808D02A46414606F10B00DF -:108FC00000F064F9284686F84902D6F80200C6F88F -:108FD0007502284686F84B02012086F84F020746A4 -:108FE0004DE0D6F871025044C6F87102012C03D14D -:108FF0004FF4FA684FF47A6940450FD396F84F1250 -:1090000001290BD101207070022086F84F02012740 -:1090100031780FF24070F9F75BFC10E048450ED351 -:1090200096F84F0202280AD102207070032086F8B9 -:109030004F02012731780FF22C70F9F749FC307B91 -:10904000717888421BD1022818D144F62067D6F8DF -:109050007102B84212D3B07D40070DD596F849028F -:10906000002809D1012086F84902F27A96F84C12BC -:109070000FF20070F9F72CFCC6F871722F46B07D24 -:10908000400714D5D6F80290D6F87912484600F079 -:1090900063FA8046D6F86D22904508D301273D46F5 -:1090A000C6F8799241460FF2DC60F9F711FC002F07 -:1090B00000F0E280002737E009F1010908EB060023 -:1090C00000F225008178C278120202EB0141027998 -:1090D00089180091437808EB060090F825205FFA84 -:1090E00089F949460FF23470F9F7F2FB08F10508E7 -:1090F000B6F852229045DFDBDFF83C05406890F877 -:109100001104002804D006F125010120F7F758FECC -:10911000002086F84E0206F12000B11D05235B1EDB -:10912000CA5CC254FBD17F1C032F80F2A580B07DA6 -:109130003841C007F7D5002F03D0022F39D019D3FB -:10914000F1E7DFF8F4040068407A0028EBD1002151 -:10915000012000F0A1F97078029030780190B6F803 -:1091600009000090337AF279B1790FF23060F9F7A3 -:10917000AFFBD8E7F07DA042D5D170780028D2D0DF -:1091800096F84B020028CED1012086F84B0201460A -:1091900000F082F97078029030780190B6F80900FA -:1091A0000090337AF279B1790FF20C60F9F790FB05 -:1091B000B9E7002DB7D0D6F87512D6F8020000F046 -:1091C000CBF9D6F87D1201EB000844F6206080450B -:1091D00005D300224146304600F058F821E0B6F8A9 -:1091E00009000090337AF279B1790FF2E850F9F77B -:1091F0006FFBD6F80200A0EB080100A800F0B4F95C -:10920000B01D00A90522FDF72DFEB6F8090001905A -:10921000307A0090F379B27941460FF2CC50F9F7E9 -:1092200057FBB6F85202093803F004F8DFF81024AF -:10923000DFF81034FEF78EF907F0A4F880461FFA25 -:1092400088F896F84E22904506D041460FF2B0506D -:10925000F9F73EFB86F84E8296F84E1286F82D10EE -:10926000012086F84A024FF000090FF2A450F9F7E6 -:109270002FFB4FF009083BE706F10B0031460B22AC -:10928000FDF7F0FD01201DB0BDE8F08F2DE9FE4394 -:1092900005460E4691464FF0000801A841460A4691 -:1092A00006C0E44C04F24A2794F84A02002807D08A -:1092B000084684F84A0238810FF27850F9F708FB23 -:1092C000D4F87532D4F8022031460FF27C50F9F709 -:1092D000FFFA3889002826D1A01C817F4FF46162F3 -:1092E000C07FC0EB0013980012FB010094F822101D -:1092F00040184FF47A71B4F8232001FB002004F2E7 -:10930000230101228A70CA701A220A7104224A714A -:10931000020E8A71020CCA71020A0A724872387906 -:10932000887209203881B9F1000F03D0B9F1020F1A -:109330002CD055D228788DF804000DF104096878F6 -:1093400089F80100300C89F80200300A8DF8070016 -:1093500089F80460052201A9388900192530F9F738 -:1093600007FA3889411D39812878B8703879401C4E -:1093700038714FF00108009699F801309DF80420EB -:1093800089B20FF2DC40F9F7A3FA29E03889001915 -:1093900000F2220190F822204B781B0203EB0242DC -:1093A00089785218B518290C80F8221038890019CC -:1093B000290A80F823103889001980F82450334690 -:1093C00029460FF2B440F9F783FA39890819009554 -:1093D00090F8213090F820200FF2B040F9F778FA99 -:1093E000D4F80200C4F875020020C4F87D0240469B -:1093F000BDE8FE838F4890F84A12002904D000216E -:1094000080F84A12012070470020704789480021E7 -:10941000A0F852127047874901F22900B1F8522290 -:10942000002A07D1002281F829201146417081705D -:10943000C170017170477F48B0F85202002802D015 -:10944000001F80B270470520704710B57A4CF8F7BE -:1094500081FF6060F9F7C1F9206060687A49C0F85F -:10946000201400F2204079494160794981600FF26F -:109470001101C1600FF255010161012010BD000012 -:109480006D48406890F81104002801D10020704711 -:10949000684890F950027047664A82F850020028E6 -:1094A00008D092F84D02012303FA01F1084382F833 -:1094B0004D027047002082F84D02704780B50021B0 -:1094C0000846FFF7E9FF012002BD00003CB440F26E -:1094D0000D120B7812FB030301241C700B7812FB96 -:1094E00003031A249C70534B93F85142002C0C78C0 -:1094F00012FB040408D1012565700C7812FB0404EA -:1095000093F84D52E5700DE0032565700C7812FB61 -:1095100004040125A5720C7812FB0404E5700024F4 -:1095200083F8514293F84D4203252C420FD00C781A -:1095300012FB0404D3F8025065600C7812FB04049B -:109540001D7825720C7812FB04005A784272087854 -:10955000401C087033BCB1E7884203D23D4A101862 -:10956000401A7047401A70472DE9F0412DED028BEB -:1095700082B005460C46204602F066FE364A374B5E -:10958000FDF7E8FF41EC180B0022354B02F06AFEB4 -:1095900006F0F8FE8DF800004FF461669DF80000BB -:1095A00016FB00F002F046FE02460B4651EC180B8B -:1095B00008F07AF841EC180B00222A4B02F052FE18 -:1095C00006F0E0FE07468DF801704FF03C08FFB250 -:1095D00018FB07F002F02EFE02460B4651EC180B6A -:1095E00008F062F806F0CEFE8DF802009DF800103B -:1095F00011FB06F117FB081151FA80F04FF47A7154 -:1096000001FB1040ADF80300284600A90522FDF734 -:1096100029FC02B0BDEC028BBDE8F08105490128B0 -:1096200003D1012081F851027047002081F85102D6 -:1096300070470000F090002064BC0020804F1200B2 -:109640009A9999999999C93F638B0008A58C00084C -:10965000698D0008005C2605FCA9F1D24D62503FDF -:109660000020AC4000004E4041542D414C20256468 -:109670002025642025642025642C20415420256465 -:10968000202564205044202564202564000000002B -:1096900041542D414C4C52454D4F5645440000001D -:1096A00041542D464F5243454452454D4F56454433 -:1096B0000000000041542D524C20256420256420D8 -:1096C00025642025642C2041542025642025642015 -:1096D00050442025642025640000000041542D5290 -:1096E0004C204E756C6C000041542D4375725469CA -:1096F0006D653A256400000041542D543A256420DC -:10970000413A4C4F5700000041542D616363546946 -:109710006D653A2564204475723A256400000000A6 -:1097200041542D54696D6520533A256420573A25DC -:109730006420523A256420413A25640041542D5357 -:10974000656C3A25642D25642054696D653A25645D -:109750000000000041542D543A256420413A4D49FF -:109760004400000041542D543A256420413A4849B0 -:109770004748000041542D424154302025642025A3 -:109780006400000041542D424154332054696D65FA -:109790006F757420256420256400000041542D4E0F -:1097A0004F522025643A25643A25643A25642025E1 -:1097B000642025640000000041542D494E542025AA -:1097C000643A25643A25643A25642025642025649A -:1097D0000000000041542D54312025643A25643A9C -:1097E00025642E256400000041542D543220256448 -:1097F0002025643A25643A25642E25640000000083 -:1098000041542D43462057424320256420256400BF -:1098100041542D54433A25640000000041542D4E1C -:109820006F256420543A256420413A256420443A47 -:109830002564000041542D436C656172426174637C -:10984000684461746100000041542D42415431204C -:109850004475723A256420256420256400000000C8 -:1098600041542D424154322053503A2564202564FE -:10987000202564202564000041542D4E65774475F1 -:10988000723A25643D25642B2564000041542D4225 -:109890004154342053503A25642025642025642007 -:1098A0002564000080B5B648416891F83914002954 -:1098B00001D1002002BD0121817008F045F8002887 -:1098C0000AD008F010FB01460FF2EC20F9F700F87F -:1098D00008F03EF8012002BD002002BD0FB430B5F3 -:1098E0008BB007F0A1FFA648002101704170817084 -:1098F0000161BDF83A40204600F02AF9BDF83C501D -:10990000284600F023F90FF2C420F8F7E1FF2A46B9 -:1099100021460FF2C820F8F7DBFF01208DF83C004C -:10992000AA208DF83A003C208DF83B0000208DF8ED -:109930000000032001900DF109000EA92122FDF77E -:1099400091FA0A208DF8080000A8F8F7C7FD002852 -:1099500005D10FF29C20F8F7BBFF022000E00120A8 -:109960000BB030BC5DF814FB00B58BB007F08BFF7B -:1099700001208DF80000032001900A208DF80800D6 -:1099800000A8F8F7ABFD002801D1032000E001207A -:109990000BB000BD70B504460D4640F20D16287898 -:1099A00016FB00400121017008F09DFA01281AD130 -:1099B000287816FB004005214170287816FB0040EE -:1099C0001B2181700FF23C20F8F782FF287816FBEC -:1099D00000400221C170287816FB00401E21417111 -:1099E00007F0BEFF18E008F082FA012814D12878A9 -:1099F00016FB004001214170287816FB00401B2116 -:109A000081700FF21020F8F763FF287816FB0040F2 -:109A10000121C17007F0ACFF2878401C2870BDE818 -:109A2000704007F095BF70B59CB0564D284606F0C3 -:109A30007AF82968524CA0680E1AB6B2B5F84620DA -:109A4000002E02D1E068904208D00FF2D810F8F74B -:109A50003FFF2868A060B5F84600E0602E60294608 -:109A600083B068465422FDF70DFA0EBC3C2008F086 -:109A700053FB2061207801281CD112A8F9F78BF93B -:109A800016A80268436843EC122B14A802684368C6 -:109A900043EC112B12A80268436843EC102B9DF88D -:109AA00063209DF862109DF8610000F028F8002006 -:109AB000207006E06078012803D100F045F800200E -:109AC000607001201CB070BD80B50FF26810F8F70F -:109AD000FFFEF8F73FFC2A49486000228A60CA600E -:109AE0002949C0F8481400F24840284941602849F3 -:109AF00081602849C16028490161012002BD38B553 -:109B00002DED048B84B0B0EE408AF0EE608AB0EEAA -:109B1000419AF0EE619A04460D46D2B2C9B2C0B283 -:109B200007F038FF07F02CFFEDB20395E4B2029482 -:109B30008DED009B53EC182B0FF20410F8F7C8FEC4 -:109B400004B0BDEC048B31BD07F01FBF07F0BABEF7 -:109B500007F0ADBE07F0C1BE07F0C8BE80B508F083 -:109B6000C2F9002805D006488078002801D10120DC -:109B700002BD002002BD02480121017070470000B3 -:109B8000DCBB00201CB60020DD98000869990008A5 -:109B9000279A0008A59800089599000808F0B8B918 -:109BA00008F0BAB9C9B208F0BFB907F0D9BE07F0DA -:109BB0007DBE08F077BA000050443A20436D6452ED -:109BC000656164795F5353202564000050443A2056 -:109BD00053746172742053530000000050443A20C3 -:109BE00053542025642C2057542025640000000085 -:109BF00050443A205065646F4F70656E4661696CE1 -:109C00002053530050443A20524551554553542057 -:109C1000504F530050443A2052455155455354201B -:109C200041434B0050443A20537465702025642C06 -:109C30002025640050443A20496E695353000000C7 -:109C400050443A20535320536574506F7320256657 -:109C50002025662025642025640000000FB480B50F -:109C6000082200210846F8F777FB022801D10220DC -:109C700004E06948002101704180012002BC5DF8C8 -:109C800014FB6548002101700120704738B501249C -:109C90000020ADF80000604D95F90000002809D1C2 -:109CA000204628700020A880A86808F03FFD08F032 -:109CB000B3FE29E0012829D16888401C68800DF195 -:109CC0000101A86808F054FF002815D008220021DF -:109CD0002046F8F741FB032800D1032408220B217A -:109CE0000020F8F739FB022801D1022032BD022002 -:109CF000287009F00FF907E0B5F90200962803DB98 -:109D00000520287000F057F8204632BD0328FBD10B -:109D1000A888401CA88000B2FB28F1DA00A9A86836 -:109D200008F040FD0028EFD004202870204600F005 -:109D300033F800F040F8E7E710B5374CF8F70AFBC6 -:109D4000E060F7F709FFA060E0683449C0F85011FF -:109D500000F5A87032494160324981600FF20D016F -:109D6000C1600FF2C9010161012010BD0146002050 -:109D7000294AD26892F84121002A02D0012900D153 -:109D800006E0704780B5002000F006F8012002BD13 -:109D9000254890F90000704723490870704780B546 -:109DA000082200210846F8F7D7FA022801D102203C -:109DB00002BD012002BD80B517480021818041808D -:109DC00008220120F8F7C8FA032801D1032002BDB8 -:109DD000012002BD38B501240F4D95F9000002287D -:109DE00015D108220B212046F8F7B6FA032800D136 -:109DF0000324FFF7D4FF022801D1022032BD03283B -:109E000000D103240320287002A0F8F761FD20464A -:109E100032BD00005341490084BC00205D9C000815 -:109E2000839C00088D9C000879BE002018B440F285 -:109E30000D120B7812FB030301241C700B7812FB2C -:109E400003035C700B7812FB030308249C700B78EF -:109E500012FB03000122C2700878401C087011BC7C -:109E600090E700000FB480B58748012101700522FA -:109E700000210846F8F770FA022801D1022016E006 -:109E8000052209210020F8F767FA022801D10220F3 -:109E90000DE0052207210020F8F75EFA022801D123 -:109EA000022004E000F0E8F809F05CF8012002BCB0 -:109EB0005DF814FB38B50124052209212046F8F786 -:109EC0004BFA032800D10324052207210120F8F7CB -:109ED00043FA032800D103246B4D95F900000328B1 -:109EE00001D0012807D1052200210120F8F734FA1A -:109EF000032800D103240020287000F0BDF809F0E9 -:109F0000D4F8204632BD80B5002000F03CF802288D -:109F100001D1022002BD032801D1032002BD01208E -:109F200002BD10B5584CF8F715FA2061F7F714FE8A -:109F3000A060F8F752FCE06020695449C0F8D810DE -:109F4000D83053494160534981600FF21101C1601B -:109F50000FF249110161012010BD000001460020EF -:109F6000494A126992F8C920002A02D0012900D179 -:109F700002E07047002003E0474890F90000704776 -:109F800045490870704770B582B0064601253E4CC1 -:109F900094F90000012823D1A088401CA08000B2C1 -:109FA0004C280BDB0020A08002202070052200211D -:109FB0002846F8F7D1F9032800D10325012E59D1FD -:109FC000E068007D012807D1B4F904001F2851DBA7 -:109FD0006078401C60704DE0A078401CA07049E0A3 -:109FE00002281CD1012E0AD1E068007D012803D18E -:109FF0006078401C607002E0A078401CA07094F96A -:10A000000100012836DB052200210846F8F7A4F9F3 -:10A01000022801D1022076BD032020702AE0032807 -:10A0200028D100208DF8000000A9A06808F0BEFF2C -:10A03000C0B202280DD1052200212846F8F78CF97C -:10A04000032800D103250120FFF79AFF0420207088 -:10A0500010E003280ED1052200212846F8F77CF9EC -:10A06000032800D1032500206070A070022020701A -:10A0700008F078FF284676BD0348002181804170B2 -:10A080008170704700000000B4BB0020659E00088E -:10A09000B59E0008079F00086CBE002010B50C4656 -:10A0A00040F20D11227811FB020201231370227875 -:10A0B00011FB02025370227811FB020205239370F8 -:10A0C000227811FB02000121C170FFF753FF2078B5 -:10A0D000401C207010BD00000FB480B50222012189 -:10A0E0000020F8F739F9022801D102200EE00222FF -:10A0F00007210020F8F730F9022801D1022005E0FD -:10A1000008F0DEFF414800210170012002BC5DF82B -:10A1100014FB3E48002101700120704700B58BB050 -:10A1200000A8F8F778F903A890EC030A08F0FEFFFE -:10A130003649087001200BB000BD10B5334CF8F75C -:10A1400009F9A060F8F749FB6060A0683049016632 -:10A1500030494166304981660FF21D01C1660FF238 -:10A1600069010167012010BD80B528484068007D65 -:10A1700008F0D5FF012002BD002024498A6892F82A -:10A180005120002A04D091F90010002900D00120AC -:10A1900070471E48002101700120704710B500244F -:10A1A000012804D007D303280BD002D303E00124F5 -:10A1B00007E0022405E0032401460FF26000F8F7EF -:10A1C00087FB204610BD000038B50C4640F20D114B -:10A1D000227811FB020201231370227811FB020284 -:10A1E0005370227811FB020202239370227811FB34 -:10A1F0000205064890F90000FFF7D0FFE8702078CC -:10A20000401C2070BDE83140C3E7000008BD0020BD -:10A21000D9A0000813A100081DA100084C4D43500F -:10A22000532031202564000070B504463548364E71 -:10A230000568B5B1287A88B16868A0420ED10120BE -:10A2400028723078401C3070287A401E2872C0B2C4 -:10A2500010B9284609F026FEF9F752FDED68002DE9 -:10A26000E8D170BD10B50446284829490160002096 -:10A270000021024603460FC4103CF9F794FC214824 -:10A280000168E160046020484078002804BFBDE810 -:10A290001040F9F782BC10BD30B51B4D044628783C -:10A2A00081B0401C2870A868217A11B9606001252E -:10A2B0000DE06168814208D01021204601F084FA47 -:10A2C000207A0028F8D1A8686060207A451C2572A1 -:10A2D000F9F716FD284601B030BD0B490A78521C2B -:10A2E0000A70017A491E0172C9B2002918BFF9F734 -:10A2F00007BD00B581B009F0D5FD01B05DF804EBF4 -:10A30000F9F7FEBC48BE002034360020F0BD002026 -:10A3100029A2000800F5E0700268914203D3436867 -:10A320009A18914202D380680028F5D17047DFF86F -:10A330002007016899B94FF48031816004224FF4FD -:10A34000805141604FF0FF31C160016104214161E2 -:10A35000DFF80017C1F8BC21DFF8FC16016001200E -:10A36000704701F1080313F0070305D001F108035A -:10A37000C3F1080303F007035918D21A8161C260C0 -:10A3800042F001034B60511828224A60DFF8C016E2 -:10A390000969C16170472DE9F84F044601F10800D1 -:10A3A00010F0070005D001F10800C0F1080000F02E -:10A3B000070000EB010B02F1080010F0070005D0C8 -:10A3C00002F10800C0F1080000F007008618A6EBB3 -:10A3D0000B00A0EB030803EB0B0743F00300CBF8E3 -:10A3E0000400B74228BF09F073FD3079C00758BF99 -:10A3F00009F06EFDB8F1100F38BF09F069FDA069D2 -:10A40000864207D1E0684044E060A76140F0010067 -:10A4100078605AE16069864208D1A0684044A06033 -:10A42000676140F001017960C0514EE1706800F051 -:10A430000301012940F0AD80C0084FEAC00920287F -:10A440003BD2D6F808A0F5680090AE4208BF09F0EC -:10A450003FFD564508BF09F03BFD70680099C008F4 -:10A46000C000B0EBC10F18BF09F032FD009804EB3B -:10A47000C00000F128018A4508D021698A45C0F052 -:10A480008480DAF80C10B14240F07F80554506D147 -:10A49000009A2068012191408843206077E02830AD -:10A4A000854205D0206985426FD3A868B0426CD13F -:10A4B000CAF80C50C5F808A069E0F568D6F818A0ED -:10A4C000B5420CD0B0682169884223D3C168B1423B -:10A4D00004BFA968B1421DD1C560A8601CE006F1A7 -:10A4E0001400056835B906F110000568A5B101E052 -:10A4F0000846056805F114010A68002A02BF05F143 -:10A5000010010A68002AF3D12169884202D3002190 -:10A51000016001E009F0DCFCBAF1000F37D0F0690E -:10A5200004EB800000F5987001688E4209D1056047 -:10A53000280014D1F269606801219140884360606D -:10A5400025E02069824508D3DAF81000B04214BF34 -:10A55000CAF81450CAF8105001E009F0B9FCB5B1BE -:10A560002069854211D3C5F818A0316929B181420B -:10A5700026BF29618D6109F0ABFC706938B1216992 -:10A58000884202D36861856101E009F0A1FC4E4474 -:10A59000C84470684008400070604FEAD80548F031 -:10A5A0000100786048F80780202D21D204EBC50017 -:10A5B00000F12806B146B8F1100F38BF09F088FC49 -:10A5C000206820FA05F1C90704D40121A9400843F5 -:10A5D000206006E0B068216988422CBF814609F0FE -:10A5E00077FCB760C9F80C70C7F80890FE606CE0A3 -:10A5F0005FEA182008BF002123D0B0F5803F28BFB4 -:10A600001F211ED2A0F58071090C01F008018840BD -:10A61000A0F58052120C02F004029040A0F5804395 -:10A620001B0CC1F10E0103F00203891AC91A9840EC -:10A6300001EBD030C11D28FA01F101F0010101EB5D -:10A640004001F96100227A613A6104EB810062689D -:10A6500022FA01F300F59870DB0706D4012303FA10 -:10A6600001F11143616007601CE01F2900680EBF03 -:10A6700000214908C1F1190108FA01F100E0104672 -:10A680004268D208D200424510D0CA0F00EB8202C5 -:10A6900002F1100349001A68002AF0D121698B42A7 -:10A6A00011D31F60B861FF60BF600EE0226981684E -:10A6B000904228BF914206D3CF608760B960F860AE -:10A6C0000020B86101E009F003FC0BF10800BDE8CF -:10A6D000F28F2DE9F04F0546DFF87403006883B070 -:10A6E000884608B9FFF723FEDFF86403806800EBB3 -:10A6F00008012F31401E21EA0000804580F0A5812D -:10A70000D5F8B81141B1D5F8B0218018824280F057 -:10A710009C818142C0F0998109F0DEFB00281EBFB8 -:10A720000446076814F1010F00F08F81D5F8B001DD -:10A730003818C5F8B001D5F8B411814238BF0146C8 -:10A74000C5F8B411A86968BB286908B1844200D271 -:10A750002C61C5F8C041C5F8C4710020C5F8CC0112 -:10A760002021BB48006868624FF0FF30286228460D -:10A7700000F128020830D2609260491EF8D1B54835 -:10A78000854203D1A7F12802214625E055F8040CA3 -:10A79000C00805EBC000A0F108013819401AA0F16B -:10A7A000280219E005F5E071084600E08068B8B1BC -:10A7B00042680368D2189442F8D1027B12070FD482 -:10A7C000AA699A420CD3466833449A4208D2B9190E -:10A7D0004160E868A9693A182846FFF7C2FD1FE101 -:10A7E0002869844238BF2C610846391900E0806826 -:10A7F00080B102688A42FAD1017B09070AD4046059 -:10A8000043464168791841602846214603B0BDE8B7 -:10A81000F04FC0E5AE6931462846FFF77BFD416841 -:10A820000068081801902F3800F1080111F00701A5 -:10A8300005D000F10801C1F1080101F0070101EBA9 -:10A84000000906F11000814538BFB14609F1080042 -:10A85000009004F1080109F1180A4FF0000BA7F16C -:10A86000280011F0070105D004F10801C1F1080129 -:10A8700001F007010A19401AAA61E86040F00101DD -:10A88000516080182821416071480069E861009892 -:10A8900010F0070018BF09F01BFB1B20C9F80400CB -:10A8A00005F5E071B1E80C500098A0E80C50C5F82F -:10A8B000C041C5F8C471C5F8CCB10098C5F8C8014D -:10A8C000019800E08A460722CAF804200AF1040130 -:10A8D0000A1D0BF1010B8242F4D3BBF1020FB8BF8A -:10A8E00009F0F6FAB14500F09B80A9EB060081194A -:10A8F0004FEAD0094A68520852004A6040F001010C -:10A9000071608051B9F1200F1FD205EBC90101F12F -:10A9100028042746102838BF09F0DAFA286820FAF8 -:10A9200009F1C90705D4012101FA09F1084328609A -:10A9300006E0A068296988422CBF074609F0C8FADA -:10A94000A660FE60B760F4606AE0010A08BF0022FA -:10A9500023D0B1F5803F28BF1F221ED2A1F58072FF -:10A96000120C02F008029140A1F580531B0C03F079 -:10A9700004039940A1F58044240CC2F10E0204F0B6 -:10A980000204D21A121BA14002EBD131CA1D20FAD7 -:10A9900002F202F0010202EB4102F2610023736154 -:10A9A000336105EB82016B6823FA02F401F59871BB -:10A9B000E40705D401209040184368600E601CE055 -:10A9C0001F2A09680EBF00225208C2F1190200FABC -:10A9D00002F200E019464B68DB08DB00834210D02E -:10A9E000D30F01EB830303F1100452002368002B03 -:10A9F000F0D12869844211D32660B161F660B66057 -:10AA00000EE02A698868914228BF904206D3C6604A -:10AA10008E60B060F1600020B06101E009F058FA8A -:10AA2000E868804511D2A0EB0800E86040F0010022 -:10AA3000A96908EB0102AA61506048F00300486070 -:10AA400003B001F10800BDE8F08F002000F02BBC3E -:10AA500074BB0020B89500206859883C2DE9F84F58 -:10AA6000044688460026C8F1000B5FEA182008BF9C -:10AA7000002123D0B0F5803F28BF1F211ED2A0F5B2 -:10AA80008071090C01F008018840A0F58052120C79 -:10AA900002F004029040A0F580431B0CC1F10E01AE -:10AAA00003F00203891AC91A984001EBD030C11D86 -:10AAB00028FA01F101F0010101EB400104EB8100F2 -:10AAC000D0F8300130B31F290EBF00224A08C2F16E -:10AAD000190208FA02F2002300E052004568ED086E -:10AAE000ED00A5EB08055D4503D206465FEA050BC0 -:10AAF0000CD045694FEAD27E00EB8E00002D006934 -:10AB00001CBF85422B460028E7D1184600283AD1C1 -:10AB1000002E3AD10120884040004142084361683C -:10AB2000084000F05F8141420840411E080B00F0E0 -:10AB3000100021FA00F2510901F00801CA409308FF -:10AB400003F00403DA40550805F002050818EA404E -:10AB50001818C2F3400E2844704422FA0EF1081867 -:10AB600004EB8000D0F830010DE008464168C908C8 -:10AB7000C900A1EB080159453CBF8B460646016957 -:10AB80000029F2D140690028F0D1002E00F02A817E -:10AB9000A068A0EB0800834580F0248120698642EC -:10ABA000C0F01E817068C00808EB0B09C00008EBFC -:10ABB0000605484518BF09F08BF9AE4280F01081B8 -:10ABC000F768D6F818A0B7420CD0B068216988425F -:10ABD00023D3C168B14204BFB968B1421DD1C76077 -:10ABE000B8601CE006F11400076837B906F11000E0 -:10ABF0000768A7B101E00846076807F114010A6871 -:10AC0000002A02BF07F110010A68002AF3D1216966 -:10AC1000884202D30021016001E009F059F9BAF13C -:10AC2000000F38D0F06904EB800000F598700168DF -:10AC30008E4209D10760380014D1F26960680121A1 -:10AC400091408843606026E02069824508D3DAF8A5 -:10AC50001000B04214BFCAF81470CAF8107001E0B6 -:10AC600009F036F9BFB12069874212D3C7F818A09E -:10AC7000306930B12169884226BF3861876109F0A7 -:10AC800027F9706938B12169884202D378618761F8 -:10AC900001E009F01DF9BBF1100F09D249F00300E2 -:10ACA000706009EB0600416841F00101416096E0E7 -:10ACB00048F0030070604BF0010068604BF805B08D -:10ACC0004FEADB0020281DD204EBC00101F1280768 -:10ACD000216821FA00F2BB46D20705D4012202FA0C -:10ACE00000F00843206006E0B868216988422CBF64 -:10ACF000834609F0EDF8BD60CBF80C50C5F808B0FC -:10AD0000EF606CE05FEA1B2008BF002123D0B0F5A4 -:10AD1000803F28BF1F211ED2A0F58071090C01F0D1 -:10AD200008018840A0F58052120C02F00402904005 -:10AD3000A0F580431B0CC1F10E0103F00203891A38 -:10AD4000C91A984001EBD030C11D2BFA01F101F076 -:10AD5000010101EB4001E96100226A612A6104EB13 -:10AD60008100626822FA01F300F59870DB0706D4CF -:10AD7000012303FA01F11143616005601CE01F2902 -:10AD800000680EBF00214908C1F119010BFA01F159 -:10AD900000E010464268D208D2005A4510D0CA0FCF -:10ADA00000EB820202F1100349001A68002AF0D178 -:10ADB00021698B4211D31D60A861ED60AD600EE08A -:10ADC00022698168904228BF914206D3CD60856098 -:10ADD000A960E8600020A86101E009F079F807E1C6 -:10ADE00009F076F801E12DE9F84F044688466068DD -:10ADF00041420840411E080B00F01000C1404A09C2 -:10AE000002F00802D1408B0803F00403D9404D083A -:10AE100005F002051018E9401818C1F3400628444F -:10AE20003018F140081804EB8000D0F83001416878 -:10AE3000C908C9000646A1EB080A09E008464168AE -:10AE4000C908C900A1EB080151453CBF8A46064626 -:10AE500001690029F2D140690028F0D120698642B9 -:10AE6000C0F0C1807068C00808EB0A09C00008EB98 -:10AE7000060B484518BF09F02BF85E4580F0B380FB -:10AE8000F768B569B7420CD0B0682169884223D30E -:10AE9000C168B14204BFB968B1421DD1C760B86092 -:10AEA0001CE006F11400076837B906F110000768C6 -:10AEB000A7B101E00846076807F114010A68002AF3 -:10AEC00002BF07F110010A68002AF3D12169884204 -:10AED00002D30021016001E008F0FAFF002D34D018 -:10AEE000F06904EB800000F5987001688E4209D18A -:10AEF0000760380011D1F2696068012191408843F0 -:10AF0000606022E02069854205D32869B04214BF01 -:10AF10006F612F6101E008F0DBFFB7B12069874264 -:10AF200011D3BD61306930B12169884226BF3861D3 -:10AF3000876108F0CDFF706938B12169884202D37A -:10AF40007861876101E008F0C3FFBAF1100F09D200 -:10AF500049F00300706009EB0600416841F001010F -:10AF600041603FE048F0030070604AF00100CBF818 -:10AF700004004AF80BA0D4F808804FEAD805202D29 -:10AF800028BF08F0A5FFB8F1000F27D0D4F814901F -:10AF9000009504EBC50000F128052F46B8F1100F0D -:10AFA00038BF08F095FF2068009920FA01F1C90721 -:10AFB00005D4009A012191400843206006E0A8686A -:10AFC000216988422CBF074608F082FFC5F8089027 -:10AFD000C7F80C90C9F80870C9F80C50C4F808A05C -:10AFE000C4F814B004E008F073FF0020BDE8F28F4D -:10AFF00006F10800BDE8F28F2DE9F04F83B0054659 -:10B00000C046C046DFF8B847F52D80F001810B2D12 -:10B0100031BF102705F10B00C008C7002068FE08EB -:10B02000F04010F0030F42D0C04300F00100861939 -:10B0300004EBC60000F12808F700D8F8085068684B -:10B04000C008C000B84218BF08F042FFD5F8089009 -:10B05000454508BF08F03CFF4D4508BF08F038FFE4 -:10B060006868C008C000B84218BF08F031FFC84582 -:10B0700005D120680121B140884320600DE020699E -:10B08000814508D3D9F80C00A84204D1C8F808902B -:10B09000C9F80C8001E008F01BFF47F0030068606E -:10B0A00078190835416841F001014160F8E0A16874 -:10B0B000B94280F0BF80002800F0A180012505FA88 -:10B0C00006F149004A42B04011430840414208405D -:10B0D000411E080B00F01000C1404A0902F00802AE -:10B0E000D1408B0803F00403D9404E0806F0020655 -:10B0F0001018F1401818C1F340083018404421FAE4 -:10B1000008F101EB000804EBC80000F128094FEA40 -:10B11000C80AD9F808607068C008C000504518BF58 -:10B1200008F0D6FED6F808B04E4508BF08F0D0FEAD -:10B130005E4508BF08F0CCFE7068C008C0005045EE -:10B1400018BF08F0C5FED94505D1206805FA08F1F9 -:10B15000884320600DE02069834508D3DBF80C00AC -:10B16000B04204D1C9F808B0CBF80C9001E008F067 -:10B17000AFFE47F003007060AAEB0708B819019012 -:10B1800048F001014160019848F80080A7684FEA43 -:10B19000D70ABAF1200F28BF08F09AFE47B3CDF8BE -:10B1A00000A004EBCA00D4F8149000F1280AD3469A -:10B1B000102F38BF08F08CFE2068009920FA01F1AA -:10B1C000C90705D4009905FA01F10843206007E09A -:10B1D000DAF80800216988422CBF834608F078FE1F -:10B1E000CAF80890CBF80C90C9F808B0C9F80CA0C0 -:10B1F000C4F8088006F108050198606150E06068B5 -:10B20000C0B339462046FFF7EEFD050012D047E0F7 -:10B2100015F1400F28BF4FF0FF370BD205F10B009F -:10B22000C008C700606828B139462046FFF716FC01 -:10B23000050035D1A168B9421CD3CA1B6069102A28 -:10B240000AD339186161A26042F001034B60525089 -:10B2500047F0030141600AE00022A260626141F010 -:10B260000302426009184A6842F001024A6000F194 -:10B27000080515E0E06887420DD2C01BA169E060B7 -:10B280007A18A26140F00100506001F1080547F012 -:10B290000300486004E039462046FFF71AFA0546E5 -:10B2A000C046C046284603B0BDE8F08F00B97047DD -:10B2B0002DE9F047A0F10804C046C046DFF800556C -:10B2C00028698442C0F07582616801F00302012A96 -:10B2D00000F06F82CA084FEAC20808EB0409CA07E7 -:10B2E00037D4226811F0030F00F0658251420C1927 -:10B2F00090448442C0F05D8269698C4200F0D8803D -:10B30000D608202E70D2D4F80CA0A768544508BFE8 -:10B3100008F0DEFDBC4208BF08F0DAFD6068C00836 -:10B32000C000B0EBC60F18BF08F0D2FD05EBC60099 -:10B3300000F128018F4205D029698F4251D3F96865 -:10B34000A1424ED1BA453DD128680121B140884380 -:10B3500028604C4580F02D82D9F80400C10740F1E7 -:10B360002882810700F17A81A969894540F0B5807A -:10B37000E868AC614044E86040F0010161606969DF -:10B380008C4202D100216961A960E969814280F0A3 -:10B390001282DFF83004006808B9FEF7C8FFA96917 -:10B3A000002900F00882E868292824BF2846FEF713 -:10B3B000B1FFE869E968884280F0FD814FF0FF3015 -:10B3C000E861F8E12830824506D02869824508D333 -:10B3D000DAF80800A04204D1C7F80CA0CAF8087037 -:10B3E000B7E708F075FDB4E7E768A669A7420BD098 -:10B3F000A168814222D3C868A04204BFB868A042B5 -:10B400001CD1CF60B9601BE004F114010F6837B99B -:10B4100004F110010F689FB101E011460F6807F1B8 -:10B4200014021368002B02BF07F110021368002BEF -:10B43000F3D1814202D30020086001E008F048FD0A -:10B44000002E86D0E06905EB800000F59870016859 -:10B450008C4209D10760380011D1E2696868012186 -:10B4600091408843686074E72869864205D3306953 -:10B47000A04214BF7761376101E008F029FD002F79 -:10B480003FF467AF28698742ABD3BE61216929B118 -:10B49000814226BF39618F6108F01AFD606900287A -:10B4A0003FF457AF296988429BD37861876150E7A1 -:10B4B00099F8040000F0030003287FF44AAFC5F8B0 -:10B4C0000880D9F8040040084000C9F8040048F09A -:10B4D0000100606048F804806DE16969894508D120 -:10B4E000A8686C614044A86040F0010161600051AF -:10B4F00061E1C008C0004FEAD00A8044BAF1200FD1 -:10B5000036D2D9F80C70D9F80860B94508BF08F0F0 -:10B51000DFFCB14508BF08F0DBFCD9F80400C00827 -:10B52000C000B0EBCA0F18BF08F0D2FC05EBCA0090 -:10B5300000F128018E4206D029698E42C0F0818038 -:10B54000F16849457DD1B74206D12868012101FA49 -:10B550000AF18843286076E02830874205D02869C0 -:10B5600087426ED3B86848456BD1F760BE606AE029 -:10B57000D9F80C70D9F818604F450DD0D9F80800EB -:10B580002969884223D3C168494504BFB968494540 -:10B590001DD1C760B8601CE009F11400076837B915 -:10B5A00009F110000768A7B101E00846076807F134 -:10B5B00014010A68002A02BF07F110010A68002A74 -:10B5C000F3D12969884202D30021016001E008F02B -:10B5D0007FFC002E37D0D9F81C0005EB800000F569 -:10B5E0009870016889450AD10760380012D1D9F8EE -:10B5F0001C206868012191408843686023E0286925 -:10B60000864205D33069484514BF7761376101E050 -:10B6100008F05EFCBFB12869874212D3BE61D9F839 -:10B62000101029B1814226BF39618F6108F050FCAA -:10B63000D9F8140038B12969884202D3786187614A -:10B6400001E008F045FC48F00100606048F8048023 -:10B65000686984420BD1C5F80880ACE0400840001E -:10B66000C9F8040048F00100606048F804804FEA1F -:10B67000D807202F22D205EBC70000F128094E463B -:10B68000B8F1100F38BF08F023FC286820FA07F142 -:10B69000C90704D40121B9400843286007E0D9F85C -:10B6A0000800296988422CBF064608F011FCC9F839 -:10B6B0000840F460A660C4F80C907CE05FEA1820B3 -:10B6C00008BF002123D0B0F5803F28BF1F211ED224 -:10B6D000A0F58071090C01F008018840A0F58052A6 -:10B6E000120C02F004029040A0F580431B0CC1F143 -:10B6F0000E0103F00203891AC91A984001EBD030F9 -:10B70000C11D28FA01F101F0010101EB4001E161E5 -:10B7100000226261226105EB81006A6822FA01F36E -:10B7200000F59870DB0706D4012303FA01F11143F9 -:10B73000696004601CE01F2900680EBF00214908F1 -:10B74000C1F1190108FA01F100E010464268D2087F -:10B75000D200424510D0CA0F00EB820202F1100362 -:10B7600049001A68002AF0D129698B4211D31C6064 -:10B77000A061E460A4600EE02A698168904228BF5D -:10B78000914206D3CC608460A160E0600020A0619B -:10B7900001E008F09DFB286A401E28620BD1D5F815 -:10B7A000C80100E080680028FCD14FF0FF3028621B -:10B7B00001E008F08DFBC046C046BDE8F087000000 -:10B7C000B895002074BB002070B50D4E0546B068DA -:10B7D00084B00C46029501950390F8F7E4F92868C7 -:10B7E000009000A82860009808B100A94160B068E6 -:10B7F00000A981600474F8F7F0FA04B070BD00BFCE -:10B800003436002030B483680469027DE318C468CC -:10B81000A34228BF1B1B534311F8015B44681D550D -:10B820005B1C521EF8D18168491C8160012904BF4C -:10B8300030BC08F037BB19484078002804BF30BC42 -:10B84000F8F7ABB930BC704710B50446207D2269CB -:10B8500042436368D35C521C401E01F8013BF8D19F -:10B860002069401C2061E168884224BF00202061DB -:10B87000A068421EA260094A8842527807D10AB9DC -:10B88000F8F78BF92046BDE8104008F00BBB002A02 -:10B8900004BFBDE81040F8F780B910BD3436002071 -:10B8A00008B584B00023029311B90093019302E01C -:10B8B0000090481E019004AB00A907487844183056 -:10B8C00008F020FB009909B100220A70002858BF37 -:10B8D000029805B000BD00BFFF81FFFF00F101032A -:10B8E000810704D010F8011B89B18107FAD10268E1 -:10B8F000B2F10131914311F0803F04BF50F8042FA1 -:10B90000F6E710F8011B11B110F8011BFBE7C01A94 -:10B9100070470000506002604160086070470A682C -:10B92000F8E748600160704701684068F9E7F8B5DA -:10B930000600DFF8D05702D505F14800F2BD05F149 -:10B9400048040020296E00E0096805F16002914278 -:10B9500004D00C46A2689642F6D10120002831D1CD -:10B96000A86E076F1820F6F7D9FE0446A660002FD0 -:10B9700005D0B74203D2B6FBF7F0784300E030467B -:10B98000E060002F02D0B74200D23E462661002080 -:10B990002075DFF874673078401C3070F8F703F9D1 -:10B9A0007078401C707005F160012046FFF7B7FF0A -:10B9B0007078401E7070C0B2002801D1F8F7EDF821 -:10B9C000F8F79EF92046F2BD38B5044694F9140004 -:10B9D00000281BD1DFF830572878401C2870F8F772 -:10B9E000E2F86878401C68702046FFF79DFF20460B -:10B9F000F6F7ACFE6878401E6870C0B2002801D12E -:10BA0000F8F7CBF8BDE83140F8F77AB931BDF8B5B1 -:10BA1000044608466FF00045FFF789FF064694F993 -:10BA2000050094F90410814214D1C01C8000F6F77F -:10BA300075FE074694F90500012807DB820021689E -:10BA40003846F6F795FE2068F6F780FE27606079A5 -:10BA5000C01C607194F90400411C2171216841F8F7 -:10BA60002060DFF8A806864202D0307D401C307589 -:10BA7000002008E0216851F820108A68954201DB17 -:10BA80001546A160401C94F904108842F2DBF1BD18 -:10BA9000F8B504466FF00046DFF8682602F1480565 -:10BAA00002F148004FF0FF33002704E0664501DB58 -:10BAB000664675467F1C94F904C067450DDAD4F8D4 -:10BAC00000C05CF827E0DEF808C0002BEED58C45FE -:10BAD000ECD170463B465BB2ECE7002B11D4BCF1D5 -:10BAE000010F0EDB06E0216801EB8306766841F862 -:10BAF00023605B1C94F904104E1EB342F3DB491E15 -:10BB0000217102F14801884204D0017D491E01756E -:10BB1000FFF75AFFA560F1BD10B4C26A836B406C99 -:10BB20009C68002C02D56FF0004300E01B6984681C -:10BB3000002C02D56FF0004000E00069984200DD63 -:10BB40001846D2685143884201DB012000E0002002 -:10BB500010BC704738B5DFF8AC158A6EB2F85C30AF -:10BB6000012490F90850AC402343A2F85C3001F264 -:10BB7000BC71FFF7D4FE012032BD10B5DFF884158B -:10BB8000896EB1F85C20012390F90840A3409A43E4 -:10BB9000A1F85C20FFF7C8FE012010BD012070470E -:10BBA000F8B5044615461E4604F12400FFF72FFFA2 -:10BBB00006EB460004EB8007294607F13000FFF74B -:10BBC00026FF97F9340000903346627A94F9081002 -:10BBD0000FF24450F6F77CFEF1BDF8B50446154669 -:10BBE0001E4604F12400FFF753FF06EB460004EB6A -:10BBF0008007294607F13000FFF74AFF97F9340024 -:10BC000000903346627A94F908100FF21C50F6F750 -:10BC10005FFEF1BDC06A8168012904DB006901286B -:10BC200001DA022070470020704701EB410200EB6F -:10BC30008201896B8A68012A09DB0969012906DA10 -:10BC4000006D002801D500207047022070470020B9 -:10BC50007047002900D5DDE7E7E7012900DA012177 -:10BC600013460A469CE7012900DA012113460A46D9 -:10BC7000B3E7B1F57A7F01DC4FF47A7113460A46D7 -:10BC80004FF4FA718CE7B1F57A7F01DC4FF47A71E9 -:10BC900013460A464FF4FA719FE710B5044600298F -:10BCA00022D5E06A816801291CDB0069012819DAC4 -:10BCB00002212046FFF730FF002813D194F95400E9 -:10BCC00010F1010F04D1002084F85400012010BDB0 -:10BCD000002807D1012060774FF0FF3084F854002E -:10BCE000022010BD002010BDBDE810409DE7DFF828 -:10BCF000202402654FF0FF3280F854202AE7C9293A -:10BD000000DAC82113460A46422149E7C92900DA68 -:10BD1000C82113460A4642215FE710B504460029B0 -:10BD200027D5E06A8168012921DB006901281EDA34 -:10BD300003212046FFF7F0FE002818D194F95400A3 -:10BD4000014611F1010F04D1002084F854000120B4 -:10BD500010BD002803D1012084F8540010BD012932 -:10BD600005D14FF0FF3084F85400022010BD0020B0 -:10BD700010BDBDE8104058E76FF0C70202654FF0F4 -:10BD8000FF3280F85420E5E6DFF888230265E1E61B -:10BD900013464FF0FF32114602E713464FF0FF32D1 -:10BDA00011461AE780B5FFF7D5FEF6F716FD00211C -:10BDB0000175012002BD80B5FFF7DFFEF6F70DFD2E -:10BDC00000210175012002BDCE48C06A417A481E9B -:10BDD0008041C00F704780B5CA480068417A002989 -:10BDE00002D1006E40688047012002BD80B5FFF798 -:10BDF000C4FEC4480068417A002902D1006E806800 -:10BE00008047012002BD00002DE9F0410C46BD4DE8 -:10BE100055F82060307206F154070FF21C31396179 -:10BE2000112800F20B81DFE810F0120022002E0032 -:10BE300046003A005200610070009D007F008E00B5 -:10BE4000AC00BB00C800D500E200F000FD0006F128 -:10BE50000800062141760A21817605F2C47141600D -:10BE600040F2DC5181600FF294303861E6E006F177 -:10BE70000800062141760A21817605F6A05141602D -:10BE800064218160DAE006F108000C21417610217E -:10BE9000817605F61061416010218160CEE006F1E7 -:10BEA0000800072141760B21817605F60461416087 -:10BEB0000B218160C2E006F10800062141760A21CB -:10BEC000817605F6206141600A218160B6E006F1C5 -:10BED0000800062141760A21817605F62C61416031 -:10BEE0000A2181600FF288203861A7E006F108007E -:10BEF000142141761821817605F6386141601821B8 -:10BF000081600FF2DC20386198E006F10800022120 -:10BF100041760621817605F66C61416006218160DB -:10BF20000FF28420386189E006F108000A21417689 -:10BF30000E21817605F65C6141600E2181600FF271 -:10BF40004C2038617AE006F1080001214176052194 -:10BF5000817605F674614160052181600FF26420ED -:10BF600038616BE006F108000521417609218176F0 -:10BF700005F650614160092181600FF2D8103861E7 -:10BF80005CE006F10800062141760A21817605F67B -:10BF90007C6141600A2181600FF27C2038614DE0B4 -:10BFA00006F10800012141760521817605F68861B8 -:10BFB000416040F28661816040E006F108000121A5 -:10BFC00041760521817605F5A851103141600521A2 -:10BFD000816033E006F108000C2141761021817662 -:10BFE00005F5A851183141601021816026E006F165 -:10BFF0000800112141761521817605F5A8512831D7 -:10C00000416041F66631816018E006F108001121B7 -:10C0100041761521817605F5405190314160152119 -:10C0200081600BE006F10800042141760821817649 -:10C0300005F54051A83141600821816006F10800F2 -:10C0400000210175417581750176C1600161417002 -:10C0500006F128080846C8F828004FF0FF3086F897 -:10C0600054007880062206F15800F7F7B3FD00204F -:10C0700010E000EB400106EB8101002281F8342042 -:10C0800034314A7005F148024A6006EB8001002213 -:10C090008A64401C0228ECDB002086F8280088F81F -:10C0A000010005F14800C8F80400FC60BDE8F0811B -:10C0B00010B5144CF5F750FDA066002006E068218D -:10C0C00011FB00416C3144F82010401C1228F6DBB3 -:10C0D0004FF0FF30206560650020A06509F0B0FFDB -:10C0E0000AF08EFD0BF0A4F9F9F794FD0BF028FB94 -:10C0F000FAF766F8FAF74AFA0BF086FCBDE810404A -:10C10000FBF7E5BD00000020343600204800002089 -:10C11000A8FDFFFFD4FEFFFF4144202564202564D5 -:10C120002025642025640000524D202564202564CC -:10C1300020256420256400009DBB000855BB000835 -:10C140009DBB00087BBB00085BBC000867BC000807 -:10C1500053BC00089DBB0008EFBC00089DBB000855 -:10C160007BBB000873BC000887BC00089BBC0008B0 -:10C170009DBB000879BD00089DBB00087BBB000883 -:10C18000FFBC00080DBD00081BBD00089DBB0008DA -:10C1900089BD00089DBB00087BBB00085BBC000894 -:10C1A00067BC000853BC00089DBB0008A5BD000883 -:10C1B0009DBB0008B7BD000891BD00089BBD0008ED -:10C1C00053BC00089DBB000855BB00089DBB000880 -:10C1D0007BBB00085BBC000867BC000853BC0008C0 -:10C1E0009DBB000855BB00089DBB00087BBB000839 -:10C1F00091BD00089BBD000853BC0008C9BD0008E4 -:10C2000055BB0008C9BD00087BBB00085BBC00082B -:10C2100067BC000853BC0008D7BD000855BB000828 -:10C220009DBB0008EDBD000891BD00089BBD000846 -:10C2300053BC0008010040F10980F446404200F080 -:10C2400005F851F000416047010000BF09D0B0FA85 -:10C2500080F18840C91CC1F58461090501EBD0213A -:10C2600040057047F0B540F2FF7581EA030C0CF011 -:10C27000004C15EA11541DBF15EA1357AC42AF42EA -:10C28000E5E0BC41C1F31301C3F31303801A9941E4 -:10C2900043F4801304D2641E400049418018594180 -:10C2A000C90241EA5051B1FBF3F603FB1611A2FBA0 -:10C2B0000675D7EBC020A94102D2761E80185941DD -:10C2C000C90241EA5051B1FBF3FE03FB1E11A2FB70 -:10C2D0000E75D7EBC020A94103D2AEF1010E801834 -:10C2E0005941890241EA9051760546EA8E2EB1FB0A -:10C2F000F3F603FB1611A2FB0675D7EB8020A941CC -:10C3000002D2761E80185941C90241EA50514EEAC4 -:10C31000060EB1FBF3F603FB1611A2FB0675D7EB75 -:10C32000C020A94102D2761E80185941C90241EAB3 -:10C330005051B1FBF3F703FB1711A2FB0735D3EB09 -:10C34000C020A94167F100070CBF004247F0010778 -:10C3500066F3D5274FEA1E31B80814F5806412DD64 -:10C36000BD0775F1004250EB0E5051EB045111F531 -:10C37000801F5CBF41EA0C01F0BD4CF07F6141F0D1 -:10C38000E0410020F0BDBD076D0840EA0E5041F4C9 -:10C390008011D4F10104B4F120060ADAC4F12006B8 -:10C3A0000200E04001FA06F3E1401843B2401543B1 -:10C3B0000EE0342C13DCC6F1200445EA40056D087C -:10C3C00020FA06F2154321FA06F0A1400D430021A0 -:10C3D00075F1004250F1000051EB0C01F0BD00205E -:10C3E0005FEA0C01F0BDCFB992185B41B3FA83F755 -:10C3F00004BFB2FA82F6BF190B3FB7F120062FBF78 -:10C4000002FA06F3BB40C7F1200622FA06F638BF4F -:10C410003343BA401CB1E419641E33E77F4231F064 -:10C420000041B1FA81F404BFB0FA80F6A4190B3CC4 -:10C43000B4F120062FBF00FA06F1A140C4F1200696 -:10C4400020FA06F638BF3143A0403C1B1AE7AC4245 -:10C450001ABF05EA1357AF4212E050EA41061CBF6B -:10C4600052EA4306BFE750EA4107304661461CBF27 -:10C4700041EA0551F0BD52EA430C08BFC143F0BD8B -:10C4800000204FF4001616EB410F98BF16EB430F38 -:10C4900008BF16EB410F24BFC14305E016EB430F65 -:10C4A0000CBF61464CEA0551F0BD000000B500BF6D -:10C4B000130096469446103928BFA0E80C50FAD8CD -:10C4C0005FEA417C28BF0CC048BF40F8042BC90775 -:10C4D00028BF20F8022B48BF00F8012B00BD000048 -:10C4E00000BF10B44348002101800846424C0DE0D3 -:10C4F00001EB810100EB80031B19C91800230B71AC -:10C50000521C52B211460129F2DB401C142801DAF8 -:10C510000022F6E710BC704700EB80003649405E11 -:10C52000704700EB800034494018B0F902007047B2 -:10C5300010B54FF0FF3401460C2903D01C2903D15C -:10C54000002405E0012403E00FF2B400F6F7C0F97F -:10C55000204610BD38B504460125FFF7E9FF204607 -:10C560000C2804D01C2805D100F03DF808E0FFF7A6 -:10C57000B8FF05E021460FF29800F6F7A9F900256B -:10C58000284632BD10B54FF0FF34082801D10024F1 -:10C5900004E001460FF28800F6F79AF9204610BD34 -:10C5A000F3B581B0134C25882E46701C152801DB8D -:10C5B0000020FEBD00270DE007EB870106EB86009B -:10C5C0000D4A8018081801AA89180522FAF74AFCB2 -:10C5D0007F1C7FB2012FEFDB681C20800120FEBD95 -:10C5E00004480088704705480021418001210170FE -:10C5F000084670475ABE0020549F0020DC340020BB -:10C600004558205044524D4D2043312025640000B0 -:10C610004558205044524D4D20433320256400009E -:10C620004558205044524D4D20433220256400008F -:10C63000D2B2203A22BF00FA02F1002070475242E3 -:10C64000D041D2F1200291404140D0409040414041 -:10C65000704700000FB480B50BF0FAF9D4480521FB -:10C6600041700021017001714171D24802A9242258 -:10C67000FAF708FC092200210846F5F76DFE0228AA -:10C6800001D1022000E0012002BC5DF814FB48E16A -:10C6900010B5C74C94F9010005280AD100F0E3F861 -:10C6A000002822D0042060700BF0D2F9BDE81040C1 -:10C6B000F8E0042819D100F0B7F8002808D00320CA -:10C6C0002070052060700BF0C3F9BDE8104028E130 -:10C6D00000F051F9002808D0022020700520607079 -:10C6E0000BF0B6F9BDE810401BE1012010BD80B58C -:10C6F000F5F730FEAE498860AF49C0F8781100F513 -:10C70000BC70AE494160AE4981600FF21101C16059 -:10C710000FF295010161012002BD00000020A44933 -:10C720000246CA708A6892F86921002A0FD091F9EE -:10C730000020002A02D00220C870012091F90420B4 -:10C74000012A04D1C87840F00400C8700120704765 -:10C75000974800210170C17001710120704710B528 -:10C760008CB0044600A80CF0E7FF0198A04204D367 -:10C77000001BC0B200EE100A04E08038001BC0B2FB -:10C7800000EE100AB8EE400ADDED070A20EE200A9E -:10C7900010EE100AFAF7B6FE41EC100B0CB010BD0B -:10C7A000834801210171704778B4814A92F90330BE -:10C7B0009C0717D540F20D140D7814FB05050126D2 -:10C7C0002E700D7814FB05056E700D7814FB0505B1 -:10C7D0000926AE700D7814FB05041578E5700C7809 -:10C7E000641C0C705B071DD540F20D140B7814FB14 -:10C7F000030301251D700B7814FB030303255D70F3 -:10C800000B7814FB030309259D700B7814FB0303BD -:10C810000125DD700B7814FB030052780271087853 -:10C82000401C087071BC93E730B58DB000242046E1 -:10C830008DF8000001A8F5F7EEFD4FF47A705D4D1C -:10C8400000ABE98800FB01F2A98841436D88684389 -:10C8500001AD95EC030A0BF03DF9022800D101244B -:10C8600020460DB030BD30B58DB0002420468DF887 -:10C87000000001A8F5F7CFFD4FF47A704D4D00ABE5 -:10C88000E98800FB01F2A98841436D88684301AD46 -:10C8900095EC030A0BF01EF9012800D10124204673 -:10C8A0000DB030BD30B59FB001240020ADF82A0096 -:10C8B00001900A208DF8080000208DF809008DF8FD -:10C8C0000A003B4D95F90500002827D1B4208DF8CA -:10C8D0002E0046208DF82F0020468DF830000020D5 -:10C8E0008DF80000032001900DF109000BA9212211 -:10C8F000FAF7B8FA0A208DF808000020ADF82A00EF -:10C9000000A8F5F7EBFD002801D1022406E014A8E9 -:10C910000CF012FF1598A8702046687120461FB0D1 -:10C9200030BD30B58BB00124214D95F905000128AB -:10C930001ED10020ADF82A0001900A208DF80800D1 -:10C9400000208DF809008DF80A0020468DF80000BF -:10C95000032001900A208DF808000020ADF82A007D -:10C9600000A8F5F7BBFD002800D103240020687162 -:10C9700020460BB030BD10B52DED028B00240C48C5 -:10C980008078FFF7ECFEB0EE408AF0EE608A09484E -:10C99000007AFFF759FC02460B4651EC180B03F0E6 -:10C9A00009FF00D801242046BDEC028B10BD000019 -:10C9B0002C37002020BA002055C600088FC600087A -:10C9C00091C6000870B5FDF7E9F80446FCF712FDC2 -:10C9D0000546CB4EFDF7C2F8002805D00FF29C307B -:10C9E000F5F776FF012018E096F90000A04205D285 -:10C9F0000FF2A030F5F76CFF01200EE0EDB2002D34 -:10CA00000AD0FDF7D6F8FDF7C9F804460FF29830C2 -:10CA1000F5F75EFF012000E00020716891F88914AD -:10CA2000002900D10020347070BD0FB400B58BB068 -:10CA3000B348002101700FF28030F5F749FF002064 -:10CA40008DF800001B2001900DF109000CA9212296 -:10CA5000FAF708FA0A208DF8080000A8F5F73EFD5D -:10CA6000002805D10FF26030F5F732FF022028E0F0 -:10CA700002208DF832004FF49660ADF835000020AA -:10CA80008DF833008DF834008DF800001A200190E5 -:10CA90000DF109000CA92122FAF7E4F90A208DF81A -:10CAA000080000A8F5F71AFD002805D10FF22C3078 -:10CAB000F5F70EFF022004E04FF49660FDF777F8DB -:10CAC00001200BB05DF814FB00B58BB00FF22030E5 -:10CAD000F5F7FEFE01208DF800001B2001900A20D2 -:10CAE0008DF8080000A8F5F7F9FC002801D1032013 -:10CAF00014E001208DF800001A2001900A208DF822 -:10CB0000080002208DF80B000020039000A8F5F724 -:10CB1000E5FC002801D1032000E001200BB000BD9E -:10CB20002DE9F84F2DED028B94B004460D46FDF72C -:10CB300015F840F20D16297816FB014101220A7002 -:10CB4000297816FB0141002840F0A080104648706B -:10CB5000287816FB00401D218170287816FB0040C4 -:10CB600000214171FDF71AF8C0B20090287816FB39 -:10CB700000400099C1714FF0000871E0414602A8E1 -:10CB8000FDF710F80DF13100877890F801A09DF8BD -:10CB900031B04FF46160CAEB0A11890010FB0B1031 -:10CBA00038184FF47A71BDF9342001FB0029494649 -:10CBB0000FF24820F5F78CFE3B46524659460FF2DD -:10CBC0004820F5F785FE192010FB08F7287816FB9A -:10CBD00000403818C0F81B909FED478B287816FB53 -:10CBE000004007EB0009DDE9022351EC180BFAF7CE -:10CBF000B1FC03F0DDFBC9F80B00287816FB004000 -:10CC000007EB0009DDE9042351EC180BFAF7A2FC4D -:10CC100003F0CEFBC9F80F00287816FB004007EBA5 -:10CC2000000904A8D0E9022300203A49FAF792FC4F -:10CC300003F0BEFBC9F81300287816FB0040381833 -:10CC40000DA9898AA0F81F10287816FB0040381813 -:10CC50000DA9098BA0F8191008F101085FFA88F8EE -:10CC6000009880458ADBFCF79BFF287816FB00477D -:10CC7000FCF7E1FBA7F80701287816FB0044FCF756 -:10CC8000CAFBC4F80901FCF7C1FB12E0052048709B -:10CC9000287816FB00401D218170287816FB004083 -:10CCA00011464171287816FB00401E218171FCF766 -:10CCB0007CFF2878401C287014B0BDEC028BBDE8C6 -:10CCC000F18F0120704780B50FF24C10F5F700FE90 -:10CCD000F5F740FB0A4948600A49C0F8981400F289 -:10CCE000984009494160094981600949C1600A4980 -:10CCF0000161012002BD00000000000080842E417F -:10CD0000C0BD00202BCA0008C9CA0008C3CC000857 -:10CD1000C5C9000800408F4021CB000810B504466B -:10CD200021460FF20010F5F7D3FD2046BDE8104074 -:10CD3000FCF70CBF10B5044621460FF2FC00F5F7D6 -:10CD4000C7FD2046BDE81040FCF702BF10B5044601 -:10CD500021460FF2F800F5F7BBFD2046BDE8104074 -:10CD6000FCF7FABE10B5044621460FF2F400F5F7C1 -:10CD7000AFFD2046BDE81040FCF7ECBE50443A2021 -:10CD8000436D6452656164795F4C54535F52455101 -:10CD9000504F530050443A20436D645265616479AA -:10CDA0005F4C545300000000504420436D645265B2 -:10CDB0006164795F4154440050443A205374617275 -:10CDC00074204C545300000050443A4C54532D539B -:10CDD00053204F70656E206661696C0050443A4C78 -:10CDE00054532D4154204F70656E206661696C006C -:10CDF00050443A4C54532053544F500050443A41FD -:10CE0000504D20256400000050443A41504D2025EB -:10CE1000642025642025640050443A20496E694C02 -:10CE20005453000050443A204C54532053657457D7 -:10CE3000542025640000000050443A204C545320F4 -:10CE400053657453542025640000000050443A2078 -:10CE50004C54532053657453415220256400000004 -:10CE600050443A204C545320536574535220256447 -:10CE70000000000062F30F2262F31F42401810F01E -:10CE8000030308D0C91A1FD3DB0748BF00F8012DE0 -:10CE900028BF20F8022D130030B41446154610396F -:10CEA00028BF20E93C00FAD8490728BF20E90C0038 -:10CEB00048BF40F8042D890028BF20F8022D48BF44 -:10CEC00000F8012D30BC7047C91818BF00F8012DBB -:10CED000CB0728BF00F8012D7047000010B5EFF315 -:10CEE000108072B60A4C216841F47F01216080F302 -:10CEF0001088A06E10F4700F04BFA7200CF074FC13 -:10CF00004FF00070C4F81C020020C4F8140210BDD9 -:10CF100020ED00E0DFF8781100220A700A70012885 -:10CF200002D0042803D07047012008707047052004 -:10CF30000870704710B457494A6802F00C02082A7A -:10CF400013D10A680B6803F03F03544CB4FBF3F3AE -:10CF50000A68C2F388125A430B68C3F301435B1C8F -:10CF60005B00B2FBF3F2026001E04C4A02604A68E7 -:10CF700002F0F0034A4A1B099B5C046824FA03F39D -:10CF800043604C6804F4E054A40AA45CE34083606A -:10CF9000496801F46041490B895C426822FA01F159 -:10CFA000C16010BC70473C4900F44072B2F5407F4C -:10CFB00006D10A6822F4F8123A4B03401A430A6079 -:10CFC0008A6E000552EA105088667047364908603C -:10CFD0007047364908607047354A0029116802D009 -:10CFE00008431060704721EA000010607047314A22 -:10CFF0000029116802D008431060704721EA000040 -:10D00000106070472C4A0029116802D00843106054 -:10D01000704721EA000010607047284A0029116813 -:10D0200002D008431060704721EA0000106070478A -:10D03000234A0029116802D008431060704721EA92 -:10D040000000106070471F4A0029116802D0084391 -:10D050001060704721EA00001060704741090B4AD8 -:10D06000012901D1116804E0022901D1116F00E00A -:10D07000516F00F01F0021FA00F000F0010070472E -:10D080001148016841F0807101607047003802402A -:10D090007038024004380240083802400024F4008E -:10D0A000F0360020FFFCFF0F3C0E4742400E474287 -:10D0B00030380240403802404438024010380240C4 -:10D0C00020380240243802407438024080B5274995 -:10D0D000884209D101210846FFF79FFF0021012066 -:10D0E000BDE80440FFF799BF2149884209D10121D9 -:10D0F0000220FFF792FF00210220BDE80440FFF765 -:10D100008CBF1C49884209D101210420FFF785FF0B -:10D1100000210420BDE80440FFF77FBF1649884284 -:10D1200009D101210820FFF778FF00210820BDE880 -:10D130000440FFF772BF1149884209D10121102034 -:10D14000FFF76BFF00211020BDE80440FFF765BF2B -:10D150000B49884209D101218020FFF75EFF0021A1 -:10D160008020BDE80440FFF758BF01BD0000024029 -:10D170000004024000080240000C0240001002407F -:10D18000001C0240F0B4002232E0012393400C68FE -:10D190001C409C422BD154000325A540ED4306685A -:10D1A0002E40066006680F79A7403E4306600E7960 -:10D1B000012E01D0022E11D186682E40866086682D -:10D1C0004F79A7403E438660466826EA03034360E2 -:10D1D00043688E799640B6B233434360C3682B40B0 -:10D1E000C360C368CD7905FA04F42343C360521CBD -:10D1F000102ACAD3F0BC70474FF6FF7101600021BE -:10D20000017141718171C17170470022006908424A -:10D2100000D0012210467047018370474183704758 -:10D2200010B4CB1000EB830001F007018900036A02 -:10D230000F248C40A3430362036A02FA01F11943ED -:10D24000016210BC7047000080B5434988420BD191 -:10D2500001214FF40010FFF7EBFE00214FF4001006 -:10D26000BDE80440FFF7E4BE3C4988420BD10121F0 -:10D270004FF48000FFF7DCFE00214FF48000BDE892 -:10D280000440FFF7D5BE364988420BD101214FF447 -:10D290000000FFF7CDFE00214FF40000BDE8044080 -:10D2A000FFF7C6BE01BD7FB504460D46A68800A89F -:10D2B000FFF740FE02992B48B1FBF0F04FF6C07229 -:10D2C00032400243A28022884FF6FE731A40228029 -:10D2D0002A68254B9A420AD25200B1FBF2F10A4663 -:10D2E00092B2042A00DA0421401C208421E0EB8859 -:10D2F0004BF6FF76B34204D102EB4202B1FBF2F1EE -:10D3000006E019235A43B1FBF2F141F4804189B29E -:10D310000A0502D141F0010189B241F4004180B215 -:10D320004FF4967250434FF47A7290FBF2F0401C27 -:10D330002084A183208840F00100208020884FF6BF -:10D34000F5310840A9880843698908432080A889E5 -:10D350002989084320817FBD0054004000580040C7 -:10D36000005C004040420F00A186010000290188B6 -:10D3700003D041F00101018070474FF6FE72114069 -:10D38000018070470029018803D041F48071018039 -:10D3900070474FF6FF6211400180704700290188F5 -:10D3A00003D041F40071018070474FF6FF521140E5 -:10D3B00001807047002A02D041F0010101E001F034 -:10D3C000FE01018270470029018803D041F4806189 -:10D3D000018070474FF6FF321140018070470029ED -:10D3E000018803D041F40041018070474904490C91 -:10D3F0000180704782B002460020034601930093EB -:10D4000000920A0F01920902090A019A002A03D028 -:10D41000009A1432009203E0090C009A183200922C -:10D42000009A12680A4200D0012002B07047000042 -:10D4300080B5254988420BD101214FF48050FFF778 -:10D4400002FE00214FF48050BDE80440FFF7FBBD11 -:10D450001E4988420BD101214FF48040FFF7E8FDBF -:10D4600000214FF48040BDE80440FFF7E1BD1849BA -:10D4700088420BD101214FF40040FFF7D9FD002174 -:10D480004FF40040BDE80440FFF7D2BD01BD028863 -:10D4900002F441520B881A434B881A438B881A4373 -:10D4A000CB881A430B891A434B891A438B891A4339 -:10D4B000CB891A430280828B4FF2FF731A4082831A -:10D4C000098A0182704700000030014000380040A6 -:10D4D000003C00400029018803D041F04001018058 -:10D4E00070474FF6BF72114001807047002A828852 -:10D4F00002D011438180704722EA01018180704788 -:10D5000000220089084200D0012210467047000026 -:10D5100001684908490001600021016041608160A3 -:10D52000C1600161212141616A49884203D16A4891 -:10D530003D21016070476949884204D166484FF433 -:10D540007461016070476649884204D162484FF4B3 -:10D550007411016070476349884204D15E484FF0FE -:10D560007461016070476049884203D15A485F493D -:10D57000416070475E49884203D157485D49416028 -:10D5800070475D49884203D153485C494160704708 -:10D590005B49884204D150484FF03D51416070478B -:10D5A0005849884203D158483D2101607047574986 -:10D5B000884204D154484FF4746101607047544963 -:10D5C000884204D150484FF47411016070475149AA -:10D5D000884204D14C484FF07461016070474E4955 -:10D5E000884203D148484149416070474B498842CD -:10D5F00003D145483F49416070474949884203D1BA -:10D6000041483E49416070474649884203D13E48FF -:10D610004FF03D51416070470268434B1A400B6820 -:10D620001A43CB681A434B691A438B691A43CB6977 -:10D630001A430B6A1A434B6A1A438B6A1A434B6BA1 -:10D640001A438B6B1A4302604269D208CB6A53EAD1 -:10D65000C2020B6B1A4342610A6942604A688260E7 -:10D660008968C16070470029016803D041F0010159 -:10D67000016070474908490001607047002A01D0E5 -:10D6800001617047C1607047006800F00100704799 -:10D6900000221C4B984201D2244800E024488B0011 -:10D6A00001D5406800E0006808402249084200D0E7 -:10D6B000012210467047134A904201D21B4800E0F5 -:10D6C0001B481C4A0A40890001D5C260704782602D -:10D6D000704700001060024008600240286002406D -:10D6E0004060024058600240706002403D000020EF -:10D6F00088600240400F0020A060024000003D20F2 -:10D70000B86002401064024008640240286402408D -:10D7100040640240586402407064024088640240E1 -:10D72000A0640240B86402403F801CF000600240E8 -:10D73000006402407D0F7D0F024908607047024976 -:10D740000860704720000E4224000E4270B5044667 -:10D750000026DFF83854CA20E8615320E86100F061 -:10D7600018F8002811D0286820F0400028602868A8 -:10D77000216808432860A068A860A868616840EA3A -:10D780000140A86000F024F80126FF20E86130463F -:10D7900070BD81B000200090DFF8F40301684906F5 -:10D7A00013D44FF0FF310160016801F04001009A8D -:10D7B000521C0092009AB2F5803F01D00029F3D0AC -:10D7C0000068800900F0010000E0012001B070470E -:10D7D000DFF8BC03016821F080010160704781B06F -:10D7E00000200090DFF8A813CA20886153208861C8 -:10D7F000086820F0A0000860086800F02000009A87 -:10D80000521C0092009AB2F5003F01D00028F3D0DC -:10D810000868400900F00100FF228A6101B07047EA -:10D82000F8B507460E460024DFF85C53002FA868C1 -:10D8300004D140060AD42046F07007E0400603D524 -:10D84000307800F0BEF901E02046F0703078002F0B -:10D8500009D07178090241EA0040B1780843F178B3 -:10D8600040EA01460FE000F0A1F90746707800F0A9 -:10D870009DF9000240EA0747B07800F097F9384375 -:10D88000F17840EA0146CA20686253206862FFF7D7 -:10D8900080FF00280FD0DFF8FC0230402860FFF73F -:10D8A00097FFA868800605D4FFF799FF002802D0EB -:10D8B000012400E00124FF2068622046F2BD10B57B -:10D8C0000C46DFF8C4120968DFF8C82211400A0CC0 -:10D8D00002F03F0323700B0A03F07F03637001F033 -:10D8E0007F01A17002F04001E17000280BD1207887 -:10D8F00000F067F92070607800F063F96070A0783C -:10D9000000F05FF9A07010BDDFF88C12486A09685A -:10D91000704770B506460D460024002E06D1687883 -:10D92000C10603D500F0EF000A306870002E05D064 -:10D93000687800F046F9A87800F043F9E878002EFE -:10D9400009D06978090241EA0040A978084329789A -:10D9500040EA41360FE000F029F90646687800F009 -:10D9600025F9000240EA0646A87800F01FF9304386 -:10D97000297840EA4136DFF82052CA202862532035 -:10D980002862FFF706FF00280FD0DFF810023040B2 -:10D990002860FFF71DFF6868800605D4FFF71FFFAA -:10D9A000002802D0012400E00124FF202862204644 -:10D9B00070BD10B50C46DFF8E0110968DFF8DC2116 -:10D9C00011400A0CE2700A0A02F01F02627001F0B4 -:10D9D0003F02A270490B01F00701217000280BD112 -:10D9E000E07800F0EEF8E070607800F0EAF860703F -:10D9F000A07800F0E6F8A07010BDDFF89011CA2200 -:10DA0000CA615322CA610A68D208D2000A600A6851 -:10DA100010430860FF20C8617047DFF88411CA22F4 -:10DA20000A6153220A610860FF200861704781B0D3 -:10DA300000210091DFF85411CA22CA615322CA6141 -:10DA40000028086804D040F480600860012012E0DB -:10DA500020F480600860486800F00400009A521CBE -:10DA60000092009AB2F5803F01D00028F3D04868B8 -:10DA7000800800F00100FF22CA6101B0704781B048 -:10DA800000220092474A0092009A02EB8000009028 -:10DA90000098016001B0704781B0002100914149B8 -:10DAA0000091009901EB800000900098006801B09F -:10DAB000704738B500242246344DCA23EB61532306 -:10DAC000EB616B681B0701D406E0521C6B681B07F7 -:10DAD00002D5B2F5805FF8D16A68120709D42A68C6 -:10DAE000D20606D408436862FFF779FE002800D00A -:10DAF0000124FF20E861204632BD244ACA23D361B5 -:10DB00005323D36100F0040320F0040000291168BE -:10DB100005D008431060906B1843906305E021EA3C -:10DB200000001060906B98439063FF20D0617047B5 -:10DB30000021174A12681C4B1A40024200D00121F2 -:10DB40000846704710B40021104A936B03F0040399 -:10DB50001468044003EAD0332343526802EA1010E9 -:10DB600002D0000400D00121084610BC70470849CB -:10DB70000003000C40F080000A6802F0800262EAB4 -:10DB8000000008607047000000280040082800409E -:10DB90000C2800407F7F7F00042800403FFFFF00EB -:10DBA00014280040502800407F3F0100002101E080 -:10DBB000491C0A38C0B20A28FADA40EA0110C0B299 -:10DBC0007047010901EB810200F00F0000EB4200F9 -:10DBD000C0B2704730B40168CB4321498279002A32 -:10DBE00027D00A4614682340136053680468A3438F -:10DBF00053600379CC18236805682B43236093682E -:10DC00000468A3439360D3680468A343D360437953 -:10DC10000568102B07D1916829439160D16800688D -:10DC20000843D0600AE051FA83F42068284320605A -:10DC300004E000790C1820681840206030BC704760 -:10DC40000021074A136803405269024202D0002BA8 -:10DC500000D0012108467047024908607047000063 -:10DC6000003C0140143C014019490843194908602F -:10DC7000704770B403781A460121C478002C1DD077 -:10DC8000144B1B6803F4E063C3F5E0631B0A44789C -:10DC9000C3F10405AC4085780F2646FA03F32B4008 -:10DCA00023431B010C4C1355007842110B4B00F021 -:10DCB0001F0001FA00F043F8220006E05011084A64 -:10DCC00003F01F03994042F8201070BC7047000019 -:10DCD0000000FA050CED00E000E400E000E100E0E7 -:10DCE00080E100E030B401F00302920021F0030172 -:10DCF000054BCC580F259540AC43CC50CC589040A8 -:10DD00002043C85030BC70470838014080B501211D -:10DD10004FF48070FFF797F900214FF48070BDE851 -:10DD20000440FFF790B942684C4B1A400B7942EA25 -:10DD300003220B681A4342608268494B1A400B6900 -:10DD40001A43CB681A438B681A434B7942EA430261 -:10DD50008260C26A22F47002097D491EC9B242EA99 -:10DD60000151C16270470021016001714171816000 -:10DD7000C16001610121017570473A490A683A4B57 -:10DD80001A4003681A4343681A4383681A43C068F9 -:10DD90001043086070470021016041608160C160EC -:10DDA00070470029816803D041F00101816070470C -:10DDB000490849008160704770B407240A290BDBC9 -:10DDC000C568A1F10A0606EB4606B44025EA04043C -:10DDD000B3402343C36008E0056901EB4106B4404A -:10DDE00025EA0404B3402343036113461F24072B91 -:10DDF00009DA436B521E02EB82029440A343914026 -:10DE00001943416314E00D2B09DA036BD21F02EBB7 -:10DE100082029440A34391401943016308E0C36A1E -:10DE20000D3A02EB82029440A34391401943C16230 -:10DE300070BC7047816841F0804181607047002963 -:10DE4000816803D041F480618160704721F4806172 -:10DE500081607047C06C80B270470000FFFEFFFC1D -:10DE6000FDF7FFC004230140E030FCFF0022006802 -:10DE7000084200D0012210467047000013F0004C09 -:10DE800003D55B42524263F100039CEA210C00F08F -:10DE9000178010B5644603D34942404261F1000146 -:10DEA00000F00EF8640004D34942404261F10001E1 -:10DEB000244203D55B42524263F1000310BD0000CF -:10DEC0001B4213D1094236D12AB18446B0FBF2F08D -:10DED00002FB10C270470BF099BCFCD30022002358 -:10DEE00070470B000200002100207047904271EB48 -:10DEF000030CF6D370B5B1FA81F4B3FA83F52C1B99 -:10DF0000A340C4F1200532FA05F63343A2405FF086 -:10DF10000046E64002E05B085FEA3202841A71EBD9 -:10DF2000030524BF204629467641F4D302000B00A6 -:10DF30003000002170BD012ACFD970B5140C20D05B -:10DF4000B1FA81F4B2FA82F5C4F120046419B4F193 -:10DF50002006D6D3B2405FF00044F440002502E032 -:10DF600052085FEA3303C61A71EB020E24BF304633 -:10DF7000714664416D41F3D302000B00200029007B -:10DF800070BD0C46B1FBF2F102FB11452D0445EAD0 -:10DF90001045B5FBF2F402FB145580B240EA05458A -:10DFA000B5FBF2F002FB105240EA044070BD0000E5 -:10DFB00000214FF0804200E092089042FCD3002AFA -:10DFC00009D05318984203D3401A801A01EB42013A -:10DFD00049089208F3E708467047002802D400F089 -:10DFE0007F0002E0404240F08000C0B2704700F085 -:10DFF0007F01802800DB49420846704730B4044660 -:10E000000D46A54200DA2C461546A54200DA2C46FC -:10E01000A34200DA1C46204630BC704730B40446A8 -:10E020000D46AC4200DA2C461546AC4200DA2C46CE -:10E030009C4200DA1C46204630BC7047184900223A -:10E040004A608A600861C860704770B50546144C24 -:10E05000A0682169626823689A4214DB91FBF3F699 -:10E06000266190FBF3F0FFF7A3FFA060072804DB15 -:10E070002846FFF7E3FF002070BDE6602561002120 -:10E080006160A16070BD521C626069182161E16825 -:10E09000491B01FB0100A060002070BD00000000D2 -:10E0A000743600200EB4F0B50999059A4A430092DF -:10E0B000069A4A430192089A4A4303921A465143E8 -:10E0C000029100A91022F8F7DDFE04B05DF810FB04 -:10E0D00010B40C181C19101910BC70470A7822EAE9 -:10E0E0000000087070470A7810430870704730B518 -:10E0F00083B004460D460020ADF8060001200090D4 -:10E1000001AB224672210720F4F779FC002801D1E7 -:10E1100000203EBD01A92846FFF7E5FF8DF8064027 -:10E120009DF804008DF8070002230DF1060272210C -:10E130000720F4F722FC002801D100203EBD012079 -:10E140003EBD30B583B004460D460020ADF8060054 -:10E150000120009001AB224672210720F4F74FFC0A -:10E16000002801D100203EBD01A92846FFF7B6FFD7 -:10E170008DF806409DF804008DF8070002230DF18C -:10E18000060272210720F4F7F8FB002801D10020D5 -:10E190003EBD01203EBD0000DFF8EC04002101700F -:10E1A000C17008214170817000F017BBDFF8D804FE -:10E1B0000078032801D10120704700207047DFF864 -:10E1C000C8040078042801D101207047002070475E -:10E1D00038B50546F4F701FBDFF8AC442078002899 -:10E1E0000ED10F219F20FFF7ACFF06219F20FFF7E4 -:10E1F0007EFF012020700020E0700120207231BDE0 -:10E20000012831D1207A002833D1E07802280AD0C1 -:10E2100061784908A94206D30120E07000F0B6F801 -:10E2200000280CD031BD012809D0A0784008A842B0 -:10E2300005D20220E07000F0CCF8002846D1E0784A -:10E24000012802D10020E07031BD022020700020A2 -:10E25000E0700F219F20FFF774FF09219F20FFF737 -:10E2600046FF0120207231BD02282FD1207A0028DC -:10E2700002D00020207231BDE078022809D06078F9 -:10E280004008A84205D30120E07000F0C4F800283F -:10E290001CD1E078012809D0A0784008A84205D216 -:10E2A0000220E07000F0DAF800280FD1E0780128B1 -:10E2B00002D10020E07031BD0F219F20FFF741FF08 -:10E2C000032020700020E0700120207231BD38B59D -:10E2D0000020ADF80000DFF8B4432078FFF787FE98 -:10E2E0009D218DF8001000ADFFF777FE68700223C6 -:10E2F00000AA72210720F4F740FB00280ED06078B6 -:10E30000FFF775FE9E218DF80010FFF766FE68701E -:10E31000022300AA72210720F4F72FFB31BD3FB57D -:10E3200081B0D94C207803282ED101A80FC8FFF75F -:10E3300065FE054601A80FC8FFF770FEE1780229C7 -:10E340000BD06278AA4208DB0120E07001A80FC858 -:10E3500000F0A6F800280DD016E001290AD0A17817 -:10E36000814207DA0220E07001A80FC800F014F91A -:10E37000002809D1E078012802D10020E07003E0F4 -:10E38000042020700020E07005B030BD10B582B0D0 -:10E390000020ADF80000BD4C2078FFF728FE10F1FA -:10E3A0007F0F01D1002016BD9D218DF80010401E69 -:10E3B000FFF713FE8DF801002070022300AA7221DE -:10E3C0000720F4F7DAFA002801D1002016BD012059 -:10E3D00016BD10B582B00020ADF80000AB4C20781F -:10E3E000FFF705FE7F2801D1002016BD9D218DF885 -:10E3F0000010401CFFF7F1FD8DF801002070022392 -:10E4000000AA72210720F4F7B8FA002801D10020F1 -:10E4100016BD012016BD10B582B00020ADF8000079 -:10E420009A4C6078FFF7E3FD10F17F0F01D10020D7 -:10E4300016BD9E218DF80010401EFFF7CEFD8DF811 -:10E4400001006070022300AA72210720F4F795FAF8 -:10E45000002801D1002016BD012016BD10B582B0E4 -:10E460000020ADF80000894C6078FFF7C0FD7F28E0 -:10E4700001D1002016BD9E218DF80010401CFFF731 -:10E48000ACFD8DF801006070022300AA7221072004 -:10E49000F4F773FA002801D1002016BD012016BD43 -:10E4A0003FB581B000252846ADF80000764C0198B4 -:10E4B0006178884217DA2079FFF799FD10F17F0F14 -:10E4C00011D0A4218DF80010401EFFF786FD00A991 -:10E4D00048702071022300AA72210720F4F74DFA38 -:10E4E000002853D0012502986178884217DA6079B4 -:10E4F000FFF77DFD10F17F0F11D0A5218DF80010E1 -:10E50000401EFFF76AFD00A948706071022300AA4F -:10E5100072210720F4F731FA002837D0012503983B -:10E520006178884217DAA079FFF761FD10F17F0F5B -:10E5300011D0A7218DF80010401EFFF74EFD00A955 -:10E540004870A071022300AA72210720F4F715FA7F -:10E5500000281BD0012504986178884219DAE079F7 -:10E56000FFF745FD10F17F0F13D0A9218DF80010A2 -:10E57000401EFFF732FD00A94870E071022300AA97 -:10E5800072210720F4F7F9F9002801D1002001E0F9 -:10E590000125284605B030BD3FB581B0002528468D -:10E5A000ADF80000384CA0780199884216DA20793D -:10E5B000FFF71DFD7F2811D0A4218DF80010401C0D -:10E5C000FFF70BFD00A948702071022300AA7221F9 -:10E5D0000720F4F7D2F9002850D00125A07802993D -:10E5E000884216DA6079FFF702FD7F2811D0A52155 -:10E5F0008DF80010401CFFF7F0FC00A94870607116 -:10E60000022300AA72210720F4F7B7F9002835D0B9 -:10E610000125A0780399884216DAA079FFF7E7FC74 -:10E620007F2811D0A7218DF80010401CFFF7D5FCE2 -:10E6300000A94870A071022300AA72210720F4F7F4 -:10E640009CF900281AD00125A0780499884218DA8C -:10E65000E079FFF7CCFC7F2813D0A9218DF80010BA -:10E66000401CFFF7BAFC00A94870E071022300AA21 -:10E6700072210720F4F781F9002801D1002001E080 -:10E680000125284605B030BD8CBD002095BD002079 -:10E69000DFF8E0060021C161DFF8DC1600220A770E -:10E6A00001224A7700221046086381F82000C877CB -:10E6B00070470FB410B5DFF8BC469DF81D00411E31 -:10E6C0008941C90F6177201D03A91022F8F7DAFBF1 -:10E6D000DFF8A4069DF81E104177002180F8201075 -:10E6E00001779DF80810002907D1217F4A1C227765 -:10E6F00006290EDB012101770BE000202077607FE7 -:10E7000000289DF8080002D100F015F901E000F0A2 -:10E710009DF810BC5DF814FB0FB438B5DFF8544613 -:10E720009DF82400411E8941C90FE177201D05A9EC -:10E730001022F8F7A7FBDFF840569DF8260068770F -:10E7400005A80FC8FFF76AFC60616861002085F8C2 -:10E7500020002877E07F002804D105A80FC800F02A -:10E760008FF909E0A07F002805A80FC802D000F0AB -:10E77000C0F901E000F0E2F931BC5DF814FBF8B536 -:10E780000446DFF8F85505F11C06DFF8E805C17FFF -:10E790004A1E9241D20F7275407F411E8941C90FB6 -:10E7A000B175DFF8D475387F307597F82000287779 -:10E7B000284639461C22F8F765FBB87F707005F1D2 -:10E7C0002000DFF8BC151022F8F75CFB2046294634 -:10E7D0003422BDE8F840F8F755BB10B582B00020F0 -:10E7E000ADF80000A0208DF8000000AC00206070A3 -:10E7F000DFF8900500210170022300AA7221072092 -:10E80000F4F7BBF8002801D1002016BDA1208DF837 -:10E810000000FF206070022300AA72210720F4F795 -:10E82000ACF8002801D1002016BD8021A320FFF7FD -:10E830005EFC3C21A220FFF75AFCDFF838050021DE -:10E840008177DFF834050163012016BD10B5044659 -:10E85000DFF82005807F0028204602D0BDE8104068 -:10E860000BE000F01EF8DFF81005C07F002803D190 -:10E870002046BDE8104038E010BD10B5DFF8F84480 -:10E88000E07F01280CD1201DDFF8FC141022F8F7DE -:10E89000F9FA04202070012084F820000020E0779D -:10E8A00010BD10B5DFF8D044E17F012909D100F097 -:10E8B000C9F8002802D00420E07710BD0020E062F3 -:10E8C00010BD002909D100F0B5F8002802D00220BF -:10E8D000E07710BD0020E06210BDE06A411CE162FB -:10E8E0000B2801DB0020E06210BD10B5044600F0EB -:10E8F00055F8204600F05DF8204600F065F8204607 -:10E9000000F06DF8DFF86C04416A01EB8102D10080 -:10E91000642291FBF2F1826B436B9A4204DAC06A83 -:10E92000052290FBF2F003E0806A142290FBF2F0E3 -:10E93000BDE810408EE038B5044600F014F82046DB -:10E9400000F01AF8DFF82C54686A00EB8001C80068 -:10E95000642190FBF1F104EB8400400000F07AF8B0 -:10E960000120687731BDDFF80C144FF4FA620A62B7 -:10E97000C8224A62FFF762BBDFF8F813C82212FB15 -:10E9800000F28A62322212FB00F2CA6200EB8002BD -:10E9900052000A6348638863C863704710B5014634 -:10E9A000DFF8D04304F130020A2000F025F8E063DC -:10E9B00010BD10B50146DFF8BC4304F12C02322033 -:10E9C00000F01AF8A06310BD10B50146DFF8A443AB -:10E9D00004F12802C82000F00FF8606310BD10B5E4 -:10E9E000FFF733FB642101FB00F4002C02D020462A -:10E9F00000F013F8204610BD10B400EBD0735B108C -:10EA00001468091900FB0131441C91FBF4F11160F9 -:10EA1000591891FBF0F010BC704710B50146012960 -:10EA200000DA0121D34C04F120020A20FFF7E4FFB1 -:10EA3000606210BDD049496A814201DA0120704705 -:10EA400000207047CC49896A884201DA012070476A -:10EA500000207047B0F5207F01DD4FF420700A29B7 -:10EA600001DA0A2102E0652900DB64210818401D53 -:10EA70000A2190FBF1F0C0B2BF494862886270473A -:10EA800080B500F004F8BB480121C17701BD0FB586 -:10EA900087B0C820019007A883B069460CC80CC194 -:10EAA0000CC80CC10EBC02A8FFF7FCFAB74802A9BB -:10EAB0001022F8F7E7F90A20019007A883B0694609 -:10EAC0000CC80CC10CC80CC10EBC02A8FFF7EAFAB6 -:10EAD000AF4802A91022F8F7D5F9AE4807A91022CD -:10EAE000F8F7D0F9AC4807A91022F8F7CBF90BB02A -:10EAF00000BD00BF1FB5A04CE07F002802D0012858 -:10EB00000ED01FBD0020A061201D00A91022F8F723 -:10EB1000B9F902202070012084F82000E0771FBDA1 -:10EB2000201D00A91022F8F7ADF901202070A0697E -:10EB3000401CA061012084F820001FBD1FB58E4C31 -:10EB4000E07F002803D0012084F8200003E000A823 -:10EB50000FC800F037F800A80FC800F00AF8607F6F -:10EB6000002805D0206B662802DBBDE81F40C9E005 -:10EB70001FBD1FB5804CE07F012804D002280DD0B6 -:10EB8000042817D01FBD201D00A91022F8F77AF91C -:10EB900001202070A069401CA0611FBD0020A06161 -:10EBA000201D00A91022F8F76DF902202070012025 -:10EBB000E0771FBD042020700020E077012084F85A -:10EBC00020001FBDFFB585B06B48016B491C016378 -:10EBD00005A883B069460CC80CC10CC80CC10EBC9A -:10EBE00001A800F025F805A883B069460CC80CC13F -:10EBF0000CC80CC10EBC01A800F03BF8664C94E8B0 -:10EC00000F00FFF765FA05465D4E624F97E80F006B -:10EC1000FFF75EFA8542304604DA21461022F8F703 -:10EC200031F903E039461022F8F72CF909B0F0BDAC -:10EC30000EB430B588B00446544802900BA882B098 -:10EC400069460CC80CC10CC80CC10CBCC82103A877 -:10EC500000F030F84F4D284603A91022F8F712F9BA -:10EC6000204629461022F8F70DF908B030BC5DF8AF -:10EC700010FB0EB430B588B00446454802900BA88E -:10EC800082B069460CC80CC10CC80CC10CBC0A216E -:10EC900003A800F00FF8404D284603A91022F8F70A -:10ECA000F1F8204629461022F8F7ECF808B030BCFD -:10ECB0005DF810FB0CB47FB504460D460C9E324641 -:10ECC00008992846FFF798FE0090321D09992846BA -:10ECD000FFF792FE019006F10C020B992846FFF710 -:10ECE0008BFE039006F108020A992846FFF784FE7E -:10ECF0000290204600A91022F8F7C4F804B070BCB6 -:10ED00005DF80CFB38B50020ADF800001A4CA06A85 -:10ED1000A077A0208DF8000000AD606A6870687868 -:10ED200018490870022300AA72210720F3F725FE74 -:10ED3000002801D1002032BDA1208DF80000A07F65 -:10ED40006870022300AA72210720F3F716FE00283C -:10ED500001D1002032BD8021A320FFF7F2F93C2130 -:10ED6000A220FFF7EEF903480121817700202063FC -:10ED7000084632BDA8B70020DCB8002010B900203A -:10ED800044BC00205DBE0020ACB7002004BC0020C5 -:10ED900024BC002014BC002034BC00201822002118 -:10EDA0000248F4F717BF01487047000014BB002069 -:10EDB00010B504464FF499620021F4F70BFF40F2BE -:10EDC0004130208304F1180148808880002084F8B5 -:10EDD000F40204F53D7000218180102101810021A1 -:10EDE00041818181C1810846A4F8360304F236309E -:10EDF00001214180002181804FF0FF31C18000223C -:10EE0000028142818281C2810122028241820022EA -:10EE10008282C28202830122428300228283C283D1 -:10EE2000028441840122428200228282C2820283C1 -:10EE30000122428300228283C2830284012242840F -:10EE400000228284C1841146018501214185114639 -:10EE50008185C185018641860121818610BD002101 -:10EE60000B4618E00A1882F8F53201EB410200EB7C -:10EE70004202D38013815381D3831384538401EBE3 -:10EE8000410200EB8202C2F8AC3302F56B725360B0 -:10EE90009360491C09B20129E4DB704738B5044688 -:10EEA000032200A91046DFF82C389B681B6E1B6AF2 -:10EEB0009847002828D09DF80000A4F8F40004F238 -:10EEC0007E359DF80000A88004F1F40000A94A787E -:10EED00042804A78EA808A7882808878288142F263 -:10EEE000B760A4F87E034FF4A960688010220FF287 -:10EEF000F47104F557700AF08BFC10220FF2F071D8 -:10EF000004F26D300AF084FC31BDF0B583B00446E4 -:10EF10000020C046014604F53D756980062620465E -:10EF200011FB0641891D3246F7F79CFFB5F9020037 -:10EF300010FB0640B0F90600E06004F10C00B5F9E2 -:10EF4000021011FB0641B1F908104160B5F9021039 -:10EF500011FB0641B1F90A108160B5F902000019F0 -:10EF600090F8F50284F8F40204F56870B5F902101F -:10EF700001EB410204EB820101F56B718CC98CC07D -:10EF800004F5936204F5767104F12C000AF0DFFFBA -:10EF900094F8F4020190009401230022114604F534 -:10EFA00080700BF01FFA40F6C412B5F9020010FB96 -:10EFB000064000F11E0104F124000BF077FE002052 -:10EFC000A880A4F85A030120FEBD7CB504460020A9 -:10EFD000C046014604F53D7569800626204611FBB2 -:10EFE0000641891D3246F7F73DFFB5F902000019C9 -:10EFF00090F8F50284F8F40204F5936204F5767152 -:10F0000004F12C000AF0A3FF94F8F402019000949C -:10F0100001230022114604F580700BF0E3F940F65D -:10F02000C412B5F9020010FB064000F11E0104F104 -:10F0300024000BF03BFE0020A4F85A03012076BD0B -:10F04000032201461046DFF88C369B681B6E1B6A54 -:10F05000184780B5FFF7A7FEDFF8581608600FF2D3 -:10F06000B10101600FF2E5014160DFF86C168160CB -:10F070000FF2F501C1600FF20D0101610FF24D01B8 -:10F08000416101BD80B5DFF8300690F8F41280F8D8 -:10F09000F5120188C1804188018181884181818C7C -:10F0A000C183C18C0184018D4184002180F8F61256 -:10F0B000C160018241620185182247F6FF71DFF8C5 -:10F0C0000006F4F787FD002002BD00001CB5DFF844 -:10F0D000E84504F5936204F5767104F12C000AF01A -:10F0E00036FF94F8F40201900094012300221146A7 -:10F0F00004F580700BF076F940F6C41204F11E019D -:10F1000004F124000BF0D2FD2046BDE8164013E2C6 -:10F1100010B5DFF8A4452046FFF74AFE204600F070 -:10F12000FEF9002802D12046FFF799FE2046FFF79E -:10F13000B5FE2046FFF7E9FE182247F6FF71DFF81B -:10F140008005BDE81040F4F745BD000080B5DFF84C -:10F15000680500F0F1F9182247F6FF71DFF8600545 -:10F16000BDE80840F4F736BD33B585B0144602A8B3 -:10F1700000210A4606C000A806C0BDF81400ADF87C -:10F18000080002A8BDF816104180BDF81810818053 -:10F19000FDEEC01A11EE900AADF8000000A8F0EEE6 -:10F1A000601AFDEEE11A11EE901A4180BDEEC10A1F -:10F1B00010EE101A8180DFF8005500AA02A9284637 -:10F1C00000F050F895F9F402207005F53D709FEDC0 -:10F1D000560AB0F9101000EE901AF8EEE00A60EE50 -:10F1E000800AC4ED030AB0F91A1000EE901AF8EE86 -:10F1F000E00A20EE800A84ED020AB0F9200000EE59 -:10F20000100AB8EEC00ADFED490A20EE200A84EDAC -:10F21000010A9FED470AB5F9EE0000EE900AF8EEFC -:10F22000E00A60EE800AC4ED040A05F2EE00B0F9CF -:10F23000021000EE901AF8EEE00A60EE800AC4EDCB -:10F24000050AB0F9040000EE900AF8EEE00A20EE9C -:10F25000800A84ED060A284600F06EF9012007B006 -:10F2600030BD000030B589B00446DFF850040378A3 -:10F27000ADF8043001AB0D785D80B1F90050C5F3F5 -:10F2800007259D808D78ADF80A50B1F90250C5F37D -:10F2900007251D810B79ADF80E30B1F90410C1F3CB -:10F2A0000721ADF810100021ADF812104078ADF82C -:10F2B000140006A9104600F069F99FEDB20A06A8ED -:10F2C000D0ED010A60EE800AFDEEE00A10EE901A21 -:10F2D000A4F8301304F54C71DDED060A9FEDAA1A6F -:10F2E00060EE810AFDEEE00A10EE902A4A80D0ED31 -:10F2F000020A20EE800ABDEEC00A10EE100A8880D5 -:10F300000020C0460821009101230246214601A8A1 -:10F3100000F010F8002804D0012802D12046FFF7A1 -:10F3200054FE012009B030BD0000803C000080BCCC -:10F330008FC2753DF0B593B004460D4616461F4684 -:10F340000020ADF848000E900F90ADF840001190ED -:10F3500042F2B7600DF14A010D910DF146010C9199 -:10F360000EA90B910DF13A010A9112A9099111A967 -:10F3700008910FA9079105F1EC01069105F5687157 -:10F38000059105F59361049105F57671039105F1F9 -:10F390002C01029102210191D5F8D413009105F1BD -:10F3A000F403B5F9FC2221460AF0F6FDD5F8A003D6 -:10F3B000BDF83C100818A5F8FA00D5F8A403BDF86C -:10F3C0003E100818A5F8FC00D5F8A803BDF84010B9 -:10F3D0000818A5F8FE00B5F9F602B04206D0189854 -:10F3E000A5F8F802A5F8F662012096E0BDF93A000A -:10F3F000012801D1022090E0B5F9F802012803DBD1 -:10F40000401EA5F8F8027CE005F12C0105F124006E -:10F410000BF059FCBDF9381001290BD10123002252 -:10F42000294605F580700BF062F9002085F8F4029A -:10F43000042072E001280BD101230022294605F5A2 -:10F4400080700BF054F9002085F8F402202064E06D -:10F45000B5F85A03401EA5F85A0300B2012850DA45 -:10F4600005F53D7005900495012003900020029061 -:10F47000B5F9EC00019005F12C00009005F58073C2 -:10F4800005F27E3205F26D3105F557700AF0C2FFC4 -:10F4900010F5004F01D180203FE001282FDB06242A -:10F4A000B5F9F60210FB0450801D29462246F7F7F5 -:10F4B000D9FCB5F90000E860B5F902002861B5F99A -:10F4C00004006861B5F9F602401995F8F41280F865 -:10F4D000F512B5F9F60210FB04501E3005F12401B7 -:10F4E0002246F7F7BFFCB5F9F60200EB400105EB49 -:10F4F000810000F56B7005F568711CC91CC0A5F88A -:10F500005A7305F1EE00009040F2413305F1180204 -:10F5100029460FA80BF0EEFB002013B0F0BD002130 -:10F5200080F8F512C18000F20600418081800183DD -:10F53000418381830846704770B4B0F9061090F893 -:10F54000F522664B1C78944211D1B3F904408C42E9 -:10F550000DD100F20604B3F90650B4F90260B542C9 -:10F5600005D1B3F90850B4F90440A54207D01A7088 -:10F57000998000F206046088D880A0881881002055 -:10F5800070BC7047000034C40000344470B52DEDE9 -:10F59000068B0C46002109E030F91120B2F5006F0E -:10F5A00003DDA2F5805220F81120491C0329F3DB6A -:10F5B00003210DE00622424B02FB013202EB450320 -:10F5C00033F8063C22F815306D1C032DF2DB491E82 -:10F5D000012901DB0025F8E70021394B04E030F870 -:10F5E000112023F81120491C0329F8DBDFED358AAF -:10F5F0009FED340A9FED338A002047F6FF7517E030 -:10F60000C95E00EE901AF8EEE00A70EEA88AB2F930 -:10F61000021000EE901AF8EEE00A30EE800AB2F91D -:10F62000041000EE901AF8EEE00A30EE888A401CD2 -:10F6300004280EDA062202FB00F1CA18CE5EAE42A2 -:10F64000DED1B2F90260AE42DAD1B2F90460AE4264 -:10F65000D6D100EE900AB8EEE0AA9FED1B9B80EE9B -:10F660000A0A10EE100AF7F74DFF53EC192BF7F7C3 -:10F6700071FFF8F741F8206088EE8A0A10EE100A50 -:10F68000F7F740FF124A164BF7F764FFF8F734F824 -:10F69000606088EE0A0A10EE100AF7F733FF53ECA9 -:10F6A000192BF7F757FFF8F727F8A060BDEC068B8A -:10F6B00070BD00000CBE0020E077002058BE002086 -:10F6C00044BB00200000000051FA42C879FF4F3FC0 -:10F6D00051FA42C80000002041F00008D8BC0020C8 -:10F6E00079FF4FBF41534148494B415345490000C1 -:10F6F00053454330393931314E534653540000009D -:10F700004C48C168002903D54B4901604B49016051 -:10F7100070474B48016841F000410160704770B587 -:10F720000446002600290BD0012902D14FF480762F -:10F7300006E0022902D14FF4007601E04FF4407652 -:10F7400000F082F809281ED13D4D286820F4407051 -:10F750002860286830432860286820F0F800286076 -:10F76000286844F0020108432860286840F480308B -:10F77000286000F069F8296821F0020129602968F1 -:10F7800021F0F801296070BD70B504460D4600F007 -:10F790005BF8092813D12A4E306820F4407030609D -:10F7A000306840F400703060306840F00100306034 -:10F7B000256000F049F8316849084900316070BDA2 -:10F7C00070B505460E4600F03FF8092811D11C4CD3 -:10F7D000206820F44070206020682060206840F09D -:10F7E000010020602E7000F02FF8216849084900C0 -:10F7F000216070BD134908607047092011490A68EB -:10F80000D20301D5012070470A68D20601D506202F -:10F8100070470A68D20501D5022070470A6812F0C5 -:10F82000EF0F01D0072070470968890700D508202D -:10F8300070470000043C024023016745AB89EFCDCF -:10F84000103C02400C3C024080B509208DF80000BD -:10F85000FFF7D3FF8DF8000003E0FFF7CEFF8DF830 -:10F8600000009DF800000128F7D09DF8000002BDBF -:10F8700010B50024F2F7B4FF002800D00124204680 -:10F8800010BD0000DFF8140A417BDFF8142A02EBF8 -:10F89000810282ED000ADFF80C2A02EB8102F0EE11 -:10F8A000601AC2ED001ADFF8002A02EB810282ED35 -:10F8B000001A827B202A01DA521C8273491C417390 -:10F8C000C9B2202901D10021417370472DE9F041CF -:10F8D0002DED028B0025DFF8C449A07B022801DA58 -:10F8E00028467AE02E4601E00025761CA07B864261 -:10F8F0006DDA607B002803D11F274FF01E0805E05A -:10F90000471EB7F1010801D508F12008DFF890097A -:10F9100000EB870191ED000A00EB8800D0ED000AB2 -:10F9200030EE600A10EE100AF7F7ECFD21F000410E -:10F93000F7F7E2FE08EE100ADFF8680900EB87012E -:10F9400091ED000A00EB8800D0ED000A30EE600A6D -:10F9500010EE100AF7F7D6FD21F00041F7F7CCFEC4 -:10F9600008EE900ADFF8400900EB870191ED000AEC -:10F9700000EB8800D0ED000A30EE600A10EE100AAD -:10F98000F7F7C0FD21F00041F7F7B6FE00EE100AD0 -:10F99000DFEDC70AB4EE608AF1EE10FA01DB012058 -:10F9A00000E00020F4EE608AF1EE10FA01DB0121A4 -:10F9B00000E00021B4EE600AF1EE10FA01DB012252 -:10F9C00000E00022084310438ED06D1C8DE7EDB29D -:10F9D000152D01DB012000E00020BDEC028BBDE80D -:10F9E000F08138B52DED028B88B0B0EE618A054606 -:10F9F000DFF8A84884ED000AF0EE601AC4ED011AA1 -:10FA0000B0EE412A84ED022AD4ED102AF4EE402A09 -:10FA1000F1EE10FA1ED1D4ED112AF4EE612AF1EEC6 -:10FA200010FA17D1D4ED122AF4EE422AF1EE10FAB0 -:10FA300010D1606D401C6065152813D3206CF7F75A -:10FA400061FD02460B460FF6C400F2F741FF0020AD -:10FA5000606507E084ED100AC4ED111A84ED122AE6 -:10FA60000020606594EC030AFFF70CFF294689B279 -:10FA7000204601F04DF904F1AC0000F0F6FE207BC9 -:10FA800002283BD1284680B2B0EE480A0BF0B0F90C -:10FA9000294689B2204609F0CBF9DFF85C582846A0 -:10FAA00009F04AFE286801280FD108F03DFB2846DE -:10FAB00009F042FE2C22294604F11400F2F758FE08 -:10FAC0000FF65400F2F704FF24E0294684B068469C -:10FAD0002C22F7F7D7F90FBC00F0F8F800F042FA43 -:10FAE000002817D0E889002814D10FF63800F2F763 -:10FAF000EFFE0120207309F02FFE0BE0012809D151 -:10FB0000FFF7E4FE002805D00FF62000F2F7E0FE34 -:10FB100002202073002008B0BDEC028B32BDDFF85C -:10FB20007C07007B7047002805D0DFF87017096D4F -:10FB30005422F7F7A7B9704710B5002815D1DFF8A0 -:10FB4000744700EE101AB8EE400A84ED010A204610 -:10FB500009F017FE6068F7F7D5FC02460B460FF276 -:10FB6000D470BDE81040F2F7B3BE012815D1DFF81C -:10FB7000444700EE101AB8EE400A84ED000A204611 -:10FB800009F0FFFD2068F7F7BDFC02460B460FF2B7 -:10FB9000B470BDE81040F2F79BBE02280DD1DFF82B -:10FBA00014472181204609F0ECFDB4F908100FF24A -:10FBB000A470BDE81040F2F78BBE10BD2DE9F843EC -:10FBC00006460F469046DFF8E446542200212046C0 -:10FBD000F4F700F8DFF8C4565422002105F158006C -:10FBE000F3F7F8FF54220021DFF8C406F3F7F2FF21 -:10FBF0002C22214605F15800F2F7BAFD05F1580014 -:10FC00002865DFF8B0965422002109F10C00F3F7C3 -:10FC1000E1FF0C2200214846F3F7DCFF2C220021F3 -:10FC2000DFF8D406F3F7D6FF2C22002105F11400EB -:10FC3000F3F7D0FF00EE106AB8EE400A89ED010A32 -:10FC400000EE107AB8EE400A89ED000AA9F80880A3 -:10FC500043463A4631460FF20C70F2F739FE08F08F -:10FC60007FF900F0BFFD484609F08BFD04F1440028 -:10FC700042F21071C180018100216164012028736A -:10FC800008466873A873E8640BF06EF80020E87308 -:10FC9000012028740FF2DC60F2F71AFE00202864BD -:10FCA0006864A86428606860A860BDE8F18300000B -:10FCB0000100803F10B596B009F046FD044600A84B -:10FCC000FFF731FF0098001916B010BD0FB470B5E2 -:10FCD0002DED028B8AB0DFF8C445A069814205D1C1 -:10FCE000BDF84E20638C9A4200F096800D1A02D522 -:10FCF000DFF8000645199DED1A0AD4ED0F0A70EEE3 -:10FD0000608AF5EE408AF1EE10FA03D59FED930A72 -:10FD100078EE808A9DED180AD4ED0D0A30EE608AE7 -:10FD2000B5EE408AF1EE10FA03D59FED8C0A38EE5D -:10FD3000008A9DED190A0BF0D9F9B0EE401A207C2B -:10FD4000012802D0022837D047E0DFF86465089622 -:10FD500010A983B068462C22F7F794F80EBC9FEDEB -:10FD6000801AF0EE480AB0EE680A284600F05AF809 -:10FD7000E07B2818E073C0B203282EDBDFF82C05E7 -:10FD8000089010A983B068462C22F7F77BF80EBCC8 -:10FD90009FED731AD6ED0D0A96ED080A306800F053 -:10FDA00041F8E07B401CE073542200213046F3F719 -:10FDB00011FF0220207410E0DFF8F004089010A971 -:10FDC00083B068462C22F7F75DF80EBCF0EE480AC7 -:10FDD000B0EE680A284600F025F8BDF84E0000286D -:10FDE00009D154220021DFF8C804F3F7F3FE002004 -:10FDF000E073012020742C2210A904F11400F2F702 -:10FE0000B7FCDFF8A8142165542204F15800F2F77A -:10FE1000AFFC04F1580020650AB0BDEC028B70BC49 -:10FE20005DF814FB0EB478B52DED048B8AB0B0EEFE -:10FE3000409AB0EE608AF0EE418A1E9D05F12004E2 -:10FE4000BDF85A6026852946B0EE680A00F0C4F86D -:10FE5000DFF84804C06C00280ED195ED080A30EE9A -:10FE6000090A85ED080A00F007FA85ED080AE6841C -:10FE7000BDF85800A08437E0DFF8380407AA0AC8A4 -:10FE80000AC20368136013A984B068462C22F6F7EF -:10FE9000F9FF0FBCB0EE680A00F03AF9D5ED080A98 -:10FEA00030EE800A85ED080A00F0E6F985ED080AD3 -:10FEB000F5EE408AF1EE10FA0BDD032E03D1062099 -:10FEC000E084A08410E0042E0ED10820E084A084F9 -:10FED0000AE0032E03D10720E084A08404E0042E6E -:10FEE00002D10920E084A0841A98206194ED050ACB -:10FEF00030EE080A84ED050A00F0B2F984ED050A37 -:10FF00001C98F7F7FFFADFF8B023DFF8B033F7F704 -:10FF100021FBF7F7F1FB00EE100A84ED060ADFED96 -:10FF20007B0AB4EE600AF1EE10FA02DBDFF8CC03D4 -:10FF3000A06115982062E08C002801D10020206289 -:10FF40000020E06118982063BDF86600A0850AB023 -:10FF5000BDEC048B71BC5DF810FB000000247449FB -:10FF60000000000080B509F019FC40F6B931884264 -:10FF700001D3012002BD002002BD38B50D4605F1B8 -:10FF80001004218F032912D1B5EE400AF1EE10FAC8 -:10FF900006DD29694018286100F07AF9286131BD31 -:10FFA00061684018606000F073F9606031BD042939 -:10FFB00011D1B5EE400AF1EE10FA06DDA168401845 -:10FFC000A06000F065F9A06031BDE1684018E06014 -:10FFD00000F05EF9E06031BDF8B52DED028B05460D -:10FFE000B0EE408A0C4620682818206000F050F9D6 -:10FFF000206018EE100AF7F785FA21F00041002280 -:020000021000EC -:10000000134600F0D7FB44D2AA4EB069052831D27E -:10001000A24FF96C00292DD104281CD1E1684018A9 -:10002000E06000F035F9E0602146B0EE480AB069C2 -:10003000FFF7A3FFE0682818E06000F029F9E0600E -:100040002146B0EE480A2846FFF797FF00F04CF82B -:100050000120F8640AE0B4F84600042803D170696E -:100060002818706102E0306928183061B0692818DA -:10007000B06136E0E0682818E06000F009F9E0605F -:100080002146B0EE480A2846BDEC028BBDE8F4409C -:1000900073E7B4F84600032802D0042807D00DE027 -:1000A00060682818606000F0F3F860600CE0A068F9 -:1000B0002818A06000F0ECF8A06005E0606828183F -:1000C000606000F0E5F860607A4EB069052803D200 -:1000D000002801D000F00EF800F006F86F4800216B -:1000E000C164BDEC028BF1BD724800210161416128 -:1000F000816170476F486D494A6803699A184A6080 -:100100008A68406980188860704700000100C84113 -:100110000FB438B52DED088BB0EE408ADFED688A5C -:100120009FED679ADDED159A19EE900AF7F7EAF957 -:1001300041EC1A0B9FED63BBBDF83E00042853EC65 -:100140001A2B624824D16249F7F704FA53EC1B2BAF -:1001500000F0BCFAF7F7D0FA0BEE100AB5EE408AC1 -:10016000F1EE10FA38D453EC1A2B5C485949F7F7E2 -:10017000F1F904460D4618EE100AF7F7C3F92246C6 -:100180002B46F7F7E7F9F7F7B7FA09EE100A23E07D -:100190005149F7F7DFF953EC1B2B00F097FAF7F70B -:1001A000ABFA0BEE100AB5EE408AF1EE10FA13D45A -:1001B00053EC1A2B49484A49F7F7CCF904460D4647 -:1001C00018EE100AF7F79EF922462B46F7F7C2F908 -:1001D000F7F792FA09EE100AF5EE409AF1EE10FAEE -:1001E00018D09DED0E0AB5EE400AF1EE10FA11D0CE -:1001F00010EE100AF7F786F900223A4BF7F7AAF942 -:1002000002460B4600203849FCF72CF8F7F774FA41 -:1002100008EE900A3BEE090A10EE100AF7F772F9A1 -:10022000324A374BF7F796F904460D461798F7F719 -:1002300069F922462B46F7F78DF904460D4618EE6C -:10024000900AF7F75FF922462B46F7F783F9F7F79D -:1002500053FA00EE100ABDEC088B31BC5DF814FBBC -:10026000DFED230AB4EE600AF1EE10FA03DBDFEDF6 -:10027000250A30EE200A7047DFED1D0AB4EE600A51 -:10028000F1EE10FA03DBDFED1F0A30EE200A7047B3 -:100290001849884201D31C490818704740A800201B -:1002A00094AD002014AE002094AE0020BCAC002021 -:1002B00094B0002030B30020B81E85EB51B8AE3F9B -:1002C000000000000000000000000C409A9999997D -:1002D0009999C93FCCCCEC3F9999B93FCDCCCCCCC6 -:1002E000CCCCFC3F00004E400000F03F7B14AE47FA -:1002F0000124744981969800ACB900200000C841DF -:10030000E17A743F002474C9806967FF5044204E2D -:1003100041432025660000005044202D3E204F46DA -:10032000520000005044202D3E2057005044202D04 -:100330003E20520050443A536574486569676874BA -:100340002025660050443A536574576569676874A0 -:100350002025660050443A53657447656E646572A3 -:100360002025640050443A2025642025642025641B -:100370000000000050443A496E5046543130303845 -:100380005F310000F446400D40EAC120490006D22A -:1003900000F014F8004248BF6FF00040604700F0E2 -:1003A0000DF84FF0004188428CBF0846404260473C -:1003B000400D40EAC120490080F00D8040F000402F -:1003C000490DA1F58061491C05D4D1F11F0154BF2D -:1003D000C840C01770474FF0000070474FF4001C32 -:1003E0001CEB410F94BF1CEB430F09E041EA030CE7 -:1003F00050EA4C0C52EA0C0C03D2994208BF9042CE -:10040000704714BF8B428242704700000FB400B5A2 -:1004100095B001208DF80400AA208DF802003C2040 -:100420008DF803000020ADF84E000A208DF82C0056 -:100430000DF12D0000A92122F6F714FD00208DF802 -:10044000240003200A9009A8F2F748F8012015B00B -:100450005DF814FB00B58BB00020ADF82A000A202F -:100460008DF8080000208DF809008DF80A000120A1 -:100470008DF800000320019000A8F2F72FF801206A -:100480000BB000BD38B52148046B00F037F80128E7 -:1004900010D101208DF8000004F10C056A7D00A93F -:1004A000E868E368C018F2F763F90120A874002037 -:1004B00000F021F8012032BD80B5F1F74BFF14495F -:1004C00008601449C0F8E81400F2E840124941609D -:1004D000124981600FF20D01C1600FF24D010161FF -:1004E000012002BD0A48006890F8D904002801D113 -:1004F0000020704705E00A490870704708480078F6 -:100500007047084890F90000704700000000002084 -:100510002CBE00200D0401085504010885040108C3 -:1005200075BE002074BE002018B440F20D120B7886 -:1005300012FB030301241C700B7812FB03035C7095 -:100540000B7812FB03031F249C700B7812FB030033 -:100550000022C2700878401C087011BC0BF055B81E -:100560000FB400B595B001208DF80400AA208DF8D5 -:1005700002003C208DF803000020ADF84E000A2058 -:100580008DF82C000DF12D0000A92122F6F76AFC50 -:1005900000208DF8240003200A9009A8F1F79EFF9F -:1005A000012015B05DF814FB00B58BB00020ADF84C -:1005B0002A000A208DF8080000208DF809008DF827 -:1005C0000A0001208DF800000320019000A8F1F737 -:1005D00085FF01200BB000BD38B5002000902648F3 -:1005E000446C00F039F8012812D1F7F746FE00906C -:1005F00004F10C056A7D00A9E868E368C018F2F709 -:10060000B7F80120A874002000F023F8F7F739FEAE -:10061000012032BD80B5F1F79DFE184908601849E8 -:10062000C0F8881500F2885016494160164981606B -:100630000FF20D01C1600FF25D010161012002BDE9 -:100640000E48006890F87905002801D10020704715 -:100650000BE00E49087070470C480078704780B571 -:10066000002000F006F8012002BD094890F90000C2 -:1006700070470749087070470000002028BE00201E -:1006800061050108A9050108D905010873BE00200C -:1006900072BE002018B440F20D120B7812FB030357 -:1006A00001241C700B7812FB03035C700B7812FBA7 -:1006B000030323249C700B7812FB03000022C270FA -:1006C0000878401C087011BCC9E7000070B44FF0F6 -:1006D000004591EA030C44BF6B4000F0EFBF00BF40 -:1006E000841A71EB030603D2001BB1411219734146 -:1006F0004FF4001C1CEB410F34BF7CEB430443E080 -:100700000C0DA4EB1356352E50DC45EAC323DB0A4F -:1007100045EAC121C912B6F120050DDD63FA05F6DF -:10072000EB4086EA0305124218BF45F00105C018E8 -:1007300051F100010CD213E062FA06F5F240554087 -:10074000F3415A40B340F3405A408018594107D30F -:1007500049085FEA30005FEA350528BF45F001052A -:1007600001F58011420875F1004250F1000041EBA3 -:10077000045170BC4FF4001C1CEB410F38BF704794 -:100780000020090D090570471CEB410F10D252EAF9 -:1007900043060BD0BCEB410F05D80C0DAB43661ED6 -:1007A000342EB5DD02E0AB438018594170BC704770 -:1007B00070BC70474FF4001C1CEB410F94BF1CEB46 -:1007C000430F09E041EA030C50EA4C0C52EA0C0CCE -:1007D00003D28B4208BF8242704714BF99429042B5 -:1007E0007047000010B5DFF80C4B0C2200212046AA -:1007F000F3F7F0F904F1140060620020E060E061BA -:100800002062A062E06220636063A063E063206412 -:100810006064A064E06420656065A0652074C822FF -:100820000146DFF8D40AF3F7D5F9C8220021DFF832 -:10083000CC0AF3F7CFF9C8220021DFF8C40AF3F796 -:10084000C9F996220021DFF8BC0AF3F7C3F9962212 -:100850000021DFF8B40AF3F7BDF996220021DFF892 -:10086000AC0ABDE81040F3F7B5B9002805D0DFF8B1 -:10087000841A496A0622F6F7F5BA70472DE9F04165 -:100880008CB00E4617460025A8462C46214603E0AC -:10089000022A00D1641C491C962909DA0A5C012A43 -:1008A00001D16D1CF7E7042AF2D108F10108F2E743 -:1008B0001FFA88F8B8F1880F01D30120307000A822 -:1008C00008F03AFFBDF80E00032801D0422F01D1F5 -:1008D00000203070B8F1000F05D1BDF80E000428DB -:1008E00001D100203070ADB245451DD33078A4B29F -:1008F000A5420CD301282AD001206A2D30D24C2DDC -:100900008941C943C90FDFF8EC29518434E001283B -:100910001DD002206A2C23D24C2C8941C943C90F17 -:10092000DFF8D029518427E0A4B244450CD204203A -:10093000B8F16A0F14D2B8F14C0F8941C943C90FFD -:10094000DFF8B029518417E03078012805D1042060 -:10095000DFF8A01900224A840EE002206A2C04D39A -:10096000DFF8901902224A8406E04C2C8941C943E1 -:10097000C90FDFF8802951840CB0BDE8F081000078 -:100980002DE9F0412DED068BDFF868490020A062CB -:10099000E06220636063A063E063BBEE049AB0EEA4 -:1009A00049AAB0EE498AF3EE049AF0EE69AAF0EE95 -:1009B000698A0646DFF84059DFF84079DFF8408958 -:1009C00050E055F8260000EE900A30EE200A84ED43 -:1009D0000A0A07EB860090ED000A31EE000A84ED6A -:1009E0000B0A08EB860090ED000A31EE800A84EDD8 -:1009F0000C0AB0EE4A0A0BF035F8B0EE40AA07EB4D -:100A00008600D0ED000AB0EE490A0BF02BF8B0EEEC -:100A1000409A08EB8600D0ED000AB0EE480A0BF0D1 -:100A200021F8B0EE408A05EB8600D0ED000AB0EE6A -:100A30006A0A0BF00FF8F0EE40AA07EB8600D0ED43 -:100A4000000AB0EE690A0BF005F8F0EE409A08EBE8 -:100A50008600D0ED000AB0EE680A0AF0FBFFF0EE67 -:100A6000408A761CD4ED0C1A94ED0B1A94ED0A0A08 -:100A7000322EA6DBDFEDA50A80EE200A84ED0A0AFD -:100A80009FEDA20A81EE000A84ED0B0A9FED9F0AFA -:100A900081EE800A84ED0C0A3AEE6A0A84ED130AAC -:100AA00079EE690AC4ED140A38EE681A84ED151A55 -:100AB00020EE000A00EEA00A01EE010A10EE100A74 -:100AC000F6F720FD41EC100B0AF0D4FF51EC100BAF -:100AD000F6F712FEA065002024E005EB800191ED01 -:100AE000000A94ED0A2A30EE420A40EE000AC4EDF4 -:100AF0000D0A07EB800191ED000AD4ED0B0A30EEF0 -:100B0000600A00EE001A84ED0E1A08EB800191EDE8 -:100B1000000AD4ED0C0A30EE600A40EE001AC4ED73 -:100B20000F1A401CD4ED0F1A94ED0E1AD4ED0D0AD5 -:100B30003228D2DB9FED750A80EE800A84ED0D0A23 -:100B40009FED720A81EE000A84ED0E0A9FED6F0A96 -:100B500081EE800A84ED0F0ABDEC068BBDE8F081C2 -:100B600030B4DFF890070021C1610184DFF88817F5 -:100B7000D1ED000ADFF8842792ED001ADFF8803704 -:100B8000D3ED001A01240CE0DFEDAF1AB4EE612AB8 -:100B9000F1EE10FA02DB058C6D1C0584F0EE401AB4 -:100BA000641C322C80F2AF8051F8245000EE105AB1 -:100BB00090ED0A2A70EE422A30EEC22A22EE822AF4 -:100BC000B5EE402AF1EE10FA29D5858B6D1C858390 -:100BD00030EE602AB5EE402AF1EE10FA02D570EE42 -:100BE000C02A01E0F0EE422A9FED983AF4EE432A43 -:100BF000F1EE10FA13DBC58B6D1CC583B5EE402AF0 -:100C0000F1EE10FA01D530EEC02ADFED8F0AB4EE16 -:100C1000602AF1EE10FA02DB058C6D1C0584F0EE03 -:100C2000400A52F8245000EE105A90ED0B2A70EE54 -:100C3000422A31EE422A22EE822AB5EE402AF1EE15 -:100C400010FA29D5858B6D1C858330EE412AB5EECF -:100C5000402AF1EE10FA02D571EE402A01E0F0EEE2 -:100C6000422A9FED7A3AF4EE432AF1EE10FA13DBB2 -:100C7000C58B6D1CC583B5EE402AF1EE10FA01D587 -:100C800031EE402A9FED701AB4EE412AF1EE10FACF -:100C900002DB058C6D1C0584B0EE401A53F824501D -:100CA00000EE105A90ED0C2A70EE422A31EEC22A64 -:100CB00022EE822AB5EE402AF1EE10FA7FF56EAFF1 -:100CC000858B6D1C858330EE612AB5EE402AF1EEEE -:100CD00010FA02D571EEC02A01E0F0EE422A9FED33 -:100CE0005B3AF4EE432AF1EE10FAFFF657AFC58BEC -:100CF0006D1CC583B5EE402AF1EE10FA7FF544AFC6 -:100D000031EEC02A40E730BC704700000000484286 -:100D10002DE9F84304460D46DFF8D86594ED000A46 -:100D2000D6ED000A30EE600A86ED100AD4ED010A15 -:100D300096ED011A70EEC10AC6ED110AD4ED020A51 -:100D400096ED021A70EEC10AC6ED120A10EE100AF4 -:100D5000F6F7D8FB706CF6F7D5FBB06CF6F7D2FB64 -:100D6000307BDFF89415226841F82020DFF88C15DD -:100D7000626841F82020DFF88815A26841F8202039 -:100D8000401C3073C0B2322801D100203073FFF70D -:100D9000F7FDFFF7E5FEDFF86C7500F059F8717BA1 -:100DA000C8552A4606F10E013846FFF767FD07468B -:100DB000DFF8548500F0DAF8717B01F808002A4664 -:100DC00006F10F014046FFF759FD8046DFF83C95DC -:100DD00000F09EFA717B01F809002A4606F1100125 -:100DE0004846FFF74BFD717B491C7173C9B29629C8 -:100DF00001D100217173042F04D0B8F1040F01D088 -:100E0000042801D1042009E0012F04D0B8F1010F1A -:100E100001D0012801D1012000E00220142D05D1CC -:100E2000B0820120F082708C308304E00120B08217 -:100E3000F0820220308394EC030A86EC030A06F168 -:100E400014007062BDE8F1830100003F9A99993E59 -:100E5000DFF8A004018C102931DB828B2F2A2CDAD9 -:100E600090ED0F0ADFED390AB4EE600AF1EE10FAE8 -:100E700023DB212921DA202A01DB01207047DFED65 -:100E8000340AB4EE600AF1EE10FA10DB1D2A0CDB16 -:100E900090ED0E0ADFED2F0AB4EE600AF1EE10FAC3 -:100EA00001DB0120704702207047022070471B2A97 -:100EB00001DB01207047022070470420704790ED4D -:100EC0000E0ADFED250AB4EE600AF1EE10FA3ADB05 -:100ED00090ED0F0ADFED210AB4EE600AF1EE10FA90 -:100EE0002BDB828B1B2A0EDBDFED1D0AB4EE600AC2 -:100EF000F1EE10FA05DB222A01DB01207047022007 -:100F0000704701207047172A15DBDFED160AB4EE93 -:100F1000600AF1EE10FA01DB0220704790ED0D0A35 -:100F2000DFED110AB4EE600AF1EE10FA01DB0220E7 -:100F300070470120704702207047092901DB022019 -:100F400070470220704701207047000024622A3E4B -:100F5000D3DF1B3FE981EF3D37C5833D2E3AB93DD5 -:100F6000170F1B3F431E193F75B04E3EE148818B62 -:100F700090ED0E0A2029C0F21F81DFEDBD0AB4EE0C -:100F8000600AF1EE10FAC0F2FD802F2932DBC18B2E -:100F9000162901DB04207047D0ED150A9FEDB51A24 -:100FA000F4EE410AF1EE10FA0EDBDFEDB30AB4EE17 -:100FB000600AF1EE10FA05DB142901DB042070470A -:100FC0000120704701207047D0ED130A9FEDAB1A46 -:100FD000F4EE410AF1EE10FA0ADBDFEDA90AB4EEF5 -:100FE000600AF1EE10FA01DB04207047012070471F -:100FF00004207047D0ED130A9FEDA21AF4EE410AC7 -:10100000F1EE10FA79DB90ED141ADFED9F1AB4EED1 -:10101000611AF1EE10FA19DB028C0F2A05DB242984 -:1010200001DB042070470220704790ED0D0ADFEDD0 -:10103000970AB4EE600AF1EE10FA01DB0120704766 -:10104000082A01DB04207047012070479FED901AA9 -:10105000F4EE410AF1EE10FA27DB90ED0D1ADFED08 -:101060008D1AB4EE611AF1EE10FA0ADB9FED8A0ACE -:10107000F4EE400AF1EE10FA01DB04207047012083 -:1010800070479FED861AB4EE410AF1EE10FA0ADBC2 -:101090009FED830AF4EE400AF1EE10FA01DB012025 -:1010A000704702207047012070479FED7E1AB4EE12 -:1010B000410AF1EE10FA01DB0420704790ED0F0AAF -:1010C0009FED791AB4EE410AF1EE10FA0ADB2C29F1 -:1010D00006DB008C072801DB0420704701207047E5 -:1010E000012070479FED710AF4EE400AF1EE10FA0C -:1010F00001DB04207047012070479FED6D1AB4EEAC -:10110000410AF1EE10FA01DB042070479FED691AE5 -:10111000F4EE410AF1EE10FA01DB0120704790ED88 -:10112000151ADFED651AB4EE611AF1EE10FA01DB63 -:10113000012070479FED611AB4EE410AF1EE10FAFA -:1011400001DB042070479FED5E0AF4EE400AF1EEE9 -:1011500010FA01DB0120704790ED140ADFED590A07 -:10116000B4EE600AF1EE10FA01DB04207047DFED07 -:10117000560AB4EE600AF1EE10FA01DB0120704766 -:1011800004207047DFED510AB4EE600AF1EE10FA68 -:1011900010DB2F2901DB0420704790ED0D0ADFEDF5 -:1011A0004C0AB4EE600AF1EE10FA01DB0120704740 -:1011B0000420704701207047DFED460AB4EE600A54 -:1011C000F1EE10FA2ADB172926DB90ED0F0ADFED8E -:1011D000420AB4EE600AF1EE10FA01DB0220704719 -:1011E00090ED0D0ADFED3D0AB4EE600AF1EE10FA63 -:1011F00001DB02207047192901DB0120704790EDC7 -:10120000150ADFED370AB4EE600AF1EE10FA01DBE1 -:10121000012070470220704702207047DFED310A3D -:10122000B4EE600AF1EE10FA20DB90ED130ADFED68 -:101230002E0AB4EE600AF1EE10FA15DB90ED140AF6 -:10124000DFED2A0AB4EE600AF1EE10FA0ADBDFEDF8 -:10125000280AB4EE600AF1EE10FA01DB01207047B3 -:101260000420704701207047042070470120704718 -:10127000CA8AE13BB58C1F4012A53D3DA7B2503F45 -:10128000D9D04D3D15053A3FDB56DD3FF33C383DA7 -:101290007179823F91DAD43EE5D54940AEDB203EFC -:1012A00042F01440910F3A3D6687F83C60CB4B3FCB -:1012B0006631B13CF0C6163F50701E40CD04433C31 -:1012C0004089BF3E8770C43ED89DBE3E7864AC3B2B -:1012D0003A24353BB6A1823D99BA1B3F172D503EAB -:1012E000EC531D40371A403CC5210B3FA43B983FAF -:1012F000446F9F3F2CA70020D4A400209CA5002071 -:1013000064A60020F4A800208CA9002024AA0020B4 -:10131000DFF89003018C2329C0F2BD80C28B2F2AF5 -:101320002EDB332A01DB0420704790ED150ADFED38 -:10133000BC0AB4EE600AF1EE10FA10DB08290CDBEF -:1013400090ED130ADFEDB70AB4EE600AF1EE10FA81 -:1013500001DB01207047042070470120704790EDA9 -:10136000130ADFEDB10AB4EE600AF1EE10FA05DB04 -:101370000D2901DB042070470120704704207047CD -:1013800090ED140AD0ED130A9FEDA81AF4EE410A6D -:10139000F1EE10FA41DB9FEDA61AB4EE410AF1EE30 -:1013A00010FA10DB0F2901DB0420704790ED0D0AC5 -:1013B000DFEDA00AB4EE600AF1EE10FA01DB0120C5 -:1013C00070470420704790ED0D0A9FED9B1AF4EED4 -:1013D000410AF1EE10FA15DBDFED980AB4EE600A6F -:1013E000F1EE10FA0CDB90ED150ADFED950AB4EE84 -:1013F000600AF1EE10FA01DB01207047042070470B -:1014000001207047DFED8F0AB4EE600AF1EE10FAAA -:1014100001DB04207047012070479FED8B1AB4EE6A -:10142000410AF1EE10FA30DB90ED151ADFED871A64 -:10143000B4EE611AF1EE10FA05DB092901DB042094 -:101440007047012070479FED821AB4EE410AF1EE19 -:1014500010FA01DB042070479FED7E1AF4EE410A7A -:10146000F1EE10FA01DB01207047808B2A2801DBA6 -:1014700004207047DFED780AB4EE600AF1EE10FA4E -:1014800001DB0420704701207047282A01DB04207B -:1014900070470120704790ED0E0ADFED700AB4EE40 -:1014A000600AF1EE10FA5DDBD0ED160A9FED6C1AC2 -:1014B000F4EE410AF1EE10FA30DBC18B17292BDB79 -:1014C00090ED0D0AD0ED0F0A9FED661AF4EE410A79 -:1014D000F1EE10FA15DBDFED640AB4EE600AF1EE0E -:1014E00010FA0CDB90ED130ADFED600AB4EE600A2F -:1014F000F1EE10FA01DB0120704702207047022054 -:101500007047DFED5B0AB4EE600AF1EE10FA01DB22 -:101510000220704701207047022070479FED551A46 -:10152000F4EE410AF1EE10FA1ADB818B19290CDB7B -:1015300090ED0F0ADFED500AB4EE600AF1EE10FAFA -:1015400001DB0220704701207047DFED4C0AB4EE4A -:10155000600AF1EE10FA01DB0220704701207047AB -:1015600004207047DFED460AB4EE600AF1EE10FA8F -:1015700053DBD0ED130A9FED431AF4EE410AF1EE6E -:1015800010FA1EDB9FED401AB4EE410AF1EE10FA9C -:1015900015DB90ED160A9FED3D1AB4EE410AF1EE0F -:1015A00010FA01DB012070479FED390AF4EE400A82 -:1015B000F1EE10FA01DB0120704704207047012092 -:1015C0007047DFED340AB4EE600AF1EE10FA17DB73 -:1015D00090ED140ADFED300AB4EE600AF1EE10FA75 -:1015E00001DB0420704790ED0D0ADFED2C0AB4EE0C -:1015F000600AF1EE10FA01DB012070470420704709 -:1016000090ED0F0ADFED260AB4EE600AF1EE10FA53 -:1016100001DB04207047012070470120704700BFA4 -:101620008BC71F4036054D40F9A78E3F55A85A3F3E -:10163000DB56DD3F3886403D7179823F9E48D83E7B -:1016400079977440753E3C3D3BAEAE3E350D1F4034 -:1016500082742D3FA43C173F9BAEE73EB6A1823D6E -:10166000878C6F4099BA1B3F6F69453ECC9E2A40DC -:101670008DBA663E8C5044409948D13E81B6953D26 -:101680007313B53B63D5083FDCF93E3DCDED2540F6 -:10169000D064833F21CB023CD274E63EDF57E53B6A -:1016A0007B6A753D2CA7002070B44FF0004591EA8D -:1016B000030F44BF6B40FFF713B800BF841A71EBF0 -:1016C000030604D26E40001BB141121973414FF45E -:1016D000001C1CEB410F34BF7CEB430684E00C0D77 -:1016E000A4EB1356362E7DDC012E43DC45EAC323E2 -:1016F00043EA525312BFD20292025B08240545EA24 -:10170000C12141EA5051D2EBC020994125D407D1E3 -:10171000B0FA80F610FA06F164D00020203608E016 -:10172000B1FA81F6B140C6F1200220FA02F211436B -:10173000B0404FEAF474B4EB465434F001064FEA7B -:1017400074040AD8D6F50016760D04F00044F04073 -:1017500061FA06F25040F1404840C00A40EA415068 -:1017600021F0004128BF5FEA500550F1000044EB32 -:10177000D12137E045EAC323DB0A45EAC121C90A82 -:10178000B6F120050EDD42EA0242120CC5F1200638 -:1017900003FA06F6EB4042EA06056D42984161F114 -:1017A00000010DE062FA06F5F240554063FA06FCCE -:1017B00082EA0C02F3405A406D42904161EB030112 -:1017C00011F4801F05D1641E620502D06D004041F6 -:1017D000494121F48011430875F1004350F10000A4 -:1017E00041EB045170BC70471CEB410F15D223F044 -:1017F000004352EA43060BD04FEA4C0CBCEB410FBE -:1018000004D80C0D661E342EB7DDEBE7801A994123 -:1018100050EA410608BF0021E4E708BF1CEB430F74 -:1018200028BF6FF00001DDE710B5DFF8D8480020D1 -:10183000A0656064A064E06420656065DFF8C808A6 -:1018400000210172E16621674EF660216167A167A0 -:101850003221A4F840104FF4967141814FF4B472D4 -:101860000021DFF8A808F2F7B5F9002020666066CD -:101870009FEDA00B84ED040B84ED000B84ED020BB7 -:10188000E065A06610BD80B50FF21400F1F720F8F6 -:10189000DFF8740800210172DFF8740CC16601BD25 -:1018A00050443A2053532053746F70007047DFF850 -:1018B000601C4FF47A725043486701460FF69C4013 -:1018C000F1F706B8DFF8481C4FF47A725043886786 -:1018D00001460FF69440F0F7FBBFDFF8341CA1F887 -:1018E000400001460FF68C40F0F7F2BFDFF8241CF1 -:1018F000488101460FF68840F0F7EABF0EB4DFF8E2 -:10190000101CBDF84620002A0CD1CA6E12FA80F0D5 -:10191000C8664A6F824203D20020C866012003E0F5 -:10192000002001E00020C86603B07047DFF8E00B3C -:10193000012181644164002101657047DFF8D00B0B -:101940000121C16441647047DFF8C40B406C7047EB -:10195000DFF8BC0B002141640FF63040F0F7B8BF50 -:10196000DFF8AC0B002181640FF63440F0F7B0BF14 -:10197000DFF89C0B0021C1640FF63840F0F7A8BFD8 -:10198000DFF88C0B012101657047DFF8840B012122 -:1019900041657047DFF8803B83ED000B83ED021B50 -:1019A00083ED042B83F8290083F82A1083F82B2079 -:1019B000704730B583B0DFF84C47206D012815D152 -:1019C000DFF8585B2846DFF8501B4022F5F75AFA3B -:1019D00095ED020B8DED000BD5E900230FF6E830F5 -:1019E000F0F776FF0020206501203EBD00203EBDBF -:1019F00030B583B0DFF80C47206D012815D1DFF832 -:101A0000205B2846DFF8101B4022F5F73BFA95EDE6 -:101A1000020B8DED000BD5E900230FF6BC30F0F77B -:101A200057FF0020206501203EBD002020653EBDFF -:101A30000020DFF8DC1A4A6D012A01D14865012037 -:101A400070470FB400B59DB0DDE92E23FFF72CFEE3 -:101A5000CDE90C01DDE92001DDE93023FFF724FEAB -:101A6000CDE90E010CA984B068464022F5F70AFAC8 -:101A70000FBC00F07BF953EC102B0020DFF8A41A08 -:101A8000F5F768FD41EC100B1DB05DF814FB0FB4C9 -:101A900080B52DED028B9CB0DFF86816C86D00286C -:101AA00001D100201FE00CA84022F5F7EBF920A996 -:101AB00084B068464022F5F7E5F90FBCFFF7C1FF97 -:101AC000B0EE408AF0EE608ADFF8480A4089FAF703 -:101AD000BBFB02460B4651EC180BFEF77FFC01D214 -:101AE000002000E001201CB0BDEC028B02BC5DF8C0 -:101AF00014FB000000000000000000000FB4F8B567 -:101B00002DED0A8B82B0DFF8FC55E86D441CEC65C6 -:101B1000FAF79AFB41EC180B9FED929B53EC182BB4 -:101B2000D5E90201F5F716FD06460F46DDE9142357 -:101B3000DDE92401FEF7CAFD53EC192BF5F70AFD88 -:101B400032463B46FEF7C2FD41EC1A0B53EC182B14 -:101B5000D5E90401F5F7FEFC06460F46DDE916233C -:101B6000DDE92601FEF7B2FD53EC192BF5F7F2FC87 -:101B700032463B46FEF7AAFD41EC1B0B2046FAF726 -:101B800063FB41EC1C0B53EC182BD5E90001F5F776 -:101B9000E1FC06460F46DDE91223DDE92201FEF7EE -:101BA00095FD53EC192BF5F7D5FC32463B46FEF775 -:101BB0008DFD53EC1C2BFAF755FB41EC180B85ED12 -:101BC000008B51EC1A0B53EC1C2BFAF74BFB41EC3E -:101BD000190B85ED029B51EC1B0B53EC1C2BFAF7F8 -:101BE00041FBC5E90401012C0DD1DFF83C09017866 -:101BF00085F82910417885F82A10817885F82B100E -:101C0000B0F80300A8858DED009B53EC182B2146FE -:101C10000FF6D410F0F75CFE02B0BDEC0A8BF1BCFD -:101C20005DF814FB0FB4F0B585B0DFF8D844256E2D -:101C300005EBC500DFF8D41411EBC0029DED0A0BD3 -:101C400082ED000B11EBC0069DED0C0B86ED020B37 -:101C50000CA890ED020B86ED040B9DF8510086F860 -:101C6000290006F229010DF1510252784A700DF156 -:101C700051039B788B70BDF95410B1858DF800002D -:101C80008DF801208DF80230ADF80310DFF884786C -:101C9000D7E90001CDE90201DDE90223DDE9000118 -:101CA00000F04BF906F12C018882B4F84000C8829C -:101CB00078890883002D01D10120206605B0F0BC91 -:101CC0005DF814FB0FB47FB5DFF83844206E00EBED -:101CD000C001C800DFF8341442189DED080B82EDF6 -:101CE000000B45189DED0A0B85ED020B0AA890ED3F -:101CF000020B85ED040B9DF8490085F8290005F2DB -:101D000029010DF1490252784A700DF149039B787F -:101D10008B708DF800008DF801208DF80230DFF80F -:101D2000F467D6E90001CDE90201DDE90223DDE92E -:101D3000000100F002F9A5F8400005F14001B4F8F7 -:101D400040204A8072898A8001460FF6B000F0F781 -:101D5000BFFD206E052801D2401C20667FBC5DF8C7 -:101D600014FB0000000000000000E03F0FB438B595 -:101D70002DED048B8CB006AA08A90AA89DED140BC2 -:101D800000F06EF8DDE90A230020DFF8A017F5F770 -:101D9000E1FB04460D46DDE90823DFF89407DFF890 -:101DA0009417F5F7D7FB22462B46FEF78FFC044627 -:101DB0000D46DDE90623DFF88007DFF88017F5F729 -:101DC000C9FB22462B46FEF781FC41EC180B00AA0A -:101DD00002A904A89DED160B00F042F8DDE90423EA -:101DE0004FF03330DFF85817F5F7B4FB04460D46D3 -:101DF000DDE90223DFF84C07DFF84C17F5F7AAFB03 -:101E000022462B46FEF762FC04460D46DDE9002320 -:101E1000DFF81C07DFF83417F5F79CFB22462B464A -:101E2000FEF754FC41EC190B53EC182B51EC180B3A -:101E3000F5F790FB04460D4653EC192B51EC190BAA -:101E4000F5F788FB22462B46FEF740FC41EC100BD1 -:101E500009F010FE0CB0BDEC048B31BC5DF814FB36 -:101E6000F8B52DED048BB0EE408AF0EE608A0646A0 -:101E70000C46174651EC180BFEF784FAFAF7DAF91C -:101E800041EC190B51EC180B53EC192BFFF70CFC20 -:101E900041EC180B53EC182B0020DFF8B416F5F7C3 -:101EA00059FBFEF76FFA054686ED009BFAF7C2F97B -:101EB000C4E900013C2095FBF0F0FAF7BBF90246BB -:101EC0000B4651EC180BFFF7EFFB0022DFF88436CE -:101ED000F5F740FBFEF756FAFAF7ACF9C7E900014F -:101EE000BDEC048BF1BDDFF82806806C7047DFF88D -:101EF0002006C06C7047000082489FED850B80ED86 -:101F0000040B80ED000B80ED020B0021C1657047D2 -:101F1000DFF8FC05006E7047DFF8F405002101666C -:101F20000FF2E860F0F7D4BCC9B201EBC102774907 -:101F300001EBC2014822F4F7A5BF1FB400200146FF -:101F40009DF90A209DF90230D21A01D53C320120B8 -:101F50009DF909309DF901401B1B181A01D53C3031 -:101F600001219DF908309DF900401B1B591A00D52D -:101F70001831C0EB001302EB83004FF4616212FBD7 -:101F8000010004B010BC7047F6B583B0DFF8C81587 -:101F9000B3FBF1F1DFF8C0254A439D1A4EF66024E9 -:101FA000B5FBF4F44EF660266643AD1B4FF47A772A -:101FB000B5FBF7F59A1A921B3B4603FB15230A9AC9 -:101FC000412A34D1BDF90F209A18ADF8032012B27E -:101FD000B2F57A7F04DDA2F57A72ADF803206D1CAC -:101FE0009DF90E20AA188DF8022052B23D2A03DB7B -:101FF0003C3A8DF80220641C9DF90D20A2188DF842 -:10200000012052B23D2A03DB3C3A8DF80120491CE5 -:102010009DF80C2089188DF800109DF900101929E1 -:102020003ADB9DF8001018398DF8001034E04D2A85 -:1020300032D1BDF90F20D21AADF8032012B2002A16 -:1020400004D502F57A72ADF803206D1E9DF90E20BD -:10205000521B8DF8022052B2002A03D53C328DF873 -:102060000220641E9DF90D20121B8DF8012052B232 -:10207000002A03D53C328DF80120491E9DF80C2022 -:10208000511A8DF800109DF90010002904D59DF813 -:10209000001018318DF8001000A90522F4F7E2FEB7 -:1020A00005B0F0BD10B58CB0DFF86444D4E900236E -:1020B0000020014609F05EFD16D0D4E9022309F0A4 -:1020C00059FD11D0214684B068464022F4F7DAFE6B -:1020D0000FBCFFF7A7FD002020670FF244500CB0A3 -:1020E000BDE81040F0F7F4BB0CB010BD0649087213 -:1020F000401E02D0801E012803D8DFF814040021FE -:10210000C1667047E8B0002074BD0020B89F002071 -:1021100000000000000000000EB4F0B52DED028BB1 -:102120009CB00646DFF8E843A06D401CA065A06E99 -:1021300023990818A06600A8F0F7E8FDDFF8D4534B -:10214000284600A90522F4F78DFEE06D002824D072 -:10215000206F30182067DFF8C01384B06846402233 -:10216000F4F790FE0FBCFFF792FC6066012814D1D3 -:10217000002060662067214684B068464022F4F75C -:1021800081FE0FBCFFF79EFDFFF7B6FE0120FFF7B3 -:10219000ADFF0FF29C40F0F79BFB287A052800F278 -:1021A000AF81DFE810F0060018006D00A700D7002F -:1021B0004C01BDF8D200002840F0A2810020206729 -:1021C000FFF79AFE0120FFF791FF297A0FF2704086 -:1021D000F0F77EFB94E123A983B068465422F4F71C -:1021E00051FE0EBC304680B2FFF788FB002800F09D -:1021F0008781D5E90001CDE903014D200090636F8F -:10220000DDE903010A46014601A8FFF7BDFEC64805 -:1022100001A90522F4F726FEBF4991F929008DF89E -:10222000480001F2290090F901108DF8491090F949 -:1022300002008DF84A000020ADF84B00D5E90001FE -:10224000CDE90001DDE90023DDE91201FFF775FEAC -:10225000022806D30FF2FC30F0F73AFBFFF766FBDB -:1022600005E0012020650FF2FC30F0F731FB022081 -:10227000FFF73CFF297A0FF2FC30F0F729FB3FE132 -:10228000FFF797FB00282FD0A06EE0670320FFF731 -:102290002DFF297A0FF2F430F0F71AFBE06D0028D9 -:1022A00000F02E819D4E314684B068464022F4F7FE -:1022B000E9FD0FBCFFF7EBFB6066012840F02081D1 -:1022C00000206066214684B068464022F4F7DAFDBB -:1022D0000FBCFFF7F7FC0120FFF708FF297A0FF288 -:1022E0006030F0F7F5FA0BE1FFF7A2FB002840F0B1 -:1022F000998005E1E06E3018E066A16EE26F891A00 -:10230000332980F0F580A16F814280F0D680824928 -:1023100091F929008DF8480001F2290090F9011087 -:102320008DF8491090F902008DF84A00D5E90001B6 -:10233000CDE90001DDE90023DDE91201FFF7FDFD34 -:102340000228C0F0AB80FFF7F1FA0FF27030F0F71F -:10235000BFFAA9E0FFF74CFB00285FD06F4E704F2B -:1023600039460CA84022F4F78DFD314684B068460A -:102370004022F4F787FD0FBCFFF763FBB0EE408A05 -:10238000F0EE608AB4F84000F9F75EFF02460B46B3 -:1023900051EC180BFEF722F81ED2A06EE06739460A -:1023A0000CA84022F4F76EFD314684B06846402206 -:1023B000F4F768FD0FBCFFF7A1FB0FF22830F0F730 -:1023C00087FAFFF7BBFA0520FFF790FE297A0FF294 -:1023D0002030F0F77DFA93E0E06D002800F088806F -:1023E000394684B068464022F4F74CFD0FBCFFF735 -:1023F0004EFB606601287BD100206066214684B0D8 -:1024000068464022F4F73EFD0FBCFFF75BFCFFF788 -:1024100073FD0FF2F820F0F75BFA69E0FFF708FBB5 -:1024200000286DD00120FFF761FE0FF27C20F0F74D -:102430004FFA297A0FF20820F0F74AFA60E0E06ECE -:102440003018E066A16EE26F891A332950D2A16F6D -:10245000814232D20020E0662F4991F929008DF89F -:10246000480001F2290090F901108DF8491090F907 -:1024700002008DF84A00D5E90001CDE90001DDE94F -:102480000023DDE91201FFF758FD022806D3FFF70C -:102490004DFA0FF28820F0F71BFA05E001202065C5 -:1024A0000FF2C010F0F714FA0420FFF71FFE297A8C -:1024B0000FF21820F0F70CFA22E017490CA840227E -:1024C000F4F7E0FC154984B068464022F4F7DAFCE2 -:1024D0000FBCFFF7B6FAB0EE408AF0EE608AB4F8AF -:1024E0004000F9F7B1FE53EC182BFDF777FF07D248 -:1024F0000120FFF7FBFD297A0FF24410F0F7E8F90D -:10250000287A1CB0BDEC028BF0BC5DF810FB00001B -:10251000E8B0002074BD0020E8B7002028B80020F3 -:1025200068B8002000408F40E8BD002000C05B403C -:102530009A9999999999FD3F5839B4C876BE9F3FA9 -:1025400033335640AE47E17A14AEF73F9999993F3D -:1025500000004E400020AC4080EE360050443A204F -:10256000534354202564000050443A204D435420E6 -:102570002564000050443A20535220256400000096 -:1025800050443A20534152202564000050443A20E0 -:1025900053535F52455345545F434D4452440000EA -:1025A00050443A2053535F52455345545F504F5364 -:1025B0005245510050443A2053535F5245534554BD -:1025C0005F504F4941434B0050443A2031737420CF -:1025D00025662C202566000050443A20326E642087 -:1025E00025662C202566000050443A20256420539F -:1025F000502025662C2025660000000050443A201B -:1026000053412025642C20256400000050443A20CA -:1026100053535F52455345545F4E534100000000F1 -:1026200050443A2053617665205341330000000046 -:1026300050443A2053617665205341320000000037 -:1026400050442D2D2D434845434B5F53544F50204C -:102650002564000050443A20526571466972506FFB -:102660007300000050443A205573655361766564E9 -:10267000506F730050442D2D2D4745545F464952ED -:1026800053545F504F5320256400000050442D2DBB -:102690002D434845434B5F555345525F4D4F56457B -:1026A0004D454E542025640050443A2053535F4713 -:1026B0005053204E4F54204F4B00000050443A20BE -:1026C000526571536563506F7300000050442D2DA7 -:1026D0002D4745545F5345434F4E445F504F532061 -:1026E0002564000050443A20536176652053500021 -:1026F00050442D2D2D434845434B5F555345525F64 -:102700004C454156494E47202564000050443A202C -:1027100053617665205341310000000050443A2057 -:102720005265714C6561506F7300000038B5044606 -:10273000AE4D002028650520686500202864686487 -:10274000A864E8649FEDAA0B85ED040B85ED060BEC -:1027500085ED080B85ED0A0B85ED0C0B85ED0E0B59 -:102760006866A86605F16C00A8654FF4B672002192 -:10277000F1F730FA0C2200212846F1F72BFA94EDFC -:10278000020AB1EE401A94ED010AF1EE400A94ED0E -:10279000000A05F1440105F1400009F0CBFA0120DF -:1027A00032BD00002DE9F04D2DED068B0E468F4F0A -:1027B0000168396090ED010AB1EE400A87ED010A27 -:1027C00090ED020AB1EE400A87ED020A1E22394658 -:1027D000B86D09F0B4FC796D4A1EB86D3B6D93423B -:1027E00027DA1E22591C09B209F0D2FC10EE100A99 -:1027F000F4F788FEC7E90A011E22386D411C09B2B0 -:10280000B86D09F0E3FC10EE100AF4F77BFEC7E99F -:102810000C011E22386D411C09B2B86D09F0F4FCA0 -:1028200010EE100AF4F76EFEC7E90E01386D401C79 -:1028300072E023D11E2209B209F0AAFC10EE100AA0 -:10284000F4F760FEC7E90A011E22796D09B2B86D7E -:1028500009F0BCFC10EE100AF4F754FEC7E90C01B5 -:102860001E22796D09B2B86D09F0CEFC10EE100A87 -:10287000F4F748FEC7E90E01786D4DE01E2209B25B -:1028800009F076FCF8651E220021B86D09F070FC95 -:102890008046C7F86080FC6D2068F4F733FE02467E -:1028A0000B46D7E90A01FEF7FFFE82468B46D8F8B1 -:1028B0000000F4F727FE52465B46FDF707FFC7E925 -:1028C0000A016068F4F71EFE02460B46D7E90C01C8 -:1028D000FEF7EAFE82468B46D8F80400F4F712FEB3 -:1028E00052465B46FDF7F2FEC7E90C01A068F4F71B -:1028F00009FE02460B46D7E90E01FEF7D5FE044657 -:102900000D46D8F80800F4F7FDFD22462B46FDF7EA -:10291000DDFEC7E90E01786DF9F78CFC41EC180B70 -:10292000D7E90A0153EC182BF9F79CFC41EC190B81 -:1029300087ED049BD7E90C0153EC182BF9F792FCB7 -:1029400041EC1A0B87ED08ABD7E90E0153EC182BBD -:10295000F9F788FC41EC100B87ED060BF4F7CCFE81 -:1029600001EE100AB0EE418A51EC1A0BF4F7C4FEE6 -:1029700000EE900AB0EE481AB0EE608AF0EE418A9E -:1029800051EC190BF4F7B8FE00EE100AB0EE681A1D -:10299000F0EE480A07F14C0107F1480009F0CAF9C6 -:1029A000386D401C38659FED120B87ED040B87EDE9 -:1029B000080B87ED060B396CB86C00F01DF8044667 -:1029C0007C66796CF86C00F017F8B86604F12801A1 -:1029D000512902D22830512802D30120307001E061 -:1029E00000203070BDEC068BBDE8F08DE093002038 -:1029F0000000000000000000421AB52A04DB081A9B -:102A000000F5B470424205E012F1B40F02DA00F5AD -:102A1000B470421A1046704738B5DFF82C4594F868 -:102A20002000012801D1002032BD20460AF091F992 -:102A3000204609F0FBFC0020E0830AF08DF9DFF866 -:102A40000C55E564002060651422014604F1300055 -:102A5000F1F7C0F820220021DFF8F404F1F7BAF80A -:102A600020220021DFF8EC04F1F7B4F80020A06583 -:102A7000024605E0D42101FB00510A718A71401C15 -:102A80000128F7DB0120606400F011F8DFF8C804CA -:102A9000012180F83D1008460AF0DAF80020A06411 -:102AA00020770AF0FDF8012084F8200032BD70B4D0 -:102AB00001460023DFF8902411E0D42504EB8304C1 -:102AC000A46805FB040401262671D66D05FB0300EE -:102AD000807904EB8000006A3043D0655B1CDFF82E -:102AE000780400EB4114DFF864042579AB42E4DBA1 -:102AF00029465177237F1376002903D0DFF850341D -:102B00005971D06470BC7047DFF83C144A6D01EB1A -:102B100082031863501C4865052803D3401E48658E -:102B200000207047012070470020DFF81C14024687 -:102B30008A654A6D002A0BD00B6B8B65521E4A6565 -:102B400004E001EB8002536B1363401C0428F8DBA4 -:102B5000704738B50024DFF8F053287F0AF0ACF84E -:102B600002E000F03CF8641C287E8442F9D331BDB9 -:102B700070B50C460025DFF8D063F17F4A1CF27770 -:102B8000332901DB2946F177B17F032915DB016881 -:102B900071624168B1628068F06228460AF089F883 -:102BA000307F401C3077317EC0B2884203D3284644 -:102BB0003077FFF7CEFFFFF7B7FFB07F411CB1774B -:102BC000652801DB3220B077B06D002805D0207079 -:102BD00001250A2801D10A202070284670BD2DE960 -:102BE000F84300200146DFF864430BE0D42202FBE7 -:102BF00001421379002B04D0937902EB8302126A0D -:102C00001043491C0129F1DB0AF06FF8CE4D0AF0A0 -:102C100092F828650020A86506463FE0D42202FB12 -:102C200006F707EB040898F80400002835D0304672 -:102C300000F049F8D5F8509098F8060008EB8000AD -:102C4000006AD9F8001008421ED098F8060008EB78 -:102C50008000406B002806D098F8060008EB800042 -:102C6000406BFFF751FF98F80600401C88F80600FB -:102C700098F80510C0B2884206D3B548395940F8D3 -:102C80002610002088F80600D9F84000002804D05B -:102C9000D9F800100843C9F80000761C012EBDDBEE -:102CA000286D00680AF049F8A86C411CA964B0F5C9 -:102CB0007A7F01D90020A864A648A5492022BDE852 -:102CC000F843F4F7DFB8F8B59F4C256D002129646F -:102CD000D4219E4A01FB00208179C1EBC10200EBA7 -:102CE000820600EB8107386A022846D1B06C0128C1 -:102CF00043D1306D022808D1686B032803DAF06DE8 -:102D0000401CF06501E00020F065306D042808D11A -:102D1000686B052803DAF06D401CF06501E00020C7 -:102D2000F065306D082808D1686B082803DBF06D6A -:102D3000401CF06501E00020F065306D102808D1DE -:102D4000686B102803DBF06D401CF06501E000208B -:102D5000F065F06C142190FBF1F0F16D814206DA20 -:102D60002868396A88432860386A286405E00020AA -:102D7000F0652868396A08432860386A012861D1FB -:102D800096F84800C0075DD5F06C41071ED594ED5C -:102D90000B0AF9EE000AB4EE600AF1EE10FA09D55A -:102DA00040F22310A9699131814203D3E96991313D -:102DB00081423DD20020F065F06D05283CDA28689C -:102DC000396A88432860386A2864F1BD81070FD5C5 -:102DD00094ED0B0AB5EE400AF1EE10FAEADDA869AF -:102DE0005A30B528E6D2E8695A30B52820D3E1E751 -:102DF000C006E1D5E06AF4F785FB21F0004101222D -:102E0000564BFDF7D7FCD5D8606AF4F77BFB21F071 -:102E100000410022524BFDF7E1FACBD2A06AF4F751 -:102E200071FB21F0004100224D4BFDF7D7FAC1D2D2 -:102E3000F06D401CF065BFE70020F0652868396A36 -:102E400008432860F1BD000010B43F49CA68002A59 -:102E500004D14FF48062CA600A614A6191ED040AAC -:102E6000B8EE400AD1ED0A0A20EE200ADFED350A5D -:102E700080EE200AD1ED010AF8EE600A30EE200A59 -:102E8000BDEEC00A10EE102A91ED050AB8EE400A18 -:102E9000D1ED0B0A20EE200ADFED2A0A80EE200A8F -:102EA000D1ED020AF8EE600A30EE200ABDEEC00A4B -:102EB00010EE103AB0F9024000EB440491ED030A21 -:102EC000B8EE400AD1ED090A20EE200ADFED1D0A16 -:102ED00080EE200AD1ED000AF8EE600A30EE200AFA -:102EE000BDEEC00A10EE101AA180B0F9021000EB7E -:102EF0004101CA80B0F9021000EB41010B81418809 -:102F0000491C418009B21E2901DB1D21418001209D -:102F100010BC704710B5002006E0D4210B4A01FB1D -:102F2000002100220A71401C0128F6DB064C00201B -:102F30006064607709F0B6FE0020E06584F8200048 -:102F400010BD0000C3F51C41B0B400208433002044 -:102F500084BA0020A4BA0020A4350020000021403B -:102F60000000F83F10B5554C002020606060A06064 -:102F70002062052060620020A061E061A062E06242 -:102F800020636063A063E0636064A06404F14C00AC -:102F900020644FF4B6720021F0F71CFE0C220021D1 -:102FA00004F10C00BDE81040F0F714BE70B50C46FB -:102FB000424DA96C4E1CAE6400F017F8002803D0F7 -:102FC000686C401C686401E0002068640F2E0ADA17 -:102FD000686C0B2803DB01202070022070BD0020EC -:102FE0002070012070BD032070BD0021334A92ED96 -:102FF000000AB5EE400AF1EE10FA15D1D2ED010A41 -:10300000F5EE400AF1EE10FA0ED1D2ED020AF5EE1D -:10301000400AF1EE10FA07D1016811604168516071 -:103020008068906000207047D0ED000A30EEC00A42 -:1030300090ED011AD2ED011A31EE611AD0ED021AAB -:1030400092ED022A71EEC21AB5EE400AF1EE10FAC4 -:1030500001DAB1EE400AB5EE002AB4EE420AF1EE12 -:1030600010FA1AD5B5EE401AF1EE10FA01DAB1EE07 -:10307000411AB5EE000AB4EE401AF1EE10FA0CD582 -:10308000F5EE401AF1EE10FA01DAF1EE611AF4EE03 -:10309000401AF1EE10FA00D50121C2ED000A436892 -:1030A00053608068906008467047044800210160C2 -:1030B0004160816041648164704700009097002006 -:1030C00010B500F032FB00F098FB00240DE0204624 -:1030D0009FED151ADFED140A9FED130A00F0B4FE00 -:1030E0002146052000F0BDFE641C1E2CEFDBDFF83E -:1030F000540D00210170016341638163C163016468 -:1031000041648164052141710A21017100214170EE -:103110008170C1620A2181710021C17010BDDFF888 -:10312000241DC87070470000000000002DE9F04722 -:103130002DED048BB0EE408AF0EE608AB0EE419A3D -:10314000DFF8244DE078012801D1002500E00525B5 -:1031500026781E2E09DA304600F076FE31462846E3 -:1031600000F07FFE701C207027E0002616E0DFF8DC -:10317000FC1C01EB8602304692ED3D1AD2ED1F0A8F -:1031800001EB860191ED010A00F05EFE3146DFF8A9 -:10319000E00C3018407800F064FE761C1D2EE6DB53 -:1031A0001D20B0EE491AF0EE680AB0EE480A00F0B1 -:1031B0004BFE1D21284600F054FEDFF8B89C032D7D -:1031C00008DA606B401C606348450BD3DFF8A80C3D -:1031D000606307E0206B401C2063484502D3DFF8A2 -:1031E000980C206300F0B2FDB0EE408A00F076FD4E -:1031F000F0EE408A00F010FBD4F830809FEDA09BE9 -:103200004046F9F721F853EC192BF4F7A3F9FDF731 -:10321000CFF80646E76B3846F9F716F853EC192B4A -:10322000F4F798F9FDF7C4F8824620790A2802D00D -:10323000142846D05CE09FED940AB4EE408AF1EE8B -:1032400010FA0CD5F4EE408AF1EE10FA07D5032DF2 -:1032500005DA14202071780800F0F0FB48E0781CB3 -:10326000E063484502D3DFF8100CE063042D3FDB38 -:1032700000F064FAE06A01283AD1B6F57A7F37D9CE -:1032800094ED090AB5EE400AF1EE10FA01DCB1EE58 -:10329000400ADFED7E0AB4EE600AF1EE10FA0DDAB4 -:1032A00094ED0A0AB5EE400AF1EE10FA01DCB1EE37 -:1032B000400AB4EE600AF1EE10FA19DB0020E06279 -:1032C00016E09FED710AB4EE408AF1EE10FA04DACE -:1032D000F4EE408AF1EE10FA02DB0A20207107E0DA -:1032E000A06B401CA063484502D3DFF88C0BA063A1 -:1032F00000206070607902280AD0C0F05B81042849 -:103300001BD074D3062800F00381C0F0E68051E1A1 -:10331000032D0FDA606B012802D12079A07149E1F9 -:103320000A2840F047810420607100F0F5FB00207E -:1033300020633FE1002060633CE1E06A012832D174 -:10334000207900F049F901282DD140F2E930864278 -:1033500001D2002E22D1824502D2BAF1000F1DD136 -:1033600094ED090AB5EE400AF1EE10FA01DCB1EE77 -:10337000400ADFED460AB4EE600AF1EE10FA10D50D -:1033800094ED0A0AB5EE400AF1EE10FA01DCB1EE56 -:10339000400AB4EE600AF1EE10FA02D5A07860702F -:1033A00001E00020E062E06A002814D1B6F5C87F91 -:1033B00001D8002E08D1A078002808D0BAF1FB0F60 -:1033C00005D2BAF1000F02D0A078607003E0207936 -:1033D00000F046F96070032060716078A0700020F2 -:1033E00020636063A063E06300F01DFBE2E0042D56 -:1033F00017DBB8F1010F02D100F0FFF9DAE0B8F104 -:10340000060FC0F0D7800021404600F0D3FAA07824 -:10341000032802D10020E06262E000F0D9FCE06203 -:103420005EE00020206320790A2853D1E06B0A284F -:10343000C0F0C080002100F0BDFAA07800F0C8FC08 -:10344000E06294ED130AB5EE400AF1EE10FA02DDE7 -:10345000F0EE400A01E0F1EE400A9FEDB71AF4EEFB -:10346000410AF1EE10FAC0F2A580D4ED140AF5EE8F -:10347000400AF1EE10FA0BDDF0EE601A0AE000BF30 -:1034800000000000000034409A99193F00002042DB -:10349000F1EE601AF4EE411AF1EE10FAC0F28A80F1 -:1034A000F5EE400AF1EE10FA01DCF1EE600AB5EE3D -:1034B000400AF1EE10FA01DCB1EE400AF4EE400AE7 -:1034C000F1EE10FA76D50520607100F096F9002033 -:1034D000A0636FE00020E0636CE0B8F1060F04D356 -:1034E000022060710020606364E0A06B012805D1B8 -:1034F000E06B00F0A3FA2079A0715BE0052859D3B6 -:10350000606B052856D3062060710020206351E0CF -:10351000207914284ED1E06A01282DD140F2E930FB -:10352000864201D2002E22D1824502D2BAF1000F8A -:103530001DD194ED090AB5EE400AF1EE10FA01DC56 -:10354000B1EE400ADFEDB20AB4EE600AF1EE10FA15 -:1035500010D594ED0A0AB5EE400AF1EE10FA01DC3E -:10356000B1EE400AB4EE600AF1EE10FA02D5A0788E -:10357000607001E00020E062E06A002811D140F2B2 -:103580009110864201D2002E04D1824505D2BAF1B3 -:10359000000F02D0A078607003E0A07900F060F81E -:1035A0006070032060716078A07000202063606309 -:1035B000E063A0636078012801D1012008E00228BF -:1035C00001D1022004E0032801D1032000E0002003 -:1035D000BDEC048BBDE8F08780B52DED048B002198 -:1035E0000A2808D1DFF85C0890ED100A90ED118AE6 -:1035F000D0ED128A11E0142808D1DFF8480890EDC8 -:10360000150A90ED168AD0ED178A06E09FED810A23 -:103610009FED808ADFED7F8A032103291CDA9FED6D -:10362000D59A00F035FCB4EE490AF1EE10FA11D546 -:10363000B0EE480A00F02CFCB4EE490AF1EE10FAA4 -:1036400008D5B0EE680A00F023FCB4EE490AF1EEAA -:1036500010FA01D4012000E00020BDEC048B02BD73 -:1036600000210A280AD1DFF8DC07D0ED100A90ED1E -:10367000111AD0ED121A9FED670A13E014280AD12F -:10368000DFF8C007D0ED150A90ED161AD0ED171A25 -:103690009FEDC50A06E0DFED5F0A9FED5E1ADFEDE4 -:1036A0005D1A032103293EDAB4EE600AF1EE10FA46 -:1036B0000BD59FEDBE2AB4EE421AF1EE10FA04D5F6 -:1036C000F4EE421AF1EE10FA2AD4B4EE600AF1EEEA -:1036D00010FA0BD59FEDB62AB4EE421AF1EE10FAAD -:1036E00004DBF4EE421AF1EE10FA0BDAB4EE600AE3 -:1036F000F1EE10FA08D59FEDCF1AF4EE411AF1EE73 -:1037000010FA01DB01210EE0B4EE600AF1EE10FACE -:1037100008D59FEDC90AF4EE401AF1EE10FA01D572 -:10372000022100E0032108467047DFF81807002156 -:103730008160C160016170470100C03F10B52DED8F -:10374000068BDFF8004794ED050AB5EE400AF1EE6E -:1037500010FA13D194ED060AB5EE400AF1EE10FA14 -:103760000CD194ED070AB5EE400AF1EE10FA05D13E -:10377000A0686061E068A0612069E06194ED028A60 -:1037800094ED050A38EE400A00F0F6F8F0EE408AB3 -:1037900094ED039A94ED060A39EE400A00F0ECF835 -:1037A000F0EE409A94ED04AA94ED070A3AEE400A2E -:1037B00000F0E2F8F0EE40AA94ED080A30EE280A94 -:1037C00000F0DAF884ED080A94ED090A30EE290ACF -:1037D00000F0D2F884ED090A94ED0A0A30EE2A0AC4 -:1037E00000F0CAF884ED0A0A84ED058A84ED069A91 -:1037F00084ED07AABDEC068B10BDDFF8480600215A -:1038000001624162816241618161C1617047000072 -:103810000000204200000000F8B52DED048B84B0BC -:103820001D2100A800F000FB9DED000AB5EE400A46 -:10383000F1EE10FA01DCB1EE400ADFEDAF0AB4EEB2 -:10384000600AF1EE10FA01D50020009000AE96ED6E -:10385000010AB5EE400AF1EE10FA01DCB1EE400AC1 -:10386000B4EE600AF1EE10FA01D50020706096ED1A -:10387000020AB5EE400AF1EE10FA01DCB1EE400AA0 -:10388000B4EE600AF1EE10FA01D50020B0609FEDB1 -:103890009B8B9FED9C9BDFF8D075B868F3F732FEE9 -:1038A00004460D460098F3F72DFE53EC192BF3F761 -:1038B00051FE0022DFF8D435F8F7D4FC53EC182B76 -:1038C000F3F748FE22462B46FCF700FFF3F714FF00 -:1038D00000EE100A87ED020A00F04EF887ED020AAA -:1038E000F868F3F70FFE04460D467068F3F70AFE1A -:1038F00053EC192BF3F72EFE0022DFF89035F8F782 -:10390000B1FC53EC182BF3F725FE22462B46FCF7AF -:10391000DDFEF3F7F1FE00EE100A87ED030A00F07A -:103920002BF887ED030A3869F3F7ECFD04460D46E2 -:10393000B068F3F7E7FD53EC192BF3F70BFE002209 -:10394000DFF84835F8F78EFC53EC182BF3F702FE3E -:1039500022462B46FCF7BAFEF3F7CEFE00EE100A25 -:1039600087ED040A00F008F887ED040A04B0BDEC06 -:10397000048BF1BD9A99993EDFED640AB4EE600ABA -:10398000F1EE10FA04DBDFED620A30EE200A704738 -:10399000DFED600AB4EE600AF1EE10FA03D5DFED58 -:1039A000CD0A30EE200A70479A9999BECCCCCCBD96 -:1039B000CDCCCC3D10B49FEDC80ADFEDC70A1F285F -:1039C00001D31E2000E0C0B20022DFF8A0440EE0C8 -:1039D000C2F11D03DBB204EB830393ED1E1A30EE3C -:1039E000010A93ED3C1A70EE810A521CD2B2824257 -:1039F00009DA002902D1C2F11D03EBE70129E7D161 -:103A0000C2F11803E6E701EE100AB8EE411ADFF83A -:103A1000580480EE010A80ED130A80EE810A80EDE1 -:103A2000140A10BC7047DFF840040021416581652D -:103A3000C1657047CDCCCC3ECCCCCCBE30B49FED74 -:103A4000A60ADFEDA50A9FEDA41A1F2801D31D20A9 -:103A500001E0401EC0B200210DE030EE210A02EB71 -:103A60008302D2ED1E1A70EEA10AD2ED3C1A31EE9D -:103A7000211A491C89B2DFF8CC4381422ADA227824 -:103A80001E2A03DA521A531EDBB202E0C1F11D03F3 -:103A9000DBB2DFF8D82352F8235001EE905A02EB44 -:103AA000830555F8045C02EE105A71EEC22A9FEDB0 -:103AB000C73AF4EE432AF1EE10FACEDBF5EE401AE7 -:103AC000F1EE10FAC9DDB5EE402AF1EE10FAC4D5D8 -:103AD0000B29C2DB01EE901AF8EE611A80EE210A82 -:103AE00084ED150A80EEA10A84ED160A81EE210A02 -:103AF00084ED170A30BC70470BD7233DF8C1631A19 -:103B0000DCA54C40000000000000344001003443BC -:103B10000000B4C3000034C3F0B4DFEDC92AB0EE36 -:103B2000620AB0EE622ADFED6C0A9FED6B1ADFEDE0 -:103B30006A1ACD4801781E2900DB1E21026B9142D2 -:103B400004D201EBD1725210D2B201E05208D2B2CB -:103B500000230DE0B1EE633AB4EE443AF1EE10FA10 -:103B600005DB71EEA31AB7EE003A32EE032A5B1CB6 -:103B7000DBB2934280F29F80CC1A641EE4B22546E9 -:103B80006E1EF6B2B94D55F8267003EE107A05EBAD -:103B90008407D7ED003A05EB860797ED004A73EEF0 -:103BA000C43AF5EE403AF1EE10FA05EB8407D7ED92 -:103BB000003A02DD33EEC33A01E033EE633A05EB3F -:103BC0008606D6ED1E3A97ED1E4AD6ED1E4A34EE15 -:103BD000644AB5EE404AF1EE10FA97ED1E4A02DD56 -:103BE00074EE633A01E073EEC43A06F1780C9CED92 -:103BF0001E4A07F17806D6ED1E4A9CED1E5A74EE59 -:103C0000C54AF5EE404AF1EE10FAD6ED1E4A02DD45 -:103C100034EEC44A01E034EE644ADFED984AB4EE73 -:103C2000643AF1EE10FA09DBF4EE643AF1EE10FAC0 -:103C300004DBB4EE644AF1EE10FA3CDA55F82440A5 -:103C400003EE104AB5EE403AF1EE10FA02DDF0EE66 -:103C5000433A01E0F1EE433A9FED894AF4EE443AEB -:103C6000F1EE10FA05DB70EE830AB7EE003A30EEA3 -:103C7000030A97ED1E3AB5EE403AF1EE10FA02DD76 -:103C8000F0EE433A01E0F1EE433AF4EE443AF1EE5D -:103C900010FA05DB31EE031AB7EE003A72EE832A12 -:103CA000D6ED1E3AF5EE403AF1EE10FA7FF752AF3C -:103CB000B0EE633A50E780EE800A80ED100A81EEA4 -:103CC000220A80ED110A81EE820A80ED120AF0BC10 -:103CD000704700000000B4430000000010B52DED57 -:103CE000028B9FED688A002426E0C4F11D00C0B25B -:103CF0005E4901EB800202F1780393ED1E0AD2EDDA -:103D00001E0A51F8200001EE100A21EE011A00EE01 -:103D1000A01A00EE001A11EE100AF3F7F3FB41ECC3 -:103D2000100B07F0A7FE51EC100BF3F7E5FC00EECB -:103D3000100A38EE008A641C062CD6DBB1EE080AA5 -:103D400088EE000ABDEC028B10BD000010B52DED11 -:103D5000028B9FED4C8ADFED4B8A002428E0C4F1F2 -:103D60001D00C0B2414901EB800202F1780393EDDE -:103D70001E0AD2ED1E0A51F8200001EE100A21EEB3 -:103D8000011A00EEA01A00EE001A11EE100AF3F765 -:103D9000B9FB41EC100B07F06DFE51EC100BF3F783 -:103DA000ABFC00EE100A38EE008A40EE008A641C7C -:103DB000062CD4DBB1EE080AC8EE000A88EE800AB1 -:103DC00000EEE00ABDEC028B10BD00009A99993E0E -:103DD0000121022812D19FED2C0A2348D0ED130AAD -:103DE000F4EE400AF1EE10FA1CDBD0ED140AF4EE0A -:103DF000400AF1EE10FA15DB002113E0012811D181 -:103E0000194890ED130AFEEE000AB4EE600AF1EED6 -:103E100010FA07D590ED140AB4EE600AF1EE10FA2C -:103E200000D5002108467047104A52F8213003603F -:103E300002EB81018A6F4260D1F8F0108160704717 -:103E4000BD378635F0B30020C0B2084901EB8002CF -:103E500082ED000A01EB8000C0ED1E0A80ED3C1AE5 -:103E60007047034A88547047F0B30020EC9D00204F -:103E700064BA002041420F0040420F000100A04000 -:103E8000CDCC4C3D000000000100003F00408F40C1 -:103E9000B5EE400AF1EE10FA03D5FFEE000A20EE6F -:103EA000200A704710B5044602E0C068EFF744FFEF -:103EB000EFF779FE20680028F7D104484078002801 -:103EC00004BFBDE81040EFF768BE10BD34360020D7 -:103ED000012008F059BF00000749086808B1002018 -:103EE00070470648C008C00008600549C908C900F5 -:103EF000091A0160704700BF54BE00208FDE002009 -:103F000088EE00202DE9F04FA1B0824602AE0020DD -:103F100017461D46029170620DF144080AE017F839 -:103F2000011B0298D0470290002800F0DA82706AE4 -:103F3000401C7062387808B9706AD4E22528EED146 -:103F40000020F06030617061B061F061306201E0CA -:103F500040F0010017F8011F2029F9D023290DD0C6 -:103F60002B2904D02D2906D030290AD00CE040F0AE -:103F7000020080B2EEE740F00400FAE740F00800EB -:103F8000F7E740F01000F4E72A290DD129680A1D4F -:103F90002A600968F162002904D5494240F0040012 -:103FA000F16280B27F1C13E00021F1620BE0F16A44 -:103FB0006FF00043994205D001EB810302EB43010E -:103FC0003039F1627F1C3A78A2F130010A29EED330 -:103FD00039782E2903D04FF0FF31B1621EE017F877 -:103FE000011F2A2906D129680A1D2A607F1C096839 -:103FF000B16213E00021B1620BE0B16A6FF00043DF -:10400000994205D001EB810302EB43013039B162E3 -:104010007F1C3A78A2F130010A29EED330860FF6E0 -:104020006040397808F0BAFE08B117F8010B8DF836 -:104030003A009DF83A00682802BF39786829622062 -:1040400005D06C2804BF38786C2803D171208DF816 -:104050003A007F1C11A8B0603978B1F1250029D051 -:104060001C3800F0C080001F022840F2BC801338CA -:1040700000F0E480093800F0B680801E00F07781FF -:10408000401E00F02081401E022840F2AC80001F3C -:1040900000F01981401F7BD0401E00F0CF80401EF1 -:1040A00022D0C01E0BD0801E00F0C880C01E00F0C1 -:1040B000C58064E1F068411CF160252169E1286850 -:1040C000011D29600068B26A7060002A02D5F7F706 -:1040D00005FC07E0002108F06DFE00281ABF71689A -:1040E000401AB06A306156E12868011D296000213C -:1040F0000068CDE900014FF03C0E11A87060DDE9C9 -:10410000000111B908B9B26ACAB10206120FA0EBD8 -:1041100002123032AEF10103D2B29E463A2AA8BF53 -:104120002732000903F8082040EA0170090908BF96 -:10413000002804D0726811AB73449A42E5D311A9E8 -:1041400071447160CEF13C00B16A3061884207DA97 -:10415000081AB0614FF6EF71308E084030861AE1D0 -:10416000002940F1188196F8301001F0140110294F -:1041700040F01181F16AF268891AB269891AA1EBDB -:10418000000EBEF1010FC0F20681C6F818E002E190 -:104190009DF83A00622818D0682806D06A280BD00B -:1041A0006C2819D0712807D016E02868011D2960F5 -:1041B0000068716A0180EEE02A68101D28601268AC -:1041C000706AC117C2E90001E5E02868011D296095 -:1041D0000068716A0170DEE02868011D29600068CE -:1041E000716A0160D7E02868C01D20F007002860D0 -:1041F00000F108022A60D0E90023CDE90023002B5A -:1042000004D5F068421CF2602D220DE0308E82074A -:1042100004D5F068421CF2602B2205E0C00705D5EA -:10422000F068421CF260202200F80820F06811AA11 -:104230008018706000A800F0E3F9ACE09DF83A0047 -:104240006C2808BF2A6811D0712808BF2A6802D0DC -:104250002A686A280AD1D21D22F007022A60144671 -:1042600004F108022A60D4E9002303E0131D2B6047 -:1042700000231268CDE90023682808BF92B207D056 -:10428000622808BFD2B203D0742818BF7A2802D19E -:104290000023CDE9002396F8300000075FD5DDE963 -:1042A0000023002B08BF002A59D041F020007828B5 -:1042B00055D1F068302200F80820401C421CF26002 -:1042C00000F808104BE09DF83A0062280CD06828EE -:1042D00010D06A281AD06C2823D0712816D07428E0 -:1042E0001FD07A280CD01CE02868021D2A6090F9A3 -:1042F00000201AE02868021D2A60B0F9002014E0AE -:104300002868021D2A60002302680FE02868C01D8B -:1043100020F00700286000F108022A60D0E900239D -:1043200004E02868021D2A600268D317CDE9002343 -:10433000002B04DAF068421CF2602D220DE0308E72 -:10434000820704D5F068421CF2602B2205E0C0070A -:1043500005D5F068421CF260202200F80820F068C1 -:1043600011AA8018706000A800F0C0F813E0F0688F -:10437000411CF16029680A1D2A60096809E0F0689B -:10438000421CF260252200F8082021B1F068421C8E -:10439000F26000F80810F06AF168401AB169401A3A -:1043A0003169401AF169401A7169401A316AA0EB0B -:1043B000010996F830007F1C400710D420208DF8AA -:1043C0004000002409E0012310AA00A9504600F093 -:1043D00040FC002840F08580641C4C45F3DBF46809 -:1043E0000DF1440B0AE01BF8011B0298D047029024 -:1043F000002876D0706A401C7062641E002CF2D1D6 -:1044000030208DF840004FF0000BB46909E0012323 -:1044100010AA00A9504600F01CFC002861D10BF145 -:10442000010BA345F3DB3469D6F804B00AE01BF8AE -:10443000011B0298D0470290002852D0706A401C9D -:104440007062641E002CF2D130208DF840004FF0D5 -:10445000000BF46909E0012310AA00A9504600F0FE -:10446000F8FB00283DD10BF1010BA345F3DB3069CC -:104470007168746900EB010B09E01BF8011B0298DD -:10448000D047029068B3706A401C7062641E002CB2 -:10449000F3D130208DF840004FF0000B346A08E073 -:1044A000012310AA00A9504600F0D3FBC8B90BF1B4 -:1044B000010BA345F4DB96F8300040077FF53AADD9 -:1044C00020208DF84000002400E0641C4C45BFF61D -:1044D00031AD012310AA00A9504600F0BAFB002814 -:1044E000F3D04FF0FF3021B0BDE8F08F2DE9FA474F -:1044F000064682B035690A466F2A08BF082705D0EC -:1045000041F02000782814BF0A271027D6E90001BF -:104510003C2480468946642A18BF692A05D10029AF -:1045200003DAD8F1000869EB4909B9F1000F08BFB7 -:10453000B8F1000F0CD1306B50B9082F3BD196F871 -:104540003800000737D530203B2485F83B0032E0A7 -:10455000CDE90089FB17404649463A46F9F7B0FCD9 -:10456000B846A8FB0023DDE90089A8EB020230323F -:10457000A4F1010AD2B254463A2A03DB9DF808306E -:10458000513B9A180AF8052080465FEA010908BFE6 -:10459000B8F1000F03D0F06861198842D8D3082F12 -:1045A00009D196F83800000705D5605D302802D0A3 -:1045B000641E30206055C4F13C00B0616119F160A7 -:1045C000316B884207DA081A30624FF6EF71308F8C -:1045D0000840308710E000290ED596F8381001F019 -:1045E0001401102908D1716B7269891A326A891A0B -:1045F000081A0128A8BF306204B0BDE8F0870000A7 -:104600002DE9F24F04468EB0D4E90001CDE9020154 -:1046100004AE9DF8380040F02000009061280AD0D8 -:10462000206B002848BF062004D404BF00986728E8 -:1046300001D1012020636168C1F30A5040F2FF728A -:1046400090421CD1080304BF2068002809D1032030 -:10465000A0619DF8380061381A2836D30FF2346112 -:1046600008E00320A0619DF8380061381A2829D39A -:104670000FF21861E0680322F2F7F4FBB5E10128BC -:1046800016DA204608F0C2FB012811DB00270020C3 -:104690000099612920D1E168302201F8012B4A1CE0 -:1046A000E2609DF83820612A0CBF782258220FE082 -:1046B000626840F2FE3161F31E52471A62604FF0A9 -:1046C000FF30E5E70FF2C051D4E70FF2C451D1E754 -:1046D0000A706169891C616110B9002500277BE1BE -:1046E0000098612840F09680206B00284CBF21255F -:1046F000451CDDE902012DB26E1CD4E900890022BF -:104700000023FBF76BFE3ABF89F00040CDE9028041 -:10471000CDE902893F1F8DF810200DF1110801E04D -:1047200000F20708012E32DBDDE90201002200233E -:10473000FCF740F82BD21C2102A808F089FBDDE928 -:104740000201FBF71FFEF61F8146012E09DBF7F77A -:1047500071FD02460B46DDE90201FCF7A5FFCDE93C -:10476000020108F20700072105E009F00F0200F836 -:10477000012D4FEA2919B9F1010F01DB491EF4D5CA -:10478000491E5CBF002200F8012DF9D5C8E70DF1E4 -:104790001100A8EB00010DF11106A942B8BF0D46AA -:1047A0002DB228002FD4884206DA04A9411849788E -:1047B0000829A8BF0F2100DA002104AA821800E00E -:1047C0006D1E12F80139401E8B42F9D00F2904D119 -:1047D00004A941184A78521C4A70002802D504AE38 -:1047E0006D1C3F1D2DB2681E0DD481190A78303220 -:1047F000D2B23A2A03DB9DF838303A3B9A1801F8D6 -:104800000129401EF2D5206B002840F1E580681E8A -:104810002063E1E0DDE9020100220023FBF7DEFD79 -:104820003CBF81F00041CDE902013FB247F2975011 -:1048300078434849DFF820B190FBF1F73FB2C7F168 -:1048400007069246012E19DBDDE90289F00707D53C -:1048500052465B4640464946F2F77CFE8046894612 -:1048600076105046594652465B46F2F773FE824632 -:104870008B46002EEAD1CDE9028921E076429046AE -:10488000DFF8D89012E0F00707D552465B46404665 -:104890004946F2F75FFE80468946761050465946F3 -:1048A00052465B46F2F756FE82468B46002EEAD110 -:1048B000DDE9020142464B46F7F7D4FCCDE902019F -:1048C000009866280CBF07F10A000620216B4518E6 -:1048D000142DA8BF132530208DF810000DF11106FE -:1048E000DFF87C90012D3DDBDDE90201FBF760FD87 -:1048F00006F1080104220A23B0FBF3F303EB83065D -:10490000A0EB4600303001F8010D0A20B3FBF0F0B7 -:1049100000EB8006A3EB4603303301F8013D521E45 -:10492000E9D1083D01F10806012DDBDBDDE90201DB -:10493000FBF73EFDF7F788FC02460B46DDE9020176 -:10494000FCF7B2FE00224B46F2F704FECDE902016D -:10495000CAE700BFA0860100000024400000F03F2D -:1049600084D797410DF11100301A0DF1110602E0C4 -:10497000401E7F1E761C31783029F9D000996629B7 -:1049800002D13FB2791C03E065290CBF012100214F -:10499000226B8D182DB2A842B8BF05462DB2290052 -:1049A0001AD4814204DA885D3528A8BF392000DA9C -:1049B00030208A19521E00E06D1E12F80139491E7E -:1049C0008342F9D0392802D1885D401C88550029DE -:1049D00002D5761E6D1C7F1C3FB29DF838100097E3 -:1049E0002BB23246204600F003F80FB0BDE8F08F3E -:1049F0002DE9F043054685B01E46D5F8308089463E -:104A00001746012E02DA01260FF28C2749F020000A -:104A1000BDF93040662808BF641C17D0672840F0F5 -:104A2000818014F1040FC0F28380444580F28080BD -:104A300095F83800641C000702D44645B8BFB0465C -:104A400024B2B8EB040848BF4FF00008E868A96931 -:104A500024B2012C25DA30234A1C0B54B8F1010F83 -:104A600003DA95F83810090702D52E211154521C8B -:104A7000AA6118EB040FB8BFC8F1000424B2614268 -:104A8000A0446962B045B8BF464636B2EE613246D0 -:104A9000AB6939461818F2F7E5F9A8EB0600A862E9 -:104AA000C0E00818A64218DA32463946F2F7DAF9B9 -:104AB000A9697118A961A01B6862B8F1010F03DA36 -:104AC00095F83800000705D5E8682E220A54E869F1 -:104AD000401CE861C5F82880A4E022463946F2F778 -:104AE000C1F9A8692018361BB8F1010F03DA95F84F -:104AF0003810090703D5E9682E224254401C36B20B -:104B0000A861B045B8BF4646EB6836B23246E119F7 -:104B1000C018F2F7A7F9A8693018A861A8EB060039 -:104B200068627FE0B9F1610F16D14FF0700918E0AB -:104B3000464504DA95F83810090758BFB046B8F171 -:104B4000010848BF4FF00008B9F1670F14BF4FF0DC -:104B500045094FF0650904E0B9F1410F08BF4FF076 -:104B60005009A969E86817F8013B0B544A1CB8F1D1 -:104B7000010F05DA95F83810090758BFAA6117D553 -:104B80002E211154531CAB61B8F1010F10DB761EBE -:104B900036B2B045B8BF464636B232463946181826 -:104BA000F2F760F9A8693018A861A8EB06006862FE -:104BB000A869E9684718200007F8019B03D42B2057 -:104BC00007F8010B03E02D2107F8011B64420026C2 -:104BD0000DF1080808E00A2200A808F0C3F90198BE -:104BE00008F8010B761C009C21B20129F3DA022E91 -:104BF00006DA49F02000652804BF302007F8010BD1 -:104C00004EB9302007F8010B07E0761E02A8305C91 -:104C1000303007F8010B012EF7DAA869E96840186F -:104C2000381AE86195F8380000F0140010280DD10A -:104C30006869A9690818696A0818E9690818A96AF9 -:104C40000818696B8842BCBF081A286205B0BDE825 -:104C5000F083F8B504460D4616461F46002004E0D2 -:104C6000E86A401CE8627F1E002047B116F8011B6D -:104C7000A868A047A8600028F2D14FF0FF30F2BD2D -:104C8000686A6C747A4C00006E616E004E414E0092 -:104C9000696E6600494E46003000000000B583B0E2 -:104CA0000020ADF8040000208DF8060000208DF8EB -:104CB0000700012000900DF106037622D02100208C -:104CC000EDF79DFE002801D1002044E076208DF80C -:104CD00004009DF8060050F020008DF80500022326 -:104CE00001AAD0210020EDF748FE002801D10020C4 -:104CF00031E0012000900DF107034922D02100206E -:104D0000EDF77DFE002801D1002024E049208DF838 -:104D100004009DF8070050F001008DF80500022303 -:104D200001AAD0210020EDF728FE002801D10020A3 -:104D300011E076208DF804009DF806008DF805003E -:104D4000022301AAD0210020EDF717FE002801D18F -:104D5000002000E001200EBD38B50400EDF73DFD58 -:104D60000500DFF8B40C0078401CDFF8AC1C0870BC -:104D7000EEF719FFDFF8A00C4078401CDFF8981C14 -:104D80004870210089B22800EDF7F5FEDFF8880CA5 -:104D90004078401EDFF8801C4870C0B2002801D166 -:104DA000EEF7FBFEEEF7ACFF31BD10B582B0002090 -:104DB000ADF80000EDF711FD04006B208DF8000048 -:104DC00080208DF80100022300AAD0210020EDF7F9 -:104DD000D4FD002801D1002094E064212000EDF7EB -:104DE000CAFEFFF75BFF002801D100208AE06B209C -:104DF0008DF8000000208DF80100022300AAD021C8 -:104E00000020EDF7BAFD002801D100207AE028212A -:104E10002000EDF7B0FE19208DF8000004208DF879 -:104E20000100022300AAD0210020EDF7A6FD0028F2 -:104E300001D1002066E01A208DF8000003208DF8D3 -:104E40000100022300AAD0210020EDF796FD0028E2 -:104E500001D1002056E01B208DF8000008208DF8BD -:104E60000100022300AAD0210020EDF786FD0028D2 -:104E700001D1002046E01D208DF8000003208DF8B0 -:104E80000100022300AAD0210020EDF776FD0028C2 -:104E900001D1002036E06A208DF8000000208DF856 -:104EA0000100022300AAD0210020EDF766FD0028B2 -:104EB00001D1002026E06C208DF800003F208DF805 -:104EC00001009DF80110DFF8100DEDF701FD022340 -:104ED00000AAD0210020EDF750FD002801D10020CC -:104EE00010E06B208DF8000040208DF801000223B7 -:104EF00000AAD0210020EDF740FD002801D10020BC -:104F000000E0012016BD0178407850EA012000B28F -:104F1000704780B502200090DFF8C03C6B22D021A2 -:104F20000020EDF76CFD002801D100205BE001209E -:104F30000090DFF8AC3C1A22D0210020EDF75FFD95 -:104F4000002801D100204EE001200090DFF8943CC1 -:104F50001B22D0210020EDF752FD002801D10020B6 -:104F600041E001200090DFF8803C1C22D02100208D -:104F7000EDF745FD002801D1002034E0012000902C -:104F8000DFF8683C1D22D0210020EDF738FD002815 -:104F900001D1002027E001200090DFF8543C6A2274 -:104FA000D0210020EDF72BFD002801D100201AE0D0 -:104FB00001200090DFF83C3C3822D0210020EDF7A2 -:104FC0001EFD002801D100200DE001200090DFF837 -:104FD000A03D1922D0210020EDF711FD002801D1BC -:104FE000002000E0012002BD80B50020ADF80000E7 -:104FF0006B208DF80000DFF8E40B00788DF80100DD -:10500000022300AAD0210020EDF7B7FC002801D12F -:10501000002090E06C208DF80000DFF8C00B407895 -:105020008DF80100022300AAD0210020EDF7A5FC95 -:10503000002801D100207EE01A208DF80000DFF862 -:105040009C0B00798DF80100022300AAD0210020DA -:10505000EDF793FC002801D100206CE01B208DF8B7 -:105060000000DFF8780B40798DF80100022300AAD8 -:10507000D0210020EDF781FC002801D100205AE06A -:105080001C208DF80000DFF8540B80798DF80100AA -:10509000022300AAD0210020EDF76FFC002801D1E7 -:1050A000002048E01D208DF80000DFF8300BC079AB -:1050B0008DF80100022300AAD0210020EDF75DFC4D -:1050C000002801D1002036E06A208DF80000DFF8CA -:1050D0000C0BC0788DF80100022300AAD02100201B -:1050E000EDF74BFC002801D1002024E019208DF8B9 -:1050F0000000DFF8E80A80788DF80100022300AA9A -:10510000D0210020EDF739FC002801D1002012E069 -:1051100038208DF80000DFF8C40A007A8DF801000D -:10512000022300AAD0210020EDF727FC002801D19E -:10513000002000E0012002BD10B582B00020ADF8D3 -:105140000000DFF8980A007840060FD56B208DF834 -:10515000000000208DF80100022300AAD0210020C9 -:10516000EDF70BFC002801D10020B9E06C208DF890 -:105170000000DFF8680A407810F0F8008DF80100B0 -:10518000022300AAD0210020EDF7F7FB002801D16F -:105190000020A5E06A208DF8000000208DF80100B5 -:1051A000022300AAD0210020EDF7E7FB002801D15F -:1051B000002095E0002400E0641C062C10DA14F1B5 -:1051C00013008DF8000000208DF80100022300AAD2 -:1051D000D0210020EDF7D1FB0028EDD100207FE0A9 -:1051E00019208DF8000000208DF80100022300AA8C -:1051F000D0210020EDF7C1FB002801D100206FE095 -:105200001A208DF8000003208DF801004FF4FA6495 -:105210002000B0F5FA7F13D0B0F57A7F09D0B0F551 -:10522000FA6F14D19DF8010050F018008DF80100BC -:1052300011E09DF8010050F010008DF801000AE027 -:105240009DF8010050F008008DF8010003E09DF882 -:1052500001008DF80100022300AAD0210020EDF703 -:105260008CFB002801D100203AE0B4F5FA7F0DD084 -:10527000B4F57A7F06D0B4F5FA6F0BD103208DF820 -:1052800001000AE002208DF8010006E001208DF8FF -:10529000010002E000208DF801001B208DF80000C5 -:1052A0009DF80100C0008DF80100022300AAD02162 -:1052B0000020EDF762FB002801D1002010E038202B -:1052C0008DF8000000208DF80100022300AAD021F3 -:1052D0000020EDF752FB002801D1002000E0012062 -:1052E00016BD00B583B00020ADF8060000208DF893 -:1052F00004006B208DF8060001208DF807000223C2 -:105300000DF10602D0210120EDF737FB002801D175 -:10531000002023E02820FFF71FFD0120009001ABB3 -:105320006C22D0210120EDF76AFB002801D100207A -:1053300014E06C208DF806009DF8040010F0C00009 -:105340008DF8070002230DF10602D0210120EDF7B0 -:1053500014FB002801D1002000E001200EBD2DE942 -:10536000F04F85B004000D0016001F000020ADF8BE -:10537000040002A80021002206C0083806208DF88B -:10538000060038208DF8040000208DF80500022367 -:1053900001AAD0210120EDF7F0FA002802D15FF038 -:1053A000FF3070E123208DF8040000208DF8050007 -:1053B000022301AAD0210120EDF7DFFA002802D153 -:1053C0005FF0FF305FE16A208DF8040000208DF867 -:1053D0000500022301AAD0210120EDF7CEFA002812 -:1053E00002D15FF0FF304EE16A208DF80400042006 -:1053F0008DF80500022301AAD0210120EDF7BDFAA6 -:10540000002802D15FF0FF303DE11A208DF8040042 -:1054100001208DF80500022301AAD0210120EDF71B -:10542000ACFA002802D15FF0FF302CE119208DF892 -:10543000040000208DF80500022301AAD0210120DC -:10544000EDF79BFA002802D15FF0FF301BE11B2033 -:105450008DF804008DF80540022301AAD021012017 -:10546000EDF78BFA002802D15FF0FF300BE1FFB2BD -:10547000002F0FD01C208DF804008DF8054002236A -:1054800001AAD0210120EDF778FA002802D15FF0BF -:10549000FF30F8E064B2002C02D0C820FFF75CFCBB -:1054A0006A208DF8040044208DF80500022301AA2B -:1054B000D0210120EDF761FA002802D15FF0FF3022 -:1054C000E1E023208DF80400FFB2002F03D0082074 -:1054D0008DF8050002E070208DF80500022301AA76 -:1054E000D0210120EDF749FA002802D15FF0FF300A -:1054F000C9E00A20FFF730FC002408E0E4B20020F5 -:1055000045F82400E4B2002046F82400641CE4B20C -:10551000032CF3DB5FF00009B9F1320F6EDA0A20D9 -:10552000FFF71AFC0220009002AB7222D02101206A -:10553000EDF765FA002802D15FF0FF30A3E002A882 -:10554000FFF7E1FC9DF8061090FBF1F8B8F1070FAA -:1055500002DA7FF0010096E000241AE05FFA8AFA8E -:1055600055F82AB05FFA8AFA02A810EB4A00FFF752 -:10557000CAFC0BFA80F05FFA8AFA45F82A001AF1A1 -:10558000010A5FFA8AFABAF1030FE7DB19F10109A0 -:10559000641CE4B24445BFDAB9F1320FBCDA9DF8BD -:1055A0000600009002AB7422D0210120EDF727FA0B -:1055B000002802D15FF0FF3065E0FFB2002F1AD063 -:1055C0005FF0000A5FFA8AFABAF1030FDEDA5FFAD7 -:1055D0008AFA56F82AB05FFA8AFA02A810EB4A0053 -:1055E000FFF791FC0BFA80F05FFA8AFA46F82A007E -:1055F0001AF1010AE6E75FF0000AC2E723208DF8FE -:10560000040000208DF80500022301AAD02101200A -:10561000EDF7B3F9002802D15FF0FF3033E05FF01F -:10562000000A0FE05FFA8AFA55F82A004FF47A71FF -:105630004843322190FBF1F05FFA8AFA45F82A00DC -:105640001AF1010A5FFA8AFABAF1030FEADBFFB234 -:10565000002F17D05FF0000A0FE05FFA8AFA56F8C1 -:105660002A004FF47A714843322190FBF1F05FFA3F -:105670008AFA46F82A001AF1010A5FFA8AFABAF1A0 -:10568000030FEADB012005B0BDE8F08F2DE9F04300 -:1056900089B004000D00160000275FF0010801A882 -:1056A000002101605FF000090320009001AB0D2292 -:1056B000D0210120EDF7A3F9002801D15FF0FF38D8 -:1056C0005FF0000905E005A8002140F8291019F154 -:1056D0000109B9F1030F11DA01A819F80000002837 -:1056E000F1D001A819F80000DFF8681911EB4000AB -:1056F00030F8020C05A941F82900E8E75FF000093D -:105700001FE002A850F82900DFF84C19884207DA98 -:10571000DFF84809EDF7DCF8012010FA09F007433B -:1057200002A850F82900DFF83819884207DBDFF8B3 -:105730003409EDF7CDF8012010FA09F0074319F10B -:105740000109B9F1030F2ADA55F8290056F8291092 -:10575000401A07F00EFC02A941F8290005A850F8EC -:1057600029000028CDD002A850F8290005A951F839 -:10577000291090FBF1F0B0F57A7007F0FAFB24F8ED -:10578000190034F91900B0F5FA7FD8DDDFF8D80830 -:10579000EDF79EF8012010FA09F00743CFE7B4F9BE -:1057A00004000090B4F90230B4F900203900DFF8A9 -:1057B000BC08EDF78DF8002F05D0DFF8B408EDF741 -:1057C00087F87FF00208404640B209B0BDE8F08398 -:1057D00038B505000020ADF800000020ADF802004B -:1057E000ECF7FBFF040038208DF8000000208DF856 -:1057F0000100022300AAD0210020EDF7BEF8002806 -:1058000001D1002074E000F0B5FA002801D1002099 -:105810006EE01F208DF800004B208DF80100022360 -:1058200000AAD0210020EDF7A8F8002801D100201F -:105830005EE01E208DF8000006208DF80100022396 -:1058400000AAD0210020EDF798F8002801D100200F -:105850004EE069208DF80000C0208DF80100022381 -:1058600000AAD0210020EDF788F8002801D10020FF -:105870003EE0012201210320EDF7FFF90020EDF7C2 -:10588000FEF938208DF8000040208DF80100022339 -:1058900000AAD0210020EDF770F8002801D10020E7 -:1058A00026E0012028702000407DC046012810D04D -:1058B00001212000EDF75FF9BDF80200401CADF8B2 -:1058C0000200BDF802003228EDDBDFF8A807ECF794 -:1058D000FFFF012200210320EDF7CFF90020EDF7B3 -:1058E000CEF900F03DFB002801D1002000E00120AE -:1058F00032BD70B58EB0040000A80021002206C0A1 -:105900000838012500260BA80021002200230EC024 -:105910000C3808A80021002200230EC00C3805A86E -:105920000021002200230EC00C3802A80021002212 -:1059300000230EC00C38FFF7ECFA002801D100203C -:1059400056E0FFF7F9FB002806D00126FFF7C9FC57 -:10595000002803D100204BE0002049E0012302AAE7 -:1059600008A90020FFF7FBFC05006DB2012D04D053 -:10597000DFF8FC06ECF7ACFF1CE0012305AA0BA93D -:105980007FF01F00FFF7EBFC05006DB2012D04D086 -:10599000DFF8D406ECF79CFF0CE005AA02A900A8EA -:1059A000FFF774FE05006DB2012D03D0DFF8AC06E1 -:1059B000ECF78EFF2670BDF800006070BDF90000A6 -:1059C0000012A070BDF80200E070BDF902000012E4 -:1059D0002071BDF804006071BDF904000012A071CF -:1059E000E571FFF701FB002801D1002000E0012054 -:1059F0000EB070BD80B5DFF880060078002809D1B0 -:105A0000FFF7D3F9002801D1002004E0DFF8680691 -:105A100001210170012002BD3436002000B583B0A1 -:105A200000208DF806000020ADF804000120009051 -:105A30000DF106036B22D0210020ECF7E0FF0028D7 -:105A400001D100207FE09DF80600400612D56B20B2 -:105A50008DF804009DF8060010F0BF008DF80500D9 -:105A6000022301AAD0210020ECF787FF002801D1F2 -:105A7000002068E0012000900DF106036C22D02187 -:105A80000020ECF7BCFF002801D100205BE06C2077 -:105A90008DF804009DF8060010F0C7008DF8050091 -:105AA000022301AAD0210020ECF767FF002801D1D2 -:105AB000002048E01D208DF8040043208DF80500EB -:105AC000022301AAD0210020ECF757FF002801D1C2 -:105AD000002038E01C208DF8040000208DF805001F -:105AE000022301AAD0210020ECF747FF002801D1B2 -:105AF000002028E020208DF8040080208DF805008B -:105B0000022301AAD0210020ECF737FF002801D1A1 -:105B1000002018E01F208DF8040080208DF805007B -:105B2000022301AAD0210020ECF727FF002801D191 -:105B3000002008E0DFF84405007850F00100DFF8AD -:105B40003C15087001200EBD00B583B000208DF813 -:105B500006000020ADF80400012000900DF10603BE -:105B60006C22D0210020ECF74AFF002801D1002050 -:105B700030E06C208DF804009DF8060050F03800ED -:105B80008DF80500022301AAD0210020ECF7F5FED4 -:105B9000002801D100201DE0DFF8E0040078800734 -:105BA0000FD46B208DF8040040208DF805000223EF -:105BB00001AAD0210020ECF7E0FE002801D100204E -:105BC00008E0DFF8B804007810F0FE00DFF8AC144D -:105BD000087001200EBD0000F8A40208B4BC00202B -:105BE000B8BC0020B9BC0020BABC0020BBBC00205F -:105BF000B7BC0020BCBC002000B583B000208DF8ED -:105C000004000020ADF806000120009001AB6C22DA -:105C1000D0210020ECF7F3FE002801D1002014E091 -:105C20006C208DF806009DF8040050F038008DF8C7 -:105C3000070002230DF10602D0210020ECF79DFEA3 -:105C4000002801D1002000E001200EBD7FB5040036 -:105C50000D0002A80021002206C008380020ADF87F -:105C60000400ECF7BAFD0600DFF814040068401CDD -:105C7000DFF80C1408600120009002AB6B22D021E9 -:105C80000020ECF7BCFE002801D100206EE09DF85A -:105C9000080040061AD56B208DF804009DF8080016 -:105CA00010F0BF008DF80500022301AAD0210020CA -:105CB000ECF763FE002801D1002057E005213000F9 -:105CC000ECF759FFDFF8BC03ECF702FE012000906F -:105CD00002AB6C22D0210020ECF791FE002801D10C -:105CE000002043E09DF80800382108421CD06C20B9 -:105CF0008DF804009DF8080010F0C7008DF805002D -:105D0000022301AAD0210020ECF737FE002801D1A0 -:105D100000202BE005213000ECF72DFFDA48ECF7EE -:105D2000D7FDDA4801210160EDB2009502AB3B22BC -:105D3000D0210020ECF763FE002804D1D448ECF712 -:105D4000C7FD002012E09DF8090020709DF80800B2 -:105D500060709DF80B00A0709DF80A00E0709DF83F -:105D60000D0020719DF80C006071012004B070BD21 -:105D7000B6BC002030B583B001240020ADF8060089 -:105D800000208DF80400ECF728FD050001200090AC -:105D900001AB6B22D0210020ECF731FE002801D1AD -:105DA00000208BE09DF8040040061AD56B208DF88A -:105DB00006009DF8040010F0BF008DF807000223D4 -:105DC0000DF10602D0210020ECF7D7FD002801D10B -:105DD000002073E005212800ECF7CDFEAD48ECF77C -:105DE00077FD1D208DF8060008208DF8070002239E -:105DF0000DF10602D0210020ECF7BFFD002801D1F3 -:105E000000205BE00120009001AB6C22D02100203B -:105E1000ECF7F5FD002801D100204FE06C208DF853 -:105E200006009DF8040050F080008DF804009DF8F5 -:105E3000040050F007008DF804009DF8040010F0F5 -:105E4000C7008DF804009DF804008DF807000223B8 -:105E50000DF10602D0210020ECF78FFD002801D1C2 -:105E600000202BE00120009001AB6B22D02100200C -:105E7000ECF7C5FD002801D100201FE06B208DF854 -:105E800006009DF8040010F0BF008DF804009DF896 -:105E9000040050F020008DF804009DF804008DF8F7 -:105EA000070002230DF10602D0210020ECF765FD6A -:105EB000002801D1002001E02000C0B23EBD80B525 -:105EC0000020ADF80000FFF755FF002801D10020A9 -:105ED00045E01F208DF800004B208DF801000223C3 -:105EE00000AAD0210020ECF748FD002801D10020B5 -:105EF00035E01E208DF8000006208DF801000223F9 -:105F000000AAD0210020ECF738FD002801D10020A4 -:105F100025E069208DF80000C0208DF801000223E3 -:105F200000AAD0210020ECF728FD002801D1002094 -:105F300015E0012201210320ECF79FFE38208DF8A7 -:105F4000000040208DF80100022300AAD02100208B -:105F5000ECF713FD002801D1002000E0012002BD74 -:105F600080B50020ADF80000012200210320ECF7ED -:105F700084FE38208DF8000000208DF801000223F7 -:105F800000AAD0210020ECF7F8FC002801D1002065 -:105F900040E06B208DF8000000208DF80100022306 -:105FA00000AAD0210020ECF7E8FC002801D1002055 -:105FB00030E01D208DF8000000208DF80100022344 -:105FC00000AAD0210020ECF7D8FC002801D1002045 -:105FD00020E06C208DF8000000208DF801000223E5 -:105FE00000AAD0210020ECF7C8FC002801D1002035 -:105FF00010E069208DF8000000208DF801000223D8 -:1060000000AAD0210020ECF7B8FC002801D1002024 -:1060100000E0012002BD80B50178012905D1FFF71C -:10602000D7FB00280AD1002009E00178022905D118 -:10603000FFF75FFC002801D1002000E0012002BD35 -:1060400080B515490020F5F7DFFE14490B20F5F760 -:10605000DBFE01BD208C0208003E490030A502088D -:1060600001EFE70038A5020828A5020890A402085D -:1060700040A5020848A5020897BD00205CBE00208C -:10608000F8BD002050A5020858A50208FCBD00205C -:1060900060A5020868A50208F8A302081CA402086B -:1060A00080B50020DFF8641B0978002906D1FEF7CF -:1060B0007CFEDFF8581B01220A7000E00120C0B20C -:1060C00002BD00B583B000208DF806000020ADF8B9 -:1060D0000400012000900DF106036B22D021012065 -:1060E000ECF78DFC002801D100205BE06B208DF8DF -:1060F00004009DF8060010F0BF008DF80500022393 -:1061000001AAD0210120ECF738FC002801D10020A1 -:1061100048E0012000900DF106036C22D0210120FF -:10612000ECF76DFC002801D100203BE06C208DF8DD -:1061300004009DF8060010F0F8008DF80500022319 -:1061400001AAD0210120ECF718FC002801D1002081 -:1061500028E01B208DF8040008208DF8050002239C -:1061600001AAD0210120ECF708FC002801D1002071 -:1061700018E01A208DF8040003208DF80500022392 -:1061800001AAD0210120ECF7F8FB002801D1002062 -:1061900008E0DFF87C0A007850F00200DFF8701A9F -:1061A000087001200EBD00B583B000208DF80600F8 -:1061B0000020ADF80400012000900DF106036C22D0 -:1061C000D0210120ECF71BFC002801D1002030E099 -:1061D0006C208DF804009DF8060050F007008DF843 -:1061E0000500022301AAD0210120ECF7C6FB0028FC -:1061F00001D100201DE0DFF8180A0078C0070FD495 -:106200006B208DF8040040208DF80500022301AAC0 -:10621000D0210120ECF7B1FB002801D1002008E0DB -:10622000DFF8EC09007810F0FD00DFF8E4190870E1 -:1062300001200EBD00B583B000208DF804000020C1 -:10624000ADF806000120009001AB6C22D0210120A6 -:10625000ECF7D5FB002801D1002014E06C208DF86C -:1062600006009DF8040050F007008DF80700022397 -:106270000DF10602D0210120ECF77FFB002801D1AF -:10628000002000E001200EBD7FB5040002A800211F -:10629000002206C0083800260020ADF80400ECF704 -:1062A0009CFA05000120009002AB6B22D021012056 -:1062B000ECF7A5FB002801D1002083E09DF8080041 -:1062C000400625D56B208DF804009DF8080010F0DD -:1062D000BF008DF80500022301AAD0210120ECF7B0 -:1062E0004CFB002801D100206CE00A212800ECF7CB -:1062F00042FCDFF82009ECF7EBFA002603E0F6B2E7 -:1063000000203055761CF6B2062EF8DB012059E04D -:106310000120009002AB6C22D0210120ECF76FFB32 -:10632000002801D100204DE09DF808000721084217 -:1063300025D06C208DF804009DF8080010F0F800BE -:106340008DF80500022301AAD0210120ECF715FBEE -:10635000002801D1002035E00A212800ECF70BFCD1 -:10636000DFF8B408ECF7B4FA002603E0F6B2002038 -:106370003055761CF6B2062EF8DB012022E006200E -:10638000009002AB4322D0210120ECF738FB00281B -:1063900005D1DFF88808ECF79BFA002012E09DF8A1 -:1063A000090020709DF8080060709DF80B00A07037 -:1063B0009DF80A00E0709DF80D0020719DF80C001A -:1063C0006071012004B070BD2DE9F64FADF63C6D53 -:1063D00005000020ADF8080003A81421ECF712FD19 -:1063E000002608A80021002200230EC00C385FF010 -:1063F000000940F68C1068444FF49661ECF702FDFA -:10640000FFA8E0304FF49661ECF7FCFC0BA84FF4CA -:106410009661ECF7F7FC5FF00008002700240020ED -:10642000070000E07F1C032F80F2BA806B208DF8FC -:106430000800781C8DF80900022302AAD02101204F -:10644000ECF79BFA002801D1002099E13220FEF7F9 -:1064500083FC6A208DF8080044208DF8090002238F -:1064600002AAD0210120ECF788FA002801D10020EF -:1064700086E1012409E019EB060608A850F8270078 -:1064800019EB000008A941F827002000441E01284C -:1064900075DB23208DF8080070208DF80900022399 -:1064A00002AAD0210120ECF768FA002801D10020CF -:1064B00066E14B20FEF750FC23208DF808000020F9 -:1064C0008DF80900022302AAD0210120ECF755FA29 -:1064D000002801D1002053E10220009003AB72227A -:1064E000D0210120ECF78BFA002801D1002047E1F0 -:1064F00003A8FEF708FD00EE100AB8EEC00A10EE81 -:10650000100AF0F7FFFFDFF81827DFF81837F1F768 -:1065100021F8F9F737FF8146B9F148000128B4DBCB -:106520005FF000081DE003A8FEF7EDFC18EB060184 -:1065300040F68C126A4422F811000DF10E00FEF7AD -:10654000E2FC18EB0601FFAAE03222F8110004A8D1 -:10655000FEF7D9FC18EB06010BAA22F8110018F17E -:106560000108C84587DA0620009003AB7422D021C9 -:106570000120ECF744FA0028D5D1002000E12320C7 -:106580008DF8080000208DF80900022302AAD0210E -:106590000120ECF7F2F900287FF444AF0020EFE08F -:1065A000002E01D0340000E001245FF0000800203C -:1065B0000021C5E9000100200021C5E902010020F9 -:1065C0000021C5E9040122E0D5E9000140F68C1262 -:1065D0006A4432F91820D31780185941C5E90001DF -:1065E000D5E90201FFAAE03232F91820D31780184A -:1065F0005941C5E90201D5E904010BAA32F9182075 -:10660000D31780185941C5E9040118F10108B045B4 -:10661000DADBD5E900012200E317F7F72FFCC5E923 -:106620000001D5E902012200E317F7F727FCC5E9CD -:106630000201D5E904012200E317F7F71FFCC5E9C1 -:1066400004015FF00008DDF83C0E00220023C0E9E1 -:106650000023DDF83C0E00220023C0E90223DDF810 -:106660003C0E00220023C0E9042382E0DDF83C2E2A -:10667000D2E90001CDE9000140F68C10684430F900 -:106680001800C117D5E90023801A994140F68C12F1 -:106690006A4432F918A05FEAEA7BD5E90023BAEB35 -:1066A00002027BEB0303A2FB00AB02FB01BB03FB7B -:1066B00000BBDDE9000110EB0A0051EB0B01DDF836 -:1066C0003C2EC2E90001DDF83C2ED2E90201CDE901 -:1066D0000001FFA8E03030F91800C117D5E9022306 -:1066E000801A9941FFAAE03232F918A05FEAEA7BEA -:1066F000D5E90223BAEB02027BEB0303A2FB00AB5A -:1067000002FB01BB03FB00BBDDE9000110EB0A004B -:1067100051EB0B01DDF83C2EC2E90201DDF83C2E05 -:10672000D2E90401CDE900010BA830F91800C11726 -:10673000D5E90423801A99410BAA32F918A05FEA1F -:10674000EA7BD5E90423BAEB02027BEB0303A2FB4D -:1067500000AB02FB01BB03FB00BBDDE9000110EB5A -:106760000A0051EB0B01DDF83C2EC2E9040118F1DF -:106770000108B045FFF67AAFDDF8400E0660012053 -:106780000DF6446DBDE8F08F2DE9F04389B00400AB -:106790000D00160001275FF0000801A8002101602C -:1067A0000320009001AB0022D0210120ECF727F953 -:1067B000002801D15FF0FF375FF0000907E04FFAD2 -:1067C00089F905A8002140F8291019F101094FFAAB -:1067D00089F9B9F1030F17DA4FFA89F901A819F805 -:1067E00000000028EBD04FFA89F901A819F8000041 -:1067F000DFF8341411EB400030F8020C4FFA89F93D -:1068000005A941F82900E0E75FF0000925E04FFA0B -:1068100089F902A850F82900DFF81014884208DA34 -:10682000DFF80C04ECF754F8012010FA09F050EAF4 -:1068300008084FFA89F902A850F82900DFF8F41384 -:10684000884208DBDFF8F003ECF742F8012010FA89 -:1068500009F050EA080819F101094FFA89F9B9F16C -:10686000030F3ADA4FFA89F955F829004FFA89F9F6 -:1068700056F82910401A06F07CFB4FFA89F902A954 -:1068800041F829004FFA89F905A850F82900002895 -:10689000BDD04FFA89F902A850F829004FFA89F9BA -:1068A00005A951F8291090FBF1F0B0F57A7006F0C7 -:1068B00060FB4FFA89F924F819004FFA89F934F985 -:1068C0001900B0F5FA7FC6DDDC48ECF701F80120CD -:1068D00010FA09F050EA0808BDE74FFA88F8B8F155 -:1068E000000F04D0D648EBF7F3FF7FF00207380023 -:1068F00040B209B0BDE8F0832DE9F0439DB004003B -:10690000012501260CA81821ECF77CFA06A818210D -:10691000ECF778FA02A80021016000A8002100220B -:1069200006C00838002718A80021002200230EC046 -:106930000C3815A80021002200230EC00C3812A824 -:106940000021002200230EC00C3803A800210022E1 -:1069500000230EC00C38BB48D0F80480FEF7D9FAEB -:10696000002801D10020EDE0FEF7E6FB0500EDB2C6 -:10697000012D09D1012702AA06A90CA8FFF724FDC1 -:10698000002803D10020DDE00020DBE0FEF7A9FCB9 -:10699000002801D10020D5E0002303AA15A900207A -:1069A000FEF7DDFC060076B2012E02D0A648EBF71A -:1069B0008FFF002312AA18A97FF01F00FEF7CFFC5B -:1069C000060076B2012E02D0A048EBF781FF18AA8C -:1069D00015A900A8FFF7D8FE060076B2012E02D056 -:1069E0009B48EBF775FF5FF0000918E05FFA89F943 -:1069F00018EB49025FFA89F90CA810EBC903D3E937 -:106A000000018000A2F858005FFA89F918EB4900EC -:106A1000B0F958108F48EBF75BFF19F101095FFAE5 -:106A200089F9B9F1030FE1DB2770BDF80000607050 -:106A3000BDF900000012A070BDF80200E070BDF9C1 -:106A4000020000122071BDF804006071BDF904005D -:106A50000012A071E6710298207202980012607212 -:106A600002980014A07202980016E072DDE90C0191 -:106A70002073DDE90C0100B200126073DDE90C0146 -:106A80000014A073DDE90C010016E073DDE90E01CE -:106A90002074DDE90E0100B200126074DDE90E0120 -:106AA0000014A074DDE90E010016E074DDE91001A8 -:106AB0002075DDE9100100B200126075DDE91001FA -:106AC0000014A075DDE910010016E075DDE906018E -:106AD0002076DDE9060100B200126076DDE90601EC -:106AE0000014A076DDE906010016E076DDE9080174 -:106AF0002077DDE9080100B200126077DDE90801C6 -:106B00000014A077DDE908010016E077DDE90A014D -:106B100084F82000DDE90A0100B2001284F82100A7 -:106B2000DDE90A01001484F82200DDE90A010016FB -:106B300084F82300FEF758FA002801D1002001E074 -:106B40002800C0B21DB0BDE8F08330B583B00400AA -:106B50000020ADF8040000203A494D68697A002908 -:106B600007D1286E40688047EBF737FE0A21ECF723 -:106B700002F80220009001AB4122D0210120EBF766 -:106B80003EFF002801D1002017E09DF805009DF888 -:106B9000041050EA0120032110FB01F04FF47A7138 -:106BA00090FBF1F01530207000206070687A0028AA -:106BB00002D1286E8068804701203EBD80B50178F3 -:106BC000002905D1FFF798FE00280AD1002009E02E -:106BD0000178012905D1FFF7B8FF002801D1002075 -:106BE00000E0012002BD80B5C0B2062806D1080031 -:106BF000FFF7ABFF002801D1002000E0012002BD1B -:106C000080B515490120F5F7FFF801BD97BD0020BB -:106C10005CBE002070A5020878A5020880A50208C5 -:106C20002D211FF46C56C53F208E020830FD130045 -:106C300090A5020879E2D10098A5020888A502086B -:106C4000A0A5020800000020A8A50208B0A502081F -:106C5000B8A5020810A5020840A40208DFF8D40372 -:106C6000704730B583B00020ADF806008DF8040001 -:106C70000120009001AB002218210220EBF7BFFE9B -:106C800004469DF8040048281FD131208DF80600E5 -:106C90000DF106050120687002230DF1060218218E -:106CA0001846EBF76AFE00280DD031208DF806005B -:106CB0000020687002230DF1060218211846EBF738 -:106CC0005CFE002802D100203EBD002418220021D5 -:106CD000D848ECF77FFF20463EBD70B582B000205B -:106CE000ADF80000F8F75FF80446D34D6878012846 -:106CF0001CD032208DF8000000AE012070700223FD -:106D000000AA18211846EBF738FE00280CD03120D5 -:106D10008DF8000001207070022300AA1821184687 -:106D2000EBF72BFE002803D1002076BD0120287050 -:106D3000281D61698847012076BD38B50020ADF86F -:106D40000000F8F730F80446BB4D2878012812D02F -:106D500031208DF8000000208DF80100022300AAE8 -:106D600018211846EBF709FE002801D1002032BD9A -:106D70000020687001E000202870281D21698847E4 -:106D8000012032BD80B50020ADF8000031208DF823 -:106D9000000000208DF80100022300AA18211846E7 -:106DA000EBF7EBFD002801D1002002BD012002BD60 -:106DB0007CB504460020ADF806008DF804000120E3 -:106DC000009001AB002218210220EBF718FE0546C7 -:106DD0009DF80400482829D131208DF806000DF1D6 -:106DE00006061F20707002230DF1060218211846B6 -:106DF000EBF7C3FD002817D0032000902346602244 -:106E000018210220EBF7FBFD00280DD031208DF872 -:106E100006000020707002230DF1060218211846AA -:106E2000EBF7ABFD002802D1002076BD00252846F7 -:106E300076BD0021814A02E00B5C8B54491C1B2962 -:106E4000FADB7F48C0F8D423012070472DE9F043D6 -:106E500087B004460D4616461F464FF000084046D0 -:106E6000ADF8040002A841460A460B460EC04FF09A -:106E7000050906C00120009002AB10221821022053 -:106E8000EBF7BDFD9DF80810C9070ED501280CD100 -:106E9000082000900DF10903112218210220EBF7C0 -:106EA000AEFD002807D140466DE04846A0F101093B -:106EB00080B20028DED163489DF8081001709DF86B -:106EC000101041700AE002A800EB48008178407879 -:106ED00010EB012024F8180008F10108B8F1090F9F -:106EE000F1DB5948D0F80C8008F10C0999F815200D -:106EF0002146D9F80C00D8F80C30C018EBF738FC54 -:106F00004046EAF7AFFE99F81520D9F80C00D8F8FA -:106F10000C1041182046EBF72BFCDFF8248105AA62 -:106F200021464046F8F79EF998F9F4023860B8F81F -:106F3000EE00288008F2EE00418869808188A980EF -:106F400081892180C1896180008AA0802088298868 -:106F5000401A308060886988401A7080A088A988AB -:106F6000401AB08031208DF8040001208DF8050012 -:106F7000022301AA18211846EBF7FFFC002801D1D3 -:106F8000002000E0012007B0BDE8F08330B585B0F7 -:106F900004460020ADF8040002A800210A460B4672 -:106FA0000EC005250120009002AB102218210220FE -:106FB000EBF725FD9DF80810C9070ED501280CD167 -:106FC000082000900DF10903112218210220EBF78F -:106FD00016FD002806D1002029E02846451E80B273 -:106FE0000028DFD117489DF80810017002A90A7A1D -:106FF00042704878207088786070C878A0700879EE -:10700000E070487920719DF80E00607131208DF894 -:10701000040001208DF80500022301AA182118465A -:10702000EBF7ABFC002801D1002000E0012005B007 -:1070300030BD0000FCBA0020A0BB0020C4BA002074 -:10704000E077002058BE002000000020F8B504467C -:107050000025EAF781FD0746FFF700FE0646B7F870 -:107060005C00400717D406F1140306F10C02B11DB1 -:107070003046FFF7EBFE00280DD12846F2BD06EBA7 -:107080004500C18804F8151004EB4501B0F906006D -:10709000001248706D1C032DF1DB7069A071012096 -:1070A000F2BDF8B504460025EAF756FD0746FFF79E -:1070B000D5FD0646B7F85C00000705D52046FFF76A -:1070C00065FF002821D109E006F1140306F10C0246 -:1070D000B11D3046FFF7BAFE002814D12846F2BD94 -:1070E00036F8150004F8150004EB450036F91510C4 -:1070F0000912417006EB45018A898271B1F90C10C1 -:107100000912C1716D1C032DEADB0120F2BD7CB5B3 -:1071100004460020ADF806008DF80400EBF75DFB97 -:1071200005460120009001AB002218210220EBF758 -:1071300066FC9DF80410482932D131208DF80600F4 -:107140000DF106061F20707002230DF106021821B2 -:107150001846EBF712FC00281BD031208DF80600F2 -:107160000020707002230DF1060218211846EBF77B -:1071700004FC00280DD001212846EBF7FCFC01207F -:10718000009001AB312218210220EBF738FC0028D7 -:1071900001D1002076BD9DF804002070012076BD4D -:1071A000FF21217076BD2DE9F04387B0044604A885 -:1071B00000210A460B460EC00846ADF80C004FF001 -:1071C0000509EBF70AFB05460220009004AB0022FC -:1071D0001821EBF714FC06469DF81000482840F0F3 -:1071E0000B819DF81000207004AF7878607031201A -:1071F0008DF80C000DF10C081F2088F80100022307 -:1072000003AA18211846EBF7B8FB002800F0F58018 -:107210000320009004AB602218210220EBF7EFFB63 -:10722000002800F0EA809DF81000A0707878E070E7 -:10723000B878207131208DF80C00002088F801000A -:10724000022303AA18211846EBF797FB002800F049 -:10725000D4800120009004AB312218210220EBF7EA -:10726000CEFB002800F0C9809DF810006075312029 -:107270008DF80C00012088F80100022303AA1821D0 -:107280001846EBF77AFB002800F0B7801E2128464D -:10729000EBF771FC0120009004AB102218210220B2 -:1072A000EBF7ADFB06469DF81000C0070DD5012E8B -:1072B0000BD1082000900DF111031122182102209A -:1072C000EBF79DFB002806D160E04846A0F10109DC -:1072D00080B20028DED1B8790290787901903879AF -:1072E0000090FB78BA7879780FF26810EBF7F0FA33 -:1072F000B878797811EB00203979FA7812EB01210E -:10730000BA797B7913EB022203461BB21B1263711D -:10731000A071084600B20012E0712172104600B25E -:1073200000126072A2729DF81000E072387A207329 -:1073300031208DF80C00102088F80100022303AAE8 -:1073400018211846EBF719FB002856D01E212846B5 -:10735000EBF711FC4FF005090120009004AB10225F -:1073600018210220EBF74BFB06469DF81000C007E2 -:107370000ED5012E0CD1082000900DF11103112221 -:1073800018210220EBF73BFB002807D1002035E055 -:107390004846A0F1010980B20028DDD1B8790290F9 -:1073A0007879019038790090FB78BA7879780FF283 -:1073B000C000EBF78DFAB878797811EB00203979B5 -:1073C000FA7812EB0121BA797B7913EB022203469A -:1073D0001BB21B126373A073084600B20012E07365 -:1073E0002174104600B200126074A2749DF810005F -:1073F000E074387A207500E00026304607B0BDE81A -:10740000F08318B404460B4611460020032C04D028 -:10741000042C05D0072C06D008E0184614BCC7E49D -:10742000184612BC73E6184612BC02E512BC70473F -:1074300010B50FF2580421460220F4F7E5FC0FF2D4 -:1074400070010420F4F7E0FC21460320BDE8104061 -:10745000F4F7DABC474D53312D25642C2025642CDC -:107460002025642C2025642C2025642C20256400F4 -:10747000474D53322D25642C2025642C2025642C67 -:107480002025642C2025642C20256400636C0108D1 -:10749000DB6C01083B6D0108856D010800000000F0 -:1074A000A370010800000000A7710108037401081F -:1074B000636C0108DB6C01083B6D0108856D0108F8 -:1074C000000000004D70010800000000A7710108D5 -:1074D000037401087CB500242046ADF80400EBF7E6 -:1074E0007CF9054620208DF8040001AE204670701E -:1074F000022301AABA210520EBF73FFA002801D1A7 -:10750000204676BD01212846EBF735FB641C01209F -:10751000009001AB2122BA210520EBF770FA002878 -:1075200001D1002076BDA4B2B4F5FA7F05DD0FF2DB -:107530001C20EBF7CDF9002076BD9DF80400000675 -:10754000E0D420208DF8040002207070034601AAC8 -:10755000BA210520EBF711FA002801D1002076BDF1 -:10756000012076BD1CB504460020ADF804000120C2 -:10757000009001AB0F22BA210520EBF740FA00285A -:1075800001D1002016BD9DF80400BD2834D100F0C3 -:1075900035F8002801D1002016BD032001E0401E6F -:1075A00040B2002807D40FF2BC1151F830108C42C1 -:1075B00001D20028F3D120208DF8040001AC9420E2 -:1075C0006070022301AABA210520EBF7D6F9002842 -:1075D00001D1002016BD10208DF804007F206070BE -:1075E000022301AABA210520EBF7C7F9002801D12F -:1075F000002016BD012016BD002016BD80B500205C -:10760000ADF8000020208DF8000000208DF801006A -:10761000022300AABA210520EBF7AFF9002805D113 -:107620000FF23010EBF754F9002002BD012002BD2B -:1076300080B58F20FFF796FF002801D1002002BD02 -:10764000012002BD80B5FFF745FF002805D10FF2EC -:107650000C10EBF73DF9002002BD012002BD80B502 -:10766000FFF7E6FF002801D1002002BD012002BD86 -:1076700080B5FFF7C3FF002801D1002002BD012023 -:1076800002BD01207047012070471FB5044601A8C4 -:1076900000210A460B460EC00120009001AB0F22CC -:1076A000BA210520EBF7ABF9002821D09DF80400A2 -:1076B000BD281DD10520009001ABA822BA21EBF70F -:1076C0009EF9002801D1002013E09DF804002070ED -:1076D00001A8417861708178A1700021E170C178C2 -:1076E000217100796071E01C00F006F8012000E0D3 -:1076F000002004B010BD00004178007840EA01206D -:107700004FF4F07190FBF1F000EE100AB8EEC00AF1 -:10771000DFED070A30EE200ABDEEC00A10EE100AB7 -:1077200080B204490870000A4870012070470000C8 -:1077300000002A42B2BC002001207047012070479F -:107740000FF240010520F4F75FBB000042522D52BA -:107750004600000042522D434600000042522D5088 -:1077600046000000280000007000000050000000EB -:10777000600000008F00000050000000E8030000DF -:1077800010000000457601085F7601087176010857 -:1077900083760108877601088B76010800000000D7 -:1077A000397701083D77010892484368DBB200F160 -:1077B0000A02E0210820EBF7E0B88E484368DBB20C -:1077C00000F10C02E0210820EBF7D7B8F0B48A4BA7 -:1077D0005C78002500E06D1CEDB28D420ED22E5C6F -:1077E0007440082602E03C46E4B2761EF3D06700FF -:1077F0002406F8D51C787C40E4B2F6E7944201D127 -:10780000012000E00020F0BC7047CDE7FEB5044643 -:10781000052600200090062301AAE0210820EBF7AE -:1078200035F90546012D03D00FF2F010EBF750F8B3 -:10783000012DEED13046461E80B20028E9D001AEBF -:10784000B278022101A8FFF7C1FF002807D07279A2 -:1078500002210DF10700FFF7B9FF002805D10FF253 -:10786000B410EBF735F80020FEBD644871789DF840 -:10787000042041EA022141F217125143604A02EB0F -:10788000A13141800188491C01804268B0F9023071 -:10789000D218426083683779F67847EA062640F6C0 -:1078A000C4177E43B61303FA86F68660554B1B6AEF -:1078B0005F7F002F19D009B292FBF1F2428096FB54 -:1078C000F1F1002242608260028042882270B0F9A9 -:1078D000020000126070A17009B20812E070B3F9E2 -:1078E0005600012803DB012002E00020FEBD00203D -:1078F00020712046E9F793FA2846FEBD3F48B0F9CB -:107900000200704730B583B03A4C6368DBB204F1D3 -:107910000E02E0210820EBF730F80020009003234E -:1079200001AAE0210820EBF7B1F80546012D05D0AA -:107930000FF2F000EAF7CCFF28463EBD01ADAA7871 -:10794000022101A8FFF742FF002801D100203EBD1F -:107950006878617808402178884201D101203EBDD5 -:1079600000203EBD2548002141608160018024E760 -:10797000012070477CB504460020207006251D4874 -:107980004368DBB200F10E02E0210820EAF7F5FFC0 -:1079900000200090032301AAE0210820EBF776F8ED -:1079A0000646012E0ED02846451E012808DBEAF7C0 -:1079B00014FF1E21EBF7DFF82846451E0128DEDA0A -:1079C000002076BD9DF80620022101A8FFF7FEFEEB -:1079D000002808D1EAF701FF1E21EBF7CCF804A03C -:1079E000EAF776FFE8E72670012076BD0000000088 -:1079F00043524300003700205037002080BD002054 -:107A00006CEEFFFF000000200FF220010820F4F7C9 -:107A1000FBB9000054482D524632000054482D5204 -:107A20004631000054482D504631000005790108C8 -:107A30006579010871790108000000000B780108E0 -:107A40000D780108000000007579010800000000B1 -:107A500038B500200246DFF8A44403E004EB8001BF -:107A60008A63401C0928F9DB1046E066A0666420A2 -:107A700020606060DFF88804A060B5EE000A84ED45 -:107A8000030A84ED040A84ED050A84ED060A84EDF8 -:107A9000070ADFF87004206205206062A0621046C9 -:107AA00003E004EB80018A63401C0928F9DB1046DF -:107AB0006067A067E06704F180057C2201462846E4 -:107AC000ECF788F80C22002104F12C00ECF782F886 -:107AD000256731BD2DE9F04106460F4690461C460C -:107AE000DFF8185485ED0B0AF0EE601AF1EE611A1A -:107AF000C5ED0C1AB1EE410A85ED0D0A0A2205F119 -:107B00002C01286F00F004FA00F040F8022801D0A0 -:107B100004280ED1A86F401CA867142198FBF1F12E -:107B2000884202DB0020E8670CE0E86F401CE86751 -:107B300008E0082801D0102804D1E86F401CE8674D -:107B40000020A867142096FBF0F0A96F814201DBAA -:107B500001206867142097FBF0F0E96F814201DB98 -:107B600002206867686F012803D0022801D0002036 -:107B70006867696F080005D021700021A967E9676F -:107B8000696701E000212170BDE8F0812DE9F8432B -:107B90002DED048B9FED9F8AD84C002020666066F7 -:107BA000E06E461CE666A76ED74D0A2F36DAD4F88B -:107BB00070900A220021484600F0C3F980460A224C -:107BC0000121484600F0BDF904EB870106EB86026F -:107BD00092008A63012F1FDB98ED000AD0ED000AA6 -:107BE00030EE600AD8ED010A90ED011A70EEC10A7C -:107BF00098ED021AD0ED021A31EE611A05EB8700FA -:107C000020EE000A00EEA00A01EE010A80ED060A4D -:107C10008A6B496B511AC163781CA0660A2E01DA7F -:107C200003202867A06E0A28C0F2DD80401EA066EF -:107C30000A221146206F04F0ABFA85ED040A0A22ED -:107C40001146206F04F0C2FA85ED050A0A2211469A -:107C5000206F04F0D9FA85ED060A002006E005EB56 -:107C60008001D1ED070A38EE208A401C0928F6DB96 -:107C7000D5ED040AB2EE041AC0EE818AD5ED050AEC -:107C800080EE819AF2EE040AC0EE209AE06E0A2895 -:107C900005DBC5ED018A85ED029AC5ED039A002644 -:107CA0000FE00A22C6F1090109B2206F00F049F97C -:107CB00095ED031AD5ED020A95ED010A00F0ACF836 -:107CC000761C0A2EEDDB606A216E88423ADAA06BE0 -:107CD0002978002908D1686601212970C5ED018A3B -:107CE00085ED029AC5ED039AA16A626E91420CDAA3 -:107CF000697800290BD1A86601216970C5ED018A58 -:107D000085ED029AC5ED039A01E0002169702168B2 -:107D1000AA6E821A914208D26A78002A05D0002001 -:107D2000A870E870012028674CE06A6E801A8142D2 -:107D300046D22878002843D00020A870E87002209E -:107D400028673FE0C5ED018A85ED029AC5ED039AEB -:107D5000002028706870A878002801D10120A87040 -:107D60009FED640A28EE000AB5EE400AF1EE10FA23 -:107D700003DC9FED610A28EE000AD4ED020AB3EE9F -:107D8000041A60EE810AF4EE400AF1EE10FA07D50B -:107D9000E878002806D1A06BE8660120E87001E0D1 -:107DA0000020E8706068A0F5FA70A16BEA6E891A8D -:107DB000884205D2E878002802D00420286701E034 -:107DC0000320286700200CE004EB8001CA6B8A6363 -:107DD000082805DA05EB80010A6ACA614A6C0A6460 -:107DE000401C0928F0DB286F012806D00DD303289A -:107DF00007D004D3042806D007E0022006E00420C0 -:107E000004E0082002E0102000E00020BDEC048B1C -:107E1000BDE8F28300000000D0ED001A31EEC00A88 -:107E20003A4981ED000AD0ED011A71EEE00AC1ED88 -:107E3000010AD0ED021A31EEC11A81ED021AB5EE37 -:107E4000400AF1EE10FA03D5B1EE400A81ED000AC6 -:107E5000F5EE400AF1EE10FA03D5B1EE600A81EDBD -:107E6000010AB5EE401AF1EE10FA03D5B1EE410A5F -:107E700081ED020A91ED000A2048D0ED030AB4EE2C -:107E8000600AF1EE10FA13D5D1ED010A90ED041A53 -:107E9000F4EE410AF1EE10FA0AD5D1ED020A90EDA6 -:107EA000051AF4EE410AF1EE10FA01D5012200E0C4 -:107EB0000022D0ED060AB4EE600AF1EE10FA14D5F5 -:107EC00091ED010AD0ED070AB4EE600AF1EE10FA66 -:107ED0000BD591ED020AD0ED080AB4EE600AF1EE7E -:107EE00010FA02D5416E491C4166016E51180166B7 -:107EF0007047000000007A4400007AC43CA20020D1 -:107F0000000040413333B33E90720020CCBC0020CF -:107F10000388934201D30023038003885B1C038002 -:107F20009BB2934201D300220280028802EB4203FB -:107F300000EB8300001D91EC030A80EC030A012092 -:107F40007047B0F90030591A09B2002901D511FA69 -:107F500082F109B201EB410200EB8200001D704783 -:107F60002DE9F843DFF8784C542200212046EBF746 -:107F700031FEDFF8745C0C2200212846EBF72AFE64 -:107F80001C22002105F11800EBF724FE1C22002121 -:107F900005F13400EBF71EFE002028654FF47A72DD -:107FA0000146DFF84C0CEBF715FE4FF47A72002116 -:107FB000DFF8400CEBF70EFE00206865DFF8386C48 -:107FC0003064DFF8387C7864B864F86470643865CD -:107FD0007865B865B064A865E8650120F0640020A4 -:107FE000306570654FF0FF30B065F0650020306699 -:107FF000F865386670667866DFF8048CC8F810009B -:10800000B066C8F814001C22014608F11800EBF70E -:10801000E1FD0020F066308670860822014605F1F9 -:108020000C00EBF7D7FD2C220021301DEBF7D2FD21 -:1080300042F21070B083F0830020308270820320FF -:10804000B08200207060A8F80C000C220146404667 -:10805000EBF7C0FDDFF8AC0BC8F80400DFF8980DB3 -:10806000C8F800004FF0FF30A8F80800002030707A -:10807000B0866861F0863C22014608F13400EBF7D7 -:10808000A9FD0020C8F87000B866A8F80E00C8F86E -:10809000740030877087C8F878003067706706F121 -:1080A00084092C22311D4846EAF762FBC5F860902E -:1080B0000020B067F067F86638677867B867A86629 -:1080C000686668672867E86601202066C8F87C0053 -:1080D000A8670020E066A066606628220146384650 -:1080E000EBF778FD0020F8670C22014607F1380015 -:1080F000EBF770FD0C22002104F15400EBF76AFD50 -:108100001022002107F12800EBF764FD1022002166 -:1081100006F1B000EBF75EFD0620F0870020C6F800 -:108120008000E867BDE8F18310B584B0DFF8D04A7D -:108130000C22214600A8EAF71BFBFFF711FF0C22D7 -:1081400000A92046EAF714FB1FBD00002DE9F84FF7 -:108150002DED0C8B82B04FF0000BD9464C46DFF86A -:108160009C5A95ED1E8AD5ED188AC5ED1E8AD5ED6F -:10817000179AC5ED189ADFF8806A96ED189AB8EE4E -:10818000490ADFED8E0A80EE80AA85ED17AAD6F89F -:1081900048A0B06DAAEB0000FA30FA21B0FBF1F173 -:1081A000FA2202FB1107BFB24C2F02DAF06C012851 -:1081B00005D12046308770870220B08794E1D6F839 -:1081C0005480B8F1040F30D3F4EE698AF1EE10FA5E -:1081D0002BD5F4EE4A9AF1EE10FA26D51AEE100AD3 -:1081E000EFF790F902460B46CDE9002318EE900A0E -:1081F000EFF788F9DFF8182CDFF8183CEFF7AAF949 -:10820000DDE90023F8F7EAF80FD29FED6D0AB4EE2E -:1082100040AAF1EE10FA08DBC5ED179AC5ED188AF1 -:1082200085ED1E8A0320B087ADE1D5ED11AAC5ED1D -:1082300012AA95ED14BA85ED15BA384600EE100A6B -:10824000B8EE400AD6ED100AC0EE800A96ED111A7B -:1082500081EE001A204668642865B06D214621E051 -:10826000401C80B2FA2800D12046DFF8842902EBB6 -:108270008002D2ED001A71EEE01A95ED112A01EE9E -:10828000A12A85ED112ADFF86C2902EB8002D2EDDC -:10829000001A71EEC11A95ED142A01EEA12A85ED9E -:1082A000142A491C89B2B942DADBD5ED110AC0EEB5 -:1082B00080BAC5ED11BAD5ED140A80EE80CA85EDFD -:1082C00014CAD5ED1DCAC5ED1BCA96ED1E0AD6ED22 -:1082D0001F0A30EE60DA85ED1DDA384600F0DAFB71 -:1082E000012803D1204630877087FDE0B8F1000FE8 -:1082F00005D1308F052802DB044648463087B8F1A7 -:10830000000F05D1708F052802DB041948467087DD -:1083100018FA84F0002830D19FEDBE8B3CEE0B0A9A -:1083200010EE100AEFF7EEF853EC182BEFF712F9F6 -:108330004A46DFF8F43AF8F751F816D33BEEAA0AAA -:1083400010EE100AEFF7DEF853EC182BEFF702F9F6 -:108350004A46DFF8D83AF8F741F806D3B3EE040AF4 -:10836000B4EE40DAF1EE10FA07D5308F401C3087BA -:10837000C6F85CA00620B087B6E0308F002802D097 -:1083800004194846308718FA84F000281DD1B7EE4A -:10839000000AB4EE40AAF1EE10FA02D50720B08729 -:1083A000A2E09FED9E0AB4EE40AAF1EE10FA09DBBE -:1083B000708F401C70870820B08795E000007A44D9 -:1083C000010040404846708703E0708F041948461A -:1083D0007087B0EE6B1AF0EE4C0AB0EE4A0A3946DE -:1083E000A4B2204600F010FC012808D1C5ED179A70 -:1083F00085ED14BAC5ED1DCAC5ED11AA74E09FED57 -:10840000880AB4EE40AAF1EE10FA02DBDFF8140D90 -:10841000E86548463087B8F1000F0CD195ED170A92 -:1084200086ED190A85ED190AC5ED13BA85ED16CA50 -:1084300085ED1CDA4CE0B6EE008A00F0CFFA012898 -:1084400018D195ED170AF0EE000A20EE200A85ED0E -:10845000170A4FF001096BEE880AC5ED110A2CEEE0 -:10846000081A85ED141AC5ED120A85ED151A85ED69 -:10847000180A641C95ED170AD5ED180A70EE200A4B -:1084800060EE880AC6ED190A95ED111AD5ED121A9B -:1084900031EE211A21EE081A85ED131A95ED141A02 -:1084A000D5ED151A31EE211A21EE081A85ED161AAE -:1084B000B4EE600AF1EE10FA02D4B9F1010F01D165 -:1084C00085ED190A3CEE8D0A20EE080A85ED1C0A9E -:1084D000204680B200F0A6F800F05BF8C6F85CA079 -:1084E0004FF0010B58467067BBF1010F02D101201C -:1084F000288001E0B08F2880A4B26C6085ED029ADC -:10850000AF81F08EE881686C2861286D6861E86D44 -:10851000A861E86CE861A86D2862706E6862C6F8B0 -:1085200058A00020306630647064F0641022014668 -:1085300005F12800EBF74EFB0C22002105F1380075 -:10854000EBF748FB0020E867708A00281BD1D6F8BB -:10855000800000280CD0306DB168401AF18FB0EB6C -:10856000510F02DB0120B0820DE00220B0820AE050 -:10857000308F718F11FA80F0032802DB0220B08265 -:1085800001E00320B082584602B0BDEC0C8BBDE880 -:10859000F28F38B50025DFF860460120C4F880006E -:1085A00000F010FC6060606DE18F884219D3206D8F -:1085B000A060DFF84C0601692162A16E616240692A -:1085C000A062606EE060206FE062208E2082608E8C -:1085D0006082DFF814060121C1670D460020C4F84F -:1085E0008000284632BDDFF8100681680165002151 -:1085F00041650182418203218182002101864186F9 -:10860000416A8166DFF8F815C26A8A670021C0F8FE -:1086100080107047000000000000E03F67661640D1 -:108620000100A0402DE9F14F2DED068B00221046F0 -:108630000146DFF8CC45DFF8C055DFF8ACC5BDF822 -:108640001830002B20D02E6D731E03F007036344F7 -:1086500006F007066644367B1E73D5F85480A8F1F1 -:1086600001030726B3FBF6F6C6EBC6069B1B04EB1D -:1086700083030726B8FBF6F6C6EBC606A8EB06068C -:1086800004EB8606B6699E6195ED198AB0EE040A80 -:10869000B4EE408AF1EE10FA0AD4DFF8603593EDBB -:1086A0001A0AF0EE080AB4EE600AF1EE10FA02D5EA -:1086B00003232B8601E004232B862E6D06F0070E84 -:1086C0000EEB0C032F8E1F73082709E0B8F1040F7F -:1086D00000D1521CBEF1010E01D50EF1080E7F1E15 -:1086E00013D00EEB0C0898F90C80B8F1030F01D1F0 -:1086F000491C03E0B8F1040F00D1401C062FE9DB50 -:10870000B8F1030FE2D1521EE4E7B5F832C0A4F885 -:108710000CC080B2804689B208EB010E0EEBDE7908 -:108720004FEA6909894506DBC14502DA04226A86F7 -:108730000CE0002A02D503226A8607E0012A02DB48 -:1087400004226A8602E093F90C206A86B5F832901A -:10875000B9F1040F00D00846CC450AD00120A88208 -:10876000688A002811D1686D04280ED30220A882DF -:108770000BE0BEF1050F03DB90FBFEF0012802DAEF -:108780000220A88201E00320A882F0EE489AB7EE0A -:10879000080AB4EE408AF1EE10FA02D5F7EE089A14 -:1087A00008E09FED8D0AB4EE408AF1EE10FA01DB8D -:1087B000F1EE029A19EE900AEEF7A4FE41EC1A0BC4 -:1087C00053EC1A2BDFF8740ADFF8741AEEF7C2FEC6 -:1087D000DFF8702ADFF8703AF7F778FF82468B46A9 -:1087E00053EC1A2BDFF8640ADFF8641AEEF7B2FED6 -:1087F00053EC1A2BEEF7AEFE02460B465046594696 -:10880000F8F752FFEEF778FF00EE100AD4ED010AF8 -:1088100020EE200A10EE100AEEF774FEDFF8C42CEA -:10882000DFF8C43CEEF796FEEEF766FF00EE100AA6 -:1088300084ED040AB4F90800022805D1DFED910A9D -:1088400020EE200A84ED040AD4ED048A95ED1A0A7C -:1088500030EE289A85ED1A9A28EEA90ADFED8A0AE9 -:1088600020EE200A84ED050AD5F854800720B8FBD5 -:10887000F0F0C0EBC000A8EB000004EB800080ED3E -:10888000060A0020E866B8F1070F20D208E004EBE2 -:10889000870090ED061A70EE810AC5ED1B0A7F1C59 -:1088A000D5ED1B0ABFB2B845F1D201EE107AB8EE91 -:1088B000411AC0EE810AC5ED1B0A14E004EB8000EA -:1088C00090ED061A70EE810AC5ED1B0A7F1CD5EDEE -:1088D0001B0ABFB238460728F0DBB1EE0C1AC0EE17 -:1088E000810AC5ED1B0A10EE100AEEF70BFE41ECF3 -:1088F000100B9FED66ABB9F1040F53EC102BDFF8B2 -:10890000EC0B0BD1DFF8E81BEEF724FE53EC1A2B2F -:10891000F7F7DCFEEEF7F0FEA0670AE0DFF8D41B05 -:10892000EEF718FE53EC1A2BF7F7D0FEEEF7E4FE45 -:10893000A067A06FEEF7E6FDDFF8BC2BDFF8BC3BCD -:10894000EEF708FE82468B462068EEF7DBFD5246C6 -:108950005B46EEF7FFFD82468B4618EE100AEEF7F7 -:10896000D1FD0022DFF8983BEEF7F4FD02460B46FE -:108970000020DFF8C01DF3F775FC52465B46EEF7AA -:10898000E9FDEEF7B9FE00EE100A84ED1E0AD5ED02 -:108990001C0A70EE800AC5ED1C0A701C286508F1DF -:1089A00001016965BDF81820002A11D0101828654A -:1089B00050186865BDF8180001EE100AB8EE411AAB -:1089C00001EE289A85ED1A9A41EE000AC5ED1C0ABF -:1089D000BDEC068BBDE8F18F01009040F8B52DEDA0 -:1089E000028B0026854F97ED178A786EEEF78AFD89 -:1089F0004FF06632DFF80C3BEEF7ACFD02460B465B -:108A000014461D4618EE100AEEF77CFD22462B4652 -:108A1000F7F7E4FC05D27848C08E022801DB012676 -:108A200017E09FED6D0AB4EE408AF1EE10FA10D512 -:108A300097ED0D0ADFED690AB4EE600AF1EE10FA67 -:108A400007DBDFED680AB4EE600AF1EE10FA00D53C -:108A5000012697ED1A0AF0EE000AB4EE600AF1EE74 -:108A600010FA0BD59FED610AB4EE408AF1EE10FAD0 -:108A700004DB6148C08E032800DB00263046BDECD5 -:108A8000028BF2BD1EC47E3F000070420000000059 -:108A900000000C40F8B52DED048B06460024574F1E -:108AA000554D688E03281DDA97ED170ADFED4F0A42 -:108AB000B4EE600AF1EE10FA14DB97ED110AF2EE53 -:108AC000040AB4EE600AF1EE10FA0BD597ED140A21 -:108AD000DFEDB90AB4EE600AF1EE10FA02D5042017 -:108AE000A887012497ED140AF3EE040AB4EE600A95 -:108AF000F1EE10FA2ED49FEDB18BD7ED150A30EEC2 -:108B0000200A10EE100AEEF7FDFC53EC182BEEF7DE -:108B100021FD0022DFF88C3CF7F760FC1AD397EDBB -:108B2000119A97ED120A39EE000A10EE100AEEF7CC -:108B3000E9FC53EC182BEEF70DFD0022DFF8683C42 -:108B4000F7F74CFC06D3B2EE040AB4EE409AF1EE0D -:108B500010FA02D50520A887012497ED170ADFED4A -:108B6000A70AB4EE600AF1EE10FA29DB97ED0C0AC1 -:108B7000D7ED0D0A80EE200ADFEDA10AB4EE600AFF -:108B8000F1EE10FA1CDB00EE106AB8EE400AD7EDE9 -:108B90000A0AC0EE800AB6EE001AF4EE410AF1EEBF -:108BA00010FA0DD5D7ED0B0A80EE800AF6EE000A1A -:108BB000B4EE600AF1EE10FA02D51520A887012460 -:108BC000102207F1280105F1B000E9F7D1FD204698 -:108BD000BDEC048BF2BD00009A99993F0100204240 -:108BE00050B200200000C84214AF00200100004035 -:108BF000A87C00209080002008A4002094AF0020D2 -:108C000014B00020000035432DE9F0412DED028B1A -:108C100008EE101A0026DFF8947B796D4018DFF813 -:108C2000908B022818D398ED170ADFED760AB4EE80 -:108C3000600AF1EE10FA0FDB98ED150AD8ED140A70 -:108C400080EE200ADFED700AB4EE600AF1EE10FA51 -:108C500002DB0921B987012602281AD39FED6B0A8E -:108C6000D8ED150A98ED141AC0EE810AF4EE400A08 -:108C7000F1EE10FA0DDBD8ED120A98ED111AC0EEE4 -:108C8000810AF4EE400AF1EE10FA02DB0A21B987FC -:108C90000126002819D0D8F87000EEF733FC4FF009 -:108CA0003332DFF8143BEEF755FC02460B46144610 -:108CB0001D46D8F87400EEF725FC22462B46F7F740 -:108CC0008DFB02D20B20B887012698ED170ADFED45 -:108CD000520AB4EE600AF1EE10FA08DA97ED190ABA -:108CE000DFED4E0AB4EE600AF1EE10FA1ADB98EDF1 -:108CF000140ADFED4B0AB4EE600AF1EE10FA0BD461 -:108D000098ED110ADFED470AB4EE600AF1EE10FAB1 -:108D100002D4F88E022805DB788E032802DB0C20B3 -:108D2000B887012698ED130ADFED3D0AB4EE600A1C -:108D3000F1EE10FA08D498ED1A0AF1EE040AB4EE36 -:108D4000600AF1EE10FA14D5DFF8700A416E806EF9 -:108D50004018F3F76FFA0022DFF8643AEEF7FAFBF7 -:108D60000122DFF8403AF7F725FD02D80D20B88739 -:108D70001646B8EEC80ADFF84C0AD8ED0E0AC0EE67 -:108D8000800AC0ED150AD8ED0F0AC0EE800AC0EDCA -:108D9000160AD8ED100A80EE800A80ED170A0C2220 -:108DA00000F1540107F1C000E9F7E2FC3046BDECE8 -:108DB000028BBDE8F08100000000204200000000AE -:108DC0000000E03F0020DFF8E4190A6D12F10A0FFD -:108DD0000FD29FEDD30AD1ED1A0AF4EE400AF1EE5C -:108DE00010FA06DAD1ED1C0AF4EE400AF1EE10FAA0 -:108DF00000DB01207047000000009042010040406D -:108E00003433333F010060400100A0400100704155 -:108E1000CDCCCCCCCCCCFC3F0100904001008040BC -:108E20000000C8430000164300C0624000005440E8 -:108E30002DE9F24F0446002500F079FCDFF86C695B -:108E400028467067B067F067B087204600F06CF97D -:108E5000DFF868793078052804D10120F0642846CD -:108E600030707861306EBDF8001010FA81F0306615 -:108E7000D6F84880B06D804501D10120F064D7F864 -:108E8000589009EB49004FEA800ADFF83809216859 -:108E90004AF800100AEB000B6068CBF80400A068E9 -:108EA000CBF80800BDF80010204600F0D3F9B061FF -:108EB0009BED020ADBED010ADFF808095AF8000011 -:108EC00001EE100A21EE011A00EEA01A00EE001ABF -:108ED00011EE100AEEF716FB41EC100B02F0CAFD82 -:108EE00051EC100BEEF708FC00EE100AD7F85CA06E -:108EF000BAF1000F10D1284604E007EB810181EDA3 -:108F0000060A401C80B201460729F6DBF1EE0C0A86 -:108F100060EE200AC7ED140A07EB8900D0ED060ABF -:108F200070EE600A97ED141A30EE811A87ED141A6C -:108F300080ED060ADFF8901801EB880181ED001A38 -:108F400096ED100A30EE010A86ED100A90ED0D0A3A -:108F500071EE400ADFF8741801EB8801C1ED000AD8 -:108F600080ED0D1A96ED110A30EE200A86ED110AF9 -:108F700094EC031A87EC031AB08E401CB08631784B -:108F8000012901D0032930D180B2022822DA718E62 -:108F900004291FDA706D002856D197ED150A9FED50 -:108FA000A61AB4EE410AF1EE10FA04D5F4EE410A25 -:108FB000F1EE10FA0BDAB9EE0C1AB4EE410AF1EE4A -:108FC00010FA41DBF4EE410AF1EE10FA3CD5012033 -:108FD000F06439E0272808DBB98A002903D010FAA9 -:108FE00081F04B2801DB0120F06497ED150A00F0B9 -:108FF0008BFA3078012827D1B88A002824D0F98A42 -:10900000002921D0032211FA80F03D2801DB012044 -:10901000F064708E042800DB0222F08E824201D2BE -:109020000120F064786EB866F86E396F0818796FB1 -:1090300008187866284678673867F866FFF786F874 -:1090400005460020F882F086F06DA8EB000000F1E4 -:10905000FA04FA20B4FBF0F0FA2101FB104BBBF14B -:10906000960F16D1002070657066F066B062F060F1 -:10907000308230863087708701207067D6F8800094 -:10908000002801D0FFF7AFFAF86F012801D10620C0 -:10909000F087BBF1640F1FD10020B062F06008229E -:1090A000014607F10C00EAF795FD002070867082FA -:1090B0000320B0820020F06001207067002030871C -:1090C0007087D6F88000002801D0FFF78CFAF86F7F -:1090D000012801D10620F087DFF8F00650F82800BB -:1090E000786508F10100B064FA2801D10020B0646D -:1090F00009F10100B865072801D10020B8650AF11F -:109100000100F865706F002807D006F184042C2256 -:10911000311D2046E9F72CFB3C662846BDE8F28F5E -:109120008096184B0000A0402DE9F0410446DFF87E -:109130008C56AF6F95ED000ADFF88866D4ED000A13 -:1091400070EEC00A01EE107AB8EEC11A60EE810A24 -:10915000F5EE400AF1EE10FA16D5D6ED190A30EE0A -:10916000600A10EE100AEEF7CDF921F00041DFF8A9 -:109170006026DF4BF7F71EFB02D8E86E401CE8665E -:10918000286870667842A867DFF84876D7F87C8050 -:1091900095ED010AD4ED010A70EEC00A01EE108AC5 -:1091A000B8EEC11A60EE810AF5EE400AF1EE10FA4F -:1091B00017D5D6ED1A0A30EE600A10EE100AEEF757 -:1091C000A1F921F00041DFF80826C94BF7F7F2FAC0 -:1091D00002D8286F401C28676868B066C8F1000094 -:1091E000F867376E95ED020AD4ED020A70EEC00AF8 -:1091F00001EE107AB8EEC11A60EE810AF5EE400A6F -:10920000F1EE10FA16D5D6ED1B0A30EE600A10EE1C -:10921000100AEEF777F921F00041DFF8B425B44BDE -:10922000F7F7C8FA02D8686F401C6867A868F0664C -:1092300078423066BDE8F0810100E040F016485009 -:10924000FC18E93F3411363CBD52DABFBBB88D067D -:10925000F016B83F10B4DFF8642590ED000AD2EDA7 -:10926000000A30EE600AD0ED010A92ED011A70EEAC -:10927000C10A90ED021AD2ED021A31EE611AB5EE72 -:10928000400AF1EE10FA02DDF0EE401A01E0F1EED4 -:10929000401AF5EE400AF1EE10FA02DDB0EE602A57 -:1092A00001E0B1EE602AB5EE401AF1EE10FA02DDEF -:1092B000F0EE412A01E0F1EE412A71EE821A71EEE0 -:1092C000A21AB5EE400AF1EE10FA02DDB0EE402A25 -:1092D00001E0B1EE402ADFF8D834D3ED0A2A32EEAD -:1092E000822A83ED0A2AF5EE400AF1EE10FA02DD39 -:1092F000B0EE602A01E0B1EE602AD3ED0B2A32EE27 -:10930000822A83ED0B2AB5EE401AF1EE10FA02DD47 -:10931000B0EE412A01E0B1EE412AD3ED0C2A32EE43 -:10932000822A83ED0C2A93ED0D2A32EE212A83ED59 -:109330000D2A93ED0E2AD0ED002A32EE222A83ED7B -:109340000E2A93ED0F2AD0ED012A32EE222A83ED68 -:109350000F2A93ED102AD0ED022A32EE222A83ED55 -:10936000102ADFF87004D26D002A10D1002204E028 -:1093700000EB8404C4ED0D1A521C92B214460F2C5B -:10938000F6DBB2EE0E2A21EE822A80ED1C2AC2897B -:1093900000EB820494ED0D2A31EEC22AD0ED1C2A96 -:1093A00032EE222A80ED1C2AC4ED0D1AF2EE0E1ABE -:1093B000C2EE211AC3ED1A1ADFF81C4494ED012AFB -:1093C00022EE202AD4ED002A62EE802AF5EE402A11 -:1093D000F1EE10FA0DD4B5EE402AF1EE10FA08D4F1 -:1093E00094ED023A23EE013AB5EE403AF1EE10FA6E -:1093F0005AD594ED023A23EE013AF4EE422AF1EE08 -:1094000010FA0AD5F4EE432AF1EE10FA02D5F0EE86 -:10941000623A0CE0F0EE433A09E0B4EE432AF1EE92 -:1094200010FA02D5F0EE423A01E0F0EE433AF5EEE2 -:10943000403AF1EE10FAF4EE422A15DDF1EE10FAA0 -:109440000AD5F4EE432AF1EE10FA02D5B0EE622A04 -:1094500021E0B0EE432A1EE0B4EE432AF1EE10FA0A -:1094600019D4B0EE432A16E0F1EE10FA0AD5F4EE64 -:10947000432AF1EE10FA02D5B0EE622A09E0B0EE0E -:10948000432A06E0B4EE432AF1EE10FA01D4B0EE1E -:10949000432AB1EE422AD3ED1F2AF4EE422AF1EE1E -:1094A00010FA01D583ED1F2A84ED000AC4ED010AEC -:1094B00084ED021AB5EE000AF4EE401AF1EE10FA4D -:1094C00004D5436F13FA81F1416701E00021416740 -:1094D000511CC18189B20F2901D10021C181406F86 -:1094E00010BC7047B8ED221C1818783F9A999999CA -:1094F0009999C93F9999B93F7B14AE47E17A743F76 -:1095000000004E406666E63F70B52DED048BB0EE70 -:10951000408AF0EE608A9FEDA09AA44E708E0428D7 -:1095200001DBB0EE009AB5EE408AF1EE10FA07DBEF -:10953000F5EE408AF1EE10FA02D5F08E401CF0866E -:109540003078002807D0022800F07F8040D303281D -:1095500000F0A480E7E019EE100AEDF7D3FF41EC2C -:10956000100B53EC102B00209C49F7F7AFF841EC9F -:10957000190B18EE100AEDF7C5FF02460B4651EC29 -:10958000190BF7F717F911D818EE900AEDF7BAFF93 -:1095900002460B4651EC190BF6F720FF06D2B08EAF -:1095A0001028C0F0B1800020B086ADE0B06C8749D3 -:1095B00051F8200000EE100A8948D0ED010AB4EEFF -:1095C000600AF1EE10FA40F1AE8080ED010AAAE0E7 -:1095D000B06C7E4951F8200000EE100A8048D0EDB2 -:1095E000000AF4EE400AF1EE10FA01D580ED000A0F -:1095F000B7EE000AB4EE408AF1EE10FAC0F29380A2 -:10960000F4EE408AF1EE10FA40F18D806B48B18E95 -:1096100081820020B08619EE100AEDF773FF024632 -:109620000B4600206F49F8F73FF802460B461446F8 -:109630001D4618EE900AEDF765FF22462B46F6F719 -:10964000CDFE22D3022030706DE019EE100AEDF746 -:1096500059FF41EC100B0020624953EC102BF8F736 -:1096600023F841EC190B18EE100AEDF74BFF53EC01 -:10967000192BF7F79FF856D818EE900AEDF742FF2E -:1096800053EC192BF6F7AAFE4DD203203070B06CC4 -:109690004E4951F820005249486044E0B06C4B49B3 -:1096A00051F8200000EE100A4D48D0ED010AB4EE4A -:1096B000600AF1EE10FA01D580ED010A9FED3D0A36 -:1096C000B4EE408AF1EE10FA2DD5F4EE408AF1EEB8 -:1096D00010FA28DB3948B18EC1820020B08618EE1E -:1096E000900AEDF70FFF02460B4614461D4619EE91 -:1096F000100AEDF707FF0022384BF6F7E7FF224686 -:109700002B46F6F76BFE0CD201203070344801680E -:10971000B1674168F167B16C2C4A52F821100160C1 -:1097200001E0002030703078BDEC048B70BD1F4824 -:10973000007870470000F03F002804D01F49096EF0 -:109740002C22EDF79FBB70471848416D002901D1CD -:10975000008F70470020704718480021C1651348EA -:10976000018241820321818205210170002141652E -:109770004166C1668162C160018741870186418679 -:109780007047002806D0134942684A6002680A60A0 -:109790000089088170470000000000000D48406FFC -:1097A00070470000000044400000344008A400203E -:1097B00094AF0020FEFF7FBF3333D33F14AF0020B0 -:1097C0000000E03F50B20020A87C002090800020E4 -:1097D0009B99999914B00020E4BC002000001C4023 -:1097E000A8BD002000001CC000B585B002460FF2E5 -:1097F000140100A803F0C2FB00A8EDF722FD05B09C -:1098000000BD00004F4525640000000070470000C7 -:1098100001B58B0718D1121F21D351F8043BA3F1D6 -:10982000013C2CEA030C1CF0803C04BF40F8043BD4 -:10983000F1E79CFA8CFCBCFA8CF1C1F118018B4069 -:10984000CB4040F8043B13E0042A09D311F8013B54 -:10985000521E00F8013B5BB18B07F7D1DBE7121D0D -:109860005AB111F8013B521E00F8013B03B1F8D187 -:1098700011001CBF0022F3F701FB01BD70B50446C7 -:109880000025DFF80867062015FB004000F080FB8C -:109890006D1C202DF7DB70BD00B970472DE9F0433A -:1098A0004379027DDB43D243DBB243EA02220A80E2 -:1098B000437C427DDB43121DDBB243EA02224A8035 -:1098C000C47C437A6634373BE4B244EA03238B809A -:1098D000057B4478263D523CEDB245EA0424CC8019 -:1098E0000678057A203E6A35F6B246EA05250D81EE -:1098F000877D8679FF43F643FFB247EA06264E810D -:1099000090F804C0877BACF1310CFF435FFA8CFC0C -:109910004CEA07278F8190F812E090F810C0AEF162 -:109920007F0E6FEA0C0C5FFA8EFE4EEA0C2CA1F84B -:109930000EC090F80B8090F818E0A8F155080EF1D1 -:10994000370E5FFA88F848EA0E2EA1F810E0098871 -:1099500090F81A8090F817905118591861186918E2 -:109960007118791861446FEA090971445FFA89F343 -:10997000C9B26FEA08088B420FD180780CEB07015F -:1099800046307144C0B2C9B2884206D1A8186044BA -:109990005FFA88F1C0B2814201D0002000E00120CE -:1099A000BDE8F083F0B588B0002200AB002423F8B6 -:1099B000124003234FF480449C4051F8225001266A -:1099C0009E406742AF4207DB641941F8224000AC79 -:1099D00034F91240A41B09E0A5420ADB2C1B41F814 -:1099E000224000AC34F9124006FA84F400AD25F8A8 -:1099F00012405B1EDED500AB33F91230DB1D9BB28B -:109A00000F2B01D3002043E0521C032ACDDB0022A0 -:109A100002AB002443F8224005AB43F82240002368 -:109A2000062404FB020434F9135051F8236002ACFD -:109A300000AF54F8224006FB054402AEAD0346F8E1 -:109A4000224005AE37F9137056F822602D1107FB3E -:109A5000056505AE5B1C46F82250032BE0DBC4F322 -:109A6000C00303EB241302ACEB1844F8223002AB22 -:109A700053F82230C3F3402404EBA32302AC44F890 -:109A80002230521C032AC3DB02A81CC81CC10120BF -:109A900008B0F0BD2DE9F14F80B20B46212819D254 -:109AA000BDF9000000250121A940884205D06D1CA8 -:109AB000062DF8DBBDF9000060B9B3F9000047F6E8 -:109AC000FF7840451FBFB3F902004045B3F90400D9 -:109AD000404501D1002040E000244FF0000C274613 -:109AE0000126254606E081468E46CC447444DA467B -:109AF00057446D1CBDF90000854226DA36B2B542E6 -:109B000008BF76004DB933F90590B3F902E0B3F917 -:109B100004A0CC4674465746EBE7062000FB05F14F -:109B2000C85E40451EBF01EB030BBBF90210414567 -:109B30001CBFBBF904B0C345D5D1CC447444D7E7AE -:109B40004FEA6C0C64107F10761036B2022EF7DAF2 -:109B5000A2F800C0548097800120BDE8F28F30B594 -:109B6000B0F90440B0F90250240485B0240A14FA74 -:109B700085F4ADF80040B0F90840B0F9065024046F -:109B8000240A14FA85F4ADF80240B0F90C40B0F99B -:109B90000A002404240A14FA80F0ADF8040000201E -:109BA000188000AC31F8103034F91040803313FBCA -:109BB00004F302AC03EB830344F820301B1242F899 -:109BC0002030401C0328ECDB05B030BD30B5B0F9C7 -:109BD0000440B0F90250240485B0240A14FA85F434 -:109BE000ADF80040B0F90840B0F906502404240A4A -:109BF00014FA85F4ADF80240B0F90C40B0F90A004F -:109C00002404240A14FA80F0ADF80400002018801F -:109C100000AC31F8103034F91040803313FB04F3FA -:109C20000A24634302AC44F820301B1242F820306F -:109C3000401C0328ECDB05B030BD70B5B0F9045012 -:109C4000B0F902602D0485B02D0A15FA86F5ADF83D -:109C50000050B0F90850B0F90660099C2D042D0A97 -:109C600015FA86F5ADF80250B0F90C50B0F90A00BB -:109C70002D042D0A15FA80F0ADF804000020208094 -:109C800000AD31F8104035F91050803414FB05F464 -:109C90000A256C4302AD002A45F8204014BFA412E7 -:109CA000241243F82040401C0328E9DB05B070BDB6 -:109CB00030B5B0F90440B0F90250240485B0240A4C -:109CC00014FA85F4ADF80040B0F90840B0F9065038 -:109CD0002404240A14FA85F4ADF80240B0F90C40CB -:109CE000B0F90A502404240A14FA85F4ADF80440AB -:109CF000B0F90E0000EB8000C0F55C70C010188059 -:109D0000002000AC31F8103034F91040803313FBE0 -:109D100004F30A24634302AC44F820309B1242F857 -:109D20002030401C0328ECDB05B030BD30B5B0F965 -:109D30000440B0F90250240485B0240A14FA85F4D2 -:109D4000ADF80040B0F90840B0F906502404240AE8 -:109D500014FA85F4ADF80240B0F90C40B0F90A00ED -:109D60002404240A14FA80F0ADF8040000201880BE -:109D700011F8103000AC03F03F035B0034F91040E1 -:109D800003F5807313FB04F30A24634302AC44F825 -:109D900020301B1242F82030401C0328E8DB05B0BD -:109DA00030BD30B586B004460D4600A80FF2D8315C -:109DB0001822EDF767F8012CB8BF012402DB042C50 -:109DC000A8BF032400A901EBC401284608390822D2 -:109DD000EDF748F806B030BDF0B580B285B00C465E -:109DE00015461E46042828BF002080F0AE8000B231 -:109DF000002807D0002147F6FF7304EB4102B2F9B7 -:109E000006209A4200F0A080491C0329F5DB03A933 -:109E1000FFF7C7FF01276FF0050017FB006101F195 -:109E200030002A310622EDF71DF87F1C082FF2DBE7 -:109E30000020002135F9112034F911309A42B4BFC5 -:109E40004FF0FF32012226F8112004EB410335F9CF -:109E50001120B3F9063000AFD31A47F8213044BFC0 -:109E60005B4247F8213000AB53F8213003EB43034A -:109E700047F82130C3F3400707EBA30300AF47F8CF -:109E8000213000AB53F821309842B8BF184634F95E -:109E90001130D21A00AB43F8212044BF524243F89C -:109EA000212000AA52F821209042B8BF1046491C38 -:109EB0000329BFDBBDF90C10401ABDF80E1040FAA3 -:109EC00001F1081848BF002004D4B0F5A07FC8BF36 -:109ED0004FF4A07000EB400101EB001101EB4010CA -:109EE000C011401C00210022002706EB410C062374 -:109EF00017FB03C37F1CB3F9003002FA83F2082F6B -:109F0000F5DB13B2002B48BF5242BDF9127052105C -:109F1000012302FA87F203FA02F2BDF810309A1810 -:109F200012B28242B8BF024600AF57F8217034F92E -:109F300011307A4336F91170D2117A43D21825F8CC -:109F40001120491C0329CEDB012005B0F0BD70B5FE -:109F50000C461546FFF792FC2046FFF78FFC0B4E90 -:109F6000284600F015F8A81D00F012F80020002384 -:109F70000021062202FB004222F81130491C03296D -:109F8000F7DB401C0828F3DB70BD0000C0A5020809 -:109F900031460622ECF766BF2DE9F04F814695B2B7 -:109FA00008462DB28FB01946212D2DD242F20F381E -:109FB00042F2033A42F20C3EC14518BFF14505D0CA -:109FC000D1451CBF42F2B66291450DD1B0F90030C7 -:109FD000B0F90E2000260124B440A54216D0761C0C -:109FE000062EF8DB95B10FE042F2B86291451FBF33 -:109FF00040F6BB32914542F2B762914504D1B0F9C7 -:10A000000030B0F91020E5E70020BAE01E9E1E9651 -:10A01000012434800024249E249634800026DDF818 -:10A0200084C04FF0000BACF800609B07229C268098 -:10A03000239F3E80259EA6F800B044BF0123ACF8C4 -:10A040000030530744BF01232380130702D50120AA -:10A05000388007E0B4F90030012B1CBFB7F900309D -:10A06000012B01D101208CE0209BC14503D103AA23 -:10A07000FFF775FD25E0F14503D103AAFFF7A6FD23 -:10A080001FE0D1451CBF42F2B664A14506D1009342 -:10A0900003AB02F01002FFF7D0FD12E042F2B8620B -:10A0A00091451CBF40F6BB32914503D103AAFFF78F -:10A0B000FFFD06E042F2B762914504BF03AAFFF735 -:10A0C00035FE189809A9FFF7E7FB3080012805D174 -:10A0D00003A909A8FFF766FC002852D0DDF874A098 -:10A0E000002603A806A950F8260041F826005AF8D1 -:10A0F0002610401A03A941F8260000F5EA402F3047 -:10A100004EF65F21884202D3249801210180761CFB -:10A11000032EE6DB24981A9CB0F90000012809D12F -:10A120002046FFF7ABFB06A80EC8AAE80E000020E9 -:10A13000019006E00398ADF804000498ADF806001D -:10A140000598ADF8080023461E982021B0F900209C -:10A1500001A802F02DFF1B9C1C9BBDF9640001AA05 -:10A160002146FFF739FE60B11E982346B0F9002062 -:10A17000202101A802F01CFF1F9A21462846FFF764 -:10A1800089FC0FB0BDE8F08F28000000000003003C -:10A19000500000000000020050000100FEFF02001D -:10A1A0002DE9F04F93B004460D4690460FA80FF6E8 -:10A1B000A4110B22ECF766FE0BA80FF6A4110E22D9 -:10A1C000ECF760FE08A80FF6A8110B22ECF75AFE78 -:10A1D00004A80FF6A8110E22ECF754FE0020ADF8EB -:10A1E00002000120ADF800004FF0080900F0EFF880 -:10A1F000B9F10109FAD100260DF13C0916F80970F0 -:10A2000057B100F0E4F8BDF80000381A543006F8F1 -:10A210000900761C102EF1DB102E04DA00F0D7F8BE -:10A22000701C06B2F8E700270BAE17F806A0BAF1CB -:10A23000000F0AD000F0CBF8BDF80000AAEB000038 -:10A240002A38B8557F1C102FEFDB102F00A804DA36 -:10A2500000F0BFF8781C07B2F7E700F0BAF8BDF8D5 -:10A26000001043F2EF20401AADF80E0000F0AFF8F6 -:10A27000BDF80010DFF80405401AADF80C0000F03E -:10A28000A6F8BDF80010DFF8F804401AADF80A008F -:10A2900000F09DF8BDF80000C0F57F5700F097F87A -:10A2A000BDF80010DFF8DC04401AADF8080000F03B -:10A2B0008EF8BDF8001042F21F50A0EB010A00F02A -:10A2C00086F8BDF8001040F64120A0EB010B00F02D -:10A2D0007EF8BDF8001042F65F70401A002111F8B8 -:10A2E0000920002A04BF0B5D002B05D00B5D9342B3 -:10A2F00066D1491C1029F2DB102902D1217C0029EA -:10A300005ED100218A5D002A04BF4B5D002B05D081 -:10A310004B5D934254D1491C1029F3DB102902D123 -:10A32000297C00294CD1002108AA8A5C002A04BF9C -:10A330000B5D002B05D00B5D934241D1491C1029C8 -:10A34000F2DB102902D1217C002939D1002104AA95 -:10A350008A5C002A04BF4B5D002B05D04B5D934205 -:10A360002ED1491C1029F2DB102901D1297C39BBDF -:10A37000B8F90010BDF90E20914202BFB8F90210E1 -:10A38000BDF90C2091421BD1B8F90410BDF90A2087 -:10A390009142A4BF3AB28A4212DBB8F90610BDF965 -:10A3A00008209142A4BF0FFA8AF28A4208DBB8F96A -:10A3B00008100FFA8BF29142A4BF00B2884202DA71 -:10A3C000DFF8C40300E0012013B0BDE8F08F00A85F -:10A3D000FFE7B0F902108180B0F9002042805118E7 -:10A3E0000180704770B50546049C05982960C5F842 -:10A3F0008C211E46024601232146284600F077F9AB -:10A400000020A5F88801A5F88A61A5F8F001A5F853 -:10A41000F20170BD2DE9F04FD5B005460E46174646 -:10A420001C462AA80FF26471A822ECF72BFD15A890 -:10A430000FF600015422ECF725FD0EA80FF6480197 -:10A440001C22ECF71FFDDFF840833A4631462846D0 -:10A45000FFF7A6FE404508BF404615D0BDF97C0178 -:10A46000411E89B220293EBFB4F98A1189B202295E -:10A4700009D2B4F9841189B211293EBFB4F9861109 -:10A4800089B2032901D300202EE10021ADF8181074 -:10A490000591461E5E985E9000256098ADF880019B -:10A4A00036B26198ADF884014FF0060B6298629065 -:10A4B00034E00BFB0142491CB2F9243102F59272DF -:10A4C0009844B2F90230B2F9042099449244B7F9A1 -:10A4D00016209142EDDB629A00FB08F1C91311804E -:10A4E00000FB09F1629AC913518000FB0AF06299DE -:10A4F000C0138880B4F98401B7F9141088420BDBCB -:10A50000B4F98601022807DA0020A4F88401B4F81F -:10A510008601401CA4F88601761E36B2002E00F19A -:10A52000D980B4F986012368B4F98A111C2212FB80 -:10A5300000F2002B03BF54232AAF13FB017353F81F -:10A54000213002EB0308BDF98021B8F90070B8F999 -:10A55000049002B90021BDF9842102B90020D4F889 -:10A560008C311C2212FB00F2002B07A803BF5423DE -:10A570000DF1540C13FB01C153F8211051181C228A -:10A58000ECF770FC5E98ADF81C70ADF820901BFBEA -:10A5900006090020039004A8029004F5F8700190C9 -:10A5A00005A8009004F5C873221D07A9484600F0CD -:10A5B000F3F801281DD1B4F98A0101280ADAB8F9A3 -:10A5C0001810002906D4B4F9F0218A42A4BF401C17 -:10A5D000A4F88A01B4F98A0101280ADBB8F91A1033 -:10A5E000002906D4B4F9F0219142A4BF401EA4F87A -:10A5F0008A01B4F98611B4F98A0123681C2212FB7E -:10A6000001F25BB9B4F98431002B04BF00290EAF0D -:10A6100007D054212AAB11FB003001E053F8200091 -:10A620001718BDF9100001280FD1039004A802905B -:10A6300004F5C470019005A8009004F1C403221D24 -:10A640003946484600F0A8F801287FF465AFB4F910 -:10A6500084016D1C1028B4BF401C1020A4F8840194 -:10A6600004F592730122102105A802F0A1FCB4F9AF -:10A6700084010228A4BFB7F91610022905DA6298EE -:10A6800005A90622ECF7EEFB34E74FF0000AD146AD -:10A69000C846884219DA0146012002F001FD002176 -:10A6A000B4F984219142BFF616AF1BFB0142491C4D -:10A6B000B2F9243102F592729844B2F90230B2F93B -:10A6C00004209944924409B2EAE7012002F0E8FC30 -:10A6D0000021FCE6B4F984010028B4F8860118BF13 -:10A6E000401C6399087028B255B0BDE8F08F2DE981 -:10A6F000F84F82468B4616463BB30AF1C4070AF16F -:10A70000040400254FF00608DFF8809015FB084090 -:10A7100000F03EF86D1C202DF8DB002414FB0870BF -:10A7200000F036F8641C102CF8DB002708FB07A4A7 -:10A7300004F5927000F02CF804F5C87049464246C2 -:10A74000ECF790FB7F1C102FF0DB0AF5C277012E8F -:10A7500003DA0020AAF884010DE00120AAF88401A0 -:10A760000AF5927301221021584602F021FC042EB2 -:10A77000B4BF701E02207880BDE8F18FED9EFFFF10 -:10A78000DEA5FFFF60E5FFFF0080FFFFC0A5020818 -:10A7900049460622ECF766BB2DE9F04316460FF258 -:10A7A000045204468846D2E9000191B09946CDE9A9 -:10A7B0000001B8F90000012845DB1A9D002028801F -:10A7C000BDF96C7097B93088218800F087F8ADF832 -:10A7D00000007088618800F081F8ADF80200B08850 -:10A7E000A18800F07BF8ADF8040001E0012F16D03D -:10A7F000B8F90400BDF900108142A1BFBDF90210F3 -:10A800008142BDF90410814263DB47B9B8F90010F9 -:10A8100033460122204602F0CBFB0120288006208F -:10A82000B8F9001011FB006047F6FF7230F9063CE2 -:10A83000934202BF801FB0F90230934204BFB0F9C7 -:10A840000400904201D1002045E006A8019004A830 -:10A85000009008AB0AAA304602F0D1FBB8F900100C -:10A860004FF0FF3304AA304600F05CF9199D189CA4 -:10A8700003A8019000950CABB8F9001022463046B1 -:10A8800000F030F80746012304AA0121204600F019 -:10A8900049F9B8F902104B460122204602F088FB24 -:10A8A0000FB900240DE0BDF90C0002900CABB5F916 -:10A8B00000000190009742464946304600F064F897 -:10A8C0000446B8F90010012304AA304600F02AF922 -:10A8D00000E00024204611B0BDE8F083401A00B229 -:10A8E00002F018BC2DE9F04190B016461D46179FA6 -:10A8F0000446884608AB2A4602F038FC00210623AD -:10A9000000224B4303EB050C0DF1280E3CF812C05E -:10A910009E442EF812C0521C032AF3DB491C032963 -:10A92000EDDB169D042827D104AB06AA03210AA853 -:10A9300002F06BFE08B302A8019008A8009004ABD7 -:10A9400006AA03210AA802F0B1FEBDF90800801092 -:10A95000308002A80423B0F90210891071803246B9 -:10A96000B0F904008010B080019700954146204660 -:10A9700000F074F8042004E00020B0807080308083 -:10A98000288010B0BDE8F081F0B58FB004460846CD -:10A9900015461499BDF958201E4604295BD1BDF90E -:10A9A0005410B5F910308B42BCBFB5F90E30994246 -:10A9B000BFBFD202B5F9123013FB01F18A424ADA65 -:10A9C00005A9019107A9009109ABB5F902100BAADD -:10A9D00002F015FBB5F90A00BDF914108142BFBFA2 -:10A9E000BDF916108142BDF91810814233DA03A86F -:10A9F000019007A8009009ABB5F900100BAA2046FA -:10AA000002F0FDFABDF90E10BDF90C20BDF91000E1 -:10AA1000B5F90630BDF90C7001FA82F202FA80F243 -:10AA2000BB42BCBF8B42834215DAB5F908008242B3 -:10AA300011DB02A800900DABB5F90010324620469C -:10AA400002F0CEFC38B1B5F90C00BDF9081088420F -:10AA5000B8BF012000DB00200FB0F0BD2DE9F84F9A -:10AA60000B9F04468B461646042B3AD1E05EF15EFE -:10AA7000B6F90220B6F90030401AB4F90210891A6A -:10AA8000B4F90020D21A494302FB021100FB00185E -:10AA9000404602F073FE8146CA4601255D4524DA30 -:10AAA000062068430219B6F90430B2F90410B2F96D -:10AAB0000220005FC91AB6F90230D21AB6F9003086 -:10AAC000C01A524300FB002001FB0100804402F049 -:10AAD00055FE8145B8BF81465045D8BF82466D1CA2 -:10AAE000DCE74FF00008C246C1465946012002F09B -:10AAF000D7FA0146C0F3C00000EB2110C8F3801163 -:10AB00000A9C01EBE811484302F038FE20808110D6 -:10AB1000C0F3400001FA80F02080A9EB0A003880E1 -:10AB2000BDE8F18FF0B5002411E00626002506FBF4 -:10AB3000040636F9157032F915C013FB0C7707F3CC -:10AB40000F0726F815706D1C032DF2DB641C8C4278 -:10AB5000EBDBF0BD24587DDD6E59C83C094A00008E -:10AB6000AEB1E00F8B40603D5F4620F6A7000000CD -:10AB700041534148494B41534549000053454330F7 -:10AB8000393931314E534653540000001000030050 -:10AB900010009000A003500040008F042C01F4012D -:10ABA000030003008002FFFF140006003000B00025 -:10ABB00080044000900041032C01CC0103000300FD -:10ABC0008002FFFF180008003000D000E0042800D9 -:10ABD000E00041032C01A401030003008002FFFFF9 -:10ABE0001000030010009000A003500040008F04EC -:10ABF0002C01F40103000300FFFFE0011400060034 -:10AC00003000400120085000F0008F04A10118011D -:10AC100003000300FFFFE00118000800300080017E -:10AC2000C008300090018F04F401180103000300F4 -:10AC3000FFFFE0011000030010009000A00350008F -:10AC400040008F042C01F401FF000300FFFFFFFF11 -:10AC50001400030030009000A003500040008F0457 -:10AC60002C01F401FF000300FFFFFFFF18000300A9 -:10AC700030009000A003500040008F042C01F4012C -:10AC8000FF000300FFFFFFFF08000200100090001C -:10AC9000A003500040008F042C01F401FF000100CC -:10ACA000FFFFFFFF000000000000000030B5154668 -:10ACB00004460622ECF7D6F8002D47BF0020E080BE -:10ACC000E580012030BD10B5002231F9123030F995 -:10ACD00012401B1B48BF5B42B0F90640A34204DB95 -:10ACE0000622ECF7BFF8012010BD521C032AECDB52 -:10ACF000002010BD2DE9F0471F4682B080468946EE -:10AD00009246012F25DB0A9D00243AF914100129EF -:10AD10001FDB38F9140039F91420861A00AA3846C6 -:10AD200002F008FABDF9001070430F3101290BDB66 -:10AD3000BDF80010BDF800200F3140FA01F10E32CD -:10AD4000104100F00100401800F50041B1F5803FCE -:10AD500001D3002005E025F81400641C032CD4DB8B -:10AD60000120BDE8F687000038B5DFF8884750229B -:10AD7000002104F13000E8F72DFF50220021E8F710 -:10AD800029FF50220021DFF87007E8F723FFDFF8E2 -:10AD90006C575022002105F11000E8F71BFF5022EC -:10ADA0000021DFF85C07E8F715FF50220021DFF8EB -:10ADB0005407E8F70FFF0020207060702071607169 -:10ADC000A070E070A07120816081DFF83C07C4F8BA -:10ADD00080009FEDC40B84ED040B84ED060B85ED24 -:10ADE000000B84ED080B85ED020B84ED0A0B31BDE1 -:10ADF0002DE9F84F2DED088BB0EE408ADFF8F446D0 -:10AE0000218941182181618947186781A079192812 -:10AE100009DA401CA07118EE100AECF773FBDFF89A -:10AE2000DC26C2E902019FEDAC0AB4EE408AF1EEE5 -:10AE300010FAC0F24D81D4ED200AF4EE400AF1EE92 -:10AE400010FAC0F24581A0791928C0F24181208909 -:10AE5000AF28C0F23D8138EE600ADFF8A05685EDDC -:10AE60001C0A84ED208A10EE100AECF74BFB21F04F -:10AE70000041DFF89826DFF89836F5F79BFC05D8F7 -:10AE8000D5E90201ECF738FC08EE100A6678002ECE -:10AE900004D185ED188A85ED198A52E0D5ED1A8A1C -:10AEA00018EE100AECF72EFB41EC1A0B9FED8B9B72 -:10AEB00095ED180A28EE800A10EE100AECF722FB36 -:10AEC0008046894618EE900AECF71CFB02460B46BA -:10AED00051EC190BF6F7E8FB53EC1A2BECF73AFBA5 -:10AEE00042464B46F5F7F2FBECF706FC08EE900AFB -:10AEF000C5ED188A95ED1BAA95ED190A2AEE000AF0 -:10AF000010EE100AECF7FEFA82468B461AEE100A93 -:10AF1000ECF7F8FA02460B4651EC190BF6F7C4FBB6 -:10AF20008046894618EE900AECF7ECFA42464B460A -:10AF3000ECF710FB52465B46F5F7C8FBECF7DCFB81 -:10AF40006866BFB2B7F57A7F14DDA078DFF8C41564 -:10AF500001EB80016A6E8A62401CA070C0B21428A6 -:10AF600001D10020A070E078142801DA401CE070C4 -:10AF70000020608194F800904F4605EB8708B246A8 -:10AF8000DFF87CB5BAF1140F27D1D8ED048A18EE9A -:10AF9000900AECF7B7FA02460B46D4E90401F6F73B -:10AFA00083FBC4E9040128EEA80A10EE100AECF7AE -:10AFB000A9FA02460B46D4E90601F6F775FBC4E987 -:10AFC00006015BF82700ECF79DFA02460B46D5E92F -:10AFD0000001F6F769FBC5E9000188ED048A18EE67 -:10AFE000100AECF78FFA41EC1A0B53EC1A2BD4E948 -:10AFF0000401F5F76BFB41EC190B84ED049B28EE83 -:10B00000080A10EE100AECF77DFAD4E90623F5F7EA -:10B010005DFB41EC180B84ED068B4A46314605F189 -:10B02000100000F081F90BEB870080ED000A10EEB4 -:10B03000100AECF767FAD5E90023F5F747FB41EC76 -:10B040001A0B85ED00AB04EB8700696E0163DFF836 -:10B05000C404218920F81710BAF1140F01DA701C0A -:10B0600060706078F1F7F0F841EC1B0B51EC190BB4 -:10B0700053EC1B2BF1F7F6F841EC190B85ED029B15 -:10B0800051EC180B53EC1B2BF1F7ECF806460F466E -:10B0900053EC192B51EC190BECF75CFA02460B46FA -:10B0A00030463946F6F700FBC4E9080151EC1A0BAB -:10B0B00053EC1B2BF1F7D6F8C4E90A0109F10100A2 -:10B0C0002070C0B2142801D10020207000202081FF -:10B0D000BDEC088BBDE8F18F0100FA4300000000D1 -:10B0E0000000F03F00000000000000002DE9F041EA -:10B0F0002DED068BF0EE408A4FF000084546DFED5F -:10B10000B69A9FEDB59A9FEDB48ADFF8E86374783C -:10B11000142C40F00281F0780528C0F2FE80F5EE94 -:10B12000408AF1EE10FA40F3F88096ED08AB51EC4E -:10B130001A0BDFF8E423DFF8E433F5F74FF902D216 -:10B140009FEDC9AA0EE0F5F735FB09D84FF066323E -:10B15000DFF8CC33F5F742F902D29FEDA0AA01E067 -:10B160009FED9FAAB078411E00D51431001F00D575 -:10B170001430DFF8A07307EB810191ED0A0A07EBA9 -:10B180008000D0ED0A0A30EE600A10EE100AECF7EB -:10B19000B9F921F00041ECF7AFFA00EE100ADFED4B -:10B1A000910AB4EE600AF1EE10FA10DB1AEE100A02 -:10B1B000ECF7A8F9D6E90A2323F00043F5F70EF9D6 -:10B1C00005D221463078401E00F00EF98046B8F1D5 -:10B1D000000F284600F09C8004E037F811104D194C -:10B1E000ADB2401C80B201461429F6DB2846F1F7C7 -:10B1F0002BF8DFF83023DFF83033ECF7ABF9ECF75E -:10B200007BFA08EE100A18EE900AECF77BF9DFF8EB -:10B210001C23DFF81C33ECF79DF9ECF76DFA00EE18 -:10B22000100A28EE008A3078411E00D51431727859 -:10B23000801A00D5143006EB810191ED0C0A06EB63 -:10B240008000D0ED0C0A30EE600AFFEE000A20EE1E -:10B25000200A10EE100AECF755F9B64AB64BF1F792 -:10B2600001F8ECF749FA08EE900AF4EE488AF1EE9C -:10B2700010FA02DBDFED588A11E028EE080A08EE2A -:10B28000E80A10EE100AECF73DF941EC100B00F063 -:10B29000F1FB51EC100BECF72FFA09EE900A307924 -:10B2A000954988EEA90A01EB800282ED000A401C54 -:10B2B0003071C0B2142801D1002030717079142887 -:10B2C00001DA401C7071002006E001EB800292ED73 -:10B2D000000A39EE009A401C7279134680B29842F7 -:10B2E000F3D3B2EE040A29EE000A00EE902AF8EE3B -:10B2F000600A80EE200A10EE100AECF703F9864A85 -:10B300008E4BECF727F9ECF7F7F908EE100A01E09D -:10B3100030717071B0EE480A01E09FED2F0ABDEC6C -:10B32000068BBDE8F081000038B52DED048B9FED54 -:10B330002A8A9FED290ADFED280ADFED278A0023FC -:10B340001AE0142C00DB143C01EE103AB8EEC11ADE -:10B3500031EE088A50F8244001EE904A30EE210A7E -:10B3600041EE210A13FB03F401EE104AB8EEC11AB4 -:10B3700071EE288A5B1CDBB20C46A34205DA141B73 -:10B380001C19641CDDD51434DEE701EE101AB8EE8A -:10B39000419A69EE200A48EE400A10EE900AECF756 -:10B3A000B1F804460D4629EE280A08EE480A10EEC8 -:10B3B000100AECF7A7F8624A624BF5F787F90246E4 -:10B3C0000B4620462946F0F74DFFECF795F900EEC5 -:10B3D000100ABDEC048B31BD00000000A69B443B6D -:10B3E000CDCCCC3D90C2F53CF8B50024002801D569 -:10B3F000143002E0142800DB143825462646224685 -:10B4000009E0DFED190AB4EE600AF1EE10FA01DB93 -:10B41000761CB6B2521C431AD2B21746A1F1010CE7 -:10B42000674523DAFB185B1C01D5143302E0142BAB -:10B4300000DB143B5F1C142F00DB143FDFF8B4C0AB -:10B440000CEB870797ED0C0A0CEB8303D3ED0C0A8A -:10B4500030EE600ADFED240AB4EE600AF1EE10FA75 -:10B46000CFD56D1CADB2D5E76F12033B591C00D58B -:10B470001431DFF880C00CEB800090ED0C0A0CEB6F -:10B480008100D0ED0C0A30EE600A10EE100AECF7E5 -:10B4900039F821F00041ECF72FF900EE100A0B2EDD -:10B4A0000FDBDFED120AB4EE600AF1EE10FA08DBF2 -:10B4B000DFED0F0AB4EE600AF1EE10FA01D50124B7 -:10B4C00010E00B2D0EDBDFED090AB4EE600AF1EEA1 -:10B4D00010FA07DBDFED060AB4EE600AF1EE10FAAF -:10B4E00000D502242046F2BD6E1203BB90C2753D0A -:10B4F000CDCCCC3E10AD002014B70020303500205C -:10B50000C4B6002090B1002000407E449B999999D8 -:10B510009999C93F68B100209A9999999999A93F39 -:10B520006666E63FFCA9F1D24D62503F0492B06FCF -:10B530002711913FB81E85EB51B8BE3F9999B93F8D -:10B540008DEDB5A0F7C6B03E0FB480B52022002126 -:10B550000846E6F701FF022801D1022005E002F0CB -:10B5600085F92F4800210170012002BC5DF814FB11 -:10B5700080B5202200210120E6F7EEFE022801D14D -:10B58000022002BD264800210170012002BD70B5D5 -:10B590008CB02448446BA069E168451800A8E6F720 -:10B5A0003AFF1F4E3078012801D100200BE000A89F -:10B5B00090EC030A02F066F9012803D128700120FB -:10B5C000A077307001200CB070BD80B5E6F7C2FEE8 -:10B5D000154908601549C0F8101500F210501449BB -:10B5E0004160144981600FF21101C1600FF24D01F9 -:10B5F0000161012002BD00000B48006890F80105C0 -:10B60000002801D10020704705E080B5002002F03D -:10B610006AFC012002BD084890F900007047000054 -:10B6200071BE00200000002024BE002049B50108A2 -:10B6300071B501088FB5010870BE002018B440F242 -:10B640000D120B7812FB030301241C700B7812FB04 -:10B6500003035C700B7812FB030320249C700B78AF -:10B6600012FB03000022C2700878401C087011BC55 -:10B67000CBE70000CF490022CA630A6401F1480207 -:10B680004A6201F1C4028A6201F5A072CA6201F540 -:10B69000DE720A6301F50E724A6301F52D728A6348 -:10B6A0000B2802DA1E2048647047152802DA192098 -:10B6B00048647047432802DA142048647047C92858 -:10B6C00002DA0F20486470470A204864704700007F -:10B6D000F8B52DED068B84B004460026B54DE86B19 -:10B6E00000286CD185ED000AB0EE603A85ED013A94 -:10B6F00085ED021AB0EE610A85ED030AB0EE420A4A -:10B7000085ED050AB0EE620A85ED040A3046029026 -:10B71000019000901E222946E86A00F0DAF81E2205 -:10B72000291DA86A00F0D5F81E2205F10801686AF3 -:10B7300000F0CFF81E2205F10C01A86B00F0C9F84B -:10B740001E2205F11001686B00F0C3F81E2205F1FE -:10B750001401286B00F0BDF8696C286C81422ADA6C -:10B760001E2300AA09B2E86A00F0C8F8B0EE408AC9 -:10B770001E2301AA696C09B2A86A00F0BFF8F0EEB6 -:10B78000408A1E2302AA696C09B2686A00F0B6F802 -:10B79000DFED860AB4EE608AF1EE10FA0BD5F4EE16 -:10B7A000608AF1EE10FA06D5B4EE600AF1EE10FAF6 -:10B7B00001D50120E863286C401C286484E0AE6B4E -:10B7C0006F6C1E22394609B2304600F0D3F8F0EE15 -:10B7D000408A1E22394609B2304600F0F1F8B0EE38 -:10B7E000409A1E22394609B2304600F00EF9B81EC2 -:10B7F00000EE900AB8EEE08A78EEC90A30EEC00A90 -:10B80000C0EE088AC5ED068A6E6B1E22394609B263 -:10B81000304600F0AFF8B0EE409A1E22394609B229 -:10B82000304600F0CDF8F0EE409A1E22394609B2BB -:10B83000304600F0EAF879EE690A30EEC00A80EE90 -:10B84000089A85ED079A2E6B1E22394609B23046BA -:10B8500000F090F8F0EE409A1E22394609B23046C8 -:10B8600000F0AEF8B0EE40AA1E22394609B23046CA -:10B8700000F0CBF879EECA0A30EEC00A80EE088AF2 -:10B8800085ED088A18EE900AEBF73CFE4A4A4B4BCE -:10B89000F0F7E8FCF4F776FD208019EE100AEBF7DC -:10B8A00031FE454A454BF0F7DDFCF4F76BFD608057 -:10B8B00018EE100AEBF726FE3F4A404BF0F7D2FC99 -:10B8C000F4F760FDA0800126304604B0BDEC068B85 -:10B8D000F2BD0388934201D30023038003885B1CDD -:10B8E00003809BB2934201D300220280028800EBC6 -:10B8F0008200096841600120704700002DE9F8438B -:10B900002DED028B04460D4616461F469FED288AF4 -:10B910004FF00008B4F9009000EE105AF8EEC08A1B -:10B920003A4600F027F880EE280A86ED000A05E086 -:10B93000A7F101090FFA89F908F101080FFA88F84F -:10B94000A84511DA04EB890090ED010AD6ED000A52 -:10B9500030EE600A00EE008AB9F1010FE8DBA9F1D0 -:10B9600001090FFA89F9E7E788EE280ABDEC028B96 -:10B97000BDE8F18330B49FED0E0A0023B0F900401A -:10B980000EE024B2250006D400EB8505D5ED010AB2 -:10B9900030EE200A641E24B2002C00D5541E5B1C1D -:10B9A0001BB28B42EDDB30BC704700006F12033BD3 -:10B9B00000000000E487002089AD84FA0A74313F5A -:10B9C0002DE9F04104460D46164694ED010A002784 -:10B9D000B4F9008014E00FFA88F84046002807D434 -:10B9E00004EB8000D0ED010A00F03CF8A8F101085A -:10B9F0000FFA88F8B8F1000F01D5A6F101087F1CF5 -:10BA00003FB2AF42E7DBBDE8F0812DE9F0410446EB -:10BA10000D46164694ED010A0027B4F9008014E0A3 -:10BA20000FFA88F84046002807D404EB8000D0EDD8 -:10BA3000010A00F00FF8A8F101080FFA88F8B8F130 -:10BA4000000F01D5A6F101087F1C3FB2AF42E7DB32 -:10BA5000BDE8F081B4EE600AF1EE10FA01D4B0EE68 -:10BA6000600A7047F4EE400AF1EE10FA01D4B0EE2D -:10BA7000600A704751EC100B00B500F003F841EC80 -:10BA8000100B00BD40F2FF7C0B0D4DD0634566D21C -:10BA900030B421EA035141F4801103F2FD3C5FEA26 -:10BAA0005C0C01D300184941890041EA9071800083 -:10BAB0004FF440140023E202D50AB1F5100107D477 -:10BAC0006D081DD2091B641900184941491BF7D59F -:10BAD0006D080AD20919641B00184941491BEFD5AA -:10BAE0006D08F7D301E0520817D0C01861419B1AC6 -:10BAF000AC4100184941801AA941F4D452080AD037 -:10BB0000C01AA1419B186C4100184941801AA941F3 -:10BB1000E9D45208F4D15B1C6C4161084FEA330050 -:10BB200001EB0C5130BC704750EA0103FBD030B43C -:10BB3000B1FA81F311B9B0FA80F41B190B3BB3F1E0 -:10BB400020042FBF00FA04F19940C3F1200420FA29 -:10BB500004F438BF21439840D3F101039DE76345C6 -:10BB6000E1D011F5801FDED850EA4101DBD0D94386 -:10BB700002F0FAB990420CD141EA030C50EA4C0CA5 -:10BB800007D0994205D14FF4001C1CEB410F38BF80 -:10BB90008942704710B5DFF8F8440020206001F0BA -:10BBA000D6F8606105206060012010BDDFF8E00478 -:10BBB000002101600120704770B52DED048B84B029 -:10BBC0000C4600210391029101910091DFF8C054CD -:10BBD000012C07D1296090ED008AD0ED018A90ED0B -:10BBE000029A7BE069684A1E68692B6893421DDAF5 -:10BBF0001E22591C09B200F0CBFA85ED020A1E2262 -:10BC00002868411C09B2686900F0E0FA85ED040A71 -:10BC10001E222868411C09B2686900F0F5FA85ED1A -:10BC2000030A2868401C00EE100A49E018D11E22C1 -:10BC300009B200F0ADFA85ED020A1E22696809B268 -:10BC4000686900F0C3FA85ED040A1E22696809B22A -:10BC5000686900F0D9FA85ED030A95ED010A2FE035 -:10BC60001E2209B200F084FA06461E2200216869ED -:10BC700000F07EFA95ED020AD6ED000A30EE600A79 -:10BC8000D0ED000A30EE200A85ED020A95ED040A97 -:10BC9000D6ED010A30EE600AD0ED010A30EE200A3E -:10BCA00085ED040A95ED030AD6ED020A30EE600A2E -:10BCB000D0ED020A30EE200A85ED030A95ED010A67 -:10BCC000B8EEC00AD5ED020A80EE808AD5ED040AEE -:10BCD000C0EE808AD5ED030A80EE809AB0EE491A54 -:10BCE000F0EE680AB0EE480A01A903A800F022F8B5 -:10BCF0000022B0EE491AF0EE680AB0EE480A00A938 -:10BD000002A800F0BCF82868401C286001F013F875 -:10BD1000039981610199C1610299016200994162AF -:10BD2000022C02D0012101F00EF8012004B0BDEC7C -:10BD3000048B70BD38B52DED068B04460D46B0EE74 -:10BD400040AAF0EE608AB0EE418AB5EE408AF1EE8C -:10BD500010FA40D5F1EE480A00F01EFB9FEDBF9BA4 -:10BD600010EE100AEBF7CEFB53EC192BEBF7F2FBBE -:10BD7000EBF7C2FC00EE100A00F02AF9BDEEC00A93 -:10BD800084ED000A2AEE0A0A08EE080A10EE100AEC -:10BD9000EBF7B8FB41EC100BFFF76CFE51EC100B0E -:10BDA000EBF7AAFC00EE900AB1EE680A00F0F4FA94 -:10BDB00010EE100AEBF7A6FB53EC192BEBF7CAFBBE -:10BDC000EBF79AFC00EE100A00F002F9BDEEC00A93 -:10BDD00085ED000A50E0B5EE408AF1EE10FA4BDD39 -:10BDE000F0EE480AB1EE4A0A00F0D6FA9FED9B9BAE -:10BDF00010EE100AEBF786FB53EC192BEBF7AAFBBE -:10BE00000022984BF4F762FCEBF776FC00EE100A88 -:10BE100000F0DEF8BDEEC00A84ED000A2AEE0A0A40 -:10BE200008EE080A10EE100AEBF76CFB41EC100B61 -:10BE3000FFF720FE51EC100BEBF75EFC00EE900AD2 -:10BE4000B1EE680A00F0A8FA10EE100AEBF75AFB00 -:10BE500053EC192BEBF77EFB0022834BF4F736FCF7 -:10BE6000EBF74AFC00EE100A00F0B2F8B1EE400A1F -:10BE7000BDEEC00A85ED000ABDEC068B31BD38B5BC -:10BE80002DED048B04460D46F0EE408AB0EE609A2C -:10BE9000B0EE418AB5EE409AF1EE10FA18D5F1EE07 -:10BEA000490A00F079FA10EE100AEBF72BFB6F4A03 -:10BEB000784BEBF74FFBEBF71FFC00EE100A00F09E -:10BEC00087F8B1EE400ABDEEC00A84ED000A20E01A -:10BED000B5EE409AF1EE10FA1BDBB1EE680A00F005 -:10BEE0005BFA10EE100AEBF70DFB604A694BEBF7BB -:10BEF00031FB00225C4BF4F7E9FBEBF7FDFB00EEB6 -:10BF0000100A00F065F8B1EE400ABDEEC00A84EDFB -:10BF1000000AB5EE408AF1EE10FA28D528EEA80AFC -:10BF200009EE090A10EE100AEBF7ECFA41EC100BDF -:10BF3000FFF7A0FD51EC100BEBF7DEFB00EE900AD3 -:10BF4000B0EE480A00F028FA10EE100AEBF7DAFA21 -:10BF5000464A504BEBF7FEFAEBF7CEFB00EE100A29 -:10BF600000F036F8BDEEC00A85ED000A2CE0B5EE13 -:10BF7000408AF1EE10FA27DD28EEA80A09EE090A38 -:10BF800010EE100AEBF7BEFA41EC100BFFF772FD52 -:10BF900051EC100BEBF7B0FB00EE900AB0EE480A44 -:10BFA00000F0FAF910EE100AEBF7ACFA2F4A394B11 -:10BFB000EBF7D0FAEBF7A0FB00EE100A00F008F860 -:10BFC000BDEEC00A85ED000ABDEC048B31BD00005A -:10BFD000DFED270A9FED271AB4EE410AF1EE10FAC1 -:10BFE00009DBB4EE600AF1EE10FA04D5DFED220AA7 -:10BFF00030EE200A7047B4EE600AF1EE10FA0BDB67 -:10C00000DFED1E0AB4EE600AF1EE10FA04D5DFEDA2 -:10C010001C0A30EE200A7047DFED1A0ADFED1A1A0B -:10C02000B4EE610AF1EE10FA09DBB4EE600AF1EE4B -:10C0300010FA04D5DFED150A30EE200A7047B4EE91 -:10C04000600AF1EE10FA08DBDFED130AB4EE600AC5 -:10C05000F1EE10FA01D530EE010A7047E6C1631A1D -:10C06000DCA54C4000806640008066C0E6C1631AD3 -:10C07000FFFF06C4000034C400003444FFFF33C394 -:10C080000000B44301000744010034430000B4C37E -:10C090005CBB0020DCA54C4001003444E54A12683A -:10C0A0009FEDBC0A038800EB4303B3F9043000EEB4 -:10C0B000903AF8EEE00A92ED001AB8EE411A70EEEE -:10C0C000C10A92ED031AB8EE411AC0EE810A60EE81 -:10C0D000800AC1ED000AD2ED010AF8EE600A038879 -:10C0E00000EB4303B3F9063001EE103AB8EEC11A83 -:10C0F00070EEC10A92ED041AB8EE411AC0EE810A40 -:10C1000060EE800AC1ED010AD2ED020AF8EE600A83 -:10C11000038800EB4300B0F9080001EE100AB8EE06 -:10C12000C11A70EEC10A92ED051AB8EE411AC0EEBE -:10C13000810A20EE800A81ED020A012070470388FF -:10C14000934201D30023038003885B1C03809BB2CE -:10C15000934201D300220280028802EB420300EBEB -:10C160008300001D91EC030A80EC030A0120704754 -:10C17000B0F90030591A09B2002901D511FA82F13B -:10C1800009B201EB410200EB8200001D7047000084 -:10C1900070B49FEDB80A0023B0F9004010E024B25B -:10C1A000250008D405EB450600EB8605D5ED010A10 -:10C1B00030EE200A641E24B2002C00D5541E5B1CF5 -:10C1C0001BB28B42EBDB70BC7047000070B49FED7C -:10C1D000A90A0023B0F9004010E024B2250008D4D9 -:10C1E00005EB450600EB8605D5ED020A30EE200A88 -:10C1F000641E24B2002C00D5541E5B1C1BB28B4263 -:10C20000EBDB70BC7047000070B49FED9A0A00230E -:10C21000B0F9004010E024B2250008D405EB450633 -:10C2200000EB8605D5ED030A30EE200A641E24B229 -:10C23000002C00D5541E5B1C1BB28B42EBDB70BC88 -:10C240007047000010B52DED068BADF5FB6D00A815 -:10C250000FF2282140F2D472EAF714FE9FED768B9C -:10C260009FED779B00ACB5EE400AF1EE10FA48DB8B -:10C270009FED75ABDFED760AB4EE600AF1EE10FAD1 -:10C280001AD510EE100AEBF73DF953EC192BEBF72A -:10C2900061F953EC182BF4F719FAF4F773F854F822 -:10C2A0002000EFF7C7FF53EC1A2BEBF753F9EBF72E -:10C2B00023FA00EE100A68E0F7EE000A80EE800A2A -:10C2C00010EE100AEBF71EF953EC192BEBF742F9BD -:10C2D00053EC182BF4F7FAF9F4F754F854F820005B -:10C2E000EFF7A8FF53EC1A2BEBF734F902460B4695 -:10C2F0005B485849F5F7D8F9EBF7FEF900EE100A5C -:10C3000043E0FFEE000AB4EE600AF1EE10FA1CDB27 -:10C31000B1EE400A10EE100AEBF7F4F853EC192BCB -:10C32000EBF718F953EC182BF4F7D0F9F4F72AF8D7 -:10C3300054F82000EFF77EFF0022474BEBF70AF995 -:10C34000EBF7DAF900EE100A1FE080EE800A10EE3B -:10C35000100AEBF7D7F853EC192BEBF7FBF853EC7B -:10C36000182BF4F7B3F9F4F70DF854F82000EFF7B1 -:10C3700061FF0022394BEBF7EDF8394A3E4BF4F7F9 -:10C38000A5F9EBF7B9F900EE100A0DF5FB6DBDEC60 -:10C39000068B10BDC3F51C4180B5B0EE401AF5EE1A -:10C3A000400AF1EE10FA04DD81EE200ABDE80140FA -:10C3B00048E7F5EE400AF1EE10FA24D581EE200AA6 -:10C3C000B5EE401AF1EE10FA0EDBFFF73BFF10EE70 -:10C3D000100AEBF797F8224A224BF4F777F9EBF7BC -:10C3E0008BF900EE100A01BDFFF72CFF10EE100ACA -:10C3F000EBF788F81A4A1C4BF4F768F9EBF77CF96D -:10C4000000EE100A01BDB5EE401AF1EE10FA02DDA1 -:10C410009FED160A01BDB5EE401AF1EE10FA02D5F5 -:10C420009FED130A01BD9FED130A01BD014908608C -:10C430007047000040BE0020000000000000E03F08 -:10C440000000000000407F40000000000000503F5E -:10C450000100803FFB21F93F000050BF0000503F2A -:10C46000182D4454FB210940FB2109C0DB0FC93FB3 -:10C47000DB0FC9BF00000000FB21F9BF0000000076 -:10C480000200000004000000060000000800000098 -:10C490000A0000000C0000000E0000001000000068 -:10C4A0001200000014000000170000001900000036 -:10C4B0001B0000001D0000001F0000002100000004 -:10C4C00023000000250000002700000029000000D4 -:10C4D0002B0000002D0000002F00000031000000A4 -:10C4E0003300000035000000370000003900000074 -:10C4F0003B0000003D0000003F0000004100000044 -:10C500004300000046000000480000004A00000010 -:10C510004C0000004E0000005000000052000000DF -:10C520005400000056000000580000005A000000AF -:10C530005C0000005E00000060000000620000007F -:10C540006400000066000000680000006A0000004F -:10C550006C0000006E00000070000000720000001F -:10C560007400000076000000780000007A000000EF -:10C570007C0000007E0000008000000082000000BF -:10C580008400000086000000880000008A0000008F -:10C590008C0000008E00000090000000920000005F -:10C5A0009400000096000000980000009A0000002F -:10C5B0009C0000009E000000A0000000A2000000FF -:10C5C000A4000000A6000000A8000000AA000000CF -:10C5D000AC000000AE000000B0000000B20000009F -:10C5E000B4000000B6000000B8000000BA0000006F -:10C5F000BC000000BE000000C0000000C20000003F -:10C60000C4000000C6000000C8000000CA0000000E -:10C61000CC000000CE000000D0000000D2000000DE -:10C62000D4000000D6000000D8000000DA000000AE -:10C63000DC000000DE000000E0000000E20000007E -:10C64000E4000000E6000000E7000000E900000050 -:10C65000EB000000ED000000EF000000F100000022 -:10C66000F3000000F5000000F7000000F9000000F2 -:10C67000FB000000FD000000FF00000001010000C1 -:10C680000301000004010000060100000801000091 -:10C690000A0100000C0100000E0100001001000062 -:10C6A0001201000014010000160100001801000032 -:10C6B000190100001B0100001D0100001F01000006 -:10C6C00021010000230100002501000027010000D6 -:10C6D000290100002A0100002C0100002E010000A9 -:10C6E000300100003201000034010000360100007A -:10C6F00038010000390100003B0100003D0100004D -:10C700003F0100004101000043010000450100001D -:10C7100046010000480100004A0100004C010000F1 -:10C720004E010000500100005101000053010000C3 -:10C730005501000057010000590100005B01000095 -:10C740005C0100005E010000600100006201000069 -:10C75000640100006501000067010000690100003C -:10C760006B0100006D0100006E010000700100000F -:10C7700072010000740100007601000077010000E2 -:10C78000790100007B0100007D0100007F010000B5 -:10C790008001000082010000840100008601000089 -:10C7A00087010000890100008B0100008D0100005D -:10C7B0008E01000090010000920100009401000031 -:10C7C0009501000097010000990100009B01000005 -:10C7D0009C0100009E010000A0010000A2010000D9 -:10C7E000A3010000A5010000A7010000A8010000AE -:10C7F000AA010000AC010000AE010000AF01000082 -:10C80000B1010000B3010000B4010000B601000056 -:10C81000B8010000B9010000BB010000BD0100002B -:10C82000BF010000C0010000C2010000C4010000FF -:10C83000C5010000C7010000C9010000CA010000D5 -:10C84000CC010000CE010000CF010000D1010000AA -:10C85000D3010000D4010000D6010000D701000080 -:10C86000D9010000DB010000DC010000DE01000056 -:10C87000E0010000E1010000E3010000E50100002B -:10C88000E6010000E8010000E9010000EB01000002 -:10C89000ED010000EE010000F0010000F1010000D8 -:10C8A000F3010000F5010000F6010000F8010000AE -:10C8B000F9010000FB010000FD010000FE01000085 -:10C8C0000002000001020000030200000402000058 -:10C8D0000602000008020000090200000B0200002E -:10C8E0000C0200000E0200000F0200001102000006 -:10C8F00013020000140200001602000017020000DC -:10C90000190200001A0200001C0200001D020000B3 -:10C910001F0200002002000022020000230200008B -:10C920002502000026020000280200002902000063 -:10C930002B0200002C0200002E0200002F0200003B -:10C940003102000032020000340200003502000013 -:10C9500037020000380200003A0200003B020000EB -:10C960003D0200003E0200004002000041020000C3 -:10C97000430200004402000046020000470200009B -:10C98000480200004A0200004B0200004D02000075 -:10C990004E0200005002000051020000530200004D -:10C9A0005402000055020000570200005802000027 -:10C9B0005A0200005B0200005C0200005E02000000 -:10C9C0005F020000610200006202000064020000D9 -:10C9D00065020000660200006802000069020000B3 -:10C9E0006A0200006C0200006D0200006F0200008D -:10C9F0007002000071020000730200007402000067 -:10CA00007502000077020000780200007A02000040 -:10CA10007B0200007C0200007E0200007F0200001A -:10CA200080020000820200008302000084020000F5 -:10CA30008602000087020000880200008A020000CF -:10CA40008B0200008C0200008E0200008F020000AA -:10CA50009002000092020000930200009402000085 -:10CA60009602000097020000980200009902000060 -:10CA70009B0200009C0200009D0200009F0200003B -:10CA8000A0020000A1020000A2020000A402000017 -:10CA9000A5020000A6020000A8020000A9020000F2 -:10CAA000AA020000AB020000AD020000AE020000CE -:10CAB000AF020000B0020000B2020000B3020000AA -:10CAC000B4020000B5020000B7020000B802000086 -:10CAD000B9020000BA020000BC020000BD02000062 -:10CAE000BE020000BF020000C1020000C20200003E -:10CAF000C3020000C4020000C5020000C70200001B -:10CB0000C8020000C9020000CA020000CB020000F7 -:10CB1000CD020000CE020000CF020000D0020000D3 -:10CB2000D1020000D3020000D4020000D5020000B0 -:10CB3000D6020000D7020000D8020000DA0200008E -:10CB4000DB020000DC020000DD020000DE0200006B -:10CB5000E0020000E1020000E2020000E302000047 -:10CB6000E4020000E5020000E6020000E802000026 -:10CB7000E9020000EA020000EB020000EC02000003 -:10CB8000ED020000EE020000F0020000F1020000E1 -:10CB9000F2020000F3020000F4020000F5020000BF -:10CBA000F6020000F7020000F8020000FA0200009E -:10CBB000FB020000FC020000FD020000FE0200007B -:10CBC000FF02000000030000010300000203000058 -:10CBD0000303000005030000060300000703000034 -:10CBE00008030000090300000A0300000B03000013 -:10CBF0000C0300000D0300000E0300000F030000F3 -:10CC000010030000110300001303000014030000D0 -:10CC100015030000160300001703000018030000AE -:10CC2000190300001A0300001B0300001C0300008E -:10CC30001D0300001E0300001F030000200300006E -:10CC4000210300002203000023030000240300004E -:10CC500010B500F081F801F08DF9FEF79BFF454C0F -:10CC60004422002104F10C00E6F7B4FF0A2200215F -:10CC70002046E6F7AFFF0A2200213F48E6F7AAFF69 -:10CC80000C22002104F15400E6F7A4FF3B4C4FF4C2 -:10CC9000B67200212046E6F79DFF1E20208010BDC1 -:10CCA00001F068B980B501F099F9BDE80140FEF7DF -:10CCB0007DBF3148F6F7C8B810B42F482D491CC8BD -:10CCC0001CC10C380021418010BC704710B50446CF -:10CCD000FFF7E4F92088401C2080B4F9021080B2EC -:10CCE000884200DB2180012010BD38B5214C256D24 -:10CCF00004F154012046FFF7E9FF1E2204F154011C -:10CD00001E48FFF71CFA012104F15400FEF754FFFE -:10CD1000A80705D5002104F1540001F061F904E0F1 -:10CD2000012104F1540001F05BF9002104F10C0031 -:10CD3000BDE8344007E0124870470E49CA6822EA4D -:10CD40000000C860704702681143016070470B48DB -:10CD500070470C49086070470A480068002101606C -:10CD6000416081604FF48061C160016141610121D6 -:10CD70000176704750B4002050BD0020809C0020F8 -:10CD80005CB4002044BE002080B5C046C046024AC4 -:10CD900011001820ABBEFBE7260002000278C9B2E2 -:10CDA0008A421AB11CBF10F8012FF9E718BF002002 -:10CDB00070470000C9B2830706D0521E22D310F874 -:10CDC000013B9942F7D11FE0083A13D302F1040264 -:10CDD00041EA012141EA014150F8043B121F21BF01 -:10CDE0004B40A3F1013C2CEA030C1CF0803FF3D034 -:10CDF000C9B2001F083210F8013B521E28BF91EA49 -:10CE0000030FF8D818BF0120401E704730B44368A4 -:10CE100003F0004201211B031B0B436004BF0368A6 -:10CE2000002B08D10DE00368DD0F45EA440444609F -:10CE30005B000360491E4468E302F4D523031B0B27 -:10CE4000436043681A434260084630BC70470000A4 -:10CE500070B504460D466068C0F30A5040F2FF7199 -:10CE6000884207D16068000304BF2068002817D0FB -:10CE7000022070BD20B92046FFF7C8FF012867DAFD -:10CE8000012D0FDB40F2FF71091A8D420AD3606851 -:10CE900000284CBF9FED2F0B9FED300B84ED000B56 -:10CEA000012070BD4142A942616806DA6FF31E514C -:10CEB000401941EA0050606041E0401E6368012271 -:10CEC000451962F31F5305F1350001F0004163601D -:10CED000352803D361600020206070BD002215F169 -:10CEE0001F0F04DA2268236000202035606068424A -:10CEF00013D0521E25689241C0F12003D2439D40B9 -:10CF000045EAD27225686668C54006FA03F32B43EA -:10CF10002360636823FA00F0606060680843606023 -:10CF2000B2F1004F03D80DD12078C0070AD5206890 -:10CF3000401C2060206828B96068401C60604FF089 -:10CF4000FF3070BD6068884204BF20680028F6D1B9 -:10CF5000002070BD000000000000F0FF0000000095 -:10CF60000000F07F91FBF2F303FB1211C0E90031E6 -:10CF70007047002848BF4042704700000CB41CB501 -:10CF8000044604A801900A46009401AB00A9074892 -:10CF900078441830F6F7B6FF009900220A7000288E -:10CFA0005CBF0098001B16BC5DF80CFB2F9FFEFFBA -:10CFB0002DE9F841174680461D46012FA8BFB9420A -:10CFC0001BDB481E04B2062609E0E11B16FB0450D9 -:10CFD00006FB01510622E9F745FF601E04B2BC4280 -:10CFE000F3DA06E016FB07F1481941440622E9F797 -:10CFF00039FF7F1E3FB2002FF4D5BDE8F1812DE946 -:10D00000F043079D089E002430F8147023F8147034 -:10D0100030F8147022F81470012716E04FF0060E55 -:10D0200000EB440C0EFB07FE33F914903EF90C8024 -:10D03000C845B8BF23F814803EF90CC032F914E09B -:10D04000E645B8BF22F814C07F1C8F42E6DB33F9F7 -:10D0500014C032F914704FEA6C0C0CEB670725F81A -:10D06000147012F81470FF0703D413F81470FF073C -:10D0700004D535F814707F1C25F8147032F814703C -:10D0800033F814C0A7EB0C073FB2002F48BF47F698 -:10D09000FF7726F81470641C032CB5DBBDE8F08321 -:10D0A00000220F23520040008842A4BF401A521CA5 -:10D0B0005B1EF7D110B27047012808DB002100B2D7 -:10D0C000B0F5804FBCBF4000491CF8DB0AE008B94E -:10D0D0000F2070470021154A01E04000491C00B2B2 -:10D0E0009042FADA08B27047012807DB0021B0F15C -:10D0F000804FBCBF4000491CF9DB09E008B91F2084 -:10D100007047002101E04000491C10F1804FFADA1D -:10D1100008B270470649884208BF47F6FF7002D040 -:10D12000002848BF404200B27047000000C0FFFF27 -:10D130000080FFFF70B504460D461646FFF7BCFFA2 -:10D1400030802846FFF7B8FFB6F9003004FA03F242 -:10D1500005FA00F1181A09B212B29142BCBF52107E -:10D16000401E30801046BDE8704099E72DE9F84F29 -:10D170008846CEB081461646B8F1210F80F22C8148 -:10D180000120FFF78DFF0022002394461746062159 -:10D190000FE001FB07FE7F1C3EF90940CE4414FB63 -:10D1A00000CCBEF9024014FB0033BEF9044014FB6E -:10D1B00000224745EDDB4FEAEC30ADF80000D81314 -:10D1C000ADF80200D013ADF80400002014E001FB1C -:10D1D00000F202EB0903B3F9047032F90920B3F944 -:10D1E000023012FB02F213FB032217FB07220EABE5 -:10D1F000D21223F81020401C4045E8DB00221EA874 -:10D2000015E001FB02F7BDF8004037F809301B1BA1 -:10D210003B521EABFB184F44BDF802507C88641B88 -:10D220005C80BF88BDF804403F1B9F80521C424574 -:10D23000E7DB02AF002205ACBA607A60029222629C -:10D2400022610592E2606260A261A260E2616261B5 -:10D2500050E001FB02F3DDF814C033F909E01D5E74 -:10D26000D4F810A01EFB05CECDF814E00DF1780E19 -:10D2700003EB090C9E44BCF90250BEF902B015FB49 -:10D280000BAAC4F810A0BCF904C0D4F820A0BEF9C1 -:10D2900004B01CFB0BAAC4F820A033F900A0D4F8FA -:10D2A0000CB015FB0AB5E5606560A5691CFB0A5565 -:10D2B000A561A560E569BEF902A01CFB0A5CC4F883 -:10D2C0001CC0C4F814C00DF1380C3CF91250DDF844 -:10D2D00008C01B5E13FB05C302937B68BEF902C046 -:10D2E0001CFB05337B60BB68BEF904C01CFB053327 -:10D2F000BB60521C4245ACDB2025029840100290D6 -:10D300004FF0000A78684FEA6008B868C7F80480F0 -:10D310004FEA6009C7F808904FF0000B0C2005A9F0 -:10D3200000FB0A1050F82B00FFF7DEFEA842B8BF42 -:10D3300005460BF1010BBBF1030FEFDB0AF1010A0C -:10D34000BAF1030FE8DB4FF0000A57F82A00FFF7A5 -:10D35000CBFEA842B8BF05460AF1010ABAF1030F95 -:10D36000F3DB6068A8408014F080F0887080A068CB -:10D37000A8408014B081B089B0806069A840801452 -:10D38000F081F08970810598A84080143080206970 -:10D39000A84080143081206AA8408014308202980E -:10D3A0004E99A8408014088008FA05F04E99801420 -:10D3B000488009FA05F04E9980148880B6F900007B -:10D3C0000628A4BFB6F90800062805DBB6F9100048 -:10D3D0000628A8BF042000DA00204FB0BDE8F08F77 -:10D3E0002DE9F04F804693B08946B2F910A0B2F90A -:10D3F0000800B2F90A101C9D1F4610FB0AF301FB3E -:10D400001131109110ABB2F900E0B2F90C101AFB17 -:10D410000EF401FB114159601EFB00F4B2F9021039 -:10D4200001FB114199604FF0000C109C012153F851 -:10D430002160B442BCBF34468C46491C0329F6DB4C -:10D44000012CC0F2A3800FFA8CFC4FF400640BA9EE -:10D4500003AE05ABBCF1000F55D1ADF82C005089DF -:10D46000C880B2F902004042ADF8140050894880EB -:10D47000108A08810221B2F90C0000F0B7F80028E8 -:10D4800057D000F0B9F83C80BDF90C0080107880CE -:10D49000B6F902008010B88002A9B7F90030B7F9D8 -:10D4A0000220B7F9040013FB03F312FB023210FB56 -:10D4B000002000F07BF90002B7F90010001441438E -:10D4C000C9123980B7F902104143C9127980B7F9FE -:10D4D000041010FB01F0C012B880B7F900C0B8F911 -:10D4E0000000B7F90230B8F90210B7F904201CFBAC -:10D4F00000F013FB0100B8F9041012FB010E744692 -:10D50000704601215DE0BCF1010F1DD1ADF82CA0EA -:10D5100090894880B2F90A004042ADF81400908921 -:10D52000C880108808810221B2F9020000F05EF87C -:10D5300000282BD000F060F8B6F902008010388087 -:10D540007C80BDF90C00A5E7BCF1020F1ED1ADF83F -:10D550002CE050884880B2F90C004042ADF814002D -:10D56000D088C880108908810221B2F90A0000F031 -:10D570003DF858B100F040F8BDF90C00801038803B -:10D58000B6F9020080107880BC8085E700202AE090 -:10D59000062606FB01FA0AEB08063AF908A0B6F9D6 -:10D5A00002B0B6F904601CFB0AFA13FB0BAA12FBCB -:10D5B00006A6B645B8BFB6468642D8BF304634192F -:10D5C000491C4945E4DBAEEB0000C0122880494607 -:10D5D0000120FFF765FDE11210FB01F0400000148F -:10D5E0004042F880012013B0BDE8F08F40425880DF -:10D5F00007AB09AA0BA808E003A8019005A80090B2 -:10D6000007AB09AA02210BA850E02DE9F84F80468C -:10D6100091469A4600250C46062618E03AF915C0B0 -:10D6200039F91530021412FB0CFC4FEAEC3CC0F344 -:10D630004E0013FB02C210FB03F002EBE03008EBDC -:10D640004502400088527F1CA74205DB6D1CA542A5 -:10D6500029DA2F4606FB058B3BF917006A1EC0032B -:10D6600012B206FB07F10BE001EB080C3BF912309C -:10D670003CF912C013FB0CF3521EA0EB830012B254 -:10D68000002AF1D5BD42C9D1012801DA00200BE002 -:10D6900000A900F08BF8011429F81510C0F34E0012 -:10D6A0002AF81500CFE70120BDE8F28F2DE9F047F9 -:10D6B000DDF820E0099E4FF0000C8846062526E0A4 -:10D6C00005FB0C0936F914A039F9149019FB0A77F7 -:10D6D000641E24B2002CF3D53EF91C4032F91C9094 -:10D6E00033F91CA0E403A4EB87073C1414FB0AFAEB -:10D6F0004FEAEA3AC7F34E0719FB04A417FB09F7F0 -:10D7000004EBE7377F0026F81C700CF1010CC445D0 -:10D7100029DA0027ACF10104DBE700EB410C15FB33 -:10D7200004CC36F914E0BCF900C01CFB0EFCA7EBDE -:10D730008C07641C24B2A8F1010CA445EDDA33F97E -:10D7400011E032F911C03C1414FB0EFE4FEAEE3E1C -:10D75000C7F34E071CFB04EE17FB0CF70EEBE73785 -:10D760007F0026F81170491E09B2002904D436F949 -:10D770001170FF034C1CDDE7BDE8F08710B50021F8 -:10D780000022002801D5002010BD1023840F520074 -:10D7900004EB81018000521C914226BF891A521C61 -:10D7A000521E5B1EF2D1D003001410BD38B50546E1 -:10D7B0000C46012D04DA002020804FF0804032BD5D -:10D7C000FFF792FC208005FA00F1C0F11E002080D6 -:10D7D000C20758BF491000044014401C208048165E -:10D7E00010380FF2240200B232F9103002EB400080 -:10D7F000C9014088181A490C10FB01F0C0EBC33076 -:10D8000021884000084132BDFF7F2E7CAE787675BE -:10D810007D72BA6F296DC26A8368666669648962BF -:10D82000C260135F7A5DF55B825A2159CF578B56E0 -:10D8300055552C540F53FC51F450F64F014F144ED4 -:10D84000304D534C7E4BAF4AE74925496848B247B3 -:10D8500000475446AD450A456B44D1433B43A8427B -:10D8600019428E410641824000400000924800214A -:10D8700041608160C160016141618161017001218C -:10D880004170704770B52DED068BF0EE608AB0EEFA -:10D89000419A0024884D2878012800F00481687896 -:10D8A000002852D12E69002E00F0A280D5ED010A89 -:10D8B00030EE600A10EE100AE9F724FE21F0004174 -:10D8C000E9F71AFF09EE900AB0EE680AD5ED020AF0 -:10D8D00030EE600A10EE100AE9F714FE21F0004164 -:10D8E000E9F70AFF0AEE100AB0EE490AD5ED030A7D -:10D8F00030EE600A10EE100AE9F704FE21F0004154 -:10D90000E9F7FAFE00EE100ADFED690AF4EE609A1C -:10D91000F1EE10FA16D5B4EE60AAF1EE10FA11D5B8 -:10D92000B4EE600AF1EE10FA0CD5701C28610728DD -:10D93000C0F2B98020466860A860E86028610120D4 -:10D940006870B0E020462861ADE06869002846D1E3 -:10D95000286900284CD0D5ED010A30EE600A10EE9F -:10D96000100AE9F7CFFD21F00041E9F7C5FE09EE05 -:10D97000900AB0EE680AD5ED020A30EE600A10EEA9 -:10D98000100AE9F7BFFD21F00041E9F7B5FE0AEE04 -:10D99000100AB0EE490AD5ED030A30EE600A10EE27 -:10D9A000100AE9F7AFFD21F00041E9F7A5FE00EE0E -:10D9B000100ADFED400AF4EE609AF1EE10FA09DA8F -:10D9C000B4EE60AAF1EE10FA04DAB4EE600AF1EEF9 -:10D9D00010FA68DB012068612046286163E00128B5 -:10D9E00061D12E69322E02DA701C28615BE00DD104 -:10D9F00085ED010AB0EE680A85ED020AB0EE490A2B -:10DA000085ED030A2869401C28614CE0AE69322E7E -:10DA100044DAD5ED010A30EE600A10EE100AE9F79B -:10DA200071FD21F00041E9F767FE09EE900AB0EEC2 -:10DA3000680AD5ED020A30EE600A10EE100AE9F726 -:10DA400061FD21F00041E9F757FE0AEE100AB0EE41 -:10DA5000490AD5ED030A30EE600A10EE100AE9F724 -:10DA600051FD21F00041E9F747FE00EE100A701C5D -:10DA7000A861DFED100AF4EE609AF1EE10FA09DA0F -:10DA8000B4EE60AAF1EE10FA04DAB4EE600AF1EE38 -:10DA900010FA08DB01202870044604E020462861C3 -:10DAA0006861A86168702046BDEC068B70BD0000FF -:10DAB0006666A63F6766A63FE0BA002038B5044612 -:10DAC000E4F74AF890F97450002C02D14FF0FF307F -:10DAD00032BD092200212046E6F77CF86D1E062D96 -:10DAE00036D8DFE805F0040C131A21282F00012096 -:10DAF00060704FF0FF30E070012020722CE04FF09A -:10DB0000FF30207020710120207225E04FF0FF309F -:10DB100060700120E07020721EE04FF0FF30207036 -:10DB200001212171207217E001206070E0704FF038 -:10DB3000FF30207210E0012020704FF0FF30207184 -:10DB4000207209E04FF0FF306070E070207203E057 -:10DB50000120207020712072002032BD0FB42DE909 -:10DB6000FE4300A80FF2E0311CC91CC000A800F061 -:10DB7000C5FD06469DF82970DD4807700069D0F89C -:10DB80005405C11705220023F0F778F90522A2FBFE -:10DB9000004502FB0155384600F03FF8D548A0FB90 -:10DBA000048900FB05994046494600F003FD4046C4 -:10DBB000494600F010FD4FF47A01304600F0A0FD18 -:10DBC0004FF48031304600F09DFD00F083FD00F001 -:10DBD00086FD00F089FD00F08CFD00A8FFF76EFFC8 -:10DBE00000A801F06AF9002804D001460FF2643061 -:10DBF000E4F76EFE214689B2012001F0A5F901206B -:10DC0000BDE8FE035DF814FB80B500F026F8C821DE -:10DC1000002001F099F9012002BD80B5C00710D5A0 -:10DC2000222200210846E4F797FB2222012100204E -:10DC3000E4F792FB222202210020BDE80840E4F72D -:10DC40008BBB222200210846E4F786FB2222012119 -:10DC50000020BDE80840E4F77FBB80B52222002108 -:10DC60000120E4F779FB222201210846E4F774FB46 -:10DC7000222202210120BDE80840E4F76DBB00002C -:10DC80002DE9F047A0B000200146CDE90A011DA80A -:10DC90000A460B460EC019A81021E5F7B3F815A8DF -:10DCA0001021E5F7AFF810A81421E5F7ABF807A8A5 -:10DCB00000210A4606C005A806C00CA81021E5F7F9 -:10DCC000A1F800200490ADF80E008DF80C00064677 -:10DCD000F8F7C4FF0746DFF818A2DAF81000D0F80A -:10DCE0005405C11705223346F0F7C8F80522A2FBF8 -:10DCF000004502FB015503A801900DF10E000090B4 -:10DD000004AB0CAA05A907A800F0EBFF002842D13C -:10DD1000DAE90201774AA2FB048902FB059910EBBC -:10DD2000080041EB0901CAE902019AF80020D20774 -:10DD300027D54FF0000816E007EB4802B2F906209D -:10DD400000EE102AB8EEC00AF2EE040A80EE200AB5 -:10DD5000DFED660A20EE200A1DAA02EB880282EDA2 -:10DD6000000A08F10108B8F1030FE5DB7A690292B5 -:10DD7000CDE900010CAB1DAA05A907A800F036FCEF -:10DD800008E000220292CDE900010CAB05A907A82A -:10DD900000F02CFC761CF6B230469DF80C100029E1 -:10DDA00001D00328A7DB022803DB0FF2B410E4F74D -:10DDB0008FFD9AF80000C00730D50AA919A800F015 -:10DDC0007AFC4FF0000811E019A850F82800E9F794 -:10DDD00099FB02460B4600204749E9F7BBFBF2F7E7 -:10DDE000D1FA15A941F8280008F10108B8F1040F8B -:10DDF000EADB102215A910A8E4F7BAFC78698DF8BF -:10DE000050003E48006C00F10C04627D10A9E368EC -:10DE1000C0681818E4F7ACFC0120A0749AF8000060 -:10DE2000800730D50AA919A800F04BFC4FF0000874 -:10DE300011E019A850F82800E9F764FB02460B46E8 -:10DE400000202D49E9F786FBF2F79CFA15A941F865 -:10DE5000280008F10108B8F1040FEADB102215A927 -:10DE600010A8E4F785FC00208DF850002348C06B13 -:10DE700000F10C04627D10A9E368C0681818E4F78B -:10DE800077FC0120A074012020B0BDE8F08780B5A8 -:10DE9000E4F760FA164908611949C0F8601500F204 -:10DEA000605018494160184981600FF21501C16046 -:10DEB0000FF25D010161012000F003FB012002BDB2 -:10DEC0000B48006990F85105002801D100207047E7 -:10DED00005E080B5002000F006F8012002BD0B48E7 -:10DEE00090F90000704709490870704700008047AA -:10DEF000C8BB002040420F0080842E41000000205B -:10DF00005DDB010809DC010881DC01086FBE00202F -:10DF100018B440F20D120B7812FB030301241C709D -:10DF20000B7812FB03035C700B7812FB03032224B3 -:10DF30009C700B7812FB03000022C2700878401C12 -:10DF4000087011BCC5E700000100000001000000DE -:10DF500001000000444D5020494628256429000056 -:10DF6000444D5020524646001FB501F023FE2121AA -:10DF700001601FBD10B5DFF8DC44FEF7E8FE606607 -:10DF80000020024603E004EB8001CA62401C09281D -:10DF9000F9DB10462066E065FEF7CDFEA0664FF483 -:10DFA000FA7020606060DFF8B004A0609FED0A0A9C -:10DFB00084ED030A84ED040A84ED050AB5EE000A37 -:10DFC00084ED060A84ED070ADFF89004206207203A -:10DFD0006062A06210BD00009A99193F704700006E -:10DFE000F8B52DED048B0C469FED3D8ADFF8646497 -:10DFF00000207065B065306E401C3066DFF86054FC -:10E00000012C02D1002068672867F06D0A2839DAF0 -:10E010001E220021706EFEF7ABF8C5F88C001E22A0 -:10E020000121706EFEF7A4F8F16D06EB8102336EEC -:10E0300003EB8307BB00D362012921DBD5F88C30C9 -:10E0400093ED000AD0ED000A30EE600AD3ED010A2C -:10E0500090ED011A70EEC10A93ED021AD0ED021A8A -:10E0600031EE611A05EB810020EE000A00EEA00AF5 -:10E0700001EE010A80ED050AD36A926A9A1A826358 -:10E08000481CF065316E0A2902DA0320C5F88800C1 -:10E09000F06D0A28C0F23781401EF065706E0A29C3 -:10E0A00020D11E220A21FEF773F885ED030A1E22F5 -:10E0B0000A21706EFEF78AF885ED040A1E220A21F5 -:10E0C000706EFEF7A1F885ED050A0020092844DAF4 -:10E0D00005EB800191ED060A38EE008A401CF5E759 -:10E0E000000000001E220A21FEF742F8D5F88C102D -:10E0F00095ED030AD0ED000A30EE600AD1ED000A7A -:10E1000030EE200A85ED030A95ED040AD0ED010AF0 -:10E1100030EE600AD1ED010A30EE200A85ED040AE6 -:10E1200095ED050AD0ED020A30EE600AD1ED020A43 -:10E1300030EE200A85ED050AF06D05EB800090EDCC -:10E14000050AD0ED040A30EE200AD0ED030A30EEC5 -:10E15000200AF0EE080A20EE208A95ED030AF2EE7E -:10E16000040AC0EE208A95ED040A80EE209A95ED0F -:10E17000050AC0EE209A306E0A2805D1C5ED008A46 -:10E1800085ED019AC5ED029A00270FE01E22C7F126 -:10E19000090109B2706EFDF7EBFF95ED021AD5ED9E -:10E1A000010A95ED000A00F0FBF87F1C0A2FEDDB59 -:10E1B000F06A716A726D914249DAA96F002908D13B -:10E1C00028660121A967C5ED008A85ED019AC5ED94 -:10E1D000029AB16AB26D91420CDAE96F00290BD153 -:10E1E00068660121E967C5ED008A85ED019AC5EDF4 -:10E1F000029A01E00021E967296E411A2967326815 -:10E200006B6EC31A9A420CD2EB6F012B09D100201E -:10E21000C5F88000C5F8840068670120C5F888004B -:10E2200060E08A420CD2A96F012909D10020C5F80B -:10E230008000C5F8840068670220C5F8880051E0B6 -:10E24000A96E401A68670320C5F888004AE0C5ED4A -:10E25000008A85ED019AC5ED029A0021A967E96758 -:10E260002967D5F88010002903D1A8660121C5F8D7 -:10E270008010A96E411A69679FED740A28EE000AA2 -:10E28000B5EE400AF1EE10FA03DC9FED710A28EEBC -:10E29000000AD6ED020AB3EE041A60EE810AF4EE2B -:10E2A000400AF1EE10FA08D5D5F88410002907D1FC -:10E2B000E8660121C5F8841002E00021C5F8841049 -:10E2C0007168A1F5FA71EA6E801A814207D2D5F819 -:10E2D0008400012803D10420C5F8880002E003204F -:10E2E000C5F8880000200CE006EB80010A6BCA62CA -:10E2F000082805DA05EB8001CA698A610A6CCA63DD -:10E30000401C0928F0DBD5F88800012806D044D34A -:10E31000032822D011D304282FD03EE0B06E012173 -:10E32000C162296F016302214163002C35D1BDEC2C -:10E33000048BBDE8F440FEF706BDB06E0121C1625A -:10E34000296F016304214163002C26D10221BDEC19 -:10E35000048BBDE8F440FEF7F6BCB06E0121C1624B -:10E36000696F016308214163002C16D10221BDECC5 -:10E37000048BBDE8F440FEF7E6BCB06E0121C1623B -:10E38000696F016310214163002C06D10221BDECAD -:10E39000048BBDE8F440FEF7D6BCBDEC048BF1BDA8 -:10E3A000D0ED001A31EEC00AD0ED011A71EEE00A8C -:10E3B000D0ED021A31EEC11AB5EE400AF1EE10FAB4 -:10E3C00001D5B1EE400AF5EE400AF1EE10FA01D5A2 -:10E3D000F1EE600AB5EE401AF1EE10FA01D5B1EE99 -:10E3E000411A1C48D0ED031AB4EE610AF1EE10FA9E -:10E3F0000FD5D0ED041AF4EE610AF1EE10FA08D54B -:10E40000D0ED051AB4EE611AF1EE10FA01D5012132 -:10E4100000E00021D0ED061AB4EE610AF1EE10FA28 -:10E4200010D590ED070AF4EE400AF1EE10FA09D586 -:10E4300090ED080AB4EE401AF1EE10FA02D5826DA2 -:10E44000521C8265426D89184165704700007A440C -:10E4500000007AC474930020000040413333B33E7F -:10E46000A8AB0020704780B5022808D0042806D049 -:10E47000082804D0102802D04FF4803104E040076F -:10E48000411300EB91408113882001F0AFFC002084 -:10E4900002BD80B5B0F5FA6F0DD0B0F57A7F0AD025 -:10E4A000B0F5FA7F07D0FA2805D04FF07A718820AE -:10E4B00001F0FBFB03E0C103882001F0F6FB002024 -:10E4C00002BD80B501F0D5FF02F039FE00280CD066 -:10E4D00002F035FE59230FF230220FF24421FFF7EC -:10E4E000C1FFBDE8014002F02ABE03F08EFB002808 -:10E4F0000CD003F08AFB5A230FF20C220FF22021DA -:10E50000FFF7B0FFBDE8014003F07FBB03F067FDFC -:10E5100000280CD003F063FD5B230FF2EC120FF226 -:10E520000021FFF79FFFBDE8014003F058BD04F054 -:10E53000AAF900280CD004F0A6F95F230FF2C81244 -:10E540000FF2DC11FFF78EFFBDE8014004F09BB92C -:10E5500004F035FC00280CD004F031FC60230FF2ED -:10E56000A8120FF2BC11FFF77DFFBDE8014004F0D7 -:10E5700026BC05F022FA00280CD005F01EFA612313 -:10E580000FF284120FF29811FFF76CFFBDE8014003 -:10E5900005F013BA0220FFF766FF4FF4FA70FFF799 -:10E5A00078FF4FF00071882001F025FCBDE80140A4 -:10E5B00001F09ABF10B54FF47A720023EFF75EFCBA -:10E5C000044601F077FB204601F085FB204601F070 -:10E5D000A7FB002010BD80B54FF47A720023EFF73F -:10E5E0004DFC01F08AFB002002BD00002DE9F04740 -:10E5F00084B00E4617469A46DDF838804FF0000981 -:10E60000DDE90C45002803D022462B4601F0E1FC51 -:10E61000002E0ED0B6F90000009000A8B6F9021046 -:10E620004160B6F90410816022462B46494601F04C -:10E630009BFC002F24D09FED260AD7ED000A60EE48 -:10E64000800AFDEEE00ACDED000A00A8D7ED010A30 -:10E6500060EE800AFDEEE00AC0ED010AD7ED020A85 -:10E6600020EE800ABDEEC00A80ED020A22462B464B -:10E6700048F0200101F0C8FC002801D04FF020092B -:10E68000BAF1000F0DD022462B460021504601F072 -:10E69000F7FC002801D1012004E04FF02009002000 -:10E6A00000E00020002802D001F094FD8146484699 -:10E6B00004B0BDE8F08780B50A4600A903F0CAFAA5 -:10E6C00002BD80B50A4600A903F022FB02BD00008E -:10E6D0000000004280B501F029FD002002BD80B598 -:10E6E00001F012FD002002BD80B501F013FD0020F5 -:10E6F00002BD80B501F014FD002002BD05F0E3BCB1 -:10E7000001F0D3BA01F072BB696E765F696E69740D -:10E710005F696E76656E73656E73655F61706900C3 -:10E72000433A5C54656D705C4955535C494B445C9D -:10E730005461652D536F6F5C656D626564646564DB -:10E740005F7265666572656E63655F666F725F4E68 -:10E750006F74655F335C656D6265646465645C49B4 -:10E760006E76656E53656E73655C6D706C5C696E1C -:10E7700076656E73656E73655F6170692E63000008 -:10E7800038B50C461546010A8DF8001000A94870EE -:10E7900048782018B0F5807F02DD4FF0FF3032BDA1 -:10E7A00000AB02226D21682005F048FE002802D04F -:10E7B0004FF0FF3032BD2B4622466F21682005F016 -:10E7C0003DFE002802D04FF0FF3032BD002032BDA8 -:10E7D00038B50C461546010A8DF8001000A948709E -:10E7E00048782018B0F5807F02DD4FF0FF3032BD51 -:10E7F00000AB02226D21682005F020FE002802D027 -:10E800004FF0FF3032BD2B4622466F21682005F0C5 -:10E810002DFE002802D04FF0FF3032BD002032BD67 -:10E820002DE9F04F93B005460E461446002E02D156 -:10E830004FF0FF3065E00027A8460AE0B9F1010F6C -:10E8400005DB4A4639460FF2407005F01EFE57447C -:10E85000BFB2474544DA4FF0000907EB060BA8EBBF -:10E860000700412802DB4FF0400A01E0A5EB070A50 -:10E870005A46514689B23846FFF782FF002802D037 -:10E880006FF001003DE002AA514689B23846FFF719 -:10E890009FFF002802D06FF0020032E01FFA8AFAD0 -:10E8A000524602A9584605F0FDFD002804D009F1A2 -:10E8B0000109642005F0EDFDA9F101000328CED384 -:10E8C000B9F1040FBADB9DF808000090BB5D524619 -:10E8D00039460FF2986005F0D8FD6FF0030010E0A4 -:10E8E000200A8DF804008DF8054001AB022270214A -:10E8F000682005F0A3FD002802D06FF0040000E0BE -:10E90000002013B0BDE8F08F90F90010012901DB61 -:10E9100000207047002901D50420704790F90110AC -:10E92000012901DB01207047002901D5052070472E -:10E9300090F90200012801DB02207047002801D570 -:10E94000062070470720704738B50446FFF7DCFF04 -:10E950000546E01CFFF7D8FF45EAC005A01DFFF7FC -:10E96000D3FF45EA801080B232BD70B586B0044650 -:10E9700005A80FF22C610A68026004A80FF2246156 -:10E980000A68026003A80FF220610A68026002A808 -:10E990000FF218610A68026004F0030005A9425CE6 -:10E9A0008DF8042001ADC4F3C102525C6A70C4F357 -:10E9B0008112515CA97004A9405C8DF8000000AE82 -:10E9C000C4F3C100405C7070C4F38110405CB0704F -:10E9D00001AA032140F22640FFF7D2FE002802D010 -:10E9E0004FF0FF304DE000AA032140F22A40FFF72C -:10E9F000C7FE002802D04FF0FF3042E0032203A9F7 -:10EA000001A8E3F7B5FE032202A900A8E3F7B0FED0 -:10EA100060070BD59DF8040040F001008DF804005C -:10EA20009DF8000040F001008DF80000A00607D519 -:10EA3000687840F001006870707840F001007070F4 -:10EA4000E00507D5A87840F00100A870B07840F044 -:10EA50000100B07001AA032140F23F40FFF790FE91 -:10EA6000002802D04FF0FF300BE000AA032140F253 -:10EA70003140FFF785FE002802D04FF0FF3000E064 -:10EA8000002006B070BD10B5044600223821682071 -:10EA900005F0C2FC002824D100222321682005F0C3 -:10EAA000BBFC00281DD100226A21682005F0B4FCBF -:10EAB000002816D1002C17D00C226A21682005F0FE -:10EAC000ABFC00280DD1C0226A21682005F0A4FC0F -:10EAD000002806D100222321682005F09DFC002893 -:10EAE00002D04FF0FF3010BD002010BD10B582B035 -:10EAF00004000CD0C0208DF80000C2208DF8010069 -:10EB0000C4208DF80200C6208DF8030004E0042222 -:10EB10008B2100A8E5F75EF800AA042140F6C41096 -:10EB2000FFF72EFE2046401E8041C043C00FFFF776 -:10EB3000AAFF16BD10B582B004000CD020208DF8BD -:10EB4000000028208DF8010030208DF802003820C8 -:10EB50008DF8030004E00422A32100A8E5F73AF8A9 -:10EB600000AA042140F6CA10FFF70AFE2046401E04 -:10EB70008041C043C00FFFF786FF16BD30B585B09A -:10EB800002A90FF22C4238CA38C1052802DA4FF028 -:10EB9000FF3021E0052190FBF1F0401E80B20146DC -:10EBA000090A8DF800108DF8010000AA022140F238 -:10EBB0001620FFF7E5FD002802D04FF0FF300BE0F4 -:10EBC00002AA0C2140F6ED10FFF7DAFD002802D072 -:10EBD0004FF0FF3000E0002005B030BD80B50028C8 -:10EBE00001D0022200E000223821682005F014FC48 -:10EBF000002802D04FF0FF3002BD002002BD70B5EA -:10EC000084B0044625466D1EAD41ED43ED0F002056 -:10EC10008DF8000000AEB2207070B820B070C22035 -:10EC2000F07000AA04216820FFF7AAFDA3208DF848 -:10EC30000000600606D5C0207070C820B070C220E9 -:10EC4000F07003E0A3207070B070F070200606D55D -:10EC5000C4203071CC207071C620B07103E0A320B5 -:10EC600030717071B071A3208DF807008DF8080025 -:10EC70008DF8090000AA0A2140F6D310FFF780FDA5 -:10EC80000320044203D020208DF8000002E0D820A9 -:10EC90008DF8000000AA012140F6E210FFF770FD98 -:10ECA000D8208DF8000000AA012140F60200FFF7ED -:10ECB00067FD600703D50120FFF718FF02E0002081 -:10ECC000FFF714FFE00603D50120FFF733FF02E052 -:10ECD0000020FFF72FFF2846FFF7D5FE002004B0E5 -:10ECE00070BD2DE9F04188B004460D46164600ABD4 -:10ECF00002227221682005F0B9FB002802D04FF0F3 -:10ED0000FF30D7E09DF800009DF8011041EA00288F -:10ED100041460FF2A82005F0B8FB0F9FB8F11C0F79 -:10ED200004D2002038704FF0FF30C3E0B8F5007F08 -:10ED300019DD01AB02223A21682005F097FB00287B -:10ED400003D00FF28C2005F0A0FB9DF80400C00654 -:10ED500009D50120FFF797FE0FF2902005F095FBF3 -:10ED60006FF00100A6E001AB1C227421682005F0C1 -:10ED70007DFB002806D00FF2942005F086FB4FF0B3 -:10ED8000FF3097E01C2098FBF0F0401E387001A87F -:10ED90009DF804104278120442EA0161827841EA47 -:10EDA0000221C2781143316001794279120442EAAA -:10EDB0000161827941EA02219DF80B2011437160C3 -:10EDC000017A9DF80D20120442EA01619DF80E209F -:10EDD00041EA02219DF80F201143B160017B9DF8AB -:10EDE0001120120442EA01619DF8122041EA022139 -:10EDF0009DF813201143F160017C9DF8152042EA33 -:10EE0000012129809DF816109DF8172042EA012162 -:10EE100069809DF818109DF8192042EA0121A98007 -:10EE20009DF81A109DF81B2042EA01212180007EE6 -:10EE30009DF81D1041EA002060809DF81E009DF89D -:10EE40001F1041EA0020A080002030E000EB4001CC -:10EE50003C4A8B1893F9061093F9052093F9043076 -:10EE6000B4F9006013FB06F6B4F9027012FB0766F2 -:10EE7000B4F9047011FB0766B5F9007013FB07F3D2 -:10EE8000B5F9027012FB0732B5F9043011FB03210A -:10EE9000B6F5004F01DB47F6FF76B1F5004F01DB19 -:10EEA00047F6FF7124F8106025F81010401C032865 -:10EEB000CCDB002008B0BDE8F08138B5040002D1F9 -:10EEC0004FF0FF3032BD1F4D2878002801D00020C0 -:10EED00032BD09222146281DE3F74AFC00AB02227D -:10EEE0006B21682005F0C2FA9DF80000400604D5A9 -:10EEF00000226B21682005F08FFAC8234FF480624E -:10EF00000FF24C1140F66130FFF78AFC002818D14F -:10EF10002046FFF719FDFFF728FD002802D06FF00B -:10EF2000060032BD0020FFF759FE002802D06FF026 -:10EF3000070032BD012028700FF2EC0005F0A5FAA1 -:10EF4000002032BD1037002010B50C4600210028EB -:10EF500000D0C4210846FFF752FE002805D1204604 -:10EF6000FFF70CFE002800D1002010BD0A444D50D0 -:10EF70005F455252282564292825642928256429BB -:10EF800028256429200A00000A444D505F54524944 -:10EF9000414C2825642928256429200A0000000006 -:10EFA0004CCD6C000CC92C00365676002646660007 -:10EFB000FEF2ABC4AAF1DFDFBBAFDFDF5B444D5035 -:10EFC0005D204649464F28256429200A000000009C -:10EFD0000A5B444D505D204649464F20737461746E -:10EFE0007573206572726F720A0000000A5B444DEF -:10EFF000505D202D204649464F206F766572666C25 -:10F000006F77206572726F720A0000000A5B444DD0 -:10F01000505D202D204649464F2072656164206571 -:10F0200072726F720A0000005B444D505D46697257 -:10F030006D77617265206C6F6164656420737563C0 -:10F040006365737366756C6C79212121210A000058 -:10F050000000700000000024000000020003000017 -:10F0600000650054FFEF0000FA80000B12820001DF -:10F07000200030C30E8C8CE914D5400213710F8E22 -:10F080003883F8833000F883258EF8833000F883C6 -:10F09000FFFFFFFF0FFEA9D6240004001A8279A10A -:10F0A0000000003CFFFF00000010000038836FA24A -:10F0B000003E03304000000000B2BAC23E800000B3 -:10F0C0002000000000000000400000006000000080 -:10F0D000000C0000000C186E000006920A16C0DF3B -:10F0E0000000000000000002000000040000000713 -:10F0F00000000000FFFF0B2B000016570000035913 -:10F100000000000000001DFA00026C1D000000005D -:10F1100040000000000000000000000000000000AF -:10F1200000000000001942B5000039A20000B365DC -:10F13000D90E9FC91DCF4C34300000005000000094 -:10F140003BB67AE80064000000C800000000000040 -:10F1500000000000000000000000000000000000AF -:10F16000000000000000000000000000000000009F -:10F17000000100000000000000000000000000008E -:10F1800000001072000000400000000000000000BD -:10F1900005DC00000000000000000000000000008E -:10F1A000000000000000025800000000000000C83D -:10F1B000000000000000000000010000000200004C -:10F1C000000000000000000000000000000000003F -:10F1D000000000000000000000000000000000002F -:10F1E000000000000000000000000000000000001F -:10F1F00000000000000000000000000000001000FF -:10F2000040000000000000060000B26A000000009C -:10F2100000000000000000000000000000000000EE -:10F2200000000000000000000000000000000000DE -:10F23000000000250000000016A0000000001000E3 -:10F2400000001000002F0000000001F4000010007A -:10F2500000280000FFFF4581FFFFFA720000000058 -:10F2600000000000004400050005BAC6004778A26F -:10F270000000000100000000000006000000001473 -:10F280000000254D002F706D000005AE000C02D06F -:10F29000000000000000000000000000000000006E -:10F2A000001B000000000000000000000000000043 -:10F2B00000640000000800000000000000000000E2 -:10F2C000000000000000000000000000000000003E -:10F2D000000000000000000000000000000000002E -:10F2E000000000000000000000000000000000001E -:10F2F000000000000000000000000000000000000E -:10F3000000000000000000000000000000000000FD -:10F31000001B00000000000000000000000E000EB6 -:10F3200000000AC70004000000000032FFFFFF9C3D -:10F3300000000B2B00000002000000010000006430 -:10F34000FFE50000000000000000000000000000D9 -:10F3500000000001000000000001000000000000AB -:10F36000000180000001800000018000002426D3FD -:10F370000000000000000000000600100096003CA5 -:10F38000000000000000000000000000000000007D -:10F390000C0A4E68CDCF770950166759C619CE8230 -:10F3A000000000000000000000000000000000005D -:10F3B000000000000000000017D7840003000000D8 -:10F3C0000000000000000000C7938F9D1E1B1C1949 -:10F3D000000000000000000000000000000000002D -:10F3E000000000000000000002031885000040003B -:10F3F0000000000300000003000000000000000007 -:10F4000040000000000000000000000000000000BC -:10F4100000000000000000000000000000000000EC -:10F4200000000000000000000000000000000000DC -:10F4300000000000677DDF7E72902E554CF6E68856 -:10F4400000000000000000000000000000000000BC -:10F45000D8DCB4B8B0D8B9ABF3F8FAB3B7BB8E9E6A -:10F46000AEF132F51BF1B4B8B08097F1A9DFDFDF60 -:10F47000AADFDFDFF2AAC5CDC7A90CC92C97F1A975 -:10F4800089264666B28999A92D557DB08AA89636F7 -:10F490005676F1BAA3B4B280C0B8A89711B28398D7 -:10F4A000BAA3F0240844106418B2B9B49883F1A345 -:10F4B00029557DBAB5B1A38393F0002850F5B2B6B3 -:10F4C000AA839328547CF1B9A3829361BAA2DADEAD -:10F4D000DFDB819AB9AEF5606870F1DABAA2DFD9E4 -:10F4E000BAA2FAB9A38292DB31BAA2D9BAA2F8DFE2 -:10F4F000B9A3A3A3A3A3B8A2DFDFDFBAA0DFDFDF36 -:10F50000D8F1B9A1B280C0B089A0C3C5C7B181B4D8 -:10F5100097A011B590A1F0240844106418F19081CF -:10F52000A02D553DF2A5D0F8F9D1D9F8F180A2C3AC -:10F53000C5C7D8F3A2DEF18290A42D557D8494F541 -:10F54000A120D9F3A2F8D8F5A140D9F3A2F8D8F5B3 -:10F55000A160D9F3A2F8D8F2B9A2F8F9D1D9A6DE00 -:10F56000A5D0DEF41AD8F28696A109D1DBF411D821 -:10F57000F211D1DBF41CD8F219D1DBF414D8F41059 -:10F58000D8F3A2F8F9D1DAF2A6F8F1A5DED8F4A101 -:10F590001616D8F1A5F8A1859509D9F1A5DEF2A531 -:10F5A000D0DEA6F8D8F4A109D8F3A2F8F9D1F4D99D -:10F5B0000819DA42F2A2DEF40BD8F1A5F8A185957C -:10F5C00019DAF407D8F2A6DEA5D0DED8F1B8AAB3CE -:10F5D0008DB4980D355DB2B6BAAF8C96198F9FA7D2 -:10F5E0000E161EB49AB8AA872C547CBAA4B08AB658 -:10F5F00091325676B28494A4C808CDD8B8B4B0F18C -:10F600009982A82D557D98A80E161EA22C547C9286 -:10F61000A4F02C5078F184A898C4CDFCD80DDBA8B8 -:10F62000FC2DF3D9BAA6F8DABAA6DED8BAB2B686F5 -:10F6300096A6D0F3C841DAA6C8F8D8B0B4B882A864 -:10F6400092F52C548898F135D9F418D8F1A2D0F855 -:10F65000F9A884D9C7DFF8F883C5DADF69DF83C189 -:10F66000D8F40114F1A8824EA884F311D182F5D9FF -:10F6700092289788F109F41C1CD884A8F3C0F9D10A -:10F68000D99782F129F40DD8F3F9F9D1D982F4C2CE -:10F6900003D8DEDF1AD8F1A2FAF9A88498D9C7DF17 -:10F6A000F8F8F883C7DADF69DFF883C3D8F4011408 -:10F6B000F198A8822EA884F311D182F5D99250979F -:10F6C00088F109F41CD884A8F3C0F8F9D1D997823D -:10F6D000F149F40DD8F3F9F9D1D982F4C403D8DE95 -:10F6E000DFD8F1AD8898CCA809F9D98292A8F57C29 -:10F6F000F1883ACF944A6E98DB6931DAADF2DEF9DF -:10F70000D88795A8F221D1DAA5F9F417D9F1AE8EF0 -:10F71000D0C0C3AE82C684C3A88595C8A588F2C0F0 -:10F72000F1F4010EF18E9EA8C63E56F554F1887292 -:10F73000F40115F19845856EF58E9E0488F1429886 -:10F740005A8E9E068869F4011CF1981E1108D0F5A6 -:10F7500004F11E970202983625DBF9D985A5F3C17D -:10F76000DA85A5F3DFD88595A8F309DAA5FAD8825A -:10F7700092A8F578F1881A849F26889821DAF41DDA -:10F78000F3D8879F39D1AFD9DFDFFBF9F40CF3D879 -:10F79000FAD0F8DAF9F9D0DFD9F9D8F40BD8F38731 -:10F7A0009F39D1AFD9DFDFF41DF3D8FAFCA869F98E -:10F7B000F9AFD0DADEFAD9F88F9FA8F1CCF398DB55 -:10F7C00045D9AFDFD0F8D8F18F9FA8CAF38809DAFE -:10F7D000AF8FCBF8D8F2AD978D0CD9A5DFF9BAA6CB -:10F7E000F3FAF412F2D8950DD1D9BAA6F3FADAA544 -:10F7F000F2C1BAA6F3DFD8F1BAB2B68696A6D0CADD -:10F80000F349DAA6CBF8D8B0B4B8D8AD84F2C0DFEB -:10F81000F18FCBC3A8B2B68696C8C1CBC3F3B0B440 -:10F820008898A821DB718D9D71859521D9ADF2FA5B -:10F83000D88597A828D9F408D8F28D29DAF405D903 -:10F84000F285A4C2F2D8A88D9401D1D9F411F2D8CE -:10F850008721D8F40AD8F28498A8C801D1D9F41124 -:10F86000D8F3A4C8BBAFD0F2DEF8F8F8F8F8F8F88F -:10F87000F8D8F1D8B8B4B09786A8319B069907ABF1 -:10F880009728889BF00C201440B0B4B8F0A88A9A4E -:10F89000285078B79BA82951792470594469386455 -:10F8A0004831F1BBAB88002C547CF0B38BB8A80472 -:10F8B000285078F1B088B49726A85998BBABB38B81 -:10F8C00002264666B0B8F08A9CA82951798B295146 -:10F8D000798A2470598B2058718A4469388B394051 -:10F8E000688A6448318B30496088F1AC002C547CC4 -:10F8F000F08CA804285078F1889726A85998AC8CE9 -:10F9000002264666F0899CA82951792470594469D9 -:10F9100038644831A98809205970AB11384069A86A -:10F92000193148608CA83C415C207C00F187981913 -:10F9300086A86E767EA999882D557DD8B1B5B9A3D4 -:10F94000DFDFDFAED0DFAAD0DEF2ABF8F9D9B087C7 -:10F95000C4AAF1DFDFBBAFDFDFB9D8B1F1A38EC638 -:10F96000DFB084F2C8F8F9D9DED89385F14AB183C3 -:10F97000A308B5839A0810B79F10D8F1B0BAAEB0FB -:10F980008AC2B2B68E9EF1FBD9F41DD8F9D90CF11A -:10F99000D8F8F8AD61D9AEFBD8F40CF1D8F8F8ADD1 -:10F9A00019D9AEFBDFD8F416F1D8F8AD8D61D9F4D2 -:10F9B000F4ACF59C9C8DDF2BBAB6AEFAF8F40BD8FC -:10F9C000F1AED0F8AD51DAAEFAF8F1D8B9B1B6A3CC -:10F9D000839C08B9B1839AB5AAC0FD3083B79F1044 -:10F9E000B58B93F20202D1ABDADED8F1B080BAABBC -:10F9F000C0C3B284C1C3D8F3B9ACDED8B1B9F38BFC -:10FA0000A391B609B4D9B9ACF8ABDEB0879CB9A361 -:10FA1000DDF1B38B8B8B8B8BB087A3A3A3A3B080BB -:10FA2000B490F2A3A3A3A3A3A3A3A3A3A3F1B0871A -:10FA3000B59AA3F39BA3A3DCBAACDFB9A3A3A3A39A -:10FA4000A3A3A3A3A3A3A3A3A3A3A3D8F3B9ACF88D -:10FA5000F9D1D9F41BD8F3FAF9D1D9F41BD8F2B102 -:10FA6000B5B98CACF8F9D1D9C2D8F2F9D9DEF4091C -:10FA700013DAF2DDC6DCF43111D8F2ABFA8B9BA3BA -:10FA800049D9F40706DAF2B9ABDFFED8F1BBB3B758 -:10FA9000AAF9DAFFD9809AAA28B48098A720B79744 -:10FAA00087A86688F07951F1902C870CA78197621E -:10FAB00093F071716085940129517990A5F1284CDA -:10FAC0006C870C95188578A38390284C6C886CD82B -:10FAD000F3A28200F210A8921980A2F2D926D8F1DE -:10FAE00088A84DD948D896A83980D93CD89580A8FF -:10FAF00039A68698D92CDA87A72CD8A8899519A970 -:10FB000080D938D8A88939A980DA3CD8A82EA83954 -:10FB100090D90CD8A8953198D90CD8A809D9FFD874 -:10FB200001DAFFD89539A9DA26FFD890A80D89996E -:10FB3000A810809821DA2ED88999A83180DA2ED899 -:10FB4000A886963180DA2ED8A8873180DA2ED8A8F8 -:10FB50008292F34180F1D92ED8A882F31980F1D98D -:10FB60002ED882ACF3C0A28022F1A62EA72EA92205 -:10FB700098A829DAACDEFFD8A2F22AF1A92E829247 -:10FB8000A8F23180A696F1D900F1F1F1AC8C9C0C71 -:10FB900030ACDED0DEFFD88C9CACD010ACDE8092D6 -:10FBA000A2F24C82A8F1CAF235F19688A6D900D803 -:10FBB000FF000000014804F0A6BC00004C37002004 -:10FBC00010B5DFF860484822014604F54570E2F7B9 -:10FBD000CFFDD4F85003606304F554704168C4F855 -:10FBE00084108068C4F8D400032802D1012004F0F6 -:10FBF00082FD002010BD80B54822DFF83818E2F7FA -:10FC0000B7FD002002BD80B50C220146DFF82808B0 -:10FC1000E2F7AEFD002002BD80B50C22DFF8181817 -:10FC2000E2F7A6FD002002BD10B5DFF810484FF442 -:10FC3000A672002104F50870E3F7CCFF4FF40872B8 -:10FC400000212046E3F7C6FF00F0C7FB4DF2940306 -:10FC50004822DFF8EC17DFF8EC0704F0A8FD0446B3 -:10FC60004CF251330C22DFF8E017DFF8E00704F024 -:10FC70009EFD204310BD0023002A01D14FF48032A5 -:10FC8000426201F00302032A00D1012301F01802AD -:10FC9000182A00D1012301F0C002C02A00D101239B -:10FCA000002B00D08821016070470A460146DFF82A -:10FCB0008C07E0E7DFF86C1788624FF47A7290FBEC -:10FCC000F2F2CA628A6C002A04D1DFF8842792FB20 -:10FCD000F0F088647047DFF84C17886778314FF48C -:10FCE0007A7290FBF2F24A600A6A002A04D1DFF8C5 -:10FCF000602792FBF0F008627047DFF82817C1F820 -:10FD0000C800C8314FF47A7290FBF2F24A600A6A76 -:10FD1000002A04D1DFF8382792FBF0F00862704720 -:10FD2000DFF81817C1F860014FF47A7290FBF2F017 -:10FD3000C1F864017047DFF80407D0F8D000001262 -:10FD400000F001007047DFF8F406006B001200F0CD -:10FD500001007047DFF8E406D0F88000001200F0E0 -:10FD60000100704730B400200146DFF8D02602F1D0 -:10FD700030031C6DE40501D5D3E91601146BE405CD -:10FD800008D5D3E90245A94204DC01DBA04201D237 -:10FD90002046294602F1D003D2F8D040E40508D528 -:10FDA000D3E90245A94204DC01DBA04201D220468E -:10FDB00029461C6DE40508D5D3E91645A94204DCA3 -:10FDC00001DBA04201D220462946D2F85031DB05A2 -:10FDD0000AD502F5A874D4E90223994204DC01DBB8 -:10FDE000904201D21046194630BC70470A4601467F -:10FDF000DFF860063FE70A460146DFF85C063AE7AF -:10FE000070B584B004460D46B4F90400C0030090F8 -:10FE100000AEB4F90600C0037060B4F90800C00376 -:10FE2000B06004F10C0300AA606A4100206880B24F -:10FE300004F05AF900982968A0EB610000907068FE -:10FE40006968A0EB61007060B068A968A0EB610010 -:10FE5000B06004F1180300AA606A4100206880B213 -:10FE600004F042F9206B40F0200020637FBDDFF8F2 -:10FE7000CC15C1F88400C1F85403704738B50C465E -:10FE8000002818D0DFF8B435D10702D50168C3F8CF -:10FE90003413910703D503F54D7145684D60510743 -:10FEA00003D503F54D718068886003F54D7103F14A -:10FEB0005000FFF7A5FF2046FFF7D9FF00221021D1 -:10FEC0000846BDE8384004F0A7BCF8B504460D4626 -:10FED000DFF86865002C12D006F557770C22214612 -:10FEE000384604F0DFFA002809D00C2221463846B3 -:10FEF000E2F73EFC06F557713046FFF781FF756368 -:10FF000006F54B746562D6F80801002802D0C6F8E1 -:10FF10002C0303E04FF4D810C6F82C030022042170 -:10FF2000084604F079FC01206060F1BDDFF80C1593 -:10FF3000D1F83003012801D1012000E00020002287 -:10FF4000C1F83023704710B50C46002804D00C22AD -:10FF5000DFF8E414E2F70CFC002C04D0DFF8DC043A -:10FF6000D0F82C03206010BDF8B514461D46DFF80C -:10FF7000CC6406F1540702688B0610D4A6F854200E -:10FF8000416879808068B880F86A40F08000F86243 -:10FF900006F54D7106F15000FFF732FF0DE07A6172 -:10FFA0004268BA618068F861F86A40F02000F8623F -:10FFB00001F003003863C6F85403F86A40F4A070F7 -:10FFC000F862D6E92201C6E92401C6E922450020EB -:10FFD000F2BD70B514461D46DFF860640622014686 -:10FFE000301DE2F7C5FB306B40F4E0703063D6E9BA -:10FFF0000E01C6E91001C6E90E4506F557713046F7 -:020000022000DC -:10000000FFF7FEFE002070BDFEB514461D46DFF86A -:100010002C6406F1A4078A0617D400F0B8F900A8EA -:1000200000F0A8F90098A6F8A40000A8416879801B -:100030008068B88006F5457106F1A000FFF7E0FE84 -:10004000F86A40F08000F8620EE002687A61426867 -:10005000BA618068F861F86A40F02000F86201F047 -:1000600003003863C6F85803D6E93601C6E93801FB -:10007000C6E93645F86A40F4A070F8620020FEBD7B -:100080002DE9F04385B006460F4614461D46DFF8BD -:10009000AC8308F5A079F80409D500A9304604F02E -:1000A0009AF9102200A94846E2F762FB04E0102208 -:1000B00031464846E2F75CFBC8E95645D8F850019E -:1000C00007F4385141F4E0710843C8F85001D8F8FA -:1000D000500110F4406F04D022462B46304604F005 -:1000E00013FAD8F8500100050AD500A80FF27031B4 -:1000F0001022E6F7C7FE22462B4600A804F018FAA5 -:10010000002005B0BDE8F083DFF830030021C0F81F -:1001100080107047DFF824030021C0F8D01070472A -:10012000DFF818030021C0F850117047DFF80C0306 -:100130000021016370472DE9F04300231C4600E0D5 -:10014000641CDFF8F852D5F82062B4420DDA0C27AF -:1001500007FB0455D5F824620746BE4203D0D5F804 -:1001600028528D42ECD1162032E0142E2EDA1C4695 -:10017000002E01D11BE0641CB44207DA04EB4407F3 -:1001800005EB8707D7F828728F42F4DBB4420ED014 -:100190000BE00C2707FB065707F5097C07F50677E8 -:1001A000B7E80043ACE80043761EB442F1DB0C270D -:1001B00007FB0454C4F8240204F50970416082600E -:1001C000D5F82002401CC5F8200200E00C23184698 -:1001D000BDE8F083F8B50025DFF8604294F8300000 -:1001E000400600D5022594F88000400601D545F070 -:1001F000010594F8D000400601D545F0040594F8B7 -:100200002001400601D545F0080594F85001C006CC -:1002100001D545F0100594F89801400601D545F048 -:1002200020050026374611E007EB470004EB80016C -:10023000D1F82C02054208D02046D1F82412884774 -:10024000002802D0002E00D106467F1CD4F82002E0 -:100250008742E9DB00F002F83046F2BD10B477487F -:10026000016B4A0602D541F01001016300F1300133 -:100270000A6D530602D542F010020A65D0F8D0206C -:10028000530603D542F01002C0F8D02000F1D0028E -:10029000136D5C0602D543F010031365D0F850319E -:1002A0005C0603D543F01003C0F85031036B23F014 -:1002B000400303630B6D23F040030B65D0F8D010AF -:1002C00021F04001C0F8D010116D21F040011165FE -:1002D000D0F8501121F04001C0F8501100F5A8707D -:1002E000816C21F04001816410BC704738B50C4628 -:1002F0001546002803D00C225849E2F739FA002DA0 -:1003000004D04E48D0E92223C5E90023002C03D0B5 -:100310004A48D0F88400207031BD70B50C461546AF -:10032000464E0C2206F1B801E2F722FA002D03D066 -:10033000D6E93601C5E90001002C09D0D6F86803DA -:10034000002802D00020207070BDD6F8D4002070A4 -:1003500070BD3A48406B70473848D0F868130029A0 -:1003600001D000207047D0F8D40070473348D0F84F -:1003700084007047002107E0304A02EB8102D2F886 -:10038000C42140F82120491C0329F5DB704718B42B -:10039000002106E003EB810250F82130C2F8B831A9 -:1003A000491C264B0329F5DBD3F81812012907D184 -:1003B00003F5E272014603F5E87018BC03F016BFBE -:1003C000002106E003EB810250F82140C2F8C4414D -:1003D000491C0329F6DB11BC704710B5002002460A -:1003E000104C04E004EB8001C1F8F421401C092802 -:1003F000F8DB2422002104F5E870E3F7EBFB002092 -:100400000AE004EB00114FF07E52C1F8F4214FF0E6 -:100410008042C1F8D021401C0328F2DBBDE8104027 -:1004200002E000007884002004480021C0F818127F -:10043000704700008C870020D4870020788400203B -:10044000F7FB0108C1FB010819FC010807FC0108C2 -:1004500040420F00C884002018850020E08400205E -:10046000000000400000000000000000000000004C -:10047000704780B504F090F904F0E2F900280CD040 -:1004800004F0DEF923230FF28C020FF29801FFF73C -:10049000EFFFBDE8014004F0D3B9FFF7C5FB00282A -:1004A0000CD0FFF7C1FB26230FF268020FF2740194 -:1004B000FFF7DEFFBDE80140FFF7B6BB04F00CF923 -:1004C00000280CD004F008F928230FF248020FF29C -:1004D0005401FFF7CDFFBDE8014004F0FDB8012055 -:1004E00004F0A3F9002002BD80B504F0BFF9002894 -:1004F0000CD004F0BBF947230FF280020FF2240165 -:10050000FFF7B6FFBDE8014004F0B0B9002002BD1E -:1005100000000000696E765F696E69745F6D706CD3 -:1005200000000000433A5C54656D705C4955535CB3 -:10053000494B445C5461652D536F6F5C656D62651A -:10054000646465645F7265666572656E63655F6647 -:100550006F725F4E6F74655F335C656D6265646476 -:1005600065645C496E76656E53656E73655C6D6C33 -:100570006C6974655C6D706C2E630000696E765FEB -:1005800073746172745F6D706C00000070470000DE -:1005900000B510EE100AE6F7B5FF0022DFF81C3CAC -:1005A000E6F7D8FF04F078F9DFF8D42BC2E914019C -:1005B00000BDDFF8CC2BD2E912017047DFF8C01B79 -:1005C000D0E90E23C1E912237047C1070CD5DFF82B -:1005D000F01B4FF040420A6770314A608A604FF06A -:1005E0008042CA600A614A6181070ED5DFF8D01BDC -:1005F0004FF04042C1F8182101F58C714A608A60C1 -:100600004FF08042CA600A614A6140070ED5DFF8A8 -:10061000B01B4FF04042C1F8C02101F5E0704260CC -:1006200082604FF08042C260026142617047000008 -:100630000021401000D0491C0128FADA481C7047FC -:100640002DE9F14F88B000200146CDE9040108985A -:10065000806F002801D10846BEE0FFF7E9FF814620 -:100660004FF000088BE000EBC802D2E900014A46D7 -:1006700004F050F904460D46089800EBC8000290BB -:100680000246D2E906014A4604F044F906460F46FE -:10069000A4FB042304FB053305FB0433A4FB020184 -:1006A00004FB031105FB0211CDE90601029AD2E910 -:1006B00012014A4604F02EF9CDE90001A6FB0623FB -:1006C00006FB073307FB06330320A0FB02AB00FB4E -:1006D00003BBDDE90001B0EB0A0061EB0B01DDE9D2 -:1006E0000623A4FB02AB04FB03BB05FB02BB4FEAE2 -:1006F0004B0B4BEADA7B10EB4A0A41EB0B0BA4FBEA -:10070000040104FB051105FB0411301A67EB01011C -:10071000A4FB002304FB013305FB00330320A0FBF3 -:10072000026700FB0377DDE9060136184F41029AA4 -:10073000D2E90C014A4604F0EDF8321A67EB0103E6 -:10074000A4FB020104FB031105FB0211890041EA2D -:100750009071BAEB80006BEB0101002904DC00DB37 -:1007600002D2404261EB4101DDE904238B4204DC0B -:1007700001DB824201D2CDE9040108F10108B8F1A0 -:10078000030F0898FFF66FAF806F0899C96F884212 -:1007900010D000EE100AB8EEC00A04F0CDF8F7EE63 -:1007A000000A80EE800A089880ED200A0898014629 -:1007B000896FC167DDE9040104F0CCF800EE100A8E -:1007C0000898D0ED200A20EE200A10EE100A09B099 -:1007D000BDE8F04F04F0F0B809B0BDE8F08F2DE9A6 -:1007E000F04F85B0814600200146CDE90201D9F8DD -:1007F0007800002801D1084679E0FFF719FF009042 -:100800004FF0000849E009EBC802D2E90001009A64 -:1008100004F080F804460D46A4FB046704FB05774A -:1008200005FB047709EBC80001900246D2E90601F6 -:10083000009A04F06FF8801BB941A4FB002304FB6D -:10084000013305FB00330320A0FB02AB00FB03BB1D -:10085000A4FB060104FB071105FB06111AEB0004BB -:100860004BEB0105019AD2E90C01009A04F052F811 -:10087000201A65EB0101002904DC00DB02D24042B2 -:1008800061EB4101DDE902238B4204DC01DB8242A2 -:1008900001D2CDE9020108F10108B8F1030FB2DB82 -:1008A000D9F87800D9F87C1088420FD000EE100AF1 -:1008B000B8EEC00A04F040F8F7EE000A80EE800AB5 -:1008C00089ED200AD9F87800C9F87C00DDE9020139 -:1008D00004F040F800EE100AD9ED200A20EE200ABC -:1008E00010EE100A05B0BDE8F04F04F065B805B091 -:1008F000BDE8F08F10B40121026BD20513D5DFF8EB -:10090000C028D2F888301468A3420CDBD0F88000ED -:10091000C00505D5D2F8D8015168884203DB05210E -:10092000084610BC70470020FBE72DE9F04184B079 -:100930000446002600ADDFF8887812E007EBC60217 -:10094000D2E9040107F50872926AEBF771FE07EB32 -:100950008602D2F894201204D317801845F8260096 -:10096000761C032EEADBA822002107F11000E3F732 -:1009700031F90120FFF729FE6868002801D40146FB -:1009800000E04142009A002A00D55242914201DA29 -:10099000104602E0002800D54042A968002901D491 -:1009A0000A4600E04A42824204DB002901D408469C -:1009B00000E04842616A03F01CF9B0F5481F03DB10 -:1009C000052087F820024BE0DFF8B467F16A6A6817 -:1009D000501A01D4034600E08B1AD6F828C0DDF87F -:1009E00000E0BEEB0C0E01D4F04603E0DDF8008021 -:1009F000ACEB0808434508DABEF1000F01D470469D -:100A000006E00098ACEB000002E0002800D5881A50 -:100A1000316BAA68531A01D49C4601E0A1EB020C89 -:100A2000844504DB002B01D4184600E0881A616A73 -:100A300003F0DFF88046022003F096FD07F508700A -:100A4000C06A804506DA032100A8FFF73EFA204677 -:100A5000FFF7B4FD0098B0626868F062A868306380 -:100A6000BDE8FF812DE9FE4186460E4600271CE0C9 -:100A7000D317A2FB004502FB015503FB005520469E -:100A800029460CEB4C0306EBC30303EBC708D8E97C -:100A9000004524184D4103EBC703C3E900450CF1A1 -:100AA000010CBCF1040FE3DB7F1CB06F032F1BDADA -:100AB00006EB870101F16003002802D13EF917001F -:100AC00058623EF917005A6A821A00A840F8272097 -:100AD000086E904200DA0A66D868824200DADA606C -:100AE000012000218C46DCE7401CB0670120C6F8DD -:100AF000A000BDE8F7812DE9F04104460025069EDF -:100B000005E006EB850054F82510C1666D1C032D29 -:100B1000F7DB06F17807C7E90623B06F002814D089 -:100B2000002510E006EB850854F82500D8F884105D -:100B3000401AFCF71EFAD8F86010814200DA01462C -:100B4000C8F860106D1C032DECDBB06F401CB06763 -:100B50000120B862BDE8F08110B4002108E000EB8C -:100B6000810202F16003DC685C6200231366491CA9 -:100B70000329F4DB00F17801D1E90623C1E9082358 -:100B8000002282671046886210BC704730B4D0E9FA -:100B90002423D0E92645101B63EB050130BC7047C8 -:100BA000016E426E8A4200DA0A46816E914200DA94 -:100BB000114608467047016EC26E891A426E036F75 -:100BC000D21A8A4200DB1146826E406F101A8842A8 -:100BD00000DB01460846704710B5DFF8E4451022F7 -:100BE000002104F51670E2F7F5FF1022002104F54C -:100BF0001E70E2F7EFFF1022002104F51A70E2F7F1 -:100C0000E9FF1022002104F52270BDE81040E2F750 -:100C1000E1BF10B5DFF8A845A822002104F11000BB -:100C2000E2F7D8FFA822002104F5B070E2F7D2FF66 -:100C30000520BDE81040C8E4D0B4DFF8842502F5F3 -:100C40001E739C68002C02D1C2E99E0108E0D2E923 -:100C50009E678F4204DC01DB864201D2C2E99E011D -:100C6000601C9860D0BC7047D0B4DFF8542502F502 -:100C700022739C68002C02D1C2E9A20108E0D2E9EB -:100C8000A2678F4204DC01DB864201D2C2E9A201E5 -:100C9000601C9860D0BC7047D0B4DFF8242502F502 -:100CA00016739C68002C02D1C2E9960108E0D2E9D3 -:100CB0009667B94204DC01DBB04201D2C2E9960179 -:100CC000601C9860D0BC7047D0B4DFF8F42402F503 -:100CD0001A739C68002C02D1C2E99A0108E0D2E99B -:100CE0009A67B94204DC01DBB04201D2C2E99A0141 -:100CF000601C9860D0BC7047F8B507460124DFF847 -:100D0000C05405F11000FFF756FFDFF87464316C32 -:100D1000814203DAFFF77DFF0020F2BD3846FFF77E -:100D2000E9FD070001D10220F2BD78071ED505F5C7 -:100D3000B070FFF785FC000D40EA01300915C5E9E8 -:100D40008401D5E98401D6E904238B4205DC01DB6B -:100D5000824202D20024FFF7B7FFA822002105F546 -:100D6000B070E2F737FF0420FFF72FFCF80711D52A -:100D700005F11000FFF764FC05F50472C2E90601F5 -:100D8000D6E906238B4205DC01DB824202D2002435 -:100D9000FFF782FF2046F2BD1FB5044694F83000ED -:100DA00000F0C000C02804D1DFF81C14201DFFF79C -:100DB00059FE94F8800000F0C000C02805D1DFF88B -:100DC0000C1404F15400FFF74DFED4F8D00000F0ED -:100DD000C001C0290BD1002001AA032818DA04EBB6 -:100DE0004001B1F9A41042F82010401CF5E700F0D2 -:100DF0006000602814D1002001AA07E004EB800104 -:100E0000D1F8B810891342F82010401C0328F5DBF4 -:100E1000DFF8BC030090D4E9362301A8FFF76BFE8E -:100E20001FBD0000F8B50446002004F12C077968C6 -:100E3000CA0540F1278101F05001402900D101206D -:100E400097F8541001F05001402900D1012094F886 -:100E5000D01001F05001402900D10120DFF860538B -:100E6000002809D0FFF7D5FE0020C5F8180285F844 -:100E700020022046FFF7A2FBE06AD5F8401281422B -:100E80001ED0C5F84002BE4E716B0A2806DA480033 -:100E90002860B06B401CC5F8440203E02960B06BC9 -:100EA000C5F84402D5F84402C0F11000C5F8480264 -:100EB0004FF48040C5F84C021920B16B8840306473 -:100EC000386DD5F85012814210D0C5F85002AC4EA2 -:100ED000716B0A2806DA48006860B06B401CC5F8E0 -:100EE000540203E06960B06BC5F854022046FFF776 -:100EF00053FF95F82002062800F2C480DFE800F0D6 -:100F000004122C3574A4B100D5F81802411CC5F8A0 -:100F100018120A28C0F2B680FFF77BFE012085F880 -:100F20002002AFE0D5F8B000012840F0AB802046A9 -:100F3000FFF7E2FE002803D1052085F8200204E037 -:100F4000012802D1022085F8200205F1B800FFF740 -:100F500003FEFFF741FE95E0032085F820022046BE -:100F6000FFF7E3FCFFF755FE8CE02046FFF7C4FED9 -:100F7000002857D0012840F08580D4F8D000C00563 -:100F800023D503F06BFD00281FD105F1B8073846C3 -:100F9000FFF706FEC117C5E98201794ED6E90201C5 -:100FA000D5E98223994206DC01DB904203D2052079 -:100FB00085F820020FE03846FFF7E8FDD6E9082360 -:100FC000994208DB01DC904205D3042085F8200219 -:100FD0002046FFF7AAFCD5E98401FFF745FED5E9D5 -:100FE0008A01FFF729FE4DE0D4F8D000C00514D5E2 -:100FF00003F034FD002810D105F1B800FFF7D0FD53 -:10100000C117C5E982015E48D0E90223D5E9820112 -:101010008B4207DB01DC824204D32046FFF76CFEE3 -:10102000002803D1052085F820022BE0012829D1D2 -:101030002046FFF77AFCD5E98401FFF715FED5E9D4 -:101040008A01FFF7F9FD1DE0062085F82002012046 -:1010500003F08AFAFFF7DDFD05F1B800FFF77CFD2C -:1010600010E02046FFF748FE012803D1022085F852 -:10107000200207E0002805D1FFF7CBFD05F1B800FD -:10108000FFF76AFD0020F2BD0021401000D0491C8E -:101090000128FADA3A4801224B1C9A404263491C63 -:1010A0008163192202FA01F10164704738B5444C9A -:1010B0004FF4267200212046E2F78CFD304D582275 -:1010C00000212846E2F786FD0720FFF77EFA40F26E -:1010D000DC500021C5E906011420C5E902016420A5 -:1010E000C5E904013B48C5E908010120C4F81C0218 -:1010F0001920FFF7C9FF0020C4F840029FED310A14 -:10110000FFF746FA002032BD10B52D4C4FF4267281 -:1011100000212046E2F75EFD0720FFF756FA012086 -:10112000C4F81C0284F820020022032103F074FB9F -:10113000072264212848BDE81040FEF7FCBF10B527 -:10114000FFF7B4FF040009D04FF447730FF2940285 -:101150000FF2A801FFF71AFA204610BD1F4803F04E -:1011600077FB040009D040F21F330FF278020FF230 -:101170008C01FFF70BFA204610BD002010BD0000C7 -:1011800070B5002070B50026016BC90513D5D0E9F4 -:101190000E45FFF70EFA201A65EB010100290ADB64 -:1011A00000DC08D30E4AD2E91445A94203DC01DB76 -:1011B000A04200D20126304670BD000065CDCD4171 -:1011C000588E002000009643688E0020B88F0020C3 -:1011D000108F00200008AF2F250E02080911020809 -:1011E00070B50020696E765F656E61626C655F66E2 -:1011F0006173745F6E6F6D6F74000000433A5C54EE -:10120000656D705C4955535C494B445C5461652D78 -:10121000536F6F5C656D6265646465645F7265667B -:101220006572656E63655F666F725F4E6F74655F52 -:10123000335C656D6265646465645C496E76656E99 -:1012400053656E73655C6D706C5C666173745F6E24 -:101250006F5F6D6F74696F6E2E63000070B52DED5A -:10126000028B98B005460E4608EE102A1C4695EDF6 -:10127000020AF8EEC00A95ED010AB8EEC01A95ED23 -:10128000000AB8EEC00A20EE000A01EE010A00EEE4 -:10129000A00A03F051FBF0EE408A18EE900AE6F740 -:1012A00031F921F000410122DFF88439EFF782FAA9 -:1012B00000F2B9809FEDD60AD6ED000AF8EEE00AFA -:1012C00060EE800ACDED040A04A8D6ED010AF8EE1E -:1012D000E00A60EE800AC0ED010AD6ED020AF8EEDF -:1012E000E00A60EE800AC0ED020AD6ED030AF8EECD -:1012F000E00A20EE800A80ED030A0020089008A88A -:1013000095ED000AB8EEC00A80EE280A80ED010AC9 -:1013100095ED010AB8EEC00A80EE280A80ED020AB7 -:1013200095ED020AB8EEC00A80EE280A80ED030AA5 -:1013300014AA08A904A802F006FD10A904A802F046 -:1013400020FE00AA10A914A802F0FDFC00AD95ED46 -:10135000010AD5ED020A20EEA01A00EE001ADFED18 -:10136000AD1AB4EE611AF1EE10FA02D59FEDAA1A89 -:1013700015E0DFEDAA1AB4EE611AF1EE10FA02D50B -:101380009FEDA71A0BE0DFEDA71AB4EE611AF1EE9C -:1013900010FA02D5B5EE001A01E09FEDA31AF8EE9F -:1013A000C81A9FEDA22AC1EE821A21EE811A0020EE -:1013B0000C900CA860EE810AC0ED010A20EE410AF3 -:1013C00080ED020A0021C16000AA04A902F0BBFC62 -:1013D00000AA04A900A802F01FFD00A802F097FDD2 -:1013E0009FEDD90ADDED000A60EE800AFDEEE00A0D -:1013F000C4ED000AD5ED010A60EE800AFDEEE00AB8 -:10140000C4ED010AD5ED020A60EE800AFDEEE00AA5 -:10141000C4ED020AD5ED030A20EE800ABDEEC00A33 -:1014200084ED030A04E0102231462046E1F7A0F9DA -:1014300018B0BDEC028B70BD38B52DED048B0446A1 -:101440000D4694ED020AF8EEC00A94ED010AB8EEDA -:10145000C01A94ED000AB8EEC00A20EE000A01EEB0 -:10146000010A00EEA00A03F067FA9FEDB88AB4EE15 -:10147000480AF1EE10FA3CD4D4ED020AF8EEE00A84 -:1014800080EE809AB7EE000A30EE490AB5EE400AC7 -:10149000F1EE10FA01DC9FEDAE0AF6EE009A20EEB6 -:1014A000290A03F049FAF0EE408AB7EE000A39EE55 -:1014B000000AB5EE400AF1EE10FA01DC9FEDA40A35 -:1014C00020EE290A03F038FAB0EE409A94ED010AB2 -:1014D000F8EEC00A94ED000AB8EEC00A20EE000A49 -:1014E00000EEA00A03F028FAB4EE480AF1EE10FA72 -:1014F00007D54FF08040286000206860A860E86051 -:1015000027E0DFED910A29EE201ABDEEC11A85ED24 -:10151000001A94ED011AB8EEC11A81EE001A21EEFC -:10152000281A61EE200AFDEEE00AC5ED010AD4EDAD -:10153000000AF8EEE00A80EE800A20EE280ADFEDCD -:10154000850A20EE200ABDEEC00A85ED020A0020C1 -:10155000E860BDEC048B31BD38B504460D4694ED12 -:10156000030AF8EEC00A94ED020AB8EEC01A94ED30 -:10157000010AF8EEC01A94ED000AB8EEC00A20EE97 -:10158000000A01EEA10A01EE010A00EEA00AB5EE82 -:10159000400AF1EE10FA07D84FF080402860002092 -:1015A0006860A860E86031BD03F0C6F9F7EE000A94 -:1015B00080EE800ADFED640A20EE200AD4ED000AF6 -:1015C000F8EEE00A60EE800AFDEEE00AC5ED000AE2 -:1015D000D4ED010AF8EEE00A60EE800AFDEEE00AC2 -:1015E000C5ED010AD4ED020AF8EEE00A60EE800AC9 -:1015F000FDEEE00AC5ED020AD4ED030AF8EEE00ABA -:1016000020EE800ABDEEC00A85ED030A31BD000060 -:101610000000803017B75139A69BC43B0AD7233C42 -:101620008FC2753DCDCC4C3ECDCCCC3E0014CD47C9 -:1016300070B588B0054695F83000400640F18180CD -:10164000A869002800D54042B0F5803F0DDAE9696D -:10165000002900D54942B1F5803F06DA296A002900 -:1016600000D54942B1F5803F67DBDFF8C815DFF8E8 -:10167000C84588420BDAE869002800D54042884214 -:1016800005DA286A002800D54042884202DB0320A0 -:10169000A06301E00220A063A86A616B81421ED0B2 -:1016A000606395ED0A0AB8EEC00ADFEDA00A80EE8D -:1016B000200ADFED9F0A20EE200A10EE100AE5F75F -:1016C00021FFDFF87825DFF87835E5F743FF0022C2 -:1016D000DFF87035EAF7C6FDEEF754FE2063002010 -:1016E000049004AE216BA86902F083FA7060216B4C -:1016F000E86902F07EFAB060216B286A02F079FA9C -:10170000F06000AA04A9204602F079FA009880014E -:10171000009000A841688901416081688901816069 -:10172000C1688901C160224600A9204602F0CAFAB8 -:1017300021462046FFF710FF03E0DFF8FC040021FC -:10174000816308B070BD00000000804E0100803F42 -:1017500000000000000080CE70B52DED048B8EB02F -:10176000044694F85001400640F1DC80DFF8C8548C -:10177000D4F840012968401A00D54042D4F86411D9 -:10178000DFF8C4245143814202DA0320A86301E058 -:101790000220A863D4F85001810505D5294604F537 -:1017A000A070FFF7D9FEBDE0800407D54FF0804060 -:1017B000A8640020E8642865686597E0002103A814 -:1017C000FEF7C1FB0C2205F13C0103A802F06AFE02 -:1017D000002805D1D4F86001A96D884200F0868008 -:1017E00000AB03AA616A206880B202F07DFC00AE03 -:1017F00096ED020AF8EEC00A96ED010AB8EEC01A9C -:101800009DED000AB8EEC00A20EE000A01EE010AC2 -:1018100000EEA00A03F090F8B0EE408A9FED450A72 -:1018200028EE000ADFED440A80EE200AD4ED580AC3 -:10183000F8EEE00A20EE200ADFEDD10AC0EE208AA1 -:10184000B0EE680A03F012F9B0EE409AB0EE680A02 -:1018500003F00FF9F0EE000AB4EE608AF1EE10FA30 -:1018600007D54FF08040A8640020E86428656865CB -:1018700033E0DFEDC40A29EE201ABDEEC11A85ED72 -:10188000121A20EE200ADDED000AF8EEE00A60EE02 -:10189000200AC0EE880AF1EE600AFDEEE00AC5ED0E -:1018A000130AD6ED010AF8EEE00A60EE200AC0EE57 -:1018B000880AF1EE600AFDEEE00AC5ED140AD6EDE5 -:1018C000020AF8EEE00A20EE200A80EE080AB1EEE5 -:1018D000400ABDEEC00A85ED150A0C2203A905F1E8 -:1018E0003C00E0F745FFD4F86001A86504F5A0745A -:1018F00006AA05F14801204602F081F90AAA06A9C4 -:1019000005F15C0002F07BF905F15C01204602F074 -:10191000ECF906AA0AA9284602F071F9294606A898 -:10192000FFF71AFE0EB0BDEC048B70BD00247449A5 -:101930000000004EDB0F49400000344B2DE9F04F12 -:1019400093B00746012407F13005286DBA4E00F028 -:101950005001402904D0F16E002912D0400610D564 -:1019600006F1100107F16800FFF766FDD7F8500196 -:10197000C00519D506F15C0107F5A07002F0B5F9B4 -:1019800012E0D7F8500100F05002402A03D000299D -:1019900015D0400613D506F15C0107F5A07002F0E2 -:1019A000A4F9286DC0050AD500A9304602F09DF9BA -:1019B00006F1200200A906F1100002F020F9D7F884 -:1019C0005001C005384602D5FFF7C6FE01E0FFF71B -:1019D0002FFE06F11002314606F1200002F00FF949 -:1019E00095F85000400640F1C780386BD7F8501189 -:1019F0000843C00540F1AC8004AA07F1680106F174 -:101A0000100002F081F9D5F840A04FEAEA7BE86BBC -:101A1000C117AA6BD317A2FB028902FB039903FB30 -:101A20000299A0FB002300FB013301FB003318EBFC -:101A3000020049EB0301AAFB0A230AFB0B330BFB51 -:101A40000A338018594102292FDB02DCB0F1804FA4 -:101A50002BD307A802F053FE07A8D0F808A04FEA3E -:101A6000EA7B4068C117079AD317A2FB028902FBE1 -:101A7000039903FB0299A0FB002300FB013301FB48 -:101A8000003318EB020049EB0301AAFB0A230AFB0F -:101A90000B330BFB0A3380185941022905DB02DCAA -:101AA000B0F1804F01D30420B063B06B042801D1A2 -:101AB000002417E0022801D0032808D1A96C41F2C4 -:101AC000883291FBF2F4012C0CDA01240AE001289F -:101AD00008D1A96C41F2883291FBF2F1012900DAB8 -:101AE00021464C00032800D0A4005848444300205D -:101AF0000A900AAD21460598800202F07AF86860E3 -:101B0000214604984042800202F073F8A860002049 -:101B10000D900EAA06F110010AA802F070F806F165 -:101B200010020EA906F1100002F0CCF806F1100127 -:101B300006F11000FFF710FD00A9304602F0D5F8BD -:101B400006F1200200A906F1100002F058F813E097 -:101B500006F11003AA6C06F1100107F16800FFF707 -:101B60007DFB00A9304602F0C0F806F1200200A972 -:101B700006F1100002F043F8002013B0BDE8F08F2A -:101B80000024F4490000804E38B50446206BC0059F -:101B90000AD404F13000006DC00505D4D4F850011A -:101BA000C00501D4002032BD234DD4F8500100F40B -:101BB000A060B0F5A06F09D1102204F5A07105F165 -:101BC0001000E0F7D5FD0120E86604E02046FFF7AD -:101BD000B5FE0020E86604F13000D0E9022305F1EB -:101BE000100002F091FC002032BD10B5124C7022A2 -:101BF00000212046E1F7EEFF4FF080402061206099 -:101C00002062E063E065002010BD80B5FFF7EDFFC6 -:101C1000002805D10FF20D00BDE8024002F018BE09 -:101C200002BD00001322C8210948FEF784BA000053 -:101C30000000D04001006400C0B20020112D4454C7 -:101C4000FB2189400080664071981C00A69BC4005F -:101C5000891B020838B50446DFF898536868087095 -:101C6000D5E90201C2E90001686A9FED600A296AAC -:101C7000002920D400EE900AF8EEE00A60EE800A17 -:101C8000C4ED000AD5ED0A0AF8EEE00A60EE800A1B -:101C9000C4ED010AD5ED0B0AF8EEE00A60EE800A09 -:101CA000C4ED020AD5ED080AF8EEE00A20EE800A3B -:101CB00084ED030A26E0404200EE900AF8EEE00AC6 -:101CC00060EE800AC4ED000AA86A404200EE900A65 -:101CD000F8EEE00A60EE800AC4ED010AE86A4042CC -:101CE00000EE900AF8EEE00A60EE800AC4ED020A07 -:101CF000286A404200EE900AF8EEE00A20EE800AE0 -:101D000084ED030A02F01BFD84ED040AE86B32BD8A -:101D100070B588B00446164604A8FEF7E7FADFF867 -:101D2000D452D5E90201C5E90401C6E9000100A8C1 -:101D300002F065FC00A841689FED2C0A009A002A79 -:101D400020D400EE901AF8EEE00A60EE800AC4EDAE -:101D5000000AD0ED020AF8EEE00A60EE800AC4ED57 -:101D6000010AD0ED030AF8EEE00A60EE800AC4ED45 -:101D7000020ADDED000AF8EEE00A20EE800A84EDAA -:101D8000030A26E0494200EE901AF8EEE00A60EEFF -:101D9000800AC4ED000A8168494200EE901AF8EE0C -:101DA000E00A60EE800AC4ED010AC068404200EE1D -:101DB000900AF8EEE00A60EE800AC4ED020A00988C -:101DC000404200EE900AF8EEE00A20EE800A84ED30 -:101DD000030A00202061686B801100F00100296C6B -:101DE000891101F00101084308B070BD0000803086 -:101DF0002DE9FF41044600254FF47A787D4E06F127 -:101E00000802311D06F1200002F01CFC04F12C0236 -:101E10005068306304F13800816C716304F1CC07C1 -:101E20007968B16304F1D8018B6F33645268D305CC -:101E300001D5D4F82C80836C5FEAC35C05D5D0F85B -:101E400044C0C44501DAE0460125D7F804C05FEA82 -:101E5000CC5E05D5D4F8CCE0C64501DAF0460225C3 -:101E6000896F5FEAC15E04D5D4F864E1C64500DA43 -:101E700003255FEAC15E07D50CEA030E5FEACE5E7A -:101E80000BD44FF0FF3508E003EA020E0CEA0E0E09 -:101E90005FEACE5E01D44FF0FF35002D05D0022D54 -:101EA0001BD00ED3032D24D02FE002F04000401EA3 -:101EB0008041C043C00FF063D4E90E01C6E90201BE -:101EC00025E003F04001491E8941C943C90FF16370 -:101ED000D0E91423C6E9022319E00CF04000401EAB -:101EE0008041C043C00FF063D4E93601C6E9020166 -:101EF0000DE001F04000401E8041C043C00FF06380 -:101F0000D4E95601C6E9020101E00020F06306F1C0 -:101F1000180200A901A8FEF700FA9DF90000306040 -:101F200000240DE040060AD501A850F8240000EE78 -:101F3000100ABAEEC80A06EB840080ED320A641C6F -:101F4000032C2CDA387900F0500040280CD101A87D -:101F500050F8240000EE100AB8EEC00A2C2000FB56 -:101F60000460443002F006F9786800F0C001C0292E -:101F7000D8D101A850F8240000EE100AB8EEC00A2B -:101F80002C2000FB0460443002F009F9DFED180A50 -:101F900020EE200A06EB840080ED320ACFE7002015 -:101FA00004B0BDE8F08137224FF461711248FEF7AA -:101FB000C2B838B50F4CD82200212046E1F70AFEFE -:101FC000002508E004F1D8012C2000FB0540443036 -:101FD00002F0C1F86D1C032DF4DB002032BD80B58A -:101FE000FFF7E7FF0548BDE8024002F031BC000002 -:101FF0000000803798320020F11D0208A71F020858 -:102000002DE9F0412DED048B84B004460F46904637 -:102010001D46DFF894683C2206F10C01304602F0C0 -:102020002BFD502206F1580106F1480002F024FD74 -:102030000C22414606F13C00E0F79AFB102239469B -:1020400006F19800E0F794FB9FEDA29AD6F85C01A8 -:10205000401CC6F85C01072802DB0620C6F85C01BC -:10206000D6F85C01C0F1060722E000AA06EB0710D3 -:1020700000F14801284601F066FE00AA07EB470080 -:1020800006EB800104F1B80001F030FDF0EE409A5B -:1020900019EE900AE5F736FA21F0004153EC182BBF -:1020A00023F00043EEF79AF901D2B0EE699A7F1C53 -:1020B00019EE100AE5F726FA41EC180B062FD4DBCF -:1020C000B0EE480AF0EE680A04B0BDEC048BBDE83F -:1020D000F08100002DE9F84F2DED088BB0EE409A0D -:1020E000F0EE609A0C46904600259FED78ABB0EE7E -:1020F0004A8AF0EE6A8A416B002904D4D0F8D400F1 -:10210000032800D10125DFF8A067482206F1C801A5 -:1021100006F1C00002F0B0FC06F1B80989ED149B8D -:1021200000270CE053EC182B06EBC700D0F8C410C6 -:10213000D0F8C000EEF7CAFA41EC180B7F1C0A2F4A -:10214000F0DB51EC180B0022DFF86037EAF78AF871 -:1021500041EC1B0B89ED16BB322C2FDBC820C6F8D7 -:1021600054014046EAF766F841EC1A0B51EC190BA2 -:102170000022DFF83C37EAF775F853EC1A2BE5F745 -:10218000E9F90022DFF84C37EAF76CF841EC180B5C -:10219000B4F57A7F45DB51EC190B0022DFF81437D8 -:1021A000EAF760F853EC1A2BE5F7D4F90022DFF8D0 -:1021B0002437EAF757F841EC180B32E0D6F854010F -:1021C00041F2883198FBF1F101EB8101401AC6F828 -:1021D000540102D50020C6F8540151EC190B00221D -:1021E000DFF8D436EAF73EF882468B464046EAF7F7 -:1021F00021F852465B46E5F7ADF90022DFF8D43608 -:10220000EAF730F841EC180BD6F85401002808D151 -:1022100006F5AA70C068012803D1B0EE4A8AF0EE34 -:102220006A8A06F5AA704068002803D0B0EE498A91 -:10223000F0EE698ADFF88406804503D1B0EE498A62 -:10224000F0EE698A53EC182B00200146F9F792FC56 -:1022500001D089ED18BBD9E9180153EC1B2BEFF71E -:1022600023FA21F00041DFF85826DFF85836EEF760 -:10227000A1FA22D8D6E92E2300200146F9F77AFCEC -:102280001BD1012D19D1C820C6F8540151EC190BEE -:102290000022DFF82436E9F7E5FF04460D46404604 -:1022A000E9F7C8FF22462B46E5F754F90022DFF88C -:1022B0002436E9F7D7FF41EC180BB0EE480AF0EEF0 -:1022C000680ABDEC088BBDE8F18F0000000000003B -:1022D00000000000002474492DE9F0472DED0C8B1F -:1022E000AEB0044619A800210A460B460EC00846A7 -:1022F000DFF8B4550DE005EB800191ED2A0AB8EE48 -:10230000C00A20EE090A12A901EB800181ED000A42 -:10231000401C9FEDCB9A0428EDDB06A802F06FF974 -:102320009DED060AB8EEC00A20EE090A8DED1C0AE2 -:1023300006A81CA990ED010AB8EEC00A20EE090A11 -:1023400081ED010A90ED020AB8EEC00A20EE090AFA -:1023500081ED020A90ED030AB8EEC00A20EE090AE8 -:1023600081ED030A02A802F04AF902AEF168706832 -:1023700001F039FC07460299B06801F034FC381AC4 -:102380001690F168B06801F02EFC804616AF0299F5 -:10239000706801F028FC40447860F068014601F064 -:1023A00022FC06460299084601F01DFC8019A0F1A6 -:1023B0008040B86012AB16AA1CA92046FFF720FE89 -:1023C000B0EE408AF0EE608A9FEDE3AB00261DE0A0 -:1023D00004EB86008069E9F72DFF41EC1B0B9FEDB4 -:1023E000E0CB53EC1B2B51EC1C0BE5F7B3F853EC93 -:1023F0001B2BE5F7AFF853EC1C2BE5F7ABF853ECD0 -:102400001A2BEEF763F941EC1A0B761C032EDFDB77 -:1024100051EC1A0BE5F770F900EE100A02F08CFA95 -:1024200010EE100AE5F76EF805F5AC7696ED08BBF0 -:1024300053EC1B2BEFF738F941EC1C0B86ED0ACB64 -:102440009FEDC9AB53EC1C2B51EC1A0BE5F782F84E -:1024500041EC1D0B86ED0CDB53EC1B2BEEF736F934 -:10246000C6E908019FEDC2BB53EC1C2B51EC1D0BC0 -:10247000E5F770F8D6E90E23EEF728F953EC1B2B9D -:10248000E5F768F8C6E90E014FF0000802F0E6FA39 -:10249000002808D1D6E90E01DFF82C24DFF82C340F -:1024A000EDF79CFF0AD2D5F85801002806D1204646 -:1024B000FEF768FE012801D14FF0010804F1180071 -:1024C00001F084FB81093269DFF8F003824200DB0E -:1024D0000246B0EE480AF0EE680A2046FFF7FAFD21 -:1024E00085ED2E0B53EC102BD5E94801E5F732F8BA -:1024F000C5E92E0124A902A801F058FD05F59A7737 -:1025000006AA02A9384601F07AFB394602A801F072 -:10251000ECFB002218E002EB4207DF190DF1900CF2 -:102520005CF827700DF1180C0CEB830CDCF804C080 -:10253000CCFB07015B1C032BEDDB19AB800F40EAE2 -:10254000810043F82200521C032A03DA00200146CE -:102550000346F0E719AFD5F85801002801D0002054 -:10256000B860D7F80890C9F1000000EE100AB8EE84 -:10257000C00A20EE098AB0EE480A02F077FA8DED23 -:102580000E0A0DF1380A0020CAF80400CAF8080043 -:10259000B0EE480A02F06DFA8AED030A306941F2A2 -:1025A000883190FBF1F000EE100AB8EEC00A00EEA0 -:1025B000909AF8EEE00A9FEDBB1AC0EE810AC0EED9 -:1025C000800AB0EE001AC0EE810AFDEEE00A10EEBD -:1025D000900A400000EE900AF8EEE00A9FEDB11A72 -:1025E00060EE810A20EE800ABDEEC00A87ED020A85 -:1025F000B8EEC00A20EE098AB0EE480A02F036FAB8 -:102600008DED0A0A0DF128090020C9F80400C9F867 -:102610000800B0EE480A02F02CFA89ED030A20AA5D -:102620000EA912A801F08FFB0EAA0AA920A801F09A -:102630008AFBD4F8D400012816DB002212E000BF88 -:10264000000080305AF8220000EE100A12A800EBB9 -:10265000820080ED000ABEEEC10A05EB820080ED2B -:102660002A0A521C042AEDDB95ED2E8BD5F8587101 -:10267000002F01D086ED068BD6E9062351EC1B0B0B -:10268000E4F768FFCDE9000153EC182B51EC1A0B6D -:10269000E4F760FFDDE90023EEF718F841EC100BDA -:1026A00085ED2E0B86ED060BD4F8D400032802D15D -:1026B000B8F1000F01D0002F3FD09FED878B53EC76 -:1026C000102B51EC180BE4F745FFE5F715F800EE79 -:1026D000100A02F0CBF98DED0A0A0020C9F80400B7 -:1026E000C9F80800D5E92E2351EC180BE4F732FFA6 -:1026F000E5F702F800EE100A02F0BBF989ED030AD3 -:102700000EAA0AA912A801F01EFB0EA801F0A5FB53 -:1027100000220AE00AEB820090ED000ABEEEC10A38 -:1027200005EB820080ED2A0A521C042AF2DBD4E970 -:10273000362305F1A80001F0FBFED5F8580100286A -:1027400004D000217160401EC5F858012EB0BDECC8 -:102750000C8BBDE8F08700BF000000000000000007 -:10276000000000000000F03E989999999999B93FAE -:10277000CDCCCCCCCCCCEC3FF8B5044604F1C801B0 -:10278000494800F5AC750A7AD20604D40322C0F891 -:10279000582100226A60D4F85021D2050CD4226B53 -:1027A000D20503D5D4F88020D20505D40321C0F882 -:1027B000581100206860F2BD6A69002A0DD0D1E985 -:1027C0000423D1E90667901B63EB07014FF47A728B -:1027D0000023EBF753FB286115E0D4F8C81044F64A -:1027E0002062914201DB29610DE0EB68C918E960C4 -:1027F000914205DAD0F85801002801D10020F2BD3D -:1028000029610020E8602046FFF766FD0020F2BD48 -:1028100010B5254C4FF4D07200212046E1F7DAF9CB -:102820004FF08040C4F83401C4F8A80000221346D9 -:1028300004F1A80001F07CFE4FF47A70C4F8540152 -:1028400000202349C4E948019FED250B84ED5C0B72 -:1028500004F5B87080ED020B80ED040B80ED060BE3 -:1028600080ED080B10BD1049C1F8600100207047D1 -:102870000D49C1F86C010020704704224FF4167115 -:102880001948FDF758BC80B5FFF7C2FF0020FFF7DD -:10289000EAFF0020FFF7ECFF1448BDE8024001F01A -:1028A000D7BF0000E10237474899002000002440CC -:1028B00000006940000049400000794040420F009C -:1028C0001383C0CAA145B63F7B14AE47E17A843F6B -:1028D0000000F03F0088B340000000000000E03F2F -:1028E0000000000000000000792702087B28020891 -:1028F00080B5B8220146DFF8FC04DFF739FF00207D -:1029000002BD80B5B822DFF8EC14DFF731FF0020FC -:1029100002BDF0B585B0044600A902A8FDF713FB7F -:1029200001A801F019FE02283FD0D4F8080100994F -:10293000461ADFF8C04494F8B000002848D0002EB2 -:1029400046D0F717029D2268D317A2FB060102FBAF -:10295000071103FB0611000C40EA014040190290E8 -:1029600002ADD5F804C06268D317A2FB060102FBD2 -:10297000071103FB0611000C40EA01406044686047 -:10298000D5F808C0A068C117A0FB062300FB0733D9 -:1029900001FB0633120C42EA034202EB0C00A86072 -:1029A000032102A8FDF791FA12E0606B03280FD112 -:1029B000FDF7BCFA00280BD0DFF838440C2202A93E -:1029C00004F10C00DFF7D4FE0098A06100F003F8DA -:1029D000002005B0F0BD2DE9F04F87B0DFF81404FA -:1029E0008069DFF81464B168884200DAB060F16889 -:1029F000814200DAF060F168B268891A3269914266 -:102A000001DA0020C2E10014C117CDE900017068AD -:102A1000401C7060DDE90001DDE90023A2FB0045F8 -:102A200002FB015503FB0055CDE90245DDE902013A -:102A3000DDE90023A2FB004502FB015503FB005525 -:102A4000CDE90445D6E90E01DDE90023801859419E -:102A5000C6E90E01D6E90C01DDE9022380185941CF -:102A6000C6E90C01D6E91C01DDE9042380185941AF -:102A7000C6E91C01DFF87C03D0E92A23DDE9040163 -:102A8000DDE90045A4FB008904FB019905FB0099E1 -:102A900012EB080043EB0901DFF85823C2E92A01D1 -:102AA000002445E0DFF84C0300EB840500EBC4078D -:102AB000D7E90CABDDE90023E868C117A0FB028968 -:102AC00000FB039901FB02991AEB08004BEB09018B -:102AD000C7E90C013037D7E90A01DDE90289EA6864 -:102AE000D317A2FB08AB02FB09BB03FB08BB10EB2F -:102AF0000A0041EB0B01C7E90A01D7E91001EA68B6 -:102B0000801851EBE271C7E91001D7E918ABDDE994 -:102B10000401EA68D317A2FB008902FB019903FBB9 -:102B200000991AEB08004BEB0901C7E91801641C76 -:102B3000032CB7DB7068B0F57A7FC0F2938000EBAE -:102B4000C00009300A2190FBF1F070604FF00908D5 -:102B5000D6E90E01A8FB002308FB013312F109009E -:102B600043F100010A220023EBF788F9C6E90E01C0 -:102B7000D6E90C01A8FB002308FB013312F1090080 -:102B800043F100010A220023EBF778F9C6E90C01B2 -:102B9000D6E91C01A8FB002308FB013312F1090050 -:102BA00043F100010A220023EBF768F9C6E91C0192 -:102BB0009048D0E92A23A8FB020108FB0311093041 -:102BC00041F100010A220023EBF758F9894AC2E9D2 -:102BD0002A01002444E0874800EBC405D5E90C0134 -:102BE000A8FB002308FB013312F1090043F10001A7 -:102BF0000A220023EBF742F9C5E90C013035D5E98B -:102C00000A01A8FB002308FB013312F1090043F17C -:102C100000010A220023EBF731F9C5E90A01D5E9E1 -:102C20001001A8FB002308FB013312F1090043F156 -:102C300000010A220023EBF721F9C5E91001D5E9CB -:102C40001801A8FB002308FB013312F1090043F12E -:102C500000010A220023EBF711F9C5E91801641CF1 -:102C6000032CB8DBD6E90C01A0FB002300FB0133E9 -:102C700001FB00330320A0FB024500FB0355CDE917 -:102C80000445D6E90E01D6E91C23A2FB004502FB50 -:102C9000015503FB0055AD0045EA94757068C117F6 -:102CA000544AD2E92A89A8FB002308FB013309FB17 -:102CB0000033CDE90223002761E0DDE90401B0EB38 -:102CC0008400A941DDE9022380185941CDE90001C2 -:102CD00001D1002852D0474800EBC70000F1300C6A -:102CE000D0E90C23D6E90C01A0FB02AB00FB03BB2F -:102CF00001FB02BBD6E90E23DCE90A01A0FB028935 -:102D000000FB039901FB0299BAEB08026BEB090384 -:102D10000320A0FB02AB00FB03BBDCE91023D6E9D8 -:102D20001C01A0FB028900FB039901FB0299BAEB8D -:102D3000080A6BEB090B7268D317DCE91801A0FBDA -:102D4000028900FB039901FB02991AEB08004BEB87 -:102D50000901DDE9042380185941B0EB8400A94141 -:102D6000DDE9022380185941401E61F10001DDE9CF -:102D70000023EBF783F81F4941F827007F1C032F3E -:102D80009BDB1C48012180F8B010002007B0BDE893 -:102D9000F08F10B5174CB82200212046E0F71AFF3B -:102DA000164820624FF4AA0060624FF4A020A0628F -:102DB000002010BD082296211148FDF7BCB980B54E -:102DC000FFF7E7FF40F2D163B8220E490E4801F049 -:102DD000EEFC002801D0012002BD0C4801F038FDB6 -:102DE000002801D0012002BD0248012180F8B11065 -:102DF000002002BD88A70020A0A700200000D8FF67 -:102E00001329020803290208F1280208B52D020837 -:102E1000704700200AE0DFF8F81B01EB8001DFF8C3 -:102E2000F42B0A62DFF8E42BCA62401C0328F2DBB1 -:102E3000704700201BE0DFF8D81B01EB800191ED0B -:102E40002D0AD1ED080AF4EE400AF1EE10FA01D590 -:102E500081ED080A01F12002D2ED030AB4EE600A06 -:102E6000F1EE10FA02D5D1F8B410D160401C03285D -:102E7000E1DB7047FEB5B0F9542012040092B0F9BE -:102E80005620130400AA5360B0F9584024049460FB -:102E9000DFF87C5B009E6F6EF61B0096AE6E9B1B90 -:102EA0005360EB6EE31A93600B46416F006D80B286 -:102EB00001F01AF9F7BDF0B589B000252E462F466E -:102EC000DFF84C4BD4F89410012902D12946C4F8FC -:102ED000941003A9FFF7CEFF06A801F068FB039842 -:102EE0000699A0EBA130039006A803A94A6843689D -:102EF000A2EBA3324A608A688068A2EBA0308860A7 -:102F0000602204F5587104F5577001F0B5FD0C22EC -:102F100003A904F55D70DFF72BFC00A801F0EFFBBF -:102F2000602204F5737104F5727001F0A5FD0C22A6 -:102F300000A904F57870DFF71BFC294600A838E0EB -:102F400004F2344293685B1C936001EB410204EB92 -:102F50008202D2F85C334FF0090C93FBFCF35D194D -:102F600001EB410304EB8303D3F860C34FF0090E78 -:102F70009CFBFEFC664403F55873D3F804C09CFB2D -:102F8000FEFC6744DDF800C0D2F8C82392FBFEF2D5 -:102F9000624400924268D3F86CC09CFBFEFC624421 -:102FA000426082681B6FF44693FBFCF39A188260C0 -:102FB000491C0929C4DB290000D54942320000D54B -:102FC00052423B0000D55B42009D002D00D56D4272 -:102FD00000954568002D01D56D4245608568002D3E -:102FE00001D56D4285600025009EB14200DA0125C1 -:102FF00041688A4200DA6D1C8068834200DA6D1CE9 -:1030000004F234429068092800DB6D1C042D0FD1B6 -:1030100094F83414032908DB526804F16400FCF7C7 -:103020002DFF012001F063FB02E00846FCF71FFFC3 -:1030300009B0F0BD2DE9F0410446DFF8D459002075 -:1030400085F8340405F234467060074605F1080837 -:1030500025E005EB870090ED330AD8ED0D0AB4EEBC -:10306000600AF1EE10FA19DBD8E912230020DFF82C -:10307000AC19EDF72BFB21F00041DFF8A429DFF8B4 -:10308000A439EDF7ABF909D295F83404401C85F862 -:10309000340470680121B940084370607F1C032F1D -:1030A000D7DB95F83404002815D0002709E004EB9D -:1030B000C70041680068EDF765F905EB87014866D0 -:1030C0007F1C032FF3DB0020B060A868042802DA1D -:1030D00095F83404A86095F8340403281DD198EDC0 -:1030E000010ADFEDBD0AB4EE600AF1EE10FA14D564 -:1030F000D8E912230020DFF82419EDF7E7FA21F0D0 -:103100000041DFF81C29DFF81C39EDF767F904D21C -:10311000A868032801D10420A86098ED020ADFED19 -:10312000AF0AB4EE600AF1EE10FA1DD598ED010A6F -:10313000DFEDAB0AB4EE600AF1EE10FA14D5D8E96F -:1031400012230020DFF8D418EDF7C0FA21F0004177 -:10315000DFF8D428DFF8D438EDF740F904D2A868B6 -:10316000042801D10520A860BDE8F0812DE9F041D7 -:103170000446DFF89C78D7F8B404012850D107F151 -:10318000E005F7EE000AB7EE000A07F5E4712846FD -:1031900001F078FC07F1500207F5D471284601F0E0 -:1031A00077FE06003DD07868401C7860616F0C4661 -:1031B000D7E91401EDF7E6F8214600F01AFD00EE1C -:1031C000100ABAEEC80A10EE100AE4F79BF9C7E934 -:1031D000140107F5D07407F15008D4E90201EDF7A6 -:1031E000D1F8C8F80800D4E90401EDF7CBF8C8F825 -:1031F0000C00D4E90601EDF7C5F8C8F81000D7E9CE -:1032000068010122DFF82838EDF7D4FA09D89FEDDC -:10321000750AF0EE400A2946284601F033FC00E02A -:1032200000263046BDE8F08190ED030AD0ED040A97 -:10323000F4EE400AF1EE10FA1BD590ED051AB4EE4B -:10324000401AF1EE10FA14D50021016490ED040A41 -:10325000D0ED050AB4EE600AF1EE10FA04DB0121AC -:10326000416402218164704702214164012181642B -:103270007047B4EE600AF1EE10FA1BD590ED050A26 -:10328000B4EE600AF1EE10FA14D50121016490ED5C -:10329000030AD0ED050AB4EE600AF1EE10FA04DB81 -:1032A00000214164022181647047022141640021B0 -:1032B000816470470221016490ED030AB4EE600A54 -:1032C000F1EE10FA04DB00214164012181647047B2 -:1032D000012141640021816470470021C1640B46D3 -:1032E00006E01A4640F8212000EB81025362491C97 -:1032F0000329F6DB0121416719468167704710B544 -:10330000044604F15400142141600A21C1600021E7 -:1033100001772046FFF7E1FF0020606510BD000047 -:1033200038B52DED028B86B003A9FFF7A3FD9FED05 -:10333000B18B002418E003A850F8240000EE100A16 -:10334000BAEEC80A00A800EB840080ED000A20EE67 -:10335000000A10EE100AE4F7D5F853EC182BEDF73D -:10336000B5F941EC180B641C032CE4DBB0EE480A01 -:10337000F0EE680AF8F77EFBB0EE408AF0EE608A65 -:10338000002419E000EB840500A850F82400E4F7BD -:10339000B9F853EC182BE8F765FFE4F7ADF900EE48 -:1033A000100AD5F8400400EE900A30EE200A05F22B -:1033B000404080ED000A641CDFF85406032CE1DB7A -:1033C000D0F89414491CC0F894140121C0F8BC141E -:1033D00006B0BDEC028B31BDAF47E13D00007A4342 -:1033E000BD74933CCDCCCC3E38B50446002004F1EE -:1033F0003C0507E0B1EE400A81ED030A002144F8E4 -:103400002010401C032838DA95ED050AB8EEC00AF2 -:1034100004EB8001D1ED000A80EE800AF0EE400A54 -:10342000F5EE400AF1EE10FA02DBB0EE601A01E0B0 -:10343000B1EE601AD1ED061AF5EE401AF1EE10FA6F -:1034400001DAF1EE611A31EE611A81ED0C1AC1ED6B -:10345000060AD4ED0F0ABFEE001A30EE811AD1ED44 -:10346000091A01EE210A80EE200A81ED090AB5EE63 -:10347000400AF1EE10FABDDBBEE72046FFF7D4FEAE -:103480002869B0F57A7F01DA401C2861686894F8F1 -:103490007010052900F28380DFE801F0030E192C7B -:1034A0006C4004F1700001214160816000202861BE -:1034B000084684F8700031BD04F17000C16801292C -:1034C0006DD1022184F870100021816031BD04EBC0 -:1034D000800090ED030AD5ED0A0AB4EE600AF1EE21 -:1034E00010FA12DAD5ED0B0AF4EE400AF1EE10FAFA -:1034F0004BDB2BE004EB800090ED030AD5ED0A0ACC -:10350000B4EE600AF1EE10FA49DB042084F8700092 -:1035100004F1700000214160816031BD04EB800046 -:1035200095ED0B0AD0ED030AB4EE600AF1EE10FA45 -:103530000CDA90ED0C0ADFED330AB4EE600AF1EE1E -:1035400010FA0CD52869696A884228DB032084F8C0 -:10355000700004F1700001214160816031BD0420E0 -:1035600084F870000020286104F17000002141609F -:10357000816031BD95ED0C0A04EB8000D0ED030AAB -:10358000B4EE600AF1EE10FA09DB052084F8700051 -:103590000020286104F1700001214160816031BD8B -:1035A00010B52DED028B08EE100ADFF86444B8EE7A -:1035B000C80ADFED120A20EE200ADFED110A80EEC4 -:1035C000200A10EE100AE3F79DFF41EC100B01F00A -:1035D000EDFF53EC102B0020DFF85814E3F7BAFF8F -:1035E000ECF7D0FEC4F8840084ED208ABDEC028B99 -:1035F00010BD00000000000000000000368D2740D4 -:103600000024F449CCCC4CBD2DE9F0472DED028BC4 -:1036100090B0044602A800210A460B460EC004F1F1 -:103620003006B06CDFF8E85344F62061884206DBD0 -:10363000D5F88010884212D0FFF7B2FF0FE0D5F81E -:1036400058238018C5F858038842C0F26781B16CCE -:10365000814201D0FFF7A4FF0020C5F85803206B7A -:10366000C5F8C0042046FFF75BFED5F89404D5F8F2 -:103670009014884206DB05F58860FFF7B5FE002050 -:10368000C5F89404D5F8B804012802D12046FFF704 -:1036900012FCD5F8B404012840F0408102A801F0E2 -:1036A0005DF802A8D0ED020A90ED011A9DED020A24 -:1036B000DDED021A20EE210A01EE010A00EEA00A59 -:1036C00001F03AF985ED030ABEEE410A10EE100A48 -:1036D000ADF8000000A800214180818005F52C771D -:1036E0003946FDF7BFF908A800F089FF296F08984F -:1036F00000F07FFA81460DF12008696FD8F80400C8 -:1037000000F077FA8246A96FD8F8080000F071FA45 -:103710000AEB090100EB0109E96FD8F80C0000F091 -:1037200068FA00EB0908102208A905F17000DFF71C -:103730001FF84FF000091CE004EB490A716CBAF95C -:103740005400000400F055FA00EE100A0CA800EB3B -:10375000890080ED000ABAEEC80A05EB890080ED09 -:10376000050A05A8BAF95410090440F8291009F10E -:103770000109B9F1030FDFDB05A905F5E47001F0DC -:1037800020FAD5F8280329688842C0F2C78094ED52 -:10379000428ABAEEC88A95ED360AB5EE400AF1EED5 -:1037A00010FA0BD038EE400A10EE100AE3F7AAFE2A -:1037B00021F00041E3F7A0FFC5F8DC0085ED368A73 -:1037C000A868032804D9001F0AD0401E0FD014E0B7 -:1037D0009948A8634FF07E50E863C82028640CE045 -:1037E0009648A8639648E8636420286405E09548F5 -:1037F000A8639548E863322028643846FCF7EFFF59 -:1038000001F0A8F800EE100ADFED800A80EE200A31 -:1038100085ED040AA822002105F52C70E0F7DAF9FD -:10382000D5F88400404549DA95ED040AB5EE400A22 -:10383000F1EE10FA42DDD5ED0E0AB4EE600AF1EEBB -:1038400010FA3BD56868296C884205DA2046FFF7F4 -:103850008DFC002810D161E095ED2C0ADFED6E0A99 -:10386000B4EE600AF1EE10FA06DB2046FFF77EFCAC -:10387000002853D000206860002005E005EB80019F -:103880004A69C1F8B420401C0328F7DBFFF7D1FADE -:103890004FF000090BE005EB890090ED080AD0ED30 -:1038A0000B0A30EE600A80ED330A09F10109B9F123 -:1038B000030FF0DB05F5D470FFF7BCFB00200CE034 -:1038C00005EB800191ED260AD1ED050A30EE600A84 -:1038D000B0EEC00A81ED290A401C0328F0DB95ED0B -:1038E000290AD5ED2A0A30EE200AD5ED2B0A30EE52 -:1038F000200A85ED2C0A4FF0000906E005EB89004F -:103900004169C0F8981009F10109B9F1030FF5DB1D -:10391000E822002105F5E470E0F75CF9002010B022 -:10392000BDEC028BBDE8F08710B5394C4FF49B62BB -:1039300000212046E0F74EF9102020604FF0804033 -:103940002067FFF766FA04F58860FFF7D8FC206867 -:10395000C4F890044FF08440C4F87C041E20C4F8DE -:103960009C043A48C4F8A8043948C4F8A404394867 -:10397000C4F8AC041920FDF787FB002010BD01221C -:1039800040F252313448FCF7D6BB10B5204C4FF40E -:103990009B6201462046DEF7EBFE0120C4F894004E -:1039A000002010BD80B51A490022C1F894204FF4C0 -:1039B0009B62DEF7DDFE002002BD10B5FFF7B4FF0D -:1039C000040009D04FF437730FF29C020FF2BC01D0 -:1039D000FFF71EFA204610BD204800F039FF040012 -:1039E00009D040F2DF230FF280020FF2A001FFF7AF -:1039F0000FFA204610BD42F226034FF49B6218498D -:103A00001848BDE8104000F0D2BE000000401C463F -:103A10000873002000401CC6CDCC4C3D0000F0BF18 -:103A20009A9999999999B93F9CC420B07268913F2D -:103A30000070A7400000D0410080BB4400009643C6 -:103A40009A99993F000070423333B33FCDCCCC3EBE -:103A5000CDCC4C3F3333333F093602087F3902085F -:103A6000A53902088B390208696E765F656E61625E -:103A70006C655F696E5F7573655F6175746F5F63B9 -:103A8000616C6962726174696F6E0000433A5C54E4 -:103A9000656D705C4955535C494B445C5461652DC0 -:103AA000536F6F5C656D6265646465645F726566C3 -:103AB0006572656E63655F666F725F4E6F74655F9A -:103AC000335C656D6265646465645C496E76656EE1 -:103AD00053656E73655C6D706C5C616363656C5F90 -:103AE0006175746F5F63616C2E63000010B590B0F8 -:103AF00014460022009200AA90ED010AB8EEC00A16 -:103B0000D1ED020AF8EEE00A20EE200AD0ED020A1A -:103B1000F8EEE00A91ED011AB8EEC11A00EEC10A02 -:103B200082ED010A90ED020AB8EEC00AD1ED000A5A -:103B3000F8EEE00A20EE200AD0ED000AF8EEE00AE6 -:103B400091ED021AB8EEC11A00EEC10A82ED020A26 -:103B500090ED000AB8EEC00AD1ED010AF8EEE00AD5 -:103B600020EE200AD0ED010AF8EEE00A91ED001AED -:103B7000B8EEC11A00EEC10A8DED030A0CAA00A925 -:103B8000204600F0E0F804A9204600F0FAF908AA5F -:103B900004A90CA800F0D7F808A890ED020AB5EE29 -:103BA000400AF1EE10FA09D1D0ED010AF5EE400A13 -:103BB000F1EE10FA02D19FED530A05E0D0ED010AB3 -:103BC00001F0FEFCB1EE400A10B010BD00210A4623 -:103BD00005E050F822305B1303FB0311521C032A4B -:103BE000F7DB0846704781FB0001400F40EAC10047 -:103BF000704781FB0001800F40EA810070472DE98A -:103C0000F04104460D46164629682068FFF7F1FF8B -:103C1000074669686068FFF7ECFF8046A968A068FE -:103C2000FFF7E7FFA7EB08010F1AE968E068FFF765 -:103C3000E0FF381A306069682068FFF7DAFF07464E -:103C400029686068FFF7D5FF8046E968A068FFF73C -:103C5000D0FF08EB07014718A968E068FFF7C9FF24 -:103C6000381A7060A9682068FFF7C3FF0746E96843 -:103C70006068FFF7BEFF80462968A068FFF7B9FFBC -:103C8000A7EB080147186968E068FFF7B2FFC019A1 -:103C9000B060E9682068FFF7ACFF0746A968606874 -:103CA000FFF7A7FF80466968A068FFF7A2FF08EB4F -:103CB00007010F1A2968E068FFF79BFFC019F06041 -:103CC000BDE8F08110B403680C68E3181360436822 -:103CD0004C68E318536083688C68E3189360C0688D -:103CE000C9680818D06010BC704702680A60426852 -:103CF00052424A60826852428A60C0684042C8604C -:103D0000704700000000000030B591B00446154631 -:103D1000002000900C2201A8DEF72AFD0CAA00A9C1 -:103D20002046FFF76CFF08A92046FFF7DEFF04AA34 -:103D300008A90CA8FFF763FF0C2205A92846DEF7A7 -:103D400017FD11B030BD90ED000AD1ED000A20EE54 -:103D5000200AD0ED010A91ED011A00EEC10AD0ED62 -:103D6000020A91ED021A00EEC10AD0ED030A91EDAC -:103D7000031A00EEC10A82ED000A90ED000AD1EDAF -:103D8000010A20EE200AD0ED010A91ED001A00EEA2 -:103D9000810AD0ED020A91ED031A00EE810AD0EDFE -:103DA000030A91ED021A00EEC10A82ED010A90EDBC -:103DB000000AD1ED020A20EE200AD0ED010A91EDB1 -:103DC000031A00EEC10AD0ED020A91ED001A00EECE -:103DD000810AD0ED030A91ED011A00EE810A82ED0D -:103DE000020A90ED000AD1ED030A20EE200AD0ED80 -:103DF000010A91ED021A00EE810AD0ED020A91ED5E -:103E0000011A00EEC10AD0ED030A91ED001A00EE8E -:103E1000810A82ED030A704790ED000AD1ED000A95 -:103E200030EE200A82ED000A90ED010AD1ED010A80 -:103E300030EE200A82ED010A90ED020AD1ED020A6D -:103E400030EE200A82ED020A90ED030AD1ED030A5A -:103E500030EE200A82ED030A704790ED030AD0EDA0 -:103E6000020A90ED011AD0ED001A21EEA12A01EE0E -:103E7000012A00EEA02A00EE002AB0EE000AB4EEFD -:103E8000402AF1EE10FA3AD5B6EE000A22EE000A08 -:103E900060EE020AB7EE081A00EEC21A61EE020ADC -:103EA00020EE201AB7EE082A01EE602A62EE200A00 -:103EB00020EE201AB7EE082A01EE602A62EE200AF0 -:103EC00020EE200AB7EE081A00EE601A21EE202A32 -:103ED00021EE820A80ED000A90ED010A20EE020A2E -:103EE00080ED010A90ED020A20EE020A80ED020A3E -:103EF00090ED030A20EE020A80ED030A70474FF0AE -:103F00007E510160002141608160C160704710B541 -:103F10000446D4ED030A94ED021AD4ED011A94ED8F -:103F2000000A20EE000A01EEA10A01EE010A00EEED -:103F3000A00A00F001FDB5EE400AF1EE10FA18D02B -:103F4000D4ED000AC0EE800AC4ED000AD4ED010AE7 -:103F5000C0EE800AC4ED010AD4ED020AC0EE800A68 -:103F6000C4ED020AD4ED030A80EE800A84ED030A50 -:103F700010BD4FF07E50206000206060A060E060C7 -:103F800010BD02680A6090ED010AB1EE400A81EDB1 -:103F9000010A90ED020AB1EE400A81ED020A90EDAD -:103FA000030AB1EE400A81ED030A704770B5054679 -:103FB0000C4668680146FFF716FE06462968084663 -:103FC000FFF711FE8019A0F180402060A9686868A1 -:103FD000FFF709FE06462968E868FFF704FE301A75 -:103FE0006060E9686868FFF7FEFD06462968A86812 -:103FF000FFF7F9FD8019A060A9686868FFF7F3FD75 -:1040000006462968E868FFF7EEFD8019E060A868B9 -:104010000146FFF7E8FD064628680146FFF7E3FD85 -:104020008019A0F180402061E968A868FFF7DBFDF6 -:10403000064629686868FFF7D6FD301A6061E968AE -:104040006868FFF7D0FD06462968A868FFF7CBFD32 -:10405000301AA061E968A868FFF7C5FD064629681F -:104060006868FFF7C0FD8019E061E8680146FFF766 -:10407000BAFD064628680146FFF7B5FD8019A0F194 -:104080008040206270BD90F90010012901DB002002 -:104090007047002901D50420704790F901100129CB -:1040A00001DB01207047002901D50520704790F9F8 -:1040B0000200012801DB02207047002801D50620FC -:1040C00070470720704738B50446FFF7DCFF054608 -:1040D000E01CFFF7D8FF45EAC005A01DFFF7D3FF9E -:1040E00045EA801080B232BD2DE9F04107460C460A -:1040F00015461E46780702D54FF0FF3000E001203C -:10410000B84608F0030255F822205043FFF771FD2E -:104110003060B80602D54FF0FF3000E001202146A4 -:104120004FEA680202F00C0252595043FFF761FD5A -:104130007060F80502D54FF0FF3000E00120214605 -:104140004FEA281202F00C0252595043FFF751FD7A -:10415000B060BDE8F08110B400220260426005E06A -:1041600000EB820351F822401C61521C052AF7DB48 -:1041700010BC704780ED090A80ED0A0AD0ED060AEE -:10418000B7EE001A70EE810A90ED071A70EE810A00 -:1041900080EE200A80ED000A80ED010A704780ED74 -:1041A000090A90ED010AD0ED000AD0ED061A90ED53 -:1041B000091A01EEE01AD0ED071A01EEC01A90EDCF -:1041C000042AF0EE411A42EE201AD0ED050A40EE24 -:1041D000801AC0ED0A1A90ED080A21EE800A80EDDF -:1041E0000A0A0168416080ED001A70472DE9F84322 -:1041F00004460D461646002711E055F8291009EB34 -:104200004900C01954F82000FFF7F3FC804409F17D -:104210000109B9F1030FF0DB46F827807F1C032F5B -:1042200003DA4FF00008C146F3E7BDE8F183F1B5CA -:1042300082B0012801DA0020FEBD00A902A800F02A -:1042400055F8044600250098012806DB0146024681 -:1042500002EBD1714910A0EB4105401B0090029880 -:10426000A0F1804706463946FFF7C3FCA6EB60067F -:10427000022C23DB7810A0F1C0413846FFF7B9FCCF -:1042800001463846FFF7B5FC471039463046FFF780 -:10429000B0FCA6EB6006032C10D17810A0F1C04151 -:1042A0003846FFF7A6FC01463846FFF7A2FC471048 -:1042B00039463046FFF79DFCA6EB6006002D04D082 -:1042C00027493046FFF795FC06460098012802DB97 -:1042D0004010064107E010F1010F04D1214930469A -:1042E000FFF787FC06463046FEBD000070B5044669 -:1042F0000D4620681C49884205DB401020604FF0C5 -:10430000FF3028601AE0194EB04215DA204600F05E -:1043100039F8286020681649884205DB4010206083 -:104320002868401E286009E0B04207DA400020609B -:104330002868401C286001E00020286020680D49A2 -:1043400009180D4A914201D3032070BD0B4908188A -:104350000B49884201D3022070BD012070BD0000CE -:10436000CD3C412D9A79825AFD0BB958FE855C2CC3 -:10437000FC0BB958666666C6CDCCCC0C0AD7A3C078 -:1043800015AE470100210268002A01D10846704796 -:10439000130C1B0402D1102112040260026812F0F7 -:1043A0007F4F02D1083112020260026812F0704F92 -:1043B00002D1091D12010260026812F0404F02D1C1 -:1043C000891C920002600268002A02D5491E520828 -:1043D000026008467047F8B504460D46206801465D -:1043E000FFF707FC064661680846FFF702FC074630 -:1043F000A0680146FFF7FDFBC6F18041C91B081A02 -:10440000FFF715FF2860206868606068A860A068F2 -:10441000E8600020F2BD000080B58DF800108DF836 -:104420000120022300AAD0210020DEF7A6FA0128ED -:1044300001D1002002BD4FF0FF3002BD38B5144657 -:10444000094D29701946681CDEF792F9631CDBB22E -:104450002A46D0210020DEF790FA012801D1002061 -:1044600032BD4FF0FF3032BD64B7002080B5D2B20C -:1044700000920A46D0210020DEF7C1FA012801D1BE -:10448000002002BD4FF0FF3002BD0EB4002003B08B -:10449000704780B5DEF7A1F96421DEF76CFB0020E0 -:1044A00002BD00000300002013F0030F09D0521ECC -:1044B00022BF13F8010B11F801CBB0EB0C00F3D0C5 -:1044C0007047121F22BF53F8040B51F804CB60450C -:1044D000F7D0121D0AD200BA9CFA8CFCB0EB0C008B -:1044E00038BF6FF0000088BF01207047521E22BF06 -:1044F00013F8010B11F801CBB0EB0C00F6D0521CF5 -:1045000008BF10467047704770B514461D46DFF867 -:10451000386206F148014A6F42F002024A671022EF -:10452000014606F11000DEF723F9C6E9124570BD19 -:1045300070B514461D46DFF8106206F14001CA6FDF -:1045400042F00102CA671022014606F17000DEF750 -:104550000FF9C6E9104570BDDFF8EC11D1F8A820BD -:10456000026091F8A400704718B40146DFF8D82122 -:1045700002F1A40392F8A440A04208D1022903D179 -:104580005868401C586010E0002058600DE000247E -:104590005C6082F8A400012901D1012000E0022022 -:1045A0002246032118BC00F037B911BC704770B522 -:1045B0000446654DE9686868FFF715FB06462968FB -:1045C000A868FFF710FB301A2060E968A868FFF7B9 -:1045D0000AFB064629686868FFF705FB80196060DA -:1045E000E8680146FFF7FFFA064629680846FFF724 -:1045F000FAFA8019A0F18040A060002070BD80B55B -:1046000010225249DEF7B4F8002002BD38B5044646 -:104610004D4D95F8BC0010F0030F0CD02A4605F163 -:10462000100105F17000FFF7EAFAD5F8BC0020F0A0 -:104630000300C5F8BC00102229462046DEF798F892 -:10464000002032BD38B50C461546FFF7DFFFFBF7FB -:1046500089FBC5E90001FBF76EFB002803D0FBF7DF -:104660007BFE206031BDFBF76EFB002803D0FBF71B -:1046700070FE206031BDFBF76DFB002803D0FBF717 -:1046800075FE206031BD0020206031BD2E49C1F88B -:10469000C0000020704780B507224FF448712C48B5 -:1046A000FBF749FD002002BD10B5274CD0220021A8 -:1046B0002046DFF78FFA4FF080406066A066E06624 -:1046C00020672061206020622063C4F880002148B8 -:1046D000C4F8C400002010BD80B5FFF7E5FF002836 -:1046E00004D11D48BDE8024000F0B2B802BD164931 -:1046F000C1F8940070471449C1F8B000704710B574 -:1047000084B0040018D000221146FBF7EFFD00A88A -:10471000FFF74DFF20680099A0EBA130206000A8B2 -:1047200061684268A1EBA2316160A1688068A1EB79 -:10473000A030A060002000E0162004B010BD0248A8 -:1047400090ED310A7047000038A3002048A30020F4 -:104750008D460208DB0F49409746020810B584B029 -:10476000040016D000A8FFF7CAFF002811D10020CE -:104770000BE000A951F8201000EE101ABAEEC80A9A -:1047800004EB800181ED000A401C0328F1DB0020CE -:1047900000E0162004B010BD10B51E4C4FF4CC72D2 -:1047A00000212046DFF716FA0C20606010BD70B4BF -:1047B000002500E06D1C174C2668B54209DA05EBB0 -:1047C000450604EB8604D4F8B040A342F2D116208B -:1047D0001EE0142E01DB16201AE00C2505FB064610 -:1047E000C6F8B030236805FB0343C3F8A82023684C -:1047F00004EB83039860206804EB800081656068A7 -:1048000002F10C01081860602068401C2060002044 -:1048100070BC7047E89A0020002A05D1074A136847 -:1048200023EA0101084310607047044A1168002818 -:1048300001D00020106008467047000050BE0020E4 -:1048400080B5542200211348DFF7C4F9002002BDCF -:1048500010490A68142A01DB1620704701EB820216 -:1048600050600868401C08600020704738B500247C -:10487000254609E000EB850040688047002802D00B -:10488000002C00D104466D1C024801688D42F1DB0A -:10489000204632BD70B60020F446490006D200F032 -:1048A00011F809420DD5C8174108604700F00AF811 -:1048B00007D04942404271F1000102D400205FF06C -:1048C000004160474A0DA2F580621E3A0ADC52425E -:1048D000202A18DA890241F0004141EA50500021B3 -:1048E000D0407047D2F1200210D4890241F000413B -:1048F00041EA5051C002D04061FA02F35840D14021 -:1049000080EA01007047002000217047D0170100A5 -:1049100070470000D2B2203A22BF41FA02F0C91714 -:1049200070472032D141D04048409140D14048406A -:104930009140114170470000B5EEC00AF1EE10FA47 -:1049400002D4B1EEC00A70476FF0004C00EE10CAFE -:10495000F9F70ABB002940F10B80F4464942404276 -:1049600071F1000100F00AF850F0004060470000CB -:1049700050EA010200F00E80094200BF0BD1B0FAEC -:1049800080F18840C1F19D01C905020672F1004223 -:1049900041EB10207047B1FA81F241409040C2F1E2 -:1049A000200261FA02F181EA000018BF40F0010024 -:1049B00002F19D01E8E70000C0F3C7517F392CD414 -:1049C00020290DDAC1F11F0C41004FEAC11141F05D -:1049D000004121FA0CF0894128BF4042C943704789 -:1049E000D1F13F0C1CD441004FEAC11141F000410C -:1049F00061FA0CF021FA0CF180EA0100094244BF8F -:104A00004FF00041002004D34942404271F10001BF -:104A1000704701D5401E491E704700200021704795 -:104A200009424FF0004158BFC943002070470000C1 -:104A300080B500F00DF8B5EE400AF1EE10FA02D0A4 -:104A40000548406C02BD012002BD0348C06C7047A0 -:104A5000014890ED160A704710B5002010B5FFF719 -:104A6000E7FF0446FFF7F1FF204310BD012000F0EF -:104A7000DFBD002000F0DCBD10B5044600F08EFE66 -:104A8000204610BD2DE9F8432DED048B06468946DE -:104A9000B0EE408A10EE900AE2F734FD41EC190BBB -:104AA00018EE100AE2F72EFD41EC180B53EC182B10 -:104AB000D6E93001E2F74EFD04460D4653EC192BC2 -:104AC000D9E93001E2F746FD22462B46EBF7FEFD21 -:104AD000C6E93001002734E051EC180B06EBC702A1 -:104AE00053681268E2F736FD04460D4651EC190B87 -:104AF00009EBC70253681268E2F72CFD22462B46E9 -:104B0000EBF7E4FD06EBC702C2E9000106EBC708BC -:104B100051EC180BD8E92423E2F71CFD04460D469E -:104B200053EC192B09EBC700D0F89410D0F8900083 -:104B3000E2F710FD22462B46EBF7C8FDC8E9240139 -:104B40007F1C062FC8DB002718E006EBC70851ECD6 -:104B5000180BD8E91223E2F7FDFC04460D4653EC8E -:104B6000192B09EBC700C16C806CE2F7F3FC2246FD -:104B70002B46EBF7ABFDC8E912017F1C092FE4DBE4 -:104B8000002718E006EBC70851EC180BD8E90C23F6 -:104B9000E2F7E0FC04460D4653EC192B09EBC70085 -:104BA000416B006BE2F7D6FC22462B46EBF78EFDFD -:104BB000C8E90C017F1C032FE4DBBDEC048BBDE8CE -:104BC000F18338B52DED108B82B005460C46206878 -:104BD000E7F730FB41EC180B6068E7F72BFB41EC83 -:104BE000190BA068E7F726FB41EC1A0BD5E9302337 -:104BF0000020DFF8B019EBF769FDC5E93001D5E910 -:104C00000C2351EC180BEBF761FDC5E90C01D5E95C -:104C10000E2351EC190BEBF759FDC5E90E01D5E94F -:104C2000102351EC1A0BEBF751FDC5E9100153ECC1 -:104C3000182B51EC180BE2F78DFC41EC1B0B53ECDD -:104C40001B2BD5E90001EBF741FDC5E9000153EC51 -:104C5000182B51EC190BE2F77DFC41EC1F0B53ECC8 -:104C60001F2BD5E90201EBF731FDC5E9020153EC39 -:104C7000182B51EC1A0BE2F76DFC41EC1C0B53ECBA -:104C80001C2BD5E90401EBF721FDC5E9040153EC28 -:104C9000192B51EC190BE2F75DFC41EC1D0B53ECA9 -:104CA0001D2BD5E90601EBF711FDC5E9060153EC13 -:104CB000192B51EC1A0BE2F74DFC41EC1E0B53EC97 -:104CC0001E2BD5E90801EBF701FDC5E9080153ECFE -:104CD0001A2B51EC1A0BE2F73DFCD5E90A23EBF74E -:104CE000F5FCC5E90A0153EC1B2B51EC180BE2F75C -:104CF00031FCCDE90001DDE90023D5E91201EBF734 -:104D0000E5FCC5E9120153EC1F2B51EC190BE2F73E -:104D100021FCD5E91423EBF7D9FCC5E9140153ECC8 -:104D20001C2B51EC1A0BE2F715FCD5E91623EBF717 -:104D3000CDFCC5E9160153EC1F2B51EC180BE2F723 -:104D400009FCD5E91823EBF7C1FCC5E9180153ECC0 -:104D50001D2B51EC190BE2F7FDFB41EC1F0B53EC43 -:104D60001F2BD5E91A01EBF7B1FCC5E91A0153EC89 -:104D70001E2B51EC1A0BE2F7EDFBD5E91C23EBF7E8 -:104D8000A5FCC5E91C0153EC1C2B51EC180BE2F7F8 -:104D9000E1FBD5E91E23EBF799FCC5E91E0153ECB5 -:104DA0001E2B51EC190BE2F7D5FBD5E92023EBF7CD -:104DB0008DFCC5E9200153EC1A2B51EC1A0BE2F7DC -:104DC000C9FB53EC1A2BE2F7C5FB41EC1C0B53EC6F -:104DD0001C2BD5E92201EBF779FCC5E92201DDE9BD -:104DE000002351EC180BE2F7B5FBD5E92423EBF7D0 -:104DF0006DFCC5E9240153EC1F2B51EC190BE2F7B4 -:104E0000A9FBD5E92623EBF761FCC5E9260153ECA4 -:104E10001C2B51EC1A0BE2F79DFBD5E92823EBF78D -:104E200055FCC5E9280153EC1B2B51EC190BE2F79B -:104E300091FB53EC192BE2F78DFBD5E92A23EBF715 -:104E400045FCC5E92A0153EC1B2B51EC1A0BE2F788 -:104E500081FB53EC1A2BE2F77DFBD5E92C23EBF712 -:104E600035FCC5E92C0153EC1D2B51EC1A0BE2F774 -:104E700071FB53EC1A2BE2F76DFBD5E92E23EBF710 -:104E800025FCC5E92E0102B0BDEC108B31BD000040 -:104E90002DE9F84F2DED108B8CB080460C469146D5 -:104EA00098ED0CEB98ED308B98ED000B8DED000B31 -:104EB00053EC182BDDE90001E2F74CFB06460F46E8 -:104EC00053EC1E2B51EC1E0BE2F744FB02460B4643 -:104ED00030463946ECF7E8FBCDE9040198ED0EFBCE -:104EE00098ED060B8DED020B53EC182BDDE902015A -:104EF000E2F730FB06460F4653EC1F2B51EC1F0B1D -:104F0000E2F728FB02460B4630463946ECF7CCFB6D -:104F1000CDE9080198ED109B98ED0AAB53EC182BE6 -:104F200051EC1A0BE2F716FB06460F4653EC192B11 -:104F300051EC190BE2F70EFB02460B4630463946A0 -:104F4000ECF7B2FBCDE9060153EC182BD8E90201CE -:104F5000E2F700FB06460F4653EC1E2B51EC1F0BED -:104F6000E2F7F8FA02460B4630463946ECF79CFB6E -:104F700041EC1B0B53EC182BD8E90401E2F7EAFAD9 -:104F800006460F4653EC1E2B51EC190BE2F7E2FAE2 -:104F900002460B4630463946ECF786FB41EC1C0BCB -:104FA00053EC182BD8E90801E2F7D4FA06460F466D -:104FB00053EC1F2B51EC190BE2F7CCFA02460B46CF -:104FC00030463946ECF770FB41EC1D0B53EC182BC7 -:104FD000D8E91201E2F7BEFA06460F4653EC1E2B43 -:104FE000DDE90001E2F7B6FA02460B4630463946E3 -:104FF000ECF75AFB06460F4653EC182BD8E9140180 -:10500000E2F7A8FA32463B46EBF760FB06460F464E -:1050100053EC1E2BDDE90201E2F79CFA02460B4637 -:1050200030463946ECF740FB06460F4653EC182B4A -:10503000D8E91601E2F78EFA32463B46EBF746FB1B -:1050400006460F4653EC1E2B51EC1A0BE2F782FA80 -:1050500002460B4630463946ECF726FB0022DFF8C5 -:105060004835E2F777FA41EC1E0B53EC182BD8E9E0 -:105070001801E2F76FFA06460F4653EC1F2BDDE9E5 -:105080000001E2F767FA02460B4630463946ECF774 -:105090000BFB06460F4653EC182BD8E91A01E2F732 -:1050A00059FA32463B46EBF711FB06460F4653ECE6 -:1050B0001F2BDDE90201E2F74DFA02460B463046AE -:1050C0003946ECF7F1FA06460F4653EC182BD8E9AF -:1050D0001C01E2F73FFA32463B46EBF7F7FA064689 -:1050E0000F4653EC1F2B51EC1A0BE2F733FA024632 -:1050F0000B4630463946ECF7D7FA0022DFF8A834E1 -:10510000E2F728FA41EC1F0B53EC182BD8E91E01EB -:10511000E2F720FA06460F4653EC192BDDE90001B1 -:10512000E2F718FA02460B4630463946ECF7BCFA6D -:1051300006460F4653EC182BD8E92001E2F70AFA8D -:1051400032463B46EBF7C2FA06460F4653EC192BA4 -:10515000DDE90201E2F7FEF902460B463046394628 -:10516000ECF7A2FA06460F4653EC182BD8E92201B9 -:10517000E2F7F0F932463B46EBF7A8FA06460F464F -:1051800053EC192B51EC1A0BE2F7E4F902460B46EB -:1051900030463946ECF788FA0022DFF80C34E2F7A3 -:1051A000D9F941EC190BDDE90423DDE90801E2F747 -:1051B000D1F9CDE90201DDE9082351EC1C0BE2F73E -:1051C000C9F9CDE90001DDE9062351EC1B0BE2F73B -:1051D000C1F9CDE90A019FEDF18BDDE90A2351EC1C -:1051E0001B0BE2F7B7F906460F4653EC1B2B51ECAD -:1051F000180BE2F7AFF953EC1C2BE2F7ABF953ECC9 -:105200001D2BE2F7A7F902460B4630463946ECF76C -:105210004BFA06460F46DDE9002351EC1C0BE2F782 -:1052200099F932463B46EBF751FA06460F46DDE95F -:10523000042351EC1D0BE2F78DF953EC1D2BE2F723 -:1052400089F932463B46EBF741FA06460F46DDE95F -:105250000223DDE90601E2F77DF902460B463046FE -:105260003946ECF721FA41EC1A0B53EC1A2B0020CB -:105270000146F6F77FFC00F08B81DDE9082351EC55 -:10528000190BE2F767F906460F4653EC1D2B51EC5C -:105290001F0BE2F75FF902460B4630463946ECF742 -:1052A00003FA53EC1C2BE2F755F906460F4653EC74 -:1052B0001D2B51EC1D0BE2F74DF953EC1E2BE2F7C1 -:1052C00049F932463B46EBF701FA06460F46DDE95F -:1052D0000823DDE90601E2F73DF953EC1E2BE2F766 -:1052E00039F902460B4630463946ECF7DDF90646F9 -:1052F0000F46DDE90A2351EC1F0BE2F72BF932468A -:105300003B46EBF7E3F906460F4653EC1B2B51ECFB -:105310001D0BE2F71FF953EC192BE2F71BF90246BC -:105320000B4630463946ECF7BFF9C4E90001DDE928 -:10533000042351EC190BE2F70DF906460F4653EC26 -:105340001C2B51EC1E0BE2F705F902460B463046CA -:105350003946ECF7A9F953EC1D2BE2F7FBF80646AA -:105360000F4653EC1C2B51EC1C0BE2F7F3F853ECFB -:105370001F2BE2F7EFF832463B46EBF7A7F906465C -:105380000F46DDE90423DDE90601E2F7E3F853EC1B -:105390001F2BE2F7DFF802460B4630463946ECF7A2 -:1053A00083F906460F46DDE90A2351EC1E0BE2F7AE -:1053B000D1F832463B46EBF789F906460F4653ECE7 -:1053C0001B2B51EC1C0BE2F7C5F853EC192BE2F741 -:1053D000C1F802460B4630463946ECF765F9C4E998 -:1053E0000201DDE9042351EC1F0BE2F7B3F8064696 -:1053F0000F4653EC1B2B51EC1E0BE2F7ABF80246A9 -:105400000B4630463946ECF74FF953EC1D2BE2F7CB -:10541000A1F806460F4653EC1B2B51EC1B0BE2F791 -:1054200099F853EC192BE2F795F832463B46EBF727 -:105430004DF906460F46DDE9022351EC190BE2F760 -:1054400089F802460B4630463946ECF72DF90646F8 -:105450000F46DDE9002351EC1E0BE2F77BF83246E4 -:105460003B46EBF733F906460F4653EC1B2B51EC4A -:105470001C0BE2F76FF853EC1F2BE2F76BF80246B8 -:105480000B4630463946ECF70FF9C4E90401D4E97C -:10549000000153EC1A2BE6F7E5FEC4E90001D4E95C -:1054A000020153EC1A2BE6F7DDFEC4E90201D4E950 -:1054B000040153EC1A2BE6F7D5FE41EC190B84EDF1 -:1054C000049B94ED02AB94ED00BB53EC1B2B51EC11 -:1054D0001B0BE2F73FF804460D4653EC1A2B51EC38 -:1054E0001A0BE2F737F822462B46EBF7EFF80446A3 -:1054F0000D4653EC192B51EC190BE2F72BF8224611 -:105500002B46EBF7E3F804460D46D8E90023D8E92B -:105510000601EBF7DBF8D8E90A23EBF7D7F8824668 -:105520008B4653EC1B2BD8E90C01E2F713F8064627 -:105530000F4653EC1A2BD8E90E01E2F70BF832466E -:105540003B46EBF7C3F806460F4653EC192BD8E958 -:105550001001E1F7FFFF32463B46EBF7B7F853EC9B -:10556000182BE1F7F7FF02460B4650465946ECF779 -:105570009BF8D8E93023E6F775FE22462B46EBF779 -:10558000A5F841EC100BF6F775FA89ED000B012038 -:105590000CB0BDEC108BBDE8F28F00BF0000000026 -:1055A000000000400000F03F0000E03F80B5012215 -:1055B00051EC100B00F02EF941EC100B01BD000076 -:1055C00010EE101A10EE902AB0EEC00AC80F490073 -:1055D0005200F0EEE00A28BF0C3011F1807F38BF96 -:1055E00012F1807F0CD28A4238BF80F00400124250 -:1055F00014D034BF80EE800A80EE200A00F036BB63 -:1056000011F1807F08BF80F0040098BF12F1807F05 -:1056100008D88A4214BF00224FF07E5200EE102AB2 -:1056200000F024BB6FF0004100EE101A704700003C -:10563000DFED4A0A10B560EE200AB0EEE01ADFEDA9 -:10564000481AB4EE611A82B00446F1EE10FA29D578 -:10565000F5EE400AF1EE10FAACBFB6EE001ABEEE5F -:10566000001A70EE810AFDEEE00A10EE900AA8B171 -:10567000FAEEC90A9FED3B1A00EEC10A9FED3A1AF5 -:1056800000EEC10A9FED391A00EEC10A9FED381AEB -:1056900000EEC10A9FED371A00EEC10A00F00300C8 -:1056A000041921E08DED000A0098C0F3C750FF28CF -:1056B00008D088B9009840020ED1E00748D5B7EE6F -:1056C000000A45E00098400246D1FAF773FA21211A -:1056D00001609FED290A13BD8DED000A00A800F0BE -:1056E00017FB04199DED000ADFED240AB4EE600AF1 -:1056F000F1EE10FA0BDBDFED220AB4EE600AF1EEF8 -:1057000010FA04D5E00723D5B7EE000A20E060EEDA -:10571000000AE0070ED59FED1B0A9FED1B1A00EE55 -:10572000801ADFED1A1A41EE201AB7EE000A01EED8 -:10573000A00A0DE0DFED161A9FED162A00EEA12A51 -:10574000DFED151A20EE201A42EE201A01EE210A92 -:10575000A00748BFB1EE400A13BD000083F9223F05 -:105760000000004F0000C94600A0FD400020A23A02 -:10577000000034330030C22EFFFFFF7FFEFF7FB9F1 -:10578000000080399349B2BA36A02A3DDFFFFFBE40 -:105790006E8C4CB94283083CA1AA2ABE81423ABF12 -:1057A00053189842E1F75EBB8018990707D0521E44 -:1057B00024BF13F8011D00F8011DF6D870478107BA -:1057C0001CD1103A07D330B433E93210103A20E933 -:1057D0003210F9D230BC1032121F24BF53F8041D0E -:1057E00040F8041DF8D838BF121D521E24BF13F80C -:1057F000011D00F8011DF8D8704700BF083A07D313 -:1058000033E90210083A40F804CD40F8041DF7D2FD -:105810000832EAE7F8B52DED048B154641EC180B7C -:1058200082B053EC182BC448C449E1F793FEC44A34 -:10583000C44B41EC190B21F00041EAF7CFFD80F099 -:10584000F38051EC190B00220023EAF7B3FF53EC6D -:10585000192B99BF0020BC490020BC49EAF736FF4C -:10586000EAF790FD040051D0E6F7E4FC0022B84BC3 -:10587000E1F770FE41EC190B53EC192B4FF0A040EF -:10588000B449E1F767FE02460B4651EC180BEBF703 -:105890000BFF06460F4653EC192B4FF0C040AE49A4 -:1058A000E1F758FE02460B4630463946EBF7FCFE60 -:1058B00006460F4653EC192B4FF00050A749E1F76D -:1058C00049FE02460B4630463946EBF7EDFE0646EA -:1058D0000F4653EC192B0020A149E1F73BFE02468D -:1058E0000B4630463946EBF7DFFE06460F4653ECD3 -:1058F000192B4FF000509B49E1F72CFE02460B4656 -:1059000030463946EBF7D0FE41EC180B04F00300AB -:10591000451951EC180B6FF00102944BEAF74AFF5E -:105920000BD800224FF07953EAF758FD05D2E8076B -:1059300040F18E819FED8E8B8AE153EC182BE1F7BD -:1059400009FE41EC190BE80731D553EC192B8A48B5 -:105950008A49E1F7FFFD8A4A8A4BEAF7B7FE53EC22 -:10596000192BE1F7F7FD884A884BEAF7AFFE53ECB5 -:10597000192BE1F7EFFD864A864BEAF7A7FE53ECB9 -:10598000192BE1F7E7FD844A844BEAF79FFE53ECBD -:10599000192BE1F7DFFD824B6FF05102EAF796FE1B -:1059A00053EC192BE1F7D6FD0022624B37E053ECA4 -:1059B000182B51EC190BE1F7CDFD06460F4653ECC1 -:1059C000192B91489149E1F7C5FD914A914BEAF7AE -:1059D0007DFE53EC192BE1F7BDFD8F4A8F4BEAF7A3 -:1059E00075FE53EC192BE1F7B5FD8D4A8D4BEAF7A7 -:1059F0006DFE53EC192BE1F7ADFD8B4A8B4BEAF7AB -:105A000065FE53EC192BE1F7A5FD894A564BEAF7E1 -:105A10005DFE32463B46E1F79DFD53EC182BEAF75D -:105A200055FE41EC180B13E18DED008BDDE9000113 -:105A3000DDE90023C3F30A5140F2FF72914213D013 -:105A4000002904BF190350EA11301CD1E80748BFF0 -:105A50009FED478BA80740F1038151EC180B81F0B3 -:105A6000004141EC180BFBE0190350EA113040F003 -:105A7000F780FAF79FF82121016002B04FF0FF3064 -:105A80006FF00041EFE08DED008B00A800F0B6F95B -:105A900045199DED008B354B51EC180B6FF0010251 -:105AA000EAF788FE0BD800224FF07953EAF796FC0C -:105AB00005D2E80740F1CC809FED2D8BC8E053EC78 -:105AC000182BE1F747FD41EC190BE8076AD553ECB9 -:105AD000192B29482949E1F73DFD294A294BEAF7C5 -:105AE000F5FD53EC192BE1F735FD274A274BEAF773 -:105AF000EDFD53EC192BE1F72DFD254A254BEAF777 -:105B0000E5FD53EC192BE1F725FD234A234BEAF77A -:105B1000DDFD53EC192BE1F71DFD214B6FF0510218 -:105B2000EAF7D4FD53EC192BE1F714FD0022014BE9 -:105B30008AE000BF0000F03F83C8C96D305FE43FDA -:105B40000000A0FFFFFFDF410000E03F0000E0BFDA -:105B50000000303EFB21B941B410114026A6513E51 -:105B60005C14D33C9A833B3B5555C5BFFFFF3FBEFA -:105B7000000000000000F03F09260A1039BA213E5B -:105B80003BA861C6F97D92BE63AC30909F01FA3E9E -:105B9000F6FB51166CC156BFB10255555555A53F80 -:105BA000FFFFDFBF53EC182B51EC190BE1F7D2FCD0 -:105BB00006460F4653EC192B13481449E1F7CAFC6B -:105BC000134A144BEAF782FD53EC192BE1F7C2FCA0 -:105BD000114A124BEAF77AFD53EC192BE1F7BAFCA4 -:105BE0000F4A104BEAF772FD53EC192BE1F7B2FCA8 -:105BF0000D4A0E4BEAF76AFD53EC192BE1F7AAFCAC -:105C00000B4A0C4B18E000BFB08F2FC310D8E53DF6 -:105C10008F0C73A1E1E55ABE4DADE44FE31DC73EC5 -:105C20003EE3B519A0012ABFFAF010111111813F0E -:105C3000425555555555C5BFEAF748FD32463B46D6 -:105C4000E1F788FC53EC182BEAF740FD41EC180B08 -:105C5000A80705D551EC180B81F0004141EC180B59 -:105C600002B051EC180BBDEC048BF4BD1AA210EE7F -:105C7000101ADFF860C0F2EC060A614509DB00EE9D -:105C8000803A70EE800A83EE200A40F0020010EEA7 -:105C9000101A21F0004CDCF1665C0BD860EE000AB3 -:105CA00020EE203A03EE010A01EEA02A42EE202A5D -:105CB00080EE220A400810F0020F18BFB1EE400A31 -:105CC00002EB8002D2ED000A30EE200A28BFB1EECE -:105CD000400A7047A430893ED7B3DD3F6AD5033F01 -:105CE0002B94A93DB82A593F0000803F000080BF97 -:105CF00000000000920A063FDB0FC93F920A863F70 -:105D0000DB0FC93F920A0640DB0F4940368D274022 -:105D100010B52DED028B044682B094ED008A9FED04 -:105D20002D0A28EE000AB5EE400A8DED000AF1EECC -:105D300010FAACBFF6EE000AFEEE000A30EE200AC2 -:105D40008DED000A002100A800F00CF99DED000A7D -:105D5000B5EE400AF1EE10FA17D0DFED1F0A20EE83 -:105D6000200ADFED1E0A00EE608ADFED1D0A00EE5C -:105D7000608ADFED1C0A00EE608ADFED1B0A00EE90 -:105D8000608ADFED1A0A00EE608A84ED008ADFED9A -:105D9000180A9DED000AB4EE600AF1EE10FA06D47E -:105DA000DFED140AB4EE600AF1EE10FA05DBDFED68 -:105DB000120A00F0FFF88DED000A9DED000ABDEE1D -:105DC000C00A02B010EE100A00F00300BDEC028B16 -:105DD00010BD000083F9223F000080380000C94652 -:105DE00000A0FD400020A23A000034330030C22E53 -:105DF000000000CF0100004F0000004FD0B52DED96 -:105E0000048B044682B094ED008B4748474953EC1D -:105E1000182BE1F79FFBCDE9000100220023EAF7F0 -:105E2000C9FCDDE9002399BF002041490020414918 -:105E3000EAF74CFCCDE90001002100A800F058F978 -:105E4000DDE9002300200021F5F794FE4ED03A4909 -:105E5000E1F780FB41EC190B53EC192B4FF0A040FC -:105E60003649E1F777FB02460B4651EC180BEBF78E -:105E70001BFC06460F4653EC192B4FF0C04030492F -:105E8000E1F768FB02460B4630463946EBF70CFC5F -:105E900006460F4653EC192B4FF000502949E1F705 -:105EA00059FB02460B4630463946EBF7FDFB0646EA -:105EB0000F4653EC192B00202349E1F74BFB024618 -:105EC0000B4630463946EBF7EFFB06460F4653ECE0 -:105ED000192B4FF000501D49E1F73CFB02460B46E1 -:105EE00030463946EBF7E0FB41EC180B84ED008BB4 -:105EF000DDE90001164A174BEAF770FA04D3164A97 -:105F0000164BEAF757FC05D80022154B00F030F984 -:105F1000CDE90001DDE90001EAF734FA02B000F052 -:105F20000300BDEC048BD0BD83C8C96D305FE43F76 -:105F30000000E03F0000E0BF0000303EFB21B9411F -:105F4000B410114026A6513E5C14D33C9A833B3BCF -:105F50000000C0FFFFFFDFC10100C0FFFFFFDF4106 -:105F60000000E0410268C2F3C752FF2A06D1006870 -:105F7000400201D1012070470220704703685B0096 -:105F800016D0C2F19602521A012A11DB182A04DB3C -:105F9000016801F00041016007E0012191400268C1 -:105FA000491E11404A40026011B14FF0FF30704766 -:105FB0000020704710EE100A10EE901AA4464FF021 -:105FC000FF034FEA410103EAD0540A0E1CBF94EAD2 -:105FD000030F92EA030F55D0B1EB400F2ED24FEAD8 -:105FE000C11141F0004100F000434FEA002040F0B1 -:105FF00000404FEA9000890864EB0204401A38BF61 -:1060000001EB400018BF54F1000407D0D1EB400071 -:1060100038BF081818BFB4F10104F7D140002CD0E4 -:10602000B0FA80F100FA01F0521A0EDB43EA1020B8 -:1060300000EBC25000EE100A6446704708BF00F043 -:10604000004000EE100A6446704743EA102000EE5C -:10605000100A02F17F024FEAC25100EE901AF1EEEF -:10606000100A20F4F851E1EE101A20EE200AE1EEB9 -:10607000100A10EE100A64467047184600EE100A27 -:106080006446704709421CBF94EA030F92EA030F6B -:106090001CD04FF0984201EE102A60EE810AB1EB5D -:1060A000400FCBD2244208BF20EE010A10EE901A16 -:1060B00003EAD152A2F119024FEA012191D110EE67 -:1060C000100A03EAD054A4F119048CE74FF080724F -:1060D00012EB400F2CBF6FF0004011F1807F64463F -:1060E00018BF6FF0004000EE100AF7F43DAF7047A4 -:1060F0004268C2F30A5240F2FF739A4209D14168E2 -:10610000090304BF0068002801D101207047022064 -:10611000704743685B0004BF0368002B25D040F242 -:1061200033439A1A521A012A1FDB352A06DB4168CB -:1061300001F0004141600021016013E0012102F003 -:106140001F039940491E920607D5426811404A40F4 -:10615000426002681143002202E0026811404A4096 -:10616000026011B14FF0FF3070470020704700000F -:1061700070B540F2FF7601F0004C5B0006EA115466 -:106180005D0D1ABFB442B54278E0B3EB410F08BFD2 -:1061900082424BD2C3F3530343F48013C1F3130180 -:1061A00041F48011641B0B3C13D9C90241EA5051E0 -:1061B000B1FBF3FE03FB1E11A2FB0EE6DEEBC020DB -:1061C000B14101D28018594150EA010653D00B3C2D -:1061D000EBD80B34C4F12006A14020FA06F6A0400B -:1061E0003143B1FBF3FE03FB1E11A2FB0EE6B0EB45 -:1061F0000E00B14101D28018594102BF0146203D35 -:106200000020C1B3B1FA81F39940C3F1200220FA12 -:1062100002F211439840ED1A0A3509DBC00A40EA40 -:1062200041504CEAD12101EB055170BD23D070BD26 -:10623000D5F10B05B5F120020DDAC5F120020300FE -:10624000E84001FA02F6E940934073F100437041DF -:1062500051EB0C0170BD402D0DDC430821FA02F01A -:10626000C2F1200511FA05F6334373F10043704182 -:106270005CF1000170BD6146002070BD53EA020E62 -:106280001ABFB442B54237E0B3EB410F08BF8242B8 -:10629000CCD25B08B3FA83F504BFB2FA82F6AD192B -:1062A0000B3DB5F1200624BF02FA06F305E0AB4032 -:1062B000C5F1200622FA06F63343AA40D5F10105BE -:1062C00024427FF46BAF31F00041B1FA81F404BF96 -:1062D000B0FA80F6A4190B3CB4F1200624BF00FAF2 -:1062E00006F105E0A140C4F1200620FA06F631438C -:1062F000A040D4F1010455E74FF4001515EB410F10 -:106300002CBF6FF00041EB4218BF6FF00041BDE8B9 -:106310007040F7F429AE704710B5DFF8CC45206225 -:106320000C220021201DDDF755FC04F12400206122 -:1063300004F13C00606104F15400A06104F16C00C0 -:10634000E06110BD2DE9F0472DED068B86B00C46BF -:106350004FF0000ADFF89055016869604168A96054 -:106360008068E860D0464046019004900390029017 -:10637000052205F10C01286900F047FA052205F114 -:106380000801686900F041FA0522291DA86900F09A -:106390003CFA052301AA0321286900F04BFAB0EE6C -:1063A000408A052304AA0321686900F043FAF0EE4D -:1063B000408A052303AA0321A86900F03BFAB0EE46 -:1063C000409A05220321286900F070FAF0EE080ACD -:1063D000C0EE209A95ED02AAD5ED01AAF5EE40AAED -:1063E000F1EE10FA0FD1B5EE40AAF1EE10FA0AD193 -:1063F00095ED030AB5EE400AF1EE10FA03D100F074 -:1064000000FA4FF00108564695F8019095ED030A01 -:106410006AEEAA0A4AEE0A0A40EE000A10EE900A54 -:10642000E1F770F841EC100BF5F724FB51EC100B81 -:10643000E1F762F90090052200A9E86900F0E5F9AA -:106440009DED000ADFEDA30AB4EE600AF1EE10FA4A -:1064500000F18580DFEDA00AB4EE600AF1EE10FADB -:106460007DDA052302AA0321E86900F0E3F9F0EEE2 -:106470000C0AB4EE600AF1EE10FA70D59FED970A9F -:10648000B4EE408AF1EE10FA69D59FED950AF4EE6C -:10649000409AF1EE10FA10D59FED920AF4EE409A70 -:1064A000F1EE10FA09DB6878FF2858D0FF206870F9 -:1064B0004FF0FF3020700120C3E019EE900AE1F7A1 -:1064C00021F821F000413246DFF82034E9F786FF59 -:1064D00011D2B0EE000AF4EE408AF1EE10FA17D4B1 -:1064E000F4EE408AF1EE10FA39DAB4EE409AF1EEA9 -:1064F00010FA0EDB33E0052301AA1946286900F0E3 -:1065000099F9F7EE000AB4EE600AF1EE10FA26D51A -:10651000B04695ED030ADDED000A80EE200A10EE8C -:10652000100AE0F7EFFF41EC100B00F0B5FA53EC66 -:10653000102B4FF00040DFF8B813E1F70BF841ECF7 -:10654000100B00F0B1FA51EC100BE9F71BFF0746F6 -:10655000B8F1000F50D1F6F70CFD3D2803DB00F039 -:1065600050F930466DE0A868E0F7CCFF41EC110B24 -:10657000B0EE418AF0EE618A95ED010AB1EE400A73 -:1065800010EE100AE0F7BEFF41EC100BB0EE481A17 -:10659000F0EE681A00F01EFB53EC102B4FF0004099 -:1065A000D449E0F7D7FF41EC100B00F07DFA51EC35 -:1065B000100BE9F7E7FE060001D506F5B47606F103 -:1065C0002D005A2190FBF1F8B8F1040F00D1D0460C -:1065D000384600F03BF8002806D03A46314640469F -:1065E00000F039F8002802D100F00BF904E0A87897 -:1065F000404501D085F80280A878484502D1B9F11C -:10660000FF0F1DD195F8201011F0060F01D00126C3 -:1066100004E03A46314600F067F806463846F6F799 -:10662000A8FC3D280CDA002E0AD0A87869788142AF -:1066300006D0687020704FF0010AFF2800D0287043 -:10664000504606B0BDEC068BBDE8F0873C3079289B -:106650008041C00F704718B4A34C237894F82040B1 -:1066600014F0060F01D018BC3EE02FD4984208D099 -:106670005A1C541002EB9474A410A2EB84029042B2 -:106680000ED15A224243283A002807D1B1F59D7F06 -:1066900006DD02F5B472914202DA15E0914213DB95 -:1066A000984208D0DA1C531002EB93739B10A2EBB4 -:1066B000830290420AD15A2242432832002801D153 -:1066C0002E2903DA8A4201DA002000E0012012BC00 -:1066D00070470000DD0CFB40A7493C416766E63F80 -:1066E0003E1B3041D7B409412DE9F04391B0044637 -:1066F0000D4691467C4E96F8008000274846F6F7F6 -:1067000038FC002804D44846F6F733FC1E2822DB68 -:106710004846F6F72EFC1E2806DB4846F6F729FC0D -:10672000282801DA012716E04846F6F722FC282837 -:1067300006DB4846F6F71DFC322801DA02270AE09C -:106740004846F6F716FC32280ADB4846F6F711FCF5 -:106750003D2805DA0327B8F1000F45D4002C01D5F8 -:10676000002042E0444509D008F10100411000EB4F -:1067700091718910A0EB8100844217D100A80FF21B -:1067800078114022E0F77EFB3801002C00A908D1E7 -:1067900041588D420ADA00A940184068A84205DA3B -:1067A0002BE0401850F82400854226DB444509D0F0 -:1067B00008F10300411000EB91718910A0EB8100FA -:1067C000844211D100A80FF270114022E0F75AFB69 -:1067D0003801002C00A90BD14158A94204DA00A9C4 -:1067E0004018C068854208DB012011B0BDE8F08385 -:1067F000401850F82400A842F6DAFF20B0700020BC -:10680000F3E73948FF21817070470388934201D331 -:106810000023038003885B1C03809BB2934201D357 -:1068200000220280028800EB82000968416001209A -:10683000704700002DE9F8432DED028B04460D460C -:1068400016461F469FED278A4FF00008B4F90090C6 -:1068500000EE105AF8EEC08A3A4600F027F880EEB3 -:10686000280A86ED000A05E0A7F101090FFA89F967 -:1068700008F101080FFA88F8A84511DA04EB89003D -:1068800090ED010AD6ED000A30EE600A00EE008AB3 -:10689000B9F1010FE8DBA9F101090FFA89F9E7E77E -:1068A00088EE280ABDEC028BBDE8F18330B49FED81 -:1068B0000D0A0023B0F900400EE024B2250006D4F2 -:1068C00000EB8505D5ED010A30EE200A641E24B2E6 -:1068D000002C00D5541E5B1C1BB28B42EDDB30BC80 -:1068E00070470000000000005834002000001040F5 -:1068F000DCA54C40DCA54CC04A0100003C00000077 -:1069000096000000F00000004F0100004100000070 -:106910009B000000F500000054010000460000004C -:10692000A0000000FA0000005E010000500000001E -:10693000AA000000040100001E0000007800000012 -:10694000D20000002C0100001900000073000000BC -:10695000CD00000027010000140000006E000000C0 -:10696000C8000000220100000A00000064000000CE -:10697000BE00000018010000D0B52DED048B82B0E0 -:1069800041EC180B8DED008BDDE90023C3F30A51B8 -:1069900040F2FF72914213D0002904BF190350EA5C -:1069A000113011D051EC180B00220023E9F716FD2D -:1069B0003DBF81F0004141EC180B0824002407E0A2 -:1069C000190350EA1130EDD002B051EC180B60E021 -:1069D00051EC180B274A284BE9F700FD1CD29FED1C -:1069E000239B51EC190B53EC182BEAF75DFE06467E -:1069F0000F4653EC182B51EC190BE9F767FE3246A2 -:106A00003B46E0F7A7FDF5F73DF841EC100B51ECE4 -:106A1000180B53EC102B1EE00122184BE9F7DEFC9B -:106A20002ED29FED129B51EC190B53EC182BEAF769 -:106A30003BFE06460F4653EC182B51EC190BE9F7B9 -:106A400045FE32463B46E0F785FDF5F71BF884F03E -:106A5000020453EC182BE5F705FC02B02246BDEC0E -:106A6000048BBDE8D04000F0BFB800BF00000000BC -:106A70000000F03FCE3B7F669EA0E63F0000F03F67 -:106A8000F9F798F82121016002B04FF0FF306FF064 -:106A90000041BDEC048BD0BD80B551EC100BFFF76D -:106AA0006BFF41EC100B01BD00B583B001218DEDF2 -:106AB000000B00A8FFF71CFB401E012811D9002184 -:106AC00000A8FFF715FB60B10198DDE9002300285D -:106AD00047BF0020054900200549E9F7F7FDCDE94A -:106AE00000019DED000B03B000BD00000000F0BFF1 -:106AF0000000F03F38B50FB4DDE9020100F06CF999 -:106B00000546DDE9000100F067F9012DB8BF012855 -:106B100030DA0198002807D5DDE9000181F0004155 -:106B2000CDE90001082400E000240398002807D5DF -:106B3000DDE9020181F00041CDE9020184F00604A3 -:106B4000DDE90201DDE90023E9F748FC04D2E5F7BD -:106B500089FB41EC100B29E0002D08D5DDE900018F -:106B6000DDE90223E5F77EFB41EC100B20E09FED11 -:106B7000150B1DE0022808BFDDE9000120D0022D21 -:106B800008BFDDE902011BD085420CBF9FED0F0B52 -:106B90009FED0C0B019900294CBF08240024039998 -:106BA000002948BF84F00604012801D184F00204C2 -:106BB000224605B0BDE8304051EC100B00F014B88F -:106BC00005B030BD00000000000000000000000023 -:106BD0000000F03F80B553EC112B51EC100BFFF788 -:106BE00089FF41EC100B01BDD0B514462DED048B8F -:106BF000534A544BE9F7DEFD41EC180B1DD89FEDCD -:106C0000529B53EC182B51EC190BE0F7A3FC00221C -:106C10004F4BE9F75BFD06460F4653EC182B51EC42 -:106C2000190BE9F753FD02460B4630463946E5F7A6 -:106C300019FB41EC180B44F0010451EC180B002235 -:106C4000444BE9F7CBFB05D301224FF07953E9F729 -:106C5000B1FD51D853EC182BE0F77CFC41EC190B3B -:106C600053EC182BE0F776FC06460F4653EC192B35 -:106C700039483A49E0F76EFC394A3A4BE9F726FDC4 -:106C800053EC192BE0F766FC374A384BE9F71EFD49 -:106C900032463B46E0F75EFC53EC182BE9F716FD55 -:106CA00006460F4653EC192B31483249E0F752FCA7 -:106CB000314A324BE9F70AFD53EC192BE0F74AFC55 -:106CC0002F4A304BE9F702FD53EC192BE0F742FC59 -:106CD0002D4A2E4BE9F7FAFC53EC192BE0F73AFC5E -:106CE0002B4B0022E9F7F2FC02460B4630463946B0 -:106CF000E5F7B8FA41EC180BA00705D551EC180BD5 -:106D000081F0004141EC180B14F007020BD00FF298 -:106D1000880303EBC20251EC180B53681268E9F7C1 -:106D2000D5FC41EC180B200705D551EC180B81F070 -:106D3000004141EC180B51EC180BBDEC048BD0BD9D -:106D400057CD9E5E1426D13FAA4C58E87AB6FB3F39 -:106D50000000F0BF000040BE845D57134B57B03FAA -:106D6000B2934C19ED5EE43FBEDE02B90240F83F3B -:106D7000DE39028FC7C0743F8AAB1283000CC83F54 -:106D800024D7E508B6D8F03F0F34580E5895FD3F8C -:106D90000000F03F000000000000000000000000C4 -:106DA00066732D3852C1E03F182D4454FB21F93F42 -:106DB00066732D3852C1F03F182D4454FB21F93F22 -:106DC00066732D3852C10040182D4454FB210940F0 -:106DD0003FD038C6A6F1044003B4DDE90023C3F375 -:106DE0000A5140F2FF72914206D001B10CE0190342 -:106DF00050EA113006D00BE0190350EA113014BFED -:106E00000220012002B070474FF0FF3002B07047FF -:106E10006FF0010002B070471EF0040F0CBFEFF3DB -:106E20000880EFF3098000F033B870471EF0040FBC -:106E30000CBFEFF30880EFF3098000F029B870472A -:106E40001EF0040F0CBFEFF30880EFF3098000F091 -:106E50001FB870471EF0040F0CBFEFF30880EFF36C -:106E6000098000F015B870471EF0040F0CBFEFF357 -:106E70000880EFF3098000F00BB870471EF0040F94 -:106E80000CBFEFF30880EFF3098000F001B8704702 -:106E9000E0F739B8704770B586B054E0BDF801002E -:106EA000011D89B2DDF8090000F086FADBF7DCFE8F -:106EB000DFF89044DFF89054DFF890142846E6F7A6 -:106EC000E7FB002816D12046441E0028F4D10021FB -:106ED0002846E6F7C8FB0021DFF87404E6F7C3FB99 -:106EE000BDF80330BDF801209DF800100FF290406E -:106EF000DBF7EEFC022E01D1D9F7E6F9DDF8090047 -:106F0000002804D0DBF722FC0020CDF8090049F668 -:106F10004044DFF8405402212846E6F7F1FA002801 -:106F200003D12046441E0028F5D142F2107480217E -:106F30002846E6F7E5FA012803D12046441E00283A -:106F4000F5D1DBF78EFE00A9DFF80C0400F058FA4B -:106F50009DF8030010F00306A0D0022E9ED002D3AD -:106F6000032E5DD0EFE7DFF8EC038089C04604A86C -:106F70000021016002220DF10301DBF7F9FB02227F -:106F80000DF101010DF11200DBF7F2FB042104A861 -:106F900000F012FABDF80100001DDBF7BFFBCDF8D1 -:106FA0000900BDF80100011D89B2DDF8090000F0FB -:106FB00047FADBF759FEDFF88C43DFF89453DFF82C -:106FC0009C132846E6F764FB002816D12046441E91 -:106FD0000028F4D10021DFF87003E6F744FB00211C -:106FE0002846E6F740FBBDF80330BDF801209DF8C8 -:106FF00000100FF29C30DBF76BFCDBF732FE002C4D -:10700000A1D000A9D64800F03FFA002803D00FF223 -:107010009030E0F716F9D3490820DFF725FE92E714 -:10702000CC488089C0460921CF4800F009FADBF737 -:1070300021FECE4C0221CE48E6F7E7F8002882D1A7 -:107040002046441E0028F5D10021BF48E6F70BFB7F -:107050000021BF48E6F707FB0FF24C30DBF738FCA6 -:1070600071E7F8B5C34C2078401C2070DCF79BFD1D -:107070006078401C6070DDF753FD6078401E6070E2 -:10708000C0B2002801D1DCF788FD0120E6F7D8FD69 -:1070900001284ED10120E6F7DFFD00250121B64889 -:1070A000E6F7B3F800283BD0A64EA94F3846E6F7DE -:1070B000EBFA002813D03046461E0028F6D12946A8 -:1070C000A148E6F7D0FA29463846E6F7CCFA0FF29F -:1070D000E020DBF7FDFBBDE8F140DBF7C8BD022196 -:1070E000A348E6F792F800282ED19F49C87810F0FF -:1070F00003000AD0012810D1B1F80100002804D003 -:10710000954800F0C1F9054607E0954800F0BCF944 -:10711000054694490820DFF7A7FDDBF7A8FD04E04A -:1071200096498D4800F0B0F90546002D01D0E0F7F2 -:1071300099F82078012804D16068002801D0DCF794 -:1071400028FD2078401E2070F1BD10B5894C2078B4 -:10715000401C2070DCF727FD6078401C6070DDF774 -:10716000DFFC6078401E6070C0B2002801D1DCF7FF -:1071700014FD0220E6F764FD002802D00220E6F7A5 -:107180006BFD2078012804D16068002801D0DCF76D -:1071900000FD2078401E207010BD10B5754C207881 -:1071A000401C2070DCF7FFFC6078401C6070DDF74D -:1071B000B7FC6078401E6070C0B2002801D1DCF7D7 -:1071C000ECFC0420E6F73CFD00280BD00420E6F799 -:1071D00043FD012200210320DBF74FFD6149102010 -:1071E000DFF742FD2078012804D16068002801D033 -:1071F000DCF7CFFC2078401E207010BD10B55D4C30 -:107200002078401C2070DCF7CEFC6078401C607059 -:10721000DDF786FC6078401E6070C0B2002801D1A6 -:10722000DCF7BBFC4FF40060E6F70AFD002807D04E -:107230004FF40060E6F710FD4A492020DFF714FD07 -:107240002078012804D16068002801D0DCF7A1FC77 -:107250002078401E207010BD38B5464C2078401C68 -:107260002070DCF7A0FC6078401C6070DDF758FCF3 -:107270006078401E6070C0B2002801D1DCF78DFC40 -:107280004FF48040E6F75EFC00281DD0354DE0F756 -:10729000BDFD00280CD00020E0F7C1FDDAF75CFC52 -:1072A000C06EDBF7F1FA29460620DFF7DDFC03E0CC -:1072B00029460220DFF7D8FC4FF48040E6F757FC60 -:1072C0004FF48000E6F7C8FC2078012804D16068FC -:1072D000002801D0DCF75DFC2078401E207031BD15 -:1072E00010B5244C2078401C2070DCF75CFC6078E2 -:1072F000401C6070DDF714FC6078401E6070C0B206 -:10730000002801D1DCF749FC4FF48050E6F71AFC65 -:1073100000280BD013494020DFF7A6FC4FF4805023 -:10732000E6F725FC4FF40030E6F796FC20780128BC -:1073300004D16068002801D0DCF72BFC2078401EC7 -:10734000207010BD80841E00886402400008002068 -:107350001064024000300140D86800202000001076 -:10736000C068002054660020ECB90020404B4C005F -:10737000000402403436002000000240E0360020C5 -:107380005478444D41202564202564202564000064 -:107390005278444D41202564202564202564000056 -:1073A0005075744D61696C005245414459000000AC -:1073B000455854493000000038B50C460E4D296838 -:1073C000C90706D529684908490029602968C907FD -:1073D000FCD4002201462846E6F750F90749284622 -:1073E000E6F769F9214628464160C0460121284652 -:1073F000BDE83440E6F737B9886402400008002051 -:1074000030B504460D480D46017881B0491C017025 -:10741000DCF7C9FBA06840B940212046E4F7D4F965 -:10742000DCF7C1FBA0680028F6D029462046E4F727 -:107430000BFA01B0BDE83040DCF762BC3436002006 -:1074400038B50C460E4D2968C90706D52968490884 -:10745000490029602968C907FCD400220146284652 -:10746000E6F70CF907492846E6F725F921462846AC -:107470004160C04601212846BDE83440E6F7F3B834 -:107480001064024020000010F0B50E4F0546387819 -:1074900081B00E46401C01243870DCF784FBA868DC -:1074A000E968884204D231462846E4F7ABF9002463 -:1074B000787808B9DCF771FBDCF722FC204601B0D4 -:1074C000F0BD00BF34360020F8B52DED048B8CB034 -:1074D00005460E46174600A80FF28C413022DFF712 -:1074E000D1FCDFF83C440A20A0630720E06320645D -:1074F00005206064DFF83404DFF82814CDE90001CA -:1075000000AA4FF03330DFF82014C2E90201DFF89F -:107510001C04DFF81C14C2E904014FF03330DFF81B -:107520001414C2E90601DFF81014C2E90801DFF8FB -:107530000C14CDE90A010A2020662868142190FB6A -:10754000F1F0E0663868022801D1052023E03068B8 -:10755000102818D0B0F5807F06D0B0F5806F08D025 -:10756000B0F5006F0AD012E04FF480706066002022 -:1075700011E04FF48060606602200CE04FF4006080 -:107580006066032007E010206066042003E04FF4EB -:1075900000706066012002EBC000D0E90023E848DB -:1075A000E849DFF7D7FF41EC180B53EC182B00200C -:1075B000E549DFF7CFFF41EC100B84ED140B84EDB0 -:1075C000120B53EC102BE148E149DFF7C3FFC4E98C -:1075D0001601202200212046DCF7FCFA9FEDDF9BFC -:1075E000A06BE4F727FE53EC192BDFF7B3FF53EC46 -:1075F000182BDFF7AFFFC4E90001E06BE4F71AFED8 -:1076000053EC192BDFF7A6FF53EC182BDFF7A2FF83 -:10761000C4E90201206CE4F70DFE53EC192BDFF7EF -:1076200099FF53EC182BDFF795FFC4E90401606C58 -:10763000E4F700FE53EC192BDFF78CFF53EC182B0B -:10764000DFF788FFC4E906010020A066012060671B -:10765000A06704F17C0020670CB0BDEC048BF1BD89 -:10766000AF48012141678167704700002DE9F84369 -:107670002DED048B8AB005469FEDB68B04A818212A -:10768000DBF7C0FB4FF000088DED000AF0EE601A4A -:10769000F1EE611ACDED011AB1EE410A8DED020A4B -:1076A0009F4C1E2200A9206FF4F749FD286802288C -:1076B00002D14FF0020901E04FF00309206F616F22 -:1076C00000290AD0002800F025810088216E884218 -:1076D000C0F22081404660671CE1A16F002939D0CB -:1076E0001E22216E09B2F4F753FD94ED189AF8EEBC -:1076F000C90A80EE200A10EE100ADFF703FFC4E982 -:1077000008011E2219EE101A09B2206FF4F75EFD6F -:1077100094ED189AF8EEC90A80EE200A10EE100ACD -:10772000DFF7F0FEC4E90A011E2219EE101A09B2B1 -:10773000206FF4F769FDD4ED180AF8EEE00A80EE48 -:10774000200A10EE100ADFF7DDFEC4E90C01404606 -:10775000A06745E01E224146F4F70AFD05461E22B9 -:10776000216E09B2206FF4F703FD064694ED180A66 -:10777000B8EEC09A95ED000AD6ED000A30EE600A28 -:1077800080EE090A10EE100ADFF7BCFED4E90823E8 -:10779000E8F79CFFC4E9080195ED010AD6ED010A5E -:1077A00030EE600A80EE090A10EE100ADFF7AAFE3A -:1077B000D4E90A23E8F78AFFC4E90A0195ED020A31 -:1077C000D6ED020A30EE600A80EE090A10EE100AC9 -:1077D000DFF798FED4E90C23E8F778FFC4E90C0141 -:1077E0001822414604A8DCF7F5F9454604AE40E00E -:1077F0001E22294609B2206FF4F7BAFC0746386802 -:10780000DFF780FED4E90823E9F74EFF41EC100BC7 -:1078100053EC102BDFF79EFEDDE90423E8F756FF5B -:10782000CDE904017868DFF76DFED4E90A23E9F7B2 -:107830003BFF41EC100B53EC102BDFF78BFED6E92E -:107840000223E8F743FFC6E90201B868DFF75AFEF2 -:10785000D4E90C23E9F728FF41EC100B53EC102B73 -:10786000DFF778FED6E90423E8F730FFC6E9040124 -:107870006D1C206E8542BBDBE4F7DCFC41EC190B90 -:10788000DDE9040153EC192BE4F7ECFCCDE904012C -:10789000D6E9020153EC192BE4F7E4FCC6E9020136 -:1078A000D6E9040153EC192BE4F7DCFCC6E904012A -:1078B00045460FE006EBC50090ED009B51EC180B20 -:1078C00053EC192BE8F78AFD03D2B0EE498AF0EEAB -:1078D000698A6D1C4D45EDDBA56EE66ED4E912019B -:1078E00053EC182BE8F766FF0AD8AE4201DA4FF0E6 -:1078F00001080020A06694ED140B84ED120B09E042 -:10790000AE4205DA4FF0020894ED160B84ED120B2F -:10791000681CA06640460AB0BDEC048BBDE8F2834B -:10792000B03000209999C93F3333D33F9A99999940 -:107930009999E93F3333F33F333303403333E33F24 -:107940001F85EB51B89E2340000014407B14AE47C6 -:10795000E17A843F00000000000000000000000009 -:107960000000E03F000000009A9999999999C93F59 -:10797000333333333333E33F9A9999999999E93FF4 -:10798000333333333333F33F33333333333303401E -:10799000333333333333E33F70B52DED028B82B095 -:1079A0000C46154608EE103A9C4E0021F1604FF44B -:1079B0007A7148433C2190FBF1F0E4F73BFC41EC49 -:1079C000100BFFF771F851EC100BE8F7DBFC30619E -:1079D0007461B56106F12C00F06106F13C00306283 -:1079E00006F14C007062B8EEC80ADFED8A0A80EE3C -:1079F000200A86ED0A0A10EE100ADFF783FDCDE9B2 -:107A00000001B369726931690FF21820DAF760FF7B -:107A100002B0BDEC028B70BD38B52DED028B84B089 -:107A200000247E4D01682960416869608068A86013 -:107A3000204602900190009003222946E86900F058 -:107A40007DF80322291D286A00F078F8032205F149 -:107A50000801686A00F072F895ED020AD5ED010A96 -:107A600095ED001A21EE011A00EEA01A00EE001AA0 -:107A700011EE100ADFF746FD41EC100BF3F7FAFFA9 -:107A800051EC100BDFF738FE00EE100AD5ED020ABC -:107A900080EE800A10EE100ADFF734FD41EC100B87 -:107AA000FEF7FAFF53EC102B4FF000405C49DFF774 -:107AB00051FD41EC100BFEF7F7FF51EC100BE8F70E -:107AC00061FC696988422DDBA96981422ADB0323B5 -:107AD00000AA1946E86900F045F8B0EE408A032391 -:107AE00001AA1946286A00F03DF8F0EE408A032307 -:107AF00002AA1946686A00F035F8D5ED0A0AB4EE14 -:107B0000608AF1EE10FA0DD5F4EE608AF1EE10FA0B -:107B100008D5B4EE600AF1EE10FA03D5E868401C0F -:107B2000E86001E02046E860E8682969884200DBF7 -:107B30000124204604B0BDEC028B32BD0388934281 -:107B400001D30023038003885B1C03809BB2934214 -:107B500001D300220280028800EB820009684160A4 -:107B6000012070472DE9F8432DED028B04460D46A8 -:107B700016461F469FED288A4FF00008B4F9009082 -:107B800000EE105AF8EEC08A3A4600F027F880EE70 -:107B9000280A86ED000A05E0A7F101090FFA89F924 -:107BA00008F101080FFA88F8A84511DA04EB8900FA -:107BB00090ED010AD6ED000A30EE600A00EE008A70 -:107BC000B9F1010FE8DBA9F101090FFA89F9E7E73B -:107BD00088EE280ABDEC028BBDE8F18330B49FED3E -:107BE0000E0A0023B0F900400EE024B2250006D4AE -:107BF00000EB8505D5ED010A30EE200A641E24B2A3 -:107C0000002C00D5541E5B1C1BB28B42EDDB30BC3C -:107C10007047000000401C4600000000BCAA002085 -:107C2000DCA54C4053504120696E69743A202564AC -:107C30002C2025642C2025642C20256600000000C3 -:107C40000FB480B50FF23420DAF742FE83480021EA -:107C500081700121C1700171002141718171017038 -:107C6000DAF7BBFD0069000601D4012000E0012025 -:107C700002BC5DF814FB80B50FF20820DAF728FE8D -:107C8000DAF7ABFD0069000616D574480021817053 -:107C90000121C17001710021417181714178012977 -:107CA0000AD1002141700E220A210120DAF754FB8B -:107CB000032801D1032002BD012002BD38B5684868 -:107CC0008169497AC069407A4518DAF786FD00690A -:107CD000000631D5614CA078002802D10120A070A7 -:107CE00032BD6078EDB2002D06D0012824D10120EC -:107CF000E070002060701FE0002811D1E0780128BA -:107D000006D10E220A210120DAF726FB0020E070BE -:107D10000E220A210020DAF71FFB0120607032BD1D -:107D200094F90000002802D0022803D004E000F0FB -:107D300005F801E000F034F8012032BD38B5474CB9 -:107D4000E06890F958502079012809D1512D07DABF -:107D500000202071012000F07EF8002000F06EF875 -:107D6000B4F90820954217DBA079401CA07140B2FD -:107D7000022813DB022020700020A07129460FF298 -:107D80000C10DAF7A5FD78202081012000F063F8BF -:107D9000012000F053F801E00020A071012032BD65 -:107DA00038B52E4CE06890F95850502D16DA6079AD -:107DB000401C607140B2022812DB002020700120BC -:107DC00000F049F8002000F039F8002060715022DE -:107DD00029460FF2C400DAF77BFD01E00020607154 -:107DE000012032BD10B50FF2BC00DAF771FD1B4C5B -:107DF000DAF7B0FA2061D9F7AFFEE060002020701A -:107E000020691849C0F8401200F510701649416009 -:107E1000164981600FF20D01C16015490161012011 -:107E200010BD0000014600200C4A126992F8312270 -:107E3000002A02D0002900D109E070470D4901282D -:107E400002D10120087070470020087070470A486E -:107E500090F9000070470849087070478836002084 -:107E600000000020417C0208777C0208BD7C0208EB -:107E70005726000866BE002065BE0020537461725C -:107E80007400000053746F7000000000436C6F7347 -:107E900065202564202564004F70656E20256420D0 -:107EA00025640000496E69740000000010B582B0BE -:107EB00000208DF800008E4C04F1100314220D21D7 -:107EC00004F5067000F016F904F58A7314220D21EA -:107ED00004F50C7000F00EF9DFF796FF002848D08B -:107EE000DAF77BFCA060D9F73BFEDBF715F8A0685A -:107EF0000178002903D0217841F0010121700A2185 -:107F0000DAF7CFFCA068DAF7A6FCA068C1780029F0 -:107F100003D0217841F0020121704179002903D07A -:107F2000217841F0040121708179002903D0217862 -:107F300041F00801217021780F2902D15521817566 -:107F400000E08175002201210846DAF796FEDEF78F -:107F5000BBFD3221A068DAF70EFEA068DAF7D2FD89 -:107F6000DAF77FFEDAF783FED9F7F6FD0021016725 -:107F700016BD002016BD80B5FFF798FF5C4948602C -:107F800001BD80B5072000F0C1F8FBE77FB5DFF742 -:107F9000C3F9002801D0DFF776F9DFF74BF90028A5 -:107FA00001D0DFF765F9DCF719FF002801D0D8F719 -:107FB00029FF3E2000F0B4F80646D8F791F94C4C62 -:107FC00004F51275B0070FD56068006FDAF76AFE26 -:107FD000D8F7DEF804F10C012846D8F7DBFA04F1F3 -:107FE0000C012846D8F73BFBF0060AD50020DAF74B -:107FF00046FE1020DBF706FC04F10C012846D8F7FA -:108000002EFBB0060CD504F10C012846D8F7D2FAA5 -:108010000420DBF7F7FB04F10C012846D8F71FFB1F -:10802000700703D56068C06EDAF73CF904F10C0103 -:108030002846D8F7B1FE30071FD4BAE7BDF80100D3 -:10804000001DDAF76BFBCDF8090002220DF10301E8 -:10805000DAF78EFB02220DF10101DDF80900801C28 -:10806000DAF786FB04F10C02294600A8D8F77EFF58 -:1080700000A904F50C70DAF781FB00A904F506707D -:1080800000F072F8002894D19DF8030010F003006E -:10809000D4D00128F1D104F10C02294600A8D9F767 -:1080A000ABF8BDF801000028E7D0DDF809009DF825 -:1080B0000310490718D50421ADF803100121ADF8CC -:1080C000011002220DF10301DAF752FB02220DF139 -:1080D0000101DDF80900801CDAF74AFB00A904F56C -:1080E0000C70DAF74BFBC8E7DAF730FBC5E70000A6 -:1080F000A866002070B400240025264670C070C019 -:1081000018384360C260017570BC704710B50446F2 -:10811000DAF763FB072C01D1DAF72BFD012010BD44 -:1081200030B5104C0546207881B0401C2070DBF73C -:108130003AFDA0684169294205D185610821017491 -:108140002046DBF71AFDA0680021456941612078CF -:10815000401E2070607808B9DBF71FFD284601B08B -:1081600030BD00BF3436002030B581B004460D4626 -:10817000DBF719FD0A48A16829B9407808B9DBF78F -:108180000CFD012009E00178491C017029462046B8 -:10819000E3F75AFBDBF7B4FD002001B030BD00BFB0 -:1081A00034360020834800210160416081607047BF -:1081B000F8B52DED0C8BB0EE408AF0EE608AB0EE93 -:1081C000419A0027B0EE680A10EE100ADFF79AF91C -:1081D00041EC1A0BB0EE480A10EE100ADFF792F9E4 -:1081E00041EC1C0B734E21F000413A46724BE8F70C -:1081F000F5F818D251EC1A0B21F00041E8F7EEF82F -:1082000011D2B0EE490A10EE100ADFF77BF921F027 -:1082100000413A46684BE8F7E1F804D21046306076 -:108220007060B060C3E09FED65BB9FED66DB3068BA -:10823000DFF768F904460D4653EC1C2B51EC1D0B7F -:10824000DFF788F953EC1B2BDFF784F93A465F4BD5 -:10825000E4F708F822462B46E8F738FADFF74CFA3D -:1082600009EE900AC6ED009A7068DFF74BF90446F4 -:108270000D4653EC1A2B51EC1D0BDFF76BF953EC49 -:108280001B2BDFF767F93A46504BE3F7EBFF22462B -:108290002B46E8F71BFADFF72FFA0AEE100A86EDF5 -:1082A00001AAB068DFF72EF904460D46B0EE490A80 -:1082B00010EE100ADFF726F953EC1D2BDFF74AF911 -:1082C00053EC1B2BDFF746F93A46404BE3F7CAFF66 -:1082D00022462B46E8F7FAF9DFF70EFA09EE100A04 -:1082E00086ED029A19EE900ADFF70CF921F00041B1 -:1082F00041EC1B0B1AEE100ADFF704F941EC180BE6 -:1083000021F0004141EC1C0B19EE100ADFF7FAF8DE -:1083100041EC1A0B53EC1B2B51EC1C0BE8F7D6F974 -:1083200053EC1A2B23F00043E8F7D0F9DFF7E4F918 -:1083300000EE100ADFED260AB4EE600AF1EE10FA44 -:108340002EDB51EC1A0B21F000410122214BE8F702 -:1083500031FA25D8BBEE090AF4EE409AF1EE10FA94 -:108360000BD551EC180B21F0004153EC1A2B23F0E4 -:108370000043E8F733F800D201279FED170AF4EE27 -:10838000409AF1EE10FA0BDB51EC180B21F0004192 -:1083900053EC1A2B23F00043E8F720F800D2022711 -:1083A000002F03D0002030607060B0603846BDEC14 -:1083B0000C8BF2BD5CBD00200000E03F000000001F -:1083C00000004E40E6C1631ADCA54C4000408F40DF -:1083D00001004842000044400100C84110B5744CFF -:1083E000402200212046DBF7F5FB1822002104F192 -:1083F0004000DBF7EFFB1422002104F15800DBF70B -:10840000E9FB0020E0660FF2C410DAF761FA012000 -:1084100010BD000038B5664C84ED000AF0EE601A1D -:10842000C4ED011A84ED021A624DE06E05EB801076 -:1084300021464022DEF726FD1822002104F14000EB -:10844000DBF7C8FB00201AE015EB8012D2ED000A22 -:1084500030EE200A84ED100A15EB801194ED110A1C -:10846000D1ED010A30EE200A84ED110A94ED120AD2 -:10847000D1ED020A30EE200A84ED120A401C94ED80 -:10848000100A6428E0DBDFED490A80EE200A84ED63 -:10849000100AD4ED110A9FED451AC0EE810AC4ED11 -:1084A000110A94ED121ADFED411A81EE211A84EDC2 -:1084B000121A002020E015EB8012D2ED001A71EEA6 -:1084C000C01A01EEA12A84ED132A15EB8011D1ED1B -:1084D000011A71EEE01A94ED142A01EEA12A84ED3E -:1084E000142AD1ED021A71EEC11A94ED152A01EE8B -:1084F000A12A84ED152A401C94ED132A6428DADBA6 -:108500009FED2A0A82EE000A84ED130AD4ED140AC4 -:108510009FED261AC0EE810AC4ED140A94ED151AD7 -:10852000DFED221A81EE211A84ED151AF7EE001AFA -:10853000B4EE610AF1EE10FA2CD5B7EE000AF4EEB3 -:10854000400AF1EE10FA25D5B4EE401AF1EE10FA19 -:1085500020D5206E401C2066C0EB00118800164913 -:1085600088421AD300202066606E411C61660FF2BB -:108570006800DAF7ADF9606E02280ED3A06E00280D -:108580000BD10FF26800DAF7A3F90120A0660020F2 -:10859000606602E0002020666066E06E401CE066D7 -:1085A000652801DB0020E066A06E32BD0000C842F5 -:1085B000E0B1002054370020E193040080B50FF2B1 -:1085C0003C00DAF785F9012002BD000023232320B7 -:1085D000414D5F494E49540023232320414D20251E -:1085E00064202A2031304D696E00000023232320AF -:1085F000414D5F41425F445400000000232323208B -:10860000414D5F46494E000080B50FF28810DAF701 -:108610005FF95B4800214180017001BD0FB480B556 -:10862000BDF80B209DF80A100FF27410DAF750F91C -:108630001E2200210846D9F78FFE022805D10FF22D -:108640008010DAF745F902200EE04D48406890F8B6 -:10865000B014002907D190F8B104002803D1FFF726 -:10866000D3FFFFF7BBFE012002BC5DF814FB80B511 -:108670000FF25C10DAF72CF9FFF7A0FF4048002159 -:108680000170012002BD30B58BB000A8D9F7C3FE40 -:1086900000A890EC030AFFF7BDFE0446012C0ED1A2 -:1086A000374D95F90000002809D1012028700FF2FC -:1086B0002C10DAF70DF96C80012000F02FF8012062 -:1086C0000BB030BD80B50FF22810DAF701F9D9F7F9 -:1086D00041FE2B49486000224A802A49C0F8C01454 -:1086E00000F2C04028494160284981600FF20D0125 -:1086F000C1600FF241010161012002BD20484068C4 -:1087000090F8B014002905D190F8B104002801D1E7 -:10871000002070471E4890F9000070471C490870FF -:10872000704780B51648002141800846FFF7F6FFE4 -:10873000012002BD70B504460D46114E71880FF23E -:10874000BC00DAF7C5F840F20D10297810FB0141A2 -:1087500001220A70297810FB01414A70297810FB28 -:1087600001411E228A70297810FB01407188A0F80F -:1087700003102878401C2870BDE87040D1E7000045 -:10878000B8BD00201D8602086F8602088786020891 -:1087900067BE002023232320434720494E4954002D -:1087A0002323232043472053464420535452203A46 -:1087B0002025642C204455203A2025640000000028 -:1087C0002323234347204641494C20414343000093 -:1087D00023232343472053544F50000023232320B7 -:1087E00043475F41424E4F524D414C20445400009C -:1087F000232323204347204D490000002323232027 -:1088000043472041504D5347203A20256400000043 -:108810000FB400B597B00020019000900D220146E2 -:10882000D9F79AFD022801D102204AE0754A0120B9 -:108830001060BDF8630001909DF86200009001286F -:1088400003D14FF48070009015E0022803D14FF45B -:10885000007000900FE0032803D14FF48060009077 -:1088600009E0042803D14FF40060009003E00528DC -:1088700001D11020009000A901A8FEF725FEB42028 -:108880008DF8360046208DF8370001208DF838002D -:1088900000208DF80800032003900DF111000DA9B0 -:1088A0002122DEF7DFFA0A208DF810000020ADF853 -:1088B000320002A8D9F712FE002801D1022000E000 -:1088C000012017B05DF814FB00B595B0B4208DF809 -:1088D000020046208DF8030001208DF804008DF879 -:1088E000240003200A900DF12D0000A92122DEF7BB -:1088F000B9FA0A208DF82C000020ADF84E0009A826 -:10890000D9F7ECFD002801D1032002E0FEF7A8FE14 -:10891000012015B000BD30B597B000A8D9F77BFD98 -:108920000BA8F0F709FF374CBDF83A00207120463C -:1089300000A991EC030AFEF799FE0546607A85428C -:108940000ED0022D05D1012000F03CF8012020724C -:1089500006E0012D04D1012000F034F8022020723D -:108960006572012017B030BD80B5D9F7F3FC2549F9 -:10897000C86000220A722449C0F8181200F5067077 -:1089800022494160224981600FF20D01C1600FF25E -:108990003D010161012002BD1A48C06890F809023A -:1089A000002801D10020704708E080B5154800215B -:1089B0000172084600F006F8012002BD154890F942 -:1089C00000007047134908707047000018B440F267 -:1089D0000D120B7812FB030301241C700B7812FBA1 -:1089E00003035C700B7812FB03030D249C700B785F -:1089F00012FB0300034A127AC2700878401C087008 -:108A000011BCD2E774BC002011880208C988020892 -:108A10001789020878BE00200FB410B5A0B09DF8E9 -:108A20008A005849087001208DF88C00AA208DF822 -:108A30008A003C208DF88B0000208DF80000032078 -:108A400001900DF1090022A92122DEF70BFA0A207C -:108A50008DF8080000A8D9F741FD002805D10FF2D4 -:108A60007010D9F735FF022014E00BA8E7F75BF888 -:108A7000454C542200212046DBF7ACF80021A165CB -:108A8000E16554220BA9D9F773FE0FF25810D9F7FC -:108A90001FFF012020B010BC5DF814FB80B50A2137 -:108AA0000320DAF737FC032801D1032002BD0FF2BF -:108AB0004010D9F70DFF012002BD80B5D9F74AFC5F -:108AC000314948653149C0F8001100F580703049DE -:108AD00041600FF26D0181600FF20D01C1600FF274 -:108AE000B5010161012002BD10B594B02649486D61 -:108AF00090F8F10000281BD0224C2078002817D0D5 -:108B000001201290119084B068465422DEF7BAF921 -:108B10000FBCDFF7BBFBC0B22178884208DB0146FF -:108B20000FF2D800D9F7D4FE00F005F8012000E0DC -:108B3000002014B010BD13480021017001207047BF -:108B400000B595B000A8E6F7EEFF0F48816D491C0F -:108B50008165012902D10099C1650FE033290DD348 -:108B600000218165C16D009A914207D1542200A96C -:108B7000D9F7FEFD0FF29800D9F7AAFE012015B033 -:108B800000BD00007CBE002090B30020198A0208BE -:108B90009D8A020810B50C4640F20D11227811FB97 -:108BA000020201231370227811FB02025370227813 -:108BB00011FB020206239370227811FB02000121AF -:108BC000C170FFF7B8FF2078401C207010BD000076 -:108BD00050443A205065646F4F70656E4661696C11 -:108BE0002053530050443A20534320535441000033 -:108BF00050443A2053432053544F000050443A20ED -:108C000044696666537465704F766572202564000A -:108C100050443A205343205245534554000000002D -:108C20003C0A560A700A8B0AA60AC10ADD0AF80A2B -:108C3000150B310B4E0B6B0B880BA50BC30BE10B0C -:108C4000000C1E0C3D0C5D0C7C0C9C0CBD0CDD0C5A -:108C5000FE0C1F0D410D630D850DA80DCB0DEE0D06 -:108C6000120E360E5A0E7F0EA40ECA0EEF0E160FFF -:108C70003C0F630F8B0FB30FDB0F03102C1056103C -:108C80008010AA10D41000112B1157118311B011AC -:108C9000DE110B12391268129712C712F71227133E -:108CA00059138A13BC13EF13221455148914BE14DC -:108CB000F31429155F159515CD1504163D16761676 -:108CC000AF16E91624175F179B17D81715185218F7 -:108CD0009118CF180F194F199019D119131A561A44 -:108CE0009A1ADE1A221B681BAE1BF51B3D1C851C45 -:108CF000CE1C181D621DAD1DF91D461E941EE21EE0 -:108D0000311F811FD11F23207520C8201C217121F4 -:108D1000C7211D227422CD2226238023DA23362464 -:108D20009324F1244F25AF250F267126D32636270D -:108D30009B2700286728CE283629A0290B2A762AC7 -:108D4000E32A512BC02B302CA12C132D862DFB2D6B -:108D5000712EE82E602FD92F5330CF304C31CA31CD -:108D60004A32CA324C33D0335434DA346235EA35BD -:108D7000743600378D371B38AA383C39CE39623A01 -:108D8000F83A8F3B273CC13C5D3DFA3D983E383F69 -:108D9000DA3F7E402341CA4172421C43C8437644B5 -:108DA0002545D64589463D47F447AC486649224AA1 -:108DB000DF4A9F4B614C244DEA4DB14E7B4F4650EC -:108DC0001451E351B55289535E5436551156ED5640 -:108DD000CB57AC588F59745A5C5B465C325D215E50 -:108DE000125F0560FB60F361EE62EB63EB64ED65BF -:108DF000F266FA670469116A206B336C486D5F6E26 -:108E00007A6F9770B871DB7201742A755676857720 -:108E1000B778EC79247B5F7C9D7DDF7E2480000029 -:108E20003D0A580A720A8D0AA80AC30ADF0AFB0A19 -:108E3000170B330B500B6D0B8A0BA70BC50BE30BFA -:108E4000020C210C400C5F0C7F0C9F0CBF0CE00C43 -:108E5000010D220D430D650D880DAA0DCD0DF10DEF -:108E6000140E380E5D0E820EA70ECC0EF20E180FE9 -:108E70003F0F660F8D0FB50FDD0F06102F10591025 -:108E80008210AD10D71002112E115A118611B31194 -:108E9000E1110E123D126B129A12CA12FA122B1322 -:108EA0005C138D13BF13F213251459148D14C114C0 -:108EB000F6142C1562159915D0150816401679165A -:108EC000B316ED16281763179F17DB1718185618D7 -:108ED0009418D318131953199419D519181A5A1A22 -:108EE0009E1AE21A271B6C1BB31BF91B411C891C21 -:108EF000D21C1C1D671DB21DFE1D4B1E981EE71EB9 -:108F0000361F861FD61F28207A20CD2021217621CA -:108F1000CC2122227A22D2222B238523E0233C2437 -:108F20009924F6245525B52515267726D9263C27DC -:108F3000A12706286D28D4283D29A629112A7D2A93 -:108F4000E92A572BC62B362CA82C1A2D8D2D022E34 -:108F5000782EEF2E672FE02F5B30D6305331D23191 -:108F60005132D2325433D8335C34E2346A35F2357C -:108F70007D36083795372338B3384439D7396B3ABB -:108F8000003B973B303CCA3C663D033EA23E423F1D -:108F9000E43F87402D41D3417C422643D243804465 -:108FA0002F45E04593464847FE47B64871492D4A4C -:108FB000EB4AAA4B6C4C304DF54DBD4E864F52508E -:108FC0002051EF51C15295536B5443551D56FA56DB -:108FD000D857B9589C59825A695B535C405D2F5EE3 -:108FE000205F136009610162FC62FA63FA64FC6548 -:108FF000016709681369206A306B426C586D6F6EA7 -:109000008A6FA870C871EB7212743B756776967799 -:10901000C878FD79367B717CB07DF17E36807F81AA -:109020000FB480B5212200210846D9F795F902280E -:1090300001D102200EE0212201210020D9F78CF974 -:10904000022801D1022005E02120D9F72DFFF2F7F7 -:1090500011FB012002BC5DF814FB80B52122002128 -:109060000120D9F779F9022801D1022002BD21227D -:1090700001210846D9F770F9022801D1022002BD6A -:10908000012002BDF0B58BB04948846BA069E1684E -:109090004518002600A8D9F7BEF90398DEF732FA82 -:1090A000444A454BE3F7DEF8E7F76CF9288004986B -:1090B000DEF728FA3F4A404BE3F7D4F8E7F762F9C6 -:1090C00068800598DEF71EFA3A4A3B4BE3F7CAF888 -:1090D000E7F758F9A880394F3878002809D1381DAA -:1090E00003A9D1EC031A00A991EC030AF2F7F0FAF4 -:1090F0000646012E02D10120387006E0387800289B -:1091000003D10020B880F8803881B888E880F888DA -:109110002881388968810120A0770BB0F0BD80B527 -:10912000D9F718F9264908602649C0F8381500F221 -:10913000385025494160254981600FF21101C16015 -:109140000FF235010161012002BD00001C480068DA -:1091500090F82905002801D10020704705E080B56E -:10916000002000F006F8012002BD194890F9000027 -:10917000704717490870704718B440F20D120B7809 -:1091800012FB030301241C700B7812FB03035C70B9 -:109190000B7812FB030321249C700B7812FB030055 -:1091A0000022C2700878401C087011BCD7E700008C -:1091B0000000002089AD84FA0A74313F20BD0020F0 -:1091C00030BE0020219002085B90020885900208C2 -:1091D00076BE00200FB480B5182208210020D9F7F0 -:1091E000BBF8022801D102200CE03D4800210170AB -:1091F0009DF8091041609DF80A1081609DF80B10E0 -:10920000C160012002BC5DF814FB80B53448002128 -:109210000170182208210120D9F79EF8032801D1F6 -:10922000032002BD012002BD10B52D4C207801287D -:1092300001D1002010BDEEF761FB642162684A4352 -:10924000E368012B0FD190421CDBA268514381429D -:1092500018DB012000F041F8012020700FF2D0004F -:10926000D9F736FB0EE0904203DBA26851438142FE -:1092700008DA012000F031F8012020700FF2B80068 -:10928000D9F726FB012010BD80B5D9F763F8154941 -:1092900008601549C0F8D01300F574701349416097 -:1092A000134981600FF20D01C1600FF24D010161A0 -:1092B000012002BD0B48006890F8C103002801D1CD -:1092C0000020704705E080B5002000F006F801207E -:1092D00002BD084890F900007047064908707047C1 -:1092E00094BC002034BE0020D59102080B920208E5 -:1092F000299202087DBE002018B440F20D120B78AE -:1093000012FB030301241C700B7812FB03035C7037 -:109310000B7812FB030318249C700B7812FB0300DC -:109320000122C2700878401C087011BCCBE7000015 -:1093300054656D7020496E0054656D70204F7574D2 -:10934000000000000FB480B50FF21810D9F7C0FA72 -:109350000F2201210020D8F7FFFF022805D10FF2CC -:109360001410D9F7B5FA022000E0012002BC5DF824 -:1093700014FB80B50FF20810D9F7AAFA0F220121C9 -:109380000846D8F7E9FF032805D10FF20410D9F7F2 -:109390009FFA032002BD012002BD80B5012000F02C -:1093A00035F8002000F02BF8012002BD80B50FF247 -:1093B000EC00D9F78DFAD8F7CDFF2449086024498D -:1093C000C0F8681200F51A70224941602249816094 -:1093D0000FF20D01C1600FF23D010161012002BDDC -:1093E0001A48006890F85902002801D100207047FF -:1093F00008E080B5002000F009F8012002BD1749FF -:1094000008707047164890F90000704714490870BA -:109410007047000018B440F20D120B7812FB0303E2 -:1094200001241C700B7812FB03035C700B7812FB99 -:1094300003030F249C700B7812FB0300074A127879 -:10944000C2700878401C087011BCD2E720BE002012 -:1094500045930208739302089B9302086EBE002096 -:109460006DBE00205374617274204779726F20546E -:10947000656D70005374617274204661696C000000 -:109480004779726F2054656D702053746F700000BF -:1094900053746F70204661696C0000004779726FE9 -:1094A0002054656D7020496E697400005248002197 -:1094B000017041608160704770B5044600254E4ED2 -:1094C000307800282CD12068DEF71CF821F000410C -:1094D0002A464A4BE6F782FF19D26068DEF712F897 -:1094E00021F000412A46454BE6F778FF0FD2A068ED -:1094F000DEF708F821F000410122414BE7F75AF965 -:1095000005D87068401C70602846B06004E0B06800 -:10951000401CB060284670607068052862DB28E057 -:10952000032837D12068DDF7EDFF21F000412A46FE -:10953000324BE6F753FF17D26068DDF7E3FF21F007 -:1095400000412A462D4BE6F749FF0DD2A068DDF712 -:10955000D9FF21F000410122294BE7F72BF903D86D -:109560007068401C706001E02846706070680528D3 -:1095700040DB94ED020AB5EE400AF1EE10FA03DD8D -:1095800001252846307002E0022528463070002070 -:1095900070602FE0012801D002282BD12068DDF770 -:1095A000B1FF21F000410122144BE7F703F913D971 -:1095B0006068DDF7A7FF21F0004101220F4BE7F7BC -:1095C000F9F809D9A068DDF79DFF21F000412A468E -:1095D0000B4BE6F703FF03D2B068401CB06001E01C -:1095E0001046B060B068052804DB032528463070BB -:1095F0000020B060284670BD68BD00200000F83F24 -:10960000000021400FB480B50FF23010D9F760F997 -:109610001C2200210846D8F79FFE022801D1022013 -:1096200000E0012002BC5DF814FB80B51C22002183 -:109630000120D8F791FE022801D1022002BD0120AD -:1096400002BD10B5364CA0891430A08101212170D3 -:10965000022161700321A1700421E1700521A18024 -:109660000621E1710721A1710821217280B24EF615 -:109670006021884204D1012000F02EF80020A08152 -:10968000012010BD80B5D8F765FE2649C0F87014DA -:1096900000F2704024494160244981600FF20D01BD -:1096A000C1600FF23D010161012002BD2048006848 -:1096B00090F86104002801D10020704708E080B5CF -:1096C0001C4800210170084600F006F8012002BD88 -:1096D000194890F90000704717490870704700005A -:1096E00010B50C4640F20D11227811FB0202012345 -:1096F0001370227811FB02025370227811FB0202D0 -:109700001C239370227811FB0200C01C044909221B -:10971000DDF7A8FB2078401C2070BDE81040CEE7A4 -:10972000A4BC0020059602082B9602084396020866 -:1097300018BE002062BE002063BE002050443A20C4 -:1097400053542041504452000FB480B519220021D7 -:109750000846D8F701FE022801D102200DE0BDF82D -:109760000E309DF90D209DF90C10BDF80A00FEF792 -:1097700013F93F4800214170012002BC5DF814FB41 -:1097800080B5192200210120D8F7E6FD032801D178 -:10979000032002BD012002BD38B50024344D95F9E7 -:1097A0000100002803D16868FEF736F9044664B268 -:1097B000002C07D0012000F039F8204600F039F8DD -:1097C00001206870012032BD10B5294CD8F7C2FDC8 -:1097D000A060D8F7C1F9606000202070A06825491A -:1097E000C0F8F81300F57E70234941602349816079 -:1097F0000FF20D01C1600FF241010161012010BDA6 -:109800001B48806890F8E903002801D100207047C8 -:1098100008E080B5164800210170084600F006F8FF -:10982000012002BD164890F90000704714490870E5 -:1098300070470F490870704718B440F20D120B784A -:1098400012FB030301241C700B7812FB03035C70F2 -:109850000B7812FB030319249C700B7812FB030096 -:10986000034A1278C2700878401C087011BCD0E717 -:1098700044BD002049970208819702089997020881 -:109880007BBE00204B480021017041608160704721 -:1098900070B506460024474D287800282BD1306843 -:1098A000DDF730FE21F000412246434BE6F796FDFE -:1098B00018D27068DDF726FE21F0004122463E4BAB -:1098C000E6F78CFD0ED296ED020ADFED390AB4EE12 -:1098D000600AF1EE10FA05DB6868401C686010460B -:1098E000A86004E0A868401CA8601046686068682A -:1098F000052853DB27E002282BD13068DDF702FE74 -:1099000021F0004122462C4BE6F768FD16D2706824 -:10991000DDF7F8FD21F000412246274BE6F75EFD1A -:109920000CD296ED020ADFED220AB4EE600AF1EEE7 -:1099300010FA03DB6868401C686001E0104668604C -:109940006868052832DB01242046287010466860CC -:109950002CE001282AD13068DDF7D4FD21F0004148 -:109960000122154BE6F726FF12D97068DDF7CAFD14 -:1099700021F000410122104BE6F71CFF08D996EDBB -:10998000020AF2EE020AB4EE600AF1EE10FA03D512 -:10999000A868401CA86001E02046A860A8680528C7 -:1099A00004DB0224204628700020A860204670BDF9 -:1099B00001001041C0BC00200000E03F0FB480B5A2 -:1099C000102201210020D8F7C7FC022801D1022073 -:1099D00002E0FEF7E7FB012002BC5DF814FB80B556 -:1099E000102201210846D8F7B7FC032801D1032033 -:1099F00002BD012002BD30B58BB000A8D8F70BFD29 -:109A000003A890EC030AFEF7D3FB0446324D2878F6 -:109A1000A0420FD0012C05D1012000F03DF801201B -:109A2000687006E0022C04D1012000F035F8022015 -:109A300068702C7001200BB030BD80B5D8F78AFC5F -:109A40002549486000224A702449C0F8901200F568 -:109A5000247023494160234981600FF21101C160E4 -:109A60000FF23D010161012002BD00001A4840686B -:109A700090F88102002801D10020704708E080B5ED -:109A8000154800214170084600F006F8012002BD8B -:109A9000154890F90000704713490870704700009E -:109AA00018B440F20D120B7812FB030301241C7052 -:109AB0000B7812FB03035C700B7812FB030310247A -:109AC0009C700B7812FB0300034A5278C27008782E -:109AD000401C087011BCD2E7E0BD0020BD9902080F -:109AE000DF990208F799020877BE002009010028D3 -:109AF00006D500F00F003C4A801800F8041C70479F -:109B00003A4A8154704710B5401EB0F1807F01D3AE -:109B1000012010BD364C60600F214FF0FF30FFF781 -:109B2000E5FF0020A06007202060002010BD10B5D8 -:109B3000304C2078401C207000F06AF82078012812 -:109B400004D16068002801D0DAF723F82078401E9D -:109B5000207010BD10B5DAF726F8264C6078401C4E -:109B6000607000F091F8244800684FF47A71B0FBFF -:109B7000F1F0FFF7C8FF002800D0FEE71F4820499A -:109B800001600E214FF0FF30FFF7B0FF6078401EFC -:109B90006070C0B2002803D1BDE81040D9F7FDBF06 -:109BA00010BD000010B5174C4FF400512046418302 -:109BB000C04630BF4FF400512046E3F72DFBF3E7DA -:109BC0001EF0040F0CBFEFF30880EFF3098000F0E4 -:109BD0001DB80D480168002905D5016841F0004114 -:109BE000016000F0B1B8FEE718ED00E000E400E02D -:109BF00010E000E034360020AC36002008ED00E034 -:109C000000000008001002402CED00E0DDF77BB9F9 -:109C100010B50948016A491C0162426A891A5CBF91 -:109C2000012181710548046824B160688047246877 -:109C3000002CFAD110BD00BF343600204CBE0020ED -:109C400080B54FF44070E4F70FF83348016841F4F1 -:109C5000700101603148016841F00101016000219B -:109C6000816001682E4A114001602E4941600168FF -:109C700021F4802101600021C16000F02DF82A4804 -:109C80004FF00061016001BD2848416801F00C01FE -:109C9000082914D10168026802F03F02244BB3FB8B -:109CA000F2F20168C1F3881151430268C2F3014224 -:109CB000521C5200B1FBF2F11E4A116102E01D4933 -:109CC0001B4A0A611B494068C0F30310405C0A69E3 -:109CD00022FA00F0086170471448C16B41F08051CE -:109CE000C163416841604168416041684160082149 -:109CF000016011494FF4C0620A60416821F400011B -:109D000041600E480E4901600E48016821F440414F -:109D100041F480410160704788ED00E00038024066 -:109D2000FFFFF6FE1030002408ED00E0043802408A -:109D30000024F4009C360020003C0240843802409D -:109D40004031004000700040019810F0040006BF50 -:109D5000EFF308800830EFF30980816901F1020117 -:109D6000816170470FB480B5072200210846D8F7FB -:109D7000F3FA022801D1022004E09DF80800FCF764 -:109D8000CBFA012002BC5DF814FB80B5072200214C -:109D90000120D8F7E1FA032801D1032002BD0120F8 -:109DA00002BD10B582B000208DF80000314C00A932 -:109DB0006068FCF7C7FA002806D0012000F03BF8E5 -:109DC0009DF8000020706070012016BD10B5294C70 -:109DD000D8F7C0FAA060D7F7BFFE606000202070FF -:109DE000A0682549C0F8281100F594702349416006 -:109DF000234981600FF20D01C1600FF24101016141 -:109E0000012010BD014600201A4A926892F81921DB -:109E1000002A02D0002900D109E0704780B515481A -:109E200000210170084600F006F8012002BD154827 -:109E300090F90000704713490870704718B440F259 -:109E40000D120B7812FB030301241C700B7812FB1C -:109E500003035C700B7812FB030307249C700B78E0 -:109E600012FB0300034A1278C2700878401C087085 -:109E700011BCD3E7FCBC0020659D02088B9D020845 -:109E8000A39D020864BE00200FB480B515220021F6 -:109E90000846D8F761FA022801D1022002E0FFF754 -:109EA000F1FC012002BC5DF814FB80B515220021F5 -:109EB0000120D8F751FA032801D1032002BD012067 -:109EC00002BD10B531484068FFF7E2FC044664B2B9 -:109ED000002C05D0012000F037F8204600F037F8BC -:109EE000012010BD10B5294CD8F734FAA060D7F77F -:109EF00033FE606000202070A0682549C0F8581328 -:109F000000F5567023494160234981600FF20D012D -:109F1000C1600FF241010161012010BD1B48806842 -:109F200090F84903002801D10020704708E080B56F -:109F3000164800210170084600F006F8012002BD15 -:109F4000164890F9000070471449087070470F498F -:109F50000870704718B440F20D120B7812FB03031F -:109F600001241C700B7812FB03035C700B7812FB4E -:109F7000030315249C700B7812FB0300034A12782C -:109F8000C2700878401C087011BCD0E714BD0020D6 -:109F9000899E0208AB9E0208C39E02086BBE002089 -:109FA0000FB480B5172200210846D8F7D5F902284A -:109FB00001D1022002E0FFF779FA012002BC5DF82E -:109FC00014FB80B5172200210120D8F7C5F903281A -:109FD00001D1032002BD012002BD10B53148406807 -:109FE000FFF76AFA044664B2002C05D0012000F0A5 -:109FF00037F8204600F037F8012010BD10B5294C85 -:10A00000D8F7A8F9A060D7F7A7FD606000202070FE -:10A01000A0682549C0F8A81300F56A70234941607B -:10A02000234981600FF20D01C1600FF2410101610E -:10A03000012010BD1B48806890F89903002801D1C9 -:10A040000020704708E080B51648002101700846DE -:10A0500000F006F8012002BD164890F90000704794 -:10A060001449087070470F490870704718B440F2DF -:10A070000D120B7812FB030301241C700B7812FBEA -:10A0800003035C700B7812FB030317249C700B789E -:10A0900012FB0300034A1278C2700878401C087053 -:10A0A00011BCD0E738BD0020A19F0208C39F020861 -:10A0B000DB9F02087ABE00200FB4012004B0704775 -:10A0C000012070470120704780B50FF2B400D8F727 -:10A0D000FFFBD8F73FF9244908602449C0F8B812BB -:10A0E00000F52E7022494160224981600FF2110172 -:10A0F000C1600FF23D010161012002BD00000000BE -:10A100001948006890F8A902002801D10020704782 -:10A1100005E080B5002000F006F8012002BD1748D8 -:10A1200090F9000070471549087070470000000062 -:10A1300018B440F20D120B7812FB030301241C70BB -:10A140000B7812FB03035C700B7812FB03031124E2 -:10A150009C700B7812FB0300074A1278C2700878D3 -:10A16000401C087011BCD4E71CBE0020B9A0020836 -:10A17000C1A00208C5A0020869BE002068BE002078 -:10A18000436865636B4C696768744C757820496EE9 -:10A1900069740000816807E00268116853688918D3 -:10A1A0005B18C36008320260C2689142F4D04A1C56 -:10A1B0008260087870472DE9FF4D00F10801009199 -:10A1C00000270168009A490802EBC1010191B846D5 -:10A1D0000021029103910168490800EBC101406828 -:10A1E00000F0010501F10804400804EBC00631E06D -:10A1F00000A8FFF7CFFF4FFA80FA0AE00098016845 -:10A2000008180099029049680818039000980830CF -:10A210000090029803998842F0D0401C029010F8F8 -:10A2200001BD47450CD1B44208BFE9F751FE27688C -:10A2300005B14F44606800EB070808344745F2D089 -:10A2400007F801BBBAF1000F0AD51AF1010AE8D1EB -:10A250004745CDD1B442CBD1304604B0BDE8F08DF6 -:10A26000BAF1010AD5D5F3E710B582B0D9F7C8FD28 -:10A27000FFF770FCFDF77FFE144C4FF480600090F8 -:10A280002346134A642104F5B0501C3000F028F82E -:10A290004FF48050009004F580630E4A4B2104F582 -:10A2A000B05000F01DF84FF40070009004F5A0537A -:10A2B000094A0A2104F5B050383000F011F8074877 -:10A2C00001210170D9F747FC002016BD5450002031 -:10A2D000976E02088D7F0208837F020880BE0020EF -:10A2E000F0B482B00025069C00262F46AC46A0E8BC -:10A2F000E010E0C01C380C4D4174017C2D7802B098 -:10A3000029430174E118C908C90041F8506D4FF0A4 -:10A3100080734B64054B0B64CA646FF002024A629F -:10A320004160F0BCD9F737BD81BE00204B3B00082F -:10A3300043F63001C4F202014FF09F020A6040F27E -:10A340000000C4F202004FF6FF73CAF6FF33036049 -:10A350004FF6BF63CFF6FF7300F5806003604FF6E2 -:10A36000FF73CFF6FF7300F58060036000F5806037 -:10A37000036000F58060036040F20F03C0F2000349 -:10A3800041F60040C4F2020003604FF000020A6090 -:10A390000148804701480047419C02081DA502086A -:10A3A00047797243616C3D2564000000414343439B -:10A3B000616C3D256400000044554D5053455420C8 -:10A3C0002564000044554D5046494E202564000048 -:10A3D00010B5074979441831064C7C44163404E022 -:10A3E0000A68081D511888470146A142F8D110BDDE -:10A3F000740000009C000000F55901081D5A010876 -:10A40000495B0108F95B0108000000004D5C010890 -:10A41000000000001760010800000000F559010865 -:10A42000BF5E0108615F010800000000000000003D -:10A43000000000000000000000000000000000001C -:10A44000A1600108C3600108A76101083562010825 -:10A45000000000008962010800000000BD6B0108D7 -:10A46000E76B0108A789FDFF308700005437002003 -:10A470000000000043FDFFFF02000000020000009A -:10A48000B802000015020000000000205237000052 -:10A490005B494E564E5D616363655F7368696674C0 -:10A4A000282564293A20256420256420256400009D -:10A4B0004EF68851CEF20001086840F47000086042 -:10A4C0004FF00070E1EE100A704700000120C04616 -:10A4D000002801D0FFF77CFF0020C046C046FFF7F0 -:10A4E000C3FE00F000F800F001B80000074638464F -:10A4F000F2F74AFCFBE700000A5B494E564E5D410D -:10A500004343454C5F4D474D5432203A202564006B -:10A5100047797243616C3D2564000000C046C04627 -:10A52000FFF7C6FFFFF7D2FF4148532D4532000029 -:10A530004148532D453300004148532D4534000018 -:10A540004148532D453100005354302D3200000056 -:10A5500041522D534C50000041522D5354420000A3 -:10A5600041432D52463100004149532D534C500078 -:10A5700047522D534C50000047522D535442000077 -:10A5800047522D52463100004748532D45320000B6 -:10A590004748532D453300004748532D45340000AC -:10A5A0004748532D453500004748532D4536000098 -:10A5B0004748532D453700004748532D4538000084 -:10A5C000FF7FFF7FFF7F000000000000FCF724BC3E -:10A5D000FFF7F6BAFCF72ABCFCF732BCFCF73ABC32 -:10A5E000FCF742BCFCF74ABCD9F782BAFFF79FBA26 -:10A5F000FFF7FEBFFFF7FEBFFFF7FEBFFCF72CBE65 -:10A60000FFF7FEBFFFF7FEBFFCF72BBDFCF79DBDBC -:10A61000FCF7C3BDFFF7FEBFFFF7FEBFFFF7FEBFAE -:10A62000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF5E -:10A63000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF4E -:10A64000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF3E -:10A65000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF2E -:10A66000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF1E -:10A67000FFF7FEBFFFF7FEBFFFF7FEBFFCF70ABC08 -:10A68000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFFE -:10A69000FCF7B4BDFCF724BEFFF7FEBFFFF7FEBF1B -:10A6A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFDE -:10A6B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFCE -:10A6C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFBE -:10A6D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFAE -:10A6E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF9E -:10A6F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF8E -:10A70000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF7D -:10A71000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF6D -:10A72000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF5D -:10A73000FFF7FEBFFFF7FEBFA0000760000020602C -:10A740000000208100810081008100810081008162 -:10A750000081008100810081008100810081009ED4 -:10A760000007BC070020BC07002081008100810099 -:10A7700081008100810081008100810081008100D1 -:10A7800081008100810081008100810081008100C1 -:10A7900081008100810081008100810081008100B1 -:10A7A00081008100810081008100810081008100A1 -:10A7B0008100810081008100810081008100810091 -:10A7C0008100810081008100810081008100810081 -:10A7D0008100810081008100810081008100810071 -:10A7E0008100810081008100810081008100810061 -:10A7F0008100810081008100810081008100810051 -:10A8000081008100810081008100810081008A0037 -:10A81000000AFD000007FD000007FD000005E5003F -:10A820000014FC000002F2000001FD0000018100A4 -:10A83000810081008100B20010400000803FFFCA0B -:10A84000A3BFF986F43EFBB54A3DFB000002E600DB -:10A850000001FD000002ED000047F1000001FD00D5 -:10A860000010E9000001FD0000C8FD000004980090 -:10A8700001FFFF8100020000018100C400FD6604A9 -:10A880003FCDCC4C3FE0000001FD000001FD000089 -:10A8900001E9000001FD000002E5000001F10000F7 -:10A8A00003B8000040FD0002FF3C41FA000E8B009F -:10A8B000A0A1A2A3AAABA4A5A9A7A60064EA00012F -:10A8C0000101FD000078ED001101020304060708F4 -:10A8D000090024F40080838C8D8F90FD000BFF0015 -:10A8E000600B110000898B9D9E9FFD00015078FA3E -:10A8F00000048485868781FB0002FFFFFEFA0000CA -:10A9000003F0001001020304010203040607080912 -:10A91000071F000002FD0007609C7866805DEFC89D -:10A92000FC000001FD000001FD000001FD000453DA -:10A930004E414D59F8000005F50002540040FA0060 -:10A940000001FB0002D039C8FB000131FF0000000C -:00000001FF +:1000000000600020F547030831E4020845E40208D7 +:1000100059E402086DE4020881E4020800000000CF +:1000200000000000000000000000000095E402084D +:10003000A9E4020800000000B55A0008E3E7000840 +:10004000B54A0308B94A0308BD4A03084BEA020847 +:10005000C54A0308B3EB0208FDE602088DE8020872 +:1000600019E90208D94A0308DD4A0308E14A0308EE +:10007000E54A0308E94A0308ED4A0308F14A030880 +:10008000F54A0308F94A0308FD4A0308014B03082F +:10009000054B0308094B03080D4B0308114B0308DC +:1000A000154B0308194B03081D4B0308214B03088C +:1000B000254B0308294B03082D4B0308314B03083C +:1000C000354B0308394B03083D4B0308C1E40208D4 +:1000D000454B0308494B03084D4B0308514B03089C +:1000E000B7E9020817EB02085D4B0308614B0308F0 +:1000F000654B0308694B03086D4B0308714B0308FC +:10010000754B0308794B03087D4B0308814B0308AB +:10011000854B0308894B03088D4B0308914B03085B +:10012000954B0308994B03089D4B0308A14B03080B +:10013000A54B0308A94B0308AD4B0308B14B0308BB +:10014000B54B0308B94B0308BD4B0308C14B03086B +:10015000C54B0308C94B0308CD4B0308D14B03081B +:10016000D54B0308D94B0308DD4B0308E14B0308CB +:10017000E54B0308E94B0308ED4B0308F14B03087B +:10018000F54B0308F94B030838B50020ADF8000023 +:10019000044601F094FF05464FF48051204602F0DA +:1001A000F2F90A21284602F077F900E0641C062CD7 +:1001B00012D2DFF8FC0C215C8DF800102018007AB8 +:1001C0008DF80100022300AA7221072002F06FF8C7 +:1001D0000028EBD1002032BD012032BD2DE9FC41C9 +:1001E0000746884602F030FB04460020ADF80400C4 +:1001F000DFF8C05C288C0646B8F1000F02D0384307 +:10020000288401E0B8432884012000900DF1060302 +:10021000AB227221062002F0A4F8002801D10020B0 +:10022000C4E1288C0E2800F2A681DFE810F00F0050 +:10023000A4011C00A4013F00A4013F00A401B700D9 +:10024000A401B700A401B700A401B70080208DF875 +:10025000040000208DF805009DF8060000F0FD0068 +:100260008DF8060087E116F00C0F01D001206875AB +:1002700081208DF8040001AEEE207070022301AAE7 +:100280007221092002F013F8002801D100208DE12D +:100290007078E87080208DF80400032070709DF85D +:1002A000060000F0FD008DF8060064E1304600070E +:1002B00001D4022E01D1012068759D208DF8040023 +:1002C00001AE0C207070022301AA7221092001F0F6 +:1002D000EEFF002801D1002068E19E208DF8040087 +:1002E0000C207070022301AA7221092001F0DFFFA7 +:1002F000002801D1002059E181208DF80400FD2063 +:100300007070022301AA7221092001F0D0FF002899 +:1003100001D100204AE17078E8708E208DF8040049 +:10032000287A002812D00C218F2002F05EFB0421D5 +:100330008F2002F031FB3021902002F056FB30215B +:10034000902002F029FB4520707011E00C218F20D5 +:1003500002F04BFB08218F2002F01EFB3021902081 +:1003600002F043FB1021902002F016FB82207070F7 +:10037000022301AA7221092001F099FF002801D16E +:10038000002013E180208DF80400272070709DF874 +:10039000060000F0FD008DF80600ECE016F00807FE +:1003A00001AE4FD102F02AFC01206875A4208DF81F +:1003B000040000207070DFF87C0D00210170022322 +:1003C00001AA7221092001F072FF002801D100204A +:1003D000ECE0A5208DF8040000207070DFF8580DC7 +:1003E00000210170022301AA7221092001F05FFFA0 +:1003F000002801D10020D9E0A7208DF804000020BA +:100400007070DFF8A80D00210170022301AA72218B +:10041000092001F04CFF002801D10020C6E0A920EE +:100420008DF8040000207070DFF8840D0021017049 +:10043000022301AA7221092001F039FF002801D10D +:100440000020B3E081208DF80400FE2070700223AC +:1004500001AA7221092001F02AFF002801D1002001 +:10046000A4E07078E8708E208DF80400287A0028C7 +:1004700012D00C218F2002F0B8FA04218F2002F054 +:100480008BFA3021902002F0B0FA3021902002F057 +:1004900083FA4F20707011E00C218F2002F0A5FA32 +:1004A00008218F2002F078FA3021902002F09DFA86 +:1004B0002121902002F070FA84207070022301AA9A +:1004C0007221092001F0F3FE002801D100206DE027 +:1004D000002F20D1B4F88A00B4F88C10401AE883B9 +:1004E000B4F88A108900A98389B2FF2901D3FE21BB +:1004F000A98380B28100652902DB6420E88301E0E2 +:100500008000E883A98BE88B0A1AEA8392B20FF283 +:10051000A00001F056FEA6208DF80400287A0028DD +:100520000AD06021A32002F060FA4121A32002F04A +:1005300033FA5720707009E06021A32002F055FAC9 +:100540004121A32002F028FA8B207070022301AA17 +:100550007221092001F0ABFE002801D1002025E026 +:1005600080208DF80400672070709DF8060040F030 +:1005700002008DF80600022301AA7221092001F071 +:1005800096FE002801D1002010E0AB208DF8040079 +:100590009DF806008DF80500022301AA72210920AA +:1005A00001F085FE401E8041C043C00FBDE8F681CA +:1005B000233E6755703D25642C674C6F3D256400D4 +:1005C00010B534220021DFF8900C02F0A1FEDFF814 +:1005D000E4480120A07102F0A5FE02F02FFA0120EC +:1005E0002073DFF8EC0D0021017010BD10B582B052 +:1005F0000FF25C0001F0E5FD0020ADF80000802066 +:100600008DF8000000AC03206070022300AA722164 +:10061000062001F04CFE002818D0DFF89808817AF7 +:1006200000290DD08C218DF800100021617081709F +:10063000022300AA7221062001F039FE002805D00D +:10064000FFF7BEFF01210020FFF7C8FD13BD00002A +:10065000233E484C5300000010B582B00FF240001A +:1006600001F0AFFD0020ADF80000044600E0641C7E +:10067000052C12D2DFF85C0D215C8DF800102018DB +:10068000007A8DF80100022300AA7221072001F0F0 +:100690000EFE0028EBD1002016BD012016BD000083 +:1006A000233E50525000000030B583B00FF284005A +:1006B00001F087FD0020ADF804008DF80600DFF89A +:1006C000F447607180208DF8040001AD032068704C +:1006D000022301AA7221072001F0E9FD002801D1BF +:1006E00000203EBD8C208DF8040000206870A070B2 +:1006F000022301AA7221072001F0D9FD002801D1AF +:1007000000203EBD0120607201460420FFF766FD17 +:10071000002801D100203EBD012000900DF106030C +:10072000E5227221072001F01CFE401E8041C043DB +:10073000C00F3EBD233E50524F00000000B583B0B5 +:100740000FF2600001F03DFD0020ADF806008DF8CD +:10075000040080208DF8060003208DF80700022396 +:100760000DF106027221072001F0A1FD002801D140 +:1007700000200EBDDFF83C07002141720420FFF786 +:100780002DFD002801D100200EBD0120009001ABFD +:10079000E5227221072001F0E4FD401E8041C043A4 +:1007A000C00F0EBD233E5052430000000120704791 +:1007B00030B583B004460020ADF80400DFF8F456ED +:1007C000A87B00282CD1A87A002802D0287C207091 +:1007D00031E0012000900DF10503932272210720E2 +:1007E00001F0BFFD00280DD09DF80500800722D53F +:1007F0000120009001AB9C227221072001F0B1FD85 +:10080000002801D100203EBD9DF80400697951FA0D +:1008100080F080B2400820709DF8040068710AE002 +:10082000012808D1DFF8300A41696A79891849102E +:1008300021704069687101203EBD2DE9F04391B0FF +:10084000044602F001F8054601F039FC0646002096 +:10085000ADF80800ADF80C008DF80A0001200090FA +:100860000DF10A0393227221072001F07AFD00287E +:1008700001D1002024E20220009003AB94227221D7 +:10088000072001F06EFD002801D1002018E2DFF8FA +:1008900024769DF80D009DF80C1041EA0020DFF849 +:1008A0000C1D4843F978C1F580713A79DFF8003DB5 +:1008B000D25C12FB01F140F24232514390FBF1F065 +:1008C000797B002902D0B97A002901D1B86208E009 +:1008D000B86AF97D4A1CFA75062902D3002179739A +:1008E000F975397A00290CD141F6593188422DDB4E +:1008F00001213972F86200203876FFF777FE012077 +:10090000DEE1F96A411A44F62162914215DA40F6B5 +:10091000B831884218DA9DF80A20920614D53A7E3A +:10092000531C3B76C92A04D2BA7A002A0ED18842D7 +:100930000CDA884201DA00213972F8620020387638 +:10094000FFF754FE0120BBE1002038769DF80A0035 +:10095000800640F1B4810020B873012000900DF1B1 +:100960000A0393227221072001F0FBFC002801D129 +:100970000020A5E19DF80A0080071BD5012000900A +:1009800003AB9C227221072001F0EBFC002801D16F +:10099000002095E19DF80C00797951FA80F080B241 +:1009A000400860709DF80C00F8739DF80C00787199 +:1009B00060783874387B002802D00020387371E1E9 +:1009C000DFF8108D607888F80000B87900280AD028 +:1009D00002F03EF8002806D1B87A002803D06078EB +:1009E00002F048F87AE0787A002839D0B87AB978F5 +:1009F000084335D1002030758C208DF808000DF1AA +:100A00000809202089F80100B870022302AA722187 +:100A1000072001F04CFC002801D1002050E1892082 +:100A20008DF80800002089F80100022302AA722133 +:100A3000072001F03CFC002801D1002040E18B2080 +:100A40008DF80800B5F88A0089F80100022302AA8F +:100A50007221072001F02BFC002801D100202FE19A +:100A6000B87A00280ED105F18A004288B5F88A10BC +:100A70000FF2542001F0A5FB61780FF25C2001F029 +:100A8000A0FB2BE0414684B06846182203F048F8EA +:100A90000FBC02F058FC04A802F0BBFCDFF8B49CC9 +:100AA000484604A9342203F03BF899F81C000028BA +:100AB00007D034224946DFF8A00703F05CF8012094 +:100AC000787009F11C00417D88F81410817D88F848 +:100AD0001510007D002801D0FFF772FD787A0028FC +:100AE00000F0E080B87A002840F0DC806078B5F84B +:100AF0008A10884231D3307D00282ED10120F87130 +:100B000020702078307589208DF808000DF10809D3 +:100B100005F18A00408889F80100022302AA7221A7 +:100B2000072001F0C4FB002801D10020C8E08B2081 +:100B30008DF80800FF2089F80100022302AA722123 +:100B4000072001F0B4FB002801D10020B8E0617853 +:100B50000FF2901001F035FBA4E005F28A00418805 +:100B60006278914231D3317D01292ED10120F87173 +:100B7000002020702078307589208DF808000DF154 +:100B80000809002089F80100022302AA7221072027 +:100B900001F08DFB002801D1002091E08B208DF821 +:100BA0000800B5F88A0089F80100022302AA722120 +:100BB000072001F07CFB002801D1002080E0617853 +:100BC0000FF2281001F0FDFA6CE0B5F88A10627897 +:100BD000914235D3317D002932D1797C01292FD141 +:100BE0000120F87100202070207830750020787482 +:100BF00089208DF808000DF10809002089F801000E +:100C0000022302AA7221072001F051FB002801D122 +:100C1000002055E08B208DF80800B5F88A0089F88F +:100C20000100022302AA7221072001F040FB0028E4 +:100C300001D1002044E00FF2BC0001F0C2FA31E023 +:100C40006178428891422DD3317D01292AD1797C66 +:100C5000012927D10021797489218DF808100DF11F +:100C60000809408889F80100022302AA722107209E +:100C700001F01DFB002801D1002021E08B208DF820 +:100C80000800FF2089F80100022302AA7221072030 +:100C900001F00DFB002801D1002011E00FF25C00F3 +:100CA00001F08FFA0120009003ABE52272210720AA +:100CB00001F057FB401E8041C043C00F00E0002000 +:100CC00011B0BDE8F0830000233E55703D25642C33 +:100CD0004C6F3D2564000000233E505241572025B3 +:100CE00064000000233E503120256400233E503232 +:100CF00020256400233E526554483100233E52654E +:100D0000544832002DE9F84304460D46694EB07C44 +:100D1000002805D000F011FF0020F0743075C5E008 +:100D200001F092FD804600273846ADF8000020789B +:100D3000072823D16078FF2820D12946601CFFF7BF +:100D400037FD6078B8F88A10884208D301202070F7 +:100D5000627821780FF2601001F033FA0CE0B8F8F5 +:100D60008C006178884207D33846207062782178F9 +:100D70000FF2441001F025FA012097E00020F074F2 +:100D8000307529462046FFF758FD00280DD0707AAF +:100D900000280AD0F079002807D00FF2301001F0B7 +:100DA00010FA0020F07101203075B07A002877D059 +:100DB000DFF84C8DD8F8189009F10C00417DC0681F +:100DC000D9F80C20801800F049FA002868D0DFF824 +:100DD00000060078411E8941C90FF174707800281F +:100DE00001D000207070707A002857D0D9F80C001C +:100DF00040780DF1000989F80100B18B814218D2C9 +:100E000001F05DF9007D002813D1707E401C7076E2 +:100E1000C0B202282DD100207076012701F04FF9D1 +:100E20003946017599F801100FF2A80001F0C9F9CF +:100E30001FE099F80100F18B884218D201F03FF9C8 +:100E4000007D012813D1707E401C7076C0B202284C +:100E50000FD100207076012701F031F900210175D2 +:100E600099F801100FF2780001F0ABF901E00020D1 +:100E70007076002F12D0D8F81C8001F020F9007D88 +:100E80008DF8000008F10C00427D00A9C068D8F878 +:100E90000C30C01802F06FFE012030750020307059 +:100EA00003F0F2FE00283FF469AF307DBDE8F28325 +:100EB000B09A0020C8990020233E536C65657020CD +:100EC000414443202564202564000000233E505502 +:100ED00050000000233E677570312025640000003B +:100EE000233E67757032202564000000F8B5074680 +:100EF0000020ADF8000001F0A7FC0546DFF8104D1A +:100F0000012060743878A5F88A0005F28A0678789E +:100F10007080B5F88A00002802D07088002808D1B7 +:100F20000FF2940001F04DF97820A5F88A00002016 +:100F3000708089208DF8000000AF708878700223DF +:100F400000AA7221072001F0B2F900280DD08B20F1 +:100F50008DF80000B5F88A007870022300AA72218B +:100F6000072001F0A4F9002801D10020F2BD728809 +:100F7000B5F88A100FF2480001F023F9B5F88A009D +:100F80007188401AE083B5F88A108900A18389B27C +:100F9000FF2901D3FE21A18380B28100652902DBF4 +:100FA0006420E08301E08000E083A08BE18B401AA5 +:100FB000E0830120F2BD0000233E5054483D300044 +:100FC000233E5448534554202564202564000000E6 +:100FD00080B50FF21801072004F0C0FA0FF23001BB +:100FE0000A20BDE8044004F0B9BA00005906000820 +:100FF000A90600083D070008AD0700080000000032 +:10100000050D0008ED0E00080000000000000000C3 +:1010100059060008A90600083D070008AD070008AA +:1010200000000000B1070008ED0E000800000000FD +:101030000000000010B582B00FF2540001F0C1F8BA +:101040000020ADF80000FFF79FF8002803D10FF251 +:10105000480001F0B6F8002400E0641C0B2C12D20A +:10106000DFF87C0D2118097B8DF80010205C8DF8CD +:101070000100022300AA7221062001F018F90028BD +:10108000EBD1002016BD03F033F8012016BD00009F +:10109000233E474550000000233E47504641494CFF +:1010A0000000000038B50FF2940001F08AF800202B +:1010B000ADF8000080208DF8000000AC03206070C7 +:1010C000022300AA7221062001F0F1F8002801D1C4 +:1010D000002032BD8C208DF8000000206070DFF809 +:1010E000305BA870022300AA7221062001F0DFF80D +:1010F000002801D1002032BDA3208DF80000DFF8C8 +:10110000E00CC0786070022300AA7221062001F072 +:10111000CEF8002801D1002032BD0120A872FFF7CF +:101120004FFA01210820FFF759F8401E8041C043C3 +:10113000C00F32BDEF620120F0620120233E47451F +:101140004F00000010B582B00FF2680001F039F8CE +:101150000020ADF8000080208DF8000000AC0320D6 +:101160006070022300AA7221062001F0A0F8002876 +:1011700001D1002016BDDFF86C0C0021817208201F +:10118000FFF72CF8002801D1002016BD9F208DF814 +:10119000000000206070022300AA7221062001F0E6 +:1011A00086F8401E8041C043C00F16BDF162012089 +:1011B000F2620120233E47454300000001207047B2 +:1011C00030B58DB0DFF8485AA879002814D001F066 +:1011D0003FFC002810D0DFF8FC44201D0FC801F0B0 +:1011E00035FD01F03EFC002832D00020A87101201E +:1011F00060752075A0752BE0A879002828D1DFF84C +:10120000D444214684B06846182202F089FC0FBC01 +:1012100002F0CCF800A802F0FCF8DFF838552846B8 +:1012200000A9342202F07CFC05F11C00417D2175EF +:10123000817D6175007D002801D0FFF7C1F9287F0D +:10124000002805D034222946DFF8FC0C02F093FC7C +:1012500001200DB030BD00003C5F012010B584B00E +:10126000044602A8002101600846ADF804000120F0 +:10127000009001AB93227221062001F072F8002841 +:1012800000F088809DF8040010F0040004D1DFF81D +:101290008019497800297DD0002806D0DFF8700930 +:1012A0004178002901D101218173012000900DF1C5 +:1012B0000503AE227221062001F053F8002869D000 +:1012C0009DF80500002817D00420009002ABFC22F6 +:1012D0007221062001F045F800285BD0DFF8F40306 +:1012E0009DF80810416002A94A7882608A78C2603D +:1012F000C9780161FFF764FFDFF84C1C0A78DFF85A +:1013000010094378002B227007D000226270A2706F +:10131000E27022716271A2710BE04A6962708A699F +:10132000A2704A68E2708A682271CA6862710A69AA +:10133000A2710A6AE2714A6A22728A6A6272CA6A8F +:10134000A2724A7FE272DFF8042C12782273DFF86F +:10135000002C12786273DFF8FC2B1278A273DFF88E +:10136000F82B1278E273DFF8F42B12782274DFF88E +:10137000F02B12786274DFF8EC2B1278A274C27B27 +:10138000E274002202700878042801D11046087027 +:10139000012000E0002004B010BDDFF8480AC07C46 +:1013A000704780B5052802D1084600F002F80120F8 +:1013B00002BD80B5017841F04103DFF8AC1BCB7072 +:1013C000027801780FF6C03000F0FBFE012002BD6C +:1013D0008E660120C09A002070B584B004460020BB +:1013E000019002A8002101600E460FF6B03000F017 +:1013F000E8FE01210820FEF7F1FEA0208DF8040090 +:1014000001AD30466870022301AA7221062000F067 +:101410004EFF002801D13046C5E0A1208DF8040020 +:10142000FF206870022301AA7221062000F03FFF0E +:10143000002801D13046B6E0AB208DF80400012031 +:101440006870022301AA7221062000F030FF0028F4 +:1014500001D13046A7E0012000900DF10603802263 +:101460007221062000F07DFF002801D130469AE06D +:1014700080208DF804009DF8060040F0450068705B +:10148000022301AA7221062000F011FF002801D1D9 +:10149000304688E0A3208DF80400DFF84409C078C6 +:1014A0006870022301AA7221062000F000FF0028C4 +:1014B00001D1304677E0012000900DF10703AF2203 +:1014C0007221062000F04DFF002801D100206AE0C3 +:1014D0009DF80700C0070BD50420009002ABFC224A +:1014E0007221062000F03DFF00280CD100205AE0B8 +:1014F0003046461CB0F57A7FDDDB0FF6A82000F001 +:1015000060FE00204FE09DF80800207002A841789E +:1015100061708178A170C078E070012000900DF1B9 +:10152000060380227221062000F01BFF002801D153 +:10153000002038E080208DF80400DFF8A808417A08 +:10154000002905D09DF8060000F0BF0068700CE08F +:101550009DF8061001F0BB016970C07A002804D123 +:101560009DF8060000F0BA006870022301AA7221FB +:10157000062000F09CFE002801D1002013E0AB20E3 +:101580008DF8040000206870022301AA7221062051 +:1015900000F08DFE002801D1002004E00021082089 +:1015A000FEF71CFE012004B070BD0000D8D0010081 +:1015B000402000080FF68C21062003F0CFBF1CB599 +:1015C0000FF6EC1000F0FDFD00208DF80400ADF8E2 +:1015D0000600044600E0641C052C13DADFF88C09D1 +:1015E000215C8DF806102018007A8DF80700022380 +:1015F0000DF106027221092000F059FE0028EAD1FF +:10160000002016BD0120009001ABD62272210620D9 +:1016100000F0A7FE002801D1002016BD9DF804109F +:101620000FF6941000F0CDFDDFF8B8079DF8041018 +:10163000C9098176012016BD30B583B0DFF8A44713 +:10164000A07E002804D00FF6801000F0BAFD03E061 +:101650000FF67C1000F0B5FD0020ADF804008020EE +:101660008DF8040001AD03206870022301AA7221E5 +:10167000092000F01CFE002801D100203EBD8F2073 +:101680008DF804000B206870022301AA7221092042 +:1016900000F00DFE002801D100203EBD0320207186 +:1016A0000120A075E07201460220FEF797FD002898 +:1016B00001D100203EBD012000900DF10603E6227D +:1016C0007221092000F04DFE401E8041C043C00F32 +:1016D0003EBD00005C62012000B583B00FF6F8004B +:1016E00000F06FFD0020ADF8060080208DF80600A8 +:1016F00003208DF8070002230DF106027221092054 +:1017000000F0D5FD002801D100200EBD0120009081 +:1017100001AB8F227221092000F023FE002801D1A5 +:1017200000200EBDDFF8BC060021C1720220FEF7CA +:1017300055FD002801D100200EBD0120009001AB15 +:10174000E6227221092000F00CFE401E8041C043B9 +:10175000C00F0EBD705F0120012070472DE9F041E0 +:1017600084B004460020ADF804000290DFF8900336 +:10177000456A002085F85E00DFF86866B07D0128C4 +:1017800003D0707D002840F090800220009001ABD3 +:1017900094227221092000F0E4FD00282DD09DF84C +:1017A0000400A07101AF7878E0710220009001ABD5 +:1017B00096227221092000F0D4FD00281DD09DF84A +:1017C00004002070787860700220009001AB9822AD +:1017D0007221092000F0C5FD00280ED09DF80400FC +:1017E000A0707878E0700220009001AB9A227221FC +:1017F000092000F0B6FD002801D1002097E09DF8F7 +:101800000400207178786071F0782072307960720D +:101810006078217841EA0020E178A27842EA01214B +:101820006279237943EA0222E379A77947EA03231D +:1018300002AF009700F0CCF800281BD1B07D012842 +:1018400034D10020B075DFF828075B21017000213A +:101850004170852181700021C170AE21017100218C +:101860004171702181710121C171EE21017200214C +:1018700041721BE00020B075DFF8F406217801709A +:1018800061784170A1788170E178C170217901712E +:1018900061794171A1798171E179C171217A017216 +:1018A000617A41720298706238E037D0DFF8C00682 +:1018B00001782170417861708178A170C178E17000 +:1018C00001792171417961718179A171C179E171E8 +:1018D000017A2172407A60720020707560782178F8 +:1018E00041EA0020E178A27842EA01216279237975 +:1018F00043EA0222E379A77947EA0323F77894F8C9 +:1019000008C086F803C096F80480647A347102AC8B +:10191000009400F05DF8F77086F80480029840F6B5 +:101920008451884202D1012085F85E00012004B074 +:10193000BDE8F0811CB504460020ADF806008DF826 +:1019400004000120009001AB8F227221092000F0D9 +:1019500008FD002801D1002016BD9DF8040000F00C +:10196000FC008DF80400012C0AD0042C04D0102CAB +:101970001FD0402C22D026E040F001008DF804005A +:101980008F208DF806009DF804008DF80700DFF821 +:1019900054449DF8040000F00300207102230DF16F +:1019A00006027221092000F082FC00280DD10020DF +:1019B00016BD40F002008DF80400E1E740F003009E +:1019C0008DF80400DCE7002016BD0120607316BD11 +:1019D0002DE9F04105460E46174670193818C01A11 +:1019E000401C441024B2002C00D50024DFF8F4136E +:1019F00008790FF24C62805CC978C1F5807110FBE8 +:101A000001F240F6DC2C0CFB02F88902B1F5803FB4 +:101A100001D34FF6FF71C9000A22B1FBF2F1102881 +:101A20002DD18B422BD30120FFF784FF00283ED11C +:101A3000311B0698AC4206DA02682B1B4FF4B475D2 +:101A400005FB03220260B44205DA02684FF47A73A0 +:101A500003FB01210160BC4201DA016801600168F9 +:101A6000002901D50021016040F2A641B8FBF1F147 +:101A70000268B2FBF1F101600120BDE8F08110289D +:101A800007D1642B05D24020FFF754FF00280ED168 +:101A9000CEE7402802D164398B4203D20128C7D156 +:101AA000642BC5D21020FFF745FF0028C0D00020CE +:101AB000E3E70FF2B451092003F050BDC94988741F +:101AC0000120704710B5DFF8AC44202020700020C2 +:101AD00060700A20A0700020E0700A2020710020B1 +:101AE00060713220A0710020E07207222146DFF8E9 +:101AF000880402F040F800206072012010BD000050 +:101B00000060002000B583B000A800210A4606C08E +:101B10000722DFF860140DF1010002F02CF8A0207C +:101B20008DF80000082300AA7221072000F0BFFBF7 +:101B3000401E8041C043C00F0EBD00B583B00020E1 +:101B40008DF80400DFF82C04417B012903D100F05B +:101B5000AAF901200EBD418AFF290CD000290DD021 +:101B6000C27A521CC272491E4182417AD2B291425B +:101B700001D20021C17200F014F805E0818A41828F +:101B80000021C17200F00DF80120009001ABE322AA +:101B90007221072000F0E5FB401E8041C043C00FCA +:101BA0000EBD38B50020ADF80000DFF8C843608AEC +:101BB000002801D1A07A60720722E07AC0EBC00051 +:101BC000DFF8B4134118204601F0D5FFFFF79AFF64 +:101BD00080208DF8000000AD81206870022300AAEB +:101BE0007221072000F063FB002801D1002032BDE4 +:101BF000A7208DF80000208A6870022300AA7221B5 +:101C0000072000F054FB401E8041C043C00F32BD8E +:101C1000C899002030B585B0044600208DF80C002E +:101C2000ADF80E006079029020790190E078009084 +:101C3000A378627821780FF2A83000F0C2FA012070 +:101C4000009003AB80227221072000F08AFB00285D +:101C500001D1002061E0C74D9DF80C0028720120E1 +:101C6000009003AB8F227221072000F07AFB00283E +:101C700001D1002051E09DF80C00A87301200090D4 +:101C800003AB90227221072000F06BFB002801D1EA +:101C9000002042E09DF80C00E87300F0A5F88F20CA +:101CA0008DF80E000DF10E050B20687002230DF16A +:101CB0000E027221072000F0FAFA002801D100205C +:101CC0002BE090208DF80E000120687002230DF1AA +:101CD0000E027221072000F0EAFA002801D100204C +:101CE0001BE0A64D8122FF21284601F011FB802236 +:101CF0002146681C01F03FFF0020287081232A46FE +:101D00007221072000F0D3FA002805D10FF2E82055 +:101D100000F057FA002000E0012005B030BD80B58A +:101D200001780F2904DA934A527A521C8A4205DA62 +:101D30000FF2D02000F045FA002002BD4278202AA0 +:101D400001D3202242700022C2704271C1EBC10156 +:101D5000894A20238B54891800224A704278002A2D +:101D600001D1002201E05200521E8A7182788A70ED +:101D7000C278CA7002790A7140794871012002BDA7 +:101D80007C48417A491C417281720120704738B504 +:101D90000446784D6C82FFF795FE002C00D0AC8293 +:101DA00021460FF2702000F00CFA012032BD71497B +:101DB00048730120704772490870012070477048CD +:101DC0000078704780B56B4908730A7B52000A821D +:101DD00001460FF2502000F0F4F9012002BD00008E +:101DE000489A0020C899002000B583B00020ADF8C3 +:101DF00006008DF8040080208DF8060001208DF883 +:101E0000070002230DF106027221072000F04FFAAD +:101E1000002801D100200EBD10200090594BA022B7 +:101E20007221072000F09DFA002801D100200EBD8C +:101E30000120009001AB80227221072000F091FA6E +:101E4000401E8041C043C00F0EBD00B587B00020CA +:101E5000ADF8000001A8142103F0CCFD80208DF81E +:101E6000000001208DF80100022300AA7221072042 +:101E700000F01DFA002801D1002012E01022414993 +:101E80000DF1050001F077FEA0208DF8040011236C +:101E900001AA7221072000F00AFA401E8041C043C7 +:101EA000C00F07B000BD30B583B00020ADF804000E +:101EB0008DF806002F4C217A0FF2781000F081F98E +:101EC0000020FFF7FBFD002060736072FFF7BDFF8D +:101ED0008F208DF8040001ADA07B6870022301AA59 +:101EE0007221072000F0E3F9002801D100203EBD57 +:101EF00090208DF80400E07B6870022301AA722113 +:101F0000072000F0D4F9002801D100203EBD802038 +:101F10008DF80400207A6870022301AA722107203C +:101F200000F0C5F9002801D100203EBD012000903D +:101F30000DF10603E3227221072000F012FA401E81 +:101F40008041C043C00F3EBD3C5F01207C63012047 +:101F5000EF620120F0620120F1620120F2620120B3 +:101F60007D6301207E630120489A0020D09A0020E2 +:101F700070640120D4620120085401203C4F0120EC +:101F80008D66012090630120233E47452043552064 +:101F9000257820257820257800000000233E47532F +:101FA000454C4600233E4753544552520000000022 +:101FB000233E4C4947500000233E4C4348495020A3 +:101FC0003078257800000000233E3E4C49474F0002 +:101FD000233E4C49474F0000233E4C4947430000F5 +:101FE0004D4244202564202564202564202564205A +:101FF00025642025640000004D6F6265616D2057E7 +:10200000460000004D6F6265616D20486F7020468C +:1020100061696C004D4220486F70436F756E74208B +:10202000256400004D6F6265616D204C656E3D2535 +:10203000640000004D4220436C6F736520256400EE +:102040000104104035100008A510000845110008D3 +:10205000BD110008000000009B13000800000000F4 +:10206000D9130008A3130008BF150008391600088B +:10207000D916000859170008000000005D17000875 +:10208000000000000000000000000000BFF34F8FC0 +:10209000DFF81807016801F4E061DFF84027114319 +:1020A0000160BFF34F8FFEE710B5DFF834474FF400 +:1020B0008E720021204601F02BF9204610BDDFF87A +:1020C0002007704710B5FFF7EFFF044600231A46BC +:1020D0001146084600F06FFAC046C04601F062FDA6 +:1020E000204600F019F801F0B4FF204600F0D0F9C6 +:1020F000204600F015F8204600F01FF800F093F994 +:1021000000206072A072E0722073012060730020D2 +:10211000E075A073012010BD0021C171017231E092 +:1021200010B50446DFF8880601F0E8FDDFF8B406D4 +:1021300001F0E4FD0120607110BD10B5044601F00E +:1021400048FE0120A07110BD38B50446012501F0FC +:10215000F3FE012804D12846E0700020A0700AE0B8 +:10216000022804D10020E0702846A07003E000207F +:10217000E070A0700546284632BD80B502F05AF8DE +:10218000012002BD10B50446E07902F091F9012169 +:10219000217010BD70B504460025E679E171FFF7A6 +:1021A000F1FF002807D02046FFF7BAFF2046FFF7CF +:1021B000C4FF012503E0E6712046FFF7E3FF284650 +:1021C00070BD0EB470B5C1B0054600A84FF4807163 +:1021D00003F010FCFFF773FF044645AB2A464FF4AB +:1021E000807100A803F016FC00A803F031FC451C28 +:1021F00000A82818002100F8011CDFF8EC653078F1 +:10220000401C30707078F021084202D0992003F011 +:102210003FFC03F0AAFC7078401C7070207E2818E8 +:10222000FF2810DA207E002803D0207E00190A2122 +:1022300001762A4600A9207E0019193001F09BFC86 +:10224000207E2818207600A803F0F7FE7078F02191 +:10225000084202D0992003F01BFC7078401E707079 +:10226000C0B2002801D103F07AFC04F0D4FA41B0E6 +:1022700070BC5DF810FB0428DFF8380503D8DFF8E0 +:10228000301501607047DFF85C1501607047DFF8BA +:10229000281551F82000007F002807D0DFF84C05F2 +:1022A00001784A1C0270032900D3EFE670472DE93C +:1022B000F84305460E4617464FF00208DFF828455A +:1022C0006078F021084202D0992003F0E1FB03F08E +:1022D0004CFC6078401C60709DF80000401E8DF83A +:1022E000000017F8019B2846FFF7C5FF00AB4A46E0 +:1022F0003946304602F0F4F9002810D06078F02119 +:10230000084202D0992003F0C3FB6078401E607041 +:10231000C0B2002801D103F022FC01201FE05FFAC7 +:1023200088F8424629460FF2D040FFF74AFF404660 +:10233000A0F101080028D9D16078F021084202D02C +:10234000992003F0A5FB6078401E6070C0B20028A1 +:1023500001D103F004FC2846FFF799FF0020BDE8F7 +:10236000F2832DE9F04704460D4616461F460898AD +:10237000DFF8488488F80000DFF86C9499F80100D1 +:10238000F021084202D0992003F082FB03F0EDFB1C +:1023900099F80100401C89F801002046FFF76BFF07 +:1023A0004FF0020A434632463946284602F048FAC0 +:1023B000002813D099F80100F021084202D099209A +:1023C00003F066FB99F80100401E89F80100C0B2D5 +:1023D000002801D103F0C3FB012022E05FFA8AFA52 +:1023E000524621460FF21C40FFF7EBFE5046A0F18B +:1023F000010A0028D6D199F80100F021084202D044 +:10240000992003F045FB99F80100401E89F801006E +:10241000C0B2002801D103F0A2FB2046FFF737FF2E +:102420000020BDE8F08703F010BAF8B50446022793 +:102430000025DFF884630DE039464F1EC9B200293C +:102440000AD1002804D120690121A94088432061D4 +:1024500002276D1C162D10DA56F82500006E006854 +:1024600080470128E8D121690122AA401143216156 +:1024700056F8251001220A77E3E72069032803D0E4 +:10248000022801D0012802D140F480502061F1BD22 +:1024900002F01EBB02F077BB81B00022ADF8022033 +:1024A000ADF80020C079042808D0062809D00828F3 +:1024B0000AD009280BD00A280CD00EE04FF4C860CF +:1024C0000DE04FF448600AE04FF4C85007E04FF4C5 +:1024D000FA5004E042F2107001E041F27070ADF881 +:1024E00002200DE0BDF80020521CADF80020BDF820 +:1024F00000208242F6DBBDF80220521CADF802201B +:10250000BDF802208A4203D20022ADF80020EEE797 +:1025100001B07047417230B589B004F097FA0446B3 +:10252000FFF7CDFD054600A8242103F063FA002043 +:10253000ADF8220001900A208DF8080000208DF8E7 +:1025400009008DF80A00687A00280DD0002C18D0F8 +:1025500000208DF80000052001900B208DF8080068 +:1025600000A806F0A9FA0CE0002C0AD001208DF892 +:102570000000052001900B208DF8080000A806F04F +:102580009BFA09B030BD02F01ABB02F022BB012158 +:102590000846F8E701210846F7E702210120F2E7A3 +:1025A00002210120F1E702F01FBB10B50446FFF73E +:1025B00086FD447510BD2DE9F843054617460E46C5 +:1025C0004FF47A704FF03C0C4FF4616815FB08F43F +:1025D00016FB0C443C1900FB0434DFF8E4E19EF9DF +:1025E000009019FB08F89EF9019019FB0C8C9EF9DC +:1025F00002804CFA88FCBEF9038000FB0C809EF838 +:1026000008C0BCF1000F20D141EA05001043184377 +:1026100002D001208EF808008EF8005028460028CD +:1026200002D518308EF800008EF801108EF80220C6 +:10263000AEF8033000933B4632469EF900100FF28D +:10264000F410FFF7BEFDBDE8F183A0420ED3A0EB6E +:10265000040CACF2D17CDFF89881C445DCD322466F +:1026600001460FF2AC10BDE8F843AAE5D4D2A4EBC2 +:10267000000CACF2D178DFF87891C845CCD3634632 +:10268000224601460FF2981001B0BDE8F04398E5EC +:1026900010B504002FD004F08FFA4949CA68002A07 +:1026A00000D0841AB1F80320A218A1F8032012B2B6 +:1026B000B2F57A7F06DBA2F57A72A1F803208A7858 +:1026C000521C8A7091F902203C2A04DB3C3A8A7041 +:1026D0004A78521C4A7091F901203C2A04DB3C3AAA +:1026E0004A700A78521C0A7091F90020182A01DBFE +:1026F00000220A70C86010BD3149052201F000BAFD +:102700000FB410B52DED028B2E4C104606F012FBC7 +:102710002D4A2E4B06F026FB206161619FED2C8B2C +:10272000049806F007FB53EC182B06F01BFB206007 +:102730006160059806F0FEFA53EC182B06F012FBC8 +:10274000A060E1609DF81C00207604F118009DF85F +:102750001D1041709DF81E1081709DF81F10C170F2 +:102760009DF820100171BDF8210000EE100AB8EEAE +:10277000400A10EE100A06F0C7FB174A1D4B06F080 +:10278000F1FA06F0E9FBC4F81D00BDF82300A4F837 +:1027900021009DF8250084F82300BDEC028B10BCBD +:1027A0005DF814FB0749242201F0AAB90CED00E002 +:1027B000005400400C9B0020006000209166012026 +:1027C000E063012010610120FCA9F1D24D62503F6D +:1027D0008DEDB5A0F7C6B03E3BDF4F8D0400FA0586 +:1027E0000C43012000580040F89900209066012019 +:1027F0005F4C2605976EA23F49574520256420254A +:102800006400000049524520256420256400000032 +:1028100041542D53657454533120256420256400A0 +:1028200041542D536574545332202564202564206F +:102830002564000041542D536574542025643A25C5 +:10284000643A25642E25640000487047884D0120B5 +:1028500000214FF0804200E092089042FCD3002A11 +:1028600009D05318984203D3401A801A01EB420151 +:1028700049089208F3E708467047002802D400F0A0 +:102880007F0002E0404240F08000C0B2704700F09C +:102890007F01802800D349420846704730B404467F +:1028A0000D46A54200DA2C461546A54200DA2C4614 +:1028B000A34200DA1C46204630BC704730B40446C0 +:1028C0000D46AC4200DA2C461546AC4200DA2C46E6 +:1028D0009C4200DA1C46204630BC70471849002252 +:1028E0004A608A600861C860704770B50546144C3C +:1028F000A0682169626823689A4214DB91FBF3F6B1 +:10290000266190FBF3F0FFF7A3FFA060072804DB2C +:102910002846FFF7E3FF002070BDE6602561002137 +:102920006160A16070BD521C626069182161E1683C +:10293000491B01FB0100A060002070BD00000000E9 +:10294000609A00200EB47FB5044608A80FC80C9DFD +:1029500005FB00F6009605FB01F6019605FB03F664 +:10296000039605FB02F00290204600A9102201F018 +:10297000D7F804B070BC5DF810FB10B40C181C192B +:10298000101910BC70470A7822EA000008707047DE +:102990000A7810430870704730B583B004460D467E +:1029A0000020ADF806000120009001AB2246722104 +:1029B0000720FFF7D6FC002801D100203EBD01A969 +:1029C0002846FFF7E5FF8DF806409DF804008DF8D6 +:1029D000070002230DF1060272210720FFF767FCB2 +:1029E000401E8041C043C00F3EBD30B583B0044699 +:1029F0000D460020ADF806000120009001AB2246F4 +:102A000072210720FFF7ADFC002801D100203EBD58 +:102A100001A92846FFF7B7FF8DF806409DF804008E +:102A20008DF8070002230DF1060272210720FFF73F +:102A30003EFC401E8041C043C00F3EBDDFF8C808C9 +:102A400000210170C17008214170817000F00FBD3C +:102A5000DFF8B4080078032801D101207047002076 +:102A60007047DFF8A4080078042801D101207047DE +:102A70000020704710B5DFF89048217800290FD169 +:102A80000F219F20FFF7B1FF06219F20FFF784FF52 +:102A9000012020700020E07020710120607210BDC4 +:102AA000012952D1617A002954D1217900291CD100 +:102AB000E17802290BD062785208824207D30120C4 +:102AC000E07000F023F9002840F0978062E00129CF +:102AD00060D0A178490881425CD20220E07000F009 +:102AE00038F9002840F0898054E001291ED1E178AE +:102AF00002290AD062785208824206D30120E0708F +:102B000000F08EF9002878D10BE0012909D0A178D6 +:102B10004908814205D20220E07000F0A4F90028A3 +:102B20006BD1E078012859D000202071022020705C +:102B30000020E0700F219F20FFF757FF09219F2001 +:102B4000FFF72AFF0120607210BD022955D1617A7A +:102B5000002902D00020607210BD217900291ED109 +:102B6000E17802290AD062785208824206D3012015 +:102B7000E07000F010F900283FD10BE0012909D0E6 +:102B8000A1784908814205D20220E07000F026F9C0 +:102B9000002832D10020E0700120207110BD0129F1 +:102BA00021D1E17802290AD062785208824206D304 +:102BB0000120E07000F079F900281ED10BE0012916 +:102BC00009D0A1784908814205D20220E07000F0C6 +:102BD0008FF9002811D1E078012802D10020E0709F +:102BE00010BD002020710F219F20FFF7FEFE032063 +:102BF00020700020E0700120607210BD38B5002008 +:102C0000ADF80000DFF804472078FFF740FE9D2173 +:102C10008DF8001000ADFFF730FE6870022300AAA7 +:102C200072210720FFF743FB00280ED06078FFF7E2 +:102C30002EFE9E218DF80010FFF71FFE6870022304 +:102C400000AA72210720FFF732FB31BD3FB581B0EA +:102C5000DFF8B4462078032856D101A80FC8FFF743 +:102C60001DFE054601A80FC8FFF728FE217900299F +:102C700020D1E17802290BD06278AA4208DB01203A +:102C8000E07001A80FC800F055F900283CD10CE015 +:102C900001290AD0A178814207DA0220E07001A858 +:102CA0000FC800F0C4F900282ED10020E0700120E8 +:102CB000207129E0012923D1E17802290BD0627823 +:102CC000AA4208DB0120E07001A80FC800F027FA33 +:102CD000002819D10CE001290AD0A178814207DA35 +:102CE0000220E07001A80FC800F095FA00280BD16F +:102CF00000202071E078012802D10020E07003E07C +:102D0000042020700020E07005B030BD10B582B006 +:102D10000020ADF80000DFF8F4452078FFF7B7FD9C +:102D200010F17B0F01DA002016BD9D218DF80010F7 +:102D3000001FFFF7A2FD8DF801002070022300AAFA +:102D400072210720FFF7B3FA401E8041C043C00F35 +:102D500016BD10B582B00020ADF80000DFF8AC451C +:102D60002078FFF794FD7C2801DB002016BD9D2113 +:102D70008DF80010001DFFF780FD8DF80100207018 +:102D8000022300AA72210720FFF791FA401E80411A +:102D9000C043C00F16BD10B582B00020ADF80000D2 +:102DA000DFF868456078FFF772FD10F17B0F01DAFC +:102DB000002016BD9E218DF80010001FFFF75DFD5D +:102DC0008DF801006070022300AA72210720FFF72E +:102DD0006EFA401E8041C043C00F16BD10B582B0D0 +:102DE0000020ADF80000DFF824456078FFF74FFDC4 +:102DF0007C2801DB002016BD9E218DF80010001DEF +:102E0000FFF73BFD8DF801006070022300AA7221DC +:102E10000720FFF74CFA401E8041C043C00F16BD8B +:102E200010B582B00020ADF80000DFF8E044207853 +:102E3000FFF72DFD10F17F0F01D1002016BD9D2160 +:102E40008DF80010401EFFF718FD8DF8010020706E +:102E5000022300AA72210720FFF729FA401E8041B1 +:102E6000C043C00F16BD10B582B00020ADF8000001 +:102E7000DFF898442078FFF70AFD7F2801D1002071 +:102E800016BD9D218DF80010401CFFF7F6FC8DF853 +:102E900001002070022300AA72210720FFF707FA21 +:102EA000401E8041C043C00F16BD10B582B0002047 +:102EB000ADF80000DFF854446078FFF7E8FC10F14B +:102EC0007F0F01D1002016BD9E218DF80010401EFD +:102ED000FFF7D3FC8DF801006070022300AA722175 +:102EE0000720FFF7E4F9401E8041C043C00F16BD24 +:102EF00010B582B00020ADF80000DFF81044607813 +:102F0000FFF7C5FC7F2801D1002016BD9E218DF85A +:102F10000010401CFFF7B1FC8DF801006070022327 +:102F200000AA72210720FFF7C2F9401E8041C0436A +:102F3000C00F16BD3FB581B000252846ADF8000092 +:102F4000DFF8C44301986178884217DA6079FFF7A7 +:102F50009EFC10F17A0F11DBA4218DF80010001FE8 +:102F6000FFF78BFC00A948706071022300AA722150 +:102F70000720FFF79CF9002853D0012502986178BB +:102F8000884217DAA079FFF782FC10F17A0F11DB83 +:102F9000A5218DF80010001FFFF76FFC00A94870F5 +:102FA000A071022300AA72210720FFF780F90028F0 +:102FB00037D0012503986178884217DAE079FFF766 +:102FC00066FC10F17A0F11DBA7218DF80010001FAD +:102FD000FFF753FC00A94870E071022300AA722198 +:102FE0000720FFF764F900281BD0012504986178B9 +:102FF000884219DA207AFFF74AFC10F17A0F13DBC6 +:10300000A9218DF80010001FFFF737FC00A94870B8 +:103010002072022300AA72210720FFF748F9002836 +:1030200001D1002001E00125284605B030BD3FB5A3 +:1030300081B000252846ADF80000B34CA078019976 +:10304000884216DA6079FFF722FC7B2811DAA42186 +:103050008DF80010001DFFF710FC00A9487060718A +:10306000022300AA72210720FFF721F9002850D07F +:103070000125A0780299884216DAA079FFF707FCAB +:103080007B2811DAA5218DF80010001DFFF7F5FB54 +:1030900000A94870A071022300AA72210720FFF73F +:1030A00006F9002835D00125A0780399884216DA60 +:1030B000E079FFF7ECFB7B2811DAA7218DF80010EF +:1030C000001DFFF7DAFB00A94870E071022300AA97 +:1030D00072210720FFF7EBF800281AD00125A0780D +:1030E0000499884218DA207AFFF7D1FB7B2813DA9B +:1030F000A9218DF80010001DFFF7BFFB00A9487043 +:103100002072022300AA72210720FFF7D0F80028BE +:1031100001D1002001E00125284605B030BD3FB5B2 +:1031200081B000252846ADF80000774C0198617801 +:10313000884217DA6079FFF7AAFB10F17F0F11D0F0 +:10314000A4218DF80010401EFFF797FB00A94870DE +:103150006071022300AA72210720FFF7A8F8002857 +:1031600053D0012502986178884217DAA079FFF7D9 +:103170008EFB10F17F0F11D0A5218DF80010401E9D +:10318000FFF77BFB00A94870A071022300AA7221FF +:103190000720FFF78CF8002837D0012503986178C5 +:1031A000884217DAE079FFF772FB10F17F0F11D038 +:1031B000A7218DF80010401EFFF75FFB00A94870A3 +:1031C000E071022300AA72210720FFF770F800289F +:1031D0001BD0012504986178884219DA207AFFF71C +:1031E00056FB10F17F0F13D0A9218DF80010401E5F +:1031F000FFF743FB00A948702072022300AA722146 +:103200000720FFF754F8002801D1002001E0012534 +:10321000284605B030BD3FB581B000252846ADF841 +:103220000000394CA0780199884216DA6079FFF7DE +:103230002EFB7F2811D0A4218DF80010401CFFF731 +:103240001CFB00A948706071022300AA72210720AC +:10325000FFF72DF8002850D00125A0780299884268 +:1032600016DAA079FFF713FB7F2811D0A5218DF87E +:103270000010401CFFF701FB00A94870A071022359 +:1032800000AA72210720FFF712F8002835D0012587 +:10329000A0780399884216DAE079FFF7F8FA7F28D8 +:1032A00011D0A7218DF80010401CFFF7E6FA00A905 +:1032B0004870E071022300AA72210720FEF7F7FF91 +:1032C00000281AD00125A0780499884218DA207ABB +:1032D000FFF7DDFA7F2813D0A9218DF80010401CDC +:1032E000FFF7CBFA00A948702072022300AA7221CE +:1032F0000720FEF7DCFF002801D1002001E00125B6 +:10330000284605B030BD0000EA6201207D6301203F +:1033100010B5044610460A460146204605F064FEF4 +:10332000204610BDDFF880070021C161DFF87C175F +:1033300000220A7701224A7700221046086381F8AA +:103340002000C87770470FB410B5DFF85C479DF8D0 +:103350001D00411E8941C90F6177201D03A910225C +:1033600000F0DEFBDFF844079DF81E1041770021D6 +:1033700080F8201001779DF80810002907D1217FDF +:103380004A1C227706290ED3012101770BE0002089 +:103390002077607F00289DF8080002D100F030F906 +:1033A00001E000F09DF810BC5DF814FB0FB438B5D7 +:1033B000DFF8F4469DF82400411E8941C90FE177EA +:1033C000201D05A9102200F0ABFBDFF8E0569DF8A8 +:1033D0002600687705A80FC8FFF770FA606168617A +:1033E000002085F820002877E07F002804D105A878 +:1033F0000FC800F0AEF909E0A07F002805A80FC8AB +:1034000002D000F0DFF901E000F018FA31BC5DF8FD +:1034100014FBF0B50446DFF8985605F11C06DFF8FA +:103420008806C17F4A1E9241D20F7275407F411EAD +:103430008941C90FB175DFF87476387F307597F818 +:1034400020002877284639461C2200F069FBB87F07 +:10345000707005F12000DFF85C16102200F060FBB0 +:10346000204629463422BDE8F04000F059BB10B593 +:1034700082B00020ADF80000A0208DF8000000AC64 +:1034800000206070DFF82C0600210174022300AADE +:1034900072210720FEF70BFF002801D1002016BD86 +:1034A000A1208DF80000FF206070022300AA722185 +:1034B0000720FEF7FCFE002801D1002016BD802168 +:1034C000A320FFF769FA3C21A220FFF765FADFF895 +:1034D000D80500218177DFF8D4050163012016BDEE +:1034E00010B50446DFF8C005807F0028204602D0D2 +:1034F000BDE810400BE000F039F8DFF8B005C07F00 +:10350000002803D12046BDE8104053E010BD10B59F +:10351000DFF89845E07F012827D1201DDFF89815B6 +:10352000102200F0FDFA04202070A069C7280FD1F6 +:10353000201D0FC8FFF7C2F9A17F814208DADFF82A +:103540007C05012101700FF28850FEF73AFE07E07A +:10355000DFF86805002101700FF28C50FEF731FE94 +:10356000012084F820000020E07710BD10B5DFF8BE +:103570003C45E17F012909D100F0CBF8002802D0B9 +:103580000420E07710BD0020E06210BD002909D1C1 +:1035900000F0B6F8002802D00220E07710BD00202D +:1035A000E06210BDE06A411CE1620B2801DB0020F3 +:1035B000E06210BD10B5044600F055F8204600F05A +:1035C0005DF8204600F065F8204600F06DF8DFF861 +:1035D000D804416A01EB8102D100642291FBF2F12F +:1035E000826B436B9A4204DAC06A052290FBF2F0C8 +:1035F00003E0806A142290FBF2F0BDE8104091E0F5 +:1036000038B5044600F014F8204600F01AF8DFF848 +:103610009854686A00EB8001C800642190FBF1F1C6 +:1036200004EB8400400000F07DF80120687731BD94 +:10363000DFF874144FF4FA620A62C8224A62FFF794 +:103640004DB9DFF86414C82212FB00F28A623222FC +:1036500012FB00F2CA6200EB800252000A63486368 +:103660008863C863704710B50146DFF83C4404F135 +:1036700030020A2000F025F8E06310BD10B50146C5 +:10368000DFF8244404F12C02322000F01AF8A06381 +:1036900010BD10B50146DFF8104404F12802C8201F +:1036A00000F00FF8606310BD10B5FFF71EF964213C +:1036B00001FB00F4002C02D0204600F013F8204655 +:1036C00010BD10B400EBD0735B101468091900FB37 +:1036D0000131441C91FBF4F11160591891FBF0F099 +:1036E00010BC704710B50146C82900DAC821DFF8C0 +:1036F000B84304F120020A20FFF7E3FF606210BD27 +:10370000DFF8A813496A814201DA012070470020DE +:103710007047DFF89813896A884201DA0120704700 +:103720000020704740F2DD52904201DB40F2DC5055 +:103730000A2901DA0A2102E0652900DB6421081860 +:10374000401D0A2190FBF1F0C0B2D849486288625E +:10375000704780B500F004F8D3480121C17701BD5E +:103760000FB587B0C820019007A883B069460CC880 +:103770000CC10CC80CC10EBC02A8FFF7E3F8D0487E +:1037800002A9102200F0CCF90A20019007A883B00A +:1037900069460CC80CC10CC80CC10EBC02A8FFF7CE +:1037A000D1F8C84802A9102200F0BAF9C64807A902 +:1037B000102200F0B5F9C54807A9102200F0B0F9B1 +:1037C0000BB000BD00BF1FB5B84CE07F002802D091 +:1037D00001280ED01FBD0020A061201D00A91022CD +:1037E00000F09EF902202070012084F82000E0778C +:1037F0001FBD201D00A9102200F092F901202070A9 +:10380000A069401CA061C72807D10121AB20FFF7A8 +:10381000ECF80021AB20FFF7BFF8A069C82809DB4E +:103820000020A0610121AB20FFF7DFF80021AB20D1 +:10383000FFF7B2F8012084F820001FBD1FB59B4C94 +:10384000E07F002803D0012084F8200003E000A8D6 +:103850000FC800F037F800A80FC800F00AF8607F22 +:10386000002805D0206B292802DBBDE81F40D8E0E6 +:103870001FBD1FB58D4CE07F012804D002280DD05C +:10388000042817D01FBD201D00A9102200F048F900 +:1038900001202070A069401CA0611FBD0020A06114 +:1038A000201D00A9102200F03BF902202070012009 +:1038B000E0771FBD042020700020E077012084F80D +:1038C00020001FBDFFB585B07848016B491C01631E +:1038D00005A883B069460CC80CC10CC80CC10EBC4D +:1038E00001A800F025F805A883B069460CC80CC1F2 +:1038F0000CC80CC10EBC01A800F040F8734C94E851 +:103900000F00FFF73AF805466A4E6F4F97E80F0031 +:10391000FFF733F88542304604DA2146102200F0E2 +:10392000FFF803E03946102200F0FAF809B0F0BDC4 +:103930000EB430B588B004460BAD0BA80FC885E8AF +:103940000F005F4802900BA882B069460CC80CC1FA +:103950000CC80CC10CBCC82103A800F035F85A4DA6 +:10396000284603A9102200F0DBF820462946102241 +:1039700000F0D6F808B030BC5DF810FB0EB430B5DE +:1039800088B004460BAD0BA80FC885E80F004D4862 +:1039900002900BA882B069460CC80CC10CC80CC1BF +:1039A0000CBC0A2103A800F00FF8484D284603A9D3 +:1039B000102200F0B5F820462946102200F0B0F899 +:1039C00008B030BC5DF810FB0CB47FB504460D4662 +:1039D00008AE08A80FC886E80F000C9E32460146C4 +:1039E0002846FFF76EFE0090321D09992846FFF722 +:1039F00068FE019006F10C020B992846FFF761FE64 +:103A0000039006F108020A992846FFF75AFE029031 +:103A1000204600A9102200F083F804B070BC5DF8C5 +:103A20000CFB70B582B00020ADF80000214C94E88A +:103A30000F00FEF743FF401D1C4DFF2802DDFF2055 +:103A4000A87700E0A877A0208DF8000000AE686A93 +:103A5000707070782074022300AA72210720FEF78C +:103A600026FC002801D1002076BDA1208DF80000A1 +:103A7000A87F7070022300AA72210720FEF717FCAE +:103A8000002801D1002076BD8021A320FEF7ADFFE4 +:103A90003C21A220FEF7A9FF0348012181770020E5 +:103AA0002863084676BD0000485D0120A45F012020 +:103AB000D85F01206C6301204C5D01208E660120DF +:103AC000A0630120C0630120B0630120D063012006 +:103AD000233E445F6C6F6E675F67657374757265D4 +:103AE000203A202564000000233E525F6C6F6E6711 +:103AF0005F67657374757265203A20256400000065 +:103B000062B38B0708D0521E11F8013B00F8013B4D +:103B100000F024808B07F6D1830740F0208000BF9F +:103B2000103A07D330B4B1E83810103AA0E8381092 +:103B3000F9D230BC530724BFB1E80810A0E8081040 +:103B400044BF51F8043B40F8043BD20724BF31F88E +:103B5000022B20F8022B44BF0B7803707047083A01 +:103B600007D3B1E80810083A40F8043B40F804CB0A +:103B7000F7D25307E4E710B50446FFF7C1FF20462C +:103B800010BD50F8041B61B150F8042BD30744BF9B +:103B9000A9F101039A18002342F8043B091FFAD146 +:103BA000EFE7704730B583B00121032005F0B4FA88 +:103BB000DFF8804C204605F04BFBDFF87C5C2846A4 +:103BC00005F046FB01208DF8040000208DF805006B +:103BD00001208DF8060000208DF8070001212846FD +:103BE0000183C0460120009000A9284605F08CFB07 +:103BF000022128460183C0460220009000A92846E1 +:103C000005F082FB01208DF8040000208DF80500EE +:103C1000ADF806004FF48070009000A9284605F02A +:103C200073FB4FF4807128464183C04601208DF814 +:103C3000040000208DF8050001208DF8060000200A +:103C40008DF807004FF48050009000A9204605F041 +:103C50005BFB4FF4805120464183C046042206217D +:103C6000284605F09FFB04220721284605F09AFB11 +:103C700002208DF8040001208DF805008DF8060063 +:103C800000208DF807004020009000A9284605F08C +:103C90003BFB8020009000A9284605F035FB04225C +:103CA0000A21284605F07EFB09220321284605F05B +:103CB00079FB02208DF8040001208DF805008DF8B5 +:103CC000060000208DF807004FF48060009000A9E6 +:103CD000284605F019FB0820009000A9284605F0A9 +:103CE00013FB286820F0300040F0100028602068A6 +:103CF00020F0300040F01000206037BD1FB5DFF825 +:103D00003C4BA04230D101214FF4001005F00FFAD6 +:103D10000121022005F000FA01214FF4001005F006 +:103D200027FA00214FF4001005F022FA0020ADF828 +:103D300004004BF6FF70ADF806004FF48060ADF85C +:103D40000A004FF48040ADF80C000A20ADF80800DE +:103D5000DFF8CC0C009000A9204605F066FB01219D +:103D6000204605F0C5FB1FBDDFF8B84CA0422FD19F +:103D700001214FF4800005F0DAF90121022005F05D +:103D8000CBF901214FF4800005F0F2F900214FF446 +:103D9000800005F0EDF90020ADF804004BF6FF704F +:103DA000ADF806004FF48060ADF80A004FF4804093 +:103DB000ADF80C000A20ADF80800DFF8640C0090A4 +:103DC00000A9204605F031FB0121204605F090FBBB +:103DD0001FBD2DE9F04192B001214FF4805005F054 +:103DE000B1F90121084605F097F901214FF480004F +:103DF00005F092F9DFF83C4A05221146204605F00D +:103E0000D1FA05220721204605F0CCFA0522062129 +:103E1000204605F0C7FA05220421204605F0C2FA23 +:103E200002208DF8040001208DF805000020ADF877 +:103E300006002020009000A9204605F065FA8020A9 +:103E4000009000A9204605F05FFA4020009000A9EC +:103E5000204605F059FA1020009000A9204605F0F0 +:103E600053FADFF8C44B204605F0A4FBDFF8BC5B37 +:103E70000020288068600120288100206881E86097 +:103E80000720288200206880DFF8A46B304605F008 +:103E900001FCDFF8A07B384605F0FCFB4FF48060A6 +:103EA000069000210D9103210E9100210F910A919E +:103EB0000890DFF8180C03900846109009900790BE +:103EC0004FF400300C9008460B904FF0C068CDF8CE +:103ED0000880402005900846049002A9304605F06D +:103EE0005DFC00200B90CDF80880059005F11400D2 +:103EF000049002A9384605F051FC0020688029464C +:103F0000204605F086FB01220221204605F0B0FB89 +:103F100001221146204605F0ABFB0121204605F0A9 +:103F20009BFB0021304605F060FC0021384605F07F +:103F30005CFC12B0BDE8F08130B589B001214FF0D2 +:103F4000805005F0F4F8012005F0B8FC01214FF491 +:103F5000802005F0E1F80F2005F060FE04461020F7 +:103F600005F05CFE0546012005F0D3F8002005F0C1 +:103F7000D0F821460F2005F044FE2946102005F018 +:103F800040FE00214FF4802005F0C6F8012005F026 +:103F90005FF8412005F00DF90028FAD04FF4807049 +:103FA00005F0A1F8012005F0B1F805F0DAFC3F209A +:103FB000069040F2FF1007900020059005A805F03C +:103FC00087FC0020029002A905F0ECFC00208DF88F +:103FD000070001208DF804008DF805008DF806001B +:103FE00001A9002005F057FD4FF4800005F0F6FE12 +:103FF0004FF48000039000208DF8100008208DF809 +:10400000110001208DF8120003A805F0A5FE032081 +:104010008DF800000D208DF8010000208DF80200C1 +:1040200001208DF8030000A805F0E5FE032005F04F +:10403000A6FD4FF4804005F05CFE4FF4800005F0D3 +:10404000CDFE01214FF4804005F019FE012009B09A +:1040500030BD10B586B00121084605F05DF801219C +:104060004FF4804005F06EF800208DF810008DF8B8 +:10407000130001200390DFF8BC4703A9204605F098 +:1040800043F90420039003A9204605F03DF90021DF +:10409000084605F0E9FE0221002005F0E5FE0020BB +:1040A0008DF8080001208DF80A0001900C208DF891 +:1040B000090001A805F050FE042001900C208DF8A5 +:1040C000090001A805F048FE042005F087FE28201D +:1040D0008DF800000F208DF8010000208DF80200FF +:1040E00001208DF8030000A805F085FE06B010BD84 +:1040F00010B586B00121084605F00EF801214FF4F5 +:10410000804005F01FF800208DF810008DF8130096 +:104110004FF40064039403A9DFF8180705F0F4F8DE +:104120000B21002005F0A0FE00208DF808000120E2 +:104130008DF80A0001940C208DF8090001A805F003 +:104140000BFE204605F04AFE28208DF800000F20C7 +:104150008DF8010000208DF8020001208DF8030089 +:1041600000A805F048FE06B010BD30B58DB004467D +:1041700001214FF4807004F0E5FF00A805F0FEF87F +:104180000A20009003208DF8040000208DF807001D +:1041900000A9DFF8A00605F0B7F805F079FE02A83F +:1041A00005F0BBFE4FF48030039002A805F0A7FE97 +:1041B00006A805F09AFEDFF8DC5A06A9284605F0A5 +:1041C00074FE072301222146284605F0B7FE01218F +:1041D000284605F0F8FE0121284605F0A4FE0DB0A2 +:1041E00030BD38B5DFF8AC4A204605F0E7FE4FF4A5 +:1041F0007A750221204605F0FDFE002803D12846ED +:10420000451E0128F5DA2046BDE8324005F0E6BE3D +:1042100080B50021DFF87C0A05F085FE00214FF40F +:104220008070BDE8044004F08DBFDFF8280B006803 +:104230007047000038B5040040D0012005F03EFB77 +:10424000002005F0B6FC4FF40055042005F032FDC7 +:10425000012804D12846451E80B20028F5D100EE81 +:10426000104AB8EE400ADFED800A80EE800AF0EED8 +:10427000000A20EE200ADFED7D0A80EE800ABDEE06 +:10428000C00A10EE100A401E80B205F088FC4FF400 +:10429000804005F02EFD4FF4800005F09FFD0120C9 +:1042A00005F087FCDFF8AC0A01218160046021463B +:1042B0000FF22000BDE83440FDF783BFDFF8940A19 +:1042C00000210160012005F0F9FA0020BDE832402C +:1042D00005F06FBC536574525443203D20256400A3 +:1042E00030B4014601200023DFF86C2A1C4694609C +:1042F000946814F00C0FFBD10C460B2C55D8DFE85A +:1043000004F02054545406192031383F464D946827 +:1043100044F080049460DFF8444A4FF4C06525609F +:10432000146824F080741460DFF8B44ADFF8305A5F +:1043300025603BE00346DFF8A84ADFF8A85A25606D +:1043400034E094689460DFF8144A4FF4C065256047 +:10435000146824F080741460DFF8844ADFF8885A07 +:10436000256023E00223DFF8784ADFF8805A2560D1 +:104370001CE00323DFF8684ADFF8745A256015E073 +:104380000423DFF85C4ADFF8C45A25600EE00523F9 +:10439000DFF84C4ADFF8B85A256007E00623DFF85B +:1043A000404ADFF8B05A256000E01846002B4AD09A +:1043B00003EBC3030FF2B8041B19946894601468EC +:1043C00024F080741460146824F0806414609C7875 +:1043D0001D8844EA8514DD786D086D1E44EA0544A5 +:1043E0001D7944EA05645460DC881D7A2D0745EA8E +:1043F0008414DFF8C05A2C60146844F08074146090 +:104400001468A401FCD55B7943F4C063DFF84C4920 +:1044100023609368936093689360052904D1916841 +:1044200041F09001916005E00A2903D1916841F4BF +:1044300080519160916841F002019160916801F0B2 +:104440000C010829FAD1DFF898190968DFF8682A01 +:10445000914207D2DFF8F41A0A6822F4404242F48B +:1044600080420A6030BC704700007A440000004778 +:10447000200110040F03020103F00010060F0102D7 +:104480000103C00010080F01020103C00010060F55 +:1044900001020103F00010060F01020103C8001021 +:1044A000040F02020103A80010020F03020103001F +:1044B00016E7002800E0401EFDD170477CB50726B6 +:1044C000DE4988426BD101208DF804008DF805008B +:1044D0008DF8060000208DF8070040200090DFF8DE +:1044E0008C5A00A9284604F00FFF8020009000A9F4 +:1044F000284604F009FF402128464183C0460F208A +:10450000FFF7D7FF402128460183C0460F20FFF761 +:10451000D0FF3046461E80B20028ECD180200090AB +:1045200000A9284604F0F0FE402128464183C046F9 +:104530000520FFF7BEFF802128460183C0460520E5 +:10454000FFF7B7FF402128460183C0460A20FFF746 +:10455000B0FF402128464183C0460520FFF7A9FF50 +:10456000802128464183C0460520FFF7A2FF022094 +:104570008DF8040001208DF805008DF8060000205C +:104580008DF807004020009000A9284604F0BCFEEA +:104590008020009000A9284604F0B6FE73BDDFF825 +:1045A000841488426AD101208DF804008DF805003A +:1045B0008DF8060000208DF807004FF48064009409 +:1045C000DFF8A85900A9284604F09EFE08200090B4 +:1045D00000A9284604F098FE214628464183C0469B +:1045E0000A20FFF766FF214628460183C0460A20BD +:1045F000FFF75FFF3046461E80B20028ECD108204E +:10460000009000A9284604F07FFE214628464183F9 +:10461000C0460520FFF74DFF082128460183C0460C +:104620000520FFF746FF214628460183C0460A20A1 +:10463000FFF73FFF214628464183C0460520FFF78C +:1046400038FF082128464183C0460520FFF731FF87 +:1046500002208DF8040001208DF805008DF8060079 +:1046600000208DF80700009400A9284604F04CFEB5 +:104670000820009000A9284604F046FE73BD10B53E +:10468000DFF8EC480121206804F06BFF206804F09B +:104690009DFE2068FFF732FB05E02068FFF70EFF64 +:1046A0002068FFF72BFB4FF40031206804F064FF13 +:1046B0000028F2D110BD30B40022838A008BDFF8CD +:1046C000B048656843EA00400840000255EA1020FF +:1046D00060600840884200D10122104630BC70471B +:1046E0002DE9F84F04460D4616464FF420491F7831 +:1046F000DFF87C884FF40031D8F8000004F03CFF6C +:10470000002808D04846A0F101090028F2D1FFF79F +:10471000B6FF00208CE0D8F8000001884FF6FF5269 +:10472000114001800121D8F8000004F0EDFE4FF4A3 +:10473000805AD1460020C8F80400D8F800B0DFF84D +:1047400034185846FFF7B7FF002805D14846A0F1B6 +:1047500001090028F1D163E0D146002221465846E4 +:1047600004F0EAFE0020C8F80400D8F80040DFF8A2 +:1047700008182046FFF79FFF002805D14846A0F102 +:1047800001090028F1D14BE03146C9B2204601822F +:10479000C046D1460020C8F80400D8F80040DFF831 +:1047A000DC172046FFF787FF002805D14846A0F117 +:1047B00001090028F1D133E0012F15D129782046D5 +:1047C0000182C046D1460020C8F80400DFF8B017C7 +:1047D000D8F80000FFF76FFF002823D14846A0F16A +:1047E00001090028F2D11BE03846471EC0B200285C +:1047F00018D015F8011BD8F800000182C046D14638 +:104800000020C8F80400DFF87817D8F80000FFF798 +:1048100052FF0028E8D14846A0F101090028F2D152 +:10482000002005E00121D8F8000004F079FE012005 +:10483000BDE8F28F00000240000402400054004036 +:104840002DE9F54F81B00D461E464FF420483778CC +:10485000DFF81C474FF40031206804F08DFE00287B +:1048600008D04046A0F101080028F3D1FFF707FF68 +:104870000020D3E0206801884FF6FF5211400180EC +:104880000121206804F040FE4FF48059C846002002 +:104890006060DFF8E0A6D4F800B051465846FFF754 +:1048A0000AFF002805D14046A0F101080028F2D1F6 +:1048B00091E000229DF80410584604F03DFEC846E1 +:1048C00000206060D4F800B0DFF8AC165846FFF75F +:1048D000F2FE002805D14046A0F101080028F1D1E0 +:1048E00079E0BDF80810C9B258460182C046C846F2 +:1048F000DFF89016206804F03FFE002805D14046FE +:10490000A0F101080028F3D165E00121206804F03E +:10491000FBFDC84600206060D4F800B05146584600 +:10492000FFF7C9FE002805D14046A0F10108002884 +:10493000F2D150E001229DF80410584604F0FCFD2D +:10494000022FC84639D2DFF84016206804F014FE62 +:10495000002805D14046A0F101080028F3D13AE033 +:104960000021206804F0F1FD2068018B012104F092 +:10497000D7FDC846DFF81416206804F0FDFD0028B6 +:1049800005D14046A0F101080028F3D123E02068BA +:10499000008AC0B228703078401E3070C846206847 +:1049A0000188890505D54046A0F101080028F6D107 +:1049B00011E0012104F0C9FD2BE000206060DFF868 +:1049C000D0152068FFF777FE002806D14046A0F1F9 +:1049D00001080028F3D1002020E0012616E0012F75 +:1049E0000CD1012E0AD100263146206804F0ADFD1D +:1049F0002068818A018B012104F092FD2068818A60 +:104A0000490603D5008A05F8010B7F1EFFB2002F6F +:104A1000E5D10121206804F098FD0120BDE8FE8F5A +:104A2000801A06000058004000300140EC60012070 +:104A30008864024010640240DFF8580501680829C4 +:104A400033D1DFF814130A6842F080720A604268BA +:104A5000B2F1806F03D10A6842F080620A600A688E +:104A60009201FCD58A6842F002028A608A6802F0EC +:104A70000C02082AFAD14268B2F1806F02D10A68AA +:104A80001201FCD5DFF858130968DFF82C24914295 +:104A900007D2DFF8B8140A6822F4404242F4804298 +:104AA0000A6000210160416070474168B1F1806F88 +:104AB00009D1A9490A6842F080620A600A681201B5 +:104AC000FCD5002141607047000000000C3001401F +:104AD000DFF8C404016841F080510160DFF86C0424 +:104AE00001688908890041F001010160DFF8AC0428 +:104AF0000FF205014160704738B5DFF8A444208803 +:104B000040F004002080FDF7DAFA807A012803D112 +:104B1000012004F0D6FE02E0002004F0D2FEDFF80F +:104B200084548021DFF8800404F0ACFD002818D103 +:104B300072B68948DFF85C14826802F00C020A60E1 +:104B4000006800F080604860286840F00400286039 +:104B500030BF62B6286820F004002860FFF76CFFC1 +:104B60000CE0608840F004006080286820F00400B9 +:104B7000286030BF286840F004002860608840F05A +:104B80000400608031BDDFF8140440680047DFF89E +:104B90001C14012806D010D3032809D005D30428FB +:104BA00009D00AE0DFF8C41307E0DFF8041404E0DA +:104BB000DFF8001401E0DFF800140846704710B574 +:104BC0000C46FFF7E4FF214689B2BDE8104004F02F +:104BD000E5BB10B50C46FFF7DAFF214689B2BDE808 +:104BE000104004F0DDBB0000E0B500238DF8083074 +:104BF00001238DF80A30002A03D10C228DF80920F8 +:104C000002E008228DF8092004283CD8DFE800F0F3 +:104C1000030D192222004FF40060019028208DF826 +:104C200000000F208DF801001CE0184601901020B4 +:104C30008DF8090006208DF800000E208DF8010087 +:104C400010E00220019007208DF800000F208DF861 +:104C5000010007E00420019008208DF800000F20DB +:104C60008DF8010000208DF80200012903D11846BB +:104C70008DF8030001E08DF8030001A805F06CF841 +:104C800000A805F0B8F807BD4FF40061C74804F06C +:104C90007EBB00000020014010B5044601214FF406 +:104CA000802004F039FA2146102004F0AAFF0021E8 +:104CB0004FF48020BDE8104004F02EBA10B5012159 +:104CC0004FF4802004F028FA102004F0A7FF0446D7 +:104CD00000214FF4802004F01FFA7B2004F069FAD1 +:104CE000002802D09AA0FDF76CFA7A2004F061FA4D +:104CF000002802D097A0FDF764FA792004F059FA51 +:104D0000002802D094A0FDF75CFA7C2004F051FA50 +:104D1000002802D091A0FDF754FA7D2004F049FA52 +:104D2000002802D08EA0FDF74CFA7E2004F041FA54 +:104D3000002802D08BA0FDF744FA7F2004F039FA56 +:104D4000002802D088A0FDF73CFA04F048FA20467B +:104D5000C0B210BD7C64012000380240003C02401B +:104D600000127A003EB50C4615460422014602A800 +:104D7000FEF701FF0422214601A8FEF7FCFE0422F3 +:104D8000294600A8FEF7F7FE02A9002004F00AFE5B +:104D900001A9002004F07FFE04F078FE0446874A53 +:104DA000002300981946101A63EB0101490241EAF9 +:104DB000D051400205F048F90090844205D2011B11 +:104DC0004FF0004004F037FF37BDA04207D2C4F5D2 +:104DD0000070009909184FF0004004F02CFF37BD17 +:104DE000AC9A0020809698000024F40000366E01F2 +:104DF0000048E8012DE9704384B004460D4616468C +:104E000002A9002004F01DFE01A9002004F093FE79 +:104E100004F03CFE0090694AA2FB00894FEA582842 +:104E200048EAC958A2EB08000090042202A92046D3 +:104E3000FEF7A1FE042201A92846FEF79CFE0422EB +:104E400000A93046FEF797FEBDE87F83005A620254 +:104E500080F0FA0200BD0105F0B4049C059D8E1E91 +:104E6000012E01DA0C36401E3C216427B0FBF7F717 +:104E7000C7EB90074FF4C87CB0FBFCFC674440F2E2 +:104E80006F1C0CFB06F64FF00C0CB6FBFCF6F6198B +:104E9000921940F26D1606FB0020494A101800EBEB +:104EA000400203EBC20001FB004001FB0050F0BCDC +:104EB0007047000084380240018793031CB50C46FC +:104EC00001680191416800918368C2680169491CC9 +:104ED000406900F26C70FFF7BFFF2060002016BD34 +:104EE00010B58EB037480068C405E40D01A9002054 +:104EF00004F0A7FD00A9002004F01DFE9DF80400A9 +:104F000006909DF8050005909DF8060004909DF818 +:104F10000100401E08909DF8020007909DF80300D4 +:104F20006430099002A904A8FFF7C8FF4FF47A7013 +:104F300010FB04F0400AC0F57A700390029A4FF417 +:104F40007A73C117E3FB02010EB010BD0070004080 +:104F5000504F520050494E00424F520053465400A9 +:104F600049574400575744004C5057000004024032 +:104F70000C9B002001000300820007008000070056 +:104F80008400070004000010020000104000001020 +:104F90000200030084650120403802407C64012047 +:104FA0001800024010ED00E0003001400000024017 +:104FB00000080240000C02400010024000CA9A3B68 +:104FC0007505F5FF282800405060026041600860C8 +:104FD00070470A68F8E748600160704701684068F8 +:104FE000F9E7F8B50600DFF8C05802D505F158001A +:104FF000F2BD05F158040020296F00E0096805F1B1 +:105000007002914204D00C46A2689642F6D101206B +:10501000002840D1A86FD0F88070182005F08CF8D7 +:105020000446A660002F05D0B74203D2B6FBF7F0C6 +:10503000784300E03046E060002F02D0B74200D253 +:105040003E46266100202075DFF860683078401CFD +:1050500030707078F021084202D0992000F018FDDD +:1050600000F083FD7078401C707005F170012046DF +:10507000FFF7AFFF7078F021084202D0992000F0CE +:1050800007FD7078401E7070C0B2002801D100F09A +:1050900066FD01F0C0FB2046F2BD38B5044694F928 +:1050A0001400002829D1DFF804582878401C287003 +:1050B0006878F021084202D0992000F0E9FC00F065 +:1050C00054FD6878401C68702046FFF787FF204633 +:1050D00005F04AF86878F021084202D0992000F0E3 +:1050E000D7FC6878401E6870C0B2002801D100F07B +:1050F00036FDBDE8314001F08EBB31BDF8B5044648 +:1051000008466FF00045FFF76CFF064694F905006E +:1051100094F90410814214D1C01C800005F00CF8F1 +:10512000074694F90500012807DB8200216838460C +:10513000FEF721FD206805F017F827606079C01C94 +:10514000607194F90400411C2171216841F82060CC +:10515000DFF85C07864202D0307D401C30750020AD +:1051600008E0216851F820108A68954201DB154655 +:10517000A160401C94F904108842F2DBF1BDF8B53F +:1051800004466FF00046DFF8202702F1580502F1CF +:1051900058004FF0FF33002704E0664501DB664608 +:1051A00075467F1C94F904C067450DDAD4F800C039 +:1051B0005CF827E0DEF808C0002BEED58C45ECD17A +:1051C00070463B465BB2ECE7002B11D4BCF1010FFB +:1051D0000EDB06E0216801EB8306766841F8236068 +:1051E0005B1C94F904104E1EB342F3DB491E21717F +:1051F00002F15801884204D0017D491E0175FFF774 +:105200004CFFA560F1BD10B4C26A836B406C9C6812 +:10521000002C02D56FF0004300E01B698468002C6D +:1052200002D56FF0004000E00069984200DD1846AA +:10523000D2685143884201DB012000E0002010BC0D +:10524000704738B5DFF860168A6FD36E012490F985 +:105250000850AC402343D36601F66C11FFF7B9FE4A +:10526000012032BD10B5DFF84016896FCA6E0123E8 +:1052700090F90840A3409A43CA66FFF7AFFE0120A9 +:1052800010BD012070472DE9FC4104460D4616462D +:105290001F4604F12400FFF731FF07EB470004EB42 +:1052A0008008314608F13000FFF728FF019598F992 +:1052B000340000903B46627A94F908100FF2F450E3 +:1052C000FCF77FFFBDE8F3812DE9FC4104460D4664 +:1052D00016461F4604F12400FFF751FF07EB470075 +:1052E00004EB8008314608F13000FFF748FF0195D4 +:1052F00098F9340000903B46627A94F908100FF256 +:10530000C850FCF75EFFBDE8F381C16A8A68012AD4 +:1053100009DB0969012906DA006D002801D50020A2 +:105320007047022070470020704701EB410200EBFC +:105330008201896B8A68012A09DB0969012906DA79 +:10534000006D002801D50020704702207047002022 +:105350007047002900D5D8E7E7E7012900DA0121E5 +:1053600013460A468FE7012900DA012113460A464F +:10537000AAE7DFF83405C06A417A481E8041C00FB1 +:10538000704713464FF0FF3211467CE713464FF04B +:10539000FF32114698E780B5DFF80C050068417AC6 +:1053A000002902D1006E40688047012002BD80B50F +:1053B000FFF758FFDFF8F0040068417A002902D1B6 +:1053C000006E80688047012002BDB1F57A7F01DC64 +:1053D0004FF47A7113460A464FF4FA7153E7B1F568 +:1053E0007A7F01DC4FF47A7113460A464FF4FA7162 +:1053F0006AE710B50446002922D5E06A81680129D0 +:105400001CDB0069012819DA02212046FFF7FBFEA8 +:10541000002813D194F954004FF0FF31884204D191 +:10542000002084F85400012010BD002806D101207E +:105430006077084684F85400022010BD002010BD9B +:10544000BDE8104071E74FF0FF3280F85420F8E6D5 +:10545000DFF85424926FD2F88020A03252420265C5 +:10546000EFE600290AD5C06A8168012904DB0069DA +:10547000012801DA022070470020704755E7B5295E +:1054800000DAB42113460A463C21FCE6B52900DACD +:10549000B42113460A463C2116E710B504460029FC +:1054A00026D5E06A8168012920DB006901281DDA20 +:1054B00003212046FFF7A7FE002817D194F95400D6 +:1054C0004FF0FF31884204D1002084F854000120BD +:1054D00010BD002803D1012084F8540010BD01281C +:1054E00004D1084684F85400022010BD002010BDED +:1054F000BDE8104019E74FF0FF3280F85420DFF884 +:10550000A823926FD2F88020B4325242026598E606 +:10551000DFF89423926FD2F88020C832524202659D +:105520008FE613464FF0FF321146ACE613464FF0BC +:10553000FF321146C8E680B5FFF783FEFCF7BFFDDA +:1055400000210175012002BD80B5FFF78BFEFCF73D +:10555000B6FD00210175012002BD00002DE9F041DA +:105560000C46D14D55F82060307206F154070FF209 +:105570006C313961152800F22E81DFE810F0160039 +:105580002600330053004300620073008200B20023 +:105590009200A200C200D200E000EC00F900070176 +:1055A0001301200120012001200106F1080006213D +:1055B00041760A21817605F67411416040F2DC5192 +:1055C00081600FF23430386105E106F108000621F0 +:1055D00041760A21817605F6507141604FF496714B +:1055E0008160F8E006F108000C21417610218176F7 +:1055F00005F5805190314160102181600FF24C30EF +:105600003861E8E006F10800072141760B21817638 +:1056100005F58051843141600B2181600FF22C30FF +:105620003861D8E006F10800062141760A2181762A +:1056300005F5855141600A2181600FF21030386113 +:10564000C9E006F10800062141760A21817605F5B8 +:105650008051AC3141604FF4FA7181600FF2083033 +:105660003861B8E006F108001421417618218176EE +:1056700005F595514160182181600FF25C30386169 +:10568000A9E006F10800022141760621817605F5A0 +:105690009051D4314160062181600FF204303861AD +:1056A00099E006F108000A2141760E21817605F580 +:1056B0009051C43141600E2181600FF2C8203861E1 +:1056C00089E006F10800012141760521817605F582 +:1056D0009051DC314160052181600FF2E02038619A +:1056E00079E006F10800052141760921817605F56A +:1056F0009051B8314160092181600FF23420386146 +:1057000069E006F10800062141760A21817605F557 +:105710009051E43141600A2181600FF2F810386144 +:1057200059E006F10800012141760521817605F551 +:105730009051F031416040F2866181604BE006F1AA +:105740000800012141760521817605F5CC514160A3 +:10575000052181603FE006F108000C21417610210F +:10576000817605F5C851883141601021816032E0B1 +:1057700006F10800112141761521817605F5C85101 +:105780009831416041F66631816024E006F10800FD +:10579000112141761521817605F55451416015217D +:1057A000816018E006F10800042141760821817625 +:1057B00005F5C85178314160082181600BE006F1A0 +:1057C0000800012141760521817605F580517C3163 +:1057D00041600521816006F10800002101754175D5 +:1057E00081750176C1600161417006F128080846A3 +:1057F000C8F828004FF0FF3086F854007880062261 +:1058000006F15800FDF784FD002010E000EB400198 +:1058100006EB8101002281F8342034314A7005F111 +:1058200058024A6006EB800100228A64401C02286C +:10583000ECDB002086F8280088F8010005F158000C +:10584000C8F80400FC60BDE8F08110B5164CFCF708 +:10585000FBFFA067002006E0682111FB00417C31BE +:1058600044F82010401C1628F6DB4FF0FF3020666D +:1058700060660020A06605F015FF06F076FD07F0D3 +:105880001AFAFBF7A5FB07F09BFBFBF793FEFCF76F +:1058900010F907F0FFFB07F036FF07F000FCBDE84A +:1058A000104007F00DBC000000600020F8990020B7 +:1058B0005860002041442025642025642025642070 +:1058C00025642C2025640000524D20256420256489 +:1058D00020256420256420256400000083520008F0 +:1058E0004352000883520008655200085B530008C9 +:1058F00067530008535300087353000843520008CD +:1059000073530008655200085B5300086753000892 +:10591000535300089753000843520008835200086D +:10592000AF530008835300088D53000853530008F9 +:10593000835200084754000883520008655200084B +:10594000CB530008DF530008F353000883520008CC +:105950005154000883520008655200085B53000848 +:10596000675300086354000883520008F754000886 +:1059700083520008655200087F5400088D540008C7 +:105980009B540008835200081155000883520008F8 +:10599000655200085B530008675300085353000822 +:1059A0008352000837550008835200084955000803 +:1059B000235500082D550008535300088352000852 +:1059C0004352000883520008655200085B530008E8 +:1059D00067530008535300088352000843520008DD +:1059E0008352000865520008235500082D55000811 +:1059F00053530008002207F023BF8268521C8260C4 +:105A0000426832B10268531C036011704168491E3C +:105A10004160704708B584B00023029311B9009328 +:105A2000019302E00090481E019004AB00A90748D2 +:105A30007844183007F01EFF009909B100220A705F +:105A4000002858BF029805B000BD00BFAFFFFFFFA0 +:105A500000F10103810704D010F8011B89B181070F +:105A6000FAD10268B2F10131914311F0803F04BFD5 +:105A700050F8042FF6E710F8011B11B110F8011BC4 +:105A8000FBE7C01A70470268531C0360117070472F +:105A900000B585B002460FF2140100A808F052FDCF +:105AA00000A800F093FB05B000BD00004F45256441 +:105AB0000000000030488168002904BF08B008E0F9 +:105AC000EFF30982A2F12802036882E8F84F8368A5 +:105AD0005A6000F047FD816859B14A6892E8F84F72 +:105AE000036002F1280282F3098813F47F4F36D055 +:105AF0007047224822490968401A80F308884FF00D +:105B00008071C1611F4981617FF0060E704701BC41 +:105B10002046DFF874E000BDFEE71C480068184925 +:105B20000968401A203820F0070080F308884FF0F9 +:105B3000000181F3118862B600F00DF8FEE74FF026 +:105B4000000181F311881249124A0A604FF0800166 +:105B500081F3118870470E490E4A0A6070474FF072 +:105B6000000181F31188704700BF4FF0800181F37D +:105B70001188704700BF0000F8990020E05F002006 +:105B80008C4A030891E80008195B0008000000082F +:105B900004ED00E000000010EFF303807047BFF356 +:105BA0004F8FDFF86C06016801F4E061DFF86426CE +:105BB00011430160BFF34F8FFEE770B582B0064618 +:105BC0000C462046FFF744FF0546202D05D1042250 +:105BD000314600A8FDF7CFFF06E0102D16D10222B6 +:105BE000314600A8FDF7C7FF002000E0401CA84296 +:105BF0000EDA015D7829F9D0009A2B465B1E1B1A3C +:105C0000DA4002F0010230398A42EFD0002076BD3E +:105C1000012076BDDFF80016016006207047A0F174 +:105C20000060DFF8F81588428041C00F7047F8B572 +:105C300004460D46002000902068FFF7F0FF002882 +:105C40001AD000A8FFF7E6FF0646002700E07F1CF9 +:105C5000B74211D2009850F8371000EBC7004068E7 +:105C600040422268520810EB4200FFF7A6FF0028CE +:105C7000EDD02F600120F2BD0020F2BDF8B50C463A +:105C8000DFF89C150A6D4B6D002559082E465F1BE9 +:105C9000062F11D3482707FB01273F6C874200D20C +:105CA0000D46B84200D20B46E918490837467E1C1B +:105CB0001F2FECD300E06D1C9D4211D2482707FB3B +:105CC00005210E6CB042F6D34E6C8642F3D34022CF +:105CD000204608F051FC002084F840000120F2BD6D +:105CE00040220FF20861204608F046FC0020F2BD79 +:105CF000F0B591B0044600250EE032590FF2F8518C +:105D000000A808F01FFC00A8FFF7A2FE024600A9A9 +:105D1000381D08F031FC6D1C05EBC500C60030597C +:105D200000280BD0371900A9FFF7A8FF0028E4D0FE +:105D3000402200A9381D08F01FFCECE711B0F0BDAF +:105D4000F8B507460C461546002630460090002F51 +:105D50001ED0002C09D1F2BD06EBC600C00057F8DA +:105D6000041B490849004151761C0C2E0FD200A992 +:105D70003846FFF75CFF002807D13868FFF74FFF70 +:105D8000002802D13F1DBC42F1D2BC42E4D23046D1 +:105D9000F2BD70B5DFF88C140A460B68D21A13688E +:105DA000DFF88444A34201D0002070BDDFF87044C6 +:105DB000121D22650968091F4822B1FBF2F16165D5 +:105DC00010F1030F02D010F1130F0AD1DFF85C5469 +:105DD000A86808F007FC0646A86808F00FFC8119BF +:105DE00005E008F019FC054608F018FC4119DFF839 +:105DF0004054A069286005F14802A06AFFF7A0FF9F +:105E00002846FFF775FF012070BD0EB430B5CCB049 +:105E1000044600A84FF49671FFF7ECFD00254FAB48 +:105E200022464FF4967100A8FFF7F4FD00A8FFF793 +:105E30000FFE044609E0DFF8E813C86D421CCA658E +:105E400000A9695C08F052FC6D1CA542F3D34CB06C +:105E500030BC5DF810FB38B50024DFF8C453E865AA +:105E60000FF29C40FFF7D1FFDFF8C80301680FF283 +:105E7000B440FFF7CAFFA86C0090AB6B6A6B296B4C +:105E80000FF2B840FFF7C1FFE96C0FF2E840FFF7EF +:105E9000BCFF6A69A9690FF2F040FFF7B6FF0FF285 +:105EA0000050FFF7B2FF06E01018021D0FF2085075 +:105EB000FFF7ABFF641C04EBC400C200DC481158C0 +:105EC0000029F1D10FF2FC40FFF79FFFA86D441E9F +:105ED000002505E00918BCA0FFF797FF641E6D1CA4 +:105EE0003C2D09D2002C00D53B24322000FB04F1CC +:105EF000D1480A5C002AEDD131BDD048D0490A68AA +:105F000002604A6842608A688260CA68C2600A6940 +:105F100002614A6942610A7E8261097F8161C949E1 +:105F20000A7882614A6842628A688262CA68C2628A +:105F30000A6902634A6942638A698263CA69C26301 +:105F40008A6EC0F88820C04A9369C0F89830D36838 +:105F5000C0F88C301369C0F890305369C0F89430A1 +:105F60000B6FC0F89C304B6FC0F8A0308B6FC0F83F +:105F7000A430C96FC0F8A810B4490968C0F8AC10C3 +:105F8000B3490B68C0F8CC304B68C0F8D0308B6890 +:105F9000C0F8D430CB68C0F8D8300969C0F8DC103C +:105FA0005168C0F8E8101168C0F8E410704770B587 +:105FB00006460C469A4D6FF01E01401A14D0083860 +:105FC00012D0001F05D0001F0ED008380CD0001FC3 +:105FD00010D104F120002862EFF3148040F0020099 +:105FE000E862286AA86205E004F120002862EFF365 +:105FF0001480E862EFF308806862EFF3058028639D +:10600000EFF300806863FFF7C7FDA863EFF310802C +:10601000E863EFF311802864EFF313806864F1EE16 +:10602000100AA864EE64002004E054F8201045F83B +:106030002010401C0828F8D370BD70B5784CA16DB5 +:106040003C2901D30021A165A56D32217A4A01FBCB +:1060500005260A4601463046FDF78DFD002086F8EC +:106060003100681CA06570BD70B5014674462046BD +:10607000FFF79DFFFFF741FF2046FFF78AFE00F084 +:106080009AF8002832D100F034F808F0CFFAF32063 +:1060900008F046FB6F484FF00054002505E02178DA +:1060A000641C08F023FB30466D1C461CB5F5C03F50 +:1060B000F5D3532108F01AFB5221304608F016FBA5 +:1060C000741C4121204608F011FB641C4D21204620 +:1060D00008F00CFB6048C046C04604F10D00FFF715 +:1060E000BAFE08F0ACFA5D4800F01FF8BDE8704059 +:1060F00055E510B508F09AFAF32008F011FB584C5A +:106100003820206002E020680830206020684028A5 +:1061100007D2002108F099FA0928F4D0FFF73FFDD3 +:10612000FCE7BDE8104008F08ABA38B5044608F02C +:106130007DFAF32008F0F4FA3E480168204608F0A2 +:10614000B9FA241DFF21204608F0D0FA641C424D04 +:106150006979204608F0CAFA641CE978204608F0FC +:10616000C5FA641C2979204608F0C0FA641C297815 +:10617000204608F0BBFA641C6978204608F0B6FA9D +:10618000641CA978204608F0B1FAF521601C08F0DB +:10619000ADFABDE8314008F052BA80B508F046FAD1 +:1061A000F32008F0BDFAAA212E4808F09FFABDE8B6 +:1061B000014008F044BA00202A490978F52900D1A5 +:1061C000012070470000000025730A0010B5044646 +:1061D000FFF73EFCC0B2142800D31320024621462C +:1061E0002148FDF7C8FC4FF0AC30007810BD80B5F9 +:1061F00000F04BF8BDE80140D1E480B5FFF7CDFFDA +:106200004FF4C83213490020BDE8084001F03BBC00 +:106210000CED00E00400FA059899002001F8020056 +:1062200010560120FC4F0508FECAFECAF89900204E +:106230003C1E01202C9B002010E60020244501205C +:1062400000ED00E020ED00E004E000E0A0ED00E063 +:1062500034EF00E0000006087C650120F4FF070829 +:106260000C660120FFFF0708F462012010B500F062 +:106270001BF80FF270142046FFF7EAFB0246214696 +:106280000020BDE8104001F0FEBB80B501214FF4B5 +:10629000802002F041FF012003F010FB94210F2029 +:1062A000BDE8044003F0ADBC80B501214FF480206F +:1062B00002F032FF012003F001FB00210F20BDE8B6 +:1062C000044003F09EBC10B5002401214FF480204F +:1062D00002F022FF012003F0F1FA0F2003F09EFCF0 +:1062E000942800D10124204610BD00004E6F205399 +:1062F000796D626F6C0000003078253038780000CE +:106300000A0A0A0A3D3D2043726173682044756D94 +:106310007020496E666F726D6174696F6E203D3DCD +:106320000A0000004669726D7761726520566572D9 +:1063300073696F6E203A2025640A00000A495053A1 +:1063400052203D20307825782C2041505352203D5A +:1063500020307825782C2078505352203D203078FA +:1063600025782C205046534352203D203078257804 +:106370000A0000000A6661756C74206D6F64652008 +:106380003D203078257800000A5043203D203078A9 +:1063900025782C204C52203D20307825780A0000AA +:1063A0000A3C43726173682043616C6C20537461D2 +:1063B000636B3E0A000000003078257820202573AA +:1063C0000A0000000A0A3D3D20526563656E742094 +:1063D0004C6F67204D65737361676573203D3D0A9F +:1063E00000000000534E414D590000000000000025 +:1063F00038B5FFF7BAFBDFF830068468DFF8280607 +:1064000000210171FFF7ABFB002C2CD02068002885 +:1064100029D0607C2168497CC0B2814223D12568A3 +:1064200000E00D002968002903D04A7CC0B28242F6 +:10643000F7D0FFF79AFBDFF8F0050069A04203D11F +:10644000DFF8E40521680161E06921680160C86145 +:10645000E56129682160002900D0CC612C6095F8A5 +:10646000410085F84000FFF77AFB31BD10B5FFF71A +:106470007CFBDFF8B8050468DFF8AC05006A201A79 +:10648000012832DADFF8A005046A04E0DFF8980595 +:106490000462FFF764FBDFF898050078C00722D597 +:1064A000FFF763FBDFF8880500788007EED5DFF89B +:1064B0008005007810F0FD00DFF874150870FFF714 +:1064C0004EFBDFF86405006A8442FAD0DFF8580515 +:1064D0000462DFF858050068401CDFF850150860BA +:1064E000DFF844154862FFF740FB10BD38B50400E3 +:1064F0000020A071206A10F57A606062E0690028CF +:1065000002D02000E1698847FFF729FBE56809E030 +:10651000E868616A401A002801D5E8686062FFF700 +:106520001EFB2D68002D1AD0FFF71FFB20690028E5 +:1065300004D0687C2169497C884212D3287C4007BA +:10654000EDD5E868216A401A0128E1DA280000F058 +:106550009EF9FFF70AFB287C0028D9D101E0FFF75C +:1065600004FB31BD70B50400002060700120207074 +:1065700008F052F80078C0B2CD2802D07D20FFF795 +:1065800087FAA06800280CD0A068406C002808D0CA +:10659000A068406C01680800002802D0A06840682C +:1065A000884794F8290000280BD0A06894F8281098 +:1065B00080F84010DFF870040079002801D0FFF760 +:1065C00017FFDFF870040078002823D0DFF8680494 +:1065D0000068DFF85414096A401A002804D5DFF86F +:1065E00054040021017015E0FFF7BFFA08F05DF9CF +:1065F0000500FFF7B4FAA068002808D0A068406B37 +:106600002818DFF838140968401AA1684863DFF8D1 +:106610002C040560A068002808D0A068007C002831 +:1066200004D1A068006B401CA168086320690028A1 +:106630002BD003E030682061FFF791FAFFF795FA5D +:106640002669002E27D0357CEDB2002D23D06807B7 +:1066500010D5F068216A411A012906DA300000F0ED +:1066600016F9307C002805D10FE0616A411A002933 +:1066700000D56062EDB215F0FB001028DAD1B068E9 +:1066800080684068007C0028D4D1FFF76EFA02E0F1 +:106690002000FFF72BFFA0790028F9D1DFF8900345 +:1066A0000078C00701D5FFF7E1FE00206071206986 +:1066B000002839D02069007C002805D02069806836 +:1066C00080684068A06001E02069A060A06890F840 +:1066D0004C00642802D08020FFF7DAF9A068806AB5 +:1066E0000078CD2802D07820FFF7D2F9A068406C5E +:1066F000002808D0A068406C41680800002802D03B +:10670000A06840688847A06890F8400084F8280096 +:1067100084F82900DFF810038068C06A401CDFF8A5 +:1067200008138968C8620BE0002084F82900002063 +:1067300084F828000020A06000202070FFF70FFAE6 +:10674000200070BD80B508F0DDF8DFF8F41209789C +:10675000002806D0022810D009D3042815D010D361 +:1067600014E0002902D0A320FFF792F911E00029DC +:1067700002D1A420FFF78CF90BE0A620FFF788F9DF +:1067800007E0A720FFF784F903E002E0A820FFF765 +:106790007FF901BD10B508F0B5F80400DFF8A002DC +:1067A0000078002802D0A020FFF772F9002C05D055 +:1067B000022C08D003D3032C09D00CE00EE0A42057 +:1067C000FFF766F90AE0A620FFF762F906E0A720C6 +:1067D000FFF75EF902E0A820FFF75AF910BD80B577 +:1067E00008F090F8002805D0022808D006D3032826 +:1067F00009D00CE0A320FFF74BF90BE00AE0A6203C +:10680000FFF746F906E0A720FFF742F902E0A820CB +:10681000FFF73EF901BD80B5DFF80C0200780028D3 +:1068200002D19720FFF734F9DFF8FC010078401E11 +:10683000DFF8F4110870C0B2002827D1DFF8E801B2 +:106840004068002822D0FFF790F9DFF8DC014068AB +:1068500000280BD0DFF8D00101210170DFF8C8015A +:10686000FFF76DF9DFF8C00100210170DFF8B80112 +:106870004078F021084202D09920FFF709F9DFF8AB +:10688000A8014078002801D1FFF769F901BD10B5D2 +:10689000816800290CD0DFF89011096AC160816815 +:1068A0000A684968002A00D051600A6000218160AE +:1068B000017C11F003010174C9B2002945D1DFF850 +:1068C00068110969002929D1DFF85C110861DFF836 +:1068D0005801007800280CD1DFF84C01012101702B +:1068E000DFF84401FFF72BF9DFF83C0100210170CC +:1068F00003E0DFF8340101214171DFF82C01407819 +:10690000F021084202D09920FFF7C2F8DFF8180101 +:106910004078002801D1FFF722F916E0427C4B7C39 +:10692000D2B29342D0D38142D1D04B7CD2B29A42E0 +:106930000BD10300FFE71B68002BDED05C7CD2B2DA +:10694000A242DAD18B42F6D1BEE710BD10B50400E9 +:10695000627C35480078401C33490870394800E0B3 +:1069600008000168002903D04B7CD2B29A42F7D3C9 +:106970002160E061046000290AD0CC61487CD2B279 +:10698000904202D194F8410000E0002084F84000D9 +:10699000207C002812D1FFF7E8F82000FFF777FFEE +:1069A00021484078F021084202D09920FFF770F882 +:1069B0001D484078002801D1FFF7D1F8FFF72BFFE1 +:1069C00010BD10B51848047817480078401C1649C7 +:1069D00008701548FFF7B3F8134804701248407860 +:1069E000F021084202D09920FFF752F80E48407873 +:1069F000002801D1FFF7B3F810BD10B507F088FFEC +:106A000009480121017007F007FE04006846C046EE +:106A1000021B203A012A03DBCD212000FCF778FC81 +:106A200009480121017010BDF8990020606601201D +:106A3000B3660120B46601207866012064660120F7 +:106A4000B5660120049A0020B7660120DFF8AC0685 +:106A5000007870472DE9F0418AB0FBF7F5FE044657 +:106A6000DFF89C562E6842E096F9080007283DD0D2 +:106A70000B283BDA062839D006F10807B86C002845 +:106A800003D5D4F880100818B8644FF0FF313046B1 +:106A9000FA6D926990478046B8F1010F04D197F8DA +:106AA0004C00B96D09698847B8F1020F0BD1797EA6 +:106AB00038697A688018BA6D52699047002802D008 +:106AC000304607F0E3FF00213046FA6D92699047A7 +:106AD000022801D10120B87501213046FA6D926972 +:106AE0009047022802D1304608F07CF83668AE4262 +:106AF000BAD1D4E91C01002901D100280CD00A2008 +:106B00008DF8080002208DF80000D4F88000ADF860 +:106B1000220000A801F0D0FF01200AB0BDE8F081FA +:106B200030B585B004460D46CA208DF8000028888F +:106B3000ADF801000220ADF80300BDF80100001D12 +:106B400003F0FAFACDF8090002220DF10301FDF776 +:106B500012F802222946DDF80900801CFDF70BF827 +:106B60002A882146DDF80900001DFDF704F8002001 +:106B7000288000A9DFF8DC0D08F046FB05B030BD29 +:106B800042F23411081A322801DA0120704700203D +:106B9000704780B5FBF793FA407B002804D007F0DC +:106BA000E3FEDFF88C1E086001BD80B507F0DCFE57 +:106BB000DFF8801E086001BDDFF8780E00687047BE +:106BC00010B582B000F10C03D96A896800910422E3 +:106BD00000A95C7DDB68C06818182018FCF7CBFFA3 +:106BE00013BD30B41488651C1580052565541488C0 +:106BF000651C1580635413885C1C1480007A5854FB +:106C000030BC704732B515461C4621884A1C22808C +:106C100037224A5521884A1C2280007A4855022290 +:106C200000A920884019FCF7A6FF2088801C20803E +:106C300031BDF8B517461D4600F10C06069CA4B2FE +:106C4000B27D6243C06809182888C019FCF793FF19 +:106C50002888B17D614311FA80F02880F1BD30B4FD +:106C600000F110039B7C914203D1006990FBF3F08B +:106C70000DE00C46154603D2281B90FBF3F006E00E +:106C80000069001B90FBF3F095FBF3F1081880B24C +:106C900030BC704700F110018A688B7CD2188A6082 +:106CA0000069824201D1002088600020887370470B +:106CB000F8B504460D461E46069F92B289B2FFF70C +:106CC000CEFF00903B46324629462046FFF7B1FFF3 +:106CD000F1BDF8B5044615461E462269002D00D1C7 +:106CE0001546069F0097FFF7E3FF2069854206DA05 +:106CF000009733462A4600212046FFF7D9FFF1BD11 +:106D00002DE9FC4104460D461646A169606900283C +:106D100015D500270A4692B289B22046FFF79FFF99 +:106D2000804633462A4641462046FFF76BFFA2695C +:106D300000962B4611462046FFF7CBFF2EE08142FE +:106D400016DA01270A4692B2014689B22046FFF7B9 +:106D500086FF804633462A4641462046FFF752FFCB +:106D600000962B46A26961692046FFF7B2FF15E045 +:106D700002270A4692B2014689B22046FFF76FFF0A +:106D8000804633462A4641462046FFF73BFF0096A1 +:106D90002B46A26961692046FFF78AFFA06901902E +:106DA000606900903B46424694F908100FF20800D3 +:106DB000FBF707FABDE8F3815061636B203D256462 +:106DC000202564202564202564202564000000001F +:106DD00070B582B004460D461646A06C012811DA43 +:106DE000A07F012811D133462A4601212046FFF712 +:106DF00009FF0120009033462A46A1692046FFF78B +:106E000018FF02E02046FFF77BFF012332462946A8 +:106E10002046FFF7E6FEA0696061A36CE26C94F97E +:106E200008100FF20C00FBF7CCF9A06CE06473BD06 +:106E3000666C757368202564202564202564000035 +:106E40002DE9F84304460D461646FBF7FDFC814646 +:106E5000FBF735F9804604F10807B87D002802D019 +:106E60002046FFF7ADFE386C0128C0F2888098F804 +:106E70000E00002844D0B87D002800F0C080786C57 +:106E8000D9F88010401A7864B87E3969FA68531AC4 +:106E9000834205D0002A2FD1BA68511A81422BD1E2 +:106EA00094F90820397E0FF25C10FBF78AF9397EDD +:106EB00000291ED094F908200FF26010FBF781F929 +:106EC0003869B97E421892B2F96889B22046FFF754 +:106ED000C6FE33462A4601462046FFF793FE00963B +:106EE0002B463869B97E4218F9682046FFF7F1FE53 +:106EF00002E04FF0FF30F8602046BDE8F243C9E6FB +:106F000098F80E0000287AD1786CD9F88010401AD1 +:106F1000786401282CDA386C7864386BD0F80C80EF +:106F200094F908308268396C0FF20C10FBF749F9BC +:106F3000B868B97E90FBF1F0396C91FBF8F18142B1 +:106F400002DB4FF0FF30F860B87D00280AD0204601 +:106F5000FFF7A0FE324629462046FFF7D1FE3869EA +:106F6000F8604CE0324629462046BDE8F843C7E6C3 +:106F7000B87D002843D02046BDE8F2438AE6B87DBC +:106F800000283CD094F9080098F80A10002917D07E +:106F900007282FD133462A4601212046FFF732FE2B +:106FA0000120009033462A4639692046FFF741FE0A +:106FB0007A7894F908100FF29400FBF702F919E0BF +:106FC000092809D194F85E10012905D10FF28C002F +:106FD000BDE8F443FBF7F5B833462A4601212046C5 +:106FE000FFF710FE0120009033462A4639692046FB +:106FF000FFF71FFE2046FFF74DFE3869F860BDE839 +:10700000F183000073757370656E64206669666F46 +:107010002066756C6C202564202564007375737080 +:10702000656E64206669666F2066756C6C20322020 +:1070300025642025640000006669666F2066756C13 +:107040006C332025642025642025640041502053A2 +:10705000757320256420256400000000233E6C75B4 +:10706000785F73617420256400000000F8B5044661 +:107070000D46234E376805E02A4621463846FFF77D +:10708000DFFE3F68B742F7D1F1BD2DE9F04104467C +:107090000D46DFF82C6DF76907F10C0898F815100C +:1070A000D8F80C00FA688018D8F854205269904734 +:1070B00000280AD0012088F81200787A002804D02D +:1070C0002A4621463846FFF7BBFEB66906F10C0793 +:1070D000797DF868F26880187A6D526990470028C7 +:1070E00009D00120B874707A002804D02A462146BD +:1070F0003046FFF7A5FE0120BDE8F081AF66012014 +:107100006C6900200288D21C02800A80704780B51A +:107110000B889B1AADF80030BDF80030002B09D069 +:107120001018012100F8031C022200A9801EFCF7A0 +:1071300022FD01BD0888C01E088001BD2DE9F04F69 +:10714000ADF68C2D04460D46FBF77EFB8046FAF724 +:10715000B6FF074610A840F64821FEF74BFC00207A +:107160008DF8020006A82821FEF744FC01A814218E +:10717000FEF740FC0020ADF800000646D8E91C01EF +:10718000002902D1002800F0E18397F9090008F0F6 +:107190004DFD002800F0DA8300A92846FFF7B2FF72 +:1071A00037461BE0012031463A4608F069FFD8E92E +:1071B0001C231040194001D100280ED007EB870096 +:1071C000DFF8001C01EBC00292F90900012804D18C +:1071D0000DF1020110A8126A90477F1C2D2FE1DBF0 +:1071E00037461AE02888411C298099F80210015579 +:1071F0002888FFF7C5FC00280DD0BDF800202946DF +:107200002046FFF784FF29462046FFF789FC00A9A6 +:107210002846FFF777FF7F1C7FB29DF80200874268 +:1072200080F28C832988481C288040F2491010FB8A +:1072300007F010AA825C0A5529884A1C2A8010AAE5 +:1072400000EB020898F8010008552888411C2980A5 +:1072500008F1010999F80110015599F80100032876 +:1072600021D0092800F04C810C2800F026811A2832 +:1072700000F04A821B2800F059811C2800F0788217 +:107280001D2800F066811E2800F06282252800F08B +:10729000A182262800F0DB82282800F0B6822C2864 +:1072A00000F0E5829EE798F80100032805D12888C0 +:1072B000411C298099F8021001552888411C298019 +:1072C00099F80310015599F80300C0280DD1B8F8BA +:1072D0003020D8F8321028880019FCF74CFC288898 +:1072E000B8F830100818288082E7711C00064ED4C8 +:1072F00001A808F1040252783254C9B298F8062065 +:107300000A54491CC9B200220A544A1C08F2060158 +:10731000D2B24B781354521CB8F80E30D2B21E0AB7 +:107320001654521CD2B21354521C08F20E03D2B29D +:107330009E781654521CD2B2DB781354521CD2B22F +:1073400098F812301354521CD2B298F813301354D8 +:10735000521CD2B28B781354521CD2B2C978115439 +:10736000511CC9B298F80A200A54491CC9B298F8AD +:107370000B200A544E1CF6B2324601A92888001987 +:10738000FCF7F9FB288850FA86F0288030E7D8F817 +:10739000052006A8130C3354C9B2130A0B54491C18 +:1073A000C9B20A54491CD8F80920C9B2130C0B54AD +:1073B000491CC9B2130A0B54491CC9B20A54491CCE +:1073C000D8F80D20C9B2130C0B54491CC9B2130ACA +:1073D0000B54491CC9B20A54491CD8F81120C9B22F +:1073E000130C0B54491CC9B2130A0B54491CC9B2E3 +:1073F0000A54491CD8F82720C9B2130C0B54491C55 +:10740000C9B2130A0B54491CC9B20A544A1C08F2E7 +:107410002701D2B20B791354521CD2B24B791354B8 +:10742000521CCB88D2B21E0A1654521CD2B213542C +:10743000521CD2B2097A1154511CD8F81520C9B285 +:10744000130C0B54491CC9B2130A0B54491CC9B282 +:107450000A54491CD8F81920C9B2130C0B54491C02 +:10746000C9B2130A0B54491CC9B20A54491CD8F8B2 +:107470001D20C9B2130C0B54491CC9B2130A0B547A +:10748000491CC9B20A54491CD8F82120C9B2130CAE +:107490000B54491CC9B2130A0B54491CC9B20A54F3 +:1074A0004E1CF6B2324606A928880019FCF763FB89 +:1074B000288850FA86F028809AE608F20301B1F98C +:1074C0000300C0F3072242EA0020A1F80300B1F94B +:1074D0000700C0F3072242EA0020A1F80700B1F933 +:1074E0000500C0F3072242EA0020A1F805000922A6 +:1074F00028880019FCF73FFB28880930288077E6A8 +:1075000098F8010003280AD1022208F10301288813 +:107510000019FCF730FB2888801C288068E6288842 +:10752000411C298099F80210015561E62888411C08 +:10753000298099F80210015598F8010005287FF478 +:1075400057AE2888411C298008F10401497801556B +:107550004EE608F2030998F80100012840F0C480C3 +:107560002888411C298099F8041001554FF0000A21 +:10757000A1E0CAEB4A1000EB090BDBF8180001028E +:1075800021F0FF11000A00F0FF100843CBF81800AB +:107590004FEA3040CBF8180004220BF1180128887C +:1075A0000019FCF7E8FA2888001D2880DBF808009D +:1075B000010221F0FF11001200F0FF100843CBF888 +:1075C0000800C0F30F4141EA0040CBF80800042254 +:1075D0000BF1080128880019FCF7CDFA2888001D56 +:1075E0002880DBF80C00010221F0FF11001200F0EE +:1075F000FF100843CBF80C00C0F30F4141EA0040F4 +:10760000CBF80C0004220BF10C0128880019FCF7C0 +:10761000B2FA2888001D2880DBF81000010221F052 +:10762000FF11001200F0FF100843CBF81000C0F368 +:107630000F4141EA0040CBF8100004220BF1100189 +:1076400028880019FCF797FA2888001D2880DBF8A5 +:107650001C00010221F0FF11000A00F0FF10084396 +:10766000CBF81C004FEA3040CBF81C0004220BF191 +:107670001C0128880019FCF77EFA2888001D288044 +:10768000BBF81600010A41EA0020ABF816000222FE +:107690000BF1160128880019FCF76DFA2888801C68 +:1076A0002880411C298080B2DBF8201001550AF1A6 +:1076B000010A5FFA8AFA99F804008245FFF659AF89 +:1076C000B8F84321D8F8451128880019FCF753FA77 +:1076D0002888B8F8431108182880B8F843110FF229 +:1076E0007820FAF76EFD83E505287FF481AD2888C0 +:1076F000411C298099F8021001552888411C2980D5 +:1077000099F80310015573E508F2030198F8010098 +:10771000032805D12888421C2A8098F80A2002559F +:10772000D1F80100020222F0FF12000A00F0FF105F +:107730001043C1F801004FEA3040C1F801000722B0 +:1077400028880019FCF717FA2888C01D28804FE503 +:1077500008F203010888020A42EA00200880022297 +:1077600028880019FCF707FA2888801C28803FE544 +:1077700008F2030098F8011001297FF439AD99F857 +:107780000210012918D129884A1C2A80007808553E +:10779000B8F80420D8F8061028880019FCF7EBF98F +:1077A0002888B8F8041008182880B8F804100FF2D8 +:1077B000BC10FAF706FD1BE502297FF419AD2988F4 +:1077C0004A1C2A8002780A5529884A1C2A80C079D6 +:1077D00008550DE52888411C2980B9F8021001558B +:1077E0002888411C2980B9F9021009120155B9F9FC +:1077F0000220D8F8051028880019FCF7BCF9288861 +:10780000B9F9021008182880F2E42888411C298060 +:10781000B9F8021001552888411C2980B9F90210D5 +:10782000091201552888411C298008F10401497872 +:107830000155B9F90220D8F8061028880019FCF77C +:107840009AF92888B9F9021008182880D0E408F2BB +:1078500003010888020A42EA0020088002222888E0 +:107860000019FCF788F92888801C2880C0E408F2F9 +:1078700003082988084698F8002013072AD5491CD0 +:10788000298098F8001001552888411C298098F813 +:10789000071001552888411C298098F808100155C7 +:1078A000D8F80900010221F0FF11000A00F0FF10D2 +:1078B0000843C8F809004FEA3040C8F8090004221C +:1078C00008F1090128880019FCF755F92888001DDE +:1078D00028808DE4520724D5491C298098F800108F +:1078E00001552888411C298098F801100155D8F8C5 +:1078F0000300010221F0FF11000A00F0FF1008430D +:10790000C8F803004FEA3040C8F80300042208F129 +:10791000030128880019FCF72EF92888001D28800B +:1079200066E498F80220D8F80D100019FCF723F946 +:10793000288898F802104018288059E4BDF80020E3 +:1079400029462046FFF7E3FB08F09DF90DF68C2D44 +:10795000BDE8F08F689D00204F4A483A20415442CC +:10796000442073697A653A20256400004F4A483AFA +:1079700020415044522073697A653A202564000002 +:107980002DE9F04105460E46FAF799FB0746DFF868 +:1079900038442078401C20706078F021084202D0E2 +:1079A0009920FEF775F8FEF7E0F86078401C6070EB +:1079B00097F81880B8F1010F26DB3088404480B278 +:1079C000FFF7DEF8002803D031462846FFF7A8F875 +:1079D0003088411C3180032141553088411C318061 +:1079E00000F80580424607F1190130884019FCF77C +:1079F000C2F8308840443080FF22002107F119008E +:107A0000FBF786FC002038766078F021084202D02F +:107A10009920FEF73DF86078401E6070C0B20028E3 +:107A200001D1FEF79CF8BDE8F041FEF7F4BE00007E +:107A30003C6601204066012038B504460D46FAF741 +:107A40003EFB817A002909D1417B002906D1298892 +:107A50004A1C2A8006220A550121417331BD38B5DE +:107A600004460D46288800280CD02046FFF788FFE2 +:107A700029462046FFF7E0FF29462046BDE834406E +:107A8000FFF74EB831BD14B585B0049101A90022AD +:107A9000134614461CC10A21ADF8001004218DF8CC +:107AA00004108DF805000A4605A90DF10600FCF743 +:107AB00062F8042204A90DF10A00FCF75CF800A9A1 +:107AC00001A8FFF72DF806B010BD80B5FAF7F7FA58 +:107AD0004FF49671FAF7E0FC07208DF802000120C0 +:107AE000ADF8000000A90DF10200FFF719F801BD83 +:107AF0002DE9F041DFF8504D6068002828D021883A +:107B000088421FD002F018FB054666682788A6EB5E +:107B100007081FFA88F84246381900F1080128467C +:107B2000FCF729F83A4604F1080108EB0500FCF7D8 +:107B300022F83246294604F10800FCF71CF82846D2 +:107B400002F012FB626804F108010520FFF79BFFB9 +:107B5000002060602080BDE8F08180B5FAF774FEF7 +:107B6000062180F884108430417007218170C17033 +:107B7000017101BD2DE9FC4105460F469046FAF71B +:107B80009EFA0026D5F809100C1D2A781146012905 +:107B900062D00F2933D0352937D0802900F08A8070 +:107BA000812900F09180822900F08E80852900F0E3 +:107BB0008B80862900F08880882900F085808A29BA +:107BC00000F08A808B2900F0A3808C2900F0AF8020 +:107BD0008D2900F0B780DD2900F0C180DF2900F099 +:107BE000DB80F0291AD0F42923D0F62929D0F829EE +:107BF00047D0F92935D0FF2900F0A98061E0807DC8 +:107C00002070FFF7AAFF01205CE00120FAF7CFF80F +:107C10003046FAF7D0F80120207053E00422DFF854 +:107C20002C1C2046FBF7A7FF0120FDF735F80120AB +:107C300048E0042200F110012046FBF79CFF0120E0 +:107C400040E0032221463046DFF8043C9B681B6E6F +:107C50001B6A9847012035E0204608F041FA0120D0 +:107C600030E0B5F80120B5F80300C010C0EB0011FA +:107C7000D5F8050000EB81112046FBF77CFF0120C1 +:107C800020E03046ADF804000120D5F80510C9B257 +:107C9000012900D10320FCF768FAFCF7A2FAADF83D +:107CA0000400FCF7B5FA022201A92046FBF763FFA6 +:107CB000012007E0D5F8050020702146304607F086 +:107CC0004FF83046BDE8F68130462070214602F07C +:107CD0007F0007F045F8F4E701202070DFF8700B13 +:107CE00045683746287F002801D13046EAE7687AA0 +:107CF000002803D1286E4068804707462046296E39 +:107D0000C9698847002FDCD0286E80688047D8E793 +:107D10000120B5F80310C1F3C101091D884040F0EE +:107D2000020020702146012007F01AF8C9E7017807 +:107D30002170C17861704179A1708079E070012073 +:107D40002071BFE7204608F0DFF90646B9E704F1E5 +:107D50000802211D2046FDF74DF80120B2E76879A1 +:107D6000DFF8EC1A51F82050687A002810D042460B +:107D700039462846FFF72CF8DFF8D80A01210170B0 +:107D8000DFF8D41A082008F081FA0120207001E001 +:107D900030462070012095E76879DFF8B41A51F871 +:107DA0002050286995F8221090FBF1F0401E0090B9 +:107DB000042200A92046FBF7DEFE012082E7000036 +:107DC00000600020C8F10020F8990020F0B593B0C1 +:107DD0000646FAF774F90546FAF736FDD6F80910A3 +:107DE0000C1D3178002208924FF0FF32099217469D +:107DF0000A46312A00F01181322A00F01881332A14 +:107E000000F02481342A00F02B81A12A00F0558152 +:107E1000A22A00F07481A42A00F07F81B12A00F028 +:107E20002983B22A00F0C484B82A00F09181C12AC3 +:107E300000F0BF81CD2A00F08080CE2A00F096802D +:107E4000D02A37D0D12A2BD0D22A38D0D32A3FD02B +:107E5000D42A41D0D62A4DD0D72A4BD0D82A51D0B7 +:107E6000D92A4FD0DB2A00F01381DC2A00F01781D9 +:107E7000F12A4FD0F22A00F09280F52A00F0A68075 +:107E8000F72A00F0B980FA2A00F0C284FB2A00F039 +:107E9000C284FD2A00F0A580FE2A00F0CC84B9E05F +:107EA00000212846FAF736FB0020A873FFF720FED2 +:107EB0000120B0E00020FCF7EFFE0120ABE0012143 +:107EC0002846FAF727FB012008F030FA0120A2E04B +:107ED0000020A87201209EE00120A8720020687393 +:107EE0000120A873E87A002802D1012008F01EFAC8 +:107EF000012090E0D62901D1012000E00020E872A5 +:107F0000012088E0D92901D1012000E00020287358 +:107F1000012080E000210CE00A180B5D82F884301B +:107F2000022905D10A5D80F887200A5D80F8882043 +:107F3000491C0329F0DB01206DE0002512E0DFF889 +:107F40001009466806EB4506022204EB450106F1DE +:107F50005800FBF710FEB6F95810DFF80009FAF7E1 +:107F600030F96D1C032DEADB012054E0002512E0FE +:107F7000DFF8DC08066806EB4506022204EB450143 +:107F800006F15800FBF7F7FDB6F95810DFF8D008F6 +:107F9000FAF717F96D1C032DEADB01203BE0297C81 +:107FA000090601D4012036E02178A0F88A10617812 +:107FB000A0F88C1002212046DFF89428D269126EB6 +:107FC00092699047002825D0012024E00322214611 +:107FD0000120DFF87C389B681B6E1B6A98470120E4 +:107FE00019E01B2221460720DFF864389B681B6ECE +:107FF0001B6A984701200EE0DFF854088669306E4E +:1080000080688047002805D0012221460520336E74 +:108010001B6A9847002013B0F0BDF9F7D0FE012885 +:1080200001D10120F7E72046F9F7F4FDF2E7F9F76F +:10803000C6FE012801D10120EDE72046F9F76FFEC9 +:1080400020780028E6D0F9F79BFEE3E7F9F7B7FEC2 +:10805000012801D10120DEE72078F9F798FED9E761 +:10806000F9F7ADFE012801D10120D4E74FF480518A +:108070000020FAF788FA0120F9F720FD0120F9F72E +:108080009AFE2078F9F79EFEF9F78BFD0120C2E7F2 +:10809000D6F80510DFF8CC07FAF793F8BAE7FEF741 +:1080A0008AF8002802D0FEF7A8F8B3E7FEF70BF92C +:1080B0000028AFD0FEF7DAF8ACE794F900500422BC +:1080C000611C08A8FBF757FDB6F80100062806D387 +:1080D0000422611D09A8FBF74EFD94F90970042DD7 +:1080E00004D1DFF86C070069A17A81720097099BBF +:1080F00000220899284606F093FE20708AE794F93A +:1081000000500422611C08A8FBF735FD00231A4625 +:108110000899284606F0EEFE7DE794F90050042207 +:10812000611C08A8FBF727FDB6F80100062806D356 +:108130000422611D09A8FBF71EFD94F90970009740 +:10814000099B00220899284606F026FF207061E767 +:1081500020780146032908D01A2913D0252915D0E3 +:10816000282917D02C2919D01CE060788DF80A0036 +:10817000012805D1A0788DF80B00204600F033FCD3 +:10818000012048E7204600F02EFCF9E7204600F0E9 +:108190002AFCF5E7204600F026FCF1E7204600F037 +:1081A00022FCEDE794F9011040B207F00CFEC0B2DA +:1081B00031E7207801460E3908D0091F03291CD960 +:1081C000091F3DD0491E00F09B803DE10E208DF837 +:1081D000080060788DF80A00A1788DF80B10E2781D +:1081E0008DF80C200023ADF80D3052B249B240B2E8 +:1081F000FAF7E1F900F0EEFB26E18DF8080012280D +:1082000002D160788DF80A009DF80800132802D189 +:1082100060788DF80B009DF80800142802D1607872 +:108220008DF80C009DF80800152802D160788DF8B3 +:108230000A0062782178DFF83006F9F7C2FF03E11F +:108240006078A178090401EB0060E17800EB01207F +:1082500021794018CDF80A006179A279120402EB65 +:108260000161E27901EB0221227A8918CDF80E1022 +:10827000627AA37A1B0403EB0262E37A02EB032225 +:10828000237BD218CDF81220637B8DF81630A37BA8 +:108290008DF81730E37B8DF81830237C8DF819307A +:1082A000637C8DF81A30A37CE57C15EB03231BB2AD +:1082B0001D46ADF81B50257D03EB0523657D5B193D +:1082C000ADF81D30A37D8DF81F30002803D10029A3 +:1082D00001D1002A09D00DF10A0184B068461622A6 +:1082E000FBF70EFC0FBCFAF70BFA0DF10A0184B094 +:1082F00068461622FBF704FC0FBC00F0B3FBA3E0BA +:1083000060788DF809001D283DD1A0788DF8130004 +:10831000A07801280DD1E078217911EB0021ADF88A +:108320000A1089B20A461D21DFF84005F9F749FF16 +:108330008AE002280BD1E078217911EB0021ADF819 +:108340000C1089B2DFF82805F9F73BFF7CE0032821 +:108350000BD1E078217911EB0021ADF8141089B22E +:10836000DFF81005F9F72DFF6EE004286CD1E078F6 +:10837000217911EB0021ADF8161089B2DFF8F8046D +:10838000F9F71FFF60E0262809D1A0788DF80E00CC +:10839000A078012858D1E0788DF80D0054E01C2811 +:1083A00023D1A0788DF80D00A078012807D1E178BD +:1083B0008DF80A10DFF8C404F9F703FF44E002283F +:1083C00007D1E1788DF80B10DFF8B404F9F7F9FE66 +:1083D0003AE0032838D0052836D1E1788DF80C1022 +:1083E000DFF8A004F9F7EDFE2EE02C282CD1A078C0 +:1083F0008DF81400A078012803D1E0788DF80E00E4 +:1084000022E0022806D1E078217911EB0020ADF8B6 +:10841000150019E0032806D1E078217911EB00203E +:10842000ADF8170010E0042806D1E078217911EBAF +:108430000020ADF8190007E0052805D1E078217982 +:1084400011EB0020ADF81B0006208DF828002078E5 +:108450000B900DF1310002A91822FBF751FB0B2004 +:108460008DF830000020ADF84A000AA800F024FB87 +:10847000C0B2D0E594F9000006F015FF012840F0E5 +:10848000698120780146032928D0062965D0092969 +:108490002BD00C2945D00D2951D0192900F09080FE +:1084A0001A2967D01B2900F0A0801C2900F0DB806E +:1084B0001D2900F0B3801E2900F0E280252900F07C +:1084C000FB80262900F0EA80272900F0FC8028297B +:1084D00000F020812C2900F0218136E10322611C6B +:1084E0000DF10A00FBF747FB34E10722611C0DF197 +:1084F0000A00FBF740FBBDF80A00010A41EA002030 +:10850000ADF80A00BDF80C00010A41EA0020ADF800 +:108510000C00BDF80E00010A41EA0020ADF80E0083 +:1085200018E10322611C0DF10A00FBF724FBBDF8E2 +:108530000B00010A41EA0020ADF80B000AE103221A +:10854000611C0DF10A00FBF716FBBDF80B00010AD8 +:1085500041EA0020ADF80B00FCE00122611C0DF1A6 +:108560000A00FBF708FB9DF80A100FF22030F9F71C +:1085700028FEEFE00B22611C0DF10A00FBF7FBFA6D +:10858000DDF80B00010221F0FF11000A00F0FF10DE +:108590000843CDF80B004FEA3040CDF80B00BDF892 +:1085A0001000010A41EA0020ADF8100000239DF9F7 +:1085B00014209DF913109DF91200F9F7FCFFC9E092 +:1085C0000622611C0DF10A00FBF7D5FABDF80A007E +:1085D000010A41EA0020ADF80A00BDF80E00010AC8 +:1085E00041EA0020ADF80E00B4E00422611C0DF158 +:1085F0000A00FBF7C0FABDF80A00010A41EA0020B0 +:10860000ADF80A00BDF80C00010A41EA0020ADF8FF +:108610000C000FF28420F9F7D4FD9BE00922611CC5 +:108620000DF10A00FBF7A7FABDF80A00010A41EABA +:108630000020ADF80A00BDF80C00010A41EA002054 +:10864000ADF80C00BDF80E00010A41EA0020ADF8BB +:108650000E0000239DF912209DF911109DF91000C4 +:10866000F9F7A9FF76E060788DF80A00A0788DF818 +:108670000B00A27861780FF22C20F9F7A2FD69E0D7 +:108680000322611C0DF10A00FBF775FABDF80B001F +:10869000010A41EA0020ADF80B005BE00522611CF5 +:1086A0000DF10A00FBF767FABDF80B00010A41EA79 +:1086B0000020ADF80B004DE00922611C0DF10A000D +:1086C000FBF759FA46E00A22611C0DF10A00FBF79C +:1086D00052FABDF90A00C0F3072141EA0020ADF8C3 +:1086E0000A00BDF90C00C0F3072141EA0020ADF8F3 +:1086F0000C00BDF90E00C0F3072141EA0020ADF8DF +:108700000E00BDF91000C0F3072141EA0020ADF8CA +:1087100010001FE060788DF80A001BE00822611C41 +:108720000DF10A00FBF727FABDF80C00010A41EA37 +:108730000020ADF80C0000239DF911209DF91010C8 +:108740009DF90F00F9F737FF04E08DF80800607815 +:108750008DF809002078052807D14B4801210170C8 +:10876000687A00280ED1084655E418280AD18DF8F9 +:10877000080060788DF80900A0788DF80A00E0788C +:108780008DF80B0000208DF8280020780B900DF15B +:10879000310002A91822FBF7B3F90B208DF8300045 +:1087A0000020ADF84A000AA800F086F9C0B232E411 +:1087B0002078052804D134480021017001202AE4E2 +:1087C0001A280DD10822611C0DF10A00FBF7D3F91C +:1087D000BDF81000010A41EA0020ADF8100004E0E5 +:1087E0002C2802D160788DF80A0001208DF828002D +:1087F00020780B900DF1310002A91822FBF780F9C7 +:108800000B208DF830000AA800F056F9C0B202E43F +:108810000120FFF700BC2078002802D0052805D0F1 +:1088200006E00FF29000FDF7D1FC01E0FFF760F9E0 +:108830000120FFF7F0BB04F10802211D2046FCF7E0 +:1088400091FA0120FFF7E7BBCC2401202C9B0020EC +:1088500000600020AE660120B8D400205047030815 +:108860005C47030868470308744703088447030804 +:1088700094470308A0470308AC470308B847030818 +:10888000CC470308E0470308AF66012050443A2074 +:1088900053432025640000004C542053532041448E +:1088A00044000000415044522041444420256420AB +:1088B0002564000041505F52455155455354000016 +:1088C0007C4870472DE9F04182B00C4616460125E0 +:1088D00000282DD106EB8600764901EBC00728461B +:1088E00000FA04F8F86810EA080F08D02346FA687E +:1088F00031460FF25030F9F764FC022046E04FF0A9 +:10890000FF30009003462A467968204606F088FA30 +:1089100000280BD02346FA6831460FF23830F9F7B9 +:1089200050FCF86848EA0000F8602EE002202DE0D4 +:1089300001282AD106EB86005E4901EBC0072846D4 +:1089400000FA04F8F86810EA080F08D12346FA681C +:1089500031460FF21030F9F734FC032515E04FF0E3 +:10896000FF332A467968204606F0C4FA002807D06B +:108970002346FA6831460FF2FC20F9F722FC00E0AA +:108980000325F86820EA0800F8602846BDE8F6816B +:1089900007F025BA02B58AB00021ADF82210019186 +:1089A0000A218DF8081000218DF809108DF80A10A1 +:1089B00005218DF80010019004220AA90DF109008B +:1089C000FBF7D9F80020ADF8220000A800F074F8F9 +:1089D0000BB000BD80B508F039FA0FF2A820BDE851 +:1089E0000240F9F7EEBB38B5447885780078032863 +:1089F00022D01A2802D02C282AD031BD012C0CD12B +:108A0000012009F023FE012322461A210FF28020C3 +:108A100001B0BDE83040F9F7D4BB022C21D10220CF +:108A200009F014FE022322461A210FF2742001B02D +:108A3000BDE83040F9F7C5BB012C12D1284608F03B +:108A400010FA29460FF26C20BDE83440F9F7B9BBA3 +:108A5000012C06D129460FF26820BDE83440F9F711 +:108A6000B0BB31BD0FB480B5002805D10846002841 +:108A700002D11046002804D00AF03BFBC046C04695 +:108A800001E00AF01FFB01BC5DF814FB0022C0B23C +:108A90002D280CD240B200EB8003064800EBC30047 +:108AA000C068012303FA01F1084200D01A461046BB +:108AB00070470000C8F1002030B585B0044601259C +:108AC00094F90000062800F2A880DFE800F00428EE +:108AD0004B667D9EA20004F1090182B0684618220F +:108AE000FBF70EF80CBC94F90810606840B206F071 +:108AF00081FD02280AD1606800B206F08EFF0025D1 +:108B000061680FF2C410F9F75CFB8CE0032840F0B9 +:108B10008A8061680FF2B810F9F753FB83E0606850 +:108B20001A280BD104F1090007F037FA237CE26818 +:108B3000E17A0FF2A410F9F744FB05E02C2803D1E9 +:108B400004F1090007F029FA94F90810606840B2AE +:108B500006F06AFE032866D161680FF29410F9F7F7 +:108B600030FB60E0618C00A806F071FF9DF9040005 +:108B700002280AD1009800B206F04FFF00250099A4 +:108B80000FF27410F9F71DFB4DE003284BD100994B +:108B90000FF26C10F9F715FB45E00AF0B7FB02285D +:108BA0000AD1606800B206F038FF002561680FF254 +:108BB0005810F9F706FB36E0032834D161680FF24C +:108BC0005010F9F7FEFA2EE0606805280CD128460F +:108BD0000AF063FC02280DD0032824D161680FF24B +:108BE0004010F9F7EEFA1EE002281CD10AF059FDF8 +:108BF0000228F1D1606800B206F00FFF002561681D +:108C00000FF21410F9F7DDFA0DE0204606F085FFAB +:108C100009E0204607F044F905E061680FF208100A +:108C2000F9F7CFFA0025284605B030BD012070477E +:108C30000FB4022004B07047012070470020704735 +:108C400070470000534D41432025642025642025B2 +:108C500064000000534D41202564202564202564D4 +:108C600000000000534D5243202564202564202538 +:108C700064000000534D52202564202564202564A3 +:108C8000000000005044205365745354000000005D +:108C900041542052492D256420256420256400007C +:108CA000415420524920426174202D2564202564BE +:108CB0002025640050442055542D256400000000F8 +:108CC000534C4D2025640000414C4F462025640044 +:108CD000414C4346202564004F4A4820454C2030F3 +:108CE00078257820307825782030782578000000A5 +:108CF000524C434620256400504C4F4620256400CA +:108D0000504C43462025640050414F4620256400C6 +:108D1000504143462025640050504F4620256400B2 +:108D200050504346202564004558204C4D454C206A +:108D300025640000010040F10980F446404200F043 +:108D400005F851F000416047010000BF09D0B0FABA +:108D500080F18840C91CC1F58461090501EBD0216F +:108D600040057047B0B581EA030C0CF0004C40F2AE +:108D7000FF7515EA11541DBF15EA1357AC42AF42F7 +:108D800039E0E41923EA455343F48013C90241F062 +:108D9000004141EA505EC7021100A7FB0202002811 +:108DA0004FF00000EEFB01204FF00001E3FB072134 +:108DB00018BF42F00102401800214941E3FB0E01B7 +:108DC000A4F580640F0302D252004041494154F19E +:108DD00001046CDD470872F1004250F1000051EBD4 +:108DE0000451A1F580115CBF41EA0C01B0BD4CEA11 +:108DF00005510020B0BD05EA1357AC4214BFAF4285 +:108E000041E050EA410E1CBF52EA430E02E06146C7 +:108E10000020B0BD24423C441BD15FEA070EF6D0CF +:108E2000090302BF01460020AEF1140EB1FA81F72A +:108E3000AEEB070401FA07FE0C37C7F1200100FA78 +:108E400007F7C8404EEA000E23EA455343F4801367 +:108E5000A2E733F00043B3FA83F704BFB2FA82FE0D +:108E600077440B3FE41BB7F1200E2FBF02FA0EF33D +:108E7000BB40C7F1200E22FA0EFE38BF43EA0E03B4 +:108E8000BA40641C82E750EA410E14BF52EA430E16 +:108E90006FF000014FF4001717EB430F8ABF19461C +:108EA00017EB410FB5E74CEA05510020B0BDD4F1F6 +:108EB0000104B4F120070FDAC4F12007520828BFDB +:108EC00042F0010210FA07F501FA07F7E1BF2A4361 +:108ED000E0403843E1400FE0352C98DCC7F1200436 +:108EE00052EA400220FA07F218BF42F0010231FABA +:108EF00007F0A1400A43002172F1004250F1000046 +:108F000051EB0C01B0BD00005FF0FF0C1CEAD0512A +:108F100014BF614506E0C110400721F0E04101F1B6 +:108F20006051704779B900F0004100020AD0B0FAF0 +:108F300080FC00FA0CF001F16051A1EB0C5101EB47 +:108F4000D0214005704741020CBF40F4E0016FF0B2 +:108F500000010020704700004FEAF17CBCF1E04CBA +:108F60002CBFBCF5001F11E05FEA4C0C34BFBCF114 +:108F70007F5F2EE05FEA9C0C4FEA0C1C4FEA3C0C32 +:108F8000C10071F100414CEB50707047C90241EAD9 +:108F90005051C00218BF41F0010141F000414FEAB9 +:108FA0006C50C0F10900212810D240EACC7CCCF1F1 +:108FB000200C11FA0CF070F10040CCF1200C21FAD9 +:108FC0000CF00CF0004C40EB0C0070474FEACC70FA +:108FD0007047490011F5001F04D84FEACC10FF304C +:108FE000C0057047C817704762F30F2262F31F4233 +:108FF000401810F0030308D0C91A1FD3DB0748BF7D +:1090000000F8012D28BF20F8022D130030B41446BB +:109010001546103928BF20E93C00FAD8490728BF77 +:1090200020E90C0048BF40F8042D890028BF20F833 +:10903000022D48BF00F8012D30BC7047C91818BF79 +:1090400000F8012DCB0728BF00F8012D7047000064 +:10905000DFF8B01100220A700A70012802D004283B +:1090600003D07047012008707047052008707047D2 +:1090700065490860704710B464494A6802F00C0200 +:10908000644B082A12D10A680C6804F03F04B3FB51 +:10909000F4F30A68C2F388125A430B68C3F301431E +:1090A0005B1C5B00B2FBF3F2026000E003604A6805 +:1090B00002F0F003584A1B099B5C046824FA03F38E +:1090C00043604C6804F4E054A40AA45CE340836069 +:1090D000496801F46041490B895C426822FA01F158 +:1090E000C16010BC70474A4900F44072B2F5407F3D +:1090F00006D10A6822F4F812484B03401A430A606A +:109100008A6E000552EA105088667047444908602C +:109110007047444908607047434A0029116802D0EB +:1091200008431060704721EA0000106070473F4A12 +:109130000029116802D008431060704721EA00003E +:10914000106070473A4A0029116802D00843106045 +:10915000704721EA000010607047364A0029116804 +:1091600002D008431060704721EA00001060704789 +:10917000314A0029116802D008431060704721EA83 +:109180000000106070472D4A0029116802D0084382 +:109190001060704721EA000010607047284A0029DB +:1091A000117802D008431070704721EA0000107057 +:1091B000704700214209124B012A01D11A6804E0CC +:1091C000022A01D11A6F00E05A6F012300F01F003C +:1091D00003FA00F0024200D01946084670471948C9 +:1091E000016841F08071016070470021164A1268E1 +:1091F000024200D0012108467047144908707047A8 +:109200000038024070380240800E47420438024065 +:10921000083802400024F400E09A0020FFFCFF0F11 +:109220003C0E4742400E4742303802404038024030 +:1092300044380240103802402038024024380240AE +:109240000D380240743802400C3802400E3802409B +:1092500080B52749884209D101210846FFF77DFFE3 +:1092600000210120BDE80440FFF777BF2149884273 +:1092700009D101210220FFF770FF00210220BDE883 +:109280000440FFF76ABF1C49884209D1012104202C +:10929000FFF763FF00210420BDE80440FFF75DBF36 +:1092A0001649884209D101210820FFF756FF002105 +:1092B0000820BDE80440FFF750BF1149884209D19A +:1092C00001211020FFF749FF00211020BDE80440D4 +:1092D000FFF743BF0B49884209D101218020FFF7E6 +:1092E0003CFF00218020BDE80440FFF736BF01BDF0 +:1092F000000002400004024000080240000C02404E +:1093000000100240001C0240F0B4002232E00123B1 +:1093100093400C681C409C422BD154000325A5406F +:10932000ED4306682E40066006680F79A7403E436D +:1093300006600E79012E01D0022E11D186682E40D2 +:10934000866086684F79A7403E438660466826EA75 +:109350000303436043688E799640B6B2334343605B +:10936000C3682B40C360C368CD7905FA04F4234376 +:10937000C360521C102ACAD3F0BC70474FF6FF716D +:1093800001600021017141718171C171704700223A +:109390000069084200D001221046704701837047DF +:1093A0004183704710B4CB1000EB830001F007013C +:1093B0008900036A0F248C40A3430362036A02FA04 +:1093C00001F11943016210BC7047000080B54349A8 +:1093D00088420BD101214FF40010FFF7C9FE002194 +:1093E0004FF40010BDE80440FFF7C2BE3C4988427C +:1093F0000BD101214FF48000FFF7BAFE00214FF49A +:109400008000BDE80440FFF7B3BE364988420BD167 +:1094100001214FF40000FFF7ABFE00214FF40000E4 +:10942000BDE80440FFF7A4BE01BD7FB504460D466C +:10943000A68800A8FFF71FFE02992B48B1FBF0F0A9 +:109440004FF6C07232400243A28022884FF6FE736C +:109450001A4022802A68254B9A420AD25200B1FB58 +:10946000F2F10A4692B2042A00D20421401C208460 +:1094700021E0EB884BF6FF76B34204D102EB4202C7 +:10948000B1FBF2F106E019235A43B1FBF2F141F4CA +:10949000804189B20A0502D141F0010189B241F44B +:1094A000004180B24FF4967250434FF47A7290FBB1 +:1094B000F2F0401C2084A183208840F0010020802D +:1094C00020884FF6F5310840A98808436989084388 +:1094D0002080A8892989084320817FBD005400404D +:1094E00000580040005C004040420F00A18601008F +:1094F0000029018803D041F00101018070474FF637 +:10950000FE721140018070470029018803D041F4A8 +:109510008071018070474FF6FF62114001807047F3 +:109520000029018803D041F40071018070474FF693 +:10953000FF52114001807047002A02D041F0010122 +:1095400001E001F0FE01018270470029018803D08B +:1095500041F48061018070474FF6FF321140018075 +:1095600070470029018803D041F400410180704711 +:109570004904490C0180704782B00246002003462E +:109580000193009300920A0F01920902090A019ABD +:10959000002A03D0009A1432009203E0090C009ACA +:1095A00018320092009A12680A4200D0012002B0DC +:1095B0007047000080B5254988420BD101214FF446 +:1095C0008050FFF7E0FD00214FF48050BDE80440DB +:1095D000FFF7D9BD1E4988420BD101214FF48040CD +:1095E000FFF7C6FD00214FF48040BDE80440FFF7BF +:1095F000BFBD184988420BD101214FF40040FFF74D +:10960000B7FD00214FF40040BDE80440FFF7B0BDB6 +:1096100001BD028802F441520B881A434B881A4359 +:109620008B881A43CB881A430B891A434B891A43F8 +:109630008B891A43CB891A430280828B4FF2FF73C6 +:109640001A408283098A018270470000003001407D +:1096500000380040003C00400029018803D041F060 +:109660004001018070474FF6BF7211400180704782 +:10967000002A828802D011438180704722EA0101CA +:109680008180704700220089084200D001221046E4 +:10969000704700000168490849000160002101602D +:1096A00041608160C1600161212141616A49884254 +:1096B00003D16A483D21016070476949884204D15D +:1096C00066484FF47461016070476649884204D16E +:1096D00062484FF47411016070476349884204D1B5 +:1096E0005E484FF07461016070476049884203D161 +:1096F0005A485F49416070475E49884203D15748E4 +:109700005D49416070475D49884203D153485C49D7 +:10971000416070475B49884204D150484FF03D5149 +:10972000416070475849884203D158483D21016043 +:1097300070475749884204D154484FF4746101601E +:1097400070475449884204D150484FF47411016065 +:1097500070475149884204D14C484FF07461016010 +:1097600070474E49884203D148484149416070479B +:109770004B49884203D145483F49416070474949B8 +:10978000884203D141483E4941607047464988427A +:1097900003D13E484FF03D51416070470268434B52 +:1097A0001A400B681A43CB681A434B691A438B69FA +:1097B0001A43CB691A430B6A1A434B6A1A438B6AE2 +:1097C0001A434B6B1A438B6B1A4302604269D208EF +:1097D000CB6A53EAC2020B6B1A4342610A694260C8 +:1097E0004A6882608968C16070470029016803D0B7 +:1097F00041F001010160704749084900016070476C +:10980000002A01D001617047C1607047006800F014 +:109810000100704700221C4B984201D2244800E00E +:1098200024488B0001D5406800E0006808402249C8 +:10983000084200D0012210467047134A904201D2DC +:109840001B4800E01B481C4A0A40890001D5C26041 +:10985000704782607047000010600240086002405C +:109860002860024040600240586002407060024040 +:109870003D00002088600240400F0020A0600240B0 +:1098800000003D20B86002401064024008640240BD +:109890002864024040640240586402407064024000 +:1098A00088640240A0640240B86402403F801CF01B +:1098B00000600240006402407D0F7D0F0249086095 +:1098C000704702490860704720000E4224000E4293 +:1098D00070B504460026DFF83854CA20E8615320EA +:1098E000E86100F018F8002811D0286820F0400046 +:1098F00028602868216808432860A068A860A868D4 +:10990000616840EA0140A86000F024F80126FF20C9 +:10991000E861304670BD81B000200090DFF8F403AC +:109920000168490613D44FF0FF310160016801F06E +:109930004001009A521C0092009AB2F5803F01D07B +:109940000029F3D00068800900F0010000E0012048 +:1099500001B07047DFF8BC03016821F080010160AD +:10996000704781B000200090DFF8A813CA208861FA +:1099700053208861086820F0A0000860086800F0A3 +:109980002000009A521C0092009AB2F5003F01D0CC +:109990000028F3D00868400900F00100FF228A6126 +:1099A00001B07047F8B507460E460024DFF85C5357 +:1099B000002FA86804D140060AD42046F07007E0C2 +:1099C000400603D5307800F0BEF901E02046F07083 +:1099D0003078002F09D07178090241EA0040B1784F +:1099E0000843F17840EA01460FE000F0A1F907468C +:1099F000707800F09DF9000240EA0747B07800F067 +:109A000097F93843F17840EA0146CA20686253204A +:109A10006862FFF780FF00280FD0DFF8FC023040BB +:109A20002860FFF797FFA868800605D4FFF799FF25 +:109A3000002802D0012400E00124FF2068622046B3 +:109A4000F2BD10B50C46DFF8C4120968DFF8C82271 +:109A500011400A0C02F03F0323700B0A03F07F034E +:109A6000637001F07F01A17002F04001E1700028F5 +:109A70000BD1207800F067F92070607800F063F96E +:109A80006070A07800F05FF9A07010BDDFF88C1254 +:109A9000486A0968704770B506460D460024002ED6 +:109AA00006D16878C10603D500F0EF000A3068706F +:109AB000002E05D0687800F046F9A87800F043F948 +:109AC000E878002E09D06978090241EA0040A978B7 +:109AD0000843297840EA41360FE000F029F90646AC +:109AE000687800F025F9000240EA0646A87800F000 +:109AF0001FF93043297840EA4136DFF82052CA2066 +:109B0000286253202862FFF706FF00280FD0DFF8F5 +:109B1000100230402860FFF71DFF6868800605D4FA +:109B2000FFF71FFF002802D0012400E00124FF20DE +:109B30002862204670BD10B50C46DFF8E0110968B8 +:109B4000DFF8DC2111400A0CE2700A0A02F01F0261 +:109B5000627001F03F02A270490B01F00701217011 +:109B600000280BD1E07800F0EEF8E070607800F0AB +:109B7000EAF86070A07800F0E6F8A07010BDDFF899 +:109B80009011CA22CA615322CA610A68D208D2005F +:109B90000A600A6810430860FF20C8617047DFF858 +:109BA0008411CA220A6153220A610860FF200861F9 +:109BB000704781B000210091DFF85411CA22CA61B8 +:109BC0005322CA610028086804D040F4806008600D +:109BD000012012E020F480600860486800F0040072 +:109BE000009A521C0092009AB2F5803F01D00028E2 +:109BF000F3D04868800800F00100FF22CA6101B07C +:109C0000704781B000220092474A0092009A02EB0E +:109C1000800000900098016001B0704781B0002181 +:109C2000009141490091009901EB8000009000985B +:109C3000006801B0704738B500242246344DCA236D +:109C4000EB615323EB616B681B0701D406E0521CE8 +:109C50006B681B0702D5B2F5805FF8D16A681207FE +:109C600009D42A68D20606D408436862FFF779FE51 +:109C7000002800D00124FF20E861204632BD244A9C +:109C8000CA23D3615323D36100F0040320F00400FE +:109C90000029116805D008431060906B1843906349 +:109CA00005E021EA00001060906B98439063FF206C +:109CB000D06170470021174A12681C4B1A400242BB +:109CC00000D001210846704710B40021104A936B60 +:109CD00003F004031468044003EAD03323435268BA +:109CE00002EA101002D0000400D00121084610BC86 +:109CF000704708490003000C40F080000A6802F039 +:109D0000800262EA000008607047000000280040FE +:109D1000082800400C2800407F7F7F000428004076 +:109D20003FFFFF0014280040502800407F3F010003 +:109D3000002101E0491C0A38C0B20A28FAD240EAE0 +:109D40000110C0B27047010901EB810200F00F0061 +:109D500000EB4200C0B2704730B40168CB432149E8 +:109D60008279002A27D00A4614682340136053687A +:109D70000468A34353600379CC18236805682B4318 +:109D8000236093680468A3439360D3680468A34383 +:109D9000D36043790568102B07D1916829439160FE +:109DA000D16800680843D0600AE051FA83F4206863 +:109DB0002843206004E000790C18206818402060D7 +:109DC00030BC70470021074A1368034052690242C1 +:109DD00002D0002B00D001210846704702490860DC +:109DE00070470000003C0140143C01401949084301 +:109DF00019490860704770B403781A460121C47885 +:109E0000002C1DD0144B1B6803F4E063C3F5E06322 +:109E10001B0A4478C3F10405AC4085780F2646FA46 +:109E200003F32B4023431B010C4C135500784211C4 +:109E30000B4B00F01F0001FA00F043F8220006E08F +:109E40005011084A03F01F03994042F8201070BCDB +:109E5000704700000000FA050CED00E000E400E0AF +:109E600000E100E080E100E030B401F00302920084 +:109E700021F00301054BCC580F259540AC43CC5045 +:109E8000CC5890402043C85030BC7047083801403F +:109E900080B501214FF48070FFF775F900214FF470 +:109EA0008070BDE80440FFF76EB942684D4B1A4020 +:109EB0000B7942EA03220B681A43426082684A4BDC +:109EC0001A400B691A43CB681A438B681A434B79C3 +:109ED00042EA43028260C26A22F47002097D491E8E +:109EE000C9B242EA0151C1627047002101600171AB +:109EF00041718160C16001610121017570473B4979 +:109F00000A683B4B1A4003681A4343681A43836844 +:109F10001A43C06810430860704700210160416027 +:109F20008160C16070470029816803D041F0010160 +:109F300081607047490849008160704770B4072408 +:109F40000A290BD3C568A1F10A0606EB4606B44000 +:109F500025EA0404B3402343C36008E0056901EB2C +:109F60004106B44025EA0404B340234303611F23A0 +:109F7000072A0AD2446B521E02EB8202934024EA63 +:109F8000030391401943416316E00D2A0AD2046B82 +:109F9000D21F02EB8202934024EA0303914019434B +:109FA000016309E0C46A0D3A02EB8202934024EA9D +:109FB000030391401943C16270BC7047816841F04E +:109FC0008041816070470029816803D041F480613D +:109FD0008160704721F4806181607047C06C80B2FD +:109FE00070470000FFFEFFFCFDF7FFC004230140A7 +:109FF000E030FCFF00220068084200D00122104639 +:10A000007047000013F0004C03D55B42524263F1ED +:10A0100000039CEA210C00F0178010B5644603D3BE +:10A020004942404261F1000100F00EF8640004D39F +:10A030004942404261F10001244203D55B42524251 +:10A0400063F1000310BD00001B4213D1094236D159 +:10A050002AB18446B0FBF2F002FB10C2704709F04F +:10A0600081BBFCD30022002370470B0002000021BB +:10A0700000207047904271EB030CF6D370B5B1FA33 +:10A0800081F4B3FA83F52C1BA340C4F1200532FA06 +:10A0900005F63343A2405FF00046E64002E05B086D +:10A0A0005FEA3202841A71EB030524BF2046294679 +:10A0B0007641F4D302000B003000002170BD012A6C +:10A0C000CFD970B5140C20D0B1FA81F4B2FA82F570 +:10A0D000C4F120046419B4F12006D6D3B2405FF075 +:10A0E0000044F440002502E052085FEA3303C61A38 +:10A0F00071EB020E24BF3046714664416D41F3D3CB +:10A1000002000B002000290070BD0C46B1FBF2F1EB +:10A1100002FB11452D0445EA1045B5FBF2F402FBA4 +:10A12000145580B240EA0545B5FBF2F002FB10522F +:10A1300040EA044070BD000010B5040010480078EB +:10A14000002805D10F4809F034FB0D4801210170AA +:10A150000C4809F064FB20000AF0E0F9040009480B +:10A1600009F091FB200010BD10B50400054809F06E +:10A1700056FB20000AF01EFB024809F084FB10BDCC +:10A18000B866012058630120BFF34F8FDFF8B40C8D +:10A19000006810F4E060DFF8B01C0843DFF8A41C8E +:10A1A0000860BFF34F8FFEE700B583B00020ADF825 +:10A1B000040000208DF8060000208DF80700012023 +:10A1C00000900DF106037622D0210020F8F7C9F89F +:10A1D000002801D1002044E076208DF804009DF88D +:10A1E000060050F020008DF80500022301AAD021BE +:10A1F0000020F8F75CF8002801D1002031E00120B0 +:10A2000000900DF107034922D0210020F8F7A9F8AA +:10A21000002801D1002024E049208DF804009DF899 +:10A22000070050F001008DF80500022301AAD0219B +:10A230000020F8F73CF8002801D1002011E076203A +:10A240008DF804009DF806008DF80500022301AA90 +:10A25000D0210020F8F72BF8002801D1002000E0E1 +:10A2600001200EBD38B50400F7F729FF0500DFF81F +:10A27000040D0078401CDFF8FC1C0870DFF8F40CBB +:10A280004078F021084202D09920FBF701FCFBF74F +:10A290006CFCDFF8E00C4078401CDFF8D81C4870FC +:10A2A000210089B22800F8F7F7F8DFF8C80C4078E9 +:10A2B000F021084202D09920FBF7EAFBDFF8B40C4A +:10A2C0004078401EDFF8AC1C4870C0B2002801D1B5 +:10A2D000FBF745FCFCF79FFA31BD10B582B00020BA +:10A2E000ADF80000F7F7EBFE04006B208DF80000DE +:10A2F00080208DF80100022300AAD0210020F7F76A +:10A30000D6FF002801D1002094E064212000F8F756 +:10A31000C3F8FFF749FF002801D100208AE06B2035 +:10A320008DF8000000208DF80100022300AAD02142 +:10A330000020F7F7BCFF002801D100207AE0282197 +:10A340002000F8F7A9F819208DF8000004208DF8F6 +:10A350000100022300AAD0210020F7F7A8FF00285F +:10A3600001D1002066E01A208DF8000003208DF84E +:10A370000100022300AAD0210020F7F798FF00284F +:10A3800001D1002056E01B208DF8000008208DF838 +:10A390000100022300AAD0210020F7F788FF00283F +:10A3A00001D1002046E01D208DF8000003208DF82B +:10A3B0000100022300AAD0210020F7F778FF00282F +:10A3C00001D1002036E06A208DF8000000208DF8D1 +:10A3D0000100022300AAD0210020F7F768FF00281F +:10A3E00001D1002026E06C208DF800003F208DF880 +:10A3F00001009DF80110DFF8500DF7F7E2FE02238F +:10A4000000AAD0210020F7F752FF002801D1002038 +:10A4100010E06B208DF8000040208DF80100022331 +:10A4200000AAD0210020F7F742FF002801D1002028 +:10A4300000E0012016BD0178407850EA012000B20A +:10A44000704780B502200090DFF8003D6B22D021DC +:10A450000020F7F786FF002801D100205BE00120F3 +:10A460000090DFF8EC3C1A22D0210020F7F779FFAA +:10A47000002801D100204EE001200090DFF8D43CFC +:10A480001B22D0210020F7F76CFF002801D100200B +:10A4900041E001200090DFF8C03C1C22D0210020C8 +:10A4A000F7F75FFF002801D1002034E00120009081 +:10A4B000DFF8A83C1D22D0210020F7F752FF00282A +:10A4C00001D1002027E001200090DFF8943C6A22AF +:10A4D000D0210020F7F745FF002801D100201AE025 +:10A4E00001200090DFF87C3C3822D0210020F7F7D3 +:10A4F00038FF002801D100200DE001200090DFF896 +:10A50000683C1922D0210020F7F72BFF002801D149 +:10A51000002000E0012002BD80B50020ADF8000061 +:10A520001A208DF80000DFF8240C00798DF8010066 +:10A53000022300AAD0210020F7F7B9FE002801D19C +:10A54000002090E01B208DF80000DFF8000C40791F +:10A550008DF80100022300AAD0210020F7F7A7FE02 +:10A56000002801D100207EE01C208DF80000DFF8DB +:10A57000DC0B80798DF80100022300AAD021002095 +:10A58000F7F795FE002801D100206CE01D208DF822 +:10A590000000DFF8B80BC0798DF80100022300AA93 +:10A5A000D0210020F7F783FE002801D100205AE0D7 +:10A5B0006A208DF80000DFF8940BC0788DF8010058 +:10A5C000022300AAD0210020F7F771FE002801D154 +:10A5D000002048E019208DF80000DFF8700B80782B +:10A5E0008DF80100022300AAD0210020F7F75FFEBA +:10A5F000002801D1002036E038208DF80000DFF877 +:10A600004C0B007A8DF80100022300AAD021002013 +:10A61000F7F74DFE002801D1002024E06B208DF8D3 +:10A620000000DFF8280B00788DF80100022300AA53 +:10A63000D0210020F7F73BFE002801D1002012E0D6 +:10A640006C208DF80000DFF8040B40788DF80100D5 +:10A65000022300AAD0210020F7F729FE002801D10B +:10A66000002000E0012002BD10B582B00020ADF84E +:10A670000000DFF8D80A0078400612D56B208DF86C +:10A68000000000208DF80100022300AAD021002044 +:10A69000F7F70DFE002801D10020C9E03220FFF7B6 +:10A6A000E1FD6C208DF80000DFF8A00A407810F082 +:10A6B000F8008DF80100022300AAD0210020F7F74E +:10A6C000F6FD002801D10020B2E06A208DF80000DC +:10A6D00000208DF80100022300AAD0210020F7F706 +:10A6E000E6FD002801D10020A2E0002400E0641C67 +:10A6F000062C10DA14F113008DF8000000208DF8FC +:10A700000100022300AAD0210020F7F7D0FD002885 +:10A71000EDD100208CE019208DF8000000208DF88C +:10A720000100022300AAD0210020F7F7C0FD002875 +:10A7300001D100207CE01A208DF8000003208DF864 +:10A7400001004FF4FA642000FA281DD0B0F5FA7F1A +:10A7500013D0B0F57A7F09D0B0F5FA6F19D19DF812 +:10A76000010050F018008DF8010016E09DF801007E +:10A7700050F010008DF801000FE09DF8010050F03E +:10A7800008008DF8010008E09DF801008DF8010037 +:10A7900003E09DF801008DF80100022300AAD021FA +:10A7A0000020F7F784FD002801D1002040E0FA2CBA +:10A7B00014D0B4F5FA7F0DD0B4F57A7F06D0B4F595 +:10A7C000FA6F0FD103208DF801000EE002208DF802 +:10A7D00001000AE001208DF8010006E000208DF85C +:10A7E000010002E000208DF801001B208DF8000020 +:10A7F0009DF80100C0008DF80100022300AAD021BD +:10A800000020F7F754FD002801D1002010E0382087 +:10A810008DF8000000208DF80100022300AAD0214D +:10A820000020F7F744FD002801D1002000E00120BE +:10A8300016BD00B583B00020ADF8060000208DF8ED +:10A8400004006B208DF8060001208DF8070002231C +:10A850000DF10602D0210120F7F729FD002801D1D2 +:10A86000002023E02820FFF7FDFC0120009001AB31 +:10A870006C22D0210120F7F774FD002801D10020BF +:10A8800014E06C208DF806009DF8040010F0C00064 +:10A890008DF8070002230DF10602D0210120F7F701 +:10A8A00006FD002801D1002000E001200EBD2DE9A9 +:10A8B000F04F85B004000D0016001F000020ADF819 +:10A8C000040002A80021002206C0083806208DF8E6 +:10A8D000060038208DF8040000208DF805000223C2 +:10A8E00001AAD0210120F7F7E2FC002802D15FF095 +:10A8F000FF3070E123208DF8040000208DF8050062 +:10A90000022301AAD0210120F7F7D1FC002802D1AF +:10A910005FF0FF305FE16A208DF8040000208DF8C1 +:10A920000500022301AAD0210120F7F7C0FC00286E +:10A9300002D15FF0FF304EE16A208DF80400042060 +:10A940008DF80500022301AAD0210120F7F7AFFC02 +:10A95000002802D15FF0FF303DE11A208DF804009D +:10A9600001208DF80500022301AAD0210120F7F76C +:10A970009EFC002802D15FF0FF302CE119208DF8F9 +:10A98000040000208DF80500022301AAD021012037 +:10A99000F7F78DFC002802D15FF0FF301BE11B2090 +:10A9A0008DF804008DF80540022301AAD021012072 +:10A9B000F7F77DFC002802D15FF0FF300BE1FFB21A +:10A9C000002F0FD01C208DF804008DF805400223C5 +:10A9D00001AAD0210120F7F76AFC002802D15FF01C +:10A9E000FF30F8E064B2002C02D0C820FFF73AFC38 +:10A9F0006A208DF8040044208DF80500022301AA86 +:10AA0000D0210120F7F753FC002802D15FF0FF307E +:10AA1000E1E023208DF80400FFB2002F03D00820CE +:10AA20008DF8050002E070208DF80500022301AAD0 +:10AA3000D0210120F7F73BFC002802D15FF0FF3066 +:10AA4000C9E00A20FFF70EFC002408E0E4B2002071 +:10AA500045F82400E4B2002046F82400641CE4B267 +:10AA6000032CF3D35FF00009B9F1320F6EDA0A203C +:10AA7000FFF7F8FB0220009002AB7222D0210120E8 +:10AA8000F7F76FFC002802D15FF0FF30A3E002A8C7 +:10AA9000FFF7D1FC9DF8061090FBF1F8B8F1070F15 +:10AAA00002DA7FF0010096E000241AE05FFA8AFAE9 +:10AAB00055F82AB05FFA8AFA02A810EB4A00FFF7AD +:10AAC000BAFC0BFA80F05FFA8AFA45F82A001AF10C +:10AAD000010A5FFA8AFABAF1030FE7D319F1010903 +:10AAE000641CE4B24445BFDAB9F1320FBCDA9DF818 +:10AAF0000600009002AB7422D0210120F7F731FC50 +:10AB0000002802D15FF0FF3065E0FFB2002F1AD0BD +:10AB10005FF0000A5FFA8AFABAF1030FDED25FFA39 +:10AB20008AFA56F82AB05FFA8AFA02A810EB4A00AD +:10AB3000FFF781FC0BFA80F05FFA8AFA46F82A00E8 +:10AB40001AF1010AE6E75FF0000AC2E723208DF858 +:10AB5000040000208DF80500022301AAD021012065 +:10AB6000F7F7A5FB002802D15FF0FF3033E05FF07C +:10AB7000000A0FE05FFA8AFA55F82A004FF47A715A +:10AB80004843322190FBF1F05FFA8AFA45F82A0037 +:10AB90001AF1010A5FFA8AFABAF1030FEAD3FFB297 +:10ABA000002F17D05FF0000A0FE05FFA8AFA56F81C +:10ABB0002A004FF47A714843322190FBF1F05FFA9A +:10ABC0008AFA46F82A001AF1010A5FFA8AFABAF1FB +:10ABD000030FEAD3012005B0BDE8F08F2DE9F04363 +:10ABE00089B004000D00160000275FF0010801A8DD +:10ABF000002101605FF000090320009001AB0D22ED +:10AC0000D0210120F7F7ADFB002801D15FF0FF381C +:10AC10005FF0000905E005A8002140F8291019F1AE +:10AC20000109B9F1030F11DA01A819F80000002891 +:10AC3000F1D001A819F80000DFF87C1A11EB4000F0 +:10AC400030F8020C05A941F82900E8E75FF0000997 +:10AC50001FE002A850F82900DFF8601A884207DADE +:10AC6000DFF85C0AF7F7ADFA012010FA09F00743A4 +:10AC700002A850F82900DFF84C1A884207DBDFF8F9 +:10AC8000480AF7F79EFA012010FA09F0074319F174 +:10AC90000109B9F1030F2BDA55F8290056F82910EC +:10ACA000401A09F0FFFF02A941F8290005A850F851 +:10ACB00029000028CDD002A850F8290005A951F894 +:10ACC000291090FBF1F0B0F57A7009F0EBFF24F851 +:10ACD000190034F9190040F2F5118842D7DBDFF88A +:10ACE000EC09F7F76EFA012010FA09F00743CEE7F6 +:10ACF000B4F904000090B4F90230B4F9002039002E +:10AD0000DFF8CC09F7F75DFA002F05D0DFF8C409AA +:10AD1000F7F757FA7FF00208404640B209B0BDE8A5 +:10AD2000F08338B505000020ADF800000020ADF834 +:10AD30000200F7F7C4F9040038208DF80000002065 +:10AD40008DF80100022300AAD0210020F7F7AFFA06 +:10AD5000002801D1002074E000F026FB002801D17A +:10AD600000206EE01F208DF800004B208DF80100C0 +:10AD7000022300AAD0210020F7F799FA002801D178 +:10AD800000205EE01E208DF8000006208DF80100F6 +:10AD9000022300AAD0210020F7F789FA002801D168 +:10ADA00000204EE069208DF80000C0208DF80100E1 +:10ADB000022300AAD0210020F7F779FA002801D158 +:10ADC00000203EE0012201210320F7F7ECFB0020E8 +:10ADD000F7F7EBFB38208DF8000040208DF80100DC +:10ADE000022300AAD0210020F7F761FA002801D140 +:10ADF000002026E0012028702000407DC046012868 +:10AE000010D001212000F7F747FBBDF80200401CDD +:10AE1000ADF80200BDF802003228EDD3DFF8B80823 +:10AE2000F7F7CFF9012200210320F7F7BCFB002040 +:10AE3000F7F7BBFB00F0AEFB002801D1002000E0DB +:10AE4000012032BD0CED00E00400FA0570B58EB0B3 +:10AE5000040000A80021002206C0083801250026B1 +:10AE60000BA80021002200230EC00C3808A80021E6 +:10AE7000002200230EC00C3805A800210022002368 +:10AE80000EC00C3802A80021002200230EC00C388E +:10AE9000FFF7D7FA002801D1002056E0FFF7E4FBC6 +:10AEA000002806D00126FFF7C4FC002803D10020AB +:10AEB0004BE0002049E0012302AA08A90020FFF787 +:10AEC000F6FC05006DB2012D04D0DFF80808F7F795 +:10AED00078F91CE0012305AA0BA97FF01F00FFF7FA +:10AEE000E6FC05006DB2012D04D0DFF8E007F7F7AE +:10AEF00068F90CE005AA02A900A8FFF76FFE05009B +:10AF00006DB2012D03D0DFF8B807F7F75AF92670B4 +:10AF1000BDF800006070BDF900000012A070BDF81F +:10AF20000200E070BDF9020000122071BDF80400BB +:10AF30006071BDF904000012A071E571FFF7ECFA31 +:10AF4000002801D1002000E001200EB070BD80B5C6 +:10AF5000DFF888070078002809D1FFF7BEF900283C +:10AF600001D1002004E0DFF8740701210170012005 +:10AF700002BD0000F89900201CB500208DF80600E5 +:10AF80000020ADF80400F7F79AF8040001200090C3 +:10AF90000DF106036B22D0210020F7F7E2F900281B +:10AFA00001D1002088E09DF806006021084216D0FB +:10AFB0006B208DF804009DF8060010F09F008DF8BE +:10AFC0000500022301AAD0210020F7F770F900281C +:10AFD00001D1002070E014212000F7F75DFA012074 +:10AFE00000900DF106036C22D0210020F7F7B9F98B +:10AFF000002801D100205FE06C208DF804009DF84E +:10B00000060010F0C7008DF80500022301AAD02128 +:10B010000020F7F74CF9002801D100204CE00A216C +:10B020002000F7F739FA1D208DF8040043208DF831 +:10B030000500022301AAD0210020F7F738F90028E3 +:10B0400001D1002038E01C208DF8040000208DF88C +:10B050000500022301AAD0210020F7F728F90028D3 +:10B0600001D1002028E020208DF8040080208DF8F8 +:10B070000500022301AAD0210020F7F718F90028C3 +:10B0800001D1002018E01F208DF8040080208DF8E9 +:10B090000500022301AAD0210020F7F708F90028B3 +:10B0A00001D1002008E0DFF83806007850F00100F8 +:10B0B000DFF82C160870012016BD00B583B0002003 +:10B0C0008DF806000020ADF80400012000900DF17D +:10B0D00006036C22D0210020F7F743F9002801D1A4 +:10B0E000002030E06C208DF804009DF8060050F040 +:10B0F00038008DF80500022301AAD0210020F7F7BF +:10B10000D6F8002801D100201DE0DFF8D405007832 +:10B1100080070FD46B208DF8040040208DF80500C7 +:10B12000022301AAD0210020F7F7C1F8002801D19D +:10B13000002008E0DFF8A805007810F0FE00DFF836 +:10B14000A015087001200EBD3C4903084064012091 +:10B1500044640120456401204664012047640120C5 +:10B1600043640120486401204264012000B583B09B +:10B1700000208DF804000020ADF8060001200090AA +:10B1800001AB6C22D0210020F7F7EBF8002801D1A9 +:10B19000002014E06C208DF806009DF8040050F0AB +:10B1A00038008DF8070002230DF10602D02100209F +:10B1B000F7F77DF8002801D1002000E001200EBD46 +:10B1C0002DE9F04186B004000D0004A80021002202 +:10B1D00006C008380020ADF80C000126DFF8040591 +:10B1E0000768F6F76CFF8046DFF8FC040068401C37 +:10B1F000DFF8F41408600120009004AB6B22D0212A +:10B200000020F7F7AEF8002801D10020C9E09DF832 +:10B21000100040061AD56B208DF80C009DF8100028 +:10B2200010F0BF008DF80D00022303AAD0210020EA +:10B23000F7F73DF8002801D10020B2E01421404684 +:10B24000F7F72AF9DFF8A404F6F7BBFF0120009016 +:10B2500004AB6C22D0210020F7F783F8002801D13D +:10B2600000209EE09DF81000382108421ED06C207E +:10B270008DF80C009DF8100010F0C7008DF80D003F +:10B28000022303AAD0210020F7F711F8002801D1EA +:10B29000002086E005214046F7F7FEF8DFF850046D +:10B2A000F6F78FFFDFF84C0401210160EDB2009545 +:10B2B00004AB3B22D0210020F7F753F8002805D13A +:10B2C000DFF83404F6F77DFF00206AE09DF81100F6 +:10B2D00020709DF8100060709DF81300A0709DF81C +:10B2E0001200E0709DF8150020719DF81400607147 +:10B2F000002000E0401C062806D2015DDFF8FC2398 +:10B30000825C9142F6D00026F6B2012E18D1DFF809 +:10B31000F0030068401CDFF8E8130860DFF8E00382 +:10B320000068132804D1DFF8DC03F6F74AFF0BE0CE +:10B33000DFF8CC030068142806D1FEF725FF03E0F0 +:10B34000DFF8BC030021016006222100DFF8AC0316 +:10B35000F8F711FCDFF890030068C82190FBF1F2C8 +:10B3600001FB120000281BD1F86AC0680290F86A3D +:10B3700080680190B4F904000090B4F90230B4F987 +:10B380000020DC480168DFF88003F6F71AFFD64892 +:10B390000068DFF87813884202DBD348002101609F +:10B3A000012006B0BDE8F08130B583B00124002053 +:10B3B000ADF8060000208DF80400F6F780FE0500C9 +:10B3C0000120009001AB6B22D0210020F6F7C9FFCD +:10B3D000002801D100208BE09DF8040040061AD51A +:10B3E0006B208DF806009DF8040010F0BF008DF86A +:10B3F000070002230DF10602D0210020F6F757FFC7 +:10B40000002801D1002073E014212800F7F744F848 +:10B41000BF48F6F7D6FE1D208DF8060008208DF8EF +:10B42000070002230DF10602D0210020F6F73FFFAE +:10B43000002801D100205BE00120009001AB6C22CC +:10B44000D0210020F6F78DFF002801D100204FE029 +:10B450006C208DF806009DF8040050F080008DF8F7 +:10B4600004009DF8040050F007008DF804009DF8DA +:10B47000040010F0C7008DF804009DF804008DF85A +:10B48000070002230DF10602D0210020F6F70FFF7E +:10B49000002801D100202BE00120009001AB6B229D +:10B4A000D0210020F6F75DFF002801D100201FE029 +:10B4B0006B208DF806009DF8040010F0BF008DF899 +:10B4C00004009DF8040050F020008DF804009DF861 +:10B4D00004008DF8070002230DF10602D0210020A0 +:10B4E000F6F7E5FE002801D1002001E02000C0B2FF +:10B4F0003EBD80B50020ADF80000FFF755FF0028E5 +:10B5000001D1002045E01F208DF800004B208DF870 +:10B510000100022300AAD0210020F6F7C8FE00286F +:10B5200001D1002035E01E208DF8000006208DF8A6 +:10B530000100022300AAD0210020F6F7B8FE00285F +:10B5400001D1002025E069208DF80000C0208DF891 +:10B550000100022300AAD0210020F6F7A8FE00284F +:10B5600001D1002015E0012201210320F7F71BF88B +:10B5700038208DF8000040208DF80100022300AA39 +:10B58000D0210020F6F793FE002801D1002000E032 +:10B59000012002BD80B50020ADF80000012200218D +:10B5A0000320F7F700F838208DF8000000208DF810 +:10B5B0000100022300AAD0210020F6F778FE00281F +:10B5C00001D1002058E06B208DF8000000208DF89C +:10B5D0000100022300AAD0210020F6F768FE00280F +:10B5E00001D1002048E01D208DF8000000208DF8DA +:10B5F0000100022300AAD0210020F6F758FE0028FF +:10B6000001D1002038E06C208DF80000344800782B +:10B61000032803D100208DF8010012E030480078A3 +:10B62000022803D138208DF801000AE02C48007868 +:10B63000012803D107208DF8010002E03F208DF89A +:10B640000100022300AAD0210020F6F730FE0028D6 +:10B6500001D1002010E069208DF8000000208DF855 +:10B660000100022300AAD0210020F6F720FE0028C6 +:10B6700001D1002000E0012002BD80B50178012940 +:10B6800005D1FFF74EFB00280AD1002009E0017820 +:10B69000022905D1FFF7DAFB002801D1002000E0E4 +:10B6A000012002BD80B51B490020F9F757FF1A4958 +:10B6B0000B20F9F753FF01BDDC300308003E4900C1 +:10B6C000F449030801EFE700FC490308EC490308CB +:10B6D000E4480308044A03080C4A03087F63012076 +:10B6E0008C6601200060002094650120144A030844 +:10B6F0001C4A0308F8650120244A030874650120E8 +:10B70000FC650120C049030854490308A1860100D3 +:10B710002C4A0308CCF90208E402030810B50024FF +:10B72000DFF8540C007800280AD1FEF7D6FD002877 +:10B7300001D1002007E0DFF8400C0121017000E09A +:10B7400001242000C0B210BD1CB500208DF80600F9 +:10B750000020ADF80400F6F7B2FC040001200090D0 +:10B760000DF106036B22D0210120F6F7FAFD002827 +:10B7700001D1002068E09DF806006021084216D043 +:10B780006B208DF804009DF8060010F09F008DF8E6 +:10B790000500022301AAD0210120F6F788FD002828 +:10B7A00001D1002050E01E212000F6F775FE012097 +:10B7B00000900DF106036C22D0210120F6F7D1FD97 +:10B7C000002801D100203FE06C208DF804009DF896 +:10B7D000060010F0F8008DF80500022301AAD02120 +:10B7E0000120F6F764FD002801D100202CE00A2199 +:10B7F0002000F6F751FE1B208DF8040008208DF87C +:10B800000500022301AAD0210120F6F750FD0028EF +:10B8100001D1002018E01A208DF8040003208DF8D3 +:10B820000500022301AAD0210120F6F740FD0028DF +:10B8300001D1002008E0DFF8440B007850F002004E +:10B84000DFF8381B0870012016BD00B583B000205A +:10B850008DF806000020ADF80400012000900DF1E5 +:10B8600006036C22D0210120F6F77BFD002801D1D0 +:10B87000002030E06C208DF804009DF8060050F0A8 +:10B8800007008DF80500022301AAD0210120F6F758 +:10B890000EFD002801D100201DE0DFF8E00A00784D +:10B8A000C0070FD46B208DF8040040208DF80500F0 +:10B8B000022301AAD0210120F6F7F9FC002801D1CA +:10B8C000002008E0DFF8B40A007810F0FD00DFF88F +:10B8D000AC1A087001200EBD00B583B000208DF8B1 +:10B8E00004000020ADF806000120009001AB6C229E +:10B8F000D0210120F6F735FD002801D1002014E009 +:10B900006C208DF806009DF8040050F007008DF8BB +:10B91000070002230DF10602D0210120F6F7C7FC33 +:10B92000002801D1002000E001200EBD7FB50400F9 +:10B9300002A80021002206C0083800260020ADF829 +:10B940000400F6F7BCFB05000120009002AB6B225F +:10B95000D0210120F6F705FD002801D1002083E069 +:10B960009DF80800400625D56B208DF804009DF851 +:10B97000080010F0BF008DF80500022301AAD021B5 +:10B980000120F6F794FC002801D100206CE0322160 +:10B990002800F6F781FDDFF8E809F6F712FC00262B +:10B9A00003E0F6B200203055761CF6B2062EF8D32E +:10B9B000012059E00120009002AB6C22D02101202F +:10B9C000F6F7CFFC002801D100204DE09DF80800DB +:10B9D0000721084225D06C208DF804009DF808004E +:10B9E00010F0F8008DF80500022301AAD0210120F3 +:10B9F000F6F75DFC002801D1002035E00A2128007F +:10BA0000F6F74AFDDFF87C09F6F7DBFB002603E0DA +:10BA1000F6B200203055761CF6B2062EF8D301207F +:10BA200022E00620009002AB4322D0210120F6F74D +:10BA300098FC002805D1DFF85009F6F7C2FB00207A +:10BA400012E09DF8090020709DF8080060709DF8D4 +:10BA50000B00A0709DF80A00E0709DF80D002071A9 +:10BA60009DF80C006071012004B070BD2DE9F64F07 +:10BA7000ADF63C6D05000020ADF8080003A81421C8 +:10BA8000F9F7B8FF002608A80021002200230EC005 +:10BA90000C385FF0000940F68C1068444FF4966152 +:10BAA000F9F7A8FFFFA8E0304FF49661F9F7A2FF7D +:10BAB0000BA84FF49661F9F79DFF5FF0000800278F +:10BAC00000240020070000E07F1C032F80F2BA80D2 +:10BAD0006B208DF80800781C8DF80900022302AA5B +:10BAE000D0210120F6F7E3FB002801D1002099E1E5 +:10BAF0003220FEF7B7FB6A208DF8080044208DF84D +:10BB00000900022302AAD0210120F6F7D0FB002869 +:10BB100001D1002086E1012409E019EB060608A8FE +:10BB200050F8270019EB000008A941F82700200071 +:10BB3000441E012875DB23208DF8080070208DF845 +:10BB40000900022302AAD0210120F6F7B0FB002849 +:10BB500001D1002066E14B20FEF784FB23208DF805 +:10BB6000080000208DF80900022302AAD02101203C +:10BB7000F6F79DFB002801D1002053E10220009040 +:10BB800003AB7222D0210120F6F7EBFB002801D194 +:10BB9000002047E103A8FEF74EFC00EE100AB8EEC5 +:10BBA000C00A10EE100AFDF7AFF9DFF8E027DFF862 +:10BBB000E037FDF7D7F809F079F88146B9F1480088 +:10BBC0000128B4DB5FF000081DE003A8FEF733FC9A +:10BBD00018EB060140F68C126A4422F811000DF1B0 +:10BBE0000E00FEF728FC18EB0601FFAAE03222F84F +:10BBF000110004A8FEF71FFC18EB06010BAA22F89F +:10BC0000110018F10108C84587DA0620009003AB3F +:10BC10007422D0210120F6F7A4FB0028D5D1002002 +:10BC200000E123208DF8080000208DF80900022390 +:10BC300002AAD0210120F6F73AFB00287FF444AF96 +:10BC40000020EFE0002E01D0340000E001245FF07E +:10BC5000000800200021C5E9000100200021C5E9FD +:10BC6000020100200021C5E9040122E0D5E900011C +:10BC700040F68C126A4432F91820D31780185941C3 +:10BC8000C5E90001D5E90201FFAAE03232F9182026 +:10BC9000D31780185941C5E90201D5E904010BAA5F +:10BCA00032F91820D31780185941C5E9040118F159 +:10BCB0000108B045DADBD5E900012200E317FEF701 +:10BCC000A1F9C5E90001D5E902012200E317FEF759 +:10BCD00099F9C5E90201D5E904012200E317FEF74D +:10BCE00091F9C5E904015FF00008DDF83C0E00227F +:10BCF0000023C0E90023DDF83C0E00220023C0E948 +:10BD00000223DDF83C0E00220023C0E9042382E078 +:10BD1000DDF83C2ED2E90001CDE9000140F68C109F +:10BD2000684430F91800C117D5E90023801A9941F9 +:10BD300040F68C126A4432F918A05FEAEA7BD5E932 +:10BD40000023BAEB02027BEB0303A2FB00AB02FB76 +:10BD500001BB03FB00BBDDE9000110EB0A0051EB66 +:10BD60000B01DDF83C2EC2E90001DDF83C2ED2E9E2 +:10BD70000201CDE90001FFA8E03030F91800C11739 +:10BD8000D5E90223801A9941FFAAE03232F918A0BE +:10BD90005FEAEA7BD5E90223BAEB02027BEB0303FD +:10BDA000A2FB00AB02FB01BB03FB00BBDDE9000112 +:10BDB00010EB0A0051EB0B01DDF83C2EC2E9020149 +:10BDC000DDF83C2ED2E90401CDE900010BA830F9E1 +:10BDD0001800C117D5E90423801A99410BAA32F93A +:10BDE00018A05FEAEA7BD5E90423BAEB02027BEBF9 +:10BDF0000303A2FB00AB02FB01BB03FB00BBDDE9BD +:10BE0000000110EB0A0051EB0B01DDF83C2EC2E9FA +:10BE1000040118F10108B045FFF67AAFDDF8400ED5 +:10BE2000066001200DF6446DBDE8F08F2DE9F0436A +:10BE300089B004000D00160001275FF0000801A87A +:10BE4000002101600320009001AB0022D0210120DD +:10BE5000F6F787FA002801D15FF0FF375FF000099D +:10BE600007E04FFA89F905A8002140F8291019F1D7 +:10BE700001094FFA89F9B9F1030F17DA4FFA89F975 +:10BE800001A819F800000028EBD04FFA89F901A8A1 +:10BE900019F80000DFF8FC1411EB400030F8020C38 +:10BEA0004FFA89F905A941F82900E0E75FF0000998 +:10BEB00025E04FFA89F902A850F82900DFF8D814D4 +:10BEC000884208DADFF8D404F6F77BF9012010FA8B +:10BED00009F050EA08084FFA89F902A850F8290039 +:10BEE000DFF8BC14884208DBDFF8B804F6F769F91C +:10BEF000012010FA09F050EA080819F101094FFA77 +:10BF000089F9B9F1030F3CDA4FFA89F955F829009C +:10BF10004FFA89F956F82910401A08F0C3FE4FFA73 +:10BF200089F902A941F829004FFA89F905A850F8C2 +:10BF300029000028BDD04FFA89F902A850F829003D +:10BF40004FFA89F905A951F8291090FBF1F0B0F5E5 +:10BF50007A7008F0A7FE4FFA89F924F819004FFA11 +:10BF600089F934F9190040F2F5118842C5DBDFF890 +:10BF70003804F6F726F9012010FA09F050EA08080B +:10BF8000BBE74FFA88F8B8F1000F05D0DFF81C04C2 +:10BF9000F6F717F97FF00207380040B209B0BDE8A4 +:10BFA000F0832DE9F0479CB004005FF00108012503 +:10BFB0000CA81821F9F71EFD06A81821F9F71AFD9B +:10BFC00002A80021016000A80021002206C0083854 +:10BFD0005FF0000A18A80021002200230EC00C38D0 +:10BFE00015A80021002200230EC00C3812A8002141 +:10BFF000002200230EC00C3803A8002100220023D9 +:10C000000EC00C380026DFF8A803D0F80490FEF725 +:10C0100018FA002801D1002049E1FEF725FB8046EF +:10C020005FFA88F8B8F1010F0AD15FF0010A02AA9D +:10C0300006A90CA8FFF71AFD002805D1002036E15B +:10C04000FEF76AFA002032E1FEF7F3FB002801D187 +:10C0500000202CE1002303AA15A90020FEF727FCED +:10C0600005006DB2012D03D0761CD248F6F7A9F871 +:10C07000002312AA18A97FF01F00FEF718FC050084 +:10C080006DB2012D03D0B61CCB48F6F79AF818AA6A +:10C0900015A900A8FFF7CAFE05006DB2012D03D057 +:10C0A000361DC648F6F78DF8DDE90601002901D1F5 +:10C0B00000280BD0DDE90801002901D1002805D0B6 +:10C0C000DDE90A01002905D1002803D1BC48F6F7B3 +:10C0D00078F8083600273AE0FFB20CA810EBC7004A +:10C0E000D0E9002340F2411000218B420FDB01DC3C +:10C0F00082420CD31036FFB20CA810EBC702D2E973 +:10C1000000010200FFB23900AE48F6F75AF8FFB25C +:10C1100006A810EBC702D2E90001029AD317FDF777 +:10C1200071FF002912DB02DCB0F5C85F0ED3403688 +:10C13000FFB206A810EBC702D2E90001029990FBFA +:10C14000F1F2FFB23900A048F6F73BF87F1CFFB2CE +:10C15000032FC1D336B2002E1AD100220CE0D2B286 +:10C1600019EB4203D2B20CA810EBC206D6E90001CB +:10C170008000A3F85800521CD2B2032AEFD3B9F9B9 +:10C180005C30B9F95A20B9F958109048F6F719F807 +:10C1900084F800A0BDF800006070BDF90000001236 +:10C1A000A070BDF80200E070BDF90200001220711D +:10C1B000BDF804006071BDF904000012A071E571C2 +:10C1C0000298207202980012607202980014A07205 +:10C1D00002980016E072DDE90C012073DDE90C0124 +:10C1E00000B200126073DDE90C010014A073DDE9F8 +:10C1F0000C010016E073DDE90E012074DDE90E018B +:10C2000000B200126074DDE90E010014A074DDE9D3 +:10C210000E010016E074DDE910012075DDE9100162 +:10C2200000B200126075DDE910010014A075DDE9AF +:10C2300010010016E075DDE906012076DDE9060152 +:10C2400000B200126076DDE906010014A076DDE997 +:10C2500006010016E076DDE908012077DDE9080136 +:10C2600000B200126077DDE908010014A077DDE973 +:10C2700008010016E077DDE90A0184F82000DDE915 +:10C280000A0100B2001284F82100DDE90A0100145D +:10C2900084F82200DDE90A01001684F82300FEF785 +:10C2A0003BF9002801D1002001E04046C0B21CB09B +:10C2B000BDE8F08730B583B004000020ADF804007D +:10C2C00000203B494D68697A002907D1286E4068F3 +:10C2D0008047F5F7F4FE0A21F6F7DEF80220009019 +:10C2E00001AB4122D0210120F6F73BF8002801D113 +:10C2F000002017E09DF805009DF8041050EA012089 +:10C30000032110FB01F04FF47A7190FBF1F015302E +:10C31000207000206070687A002802D1286E806842 +:10C32000804701203EBD80B50178002905D1FFF787 +:10C3300038FE00280AD1002009E00178012905D142 +:10C34000FFF7B8FF002801D1002000E0012002BD66 +:10C3500080B5C0B2062806D10800FFF7ABFF002861 +:10C3600001D1002000E0012002BD80B51849012064 +:10C37000F9F7F4F801BD00007F6301208C6601200D +:10C38000344A03083C4A0308444A03082D211FF499 +:10C390006C56C53FDC32030830FD1300544A0308D5 +:10C3A00079E2D1005C4A03084C4A0308644A030856 +:10C3B000006000206C4A0308744A03087C4A0308A2 +:10C3C000D0490308044903086C490308AC49030831 +:10C3D0008C480308DFF87C05704730B583B0002037 +:10C3E000ADF806008DF804000120009001AB00229A +:10C3F00018210220F5F7B5FF04469DF804004828EF +:10C400001FD131208DF806000DF10605012068705E +:10C4100002230DF1060218211846F5F748FF0028FF +:10C420000DD031208DF806000020687002230DF138 +:10C43000060218211846F5F73AFF002802D100201D +:10C440003EBD002418220021DFF80805F6F760FF42 +:10C4500020463EBD70B582B00020ADF8000008F067 +:10C4600056FC0446DFF8F0048168497AC268527AC3 +:10C4700051180069407A0818012801DB012076BDB7 +:10C48000DFF8D854687801281CD032208DF80000DD +:10C4900000AE01207070022300AA18211846F5F79B +:10C4A00006FF00280CD031208DF8000001207070AC +:10C4B000022300AA18211846F5F7F9FE002803D137 +:10C4C000002076BD01202870281D61698847012061 +:10C4D00076BD38B50020ADF8000008F018FC044621 +:10C4E000DFF874048168497AC268527A5118006989 +:10C4F000407A0818022801DB012032BDDFF85C54C5 +:10C500002878012812D031208DF8000000208DF805 +:10C510000100022300AA18211846F5F7C8FE0028DA +:10C5200001D1002032BD0020687001E00020287099 +:10C53000281D21698847012032BD80B50020ADF853 +:10C54000000031208DF8000000208DF8010002234A +:10C5500000AA18211846F5F7AAFE401E8041C043E4 +:10C56000C00F02BD7CB504460020ADF806008DF872 +:10C5700004000120009001AB002218210220F5F7F1 +:10C58000F0FE05469DF80400482829D131208DF899 +:10C5900006000DF106061F20707002230DF1060241 +:10C5A00018211846F5F783FE002817D003200090C5 +:10C5B0002346602218210220F5F7D3FE00280DD073 +:10C5C00031208DF806000020707002230DF1060264 +:10C5D00018211846F5F76BFE002802D1002076BD21 +:10C5E0000025284676BD0021DD4A02E00B5C8B5415 +:10C5F000491C1B29FADBDB48C0F8D4230120704713 +:10C600002DE9F04387B004460D4616461F464FF00D +:10C6100000084046ADF8040002A841460A460B4611 +:10C620000EC04FF0050906C00120009002AB102299 +:10C6300018210220F5F795FE9DF80810C9070ED5C0 +:10C6400001280CD1082000900DF1090311221821B6 +:10C650000220F5F786FE002807D140467AE04846DA +:10C66000A0F1010980B20028DED1BF489DF8081072 +:10C67000017002A90A7A4270CA7982704A78C2703F +:10C680008A780271CA7842710A7982714A79C271D4 +:10C69000897901720AE002A800EB480081784078AD +:10C6A00010EB012024F8180008F10108B8F1030F7D +:10C6B000F1DBA948D0F80C8008F10C0999F8152095 +:10C6C0002146D9F80C00D8F80C30C018F7F753FA07 +:10C6D000404602F0DBF999F81520D9F80C00D8F89B +:10C6E0000C1041182046F7F746FADFF8788205AAC1 +:10C6F0002146404608F05EFD98F9F4023860B8F82B +:10C70000EE00288008F2EE00418869808188A980C7 +:10C7100081892180C1896180008AA0802088298840 +:10C72000401A308060886988401A7080A088A98883 +:10C73000401AB08031208DF8040001208DF80500EA +:10C74000022301AA18211846F5F7B1FD401E8041C9 +:10C75000C043C00F07B0BDE8F08330B585B00446D4 +:10C760000020ADF8040002A800210A460B460EC0C6 +:10C7700005250120009002AB102218210220F5F7B8 +:10C78000F0FD9DF80810C9070ED501280CD108202E +:10C7900000900DF10903112218210220F5F7E1FDA7 +:10C7A000002806D1002028E02846451E80B2002837 +:10C7B000DFD16D489DF80810017002A90A7A427015 +:10C7C0004878207088786070C878A0700879E07028 +:10C7D000487920719DF80E00607131208DF80400B9 +:10C7E00001208DF80500022301AA18211846F5F74B +:10C7F0005EFD401E8041C043C00F05B030BD2DE935 +:10C80000F04104460025F6F71FF80746FFF7E2FD62 +:10C8100006465148D0F81080F86E40070BD406F158 +:10C82000140306F10C02B11D3046FFF7E9FE0028A3 +:10C8300001D1284651E098F80A00012848D14A4819 +:10C840000178217041786170C178A1700179E1703F +:10C850004179217181796171C179A171007AE071A9 +:10C860004048818D2172B0F92C100912617200F1DB +:10C870002C014A88A272B1F902201212E2728A884F +:10C880002273B1F9041009126173B0F8F410A173A6 +:10C89000B0F9F4100912E173F43041882174B0F951 +:10C8A0000210091261748188A174B0F904000012A9 +:10C8B000E074284620750FE006EB4500C18804F8B7 +:10C8C000151004EB4501B0F90600001248706D1C0C +:10C8D000032DF1DB7069A0710120BDE8F081F8B58E +:10C8E00004460025F5F7B0FF0746FFF773FD06463F +:10C8F000F86E000705D52046FFF72FFF002826D148 +:10C9000009E006F1140306F10C02B11D3046FFF7F1 +:10C9100077FE002814D12846F2BD36F8150004F839 +:10C92000150004EB450036F915100912417006EBAD +:10C9300045018A898271B1F90C100912C1716D1C0F +:10C94000032DEADB182231460248F7F714F90120DB +:10C95000F2BD00002C62012000600020086301206D +:10C96000D861012088090120646401207CB5044657 +:10C970000020ADF806008DF80400F5F7A0FB054691 +:10C980000120009001AB002218210220F5F7E9FCFC +:10C990009DF80410482932D131208DF806000DF1A0 +:10C9A00006061F20707002230DF10602182118469A +:10C9B000F5F77DFC00281BD031208DF80600002003 +:10C9C000707002230DF1060218211846F5F76FFC6E +:10C9D00000280DD001212846F5F75EFD01200090CA +:10C9E00001AB312218210220F5F7BBFC002801D150 +:10C9F000002076BD9DF804002070012076BDFF2147 +:10CA0000217076BD2DE9F0478AB0044604A80021C4 +:10CA10000A460B460EC00846ADF80C0007A806C033 +:10CA20004FF00509F5F74BFB05460220009004ABDB +:10CA300000221821F5F795FC06469DF810004828BD +:10CA400040F01D819DF81000207004AF7878607070 +:10CA500031208DF80C000DF10C081F2088F8010022 +:10CA6000022303AA18211846F5F721FC002800F03C +:10CA700007810320009004AB602218210220F5F703 +:10CA800070FC002800F0FC809DF81000A070787801 +:10CA9000E070B878207131208DF80C00002088F803 +:10CAA0000100022303AA18211846F5F700FC00280C +:10CAB00000F0E6800120009004AB31221821022012 +:10CAC000F5F74FFC002800F0DB809DF81000607542 +:10CAD00031208DF80C00012088F80100022303AA00 +:10CAE00018211846F5F7E3FB002800F0C9801E2145 +:10CAF0002846F5F7D1FC0120009004AB1022182144 +:10CB00000220F5F72EFC06469DF81000C0070DD553 +:10CB1000012E0BD1082000900DF1110311221821D4 +:10CB20000220F5F71EFC002806D16AE04846A0F175 +:10CB3000010980B20028DED1B8790290787901909D +:10CB400038790090FB78BA7879780FF29010F5F781 +:10CB500038FBB878797811EB0020ADF81C000DF1A6 +:10CB60001C0A3879F97811EB0020AAF80200B8798C +:10CB7000797911EB0020AAF80400BDF91C0000121D +:10CB80006071BDF81C00A071BAF902000112E171D8 +:10CB90002072BAF9040001126172A0729DF81000AF +:10CBA000E072387A207331208DF80C00102088F85C +:10CBB0000100022303AA18211846F5F778FB002884 +:10CBC0005ED01E212846F5F767FC4FF005090120CD +:10CBD000009004AB102218210220F5F7C2FB064694 +:10CBE0009DF81000C0070ED5012E0CD10820009032 +:10CBF0000DF11103112218210220F5F7B2FB0028D4 +:10CC000007D100203DE04846A0F1010980B200288C +:10CC1000DDD1B87902907879019038790090FB786D +:10CC2000BA7879780FF2D000F5F7CBFAB87879783E +:10CC300011EB0020ADF81C003879F97811EB0020D9 +:10CC4000AAF80200B879797911EB0020AAF804005B +:10CC5000BDF91C0000126073BDF81C00A073BAF986 +:10CC600002000112E1732074BAF904000112617428 +:10CC7000A0749DF81000E074387A207500E000265A +:10CC800030460AB0BDE8F08718B404460B4611469A +:10CC90000020032C04D0042C05D0072C06D008E07B +:10CCA000184614BC5EE4184612BC5FE6184612BC77 +:10CCB00099E412BC704710B50FF2580421460220C7 +:10CCC000F8F74CFC0FF270010420F8F747FC2146FE +:10CCD0000320BDE81040F8F741BC0000474D533138 +:10CCE0002D25642C2025642C2025642C2025642CE3 +:10CCF0002025642C20256400474D53322D25642CBB +:10CD00002025642C2025642C2025642C2025642CCF +:10CD100020256400DBC3000855C40008D3C4000804 +:10CD20003BC5000800000000DFC80008000000004C +:10CD300005CA000889CC0008DBC3000855C40008F8 +:10CD4000D3C400083BC5000800000000FFC700086E +:10CD50000000000005CA000889CC00087CB500244A +:10CD60002046ADF80400F5F7AAF9054620208DF815 +:10CD7000040001AE20467070022301AABA210520EA +:10CD8000F5F795FA002801D1204676BD0121284605 +:10CD9000F5F782FB641C0120009001AB2122BA212F +:10CDA0000520F5F7DEFA002801D1002076BD40F21B +:10CDB000F510A4B2844205D30FF21020F5F701FA62 +:10CDC000002076BD9DF804000006DFD420208DF8F9 +:10CDD000040002207070034601AABA210520F5F76D +:10CDE00066FA401E8041C043C00F76BD1CB50446A4 +:10CDF0000020ADF804000120009001AB0F22BA2101 +:10CE00000520F5F7AEFA002801D1002016BD9DF8E7 +:10CE10000400BD2833D100F034F8002801D10020EF +:10CE200016BD032001E0401E40B2002807D40FF2D7 +:10CE3000B41151F830108C4201D20028F3D12020D7 +:10CE40008DF8040001ACA4206070022301AABA216D +:10CE50000520F5F72CFA002801D1002016BD10207E +:10CE60008DF804007F206070022301AABA210520FA +:10CE7000F5F71DFA401E8041C043C00F16BD0020CB +:10CE800016BD80B50020ADF8000020208DF8000010 +:10CE900000208DF80100022300AABA210520F5F731 +:10CEA00006FA002805D10FF22C10F5F78AF90020B8 +:10CEB00002BD012002BD80B58F20FFF797FF401E05 +:10CEC0008041C043C00F02BD80B5FFF747FF002877 +:10CED00005D10FF20810F5F774F9002002BD01200A +:10CEE00002BD80B5FFF7E7FF401E8041C043C00F81 +:10CEF00002BD80B5FFF7C5FF401E8041C043C00F93 +:10CF000002BD01207047012070471FB5044601A8EB +:10CF100000210A460B460EC00120009001AB0F22F3 +:10CF2000BA210520F5F71DFA002821D09DF804004C +:10CF3000BD281DD10520009001ABA822BA21F5F72C +:10CF400010FA002801D1002013E09DF804002070A1 +:10CF500001A8417861708178A1700021E170C178E9 +:10CF6000217100796071E01C00F006F8012000E0FA +:10CF7000002004B010BD00004178007840EA012094 +:10CF80004FF4F07190FBF1F000EE100AB8EEC00A19 +:10CF9000DFED070A30EE200ABDEEC00A10EE100ADF +:10CFA00080B204490870000A4870012070470000F0 +:10CFB00000002A4288660120012070470120704746 +:10CFC0000FF240010520F8F7C9BA000042522D5275 +:10CFD0004600000042522D434600000042522D50B0 +:10CFE0004600000028000000700000005000000013 +:10CFF000600000008F00000050000000E803000007 +:10D0000010000000C9CE0008E3CE0008F3CE0008EF +:10D0100003CF000807CF00080BCF00080000000076 +:10D02000B9CF0008BDCF000800207047012070472D +:10D030000120704738B504460D46F5F740F8052144 +:10D04000F5F72AFA0020104904E00A680255521C3C +:10D050000A60401CA842F8DB012032BD0120704765 +:10D0600001207047094802680A704A70511C01602B +:10D070000120704706490A6802704270501C08601F +:10D080000120704700000000249B0020046601205E +:10D09000086601200FF234010820F8F75FBA10B5D6 +:10D0A0000FF2280421461220F8F758FA21461320DF +:10D0B000F8F754FA21461420BDE81040F8F74EBAAC +:10D0C0000FF208011520F8F749BA000029D000082E +:10D0D0002DD0000831D0000831D0000861D0000800 +:10D0E00035D000085DD0000875D0000865D0000874 +:10D0F00010B50024F4F7E3FF007CC00700D501243D +:10D10000204610BD00B589B000A82421F8F772FCB4 +:10D110000020ADF822000A208DF8080000208DF8CC +:10D1200009008DF80A008DF800001F20019000A86A +:10D13000FBF7C2FC012009B000BD00B589B000A812 +:10D140002421F8F757FC0020ADF822000A208DF8C2 +:10D15000080000208DF809008DF80A0001208DF8E4 +:10D1600000001F20019000A8FBF7A6FC012009B0D9 +:10D1700000BD00B589B000A82421F8F73BFC0020D1 +:10D18000ADF822000A208DF8080000208DF8090073 +:10D190008DF80A0001208DF800001F20019000A8E2 +:10D1A000FBF78AFC012009B000BD0120704710B5D3 +:10D1B0000024F4F784FF007CC00700D5012420463A +:10D1C00010BD00B589B000A82421F8F713FC002099 +:10D1D000ADF822000A208DF8080000208DF8090023 +:10D1E0008DF80A008DF800002020019000A8FBF7C0 +:10D1F00063FC012009B000BD00B589B000A824215E +:10D20000F8F7F8FB0020ADF822000A208DF808009E +:10D2100000208DF809008DF80A0001208DF800002B +:10D220002020019000A8FBF747FC012009B000BDB9 +:10D2300000B589B000A82421F8F7DCFB0020ADF888 +:10D2400022000A208DF8080000208DF809008DF8D2 +:10D250000A0001208DF800002020019000A8FBF7B3 +:10D260002BFC012009B000BD0120704710B500243F +:10D27000F4F725FF007C800700D50124204610BD6F +:10D2800000B589B000A82421F8F7B4FB0020ADF860 +:10D2900022000A208DF8080000208DF809008DF882 +:10D2A0000A008DF800002120019000A8FBF704FC83 +:10D2B000012009B000BD00B589B000A82421F8F70D +:10D2C00099FB0020ADF822000A208DF8080000200C +:10D2D0008DF809008DF80A0001208DF8000021204A +:10D2E000019000A8FBF7E8FB012009B000BD00B5E4 +:10D2F00089B000A82421F8F77DFB0020ADF82200BA +:10D300000A208DF8080000208DF809008DF80A0029 +:10D3100001208DF800002120019000A8FBF7CCFB34 +:10D32000012009B000BD0120704710B50024F4F7BA +:10D33000C6FE007C00F00300032800D10124204633 +:10D3400010BD00B589B000A82421F8F753FBDFF821 +:10D350003C03017841F0020101700020ADF8220089 +:10D360000A208DF8080001208DF809008DF80A10B8 +:10D3700000208DF800002220019000A8FBF79CFB04 +:10D38000012009B000BD00B589B000A82421F8F73C +:10D3900031FBDFF8F812087810F0FD00087014D1A6 +:10D3A0000020ADF822000A208DF8080001208DF839 +:10D3B000090000208DF80A0001208DF800002220CD +:10D3C000019000A8FBF778FB02E040B208F0B6FB42 +:10D3D000012009B000BD012070470120704710B541 +:10D3E0000024F4F76CFE007C00F00700072800D151 +:10D3F0000124204610BD00B589B000A82421F8F70B +:10D40000F9FAA248017841F001010170032905D120 +:10D41000032008F093FB08F0ADFB11E00020ADF80D +:10D4200022000A208DF8080000208DF809008DF8F0 +:10D430000A108DF800002220019000A8FBF73CFBA9 +:10D44000012009B000BD00B589B000A82421F8F77B +:10D45000D1FA8E49087810F0FE00087013D1002030 +:10D46000ADF822000A208DF8080000208DF8090090 +:10D470008DF80A0001208DF800002220019000A8FC +:10D48000FBF71AFB04E040B208F058FB08F077FB0A +:10D49000012009B000BD012070470120704710B580 +:10D4A0000024F4F70CFE007CC00700D501242046C0 +:10D4B00010BD00B589B000A82421F8F79BFA002020 +:10D4C000ADF822000A208DF8080000208DF8090030 +:10D4D0008DF80A008DF800002320019000A8FBF7CA +:10D4E000EBFA012009B000BD00B589B000A82421E5 +:10D4F000F8F780FA0020ADF822000A208DF8080025 +:10D5000000208DF809008DF80A0001208DF8000038 +:10D510002320019000A8FBF7CFFA012009B000BD3D +:10D5200000B589B000A82421F8F764FA0020ADF80E +:10D5300022000A208DF8080000208DF809008DF8DF +:10D540000A0001208DF800002320019000A8FBF7BD +:10D55000B3FA012009B000BD0120704770B58AB050 +:10D5600004460E46FBF7ACF9054600200090042265 +:10D57000214600A8F6F7FFFA01A82421F8F73AFAA5 +:10D58000009A31460FF2C010F4F71BFE30460C38FB +:10D5900009284ED8DFE800F0051118253C0C4D4D48 +:10D5A0004D481420C5F8DC04207001200AB070BD7D +:10D5B0001420C5F87C052070F7E705F2DC403C211B +:10D5C000816208462070F0E705F2DC4021783C29B2 +:10D5D00004D13C21217021780165E6E700990165BD +:10D5E000E3E72A480078C10712D50021ADF82610DC +:10D5F0000A218DF80C1000218DF80D108DF80E0009 +:10D6000001208DF804002220029001A8FBF754FAB3 +:10D610000099304640B200F012F80090206005F208 +:10D62000DC4000998167C0E71420C5F8BC06207073 +:10D63000BBE70FF22410F4F7C4FD0020B6E710B4E6 +:10D64000134AD36B126C114C2478002C1AD00F287B +:10D6500002D010280BD015E0507A002812D0906B21 +:10D66000806800280ED488420DDD08460BE0587A09 +:10D67000002807D0986B8068002803D4884202DD18 +:10D68000084600E0084610BC704700008F66012085 +:10D690000060002012B589B001460C3909292CD848 +:10D6A000DFE801F0051F2123231D2B2B2B291F242D +:10D6B0000020ADF8220001900A208DF80800052016 +:10D6C0008DF800000194042209A90DF10900F6F774 +:10D6D00052FA00A8FBF7F0F901200AB010BD23248C +:10D6E000E6E72024E4E72124E2E722240999FFF772 +:10D6F000A6FF0990DCE72B24DAE70FF26400F4F7C9 +:10D7000060FD0020E9E780B50FF25C010C20F7F71F +:10D7100025FF0FF278011120F7F720FF0FF290019B +:10D720000D20F7F71BFF0FF2AC010E20F7F716FFE5 +:10D730000FF2C4010F20F7F711FF0FF2E0011020E4 +:10D74000BDE80440F7F70ABF4D52322044523D2550 +:10D75000642C2564000000004D52322053444600E2 +:10D760004D52322052434600F1D0000805D1000846 +:10D770003BD1000873D1000800000000ABD10008C5 +:10D780005DD5000800000000000000009FD40008E4 +:10D79000B3D40008E9D4000821D500080000000037 +:10D7A00059D500085DD50008000000000000000009 +:10D7B000AFD10008C3D10008F9D1000831D2000868 +:10D7C0000000000069D200085DD5000800000000DC +:10D7D000000000006DD2000881D20008B7D2000816 +:10D7E000EFD200080000000027D300085DD5000834 +:10D7F00000000000000000002BD3000843D3000805 +:10D8000087D30008D7D3000800000000DBD300084E +:10D810005DD500080000000000000000DFD3000814 +:10D82000F7D3000847D4000897D400080000000090 +:10D830009BD400085DD50008000000000000000037 +:10D8400000B500BF130096469446103928BFA0E8E3 +:10D850000C50FAD85FEA417C28BF0CC048BF40F8A2 +:10D86000042BC90728BF20F8022B48BF00F8012B62 +:10D8700000BD00002DE9F04FA1B0804617461D46BF +:10D88000029102AE0020706211AC6FF000490AE014 +:10D8900017F8011B0298C0470290002800F06A8226 +:10D8A000706A401C7062387808B9706A64E2252892 +:10D8B000EED10020F06030617061B061F0613062E3 +:10D8C00001E040F0010017F8011F2029F9D02329B9 +:10D8D0000DD02B2904D02D2906D030290AD00CE0F8 +:10D8E00040F0020080B2EEE740F00400FAE740F0BA +:10D8F0000800F7E740F01000F4E72A290DD1296865 +:10D900000A1D2A600968F162002904D54942F162C2 +:10D9100040F0040080B27F1C12E00021F16209E0B7 +:10D92000F16A494505D001EB810302EB430130392F +:10D93000F1627F1C3A78A2F13001C9B20A29EFD313 +:10D9400039782E2903D04FF0FF31B1621DE017F86E +:10D95000011F2A2906D129680A1D2A600968B162B7 +:10D960007F1C12E00021B16209E0B16A494505D08F +:10D9700001EB810302EB43013039B1627F1C3A783D +:10D98000A2F13001C9B20A29EFD3308639780FF6F7 +:10D99000983008F02BF908B117F8010B8DF83A0010 +:10D9A0009DF83A00682804D1387868280AD16220A6 +:10D9B00005E06C2804BF38786C2803D171208DF8FD +:10D9C0003A007F1C11A8B0603978B1F1250023D04E +:10D9D0001C3871D0001F02286ED9133800F09680D1 +:10D9E000093869D0801E00F02781401E00F0D180E8 +:10D9F000401E022860D9001F00F0CB80401F30D0AD +:10DA0000401E00F08380401E20D0C01E09D0801E22 +:10DA10007CD0C01E7AD017E1F068411CF16025214E +:10DA20001BE12868011D296000687060B26A002A45 +:10DA300002D5F8F70DF807E0002108F0E3F8002818 +:10DA40001ABF7168401AB06A306107E12868011D89 +:10DA5000296000680021CDE9000111A870607821DB +:10DA6000E6E09DF83A00622818D0682806D06A28B7 +:10DA70000BD06C2819D0712807D016E02868011D3A +:10DA80002960716A00680180E8E02A68101D28603A +:10DA9000706AC1171268C2E90001DFE02868011D41 +:10DAA0002960716A00680170D8E02868011D29604A +:10DAB000716A00680160D1E02868C01D20F007008D +:10DAC000286000F108022A60D0E90023CDE9002394 +:10DAD000002B04D5F068421CF2602D220DE0308E40 +:10DAE000820704D5F068421CF2602B2205E0C007D3 +:10DAF00004D5F068421CF26020220255F06811AA99 +:10DB00008018706000A800F0C5F9A7E09DF83A0001 +:10DB10006C2808BF2A6811D0712808BF2A6802D073 +:10DB20006A282A680AD1D21D22F007022A60944688 +:10DB30000CF108022A60DCE9002303E0131D2B60CE +:10DB400012680023CDE90023682808BF92B207D0ED +:10DB5000622808BFD2B203D0742818BF7A2802D135 +:10DB60000023CDE9002396F8300000075CD5DDE9FD +:10DB70000023002B08BF002A56D041F0200078284F +:10DB800052D1F06830220255401C421CF26001550F +:10DB90004AE09DF83A0062280CD0682810D06A2824 +:10DBA0001AD06C2823D0712816D074281FD07A2858 +:10DBB0000CD01CE02868021D2A6090F900201AE0B1 +:10DBC0002868021D2A60B0F9002014E02868021DB0 +:10DBD0002A60026800230FE02868C01D20F00700BB +:10DBE000286000F108022A60D0E9002304E02868D8 +:10DBF000021D2A600268D317CDE90023002B04DA46 +:10DC0000F068421CF2602D220DE0308E820704D5B0 +:10DC1000F068421CF2602B2205E0C00704D5F068D2 +:10DC2000421CF26020220255F06811AA8018706030 +:10DC300000A800F0A4F811E0F068411CF160296828 +:10DC40000A1D2A60096808E0F068421CF26025227B +:10DC5000025519B1F068421CF26001557F1CF06A50 +:10DC6000F168401AB169401A3169401AF169401AE5 +:10DC70007169401A316AA0EB010A96F8300040073A +:10DC800011D420208DF84000BAF1010F0BDBD346F0 +:10DC9000012310AA00A9404600F02FFC002869D1FA +:10DCA000BBF1010BF4D1F36811AA00A9404600F0C2 +:10DCB00024FC00285ED130208DF84000D6F818B042 +:10DCC000BBF1010F0ADB012310AA00A9404600F0B6 +:10DCD00014FC00284ED1BBF1010BF4D133697268FA +:10DCE00000A9404600F009FC002843D130208DF8FF +:10DCF0004000D6F81CB0BBF1010F09DB012310AACC +:10DD000000A9404600F0F9FBA0BBBBF1010BF5D127 +:10DD1000736930697168421800A9404600F0EDFB54 +:10DD200040BB30208DF84000D6F820B0BBF1010F89 +:10DD300009DB012310AA00A9404600F0DEFBC8B9A8 +:10DD4000BBF1010BF5D196F8300040077FF5ABAD84 +:10DD500020208DF84000BAF1010FFFF6A4AD012399 +:10DD600010AA00A9404600F0C8FB18B9BAF1010A90 +:10DD7000F5D198E54FF0FF3021B0BDE8F08F2DE9E7 +:10DD8000FA4782B0064635696F2908BF082705D0D3 +:10DD900041F02000782814BF0A2710273C24D6E938 +:10DDA0000001804689469DF80820642A18BF692A28 +:10DDB00005D1002903DAD8F1000869EB4909B9F166 +:10DDC000000F08BFB8F1000F0CD1306B50B9082F0D +:10DDD0003BD196F83800000737D53B24302085F832 +:10DDE0003B0032E0A4F1010A5446FB174046494685 +:10DDF0003A46FCF729F9CDE90089B846A8FB00238B +:10DE0000DDE90089A8EB02023032D2B23A2A03D30C +:10DE10009DF80830513B9A180AF8052080465FEAC1 +:10DE2000010908BFB8F1000F03D0F06861198842FA +:10DE3000D8D3082F09D196F83800000705D5605DC2 +:10DE4000302802D0641E30206055C4F13C00B0611F +:10DE50006119F160316B884207DA081A3062308F3D +:10DE60004FF6EF710840308710E000290ED596F884 +:10DE7000381001F01401102908D1716B7269891AE8 +:10DE8000326A891A081A0128A8BF306204B0BDE8B6 +:10DE9000F08700002DE9F24F8EB0044604AED4E9BD +:10DEA0000001CDE902019DF8380040F020008DF816 +:10DEB000000061280BD0206B002848BF062005D445 +:10DEC00004BF9DF80000672801D10120206361682C +:10DED000C1F30A5040F2FF7398421ED1080304BFF9 +:10DEE000206800280AD10320A0619DF8380061381D +:10DEF000C0B21A2838D30FF2446109E00320A061B0 +:10DF00009DF838006138C0B21A282AD30FF2246174 +:10DF10000322E068F5F7F4FDB9E1012817DA20469D +:10DF200007F09CFE012812DB002700209DF800105E +:10DF3000612920D1E168302201F8012B4A1CE260FE +:10DF40009DF83820612A0CBF782258220FE040F259 +:10DF5000FE31626861F31E526260471A4FF0FF3073 +:10DF6000E4E70FF2CC51D3E70FF2CC51D0E70A70BF +:10DF70006169891C616110B9002500277EE19DF867 +:10DF80000000612840F09780206B00284CBF2125BD +:10DF9000451C2DB26E1CD4E90089DDE90201002286 +:10DFA000002307F07DFE3ABF89F00040CDE90280F2 +:10DFB000CDE902893F1F8DF810200DF11108012EC7 +:10DFC00035DBDDE902010022002307F081FE2ED2BD +:10DFD0001C2102A807F094FEDDE9020106F066FEAE +:10DFE0008146F61F012E09DBFAF7A4FE02460B4616 +:10DFF000DDE9020107F00EFFCDE9020108F207009A +:10E00000072105E009F00F0200F8012D4FEA291958 +:10E01000B9F1010F01DB491EF4D5491E5CBF002296 +:10E0200000F8012DF9D500F20708012EC9DA0DF12B +:10E030001100A8EB00010DF11106A942B8BF0D4671 +:10E040002DB2002D30D42846884206DA04A94118A2 +:10E050004978082928BF0F2100D2002104AA82187C +:10E0600000E06D1E401E12F801398B42F9D00F29D5 +:10E0700004D104A941184A78521C4A70002802D5DC +:10E0800004AE6D1C3F1D2DB2681E0DD481190A7897 +:10E090003032D2B23A2A03D39DF838303A3B9A183C +:10E0A00001F80129401EF2D5206B002840F1E680DE +:10E0B000681E2063E2E0DDE902010022002307F090 +:10E0C000EFFD3CBF81F00041CDE902013FB247F2D4 +:10E0D00097507843474990FBF1F73FB2C7F10706E5 +:10E0E0009246DFF814B1012E19DBDDE90289F00751 +:10E0F00007D552465B4640464946FAF733FE80460E +:10E10000894676105046594652465B46FAF72AFE33 +:10E1100082468B46002EEAD1CDE9028921E0764283 +:10E120009046DFF8D89012E0F00707D552465B46DC +:10E1300040464946FAF716FE804689467610504614 +:10E14000594652465B46FAF70DFE82468B46002E34 +:10E15000EAD1DDE9020142464B4607F01BFFCDE95B +:10E1600002019DF8000066280CBF07F10A00062096 +:10E17000216B4518142DA8BF132530208DF81000F1 +:10E180000DF11106DFF87890012D3BDBDDE902018E +:10E1900006F0A2FD06F1080104220A26B0FBF6F300 +:10E1A00003EB830EA0EB4E00303001F8010DB3FB02 +:10E1B000F6F000EB8006A3EB4603303301F8013D97 +:10E1C000521EEAD101F10806083D012DDCDBDDE934 +:10E1D000020106F081FDFAF7B7FD02460B46DDE9C4 +:10E1E000020107F017FE00224B46FAF7BBFDCDE90E +:10E1F0000201CBE7A0860100000024400000F03FB0 +:10E2000084D797410DF11100301A0DF1110602E08B +:10E21000401E7F1E761C31783029F9D09DF8001001 +:10E22000662902D13FB2791C03E065290CBF0121A8 +:10E230000021226B8D182DB2A842B8BF05462DB221 +:10E24000002D1BD42946814204DA885D352828BF79 +:10E25000392000D230208A19521E00E06D1E491E5E +:10E2600012F801398342F9D0392802D1885D401C67 +:10E270008855002902D5761E6D1C7F1C3FB2009781 +:10E280002BB232469DF83810204600F003F80FB04C +:10E29000BDE8F08F2DE9F04385B005468946174665 +:10E2A0001E46D5F83080012E02DA01260FF29027A3 +:10E2B00049F02000BDF93040662808BF641C18D022 +:10E2C000672840F082806FF003008442C0F28380B0 +:10E2D000444580F28080641C95F83800000702D421 +:10E2E0004645B8BFB04624B2B8EB040848BF4FF06B +:10E2F0000008E868A96924B2012C25DA4A1C3023F9 +:10E300000B54B8F1010F03DA95F83810090702D55C +:10E310002E211154521CAA6118EB040FB8BFC8F18A +:10E32000000424B261426962A044B045B8BF4646C9 +:10E3300036B2EE6132463946AB691818F5F7E0FBA4 +:10E34000A8EB0600A862C1E00818A64218DA324617 +:10E350003946F5F7D5FBA9697118A961A01B686258 +:10E36000B8F1010F03DA95F83800000705D5E86821 +:10E370002E220A54E869401CE861C5F82880A5E00F +:10E3800022463946F5F7BCFBA8692018361BB8F1C0 +:10E39000010F03DA95F83810090703D5E9682E2232 +:10E3A0004254401CA86136B2B045B8BF464636B2AA +:10E3B0003246E119EB68C018F5F7A2FBA8693018DE +:10E3C000A861A8EB0600686280E0B9F1610F16D180 +:10E3D0004FF0700918E0464504DA95F8381009073F +:10E3E00058BFB046B8F1010848BF4FF00008B9F176 +:10E3F000670F14BF4FF045094FF0650904E0B9F10C +:10E40000410F08BF4FF05009A9694A1CE86817F886 +:10E41000013B0B54B8F1010F05DA95F838100907E4 +:10E4200058BFAA6117D52E211154531CAB61B8F106 +:10E43000010F10DB761E36B2B045B8BF464636B285 +:10E44000324639461818F5F75BFBA8693018A86101 +:10E45000A8EB06006862A869E968471807F8019BFD +:10E46000002C03D42B2007F8010B03E02D2007F824 +:10E47000010B644200260DF1080809E00A2221463A +:10E4800000A807F0AAFE019808F8010B009C761C72 +:10E4900024B2012CF2DA022E06DA49F020006528B7 +:10E4A00004BF302007F8010B4EB9302007F8010BEC +:10E4B00007E0761E02A8305C303007F8010B012E11 +:10E4C000F7DAA869E9684018381AE86195F8380061 +:10E4D00000F0140010280DD16869A9690818696A4C +:10E4E0000818E9690818A96A0818696B8842BCBF4E +:10E4F000081A286205B0BDE8F083F8B504460D4659 +:10E5000016461F46002077B116F8011BA868A047E1 +:10E51000A86030B1E86A401CE86200207F1EF3D199 +:10E52000F2BD4FF0FF30F2BD686A6C747A4C0000A7 +:10E530006E616E004E414E00696E6600494E4600A7 +:10E54000300000000CB41CB5044604A801900094EF +:10E5500001AB0A4600A9074878441830FFF78AF94A +:10E56000009900220A7000285CBF0098001B16BCAE +:10E570005DF80CFB1375FFFF01B58B0718D1121F57 +:10E5800021D351F8043BA3F1013C2CEA030C1CF00D +:10E59000803C04BF40F8043BF1E79CFA8CFCBCFAD9 +:10E5A0008CF1C1F118018B40CB4040F8043B13E0E3 +:10E5B000042A09D311F8013B521E00F8013B5BB15C +:10E5C0008B07F7D1DBE7121D5AB111F8013B521E40 +:10E5D00000F8013B03B1F8D111001CBF0022FAF78B +:10E5E00007FD01BD002801D10A48806890F84C1051 +:10E5F000642901D0002000E0806A7047002801D122 +:10E600000448806890F84C10642901D0002000E094 +:10E61000406A7047F8990020024870470248014953 +:10E62000401A704700400020006000204C48C1683C +:10E63000002903D54B4901604B49016070474B48A5 +:10E64000016841F000410160704770B50446002642 +:10E6500000290BD0012902D14FF4807606E002296F +:10E6600002D14FF4007601E04FF4407600F082F8DA +:10E6700009281ED13D4D286820F440702860286884 +:10E6800030432860286820F0F8002860286844F0AB +:10E69000020108432860286840F48030286000F0B8 +:10E6A00069F8296821F002012960296821F0F80140 +:10E6B000296070BD70B504460D4600F05BF809286E +:10E6C00013D12A4E306820F440703060306840F436 +:10E6D00000703060306840F001003060256000F06C +:10E6E00049F8316849084900316070BD70B5054688 +:10E6F0000E4600F03FF8092811D11C4C206820F488 +:10E700004070206020682060206840F00100206098 +:10E710002E7000F02FF8216849084900216070BD73 +:10E72000134908607047092011490A68D20301D5CE +:10E73000012070470A68D20601D5062070470A6892 +:10E74000D20501D5022070470A6812F0EF0F01D000 +:10E75000072070470968890700D508207047000026 +:10E76000043C024023016745AB89EFCD103C0240D9 +:10E770000C3C024080B509208DF80000FFF7D3FF64 +:10E780008DF8000003E0FFF7CEFF8DF800009DF844 +:10E7900000000128F7D09DF8000002BD0901002803 +:10E7A00006D500F00F004C4A801800F8041C704792 +:10E7B0004A4A8154704710B5B0F1807F01D30120DF +:10E7C00010BD474C0002000A401E60600F214FF050 +:10E7D000FF30FFF7E3FF0020A0600720206000204B +:10E7E00010BD38B53F4D2878401C28703E4C20782D +:10E7F000401C2070F7F7F3FF07F0F6FC2878411E65 +:10E800002970002802D19820F7F742F920780128D2 +:10E8100004D16068002801D0F7F79DF92078401EE8 +:10E82000207031BD10B5304C6078F021084202D024 +:10E830009920F7F72DF9F7F798F96078401C607088 +:10E8400007F02CFD294800684FF47A71B0FBF1F015 +:10E85000FFF7B1FF002800D0FEE7254825490160F9 +:10E860000E214FF0FF30FFF799FF6078F02108424A +:10E8700002D09920F7F70CF96078401E6070C0B2A2 +:10E88000002803D1BDE81040F7F769B910BD0000BA +:10E89000194C4FF400512046FAF782FD30BF4FF477 +:10E8A00000512046FAF77AFDF3E710B40E48006AEB +:10E8B0000E4909684FF47A72B1FBF2F10F4A1368FE +:10E8C000CB1A0F4C2468640102D512688B1A401CC5 +:10E8D00000FB013010BC704718ED00E000E400E0E0 +:10E8E00010E000E0B5660120F8990020AC9A002005 +:10E8F00008ED00E0000000080010024018E000E011 +:10E9000004ED00E0EFF30580002847F0278570470D +:10E9100080B5EFF3108072B60B49096851F47F019E +:10E92000094A116080F310880848006810F4700FDD +:10E9300002D1A720F7F7ACF805485FF0007101603D +:10E9400004480021016001BD20ED00E088ED00E0F9 +:10E950003CEF00E034EF00E080B5F3F775FFDFF83F +:10E9600028180860012002BD10B5F6F7B9FA024672 +:10E97000C317DFF81848D4E90001101A0021012953 +:10E9800005DB01DC002802D3C4E90023084610BDE2 +:10E99000F0B583B0044600A800210A4606C0A0696D +:10E9A000E16845182888ADF80000B5F9027000A8A4 +:10E9B0004780B5F904608680BDF80000B4F85810AF +:10E9C000401A2880B4F85A00381A6880B4F85C00FD +:10E9D000301AA880BDF90000B5F90010C913B1EBD9 +:10E9E000E03F13D0B4F95810C913B1EBE03F0DD09C +:10E9F0000FF2B470F3F7E5FBB5F90000012802DB74 +:10EA0000DFF88C0701E047F6FF702880B5F90210A7 +:10EA1000C913B1EBE73F13D0B4F95A10C913B1EBE6 +:10EA2000E73F0DD00FF28C70F3F7CBFBB5F9020086 +:10EA3000012802DBDFF8580701E047F6FF70688025 +:10EA4000B5F90410C913B1EBE63F13D0B4F95C106B +:10EA5000C913B1EBE63F0DD00FF26470F3F7B1FBD1 +:10EA6000B5F90400012802DBDFF8240701E047F6CE +:10EA7000FF70A88094F90800002804D1002000E06D +:10EA8000401C0328FCDBF7BD00000000FEB5044677 +:10EA900000A800210A460B460EC0A069E16845188F +:10EAA000174694F90860052E80F09A80012E02D155 +:10EAB0002046FFF76DFF3046012802D9C01E40F006 +:10EAC0008A80002E01D14FF6FF77DFF8BC06006880 +:10EAD000301890F88400401E06285ED8DFE800F069 +:10EAE00004101D2936424F00B5F90200009000A81D +:10EAF000B5F90010791A4160B5F90410816056E04B +:10EB0000B5F90000381A009000A8B5F90210791A7A +:10EB10004160B5F90410816049E0B5F90200381A86 +:10EB2000009000A8B5F900104160B5F904108160AB +:10EB30003DE0B5F90000381A009000A8B5F90210C0 +:10EB40004160B5F90410791A816030E0B5F902002E +:10EB5000009000A8B5F900104160B5F90410791AC9 +:10EB6000816024E0B5F90000009000A8B5F902101A +:10EB7000791A4160B5F90410791A816017E0B5F986 +:10EB80000200381A009000A8B5F90010791A416007 +:10EB9000B5F90410791A816009E0B5F90000009018 +:10EBA00000A8B5F902104160B5F904108160012E8A +:10EBB0000AD1002106E050F8212002F30F0240F8AC +:10EBC0002120491C0329F6DB0098288000A8416811 +:10EBD00069808068A880002E02D12046FFF7D8FE09 +:10EBE0000120FEBD70B52DED028B84B000A900227E +:10EBF00013460CC18169C2688A1890F9081008464A +:10EC00000A2800F2A480DFE800F006317FA2A2719A +:10EC1000A2A2A28C9A001088ADF80000B2F90240BE +:10EC200000A84480B2F904508580DFF85C050068D4 +:10EC30009FEDAF0ABDF9001000EE901AF8EEE00A61 +:10EC400060EE800AC0ED000A00EE904AF8EEE00A9D +:10EC500060EE800AC0ED010A00EE905AF8EEE00A7C +:10EC600020EE800A001D80ED010A74E01088ADF8E6 +:10EC70000000B2F9024000A84480B2F90450858037 +:10EC8000DFF804050068061D9FEDC18BBDF900008B +:10EC900000EE100AB8EEC00A10EE100AFAF734F9C6 +:10ECA00053EC182BFAF75EF8FAF756F9B06000EE5D +:10ECB000104AB8EEC00A10EE100AFAF725F953EC24 +:10ECC000182BFAF74FF8FAF747F9F06000EE105AF0 +:10ECD000B8EEC00A10EE100AFAF716F953EC182B2A +:10ECE000FAF740F8FAF738F9306134E01846029044 +:10ECF000106802909DED020ABAEECA0ADFF8880495 +:10ED0000006880ED0C0A26E0DFF87C0400681188BA +:10ED1000A0F85A1000F25A005188418091888180F1 +:10ED200019E0DFF86404006800F25A001188C1801D +:10ED30005188018191884181D18881810BE0DFF880 +:10ED40004804006892F9001080F8681003E00FF2A0 +:10ED50007C40F3F736FA012004B0BDEC028B70BDA5 +:10ED600070B50D46DFF82C1451F820400026207FA6 +:10ED7000002801D1304670BD607A002803D0206E93 +:10ED80008068804706462846216EC969884705463F +:10ED9000002E02D0206E40688047284670BD0120BA +:10EDA0007047F0B4002A10D400F11004A57C066965 +:10EDB00092FBF1F76F43B74202DAA263E26304E029 +:10EDC00096FBF5F25143A163E163002B03D499074D +:10EDD00001D510300374F0BC7047002903D4002122 +:10EDE0008164416181617047C0B2042817D101F18B +:10EDF0000C008A7A012A09D0072242750B228275FB +:10EE0000DFF89423CA600B214160704715224275D8 +:10EE100019228275DFF88423CA6019214160704786 +:10EE2000F2B5044615461A46E4B2162C47D264B22F +:10EE3000DFF8600350F824600227307F00283ED0BE +:10EE40000846C82802D1B420009003E0422801D12E +:10EE50003C2000909DF91830002B06D4D80704D52B +:10EE600000993046FFF79BFFF2BD00993046FFF74F +:10EE700098FFA4F10C00C0B2062805D22146C9B201 +:10EE800000A8326E9269904731462046FFF7ACFFEA +:10EE9000707A00281BD1294649B23046726E12683A +:10EEA000904700280DD0306E40688047002804D17C +:10EEB00039464F1EC9B20029F5D1002801D10020E2 +:10EEC000F2BD294649B23046726E52689047707A58 +:10EED000401C70720D2C08D02A4652B20099304660 +:10EEE000736E1B69984700F0B7F80120F2BD00006F +:10EEF00060F61C3A2DE9F04104460D4616461946C7 +:10EF0000E4B2162C08D264B2A24850F824704FF034 +:10EF10000208387F002801D1002036E0C82D01D139 +:10EF2000B42502E0422D00D13C253846FFF755FFBD +:10EF3000787A012818D1314649B238467A6E9268FB +:10EF4000904700280AD0386E80688047002805D195 +:10EF50004046A0F10108C0B20028F4D1314649B2C0 +:10EF600038467A6ED2689047787A002801D0401EE1 +:10EF700078720D2C08D0324652B2294638467B6E44 +:10EF80005B69984700F068F80120BDE8F081000057 +:10EF900089AD84FA0A74313F2DE9F04104460D46EB +:10EFA00016461A46E4B2162C25D264B2794850F8B7 +:10EFB0002470387F00281ED0C82D01D1B42502E06E +:10EFC000422D00D13C250D2C01D1012042E09DF9BC +:10EFD0001830002B06D4D80704D529463846BDE89A +:10EFE000F041DCE606EB460007EB8008D8F8380075 +:10EFF0008068002801D500202CE029463846FFF71C +:10F00000D0FED8F838008068854215D0012D13DB7A +:10F010000FF2C410F3F7D5F8324652B2D8F83800E0 +:10F02000816838467B6E5B699847324652B2294602 +:10F0300038467B6E1B699847A4F10C00C0B20628C5 +:10F0400005D229462046FEF725FB012002E000F00C +:10F0500003F80120BDE8F08170B56FF0004634463A +:10F060004F48016804E08A68A24200DA1446096841 +:10F070008142F8D14B4D2878401C28706878F021E7 +:10F08000084202D09920F6F703FDF6F76EFD687886 +:10F09000401C6870B44200D100243B4E3068C46705 +:10F0A000D0F8802021468A4212D0002901D0002ABF +:10F0B0000BD1C0F880100FF23010F3F782F83068EF +:10F0C000D0F88000F3F759F802E0012007F06CF95E +:10F0D0006878F021084202D09920F6F7D9FC6878C8 +:10F0E000401E6870C0B2002801D1F6F738FDF7F76E +:10F0F00092FB012070BD38B505462A4C2078401C93 +:10F1000020706078F021084202D09920F6F7C0FC08 +:10F11000F6F72BFD6078401C607029460FF2DC008A +:10F12000F3F74FF818480068C0F880501C48016891 +:10F1300005E08A68B2FBF5F26A43CA600968814259 +:10F14000F7D16078F021084202D09920F6F7A0FCB0 +:10F150006078401E6070C0B2002801D1F6F7FFFC55 +:10F16000BDE83140F7F757BB0D490A6808E013695D +:10F17000012B01DAD368136113691B1A136112683A +:10F180008A42F4D17047000018660120986501207A +:10F190000080FFFF006000208470002010620120CA +:10F1A00070600020F899002058206973206F766500 +:10F1B0007200000059206973206F766572000000AC +:10F1C0005A206973206F76657200000055435354CE +:10F1D000282564294E5300006368616E67652072BC +:10F1E0006174653200000000675F707453682D3EE3 +:10F1F0006354696D6572203D202564006374696DF8 +:10F200006572203D2025640038B504000D001448C7 +:10F210000078401C1249087012480078002802D07B +:10F22000A120F6F735FCF7F7B5FA607E662802D024 +:10F230008220F6F72DFCF6F798FC05E03821200037 +:10F2400007F0B8F8F6F791FCE06821698842F5D03C +:10F250002900200007F0D0F8F7F7DDFA31BD00BF34 +:10F26000F8990020B66601204FF0FF31801E01287A +:10F2700014D9C01E042811D9801F05280ED90838BA +:10F280000CD0801E042809D9401F05D0401E10282C +:10F2900004D9113804D004E0072102E0012100E084 +:10F2A00003210846704780B501460020C91E1AD0C8 +:10F2B000C91E18D0C91E16D0C91E012913D90D396F +:10F2C000032910D9091F07D0491E0CD0C91F0329D3 +:10F2D00009D9C91F07D002BD1D210FF21000F2F796 +:10F2E00070FF012002BD012002BD000050443A2001 +:10F2F0004C4C53202564000038B504464FF0FF35D0 +:10F30000F9F7DEFA2C2C36D8DFE804F03435323445 +:10F310003432343432323534193217173435353209 +:10F3200035343434193432343234341C1F23272B0F +:10F330002E323232323230323400B4251BE04FF4F8 +:10F340007A7518E0D0F8DC5415E000F2DC40856AEC +:10F3500011E000F2DC40056D0DE000F2DC40856F4D +:10F3600009E0D0F87C5506E00A2504E0052502E016 +:10F37000142500E03C25284632BD38B5DFF8684A40 +:10F38000F3F762FAE06207F09FF8F9F799FA206361 +:10F39000002512E0DFF8541A0161DFF8541A4161C8 +:10F3A000DFF8502A8261DFF8502AC261DFF84C2A68 +:10F3B00002624162406A80476D1C2D2D80F21881E7 +:10F3C000216B05EB8500C0000022425440184270BA +:10F3D0004FF0FF32426000220272C2604272032D7F +:10F3E00004D17431DFF8182A8A62E3E7022D03D1D1 +:10F3F000DFF8102A4A67DDE7002DCBD0042D04D1B9 +:10F400007431DFF8042A0A65D4E7052D04D174317C +:10F41000DFF8F8298A67CDE7062D04D1DFF8F02957 +:10F42000C1F81421C6E7072D05D101F58A71DFF86F +:10F43000E4298A62BEE7082D05D101F58A71DFF85B +:10F44000D8290A65B6E7092D05D101F58A71DFF8DB +:10F45000CC298A67AEE70A2D9CD00B2D9AD0012DBE +:10F4600098D00C2D04D1DFF8B829C1F80422A1E707 +:10F470000D2D05D101F50171DFF8A8298A6299E700 +:10F480000E2D05D101F50171DFF89C290A6591E780 +:10F490000F2D05D101F50171DFF890298A6789E701 +:10F4A000102D04D1DFF88829C1F8A42282E7122D9B +:10F4B0003FF470AF142D3FF46DAF132D3FF46AAFDE +:10F4C000162D3FF467AF2B2D3FF464AF152D04D1FB +:10F4D000DFF86029C1F86C236CE7172D05D101F521 +:10F4E0005B71DFF854290A6564E7182D05D101F531 +:10F4F0005B71DFF848298A675CE71A2D05D101F2B4 +:10F500000C41DFF83C298A6254E71E2D05D101F237 +:10F51000AC41DFF830298A624CE7192D04D1DFF8BD +:10F520002829C1F80C2445E71F2D05D101F2AC4173 +:10F53000DFF818290A653DE7202D05D101F2AC411D +:10F54000DFF80C298A6735E7212D04D1DFF804297B +:10F55000C1F84C252EE7222D05D101F24C51DFF8E0 +:10F56000F8288A6226E7232D05D101F24C51DFF8F5 +:10F57000EC280A651EE71B2D05D101F20C41DFF8CE +:10F58000282A0A6516E71C2D05D101F20C41DFF887 +:10F590001C2A8A670EE71D2D04D1DFF8142AC1F852 +:10F5A000AC2407E7262D04D1DFF8082AC1F8142679 +:10F5B00000E7272D05D101F21461DFF8FC298A62EA +:10F5C000F8E6292D05D101F21461DFF8F0298A67E8 +:10F5D000F0E62A2D04D1DFF8E829C1F8B426E9E6DF +:10F5E0002C2D7FF4D7AEDFF8DC29C1F80427E1E643 +:10F5F000012032BD0CB42DE9F04385B004460E461F +:10F6000001251A2C46D02C2C44D004EB8400C700D2 +:10F61000DFF8D4870B2E20D1D8F8300007EB000993 +:10F6200099F80100002818D02046FFF71DFE012898 +:10F6300013DB2046FFF718FE99F8011081420CDB1E +:10F64000204600F0A9F90546D8F830003818002106 +:10F6500041700FF67C10F2F7B4FDD8F83000395C39 +:10F6600000294ED139184A78002A4AD100223A544A +:10F67000104648700CA983B068461822F4F750FA77 +:10F680000EBC204600F07EF8022835D0032838D181 +:10F69000032536E00B2E16D1FFF7E6FD012812DB1D +:10F6A0002046FFF7E1FD04EB8401DFF83C27126BF5 +:10F6B00002EBC1014978814205DB0FF61C10F2F71D +:10F6C00080FD022059E01A2C04D13046C0B202F06D +:10F6D000AFF805E02C2C03D13046C0B207F01AF881 +:10F6E0000CA983B068461822F4F71AFA0EBC20461B +:10F6F00000F048F8022801D102203EE0032800D1A2 +:10F7000003250A2E0AD1DFF8E086D8F8300004EB92 +:10F710008401CF00395C491C395416E00B2E14D1FA +:10F72000DFF8C486032C07D1D8F8300090F87900B0 +:10F73000002801D101F0D2FA04EB8400C700D8F808 +:10F74000300038184178491C4170DFF89C86D8F8A1 +:10F750003000D8F82C1004EB8402D700D1E91C2328 +:10F76000CDE90223C96E009139184B783A5C2146E5 +:10F770000FF67000F2F725FD284605B0BDE8F0034E +:10F780005DF80CFB0EB42DE9F04183B00546012471 +:10F7900005EB8500C600DFF850761A2D0CD02C2D15 +:10F7A0000AD02846C0B2FFF7A7FD396B7118486030 +:10F7B00000200872C86011E0386B315C00290DD15F +:10F7C00030184078002809D12846C0B2FFF794FDD0 +:10F7D000396B7118486000200872C86009A984B0AC +:10F7E00068461822F4F79CF90FBCD7F830C066447D +:10F7F0003669B047022801D1022011E0032801D167 +:10F8000003240CE0D7F82C80D8E91C67204600219F +:10F810002A4600F035FC30433943C8E91C01204634 +:10F82000BDE8FE015DF810FB2DE9FF4704460D46DB +:10F830000126274607EB87004FEAC008DFF8A895A6 +:10F84000D9F830001A2C58D02C2C56D008EB000ACE +:10F850009AF80100022814D32046FFF705FD01287D +:10F860000FDB2046FFF700FD9AF80110814208DB0C +:10F870002046FFF7F9FC8AF801000FF27C70F2F7DE +:10F88000A0FCD9F8300018F80010002904D108EBCA +:10F8900000025278002A67D00A2D09D1002903D02E +:10F8A000491E08F8001017E0002108F8001013E0C6 +:10F8B0000B2D11D108EB00014A78002A02D0521E0C +:10F8C0004A7001E000224A70032C05D190F87900BB +:10F8D000002801D101F011FAD9F8300018F8001011 +:10F8E000002941D14044407800283DD1204600F015 +:10F8F00053F8032838D1032636E018F80010002901 +:10F9000004D108EB00025278002A2DD00A2D09D12B +:10F91000002903D0491E08F8001012E0002108F861 +:10F9200000100EE00B2D0CD108EB000A9AF8010034 +:10F93000002803D0401E8AF8010002E000208AF867 +:10F9400001001A2C04D12846C0B201F071FF05E075 +:10F950002C2C03D12846C0B206F0DCFE204600F075 +:10F960001BF8032800D10326D9F83000D9F82C1051 +:10F97000D1E91C23CDE90223C96E009108EB0001F7 +:10F980004B7818F8002039460FF27460F2F719FC32 +:10F99000304604B0BDE8F0872DE9F0410746012666 +:10F9A00007EB8700C500DFF84044206B281840694A +:10F9B0008047032800D103262C2F08D1206B90F814 +:10F9C000E01600290AD190F8E106002806D1384651 +:10F9D00040B200F080F9032800D10326206B295C97 +:10F9E000002917D128184178002913D14FF0FF3191 +:10F9F000416000210172C160D4F82C80D8E91C4517 +:10FA000001203A4600F03CFB24EA000025EA01010F +:10FA1000C8E91C013046BDE8F08138B5044604EB66 +:10FA20008400C000DFF8C053296B00224254401804 +:10FA3000114641702046FFF7AFFFE86AD0E91C236A +:10FA400021460FF2D050F2F7BCFB012032BD2DE968 +:10FA5000F041B6B004460E46B6B201208DF86400FF +:10FA6000DFF884531AA8E96A6C22F4F759F817955D +:10FA70001AA984B068466C22F4F752F80FBC00F063 +:10FA8000EFF900270BE0032803D1189703208DF826 +:10FA90006400286B4044002101727F1C7FB22D2F2F +:10FAA0002BDA012000213A4600F0EAFAD5F82CC002 +:10FAB000DCE91C231040194001D10028EDD007EBF0 +:10FAC00087004FEAC008286B404441680029E4D40D +:10FAD000027A521C0272D2B2724389B28A42DCDBD1 +:10FAE000806980470228CED1189702208DF86400E3 +:10FAF000DDE91801C4E9000103E0DDE91801C4E90A +:10FB0000000136B0BDE8F08100210A3842F20772E8 +:10FB1000904200D20121084670472DE9F04383B09E +:10FB2000044600200190042204F1090101A8F4F721 +:10FB300022F86168DFF8B062376B282505FB017099 +:10FB40004068019A904204D10FF2D840F2F739FB95 +:10FB50006AE01046FFF7D8FF002809D16168019BD1 +:10FB600005FB017042680FF2C840F2F72AFB5BE028 +:10FB7000DFF854743868D0F8008026E090F90890D7 +:10FB80006068316B05FB0010C068012101FA09F1C2 +:10FB9000084217D04FF0FF30009003460122019930 +:10FBA0004846FFF73DF940B200280BD16168019843 +:10FBB0000090306B05FB010043684A460FF2844019 +:10FBC000F2F7FFFA4046D0F80080B842D6D1386844 +:10FBD000D0F8008020E090F90890C868012202FA6D +:10FBE00009F2104215D04FF0FF3301224968484610 +:10FBF000FFF780F940B200280BD1616801980090AE +:10FC0000306B05FB010043684A460FF25040F2F7A3 +:10FC1000D8FA4046D0F800806168326B05FB0121BC +:10FC2000B842D8D101984860BDE8F7832DE9F84380 +:10FC300081464FF0000844466B4E1FE004EB840001 +:10FC4000C500306B2F180020787201200021224659 +:10FC500000F016FAD6F82CC0DCE91C23104019403D +:10FC600001D1002809D04846F9698847002804D006 +:10FC7000306B2818012141728846641C2D2CDDDB75 +:10FC80004046BDE8F2835848C16AD1E91C23002BE5 +:10FC900001D1002A0BD0002107E001EB8102036BA8 +:10FCA00003EBC20200235372491C2D29F5DB704778 +:10FCB00030B502460120002100F0E2F94A4AD26A3A +:10FCC000D2E91C452040294001D1002801D0012063 +:10FCD00030BD002030BD2DE9F0478146012409EBFD +:10FCE0008900C500404E306B2818C068002829D014 +:10FCF000DFF8D4723868D0F8008003E0032440466F +:10FD0000D0F80080B8421DD090F908A0306B2818B8 +:10FD1000C168012202FA0AF2114021FA0AF149B23D +:10FD20000129ECD14FF0FF33012241685046FFF723 +:10FD3000E1F80028E2D0524649460FF23830F2F797 +:10FD400040FADCE72046BDE8F08710B58AB00446EB +:10FD50000020ADF8220001900A208DF80800002054 +:10FD60008DF809008DF80A00ADF82200600719D55A +:10FD70000520FFF79DFF002807D004208DF8000024 +:10FD80000520019000A8F8F797FE0220FFF790FFEA +:10FD9000002807D004208DF800000220019000A860 +:10FDA000F8F78AFEE0060CD50820FFF781FF00284F +:10FDB00007D003208DF800000820019000A8F8F774 +:10FDC0007BFE0AB010BD02460020092A00D0704711 +:10FDD00080B5012902D107F053FE012002BD02497E +:10FDE0002C22F3F79DBE00000C600120318C00082E +:10FDF0002D8C0008398C00083D8C0008418C0008CF +:10FE00000507010875360108A50001083934010805 +:10FE1000772F03083D41030871320108CF790108AB +:10FE2000BB030108252E0308212303086D380308AE +:10FE3000F33E030855420308854403084937030885 +:10FE4000D923010867290308453B0308F99C0108E9 +:10FE500027400308E3350308DF5A0108859B0108A2 +:10FE60000FB41B980099016001994160029981606B +:10FE70000399C1600499016105994161BDF85A1067 +:10FE80000183BDF85C104183BDF85E1081830C993D +:10FE90000162139941621499816204B070470000B5 +:10FEA0004168122903D1C17A002000F0D8BF13297C +:10FEB00003D1017B012000F0D2BF142903D1417B83 +:10FEC000022000F0CCBF152902D1C07A00F0D8BFC3 +:10FED000172961D1817A1B2908D01C2932D01D290C +:10FEE00011D0262928D02C293CD07047C17B01296C +:10FEF00003D1B0F80B0003F0E9B802294CD1B0F8F7 +:10FF00000D0003F0E1B8017D012903D1B0F80B0029 +:10FF100008F0A6B8022903D1B0F80D0008F094B893 +:10FF2000042903D1B0F8170008F09CB8032933D195 +:10FF3000B0F8150008F0A2B8C17B01292CD1807B54 +:10FF400008F0BFB9817B012902D1C07A08F0C5BB96 +:10FF5000022902D1007B08F0CABB05291CD1407BD5 +:10FF600008F0A5BB417D012902D1C07B07F0DFB9B4 +:10FF7000022902D1C08A07F0C6B9032902D1008B39 +:10FF800007F0CBB9042902D1408B07F0EEB905295F +:10FF900002D1808B07F0DBB970470C4908607047CD +:10FFA0000A4800687047000071300108298501087F +:10FFB000E77F010809820108630C030879430308FD +:10FFC000FD0D0308437201086C6900201C660120C6 +:10FFD000414C204558000000414C2045582D4154CB +:10FFE00000000000414C2564202564202564202564 +:10FFF0006420256C6C750000524C204558000000B0 +:020000021000EC +:10000000524C256420256420256420256420256C1D +:100010006C7500005445524D20256420256C6C758C +:10002000000000004558204C4D435231202564000B +:100030004558204C4D43523220256420256420250C +:10004000640000004558204C4D4352332025642065 +:100050002564202564202564000000004558204CBC +:100060004D435234202564202564202564202564D6 +:1000700000000000534D52412025642025640000FB +:10008000D2B2203A22BF00FA02F100207047524259 +:10009000D041D2F1200291404140D04090404140B7 +:1000A0007047000038B5F8F70BFC0446104DF2F726 +:1000B000CBFB286004F026FE04F029FE686004F003 +:1000C00061FF0C48C4F8B00004F1B0000A49416077 +:1000D0000A4981600A49C1600A490161012032BDB3 +:1000E0000349496889680847014840680068004733 +:1000F000B8650120318C00082D8C0008398C00086F +:100100003D8C0008418C00082DE9F04786B004467C +:1001100001A81421F5F76EFCF1F7D1FF05464FF069 +:100120000208002601E0761C76B20A2E80F29E803C +:10013000022EF8D0032EF6D0062EF4D0524850F8F6 +:100140002670787A002806D107F10C00406D4068CF +:1001500080470028E7D008F8046008F101084FFA4A +:1001600088F8304609284FD8DFE800F0050A4E4EDF +:1001700010204E154E49C8212846F2F78DF943E06C +:100180004FF448712846F2F787F93DE032212846BE +:10019000F2F782F938E007208DF80400FF208DF88F +:1001A000050032212846F2F777F92DE03C21284658 +:1001B000F2F772F94FF0000A07F10C09BAF1030FD8 +:1001C00022DA0020D9F854100969884714212846FA +:1001D000F2F762F90120D9F854100969884714210F +:1001E0002846F2F759F9BAF1020F05DA062101A8FB +:1001F000D9F85420526990470AF1010ADEE74FF41A +:1002000016712846F2F748F907F10C0999F815100C +:1002100001A8D9F8542052699047002819D0D9F87C +:100220000C00F96800EB010A99F8152001A9504665 +:10023000F3F7A1FC3846FEF729FC99F81520514642 +:1002400008EB0400F3F797FC99F9150080444FFA86 +:1002500088F8787A00287FF466AFD9F8540080686F +:10026000804700287FF45FAF002009E0A8F102007A +:10027000ADF80000022200A92046F3F77CFC002024 +:1002800006B0BDE8F08700000060002038B505002A +:100290000C0094F84C00642802D08020F5F7F8FB9D +:1002A000F6F750FAF5F761FC606928436061207C3D +:1002B00010F0F800082806D1A0696169084202D050 +:1002C0002000F6F7E4FA07484078F021084202D00F +:1002D0009920F5F7DDFB03484078002801D1F5F7B8 +:1002E0003EFC31BDF89900200FB480B5BDF80B007D +:1002F00065494880022802D3801E088001E0002062 +:1003000008800C229DF90A100020F8F7DBFA032878 +:1003100001D1022000E0012002BC5DF814FB5A4824 +:100320000121418000210180012070475749087058 +:100330007047000030B58DB002A8F8F729FB524C89 +:100340002088401C2080618880B2884232D30020FF +:100350002080054628E06068D0F8EC010121A94022 +:10036000084220D0284606F000F900281BD400EBF4 +:1003700080009FED440ADDED0B0A60EE800AFDEE81 +:10038000E00A10EE901A00AA8152DDED0C0A20EE70 +:10039000800ABDEEC00A10EE101A8218518000A922 +:1003A0004018012101716D1C172DD4DBDDE900011E +:1003B00006F0E4F801200DB030BD80B5F8F780FA02 +:1003C000314948603249C0F8F01100F5F870314900 +:1003D0004160314981600FF21101C1600FF22501C6 +:1003E0000161012002BD000010B50024274890F9EA +:1003F0000000002804D106F0E0F8002800D0012415 +:10040000204610BDF8B504460D4640F2491628783E +:1004100016FB004001210170287816FB0040417056 +:10042000287816FB00400C218170287816FB0040CC +:10043000164991F90010002902D00221C17001E093 +:100440000121C170287816FB004001210171287834 +:1004500016FB0040C180287816FB0047002006F0FC +:100460004EF83881287816FB0044002006F04CF83E +:1004700060812878401C28700C20BDE8F24006F00E +:100480005CB800000000C8421C9B00209866012058 +:10049000E90201081F030108350301080FB410B574 +:1004A000032200210846F8F70DFA022801D10220A4 +:1004B0001CE00FF24000F1F784FEDFF8784C0020DA +:1004C0006073608220629DF80C209DF80B109DF8EF +:1004D0000A0008F09DFE58220021DFF85C0CF2F7BC +:1004E00017FF002060632074A073012010BC5DF82A +:1004F00014FB000050443A205374617274506564D8 +:100500006F2D303632362D310000000080B50322C9 +:1005100000210120F8F7D6F9032801D1032002BDFC +:10052000012002BD30B58BB000A8F8F731FA0521E3 +:100530000320F8F7ABFA002802D1DFF8000C08908E +:10054000DFF8F04BA069C56F08F0F7FD207294F951 +:100550000800022806D13C2D04D114210320F8F70D +:1005600019FA07E0012805D1142D03D13C210320FD +:10057000F8F710FA284680B2DDED081A00A991ECD0 +:10058000030A08F0A7FCE0692818E06101200BB01D +:1005900030BD10B5DFF89C4B94F9000000283BD427 +:1005A00094F90A0094F90110814229D1217B08189D +:1005B000A07240B23D2801DB3C38A07294F90A10C9 +:1005C0000FF27000F1F7FDFD0020E061DFF8740B21 +:1005D00090F901004FF0FF31884201D1012010BD98 +:1005E00094F90110081AF8F7A5FB21F0004104F076 +:1005F0005DFB40B2012801DB012010BD002010BDD1 +:10060000DFF8440B90F90120914203D0D4E9002394 +:10061000C0E90023002010BDE069DFF8301B8842EC +:1006200005DB0FF21C00F1F7CCFD012010BD00200E +:1006300010BD000050443A204E54202564000000B4 +:1006400050443A204E6F54696D6500002DE9F8431F +:100650000026DFF8E04A07E07A19A27252B231466A +:100660000FF26C00F1F7ADFD94F90A50002E21D481 +:100670006078461B76B294F90C70002EECD53046AB +:10068000F8F758FB21F0004102460B469046994688 +:100690003846F8F74FFB42464B4605F001FBE3D2E4 +:1006A000EA1BA272002652B231460FF23800F1F76F +:1006B00088FDD9E73C2D02DBA5F13C00A07294F93E +:1006C0000A100FF23400BDE8F443F1F77ABD0000E0 +:1006D00050443A20636F6D70312025642C202564CE +:1006E0000000000050443A20636F6D703220256492 +:1006F0002C2025640000000050443A20435554202B +:100700002564000010B5DFF82C4A0020A0730120FA +:100710002072002060724FF0FF3020700F20E072D6 +:100720001420207300206073608220626074E06295 +:10073000206328220146DFF8180AF2F7E9FDF8F7EE +:10074000BFF8A061DFF80C1AC0F888108830DFF815 +:10075000081A4160DFF8041A81600FF28D21C16030 +:100760000FF6FD110161012010BD10B582B04FF4EC +:100770006163C1EB0114A40013FB0043D3184FF4D1 +:100780007A746343DFF8C8492360DFF8A8391B7C1B +:10079000009313460A4601460FF20800F1F711FDD7 +:1007A00013BD0000504420425420256420256420BD +:1007B00025642025640000002DE9F0412DED028B19 +:1007C000AAB0DFF87469314684B068465822F3F75E +:1007D000A7F90FBC00F066FC10EE100AF8F794FBC6 +:1007E00041EC100B9FED7E8BDFF86449656853EC9C +:1007F000102B51EC180BF8F7B5FA04F057FA15FA6C +:1008000080F060604FF6FF75A84200D36560314606 +:1008100084B068465822F3F783F90FBC00F0FAFB66 +:1008200010EE100AF8F770FB41EC100BA76853ECC0 +:10083000102B51EC180BF8F795FA04F037FA17FA69 +:1008400080F0A060A84200D3A56000201390022091 +:100850001290314684B068465822F3F761F90FBC14 +:1008600000F06CFAA1894018A08180B2FF2801D362 +:10087000FF20A0810020139003201290314684B005 +:1008800068465822F3F74CF90FBC00F057FA21697B +:1008900040182061A84200D3256100201390062053 +:1008A0001290314684B068465822F3F739F90FBCEC +:1008B00000F044FAA18A4018A08280B2FF2801D338 +:1008C000FF20A0820020139007201290314684B0B0 +:1008D00068465822F3F724F90FBC00F02FFAE18A9A +:1008E0004018E08280B2FF2801D3FF20E082002080 +:1008F000139008201290314684B068465822F3F7CE +:100900000FF90FBC00F01AFAA1694018A061A842C3 +:1009100000D3A5610020139009201290314684B0C5 +:1009200068465822F3F7FCF80FBC00F007FAE169BB +:100930004018E061A84200D3E56114A808F001FC6A +:10094000DFF8107DD7F82C802398F8F7DDFA002225 +:10095000DFF8E43CF8F706FA04F0A8F958FA80F05A +:10096000F862396B491C3963B0FBF1F084F8200060 +:100970000020139001201290314684B0684658221E +:10098000F3F7CEF80FBC00F0D9F9616A4018606245 +:10099000A84200D36562F87B00F0BBFA2AB0BDEC38 +:1009A000028BBDE8F081DFF8A8078189002914D106 +:1009B0000169002911D1818A00290ED1C18A00293B +:1009C0000BD18169002908D1C169002905D1406A8C +:1009D000401E8041C043C00F704701207047000097 +:1009E00000000000000059402DE9F04FABB0064672 +:1009F0000025DFF8604CA07B314688420AD0012EEA +:100A000076D1A06990F9782090F979100FF67C40A2 +:100A1000F1F7D7FB14A808F094FBDFF81C972846E1 +:100A2000139001201290494684B068465822F3F78B +:100A300077F80FBC00F082F907469DED230AD9ED47 +:100A40000F0A30EE600A10EE100AF8F75DFA2A4637 +:100A5000DFF8E43BF8F786F904F028F980461FFA3E +:100A600088F8BDF89A00B9F84A10A0EB010A5FFABD +:100A70008AFA606B616A149A5118091A6162A26A53 +:100A8000149B9A18101AA062002E3ED1002902D0A1 +:100A9000012009F096F8A06A002802D0012009F090 +:100AA0004AF9002F02D15AEA080000D0012500209F +:100AB000E0614FF0FF302070DFF88C26D4E90001B0 +:100AC000C2E90001DFF8A42BC2E90001DFF87426B7 +:100AD000C2E90001E07AA072A07B00284DD000207E +:100AE000A073207C002848D001206074054644E0B3 +:100AF000002E04D10FF6A830F1F763FB8AE70FF65A +:100B0000AC30F1F75EFB2846E5E000F0A4F90028E0 +:100B10001BD000A8F1F7F0FD204600A90522F2F74E +:100B2000EFFF28466072DFF82026D4E90001C2E911 +:100B3000000194F9023094F9012094F900100FF6A5 +:100B40008830F1F73EFBFFF781FD00A8F1F7D4FDF7 +:100B5000204600A90522F2F7D3FFFFF71AFD00286F +:100B60000BD0DFF8E025D4E90001C2E90001207CC8 +:100B7000002801D0012060740125012E06D1A07B40 +:100B8000012803D000F034FA0120A073012E58D1BF +:100B9000002F56D0DFF8D4BAE07B217C08430CD17B +:100BA00001202074052221460BF10800F2F7E3FF33 +:100BB000A27861782078FFF7D8FD94F901009BF9BD +:100BC0000910401A411E222901D2012005E010F12E +:100BD000230F01DA012000E0002001282AD10020A3 +:100BE000E0622063FFF7DFFE002823D028220021E7 +:100BF000DFF85C05F2F78CFBE07B401CE073C0B2D1 +:100C0000152809D10FF6D820F1F7DBFA012060741E +:100C10000020E07301250DE0207C401C2074A278A8 +:100C200061782078FFF7A1FD052221460BF108002D +:100C3000F2F7A1FFFFF7C0FD582214A94846F2F7CA +:100C40009AFF607B012833D1608A002805D10FF616 +:100C5000A020F1F7B6FA012523E0216A814218D2DB +:100C6000002F02D15AEA080000D00125DFF8FCB9B4 +:100C70009BF9020094F90220904212D0491C216293 +:100C80000FF68020F1F79DFAD4E90001CBE90001CD +:100C900007E000206073608220620FF67820F1F791 +:100CA00090FA012E04D1207C002801D0012060742C +:100CB000012D01D10020E061A06990F879000028A1 +:100CC00006D10020E061012D01D100F091F900254D +:100CD0001498606328462BB0BDE8F08F10B5DFF89C +:100CE00074090021C161032205210020F7F7EAFD04 +:100CF000044600F007F8204610BD0322052101201C +:100D0000F7F7E0BD00B597B000A808F01AFA58222E +:100D100000A9DFF84409F2F72EFF012017B000BD4B +:100D2000DFF83009406A7047DFF828090021416286 +:100D30007047DFF820090021816270470FB430B599 +:100D400097B09DF9C0409DF9C400002501280BD142 +:100D500008F0EFFA1A99884202D3451AEDB270E012 +:100D60008038451AEDB26CE000A808F0EAF9641E7C +:100D7000082C66D8DFE804F02905111D2936424EFB +:100D80005A0001981B99884201D3451A59E0DFF8AF +:100D9000E0281018401A451C53E002981C9988421C +:100DA00001D3451A4DE0DFF8C8281018401A451C39 +:100DB00047E003981D99884201D3451A41E0DFF8C6 +:100DC000B0281018401A451C3BE000981A99884238 +:100DD00001D3451A35E0DFF8981808181A99401A17 +:100DE000451C2EE004981E99884201D3451A28E03C +:100DF000DFF87C281018401A451C22E005981F993E +:100E0000884201D3451A1CE0DFF864281018401A04 +:100E1000451C16E006982099884201D3451A10E037 +:100E2000DFF84C281018401A451C0AE00798219951 +:100E3000884201D3451A04E0DFF834281018401A1C +:100E4000451C284617B030BC5DF814FBDFF80408D9 +:100E5000012141727047DFF8FC07407A704708F0C3 +:100E600083B9DFF8F017792802D378224A8200E0AC +:100E7000488201224A7301460FF6AC00F1F7A1B98E +:100E800010B5040001D1012402E0072C00D3062490 +:100E900021460FF6A800F1F794F9641E052C2DD811 +:100EA000DFE804F0030A11181F26DFF8A80737212E +:100EB000C1723C21017321E0DFF898071921C1724A +:100EC0001E2101731AE0DFF88C070F21C172142173 +:100ED000017313E0DFF87C070A21C1720F2101734F +:100EE0000CE0DFF870070721C1720C21017305E0E7 +:100EF000DFF860070521C1720A210173DFF854078A +:100F0000C17A8172BDE81040FFF7A0BBDFF82C0763 +:100F1000704700EB80018800421CDFF820078C49F5 +:100F200092B20B681B0E1354521C92B20B681B0C2E +:100F30001354521C92B20B681B0A1354521C92B2E7 +:100F40000B681354521C92B24B681B0A1354521C68 +:100F500092B24B681354521C92B28B681B0A135402 +:100F6000521C92B28B681354521C92B28B89135448 +:100F7000521C92B20B691B0A1354521C92B20B6999 +:100F80001354521C92B28B8A1354521C92B2CB8AC5 +:100F90001354521C92B28B691B0A1354521C92B206 +:100FA0008B691354521C92B2CB691B0A1354521C06 +:100FB00092B2CB691354521C92B291F82030135460 +:100FC000521C92B24B6A1B0A1354521C92B2496AC9 +:100FD0001154DFF88006511C8182704710B5DFF88C +:100FE0007446A18A0FF26070F1F7EBF8A08A10BD89 +:100FF00080B5282200215648F2F78AF9DFF8540616 +:101000000021C1730121818200210174C162016349 +:1010100001BD00000FB400B597B000A808F091F82A +:101020009DED090ADDED210AB4EE600AF1EE10FA39 +:1010300002DB30EE600A05E09FED411A71EE600AB6 +:1010400030EE800A10EE100AF7F75EFFDFF8F025A9 +:10105000DFF8F03508F0B0FEF7F77EFFF7F754FF42 +:101060000022DFF8E435F7F77DFE03F01FFE00EE07 +:10107000100AB8EEC00A10EE100AF7F745FFDFF8C5 +:10108000C025DFF8C835F7F76DFEDFF8C425DFF8B7 +:10109000E43508F091FEF7F75FFF00EE100A17B095 +:1010A0005DF814FB0FB400B597B000A808F049F83C +:1010B0009DED0E0ADDED260AB4EE600AF1EE10FA9F +:1010C00002DB30EE600A05E09FED1D1A71EE600A4A +:1010D00030EE800A10EE100AF7F716FFDFF86025F1 +:1010E000DFF8603508F068FEF7F736FFF7F70CFF1A +:1010F0000022DFF85435F7F735FE03F0D7FD00EE98 +:10110000100AB8EEC00A10EE100AF7F7FDFEDFF87D +:101110003025DFF83835F7F725FEDFF83425DFF81E +:10112000543508F049FEF7F717FF00EE100A17B024 +:101130005DF814FB045F0120205B012000007A446D +:1011400000247449C8650120C065012040771B0058 +:10115000C46001209D0401080D0501082505010852 +:101160002DE9F0472DED068BAAB006460D4614A8D2 +:1011700007F0E7FF40F24914287814FB00600121D2 +:101180000170287814FB0060DFF8C874797B0129AE +:101190000CD103214170287814FB00600121C1703B +:1011A000788A002804D10020787301E00121417081 +:1011B000287814FB006003218170787C012820D1FD +:1011C000387C00281DD0297814FB0161C0220A71E7 +:1011D000DFF868140870287814FB0068FFF7FEFE3B +:1011E000A8F83000287814FB0064FFF78FFEC4F8DD +:1011F00032002878401C2870FFF7FAFE002078742F +:1012000015E20DF18C099FED868B9FED879BDFF832 +:1012100048740020139001201290394684B068462B +:101220005822F2F77DFC0FBCFFF788FD0A282878CA +:1012300014FB006080F0FC8000210171287814FB11 +:10124000006898F804A008461390022012903946CE +:1012500084B068465822F2F763FC0FBCFFF76EFDBE +:1012600040EA0A0088F80400287814FB006800208F +:10127000139003201290394684B068465822F2F742 +:101280004FFC0FBCFFF75AFD88F80500287814FBC7 +:1012900000680020139004201290394684B06846FC +:1012A0005822F2F73DFC0FBCFFF748FD88F8060016 +:1012B000287814FB0068002013900520129039460E +:1012C00084B068465822F2F72BFC0FBCFFF736FDBE +:1012D00088F80700394684B068465822F2F720FCA7 +:1012E0000FBCFFF7DFFE10EE100AF7F70DFE41EC22 +:1012F000100B287814FB006853EC102B51EC190BE1 +:10130000F7F730FD03F0D2FCA8F80E00287814FBA4 +:1013100000682398F7F7F8FD53EC182BF7F722FD38 +:1013200003F0C4FC88F81000287814FB0060B9F8BA +:101330000E104174394684B068465822F2F7F0FB2B +:101340000FBCFFF767FE10EE100AF7F7DDFD41EC6A +:101350001A0B287814FB006853EC1A2B51EC190B6C +:10136000F7F700FD03F0A2FC88F81200287814FBC0 +:101370000068D9F80800F7F7C7FD53EC182BF7F70A +:10138000F1FC03F093FC88F81300287814FB006844 +:101390000020139006201290394684B068465822E7 +:1013A000F2F7BEFB0FBCFFF7C9FC88F808002878ED +:1013B00014FB00680020139007201290394684B077 +:1013C00068465822F2F7ACFB0FBCFFF7B7FC88F871 +:1013D0000900287814FB0068002013900820129060 +:1013E000394684B068465822F2F79AFB0FBCFFF7E3 +:1013F000A5FC88F80A00287814FB006400201390EC +:1014000009201290394684B068465822F2F788FBCA +:101410000FBCFFF793FCE0722878401C287004E1B1 +:1014200000000000000024400000000000005940BF +:1014300080210171287814FB00680020139002209D +:101440001290394684B068465822F2F769FB0FBC07 +:10145000FFF774FCC8F80500287814FB006800202A +:10146000139003201290394684B068465822F2F750 +:1014700057FB0FBCFFF762FCC8F80900287814FB83 +:1014800000680020139004201290394684B068460A +:101490005822F2F745FB0FBCFFF750FCC8F80D00CF +:1014A000287814FB0068002013900520129039461C +:1014B00084B068465822F2F733FB0FBCFFF73EFCBE +:1014C000C8F81100394684B068465822F2F728FB64 +:1014D0000FBCFFF7E7FD10EE100AF7F715FD41EC22 +:1014E000100B287814FB006853EC102B51EC190BEF +:1014F000F7F738FC03F0F0FBC8F82700287814FB56 +:1015000000682398F7F700FD53EC182BF7F72AFC37 +:1015100003F0CCFB88F82B00287814FB0060B9F8A6 +:101520000E1080F82C10394684B068465822F2F725 +:10153000F7FA0FBCFFF76EFD10EE100AF7F7E4FCA8 +:1015400041EC1A0B454A464B04F0C2FB06D8454A0B +:10155000454B04F0A5FB01D29FED47AB287814FB67 +:10156000006853EC1A2B51EC180BF7F7FBFB03F058 +:101570009DFBA8F82D00287814FB0068D9F8080016 +:10158000F7F7C2FC53EC182BF7F7ECFB03F08EFBDC +:1015900088F82F00287814FB00680020139006209C +:1015A0001290394684B068465822F2F7B9FA0FBC57 +:1015B000FFF7C4FBC8F81500287814FB006800206A +:1015C000139007201290394684B068465822F2F7EB +:1015D000A7FA0FBCFFF7B2FBC8F81900287814FB74 +:1015E00000680020139008201290394684B06846A5 +:1015F0005822F2F795FA0FBCFFF7A0FBC8F81D00C0 +:10160000287814FB006400201390092012903946BA +:1016100084B068465822F2F783FA0FBCFFF78EFBBE +:10162000C4F821002878401C2870FFF76BFB2AB013 +:10163000BDEC068BBDE8F087000024407C3901201A +:101640007B14AE47E17A743F00005940E17A843F51 +:101650002D431CEB045F0120205B0120B81E85EBAD +:1016600051B89E3F9A9999999999B93F0064012080 +:1016700080969800E2361A3F9A9999999999B93FBC +:1016800080B5C046C046012002BD00005044205233 +:1016900065662045282564292C49282564290000F1 +:1016A0005044203A206C63646F6E00005044203A2E +:1016B000206249734150536C656570696E6720778D +:1016C000726F6E672025640050443A54696D654E10 +:1016D0006F746920256420256420256400000000C3 +:1016E00050442042542042462046554C4C000000B5 +:1016F00050443A20526571205065646F496E666FA0 +:101700003100000050443A207574696D65722025DF +:101710006400000050443A20526571205065646FA7 +:10172000496E666F3200000050443A205374617273 +:1017300074204461746120256400000050443A2004 +:10174000555420256400000050443A204241544C36 +:10175000454E4754482025640000000010B5DFF8CE +:10176000B44C4FF4287200212046F1F7D1FDFF2040 +:101770002070E07284F86202DFF8DC0C0021417016 +:1017800010BDF8B501240B2824D101290ED1DFF8B2 +:10179000843CD31893F954522E46DFF87C7CD75DF5 +:1017A000BE4210DA6D1C83F8545230E002292ED16B +:1017B000DFF8603CD31893F95452012D03DB6D1E02 +:1017C00083F8545223E0DFF84C3CD318002483F80C +:1017D00054421CE00A281AD1012908D1DFF8343C10 +:1017E000D31803F515735D796D1C5D710FE0022947 +:1017F0000DD1DFF8203CD31803F5157393F905508C +:10180000012D02DB6D1E5D7101E000245C71002C76 +:1018100005D1134602460FF20C00F0F7D2FC204629 +:10182000F2BD000041542D25643A25642025640052 +:10183000DFF8E01B81F85E0270470FB42DE9F0413C +:1018400094B00124DFF8105CE868DFF8C86B90F80A +:101850001014002957D190F81104002853D10FF229 +:101860002C20F0F7AEFCB4208DF8020046208DF855 +:10187000030020468DF8040000208DF82C00032082 +:101880000C900DF1350000A91822F2F739F90A2061 +:101890008DF834000BA8F7F70FF9002801D10220CA +:1018A000EEE000A8F0F728FF9DF80000B0779DF962 +:1018B0000100F0779DF9021086F82010BDF9032091 +:1018C000A6F821209DF900304FF46167C0EB001CA1 +:1018D0004FEA8C0017FB030040FA81F04FF47A7155 +:1018E00001FB0020C6F80200C6F80D000020A86128 +:1018F000E8702870A870687028712422014606F5E7 +:101900002870F1F705FD9DF86A70A046012F1DD1E2 +:10191000DDF86B00202805D0D6F817100843C6F86C +:1019200017000BE0204607E0D6F8171008FA00F27F +:101930001143C6F81710401C0528F5D3F07E9DF919 +:101940006F1008FA01F10843F0764EE0B81990F9EB +:101950005412002949D190F95902002845D1022F8B +:101960002DD100A8F0F7C8FE9DF900004FF4616189 +:101970009DF90120C2EB02139A0011FB00209DF992 +:10198000021040FA81F04FF47A71BDF9032001FB97 +:101990000020C6F89302C6F88F0206F12B0006F16C +:1019A0001E010522F2F7ACF84FF49660B083DFF821 +:1019B000DC0CC6F8870200206861286115E0032F5F +:1019C00013D1DDF86B00C6F82300BDF870004FF4AA +:1019D0007A714843C6F827000020C6F89B0286F8B3 +:1019E0006C0286F86D0286F89F0208FA07F0B17D56 +:1019F0000143B175317800290FD0012F08D108FAC1 +:101A000001F1DDF86B20914202D1002186F86112CC +:101A100096F86912084386F869023A46214696F814 +:101A20005E02FFF7AEFE002800D10224E86896F9B6 +:101A30005C120A9196F95B12099196F95A12089173 +:101A400096F95912079196F95712069196F956127E +:101A5000059196F95512049196F95412039190F854 +:101A60001114029190F810040190B08B0090F37E55 +:101A7000D6F81720B17D0FF22400F0F7A2FB204624 +:101A800014B0BDE8F0015DF814FB000041542D5284 +:101A900045563134303330340000000041542D417C +:101AA0004C2025642025642025642025642C415485 +:101AB0002025642025642025642564256425642070 +:101AC000256425642564256400000000F0B595B008 +:101AD000FEF766FA06460124002E00F08180DFF84A +:101AE000345905F51577B2780221B87AFFF749FE27 +:101AF000002800D10324B07801282AD1D6F80300A9 +:101B000005F21702202810D0D5F817108143C5F828 +:101B100017101079012396F90770BB409843107194 +:101B20000FF25010F0F74DFB03E00020C5F817004E +:101B30001071D5F81700002828D1A87D012196F949 +:101B4000022091408843A8750FF23410F0F739FB5A +:101B50001CE0401990F95402002817D1B0784019C0 +:101B600090F95902002811D1B078032807D100203C +:101B7000C5F82300C5F82700C5F89B023883A87D67 +:101B8000012196F9022091408843A875A87D00287C +:101B900013D10FF2F800F0F714FBFFF7DFFD01207F +:101BA0008DF82C0003200C900A208DF834000BA82F +:101BB000F6F782FF002829D125E0DFF89C08C068ED +:101BC00090F87810002921D1002180F8101480F8B5 +:101BD0001114FFF7C3FD0FF2C400F0F7F2FA15E09D +:101BE0000FF2CC00F0F7EDFAFFF7B8FD20468DF8C4 +:101BF0002C0003200C900A208DF834000BA8F6F777 +:101C00005BFF002801D1032032E00324DFF84808FD +:101C1000C068DFF8005805F5157797F908100A91A4 +:101C200097F90710099197F90610089197F905108F +:101C3000079197F90310069197F90210059197F90A +:101C40000110049195F95412039190F81114029126 +:101C500090F810040190A88B009005F1170003790B +:101C6000D5F81720A97D0FF25400F0F7AAFA204604 +:101C700015B0F0BD41542D524D20256400000000E8 +:101C800041542D524D2D494E5400000041542D41D8 +:101C90004C4C52454D4F56454400000041542D4692 +:101CA0004F5243454452454D4F56454400000000B5 +:101CB00041542D524C204E756C6C000041542D52F5 +:101CC0004C2025642025642025642025642C415463 +:101CD000202564202564202564256425642564204E +:101CE0002564256425642564000000002DE9F04F7B +:101CF0008BB04FF0000800A8F0F7FEFC04A807F036 +:101D000029FA4746384603900590DFF808479DF8C2 +:101D10000000A0719DF80100E0719DF802002072A2 +:101D2000BDF80300A4F80900A0794FF46161E279DD +:101D3000C2EB02139A0011FB0020217A40184FF4E5 +:101D40007A71B4F8092001FB0020C4F80200BDF844 +:101D5000100002900190BDF8129000F07DFDD4F8C3 +:101D60000D10D4F8020000F0F8FB0600DFF8E8568A +:101D700001D0C92E08D3E868C26F31460FF2AC40DB +:101D8000F0F71FFAE868C66FA07D400719D52869EB +:101D90003018286147F23051884212D369694118DE +:101DA00069610FF29840D4F887228A4204D3F0F791 +:101DB00008FA3846286104E0F0F703FA384668610B +:101DC000286194F80BA00298824500F0908084F876 +:101DD0000190029820703846C4F88B02A07D40071D +:101DE00078D5D4F88F12D4F8020000F0B6FB834601 +:101DF000D4F8970244F62067BB4513D25844C4F880 +:101E0000970204EB8A00D0F873125944C0F8731299 +:101E1000E07A0019217B90F86E228A4212D280F873 +:101E20006E120FE083444046C4F897021422014624 +:101E300004F27320F1F76CFA0522414604F26E2099 +:101E4000F1F766FAD4F89722BA4202D2287901282B +:101E500032D14046D4F87712D4F87332994200D385 +:101E6000012002210BE004EB8303D3F8733204EB6F +:101E70008107D7F87372BB4200D20846491C03465B +:101E80000529F0D38DF82000181990F86E028DF80E +:101E9000210008A908A800F000FC1422414604F221 +:101EA0007320F1F735FA0522414604F26E20F1F76E +:101EB0002FFA4046C4F8970294F85F02002809D030 +:101EC0005A4604F10B0104F10B0000F0E6FB40461A +:101ED00084F85F02D4F80200C4F88F02404684F808 +:101EE000610284F8669201273846039029E0D4F80D +:101EF0008B023018C4F88B0294F866125FFA89F9E5 +:101F0000494506D084F8019084F866920127394645 +:101F10000391217B6278914213D121788A4510D1B7 +:101F200044F62067B8420BD3A07D400706D594F84D +:101F30005F02002802D1012084F85F02C4F88B728E +:101F4000474694F8691200290AD0002F08D10127CA +:101F5000C80701D5384603900FF2EC20F0F731F9AD +:101F6000A07D400718D5D4F80290D4F893124846C3 +:101F700000F0F3FAD4F88712884205D301273846D7 +:101F80000590C4F8939207E02979002904D001272D +:101F90000FF2C020F0F715F9002F00F0D980474666 +:101FA00011E00FF2BC20F0F70CF9404684F865020E +:101FB000A4F86A0204F12B00A11D0522F1F7A0FD8F +:101FC000404628717F1C032F80F2C280012000FA56 +:101FD00007F1A27D1142F5D094F86922114201D196 +:101FE000002AEFD1002F03D0022F21D00CD3E9E734 +:101FF000A868407A0028E5D103980028E2D041463D +:10200000012000F02BFADDE702998840D4F8171080 +:102010000842D7D060780028D4D094F86102002814 +:10202000D0D1012084F86102014600F017FAC9E717 +:102030000598002802D128790028C3D0D4F802904E +:10204000D4F88F12484600F088FAD4F8971201EBC2 +:10205000000B44F62060834502D22879002806D080 +:102060005A4604F10B01204600F017FB09E0A9EBEA +:102070000B0106A800F083FAA01D06A90522F1F7BE +:102080003FFDB4F86A020938F6F754FEDFF8902CE9 +:10209000DFF8903CF6F766FE02F008FE81461FFA74 +:1020A00089F994F86522914506D049460FF6DC403F +:1020B000F0F787F884F8659294F8651284F8381080 +:1020C000012084F86002C2460FF6D040F0F779F89C +:1020D0004FF009091BE00AF1010A09EB040000F1C5 +:1020E00030018A78CB781B0203EB02420B79D218BD +:1020F00000924B7890F830205FFA8AFA51460FF63A +:10210000A840F0F75EF809F105091FFA89F9B4F85B +:102110006A2210468145DEDBE96891F81114002936 +:102120003FF443AF94F956120129FFF63EAF94F8FD +:10213000651200293FF435AF002A3FF432AF04F1B5 +:1021400030010120F5F79FFC4046286168612CE7CB +:10215000A07D00075CD5D4F8230041000CD501997F +:10216000012904D180070ED54FF001080BE04FF094 +:1021700001081E20019006E00121019A91400142D0 +:1021800001D04FF00108B8F1010F3AD194F86C0278 +:10219000002894F86D02019929D1884223D008467D +:1021A00094F89F12884205D0C4F89B62019884F885 +:1021B0009F0204E0D4F89B023018C4F89B02D4F8C4 +:1021C0009B02D4F82710884222D30321012000F07B +:1021D00045F90020C4F89B02012084F86C020198A4 +:1021E00084F86D0214E00020C4F89B0210E08842DD +:1021F0000ED0002084F89F0284F86C02C4F89B0281 +:1022000006E0002084F86D0284F89F02C4F89B0267 +:1022100004F10B0021460B22F1F772FC002084F838 +:10222000690201200BB0BDE8F08F000041542D433E +:10223000757253543A2564202564000041542D439F +:102240007572543A2564000041542D434845434B70 +:102250002025640041542052492D3220256400007D +:1022600041542D4558202564202564002DE9FE4366 +:1022700005460E4691464FF0000801A841460A4621 +:1022800006C0DFF8AC4A04F5187794F8600200281D +:1022900007D0084684F8600278810FF62430EFF703 +:1022A00090FF7889002827D104F22B0094F82B1096 +:1022B0004FF461624378C3EB031C4FEA8C0312FBBB +:1022C0000131807808184FF47A71E28D01FB00200B +:1022D00004F22E0101228A70CA701A220A710422A5 +:1022E0004A71020E8A71020CCA71020A0A7248729D +:1022F0007879887209207881B9F1000F03D0B9F19B +:10230000020F2ED051D228788DF804000DF1040967 +:10231000687889F80100300C89F80200300A8DF8DD +:10232000070089F80460052201A978890019303076 +:10233000F1F721FC7889411D79812878B870687897 +:10234000F8707879401C78714FF00108009699F880 +:1023500001309DF8042089B20FF67820EFF731FFA5 +:1023600023E07889001900F22D0190F82D204B7898 +:102370001B0203EB0242897851187218110C80F885 +:102380002D1078890019110A80F82E10788900190B +:1023900080F82F2079890819009290F82C3090F855 +:1023A0002B200FF64820EFF70CFFD4F80200C4F8FA +:1023B0008F020020C4F897024046BDE8FE83DFF894 +:1023C000700990F86012002904D0002180F8601292 +:1023D000012070470020704710B51F4CF6F770FAC7 +:1023E000E060EFF76CFEA060E068DFF84819C0F825 +:1023F000201400F22040DFF840194160DFF83C195A +:1024000081600FF21901C1600FF28D01016101209D +:1024100010BD0000742A0120149B002000200E49EA +:10242000C96891F81114002915D0014600E0491C33 +:10243000C9B2052907D2DFF8F8288A1892F9542280 +:10244000012AF4DB0120002801D100207047DFF8C9 +:10245000E00890F96702704734610120DFF8D02866 +:1024600002F51573D874002812D0042905D28818F3 +:1024700090F9540201280DDB03E092F9540201287F +:1024800008DB187C012202FA01F108431874704736 +:1024900000201874704700007CB5002340F24912F8 +:1024A0000C7812FB0404012525700C7812FB04043F +:1024B0001A25A570DFF8784894F864520B26354247 +:1024C00014D00B7812FB030301255D7094F864327D +:1024D000DD0603D503F0EF0384F864320B7812FBBA +:1024E000030394F86452DD70012313E0ED0611D567 +:1024F0000B7812FB030303255D700B7812FB0303BB +:1025000001259D720B7812FB0303DD70002384F814 +:1025100068322B46002B12D00B7812FB0303D4F841 +:1025200002505D600B7812FB030325781D720B7857 +:1025300012FB0300627842720878401C0870002188 +:102540000846FFF78BFF94F86802012804D10421A4 +:102550000120BDE87C4081E773BD10B400228842B1 +:1025600001D3421A08E00B1ADFF8D847A34203D37D +:10257000DFF8D4271018421A104610BC70472DE916 +:10258000F0412DED028B82B007460E463046F6F73D +:10259000DBFB41EC180B53EC182BDFF8B007DFF82E +:1025A000B017F6F7DFFB02F081FB8DF800004FF467 +:1025B000616853EC182BDFF89C07DFF89C17F6F7DF +:1025C000D1FB04460D469DF8000018FB00F0F6F71D +:1025D000B1FB02460B462046294603F01BFC41ECAA +:1025E000180B53EC182B4FF01130DFF87017F6F77B +:1025F000B9FB02F05BFB04468DF801403C25E4B2D8 +:1026000015FB04F0F6F796FB02460B4651EC180B4F +:1026100003F000FC02F04AFB8DF802009DF8001068 +:1026200011FB08F114FB051151FA80F04FF47A7197 +:1026300001FB1060ADF80300384600A90522F1F750 +:102640005FFA02B0BDEC028BBDE8F081DFF8E01666 +:1026500081F86802887D0522104215D091F8680241 +:10266000012802D104210120F8E6022809D1DFF86F +:10267000D0060122027191F868120FF28870EFF70C +:10268000A0BD002081F8680270470000804F120052 +:10269000DFF89C160B22F1F733BA3CB40B46114617 +:1026A000DFF88C2602F26224E478002C04D0D57A7C +:1026B00092F86222AA4203D0002202B030BCD5E5D3 +:1026C000002C06D0AA4204D10222184602B030BC27 +:1026D000CCE533BC7047000030B52DED0E8B81B0DA +:1026E000B0EE408AF0EE608AB0EE419AF0EE619A68 +:1026F00051EC180B53EC182B03F08CFB41EC1D0B29 +:102700009FED4FAB53EC1D2B51EC1A0BF6F72AFB48 +:1027100041EC1E0B9FED4CBB9FED4DCB53EC182BAA +:102720000020DFF83C16F6F71DFB04460D4653EC7F +:102730001E2BDFF8EC05DFF82C16F6F713FB22460C +:102740002B4607F039FB04460D4653EC1E2B51EC8B +:102750001C0BF6F707FB02460B4651EC1D0B03F072 +:1027600059FB53EC1B2BF6F7FDFADFF8FC25DFF8DD +:10277000FC35F6F7F7FA22462B4607F01DFB41EC35 +:10278000180B51EC190B53EC192B03F043FB41ECE4 +:102790001D0B53EC1D2B51EC1A0BF6F7E3FA41EC31 +:1027A0001A0B53EC192B4FF03330DFF8C415F6F742 +:1027B000D9FA04460D4653EC1A2BDFF8B805DFF8BA +:1027C000B815F6F7CFFA22462B4607F0F5FA04467D +:1027D0000D4653EC1A2B51EC1C0BF6F7C3FA0246CC +:1027E0000B4651EC1D0B03F015FB53EC1B2BF6F7BE +:1027F000B9FADFF82C25DFF88435F6F7B3FA22466C +:102800002B4607F0D9FA41EC190B53EC182B51EC7D +:10281000180BF6F7A7FA04460D4653EC192B51ECAA +:10282000190BF6F79FFA22462B4607F0C5FA41EC42 +:10283000100B01B0BDEC0E8BBDE8304007F030BB93 +:102840000000000000004E40000000000020AC40EE +:10285000111111111111913F2DE9F0432DED0A8B4A +:10286000A9B09FEDD7AA00249FEDD59A00A8EFF755 +:1028700043FF0AA8EFF796FF07A8FFF709FF0DF13E +:1028800040084FF47A703C214FF4616298F80130AF +:1028900098F8025011FB05F512FB035398F803500A +:1028A0005B1900FB03F59DF9003013FB02F29DF963 +:1028B000013013FB01219DF9022041FA82F1BDF99B +:1028C000032000FB012613A806F03BFCDFF8707420 +:1028D0009DED220AB5EE400AF1EE10FA04DD032068 +:1028E000F8702046B87001E02046F8700DF1450000 +:1028F000016809EE901A98F80B00DFF8349499F803 +:10290000C312012940F02C81012840F02981B869C7 +:10291000A84200F008810CAA1068516841EC100B25 +:1029200009F52A721068516841EC110B0AAA106867 +:10293000516841EC1B0B09F528721068516841EC95 +:102940001C0B51EC100B53EC112B03F063FA41EC10 +:10295000110BB0EE418AF0EE618A51EC1B0B53EC87 +:102960001C2B03F057FA41EC100BB0EE481AF0EEB6 +:10297000681AFFF7B1FEB0EE408AF0EE608AB969DE +:102980002846FFF7EAFD804651EC180B2246134615 +:1029900003F09EF918D24046F6F7D6F9DFF8B423D3 +:1029A000DFF8B433F6F7DEF9DFF8D423DFF8D433F9 +:1029B000F6F7D8F902460B4651EC180B03F0EAFA89 +:1029C000F6F7CAFA0AEE100A9DED210AD7ED080AB9 +:1029D00070EE60AAF5EE40AAF1EE10FA01D5DFED37 +:1029E00078AA42F2107080457CD353EC182B204615 +:1029F000DFF89413F6F7B6F941EC180B1AEE900ACB +:102A0000F6F782FA41EC1B0B53EC182BC448C5496E +:102A1000F6F7A8F902460B4651EC1B0B03F040F900 +:102A200025D29FEDBB0AB4EE40AAF1EE10FA09DB05 +:102A30009FEDB80AF4EE409AF1EE10FA02DB0A209C +:102A4000387014E0B3EE080AB4EE40AAF1EE10FAC2 +:102A500003DB3878401D387009E0B3EE020AB4EEAB +:102A600040AAF1EE10FA02DB3878C01C387097F9F2 +:102A7000000006908DED04BB8DED028B19EE900ADF +:102A8000F6F742FACDE900011AEE100AF6F73CFA21 +:102A900002460B460FF28030EFF793FB9DF84000A3 +:102AA000312880F0DE80B3EE080AB4EE409AF1EEF1 +:102AB00010FA40F1D6809FED980AF4EE409AF1EEBC +:102AC00010FA5EDB212880F0DE809FED920AF4EEA2 +:102AD000409AF1EE10FA52DB97F9000005284CDB22 +:102AE0000A24D0E000EE108AB8EE400A09F2BD20B8 +:102AF000DFED8A0A016801EE101AF4EE419AF1EE58 +:102B000010FA016801EE101A06DB39EEC11A81EEE7 +:102B1000000A20EE209AC1E731EE691A81EE000A20 +:102B200020EE209ABAE7F9693046FFF716FDB0F5B6 +:102B30007A7F20D397F9000000281CD09DED220A4F +:102B4000B5EE400AF1EE10FA15D0FE61FF208DF8C7 +:102B50004000DFED1B9A0DF14500214601609DE725 +:102B6000012808D109F528700AA92422F0F7D8FF16 +:102B7000BD61FE6192E77878C4E0032483E002241B +:102B800081E0F3EE020AF4EE609AF1EE10FA08DB4F +:102B9000F4EE409AF1EE10FA03D5212873D2022404 +:102BA00071E09FED610AF4EE409AF1EE10FA09DB54 +:102BB0009DF81C00012801D0042864D1022462E0A1 +:102BC00000000000DFED590AF4EE609AF1EE10FA11 +:102BD00029DBF4EE409AF1EE10FA24D59DF81C1092 +:102BE000012903D19DF81D10022903D09DF81C1066 +:102BF000042903D1212846D2012444E09DED220A74 +:102C0000B5EE400AF1EE10FA3DDDF5EE409AF1EE38 +:102C100010FA38DD7878002802D16FF0010432E034 +:102C20006FF002042FE09DED220AB5EE400AF1EEAE +:102C300010FA0BDD7878002802D16FF0020422E050 +:102C4000F87803281FD36FF002041CE0B878401C0A +:102C5000B870C0B23C2816D36FF001040020B870E1 +:102C600011E09DED220AB5EE400AF1EE10FA0ADD00 +:102C70007878002802D16FF0020404E0F878032885 +:102C800001D36FF0020438782018387040B2002861 +:102C900001D50020387097F900000A2804DB0A20CB +:102CA00038700120787003E0002801D1002078708E +:102CB00097F9000097F90510814216D0049019EE9B +:102CC000100AF6F721F9CDE902012298F6F71CF96E +:102CD000CDE9000119EE900AF6F716F902460B4607 +:102CE00079780FF24C10EFF76CFA09F528700AA901 +:102CF0002422F0F715FFBD61FE6121983862387813 +:102D00007871787829B0BDEC0A8BBDE8F08300BFFC +:102D100000001042000040420100104200007A44CE +:102D20009A9999999999C93F010040416766E6408F +:102D3000742A01203B180108CD1A0108ED1C010876 +:102D400034610120A1780F05005C2605B9791F9632 +:102D50002FA4923EFCA9F1D24D62503F1111913F38 +:102D600000C05B409999FD3F5839B4C876BE9F3F7B +:102D700033335640AE47E17A14AEF73F9999993F05 +:102D8000DFBC9A785634323F00408F4041542D4387 +:102D900046205742432025642025640041542D5489 +:102DA000433A25640000000041542D4E6F256420F5 +:102DB000543A256420413A256420443A25640000B1 +:102DC00041542D436C65617242617463684461745F +:102DD0006100000041542D424154322053503A25A5 +:102DE00064202564202564202564000041542D4280 +:102DF0004154342053503A25642025642025642012 +:102E00002564000041542052492D3120536574251A +:102E1000642025640000000041542D5031202566B7 +:102E200020256620256620256620256400000000F8 +:102E300041542D50322825642920473A25662050D8 +:102E40003A256620443A25662056656869636C65B4 +:102E50002D25640080B5A948C16891F8391400296E +:102E600001D1002002BD0121017107F0DAF900282B +:102E70000AD007F0D8FE01460FF2D020EFF7A1F9F3 +:102E800007F0D3F9012002BD002002BD0FB400B548 +:102E900089B007F085F8994800218170C1700171EF +:102EA0004170BDF82A0000F011F9BDF82C0000F0C7 +:102EB0000BF901208DF82C00AA208DF82A003C2067 +:102EC0008DF82B0000208DF80000032001900DF1FB +:102ED00009000AA91822F0F713FE0A208DF808004D +:102EE00000A8F5F7E9FD002805D10FF27420EFF7EF +:102EF00068F9022000E0012009B05DF814FB00B57C +:102F000089B007F0E5F801208DF80000032001905A +:102F10000A208DF8080000A8F5F7CEFD002801D1A1 +:102F2000032000E0012009B000BD70B504460D4645 +:102F300040F24916287816FB00400121017007F085 +:102F400072FE01281AD1287816FB00400521417035 +:102F5000287816FB00401B2181700FF21820EFF734 +:102F600030F9287816FB00400221C170287816FB42 +:102F700000401E21417107F069F918E007F05AFE80 +:102F8000012814D1287816FB0040012141702878CF +:102F900016FB00401B2181700FF2E810EFF711F9CA +:102FA000287816FB00400121C17007F05FF92878EE +:102FB000401C2870BDE8704007F037B970B5A0B06C +:102FC0004F4E304606F0BDF814A8FFF761FB30689D +:102FD0004A4C2169411A89B2012904DA2278B6F8EB +:102FE0004A309A4203D02061B6F84A002070E06867 +:102FF000D0F83C543160A068807AC046C0469DF845 +:1030000050001390314683B068465822F0F788FD8F +:103010000EBCADB2284608F073FA6070A0780128A3 +:103020001CD117A8EFF7BEFB1BA80268436843EC4E +:10303000122B19A80268436843EC112B17A80268E9 +:10304000436843EC102B9DF877209DF876109DF88F +:10305000750000F02DF80020A07006E0E07801284F +:1030600003D100F02FF80020E070012020B070BDE7 +:1030700010B5224CEFF723F8A060F5F721FCE060D3 +:10308000EFF71DF8A06000202061207007F001F824 +:10309000E0681C49C0F8481400F248401A494160F1 +:1030A0001A4981601A49C1601A490161012010BDA5 +:1030B00080B5D2B2C9B2C0B207F0F5F8BDE80140A0 +:1030C00007F0E4B807F0EAB807F024B807F011B841 +:1030D00007F032B807F04CB880B507F0A4FD00281F +:1030E00005D006480079002801D1012002BD00204A +:1030F00002BD024801218170704700004463012035 +:10310000785B01208D2E0108FF2E0108BD2F0108DC +:10311000552E01082B2F010807F0CABD07F0CCBDC2 +:10312000C9B207F0D8BD07F091B806F0E1BF80B58D +:1031300007F0C6FEC0B202BD80B507F097FEC0B270 +:1031400002BD08F097B908F096B900004C5420432E +:103150006D6452656164795F5353202564000000FB +:103160004C54205065646F4F70656E4661696C20E9 +:10317000535300004C542052455155455354205050 +:103180004F5300004C542052455155455354204153 +:10319000434B00000FB480B5082200210846F5F724 +:1031A00091FB022801D1022004E06948002101704E +:1031B0004180012002BC5DF814FB654800210170CC +:1031C0000120704738B501240020ADF80000604DA3 +:1031D00095F90000002809D1204628700020A88019 +:1031E000A86808F05BFE08F0D1FF29E0012829D18A +:1031F0006888401C68800DF10101A86809F072F828 +:10320000002815D0082200212046F5F75BFB032893 +:1032100000D1032408220B210020F5F753FB0228DC +:1032200001D1022032BD0220287009F029FA07E0FE +:10323000B5F90200962803DB0520287000F057F846 +:10324000204632BD0328FBD1A888401CA88000B2CC +:10325000FB28F1DA00A9A86808F05CFE0028EFD08E +:1032600004202870204600F033F800F040F8E7E72B +:1032700010B5374CF5F724FBE060EFF7E5FAA060F6 +:10328000E0683449C0F8501100F5A8703249416037 +:10329000324981600FF20D01C1600FF2C901016175 +:1032A000012010BD01460020294AD26892F8412130 +:1032B000002A02D0012900D106E0704780B5002025 +:1032C00000F006F8012002BD254890F90000704783 +:1032D00023490870704780B5082200210846F5F799 +:1032E000F1FA022801D1022002BD012002BD80B501 +:1032F000174800218180418008220120F5F7E2FA79 +:10330000032801D1032002BD012002BD38B50124EC +:103310000F4D95F90000022815D108220B212046F7 +:10332000F5F7D0FA032800D10324FFF7D4FF0228D1 +:1033300001D1022032BD032800D1032403202870CC +:1033400002A0EEF73EFF204632BD00005341490087 +:103350002064012095310108BB310108C531010805 +:10336000AB66012018B440F249120B7812FB03033C +:1033700001241C700B7812FB03035C700B7812FBAA +:10338000030308249C700B7812FB03000122C27017 +:103390000878401C087011BC90E700000FB480B59D +:1033A0007E4801210170052200210846F5F78AFABE +:1033B000022801D102200DE0052207210020F5F7A7 +:1033C00081FA022801D1022004E000F0DFF809F0C0 +:1033D0007FF9012002BC5DF814FB38B501240522F9 +:1033E00007212046F5F76EFA032800D103246B4D20 +:1033F00095F90000032801D0012807D105220021FA +:103400000120F5F75FFA032800D10324002028707B +:1034100000F0BCF809F0FFF9204632BD80B500206D +:1034200000F03BF8022801D1022002BD032801D19F +:10343000032002BD012002BD10B5584CF5F740FA3B +:103440002061EFF701FAA060EEF739FEE060206935 +:103450005349C0F8D810D830524941605249816070 +:103460000FF20D01C1600FF249110161012010BD81 +:1034700001460020494A126992F8C920002A02D068 +:10348000012900D102E07047002003E0474890F98D +:103490000000704745490870704770B582B0064615 +:1034A00001253E4C94F90000012823D1A088401C3E +:1034B000A08000B24C280BDB0020A08002202070EE +:1034C000052200212846F5F7FDF9032800D1032540 +:1034D000012E59D1E068007D012807D1B4F904001C +:1034E0001F2851DB6078401C60704DE0A078401CC4 +:1034F000A07049E002281CD1012E0AD1E068007DAD +:10350000012803D16078401C607002E0A078401C64 +:10351000A07094F90100012836DB0522002108463D +:10352000F5F7D0F9022801D1022076BD03202070E2 +:103530002AE0032828D100208DF8000000A9A06807 +:1035400009F0EAF8C0B202280DD105220021284670 +:10355000F5F7B8F9032800D103250120FFF79AFFFA +:103560000420207010E003280ED1052200212846F7 +:10357000F5F7A8F9032800D1032500206070A0709A +:103580000220207009F0A4F8284676BD03480021E7 +:103590008180417081707047000000001C63012031 +:1035A0009D330108DB3301081D3401089A660120B0 +:1035B00010B50C4640F24911227811FB020201239A +:1035C0001370227811FB02025370227811FB020261 +:1035D00005239370227811FB02000121C170FFF7CF +:1035E00053FF2078401C207010BD00000FB480B540 +:1035F000022201210020F5F765F9022801D10220FD +:103600000EE0022207210020F5F75CF9022801D123 +:10361000022005E009F00AF94B4800210170012061 +:1036200002BC5DF814FB80B5022201210846F5F7C3 +:1036300049F9032801D1032002BD022207210120FC +:10364000F5F740F9032801D1032002BD3E480021CF +:103650000170012002BD00B58BB000A8F5F798F904 +:1036600003A890EC030A09F017F937490870012004 +:103670000BB000BD10B5344CF5F722F9A060EEF7A1 +:103680001EFD6060A06831490166314941663149DB +:1036900081660FF22101C1660FF269010167012005 +:1036A00010BD80B528484068007D09F0EEF8012083 +:1036B00002BD0000002024498A6892F85120002AA7 +:1036C00004D091F90010002900D0012070471E4855 +:1036D000002101700120704710B50024012804D09A +:1036E00007D303280BD002D303E0012407E0022410 +:1036F00005E0032401460FF26000EEF762FD20466C +:1037000010BD000038B50C4640F24911227811FB7B +:10371000020201231370227811FB020253702278F7 +:1037200011FB020202239370227811FB0205064866 +:1037300090F90000FFF7D0FFE8702078401C20705F +:10374000BDE83140C3E70000B8640120ED35010851 +:1037500027360108573601084C4D4350532031207D +:10376000256400007047000080B558490978491C5D +:10377000564A1170017A491E0172C9B2002901D15D +:1037800009F04CFFF3F747F801BD38B50400504885 +:1037900005680BE0287A002807D06868A04204D1A9 +:1037A000012028722800FFF7DFFFED68002DF1D11E +:1037B00031BD38B5040047480078002802D0A12068 +:1037C000F2F766F9F2F7E6FF4148056805E0A54221 +:1037D00002D1AF20F2F75CF9ED68002DF7D13E4839 +:1037E0003E490160142200212000EFF791FD69207D +:1037F0002074F2F7BAF936480068E0603448046093 +:1038000032484078F021084202D09920F2F740F97E +:103810002E484078002801D1F2F7A1F931BD38B522 +:1038200004002C480078002802D0A120F2F730F9DB +:10383000F2F7B0FF207C692802D08520F2F728F942 +:1038400022480078401C21490870207A002804D1C1 +:103850001E4880686060012510E060681B49896827 +:10386000884209D01021200002F0A4FD207A00280F +:10387000F8D1164880686060207A451C2572F2F7FE +:10388000CAFF280032BD10B5040012480078002895 +:1038900002D0A120F2F7FCF8F2F77CFF207C692827 +:1038A00002D08520F2F7F4F8207A002802D1962081 +:1038B000F2F7EEF8606805498968884202D09C20DA +:1038C000F2F7E6F82000FFF74FFF10BDF89900204F +:1038D00068660120B6660120806601208B370108EA +:1038E000DFF82C0C016899B94FF4803181604FF4F6 +:1038F000805141604FF0FF31C1600161042141619D +:10390000DFF8101C0422C1F8B821DFF80C1C01609C +:103910000120704701F1080313F0070305D001F1FE +:103920000803C3F1080303F007035918D21A816191 +:10393000C26042F001034B60511828224A60DFF850 +:10394000D01B0969C16170472DE9F84F054601F1A7 +:10395000080010F0070005D001F10800C0F10800D0 +:1039600000F0070000EB010A02F1080010F0070068 +:1039700005D002F10800C0F1080000F0070084182B +:1039800003EB0A07A4EB0A00A0EB030843F00300D3 +:10399000CAF80400A74228BF09F05EFE2079C007DC +:1039A00058BF09F059FEB8F1100F38BF09F054FEA6 +:1039B000A869844207D1E8684044E860AF6140F0FC +:1039C0000100786048E16869844208D1A8684044F1 +:1039D000A8606F6140F001017960C0513CE160680E +:1039E00000F00301012940F09F80C008C000009052 +:1039F0004FEAD00BBBF1200F2FD2D4F80890E66825 +:103A0000B44208BF09F028FE4C4508BF09F024FE67 +:103A10006068C008C000B0EBCB0F18BF09F01CFEF7 +:103A2000B14506D12868012101FA0BF188432860CD +:103A300077E005EBCB0000F12801894502D0296928 +:103A400089456CD32830864202D02869864266D3E5 +:103A5000C9F80C60C6F8089063E0D4F81890E668DE +:103A6000A64206D0A068296988421DD3C660B0600E +:103A70001CE004F11400066836B904F11000066871 +:103A8000A6B101E00846066806F114010A68002A9A +:103A900002BF06F110010A68002AF3D129698842A1 +:103AA00002D30021016001E009F0D6FDB9F1000F59 +:103AB00037D0E06905EB800000F5987001688C4212 +:103AC00009D10660300014D168680121E269914093 +:103AD0008843686025E02869814508D3D9F810003B +:103AE000A04214BFC9F81460C9F8106001E009F0E1 +:103AF000B3FDB6B12869864211D3C6F81890216982 +:103B000029B1814226BF31618E6109F0A5FD60694E +:103B100038B12969884202D37061866101E009F0F9 +:103B20009BFD009804198044606840084000606074 +:103B300048F00100786048F807804FEAD806202E48 +:103B40001FD205EBC60000F12804A146B8F1100F02 +:103B500038BF09F081FD0120B0402968014202D13F +:103B60000843286006E0A068296988422CBF814686 +:103B700009F072FDA760C9F80C70C7F80890FC60E6 +:103B80006AE05FEA182008BF002123D0B0F5803F2B +:103B900028BF1F211ED2A0F58071090C01F0080179 +:103BA0008840A0F58052120C02F004029040A0F56B +:103BB00080431B0C03F00203C1F10E01891AC91ADC +:103BC000984001EBD030C11D28FA01F101F001014C +:103BD00001EB400105EB810000F59872F9610020CE +:103BE00078613861012088406B68034204D1184332 +:103BF00068601760BA611DE010681F290EBF0021C0 +:103C00004908C1F1190108FA01F100E010464268C3 +:103C1000D208D200424510D0CA0F00EB820202F156 +:103C2000100349001A68002AF0D129698B4211D388 +:103C30001F60B861FF60BF600EE081682A69904232 +:103C400028BF914206D3CF608760B960F86000203A +:103C5000B86101E009F000FD0AF10800BDE8F28F4B +:103C60002DE9FE4F0446A56904F5DE7001688D421A +:103C700003D3426851188D4202D380680028F5D1E1 +:103C8000416800680E18A6F12F0000F1080111F03C +:103C9000070105D000F10801C1F1080101F0070199 +:103CA00001EB000A05F11000824538BFAA460AF16F +:103CB000080B0AF1180900270198A0F128020099C1 +:103CC0002046FFF727FE1BF0070018BF09F0C4FCD1 +:103CD0001B20CAF8040004F5DE70B0E80E10ABE853 +:103CE0000E10ABF110010098C4F8BC010198C4F8A3 +:103CF000C0010298C4F8C801C4F8C41100E08146AC +:103D000009F104000721C9F804107F1C011DB1420C +:103D1000F5D3022FB8BF09F09FFCAA4500F09C80A4 +:103D2000AAEB050041194A68520852004A6040F067 +:103D3000010169604051C708202F1FD204EBC70161 +:103D400001F12806B046102838BF09F085FC012192 +:103D500001FA07F02168014202D10843206006E021 +:103D6000B068216988422CBF804609F075FCB560B7 +:103D7000C8F80C50C5F80880EE606DE0010A08BF75 +:103D8000002223D0B1F5803F28BF1F221ED2A1F50B +:103D90008072120C02F008029140A1F580531B0CB6 +:103DA00003F004039940A1F58046360C06F00206A4 +:103DB000C2F10E02D21A921BB14002EBD131CA1DE0 +:103DC00020FA02F202F0010202EB410204EB82014E +:103DD00001F59873EA61002169612961012191402F +:103DE00066680E4205D141EA060060601D60AB6165 +:103DF0001DE019681F2A0EBF00225208C2F11902E5 +:103E000000FA02F200E019464B68DB08DB0083424F +:103E100010D0D30F01EB830303F110065200336877 +:103E2000002BF0D12069864211D33560A961ED6085 +:103E3000AD6011E088682269914228BF904206D3A4 +:103E4000C5608D60A860E9600020A86104E003B04F +:103E5000BDE8F04F09F000BC03B0BDE8F08FF8B545 +:103E600004460D46DFF8A866306808B9FFF738FD4C +:103E700009F0F6FB01001CBF0A6811F1010F00F008 +:103E80008A80D4F8B0011018C4F8B001D4F8B43165 +:103E9000834238BF0346C4F8B431A06958BB2069D7 +:103EA00008B1814200D22161C4F8BC11C4F8C0211C +:103EB0000020C4F8C801306860624FF0FF30206213 +:103EC0002046202300F12806F660B66008305B1E0D +:103ED000F8D1DFF84006844208BF283A27D054F8CA +:103EE000040CC00814EBC00008385118091AA1F1DD +:103EF000280201461BE004F5DE70034600E09B68E3 +:103F0000CBB15E681F68F619B142F8D11E7B360747 +:103F100011D4A669BE420ED3D3F804C06744BE4292 +:103F200009D202EB0C005860E0681218A169204623 +:103F3000FFF7F0FC1EE02369994238BF2161034678 +:103F4000501800E09B688BB11E688642FAD1187B3E +:103F500000070BD4304619605E6892195A602B46F0 +:103F60000246204601B0BDE8F040EDE400232046C3 +:103F7000FFF776FEE06885420DD2401BE060A16944 +:103F80006A18A26140F00100506045F003004860EB +:103F900001F10800F2BD0020F2BD2DE9F84F054601 +:103FA0008B460024CBF100085FEA1B2023D0B0F53C +:103FB000803F28BF1F201ED2A0F58071090C01F0A0 +:103FC00008018840A0F58052120C02F004029040D3 +:103FD000A0F580431B0C03F00203C1F10E01891A06 +:103FE000C91A984001EBD030C11D2BFA01F101F044 +:103FF000010101EB400005EB8001D1F8301129B33C +:104000001F280EBF00224208C2F119020BFA02F269 +:10401000002300E052004E68F608F600A6EB0B06FF +:10402000464503D20C465FEA06080BD04E69D70F0F +:1040300001EB87010969002E1CBF8E42334600291F +:10404000E8D1194600293BD1002C3BD1012101FACE +:1040500000F04000414208436968084000F0578181 +:1040600041420840411E080B00F0100021FA00F206 +:10407000510901F00801CA40930803F00403DA4033 +:10408000560806F00206F240C2F340070818181856 +:104090003018384422FA07F1081805EB8000D0F8F0 +:1040A00030110DE001464868C008C000A0EB0B00CD +:1040B00040453CBF80460C4608690028F2D149695A +:1040C0000029F0D1002C00F02281A868A0EB0B00A1 +:1040D000804580F01C8128698442C0F016810BEB7A +:1040E00004060BEB08096068C008C000484518BF0B +:1040F00009F0B2FAB44280F00881D4F818A0E76859 +:10410000A74206D0A068296988421DD3C760B8605D +:104110001CE004F11400076837B904F110000768C7 +:10412000A7B101E00846076807F114010A68002AF0 +:1041300002BF07F110010A68002AF3D129698842F9 +:1041400002D30021016001E009F086FABAF1000F04 +:1041500038D0E06905EB800000F5987001688C426A +:1041600009D10760380014D168680121E2699140E3 +:104170008843686026E02869824508D3DAF8100091 +:10418000A04214BFCAF81470CAF8107001E009F018 +:1041900063FABFB12869874212D3C7F818A0206913 +:1041A00030B12969884226BF3861876109F054FA25 +:1041B000606938B12969884202D37861876101E07A +:1041C00009F04AFAB8F1100F09D249F00300606013 +:1041D00009EB0400416841F00101416091E04BF0BE +:1041E0000300606048F00100706048F806804FEA04 +:1041F000D80020281BD205EBC00101F12807B846E2 +:10420000012101FA00F02968014202D10843286027 +:1042100006E0B868296988422CBF804609F01CFA7C +:10422000BE60C8F80C60C6F80880F76069E05FEA15 +:10423000182008BF002223D0B0F5803F28BF1F22DE +:104240001ED2A0F58071090C01F008018840A0F58C +:104250008052120C02F004029040A0F580431B0C27 +:1042600003F00203C1F10E01891AC91A984001EB4B +:10427000D030C11D28FA01F101F0010101EB40022B +:1042800005EB820000F59870F261002171613161E7 +:10429000012191406B680B4203D1194369600660AC +:1042A0001CE000681F2A0EBF00215108C1F119014E +:1042B00008FA01F100E010464268D208D2004245F7 +:1042C00010D0CA0F00EB820202F1100349001A68F5 +:1042D000002AF0D129698B4211D31E60B061F660CB +:1042E000B6600EE081682A69904228BF914206D3E9 +:1042F000CE608660B160F0600020B06101E009F03E +:10430000ABF904F10800BDE8F28F09F0A5F9FBE074 +:104310002DE9F84F04468846606841420840411E36 +:10432000080B00F01000C1404A0902F00802D14019 +:104330008B0803F00403D9404D0805F00205E9405D +:10434000C1F340061018181828443018F140081816 +:1043500004EB8000D0F8300106464168C908C90066 +:10436000A1EB080A09E008464168C908C900A1EBA9 +:10437000080151453CBF8A46064601690029F2D131 +:1043800040690028F0D120698642C0F0BB8008EB6C +:10439000060B08EB0A097068C008C000484518BF42 +:1043A00009F05AF95E4580F0AD80B569F768B7420B +:1043B00006D0B068216988421DD3C760B8601CE090 +:1043C00006F11400076837B906F110000768A7B1B5 +:1043D00001E00846076807F114010A68002A02BFD5 +:1043E00007F110010A68002AF3D12169884202D33B +:1043F0000021016001E009F02FF9002D34D0F069AF +:1044000004EB800000F5987001688E4209D10760C6 +:10441000380011D160680121F269914088436060E1 +:1044200022E02069854205D32869B04214BF6F613C +:104430002F6101E009F010F9B7B12069874211D36B +:10444000BD61306930B12169884226BF386187611A +:1044500009F002F9706938B12169884202D37861A4 +:10446000876101E009F0F8F8BAF1100F09D249F0BC +:104470000300706009EB0600416841F001014160F2 +:104480003CE048F0030070604AF00100CBF8040003 +:104490004AF80BA0D4F80880B8F1000F2AD0D4F85D +:1044A00014904FEAD805202D28BF09F0D5F80095C3 +:1044B00004EBC50000F128052F46B8F1100F38BFF6 +:1044C00009F0CAF80120009988402168014202D110 +:1044D0000843206006E0A868216988422CBF07468F +:1044E00009F0BAF8C5F80890C7F80C90C9F8087038 +:1044F000C9F80C50C4F808A0C4F814B006F10800BC +:10450000BDE8F28F09F0A8F80020BDE8F28F0000A6 +:10451000BC620120A83701206859883C2DE9F04F82 +:1045200083B00546C046C046DFF87447F52D80F0DD +:10453000F4800B2D31BF102705F10B00C008C70018 +:10454000FE082068F04010F0030F3DD0C04300F09B +:104550000100861904EBC60000F12808D8F80850BD +:10456000F7006868C008C000B84218BF09F074F8C6 +:10457000D5F80890454508BF09F06EF84D4508BFCD +:1045800009F06AF86868C008C000B84218BF09F0AE +:1045900063F8C84505D120680121B14088432060F7 +:1045A00008E02069814526BFC8F80890C9F80C804A +:1045B00009F052F847F0030068607819416841F04B +:1045C000010141600835F0E0A168B94280F0B78090 +:1045D000002800F09980012505FA06F14900B04055 +:1045E0004A421143084041420840411E080B00F076 +:1045F0001000C1404A0902F00802D1408B0803F0C4 +:104600000403D9404E0806F00206F140C1F3400809 +:10461000101818183018404421FA08F101EB00086E +:1046200004EBC80000F12809D9F808604FEAC80A6D +:104630007068C008C000504518BF09F00DF8D6F8E2 +:1046400008B04E4508BF09F007F85E4508BF09F0FD +:1046500003F87068C008C000504518BF08F0FCFFA0 +:10466000D94505D1206805FA08F18843206008E0A3 +:104670002069834526BFC9F808B0CBF80C9008F034 +:10468000EBFFAAEB070847F003007060B819009031 +:1046900048F001014160009848F80080A76867B3BE +:1046A000D4F814904FEAD70ABAF1200F28BF08F0C7 +:1046B000D3FFCDF804A004EBCA0000F1280AD346CA +:1046C000102F38BF08F0C8FF019805FA00F02168E4 +:1046D000014202D10843206007E0DAF808002169AE +:1046E00088422CBF834608F0B7FFCAF80890CBF881 +:1046F0000C90C9F808B0C9F80CA0C4F8088000985C +:10470000606106F1080550E06068C0B33946204694 +:10471000FFF7FEFD050012D047E015F1400F28BF5E +:104720004FF0FF370BD205F10B00C008C7006068DF +:1047300028B139462046FFF730FC050035D1A16885 +:10474000B9421CD3CA1B6069102A0AD339186161A7 +:10475000A26042F001034B60525047F003014160F8 +:104760000AE00022A260626141F00302426009187F +:104770004A6842F001024A6000F1080515E0E0686D +:1047800087420DD2C01BE060A1697A18A26140F097 +:104790000100506047F00300486001F1080504E0A3 +:1047A00039462046FFF75BFB0546C046C046284613 +:1047B000FFF752BB00B970472DE9F047A0F108049C +:1047C000C046C046DFF8D85428698442C0F06082F1 +:1047D000616801F00302012A00F05A82CA084FEA18 +:1047E000C20808EB0409CA072DD4226811F0030F90 +:1047F00000F05082904451420C198442C0F048822B +:1048000069698C4200F0D4804FEAD20ABAF1200FD5 +:104810006FD2A668E768BC4208BF08F01DFFB4422B +:1048200008BF08F019FF6068C008C000B0EBCA0FED +:1048300018BF08F011FFBE4246D12868012101FAD5 +:104840000AF1884328604C4580F02282D9F80400A0 +:10485000C10740F11D82810700F17381A969894573 +:1048600040F0BB80E8684044E860AC6140F0010182 +:10487000616069698C4202D100216961A960E969BE +:10488000814280F00782DFF81404006808B9FFF75E +:1048900027F8A869002800F0FD81E96829290BD3D1 +:1048A00005F5DE721368984203D35468E318984202 +:1048B00002D39268002AF5D1E869884280F0EA8143 +:1048C0004FF0FF30E861E5E105EBCA0000F1280197 +:1048D0008E4202D029698E4208D32830874202D006 +:1048E0002869874202D3F760BE60ACE708F0B4FEE7 +:1048F000A9E7A669E768A74205D0A16881421CD351 +:10490000CF60B9601BE004F114010F6837B904F1FE +:1049100010010F689FB101E011460F6807F1140202 +:104920001368002B02BF07F110021368002BF3D1AC +:10493000814202D30020086001E008F08DFE002EC5 +:104940003FF481AFE06905EB800000F598700168E5 +:104950008C4209D10760380011D168680121E269F1 +:104960009140884368606EE72869864205D33069C4 +:10497000A04214BF7761376101E008F06DFE002F9F +:104980003FF461AF28698742B0D3BE61216929B184 +:10499000814226BF39618F6108F05EFE60690028A0 +:1049A0003FF451AF29698842A0D3786187614AE713 +:1049B00099F8040000F0030003287FF444AFC5F821 +:1049C0000880D9F8040040084000C9F8040048F005 +:1049D0000100606048F804805CE16969894508D19C +:1049E000A8684044A8606C6140F00101616000511A +:1049F00050E1C008C00080444FEAD00ABAF1200F4D +:104A00002FD2D9F80860D9F80C70B94508BF08F062 +:104A100023FEB14508BF08F01FFED9F80400C00806 +:104A2000C000B0EBCA0F18BF08F016FEBE4206D198 +:104A30002868012101FA0AF18843286076E005EB35 +:104A4000CA0000F128018E4202D029698E426BD340 +:104A50002830874202D02869874265D3F760BE605C +:104A600064E0D9F81860D9F80C704F4507D0D9F830 +:104A70000800296988421DD3C760B8601CE009F1AD +:104A80001400076837B909F110000768A7B101E001 +:104A90000846076807F114010A68002A02BF07F1F7 +:104AA00010010A68002AF3D12969884202D3002143 +:104AB000016001E008F0D0FD002E37D0D9F81C00CD +:104AC00005EB800000F59870016889450AD1076000 +:104AD000380012D168680121D9F81C209140884320 +:104AE000686023E02869864205D33069484514BFD1 +:104AF0007761376101E008F0AFFDBFB128698742F7 +:104B000012D3BE61D9F8101029B1814226BF396194 +:104B10008F6108F0A1FDD9F8140038B129698842E5 +:104B200002D37861876101E008F096FD48F001004A +:104B3000606048F80480686984420BD1C5F8088039 +:104B4000A8E040084000C9F8040048F00100606097 +:104B500048F804804FEAD807202F20D205EBC70081 +:104B600000F128094E46B8F1100F38BF08F074FD67 +:104B70000120B8402968014202D10843286007E0BB +:104B8000D9F80800296988422CBF064608F064FD60 +:104B9000C9F80840F460A660C4F80C907AE05FEAB7 +:104BA000182008BF002123D0B0F5803F28BF1F2167 +:104BB0001ED2A0F58071090C01F008018840A0F513 +:104BC0008052120C02F004029040A0F580431B0CAE +:104BD00003F00203C1F10E01891AC91A984001EBD2 +:104BE000D030C11D28FA01F101F0010101EB4001B3 +:104BF00005EB810000F59872E161002060612061A1 +:104C0000012088406B68034204D118436860146037 +:104C1000A2611DE010681F290EBF00214908C1F1E3 +:104C2000190108FA01F100E010464268D208D200EA +:104C3000424510D0CA0F00EB820202F11003490076 +:104C40001A68002AF0D129698B4211D31C60A06137 +:104C5000E460A4600EE081682A69904228BF914216 +:104C600006D3CC608460A160E0600020A06101E018 +:104C700008F0F2FC286A401E28620BD1D5F8C40166 +:104C800000E080680028FCD14FF0FF30286201E08E +:104C900008F0E2FCC046C046BDE8F087BC620120D7 +:104CA000A8370120002848BF40427047F446400D15 +:104CB00040EAC120490006D200F014F8004248BF83 +:104CC0006FF00040604700F00DF84FF0004188425F +:104CD0008CBF084640426047400D40EAC120490071 +:104CE00080F00D8040F00040490DA1F58061491C25 +:104CF00005D4D1F11F0154BFC840C01770474FF011 +:104D000000007047182200210248EEF701BB01485D +:104D1000704700004462012010B504464FF49962C8 +:104D20000021EEF7F5FA40F24130208304F118013A +:104D300048808880002084F8F40204F53D7000214A +:104D4000818010210181002141818181C18108463A +:104D5000A4F8360304F2363001214180002181801D +:104D60004FF0FF31C1800021018141818181C181EA +:104D700001210182418200218182C18201830121BE +:104D8000418300218183C18301840121418410BDBD +:104D900000210B4618E00A1882F8F53201EB4102B7 +:104DA00000EB4202D38013815381D3831384538455 +:104DB00001EB410200EB8202C2F8AC3302F56B72E8 +:104DC00053609360491C09B20129E4DB704738B590 +:104DD0000446032200A91046DFF8E0389B681B6EEA +:104DE0001B6A9847002828D09DF80000A4F8F4001A +:104DF00004F27E359DF80000A88004F1F40000A9BB +:104E00004A7842804A78EA808A7882808878288145 +:104E100042F2B760A4F87E034FF4A96068801022C4 +:104E20000FF6A80104F55770F9F7A6FB10220FF64C +:104E3000A80104F26D30F9F79FFB31BDF0B583B0E6 +:104E400004460020C046014604F53D7569800626EB +:104E5000204611FB0641891D3246EEF751FEB5F999 +:104E6000020010FB0640B0F90600E06004F10C00FF +:104E7000B5F9021011FB0641B1F908104160B5F90E +:104E8000021011FB0641B1F90A108160B5F9020068 +:104E9000001990F8F50284F8F40204F56870B5F989 +:104EA000021001EB410204EB820101F56B718CC928 +:104EB0008CC004F5936204F5767104F12C0008F0BF +:104EC0004CFF94F8F4020190009401230022114653 +:104ED00004F5807009F08CF940F6C412B5F90200AF +:104EE00010FB064000F11E0104F1240009F0E4FD6E +:104EF0000020A880A4F85A030120FEBD7CB504461A +:104F00000020C046014604F53D756980062620460E +:104F100011FB0641891D3246EEF7F2FDB5F902009C +:104F2000001990F8F50284F8F40204F5936204F590 +:104F3000767104F12C0008F010FF94F8F40201904F +:104F4000009401230022114604F5807009F050F905 +:104F500040F6C412B5F9020010FB064000F11E0134 +:104F600004F1240009F0A8FD0020A4F85A03012050 +:104F700076BD032201461046DFF840379B681B6E62 +:104F80001B6A184780B5FFF7C2FEDFF814170860E8 +:104F90000FF2E90101600FF215114160DFF82017EF +:104FA00081600FF21911C1600FF2350101610FF23A +:104FB0006101416101BD00200DE000EB4002DFF81E +:104FC000EC3603EB420247F6FF7322F81130491C1E +:104FD0000329F2DB401C042801DA0021F8E77047BE +:104FE00080B5DFF8C00690F8F41280F8F512018859 +:104FF000C1804188018181884181818CC183C18CBC +:105000000184018D4184FFF7D6FF002002BD00001E +:1050100010B50024DFF88C1691F8F5220270B1F972 +:10502000062012124270CA88827001F20602B2F99A +:1050300002301B12C37053880371B2F904301B1283 +:10504000437193888371B2F918301B12C371138BAB +:105050000372B2F91A301B124372538B8372B2F986 +:105060001C301B12C372928B02730846FFF7E6FED8 +:10507000002800D00124204610BD000010B5DFF844 +:1050800024462046FFF748FE204600F0FBF90028A2 +:1050900002D12046FFF77CFE2046FFF798FE20460F +:1050A000FFF7CCFEBDE8104085E7000080B5DFF8D3 +:1050B000F40500F023FABDE801407CE733B585B084 +:1050C000144602A800210A4606C000A806C0BDF882 +:1050D0001400ADF8080002A8BDF816104180BDF814 +:1050E00018108180FDEEC01A11EE900AADF8000094 +:1050F00000A8FDEEE01A11EE901A4180BDEEC10A43 +:1051000010EE101A8180DFF89C5500AA02A92846EB +:1051100000F050F895F9F402207005F53D709FED10 +:10512000580AB0F9101000EE901AF8EEE00A60EE9E +:10513000800AC4ED030AB0F91A1000EE901AF8EED6 +:10514000E00A20EE800A84ED020AB0F9200000EEA9 +:10515000100AB8EEC00ADFED4B0A20EE200A84EDFB +:10516000010A9FED490AB5F9EE0000EE900AF8EE4B +:10517000E00A60EE800AC4ED040A05F2EE00B0F920 +:10518000021000EE901AF8EEE00A60EE800AC4ED1C +:10519000050AB0F9040000EE900AF8EEE00A20EEED +:1051A000800A84ED060A284600F0A8F9012007B01D +:1051B00030BD000030B589B00446DFF8EC542878E3 +:1051C000ADF8040001A80B784380B1F90030C3F3B7 +:1051D000072383808B78ADF80A30B1F90230C3F32E +:1051E000072303810879ADF80E00B1F90400C0F37C +:1051F0000720ADF810000020ADF812006878ADF877 +:10520000140006A9104600F09FF99FED200A06A899 +:10521000D0ED010A60EE800AFDEEE00A10EE901A71 +:10522000A4F8301304F54C71DDED060A9FED181A51 +:1052300060EE810AFDEEE00A10EE902A4A80D0ED81 +:10524000020A20EE800ABDEEC00A10EE100A888025 +:105250002878012810D10020C046082100910123A0 +:105260000246214601A800F015F8002804D00128C4 +:1052700002D12046FFF742FE012009B030BD0000F8 +:105280000000803C000080BC8FC2753D000034C42B +:10529000000034442DE9F04194B004460D46164612 +:1052A0001F46BDF968800020ADF848000E900F90B1 +:1052B000ADF84000119042F2B7600DF14A010D9136 +:1052C0000DF146010C910EA90B910DF13A010A91D5 +:1052D00012A9099111A908910FA9079105F1EC01F3 +:1052E000069105F56871059105F59361049105F541 +:1052F0007671039105F12C01029102210191D5F8FB +:10530000D413009105F1F403B5F9FC22214608F00D +:1053100049FDD5F8A003BDF83C100818A5F8FA001F +:10532000D5F8A403BDF83E100818A5F8FC00D5F880 +:10533000A803BDF840100818A5F8FE00B5F9F6025C +:10534000B04205D0A5F8F882A5F8F662012096E0F3 +:10535000BDF93A00012801D1022090E0B5F9F80228 +:10536000012803DB401EA5F8F8027CE005F12C01C2 +:1053700005F1240009F0ADFBBDF9381001290BD16E +:1053800001230022294605F5807009F0B6F80020B7 +:1053900085F8F402042072E001280BD101230022D9 +:1053A000294605F5807009F0A8F8002085F8F40278 +:1053B000202064E0B5F85A03401EA5F85A0300B255 +:1053C000012850DA05F53D70059004950120039001 +:1053D00000200290B5F9EC00019005F12C0000903E +:1053E00005F5807305F27E3205F26D3105F55770D3 +:1053F00008F016FF10F5004F01D180203FE0012892 +:105400002FDB0624B5F9F60210FB0450801D294657 +:105410002246EEF775FBB5F90000E860B5F9020029 +:105420002861B5F904006861B5F9F602401995F8EC +:10543000F41280F8F512B5F9F60210FB04501E3094 +:1054400005F124012246EEF75BFBB5F9F60200EB0D +:10545000400105EB810000F56B7005F568711CC912 +:105460001CC0A5F85A7305F1EE00009040F24133DC +:1054700005F1180229460FA809F042FB002014B0DC +:10548000BDE8F0811FB5044600A81021F0F7B2FA7C +:105490009DF8000084F8F5029DF8010000029DF8D7 +:1054A000021050FA81F0E08004F206009DF803102B +:1054B00009029DF8042051FA82F1418000A99DF86B +:1054C00005208B7913EB022282809DF80720097A50 +:1054D00011EB022101839DF8091009029DF80A20B1 +:1054E00051FA82F141839DF80B1009029DF80C20BE +:1054F00051FA82F18183002004B010BD70B4B0F97C +:10550000061090F8F5226F4B1C78944211D1B3F934 +:1055100004408C420DD100F20604B3F90650B4F9F0 +:105520000260B54205D1B3F90850B4F90440A54270 +:1055300007D01A70998000F206046088D880A0888D +:105540001881002070BC704770B52DED048B83B0BE +:105550000C46002140F6010308E030F911209A4280 +:1055600003DBA2F5805220F81120491C0329F4DB4B +:1055700003210DE006224D4B02FB013202EB4503F5 +:1055800033F8063C22F815306D1C032DF2DB491E62 +:10559000012901DB0025F8E70021444B04E030F845 +:1055A000112023F81120491C0329F8DB002000906A +:1055B00000A800214160816022E000EE102AB8EED0 +:1055C000C00ADDED000A30EE200A8DED000AB3F9C5 +:1055D000022000EE102AB8EEC00AD0ED010A30EE2B +:1055E000200A80ED010AB3F9042000EE102AB8EE7B +:1055F000C00AD0ED020A30EE200A80ED020A491CF2 +:10560000042911DA062202FB01F5284BEA5EEB18A9 +:1056100047F6FF75AA42D0D1B3F90260AE42CCD1B1 +:10562000B3F90460AE42C8D100EE101AB8EEC00A59 +:10563000DDED000AC0EE800ACDED000AD0ED010AD2 +:10564000C0EE800AC0ED010A90ED021A81EE008AD8 +:1056500080ED028A9FED169B10EE900AF3F754FC42 +:1056600053EC192BF3F77EFBF3F776FC20600098E0 +:10567000F3F74AFC104A144BF3F774FBF3F76CFC96 +:10568000606018EE100AF3F73FFC53EC192BF3F7A8 +:1056900069FBF3F761FCA06003B0BDEC048B70BD47 +:1056A00010660120880901206464012074620120D1 +:1056B00051FA42C879FF4F3F51FA42C800600020BA +:1056C000734F01088864012079FF4FBF415341485F +:1056D000494B415345490000534543303939313135 +:1056E0004E5346535400000038B50446EDF7ACF86D +:1056F00090F98450002C02D14FF0FF3032BD0922C6 +:1057000000212046EDF704FE6D1E062D36D8DFE899 +:1057100005F0040C131A21282F00012060704FF0AF +:10572000FF30E070012020722CE04FF0FF3020703D +:1057300020710120207225E04FF0FF3060700120C1 +:10574000E07020721EE04FF0FF30207001212171C7 +:10575000207217E001206070E0704FF0FF3020727F +:1057600010E0012020704FF0FF302071207209E01E +:105770004FF0FF306070E070207203E00120207075 +:1057800020712072002032BD0FB42DE9FE4300A825 +:105790000FF22C411CC91CC000A809F039FB0646B9 +:1057A0009DF82970DFF8AC0307704FF005084FF043 +:1057B00000090069D0F85405C11742464B46F4F77A +:1057C00021FCA8FB004508FB0155384600F03FF8D6 +:1057D000E148A0FB048900FB05994046494609F0D1 +:1057E00071FA4046494609F07EFA4FF47A01304694 +:1057F00009F010FB4FF48031304609F00DFB09F041 +:10580000F3FA09F0F6FA09F0F9FA09F0FCFA00A83F +:10581000FFF76AFF00A809F0D8FE002804D001466F +:105820000FF2A830ECF7CDFC214689B2012009F037 +:1058300013FF0120BDE8FE035DF814FB80B500F006 +:1058400026F8C821002009F007FF012002BD80B51D +:10585000C00710D5222200210846F3F733F8222290 +:1058600001210020F3F72EF8222202210020BDE8BA +:105870000840F3F727B8222200210846F3F722F860 +:10588000222201210020BDE80840F3F71BB880B5B3 +:10589000222200210120F3F715F8222201210846D7 +:1058A000F3F710F8222202210120BDE80840F3F7A7 +:1058B00009B800002DE9F04FA3B000200146CDE962 +:1058C0000A0120A80A460B460EC01CA81021F0F7BA +:1058D00091F818A81021F0F78DF813A81421F0F70B +:1058E00089F808A800210A4606C006A806C00FA825 +:1058F0001021F0F77FF800200590ADF80E008DF82C +:105900000C0004460CA821460A460B460EC0084669 +:105910008DF80D00ECF798FF0490F6F75BFD054657 +:105920004FF00508A1468B4E3069D0F85405C117D9 +:1059300042464B46F4F766FBA8FB00AB08FB01BBF5 +:1059400003A801900DF10E00009005AB0FAA06A967 +:1059500008A809F042FD00283ED1D6E902017E4A9E +:10596000A2FB0A8902FB0B9910EB080041EB09012D +:10597000C6E902013278D20724D5002715E005EBED +:105980004702B2F9062000EE102AB8EEC00ADFED99 +:105990006F0A20EE200ADFED6E0A20EE200A20AA10 +:1059A00002EB870282ED000A7F1C032FE7DB6A69A6 +:1059B0000292CDE900010FAB20AA06A908A809F0C0 +:1059C0009DF908E000220292CDE900010FAB06A983 +:1059D00008A809F093F9641C9DF80C00002802D077 +:1059E000E4B2052CACD3E4B2042C03D30FF2E810DC +:1059F000ECF7E7FB3078C0073ED50AA91CA809F0F0 +:105A0000E2F900270EE01CA850F82700F3F77CFA13 +:105A10000022524BF3F7A6F9FFF748F918A941F80D +:105A200027007F1C042FEEDB102218A913A8EEF725 +:105A3000A2F868698DF85C004948006C00F10C041C +:105A4000627D13A9E368C0681818EEF794F8012086 +:105A5000A0740AAA0DF10D010CA809F0C0F90C22DE +:105A60000CA904983C30EEF786F895ED050AB8EEDF +:105A7000C00A049880ED120A307880072BD50AA955 +:105A80001CA809F0A6F900270EE01CA850F8270072 +:105A9000F3F73AFA0022314BF3F764F9FFF706F90E +:105AA00018A941F827007F1C042FEEDB102218A94B +:105AB00013A8EEF760F800208DF85C002848C06B52 +:105AC00000F10C04627D13A9E368C0681818EEF7B2 +:105AD00052F80120A074012023B0BDE8F08F80B5FA +:105AE000F2F7EEFE1B4908611E49C0F8601500F28E +:105AF00060501D4941601D4981600FF21501C16070 +:105B00000FF285010161012009F063F8012002BD57 +:105B10001048006990F85105002801D10020704715 +:105B200005E080B5002000F006F8012002BD104815 +:105B300090F9000070470E490870704705490870D9 +:105B400001460FF29C00ECF73CBB00008FC2753D94 +:105B5000000080473063012040420F0080842E41C6 +:105B600000600020895701083D580108B558010818 +:105B70009D660120222202210020F2F7A3BE2222EC +:105B800002210120F2F79EBE18B440F249120B78B0 +:105B900012FB030301241C700B7812FB03035C70DF +:105BA0000B7812FB030322249C700B7812FB03007A +:105BB0000022C2700878401C087011BCB1E70000D8 +:105BC000010000000100000001000000444D5020D1 +:105BD0004946282564290000444D5020524646007D +:105BE000525620666C616720256400000278C9B2B5 +:105BF0008A421AB11CBF10F8012FF9E718BF002024 +:105C000070470000C9B2830706D0521E22D310F895 +:105C1000013B9942F7D11FE0083A13D302F1040285 +:105C200041EA012141EA014150F8043B121F21BF22 +:105C30004B40A3F1013C2CEA030C1CF0803FF3D055 +:105C4000C9B2001F083210F8013B521E28BF91EA6A +:105C5000030FF8D818BF0120401E704730B44368C6 +:105C600003F0004201211B031B0B436004BF0368C8 +:105C7000002B08D10DE00368DD0F45EA44044460C1 +:105C80005B000360491E4468E302F4D523031B0B49 +:105C9000436043681A434260084630BC70470000C6 +:105CA0004FF4001C1CEB410F94BF1CEB430F09E0A9 +:105CB00041EA030C50EA4C0C52EA0C0C03D2994214 +:105CC00008BF9042704714BF8B4282427047000069 +:105CD0004FF4001C1CEB410F94BF1CEB430F09E079 +:105CE00041EA030C50EA4C0C52EA0C0C03D28B42F2 +:105CF00008BF8242704714BF99429042704700002B +:105D000070B5044640F2FF726068C0F30A500D4659 +:105D1000904207D16068000304BF2068002817D0B4 +:105D2000022070BD20B92046FFF798FF012867DAEE +:105D3000012D0FDB40F2FF71091A8D420AD3606812 +:105D400000284CBF9FED2F0B9FED300B84ED000B17 +:105D5000012070BD4142A942616806DA6FF31E510D +:105D6000401941EA0050606041E0401E6368012232 +:105D7000451962F31F5305F1350001F000416360DE +:105D8000352803D361600020206070BD002215F12A +:105D90001F0F04DA2268236000202035606068420B +:105DA00013D0521E25689241C0F12003D2439D407A +:105DB00055EAD27225686668C54006FA03F32B439C +:105DC0002360636823FA00F06060606808436060E5 +:105DD000B2F1004F03D80DD12078C0070AD5206852 +:105DE000401C2060206828B96068401C60604FF04B +:105DF000FF3070BD6068884204BF20680028F6D17B +:105E0000002070BD000000000000F0FF0000000056 +:105E10000000F07F70B44FF0004591EA030F44BFDB +:105E20006B4003F0D3BF00BF841A71EB030604D2AA +:105E30006E40001BB141121973414FF4001C1CEB62 +:105E4000410F34BF7CEB430684E00C0DA4EB1356EA +:105E5000362E7DDC012E43DC45EAC32343EA525350 +:105E600012BFD20292025B08240545EAC12141EA31 +:105E70005051D2EBC020994125D407D1B0FA80F619 +:105E800010FA06F164D00020203608E0B1FA81F65D +:105E9000B140C6F1200220FA02F21143B0404FEAAD +:105EA000F474B4EB465434F001064FEA74040AD893 +:105EB000D6F50016760D04F00044F04061FA06F2C3 +:105EC0005040F1404840C00A40EA415021F00041B2 +:105ED00028BF5FEA500550F1000044EBD12137E0C4 +:105EE00045EAC323DB0A45EAC121C90AB6F1200508 +:105EF0000EDD42EA0242120CC5F1200603FA06F654 +:105F0000EB4042EA06056D42984161F100010DE067 +:105F100062FA06F5F240554063FA06FC82EA0C028A +:105F2000F3405A406D42904161EB030111F4801F30 +:105F300005D1641E620502D06D004041494121F443 +:105F40008011430875F1004350F1000041EB04510A +:105F500070BC70471CEB410F15D223F0004352EA8E +:105F600043060BD04FEA4C0CBCEB410F04D80C0D90 +:105F7000661E342EB7DDEBE7801A994150EA4106E0 +:105F800008BF0021E4E708BF1CEB430F28BF6FF0F8 +:105F90000001DDE7F0B540F2FF7581EA030C0CF07B +:105FA000004C15EA11541DBF15EA1357AC42AF421D +:105FB000E5E0BC41C1F31301C3F31303801A994117 +:105FC00043F4801304D2641E4000494180185941B3 +:105FD000C90241EA5051B1FBF3F603FB1611A2FBD3 +:105FE0000675D7EBC020A94102D2761E8018594110 +:105FF000C90241EA5051B1FBF3FE03FB1E11A2FBA3 +:106000000E75D7EBC020A94103D2AEF1010E801866 +:106010005941890241EA9051760546EA8E2EB1FB3C +:10602000F3F603FB1611A2FB0675D7EB8020A941FE +:1060300002D2761E80185941C90241EA50514EEAF7 +:10604000060EB1FBF3F603FB1611A2FB0675D7EBA8 +:10605000C020A94102D2761E80185941C90241EAE6 +:106060005051B1FBF3F703FB1711A2FB0735D3EB3C +:10607000C020A94167F100070CBF004247F00107AB +:1060800066F3D5274FEA1E31B80814F5806412DD97 +:10609000BD0775F1004250EB0E5051EB045111F564 +:1060A000801F5CBF41EA0C01F0BD4CF07F6141F004 +:1060B000E0410020F0BDBD076D0840EA0E5041F4FC +:1060C0008011D4F10104B4F120060ADAC4F12006EB +:1060D0000200E04001FA06F3E1401843B2401543E4 +:1060E0000EE0342C13DCC6F1200445EA40056D08AF +:1060F00020FA06F2154321FA06F0A1400D430021D3 +:1061000075F1004250F1000051EB0C01F0BD002090 +:106110005FEA0C01F0BDCFB992185B41B3FA83F787 +:1061200004BFB2FA82F6BF190B3FB7F120062FBFAA +:1061300002FA06F3BB40C7F1200622FA06F638BF82 +:106140003343BA401CB1E419641E33E77F4231F097 +:106150000041B1FA81F404BFB0FA80F6A4190B3CF7 +:10616000B4F120062FBF00FA06F1A140C4F12006C9 +:1061700020FA06F638BF3143A0403C1B1AE7AC4278 +:106180001ABF05EA1357AF4212E050EA41061CBF9E +:1061900052EA4306BFE750EA4107304661461CBF5A +:1061A00041EA0551F0BD52EA430C08BFC143F0BDBE +:1061B00000204FF4001616EB410F98BF16EB430F6B +:1061C00008BF16EB410F24BFC14305E016EB430F98 +:1061D0000CBF61464CEA0551F0BD91FBF2F303FBA5 +:1061E0001211C0E90031704710B517480078002837 +:1061F00002D1A220EFF74CFC1448006A401C13495E +:1062000008621249496A401A002802D40F48012145 +:1062100081710E4890F8280000280CD00B4890F8A7 +:106220002800401E094981F82800C0B2002802D188 +:106230000648012101710648046802E06068804751 +:106240002468002CFAD110BDB5660120F899002011 +:106250007066012080B54FF44070F3F7C7FD3348F6 +:10626000016841F4700101603148016841F00101A9 +:1062700001600021816001682E4A114001602E49B1 +:106280004160016821F4802101600021C16000F0BB +:106290002CF82A484FF00061016001BD2848416890 +:1062A00001F00C01274A082913D10168036803F0A3 +:1062B0003F03B2FBF3F20168C1F388115143026856 +:1062C000C2F30142521C5200B1FBF2F11E4A1161AD +:1062D00001E01D490A611C494068C0F30310405C9D +:1062E0000A6922FA00F0086170471548C16B41F055 +:1062F0008051C163416841604168416041684160CB +:106300000821016011494FF4C0620A60416821F41C +:10631000000141600E480F4901600F48016821F4F7 +:10632000404141F4804101607047000088ED00E089 +:1063300000380240FFFFF6FE1030002408ED00E0B8 +:10634000043802400024F4009C9A0020003C0240E3 +:106350008438024040310040007000400021102885 +:1063600006DB103800F1604111F56441097806E060 +:106370000E2801D1042007E00449001F415C802958 +:1063800001DA022000E00120704700BF18ED00E0B4 +:1063900009F08EBF80B5ECF757FAD0F88000F8F717 +:1063A000E3FE0348007802BD014908707047000011 +:1063B000B066012030B585B004000D000294019450 +:1063C0000C4880680390EFF7D0FB2068009000A88D +:1063D00020600098002802D0009800A9416005487C +:1063E000806800A98160034880680574F0F7E9FAC5 +:1063F00005B030BDF899002038B5027EC368446905 +:10640000E3180469A34201D304691B1B5343846846 +:106410000D781D55491C5B1C521E002AF7D1C1681E +:10642000491CC160012902D107F0F8F80DE02548A8 +:106430004078F021084202D09920EFF729FB21484B +:106440004078002801D1EFF78AFB31BD10B5040078 +:10645000207E62694243A368D35C0B70521C491CC6 +:10646000401E0028F7D16069401C606121698842A4 +:1064700001D300206061E068411EE160216988422B +:1064800011D110484078F021084202D09920EFF74E +:10649000FFFA0C484078002801D1EFF760FB20009C +:1064A00007F0BCF80DE007484078F021084202D020 +:1064B0009920EFF7EDFA03484078002801D1EFF773 +:1064C0004EFB10BDF899002000BF10B440480021D9 +:1064D000018008463F4C0CE001EB810200EB800399 +:1064E0001B19D21800231371491C49B20129F3DB8F +:1064F000401C142801DA0021F7E710BC704700EBBC +:1065000080003449405E704700EB800031494018FC +:10651000B0F90200704710B54FF0FF3401460C2966 +:1065200003D01C2903D1002405E0012403E00FF26D +:10653000AC00EBF746FE204610BD38B504460125F9 +:10654000FFF7E9FF20460C2804D01C2805D100F0F5 +:1065500037F808E0FFF7B9FF05E021460FF28C009D +:10656000EBF72FFE0025284632BD80B501460FF21D +:106570008C00EBF726FE4FF0FF3002BDF3B5144C54 +:1065800025882E46701C152801DB0020F6BD00274B +:106590000DE007EB870106EB86000E4A801808180D +:1065A00000AA89180522EDF7ABFA7F1C7FB2012FF4 +:1065B000EFDB681C20800120F6BD0548008870478D +:1065C0000548002141800121017008467047000004 +:1065D0008A660120AC55012044990020455820507E +:1065E00044524D4D20433120256400004558205031 +:1065F00044524D4D2043332025640000455820501F +:1066000044524D4D204332202564000080B509F0EE +:1066100059FE4FF4FA720021DFF8900DBDE80840F2 +:10662000ECF776BE38B503460846114601240B2B1D +:1066300031D1012819D1DFF8740D081890F92A20FA +:106640001346DFF86C5D4D5DAB4203DA511C80F8F8 +:106650002A1044E0002280F82A2014460A460B2122 +:106660000FF28000EBF7ADFD39E0022837D1DFF8FB +:106670003C0D081890F92A20012A03DB511E80F8EE +:106680002A102CE0002280F82A2014460FF2640021 +:10669000EBF797FD23E00A2B21D1012808D1DFF881 +:1066A0000C0D081800F22A000179491C017116E04E +:1066B000022814D1DFF8F40C081800F22A0090F92F +:1066C0000420012A02DB511E017108E00022027140 +:1066D00014460A460A210FF22C00EBF772FD204601 +:1066E00032BD0000534C4D2D414C204552202564B5 +:1066F00020256400534C4D20524C2D4552202564DA +:1067000000000000534C4D2D524C2045582025646C +:1067100020256400DFF8941C81F8360070470FB420 +:10672000F0B5A7B000A8EBF7E7FF08A82421EFF722 +:1067300061F90124DFF87C6CB068DFF8705C90F8D8 +:10674000E016002962D190F8E10600285ED109F038 +:10675000B9FD7068407A411E8941C90FA976A87EAB +:1067600085F82200B4208DF80A0046208DF80B0031 +:1067700020468DF80C0000208DF8200003200990A1 +:106780000DF1290002A91822EDF7BAF90A208DF8B7 +:10679000280008A8F2F790F9002801D102209FE014 +:1067A00011A802F0CEFC119885F8210095F821007F +:1067B00085F82900BDF88E0085F8200095F82000A6 +:1067C00085F828009DF900004FF461619DF90120D2 +:1067D000C2EB02139A0011FB00209DF9021040FA4F +:1067E00081F04FF47A71BDF9032001FB0020E861CC +:1067F00068622C2200210846F2F764F8022805D1CD +:106800000FF2E400EBF7DDFC022069E09DF8B260D6 +:106810003746781990F92A1000294AD190F92E00AC +:10682000002846D1002E18D109F02BFF0020A887A0 +:1068300085F83E00C5F84700E869C5F84300C5F88B +:106840003F00002085F84B0085F84C00BDF8B400EF +:106850004FF47A71484309F007FF032E24D19DF8C5 +:10686000B600002803D14FF6E850A88200E0A882C5 +:106870009DF8B300E874BDF8B4004FF47A71484352 +:10688000C5F81600072085F8ED01002085F8EE0117 +:1068900085F8EF0185F8F00185F8F101C5F8E5010B +:1068A000C5F8E101C5F8E901022E02D10020C5F8C2 +:1068B000DD0128782146B140084328703246214640 +:1068C00095F83600FFF7AEFE002808D13B46224679 +:1068D00095F836100FF22000EBF773FC02242046E7 +:1068E00027B0F0BC5DF814FB534C4D204641494C99 +:1068F0002041434300000000534C4D20524547497E +:10690000204641494C2025642F25642F2564000032 +:1069100070B58AB000A82421EFF76CF8F9F740FBB6 +:1069200005460124002D6CD0DFF8806AAA78022188 +:1069300096F83600FFF776FE002800D10324A878E9 +:10694000801990F92A0000282AD1A878801990F996 +:106950002E00002824D1A878032814D10020F07438 +:10696000C6F81600B082C6F8E101C6F8E501C6F81F +:10697000E90186F8ED0186F8EE0186F8EF0186F868 +:10698000F00186F8F101A878022802D10020C6F8AB +:10699000DD013078012195F9022091408843307063 +:1069A000307800281AD10FF29C00EBF70AFCFFF7B1 +:1069B0002DFE2C2200210120F1F784FF03283AD07C +:1069C00001208DF80000032001900A208DF80800B6 +:1069D00000A8F2F771F8002830D12CE0DFF8D409D4 +:1069E000806890F87810002928D1002180F8E016FE +:1069F00080F8E116FFF70AFE0FF25400EBF7E1FB17 +:106A00001CE00FF25C00EBF7DCFBFFF7FFFD2C2234 +:106A100000212046F1F756FF03280CD020468DF8C0 +:106A20000000032001900A208DF8080000A8F2F76A +:106A300043F8002801D1032001E0032420460AB0D6 +:106A400070BD0000534C4D2D414C4C20524D000068 +:106A5000534C4D2D464F5243452044524D000000AB +:106A6000534C4D2D524C204E756C6C000FB410B42D +:106A7000079800EB40018800C11DDFF8FC0A89B2CD +:106A80000A189DF8083082F84D30491CDDF80920BD +:106A900089B20B18140A83F84D40491C89B20B18AF +:106AA00083F84D20491CDDF80D2089B20B18140C19 +:106AB00083F84D40491C89B20B18140A83F84D40E5 +:106AC000491C89B20B1883F84D20491CDDF81120B0 +:106AD00089B20B18140A83F84D40491C89B20B186F +:106AE00083F84D20491CDDF8152089B20B18140ECF +:106AF00083F84D40491C89B20B18140C83F84D40A3 +:106B0000491C89B20B18140A83F84D40491C89B2FC +:106B10000B1883F84D20491C80F83D1010BC04B0C0 +:106B2000704700002DE9F04FB5B04FF0000A16A8ED +:106B3000EBF7E2FDDFF87448616A19A800F040FE47 +:106B40001EA802F0FEFA5046189006461BA83146D1 +:106B50000A460B460EC0894600A8F1F719FF0098B7 +:106B60001B901BA80199416002998160DFF844588D +:106B7000D5F804B09BF80900411E8941C90FA176E0 +:106B80009DF95800C0B24FF461619DF95920D2B20D +:106B9000C2EB02139A0011FB00209DF95A1050FA23 +:106BA00081F04FF47A71BDF95B2092B201FB0020B5 +:106BB000E0610746616A00F0CFFC8046B8F1000F43 +:106BC00002D0B8F1C90F02D3A868D0F8E4869BF8C8 +:106BD0000B0015901EA981B068465822ECF7A0FF63 +:106BE00008BC3A4641461BA809F00CFC834609F054 +:106BF000D3FCE0761E9984F821102FA90191C98851 +:106C000084F8201084F839809DF95910ADF80010EF +:106C10009DF865708F4214D09DF959100A2291FB9E +:106C2000F2F302FB131100290BD1052807D194F8C8 +:106C30004C00401C84F84C00C0B209F08EFB0120CF +:106C40001890ABF1010BBBF1100F00F27B80DFE875 +:106C50000BF0095C145C793B5C55736C7379797348 +:106C60002E797300E069C4F83F00C4F8430032464F +:106C70001146E07E00F082FC64E094F84C000028AD +:106C8000324607D00421022000F078FC304684F818 +:106C90004C0057E00121032000F070FC3246114601 +:106CA000E07E00F06BFC032009F0EAFC4AE094F877 +:106CB0004C0000281CD032460321E07E00F05EFC30 +:106CC000304684F84C003DE06868407A002802D1E4 +:106CD000012084F8320094F84C00002808D0324695 +:106CE0000221E07E00F04AFC304684F84C0029E0A6 +:106CF00032461146E07E00F041FC23E06868407AAD +:106D0000002802D1012084F832003246012194F893 +:106D1000230000F033FC32461146E07E00F02EFCEA +:106D200094F8230009F0ACFC0CE06868407A002875 +:106D300002D1012084F83200189AD2B20121E07EFB +:106D400000F01CFC20780521084200F0998094F89E +:106D50003E0013280AD30FF63430EBF732FA3046F0 +:106D6000C4F84700012084F8320089E06968497A54 +:106D7000002932D1314684F8371094F822100029C6 +:106D80000DD13046C4F84700012084F83200D4F811 +:106D9000DD0100281BD0012084F8340017E0D4F86E +:106DA0004710DFF8A82A914211D300280FD0A86815 +:106DB00000F5DC614A7890F8E0160FF6D820EBF782 +:106DC00000FA3046C4F84700012084F83200D4F8B5 +:106DD00047004044C4F8470052E03046C4F847003A +:106DE000BDF9000087424BD09DF959000F280AD108 +:106DF00094F837000F2806D0012084F838000F20BF +:106E000084F837001CE09DF9590023280AD194F832 +:106E10003700232806D0012084F83800232084F886 +:106E200037000DE09DF95900372809D194F8370053 +:106E3000372805D0012084F83800372084F837003F +:106E400094F83E0000281BD094F83800012817D190 +:106E5000A86800F5DC614B7890F8E02601210FF678 +:106E60004820EBF7AEF9304684F83800012084F86A +:106E70003200D4F8DD01002802D0012084F834006B +:106E80002078400749D594F82000002831D094F8A4 +:106E90002800002828D1B7EE000ADDED2F0A80EE89 +:106EA000200A10EE100AF2F72FF83246DFF8A03968 +:106EB000F1F758FFFDF710FF94F8291094F82120FE +:106EC0008A4202D3511A484308E0F1F73DFF3246A7 +:106ED000DFF88039F1F746FFFDF7FEFED4F8DD114B +:106EE0004018C4F8DD0104E0D4F8DD014044C4F8E2 +:106EF000DD012078400710D56868407A00280CD161 +:106F00000198C088002808D09DF866009DF95A10A5 +:106F1000884202D0012084F834002078000740F134 +:106F2000F8809DF95800C0EB001188009DF95910B8 +:106F300040FA81F6E07C052807D1E07E012801D0E7 +:106F4000022807D14FF0010A04E0E17E814201D11D +:106F50004FF0010ABAF1010F40F0AF80012084F830 +:106F6000F10194F8EE01A18A88427CD294F8F301F1 +:106F7000D4F81610D4F8E1218A4208D200282CD186 +:106F8000D4F8E5218A4228D32A88964225D10028C0 +:106F900009D1D4F8E501884205D32888864202D178 +:106FA000012084F8F301012009F063FB0120FAF7C6 +:106FB00067FBE07E84F8ED01D4F8E501C4F8E9014F +:106FC000022084F8EF01012084F8F0014846C4F85B +:106FD000E101012084F8350060E0A07E01285DD148 +:106FE00094F82200002803D0BDF9000087420DD09C +:106FF000022084F8EF01D4F8E501C4F8E90148461D +:1070000084F8F001012084F8350015E094F823009D +:10701000012811D002280FD0012084F8EF01484642 +:1070200084F8F301D4F8E501C4F8E901484684F88E +:10703000F001012084F8350094F8ED0107282DD1E6 +:10704000484684F8ED0184F8F301012084F8EF014B +:10705000D4F8E501C4F8E901484684F8F0010120BC +:1070600084F835001AE04846C4F8E101A07E012802 +:1070700014D194F82200002803D0BDF90000874203 +:107080000CD0022084F8EF01D4F8E501C4F8E9013E +:10709000484684F8F001012084F835000198C08842 +:1070A000002836D1D4F8E5014044C4F8E501D4F80D +:1070B000E1014044C4F8E1012BE0484609F0D9FA67 +:1070C0004846FAF7DDFAA07E012819D194F8F101BB +:1070D000012815D16B882A8831460FF2E470EBF74E +:1070E00070F84846C4F8E901032084F8EF014846E7 +:1070F00084F8F001012084F83500484684F8F10155 +:107100004846C4F8E101C4F8E50184F8EE0184F8CA +:10711000ED01484609E0012181402278114203D166 +:1071200001194A4681F83220401C0428F3DB94F808 +:107130003400012807D10221012000F0C1F848469F +:1071400084F8340072E094F8320001280BD194F8EE +:107150003E00002803D04946012000F0B1F848461F +:1071600084F8320062E094F8350001285ED1288866 +:1071700040F2DC51884218D06A888A4215D0014614 +:1071800082420BD28E4204D3B6F5B46F01D24FF0D7 +:107190000109B2420BD34FF0010908E08E4206D339 +:1071A000B24204D34FF0010901E04FF00109B9F1F7 +:1071B000010F1FD10321012000F082F894F8F001A3 +:1071C00001280FD1D4F8162031460FF20870EAF7E3 +:1071D000F8FF012084F8F20194F8EE01401C84F8D5 +:1071E000EE0120E094F8EF0103281CD1002084F880 +:1071F000F20118E094F8F201012814D194F8EF019B +:10720000032805D002280ED194F8F00100280AD1F5 +:107210000321012000F054F894F8EF01032802D173 +:10722000002084F8F201002084F8350004F12200E7 +:1072300004F11A010822ECF763FC012035B0BDE827 +:10724000F08F10B55B4C40F2DC5020806080F1F78D +:1072500037FBA060EAF733FF6060A068DFF8F8153D +:10726000C0F8F01600F2F060DFF8F0154160DFF8CA +:10727000F01581600FF20D01C1600FF23D11016147 +:10728000012010BD00204B49896891F8E1160029C2 +:1072900011D0014600E0491CC9B2042906D2B64A01 +:1072A0008A1892F92A20012AF5DB0120002801D151 +:1072B0000020704700E07047AF4890F93A007047EF +:1072C000AD4A02F22A031874002812D092F92A005B +:1072D000012807DA93F90300012803DA93F9020081 +:1072E000012808DB587C012202FA01F10843587496 +:1072F000704700205874704780B500210846FFF79A +:10730000DFFF012002BD10B5044621460FF2D45024 +:10731000EAF757FF2748048010BD10B50446214600 +:107320000FF2CC50EAF74DFF2248448010BD10B553 +:10733000044621460FF2C450EAF743FF8E48002C62 +:1073400003D14FF6E851818210BD848210BD10B583 +:10735000044621460FF2B050EAF733FF86484FF457 +:107360007A716143C0F8161010BD10B5044621466D +:107370000FF2A050EAF725FF4FF47A706043BDE8A2 +:10738000104009F071B97C4B83F84D0003F24D00B9 +:10739000012343708170110EC170110C0171110A2B +:1073A000417182717047DFF8BC047047DC33012003 +:1073B000289B00200C6501202DE9F04105460E4672 +:1073C000002140F24917307817FB0050012202706B +:1073D000307817FB00502C228270674C04F11C0897 +:1073E00098F81F00C20707D5D4F83F2094F83C1046 +:1073F000FFF7C9FF012122E042071DD5307817FBB6 +:10740000005001224270307817FB005098F81F207E +:10741000C270307817FB005002220271307817FBDF +:107420000050D4F8DD21C0F806203078401C3070C0 +:107430000846C4F8DD0102E0000700D5012100295B +:1074400000F08780307817FB00500121417098F8D8 +:107450001F00C10763D504F13C08307817FB0050CA +:1074600098F801104171307817FB0055FFF79BFF2A +:1074700028613078401C307004F23F05E07E05281A +:1074800036D1002020E000EB400292000F3292B291 +:10749000131993F84D301B06521C92B2161996F828 +:1074A0004D6003EB0643521C92B2161996F84D60DC +:1074B00003EB0623521C92B2121992F84D2053FA94 +:1074C00082F251186960401C696898F80220C0B2C5 +:1074D0009042D8D3E448814202D3E448401868601F +:1074E000687B002808D1297B686809F0A3F803E0CD +:1074F000297BE06909F09EF809F0C3F8E07E0528D1 +:1075000003D16868C4F83F0003E0E069C4F83F00B5 +:107510006860002084F83C0088F8020019E0010748 +:1075200017D5317817FB0151C87004F2DD1031789E +:1075300017FB0151827C8A72317817FB0151C27CA2 +:10754000CA72317817FB0151C068C8603078401C9E +:107550003070BDE8F041CFE610B40022884201D37C +:10756000421A06E00B1AC24CA34202D3BE4A1018BC +:10757000421A104610BC7047DC3301202DE9F0435D +:1075800097B081460C469046BA4D2878C00740F126 +:1075900014810026494600A809F004F89DF800006F +:1075A0008DF83000DDF80900CDF83900DDF8050070 +:1075B000CDF83500DDF80D00CDF83D00DDF8010017 +:1075C000CDF83100B8F1010F0DD13046CDF83D00B6 +:1075D000CDF83500CDF83900CDF831004946E869DD +:1075E00009F028F8B1E0012C0DD195F83E000028F3 +:1075F00003D095F83C00002801D10126A5E0401EEB +:1076000085F83C00A1E0022C34D1374695F84C00B7 +:10761000874280F29A80791DC9B211A808F0C2FF92 +:107620008DF81090DDF84D00CDF81900DDF8490017 +:10763000CDF81500DDF85100CDF81D00DDF845004E +:10764000CDF8110095F83C00029003A984B068467B +:107650001822ECF765FA0FBCFFF708FA95F83E0020 +:10766000401C85F83E0095F83C00401C85F83C0025 +:107670007F1CCBE7032C01D0042C66D137462EE0CB +:10768000791DC9B200A808F08DFF03208DF81800FD +:10769000DDF80900CDF82100DDF80500CDF81D006A +:1076A000DDF80D00CDF82500DDF80100CDF819005A +:1076B00095F83C00029005A984B068461822ECF7C2 +:1076C0002FFA0FBCFFF7D2F995F83E00401C85F861 +:1076D0003E0095F83C00401C85F83C007F1C95F866 +:1076E0004C008742CCDB042C2CD1032100A808F0ED +:1076F00059FF03208DF81800DDF80900CDF82100AE +:10770000DDF80500CDF81D00DDF80D00CDF82500F1 +:10771000DDF80100CDF8190095F83C00029005A9AC +:1077200084B068461822ECF7FBF90FBCFFF79EF90E +:1077300095F83E00401C85F83E0095F83C00401C42 +:1077400085F83C00032008F09BFF95F83C00029070 +:107750000BA984B068461822ECF7E2F90FBCFFF7DA +:1077600085F99DF8300085F84B00B8F1010F08D17C +:1077700095F83E00401C85F83E00484608F080FF22 +:1077800016E0002C05D0022C03D0042C01D0032CD1 +:1077900005D195F83E00401C85F83E0008E0012C1C +:1077A00006D1012E04D195F83E00401C85F83E001C +:1077B00095F83C00401C85F83C0017B0BDE8F0830C +:1077C0002DE9FC4105460C462046F1F7BDFA0022A2 +:1077D000294BFEF7DFFBFDF769FA8DF800009DF8F5 +:1077E0000000264901FB10484046F1F7ADFA00229F +:1077F000234BFEF7CFFBFDF759FA06468DF80160E3 +:107800004EF66027F6B207FB1680F1F79DFA1D4A87 +:107810001D4BF1F7A7FAFDF749FA8DF802009DF824 +:1078200000104EF6806202FB114107FB1611C0B238 +:107830004FF47A7202FB1010ADF80300284600A93D +:107840000522ECF75DF9BDE8F6810000814F1200DA +:1078500000408F4000001C401F67010811690108AB +:10786000256B010829340120005C260500A4D9FA03 +:10787000A1780F05DC33012040774B4180EE3600C4 +:10788000004CED40FCA9F1D24D62503F534C4D20CD +:1078900046420000534C4D204F4E20434E5420256D +:1078A000642F256400000000534C4D204F464620B5 +:1078B000434E542025642F25642F256400000000CA +:1078C000534C4D2049412042522025642F25642FDE +:1078D00025640000534C4D2049412055502025641B +:1078E0002F256400534C4D2031502F25640000009B +:1078F000534C4D2032502F2564000000534C4D2036 +:1079000033502F2564000000534C4D2034502F2558 +:1079100064000000534C4D2035502F2564000000BA +:107920000FB480B509F026FDD94805214176002124 +:107930000176818302A91822ECF7F2F809220021CE +:107940000846F0F7BFFF022801D1022000E0012025 +:1079500002BC5DF814FB80B5092200210120F0F77C +:10796000B1FF032801D1032002BDBDE8014048E179 +:1079700010B5C74C94F9190005280AD100F0E3F8B6 +:10798000002822D00420607609F0F4FCBDE8104005 +:10799000F8E0042819D100F0B7F8002808D0032037 +:1079A00020760520607609F0E5FCBDE8104028E16E +:1079B00000F051F9002808D00220207605206076DA +:1079C00009F0D8FCBDE810401BE1012010BD80B5D6 +:1079D000F0F776FFAE490862AE49C0F8781100F5BD +:1079E000BC70AD494160AD4981600FF21101C160C9 +:1079F0000FF295010161012002BD00000020A449A1 +:107A00000246CA760A6A92F86921002A0FD091F9D3 +:107A10001820002A02D00220C876012091F91C20EB +:107A2000012A04D1C87E40F00400C87601207047C6 +:107A3000974800210176C17601770120704710B583 +:107A40008CB0044600A80BF08BFB0198A04204D335 +:107A5000001BC0B200EE100A04E08038001BC0B268 +:107A600000EE100AB8EE400ADDED070A20EE200A0B +:107A700010EE100AF1F748FA41EC100B0CB010BDF3 +:107A8000834801210177704778B4814A92F91B300D +:107A90009C0717D540F249140D7814FB0505012603 +:107AA0002E700D7814FB05056E700D7814FB05051E +:107AB0000926AE700D7814FB0504157EE5700C7870 +:107AC000641C0C705B071DD540F249140B7814FB45 +:107AD000030301251D700B7814FB030303255D7060 +:107AE0000B7814FB030309259D700B7814FB03032B +:107AF0000125DD700B7814FB0300527E02710878BB +:107B0000401C087071BC93E730B58DB0002420464E +:107B10008DF8000001A8F0F73BFF4FF47A705C4D40 +:107B200000ABE98800FB01F2A98841436D886843F6 +:107B300001AD95EC030A09F05FFC022800D1012495 +:107B400020460DB030BD30B58DB0002420468DF8F4 +:107B5000000001A8F0F71CFF4FF47A704C4D00AB09 +:107B6000E98800FB01F2A98841436D88684301ADB3 +:107B700095EC030A09F040FC012800D101242046BD +:107B80000DB030BD30B59BB001240020ADF822000F +:107B900001900A208DF8080000208DF809008DF86A +:107BA0000A003B4D95F91D00002827D1AA208DF829 +:107BB00026003C208DF8270020468DF82800002064 +:107BC0008DF80000032001900DF1090009A9182289 +:107BD000EBF796FF0A208DF808000020ADF8220090 +:107BE00000A8F0F769FF002801D1022406E00FA8E1 +:107BF0000BF0B6FA1098A8762046687720461BB09E +:107C000030BD30B589B00124214D95F91D00012802 +:107C10001ED10020ADF8220001900A208DF8080046 +:107C200000208DF809008DF80A0020468DF800002C +:107C3000032001900A208DF808000020ADF82200F2 +:107C400000A8F0F739FF002800D10324002068774E +:107C5000204609B030BD30B52DED028B81B0002437 +:107C60000B4DA87EFFF7EBFEB0EE408AF0EE608A87 +:107C7000287AF1F769F802460B4651EC180BFEF72B +:107C800027F800D80124204601B0BDEC028B30BD9E +:107C9000249A002021790108577901087179010897 +:107CA00038B5FAF78CFB0446FBF716FA002801D02A +:107CB000012027E0E4B2002C0BD0FBF738FA0028B3 +:107CC00005D00FF2D030EAF77CFA01201AE000204C +:107CD00018E0FBF738FA0446D34D2878002800D185 +:107CE0002C70287884420CD0012C03D1FBF71FFAAA +:107CF000012004E0022C01D1012000E000202C70C2 +:107D000000E00020C849496891F88914002900D191 +:107D1000002032BD0FB400B589B0C3480021017006 +:107D2000406890F88814002944D190F8890400280C +:107D300040D100208DF800001B2001900DF10900BA +:107D40000AA91822EBF7DCFE0A208DF8080000A82B +:107D5000F0F7B2FE002805D10FF24430EAF731FA0D +:107D6000022028E002208DF82A004FF49660ADF83A +:107D700030000020CDF82B008DF82F008DF800008A +:107D80001A2001900DF109000AA91822EBF7B8FE9C +:107D90000A208DF8080000A8F0F78EFE002805D113 +:107DA0000FF20C30EAF70DFA022004E04FF496606F +:107DB000FBF7BBF9012009B05DF814FB00B589B0F1 +:107DC0000FF2FC20EAF7FDF901208DF800001B20DE +:107DD00001900A208DF8080000A8F0F76DFE002839 +:107DE00001D1032018E001208DF800001A20019035 +:107DF0000A208DF8080002208DF80B000020ADF855 +:107E0000110003908DF8100000A8F0F755FE00282F +:107E100001D1032000E0012009B000BD2DE9F04FA1 +:107E20002DED028B93B004460D46FBF755F940F259 +:107E30004916297816FB014101220A70297816FBA0 +:107E40000141002840F0A28010464870287816FBB7 +:107E500000401D218170287816FB004000214171EF +:107E6000FBF76AF9002805D0FBF756F982465FFA5E +:107E70008AFA01E04FF0000A287816FB004080F8EB +:107E800007A04FF0000870E0414600A8FBF748F952 +:107E9000FBF759F98146C8EB4817287816FB0040D4 +:107EA00038189DF829104FF461620DF129035B78B1 +:107EB000C3EB031C4FEA8C0312FB01310DF12902C5 +:107EC000927851FA82F14FF47A72BDF92C3002FBAC +:107ED0000131C0F81B109FED518B287816FB004034 +:107EE00007EB000BDDE9002351EC180BF0F73AFF2C +:107EF000FCF7DCFECBF80B00287816FB004007EB04 +:107F0000000BDDE9022351EC180BF0F72BFFFCF717 +:107F1000CDFECBF80F00287816FB004007EB000BD6 +:107F200002A8D0E9022300203E49F0F71BFFFCF72E +:107F3000BDFECBF81300287816FB004038180BA9BB +:107F40004969C0F81F10287816FB004038180BA9A3 +:107F5000498BA0F81910287816FB00403818C0F893 +:107F6000239008F101085FFA88F8D0458CDBFBF715 +:107F7000D5F8287816FB00400521A0F84311287891 +:107F800016FB00402D49C0F8451112E0052048704D +:107F9000287816FB00401D218170287816FB0040D0 +:107FA00011464171287816FB00400F218171FBF7C3 +:107FB000BAF82878401C287013B0BDEC028BBDE8DD +:107FC000F08F10B584B000A8FAF762FB1C4C204675 +:107FD00000A90B22EBF794FD61782078FBF7B1F84C +:107FE000012004B010BD80B5F0F76AFC0E4B58605C +:107FF0000E49C0F8981400F298400D4941600D49AF +:1080000081600D49C1600F4901610522002103F122 +:108010000800EBF77DF9012002BD00000000000020 +:1080200080842E4100408F40F0630120157D0108BF +:10803000BD7D0108C37F0108A17C0108F863012010 +:10804000D06401201D7E010810B5044621460FF2C0 +:108050007800EAF7B6F82046BDE81040FBF734B8E0 +:10806000FBF734B810B5044621460FF26800EAF772 +:10807000A8F82046BDE81040FBF72CB810B5044620 +:1080800021460FF26000EAF79CF82046BDE8104058 +:10809000FBF71EB84C5420436D644154440000006B +:1080A0004C54204F70656E206661696C00000000C2 +:1080B0004C54204154204F70656E206661696C00FD +:1080C0004C542053544F50004C5420536574575413 +:1080D000202564004C54205365745341522025647C +:1080E000000000004C542053657453522025640056 +:1080F00080B50FF2F810EAF764F877480021418064 +:1081000001BD0FB470B5744C002020709DF8125062 +:10811000BDF81360324629460FF2DC10EAF751F839 +:10812000262200210846F0F7CDFB022805D10FF2E8 +:10813000E410EAF746F802200FE0606890F8F015C6 +:10814000002909D190F8F105002805D1FFF7D0FFEB +:10815000314628460BF0D4F8012070BC5DF814FBC2 +:1081600080B5262200210120F0F7ACFB032801D1C5 +:10817000032002BD0FF2AC10EAF723F856480021A5 +:1081800001700BF0F3F8012002BD10B58EB000A80D +:1081900000210A460B460EC0F0F7FAFB0398009048 +:1081A00000A804994160059981604B4C94F9001036 +:1081B00089B20BF0B7F800212170042804D00628FA +:1081C0000CD0072814D01CE00FF26410E9F7F9FF77 +:1081D00004206080012000F043F812E00FF25810F4 +:1081E000E9F7EFFF06206080012000F039F808E091 +:1081F0000FF25010E9F7E5FF07206080012000F042 +:108200002FF801200EB010BD80B50FF24810E9F72D +:10821000D8FFF0F755FB3049486000224A802F49CB +:10822000C0F8001600F200602D4941602D498160C0 +:108230000FF20D01C1600FF241010161012002BD89 +:108240002548406890F8F015002905D190F8F1050F +:10825000002801D100207047234890F900007047A2 +:1082600021490870704780B51B48002141800846AD +:10827000FFF7F6FF012002BD70B504460D46164E0D +:1082800071880FF2D800E9F79CFF40F24910297875 +:1082900010FB014101220A70297810FB01414A704C +:1082A000297810FB014126228A70297810FB0140B1 +:1082B0007188A0F803102878401C2870BDE8704031 +:1082C000D1E710B5044621460FF2A000E9F779FF87 +:1082D0000148047010BD0000A06501200381010861 +:1082E000618101088B81010892660120234153209E +:1082F000494E495400000000234153205346442076 +:10830000535452203A2025642C204455203A2025ED +:1083100064000000234153204641494C204143431F +:10832000000000002341532053544F500000000030 +:1083300023415320445400002341532041535F4EB6 +:108340004D5300002341532041535F43414E434569 +:108350004C000000234153204D490000234153208D +:1083600041504D5347203A202564000023415320BB +:10837000555352414354203A202564000FB400B5B0 +:1083800089B0DFF8B40701210177406A90F86014E2 +:1083900000293AD190F86104002836D100208DF8E8 +:1083A0000000032001900DF109000AA91822EBF743 +:1083B000A7FB0A208DF8080000A8F0F77DFB002835 +:1083C00021D000208DF82A00ADF83000CDF82B0028 +:1083D0008DF82F008DF800001A2001900DF1090092 +:1083E0000AA91822EBF78CFB0A208DF8080000A8D8 +:1083F000F0F762FB002806D01C2200210846F0F7A7 +:1084000061FA022801D1022000E0012009B05DF8E4 +:1084100014FB00B589B01C2200210120F0F752FAAC +:10842000022801D1022026E001208DF8000003205F +:1084300001900A208DF8080000A8F0F73DFB002805 +:1084400001D1032017E001208DF800001A200190CF +:108450000A208DF8080000208DF80B00ADF81100FF +:1084600003908DF8100000A8F0F726FB002801D13A +:10847000032000E0012009B000BD70B586B0DFF830 +:10848000BC46206800280DD1DFF8B46630680028AB +:1084900008D1204600F055FE304621465822EBF721 +:1084A0003FFB02E0204600F04CFEDFF8986606F144 +:1084B0000C000ECE0EC00C3E02A8FAF7E9F83046CA +:1084C00002A90B22EBF71CFBDFF86C56707868767C +:1084D0003178307B814204D029760FF28060E9F751 +:1084E00070FE00A8EAF708F99DF8000028739DF8CF +:1084F000010068739DF80200A873BDF80300A5F899 +:108500000F00DFF83C66E86C21683268891A10FABF +:1085100081F0E86400F029F9304621465822EBF753 +:10852000FFFA012006B070BD10B5DFF80C46F0F779 +:10853000C7F96062002060750120A0750320E07516 +:108540004FF4FA70A062DFF80006E0624EF6602099 +:1085500020630FF22060E9F734FE00202077E0630B +:1085600020646064A0642083E076A0635822014602 +:10857000DFF8CC05EAF7CCFE58220021DFF8BC0575 +:10858000EAF7C6FEE9F79BFD20620020A0760120F5 +:10859000E0770020A077606ADFF8B015C0F87014AB +:1085A00000F27040DFF8A8154160DFF8A81581607F +:1085B0000FF20D01C1600FF241010161012010BDF8 +:1085C00080B5DFF87405416A91F86114002901D182 +:1085D000002002BD90F91400012801D1012001E022 +:1085E00000F09FF840B202BDDFF84C050021416366 +:1085F000017501207047000070B5DFF83C3593F934 +:108600001420012A2BD15A6B002A20D040F24914A1 +:108610000D7814FB050501262E700D7814FB050559 +:108620006E700D7814FB05051C26AE700D7814FBDA +:1086300005050126EE700D7814FB0505AA800D785E +:1086400014FB0500C0F806300878401C087011467D +:108650000FF23850E9F7B5FDBDE87040C4E7DA7FA6 +:10866000012A23D140F249140A7814FB02020125A1 +:1086700015700A7814FB020255700A7814FB020286 +:108680001C2595700A7814FB02020225D5705A7FCA +:108690000B7814FB030082720878401C08701146A6 +:1086A0000FF20050BDE87040E9F78BBD70BD014688 +:1086B000891E012903D9891E012905D908E0DFF89F +:1086C000781401224A7503E0DFF86C1400224A7521 +:1086D00001460FF2E840E9F774BDDFF85C1400EBE7 +:1086E00080028A6201460FF2EC40E9F76ABD38B5B4 +:1086F0000446DFF8445441F2883010FB04F0E8628D +:10870000F0F722FB0022DFF85034F0F72BFBFCF7E8 +:10871000E3FA286321460FF2D040BDE83440E9F780 +:1087200050BD38B50024DFF81054686A90F838144A +:10873000002903D190F83904002812D00120E877ED +:10874000FAF701FD6877A97F002900D1A877A97FF2 +:10875000884208D0012801D0022800D10124A8773E +:1087600001E02046E877204632BDF0B583B0002511 +:1087700000A829460A4606C0DFF8BC43E06B10F1AA +:10878000100F01D21430E063E07E002800F0CC80AE +:10879000022801D06ED315E1217E042936D1607DF7 +:1087A000002814D1606C14306064E16A8842C0F023 +:1087B0000981E26B206B8242C0F004810125002018 +:1087C000606404210FF23440E9F7FBFCFAE0104644 +:1087D0006064206A817AA27E114310D1E26B206B23 +:1087E000824205D3012504210FF22840E9F7E9FC74 +:1087F0000FF23840E9F7E5FC0120A076E2E0807A4C +:10880000012840F0DF802846A076DBE0022901D075 +:10881000032915D1206C1430206442F21172904269 +:10882000C0F0D080E26B206B904280F0CB800125BD +:108830000020206403460FF20840E9F7C2FCC1E0C3 +:10884000012940F0BF80A06C00F11403A3644EF630 +:1088500061208342C0F0B680E26B206B904280F0D2 +:10886000B18001250020E07629460FF2F030E9F7CB +:10887000A8FCA7E0217E022901D003290FD1E36CD7 +:10888000A06A8342C0F09E80E26B206B8242C0F0FF +:10889000998001250FF2E030E9F793FC92E004297A +:1088A0002BD1606C14306064617E002915D142F2D6 +:1088B00011718842C0F08680E26B206B904280F09C +:1088C000818001250220E0760020606403460421B7 +:1088D0000FF2C030E9F775FC74E0E26B206B904258 +:1088E00070D201250220E076002060640346042156 +:1088F0000FF2BC30E9F765FC64E0012962D1A06C9D +:1089000000F11403A3644EF6612083425AD3E26B54 +:10891000206B904256D201250020E07629460FF2C6 +:10892000AC30E9F74EFC4DE0217E022917D1206CD6 +:10893000143020641146616441F28931884241D388 +:10894000206BE16B88423DD20120E0761046206426 +:10895000012502210FF29030E9F733FC32E00429BF +:1089600017D1606C143060641146216441F2893182 +:10897000884227D3206BE16B884223D20220E07625 +:1089800010466064012504210FF27430E9F719FCE8 +:1089900018E0032916D1206C14302064114661645C +:1089A00041F2893188420DD3206BE16B884209D2B4 +:1089B0000120E07610462064012503210FF2583093 +:1089C000E9F7FFFB207F012809D10020207701254E +:1089D0002846207601460FF25830E9F7F2FB012DC8 +:1089E00040F0A780267E042E36D1A06B451CA563DF +:1089F000606B002809D1207B6070607BA070A07B39 +:108A0000E070002020710520606304208DF80000D4 +:108A100000A8042141708170617D012902D10121EA +:108A2000C17001E00021C170042101712570666BE5 +:108A3000052200A93019EBF79EF8701D6063002D28 +:108A40006DD0012020750020A063E26B04210FF29D +:108A5000F420E9F7B6FB62E0022E01D0032E2ED1FE +:108A6000A06B451CA563606B002809D1207B60705A +:108A7000607BA070A07BE070002020710520606307 +:108A800002208DF8000000A8022141708170C170A1 +:108A900001712570676B052200A93819EBF76BF897 +:108AA000781D6063002D3AD0012020750020A0635E +:108AB000E26B31460FF2A820E9F783FB2FE0012E8D +:108AC0002DD1A06B451CA563606B002809D1207BCC +:108AD0006070607BA070A07BE0700020207105209A +:108AE000606301208DF8000000A8012141708170B1 +:108AF000C17001712570666B052200A93019EBF772 +:108B00003AF8701D6063002D09D001202075002007 +:108B1000A063E26B01210FF26020E9F752FB002015 +:108B2000E06320646064A064E0640FF26820E9F709 +:108B300048FBF7BD00000000745C0120C85A01200A +:108B4000705A01208C62012020BF02007D83010841 +:108B5000138401087B8401080000E03F5B4150441E +:108B600052204C545D205472616E73204D6F6465C9 +:108B7000202564005B41504452204C545D20494EF6 +:108B8000495420303231372D330000005B415044CE +:108B900052204C545D2042756666657253697A6551 +:108BA0003A2564005B41504452204C545D2053747C +:108BB0006179496E666F3A25640000005B4150445C +:108BC00052204C545D2067707320537461202564DB +:108BD0000000000041504452205365745F535755C4 +:108BE0004E2025640000000041504452205365741B +:108BF0005F54575553202564000000005B415044EA +:108C000052204C545D205245512D56312025642070 +:108C1000256400005B41504452204C545D20524575 +:108C2000512D563220256420256400005B415044BC +:108C300052204C545D2041505F4E4F54534C5000D5 +:108C40005B41504452204C545D205245512D5633C7 +:108C50002025642025642025640000005B415044E9 +:108C600052204C545D205245512D5634202564200D +:108C700025642025640000005B41504452204C5480 +:108C80005D205245512D5731202564202564202533 +:108C9000640000005B41504452204C545D2052451A +:108CA000512D5732202564202564202564000000C2 +:108CB0005B41504452204C545D205245512D573356 +:108CC0002025642025642025640000005B41504479 +:108CD00052204C545D205245512D5734202564209C +:108CE00025642025640000005B41504452204C5410 +:108CF0005D205245512D533120256420256400000C +:108D00005B41504452204C545D205245512D53320A +:108D100020256420256400005B41504452204C54BF +:108D20005D205245512D53332025642025640000D9 +:108D30005B41504452204C545D2041504453542CCC +:108D4000202564005B41504452204C545D20566500 +:108D50006869636C653A2025642025640000000082 +:108D60005B41504452204C545D2057616C6B3A205B +:108D700025642025640000005B41504452204C547F +:108D80005D2053746174696F6E6172793A20256455 +:108D9000202564005B41504452204C545D205265B4 +:108DA00073657400DFF8DC0B017B00EB810282ED60 +:108DB000040ADFF8D42B02EB8103C3ED000A02EBB7 +:108DC000810282ED101A427B102A01D2521C42739A +:108DD000491C0173C9B2102901D1002101737047E8 +:108DE0002DE9F0432DED028B0024DFF8985B687BC2 +:108DF000022801D2204669E02646DFF88C9B01E07C +:108E00000024761C687B86425BDA287B002803D12D +:108E10000F274FF00E0805E0471EB7F1010801D5F6 +:108E200008F1100805EB870090ED040A05EB8800B7 +:108E3000D0ED040A30EE600A10EE100AF0F764F884 +:108E400021F00041F0F788F808EE100A09EB8700DE +:108E500090ED000A09EB8800D0ED000A30EE600AC0 +:108E600010EE100AF0F750F821F00041F0F774F816 +:108E700008EE900A09EB870090ED100A09EB8800D4 +:108E8000D0ED100A30EE600A10EE100AF0F73CF850 +:108E900021F00041F0F760F800EE100ADFEDB10AB2 +:108EA000B4EE608AF1EE10FA09DAF4EE608AF1EEBF +:108EB00010FA04DAB4EE600AF1EE10FAA0DB641CDA +:108EC0009FE7E4B2042C8041C043C00FBDEC028B8D +:108ED000BDE8F0832DE9F0432DED068B87B0B0EEB1 +:108EE000408AF0EE608AB0EE419AF0EE619A064652 +:108EF000DFF8AC7A87ED000AB0EE68AA87ED01AA28 +:108F0000F0EE49AAC7ED02AA4FF00A08DFF87C5A32 +:108F1000B5F90E0010FB08F0B5F91010A0EB01092F +:108F2000314689B238460BF08DFADFF8644A201DCD +:108F30000AF08FFD207910FB08F0A17900EB010801 +:108F40001FFA88F8B8F12A0F12D10FFA89F9B9F18E +:108F5000000F0DD5206D002807D10AF0A0F90120DF +:108F600020650FF69420E9F72CF90120606523E0D5 +:108F7000206D012807D10AF09EF9002020650FF628 +:108F80008420E9F71EF9606DB8F1280F0CDB00288A +:108F900004D10C210FF67820E9F713F90120606560 +:108FA0000C200AF069F907E0012803D10FF67420BC +:108FB000E9F707F90020606594ED0F0AF0EE480A22 +:108FC000B4EE600AF1EE10FA1ED194ED100AB4EE80 +:108FD0004A0AF1EE10FA17D194ED110AB4EE6A0ABA +:108FE000F1EE10FA10D1A06D401CA065152815D324 +:108FF000E06BEFF789FF02460B460FF63420E9F7E6 +:10900000E0F80020A06509E0B0EE480A84ED0F0A00 +:1090100084ED10AAC4ED11AA0020A06597EC030A04 +:10902000FFF7C0FE207A02283DD1304680B2B0EE74 +:10903000690A0BF0D1FF314689B2384609F0FCFBD2 +:1090400028460AF08DF8286801280FD108F00CFD99 +:1090500028460AF085F82C22294604F10C00EAF78C +:109060008AFD0FF6D810E9F7ACF828E0294684B05D +:1090700068462C22EAF754FD0FBC00F067F900F0B7 +:10908000E3FA00281BD0A889002818D10FF6B810E1 +:10909000E9F797F8012020720AF078F80120208083 +:1090A000022060800BE0012809D1FFF799FE00281B +:1090B00005D00FF69C10E9F784F80220207200F02A +:1090C00006F8002007B0BDEC068BBDE8F083DFF8A2 +:1090D000C008C16C0288002A0FD14288002A0CD136 +:1090E000C27A521CC272D2B2072A25D30122028050 +:1090F000098C41800021C172704701F12002528D1C +:10910000002A0DD0042A03D0052A01D0082A02D350 +:109110000322028001E002220280098C4180704714 +:109120000279042A04D104210180817941807047A9 +:1091300001220280098C41807047DFF85408007AD0 +:109140007047002805D0DFF84818C96C5822EAF7A4 +:10915000E7BC7047002803D0DFF8341809680160C5 +:10916000704700000100803F10B5002814D1DFF8DF +:10917000144800EE101AB8EE400A84ED010A2046A9 +:109180000AF01AF86068EFF7BFFE02460B460FF6CA +:10919000C800E9F716F824E0012814D1DFF8E44705 +:1091A00000EE101AB8EE400A84ED000A20460AF0DC +:1091B00003F82068EFF7A8FE02460B460FF6A8005A +:1091C000E8F7FFFF0DE002280BD1DFF8B847218157 +:1091D000204609F0F1FFB4F908100FF69C00E8F7FB +:1091E000F0FF0FF6A400E8F7ECFF42F2247001460E +:1091F0000FF6A400E8F7E5FF40F2D670DFF890170D +:10920000088701460FF6A000BDE81040E8F7D9BF77 +:109210002DE9F84F81468A4693460FF66C00E8F731 +:10922000D0FF42F2247001460FF66C00E8F7C9FF48 +:1092300040F2D6700146DFF8584721870FF66800E4 +:10924000E8F7BFFFDFF84C57582200212846EAF71D +:109250005FF8DFF84467582200213046EAF758F8F3 +:1092600058220021DFF83407EAF752F8E664DFF805 +:1092700030775822002107F10C00EAF749F8DFF8AF +:1092800004870C2200214046EAF742F82C220021F4 +:10929000DFF8F806EAF73CF82C22002104F10C0074 +:1092A000EAF736F800EE109AB8EE400A88ED010AA7 +:1092B00000EE10AAB8EE400A88ED000AA8F808B03F +:1092C0005B46524649460FF2F470E8F77AFF08F021 +:1092D000EBFA404609F070FF05F1200042F21071F0 +:1092E000C185018600218162022028842C22294622 +:1092F0003046EAF740FC012020720020A8F80C005C +:10930000A0640BF05BFE002060720120A0720020C0 +:10931000E0632064606438607860B86020600AF0C0 +:1093200037FB201D0AF095FB002020656065BDE835 +:10933000F18F10B596B009F01BFF044600A8FFF7A7 +:1093400000FF0098001916B010BD00000FB4F0B572 +:109350002DED028B89B0DFF838462069DFF83866DA +:10936000814205D1BDF84E20638B9A4200F0968071 +:109370000D1A02D5DFF86C0645199DED1A0AD4EDD9 +:109380000D0A70EE608AF5EE408AF1EE10FA03D510 +:109390009FEDAB0A78EE808A9DED180AD4ED0B0A9A +:1093A00030EE608AB5EE408AF1EE10FA03D59FEDFB +:1093B000A40A38EE008ABDF84E00C0B29DED190A2D +:1093C0000BF0FCFFB0EE401AA07A012802D0022870 +:1093D00037D047E0DFF8C475089710A983B0684616 +:1093E0002C22EAF79DFB0EBC9FED961AF0EE480A80 +:1093F000B0EE680A284600F061F8607A28186072BA +:10940000C0B206282ED3DFF88C05089010A983B0CF +:1094100068462C22EAF784FB0EBC9FED8A1AD7ED32 +:109420000E0A97ED090A386800F048F8607A401C87 +:109430006072582200213846E9F76AFF0220A072C4 +:1094400010E0DFF85005089010A983B068462C2280 +:10945000EAF766FB0EBCF0EE480AB0EE680A284652 +:1094600000F02CF8BDF84E00002809D15822002148 +:10947000DFF82805E9F74CFF002060720120A07298 +:109480002C2210A904F10C00EAF775FBDFF8041593 +:10949000E16458223046EAF76EFBE664BDF85000FE +:1094A000318C884203D0DFF8EC140884308409B092 +:1094B000BDEC028BF0BC5DF814FB00000EB4F0B5FF +:1094C0002DED048B8AB0B0EE409AB0EE608AF0EEDB +:1094D000418A1E9D05F12004BDF85A60A6852946E3 +:1094E000B0EE680A00F0E9F8DFF8A404806C002808 +:1094F0001AD194ED010A30EE090A84ED010A00F058 +:109500002FFA84ED010A6685BDF8580020851A9867 +:10951000606194ED060A30EE080A84ED060A00F058 +:1095200013FA84ED060A5BE0DFF8580407AA0AC8BC +:109530000AC20368136013A984B068462C22EAF7B4 +:10954000EFFA0FBCB0EE680A00F056F9D4ED010A4C +:1095500030EE800A84ED010A00F002FA84ED010A7F +:10956000F5EE408AF1EE10FA0BDD032E03D1062052 +:109570006085208510E0042E0ED1082060852085AE +:109580000AE0032E03D107206085208504E0042E25 +:1095900002D10920608520859DED1A0AF6EE000AA9 +:1095A00020EE200A84ED050AA069EFF7ADFC06461F +:1095B0000F4618EE100AEFF7A7FC0022DFF8E4339D +:1095C000EFF7D0FB32463B4600F0F6FBEFF7C4FC6A +:1095D00000EE100A84ED060A00F0B6F984ED060AE2 +:1095E0001C98EFF791FCDFF8C023DFF8C033EFF7EA +:1095F000B9FBEFF7B1FC00EE100A84ED070ADFEDCE +:109600007D0AB4EE600AF1EE10FA02DBDFF8D8034F +:10961000E06115986062608D002801D100206062D1 +:109620000020206218986063BDF866002086BDF8AF +:109630005C0028840AB0BDEC048BF0BC5DF810FB24 +:10964000002474490000000080B509F0C3FD40F615 +:10965000B93188428041C043C00F02BD38B50D46C4 +:1096600005F11004A18F032912D1B5EE400AF1EEE5 +:1096700010FA06DD29694018286100F07DF928619B +:1096800031BD61684018606000F076F9606031BDFE +:10969000042911D1B5EE400AF1EE10FA06DDA168F9 +:1096A0004018A06000F068F9A06031BDE168401882 +:1096B000E06000F061F9E06031BDF0B52DED028BA6 +:1096C00081B00546B0EE408A0C462068281820601C +:1096D00000F052F9206018EE100AEFF715FC21F0A7 +:1096E000004100221346FCF7F3FA45D2AC4EB069B4 +:1096F000072831D2A64FB96C00292DD106281CD1DC +:10970000E1684018E06000F037F9E0602146B0EE13 +:10971000480AB069FFF7A2FFE0682818E06000F08F +:109720002BF9E0602146B0EE480A2846FFF796FF85 +:1097300000F04EF80120B8640AE0B4F84A000428AA +:1097400003D170692818706102E03069281830610F +:10975000B0692818B06137E0E0682818E06000F0D0 +:109760000BF9E0602146B0EE480A284601B0BDEC96 +:10977000028BBDE8F04071E7B4F84A00032802D03C +:10978000042807D00DE060682818606000F0F4F845 +:1097900060600CE0A0682818A06000F0EDF8A06000 +:1097A00005E060682818606000F0E6F860607C4EB4 +:1097B000B069072803D2002801D000F00FF800F0AC +:1097C00007F873480021816401B0BDEC028BF0BD45 +:1097D00073480021016141618161704770486D49A2 +:1097E0004A6803699A184A608A68406980188860E4 +:1097F000704700000100C8410FB430B52DED088B53 +:10980000B0EE408ADFED6A8A9FED699ADDED149A29 +:1098100019EE900AEFF778FB41EC1A0B9FED65BB50 +:10982000BDF83A00042853EC1A2B644824D164494B +:10983000EFF798FA53EC1B2B00F0BEFAEFF78CFB16 +:109840000BEE100AB5EE408AF1EE10FA38D453EC64 +:109850001A2B5E485B49EFF785FA04460D4618EE71 +:10986000100AEFF751FB22462B46EFF77BFAEFF792 +:1098700073FB09EE100A23E05349EFF773FA53EC38 +:109880001B2B00F099FAEFF767FB0BEE100AB5EE11 +:10989000408AF1EE10FA13D453EC1A2B4B484C4982 +:1098A000EFF760FA04460D4618EE100AEFF72CFBAE +:1098B00022462B46EFF756FAEFF74EFB09EE100A59 +:1098C000F5EE409AF1EE10FA18D09DED0D0AB5EEC6 +:1098D000400AF1EE10FA11D010EE100AEFF714FB67 +:1098E00000223C4BEFF73EFA02460B4600203A4975 +:1098F000FCF750FBEFF730FB08EE900A3BEE090A4D +:1099000010EE100AEFF700FB344A384BEFF72AFA53 +:1099100004460D461698EFF7F7FA22462B46EFF766 +:1099200021FA04460D4618EE900AEFF7EDFA2246AA +:109930002B46EFF717FAEFF70FFB00EE100ABDEC1E +:10994000088B30BC5DF814FBDFED250AB4EE600A2D +:10995000F1EE10FA03DBDFED260A30EE200A704745 +:10996000DFED1F0AB4EE600AF1EE10FA03DBDFED63 +:10997000200A30EE200A70471A49884201D31D4957 +:1099800008187047245C01204450012070600120B9 +:10999000B058012068590120C0590120185A0120EF +:1099A000485501200000E03FB81E85EB51B8AE3F9E +:1099B000000000000000000000000C409A999999F6 +:1099C0009999C93FCCCCEC3F9999B93FCDCCCCCC3F +:1099D000CCCCFC3F00004E400000F03F7B14AE4773 +:1099E00001247449819698000000C841E17A743FCF +:1099F000002474C9806967FF50443A204250204FC8 +:109A00004E00000050443A204250204F464600008D +:109A100050443A20494E545F5354455028256429F8 +:109A20000000000050443A20455849542056480050 +:109A30005044204E41432025660000005044202D14 +:109A40003E204F46520000005044202D3E2057003B +:109A50005044202D3E20520050443A5365744865CE +:109A6000696768742025660050443A5365745765E9 +:109A7000696768742025660050443A5365744765E9 +:109A80006E646572202564005044203A20313846C7 +:109A900045423134000000005B4D5F50445D20566C +:109AA00065723A20256400005B5052495F50445D66 +:109AB000205665723A2025640000000050443A2088 +:109AC0002564202564202564000000000FB400B543 +:109AD0008FB001208DF80400AA208DF802003C20F0 +:109AE0008DF803000020ADF83A000A208DF8200020 +:109AF0000DF1210000A91822EAF702F800208DF8E4 +:109B000018000320079006A8EEF7D6FFF7F70CF928 +:109B100001200FB05DF814FB00B589B00020ADF84E +:109B200022000A208DF8080000208DF809008DF829 +:109B30000A0001208DF800000320019000A8EEF734 +:109B4000BBFF012009B000BD38B5002000902648B9 +:109B5000446C00F039F8012812D1F7F7E1F80090D1 +:109B600004F10C056A7D00A9E868E368C018EAF70B +:109B700002F80120A874002000F023F8F7F7D4F8C9 +:109B8000012032BD80B5EEF79BFE184908601849E8 +:109B9000C0F8881500F28850164941601649816066 +:109BA0000FF20D01C1600FF25D010161012002BDE4 +:109BB0000E48006890F87905002801D10020704710 +:109BC0000BE00E49087070470C480078704780B56C +:109BD000002000F006F8012002BD094890F90000BD +:109BE0007047074908707047006000202866012010 +:109BF000CD9A0108199B0108499B0108A166012023 +:109C0000A066012018B440F249120B7812FB03033E +:109C100001241C700B7812FB03035C700B7812FBA1 +:109C2000030323249C700B7812FB03000022C270F4 +:109C30000878401C087011BCC9E700000FB400B5DB +:109C40008FB001208DF80400AA208DF802003C207E +:109C50008DF803000020ADF83A000A208DF82000AE +:109C60000DF1210000A91822E9F74AFF00208DF824 +:109C700018000320079006A8EEF71EFFF7F759F823 +:109C800001200FB05DF814FB00B589B00020ADF8DD +:109C900022000A208DF8080000208DF809008DF8B8 +:109CA0000A0001208DF800000320019000A8EEF7C3 +:109CB00003FF012009B000BD38B52848046B00F04F +:109CC0003DF8012816D101208DF800000FF2E000C8 +:109CD000E8F777FA04F10C056A7D00A9E868E36803 +:109CE000C018E9F748FF0120A874002000F023F80D +:109CF000F7F71FF8012032BD80B5EEF7E1FD1849F6 +:109D000008601849C0F8E81400F2E84016494160BC +:109D1000164981600FF20D01C1600FF25D01016112 +:109D2000012002BD0E48006890F8D904002801D136 +:109D3000002070470BE00E49087070470C4800780F +:109D4000704780B5002000F006F8012002BD0948E8 +:109D500090F90000704707490870704700600020C4 +:109D60002C6601203D9C0108899C0108B99C0108D2 +:109D7000A3660120A266012018B440F249120B78B4 +:109D800012FB030301241C700B7812FB03035C70AD +:109D90000B7812FB03031F249C700B7812FB03004B +:109DA0000022C2700878401C087011BCC9E700008E +:109DB00053442D450000000070B44FF0004591EA77 +:109DC000030C44BF6B40FCF72FB800BF841A71EB43 +:109DD000030603D2001BB141121973414FF4001C5A +:109DE0001CEB410F34BF7CEB430443E00C0DA4EBB0 +:109DF0001356352E50DC45EAC323DB0A45EAC12160 +:109E0000C912B6F120050DDD63FA05F6EB4086EACE +:109E10000305124218BF45F00105C01851F10001B9 +:109E20000CD213E062FA06F5F2405540F3415A4075 +:109E3000B340F3405A408018594107D349085FEABC +:109E400030005FEA350528BF45F0010501F58011B6 +:109E5000420875F1004250F1000041EB045170BC22 +:109E60004FF4001C1CEB410F38BF70470020090D58 +:109E7000090570471CEB410F10D252EA43060BD084 +:109E8000BCEB410F05D80C0DAB43661E342EB5DD7F +:109E900002E0AB438018594170BC704770BC7047FA +:109EA00051EC100B00B500F003F841EC100B00BDB5 +:109EB00040F2FF7C0B0D4DD0634566D230B421EAF1 +:109EC000035141F4801103F2FD3C5FEA5C0C01D3C5 +:109ED00000184941890041EA907180004FF4401414 +:109EE0000023E202D50AB1F5100107D46D081DD296 +:109EF000091B641900184941491BF7D56D080AD29E +:109F00000919641B00184941491BEFD56D08F7D3A7 +:109F100001E0520817D0C01861419B1AAC410018EB +:109F20004941801AA941F4D452080AD0C01AA1416B +:109F30009B186C4100184941801AA941E9D4520884 +:109F4000F4D15B1C6C4161084FEA330001EB0C510A +:109F500030BC704750EA0103FBD030B4B1FA81F352 +:109F600011B9B0FA80F41B190B3BB3F120042FBFD9 +:109F700000FA04F19940C3F1200420FA04F438BF38 +:109F800021439840D3F101039DE76345E1D011F5EA +:109F9000801FDED850EA4101DBD0D9430BF0E8BC8A +:109FA00038B5DFF82C4B0020A065E06520666066C0 +:109FB000A066A081DFF8A05B4FF42072014605F196 +:109FC0004000E9F7A5F94FF42072002105F5307043 +:109FD000E9F79EF99022002105F5B860E9F798F9B4 +:109FE000402200212846E9F793F940220021DFF8BA +:109FF0006C0BE9F78DF940220021DFF8640BE9F7DB +:10A0000087F940220021DFF85C0BE9F781F9402253 +:10A01000002105F5A860E9F77BF94022002105F54C +:10A02000B060E9F775F94022002104F11800E9F762 +:10A030006FF940220021DFF8C00BE9F769F94022EF +:10A040000021DFF8B80BE9F763F905220021DFF8FA +:10A05000B00BE9F75DF905220021DFF8D40BE9F731 +:10A0600057F9052200212046E9F752F9DFF8CC0B19 +:10A07000002101810846E0666067A067E067206113 +:10A08000A0602067C4F880000220A0730846E07337 +:10A0900031BDDFF8A80BDFF8A81B0161DFF8501C09 +:10A0A00041618161322141814FF4967181814B215F +:10A0B000C1814FF496710FF20800E8F782B80000F2 +:10A0C0004C5420496E6974535241202564000000AD +:10A0D00080B50FF21400E8F774F8DFF8F4090021F6 +:10A0E000017301BD000000004C542053746F7000D8 +:10A0F0007047DFF8481B4FF47A72504308610146FD +:10A100000FF20400E8F75DB84C542053504420256A +:10A1100064000000DFF8242B4FF47A71484350614B +:10A12000014691610FF20400E8F74BB84C542057F8 +:10A13000504420256400000010B5DFF8004B60811A +:10A14000EEF702FE0022DFF83C3CEEF70BFEFAF7DA +:10A15000ADFDE08161890FF20C00BDE81040E8F729 +:10A1600030B800004C5420535220256400000000F9 +:10A17000DFF8C81A888101460FF20400E8F721B819 +:10A180004C54205341522053544120256400000078 +:10A190000EB410B587B0DFF8A44ABDF86E000028F1 +:10A1A0001CD1DFF8C40CD0E90023CDE90223D4E9A7 +:10A1B0000001CDE90001DDE9022300F09BFD2169EA +:10A1C0004FF47A724243914206D201460FF22800C0 +:10A1D000E7F7F7FF01200AE0002008E004A8E8F70D +:10A1E0008BFA204604A90522E9F78AFC002007B073 +:10A1F00010BC5DF810FB00004C5420535420436BFE +:10A2000020256400DFF8C8080121C16581650021AF +:10A21000416681667047DFF8B808012101668165F3 +:10A220007047DFF8AC08806D7047DFF8A4080021A4 +:10A2300081650FF20800E7F7C4BF00004C542052BC +:10A24000455345545F434D4452440000DFF88008B5 +:10A250000021C1650FF20400E7F7B3BF4C54205250 +:10A26000455345545F504F5352455100DFF8600845 +:10A27000002101660FF20400E7F7A3BF4C542052FF +:10A28000455345545F504F4941434B00DFF8400868 +:10A29000012141660021816601727047DFF83008B4 +:10A2A0000121816670472DE9F04106460F46904630 +:10A2B000DFF8A848DFF8A058204629464022E9F7F1 +:10A2C0002FFC85ED000B85ED021B85ED042B85F839 +:10A2D000296085F82A7085F82B80D4E904230020B2 +:10A2E00001460BF04BFB10D1D4E900230BF046FBE9 +:10A2F0000BD1D4E902230BF041FB06D120462946BD +:10A300004022BDE8F041E9F70BBCBDE8F08110B593 +:10A31000DFF8BC47606E01280AD1DFF84408DFF897 +:10A3200038184022E9F7FCFB00206066012010BDD0 +:10A33000002010BD10B5DFF89847606E01280AD1E3 +:10A34000DFF82008DFF810184022E9F7E9FB0020C9 +:10A350006066012010BD0020606610BD0020DFF89F +:10A3600070178A6E012A01D18866012070470FB4E8 +:10A3700000B59DB0DDE92E23FBF74CFDCDE90C01C6 +:10A38000DDE92001DDE93023FBF744FDCDE90E01D5 +:10A390000CA984B068464022E9F7C2FB0FBC00F06C +:10A3A00037FC53EC102B0020DFF8541CEEF7DAFCDE +:10A3B00041EC100B1DB05DF814FB00000FB470B53C +:10A3C0002DED048B9EB0DFF80857687A002801D184 +:10A3D000002075E00A2801D30A2600E0AE7A9FED3E +:10A3E000678B002422E0DFF8701701EB801000F586 +:10A3F00030710CA84022E9F793FB26A984B0684687 +:10A400004022E9F78DFB0FBCFFF7B1FFB0EE409A99 +:10A41000F0EE609A51EC190B53EC182BFBF740FC53 +:10A4200003D2B0EE498AF0EE698A641CE4B2204699 +:10A43000B042D8DBDFF804088089EEF785FC0246DD +:10A440000B4651EC180BFBF72BFC30D226A982B03F +:10A4500068464022E9F764FB0CBC0EA800F0FCFD46 +:10A46000DFF8F44694F969058DF8700004F269503C +:10A4700090F901108DF8711090F902008DF87200BA +:10A48000B4F86C05ADF87300DDE90E23DDE91C01BD +:10A4900000F030FC00F04DF8C4F87805402204F5D7 +:10A4A000A86105F11800E9F766FB002008E053EC0D +:10A4B000182B0FF21800E7F784FE0120C5F8800082 +:10A4C0001EB0BDEC048B70BC5DF814FB4C542053E3 +:10A4D00041204F5554202566000000001FB5DFF8CD +:10A4E000784694F969058DF8000004F2695090F9F6 +:10A4F00001108DF8011090F902008DF80200B4F8F7 +:10A500006C05ADF80300DFF86009D0E90023CDE960 +:10A510000223DDE9000100F0EDFB00F00AF8C4F8C9 +:10A520007805402204F5A861DFF8D80CE9F723FB91 +:10A530001FBD70B5DFF8CC4ADFF89455E97B04FB0A +:10A5400001062A6D96420DD2901BDFF8BC1C884292 +:10A5500008D331460FF21000E7F733FEA619E87B67 +:10A56000401CE873304670BD4C5420646966666FC9 +:10A570006C642025642025640000000000000000B9 +:10A58000006AF8400FB42DE9F0432DED088B87B039 +:10A59000DFF89C46DFF8D098D9E90001CDE9040145 +:10A5A000D4E90001CDE90201DDE9042300F0A2FBBA +:10A5B000DFF81C55A97ADFF8A06506EB81129DED46 +:10A5C000160B82EDB00B02F530739DED188B83ED09 +:10A5D000028B9DED1A9B83ED049B237882F8E93270 +:10A5E00002F2E92367785F70A7789F7000B2C2F823 +:10A5F000F802481CA872C0B20A2801D10020A87233 +:10A60000687A471C6F72FFB2781EEEF793FB41EC3D +:10A610001A0B06F2405853EC1A2BD8E90201EEF758 +:10A62000A1FB53EC182BFFF7C7FB41EC180B53ECC5 +:10A630001A2BD8E90401EEF795FB53EC192BFFF721 +:10A64000BBFB41EC190B3846EEF77EFB41EC1B0BD4 +:10A6500053EC1A2B06F5A86041680068EEF782FB00 +:10A66000DDE91623FFF7A8FB53EC1B2BFBF792FC4D +:10A6700006F5A862C2E9000151EC180B53EC1B2B44 +:10A68000FBF788FCC8E9020151EC190B53EC1B2BBA +:10A69000FBF780FCC8E9040106F26950012F0AD1DA +:10A6A000217886F8691561784170A1788170B4F8D5 +:10A6B0000310A6F86C1596F969158DF8001090F93D +:10A6C00001108DF8011090F902008DF80200B6F823 +:10A6D0006C05ADF80300D9E90001CDE90201DDE91F +:10A6E0000223DDE9000100F005FBFFF722FFC6F8B9 +:10A6F00078054022414605F11800E9F73CFA687AEE +:10A70000012806D10120A8730FF2C830E7F759FDE0 +:10A7100005E00320A8730FF2D010E7F752FD07B051 +:10A72000BDEC088BBDE8F0035DF814FB0FB42DE918 +:10A73000F0472DED0A8B86B0DFF82CA7DAE900018F +:10A74000CDE90401DFF8B804D0E90023CDE9022304 +:10A75000DDE90423DDE9020100F0CCFA8046DC4C9F +:10A76000A07A461E36B2002E01D50A3636B2607A7D +:10A77000EEF7EAFA41EC180BDFF8DC5305EB86162E +:10A7800053EC182B05F5A86041680068EEF7EAFA6B +:10A79000D6E9B023FBF73EFB41EC190B06F5307709 +:10A7A00005F2405953EC182BD9E90201EEF7DAFA19 +:10A7B000D7E90223FBF72EFB41EC1A0B53EC182BC5 +:10A7C000D9E90401EEF7CEFAD7E90423FBF722FB1F +:10A7D00041EC1B0B9FEDE4CBD6E9B023DDE918017A +:10A7E000FFF7EAFA53EC1C2BEEF7BCFAC6E9B0010E +:10A7F000D7E90223DDE91A01FFF7DEFA53EC1C2B3F +:10A80000EEF7B0FAC7E90201D7E90423DDE91C013C +:10A81000FFF7D2FA53EC1C2BEEF7A4FAC7E90401B8 +:10A82000C7F8388053EC1A2BD7E90201FFF7C4FAB6 +:10A8300041EC1A0B51EC1B0BD7E90423FFF7BCFAD0 +:10A8400041EC1B0B51EC190BD6E9B023FFF7B4FA1E +:10A8500053EC182BFBF79EFB05F5A862C2E900013B +:10A8600051EC1A0B53EC182BFBF794FBC9E90201CE +:10A8700051EC1B0B53EC182BFBF78CFBC9E90401C3 +:10A8800095F969058DF8000005F2695090F90110FD +:10A890008DF8011090F902008DF80200B5F86C05F2 +:10A8A000ADF80300DAE90001CDE90201DDE9022398 +:10A8B000DDE9000100F01EFAFFF73BFEC5F8780560 +:10A8C0004022494604F11800E9F755F90320A07326 +:10A8D0000FF21400E7F775FC06B0BDEC0A8BBDE87B +:10A8E000F0075DF814FB00004C54204152205354F3 +:10A8F000000000000FB42DE9F0432DED0A8B87B066 +:10A900009FED998BDDE91823DDE92801FFF754FA63 +:10A9100053EC182BEEF726FA41EC190BDDE91A235C +:10A92000DDE92A01FFF748FA53EC182BEEF71AFA83 +:10A9300041EC1A0BDDE91C23DDE92C01FFF73CFAA1 +:10A9400053EC182BEEF70EFA41EC180BAC4CDFF879 +:10A950001895D9E90001CDE90401D4E90001CDE958 +:10A960000201DDE9042300F0C5F9594DA97ADFF8A9 +:10A97000106B06EB811282EDB09B02F5307383ED14 +:10A9800002AB83ED048B237882F8E93202F2E923EB +:10A9900067785F70A7789F70B4F80330A2F8EC3244 +:10A9A000C2F8F802481CA872C0B20A2801D10020DF +:10A9B000A872687A471C6F72FFB2781EEEF7BAF978 +:10A9C00041EC1B0B06F2405853EC1B2BD8E902015B +:10A9D000EEF7C8F953EC1A2BFFF7EEF941EC1A0B1E +:10A9E00053EC1B2BD8E90401EEF7BCF953EC182B00 +:10A9F000FFF7E2F941EC180B3846EEF7A5F941EC08 +:10AA00001C0B53EC1B2B06F5A86041680068EEF7A1 +:10AA1000A9F953EC192BFFF7CFF953EC1C2BFBF7DB +:10AA2000B9FA06F5A862C2E9000151EC1A0B53EC21 +:10AA30001C2BFBF7AFFAC8E9020151EC180B53ECE1 +:10AA40001C2BFBF7A7FAC8E9040106F26950012F95 +:10AA50000AD1217886F8691561784170A1788170F2 +:10AA6000B4F80310A6F86C1596F969158DF8001066 +:10AA700090F901108DF8011090F902008DF8020094 +:10AA8000B6F86C05ADF80300D9E90001CDE9020183 +:10AA9000DDE90223DDE9000100F02CF9FFF749FDB3 +:10AAA000C6F878054022414605F11800E9F763F839 +:10AAB000687A012805D10120A8730FF21800E7F782 +:10AAC00080FB07B0BDEC0A8BBDE8F0035DF814FB1A +:10AAD000C04F01204C5420415220494E000000003C +:10AAE0000FB418B4DFF89C09C16E01EBC1021A4B18 +:10AAF00003EBC20202F5B8639DED020B83ED000B80 +:10AB00009DED040B83ED020B04AC94ED020B83ED81 +:10AB1000040B9DF8313082F8E93502F2E9530DF16A +:10AB2000310464785C700DF13104A4789C70BDF838 +:10AB30003430A2F8EC3502F2EC520DABDB68536115 +:10AB40003E4B5C8914839B895383002901D10121E9 +:10AB5000C16611BC04B07047D0F80020885D0120A8 +:10AB6000C85D0120085E0120000000000000E03FF9 +:10AB70000FB410B5DFF80C09C16E01EBC102DFF8AC +:10AB8000003903EBC20202F5B8639DED020B83EDC1 +:10AB9000000B9DED040B83ED020B04AC94ED020B56 +:10ABA00083ED040B9DF8313082F8E93502F2E95368 +:10ABB0000DF1310464785C700DF13104A4789C705F +:10ABC000BDF83430A2F8EC3502F2EC520DABDB6884 +:10ABD00053611A4B5C8914839B895383022901D2E8 +:10ABE000491CC166022181730FF21800E7F7E9FAE8 +:10ABF00010BC5DF814FB0000485E0120885E012057 +:10AC0000E86501204C54204152204F5500000000BF +:10AC10000FB480B59DED041B9DED020BF7F75CFDB5 +:10AC200001BC5DF814FBDFF85C08C06D70470000E4 +:10AC3000F0650120DFF84C08006E7047B861012014 +:10AC4000E093040010B5DFF838484022002104F5F5 +:10AC5000A860E8F75DFB4022002104F5B060E8F74A +:10AC600057FBDFF820484022002104F11800E8F7E4 +:10AC70004FFB40220021DFF81008E8F749FB0020D5 +:10AC80006072A0722061DFF804080021018108468B +:10AC9000E0730FF20C00BDE81040E7F792BA000035 +:10ACA0004C542052455345545F415350000000001E +:10ACB000DFF8D007C06E704700B5DFF8C41701F5A4 +:10ACC000B06001F5A8614022E8F72AFFDFF8B40779 +:10ACD0000021C16600BDC9B201EBC102DFF8A017B7 +:10ACE00001EBC20101F5B8614822E8F719BF000085 +:10ACF00060E316003FB581B04FF47A704EF66022E3 +:10AD0000DFF88C379DF904109DF90540544303FB8F +:10AD100001419DF9064014FB0011BDF9074001FAFD +:10AD200084F19DF90C409DF90D506A4303FB042208 +:10AD30009DF90E3013FB0020BDF90F2000FA82F0C0 +:10AD4000441A42F20F721319934205D200240FF2F3 +:10AD50003800E7F736FA07E0DFF83827944203DADD +:10AD6000DFF834271018441A2046EDF7E3FFDFF828 +:10AD70002C27DFF82C37EDF7F5FF05B0BDE83040A4 +:10AD8000F9F794BF0000F83F41542D4C54206469FA +:10AD900066662054696D6520526573657400000015 +:10ADA0002DE9F64382B081460B98BDF90B404EF673 +:10ADB0006025DFF8DC669DF908109DF909206A43DB +:10ADC00006FB01219DF90A204FF47A7712FB071147 +:10ADD00001FA84F1412808D15F18DFF8C8068742DC +:10ADE0000BD3DFF8C406C71907E0994204D2DFF895 +:10ADF000A8064018C71A00E0CF1A3846EDF7A4FF9E +:10AE00000022DFF8A836FBF7C5F8F9F74FFF8046B8 +:10AE10005FFA88F806FB18763046EDF795FF0022BA +:10AE2000DFF88C36FBF7B6F8F9F740FFC0B28DF8C3 +:10AE3000008001468DF8011005FB1060EDF784FFDE +:10AE4000DFF85826DFF85836EDF78CFFF9F72EFFBC +:10AE50008DF80200ADF80340484600A90522E8F746 +:10AE60004FFE04B0BDE8F083E065012010B400207F +:10AE7000DFF81016D1F88020012A04D10120002229 +:10AE8000C1F880201AE0DFF8B41DD1F87825D1F898 +:10AE9000B8359A4211D191F8692591F8A9359A42AD +:10AEA0000BD101F2A95201F269514B785478A342B7 +:10AEB00003D189789278914200D0012010BC70476C +:10AEC00000B58DB0DFF8BC05407A00280BD0DFF864 +:10AED000701D84B068464022E8F722FE0FBCFFF7E1 +:10AEE000FFFD012004E00FF20C00E7F76AF90020F3 +:10AEF0000DB000BD4C54204E6F2053500000000098 +:10AF000030B583B0DFF87C45217B61732073401E30 +:10AF1000052874D8DFE800F0031D2335445F00A83E +:10AF2000E7F7EAFBDFF81C5D284600A90522E8F7F1 +:10AF3000E7FDA86968610020E0720FF2CC00E7F736 +:10AF400040F96969DFF8000D03B0BDE83040E7F76C +:10AF500038B90FF2C000BDE83E40E7F732B900A8AB +:10AF6000E7F7CAFBDFF8DC5C284600A90522E8F712 +:10AF7000C7FD606FE8610FF2A800BDE83E40E7F74B +:10AF800020B900A8E7F7B8FBDFF8B80C00A9052244 +:10AF9000E8F7B6FD0FF29800BDE83E40E7F711B9BB +:10AFA00000202061DFF89C5C288140220146DFF808 +:10AFB000D804E8F7ADF900A8E7F79EFB284600A9FA +:10AFC0000522E8F79DFD606FE8610FF27400BDE8AF +:10AFD0003E40E7F7F6B800A8E7F78EFBDFF8645CC1 +:10AFE000284600A90522E8F78BFD606FE861002084 +:10AFF00020720FF25800BDE83E40E7F7E2B837BDD7 +:10B0000000408F40805101004C542D434B5F5354FE +:10B01000000000004C542D474554315354000000AB +:10B020004C542D434B5F55535F4D4F56000000006D +:10B030004C542D434B5F474554324E4400000000B2 +:10B040004C542D434B5F554C454156004C542D50AC +:10B0500041555345000000000CB400B583B09DF984 +:10B0600039108DF800100DF1390191F901108DF8AA +:10B0700001100DF1390191F902108DF80210002133 +:10B08000ADF8031000A90522E8F73AFD0EBC5DF803 +:10B090000CFB00002DE9F04F2DED0A8B9DB0824690 +:10B0A0009FED568BDFF8DC83B8F81000B8F81290EB +:10B0B000814502D25FFA89F901E0C0B28146DFF82A +:10B0C000CC03B0F90800461E00D50A36DFF8B0B34D +:10B0D0000BEB861797ED109B97ED12AB97ED14BB1A +:10B0E00001243CE0301A00D50A300BEB801505F145 +:10B0F00040010CA84022E8F713FD07F1400184B09D +:10B1000068464022E8F70CFD0FBCFFF730F9B0EEBF +:10B1100040CAF0EE60CA51EC180B53EC1C2BFAF746 +:10B12000BFFD03D2B0EE4C8AF0EE6C8A53EC1B2BC1 +:10B13000D5E91401FEF740FE41EC1B0B53EC192B33 +:10B14000D5E91001FEF738FE41EC190B51EC1A0B52 +:10B15000D5E91223FEF730FE41EC1A0B641CE4B271 +:10B1600020464845BEDB4846EDF7EEFD41EC1C0BA2 +:10B1700051EC1B0B53EC1C2BFAF70CFFCAE9040132 +:10B1800051EC190B53EC1C2BFAF704FFCAE9000130 +:10B1900051EC1A0B53EC1C2BFAF7FCFECAE9020126 +:10B1A000B8F81000B8F8121088421ED207F140011A +:10B1B0000CA84022E8F7B4FCDFF8901A84B0684687 +:10B1C0004022E8F7ADFC0FBCFFF7D1F8B0EE40CA63 +:10B1D000F0EE60CA51EC180B53EC1C2BFAF760FD33 +:10B1E00003D2B0EE4C8AF0EE6C8AB0EE480AF0EE74 +:10B1F000680A1DB0BDEC0A8BBDE8F08F00000000AE +:10B2000000000000D84F0120714301000FB42DE968 +:10B21000F0432DED068BA3B030A982B068464022E2 +:10B22000E8F77EFC0CBC0EA8FFF716FFDFF8201A2B +:10B2300082B068464022E8F773FC0CBC10A8FFF708 +:10B240000BFFDDE91023DDE90E01FFF753FD1E289A +:10B25000C0F209818D4EB6F90840DFF8249209EB5F +:10B260008410403030A94022E8F75AFC601C30813D +:10B2700000B20A2801D100203081824D288A0A2894 +:10B2800001D2401C2882688A401C6882288A0A28C9 +:10B2900001D2002700E0377A7B4CD4E9002300205C +:10B2A00001460AF06BFB2FD1D4E902230AF066FBBA +:10B2B0002AD1D4E904230AF061FB25D109EB8716D2 +:10B2C000DFF8908996F9690088F8000006F26900B5 +:10B2D00090F9011088F8011090F9020088F8020036 +:10B2E000B6F86C00A8F80300DFF8600906F1400129 +:10B2F0004022E8F715FC204606F140014022E8F71D +:10B300000FFC0020A063AEE012A8FFF7C3FEB0EE72 +:10B31000408AF0EE608ADFF83C89B089EDF714FDD1 +:10B3200053EC182BFAF7BCFC28D209EB871696F9D8 +:10B33000690088F8000006F2690090F9011088F8A9 +:10B34000011090F9020088F80200B6F86C00A8F825 +:10B350000300DFF8F80806F140014022E8F7E0FBBF +:10B36000204606F140014022E8F7DAFB0020A06306 +:10B3700068820FF61010E6F724FF74E0D8E90001A8 +:10B38000CDE90001DDE90E23FFF7B4FC074639469D +:10B390000FF60010E6F715FF70694FF47A717943E4 +:10B3A000884260D26E8A042E5DD3A06B00280DD136 +:10B3B0009DED120B84ED000B9DED140B84ED020B43 +:10B3C0009DED160B84ED040BA7633AE0701EEDF7BC +:10B3D000B1FC41EC190B3046EDF7B6FC41EC1A0B11 +:10B3E00051EC190BD4E90023EDF7BCFCDDE9302367 +:10B3F000FEF7E2FC53EC1A2BFAF7CCFDC4E900018E +:10B4000051EC190BD4E90223EDF7ACFCDDE9322352 +:10B41000FEF7D2FC53EC1A2BFAF7BCFDC4E902018B +:10B4200051EC190BD4E90423EDF79CFCDDE934233E +:10B43000FEF7C2FC53EC1A2BFAF7ACFDC4E9040189 +:10B44000A763214684B068464022E8F769FB0FBC39 +:10B45000FFF798F8A06B009053EC182B698A0FF651 +:10B460004400E6F7AEFE23B0BDEC068BBDE8F0036A +:10B470005DF814FB7047DFF8E007807B7047000041 +:10B48000D0F80020C04F0120485E0120B8610120A3 +:10B4900080EE3600F1D8FFFF005C2605FCA9F1D252 +:10B4A0004D62503F015C260500A4D9FA40774B411C +:10B4B000004CED40062821D8DFE800F004080C100D +:10B4C00014181C000FF2F470E6F77BBE0FF2F87050 +:10B4D000E6F777BE0FF60000E6F773BE0FF608003A +:10B4E000E6F76FBE0FF61C00E6F76BBE0FF62800FE +:10B4F000E6F767BE0FF63C00E6F763BE7047000054 +:10B500000EB42DE9F0412DED028B9FB006463D9C17 +:10B51000DFF84457686F0818686700A8E7F7ECF889 +:10B52000DFF83887404600A90522E8F7E9FA4046E7 +:10B5300090F90100294691F90110401A00D54042C6 +:10B54000022801D03A2806D1287BFFF7B3FFD8E9BB +:10B550000001C5E90001042C0AD1E86F401CE8672E +:10B560007043DFF8FC168842A441E443E40F02E094 +:10B570000020E8670446686FA96F411A332900DB91 +:10B58000A867297B062900F25083DFE811F0070045 +:10B590000D009100E3008E0135022C03FFF752FBF2 +:10B5A0000120FFF7ADFC40E327A983B0684658228D +:10B5B000E8F7B6FA0EBC304680B2FEF7E9FD002887 +:10B5C00043D0002C41D1D8E90001CDE903014D2041 +:10B5D0000090DFF870060369DDE903010A460146C1 +:10B5E00001A8FFF7DDFBDFF87C0601A90522E8F7DB +:10B5F00087FADFF8481682B068464022E8F790FAEA +:10B600000CBC1CA8FFF728FDD8E90001CDE900011A +:10B61000DDE90023DDE91C01FFF76CFB0446B4F50E +:10B62000967F07DD21460FF22870E6F7CAFDFEF788 +:10B63000E9FD06E00120686621460FF22070E6F77A +:10B64000C0FD0220FFF75CFCEFE2686E012840F0CD +:10B65000EC8200206866DFF8E465314684B0684615 +:10B660004022E8F75DFA0FBCFEF7A8FE2867012824 +:10B6700011D10020286706F5A86184B068464022F1 +:10B68000E8F74EFA0FBCFFF773FAFFF7DBFA0FF299 +:10B69000DC60E6F796FD002C40F0C782314684B0AE +:10B6A00068464022E8F73CFA0FBCFFF7AFFDBCE26A +:10B6B000FEF72DFE002836D00320FFF721FC687A24 +:10B6C000002822D0DFF8A065314684B068464022C9 +:10B6D000E8F726FA0FBCFEF771FE2867012814D19F +:10B6E00000202867DFF8581584B068464022E8F744 +:10B6F00017FA0FBCFFF73CFAFFF7A4FA0FF27C60D1 +:10B70000E6F75FFD0120FFF7FBFB002C40F08D8288 +:10B71000DFF8541584B068464022E8F701FA0FBC00 +:10B72000FFF774FD81E2FEF719FE002800F07D822C +:10B73000287A401C2872C0B2032803D30620FFF7E2 +:10B74000DFFB02E00120FFF7DBFB0FF24060E6F7D2 +:10B7500038FD6AE2686E012858D100206866687A70 +:10B76000002822D0DFF8D464314684B068464022F5 +:10B77000E8F7D6F90FBCFEF721FE2867012814D19F +:10B780000020286706F5A86184B068464022E8F7E3 +:10B79000C7F90FBCFFF7ECF9FFF754FA0FF2FC50B2 +:10B7A000E6F70FFD0120FFF7ABFBDFF8BC64002CD0 +:10B7B00008D1314684B068464022E8F7B1F90FBCA1 +:10B7C000FFF724FDDFF874140CA84022E8F7A8F96D +:10B7D000314684B068464022E8F7A2F90FBCFEF774 +:10B7E000C6FDB0EE408AF0EE608ADFF8580440896A +:10B7F000EDF7AAFA53EC182BFAF752FA06D20FF229 +:10B80000AC50E6F7DEFC0120FFF77AFBDFF834747A +:10B81000D8E90001CDE90201D7E90001CDE9000135 +:10B82000DDE90223FFF766FA696FFA69891AFA8976 +:10B830008A4207D20FF28450E6F7C3FC0120FFF7DB +:10B840005FFBF2E179694FF47A725043814280F0F4 +:10B85000EC81DFF8E81382B068464022E8F760F92F +:10B860000CBC1CA8FFF7F8FBD8E90001CDE90001EA +:10B87000DDE90023DDE91C01FFF73CFA0446B4F5DD +:10B88000967F07DDFEF7BEFC21460FF24050E6F73B +:10B8900098FC06E00120686621460FF24050E6F76A +:10B8A00090FC0420FFF72CFBBFE1FEF743FD0028CE +:10B8B00000F08380DFF8B473394684B068464022D4 +:10B8C000E8F72EF90FBCFEF779FD2867012820D193 +:10B8D00000202867DA4984B068464022E8F720F95A +:10B8E0000FBCFFF745F9FFF7ADF90FF20050E6F78F +:10B8F00068FC0120FFF704FB002C40F096813946DC +:10B9000084B068464022E8F70BF90FBCFFF77EFCD5 +:10B910008BE1D54E39460CA84022E8F701F93146B3 +:10B9200084B068464022E8F7FBF80FBCFEF71FFD25 +:10B93000B0EE408AF0EE608AC2484089EDF704FA22 +:10B9400002460B4651EC180BFAF7AAF91FD2687B96 +:10B950000528394608D184B068464022E8F7E0F867 +:10B960000FBCFEF7E3FE0CE00CA84022E8F7D8F885 +:10B97000314684B068464022E8F7D2F80FBCFEF7A3 +:10B98000B9FFFEF748FC0520FFF7BAFA4DE153EC8A +:10B99000182B0FF26440E6F714FC0120FFF7B0FA11 +:10B9A000002C40F04281394684B068464022E8F7D6 +:10B9B000B7F80FBCFFF72AFC37E1FEF7CFFC0028F1 +:10B9C00000F03381297A0FF23C40E6F7FAFB287A3F +:10B9D000401C2872C0B2032803D30620FFF790FA58 +:10B9E00023E1A349974841610FF22C40E6F7E9FBB8 +:10B9F0000320FFF785FA18E10320A873686E012879 +:10BA00005CD1002068668D4E314684B06846402285 +:10BA1000E8F786F80FBCFEF7D1FC2867012820D193 +:10BA20000020286706F5A86184B068464022E8F740 +:10BA300077F80FBCFFF79CF8FFF704F90FF2F0302E +:10BA4000E6F7BFFB0120FFF75BFA002C36D18749F0 +:10BA500084B068464022E8F763F80FBCFFF7D6FBD6 +:10BA60002CE031460CA84022E8F75AF87E4984B011 +:10BA700068464022E8F754F80FBCFEF778FCB0EEB9 +:10BA8000408AF0EE608A6F484089EDF75DF953EC2B +:10BA9000182BFAF705F911D20FF25C30E6F791FB9B +:10BAA0000120FFF72DFA002C08D1704984B06846B8 +:10BAB0004022E8F735F80FBCFFF7A8FB614FD8E943 +:10BAC0000001CDE90201D7E90001CDE90001DDE97E +:10BAD0000223FFF70FF9696FFA69891AFA898A4216 +:10BAE00007D20FF25830E6F76CFB0120FFF708FA97 +:10BAF0009BE07A694FF47A73584382423ED215290B +:10BB00003CD34E4E96F929008DF8700006F22900BC +:10BB100090F901108DF8711090F902008DF8720003 +:10BB2000D8E90001CDE90001DDE90023DDE91C01D0 +:10BB3000FFF7E0F80446B4F5967F07DDFEF762FBF9 +:10BB400021460FF20430E6F73CFB06E00120686670 +:10BB500021460FF20430E6F734FB0420FFF7D0F95A +:10BB6000E87A401CE872C0B203285ED3B86941008D +:10BB700079610FF20010E6F724FB56E0012C2FD17B +:10BB80002E4E96F929008DF8700006F2290090F9E2 +:10BB900001108DF8711090F902008DF87200D8E94B +:10BBA0000001CDE90001DDE90023DDE91C01FFF71B +:10BBB000A1F80446B4F5967F07DDFEF723FB214686 +:10BBC0000FF28420E6F7FDFA06E0012068662146C0 +:10BBD0000FF28420E6F7F5FA0120FFF791F924E04F +:10BBE000FEF77CFC21E0174FF989FA69801A81423F +:10BBF0000BD20FF27420E6F7E4FA0FF28020E6F79A +:10BC0000E0FA0120FFF77CF90FE0686E012807D108 +:10BC10000FF27420E6F7D5FA0120FFF771F904E07E +:10BC2000687B042801D1FEF759FC287B1FB0BDECCE +:10BC3000028BBDE8F0015DF810FB0000D0F8002099 +:10BC400010FE0020B861012074BC0108885E01204C +:10BC5000885D0120F0650120C04F0120E0650120D2 +:10BC6000C1D40100E8650120C85D0120085E012003 +:10BC7000E09304004C542D5750204348414E474513 +:10BC8000202564004C542052455345545F47415091 +:10BC9000000000004C54204741204D546D20256485 +:10BCA000000000004C54205350205347415220259F +:10BCB000642C2025662C2025640000004C542D5354 +:10BCC000535F494E495400004C542D434845434B63 +:10BCD0005F53544F500000004C542D53535F474561 +:10BCE000545F4649525354004C542D53535F4348BC +:10BCF00045434B5F555345525F4D4F56454D454E5D +:10BD0000540000004C542D53535F4745545F534536 +:10BD1000434F4E44000000004C542D53535F4348A2 +:10BD200045434B5F555345525F4C454156494E473D +:10BD3000000000004C542D53535F50415553455F54 +:10BD400053544159494E475F53454E53494E47005E +:10BD50004C54205245512D46202564004C5420451A +:10BD6000584953542D317374202564004C5420538A +:10BD7000617665205341554D000000004C5420531E +:10BD80007461794F75742D46500000004C54204E5C +:10BD90004F54204F4B203173740000004C542053FB +:10BDA00054204F75742D554D000000004C542D4DFE +:10BDB00044206F7665722025660000004C542D44A7 +:10BDC0005354204F56202564000000004C5420524C +:10BDD00045512D326E642025640000004C542045EE +:10BDE000584953542D326E64202564004C5420531E +:10BDF000544F55202D5350004C542D4D44204F5638 +:10BE0000202566004C542D5053204E4F54204F4B4C +:10BE100020326E64202564004C542D575020434836 +:10BE2000414E47453A5053204E47202564000000BC +:10BE30004C542053544F552D554C00004C542D4418 +:10BE400053204F56202564004C54205245512D5507 +:10BE50004C202564000000004C54204558495354A0 +:10BE60002D554C20256400004C542053532041474D +:10BE700041494E2042592053540000004C542D4358 +:10BE80004B5F53544F5000004C54205353204147B4 +:10BE900041494E20425920505300000038B5044615 +:10BEA000DFF8E4520020286505206865002028643A +:10BEB0006864A864E8649FEDB20B85ED040B85ED22 +:10BEC000060B85ED080B85ED0A0B85ED0C0B85ED5A +:10BED0000E0B6866A86605F16C00A8654FF4B67293 +:10BEE0000021E7F715FA0C2200212846E7F710FA9F +:10BEF00094ED020AB1EE401A94ED010AF1EE400A07 +:10BF000094ED000A05F1440105F1400009F016FE28 +:10BF1000012032BD2DE9F04D2DED068B0E46DFF8E8 +:10BF200068720168396090ED010AB1EE400A87ED50 +:10BF3000010A90ED020AB1EE400A87ED020A1E22C4 +:10BF40003946B86D0AF003F8796D4A1EB86D3B6D3D +:10BF5000934227DA1E22591C09B20AF021F810EE8A +:10BF6000100AECF7D1FFC7E90A011E22386D411C07 +:10BF700009B2B86D0AF032F810EE100AECF7C4FFFF +:10BF8000C7E90C011E22386D411C09B2B86D0AF0D8 +:10BF900043F810EE100AECF7B7FFC7E90E01386D51 +:10BFA000401C72E023D11E2209B209F0F9FF10EE05 +:10BFB000100AECF7A9FFC7E90A011E22796D09B240 +:10BFC000B86D0AF00BF810EE100AECF79DFFC7E908 +:10BFD0000C011E22796D09B2B86D0AF01DF810EE41 +:10BFE000100AECF791FFC7E90E01786D4DE01E22B3 +:10BFF00009B209F0C5FFF8651E220021B86D09F0ED +:10C00000BFFF8046C7F86080FC6D2068ECF77CFFBE +:10C0100002460B46D7E90A01F9F7FCFE82468B4639 +:10C02000D8F80000ECF770FF52465B46FDF7C4FEFF +:10C03000C7E90A016068ECF767FF02460B46D7E9DB +:10C040000C01F9F7E7FE82468B46D8F80400ECF7BE +:10C050005BFF52465B46FDF7AFFEC7E90C01A068E7 +:10C06000ECF752FF02460B46D7E90E01F9F7D2FE74 +:10C0700004460D46D8F80800ECF746FF22462B464A +:10C08000FDF79AFEC7E90E01786DECF753FE41EC1F +:10C09000180BD7E90A0153EC182BF9F77BFF41EC99 +:10C0A000190B87ED049BD7E90C0153EC182BF9F71A +:10C0B00071FF41EC1A0B87ED08ABD7E90E0153EC89 +:10C0C000182BF9F767FF41EC100B87ED060BECF727 +:10C0D00043FF01EE100AB0EE418A51EC1A0BECF767 +:10C0E0003BFF00EE900AB0EE481AB0EE608AF0EE28 +:10C0F000418A51EC190BECF72FFF00EE100AB0EE5D +:10C10000681AF0EE480A07F14C0107F1480009F0FF +:10C1100015FD386D401C38659FED190B87ED040B3C +:10C1200087ED080B87ED060B396CB86C00F017F83B +:10C1300004467C66796CF86C00F011F8B86604F17E +:10C140002801512902D22830512802D30120307011 +:10C1500001E000203070BDEC068BBDE8F08D421A86 +:10C16000B52A04DB081A00F5B470424205E012F16A +:10C17000B40F02DA00F5B470421A1046704700009E +:10C180000000000000000000D035012038B5DFF8C5 +:10C19000244594F82000012801D1002032BD20461A +:10C1A0000AF0DFFC20460AF049F80020E0830AF09C +:10C1B000DBFCDFF80455E5640020606514220146CD +:10C1C00004F13000E7F7A4F820220021DFF8EC04A6 +:10C1D000E7F79EF820220021DFF8E404E7F798F85B +:10C1E0000020A065024605E0D42101FB00510A7140 +:10C1F0008A71401C0128F7DB0120606400F011F80F +:10C20000DFF8C004012180F83D1008460AF028FC40 +:10C210000020A06420770AF04BFC012084F8200065 +:10C2200032BD70B401460023DFF8882411E0D42524 +:10C2300004EB8304A46805FB040401262671D66D73 +:10C2400005FB0300807904EB8000006A3043D06571 +:10C250005B1CDFF8700400EB4114DFF85C04257907 +:10C26000AB42E4DB29465177237F1376002903D0C4 +:10C27000DFF848345971D06470BC7047DFF834146B +:10C280004A6D01EB82031863501C4865052803D3EF +:10C29000401E486500207047012070470020DFF8ED +:10C2A000141402468A654A6D002A0BD00B6B8B650D +:10C2B000521E4A6504E001EB8002536B1363401C7D +:10C2C0000428F8DB704738B50024DFF8E853287FEE +:10C2D0000AF0FAFB02E000F03CF8641C287E84427D +:10C2E000F9D331BD70B50C460025DFF8C863F17F86 +:10C2F0004A1CF277332901D32946F177B17F03290C +:10C3000015D3016871624168B1628068F0622846A5 +:10C310000AF0D7FB307F401C3077317EC0B28842B4 +:10C3200003D328463077FFF7CEFFFFF7B7FFB07F84 +:10C33000411CB177652801D33220B077B06D002859 +:10C3400005D0207001250A2801D10A202070284636 +:10C3500070BD2DE9F84300200146DFF85C430BE097 +:10C36000D42202FB01421379002B04D0937902EB13 +:10C370008302126A1043491C0129F1DB0AF0BDFB5C +:10C38000CC4D0AF0E0FB28650020A86506463FE09A +:10C39000D42202FB06F707EB040898F804000028F3 +:10C3A00035D0304600F049F8D5F8509098F806009E +:10C3B00008EB8000006AD9F8001008421ED098F8F7 +:10C3C000060008EB8000406B002806D098F80600B5 +:10C3D00008EB8000406BFFF751FF98F80600401C07 +:10C3E00088F8060098F80510C0B2884206D3B34812 +:10C3F000395940F82610002088F80600D9F8400086 +:10C40000002804D0D9F800100843C9F80000761CB1 +:10C41000012EBDDB286D00680AF097FBA86C411C5B +:10C42000A964B0F57A7F01D90020A864A448A34983 +:10C430002022BDE8F843E7F773BBF0B59D4C256DAE +:10C4400000212964D4219C4A01FB00208179C1EBA1 +:10C45000C10200EB820600EB8107386A022846D150 +:10C46000B06C012843D1306D022808D1686B0328D5 +:10C4700003DAF06D401CF06501E00020F065306DDE +:10C48000042808D1686B052803DAF06D401CF065BC +:10C4900001E00020F065306D082808D1686B08289D +:10C4A00003DBF06D401CF06501E00020F065306DAD +:10C4B000102808D1686B102803DBF06D401CF06574 +:10C4C00001E00020F065F06C142190FBF1F0F16DBB +:10C4D000814206DA2868396A88432860386A286405 +:10C4E00005E00020F0652868396A08432860386A4A +:10C4F000012861D196F84800C0075DD5F06C41076E +:10C500001ED594ED0B0AF9EE000AB4EE600AF1EEC6 +:10C5100010FA09D540F22310A9699131814203D361 +:10C52000E969913181423DD20020F065F06D052826 +:10C530003CDA2868396A88432860386A2864F0BD84 +:10C5400081070FD594ED0B0AB5EE400AF1EE10FA13 +:10C55000EADDA8695A30B528E6D2E8695A30B5282C +:10C5600020D3E1E7C006E1D5E06AECF7CDFC21F08D +:10C5700000410122544BF9F7ABFBD5D8606AECF7C8 +:10C58000C3FC21F000410022504BF9F789FBCBD2CC +:10C59000A06AECF7B9FC21F0004100224B4BF9F7FF +:10C5A0007FFBC1D2F06D401CF065BFE70020F06555 +:10C5B0002868396A08432860F0BD000010B43D497E +:10C5C000CA68002A04D14FF48062CA600A614A61D5 +:10C5D0009FED370AD1ED040AF8EE600A91ED0A1AD0 +:10C5E00060EE810AC0EE800A91ED011AB8EE411AA0 +:10C5F00070EE810AFDEEE00A10EE902AD1ED050AF8 +:10C60000F8EE600A91ED0B1A60EE810AC0EE800A26 +:10C6100091ED021AB8EE411A70EE810AFDEEE00AC1 +:10C6200010EE903AB0F9024000EB4404D1ED030A59 +:10C63000F8EE600A91ED091A60EE810A80EE800A38 +:10C64000D1ED000AF8EE600A30EE200ABDEEC00A15 +:10C6500010EE101AA180B0F9021000EB4101CA805F +:10C66000B0F9021000EB41010B814188491C418067 +:10C6700009B21E2901DB1D214180012010BC704739 +:10C6800010B5002006E0D4210B4A01FB0021002256 +:10C690000A71401C0128F6DB064C002060646077BC +:10C6A0000AF008FA0020E06584F8200010BD0000C0 +:10C6B000C3F51C4190570120A49700207861012008 +:10C6C00098610120E4980020000021400000F83F1C +:10C6D00010B5554C002020606060A06020620520ED +:10C6E00060620020A061E061A062E062206360639C +:10C6F000A063E0636064A06404F14C0020644FF424 +:10C70000B6720021E6F704FE0C22002104F10C00B1 +:10C71000BDE81040E6F7FCBD70B50C46424DA96C73 +:10C720004E1CAE6400F017F8002803D0686C401C63 +:10C73000686401E0002068640F2E0ADA686C0B2838 +:10C7400003DB01202070022070BD0020207001203A +:10C7500070BD032070BD0021334A92ED000AB5EE92 +:10C76000400AF1EE10FA15D1D2ED010AF5EE400AB9 +:10C77000F1EE10FA0ED1D2ED020AF5EE400AF1EE1A +:10C7800010FA07D1016811604168516080689060BB +:10C7900000207047D0ED000A30EEC00A90ED011A7B +:10C7A000D2ED011A31EE611AD0ED021A92ED022A91 +:10C7B00071EEC21AB5EE400AF1EE10FA01DAB1EEEE +:10C7C000400AB5EE002AB4EE420AF1EE10FA1AD58C +:10C7D000B5EE401AF1EE10FA01DAB1EE411AB5EEFB +:10C7E000000AB4EE401AF1EE10FA0CD5F5EE401A3C +:10C7F000F1EE10FA01DAF1EE611AF4EE401AF1EE00 +:10C8000010FA00D50121C2ED000A43685360806828 +:10C8100090600846704704480021016041608160D3 +:10C820004164816470470000403B012010B500F076 +:10C8300034FB00F09AFB00240DE020469FED151A12 +:10C84000DFED140A9FED130A00F0BCFE214605201F +:10C8500000F0C5FE641C1E2CEFD3DFF8640D002130 +:10C860000170016341638163C16301644164816458 +:10C87000052141710A210171002141708170C1625D +:10C880000A2181710021C17010BDDFF8341DC8700C +:10C8900070470000000000002DE9F0472DED048BEB +:10C8A000B0EE408AF0EE608AB0EE419ADFF8344D87 +:10C8B000E078012801D1002500E0052526781E2E0C +:10C8C00009D2304600F07EFE3146284600F087FE51 +:10C8D000701C207027E0002616E0DFF80C1D01EB2D +:10C8E0008602304692ED3D1AD2ED1F0A01EB860119 +:10C8F00091ED010A00F066FE3146DFF8F00C3018C9 +:10C90000407800F06CFE761C1D2EE6DB1D20B0EE9C +:10C91000491AF0EE680AB0EE480A00F053FE1D21F5 +:10C92000284600F05CFEDFF8C89C032D08DA606B37 +:10C93000401C606348450BD3DFF8B80C606307E028 +:10C94000206B401C2063484502D3DFF8A80C20630D +:10C9500000F0BAFDB0EE408A00F07EFDF0EE408AB5 +:10C9600000F012FBD4F830809FEDA09B4046ECF71E +:10C97000EBF953EC192BECF7F5F9F8F7ADF906469E +:10C98000E76B3846ECF7E0F953EC192BECF7EAF9D2 +:10C99000F8F7A2F9824620790A2802D0142846D056 +:10C9A0005CE09FED940AB4EE408AF1EE10FA0CD5EB +:10C9B000F4EE408AF1EE10FA07D5032D05DA1420C3 +:10C9C0002071780800F0F4FB48E0781CE0634845EB +:10C9D00002D3DFF8200CE063042D3FDB00F066FAA1 +:10C9E000E06A01283AD1B6F57A7F37D994ED090A81 +:10C9F000B5EE400AF1EE10FA01DCB1EE400ADFEDCF +:10CA00007E0AB4EE600AF1EE10FA0DDA94ED0A0A2D +:10CA1000B5EE400AF1EE10FA01DCB1EE400AB4EED8 +:10CA2000600AF1EE10FA19DB0020E06216E09FEDDB +:10CA3000710AB4EE408AF1EE10FA04DAF4EE408A9C +:10CA4000F1EE10FA02DB0A20207107E0A06B401C17 +:10CA5000A063484502D3DFF89C0BA0630020607000 +:10CA6000607902280AD0C0F05B8104281BD074D3FF +:10CA7000062800F00381C0F0E68051E1032D0FDAB3 +:10CA8000606B012802D12079A07149E10A2840F0A9 +:10CA900047810420607100F0FDFB002020633FE12E +:10CAA000002060633CE1E06A012832D1207900F087 +:10CAB00049F901282DD140F2E930864201D2002EF9 +:10CAC00022D1824502D2BAF1000F1DD194ED090A9C +:10CAD000B5EE400AF1EE10FA01DCB1EE400ADFEDEE +:10CAE000460AB4EE600AF1EE10FA10D594ED0A0A87 +:10CAF000B5EE400AF1EE10FA01DCB1EE400AB4EEF8 +:10CB0000600AF1EE10FA02D5A078607001E0002012 +:10CB1000E062E06A002814D1B6F5C87F01D8002E83 +:10CB200008D1A078002808D0BAF1FB0F05D2BAF1DD +:10CB3000000F02D0A078607003E0207900F048F97F +:10CB40006070032060716078A070002020636063D3 +:10CB5000A063E06300F022FBE2E0042D17DBB8F1F4 +:10CB6000010F02D100F001FADAE0B8F1060FC0F0CF +:10CB7000D7800021404600F0D5FAA078032802D1E2 +:10CB80000020E06262E000F0E1FCE0625EE0002094 +:10CB9000206320790A2853D1E06B0A28C0F0C080B6 +:10CBA000002100F0BFFAA07800F0D0FCE06294ED24 +:10CBB000130AB5EE400AF1EE10FA02DDF0EE400A7B +:10CBC00001E0F1EE400A9FEDB81AF4EE410AF1EEF1 +:10CBD00010FAC0F2A580D4ED140AF5EE400AF1EE89 +:10CBE00010FA0BDDF0EE601A0AE000BF0000000052 +:10CBF000000034409A99193F00002042F1EE601A7B +:10CC0000F4EE411AF1EE10FAC0F28A80F5EE400A15 +:10CC1000F1EE10FA01DCF1EE600AB5EE400AF1EE39 +:10CC200010FA01DCB1EE400AF4EE400AF1EE10FA1F +:10CC300076D50520607100F098F90020A0636FE0C0 +:10CC40000020E0636CE0B8F1060F04D302206071AD +:10CC50000020606364E0A06B012805D1E06B00F068 +:10CC6000A7FA2079A0715BE0052859D3606B0528ED +:10CC700056D3062060710020206351E020791428EB +:10CC80004ED1E06A01282DD140F2E930864201D22E +:10CC9000002E22D1824502D2BAF1000F1DD194EDAF +:10CCA000090AB5EE400AF1EE10FA01DCB1EE400AD5 +:10CCB000DFEDB30AB4EE600AF1EE10FA10D594ED90 +:10CCC0000A0AB5EE400AF1EE10FA01DCB1EE400AB4 +:10CCD000B4EE600AF1EE10FA02D5A078607001E0BF +:10CCE0000020E062E06A002811D140F291108642F3 +:10CCF00001D2002E04D1824505D2BAF1000F02D034 +:10CD0000A078607003E0A07900F062F86070032002 +:10CD100060716078A070002020636063E063A063AE +:10CD20006078012801D1012008E0022801D1022009 +:10CD300004E0032801D1032000E00020BDEC048BB7 +:10CD4000BDE8F08700B52DED048B81B000210A28E5 +:10CD500008D1DFF86C0890ED100A90ED118AD0ED43 +:10CD6000128A11E0142808D1DFF8540890ED150A52 +:10CD700090ED168AD0ED178A06E09FED820A9FEDAE +:10CD8000818ADFED808A032103291CD29FEDD59A89 +:10CD900000F03AFCB4EE490AF1EE10FA11D5B0EE0B +:10CDA000480A00F031FCB4EE490AF1EE10FA08D559 +:10CDB000B0EE680A00F028FCB4EE490AF1EE10FA71 +:10CDC00001D4012000E0002001B0BDEC048B00BDC7 +:10CDD00000210A280AD1DFF8E807D0ED100A90ED0B +:10CDE000111AD0ED121A9FED670A13E014280AD128 +:10CDF000DFF8CC07D0ED150A90ED161AD0ED171A12 +:10CE00009FEDC50A06E0DFED5F0A9FED5E1ADFEDDC +:10CE10005D1A032103293ED2B4EE600AF1EE10FA46 +:10CE20000BD59FEDBE2AB4EE421AF1EE10FA04D5EE +:10CE3000F4EE421AF1EE10FA2AD4B4EE600AF1EEE2 +:10CE400010FA0BD59FEDB62AB4EE421AF1EE10FAA5 +:10CE500004DBF4EE421AF1EE10FA0BDAB4EE600ADB +:10CE6000F1EE10FA08D59FEDCC1AF4EE411AF1EE6E +:10CE700010FA01DB01210EE0B4EE600AF1EE10FAC7 +:10CE800008D59FEDCA0AF4EE401AF1EE10FA01D56A +:10CE9000022100E0032108467047DFF82407002143 +:10CEA0008160C160016170470100C03F10B52DED88 +:10CEB000068BDFF80C4794ED050AB5EE400AF1EE5B +:10CEC00010FA13D194ED060AB5EE400AF1EE10FA0D +:10CED0000CD194ED070AB5EE400AF1EE10FA05D137 +:10CEE000A0686061E068A0612069E06194ED028A59 +:10CEF00094ED050A38EE400A00F0F6F8F0EE408AAC +:10CF000094ED039A94ED060A39EE400A00F0ECF82D +:10CF1000F0EE409A94ED04AA94ED070A3AEE400A26 +:10CF200000F0E2F8F0EE40AA94ED080A30EE280A8C +:10CF300000F0DAF884ED080A94ED090A30EE290AC7 +:10CF400000F0D2F884ED090A94ED0A0A30EE2A0ABC +:10CF500000F0CAF884ED0A0A84ED058A84ED069A89 +:10CF600084ED07AABDEC068B10BDDFF85406002146 +:10CF700001624162816241618161C161704700006B +:10CF80000000204200000000F0B52DED068B83B0BC +:10CF90001D2100A800F006FB9DED000AB5EE400A39 +:10CFA000F1EE10FA01DCB1EE400ADFEDB00AB4EEAA +:10CFB000600AF1EE10FA01D50020009000AE96ED67 +:10CFC000010AB5EE400AF1EE10FA01DCB1EE400ABA +:10CFD000B4EE600AF1EE10FA01D50020706096ED13 +:10CFE000020AB5EE400AF1EE10FA01DCB1EE400A99 +:10CFF000B4EE600AF1EE10FA01D50020B0609FEDAA +:10D000009C8B9FED9D9B9FED9EABDFF8D875B8681C +:10D01000EBF77AFF04460D460098EBF775FF53ECEB +:10D020001A2BEBF79FFE53EC192BF8F7B3FF53ECD9 +:10D03000182BEBF797FE22462B46FCF7BDFEEBF7CD +:10D040008BFF00EE100A87ED020A00F04DF887ED25 +:10D05000020AF868EBF758FF04460D467068EBF7D4 +:10D0600053FF53EC1A2BEBF77DFE53EC192BF8F71B +:10D0700091FF53EC182BEBF775FE22462B46FCF77D +:10D080009BFEEBF769FF00EE100A87ED030A00F044 +:10D090002BF887ED030A3869EBF736FF04460D4697 +:10D0A000B068EBF731FF53EC1A2BEBF75BFE53EC58 +:10D0B000192BF8F76FFF53EC182BEBF753FE2246B2 +:10D0C0002B46FCF779FEEBF747FF00EE100A87EDE1 +:10D0D000040A00F009F887ED040A03B0BDEC068BE2 +:10D0E000F0BD00009A99993EDFED670AB4EE600A40 +:10D0F000F1EE10FA04DBDFED650A30EE200A70472E +:10D10000DFED630AB4EE600AF1EE10FA03D5DFED4D +:10D11000D00A30EE200A70479A9999BECCCCCCBD8B +:10D12000CDCCCC3D10B49FEDCB0ADFEDCA0A1F2851 +:10D1300001D31E2000E0C0B20022DFF8AC440EE0B4 +:10D14000C2F11D03DBB204EB830393ED1E1A30EE34 +:10D15000010A93ED3C1A70EE810A521CD2B282424F +:10D1600009DA002902D1C2F11D03EBE70129E7D159 +:10D17000C2F11803E6E701EE100AB8EE411ADFF833 +:10D18000640480EE010A80ED130A80EE810A80EDCE +:10D19000140A10BC70470000CDCCCC3EDFF844042C +:10D1A000002141658165C16570470000CCCCCCBED3 +:10D1B00030B49FEDA80ADFEDA70A9FEDA61A1F283D +:10D1C00001D31D2001E0401EC0B200210DE030EE71 +:10D1D000210A02EB8302D2ED1E1A70EEA10AD2EDF3 +:10D1E0003C1A31EE211A491C89B2DFF8D44381423E +:10D1F0002ADA22781E2A03D2521A531EDBB202E028 +:10D20000C1F11D03DBB2DFF8E02352F8235001EE39 +:10D21000905A02EB830555F8045C02EE105A71EE49 +:10D22000C22A9FEDC93AF4EE432AF1EE10FACEDBA2 +:10D23000F5EE401AF1EE10FAC9DDB5EE402AF1EE36 +:10D2400010FAC4D50B29C2DB01EE901AF8EE611A70 +:10D2500080EE210A84ED150A80EEA10A84ED160AFB +:10D2600081EE210A84ED170A30BC70470BD7233DAD +:10D27000F8C1631ADCA54C400000000000408F405C +:10D280000000000000003440010034430000B4C33B +:10D29000000034C3F0B4DFEDC92AB0EE620AB0EE8C +:10D2A000622ADFED6C0A9FED6B1ADFED6A1ACD483A +:10D2B00001781E2900D31E21026B914204D201EB9A +:10D2C000D1725210D2B201E05208D2B200230DE066 +:10D2D000B1EE633AB4EE443AF1EE10FA05DB71EECA +:10D2E000A31AB7EE003A32EE032A5B1CDBB293427C +:10D2F00080F29F80CC1A641EE4B225466E1EF6B200 +:10D30000B94D55F8267003EE107A05EB8407D7ED7A +:10D31000003A05EB860797ED004A73EEC43AF5EE46 +:10D32000403AF1EE10FA05EB8407D7ED003A02DD42 +:10D3300033EEC33A01E033EE633A05EB8606D6EDF1 +:10D340001E3A97ED1E4AD6ED1E4A34EE644AB5EEFB +:10D35000404AF1EE10FA97ED1E4A02DD74EE633A90 +:10D3600001E073EEC43A06F1780C9CED1E4A07F119 +:10D370007806D6ED1E4A9CED1E5A74EEC54AF5EEAF +:10D38000404AF1EE10FAD6ED1E4A02DD34EEC44AF0 +:10D3900001E034EE644ADFED984AB4EE643AF1EE0F +:10D3A00010FA09DBF4EE643AF1EE10FA04DBB4EEA5 +:10D3B000644AF1EE10FA3CDA55F8244003EE104AC4 +:10D3C000B5EE403AF1EE10FA02DDF0EE433A01E03C +:10D3D000F1EE433A9FED894AF4EE443AF1EE10FA49 +:10D3E00005DB70EE830AB7EE003A30EE030A97EDE4 +:10D3F0001E3AB5EE403AF1EE10FA02DDF0EE433A95 +:10D4000001E0F1EE433AF4EE443AF1EE10FA05DBB6 +:10D4100031EE031AB7EE003A72EE832AD6ED1E3AC9 +:10D42000F5EE403AF1EE10FA7FF752AFB0EE633A04 +:10D4300050E780EE800A80ED100A81EE220A80ED2E +:10D44000110A81EE820A80ED120AF0BC70470000DA +:10D450000000B4430000000010B52DED028B9FEDDD +:10D46000688A002426E0C4F11D00C0B25E4901EBC9 +:10D47000800202F1780393ED1E0AD2ED1E0A51F8E4 +:10D48000200001EE100A21EE011A00EEA01A00EEB3 +:10D49000001A11EE100AEBF737FD41EC100BFCF708 +:10D4A000FFFC51EC100BEBF757FD00EE100A38EEC5 +:10D4B000008A641C062CD6D3B1EE080A88EE000A56 +:10D4C000BDEC028B10BD000010B52DED028B9FED61 +:10D4D0004C8ADFED4B8A002428E0C4F11D00C0B265 +:10D4E000414901EB800202F1780393ED1E0AD2ED6F +:10D4F0001E0A51F8200001EE100A21EE011A00EE7A +:10D50000A01A00EE001A11EE100AEBF7FDFC41EC38 +:10D51000100BFCF7C5FC51EC100BEBF71DFD00EEFA +:10D52000100A38EE008A40EE008A641C062CD4D320 +:10D53000B1EE080AC8EE000A88EE800A00EEE00AA2 +:10D54000BDEC028B10BD00009A99993E0121022882 +:10D5500012D19FED2C0A2348D0ED130AF4EE400AB5 +:10D56000F1EE10FA1CDBD0ED140AF4EE400AF1EEF5 +:10D5700010FA15DB002113E0012811D1194890EDB4 +:10D58000130AFEEE000AB4EE600AF1EE10FA07D5B7 +:10D5900090ED140AB4EE600AF1EE10FA00D5002105 +:10D5A00008467047104A52F82130036002EB8101AF +:10D5B0008A6F4260D1F8F01081607047BD378635C0 +:10D5C000D0560120C0B2084901EB800282ED000A6A +:10D5D00001EB8000C0ED1E0A80ED3C1A7047034A43 +:10D5E00088547047D0560120A44101205861012081 +:10D5F00041420F0040420F000100A040CDCC4C3D05 +:10D60000000000000100003FB5EE400AF1EE10FA04 +:10D6100003D5FFEE000A20EE200A704710B5040083 +:10D6200003E02068C068E9F732F9E8F79EFA20685D +:10D630000028F6D107484078F021084202D099200E +:10D64000E8F726FA03484078002801D1E8F787FA7E +:10D6500010BD00BFF8990020012009F09DBA00001C +:10D660000649086808B10020704705480860054968 +:10D67000C908C900091A0160704700BF846601200B +:10D68000000000200040002070B504460025DFF8AF +:10D690000867062015FB004000F080FB6D1C202D64 +:10D6A000F7DB70BD00B970472DE9F0434379027D87 +:10D6B000DB43D243DBB243EA02220A80437C427D51 +:10D6C000DB43121DDBB243EA02224A80C47C437A68 +:10D6D0006634373BE4B244EA03238B80057B44780D +:10D6E000263D523CEDB245EA0424CC800678057A0A +:10D6F000203E6A35F6B246EA05250D81877D86799A +:10D70000FF43F643FFB247EA06264E8190F804C075 +:10D71000877BACF1310CFF435FFA8CFC4CEA0727A6 +:10D720008F8190F812E090F810C0AEF17F0E6FEA92 +:10D730000C0C5FFA8EFE4EEA0C2CA1F80EC090F88D +:10D740000B8090F818E0A8F155080EF1370E5FFA3B +:10D7500088F848EA0E2EA1F810E0098890F81A809F +:10D7600090F817905118591861186918711879189C +:10D7700061446FEA090971445FFA89F3C9B26FEA3B +:10D7800008088B420FD180780CEB070146307144BA +:10D79000C0B2C9B2884206D1A81860445FFA88F1C5 +:10D7A000C0B2814201D0002000E00120BDE8F0833A +:10D7B000F0B588B0002200AB002423F81240032308 +:10D7C0004FF480449C4051F8225001269E4067420D +:10D7D000AF4207DB641941F8224000AC34F9124033 +:10D7E000A41B09E0A5420ADB2C1B41F8224000AC37 +:10D7F00034F9124006FA84F400AD25F812405B1E9D +:10D80000DED500AB33F91230DB1D9BB20F2B01D3F9 +:10D81000002043E0521C032ACDDB002202AB00248F +:10D8200043F8224005AB43F822400023062404FBC2 +:10D83000020434F9135051F8236002AC00AF54F8DD +:10D84000224006FB054402AEAD0346F8224005AE79 +:10D8500037F9137056F822602D1107FB056505AEE8 +:10D860005B1C46F82250032BE0DBC4F3C00303EB40 +:10D87000241302ACEB1844F8223002AB53F82230E8 +:10D88000C3F3402404EBA32302AC44F82230521C1F +:10D89000032AC3DB02A81CC81CC1012008B0F0BDCC +:10D8A0002DE9F14F80B20B46212819D2BDF90000B5 +:10D8B00000250121A940884205D06D1C062DF8DB0A +:10D8C000BDF9000060B9B3F9000047F6FF784045A4 +:10D8D0001FBFB3F902004045B3F90400404501D130 +:10D8E000002040E000244FF0000C2746012625468A +:10D8F00006E081468E46CC447444DA4657446D1C9B +:10D90000BDF90000854226DA36B2B54208BF76007E +:10D910004DB933F90590B3F902E0B3F904A0CC4650 +:10D9200074465746EBE7062000FB05F1C85E40450C +:10D930001EBF01EB030BBBF9021041451CBFBBF935 +:10D9400004B0C345D5D1CC447444D7E74FEA6C0C3E +:10D9500064107F10761036B2022EF7DAA2F800C0FB +:10D96000548097800120BDE8F28F30B5B0F90440B3 +:10D97000B0F90250240485B0240A14FA85F4ADF8F5 +:10D980000040B0F90840B0F906502404240A14FA03 +:10D9900085F4ADF80240B0F90C40B0F90A00240457 +:10D9A000240A14FA80F0ADF804000020188000ACBE +:10D9B00031F8103034F91040803313FB04F302AC1B +:10D9C00003EB830344F820301B1242F82030401C44 +:10D9D0000328ECDB05B030BD30B5B0F90440B0F938 +:10D9E0000250240485B0240A14FA85F4ADF80040EE +:10D9F000B0F90840B0F906502404240A14FA85F45A +:10DA0000ADF80240B0F90C40B0F90A002404240A31 +:10DA100014FA80F0ADF804000020188000AC31F852 +:10DA2000103034F91040803313FB04F30A246343AD +:10DA300002AC44F820301B1242F82030401C03286E +:10DA4000ECDB05B030BD70B5B0F90450B0F9026040 +:10DA50002D0485B02D0A15FA86F5ADF80050B0F901 +:10DA60000850B0F90660099C2D042D0A15FA86F5B8 +:10DA7000ADF80250B0F90C50B0F90A002D042D0A8F +:10DA800015FA80F0ADF804000020208000AD31F8D8 +:10DA9000104035F91050803414FB05F40A256C430E +:10DAA00002AD002A45F8204014BFA412241243F806 +:10DAB0002040401C0328E9DB05B070BD30B5B0F94B +:10DAC0000440B0F90250240485B0240A14FA85F405 +:10DAD000ADF80040B0F90840B0F906502404240A1B +:10DAE00014FA85F4ADF80240B0F90C40B0F90A50D0 +:10DAF0002404240A14FA85F4ADF80440B0F90E00A9 +:10DB000000EB8000C0F55C70C0101880002000ACF5 +:10DB100031F8103034F91040803313FB04F30A2439 +:10DB2000634302AC44F820309B1242F82030401C82 +:10DB30000328ECDB05B030BD30B5B0F90440B0F9D6 +:10DB40000250240485B0240A14FA85F4ADF800408C +:10DB5000B0F90840B0F906502404240A14FA85F4F8 +:10DB6000ADF80240B0F90C40B0F90A002404240AD0 +:10DB700014FA80F0ADF804000020188011F810307D +:10DB800000AC03F03F035B0034F9104003F58073F1 +:10DB900013FB04F30A24634302AC44F820301B1245 +:10DBA00042F82030401C0328E8DB05B030BD30B51A +:10DBB00086B004460D4600A80FF2D8311822E5F7CA +:10DBC000AFFF012CB8BF012402DB042CA8BF032443 +:10DBD00000A901EBC401284608390822E5F790FFA7 +:10DBE00006B030BDF0B580B285B00C4615461E4675 +:10DBF000042828BF002080F0AE8000B2002807D0A3 +:10DC0000002147F6FF7304EB4102B2F906209A4265 +:10DC100000F0A080491C0329F5DB03A9FFF7C7FF2B +:10DC200001276FF0050017FB006101F130002A3178 +:10DC30000622E5F765FF7F1C082FF2DB002000219C +:10DC400035F9112034F911309A42B4BF4FF0FF3248 +:10DC5000012226F8112004EB410335F91120B3F914 +:10DC6000063000AFD31A47F8213044BF5B4247F873 +:10DC7000213000AB53F8213003EB430347F8213048 +:10DC8000C3F3400707EBA30300AF47F8213000AB15 +:10DC900053F821309842B8BF184634F91130D21ADF +:10DCA00000AB43F8212044BF524243F8212000AA90 +:10DCB00052F821209042B8BF1046491C0329BFDB0F +:10DCC000BDF90C10401ABDF80E1040FA01F1081809 +:10DCD00048BF002004D4B0F5A07FC8BF4FF4A070A7 +:10DCE00000EB400101EB001101EB4010C011401CA2 +:10DCF00000210022002706EB410C062317FB03C37B +:10DD00007F1CB3F9003002FA83F2082FF5DB13B25F +:10DD1000002B48BF5242BDF912705210012302FA83 +:10DD200087F203FA02F2BDF810309A1812B282425A +:10DD3000B8BF024600AF57F8217034F911307A436A +:10DD400036F91170D2117A43D21825F81120491CE6 +:10DD50000329CEDB012005B0F0BD70B50C46154699 +:10DD6000FFF792FC2046FFF78FFC0B4E284600F091 +:10DD700015F8A81D00F012F800200023002106224B +:10DD800002FB004222F81130491C0329F7DB401C3A +:10DD90000828F3DB70BD0000844A030831460622E0 +:10DDA000E5F7AEBE2DE9F04F814695B208462DB29B +:10DDB0008FB01946212D2DD242F20F3842F2033A8C +:10DDC00042F20C3EC14518BFF14505D0D1451CBFFC +:10DDD00042F2B66291450DD1B0F90030B0F90E2093 +:10DDE00000260124B440A54216D0761C062EF8DB8E +:10DDF00095B10FE042F2B86291451FBF40F6BB32C9 +:10DE0000914542F2B762914504D1B0F90030B0F9C2 +:10DE10001020E5E70020BAE01E9E1E960124348003 +:10DE20000024249E249634800026DDF884C04FF020 +:10DE3000000BACF800609B07229C2680239F3E804D +:10DE4000259EA6F800B044BF0123ACF8003053076C +:10DE500044BF01232380130702D50120388007E047 +:10DE6000B4F90030012B1CBFB7F90030012B01D1F0 +:10DE700001208CE0209BC14503D103AAFFF775FD6B +:10DE800025E0F14503D103AAFFF7A6FD1FE0D14528 +:10DE90001CBF42F2B664A14506D1009303AB02F069 +:10DEA0001002FFF7D0FD12E042F2B86291451CBFAC +:10DEB00040F6BB32914503D103AAFFF7FFFD06E010 +:10DEC00042F2B762914504BF03AAFFF735FE1898E6 +:10DED00009A9FFF7E7FB3080012805D103A909A8AC +:10DEE000FFF766FC002852D0DDF874A0002603A8D6 +:10DEF00006A950F8260041F826005AF82610401AC4 +:10DF000003A941F8260000F5EA402F304EF65F21C4 +:10DF1000884202D3249801210180761C032EE6DB7F +:10DF200024981A9CB0F90000012809D12046FFF777 +:10DF3000ABFB06A80EC8AAE80E000020019006E080 +:10DF40000398ADF804000498ADF806000598ADF804 +:10DF5000080023461E982021B0F9002001A808F0EF +:10DF600025FE1B9C1C9BBDF9640001AA2146FFF7FE +:10DF700039FE60B11E982346B0F90020202101A887 +:10DF800008F014FE1F9A21462846FFF789FC0FB0BF +:10DF9000BDE8F08F280000000000030050000000E2 +:10DFA0000000020050000100FEFF02002DE9F04FCA +:10DFB00093B004460D4690460FA80FF6A4110B220D +:10DFC000E5F7AEFD0BA80FF6A4110E22E5F7A8FDAC +:10DFD00008A80FF6A8110B22E5F7A2FD04A80FF67A +:10DFE000A8110E22E5F79CFD0020ADF802000120EB +:10DFF000ADF800004FF0080900F0EFF8B9F10109A1 +:10E00000FAD100260DF13C0916F8097057B100F05D +:10E01000E4F8BDF80000381A543006F80900761C00 +:10E02000102EF1DB102E04DA00F0D7F8701C06B2C7 +:10E03000F8E700270BAE17F806A0BAF1000F0AD0D8 +:10E0400000F0CBF8BDF80000AAEB00002A38B85564 +:10E050007F1C102FEFDB102F00A804DA00F0BFF8B0 +:10E06000781C07B2F7E700F0BAF8BDF8001043F2E9 +:10E07000EF20401AADF80E0000F0AFF8BDF8001028 +:10E08000DFF80405401AADF80C0000F0A6F8BDF862 +:10E090000010DFF8F804401AADF80A0000F09DF80F +:10E0A000BDF80000C0F57F5700F097F8BDF80010EC +:10E0B000DFF8DC04401AADF8080000F08EF8BDF877 +:10E0C000001042F21F50A0EB010A00F086F8BDF8E4 +:10E0D000001040F64120A0EB010B00F07EF8BDF8E7 +:10E0E000001042F65F70401A002111F80920002A42 +:10E0F00004BF0B5D002B05D00B5D934266D1491C1C +:10E100001029F2DB102902D1217C00295ED10021E7 +:10E110008A5D002A04BF4B5D002B05D04B5D934206 +:10E1200054D1491C1029F3DB102902D1297C002984 +:10E130004CD1002108AA8A5C002A04BF0B5D002B89 +:10E1400005D00B5D934241D1491C1029F2DB102907 +:10E1500002D1217C002939D1002104AA8A5C002A3D +:10E1600004BF4B5D002B05D04B5D93422ED1491C63 +:10E170001029F2DB102901D1297C39BBB8F9001034 +:10E18000BDF90E20914202BFB8F90210BDF90C2072 +:10E1900091421BD1B8F90410BDF90A209142A4BFE5 +:10E1A0003AB28A4212DBB8F90610BDF90820914252 +:10E1B000A4BF0FFA8AF28A4208DBB8F908100FFAF6 +:10E1C0008BF29142A4BF00B2884202DADFF8C403A6 +:10E1D00000E0012013B0BDE8F08F00A8FFE7B0F920 +:10E1E00002108180B0F900204280511801807047F0 +:10E1F00070B50546049C05982960C5F88C211E461B +:10E20000024601232146284600F077F90020A5F8B0 +:10E210008801A5F88A61A5F8F001A5F8F20170BDA2 +:10E220002DE9F04FD5B005460E4617461C462AA8E4 +:10E230000FF26471A822E5F773FC15A80FF6000130 +:10E240005422E5F76DFC0EA80FF648011C22E5F7F5 +:10E2500067FCDFF840833A4631462846FFF7A6FEC2 +:10E26000404508BF404615D0BDF97C01411E89B22A +:10E2700020293EBFB4F98A1189B2022909D2B4F922 +:10E28000841189B211293EBFB4F9861189B20329DC +:10E2900001D300202EE10021ADF818100591461E93 +:10E2A0005E985E9000256098ADF8800136B2619866 +:10E2B000ADF884014FF0060B6298629034E00BFBDE +:10E2C0000142491CB2F9243102F592729844B2F924 +:10E2D0000230B2F9042099449244B7F916209142D1 +:10E2E000EDDB629A00FB08F1C913118000FB09F114 +:10E2F000629AC913518000FB0AF06299C0138880AA +:10E30000B4F98401B7F9141088420BDBB4F9860123 +:10E31000022807DA0020A4F88401B4F88601401C22 +:10E32000A4F88601761E36B2002E00F1D980B4F929 +:10E3300086012368B4F98A111C2212FB00F2002B1B +:10E3400003BF54232AAF13FB017353F8213002EBB0 +:10E350000308BDF98021B8F90070B8F9049002B93A +:10E360000021BDF9842102B90020D4F88C311C228F +:10E3700012FB00F2002B07A803BF54230DF1540C2D +:10E3800013FB01C153F8211051181C22E5F7B8FB0B +:10E390005E98ADF81C70ADF820901BFB06090020BC +:10E3A000039004A8029004F5F870019005A800906D +:10E3B00004F5C873221D07A9484600F0F3F80128A8 +:10E3C0001DD1B4F98A0101280ADAB8F91810002918 +:10E3D00006D4B4F9F0218A42A4BF401CA4F88A01F3 +:10E3E000B4F98A0101280ADBB8F91A10002906D409 +:10E3F000B4F9F0219142A4BF401EA4F88A01B4F9F7 +:10E400008611B4F98A0123681C2212FB01F25BB960 +:10E41000B4F98431002B04BF00290EAF07D054217A +:10E420002AAB11FB003001E053F820001718BDF9AA +:10E43000100001280FD1039004A8029004F5C470C5 +:10E44000019005A8009004F1C403221D39464846F6 +:10E4500000F0A8F801287FF465AFB4F984016D1CC1 +:10E460001028B4BF401C1020A4F8840104F5927356 +:10E470000122102105A808F099FBB4F984010228B3 +:10E48000A4BFB7F91610022905DA629805A9062279 +:10E49000E5F736FB34E74FF0000AD146C84688421C +:10E4A00019DA0146012008F0F9FB0021B4F98421B2 +:10E4B0009142BFF616AF1BFB0142491CB2F9243151 +:10E4C00002F592729844B2F90230B2F904209944EC +:10E4D000924409B2EAE7012008F0E0FB0021FCE6E3 +:10E4E000B4F984010028B4F8860118BF401C639970 +:10E4F000087028B255B0BDE8F08F2DE9F84F82467C +:10E500008B4616463BB30AF1C4070AF10404002502 +:10E510004FF00608DFF8809015FB084000F03EF849 +:10E520006D1C202DF8DB002414FB087000F036F879 +:10E53000641C102CF8DB002708FB07A404F592707C +:10E5400000F02CF804F5C87049464246E5F7D8FAC1 +:10E550007F1C102FF0DB0AF5C277012E03DA0020B2 +:10E56000AAF884010DE00120AAF884010AF592734B +:10E5700001221021584608F019FB042EB4BF701E6A +:10E5800002207880BDE8F18FED9EFFFFDEA5FFFF42 +:10E5900060E5FFFF0080FFFF844A0308494606222A +:10E5A000E5F7AEBA2DE9F04316460FF204520446E1 +:10E5B0008846D2E9000191B09946CDE90001B8F949 +:10E5C0000000012845DB1A9D00202880BDF96C70F1 +:10E5D00097B93088218800F087F8ADF8000070887E +:10E5E000618800F081F8ADF80200B088A18800F0E1 +:10E5F0007BF8ADF8040001E0012F16D0B8F9040053 +:10E60000BDF900108142A1BFBDF902108142BDF9E0 +:10E610000410814263DB47B9B8F900103346012288 +:10E62000204608F0C3FA012028800620B8F900101F +:10E6300011FB006047F6FF7230F9063C934202BFBF +:10E64000801FB0F90230934204BFB0F90400904239 +:10E6500001D1002045E006A8019004A8009008AB75 +:10E660000AAA304608F0C9FAB8F900104FF0FF3393 +:10E6700004AA304600F05CF9199D189C03A801908B +:10E6800000950CABB8F900102246304600F030F887 +:10E690000746012304AA0121204600F049F9B8F9F0 +:10E6A00002104B460122204608F080FA0FB90024E0 +:10E6B0000DE0BDF90C0002900CABB5F90000019023 +:10E6C000009742464946304600F064F80446B8F9DF +:10E6D0000010012304AA304600F02AF900E00024CB +:10E6E000204611B0BDE8F083401A00B208F010BB1C +:10E6F0002DE9F04190B016461D46179F0446884606 +:10E7000008AB2A4608F030FB0021062300224B43C9 +:10E7100003EB050C0DF1280E3CF812C09E442EF8B8 +:10E7200012C0521C032AF3DB491C0329EDDB169DA2 +:10E73000042827D104AB06AA03210AA808F063FD28 +:10E7400008B302A8019008A8009004AB06AA032110 +:10E750000AA808F0A9FDBDF908008010308002A8C1 +:10E760000423B0F90210891071803246B0F9040018 +:10E770008010B080019700954146204600F074F863 +:10E78000042004E00020B08070803080288010B029 +:10E79000BDE8F081F0B58FB00446084615461499DF +:10E7A000BDF958201E4604295BD1BDF95410B5F9B6 +:10E7B00010308B42BCBFB5F90E309942BFBFD202B8 +:10E7C000B5F9123013FB01F18A424ADA05A9019129 +:10E7D00007A9009109ABB5F902100BAA08F00DFAD0 +:10E7E000B5F90A00BDF914108142BFBFBDF916107A +:10E7F0008142BDF91810814233DA03A8019007A8BD +:10E80000009009ABB5F900100BAA204608F0F5F905 +:10E81000BDF90E10BDF90C20BDF91000B5F9063098 +:10E82000BDF90C7001FA82F202FA80F2BB42BCBF61 +:10E830008B42834215DAB5F90800824211DB02A847 +:10E8400000900DABB5F900103246204608F0C6FB2B +:10E8500038B1B5F90C00BDF908108842B8BF0120E5 +:10E8600000DB00200FB0F0BD2DE9F84F0B9F0446F0 +:10E870008B461646042B3AD1E05EF15EB6F90220D3 +:10E88000B6F90030401AB4F90210891AB4F9002020 +:10E89000D21A494302FB021100FB0018404608F05F +:10E8A0006BFD8146CA4601255D4524DA0620684392 +:10E8B0000219B6F90430B2F90410B2F90220005F6F +:10E8C000C91AB6F90230D21AB6F90030C01A52434A +:10E8D00000FB002001FB0100804408F04DFD814554 +:10E8E000B8BF81465045D8BF82466D1CDCE74FF06B +:10E8F0000008C246C1465946012008F0CFF901463A +:10E90000C0F3C00000EB2110C8F380110A9C01EB9A +:10E91000E811484308F030FD20808110C0F340002A +:10E9200001FA80F02080A9EB0A003880BDE8F18F61 +:10E93000F0B5002411E00626002506FB040636F992 +:10E94000157032F915C013FB0C7707F30F0726F883 +:10E9500015706D1C032DF2DB641C8C42EBDBF0BDEB +:10E9600024587DDD6E59C83C094A0000AEB1E00F65 +:10E970008B40603D5F4620F6A700000041534148B0 +:10E98000494B4153454900005345433039393131F2 +:10E990004E53465354000000100003001000900036 +:10E9A000A003500040008F042C01F4010300030079 +:10E9B0008002FFFF140006003000B0008004400019 +:10E9C000900041032C01CC01030003008002FFFFF3 +:10E9D000180008003000D000E0042800E0004103E7 +:10E9E0002C01A401030003008002FFFF10000300BC +:10E9F00010009000A003500040008F042C01F4018F +:10EA000003000300FFFFE001140006003000400196 +:10EA100020085000F0008F04A1011801030003003A +:10EA2000FFFFE0011800080030008001C00830003E +:10EA300090018F04F401180103000300FFFFE001BF +:10EA40001000030010009000A003500040008F044D +:10EA50002C01F401FF000300FFFFFFFF140003007F +:10EA600030009000A003500040008F042C01F401FE +:10EA7000FF000300FFFFFFFF1800030030009000BD +:10EA8000A003500040008F042C01F401FF0003009C +:10EA9000FFFFFFFF0800020010009000A0035000DD +:10EAA00040008F042C01F401FF000100FFFFFFFF75 +:10EAB000000000000000000030B5154604460622A4 +:10EAC000E5F71EF8002D47BF0020E080E58001201B +:10EAD00030BD10B5002231F9123030F912401B1B45 +:10EAE00048BF5B42B0F90640A34204DB0622E5F7CB +:10EAF00007F8012010BD521C032AECDB002010BDDA +:10EB00002DE9F0471F4682B0804689469246012F84 +:10EB100025DB0A9D00243AF9141001291FDB38F97E +:10EB2000140039F91420861A00AA384608F000F9B2 +:10EB3000BDF9001070430F3101290BDBBDF8001047 +:10EB4000BDF800200F3140FA01F10E32104100F003 +:10EB50000100401800F50041B1F5803F01D30020CD +:10EB600005E025F81400641C032CD4DB0120BDE86B +:10EB7000F6870000704780B5022808D0042806D028 +:10EB8000082804D0102802D04FF4803104E0400758 +:10EB9000411300EB91408113882008F07BFD002099 +:10EBA00002BD80B5B0F5FA6F0DD0B0F57A7F0AD00E +:10EBB000B0F5FA7F07D0FA2805D04FF07A71882097 +:10EBC00008F0C7FC03E0C103882008F0C2FC002065 +:10EBD00002BD80B509F0A1F809F02AFF00280CD089 +:10EBE00009F026FF59230FF234220FF24821FFF7D4 +:10EBF000C1FFBDE8014009F01BBF0AF081FC0028FD +:10EC00000CD00AF07DFC5A230FF210220FF22421BF +:10EC1000FFF7B0FFBDE801400AF072BC0AF000FF48 +:10EC200000280CD00AF0FCFE5B230FF2F0120FF26A +:10EC30000421FFF79FFFBDE801400AF0F1BE0BF091 +:10EC4000ADFB00280CD00BF0A9FB5F230FF2CC1218 +:10EC50000FF2E011FFF78EFFBDE801400BF09EBB05 +:10EC60000BF04AFE00280CD00BF046FE60230FF29A +:10EC7000AC120FF2C011FFF77DFFBDE801400BF0B1 +:10EC80003BBE0CF044FC00280CD00CF040FC61238F +:10EC90000FF288120FF29C11FFF76CFFBDE80140E4 +:10ECA0000CF035BC0220FFF766FF4FF4FA70FFF757 +:10ECB00078FF4FF00071882008F0F1FCBDE80140BA +:10ECC00009F066B810B54FF47A720023EBF79AF9A1 +:10ECD000044608F043FC204608F051FC204608F0AA +:10ECE00073FC002010BD80B54FF47A720023EBF75F +:10ECF00089F908F056FC002002BD00002DE9F0471C +:10ED000084B00E4617469A46DDF838804FF0000969 +:10ED1000DDE90C45002803D022462B4608F0ADFD66 +:10ED2000002E0ED0B6F90000009000A8B6F902102F +:10ED30004160B6F90410816022462B46494608F02E +:10ED400067FD002F24D09FED270AD7ED000A60EE63 +:10ED5000800AFDEEE00ACDED000A00A8D7ED010A19 +:10ED600060EE800AFDEEE00AC0ED010AD7ED020A6E +:10ED700020EE800ABDEEC00A80ED020A22462B4634 +:10ED800048F0200108F094FD002801D04FF0200940 +:10ED9000BAF1000F0DD022462B460021504608F054 +:10EDA000C3FD002801D1012004E04FF0200900201C +:10EDB00000E00020002802D008F060FE81464846AE +:10EDC00004B0BDE8F08780B50A4600A90AF0BEFB92 +:10EDD00002BD80B50A4600A90AF016FC02BD0AF081 +:10EDE00014BD00000000004280B508F0F3FD0020D3 +:10EDF00002BD80B508F0DCFD002002BD80B508F042 +:10EE0000DDFD002002BD80B508F0DEFD002002BD62 +:10EE10000CF0F5BE08F09DBB08F03CBC696E765F57 +:10EE2000696E69745F696E76656E73656E73655F32 +:10EE300061706900433A5C50726F6A6563745C4E3E +:10EE40006F7465335F466972655C4E6F7465335FDE +:10EE5000466972655C496E76656E53656E73655C76 +:10EE60006D706C5C696E76656E73656E73655F61FF +:10EE700070692E630000000038B50C461546010A83 +:10EE80008DF8001000A9487048782018B0F5807FF0 +:10EE900002DD4FF0FF3032BD00AB02226D21682051 +:10EEA0000DF068F8002802D04FF0FF3032BD2B463D +:10EEB00022466F2168200DF05DF8002802D04FF047 +:10EEC000FF3032BD002032BD38B50C461546010A70 +:10EED0008DF8001000A9487048782018B0F5807FA0 +:10EEE00002DD4FF0FF3032BD00AB02226D21682001 +:10EEF0000DF040F8002802D04FF0FF3032BD2B4615 +:10EF000022466F2168200DF04DF8002802D04FF006 +:10EF1000FF3032BD002032BD2DE9F04F93B00546E1 +:10EF20000E461446002E02D14FF0FF3065E0002758 +:10EF3000A8460AE0B9F1010F05DB4A4639460FF24F +:10EF400058700DF03EF85744BFB2474544DA4FF0D1 +:10EF5000000907EB060BA8EB0700412802DB4FF086 +:10EF6000400A01E0A5EB070A5A46514689B23846E5 +:10EF7000FFF782FF002802D06FF001003DE002AAF7 +:10EF8000514689B23846FFF79FFF002802D06FF044 +:10EF9000020032E01FFA8AFA524602A958460DF0E2 +:10EFA0001DF8002804D009F1010964200DF00DF8C6 +:10EFB000A9F101000328CED3B9F1040FBADB9DF803 +:10EFC00008000090BB5D524639460FF2B0600CF06D +:10EFD000F8FF6FF0030010E0200A8DF804008DF8B0 +:10EFE000054001AB0222702168200CF0C3FF00280D +:10EFF00002D06FF0040000E0002013B0BDE8F08FF5 +:10F0000090F90010012901DB00207047002901D58B +:10F010000420704790F90110012901DB012070479D +:10F02000002901D50520704790F90200012801DB75 +:10F0300002207047002801D506207047072070473E +:10F0400038B50446FFF7DCFF0546E01CFFF7D8FFA4 +:10F0500045EAC005A01DFFF7D3FF45EA801080B246 +:10F0600032BD70B586B0044605A80FF244610A6847 +:10F07000026004A80FF23C610A68026003A80FF264 +:10F0800038610A68026002A80FF230610A68026003 +:10F0900004F0030005A9425C8DF8042001ADC4F31F +:10F0A000C102525C6A70C4F38112515CA97004A958 +:10F0B000405C8DF8000000AEC4F3C100405C70708D +:10F0C000C4F38110405CB07001AA032140F22640D5 +:10F0D000FFF7D2FE002802D04FF0FF304DE000AA2B +:10F0E000032140F22A40FFF7C7FE002802D04FF06C +:10F0F000FF3042E0032203A901A8E4F73CFD03220C +:10F1000002A900A8E4F737FD60070BD59DF80400BD +:10F1100040F001008DF804009DF8000040F001006F +:10F120008DF80000A00607D5687840F001006870EF +:10F13000707840F001007070E00507D5A87840F0C5 +:10F140000100A870B07840F00100B07001AA03215E +:10F1500040F23F40FFF790FE002802D04FF0FF3012 +:10F160000BE000AA032140F23140FFF785FE0028A2 +:10F1700002D04FF0FF3000E0002006B070BD10B5A7 +:10F1800004460022382168200CF0E2FE002824D139 +:10F190000022232168200CF0DBFE00281DD1002274 +:10F1A0006A2168200CF0D4FE002816D1002C17D05C +:10F1B0000C226A2168200CF0CBFE00280DD1C02261 +:10F1C0006A2168200CF0C4FE002806D10022232109 +:10F1D00068200CF0BDFE002802D04FF0FF3010BDBB +:10F1E000002010BD10B582B004000CD0C0208DF8F6 +:10F1F0000000C2208DF80100C4208DF80200C62056 +:10F200008DF8030004E004228B2100A8E4F780F8C5 +:10F2100000AA042140F6C410FFF72EFE2046401E2F +:10F220008041C043C00FFFF7AAFF16BD10B582B0E2 +:10F2300004000CD020208DF8000028208DF801005B +:10F2400030208DF8020038208DF8030004E00422FD +:10F25000A32100A8E4F75CF800AA042140F6CA1034 +:10F26000FFF70AFE2046401E8041C043C00FFFF753 +:10F2700086FF16BD30B585B002A90FF2444238CAE8 +:10F2800038C1052802D24FF0FF3021E0052190FB64 +:10F29000F1F0401E80B20146090A8DF800108DF889 +:10F2A000010000AA022140F21620FFF7E5FD002828 +:10F2B00002D04FF0FF300BE002AA0C2140F6ED1017 +:10F2C000FFF7DAFD002802D04FF0FF3000E0002009 +:10F2D00005B030BD80B5002801D0022200E0002238 +:10F2E000382168200CF034FE002802D04FF0FF30A7 +:10F2F00002BD002002BD70B584B0044625466D1ED7 +:10F30000AD41ED43ED0F00208DF8000000AEB220BE +:10F310007070B820B070C220F07000AA042168207C +:10F32000FFF7AAFDA3208DF80000600606D5C020D7 +:10F330007070C820B070C220F07003E0A32070701D +:10F34000B070F070200606D5C4203071CC207071EA +:10F35000C620B07103E0A32030717071B071A3209A +:10F360008DF807008DF808008DF8090000AA0A2121 +:10F3700040F6D310FFF780FD0320044203D0202085 +:10F380008DF8000002E0D8208DF8000000AA0121CD +:10F3900040F6E210FFF770FDD8208DF8000000AABB +:10F3A000012140F60200FFF767FD600703D5012049 +:10F3B000FFF718FF02E00020FFF714FFE00603D577 +:10F3C0000120FFF733FF02E00020FFF72FFF284660 +:10F3D000FFF7D5FE002004B070BD2DE9F0418CB0E0 +:10F3E00004460D46164600AB0222722168200CF03E +:10F3F000D9FD002802D04FF0FF30E3E09DF8000077 +:10F400009DF8011041EA0028139FB8F11C0F04D2A7 +:10F41000002038704FF0FF30D4E0B8F5007F19DDE0 +:10F4200001AB02223A2168200CF0BCFD002803D079 +:10F430000FF298200CF0C5FD9DF80400C00609D518 +:10F440000120FFF79CFE0FF2A0200CF0BAFD6FF038 +:10F450000100B7E001AB1C22742168200CF0A2FD72 +:10F46000002806D00FF2A0200CF0ABFD4FF0FF30CB +:10F47000A8E01C2098FBF0F0401E387001A89DF811 +:10F4800004104278120442EA0161827841EA0221C2 +:10F49000C2781143316001794279120442EA016174 +:10F4A000827941EA02219DF80B2011437160017AB3 +:10F4B0009DF80D20120442EA01619DF80E2041EAF8 +:10F4C00002219DF80F201143B160017B9DF81120AE +:10F4D000120442EA01619DF8122041EA02219DF8DE +:10F4E00013201143F160017C9DF8152042EA0121AF +:10F4F00029809DF816109DF8172042EA01216980A5 +:10F500009DF818109DF8192042EA0121A9809DF864 +:10F510001A109DF81B2042EA01212180007E9DF8EF +:10F520001D1041EA002060809DF81E009DF81F100C +:10F5300041EA0020A080002032E000EB4001454A73 +:10F540008B1893F9061093F9052093F90430B4F958 +:10F55000006013FB06F6B4F9027012FB0766B4F9FB +:10F56000047011FB0766B5F9007013FB07F3B5F9DA +:10F57000027012FB0732B5F9043011FB0321B6F516 +:10F58000004F01DB47F6FF76B1F5004F01DB47F690 +:10F59000FF7108AA22F810600AAA22F81010401C75 +:10F5A0000328CADB00200AE008A931F8101024F86B +:10F5B00010100AA931F8101025F81010401C03286B +:10F5C000F2DB00200CB0BDE8F08138B5040002D1B8 +:10F5D0004FF0FF3032BD1F4D2878002801D00020A9 +:10F5E00032BD09222146281DE4F7C5FA00AB0222EC +:10F5F0006B2168200CF0D6FC9DF80000400604D575 +:10F6000000226B2168200CF0A3FCC8234FF4806219 +:10F610000FF2381140F66130FFF77EFC002818D158 +:10F620002046FFF70DFDFFF71CFD002802D06FF00C +:10F63000060032BD0020FFF74DFE002802D06FF01B +:10F64000070032BD012028700FF2D8000CF0B9FC81 +:10F65000002032BDF09A002010B50C460021002891 +:10F6600000D0C4210846FFF746FE002805D12046F9 +:10F67000FFF700FE002800D1002010BD0A444D50C5 +:10F680005F455252282564292825642928256429A4 +:10F6900028256429200A00000A444D505F5452492D +:10F6A000414C2825642928256429200A00000000EF +:10F6B0004CCD6C000CC92C003656760026466600F0 +:10F6C000FEF2ABC4AAF1DFDFBBAFDFDF0A5B444D64 +:10F6D000505D204649464F207374617475732065F0 +:10F6E00072726F720A0000000A5B444D505D202D5B +:10F6F000204649464F206F766572666C6F772065AD +:10F7000072726F720A0000000A5B444D505D202D3A +:10F71000204649464F2072656164206572726F729F +:10F720000A0000005B444D505D4669726D7761725E +:10F7300065206C6F616465642073756363657373C2 +:10F7400066756C6C79212121210A0000000070008F +:10F7500000000024000000020003000000650054C7 +:10F76000FFEF0000FA80000B12820001200030C37E +:10F770000E8C8CE914D5400213710F8E3883F883F8 +:10F780003000F883258EF8833000F883FFFFFFFFF9 +:10F790000FFEA9D6240004001A8279A10000003CC3 +:10F7A000FFFF00000010000038836FA2003E03300E +:10F7B0004000000000B2BAC23E80000020000000FD +:10F7C000000000004000000060000000000C00008D +:10F7D000000C186E000006920A16C0DF0000000040 +:10F7E000000000020000000400000007000000000C +:10F7F000FFFF0B2B0000165700000359000000000C +:10F8000000001DFA00026C1D000000004000000016 +:10F8100000000000000000000000000000000000E8 +:10F82000001942B5000039A20000B365D90E9FC986 +:10F830001DCF4C3430000000500000003BB67AE889 +:10F840000064000000C8000000000000000000008C +:10F8500000000000000000000000000000000000A8 +:10F860000000000000000000000000000001000097 +:10F870000000000000000000000000000000107206 +:10F8800000000040000000000000000005DC000057 +:10F890000000000000000000000000000000000068 +:10F8A0000000025800000000000000C80000000036 +:10F8B0000000000000010000000200000000000045 +:10F8C0000000000000000000000000000000000038 +:10F8D0000000000000000000000000000000000028 +:10F8E0000000000000000000000000000000000018 +:10F8F00000000000000000000000100040000000B8 +:10F90000000000060000B26A0000000000000000D5 +:10F9100000000000000000000000000000000000E7 +:10F9200000000000000000000000000000000025B2 +:10F930000000000016A000000000100000001000F1 +:10F94000002F0000000001F400001000002800005B +:10F95000FFFF4581FFFFFA72000000000000000079 +:10F96000004400050005BAC6004778A20000000167 +:10F970000000000000000600000000140000254DFB +:10F98000002F706D000005AE000C02D000000000DA +:10F99000000000000000000000000000001B00004C +:10F9A00000000000000000000000000000640000F3 +:10F9B000000800000000000000000000000000003F +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000000000000000000000000000007 +:10FA0000000000000000000000000000001B0000DB +:10FA10000000000000000000000E000E00000AC7F9 +:10FA20000004000000000032FFFFFF9C00000B2BD1 +:10FA3000000000020000000100000064FFE500007B +:10FA400000000000000000000000000000000001B5 +:10FA50000000000000010000000000000001800024 +:10FA60000001800000018000002426D30000000077 +:10FA700000000000000600100096003C000000009E +:10FA80000000000000000000000000000C0A4E68AA +:10FA9000CDCF770950166759C619CE8200000000F5 +:10FAA0000000000000000000000000000000000056 +:10FAB0000000000017D784000300000000000000D1 +:10FAC00000000000C7938F9D1E1B1C190000000042 +:10FAD0000000000000000000000000000000000026 +:10FAE0000000000002031885000040000000000331 +:10FAF00000000003000000000000000040000000C3 +:10FB000000000000000000000000000000000000F5 +:10FB100000000000000000000000000000000000E5 +:10FB200000000000000000000000000000000000D5 +:10FB3000677DDF7E72902E554CF6E688000000004F +:10FB4000000000000000000000000000D8DCB4B895 +:10FB5000B0D8B9ABF3F8FAB3B7BB8E9EAEF132F5BD +:10FB60001BF1B4B8B08097F1A9DFDFDFAADFDFDFD8 +:10FB7000F2AAC5CDC7A90CC92C97F1A9892646665A +:10FB8000B28999A92D557DB08AA896365676F1BAD4 +:10FB9000A3B4B280C0B8A89711B28398BAA3F024D6 +:10FBA0000844106418B2B9B49883F1A329557DBAFA +:10FBB000B5B1A38393F0002850F5B2B6AA83932879 +:10FBC000547CF1B9A3829361BAA2DADEDFDB819AB9 +:10FBD000B9AEF5606870F1DABAA2DFD9BAA2FAB9A3 +:10FBE000A38292DB31BAA2D9BAA2F8DFB9A3A3A348 +:10FBF000A3A3B8A2DFDFDFBAA0DFDFDFD8F1B9A1AE +:10FC0000B280C0B089A0C3C5C7B181B497A011B5F7 +:10FC100090A1F0240844106418F19081A02D553D66 +:10FC2000F2A5D0F8F9D1D9F8F180A2C3C5C7D8F3AD +:10FC3000A2DEF18290A42D557D8494F5A120D9F304 +:10FC4000A2F8D8F5A140D9F3A2F8D8F5A160D9F36C +:10FC5000A2F8D8F2B9A2F8F9D1D9A6DEA5D0DEF47F +:10FC60001AD8F28696A109D1DBF411D8F211D1DBB2 +:10FC7000F41CD8F219D1DBF414D8F410D8F3A2F89C +:10FC8000F9D1DAF2A6F8F1A5DED8F4A11616D8F16A +:10FC9000A5F8A1859509D9F1A5DEF2A5D0DEA6F8D3 +:10FCA000D8F4A109D8F3A2F8F9D1F4D90819DA42A5 +:10FCB000F2A2DEF40BD8F1A5F8A1859519DAF407C4 +:10FCC000D8F2A6DEA5D0DED8F1B8AAB38DB4980DCF +:10FCD000355DB2B6BAAF8C96198F9FA70E161EB4BB +:10FCE0009AB8AA872C547CBAA4B08AB691325676B8 +:10FCF000B28494A4C808CDD8B8B4B0F19982A82D24 +:10FD0000557D98A80E161EA22C547C92A4F02C505F +:10FD100078F184A898C4CDFCD80DDBA8FC2DF3D9CC +:10FD2000BAA6F8DABAA6DED8BAB2B68696A6D0F3E4 +:10FD3000C841DAA6C8F8D8B0B4B882A892F52C5455 +:10FD40008898F135D9F418D8F1A2D0F8F9A884D957 +:10FD5000C7DFF8F883C5DADF69DF83C1D8F401149F +:10FD6000F1A8824EA884F311D182F5D99228978800 +:10FD7000F109F41C1CD884A8F3C0F9D1D99782F1F9 +:10FD800029F40DD8F3F9F9D1D982F4C203D8DEDF12 +:10FD90001AD8F1A2FAF9A88498D9C7DFF8F8F8833D +:10FDA000C7DADF69DFF883C3D8F40114F198A882B9 +:10FDB0002EA884F311D182F5D992509788F109F4D5 +:10FDC0001CD884A8F3C0F8F9D1D99782F149F40D71 +:10FDD000D8F3F9F9D1D982F4C403D8DEDFD8F1AD74 +:10FDE0008898CCA809F9D98292A8F57CF1883ACFF5 +:10FDF000944A6E98DB6931DAADF2DEF9D88795A8BE +:10FE0000F221D1DAA5F9F417D9F1AE8ED0C0C3AE84 +:10FE100082C684C3A88595C8A588F2C0F1F4010EF6 +:10FE2000F18E9EA8C63E56F554F18872F40115F184 +:10FE30009845856EF58E9E0488F142985A8E9E06EE +:10FE40008869F4011CF1981E1108D0F504F11E9781 +:10FE50000202983625DBF9D985A5F3C1DA85A5F329 +:10FE6000DFD88595A8F309DAA5FAD88292A8F578A3 +:10FE7000F1881A849F26889821DAF41DF3D8879F89 +:10FE800039D1AFD9DFDFFBF9F40CF3D8FAD0F8DAC7 +:10FE9000F9F9D0DFD9F9D8F40BD8F3879F39D1AF6E +:10FEA000D9DFDFF41DF3D8FAFCA869F9F9AFD0DA8D +:10FEB000DEFAD9F88F9FA8F1CCF398DB45D9AFDFF4 +:10FEC000D0F8D8F18F9FA8CAF38809DAAF8FCBF8A2 +:10FED000D8F2AD978D0CD9A5DFF9BAA6F3FAF412D2 +:10FEE000F2D8950DD1D9BAA6F3FADAA5F2C1BAA61D +:10FEF000F3DFD8F1BAB2B68696A6D0CAF349DAA62D +:10FF0000CBF8D8B0B4B8D8AD84F2C0DFF18FCBC392 +:10FF1000A8B2B68696C8C1CBC3F3B0B48898A8215E +:10FF2000DB718D9D71859521D9ADF2FAD88597A8A1 +:10FF300028D9F408D8F28D29DAF405D9F285A4C2BB +:10FF4000F2D8A88D9401D1D9F411F2D88721D8F430 +:10FF50000AD8F28498A8C801D1D9F411D8F3A4C85A +:10FF6000BBAFD0F2DEF8F8F8F8F8F8F8F8D8F1D826 +:10FF7000B8B4B09786A8319B069907AB9728889BA1 +:10FF8000F00C201440B0B4B8F0A88A9A285078B782 +:10FF90009BA8295179247059446938644831F1BBD0 +:10FFA000AB88002C547CF0B38BB8A804285078F1AF +:10FFB000B088B49726A85998BBABB38B0226466687 +:10FFC000B0B8F08A9CA82951798B2951798A24707C +:10FFD000598B2058718A4469388B3940688A644843 +:10FFE000318B30496088F1AC002C547CF08CA80433 +:10FFF000285078F1889726A85998AC8C0226466636 +:020000022000DC +:10000000F0899CA829517924705944693864483191 +:10001000A98809205970AB11384069A81931486086 +:100020008CA83C415C207C00F187981986A86E76EC +:100030007EA999882D557DD8B1B5B9A3DFDFDFAE94 +:10004000D0DFAAD0DEF2ABF8F9D9B087C4AAF1DFCD +:10005000DFBBAFDFDFB9D8B1F1A38EC6DFB084F26A +:10006000C8F8F9D9DED89385F14AB183A308B583DE +:100070009A0810B79F10D8F1B0BAAEB08AC2B2B623 +:100080008E9EF1FBD9F41DD8F9D90CF1D8F8F8AD52 +:1000900061D9AEFBD8F40CF1D8F8F8AD19D9AEFBA4 +:1000A000DFD8F416F1D8F8AD8D61D9F4F4ACF59C35 +:1000B0009C8DDF2BBAB6AEFAF8F40BD8F1AED0F8BF +:1000C000AD51DAAEFAF8F1D8B9B1B6A3839C08B94C +:1000D000B1839AB5AAC0FD3083B79F10B58B93F258 +:1000E0000202D1ABDADED8F1B080BAABC0C3B284C1 +:1000F000C1C3D8F3B9ACDED8B1B9F38BA391B609BB +:10010000B4D9B9ACF8ABDEB0879CB9A3DDF1B38B41 +:100110008B8B8B8BB087A3A3A3A3B080B490F2A3E7 +:10012000A3A3A3A3A3A3A3A3A3F1B087B59AA3F307 +:100130009BA3A3DCBAACDFB9A3A3A3A3A3A3A3A3EC +:10014000A3A3A3A3A3A3A3D8F3B9ACF8F9D1D9F47B +:100150001BD8F3FAF9D1D9F41BD8F2B1B5B98CACEC +:10016000F8F9D1D9C2D8F2F9D9DEF40913DAF2DDFF +:10017000C6DCF43111D8F2ABFA8B9BA349D9F40752 +:1001800006DAF2B9ABDFFED8F1BBB3B7AAF9DAFFF2 +:10019000D9809AAA28B48098A720B79787A866889C +:1001A000F07951F1902C870CA781976293F07171CF +:1001B0006085940129517990A5F1284C6C870C95A4 +:1001C000188578A38390284C6C886CD8F3A28200A1 +:1001D000F210A8921980A2F2D926D8F188A84DD998 +:1001E00048D896A83980D93CD89580A839A6869851 +:1001F000D92CDA87A72CD8A8899519A980D938D8FD +:10020000A88939A980DA3CD8A82EA83990D90CD869 +:10021000A8953198D90CD8A809D9FFD801DAFFD808 +:100220009539A9DA26FFD890A80D8999A810809849 +:1002300021DA2ED88999A83180DA2ED8A88696316D +:1002400080DA2ED8A8873180DA2ED8A88292F3419E +:1002500080F1D92ED8A882F31980F1D92ED882AC9A +:10026000F3C0A28022F1A62EA72EA92298A829DAEF +:10027000ACDEFFD8A2F22AF1A92E8292A8F2318038 +:10028000A696F1D900F1F1F1AC8C9C0C30ACDED02B +:10029000DEFFD88C9CACD010ACDE8092A2F24C82F7 +:1002A000A8F1CAF235F19688A6D900D8FF0000005F +:1002B00010B50024E1F706FF002800D001242046F5 +:1002C00010BD000038B5DFF8B04B40F21722002116 +:1002D0002046E3F71DF8012084F88101022084F80C +:1002E0009201032084F8A301042084F8B401DFF80C +:1002F0008C0BC4F82E01002084F8F10004F21510D4 +:1003000004F581711322E3F7FBFBA320A4F8F200AC +:100310004FF21860C4F8F800DFF8644B0FF63905A7 +:10032000256000F058FCDFF85C1B086000F070FCF2 +:10033000DFF8541B086000F09AFCDFF8501B0860DF +:1003400000F0C7FCDFF8481B086000F0FAFCDFF89B +:10035000B01C0860A560012032BD7CB5050005D148 +:100360000FF27000BDE87640E1F72BBFDFF8084BD5 +:1003700004F23716B168D4F8100100F02AFB05EB3F +:1003800005110A1902F2C611F3698B60336A4B60DA +:10039000C860708BC2F8C6010020F06130627083C3 +:1003A000D4F81001B06004F5D27300269E605E6040 +:1003B000C4F8A461DE60C4F8370148680190886819 +:1003C0000090D2F8C631CA68691E0FF21800E1F732 +:1003D000F8FE73BD534C4D232049445820455252DA +:1003E00000000000534C4D23532053455420564DDC +:1003F0004255462025642F25642F25642F25642F20 +:100400002564000008B4F0B51B9BDFF86C4AC4F803 +:100410002A1104F58475AA6084F828310599C4F876 +:1004200002119FED960A0EA9D1ED080A60EE800A2E +:10043000FDEEE00A10EE901AA4F806110EA9D1ED17 +:10044000050A60EE800AFCEEE00AC4ED420ADDED2A +:100450000E0A20EE800ABCEEC00A85ED010AC98CA6 +:1004600029730C2194F8F02011FB024203681360F9 +:1004700094F8F02011FB02424368536094F8F02096 +:1004800011FB02418068886004F1F006287B04F0CB +:10049000F9FEB5EE400AF1EE10FA08DD287B0028DF +:1004A00005D0307B462804D2401C307301E0002088 +:1004B0003073297BDFF8C87997F904004FF0FF32D9 +:1004C000904202D00A4690420AD0062901D008295B +:1004D00003D10FF29C00E1F774FE95F90C0038711E +:1004E000287B062801D008280ED14FF21860B06092 +:1004F0007088642803D00FF28800E1F762FE642060 +:100500007080A868706017E04FF21860B060716882 +:10051000A86800F05EFA4EF6612188420CD370881C +:10052000A32803D00FF26400E1F74BFEA3207080F4 +:10053000A86870600020307394F8F000401C84F8C4 +:10054000F000C0B2142804D3002084F8F000012089 +:100550007070B8688047054604F2151004F5817183 +:100560001322E3F7CDFA2846F0BC5DF808FB000043 +:10057000534C4D2057265220555020256400000032 +:10058000534C4D204357203100000000534C4D2068 +:10059000435720312E360000DFF8500C90F8290127 +:1005A0007047000010B586B00446C9B20846401E28 +:1005B00005282ED8DFE800F0030A11181F2600A82E +:1005C000DFF82C1C1122E3F79BFA2CE000A8DFF8DF +:1005D000241C1122E3F794FA25E000A8DFF8181C88 +:1005E0001122E3F78DFA1EE000A8DFF8101C11229B +:1005F000E3F796FA17E000A8DFF8041C1122E3F7EE +:100600007FFA10E000A8DFF8FC1B1122E3F778FA6C +:1006100009E00FF64C40E1F7D4FD00A8DFF8D41B49 +:100620001122E3F76DFA204600A91122E3F768FAD8 +:1006300006B010BD012906D015D3032910D006D36A +:10064000042909D07047DFF8C01B08617047DFF844 +:100650002818C1F833017047DFF8AC1B8860704779 +:10066000DFF8A41B48607047DFF8801BC1F82E013B +:100670007047DFF8781B81F8320170470000C842EC +:1006800002E110B5002403E0204600F0FDF8641CF0 +:10069000062CF9D310BD2DE9F04100270A2802D01D +:1006A0000B286CD0B2E0012930D03DD303291FD0F4 +:1006B00002D304290ED037E0DFF8305B05F2921444 +:1006C00005F21B10816905F58470806800F081F9DE +:1006D00007462FE0DFF8145B05F5DA7405F21B100E +:1006E000016A05F58470806800F073F9074621E01F +:1006F000DFF8F85A05F2A31405F21B10C16905F5DD +:100700008470806800F065F9074613E0DFF8DC5A72 +:1007100005F2811405F21B10816A05F5847080686A +:1007200000F057F9074605E0DFF8E84A0FF64830D1 +:10073000E1F747FDC4F80D70DFF8B05AD4F80100B6 +:10074000D5F802110818D5F81511401AC4F801009F +:10075000D4F80500D5F808110818D5F81B11401A6F +:10076000C4F80500D4F8090005F584714968081833 +:1007700005F21B114968401AC4F8090046E0DFF889 +:100780006C5A04290FD105F5DA7405F21B16D6F858 +:100790002480414605F58470806800F01AF9074608 +:1007A000C6F820801BE0032913D1D5F8A421D5F881 +:1007B000B0110FF6DC20E1F704FD05F2A31405F2F9 +:1007C0001B10C16905F58470806800F002F90746C6 +:1007D00005E005F2C5140FF6C820E1F7F2FCC4F8F5 +:1007E0000D7005F21B16D4F80100F18E10FA81F09D +:1007F000C4F80100D4F80900B16B0818C4F8090066 +:10080000D4F80500F16B0818C4F80500BDE8F081C4 +:1008100010B501280CD036D303280ED003D30528F9 +:1008200013D028D310BDDFF8F0090021C18510BD19 +:10083000DFF8E4090021016310BDDFF83C46002029 +:10084000A4F84B01C4F84D0110BDDFF82C46182266 +:10085000002104F25110E2F75BFD1122002104F5A2 +:10086000EB70E2F755FD1122002104F2E710BDE81C +:100870001040E2F74DBD12220021DFF8A009BDE8CB +:100880001040E2F745BD10BD10B5012806D036D3A3 +:1008900003281CD00ED3042825D010BDDFF84C4906 +:1008A0001122002104F28110E2F732FD012084F8C8 +:1008B000810110BDDFF834491122002104F5C9700F +:1008C000E2F726FD04F281100221417410BDDFF829 +:1008D0001C491122002104F2A310E2F719FD0320A4 +:1008E00084F8A30110BDDFF804491122002104F5AA +:1008F000DA70E2F70DFD04F2A3100421417410BD7B +:10090000F8B50446012C25D02BD3032C13D01AD3D1 +:10091000052C08D025D2DFF8600500F23311D0F89D +:10092000100188601DE0DFF8500500F23311D0F8A7 +:100930001001C86015E0DFF8400500F23311D0F86F +:10094000100148600DE0DFF83005D0F81011C0F854 +:10095000331106E0DFF8200500F23311D0F8100162 +:100960000861DFF81405D0F810613046E8F7ECF9BB +:100970000022DFF8AC38F5F70DFBF4F797F90546E0 +:10098000EDB2DFF8A00800FB15663046E8F7DCF9A9 +:100990000022DFF89438F5F7FDFAF4F787F90746F7 +:1009A000FFB24EF6602000FB1760E8F7CDF9DFF8E4 +:1009B0007C28DFF87C38E8F7D5F9F4F777F9C0B28E +:1009C00000903B462A4621460FF6EC00E1F7F9FB82 +:1009D000F1BD10B40022884201D3421A08E00B1A7C +:1009E000DFF85048A34203D3DFF84C281018421A0E +:1009F000104610BC704770B501281BD01FD30328C8 +:100A00000DD011D3052805D019D2DFF83008816840 +:100A100004241DE0DFF82408C168052418E0DFF88D +:100A20001C084168032413E0DFF84C04D0F8F911E6 +:100A300002240DE0DFF804080169012408E00FF644 +:100A40008C00E1F7BEFBDFF83004D0F8101107246A +:100A5000DFF82404D0F81001FFF7BBFF0546E8F7E4 +:100A600073F90022DFF8B837F5F794FAF4F71EF9B6 +:100A7000C0B2DFF8B01701FB10552846E8F764F95B +:100A80000022DFF8A437F5F785FAF4F70FF90646E8 +:100A9000F6B24EF6602000FB1650E8F755F9DFF885 +:100AA0008C27DFF88C37E8F75DF9F4F7FFF8C0B270 +:100AB0000346324621460FF62400BDE87040E1F7B8 +:100AC00080BBDFF8BC1388607047DFF8AC030321FC +:100AD00080F82911D0F81011C0F8FD11DFF8AC032F +:100AE00000687047DFF89003022180F82911D0F8E0 +:100AF0001011C0F8F911DFF88C0300687047DE4868 +:100B0000012180F82911D0F81011C0F80912DE482F +:100B100000687047D848052180F82911D0F81011D5 +:100B2000C0F80512C0F86511D9480068704780B553 +:100B3000D148042180F82911D0F81011C0F8011211 +:100B4000C0F86F110FF2A870E1F73BFBDFF8B004BB +:100B5000006802BD000000000020DFF8901691F848 +:100B6000F110012900D0704780B5FFF7BBFFFFF7F8 +:100B7000A8FF0220FFF7C4FE012002BD80B50221BC +:100B80000A20FFF788FD00F089FA02280ED1012023 +:100B9000FFF73EFE0220FFF72EFFFFF7B0FFFFF743 +:100BA00090FF0120FFF7ACFE072002BD00F0CCF85B +:100BB00001280ED10320FFF72BFE0220FFF71BFFB9 +:100BC000FFF783FFFFF77DFF0320FFF799FE042067 +:100BD00002BD092002BDDFF86806704780B501211B +:100BE0000A20FFF758FD00F059FA002801D0112023 +:100BF00002BD0220FFF70CFE0120FFF7FCFEFFF70D +:100C000071FFFFF75EFF0220FFF77AFE022002BDB0 +:100C1000DFF83006704710B500F0CAF8044603212B +:100C20000A20FFF738FD092C10D00A2C1DD1052011 +:100C3000FFF7EEFD0320FFF7DEFEFFF76BFFFFF788 +:100C400040FF0520FFF75CFE052010BD0220FFF7E6 +:100C5000DFFD0320FFF7CFFEFFF744FFFFF731FF73 +:100C60000220FFF74DFE022010BD0E2010BDDFF860 +:100C7000D805704710B5002400F00CF905281BD0EA +:100C800009280AD00B2822D10320FFF7C1FDFFF766 +:100C90001CFFFFF716FF0F2419E00220FFF7B8FD35 +:100CA0000520FFF7A8FEFFF71DFFFFF70AFF022050 +:100CB000FFF726FE03240AE00420FFF7A9FD052024 +:100CC000FFF799FEFFF733FFFFF7FBFE06242046F0 +:100CD00010BDDFF87805704738B5002400F092F9B0 +:100CE000054604210A20FFF7D6FC032D06D0042D6B +:100CF00013D0072D20D0082D20D020E00220FFF7B0 +:100D000087FD0420FFF777FEFFF7ECFEFFF7D9FE23 +:100D10000220FFF7F5FD082411E00320FFF778FD1E +:100D20000420FFF768FEFFF7D0FEFFF7CAFE03209E +:100D3000FFF7E6FD082402E00A2400E00B24204629 +:100D400032BDDFF80C05704710B5DFF8A044B4F8E9 +:100D50007B11112908D30FF2A450E1F732FA0020D9 +:100D6000A4F87B01012010BD04F58170807C00286F +:100D70000CD094F83221012A08D10FF28C50E1F7FF +:100D800020FA0020A4F87B01012010BD002803D127 +:100D90000020A4F87B0109E0D4F81501D4F8022161 +:100DA000824203D05118081AA4F87B01002010BD1C +:100DB00070B5DFF8384404F2F200817A462903D393 +:100DC00094F81421002A09D1B4F84B210A2A05D23B +:100DD00094F81431062B01D0082B19D194F8143152 +:100DE000062B01D0082B04D10FF22850E1F7E9F9C6 +:100DF00007E0462905D3002B03D00FF22450E1F77A +:100E0000E0F90020A4F84B01C4F84D010A2070BDA0 +:100E1000D4F84D1141F28835A94206D30020A4F838 +:100E20004B01C4F84D01092070BD002B08D10020F2 +:100E3000A4F84B01D4F82A014018C4F84D0118E079 +:100E40000021C4F84D110169D4F81551A94203D10C +:100E500094F82761B3420CD0B4F8F230808A834210 +:100E600004D28818401BA4F84B0102E00020A4F82B +:100E70004B01002070BD0000D02F0120C0270900C9 +:100E8000009B00204C660120506601205466012022 +:100E900058660120F8B50024D44D05F58476377BDB +:100EA000002F35D005F58170808805F21B11097B74 +:100EB000002922D1012191FBF0F0E7F73BFF224608 +:100EC000DFF89033E7F74EFFF3F706FFD5F815117B +:100ED000D5F802218A4202D3511A484307E0E7F7C6 +:100EE00033FF2246DC4BE7F73DFFF3F7F5FED5F87D +:100EF00061114018C5F861010AE0B5F8F2108142AD +:100F000006D2D5F86101D5F82A110818C5F8610193 +:100F1000D5F81511D5F802218A4237D0062F01D015 +:100F2000082F03D105F26110B368436005F2531036 +:100F3000B5F8F23005F58177BF88BB420BD2038943 +:100F4000D3185B1A03819BB20B2B06D305F26113F6 +:100F5000B7685F6001E023460381B5F85131D218CC +:100F6000511AA5F851114168D5F808215118D5F842 +:100F70001B21891A4160D5F853017168081805F2E0 +:100F80001B114968401AC5F8530105E0002F03D131 +:100F900005F253102146018105F261104168B068E5 +:100FA000FFF717FDD5F8F81088421CD303210B205A +:100FB000FFF771FBD5F8D701D5F8E8110818B5F897 +:100FC000511110FA81F1D5F86121307B002805D14B +:100FD0000FF25830E1F7F5F8092404E00FF2603021 +:100FE000E1F7EFF80B24D5F86101D5F82E1188420E +:100FF00004D304210B20FFF74EFB05242046F2BD4D +:101000005C66012070B5794C04F588700579D4F8D8 +:101010001501D4F80211814220D0062D01D0082DEF +:1010200003D1D4F81021C4F86F21B4F8F220B4F839 +:1010300006319A420DD2B4F869218918081AA4F829 +:10104000690180B20B2807D3D4F81001C4F86F01EE +:1010500002E00020A4F86901072605E0002D02D176 +:101060000020A4F869010826D4F86F11D4F8100103 +:10107000FFF7AFFCD4F8F81088420CD3002D05D14F +:101080000FF2D020E1F79DF8032604E00FF2D42000 +:10109000E1F797F80426304670BD000010B4002038 +:1010A0009FED5A0ADFED590A9FED581ADFED571AE6 +:1010B0009FED562ADFED552A024612E00C2313FB62 +:1010C00002110B6803EE103A30EE030A4B6803EE90 +:1010D000103A70EE830A8B6803EE103A31EE031A71 +:1010E000521C4249142AE9DBB3EE043A80EE030AAB +:1010F000C0EE830A81EE031A024627E00C2313FB9D +:1011000002131C6803EE904A73EEC03A1C6804EEAA +:10111000104A34EE404A43EE841A5C6803EE904A6B +:1011200073EEE03A5C6804EE104A34EE604A03EE77 +:10113000842A9C6803EE904A73EEC13A9C6804EEE0 +:10114000104A34EE414A43EE842A521C142AD5DB5D +:1011500082EE830ADFED2E0A81EE831AB4EE601A66 +:10116000F1EE10FA24D582EE031AB4EE601AF1EE15 +:1011700010FA1DD5B4EE600AF1EE10FA18D5C1F8D8 +:10118000470191F82901022806D1D1F8FD00D1F8D4 +:101190002A211018C1F8FD00D1F8FD002F4A904215 +:1011A00004D30020C1F8FD0002201CE001201AE059 +:1011B000D1F84721D1F82A319A18C1F8472191F87E +:1011C0002931012B02D140F6B83301E04FF47A7394 +:1011D000934207D20246C1F8FD20C1F8472181F8A9 +:1011E000012100E0012010BC70470000D02F012039 +:1011F00051310120623101207331012084310120FD +:10120000A6310120B7310120033101200000000088 +:10121000CDCCCC3D953101201D310120393101204B +:1012200040774B4180EE3600004CED40FCA9F1D2F6 +:101230004D62503FA1780F05005C2605C9310120A1 +:101240007D0B0208DD0B0208170C0208750C020862 +:10125000D90C02080000244000001C40C0270900EF +:10126000534C4D204D6574686F642043616C6C2055 +:101270004552522025640000534C4D204D65746842 +:101280006F642043616C6C20455252203100000095 +:10129000534C4D2353204E4D2025642F25640000D0 +:1012A000534C4D204D6574686F642043616C6C2015 +:1012B0004552522033000000534C4D204D44202F06 +:1012C00025642F25643A25643A256400534C4D2348 +:1012D000532053455420545320455200534C4D2322 +:1012E000532044552025642F25643A2564000000CE +:1012F000534C4D2053542048500A0000534C4D206D +:101300004252202564000000534C4D20425220538D +:1013100054000000534C4D20474F20564D2F3100B4 +:10132000534C4D20474F20564D2F3200534C4D23E8 +:101330005320564D2053544F502025642F256400D0 +:10134000534C4D235320564D20534C4F572025646A +:101350002F256400534C4D235320504D2053544FA0 +:1013600050000000534C4D235320504D20534C4F00 +:101370005700000038B500200246DFF8C84403E0FB +:1013800004EB80018A63401C0928F9DB1046E06603 +:10139000A066642020606060DFF8AC04A060B5EE59 +:1013A000000A84ED030A84ED040A84ED050A84ED45 +:1013B000060A84ED070ADFF89404206205206062C3 +:1013C000A062104603E004EB80018A63401C0928F8 +:1013D000F9DB10466067A067E06704F180057C22B6 +:1013E00001462846E1F794FF0C22002104F12C006D +:1013F000E1F78EFF256731BD2DE9F04106460F4626 +:1014000090461C46DFF83C5485ED0B0AF1EE601A5D +:10141000C5ED0C1AB1EE410A85ED0D0A0A2205F15F +:101420002C01286F00F018FA00F03EF81421022871 +:1014300001D004280DD1A86F401CA86798FBF1F2D9 +:10144000904202DB0020E8670CE0E86F401CE86790 +:1014500008E0082801D0102804D1E86F401CE86794 +:101460000020A86796FBF1F0AA6F824201DB012001 +:10147000686797FBF1F0E96F814201DB0220686742 +:10148000686F012803D0022801D000206867696FC7 +:10149000080005D021700021A967E967696701E0AC +:1014A00000212170BDE8F0812DE9F0432DED048B82 +:1014B00087B09FEDA98ADFF88C4300202066606624 +:1014C000E06E461CE666A76EDFF884530A2F41DA09 +:1014D000D4F870900A220021484600F0D6F98046E0 +:1014E0000A220121484600F0D0F904EB870106EBFF +:1014F000860292008A63012F2ADB98ED000AD0ED64 +:10150000000A30EE600A8DED030A98ED010AD0ED75 +:10151000010A30EE600A03AA82ED010AD8ED020A40 +:1015200090ED021A70EEC10AC2ED020A05EB8700C7 +:101530009DED031ADDED031A21EE211A00EE001ACB +:1015400000EEA01A80ED061A8A6B496B511AC1632E +:10155000781CA0660A2E01DA03202867A06E0A28EC +:10156000C0F2E280401EA0660A221146206F04F0FD +:1015700017FD85ED040A0A221146206F04F02EFDA6 +:1015800085ED050A0A221146206F04F045FD85ED20 +:10159000060A002006E005EB8001D1ED070A38EECF +:1015A000208A401C0928F6DBF2EE040A95ED041AA5 +:1015B00081EE201A8DED001A95ED051AC1EE208AF4 +:1015C00000A8C0ED018A80EE209A80ED029AE06EBC +:1015D0000A2805DB00986860C5ED028A85ED039A4C +:1015E00000260FE00A22C6F1090109B2206F00F0BF +:1015F0004CF995ED031AD5ED020A95ED010A00F0BC +:10160000ADF8761C0A2EEDDB606A216E88423ADA6C +:10161000A06B2978002908D16866012129700099FA +:101620006960C5ED028A85ED039AA16A626E9142F6 +:101630000CDA697800290BD1A8660121697000993C +:101640006960C5ED028A85ED039A01E000216970A9 +:101650002168AA6E821A914208D26A78002A05D0BF +:101660000020A870E870012028674CE06A6E801A9C +:10167000814246D22878002843D00020A870E87024 +:10168000022028673FE000986860C5ED028A85ED7A +:10169000039A002028706870A878002801D10120E2 +:1016A000A8709FED660A28EE000AB5EE400AF1EE3A +:1016B00010FA03DC9FED620A28EE000AD4ED020A5C +:1016C000B3EE041A60EE810AF4EE400AF1EE10FA6D +:1016D00007D5E878002806D1A06BE8660120E870FD +:1016E00001E00020E8706068A0F5FA70A16BEA6E76 +:1016F000891A884205D2E878002802D00420286799 +:1017000001E00320286700200CE004EB8001CA6B95 +:101710008A63082805DA05EB80010A6ACA614A6C07 +:101720000A64401C0928F0DB286F012806D00DD37D +:10173000032807D004D3042806D007E0022006E0DF +:10174000042004E0082002E0102000E0002007B0A0 +:10175000BDEC048BBDE8F08300000000D0ED001A62 +:1017600031EEC00A3B4981ED000AD0ED011A71EE5D +:10177000E00AC1ED010AD0ED021A31EEC11A81ED85 +:10178000021AB5EE400AF1EE10FA03D5B1EE400AA6 +:1017900081ED000AF5EE400AF1EE10FA03D5B1EE44 +:1017A000600A81ED010AB5EE401AF1EE10FA03D598 +:1017B000B1EE410A81ED020A91ED000A2148D0ED17 +:1017C000030AB4EE600AF1EE10FA13D5D1ED010A66 +:1017D00090ED041AF4EE410AF1EE10FA0AD5D1EDBB +:1017E000020A90ED051AF4EE410AF1EE10FA01D565 +:1017F000012200E00022D0ED060AB4EE600AF1EE0C +:1018000010FA13D591ED010AD0ED070AB4EE600A83 +:10181000F1EE10FA0AD591ED020AD0ED080AB4EE05 +:10182000600AF1EE10FA01D5012100E00021036EFB +:10183000D2180266426E89184166704700007A44E9 +:1018400000007AC428440120000040413333B33EF5 +:101850005C4C0120586401200388934201D300238B +:10186000038003885B1C03809BB2934201D3002258 +:101870000280028802EB420300EB8300001D91EC22 +:10188000030A80EC030A01207047B0F90030591AAE +:1018900009B2002901D511FA82F109B201EB410226 +:1018A00000EB8200001D70472DE9F041DFF8B06BBE +:1018B000542200213046E1F72BFDDFF8A84B0C2223 +:1018C00000212046E1F724FDDFF89C5B1C2200216B +:1018D00005F11800E1F71CFD1C22002106F154005F +:1018E000E1F716FD0020E0614FF47A720146DFF85F +:1018F0007C0BE1F70DFD4FF47A720021DFF8700BDD +:10190000E1F706FD002020626062DFF8686B70641A +:10191000B064A062E062F0642063DFF85C7BB861D1 +:101920006063A063E063012020640020306570657F +:101930004FF0FF306064A0640020E064B065F8619F +:10194000F065386230667066B0661C22014605F1AB +:101950003400E1F7DDFC0020F066706308220146E8 +:101960003046E1F7D5FC2C22002106F10800E1F712 +:10197000CFFC42F21070308470840020706102202D +:1019800030830020B06038800C2201462846E1F701 +:10199000BFFCDFF85C0C6860DFF8580C28604FF083 +:1019A000FF302881002020732065B063E0813C2255 +:1019B000014607F12400E1F7ABFC002038663067F0 +:1019C00078807866F063B0677067606506F18408B8 +:1019D0002C2206F108014046E2F7CDF8C4F8588001 +:1019E0000020E0652066386760667867B867E06663 +:1019F000A066A067606720670120A8656865286504 +:101A0000002068662866E86528220146DFF8E80BB2 +:101A1000E1F77EFC0020F8670C22014604F110007B +:101A2000E1F776FC0C22002105F10C00E1F770FCD7 +:101A30001022002107F10800E1F76AFC10220021C2 +:101A400006F1B000E1F764FC0620A6F84000002093 +:101A5000F880C6F88000F067E067DFF8A80DB86688 +:101A60000020F866BDE8F08110B584B0DFF8F849D1 +:101A70000C22214600A8E2F77EF8FFF715FF0C22A2 +:101A800000A92046E2F777F81FBD00002DE9F04FCE +:101A90002DED0C8B83B00020029082460446DFF8C7 +:101AA000D85995ED1E8AD5ED078AC5ED1E8ADFF857 +:101AB000C46996ED16AA85ED07AADFF8A87997ED17 +:101AC000139ADFEDAC9AB8EE490AC9EE80AAC6EDCA +:101AD00016AAD7F834B0786CABEB0000FA30FA21D4 +:101AE000B0FBF1F201FB12081FFA88F8B8F14C0FB5 +:101AF00002DA386C012804D12046F0630220A88065 +:101B000095E1D6F85490B9F1040F30D3F4EE4A8A37 +:101B1000F1EE10FA2BD5B4EE6AAAF1EE10FA26D542 +:101B20001AEE900AE7F7F0F902460B46CDE90023DA +:101B300018EE900AE7F7E8F9DFF8C42ADFF8C43AAC +:101B4000E7F710F9DDE90023F4F7AAF80FD29FEDCB +:101B50008A0AF4EE40AAF1EE10FA08DB86ED16AA26 +:101B6000C5ED078A85ED1E8A0320A880B6E1D6ED73 +:101B700011BAC6ED12BA96ED13CA87ED0CCA4046EB +:101B800000EE100AB8EE400AD7ED090AC0EE800A4E +:101B900097ED0B1A81EE001A20467064F064786CA1 +:101BA000214621E0401C80B2FA2800D12046DFF80F +:101BB000BC2802EB8002D2ED001A71EEE01A96ED1D +:101BC000112A01EEA12A86ED112ADFF8A42802EBE2 +:101BD0008002D2ED001A71EEC11A96ED132A01EEC1 +:101BE000A12A86ED132A491C89B24145DADBD6EDDC +:101BF000110A80EE80BA86ED11BAD6ED130AC0EE56 +:101C000080CAC6ED13CAD5ED1DDAC5ED1CDA97ED15 +:101C1000170AD7ED180A30EE60DA85ED1DDA404676 +:101C200000F034FC012802D12046F063FFE0B9F156 +:101C3000000F05D1B08F052802D304465046B08767 +:101C4000B9F1000F05D1F08F052802D304195046D1 +:101C5000F08719FA84F0002830D19FEDC08B3CEE5C +:101C60008C0A10EE100AE7F74FF953EC182BE7F740 +:101C700079F85246DFF8B43BF4F712F816D33BEE8E +:101C80002B0A10EE100AE7F73FF953EC182BE7F791 +:101C900069F85246DFF8983BF4F702F806D3B3EE42 +:101CA000040AB4EE40DAF1EE10FA07D5B08F401C0A +:101CB000B087C7F848B00620A880B8E0B08F0028E9 +:101CC00002D004195046B08719FA84F0002819D1BF +:101CD000B7EE000AF4EE40AAF1EE10FA02D50720A2 +:101CE000A880A4E09FED9F0AF4EE40AAF1EE10FA5E +:101CF00005DBF08F401CF0870820A88097E0504655 +:101D0000F08703E0F08F04195046F087B0EE4B1ACD +:101D1000F0EE6C0AB0EE6A0A4146A4B2204600F02A +:101D200073FC012808D186ED16AA86ED13CAC5ED0D +:101D30001DDAC6ED11BA7AE09FED8B0AF4EE40AAE7 +:101D4000F1EE10FA02DBDFF8EC0AB0655046B0871E +:101D5000B9F1000F12D196ED160A86ED170A85ED3E +:101D6000080A87ED0ABAC5ED06CA87ED19DA00F050 +:101D70000FFB51E000007A4401004040B6EE008ABB +:101D8000484600F005FB012818D196ED160AF0EE42 +:101D9000000A20EE200A86ED160A4FF0010A6BEECB +:101DA000080AC6ED110A2CEE881A86ED131AC6ED44 +:101DB000120A87ED0C1A85ED070A641C96ED160AC7 +:101DC000D5ED070A70EE200A60EE880AC6ED170A04 +:101DD00096ED111AD6ED121A31EE211A21EE081ADB +:101DE00087ED0A1A96ED131AD7ED0C1A31EE211A67 +:101DF00021EE081A85ED061AB4EE600AF1EE10FA2B +:101E000002D4BAF1010F01D185ED080A3DEE8D0A29 +:101E100020EE080A87ED190A204680B200F0A6F8E5 +:101E200000F062F8C7F848B0012002907865DFF84A +:101E3000C8070299012902D10121018001E0A98886 +:101E40000180A4B2446080ED029AA0F80C80718FEA +:101E5000C181716C0161F16C4161B16D8161B96ADF +:101E6000C161A9690162F16D4162C7F844B0002007 +:101E7000F8647862F86238641022014605F10800BF +:101E8000E1F746FA0C22002107F11000E1F740FAD1 +:101E90000020E867F08A00281CD1D6F880000028CE +:101EA0000DD0306DF168401AB6F84010B0EB510F0C +:101EB00002DB002030830DE0012030830AE0B08F88 +:101EC000F18F11FA80F0032802DB0120308301E05A +:101ED00002203083C5ED1A9A0020E866029803B00C +:101EE000BDEC0C8BBDE8F08F38B50025DFF88445DC +:101EF0000120C4F8800000F06BFCA060606DB4F8B5 +:101F00004010884215D3206DE060206E6062606EE4 +:101F1000A062A06EE062E06D2061606F2063A08E21 +:101F2000A082E08EE0820120E06705460020C4F830 +:101F30008000284632BDDFF83C05C16801650021FC +:101F4000416541610221018300214163816A41664B +:101F5000016B81670021C0F880107047000000000D +:101F60000000E03F676616400100A0402DE9F14FF8 +:101F70002DED0A8B4FF0000C60460146DFF8E84477 +:101F8000DFF8F064BDF82820002A1DD0376D7A1ED6 +:101F900002F0070207F007039B5D9355D6F85480C3 +:101FA000A8F101020723B2FBF3F5C5EBC505521BEF +:101FB00004EB8202B8FBF3F3C3EBC303A8EB030308 +:101FC00004EB83035B6B536396ED178AB0EE040A50 +:101FD000B4EE408AF1EE10FA08D496ED1C0AF0EE49 +:101FE000080AB4EE600AF1EE10FA02D50322B286B6 +:101FF00001E00422B286376D07F0070EB6F8348090 +:102000000EF806800825724607E0042B01D10CF17A +:10201000010C521E00D508326D1E0ED09357032BB3 +:1020200001D1491C02E0042B00D1401C062DF0D345 +:10203000032BEAD1ACF1010CEBE7F28EDFF8383478 +:102040001A8080B2814689B209EB010303EBD37A8F +:102050004FEA6A0A8A4509DBCA4504DA4FF0040CE4 +:10206000A6F836C013E0BCF1000F04D54FF0030C06 +:10207000A6F836C00BE0BCF1010F04DB4FF0040CF6 +:10208000A6F836C003E01EF906C0A6F836C0B6F8BA +:102090003690B9F1040F00D008464A450AD0002016 +:1020A0003083F08A00281DD1706D04281AD30120D6 +:1020B000308317E0052B10DB00EE100AB8EE400A63 +:1020C00000EE903AF8EEE00A80EE200AF6EE080AFA +:1020D000B4EE600AF1EE10FA02D50120308301E07F +:1020E00002203083F0EE489AB7EE080AB4EE408A38 +:1020F000F1EE10FA02D5F7EE089A08E09FEDA10A7A +:10210000B4EE408AF1EE10FA01DBF1EE029A60685B +:10211000E6F7FAFE41EC1A0B19EE900AE6F7F4FE28 +:1021200041EC1B0B9FED98CBB8F1030F53EC1B2B2D +:102130002BD1DFF8FC0ADFF8FC1AE6F713FEDFF814 +:10214000F82ADFF8F83AF7F737FE82468B4653EC69 +:102150001B2BDFF8EC0ADFF8EC1AE6F703FE53EC72 +:102160001B2BE6F7FFFD02460B4650465946F3F798 +:1021700051FE53EC1A2BE6F7F5FD53EC1C2BE6F75A +:10218000F1FDE6F7E9FE306628E0DFF8BC0ADFF88B +:10219000BC1AE6F7E7FDDFF8B82ADFF8B83AF7F738 +:1021A0000BFE82468B4653EC1B2BDFF8AC0ADFF8A4 +:1021B000AC1AE6F7D7FD53EC1B2BE6F7D3FD5246DE +:1021C0005B46F7F7F9FD53EC1A2BE6F7CBFD53EC22 +:1021D0001C2BE6F7C7FDE6F7BFFE3066B4F9080032 +:1021E000022807D196ED180ADFEDA40A20EE200A96 +:1021F00086ED180AD6ED188A96ED190A30EE289A5F +:1022000086ED199A28EEA90ADFED9D0A20EE200A34 +:1022100086ED1A0AD6F854800720B8FBF0F0C0EB20 +:10222000C000A8EB000004EB800080ED0D0A002048 +:10223000F066B8F1070F20D208E004EB850090EDBE +:102240000D1A70EE810AC6ED1B0A6D1CD6ED1B0A35 +:10225000ADB2A845F1D201EE105AB8EE411AC0EE67 +:10226000810AC6ED1B0A13E004EB850090ED0D1A00 +:1022700070EE810AC6ED1B0A6D1CD6ED1B0AADB2CD +:10228000072DF1D3B1EE0C1AC0EE810AC6ED1B0A80 +:1022900010EE100AE6F738FE41EC100B9FED79AB1B +:1022A000B9F1040F53EC102BDFF8600C0BD1DFF801 +:1022B000601CE6F757FD53EC1A2BF7F77DFDE6F7A8 +:1022C0004BFEB0670AE0DFF84C1CE6F74BFD53EC21 +:1022D0001A2BF7F771FDE6F73FFEB067B06FE6F730 +:1022E00013FEDFF8342CDFF8343CE6F73BFD824682 +:1022F0008B462068E6F708FE52465B46E6F732FD5D +:1023000004460D4618EE100AE6F7FEFD0022DFF83F +:10231000103CE6F727FD02460B460020DFF8041CC0 +:10232000F3F738FE22462B46E6F71CFDE6F714FECF +:1023300000EE100A86ED1E0AD6ED1D0A70EE800A28 +:10234000C6ED1D0A781C306508F101017165BDF804 +:102350002820002A11D01018306550187065BDF87B +:10236000280001EE100AB8EE411A01EE289A86ED17 +:10237000199A41EE000AC6ED1D0ABDEC0A8BBDE8B4 +:10238000F18F000001009040B8ED221C1818783F32 +:10239000F0B52DED028B0027002857D0354E96ED75 +:1023A000168AF06DE6F7B0FD4FF06632DFF8783B45 +:1023B000E6F7D8FC02460B4614461D4618EE100AF6 +:1023C000E6F7A2FD22462B46F3F76AFC04D2708F93 +:1023D000022801D3012718E09FED800AB4EE408A5D +:1023E000F1EE10FA11D5244890ED050ADFED7C0AD4 +:1023F000B4EE600AF1EE10FA07DBDFED7A0AB4EE14 +:10240000600AF1EE10FA00D50127012F1ED196EDDA +:102410001C0AF0EE000AB4EE600AF1EE10FA0AD5DA +:102420009FED710AB4EE408AF1EE10FA03DB708F73 +:10243000022800D30027104890ED1A0ADFED6B0A3E +:10244000B4EE600AF1EE10FA00D500270A484069A0 +:10245000DFF8881D08603846BDEC028BF0BD000037 +:1024600098530120C4500120E054012000130120A2 +:10247000E8160120E0460120445101201EC47E3FA1 +:10248000000070420000000000000C40F0B52DED8F +:10249000048B81B006460024DFF8BC7CDFF8BC5C0E +:1024A000E88E03281DD295ED160ADFED4F0AB4EE33 +:1024B000600AF1EE10FA14DB95ED110AF2EE040A4F +:1024C000B4EE600AF1EE10FA0BD595ED130ADFEDCC +:1024D0004B0AB4EE600AF1EE10FA02D50420B8807F +:1024E000012495ED138A9FEDB89BDFF89C0C90EDCD +:1024F0000C0A38EE000A10EE100AE6F705FD53EC60 +:10250000192BE6F72FFC0022DFF8A83CF3F7C8FBF5 +:1025100021D3D5ED118A95ED120A38EE800A10EE1E +:10252000100AE6F7F1FC53EC192BE6F71BFC00222E +:10253000DFF8983CF3F7B4FB0DD3B3EE040AB4EE26 +:10254000408AF1EE10FA06D4B1EE040AF4EE408AA5 +:10255000F1EE10FA02D50520B880012495ED160A97 +:10256000DFEDA90AB4EE600AF1EE10FA29DB97ED6F +:10257000040AD7ED050A80EE200ADFEDA40AB4EEC6 +:10258000600AF1EE10FA1CDB00EE106AB8EE400AA9 +:10259000D7ED020AC0EE800AB6EE001AF4EE410A48 +:1025A000F1EE10FA0DD5D7ED030A80EE800AF6EEB3 +:1025B000000AB4EE600AF1EE10FA02D51520B880D8 +:1025C0000124102207F1080105F1B000E1F7D3FA68 +:1025D000204601B0BDEC048BF0BD00009A99993FF4 +:1025E000010020420000C84201000040CDCC4C3F19 +:1025F00000003543000090429C6001200000204212 +:10260000CDCCCCCCCCCCFC3F2DE9F0432DED028BD6 +:1026100081B008EE101A0026DFF8404B616D4018BB +:10262000DFF8645B02281AD394ED160ADFED780A0E +:10263000B4EE600AF1EE10FA11DB95ED0C0AD4ED60 +:10264000130A80EE200ADFED730AB4EE600AF1EEA1 +:1026500010FA04DBDFF8001B09228A800126022819 +:102660001CD39FED6D0AD5ED0C0A94ED131AC0EE44 +:10267000810AF4EE400AF1EE10FA0FDBD4ED120AF3 +:1026800094ED111AC0EE810AF4EE400AF1EE10FA50 +:1026900004DBDFF8C41A0A228A800126002819D038 +:1026A000DFF8B47A686EE6F72FFC4FF03332DFF8CC +:1026B000143CE6F757FB02460B4690469946786F66 +:1026C000E6F722FC42464B46F3F7EAFA02D20B2029 +:1026D000B880012694ED160ADFED500AB4EE600AC8 +:1026E000F1EE10FA08DA94ED170ADFED4D0AB4EEB8 +:1026F000600AF1EE10FA1CDB94ED130ADFED490AD3 +:10270000B4EE600AF1EE10FA0BD494ED110ADFED8D +:10271000460AB4EE600AF1EE10FA02D4608F022885 +:1027200007D3E08E032804D3DFF82C0A0C21818024 +:10273000012695ED0A0ADFED3B0AB4EE600AF1EEE0 +:1027400010FA08D494ED1C0AF1EE040AB4EE600A03 +:10275000F1EE10FA14D5A86EE96E0818E6F7EAFA59 +:102760000022DFF8643BE6F7FDFA0122DFF85C3B6C +:10277000F3F7AEFA04D8DFF8E0090D2181801646A0 +:10278000B8EEC80ADFF8480BD5ED040AC0EE800A9F +:10279000C0ED030AD5ED050AC0EE800AC0ED040ABB +:1027A000D5ED060A80EE800A80ED050A0C2200F1C4 +:1027B0000C0104F1C000E1F7DEF9304601B0BDECD8 +:1027C000028BBDE8F0830000000000000000E03F45 +:1027D0000020DFF888190A6D12F10A0F0FD29FED61 +:1027E000D00AD1ED190AF4EE400AF1EE10FA06DA39 +:1027F000D1ED1D0AF4EE400AF1EE10FA00DB0120E3 +:102800007047000000007A44010040403433333FF9 +:10281000010060400100A0400100704101009040B3 +:10282000010080400000C8430000164300C0624021 +:10283000000054400000A0402DE9F24F044600255E +:1028400000F087FCDFF88C6A28467065F06530661A +:10285000DFF8040929468180204600F063F9DFF89B +:10286000FC78307B052805D1012030642846307380 +:102870003887F081F06CBDF8001010FA81F0F06438 +:10288000D6F83480706C804501D101203064D6F8D0 +:10289000389009EB49004FEA800ADFF83C0A2168CA +:1028A0004AF800100AEB000B6068CBF80400A0683F +:1028B000CBF80800BDF80010204600F0D1F9F8610F +:1028C0009BED020ADBED010ADFF80C0A5AF8000062 +:1028D00001EE100A21EE011A00EEA01A00EE001A15 +:1028E00011EE100AE6F710FB41EC100BF7F7D8FADF +:1028F00051EC100BE6F730FB00EE100AD6F83CA0C6 +:10290000BAF1000F10D1284606E0DFF8C41901EB38 +:10291000800181ED060A401C0728F6D3F1EE0C0A6F +:1029200060EE200AC6ED070ADFF8A40900EB890073 +:10293000D0ED060A70EE600A96ED071A30EE811AA5 +:1029400086ED071A80ED060ADFF8900900EB880093 +:1029500080ED001A96ED090A30EE010A86ED090AAB +:10296000DFF8740900EB890090ED150A71EE400A5A +:10297000DFF86C1901EB8801C1ED000A80ED151A32 +:1029800096ED0B0A30EE200A86ED0B0A94EC031A42 +:1029900086EC031AF06F012806D101203064284626 +:1029A00030733887F08166E0306D401C3065317BD4 +:1029B000012901D003292FD1022822D2F98E04291E +:1029C0001FD2786D002856D196ED080A9FED971A10 +:1029D000B4EE410AF1EE10FA04D5F4EE410AF1EE3C +:1029E00010FA0BDAB9EE0C1AB4EE410AF1EE10FA55 +:1029F00041DBF4EE410AF1EE10FA3CD501203064DF +:102A000039E0272808D3398F002903D010FA81F044 +:102A10004B2801D30120306496ED080A00F086FAB5 +:102A2000307B012827D1388F002824D0F189002954 +:102A300021D0032211FA80F03D2801DB012030640F +:102A4000F88E042800D30222788F824201D201201E +:102A50003064B06EF066306F716F0818B16F08188F +:102A6000B0662846B06770673067FFF70FF8054615 +:102A70000020F0817887B06CA8EB000000F1FA0428 +:102A8000FA20B4FBF0F100FB114BBBF1960F03D120 +:102A900000F0A8FB01207065BBF1640F03D100F0CA +:102AA000CBFB01207065F88A00280AD0BBF1320FF9 +:102AB0000DD0BBF14B0F0DD1002038830120706584 +:102AC00008E0B88A002805D0BBF17D0F02D10120B3 +:102AD00038837065DFF8080850F82800306208F184 +:102AE00001007063FA2801D10020706309F1010030 +:102AF000B063072801D10020B0630AF10100F06340 +:102B0000706D002808D007F184042C2207F1080119 +:102B10002046E1F730F8B4652846BDE8F28F0000A2 +:102B20008096184BF0B50446DFF8A4572F6DDFF8F8 +:102B3000586696ED000AD4ED000A70EEC00A01EE68 +:102B4000107AB8EEC11A60EE810AF5EE400AF1EE95 +:102B500010FA17D5D5ED170A30EE600A10EE100AFC +:102B6000E6F7D2F921F00041DFF87827DFF8A0334B +:102B7000F3F7AEF802D8306F401C30673068E86574 +:102B8000784228656F6D96ED010AD4ED010A70EE6A +:102B9000C00A01EE107AB8EEC11A60EE810AF5EEB5 +:102BA000400AF1EE10FA16D5D5ED180A30EE600A9B +:102BB00010EE100AE6F7A8F921F00041DFF824270B +:102BC000D34BF3F785F802D8706F401C70677068BC +:102BD000286678426865AF6D96ED020AD4ED020A68 +:102BE00070EEC00A01EE107AB8EEC11A60EE810AEA +:102BF000F5EE400AF1EE10FA16D5D5ED190A30EED1 +:102C0000600A10EE100AE6F77FF921F00041DFF8C4 +:102C1000D426BF4BF3F75CF802D8B06F401CB06706 +:102C2000B06868667842A865F0BD00000100E04029 +:102C3000F0164850FC18E93F3411363CBD52DABF5B +:102C4000BBB88D06F016B83F6891ED7C3F35CE3F9E +:102C5000B29DEFA7C64BC73F0DE02D90A0F8A13F56 +:102C6000DFF8243590ED000AD3ED000A30EE600A5B +:102C7000D0ED010A93ED011A70EEC10A90ED021A2F +:102C8000D3ED021A31EE611AB5EE400AF1EE10FAF8 +:102C900002DDF0EE401A01E0F1EE401AF5EE400AD6 +:102CA000F1EE10FA02DDB0EE602A01E0B1EE602A2A +:102CB000B5EE401AF1EE10FA02DDF0EE412A01E025 +:102CC000F1EE412A71EE821A71EEA21AB5EE400AB7 +:102CD000F1EE10FA02DDB0EE402A01E0B1EE402A3A +:102CE000DFF87424D2ED022A32EE822A82ED022A23 +:102CF000F5EE400AF1EE10FA02DDB0EE602A01E0D6 +:102D0000B1EE602AD2ED032A32EE822A82ED032A46 +:102D1000B5EE401AF1EE10FA02DDB0EE412A01E004 +:102D2000B1EE412AD2ED042A32EE822A82ED042A43 +:102D300092ED052A32EE212A82ED052A93ED042A2E +:102D4000D0ED002A32EE222A83ED042A93ED052AE3 +:102D5000D0ED012A32EE222A83ED052A93ED062AD0 +:102D6000D0ED022A32EE222A83ED062AD86B002803 +:102D70000ED1002004E002EB8003C3ED091A401CD1 +:102D80000F28F8D3B2EE0E2A21EE822A82ED182AFD +:102D9000508802EB800393ED092A31EEC22AD2ED6E +:102DA000182A32EE222A82ED182AC3ED091AF2EE11 +:102DB0000E1AC2EE211ADFF8A433C3ED1C1ADFF895 +:102DC000283593ED012A22EE202AD3ED002A62EE67 +:102DD000802AF5EE402AF1EE10FA0DD4B5EE402A25 +:102DE000F1EE10FA08D493ED023A23EE013AB5EE73 +:102DF000403AF1EE10FA5AD593ED023A23EE013A39 +:102E0000F4EE422AF1EE10FA0AD5F4EE432AF1EE7E +:102E100010FA02D5F0EE623A0CE0F0EE433A09E027 +:102E2000B4EE432AF1EE10FA02D5F0EE423A01E098 +:102E3000F0EE433AF5EE403AF1EE10FAF4EE422AA3 +:102E400015DDF1EE10FA0AD5F4EE432AF1EE10FA90 +:102E500002D5B0EE622A21E0B0EE432A1EE0B4EEC5 +:102E6000432AF1EE10FA19D4B0EE432A16E0F1EE3F +:102E700010FA0AD5F4EE432AF1EE10FA02D5B0EEBC +:102E8000622A09E0B0EE432A06E0B4EE432AF1EEEE +:102E900010FA01D4B0EE432AB1EE422AD2ED1F2A35 +:102EA000F4EE422AF1EE10FA01D582ED1F2A83EDED +:102EB000000AC3ED010A83ED021A92ED1A0AF4EE3C +:102EC000401AF1EE10FA01D5C2ED1A1A92ED1B0A62 +:102ED000B4EE610AF1EE10FA01D5C2ED1B1A9FEDB6 +:102EE000BC0AF4EE401AF1EE10FA04D5536E13FA50 +:102EF00081F1516601E000215166401C508080B292 +:102F00000F2801D100205080506E70479A999999EE +:102F10009999C93F9999B93F7B14AE47E17A743FBB +:102F200000004E400000F03F6666E63F70B52DEDB4 +:102F3000048BB0EE408AF0EE608A9FEDA99A874834 +:102F4000C18E042901D3B0EE009AB5EE408AF1EEAD +:102F500010FA07DBF5EE408AF1EE10FA02D5418F48 +:102F6000491C4187884E317B002907D0022900F097 +:102F70007F8041D3032900F0A480E6E019EE100A17 +:102F8000E5F7C2FF41EC100B53EC102B0020DFF8EB +:102F90005C13F6F711FF41EC190B18EE100AE5F778 +:102FA000B3FF02460B4651EC190BF2F791FE11D814 +:102FB00018EE900AE5F7A8FF02460B4651EC190BF4 +:102FC000F2F76EFE06D2306D1028C0F0AF80002000 +:102FD0003065ABE0716BC24A52F8210000EE100A76 +:102FE000C349D1ED010AB4EE600AF1EE10FA40F1E6 +:102FF000AC8081ED010AA8E0716BB94A52F821104A +:1030000000EE101ABA49D1ED000AF4EE400AF1EED2 +:1030100010FA01D581ED000AB7EE000AB4EE408A3D +:10302000F1EE10FAC0F29180F4EE408AF1EE10FA5F +:1030300040F18B80316D01870020306519EE100A58 +:10304000E5F762FF02460B460020AA49F2F7E2FECE +:1030500002460B4614461D4618EE900AE5F754FF4B +:1030600022462B46F2F71CFE22D3022030736CE07E +:1030700019EE100AE5F748FF41EC100B00209D49BE +:1030800053EC102BF2F7C6FE41EC190B18EE100AA8 +:10309000E5F73AFF53EC192BF2F71AFE55D818EE64 +:1030A000900AE5F731FF53EC192BF2F7F9FD4CD2FA +:1030B00003203073706B8A4951F820008C494860B6 +:1030C00043E0716B864A52F8210000EE100A8849ED +:1030D000D1ED010AB4EE600AF1EE10FA01D581EDEE +:1030E000010A9FED770AB4EE408AF1EE10FA2CD572 +:1030F000F4EE408AF1EE10FA27DB306DF08100200B +:10310000306518EE900AE5F7FFFE02460B461446BE +:103110001D4619EE100AE5F7F7FE0022734BF6F78D +:103120004BFE22462B46F2F7BBFD0CD2012030733A +:103130006F490868F06548683066706B684A52F8F5 +:103140002000086001E000203073307BBDEC048B70 +:1031500070BD6048007B704744510120E04601206B +:10316000002804D05B49896D2C22E0F7D9BC704758 +:103170006148416D002904D1818FC08F10FA81F020 +:103180007047002070470000C450012051490020C2 +:10319000C8635948002242610222028305220A7351 +:1031A00000214165C165C166C1620161C1634163BE +:1031B0007047000000003E40002806D044494268A5 +:1031C0004A6002680A600089088170470000244054 +:1031D000EC51383E4948406E7047000014660120AB +:1031E0000000000010B5444CA08E002802D0022040 +:1031F000208301E00220208300206065E065E06616 +:10320000E0622061A082A086E063D4F880000128FB +:1032100001D1FEF790FE3948C188002905D0A4F8F5 +:1032200040100021C1800846E067E06F012802D10C +:103230000620A4F8400010BD10B52F4CE08E0028E9 +:1032400002D00020208301E0022020830020E062E1 +:103250002061082201462046E0F75AF80020E08667 +:10326000E0822061E063D4F88000012803D1BDE84A +:103270001040FEF760BE10BD1F49B1F840208242E9 +:103280000CD2CB8A002B02D04B6D934204D2A1F812 +:1032900040000020C86770471849C880704780B553 +:1032A0000C480121C167FFF7C7FFFFF79BFF0C2008 +:1032B000BDE80240E0E707480021C1677047000011 +:1032C000FEFF7FBF3333D33F0000E03F00804B4021 +:1032D000E0540120C4500120985301200013012024 +:1032E000E81601209B9999999464012000001C40E4 +:1032F0008C65012000001CC0E046012044510120E3 +:1033000010B50C460FF2E050DEF75BFFDFF89405D6 +:103310000480001D00F033F800F064F800F010FAAB +:10332000012010BD30B583B004460D4600F05BF9B6 +:10333000214600F05AF9002D12D00FF2B850DEF7F6 +:1033400040FF00F050F900F03BF800F04CF900F0BD +:103350003DF800A800F082F8DDE9000100F075F802 +:10336000DFF844058068BDE83E40004780B500F0C6 +:1033700071F80FF29050DEF724FF012002BD00210A +:103380000B4607E001EB4102920013501218536004 +:103390009360491C6429F5DB194604E000EB8102C7 +:1033A000C2F8B034491C3229F8DB194680F8781588 +:1033B00000F27850418081808160C1600161704776 +:1033C0000021C0F88015C0F8841570470021C0F8AE +:1033D00088157047002190F87805012800D1012157 +:1033E0000846704730B583B000A800F069F8DFF8F0 +:1033F000B84400982060019D656000A800F085F841 +:10340000DFF8A804009901600199416000A800F06C +:10341000ABF8DFF89C04009901600199416000A8B5 +:1034200000F0CDF8DFF88C0400990160019941604B +:1034300000A800F0D1F8DFF880040099016001993C +:1034400041602068A060E56037BDDFF85C249060D3 +:10345000D1600847DFF85004C0680047DFF84C141B +:10346000D1E90023C0E900237047DFF84414D1E913 +:103470000023C0E900237047DFF83814D1E90023A6 +:10348000C0E900237047DFF83014D1E90023C0E918 +:10349000002370471CB5002400F0A5F8FFF79AFF41 +:1034A000002807D0082400A8FFF7D8FFDDE90001B5 +:1034B000FFF7CBFF204616BD0FF25440DEF781BE6A +:1034C000DFF8F8130A46DFF8F8130B46C0E90023CB +:1034D00070471CB5002400F0CFF800280FD00FF281 +:1034E0003C40DEF76EFE012400F07DF8FFF76EFF32 +:1034F00000A8FFF7BAFFDDE90001FFF7A6FF2046AD +:1035000016BD0FF22440DEF75CBEDFF8B8130A46A2 +:10351000DFF8B4130B46C0E9002370471CB500F078 +:10352000ABF8002805D0012400F05DF8FFF74EFF4E +:1035300014E0022400F00EF900280FD00FF2F4304E +:10354000DEF73FFE062400F04EF8FFF739FF00A833 +:10355000FFF792FFDDE90001FFF777FF204616BD78 +:103560000FF2DC30DEF72DBED8490A46D8490B46AB +:10357000C0E9002370471CB500F0FEF8012808D10F +:10358000042400A8FFF77FFFDDE90001FFF75DFFDE +:103590000FE002280CD1072400F025F8FFF710FFF8 +:1035A00000A8FFF75BFFDDE90001FFF74EFF00E039 +:1035B0000324204616BD0FF29430DEF702BEC54943 +:1035C0000A46C5490B46C0E90023704700207047F2 +:1035D0000FF28830DEF7F5BDC0490A46C0490B46F8 +:1035E000C0E900237047BF48704770B5044604F235 +:1035F00078550C20AA8800FB02420B681360AA8849 +:1036000000FB02424B685360AA8800FB02408A68B4 +:10361000826091ED020AD1ED010A91ED001A6888ED +:1036200004EB800621EE011A00EEA01A00EE001A4B +:1036300011EE100AE5F768FC41EC100BF6F730FCD0 +:1036400051EC100BE5F788FCC6F8B004A888401CC4 +:10365000A8806888401C6880A888642801D300205E +:10366000A8806888322804D300206880012084F86C +:10367000780570BD0000000070B52DED028B0024B0 +:103680009FED848ADFED838A2546FFF7ACFF06466F +:10369000B6F87A05322806D10FF2D020DEF791FD78 +:1036A0002046A6F87A053046FFF794FE002843D05E +:1036B000204610E006EB8001D1F8B01400EE101A9D +:1036C00038EE008ADFED740AB4EE600AF1EE10FA0B +:1036D00000DB6D1C401C3228ECDB9FED700A88EE8D +:1036E000008A20460AE006EB8001D1F8B01400EE13 +:1036F000901A70EEC80A40EEA08A401C3228F2DB15 +:10370000B6F87A0506EB8000D0F8B00400EE900A17 +:10371000B3EE021AF4EE410AF1EE10FA0CDB88EE79 +:10372000800AF1EE040AB4EE600AF1EE10FA03DB4F +:10373000ADB2032D00D301242046BDEC028B70BD39 +:1037400080B5FFF750FFFFF73BFEFFF74CFFBDE8EA +:1037500002403BE610B50024FFF745FFD0F888157E +:10376000491CC0F88815B1F5FA7F03DD2146C0F881 +:1037700088150124204610BD38B50024FFF733FF1B +:1037800005469FED440ADFED430A9FED421ADFED47 +:10379000411A9FED402ADFED3F2A204610E00C2120 +:1037A00041434A1992ED003A30EE030A491991ED6E +:1037B000013A70EE830A91ED023A31EE031A401C91 +:1037C0006428ECDB9FED363A80EE030AC0EE830AF4 +:1037D00081EE031A204616E00C2141434A19D2ED2E +:1037E000003A73EEC03A43EEA31A4919D1ED013AFB +:1037F00073EEE03A03EEA32AD1ED023A73EEC13A3A +:1038000043EEA32A401C6428E6DB82EE830AC1EE65 +:10381000830AB7EE001AF4EE410AF1EE10FA2BD546 +:10382000C2EE030AF4EE410AF1EE10FA24D5F7EEE7 +:10383000000AB4EE600AF1EE10FA1DD5D5F8800545 +:10384000401CC5F8800500EB8001880042F2117130 +:1038500088421DDB2046C5F8800505F2805041688E +:10386000491C41600F480088814211DB0FF20810AB +:10387000DEF7A7FC01240BE00FF20C10DEF7A1FC31 +:103880002046C5F8800505F5B06021464160022458 +:10389000204632BD000000000100604100004842A7 +:1038A0000000C84220FF00208063012054650120F1 +:1038B0005C650120646501206C6501209534020877 +:1038C000B9340208D3340208033502081D35020852 +:1038D0006135020877350208B7350208CD35020890 +:1038E000D135020824FF00202341532041535F4972 +:1038F0006E69740023415320555352494E5055541C +:10390000000000002341532041535F46696E2000B0 +:103910002341532053545F53530A00002341532043 +:1039200044545F53484B00002341532053545F538A +:1039300044530A002341532041535F54454E000035 +:103940002341532053545F534F530A0023415320C4 +:1039500053545F4E4D53530A00000000234153203F +:1039600053545F41534E4D4F530A0000234153209F +:1039700041535F4F460000002341532041535F41B4 +:10398000425F4454000000002341532043430000A1 +:1039900010B5DFF8A44A03220021201DDFF7B8FC90 +:1039A000042200212046DFF7B3FC04220021DFF8C7 +:1039B0008C0ADFF7ADFC0822002104F11400DFF7C8 +:1039C000A7FC0822002104F11C00DFF7A1FC08225B +:1039D000002104F12400DFF79BFC201DE063246438 +:1039E0000020A060E06220636064A064E064206561 +:1039F0006065A065E06520666066A066E066E060E0 +:103A0000606320742087C8220146DFF8340ADFF79C +:103A10007FFCC8220021DFF8BC0CDFF779FCC8224C +:103A20000021DFF8B40CDFF773FCC8220021DFF8B7 +:103A3000AC0CDFF76DFCC8220021DFF8A40CDFF727 +:103A400067FCC8220021DFF89C0CBDE81040DFF7BE +:103A50005FBC002805D0DFF8E019C96B0322E0F74E +:103A60004FB8704770B584B0DFF8CC291378DFF811 +:103A7000CC49D578E678B54218D12578AB4215D136 +:103A800055786678B54211D19578A478A5420DD1C4 +:103A900014790578A54203D0042D07D0042C05D055 +:103AA0000C789679B4420DD0042D0BD19478029401 +:103AB000547801940093537B0A7801780FF2080040 +:103AC000DEF77FFB7FBD00004D5F50443A41435617 +:103AD0002025642025642025642025642025642079 +:103AE00025640A0010B5C8220121DFF8F00BDFF7CA +:103AF0000FFCDFF84449C820E0820020A082A061CA +:103B0000C8220121DFF8D80BDFF702FCC820E083D0 +:103B10000020A0832062C8220121DFF8C80BDFF754 +:103B2000F7FBC820E0840020A084A06210BD2DE92E +:103B3000F841068844888588B0F806E000273846B2 +:103B4000F0468DF80280F446BCF18D0F03D34FF0A0 +:103B5000010C81F800C0DB89032B04D0042B02D0B8 +:103B6000D2B2012A01D102460A70652E31D27445C3 +:103B700016DB0978AC4209DB01291FD00127214659 +:103B80008D2921D2652C24D3384622E0012915D075 +:103B9000022729468D2917D2652D1AD3012018E056 +:103BA000754508DA042771468D290DD2BEF1650FDF +:103BB0000FD301200DE00978012901D1042708E085 +:103BC000022729468D2901D3022002E0652D00D36A +:103BD00001208DF800708DF801000098BDE8F28199 +:103BE0002DE970432DED108B82B0B0EE40AAB0EEFF +:103BF000608AF0EE418ADFF84068707A0146D6EDBF +:103C000016AA96ED15BAD6ED14BA96ED13CAD6EDEE +:103C100012CA96ED110A28EEA8DA68EE08DA2AEE42 +:103C20000AEADFF8B42ADFF8AC3ADFF81448357A4C +:103C3000002D40F0AB8004EB810484ED00AA03EB7F +:103C4000810383ED008A02EB8101C1ED008A30EE31 +:103C50000A0A86ED110A3CEE888A86ED128A7CEE0D +:103C6000288AC6ED138A3EEE2BAA86ED14AA3DEEF5 +:103C70008BBA86ED15BA7DEE2AAAC6ED16AA401CAF +:103C80007072C0B2322840F07F8001203072002074 +:103C900070729FEDB89B10EE100AE5F735F953EC02 +:103CA000192BE5F75FF8E5F757F90BEE900AC6ED2B +:103CB00011BA18EE100AE5F727F953EC192BE5F7BE +:103CC00051F8E5F749F908EE100A86ED128A18EE68 +:103CD000900AE5F719F953EC192BE5F743F8E5F7E6 +:103CE0003BF908EE900AC6ED138A1AEE100AE5F7C2 +:103CF0000BF953EC192BE5F735F804460D462BEE7E +:103D0000AB0A10EE100AE5F7FFF802460B46204614 +:103D10002946F2F77FF8E5F71FF930651BEE100A28 +:103D2000E5F7F2F853EC192BE5F71CF804460D46BD +:103D300028EE080A10EE100AE5F7E6F802460B46F0 +:103D400020462946F2F766F8E5F706F970651AEE9F +:103D5000900AE5F7D9F853EC192BE5F703F8044678 +:103D60000D4628EEA80A10EE100AE5F7CDF8024637 +:103D70000B4620462946F2F74DF8E5F7EDF8B06519 +:103D8000C820B082B083B0840020EDE08DED000A41 +:103D900054F821000EEE900A53F821000FEE100A9D +:103DA00052F821000FEE900A9FED729B10EE100A60 +:103DB000E5F7AAF804460D463AEE6E0A10EE100A30 +:103DC000E5F7A2F853EC192BE4F7CCFF22462B467B +:103DD000F5F7F2FFE5F7C0F80AEE100A86ED11AA32 +:103DE0001CEE900AE5F790F804460D4638EE4F0AAF +:103DF00010EE100AE5F788F853EC192BE4F7B2FF40 +:103E000022462B46F5F7D8FFE5F7A6F808EE100A8C +:103E100086ED128A1CEE100AE5F776F804460D4688 +:103E200038EEEF0A10EE100AE5F76EF853EC192B96 +:103E3000E4F798FF22462B46F5F7BEFFE5F78CF82E +:103E400008EE900AC6ED138A1BEE900AE5F75CF8BF +:103E5000804689469DED000ADDED000A20EE200A2D +:103E60000AEE4A0A10EE100AE5F74EF804460D462F +:103E70000EEEEEEA1EEE100AE5F746F853EC192BAB +:103E8000E4F770FF22462B46F5F796FF42464B4675 +:103E9000F5F792FFE5F760F80AEE100A86ED14AA2E +:103EA0001BEE100AE5F730F8804689462CEEAC0A86 +:103EB00008EE480A10EE100AE5F726F804460D460B +:103EC0004FEE4FDA1DEE900AE5F71EF853EC192B72 +:103ED000E4F748FF22462B46F5F76EFF42464B4675 +:103EE000F5F76AFFE5F738F808EE100A86ED158A4F +:103EF0001AEE900AE5F708F8804689462CEE0C0A7F +:103F000008EEE80A10EE100AE4F7FEFF04460D463C +:103F10000FEEEFDA1DEE100AE4F7F6FF53EC192B63 +:103F2000E4F720FF22462B46F5F746FF42464B4674 +:103F3000F5F742FFE5F710F800EE100A86ED160AD5 +:103F40006AEE0A0A48EE080A40EE000A10EE900AED +:103F5000E4F7DAFF41EC100BF5F7A2FF51EC100B80 +:103F6000E4F7FAFFF065012002B0BDEC108BBDE86C +:103F7000708300007B14AE47E17A943FF8B50024CB +:103F800025462646DFF8B074797ADFF8B40450F895 +:103F9000212000EE102ADFF83C2752F8213000EEF5 +:103FA000903ADFF8343753F821C001EE10CAF0EE32 +:103FB000401AB0EE602AF0EE412A97ED113AD7EDA3 +:103FC000123A97ED134AF0EE404AB0EE605AF0EE26 +:103FD000415AB0EE406AF0EE606AB0EE417A4FF0BE +:103FE000010C2CE0B4EE414AF1EE10FA04D5F4EEE7 +:103FF000442AF1EE10FA09D4B4EE441AF1EE10FAA4 +:1040000015D5B4EE624AF1EE10FA10D5641C9FED9E +:10401000C02AF4EE421AF1EE10FA08DB6D1C9FED97 +:10402000C92AF4EE421AF1EE10FA00DB761CF0EE2B +:10403000401AB0EE602AF0EE412A0CF1010CBCF1FE +:10404000320F80F0A580491CC9B2322900D100216D +:1040500050F821E000EE10EA52F821E000EE90EA7C +:1040600053F821E001EE10EAF4EE404AF1EE10FAC6 +:1040700002D5F0EE404A06E0B4EE460AF1EE10FA40 +:1040800001D5B0EE406AB4EE605AF1EE10FA02D5F6 +:10409000B0EE605A06E0F4EE660AF1EE10FA01D5D1 +:1040A000F0EE606AF4EE415AF1EE10FA02D5F0EE4D +:1040B000415A06E0B4EE471AF1EE10FA01D5B0EE1F +:1040C000417A70EE617AF5EE407AF1EE10FA01D5A0 +:1040D00071EEC07AB4EE403AF1EE10FA04D5F4EE87 +:1040E000431AF1EE10FA09D4B4EE430AF1EE10FAD5 +:1040F00015D5B4EE613AF1EE10FA10D5641CDFED7F +:10410000841AF4EE617AF1EE10FA08DB6D1CDFED33 +:104110008D1AF4EE617AF1EE10FA00DB761C70EE87 +:10412000C21AF5EE401AF1EE10FA01D572EE601ADD +:10413000F4EE603AF1EE10FA04D5B4EE632AF1EE33 +:1041400010FA09D4F4EE630AF1EE10FA15D5F4EE84 +:10415000423AF1EE10FA10D5641C9FED6D2AF4EE90 +:10416000421AF1EE10FA08DB6D1C9FED762AF4EE90 +:10417000421AF1EE10FA00DB761C71EE621AF5EECF +:10418000401AF1EE10FA7FF52DAF72EEC11A29E751 +:1041900034EEC60A87ED180A75EE660AC7ED190AED +:1041A00035EEC71A87ED1A1A20EE000A00EEA00AB3 +:1041B00001EE010A10EE100AE4F7A6FE41EC100B26 +:1041C000F5F76EFE51EC100BE4F7C6FEF866BC8501 +:1041D000FD853E86F1BD000010B501460020964CDD +:1041E0003C290ED194ED1B0ADFED8D0AB4EE600A76 +:1041F000F1EE10FA05D5A18E142904D2491CA1862E +:1042000001E00146A186A18E142907D3607B012815 +:1042100001D1FFF767FC012000216173207010BD00 +:1042200038B50024844D95ED170ADFED7E0AB4EE13 +:10423000600AF1EE10FA08DA95ED1B0ADFED7A0A52 +:10424000B4EE600AF1EE10FA05DBA87B142807D261 +:10425000401CA87304E0A87B002801D0401EA8736E +:10426000A87B002805D00124687B002801D1FFF736 +:1042700039FC6C70204632BD38B500246E4D95ED8A +:10428000140AD5ED150A30EE200AD5ED160A80EE97 +:10429000800ADFED660AB4EE600AF1EE10FA17DB71 +:1042A000D5ED1A0A9FED621AF4EE410AF1EE10FA0A +:1042B0000EDBB2EE041AF4EE410AF1EE10FA07D565 +:1042C000002805D1E87B1E2816D2401CE87313E0B5 +:1042D000DFED580AB4EE600AF1EE10FA07DB0028B1 +:1042E00005D1E87B1E2807D2401CE87304E0E87B78 +:1042F000002801D0401EE873E87B1F2805D3012465 +:10430000687B002801D1FFF7EDFBAC70204632BD81 +:104310009A99993EDFF8301C007804280FD1487B29 +:1043200000280CD1488EB0F5AF7F02D2401C4886E1 +:10433000704706D30120487300204886704700204C +:10434000488670470100003F0278042A0CD1DFF84C +:10435000F82B537B002B07D1528EB2F5AF7F03D2DF +:1043600001220270002008707047DFF8DC2B138FE9 +:10437000007804281CD10878002803D0022813D024 +:104380000AD316E0002B03D04C2B01D25B1E10E0A9 +:104390004C2B0ED34B230CE04B2B01D25B1C08E0C3 +:1043A0004C2B06D34B2304E0AF2B02D25B1C00E066 +:1043B00000239BB2322B02D20020087006E0962B1D +:1043C00002D20120087001E00220087013877047B4 +:1043D000DFF8743B0078042812D1087800280FD148 +:1043E000587B01280CD1D88E42F22831884207D25E +:1043F0003C2A02D1C01CD88604E0401CD88601E0CB +:104400000020D886D88E42F22831884206D3002078 +:104410005873D8860FF69030DDF7D3BE7047000092 +:104420007F8CB93E010048430100F041010080400B +:104430009A9939400100A0412853012000660120CB +:10444000AC4701202DE9F24F90B0054695ED021AD8 +:10445000D5ED010A95ED000AFFF7C2FB002800F038 +:104460003581DFF8E44A607ADFF8201B2A6841F8DA +:10447000202098496A6841F820209749AA6841F8A5 +:104480002020401C6072C0B2322801D1002060722E +:10449000FFF774FDBDF84000FFF79EFE0546FFF7ED +:1044A000BFFE0646FFF7E8FE07464FF00008C1468C +:1044B000012D04D14FF001084FF00209BDE057EA89 +:1044C000060040F0A68004A8FEF74AFE94F80AA071 +:1044D000DFF808B21AF80B008DF8000000F032F98E +:1044E0000AF80B0004F1140201469DF8000000F0E8 +:1044F000FBF804AB2A4604F10B0104F11400FFF7AA +:1045000016FB039094F80AA0DFF8D4B11AF80B0058 +:104510008DF8000000F0B2F901460AF80B1004F122 +:104520001C029DF8000000F0DFF804AB2A4604F1FD +:104530000C0104F11C00FFF7FAFA029094F80AA0AB +:10454000DFF8A0B11AF80B008DF8000000F05CFB5A +:104550000AF80B0004F1240201469DF8000000F067 +:10456000C3F804AB2A4604F10D0104F12400FFF75F +:10457000DEFA0190A07A401CA072C0B2C82801D116 +:104580004046A0729DF8040000283AD09DF80C0027 +:1045900004280CD19DF80800042808D19DF80400D7 +:1045A000042804D04FF004084FF0010929E09DF8D9 +:1045B0000400042804D14FF004089DF8059020E081 +:1045C0009DF80C0001280BD19DF80800012807D1A7 +:1045D0009DF80400012803D14FF00108C14610E006 +:1045E0009DF80C00012807D09DF80800012803D091 +:1045F0009DF80400012802D14FF0010801E04FF0BE +:104600000208607B002802D10021E1722173E07072 +:1046100013E0607B012802D1042020740DE0A07A11 +:10462000DFF8C0B000EB0B01643803D591F86400EB +:10463000207402E011F8640C207400208DF8000052 +:10464000607B01280DD1002D0BD157EA060008D15F +:1046500004208DF80100B8F1040F0ED18DF8009000 +:104660000BE0012E01D0012F03D1207C8DF8010039 +:1046700003E08DF801808DF800900DF10100FFF747 +:1046800049FE00A90DF10100FFF75EFEBDF84020D4 +:1046900000A90DF10100FFF79BFE00A90DF101003B +:1046A000FFF763FE00A90DF10100FFF7DBF99DF8AC +:1046B00001002071012060719DF80000A071201D93 +:1046C000E0632464DFF8DC082168016011B0BDE814 +:1046D000F08F0000744801203C490120044A012069 +:1046E000CC4A0120944B0120042913D8DFE801F0C3 +:1046F00003070B120F001188491C11800AE0518832 +:10470000491C518006E09188491C918002E0D188C3 +:10471000491CD180042813D8DFE800F003070B12EE +:104720000F001088401E108070475088401E508037 +:1047300070479088401E90807047D088401ED0807F +:1047400070470000DFF80008018E10293ED3828DEB +:104750002F2A01D30420704790ED160ADFED3E0AA0 +:10476000B4EE600AF1EE10FA25DB212901D3042012 +:104770007047202A01D301207047DFED380AB4EEDC +:10478000600AF1EE10FA10DB1D2A0CD390ED150A29 +:10479000DFED330AB4EE600AF1EE10FA01DB01201E +:1047A000704702207047022070471B2A01D3012066 +:1047B000704702207047DFED2B0AB4EE600AF1EE7D +:1047C00010FA01DB042070470120704790ED150AB4 +:1047D000DFED250AB4EE600AF1EE10FA3ADB90ED57 +:1047E000160ADFED220AB4EE600AF1EE10FA2BDBB6 +:1047F000828D1B2A0ED3DFED1E0AB4EE600AF1EEA5 +:1048000010FA05DB222A01D30120704702207047ED +:1048100001207047172A15D3DFED160AB4EE600A9F +:10482000F1EE10FA01DB0220704790ED140ADFED83 +:10483000120AB4EE600AF1EE10FA01DB02207047B2 +:104840000120704702207047092901D302207047D8 +:10485000022070470120704724622A3ED3DF1B3FAD +:10486000E981EF3D90C2F53C37C5833D2E3AB93D15 +:10487000170F1B3F431E193F75B04E3EDFF8C806A9 +:1048800090ED150A818D2029C0F01F81DFEDBD0A52 +:10489000B4EE600AF1EE10FAC0F2FD802F2932D397 +:1048A000C18D162901D304207047D0ED1A0A9FED5F +:1048B000B61AF4EE410AF1EE10FA0EDBDFEDB30AA0 +:1048C000B4EE600AF1EE10FA05DB142901D30420DE +:1048D00070470120704701207047D0ED180A9FED06 +:1048E000AC1AF4EE410AF1EE10FA0ADBDFEDA90A88 +:1048F000B4EE600AF1EE10FA01DB042070470120EB +:10490000704704207047D0ED180A9FEDA31AF4EE0B +:10491000410AF1EE10FA79DB90ED191ADFED9F1ADA +:10492000B4EE611AF1EE10FA19DB028E0F2A05D3EC +:10493000242901D3042070470220704790ED140A07 +:10494000DFED970AB4EE600AF1EE10FA01DB012008 +:104950007047082A01D304207047012070479FED5B +:10496000911AF4EE410AF1EE10FA27DB90ED141AD9 +:10497000DFED8D1AB4EE611AF1EE10FA0ADB9FED4D +:104980008B0AF4EE400AF1EE10FA01DB04207047C6 +:10499000012070479FED861AB4EE410AF1EE10FA3D +:1049A0000ADB9FED840AF4EE400AF1EE10FA01DB17 +:1049B0000120704702207047012070479FED7E1A4A +:1049C000B4EE410AF1EE10FA01DB0420704790EDDD +:1049D000160A9FED7A1AB4EE410AF1EE10FA0ADBDC +:1049E0002C2906D3008E072801D30420704701200C +:1049F0007047012070479FED720AF4EE400AF1EE15 +:104A000010FA01DB04207047012070479FED6D1AFA +:104A1000B4EE410AF1EE10FA01DB042070479FED7D +:104A20006A1AF4EE410AF1EE10FA01DB0120704738 +:104A300090ED1A1ADFED651AB4EE611AF1EE10FA74 +:104A400001DB012070479FED621AB4EE410AF1EEDE +:104A500010FA01DB042070479FED5E0AF4EE400A75 +:104A6000F1EE10FA01DB0120704790ED190ADFED3D +:104A70005A0AB4EE600AF1EE10FA01DB0420704726 +:104A8000DFED560AB4EE600AF1EE10FA01DB012008 +:104A9000704704207047DFED520AB4EE600AF1EE71 +:104AA00010FA10DB2F2901D30420704790ED140A6F +:104AB000DFED4C0AB4EE600AF1EE10FA01DB0120E2 +:104AC00070470420704701207047DFED470AB4EEBD +:104AD000600AF1EE10FA2ADB172926D390ED160AA8 +:104AE000DFED420AB4EE600AF1EE10FA01DB0220BB +:104AF000704790ED140ADFED3E0AB4EE600AF1EE65 +:104B000010FA01DB02207047192901D301207047F8 +:104B100090ED1A0ADFED370AB4EE600AF1EE10FAF2 +:104B200001DB012070470220704702207047DFED53 +:104B3000320AB4EE600AF1EE10FA20DB90ED180AAA +:104B4000DFED2E0AB4EE600AF1EE10FA15DB90EDFF +:104B5000190ADFED2B0AB4EE600AF1EE10FA0ADB57 +:104B6000DFED280AB4EE600AF1EE10FA01DB012055 +:104B700070470420704701207047042070470120CF +:104B8000704700BFCA8AE13BB58C1F4012A53D3D6E +:104B9000A7B2503FD9D04D3D15053A3FDB56DD3F1A +:104BA000F33C383D7179823F91DAD43EE5D54940F6 +:104BB000AEDB203E42F01440910F3A3D6687F83C50 +:104BC00060CB4B3F6631B13CF0C6163F50701E4083 +:104BD000CD04433C4089BF3E8770C43ED89DBE3E55 +:104BE0007864AC3B3A24353BB6A1823D99BA1B3F71 +:104BF000172D503EEC531D40371A403CC5210B3F4A +:104C0000A43B983F446F9F3FCF48C18D2329C0F0FC +:104C1000C0802F2930D3332901D30420704790ED71 +:104C20001A0ADFEDBD0AB4EE600AF1EE10FA11DBEC +:104C3000018E08290CD390ED180ADFEDB80AB4EE06 +:104C4000600AF1EE10FA01DB012070470420704782 +:104C50000120704790ED180ADFEDB10AB4EE600A4A +:104C6000F1EE10FA06DB008E0D2801D30420704708 +:104C7000012070470420704790ED190AD0ED180A02 +:104C80009FEDA81AF4EE410AF1EE10FA42DB9FED17 +:104C9000A61AB4EE410AF1EE10FA11DB018E0F29CB +:104CA00001D30420704790ED140ADFEDA00AB4EEA2 +:104CB000600AF1EE10FA01DB012070470420704712 +:104CC00090ED140A9FED9A1AF4EE410AF1EE10FAF3 +:104CD00015DBDFED980AB4EE600AF1EE10FA0CDB9A +:104CE00090ED1A0ADFED940AB4EE600AF1EE10FAC4 +:104CF00001DB012070470420704701207047DFED81 +:104D00008F0AB4EE600AF1EE10FA01DB042070475E +:104D1000012070479FED8A1AB4EE410AF1EE10FAB5 +:104D200031DB90ED1A1ADFED871AB4EE611AF1EE5D +:104D300010FA06DB008E092801D3042070470120F9 +:104D400070479FED821AB4EE410AF1EE10FA01DBD2 +:104D5000042070479FED7E1AF4EE410AF1EE10FA3E +:104D600001DB01207047808D2A2801D30420704781 +:104D7000DFED780AB4EE600AF1EE10FA01DB0420F0 +:104D8000704701207047282901D304207047012073 +:104D9000704790ED150ADFED700AB4EE600AF1EE8F +:104DA00010FA5CDBD0ED1B0A9FED6C1AF4EE410AA1 +:104DB000F1EE10FA2FDB17292BD390ED140AD0ED6A +:104DC000160A9FED671AF4EE410AF1EE10FA15DBB0 +:104DD000DFED640AB4EE600AF1EE10FA0CDB90ED40 +:104DE000180ADFED610AB4EE600AF1EE10FA01DB99 +:104DF000012070470220704702207047DFED5B0AF8 +:104E0000B4EE600AF1EE10FA01DB022070470120D7 +:104E10007047022070479FED561AF4EE410AF1EEFA +:104E200010FA1ADB818D19290CD390ED160ADFEDEB +:104E3000510AB4EE600AF1EE10FA01DB022070476D +:104E400001207047DFED4C0AB4EE600AF1EE10FA73 +:104E500001DB022070470120704704207047DFED1E +:104E6000470AB4EE600AF1EE10FA53DBD0ED180AEF +:104E70009FED431AF4EE410AF1EE10FA1EDB9FEDAE +:104E8000411AB4EE410AF1EE10FA15DB90ED1B0A5F +:104E90009FED3D1AB4EE410AF1EE10FA01DB01205C +:104EA00070479FED3B0AF4EE400AF1EE10FA01DB89 +:104EB000012070470420704701207047DFED350A5C +:104EC000B4EE600AF1EE10FA17DB90ED190ADFED8F +:104ED000320AB4EE600AF1EE10FA01DB04207047EA +:104EE00090ED140ADFED2D0AB4EE600AF1EE10FA2F +:104EF00001DB012070470420704790ED160ADFEDBA +:104F0000280AB4EE600AF1EE10FA01DB04207047C3 +:104F100001207047012070478BC71F4036054D4068 +:104F2000F9A78E3F55A85A3FDB56DD3F3886403DF6 +:104F30007179823F9E48D83E79977440753E3C3DDA +:104F40003BAEAE3E350D1F402853012082742D3FED +:104F5000A43C173F9BAEE73EB6A1823D878C6F40D5 +:104F600099BA1B3F6F69453ECC9E2A408DBA663E7A +:104F70008C5044409948D13E81B6953D7313B53B62 +:104F800063D5083FDCF93E3DCDED2540AC4701201F +:104F9000D064833F21CB023CD274E63EDF57E53B31 +:104FA0007B6A753D006601205B4D5F50443A41438A +:104FB000565D204C6F636B204F66660010B5DFF8BE +:104FC00068494FF4FA7200212046DEF7A1F9DFF8B4 +:104FD0008C09C4F8D80110BD2DE9F0432DED028BEA +:104FE00081B0B0EE408ADFF84049B4F8D2114118E0 +:104FF000A4F8D21104F2D2156A8880186880287942 +:10500000192803D2401C287184ED768A9FED9B0AF3 +:10501000B4EE408AF1EE10FAC0F2EA80D4ED760ADE +:10502000F4EE400AF1EE10FAC0F2E2802879192875 +:10503000C0F0DE8089B2C329C0F0DA8004F58C7636 +:10504000307C04EB800080ED148A84ED768A04F5D0 +:10505000EC77707C002804D187ED018A87ED028A05 +:105060003BE097ED010ADFED860A20EE200A10EE04 +:10507000100AE3F749FF8046894618EE100AE3F765 +:1050800043FF0022DFF8A438E3F76CFE42464B46AC +:10509000F4F792FEE3F760FF08EE100A87ED018A4D +:1050A00097ED020ADFEDBE0A20EE200A10EE100A8C +:1050B000E3F72AFF8046894618EE100AE3F724FF3B +:1050C0004FF00042DFF89838E3F74CFE42464B467B +:1050D000F4F772FEE3F740FFB860688840F2E93108 +:1050E00088421AD394F87C0104EB8000B968C0F8B8 +:1050F0002C1194F87C01401C84F87C01C0B2142867 +:1051000002D1002084F87C0104F5BE704178142996 +:1051100001D2491C417000206880707C14281ED187 +:10512000307C401C142800D1002004EB800094ED5A +:10513000460AD0ED140A30EE600A84ED460A90ED7E +:10514000140AD6ED010A40EE400AC6ED010A96EDBA +:10515000020AD0ED320A30EE600A86ED020A327C95 +:1051600004EB820094ED460AD0ED140A30EE200ADA +:1051700084ED460A90ED140AD6ED010A40EE000ACD +:10518000C6ED010A717C04F1500000F061FA307C38 +:1051900004EB800080ED320AD6ED020A30EE800A80 +:1051A00086ED020A307CB96844F82010307C04EBAC +:1051B0004000B4F8D211A0F8A010707C142801D2DD +:1051C000401C7074707C00EE100AB8EE400AD6EDF8 +:1051D000020A80EE800A86ED030A307C401C30749F +:1051E000C0B2142801D1002030740020A4F8D201EC +:1051F00001B0BDEC028BBDE8F08300B5DFF82807F5 +:1052000090F87C114A1E00D51432891F00D5143144 +:1052100000EB820292ED4B0A00EB8100D0ED4B0ACD +:1052200030EE600A10EE100AE3F76EFE21F0004146 +:10523000E3F792FE00EE100A00BD00B5DFF8E806C5 +:1052400090F87C114A1E00D51432891F00D5143104 +:1052500000EB820292ED320A00EB8100D0ED320ABF +:1052600030EE600A10EE100AE3F74EFE21F0004126 +:10527000E3F772FE00EE100A00BD00000100FA43E1 +:105280006666663F2DE9F0432DED068B81B004463E +:1052900000259FED448A042C04D1DFED438A9FED65 +:1052A000439A03E0DFED428A9FED429ADFF8786689 +:1052B00006F59277787914286AD196F87D01072847 +:1052C00066D3FFF79AFFF0EE409AFFF7B6FFB0EE15 +:1052D00040AAF4EE698AF1EE10FA2ED5D6F8240130 +:1052E000E3F712FE21F0004102460B469046994634 +:1052F00019EE100AE3F708FE42464B46F0F7D0FCE1 +:105300001BD2D6F82401E3F7FFFD21F00041DFF8BE +:105310002026DFF82036F0F7C3FC0ED29FED260AD8 +:10532000B4EE40AAF1EE10FA07D522467979387921 +:10533000401E00F0EDF9054604E02846C6F8E401F9 +:10534000C6F8E801022D23D13879411E00D5143169 +:105350007A79801A00D5143006EB810191ED000AAC +:1053600006EB8000D0ED000A30EE600AFFEE000A86 +:1053700020EE200A10EE100AE3F7C6FDDFF8B8258C +:10538000DFF8C835F0F706FEE3F7E6FD08EE100A91 +:10539000B0EE480A01B0BDEC068BBDE8F08300001A +:1053A000CDCC4C3F00000000CDCC4C3EA69B443BF6 +:1053B000CDCC4C3D6F12033B0BD7A33C2DE9F047FE +:1053C0002DED088B82B0B0EE409A824689460024CB +:1053D0002546DFEDCB8A9FEDCA8ADFEDC99A5FFAD9 +:1053E0008AFABAF1040F04D19FED97AADFED97AACC +:1053F00003E09FEDC4AADFEDC4AADFF82C6506F533 +:10540000927898F80500142840F0178196F87D01ED +:105410000728C0F01281B5EE409AF1EE10FA40F381 +:105420000C81FFF7EAFEB0EE40BAFFF706FFF0EEA0 +:1054300040BA06F5E877B4EE4BAAF1EE10FA3CD587 +:10544000D6F82401E3F760FD21F0004102460B4647 +:10545000CDE900231AEE900AE3F756FDDDE90023BB +:10546000F0F71EFC29D2D6F82401E3F74DFD21F018 +:105470000041DFF8BC24DFF8BC34F0F711FC1CD28B +:105480009FEDA20AF4EE40BAF1EE10FA15D597EDB1 +:10549000050AB5EE400AF1EE10FA01D1224602E00B +:1054A000B869A9EB0002534698F8051098F8040073 +:1054B000401E00F0ABF9044602E020467861B86176 +:1054C000002C00F0B38097ED050AB5EE400AF1EE2E +:1054D00010FA04D1C7F818904FF07E507861284632 +:1054E00006E006EB4001B1F8A0104D19ADB2401C2A +:1054F0001428F6D32846E3F727FCDFF84024DFF82A +:105500004034E3F72FFCE3F727FD09EE900A19EE8C +:10551000100AE3F7F9FCDFF82C24DFF82C34E3F76A +:1055200021FCE3F719FD00EE100A29EE809A98F8A5 +:105530000400411E00D5143198F80520801A00D5CA +:10554000143006EB810191ED000A06EB8000D0EDEE +:10555000000A30EE600AFFEE000A20EE200A10EE8C +:10556000100AE3F7D1FCDFF8D023DFF8E033F0F7DF +:1055700011FDE3F7F1FC09EE900AF4EE499AF1EE21 +:1055800010FA02DBDFED5E9A11E029EE090A09EE5E +:10559000E90A10EE100AE3F7B7FC41EC100BF4F740 +:1055A0007FFC51EC100BE3F7D7FC08EE900A96F85D +:1055B000D00106EB800089EEA80A80ED600A96F81B +:1055C000D001401C86F8D001C0B2142802D10020BE +:1055D00086F8D0017878142801D2401C7870002019 +:1055E00006E006EB800191ED600A38EE008A401C6F +:1055F00079780A4680B29042F3D3B2EE040A28EEDC +:10560000000A00EE901AF8EE600A80EE200A10EE12 +:10561000100AE3F779FCDFF83823DFF83833E3F7D3 +:10562000A1FBE3F799FC09EE900A03E0284686F80F +:10563000D0017870B0EE690A01E09FED310A02B046 +:10564000BDEC088BBDE8F087CDCC4C3EA69B443B1F +:1056500030B52DED048B9FED2A8A9FED290ADFEDF1 +:10566000280ADFED278A00231AE0142C00DB143C03 +:1056700001EE103AB8EEC11A31EE088A50F8244013 +:1056800001EE904A30EE210A41EE210A13FB03F4A9 +:1056900001EE104AB8EEC11A71EE288A5B1CDBB22B +:1056A0000C46A34205DA141B1C19641CDDD5143406 +:1056B000DEE701EE101AB8EE419A69EE200A48EED4 +:1056C000400A10EE900AE3F71FFC04460D4629EE4F +:1056D000280A08EE480A10EE100AE3F715FC9E4A65 +:1056E000A04BF4F769FB02460B4620462946F0F72B +:1056F00051FCE3F731FC00EE100ABDEC048B30BD29 +:1057000000000000CDCC4C3D6F12033B0BD7A33CF7 +:105710002DE9F0432DED088B044689464FF0000833 +:10572000002C01D5143402E0142C00DB143C454657 +:105730002E46042A04D19FED788ADFED788A03E0B3 +:105740009FED778ADFED778A2F460CE0B4EE498A29 +:10575000F1EE10FA06D5B4EE689AF1EE10FA01D522 +:10576000761CB6B27F1C4846FFB23946421E9142B3 +:105770003EDA201A0818401C01D5143002E0142823 +:1057800000DB1438411C142900DB1439664A02EB93 +:10579000810191ED000A02EB8000D0ED000A30EEAD +:1057A000609A19EE100AE3F7AFFB41EC1A0B9FED7C +:1057B0006EBB18EE100AE3F7A7FB53EC1B2BE3F7C5 +:1057C000D1FA02460B4651EC1A0BF0F769FABDD23A +:1057D00018EE900AE3F798FB53EC1B2BE3F7C2FAA1 +:1057E00053EC1A2BF0F75CFAB0D26D1CADB2B9E7EE +:1057F0000B2E02D34FF0010803E00B2D01D34FF025 +:1058000002084046BDEC088BBDE8F0832DE9F04767 +:105810002DED088B04468A4691464FF00008002C77 +:1058200001D5143402E0142C00DB143C45462E460E +:10583000042B04D19FED388ADFED388A03E09FED19 +:10584000388ADFED388A2F460CE0B4EE498AF1EE53 +:1058500010FA06D5B4EE689AF1EE10FA01D5761C6E +:10586000B6B27F1C5046FFB23946421E91423EDA24 +:10587000201A0818401C01D5143002E0142800DB5F +:105880001438411C142900DB1439274A02EB81012A +:1058900091ED000A02EB8000D0ED000A30EE609A34 +:1058A00019EE100AE3F730FB41EC1A0B9FED2EBB0B +:1058B00018EE100AE3F728FB53EC1B2BE3F752FA20 +:1058C00002460B4651EC1A0BF0F7EAF9BDD218EE7E +:1058D000900AE3F719FB53EC1B2BE3F743FA53EC65 +:1058E0001A2BF0F7DDF9B0D26D1CADB2B9E7B9F102 +:1058F000070F01D20C2000E00A20B04202D24FF084 +:10590000010803E0A84201D24FF002084046BDEC76 +:10591000088BBDE8F08700006F12033B8FC2F53C97 +:105920006F12833A8FC2753CE83101209A99B93FD2 +:105930007B14AE47E17A843FB81E85EBFCA9F1D217 +:105940004D62503F0492B06F2711913F51B8BE3F56 +:105950009A9999999999B93F8DEDB5A000407E44E7 +:105960009999C93FF7C6B03E000000000000F0BFA3 +:105970001FB506F065FB212101601FBD90420CD1CF +:1059800041EA030C50EA4C0C07D0994205D14FF480 +:10599000001C1CEB410F38BF8942704710B5DFF87F +:1059A00000450020206001F0DAF8606105206060A9 +:1059B000012010BDDFF8E8040021016001207047DC +:1059C00070B52DED048B84B00C460021039102913B +:1059D00001910091DFF8C854012C07D1296090EDA6 +:1059E000008AD0ED018A90ED029A7BE069684A1E38 +:1059F00068692B6893421DDA1E22591C09B200F017 +:105A0000CFFA85ED020A1E222868411C09B2686996 +:105A100000F0E4FA85ED040A1E222868411C09B250 +:105A2000686900F0F9FA85ED030A2868401C00EE69 +:105A3000100A49E018D11E2209B200F0B1FA85ED32 +:105A4000020A1E22696809B2686900F0C7FA85ED8A +:105A5000040A1E22696809B2686900F0DDFA85ED62 +:105A6000030A95ED010A2FE01E2209B200F088FA20 +:105A700006461E220021686900F082FA95ED020AAE +:105A8000D6ED000A30EE600AD0ED000A30EE200AB2 +:105A900085ED020A95ED040AD6ED010A30EE600AA2 +:105AA000D0ED010A30EE200A85ED040A95ED030AD7 +:105AB000D6ED020A30EE600AD0ED020A30EE200A7E +:105AC00085ED030A95ED010AB8EEC00AD5ED020A8C +:105AD00080EE808AD5ED040AC0EE808AD5ED030AF7 +:105AE00080EE809AB0EE491AF0EE680AB0EE480AED +:105AF00001A903A800F022F80022B0EE491AF0EE46 +:105B0000680AB0EE480A00A902A800F0BEF82868AA +:105B1000401C286001F017F8039981610199C16167 +:105B20000299016200994162022C02D0012101F028 +:105B300012F8012004B0BDEC048B70BD30B52DED22 +:105B4000068B81B004460D46B0EE40AAF0EE608AA6 +:105B5000B0EE418AB5EE408AF1EE10FA40D5F1EE92 +:105B6000480A00F021FB9FEDC19B10EE100AE3F7FD +:105B7000CBF953EC192BE3F7F5F8E3F7EDF900EE69 +:105B8000100A00F02DF9BDEEC00A84ED000A2AEEDD +:105B90000A0A08EE080A10EE100AE3F7B5F941EC1C +:105BA000100BF4F77DF951EC100BE3F7D5F900EE8B +:105BB000900AB1EE680A00F0F7FA10EE100AE3F767 +:105BC000A3F953EC192BE3F7CDF8E3F7C5F900EE91 +:105BD000100A00F005F9BDEEC00A85ED000A50E09C +:105BE000B5EE408AF1EE10FA4BDDF0EE480AB1EE68 +:105BF0004A0A00F0D9FA9FED9D9B10EE100AE3F7D8 +:105C000083F953EC192BE3F7ADF80022994BF4F725 +:105C1000D3F8E3F7A1F900EE100A00F0E1F8BDEEC9 +:105C2000C00A84ED000A2AEE0A0A08EE080A10EEFD +:105C3000100AE3F769F941EC100BF4F731F951EC74 +:105C4000100BE3F789F900EE900AB1EE680A00F054 +:105C5000ABFA10EE100AE3F757F953EC192BE3F700 +:105C600081F80022844BF4F7A7F8E3F775F900EE0A +:105C7000100A00F0B5F8B1EE400ABDEEC00A85ED9D +:105C8000000A01B0BDEC068B30BD30B52DED048BA4 +:105C900081B004460D46F0EE408AB0EE609AB0EE58 +:105CA000418AB5EE409AF1EE10FA18D5F1EE490AA4 +:105CB00000F07AFA10EE100AE3F726F96F4A794BF2 +:105CC000E3F750F8E3F748F900EE100A00F088F81F +:105CD000B1EE400ABDEEC00A84ED000A20E0B5EE48 +:105CE000409AF1EE10FA1BDBB1EE680A00F05CFAA4 +:105CF00010EE100AE3F708F9604A6A4BE3F732F84E +:105D000000225D4BF4F758F8E3F726F900EE100A8D +:105D100000F066F8B1EE400ABDEEC00A84ED000A5C +:105D2000B5EE408AF1EE10FA28D528EEA80A09EE61 +:105D3000090A10EE100AE3F7E7F841EC100BF4F74C +:105D4000AFF851EC100BE3F707F900EE900AB0EE54 +:105D5000480A00F029FA10EE100AE3F7D5F8474A8E +:105D6000504BE2F7FFFFE3F7F7F800EE100A00F000 +:105D700037F8BDEEC00A85ED000A2CE0B5EE408A8A +:105D8000F1EE10FA27DD28EEA80A09EE090A10EE56 +:105D9000100AE3F7B9F841EC100BF4F781F851EC75 +:105DA000100BE3F7D9F800EE900AB0EE480A00F0C5 +:105DB000FBF910EE100AE3F7A7F8304A394BE2F787 +:105DC000D1FFE3F7C9F800EE100A00F009F8BDEEC4 +:105DD000C00A85ED000A01B0BDEC048B30BD0000A7 +:105DE000DFED270A9FED271AB4EE410AF1EE10FA13 +:105DF00009DBB4EE600AF1EE10FA04D5DFED220AF9 +:105E000030EE200A7047B4EE600AF1EE10FA0BDBB8 +:105E1000DFED1E0AB4EE600AF1EE10FA04D5DFEDF4 +:105E20001C0A30EE200A7047DFED1A0ADFED1A1A5D +:105E3000B4EE610AF1EE10FA09DBB4EE600AF1EE9D +:105E400010FA04D5DFED150A30EE200A7047B4EEE3 +:105E5000600AF1EE10FA08DBDFED130AB4EE600A17 +:105E6000F1EE10FA01D530EE010A7047E6C1631A6F +:105E7000DCA54C4000806640008066C0E6C1631A25 +:105E8000FFFF06C4000034C400003444FFFF33C3E6 +:105E90000000B44301000744010034430000B4C3D0 +:105EA000A4620120DCA54C4001003444E54A12689C +:105EB0009FEDBC0A038800EB4303B3F9043000EE06 +:105EC000903AF8EEE00A92ED001AB8EE411A70EE40 +:105ED000C10A92ED031AB8EE411AC0EE810A60EED3 +:105EE000800AC1ED000AD2ED010AF8EE600A0388CB +:105EF00000EB4303B3F9063001EE103AB8EEC11AD5 +:105F000070EEC10A92ED041AB8EE411AC0EE810A91 +:105F100060EE800AC1ED010AD2ED020AF8EE600AD5 +:105F2000038800EB4300B0F9080001EE100AB8EE58 +:105F3000C11A70EEC10A92ED051AB8EE411AC0EE10 +:105F4000810A20EE800A81ED020A01207047038851 +:105F5000934201D30023038003885B1C03809BB220 +:105F6000934201D300220280028802EB420300EB3D +:105F70008300001D91EC030A80EC030A01207047A6 +:105F8000B0F90030591A09B2002901D511FA82F18D +:105F900009B201EB410200EB8200001D70470000D6 +:105FA00030B49FEDB80A0023B0F9004010E024B2ED +:105FB000002C08D404EB440500EB8505D5ED010A5F +:105FC00030EE200A641E24B2002C00D5541E5B1C47 +:105FD0001BB28B42EBDB30BC7047000030B49FED4E +:105FE000A90A0023B0F9004010E024B2002C08D424 +:105FF00004EB440500EB8505D5ED020A30EE200ADE +:10600000641E24B2002C00D5541E5B1C1BB28B42B4 +:10601000EBDB30BC7047000030B49FED9A0A0023E0 +:10602000B0F9004010E024B2002C08D404EB440581 +:1060300000EB8505D5ED030A30EE200A641E24B27C +:10604000002C00D5541E5B1C1BB28B42EBDB30BC1A +:106050007047000010B52DED068BADF2D47D00A881 +:106060000FF2282140F2D472DDF75AFD9FED768BB6 +:106070009FED779B00ACB5EE400AF1EE10FA48DBDD +:106080009FED75ABDFED760AB4EE600AF1EE10FA23 +:106090001AD510EE100AE2F737FF53EC192BE2F78E +:1060A00061FE53EC182BF3F787FEEEF7FFFD54F873 +:1060B0002000E2F73FFE53EC1A2BE2F753FEE2F723 +:1060C0004BFF00EE100A68E0F7EE000A80EE800A4F +:1060D00010EE100AE2F718FF53EC192BE2F742FE1C +:1060E00053EC182BF3F768FEEEF7E0FD54F82000B0 +:1060F000E2F720FE53EC1A2BE2F734FE02460B4681 +:106100005B485849EFF786FEE2F726FF00EE100ADB +:1061100043E0FFEE000AB4EE600AF1EE10FA1CDB79 +:10612000B1EE400A10EE100AE2F7EEFE53EC192B26 +:10613000E2F718FE53EC182BF3F73EFEEEF7B6FD30 +:1061400054F82000E2F7F6FD0022474BE2F70AFE82 +:10615000E2F702FF00EE100A1FE080EE800A10EE68 +:10616000100AE2F7D1FE53EC192BE2F7FBFD53ECDA +:10617000182BF3F721FEEEF799FD54F82000E2F713 +:10618000D9FD0022394BE2F7EDFD394A3E4BF3F7DA +:1061900013FEE2F7E1FE00EE100A0DF2D47DBDEC35 +:1061A000068B10BDC3F51C4180B5B0EE401AF5EE6C +:1061B000400AF1EE10FA04DD81EE200ABDE801404C +:1061C00048E7F5EE400AF1EE10FA24D581EE200AF8 +:1061D000B5EE401AF1EE10FA0EDBFFF73BFF10EEC2 +:1061E000100AE2F791FE224A224BF3F7E5FDE2F7AF +:1061F000B3FE00EE100A01BDFFF72CFF10EE100AEF +:10620000E2F782FE1A4A1C4BF3F7D6FDE2F7A4FE32 +:1062100000EE100A01BDB5EE401AF1EE10FA02DDF3 +:106220009FED160A01BDB5EE401AF1EE10FA02D547 +:106230009FED130A01BD9FED130A01BD01490860DE +:106240007047000044660120000000000000E03FAD +:106250000000000000407F40000000000000503FB0 +:106260000100803FFB21F93F000050BF0000503F7C +:10627000182D4454FB210940FB2109C0DB0FC93F05 +:10628000DB0FC9BF00000000FB21F9BF00000000C8 +:1062900002000000040000000600000008000000EA +:1062A0000A0000000C0000000E00000010000000BA +:1062B0001200000014000000170000001900000088 +:1062C0001B0000001D0000001F0000002100000056 +:1062D0002300000025000000270000002900000026 +:1062E0002B0000002D0000002F00000031000000F6 +:1062F00033000000350000003700000039000000C6 +:106300003B0000003D0000003F0000004100000095 +:106310004300000046000000480000004A00000062 +:106320004C0000004E000000500000005200000031 +:106330005400000056000000580000005A00000001 +:106340005C0000005E0000006000000062000000D1 +:106350006400000066000000680000006A000000A1 +:106360006C0000006E000000700000007200000071 +:106370007400000076000000780000007A00000041 +:106380007C0000007E000000800000008200000011 +:106390008400000086000000880000008A000000E1 +:1063A0008C0000008E0000009000000092000000B1 +:1063B0009400000096000000980000009A00000081 +:1063C0009C0000009E000000A0000000A200000051 +:1063D000A4000000A6000000A8000000AA00000021 +:1063E000AC000000AE000000B0000000B2000000F1 +:1063F000B4000000B6000000B8000000BA000000C1 +:10640000BC000000BE000000C0000000C200000090 +:10641000C4000000C6000000C8000000CA00000060 +:10642000CC000000CE000000D0000000D200000030 +:10643000D4000000D6000000D8000000DA00000000 +:10644000DC000000DE000000E0000000E2000000D0 +:10645000E4000000E6000000E7000000E9000000A2 +:10646000EB000000ED000000EF000000F100000074 +:10647000F3000000F5000000F7000000F900000044 +:10648000FB000000FD000000FF0000000101000013 +:1064900003010000040100000601000008010000E3 +:1064A0000A0100000C0100000E01000010010000B4 +:1064B0001201000014010000160100001801000084 +:1064C000190100001B0100001D0100001F01000058 +:1064D0002101000023010000250100002701000028 +:1064E000290100002A0100002C0100002E010000FB +:1064F00030010000320100003401000036010000CC +:1065000038010000390100003B0100003D0100009E +:106510003F0100004101000043010000450100006F +:1065200046010000480100004A0100004C01000043 +:106530004E01000050010000510100005301000015 +:106540005501000057010000590100005B010000E7 +:106550005C0100005E0100006001000062010000BB +:10656000640100006501000067010000690100008E +:106570006B0100006D0100006E0100007001000061 +:106580007201000074010000760100007701000034 +:10659000790100007B0100007D0100007F01000007 +:1065A00080010000820100008401000086010000DB +:1065B00087010000890100008B0100008D010000AF +:1065C0008E01000090010000920100009401000083 +:1065D0009501000097010000990100009B01000057 +:1065E0009C0100009E010000A0010000A20100002B +:1065F000A3010000A5010000A7010000A801000000 +:10660000AA010000AC010000AE010000AF010000D3 +:10661000B1010000B3010000B4010000B6010000A8 +:10662000B8010000B9010000BB010000BD0100007D +:10663000BF010000C0010000C2010000C401000051 +:10664000C5010000C7010000C9010000CA01000027 +:10665000CC010000CE010000CF010000D1010000FC +:10666000D3010000D4010000D6010000D7010000D2 +:10667000D9010000DB010000DC010000DE010000A8 +:10668000E0010000E1010000E3010000E50100007D +:10669000E6010000E8010000E9010000EB01000054 +:1066A000ED010000EE010000F0010000F10100002A +:1066B000F3010000F5010000F6010000F801000000 +:1066C000F9010000FB010000FD010000FE010000D7 +:1066D00000020000010200000302000004020000AA +:1066E0000602000008020000090200000B02000080 +:1066F0000C0200000E0200000F0200001102000058 +:10670000130200001402000016020000170200002D +:10671000190200001A0200001C0200001D02000005 +:106720001F020000200200002202000023020000DD +:1067300025020000260200002802000029020000B5 +:106740002B0200002C0200002E0200002F0200008D +:106750003102000032020000340200003502000065 +:1067600037020000380200003A0200003B0200003D +:106770003D0200003E020000400200004102000015 +:1067800043020000440200004602000047020000ED +:10679000480200004A0200004B0200004D020000C7 +:1067A0004E0200005002000051020000530200009F +:1067B0005402000055020000570200005802000079 +:1067C0005A0200005B0200005C0200005E02000052 +:1067D0005F0200006102000062020000640200002B +:1067E0006502000066020000680200006902000005 +:1067F0006A0200006C0200006D0200006F020000DF +:1068000070020000710200007302000074020000B8 +:106810007502000077020000780200007A02000092 +:106820007B0200007C0200007E0200007F0200006C +:106830008002000082020000830200008402000047 +:106840008602000087020000880200008A02000021 +:106850008B0200008C0200008E0200008F020000FC +:1068600090020000920200009302000094020000D7 +:1068700096020000970200009802000099020000B2 +:106880009B0200009C0200009D0200009F0200008D +:10689000A0020000A1020000A2020000A402000069 +:1068A000A5020000A6020000A8020000A902000044 +:1068B000AA020000AB020000AD020000AE02000020 +:1068C000AF020000B0020000B2020000B3020000FC +:1068D000B4020000B5020000B7020000B8020000D8 +:1068E000B9020000BA020000BC020000BD020000B4 +:1068F000BE020000BF020000C1020000C202000090 +:10690000C3020000C4020000C5020000C70200006C +:10691000C8020000C9020000CA020000CB02000049 +:10692000CD020000CE020000CF020000D002000025 +:10693000D1020000D3020000D4020000D502000002 +:10694000D6020000D7020000D8020000DA020000E0 +:10695000DB020000DC020000DD020000DE020000BD +:10696000E0020000E1020000E2020000E302000099 +:10697000E4020000E5020000E6020000E802000078 +:10698000E9020000EA020000EB020000EC02000055 +:10699000ED020000EE020000F0020000F102000033 +:1069A000F2020000F3020000F4020000F502000011 +:1069B000F6020000F7020000F8020000FA020000F0 +:1069C000FB020000FC020000FD020000FE020000CD +:1069D000FF020000000300000103000002030000AA +:1069E0000303000005030000060300000703000086 +:1069F00008030000090300000A0300000B03000065 +:106A00000C0300000D0300000E0300000F03000044 +:106A10001003000011030000130300001403000022 +:106A20001503000016030000170300001803000000 +:106A3000190300001A0300001B0300001C030000E0 +:106A40001D0300001E0300001F03000020030000C0 +:106A500021030000220300002303000024030000A0 +:106A600010B500F081F805F0F1FAFEF797FF454CFC +:106A70004422002104F10C00DCF74AFC0A22002128 +:106A80002046DCF745FC0A2200213F48DCF740FCA9 +:106A90000C22002104F15400DCF73AFC3B4C4FF48B +:106AA000B67200212046DCF733FC1E20208010BD8A +:106AB00005F0CCBA80B505F0FDFABDE80140FEF75F +:106AC00079BF3148F5F77ABD10B42F482D491CC85D +:106AD0001CC10C380021418010BC704710B5044621 +:106AE000FFF7E4F92088401C2080B4F9021080B23E +:106AF000884200DB2180012010BD38B5214C256D76 +:106B000004F154012046FFF7E9FF1E2204F154016D +:106B10001E48FFF71CFA012104F15400FEF750FF54 +:106B2000A80705D5002104F1540005F0C5FA04E0DA +:106B3000012104F1540005F0BFFA002104F10C001A +:106B4000BDE8344007E0124870470E49CA6822EA9F +:106B50000000C860704702681143016070470B482D +:106B600070470C49086070470A48006800210160BE +:106B7000416081604FF48061C16001614161012128 +:106B800001767047305701201865012038400120F8 +:106B90003C57012048660120C046C046024A110009 +:106BA0001820ABBEFBE700BF260002002DE9F8412C +:106BB000174680461D46012FA8BFB9421BDB481E61 +:106BC00004B2062609E0E11B16FB045006FB015146 +:106BD0000622DCF795FF601E04B2BC42F3DA06E041 +:106BE00016FB07F1481941440622DCF789FF7F1E96 +:106BF0003FB2002FF4D5BDE8F1812DE9F043079DA8 +:106C0000089E002430F8147023F8147030F81470C3 +:106C100022F81470012716E04FF0060E00EB440C2A +:106C20000EFB07FE33F914903EF90C80C845B8BF3F +:106C300023F814803EF90CC032F914E0E645B8BFE1 +:106C400022F814C07F1C8F42E6DB33F914C032F9FE +:106C500014704FEA6C0C0CEB670725F8147012F8EF +:106C60001470FF0703D413F81470FF0704D535F828 +:106C700014707F1C25F8147032F8147033F814C0A7 +:106C8000A7EB0C073FB2002F48BF47F6FF7726F867 +:106C90001470641C032CB5DBBDE8F08300220F23C5 +:106CA000520040008842A4BF401A521C5B1EF7D11C +:106CB00010B27047012808DB002100B2B0F5804F08 +:106CC000BCBF4000491CF8DB0AE008B90F20704740 +:106CD0000021154A01E04000491C00B29042FADA56 +:106CE00008B27047012807DB0021B0F1804FBCBF1C +:106CF0004000491CF9DB09E008B91F20704700215A +:106D000001E04000491C10F1804FFADA08B27047E8 +:106D10000649884208BF47F6FF7002D0002848BFE6 +:106D2000404200B27047000000C0FFFF0080FFFF3C +:106D300070B504460D461646FFF7BCFF3080284666 +:106D4000FFF7B8FFB6F9003004FA03F205FA00F1D4 +:106D5000181A09B212B29142BCBF5210401E3080C4 +:106D60001046BDE8704099E72DE9F84F8846CEB04F +:106D700081461646B8F1210F80F22C810120FFF7E1 +:106D80008DFF002200239446174606210FE001FBE9 +:106D900007FE7F1C3EF90940CE4414FB00CCBEF92F +:106DA000024014FB0033BEF9044014FB00224745A7 +:106DB000EDDB4FEAEC30ADF80000D813ADF802007F +:106DC000D013ADF80400002014E001FB00F202EB48 +:106DD0000903B3F9047032F90920B3F9023012FB48 +:106DE00002F213FB032217FB07220EABD21223F889 +:106DF0001020401C4045E8DB00221EA815E001FBE6 +:106E000002F7BDF8004037F809301B1B3B521EABA0 +:106E1000FB184F44BDF802507C88641B5C80BF881F +:106E2000BDF804403F1B9F80521C4245E7DB02AF88 +:106E3000002205ACBA607A60029222622261059259 +:106E4000E2606260A261A260E261626150E001FB07 +:106E500002F3DDF814C033F909E01D5ED4F810A088 +:106E60001EFB05CECDF814E00DF1780E03EB090CF6 +:106E70009E44BCF90250BEF902B015FB0BAAC4F83F +:106E800010A0BCF904C0D4F820A0BEF904B01CFBCB +:106E90000BAAC4F820A033F900A0D4F80CB015FB5D +:106EA0000AB5E5606560A5691CFB0A55A561A5608A +:106EB000E569BEF902A01CFB0A5CC4F81CC0C4F85A +:106EC00014C00DF1380C3CF91250DDF808C01B5EFF +:106ED00013FB05C302937B68BEF902C01CFB05339C +:106EE0007B60BB68BEF904C01CFB0533BB60521C51 +:106EF0004245ACDB20250298401002904FF0000A7A +:106F000078684FEA6008B868C7F804804FEA6009FB +:106F1000C7F808904FF0000B0C2005A900FB0A10E1 +:106F200050F82B00FFF7DEFEA842B8BF05460BF174 +:106F3000010BBBF1030FEFDB0AF1010ABAF1030FFA +:106F4000E8DB4FF0000A57F82A00FFF7CBFEA84213 +:106F5000B8BF05460AF1010ABAF1030FF3DB606816 +:106F6000A8408014F080F0887080A068A840801449 +:106F7000B081B089B0806069A8408014F081F08948 +:106F800070810598A840801430802069A840801442 +:106F90003081206AA8408014308202984E99A8401F +:106FA0008014088008FA05F04E998014488009FA88 +:106FB00005F04E9980148880B6F900000628A4BF19 +:106FC000B6F90800062805DBB6F910000628A8BFA8 +:106FD000042000DA00204FB0BDE8F08F2DE9F04F1B +:106FE000804693B08946B2F910A0B2F90800B2F910 +:106FF0000A101C9D1F4610FB0AF301FB1131109172 +:1070000010ABB2F900E0B2F90C101AFB0EF401FB60 +:10701000114159601EFB00F4B2F9021001FB11414D +:1070200099604FF0000C109C012153F82160B4428C +:10703000BCBF34468C46491C0329F6DB012CC0F248 +:10704000A3800FFA8CFC4FF400640BA903AE05ABD0 +:10705000BCF1000F55D1ADF82C005089C880B2F9B1 +:1070600002004042ADF8140050894880108A08811F +:107070000221B2F90C0000F0B7F8002857D000F058 +:10708000B9F83C80BDF90C0080107880B6F9020098 +:107090008010B88002A9B7F90030B7F90220B7F91B +:1070A000040013FB03F312FB023210FB002000F07C +:1070B0007BF90002B7F9001000144143C91239806E +:1070C000B7F902104143C9127980B7F9041010FBD7 +:1070D00001F0C012B880B7F900C0B8F90000B7F9E4 +:1070E0000230B8F90210B7F904201CFB00F013FBC2 +:1070F0000100B8F9041012FB010E7446704601211C +:107100005DE0BCF1010F1DD1ADF82CA09089488045 +:10711000B2F90A004042ADF814009089C880108886 +:1071200008810221B2F9020000F05EF800282BD09D +:1071300000F060F8B6F90200801038807C80BDF95C +:107140000C00A5E7BCF1020F1ED1ADF82CE0508871 +:107150004880B2F90C004042ADF81400D088C880D5 +:10716000108908810221B2F90A0000F03DF858B1F7 +:1071700000F040F8BDF90C0080103880B6F902002C +:1071800080107880BC8085E700202AE0062606FB78 +:1071900001FA0AEB08063AF908A0B6F902B0B6F906 +:1071A00004601CFB0AFA13FB0BAA12FB06A6B645E9 +:1071B000B8BFB6468642D8BF30463419491C494547 +:1071C000E4DBAEEB0000C012288049460120FFF747 +:1071D00065FDE11210FB01F0400000144042F88010 +:1071E000012013B0BDE8F08F4042588007AB09AAD8 +:1071F0000BA808E003A8019005A8009007AB09AA16 +:1072000002210BA850E02DE9F84F804691469A469E +:1072100000250C46062618E03AF915C039F9153054 +:10722000021412FB0CFC4FEAEC3CC0F34E0013FBC3 +:1072300002C210FB03F002EBE03008EB4502400015 +:1072400088527F1CA74205DB6D1CA54229DA2F4618 +:1072500006FB058B3BF917006A1EC00312B206FB42 +:1072600007F10BE001EB080C3BF912303CF912C0BE +:1072700013FB0CF3521EA0EB830012B2002AF1D5CF +:10728000BD42C9D1012801DA00200BE000A900F0BD +:107290008BF8011429F81510C0F34E002AF81500D8 +:1072A000CFE70120BDE8F28F2DE9F047DDF820E0BF +:1072B000099E4FF0000C8846062526E005FB0C09C8 +:1072C00036F914A039F9149019FB0A77641E24B218 +:1072D000002CF3D53EF91C4032F91C9033F91CA068 +:1072E000E403A4EB87073C1414FB0AFA4FEAEA3ADA +:1072F000C7F34E0719FB04A417FB09F704EBE737A4 +:107300007F0026F81C700CF1010CC44529DA002717 +:10731000ACF10104DBE700EB410C15FB04CC36F9C2 +:1073200014E0BCF900C01CFB0EFCA7EB8C07641C2E +:1073300024B2A8F1010CA445EDDA33F911E032F9D9 +:1073400011C03C1414FB0EFE4FEAEE3EC7F34E078D +:107350001CFB04EE17FB0CF70EEBE7377F0026F85B +:107360001170491E09B2002904D436F91170FF03C7 +:107370004C1CDDE7BDE8F08710B500210022002895 +:1073800001D5002010BD1023840F520004EB8101B1 +:107390008000521C914226BF891A521C521E5B1E4D +:1073A000F2D1D003001410BD38B505460C46012DAE +:1073B00004DA002020804FF0804032BDFFF792FCBD +:1073C000208005FA00F1C0F11E002080C20758BFDE +:1073D000491000044014401C2080481610380FF259 +:1073E000240200B232F9103002EB4000C90140889B +:1073F000181A490C10FB01F0C0EBC3302188400083 +:10740000084132BDFF7F2E7CAE7876757D72BA6FF3 +:10741000296DC26A8368666669648962C260135FA7 +:107420007A5DF55B825A2159CF578B5655552C54AE +:107430000F53FC51F450F64F014F144E304D534C46 +:107440007E4BAF4AE74925496848B2470047544652 +:10745000AD450A456B44D1433B43A84219428E4196 +:10746000064182400040000010B5DFF86048482225 +:10747000014604F54570DCF77EFBD4F850036063E9 +:1074800004F554704168C4F884108068C4F8D400CE +:10749000032802D1012005F06BF9002010BD80B552 +:1074A0004822DFF83818DCF766FB002002BD80B503 +:1074B0000C220146DFF82808DCF75DFB002002BD46 +:1074C00080B50C22DFF81818DCF755FB002002BD50 +:1074D00010B5DFF810484FF4A672002104F50870CB +:1074E000DBF716FF4FF4087200212046DBF710FF90 +:1074F00000F0C7FB4DF294034822DFF8EC17DFF8E9 +:10750000EC0705F090F904464CF251330C22DFF8F9 +:10751000E017DFF8E00705F086F9204310BD0023EF +:10752000002A01D14FF48032426201F00302032AA3 +:1075300000D1012301F01802182A00D1012301F023 +:10754000C002C02A00D10123002B00D08821016095 +:1075500070470A460146DFF88C07E0E7DFF86C1752 +:1075600088624FF47A7290FBF2F2CA628A6C002A47 +:1075700004D1DFF8842792FBF0F088647047DFF8CD +:107580004C17886778314FF47A7290FBF2F24A60B8 +:107590000A6A002A04D1DFF8602792FBF0F0086243 +:1075A0007047DFF82817C1F8C800C8314FF47A7265 +:1075B00090FBF2F24A600A6A002A04D1DFF8382709 +:1075C00092FBF0F008627047DFF81817C1F860010D +:1075D0004FF47A7290FBF2F0C1F864017047DFF863 +:1075E0000407D0F8D000001200F001007047DFF867 +:1075F000F406006B001200F001007047DFF8E406AB +:10760000D0F88000001200F00100704730B4002074 +:107610000146DFF8D02602F130031C6DE40501D5E8 +:10762000D3E91601146BE40508D5D3E90245A94254 +:1076300004DC01DBA04201D22046294602F1D0033E +:10764000D2F8D040E40508D5D3E90245A94204DCCC +:1076500001DBA04201D2204629461C6DE40508D575 +:10766000D3E91645A94204DC01DBA04201D2204641 +:107670002946D2F85031DB050AD502F5A874D4E9C1 +:107680000223994204DC01DB904201D210461946E4 +:1076900030BC70470A460146DFF860063FE70A46FD +:1076A0000146DFF85C063AE770B584B004460D4643 +:1076B000B4F90400C003009000AEB4F90600C003A2 +:1076C0007060B4F90800C003B06004F10C0300AAB4 +:1076D000606A4100206880B204F0A2FA009829682C +:1076E000A0EB6100009070686968A0EB61007060B9 +:1076F000B068A968A0EB6100B06004F1180300AAAB +:10770000606A4100206880B204F08AFA206B40F081 +:10771000200020637FBDDFF8CC15C1F88400C1F8DC +:107720005403704738B50C46002818D0DFF8B4353C +:10773000D10702D50168C3F83413910703D503F5C7 +:107740004D7145684D60510703D503F54D71806853 +:10775000886003F54D7103F15000FFF7A5FF204647 +:10776000FFF7D9FF002210210846BDE8384005F098 +:107770008FB8F8B504460D46DFF86865002C12D0C6 +:1077800006F557770C222146384604F027FC0028DE +:1077900009D00C2221463846DCF7EDF906F5577181 +:1077A0003046FFF781FF756306F54B746562D6F8C6 +:1077B0000801002802D0C6F82C0303E04FF4D810CB +:1077C000C6F82C0300220421084605F061F80120C8 +:1077D0006060F1BDDFF80C15D1F83003012801D14C +:1077E000012000E000200022C1F83023704710B5CE +:1077F0000C46002804D00C22DFF8E414DCF7BBF9B7 +:10780000002C04D0DFF8DC04D0F82C03206010BD7D +:10781000F8B514461D46DFF8CC6406F1540702683B +:107820008B0610D4A6F85420416879808068B8800F +:10783000F86A40F08000F86206F54D7106F15000DC +:10784000FFF732FF0DE07A614268BA618068F86143 +:10785000F86A40F02000F86201F003003863C6F8CF +:107860005403F86A40F4A070F862D6E92201C6E930 +:107870002401C6E922450020F2BD70B514461D461C +:10788000DFF8606406220146301DDCF774F9306BC6 +:1078900040F4E0703063D6E90E01C6E91001C6E994 +:1078A0000E4506F557713046FFF7FEFE002070BD0D +:1078B000FEB514461D46DFF82C6406F1A4078A06BF +:1078C00017D400F0B8F900A800F0A8F90098A6F8BD +:1078D000A40000A8416879808068B88006F54571E9 +:1078E00006F1A000FFF7E0FEF86A40F08000F862C1 +:1078F0000EE002687A614268BA618068F861F86AED +:1079000040F02000F86201F003003863C6F8580325 +:10791000D6E93601C6E93801C6E93645F86A40F4C9 +:10792000A070F8620020FEBD2DE9F04385B0064648 +:107930000F4614461D46DFF8AC8308F5A079F8041D +:1079400009D500A9304604F0E2FA102200A9484601 +:10795000DCF711F904E0102231464846DCF70BF958 +:10796000C8E95645D8F8500107F4385141F4E071A0 +:107970000843C8F85001D8F8500110F4406F04D003 +:1079800022462B46304604F001FED8F8500100058F +:107990000AD500A80FF270311022DCF7C1F8224698 +:1079A0002B4600A804F006FE002005B0BDE8F083D9 +:1079B000DFF830030021C0F880107047DFF824039F +:1079C0000021C0F8D0107047DFF818030021C0F87C +:1079D00050117047DFF80C030021016370472DE957 +:1079E000F04300231C4600E0641CDFF8F852D5F891 +:1079F0002062B4420DDA0C2707FB0455D5F8246247 +:107A00000746BE4203D0D5F828528D42ECD116204D +:107A100032E0142E2EDA1C46002E01D11BE0641C2D +:107A2000B44207DA04EB440705EB8707D7F828725E +:107A30008F42F4DBB4420ED00BE00C2707FB065755 +:107A400007F5097C07F50677B7E80043ACE8004383 +:107A5000761EB442F1DB0C2707FB0454C4F8240261 +:107A600004F5097041608260D5F82002401CC5F819 +:107A7000200200E00C231846BDE8F083F8B500258D +:107A8000DFF8604294F83000400600D5022594F8F3 +:107A90008000400601D545F0010594F8D00040066D +:107AA00001D545F0040594F82001400601D545F0C4 +:107AB000080594F85001C00601D545F0100594F86A +:107AC0009801400601D545F020050026374611E013 +:107AD00007EB470004EB8001D1F82C02054208D0E7 +:107AE0002046D1F824128847002802D0002E00D169 +:107AF00006467F1CD4F820028742E9DB00F002F83A +:107B00003046F2BD10B47748016B4A0602D541F009 +:107B10001001016300F130010A6D530602D542F0F5 +:107B200010020A65D0F8D020530603D542F01002A7 +:107B3000C0F8D02000F1D002136D5C0602D543F0EE +:107B400010031365D0F850315C0603D543F01003E1 +:107B5000C0F85031036B23F0400303630B6D23F037 +:107B600040030B65D0F8D01021F04001C0F8D010D0 +:107B7000116D21F040011165D0F8501121F0400144 +:107B8000C0F8501100F5A870816C21F040018164AB +:107B900010BC704738B50C461546002803D00C229F +:107BA0005849DBF7E8FF002D04D04E48D0E92223E6 +:107BB000C5E90023002C03D04A48D0F88400207087 +:107BC00031BD70B50C461546464E0C2206F1B80183 +:107BD000DBF7D1FF002D03D0D6E93601C5E900015E +:107BE000002C09D0D6F86803002802D000202070AD +:107BF00070BDD6F8D400207070BD3A48406B704715 +:107C00003848D0F86813002901D000207047D0F818 +:107C1000D40070473348D0F884007047002107E053 +:107C2000304A02EB8102D2F8C42140F82120491CDD +:107C30000329F5DB704718B4002106E003EB81024D +:107C400050F82130C2F8B831491C264B0329F5DB26 +:107C5000D3F81812012907D103F5E272014603F5A2 +:107C6000E87018BC04F05EB8002106E003EB810266 +:107C700050F82140C2F8C441491C0329F6DB11BC6D +:107C8000704710B500200246104C04E004EB800160 +:107C9000C1F8F421401C0928F8DB2422002104F556 +:107CA000E870DBF735FB00200AE004EB00114FF031 +:107CB0007E52C1F8F4214FF08042C1F8D021401C1F +:107CC0000328F2DBBDE8104002E00000D01A0120DA +:107CD00004480021C0F8181270470000E41D01207C +:107CE0002C1E0120D01A01209F740208697402081A +:107CF000C1740208AF74020840420F00201B01202B +:107D0000701B0120381B0120000000400000000013 +:107D10000000000000000000704780B504F078FD0E +:107D200004F0CAFD00280CD004F0C6FD23230FF296 +:107D30008C020FF29801FFF7EFFFBDE8014004F05D +:107D4000BBBDFFF7C5FB00280CD0FFF7C1FB262306 +:107D50000FF268020FF27401FFF7DEFFBDE8014089 +:107D6000FFF7B6BB04F0F5FC00280CD004F0F1FCE2 +:107D700028230FF248020FF25401FFF7CDFFBDE8B0 +:107D8000014004F0E6BC012004F08BFD002002BDA0 +:107D900080B504F0A7FD00280CD004F0A3FD472314 +:107DA0000FF264020FF22401FFF7B6FFBDE80140B5 +:107DB00004F098BD002002BD00000000696E765FEF +:107DC000696E69745F6D706C00000000433A5C502E +:107DD000726F6A6563745C4E6F7465335F46697277 +:107DE000655C4E6F7465335F466972655C496E769B +:107DF000656E53656E73655C6D6C6C6974655C6D06 +:107E0000706C2E6300000000696E765F737461729F +:107E1000745F6D706C0000007047000000B510EEDC +:107E2000100AE1F771F80022DFF8443CE0F79AFF0E +:107E300004F06EFDDFF8F42BC2E9140100BDDFF899 +:107E4000EC2BD2E912017047DFF8E01BD0E90E23DA +:107E5000C1E91223012088657047C1070CD5DFF8FE +:107E6000501C4FF040420A6770314A608A604FF000 +:107E70008042CA600A614A6181070ED5DFF8301C72 +:107E80004FF04042C1F8182101F58C714A608A60B8 +:107E90004FF08042CA600A614A6140070ED5DFF8A0 +:107EA000101C4FF04042C1F8C02101F5E070426063 +:107EB00082604FF08042C260026142617047000000 +:107EC0000021401000D0491C0128FADA481C7047F4 +:107ED0002DE9F14F88B000200146CDE90401089852 +:107EE000806F002801D10846BEE0FFF7E9FF814618 +:107EF0004FF000088BE000EBC802D2E900014A46CF +:107F000004F044FD04460D46089800EBC8000290BA +:107F10000246D2E906014A4604F038FD06460F46FD +:107F2000A4FB042304FB053305FB0433A4FB02017B +:107F300004FB031105FB0211CDE90601029AD2E907 +:107F400012014A4604F022FDCDE90001A6FB0623FA +:107F500006FB073307FB06330320A0FB02AB00FB45 +:107F600003BBDDE90001B0EB0A0061EB0B01DDE9C9 +:107F70000623A4FB02AB04FB03BB05FB02BB4FEAD9 +:107F80004B0B4BEADA7B10EB4A0A41EB0B0BA4FBE1 +:107F9000040104FB051105FB0411301A67EB010114 +:107FA000A4FB002304FB013305FB00330320A0FBEB +:107FB000026700FB0377DDE9060136184F41029A9C +:107FC000D2E90C014A4604F0E1FC321A67EB0103E6 +:107FD000A4FB020104FB031105FB0211890041EA25 +:107FE0009071BAEB80006BEB0101002904DC00DB2F +:107FF00002D2404261EB4101DDE904238B4204DC03 +:1080000001DB824201D2CDE9040108F10108B8F197 +:10801000030F0898FFF66FAF806F0899C96F884209 +:1080200010D000EE100AB8EEC00A04F0C1FCF7EE62 +:10803000000A80EE800A089880ED200A0898014620 +:10804000896FC167DDE9040104F0C0FC00EE100A8D +:108050000898D0ED200A20EE200A10EE100A09B090 +:10806000BDE8F04F04F0E4BC09B0BDE8F08F2DE9A5 +:10807000F04F85B0814600200146CDE90201D9F8D4 +:108080007800002801D1084679E0FFF719FF009039 +:108090004FF0000849E009EBC802D2E90001009A5C +:1080A00004F074FC04460D46A4FB046704FB05774A +:1080B00005FB047709EBC80001900246D2E90601EE +:1080C000009A04F063FC801BB941A4FB002304FB6D +:1080D000013305FB00330320A0FB02AB00FB03BB15 +:1080E000A4FB060104FB071105FB06111AEB0004B3 +:1080F0004BEB0105019AD2E90C01009A04F046FC11 +:10810000201A65EB0101002904DC00DB02D24042A9 +:1081100061EB4101DDE902238B4204DC01DB824299 +:1081200001D2CDE9020108F10108B8F1030FB2DB79 +:10813000D9F87800D9F87C1088420FD000EE100AE8 +:10814000B8EEC00A04F034FCF7EE000A80EE800AB4 +:1081500089ED200AD9F87800C9F87C00DDE9020130 +:1081600004F034FC00EE100AD9ED200A20EE200ABB +:1081700010EE100A05B0BDE8F04F04F059BC05B090 +:10818000BDE8F08F10B40121026BD20513D5DFF8E2 +:108190002029D2F888301468A3420CDBD0F8800084 +:1081A000C00505D5D2F8D8015168884203DB052106 +:1081B000084610BC70470020FBE72DE9F04184B071 +:1081C0000446002600ADDFF8E87812E007EBC602AF +:1081D000D2E9040107F50872926AE7F751FF07EB4D +:1081E0008602D2F894201204D317801845F826008E +:1081F000761C032EEADBA822002107F11000DBF732 +:1082000087F80120FFF729FE6868002801D401469D +:1082100000E04142009A002A00D55242914201DA20 +:10822000104602E0002800D54042A968002901D488 +:108230000A4600E04A42824204DB002901D4084693 +:1082400000E04842B4F90620110001D40B4600E0DA +:108250004B42B4F904C06646BCF1000F01D4B646E7 +:1082600001E0C6F1000E734504DABCF1000F06D53B +:10827000764204E0002A01D40E4600E04E42B4F9F2 +:1082800008100A0001D4134600E05342B34204DB55 +:10829000002901D4164600E05642616A03F045FA0F +:1082A000616A300403F041FAB0F5201F03DD0520B8 +:1082B00087F820024BE0DFF87467F16A6A68501AA9 +:1082C00001D4034600E08B1AD6F828C0DDF800E0A0 +:1082D000BEEB0C0E01D4F04603E0DDF80080ACEB01 +:1082E0000808434508DABEF1000F01D4704606E0E5 +:1082F0000098ACEB000002E0002800D5881A316B32 +:10830000AA68531A01D49C4601E0A1EB020C8445F3 +:1083100004DB002B01D4184600E0881A616A03F0E0 +:1083200004FA8046022004F061F907F50870C06A7B +:10833000804506DA032100A8FFF71BFA2046FFF765 +:1083400083FD0098B0626868F062A8683063BDE899 +:10835000FF812DE9FE4186460E4600271CE0D3171B +:10836000A2FB004502FB015503FB005520462946B0 +:108370000CEB4C0306EBC30303EBC708D8E900453D +:1083800024184D4103EBC703C3E900450CF1010C70 +:10839000BCF1040FE3DB7F1CB06F032F1BDA06EB8D +:1083A000870101F16003002802D13EF917005862ED +:1083B0003EF917005A6A821A00A840F82720086E72 +:1083C000904200DA0A66D868824200DADA60012058 +:1083D00000218C46DCE7401CB0670120C6F8A000F5 +:1083E000BDE8F7812DE9F04104460025069E05E031 +:1083F00006EB850054F82510C1666D1C032DF7DBD4 +:1084000006F17807C7E90623B06F002814D00025CD +:1084100010E006EB850854F82500D8F88410401ABF +:10842000ECF740FCD8F86010814200DA0146C8F849 +:1084300060106D1C032DECDBB06F401CB067012099 +:10844000B862BDE8F08110B4002108E000EB8102C1 +:1084500002F16003DC685C6200231366491C032997 +:10846000F4DB00F17801D1E90623C1E908230022F9 +:1084700082671046886210BC704730B4D0E924236C +:10848000D0E92645101B63EB050130BC7047016E37 +:10849000426E8A4200DA0A46816E914200DA114643 +:1084A00008467047016EC26E891A426E036FD21A77 +:1084B0008A4200DB1146826E406F101A884200DB50 +:1084C00001460846704710B5DFF8E4451022002148 +:1084D00004F51670DAF71CFF1022002104F51E7057 +:1084E000DAF716FF1022002104F51A70DAF710FFF0 +:1084F0001022002104F52270BDE81040DAF708BF11 +:1085000010B5DFF8AC45A822002104F11000DAF71D +:10851000FFFEA822002104F5B070DAF7F9FE05206D +:10852000BDE8104099E4D0B4DFF8842502F51E734D +:108530009C68002C02D1C2E99E0108E0D2E99E6746 +:108540008F4204DC01DB864201D2C2E99E01601C3D +:108550009860D0BC7047D0B4DFF8542502F5227380 +:108560009C68002C02D1C2E9A20108E0D2E9A2670E +:108570008F4204DC01DB864201D2C2E9A201601C09 +:108580009860D0BC7047D0B4DFF8242502F516738C +:108590009C68002C02D1C2E9960108E0D2E99667F6 +:1085A000B94204DC01DBB04201D2C2E99601601C91 +:1085B0009860D0BC7047D0B4DFF8F42402F51A7389 +:1085C0009C68002C02D1C2E99A0108E0D2E99A67BE +:1085D000B94204DC01DBB04201D2C2E99A01601C5D +:1085E0009860D0BC7047F8B507460124DFF8C05446 +:1085F00005F11000FFF756FFDFF83064316C81425F +:1086000003DAFFF77DFF0020F2BD3846FFF7BAFD21 +:10861000070001D10220F2BD78071ED505F5B07024 +:10862000FFF756FC000D40EA01300915C5E9840149 +:10863000D5E98401D6E904238B4205DC01DB8242C3 +:1086400002D20024FFF7B7FFA822002105F5B07081 +:10865000DAF75EFE0420FFF700FCF80711D505F1FC +:108660001000FFF735FC05F50472C2E90601D6E9F2 +:1086700006238B4205DC01DB824202D20024FFF795 +:1086800082FF2046F2BD1FB5044694F8300000F08A +:10869000C000C02804D1DFF82014201DFFF759FEC8 +:1086A00094F8800000F0C000C02805D1DFF80C1459 +:1086B00004F15400FFF74DFED4F8D00000F0C001E3 +:1086C000C0290BD1002001AA032818DA04EB4001CD +:1086D000B1F9A41042F82010401CF5E700F060004A +:1086E000602814D1002001AA07E004EB8001D1F832 +:1086F000B810891342F82010401C0328F5DBDFF87E +:10870000C0030090D4E9362301A8FFF76BFE1FBD1C +:10871000F8B50446002004F12C077968CA0540F139 +:10872000278101F05001402900D1012097F8541011 +:1087300001F05001402900D1012094F8D01001F03F +:108740005001402900D10120DFF86453002809D0EE +:10875000FFF7D6FE0020C5F8180285F82002204653 +:10876000FFF772FBE06AD5F8401281421ED0C5F8CF +:108770004002AE4E716B0A2806DA48002860B06BE2 +:10878000401CC5F8440203E02960B06BC5F8440200 +:10879000D5F84402C0F11000C5F848024FF48040FB +:1087A000C5F84C021920B16B88403064386DD5F89B +:1087B0005012814210D0C5F850029C4E716B0A28AD +:1087C00006DA48006860B06B401CC5F8540203E04C +:1087D0006960B06BC5F854022046FFF754FF95F866 +:1087E0002002062800F2C480DFE800F004122C35D5 +:1087F00074A4B100D5F81802411CC5F818120A2853 +:10880000C0F2B680FFF77CFE012085F82002AFE0C1 +:10881000D5F8B000012840F0AB802046FFF7E3FE1A +:10882000002803D1052085F8200204E0012802D1A8 +:10883000022085F8200205F1B800FFF704FEFFF7DB +:1088400042FE95E0032085F820022046FFF7B5FCA4 +:10885000FFF756FE8CE02046FFF7C5FE002857D0F4 +:10886000012840F08580D4F8D000C00523D504F05D +:1088700031F900281FD105F1B8073846FFF707FE88 +:10888000C117C5E98201694ED6E90201D5E9822303 +:10889000994206DC01DB904203D2052085F82002D4 +:1088A0000FE03846FFF7E9FDD6E90823994208DBD7 +:1088B00001DC904205D3042085F820022046FFF712 +:1088C0007CFCD5E98401FFF746FED5E98A01FFF774 +:1088D0002AFE4DE0D4F8D000C00514D504F0FAF813 +:1088E000002810D105F1B800FFF7D1FDC117C5E987 +:1088F00082014E48D0E90223D5E982018B4207DB91 +:1089000001DC824204D32046FFF76DFE002803D12C +:10891000052085F820022BE0012829D12046FFF709 +:108920004CFCD5E98401FFF716FED5E98A01FFF773 +:10893000FAFD1DE0062085F82002012003F056FE16 +:10894000FFF7DEFD05F1B800FFF77DFD10E02046E2 +:10895000FFF749FE012803D1022085F8200207E035 +:10896000002805D1FFF7CCFD05F1B800FFF76BFD3E +:108970000020F2BD0021401000D0491C0128FADA85 +:108980002A4801224B1C9A404263491C81631922E8 +:1089900002FA01F10164704738B5454C4FF4267274 +:1089A00000212046DAF7B4FC204D60220021284641 +:1089B000DAF7AEFC0720FFF750FA45F6C050002169 +:1089C000C5E906011E20C5E902016420C5E90401CC +:1089D0003C48C5E908010120C4F81C021920FFF732 +:1089E000C9FF0020C4F840029FED320AFFF716FAD3 +:1089F0000020A86532BD10B52D4C4FF42672002121 +:108A00002046DAF785FC0720FFF727FA0120C4F893 +:108A10001C0284F820020022032103F039FF072200 +:108A200064212948BDE81040FEF7D9BFF057012066 +:108A300010B5FFF7B1FF040009D040F225330FF263 +:108A400094020FF2A801FFF7E7F9204610BD1F4876 +:108A500003F03AFF040009D04FF44A730FF2740296 +:108A60000FF28801FFF7D8F9204610BD002010BD95 +:108A700065CDCD41F8B50026154FB96D012915D149 +:108A8000016BC90512D5D0E90E45FFF7D8F9201AB8 +:108A900065EB0101002909DB00DC07D3D7E91423CA +:108AA000994203DC01DB904200D201263046F2BD40 +:108AB000382D012000009644482D0120982E0120D9 +:108AC000F02D01200008AF2F11870208F789020856 +:108AD000F0570120696E765F656E61626C655F6656 +:108AE0006173745F6E6F6D6F74000000433A5C5089 +:108AF000726F6A6563745C4E6F7465335F4669724A +:108B0000655C4E6F7465335F466972655C496E766D +:108B1000656E53656E73655C6D706C5C66617374D5 +:108B20005F6E6F5F6D6F74696F6E2E630000000083 +:108B300070B52DED028B98B005460E4608EE102A52 +:108B40001C4695ED020AF8EEC00A95ED010AB8EE52 +:108B5000C01A95ED000AB8EEC00A20EE000A01EE38 +:108B6000010A00EEA00A03F023FFF0EE408A18EE9F +:108B7000900AE0F7C9F921F000410122DFF8A83995 +:108B8000EDF7A6F800F2B9809FEDD70AD6ED000AFE +:108B9000F8EEE00A60EE800ACDED040A04A8D6EDF6 +:108BA000010AF8EEE00A60EE800AC0ED010AD6ED97 +:108BB000020AF8EEE00A60EE800AC0ED020AD6ED85 +:108BC000030AF8EEE00A20EE800A80ED030A002096 +:108BD000089008A895ED000AB8EEC00A80EE280AB1 +:108BE00080ED010A95ED010AB8EEC00A80EE280A70 +:108BF00080ED020A95ED020AB8EEC00A80EE280A5E +:108C000080ED030A14AA08A904A802F038FE10A9EE +:108C100004A802F052FF00AA10A914A802F02FFE27 +:108C200000AD95ED010AD5ED020A20EEA01A00EE86 +:108C3000001ADFEDAE1AB4EE611AF1EE10FA02D5A9 +:108C40009FEDAB1A15E0DFEDAB1AB4EE611AF1EE51 +:108C500010FA02D59FEDA81A0BE0DFEDA81AB4EECA +:108C6000611AF1EE10FA02D59FEDA51A01E0B6EEF9 +:108C7000001AF8EEC81A9FEDA32AC1EE821A21EE5F +:108C8000811A00200C900CA860EE810AC0ED010A48 +:108C900020EE410A80ED020A0021C16000AA04A969 +:108CA00002F0EDFD00AA04A900A802F051FE00A800 +:108CB00002F0C9FE9FEDDA0ADDED000A60EE800ADF +:108CC000FDEEE00AC4ED000AD5ED010A60EE800A6F +:108CD000FDEEE00AC4ED010AD5ED020A60EE800A5D +:108CE000FDEEE00AC4ED020AD5ED030A20EE800A8B +:108CF000BDEEC00A84ED030A04E01022314620468E +:108D0000DAF739FF18B0BDEC028B70BD30B52DED30 +:108D1000048B81B004460D4694ED020AF8EEC00AB9 +:108D200094ED010AB8EEC01A94ED000AB8EEC00A3C +:108D300020EE000A01EE010A00EEA00A03F038FE60 +:108D40009FEDB88AB4EE480AF1EE10FA3CD4D4EDA7 +:108D5000020AF8EEE00A80EE809AB7EE000A30EEE2 +:108D6000490AB5EE400AF1EE10FA01DC9FEDAE0AB9 +:108D7000F6EE009A20EE290A03F01AFEF0EE408A81 +:108D8000B7EE000A39EE000AB5EE400AF1EE10FA2D +:108D900001DC9FEDA50A20EE290A03F009FEB0EEE2 +:108DA000409A94ED010AF8EEC00A94ED000AB8EE7C +:108DB000C00A20EE000A00EEA00A03F0F9FDB4EEAE +:108DC000480AF1EE10FA07D54FF0804028600020E5 +:108DD0006860A860E86027E0DFED910A29EE201ABC +:108DE000BDEEC11A85ED001A94ED011AB8EEC11A54 +:108DF00081EE001A21EE281A61EE200AFDEEE00A4B +:108E0000C5ED010AD4ED000AF8EEE00A80EE800A12 +:108E100020EE280ADFED850A20EE200ABDEEC00A0A +:108E200085ED020A0020E86001B0BDEC048B30BD86 +:108E300038B504460D4694ED030AF8EEC00A94EDE9 +:108E4000020AB8EEC01A94ED010AF8EEC01A94EDC9 +:108E5000000AB8EEC00A20EE000A01EEA10A01EEF7 +:108E6000010A00EEA00AB5EE400AF1EE10FA07D8AA +:108E70004FF08040286000206860A860E86031BD45 +:108E800003F096FDF7EE000A80EE800ADFED640A3B +:108E900020EE200AD4ED000AF8EEE00A60EE800A27 +:108EA000FDEEE00AC5ED000AD4ED010AF8EEE00A95 +:108EB00060EE800AFDEEE00AC5ED010AD4ED020A7B +:108EC000F8EEE00A60EE800AFDEEE00AC5ED020A67 +:108ED000D4ED030AF8EEE00A20EE800ABDEEC00AE7 +:108EE00085ED030A31BD00000000803017B751390D +:108EF000A69BC43B0AD7233CCDCCCC3DCDCC4C3E2D +:108F00009A99993E0014CD4770B588B0054695F8FA +:108F10003000400640F18180A869002800D5404219 +:108F2000B0F5803F0DDAE969002900D54942B1F575 +:108F3000803F06DA296A002900D54942B1F5803F11 +:108F400067DBDFF8E815DFF8E84588420BDAE86907 +:108F5000002800D54042884205DA286A002800D55A +:108F60004042884202DB0320A06301E00220A063AC +:108F7000A86A616B81421ED0606395ED0A0AB8EE63 +:108F8000C00ADFEDA00A80EE200ADFED9F0A20EE86 +:108F9000200A10EE100ADFF7B7FFDFF89825DFF898 +:108FA0009835DFF7DFFE0022DFF89035ECF7F2FFAF +:108FB000EBF77CFE20630020049004AE216BA869CF +:108FC00002F0B3FB7060216BE86902F0AEFBB060A9 +:108FD000216B286A02F0A9FBF06000AA04A92046D0 +:108FE00002F0A9FB00988001009000A84168890167 +:108FF0004160816889018160C1688901C160224640 +:1090000000A9204602F0FAFB21462046FFF710FF98 +:1090100003E0DFF81C050021816308B070BD00008B +:109020000000804E0100803F00000000000080CE64 +:1090300070B52DED048B8EB0044694F850014006B7 +:1090400040F1DC80DFF8E854D4F840012968401A88 +:1090500000D54042D4F86411DFF8E4245143814242 +:1090600002DA0320A86301E00220A863D4F85001CB +:10907000810505D5294604F5A070FFF7D9FEBDE0AE +:10908000800407D54FF08040A8640020E86428657C +:10909000686597E0002103A8FEF7A9FB0C2205F103 +:1090A0003C0103A802F09AFF002805D1D4F8600122 +:1090B000A96D884200F0868000AB03AA616A20682F +:1090C00080B202F0ADFD00AE96ED020AF8EEC00AE5 +:1090D00096ED010AB8EEC01A9DED000AB8EEC00A7E +:1090E00020EE000A01EE010A00EEA00A03F060FC87 +:1090F000B0EE408A9FED450A28EE000ADFED440AF3 +:1091000080EE200AD4ED580AF8EEE00A20EE200A9C +:10911000DFED400AC0EE208AB0EE680A03F0E2FC00 +:10912000B0EE409AB0EE680A03F0DFFCF0EE000A01 +:10913000B4EE608AF1EE10FA07D54FF08040A864D3 +:109140000020E8642865686533E0DFEDCB0A29EE8E +:10915000201ABDEEC11A85ED121A20EE200ADDEDAF +:10916000000AF8EEE00A60EE200AC0EE880AF1EE8E +:10917000600AFDEEE00AC5ED130AD6ED010AF8EE2D +:10918000E00A60EE200AC0EE880AF1EE600AFDEE09 +:10919000E00AC5ED140AD6ED020AF8EEE00A20EE68 +:1091A000200A80EE080AB1EE400ABDEEC00A85ED45 +:1091B000150A0C2203A905F13C00DAF7DCFCD4F80F +:1091C0006001A86504F5A07406AA05F148012046CF +:1091D00002F0B1FA0AAA06A905F15C0002F0ABFAA6 +:1091E00005F15C01204602F01CFB06AA0AA92846EC +:1091F00002F0A1FA294606A8FFF71AFE0EB0BDEC50 +:10920000048B70BD002474490000004EDB0F494000 +:109210000000344B0024F4492DE9F04F93B0074689 +:10922000012407F13005286DC14E00F0500140299E +:1092300004D0F16E002912D0400610D506F11001BD +:1092400007F16800FFF762FDD7F85001C00519D596 +:1092500006F15C0107F5A07002F0E3FA12E0D7F81E +:10926000500100F05002402A03D0002915D04006DA +:1092700013D506F15C0107F5A07002F0D2FA286D53 +:10928000C0050AD500A9304602F0CBFA06F120024B +:1092900000A906F1100002F04EFA386BC0053846FE +:1092A00002D5FFF731FE01E0FFF7C2FE06F1100222 +:1092B000314606F1200002F03EFA95F850004006D3 +:1092C00040F1D580386BD7F850110843C00540F104 +:1092D000BA8004AA07F1680106F1100002F0B0FAA2 +:1092E000D5F840A04FEAEA7BE86BC117AA6BD31709 +:1092F000A2FB028902FB039903FB0299A0FB002356 +:1093000000FB013301FB003318EB020049EB0301C2 +:10931000AAFB0A230AFB0B330BFB0A3380185941C3 +:1093200002292FDB02DCB0F1804F2BD307A803F01A +:1093300023FA07A8D0F808A04FEAEA7B4068C117D3 +:10934000079AD317A2FB028902FB039903FB029938 +:10935000A0FB002300FB013301FB003318EB0200EC +:1093600049EB0301AAFB0A230AFB0B330BFB0A336D +:1093700080185941022905DB02DCB0F1804F01D38E +:109380000420B063B06B042804D100244FF496612C +:10939000316722E0022801D003280BD1A96C41F2E9 +:1093A000883291FBF2F4012C00DA0124316F01299B +:1093B00013DB0FE0012801D000280ED1A96C41F287 +:1093C000883291FBF2F1012900DA21464C00316F1D +:1093D000012902DB091B3167A400032800D0A40087 +:1093E0005848444300200A900AAD2146059880025F +:1093F00002F09BF96860214604984042800202F026 +:1094000094F9A86000200D900EAA06F110010AA898 +:1094100002F091F906F110020EA906F1100002F017 +:10942000EDF906F1100106F11000FFF701FD00A9AA +:10943000304602F0F6F906F1200200A906F110000C +:1094400002F079F913E006F11003AA6C06F110019D +:1094500007F16800FFF76CFB00A9304602F0E1F964 +:1094600006F1200200A906F1100002F064F90020C4 +:1094700013B0BDE8F08F00000000804E38B5044600 +:10948000206BC0050AD404F13000006DC00505D47E +:10949000D4F85001C00501D4002032BD244DD4F8C9 +:1094A000500100F4A060B0F5A06F09D1102204F5BE +:1094B000A07105F11000DAF75EFB0120E86604E018 +:1094C0002046FFF7A9FE0020E86604F13000D0E94D +:1094D000022305F1100003F059F8002032BD10B549 +:1094E000134C742200212046D9F712FF4FF0804020 +:1094F000206120602062E063E0650020206710BDED +:1095000080B5FFF7ECFF002805D10FF21100BDE890 +:10951000024003F0D9B902BD000000001322C821A7 +:109520000948FEF75CBA00000000D040010064006A +:10953000B4520120112D4454FB2189400080664023 +:1095400071981C00A69BC4007D94020838B504469F +:10955000DFF8E05468680870D5E90201C2E900014B +:10956000686A9FED600A296A002920D400EE900AFB +:10957000F8EEE00A60EE800AC4ED000AD5ED0A0AB2 +:10958000F8EEE00A60EE800AC4ED010AD5ED0B0AA0 +:10959000F8EEE00A60EE800AC4ED020AD5ED080A92 +:1095A000F8EEE00A20EE800A84ED030A26E040424D +:1095B00000EE900AF8EEE00A60EE800AC4ED000AC0 +:1095C000A86A404200EE900AF8EEE00A60EE800AD7 +:1095D000C4ED010AE86A404200EE900AF8EEE00AA3 +:1095E00060EE800AC4ED020A286A404200EE900A4A +:1095F000F8EEE00A20EE800A84ED030A03F0DCF8BE +:1096000084ED040AE86B32BD70B588B00446164696 +:1096100004A8FEF7BFFADFF81C54D5E90201C5E93A +:109620000401C6E9000100A803F026F800A841687B +:109630009FED2C0A009A002A20D400EE901AF8EE32 +:10964000E00A60EE800AC4ED000AD0ED020AF8EEEE +:10965000E00A60EE800AC4ED010AD0ED030AF8EEDC +:10966000E00A60EE800AC4ED020ADDED000AF8EEC1 +:10967000E00A20EE800A84ED030A26E0494200EE6B +:10968000901AF8EEE00A60EE800AC4ED000A8168E4 +:10969000494200EE901AF8EEE00A60EE800AC4ED4E +:1096A000010AC068404200EE900AF8EEE00A60EE5F +:1096B000800AC4ED020A0098404200EE900AF8EEDB +:1096C000E00A20EE800A84ED030A00202061686B26 +:1096D000801100F00100296C891101F0010108439B +:1096E00008B070BD0000803010B58AB0044600A9F3 +:1096F000DFF8440302F0F6F99FEDBD0ADDED000A44 +:10970000F8EEE00A60EE800AC4ED000A00A8D0ED91 +:10971000010AF8EEE00A60EE800AC4ED010AD0ED1D +:10972000020AF8EEE00A60EE800AC4ED020AD0ED0B +:10973000030AF8EEE00A60EE800AC4ED030AD0EDF9 +:10974000040AF8EEE00A60EE800AC4ED040AD0EDE7 +:10975000050AF8EEE00A60EE800AC4ED050AD0EDD5 +:10976000060AF8EEE00A60EE800AC4ED060AD0EDC3 +:10977000070AF8EEE00A60EE800AC4ED070AD0EDB1 +:10978000080AF8EEE00A20EE800A84ED080A0AB022 +:1097900010BD000010B52DED028B8AB0044600A864 +:1097A000FFF7A2FF9FED1F8ADDED000A9DED030A82 +:1097B000B1EE400A03F09CF920EE080A84ED000A9D +:1097C000DDED080A9DED070AB1EE400A03F090F9BD +:1097D00020EE080A84ED010A9DED060A03F0C0F9A7 +:1097E00020EE080A84ED020A94ED000AB5EE400A64 +:1097F000F1EE10FA05D5DFED0C0A30EE200A84ED0B +:10980000000A0AB0BDEC028B10BDD0B5894C63686C +:109810000B70D4E90267C2E90067FFF7BBFFE06B9A +:10982000D0BD0000E12E65420000B4432DE9FF41A8 +:10983000044600254FF47A787E4E06F10802311D69 +:1098400006F1200002F03BFF04F12C025068306367 +:1098500004F13800816C716304F1CC077968B1635D +:1098600004F1D8018B6F33645268D30501D5D4F865 +:109870002C80836C5FEAC35C05D5D0F844C0C44536 +:1098800001DAE0460125D7F804C05FEACC5E05D5D1 +:10989000D4F8CCE0C64501DAF0460225896F5FEACC +:1098A000C15E04D5D4F864E1C64500DA03255FEA59 +:1098B000C15E07D50CEA030E5FEACE5E0BD44FF013 +:1098C000FF3508E003EA020E0CEA0E0E5FEACE5EF8 +:1098D00001D44FF0FF35002D05D0022D1BD00ED343 +:1098E000032D24D02FE002F04000401E8041C043F1 +:1098F000C00FF063D4E90E01C6E9020125E003F0D0 +:109900004001491E8941C943C90FF163D0E91423BD +:10991000C6E9022319E00CF04000401E8041C0431C +:10992000C00FF063D4E93601C6E902010DE001F091 +:109930004000401E8041C043C00FF063D4E956018F +:10994000C6E9020101E00020F06306F1180200A957 +:1099500001A8FEF736F99DF90000306000240DE003 +:1099600040060AD501A850F8240000EE100ABAEE0D +:10997000C80A06EB840080ED320A641C032C2CDA42 +:10998000387900F0500040280CD101A850F824008C +:1099900000EE100AB8EEC00A2C2000FB0460443030 +:1099A00002F084F9786800F0C001C029D8D101A87C +:1099B00050F8240000EE100AB8EEC00A2C2000FB7C +:1099C0000460443002F087F9DFED190A20EE200A26 +:1099D00006EB840080ED320ACFE7002004B0BDE83A +:1099E000F08137224FF461711448FDF7F8BF000091 +:1099F0000000803038B50F4CD82200212046D9F71E +:109A000087FC002508E004F1D8012C2000FB05406C +:109A1000443002F03CF96D1C032DF4DB002032BD14 +:109A200080B5FFF7E7FF0648BDE8024002F04CBFF3 +:109A300000008037B8960020D89600202D980208A4 +:109A4000E39902082DE9F0412DED048B84B0044622 +:109A50000F4690461D46DFF864693C2206F10C0172 +:109A6000304603F0ADF8502206F1580106F14800E7 +:109A700003F0A6F80C22414606F13C00DAF77BF829 +:109A80001022394606F19800DAF775F89FEDA39A8F +:109A9000D6F85C01401CC6F85C01072802DB0620F2 +:109AA000C6F85C01D6F85C01C0F1060722E000AA06 +:109AB00006EB071000F14801284601F0E0FE00AA7D +:109AC00007EB470006EB800104F1B80001F0AAFDA6 +:109AD000F0EE409A19EE900ADFF716FA21F00041F5 +:109AE00053EC182B23F00043ECF7DAF801D2B0EE78 +:109AF000699A7F1C19EE100ADFF706FA41EC180B81 +:109B0000062FD4DBB0EE480AF0EE680A04B0BDECD4 +:109B1000048BBDE8F08100002DE9F04F2DED0A8B9C +:109B200081B0B0EE409AF0EE609A0C469146002566 +:109B30009FED76ABB0EE4A8AF0EE6A8A406B002861 +:109B400000D40125DFF87468482206F1C80106F147 +:109B5000C00003F035F806F1B80888ED149B002723 +:109B60000CE053EC182B06EBC700D0F8C410D0F86B +:109B7000C000F0F721F941EC180B7F1C0A2FF0DB35 +:109B800051EC180B0022DFF83838ECF703FA41ECFF +:109B90001B0B88ED16BB322C2FDBC820C6F85401F6 +:109BA0004846DFF7C7F841EC1A0B9FED5ACB51EC52 +:109BB000190B0022DFF80C38ECF7ECF953EC1A2BF8 +:109BC000DFF7D0F853EC1C2BECF7E4F941EC180B61 +:109BD000B4F57A7F44DB51EC190B0022DFF8E8374B +:109BE000ECF7D8F953EC1A2BDFF7BCF853EC1C2B2D +:109BF000ECF7D0F941EC180B32E0D6F8540141F201 +:109C0000883199FBF1F101EB8101401AC6F854014A +:109C100002D50020C6F8540151EC190B0022DFF8E0 +:109C2000AC37ECF7B7F982468B464846DFF782F847 +:109C300052465B46DFF796F80022DFF8D037ECF7A4 +:109C4000A9F941EC180BD6F85401002808D106F503 +:109C5000AA70C068012803D1B0EE4A8AF0EE6A8A81 +:109C600006F5AA704068002803D0B0EE498AF0EEED +:109C7000698ADFF85C07814503D1B0EE498AF0EECE +:109C8000698A53EC182B00200146FBF777FE01D0C0 +:109C900088ED18BBD8E91801D8E91623ECF7BAF813 +:109CA00021F00041DFF82C27DFF82C37ECF710F813 +:109CB00022D8D6E92E2300200146FBF75FFE1BD1F8 +:109CC000012D19D1C820C6F8540151EC190B0022FE +:109CD000DFF80837ECF75EF904460D464846DFF733 +:109CE00029F822462B46DFF73DF80022DFF81C3723 +:109CF000ECF750F941EC180BB0EE480AF0EE680AA8 +:109D000001B0BDEC0A8BBDE8F08F00000000000040 +:109D100000000000000000000088B34000247449E7 +:109D20002DE9F04F2DED0A8BB1B0044619A80021A2 +:109D30000A460B460EC0DFF8845605F5AC76706C0B +:109D400000051FD5D4F8500100051BD420A80FF240 +:109D5000D8611022D9F7E4FED4E9362305F59A70CC +:109D600002F014FCD4E9362320A802F023FC1022D0 +:109D7000002105F1A800D9F7CBFA4FF08040C5F8D3 +:109D8000A80062E208460DE005EB800191ED2A0A89 +:109D9000B8EEC00A20EE090A12A901EB800181ED9C +:109DA000000A401C9FEDE69A0428EDDB06A802F0AD +:109DB00063FC9DED060AB8EEC00A20EE090A8DED9F +:109DC0001C0A06A81CA990ED010AB8EEC00A20EEF4 +:109DD000090A81ED010A90ED020AB8EEC00A20EEF0 +:109DE000090A81ED020A90ED030AB8EEC00A20EEDE +:109DF000090A81ED030A02A802F03EFC02AFF968ED +:109E0000786801F08CFC80460299B86801F087FC04 +:109E1000A8EB00001690F968B86801F080FC814654 +:109E20000DF158080299786801F079FC4844C8F8A7 +:109E30000400F868014601F072FC074602990846E2 +:109E400001F06DFCC019A0F18040C8F8080012AB09 +:109E500016AA1CA92046FFF7F5FDB0EE408AF0EEE9 +:109E6000608A9FEDB3AB002723E004EB8700806995 +:109E7000DEF760FF41EC1B0B9FEDAFCB53EC1B2BD0 +:109E800051EC1C0BDEF76EFF02460B4651EC1B0B30 +:109E9000DEF768FF02460B4651EC1C0BDEF762FF53 +:109EA00002460B4651EC1A0BEFF786FF41EC1A0BFA +:109EB0007F1C032FD9DB51EC1A0BDFF74DF800EEB6 +:109EC000100A02F075FD10EE100ADFF71DF896ED8E +:109ED00008AB53EC1A2BEBF79DFF41EC1B0B86ED07 +:109EE0000ABBDFF8FC24DFF8FC34DEF73BFF41EC73 +:109EF0001C0B86ED0CCB51EC1A0B53EC1C2BEFF723 +:109F00005BFFC6E9080151EC1B0B53EC1C2BDEF781 +:109F100029FFD6E90E23EFF74FFFDFF8CC24DFF857 +:109F2000CC34DEF71FFF41EC100B86ED0E0B002743 +:109F3000DFF8BC84DFF8BC24DFF8BC34EBF7B0FEFC +:109F40001FD2D8F80800002806D10120C8F8080060 +:109F5000D4E90E01C8E90001D8F80800012813D19E +:109F6000D4E90E23D8E90001101A63EB0101DFF8F0 +:109F70008C243B46994207DB01DC904204D3012745 +:109F800002E03846C8F808004FF0000802F0A2FDD1 +:109F900038430ED0D5F8580100280AD1D4F8D4009F +:109FA000022806DA2046FEF765FD012801D14FF0B0 +:109FB000010804F1180001F0A5FB81093269DFF8FE +:109FC0001004824200DB0246B0EE480AF0EE680A56 +:109FD0002046FFF7A1FD05F1A80787ED040B53EC20 +:109FE000102BD7E91E01DEF7BDFEC7E9040128A941 +:109FF00002A801F077FD05F59A7906AA02A948465C +:10A0000001F099FB494602A801F00BFC002218E080 +:10A0100002EB420C9C440DF1A00E5EF82CC00DF139 +:10A02000180E0EEB830EDEF804E0CEFB0C015B1C79 +:10A03000032BEDDB19AB800F40EA810043F82200CF +:10A04000521C032A03DA002001460346F0E70DF113 +:10A050006409D5F85801002802D00020C9F808008A +:10A06000D9F808B0CBF1000000EE100AB8EEC00A33 +:10A0700020EE098AB0EE480A02F034FD8DED0E0A9A +:10A080000DF1380A0020CAF80400CAF80800B0EE42 +:10A09000480A02F02AFD8AED030A306941F288314C +:10A0A00090FBF1F000EE100AB8EEC00ADFEDC20A34 +:10A0B00001EE10BAB8EEC11A81EE201A81EE001A34 +:10A0C000F0EE001A81EE211ABDEEC11A11EE100A4F +:10A0D000400001EE100AB8EEC11A61EE200A20EE2F +:10A0E000800ABDEEC00A89ED020AB8EEC00A20EE71 +:10A0F000098AB0EE480A02F0F5FC8DED0A0A0DF16E +:10A1000028090020C9F80400C9F80800B0EE480A80 +:10A1100002F0EBFC89ED030A24AA0EA912A801F0B3 +:10A12000AEFB0EAA0AA924A801F0A9FB002019E0A1 +:10A130000000000000000000000000000000F03EF1 +:10A14000000080305AF8201000EE101A12A901EB1E +:10A15000800181ED000ABEEEC10A05EB800181EDB0 +:10A160002A0A401C0428EDDBD5F85801002803D04A +:10A1700097ED040B86ED060BD6E906234FF033303E +:10A180009F49DEF7EFFDCDE90001D7E904239D48A3 +:10A190009D49DEF7E7FDDDE90023EFF70DFE41EC19 +:10A1A000100B87ED040B86ED060BB8F1000F03D002 +:10A1B000D5F8580100283FD09FED958B53EC102B1C +:10A1C00051EC180BDEF7CEFDDEF7C6FE00EE100AEE +:10A1D00002F088FC8DED0A0A0020C9F80400C9F8D5 +:10A1E0000800D7E9042351EC180BDEF7BBFDDEF7BE +:10A1F000B3FE00EE100A02F078FC89ED030A0EAA05 +:10A200000AA912A801F03BFB0EA801F0C2FB002036 +:10A210000AE00AEB800191ED000ABEEEC10A05EBEF +:10A22000800181ED2A0A401C0428F2DBD4E93623A0 +:10A2300005F1A80002F0BEF9D5F85801002804D0B5 +:10A2400000217160401EC5F8580131B0BDEC0A8B89 +:10A25000BDE8F08FF8B50446584800F5AC75D4F861 +:10A26000501101F41061B1F5106F0BD1102204F5FB +:10A27000A07100F59A70D9F77EFCD4F8500168649B +:10A280000020F2BD04F1C8010A7AD20604D40322E8 +:10A29000C0F8582100226A608A68D2050AD5D4F82D +:10A2A0005021D2050CD4226BD20503D5D4F88020DE +:10A2B000D20505D40321C0F8581100206860F2BD12 +:10A2C0006A69002A0DD0D1E90423D1E90667901B01 +:10A2D00063EB07014FF47A720023DFF793FE2861E6 +:10A2E00015E0D4F8C81044F62062914201DB2961E0 +:10A2F0000DE0EB68C918E960914205DAD0F8580121 +:10A30000002801D10020F2BD29610020E86020462C +:10A31000FFF706FDD4F8500168640020F2BD00008C +:10A3200010B5264C4FF4D47200212046D8F7F0FF28 +:10A330004FF08040C4F83401C4F8A800002213464E +:10A3400004F1A80002F036F94FF47A70C4F8540111 +:10A3500000204FF08041C4E948019FED2F0B84EDB0 +:10A360005C0B04F5B87080ED020B80ED040B80ED02 +:10A37000060B80ED080B0021016310BD0F49C1F8E9 +:10A380006001002070470D49C1F86C010020704742 +:10A3900004224FF416712248FDF721BB80B5FFF768 +:10A3A000BFFF0020FFF7EAFF0020FFF7ECFF1D488A +:10A3B000BDE8024002F088BAE1023747F83C0120CC +:10A3C00000002440000059400000394000C06240B5 +:10A3D00040420F001383C0CAA145B63F0000794038 +:10A3E000989999999999B93FCDCCCCCCCCCCEC3FEC +:10A3F000486501207B14AE47E17A843F012F6859FC +:10A400003333E33F9A9999999999D93F0088B3409A +:10A41000000000000000E03F00000000000000001D +:10A4200055A2020891A302080000004000000000AD +:10A43000000000000000000080B5B8220146DFF8EF +:10A44000F004D9F798FB002002BD80B5B822DFF8F0 +:10A45000E014D9F790FB002002BDF0B585B00446AA +:10A4600000A902A8FDF7C3F901A802F0B7F8022875 +:10A470003FD0D4F808010099461ADFF8B44494F8A4 +:10A48000B000002848D0002E46D0F717029D226861 +:10A49000D317A2FB060102FB071103FB0611000CF8 +:10A4A00040EA01404019029002ADD5F804C062684C +:10A4B000D317A2FB060102FB071103FB0611000CD8 +:10A4C00040EA014060446860D5F808C0A068C11740 +:10A4D000A0FB062300FB073301FB0633120C42EA04 +:10A4E000034202EB0C00A860032102A8FDF741F92A +:10A4F00012E0606B03280FD1FDF76CF900280BD038 +:10A50000DFF82C440C2202A904F10C00D9F733FB2C +:10A510000098A06100F003F8002005B0F0BD2DE91F +:10A52000F04F87B0DFF808048069DFF80864B1688D +:10A53000884200DAB060F168814200DAF060F168C8 +:10A54000B268891A3269914201DA0020BBE14FEA10 +:10A55000204A4FEAEA7B7068401C7060AAFB0A013F +:10A560000AFB0B110BFB0A11CDE90201AAFB002328 +:10A570000AFB01330BFB0033CDE90023D6E90E01C2 +:10A5800010EB0A0041EB0B01C6E90E01D6E90C0104 +:10A59000DDE9022380185941C6E90C01D6E91C0106 +:10A5A000DDE9002380185941C6E91C01DFF880036A +:10A5B000D0E92A23DDE90001AAFB00450AFB015589 +:10A5C0000BFB0055101943EB0501DFF86423C2E9CA +:10A5D0002A01002746E0DFF8580300EB870E00EB66 +:10A5E000C70CDCE90C01DEF80C20D317A2FB0A45EE +:10A5F00002FB0B5513FB0A5500196941CCE90C010C +:10A600000CF1300CDCE90A01DDE90245DEF80C2032 +:10A61000D317A2FB048902FB059903FB049910EBF5 +:10A62000080041EB0901CCE90A01DCE91023DEF85E +:10A630000C00C11710185941CCE91001DCE9188948 +:10A64000DDE90001DEF80C20D317A2FB004502FB78 +:10A65000015503FB005518EB040049EB0501CCE95B +:10A6600018017F1C032FB6DB7068B0F57A7FC0F24B +:10A67000968000EBC00009300A2190FBF1F0706079 +:10A680008A464FF0000B0924D6E90E01A4FB0023F3 +:10A6900004FB013312F1090043F1000152465B460D +:10A6A000DFF7B0FCC6E90E01D6E90C01A4FB0023DC +:10A6B00004FB013312F1090043F1000152465B46ED +:10A6C000DFF7A0FCC6E90C01D6E91C01A4FB0023BE +:10A6D00004FB013312F1090043F1000152465B46CD +:10A6E000DFF790FCC6E91C019148D0E92A23A4FBBE +:10A6F000020104FB0311093041F1000152465B469F +:10A70000DFF780FC8A4AC2E92A015F4645E08848B3 +:10A7100000EBC708D8E90C01A4FB002304FB0133BC +:10A7200012F1090043F1000152465B46DFF76AFC73 +:10A73000C8E90C0108F13008D8E90A01A4FB00239C +:10A7400004FB013312F1090043F1000152465B465C +:10A75000DFF758FCC8E90A01D8E91001A4FB00237F +:10A7600004FB013312F1090043F1000152465B463C +:10A77000DFF748FCC8E91001D8E91801A4FB002361 +:10A7800004FB013312F1090043F1000152465B461C +:10A79000DFF738FCC8E918017F1C032FB7DBD6E9C7 +:10A7A0000C01A0FB002300FB013301FB003303205D +:10A7B000A0FB024500FB0355CDE90245D6E90E0199 +:10A7C000D6E91C23A2FB004502FB015503FB005503 +:10A7D000AD0045EA94757068C117554AD2E92A89D7 +:10A7E000A8FB002308FB013309FB0033CDE9042358 +:10A7F000002761E0DDE90201B0EB8400A941DDE959 +:10A80000042380185941CDE9000101D1002852D01C +:10A81000474800EBC70000F1300CD0E90C23D6E923 +:10A820000C01A0FB02AB00FB03BB01FB02BBD6E9A2 +:10A830000E23DCE90A01A0FB028900FB039901FB5E +:10A840000299BAEB08026BEB09030320A0FB02ABF1 +:10A8500000FB03BBDCE91023D6E91C01A0FB028945 +:10A8600000FB039901FB0299BAEB080A6BEB090B99 +:10A870007268D317DCE91801A0FB028900FB039979 +:10A8800001FB02991AEB08004BEB0901DDE90223F9 +:10A8900080185941B0EB8400A941DDE904238018F8 +:10A8A0005941401E61F10001DDE90023DFF7AAFBF9 +:10A8B0001F4941F827007F1C032F9BDB1C48012107 +:10A8C00080F8B010002007B0BDE8F08F10B5184C2C +:10A8D000B82200212046D8F71BFD174820624FF40C +:10A8E000AA0060624FF4A020A062002010BD0822E0 +:10A8F00096211248FDF773B880B5FFF7E7FF40F2E5 +:10A90000D163B8220E490F4801F08DFF002801D015 +:10A91000012002BD0C4801F0D7FF002801D0012022 +:10A9200002BD0348012180F8B110002002BD0000E3 +:10A93000D04C0120E84C01200000D8FF5BA40208A5 +:10A940004BA4020839A40208EFA8020870470020AF +:10A950000AE0DFF8101C01EB8001DFF80C2C0A6222 +:10A96000DFF8FC2BCA62401C0328F2DB7047002092 +:10A970001BE0DFF8F01B01EB800191ED2D0AD1ED1A +:10A98000080AF4EE400AF1EE10FA01D581ED080A4A +:10A9900001F12002D2ED030AB4EE600AF1EE10FAE2 +:10A9A00002D5D1F8B410D160401C0328E1DB704718 +:10A9B000FEB5B0F9542012040092B0F956201304E9 +:10A9C00000AA5360B0F9584024049460DFF8945B07 +:10A9D000009E6F6EF61B0096AE6E9B1B5360EB6E77 +:10A9E000E31A93600B46416F006D80B201F018F9D5 +:10A9F000F7BDF0B58DB003A90022134614461CC163 +:10AA0000DFF8604BD4F89410012902D11146C4F844 +:10AA1000941006A9FFF7CCFF09A801F005FE0698DF +:10AA20000999A0EBA130069009A806A94A684368D5 +:10AA3000A2EBA3324A608A688068A2EBA0308860EB +:10AA4000602204F5587104F5577002F0B9F80C2231 +:10AA500006A904F55D70D9F78EF800A801F08CFE08 +:10AA6000602204F5737104F5727002F0A9F80C22EB +:10AA700000A904F57870D9F77EF8002200A838E024 +:10AA800004F234439D686D1C9D6002EB420304EBAD +:10AA900083050923039ED5F85C7397FBF3F7BE1972 +:10AAA000039602EB420604EB86064F68D6F860C3B5 +:10AAB0009CFBF3FC67444F6006F558768F68D6F828 +:10AAC00004C09CFBF3FC67448F600099D5F8C85321 +:10AAD00095FBF3F5691800914168F56E95FBF3F568 +:10AAE000691841608168356F95FBF3F359188160EF +:10AAF000521C03A9092AC3DB039A002A00D552423B +:10AB000003924A68002A01D552424A608A68002AA4 +:10AB100001D552428A60009A002A00D55242009222 +:10AB20004268002A01D5524242608268002A01D55B +:10AB3000524282600022039B009DAB4200DA012258 +:10AB40004B684568AB4200DA521C896880688142D4 +:10AB500000DA521C04F234439868092800DB521CC6 +:10AB6000042A0FD194F834040146032808D35A6804 +:10AB700004F16400FCF7D6FD012001F0F5FD01E0D1 +:10AB8000FCF7C9FD0DB0F0BD2DE9F0410446DFF83A +:10AB9000D459002085F8340405F234467060074625 +:10ABA00005F1080825E005EB870090ED330AD8EDA4 +:10ABB0000D0AB4EE600AF1EE10FA19DBD8E912239F +:10ABC0000020DFF8AC19EFF7F7F821F00041DFF8CB +:10ABD000A429DFF8A439EBF763F809D295F8340417 +:10ABE000401C85F8340470680121B9400843706046 +:10ABF0007F1C032FD7DB95F83404002815D00027DD +:10AC000009E004EBC70041680068EAF74FF805EB7C +:10AC1000870148667F1C032FF3DB0020B060A86823 +:10AC2000042802DA95F83404A86095F8340403285F +:10AC30001DD198ED010ADFEDBD0AB4EE600AF1EE18 +:10AC400010FA14D5D8E912230020DFF82419EFF701 +:10AC5000B3F821F00041DFF81C29DFF81C39EBF7CD +:10AC60001FF804D2A868032801D10420A86098ED39 +:10AC7000020ADFEDAF0AB4EE600AF1EE10FA1DD55C +:10AC800098ED010ADFEDAB0AB4EE600AF1EE10FABE +:10AC900014D5D8E912230020DFF8D418EFF78CF888 +:10ACA00021F00041DFF8D428DFF8D438EAF7F8FFC4 +:10ACB00004D2A868042801D10520A860BDE8F0816D +:10ACC0002DE9F0410446DFF89C78D7F8B404012858 +:10ACD00050D107F1E005F7EE000AB7EE000A07F5DC +:10ACE000E471284601F072FF07F1500207F5D471B4 +:10ACF000284602F075F906003DD07868401C78605F +:10AD0000616F0C46D7E91401E9F7D0FF214600F046 +:10AD10000CFD00EE100ABAEEC80A10EE100ADEF7BB +:10AD2000F3F8C7E9140107F5D07407F15008D4E926 +:10AD30000201E9F7BBFFC8F80800D4E90401E9F70C +:10AD4000B5FFC8F80C00D4E90601E9F7AFFFC8F871 +:10AD50001000D7E968010122DFF82838EAF7B8FFC8 +:10AD600009D89FED750AF0EE400A2946284601F001 +:10AD70002DFF00E000263046BDE8F08190ED030A8B +:10AD8000D0ED040AF4EE400AF1EE10FA1BD590ED76 +:10AD9000051AB4EE401AF1EE10FA14D50021016440 +:10ADA00090ED040AD0ED050AB4EE600AF1EE10FA57 +:10ADB00004DB012141640221816470470221416466 +:10ADC000012181647047B4EE600AF1EE10FA1BD5E0 +:10ADD00090ED050AB4EE600AF1EE10FA14D50121E7 +:10ADE000016490ED030AD0ED050AB4EE600AF1EEBD +:10ADF00010FA04DB002141640221816470470221C2 +:10AE000041640021816470470221016490ED030ACE +:10AE1000B4EE600AF1EE10FA04DB00214164012176 +:10AE200081647047012141640021816470470021E1 +:10AE3000C1640B4606E01A4640F8212000EB81026F +:10AE40005362491C0329F6DB0121416719468167DA +:10AE5000704710B5044604F15400142141600A21E2 +:10AE6000C160002101772046FFF7E1FF0020606507 +:10AE700010BD000030B52DED028B87B003A9FFF7A0 +:10AE800097FD9FEDB18B002418E003A850F8240033 +:10AE900000EE100ABAEEC80A00A800EB840080EDAC +:10AEA000000A20EE000A10EE100ADEF72DF853EC2F +:10AEB000182BEEF781FF41EC180B641C032CE4DB2C +:10AEC000B0EE480AF0EE680AEEF7EAFFB0EE408A0C +:10AED000F0EE608A002419E000EB840500A850F829 +:10AEE0002400DEF711F853EC182BEBF753F8DEF7DC +:10AEF00033F800EE100AD5F8400400EE900A30EE68 +:10AF0000200A05F2404080ED000A641CDFF8540678 +:10AF1000032CE1DBD0F89414491CC0F894140121EF +:10AF2000C0F8BC1407B0BDEC028B30BDAF47E13DAB +:10AF300000007A43BD74933CCDCCCC3E38B504467A +:10AF4000002004F13C0507E0B1EE400A81ED030A60 +:10AF5000002144F82010401C032838DA95ED050A3A +:10AF6000B8EEC00A04EB8001D1ED000A80EE800A41 +:10AF7000F0EE400AF5EE400AF1EE10FA02DBB0EE18 +:10AF8000601A01E0B1EE601AD1ED061AF5EE401A32 +:10AF9000F1EE10FA01DAF1EE611A31EE611A81ED8B +:10AFA0000C1AC1ED060AD4ED0F0ABFEE001A30EEFE +:10AFB000811AD1ED091A01EE210A80EE200A81EDF5 +:10AFC000090AB5EE400AF1EE10FABDDBBEE72046F5 +:10AFD000FFF7D4FE2869B0F57A7F01DA401C2861BA +:10AFE000686894F87010052900F28380DFE801F0AA +:10AFF000030E192C6C4004F1700001214160816046 +:10B0000000202861084684F8700031BD04F170000A +:10B01000C16801296DD1022184F87010002181607E +:10B0200031BD04EB800090ED030AD5ED0A0AB4EEC1 +:10B03000600AF1EE10FA12DAD5ED0B0AF4EE400ACE +:10B04000F1EE10FA4BDB2BE004EB800090ED030AED +:10B05000D5ED0A0AB4EE600AF1EE10FA49DB0420DD +:10B0600084F8700004F1700000214160816031BDFE +:10B0700004EB800095ED0B0AD0ED030AB4EE600AF4 +:10B08000F1EE10FA0CDA90ED0C0ADFED330AB4EEB3 +:10B09000600AF1EE10FA0CD52869696A884228DB4B +:10B0A000032084F8700004F1700001214160816088 +:10B0B00031BD042084F870000020286104F1700084 +:10B0C00000214160816031BD95ED0C0A04EB8000E8 +:10B0D000D0ED030AB4EE600AF1EE10FA09DB0520A8 +:10B0E00084F870000020286104F1700001214160A3 +:10B0F000816031BD10B52DED028B08EE100ADFF82E +:10B100006444B8EEC80ADFED120A20EE200ADFED33 +:10B11000110A80EE200A10EE100ADDF7F5FE41EC70 +:10B12000100B02F0EBFA53EC102B0020DFF8581450 +:10B13000DDF718FEE9F7BAFDC4F8840084ED208A33 +:10B14000BDEC028B10BD00000000000000000000FC +:10B15000368D27400024F449CCCC4CBD2DE9F04776 +:10B160002DED028B90B0044602A800210A460B4642 +:10B170000EC004F13006B06CDFF8E85344F62061ED +:10B18000884206DBD5F88010884212D0FFF7B2FF64 +:10B190000FE0D5F858238018C5F858038842C0F24C +:10B1A0006781B16C814201D0FFF7A4FF0020C5F890 +:10B1B0005803206BC5F8C0042046FFF75BFED5F8A6 +:10B1C0009404D5F89014884206DB05F58860FFF7F3 +:10B1D000B5FE0020C5F89404D5F8B804012802D1C2 +:10B1E0002046FFF706FCD5F8B404012840F0408162 +:10B1F00002A801F0EFFA02A8D0ED020A90ED011AC0 +:10B200009DED020ADDED021A20EE210A01EE010A8F +:10B2100000EEA00A01F0CCFB85ED030ABEEE410A68 +:10B2200010EE100AADF8000000A8002141808180D6 +:10B2300005F52C773946FDF78CF808A801F01CFAC3 +:10B24000296F089800F071FA81460DF12008696FA6 +:10B25000D8F8040000F069FA8246A96FD8F808000F +:10B2600000F063FA0AEB090100EB0109E96FD8F875 +:10B270000C0000F05AFA00EB0908102208A905F1A9 +:10B280007000D8F778FC4FF000091CE004EB490A85 +:10B29000716CBAF95400000400F047FA00EE100A8D +:10B2A0000CA800EB890080ED000ABAEEC80A05EB95 +:10B2B000890080ED050A05A8BAF95410090440F880 +:10B2C000291009F10109B9F1030FDFDB05A905F523 +:10B2D000E47001F01AFDD5F8280329688842C0F20D +:10B2E000C78094ED428ABAEEC88A95ED360AB5EE6B +:10B2F000400AF1EE10FA0BD038EE400A10EE100AB8 +:10B30000DDF702FE21F00041DDF726FEC5F8DC0086 +:10B3100085ED368AA868032804D9001F0AD0401E8C +:10B320000FD014E09948A8634FF07E50E863C8201E +:10B3300028640CE09648A8639648E8636420286473 +:10B3400005E09548A8639548E863322028643846AC +:10B35000FCF78DFE01F03AFB00EE100ADFED800AEB +:10B3600080EE200A85ED040AA822002105F52C7044 +:10B37000D7F7CEFFD5F88400404549DA95ED040AA9 +:10B38000B5EE400AF1EE10FA42DDD5ED0E0AB4EE4C +:10B39000600AF1EE10FA3BD56868296C884205DA3C +:10B3A0002046FFF78DFC002810D161E095ED2C0AB6 +:10B3B000DFED6E0AB4EE600AF1EE10FA06DB20460D +:10B3C000FFF77EFC002853D000206860002005E0D5 +:10B3D00005EB80014A69C1F8B420401C0328F7DB63 +:10B3E000FFF7C5FA4FF000090BE005EB890090ED7F +:10B3F000080AD0ED0B0A30EE600A80ED330A09F13D +:10B400000109B9F1030FF0DB05F5D470FFF7BCFBC0 +:10B4100000200CE005EB800191ED260AD1ED050A34 +:10B4200030EE600AB0EEC00A81ED290A401C032804 +:10B43000F0DB95ED290AD5ED2A0A30EE200AD5ED8C +:10B440002B0A30EE200A85ED2C0A4FF0000906E0A9 +:10B4500005EB89004169C0F8981009F10109B9F1BB +:10B46000030FF5DBE822002105F5E470D7F750FF64 +:10B47000002010B0BDEC028BBDE8F08710B5394C50 +:10B480004FF49B6200212046D7F742FF1020206036 +:10B490004FF080402067FFF75AFA04F58860FFF705 +:10B4A000D8FC2068C4F890044FF08440C4F87C04B1 +:10B4B0001E20C4F89C043A48C4F8A8043948C4F8CB +:10B4C000A4043948C4F8AC041920FDF753FA00204D +:10B4D00010BD012240F252313448FCF780BA10B559 +:10B4E000204C4FF49B6201462046D8F744FB0120D4 +:10B4F000C4F89400002010BD80B51A490022C1F89C +:10B5000094204FF49B62D8F736FB002002BD10B5A3 +:10B51000FFF7B4FF040009D04FF437730FF29C0219 +:10B520000FF2BC01FFF712FA204610BD204801F0CF +:10B53000CBF9040009D040F2DF230FF280020FF2B2 +:10B54000A001FFF703FA204610BD42F226034FF494 +:10B550009B6218491848BDE8104001F064B900002A +:10B5600000401C46B004012000401CC6CDCC4C3D20 +:10B570000000F0BF9A9999999999B93F9CC420B05D +:10B580007268913F0070A7400000D0410080BB442A +:10B59000000096439A99993F000070423333B33FBD +:10B5A000CDCCCC3ECDCC4C3F3333333F5DB10208E4 +:10B5B000D3B40208F9B40208DFB40208696E765FFA +:10B5C000656E61626C655F696E5F7573655F6175FD +:10B5D000746F5F63616C6962726174696F6E0000A1 +:10B5E000433A5C50726F6A6563745C4E6F74653386 +:10B5F0005F466972655C4E6F7465335F466972655C +:10B600005C496E76656E53656E73655C6D706C5CDF +:10B61000616363656C5F6175746F5F63616C2E63FA +:10B620000000000010B590B014460022009200AA5D +:10B6300090ED010AB8EEC00AD1ED020AF8EEE00A78 +:10B6400020EE200AD0ED020AF8EEE00A91ED011A90 +:10B65000B8EEC11A00EEC10A82ED010A90ED020AAD +:10B66000B8EEC00AD1ED000AF8EEE00A20EE200A9A +:10B67000D0ED000AF8EEE00A91ED021AB8EEC11A18 +:10B6800000EEC10A82ED020A90ED000AB8EEC00A8F +:10B69000D1ED010AF8EEE00A20EE200AD0ED010A11 +:10B6A000F8EEE00A91ED001AB8EEC11A00EEC10AF8 +:10B6B0008DED030A0CAA00A9204600F0E0F804A9C9 +:10B6C000204600F0FAF908AA04A90CA800F0D7F85F +:10B6D00008A890ED020AB5EE400AF1EE10FA09D181 +:10B6E000D0ED010AF5EE400AF1EE10FA02D19FED1D +:10B6F000530A05E0D0ED010A01F0FAF9B1EE400A73 +:10B7000010B010BD00210A4605E050F822305B134E +:10B7100003FB0311521C032AF7DB0846704781FB29 +:10B720000001400F40EAC100704781FB0001800F1B +:10B7300040EA810070472DE9F04104460D46164667 +:10B7400029682068FFF7F1FF074669686068FFF71E +:10B75000ECFF8046A968A068FFF7E7FFA7EB0801A8 +:10B760000F1AE968E068FFF7E0FF381A306069688F +:10B770002068FFF7DAFF074629686068FFF7D5FF02 +:10B780008046E968A068FFF7D0FF08EB070147187B +:10B79000A968E068FFF7C9FF381A7060A9682068D7 +:10B7A000FFF7C3FF0746E9686068FFF7BEFF804602 +:10B7B0002968A068FFF7B9FFA7EB08014718696877 +:10B7C000E068FFF7B2FFC019B060E9682068FFF7D2 +:10B7D000ACFF0746A9686068FFF7A7FF8046696865 +:10B7E000A068FFF7A2FF08EB07010F1A2968E068BD +:10B7F000FFF79BFFC019F060BDE8F08110B403684B +:10B800000C68E318136043684C68E318536083685E +:10B810008C68E3189360C068C9680818D06010BCD1 +:10B82000704702680A60426852424A608268524227 +:10B830008A60C0684042C860704700000000000095 +:10B8400030B591B004461546002000900C2201A8A6 +:10B85000D8F791F90CAA00A92046FFF76CFF08A9B8 +:10B860002046FFF7DEFF04AA08A90CA8FFF763FF34 +:10B870000C2205A92846D8F77EF911B030BD90ED0D +:10B88000000AD1ED000A20EE200AD0ED010A91ED68 +:10B89000011A00EEC10AD0ED020A91ED021A00EE83 +:10B8A000C10AD0ED030A91ED031A00EEC10A82ED40 +:10B8B000000A90ED000AD1ED010A20EE200AD0ED39 +:10B8C000010A91ED001A00EE810AD0ED020A91ED15 +:10B8D000031A00EE810AD0ED030A91ED021A00EE80 +:10B8E000C10A82ED010A90ED000AD1ED020A20EEB4 +:10B8F000200AD0ED010A91ED031A00EEC10AD0ED45 +:10B90000020A91ED001A00EE810AD0ED030A91EDD2 +:10B91000011A00EE810A82ED020A90ED000AD1EDD3 +:10B92000030A20EE200AD0ED010A91ED021A00EE82 +:10B93000810AD0ED020A91ED011A00EEC10AD0EDA4 +:10B94000030A91ED001A00EE810A82ED030A7047A6 +:10B9500090ED000AD1ED000A30EE200A82ED000AD7 +:10B9600090ED010AD1ED010A30EE200A82ED010AC4 +:10B9700090ED020AD1ED020A30EE200A82ED020AB1 +:10B9800090ED030AD1ED030A30EE200A82ED030A9E +:10B99000704790ED030AD0ED020A90ED011AD0ED48 +:10B9A000001A21EEA12A01EE012A00EEA02A00EEE3 +:10B9B000002AB0EE000AB4EE402AF1EE10FA3AD5B1 +:10B9C000B6EE000A22EE000A60EE020AB7EE081A8E +:10B9D00000EEC21A61EE020A20EE201AB7EE082A23 +:10B9E00001EE602A62EE200A20EE201AB7EE082A45 +:10B9F00001EE602A62EE200A20EE200AB7EE081A55 +:10BA000000EE601A21EE202A21EE820A80ED000A63 +:10BA100090ED010A20EE020A80ED010A90ED020A83 +:10BA200020EE020A80ED020A90ED030A20EE020ADF +:10BA300080ED030A70474FF07E51016000214160A4 +:10BA40008160C160704710B50446D4ED030A94EDDF +:10BA5000021AD4ED011A94ED000A20EE000A01EE5C +:10BA6000A10A01EE010A00EEA00A00F0A1FFB5EE66 +:10BA7000400AF1EE10FA18D0D4ED000AC0EE800AA8 +:10BA8000C4ED000AD4ED010AC0EE800AC4ED010A3B +:10BA9000D4ED020AC0EE800AC4ED020AD4ED030A16 +:10BAA00080EE800A84ED030A10BD4FF07E502060C6 +:10BAB00000206060A060E06010BD02680A6090ED48 +:10BAC000010AB1EE400A81ED010A90ED020AB1EEE1 +:10BAD000400A81ED020A90ED030AB1EE400A81EDC1 +:10BAE000030A704770B505460C4668680146FFF7C3 +:10BAF00016FE064629680846FFF711FE8019A0F1D8 +:10BB000080402060A9686868FFF709FE064629683A +:10BB1000E868FFF704FE301A6060E9686868FFF7BC +:10BB2000FEFD06462968A868FFF7F9FD8019A060A8 +:10BB3000A9686868FFF7F3FD06462968E868FFF71B +:10BB4000EEFD8019E060A8680146FFF7E8FD0646B3 +:10BB500028680146FFF7E3FD8019A0F180402061CD +:10BB6000E968A868FFF7DBFD064629686868FFF703 +:10BB7000D6FD301A6061E9686868FFF7D0FD0646B7 +:10BB80002968A868FFF7CBFD301AA061E968A868AA +:10BB9000FFF7C5FD064629686868FFF7C0FD8019F4 +:10BBA000E061E8680146FFF7BAFD064628680146ED +:10BBB000FFF7B5FD8019A0F18040206270BD90F9BB +:10BBC0000010012901DB00207047002901D5042065 +:10BBD000704790F90110012901DB0120704700290D +:10BBE00001D50520704790F90200012801DB0220F1 +:10BBF0007047002801D5062070470720704738B5E8 +:10BC00000446FFF7DCFF0546E01CFFF7D8FF45EAD6 +:10BC1000C005A01DFFF7D3FF45EA801080B232BDFA +:10BC20002DE9F04107460C4615461E46780702D519 +:10BC30004FF0FF3000E00120B84608F0030255F84D +:10BC400022205043FFF771FD3060B80602D54FF057 +:10BC5000FF3000E0012021464FEA680202F00C02AA +:10BC600052595043FFF761FD7060F80502D54FF05F +:10BC7000FF3000E0012021464FEA281202F00C02BA +:10BC800052595043FFF751FDB060BDE8F08110B448 +:10BC900000220260426005E000EB820351F822407E +:10BCA0001C61521C052AF7DB10BC704780ED090AA5 +:10BCB00080ED0A0AD0ED060AB7EE001A70EE810A8E +:10BCC00090ED071A70EE810A80EE200A80ED000ADE +:10BCD00080ED010A704780ED090A90ED010AD0ED70 +:10BCE000000AD0ED061A90ED091A01EEE01AD0ED27 +:10BCF000071A01EEC01A90ED042AF0EE411A42EE46 +:10BD0000201AD0ED050A40EE801AC0ED0A1A90ED17 +:10BD1000080A21EE800A80ED0A0A0168416080ED80 +:10BD2000001A70472DE9F84304460D4616460027D1 +:10BD300011E055F8291009EB4900C01954F820000A +:10BD4000FFF7F3FC804409F10109B9F1030FF0DBBF +:10BD500046F827807F1C032F03DA4FF00008C14606 +:10BD6000F3E7BDE8F183F1B582B0012801DA0020E4 +:10BD7000FEBD00A902A800F055F804460025009871 +:10BD8000012806DB0146024602EBD1714910A0EB07 +:10BD90004105401B00900298A0F1804706463946B5 +:10BDA000FFF7C3FCA6EB6006022C23DB7810A0F1A2 +:10BDB000C0413846FFF7B9FC01463846FFF7B5FCED +:10BDC000471039463046FFF7B0FCA6EB6006032C5F +:10BDD00010D17810A0F1C0413846FFF7A6FC01460B +:10BDE0003846FFF7A2FC471039463046FFF79DFC66 +:10BDF000A6EB6006002D04D027493046FFF795FCDE +:10BE000006460098012802DB4010064107E010F1C9 +:10BE1000010F04D121493046FFF787FC0646304622 +:10BE2000FEBD000070B504460D4620681C498842DE +:10BE300005DB401020604FF0FF3028601AE0194EFB +:10BE4000B04215DA204600F039F82860206816491B +:10BE5000884205DB401020602868401E286009E009 +:10BE6000B04207DA400020602868401C286001E0EA +:10BE70000020286020680D4909180D4A914201D31D +:10BE8000032070BD0B4908180B49884201D30220DA +:10BE900070BD012070BD0000CD3C412D9A79825AC1 +:10BEA000FD0BB958FE855C2CFC0BB958666666C65E +:10BEB000CDCCCC0C0AD7A3C015AE47010021026837 +:10BEC000002A01D108467047130C1B0402D110212F +:10BED00012040260026812F07F4F02D10831120290 +:10BEE0000260026812F0704F02D1091D1201026057 +:10BEF000026812F0404F02D1891C92000260026871 +:10BF0000002A02D5491E5208026008467047F8B55B +:10BF100004460D4620680146FFF707FC06466168A7 +:10BF20000846FFF702FC0746A0680146FFF7FDFB45 +:10BF3000C6F18041C91B081AFFF715FF2860206869 +:10BF400068606068A860A068E8600020F2BD00003A +:10BF500080B58DF800108DF80120022300AAD021B1 +:10BF60000020D6F7A4F9012801D1002002BD4FF02E +:10BF7000FF3002BD38B51446094D29701946681CBA +:10BF8000D7F7F9FD631CDBB22A46D0210020D6F793 +:10BF90008EF9012801D1002032BD4FF0FF3032BDB3 +:10BFA000C45C012080B5D2B200920A46D0210020A4 +:10BFB000D6F7D7F9012801D1002002BD4FF0FF309C +:10BFC00002BD0EB4002003B0704780B5D6F777F8F5 +:10BFD0006421D6F761FA002002BD000003000020B2 +:10BFE00013F0030F09D0521E22BF13F8010B11F8F2 +:10BFF00001CBB0EB0C00F3D07047121F22BF53F8F7 +:10C00000040B51F804CB6045F7D0121D0AD200BAD8 +:10C010009CFA8CFCB0EB0C0038BF6FF0000088BFBE +:10C0200001207047521E22BF13F8010B11F801CBFB +:10C03000B0EB0C00F6D0521C08BF10467047000051 +:10C04000014801F065BB0000BC66012010B5DFF8B7 +:10C050002C45FAF784FD60660020024603E004EBFD +:10C060008001CA62401C0928F9DB10462066E065A1 +:10C07000FAF769FDA0664FF4FA7020606060DFF89F +:10C080000005A0609FED0A0A84ED030A84ED040A0E +:10C0900084ED050AB5EE000A84ED060A84ED070A70 +:10C0A000DFF8E004206207206062A06210BD00009B +:10C0B0009A99193F70470000F0B52DED048B87B0B9 +:10C0C0000C469FED438ADFF8B46400207065B065CC +:10C0D000306E401C3066DFF8B054012C02D10020D5 +:10C0E00068672867F06D0A2844DA1E220021706E06 +:10C0F000F9F746FFC5F88C001E220121706EF9F792 +:10C100003FFFF16D06EB8102336E03EB8307BB004B +:10C11000D36201292CDBD5F88C3093ED000AD0EDE9 +:10C12000000A30EE600A8DED030A93ED010AD0EDAE +:10C13000010A30EE600A03AF87ED010AD3ED020A6F +:10C1400090ED021A70EEC10AC7ED020A05EB8100FC +:10C150009DED031ADDED031A21EE211A00EE001AFF +:10C1600000EEA01A80ED051AD36A926A9A1A8263C9 +:10C17000481CF065316E0A2902DA0320C5F88800F0 +:10C18000F06D0A28C0F23E81401EF065706E0A29EB +:10C1900020D11E220A21F9F703FF85ED030A1E2292 +:10C1A0000A21706EF9F71AFF85ED040A1E220A2192 +:10C1B000706EF9F731FF85ED050A0020092844DA91 +:10C1C00005EB800191ED060A38EE008A401CF5E788 +:10C1D000000000001E220A21F9F7D2FED5F88C10CB +:10C1E00095ED030AD0ED000A30EE600AD1ED000AA9 +:10C1F00030EE200A85ED030A95ED040AD0ED010A20 +:10C2000030EE600AD1ED010A30EE200A85ED040A15 +:10C2100095ED050AD0ED020A30EE600AD1ED020A72 +:10C2200030EE200A85ED050AF06D05EB800090EDFB +:10C23000050AD0ED040A30EE200AD0ED030A30EEF4 +:10C24000200AF0EE080A20EE208AB2EE040AD5EDAC +:10C25000030AC0EE800ACDED000AD5ED040AC0EE57 +:10C26000808A00A8C0ED018AD5ED050A80EE809A8B +:10C2700080ED029A306E0A2805D100982860C5ED3D +:10C28000018A85ED029A00270FE01E22C7F10901FD +:10C2900009B2706EF9F774FE95ED021AD5ED010A38 +:10C2A00095ED000A00F0EFF87F1C0A2FEDDBF06A35 +:10C2B000716A726D914249DAA96F002908D1286626 +:10C2C0000121A96700992960C5ED018A85ED029ACF +:10C2D000B16AB26D91420CDAE96F00290BD1686640 +:10C2E0000121E96700992960C5ED018A85ED029A6F +:10C2F00001E00021E967296E411A296732686B6EF7 +:10C30000C31A9A420CD2EB6F012B09D10020C5F859 +:10C310008000C5F8840068670120C5F8880060E0E7 +:10C320008A420CD2A96F012909D10020C5F88000EA +:10C33000C5F8840068670220C5F8880051E0A96E3E +:10C34000401A68670320C5F888004AE00099296010 +:10C35000C5ED018A85ED029A0021A967E967296781 +:10C36000D5F88010002903D1A8660121C5F88010F6 +:10C37000A96E411A69679FED7F0A28EE000AB5EEA3 +:10C38000400AF1EE10FA03DC9FED7B0A28EE000A6A +:10C39000D6ED020AB3EE041A60EE810AF4EE400A0A +:10C3A000F1EE10FA08D5D5F88410002907D1E86617 +:10C3B0000121C5F8841002E00021C5F884107168DD +:10C3C000A1F5FA71EA6E801A814207D2D5F884008D +:10C3D000012803D10420C5F8880002E00320C5F835 +:10C3E000880000200CE006EB80010A6BCA62082876 +:10C3F00005DA05EB8001CA698A610A6CCA63401CD0 +:10C400000928F0DBD5F88800012806D037D30328A7 +:10C410001CD00ED3042826D031E0B06E0121C162B9 +:10C42000296F016302214163002C28D1FAF793FBA5 +:10C4300025E0B06E0121C162296F016304214163CF +:10C44000002C1CD10221FAF786FB18E0B06E012106 +:10C45000C162696F016308214163002C0FD1022181 +:10C46000FAF779FB0BE0B06E0121C162696F0163DD +:10C4700010214163002C02D10221FAF76CFB07B0B6 +:10C48000BDEC048BF0BD83B0D0ED001A31EEC00AD4 +:10C490008DED000A90ED010A30EE600A00A981EDF1 +:10C4A000010AD0ED020A70EEC10AC1ED020A9DED4B +:10C4B000001AB5EE401AF1EE10FA03D5B1EE411AAA +:10C4C0008DED001AB5EE400AF1EE10FA03D5B1EE8B +:10C4D000400A81ED010AF5EE400AF1EE10FA03D5AB +:10C4E000B1EE600A81ED020A24489DED000AD0ED0C +:10C4F000030AB4EE600AF1EE10FA13D591ED010AC9 +:10C50000D0ED040AB4EE600AF1EE10FA0AD591ED0E +:10C51000020AD0ED050AB4EE600AF1EE10FA01D578 +:10C52000012200E000229DED000AD0ED060AB4EEE3 +:10C53000600AF1EE10FA13D591ED010AD0ED070A69 +:10C54000B4EE600AF1EE10FA0AD591ED020AD0EDD0 +:10C55000080AB4EE600AF1EE10FA01D5012100E0FC +:10C560000021436DD2184265826D8918816503B040 +:10C570007047000000007A4400007AC4745401201F +:10C58000000040413333B33E284E012070B51446BD +:10C590001D46DFF82C6206F148014A6F42F00202A4 +:10C5A0004A671022014606F11000D7F7E4FAC6E9FF +:10C5B000124570BD70B514461D46DFF8046206F1E1 +:10C5C0004001CA6F42F00102CA671022014606F11B +:10C5D0007000D7F7D0FAC6E9104570BDDFF8E0115A +:10C5E000D1F8A820026091F8A4007047DFF8D011BC +:10C5F00001F1A40291F8A430984208D1022803D195 +:10C600005068401C50607047002050607047002305 +:10C61000536081F8A400012801D1012000E002202C +:10C620001A46032100F034B970B50446644DE96838 +:10C630006868FFF774F806462968A868FFF76FF87E +:10C64000301A2060E968A868FFF769F8064629688B +:10C650006868FFF764F880196060E8680146FFF7D2 +:10C660005EF8064629680846FFF759F88019A0F1D8 +:10C670008040A060002070BD80B510225149D7F7DE +:10C680007AFA002002BD38B504464D4D95F8BC003D +:10C6900010F0030F0CD02A4605F1100105F17000CF +:10C6A000FFF749F8D5F8BC0020F00300C5F8BC003E +:10C6B000102229462046D7F75EFA002032BD38B551 +:10C6C0000C461546FFF7DFFFFAF7A0FFC5E90001AA +:10C6D000FAF785FF002803D0FBF792FA206031BDFE +:10C6E000FAF785FF002803D0FBF787FA206031BDF9 +:10C6F000FAF784FF002803D0FBF78CFA206031BDE5 +:10C700000020206031BD2E49C1F8C00000207047D4 +:10C7100080B507224FF448712B48FBF760F90020E1 +:10C7200002BD10B5264CD02200212046D6F7F0FDE0 +:10C730004FF080406066A066E06620672061206060 +:10C7400020622063C4F880002048C4F8C4000020A0 +:10C7500010BD80B5FFF7E5FF002804D11C48BDE8F7 +:10C76000024000F0B1B802BD1549C1F8940070470D +:10C770001349C1F8B000704710B584B0040018D058 +:10C7800000221146FBF706FA00A8FFF74DFF2068CC +:10C790000099A0EBA130206000A861684268A1EB7D +:10C7A000A2316160A1688068A1EBA030A060002088 +:10C7B00000E0162004B010BD014890ED310A70472A +:10C7C000104601202046012007C70208DB0F494020 +:10C7D00011C7020810B584B0040016D000A8FFF7F6 +:10C7E000CBFF002811D100200BE000A951F8201048 +:10C7F00000EE101ABAEEC80A04EB800181ED000ABF +:10C80000401C0328F1DB002000E0162004B010BD1E +:10C8100010B51E4C4FF4CC7200212046D6F778FD9F +:10C820000C20606010BD70B4002500E06D1C174C3A +:10C830002668B54209DA05EB450604EB8604D4F810 +:10C84000B040A342F2D116201EE0142E01DB1620C8 +:10C850001AE00C2505FB0646C6F8B030236805FB38 +:10C860000343C3F8A820236804EB8303986020687F +:10C8700004EB80008165606802F10C0108186060BB +:10C880002068401C2060002070BC7047A03E012042 +:10C89000002A05D1074A136823EA01010843106002 +:10C8A0007047044A1168002801D000201060084633 +:10C8B000704700007C66012080B554220021134897 +:10C8C000D6F726FD002002BD10490A68142A01DBB4 +:10C8D0001620704701EB820250600868401C086017 +:10C8E0000020704738B50024254609E000EB85009C +:10C8F00040688047002802D0002C00D104466D1CFF +:10C90000024801688D42F1DB204632BDD05B012038 +:10C91000F446490006D200F011F809420DD5C817B7 +:10C920004108604700F00AF807D04942404271F1DF +:10C93000000102D400205FF0004160474A0DA2F5DB +:10C9400080621E3A0ADC5242202A18DA890241F03B +:10C95000004141EA50500021D0407047D2F12002FE +:10C9600010D4890241F0004141EA5051C002D04048 +:10C9700061FA02F35840D14080EA0100704700207C +:10C9800000217047D017010070470000D2B2203A52 +:10C9900022BF41FA02F0C91770472032D141D0407E +:10C9A00048409140D14048409140114170470000BB +:10C9B000B5EEC00AF1EE10FA02D4B1EEC00A70472B +:10C9C0006FF0004C00EE10CAF8F7D2BF002940F11A +:10C9D0000B80F4464942404271F1000100F00AF830 +:10C9E00050F000406047000050EA010200F00E8065 +:10C9F000094200BF0BD1B0FA80F18840C1F19D011E +:10CA0000C905020672F1004241EB10207047B1FAED +:10CA100081F241409040C2F1200261FA02F181EAC4 +:10CA2000000018BF40F0010002F19D01E8E700009E +:10CA3000C0F3C7517F392CD420290DDAC1F11F0C66 +:10CA400041004FEAC11141F0004121FA0CF0894147 +:10CA500028BF4042C9437047D1F13F0C1CD441006C +:10CA60004FEAC11141F0004161FA0CF021FA0CF1DA +:10CA700080EA0100094244BF4FF00041002004D386 +:10CA80004942404271F10001704701D5401E491EE4 +:10CA9000704700200021704709424FF0004158BF05 +:10CAA000C94300207047000080B500F00DF8B5EED6 +:10CAB000400AF1EE10FA02D00548406C02BD012098 +:10CAC00002BD0348C06C7047014890ED160A7047DC +:10CAD0005058012010B5FFF7E7FF0446FFF7F1FFBC +:10CAE000204310BD012000F021BE002000F01EBE3A +:10CAF00010EE101A10EE902AB0EEC00AC80F4900CE +:10CB00005200F0EEE00A28BF0C3011F1807F38BFF0 +:10CB100012F1807F0CD28A4238BF80F004001242AA +:10CB200014D034BF80EE800A80EE200A00F0B4BE3C +:10CB300011F1807F08BF80F0040098BF12F1807F60 +:10CB400008D88A4214BF00224FF07E5200EE102A0D +:10CB500000F0A2BE6FF0004100EE101A7047000016 +:10CB600010EE101A4FF07E5C01EE90CAC80F31F043 +:10CB7000004122D000EE101AB1F17E5F13D871EEA1 +:10CB8000C00ADFF838C031EE801A61EE200AF1EEFB +:10CB9000E00A614586BF80F0040080EE800A80EEE6 +:10CBA000200A00F079BE490011F1807F9CBF6FF030 +:10CBB000004100EE101A78F6DBAE7047F404353F02 +:10CBC00010B5044600F0BAFE204610BD2DE9F04332 +:10CBD0002DED048B06468946B0EE408A10EE900A91 +:10CBE000DCF792F941EC190B18EE100ADCF78CF91E +:10CBF00041EC180B53EC182BD6E93001DCF7B2F8F6 +:10CC000004460D4653EC192BD9E93001DCF7AAF89C +:10CC100022462B46EDF7D0F8C6E93001002734E074 +:10CC200051EC180B06EBC70253681268DCF79AF850 +:10CC300004460D4651EC190B09EBC7025368126804 +:10CC4000DCF790F822462B46EDF7B6F806EBC70264 +:10CC5000C2E9000106EBC70851EC180BD8E9242300 +:10CC6000DCF780F804460D4653EC192B09EBC7009E +:10CC7000D0F89410D0F89000DCF774F822462B46D8 +:10CC8000EDF79AF8C8E924017F1C062FC8DB0027BE +:10CC900018E006EBC70851EC180BD8E91223DCF7B3 +:10CCA00061F804460D4653EC192B09EBC700C16C23 +:10CCB000806CDCF757F822462B46EDF77DF8C8E983 +:10CCC00012017F1C092FE4DB002718E006EBC708E0 +:10CCD00051EC180BD8E90C23DCF744F804460D4658 +:10CCE00053EC192B09EBC700416B006BDCF73AF8EA +:10CCF00022462B46EDF760F8C8E90C017F1C032F94 +:10CD0000E4DBBDEC048BBDE8F08370B52DED108B3A +:10CD100088B005460C462068DCF70CF8CDE9000128 +:10CD20006068DCF707F841EC180B00AE86ED028B6B +:10CD3000A068DBF7FFFF41EC190B86ED049BD5E9FA +:10CD400030230020DFF8AC19EDF736F8C5E93001E3 +:10CD5000D5E90C23DDE90001EDF72EF8C5E90C015A +:10CD6000D5E90E2351EC180BEDF726F8C5E90E01B5 +:10CD7000D5E9102351EC190BEDF71EF8C5E91001A8 +:10CD8000DDE90023DDE90001DBF7ECFF41EC1A0BE4 +:10CD900053EC1A2BD5E90001EDF70EF8C5E90001B7 +:10CDA000DDE9002351EC180BDBF7DCFF41EC1F0B36 +:10CDB00053EC1F2BD5E90201ECF7FEFFC5E9020198 +:10CDC000DDE9002351EC190BDBF7CCFF41EC1B0B29 +:10CDD00053EC1B2BD5E90401ECF7EEFFC5E9040188 +:10CDE00053EC182B51EC180BDBF7BCFF41EC1C0B80 +:10CDF00053EC1C2BD5E90601ECF7DEFFC5E9060173 +:10CE000053EC182B51EC190BDBF7ACFF41EC1D0B6D +:10CE100053EC1D2BD5E90801ECF7CEFFC5E908015D +:10CE200053EC192B51EC190BDBF79CFFCDE90601F4 +:10CE3000DDE90623D5E90A01ECF7BEFFC5E90A01E1 +:10CE400053EC1A2BDDE90001DBF78CFF41EC1E0BE4 +:10CE500053EC1E2BD5E91201ECF7AEFFC5E9120128 +:10CE600053EC1F2B51EC180BDBF77CFFD5E9142397 +:10CE7000ECF7A2FFC5E9140153EC1B2B51EC190B85 +:10CE8000DBF770FFD5E91623ECF796FFC5E916012D +:10CE900053EC1F2BDDE90001DBF764FFD5E9182314 +:10CEA000ECF78AFFC5E9180153EC1C2B51EC180B69 +:10CEB000DBF758FF41EC1F0B53EC1F2BD5E91A0190 +:10CEC000ECF77AFFC5E91A0153EC1D2B51EC190B55 +:10CED000DBF748FFD5E91C23ECF76EFFC5E91C0121 +:10CEE00053EC1B2BDDE90001DBF73CFFD5E91E23EA +:10CEF000ECF762FFC5E91E0153EC1D2B51EC180B3A +:10CF0000DBF730FFD5E92023ECF756FFC5E9200118 +:10CF1000DDE9062351EC190BDBF724FF41EC1B0B79 +:10CF200053EC1B2BD5E92201ECF746FFC5E92201A2 +:10CF300053EC1E2BDDE90001DBF714FFD5E92423B8 +:10CF4000ECF73AFFC5E9240153EC1F2B51EC180B09 +:10CF5000DBF708FFD5E92623ECF72EFFC5E926010C +:10CF600053EC1B2B51EC190BDBF7FCFED5E9282306 +:10CF7000ECF722FFC5E9280153EC1A2B51EC180BF2 +:10CF8000DBF7F0FE53EC182BDBF7ECFED5E92A2398 +:10CF9000ECF712FFC5E92A0153EC1A2B51EC190BDF +:10CFA000DBF7E0FE53EC192BDBF7DCFED5E92C2395 +:10CFB000ECF702FFC5E92C0153EC1C2B51EC190BCB +:10CFC000DBF7D0FE53EC192BDBF7CCFED5E92E2393 +:10CFD000ECF7F2FEC5E92E0108B0BDEC108B70BD78 +:10CFE0002DE9F04F2DED108B8DB080460C4691460B +:10CFF00098ED0CEB98ED308B98ED000B8DED000B60 +:10D0000053EC182BDDE90001DBF7ACFE06460F46BA +:10D0100053EC1E2B51EC1E0BDBF7A4FE02460B4615 +:10D0200030463946E8F7F6FECDE9040198ED0EFBEF +:10D0300098ED060B8DED020B53EC182BDDE9020188 +:10D04000DBF790FE06460F4653EC1F2B51EC1F0BEF +:10D05000DBF788FE02460B4630463946E8F7DAFE33 +:10D06000CDE9080198ED109B98ED0AAB53EC182B15 +:10D0700051EC1A0BDBF776FE06460F4653EC192BE4 +:10D0800051EC190BDBF76EFE02460B463046394673 +:10D09000E8F7C0FECDE9060153EC182BD8E90201F0 +:10D0A000DBF760FE06460F4653EC1E2B51EC1F0BC0 +:10D0B000DBF758FE02460B4630463946E8F7AAFE33 +:10D0C00041EC1B0B53EC182BD8E90401DBF74AFEAB +:10D0D00006460F4653EC1E2B51EC190BDBF742FEB4 +:10D0E00002460B4630463946E8F794FE41EC1C0BED +:10D0F00053EC182BD8E90801DBF734FE06460F463F +:10D1000053EC1F2B51EC190BDBF72CFE02460B46A0 +:10D1100030463946E8F77EFE41EC1D0B53EC182BE8 +:10D12000D8E91201DBF71EFE06460F4653EC1E2B14 +:10D13000DDE90001DBF716FE02460B4630463946B4 +:10D14000E8F768FE06460F4653EC182BD8E91401A1 +:10D15000DBF708FE32463B46ECF72EFE06460F464E +:10D1600053EC1E2BDDE90201DBF7FCFD02460B460A +:10D1700030463946E8F74EFE06460F4653EC182B6C +:10D18000D8E91601DBF7EEFD32463B46ECF714FE1C +:10D1900006460F4653EC1E2B51EC1A0BDBF7E2FD53 +:10D1A00002460B4630463946E8F734FE0022DFF8E7 +:10D1B0004835DBF7D7FD41EC1E0B53EC182BD8E9B3 +:10D1C0001801DBF7CFFD06460F4653EC1F2BDDE9B8 +:10D1D0000001DBF7C7FD02460B4630463946E8F74B +:10D1E00019FE06460F4653EC182BD8E91A01DBF757 +:10D1F000B9FD32463B46ECF7DFFD06460F4653ECE1 +:10D200001F2BDDE90201DBF7ADFD02460B46304680 +:10D210003946E8F7FFFD06460F4653EC182BD8E9D0 +:10D220001C01DBF79FFD32463B46ECF7C5FD064689 +:10D230000F4653EC1F2B51EC1A0BDBF793FD024604 +:10D240000B4630463946E8F7E5FD0022DFF8A83402 +:10D25000DBF788FD41EC1F0B53EC182BD8E91E01BE +:10D26000DBF780FD06460F4653EC192BDDE9000184 +:10D27000DBF778FD02460B4630463946E8F7CAFD33 +:10D2800006460F4653EC182BD8E92001DBF76AFD60 +:10D2900032463B46ECF790FD06460F4653EC192B01 +:10D2A000DDE90201DBF75EFD02460B4630463946FA +:10D2B000E8F7B0FD06460F4653EC182BD8E92201DB +:10D2C000DBF750FD32463B46ECF776FD06460F464F +:10D2D00053EC192B51EC1A0BDBF744FD02460B46BD +:10D2E00030463946E8F796FD0022DFF80C34DBF7CC +:10D2F00039FD41EC190BDDE90423DDE90801DBF719 +:10D3000031FDCDE90201DDE9082351EC1C0BDBF70F +:10D3100029FDCDE90001DDE9062351EC1B0BDBF70C +:10D3200021FDCDE90A019FEDF18BDDE90A2351ECE6 +:10D330001B0BDBF717FD06460F4653EC1B2B51EC7E +:10D34000180BDBF70FFD53EC1C2BDBF70BFD53EC3D +:10D350001D2BDBF707FD02460B4630463946E8F742 +:10D3600059FD06460F46DDE9002351EC1C0BDBF7A7 +:10D37000F9FC32463B46ECF71FFD06460F46DDE959 +:10D38000042351EC1D0BDBF7EDFC53EC1D2BDBF7FD +:10D39000E9FC32463B46ECF70FFD06460F46DDE959 +:10D3A0000223DDE90601DBF7DDFC02460B463046D1 +:10D3B0003946E8F72FFD41EC1A0B53EC1A2B0020ED +:10D3C0000146F8F7DBFA00F08B81DDE9082351EC28 +:10D3D000190BDBF7C7FC06460F4653EC1D2B51EC2F +:10D3E0001F0BDBF7BFFC02460B4630463946E8F719 +:10D3F00011FD53EC1C2BDBF7B5FC06460F4653EC36 +:10D400001D2B51EC1D0BDBF7ADFC53EC1E2BDBF79A +:10D41000A9FC32463B46ECF7CFFC06460F46DDE959 +:10D420000823DDE90601DBF79DFC53EC1E2BDBF73F +:10D4300099FC02460B4630463946E8F7EBFC0646B7 +:10D440000F46DDE90A2351EC1F0BDBF78BFC32465C +:10D450003B46ECF7B1FC06460F4653EC1B2B51EC58 +:10D460001D0BDBF77FFC53EC192BDBF77BFC024633 +:10D470000B4630463946E8F7CDFCC4E90001DDE94A +:10D48000042351EC190BDBF76DFC06460F4653ECF9 +:10D490001C2B51EC1E0BDBF765FC02460B4630469D +:10D4A0003946E8F7B7FC53EC1D2BDBF75BFC06466F +:10D4B0000F4653EC1C2B51EC1C0BDBF753FC53ECCD +:10D4C0001F2BDBF74FFC32463B46ECF775FC06465C +:10D4D0000F46DDE90423DDE90601DBF743FC53ECED +:10D4E0001F2BDBF73FFC02460B4630463946E8F778 +:10D4F00091FC06460F46DDE90A2351EC1E0BDBF7D3 +:10D5000031FC32463B46ECF757FC06460F4653ECDF +:10D510001B2B51EC1C0BDBF725FC53EC192BDBF719 +:10D5200021FC02460B4630463946E8F773FCC4E955 +:10D530000201DDE9042351EC1F0BDBF713FC064667 +:10D540000F4653EC1B2B51EC1E0BDBF70BFC02467A +:10D550000B4630463946E8F75DFC53EC1D2BDBF7F4 +:10D5600001FC06460F4653EC1B2B51EC1B0BDBF763 +:10D57000F9FB53EC192BDBF7F5FB32463B46ECF796 +:10D580001BFC06460F46DDE9022351EC190BDBF7C5 +:10D59000E9FB02460B4630463946E8F73BFC0646B7 +:10D5A0000F46DDE9002351EC1E0BDBF7DBFB3246B7 +:10D5B0003B46ECF701FC06460F4653EC1B2B51ECA7 +:10D5C0001C0BDBF7CFFB53EC1F2BDBF7CBFB02462F +:10D5D0000B4630463946E8F71DFCC4E90401D4E99E +:10D5E000000153EC1A2BE8F7D5FCC4E90001D4E99B +:10D5F000020153EC1A2BE8F7CDFCC4E90201D4E98F +:10D60000040153EC1A2BE8F7C5FC41EC190B84ED2F +:10D61000049B94ED02AB94ED00BB53EC1B2B51EC3F +:10D620001B0BDBF79FFB04460D4653EC1A2B51EC0A +:10D630001A0BDBF797FB22462B46ECF7BDFB0446A3 +:10D640000D4653EC192B51EC190BDBF78BFB2246E3 +:10D650002B46ECF7B1FB04460D46D8E90023D8E988 +:10D660000601ECF7A9FBD8E90A23ECF7A5FB8246F3 +:10D670008B4653EC1B2BD8E90C01DBF773FB0646FA +:10D680000F4653EC1A2BD8E90E01DBF76BFB324641 +:10D690003B46ECF791FB06460F4653EC192BD8E9B5 +:10D6A0001001DBF75FFB32463B46ECF785FB53ECA2 +:10D6B000182BDBF757FB02460B4650465946E8F756 +:10D6C000A9FBD8E93023E8F765FC22462B46ECF7A6 +:10D6D00073FB41EC100BECF7E3FB89ED000B012031 +:10D6E0000DB0BDEC108BBDE8F08F00BF0000000056 +:10D6F000000000400000F03F0000E03F80B5012244 +:10D7000051EC100B00F056F941EC100B01BD00007C +:10D7100004490968002900D10349034A801A4118C5 +:10D720000800704774660120BC660120DFED4A0ADC +:10D7300010B560EE200AB0EEE01ADFED481AB4EE44 +:10D74000611A82B00446F1EE10FA29D5F5EE400ACE +:10D75000F1EE10FAACBFB6EE001ABEEE001A70EE93 +:10D76000810AFDEEE00A10EE900AA8B1FAEEC90AAD +:10D770009FED3B1A00EEC10A9FED3A1A00EEC10A76 +:10D780009FED391A00EEC10A9FED381A00EEC10A6A +:10D790009FED371A00EEC10A00F00300041921E0E2 +:10D7A0008DED000A0098C0F3C750FF2808D088B953 +:10D7B000009840020ED1E00748D5B7EE000A45E0D8 +:10D7C0000098400246D1FEF73BFC212101609FED0D +:10D7D000290A13BD8DED000A00A800F017FB0419FB +:10D7E0009DED000ADFED240AB4EE600AF1EE10FAB6 +:10D7F0000BDBDFED220AB4EE600AF1EE10FA04D57D +:10D80000E00723D5B7EE000A20E060EE000AE0074B +:10D810000ED59FED1B0A9FED1B1A00EE801ADFED5F +:10D820001A1A41EE201AB7EE000A01EEA00A0DE026 +:10D83000DFED161A9FED162A00EEA12ADFED151A6C +:10D8400020EE201A42EE201A01EE210AA00748BF5E +:10D85000B1EE400A13BD000083F9223F0000004FE3 +:10D860000000C94600A0FD400020A23A0000343369 +:10D870000030C22EFFFFFF7FFEFF7FB9000080391E +:10D880009349B2BA36A02A3DDFFFFFBE6E8C4CB979 +:10D890004283083CA1AA2ABE1AA210EE101ADFF891 +:10D8A00060C0F2EC060A614509DB00EE803A70EEDA +:10D8B000800A83EE200A40F0020010EE101A21F0D8 +:10D8C000004CDCF1665C0BD860EE000A20EE203ADA +:10D8D00003EE010A01EEA02A42EE202A80EE220A7F +:10D8E000400810F0020F18BFB1EE400A02EB8002B0 +:10D8F000D2ED000A30EE200A28BFB1EE400A704790 +:10D90000A430893ED7B3DD3F6AD5033F2B94A93DB0 +:10D91000B82A593F0000803F000080BF000000008F +:10D92000920A063FDB0FC93F920A863FDB0FC93FD1 +:10D93000920A0640DB0F4940368D274081423ABFAC +:10D9400053189842D6F7DCB88018990707D0521EB2 +:10D9500024BF13F8011D00F8011DF6D87047810798 +:10D960001CD1103A07D330B433E93210103A20E911 +:10D970003210F9D230BC1032121F24BF53F8041DEC +:10D9800040F8041DF8D838BF121D521E24BF13F8EA +:10D99000011D00F8011DF8D8704700BF083A07D3F1 +:10D9A00033E90210083A40F804CD40F8041DF7D2DC +:10D9B0000832EAE7F0B52DED048B154641EC180B63 +:10D9C00083B053EC182BC448C449DBF7CBF9C44AE5 +:10D9D000C44B41EC190B21F00041E8F761F980F0EC +:10D9E000F38051EC190B00220023E8F771F953EC96 +:10D9F000192B99BF0020BC490020BC49ECF7DCF989 +:10DA0000E7F754F9040051D0DBF794F90022B84B42 +:10DA1000DBF7A8F941EC190B53EC192B4FF0A040A0 +:10DA2000B449DBF79FF902460B4651EC180BE8F7B7 +:10DA3000F1F906460F4653EC192B4FF0C040AE49A2 +:10DA4000DBF790F902460B4630463946E8F7E2F933 +:10DA500006460F4653EC192B4FF00050A749DBF751 +:10DA600081F902460B4630463946E8F7D3F90646B7 +:10DA70000F4653EC192B0020A149DBF773F902463E +:10DA80000B4630463946E8F7C5F906460F4653ECD3 +:10DA9000192B4FF000509B49DBF764F902460B4607 +:10DAA00030463946E8F7B6F941EC180B04F00300AC +:10DAB000451951EC180B6FF00102944BE8F708F987 +:10DAC0000BD800224FF07953E8F7EAF805D2E807BF +:10DAD00040F18E819FED8E8B8AE153EC182BDBF7A2 +:10DAE00041F941EC190BE80731D553EC192B8A4861 +:10DAF0008A49DBF737F98A4A8A4BECF75DF953EC30 +:10DB0000192BDBF72FF9884A884BECF755F953ECC2 +:10DB1000192BDBF727F9864A864BECF74DF953ECC6 +:10DB2000192BDBF71FF9844A844BECF745F953ECCA +:10DB3000192BDBF717F9824B6FF05102ECF73CF928 +:10DB400053EC192BDBF70EF90022624B37E053EC54 +:10DB5000182B51EC190BDBF705F906460F4653EC71 +:10DB6000192B91489149DBF7FDF8914A914BECF75D +:10DB700023F953EC192BDBF7F5F88F4A8F4BECF7B1 +:10DB80001BF953EC192BDBF7EDF88D4A8D4BECF7B5 +:10DB900013F953EC192BDBF7E5F88B4A8B4BECF7B9 +:10DBA0000BF953EC192BDBF7DDF8894A564BECF7F0 +:10DBB00003F932463B46DBF7D5F853EC182BECF76C +:10DBC000FBF841EC180B13E18DED008BDDE9000152 +:10DBD000DDE90023C3F30A5140F2FF74A14213D0E0 +:10DBE000002904BF190350EA11301CD1E80748BFCF +:10DBF0009FED478BA80740F1038151EC180B81F092 +:10DC0000004141EC180BFBE0190350EA113040F0E1 +:10DC1000F780FEF715FA212103B001604FF0FF30C5 +:10DC20006FF00041EFE08DED008B00A800F064F98B +:10DC300045199DED008B354B51EC180B6FF001022F +:10DC4000E8F746F80BD800224FF07953E8F728F8A8 +:10DC500005D2E80740F1CC809FED2D8BC8E053EC56 +:10DC6000182BDBF77FF841EC190BE8076AD553EC6A +:10DC7000192B29482949DBF775F8294A294BECF774 +:10DC80009BF853EC192BDBF76DF8274A274BECF781 +:10DC900093F853EC192BDBF765F8254A254BECF785 +:10DCA0008BF853EC192BDBF75DF8234A234BECF789 +:10DCB00083F853EC192BDBF755F8214B6FF0510229 +:10DCC000ECF77AF853EC192BDBF74CF80022014BF8 +:10DCD0008AE000BF0000F03F83C8C96D305FE43FB9 +:10DCE0000000A0FFFFFFDF410000E03F0000E0BFB9 +:10DCF0000000303EFB21B941B410114026A6513E30 +:10DD00005C14D33C9A833B3B5555C5BFFFFF3FBED8 +:10DD1000000000000000F03F09260A1039BA213E39 +:10DD20003BA861C6F97D92BE63AC30909F01FA3E7C +:10DD3000F6FB51166CC156BFB10255555555A53F5E +:10DD4000FFFFDFBF53EC182B51EC190BDBF70AF880 +:10DD500006460F4653EC192B13481449DBF702F81B +:10DD6000134A144BECF728F853EC192BDAF7FAFFA7 +:10DD7000114A124BECF720F853EC192BDAF7F2FFAB +:10DD80000F4A104BECF718F853EC192BDAF7EAFFAF +:10DD90000D4A0E4BECF710F853EC192BDAF7E2FFB3 +:10DDA0000B4A0C4B18E000BFB08F2FC310D8E53DD5 +:10DDB0008F0C73A1E1E55ABE4DADE44FE31DC73EA4 +:10DDC0003EE3B519A0012ABFFAF010111111813FED +:10DDD000425555555555C5BFEBF7EEFF32463B460C +:10DDE000DAF7C0FF53EC182BEBF7E6FF41EC180B0A +:10DDF000A80705D551EC180B81F0004141EC180B38 +:10DE000003B051EC180BBDEC048BF0BD10B504460B +:10DE10002DED028B94ED008A9FED2D0A82B028EE45 +:10DE2000000AB5EE400A8DED000AF1EE10FAACBF23 +:10DE3000F6EE000AFEEE000A30EE200A8DED000A32 +:10DE4000002100A800F00CF99DED000AB5EE400A93 +:10DE5000F1EE10FA17D0DFED1F0A20EE200ADFEDF9 +:10DE60001E0A00EE608ADFED1D0A00EE608ADFED1B +:10DE70001C0A00EE608ADFED1B0A00EE608ADFED0F +:10DE80001A0A00EE608A84ED008ADFED180A9DED23 +:10DE9000000AB4EE600AF1EE10FA06D4DFED140ABF +:10DEA000B4EE600AF1EE10FA05DBDFED120A00F0C5 +:10DEB000FFF88DED000A9DED000ABDEEC00A02B02C +:10DEC00010EE100A00F00300BDEC028B10BD000044 +:10DED00083F9223F000080380000C94600A0FD40C1 +:10DEE0000020A23A000034330030C22E000000CFE0 +:10DEF0000100004F0000004FD0B52DED048B04460B +:10DF000082B094ED008B4748474953EC182BDAF761 +:10DF100029FFCDE9000100220023E7F7D9FEDDE962 +:10DF2000002399BF0020414900204149EBF744FFFD +:10DF3000CDE90001002100A800F058F9DDE9002337 +:10DF400000200021F7F71AFD4ED03A49DAF70AFF10 +:10DF500041EC190B53EC192B4FF0A0403649DAF77E +:10DF600001FF02460B4651EC180BE7F753FF06463C +:10DF70000F4653EC192B4FF0C0403049DAF7F2FE50 +:10DF800002460B4630463946E7F744FF06460F4641 +:10DF900053EC192B4FF000502949DAF7E3FE024603 +:10DFA0000B4630463946E7F735FF06460F4653EC39 +:10DFB000192B00202349DAF7D5FE02460B463046DE +:10DFC0003946E7F727FF06460F4653EC192B4FF06B +:10DFD00000501D49DAF7C6FE02460B463046394668 +:10DFE000E7F718FF41EC180B84ED008BDDE9000129 +:10DFF000164A174BE7F754FE04D3164A164BE7F7B9 +:10E0000067FE05D80022154B00F030F9CDE900017C +:10E01000DDE90001E6F74AFE02B000F00300BDECC6 +:10E02000048BD0BD83C8C96D305FE43F0000E03F82 +:10E030000000E0BF0000303EFB21B941B4101140A8 +:10E0400026A6513E5C14D33C9A833B3B0000C0FFA4 +:10E05000FFFFDFC10100C0FFFFFFDF410000E04123 +:10E060000268C2F3C752FF2A06D10068400201D1FC +:10E07000012070470220704703685B0016D0C2F190 +:10E080009602521A012A11DB182A04DB016801F0FA +:10E090000041016007E0012191400268491E1140E2 +:10E0A0004A40026011B14FF0FF30704700207047C6 +:10E0B00010EE100A10EE901AA4464FF0FF034FEA3C +:10E0C000410103EAD0540A0E1CBF94EA030F92EAFE +:10E0D000030F55D0B1EB400F2ED24FEAC11141F0E2 +:10E0E000004100F000434FEA002040F000404FEABA +:10E0F0009000890864EB0204401A38BF01EB40002D +:10E1000018BF54F1000407D0D1EB400038BF081805 +:10E1100018BFB4F10104F7D140002CD0B0FA80F15F +:10E1200000FA01F0521A0EDB43EA102000EBC25055 +:10E1300000EE100A6446704708BF00F0004000EE91 +:10E14000100A6446704743EA102000EE100A02F1FC +:10E150007F024FEAC25100EE901AF1EE100A20F44D +:10E16000F851E1EE101A20EE200AE1EE100A10EE4E +:10E17000100A64467047184600EE100A644670475D +:10E1800009421CBF94EA030F92EA030F1CD04FF020 +:10E19000984201EE102A60EE810AB1EB400FCBD21B +:10E1A000244208BF20EE010A10EE901A03EAD15271 +:10E1B000A2F119024FEA012191D110EE100A03EAEF +:10E1C000D054A4F119048CE74FF0807212EB400F89 +:10E1D0002CBF6FF0004011F1807F644618BF6FF0D4 +:10E1E000004000EE100AF7F4C3AB70474268C2F378 +:10E1F0000A5240F2FF7C624509D14168090304BF1D +:10E200000068002801D10120704702207047436850 +:10E210005B0004BF0368002B25D040F233439A1AF9 +:10E22000521A012A1FDB352A06DB416801F0004142 +:10E2300041600021016013E0012102F01F039940B9 +:10E24000491E920607D5426811404A404260026862 +:10E250001143002202E0026811404A40026011B1FD +:10E260004FF0FF30704700207047000070B540F25B +:10E27000FF7601F0004C5B0006EA11545D0D1ABFF9 +:10E28000B442B54278E0B3EB410F08BF82424BD2B3 +:10E29000C3F3530343F48013C1F3130141F480111A +:10E2A000641B0B3C13D9C90241EA5051B1FBF3FE88 +:10E2B00003FB1E11A2FB0EE6DEEBC020B14101D232 +:10E2C0008018594150EA010653D00B3CEBD80B346F +:10E2D000C4F12006A14020FA06F6A0403143B1FB6C +:10E2E000F3FE03FB1E11A2FB0EE6B0EB0E00B141E4 +:10E2F00001D28018594102BF0146203D0020C1B320 +:10E30000B1FA81F39940C3F1200220FA02F21143DD +:10E310009840ED1A0A3509DBC00A40EA41504CEA40 +:10E32000D12101EB055170BD23D070BDD5F10B0596 +:10E33000B5F120020DDAC5F120020300E84001FA30 +:10E3400002F6E940934073F10043704151EB0C0138 +:10E3500070BD402D0DDC430821FA02F0C2F120050A +:10E3600011FA05F6334373F1004370415CF100018B +:10E3700070BD6146002070BD53EA020E1ABFB44260 +:10E38000B54237E0B3EB410F08BF8242CCD25B0805 +:10E39000B3FA83F504BFB2FA82F6AD190B3DB5F1BD +:10E3A000200624BF02FA06F305E0AB40C5F12006C3 +:10E3B00022FA06F63343AA40D5F1010524427FF440 +:10E3C0006BAF31F00041B1FA81F404BFB0FA80F6CE +:10E3D000A4190B3CB4F1200624BF00FA06F105E0B5 +:10E3E000A140C4F1200620FA06F63143A040D4F142 +:10E3F000010455E74FF4001515EB410F2CBF6FF0EA +:10E400000041EB4218BF6FF00041BDE87040F7F4E7 +:10E41000AFAA7047BFF34F8FDFF8A808016801F477 +:10E42000E061DFF8A42811430160BFF34F8FFEE7DE +:10E430001EF0040F0CBFEFF30880EFF3098000F02B +:10E440003DB870471EF0040F0CBFEFF30880EFF3E8 +:10E45000098000F033B8FEE71EF0040F0CBFEFF3A5 +:10E460000880EFF3098000F029B870471EF0040F10 +:10E470000CBFEFF30880EFF3098000F01FB870477E +:10E480001EF0040F0CBFEFF30880EFF3098000F0DB +:10E4900015B870471EF0040F0CBFEFF30880EFF3C0 +:10E4A000098000F00BB870471EF0040F0CBFEFF3AB +:10E4B0000880EFF3098000F001B87047D7F7D4BDAA +:10E4C000704786B059E02646D4F761F8D3F7F7FDD8 +:10E4D0000521D3F7E1FF0FF63400D3F772FED4F72E +:10E4E00059F8DFF8E8173846DBF794F900281AD115 +:10E4F0003046461E0028F4D16D1EE4D50021384672 +:10E50000DBF773F90021DFF8C807DBF76EF9BDF818 +:10E510000330BDF801209DF800100FF2F870D3F71A +:10E5200050FEFFF777FFB8F1020F01D1D8F731FBAA +:10E53000DDF80900002804D0DBF716FE0020CDF836 +:10E54000090049F64044DFF88C5702212846DBF7E2 +:10E5500099F8002803D12046441E0028F5D142F244 +:10E56000107680212846DBF78DF8012803D130464C +:10E57000461E0028F5D1D4F70AF800A9DFF858079D +:10E5800000F0E8FB9DF8030010F0030808D0B8F194 +:10E59000020F05D015D3B8F1030F00F08780ECE728 +:10E5A000BDF80100011D89B2DDF8090000F000FC92 +:10E5B000DFF8284726460125D3F7ECFFDFF8207760 +:10E5C0008FE7DFF810078089C04604A800210160AA +:10E5D00002220DF10301D5F7CEFA02220DF101015D +:10E5E0000DF11200D5F7C7FA042104A800F0E0FBF2 +:10E5F000BDF80100001DDBF79FFDCDF80900BDF857 +:10E600000100011D89B2DDF8090000F0F5FBDFF81B +:10E61000CC4626460125D3F7BDFFDFF8B4760DE0E2 +:10E620002646D3F7B4FFD3F74AFD0521D3F734FFCD +:10E630000FF2F060D3F7C5FDD3F7ACFFDFF8A416F7 +:10E640003846DBF7E7F800281AD13046461E002886 +:10E65000F4D16D1EE4D50021DFF88406DBF7C5F8A0 +:10E6600000213846DBF7C1F8BDF80330BDF80120C2 +:10E670009DF800100FF2B460D3F7A3FDFFF7CAFEB8 +:10E68000D3F785FF002E3FF478AF00A9DFF85806D6 +:10E6900000F0D6FB002803D00FF2A060D7F796FD5C +:10E6A000DFF848160820E1F7F1FD66E7DFF82406F9 +:10E6B0008089C0460921DFF8380600F09DFBD3F7BA +:10E6C0006FFFDFF830660221DFF82C06DAF75FFE15 +:10E6D00000287FF452AF3046461E0028F3D10021B7 +:10E6E000DFF8FC05DBF781F80021DFF8E405DBF754 +:10E6F0007CF80FF25060D3F764FD3EE72DE9F0415E +:10E70000DFF8F8452078401C2070DFF8F4552878B1 +:10E71000401C2870D8F763F86878F021084202D0CE +:10E720009920D7F7B5F9D7F720FA6878401C6870B8 +:10E73000D6F782F96878F021084202D09920D7F7FD +:10E74000A7F96878401E6870C0B2002801D1D7F7D9 +:10E7500006FA0120DBF736FB012840F08280012019 +:10E76000DBF73CFB0026DFF89C750121DFF89805FC +:10E77000DAF70DFE002868D0387800282ED0304611 +:10E780003870DFF85875DFF848854046DBF73EF80B +:10E79000002823D03846471E0028F6D13146DFF83E +:10E7A0004005DBF722F831464046DBF71EF80FF252 +:10E7B0009C50D3F706FDD3F7F0FE2078411E217060 +:10E7C000002802D19820D7F763F92878012858D17A +:10E7D0006868002855D0D7F7BEF952E00221DFF86B +:10E7E0001805DAF7D4FD002810D02078411E2170DA +:10E7F000002802D19820D7F74BF92878012840D17A +:10E80000686800283DD0D7F7A6F93AE0DFF8E014B1 +:10E81000C87810F003000BD0012813D1B1F8010023 +:10E82000002805D0DFF8B00400F00AFB064609E036 +:10E83000DFF8B40400F004FB0646DFF8B01408204B +:10E84000E1F724FDD3F7A9FE07E001203870391D58 +:10E85000DFF8840400F0F4FA0646002E01D0D7F762 +:10E86000C6FC2078411E2170002802D19820D7F7DD +:10E870000FF92878012804D16868002801D0D7F75B +:10E880006AF92878401E2870BDE8F08138B5DFF8B5 +:10E890006C442078401C2070DFF864542878401CB9 +:10E8A0002870D7F79CFF6878F021084202D09920A1 +:10E8B000D7F7EEF8D7F759F96878401C6870D6F7A3 +:10E8C000BBF86878F021084202D09920D7F7E0F829 +:10E8D0006878401E6870C0B2002801D1D7F73FF9B0 +:10E8E0000220DBF76FFA002802D00220DBF776FA6D +:10E8F0002078411E2170002802D19820D7F7C8F84F +:10E900002878012804D16868002801D0D7F723F9B6 +:10E910002878401E287031BD38B5DFF8E0432078F4 +:10E92000401C2070DFF8D8532878401C2870D7F797 +:10E9300056FF6878F021084202D09920D7F7A8F84E +:10E94000D7F713F96878401C6870D6F775F86878BF +:10E95000F021084202D09920D7F79AF86878401E33 +:10E960006870C0B2002801D1D7F7F9F80420DBF7AE +:10E9700029FA00280BD00420DBF730FA012200210D +:10E980000320D3F710FED9491020E1F77FFC20784F +:10E99000411E2170002802D19820D7F779F82878F5 +:10E9A000012804D16868002801D0D7F7D4F8287866 +:10E9B000401E287031BD38B5D04C2078401C2070E6 +:10E9C000CF4D2878401C2870D7F709FF6878F021D0 +:10E9D000084202D09920D7F75BF8D7F7C6F86878D5 +:10E9E000401C6870D6F728F86878F021084202D0F9 +:10E9F0009920D7F74DF86878401E6870C0B200289B +:10EA000001D1D7F7ACF84FF40060DBF7DBF9002851 +:10EA100007D04FF40060DBF7E1F9B4492020E1F7BB +:10EA200035FC2078411E2170002802D19820D7F7AC +:10EA30002FF82878012804D16868002801D0D7F77A +:10EA40008AF82878401E287031BD70B5AB4C20780C +:10EA5000401C2070AA4D2878401C2870D7F7BFFEB4 +:10EA60006878F021084202D09920D7F711F8D7F73B +:10EA70007CF86878401C6870D5F7DEFF6878F02174 +:10EA8000084202D09920D7F703F86878401E6870D2 +:10EA9000C0B2002801D1D7F762F84FF48040DBF70D +:10EAA00013F9002823D0E7F775FC002813D00020C5 +:10EAB000E7F77AFCD3F7C8FEC66FD5F7B6FB8642F8 +:10EAC00004D0D3F7C1FEC06FD3F757FB87490620A8 +:10EAD000E1F7DCFB03E085490220E1F7D7FB4FF4C7 +:10EAE0008040DBF706F94FF48000DBF777F92078F8 +:10EAF000411E2170002802D19820D6F7C9FF28783E +:10EB0000012804D16868002801D0D7F724F82878B4 +:10EB1000401E287070BD38B5784C2078401C20709D +:10EB2000774D2878401C2870D7F759FE6878F02177 +:10EB3000084202D09920D6F7ABFFD7F716F86878CD +:10EB4000401C6870D5F778FF6878F021084202D041 +:10EB50009920D6F79DFF6878401E6870C0B20028E3 +:10EB600001D1D6F7FCFF4FF48050DBF7ADF8002859 +:10EB70000BD05E494020E1F789FB4FF48050DBF772 +:10EB8000B8F84FF40030DBF729F92078411E2170E6 +:10EB9000002802D19820D6F77BFF2878012804D1DD +:10EBA0006868002801D0D6F7D6FF2878401E287064 +:10EBB00031BDF0B585B0514C2078401C2070504DCF +:10EBC0002878401C2870D7F70AFE0220DAF70DFBE0 +:10EBD000002862D000210220DAF7E0FA0220DAF7FA +:10EBE0000CFB0020DAF744FA00A90020DAF729FF2D +:10EBF0000120DAF763FE01214FF48020DAF78CFA66 +:10EC00000F20DBF70BF806461020DBF707F8074666 +:10EC10000120DAF77EFA0020DAF77BFA31460F207E +:10EC2000DAF7EFFF39461020DAF7EBFF00214FF457 +:10EC30008020DAF771FA0120DAF70AFA01214FF0A1 +:10EC40008050DAF774FA4FF48070DAF74CFA3F200C +:10EC5000029040F2FF1003900020019001A8DAF723 +:10EC600037FE00A90020DAF79DFE0120DAF74EFA00 +:10EC7000DAF777FE0320DAF782FF4FF48040DBF704 +:10EC800038F84FF48000DBF7A9F801214FF48040F9 +:10EC9000DAF7F5FF0220DAF7B0FA2078411E21708A +:10ECA000002802D19820D6F7F3FE2878012804D155 +:10ECB0006868002801D0D6F74EFF2878401E2870DB +:10ECC00005B0F0BD0CED00E00400FA0500080020DE +:10ECD0001064024000300140689D002080841E00C6 +:10ECE00088640240200000104C9D0020B8D4002011 +:10ECF00000610120404B4C0000040240B566012039 +:10ED0000F8990020889A002000000240547852654B +:10ED1000747279005478444D412025642025642084 +:10ED20002564000052785265747279005278444D1F +:10ED30004120256420256420256400005075744D11 +:10ED400061696C00524541445900000045585449DE +:10ED50003000000038B504000D0013480078401C56 +:10ED60001149087011480078002802D0A120D6F778 +:10ED70008FFED7F70FFD607E662802D08220D6F77F +:10ED800087FED6F7F2FE05E040212000E7F712FBF0 +:10ED9000D6F7EBFEE0680028F6D029002000E7F760 +:10EDA00055FBD7F738FD31BDF8990020B666012034 +:10EDB00038B50C460E4D2968C90706D5296849089B +:10EDC000490029602968C907FCD400220146284669 +:10EDD000DAF716FD07492846DAF72FFD21462846BF +:10EDE0004160C04601212846BDE83440DAF7FDBC49 +:10EDF000886402400008002038B50C460E4D296892 +:10EE0000C90706D529684908490029602968C90742 +:10EE1000FCD4002201462846DAF7F2FC07492846CE +:10EE2000DAF70BFD214628464160C04601212846FD +:10EE3000BDE83440DAF7D9BC10640240200000106D +:10EE400070B504000D000126607E662802D0822085 +:10EE5000D6F71EFED7F776FC11480078401C104903 +:10EE60000870D6F782FEE0682169884204D2290042 +:10EE70002000E7F7C1FA002609484078F02108424F +:10EE800002D09920D6F704FE05484078002801D129 +:10EE9000D6F765FED7F7BFFC3000C0B270BD00BF2B +:10EEA000F899002030B40168DFF8642811614368E4 +:10EEB000536184689461C068D0610125956208251A +:10EEC000D5628B4201DA13615161A04201DA90618F +:10EED000D4614FF0FF301063002010731062506255 +:10EEE00030BC704710B5DFF828084FF0FF310163E0 +:10EEF000002101730162416241638163DFF81448BC +:10EF00004FF496622046D4F703FA4FF4966200213C +:10EF100004F59660D4F7FCF94FF46172002104F611 +:10EF2000E440D4F7F5F94FF46172002104F516605E +:10EF3000BDE81040D4F7ECB970B52DED0A8BB0EEFA +:10EF4000618AF0EE428AB0EE629A0024F0EE609A96 +:10EF5000B5EE400AF1EE10FA0AD1F5EE409AF1EE64 +:10EF600010FA05D1B5EE401AF1EE10FA00F02B813F +:10EF7000DFF89C5785ED000AC5ED019AB0EE41AA75 +:10EF800085ED02AADFF89067B0EE480A10EE100A8D +:10EF9000D9F7BAFF21F000412246DFF88037E6F7C3 +:10EFA0007FFE02D21046306007E0B0EE480ADFED87 +:10EFB000880A20EE200A86ED000AF0EE68AA1AEE12 +:10EFC000900AD9F7A1FF21F000412246DFF84C3723 +:10EFD000E6F766FE02D21046706005E09FED7C0AFF +:10EFE0002AEE800A86ED010A19EE100AD9F78CFF85 +:10EFF00021F000412246DFF82437E6F751FE02D225 +:10F000001046B06005E09FED720A29EE000A86ED19 +:10F01000020A95ED00BA2BEE0B0A09EEA90A0AEED8 +:10F020000A0A10EE100AD9F76FFF41EC100BEAF74D +:10F0300037FF51EC100BD9F78FFF0AEE900A9FEDC6 +:10F0400065CB8BEE2A0A10EE100AD9F75DFF41EC72 +:10F05000100B00F00DFC53EC102B51EC1C0BD9F7EE +:10F0600081FED9F779FF08EE100A89EEAA0A10EEA0 +:10F07000100AD9F749FF41EC100B00F0F9FB53ECF3 +:10F08000102B51EC1C0BD9F76DFED9F765FF08EE7C +:10F09000900A8AEE2A0A10EE100AD9F735FF41ECE1 +:10F0A000100B00F0E5FB53EC102B51EC1C0BD9F7C7 +:10F0B00059FED9F751FF0AEE100A19EE900AD9F756 +:10F0C00023FF41EC110BB0EE419AF0EE619AB1EEE4 +:10F0D0004B0A10EE100AD9F717FF41EC100BB0EEF7 +:10F0E000491AF0EE691A00F067FC53EC102B4FF050 +:10F0F0000050DFF82C16D9F735FED9F72DFF09EEB1 +:10F10000100AF0EE491AB0EE4A1AF0EE680AB0EEB4 +:10F11000480A00F035FAF0EE6A1A95EC030A00F09E +:10F1200048FA96EC030A00F05CFA2E6B3146012097 +:10F1300000F06CFADFF8DC0500EB860000F61060EA +:10F1400080ED000A95ED040AB8EEC00AB4EE40AABC +:10F15000F1EE10FA22DB95ED050AB8EEC00AB4EE26 +:10F160004A0AF1EE10FA19DB95ED060AB8EEC00A6C +:10F17000B4EE409AF1EE10FA10DB95ED070AB8EE06 +:10F18000C00AB4EE490AF1EE10FA07DB0FF29C5008 +:10F19000D3F717F8286A401C286201E0204628624D +:10F1A000286AA96A88420EDB2046286200F096F998 +:10F1B000012808D10FF28450D3F703F800F004F9C6 +:10F1C000012800D101242046BDEC0A8B70BD00004F +:10F1D000E12E654200000020DCA54C4070B52DED0D +:10F1E0000A8B0024DFF8285585ED000AB0EE60AAEE +:10F1F00085ED01AAF0EE419AC5ED029A95ED00BAAF +:10F200002BEE0B0A0AEE0A0A09EEA90A10EE100A02 +:10F21000D9F77AFE41EC100BEAF742FE51EC100BE5 +:10F22000D9F79AFE09EE100A9FEDA5CB8BEE090ADD +:10F2300010EE100AD9F768FE41EC100B00F018FB35 +:10F2400053EC102B51EC1C0BD9F78CFDD9F784FE35 +:10F2500008EE100A8AEE090A10EE100AD9F754FED9 +:10F2600041EC100B00F004FB53EC102B51EC1C0B89 +:10F27000D9F778FDD9F770FE08EE900A89EE890A71 +:10F2800010EE100AD9F740FE41EC100B00F0F0FA36 +:10F2900053EC102B51EC1C0BD9F764FDD9F75CFE35 +:10F2A00009EE900A1AEE100AD9F72EFE41EC110B66 +:10F2B000B0EE41AAF0EE61AAB1EE4B0A10EE100AD0 +:10F2C000D9F722FE41EC100BB0EE4A1AF0EE6A1AA2 +:10F2D00000F072FB53EC102B4FF00050DFF840149D +:10F2E000D9F740FDD9F738FE0AEE100AF0EE4A1AB7 +:10F2F000B0EE691AF0EE680AB0EE480A00F040F984 +:10F30000F0EE491A95EC030A00F053F92E6B287BB6 +:10F31000002801D1032E52DB3146012000F076F99E +:10F32000DFF8F00300EB860000F6106080ED000AC5 +:10F330009FED650AB4EE409AF1EE10FA3FD49FEDCE +:10F34000630AB4EE409AF1EE10FA38DA28691E38F2 +:10F3500000EE100AB8EEC00AF4EE409AF1EE10FA90 +:10F3600020DB68691E3000EE100AB8EEC00AB4EE69 +:10F37000690AF1EE10FA15DBA8691E3800EE100AD2 +:10F38000B8EEC00AB4EE40AAF1EE10FA0ADBE86962 +:10F390001E3000EE100AB8EEC00AB4EE4A0AF1EED2 +:10F3A00010FA03DA686A401C686201E0204668626D +:10F3B000686AE96A884202DB0224FFF793FD20466F +:10F3C000BDEC0A8B70BD0000F0B52DED028B83B053 +:10F3D000002400A821460A460B460EC0DFF8300381 +:10F3E000017B012901D1182101E0016B491EDFF8E1 +:10F3F00024C31AE000AD4FF4967707FB03C707EB71 +:10F400008607D7F8607900EE107ADFED310A05EB58 +:10F41000830797ED001A00EE201A05EB830585EDB2 +:10F42000001A5B1C032BE5DB521C8A4209DA036BD2 +:10F430009B1A4B334B2593FBF5F605FB16362346FB +:10F44000F0E700AD95ED018A9FED220AB4EE408A07 +:10F45000F1EE10FA16D50098D9F756FD21F00041CB +:10F460002246DFF8C032E6F71BFC0BD2A868D9F7BA +:10F470004BFD21F000412246DFF8A832E6F710FCF0 +:10F4800000D201249FED140ADDED000A95ED021A69 +:10F4900070EEC10AF4EE400AF1EE10FA00DB01242E +:10F4A000DDED000A70EEC80AF4EE400AF1EE10FA43 +:10F4B00000DB0124204603B0BDEC028BF0BD000050 +:10F4C00000000020DCA54C4041ABDB4074FA4B410E +:10F4D0000AD7A33C00008CC20100704210B4002087 +:10F4E0008B49096B01F14B024B2392FBF3F403FBB5 +:10F4F00014224A3191FBF3F403FB1411854B03EB07 +:10F500008204D4F8604900EE104AB5EE400AF1EEEC +:10F5100010FA33D103EB8202D2F88C4A00EE104A83 +:10F52000B5EE400AF1EE10FA28D1D2F8B82B00EE71 +:10F53000102AB5EE400AF1EE10FA1FD103EB81025A +:10F54000D2F8602900EE102AB5EE400AF1EE10FA6A +:10F5500014D103EB8101D1F88C2A00EE102AB5EE0C +:10F56000400AF1EE10FA09D1D1F8B81B00EE101ADA +:10F57000B5EE400AF1EE10FA00D1012010BC704740 +:10F580006348016B491C01634B2903DB01220273B1 +:10F590004B390163006B5F4901EB800282ED000A89 +:10F5A00001EB8000C0ED4B0A80ED961AC0EDE11A28 +:10F5B00070475748006B574901EB800202F2B04296 +:10F5C00082ED000A01EB800000F2DC51C1ED000A7F +:10F5D00000F2087181ED001A00F63400C0ED001A47 +:10F5E00070474B48006B4B4901EB800202F66012FA +:10F5F00082ED000A01EB800000F68C21C1ED000ACB +:10F6000000F6B83080ED001A7047000030B49FED6E +:10F610003F0ADFED3E0A00223E4D12E08B1A1BB27C +:10F62000002B00D54B331BB24FF4967404FB0054EF +:10F6300004EB8303D3F8B03401EE103A30EE010A44 +:10F64000521C032AEADBB0EE081A80EE010A0022FF +:10F6500014E08B1A1BB2002B01D54B331BB24FF4B5 +:10F66000967404FB005404EB8303D3F8B03401EE2A +:10F67000903A71EEC01A41EEA10A521C032AE8DB4F +:10F6800080EE810A30BC704730B52DED048B81B01F +:10F69000F0EE608AB0EE419A1D4CA06B451CA5634C +:10F6A00010EE100AD9F730FC21F0004101221E4B68 +:10F6B000E6F70EFB19D9B0EE680A10EE100AD9F77A +:10F6C00023FC21F000410122174BE6F701FB0CD986 +:10F6D000B0EE490A10EE100AD9F716FC21F00041ED +:10F6E0000122114BE6F7F4FA02D8606B401C60630C +:10F6F000022D05D100206063FFF7F4FB022000E03B +:10F70000002001B0BDEC048B30BD00000000000003 +:10F71000C85E0120A8D500203C6501200000E03F24 +:10F72000DCA54CC0000034400000F03F23534C2DBA +:10F730003E2054696C7420696E00000023534C2DE8 +:10F740003E206465746563742073746F70200000DC +:10F75000D0B52DED048B82B041EC180B8DED008BF4 +:10F76000DDE90023C3F30A5140F2FF74A14213D034 +:10F77000002904BF190350EA113011D051EC180BC5 +:10F7800000220023E6F78CFA3DBF81F0004141ECF6 +:10F79000180B0824002407E0190350EA1130EDD0BB +:10F7A00002B051EC180B60E051EC180B274A284BC3 +:10F7B000E6F776FA1CD29FED239B51EC190B53EC24 +:10F7C000182BE6F727FB06460F4653EC182B51EC97 +:10F7D000190BEAF7F1FA32463B46D9F7C3FAEAF7D2 +:10F7E00067FB41EC100B51EC180B53EC102B1EE097 +:10F7F0000122184BE6F754FA2ED29FED129B51ECE2 +:10F80000190B53EC182BE6F705FB06460F4653EC95 +:10F81000182B51EC190BEAF7CFFA32463B46D9F7D1 +:10F82000A1FAEAF745FB84F0020453EC182BE6F743 +:10F83000B1FB02B02246BDEC048BBDE8D04000F025 +:10F84000D7B800BF000000000000F03FCE3B7F664D +:10F850009EA0E63F0000F03FFCF7F2FB212102B042 +:10F8600001604FF0FF306FF00041BDEC048BD0BD64 +:10F8700080B551EC100BFFF76BFF41EC100B01BD95 +:10F8800038B50FB482B040F2FF759DED040B8DEDDD +:10F89000000BDDE90001C3F30A51A9420BD011B1FD +:10F8A0004FF0FF340DE0190350EA11300CBF002473 +:10F8B0006FF0010405E0190350EA113014BF02246F +:10F8C00001249DED020B8DED000BDDE90001DDE96A +:10F8D0000023C3F30A51A94215D069B14FF0FF309C +:10F8E000012C18DA002B1CD5DDE9020181F0004162 +:10F8F000CDE90201082515E0190350EA1130EFD0D7 +:10F900006FF00100ECE7190350EA113018BFDDE990 +:10F91000020147D10120022C29D1DDE9040107B001 +:10F9200030BD00250598002807D5DDE9040181F0E8 +:10F930000041CDE9040185F00605DDE90401DDE9BA +:10F940000223E6F7ADF904D2E6F724FB41EC100BF5 +:10F950001EE0002C08D5DDE90201DDE90423E6F70D +:10F9600019FB41EC100B15E09FED0F0B12E08442E8 +:10F970000CBF9FED0F0B9FED0C0B002B4CBF082510 +:10F9800000250599002948BF85F00605012801D109 +:10F9900085F002052A4607B0BDE8304051EC100B57 +:10F9A00000F026B807B030BD0000000000000000E5 +:10F9B000000000000000F03F80B553EC112B51EC2B +:10F9C000100BFFF75DFF41EC100B01BD4FAF0008BE +:10F9D00079AF0008BBB000086DB10008000000005E +:10F9E000C1B10008000000007BB600080000000064 +:10F9F000D0B514462DED048B534A544BE6F768F905 +:10FA000041EC180B1DD89FED529B53EC182B51EC79 +:10FA1000190BD9F7A7F900224F4BEAF7CDF90646A3 +:10FA20000F4653EC182B51EC190BEAF7C5F90246B7 +:10FA30000B4630463946E6F7ADFA41EC180B44F078 +:10FA4000010451EC180B0022444BE6F729F905D3C9 +:10FA500001224FF07953E6F73BF951D853EC182BBC +:10FA6000D9F780F941EC190B53EC182BD9F77AF937 +:10FA700006460F4653EC192B39483A49D9F772F923 +:10FA8000394A3A4BEAF798F953EC192BD9F76AF946 +:10FA9000374A384BEAF790F932463B46D9F762F9D4 +:10FAA00053EC182BEAF788F906460F4653EC192B4E +:10FAB00031483249D9F756F9314A324BEAF77CF9E5 +:10FAC00053EC192BD9F74EF92F4A304BEAF774F95A +:10FAD00053EC192BD9F746F92D4A2E4BEAF76CF95E +:10FAE00053EC192BD9F73EF92B4B0022EAF764F9B6 +:10FAF00002460B4630463946E6F74CFA41EC180B05 +:10FB0000A00705D551EC180B81F0004141EC180B12 +:10FB100014F007020BD00FF2880303EBC20251EC82 +:10FB2000180B53681268EAF747F941EC180B2007E5 +:10FB300005D551EC180B81F0004141EC180B51EC4C +:10FB4000180BBDEC048BD0BD57CD9E5E1426D13F63 +:10FB5000AA4C58E87AB6FB3F0000F0BF000040BE58 +:10FB6000845D57134B57B03FB2934C19ED5EE43FA1 +:10FB7000BEDE02B90240F83FDE39028FC7C0743FD3 +:10FB80008AAB1283000CC83F24D7E508B6D8F03FF3 +:10FB90000F34580E5895FD3F0000F03F0000000064 +:10FBA000000000000000000066732D3852C1E03FE5 +:10FBB000182D4454FB21F93F66732D3852C1F03F94 +:10FBC000182D4454FB21F93F66732D3852C1004073 +:10FBD000182D4454FB2109403FD038C6A6F10440FB +:10FBE00010B5DFF8084620620C220021201DD3F753 +:10FBF0008FFB04F12400206104F13C00606104F1FA +:10FC00005400A06104F16C00E06100202070FF202E +:10FC10006070A07010BD00002DE9F0472DED068B3F +:10FC200086B00C464FF0000ADFF8C05501686960E5 +:10FC30004168A9608068E860D04640460190049021 +:10FC400003900290052205F10C01286900F05DFA8D +:10FC5000052205F10801686900F057FA0522291DFF +:10FC6000A86900F052FA052301AA0321286900F0CF +:10FC700061FAB0EE408A052304AA0321686900F006 +:10FC800059FAF0EE408A052303AA0321A86900F07F +:10FC900051FAB0EE409A05220321286900F088FA53 +:10FCA000F0EE080AC0EE209A95ED02AAD5ED01AA61 +:10FCB000F5EE40AAF1EE10FA0FD1B5EE40AAF1EE42 +:10FCC00010FA0AD195ED030AB5EE400AF1EE10FAEA +:10FCD00003D100F016FA4FF00108564695F801904E +:10FCE00095ED030A6AEEAA0A4AEE0A0A40EE000AF5 +:10FCF00010EE900AD9F708F941EC100BEAF7D0F8AA +:10FD000051EC100BD9F728F90090052200A9E869F9 +:10FD100000F0FBF99DED000ADFEDA30AB4EE600AE6 +:10FD2000F1EE10FA00F18580DFEDA00AB4EE600A72 +:10FD3000F1EE10FA7DDA052302AA0321E86900F04A +:10FD4000F9F9F0EE0C0AB4EE600AF1EE10FA70D593 +:10FD50009FED970AB4EE408AF1EE10FA69D59FED57 +:10FD6000950AF4EE409AF1EE10FA10D59FED920A42 +:10FD7000F4EE409AF1EE10FA09DB6878FF2858D0CB +:10FD8000FF2068704FF0FF3020700120C4E019EEB2 +:10FD9000900AD9F7B9F821F000413246DFF8503423 +:10FDA000E5F77EFF11D2B0EE000AF4EE408AF1EEE4 +:10FDB00010FA17D4F4EE408AF1EE10FA39DAB4EE04 +:10FDC000409AF1EE10FA0EDB33E0052301AA194642 +:10FDD000286900F0AFF9F7EE000AB4EE600AF1EE20 +:10FDE00010FA26D5B04695ED030ADDED000A80EE47 +:10FDF000200A10EE100AD9F787F841EC100BFFF734 +:10FE000037FD53EC102B4FF00040DFF8E813D8F724 +:10FE1000A9FF41EC100B00F05DFA51EC100BE4F778 +:10FE200045FF0746B8F1000F51D1E4F73BFF3D28ED +:10FE300003DB00F066F930466EE0A868D9F764F895 +:10FE400041EC110BB0EE418AF0EE618A95ED010AAA +:10FE5000B1EE400A10EE100AD9F756F841EC100B3B +:10FE6000B0EE481AF0EE681AFFF7A6FD53EC102B1F +:10FE70004FF00040DFF88013D8F774FF41EC100B0F +:10FE800000F028FA51EC100BE4F710FF060001D542 +:10FE900006F5B47606F12D005A2190FBF1F8B8F181 +:10FEA000040F00D1D046384600F03BF8002806D0B9 +:10FEB0003A463146404600F039F8002802D100F0B9 +:10FEC00020F904E0A878404501D085F80280A878A0 +:10FED000484502D1B9F1FF0F1DD195F8201011F05E +:10FEE000060F01D0012604E03A46314600F066F8DC +:10FEF00006463846E4F7D6FE3D280CDA002E0AD036 +:10FF0000A8786978814206D0687020704FF0010AA5 +:10FF1000FF2800D02870504606B0BDEC068BBDE827 +:10FF2000F0873C3079288041C00F704718B4AF4C3F +:10FF3000237894F8204014F0060F01D018BC3DE05F +:10FF40002FD4984208D05A1C541002EB9474A41079 +:10FF5000A2EB840290420ED15A224243283A002852 +:10FF600007D1B1F59D7F06DD02F5B472914202DA48 +:10FF700015E0914213DB984208D0DA1C531002EBD3 +:10FF800093739B10A2EB830290420AD15A22424300 +:10FF90002832002801D12E2903DA8A4201DA002012 +:10FFA00000E0012012BC7047DD0CFB40A7493C413A +:10FFB0006766E63F3E1B3041D7B409412DE9F04F5B +:10FFC00095B004460D461646884F97F8008010A855 +:10FFD0000FF228211422D3F7A3FD4FF0000B0DF1EF +:10FFE0004009D9F804A03046E4F75CFE1099884235 +:10FFF00004DB3046E4F756FE50452ADBD9F808B05A +:020000023000CC +:100000003046E4F74FFE504507DB3046E4F74AFE42 +:10001000584502DA4FF0010B1BE0D9F80C9030463E +:10002000E4F740FE584507DB3046E4F73BFE484521 +:1000300002DA4FF0020B0CE03046E4F733FE48459D +:100040000CDB3046E4F72EFE1499814206DB4FF0BC +:10005000030BB8F1000F47D4002C01D5002044E079 +:10006000444509D008F10100411000EB917189105D +:10007000A0EB8100844218D100A80FF29411402215 +:10008000D3F74EFD4FEA0B10002C00A908D14158C0 +:100090008D420ADA00A940184068A84205DA2CE02F +:1000A000401850F82400854227DB444509D008F168 +:1000B0000300411000EB91718910A0EB8100844294 +:1000C00012D100A80FF288114022D3F729FD4FEA80 +:1000D0000B10002C00A90BD14158A94204DA00A949 +:1000E0004018C068854208DB012015B0BDE8F08FDC +:1000F000401850F82400A842F6DAFF20B87000201B +:10010000F3E73A48FF21817070470388934201D397 +:100110000023038003885B1C03809BB2934201D3BE +:1001200000220280028800EB820009684160012001 +:10013000704700002DE9F0432DED028B81B004469D +:100140000D4616461F469FED288A4FF00008B4F969 +:10015000009000EE105AF8EEC08A3A4600F028F8F7 +:1001600080EE280A86ED000A05E0A7F101090FFAE2 +:1001700089F908F101080FFA88F8A84511DA04EBAB +:10018000890090ED010AD6ED000A30EE600A00EE1B +:10019000008AB9F1010FE8DBA9F101090FFA89F929 +:1001A000E7E788EE280A01B0BDEC028BBDE8F083DA +:1001B00030B49FED0D0A0023B0F900400EE024B2E8 +:1001C000002C06D400EB8405D5ED010A30EE200AA0 +:1001D000641E24B2002C00D5541E5B1C1BB28B4243 +:1001E000EDDB30BC7047000000000000B84E01207D +:1001F00000001040DCA54C40DCA54CC00000000015 +:100200001E00000028000000320000003C0000003A +:100210004A0100003C00000096000000F0000000D1 +:100220004F010000410000009B000000F5000000AD +:100230005401000046000000A0000000FA00000089 +:100240005E01000050000000AA0000000401000050 +:100250001E00000078000000D20000002C01000009 +:100260001900000073000000CD000000270100000D +:10027000140000006E000000C80000002201000011 +:100280000A00000064000000BE0000001801000029 +:1002900083B5012100A8FDF7A9FF401E012811D94F +:1002A000002100A8FDF7A2FF60B10198DDE900235D +:1002B000002847BF0020054900200549E9F77CFDDB +:1002C000CDE90001DDE9000103B000BD0000F0BF91 +:1002D0000000F03F80B551EC100BFFF7D9FF41EC67 +:1002E000100B01BD4FAF0008F3B4000895B500082E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000002DE9F0412DED048BFD +:100310008CB006460F46904600A80FF2BC51302222 +:10032000D3F7FEFBDFF860450A20206207206062F9 +:10033000A0620520E062DFF85405DFF85415CDE92E +:10034000000100A84FF03332DFF84835C0E902233E +:10035000DFF83825DFF84035C0E904234FF03332A9 +:10036000DFF83835C0E90623DFF83435C0E9082363 +:10037000DFF83035C0E90A23DFF82C550A2129655A +:100380003168142291FBF2F1E965D8F800100229D6 +:1003900001D1052123E03968102918D0B1F5807FFB +:1003A00006D0B1F5806F08D0B1F5006F0AD012E029 +:1003B0004FF480712163002111E04FF480612163CB +:1003C00002210CE04FF400612163032107E01021BA +:1003D0002163042103E04FF400712163012100EB4C +:1003E000C100D0E90023DFF8C404DFF8C414D8F753 +:1003F000B9FC41EC180B53EC182B0020DFF8B414B7 +:10040000D8F7B0FC41EC100B85ED0A0B85ED080B1D +:1004100053EC102BDFF8A004DFF8A014D8F7A2FCEF +:10042000C5E90C01202200212046D2F771FF9FED83 +:10043000319B206AD8F77EFC53EC192BD8F792FC3D +:1004400053EC182BD8F78EFCC4E90001606AD8F78A +:1004500071FC53EC192BD8F785FC53EC182BD8F70B +:1004600081FCC4E90201A06AD8F764FC53EC192BA3 +:10047000D8F778FC53EC182BD8F774FCC4E90401C6 +:10048000E06AD8F757FC53EC192BD8F76BFC53EC08 +:10049000182BD8F767FCC4E906010020A8650120E5 +:1004A0006866A86604F13400286600202870686534 +:1004B0000146C5E90E019FED110B85ED100B85ED91 +:1004C000120B0CB0BDEC048BBDE8F081DFF8D80353 +:1004D0000121416681669FED090B80ED100B80EDD7 +:1004E000120B0021017041650A460B46C0E90E233C +:1004F00070470000000000000000E03F2D431CEBAF +:10050000E2361A3F2DE9F04F2DED068B8BB00546F4 +:100510004FF000089FEDDA9BB0EE498AF0EE698A51 +:1005200004A81821D5F766FAC1468DED010AF1EE4F +:10053000601ACDED021AB1EE410A8DED030ADA4CD4 +:100540001E2201A9206EF5F702FD2868022802D1BB +:100550000220009001E003200090206E616E0029CF +:100560000CD0002800F085810088216D8842C0F2FF +:1005700080814046606684ED0E9B7AE1A16E002981 +:1005800039D01E22216D09B2F5F70AFD94ED149AB7 +:10059000F8EEC90A80EE200A10EE100AD8F7B4FC73 +:1005A000C4E902011E2219EE101A09B2206EF5F7F5 +:1005B00015FD94ED149AF8EEC90A80EE200A10EEAB +:1005C000100AD8F7A1FCC4E904011E2219EE101A82 +:1005D00009B2206EF5F720FDD4ED140AF8EEE00A1A +:1005E00080EE200A10EE100AD8F78EFCC4E906014E +:1005F0004046A06645E01E224146F5F7C1FC05468F +:100600001E22216D09B2206EF5F7BAFC064694ED64 +:10061000140AB8EEC09A95ED000AD6ED000A30EE45 +:10062000600A80EE090A10EE100AD8F76DFCD4E9D2 +:100630000223E9F7C1FBC4E9020195ED010AD6EDF9 +:10064000010A30EE600A80EE090A10EE100AD8F7AF +:100650005BFCD4E90423E9F7AFFBC4E9040195EDA1 +:10066000020AD6ED020A30EE600A80EE090A10EEA8 +:10067000100AD8F749FCD4E90623E9F79DFBC4E941 +:1006800006011822414604A8D2F742FE454604AEB0 +:1006900040E01E22294609B2206EF5F771FC07469C +:1006A0003868D8F731FCD4E90223E5F7B3FB41EC15 +:1006B000100B53EC102BD8F755FBDDE90423E9F7B9 +:1006C0007BFBCDE904017868D8F71EFCD4E904234C +:1006D000E5F7A0FB41EC100B53EC102BD8F742FBD5 +:1006E000D6E90223E9F768FBC6E90201B868D8F742 +:1006F0000BFCD4E90623E5F78DFB41EC100B53EC22 +:10070000102BD8F72FFBD6E90423E9F755FBC6E9F0 +:1007100004016D1C206D8542BBDBD8F70BFB41EC5F +:10072000190BDDE9040153EC192BE5F733FCCDE996 +:100730000401D6E9020153EC192BE5F72BFC41EC3F +:100740001A0B86ED02ABD6E9040153EC192BE5F741 +:1007500021FC41EC190B86ED049BDDE9040153EC0F +:100760001A2BE9F729FB564A564BE5F799FA07D2B7 +:1007700094ED100B8DED040B94ED120B86ED020B36 +:100780009DED040B84ED100B96ED02AB84ED12ABE6 +:10079000D4E90E014FF066324B4BD8F7E3FA8246AC +:1007A0008B46DDE9042351EC1A0BE9F705FB024601 +:1007B0000B4651EC190BE5F7EDFB344A434BD8F7E8 +:1007C000D1FA02460B4650465946E9F7F5FA41EC94 +:1007D000100B84ED0E0B01223D4BE5F779FA06D89C +:1007E00090462078012802D1606D401C60654D461E +:1007F0000FE006EBC50090ED009B51EC180B53EC9D +:10080000192BE5F74DFA03D2B0EE498AF0EE698A6A +:100810006D1C00988542ECDBD4E9080153EC182BE1 +:10082000E5F756FA02D9606D10280FDBE06DA16D77 +:10083000884204DA4846207060654FF001090020C4 +:10084000A06594ED0A0B84ED080B12E0B8F1000FDF +:100850000FD1A06DE16D814209DA01212170494675 +:1008600061654FF0020994ED0C0B84ED080B401C00 +:10087000A06548460BB0BDEC068BBDE8F08F00BF0D +:100880000000000000000000189500209A99999936 +:100890009999C93F3333D33F9999E93F3333F33FB4 +:1008A000333303403333E33F789800201F85EB5107 +:1008B000B89E2340000014407B14AE47E17A843F89 +:1008C0002E431CEBE2362A3F6666EE3F9999A93F1C +:1008D00000003440000000009A9999999999C93F05 +:1008E000333333333333E33F9A9999999999E93FF5 +:1008F000333333333333F33F33333333333303401F +:10090000333333333333E33F0FB400B587B027229B +:1009100000210846D7F7D6FF022805D10FF2F430A0 +:10092000D1F74FFC02202AE0272201210020D7F72F +:10093000C9FF022805D10FF2E830D1F742FC0220AE +:100940001DE0BDF92200009000A8BDF9241041600F +:10095000BDF926108160BDF9280003909DF82A009A +:1009600004909DF82B000590DFF89403012141705D +:1009700000218170C17000A8FEF794FA012007B031 +:100980005DF814FB10B58AB0272200210120D7F7AB +:1009900099FF032805D10FF29830D1F712FC0320FC +:1009A00039E0272201210846D7F78CFF022805D11C +:1009B0000FF26C30D1F705FC02202CE0D04C94F9FA +:1009C0000300012823D10020A07000F04AFA00A8FB +:1009D0002421D5F70FF801208DF800002A2001907E +:1009E0000A208DF808000020ADF822008DF80900DB +:1009F000ADF80A008DF80C0000A8D8F75DF80028C3 +:100A000005D10FF23C30D1F7DCFB002003E00020E1 +:100A1000A070E07001200AB010BD30B59DB012A8E2 +:100A2000D7F7B6FF0025B64C94F90100012803D092 +:100A3000042801D0052806D112A890EC030AFEF77D +:100A4000CDFB05460AE0022808D115A8D0EC031A10 +:100A500012A890EC030AFEF76FFA0546002D35D078 +:100A600094F90100854230D02570012000F028F96A +:100A7000012D02D10120A07027E0022D25D10020F8 +:100A8000A07094F9030001281FD100F0EAF900A832 +:100A90002421D4F7AFFF01208DF800002A20019017 +:100AA0000A208DF808000020ADF822008DF809001A +:100AB000ADF80A008DF80C0000A8D7F7FDFF00285C +:100AC00000F0C2800020E070A060657094F903001F +:100AD00094F9021001292DD100282BD1606890F8DB +:100AE0009006002801D00020B9E000A82421D4F706 +:100AF00081FF00208DF800002A2001900A208DF847 +:100B000008000020ADF822008DF80900ADF80A00B9 +:100B10008DF80C0000A8D7F7CFFF002805D10FF201 +:100B20003820D1F74EFB002099E00120E070002032 +:100B3000A06093E0012840F09180A068401CA06074 +:100B400005283ADA15A890EC030AFEF79DFD012866 +:100B50002BD1042060702070012000F0B1F800203B +:100B6000A07094F90300012827D100F07AF900A8B9 +:100B70002421D4F73FFF01208DF800002A200190A6 +:100B80000A208DF808000020ADF822008DF8090039 +:100B9000ADF80A008DF80C0000A8D7F78DFF0028EB +:100BA00052D00020E070A06007E0022805D10520A7 +:100BB00060702070012000F083F800F04EF90128E9 +:100BC00025D103202070012000F07AF80020A070C9 +:100BD00000F047F900A82421D4F70CFF01208DF87C +:100BE00000002A2001900A208DF808000020ADF8AE +:100BF00022008DF80900ADF80A008DF80C0000A85D +:100C0000D7F75AFF00281FD00020E070A060A0682E +:100C1000FB2823DB09A82421D4F7ECFE01208DF862 +:100C200024002A200A900A208DF82C000020ADF81C +:100C300046008DF82D00ADF82E008DF8300009A883 +:100C4000D7F73AFF002805D10FF2F400D1F7B9FA2F +:100C5000002004E00020E070A070A06001201DB022 +:100C600030BD80B5D7F72CFE2549486000220A70B8 +:100C70002449C0F8281600F228602349416023491E +:100C800081600FF21101C1600FF23D01016101208D +:100C900002BD00001A48406890F81906002801D1EA +:100CA0000020704708E080B5154800210170084613 +:100CB00000F006F8012002BD154890F900007047C9 +:100CC000134908707047000018B440F249120B78BD +:100CD00012FB030301241C700B7812FB03035C70EE +:100CE0000B7812FB030327249C700B7812FB030084 +:100CF000034A1278C2700878401C087011BCD2E711 +:100D00000065012009090308850903081B0A030877 +:100D1000AC660120535320414343206661696C0057 +:100D20005353204759524F206661696C0000000000 +:100D300053532041434332206661696C0000000038 +:100D4000444F55424C4554415020436C6F736520CD +:100D50006661696C00000000444F55424C455441A7 +:100D600050204F70656E206661696C000FB480B5CD +:100D70002A2200210846D7F7A5FD022805D10FF247 +:100D80003810D1F71EFA022002E000F0A3F801208B +:100D900002BC5DF814FB80B52A2200210120D7F7A0 +:100DA00091FD032805D10FF21C10D1F70AFA032098 +:100DB00002BD012002BD10B58CB000A8D7F7E8FD38 +:100DC00000A890EC030A00F0ABF80446012C0ED109 +:100DD00000F080F833480470416891F890160029BB +:100DE00001D001214170012000F034F803E0022C11 +:100DF00001D100F06FF801200CB010BD80B5D7F71D +:100E00005FFD284948602849C0F8A01600F2A0609C +:100E100026494160264981600FF20D01C1600FF241 +:100E20004D010161012002BD1E48406890F8910605 +:100E3000002801D10020704708E080B51948002142 +:100E40000170084600F006F8012002BD194890F92B +:100E500000007047174908707047124890F9010068 +:100E600070471048002141707047000018B440F2EC +:100E700049120B7812FB030301241C700B7812FB40 +:100E800003035C700B7812FB03032A249C700B781D +:100E900012FB0300034A1278C2700878401C0870E5 +:100EA00011BCCAE7B06501206D0D0308970D03085A +:100EB000B70D030897660120445420414343206640 +:100EC00061696C0044542041434332206661696C7F +:100ED00000000000DFF8140400210160416081601F +:100EE000C160016141618161C161016241628162F0 +:100EF000C1620846024610E0DFF8F41341F82020F2 +:100F000001EB80018A620A65DFF8E81341F82020CE +:100F100001EB80018A620A65401C0A28ECDB7047FD +:100F20002DE9F0432DED028B81B04FF00009DFF881 +:100F3000BC4320680A2806DB0A3820606068002865 +:100F400001D1012060602568DFF8A46306EB85000D +:100F500080ED000A06EB8507C7ED0A0A87ED141A33 +:100F6000606828430DD1691C2160DFF888034A4678 +:100F700040F8212000EB810011468162016508469E +:100F8000A6E1691E00D50A31DFF8680306EB850289 +:100F900092ED000A06EB8102D2ED000A30EE600A03 +:100FA00000EB850282ED000A00EB850806EB81016B +:100FB00097ED0A0AD1ED0A0A30EE600A88ED0A0AB6 +:100FC00097ED140AD1ED140A30EE600A88ED140A88 +:100FD000A168002952D150F82500D7F795FF21F0DC +:100FE00000414FF03332DFF81033E4F759FE3AD2C4 +:100FF000D8F82800D7F788FF21F000414FF03332AE +:10100000BD4BE4F74DFE2ED2D8F85000D7F77CFF49 +:1010100021F000414A46B94BE4F742FE23D206EBE9 +:10102000850090ED000ADFEDAD0AB4EE600AF1EE46 +:1010300010FA18DBB86AD7F767FF21F000414A467B +:101040004FF08043E4F72CFE0DD2386DD7F75CFFEC +:1010500021F000414A46AA4BE4F722FE03D2E068A1 +:10106000401CE06001E04846E060E0680428C0F20F +:10107000FA800120A06048462062F4E0012940F097 +:10108000A380216A012901DB491C21622169002911 +:1010900024D150F8250000EE100ADFED910AB4EEDD +:1010A000600AF1EE10FA09DB4FF0FF302061A06911 +:1010B000401CA061206A401C206236E0DFED890AF6 +:1010C000B4EE600AF1EE10FA2FD501202061A0697C +:1010D000401CA061206A401C206226E0012911D139 +:1010E00000EB850090ED000ADFED7D0AB4EE600AAA +:1010F000F1EE10FA19DB4FF0FF302061A069401CBF +:10110000A06112E011F1010F0FD100EB850090ED0D +:10111000000ADFED740AB4EE600AF1EE10FA04D5AD +:1011200001202061A069401CA0616069002827D1CE +:1011300098ED140AF7EE000AB4EE600AF1EE10FA28 +:101140000CDB4FF0FF306061E069401CE061206A19 +:10115000002840F088800120206284E0DFED620AF0 +:10116000B4EE600AF1EE10FA7DD501206061E0690D +:10117000401CE061206A002875D10120206272E0E5 +:1011800001280FD198ED140AF7EE000AB4EE600AB8 +:10119000F1EE10FA67DB4FF0FF306061E069401C50 +:1011A000E06160E010F1010F5DD198ED140ADFED10 +:1011B0004E0AB4EE600AF1EE10FA54D501206061D7 +:1011C000E069401CE0614EE002294CD1216A481CD4 +:1011D000206294ED090A06EB8501D1ED000A30EE9C +:1011E000200A84ED090AD4ED0A0A97ED0A1A70EE76 +:1011F000810AC4ED0A0A94ED0B1AD7ED141A31EEE8 +:10120000211A84ED0B1A0A282DD1F2EE041A80EE71 +:10121000210AC0EEA10A81EE218AB2EE081AB4EECC +:10122000410AF1EE10FA1ED59FED2C1AB4EE410AD8 +:10123000F1EE10FA17DB10EE900AD7F765FE21F0F9 +:1012400000414A462F4BE4F72BFD0CD218EE100A52 +:10125000D7F75AFE21F000414A462B4BE4F720FD18 +:1012600001D24FF00109216AB42923DAA0690428C8 +:1012700002DAE269042A1DDB03281BDB1F290ADBD3 +:1012800000202062A061E0610220A0600020606276 +:10129000A062E06218E00FF27400D0F792FFA0693C +:1012A000042801DB801EA061E06904280CDB801E9D +:1012B000E06109E0B42907DB0020A060E060206164 +:1012C0006061A061E06120622068401C20604846A7 +:1012D00001B0BDEC028BBDE8F08300000100A0402E +:1012E0009A99193F999919BFFEFF7FBF406001206D +:1012F000C45101203C5201203333E33F0000F03F52 +:1013000000001440000008400000184044545020E1 +:101310006661696C20256400CF490022CA630A64B3 +:1013200001F148024A6201F1C4028A6201F5A07229 +:10133000CA6201F5DE720A6301F50E724A6301F5B5 +:101340002D728A630B2802DA1E2048647047152824 +:1013500002DA1920486470473D2802DA14204864F4 +:101360007047B52802DA0F20486470470A204864A5 +:1013700070470000F0B52DED068B83B004460026C3 +:10138000B54DE86B00286AD185ED000AC5ED010A6C +:1013900085ED021AB0EE610A85ED030AB0EE420A4D +:1013A00085ED050AB0EE620A85ED040A304602902A +:1013B000019000901E222946E86A00F0DCF81E2207 +:1013C000291DA86A00F0D7F81E2205F10801686AF5 +:1013D00000F0D1F81E2205F10C01A86B00F0CBF84B +:1013E0001E2205F11001686B00F0C5F81E2205F100 +:1013F0001401286B00F0BFF8696C286C81422ADA6E +:101400001E2300AA09B2E86A00F0CAF8B0EE408ACA +:101410001E2301AA696C09B2A86A00F0C1F8F0EEB7 +:10142000408A1E2302AA696C09B2686A00F0B8F803 +:10143000DFED880AB4EE608AF1EE10FA0BD5F4EE17 +:10144000608AF1EE10FA06D5B4EE600AF1EE10FAF9 +:1014500001D50120E863286C401C286486E0AE6B4F +:101460006F6C1E22394609B2304600F0D7F8F0EE14 +:10147000408A1E22394609B2304600F0F5F8B0EE37 +:10148000409A1E22394609B2304600F012F9B81EC1 +:1014900000EE900AB8EEE08A78EEC90A30EEC00A93 +:1014A000C0EE088AC5ED068A6E6B1E22394609B267 +:1014B000304600F0B3F8B0EE409A1E22394609B229 +:1014C000304600F0D1F8F0EE409A1E22394609B2BB +:1014D000304600F0EEF879EE690A30EEC00A80EE90 +:1014E000089A85ED079A2E6B1E22394609B23046BE +:1014F00000F094F8F0EE409A1E22394609B23046C8 +:1015000000F0B2F8B0EE40AA1E22394609B23046C9 +:1015100000F0CFF879EECA0A30EEC00A80EE088AF1 +:1015200085ED088A9FED4DAB18EE900AD7F7ECFCDD +:1015300053EC1A2BE4F72EFDE3F7B8FB208019EEED +:10154000100AD7F7E1FC53EC1A2BE4F723FDE3F77D +:10155000ADFB608018EE100AD7F7D6FC53EC1A2BBF +:10156000E4F718FDE3F7A2FBA0800126304603B0A4 +:10157000BDEC068BF0BD0388934201D300230380AA +:1015800003885B1C03809BB2934201D3002202803C +:10159000028800EB8200096841600120704700006A +:1015A0002DE9F0432DED028B81B004460D46164621 +:1015B0001F469FED2C8A4FF00008B4F9009000EE12 +:1015C000105AF8EEC08A3A4600F028F880EE280A51 +:1015D00086ED000A05E0A7F101090FFA89F908F183 +:1015E00001080FFA88F8A84511DA04EB890090ED9C +:1015F000010AD6ED000A30EE600A00EE008AB9F169 +:10160000010FE8DBA9F101090FFA89F9E7E788EE94 +:10161000280A01B0BDEC028BBDE8F08330B49FED29 +:10162000110A0023B0F900400EE024B2002C06D4C9 +:1016300000EB8405D5ED010A30EE200A641E24B2C9 +:10164000002C00D5541E5B1C1BB28B42EDDB30BC62 +:10165000704700006F12033B9C21012089AD84FA82 +:101660000A74313F000000002DE9F04104460D46A8 +:10167000164694ED010A0027B4F9008014E00FFA31 +:1016800088F8B8F1000F07D404EB8800D0ED010A08 +:1016900000F03CF8A8F101080FFA88F8B8F1000F43 +:1016A00001D5A6F101087F1C3FB2AF42E7DBBDE8E0 +:1016B000F0812DE9F04104460D46164694ED010AED +:1016C0000027B4F9008014E00FFA88F8B8F1000F91 +:1016D00007D404EB8800D0ED010A00F00FF8A8F160 +:1016E00001080FFA88F8B8F1000F01D5A6F101083A +:1016F0007F1C3FB2AF42E7DBBDE8F081B4EE600A89 +:10170000F1EE10FA01D4B0EE600A7047F4EE400A30 +:10171000F1EE10FA01D4B0EE600A704700200246E4 +:1017200009E0D04941F8202001EB8001C1F8F02008 +:10173000C1F8E021401C3C28F3DBCB481146016096 +:1017400041608160704700002DE9F04F2DED0C8B5A +:1017500085B000208DF80800C34C20683C2806DBCB +:101760003C3820606068002801D101206060256855 +:10177000DFF8F09209EB850080ED000A09EB8506A1 +:10178000C6ED3C0A86ED781A59F82500D7F7BCFB60 +:1017900021F000410022B74BE4F782FA0AD359F84E +:1017A0002500D7F7B1FB21F000410122AF4BE4F750 +:1017B0008FFA02D8002049F82500D6F8F000D7F7B4 +:1017C000A3FB21F000410022A94BE4F769FA0AD3F8 +:1017D000D6F8F000D7F798FB21F000410122A64B84 +:1017E000E4F776FA02D80020C6F8F000D6F8E00157 +:1017F000D7F78AFB21F0004100229E4BE4F750FA14 +:101800000AD3D6F8E001D7F77FFB21F0004101228F +:10181000994BE4F75DFA02D80020C6F8E00159F8C8 +:101820002500D7F771FB21F0004100221346F4F7A1 +:10183000A5F819D1D6F8F000D7F766FB21F00041E2 +:1018400000221346F4F79AF80ED1D6F8E001D7F744 +:101850005BFB21F0004100221346F4F78FF803D11F +:10186000A068401CA06001E01046A060A0680528A8 +:10187000C0F2EF809FED818A9FED809ADFED7F8A35 +:101880001646104604900390DFED7C9A9FED7BAAEC +:1018900000E0761C372E80F28B806768002F01D124 +:1018A000B24602E0701900F1010ABAF13C0F01DB07 +:1018B000AAF13C0A59F82A0000EE100AF4EE409A08 +:1018C000F1EE10FA02D5F0EE409A049609EB8A0880 +:1018D00098ED780AB4EE40AAF1EE10FA02D5B0EE17 +:1018E00040AA03969FED66BB9FED67CB9FED68DB3B +:1018F00018EE100AD7F708FBCDE9000159F82A00C5 +:10190000D7F702FB53EC1D2BD7F72CFA53EC1C2B0B +:10191000D7F728FA53EC1B2BE4F73CFBDDE9002357 +:10192000E8F74AFAD7F718FB08EE100A19EE100A82 +:10193000D7F7EAFA82468B46D8F8F000D7F7E4FAF0 +:1019400053EC1D2BD7F70EFA53EC1C2BD7F70AFAE2 +:1019500053EC1B2BE4F71EFB52465B46E8F72CFAD0 +:10196000D7F7FAFA09EE100A18EE900AD7F7CCFA70 +:1019700082468B46D8F8E001D7F7C6FA53EC1D2B08 +:10198000D7F7F0F953EC1C2BD7F7ECF953EC1B2BE2 +:10199000E4F700FB52465B46E8F70EFAD7F7DCFAAD +:1019A00008EE900A002F7FF474AFAE427FF471AF5F +:1019B00018EE100AD7F7A8FA41EC1A0B21F00041F3 +:1019C0000122384BE4F784F943D851EC1A0B21F08B +:1019D00000410022304BE4F763F93AD219EE100AC5 +:1019E000D7F792FA41EC190B21F0004101222B4B61 +:1019F000E4F76EF92DD851EC190B21F000410022CB +:101A0000274BE4F74DF924D218EE900AD7F77CFA69 +:101A100041EC190B21F000410122224BE4F758F967 +:101A200017D851EC190B21F0004100221E4BE4F7AE +:101A300037F90ED203980499401AE3F733F91428C2 +:101A400007DAB5EE408AF1EE10FA02DD01208DF8DA +:101A50000800681C20609DF8080005B0BDEC0C8BE8 +:101A6000BDE8F08FA4270120A064012000002240DF +:101A70000000E03F0000F03F0000244000000000B4 +:101A80000000000000408F400000000000003440D3 +:101A9000E6C1631ADCA54C4000005E400000344003 +:101AA00000805B4000003E400040604070B52DED7E +:101AB000028B82B00C46154608EE103A9D4E00216E +:101AC000F1604FF47A7148433C2190FBF1F0D7F775 +:101AD00031F941EC100BFEF7FDFB51EC100BE3F775 +:101AE000E5F830617461B56106F12C00F06106F132 +:101AF0003C00306206F14C007062B8EEC80ADFEDBF +:101B00008B0A80EE200A86ED0A0A10EE100AD7F73B +:101B1000FBF9CDE90001B369726931690FF21C204C +:101B2000D0F74FFB02B0BDEC028B70BD30B52DED90 +:101B3000028B83B000247F4D016829604168696091 +:101B40008068A860204602900190009003222946F8 +:101B5000E86900F07DF80322291D286A00F078F872 +:101B6000032205F10801686A00F072F895ED020A97 +:101B7000D5ED010A95ED001A21EE011A00EEA01A2A +:101B800000EE001A11EE100AD7F7BEF941EC100B67 +:101B9000E8F786F951EC100BD7F7DEF900EE100AE2 +:101BA000D5ED020A80EE800A10EE100AD7F7ACF9E4 +:101BB00041EC100BFDF75CFE53EC102B4FF0004096 +:101BC0005D49D7F7CFF841EC100BFEF783FB51ECE2 +:101BD000100BE3F76BF8696988422DDBA969814234 +:101BE0002ADB032300AA1946E86900F045F8B0EEA5 +:101BF000408A032301AA1946286A00F03DF8F0EE56 +:101C0000408A032302AA1946686A00F035F8D5ED28 +:101C10000A0AB4EE608AF1EE10FA0DD5F4EE608A8D +:101C2000F1EE10FA08D5B4EE600AF1EE10FA03D521 +:101C3000E868401CE86001E02046E860E86829693F +:101C4000884200DB0124204603B0BDEC028B30BD8E +:101C50000388934201D30023038003885B1C038025 +:101C60009BB2934201D300220280028800EB8200E3 +:101C700009684160012070472DE9F0432DED028B8A +:101C800081B004460D4616461F469FED298A4FF047 +:101C90000008B4F9009000EE105AF8EEC08A3A46F7 +:101CA00000F028F880EE280A86ED000A05E0A7F18A +:101CB00001090FFA89F908F101080FFA88F8A84517 +:101CC00011DA04EB890090ED010AD6ED000A30EE3E +:101CD000600A00EE008AB9F1010FE8DBA9F1010901 +:101CE0000FFA89F9E7E788EE280A01B0BDEC028B0C +:101CF000BDE8F08330B49FED0E0A0023B0F9004038 +:101D00000EE024B2002C06D400EB8405D5ED010AC8 +:101D100030EE200A641E24B2002C00D5541E5B1C39 +:101D20001BB28B42EDDB30BC7047000000401C460C +:101D3000000000000C590120DCA54C40535041200C +:101D4000696E69743A2025642C2025642C20256452 +:101D50002C2025660000000010B582B000208DF810 +:101D600000009A4C04F1140314220D2104F50770AD +:101D700000F03CF904F58C7314220D2104F50E706B +:101D800000F034F9E4F704FB002849D0D0F797F9C4 +:101D9000A060DCF7E1FDDDF7F0FAA068017800292A +:101DA00003D0217841F0010121700A21D0F7F2F926 +:101DB000A068D0F7C9F9A068C178002903D02178BC +:101DC00041F0020121704179002903D0217841F0CE +:101DD000040121708179002903D0217841F00801A4 +:101DE000217021780F2902D15521817500E081757C +:101DF000002201210846D0F7D6FBDEF775F9322123 +:101E0000A068D0F749FBA068D0F70FFBD0F7BFFB65 +:101E1000D0F7C3FBD0F718FD0021C0F8801016BD25 +:101E2000002016BD80B5FFF797FF6849486001BDE7 +:101E3000072000F027F9FBE784B0D2F73FFF002826 +:101E400001D0D5F742FE3E2000F026F90646D4F731 +:101E5000ACFE5E4C04F51575B00710D56068D0F87F +:101E60008000D0F715FCD4F7F5FD04F110012846E9 +:101E7000D5F7FCF804F110012846D5F75FF9F00614 +:101E80000AD50020D0F791FB1020DDF75EFF04F1AA +:101E900010012846D5F752F9B0060CD504F110010F +:101EA0002846D5F7F2F80420DDF74FFF04F11001C2 +:101EB0002846D5F743F9700703D56068C06FDDF792 +:101EC0001AF9D2F7B2F96168C96F81421AD0E06895 +:101ED000401CE060052817DB0020E060D2F7A5F980 +:101EE00003466068C26FD0F880100FF2E400D0F7AC +:101EF00068F96068C06FD2F79DF96068C16FC0F87B +:101F0000801001E00020E06004F110012846D5F7C0 +:101F1000A6FD30071FD496E7BDF80100001DD8F7D5 +:101F20000BF9CDF8090002220DF10301D1F723FED0 +:101F300002220DF10101DDF80900801CD1F71BFE22 +:101F400004F11002294600A8D5F714FE00A904F5F3 +:101F50000E70DDF759F900A904F5077000F0DEF8FE +:101F600000287FF470AF9DF8030010F00300D3D079 +:101F70000128F0D104F11002294600A8D5F726FF68 +:101F8000BDF801000028E6D0DDF809009DF8031037 +:101F9000490718D50421ADF803100121ADF801104F +:101FA00002220DF10301D1F7E6FD02220DF101013C +:101FB000DDF80900801CD1F7DEFD00A904F50E70E4 +:101FC000DDF722F9C7E7D8F7CFF8C4E7309B002048 +:101FD00054696D6572204D69736D61746368202565 +:101FE000642025642C202564000000002DE9F041C8 +:101FF00004000D0016001F00D3F7B7FD1F48D0F8EE +:10200000008006E0A04502D1AC20D3F741FDD8F80E +:102010000480B8F1000FF5D119484078F02108424A +:1020200002D09920D3F734FD15484078002801D11B +:10203000D3F795FDD4F786FB1C2200212000D1F7B1 +:1020400067F9A7602661257666206076D3F78DFD57 +:102050000A48006860600948046009484078F02137 +:10206000084202D09920D3F713FD05484078002894 +:1020700001D1D3F774FDBDE8F08100006C6601204A +:10208000F899002010B50446D0F719F8072C01D1B3 +:10209000D0F700FA012010BD10B504001D480078EB +:1020A000002802D0A120D3F7F3FCD4F773FB1A4821 +:1020B0000078401C18490870D3F757FD164880680F +:1020C0004069204209D114488068846112488068C0 +:1020D000082101741048D3F732FD0F488068446925 +:1020E0000D488068002141610B480078401E0A4974 +:1020F000087009484078F021084202D09920D3F7AF +:10210000C7FC05484078002801D1D3F728FD2000FE +:1021100010BD00BFB6660120F899002038B5040054 +:102120000D00607E662802D08220D3F7B1FCD4F780 +:1021300009FBD3F71AFDE06800280FD10E4840785C +:10214000F021084202D09920D3F7A2FC0A48407837 +:10215000002801D1D3F703FD01200BE006480078E9 +:10216000401C0549087029002000E4F76FF9D4F7F6 +:1021700052FB002032BD00BFF89900200FB480B59B +:102180000FF23420D0F71DF883480021817001211F +:10219000C17001710021417181710170CFF78FFF12 +:1021A000007C000601D4012000E0012002BC5DF8A3 +:1021B00014FB80B50FF20820D0F703F8CFF77FFFAC +:1021C000007C000616D57448002181700121C17081 +:1021D0000171002141718171417801290AD10021E9 +:1021E00041700E220A210120D6F76CFB032801D191 +:1021F000032002BD012002BD38B568488169497AD3 +:10220000C069407A4518CFF75AFF007C000631D5E7 +:10221000614CA078002802D10120A07032BD607806 +:10222000EDB2002D06D0012824D10120E07000205D +:1022300060701FE0002811D1E078012806D10E223D +:102240000A210120D6F73EFB0020E0700E220A2171 +:102250000020D6F737FB0120607032BD94F90000F2 +:10226000002802D0022803D004E000F005F801E0C5 +:1022700000F034F8012032BD38B5474CE06890F9E1 +:1022800068502079012809D1512D07DA00202071EA +:10229000012000F07EF8002000F06EF8B4F908206C +:1022A000954217DBA079401CA07140B2022813DBD5 +:1022B000022020700020A07129460FF20C10CFF7E9 +:1022C00080FF78202081012000F063F8012000F0D9 +:1022D00053F801E00020A071012032BD38B52E4C2A +:1022E000E06890F96850502D16DA6079401C6071F2 +:1022F00040B2022812DB00202070012000F049F8D3 +:10230000002000F039F800206071502229460FF2B9 +:10231000C400CFF756FF01E000206071012032BDFC +:1023200010B50FF2BC00CFF74CFF1B4CD6F7C8FA24 +:102330002061D0F789FAE0600020207020691849F8 +:10234000C0F8401200F510701649416016498160CE +:102350000FF20D01C16015490161012010BD00009F +:10236000014600200C4A126992F83122002A02D05C +:10237000002900D109E070470D49012802D1012050 +:10238000087070470020087070470A4890F90000F4 +:102390007047084908707047749A00200060002058 +:1023A0007D210308B3210308F9210308418C0008AB +:1023B00095660120946601205374617274000000D8 +:1023C00053746F7000000000436C6F7365202564C8 +:1023D000202564004F70656E202564202564000070 +:1023E000496E6974000000009748002141608160D7 +:1023F000C1600161416181610170012141707047DB +:1024000070B52DED068BF0EE608AB0EE419A002497 +:102410008D4D2878012800F010816878002852D16D +:102420002E69002E00F0A880D5ED010A30EE600A7A +:1024300010EE100AD6F768FD21F00041D6F78CFDAA +:1024400009EE900AB0EE680AD5ED020A30EE600A95 +:1024500010EE100AD6F758FD21F00041D6F77CFDAA +:102460000AEE100AB0EE490AD5ED030A30EE600A12 +:1024700010EE100AD6F748FD21F00041D6F76CFDAA +:1024800000EE100AF0EE040AF4EE609AF1EE10FA93 +:1024900016D5B4EE60AAF1EE10FA11D5B4EE600ACA +:1024A000F1EE10FA0CD5701C28610728C0F2C58027 +:1024B00020466860A860E860286101206870BCE080 +:1024C00020462861B9E0686900284CD128690028B5 +:1024D00052D0D5ED010A30EE600A10EE100AD6F7A0 +:1024E00013FD21F00041D6F737FD09EE900AB0EE5A +:1024F000680AD5ED020A30EE600A10EE100AD6F72F +:1025000003FD21F00041D6F727FD0AEE100AB0EED8 +:10251000490AD5ED030A30EE600A10EE100AD6F72C +:10252000F3FC21F00041D6F717FD00EE100A20461B +:10253000DFED440AF4EE609AF1EE10FA00DB0120C0 +:10254000B4EE60AAF1EE10FA00DB401CB4EE600AB3 +:10255000F1EE10FA00DB401C02286EDB01206861FE +:102560002046286169E0012867D12E69322E02DAFF +:10257000701C286161E00DD185ED010AB0EE680A9A +:1025800085ED020AB0EE490A85ED030A2869401C70 +:10259000286152E0AE69322E4ADAD5ED010A30EEFA +:1025A000600A10EE100AD6F7AFFC21F00041D6F712 +:1025B000D3FC09EE900AB0EE680AD5ED020A30EEBF +:1025C000600A10EE100AD6F79FFC21F00041D6F702 +:1025D000C3FC0AEE100AB0EE490AD5ED030A30EE4C +:1025E000600A10EE100AD6F78FFC21F00041D6F7F2 +:1025F000B3FC00EE100A2046711CA961DFED110A40 +:10260000F4EE609AF1EE10FA00DB0120B4EE60AA5D +:10261000F1EE10FA00DB401CB4EE600AF1EE10FAA5 +:1026200000DB401C022808DB01202870044604E07F +:10263000204628616861A86168702046BDEC068B61 +:1026400070BD000001002040F46101208548002198 +:102650000160416081607047F0B52DED0E8B81B057 +:10266000B0EE408AF0EE608AB0EE419A0027B0EEFC +:10267000680A10EE100AD6F747FC41EC1D0BB0EECD +:10268000480A10EE100AD6F73FFC41EC1E0B754EBF +:1026900021F000413A46744BE3F702FB18D251ECAB +:1026A0001D0B21F00041E3F7FBFA11D2B0EE490A0D +:1026B00010EE100AD6F728FC21F000413A466A4B8A +:1026C000E3F7EEFA04D2104630607060B060C5E007 +:1026D0009FED66AB9FED67BB9FED68CB3068D6F78B +:1026E00013FC04460D4653EC1E2B51EC1C0BD6F785 +:1026F00039FB53EC1B2BD6F735FB53EC1A2BE3F7C6 +:1027000049FC22462B46E7F757FBD6F725FC09EE96 +:10271000900AC6ED009A7068D6F7F6FB04460D469F +:1027200053EC1D2B51EC1C0BD6F71CFB53EC1B2B55 +:10273000D6F718FB53EC1A2BE3F72CFC22462B465A +:10274000E7F73AFBD6F708FC0DEE100A86ED01DA42 +:10275000B068D6F7D9FB04460D46B0EE490A10EE34 +:10276000100AD6F7D1FB53EC1C2BD6F7FBFA53EC2F +:102770001B2BD6F7F7FA53EC1A2BE3F70BFC224688 +:102780002B46E7F719FBD6F7E7FB09EE100A86EDB3 +:10279000029A19EE900AD6F7B7FB21F0004141ECFE +:1027A0001B0B1DEE100AD6F7AFFB41EC180B21F006 +:1027B000004141EC1C0B19EE100AD6F7A5FB41ECC9 +:1027C0001A0B53EC1B2B51EC1C0BE7F7F5FA53ECEF +:1027D0001A2B23F00043E7F7EFFAD6F7BDFB00EE24 +:1027E000100ADFED280AB4EE600AF1EE10FA2EDBD3 +:1027F00051EC1A0B21F000410122234BE3F768FA58 +:1028000025D8BBEE090AF4EE409AF1EE10FA0BD58A +:1028100051EC180B21F0004153EC1A2B23F000432C +:10282000E3F73EFA00D201279FED180AF4EE409A32 +:10283000F1EE10FA0BDB51EC180B21F0004153ECD8 +:102840001A2B23F00043E3F72BFA00D20227002FC4 +:1028500003D0002030607060B060384601B0BDEC3D +:102860000E8BF0BD246501200000E03F0000000059 +:1028700000408F400000000000004E40E6C1631A97 +:10288000DCA54C4001004842000044400100C84122 +:1028900080B50FF2A410CFF794FC6248002141806C +:1028A000017001BD0FB438B59DF81240BDF813504A +:1028B0002A4621460FF28C10CFF783FC1E220021FE +:1028C0000846D5F7FFFF022805D10FF29810CFF781 +:1028D00078FC022010E05348406890F8B0140029BA +:1028E00009D190F8B104002805D1FFF7D1FF29469E +:1028F000204600F0DFF8012032BC5DF814FB80B503 +:102900000FF27010CFF75DFC00F0BAF91E22002123 +:102910000120D5F7D7FF032801D1032002BD41488C +:1029200000210170012002BD30B58BB000A8D6F7A0 +:102930002FF800A890EC030A00F0DAF80446012C06 +:102940000ED1384D95F90000002809D101202870DA +:102950000FF22C10CFF735FC6C80012000F030F81E +:1029600001200BB030BD80B50FF22810CFF729FC45 +:10297000D5F7A6FF2B49486000224A802A49C0F8B3 +:10298000C01400F2C04029494160294981600FF21A +:102990001101C1600FF241010161012002BD00007F +:1029A0002048406890F8B014002905D190F8B1048F +:1029B000002801D1002070471E4890F900007047A0 +:1029C0001C490870704780B51648002141800846B0 +:1029D000FFF7F6FF012002BD70B504460D46114E0B +:1029E00071880FF2BC00CFF7ECFB40F24910297858 +:1029F00010FB014101220A70297810FB01414A7045 +:102A0000297810FB01411E228A70297810FB0140B1 +:102A10007188A0F803102878401C2870BDE8704029 +:102A2000D1E70000A8650120A5280308FF280308B6 +:102A300029290308966601202323232043472049A0 +:102A40004E49540023232320434720534644205318 +:102A50005452203A2025642C204455203A202564E5 +:102A6000000000002323234347204641494C2041D6 +:102A70004343000023232343472053544F50000077 +:102A80002323232043475F41424E4F524D414C2068 +:102A900044540000232323204347204D49000000D5 +:102AA0002323232043472041504D5347203A2025DC +:102AB0006400000038B50C466F4D0C2200212846FA +:102AC000D0F726FC1822002105F12400D0F720FCC5 +:102AD0001422002105F10C00D0F71AFC0020E86355 +:102AE0002C840FF2AC10CFF76CFB012032BD00003C +:102AF00070B5614C84ED000AC4ED010A84ED021A40 +:102B00000C255E4EE06B05FB006080EC030A18228A +:102B1000002104F12400D0F7FBFB00201AE005FBA4 +:102B200000F18A19D2ED000A30EE200A84ED090A7C +:102B3000891994ED0A0AD1ED010A30EE200A84EDDC +:102B40000A0A94ED0B0AD1ED020A30EE200A84ED58 +:102B50000B0A401C94ED090A6428E0DBDFED450A0E +:102B600080EE200A84ED090A94ED0A1A81EE201AFB +:102B700084ED0A1AD4ED0B1AC1EEA01AC4ED0B1A9B +:102B8000002020E005FB00F18A1992ED002A32EEC8 +:102B9000402A42EE022AC4ED0C2A891991ED012A3D +:102BA00032EE412AD4ED0D2A42EE022AC4ED0D2A5E +:102BB00091ED022A32EE612AD4ED0E2A42EE022A6B +:102BC000C4ED0E2A401CD4ED0C2A6428DADB82EE18 +:102BD000A00A84ED0C0A94ED0D1A81EE201A84ED02 +:102BE0000D1AD4ED0E1AC1EEA00AC4ED0E0AF7EECE +:102BF000001AB4EE610AF1EE10FA2FD5B7EE000A12 +:102C0000B4EE401AF1EE10FA28D5F4EE400AF1EED7 +:102C100010FA23D56069401C606100EB4011480048 +:102C20004EF65B2188421CD300206061208B411C42 +:102C3000218389B20FF26400CFF7C3FA208B218C75 +:102C400088420ED3E06900280BD10FF26400CFF761 +:102C5000B8FA0120E0610020208302E000206061DA +:102C60002083E06B401CE063652801DB0020E0630B +:102C7000E06970BD0000C842085D0120500E0120CF +:102C800080B50FF23C00CFF79CFA012002BD000096 +:102C900023232320414D5F494E4954002323232001 +:102CA000414D202564202A20314D696E000000002E +:102CB00023232320414D5F41425F44540000000024 +:102CC00023232320414D5F46494E00000FB400B539 +:102CD00091B00020019000900D220146D5F7F2FD41 +:102CE000022801D102204AE0754A01201060BDF897 +:102CF0004B0001909DF84A000090012803D14FF449 +:102D00008070009015E0022803D14FF4007000900D +:102D10000FE0032803D14FF48060009009E00428FD +:102D200003D14FF40060009003E0052801D110208A +:102D3000009000A901A8FDF7E7FAAA208DF82E005F +:102D40003C208DF82F0001208DF8300000208DF8F8 +:102D50000800032003900DF111000BA91822D0F7F1 +:102D6000CFFE0A208DF810000020ADF82A0002A83E +:102D7000D5F7A2FE002801D1022000E0012011B009 +:102D80005DF814FB00B58FB0AA208DF802003C203E +:102D90008DF8030001208DF804008DF81800032041 +:102DA00007900DF1210000A91822D0F7A9FE0A20F2 +:102DB0008DF820000020ADF83A0006A8D5F77CFE7B +:102DC000002801D1032002E0FDF780FB01200FB0B5 +:102DD00000BD30B597B000A8D5F7DAFD0BA8F0F725 +:102DE000BFF9374CBDF83A002071204600A991EC9C +:102DF000030AFDF787FB0546607A85420ED0022D57 +:102E000005D1012000F03CF80120207206E0012DE0 +:102E100004D1012000F034F80220207265720120F4 +:102E200017B030BD80B5D5F74BFD2549C8600022ED +:102E30000A722449C0F8181200F506702249416050 +:102E4000224981600FF20D01C1600FF23D01016165 +:102E5000012002BD1A48C06890F80902002801D17B +:102E60000020704708E080B515480021017208462F +:102E700000F006F8012002BD154890F900007047E7 +:102E8000134908707047000018B440F249120B78DB +:102E900012FB030301241C700B7812FB03035C700C +:102EA0000B7812FB03030D249C700B7812FB0300BC +:102EB000034A127AC2700878401C087011BCD2E72D +:102EC00010640120CD2C0308852D0308D32D0308A1 +:102ED000AA6601200FB410B5A0B09DF88A00584929 +:102EE000087001208DF88C00AA208DF88A003C2003 +:102EF0008DF88B0000208DF80000032001900DF16B +:102F0000090022A91822D0F7FBFD0A208DF808003D +:102F100000A8D5F7D1FD002805D10FF27010CFF72A +:102F200050F9022014E009A8E6F70BF9454C5822A5 +:102F300000212046D0F7ECF90021A165E165582277 +:102F400009A9D0F718FE0FF25810CFF73AF901206F +:102F500020B010BC5DF814FB80B50A210320DCF71B +:102F600063FC032801D1032002BD0FF24010CFF70C +:102F700028F9012002BD80B5D5F7A2FC3049486090 +:102F80003149C0F8001100F58070304941600FF2FE +:102F90006D0181600FF20D01C1600FF2B501016199 +:102FA000012002BD10B594B0254C606890F8F10086 +:102FB00000281BD02078002818D0012013901290F0 +:102FC000204984B068465822D0F7AAFD0FBCDDF72F +:102FD000B5FE0146C9B22078814207DB0FF2D80066 +:102FE000CFF7EFF800F005F8012000E0002014B062 +:102FF00010BD1348002101700120704700B597B043 +:1030000000A8E6F79EF80F48816D491C81650129EB +:1030100002D10099C1650FE033290DD300218165EC +:10302000C16D009A914207D1582200A9D0F7A3FDA3 +:103030000FF29800CFF7C5F8012017B000BD0000CF +:10304000D865012070560120D52E0308592F03089A +:1030500010B50C4640F24911227811FB02020123FF +:103060001370227811FB02025370227811FB0202C6 +:1030700006239370227811FB02000121C170FFF733 +:10308000B8FF2078401C207010BD000050443A204A +:103090005065646F4F70656E4661696C20535300D4 +:1030A00050443A20534320535441000050443A20A6 +:1030B00053432053544F000050443A2044696666FD +:1030C000537465704F7665722025640050443A2031 +:1030D0005343205245534554000000003C0A560A11 +:1030E000700A8B0AA60AC10ADD0AF80A150B310B11 +:1030F0004E0B6B0B880BA50BC30BE10B000C1E0CCE +:103100003D0C5D0C7C0C9C0CBD0CDD0CFE0C1F0DF5 +:10311000410D630D850DA80DCB0DEE0D120E360E73 +:103120005A0E7F0EA40ECA0EEF0E160F3C0F630F41 +:103130008B0FB30FDB0F03102C1056108010AA104A +:10314000D41000112B1157118311B011DE110B1285 +:10315000391268129712C712F712271359138A13DC +:10316000BC13EF13221455148914BE14F31429153B +:103170005F159515CD1504163D167616AF16E91692 +:1031800024175F179B17D817151852189118CF18C6 +:103190000F194F199019D119131A561A9A1ADE1AC3 +:1031A000221B681BAE1BF51B3D1C851CCE1C181D6D +:1031B000621DAD1DF91D461E941EE21E311F811FAA +:1031C000D11F23207520C8201C217121C7211D2259 +:1031D0007422CD2226238023DA2336249324F1245B +:1031E0004F25AF250F267126D32636279B2700288B +:1031F0006728CE283629A0290B2A762AE32A512BC4 +:10320000C02B302CA12C132D862DFB2D712EE82EDA +:10321000602FD92F5330CF304C31CA314A32CA32A5 +:103220004C33D0335434DA346235EA3574360037EF +:103230008D371B38AA383C39CE39623AF83A8F3B81 +:10324000273CC13C5D3DFA3D983E383FDA3F7E4029 +:103250002341CA4172421C43C84376442545D645A2 +:1032600089463D47F447AC486649224ADF4A9F4BAE +:10327000614C244DEA4DB14E7B4F46501451E35101 +:10328000B55289535E5436551156ED56CB57AC584E +:103290008F59745A5C5B465C325D215E125F05603B +:1032A000FB60F361EE62EB63EB64ED65F266FA6777 +:1032B0000469116A206B336C486D5F6E7A6F97708A +:1032C000B871DB7201742A7556768577B778EC7918 +:1032D000247B5F7C9D7DDF7E248000003D0A580AB0 +:1032E000720A8D0AA80AC30ADF0AFB0A170B330BFE +:1032F000500B6D0B8A0BA70BC50BE30B020C210CBB +:10330000400C5F0C7F0C9F0CBF0CE00C010D220DDC +:10331000430D650D880DAA0DCD0DF10D140E380E5F +:103320005D0E820EA70ECC0EF20E180F3F0F660F29 +:103330008D0FB50FDD0F06102F1059108210AD1034 +:10334000D71002112E115A118611B311E1110E126C +:103350003D126B129A12CA12FA122B135C138D13C0 +:10336000BF13F213251459148D14C114F6142C151F +:1033700062159915D015081640167916B316ED1674 +:10338000281763179F17DB17181856189418D318A7 +:10339000131953199419D519181A5A1A9E1AE21AA0 +:1033A000271B6C1BB31BF91B411C891CD21C1C1D49 +:1033B000671DB21DFE1D4B1E981EE71E361F861F81 +:1033C000D61F28207A20CD2021217621CC2122222F +:1033D0007A22D2222B238523E0233C249924F6242D +:1033E0005525B52515267726D9263C27A127062859 +:1033F0006D28D4283D29A629112A7D2AE92A572B90 +:10340000C62B362CA82C1A2D8D2D022E782EEF2EA1 +:10341000672FE02F5B30D6305331D2315132D23268 +:103420005433D8335C34E2346A35F2357D360837AC +:1034300095372338B3384439D7396B3A003B973B3B +:10344000303CCA3C663D033EA23E423FE43F8740DB +:103450002D41D3417C422643D24380442F45E04551 +:1034600093464847FE47B64871492D4AEB4AAA4B56 +:103470006C4C304DF54DBD4E864F52502051EF51A2 +:10348000C15295536B5443551D56FA56D857B958E7 +:103490009C59825A695B535C405D2F5E205F1360CC +:1034A00009610162FC62FA63FA64FC6501670968FC +:1034B0001369206A306B426C586D6F6E8A6FA8700A +:1034C000C871EB7212743B7567769677C878FD7990 +:1034D000367B717CB07DF17E36807F810FB480B504 +:1034E000212200210846D5F7EDF9022801D102205A +:1034F0000EE0212201210020D5F7E4F9022801D1B4 +:10350000022005E02120DBF7F7FEFDF705FF012093 +:1035100002BC5DF814FB80B5212200210120D5F703 +:10352000D1F9022801D1022002BD21220121084641 +:10353000D5F7C8F9022801D1022002BD012002BD41 +:10354000F0B52DED028B8BB04A48846BA069E16821 +:103550004518002600A8D5F71BFA9FED478B039866 +:10356000D5F7D2FC53EC182BE2F714FDE1F79EFBE4 +:1035700028800498D5F7C8FC53EC182BE2F70AFD15 +:10358000E1F794FB68800598D5F7BEFC53EC182B47 +:10359000E2F700FDE1F78AFBA8803C4F387800286D +:1035A00009D1381D03A9D1EC031A00A991EC030A33 +:1035B000FDF7E0FE0646012E02D10120387006E03C +:1035C0003878002803D10020B880F88038810020A6 +:1035D000E880288168810120A0770BB0BDEC028BC8 +:1035E000F0BD80B5D5F76CF9254908602549C0F8CC +:1035F000381500F2385024494160254981600FF2A6 +:103600001101C1600FF235010161012002BD00000E +:103610001B48006890F82905002801D10020704758 +:1036200005E080B5002000F006F8012002BD194831 +:1036300090F90000704717490870704718B440F2BD +:1036400049120B7812FB030301241C700B7812FB48 +:1036500003035C700B7812FB030321249C700B782E +:1036600012FB03000022C2700878401C087011BCD5 +:10367000D7E700000060002089AD84FA0A74313F6A +:1036800030660120DD34030817350308DC640120AF +:1036900041350308A46601200FB480B51822082123 +:1036A0000020D5F70FF9022801D102200CE03C4898 +:1036B000002101709DF8091041609DF80A10816099 +:1036C0009DF80B10C160012002BC5DF814FB80B5B1 +:1036D000334800210170182208210120D5F7F2F8A3 +:1036E000032801D1032002BD012002BD10B52C4CDE +:1036F0002078012801D1002010BD64206168414379 +:10370000E268012A0FD101291CDAA1684843002888 +:1037100018D4012000F041F8012020700FF2D000F1 +:10372000CEF74FFD0EE0012903DAA16848430028D7 +:1037300008D5012000F031F8012020700FF2B80008 +:10374000CEF73FFD012010BD80B5D5F7B9F815497A +:1037500008601549C0F8D01300F574701349416032 +:10376000134981600FF20D01C1600FF24D0101613B +:10377000012002BD0B48006890F8C103002801D168 +:103780000020704705E080B5002000F006F8012019 +:1037900002BD084890F9000070470649087070475C +:1037A000306401203866012099360308CF360308BB +:1037B000ED360308AD66012018B440F249120B78CB +:1037C00012FB030301241C700B7812FB03035C70D3 +:1037D0000B7812FB030318249C700B7812FB030078 +:1037E0000122C2700878401C087011BCCBE70000B1 +:1037F00054656D7020496E0054656D70204F75746E +:10380000000000000FB480B50FF21810CEF7D9FCFD +:103810000F2201210020D5F755F8022805D10FF21B +:103820001410CEF7CEFC022000E0012002BC5DF8AF +:1038300014FB80B50FF20810CEF7C3FC0F22012154 +:103840000846D5F73FF8032805D10FF20410CEF74C +:10385000B8FC032002BD012002BD80B5012000F0AC +:1038600035F8002000F02BF8012002BD80B50FF2E2 +:10387000EC00CEF7A6FCD5F723F8244908602449CC +:10388000C0F8681200F51A7022494160224981602F +:103890000FF20D01C1600FF23D010161012002BD77 +:1038A0001A48006890F85902002801D1002070479A +:1038B00008E080B5002000F009F8012002BD17499A +:1038C00008707047164890F9000070471449087056 +:1038D0007047000018B440F249120B7812FB030342 +:1038E00001241C700B7812FB03035C700B7812FB35 +:1038F00003030F249C700B7812FB0300074A127815 +:10390000C2700878401C087011BCD2E72066012004 +:1039100005380308333803085B3803089C66012028 +:103920009B6601205374617274204779726F205432 +:10393000656D70005374617274204661696C00009B +:103940004779726F2054656D702053746F7000005A +:1039500053746F70204661696C0000004779726F84 +:103960002054656D7020496E697400005248002132 +:10397000017041608160704770B5044600254E4E6D +:10398000307800282CD12068D5F7BEFA21F000410C +:103990002A464A4BE2F784F919D26068D5F7B4FA9F +:1039A00021F000412A46454BE2F77AF90FD2A06890 +:1039B000D5F7AAFA21F000410122414BE2F788F93C +:1039C00005D87068401C70602846B06004E0B0689C +:1039D000401CB060284670607068052862DB28E0F3 +:1039E000032837D12068D5F78FFA21F000412A4605 +:1039F000324BE2F755F917D26068D5F785FA21F016 +:103A000000412A462D4BE2F74BF90DD2A068D5F7BD +:103A10007BFA21F000410122294BE2F759F903D842 +:103A20007068401C706001E028467060706805286E +:103A300040DB94ED020AB5EE400AF1EE10FA03DD28 +:103A400001252846307002E002252846307000200B +:103A500070602FE0012801D002282BD12068D5F713 +:103A600053FA21F000410122144BE2F731F913D946 +:103A70006068D5F749FA21F0004101220F4BE2F7C7 +:103A800027F909D9A068D5F73FFA21F000412A4665 +:103A90000B4BE2F705F903D2B068401CB06001E0BF +:103AA0001046B060B068052804DB03252846307056 +:103AB0000020B060284670BD306501200000F83F4E +:103AC000000021400FB480B5192200210846D4F728 +:103AD000F9FE022801D102200DE0BDF80E309DF95B +:103AE0000D209DF90C10BDF80A00FDF7DFFF3F48DF +:103AF00000214170012002BC5DF814FB80B5192241 +:103B000000210120D4F7DEFE032801D1032002BDED +:103B1000012002BD38B50024344D95F9010000287C +:103B200003D16868FEF702F8044664B2002C07D09F +:103B3000012000F039F8204600F039F801206870C3 +:103B4000012032BD10B5294CD4F7BAFEA060CEF7E3 +:103B50007BFE606000202070A0682549C0F8F81343 +:103B600000F57E7023494160234981600FF20D0109 +:103B7000C1600FF241010161012010BD1B48806846 +:103B800090F8E903002801D10020704708E080B5D3 +:103B9000164800210170084600F006F8012002BD19 +:103BA000164890F9000070471449087070470F4993 +:103BB0000870704718B440F249120B7812FB0303E7 +:103BC00001241C700B7812FB03035C700B7812FB52 +:103BD000030319249C700B7812FB0300034A12782C +:103BE000C2700878401C087011BCD0E7F464012052 +:103BF000C53A0308FD3A0308153B0308A9660120EE +:103C00002DE9F84F04000D0016001F00DDF8288094 +:103C1000DDF82C90DDF830A039480078002802D17A +:103C2000A520D1F735FFD2F7B5FD3648D0F80CB056 +:103C300006E0A34502D1AA20D1F72AFFDBF800B0A5 +:103C4000BBF1000FF5D1502200212000CFF760FB1F +:103C5000642084F84C006674207C2B490978084362 +:103C6000207484F841A0002D00D02562C4F828807B +:103C7000C4F824904A46CD214046CFF749FB19EBC2 +:103C800008085FEAD8085FEAC808B8F150080020C1 +:103C9000C8F800005FF08070C8F844001B48C8F8FE +:103CA0004000C8F84C707FF00200C8F824001848A3 +:103CB000C8F82C001748C8F830001748C8F8340076 +:103CC0001648C8F804001648C8F808001548C8F88F +:103CD0000C001548C8F810001448C8F8140014481F +:103CE000C8F818001348C8F81C001348C8F820008A +:103CF000C4F804802000D2F729FEBDE8F18F00BF90 +:103D0000B7660120F8990020B26601200F5B000819 +:103D10000100CCCC0200CCCC0300CCCC0400CCCC39 +:103D20000500CCCC0600CCCC0700CCCC0800CCCC19 +:103D30000900CCCC0A00CCCC0B00CCCC4B480021E9 +:103D4000017041608160704770B506460024474DA0 +:103D5000287800282BD13068D5F7D6F821F000411B +:103D60002246434BE1F79CFF18D27068D5F7CCF898 +:103D700021F0004122463E4BE1F792FF0ED296ED34 +:103D8000020ADFED390AB4EE600AF1EE10FA05DB43 +:103D90006868401C68601046A86004E0A868401C81 +:103DA000A860104668606868052853DB27E0022891 +:103DB0002BD13068D5F7A8F821F0004122462C4BD2 +:103DC000E1F76EFF16D27068D5F79EF821F000413A +:103DD0002246274BE1F764FF0CD296ED020ADFED95 +:103DE000220AB4EE600AF1EE10FA03DB6868401CA8 +:103DF000686001E0104668606868052832DB0124CD +:103E000020462870104668602CE001282AD13068CE +:103E1000D5F77AF821F000410122154BE1F758FF60 +:103E200012D97068D5F770F821F000410122104BCB +:103E3000E1F74EFF08D996ED020AF2EE020AB4EE5F +:103E4000600AF1EE10FA03D5A868401CA86001E0F2 +:103E50002046A860A868052804DB022420462870B4 +:103E60000020A860204670BD010010414C64012074 +:103E70000000E03F0FB480B5102201210020D4F7EC +:103E800021FD022801D1022002E0FEF7DFFB012024 +:103E900002BC5DF814FB80B5102201210846D4F75E +:103EA00011FD032801D1032002BD012002BD30B560 +:103EB0008BB000A8D4F76CFD03A890EC030AFEF7C2 +:103EC000CBFB0446324D2878A0420FD0012C05D1FF +:103ED000012000F03DF80120687006E0022C04D1BA +:103EE000012000F035F8022068702C7001200BB022 +:103EF00030BD80B5D4F7E4FC2549486000224A7003 +:103F00002449C0F8901200F52470234941602349E8 +:103F100081600FF21101C1600FF23D0101610120CA +:103F200002BD00001A48406890F88102002801D1C3 +:103F30000020704708E080B5154800214170084610 +:103F400000F006F8012002BD154890F90000704706 +:103F5000134908707047000018B440F249120B78FA +:103F600012FB030301241C700B7812FB03035C702B +:103F70000B7812FB030310249C700B7812FB0300D8 +:103F8000034A5278C2700878401C087011BCD2E70E +:103F9000D0650120753E0308973E0308AF3E030835 +:103FA000A56601200FB480B5202200210846D4F771 +:103FB00089FC022801D1022005E0FEF715FA3048FD +:103FC00000210170012002BC5DF814FB80B52022A5 +:103FD00000210120D4F776FC022801D1022002BD85 +:103FE000274800210170012002BD70B58CB0254822 +:103FF000446BA069E168451800A8D4F7C9FC204EBD +:104000003078012801D100200BE000A890EC030AD1 +:10401000FEF7F6F9012803D101202870A07730704F +:1040200001200CB070BD80B5D4F74AFC1649086079 +:104030001649C0F8101500F2105015494160154995 +:1040400081600FF21101C1600FF251010161012085 +:1040500002BD00000C48006890F80105002801D15D +:104060000020704705E080B5002000F006F8012030 +:1040700002BD094890F90000704707490870704771 +:104080009F6601200060002024660120A53F0308F0 +:10409000CD3F0308EB3F03089E66012018B440F2B1 +:1040A00049120B7812FB030301241C700B7812FBDE +:1040B00003035C700B7812FB030320249C700B78C5 +:1040C00012FB03000022C2700878401C087011BC6B +:1040D000C9E700000FB480B5072200210846D4F7D5 +:1040E000F1FB022801D1022004E09DF80800FBF753 +:1040F00077FD012002BC5DF814FB80B5072200218A +:104100000120D4F7DFFB032801D1032002BD0120E9 +:1041100002BD10B582B000208DF80000314C00A91E +:104120006068FBF779FD002806D0012000F03BF81D +:104130009DF8000020706070012016BD10B5294C5C +:10414000D4F7BEFBA060CEF77FFB6060002020703C +:10415000A0682549C0F8281100F5947023494160F2 +:10416000234981600FF20D01C1600FF2410101612D +:10417000012010BD014600201A4A926892F81921C8 +:10418000002A02D0002900D109E0704780B5154807 +:1041900000210170084600F006F8012002BD154814 +:1041A00090F90000704713490870704718B440F246 +:1041B00049120B7812FB030301241C700B7812FBCD +:1041C00003035C700B7812FB030307249C700B78CD +:1041D00012FB0300034A1278C2700878401C087072 +:1041E00011BCD3E7AC640120D5400308FB400308B1 +:1041F00013410308936601200FB480B515220021F6 +:104200000846D4F75FFB022801D1022002E0FFF745 +:1042100095FD012002BC5DF814FB80B5152200213C +:104220000120D4F74FFB032801D1032002BD012058 +:1042300002BD10B531484068FFF786FD044664B200 +:10424000002C05D0012000F037F8204600F037F8A8 +:10425000012010BD10B5294CD4F732FBA060CEF779 +:10426000F3FA606000202070A0682549C0F8581358 +:1042700000F5567023494160234981600FF20D011A +:10428000C1600FF241010161012010BD1B4880682F +:1042900090F84903002801D10020704708E080B55C +:1042A000164800210170084600F006F8012002BD02 +:1042B000164890F9000070471449087070470F497C +:1042C0000870704718B440F249120B7812FB0303D0 +:1042D00001241C700B7812FB03035C700B7812FB3B +:1042E000030315249C700B7812FB0300034A127819 +:1042F000C2700878401C087011BCD0E7C46401206B +:10430000F94103081B420308334203089966012060 +:104310000FB480B5292201210020D4F7D3FA022856 +:1043200001D1022002E0FDF7F9F9012002BC5DF89D +:1043300014FB80B5292201210846D4F7C3FA0328CB +:1043400001D1032002BD012002BD00B58BB000A841 +:10435000D4F71EFB03A890EC030AFDF7F5F901283A +:1043600007D12B4801210170084600F031F8FDF714 +:10437000D5F901200BB000BD80B5D4F7A1FA2549CD +:1043800008602549C0F8781600F27860234941603A +:10439000234981600FF20D01C1600FF23D010161FF +:1043A000012002BD1B48006890F86906002801D171 +:1043B0000020704708E080B51548002101700846CC +:1043C00000F006F8012002BD164890F90000704781 +:1043D000144908707047000018B440F249120B7875 +:1043E00012FB030301241C700B7812FB03035C70A7 +:1043F0000B7812FB030329249C700B7812FB03003B +:10440000034A1278C2700878401C087011BCD2E7C9 +:10441000A7660120346601201143030833430308D3 +:104420004B430308A66601200FB480B51722002174 +:104430000846D4F747FA022801D1022002E0FFF72C +:1044400095FA012002BC5DF814FB80B5172200210B +:104450000120D4F737FA032801D1032002BD01203F +:1044600002BD10B531484068FFF786FA044664B2D1 +:10447000002C05D0012000F037F8204600F037F876 +:10448000012010BD10B5294CD4F71AFAA060CEF760 +:10449000DBF9606000202070A0682549C0F8A813EF +:1044A00000F56A7023494160234981600FF20D01D4 +:1044B000C1600FF241010161012010BD1B488068FD +:1044C00090F89903002801D10020704708E080B5DA +:1044D000164800210170084600F006F8012002BDD0 +:1044E000164890F9000070471449087070470F494A +:1044F0000870704718B440F249120B7812FB03039E +:1045000001241C700B7812FB03035C700B7812FB08 +:10451000030317249C700B7812FB0300034A1278E4 +:10452000C2700878401C087011BCD0E7E864012014 +:10453000294403084B44030863440308A866012088 +:1045400010B584B0D2F759FADAF76CF9FDF76AFCC6 +:104550001B4C022002904FF4806001900094194B94 +:1045600064220FF2700104F5B0505030FFF748FBA1 +:10457000022002904FF48050019004F5806000907A +:10458000114B4B220FF2580104F5B050FFF738FBE6 +:10459000022002904FF40070019004F5A0500090AA +:1045A0000A4B0A220FF2440104F5B550FFF728FB2D +:1045B000074801210170D1F7B0FA002004B010BD06 +:1045C000B8BE0020C3E40208391E0308311E0308E8 +:1045D000B1660120534820436F6D5461736B000036 +:1045E0005348204D61696E5461736B00506F77655D +:1045F000724D616E61676572205461736B000000DB +:104600007878787830303031303031303131313184 +:104610003131313131313131303078317878787829 +:104620000000000078787878313031317878787807 +:1046300078787878787878787878787878787878FA +:1046400078787878000000003131313131303178BC +:1046500078787878787878787878787878787878DA +:1046600078787878787878780000000030313030C9 +:1046700030313131317878787830303000000000D6 +:104680003131313031787878787878787878783056 +:1046900000000000313131313178787878787878DD +:1046A00078787878000000002DE9F04500F10801E5 +:1046B000026801EB8202406800F0010340084000FC +:1046C00002EB80000025AA460024A04601263746BA +:1046D00002E00027F44511D1824201D1BDE8F08506 +:1046E00052F804CB03B1CC4452F804EBE644F1E7B2 +:1046F0000D686D18091D51F804ABAA445545F7D053 +:1047000066B115F9014B0026012705E00D686D180B +:10471000091D51F804ABAA445545F7D0002C12D519 +:104720000FB115F8018BF445D3D00CF8018B641C44 +:10473000F9D40AE0F44518BF5545CBD015F8018BE4 +:104740000CF8018B641E002CF4D50126C2E7000092 +:1047500047797243616C3D25640000004143434347 +:10476000616C3D256400000044554D505345542074 +:104770002564000050443A20536574256420256464 +:10478000000000004C542053502025642C20256448 +:10479000000000004C542057502025640000000009 +:1047A0004C54205352202564000000004C542053E8 +:1047B00041522025640000005B415044525D204E70 +:1047C000545F5357554E2025640000005B41504410 +:1047D000525D204E545F545755532025640000000D +:1047E0005B415044525D204E545F42415443482047 +:1047F0002564000043F63001C4F202014FF09F022D +:104800000A6040F20000C4F202004FF6FF73CAF6DD +:10481000FF3303604FF6BF63CFF6FF7300F5806090 +:1048200003604FF6FF73CFF6FF7300F580600360FF +:1048300000F58060036000F58060036040F20F03C4 +:10484000C0F2000341F60040C4F2020003604FF0E2 +:1048500000020A600148804701480047556201088C +:10486000E149030810B5074979441831064C7C44E6 +:10487000163404E0081D0A68511888470146A14211 +:10488000F8D110BD2C0000005C0000001DB700082E +:1048900049B700084BB80008D9B80008000000006C +:1048A0002DB900080000000027C3000851C300080C +:1048B000D3F2FCFF04000000BC6601208CCB00009A +:1048C000309B002000000000E1FDFFFF020000001F +:1048D00002000000280300004C02000000600020DD +:1048E000303B00005B494E564E5D616363655F730C +:1048F00068696674282564293A2025642025642087 +:1049000025640000475943616C4552522042696159 +:1049100073205B25645D203A20256C640000000054 +:104920004EF68851CEF20001086840F4700008602D +:104930004FF00070E1EE100A704700000A5B494E2C +:10494000564E5D414343454C5F4D474D5432203AEE +:104950002025640041522D25642C25642C25642CCF +:1049600025642025642C20256400000047594361FC +:104970006C45525220524D53205B25645D203A20F5 +:10498000256C64000120C046002801D0FFF76AFFB3 +:104990000020FFF7D5FD00F000F800F001B800009E +:1049A00007463846F2F7F8F8FBE70000477972430C +:1049B000616C3D20256420256420256400000000F2 +:1049C00041434320446174612053616D65000000E0 +:1049D000475943616C45525220524D5320300000DC +:1049E000C046C046FFF79CFFFFF7CCFF4148532D60 +:1049F000453200004148532D453300004148532DB6 +:104A0000453400004148532D453100005354302DAA +:104A10003200000041522D534C50000041522D53A2 +:104A20005442000041432D52463100004149532D6C +:104A3000534C500047522D534C50000047522D53B9 +:104A40005442000047522D52463100004748532D32 +:104A5000453200004748532D453300004748532D49 +:104A6000453400004748532D453500004748532D35 +:104A7000453600004748532D453700004748532D21 +:104A800045380000FF7FFF7FFF7F0000000000002F +:104A9000F9F7CEBCF9F7D6BCF9F7DEBCF9F7E6BCFE +:104AA000F9F7EEBCF9F7F6BCF9F7FEBCD1F702B89E +:104AB000D9F797BEFFF7FEBFFFF7FEBFFFF7FEBFB8 +:104AC000F9F7C3BFFFF7FEBFFAF773B8F9F716BEE1 +:104AD000F9F7DCBEF9F720BFFFF7FEBFFFF7FEBF17 +:104AE000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFFA +:104AF000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFEA +:104B0000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD9 +:104B1000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC9 +:104B2000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB9 +:104B3000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA9 +:104B4000F9F7BEBCFFF7FEBFFFF7FEBFFFF7FEBFE2 +:104B5000FFF7FEBFF9F72FBFF9F7DDBFFFF7FEBF85 +:104B6000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF79 +:104B7000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF69 +:104B8000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF59 +:104B9000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF49 +:104BA000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF39 +:104BB000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF29 +:104BC000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF19 +:104BD000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF09 +:104BE000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF9 +:104BF000FFF7FEBFFFF7FEBFFFF7FEBF9000077095 +:104C000060002070600020810081008100810081AF +:104C1000008100810081008100810081008100818C +:104C20000081008100810081008100FA00076C6929 +:104C300000206C69002081008100810081008100DA +:104C4000810081008100810081008100810081005C +:104C5000810081008100810081008100810081004C +:104C6000810081008100810081008100810081003C +:104C7000810081008100810081008100810081002C +:104C8000810081008100810081008100810081001C +:104C9000810081008100810081008100810081000C +:104CA00081008100810081008100810081008100FC +:104CB00081008100810081008100810081008100EC +:104CC00081008100810081008100810081008100DC +:104CD00081008100810081008100810081008100CC +:104CE000810081008100E400000AFD000007FD0052 +:104CF0000007FD000005FC0000028100810081002A +:104D00008100B30010400000803FFFCAA3BFF986B6 +:104D1000F43EFBB54A3DFB000002E6000001FD0049 +:104D20000002ED000047F1000001FD000010E90065 +:104D30000001FD0000C8FD0000048100D800102D16 +:104D4000431CEBE2361A3F2D431CEBE2361A3F14AC +:104D5000ED000001FD000001E1000001FD00000187 +:104D6000FD000001E9000001FD000002E500000176 +:104D7000FD000001AC000346030804FD00042446C6 +:104D8000030804FD00044846030804FD00046C46C3 +:104D9000030802FD00048046030802FD0004944657 +:104DA000030802F9000003B0000040E1000005F52F +:104DB0000002FF3C41FA000E8B00A0A1A2A3AAAB07 +:104DC000A4A5A9A7A60027EA00010101FD0000781B +:104DD000EE000003EC0011010203040607080900BD +:104DE00024F40080838C8D8F90FD000BFF00600BFE +:104DF000110000898B9D9E9FFD00015078FA0004F0 +:104E00008485868781FB0002FFFFFEF9000B01020B +:104E100003040102030406070809FC000001FD0069 +:104E20000001FD000001F90000FFF80002540040FD +:104E3000FC000301040101FA000001FB0000FFFD7A +:084E400000FC0103A474D7007B +:00000001FF diff --git a/firmware/ssp_stm32f.fw.ihex b/firmware/ssp_stm32f.fw.ihex old mode 100644 new mode 100755 index c055cc765b6d..b63a62cad1f8 --- a/firmware/ssp_stm32f.fw.ihex +++ b/firmware/ssp_stm32f.fw.ihex @@ -1,14302 +1,14459 @@ -:10000000009C0020657803082948030889710308CB -:100010003D480308514803086548030800000000F4 -:100020000000000000000000000000007948030804 -:100030008D4803080000000011310108F770030823 -:10004000517C0308557C0308597C0308734C030852 -:10005000617C0308657C03085F4A0308654B03085D -:10006000B54B0308757C0308797C03087D7C030885 -:10007000817C0308857C0308897C03088D7C030848 -:10008000917C0308957C0308997C03089D7C0308F8 -:10009000A17C0308A57C0308A97C0308AD7C0308A8 -:1000A000B17C0308B57C0308B97C0308BD7C030858 -:1000B000C17C0308FB0C0208C97C0308CD7C030843 -:1000C000D17C0308D57C0308D97C0308A548030824 -:1000D000E17C0308E57C0308E97C0308ED7C030868 -:1000E000174C0308FB4C0308F97C0308FD7C03084C -:1000F000017D0308057D0308097D03080D7D0308C4 -:10010000117D0308157D0308197D03081D7D030873 -:10011000217D0308257D0308297D03082D7D030823 -:10012000317D0308357D0308397D03083D7D0308D3 -:10013000417D0308457D0308497D03084D7D030883 -:10014000517D0308557D0308597D03085D7D030833 -:10015000617D0308657D0308697D03086D7D0308E3 -:10016000717D0308757D0308797D03087D7D030893 -:10017000817D0308857D0308897D03088D7D030843 -:10018000917D0308957D03082DE9F0430446079D02 -:10019000A78AADB29FB3052FA6BF381F1FFA80FCF8 -:1001A0004FF0000C781EA66880B206EBC006B6F8C9 -:1001B00000E05FEADE381BD04FEA8E584FEA9858CD -:1001C000884504BFCEF3C12EAE4511D1B6F806E086 -:1001D000B4F82280C64504BFB6F802E0964507D1C0 -:1001E00033B19988B288914288BF1146B18061E0ED -:1001F0008646AEF101001FFA8EFEE645D7D1D4F84F -:1002000008E0B4F816C00EEBC706384601E0083621 -:10021000401C80B2604504DAB6F800905FEAD93934 -:10022000F5D1604511D17646002001E00836401C2A -:1002300080B2B84204DAB6F800E05FEADE3EF5D1FB -:10024000B84208BF4FF6FF7035D0378807F41C4717 -:10025000890557EA915141F4004131806BB11F7813 -:10026000FF0744BF41F4804131801988C1F3800108 -:1002700019B1318841F400513180318865F3CC21C6 -:10028000318072801BB9E18DB180002109E02DB170 -:10029000E18DB1801988890A491C02E09988B180F2 -:1002A000618CF180411CA18289B2228B8A4238BFC5 -:1002B0000A46228380B2BDE8F0838168008B012862 -:1002C00006DB0A885204520C21F8082B401EF8D194 -:1002D00070472DE9F041031D99685A689F8ADD8FA8 -:1002E00088461646012F06DB34886404640C26F821 -:1002F000084B7F1EF8D1012D45DBC66D371D4FF42D -:10030000804C4FF6FF76B8F800E0CEF30024A4B39B -:10031000CEF380145CB140F2BF3404EA0E040EF553 -:10032000806E0EF47C4E4EEA0404A8F80040B8F843 -:1003300002E009E032F83E4044F4004422F83E4036 -:1003400002EBCE04B4F802E0B645F3D1B3F828E0EE -:1003500009E032F83E4044F4004422F83E4002EB0B -:10036000CE04B4F802E0B645F3D1B7F800E01C8F34 -:10037000A645BCBF446824F81EC008F20A0807F26C -:100380000A076D1EBFD11B8EDB0B2CD000234FF64E -:10039000FF760DE032F8385045F4004522F8385029 -:1003A00002EBC804B4F80280B045F3D15B1C9BB2E9 -:1003B000B0F84A40A34216DAD0F8804034F813402F -:1003C00004EB840501EB4505B5F802802D88C5F3E3 -:1003D0000025002DEAD003EB830501EB4505ED88F0 -:1003E000002DE1D1E2E7BDE8F08101EB8102C16DB2 -:1003F00001EB42010A8913464FF6FF718B4200D18F -:10040000704770B4120414D403EB8302C36803EB87 -:1004100042021388C3F300244CBB43F4807313805F -:100420005180808EC00B22D00020D080108170BC03 -:10043000704723F40042836D03EB420333F8022B31 -:100440005404640C04EB8405C46804EB450425885B -:10045000C5F300264EB945F4807525806180858EF0 -:10046000ED0B02D00025E58025811204E6D570BC95 -:1004700070472DE9F24F01EB8104D0F80CE06600E3 -:1004800006EB0E010D88C5F30024002C00F08A80D5 -:1004900000F14C04AF0AD4F81090B1F804A04E4417 -:1004A000C5F34018758807F1010CB8F1000F0ED0A4 -:1004B000A76907EBC50500F10C073F8DC7F380372F -:1004C0001FB92F8857441FFA87FA6D8802E06769C1 -:1004D00037F82550A5EB0C050FFA85FCBCF1010F90 -:1004E0000CDB00F10C05ACF101076D8E55440FFAE1 -:1004F00087FC1FFA85FABCF1000FF2D11D88554523 -:1005000050D3AA453FD3178807EB87054FEA450C20 -:10051000E644B8F1000F07D07788A56905EBC70559 -:10052000B5F80280AD8806E06769758837F82580E0 -:1005300007EB85056D88B7880CEB0906BEF80090BF -:10054000C9F34019B9F1000F0AD0B6F80290D4F8F7 -:1005500018C00CEBC90CBCF80290BCF804C009E050 -:10056000D4F814B0B6F802C03BF82C900BEB8C0C0E -:10057000BCF802C0B688654505D313D1B74202DB8B -:1005800010D1C8450ED2A3F800A0BDF800301380EA -:1005900000F10C02128DD20B04D00A896260C98866 -:1005A000A0F84C10BDE8F18F2DE9F041CB88002177 -:1005B0004FF6FF74A34264D000F10C041D042BD449 -:1005C000258D8C46C5F3803636B1D0F88C7037F95E -:1005D00013707F0007F5FA5CC06803EB830700EB3C -:1005E000470EBEF80000BEF80470C0F300237BB1D4 -:1005F00097420DDAC5F3C02222B1628A02F5FA529F -:10060000974205DA1EB11FFA8CF2974200DA0121F7 -:10061000C0F34000A8B330E0E56C23F4004305EBE1 -:10062000430636F8023BC76823F4004C0CEB8C05FC -:1006300007EB4505AF88B5F800E0CEF30025CDB156 -:10064000974217DA258DC5F3C028B8F1000F05D001 -:10065000B4F8128008F5FA5847450BDAC5F380352F -:100660005DB1D0F88C5035F91C506D0005F5FA5588 -:10067000AF4202DBCEF340050DB1012101E01B04C6 -:10068000CFD50846BDE8F0812DE9F0479146984660 -:1006900082B004460D46C84553D04FF6FF7A4FF658 -:1006A000FE715246884515D1608B884209D10120E0 -:1006B000009000232046FFF767FD024652453DD0DB -:1006C00062836A8049462046FFF78FFE2888C0056E -:1006D000C00D45E008EB8801E0684E003718388807 -:1006E0007A88C0F3401078B1002000903B46E06D5E -:1006F000616E3018408801EBC000C1882046FFF7CA -:1007000043FD0246524519D03888C0F30010002836 -:10071000D7D0A08E00F42050B0F5205FD1D1E16D8C -:10072000715C0120890748BF022000903B4641468A -:100730002046FFF729FD02465245C2D1FE20BDE802 -:10074000F6872888810A3F290BDAA18EC1F3C021E0 -:1007500000291CBFC0F34001002902D140F0400035 -:1007600028800020BDE8F6872DE9F14F041D86B0F2 -:10077000E08F069A049002F144050020ADF80200D3 -:10078000608EADF80C00218EC1F3C02292B1C1F38E -:10079000803131B94FF47F4108421CBF000AADF8E7 -:1007A0000C00B5F90400401E4FF6FE71E182401EB8 -:1007B000ADF80800069AE08B5268218F32F81110CC -:1007C0000818E083208EC0F3C02038B1A08BB0F5AC -:1007D000FA5F03DA208B00F5FA5002E0A08B218B40 -:1007E0000818ADF80A004FF000084FF48040A083CD -:1007F000AE69A768C1462AE0BDF80400B880A18BA5 -:10080000BDF80400884288BF0846A083CDF800A048 -:10081000BDF80630069842463946FFF735FFADF879 -:100820000200208EC00B0AD0E868B0F5803FA4BF5C -:100830004FF6FF70E860E86838812889F88008F191 -:10084000010807F20A0706F20A0609F102090498EC -:100850001FFA88F8804580F24081BDF80200002828 -:1008600040F03B818DF800003A88C2F30020002858 -:10087000E5D0910A491CC2F34012002AB888728858 -:1008800004D02B6A03EBC202928803E0EB6903EB0E -:100890008202528889B28A420DD23F2ABCBFA18F00 -:1008A0000818296B39B1069AB188B2F844209142F0 -:1008B00008BF4FF48040ADF80400ADF80680208EEC -:1008C000C00B18BF3889E860208EC00B18BFF888AD -:1008D00028814FF6FF70B6F806A082451DD05FEA6A -:1008E0000A4007D4069801AB0DF106025146FFF706 -:1008F000C0FD12E069692AF4004001EB400B3BF8AF -:1009000002AB06984FEA4A4101AB0DF10602490CD1 -:10091000FFF7AFFD5FEA0A40F1D5208EC0F3C0209B -:10092000A8B3BDF90810002931D43888C0F34002BB -:100930006AB32A6B32F91110B5F9102002EB4101AC -:10094000BDF8042089B2914219D2ADF8041038885C -:100950008005800D3880208EC0F3403018B14FF6EE -:10096000FE70ADF806004FF6BF7138880840388039 -:10097000208EC00B06D00020E860288102E040F005 -:1009800040003880BDF80800401EADF808003888E7 -:10099000C0F3402000281ABF686A39F800A0B6F8F2 -:1009A00004A006984068BDF8041030F81A201F32E1 -:1009B000521112FA81F1ADF80410218E01F4904128 -:1009C000B1F5904F28D16A6CBDF9041039F80220B6 -:1009D000A1EBD211069AB2F8442009B2924504BFA5 -:1009E000A28E11FA82F10AB2012AB8BF0121ADF834 -:1009F0000410218EC90B0FD0317809060CD530F9BF -:100A00001A00404200B200F076FAE96801EB2010CB -:100A1000E8602889401C28813888C0F340000028FD -:100A20003AD1208EC0F3C021B1B1C0F3803060B1A3 -:100A3000A86C39F90000BDF80410400000F5FA5028 -:100A40008842BCBF01208DF80000608BBDF8041007 -:100A500000F5FA50884208DBBDF80A00BDF8041022 -:100A6000884202D39DF80000B0B1BDF80A20069874 -:100A70003146FFF799FD20B938884FF6FF610840ED -:100A800038803888C005C00D38804FF48040B88069 -:100A90004FF6FF707880D2E6208E00F49040B0F5DB -:100AA000006F7FF4A9AEBDF90400BDF80C10401A28 -:100AB0000699B1F8441000B28A4504BFA18E10FA1D -:100AC00081F001B20129B8BF0120ADF80400208EE9 -:100AD000C00B3FF491AE51200AE0BDF8020028B9E6 -:100AE0000698FFF7F6FB608D401C6085BDF802009C -:100AF00007B0BDE8F08F2DE9F041054682B0EC6803 -:100B000004F10C070026B7F828C07A6F4FF4804331 -:100B100018465FEADC3C12D0218E0022284600F005 -:100B200043F8BDE8F6810EEB8E08D4F80CE00EEB2E -:100B3000480EBEF804E09E453CBF7346604632F85E -:100B400002CBE6464FF6FF78C645ECD17A8B9A4247 -:100B50001DD37B83B883B3F5FA5F18DAADF8006074 -:100B60007A8CFA8300EB8002E06800EB4200408858 -:100B70003884481C788700A9284600F07FF9698DE1 -:100B800060F3070169852969686949680161788F9F -:100B900038B14044788780B218B9204600F03BFA5B -:100BA00006463046BDE8F6812DE9F84304460020AC -:100BB000ADF800001746D4F80C904FF4FA58B80777 -:100BC00048BF4FF48048002509F10C0633E0706FF0 -:100BD00030F81500726800EB8001D9F80C0000EBCA -:100BE000410005EB850102EB41018288B2F5804F9F -:100BF0001CBFC388002B1CD090451AD34B8813B15F -:100C00000B889A4215D20A800289C388520192FB4E -:100C1000F3F28A80B28C521C4A8040880881708C22 -:100C2000C88000A9204600F029F9618D60F3070112 -:100C30006185681C85B2F08F8542C8DBF80710D546 -:100C400000250BE0706805EB850100EB4100418851 -:100C500011B14FF6FF714180681C85B2F08F85425B -:100C6000F0DB4FF000084FF6FF7703E008F10100DA -:100C70001FFA80F8F08F804558DA716808EB880019 -:100C800001EB400568880028F0D0B84215D038182C -:100C9000688080B20028E9D1306E70B128887083F6 -:100CA000706F30F81800B083E888F08328893084AA -:100CB000484600F0B0F90028D8D000200AE0AA8801 -:100CC0008B889A4202D20021698013E000224A8078 -:100CD000401C80B2F18F88420CDA4045F8D072682F -:100CE00000EB800102EB41014A88002AF0D0BA42B1 -:100CF000E5D06F80F18F8842B8D1002068800FF670 -:100D00007012A888706461680864F18C706CC1F31B -:100D1000022132F81110884205DA608D00F47F401C -:100D200040F0400060850120BDE8F2830020BDE86E -:100D3000F283F0B4C2684068958E01EB8103D168FC -:100D400001EB4304016BED05ED0D0D800123B2F9BC -:100D50002450CD80558C0D81257805F001054D80FE -:100D60002588C5F380058D8065884FF6FF7413E0F4 -:100D70002E88B605B60D21F80A6F5B1CB5F9046024 -:100D8000CE80EE880E812E88C6F380364E802E8867 -:100D9000C6F340368E806D88A54216D0966806EB65 -:100DA000C5052E88C6F3C126002EF4D1CE88B5F92C -:100DB0000470F61BCE809BB20E89EF88F61B0E8165 -:100DC000068AB342D4D3562141848384F0BC408C3C -:100DD0007047F8B504466068E568066B2046FFF783 -:100DE000A8FF002849D16168898C002202E0521CCA -:100DF00006F20A0692B28A4205DA7788002F04BF0B -:100E0000B788002FF3D08A4201D13120F2BD31885A -:100E1000AA8E61F30802AA867188228D61F3C3024B -:100E20002285A98EC1F3C0223ABB6A8E0FF64C030D -:100E3000C2F3022233F81220AB8C5A435202120C36 -:100E4000C1F34023002B6B8C06D09508AE189E4250 -:100E500004DA5200EB1805E09A4201DB322004E08C -:100E600002EB62029A42A8BF3320C1F3003121B1E4 -:100E7000218DC1F3C00101B95420F2BD2DE9F04725 -:100E8000C368B1F800C0D3F880A0D3F80C904FF637 -:100E9000FF784FF480444246002618E00EEB8E05A2 -:100EA0006D0035F8097007F49077B7F5907F0ED193 -:100EB000DF6DEF194D44AD88A54238BFAC4506D271 -:100EC0002C467E885D6E05EBC6067246F6883AF8BB -:100ED00002EBC645E2D10C804245998E66F30801CB -:100EE00099869C8408BF312003D01146BDE8F047A5 -:100EF0006FE7BDE8F08710B500F58061B1F5006FD0 -:100F000039D8DFF864170122034601F110048B423F -:100F100018DB24B2A04215DA802A19D0E01A800129 -:100F2000611A90FBF1F10FF2607000EB420309B21D -:100F300030F9120033F9023CC1F14004604313FB65 -:100F4000010016E0521C24B212B22146812ADCDBD9 -:100F500042F67A308C4213D0E21A9201611A92FB67 -:100F6000F1F109B2C1F1400342F6D122584312FB1C -:100F70000100801110BD4010FFF7BDFF404300137A -:100F800010BD0021C82201E08008491CB0F5805F37 -:100F9000FAD20003C823B0FBF3F303E09A18520817 -:100FA000B0FBF2F3A3F1010C624524BF03F1010C85 -:100FB0009445F3D302FA01F0704740010021B0F5E7 -:100FC000004F24BF400A40F23D61B0F5806F24BF5E -:100FD000400901F27731FF2884BF800801F26311D4 -:100FE000802824BF4008B131402824BF4008B131D7 -:100FF000312824BFA0EB90004A31292824BFA0EB60 -:10100000D0002231262824BFA0EBD0002231203886 -:1010100001EBC00070472DE9F04F044685B0208DEC -:1010200004900021608D0390054604A800220088EA -:1010300002908A46A38EC3F3403389468846002B2C -:1010400000F0DB80A38D019318E067444FEA570C52 -:10105000B1FBFCF7A7F1010BDC4524BF07F1010B45 -:10106000E345F2D30CFA00F082180AF1010A009865 -:101070002D1A9805800D3146BEF802304FF6FF76E6 -:10108000B34233D0A66806EBC30EBEF80030C3F3FC -:10109000C126002EF0D0BEF804C0AFB2674538BFFD -:1010A00005F58035A5EB0C07BFB20097B844276F54 -:1010B00037F820C007EB800040888445D7DA022942 -:1010C000D5D0BCF10F0FB8BF4FF00F0C00FB0CF1E7 -:1010D00000204FF0C80C01E08908401CB1F5805F8A -:1010E000FAD20903C827B1FBF7F7B3E702F12000F2 -:1010F0008209C8EB081802E04FEA58085208B8F510 -:10110000805FF9D2002A7AD0500800EBC810B0FBFB -:10111000F2F8039D0298019B002112E04A0802EBBD -:10112000C010B0FBF1F0FFF748FFA0F2DA404043F7 -:1011300009EB201931888805ED1B800DC1F3C12111 -:1011400073884FF6FF72934231D0A26802EBC30658 -:101150003288C2F3C122002AF2D0B288ABB29342E5 -:1011600038BF05F58035AA1A97B2226F32F82030C1 -:1011700002EB800040888342DCDA0229DAD00F2BB0 -:10118000B8BF0F235843FFF7FCFEC00808FB00F16F -:10119000C7EB0710800201E049084008B0F5805F06 -:1011A00038BFB1F5805FF7D20029B7D125E04FEA0B -:1011B0000A41C80B99FBF0F9B9F5FA5F1FDC002072 -:1011C00000E0401C2268D28E80B20146904206D2D6 -:1011D000D4F88030049A33F811309A42F1D1E26E9B -:1011E000E08C32F8111001FB09F100EBE120E08402 -:1011F000A084E08CB0F5FA5F01DA012000E0002065 -:1012000005B0BDE8F08F818F426802EB4101428F4B -:10121000D21C0A80028F21F8022F408F21F8020F82 -:1012200070472DE9F0470446251D04F15C06B5F82A -:101230003EA0D6F8208000206885E88328844FF4FB -:1012400080476F84AF84EF844FF6FF79A5F828902C -:10125000A4F84600288EC0F3C02048B1B069B0F9A8 -:10126000000004F146014000B1F90E1000FA81F0CF -:10127000A883686810B12046FFF71FF80020288275 -:10128000A882BAF1010FA86807DB01780180878086 -:1012900000F20A00BAF1010AF7D138F8021B4945F9 -:1012A0001DD0AA6801EB810002EB40000388C3F364 -:1012B000002252B943F480730380A0F802902B8E71 -:1012C000DB0B02D00023C38003812A8EC2F3C0222D -:1012D00002B13A4682802046FFF787F8DDE700201A -:1012E00005E000EB8001EA684900401C8F5204F1E0 -:1012F000460180B289888842F3D3298F606802460C -:10130000012905DB42F60D6322F8023B491EFBD1A1 -:10131000EA8FA968012A1BDBE46DF368241D0E889F -:10132000C6F300266EB1268820F816700E88C6F324 -:10133000001636B12E8EC6F3C02616B91E8820F8C8 -:1013400016709B1C01F20A0104F20A04521EE6D137 -:101350000020BDE8F0870168CA8A520182838A8929 -:101360005200C286CA89520002870A8A5200428706 -:101370008A8A5200A0F840204A8A5200C287CA8B4B -:10138000002A14BF52014FF48042C2834A898287E7 -:101390000A8C002A1ABF0F2392FBF3F20122028665 -:1013A0004EF6FF730A8FA0F84420CA8E521EA0F892 -:1013B0004A208A88A0F84220828E1A404B881B0659 -:1013C000DB0F42EA033282864DF6FF731A404B88E8 -:1013D0001B069B0F03F0010342EA43328286838E91 -:1013E0004A8862F3CB2383864FF6FF33828E1A40FE -:1013F0004B881B06DB0E03F0010342EA8322828640 -:101400004FF6FF531A404B881B061B0F03F00103D6 -:1014100042EA43228286520449880906520C490E48 -:1014200042EAC13181867047F0B400F10C01C06816 -:10143000CE8E0A6D0B6F0446012E2CDB15882F070C -:1014400003D5278847F0010727806F0703D5278832 -:1014500047F004072780AF0707D50F8DC7F3C027D4 -:101460001FB9278847F010072780EF0607D50F8D93 -:10147000C7F3C0271FB1278847F010072780ED0763 -:1014800003D5258845F02005258004F20A0402F2E0 -:101490000A02761ED2D133F8021B4FF6FF72914238 -:1014A00008D001EB810200EB4204218841F00201E7 -:1014B0002180F0E7F0BC7047F8B50446606C6168C5 -:1014C00000F6581529600A88242A03D05120608428 -:1014D0000020F2BD01F14802568811FA86F6AE6589 -:1014E00016890EB111FA86F6C5F8846056890EB1D8 -:1014F00011FA86F6C5F8886096890EB111FA86F65B -:10150000C5F88C604BF6FF7357897E1EB641AF8ECF -:10151000F643F60F1F4047EA8636AE86D68911FAA3 -:1015200086F62E66168A11FA86F66E66568A0EB111 -:1015300011FA86F6AE66968A11FA86F6C5F88060CC -:10154000D68A0EB111FA86F6EE66168B0EB111FA36 -:1015500086F62E67968B11FA86F6EE65B1F848602E -:101560000EB111FA86F66E679EB13688B4F9167020 -:10157000760407EB2647B7F5004F04DB47F6FF7705 -:10158000A7EB264604E0394B9F4202DAA3EB26463E -:10159000E682E68AC6F5FA56A5F8546000F6E81029 -:1015A000D28811FA82F2EA670A1D938CA5F84830B6 -:1015B000538E5B1EA5F84A3068609BB2D0886A687B -:1015C00002EB4000801DC01C80088000286103EBF6 -:1015D000830200EB42002063228A02EB820300EBCD -:1015E0004300E860898801EB810200EB4200A860BB -:1015F000608AE8822846FFF7AEFEA88E00F4C0514C -:10160000B1F5006F19D1B5F84A20002192B1D5F893 -:1016100080301E8806EB8607EE6D06EB47066F6E80 -:10162000768807EBC606F688B14238BF31469B1C68 -:10163000521EEED1491CA5F85610618B11B1400421 -:10164000400CA886A08A698E401E60F30A21698634 -:101650002846FFF7E9FE2846FFF7D5FD2846FFF7A5 -:10166000E0FD2846F2BD000000FCFFFF0180FFFF07 -:10167000CC0C0010331366169A1900005200650056 -:101680008000A000C5000000E305FB0513062B0643 -:1016900044065D0677069106AB06C606E206FD0621 -:1016A0001A073607530771078F07AD07CC07EC07FA -:1016B0000C082C084D086E089008B308D608FA08E4 -:1016C0001E09430968098E09B409DB09030A2C0ABB -:1016D000550A7E0AA90AD30AFF0A2B0B580B860B60 -:1016E000B50BE40B140C450C760CA80CDB0C0F0DA1 -:1016F000440D790DAF0DE70D1F0E580E910ECC0E57 -:10170000080F440F820FC00F001041108210C51047 -:1017100008114D119311D91121126A12B51200133B -:101720004D139B13EA133A148B14DE1432158815EB -:10173000DF1537169016EB164817A517051866180B -:10174000C8182C199119F819611ACC1A381BA51B45 -:10175000151C861CF91C6E1DE41D5D1ED71E541F32 -:10176000D21F5220D4205921DF216822F2227F2368 -:101770000E24A0243325C9256226FD269A27392860 -:10178000DC288029282AD12A2DE9FF4F81B0169C18 -:10179000179D189E199FDDF86880DDF86C901C9AE3 -:1017A000DFF8680DD0F818A0DAF80CB012B20021FA -:1017B00058460EF025FC139A12B2022158460EF03C -:1017C0001FFC149A12B2042158460EF019FC159A07 -:1017D00012B2062158460EF013FC224612B208211E -:1017E00058460EF00DFC2A4612B20A2158460EF059 -:1017F00007FC324612B20C2158460EF001FC3A4664 -:1018000012B20E2158460EF0FBFB424612B21021D6 -:1018100058460EF0F5FB4A4612B2122158460EF019 -:10182000EFFB019A12B2142158460EF0E9FB029A1E -:1018300012B2162158460EF0E3FB039A12B2182199 -:1018400058460EF0DDFB049A12B21A2158460EF0EB -:10185000D7FB0E9A12B21C2158460EF0D1FB0F9AFC -:1018600012B21E2158460EF0CBFB109A12B2202164 -:1018700058460EF0C5FB119A12B2222158460EF0BE -:10188000BFFB129A12B2242158460EF0B9FB012078 -:101890008AF81D0005B0BDE8F08F00B583B00020C8 -:1018A000ADF806008DF804000120009001AB022283 -:1018B0009A2106200EF0B8FC002829D09DF80400DB -:1018C00000F00700022801D000280AD10EF03CFEEB -:1018D00090F87A00002804D14FF4805100200EF0D7 -:1018E000CFFD9DF804000721084213D102208DF896 -:1018F00006009DF8040040F080008DF807000223E8 -:101900000DF106029A2106200EF050FC002801D1AC -:1019100000200EBD01200EBD00B583B00020ADF843 -:1019200006008DF804000120009001AB02229A21EC -:1019300006200EF079FC002801D100200EBD9DF894 -:10194000040000F007009DF80410072211422CD07B -:10195000052801D0042814D101208DF8060092201A -:101960008DF807000FF274000EF0D7FB02230DF183 -:1019700006029A2106200EF019FC002801D1002051 -:101980000EBD02208DF806009DF8040000F07F00D7 -:101990008DF8070002230DF106029A2106200EF0B1 -:1019A00005FC002801D100200EBD0120009001ABF4 -:1019B00000229A2106200EF037FC002801D10020D9 -:1019C0000EBD0120009001AB44229A2106200EF0AA -:1019D0002BFC401E8041C043C00F0EBD3D3E53490D -:1019E0004E5445393200000030B583B00446002023 -:1019F000ADF806008DF804000546002C07D1DFF88D -:101A0000F40C816A491C81620121016306E0012C0A -:101A100004D1DFF8E00CC16A491CC16201200090CA -:101A200001AB02229A2106200EF0FEFB002862D0B4 -:101A30009DF8040000F0070007285CD8DFE800F0FC -:101A40000D5B085B0A04060C012506E0022504E094 -:101A5000042502E0052500E006250120A0400542FE -:101A60004BD1680704D5002C10D0012C06D042E0E1 -:101A7000A80705D5002C11D0022C3CD1072412E078 -:101A8000E80705D5012C0BD0022C34D104240AE040 -:101A9000002C03D0022C05D002D32CE0052402E058 -:101AA000062400E0022401208DF806000DF1060551 -:101AB000102068709DF8040000F0DF008DF804002D -:101AC00002230DF106029A2106200EF06FFB00287A -:101AD00011D002208DF806009DF8040000F0F800F7 -:101AE0002043687002230DF106029A2106200EF0B1 -:101AF0005DFB002801D100203EBD01203EBD00005D -:101B00007CB505460020ADF806008DF804000646B9 -:101B10000446002D0AD1DFF8DC0B816A491E816280 -:101B200001D521468162806A012877DA012D0AD128 -:101B3000DFF8C00BC16A491EC16201D52146C162EE -:101B4000C06A01286ADA0120009001AB02229A21C2 -:101B500006200EF069FB00285ED09DF8040000F01E -:101B60000700072858D8DFE800F00D5708570A0487 -:101B7000060C012606E0022604E0042602E0052603 -:101B800000E006260120A840064247D070070DD588 -:101B9000002D02D0022D02D03ED2022406E0F00732 -:101BA00001D5052402E0B00700D50624052C01D09C -:101BB000042C09D112208DF807009DF8040040F094 -:101BC00020008DF8040008E010208DF807009DF833 -:101BD000040000F0DF008DF8040001208DF80600FD -:101BE00002230DF106029A2106200EF0DFFA0028EA -:101BF00012D002208DF806009DF8040000F0F800D5 -:101C000020438DF8070002230DF106029A210620D9 -:101C10000EF0CCFA002801D1002076BD012076BD5F -:101C20007CB50FF290000EF078FA0020ADF80600B7 -:101C30008DF8040006460EF087FC0446DFF8B45A1F -:101C40000120A86200E0761C0F2E12DA70190079CC -:101C50008DF806007019007D8DF8070002230DF144 -:101C600006029A2107200EF0A1FA0028EBD10020ED -:101C700076BD0020FFF744FF002801D1002076BD8B -:101C8000FFF70BFE002801D1002076BD0120009057 -:101C900001AB00229A2107200EF0C6FA002801D1DC -:101CA000002076BD7820A4F876005020A4F87800B3 -:101CB000012076BD3D3E50525000000010B582B06C -:101CC0000FF21C100EF029FA0020ADF800004FF4BE -:101CD00080510EF0D3FBDFF81C0AC16A012906DB34 -:101CE000816A491C816201214163084616BD0020BA -:101CF000FFF77AFE002801D1002016BD03208DF8E1 -:101D0000000000ACA0206070022300AA9A210720E6 -:101D10000EF04CFA002801D1002016BD04208DF8E9 -:101D200000005C206070022300AA9A2107200EF0B8 -:101D30003DFA002801D1002016BD63208DF8000077 -:101D40007F206070022300AA9A2107200EF02EFA4D -:101D5000002801D1002016BD64208DF800000B2062 -:101D60006070022300AA9A2107200EF01FFA0028B3 -:101D700001D1002016BD67208DF800003C20607066 -:101D8000022300AA9A2107200EF010FA002801D1A0 -:101D9000002016BD68208DF800000020607002232E -:101DA00000AA9A2107200EF001FA002801D1002094 -:101DB00016BD69208DF8000014206070022300AA6F -:101DC0009A2107200EF0F2F9002801D1002016BD5B -:101DD000FFF7A2FD401E8041C043C00F16BD0000AA -:101DE0003D3E50524F00000080B50FF224000EF02F -:101DF00094F90020FFF784FE002801D1002002BDE5 -:101E0000FFF74BFD401E8041C043C00F02BD0000E4 -:101E10003D3E50524300000080B50020FFF770FEA9 -:101E2000002801D1002002BDFFF737FD401E804190 -:101E3000C043C00F02BD30B583B004460020ADF8EA -:101E40000400DFF81C5DE86A002839D10120009009 -:101E500001AB54229A2107200EF0E6F900281DD08C -:101E60009DF80400C0F30210C01D0221009101ABD7 -:101E70009DF80410C1F30211C91D821000EB5270CD -:101E8000C010A1EBC000C0B2400000F14402D2B2C9 -:101E90009A2107200EF0C8F9002801D100203EBD8C -:101EA0009DF80400000200F4E0609DF8051008436E -:101EB00040F2FF31401A00B2002800D50020A8846B -:101EC000B5F9240020700012607001203EBDF0B50D -:101ED00083B004460F460EF037FB06460EF0A3F81B -:101EE000054600200190B6F87820B6F876100FF677 -:101EF000D4400EF012F93946601CFFF79CFFDFF862 -:101F0000600C806B44F62061884202DB0020607028 -:101F1000A070B6F87600A178627842EA0121884282 -:101F200001DA012000E00020207020782875287D4B -:101F30000028A078617841EA002104D00FF694408F -:101F40000EF0EBF803E00FF694400EF0E6F80120F7 -:101F5000009001AB02469A2106200EF065F9002898 -:101F600019D09DF80400000617D50FF678400EF042 -:101F7000D4F801208DF806009DF8040000F07F00E1 -:101F80008DF8070002230DF106029A2106200EF0BB -:101F90000DF9002801D10020FEBD0120FEBD30B5A5 -:101FA00083B00020ADF8000001A8002101600EF010 -:101FB000CBFA054605F27604B5F87600002802D083 -:101FC0006088002808D10FF628400EF0A6F8782087 -:101FD000A5F8760050206080B5F8760000F2FF305A -:101FE000ADF80400608800F2FF34ADF806405A20D6 -:101FF0008DF8000000ADBDF80400000A68700223EF -:1020000000AA9A2107200EF0D1F8002801D1002063 -:102010003EBD5B208DF80000BDF80400687002230F -:1020200000AA9A2107200EF0C1F8002801D1002053 -:102030003EBD5C208DF80000A4B2200A6870022327 -:1020400000AA9A2107200EF0B1F8002801D1002043 -:102050003EBD5D208DF800006C70022300AA9A211D -:1020600007200EF0A3F8002801D100203EBDDFF8C4 -:10207000F00AB0F924100FF680300EF04EF801206F -:102080003EBD80B50FF6EC3107200EF0EDFC0FF6EB -:1020900008410A20BDE804400EF0E6BC1CB5002053 -:1020A000ADF806008DF804000FF660300EF035F83C -:1020B000002400E0641C0A2C13DADFF8A00A2118BF -:1020C000097B8DF80610205C8DF8070002230DF1C6 -:1020D00006029A2106200EF069F80028EAD10020B5 -:1020E00016BD0120FFF70CFD002801D1002016BD10 -:1020F000FFF7D3FB002801D1002016BD012000907E -:1021000001AB00229A2106200EF08EF8401E80417D -:10211000C043C00F16BD10B582B00020ADF800005E -:102120000FF6F0200DF0F9FF4FF4805100200EF073 -:10213000A5F90120FFF758FC002801D1002016BDA9 -:1021400003208DF8000000ACDFF8100A8078607082 -:10215000022300AA9A2106200EF028F8002801D1B7 -:10216000002016BD04208DF800003C206070022382 -:1021700000AA9A2106200EF019F8002801D10020AB -:1021800016BD63208DF8000064206070022300AA51 -:102190009A2106200EF00AF8002801D1002016BD71 -:1021A00064208DF8000009206070022300AA9A21A3 -:1021B00006200DF0FBFF002801D1002016BD67208E -:1021C0008DF8000024206070022300AA9A210620C6 -:1021D0000DF0ECFF002801D1002016BD68208DF81D -:1021E000000000206070022300AA9A2107200DF051 -:1021F000DDFF002801D1002016BD69208DF8000008 -:1022000000206070022300AA9A2107200DF0CEFF63 -:10221000002801D1002016BDFFF77EFB002801D168 -:10222000002016BDDFF8380901218170084616BD6F -:1022300010B50FF6E8100DF070FF0120FFF760FCFD -:10224000002803D0FFF729FB002801D1002010BD92 -:10225000DFF80C49A06A012807DBE06A002804D1F6 -:10226000FFF72CFDA06A401EA062012010BD80B5C2 -:102270000120FFF745FC002801D1002002BDFFF737 -:102280000CFB401E8041C043C00F02BD2DE9F0474A -:102290008CB0002002900EF057F905460120009006 -:1022A00002AB54229A2106200DF0BEFF002800F058 -:1022B0008F809DF8080000F00F06032E00DB022639 -:1022C000C0F302100830801B9DF80810C1F3021102 -:1022D0000831891B821000EB5270C010A1EBC007BF -:1022E000FFB24FF000080DF1080A0EE09DF808005B -:1022F000000200F4E0609AF801100843A0F2FF30F9 -:1023000003A941F8280008F10108B04562DA08EB9A -:102310000704A01004EB5070C010A4EBC0004FEAFB -:1023200040090220009002AB09F11402D2B29A21B6 -:1023300006200DF079FF00284AD09DF80800000221 -:1023400000F4E0609AF801100843A0F2FF3009A9F8 -:1023500041F828000220009002AB09F12402D2B219 -:102360009A2106200DF060FF002831D09DF808006A -:10237000000200F4E0609AF801100843A0F2FF3078 -:1023800007A941F828000220009002AB09F13402AD -:10239000D2B29A2106200DF047FF002818D09DF8F0 -:1023A0000800000200F4E0609AF801100843A0F26F -:1023B000FF3005A941F828000220009002AB09F186 -:1023C0004402D2B29A2106200DF02EFF00288DD1B2 -:1023D000002056E0012E4FDB03A8019005A80090D5 -:1023E00007AB09AA31460DF10A0000F04DF8C14CC7 -:1023F000BDF80A00A084A06A012826DB206B012812 -:1024000023D1606B002820D10DF00DFE007D012846 -:102410000BD1B4F92400B5F87810884205DADFF85A -:10242000441720200EF032FD0FE00DF0FCFD007D82 -:1024300000280AD1B5F87600B4F92410884204DAED -:10244000DFF8201720200EF021FD00206063A07827 -:1024500000280AD003980090059B079A0999DFF895 -:1024600008070EF0B9FE0020A070009603AB05AA85 -:1024700007A909A80EF031FF24488169487F00228E -:102480004A770CB0BDE8F0872DE9F04105460C46CF -:102490000026DDF8188014E058F8260000EE100A37 -:1024A000B8EEC00A10EE100A0FF0F8F90022DFF8BB -:1024B000FC360FF02BFA0FF007FB1938C0192880F3 -:1024C000761CB5F90070A642E6DB002F01D500208E -:1024D0002880B5F9000090FBF4F028800120BDE8C9 -:1024E000F08180B5052802D1084600F002F80120ED -:1024F00002BD80B50278DFF864168A7001780FF2A9 -:1025000024700DF00AFE012002BD00000000002032 -:102510007CB504460020ADF80400FFF7FCFD0DF08B -:1025200082FD0A210DF038FF0120009001AB5422FA -:102530009A2106200DF078FE002801D1002076BDFA -:102540009DF80400C0F30210C01D9DF80410C1F3F3 -:102550000211C91D821000EB5270C010A1EBC00027 -:10256000C0B245000220009001AB05F11402D2B2C6 -:102570009A2106200DF058FE002801D1002076BDDA -:102580009DF80400207001AE707860700220009009 -:1025900001AB05F12402D2B29A2106200DF044FECF -:1025A000002801D1002076BD9DF80400A07070784D -:1025B000E0700220009001AB05F13402D2B29A2102 -:1025C00006200DF031FE002801D1002076BD9DF8D7 -:1025D00004002071707860710220009001AB05F159 -:1025E0004402D2B29A2106200DF01EFE002801D12D -:1025F000002076BD9DF80400A0717078E0710FF2A4 -:1026000034600DF08AFDFFF713FE012076BD0FF256 -:10261000AC6106200EF028BA1CB50020ADF806000B -:102620008DF804000FF218600DF077FD002400E033 -:10263000641CDFF87C05032C12DA211809798DF867 -:1026400006102018007A8DF8070002230DF106020B -:102650009A2109200DF0AAFD0028E9D1002016BD1D -:10266000012101700220FFF74BFA002801D1002060 -:1026700016BDFFF712F9002801D1002016BD012078 -:10268000009001AB00229A2109200DF0CDFD401EE3 -:102690008041C043C00F16BD80B50FF2AC500DF0A5 -:1026A0003CFD0220FFF7A0F9002801D1002002BD67 -:1026B000FFF732F9401E8041C043C00F02BD80B514 -:1026C0000FF290500DF029FDDFF89404806A012884 -:1026D00001DB012002BD0220FFF712FA002801D120 -:1026E000002002BDFFF7D9F8401E8041C043C00F53 -:1026F00002BD0000AC37002080B50220FFF700FAD1 -:10270000002801D1002002BDFFF7C7F8401E80411C -:10271000C043C00F02BD2DE9F04F8BB0044606A8A0 -:1027200000210A460B460EC00846ADF8100009907D -:102730000A20009006AB08229A2109200DF074FDB2 -:10274000002800F0498106A8C179DFF81454002957 -:1027500002D18279002A04D0FF2907D182793F2A49 -:1027600004D12978C1716978817102E02970817979 -:102770006970417821709DF818106170C178A1705E -:102780008178E1704179217101796171C179A1711B -:102790008179E171417A2172007A607201200090A2 -:1027A00006AB05229A2109200DF03EFD002800F01D -:1027B00013819DF8180000F00300A0720020E07261 -:1027C0006078000200F47C50217841EA0006E0784D -:1027D000000200F47C50A17841EA000A607900020E -:1027E00000F47C50217941EA0007E079000200F40E -:1027F0007C50A1790843ADF81200607A000200F421 -:102800007C50217A41EA0008E07A000200F47C5012 -:10281000A17A51EA0009D34618D10A209AFBF0F0B8 -:10282000AAEB000A1FFA8AFABBF1790F67DB0520D1 -:102830008DF8100061208DF81100022304AA9A215E -:1028400006200DF0B3FC002859D1C5E0B9F1010F05 -:102850003BD143F69A1001468E4203D2834501DAFA -:1028600087420ED305208DF8100062208DF81100EC -:10287000022304AA9A2106200DF098FC002812D108 -:10288000AAE0BBF1140F0EDA05208DF810006020CD -:102890008DF81100022304AA9A2106200DF086FC6F -:1028A000002800F09980ABF11400062804D20AF148 -:1028B000020A1FFA8AFA22E0ABF11A0005281ED29A -:1028C0000AF1010A1FFA8AFA19E0B9F1020F16D1CA -:1028D00040F6333001468E4211D283450FDA8742EB -:1028E0000DD205208DF8100061208DF81100022313 -:1028F00004AA9A2106200DF059FC00286CD05046FD -:10290000000AE07084F802A009A8039005A80290CC -:10291000CDF80490CDF80080BDF812303A4651460B -:10292000304600F05BF80598A863014644F6206045 -:1029300081422BDB2A6B012A28D10FF220300DF0C7 -:10294000ECFB002028630120009006AB02469A2190 -:1029500006200DF069FC00283ED001208DF8100003 -:102960009DF8180000F0FD008DF81100022304AA64 -:102970009A2106200DF01AFC00282DD0794920203C -:102980000EF084FA01200BB0BDE8F08F8142F9DA35 -:10299000286B0028F6D10FF2D0200DF0BEFB0120ED -:1029A0002863E86A0028EDD10120009006AB44229C -:1029B0009A2106200DF038FC00280DD001208DF85A -:1029C000100092208DF81100022304AA9A210620FB -:1029D0000DF0ECFB0028D5D10020D4E72DE9F0471D -:1029E0002DED068B86B004468A469146DDF8588068 -:1029F000179D00A818210FF093F89FED5C8BB0EEA7 -:102A0000489AF0EE689A0027159EB6B2042E5AD264 -:102A10009FED588B08E053EC182B002057490EF01F -:102A200075FF41EC180B7F1CB742F4DB032E08D175 -:102A300053EC182B00204FF080410EF067FF41EC63 -:102A4000180B20460FF07EF853EC182B0EF05EFFAB -:102A5000CDE9000150460FF075F853EC182B0EF03D -:102A600055FF41EC1A0B00AE86ED02AB48460FF065 -:102A700069F853EC182B0EF049FF41EC180B86ED6A -:102A8000048BDDE900233E483E490EF03FFF064639 -:102A90000F4653EC1A2B3C483C490EF037FF3246A8 -:102AA0003B460FF05DF806460F4653EC182B3848AE -:102AB00038490EF02BFF02460B46304639460FF0E0 -:102AC000C3F841EC180B1AFA84F4002C0FD04846D6 -:102AD0000FF038F806460F4620460FF029F8024658 -:102AE0000B46304639460FF06FF941EC190B51ECAB -:102AF000190B0022284B0EF009FF0022274B0FF084 -:102B00002FF80122264B0FF083FA02D841F65830F5 -:102B100009E00022234B0FF093FA02D240F6FC00AA -:102B200001E00EF0D1FF286051EC180B01221E4B82 -:102B30000FF06EFA01D81F4808E0002213460FF08C -:102B40007FFA01D2104601E00EF0BEFFC8F8000087 -:102B500006B0BDEC068BBDE8F087000068380020A9 -:102B6000AC370020F0580020891700080000000052 -:102B700000000000000000000000F03F00001040D6 -:102B80001361C3D32B6589BF5C2041F163CCDD3F6A -:102B900024B9FC87F4DBA73F8089CC400094A14096 -:102BA0000058BB4000F8A14065CDCD410000D03FAA -:102BB000C838002000CA9A3B0FF2241109200DF0FA -:102BC00053BF00003D3E55703D25642C4C6F3D25A4 -:102BD000640000003D3E5031202564003D3E5032EF -:102BE000202564003D3E494E54453132000000002E -:102BF0003D3E5054483D30003D3E73796E5F50720B -:102C00006F78446174613D25640000003D3E474596 -:102C1000500000003D3E47454F0000003D3E474507 -:102C2000430000003D3E47452043552025782025A0 -:102C3000780000003D3E47452053454C46000000CB -:102C40003D3E4C49475000003D3E4C49476F706542 -:102C50006E0000003D3E4C49474300003D3E4C7530 -:102C6000783E3D25640000003D3E4C75783C3D2596 -:102C700064000000211C0008BD1C0008E91D0008BC -:102C8000191E000800000000CF1E00089F1F00084A -:102C90000000000000000000211C0008BD1C00080E -:102CA000E91D0008191E000800000000371E00087A -:102CB0009F1F000800000000000000009D20000889 -:102CC00017210008312200086F22000800000000D0 -:102CD0008D2200080000000011250008E3240008F0 -:102CE0001926000899260008BF260008F9260008C2 -:102CF000000000001727000800000000000000008E -:102D0000000000002DE9F64F814683B0D9F8086035 -:102D1000B0890E9C401C00EBD070C003000C1AB1AF -:102D2000022A1CD00AD322E07168584301EB400705 -:102D3000706900EB4308A4B2CCB917E0F089B16820 -:102D4000401C00EBD070C003000C584301EB40075F -:102D5000B06900EB4308A4B24CB9348A07E071684B -:102D6000584301EB4007706900EB4308F489012ADE -:102D700000F0208103210AE000EB4100031F30F93D -:102D8000042C5D8820F8045C091D5A8089B2B28940 -:102D9000D9F818009142EFDBA4B20092019401230C -:102DA000D9F81C20394600F0DAF9E008C1004FF0EC -:102DB000000C01910129C0F2DD80D9F81C20AE4839 -:102DC000742114E000EB4E0540F2352A30F91EE084 -:102DD000B5F90250AAEB030A0EFB0AFE15FB03E34A -:102DE0001B13D38008320CF101031FFA83FC019BF3 -:102DF0009C4580F2BF80B2F9003038F902EB13FB3A -:102E00000EF34FEA632E01FB0EF31D1440F235233F -:102E100003FB15EE0FFA8EFE15F1200A48BF4FF0A6 -:102E2000000E14D40AF10105402DA8BF4FF4805EB6 -:102E30000DDA00EB4A0530F91AA0B5F90250A3EB00 -:102E40000E0B0AFB0BFA15FB0EAE4FEA2E3EA2F854 -:102E500000E00CF101051FFA85FCB2F902E038F937 -:102E6000025B1EFB05F56D1201FB05FA4FEA2A4ACB -:102E7000B2F904E003FB1A552DB21AF1200A48BF3B -:102E8000002518D40AF1010BBBF1400FA8BF4FF485 -:102E9000805510DA00EB4A0BBBF902B0CDF800B058 -:102EA000A3EB050B30F91AA00AFB0BFADDF800B012 -:102EB0000BFB05A52D13958038F9025B1EFB05FE63 -:102EC0004FEA6E2E01FB0EF52D1403FB15EE0FFAE3 -:102ED0008EFE15F1200A48BF4FF0000E14D40AF1FF -:102EE0000105402DA8BF4FF4805E0DDA00EB4A05C6 -:102EF00030F91AA0B5F90250A3EB0E0B0AFB0BFA3E -:102F000015FB0EAE4FEA2E3EA2F802E00CF10205D0 -:102F10001FFA85FCB2F906E038F9025B1EFB05FEDC -:102F20004FEA6E2E01FB0EF52D1403FB15E31BB2C9 -:102F300015F1200E48BF00233FF553AF0EF10105F8 -:102F4000402DFFF63FAF4FF480534AE74A4800EB6D -:102F50004E0340F2352530F91E00B3F90230AD1AA8 -:102F6000684313FB0200001321F81C000CF1010060 -:102F70001FFA80FCA4451DDAD9F81C1038F9022B81 -:102F800031F91C0010FB02FE4FEA6E20742242430E -:102F9000131440F2352202FB130212B213F1200E79 -:102FA00048BF0020E0D40EF101004028CEDB4FF4F2 -:102FB0008050D9E7BDF81000002859D0022804BF7E -:102FC000B768D6F81880308A039A01900123F089F7 -:102FD00000903946D9F81C0000F0C1F8274A284B68 -:102FE0004FF0000C42F60D6042F60E61B82419E075 -:102FF00002EB4E0532F91EE0B5F90250C7F5B27A80 -:103000000EFB0AFE15FB07E7BD122FB2C7F1000E3B -:103010008E45A8BF8646039F27F81CE00CF10107E8 -:103020001FFA87FC378ABC4522DA039F38F902EB86 -:1030300037F91C7017FB0EF77D1204FB05F74FEAFA -:10304000274E4FF4B27707FB1E570EF1200E0FFAF2 -:103050008EFE3FB2BEF1000F04D5AD109D42D4DA12 -:103060001D46D2E70EF10105402DC1DB0025CCE75E -:1030700005B0BDE8F08F00000077030880760308F4 -:10308000F3D1FFFF10B401460A684B6C148803F6B5 -:103090003810048014880E2C04BF5488032C04D0EC -:1030A00052204884002010BC704791888181D188CB -:1030B000C18111890182918912FA81F14160118ADD -:1030C00012FA81F18160518912FA81F14161D1894D -:1030D00012FA81F1816103F2D051C16110BC7047D5 -:1030E000F0B413460022DD082C46A3EBC4031FD026 -:1030F00051F8045B50F8047B50F804CB2FFA85F6A6 -:103100002D122FFA85F527FB06222CFB052251F8FC -:10311000045B50F8047B50F804CB2FFA85F62D128F -:103120002FFA85F527FB06222CFB0522641EDFD132 -:103130009BB25B1CDB031B0C0ED031F9024B30F948 -:10314000025B2606361616FB052230F9025B2412B6 -:1031500014FB05225B1EF0D1F0BC104670472DE930 -:10316000F34F85B091461098ADF84000ADF80030AF -:103170000025BDF8400020F001000190BDF840009E -:10318000C008ADF80C001198ADF84400BDF844003B -:10319000069E4108A0EB4100ADF80200019882199B -:1031A000059800EB45000290BDF80CC0BDF840301A -:1031B000DDF808A000204FF0000EA3EBCC03BCF11B -:1031C000000F38D056F8044B5AF8048B2FFA84F7C6 -:1031D00024122FFA84FB5AF8044B28FB070024FB27 -:1031E0000B0052F804BB2FFA8BF74FEA2B2B2FFA68 -:1031F0008BFB28FB07EE24FB0BE756F804EB2FFABA -:103200008EF44FEA2E2E2FFA8EFB5AF804EB5AF862 -:10321000048B2EFB040052F8044B28FB0B002FFA02 -:1032200084FB24122FFA84F42EFB0B7E28FB04EE81 -:10323000BCF1010CC6D19BB25B1CDB035FEA134CF3 -:1032400018D036F9024B3AF9028B3AF9023B2706BD -:103250003F1617FB0800241214FB030032F9024B3F -:1032600027063F1617FB08EE241214FB03EEBCF1F1 -:10327000010CE6D120F3CF102EF3CF1329F8020B67 -:1032800029F8023B16460198491E821989B2002985 -:103290008AD1BDF8020078B18246BDF8402002987C -:1032A0003146FFF71DFF20F3CF1029F8020B0198DC -:1032B0008619BAF1010AF0D1BDF840004519BDF8F0 -:1032C0000000401EADF80000ADB2BDF800000028BF -:1032D0007FF45CAF07B0BDE8F08F0000002216F06D -:1032E0008DB900009248002141608160C160016198 -:1032F00041618161017001214170704770B52DED10 -:10330000068BF0EE608AB0EE419A0024884D287852 -:10331000012800F004816878002852D12E69002E1F -:1033200000F0A280D5ED010A30EE600A10EE100A1E -:103330000EF0B4FA21F000411CF02AFF09EE900AC9 -:10334000B0EE680AD5ED020A30EE600A10EE100AFF -:103350000EF0A4FA21F000411CF01AFF0AEE100A48 -:10336000B0EE490AD5ED030A30EE600A10EE100AFD -:103370000EF094FA21F000411CF00AFF00EE100A52 -:10338000DFED690AF4EE609AF1EE10FA16D5B4EEAC -:1033900060AAF1EE10FA11D5B4EE600AF1EE10FA5F -:1033A0000CD5701C28610728C0F2B98020466860DF -:1033B000A860E860286101206870B0E020462861BC -:1033C000ADE06869002846D1286900284CD0D5EDC9 -:1033D000010A30EE600A10EE100A0EF05FFA21F0DA -:1033E00000411CF0D5FE09EE900AB0EE680AD5ED5A -:1033F000020A30EE600A10EE100A0EF04FFA21F0C9 -:1034000000411CF0C5FE0AEE100AB0EE490AD5EDE7 -:10341000030A30EE600A10EE100A0EF03FFA21F0B7 -:1034200000411CF0B5FE00EE100ADFED400AF4EE9C -:10343000609AF1EE10FA09DAB4EE60AAF1EE10FA31 -:1034400004DAB4EE600AF1EE10FA68DB012068617C -:103450002046286163E0012861D12E69322E02DA0C -:10346000701C28615BE00DD185ED010AB0EE680AA1 -:1034700085ED020AB0EE490A85ED030A2869401C71 -:1034800028614CE0AE69322E44DAD5ED010A30EE07 -:10349000600A10EE100A0EF001FA21F000411CF053 -:1034A00077FE09EE900AB0EE680AD5ED020A30EE1A -:1034B000600A10EE100A0EF0F1F921F000411CF044 -:1034C00067FE0AEE100AB0EE490AD5ED030A30EEA7 -:1034D000600A10EE100A0EF0E1F921F000411CF034 -:1034E00057FE00EE100A701CA861DFED100AF4EE22 -:1034F000609AF1EE10FA09DAB4EE60AAF1EE10FA71 -:1035000004DAB4EE600AF1EE10FA08DB012028704C -:10351000044604E0204628616861A861687020467E -:10352000BDEC068B70BD00006666A63F6766A63FD1 -:1035300060FC002038B504460DF006F890F9705094 -:10354000002C02D14FF0FF3032BD0922002120466D -:103550000EF093FD6D1E062D36D8DFE805F0040C45 -:10356000131A21282F00012060704FF0FF30E07007 -:10357000012020722CE04FF0FF30207020710120DC -:10358000207225E04FF0FF3060700120E070207263 -:103590001EE04FF0FF30207001212171207217E0F2 -:1035A00001206070E0704FF0FF30207210E00120C9 -:1035B00020704FF0FF302071207209E04FF0FF3093 -:1035C0006070E070207203E0012020702071207292 -:1035D000002032BD0FB42DE9FE4300A80FF2C03128 -:1035E0001CC91CC000A827F03DFE06469DF82970A6 -:1035F000D64807704FF005084FF000090069D0F871 -:103600003C04C11742464B4619F05CFFA8FB00453D -:1036100008FB0155384600F03FF8CD48A0FB04896F -:1036200000FB05994046494627F078FD404649464B -:1036300027F085FD4FF47A01304627F015FE4FF450 -:103640008031304627F012FE27F0F8FD27F0FBFD11 -:1036500027F0FEFD27F001FE00A8FFF76BFF00A892 -:1036600028F0DFF9002804D001460FF240300CF0BA -:1036700054FD214689B2012028F01AFA0120BDE844 -:10368000FE035DF814FB80B500F026F8C821002089 -:1036900028F00EFA012002BD80B5C00710D51B220C -:1036A0000021084611F04CF91B220121002011F0E5 -:1036B00047F91B2202210020BDE8084011F040B963 -:1036C0001B220021084611F03BF91B22012100209A -:1036D000BDE8084011F034B980B51B22002101205B -:1036E00011F02EF91B220121084611F029F91B22A5 -:1036F00002210120BDE8084011F022B92DE9F04F68 -:10370000A1B000200146CDE90A011DA80A460B46DA -:103710000EC019A810210EF003FA15A810210EF002 -:10372000FFF910A814210EF0FBF907A800210A46A2 -:1037300006C005A806C00CA810210EF0F1F9002063 -:103740000490ADF80E008DF80C00044614F011FA48 -:1037500005464FF00508A1467C4E3069D0F83C0480 -:10376000C11742464B4619F0ADFEA8FB00AB08FB63 -:1037700001BB03A801900DF10E00009004AB0CAA50 -:1037800005A907A828F061F800283ED1D6E9020172 -:103790006F4AA2FB0A8902FB0B9910EB080041EB70 -:1037A0000901C6E902013278D20724D5002715E0C5 -:1037B00005EB4702B2F9062000EE102AB8EEC00A67 -:1037C000F2EE040A80EE200ADFED5F0A20EE200A06 -:1037D0001DAA02EB870282ED000A7F1C032FE7DBA4 -:1037E0006A690292CDE900010CAB1DAA05A907A8E0 -:1037F00027F0B0FC08E000220292CDE900010CABFA -:1038000005A907A827F0A6FC641C9DF80C00002859 -:1038100002D0E4B2032CACD3E4B2022C03D30FF2F7 -:1038200098100CF07AFC3078C0072BD50AA919A89B -:1038300027F0F5FC00270EE019A850F827000EF03D -:103840002DF80022434B0EF061F80EF03DF915A95A -:1038500041F827007F1C042FEEDB102215A910A8C9 -:103860000EF005FC68698DF850003B48006C00F1D3 -:103870000C04627D10A9E368C06818180EF0F7FB0D -:103880000120A074307880072BD50AA919A827F049 -:10389000CCFC00270EE019A850F827000DF0FEFF21 -:1038A00000222C4B0EF032F80EF00EF915A941F85B -:1038B00027007F1C042FEEDB102215A910A80EF0A4 -:1038C000D6FB00208DF850002348C06B00F10C049B -:1038D000627D10A9E368C06818180EF0C8FB0120CB -:1038E000A074012021B0BDE8F08F80B511F026F85A -:1038F000164908611949C0F8481400F248401849AF -:103900004160184981600FF21501C1600FF25D013D -:103910000161012027F089FB012002BD0B480069ED -:1039200090F83904002801D10020704705E080B5E7 -:10393000002000F006F8012002BD0B4890F90000BD -:10394000704709490870704700008047D8FC002084 -:1039500040420F0080842E4100000020D535000831 -:1039600087360008FD360008F6FD002018B4302226 -:103970000B7812FB030301241C700B7812FB03036A -:103980005C700B7812FB03031B249C700B7812FBFA -:1039900003000022C2700878401C087011BCC6E702 -:1039A000010000000100000001000000444D502013 -:1039B0004946282564290000444D502052464600BF -:1039C00070B400240025264670C070C018384360CB -:1039D000C260017570BC704710B504460CF023FB43 -:1039E000072C01D10CF0D4FC012010BDF2260001FF -:1039F000120A04520704F20A052822142DC2023CBE -:103A0000F004FF01000000010001F1FF01F9188B33 -:103A1000F01273400000803FFFCAA3BFF986F43E56 -:103A2000FBB54A3D00FFFF982A01E8E27815200126 -:103A300002030404AC02060708090C037E011A0302 -:103A4000030000F24E000120026000002004F2FF9B -:103A50000001F1FF01F1FF01F1FF01F1FF01F1FFB1 -:103A600001F1E201FC04FFBC070020BC075C07F188 -:103A7000FF01F1FF01F1FF01F1FF01F1FF01F1FF92 -:103A800001F1FF01F1FF01F1FF01F1FF01F1FF0180 -:103A9000F1FF01F1FF01F1FF01F1FF01F1FF01F180 -:103AA000FF01F1FF01F1FF01F1FF01F1FF01F1FF62 -:103AB00001F1FF01F1FF01F1FF01F1FF01F1FF0150 -:103AC000F1FF01F1FF01F1FF01F1FF01F1FF01F150 -:103AD000FF01F1FF01F1FF01F1FF01F1FF01F13EF3 -:103AE0000120411C15310F2B24400A261F3B19359C -:103AF0002E4A06221B3715312A46102C25411F3B22 -:103B00003450031F1834122E27430D29223E1C382F -:103B1000314D09251E3A18342D49132F2844223ED1 -:103B20003753011D16322C201A0B27203C1A362F32 -:103B30004B07231C3816322B47112D2642203C35CB -:103B400051042019352C60060E2A233F1D39324EB0 -:103B500068F0067014302945233F385480600D12F8 -:103B6000152717292C3E182A2D3F2F41445608208F -:103B7000063042455747595C6E1C20022E40435583 -:103B800014600246585B6D08211C60125E707385DC -:103B900015272A3C2C3E41532D3F42544456596B25 -:103BA00008200645575A6C5C6E71831C20024355F1 -:103BB000586A1460025B6D708208211C6012738564 -:103BC000889A12242739293B3E502A3C3F514153C1 -:103BD000566808200642545769596B6E801C2002B3 -:103BE00040525567146002586A6D7F08211C6012AC -:103BF0007082859727393C4E3E5053653F5154663D -:103C000056686B7D08200657696C7E6E8083951C14 -:103C1000200255676A7C1460026D7F829408211C23 -:103C2000101185979AAC00000101030304040606F5 -:103C3000070709090A01101B0B0B0D0D0E0E1010C2 -:103C40001111131314140F0F101012121313151552 -:103C5000161618181901600C1A1A1C1C1D1D1F1F9E -:103C60002020222223231860061B1B1C1C1E1E1F43 -:103C70001F1810152525262628282929242425251E -:103C8000272728282A2A2B2B2D2D2E01A00C2F2F59 -:103C90003131323234343535373738384C2134A06D -:103CA000122626272729292A2A2C2C2D2D2F2F3082 -:103CB000302B2B2C2C34A00E35353636383839398C -:103CC0003B3B3C3C3E3E3F3F4C60023A3A3B3B185C -:103CD000101541414242444445454040414143431F -:103CE00044444646474749494A013C0C4B4B4D4DDD -:103CF0004E4E50505151535354540403FE1510E08E -:103D00002B52FF01F10F28520106F3059919489231 -:103D1000035443F503042130F311EC075CF0025B1C -:103D200002000000244004E02A0000C0550821D40D -:103D3000F404116771FFFF1A3A2CF339030024438E -:103D4000BA9E042554F4027F753D000024F50F51FE -:103D5000F206011FF2024728F20A10441AC8ABFE0D -:103D6000BE04342FFC06136666663FCDCC4C3F5430 -:103D700003F4031E010000000164F00D3E0000008A -:103D8000000000000001000000000001BEF02B3028 -:103D9000010001020304595A5B5C5D636465676856 -:103DA00069001005A05C440477044F7F0B903C0031 -:103DB0001400000000000000000000000082F21B60 -:103DC00010401E40B403FB00071F9B300E609C7820 -:103DD00066805DEFC81006F03C64098024C611C4FB -:103DE000F0040C636465676869A8FD04AF032500EF -:103DF000A40B060708090024F400534E414D59B0A6 -:103E000090070205001002610000058122549A1DEE -:103E10002C310003C7D50031FF0000000000000076 -:103E20000000000000000000000000000000000092 -:103E30000000000000000000000000000000000082 -:103E40000000000000000000000000000000000072 -:103E50000000000000000000000000000000000062 -:103E60000000000000000000000000000000000052 -:103E70000000000000000000000000000000000042 -:103E80000000000000000000000000000000000032 -:103E90000000000000000000000000000000000022 -:103EA0000000000000000000000000000000000012 -:103EB0000000000000000000000000000000000002 -:103EC00000000000000000000000000000000000F2 -:103ED00000000000000000000000000000000000E2 -:103EE00000000000000000000000000000000000D2 -:103EF00000000000000000000000000000000000C2 -:103F000000000000000000000000000000000000B1 -:103F100000000000000000000000000000000000A1 -:103F20000000000000000000000000000000000091 -:103F30000000000000000000000000000000000081 -:103F40000000000000000000000000000000000071 -:103F50000000000000000000000000000000000061 -:103F60000000000000000000000000000000000051 -:103F70000000000000000000000000000000000041 -:103F80000000000000000000000000000000000031 -:103F90000000000000000000000000000000000021 -:103FA0000000000000000000000000000000000011 -:103FB0000000000000000000000000000000000001 -:103FC00000000000000000000000000000000000F1 -:103FD00000000000000000000000000000000000E1 -:103FE00000000000000000000000000000000000D1 -:103FF00000000000000000000000000000000000C1 -:1040000000000000000000000000000000000000B0 -:1040100000000000000000000000000000000000A0 -:104020000000000000000000000000000000000090 -:104030000000000000000000000000000000000080 -:104040000000000000000000000000000000000070 -:104050000000000000000000000000000000000060 -:104060000000000000000000000000000000000050 -:104070000000000000000000000000000000000040 -:104080000000000000000000000000000000000030 -:104090000000000000000000000000000000000020 -:1040A0000000000000000000000000000000000010 -:1040B0000000000000000000000000000000000000 -:1040C00000000000000000000000000000000000F0 -:1040D00000000000000000000000000000000000E0 -:1040E00000000000000000000000000000000000D0 -:1040F00000000000000000000000000000000000C0 -:1041000000000000000000000000000000000000AF -:10411000000000000000000000000000000000009F -:10412000000000000000000000000000000000008F -:10413000000000000000000000000000000000007F -:10414000000000000000000000000000000000006F -:10415000000000000000000000000000000000005F -:10416000000000000000000000000000000000004F -:10417000000000000000000000000000000000003F -:10418000000000000000000000000000000000002F -:10419000000000000000000000000000000000001F -:1041A000000000000000000000000000000000000F -:1041B00000000000000000000000000000000000FF -:1041C00000000000000000000000000000000000EF -:1041D00000000000000000000000000000000000DF -:1041E00000000000000000000000000000000000CF -:1041F00000000000000000000000000000000000BF -:1042000000000000000000000000000000000000AE -:10421000000000000000000000000000000000009E -:10422000000000000000000000000000000000008E -:10423000000000000000000000000000000000007E -:10424000000000000000000000000000000000006E -:10425000000000000000000000000000000000005E -:10426000000000000000000000000000000000004E -:10427000000000000000000000000000000000003E -:10428000000000000000000000000000000000002E -:10429000000000000000000000000000000000001E -:1042A000000000000000000000000000000000000E -:1042B00000000000000000000000000000000000FE -:1042C00000000000000000000000000000000000EE -:1042D00000000000000000000000000000000000DE -:1042E00000000000000000000000000000000000CE -:1042F00000000000000000000000000000000000BE -:1043000000000000000000000000000000000000AD -:10431000000000000000000000000000000000009D -:10432000000000000000000000000000000000008D -:10433000000000000000000000000000000000007D -:10434000000000000000000000000000000000006D -:10435000000000000000000000000000000000005D -:10436000000000000000000000000000000000004D -:10437000000000000000000000000000000000003D -:10438000000000000000000000000000000000002D -:10439000000000000000000000000000000000001D -:1043A000000000000000000000000000000000000D -:1043B00000000000000000000000000000000000FD -:1043C00000000000000000000000000000000000ED -:1043D00000000000000000000000000000000000DD -:1043E00000000000000000000000000000000000CD -:1043F00000000000000000000000000000000000BD -:1044000000000000000000000000000000000000AC -:10441000000000000000000000000000000000009C -:10442000000000000000000000000000000000008C -:10443000000000000000000000000000000000007C -:10444000000000000000000000000000000000006C -:10445000000000000000000000000000000000005C -:10446000000000000000000000000000000000004C -:10447000000000000000000000000000000000003C -:10448000000000000000000000000000000000002C -:10449000000000000000000000000000000000001C -:1044A000000000000000000000000000000000000C -:1044B00000000000000000000000000000000000FC -:1044C00000000000000000000000000000000000EC -:1044D00000000000000000000000000000000000DC -:1044E00000000000000000000000000000000000CC -:1044F00000000000000000000000000000000000BC -:1045000000000000000000000000000000000000AB -:10451000000000000000000000000000000000009B -:10452000000000000000000000000000000000008B -:10453000000000000000000000000000000000007B -:10454000000000000000000000000000000000006B -:10455000000000000000000000000000000000005B -:10456000000000000000000000000000000000004B -:10457000000000000000000000000000000000003B -:10458000000000000000000000000000000000002B -:10459000000000000000000000000000000000001B -:1045A000000000000000000000000000000000000B -:1045B00000000000000000000000000000000000FB -:1045C00000000000000000000000000000000000EB -:1045D00000000000000000000000000000000000DB -:1045E00000000000000000000000000000000000CB -:1045F00000000000000000000000000000000000BB -:1046000000000000000000000000000000000000AA -:10461000000000000000000000000000000000009A -:10462000000000000000000000000000000000008A -:10463000000000000000000000000000000000007A -:10464000000000000000000000000000000000006A -:10465000000000000000000000000000000000005A -:10466000000000000000000000000000000000004A -:10467000000000000000000000000000000000003A -:10468000000000000000000000000000000000002A -:10469000000000000000000000000000000000001A -:1046A000000000000000000000000000000000000A -:1046B00000000000000000000000000000000000FA -:1046C00000000000000000000000000000000000EA -:1046D00000000000000000000000000000000000DA -:1046E00000000000000000000000000000000000CA -:1046F00000000000000000000000000000000000BA -:1047000000000000000000000000000000000000A9 -:104710000000000000000000000000000000000099 -:104720000000000000000000000000000000000089 -:104730000000000000000000000000000000000079 -:104740000000000000000000000000000000000069 -:104750000000000000000000000000000000000059 -:104760000000000000000000000000000000000049 -:104770000000000000000000000000000000000039 -:104780000000000000000000000000000000000029 -:104790000000000000000000000000000000000019 -:1047A0000000000000000000000000000000000009 -:1047B00000000000000000000000000000000000F9 -:1047C00000000000000000000000000000000000E9 -:1047D00000000000000000000000000000000000D9 -:1047E00000000000000000000000000000000000C9 -:1047F00000000000000000000000000000000000B9 -:1048000000000000000000000000000000000000A8 -:104810000000000000000000000000000000000098 -:104820000000000000000000000000000000000088 -:104830000000000000000000000000000000000078 -:104840000000000000000000000000000000000068 -:104850000000000000000000000000000000000058 -:104860000000000000000000000000000000000048 -:104870000000000000000000000000000000000038 -:104880000000000000000000000000000000000028 -:104890000000000000000000000000000000000018 -:1048A0000000000000000000000000000000000008 -:1048B00000000000000000000000000000000000F8 -:1048C00000000000000000000000000000000000E8 -:1048D00000000000000000000000000000000000D8 -:1048E00000000000000000000000000000000000C8 -:1048F00000000000000000000000000000000000B8 -:1049000000000000000000000000000000000000A7 -:104910000000000000000000000000000000000097 -:104920000000000000000000000000000000000087 -:104930000000000000000000000000000000000077 -:104940000000000000000000000000000000000067 -:104950000000000000000000000000000000000057 -:104960000000000000000000000000000000000047 -:104970000000000000000000000000000000000037 -:104980000000000000000000000000000000000027 -:104990000000000000000000000000000000000017 -:1049A0000000000000000000000000000000000007 -:1049B00000000000000000000000000000000000F7 -:1049C00000000000000000000000000000000000E7 -:1049D00000000000000000000000000000000000D7 -:1049E00000000000000000000000000000000000C7 -:1049F00000000000000000000000000000000000B7 -:104A000000000000000000000000000000000000A6 -:104A10000000000000000000000000000000000096 -:104A20000000000000000000000000000000000086 -:104A30000000000000000000000000000000000076 -:104A40000000000000000000000000000000000066 -:104A50000000000000000000000000000000000056 -:104A60000000000000000000000000000000000046 -:104A70000000000000000000000000000000000036 -:104A80000000000000000000000000000000000026 -:104A90000000000000000000000000000000000016 -:104AA0000000000000000000000000000000000006 -:104AB00000000000000000000000000000000000F6 -:104AC00000000000000000000000000000000000E6 -:104AD00000000000000000000000000000000000D6 -:104AE00000000000000000000000000000000000C6 -:104AF00000000000000000000000000000000000B6 -:104B000000000000000000000000000000000000A5 -:104B10000000000000000000000000000000000095 -:104B20000000000000000000000000000000000085 -:104B30000000000000000000000000000000000075 -:104B40000000000000000000000000000000000065 -:104B50000000000000000000000000000000000055 -:104B60000000000000000000000000000000000045 -:104B70000000000000000000000000000000000035 -:104B80000000000000000000000000000000000025 -:104B90000000000000000000000000000000000015 -:104BA0000000000000000000000000000000000005 -:104BB00000000000000000000000000000000000F5 -:104BC00000000000000000000000000000000000E5 -:104BD00000000000000000000000000000000000D5 -:104BE00000000000000000000000000000000000C5 -:104BF00000000000000000000000000000000000B5 -:104C000000000000000000000000000000000000A4 -:104C10000000000000000000000000000000000094 -:104C20000000000000000000000000000000000084 -:104C30000000000000000000000000000000000074 -:104C40000000000000000000000000000000000064 -:104C50000000000000000000000000000000000054 -:104C60000000000000000000000000000000000044 -:104C70000000000000000000000000000000000034 -:104C80000000000000000000000000000000000024 -:104C90000000000000000000000000000000000014 -:104CA0000000000000000000000000000000000004 -:104CB00000000000000000000000000000000000F4 -:104CC00000000000000000000000000000000000E4 -:104CD00000000000000000000000000000000000D4 -:104CE00000000000000000000000000000000000C4 -:104CF00000000000000000000000000000000000B4 -:104D000000000000000000000000000000000000A3 -:104D10000000000000000000000000000000000093 -:104D20000000000000000000000000000000000083 -:104D30000000000000000000000000000000000073 -:104D40000000000000000000000000000000000063 -:104D50000000000000000000000000000000000053 -:104D60000000000000000000000000000000000043 -:104D70000000000000000000000000000000000033 -:104D80000000000000000000000000000000000023 -:104D90000000000000000000000000000000000013 -:104DA0000000000000000000000000000000000003 -:104DB00000000000000000000000000000000000F3 -:104DC00000000000000000000000000000000000E3 -:104DD00000000000000000000000000000000000D3 -:104DE00000000000000000000000000000000000C3 -:104DF00000000000000000000000000000000000B3 -:104E000000000000000000000000000000000000A2 -:104E10000000000000000000000000000000000092 -:104E20000000000000000000000000000000000082 -:104E30000000000000000000000000000000000072 -:104E40000000000000000000000000000000000062 -:104E50000000000000000000000000000000000052 -:104E60000000000000000000000000000000000042 -:104E70000000000000000000000000000000000032 -:104E80000000000000000000000000000000000022 -:104E90000000000000000000000000000000000012 -:104EA0000000000000000000000000000000000002 -:104EB00000000000000000000000000000000000F2 -:104EC00000000000000000000000000000000000E2 -:104ED00000000000000000000000000000000000D2 -:104EE00000000000000000000000000000000000C2 -:104EF00000000000000000000000000000000000B2 -:104F000000000000000000000000000000000000A1 -:104F10000000000000000000000000000000000091 -:104F20000000000000000000000000000000000081 -:104F30000000000000000000000000000000000071 -:104F40000000000000000000000000000000000061 -:104F50000000000000000000000000000000000051 -:104F60000000000000000000000000000000000041 -:104F70000000000000000000000000000000000031 -:104F80000000000000000000000000000000000021 -:104F90000000000000000000000000000000000011 -:104FA0000000000000000000000000000000000001 -:104FB00000000000000000000000000000000000F1 -:104FC00000000000000000000000000000000000E1 -:104FD00000000000000000000000000000000000D1 -:104FE00000000000000000000000000000000000C1 -:104FF00000000000000000000000000000000000B1 -:1050000000000000000000000000000000000000A0 -:105010000000000000000000000000000000000090 -:105020000000000000000000000000000000000080 -:105030000000000000000000000000000000000070 -:105040000000000000000000000000000000000060 -:105050000000000000000000000000000000000050 -:105060000000000000000000000000000000000040 -:105070000000000000000000000000000000000030 -:105080000000000000000000000000000000000020 -:105090000000000000000000000000000000000010 -:1050A0000000000000000000000000000000000000 -:1050B00000000000000000000000000000000000F0 -:1050C00000000000000000000000000000000000E0 -:1050D00000000000000000000000000000000000D0 -:1050E00000000000000000000000000000000000C0 -:1050F00000000000000000000000000000000000B0 -:10510000000000000000000000000000000000009F -:10511000000000000000000000000000000000008F -:10512000000000000000000000000000000000007F -:10513000000000000000000000000000000000006F -:10514000000000000000000000000000000000005F -:10515000000000000000000000000000000000004F -:10516000000000000000000000000000000000003F -:10517000000000000000000000000000000000002F -:10518000000000000000000000000000000000001F -:10519000000000000000000000000000000000000F -:1051A00000000000000000000000000000000000FF -:1051B00000000000000000000000000000000000EF -:1051C00000000000000000000000000000000000DF -:1051D00000000000000000000000000000000000CF -:1051E00000000000000000000000000000000000BF -:1051F00000000000000000000000000000000000AF -:10520000000000000000000000000000000000009E -:10521000000000000000000000000000000000008E -:10522000000000000000000000000000000000007E -:10523000000000000000000000000000000000006E -:10524000000000000000000000000000000000005E -:10525000000000000000000000000000000000004E -:10526000000000000000000000000000000000003E -:10527000000000000000000000000000000000002E -:10528000000000000000000000000000000000001E -:10529000000000000000000000000000000000000E -:1052A00000000000000000000000000000000000FE -:1052B00000000000000000000000000000000000EE -:1052C00000000000000000000000000000000000DE -:1052D00000000000000000000000000000000000CE -:1052E00000000000000000000000000000000000BE -:1052F00000000000000000000000000000000000AE -:10530000000000000000000000000000000000009D -:10531000000000000000000000000000000000008D -:10532000000000000000000000000000000000007D -:10533000000000000000000000000000000000006D -:10534000000000000000000000000000000000005D -:10535000000000000000000000000000000000004D -:10536000000000000000000000000000000000003D -:10537000000000000000000000000000000000002D -:10538000000000000000000000000000000000001D -:10539000000000000000000000000000000000000D -:1053A00000000000000000000000000000000000FD -:1053B00000000000000000000000000000000000ED -:1053C00000000000000000000000000000000000DD -:1053D00000000000000000000000000000000000CD -:1053E00000000000000000000000000000000000BD -:1053F00000000000000000000000000000000000AD -:10540000000000000000000000000000000000009C -:10541000000000000000000000000000000000008C -:10542000000000000000000000000000000000007C -:10543000000000000000000000000000000000006C -:10544000000000000000000000000000000000005C -:10545000000000000000000000000000000000004C -:10546000000000000000000000000000000000003C -:10547000000000000000000000000000000000002C -:10548000000000000000000000000000000000001C -:10549000000000000000000000000000000000000C -:1054A00000000000000000000000000000000000FC -:1054B00000000000000000000000000000000000EC -:1054C00000000000000000000000000000000000DC -:1054D00000000000000000000000000000000000CC -:1054E00000000000000000000000000000000000BC -:1054F00000000000000000000000000000000000AC -:10550000000000000000000000000000000000009B -:10551000000000000000000000000000000000008B -:10552000000000000000000000000000000000007B -:10553000000000000000000000000000000000006B -:10554000000000000000000000000000000000005B -:10555000000000000000000000000000000000004B -:10556000000000000000000000000000000000003B -:10557000000000000000000000000000000000002B -:10558000000000000000000000000000000000001B -:10559000000000000000000000000000000000000B -:1055A00000000000000000000000000000000000FB -:1055B00000000000000000000000000000000000EB -:1055C00000000000000000000000000000000000DB -:1055D00000000000000000000000000000000000CB -:1055E00000000000000000000000000000000000BB -:1055F00000000000000000000000000000000000AB -:10560000000000000000000000000000000000009A -:10561000000000000000000000000000000000008A -:10562000000000000000000000000000000000007A -:10563000000000000000000000000000000000006A -:10564000000000000000000000000000000000005A -:10565000000000000000000000000000000000004A -:10566000000000000000000000000000000000003A -:10567000000000000000000000000000000000002A -:10568000000000000000000000000000000000001A -:10569000000000000000000000000000000000000A -:1056A00000000000000000000000000000000000FA -:1056B00000000000000000000000000000000000EA -:1056C00000000000000000000000000000000000DA -:1056D00000000000000000000000000000000000CA -:1056E00000000000000000000000000000000000BA -:1056F00000000000000000000000000000000000AA -:105700000000000000000000000000000000000099 -:105710000000000000000000000000000000000089 -:105720000000000000000000000000000000000079 -:105730000000000000000000000000000000000069 -:105740000000000000000000000000000000000059 -:105750000000000000000000000000000000000049 -:105760000000000000000000000000000000000039 -:105770000000000000000000000000000000000029 -:105780000000000000000000000000000000000019 -:105790000000000000000000000000000000000009 -:1057A00000000000000000000000000000000000F9 -:1057B00000000000000000000000000000000000E9 -:1057C00000000000000000000000000000000000D9 -:1057D00000000000000000000000000000000000C9 -:1057E00000000000000000000000000000000000B9 -:1057F00000000000000000000000000000000000A9 -:105800000000000000000000000000000000000098 -:105810000000000000000000000000000000000088 -:105820000000000000000000000000000000000078 -:105830000000000000000000000000000000000068 -:105840000000000000000000000000000000000058 -:105850000000000000000000000000000000000048 -:105860000000000000000000000000000000000038 -:105870000000000000000000000000000000000028 -:105880000000000000000000000000000000000018 -:105890000000000000000000000000000000000008 -:1058A00000000000000000000000000000000000F8 -:1058B00000000000000000000000000000000000E8 -:1058C00000000000000000000000000000000000D8 -:1058D00000000000000000000000000000000000C8 -:1058E00000000000000000000000000000000000B8 -:1058F00000000000000000000000000000000000A8 -:105900000000000000000000000000000000000097 -:105910000000000000000000000000000000000087 -:105920000000000000000000000000000000000077 -:105930000000000000000000000000000000000067 -:105940000000000000000000000000000000000057 -:105950000000000000000000000000000000000047 -:105960000000000000000000000000000000000037 -:105970000000000000000000000000000000000027 -:105980000000000000000000000000000000000017 -:105990000000000000000000000000000000000007 -:1059A00000000000000000000000000000000000F7 -:1059B00000000000000000000000000000000000E7 -:1059C00000000000000000000000000000000000D7 -:1059D00000000000000000000000000000000000C7 -:1059E00000000000000000000000000000000000B7 -:1059F00000000000000000000000000000000000A7 -:105A00000000000000000000000000000000000096 -:105A10000000000000000000000000000000000086 -:105A20000000000000000000000000000000000076 -:105A30000000000000000000000000000000000066 -:105A40000000000000000000000000000000000056 -:105A50000000000000000000000000000000000046 -:105A60000000000000000000000000000000000036 -:105A70000000000000000000000000000000000026 -:105A80000000000000000000000000000000000016 -:105A90000000000000000000000000000000000006 -:105AA00000000000000000000000000000000000F6 -:105AB00000000000000000000000000000000000E6 -:105AC00000000000000000000000000000000000D6 -:105AD00000000000000000000000000000000000C6 -:105AE00000000000000000000000000000000000B6 -:105AF00000000000000000000000000000000000A6 -:105B00000000000000000000000000000000000095 -:105B10000000000000000000000000000000000085 -:105B20000000000000000000000000000000000075 -:105B30000000000000000000000000000000000065 -:105B40000000000000000000000000000000000055 -:105B50000000000000000000000000000000000045 -:105B60000000000000000000000000000000000035 -:105B70000000000000000000000000000000000025 -:105B80000000000000000000000000000000000015 -:105B90000000000000000000000000000000000005 -:105BA00000000000000000000000000000000000F5 -:105BB00000000000000000000000000000000000E5 -:105BC00000000000000000000000000000000000D5 -:105BD00000000000000000000000000000000000C5 -:105BE00000000000000000000000000000000000B5 -:105BF00000000000000000000000000000000000A5 -:105C00000000000000000000000000000000000094 -:105C10000000000000000000000000000000000084 -:105C20000000000000000000000000000000000074 -:105C30000000000000000000000000000000000064 -:105C40000000000000000000000000000000000054 -:105C50000000000000000000000000000000000044 -:105C60000000000000000000000000000000000034 -:105C70000000000000000000000000000000000024 -:105C80000000000000000000000000000000000014 -:105C90000000000000000000000000000000000004 -:105CA00000000000000000000000000000000000F4 -:105CB00000000000000000000000000000000000E4 -:105CC00000000000000000000000000000000000D4 -:105CD00000000000000000000000000000000000C4 -:105CE00000000000000000000000000000000000B4 -:105CF00000000000000000000000000000000000A4 -:105D00000000000000000000000000000000000093 -:105D10000000000000000000000000000000000083 -:105D20000000000000000000000000000000000073 -:105D30000000000000000000000000000000000063 -:105D40000000000000000000000000000000000053 -:105D50000000000000000000000000000000000043 -:105D60000000000000000000000000000000000033 -:105D70000000000000000000000000000000000023 -:105D80000000000000000000000000000000000013 -:105D90000000000000000000000000000000000003 -:105DA00000000000000000000000000000000000F3 -:105DB00000000000000000000000000000000000E3 -:105DC00000000000000000000000000000000000D3 -:105DD00000000000000000000000000000000000C3 -:105DE00000000000000000000000000000000000B3 -:105DF00000000000000000000000000000000000A3 -:105E00000000000000000000000000000000000092 -:105E10000000000000000000000000000000000082 -:105E20000000000000000000000000000000000072 -:105E30000000000000000000000000000000000062 -:105E40000000000000000000000000000000000052 -:105E50000000000000000000000000000000000042 -:105E60000000000000000000000000000000000032 -:105E70000000000000000000000000000000000022 -:105E80000000000000000000000000000000000012 -:105E90000000000000000000000000000000000002 -:105EA00000000000000000000000000000000000F2 -:105EB00000000000000000000000000000000000E2 -:105EC00000000000000000000000000000000000D2 -:105ED00000000000000000000000000000000000C2 -:105EE00000000000000000000000000000000000B2 -:105EF00000000000000000000000000000000000A2 -:105F00000000000000000000000000000000000091 -:105F10000000000000000000000000000000000081 -:105F20000000000000000000000000000000000071 -:105F30000000000000000000000000000000000061 -:105F40000000000000000000000000000000000051 -:105F50000000000000000000000000000000000041 -:105F60000000000000000000000000000000000031 -:105F70000000000000000000000000000000000021 -:105F80000000000000000000000000000000000011 -:105F90000000000000000000000000000000000001 -:105FA00000000000000000000000000000000000F1 -:105FB00000000000000000000000000000000000E1 -:105FC00000000000000000000000000000000000D1 -:105FD00000000000000000000000000000000000C1 -:105FE00000000000000000000000000000000000B1 -:105FF00000000000000000000000000000000000A1 -:106000000000000000000000000000000000000090 -:106010000000000000000000000000000000000080 -:106020000000000000000000000000000000000070 -:106030000000000000000000000000000000000060 -:106040000000000000000000000000000000000050 -:106050000000000000000000000000000000000040 -:106060000000000000000000000000000000000030 -:106070000000000000000000000000000000000020 -:106080000000000000000000000000000000000010 -:106090000000000000000000000000000000000000 -:1060A00000000000000000000000000000000000F0 -:1060B00000000000000000000000000000000000E0 -:1060C00000000000000000000000000000000000D0 -:1060D00000000000000000000000000000000000C0 -:1060E00000000000000000000000000000000000B0 -:1060F00000000000000000000000000000000000A0 -:10610000000000000000000000000000000000008F -:10611000000000000000000000000000000000007F -:10612000000000000000000000000000000000006F -:10613000000000000000000000000000000000005F -:10614000000000000000000000000000000000004F -:10615000000000000000000000000000000000003F -:10616000000000000000000000000000000000002F -:10617000000000000000000000000000000000001F -:10618000000000000000000000000000000000000F -:1061900000000000000000000000000000000000FF -:1061A00000000000000000000000000000000000EF -:1061B00000000000000000000000000000000000DF -:1061C00000000000000000000000000000000000CF -:1061D00000000000000000000000000000000000BF -:1061E00000000000000000000000000000000000AF -:1061F000000000000000000000000000000000009F -:10620000000000000000000000000000000000008E -:10621000000000000000000000000000000000007E -:10622000000000000000000000000000000000006E -:10623000000000000000000000000000000000005E -:10624000000000000000000000000000000000004E -:10625000000000000000000000000000000000003E -:10626000000000000000000000000000000000002E -:10627000000000000000000000000000000000001E -:10628000000000000000000000000000000000000E -:1062900000000000000000000000000000000000FE -:1062A00000000000000000000000000000000000EE -:1062B00000000000000000000000000000000000DE -:1062C00000000000000000000000000000000000CE -:1062D00000000000000000000000000000000000BE -:1062E00000000000000000000000000000000000AE -:1062F000000000000000000000000000000000009E -:10630000000000000000000000000000000000008D -:10631000000000000000000000000000000000007D -:10632000000000000000000000000000000000006D -:10633000000000000000000000000000000000005D -:10634000000000000000000000000000000000004D -:10635000000000000000000000000000000000003D -:10636000000000000000000000000000000000002D -:10637000000000000000000000000000000000001D -:10638000000000000000000000000000000000000D -:1063900000000000000000000000000000000000FD -:1063A00000000000000000000000000000000000ED -:1063B00000000000000000000000000000000000DD -:1063C00000000000000000000000000000000000CD -:1063D00000000000000000000000000000000000BD -:1063E00000000000000000000000000000000000AD -:1063F000000000000000000000000000000000009D -:10640000000000000000000000000000000000008C -:10641000000000000000000000000000000000007C -:10642000000000000000000000000000000000006C -:10643000000000000000000000000000000000005C -:10644000000000000000000000000000000000004C -:10645000000000000000000000000000000000003C -:10646000000000000000000000000000000000002C -:10647000000000000000000000000000000000001C -:10648000000000000000000000000000000000000C -:1064900000000000000000000000000000000000FC -:1064A00000000000000000000000000000000000EC -:1064B00000000000000000000000000000000000DC -:1064C00000000000000000000000000000000000CC -:1064D00000000000000000000000000000000000BC -:1064E00000000000000000000000000000000000AC -:1064F000000000000000000000000000000000009C -:10650000000000000000000000000000000000008B -:10651000000000000000000000000000000000007B -:10652000000000000000000000000000000000006B -:10653000000000000000000000000000000000005B -:10654000000000000000000000000000000000004B -:10655000000000000000000000000000000000003B -:10656000000000000000000000000000000000002B -:10657000000000000000000000000000000000001B -:10658000000000000000000000000000000000000B -:1065900000000000000000000000000000000000FB -:1065A00000000000000000000000000000000000EB -:1065B00000000000000000000000000000000000DB -:1065C00000000000000000000000000000000000CB -:1065D00000000000000000000000000000000000BB -:1065E00000000000000000000000000000000000AB -:1065F000000000000000000000000000000000009B -:10660000000000000000000000000000000000008A -:10661000000000000000000000000000000000007A -:10662000000000000000000000000000000000006A -:10663000000000000000000000000000000000005A -:10664000000000000000000000000000000000004A -:10665000000000000000000000000000000000003A -:10666000000000000000000000000000000000002A -:10667000000000000000000000000000000000001A -:10668000000000000000000000000000000000000A -:1066900000000000000000000000000000000000FA -:1066A00000000000000000000000000000000000EA -:1066B00000000000000000000000000000000000DA -:1066C00000000000000000000000000000000000CA -:1066D00000000000000000000000000000000000BA -:1066E00000000000000000000000000000000000AA -:1066F000000000000000000000000000000000009A -:106700000000000000000000000000000000000089 -:106710000000000000000000000000000000000079 -:106720000000000000000000000000000000000069 -:106730000000000000000000000000000000000059 -:106740000000000000000000000000000000000049 -:106750000000000000000000000000000000000039 -:106760000000000000000000000000000000000029 -:106770000000000000000000000000000000000019 -:106780000000000000000000000000000000000009 -:1067900000000000000000000000000000000000F9 -:1067A00000000000000000000000000000000000E9 -:1067B00000000000000000000000000000000000D9 -:1067C00000000000000000000000000000000000C9 -:1067D00000000000000000000000000000000000B9 -:1067E00000000000000000000000000000000000A9 -:1067F0000000000000000000000000000000000099 -:106800000000000000000000000000000000000088 -:106810000000000000000000000000000000000078 -:106820000000000000000000000000000000000068 -:106830000000000000000000000000000000000058 -:106840000000000000000000000000000000000048 -:106850000000000000000000000000000000000038 -:106860000000000000000000000000000000000028 -:106870000000000000000000000000000000000018 -:106880000000000000000000000000000000000008 -:1068900000000000000000000000000000000000F8 -:1068A00000000000000000000000000000000000E8 -:1068B00000000000000000000000000000000000D8 -:1068C00000000000000000000000000000000000C8 -:1068D00000000000000000000000000000000000B8 -:1068E00000000000000000000000000000000000A8 -:1068F0000000000000000000000000000000000098 -:106900000000000000000000000000000000000087 -:106910000000000000000000000000000000000077 -:106920000000000000000000000000000000000067 -:106930000000000000000000000000000000000057 -:106940000000000000000000000000000000000047 -:106950000000000000000000000000000000000037 -:106960000000000000000000000000000000000027 -:106970000000000000000000000000000000000017 -:106980000000000000000000000000000000000007 -:1069900000000000000000000000000000000000F7 -:1069A00000000000000000000000000000000000E7 -:1069B00000000000000000000000000000000000D7 -:1069C00000000000000000000000000000000000C7 -:1069D00000000000000000000000000000000000B7 -:1069E00000000000000000000000000000000000A7 -:1069F0000000000000000000000000000000000097 -:106A00000000000000000000000000000000000086 -:106A10000000000000000000000000000000000076 -:106A20000000000000000000000000000000000066 -:106A30000000000000000000000000000000000056 -:106A40000000000000000000000000000000000046 -:106A50000000000000000000000000000000000036 -:106A60000000000000000000000000000000000026 -:106A70000000000000000000000000000000000016 -:106A80000000000000000000000000000000000006 -:106A900000000000000000000000000000000000F6 -:106AA00000000000000000000000000000000000E6 -:106AB00000000000000000000000000000000000D6 -:106AC00000000000000000000000000000000000C6 -:106AD00000000000000000000000000000000000B6 -:106AE00000000000000000000000000000000000A6 -:106AF0000000000000000000000000000000000096 -:106B00000000000000000000000000000000000085 -:106B10000000000000000000000000000000000075 -:106B20000000000000000000000000000000000065 -:106B30000000000000000000000000000000000055 -:106B40000000000000000000000000000000000045 -:106B50000000000000000000000000000000000035 -:106B60000000000000000000000000000000000025 -:106B70000000000000000000000000000000000015 -:106B80000000000000000000000000000000000005 -:106B900000000000000000000000000000000000F5 -:106BA00000000000000000000000000000000000E5 -:106BB00000000000000000000000000000000000D5 -:106BC00000000000000000000000000000000000C5 -:106BD00000000000000000000000000000000000B5 -:106BE00000000000000000000000000000000000A5 -:106BF0000000000000000000000000000000000095 -:106C00000000000000000000000000000000000084 -:106C10000000000000000000000000000000000074 -:106C20000000000000000000000000000000000064 -:106C30000000000000000000000000000000000054 -:106C40000000000000000000000000000000000044 -:106C50000000000000000000000000000000000034 -:106C60000000000000000000000000000000000024 -:106C70000000000000000000000000000000000014 -:106C80000000000000000000000000000000000004 -:106C900000000000000000000000000000000000F4 -:106CA00000000000000000000000000000000000E4 -:106CB00000000000000000000000000000000000D4 -:106CC00000000000000000000000000000000000C4 -:106CD00000000000000000000000000000000000B4 -:106CE00000000000000000000000000000000000A4 -:106CF0000000000000000000000000000000000094 -:106D00000000000000000000000000000000000083 -:106D10000000000000000000000000000000000073 -:106D20000000000000000000000000000000000063 -:106D30000000000000000000000000000000000053 -:106D40000000000000000000000000000000000043 -:106D50000000000000000000000000000000000033 -:106D60000000000000000000000000000000000023 -:106D70000000000000000000000000000000000013 -:106D80000000000000000000000000000000000003 -:106D900000000000000000000000000000000000F3 -:106DA00000000000000000000000000000000000E3 -:106DB00000000000000000000000000000000000D3 -:106DC00000000000000000000000000000000000C3 -:106DD00000000000000000000000000000000000B3 -:106DE00000000000000000000000000000000000A3 -:106DF0000000000000000000000000000000000093 -:106E00000000000000000000000000000000000082 -:106E10000000000000000000000000000000000072 -:106E20000000000000000000000000000000000062 -:106E30000000000000000000000000000000000052 -:106E40000000000000000000000000000000000042 -:106E50000000000000000000000000000000000032 -:106E60000000000000000000000000000000000022 -:106E70000000000000000000000000000000000012 -:106E80000000000000000000000000000000000002 -:106E900000000000000000000000000000000000F2 -:106EA00000000000000000000000000000000000E2 -:106EB00000000000000000000000000000000000D2 -:106EC00000000000000000000000000000000000C2 -:106ED00000000000000000000000000000000000B2 -:106EE00000000000000000000000000000000000A2 -:106EF0000000000000000000000000000000000092 -:106F00000000000000000000000000000000000081 -:106F10000000000000000000000000000000000071 -:106F20000000000000000000000000000000000061 -:106F30000000000000000000000000000000000051 -:106F40000000000000000000000000000000000041 -:106F50000000000000000000000000000000000031 -:106F60000000000000000000000000000000000021 -:106F70000000000000000000000000000000000011 -:106F80000000000000000000000000000000000001 -:106F900000000000000000000000000000000000F1 -:106FA00000000000000000000000000000000000E1 -:106FB00000000000000000000000000000000000D1 -:106FC00000000000000000000000000000000000C1 -:106FD00000000000000000000000000000000000B1 -:106FE00000000000000000000000000000000000A1 -:106FF0000000000000000000000000000000000091 -:107000000000000000000000000000000000000080 -:107010000000000000000000000000000000000070 -:107020000000000000000000000000000000000060 -:107030000000000000000000000000000000000050 -:107040000000000000000000000000000000000040 -:107050000000000000000000000000000000000030 -:107060000000000000000000000000000000000020 -:107070000000000000000000000000000000000010 -:107080000000000000000000000000000000000000 -:1070900000000000000000000000000000000000F0 -:1070A00000000000000000000000000000000000E0 -:1070B00000000000000000000000000000000000D0 -:1070C00000000000000000000000000000000000C0 -:1070D00000000000000000000000000000000000B0 -:1070E00000000000000000000000000000000000A0 -:1070F0000000000000000000000000000000000090 -:10710000000000000000000000000000000000007F -:10711000000000000000000000000000000000006F -:10712000000000000000000000000000000000005F -:10713000000000000000000000000000000000004F -:10714000000000000000000000000000000000003F -:10715000000000000000000000000000000000002F -:10716000000000000000000000000000000000001F -:10717000000000000000000000000000000000000F -:1071800000000000000000000000000000000000FF -:1071900000000000000000000000000000000000EF -:1071A00000000000000000000000000000000000DF -:1071B00000000000000000000000000000000000CF -:1071C00000000000000000000000000000000000BF -:1071D00000000000000000000000000000000000AF -:1071E000000000000000000000000000000000009F -:1071F000000000000000000000000000000000008F -:10720000000000000000000000000000000000007E -:10721000000000000000000000000000000000006E -:10722000000000000000000000000000000000005E -:10723000000000000000000000000000000000004E -:10724000000000000000000000000000000000003E -:10725000000000000000000000000000000000002E -:10726000000000000000000000000000000000001E -:10727000000000000000000000000000000000000E -:1072800000000000000000000000000000000000FE -:1072900000000000000000000000000000000000EE -:1072A00000000000000000000000000000000000DE -:1072B00000000000000000000000000000000000CE -:1072C00000000000000000000000000000000000BE -:1072D00000000000000000000000000000000000AE -:1072E000000000000000000000000000000000009E -:1072F000000000000000000000000000000000008E -:10730000000000000000000000000000000000007D -:10731000000000000000000000000000000000006D -:10732000000000000000000000000000000000005D -:10733000000000000000000000000000000000004D -:10734000000000000000000000000000000000003D -:10735000000000000000000000000000000000002D -:10736000000000000000000000000000000000001D -:10737000000000000000000000000000000000000D -:1073800000000000000000000000000000000000FD -:1073900000000000000000000000000000000000ED -:1073A00000000000000000000000000000000000DD -:1073B00000000000000000000000000000000000CD -:1073C00000000000000000000000000000000000BD -:1073D00000000000000000000000000000000000AD -:1073E000000000000000000000000000000000009D -:1073F000000000000000000000000000000000008D -:10740000000000000000000000000000000000007C -:10741000000000000000000000000000000000006C -:10742000000000000000000000000000000000005C -:10743000000000000000000000000000000000004C -:10744000000000000000000000000000000000003C -:10745000000000000000000000000000000000002C -:10746000000000000000000000000000000000001C -:10747000000000000000000000000000000000000C -:1074800000000000000000000000000000000000FC -:1074900000000000000000000000000000000000EC -:1074A00000000000000000000000000000000000DC -:1074B00000000000000000000000000000000000CC -:1074C00000000000000000000000000000000000BC -:1074D00000000000000000000000000000000000AC -:1074E000000000000000000000000000000000009C -:1074F000000000000000000000000000000000008C -:10750000000000000000000000000000000000007B -:10751000000000000000000000000000000000006B -:10752000000000000000000000000000000000005B -:10753000000000000000000000000000000000004B -:10754000000000000000000000000000000000003B -:10755000000000000000000000000000000000002B -:10756000000000000000000000000000000000001B -:10757000000000000000000000000000000000000B -:1075800000000000000000000000000000000000FB -:1075900000000000000000000000000000000000EB -:1075A00000000000000000000000000000000000DB -:1075B00000000000000000000000000000000000CB -:1075C00000000000000000000000000000000000BB -:1075D00000000000000000000000000000000000AB -:1075E000000000000000000000000000000000009B -:1075F000000000000000000000000000000000008B -:10760000000000000000000000000000000000007A -:10761000000000000000000000000000000000006A -:10762000000000000000000000000000000000005A -:10763000000000000000000000000000000000004A -:10764000000000000000000000000000000000003A -:10765000000000000000000000000000000000002A -:10766000000000000000000000000000000000001A -:10767000000000000000000000000000000000000A -:1076800000000000000000000000000000000000FA -:1076900000000000000000000000000000000000EA -:1076A00000000000000000000000000000000000DA -:1076B00000000000000000000000000000000000CA -:1076C00000000000000000000000000000000000BA -:1076D00000000000000000000000000000000000AA -:1076E000000000000000000000000000000000009A -:1076F000000000000000000000000000000000008A -:107700000000000000000000000000000000000079 -:107710000000000000000000000000000000000069 -:107720000000000000000000000000000000000059 -:107730000000000000000000000000000000000049 -:107740000000000000000000000000000000000039 -:107750000000000000000000000000000000000029 -:107760000000000000000000000000000000000019 -:107770000000000000000000000000000000000009 -:1077800000000000000000000000000000000000F9 -:1077900000000000000000000000000000000000E9 -:1077A00000000000000000000000000000000000D9 -:1077B00000000000000000000000000000000000C9 -:1077C00000000000000000000000000000000000B9 -:1077D00000000000000000000000000000000000A9 -:1077E0000000000000000000000000000000000099 -:1077F0000000000000000000000000000000000089 -:107800000000000000000000000000000000000078 -:107810000000000000000000000000000000000068 -:107820000000000000000000000000000000000058 -:107830000000000000000000000000000000000048 -:107840000000000000000000000000000000000038 -:107850000000000000000000000000000000000028 -:107860000000000000000000000000000000000018 -:107870000000000000000000000000000000000008 -:1078800000000000000000000000000000000000F8 -:1078900000000000000000000000000000000000E8 -:1078A00000000000000000000000000000000000D8 -:1078B00000000000000000000000000000000000C8 -:1078C00000000000000000000000000000000000B8 -:1078D00000000000000000000000000000000000A8 -:1078E0000000000000000000000000000000000098 -:1078F0000000000000000000000000000000000088 -:107900000000000000000000000000000000000077 -:107910000000000000000000000000000000000067 -:107920000000000000000000000000000000000057 -:107930000000000000000000000000000000000047 -:107940000000000000000000000000000000000037 -:107950000000000000000000000000000000000027 -:107960000000000000000000000000000000000017 -:107970000000000000000000000000000000000007 -:1079800000000000000000000000000000000000F7 -:1079900000000000000000000000000000000000E7 -:1079A00000000000000000000000000000000000D7 -:1079B00000000000000000000000000000000000C7 -:1079C00000000000000000000000000000000000B7 -:1079D00000000000000000000000000000000000A7 -:1079E0000000000000000000000000000000000097 -:1079F0000000000000000000000000000000000087 -:107A00000000000000000000000000000000000076 -:107A10000000000000000000000000000000000066 -:107A20000000000000000000000000000000000056 -:107A30000000000000000000000000000000000046 -:107A40000000000000000000000000000000000036 -:107A50000000000000000000000000000000000026 -:107A60000000000000000000000000000000000016 -:107A70000000000000000000000000000000000006 -:107A800000000000000000000000000000000000F6 -:107A900000000000000000000000000000000000E6 -:107AA00000000000000000000000000000000000D6 -:107AB00000000000000000000000000000000000C6 -:107AC00000000000000000000000000000000000B6 -:107AD00000000000000000000000000000000000A6 -:107AE0000000000000000000000000000000000096 -:107AF0000000000000000000000000000000000086 -:107B00000000000000000000000000000000000075 -:107B10000000000000000000000000000000000065 -:107B20000000000000000000000000000000000055 -:107B30000000000000000000000000000000000045 -:107B40000000000000000000000000000000000035 -:107B50000000000000000000000000000000000025 -:107B60000000000000000000000000000000000015 -:107B70000000000000000000000000000000000005 -:107B800000000000000000000000000000000000F5 -:107B900000000000000000000000000000000000E5 -:107BA00000000000000000000000000000000000D5 -:107BB00000000000000000000000000000000000C5 -:107BC00000000000000000000000000000000000B5 -:107BD00000000000000000000000000000000000A5 -:107BE0000000000000000000000000000000000095 -:107BF0000000000000000000000000000000000085 -:107C00000000000000000000000000000000000074 -:107C10000000000000000000000000000000000064 -:107C20000000000000000000000000000000000054 -:107C30000000000000000000000000000000000044 -:107C40000000000000000000000000000000000034 -:107C50000000000000000000000000000000000024 -:107C60000000000000000000000000000000000014 -:107C70000000000000000000000000000000000004 -:107C800000000000000000000000000000000000F4 -:107C900000000000000000000000000000000000E4 -:107CA00000000000000000000000000000000000D4 -:107CB00000000000000000000000000000000000C4 -:107CC00000000000000000000000000000000000B4 -:107CD00000000000000000000000000000000000A4 -:107CE0000000000000000000000000000000000094 -:107CF0000000000000000000000000000000000084 -:107D00000000000000000000000000000000000073 -:107D10000000000000000000000000000000000063 -:107D20000000000000000000000000000000000053 -:107D30000000000000000000000000000000000043 -:107D40000000000000000000000000000000000033 -:107D50000000000000000000000000000000000023 -:107D60000000000000000000000000000000000013 -:107D70000000000000000000000000000000000003 -:107D800000000000000000000000000000000000F3 -:107D900000000000000000000000000000000000E3 -:107DA00000000000000000000000000000000000D3 -:107DB00000000000000000000000000000000000C3 -:107DC00000000000000000000000000000000000B3 -:107DD00000000000000000000000000000000000A3 -:107DE0000000000000000000000000000000000093 -:107DF0000000000000000000000000000000000083 -:107E00000000000000000000000000000000000072 -:107E10000000000000000000000000000000000062 -:107E20000000000000000000000000000000000052 -:107E30000000000000000000000000000000000042 -:107E40000000000000000000000000000000000032 -:107E50000000000000000000000000000000000022 -:107E60000000000000000000000000000000000012 -:107E70000000000000000000000000000000000002 -:107E800000000000000000000000000000000000F2 -:107E900000000000000000000000000000000000E2 -:107EA00000000000000000000000000000000000D2 -:107EB00000000000000000000000000000000000C2 -:107EC00000000000000000000000000000000000B2 -:107ED00000000000000000000000000000000000A2 -:107EE0000000000000000000000000000000000092 -:107EF0000000000000000000000000000000000082 -:107F00000000000000000000000000000000000071 -:107F10000000000000000000000000000000000061 -:107F20000000000000000000000000000000000051 -:107F30000000000000000000000000000000000041 -:107F40000000000000000000000000000000000031 -:107F50000000000000000000000000000000000021 -:107F60000000000000000000000000000000000011 -:107F70000000000000000000000000000000000001 -:107F800000000000000000000000000000000000F1 -:107F900000000000000000000000000000000000E1 -:107FA00000000000000000000000000000000000D1 -:107FB00000000000000000000000000000000000C1 -:107FC00000000000000000000000000000000000B1 -:107FD00000000000000000000000000000000000A1 -:107FE0000000000000000000000000000000000091 -:107FF0000000000000000000000000000000000081 -:108000000000000000000000000000000000000070 -:108010000000000000000000000000000000000060 -:108020000000000000000000000000000000000050 -:108030000000000000000000000000000000000040 -:108040000000000000000000000000000000000030 -:108050000000000000000000000000000000000020 -:108060000000000000000000000000000000000010 -:108070000000000000000000000000000000000000 -:1080800000000000000000000000000000000000F0 -:1080900000000000000000000000000000000000E0 -:1080A00000000000000000000000000000000000D0 -:1080B00000000000000000000000000000000000C0 -:1080C00000000000000000000000000000000000B0 -:1080D00000000000000000000000000000000000A0 -:1080E0000000000000000000000000000000000090 -:1080F0000000000000000000000000000000000080 -:10810000000000000000000000000000000000006F -:10811000000000000000000000000000000000005F -:10812000000000000000000000000000000000004F -:10813000000000000000000000000000000000003F -:10814000000000000000000000000000000000002F -:10815000000000000000000000000000000000001F -:10816000000000000000000000000000000000000F -:1081700000000000000000000000000000000000FF -:1081800000000000000000000000000000000000EF -:1081900000000000000000000000000000000000DF -:1081A00000000000000000000000000000000000CF -:1081B00000000000000000000000000000000000BF -:1081C00000000000000000000000000000000000AF -:1081D000000000000000000000000000000000009F -:1081E000000000000000000000000000000000008F -:1081F000000000000000000000000000000000007F -:10820000000000000000000000000000000000006E -:10821000000000000000000000000000000000005E -:10822000000000000000000000000000000000004E -:10823000000000000000000000000000000000003E -:10824000000000000000000000000000000000002E -:10825000000000000000000000000000000000001E -:10826000000000000000000000000000000000000E -:1082700000000000000000000000000000000000FE -:1082800000000000000000000000000000000000EE -:1082900000000000000000000000000000000000DE -:1082A00000000000000000000000000000000000CE -:1082B00000000000000000000000000000000000BE -:1082C00000000000000000000000000000000000AE -:1082D000000000000000000000000000000000009E -:1082E000000000000000000000000000000000008E -:1082F000000000000000000000000000000000007E -:10830000000000000000000000000000000000006D -:10831000000000000000000000000000000000005D -:10832000000000000000000000000000000000004D -:10833000000000000000000000000000000000003D -:10834000000000000000000000000000000000002D -:10835000000000000000000000000000000000001D -:10836000000000000000000000000000000000000D -:1083700000000000000000000000000000000000FD -:1083800000000000000000000000000000000000ED -:1083900000000000000000000000000000000000DD -:1083A00000000000000000000000000000000000CD -:1083B00000000000000000000000000000000000BD -:1083C00000000000000000000000000000000000AD -:1083D000000000000000000000000000000000009D -:1083E000000000000000000000000000000000008D -:1083F000000000000000000000000000000000007D -:10840000000000000000000000000000000000006C -:10841000000000000000000000000000000000005C -:10842000000000000000000000000000000000004C -:10843000000000000000000000000000000000003C -:10844000000000000000000000000000000000002C -:10845000000000000000000000000000000000001C -:10846000000000000000000000000000000000000C -:1084700000000000000000000000000000000000FC -:1084800000000000000000000000000000000000EC -:1084900000000000000000000000000000000000DC -:1084A00000000000000000000000000000000000CC -:1084B00000000000000000000000000000000000BC -:1084C00000000000000000000000000000000000AC -:1084D000000000000000000000000000000000009C -:1084E000000000000000000000000000000000008C -:1084F000000000000000000000000000000000007C -:10850000000000000000000000000000000000006B -:10851000000000000000000000000000000000005B -:10852000000000000000000000000000000000004B -:10853000000000000000000000000000000000003B -:10854000000000000000000000000000000000002B -:10855000000000000000000000000000000000001B -:10856000000000000000000000000000000000000B -:1085700000000000000000000000000000000000FB -:1085800000000000000000000000000000000000EB -:1085900000000000000000000000000000000000DB -:1085A00000000000000000000000000000000000CB -:1085B00000000000000000000000000000000000BB -:1085C00000000000000000000000000000000000AB -:1085D000000000000000000000000000000000009B -:1085E000000000000000000000000000000000008B -:1085F000000000000000000000000000000000007B -:10860000000000000000000000000000000000006A -:10861000000000000000000000000000000000005A -:10862000000000000000000000000000000000004A -:10863000000000000000000000000000000000003A -:10864000000000000000000000000000000000002A -:10865000000000000000000000000000000000001A -:10866000000000000000000000000000000000000A -:1086700000000000000000000000000000000000FA -:1086800000000000000000000000000000000000EA -:1086900000000000000000000000000000000000DA -:1086A00000000000000000000000000000000000CA -:1086B00000000000000000000000000000000000BA -:1086C00000000000000000000000000000000000AA -:1086D000000000000000000000000000000000009A -:1086E000000000000000000000000000000000008A -:1086F000000000000000000000000000000000007A -:108700000000000000000000000000000000000069 -:108710000000000000000000000000000000000059 -:108720000000000000000000000000000000000049 -:108730000000000000000000000000000000000039 -:108740000000000000000000000000000000000029 -:108750000000000000000000000000000000000019 -:108760000000000000000000000000000000000009 -:1087700000000000000000000000000000000000F9 -:1087800000000000000000000000000000000000E9 -:1087900000000000000000000000000000000000D9 -:1087A00000000000000000000000000000000000C9 -:1087B00000000000000000000000000000000000B9 -:1087C00000000000000000000000000000000000A9 -:1087D0000000000000000000000000000000000099 -:1087E0000000000000000000000000000000000089 -:1087F0000000000000000000000000000000000079 -:108800000000000000000000000000000000000068 -:108810000000000000000000000000000000000058 -:108820000000000000000000000000000000000048 -:108830000000000000000000000000000000000038 -:108840000000000000000000000000000000000028 -:108850000000000000000000000000000000000018 -:108860000000000000000000000000000000000008 -:1088700000000000000000000000000000000000F8 -:1088800000000000000000000000000000000000E8 -:1088900000000000000000000000000000000000D8 -:1088A00000000000000000000000000000000000C8 -:1088B00000000000000000000000000000000000B8 -:1088C00000000000000000000000000000000000A8 -:1088D0000000000000000000000000000000000098 -:1088E0000000000000000000000000000000000088 -:1088F0000000000000000000000000000000000078 -:108900000000000000000000000000000000000067 -:108910000000000000000000000000000000000057 -:108920000000000000000000000000000000000047 -:108930000000000000000000000000000000000037 -:108940000000000000000000000000000000000027 -:108950000000000000000000000000000000000017 -:108960000000000000000000000000000000000007 -:1089700000000000000000000000000000000000F7 -:1089800000000000000000000000000000000000E7 -:1089900000000000000000000000000000000000D7 -:1089A00000000000000000000000000000000000C7 -:1089B00000000000000000000000000000000000B7 -:1089C00000000000000000000000000000000000A7 -:1089D0000000000000000000000000000000000097 -:1089E0000000000000000000000000000000000087 -:1089F0000000000000000000000000000000000077 -:108A00000000000000000000000000000000000066 -:108A10000000000000000000000000000000000056 -:108A20000000000000000000000000000000000046 -:108A30000000000000000000000000000000000036 -:108A40000000000000000000000000000000000026 -:108A50000000000000000000000000000000000016 -:108A60000000000000000000000000000000000006 -:108A700000000000000000000000000000000000F6 -:108A800000000000000000000000000000000000E6 -:108A900000000000000000000000000000000000D6 -:108AA00000000000000000000000000000000000C6 -:108AB00000000000000000000000000000000000B6 -:108AC00000000000000000000000000000000000A6 -:108AD0000000000000000000000000000000000096 -:108AE0000000000000000000000000000000000086 -:108AF0000000000000000000000000000000000076 -:108B00000000000000000000000000000000000065 -:108B10000000000000000000000000000000000055 -:108B20000000000000000000000000000000000045 -:108B30000000000000000000000000000000000035 -:108B40000000000000000000000000000000000025 -:108B50000000000000000000000000000000000015 -:108B60000000000000000000000000000000000005 -:108B700000000000000000000000000000000000F5 -:108B800000000000000000000000000000000000E5 -:108B900000000000000000000000000000000000D5 -:108BA00000000000000000000000000000000000C5 -:108BB00000000000000000000000000000000000B5 -:108BC00000000000000000000000000000000000A5 -:108BD0000000000000000000000000000000000095 -:108BE0000000000000000000000000000000000085 -:108BF0000000000000000000000000000000000075 -:108C00000000000000000000000000000000000064 -:108C10000000000000000000000000000000000054 -:108C20000000000000000000000000000000000044 -:108C30000000000000000000000000000000000034 -:108C40000000000000000000000000000000000024 -:108C50000000000000000000000000000000000014 -:108C60000000000000000000000000000000000004 -:108C700000000000000000000000000000000000F4 -:108C800000000000000000000000000000000000E4 -:108C900000000000000000000000000000000000D4 -:108CA00000000000000000000000000000000000C4 -:108CB00000000000000000000000000000000000B4 -:108CC00000000000000000000000000000000000A4 -:108CD0000000000000000000000000000000000094 -:108CE0000000000000000000000000000000000084 -:108CF0000000000000000000000000000000000074 -:108D00000000000000000000000000000000000063 -:108D10000000000000000000000000000000000053 -:108D20000000000000000000000000000000000043 -:108D30000000000000000000000000000000000033 -:108D40000000000000000000000000000000000023 -:108D50000000000000000000000000000000000013 -:108D60000000000000000000000000000000000003 -:108D700000000000000000000000000000000000F3 -:108D800000000000000000000000000000000000E3 -:108D900000000000000000000000000000000000D3 -:108DA00000000000000000000000000000000000C3 -:108DB00000000000000000000000000000000000B3 -:108DC00000000000000000000000000000000000A3 -:108DD0000000000000000000000000000000000093 -:108DE0000000000000000000000000000000000083 -:108DF0000000000000000000000000000000000073 -:108E00000000000000000000000000000000000062 -:108E10000000000000000000000000000000000052 -:108E20000000000000000000000000000000000042 -:108E30000000000000000000000000000000000032 -:108E40000000000000000000000000000000000022 -:108E50000000000000000000000000000000000012 -:108E60000000000000000000000000000000000002 -:108E700000000000000000000000000000000000F2 -:108E800000000000000000000000000000000000E2 -:108E900000000000000000000000000000000000D2 -:108EA00000000000000000000000000000000000C2 -:108EB00000000000000000000000000000000000B2 -:108EC00000000000000000000000000000000000A2 -:108ED0000000000000000000000000000000000092 -:108EE0000000000000000000000000000000000082 -:108EF0000000000000000000000000000000000072 -:108F00000000000000000000000000000000000061 -:108F10000000000000000000000000000000000051 -:108F20000000000000000000000000000000000041 -:108F30000000000000000000000000000000000031 -:108F40000000000000000000000000000000000021 -:108F50000000000000000000000000000000000011 -:108F60000000000000000000000000000000000001 -:108F700000000000000000000000000000000000F1 -:108F800000000000000000000000000000000000E1 -:108F900000000000000000000000000000000000D1 -:108FA00000000000000000000000000000000000C1 -:108FB00000000000000000000000000000000000B1 -:108FC00000000000000000000000000000000000A1 -:108FD0000000000000000000000000000000000091 -:108FE0000000000000000000000000000000000081 -:108FF0000000000000000000000000000000000071 -:109000000000000000000000000000000000000060 -:109010000000000000000000000000000000000050 -:109020000000000000000000000000000000000040 -:109030000000000000000000000000000000000030 -:109040000000000000000000000000000000000020 -:109050000000000000000000000000000000000010 -:109060000000000000000000000000000000000000 -:1090700000000000000000000000000000000000F0 -:1090800000000000000000000000000000000000E0 -:1090900000000000000000000000000000000000D0 -:1090A00000000000000000000000000000000000C0 -:1090B00000000000000000000000000000000000B0 -:1090C00000000000000000000000000000000000A0 -:1090D0000000000000000000000000000000000090 -:1090E0000000000000000000000000000000000080 -:1090F0000000000000000000000000000000000070 -:10910000000000000000000000000000000000005F -:10911000000000000000000000000000000000004F -:10912000000000000000000000000000000000003F -:10913000000000000000000000000000000000002F -:10914000000000000000000000000000000000001F -:10915000000000000000000000000000000000000F -:1091600000000000000000000000000000000000FF -:1091700000000000000000000000000000000000EF -:1091800000000000000000000000000000000000DF -:1091900000000000000000000000000000000000CF -:1091A00000000000000000000000000000000000BF -:1091B00000000000000000000000000000000000AF -:1091C000000000000000000000000000000000009F -:1091D000000000000000000000000000000000008F -:1091E000000000000000000000000000000000007F -:1091F000000000000000000000000000000000006F -:10920000000000000000000000000000000000005E -:10921000000000000000000000000000000000004E -:10922000000000000000000000000000000000003E -:10923000000000000000000000000000000000002E -:10924000000000000000000000000000000000001E -:10925000000000000000000000000000000000000E -:1092600000000000000000000000000000000000FE -:1092700000000000000000000000000000000000EE -:1092800000000000000000000000000000000000DE -:1092900000000000000000000000000000000000CE -:1092A00000000000000000000000000000000000BE -:1092B00000000000000000000000000000000000AE -:1092C000000000000000000000000000000000009E -:1092D000000000000000000000000000000000008E -:1092E000000000000000000000000000000000007E -:1092F000000000000000000000000000000000006E -:10930000000000000000000000000000000000005D -:10931000000000000000000000000000000000004D -:10932000000000000000000000000000000000003D -:10933000000000000000000000000000000000002D -:10934000000000000000000000000000000000001D -:10935000000000000000000000000000000000000D -:1093600000000000000000000000000000000000FD -:1093700000000000000000000000000000000000ED -:1093800000000000000000000000000000000000DD -:1093900000000000000000000000000000000000CD -:1093A00000000000000000000000000000000000BD -:1093B00000000000000000000000000000000000AD -:1093C000000000000000000000000000000000009D -:1093D000000000000000000000000000000000008D -:1093E000000000000000000000000000000000007D -:1093F000000000000000000000000000000000006D -:10940000000000000000000000000000000000005C -:10941000000000000000000000000000000000004C -:10942000000000000000000000000000000000003C -:10943000000000000000000000000000000000002C -:10944000000000000000000000000000000000001C -:10945000000000000000000000000000000000000C -:1094600000000000000000000000000000000000FC -:1094700000000000000000000000000000000000EC -:1094800000000000000000000000000000000000DC -:1094900000000000000000000000000000000000CC -:1094A00000000000000000000000000000000000BC -:1094B00000000000000000000000000000000000AC -:1094C000000000000000000000000000000000009C -:1094D000000000000000000000000000000000008C -:1094E000000000000000000000000000000000007C -:1094F000000000000000000000000000000000006C -:10950000000000000000000000000000000000005B -:10951000000000000000000000000000000000004B -:10952000000000000000000000000000000000003B -:10953000000000000000000000000000000000002B -:10954000000000000000000000000000000000001B -:10955000000000000000000000000000000000000B -:1095600000000000000000000000000000000000FB -:1095700000000000000000000000000000000000EB -:1095800000000000000000000000000000000000DB -:1095900000000000000000000000000000000000CB -:1095A00000000000000000000000000000000000BB -:1095B00000000000000000000000000000000000AB -:1095C000000000000000000000000000000000009B -:1095D000000000000000000000000000000000008B -:1095E000000000000000000000000000000000007B -:1095F000000000000000000000000000000000006B -:10960000000000000000000000000000000000005A -:10961000000000000000000000000000000000004A -:10962000000000000000000000000000000000003A -:10963000000000000000000000000000000000002A -:10964000000000000000000000000000000000001A -:10965000000000000000000000000000000000000A -:1096600000000000000000000000000000000000FA -:1096700000000000000000000000000000000000EA -:1096800000000000000000000000000000000000DA -:1096900000000000000000000000000000000000CA -:1096A00000000000000000000000000000000000BA -:1096B00000000000000000000000000000000000AA -:1096C000000000000000000000000000000000009A -:1096D000000000000000000000000000000000008A -:1096E000000000000000000000000000000000007A -:1096F000000000000000000000000000000000006A -:109700000000000000000000000000000000000059 -:109710000000000000000000000000000000000049 -:109720000000000000000000000000000000000039 -:109730000000000000000000000000000000000029 -:109740000000000000000000000000000000000019 -:109750000000000000000000000000000000000009 -:1097600000000000000000000000000000000000F9 -:1097700000000000000000000000000000000000E9 -:1097800000000000000000000000000000000000D9 -:1097900000000000000000000000000000000000C9 -:1097A00000000000000000000000000000000000B9 -:1097B00000000000000000000000000000000000A9 -:1097C0000000000000000000000000000000000099 -:1097D0000000000000000000000000000000000089 -:1097E0000000000000000000000000000000000079 -:1097F0000000000000000000000000000000000069 -:109800000000000000000000000000000000000058 -:109810000000000000000000000000000000000048 -:109820000000000000000000000000000000000038 -:109830000000000000000000000000000000000028 -:109840000000000000000000000000000000000018 -:109850000000000000000000000000000000000008 -:1098600000000000000000000000000000000000F8 -:1098700000000000000000000000000000000000E8 -:1098800000000000000000000000000000000000D8 -:1098900000000000000000000000000000000000C8 -:1098A00000000000000000000000000000000000B8 -:1098B00000000000000000000000000000000000A8 -:1098C0000000000000000000000000000000000098 -:1098D0000000000000000000000000000000000088 -:1098E0000000000000000000000000000000000078 -:1098F0000000000000000000000000000000000068 -:109900000000000000000000000000000000000057 -:109910000000000000000000000000000000000047 -:109920000000000000000000000000000000000037 -:109930000000000000000000000000000000000027 -:109940000000000000000000000000000000000017 -:109950000000000000000000000000000000000007 -:1099600000000000000000000000000000000000F7 -:1099700000000000000000000000000000000000E7 -:1099800000000000000000000000000000000000D7 -:1099900000000000000000000000000000000000C7 -:1099A00000000000000000000000000000000000B7 -:1099B00000000000000000000000000000000000A7 -:1099C0000000000000000000000000000000000097 -:1099D0000000000000000000000000000000000087 -:1099E0000000000000000000000000000000000077 -:1099F0000000000000000000000000000000000067 -:109A00000000000000000000000000000000000056 -:109A10000000000000000000000000000000000046 -:109A20000000000000000000000000000000000036 -:109A30000000000000000000000000000000000026 -:109A40000000000000000000000000000000000016 -:109A50000000000000000000000000000000000006 -:109A600000000000000000000000000000000000F6 -:109A700000000000000000000000000000000000E6 -:109A800000000000000000000000000000000000D6 -:109A900000000000000000000000000000000000C6 -:109AA00000000000000000000000000000000000B6 -:109AB00000000000000000000000000000000000A6 -:109AC0000000000000000000000000000000000096 -:109AD0000000000000000000000000000000000086 -:109AE0000000000000000000000000000000000076 -:109AF0000000000000000000000000000000000066 -:109B00000000000000000000000000000000000055 -:109B10000000000000000000000000000000000045 -:109B20000000000000000000000000000000000035 -:109B30000000000000000000000000000000000025 -:109B40000000000000000000000000000000000015 -:109B50000000000000000000000000000000000005 -:109B600000000000000000000000000000000000F5 -:109B700000000000000000000000000000000000E5 -:109B800000000000000000000000000000000000D5 -:109B900000000000000000000000000000000000C5 -:109BA00000000000000000000000000000000000B5 -:109BB00000000000000000000000000000000000A5 -:109BC0000000000000000000000000000000000095 -:109BD0000000000000000000000000000000000085 -:109BE0000000000000000000000000000000000075 -:109BF0000000000000000000000000000000000065 -:109C00000000000000000000000000000000000054 -:109C10000000000000000000000000000000000044 -:109C20000000000000000000000000000000000034 -:109C30000000000000000000000000000000000024 -:109C40000000000000000000000000000000000014 -:109C50000000000000000000000000000000000004 -:109C600000000000000000000000000000000000F4 -:109C700000000000000000000000000000000000E4 -:109C800000000000000000000000000000000000D4 -:109C900000000000000000000000000000000000C4 -:109CA00000000000000000000000000000000000B4 -:109CB00000000000000000000000000000000000A4 -:109CC0000000000000000000000000000000000094 -:109CD0000000000000000000000000000000000084 -:109CE0000000000000000000000000000000000074 -:109CF0000000000000000000000000000000000064 -:109D00000000000000000000000000000000000053 -:109D10000000000000000000000000000000000043 -:109D20000000000000000000000000000000000033 -:109D30000000000000000000000000000000000023 -:109D40000000000000000000000000000000000013 -:109D50000000000000000000000000000000000003 -:109D600000000000000000000000000000000000F3 -:109D700000000000000000000000000000000000E3 -:109D800000000000000000000000000000000000D3 -:109D900000000000000000000000000000000000C3 -:109DA00000000000000000000000000000000000B3 -:109DB00000000000000000000000000000000000A3 -:109DC0000000000000000000000000000000000093 -:109DD0000000000000000000000000000000000083 -:109DE0000000000000000000000000000000000073 -:109DF0000000000000000000000000000000000063 -:109E00000000000000000000000000000000000052 -:109E10000000000000000000000000000000000042 -:109E20000000000000000000000000000000000032 -:109E30000000000000000000000000000000000022 -:109E40000000000000000000000000000000000012 -:109E50000000000000000000000000000000000002 -:109E600000000000000000000000000000000000F2 -:109E700000000000000000000000000000000000E2 -:109E800000000000000000000000000000000000D2 -:109E900000000000000000000000000000000000C2 -:109EA00000000000000000000000000000000000B2 -:109EB00000000000000000000000000000000000A2 -:109EC0000000000000000000000000000000000092 -:109ED0000000000000000000000000000000000082 -:109EE0000000000000000000000000000000000072 -:109EF0000000000000000000000000000000000062 -:109F00000000000000000000000000000000000051 -:109F10000000000000000000000000000000000041 -:109F20000000000000000000000000000000000031 -:109F30000000000000000000000000000000000021 -:109F40000000000000000000000000000000000011 -:109F50000000000000000000000000000000000001 -:109F600000000000000000000000000000000000F1 -:109F700000000000000000000000000000000000E1 -:109F800000000000000000000000000000000000D1 -:109F900000000000000000000000000000000000C1 -:109FA00000000000000000000000000000000000B1 -:109FB00000000000000000000000000000000000A1 -:109FC0000000000000000000000000000000000091 -:109FD0000000000000000000000000000000000081 -:109FE0000000000000000000000000000000000071 -:109FF0000000000000000000000000000000000061 -:10A000000000000000000000000000000000000050 -:10A010000000000000000000000000000000000040 -:10A020000000000000000000000000000000000030 -:10A030000000000000000000000000000000000020 -:10A040000000000000000000000000000000000010 -:10A050000000000000000000000000000000000000 -:10A0600000000000000000000000000000000000F0 -:10A0700000000000000000000000000000000000E0 -:10A0800000000000000000000000000000000000D0 -:10A0900000000000000000000000000000000000C0 -:10A0A00000000000000000000000000000000000B0 -:10A0B00000000000000000000000000000000000A0 -:10A0C0000000000000000000000000000000000090 -:10A0D0000000000000000000000000000000000080 -:10A0E0000000000000000000000000000000000070 -:10A0F0000000000000000000000000000000000060 -:10A10000000000000000000000000000000000004F -:10A11000000000000000000000000000000000003F -:10A12000000000000000000000000000000000002F -:10A13000000000000000000000000000000000001F -:10A14000000000000000000000000000000000000F -:10A1500000000000000000000000000000000000FF -:10A1600000000000000000000000000000000000EF -:10A1700000000000000000000000000000000000DF -:10A1800000000000000000000000000000000000CF -:10A1900000000000000000000000000000000000BF -:10A1A00000000000000000000000000000000000AF -:10A1B000000000000000000000000000000000009F -:10A1C000000000000000000000000000000000008F -:10A1D000000000000000000000000000000000007F -:10A1E000000000000000000000000000000000006F -:10A1F000000000000000000000000000000000005F -:10A20000000000000000000000000000000000004E -:10A21000000000000000000000000000000000003E -:10A22000000000000000000000000000000000002E -:10A23000000000000000000000000000000000001E -:10A24000000000000000000000000000000000000E -:10A2500000000000000000000000000000000000FE -:10A2600000000000000000000000000000000000EE -:10A2700000000000000000000000000000000000DE -:10A2800000000000000000000000000000000000CE -:10A2900000000000000000000000000000000000BE -:10A2A00000000000000000000000000000000000AE -:10A2B000000000000000000000000000000000009E -:10A2C000000000000000000000000000000000008E -:10A2D000000000000000000000000000000000007E -:10A2E000000000000000000000000000000000006E -:10A2F000000000000000000000000000000000005E -:10A30000000000000000000000000000000000004D -:10A31000000000000000000000000000000000003D -:10A32000000000000000000000000000000000002D -:10A33000000000000000000000000000000000001D -:10A34000000000000000000000000000000000000D -:10A3500000000000000000000000000000000000FD -:10A3600000000000000000000000000000000000ED -:10A3700000000000000000000000000000000000DD -:10A3800000000000000000000000000000000000CD -:10A3900000000000000000000000000000000000BD -:10A3A00000000000000000000000000000000000AD -:10A3B000000000000000000000000000000000009D -:10A3C000000000000000000000000000000000008D -:10A3D000000000000000000000000000000000007D -:10A3E000000000000000000000000000000000006D -:10A3F000000000000000000000000000000000005D -:10A40000000000000000000000000000000000004C -:10A41000000000000000000000000000000000003C -:10A42000000000000000000000000000000000002C -:10A43000000000000000000000000000000000001C -:10A44000000000000000000000000000000000000C -:10A4500000000000000000000000000000000000FC -:10A4600000000000000000000000000000000000EC -:10A4700000000000000000000000000000000000DC -:10A4800000000000000000000000000000000000CC -:10A4900000000000000000000000000000000000BC -:10A4A00000000000000000000000000000000000AC -:10A4B000000000000000000000000000000000009C -:10A4C000000000000000000000000000000000008C -:10A4D000000000000000000000000000000000007C -:10A4E000000000000000000000000000000000006C -:10A4F000000000000000000000000000000000005C -:10A50000000000000000000000000000000000004B -:10A51000000000000000000000000000000000003B -:10A52000000000000000000000000000000000002B -:10A53000000000000000000000000000000000001B -:10A54000000000000000000000000000000000000B -:10A5500000000000000000000000000000000000FB -:10A5600000000000000000000000000000000000EB -:10A5700000000000000000000000000000000000DB -:10A5800000000000000000000000000000000000CB -:10A5900000000000000000000000000000000000BB -:10A5A00000000000000000000000000000000000AB -:10A5B000000000000000000000000000000000009B -:10A5C000000000000000000000000000000000008B -:10A5D000000000000000000000000000000000007B -:10A5E000000000000000000000000000000000006B -:10A5F000000000000000000000000000000000005B -:10A60000000000000000000000000000000000004A -:10A61000000000000000000000000000000000003A -:10A62000000000000000000000000000000000002A -:10A63000000000000000000000000000000000001A -:10A64000000000000000000000000000000000000A -:10A6500000000000000000000000000000000000FA -:10A6600000000000000000000000000000000000EA -:10A6700000000000000000000000000000000000DA -:10A6800000000000000000000000000000000000CA -:10A6900000000000000000000000000000000000BA -:10A6A00000000000000000000000000000000000AA -:10A6B000000000000000000000000000000000009A -:10A6C000000000000000000000000000000000008A -:10A6D000000000000000000000000000000000007A -:10A6E000000000000000000000000000000000006A -:10A6F000000000000000000000000000000000005A -:10A700000000000000000000000000000000000049 -:10A710000000000000000000000000000000000039 -:10A720000000000000000000000000000000000029 -:10A730000000000000000000000000000000000019 -:10A740000000000000000000000000000000000009 -:10A7500000000000000000000000000000000000F9 -:10A7600000000000000000000000000000000000E9 -:10A7700000000000000000000000000000000000D9 -:10A7800000000000000000000000000000000000C9 -:10A7900000000000000000000000000000000000B9 -:10A7A00000000000000000000000000000000000A9 -:10A7B0000000000000000000000000000000000099 -:10A7C0000000000000000000000000000000000089 -:10A7D0000000000000000000000000000000000079 -:10A7E0000000000000000000000000000000000069 -:10A7F0000000000000000000000000000000000059 -:10A800000000000000000000000000000000000048 -:10A810000000000000000000000000000000000038 -:10A820000000000000000000000000000000000028 -:10A830000000000000000000000000000000000018 -:10A840000000000000000000000000000000000008 -:10A8500000000000000000000000000000000000F8 -:10A8600000000000000000000000000000000000E8 -:10A8700000000000000000000000000000000000D8 -:10A8800000000000000000000000000000000000C8 -:10A8900000000000000000000000000000000000B8 -:10A8A00000000000000000000000000000000000A8 -:10A8B0000000000000000000000000000000000098 -:10A8C0000000000000000000000000000000000088 -:10A8D0000000000000000000000000000000000078 -:10A8E0000000000000000000000000000000000068 -:10A8F0000000000000000000000000000000000058 -:10A900000000000000000000000000000000000047 -:10A910000000000000000000000000000000000037 -:10A920000000000000000000000000000000000027 -:10A930000000000000000000000000000000000017 -:10A940000000000000000000000000000000000007 -:10A9500000000000000000000000000000000000F7 -:10A9600000000000000000000000000000000000E7 -:10A9700000000000000000000000000000000000D7 -:10A9800000000000000000000000000000000000C7 -:10A9900000000000000000000000000000000000B7 -:10A9A00000000000000000000000000000000000A7 -:10A9B0000000000000000000000000000000000097 -:10A9C0000000000000000000000000000000000087 -:10A9D0000000000000000000000000000000000077 -:10A9E0000000000000000000000000000000000067 -:10A9F0000000000000000000000000000000000057 -:10AA00000000000000000000000000000000000046 -:10AA10000000000000000000000000000000000036 -:10AA20000000000000000000000000000000000026 -:10AA30000000000000000000000000000000000016 -:10AA40000000000000000000000000000000000006 -:10AA500000000000000000000000000000000000F6 -:10AA600000000000000000000000000000000000E6 -:10AA700000000000000000000000000000000000D6 -:10AA800000000000000000000000000000000000C6 -:10AA900000000000000000000000000000000000B6 -:10AAA00000000000000000000000000000000000A6 -:10AAB0000000000000000000000000000000000096 -:10AAC0000000000000000000000000000000000086 -:10AAD0000000000000000000000000000000000076 -:10AAE0000000000000000000000000000000000066 -:10AAF0000000000000000000000000000000000056 -:10AB00000000000000000000000000000000000045 -:10AB10000000000000000000000000000000000035 -:10AB20000000000000000000000000000000000025 -:10AB30000000000000000000000000000000000015 -:10AB40000000000000000000000000000000000005 -:10AB500000000000000000000000000000000000F5 -:10AB600000000000000000000000000000000000E5 -:10AB700000000000000000000000000000000000D5 -:10AB800000000000000000000000000000000000C5 -:10AB900000000000000000000000000000000000B5 -:10ABA00000000000000000000000000000000000A5 -:10ABB0000000000000000000000000000000000095 -:10ABC0000000000000000000000000000000000085 -:10ABD0000000000000000000000000000000000075 -:10ABE0000000000000000000000000000000000065 -:10ABF0000000000000000000000000000000000055 -:10AC00000000000000000000000000000000000044 -:10AC10000000000000000000000000000000000034 -:10AC20000000000000000000000000000000000024 -:10AC30000000000000000000000000000000000014 -:10AC40000000000000000000000000000000000004 -:10AC500000000000000000000000000000000000F4 -:10AC600000000000000000000000000000000000E4 -:10AC700000000000000000000000000000000000D4 -:10AC800000000000000000000000000000000000C4 -:10AC900000000000000000000000000000000000B4 -:10ACA00000000000000000000000000000000000A4 -:10ACB0000000000000000000000000000000000094 -:10ACC0000000000000000000000000000000000084 -:10ACD0000000000000000000000000000000000074 -:10ACE0000000000000000000000000000000000064 -:10ACF0000000000000000000000000000000000054 -:10AD00000000000000000000000000000000000043 -:10AD10000000000000000000000000000000000033 -:10AD20000000000000000000000000000000000023 -:10AD30000000000000000000000000000000000013 -:10AD40000000000000000000000000000000000003 -:10AD500000000000000000000000000000000000F3 -:10AD600000000000000000000000000000000000E3 -:10AD700000000000000000000000000000000000D3 -:10AD800000000000000000000000000000000000C3 -:10AD900000000000000000000000000000000000B3 -:10ADA00000000000000000000000000000000000A3 -:10ADB0000000000000000000000000000000000093 -:10ADC0000000000000000000000000000000000083 -:10ADD0000000000000000000000000000000000073 -:10ADE0000000000000000000000000000000000063 -:10ADF0000000000000000000000000000000000053 -:10AE00000000000000000000000000000000000042 -:10AE10000000000000000000000000000000000032 -:10AE20000000000000000000000000000000000022 -:10AE30000000000000000000000000000000000012 -:10AE40000000000000000000000000000000000002 -:10AE500000000000000000000000000000000000F2 -:10AE600000000000000000000000000000000000E2 -:10AE700000000000000000000000000000000000D2 -:10AE800000000000000000000000000000000000C2 -:10AE900000000000000000000000000000000000B2 -:10AEA00000000000000000000000000000000000A2 -:10AEB0000000000000000000000000000000000092 -:10AEC0000000000000000000000000000000000082 -:10AED0000000000000000000000000000000000072 -:10AEE0000000000000000000000000000000000062 -:10AEF0000000000000000000000000000000000052 -:10AF00000000000000000000000000000000000041 -:10AF10000000000000000000000000000000000031 -:10AF20000000000000000000000000000000000021 -:10AF30000000000000000000000000000000000011 -:10AF40000000000000000000000000000000000001 -:10AF500000000000000000000000000000000000F1 -:10AF600000000000000000000000000000000000E1 -:10AF700000000000000000000000000000000000D1 -:10AF800000000000000000000000000000000000C1 -:10AF900000000000000000000000000000000000B1 -:10AFA00000000000000000000000000000000000A1 -:10AFB0000000000000000000000000000000000091 -:10AFC0000000000000000000000000000000000081 -:10AFD0000000000000000000000000000000000071 -:10AFE0000000000000000000000000000000000061 -:10AFF0000000000000000000000000000000000051 -:10B000000000000000000000000000000000000040 -:10B010000000000000000000000000000000000030 -:10B020000000000000000000000000000000000020 -:10B030000000000000000000000000000000000010 -:10B040000000000000000000000000000000000000 -:10B0500000000000000000000000000000000000F0 -:10B0600000000000000000000000000000000000E0 -:10B0700000000000000000000000000000000000D0 -:10B0800000000000000000000000000000000000C0 -:10B0900000000000000000000000000000000000B0 -:10B0A00000000000000000000000000000000000A0 -:10B0B0000000000000000000000000000000000090 -:10B0C0000000000000000000000000000000000080 -:10B0D0000000000000000000000000000000000070 -:10B0E0000000000000000000000000000000000060 -:10B0F0000000000000000000000000000000000050 -:10B10000000000000000000000000000000000003F -:10B11000000000000000000000000000000000002F -:10B12000000000000000000000000000000000001F -:10B13000000000000000000000000000000000000F -:10B1400000000000000000000000000000000000FF -:10B1500000000000000000000000000000000000EF -:10B1600000000000000000000000000000000000DF -:10B1700000000000000000000000000000000000CF -:10B1800000000000000000000000000000000000BF -:10B1900000000000000000000000000000000000AF -:10B1A000000000000000000000000000000000009F -:10B1B000000000000000000000000000000000008F -:10B1C000000000000000000000000000000000007F -:10B1D000000000000000000000000000000000006F -:10B1E000000000000000000000000000000000005F -:10B1F000000000000000000000000000000000004F -:10B20000000000000000000000000000000000003E -:10B21000000000000000000000000000000000002E -:10B22000000000000000000000000000000000001E -:10B23000000000000000000000000000000000000E -:10B2400000000000000000000000000000000000FE -:10B2500000000000000000000000000000000000EE -:10B2600000000000000000000000000000000000DE -:10B2700000000000000000000000000000000000CE -:10B2800000000000000000000000000000000000BE -:10B2900000000000000000000000000000000000AE -:10B2A000000000000000000000000000000000009E -:10B2B000000000000000000000000000000000008E -:10B2C000000000000000000000000000000000007E -:10B2D000000000000000000000000000000000006E -:10B2E000000000000000000000000000000000005E -:10B2F000000000000000000000000000000000004E -:10B30000000000000000000000000000000000003D -:10B31000000000000000000000000000000000002D -:10B32000000000000000000000000000000000001D -:10B33000000000000000000000000000000000000D -:10B3400000000000000000000000000000000000FD -:10B3500000000000000000000000000000000000ED -:10B3600000000000000000000000000000000000DD -:10B3700000000000000000000000000000000000CD -:10B3800000000000000000000000000000000000BD -:10B3900000000000000000000000000000000000AD -:10B3A000000000000000000000000000000000009D -:10B3B000000000000000000000000000000000008D -:10B3C000000000000000000000000000000000007D -:10B3D000000000000000000000000000000000006D -:10B3E000000000000000000000000000000000005D -:10B3F000000000000000000000000000000000004D -:10B40000000000000000000000000000000000003C -:10B41000000000000000000000000000000000002C -:10B42000000000000000000000000000000000001C -:10B43000000000000000000000000000000000000C -:10B4400000000000000000000000000000000000FC -:10B4500000000000000000000000000000000000EC -:10B4600000000000000000000000000000000000DC -:10B4700000000000000000000000000000000000CC -:10B4800000000000000000000000000000000000BC -:10B4900000000000000000000000000000000000AC -:10B4A000000000000000000000000000000000009C -:10B4B000000000000000000000000000000000008C -:10B4C000000000000000000000000000000000007C -:10B4D000000000000000000000000000000000006C -:10B4E000000000000000000000000000000000005C -:10B4F000000000000000000000000000000000004C -:10B50000000000000000000000000000000000003B -:10B51000000000000000000000000000000000002B -:10B52000000000000000000000000000000000001B -:10B53000000000000000000000000000000000000B -:10B5400000000000000000000000000000000000FB -:10B5500000000000000000000000000000000000EB -:10B5600000000000000000000000000000000000DB -:10B5700000000000000000000000000000000000CB -:10B5800000000000000000000000000000000000BB -:10B5900000000000000000000000000000000000AB -:10B5A000000000000000000000000000000000009B -:10B5B000000000000000000000000000000000008B -:10B5C000000000000000000000000000000000007B -:10B5D000000000000000000000000000000000006B -:10B5E000000000000000000000000000000000005B -:10B5F000000000000000000000000000000000004B -:10B60000000000000000000000000000000000003A -:10B61000000000000000000000000000000000002A -:10B62000000000000000000000000000000000001A -:10B63000000000000000000000000000000000000A -:10B6400000000000000000000000000000000000FA -:10B6500000000000000000000000000000000000EA -:10B6600000000000000000000000000000000000DA -:10B6700000000000000000000000000000000000CA -:10B6800000000000000000000000000000000000BA -:10B6900000000000000000000000000000000000AA -:10B6A000000000000000000000000000000000009A -:10B6B000000000000000000000000000000000008A -:10B6C000000000000000000000000000000000007A -:10B6D000000000000000000000000000000000006A -:10B6E000000000000000000000000000000000005A -:10B6F000000000000000000000000000000000004A -:10B700000000000000000000000000000000000039 -:10B710000000000000000000000000000000000029 -:10B720000000000000000000000000000000000019 -:10B730000000000000000000000000000000000009 -:10B7400000000000000000000000000000000000F9 -:10B7500000000000000000000000000000000000E9 -:10B7600000000000000000000000000000000000D9 -:10B7700000000000000000000000000000000000C9 -:10B7800000000000000000000000000000000000B9 -:10B7900000000000000000000000000000000000A9 -:10B7A0000000000000000000000000000000000099 -:10B7B0000000000000000000000000000000000089 -:10B7C0000000000000000000000000000000000079 -:10B7D0000000000000000000000000000000000069 -:10B7E0000000000000000000000000000000000059 -:10B7F0000000000000000000000000000000000049 -:10B800000000000000000000000000000000000038 -:10B810000000000000000000000000000000000028 -:10B820000000000000000000000000000000000018 -:10B830000000000000000000000000000000000008 -:10B8400000000000000000000000000000000000F8 -:10B8500000000000000000000000000000000000E8 -:10B8600000000000000000000000000000000000D8 -:10B8700000000000000000000000000000000000C8 -:10B8800000000000000000000000000000000000B8 -:10B8900000000000000000000000000000000000A8 -:10B8A0000000000000000000000000000000000098 -:10B8B0000000000000000000000000000000000088 -:10B8C0000000000000000000000000000000000078 -:10B8D0000000000000000000000000000000000068 -:10B8E0000000000000000000000000000000000058 -:10B8F0000000000000000000000000000000000048 -:10B900000000000000000000000000000000000037 -:10B910000000000000000000000000000000000027 -:10B920000000000000000000000000000000000017 -:10B930000000000000000000000000000000000007 -:10B9400000000000000000000000000000000000F7 -:10B9500000000000000000000000000000000000E7 -:10B9600000000000000000000000000000000000D7 -:10B9700000000000000000000000000000000000C7 -:10B9800000000000000000000000000000000000B7 -:10B9900000000000000000000000000000000000A7 -:10B9A0000000000000000000000000000000000097 -:10B9B0000000000000000000000000000000000087 -:10B9C0000000000000000000000000000000000077 -:10B9D0000000000000000000000000000000000067 -:10B9E0000000000000000000000000000000000057 -:10B9F0000000000000000000000000000000000047 -:10BA00000000000000000000000000000000000036 -:10BA10000000000000000000000000000000000026 -:10BA20000000000000000000000000000000000016 -:10BA30000000000000000000000000000000000006 -:10BA400000000000000000000000000000000000F6 -:10BA500000000000000000000000000000000000E6 -:10BA600000000000000000000000000000000000D6 -:10BA700000000000000000000000000000000000C6 -:10BA800000000000000000000000000000000000B6 -:10BA900000000000000000000000000000000000A6 -:10BAA0000000000000000000000000000000000096 -:10BAB0000000000000000000000000000000000086 -:10BAC0000000000000000000000000000000000076 -:10BAD0000000000000000000000000000000000066 -:10BAE0000000000000000000000000000000000056 -:10BAF0000000000000000000000000000000000046 -:10BB00000000000000000000000000000000000035 -:10BB10000000000000000000000000000000000025 -:10BB20000000000000000000000000000000000015 -:10BB30000000000000000000000000000000000005 -:10BB400000000000000000000000000000000000F5 -:10BB500000000000000000000000000000000000E5 -:10BB600000000000000000000000000000000000D5 -:10BB700000000000000000000000000000000000C5 -:10BB800000000000000000000000000000000000B5 -:10BB900000000000000000000000000000000000A5 -:10BBA0000000000000000000000000000000000095 -:10BBB0000000000000000000000000000000000085 -:10BBC0000000000000000000000000000000000075 -:10BBD0000000000000000000000000000000000065 -:10BBE0000000000000000000000000000000000055 -:10BBF0000000000000000000000000000000000045 -:10BC00000000000000000000000000000000000034 -:10BC10000000000000000000000000000000000024 -:10BC20000000000000000000000000000000000014 -:10BC30000000000000000000000000000000000004 -:10BC400000000000000000000000000000000000F4 -:10BC500000000000000000000000000000000000E4 -:10BC600000000000000000000000000000000000D4 -:10BC700000000000000000000000000000000000C4 -:10BC800000000000000000000000000000000000B4 -:10BC900000000000000000000000000000000000A4 -:10BCA0000000000000000000000000000000000094 -:10BCB0000000000000000000000000000000000084 -:10BCC0000000000000000000000000000000000074 -:10BCD0000000000000000000000000000000000064 -:10BCE0000000000000000000000000000000000054 -:10BCF0000000000000000000000000000000000044 -:10BD00000000000000000000000000000000000033 -:10BD10000000000000000000000000000000000023 -:10BD20000000000000000000000000000000000013 -:10BD30000000000000000000000000000000000003 -:10BD400000000000000000000000000000000000F3 -:10BD500000000000000000000000000000000000E3 -:10BD600000000000000000000000000000000000D3 -:10BD700000000000000000000000000000000000C3 -:10BD800000000000000000000000000000000000B3 -:10BD900000000000000000000000000000000000A3 -:10BDA0000000000000000000000000000000000093 -:10BDB0000000000000000000000000000000000083 -:10BDC0000000000000000000000000000000000073 -:10BDD0000000000000000000000000000000000063 -:10BDE0000000000000000000000000000000000053 -:10BDF0000000000000000000000000000000000043 -:10BE00000000000000000000000000000000000032 -:10BE10000000000000000000000000000000000022 -:10BE20000000000000000000000000000000000012 -:10BE30000000000000000000000000000000000002 -:10BE400000000000000000000000000000000000F2 -:10BE500000000000000000000000000000000000E2 -:10BE600000000000000000000000000000000000D2 -:10BE700000000000000000000000000000000000C2 -:10BE800000000000000000000000000000000000B2 -:10BE900000000000000000000000000000000000A2 -:10BEA0000000000000000000000000000000000092 -:10BEB0000000000000000000000000000000000082 -:10BEC0000000000000000000000000000000000072 -:10BED0000000000000000000000000000000000062 -:10BEE0000000000000000000000000000000000052 -:10BEF0000000000000000000000000000000000042 -:10BF00000000000000000000000000000000000031 -:10BF10000000000000000000000000000000000021 -:10BF20000000000000000000000000000000000011 -:10BF30000000000000000000000000000000000001 -:10BF400000000000000000000000000000000000F1 -:10BF500000000000000000000000000000000000E1 -:10BF600000000000000000000000000000000000D1 -:10BF700000000000000000000000000000000000C1 -:10BF800000000000000000000000000000000000B1 -:10BF900000000000000000000000000000000000A1 -:10BFA0000000000000000000000000000000000091 -:10BFB0000000000000000000000000000000000081 -:10BFC0000000000000000000000000000000000071 -:10BFD0000000000000000000000000000000000061 -:10BFE0000000000000000000000000000000000051 -:10BFF0000000000000000000000000000000000041 -:10C000000000000000000000000000000000000030 -:10C010000000000000000000000000000000000020 -:10C020000000000000000000000000000000000010 -:10C030000000000000000000000000000000000000 -:10C0400000000000000000000000000000000000F0 -:10C0500000000000000000000000000000000000E0 -:10C0600000000000000000000000000000000000D0 -:10C0700000000000000000000000000000000000C0 -:10C0800000000000000000000000000000000000B0 -:10C0900000000000000000000000000000000000A0 -:10C0A0000000000000000000000000000000000090 -:10C0B0000000000000000000000000000000000080 -:10C0C0000000000000000000000000000000000070 -:10C0D0000000000000000000000000000000000060 -:10C0E0000000000000000000000000000000000050 -:10C0F0000000000000000000000000000000000040 -:10C10000000000000000000000000000000000002F -:10C11000000000000000000000000000000000001F -:10C12000000000000000000000000000000000000F -:10C1300000000000000000000000000000000000FF -:10C1400000000000000000000000000000000000EF -:10C1500000000000000000000000000000000000DF -:10C1600000000000000000000000000000000000CF -:10C1700000000000000000000000000000000000BF -:10C1800000000000000000000000000000000000AF -:10C19000000000000000000000000000000000009F -:10C1A000000000000000000000000000000000008F -:10C1B000000000000000000000000000000000007F -:10C1C000000000000000000000000000000000006F -:10C1D000000000000000000000000000000000005F -:10C1E000000000000000000000000000000000004F -:10C1F000000000000000000000000000000000003F -:10C20000000000000000000000000000000000002E -:10C21000000000000000000000000000000000001E -:10C22000000000000000000000000000000000000E -:10C2300000000000000000000000000000000000FE -:10C2400000000000000000000000000000000000EE -:10C2500000000000000000000000000000000000DE -:10C2600000000000000000000000000000000000CE -:10C2700000000000000000000000000000000000BE -:10C2800000000000000000000000000000000000AE -:10C29000000000000000000000000000000000009E -:10C2A000000000000000000000000000000000008E -:10C2B000000000000000000000000000000000007E -:10C2C000000000000000000000000000000000006E -:10C2D000000000000000000000000000000000005E -:10C2E000000000000000000000000000000000004E -:10C2F000000000000000000000000000000000003E -:10C30000000000000000000000000000000000002D -:10C31000000000000000000000000000000000001D -:10C32000000000000000000000000000000000000D -:10C3300000000000000000000000000000000000FD -:10C3400000000000000000000000000000000000ED -:10C3500000000000000000000000000000000000DD -:10C3600000000000000000000000000000000000CD -:10C3700000000000000000000000000000000000BD -:10C3800000000000000000000000000000000000AD -:10C39000000000000000000000000000000000009D -:10C3A000000000000000000000000000000000008D -:10C3B000000000000000000000000000000000007D -:10C3C000000000000000000000000000000000006D -:10C3D000000000000000000000000000000000005D -:10C3E000000000000000000000000000000000004D -:10C3F000000000000000000000000000000000003D -:10C40000000000000000000000000000000000002C -:10C41000000000000000000000000000000000001C -:10C42000000000000000000000000000000000000C -:10C4300000000000000000000000000000000000FC -:10C4400000000000000000000000000000000000EC -:10C4500000000000000000000000000000000000DC -:10C4600000000000000000000000000000000000CC -:10C4700000000000000000000000000000000000BC -:10C4800000000000000000000000000000000000AC -:10C49000000000000000000000000000000000009C -:10C4A000000000000000000000000000000000008C -:10C4B000000000000000000000000000000000007C -:10C4C000000000000000000000000000000000006C -:10C4D000000000000000000000000000000000005C -:10C4E000000000000000000000000000000000004C -:10C4F000000000000000000000000000000000003C -:10C50000000000000000000000000000000000002B -:10C51000000000000000000000000000000000001B -:10C52000000000000000000000000000000000000B -:10C5300000000000000000000000000000000000FB -:10C5400000000000000000000000000000000000EB -:10C5500000000000000000000000000000000000DB -:10C5600000000000000000000000000000000000CB -:10C5700000000000000000000000000000000000BB -:10C5800000000000000000000000000000000000AB -:10C59000000000000000000000000000000000009B -:10C5A000000000000000000000000000000000008B -:10C5B000000000000000000000000000000000007B -:10C5C000000000000000000000000000000000006B -:10C5D000000000000000000000000000000000005B -:10C5E000000000000000000000000000000000004B -:10C5F000000000000000000000000000000000003B -:10C60000000000000000000000000000000000002A -:10C61000000000000000000000000000000000001A -:10C62000000000000000000000000000000000000A -:10C6300000000000000000000000000000000000FA -:10C6400000000000000000000000000000000000EA -:10C6500000000000000000000000000000000000DA -:10C6600000000000000000000000000000000000CA -:10C6700000000000000000000000000000000000BA -:10C6800000000000000000000000000000000000AA -:10C69000000000000000000000000000000000009A -:10C6A000000000000000000000000000000000008A -:10C6B000000000000000000000000000000000007A -:10C6C000000000000000000000000000000000006A -:10C6D000000000000000000000000000000000005A -:10C6E000000000000000000000000000000000004A -:10C6F000000000000000000000000000000000003A -:10C700000000000000000000000000000000000029 -:10C710000000000000000000000000000000000019 -:10C720000000000000000000000000000000000009 -:10C7300000000000000000000000000000000000F9 -:10C7400000000000000000000000000000000000E9 -:10C7500000000000000000000000000000000000D9 -:10C7600000000000000000000000000000000000C9 -:10C7700000000000000000000000000000000000B9 -:10C7800000000000000000000000000000000000A9 -:10C790000000000000000000000000000000000099 -:10C7A0000000000000000000000000000000000089 -:10C7B0000000000000000000000000000000000079 -:10C7C0000000000000000000000000000000000069 -:10C7D0000000000000000000000000000000000059 -:10C7E0000000000000000000000000000000000049 -:10C7F0000000000000000000000000000000000039 -:10C800000000000000000000000000000000000028 -:10C810000000000000000000000000000000000018 -:10C820000000000000000000000000000000000008 -:10C8300000000000000000000000000000000000F8 -:10C8400000000000000000000000000000000000E8 -:10C8500000000000000000000000000000000000D8 -:10C8600000000000000000000000000000000000C8 -:10C8700000000000000000000000000000000000B8 -:10C8800000000000000000000000000000000000A8 -:10C890000000000000000000000000000000000098 -:10C8A0000000000000000000000000000000000088 -:10C8B0000000000000000000000000000000000078 -:10C8C0000000000000000000000000000000000068 -:10C8D0000000000000000000000000000000000058 -:10C8E0000000000000000000000000000000000048 -:10C8F0000000000000000000000000000000000038 -:10C900000000000000000000000000000000000027 -:10C910000000000000000000000000000000000017 -:10C920000000000000000000000000000000000007 -:10C9300000000000000000000000000000000000F7 -:10C9400000000000000000000000000000000000E7 -:10C9500000000000000000000000000000000000D7 -:10C9600000000000000000000000000000000000C7 -:10C9700000000000000000000000000000000000B7 -:10C9800000000000000000000000000000000000A7 -:10C990000000000000000000000000000000000097 -:10C9A0000000000000000000000000000000000087 -:10C9B0000000000000000000000000000000000077 -:10C9C0000000000000000000000000000000000067 -:10C9D0000000000000000000000000000000000057 -:10C9E0000000000000000000000000000000000047 -:10C9F0000000000000000000000000000000000037 -:10CA00000000000000000000000000000000000026 -:10CA10000000000000000000000000000000000016 -:10CA20000000000000000000000000000000000006 -:10CA300000000000000000000000000000000000F6 -:10CA400000000000000000000000000000000000E6 -:10CA500000000000000000000000000000000000D6 -:10CA600000000000000000000000000000000000C6 -:10CA700000000000000000000000000000000000B6 -:10CA800000000000000000000000000000000000A6 -:10CA90000000000000000000000000000000000096 -:10CAA0000000000000000000000000000000000086 -:10CAB0000000000000000000000000000000000076 -:10CAC0000000000000000000000000000000000066 -:10CAD0000000000000000000000000000000000056 -:10CAE0000000000000000000000000000000000046 -:10CAF0000000000000000000000000000000000036 -:10CB00000000000000000000000000000000000025 -:10CB10000000000000000000000000000000000015 -:10CB20000000000000000000000000000000000005 -:10CB300000000000000000000000000000000000F5 -:10CB400000000000000000000000000000000000E5 -:10CB500000000000000000000000000000000000D5 -:10CB600000000000000000000000000000000000C5 -:10CB700000000000000000000000000000000000B5 -:10CB800000000000000000000000000000000000A5 -:10CB90000000000000000000000000000000000095 -:10CBA0000000000000000000000000000000000085 -:10CBB0000000000000000000000000000000000075 -:10CBC0000000000000000000000000000000000065 -:10CBD0000000000000000000000000000000000055 -:10CBE0000000000000000000000000000000000045 -:10CBF0000000000000000000000000000000000035 -:10CC00000000000000000000000000000000000024 -:10CC10000000000000000000000000000000000014 -:10CC20000000000000000000000000000000000004 -:10CC300000000000000000000000000000000000F4 -:10CC400000000000000000000000000000000000E4 -:10CC500000000000000000000000000000000000D4 -:10CC600000000000000000000000000000000000C4 -:10CC700000000000000000000000000000000000B4 -:10CC800000000000000000000000000000000000A4 -:10CC90000000000000000000000000000000000094 -:10CCA0000000000000000000000000000000000084 -:10CCB0000000000000000000000000000000000074 -:10CCC0000000000000000000000000000000000064 -:10CCD0000000000000000000000000000000000054 -:10CCE0000000000000000000000000000000000044 -:10CCF0000000000000000000000000000000000034 -:10CD00000000000000000000000000000000000023 -:10CD10000000000000000000000000000000000013 -:10CD20000000000000000000000000000000000003 -:10CD300000000000000000000000000000000000F3 -:10CD400000000000000000000000000000000000E3 -:10CD500000000000000000000000000000000000D3 -:10CD600000000000000000000000000000000000C3 -:10CD700000000000000000000000000000000000B3 -:10CD800000000000000000000000000000000000A3 -:10CD90000000000000000000000000000000000093 -:10CDA0000000000000000000000000000000000083 -:10CDB0000000000000000000000000000000000073 -:10CDC0000000000000000000000000000000000063 -:10CDD0000000000000000000000000000000000053 -:10CDE0000000000000000000000000000000000043 -:10CDF0000000000000000000000000000000000033 -:10CE00000000000000000000000000000000000022 -:10CE10000000000000000000000000000000000012 -:10CE20000000000000000000000000000000000002 -:10CE300000000000000000000000000000000000F2 -:10CE400000000000000000000000000000000000E2 -:10CE500000000000000000000000000000000000D2 -:10CE600000000000000000000000000000000000C2 -:10CE700000000000000000000000000000000000B2 -:10CE800000000000000000000000000000000000A2 -:10CE90000000000000000000000000000000000092 -:10CEA0000000000000000000000000000000000082 -:10CEB0000000000000000000000000000000000072 -:10CEC0000000000000000000000000000000000062 -:10CED0000000000000000000000000000000000052 -:10CEE0000000000000000000000000000000000042 -:10CEF0000000000000000000000000000000000032 -:10CF00000000000000000000000000000000000021 -:10CF10000000000000000000000000000000000011 -:10CF20000000000000000000000000000000000001 -:10CF300000000000000000000000000000000000F1 -:10CF400000000000000000000000000000000000E1 -:10CF500000000000000000000000000000000000D1 -:10CF600000000000000000000000000000000000C1 -:10CF700000000000000000000000000000000000B1 -:10CF800000000000000000000000000000000000A1 -:10CF90000000000000000000000000000000000091 -:10CFA0000000000000000000000000000000000081 -:10CFB0000000000000000000000000000000000071 -:10CFC0000000000000000000000000000000000061 -:10CFD0000000000000000000000000000000000051 -:10CFE0000000000000000000000000000000000041 -:10CFF0000000000000000000000000000000000031 -:10D000000000000000000000000000000000000020 -:10D010000000000000000000000000000000000010 -:10D020000000000000000000000000000000000000 -:10D0300000000000000000000000000000000000F0 -:10D0400000000000000000000000000000000000E0 -:10D0500000000000000000000000000000000000D0 -:10D0600000000000000000000000000000000000C0 -:10D0700000000000000000000000000000000000B0 -:10D0800000000000000000000000000000000000A0 -:10D090000000000000000000000000000000000090 -:10D0A0000000000000000000000000000000000080 -:10D0B0000000000000000000000000000000000070 -:10D0C0000000000000000000000000000000000060 -:10D0D0000000000000000000000000000000000050 -:10D0E0000000000000000000000000000000000040 -:10D0F0000000000000000000000000000000000030 -:10D10000000000000000000000000000000000001F -:10D11000000000000000000000000000000000000F -:10D1200000000000000000000000000000000000FF -:10D1300000000000000000000000000000000000EF -:10D1400000000000000000000000000000000000DF -:10D1500000000000000000000000000000000000CF -:10D1600000000000000000000000000000000000BF -:10D1700000000000000000000000000000000000AF -:10D18000000000000000000000000000000000009F -:10D19000000000000000000000000000000000008F -:10D1A000000000000000000000000000000000007F -:10D1B000000000000000000000000000000000006F -:10D1C000000000000000000000000000000000005F -:10D1D000000000000000000000000000000000004F -:10D1E000000000000000000000000000000000003F -:10D1F000000000000000000000000000000000002F -:10D20000000000000000000000000000000000001E -:10D21000000000000000000000000000000000000E -:10D2200000000000000000000000000000000000FE -:10D2300000000000000000000000000000000000EE -:10D2400000000000000000000000000000000000DE -:10D2500000000000000000000000000000000000CE -:10D2600000000000000000000000000000000000BE -:10D2700000000000000000000000000000000000AE -:10D28000000000000000000000000000000000009E -:10D29000000000000000000000000000000000008E -:10D2A000000000000000000000000000000000007E -:10D2B000000000000000000000000000000000006E -:10D2C000000000000000000000000000000000005E -:10D2D000000000000000000000000000000000004E -:10D2E000000000000000000000000000000000003E -:10D2F000000000000000000000000000000000002E -:10D30000000000000000000000000000000000001D -:10D31000000000000000000000000000000000000D -:10D3200000000000000000000000000000000000FD -:10D3300000000000000000000000000000000000ED -:10D3400000000000000000000000000000000000DD -:10D3500000000000000000000000000000000000CD -:10D3600000000000000000000000000000000000BD -:10D3700000000000000000000000000000000000AD -:10D38000000000000000000000000000000000009D -:10D39000000000000000000000000000000000008D -:10D3A000000000000000000000000000000000007D -:10D3B000000000000000000000000000000000006D -:10D3C000000000000000000000000000000000005D -:10D3D000000000000000000000000000000000004D -:10D3E000000000000000000000000000000000003D -:10D3F000000000000000000000000000000000002D -:10D40000000000000000000000000000000000001C -:10D41000000000000000000000000000000000000C -:10D4200000000000000000000000000000000000FC -:10D4300000000000000000000000000000000000EC -:10D4400000000000000000000000000000000000DC -:10D4500000000000000000000000000000000000CC -:10D4600000000000000000000000000000000000BC -:10D4700000000000000000000000000000000000AC -:10D48000000000000000000000000000000000009C -:10D49000000000000000000000000000000000008C -:10D4A000000000000000000000000000000000007C -:10D4B000000000000000000000000000000000006C -:10D4C000000000000000000000000000000000005C -:10D4D000000000000000000000000000000000004C -:10D4E000000000000000000000000000000000003C -:10D4F000000000000000000000000000000000002C -:10D50000000000000000000000000000000000001B -:10D51000000000000000000000000000000000000B -:10D5200000000000000000000000000000000000FB -:10D5300000000000000000000000000000000000EB -:10D5400000000000000000000000000000000000DB -:10D5500000000000000000000000000000000000CB -:10D5600000000000000000000000000000000000BB -:10D5700000000000000000000000000000000000AB -:10D58000000000000000000000000000000000009B -:10D59000000000000000000000000000000000008B -:10D5A000000000000000000000000000000000007B -:10D5B000000000000000000000000000000000006B -:10D5C000000000000000000000000000000000005B -:10D5D000000000000000000000000000000000004B -:10D5E000000000000000000000000000000000003B -:10D5F000000000000000000000000000000000002B -:10D60000000000000000000000000000000000001A -:10D61000000000000000000000000000000000000A -:10D6200000000000000000000000000000000000FA -:10D6300000000000000000000000000000000000EA -:10D6400000000000000000000000000000000000DA -:10D6500000000000000000000000000000000000CA -:10D6600000000000000000000000000000000000BA -:10D6700000000000000000000000000000000000AA -:10D68000000000000000000000000000000000009A -:10D69000000000000000000000000000000000008A -:10D6A000000000000000000000000000000000007A -:10D6B000000000000000000000000000000000006A -:10D6C000000000000000000000000000000000005A -:10D6D000000000000000000000000000000000004A -:10D6E000000000000000000000000000000000003A -:10D6F000000000000000000000000000000000002A -:10D700000000000000000000000000000000000019 -:10D710000000000000000000000000000000000009 -:10D7200000000000000000000000000000000000F9 -:10D7300000000000000000000000000000000000E9 -:10D7400000000000000000000000000000000000D9 -:10D7500000000000000000000000000000000000C9 -:10D7600000000000000000000000000000000000B9 -:10D7700000000000000000000000000000000000A9 -:10D780000000000000000000000000000000000099 -:10D790000000000000000000000000000000000089 -:10D7A0000000000000000000000000000000000079 -:10D7B0000000000000000000000000000000000069 -:10D7C0000000000000000000000000000000000059 -:10D7D0000000000000000000000000000000000049 -:10D7E0000000000000000000000000000000000039 -:10D7F0000000000000000000000000000000000029 -:10D800000000000000000000000000000000000018 -:10D810000000000000000000000000000000000008 -:10D8200000000000000000000000000000000000F8 -:10D8300000000000000000000000000000000000E8 -:10D8400000000000000000000000000000000000D8 -:10D8500000000000000000000000000000000000C8 -:10D8600000000000000000000000000000000000B8 -:10D8700000000000000000000000000000000000A8 -:10D880000000000000000000000000000000000098 -:10D890000000000000000000000000000000000088 -:10D8A0000000000000000000000000000000000078 -:10D8B0000000000000000000000000000000000068 -:10D8C0000000000000000000000000000000000058 -:10D8D0000000000000000000000000000000000048 -:10D8E0000000000000000000000000000000000038 -:10D8F0000000000000000000000000000000000028 -:10D900000000000000000000000000000000000017 -:10D910000000000000000000000000000000000007 -:10D9200000000000000000000000000000000000F7 -:10D9300000000000000000000000000000000000E7 -:10D9400000000000000000000000000000000000D7 -:10D9500000000000000000000000000000000000C7 -:10D9600000000000000000000000000000000000B7 -:10D9700000000000000000000000000000000000A7 -:10D980000000000000000000000000000000000097 -:10D990000000000000000000000000000000000087 -:10D9A0000000000000000000000000000000000077 -:10D9B0000000000000000000000000000000000067 -:10D9C0000000000000000000000000000000000057 -:10D9D0000000000000000000000000000000000047 -:10D9E0000000000000000000000000000000000037 -:10D9F0000000000000000000000000000000000027 -:10DA00000000000000000000000000000000000016 -:10DA10000000000000000000000000000000000006 -:10DA200000000000000000000000000000000000F6 -:10DA300000000000000000000000000000000000E6 -:10DA400000000000000000000000000000000000D6 -:10DA500000000000000000000000000000000000C6 -:10DA600000000000000000000000000000000000B6 -:10DA700000000000000000000000000000000000A6 -:10DA80000000000000000000000000000000000096 -:10DA90000000000000000000000000000000000086 -:10DAA0000000000000000000000000000000000076 -:10DAB0000000000000000000000000000000000066 -:10DAC0000000000000000000000000000000000056 -:10DAD0000000000000000000000000000000000046 -:10DAE0000000000000000000000000000000000036 -:10DAF0000000000000000000000000000000000026 -:10DB00000000000000000000000000000000000015 -:10DB10000000000000000000000000000000000005 -:10DB200000000000000000000000000000000000F5 -:10DB300000000000000000000000000000000000E5 -:10DB400000000000000000000000000000000000D5 -:10DB500000000000000000000000000000000000C5 -:10DB600000000000000000000000000000000000B5 -:10DB700000000000000000000000000000000000A5 -:10DB80000000000000000000000000000000000095 -:10DB90000000000000000000000000000000000085 -:10DBA0000000000000000000000000000000000075 -:10DBB0000000000000000000000000000000000065 -:10DBC0000000000000000000000000000000000055 -:10DBD0000000000000000000000000000000000045 -:10DBE0000000000000000000000000000000000035 -:10DBF0000000000000000000000000000000000025 -:10DC00000000000000000000000000000000000014 -:10DC10000000000000000000000000000000000004 -:10DC200000000000000000000000000000000000F4 -:10DC300000000000000000000000000000000000E4 -:10DC400000000000000000000000000000000000D4 -:10DC500000000000000000000000000000000000C4 -:10DC600000000000000000000000000000000000B4 -:10DC700000000000000000000000000000000000A4 -:10DC80000000000000000000000000000000000094 -:10DC90000000000000000000000000000000000084 -:10DCA0000000000000000000000000000000000074 -:10DCB0000000000000000000000000000000000064 -:10DCC0000000000000000000000000000000000054 -:10DCD0000000000000000000000000000000000044 -:10DCE0000000000000000000000000000000000034 -:10DCF0000000000000000000000000000000000024 -:10DD00000000000000000000000000000000000013 -:10DD10000000000000000000000000000000000003 -:10DD200000000000000000000000000000000000F3 -:10DD300000000000000000000000000000000000E3 -:10DD400000000000000000000000000000000000D3 -:10DD500000000000000000000000000000000000C3 -:10DD600000000000000000000000000000000000B3 -:10DD700000000000000000000000000000000000A3 -:10DD80000000000000000000000000000000000093 -:10DD90000000000000000000000000000000000083 -:10DDA0000000000000000000000000000000000073 -:10DDB0000000000000000000000000000000000063 -:10DDC0000000000000000000000000000000000053 -:10DDD0000000000000000000000000000000000043 -:10DDE0000000000000000000000000000000000033 -:10DDF0000000000000000000000000000000000023 -:10DE00000000000000000000000000000000000012 -:10DE10000000000000000000000000000000000002 -:10DE200000000000000000000000000000000000F2 -:10DE300000000000000000000000000000000000E2 -:10DE400000000000000000000000000000000000D2 -:10DE500000000000000000000000000000000000C2 -:10DE600000000000000000000000000000000000B2 -:10DE700000000000000000000000000000000000A2 -:10DE80000000000000000000000000000000000092 -:10DE90000000000000000000000000000000000082 -:10DEA0000000000000000000000000000000000072 -:10DEB0000000000000000000000000000000000062 -:10DEC0000000000000000000000000000000000052 -:10DED0000000000000000000000000000000000042 -:10DEE0000000000000000000000000000000000032 -:10DEF0000000000000000000000000000000000022 -:10DF00000000000000000000000000000000000011 -:10DF10000000000000000000000000000000000001 -:10DF200000000000000000000000000000000000F1 -:10DF300000000000000000000000000000000000E1 -:10DF400000000000000000000000000000000000D1 -:10DF500000000000000000000000000000000000C1 -:10DF600000000000000000000000000000000000B1 -:10DF700000000000000000000000000000000000A1 -:10DF80000000000000000000000000000000000091 -:10DF90000000000000000000000000000000000081 -:10DFA0000000000000000000000000000000000071 -:10DFB0000000000000000000000000000000000061 -:10DFC0000000000000000000000000000000000051 -:10DFD0000000000000000000000000000000000041 -:10DFE0000000000000000000000000000000000031 -:10DFF0000000000000000000000000000000000021 -:10E000000000000000000000000000000000000010 -:10E010000000000000000000000000000000000000 -:10E0200000000000000000000000000000000000F0 -:10E0300000000000000000000000000000000000E0 -:10E0400000000000000000000000000000000000D0 -:10E0500000000000000000000000000000000000C0 -:10E0600000000000000000000000000000000000B0 -:10E0700000000000000000000000000000000000A0 -:10E080000000000000000000000000000000000090 -:10E090000000000000000000000000000000000080 -:10E0A0000000000000000000000000000000000070 -:10E0B0000000000000000000000000000000000060 -:10E0C0000000000000000000000000000000000050 -:10E0D0000000000000000000000000000000000040 -:10E0E0000000000000000000000000000000000030 -:10E0F0000000000000000000000000000000000020 -:10E10000000000000000000000000000000000000F -:10E1100000000000000000000000000000000000FF -:10E1200000000000000000000000000000000000EF -:10E1300000000000000000000000000000000000DF -:10E1400000000000000000000000000000000000CF -:10E1500000000000000000000000000000000000BF -:10E1600000000000000000000000000000000000AF -:10E17000000000000000000000000000000000009F -:10E18000000000000000000000000000000000008F -:10E19000000000000000000000000000000000007F -:10E1A000000000000000000000000000000000006F -:10E1B000000000000000000000000000000000005F -:10E1C000000000000000000000000000000000004F -:10E1D000000000000000000000000000000000003F -:10E1E000000000000000000000000000000000002F -:10E1F000000000000000000000000000000000001F -:10E20000000000000000000000000000000000000E -:10E2100000000000000000000000000000000000FE -:10E2200000000000000000000000000000000000EE -:10E2300000000000000000000000000000000000DE -:10E2400000000000000000000000000000000000CE -:10E2500000000000000000000000000000000000BE -:10E2600000000000000000000000000000000000AE -:10E27000000000000000000000000000000000009E -:10E28000000000000000000000000000000000008E -:10E29000000000000000000000000000000000007E -:10E2A000000000000000000000000000000000006E -:10E2B000000000000000000000000000000000005E -:10E2C000000000000000000000000000000000004E -:10E2D000000000000000000000000000000000003E -:10E2E000000000000000000000000000000000002E -:10E2F000000000000000000000000000000000001E -:10E30000000000000000000000000000000000000D -:10E3100000000000000000000000000000000000FD -:10E3200000000000000000000000000000000000ED -:10E3300000000000000000000000000000000000DD -:10E3400000000000000000000000000000000000CD -:10E3500000000000000000000000000000000000BD -:10E3600000000000000000000000000000000000AD -:10E37000000000000000000000000000000000009D -:10E38000000000000000000000000000000000008D -:10E39000000000000000000000000000000000007D -:10E3A000000000000000000000000000000000006D -:10E3B000000000000000000000000000000000005D -:10E3C000000000000000000000000000000000004D -:10E3D000000000000000000000000000000000003D -:10E3E000000000000000000000000000000000002D -:10E3F000000000000000000000000000000000001D -:10E40000000000000000000000000000000000000C -:10E4100000000000000000000000000000000000FC -:10E4200000000000000000000000000000000000EC -:10E4300000000000000000000000000000000000DC -:10E4400000000000000000000000000000000000CC -:10E4500000000000000000000000000000000000BC -:10E4600000000000000000000000000000000000AC -:10E47000000000000000000000000000000000009C -:10E48000000000000000000000000000000000008C -:10E49000000000000000000000000000000000007C -:10E4A000000000000000000000000000000000006C -:10E4B000000000000000000000000000000000005C -:10E4C000000000000000000000000000000000004C -:10E4D000000000000000000000000000000000003C -:10E4E000000000000000000000000000000000002C -:10E4F000000000000000000000000000000000001C -:10E50000000000000000000000000000000000000B -:10E5100000000000000000000000000000000000FB -:10E5200000000000000000000000000000000000EB -:10E5300000000000000000000000000000000000DB -:10E5400000000000000000000000000000000000CB -:10E5500000000000000000000000000000000000BB -:10E5600000000000000000000000000000000000AB -:10E57000000000000000000000000000000000009B -:10E58000000000000000000000000000000000008B -:10E59000000000000000000000000000000000007B -:10E5A000000000000000000000000000000000006B -:10E5B000000000000000000000000000000000005B -:10E5C000000000000000000000000000000000004B -:10E5D000000000000000000000000000000000003B -:10E5E000000000000000000000000000000000002B -:10E5F000000000000000000000000000000000001B -:10E60000000000000000000000000000000000000A -:10E6100000000000000000000000000000000000FA -:10E6200000000000000000000000000000000000EA -:10E6300000000000000000000000000000000000DA -:10E6400000000000000000000000000000000000CA -:10E6500000000000000000000000000000000000BA -:10E6600000000000000000000000000000000000AA -:10E67000000000000000000000000000000000009A -:10E68000000000000000000000000000000000008A -:10E69000000000000000000000000000000000007A -:10E6A000000000000000000000000000000000006A -:10E6B000000000000000000000000000000000005A -:10E6C000000000000000000000000000000000004A -:10E6D000000000000000000000000000000000003A -:10E6E000000000000000000000000000000000002A -:10E6F000000000000000000000000000000000001A -:10E700000000000000000000000000000000000009 -:10E7100000000000000000000000000000000000F9 -:10E7200000000000000000000000000000000000E9 -:10E7300000000000000000000000000000000000D9 -:10E7400000000000000000000000000000000000C9 -:10E7500000000000000000000000000000000000B9 -:10E7600000000000000000000000000000000000A9 -:10E770000000000000000000000000000000000099 -:10E780000000000000000000000000000000000089 -:10E790000000000000000000000000000000000079 -:10E7A0000000000000000000000000000000000069 -:10E7B0000000000000000000000000000000000059 -:10E7C0000000000000000000000000000000000049 -:10E7D0000000000000000000000000000000000039 -:10E7E0000000000000000000000000000000000029 -:10E7F0000000000000000000000000000000000019 -:10E800000000000000000000000000000000000008 -:10E8100000000000000000000000000000000000F8 -:10E8200000000000000000000000000000000000E8 -:10E8300000000000000000000000000000000000D8 -:10E8400000000000000000000000000000000000C8 -:10E8500000000000000000000000000000000000B8 -:10E8600000000000000000000000000000000000A8 -:10E870000000000000000000000000000000000098 -:10E880000000000000000000000000000000000088 -:10E890000000000000000000000000000000000078 -:10E8A0000000000000000000000000000000000068 -:10E8B0000000000000000000000000000000000058 -:10E8C0000000000000000000000000000000000048 -:10E8D0000000000000000000000000000000000038 -:10E8E0000000000000000000000000000000000028 -:10E8F0000000000000000000000000000000000018 -:10E900000000000000000000000000000000000007 -:10E9100000000000000000000000000000000000F7 -:10E9200000000000000000000000000000000000E7 -:10E9300000000000000000000000000000000000D7 -:10E9400000000000000000000000000000000000C7 -:10E9500000000000000000000000000000000000B7 -:10E9600000000000000000000000000000000000A7 -:10E970000000000000000000000000000000000097 -:10E980000000000000000000000000000000000087 -:10E990000000000000000000000000000000000077 -:10E9A0000000000000000000000000000000000067 -:10E9B0000000000000000000000000000000000057 -:10E9C0000000000000000000000000000000000047 -:10E9D0000000000000000000000000000000000037 -:10E9E0000000000000000000000000000000000027 -:10E9F0000000000000000000000000000000000017 -:10EA00000000000000000000000000000000000006 -:10EA100000000000000000000000000000000000F6 -:10EA200000000000000000000000000000000000E6 -:10EA300000000000000000000000000000000000D6 -:10EA400000000000000000000000000000000000C6 -:10EA500000000000000000000000000000000000B6 -:10EA600000000000000000000000000000000000A6 -:10EA70000000000000000000000000000000000096 -:10EA80000000000000000000000000000000000086 -:10EA90000000000000000000000000000000000076 -:10EAA0000000000000000000000000000000000066 -:10EAB0000000000000000000000000000000000056 -:10EAC0000000000000000000000000000000000046 -:10EAD0000000000000000000000000000000000036 -:10EAE0000000000000000000000000000000000026 -:10EAF0000000000000000000000000000000000016 -:10EB00000000000000000000000000000000000005 -:10EB100000000000000000000000000000000000F5 -:10EB200000000000000000000000000000000000E5 -:10EB300000000000000000000000000000000000D5 -:10EB400000000000000000000000000000000000C5 -:10EB500000000000000000000000000000000000B5 -:10EB600000000000000000000000000000000000A5 -:10EB70000000000000000000000000000000000095 -:10EB80000000000000000000000000000000000085 -:10EB90000000000000000000000000000000000075 -:10EBA0000000000000000000000000000000000065 -:10EBB0000000000000000000000000000000000055 -:10EBC0000000000000000000000000000000000045 -:10EBD0000000000000000000000000000000000035 -:10EBE0000000000000000000000000000000000025 -:10EBF0000000000000000000000000000000000015 -:10EC00000000000000000000000000000000000004 -:10EC100000000000000000000000000000000000F4 -:10EC200000000000000000000000000000000000E4 -:10EC300000000000000000000000000000000000D4 -:10EC400000000000000000000000000000000000C4 -:10EC500000000000000000000000000000000000B4 -:10EC600000000000000000000000000000000000A4 -:10EC70000000000000000000000000000000000094 -:10EC80000000000000000000000000000000000084 -:10EC90000000000000000000000000000000000074 -:10ECA0000000000000000000000000000000000064 -:10ECB0000000000000000000000000000000000054 -:10ECC0000000000000000000000000000000000044 -:10ECD0000000000000000000000000000000000034 -:10ECE0000000000000000000000000000000000024 -:10ECF0000000000000000000000000000000000014 -:10ED00000000000000000000000000000000000003 -:10ED100000000000000000000000000000000000F3 -:10ED200000000000000000000000000000000000E3 -:10ED300000000000000000000000000000000000D3 -:10ED400000000000000000000000000000000000C3 -:10ED500000000000000000000000000000000000B3 -:10ED600000000000000000000000000000000000A3 -:10ED70000000000000000000000000000000000093 -:10ED80000000000000000000000000000000000083 -:10ED90000000000000000000000000000000000073 -:10EDA0000000000000000000000000000000000063 -:10EDB0000000000000000000000000000000000053 -:10EDC0000000000000000000000000000000000043 -:10EDD0000000000000000000000000000000000033 -:10EDE0000000000000000000000000000000000023 -:10EDF0000000000000000000000000000000000013 -:10EE00000000000000000000000000000000000002 -:10EE100000000000000000000000000000000000F2 -:10EE200000000000000000000000000000000000E2 -:10EE300000000000000000000000000000000000D2 -:10EE400000000000000000000000000000000000C2 -:10EE500000000000000000000000000000000000B2 -:10EE600000000000000000000000000000000000A2 -:10EE70000000000000000000000000000000000092 -:10EE80000000000000000000000000000000000082 -:10EE90000000000000000000000000000000000072 -:10EEA0000000000000000000000000000000000062 -:10EEB0000000000000000000000000000000000052 -:10EEC0000000000000000000000000000000000042 -:10EED0000000000000000000000000000000000032 -:10EEE0000000000000000000000000000000000022 -:10EEF0000000000000000000000000000000000012 -:10EF00000000000000000000000000000000000001 -:10EF100000000000000000000000000000000000F1 -:10EF200000000000000000000000000000000000E1 -:10EF300000000000000000000000000000000000D1 -:10EF400000000000000000000000000000000000C1 -:10EF500000000000000000000000000000000000B1 -:10EF600000000000000000000000000000000000A1 -:10EF70000000000000000000000000000000000091 -:10EF80000000000000000000000000000000000081 -:10EF90000000000000000000000000000000000071 -:10EFA0000000000000000000000000000000000061 -:10EFB0000000000000000000000000000000000051 -:10EFC0000000000000000000000000000000000041 -:10EFD0000000000000000000000000000000000031 -:10EFE0000000000000000000000000000000000021 -:10EFF0000000000000000000000000000000000011 -:10F000000000000000000000000000000000000000 -:10F0100000000000000000000000000000000000F0 -:10F0200000000000000000000000000000000000E0 -:10F0300000000000000000000000000000000000D0 -:10F0400000000000000000000000000000000000C0 -:10F0500000000000000000000000000000000000B0 -:10F0600000000000000000000000000000000000A0 -:10F070000000000000000000000000000000000090 -:10F080000000000000000000000000000000000080 -:10F090000000000000000000000000000000000070 -:10F0A0000000000000000000000000000000000060 -:10F0B0000000000000000000000000000000000050 -:10F0C0000000000000000000000000000000000040 -:10F0D0000000000000000000000000000000000030 -:10F0E0000000000000000000000000000000000020 -:10F0F0000000000000000000000000000000000010 -:10F1000000000000000000000000000000000000FF -:10F1100000000000000000000000000000000000EF -:10F1200000000000000000000000000000000000DF -:10F1300000000000000000000000000000000000CF -:10F1400000000000000000000000000000000000BF -:10F1500000000000000000000000000000000000AF -:10F16000000000000000000000000000000000009F -:10F17000000000000000000000000000000000008F -:10F18000000000000000000000000000000000007F -:10F19000000000000000000000000000000000006F -:10F1A000000000000000000000000000000000005F -:10F1B000000000000000000000000000000000004F -:10F1C000000000000000000000000000000000003F -:10F1D000000000000000000000000000000000002F -:10F1E000000000000000000000000000000000001F -:10F1F000000000000000000000000000000000000F -:10F2000000000000000000000000000000000000FE -:10F2100000000000000000000000000000000000EE -:10F2200000000000000000000000000000000000DE -:10F2300000000000000000000000000000000000CE -:10F2400000000000000000000000000000000000BE -:10F2500000000000000000000000000000000000AE -:10F26000000000000000000000000000000000009E -:10F27000000000000000000000000000000000008E -:10F28000000000000000000000000000000000007E -:10F29000000000000000000000000000000000006E -:10F2A000000000000000000000000000000000005E -:10F2B000000000000000000000000000000000004E -:10F2C000000000000000000000000000000000003E -:10F2D000000000000000000000000000000000002E -:10F2E000000000000000000000000000000000001E -:10F2F000000000000000000000000000000000000E -:10F3000000000000000000000000000000000000FD -:10F3100000000000000000000000000000000000ED -:10F3200000000000000000000000000000000000DD -:10F3300000000000000000000000000000000000CD -:10F3400000000000000000000000000000000000BD -:10F3500000000000000000000000000000000000AD -:10F36000000000000000000000000000000000009D -:10F37000000000000000000000000000000000008D -:10F38000000000000000000000000000000000007D -:10F39000000000000000000000000000000000006D -:10F3A000000000000000000000000000000000005D -:10F3B000000000000000000000000000000000004D -:10F3C000000000000000000000000000000000003D -:10F3D000000000000000000000000000000000002D -:10F3E000000000000000000000000000000000001D -:10F3F000000000000000000000000000000000000D -:10F4000000000000000000000000000000000000FC -:10F4100000000000000000000000000000000000EC -:10F4200000000000000000000000000000000000DC -:10F4300000000000000000000000000000000000CC -:10F4400000000000000000000000000000000000BC -:10F4500000000000000000000000000000000000AC -:10F46000000000000000000000000000000000009C -:10F47000000000000000000000000000000000008C -:10F48000000000000000000000000000000000007C -:10F49000000000000000000000000000000000006C -:10F4A000000000000000000000000000000000005C -:10F4B000000000000000000000000000000000004C -:10F4C000000000000000000000000000000000003C -:10F4D000000000000000000000000000000000002C -:10F4E000000000000000000000000000000000001C -:10F4F000000000000000000000000000000000000C -:10F5000000000000000000000000000000000000FB -:10F5100000000000000000000000000000000000EB -:10F5200000000000000000000000000000000000DB -:10F5300000000000000000000000000000000000CB -:10F5400000000000000000000000000000000000BB -:10F5500000000000000000000000000000000000AB -:10F56000000000000000000000000000000000009B -:10F57000000000000000000000000000000000008B -:10F58000000000000000000000000000000000007B -:10F59000000000000000000000000000000000006B -:10F5A000000000000000000000000000000000005B -:10F5B000000000000000000000000000000000004B -:10F5C000000000000000000000000000000000003B -:10F5D000000000000000000000000000000000002B -:10F5E000000000000000000000000000000000001B -:10F5F000000000000000000000000000000000000B -:10F6000000000000000000000000000000000000FA -:10F6100000000000000000000000000000000000EA -:10F6200000000000000000000000000000000000DA -:10F6300000000000000000000000000000000000CA -:10F6400000000000000000000000000000000000BA -:10F6500000000000000000000000000000000000AA -:10F66000000000000000000000000000000000009A -:10F67000000000000000000000000000000000008A -:10F68000000000000000000000000000000000007A -:10F69000000000000000000000000000000000006A -:10F6A000000000000000000000000000000000005A -:10F6B000000000000000000000000000000000004A -:10F6C000000000000000000000000000000000003A -:10F6D000000000000000000000000000000000002A -:10F6E000000000000000000000000000000000001A -:10F6F000000000000000000000000000000000000A -:10F7000000000000000000000000000000000000F9 -:10F7100000000000000000000000000000000000E9 -:10F7200000000000000000000000000000000000D9 -:10F7300000000000000000000000000000000000C9 -:10F7400000000000000000000000000000000000B9 -:10F7500000000000000000000000000000000000A9 -:10F760000000000000000000000000000000000099 -:10F770000000000000000000000000000000000089 -:10F780000000000000000000000000000000000079 -:10F790000000000000000000000000000000000069 -:10F7A0000000000000000000000000000000000059 -:10F7B0000000000000000000000000000000000049 -:10F7C0000000000000000000000000000000000039 -:10F7D0000000000000000000000000000000000029 -:10F7E0000000000000000000000000000000000019 -:10F7F0000000000000000000000000000000000009 -:10F8000000000000000000000000000000000000F8 -:10F8100000000000000000000000000000000000E8 -:10F8200000000000000000000000000000000000D8 -:10F8300000000000000000000000000000000000C8 -:10F8400000000000000000000000000000000000B8 -:10F8500000000000000000000000000000000000A8 -:10F860000000000000000000000000000000000098 -:10F870000000000000000000000000000000000088 -:10F880000000000000000000000000000000000078 -:10F890000000000000000000000000000000000068 -:10F8A0000000000000000000000000000000000058 -:10F8B0000000000000000000000000000000000048 -:10F8C0000000000000000000000000000000000038 -:10F8D0000000000000000000000000000000000028 -:10F8E0000000000000000000000000000000000018 -:10F8F0000000000000000000000000000000000008 -:10F9000000000000000000000000000000000000F7 -:10F9100000000000000000000000000000000000E7 -:10F9200000000000000000000000000000000000D7 -:10F9300000000000000000000000000000000000C7 -:10F9400000000000000000000000000000000000B7 -:10F9500000000000000000000000000000000000A7 -:10F960000000000000000000000000000000000097 -:10F970000000000000000000000000000000000087 -:10F980000000000000000000000000000000000077 -:10F990000000000000000000000000000000000067 -:10F9A0000000000000000000000000000000000057 -:10F9B0000000000000000000000000000000000047 -:10F9C0000000000000000000000000000000000037 -:10F9D0000000000000000000000000000000000027 -:10F9E0000000000000000000000000000000000017 -:10F9F0000000000000000000000000000000000007 -:10FA000000000000000000000000000000000000F6 -:10FA100000000000000000000000000000000000E6 -:10FA200000000000000000000000000000000000D6 -:10FA300000000000000000000000000000000000C6 -:10FA400000000000000000000000000000000000B6 -:10FA500000000000000000000000000000000000A6 -:10FA60000000000000000000000000000000000096 -:10FA70000000000000000000000000000000000086 -:10FA80000000000000000000000000000000000076 -:10FA90000000000000000000000000000000000066 -:10FAA0000000000000000000000000000000000056 -:10FAB0000000000000000000000000000000000046 -:10FAC0000000000000000000000000000000000036 -:10FAD0000000000000000000000000000000000026 -:10FAE0000000000000000000000000000000000016 -:10FAF0000000000000000000000000000000000006 -:10FB000000000000000000000000000000000000F5 -:10FB100000000000000000000000000000000000E5 -:10FB200000000000000000000000000000000000D5 -:10FB300000000000000000000000000000000000C5 -:10FB400000000000000000000000000000000000B5 -:10FB500000000000000000000000000000000000A5 -:10FB60000000000000000000000000000000000095 -:10FB70000000000000000000000000000000000085 -:10FB80000000000000000000000000000000000075 -:10FB90000000000000000000000000000000000065 -:10FBA0000000000000000000000000000000000055 -:10FBB0000000000000000000000000000000000045 -:10FBC0000000000000000000000000000000000035 -:10FBD0000000000000000000000000000000000025 -:10FBE0000000000000000000000000000000000015 -:10FBF0000000000000000000000000000000000005 -:10FC000000000000000000000000000000000000F4 -:10FC100000000000000000000000000000000000E4 -:10FC200000000000000000000000000000000000D4 -:10FC300000000000000000000000000000000000C4 -:10FC400000000000000000000000000000000000B4 -:10FC500000000000000000000000000000000000A4 -:10FC60000000000000000000000000000000000094 -:10FC70000000000000000000000000000000000084 -:10FC80000000000000000000000000000000000074 -:10FC90000000000000000000000000000000000064 -:10FCA0000000000000000000000000000000000054 -:10FCB0000000000000000000000000000000000044 -:10FCC0000000000000000000000000000000000034 -:10FCD0000000000000000000000000000000000024 -:10FCE0000000000000000000000000000000000014 -:10FCF0000000000000000000000000000000000004 -:10FD000000000000000000000000000000000000F3 -:10FD100000000000000000000000000000000000E3 -:10FD200000000000000000000000000000000000D3 -:10FD300000000000000000000000000000000000C3 -:10FD400000000000000000000000000000000000B3 -:10FD500000000000000000000000000000000000A3 -:10FD60000000000000000000000000000000000093 -:10FD70000000000000000000000000000000000083 -:10FD80000000000000000000000000000000000073 -:10FD90000000000000000000000000000000000063 -:10FDA0000000000000000000000000000000000053 -:10FDB0000000000000000000000000000000000043 -:10FDC0000000000000000000000000000000000033 -:10FDD0000000000000000000000000000000000023 -:10FDE0000000000000000000000000000000000013 -:10FDF0000000000000000000000000000000000003 -:10FE000000000000000000000000000000000000F2 -:10FE100000000000000000000000000000000000E2 -:10FE200000000000000000000000000000000000D2 -:10FE300000000000000000000000000000000000C2 -:10FE400000000000000000000000000000000000B2 -:10FE500000000000000000000000000000000000A2 -:10FE60000000000000000000000000000000000092 -:10FE70000000000000000000000000000000000082 -:10FE80000000000000000000000000000000000072 -:10FE90000000000000000000000000000000000062 -:10FEA0000000000000000000000000000000000052 -:10FEB0000000000000000000000000000000000042 -:10FEC0000000000000000000000000000000000032 -:10FED0000000000000000000000000000000000022 -:10FEE0000000000000000000000000000000000012 -:10FEF0000000000000000000000000000000000002 -:10FF000000000000000000000000000000000000F1 -:10FF100000000000000000000000000000000000E1 -:10FF200000000000000000000000000000000000D1 -:10FF300000000000000000000000000000000000C1 -:10FF400000000000000000000000000000000000B1 -:10FF500000000000000000000000000000000000A1 -:10FF60000000000000000000000000000000000091 -:10FF70000000000000000000000000000000000081 -:10FF80000000000000000000000000000000000071 -:10FF90000000000000000000000000000000000061 -:10FFA0000000000000000000000000000000000051 -:10FFB0000000000000000000000000000000000041 -:10FFC0000000000000000000000000000000000031 -:10FFD0000000000000000000000000000000000021 -:10FFE0000000000000000000000000000000000011 -:10FFF0000000000000000000000000000000000001 -:020000021000EC -:1000000004B50B46022200A9181802F030F801BD11 -:1000100010B5DFF8FC444FF48E720021204602F048 -:100020002CF8204610BDDFF8E804704710B5FFF744 -:10003000EFFF044600221146084600F037FAC0469A -:10004000C04602F025F8204600F018F802F05BFAEE -:10005000204600F09BF9204600F014F8204600F0FE -:1000600018F800F05CF900206072A072E072207352 -:10007000012060730020E075012010BD0021C171D6 -:1000800001722BE010B5044602F05AF801206071AD -:1000900010BD10B5044602F003F90120A07110BD97 -:1000A00038B50446012502F0AEF9012804D12846EE -:1000B000E0700020A0700AE0022804D10020E07067 -:1000C0002846A07003E00020E070A0700546284696 -:1000D00032BD80B502F0DCFA012002BD10B5044645 -:1000E000E07902F0DFFB0121217010BD70B50446FC -:1000F0000025E679E171FFF7F1FF002807D02046DF -:10010000FFF7C0FF2046FFF7C4FF012503E0E671BB -:100110002046FFF7E3FF284670BD0EB470B5C1B0AE -:10012000054600A84FF4807101F0FAFCFFF77BFF51 -:10013000044645AB2A464FF4807100A802F0AEFF9A -:1001400000A802F0C9FF451C00A82818002100F8EB -:10015000011CDFF8C0633078401C307003F033F8C6 -:100160007078401C7070207E2818FF2810DA207EDE -:10017000002803D0207E00190A2101762A4600A912 -:10018000207E0019193001F072FF207E2818207699 -:100190007078401E7070C0B2002801D103F00DF8D5 -:1001A00003F0B4F841B070BC5DF810FB2DE9F843E2 -:1001B00005460E4617464FF0020803F004F8D54CEA -:1001C0006078401C60709DF80000401E8DF80000B3 -:1001D00017F8019B00AB4A463946304602F08AFBCD -:1001E000002809D06078401E6070C0B2002801D19C -:1001F00002F0E3FF012015E05FFA88F84246294645 -:100200000FF22030FFF789FF4046A0F101080028D7 -:10021000E0D16078401E6070C0B2002801D102F0C9 -:10022000CCFF0020BDE8F2832DE9F04704460D46DF -:1002300016461F460898DFF8E08288F8000002F0B2 -:10024000C2FFDFF8D09299F80100401C89F8010044 -:100250004FF0020A434632463946284602F0F4FB84 -:1002600000280BD099F80100401E89F80100C0B2A7 -:10027000002801D102F0A1FF012017E05FFA8AFAFD -:10028000524621460FF2A820FFF747FF5046A0F143 -:10029000010A0028DED199F80100401E89F801000A -:1002A000C0B2002801D102F088FF0020BDE8F0872D -:1002B0002DE9F84305460E46174698464FF00209C9 -:1002C00002F081FF934C6078401C607042463946D2 -:1002D000304602F0ABFC002809D06078401E607008 -:1002E000C0B2002801D102F068FF012015E05FFADA -:1002F00089F94A4629460FF24420FFF70EFF484687 -:10030000A0F101090028E1D16078401E6070C0B200 -:10031000002801D102F051FF0020BDE8F28300F077 -:10032000F7BCF8B5044600273D467C4E0DE0394643 -:100330004F1EC9B200290AD1002804D12069012129 -:10034000A9408843206100276D1C122D10DA56F851 -:100350002500006E006880470128E8D1216901224C -:10036000AA401143216156F8251001220A77E3E7DC -:100370002069032805D02069022802D020690128BD -:1003800003D1206940F480502061F1BD02F038BDF6 -:1003900002F09EBD02F057BD81B00022ADF80220F0 -:1003A000ADF80020C079042808D0062809D0082814 -:1003B0000AD009280BD00A280CD00EE04FF4C860F0 -:1003C0000DE04FF448600AE04FF4C85007E04FF4E6 -:1003D000FA5004E042F2107001E041F27070ADF8A2 -:1003E00002200DE0BDF80020521CADF80020BDF841 -:1003F00000208242F6DBBDF80220521CADF802203C -:10040000BDF802208A4203D20022ADF80020EEE7B8 -:1004100001B07047417210B58CB003F003F8044688 -:10042000FFF701FE0021ADF82A1001910A218DF895 -:10043000081000218DF809108DF80A10407A002864 -:100440000DD0002C18D008468DF800000520019032 -:100450000B208DF8080000A804F024FB0CE0002C11 -:100460000AD001208DF80000052001900B208DF8A6 -:10047000080000A804F016FB0CB010BD02F08ABD05 -:1004800002F092BD01210846F8E701210846F7E78E -:1004900002210120F2E702210120F1E702F08EBDE6 -:1004A00010B50446FFF7BFFD447510BD1C4B187016 -:1004B00059709A70002098807047012822DB1849F3 -:1004C0008A888018888000B2B0F57A7F1ADBA0F5A0 -:1004D0007A7088808878401C887040B23C2811DB94 -:1004E0003C3888704878401C487040B23C2809DB92 -:1004F0003C3848700878401C087040B2182801DB6E -:100500000020087070470649062204F0D1BB0000A5 -:10051000B46E002024380020F87B0020000000206A -:10052000C07B002049574520256420256400000039 -:1005300049524520256420256400000049524F455A -:10054000202564202564000000487047A870002022 -:10055000506002604160086070470A68F8E74860D0 -:100560000160704701684068F9E7F8B50600DFF8F8 -:10057000F45702D505F14800F2BD05F1480400200A -:10058000296E00E0096805F16002914204D00C4632 -:10059000A2689642F6D10120002831D1A86EC76E1C -:1005A000182004F0C1FB0446A660002F05D0B74216 -:1005B00003D2B6FBF7F0784300E03046E060002F4E -:1005C00002D0B74200D23E46266100202075DFF8F7 -:1005D00098673078401C307002F0F5FD7078401C50 -:1005E000707005F160012046FFF7B7FF7078401E7C -:1005F0007070C0B2002801D102F0DFFD02F086FE6B -:100600002046F2BD38B5044694F9140000281BD1E9 -:10061000DFF854572878401C287002F0D4FD687821 -:10062000401C68702046FFF79DFF204604F094FBB5 -:100630006878401E6870C0B2002801D102F0BDFD8C -:10064000BDE8314002F062BE31BDF8B5044608464F -:100650006FF00045FFF789FF064694F9050094F90D -:100660000410814214D1C01C800004F05DFB0746D9 -:1006700094F90500012807DB82002168384601F063 -:10068000F6FC206804F068FB27606079C01C60718C -:1006900094F90400411C2171216841F82060DFF8C1 -:1006A000CC06864202D0307D401C3075002008E028 -:1006B000216851F820108A68954201DB1546A16037 -:1006C000401C94F904108842F2DBF1BDF8B50446F1 -:1006D0006FF00046DFF88C2602F1480502F1480071 -:1006E0004FF0FF33002704E0664501DB66467546A0 -:1006F0007F1C94F904C067450DDAD4F800C05CF89B -:1007000027E0DEF808C0002BEED58C45ECD1704612 -:100710003B465BB2ECE7002B11D4BCF1010F0EDBC2 -:1007200006E0216801EB8306766841F823605B1CD4 -:1007300094F904104E1EB342F3DB491E217102F1FD -:100740004801884204D0017D491E0175FFF75AFF18 -:10075000A560F1BD10B4C26A836B406C9C68002C2C -:1007600002D56FF0004300E01B698468002C02D5BD -:100770006FF0004000E00069984200DD1846D26842 -:100780005143884201DB012000E0002010BC70478B -:1007900038B5DFF8D0158A6EB2F85C30012490F9D4 -:1007A0000850AC402343A2F85C3001F2BC71FFF763 -:1007B000D4FE012032BD10B5DFF8A815896EB1F85E -:1007C0005C20012390F90840A3409A43A1F85C20E3 -:1007D000FFF7C8FE012010BD01207047F8B50446A0 -:1007E00015461E4604F12400FFF72FFF06EB4600D6 -:1007F00004EB8007294607F13000FFF726FF97F941 -:10080000340000903346627A94F908100FF2605079 -:10081000FFF783FCF1BDF8B5044615461E4604F10A -:100820002400FFF753FF06EB460004EB8007294640 -:1008300007F13000FFF74AFF97F934000090334684 -:10084000627A94F908100FF23850FFF766FCF1BD98 -:10085000C16A8A68012A09DB0969012906DA006D83 -:10086000002801D500207047022070470020704703 -:1008700001EB410200EB8201896B8A68012A09DBE6 -:100880000969012906DA006D002801D500207047AA -:100890000220704700207047002900D5D8E7E7E71D -:1008A000012900DA012113460A4697E7012900DAF7 -:1008B000012113460A46AEE7B1F57A7F01DC4FF419 -:1008C0007A7113460A464FF4FA7187E7B1F57A7FD9 -:1008D00001DC4FF47A7113460A464FF4FA719AE735 -:1008E00010B50446002922D5E06A816801291CDB85 -:1008F0000069012819DA02212046FFF72BFF0028A2 -:1009000013D194F954004FF0FF31884204D10020F4 -:1009100084F85400012010BD002806D10120607722 -:10092000084684F85400022010BD002010BDBDE828 -:1009300010409DE7DFF82C24926ED26E02F5FA7219 -:10094000524202654FF0FF3280F8542020E7C92957 -:1009500000DAC82113460A4642213FE7C92900DAD6 -:10096000C82113460A46422155E710B5044600291E -:1009700026D5E06A8168012920DB006901281DDA9B -:1009800003212046FFF7E6FE002817D194F9540012 -:100990004FF0FF31884204D1002084F85400012038 -:1009A00010BD002803D1012084F8540010BD012897 -:1009B00004D1084684F85400022010BD002010BD68 -:1009C000BDE8104054E7DFF89C23926ED26EC83227 -:1009D000524202654FF0FF3280F85420D8E6DFF82B -:1009E0008423926ED26EC83252420265D0E613461C -:1009F0004FF0FF321146F1E613464FF0FF32114639 -:100A000009E780B5FFF7C4FEFFF70DFB0021017574 -:100A1000012002BD80B5FFF7CEFEFFF704FB0021E9 -:100A20000175012002BDCF48C06A417A481E80414D -:100A3000C00F704780B5CB480068417A002902D1C9 -:100A4000006E40688047012002BD80B5FFF7B3FE0D -:100A5000C4480068417A002902D1006E806880474E -:100A6000012002BD000000002DE9F0410C46BD4D03 -:100A700055F82060307206F154070FF214313961D5 -:100A8000112800F20B81DFE810F0120022002E0086 -:100A900046003A005200610070009D007F008E0009 -:100AA000AC00BB00C800D500E200F000FD0006F17C -:100AB0000800062141760A21817605F2C471416061 -:100AC00040F2DC5181600FF28C303861E6E006F1D3 -:100AD0000800062141760A21817605F6A051416081 -:100AE0000A218160DAE006F108000C21417610212C -:100AF000817605F6B851416010218160CEE006F1A3 -:100B00000800072141760B21817605F6AC51416042 -:100B10000B218160C2E006F10800062141760A211E -:100B2000817605F6C85141600A218160B6E006F180 -:100B30000800062141760A21817605F6D4514160EC -:100B40000A2181600FF280203861A7E006F10800D9 -:100B5000262141762A21817605F6E05141602A213D -:100B600081600FF2D420386198E006F1080003217B -:100B700041760721817605F6286141600721816071 -:100B80000FF27C20386189E006F108000C214176E3 -:100B90001021817605F618614160102181600FF205 -:100BA000442038617AE006F10800022141760621EE -:100BB000817605F630614160062181600FF25C208C -:100BC00038616BE006F10800052141760921817644 -:100BD00005F60C614160092181600FF2D010386187 -:100BE0005CE006F10800062141760A21817605F6CF -:100BF000386141600A2181600FF2742038614DE054 -:100C000006F10800012141760521817605F644614F -:100C1000416040F28661816040E006F108000121F8 -:100C200041760521817605F5A051CC314160052141 -:100C3000816033E006F108000C21417610218176B5 -:100C400005F5A051D43141601021816026E006F104 -:100C50000800112141761521817605F5A051E43176 -:100C6000416041F66631816018E006F1080011210B -:100C700041761521817605F540514C3141601521B1 -:100C800081600BE006F1080004214176082181769D -:100C900005F54051643141600821816006F108008A -:100CA00000210175417581750176C1600161417056 -:100CB00006F128080846C8F828004FF0FF3086F8EB -:100CC00054007880062206F1580001F0D6F9002081 -:100CD00010E000EB400106EB8101002281F8342096 -:100CE00034314A7005F148024A6006EB8001002267 -:100CF0008A64401C0228ECDB002086F8280088F873 -:100D0000010005F14800C8F80400FC60BDE8F0816E -:100D100010B5144CFFF718FCA066002006E068210F -:100D200011FB00416C3144F82010401C1228F6DB06 -:100D30004FF0FF30206560650020A06505F00FFAD8 -:100D400005F0F3FF07F068FAF1F79BF907F088FF69 -:100D5000F1F75DFCF1F730FF08F0BCF8BDE810409A -:100D600008F07FBB0000002024380020480000204D -:100D7000414420256420256420256420256400004A -:100D8000524D202564202564202564202564000020 -:100D9000D907010891070108D9070108B707010819 -:100DA000A1080108AD08010899080108D907010840 -:100DB00035090108D9070108B7070108B908010872 -:100DC000CD080108E1080108D9070108C709010891 -:100DD000D9070108B70701084F0901085D09010893 -:100DE0006B090108D9070108DF090108D9070108C3 -:100DF000B7070108A1080108AD0801089908010812 -:100E0000D9070108030A0108D9070108150A0108D2 -:100E1000EF090108F909010899080108D907010833 -:100E200091070108D9070108B7070108A1080108BF -:100E3000AD08010899080108D907010891070108C0 -:100E4000D9070108B7070108A1080108AD08010882 -:100E500099080108270A010891070108270A0108D3 -:100E6000B7070108A1080108AD08010899080108A1 -:100E7000350A010891070108D90701084B0A010842 -:100E8000EF090108F90901089908010830B581B096 -:100E900004460D4602F097F9686920436861297C91 -:100EA00001F0F801082905D1A96901421CBF2846B3 -:100EB00002F048FA0448407820B901B0BDE830405B -:100EC00002F07BB901B030BD243800200A1841403F -:100ED00004D4504002D54FF0004070471046704790 -:100EE000421A414004D5504002D54FF000407047AF -:100EF000104670470021002804D120207047091DAA -:100F0000C9B2000110F0704FF9D0002803D4491C79 -:100F1000C9B24000F9E7084670472DE9F843044696 -:100F20008846B8F1000F4CD0002C01D4A14601E056 -:100F3000C4F10009B8F1000F01D4454601E0C8F141 -:100F4000000500261127280D00050ED0680C401C56 -:100F5000B9FBF0F64A46A5FB0601400C40EAC13059 -:100F6000101A814601E02D093F1F15F00F0F01D126 -:100F7000042FF8DAB9F1000F1BD0002F19D448461E -:100F8000FFF7B8FF874200DC384609FA00F93F1A3C -:100F9000B9FBF5F000FA07F18E194FF0FF31F94077 -:100FA000C94308420DD105FB10904FEA40097F1E4E -:100FB000E0E7701C400898EA040106D510F1004FE4 -:100FC00002D14FF0004000E04042BDE8F28330B56E -:100FD00081FB0045204629462F2208F0DFFA002D2C -:100FE0000FDC00DB0DD2C0430DD1641E65F100059E -:100FF00020462946000C40EA0140C4F3C0310818DD -:1010000030BD0028F4D04FF0004030BD10B504468C -:10101000FFF75CFF10F1004F06D1012C02DB6FF0EF -:10102000004010BD4FF0004010BD70B40246D20F1A -:1010300000D040420021030D1B0502D04FF0804339 -:1010400003E04FF4802300E09B089842FCD30C4659 -:1010500004E0000419464FF48043641C022C08D3BA -:10106000814200D2491C002A1AD0494218E0294680 -:101070009B08002B07D04D085E18B042F7D3401AEA -:10108000C01A5919F4E7002CE7D10B04B0F5803FE2 -:10109000DFD3401A0004A0F5004003F50041DAE771 -:1010A000084670BC7047002205E040F8221000EBB3 -:1010B00082031961521C036A9A42F6DB70472DE9DC -:1010C000F84F0C4615461E46376A4FF00008DDF80B -:1010D000289099FBF7F107FB119A46F82A00C346BE -:1010E00012E0A9EB0B00381890FBF7F107FB110099 -:1010F00056F8201054F82B00FFF769FF4146FFF720 -:1011000085FF80460BF1010BBB45EADB012413E0B0 -:10111000A9EB0400381890FBF7F107FB110006EB70 -:101120008000016955F824004042FFF750FF414616 -:10113000FFF76CFF8046641CBC42E9DB06EB8A00CB -:10114000C0F810804046BDE8F28F70B504460D012E -:101150002068401C2060E1682846FFF7C1FE064673 -:101160002068022808DB01043046FFF7D6FE01465E -:10117000E068FFF7ABFE00E02846E0602068022848 -:101180000CDBE1682846FFF7ABFE01463046FFF76F -:101190001EFF0146A068FFF799FE00E00020A06056 -:1011A0002068022805DB401E0104A068FFF7B5FE99 -:1011B00000E000206061FFF738FF2061001120612E -:1011C00070BD002101604FF48051416000218160B9 -:1011D000C16001614161704770B50446002002465C -:1011E00020E0DFF8901641F82020DFF88C1641F857 -:1011F0002020DFF8881641F82020DFF8841641F817 -:101200002020DFF8801641F82020DFF87C1641F816 -:101210002020DFF8781641F82020DFF8741641F816 -:101220002020401C1828DCDB10460EE0DFF8641696 -:1012300041F8202001EB80018A600A618A610A621C -:101240008A620A638A630A64401C0228EEDBDFF8C4 -:10125000485610462864064609E0002106EBC60001 -:1012600005EB800000F59C70FFF71DFF761C032E38 -:10127000F3DB002609E0002106EBC60005EB800049 -:1012800000F5DA70FFF70FFF761C042EF3DB4FF446 -:101290008030A86541F69910E8650020A8642846CA -:1012A000FFF78FFF0020E864286568634FF0FF3088 -:1012B000E86228630020A863E863E866A8666866B9 -:1012C0006864A86D2866FF202867AC670120686500 -:1012D000032068670020A86270BD2DE9FF4F8FB022 -:1012E00000241C981C90DFF8B05564E001202865AC -:1012F0000020E863686B052801DB0020E8644FF0FC -:10130000FF30E862286300206863E86A10F1010F8B -:1013100049D0AF6F002F43D0D5F83CE0BEF1C80FE5 -:101320003EDAEF6C2E2F02DA2F6D002F38D1704489 -:1013300090FBF6F706FB1708D5F84090DFF85475D8 -:10134000DFF830A55AF828A047F829A007EB89074D -:10135000DFF824A55AF828A0C7F808A0DFF81CA5D4 -:101360005AF828A0C7F810A0DFF814A55AF828A04A -:10137000C7F818A051F82810396252F82810B9623D -:1013800053F828103963DFF8081551F82810B963AD -:10139000C7F840E009F1010129640EF10101E96398 -:1013A000686B401C68630CF1010090FBF6F106FBD2 -:1013B0001100A863641C1C98844280F22C820F9850 -:1013C00050F8240080010F9941F82400109850F83B -:1013D00024008001109941F82400119850F824004D -:1013E0008001119941F82400129850F824008201DC -:1013F000129840F82420686D002841D0686F411E83 -:1014000069670128D6DA0F9850F8241047F6015082 -:1014100081420EDB109B53F82430834209DB119B81 -:1014200053F82430834204DB824202DB6420E86705 -:10143000C0E7E86F421EEA670128BBDAA96110988D -:1014400050F82400E861119850F82400286212989E -:1014500050F82400686205F19000FFF724FEE96966 -:1014600005F1B400FFF71FFE296A05F1D800FFF768 -:101470001AFE696A05F1FC00FFF715FE0020686599 -:1014800005F5D27605F5D67AA86B009005F5DA73E6 -:10149000524631460F9850F82400FFF710FEA96914 -:1014A000FFF71EFD8146A86B009005F5EC735246D0 -:1014B0003146109850F82400FFF701FEE969FFF764 -:1014C0000FFD8046A86B009005F5FE73524631462D -:1014D000119850F82400FFF7F2FD296AFFF700FD8C -:1014E0000746A86B009005F50873524631461298DE -:1014F00050F82400FFF7E3FD696AFFF7F1FC019063 -:1015000005F5907605F5967AA86B009005F59C7325 -:1015100052463146A8EB0900FFF7D1FD6866A86B7B -:10152000009005F5AE73524631460198381AFFF720 -:10153000C6FDA86607EB0800484401990818A96B86 -:10154000009105F5C07352463146461000EB967087 -:101550008010FFF7B4FDE8661826A86A002878D145 -:1015600005F1800A05F1880BA86B009005F1900346 -:101570005A4651460F9850F82400FFF7A0FDA86185 -:10158000A86B009005F1B4035A465146109850F8E4 -:101590002400FFF794FDE861A86B009005F1D803E3 -:1015A0005A465146119850F82400FFF788FD2862EA -:1015B000A86B009005F1FC035A465146129850F86A -:1015C0002400FFF77CFD6862A86C411CA9645028C8 -:1015D00029DA47F601500F9A52F82420824210DB94 -:1015E000109A52F8242082420BDB119A52F82420E0 -:1015F000824206DB129A52F82420824201DB481E06 -:10160000A864A86C292803DBE96E2846FFF79DFD36 -:10161000A86B401C90FBF6F106FB1100A8634FF489 -:1016200080302866C6E60120A8624FF48021286930 -:10163000FFF7CDFC286640F2DD51884203DB40F223 -:10164000DC50286605E0B0F5E17F02DA4FF4E17086 -:101650002866E86E296E81420BDAEA6A12F1010F00 -:1016600007D1A86B173090FBF6F106FB1100E8627A -:1016700010E088420EDAE86A10F1010F0AD0286BF8 -:1016800010F1010F06D1A86B401C90FBF6F106FB90 -:1016900011002863E86A10F1010F36D1E86C401C94 -:1016A000E86405F1800A05F1880BA86B009005F14C -:1016B00090035A4651460F9850F82400FFF7FFFC5C -:1016C000A861A86B009005F1B4035A4651461098E2 -:1016D00050F82400FFF7F3FCE861A86B009005F1D7 -:1016E000D8035A465146119850F82400FFF7E7FCFA -:1016F0002862A86B009005F1FC035A4651461298E7 -:1017000050F82400FFF7DBFC6862D5F838C09CFB7A -:10171000F6F006FB10C057496A6E41F82020564982 -:10172000AA6E41F820205549EA6E41F8202054491C -:101730002A6E41F82020534941F82090524A42F83D -:101740002080524B43F82070514FDDF804E047F8F9 -:1017500020E0E86A10F1010F3FF4D7AD2F6B17F1CD -:10176000010F3FF4D2ADBC457FF4CFADAF6F002F7A -:101770003FF4BEADD5F83CE0BEF1C80FBFF6B8AD42 -:10178000D5F84C80B8F12E0F03DA2F6D002F7FF4BF -:10179000AFAD00EB0E0999FBF6F006FB109AD5F8F9 -:1017A00040B03C4F334850F82A0047F82B00CDF8A2 -:1017B000009007EB8B07304850F82A00B860CDF84E -:1017C00000902E4850F82A003861CDF800902C483F -:1017D00050F82A00B861CDF8009051F82A0038621C -:1017E000CDF8009052F82A00B862CDF8009053F876 -:1017F0002A003863264850F82A00B863CEF100006A -:1018000038640BF101002864B8F12E0FFFF66EADBD -:10181000002028656CE5286C012827DBAC6F2100CF -:1018200022D01C4F0E90786C0D90F86B0C90786B5A -:101830000B90F86A0A90786A0990F86908907869BC -:101840000790F868069078680590386C0490B86B3B -:101850000390386B0290B86A0190386A0090BB69B7 -:101860003A69B9683868A04700202864002013B09E -:10187000BDE8F08FFC7400205C750020BC75002072 -:101880001C7600207C760020DC7600203C7700204F -:101890009C770020FC790020703300205FF0FF0C63 -:1018A0001CEAD05114BF614506E0C110400721F089 -:1018B000E04101F16051704779B900F00041000248 -:1018C0000AD0B0FA80FC00FA0CF001F16051A1EBF3 -:1018D0000C5101EBD0214005704741020CBF40F490 -:1018E000E0016FF000010020704750F8041B61B167 -:1018F00050F8042BD30744BFA9F101039A18002321 -:1019000042F8043B091FFAD1EFE77047B0B581EA0E -:10191000030C0CF0004C40F2FF7515EA11541DBF8A -:1019200015EA1357AC42AF4239E0E41923EA4553B4 -:1019300043F48013C90241F0004141EA505EC702FE -:101940001100A7FB020200284FF00000EEFB01206F -:101950004FF00001E3FB072118BF42F001024018DD -:1019600000214941E3FB0E01A4F580640F0302D27C -:1019700052004041494154F101046CDD470872F1C5 -:10198000004250F1000051EB0451A1F580115CBF01 -:1019900041EA0C01B0BD4CEA05510020B0BD05EA9A -:1019A0001357AC4214BFAF4241E050EA410E1CBF96 -:1019B00052EA430E02E061460020B0BD24423C449E -:1019C0001BD15FEA070EF6D0090302BF01460020D3 -:1019D000AEF1140EB1FA81F7AEEB070401FA07FE7F -:1019E0000C37C7F1200100FA07F7C8404EEA000E95 -:1019F00023EA455343F48013A2E733F00043B3FADC -:101A000083F704BFB2FA82FE77440B3FE41BB7F1C1 -:101A1000200E2FBF02FA0EF3BB40C7F1200E22FAB0 -:101A20000EFE38BF43EA0E03BA40641C82E750EA58 -:101A3000410E14BF52EA430E6FF000014FF400173D -:101A400017EB430F8ABF194617EB410FB5E74CEA76 -:101A500005510020B0BDD4F10104B4F120070FDA24 -:101A6000C4F12007520828BF42F0010210FA07F51E -:101A700001FA07F7E1BF2A43E0403843E1400FE0B5 -:101A8000352C98DCC7F1200452EA400220FA07F214 -:101A900018BF42F0010231FA07F0A1400A430021C9 -:101AA00072F1004250F1000051EB0C01B0BD8268B0 -:101AB000521C8260426832B10268531C036011708C -:101AC0004168491E41607047F446400D40EAC1201C -:101AD000490006D200F014F8004248BF6FF0004001 -:101AE000604700F00DF84FF0004188428CBF084677 -:101AF00040426047400D40EAC120490080F00D801F -:101B000040F00040490DA1F58061491C05D4D1F198 -:101B10001F0154BFC840C01770474FF00000704706 -:101B2000002207F04DBD0268531C0360117070471E -:101B3000010040F10980F446404200F005F851F000 -:101B400000416047010000BF09D0B0FA80F1884031 -:101B5000C91CC1F58461090501EBD021400570471E -:101B600070B44FF0004591EA030C44BF6B4000F0A5 -:101B700075B800BF841A71EB030603D2001BB14194 -:101B8000121973414FF4001C1CEB410F34BF7CEB66 -:101B9000430443E00C0DA4EB1356352E50DC45EA0C -:101BA000C323DB0A45EAC121C912B6F120050DDDC8 -:101BB00063FA05F6EB4086EA0305124218BF45F0CA -:101BC0000105C01851F100010CD213E062FA06F5CC -:101BD000F2405540F3415A40B340F3405A40801818 -:101BE000594107D349085FEA30005FEA350528BF4D -:101BF00045F0010501F58011420875F1004250F1F0 -:101C0000000041EB045170BC4FF4001C1CEB410F71 -:101C100038BF70470020090D090570471CEB410FC4 -:101C200010D252EA43060BD0BCEB410F05D80C0D85 -:101C3000AB43661E342EB5DD02E0AB43801859413C -:101C400070BC704770BC704770B44FF0004591EAAB -:101C5000030F44BF6B40FFF78DBF00BF841A71EBC9 -:101C6000030604D26E40001BB141121973414FF4B8 -:101C7000001C1CEB410F34BF7CEB430684E00C0DD1 -:101C8000A4EB1356362E7DDC012E43DC45EAC3233C -:101C900043EA525312BFD20292025B08240545EA7E -:101CA000C12141EA5051D2EBC020994125D407D13E -:101CB000B0FA80F610FA06F164D00020203608E071 -:101CC000B1FA81F6B140C6F1200220FA02F21143C6 -:101CD000B0404FEAF474B4EB465434F001064FEAD6 -:101CE00074040AD8D6F50016760D04F00044F040CE -:101CF00061FA06F25040F1404840C00A40EA4150C3 -:101D000021F0004128BF5FEA500550F1000044EB8C -:101D1000D12137E045EAC323DB0A45EAC121C90ADC -:101D2000B6F120050EDD42EA0242120CC5F1200692 -:101D300003FA06F6EB4042EA06056D42984161F16E -:101D400000010DE062FA06F5F240554063FA06FC28 -:101D500082EA0C02F3405A406D42904161EB03016C -:101D600011F4801F05D1641E620502D06D00404150 -:101D7000494121F48011430875F1004350F10000FE -:101D800041EB045170BC70471CEB410F15D223F09E -:101D9000004352EA43060BD04FEA4C0CBCEB410F18 -:101DA00004D80C0D661E342EB7DDEBE7801A99417E -:101DB00050EA410608BF0021E4E708BF1CEB430FCF -:101DC00028BF6FF00001DDE7F0B540F2FF7581EA52 -:101DD000030C0CF0004C15EA11541DBF15EA135703 -:101DE000AC42AF42E5E0BC41C1F31301C3F31303BE -:101DF000801A994143F4801304D2641E4000494183 -:101E000080185941C90241EA5051B1FBF3F603FB76 -:101E10001611A2FB0675D7EBC020A94102D2761E8F -:101E200080185941C90241EA5051B1FBF3FE03FB4E -:101E30001E11A2FB0E75D7EBC020A94103D2AEF153 -:101E4000010E80185941890241EA9051760546EA0F -:101E50008E2EB1FBF3F603FB1611A2FB0675D7EB32 -:101E60008020A94102D2761E80185941C90241EA58 -:101E700050514EEA060EB1FBF3F603FB1611A2FB1E -:101E80000675D7EBC020A94102D2761E80185941B1 -:101E9000C90241EA5051B1FBF3F703FB1711A2FB52 -:101EA0000735D3EBC020A94167F100070CBF004202 -:101EB00047F0010766F3D5274FEA1E31B80814F53D -:101EC000806412DDBD0775F1004250EB0E5051EBFE -:101ED000045111F5801F5CBF41EA0C01F0BD4CF0CC -:101EE0007F6141F0E0410020F0BDBD076D0840EA90 -:101EF0000E5041F48011D4F10104B4F120060ADA45 -:101F0000C4F120060200E04001FA06F3E140184364 -:101F1000B24015430EE0342C13DCC6F1200445EA30 -:101F200040056D0820FA06F2154321FA06F0A1409B -:101F30000D43002175F1004250F1000051EB0C01FE -:101F4000F0BD00205FEA0C01F0BDCFB992185B41F3 -:101F5000B3FA83F704BFB2FA82F6BF190B3FB7F1A9 -:101F600020062FBF02FA06F3BB40C7F1200622FA73 -:101F700006F638BF3343BA401CB1E419641E33E798 -:101F80007F4231F00041B1FA81F404BFB0FA80F62B -:101F9000A4190B3CB4F120062FBF00FA06F1A140B2 -:101FA000C4F1200620FA06F638BF3143A0403C1B9E -:101FB0001AE7AC421ABF05EA1357AF4212E050EAE3 -:101FC00041061CBF52EA4306BFE750EA41073046CC -:101FD00061461CBF41EA0551F0BD52EA430C08BFFF -:101FE000C143F0BD00204FF4001616EB410F98BF1F -:101FF00016EB430F08BF16EB410F24BFC14305E0AA -:1020000016EB430F0CBF61464CEA0551F0BD0000D2 -:102010004FF4001C1CEB410F94BF1CEB430F09E075 -:1020200041EA030C50EA4C0C52EA0C0C03D28B42EE -:1020300008BF8242704714BF994290427047000027 -:102040004FF4001C1CEB410F94BF1CEB430F09E045 -:1020500041EA030C50EA4C0C52EA0C0C03D29942B0 -:1020600008BF9042704714BF8B428242704710B540 -:10207000044602F01DFE204610BD10B50446104671 -:102080000A460146204607F0B5FA204610BD00007A -:102090007CB50121032007F042FBDFF88C4B204682 -:1020A00007F0B4FBDFF8546D304607F0AFFB0120BA -:1020B0008DF8040000208DF8050001208DF8060041 -:1020C00000208DF80700012130460183C046012021 -:1020D000009000A9304607F0F5FB0221304601834D -:1020E000C0460220009000A9304607F0EBFB01201B -:1020F0008DF8040000208DF80500ADF806004FF4BF -:102100008055009500A9304607F0DCFB2946304693 -:102110004183C04601208DF8040000208DF80500A1 -:1021200001208DF8060000208DF80700009500A919 -:10213000204607F0C7FB294620464183C04673BDB1 -:1021400070B586B001214FF4001007F0F3FA0121B9 -:102150004FF4001007F0EEFA0121022007F0DFFA39 -:102160000121022007F0DBFA01214FF4804007F043 -:10217000ECFA01214FF4001007F0FDFA01214FF4B1 -:10218000001007F0F8FA00214FF4001007F0F3FAFE -:1021900000214FF4001007F0EEFADFF8604C042243 -:1021A0000621204607F0DCFB04220721204607F029 -:1021B000D7FB02208DF8040001208DF805008DF872 -:1021C000060000208DF807004020009000A920465E -:1021D00007F078FB8020009000A9204607F072FBF2 -:1021E0004020009000A9204607F06CFB8020009062 -:1021F00000A9204607F066FB0020ADF80C004BF666 -:10220000FF70ADF80E004FF48060ADF812004FF48F -:102210008040ADF814000A20ADF81000DFF83C6CE7 -:102220000296DFF83C5C02A9284607F0DCFB01219E -:10223000284607F03BFC0A20ADF81000029602A9E0 -:10224000284607F0D0FB0121284607F02FFC206824 -:1022500020F440502060206820F440402060206836 -:1022600040F400502060206840F4004020600022CC -:102270000621204607F074FB00220721204607F0C4 -:102280006FFB04220621204607F06AFB0422072187 -:10229000204607F065FBDFF8640C056006B070BDF2 -:1022A0002DE9F04192B001214FF4805007F04DFA32 -:1022B0000121084607F033FA01214FF4800007F0AE -:1022C0002EFADFF8644905221146204607F048FB44 -:1022D00005220721204607F043FB05220621204660 -:1022E00007F03EFB05220421204607F039FB0220BF -:1022F0008DF8040001208DF805000020ADF80600DF -:102300002020009000A9204607F0DCFA80200090F1 -:1023100000A9204607F0D6FA4020009000A92046E8 -:1023200007F0D0FA1020009000A9204607F0CAFA62 -:10233000DFF8CC4B204607F01BFCDFF8C85B002021 -:10234000288068600120288100206881E8600720DB -:10235000288200206880DFF8B06B304607F0EAFC86 -:10236000DFF8A87B384607F0E5FC4FF48060069064 -:1023700000210D9103210E9100210F910A910890E7 -:10238000DFF88C0B039008461090099007904FF4EB -:1023900000300C9008460B904FF0C068CDF80880D4 -:1023A000402005900846049002A9304607F046FDFB -:1023B00000200B90CDF80880059005F114000490E2 -:1023C00002A9384607F03AFD0020688029462046D9 -:1023D00007F0FDFB01220221204607F099FC0122B3 -:1023E0001146204607F094FC0121204607F078FCB6 -:1023F0000021304607F049FD0021384607F045FD31 -:1024000012B0BDE8F08110B588B001214FF08050C6 -:1024100007F090F901214FF4802007F080F90120A6 -:1024200007F09CFD0F2007F049FF0446012007F04C -:1024300073F9002007F070F9002C01D008F0D8FAE9 -:10244000012007F00BF9412007F0ABF90028FAD082 -:102450004FF4807007F04AF9012007F05AF907F0AD -:10246000D0FD3F20069040F2FF100790002005901D -:1024700005A807F07DFD0020029002A907F0E2FD0B -:1024800000208DF8070001208DF804008DF805006C -:102490008DF8060001A9002007F04DFE4FF48000E2 -:1024A00008F018FB4FF48000039000208DF8100016 -:1024B00008208DF8110001208DF8120003A808F003 -:1024C000C7FA03208DF800000D208DF801000020D0 -:1024D0008DF8020001208DF8030000A808F007FB2A -:1024E000032007F09CFE4FF4804007F052FF4FF4AA -:1024F000800008F0EFFA01214FF4804007F00FFF51 -:10250000012008B010BD30B585B00121084607F0A4 -:1025100006F901214FF4804007F017F900208DF8EB -:1025200010008DF8130001200390DFF8E85903A98B -:10253000284607F0C7F94FF40064039403A928461E -:1025400007F0C0F90420039003A9284607F0BAF960 -:102550000021084608F004FB0B21002008F000FBD6 -:102560000221002008F0FCFA00208DF8080001206C -:102570008DF80A0001900C208DF8090001A808F0E0 -:1025800067FA01940C208DF8090001A808F060FAA0 -:10259000204608F09FFA042001900C208DF80900D5 -:1025A00001A808F055FA042008F094FA28208DF8C4 -:1025B00000000F208DF8010000208DF8020001209E -:1025C0008DF8030000A808F092FA05B030BD30B5D0 -:1025D0008DB0044601214FF4807007F0B6F800A8D2 -:1025E00007F0AAF90A20009003208DF804000020CB -:1025F0008DF8070000A9DFF8300607F063F908F04E -:10260000C3FA02A808F005FB4FF48030039002A83B -:1026100008F0F1FA06A808F0E4FADFF8FC5806A979 -:10262000284608F0BEFA072301222146284608F072 -:1026300001FB0121284608F042FB0121284608F051 -:10264000EEFA0DB030BD38B5DFF8CC48204608F0C2 -:1026500031FB4FF47A750221204608F047FB002831 -:1026600003D12846451E0128F5DA2046BDE8324050 -:1026700008F030BB80B50021DFF89C0808F0CFFAE5 -:1026800000214FF48070BDE8044007F05EB8000000 -:1026900038B5040039D0012007F060FC002007F0B5 -:1026A000D8FD4FF40055042007F054FE012804D152 -:1026B0002846451E80B20028F5D100EE104AB8EE3B -:1026C000400ADFED8A0A80EE800AF0EE000A20EE72 -:1026D000200ADFED870A80EE800ABDEEC00A10EE08 -:1026E000100A401E80B207F0AAFD4FF4804007F0A8 -:1026F00050FE4FF4800008F0EDF9012007F0A9FD2D -:10270000DFF818080121416031BD012007F026FCE7 -:102710000020BDE8324007F09CBD000030B4014607 -:1027200001200023DFF8F8271C469460946814F019 -:102730000C0FFBD10C460B2C55D8DFE804F02054CD -:10274000545406192031383F464D946844F08004B3 -:102750009460DFF8D0474FF4C0652560146824F01A -:1027600080741460DFF8C047DFF8C05725603BE095 -:102770000346DFF8B447DFF8B857256034E09468C3 -:102780009460DFF8A0474FF4C0652560146824F01A -:1027900080741460DFF89047DFF89857256023E0D5 -:1027A0000223DFF88447DFF8905725601CE00323FD -:1027B000DFF87447DFF88457256015E00423DFF85D -:1027C0006847DFF87C5725600EE00523DFF858479F -:1027D000DFF87057256007E00623DFF84C47DFF885 -:1027E0006857256000E01846002B4AD003EBC3036E -:1027F0000FF668041B1994689460146824F08074C0 -:102800001460146824F0806414609C781D8844EA85 -:102810008514DD786D086D1E44EA05441D7944EA8F -:1028200005645460DC881D7A2D0745EA8414DFF8BE -:102830001C572C60146844F0807414601468A40160 -:10284000FCD55B7943F4C063DFF8D8462360936816 -:10285000936093689360052904D1916841F09001D9 -:10286000916005E00A2903D1916841F4805191609B -:10287000916841F002019160916801F00C01082912 -:10288000FAD1DFF8A4160968DFF8C426914207D20E -:10289000DFF8C0160A6822F4404242F480420A601F -:1028A00030BC70473AE710B5DFF850460121206888 -:1028B00007F035F9206807F067F8BDE81040FFF72A -:1028C0003FBC30B40022838A008BDFF83046656855 -:1028D00043EA00400840000255EA102060600840CA -:1028E000884200D10122104630BC704700007A4473 -:1028F000000000472DE9F84F04460D4616464FF4F8 -:1029000020491F78DFF8F4854FF40031D8F8000033 -:1029100007F010F9002808D04846A0F10109002866 -:10292000F2D1FFF7C0FF00208CE0D8F8000001884A -:102930004FF6FF52114001800121D8F8000007F046 -:10294000C1F84FF4805AD1460020C8F80400D8F8E6 -:1029500000B0DFF804165846FFF7B3FF002805D192 -:102960004846A0F101090028F1D163E0D1460022D8 -:102970002146584607F0BEF80020C8F80400D8F8F1 -:102980000040DFF8D8152046FFF79BFF002805D14F -:102990004846A0F101090028F1D14BE03146C9B207 -:1029A00020460182C046D1460020C8F80400D8F86D -:1029B0000040DFF8AC152046FFF783FF002805D163 -:1029C0004846A0F101090028F1D133E0012F15D1CB -:1029D000297820460182C046D1460020C8F804006C -:1029E000DFF88015D8F80000FFF76BFF002823D12F -:1029F0004846A0F101090028F2D11BE03846471EE5 -:102A0000C0B2002818D015F8011BD8F800000182C8 -:102A1000C046D1460020C8F80400DFF84815D8F8B1 -:102A20000000FFF74EFF0028E8D14846A0F1010959 -:102A30000028F2D1002005E00121D8F8000007F0BD -:102A40004DF80120BDE8F28F2DE9F54F81B00D461C -:102A50001E464FF420483778DFF8A0444FF4003189 -:102A6000206807F067F8002808D04046A0F1010868 -:102A70000028F3D1FFF717FF0020D3E0206801887A -:102A80004FF6FF52114001800121206807F01AF82B -:102A90004FF48059C84600206060DFF8BCA4D4F829 -:102AA00000B051465846FFF70CFF002805D14046BC -:102AB000A0F101080028F2D191E000229DF8041055 -:102AC000584607F017F8C84600206060D4F800B0F8 -:102AD000DFF888145846FFF7F4FE002805D1404679 -:102AE000A0F101080028F1D179E0BDF80810C9B2C1 -:102AF00058460182C046C846DFF86C14206807F0CB -:102B000019F8002805D14046A0F101080028F3D1AA -:102B100065E00121206806F0D5FFC846002060600E -:102B2000D4F800B051465846FFF7CBFE002805D137 -:102B30004046A0F101080028F2D150E001229DF8A2 -:102B40000410584606F0D6FF022FC84639D2DFF8E7 -:102B50001C14206806F0EEFF002805D14046A0F1C5 -:102B600001080028F3D13AE00021206806F0CBFFED -:102B70002068018B012106F0B1FFC846DFF8F01391 -:102B8000206806F0D7FF002805D14046A0F10108D3 -:102B90000028F3D123E02068008AC0B22870307882 -:102BA000401E3070C84620680188890505D540461A -:102BB000A0F101080028F6D111E0012106F0A3FFE1 -:102BC0002BE000206060DFF8AC132068FFF779FE8F -:102BD000002806D14046A0F101080028F3D10020CA -:102BE00020E0012616E0012F0CD1012E0AD100268B -:102BF0003146206806F087FF2068818A018B012119 -:102C000006F06CFF2068818A490603D5008A05F822 -:102C1000010B7F1EFFB2002FE5D10121206806F0D5 -:102C200072FF0120BDE8FE8F000002402DE9F04751 -:102C300007460D4616464FF42048B04C4FF400317D -:102C4000206806F077FF002808D04046A0F1010870 -:102C50000028F3D1FFF727FE002089E020680188D3 -:102C60004FF6FF52114001800121206806F02AFF33 -:102C70004FF48059C84600206060D4F800A0B649DF -:102C80005046FFF71EFE002805D14046A0F101087E -:102C90000028F2D149E001223946504606F02AFFC9 -:102CA000022EC84634D2B149206806F043FF0028FE -:102CB00005D14046A0F101080028F4D135E00021FB -:102CC000206806F020FF2068018B012106F006FF36 -:102CD000C846A749206806F02DFF002805D14046C8 -:102CE000A0F101080028F4D11FE02068008AC0B2DA -:102CF0002870C84620680188890505D54046A0F19E -:102D000001080028F6D110E0012106F0FCFE2AE0BF -:102D10000020606097492068FFF7D3FD002806D1A6 -:102D20004046A0F101080028F4D1002020E001274E -:102D300016E0012E0CD1012F0AD100273946206858 -:102D400006F0E1FE2068818A018B012106F0C6FEB3 -:102D50002068818A490603D5008A05F8010B761E92 -:102D6000F6B2002EE5D10121206806F0CCFE01204C -:102D7000BDE8F0878048016808292FD168490A68B2 -:102D800042F080720A604268B2F1806F03D10A6833 -:102D900042F080620A600A689201FCD58A6842F0BB -:102DA00002028A608A6802F00C02082AFAD142689C -:102DB000B2F1806F02D10A681201FCD55A49096844 -:102DC000634A914206D263490A6822F4404242F4BF -:102DD00080420A6000210160416070474168B1F1A2 -:102DE000806F09D14E490A6842F080620A600A6821 -:102DF0001201FCD500214160704700000004024030 -:102E00005E48016841F080510160524801688908BC -:102E1000890041F00101016040480FF209010160A1 -:102E2000704700003D48416800290AD000214160F8 -:102E300053490A6842F004020A600FF22901016056 -:102E400010E030BF70474E48016821F00401016076 -:102E500030BF016841F0040101607047801A06002C -:102E60000054004010B5FDF7DEF8807A012803D148 -:102E7000012007F076F802E0002007F072F8404CDD -:102E800080211F4806F04EFF002817D172B6244853 -:102E90003949826802F00C020A60006800F0806024 -:102EA0004860206840F00400206030BF62B62068AF -:102EB00020F004002060BDE810405BE7206820F0AF -:102EC0000400206030BF206840F00400206010BD86 -:102ED0001248006800470F49012806D00CD3032888 -:102EE00007D004D3042806D006E0264904E026498A -:102EF00002E0264900E0264908467047E0380020F5 -:102F000000300140947A002088640240106402403E -:102F10000C3001400000024000200140B07B002046 -:102F200000380240003C0240B838002000127A000D -:102F3000809698000024F40000366E010048E801F5 -:102F4000005A620280F0FA0200BD01058438024096 -:102F50000187930300700040010003008200070016 -:102F60008000070084000700040000100200001029 -:102F70004000001002000300B87B002040380240EF -:102F800010ED00E00004024000080240000C024086 -:102F90000010024010B50C46FFF79DFF214689B294 -:102FA000BDE8104006F0D8BC10B50C46FFF793FF03 -:102FB000214689B2BDE8104006F0D0BCE0B5002340 -:102FC0008DF8083001238DF80A30002A03D10C2235 -:102FD0008DF8092002E008228DF8092004283CD849 -:102FE000DFE800F0030D192222004FF40060019089 -:102FF00028208DF800000F208DF801001CE01846F5 -:10300000019010208DF8090006208DF800000E2098 -:103010008DF8010010E00220019007208DF80000DB -:103020000F208DF8010007E00420019008208DF8A2 -:1030300000000F208DF8010000208DF8020001290A -:1030400003D118468DF8030001E08DF8030001A8B4 -:1030500007F0FEFC00A807F04AFD07BD20011004A0 -:103060000F03020103F00010060F01020103C0006C -:1030700010080F01020103C00010060F0102010336 -:10308000F00010060F01020103C80010040F020235 -:103090000103A80010020F030201030008B584B069 -:1030A0000023029311B90093019302E00090481E9F -:1030B000019004AB00A907487844183007F01EFEC1 -:1030C000009909B100220A70002858BF029805B083 -:1030D00000BD00BFDBE9FFFF00F10103810704D061 -:1030E00010F8011B89B18107FAD10268B2F10131F0 -:1030F000914311F0803F04BF50F8042FF6E710F819 -:10310000011B11B110F8011BFBE7C01A704700004A -:1031100030488168002904BF08B008E0EFF3098255 -:10312000A2F12802036882E8F84F83685A6000F031 -:103130009CF8816859B14A6892E8F84F036002F13F -:10314000280282F3098813F47F4F36D07047224853 -:1031500022490968401A80F308884FF08071C161E4 -:103160001F4981617FF0060E704701BC2046DFF8E1 -:1031700074E000BDFEE71C48006818490968401A61 -:10318000203820F0070080F308884FF0000181F319 -:10319000118862B600F00DF8FEE74FF0000181F3F0 -:1031A00011881249124A0A604FF0800181F3118898 -:1031B00070470E490E4A0A6070474FF0000181F3D4 -:1031C0001188704700BF4FF0800181F3118870476C -:1031D00000BF000024380020E09B0020287C03086A -:1031E0006D710308753101080000000804ED00E06E -:1031F0000000001030B504460020A071206A81B0A4 -:1032000000F57A606062E16908001CBF20468847CB -:10321000FFF7D3FFE5681FE0FFF7D5FF206920B176 -:10322000687C2169497C88421DD3287C400710D5E1 -:10323000E868216A401A012806DA284600F082F878 -:10324000FFF7C1FF287C70B1E868616A411A48BF86 -:103250006062FFF7B2FF2D68002DDDD101B0BDE83F -:103260003040FFF7B0BF01B030BD70B5044600205C -:10327000607001202070206938B303E02868206165 -:10328000FFF79BFFFFF79FFF2569002D1CBF2E7CDA -:10329000002E1CD070070ED5E868216A411A01295A -:1032A00005DA284600F04EF8287C20B90DE0616A66 -:1032B000411A48BF606206F0FB001028DED1A86802 -:1032C00080684068007C0028D8D1FFF77CFFA07997 -:1032D00068B900206071206990B12069007C0028E5 -:1032E00020690BD0806880684068A0600CE02046B0 -:1032F000FFF780FFA0790028F9D1EAE7A06003E09A -:10330000A0602070FFF759FF204670BD10B5444CF7 -:103310002078401E2070C0B298B9606888B1FFF76D -:1033200052FF606830B1012020702046FFF735FF62 -:10333000002020706078002804BFBDE81040FFF72F -:103340003CBF10BD10B5816849B1354A126AC260F0 -:103350000A68496802B151600A6000218160017CFD -:1033600011F0030101741BD12D4C216991B9206129 -:10337000207838B9012020702046FFF70EFF00208A -:10338000207001E001206071607848B9BDE810400C -:10339000FFF713BF4A7C437C9A42E8D38142E7D0CF -:1033A00010BD30B51E4D04462978607C81B0491CA3 -:1033B000297005F20C0100E011460A6812B1537C35 -:1033C0009842F9DB22600C60207C40B9FFF7FBFEDD -:1033D0002046FFF7B7FF687808B9FFF7EEFE01B0A7 -:1033E000BDE8304092E730B50D4C81B02578681CBF -:1033F00020702046FFF7D1FE2570607820B901B01B -:10340000BDE83040FFF7D9BE01B030BD00B581B096 -:1034100008F0DCFA02480121017001B000BD000093 -:1034200024380020DFF8400D007870472DE9F04186 -:103430008CB0FDF789F80446DFF8305D2E683FE078 -:1034400096F9080007283AD00B2838DA06F1080761 -:10345000B86C002802D5E16E0818B8644FF0FF314F -:103460003046FA6D926990478046B8F1010F04D159 -:1034700097F84C00B96D09698847B8F1020F0BD174 -:10348000797E38697A688018BA6D52699047002849 -:1034900002D0304608F0C2FB00213046FA6D926936 -:1034A0009047022801D10120B87501213046FA6DFC -:1034B00092699047022802D1304608F05DFC3668D8 -:1034C000AE42BDD1206E00280BD00A208DF8080036 -:1034D00002208DF80000E06EADF82A0000A801F08F -:1034E000E1FA01200CB0BDE8F08130B585B00446AA -:1034F0000D46CA208DF800002888ADF80100022092 -:10350000ADF80300BDF80100001D01F00DFCCDF881 -:10351000090002220DF10301FEF7A9FD022229464E -:10352000DDF80900801CFEF7A2FD2A882146DDF89F -:103530000900001DFEF79BFD0020288000A9DFF890 -:10354000300C08F0E9FE05B030BDC0F580603228CF -:1035500001DA012070470020704780B5FCF763FD59 -:10356000407B002804D008F0C9FADFF8081C086086 -:1035700001BD80B508F0C2FADFF8FC1B086001BD90 -:1035800018B400F10C030422DFF8EC1B5C7DDB684F -:10359000C0681818201818BCFEF769BD30B414882C -:1035A000651C1580052565541488651C15806354B9 -:1035B00013885C1C1480007A585430BC7047F8B5EE -:1035C0000E4614461D4629884A1C2A8037220A5571 -:1035D00029884A1C2A80027A0A5500F108077A7E57 -:1035E0007868311828880019FEF741FD2888797E0F -:1035F00040182880787E796871184058DFF8741B6D -:103600000968401A0090042200A928880019FEF7D2 -:103610002EFD2888001D288080B2FFF796FF002825 -:1036200003D029462046FFF760FFF1BD2DE9F041A8 -:1036300004460D4616461F46DDF8188008E043464E -:103640003A4629462046FFF7BAFF94F822002D1883 -:10365000B542F4DBBDE8F081F8B5044615461E46D8 -:10366000069F00972269FFF7E1FF2069854206DA8D -:10367000009733462A4600212046FFF7D7FFF1BDC9 -:1036800000F110018A688B7CD2188A60006982423E -:1036900001D10020886000208873704770B582B027 -:1036A00000F1140674684569002D07D500920B4699 -:1036B0002246B17B6118FFF7CFFF73BDAC42009289 -:1036C0000B462246294602DAFFF7C6FF73BDFFF715 -:1036D000ADFF73BD70B504460D461646FFF7DEFF1D -:1036E0000123324629462046FFF758FFA069606152 -:1036F00070BD2DE9F84304460D461646FCF724FF3D -:103700008046FCF790FC81462046FFF739FF04F124 -:103710000807386C012849DB99F80A00002821D0F5 -:10372000B87D002879D000207864B87E3A69F968BD -:103730008B1A834205D0002910D1BB689B1A8342A3 -:103740000CD13B7E002B06D000962B4682182046DB -:10375000FFF782FF02E04FF0FF30F8602046BDE83F -:10376000F2438DE7786CD8F86C10401A7864012821 -:1037700015DA386C7864324629462046FFF78EFF0A -:10378000B87D002808D033462A4639692046FFF71D -:1037900016FF2046FFF774FF3869F8603DE0B87DFA -:1037A00000283AD02046BDE8F24369E7B87D0028FA -:1037B00033D094F9080099F80A1000291BD0092881 -:1037C00001D0072805D133462A4639692046FFF73C -:1037D000F6FE94F9080008281AD197F92C00012860 -:1037E00016DB386B8068B0F57A7F0BD1B7F94E00E5 -:1037F000012807DA11E0082804D1DFF880094068C1 -:1038000000280AD133462A4639692046FFF7D7FEF9 -:103810002046FFF735FF3869F860BDE8F183F8B559 -:1038200004460D46DFF84469376805E02A4621461C -:103830003846FFF75EFF3F68B742F7D1F1BDF8B5F4 -:1038400004460D46DFF83809C6690FF23400FCF76C -:1038500064FC06F10C07797DF868F26880187A6DCF -:1038600052699047002809D00120B874707A002866 -:1038700004D02A4621463046FFF73BFF0120F2BD27 -:103880003D3E5055500000000288D21C02800A8044 -:10389000704780B50B889B1AADF80030BDF800303A -:1038A000002B09D01018012100F8031C022200A9E6 -:1038B000801EFEF7DCFB01BD0888C01E088001BD2C -:1038C0002DE9F041F0B005460E46FCF73DFE0746F7 -:1038D000FCF7A9FB804610A84FF4C071FEF720F951 -:1038E00000208DF8020006A82821FEF719F901A88A -:1038F0001421FEF715F90020ADF800000446386EDB -:10390000002800F0A08198F9090009F0AEF800281D -:1039100000F0998100A93046FFF7B6FFA04616E0F7 -:10392000012000FA08F0396E08420ED008EB88003A -:10393000DFF8501801EBC00292F90900012804D108 -:103940000DF1020110A8126A904708F10108B8F1C0 -:103950001D0FE5DB274619E03088421C328089784C -:1039600041553088FFF7F1FD00280DD0BDF800204B -:1039700031462846FFF78DFF31462846FFF7B5FD53 -:1039800000A93046FFF780FF7F1C7FB29DF8020040 -:10399000874280F250813188481C308007EB470015 -:1039A000000110AA825C4A5531884A1C328010AA54 -:1039B000801842784A553288511C3180411C4B781E -:1039C00053554A78032A06D0092A00F021810C2A8F -:1039D00000F0FB80C0E74278032A04D13288531CF0 -:1039E00033808B7853553288531C3380CB785355B2 -:1039F000631CCA7812064AD401AA91F804C004F8DC -:103A000002C0DBB24C799C545B1CDBB200249C549A -:103A10005B1CDBB28C799C545B1CC489DBB24FEA23 -:103A2000142C03F802C05B1CDBB29C545B1C00F23C -:103A30000E04DBB294F802C003F802C05B1CDBB2D8 -:103A4000E4789C545B1CDBB2847C9C545B1CDBB232 -:103A5000C07C9854581CC0B2CB798354401CC0B26F -:103A60000B7A8354401CC0B24B7A8354401CC0B2C2 -:103A7000897A8154441CE4B2224601A93088401955 -:103A8000FEF7F5FA308850FA84F0308069E7D1F813 -:103A900004C006AA4FEA1C4E04F802E0DBB24FEA6B -:103AA0001C249C545B1CDBB203F802C05B1C8C68BA -:103AB000DBB24FEA144C03F802C05B1CDBB24FEAE6 -:103AC000142C03F802C05B1CDBB29C545B1CC9685D -:103AD000DBB20C0C9C545B1CDBB20C0A9C545B1CD0 -:103AE000DBB29954591CD0F81130C9B21C0C8C545B -:103AF000491CC9B21C0A8C54491CC9B28B54491CBC -:103B0000D0F82730C9B21C0C8C54491CC9B21C0A0D -:103B10008C54491CC9B28B544B1C00F22701DBB2F8 -:103B20000C799C545B1CDBB24C799C545B1CCC889C -:103B3000DBB24FEA142C03F802C05B1CDBB29C54CE -:103B40005B1CDBB2097A9954591CD0F81530C9B204 -:103B50001C0C8C54491CC9B21C0A8C54491CC9B297 -:103B60008B54491CD0F81930C9B21C0C8C54491C18 -:103B7000C9B21C0A8C54491CC9B28B54491CD0F8D8 -:103B80001D30C9B21C0C8C54491CC9B21C0A8C547F -:103B9000491CC9B28B54491CD0F82100C9B2030C8E -:103BA0008B54491CC9B2030A8B54491CC9B28854AE -:103BB0004C1CE4B2224606A930884019FEF757FA99 -:103BC000308850FA84F03080CBE600F20301B1F97E -:103BD0000300C0F3072242EA0020A1F80300B1F974 -:103BE0000700C0F3072242EA0020A1F80700B1F95C -:103BF0000500C0F3072242EA0020A1F805000922CF -:103C000030884019FEF733FA308809303080A8E652 -:103C10004278032A09D10222C11C30884019FEF7DC -:103C200026FA3088801C30809BE63088421C328027 -:103C30008978415595E6BDF8002031462846FFF7C2 -:103C400028FE08F03AFF70B0BDE8F0812DE9F041A0 -:103C500005460E46FCF7E7F90746DFF8444C2078A6 -:103C6000401C2070FFF7AFFA6078401C607097F836 -:103C70001880B8F1010F26DB3088404480B2FFF78E -:103C800064FC002803D031462846FFF72EFC30881C -:103C9000411C3180032141553088411C318000F89E -:103CA0000580424607F1190130884019FEF7DFF917 -:103CB000308840443080FF22002107F11900FEF7D0 -:103CC000DCF9002038766078401E6070C0B20028B1 -:103CD00001D1FFF772FABDE8F041FFF717BB38B525 -:103CE00004460D46FCF79FF9817A002909D1417BF2 -:103CF000002906D129884A1C2A8006220A5501215A -:103D0000417331BD38B504460D46288800280CD0D3 -:103D10002046FFF79BFF29462046FFF7E0FF294694 -:103D20002046BDE83440FFF7E0BB31BD14B585B097 -:103D3000049101A90022134614461CC10A21ADF8C2 -:103D4000001004218DF804108DF805000A4605A91D -:103D50000DF10600FEF78BF9042204A90DF10A000B -:103D6000FEF785F900A901A8FFF7BFFB06B010BD5B -:103D7000F8B50446FCF757F9DFF80454296A496C92 -:103D80008A6842F210739A425AD10969002957D1C0 -:103D9000807A002854D0DFF8E46330880C30B0F526 -:103DA000347F01DD002030800120FEF710FCFEF79B -:103DB0004AFCADF802000320FEF709FCFEF743FCC5 -:103DC000ADF80000FEF756FC378802220DF1020123 -:103DD000B8190830FEF74BF9BF1C3780022200A942 -:103DE000BFB2B8190830FEF742F9BF1C3780042271 -:103DF0002146BFB2B8190830FEF739F9381D3080B6 -:103E0000022280B2801900F1080106206B691B6E46 -:103E10001B6A98473088801C3080022280B280194B -:103E200000F1080106206B681B6E1B6A98473088FA -:103E3000801C308070680C30B0F5347F00D2706028 -:103E4000F1BD2DE9F041CD4C6068002828D02188D3 -:103E500088421FD000F068FF054666682788A6EBF9 -:103E600007081FFA88F84246381900F10801284669 -:103E7000FEF7FDF83A4604F1080108EB0500FEF7ED -:103E8000F6F83246294604F10800FEF7F0F8284615 -:103E900000F062FF626804F108010520FFF746FFA9 -:103EA000002060602080BDE8F0812DE9F04385B0FE -:103EB00006460F469046FCF7B6F881460025D6F830 -:103EC0000900041D3078014601297BD00F2933D029 -:103ED000802900F0A580812900F0AD80822900F0C2 -:103EE000AA80852900F0A780862900F0A48088296F -:103EF00000F0A1808A2900F0A6808B2900F0BF8005 -:103F00008C2900F0CB808D2900F0D780DD2900F0CE -:103F1000FF80DF2900F01581F0292BD0F42935D05E -:103F2000F62944D0F82962D0F92950D0FC291CD0B8 -:103F3000FF2900F0C7807AE099F81600207099F800 -:103F4000170000280CD14FF0FF30009003462A469E -:103F500042F21071082008F032F8012089F81700A9 -:103F6000202089F81901012062E099F819012070D8 -:103F700001205DE0DFF82C090168090C217001685F -:103F8000090A61700068A070012051E0D9F81000A2 -:103F9000000E2070D9F81000000C6070D9F81000E5 -:103FA000000AA070D9F81000E070012040E0032260 -:103FB00021462846DFF8F0389B681B6E1B6A98473D -:103FC000012035E0204608F001FF012030E0B6F87E -:103FD0000120B6F80300C010C0EB0011D6F80500B0 -:103FE00000EB81112046FEF742F8012020E0284630 -:103FF000ADF800000120D6F80510C9B2012900D1A2 -:104000000320FEF7E4FAFEF71EFBADF80000FEF712 -:1040100031FB022200A92046FEF729F8012007E023 -:10402000D6F8050020702146284607F087FF28466D -:1040300005B0BDE8F08329462170214600F07F00DD -:1040400007F07CFFF3E701202070DFF85C0846688A -:104050002F46307F002801D12846E9E7707A0028F2 -:1040600003D1306E4068804707462046316EC969EB -:104070008847002FDBD0306E80688047D7E701206B -:10408000B6F80310C1F3C101091D884040F00200D9 -:1040900020702146012007F051FFC8E799F8000081 -:1040A000207099F80300607099F80500A07099F8E5 -:1040B0000600E07001202071BAE7204608F09AFE61 -:1040C0000546B4E703A9284606F00BF802A92846DE -:1040D00006F081F806F02AF80090DFF8D027A2FB5E -:1040E0000067760A46EAC756901B0090042203A98F -:1040F0002046FDF7BCFF042202A9201DFDF7B7FFF3 -:10410000042200A904F10800FDF7B1FF01208FE7A8 -:104110007079DFF8941751F82060707A00280CD07D -:10412000424639463046FFF7D5FADFF884170820B3 -:10413000FCF7ACFE0120207001E028462070012031 -:1041400076E77079DFF8601751F82060306996F8EB -:10415000221090FBF1F0401E0190042201A920469C -:10416000FDF785FF012063E7FC7B0020BC070020F2 -:1041700058660020E07B0020E47B0020706A00206D -:104180000000002018D00020F0B599B00646FBF7DB -:104190004AFF0546FCF7D8F9D6F809100C1D31780E -:1041A0000A46A12A00F0C081A22A00F0DE81A42ADA -:1041B00000F0E981B12A00F06F82B22A00F0F182AA -:1041C000B82A00F0FF81C12A00F01282CD2A00F047 -:1041D000E280CE2A00F0F880D12A3CD0D22A50D0FA -:1041E000D32A57D0D42A74D0D62A00F09980D72A5F -:1041F00000F09680D82A00F09D80D92A00F09A809D -:10420000DA2A00F0A180DB2A00F06181DC2A00F0CC -:104210006581E12A00F06981E22A00F07881F12AC3 -:1042200000F0A680F22A00F0E880F32A00F02D8149 -:10423000F52A00F00381F72A00F01681FA2A00F02F -:10424000C582FB2A00F0C782FD2A00F00281FE2A07 -:1042500000F0E98216E100212846FCF7DBF895F82A -:104260001A01400709D50FF25460FBF756FF95F885 -:104270001A0100F0FB0085F81A01FFF7E2FD0120AA -:1042800001E101212846FCF7C5F8012008F094FE61 -:104290000120F8E005F109000021417005F110044A -:1042A000E079002813D142F210754FF0FF300090F2 -:1042B00003460A462946082007F081FE4FF0FF33E7 -:1042C00001222946082007F0EDFE0120E0710120BF -:1042D000D9E005F2090001214170002101718078C7 -:1042E00000281BD105F11004E079002813D042F218 -:1042F00010754FF0FF330A462946082007F0D2FE1A -:104300004FF0FF300090034601222946082007F0B5 -:1043100056FE0020E071012008F04EFE0120B2E0C0 -:10432000D62901D1012000E0002005F109018870A3 -:104330000120A8E0D92901D1012000E0002005F1E9 -:104340000901C87001209EE0DFF85C05056AB5F937 -:10435000560001280ADB0020A5F856004FF0FF3375 -:1043600002464FF47A71082007F09CFE01208AE093 -:1043700000210CE00A180B5D82F87030022905D18B -:104380000A5D80F873200A5D80F87420491C0329B7 -:10439000F0DB012077E0002612E0DFF80C0545682D -:1043A00005EB4605022204EB460105F15800FDF736 -:1043B0005EFEB5F958100FF20C50FBF7AEFE761CFE -:1043C000032EEADB01205EE0002612E0DFF8D804CD -:1043D000056805EB4605022204EB460105F158008D -:1043E000FDF745FEB5F958100FF2E440FBF795FED6 -:1043F000761C032EEADB012045E02969090601D479 -:10440000012040E02178090201F4E0616278891816 -:10441000A0F87610A178090201F4E061E278891829 -:10442000A0F8781004212046DFF87C24D269126EAF -:1044300092699047002825D0012024E003222146DC -:104440000120DFF864349B681B6E1B6A98470120CB -:1044500019E0122221460220DFF84C349B681B6EC3 -:104460001B6A984701200EE0DFF83C048569286E3E -:1044700080688047002805D00122214605202B6E48 -:104480001B6A9847002019B0F0BD217880F87A1097 -:1044900090F87A00002806D04FF480510020FBF7F6 -:1044A000EDFF0120EFE7DFF80004C169497A826A75 -:1044B000527A51188069407A4018C0B2002804D15D -:1044C0004FF480510020FBF7DBFF0120DBE7D6F83B -:1044D00005100FF20840FBF720FED3E7D6F80510D1 -:1044E0000FF20440FBF719FECCE795F81A0121788A -:1044F000084385F81A0195F81A110FF2F830FBF706 -:104500000CFEDFF8B0130220FCF7C0FCBAE795F808 -:104510001A012178884385F81A0195F81A110FF2CB -:10452000E430FBF7FAFDADE794F90050002001906C -:104530004FF0FF30029007460422611C01A8FDF7EE -:1045400096FDB6F80100062806D30422611D02A8D4 -:10455000FDF78DFD94F909700097029B00220199E7 -:10456000284607F02CFD20708CE794F900500422B7 -:10457000611C01A8FDF77BFD00231A46019928461E -:1045800007F090FD7FE794F900504FF0FF30029064 -:1045900007460422611C01A8FDF769FDB6F8010079 -:1045A000062806D30422611D02A8FDF760FD94F9D8 -:1045B00009700097029B00220199284607F0D6FD5A -:1045C00020705FE76178207803280BD18DF80D10FB -:1045D000012905D1A0788DF80E0040B200F041FA13 -:1045E000012050E749B240B208F0FCFAC0B24AE7F5 -:1045F000207801460E3903D0091F032914D941E759 -:104600000E208DF80C0060788DF80D00A1788DF8E3 -:104610000E10E2788DF80F2052B249B240B2FBF78B -:1046200045FF00F015FA2DE78DF80C00122802D195 -:1046300060788DF80D009DF80C00132802D1607889 -:104640008DF80E009DF80C00142802D160788DF8CA -:104650000F009DF80C00152802D160788DF80D0030 -:10466000627821780FF2AC20FBF757FD06208DF819 -:10467000340020780E900DF13D0003A9202200F0B7 -:1046800017FB0B208DF83C000020ADF85E000DA854 -:1046900000F008FAC0B2F6E694F9000007F073FEE5 -:1046A00001285DD120780146032908D0062945D08C -:1046B00009290BD00C2925D00D2931D04BE003223C -:1046C000611C0DF10D00FDF7D2FC49E00722611CD1 -:1046D0000DF10D00FDF7CBFCBDF80D00010A41EA1C -:1046E0000020ADF80D00BDF80F00010A41EA0020DE -:1046F000ADF80F00BDF81100010A41EA0020ADF845 -:1047000011002DE00322611C0DF10D00FDF7AFFC3F -:10471000BDF80E00010A41EA0020ADF80E001FE0CE -:104720000322611C0DF10D00FDF7A1FCBDF80E0088 -:10473000010A41EA0020ADF80E0011E00122611CDF -:104740000DF10D00FDF793FC9DF80D100FF2D41044 -:10475000FBF7E3FC04E08DF80C0060788DF80D00A9 -:104760002078052807D1544801210170687A002873 -:1047700001D1084687E600208DF8340020780E909D -:104780000DF13D0003A9202200F092FA0B208DF8D4 -:104790003C000020ADF85E000DA800F083F9C0B227 -:1047A00071E62078052804D14348002101700120DA -:1047B00069E601208DF8340020780E900B208DF8EA -:1047C0003C000DA800F06EF9C0B25CE6304608F07F -:1047D000DFFC012057E62078052822D8DFE800F02A -:1047E00003210808181F0FF2481006F098F818E087 -:1047F000002000900422611C00A8FDF738FC2078FE -:1048000008F096FC009A01462078FFF78FFA08E03E -:1048100095F81A0140F0040085F81A0101E0FFF74D -:1048200010FB01202FE6042221460CA8FDF71FFCF7 -:104830000422211D0BA8FDF71AFC042204F1080133 -:1048400000A8FDF714FC0CA9002005F0FBFB0BA948 -:10485000002005F070FC05F069FC0446134A0023B3 -:1048600000981946101A63EB0101490241EAD05140 -:10487000400208F049FE0090844205D2011B4FF02F -:10488000004005F028FD09E0A04207D2C4F5007001 -:10489000009909184FF0004005F01DFD0120F2E5D8 -:1048A00024380020E83800200000002000CA9A3B8D -:1048B000F058002028590020FC7B0020524D205049 -:1048C0004400000047797243616C3D25640000009C -:1048D00041434343616C3D256400000044554D5005 -:1048E000534554202564000044554D5046494E2000 -:1048F00025640000414420564C203A203078257829 -:1049000000000000524D20564C203A203078257887 -:104910000000000050443A2053657425642025644B -:104920000000000050443A2053432025640000005A -:1049300041505F5245515545535400005848704707 -:104940002DE9F04182B00C461646012500282DD1F4 -:1049500006EB8600524901EBC007284600FA04F82E -:10496000F86810EA080F08D02346FA6831460FF2BB -:104970009420FBF7D2FB022046E04FF0FF3000907E -:1049800003462A467968204607F019FB00280BD019 -:104990002346FA6831460FF27C20FBF7BEFBF8682D -:1049A00048EA0000F8602EE002202DE001282AD11C -:1049B00006EB86003A4901EBC007284600FA04F8E6 -:1049C000F86810EA080F08D12346FA6831460FF25A -:1049D0005420FBF7A2FB032515E04FF0FF332A46D6 -:1049E0007968204607F05EFB002807D02346FA6866 -:1049F00031460FF24020FBF790FB00E00325F868FA -:104A000020EA0800F8602846BDE8F68108F0F6B80C -:104A100002B58CB00021ADF82A1001910A218DF861 -:104A2000081000218DF809108DF80A1005218DF865 -:104A30000010019004220CA90DF10900FDF717FBED -:104A40000020ADF82A0000A800F02CF80DB000BD41 -:104A500080B509F08BF80FF2EC10BDE80240FBF7CF -:104A60005CBB10B50446C0B209F08BF821460FF2CA -:104A7000E010BDE81040FBF750BB0022C0B21D287B -:104A80000CD240B200EB8003054800EBC300C068C5 -:104A9000012303FA01F1084200D01A46104670477C -:104AA00018D0002030B587B00446012594F90000E5 -:104AB000062800F29280DFE800F00427355067886E -:104AC0008C0004F1090182B06846202200F0F0F861 -:104AD0000CBC94F90810606840B207F07EFD022813 -:104AE0000AD1606800B207F0C0FE002561680FF2CD -:104AF0006C10FBF712FB76E0032874D161680FF2AB -:104B00006410FBF70AFB6EE094F90810606840B28D -:104B100007F00BFE032866D161680FF25010FBF717 -:104B2000FCFA60E0618D00A807F0B8FE9DF9040072 -:104B300002280AD1009800B207F097FE00250099DC -:104B40000FF23010FBF7E9FA4DE003284BD1009942 -:104B50000FF22810FBF7E1FA45E009F095FC022876 -:104B60000AD1606800B207F080FE002561680FF28C -:104B70001410FBF7D2FA36E0032834D161680FF243 -:104B80000C10FBF7CAFA2EE0606805280CD1284605 -:104B900009F051FD02280DD0032824D161680FF2DD -:104BA000FC00FBF7BAFA1EE002281CD109F032FE25 -:104BB0000228F1D1606800B207F057FE0025616855 -:104BC0000FF2D000FBF7A9FA0DE0204607F0C4FE73 -:104BD00009E0204608F072F805E061680FF2C400B1 -:104BE000FBF79BFA0025284607B030BD012070472F -:104BF0000FB4022004B070470120704700207047B6 -:104C000070470000534D4143202564202564202532 -:104C100064000000534D4120256420256420256454 -:104C200000000000534D52432025642025642025B8 -:104C300064000000534D5220256420256420256423 -:104C400000000000504420536574535400000000DD -:104C500050442055543A202564000000414C4F46F2 -:104C600020256400414C434620256400524C4346B5 -:104C700020256400504C4F4620256400504C43468C -:104C80002025640050414F46202564005041434692 -:104C90002025640050504F46202564005050434664 -:104CA000202564004558204C4D454C2025640000CB -:104CB00062B38B0708D0521E11F8013B00F8013B8C -:104CC00000F024808B07F6D1830740F0208000BFDE -:104CD000103A07D330B4B1E83810103AA0E83810D1 -:104CE000F9D230BC530724BFB1E80810A0E808107F -:104CF00044BF51F8043B40F8043BD20724BF31F8CD -:104D0000022B20F8022B44BF0B7803707047083A3F -:104D100007D3B1E80810083A40F8043B40F804CB48 -:104D2000F7D25307E4E7000030B5134D044681B0D5 -:104D3000287820B9281D09F0E9FD01202870281DD8 -:104D400009F0FEFD20460AF057FC0446281D09F034 -:104D500018FE204601B030BD30B5074D044681B085 -:104D6000281D09F0EDFD20460AF092FD281D01B036 -:104D7000BDE8304009F005BEECFC002000B583B072 -:104D80000020ADF8040000208DF8060000208DF80A -:104D90000700012000900DF106037622D0210020AB -:104DA000FBF742FA002801D1002044E076208DF87C -:104DB00004009DF8060050F020008DF80500022345 -:104DC00001AAD0210020FBF7F1F9002801D1002031 -:104DD00031E0012000900DF107034922D02100208D -:104DE000FBF722FA002801D1002024E049208DF8A9 -:104DF00004009DF8070050F001008DF80500022323 -:104E000001AAD0210020FBF7D1F9002801D1002010 -:104E100011E076208DF804009DF806008DF805005D -:104E2000022301AAD0210020FBF7C0F9002801D1FC -:104E3000002000E001200EBD38B50400FBF7F3F8B8 -:104E40000500DFF8B80C0078401CDFF8B01C0870D3 -:104E5000FEF7B9F9DFF8A40C4078401CDFF89C1C81 -:104E60004870210089B22800FBF796FADFF88C0C15 -:104E70004078401EDFF8841C4870C0B2002801D181 -:104E8000FEF79BF9FEF742FA31BD10B582B0002063 -:104E9000ADF80000FBF7C7F804006B208DF80000A8 -:104EA00080208DF80100022300AAD0210020FBF70A -:104EB0007DF9002801D1002094E064212000FBF757 -:104EC0006BFAFFF75BFF002801D100208AE06B201E -:104ED0008DF8000000208DF80100022300AAD021E7 -:104EE0000020FBF763F9002801D100207AE0282197 -:104EF0002000FBF751FA19208DF8000004208DF8EE -:104F00000100022300AAD0210020FBF74FF900285E -:104F100001D1002066E01A208DF8000003208DF8F2 -:104F20000100022300AAD0210020FBF73FF900284E -:104F300001D1002056E01B208DF8000008208DF8DC -:104F40000100022300AAD0210020FBF72FF900283E -:104F500001D1002046E01D208DF8000003208DF8CF -:104F60000100022300AAD0210020FBF71FF900282E -:104F700001D1002036E06A208DF8000000208DF875 -:104F80000100022300AAD0210020FBF70FF900281E -:104F900001D1002026E06C208DF800003F208DF824 -:104FA00001009DF80110DFF8140DFBF7B6F802239D -:104FB00000AAD0210020FBF7F9F8002801D1002039 -:104FC00010E06B208DF8000040208DF801000223D6 -:104FD00000AAD0210020FBF7E9F8002801D1002029 -:104FE00000E0012016BD0178407850EA012000B2AF -:104FF000704780B502200090DFF8C43C6B22D021BE -:105000000020FBF711F9002801D100205BE001200E -:105010000090DFF8B03C1A22D0210020FBF704F901 -:10502000002801D100204EE001200090DFF8983CDC -:105030001B22D0210020FBF7F7F8002801D1002027 -:1050400041E001200090DFF8843C1C22D0210020A8 -:10505000FBF7EAF8002801D1002034E0012000909D -:10506000DFF86C3C1D22D0210020FBF7DDF8002882 -:1050700001D1002027E001200090DFF8583C6A228F -:10508000D0210020FBF7D0F8002801D100201AE041 -:1050900001200090DFF8403C3822D0210020FBF7AF -:1050A000C3F8002801D100200DE001200090DFF8B6 -:1050B0002C3C1922D0210020FBF7B6F8002801D1A2 -:1050C000002000E0012002BD80B50020ADF8000006 -:1050D0006B208DF80000DFF8E80B00788DF80100F8 -:1050E000022300AAD0210020FBF760F8002801D19C -:1050F000002090E06C208DF80000DFF8C40B4078B1 -:105100008DF80100022300AAD0210020FBF74EF801 -:10511000002801D100207EE01A208DF80000DFF881 -:10512000A00B00798DF80100022300AAD0210020F5 -:10513000FBF73CF8002801D100206CE01B208DF823 -:105140000000DFF87C0B40798DF80100022300AAF3 -:10515000D0210020FBF72AF8002801D100205AE0D6 -:105160001C208DF80000DFF8580B80798DF80100C5 -:10517000022300AAD0210020FBF718F8002801D153 -:10518000002048E01D208DF80000DFF8340BC079C6 -:105190008DF80100022300AAD0210020FBF706F8B9 -:1051A000002801D1002036E06A208DF80000DFF8E9 -:1051B000100BC0788DF80100022300AAD021002036 -:1051C000FAF7F4FF002801D1002024E019208DF81F -:1051D0000000DFF8EC0A80788DF80100022300AAB5 -:1051E000D0210020FAF7E2FF002801D1002012E0D0 -:1051F00038208DF80000DFF8C80A007A8DF8010029 -:10520000022300AAD0210020FAF7D0FF002801D104 -:10521000002000E0012002BD10B582B00020ADF8F2 -:105220000000DFF89C0A007840060FD56B208DF84F -:10523000000000208DF80100022300AAD0210020E8 -:10524000FAF7B4FF002801D10020B9E06C208DF8F6 -:105250000000DFF86C0A407810F0F8008DF80100CB -:10526000022300AAD0210020FAF7A0FF002801D1D4 -:105270000020A5E06A208DF8000000208DF80100D4 -:10528000022300AAD0210020FAF790FF002801D1C4 -:10529000002095E0002400E0641C062C10DA14F1D4 -:1052A00013008DF8000000208DF80100022300AAF1 -:1052B000D0210020FAF77AFF0028EDD100207FE00E -:1052C00019208DF8000000208DF80100022300AAAB -:1052D000D0210020FAF76AFF002801D100206FE0FA -:1052E0001A208DF8000003208DF801004FF4FA64B5 -:1052F0002000B0F5FA7F13D0B0F57A7F09D0B0F571 -:10530000FA6F14D19DF8010050F018008DF80100DB -:1053100011E09DF8010050F010008DF801000AE046 -:105320009DF8010050F008008DF8010003E09DF8A1 -:1053300001008DF80100022300AAD0210020FAF715 -:1053400035FF002801D100203AE0B4F5FA7F0DD0F6 -:10535000B4F57A7F06D0B4F5FA6F0BD103208DF83F -:1053600001000AE002208DF8010006E001208DF81E -:10537000010002E000208DF801001B208DF80000E4 -:105380009DF80100C0008DF80100022300AAD02181 -:105390000020FAF70BFF002801D1002010E0382090 -:1053A0008DF8000000208DF80100022300AAD02112 -:1053B0000020FAF7FBFE002801D1002000E00120C8 -:1053C00016BD00B583B00020ADF8060000208DF8B2 -:1053D00004006B208DF8060001208DF807000223E1 -:1053E0000DF10602D0210120FAF7E0FE002801D1DC -:1053F000002023E02820FFF71FFD0120009001ABD3 -:105400006C22D0210120FAF70FFF002801D10020E3 -:1054100014E06C208DF806009DF8040010F0C00028 -:105420008DF8070002230DF10602D0210120FAF7C2 -:10543000BDFE002801D1002000E001200EBD2DE9B5 -:10544000F04F85B004000D0016001F000020ADF8DD -:10545000040002A80021002206C0083806208DF8AA -:10546000060038208DF8040000208DF80500022386 -:1054700001AAD0210120FAF799FE002802D15FF09D -:10548000FF3070E123208DF8040000208DF8050026 -:10549000022301AAD0210120FAF788FE002802D1B8 -:1054A0005FF0FF305FE16A208DF8040000208DF886 -:1054B0000500022301AAD0210120FAF777FE002877 -:1054C00002D15FF0FF304EE16A208DF80400042025 -:1054D0008DF80500022301AAD0210120FAF766FE0B -:1054E000002802D15FF0FF303DE11A208DF8040062 -:1054F00001208DF80500022301AAD0210120FAF72E -:1055000055FE002802D15FF0FF302CE119208DF804 -:10551000040000208DF80500022301AAD0210120FB -:10552000FAF744FE002802D15FF0FF301BE11B2098 -:105530008DF804008DF80540022301AAD021012036 -:10554000FAF734FE002802D15FF0FF300BE1FFB222 -:10555000002F0FD01C208DF804008DF80540022389 -:1055600001AAD0210120FAF721FE002802D15FF024 -:10557000FF30F8E064B2002C02D0C820FFF75CFCDA -:105580006A208DF8040044208DF80500022301AA4A -:10559000D0210120FAF70AFE002802D15FF0FF3087 -:1055A000E1E023208DF80400FFB2002F03D0082093 -:1055B0008DF8050002E070208DF80500022301AA95 -:1055C000D0210120FAF7F2FD002802D15FF0FF3070 -:1055D000C9E00A20FFF730FC002408E0E4B2002014 -:1055E00045F82400E4B2002046F82400641CE4B22C -:1055F000032CF3D35FF00009B9F1320F6EDA0A2001 -:10560000FFF71AFC0220009002AB7222D021012089 -:10561000FAF70AFE002802D15FF0FF30A3E002A8EB -:10562000FFF7E1FC9DF8061090FBF1F8B8F1070FC9 -:1056300002DA7FF0010096E000241AE05FFA8AFAAD -:1056400055F82AB05FFA8AFA02A810EB4A00FFF771 -:10565000CAFC0BFA80F05FFA8AFA45F82A001AF1C0 -:10566000010A5FFA8AFABAF1030FE7D319F10109C7 -:10567000641CE4B24445BFDAB9F1320FBCDA9DF8DC -:105680000600009002AB7422D0210120FAF7CCFD75 -:10569000002802D15FF0FF3065E0FFB2002F1AD082 -:1056A0005FF0000A5FFA8AFABAF1030FDED25FFAFE -:1056B0008AFA56F82AB05FFA8AFA02A810EB4A0072 -:1056C000FFF791FC0BFA80F05FFA8AFA46F82A009D -:1056D0001AF1010AE6E75FF0000AC2E723208DF81D -:1056E000040000208DF80500022301AAD02101202A -:1056F000FAF75CFD002802D15FF0FF3033E05FF085 -:10570000000A0FE05FFA8AFA55F82A004FF47A711E -:105710004843322190FBF1F05FFA8AFA45F82A00FB -:105720001AF1010A5FFA8AFABAF1030FEAD3FFB25B -:10573000002F17D05FF0000A0FE05FFA8AFA56F8E0 -:105740002A004FF47A714843322190FBF1F05FFA5E -:105750008AFA46F82A001AF1010A5FFA8AFABAF1BF -:10576000030FEAD3012005B0BDE8F08F2DE9F04327 -:1057700089B004000D00160000275FF0010801A8A1 -:10578000002101605FF000090320009001AB0D22B1 -:10579000D0210120FAF748FD002801D15FF0FF3841 -:1057A0005FF0000905E005A8002140F8291019F173 -:1057B0000109B9F1030F11DA01A819F80000002856 -:1057C000F1D001A819F80000DFF8A81911EB40008A -:1057D00030F8020C05A941F82900E8E75FF000095C -:1057E0001FE002A850F82900DFF88C19884207DA78 -:1057F000DFF88809FAF791FC012010FA09F0074355 -:1058000002A850F82900DFF87819884207DBDFF892 -:105810007409FAF782FC012010FA09F0074319F124 -:105820000109B9F1030F2BDA55F8290056F82910B0 -:10583000401A0AF0A5FA02A941F8290005A850F873 -:1058400029000028CDD002A850F8290005A951F858 -:10585000291090FBF1F0B0F57A700AF091FA24F873 -:10586000190034F9190040F2F5118842D7DBDFF84E -:105870001809FAF752FC012010FA09F00743CEE7A5 -:10588000B4F904000090B4F90230B4F900203900F2 -:10589000DFF8F808FAF741FC002F05D0DFF8F00830 -:1058A000FAF73BFC7FF00208404640B209B0BDE881 -:1058B000F08338B505000020ADF800000020ADF8F9 -:1058C0000200FAF7B0FB040038208DF80000002039 -:1058D0008DF80100022300AAD0210020FAF766FC0F -:1058E000002801D1002074E000F0D3FA002801D193 -:1058F00000206EE01F208DF800004B208DF8010085 -:10590000022300AAD0210020FAF750FC002801D180 -:1059100000205EE01E208DF8000006208DF80100BA -:10592000022300AAD0210020FAF740FC002801D170 -:1059300000204EE069208DF80000C0208DF80100A5 -:10594000022300AAD0210020FAF730FC002801D160 -:1059500000203EE0012201210320FAF79FFD0020F4 -:10596000FAF79EFD38208DF8000040208DF80100E8 -:10597000022300AAD0210020FAF718FC002801D148 -:10598000002026E0012028702000407DC04601282C -:1059900010D001212000FAF7FFFCBDF80200401CE6 -:1059A000ADF80200BDF802003228EDD3DFF8E407BD -:1059B000FAF7B3FB012200210320FAF76FFD002064 -:1059C000FAF76EFD00F05BFB002801D1002000E03B -:1059D000012032BD70B58EB0040000A80021002265 -:1059E00006C00838012500260BA80021002200234C -:1059F0000EC00C3808A80021002200230EC00C386D -:105A000005A80021002200230EC00C3802A80021A6 -:105A1000002200230EC00C38FFF7EBFA002801D15A -:105A2000002056E0FFF7F8FB002806D00126FFF71C -:105A3000C8FC002803D100204BE0002049E00123EE -:105A400002AA08A90020FFF7FAFC05006DB2012D9B -:105A500004D0DFF83C07FAF760FB1CE0012305AA3D -:105A60000BA97FF01F00FFF7EAFC05006DB2012DC6 -:105A700004D0DFF81407FAF750FB0CE005AA02A9DE -:105A800000A8FFF773FE05006DB2012D03D0DFF80B -:105A9000EC06FAF742FB2670BDF800006070BDF915 -:105AA00000000012A070BDF80200E070BDF9020015 -:105AB00000122071BDF804006071BDF904000012ED -:105AC000A071E571FFF700FB002801D1002000E084 -:105AD00001200EB070BD80B5DFF8BC06007800284C -:105AE00009D1FFF7D2F9002801D1002004E0DFF846 -:105AF000A80601210170012002BD00002438002009 -:105B000000B583B000208DF806000020ADF8040039 -:105B1000012000900DF106036B22D0210020FAF73E -:105B200083FB002801D100207FE09DF8060040069D -:105B300012D56B208DF804009DF8060010F0BF0010 -:105B40008DF80500022301AAD0210020FAF72EFBD0 -:105B5000002801D1002068E0012000900DF106032B -:105B60006C22D0210020FAF75FFB002801D1002031 -:105B70005BE06C208DF804009DF8060010F0C70073 -:105B80008DF80500022301AAD0210020FAF70EFBB0 -:105B9000002801D1002048E01D208DF8040043209A -:105BA0008DF80500022301AAD0210020FAF7FEFAA1 -:105BB000002801D1002038E01C208DF804000020CE -:105BC0008DF80500022301AAD0210020FAF7EEFA91 -:105BD000002801D1002028E020208DF8040080203A -:105BE0008DF80500022301AAD0210020FAF7DEFA81 -:105BF000002801D1002018E01F208DF8040080202B -:105C00008DF80500022301AAD0210020FAF7CEFA70 -:105C1000002801D1002008E0DFF88005007850F06E -:105C20000100DFF87815087001200EBD00B583B0C3 -:105C300000208DF806000020ADF80400012000903F -:105C40000DF106036C22D0210020FAF7EDFA0028AE -:105C500001D1002030E06C208DF804009DF8060092 -:105C600050F038008DF80500022301AAD021002051 -:105C7000FAF79CFA002801D100201DE0DFF81C058E -:105C8000007880070FD46B208DF8040040208DF839 -:105C90000500022301AAD0210020FAF787FA002884 -:105CA00001D1002008E0DFF8F404007810F0FE00D5 -:105CB000DFF8E814087001200EBD0000947A030894 -:105CC000787B00207C7B00207D7B00207E7B002079 -:105CD0007F7B00207B7B0020807B00207A7B002064 -:105CE00000B583B000208DF804000020ADF8060058 -:105CF0000120009001AB6C22D0210020FAF794FA29 -:105D0000002801D1002014E06C208DF806009DF8D9 -:105D1000040050F038008DF8070002230DF1060250 -:105D2000D0210020FAF742FA002801D1002000E03B -:105D300001200EBD7FB504000D0002A80021002245 -:105D400006C008380020ADF80400FAF76CF9060028 -:105D5000DFF84C040068401CDFF8441408600120A0 -:105D6000009002AB6B22D0210020FAF75DFA0028E8 -:105D700001D100208BE09DF8080040061AD56B2069 -:105D80008DF804009DF8080010F0BF008DF80500A4 -:105D9000022301AAD0210020FAF708FA002801D135 -:105DA000002074E005213000FAF7F6FADFF8F4037A -:105DB000FAF7B3F90120009002AB6C22D021002049 -:105DC000FAF732FA002801D1002060E09DF80800BF -:105DD000382108421ED06C208DF804009DF8080080 -:105DE00010F0C7008DF80500022301AAD021002081 -:105DF000FAF7DCF9002801D1002048E00521300045 -:105E0000FAF7CAFADFF8A003FAF787F9DFF89C037C -:105E100001210160EDB2009502AB3B22D0210020B0 -:105E2000FAF702FA002805D1DFF88403FAF775F9CA -:105E300000202CE09DF8090020709DF8080060709B -:105E40009DF80B00A0709DF80A00E0709DF80D0011 -:105E500020719DF80C006071D1480068642190FBAE -:105E6000F1F201FB1200002810D120790090A378F4 -:105E70002278CE480168CF48FAF74FF9C848006841 -:105E8000CD49884202DBC64800210160012004B0F0 -:105E900070BD30B583B001240020ADF806000020AD -:105EA0008DF80400FAF7BFF805000120009001AB5F -:105EB0006B22D0210020FAF7B7F9002801D1002089 -:105EC0008BE09DF8040040061AD56B208DF8060083 -:105ED0009DF8040010F0BF008DF8070002230DF1BB -:105EE0000602D0210020FAF761F9002801D1002034 -:105EF00073E005212800FAF74FFAB048FAF70DF9D8 -:105F00001D208DF8060008208DF8070002230DF1F2 -:105F10000602D0210020FAF749F9002801D100201B -:105F20005BE00120009001AB6C22D0210020FAF749 -:105F30007BF9002801D100204FE06C208DF806008D -:105F40009DF8040050F080008DF804009DF80400D6 -:105F500050F007008DF804009DF8040010F0C70011 -:105F60008DF804009DF804008DF8070002230DF160 -:105F70000602D0210020FAF719F9002801D10020EB -:105F80002BE00120009001AB6B22D0210020FAF71A -:105F90004BF9002801D100201FE06B208DF806008E -:105FA0009DF8040010F0BF008DF804009DF8040077 -:105FB00050F020008DF804009DF804008DF80700D3 -:105FC00002230DF10602D0210020FAF7EFF8002895 -:105FD00001D1002001E02000C0B23EBD80B500200C -:105FE000ADF80000FFF755FF002801D1002045E083 -:105FF0001F208DF800004B208DF80100022300AA1D -:10600000D0210020FAF7D2F8002801D1002035E095 -:106010001E208DF8000006208DF80100022300AA42 -:10602000D0210020FAF7C2F8002801D1002025E095 -:1060300069208DF80000C0208DF80100022300AA1D -:10604000D0210020FAF7B2F8002801D1002015E095 -:10605000012201210320FAF721FA38208DF80000EF -:1060600040208DF80100022300AAD0210020FAF779 -:106070009DF8002801D1002000E0012002BD80B57C -:106080000020ADF80000012200210320FAF706FAF3 -:1060900038208DF8000000208DF80100022300AAAE -:1060A000D0210020FAF782F8002801D1002040E03A -:1060B0006B208DF8000000208DF80100022300AA5B -:1060C000D0210020FAF772F8002801D1002030E03A -:1060D0001D208DF8000000208DF80100022300AA89 -:1060E000D0210020FAF762F8002801D1002020E03A -:1060F0006C208DF8000000208DF80100022300AA1A -:10610000D0210020FAF752F8002801D1002010E039 -:1061100069208DF8000000208DF80100022300AAFC -:10612000D0210020FAF742F8002801D1002000E039 -:10613000012002BD80B50178012905D1FFF7B9FB27 -:1061400000280AD1002009E00178022905D1FFF7D3 -:1061500041FC002801D1002000E0012002BD80B5F3 -:1061600017490020FAF780FC16490B20FAF77CFC4F -:1061700001BD0000F4620308003E4900607B030893 -:1061800001EFE700687B0308587B0308587A03088F -:10619000707B0308787B0308F67B0020F77B0020E8 -:1061A000D87B0020807B0308887B0308DC7B0020F1 -:1061B000907B0308E87A0308A1860100987B030816 -:1061C000D44E03087879030880B50020DFF8681BF7 -:1061D0000978002906D1FEF758FEDFF85C1B012282 -:1061E0000A7000E00120C0B202BD00B583B00020FB -:1061F0008DF806000020ADF80400012000900DF19C -:1062000006036B22D0210120FAF70EF8002801D1F5 -:1062100000205BE06B208DF804009DF8060010F074 -:10622000BF008DF80500022301AAD0210120F9F753 -:10623000BDFF002801D1002048E0012000900DF1B1 -:1062400006036C22D0210120F9F7EEFF002801D1CE -:1062500000203BE06C208DF804009DF8060010F053 -:10626000F8008DF80500022301AAD0210120F9F7DA -:106270009DFF002801D1002028E01B208DF804009C -:1062800008208DF80500022301AAD0210120F9F78A -:106290008DFF002801D1002018E01A208DF804009D -:1062A00003208DF80500022301AAD0210120F9F76F -:1062B0007DFF002801D1002008E0DFF8800A007887 -:1062C00050F00200DFF8741A087001200EBD00B50E -:1062D00083B000208DF806000020ADF804000120F6 -:1062E00000900DF106036C22D0210120F9F79CFFEC -:1062F000002801D1002030E06C208DF804009DF8CA -:10630000060050F007008DF80500022301AAD021F5 -:106310000120F9F74BFF002801D100201DE0DFF834 -:106320001C0A0078C0070FD46B208DF804004020B1 -:106330008DF80500022301AAD0210120F9F736FFCC -:10634000002801D1002008E0DFF8F009007810F003 -:10635000FD00DFF8E819087001200EBD00B583B01C -:1063600000208DF804000020ADF806000120009008 -:1063700001AB6C22D0210120F9F756FF002801D192 -:10638000002014E06C208DF806009DF8040050F009 -:1063900007008DF8070002230DF10602D02101202D -:1063A000F9F704FF002801D1002000E001200EBD14 -:1063B0007FB5040002A80021002206C0083800268C -:1063C0000020ADF80400F9F72EFE05000120009032 -:1063D00002AB6B22D0210120F9F726FF002801D162 -:1063E000002083E09DF80800400625D56B208DF83D -:1063F00004009DF8080010F0BF008DF8050002238E -:1064000001AAD0210120F9F7D1FE002801D10020F6 -:106410006CE00A212800F9F7BFFFDFF82409F9F73B -:106420007CFE002603E0F6B200203055761CF6B262 -:10643000062EF8D3012059E00120009002AB6C2217 -:10644000D0210120F9F7F0FE002801D100204DE015 -:106450009DF808000721084225D06C208DF8040023 -:106460009DF8080010F0F8008DF80500022301AA3D -:10647000D0210120F9F79AFE002801D1002035E053 -:106480000A212800F9F788FFDFF8B808F9F745FE78 -:10649000002603E0F6B200203055761CF6B2062E38 -:1064A000F8D3012022E00620009002AB4322D02145 -:1064B0000120F9F7B9FE002805D1DFF88C08F9F7BB -:1064C0002CFE002012E09DF8090020709DF80800C5 -:1064D00060709DF80B00A0709DF80A00E0709DF8B8 -:1064E0000D0020719DF80C006071012004B070BD9A -:1064F0002DE9F64FADF63C6D05000020ADF8080023 -:1065000003A81421FBF70CFB002608A80021002299 -:1065100000230EC00C385FF0000940F68C10684470 -:106520004FF49661FBF7FCFAFFA8E0304FF4966158 -:10653000FBF7F6FA0BA84FF49661FBF7F1FA5FF060 -:106540000008002700240020070000E07F1C032F24 -:1065500080F2BA806B208DF80800781C8DF8090055 -:10656000022302AAD0210120F9F720FE002801D140 -:10657000002099E13220FEF75FFC6A208DF80800C8 -:1065800044208DF80900022302AAD0210120F9F746 -:106590000DFE002801D1002086E1012409E019EB5D -:1065A000060608A850F8270019EB000008A941F8D2 -:1065B00027002000441E012875DB23208DF80800E9 -:1065C00070208DF80900022302AAD0210120F9F7DA -:1065D000EDFD002801D1002066E14B20FEF72CFCE8 -:1065E00023208DF8080000208DF80900022302AA5C -:1065F000D0210120F9F7DAFD002801D1002053E174 -:106600000220009003AB7222D0210120F9F70CFE8A -:10661000002801D1002047E103A8FEF7E4FC00EECA -:10662000100AB8EEC00A10EE100AFBF737F9DFF8CF -:106630001C27DFF81C37FBF769F9FBF745FA8146A1 -:10664000B9F148000128B4DB5FF000081DE003A8A1 -:10665000FEF7C9FC18EB060140F68C126A4422F8DA -:1066600011000DF10E00FEF7BEFC18EB0601FFAAAB -:10667000E03222F8110004A8FEF7B5FC18EB060181 -:106680000BAA22F8110018F10108C84587DA062084 -:10669000009003AB7422D0210120F9F7C5FD00283A -:1066A000D5D1002000E123208DF8080000208DF8CE -:1066B0000900022302AAD0210120F9F777FD002862 -:1066C0007FF444AF0020EFE0002E01D0340000E062 -:1066D00001245FF0000800200021C5E9000100202E -:1066E0000021C5E9020100200021C5E9040122E0E2 -:1066F000D5E9000140F68C126A4432F91820D3170C -:1067000080185941C5E90001D5E90201FFAAE0322C -:1067100032F91820D31780185941C5E90201D5E98B -:1067200004010BAA32F91820D31780185941C5E982 -:10673000040118F10108B045DADBD5E900012200B7 -:10674000E31706F0BFFEC5E90001D5E9020122000A -:10675000E31706F0B7FEC5E90201D5E904012200FE -:10676000E31706F0AFFEC5E904015FF00008DDF8AD -:106770003C0E00220023C0E90023DDF83C0E00227D -:106780000023C0E90223DDF83C0E00220023C0E90B -:10679000042382E0DDF83C2ED2E90001CDE90001BE -:1067A00040F68C10684430F91800C117D5E9002371 -:1067B000801A994140F68C126A4432F918A05FEAB7 -:1067C000EA7BD5E90023BAEB02027BEB0303A2FBD1 -:1067D00000AB02FB01BB03FB00BBDDE9000110EBDA -:1067E0000A0051EB0B01DDF83C2EC2E90001DDF897 -:1067F0003C2ED2E90201CDE90001FFA8E03030F9DA -:106800001800C117D5E90223801A9941FFAAE03286 -:1068100032F918A05FEAEA7BD5E90223BAEB02025B -:106820007BEB0303A2FB00AB02FB01BB03FB00BB42 -:10683000DDE9000110EB0A0051EB0B01DDF83C2E05 -:10684000C2E90201DDF83C2ED2E90401CDE90001E4 -:106850000BA830F91800C117D5E90423801A994113 -:106860000BAA32F918A05FEAEA7BD5E90423BAEB58 -:1068700002027BEB0303A2FB00AB02FB01BB03FBA9 -:1068800000BBDDE9000110EB0A0051EB0B01DDF864 -:106890003C2EC2E9040118F10108B045FFF67AAFB9 -:1068A000DDF8400E066001200DF6446DBDE8F08F66 -:1068B0002DE9F04389B004000D00160001275FF0B8 -:1068C000000801A8002101600320009001AB002214 -:1068D000D0210120F9F7A8FC002801D15FF0FF3793 -:1068E0005FF0000907E04FFA89F905A8002140F898 -:1068F000291019F101094FFA89F9B9F1030F17DAD3 -:106900004FFA89F901A819F800000028EBD04FFAD6 -:1069100089F901A819F80000DFF8381411EB4000DC -:1069200030F8020C4FFA89F905A941F82900E0E78F -:106930005FF0000925E04FFA89F902A850F8290014 -:10694000DFF81414884208DADFF81004F9F7E5FBE1 -:10695000012010FA09F050EA08084FFA89F902A854 -:1069600050F82900DFF8F813884208DBDFF8F40359 -:10697000F9F7D3FB012010FA09F050EA080819F1E1 -:1069800001094FFA89F9B9F1030F3BDA4FFA89F996 -:1069900055F829004FFA89F956F82910401A09F0DC -:1069A000EFF94FFA89F902A941F829004FFA89F95C -:1069B00005A850F829000028BDD04FFA89F902A88F -:1069C00050F829004FFA89F905A951F8291090FBD0 -:1069D000F1F0B0F57A7009F0D3F94FFA89F924F89B -:1069E00019004FFA89F934F9190040F2F51188427B -:1069F000C5DBDD48F9F791FB012010FA09F050EAF8 -:106A00000808BCE74FFA88F8B8F1000F04D0D7485F -:106A1000F9F783FB7FF00207380040B209B0BDE808 -:106A2000F0832DE9F0439DB00400012501260CA858 -:106A30001821FBF775F806A81821FBF771F802A8D2 -:106A40000021016000A80021002206C008380027AC -:106A500018A80021002200230EC00C3815A8002120 -:106A6000002200230EC00C3812A8002100220023AF -:106A70000EC00C3803A80021002200230EC00C38E1 -:106A8000BB48D0F80480FEF7B4FA002801D10020FA -:106A9000EDE0FEF7C1FB0500EDB2012D09D10127A4 -:106AA00002AA06A90CA8FFF723FD002803D10020A5 -:106AB000DDE00020DBE0FEF784FC002801D10020AF -:106AC000D5E0002303AA15A90020FEF7B8FC0600B4 -:106AD00076B2012E02D0A748F9F71FFB002312AAB5 -:106AE00018A97FF01F00FEF7AAFC060076B2012E5F -:106AF00002D0A148F9F711FB18AA15A900A8FFF7C1 -:106B0000D7FE060076B2012E02D09C48F9F705FBAD -:106B10005FF0000918E05FFA89F918EB49025FFAA3 -:106B200089F90CA810EBC903D3E900018000A2F891 -:106B300058005FFA89F918EB4900B0F958109048ED -:106B4000F9F7EBFA19F101095FFA89F9B9F1030FC5 -:106B5000E1D32770BDF800006070BDF9000000129D -:106B6000A070BDF80200E070BDF9020000122071B3 -:106B7000BDF804006071BDF904000012A071E67157 -:106B80000298207202980012607202980014A0729B -:106B900002980016E072DDE90C012073DDE90C01BA -:106BA00000B200126073DDE90C010014A073DDE98E -:106BB0000C010016E073DDE90E012074DDE90E0121 -:106BC00000B200126074DDE90E010014A074DDE96A -:106BD0000E010016E074DDE910012075DDE91001F9 -:106BE00000B200126075DDE910010014A075DDE946 -:106BF00010010016E075DDE906012076DDE90601E9 -:106C000000B200126076DDE906010014A076DDE92D -:106C100006010016E076DDE908012077DDE90801CC -:106C200000B200126077DDE908010014A077DDE909 -:106C300008010016E077DDE90A0184F82000DDE9AB -:106C40000A0100B2001284F82100DDE90A010014F3 -:106C500084F82200DDE90A01001684F82300FEF71B -:106C600033FA002801D1002001E02800C0B21DB095 -:106C7000BDE8F08330B583B004000020ADF8040017 -:106C800000203B494D68697A002907D1286E406889 -:106C90008047F9F7C8F90A21F9F77EFB0220009036 -:106CA00001AB4122D0210120F9F7BEFA002801D121 -:106CB000002017E09DF805009DF8041050EA01201F -:106CC000032110FB01F04FF47A7190FBF1F01530C5 -:106CD000207000206070687A002802D1286E8068D9 -:106CE000804701203EBD80B50178002905D1FFF71E -:106CF00098FE00280AD1002009E00178012905D179 -:106D0000FFF7B8FF002801D1002000E0012002BDFC -:106D100080B5C0B2062806D10800FFF7ABFF0028F7 -:106D200001D1002000E0012002BD80B515490120FD -:106D3000F9F79AFE01BD0000F67B0020F77B0020EA -:106D4000D07B0308D87B0308E07B03082D211FF4C8 -:106D50006C56C53FF464030830FD1300F07B030854 -:106D600079E2D100F87B0308E87B0308007C030884 -:106D700000000020087C0308107C0308187C03082E -:106D8000407B0308E4790308002108E0C9B2DFF87A -:106D9000E82D8A18C9B20B5C82F83830491CC9B298 -:106DA0000929F3D3704780B50921DFF8D02D01FB05 -:106DB0000020FFF7E9FF01BD2DE9F04F85B0040089 -:106DC0000D000E20009001AB90225C210220F9F70B -:106DD0002BFA002802D15FF0FF3017E10E2000905F -:106DE00001AB90225C210220F9F71EFA002802D1A3 -:106DF0005FF0FF300AE19DF804008DF801009DF876 -:106E000005009DF806109DF80720D2B292089DF863 -:106E100007309B0013F00C039DF80860F6B253EAAC -:106E200096139DF8086016F03F069DF80970FFB2B2 -:106E3000BF089DF809C05FEA0C1C1CF0300C9DF8DF -:106E40000AE05FFA8EFE5CEA1E1E9DF80AC05FEA49 -:106E5000CC0C1CF0780C9DF80B805FFA88F85CEA8B -:106E600058189DF80BC05FEA4C0C1CF03E0C9DF8C6 -:106E70000C905FFA89F95CEAD9199DF80CC09DF86D -:106E80000DA05FFA8AFA5FEADA1A5AEA4C0A9DF80C -:106E90000DC0CCF3840B8DF800B09DF80DC05FEAF7 -:106EA0004C0C1CF0060C9DF80EB05FFA8BFB5CEAF4 -:106EB000DB1B8DF802B09DF80EC01CF0010C9DF894 -:106EC0000FB05FFA8BFB5FEADB1B5BEA4C0C84F8CC -:106ED00003C09DF80EC05FFA8CFC5FEA5C0C5FEAB1 -:106EE0008C0C4FFA8CFC5FEAAC0C84F800C09DF867 -:106EF0000FC01CF0010C9DF810B05FFA8BFB5FEA2D -:106F0000DB1B5BEA4C0C84F804C09DF80FC05FFAF1 -:106F10008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA3D -:106F2000AC0C84F801C09DF810C01CF0010C9DF859 -:106F300011B05FFA8BFB5FEADB1B5BEA4C0C84F859 -:106F400005C09DF810C05FFA8CFC5FEA5C0C5FEA3C -:106F50008C0C4FFA8CFC5FEAAC0C84F802C09DF8F4 -:106F600011C01CF0010C84F806C09DF801405FF0D0 -:106F70000A0C0CFB04F4B4F5A0642C60C0B20A2423 -:106F80006043B0F5A0606860C9B20A2000FB01F060 -:106F9000B0F5A060A860D2B2B2F12000E860DBB228 -:106FA000B3F108002861F6B2B6F120006861FFB2C3 -:106FB00017F12600A8615FFA8EFEBEF12000E8619D -:106FC0005FFA88F8B8F1400028625FFA89F9B9F1F0 -:106FD000200068625FFA8AFAC5F828A09DF80000D0 -:106FE000E862002000E0401CC0B20D2806D2C0B20A -:106FF00001A9415C0029F6D0002007E09DF81100AE -:10700000000601D5002001E07FF0090005B0BDE8D1 -:10701000F08F1CB5002400E0641CB4F57A7F12DA0E -:107020000120009001ABB0225C210220F9F7FCF8AE -:10703000002802D15FF0FF3007E09DF80400000651 -:10704000EAD4002001E07FF0040016BD80B5DFF82F -:10705000280B90F85400002811D0DFF81C0B90F892 -:10706000550000280BD0FFF7D4FF002802D57FF091 -:10707000040005E0DFF8000B002180F85510002027 -:1070800002BD10B582B014000022ADF800208222AB -:107090008DF8002001228DF80120002801D0012068 -:1070A00000E000209DF8012052EA40008DF8010028 -:1070B000002901D0012000E000209DF8011051EAD4 -:1070C00080008DF80100022300AA5C210220F9F75C -:1070D0006DF8002802D15FF0FF3019E0002C0CD0D1 -:1070E000FFF797FF002802D57FF0040010E0DFF8DB -:1070F000880A002180F8551004E0DFF87C0A01219D -:1071000080F85510DFF8700A012180F85410002033 -:1071100016BD3EB514001D00DFF85C2A92F854201D -:10712000002A04D10122FFF7ACFF002871D108200A -:10713000009001ABB0225C210220F9F775F800281D -:1071400006D1DFF8900CF8F7E8FF5FF0FF3060E061 -:10715000DFF8240A002180F854109DF80400C0B222 -:10716000C009C0B220609DF80400C00010F47E7019 -:107170009DF80510C9B24909C9B20843288006988C -:107180009DF80610890111F4FE519DF80720D2B236 -:107190009208D2B2114301809DF80810890111F4C0 -:1071A000FE519DF80920D2B29208D2B2114341801B -:1071B0009DF80A10890111F4FE519DF80B20D2B2FE -:1071C0009208D2B211438180079900220A600022FE -:1071D0001BE0D2B230F91230002B06D10B6801242B -:1071E000D2B25500AC4023430B60D2B230F912301A -:1071F00041F6FE74A34207D10B680124D2B25500B8 -:107200006D1CAC4023430B60521CD2B2032AE0D366 -:1072100000203EBD10B582B004000020ADF8000093 -:10722000FFF714FF002802D57FF0040041E085201D -:107230008DF8000020788DF80100022300AA5C215F -:107240000220F8F7B3FF002802D15FF0FF3030E0F2 -:1072500086208DF8000060788DF80100022300AAD6 -:107260005C210220F8F7A2FF002802D15FF0FF3076 -:107270001FE087208DF80000A0788DF80100022320 -:1072800000AA5C210220F8F791FF002802D15FF0EC -:10729000FF300EE0002008E0C0B2DFF8DC18411833 -:1072A000C0B2025D81F84120401CC0B20328F3D374 -:1072B000002016BD80B50020ADF80000FFF7C6FE27 -:1072C000002802D57FF0040011E081208DF8000035 -:1072D00000208DF80100022300AA5C210220F8F7AB -:1072E00065FF002802D15FF0FF3000E0002002BD02 -:1072F00030B58BB0040002A800210160FFF7A6FEA4 -:10730000002802D57FF0040074E0DFF86C0800214B -:1073100080F85410002516E008A951F82010002923 -:107320000DD002A9415608AA52F82020DFF8503D9E -:1073300053F825305A4342FA81F102AA8154401C85 -:107340000328E9DB6D1C052D43DA02A8FFF762FF75 -:10735000002802D55FF0FF304CE007A8019005A897 -:10736000009003AB04AA00210020FFF7D2FE002802 -:1073700002D55FF0FF303DE00498002802D07FF096 -:10738000040037E0002020E005A931F91010B1F524 -:10739000805F03D108A9002241F8202005A931F916 -:1073A000101041F20102914203DB08A9012241F8C9 -:1073B000202005A931F91010B1F5805F04DA08A981 -:1073C0005FF0FF3241F82020401C0328DCDB002066 -:1073D000B6E702A8FFF71EFF002802D55FF0FF30D6 -:1073E00008E0002503E002A8285C28556D1C032D49 -:1073F000F9DB00200BB030BD2DE970438AB00400EA -:107400000E00DFF8805C0020059000200490FFF75C -:107410001DFE002802D57FF0040078E0DFF8580751 -:10742000002180F8541005A8019008A8009002AB34 -:1074300003AA00210120FFF76CFE0020002802D0E3 -:107440005FF0FF3063E00398002802D07FF0040073 -:107450005DE004A8019006A8009002AB03AA0121F8 -:107460000120FFF756FE0020002802D05FF0FF3019 -:107470004DE00398002802D07FF0040047E0E86A5E -:10748000FAF756FB80468946BDF92000BDF9181071 -:10749000401AFAF74DFBDFF8F02BDFF8F03BFAF774 -:1074A00035FA42464B46FAF731FA0022DFF8643DDE -:1074B000FAF78AFCFAF708FB2060E86AA9694843F2 -:1074C000FAF736FB04000D00BDF92200BDF91A10D1 -:1074D000401ABDF92410401ABDF91C1000FA81F0C1 -:1074E000FAF726FBDFF84C2DDFF84C3DFAF70EFAE1 -:1074F00022002B00FAF70AFA0022DFF8183DFAF70B -:1075000063FCFAF7E1FA30600598049908430AB081 -:10751000BDE8708380B5FFF799FD002802D57FF0A4 -:10752000040004E0002200210020FFF7AAFD02BDB4 -:107530002DE9F0478AB00400894617001D00DDF8E8 -:107540004880DFF8406B002007905FF0000A07A832 -:107550000190CDF8009002AB08AA00210020FFF7AF -:10756000D8FD002802D55FF0FF303DE100201DE08E -:1075700039F91010DFF800268218D278DFF8BC3C09 -:1075800033F91220891ADFF8F025821892F9412088 -:10759000DFF8E435C356D21ADFF8DC3513EB80038D -:1075A0009B6C03FB021147F82010401C0328DFDB13 -:1075B000DFF8C405006FDFF8C01511EB4000BDF81F -:1075C0000810A0F85810DFF8B005006F401CDFF875 -:1075D000A8150867DFF8A005006F0A2803DBDFF8AD -:1075E000980500210167DFF89005C06E401CDFF8A8 -:1075F0008815C866DFF88005C06E0A2803DBDFF84F -:1076000078050A21C166002008E0DFF86C1511EB4F -:107610004001B1F958100AFA81FA401CDFF85815F8 -:10762000C96E8842F1DB0A2000FB0AF0DFF848153A -:10763000C96EB0FBF1F00490386800907868039050 -:10764000B8680190B8F1000F1DD000983168049A15 -:1076500051434FF47A7291FBF2F1401A0090039873 -:107660007168049A51434FF47A7291FBF2F1401A17 -:1076700003900198B168049A51434FF47A7291FBD8 -:10768000F2F1401A019003980199401A069003986C -:1076900040420199401A0590F06AFAF749FA80468B -:1076A000894600986421F268069B5A4301FB00203A -:1076B0003169059A02FB0100FAF73AFADFF8C829A6 -:1076C000DFF8C839FAF722F942464B46FAF71EF9B5 -:1076D000FAF7FAF90490F06AFAF72AFA804689462E -:1076E00070690099B269069B5A4301FB0020F16959 -:1076F000059A02FB0100FAF71BFADFF88C29DFF884 -:107700008C39FAF703F942464B46FAF7FFF8FAF7D5 -:10771000DBF90390F06AFAF70BFA80468946306A83 -:107720000099726A069B5A4301FB0020B16A059AD0 -:1077300002FB0100FAF7FCF9DFF84C29DFF84C39BD -:10774000FAF7E4F842464B46FAF7E0F8FAF7BCF9E4 -:107750000190DFF8240490F938000499DFF8182428 -:1077600092F93920039B5A4301FB0020DFF80814EB -:1077700091F93A10019A02FB01002060DFF8F8034A -:1077800090F93B000499DFF8F02392F93C20039B29 -:107790005A4301FB0020DFF8E01391F93D10019AF4 -:1077A00002FB01006060DFF8D00390F93E0004990D -:1077B000DFF8C42392F93F20039B5A4301FB0020CA -:1077C000DFF8B41391F94010019A02FB0100A060A8 -:1077D000002D02D0BDF8080028800898002802D0AB -:1077E0007FF0040000E007980AB0BDE8F08700B51C -:1077F00083B00020ADF8060000208DF804000020C2 -:1078000008E0DFF874134118DFF8342A825C81F84D -:107810004120401C0328F4DB88208DF8060000205E -:107820008DF8070002230DF106025C210220F8F713 -:10783000BDFC002802D15FF0FF3045E089208DF8C3 -:10784000060000208DF8070002230DF106025C21DE -:107850000220F8F7ABFC002802D15FF0FF3033E0E4 -:107860000120009001AB80225C210220F8F7DCFCB3 -:10787000002802D15FF0FF3026E0BF489DF80410D9 -:1078800080F84410DFF8FC17BB48FFF795FA002892 -:107890001AD4002008E0B84911EB8001DFF8A429D0 -:1078A00052F820208A64401C0328F4DBB2480021EF -:1078B00080F85410B048002180F855100020AE49DF -:1078C0000867AD49C86600200EBD00281FD090F99A -:1078D000001020291BDA90F90110202917DA90F9FD -:1078E0000210202913DA90F900107FF01E02914255 -:1078F0000DDB90F901107FF01E02914207DB90F939 -:1079000002007FF01E01884201DB012000E0002020 -:10791000C0B270472DE9F04383B004000D0016009B -:107920001F00DDF828805FF00009DFF81C09C06A3D -:10793000012802D002282FD062E0DFF80C09406C49 -:10794000DFF80419096C401AB0F5FA7F58D3DFF854 -:10795000F808DFF8F418496C0164FFF7ABFC8146C6 -:10796000B9F1000F4CD4DFF8E008806B002805D196 -:10797000DFF8D808FFF7A9FF002804D1DFF8C8080E -:107980000221C16203E0DFF8C0080021C162FFF7F5 -:10799000C1FD002869D433E001A8FFF7A9FC8146A6 -:1079A000B9F1000F2CD4DFF8A00890F93C009DF944 -:1079B000041088420FD1DFF8900890F93D009DF93E -:1079C0000510884207D1DFF8800890F93E009DF944 -:1079D0000610884201D05FF04009DFF86C080021F2 -:1079E000C162002009E0C0B2DFF85C184118C0B2E3 -:1079F00001AA825C81F83C20401CC0B20328F2D36B -:107A0000B9F1000F01D548462FE0CDF800803B00CA -:107A1000320029002000FFF78BFD002825D4012823 -:107A20001ADBDFF82418896B002905D1DFF8181854 -:107A3000DFF81428526C0A64DFF80C1801228A63FC -:107A4000DFF80418C96A002903D1DFF8FC17012206 -:107A5000CA6250EA090903E0DFF8EC0700218163FC -:107A6000FFF758FD002800D44846BDE8FE8310B556 -:107A700082B00400002C02D17FF07F0078E0DFF8B4 -:107A8000C8271268002A02D17FF0020070E0DFF8F8 -:107A9000B827126B002A33D0009114F1200314F19F -:107AA000140214F10C012000FFF734FF002827D442 -:107AB00000211EE0C9B214EB4102B2F90C20C9B298 -:107AC000DFF8843713EB81031A61C9B214EB81022A -:107AD0005269C9B2DFF8703713EB8103DA61C9B2BA -:107AE000DFF8642712EB8102C9B254F821305360E9 -:107AF000491CC9B20329DDD3DFF84C17098D218455 -:107B0000DFF84417096B002901D0002826D5002191 -:107B10001DE0C9B2DFF8302712EB81025268C9B20A -:107B200044F82120C9B214EB4102C9B2DFF818377A -:107B300013EB81031B699381C9B214EB8102C9B2B3 -:107B4000DFF8043713EB8103DB695361491CC9B2C9 -:107B50000329DED3DFF8F016098D2184DFF8E8165B -:107B6000496CDFF8E426926C5118DFF8DC2651648A -:107B700016BDDFF8DC06704724740020D4780308B3 -:107B800080B5002023E0DFF8C0164118DFF8C426D6 -:107B9000825C81F83C20DFF8B01611EB8001DFF841 -:107BA000B82652F820200A61DFF89C1611EB8001FC -:107BB000DFF8A42652F820204A60DFF88C1611EB7B -:107BC0008001DFF8942652F82020CA61401C032867 -:107BD000D9DBDFF8740600210185DFF86C0600218F -:107BE0004164DFF8640632218164DFF85C0600211D -:107BF0000163DFF8540600214163DFF84C060121E0 -:107C0000C162DFF844065FF0FF310160DFF838063B -:107C1000002181630320FFF7C6F8FFF7E8FD002885 -:107C200005D5DFF83806F8F778FA002037E0DFF8F6 -:107C30001C06FFF74AFE002819D0DFF81006FFF7F0 -:107C4000E9FA002805D5DFF81806F8F766FA0020EB -:107C500025E0FFF72FFB002804D5DFF8EC05012114 -:107C6000C16211E0DFF8E0050021C1620CE0FFF71E -:107C700021FB002804D5DFF8D0050121C16203E013 -:107C8000DFF8C4050221C162DFF8BC0501210160F3 -:107C900018220021DFF8B805FAF7EFF9012002BD3C -:107CA00080B5DFF8A405006B01280AD0DFF898053D -:107CB00001210163FFF72EFCDFF8A805F8F72DFA84 -:107CC00007E0DFF8840501214163DFF89C05F8F740 -:107CD00024FA012002BDDFF87005406B012804D0B2 -:107CE000DFF864050021016303E0DFF85C05002193 -:107CF0004163012070470120704710B50023C0B2D6 -:107D0000002803D002284DD010D360E0DFF83805FA -:107D100090F83C000870DFF8300590F83D0048709E -:107D2000DFF8240590F83E00887050E0DFF8180571 -:107D30000068002807D17FF00201DFF83005F8F76E -:107D4000ECF9002044E0002308E0DBB2DFF8F8049F -:107D50001818DBB25C5680F83C405B1CDBB2D2B238 -:107D60009342F2D3DFF8E004006B002801D1012038 -:107D70002EE0DFF8D804FFF7A8FD002804D0DFF8D4 -:107D8000CC04FFF747FA0CE0FFF794FA002804D57B -:107D9000DFF8B4040121C16203E0DFF8AC04022182 -:107DA000C16214E000230FE0DBB211EB4300407826 -:107DB0000002DBB211F813208018DBB2DFF8B02428 -:107DC00012EB430290835B1CDBB2092BECD3012046 -:107DD00010BD0000A07B03082DE9F04389B004002A -:107DE0000D009046994600260027012100A8FFF7C4 -:107DF0003EFE0600002007000FE000A850F8270014 -:107E0000F9F796FEDFF86C24DFF86C34F9F77EFDA5 -:107E1000F9F75AFE24F817007F1C032FEDDB002E24 -:107E200006D53100DFF85404F8F777F9002055E063 -:107E3000F00702D547F6FF702080B00702D5DFF8C3 -:107E400040042080700702D547F6FF70608030073D -:107E500002D5DFF82C046080F00602D547F6FF70EB -:107E6000A080B00602D5DFF81804A080DFF8140463 -:107E7000C66896F821202100B069F368C018FAF7A7 -:107E8000F6F8300003F0CAFE96F82120B069F168D8 -:107E900041182000FAF7EBF84A4629002000DFF8E5 -:107EA000D0335B6898474046DFF8C4138968884739 -:107EB0002888B8F80010081820806888B8F80210E0 -:107EC00008186080A888B8F804100818A080290055 -:107ED0002800DFF8B42352689047012009B0BDE8BC -:107EE000F08370B58CB0040000A80021002206C009 -:107EF000083800260025FFF7A9F8002807D57FF0ED -:107F00000401DFF88803F8F708F9002033E00021C6 -:107F100002A8FFF7ACFD0600002E01D500202AE0E4 -:107F2000FFF794F8002806D57FF00401D848F8F749 -:107F3000F4F800201FE00798ADF8000008980999B0 -:107F4000401AADF80200089840420999401AADF86D -:107F5000040000250CE000A830F8150004F8150016 -:107F600014EB450000A931F91510091241706D1C80 -:107F7000032DF0DB01200CB070BDF8B50400002526 -:107F8000F8F7E2FA0600FFF7F4FD0700BD480069C4 -:107F9000C06A8068AC498864B6F85C0040070BD4BE -:107FA00017F1140317F10C02B91D3800FFF714FF85 -:107FB000002801D1002014E000250DE017EB45005A -:107FC000C08804F8150017EB4500B0F90600001250 -:107FD00014EB450148706D1C032DEFDB7869A0712F -:107FE0000120F2BD2DE9F041040000270026F8F73A -:107FF000ABFA8046FFF7BDFD0500B8F85C0000074E -:1080000008D52000FFF76DFF002801D1002034E0E3 -:10801000032729E015F1140315F10C02A91D28000E -:10802000FFF7DAFE002801D1002026E0002618E044 -:1080300035F8160004F8160035F91600001214EB96 -:108040004601487014EB460015EB460189898171A1 -:1080500015EB4600B0F90C00001214EB4601C87194 -:10806000761C032EE4DB02277FB2864850F82700F7 -:10807000C06A8068744988640120BDE8F08100000E -:10808000D47A03082C7400209A9999999999B93F48 -:10809000F0B58DB00400002600A80021002206C023 -:1080A0000838F7F7C0FF05006748012101636648FB -:1080B0000068002804D0774890F84400022803D0D4 -:1080C000FFF75EFDFFF7ECFD724890F8440020706A -:1080D0006670A670E67003225E490120FFF70DFE70 -:1080E000002104A8FFF7C3FC0600002E01D50020E4 -:1080F0008DE016F0150F02D07FF0050612E016F0A5 -:108100002A0F02D07FF006060CE00498002808D160 -:108110000598002805D10698002802D17FF00706AF -:1081200000E000265B4890F841002071594890F823 -:1081300042006071574890F84300A071E67100203A -:1081400020720020607200270EE004A850F827007B -:10815000F9F7EEFC374A384BF9F7D8FBF9F7B4FCDE -:1081600000A921F817007F1C032FEEDB4548C768E4 -:1081700097F8212000A9B869FB68C018F9F777FFC4 -:10818000380003F04BFD97F82120B869F9684118D1 -:1081900000A8F9F76CFFBDF900000012A072BDF84D -:1081A0000000E072BDF9020000122073BDF8020069 -:1081B0006073BDF904000012A073BDF80400E07301 -:1081C000267402212800F8F7E7F802A903A8FFF7B0 -:1081D00013F90600002E01D5002018E016F0150F47 -:1081E00001D07FF0050616F02A0F01D07FF00606B9 -:1081F0000398001260740398A07402980012E0744F -:1082000002982075667510480021016301200DB0A9 -:10821000F0BD00000000324080B51F490220F8F791 -:1082200023FC1E490420F8F71FFC1B490320F8F724 -:108230001BFC01BDFCA9F1D24D62503FC87B030875 -:10824000247C0308287B0308B0790020EC79002007 -:10825000387B0020207C0308347B0308A87B0308BC -:10826000B07B0308B87B0308C07B0308F87A0308D7 -:10827000B0FB00207B14AE47E17A843F047B030807 -:108280000080FFFF00000020B8FD0020107B0308E5 -:108290001C7B0308247400209C790308C079030820 -:1082A00000B583B000208DF804000120009001ABE0 -:1082B000F422EC210520F7F7B7FF002801D10020B8 -:1082C0000EBDDFF830099DF80410490941770120FF -:1082D0000EBD00B583B000208DF804000120009091 -:1082E00001ABF422EC210520F7F79EFF002801D115 -:1082F00000200EBD9DF80400C0F38200DFF8F418E2 -:10830000887701200EBD80B50021ADF80010F42162 -:108310008DF80010DFF8DC184A7F897F890001EBB7 -:10832000421140188DF80100022300AAEC2105201B -:10833000F7F73CFF401E8041C043C00F02BD000064 -:108340007CB5064600208DF8040004460546ADF8CD -:1083500006000120009001ABF422EC210520F7F784 -:1083600063FF002801D1204676BD042E12D8DFE835 -:1083700006F00306090C0F00012425460AE001243B -:10838000022507E00124032504E00124042501E07F -:1083900002240525F4208DF806009DF8040000F065 -:1083A0001F0040EA441000F0E300A90001F01C01A6 -:1083B00008438DF804008DF8070002230DF1060232 -:1083C000EC210520F7F7F2FE002801D1002076BD50 -:1083D000FFF766FF002801D1002076BDFFF779FF87 -:1083E000401E8041C043C00F76BD10B588B001A8C3 -:1083F0001821F9F795FB1820009001AB8822EC2199 -:108400000520F7F711FF002801D100204BE0DFF82D -:10841000E4179DF805209DF8043043EA02220A8003 -:1084200001AA9DF90730947844EA03234B8092F91E -:108430000530147944EA03238B809DF80B3094793E -:1084400044EA0323CB809DF90D30147A44EA0323D8 -:108450000B819DF90F30947A44EA03234B819DF9F7 -:108460001130147B44EA03238B819DF91330947BF4 -:1084700044EA0323CB819DF91530147C44EA03239D -:108480000B829DF91730947C44EA03234B829DF9BB -:108490001930147D44EA03238B829DF91B30927DB1 -:1084A00042EA0322CA8208B010BD10B582B0012092 -:1084B0000090DFF84437D022EC210520F7F7B4FE16 -:1084C0000446012C0AD1FFF790FF002804D00320B6 -:1084D000FFF736FF002801D1002016BD204616BD4B -:1084E00080B5DFF81807012101720320FFF70BFFA9 -:1084F000401E8041C043C00F02BD10B5002802D00D -:10850000012812D025E0DFF8F44604F10C0000F059 -:108510005BFA00281DD12078002817D16078002848 -:1085200014D1A078002811D113E0DFF8D04604F16F -:108530000F0000F03BFA00280BD1E078002805D1AD -:108540002079002802D16079002802D0204600213D -:108550000172012010BD80B50020FFF7D4FE401E3F -:108560008041C043C00F02BD80B50020FFF7CBFEA5 -:10857000401E8041C043C00F02BD000070B52DED0C -:10858000048B86B09FED430B8DED020B8DED000B40 -:108590008DED040BF9F7CCFA41EC180BDFF85466BB -:1085A00053EC182B0020DFF85816F9F7AFF9044602 -:1085B0000D463088F9F7C6FA0022DFF84836F9F799 -:1085C000A5F902460B4620462946F9F73DFB04462D -:1085D0000D46B6F90200F9F7ABFA22462B46F9F739 -:1085E00095F9CDE9020153EC182B0020DFF818169D -:1085F000F9F78CF941EC180B9FEDB19B3088F9F736 -:10860000A1FA53EC192BF9F781F902460B4651EC0C -:10861000180BF9F719FB04460D463088F9F792FA62 -:1086200053EC192BF9F772F902460B4651EC180B73 -:10863000F9F70AFB22462B46F9F768F904460D467E -:10864000B6F90400F9F774FA22462B46F9F75EF9F9 -:10865000CDE90001DDE90223DDE90001F9F780FA47 -:10866000F9F732FAB061DDE90223DDE90001F9F73B -:1086700077FA0022DFF89435F9F7A6FBCDE904017B -:10868000DDE9040106B0BDEC048BBDE8704007F0E5 -:108690007BBB00000000000000000000F0B52DEDE5 -:1086A000048B87B007469FEDBF0B8DED000B8DED62 -:1086B000040B8DED020BDFF83C65B069F9F738FA71 -:1086C0000022DFF84C35F9F721F90022DFF84435B4 -:1086D000F9F746FACDE900019FEDD48BDDE90023DF -:1086E000DDE90001F9F712F904460D46B6F910006C -:1086F000F9F71EFA22462B46F9F708F953EC182B26 -:10870000F9F704F9CDE90401B6F90E00F9F710FA0A -:10871000DDE90023F9F7FAF800224FF08043F9F77A -:10872000F5F8DDE90423F9F71BFACDE90401DDE9E9 -:1087300004230020DFF8E014F9F7E8F804460D46BA -:10874000B6F90C00F9F7F4F90022DFF8D034F9F7A4 -:10875000DDF822462B46F9F703FACDE904019FED37 -:10876000B59BB6F90A00F9F7E3F9DDE90023F9F75B -:10877000CDF8DDE90023F9F7C9F853EC192BF9F727 -:10878000C5F804460D46B6F90800F9F7D1F9DDE958 -:108790000023F9F7BBF822462B46F9F7E1F953EC31 -:1087A000192BF9F7B3F8CDE90001DDE9002351EC0D -:1087B000180BF9F7ABF80022DFF86434F9F7D0F9B9 -:1087C00004460D46F088F9F7BDF922462B46F9F725 -:1087D0009DF8CDE90001DDE900230020014607F006 -:1087E00011FB68D03846F9F7A3F902460B46002082 -:1087F000DFF83014F9F728FACDE90201DDE90423A6 -:108800000020DFF82414F9F781F802460B46DDE971 -:108810000201F9F719FA0022DFF81034F9F776F8B7 -:10882000DDE90023F9F7D0FACDE90201B6F9160027 -:10883000F9F77EF9DDE90223F9F768F8DDE90223AB -:10884000F9F764F800224FF07853F9F75FF8CDE9B3 -:108850000001B6F91400F9F76BF9DDE90223F9F725 -:1088600055F853EC182BF9F751F8CDE90401DDE97F -:108870000023DDE90401F9F773F904460D46B6F962 -:108880001200F9F755F922462B46F9F769F900224B -:10889000DFF89C33F9F73AF8DDE90223F9F760F9DC -:1088A000CDE90201DDE9020107B0BDEC048BBDE8B2 -:1088B000F04007F069BA07B0BDEC048BF0BD0000D2 -:1088C000000000000000203F2DE9504387B004461F -:1088D0000020019000900146CDE90201CDE904019C -:1088E00020786178090141EA0030A17840EA11104E -:1088F00000900098FFF742FECDE90401E07821796D -:10890000090141EA0030617940EA111001900198B3 -:10891000FFF7C4FECDE90201DDE902012070DDE9C7 -:10892000020100B200126070DDE902010014A070C3 -:108930000020E070BF4ADDE904016426A6FB00893F -:1089400006FB0199C2E90089D2E900012071D2E950 -:10895000000100B200126071012007B0BDE8508331 -:1089600070B50446A54D05F10C00FFF7ADFF0646B6 -:10897000287A002805D1062229462046F9F777FBF8 -:108980000BE0062205F10C012046F9F770FB0622E8 -:1089900005F10C012846F9F76AFB012028723046E0 -:1089A00070BD0000000000000000000080B5032141 -:1089B00000910346F722EC210520F7F735FC401E15 -:1089C0008041C043C00F02BD80B503210091034622 -:1089D000FA22EC210520F7F727FC401E8041C04316 -:1089E000C00F02BD30B585B0002102910A460B468A -:1089F000CDE9002301784278120142EA0131807802 -:108A000041EA101002900298FFF7B8FDCDE900018D -:108A1000DDE900016422A2FB004502FB0155854807 -:108A2000C0E90045012005B030BD00000000000095 -:108A30000000003F000000000000C03EF0B4012133 -:108A400000226C4B1C88002C2BD1B3F90240002C67 -:108A500027D1B3F90440002C23D1DC88002C20D18D -:108A6000B3F90840002C1CD1B3F90A40002C18D1EE -:108A7000B3F90C40002C14D1B3F90E40002C10D1E6 -:108A8000B3F91040002C0CD1B3F91240002C08D1DE -:108A9000B3F91440002C04D1B3F91640002C00D1D6 -:108AA0000A461C8844F63825AC4271D31C8848F627 -:108AB000B905AC426CD2B3F9024045F2F055AC4274 -:108AC00066DB47F23154B3F90250A54260DAB3F9DC -:108AD0000450594EB5425BDBB3F90450574EB542D2 -:108AE00056DADD8847F23056B54251D3DD884AF276 -:108AF0001146B5424CD2B3F90850514EB54247DB4E -:108B0000B3F908504F4EB54242DAB3F90A504E4E0F -:108B1000B5423DDBB3F90A5041F64176B54237DA4A -:108B20004A4DB3F90C60AE4232DBB3F90C6044F24B -:108B30005167BE422CDAB3F90E60454FBE4227DBC7 -:108B4000B3F90E6040F24D47BE4221DAB3F910602E -:108B5000404FBE421CDBB3F9106040F2E937BE4221 -:108B600016DAB3F91260B3F91260B3F914603A4F30 -:108B7000BE420DDBB3F9146042F21177BE4207DA50 -:108B8000B3F91660AE4203DBB3F91630A34200DB43 -:108B9000521CD2B2022A00D1002101700846F0BC5A -:108BA000704770B582B00C46002506281FD12B48AF -:108BB0004069204ED6E90023002B01D1002A05D0C0 -:108BC000017F00290BD0407A002808D100A829464F -:108BD0000160FFF7F9FE054600A8FFF703FFD6E99D -:108BE00000012070D6E9000100B200126070284632 -:108BF00076BD0000B87A0020D47A002080380020AA -:108C00000000103F0000503F0000E03E0000B44074 -:108C10000000E03F0040EFC00000D03F0000F04007 -:108C20000000F03F000030410000303F006AB840D3 -:108C30000000B03FA87B002048F4FFFF19FCFFFFB5 -:108C400056CDFFFFC1E0FFFF78ECFFFFF0D8FFFF3C -:108C50000CFEFFFF18FCFFFFD08AFFFF0000002082 -:108C60000FF208010520F7F7FFBE0000AB840108F2 -:108C7000E18401085785010869850108FB84010822 -:108C800061890108000000003D8A0108A38B0108EA -:108C90008D488368DBB200F1160201780820F7F7EF -:108CA00085BA89488368DBB200F118020178082090 -:108CB000F7F77CBAF0B4854B5C78002500E06D1CBA -:108CC000EDB28D420ED22E5C7440082602E03C4686 -:108CD000E4B2761EF3D067002406F8D51C787C40F9 -:108CE000E4B2F6E7944201D1012000E00020F0BC9C -:108CF0007047CDE7FEB504460527734D0020009070 -:108D0000062301AA29780820F7F7D2FA0646012E91 -:108D100003D00FF2D410F7F700FA012EEED1384647 -:108D2000471E80B20028E9D001AFBA78022101A81D -:108D3000FFF7C0FF002807D07A7902210DF1070064 -:108D4000FFF7B8FF002805D10FF29410F7F7E5F907 -:108D50000020FEBDA888401CA880E9687A789DF8AC -:108D6000043042EA032241F217135A43921341F2AC -:108D70009413D21A01FA82F1E9602A693B79FF78EB -:108D800043EA072340F6C4177B439B1302FA83F39D -:108D90002B614F4A126A577F002F16D000B291FB09 -:108DA000F0F193FBF0F00023EB602B61AB802170BE -:108DB00009B209126170A07000B20012E070B2F93D -:108DC0005600012803DB012002E00020FEBD18460A -:108DD00020712046FAF7CCFF3046FEBD30B583B097 -:108DE000394CA368DBB204F11A0221780820F7F7A6 -:108DF000DDF900200090032301AA21780820F7F76D -:108E000057FA0546012D05D00FF2E400F7F785F972 -:108E100028463EBD01ADAA78022101A8FFF74AFF0E -:108E2000002801D100203EBD6878A1780840617813 -:108E3000884201D101203EBD00203EBD22480021D4 -:108E4000C160016181802CE7012070477CB5044638 -:108E50000020207006251C4EB368DBB206F11A0212 -:108E600031780820F7F7A2F900200090032301AA27 -:108E700031780820F7F71CFA01280ED02846451E45 -:108E8000012808DBF7F7CFF81E21F7F785FA284607 -:108E9000451E0128E0DA002076BD9DF8062002215B -:108EA00001A8FFF707FF002808D1F7F7BCF81E213B -:108EB000F7F772FA03A0F7F730F9E8E7012020701E -:108EC00076BD0000435243004C380020EC380020AF -:108ED000000000200FF220010820F7F7C5BD0000B8 -:108EE00054482D524632000054482D52463100005D -:108EF00054482D5046310000DD8D01083D8E01089B -:108F0000498E010800000000F38C0108F58C01086F -:108F1000000000004D8E01080000000010B5002484 -:108F2000F7F781F80069C00700D50124204610BD7D -:108F300000B58BB00020ADF82A000A208DF808009B -:108F400000208DF809008DF80A008DF80000182027 -:108F5000019000A8FBF7A6FD01200BB000BD00B5F5 -:108F60008BB00020ADF82A000A208DF80800002000 -:108F70008DF809008DF80A0001208DF800001820F6 -:108F8000019000A8FBF78EFD01200BB000BD00B5DD -:108F90008BB00020ADF82A000A208DF808000020D0 -:108FA0008DF809008DF80A0001208DF800001820C6 -:108FB000019000A8FBF776FD01200BB000BD012059 -:108FC000704710B50024F7F72EF80069C00700D5E8 -:108FD0000124204610BD00B58BB00020ADF82A005A -:108FE0000A208DF8080000208DF809008DF80A008D -:108FF0008DF800001920019000A8FBF753FD012017 -:109000000BB000BD00B58BB00020ADF82A000A20DF -:109010008DF8080000208DF809008DF80A00012065 -:109020008DF800001920019000A8FBF73BFD0120FE -:109030000BB000BD00B58BB00020ADF82A000A20AF -:109040008DF8080000208DF809008DF80A00012035 -:109050008DF800001920019000A8FBF723FD0120E6 -:109060000BB000BD0120704710B50024F6F7DBFF00 -:109070000069800700D50124204610BD00B58BB0E3 -:109080000020ADF82A000A208DF8080000208DF895 -:1090900009008DF80A008DF800001A20019000A840 -:1090A000FBF700FD01200BB000BD00B58BB0002028 -:1090B000ADF82A000A208DF8080000208DF809007C -:1090C0008DF80A0001208DF800001A20019000A8F8 -:1090D000FBF7E8FC01200BB000BD00B58BB0002011 -:1090E000ADF82A000A208DF8080000208DF809004C -:1090F0008DF80A0001208DF800001A20019000A8C8 -:10910000FBF7D0FC01200BB000BD0120704710B56B -:109110000024F6F788FF006900F00300032800D15F -:109120000124204610BD00B58BB0F6F77CFFB04897 -:10913000017841F0020101700020ADF82A000A20F8 -:109140008DF8080001208DF809008DF80A10002024 -:109150008DF800001B20019000A8FBF7A3FC012064 -:109160000BB000BD00B58BB0F6F75DFFA0480178ED -:1091700011F0FD01017013D10020ADF82A000A2082 -:109180008DF8080001208DF8090000208DF80A00F4 -:1091900001208DF800001B20019000A8FBF782FC45 -:1091A00001200BB000BD012070470120704710B5B1 -:1091B0000024F6F738FF006900F00700072800D107 -:1091C0000124204610BD00B58BB0F6F72CFF88486F -:1091D000017841F0010101700020ADF82A000A2059 -:1091E0008DF8080000208DF809008DF80A108DF820 -:1091F00000001B20019000A8FBF754FC01200BB0DD -:1092000000BD00B58BB0F6F70EFF7948017811F07C -:10921000FE01017012D10020ADF82A000A208DF85D -:10922000080000208DF809008DF80A0001208DF853 -:1092300000001B20019000A8FBF734FC01200BB0BC -:1092400000BD012070470120704710B50024F6F7DB -:10925000EAFE0069C00700D50124204610BD00B514 -:109260008BB00020ADF82A000A208DF808000020FD -:109270008DF809008DF80A008DF800001C2001907F -:1092800000A8FBF70FFC01200BB000BD00B58BB0B0 -:109290000020ADF82A000A208DF8080000208DF883 -:1092A00009008DF80A0001208DF800001C200190B3 -:1092B00000A8FBF7F7FB01200BB000BD00B58BB099 -:1092C0000020ADF82A000A208DF8080000208DF853 -:1092D00009008DF80A0001208DF800001C20019083 -:1092E00000A8FBF7DFFB01200BB000BD0120704799 -:1092F00070B58CB006460D46FBF720FB04460020F7 -:1093000000900422314600A8F8F7B1FE009A2946E1 -:109310000FF29010F6F701FF28460C3805283AD8CE -:10932000DFE800F0030D121717090098C4F8C40312 -:1093300001200CB070BD0098C4F86404F8E704F58F -:10934000717042218162F3E704F571700099016543 -:10935000EEE727480078002812D00021ADF82E1043 -:109360000A218DF80C1000218DF80D108DF80E00DB -:1093700001208DF804001B20029001A8FBF792FB4E -:109380000099284640B200F00CF8009004F5717086 -:1093900000998167CCE70FF21C10F6F7BEFE0020A3 -:1093A000C7E710B4134AD36B126C114C2478002C0D -:1093B0001AD00F2802D010280BD015E0507A0028C0 -:1093C00012D0906B806800280ED488420DDD0846CC -:1093D0000BE0587A002807D0986B8068002803D4E7 -:1093E000884202DD084600E0084610BC70470000D5 -:1093F000ECFD00200000002012B58BB001460C39B6 -:10940000052928D8DFE801F0031D1F21211B18249E -:109410000020ADF82A0001900A208DF808000520F0 -:109420008DF80000019404220BA90DF10900F8F752 -:109430001EFE00A8FBF736FB01200CB010BD1C245B -:10944000E6E71924E4E71A24E2E71B240B99FFF767 -:10945000A8FF0B90DCE70FF26400F6F75EFE002039 -:10946000EBE780B50FF25C010C20F7F7FDFA0FF285 -:1094700078011120F7F7F8FA0FF290010D20F7F7B5 -:10948000F3FA0FF2AC010E20F7F7EEFA0FF2C40177 -:109490000F20F7F7E9FA0FF2E0011020BDE80440D1 -:1094A000F7F7E2BA4D52322044523D25642C256430 -:1094B000000000004D523220534446004D523220ED -:1094C000524346001D8F0108318F01085F8F01084C -:1094D0008F8F010800000000BF8F0108F192010882 -:1094E00000000000000000004B9201085F9201089C -:1094F0008D920108BD92010800000000ED92010864 -:10950000F19201080000000000000000C38F010874 -:10951000D78F010805900108359001080000000070 -:1095200065900108F19201080000000000000000B1 -:10953000699001087D900108AB900108DB9001085B -:10954000000000000B910108F192010800000000EA -:10955000000000000F9101082791010865910108A2 -:10956000A791010800000000AB910108F1920108E9 -:109570000000000000000000AF910108C791010841 -:10958000039201084392010800000000479201087D -:10959000F19201080000000000000000D2B2203A61 -:1095A00022BF41FA02F0C91770472032D141D040A2 -:1095B00048409140D14048409140114170470000DF -:1095C00000B500BF130096469446103928BFA0E8A6 -:1095D0000C50FAD85FEA417C28BF0CC048BF40F865 -:1095E000042BC90728BF20F8022B48BF00F8012B25 -:1095F00000BD000062F30F2262F31F42401810F01A -:10960000030308D0C91A1FD3DB0748BF00F8012D98 -:1096100028BF20F8022D130030B414461546103927 -:1096200028BF20E93C00FAD8490728BF20E90C00F0 -:1096300048BF40F8042D890028BF20F8022D48BFFC -:1096400000F8012D30BC7047C91818BF00F8012D73 -:10965000CB0728BF00F8012D70470000DFF8741118 -:1096600000220A700A70012802D0042803D0704733 -:1096700001200870704705200870704710B45649E3 -:109680004A6802F00C02564B082A12D10A680C688C -:1096900004F03F04B3FBF4F30A68C2F388125A43A0 -:1096A0000B68C3F301435B1C5B00B2FBF3F2026087 -:1096B00000E003604A6802F0F0034A4A1B099B5C21 -:1096C000046824FA03F343604C6804F4E054A40AE9 -:1096D000A45CE3408360496801F46041490B895C04 -:1096E000426822FA01F1C16010BC70473B4900F4A6 -:1096F0004072B2F5407F06D10A6822F4F8123A4B64 -:1097000003401A430A608A6E000552EA10508866C8 -:109710007047364908607047354908607047354AD8 -:109720000029116802D008431060704721EA000048 -:1097300010607047304A0029116802D00843106059 -:10974000704721EA0000106070472C4A0029116818 -:1097500002D008431060704721EA00001060704793 -:10976000274A0029116802D008431060704721EA97 -:10977000000010607047234A0029116802D0084396 -:109780001060704721EA0000106070471E4A0029EF -:10979000116802D008431060704721EA0000106091 -:1097A0007047002142090A4B012A01D11A6804E0DE -:1097B000022A01D11A6F00E05A6F012300F01F0046 -:1097C00003FA00F0024200D0194608467047000034 -:1097D0000038024070380240043802400838024025 -:1097E0000024F4006CAF0020FFFCFF0F3C0E47424A -:1097F000400E474230380240403802404438024070 -:1098000010380240203802402438024080B52749F1 -:10981000884209D101210846FFF7A2FF002101205B -:10982000BDE80440FFF79CBF2149884209D10121CE -:109830000220FFF795FF00210220BDE80440FFF75A -:109840008FBF1C49884209D101210420FFF788FFFE -:1098500000210420BDE80440FFF782BF164988427A -:1098600009D101210820FFF77BFF00210820BDE876 -:109870000440FFF775BF1149884209D1012110202A -:10988000FFF76EFF00211020BDE80440FFF768BF1E -:109890000B49884209D101218020FFF761FF002197 -:1098A0008020BDE80440FFF75BBF01BD000002401F -:1098B0000004024000080240000C02400010024078 -:1098C000001C0240F0B4002232E0012393400C68F7 -:1098D0001C409C422BD154000325A540ED43066853 -:1098E0002E40066006680F79A7403E4306600E7959 -:1098F000012E01D0022E11D186682E408660866826 -:109900004F79A7403E438660466826EA03034360DA -:1099100043688E799640B6B233434360C3682B40A8 -:10992000C360C368CD7905FA04F42343C360521CB5 -:10993000102ACAD3F0BC70474FF6FF7101600021B6 -:10994000017141718171C171704700220069084243 -:1099500000D0012210467047018370474183704751 -:1099600010B4CB1000EB830001F007018900036AFB -:109970000F248C40A3430362036A02FA01F11943E6 -:10998000016210BC7047000080B5434988420BD18A -:1099900001214FF40010FFF7EEFE00214FF40010FC -:1099A000BDE80440FFF7E7BE3C4988420BD10121E6 -:1099B0004FF48000FFF7DFFE00214FF48000BDE888 -:1099C0000440FFF7D8BE364988420BD101214FF43D -:1099D0000000FFF7D0FE00214FF40000BDE8044076 -:1099E000FFF7C9BE01BD7FB504460D46A68800A895 -:1099F000FFF744FE02992B48B1FBF0F04FF6C0721E -:109A000032400243A28022884FF6FE731A40228021 -:109A10002A68254B9A420AD25200B1FBF2F10A465B -:109A200092B2042A00D20421401C208421E0EB8859 -:109A30004BF6FF76B34204D102EB4202B1FBF2F1E6 -:109A400006E019235A43B1FBF2F141F4804189B297 -:109A50000A0502D141F0010189B241F4004180B20E -:109A60004FF4967250434FF47A7290FBF2F0401C20 -:109A70002084A183208840F00100208020884FF6B8 -:109A8000F5310840A9880843698908432080A889DE -:109A90002989084320817FBD0054004000580040C0 -:109AA000005C004040420F00A186010000290188AF -:109AB00003D041F00101018070474FF6FE72114062 -:109AC000018070470029018803D041F48071018032 -:109AD00070474FF6FF6211400180704700290188EE -:109AE00003D041F40071018070474FF6FF521140DE -:109AF00001807047002A02D041F0010101E001F02D -:109B0000FE01018270470029018803D041F4806181 -:109B1000018070474FF6FF321140018070470029E5 -:109B2000018803D041F40041018070474904490C89 -:109B30000180704782B002460020034601930093E3 -:109B400000920A0F01920902090A019A002A03D021 -:109B5000009A1432009203E0090C009A1832009225 -:109B6000009A12680A4200D0012002B0704700003B -:109B700080B5554988420BD101214FF48050FFF741 -:109B800005FE00214FF48050BDE80440FFF7FEBD04 -:109B90004E4988420BD101214FF48040FFF7EBFD85 -:109BA00000214FF48040BDE80440FFF7E4BD484980 -:109BB00088420BD101214FF40040FFF7DCFD00216A -:109BC0004FF40040BDE80440FFF7D5BD01BD028859 -:109BD00002F441520B881A434B881A438B881A436C -:109BE000CB881A430B891A434B891A438B891A4332 -:109BF000CB891A430280828B4FF2FF731A40828313 -:109C0000098A01827047F0B40123828B4FF240042D -:109C10002240828302220284828B8C68022C02D131 -:109C20000023022439E08C88002C00D00223294C28 -:109C300065682D0203D5656825F400056560264D2D -:109C40002E68C6F388162D68C5F30275246804F0E3 -:109C50003F04224FB7FBF4F47443B4FBF5F58E6870 -:109C60000A24CF88B7F5007F06D12B0A6343B3FBE4 -:109C7000F6F35B1D9BB207E05B01B5FBF3F36343B7 -:109C8000B3FBF6F35B1D9BB2B3FBF4F303F00105EA -:109C90002C461B1B5C08A4B22B02A51EFE2D01D373 -:109CA000022400232343CC88234303840B881A43D4 -:109CB0004B881A438B881A438989114341F4006108 -:109CC0008183F0BC70470000003001400038004044 -:109CD000003C004004380240843802400024F40074 -:109CE0000029018803D041F04001018070474FF600 -:109CF000BF721140018070470029818B03D041F46D -:109D00008061818370474FF6FF3211408183704735 -:109D1000002A828802D011438180704722EA010123 -:109D20008180704700220089084200D0012210463D -:109D30007047000001684908490001600021016086 -:109D400041608160C1600161212141616A498842AD -:109D500003D16A483D21016070476949884204D1B6 -:109D600066484FF47461016070476649884204D1C7 -:109D700062484FF47411016070476349884204D10E -:109D80005E484FF07461016070476049884203D1BA -:109D90005A485F49416070475E49884203D157483D -:109DA0005D49416070475D49884203D153485C4931 -:109DB000416070475B49884204D150484FF03D51A3 -:109DC000416070475849884203D158483D2101609D -:109DD00070475749884204D154484FF47461016078 -:109DE00070475449884204D150484FF474110160BF -:109DF00070475149884204D14C484FF0746101606A -:109E000070474E49884203D14848414941607047F4 -:109E10004B49884203D145483F4941607047494911 -:109E2000884203D141483E494160704746498842D3 -:109E300003D13E484FF03D51416070470268434BAB -:109E40001A400B681A43CB681A434B691A438B6953 -:109E50001A43CB691A430B6A1A434B6A1A438B6A3B -:109E60001A434B6B1A438B6B1A4302604269D20848 -:109E7000CB6A53EAC2020B6B1A4342610A69426021 -:109E80004A6882608968C16070470029016803D010 -:109E900041F00101016070474908490001607047C5 -:109EA000002A01D001617047C1607047006800F06E -:109EB0000100704700221C4B984201D2244800E068 -:109EC00024488B0001D5406800E000680840224922 -:109ED000084200D0012210467047134A904201D236 -:109EE0001B4800E01B481C4A0A40890001D5C2609B -:109EF00070478260704700001060024008600240B6 -:109F00002860024040600240586002407060024099 -:109F10003D00002088600240400F0020A060024009 -:109F200000003D20B8600240106402400864024016 -:109F30002864024040640240586402407064024059 -:109F400088640240A0640240B86402403F801CF074 -:109F500000600240006402407D0F7D0F02490860EE -:109F6000704702490860704720000E4224000E42EC -:109F700070B504460026DFF83854CA20E861532043 -:109F8000E86100F018F8002811D0286820F040009F -:109F900028602868216808432860A068A860A8682D -:109FA000616840EA0140A86000F024F80126FF2023 -:109FB000E861304670BD81B000200090DFF8F40306 -:109FC0000168490613D44FF0FF310160016801F0C8 -:109FD0004001009A521C0092009AB2F5803F01D0D5 -:109FE0000029F3D00068800900F0010000E00120A2 -:109FF00001B07047DFF8BC03016821F08001016007 -:10A00000704781B000200090DFF8A813CA20886153 -:10A0100053208861086820F0A0000860086800F0FC -:10A020002000009A521C0092009AB2F5003F01D025 -:10A030000028F3D00868400900F00100FF228A617F -:10A0400001B07047F8B507460E460024DFF85C53B0 -:10A05000002FA86804D140060AD42046F07007E01B -:10A06000400603D5307800F0BEF901E02046F070DC -:10A070003078002F09D07178090241EA0040B178A8 -:10A080000843F17840EA01460FE000F0A1F90746E5 -:10A09000707800F09DF9000240EA0747B07800F0C0 -:10A0A00097F93843F17840EA0146CA2068625320A4 -:10A0B0006862FFF780FF00280FD0DFF8FC02304015 -:10A0C0002860FFF797FFA868800605D4FFF799FF7F -:10A0D000002802D0012400E00124FF20686220460D -:10A0E000F2BD10B50C46DFF8C4120968DFF8C822CB -:10A0F00011400A0C02F03F0323700B0A03F07F03A8 -:10A10000637001F07F01A17002F04001E17000284E -:10A110000BD1207800F067F92070607800F063F9C7 -:10A120006070A07800F05FF9A07010BDDFF88C12AD -:10A13000486A0968704770B506460D460024002E2F -:10A1400006D16878C10603D500F0EF000A306870C8 -:10A15000002E05D0687800F046F9A87800F043F9A1 -:10A16000E878002E09D06978090241EA0040A97810 -:10A170000843297840EA41360FE000F029F9064605 -:10A18000687800F025F9000240EA0646A87800F059 -:10A190001FF93043297840EA4136DFF82052CA20BF -:10A1A000286253202862FFF706FF00280FD0DFF84F -:10A1B000100230402860FFF71DFF6868800605D454 -:10A1C000FFF71FFF002802D0012400E00124FF2038 -:10A1D0002862204670BD10B50C46DFF8E011096812 -:10A1E000DFF8DC2111400A0CE2700A0A02F01F02BB -:10A1F000627001F03F02A270490B01F0070121706B -:10A2000000280BD1E07800F0EEF8E070607800F004 -:10A21000EAF86070A07800F0E6F8A07010BDDFF8F2 -:10A220009011CA22CA615322CA610A68D208D200B8 -:10A230000A600A6810430860FF20C8617047DFF8B1 -:10A240008411CA220A6153220A610860FF20086152 -:10A25000704781B000210091DFF85411CA22CA6111 -:10A260005322CA610028086804D040F48060086066 -:10A27000012012E020F480600860486800F00400CB -:10A28000009A521C0092009AB2F5803F01D000283B -:10A29000F3D04868800800F00100FF22CA6101B0D5 -:10A2A000704781B000220092474A0092009A02EB68 -:10A2B000800000900098016001B0704781B00021DB -:10A2C000009141490091009901EB800000900098B5 -:10A2D000006801B0704738B500242246344DCA23C7 -:10A2E000EB615323EB616B681B0701D406E0521C42 -:10A2F0006B681B0702D5B2F5805FF8D16A68120758 -:10A3000009D42A68D20606D408436862FFF779FEAA -:10A31000002800D00124FF20E861204632BD244AF5 -:10A32000CA23D3615323D36100F0040320F0040057 -:10A330000029116805D008431060906B18439063A2 -:10A3400005E021EA00001060906B98439063FF20C5 -:10A35000D06170470021174A12681C4B1A40024214 -:10A3600000D001210846704710B40021104A936BB9 -:10A3700003F004031468044003EAD0332343526813 -:10A3800002EA101002D0000400D00121084610BCDF -:10A39000704708490003000C40F080000A6802F092 -:10A3A000800262EA00000860704700000028004058 -:10A3B000082800400C2800407F7F7F0004280040D0 -:10A3C0003FFFFF0014280040502800407F3F01005D -:10A3D000002101E0491C0A38C0B20A28FAD240EA3A -:10A3E0000110C0B27047010901EB810200F00F00BB -:10A3F00000EB4200C0B27047EFF303807047BFF339 -:10A400004F8FDFF87C05016801F4E061DFF8742507 -:10A4100011430160BFF34F8FFEE770B5ADF5935D5B -:10A42000054600A841F25C21F7F77AFB00F070FACC -:10A43000002840F0718100F001FA05F0F3FCF320F0 -:10A4400005F06AFDDFF8404500206060DFF83C055C -:10A4500020600020E06009E055F8211005F026FD9D -:10A460002068001D2060E068401CE060E168206812 -:10A470000829F1D3294605F019FD2068001D206048 -:10A48000EFF3088105F012FD2068001D2060EFF356 -:10A49000098105F00BFD2068001D2060EFF3148199 -:10A4A00005F004FD2068001D2060EFF3058105F034 -:10A4B000FDFC2068001D2060EFF3008105F0F6FC34 -:10A4C0002068001D2060FFF797FF0146206805F017 -:10A4D000EDFC2068001D2060EFF3108105F0E6FC24 -:10A4E0002068001D2060EFF3118105F0DFFC20687B -:10A4F000001D2060EFF3138105F0D8FC2068001DDB -:10A500002060F1EE101A05F0D1FC2068001D411CFE -:10A510002160432105F0E6FC2068411C21605021A8 -:10A5200005F0E0FC2068411C2160552105F0DAFCB3 -:10A53000DFF85C0420600020A0600FF2E81516E050 -:10A5400020690168206805F0B1FC2068001D2060CA -:10A550002069001D2061E068401CE060A068E1689F -:10A5600005EBC00252689142EAD3401CA060A0688B -:10A57000092805D255F8300020610020E060EDE7A1 -:10A580002068411C2160432105F0ACFC2068411C7F -:10A5900021604F2105F0A6FC2068411C216052215A -:10A5A00005F0A0FC2068411C2160452105F09AFCC3 -:10A5B000DFF8E00320600020A0600FF2B01516E085 -:10A5C00020690168206805F071FC2068001D20608A -:10A5D0002069001D2061E068401CE060A068E1681F -:10A5E00005EBC00252689142EAD3401CA060A0680B -:10A5F0001A2805D255F8300020610020E060EDE710 -:10A60000E54820605021E54805F06CFC2068411CBD -:10A610002160452105F066FC2068411C2160522123 -:10A6200005F060FC2068411C2160492105F05AFCBE -:10A630000D22DB4900A8F7F71AFD0422D9490DF1D4 -:10A640000D00F7F714FD0422D7490DF11100F7F7BB -:10A650000EFD0422D5490DF11500F7F708FD04227F -:10A66000D3490DF11900F7F702FD0422D1490DF18C -:10A670001D00F7F7FCFC142204F114010DF1210078 -:10A68000F7F7F5FC4FF48E700546F5F7CCFC2A463B -:10A6900001460DF13500F7F7EAFC4FF48E7000A982 -:10A6A000401800F235058820C0460646F5F74CFFF5 -:10A6B000324601462846F7F7DAFC8820C0460020DB -:10A6C000E06008E0421C226000AA895C05F00AFCF8 -:10A6D000E068401CE060E168206841F25C22914241 -:10A6E000F0D3411C2160472105F0FCFB2068411C90 -:10A6F00021604C2105F0F6FB2068411C21604F21B0 -:10A7000005F0F0FB2068411C2160422105F0EAFBC6 -:10A7100005F091FB00F0ACF8FFF771FE0DF5935DCD -:10A7200070BD000008E000E00500000000ED00E062 -:10A730001000000088ED00E00700000000E100E0EC -:10A740000800000000E200E00800000000E300E074 -:10A750000800000000E400E03C00000000EF00E022 -:10A760000100000034EF00E003000000006402403C -:10A77000340000000060024034000000003C024051 -:10A78000060000000038024024000000001C0240C7 -:10A790000A000000000802400A0000000004024015 -:10A7A0000A000000000002400A000000003C0140D6 -:10A7B00006000000003801400900000000300140A0 -:10A7C00009000000002201401400000000210140A7 -:10A7D000140000000020014014000000001001409F -:10A7E00007000000000401401400000000000140C8 -:10A7F000140000000070004002000000005C0040F7 -:10A800000A000000005800400A0000000054004008 -:10A810000A000000003C0040090000000038004031 -:10A82000090000000030004004000000002C00403F -:10A8300003000000002800402800000010B505F0CB -:10A84000F1FAF32005F068FB4F4C1820A06002E0FD -:10A85000A0680830A060A068202805D2002105F07B -:10A86000F0FA0928F4D0FEE7BDE8104005F0E3BA9D -:10A87000F8B551484168514A11400C0C0A0A02F0DF -:10A880001F0501F03F0600684D4901EA000705F089 -:10A89000C9FAF32005F040FB45480168494805F036 -:10A8A00005FBFF21484805F01DFB2146474805F000 -:10A8B00019FB2946464805F015FB3146454805F089 -:10A8C00011FB380C00F03F01434805F00BFB380A40 -:10A8D00000F07F01414805F005FB07F07F0140488B -:10A8E00005F000FBF5213F4805F0FCFABDE8F1401A -:10A8F00005F0A1BA80B505F095FAF32005F00CFB40 -:10A90000AA21384805F0EEFABDE8014005F093BAF7 -:10A91000002034490978F52900D10120704710B58D -:10A920000446F8F7D9FBC0B2142800D3132002461E -:10A9300021462D48F7F79BFB4FF0AC30007810BD57 -:10A9400080B500F055F8BDE8014058E580B5FFF747 -:10A95000D1FF4FF480420D490020BDE80840F9F7CF -:10A96000E5B910B500F053F8204C2046F8F7B4FBD9 -:10A97000024621460020BDE81040F9F7D7B9000093 -:10A980000CED00E00400FA05447A002000C0000845 -:10A9900050C0000830C20008B1C80008B0C80008A4 -:10A9A000A87A0020E4380020BC7B0020B87B00207F -:10A9B000E8380020B8380020002800403FFFFF00A2 -:10A9C0007F7F7F00F4FF0008F8FF0008F9FF000810 -:10A9D000FAFF0008FBFF0008FCFF0008FDFF00086D -:10A9E000FEFF0008FFFF0008587A0020BC38002056 -:10A9F00080B501214FF48020FEF791FE0120FFF782 -:10AA0000ADFA94210F20BDE80440FFF74ABC80B5A1 -:10AA100001214FF48020FEF782FE0120FFF79EFA0D -:10AA200000210F20BDE80440FFF73BBC10B5002417 -:10AA300001214FF48020FEF772FE0120FFF78EFA0D -:10AA40000F20FFF73BFC942800D10124204610BDC5 -:10AA500030B40168CB4321498279002A27D00A46C5 -:10AA600014682340136053680468A3435360037958 -:10AA7000CC18236805682B43236093680468A343BC -:10AA80009360D3680468A343D36043790568102BAF -:10AA900007D1916829439160D16800680843D0606C -:10AAA0000AE051FA83F420682843206004E000792A -:10AAB0000C1820681840206030BC70470021074AFD -:10AAC000136803405269024202D0002B00D00121DA -:10AAD000084670470249086070470000003C01408A -:10AAE000143C01401949084319490860704770B483 -:10AAF00003781A460121C478002C1DD0144B1B6822 -:10AB000003F4E063C3F5E0631B0A4478C3F1040572 -:10AB1000AC4085780F2646FA03F32B4023431B01F4 -:10AB20000C4C1355007842110B4B00F01F0001FA3A -:10AB300000F043F8220006E05011084A03F01F031A -:10AB4000994042F8201070BC704700000000FA05E0 -:10AB50000CED00E000E400E000E100E080E100E056 -:10AB600030B401F00302920021F00301054BCC58F0 -:10AB70000F259540AC43CC50CC5890402043C85052 -:10AB800030BC70470838014080B501214FF4807017 -:10AB9000FEF7FCFD00214FF48070BDE80440FEF795 -:10ABA000F5BD42684D4B1A400B7942EA03220B680F -:10ABB0001A43426082684A4B1A400B691A43CB68B9 -:10ABC0001A438B681A434B7942EA43028260C26A95 -:10ABD00022F47002097D491EC9B242EA0151C162E4 -:10ABE000704700210160017141718160C1600161A4 -:10ABF0000121017570473B490A683B4B1A400368C5 -:10AC00001A4343681A4383681A43C06810430860B4 -:10AC100070470021016041608160C1607047002978 -:10AC2000816803D041F00101816070474908490003 -:10AC30008160704770B407240A290BD3C568A1F15D -:10AC40000A0606EB4606B44025EA0404B340234353 -:10AC5000C36008E0056901EB4106B44025EA04043D -:10AC6000B340234303611F23072A0AD2446B521EB9 -:10AC700002EB8202934024EA0303914019434163AB -:10AC800016E00D2A0AD2046BD21F02EB8202934017 -:10AC900024EA030391401943016309E0C46A0D3AB1 -:10ACA00002EB8202934024EA030391401943C162FC -:10ACB00070BC7047816841F0804181607047002915 -:10ACC000816803D041F480618160704721F4806124 -:10ACD00081607047C06C80B270470000FFFEFFFCCF -:10ACE000FDF7FFC004230140E030FCFF00220068B4 -:10ACF000084200D001221046704700002DE9F04FB5 -:10AD0000A1B0804617461D46029102AE0020706237 -:10AD100011AC6FF000490AE017F8011B0298C04718 -:10AD20000290002800F06A82706A401C70623878D5 -:10AD300008B9706A64E22528EED10020F060306125 -:10AD40007061B061F061306201E040F0010017F81D -:10AD5000011F2029F9D023290DD02B2904D02D291A -:10AD600006D030290AD00CE040F0020080B2EEE7B5 -:10AD700040F00400FAE740F00800F7E740F0100068 -:10AD8000F4E72A290DD129680A1D2A600968F162B1 -:10AD9000002904D54942F16240F0040080B27F1CD2 -:10ADA00012E00021F16209E0F16A494505D001EBAA -:10ADB000810302EB43013039F1627F1C3A78A2F142 -:10ADC0003001C9B20A29EFD339782E2903D04FF0C8 -:10ADD000FF31B1621DE017F8011F2A2906D1296849 -:10ADE0000A1D2A600968B1627F1C12E00021B1626D -:10ADF00009E0B16A494505D001EB810302EB43014B -:10AE00003039B1627F1C3A78A2F13001C9B20A2907 -:10AE1000EFD3308639780FF6983005F0BBF808B1DB -:10AE200017F8010B8DF83A009DF83A00682804D114 -:10AE3000387868280AD1622005E06C2804BF387889 -:10AE40006C2803D171208DF83A007F1C11A8B060E6 -:10AE50003978B1F1250023D01C3871D0001F0228A9 -:10AE60006ED9133800F09680093869D0801E00F042 -:10AE70002781401E00F0D180401E022860D9001FAB -:10AE800000F0CB80401F30D0401E00F08380401E79 -:10AE900020D0C01E09D0801E7CD0C01E7AD017E101 -:10AEA000F068411CF16025211BE12868011D296023 -:10AEB00000687060B26A002A02D5F8F70DF907E061 -:10AEC000002105F073F800281ABF7168401AB06AB3 -:10AED000306107E12868011D296000680021CDE983 -:10AEE000000111A870607821E6E09DF83A00622820 -:10AEF00018D0682806D06A280BD06C2819D0712881 -:10AF000007D016E02868011D2960716A0068018079 -:10AF1000E8E02A68101D2860706AC1171268C2E94B -:10AF20000001DFE02868011D2960716A0068017076 -:10AF3000D8E02868011D2960716A00680160D1E0CD -:10AF40002868C01D20F00700286000F108022A6070 -:10AF5000D0E90023CDE90023002B04D5F068421C82 -:10AF6000F2602D220DE0308E820704D5F068421C7D -:10AF7000F2602B2205E0C00704D5F068421CF260A5 -:10AF800020220255F06811AA8018706000A800F015 -:10AF9000C5F9A7E09DF83A006C2808BF2A6811D0CF -:10AFA000712808BF2A6802D06A282A680AD1D21DEF -:10AFB00022F007022A6094460CF108022A60DCE9BC -:10AFC000002303E0131D2B6012680023CDE900234A -:10AFD000682808BF92B207D0622808BFD2B203D057 -:10AFE000742818BF7A2802D10023CDE9002396F8EF -:10AFF000300000075CD5DDE90023002B08BF002AE4 -:10B0000056D041F02000782852D1F0683022025505 -:10B01000401C421CF26001554AE09DF83A0062284B -:10B020000CD0682810D06A281AD06C2823D0712838 -:10B0300016D074281FD07A280CD01CE02868021D76 -:10B040002A6090F900201AE02868021D2A60B0F9F1 -:10B05000002014E02868021D2A60026800230FE027 -:10B060002868C01D20F00700286000F108022A604F -:10B07000D0E9002304E02868021D2A600268D31783 -:10B08000CDE90023002B04DAF068421CF2602D2287 -:10B090000DE0308E820704D5F068421CF2602B224E -:10B0A00005E0C00704D5F068421CF260202202557A -:10B0B000F06811AA8018706000A800F0A4F811E0F0 -:10B0C000F068411CF16029680A1D2A60096808E0DF -:10B0D000F068421CF2602522025519B1F068421C4A -:10B0E000F26001557F1CF06AF168401AB169401A9C -:10B0F0003169401AF169401A7169401A316AA0EB4E -:10B10000010A96F83000400711D420208DF8400045 -:10B11000BAF1010F0BDBD346012310AA00A9404668 -:10B1200000F02FFC002869D1BBF1010BF4D1F368CA -:10B1300011AA00A9404600F024FC00285ED130206E -:10B140008DF84000D6F818B0BBF1010F0ADB0123DF -:10B1500010AA00A9404600F014FC00284ED1BBF113 -:10B16000010BF4D13369726800A9404600F009FC74 -:10B17000002843D130208DF84000D6F81CB0BBF138 -:10B18000010F09DB012310AA00A9404600F0F9FBDA -:10B19000A0BBBBF1010BF5D173693069716842182E -:10B1A00000A9404600F0EDFB40BB30208DF8400088 -:10B1B000D6F820B0BBF1010F09DB012310AA00A9CA -:10B1C000404600F0DEFBC8B9BBF1010BF5D196F8A3 -:10B1D000300040077FF5ABAD20208DF84000BAF17C -:10B1E000010FFFF6A4AD012310AA00A9404600F00C -:10B1F000C8FB18B9BAF1010AF5D198E54FF0FF3054 -:10B2000021B0BDE8F08F2DE9FA4782B006463569D6 -:10B210006F2908BF082705D041F02000782814BF07 -:10B220000A2710273C24D6E90001804689469DF86C -:10B230000820642A18BF692A05D1002903DAD8F149 -:10B24000000869EB4909B9F1000F08BFB8F1000F18 -:10B250000CD1306B50B9082F3BD196F8380000075D -:10B2600037D53B24302085F83B0032E0A4F1010AB9 -:10B270005446FB17404649463A4602F045F9CDE9A7 -:10B280000089B846A8FB0023DDE90089A8EB02028B -:10B290003032D2B23A2A03D39DF80830513B9A1883 -:10B2A0000AF8052080465FEA010908BFB8F1000FDF -:10B2B00003D0F06861198842D8D3082F09D196F8D5 -:10B2C0003800000705D5605D302802D0641E3020AC -:10B2D0006055C4F13C00B0616119F160316B884286 -:10B2E00007DA081A3062308F4FF6EF710840308766 -:10B2F00010E000290ED596F8381001F0140110293D -:10B3000008D1716B7269891A326A891A081A012880 -:10B31000A8BF306204B0BDE8F08700002DE9F24F0D -:10B320008EB0044604AED4E90001CDE902019DF8D7 -:10B33000380040F020008DF8000061280BD0206B11 -:10B34000002848BF062005D404BF9DF800006728E8 -:10B3500001D1012020636168C1F30A5040F2FF73FC -:10B3600098421ED1080304BF206800280AD1032098 -:10B37000A0619DF838006138C0B21A2838D30FF2A6 -:10B38000446109E00320A0619DF838006138C0B233 -:10B390001A282AD30FF224610322E068F9F788FC07 -:10B3A000B9E1012817DA204604F02CFE012812DB4F -:10B3B000002700209DF80010612920D1E16830228B -:10B3C00001F8012B4A1CE2609DF83820612A0CBF6D -:10B3D000782258220FE040F2FE31626861F31E527B -:10B3E0006260471A4FF0FF30E4E70FF2CC51D3E729 -:10B3F0000FF2CC51D0E70A706169891C616110B904 -:10B40000002500277EE19DF80000612840F097802C -:10B41000206B00284CBF2125451C2DB26E1CD4E9A1 -:10B420000089DDE9020100220023F6F709FE3ABF98 -:10B4300089F00040CDE90280CDE902893F1F8DF8F7 -:10B4400010200DF11108012E35DBDDE9020100228B -:10B450000023F6F7DDFD2ED21C2102A804F0F4FD36 -:10B46000DDE90201F6F730FB8146F61F012E09DB0C -:10B47000F6F75EFB02460B46DDE90201F6F7E4FB58 -:10B48000CDE9020108F20700072105E009F00F02EB -:10B4900000F8012D4FEA2919B9F1010F01DB491E0E -:10B4A000F4D5491E5CBF002200F8012DF9D500F249 -:10B4B0000708012EC9DA0DF11100A8EB00010DF10A -:10B4C0001106A942B8BF0D462DB2002D30D4284632 -:10B4D000884206DA04A941184978082928BF0F21B3 -:10B4E00000D2002104AA821800E06D1E401E12F84E -:10B4F00001398B42F9D00F2904D104A941184A78A7 -:10B50000521C4A70002802D504AE6D1C3F1D2DB29E -:10B51000681E0DD481190A783032D2B23A2A03D388 -:10B520009DF838303A3B9A1801F80129401EF2D5AF -:10B53000206B002840F1E680681E2063E2E0DDE930 -:10B54000020100220023F6F77BFD3CBF81F00041A1 -:10B55000CDE902013FB247F297507843474990FB4B -:10B56000F1F73FB2C7F107069246DFF814B1012E9A -:10B5700019DBDDE90289F00707D552465B464046F4 -:10B580004946F6F7C3F98046894676105046594633 -:10B5900052465B46F6F7BAF982468B46002EEAD150 -:10B5A000CDE9028921E076429046DFF8D89012E09A -:10B5B000F00707D552465B4640464946F6F7A6F9DE -:10B5C0008046894676105046594652465B46F6F705 -:10B5D0009DF982468B46002EEAD1DDE90201424602 -:10B5E0004B46F6F7F1FBCDE902019DF80000662815 -:10B5F0000CBF07F10A000620216B4518142DA8BFC7 -:10B60000132530208DF810000DF11106DFF8789029 -:10B61000012D3BDBDDE90201F6F76CFA06F10801CA -:10B6200004220A26B0FBF6F303EB830EA0EB4E00D8 -:10B63000303001F8010DB3FBF6F000EB8006A3EB10 -:10B640004603303301F8013D521EEAD101F10806EC -:10B65000083D012DDCDBDDE90201F6F74BFAF6F7D8 -:10B6600071FA02460B46DDE90201F6F7EDFA002217 -:10B670004B46F6F74BF9CDE90201CBE7A086010076 -:10B68000000024400000F03F84D797410DF11100E5 -:10B69000301A0DF1110602E0401E7F1E761C317833 -:10B6A0003029F9D09DF80010662902D13FB2791CEB -:10B6B00003E065290CBF01210021226B8D182DB2FA -:10B6C000A842B8BF05462DB2002D1BD429468142A1 -:10B6D00004DA885D352828BF392000D230208A1945 -:10B6E000521E00E06D1E491E12F801398342F9D046 -:10B6F000392802D1885D401C8855002902D5761E64 -:10B700006D1C7F1C3FB200972BB232469DF838105B -:10B71000204600F003F80FB0BDE8F08F2DE9F043AC -:10B7200085B00546894617461E46D5F83080012E5D -:10B7300002DA01260FF2902749F02000BDF93040CF -:10B74000662808BF641C18D0672840F082806FF01C -:10B7500003008442C0F28380444580F28080641CF0 -:10B7600095F83800000702D44645B8BFB04624B269 -:10B77000B8EB040848BF4FF00008E868A96924B294 -:10B78000012C25DA4A1C30230B54B8F1010F03DADF -:10B7900095F83810090702D52E211154521CAA61C0 -:10B7A00018EB040FB8BFC8F1000424B2614269620B -:10B7B000A044B045B8BF464636B2EE61324639467F -:10B7C000AB691818F9F774FAA8EB0600A862C1E093 -:10B7D0000818A64218DA32463946F9F769FAA96913 -:10B7E0007118A961A01B6862B8F1010F03DA95F81E -:10B7F0003800000705D5E8682E220A54E869401C85 -:10B80000E861C5F82880A5E022463946F9F750FAE4 -:10B81000A8692018361BB8F1010F03DA95F8381023 -:10B82000090703D5E9682E224254401CA86136B2AC -:10B83000B045B8BF464636B23246E119EB68C0188B -:10B84000F9F736FAA8693018A861A8EB0600686213 -:10B8500080E0B9F1610F16D14FF0700918E046454C -:10B8600004DA95F83810090758BFB046B8F1010856 -:10B8700048BF4FF00008B9F1670F14BF4FF04509FA -:10B880004FF0650904E0B9F1410F08BF4FF05009CE -:10B89000A9694A1CE86817F8013B0B54B8F1010F7D -:10B8A00005DA95F83810090758BFAA6117D52E2177 -:10B8B0001154531CAB61B8F1010F10DB761E36B288 -:10B8C000B045B8BF464636B2324639461818F9F781 -:10B8D000EFF9A8693018A861A8EB06006862A869AA -:10B8E000E968471807F8019B002C03D42B2007F8C0 -:10B8F000010B03E02D2007F8010B644200260DF137 -:10B90000080809E00A22214600A804F027FC019853 -:10B9100008F8010B009C761C24B2012CF2DA022EEE -:10B9200006DA49F02000652804BF302007F8010B33 -:10B930004EB9302007F8010B07E0761E02A8305CF4 -:10B94000303007F8010B012EF7DAA869E9684018D2 -:10B95000381AE86195F8380000F0140010280DD16D -:10B960006869A9690818696A0818E9690818A96A5C -:10B970000818696B8842BCBF081A286205B0BDE888 -:10B98000F083F8B504460D4616461F46002077B1F1 -:10B9900016F8011BA868A047A86030B1E86A401CEF -:10B9A000E86200207F1EF3D1F2BD4FF0FF30F2BD00 -:10B9B000686A6C747A4C00006E616E004E414E00F5 -:10B9C000696E6600494E46003000000010B5EFF386 -:10B9D000108072B60A4C216841F47F01216080F327 -:10B9E0001088A06E10F4700F04BFA72004F0BEFBF7 -:10B9F0004FF00070C4F81C020020C4F8140210BDFF -:10BA000020ED00E080B5F4F79FFDDFF8C81808606E -:10BA1000012002BDF0B4049C059D8E1E012E01DAAA -:10BA20000C36401E3C216427B0FBF7F7C7EB9007AC -:10BA30004FF4C87CB0FBFCFC674440F26F1C0CFB6D -:10BA400006F64FF00C0CB6FBFCF6F619921940F214 -:10BA50006D1606FB0020DFF88028101800EB40026E -:10BA600003EBC20001FB004001FB0050F0BC70473B -:10BA70001CB50C4601680191416800918368C26859 -:10BA80000169491C406900F26C70FFF7C3FF206038 -:10BA9000002016BD10B58EB0DFF84008046801A97B -:10BAA0000020FEF71EFB00A90020FEF794FB9DF886 -:10BAB000040006909DF8050005909DF8060004908E -:10BAC0009DF80100401E08909DF8020007909DF827 -:10BAD00003006430099002A904A8FFF7C9FF4FF4DE -:10BAE0007A706043400AC0F57A700390029A4FF46E -:10BAF0007A73C117E3FB02010EB010BD10B5FFF75A -:10BB0000C9FFDFF8DC47D4E90023821A0023012BA8 -:10BB100005DB01DC002A02D3C4E900011A46104605 -:10BB200010BDF0B583B0044600A800210A4606C047 -:10BB3000A069E16845182888ADF80000B5F90270E1 -:10BB400000A84780B5F904608680BDF80000B4F80D -:10BB50005810401A2880B4F85A00381A6880B4F88F -:10BB60005C00301AA880BDF90000B5F90010C913B7 -:10BB7000B1EBE03F13D0B4F95810C913B1EBE03F7B -:10BB80000DD00FF27070F4F7C8FAB5F90000012873 -:10BB900002DBDFF8500701E047F6FF702880B5F9B7 -:10BBA0000210C913B1EBE73F13D0B4F95A10C9130F -:10BBB000B1EBE73F0DD00FF24870F4F7AEFAB5F9EC -:10BBC0000200012802DBDFF81C0701E047F6FF70E6 -:10BBD0006880B5F90410C913B1EBE63F13D0B4F98E -:10BBE0005C10C913B1EBE63F0DD00FF22070F4F7F3 -:10BBF00094FAB5F90400012802DBDFF8E80601E059 -:10BC000047F6FF70A88094F90800002804D10020AE -:10BC100000E0401C0328FCDBF7BD000070B584B0D9 -:10BC2000044600A800210A460B460EC0A069E16840 -:10BC30004518164694F90800012802D12046FFF75E -:10BC400070FF94F908000146012902D9C91E40F08D -:10BC50008980002801D14FF6FF76DFF87816096851 -:10BC6000411891F87010491E06295ED8DFE801F0EE -:10BC700004101D2936424F00B5F90210009100A9A9 -:10BC8000B5F90020B21A4A60B5F904208A6056E07E -:10BC9000B5F90010711A009100A9B5F90220B21A85 -:10BCA0004A60B5F904208A6049E0B5F90210711ABA -:10BCB000009100A9B5F900204A60B5F904208A6016 -:10BCC0003DE0B5F90010711A009100A9B5F9022004 -:10BCD0004A60B5F90420B21A8A6030E0B5F9021062 -:10BCE000009100A9B5F900204A60B5F90420B21A04 -:10BCF0008A6024E0B5F90010009100A9B5F902208E -:10BD0000B21A4A60B5F90420B21A8A6017E0B5F990 -:10BD10000210711A009100A9B5F90020B21A4A6008 -:10BD2000B5F90420B21A8A6009E0B5F90010009153 -:10BD300000A9B5F902204A60B5F904208A600128FB -:10BD40000AD1002006E051F8202002F30F0241F84A -:10BD50002020401C0328F6DB009828804868688073 -:10BD60008868A88094F90800002802D12046FFF7CF -:10BD7000D8FE012004B070BD70B52DED028B84B0EB -:10BD800001A9002213460CC18169C268891890F983 -:10BD900008000A2800F2CD80DFE800F00631A9CBC8 -:10BDA000CB97CBCB71B6C4000888ADF80400B1F9CD -:10BDB000024001A84480B1F904508580DFF81405E1 -:10BDC00000689FEDB70ABDF9041000EE901AF8EE76 -:10BDD000E00A60EE800AC0ED000A00EE904AF8EE3C -:10BDE000E00A60EE800AC0ED010A00EE905AF8EE1B -:10BDF000E00A20EE800A001D80ED010A99E0088823 -:10BE0000ADF80400B1F9024001A84480B1F9045032 -:10BE10008580DFF8C0040068061D9FEDD18BBDF959 -:10BE2000040000EE100AB8EEC00A10EE100AF5F792 -:10BE300035FD53EC182BF5F769FD04F0A9F9B06056 -:10BE400000EE104AB8EEC00A10EE100AF5F726FD13 -:10BE500053EC182BF5F75AFD04F09AF9F06000EE58 -:10BE6000105AB8EEC00A10EE100AF5F717FD53ECA1 -:10BE7000182BF5F74BFD04F08BF9306159E01846AB -:10BE8000ADF80200ADF800000888ADF8020048885F -:10BE9000ADF80000DFF83C040068061D9FEDB20A13 -:10BEA000BDF9020000EE900AF8EEE00A60EE800AAA -:10BEB000C6ED0E0ABDF9000000EE900AF8EEE00AA9 -:10BEC00020EE800A86ED0F0A33E0184603900868DA -:10BED00003909DED030AB8EEC00ADFEDA30A20EE41 -:10BEE000200ADFF8F003006880ED0C0A21E0DFF89B -:10BEF000E40300680A88A0F84A2000F24A004A8851 -:10BF000042808988818014E0DFF8C803006800F26D -:10BF10004A000A88C2804A8802818A884281C98888 -:10BF2000818106E0DFF8AC030068B1F90010A0F8E9 -:10BF30005810012004B0BDEC028B70BD70B50D46E9 -:10BF4000DFF8A41351F820400026207F002801D1FB -:10BF5000304670BD607A002803D0206E806880472C -:10BF600006462846216EC96988470546002E02D03C -:10BF7000206E40688047284670BD9B0701D542F27D -:10BF8000107292FBF1F190F8222051430069814236 -:10BF900001DA0120704700207047002901D4816434 -:10BFA000C164002A03D4910701D580F8202070478E -:10BFB000002903D400218164416181617047F2B599 -:10BFC0008CB00446154619460020ADF82A000190B1 -:10BFD0000A208DF8080000208DF809008DF80A006D -:10BFE000C14850F824600227307F002831D09DF9E5 -:10BFF0004820002A08D4D00706D513460A460C99D3 -:10C000003046FFF7BAFF48E03046FFF7C6FFA4F11D -:10C010000C00C0B2062805D22146C9B20CA8326E67 -:10C0200092699047707A00281BD1294649B2304660 -:10C03000726E1268904700280DD0306E40688047BD -:10C04000002804D139464F1EC9B20029F5D1002875 -:10C0500001D1002021E0294649B23046726E526873 -:10C060009047707A401C70722A4652B20C99304642 -:10C07000736E1B69984700F0C0F8072C0CD1002D97 -:10C080000AD100208DF80000112001900A208DF8BF -:10C09000080000A8F8F706FD01200DB0F0BD000073 -:10C0A00060F61C3A2DE9F0418CB004460D46164668 -:10C0B00019460020ADF82A0001900A208DF80800EA -:10C0C00000208DF809008DF80A00874850F8247088 -:10C0D0004FF00208387F002801D100203CE03846AC -:10C0E000FFF766FF787A012818D1314649B2384601 -:10C0F0007A6E9268904700280AD0386E8068804730 -:10C10000002805D14046A0F10108C0B20028F4D1B2 -:10C11000314649B238467A6ED2689047787A00281C -:10C1200001D0401E7872324652B2294638467B6EA4 -:10C130005B69984700F061F8072C0CD1002E0AD1FA -:10C1400001208DF80000112001900A208DF80800D0 -:10C1500000A8F8F7A7FC01200CB0BDE8F0810000B2 -:10C1600089AD84FA0A74313F0AD7233C2DE9F041A6 -:10C1700004460D46164619465B4850F82470387F31 -:10C18000002815D09DF91820002A08D4D00706D51C -:10C1900013460A4629463846BDE8F041EDE606EB6F -:10C1A000460007EB8008D8F838008068002801D5E1 -:10C1B000002020E03846FFF7F0FE324652B2D8F8B1 -:10C1C0003800816838467B6E5B699847324652B2C8 -:10C1D000294638467B6E1B699847A4F10C00C0B213 -:10C1E000062805D229462046FDF706F9012002E07F -:10C1F00000F003F80120BDE8F08170B56FF0004554 -:10C200002C463A48016804E08A68A24200DA1446E3 -:10C2100009688142F8D1364E3078401C3070F6F70C -:10C22000D2FF7078401C7070AC4200D100242948C5 -:10C2300001688C66CA6E204682420AD0002801D06E -:10C24000002A03D1C866F3F744FF02E0012003F09F -:10C25000F2FF7078401E7070C0B2002801D1F6F76E -:10C26000ACFFF7F753F8012070BD38B50546204CF8 -:10C270002078401C2070F6F7A6FF6078401C6070A4 -:10C2800014480068C5661948016805E08A68B2FB71 -:10C29000F5F26A43CA6009688142F7D16078401EAE -:10C2A0006070C0B2002801D1F6F787FFBDE83140C9 -:10C2B000F7F72CB80D490A6808E01369012B01DA79 -:10C2C000D368136113691B1A136112688A42F4D18F -:10C2D00070470000C0FD00207505F5FF28280040CC -:10C2E00088FD00200080FFFF00000020600000208B -:10C2F0002438002058206973206F76657200000092 -:10C3000059206973206F7665720000005A206973A6 -:10C31000206F76657200000030B504460F480D4668 -:10C32000017881B0491C0170F6F74DFFA068E16803 -:10C33000884209D13821204603F084FFF6F743FFF5 -:10C34000A068E1688842F5D02946204603F098FFAE -:10C3500001B0BDE83040F6F7D9BF00BF2438002057 -:10C360004FF0FF31401E02280AD9001F042807D9C8 -:10C37000C01F052804D9093802D0801E052800D81E -:10C380000121084670470021012809D0032807D061 -:10C39000062805D0092803D00C2801D00D2800D18B -:10C3A000012108467047000038B504464FF0FF35BC -:10C3B000F8F7C4FA1C2C2AD8DFE804F01616121677 -:10C3C00016121616121229290F12141416162929DC -:10C3D00029162916181B1F2327004FF47A7516E01B -:10C3E000142514E0C82512E0422510E0D0F8C4530B -:10C3F0000DE000F57170856A09E000F57170056D5A -:10C4000005E000F57170856F01E0D0F864542846AE -:10C4100032BD38B5DFF8F047F4F796F8E06203F084 -:10C420007DFFF8F78BFA2063002509E01C2D04D16D -:10C4300001F20C41DFF8D4278A67406A80476D1CFF -:10C440001D2D80F2C880216B05EB8500C000002205 -:10C450004254401842704FF0FF3242600022027294 -:10C46000C2604272032D04D14C31DFF8A4270A6563 -:10C47000E3E7012D03D1DFF89C27CA64DDE7022D35 -:10C4800004D14C31DFF890278A62D6E7002D62D0C4 -:10C49000042D04D14C31DFF884278A67CDE7052DC0 -:10C4A00004D1DFF87C27C1F8EC20C6E7062D04D1C3 -:10C4B000EC31DFF870278A62BFE7072D04D1EC3139 -:10C4C000DFF864270A65B8E7082D04D1EC31DFF8FE -:10C4D0005C278A67B1E7092D04D1DFF85427C1F83A -:10C4E0008C21AAE70A2D36D00B2D34D00C2D04D187 -:10C4F000DFF84027C1F804229FE70D2D04D1DFF8B3 -:10C500003827C1F82C2298E70E2D05D101F50B71C3 -:10C51000DFF828278A6290E70F2D05D101F50B710E -:10C52000DFF81C270A6588E7102D05D101F50B718E -:10C53000DFF810278A6780E7112D04D1DFF808277C -:10C54000C1F8CC2279E7122D05D0142D03D0132D7C -:10C5500001D0162D10D1DFF8F4160161DFF8F016C6 -:10C560004161DFF8F0268261DFF8EC26C261DFF876 -:10C57000EC260262416260E7152D04D1DFF8E02667 -:10C58000C1F86C2359E7172D05D101F55B71DFF870 -:10C59000D4260A6551E7182D05D101F55B71DFF846 -:10C5A000C8268A6749E7192D04D1DFF8C026C1F8EB -:10C5B0000C2442E71A2D05D101F20C41DFF8B02618 -:10C5C0008A623AE71B2D7FF431AF01F20C41DFF8AC -:10C5D000A4260A6531E7012032BD0CB42DE9F047ED -:10C5E00086B0054688460126A94609EB8900C400A5 -:10C5F000DFF81476B8F10B0F1ED1386B04EB000A8C -:10C600009AF80100002817D02846FFF7A9FE012854 -:10C6100012DB2846FFF7A4FE9AF8011081420BDBDB -:10C62000284600F0FCF80646386B201800214170BF -:10C630000FF2BC60F3F771FD386B215C002918D153 -:10C6400021184A78002A14D100222254104648703A -:10C650000EA983B068462022F8F73AFB0EBC2846A4 -:10C6600000F035F8022801D102202BE0032800D188 -:10C670000326B8F10A0F04D1386B215C491C215400 -:10C6800010E0B8F10B0F0DD1032D06D1386B90F8E7 -:10C690007900002801D101F0B6F9386B20184178F3 -:10C6A000491C4170386BF96A0A6E0192B1F85C104E -:10C6B000009121184B78225C49460FF23C60F3F759 -:10C6C0002CFD304606B0BDE8F0075DF80CFB0EB45B -:10C6D000FFB504460125C0B2FFF766FEDFF8286506 -:10C6E00004EB8401326B02EBC107786000203872E2 -:10C6F000F86009A984B068462022F8F7E9FA0FBC6F -:10C700003F69B847022801D102200AE0032801D17D -:10C71000032505E0F06A016E2A46A2401143016636 -:10C72000284604B0F0BC5DF810FB2DE9FC47044638 -:10C730000D460126274607EB87004FEAC008DFF8C1 -:10C74000C894D9F8300008EB000A9AF801000228D2 -:10C7500014D32046FFF704FE01280FDB2046FFF725 -:10C76000FFFD9AF80110814208DB2046FFF7F8FD33 -:10C770008AF801000FF29450F3F7CFFCD9F830009B -:10C7800018F80010002904D108EB00025278002AA2 -:10C790002FD00A2D09D1002903D0491E08F8001016 -:10C7A00017E0002108F8001013E00B2D11D108EB61 -:10C7B00000014A78002A02D0521E4A7001E000228D -:10C7C0004A70032C05D190F87900002801D101F0BE -:10C7D00029F9D9F8300018F80010002909D140448F -:10C7E0004078002805D1204600F019F8032800D130 -:10C7F0000326D9F83000D9F82C100A6E0192B1F84E -:10C800005C10009108EB00014B7818F800203946C5 -:10C810000FF20050F3F781FC3046BDE8F687F8B51B -:10C820000446012504EB8400C700DFF8DC63306BAD -:10C83000381840698047032800D10325204640B2BC -:10C8400000F059F9032800D10325306B38184FF058 -:10C85000FF31416000210172C160F06A016E012266 -:10C86000A240914301662846F2BD38B5044604EB68 -:10C870008400C000DFF89053296B00224254401816 -:10C88000114641702046FFF7CAFFE86A026E214652 -:10C890000FF29440F3F741FC012032BD2DE9F04145 -:10C8A000AEB004460D46ADB201208DF85400DFF85D -:10C8B000586316A8F16A5C22F8F70AFA139616A9CB -:10C8C00084B068465C22F8F703FA0FBC00F0D6F992 -:10C8D00000270BE0032803D1149703208DF85400A0 -:10C8E000306B4044002101727F1C7FB21D2F23DA80 -:10C8F0000120B840F16A096E0842F5D007EB8700C5 -:10C900004FEAC008306B404441680029ECD4027AF9 -:10C91000521C0272D2B26A4389B28A42E4DB806955 -:10C9200080470228D6D1149702208DF85400DDE903 -:10C930001401C4E9000103E0DDE91401C4E90001C8 -:10C940002EB0BDE8F08100210A3842F20772904211 -:10C9500000D20121084670472DE9F04383B0044618 -:10C9600000200190042204F1090101A8F5F77FFBE2 -:10C970006168DFF89462376B282505FB0170406819 -:10C98000019A904204D10FF2AC30F3F7C6FB6AE093 -:10C990001046FFF7D8FF002809D16168019B05FB0D -:10C9A000017042680FF29830F3F7B7FB5BE0DFF8F5 -:10C9B000C8723868D0F8008026E090F90890606866 -:10C9C000316B05FB0010C068012101FA09F1084232 -:10C9D00017D04FF0FF3000900346012201994846DE -:10C9E000FFF7EDFA40B200280BD161680198009082 -:10C9F000306B05FB010043684A460FF25830F3F7ED -:10CA00008CFB4046D0F80080B842D6D13868D0F8C8 -:10CA1000008020E090F90890C868012202FA09F22B -:10CA2000104215D04FF0FF33012249684846FFF706 -:10CA300039FB40B200280BD1616801980090306B3F -:10CA400005FB010043684A460FF22030F3F765FB0F -:10CA50004046D0F800806168326B05FB0121B84286 -:10CA6000D8D101984860BDE8F7832DE9F04104462C -:10CA700000252E46DFF890811AE006EB8600C700FD -:10CA8000D8F830003918002048720120B040D8F89A -:10CA90002C20126E10420AD02046C969884700280F -:10CAA00005D0D8F830003818012141720D46761CA7 -:10CAB0001D2EE2DB2846BDE8F0815348C16A096EAD -:10CAC00000290BD0002107E001EB8102036B03EB8F -:10CAD000C20200235372491C1D29F5DB7047012156 -:10CAE00001FA00F04849C96A096E0840401E8041B9 -:10CAF000C043C00F70472DE9F0478146012409EB80 -:10CB00008900C500404E306B2818C068002828D026 -:10CB1000594F3868D0F8008003E003244046D0F82D -:10CB20000080B8421DD090F908A0306B2818C16869 -:10CB3000012202FA0AF2114021FA0AF149B201294E -:10CB4000ECD14FF0FF33012241685046FFF7AAFABB -:10CB50000028E2D0524649460FF22820F3F7DDFACA -:10CB6000DCE72046BDE8F08710B58CB00446002015 -:10CB7000ADF82A0001900A208DF8080000208DF8F9 -:10CB800009008DF80A00ADF82A00600719D50520C4 -:10CB9000FFF7A5FF002807D004208DF8000005202E -:10CBA000019000A8F7F77EFF0220FFF798FF00280A -:10CBB00007D004208DF800000220019000A8F7F7AC -:10CBC00071FFE0060CD50820FFF789FF002807D089 -:10CBD00003208DF800000820019000A8F7F762FFFD -:10CBE0000CB010BD02460020092A00D0704780B565 -:10CBF000012902D103F0F8FC012002BD02492C22D8 -:10CC0000F8F766B800000000ECFB0020991B020852 -:10CC1000EBD701081D790308E7E7010891CD01086A -:10CC2000D3E501089361030895730308EDE3010858 -:10CC30003705020847D00108416003086959030815 -:10CC4000F16B0308FF6F03080D690308F14B01083E -:10CC5000ED4B0108F94B0108FD4B0108014C01089F -:10CC6000AD740308C57503083D1A02081B7A020853 -:10CC7000FF670308EB380008BC0700200FB41798C3 -:10CC80000099016001994160029981600399C16036 -:10CC90000499016105994161BDF84A100183BDF80D -:10CCA0004C104183BDF84E1081830C9901620F999D -:10CCB00041621099816204B07047000041681229F6 -:10CCC00003D1817A002000F05ABF132903D1C17A21 -:10CCD000012000F054BF142903D1017B022000F091 -:10CCE0004EBF152902D1807A00F05ABF704700006C -:10CCF000414C204558000000414C2564202564200B -:10CD0000256420256420256400000000524C204545 -:10CD100058000000524C25642025642025642025FD -:10CD200064202564000000005445524D20256420F5 -:10CD3000256400004558204C4D43523120256400A5 -:10CD40004558204C4D43523220256420256420252F -:10CD5000640000004558204C4D4352332025642088 -:10CD60002564202564202564000000004558204CDF -:10CD70004D435234202564202564202564202564F9 -:10CD800000000000534D524120256420256400001E -:10CD900038B5F7F7D3FD0446104DF3F7D5FB2860FF -:10CDA00003F038FD03F03BFD686003F03DFD0C48E7 -:10CDB000C4F8B00004F1B0000A4941600A4981603A -:10CDC0000A49C1600A490161012032BD034949682D -:10CDD00089680847014840680068004798FD0020BE -:10CDE000F14B0108ED4B0108F94B0108FD4B01081F -:10CDF000014C01082DE9F04786B0044601A8142132 -:10CE0000F4F78EFEF3F70FF905464FF002090026FE -:10CE100001E0761C76B20A2E80F29D80022EF8D0B8 -:10CE2000032EF6D0062EF4D0514850F8267007F1A4 -:10CE30000C08787A002805D1D8F85400406880475B -:10CE40000028E6D009F8046009F101094FFA89F9D0 -:10CE5000304609284FD8DFE800F0050A4E4E10157D -:10CE60004E10423CC8212846F3F796FA43E04FF4AF -:10CE700048712846F3F790FA3DE032212846F3F74F -:10CE80008BFA38E03C212846F3F786FA4FF0000A87 -:10CE9000BAF1030F2FDA0020D8F854100969884737 -:10CEA00014212846F3F778FA0120D8F854100969BC -:10CEB000884714212846F3F76FFABAF1020F05DA12 -:10CEC000062101A8D8F85420526990470AF1010AB6 -:10CED000DEE74FF416712846F3F75EFA0BE0002008 -:10CEE000D8F8541009698847012088F811003C21BE -:10CEF0002846F3F751FA98F8151001A8D8F85420ED -:10CF000052699047002819D0D8F80C00F96800EB56 -:10CF1000010A98F8152001A95046F5F7A8F83846F7 -:10CF2000FEF77CFE98F81520514609EB0400F5F752 -:10CF30009EF898F9150081444FFA89F9787A00280B -:10CF40007FF467AFD8F854008068804700287FF4EA -:10CF500060AF002009E0A9F10200ADF80000022254 -:10CF600000A92046F5F783F8002006B0BDE8F08759 -:10CF7000000000200FB480B5BDF80A006749488062 -:10CF8000022802D3801E088001E0002008800C22C5 -:10CF90009DF909100020F7F7D3FC032801D10220E6 -:10CFA00000E0012002BC5DF814FB5C4801214180D7 -:10CFB0000021018001207047594908707047000026 -:10CFC00030B58DB002A8F7F721FD544C2088401CE5 -:10CFD0002080618880B2884232D3002020800546BC -:10CFE00028E06068D0F8EC010121A940084220D077 -:10CFF000284603F0F7F900281BD400EB80009FEDD2 -:10D00000460ADDED0B0A60EE800AFDEEE00A10EE46 -:10D01000901A00AA8152DDED0C0A20EE800ABDEEC6 -:10D02000C00A10EE101A8218518000A94018012180 -:10D0300001716D1C132DD4DBDDE9000103F0E2F971 -:10D0400001200DB030BD80B5F7F778FC334948605A -:10D050003449C0F8F01100F5F870334941603349A4 -:10D0600081600FF21101C1600FF225010161012001 -:10D0700002BD000010B50024294890F900000028E6 -:10D0800004D103F0DEF9002800D00124204610BDB1 -:10D09000F8B504460D463026287816FB00400121DD -:10D0A0000170287816FB00404170287816FB00407C -:10D0B0000C218170287816FB0040194991F9001065 -:10D0C000002902D00221C17001E00121C17028783D -:10D0D00016FB004001210171287816FB0040082151 -:10D0E0004171287816FB00400121C180287816FB89 -:10D0F0000047002003F038F93881287816FB0044F7 -:10D10000002003F036F960812878401C28700C203C -:10D11000BDE8F24003F047B90000C8428CAF0020E0 -:10D12000F1FD002075CF0108ABCF0108C1CF010888 -:10D13000C449022807D1C44890F8922042F0010265 -:10D1400080F8922009E0032807D1BF4890F8921098 -:10D1500041F0020180F89210BC490846704710B5B2 -:10D1600002F060FEF32002F0D7FE08240AE000215E -:10D17000204602F066FE092803D00FF2F020F2F7F5 -:10D18000CCFF0834182CF2D3BDE8104002F053BE97 -:10D190002DE9F8430646B6F803004FEAD008D6F862 -:10D1A0000900071DD6F80590F6F70DF8A84C607831 -:10D1B000401C6070A44D95F89100002808D10FF232 -:10D1C000BC20F2F7AAFFFFF7CAFF012085F8910003 -:10D1D00002F028FEF32002F09FFEC8EB081009EBD6 -:10D1E00080184FF0000909E019F8071009EB080052 -:10D1F00002F078FE09F101090FFA89F9B6F8010089 -:10D200008145F1DB02F017FE05F29106707800F01F -:10D210000300032809D100F036F80020707085F86B -:10D2200091008C490220F3F731FE6078401E607057 -:10D23000C0B2002803D1BDE8F143F5F7BEBFBDE899 -:10D24000F18310B5040004D0012C04D103F053FC89 -:10D2500001E003F070FC204610BD00207E498A7971 -:10D26000012A03D17D4800228A717047CA79012AB8 -:10D2700002D17B480022CA7170477349C873704756 -:10D280007148C07B704738B56F4C04F2110501201E -:10D29000E8702871E32068710620ADF8000071483D -:10D2A000006890F81A01C00719D594F8920000F0B0 -:10D2B0000300032809D1EF20A8710720ADF8000072 -:10D2C0000FF2C410F2F729FF09E0FFF7D9FFA871A8 -:10D2D0000720ADF800000FF2B810F2F71EFFBDF8FE -:10D2E0000000C01EADF802000120607402220DF1A2 -:10D2F000020104F11200F4F7BAFE00A904F11100D2 -:10D30000F6F7F3F80020FFF7B8FF31BD80B503F062 -:10D3100029FD002805D10FF28010BDE80240F2F788 -:10D32000FCBE01460FF27810F2F7F7FEBDE80140AF -:10D3300003F08ABD00264B4CF2F775FE2060424D8B -:10D34000942231462846F4F798FE012210214FF42A -:10D350007A5003F043FB42E00D2801D1FFF7D6FFDE -:10D36000103EF6B208F101085FFA88F8B8F1020F32 -:10D370000BD2304607EB400003F033FD0028EBD121 -:10D380000120FFF77AFF012028740026287C00285E -:10D3900003D0FFF778FF30462874F2F7FBFF2068D0 -:10D3A00090F81A11C90703D490F81A01400703D561 -:10D3B00095F89200002827D00020C04603F0ABFB70 -:10D3C0004FF480510120F3F75BF83046FFF755FF2B -:10D3D000206890F81A110FF2E000F2F79EFE02208A -:10D3E00003F03EFD206890F81A110FF2C000F2F72A -:10D3F00094FEFFF78BFF4FF480510120F3F73EF8C6 -:10D400001021194803F059FBFFF727FF0746206852 -:10D41000407AFFF716FF0028BFD0002FBDD020684C -:10D4200090F81A01400705D54FF470723946042070 -:10D43000F6F77CFC206890F81A01C007A6D5B04624 -:10D4400092E7000000400008E8F6002000B0000865 -:10D450002438002028590020507B0020A8590020A3 -:10D46000685D0020DCFD00206859002053562D46E1 -:10D470004C415345204641494C00000053562D5322 -:10D48000544152540000000053562D444F4E450065 -:10D4900053562D4F4B0000005353492053000000BA -:10D4A00053534920462025640000000053562D5256 -:10D4B000203078257800000053562D442030782500 -:10D4C0007800000013F0004C03D55B42524263F138 -:10D4D00000039CEA210C00F0178010B5644603D3CA -:10D4E0004942404261F1000100F00EF8640004D3AB -:10D4F0004942404261F10001244203D55B4252425D -:10D5000063F1000310BD00001B4213D1094236D164 -:10D510002AB18446B0FBF2F002FB10C2704703F060 -:10D52000C3BCFCD30022002370470B000200002183 -:10D5300000207047904271EB030CF6D370B5B1FA3E -:10D5400081F4B3FA83F52C1BA340C4F1200532FA11 -:10D5500005F63343A2405FF00046E64002E05B0878 -:10D560005FEA3202841A71EB030524BF2046294684 -:10D570007641F4D302000B003000002170BD012A77 -:10D58000CFD970B5140C20D0B1FA81F4B2FA82F57B -:10D59000C4F120046419B4F12006D6D3B2405FF080 -:10D5A0000044F440002502E052085FEA3303C61A43 -:10D5B00071EB020E24BF3046714664416D41F3D3D6 -:10D5C00002000B002000290070BD0C46B1FBF2F1F7 -:10D5D00002FB11452D0445EA1045B5FBF2F402FBB0 -:10D5E000145580B240EA0545B5FBF2F002FB10523B -:10D5F00040EA044070BD00000FB480B50322002152 -:10D600000846F7F79DF9022801D1022018E00FF62D -:10D610003040F2F782FDDFF8C80B00214173C18171 -:10D6200081619DF80B209DF80A109DF8090003F018 -:10D63000CEFD54220021DFF8C00BF4F71EFD0120BF -:10D6400002BC5DF814FB0120704730B58BB000A818 -:10D65000F7F7DCF905210320F7F70FFA002802D1CC -:10D66000DFF8800B0890DFF8784B2069C56F03F076 -:10D670005EFD207294F90800022806D1422D04D1E3 -:10D6800014210320F7F7C4F907E0012805D1142D70 -:10D6900003D142210320F7F7BBF9284680B2DDED24 -:10D6A000081A00A991EC030A03F0ACFC6069281881 -:10D6B000606101200BB030BD1CB5DFF8244B94F93C -:10D6C0000000002843D400A8F2F71DFF204600A95F -:10D6D0000622F7F7EDFA94F90A0094F90110814255 -:10D6E00029D1217B0818A07240B23D2801DB3C38CB -:10D6F000A07294F90A100FF65830F2F70EFD0020D0 -:10D700006061DFF8E40A90F901004FF0FF318842D0 -:10D7100001D1012016BD94F90110081AF4F708FA96 -:10D7200021F00041F4F7D0F940B2012801DB0120DB -:10D7300016BD002016BDDFF8B40A90F90120914211 -:10D7400003D0D4E90023C0E90023002016BD60699E -:10D75000DFF8D01A884205DB0FF60030F2F7DDFC67 -:10D76000012016BD002016BD2DE9F8430026DFF884 -:10D77000704A07E07A19A27252B231460FF6E820D9 -:10D78000F2F7CBFC94F90A50002E21D46078461BA6 -:10D7900076B294F90C70002EECD53046F4F7C8F947 -:10D7A00021F0004102460B46904699463846F4F770 -:10D7B000BFF942464B46F4F743FCE3D2EA1BA272A0 -:10D7C000002652B231460FF6B420F2F7A6FCD9E794 -:10D7D0003D2D02DBA5F13C00A07294F90A100FF672 -:10D7E000B020BDE8F443F2F798BC10B5DFF8F0497B -:10D7F00001202072002060724FF0FF3020700F2057 -:10D80000E0721420207300206073E081A061F7F7BC -:10D8100095F82061DFF8D819C0F888108830DFF853 -:10D82000D4194160DFF8001A81600FF21101C16064 -:10D830000FF21D510161012010BD00002DE9F043E0 -:10D84000A9B00546002413A803F075FCDFF8A86909 -:10D850002046129001201190314684B0684654222F -:10D86000F7F736FA0FBC00F0F9F807469DED210AEC -:10D87000D6ED0E0A30EE600A10EE100AF4F70EF83C -:10D880002246DFF87839F4F741F8F4F71DF98046BD -:10D890001FFA88F8BDF89200B6F84610461AF6B29C -:10D8A000DFF83C99002D38D1002F02D156EA08004C -:10D8B00018D00124002F15D0DFF87059A868B8429D -:10D8C00010D0204604F0D9F8204604F084F9A86866 -:10D8D000381AC9F81C00AF60324639460FF6BC1042 -:10D8E000F2F71BFCDFF84459AF600020C9F81400C0 -:10D8F0004FF0FF3089F80000DFF8F028D9E9000187 -:10D90000C2E90001C5E90001DFF8DC28C2E9000135 -:10D9100099F80B0089F80A002BE000F02CF9002898 -:10D920001CD0204689F80900DFF8C028D9E9000199 -:10D93000C2E9000100A8F2F7E6FD484600A9062268 -:10D94000F7F7B6F999F9023099F9012099F9001021 -:10D950000FF65410F2F7E1FBFFF706FFFFF7ACFEFE -:10D96000002806D0DFF88008D9E90023C0E90023A9 -:10D97000012499F80D00012832D1B9F80E000028D1 -:10D9800005D10FF63C10F2F7C8FB012428E0D9F8C6 -:10D990001810814219D2002F02D156EA080000D097 -:10D9A0000124DFF8885895F9020099F90220904285 -:10D9B00016D0491CC9F818100FF61410F2F7ADFB79 -:10D9C000D9E90001C5E900010AE0002089F80D004D -:10D9D000A9F80E00C9F818000FF60410F2F79DFB25 -:10D9E000012C02D10020C9F81400D9F8100090F8D9 -:10D9F0007900002803D10020C9F81400044620460D -:10DA000029B0BDE8F08310B5DFF8D40700214161EB -:10DA1000032205210020F6F793FF044600F007F8E3 -:10DA2000204610BD032205210120F6F789BF00B56D -:10DA300095B000A803F07FFB542200A9DFF8B807D7 -:10DA4000F4F715FB012015B000BDDFF89407C0699D -:10DA50007047DFF88C070021C16170470FB430B503 -:10DA600095B09DF9B4409DF9B800002501280BD16F -:10DA700003F026FC1899884202D3451AEDB270E0F3 -:10DA80008038451AEDB26CE000A803F054FB641E28 -:10DA9000082C66D8DFE804F02905111D2936424E0E -:10DAA0005A0001981999884201D3451A59E0DFF8C4 -:10DAB00080271018401A451C53E002981A99884292 -:10DAC00001D3451A4DE0DFF868271018401A451CAD -:10DAD00047E003981B99884201D3451A41E0DFF8DB -:10DAE00050271018401A451C3BE0009818998842AE -:10DAF00001D3451A35E0DFF8381708181899401A8D -:10DB0000451C2EE004981C99884201D3451A28E050 -:10DB1000DFF81C271018401A451C22E005981D99B3 -:10DB2000884201D3451A1CE0DFF804271018401A78 -:10DB3000451C16E006981E99884201D3451A10E04C -:10DB4000DFF8EC261018401A451C0AE007981F99C8 -:10DB5000884201D3451A04E0DFF8D4261018401A91 -:10DB6000451C284615B030BC5DF814FBDFF8700684 -:10DB7000012141727047DFF86806407A704703F070 -:10DB8000E4BADFF85C16792802D37822CA8100E073 -:10DB9000C88101224A7301460FF25470F2F7BDBAF0 -:10DBA00010B5040001D1012402E0072C00D30624A3 -:10DBB00021460FF25070F2F7B0FA641E052C2DD8F2 -:10DBC000DFE804F0030A11181F26DFF814063721D6 -:10DBD000C1723C21017321E0DFF804061921C172F2 -:10DBE0001E2101731AE0DFF8F8050F21C17214211C -:10DBF000017313E0DFF8E8050A21C1720F210173F8 -:10DC00000CE0DFF8DC050721C1720C21017305E08F -:10DC1000DFF8CC050521C1720A210173DFF8C005C8 -:10DC2000C17A8172BDE810409EE500000FB400B5D6 -:10DC300095B000A803F07FFA9DED080ADDED1E0AFD -:10DC4000B4EE600AF1EE10FA02DB30EE600A05E095 -:10DC50009FED3E1A71EE600A30EE800A10EE100A57 -:10DC6000F3F71CFEDFF89825DFF89835F3F778FF17 -:10DC700002F08EFAF3F712FE0022DFF88C35F3F78C -:10DC800045FEF3F721FF00EE100AB8EEC00A10EED1 -:10DC9000100AF3F703FEDFF86825DFF87035F3F7B5 -:10DCA00035FEDFF86C25DFF88C35F3F759FF02F00D -:10DCB0006FFA00EE100A15B05DF814FB0FB400B552 -:10DCC00095B000A803F037FA9DED0D0ADDED230AAB -:10DCD000B4EE600AF1EE10FA02DB30EE600A05E005 -:10DCE0009FED1A1A71EE600A30EE800A10EE100AEB -:10DCF000F3F7D4FDDFF80825DFF80835F3F730FF38 -:10DD000002F046FAF3F7CAFD0022DFF8FC34F3F71D -:10DD1000FDFDF3F7D9FE00EE100AB8EEC00A10EED2 -:10DD2000100AF3F7BBFDDFF8D824DFF8E034F3F78F -:10DD3000EDFDDFF8DC24DFF8FC34F3F711FF02F02F -:10DD400027FA00EE100A15B05DF814FB00247449A0 -:10DD50002DE9F0472DED068BA8B006460D4613A819 -:10DD600003F0E9F93024287814FB006001210170E8 -:10DD7000287814FB0060DFF868144A7B012A0CD174 -:10DD800003224270287814FB00600122C270C88907 -:10DD9000002804D10020487301E001214170287857 -:10DDA00014FB0060032181700DF184099FED868BC7 -:10DDB0009FED879BDFF840740020129001201190A6 -:10DDC000394684B068465422F6F782FF0FBCFFF74D -:10DDD00045FE0A28287814FB006080F0FD800021B1 -:10DDE0000171287814FB006898F804A00846129086 -:10DDF00002201190394684B068465422F6F768FF35 -:10DE00000FBCFFF72BFE40EA0A0088F804002878D0 -:10DE100014FB00680020129003201190394684B052 -:10DE200068465422F6F754FF0FBCFFF717FE88F838 -:10DE30000500287814FB006800201290042011903F -:10DE4000394684B068465422F6F742FF0FBCFFF70C -:10DE500005FE88F80600287814FB00680020129060 -:10DE600005201190394684B068465422F6F730FFF9 -:10DE70000FBCFFF7F3FD88F80700394684B0684609 -:10DE80005422F6F725FF0FBCFFF718FF10EE100A1B -:10DE9000F3F704FD41EC100B287814FB006853ECF9 -:10DEA000102B51EC190BF3F731FDF3F70DFEA8F829 -:10DEB0000E00287814FB00682198F3F7EFFC53EC70 -:10DEC000182BF3F723FDF3F7FFFD88F810002878EF -:10DED00014FB0060B9F80E104174394684B06846EE -:10DEE0005422F6F7F5FE0FBCFFF7A0FE10EE100A65 -:10DEF000F3F7D4FC41EC1A0B287814FB006853ECC0 -:10DF00001A2B51EC190BF3F701FDF3F7DDFD88F83F -:10DF10001200287814FB0068D9F80800F3F7BEFC5B -:10DF200053EC182BF3F7F2FCF3F7CEFD88F813004F -:10DF3000287814FB006800201290062011903946C2 -:10DF400084B068465422F6F7C3FE0FBCFFF786FD87 -:10DF500088F80800287814FB006800201290072039 -:10DF60001190394684B068465422F6F7B1FE0FBCD2 -:10DF7000FFF774FD88F80900287814FB006800207A -:10DF8000129008201190394684B068465422F6F762 -:10DF90009FFE0FBCFFF762FD88F80A00287814FB8B -:10DFA00000640020129009201190394684B0684620 -:10DFB0005422F6F78DFE0FBCFFF750FDE072287873 -:10DFC000401C287005E100BF000000000000244054 -:10DFD000000000000000594080210171287814FBE6 -:10DFE00000680020129002201190394684B06846E3 -:10DFF0005422F6F76DFE0FBCFFF730FDC8F80500A0 -:10E00000287814FB006800201290032011903946F4 -:10E0100084B068465422F6F75BFE0FBCFFF71EFD86 -:10E02000C8F80900287814FB00680020129004202A -:10E030001190394684B068465422F6F749FE0FBC69 -:10E04000FFF70CFDC8F80D00287814FB00680020CD -:10E05000129005201190394684B068465422F6F794 -:10E0600037FE0FBCFFF7FAFCC8F81100394684B040 -:10E0700068465422F6F72CFE0FBCFFF71FFE10EE89 -:10E08000100AF3F70BFC41EC100B287814FB006826 -:10E0900053EC102B51EC190BF3F738FCF3F72AFD76 -:10E0A000C8F82700287814FB00682198F3F7F6FBDE -:10E0B00053EC182BF3F72AFCF3F706FD88F82B0036 -:10E0C000287814FB0060B9F80E1080F82C1039463F -:10E0D00084B068465422F6F7FBFD0FBCFFF7A6FD9F -:10E0E00010EE100AF3F7DAFB41EC1A0B494A4A4BDF -:10E0F000F3F78EFF06D8494A494BF3F7A1FF01D247 -:10E100009FED4DAB287814FB006853EC1A2B51ECB3 -:10E11000180BF3F7FBFBF3F7D7FCA8F82D002878D2 -:10E1200014FB0068D9F80800F3F7B8FB53EC182B80 -:10E13000F3F7ECFBF3F7C8FC88F82F00287814FB02 -:10E1400000680020129006201190394684B068467D -:10E150005422F6F7BDFD0FBCFFF780FCC8F8150090 -:10E16000287814FB0068002012900720119039468F -:10E1700084B068465422F6F7ABFD0FBCFFF76EFC87 -:10E18000C8F81900287814FB0068002012900820B5 -:10E190001190394684B068465422F6F799FD0FBCB9 -:10E1A000FFF75CFCC8F81D00287814FB0064002011 -:10E1B000129009201190394684B068465422F6F72F -:10E1C00087FD0FBCFFF74AFCC4F821002878401CEB -:10E1D0002870FFF72CFC28B0BDEC068BBDE8F0875B -:10E1E00020FC002000007A44A8FD0020A0FD0020B3 -:10E1F000F9D5010847D6010844F500200000244065 -:10E200007B14AE47E17A743F00005940E17A843FC5 -:10E210002D431CEBB81E85EB51B89E3F9A999999F6 -:10E220009999B93F40771B004BD601084CFD00205F -:10E2300080969800E2361A3F9A9999999999B93F30 -:10E2400050443A2053746172745065646F0000004A -:10E2500050443A204E5420256400000050443A2097 -:10E260004E6F54696D65000050443A20636F6D70C5 -:10E27000312025642C2025640000000050443A2001 -:10E28000636F6D70322025642C202564000000002F -:10E2900050443A204355542025640000537465705F -:10E2A0003D25642C2025640050443A54696D654E28 -:10E2B0006F74692025642025642025640000000017 -:10E2C00050443A2053746F702044617461310000EF -:10E2D00050443A207574696D657220256400000011 -:10E2E00050443A2053746F702044617461320000CE -:10E2F00050443A2053746172742044617461202543 -:10E300006400000050443A20555420256400000069 -:10E310000FB480B5082200210846F6F711FB022849 -:10E3200001D1022004E069480021017041800120F0 -:10E3300002BC5DF814FB65480021017001207047A4 -:10E3400038B501240020ADF80000604D95F90000BB -:10E35000002809D1204628700020A880A86803F072 -:10E3600075FC03F0E9FD29E0012829D16888401CEB -:10E3700068800DF10101A86803F08AFE002815D01D -:10E38000082200212046F6F7DBFA032800D10324F7 -:10E3900008220B210020F6F7D3FA022801D102202F -:10E3A00032BD0220287004F041F807E0B5F9020000 -:10E3B000962803DB0520287000F057F8204632BD70 -:10E3C0000328FBD1A888401CA88000B2FB28F1DA02 -:10E3D00000A9A86803F076FC0028EFD0042028707C -:10E3E000204600F033F800F040F8E7E710B5374C6E -:10E3F000F6F7A4FAE060F2F7A7F8A060E068344905 -:10E40000C0F8501100F5A87032494160324981606E -:10E410000FF20D01C1600FF2C9010161012010BDB1 -:10E4200001460020294AD26892F84121002A02D0F0 -:10E43000012900D106E0704780B5002000F006F801 -:10E44000012002BD254890F900007047234908705B -:10E45000704780B5082200210846F6F771FA0228B5 -:10E4600001D1022002BD012002BD80B51748002164 -:10E470008180418008220120F6F762FA032801D149 -:10E48000032002BD012002BD38B501240F4D95F9CE -:10E490000000022815D108220B212046F6F750FA79 -:10E4A000032800D10324FFF7D4FF022801D1022062 -:10E4B00032BD032800D103240320287002A0F1F705 -:10E4C0002CFE204632BD000053414900687B0020ED -:10E4D00011E3010837E3010841E30108FB7B002059 -:10E4E00018B430220B7812FB030301241C700B7844 -:10E4F00012FB03035C700B7812FB030308249C706F -:10E500000B7812FB03000122C2700878401C0870CF -:10E5100011BC91E70FB480B5874801210170052235 -:10E5200000210846F6F70CFA022801D1022016E075 -:10E53000052209210020F6F703FA022801D1022062 -:10E540000DE0052207210020F6F7FAF9022801D193 -:10E55000022004E000F0E8F803F090FF012002BC84 -:10E560005DF814FB38B50124052209212046F6F791 -:10E57000E7F9032800D10324052207210120F6F73B -:10E58000DFF9032800D103246B4D95F9000003281F -:10E5900001D0012807D1052200210120F6F7D0F98A -:10E5A000032800D103240020287000F0BDF804F0F7 -:10E5B000DFF8204632BD80B5002000F03CF802288C -:10E5C00001D1022002BD032801D1032002BD012098 -:10E5D00002BD10B5584CF6F7B1F92061F1F7B4FF60 -:10E5E000A060F1F720FDE06020695449C0F8D81020 -:10E5F000D83053494160534981600FF21101C16025 -:10E600000FF249110161012010BD000001460020F8 -:10E61000494A126992F8C920002A02D0012900D182 -:10E6200002E07047002003E0474890F9000070477F -:10E6300045490870704770B582B0064601253E4CCA -:10E6400094F90000012823D1A088401CA08000B2CA -:10E650004C280BDB0020A080022020700522002126 -:10E660002846F6F76DF9032800D10325012E59D16C -:10E67000E068007D012807D1B4F904001F2851DBB0 -:10E680006078401C60704DE0A078401CA07049E0AC -:10E6900002281CD1012E0AD1E068007D012803D197 -:10E6A0006078401C607002E0A078401CA07094F973 -:10E6B0000100012836DB052200210846F6F740F963 -:10E6C000022801D1022076BD032020702AE0032811 -:10E6D00028D100208DF8000000A9A06803F0F2FE08 -:10E6E000C0B202280DD1052200212846F6F728F9EC -:10E6F000032800D103250120FFF79AFF0420207092 -:10E7000010E003280ED1052200212846F6F718F95B -:10E71000032800D1032500206070A0700220207023 -:10E7200003F0ACFE284676BD03480021818041708D -:10E730008170704700000000C4FC002015E501084E -:10E7400065E50108B7E50108F3FD002010B50C46AA -:10E750003021227811FB020201231370227811FB71 -:10E7600002025370227811FB020205239370227873 -:10E7700011FB02000121C170FFF754FF2078401CFB -:10E78000207010BD0FB480B5022201210020F6F7E1 -:10E79000D7F8022801D102200EE002220721002032 -:10E7A000F6F7CEF8022801D1022005E003F0EAFFD7 -:10E7B000404800210170012002BC5DF814FB3D4877 -:10E7C000002101700120704700B58BB000A8F6F75A -:10E7D0001DF903A890EC030A04F00AF83549087003 -:10E7E00001200BB000BD10B5324CF6F7A7F8A060C1 -:10E7F000F1F719FC6060A0682F4901662F49416656 -:10E800002F4981660FF21D01C1660FF26901016790 -:10E81000012010BD80B527484068007D03F0E1FF6E -:10E82000012002BD002023498A6892F85120002A65 -:10E8300004D091F90010002900D0012070471D4834 -:10E84000002101700120704710B50024012804D078 -:10E8500007D303280BD002D303E0012407E00224EE -:10E8600005E0032401460FF25C00F1F756FC204658 -:10E8700010BD000038B50C463021227811FB020291 -:10E8800001231370227811FB02025370227811FBCE -:10E89000020202239370227811FB0205054890F9C9 -:10E8A0000000FFF7D1FFE8702078401C2070BDE821 -:10E8B0003140C4E728FD002085E70108BFE70108D3 -:10E8C000C9E701084C4D4350532031202564000016 -:10E8D00070B504463548364E0568B5B1287A88B11A -:10E8E0006868A0420ED1012028723078401C307038 -:10E8F000287A401E2872C0B210B9284604F03AFEA9 -:10E90000F4F704FDED68002DE8D170BD10B50446A4 -:10E9100028482949016000200021024603460FC40F -:10E92000103CF4F750FC21480168E1600460204885 -:10E930004078002804BFBDE81040F4F73EBC10BD8D -:10E9400030B51B4D0446287881B0401C2870A8685B -:10E95000217A11B9606001250DE06168814208D01B -:10E960001021204601F06EFC207A0028F8D1A8681A -:10E970006060207A451C2572F4F7C8FC284601B077 -:10E9800030BD0B490A78521C0A70017A491E017287 -:10E99000C9B2002918BFF4F7B9BC00B581B004F0C2 -:10E9A000E9FD01B05DF804EBF4F7B0BCEC7B0020AE -:10E9B00024380020D07B0020D1E80108DFF82C0C9F -:10E9C000016899B94FF4803181604FF48051416002 -:10E9D0004FF0FF31C160016104214161DFF8101C7B -:10E9E0000422C1F8B821DFF80C1C01600120704737 -:10E9F00001F1080313F0070305D001F10803C3F187 -:10EA0000080303F007035918D21A8161C26042F06B -:10EA100001034B60511828224A60DFF8D01B0969B6 -:10EA2000C16170472DE9F84F054601F1080010F06B -:10EA3000070005D001F10800C0F1080000F0070050 -:10EA400000EB010A02F1080010F0070005D002F106 -:10EA50000800C0F1080000F00700841803EB0A0763 -:10EA6000A4EB0A00A0EB030843F00300CAF804007B -:10EA7000A74228BF04F094FD2079C00758BF04F0D6 -:10EA80008FFDB8F1100F38BF04F08AFDA8698442E9 -:10EA900007D1E8684044E860AF6140F00100786069 -:10EAA00048E16869844208D1A8684044A8606F6161 -:10EAB00040F001017960C0513CE1606800F0030161 -:10EAC000012940F09F80C008C00000904FEAD00BA1 -:10EAD000BBF1200F2FD2D4F80890E668B44208BFEB -:10EAE00004F05EFD4C4508BF04F05AFD6068C008A4 -:10EAF000C000B0EBCB0F18BF04F052FDB14506D1FA -:10EB00002868012101FA0BF18843286077E005EBC2 -:10EB1000CB0000F12801894502D0296989456CD3D1 -:10EB20002830864202D02869864266D3C9F80C6034 -:10EB3000C6F8089063E0D4F81890E668A64206D0BC -:10EB4000A068296988421DD3C660B0601CE004F14A -:10EB50001400066836B904F110000668A6B101E099 -:10EB60000846066806F114010A68002A02BF06F189 -:10EB700010010A68002AF3D12969884202D30021D2 -:10EB8000016001E004F00CFDB9F1000F37D0E0693D -:10EB900005EB800000F5987001688C4209D1066091 -:10EBA000300014D168680121E269914088436860AF -:10EBB00025E02869814508D3D9F81000A04214BF88 -:10EBC000C9F81460C9F8106001E004F0E9FCB6B1BE -:10EBD0002869864211D3C6F81890216929B181426B -:10EBE00026BF31618E6104F0DBFC606938B12969B0 -:10EBF000884202D37061866101E004F0D1FC009884 -:10EC000004198044606840084000606048F00100DA -:10EC1000786048F807804FEAD806202E1FD205EB0F -:10EC2000C60000F12804A146B8F1100F38BF04F067 -:10EC3000B7FC0120B0402968014202D10843286096 -:10EC400006E0A068296988422CBF814604F0A8FC30 -:10EC5000A760C9F80C70C7F80890FC606AE05FEA2A -:10EC6000182008BF002123D0B0F5803F28BF1F2106 -:10EC70001ED2A0F58071090C01F008018840A0F5B2 -:10EC80008052120C02F004029040A0F580431B0C4D -:10EC900003F00203C1F10E01891AC91A984001EB71 -:10ECA000D030C11D28FA01F101F0010101EB400152 -:10ECB00005EB810000F59872F961002078613861F8 -:10ECC000012088406B68034204D1184368601760D4 -:10ECD000BA611DE010681F290EBF00214908C1F16B -:10ECE000190108FA01F100E010464268D208D2008A -:10ECF000424510D0CA0F00EB820202F11003490016 -:10ED00001A68002AF0D129698B4211D31F60B861BB -:10ED1000FF60BF600EE081682A69904228BF91427F -:10ED200006D3CF608760B960F8600020B86101E069 -:10ED300004F036FC0AF10800BDE8F28F2DE9FE4F21 -:10ED40000446A56904F5DE7001688D4203D342686C -:10ED500051188D4202D380680028F5D141680068BF -:10ED60000E18A6F12F0000F1080111F0070105D0DF -:10ED700000F10801C1F1080101F0070101EB000AEF -:10ED800005F11000824538BFAA460AF1080B0AF1C6 -:10ED9000180900270198A0F1280200992046FFF7E2 -:10EDA00027FE1BF0070018BF04F0FAFB1B20CAF86F -:10EDB000040004F5DE70B0E80E10ABE80E10ABF105 -:10EDC00010010098C4F8BC010198C4F8C001029871 -:10EDD000C4F8C801C4F8C41100E0814609F1040078 -:10EDE0000721C9F804107F1C011DB142F5D3022F81 -:10EDF000B8BF04F0D5FBAA4500F09C80AAEB050043 -:10EE000041194A68520852004A6040F001016960A5 -:10EE10004051C708202F1FD204EBC70101F128067B -:10EE2000B046102838BF04F0BBFB012101FA07F0FF -:10EE30002168014202D10843206006E0B0682169E0 -:10EE400088422CBF804604F0ABFBB560C8F80C507C -:10EE5000C5F80880EE606DE0010A08BF002223D0EB -:10EE6000B1F5803F28BF1F221ED2A1F58072120C7F -:10EE700002F008029140A1F580531B0C03F004033B -:10EE80009940A1F58046360C06F00206C2F10E024A -:10EE9000D21A921BB14002EBD131CA1D20FA02F204 -:10EEA00002F0010202EB410204EB820101F59873CA -:10EEB000EA610021696129610121914066680E4281 -:10EEC00005D141EA060060601D60AB611DE0196874 -:10EED0001F2A0EBF00225208C2F1190200FA02F2E4 -:10EEE00000E019464B68DB08DB00834210D0D30FEB -:10EEF00001EB830303F1100652003368002BF0D1BD -:10EF00002069864211D33560A961ED60AD6011E0E2 -:10EF100088682269914228BF904206D3C5608D60FF -:10EF2000A860E9600020A86104E003B0BDE8F04FEC -:10EF300004F036BB03B0BDE8F08FF8B504460D46CB -:10EF4000DFF8A866306808B9FFF738FD04F02CFB3D -:10EF500001001CBF0A6811F1010F00F08A80D4F88B -:10EF6000B0011018C4F8B001D4F8B431834238BFEE -:10EF70000346C4F8B431A06958BB206908B1814286 -:10EF800000D22161C4F8BC11C4F8C0210020C4F82B -:10EF9000C801306860624FF0FF30206220462023B5 -:10EFA00000F12806F660B66008305B1EF8D1DFF885 -:10EFB0004006844208BF283A27D054F8040CC00801 -:10EFC00014EBC00008385118091AA1F128020146B3 -:10EFD0001BE004F5DE70034600E09B68CBB15E6881 -:10EFE0001F68F619B142F8D11E7B360711D4A66905 -:10EFF000BE420ED3D3F804C06744BE4209D202EB2E -:10F000000C005860E0681218A1692046FFF7F0FC78 -:10F010001EE02369994238BF21610346501800E081 -:10F020009B688BB11E688642FAD1187B00070BD40F -:10F03000304619605E6892195A602B460246204697 -:10F0400001B0BDE8F040EDE400232046FFF776FE76 -:10F05000E06885420DD2401BE060A1696A18A26198 -:10F0600040F00100506045F00300486001F10800E5 -:10F07000F2BD0020F2BD2DE9F84F05468B46002475 -:10F08000CBF100085FEA1B2023D0B0F5803F28BFFA -:10F090001F201ED2A0F58071090C01F008018840E4 -:10F0A000A0F58052120C02F004029040A0F58043BB -:10F0B0001B0C03F00203C1F10E01891AC91A984012 -:10F0C00001EBD030C11D2BFA01F101F0010101EB80 -:10F0D000400005EB8001D1F8301129B31F280EBF85 -:10F0E00000224208C2F119020BFA02F2002300E0EA -:10F0F00052004E68F608F600A6EB0B06464503D212 -:10F100000C465FEA06080BD04E69D70F01EB87016A -:10F110000969002E1CBF8E4233460029E8D11946EA -:10F1200000293BD1002C3BD1012101FA00F0400025 -:10F13000414208436968084000F057814142084055 -:10F14000411E080B00F0100021FA00F2510901F0F5 -:10F150000801CA40930803F00403DA40560806F099 -:10F160000206F240C2F34007081818183018384455 -:10F1700022FA07F1081805EB8000D0F830110DE0F5 -:10F1800001464868C008C000A0EB0B0040453CBFEA -:10F1900080460C4608690028F2D149690029F0D15F -:10F1A000002C00F02281A868A0EB0B00804580F0C5 -:10F1B0001C8128698442C0F016810BEB04060BEB1E -:10F1C00008096068C008C000484518BF04F0E8F9A5 -:10F1D000B44280F00881D4F818A0E768A74206D0AE -:10F1E000A068296988421DD3C760B8601CE004F19B -:10F1F0001400076837B904F110000768A7B101E0EF -:10F200000846076807F114010A68002A02BF07F1DF -:10F2100010010A68002AF3D12969884202D300212B -:10F22000016001E004F0BCF9BAF1000F38D0E069E8 -:10F2300005EB800000F5987001688C4209D10760E9 -:10F24000380014D168680121E26991408843686000 -:10F2500026E02869824508D3DAF81000A04214BFDE -:10F26000CAF81470CAF8107001E004F099F9BFB13F -:10F270002869874212D3C7F818A0206930B12969DC -:10F28000884226BF3861876104F08AF9606938B125 -:10F290002969884202D37861876101E004F080F92E -:10F2A000B8F1100F09D249F00300606009EB0400C7 -:10F2B000416841F00101416091E04BF00300606062 -:10F2C00048F00100706048F806804FEAD800202816 -:10F2D0001BD205EBC00101F12807B846012101FA54 -:10F2E00000F02968014202D10843286006E0B868AE -:10F2F000296988422CBF804604F052F9BE60C8F8E4 -:10F300000C60C6F80880F76069E05FEA182008BF63 -:10F31000002223D0B0F5803F28BF1F221ED2A0F5C7 -:10F320008071090C01F008018840A0F58052120C90 -:10F3300002F004029040A0F580431B0C03F002038E -:10F34000C1F10E01891AC91A984001EBD030C11DD4 -:10F3500028FA01F101F0010101EB400205EB820006 -:10F3600000F59870F26100217161316101219140D5 -:10F370006B680B4203D11943696006601CE00068AA -:10F380001F2A0EBF00215108C1F1190108FA01F12D -:10F3900000E010464268D208D200424510D0CA0FA1 -:10F3A00000EB820202F1100349001A68002AF0D132 -:10F3B00029698B4211D31E60B061F660B6600EE021 -:10F3C00081682A69904228BF914206D3CE60866048 -:10F3D000B160F0600020B06101E004F0E1F804F1F8 -:10F3E0000800BDE8F28F04F0DBF8FBE02DE9F84FF0 -:10F3F00004468846606841420840411E080B00F000 -:10F400001000C1404A0902F00802D1408B0803F005 -:10F410000403D9404D0805F00205E940C1F3400658 -:10F420001018181828443018F140081804EB800010 -:10F43000D0F8300106464168C908C900A1EB080AA6 -:10F4400009E008464168C908C900A1EB0801514517 -:10F450003CBF8A46064601690029F2D1406900286E -:10F46000F0D120698642C0F0BB8008EB060B08EBA8 -:10F470000A097068C008C000484518BF04F090F839 -:10F480005E4580F0AD80B569F768B74206D0B068D8 -:10F49000216988421DD3C760B8601CE006F11400E2 -:10F4A000076837B906F110000768A7B101E0084600 -:10F4B000076807F114010A68002A02BF07F110016A -:10F4C0000A68002AF3D12169884202D30021016031 -:10F4D00001E004F065F8002D34D0F06904EB800001 -:10F4E00000F5987001688E4209D10760380011D18B -:10F4F00060680121F26991408843606022E02069E0 -:10F50000854205D32869B04214BF6F612F6101E0C5 -:10F5100004F046F8B7B12069874211D3BD61306964 -:10F5200030B12169884226BF3861876104F038F81C -:10F53000706938B12169884202D37861876101E03E -:10F5400004F02EF8BAF1100F09D249F003007060F0 -:10F5500009EB0600416841F0010141603CE048F0E0 -:10F56000030070604AF00100CBF804004AF80BA0D9 -:10F57000D4F80880B8F1000F2AD0D4F814904FEADC -:10F58000D805202D28BF04F00BF8009504EBC5002A -:10F5900000F128052F46B8F1100F38BF04F000F82D -:10F5A0000120009988402168014202D1084320606F -:10F5B00006E0A868216988422CBF074603F0F0FFE7 -:10F5C000C5F80890C7F80C90C9F80870C9F80C5035 -:10F5D000C4F808A0C4F814B006F10800BDE8F28F22 -:10F5E00003F0DEFF0020BDE8F28F0000ACFC00203D -:10F5F000E8E700206859883C2DE9F04F83B00546C4 -:10F60000C046C046DFF87447F52D80F0F4800B2D1E -:10F6100031BF102705F10B00C008C700FE082068A5 -:10F62000F04010F0030F3DD0C04300F001008619F8 -:10F6300004EBC60000F12808D8F80850F700686805 -:10F64000C008C000B84218BF03F0AAFFD5F8089060 -:10F65000454508BF03F0A4FF4D4508BF03F0A0FFD8 -:10F660006868C008C000B84218BF03F099FFC845D9 -:10F6700005D120680121B1408843206008E020695D -:10F68000814526BFC8F80890C9F80C8003F088FFB0 -:10F6900047F0030068607819416841F0010141605A -:10F6A0000835F0E0A168B94280F0B780002800F08A -:10F6B0009980012505FA06F14900B0404A421143FC -:10F6C000084041420840411E080B00F01000C140B4 -:10F6D0004A0902F00802D1408B0803F00403D94024 -:10F6E0004E0806F00206F140C1F340081018181841 -:10F6F0003018404421FA08F101EB000804EBC8007F -:10F7000000F12809D9F808604FEAC80A7068C008F3 -:10F71000C000504518BF03F043FFD6F808B04E456F -:10F7200008BF03F03DFF5E4508BF03F039FF706876 -:10F73000C008C000504518BF03F032FFD94505D1BD -:10F74000206805FA08F18843206008E020698345B5 -:10F7500026BFC9F808B0CBF80C9003F021FFAAEB44 -:10F76000070847F003007060B819009048F00101E5 -:10F770004160009848F80080A76867B3D4F81490F7 -:10F780004FEAD70ABAF1200F28BF03F009FFCDF8DE -:10F7900004A004EBCA0000F1280AD346102F38BF9A -:10F7A00003F0FEFE019805FA00F02168014202D143 -:10F7B0000843206007E0DAF80800216988422CBF7E -:10F7C000834603F0EDFECAF80890CBF80C90C9F818 -:10F7D00008B0C9F80CA0C4F808800098606106F170 -:10F7E000080550E06068C0B339462046FFF7FEFDCB -:10F7F000050012D047E015F1400F28BF4FF0FF374A -:10F800000BD205F10B00C008C700606828B139466B -:10F810002046FFF730FC050035D1A168B9421CD362 -:10F82000CA1B6069102A0AD339186161A26042F0CC -:10F8300001034B60525047F0030141600AE000228F -:10F84000A260626141F00302426009184A6842F016 -:10F8500001024A6000F1080515E0E06887420DD218 -:10F86000C01BE060A1697A18A26140F001005060FD -:10F8700047F00300486001F1080504E039462046DE -:10F88000FFF75BFB0546C046C0462846FFF752BB64 -:10F8900000B970472DE9F047A0F10804C046C04602 -:10F8A000DFF8D85428698442C0F06082616801F0B2 -:10F8B0000302012A00F05A82CA084FEAC20808EB84 -:10F8C0000409CA072DD4226811F0030F00F05082FA -:10F8D000904451420C198442C0F0488269698C42BC -:10F8E00000F0D4804FEAD20ABAF1200F6FD2A66896 -:10F8F000E768BC4208BF03F053FEB44208BF03F000 -:10F900004FFE6068C008C000B0EBCA0F18BF03F01C -:10F9100047FEBE4246D12868012101FA0AF1884318 -:10F9200028604C4580F02282D9F80400C10740F1DC -:10F930001D82810700F17381A969894540F0BB8070 -:10F94000E8684044E860AC6140F0010161606969C9 -:10F950008C4202D100216961A960E969814280F08D -:10F960000782DFF81404006808B9FFF727F8A869D0 -:10F97000002800F0FD81E96829290BD305F5DE7226 -:10F980001368984203D35468E318984202D39268EC -:10F99000002AF5D1E869884280F0EA814FF0FF3013 -:10F9A000E861E5E105EBCA0000F128018E4202D0D2 -:10F9B00029698E4208D32830874202D028698742BD -:10F9C00002D3F760BE60ACE703F0EAFDA9E7A669E1 -:10F9D000E768A74205D0A16881421CD3CF60B96017 -:10F9E0001BE004F114010F6837B904F110010F682E -:10F9F0009FB101E011460F6807F114021368002B54 -:10FA000002BF07F110021368002BF3D1814202D329 -:10FA10000020086001E003F0C3FD002E3FF481AF39 -:10FA2000E06905EB800000F5987001688C4209D10F -:10FA30000760380011D168680121E269914088436C -:10FA400068606EE72869864205D33069A04214BF1A -:10FA50007761376101E003F0A3FD002F3FF461AF50 -:10FA600028698742B0D3BE61216929B1814226BF8E -:10FA700039618F6103F094FD606900283FF451AF54 -:10FA800029698842A0D3786187614AE799F8040020 -:10FA900000F0030003287FF444AFC5F80880D9F8CC -:10FAA000040040084000C9F8040048F0010060600C -:10FAB00048F804805CE16969894508D1A868404438 -:10FAC000A8606C6140F001016160005150E1C00824 -:10FAD000C00080444FEAD00ABAF1200F2FD2D9F8E3 -:10FAE0000860D9F80C70B94508BF03F059FDB1455D -:10FAF00008BF03F055FDD9F80400C008C000B0EB02 -:10FB0000CA0F18BF03F04CFDBE4206D12868012180 -:10FB100001FA0AF18843286076E005EBCA0000F19B -:10FB200028018E4202D029698E426BD32830874249 -:10FB300002D02869874265D3F760BE6064E0D9F8D7 -:10FB40001860D9F80C704F4507D0D9F8080029691A -:10FB500088421DD3C760B8601CE009F11400076833 -:10FB600037B909F110000768A7B101E00846076836 -:10FB700007F114010A68002A02BF07F110010A68A0 -:10FB8000002AF3D12969884202D30021016001E0F3 -:10FB900003F006FD002E37D0D9F81C0005EB8000DD -:10FBA00000F59870016889450AD10760380012D1C4 -:10FBB00068680121D9F81C2091408843686023E0DF -:10FBC0002869864205D33069484514BF776137619B -:10FBD00001E003F0E5FCBFB12869874212D3BE61A2 -:10FBE000D9F8101029B1814226BF39618F6103F025 -:10FBF000D7FCD9F8140038B12969884202D378615A -:10FC0000876101E003F0CCFC48F00100606048F837 -:10FC10000480686984420BD1C5F80880A8E04008D8 -:10FC20004000C9F8040048F00100606048F8048012 -:10FC30004FEAD807202F20D205EBC70000F1280992 -:10FC40004E46B8F1100F38BF03F0AAFC0120B840AF -:10FC50002968014202D10843286007E0D9F808006A -:10FC6000296988422CBF064603F09AFCC9F808406F -:10FC7000F460A660C4F80C907AE05FEA182008BF30 -:10FC8000002123D0B0F5803F28BF1F211ED2A0F550 -:10FC90008071090C01F008018840A0F58052120C17 -:10FCA00002F004029040A0F580431B0C03F0020315 -:10FCB000C1F10E01891AC91A984001EBD030C11D5B -:10FCC00028FA01F101F0010101EB400105EB81008F -:10FCD00000F59872E1610020606120610120884098 -:10FCE0006B68034204D1184368601460A2611DE090 -:10FCF00010681F290EBF00214908C1F1190108FA37 -:10FD000001F100E010464268D208D200424510D00E -:10FD1000CA0F00EB820202F1100349001A68002AA0 -:10FD2000F0D129698B4211D31C60A061E460A4600A -:10FD30000EE081682A69904228BF914206D3CC60C8 -:10FD40008460A160E0600020A06101E003F028FC75 -:10FD5000286A401E28620BD1D5F8C40100E08068F3 -:10FD60000028FCD14FF0FF30286201E003F018FCBE -:10FD7000C046C046BDE8F087ACFC0020E8E70020A4 -:10FD8000002848BF40427047F446490006D200F0C0 -:10FD900011F809420DD5C8174108604700F00AF86C -:10FDA00007D04942404271F1000102D400205FF0C7 -:10FDB000004160474A0DA2F580621E3A0ADC5242B9 -:10FDC000202A18DA890241F0004141EA505000210E -:10FDD000D0407047D2F1200210D4890241F0004196 -:10FDE00041EA5051C002D04061FA02F35840D1407C -:10FDF00080EA01007047002000217047D017010001 -:10FE00007047000090420CD141EA030C50EA4C0CC0 -:10FE100007D0994205D14FF4001C1CEB410F38BFAD -:10FE2000894270474C48C168002903D54B4901609D -:10FE30004B49016070474B48016841F00041016047 -:10FE4000704770B50446002600290BD0012902D165 -:10FE50004FF4807606E0022902D14FF4007601E0EB -:10FE60004FF4407600F082F809281ED13D4D2868F5 -:10FE700020F440702860286830432860286820F00B -:10FE8000F8002860286844F00201084328602868C8 -:10FE900040F48030286000F069F8296821F0020100 -:10FEA0002960296821F0F801296070BD70B5044609 -:10FEB0000D4600F05BF8092813D12A4E306820F473 -:10FEC00040703060306840F400703060306840F05E -:10FED00001003060256000F049F8316849084900A8 -:10FEE000316070BD70B505460E4600F03FF8092838 -:10FEF00011D11C4C206820F44070206020682060E4 -:10FF0000206840F0010020602E7000F02FF821687A -:10FF100049084900216070BD1349086070470920F5 -:10FF200011490A68D20301D5012070470A68D20638 -:10FF300001D5062070470A68D20501D50220704716 -:10FF40000A6812F0EF0F01D007207047096889078F -:10FF500000D5082070470000043C0240230167459B -:10FF6000AB89EFCD103C02400C3C024080B509202B -:10FF70008DF80000FFF7D3FF8DF8000003E0FFF7D6 -:10FF8000CEFF8DF800009DF800000128F7D09DF805 -:10FF9000000002BD0278C9B28A421AB11CBF10F833 -:10FFA000012FF9E718BF002070470000C9B283078E -:10FFB00006D0521E22D310F8013B9942F7D11FE020 -:10FFC000083A13D302F1040241EA012141EA014156 -:10FFD00050F8043B121F21BF4B40A3F1013C2CEA17 -:10FFE000030C1CF0803FF3D0C9B2001F083210F898 -:10FFF000013B521E28BF91EA030FF8D818BF012019 -:020000022000DC -:10000000401E704730B4436803F0004201211B03D7 -:100010001B0B436004BF0368002B08D10DE003688D -:10002000DD0F45EA440444605B000360491E4468F8 -:10003000E302F4D523031B0B436043681A43426079 -:10004000084630BC7047000070B5044640F2FF72AD -:100050006068C0F30A500D46904207D16068000303 -:1000600004BF2068002817D0022070BD20B92046A8 -:10007000FFF7C8FF012867DA012D0FDB40F2FF719F -:10008000091A8D420AD3606800284CBF9FED2F0BE0 -:100090009FED300B84ED000B012070BD4142A94261 -:1000A000616806DA6FF31E51401941EA0050606042 -:1000B00041E0401E63680122451962F31F5305F1B8 -:1000C000350001F000416360352803D361600020F2 -:1000D000206070BD002215F11F0F04DA2268236032 -:1000E000002020356060684213D0521E256892417E -:1000F000C0F12003D2439D4055EAD272256866685C -:10010000C54006FA03F32B432360636823FA00F02B -:100110006060606808436060B2F1004F03D80DD1A1 -:100120002078C0070AD52068401C2060206828B9C4 -:100130006068401C60604FF0FF3070BD60688842AE -:1001400004BF20680028F6D1002070BD0000000028 -:100150000000F0FF000000000000F07F91FBF2F3D0 -:1001600003FB1211C0E900317047000000B585B0F3 -:1001700002460FF2140100A803F02AFA00A8FAF7C9 -:10018000CEFB05B000BD00004F4525640000000017 -:100190004FEAF17CBCF1E04C2CBFBCF5001F11E034 -:1001A0005FEA4C0C34BFBCF17F5F2EE05FEA9C0C31 -:1001B0004FEA0C1C4FEA3C0CC10071F100414CEBC2 -:1001C00050707047C90241EA5051C00218BF41F057 -:1001D000010141F000414FEA6C50C0F109002128B3 -:1001E00010D240EACC7CCCF1200C11FA0CF070F16A -:1001F0000040CCF1200C21FA0CF00CF0004C40EB4C -:100200000C0070474FEACC707047490011F5001F91 -:1002100004D84FEACC10FF30C0057047C8177047AC -:1002200003F0F0B980B5F0F78FF9C06EFCF742F833 -:100230000348007802BD02490870704700000000C2 -:1002400000FE002070B50D4E0546B06884B00C4627 -:10025000029501950390F2F7B6FF2868009000A878 -:100260002860009808B100A94160B06800A98160C9 -:100270000474F3F7B8F804B070BD00BF2438002050 -:1002800030B483680469027DE318C468A34228BFC0 -:100290001B1B534311F8015B44681D555B1C521E28 -:1002A000F8D18168491C8160012904BF30BC03F08A -:1002B00061B919484078002804BF30BCF2F77DBF0F -:1002C00030BC704710B50446207D22694243636804 -:1002D000D35C521C401E01F8013BF8D12069401C40 -:1002E0002061E168884224BF00202061A068421E8E -:1002F000A260094A8842527807D10AB9F2F75DFF35 -:100300002046BDE8104003F035B9002A04BFBDE81F -:100310001040F2F752BF10BD2438002080B500F025 -:1003200009F800204D49024601E04254401C0228D1 -:10033000FBDB01BD10B44A48002101800846494C4E -:100340000CE001EB810200EB80031B19D2180023A3 -:100350001371491C49B20129F3DB401C142801DA4E -:100360000021F7E710BC704700EB80003D49405E7C -:10037000704700EB80003B494018B0F9020070471D -:1003800010B54FF0FF340146012902D00C2902D0EC -:1003900003E0002405E0012403E00FF2D000EFF7B2 -:1003A000BCFE204610BD70B504460125FFF7E8FFEE -:1003B00006462046012802D00C2803D005E000F0B4 -:1003C00043F808E0FFF7B6FF05E021460FF2AC0066 -:1003D000EFF7A3FE0025002E02D42048002131545F -:1003E000284670BD10B54FF0FF34C0B2082801D1C7 -:1003F000002405E040B201460FF29000EFF78DFEB9 -:10040000204610BDF3B5164C25882E46701C1528C5 -:1004100001DB0020F6BD00270DE007EB870106EBAE -:100420008600104A8018081800AA89180522F4F7D7 -:100430003FFC7F1C7FB2012FEFDB681C2080012076 -:10044000F6BD074800887047074800218180017089 -:10045000417001218170084670470000F47B002044 -:10046000667B0020987400205C370020455820509F -:1004700044524D4D20433120256400004558205002 -:1004800044524D4D204333202564000045582050F0 -:1004900044524D4D20433220256400000FB480B5F6 -:1004A00003F0BAF8D64805214170002101700171AE -:1004B0004171D44802A92022F4F70AFC0922002144 -:1004C0000846F4F73DFA022801D1022000E001209D -:1004D00002BC5DF814FB4CE110B5C94C94F9010065 -:1004E00005280AD100F0E4F8002822D0042060702A -:1004F00003F092F8BDE81040FCE0042819D100F0A8 -:10050000B5F8002808D0032020700520607003F0A3 -:1005100083F8BDE810402CE100F055F9002808D020 -:10052000022020700520607003F076F8BDE81040CE -:100530001FE1012010BD80B5F4F700FAB0498860D2 -:10054000B149C0F8781100F5BC70B0494160B049BC -:1005500081600FF21101C1600FF29501016101206C -:1005600002BD00000020A6490246CA708A6892F8BF -:100570006921002A0FD091F90020002A02D0022020 -:10058000C870012091F90420012A04D1C87840F0F4 -:100590000400C87001207047994800210170C170A3 -:1005A00001710120704710B58AB0044600A804F01C -:1005B0002DFD0198A04204D3001BC0B200EE100A2A -:1005C00004E08038001BC0B200EE100AB8EE400A0A -:1005D000DDED060A20EE200A10EE100AF1F75EF9B2 -:1005E00041EC100B0AB010BD854801210171704724 -:1005F00078B4834A92F903309C0716D530240D78DD -:1006000014FB050501262E700D7814FB05056E7090 -:100610000D7814FB05050926AE700D7814FB050452 -:100620001578E5700C78641C0C705B071CD53024C1 -:100630000B7814FB030301251D700B7814FB0303D7 -:1006400003255D700B7814FB030309259D700B785F -:1006500014FB03030125DD700B7814FB03005278B3 -:1006600002710878401C087071BC95E730B58DB0F8 -:10067000002420468DF8000001A8F4F7C7F94FF4D4 -:100680007A70604D00ABB5F8051000FB01F2B5F8CB -:1006900003104143B5F80150684301AD95EC030ADE -:1006A00002F0FCFF022800D1012420460DB030BD2D -:1006B00030B58DB0002420468DF8000001A8F4F775 -:1006C000A5F94FF47A704F4D00ABB5F8051000FB5B -:1006D00001F2B5F803104143B5F80150684301AD8C -:1006E00095EC030A02F0DAFF012800D1012420462C -:1006F0000DB030BD30B59DB001240020ADF82A000A -:1007000001900A208DF8080000208DF809008DF86E -:100710000A003B4D95F90500002827D1B4208DF83B -:100720002D0046208DF82E0020468DF82F00002049 -:100730008DF80000032001900DF109000BA9202283 -:10074000F4F7B6FA0A208DF808000020ADF82A0068 -:1007500000A8F4F7A7F9002801D1022406E013A8A5 -:1007600004F054FC1498A8702046687120461DB00F -:1007700030BD30B58BB00124214D95F9050001281D -:100780001ED10020ADF82A0001900A208DF8080043 -:1007900000208DF809008DF80A0020468DF8000031 -:1007A000032001900A208DF808000020ADF82A00EF -:1007B00000A8F4F777F9002800D10324002068711D -:1007C00020460BB030BD10B52DED028B00240C4837 -:1007D0008078FFF7E8FEB0EE408AF0EE608A0948C4 -:1007E000C079F1F7AFF902460B4651EC180BF1F75F -:1007F0000FFC00D801242046BDEC028B10BD000088 -:10080000D4380020D87A00209D040208D7040208BA -:10081000D9040208182200210248F1F72EBC014831 -:10082000704700007CFC002080B5FFF7F8FF6849A6 -:1008300008600FF2910101600FF2A50141600FF213 -:10084000A50181600FF2A101C1600FF20D010161EC -:100850000FF23901416101BD30B583B004465D4DF1 -:10086000207869698847002009E004EB40014A7854 -:10087000897841EA022100AA22F81010401C0328BE -:10088000F3DB00A8E968884700203EBD30B583B09F -:100890000446504D28698047207000A8A968884701 -:1008A00000200AE004EB400100AA32F910301B12CC -:1008B0004B7032F810208A70401C0328F2DB0020B5 -:1008C0003EBD000080B505F079FD05F094FE41487D -:1008D0000068804740480068BDE8024000470000CB -:1008E000704700007047000073B52DED048B8EB08B -:1008F000B0EE408AF0EE608AB0EE419A14460020D5 -:100900000090BDF84800ADF80C0003A8BDF84A10EF -:100910004180BDF84C1081802E4D00AA01A96B6862 -:100920009847002001AE0FE036F9101000EE101AC3 -:10093000B8EEC00ADFED250A80EE200A0BA901EB14 -:10094000800181ED000A401C0328EDDBB0EE480A6F -:100950008DED080A08A8B0EE680A80ED010AB0EE35 -:10096000490A80ED020A05AA0BA9AB6998470098CD -:1009700020700598E06005A84168A160806860600B -:10098000B2EE040ABDF9040000EE900AF8EEE00AA7 -:10099000C0EE800AC4ED040AB6F9020000EE900A27 -:1009A000F8EEE00AC0EE800AC4ED050AB6F90400CC -:1009B00000EE900AF8EEE00A80EE800A84ED060A66 -:1009C00000200EB0BDEC048B76BD000000401C463C -:1009D00084FD0020B0FB0020B8FD00202DE9F0418F -:1009E00004460D461646CD4F386B40F480503863B0 -:1009F000DFF82C83CB48C8F80400CB48C8F80800BF -:100A00004FF47A50A8F800000120A8F80E00A8F8CA -:100A10000C00404605F008FE00F0ADF8C046C046A8 -:100A2000B86820F40000B860386840F08060386032 -:100A300038680001FCD5600000F004F9C8F83450B3 -:100A4000C8F8386000F003F80020BDE8F08130B548 -:100A500085B001210220F8F76DFE1D208DF8000001 -:100A60000F208DF8010000208DF8020001208DF884 -:100A7000030000A8FAF73BF8AC480068AC49B0FBAB -:100A8000F1F0441E40F2E730029000200190ADF8F2 -:100A90000C008DF80E00A74D01A9284605F0C4FFF3 -:100AA0000122214689B2284601858282012211460F -:100AB000284605F0F3FF05B030BD80B5974A1368AE -:100AC0001B010AD4936823F400039360136843F076 -:100AD0008063136013681B01FCD5974A50609748E8 -:100AE000016101219648F9F707F901219548F9F7C5 -:100AF000CCF9002002BD10B58E4C2088C00709D467 -:100B00000FF25020EFF709FB01212046BDE810400D -:100B100005F0AEBF10BD80B500218948F9F7ECF8AB -:100B20007E48016821F08061016000218548F9F765 -:100B3000ACF9002002BD10B57E4C2088C00709D555 -:100B40000FF21820EFF7E9FA00212046BDE8104027 -:100B500005F08EBF10BD30B4002308E031F813401B -:100B6000250245EA142420F813405B1C9BB29342F3 -:100B7000F4DB30BC70471CB501210220F8F7CFFD33 -:100B800001210220F8F7CBFD02208DF8040000209F -:100B9000ADF8060002208DF805004FF400500090DB -:100BA000694C00A92046F8F78DFE05220D2120464C -:100BB000F8F7D6FE4FF40040009000A92046F8F761 -:100BC00081FE05220F212046F8F7CAFE13BD30B57D -:100BD000A1B05A4C5B48406880B2C0F5A0706081FB -:100BE000554D29E0A08A05EB400205EB4101B1F823 -:100BF0004818A2F8C817A189491CA181401CA082ED -:100C0000A189B1F5A07F01D30021A18180B2402844 -:100C100012D3402205F5F96100A8FFF79CFF404B75 -:100C20001E22696800A805F079FD4FF4F0711020CC -:100C300005F04AFF0020A082A18960898842D1D1B5 -:100C400021B030BD30B593B0054601214FF480404E -:100C5000F8F770FD3A4C2046F8F78AFF02952020FD -:100C6000ADF802000020ADF80400ADF80C004FF420 -:100C70004070ADF800000020ADF8060000A9204645 -:100C8000F8F7C1FF01214FF40010F8F748FD2D4D92 -:100C900000212846F9F7F9F82846F9F74BF8002023 -:100CA00004902A4805902A480690002007904FF4A7 -:100CB000A0700890002009904FF480600A904FF4D3 -:100CC00000600B904FF400500C904FF480700D902A -:100CD0004FF400300E9000200F9003201090002061 -:100CE0001190129004A92846F9F7A8F8012211469C -:100CF0002046F9F70DF813B030BD10B50D4C0121A9 -:100D0000204605F0D5FE002806D001212046C94323 -:100D10000182BDE810405AE710BD000000380240D3 -:100D2000E83700200000FA4500002041B8380020D4 -:100D300040420F000004004060590020507B00201A -:100D40000038004058600240000402400C38004067 -:100D5000A861002054494D332D45000054494D33BE -:100D60002D44000030B583B00020009001A805F0AC -:100D700005FF314C982200212046F1F77EF92F49DA -:100D8000A1642F49E1640621A4F85810FA21A4F8BF -:100D90005A100021A4F850100321A4F85C1000A9F7 -:100DA00005F0F1FE009841F27171884201D3FE20F6 -:100DB0003EBD244D05F57170C4F88C004FF4F07001 -:100DC0002082281DE0600020606160822060208316 -:100DD000204606F051F800202860204605F0EEFE7F -:100DE0003EBD38B5144CD4F88C10002905D10FF253 -:100DF0005C00EFF792F90D2032BD214605F0FCFEB4 -:100E0000054610480168002904D00FF24C00EFF7A6 -:100E100084F90D25002D08D1B4F86800002800D110 -:100E20003125204605F0CAFE04E0FD2D02D0204603 -:100E300005F0C4FE284632BD50F6002000400008F0 -:100E400000B0000894AF00200020704753504620A7 -:100E50004E554C4C00000000734D4D2025640000A1 -:100E600030B5104C0546207881B0401C2070F2F758 -:100E7000AAF9A0684169294205D185610821017458 -:100E80002046F2F78AF9A06800214569416120787F -:100E9000401E2070607808B9F2F78FF9284601B03B -:100EA00030BD00BF2438002070470000DFF8F4098F -:100EB0000178DFF8F42902EB810282ED000ADFF805 -:100EC000EC2902EB8102C2ED000ADFF8E42902EB13 -:100ED000810282ED001A4278202A01D2521C42700F -:100EE000491C0170C9B2202901D10021017070474D -:100EF0002DE9F0412DED028B0025DFF8A84960783F -:100F0000022801D2284679E02E4601E00025761C11 -:100F1000607886426DDA2078002803D11F274FF0D1 -:100F20001E0805E0471EB7F1010801D508F12008A9 -:100F3000DFF8740900EB870191ED000A00EB8800EF -:100F4000D0ED000A30EE600A10EE100AF0F7A6FCB1 -:100F500021F00041FFF71CF908EE100ADFF84C09F8 -:100F600000EB870191ED000A00EB8800D0ED000A4C -:100F700030EE600A10EE100AF0F790FC21F000410C -:100F8000FFF706F908EE900ADFF8240900EB870165 -:100F900091ED000A00EB8800D0ED000A30EE600A07 -:100FA00010EE100AF0F77AFC21F00041FFF7F0F89C -:100FB00000EE100ADFEDC10AB4EE608AF1EE10FA1D -:100FC00001DB012000E00020F4EE608AF1EE10FA6F -:100FD00001DB012100E00021B4EE600AF1EE10FA1D -:100FE00001DB012200E00022084310438ED06D1C7B -:100FF0008DE7EDB2152D8041C043C00FBDEC028BD3 -:10100000BDE8F08130B52DED028B87B0B0EE618A7E -:101010000546DFF8A84884ED000AF0EE601AC4ED3A -:10102000011AB0EE412A84ED022AD4ED192AF4EE19 -:10103000402AF1EE10FA1ED1D4ED1A2AF4EE612AFC -:10104000F1EE10FA17D1D4ED1B2AF4EE422AF1EE9C -:1010500010FA10D1606F401C6067152813D3606EC2 -:10106000F0F71CFC02460B460FF6AC00EFF755F804 -:101070000020606707E084ED190AC4ED1A1A84EDB8 -:101080001B2A0020606794EC030AFFF70FFF207B08 -:1010900002283BD1284680B2B0EE480A06F0D0F8CC -:1010A000294689B2204603F0DFFBDFF808582846BE -:1010B00003F0ACFF286801280FD102F00EFE28468D -:1010C00003F0A4FF28222946DFF83808F0F7CFFF05 -:1010D0000FF65000EFF721F824E0294684B0684667 -:1010E0002822F3F7F5FD0FBC00F0F6F800F042FA05 -:1010F000002817D0E889002814D10FF63400EFF744 -:101100000CF80120207303F095FF0BE0012809D1B2 -:10111000FFF7EEFE002805D00FF61C00EEF7FDFFEE -:1011200002202073002007B0BDEC028B30BDDFF839 -:101130008C07007B7047002806D0DFF86817D1F8CD -:1011400080105422F3F7C4BD704710B5002815D1A4 -:10115000DFF86C4700EE101AB8EE400A84ED010A81 -:10116000204603F07BFF6068F0F798FB02460B46D1 -:101170000FF2CC70BDE81040EEF7CFBF012815D1BB -:10118000DFF83C4700EE101AB8EE400A84ED000A82 -:10119000204603F063FF2068F0F780FB02460B4611 -:1011A0000FF2AC70BDE81040EEF7B7BF02280DD1CA -:1011B000DFF80C472181204603F050FFB4F90810F6 -:1011C0000FF29C70BDE81040EEF7A7BF10BD2DE9EF -:1011D000F047074688469146DFF8DC465422002156 -:1011E0002046F0F74AFFDFF8BC5605F1840654228A -:1011F00000213046F0F741FF5422002105F12C0078 -:10120000F0F73BFF282221463046F0F730FFC5F8C3 -:101210008060DFF8A8665422002106F11000F0F784 -:101220002CFFDFF89CA60C2200215046F0F725FF8A -:1012300028220021DFF87C06F0F71FFF282200217A -:10124000281DF0F71AFF00EE107AB8EE400A8AED7A -:10125000010A00EE108AB8EE400A8AED000AAAF8E8 -:1012600008904B46424639460FF20470EEF755FFA0 -:1012700002F06CFC504603F0F1FE04F1440042F22F -:101280001071C18001810021616401203073084622 -:1012900028706870306705F08FFF0020A87001206B -:1012A000E8700FF2DC60EEF738FF00207066B06681 -:1012B000F06630607060B060BDE8F0870100803F8C -:1012C00010B596B003F0ACFE044600A8FFF733FF5C -:1012D0000098001916B010BD0FB430B52DED028B7B -:1012E00089B0DFF8C045A068814205D1BDF846202D -:1012F000638A9A4200F097800D1A02D5DFF8000643 -:1013000045199DED170AD4ED0A0A70EE608AF5EED4 -:10131000408AF1EE10FA03D59FED940A78EE808AA8 -:101320009DED150AD4ED080A30EE608AB5EE408ACC -:10133000F1EE10FA03D59FED8D0A38EE008A9DED8F -:10134000160A06F0FFF8B0EE401AE078012802D045 -:10135000022838D048E004F12C0007900EA983B091 -:1013600068462822F3F7B4FC0EBC9FED811AF0EE1C -:10137000480AB0EE680A284600F05CF8A078281801 -:10138000A070C0B203282FD3DFF82C0507900EA958 -:1013900083B068462822F3F79BFC0EBC9FED741ABD -:1013A000D4ED180A94ED130AE06A00F043F8A0782F -:1013B000401CA0705422002104F12C00F0F75DFEC7 -:1013C0000220E07010E0DFF8F00407900EA983B06F -:1013D00068462822F3F77CFC0EBCF0EE480AB0EE1B -:1013E000680A284600F026F8BDF84600002809D112 -:1013F0005422002104F12C00F0F73FFE0020A070E1 -:101400000120E07028220EA9201DF0F730FEDFF841 -:10141000A814C4F8801004F1840554222846F0F77B -:1014200026FEC4F8805009B0BDEC028B30BC5DF8DC -:1014300014FB00000EB470B52DED048B89B0B0EE36 -:10144000409AB0EE608AF0EE418A1B9D05F12004BF -:10145000BDF8526026852946B0EE680A00F0C3F850 -:10146000DFF85804006F00280ED195ED080A30EE21 -:10147000090A85ED080A00F003FA85ED080AE684FA -:10148000BDF85000A08437E0DFF8340406AA0AC88B -:101490000AC20368136011A984B068462822F3F7D2 -:1014A00017FC0FBCB0EE680A00F036F9D5ED080A5B -:1014B00030EE800A85ED080A00F0E2F985ED080AB1 -:1014C000F5EE408AF1EE10FA0BDD032E03D1062073 -:1014D000E084A08410E0042E0ED10820E084A084D3 -:1014E0000AE0032E03D10720E084A08404E0042E48 -:1014F00002D10920E084A0841798206194ED050AA8 -:1015000030EE080A84ED050A00F0AEF984ED050A14 -:101510001998F0F7C3F9DFF8AC23DFF8AC33F0F734 -:10152000F5F9FEF735FE00EE100A84ED060ADFED50 -:10153000790AB4EE600AF1EE10FA02DBDFF8C803B4 -:10154000A06113982062E08C002801D10020206265 -:101550000020E06115982063BDF85A00A08509B00D -:10156000BDEC048B70BC5DF810FB000000247449D6 -:101570000000000080B503F07FFD40F6B9318842DD -:101580008041C043C00F02BD38B50D4605F11004BF -:10159000218F032912D1B5EE400AF1EE10FA06DDD3 -:1015A00029694018286100F077F9286131BD616828 -:1015B0004018606000F070F9606031BD042911D1FD -:1015C000B5EE400AF1EE10FA06DDA1684018A06001 -:1015D00000F062F9A06031BDE1684018E06000F001 -:1015E0005BF9E06031BD70B52DED028B0546B0EEC4 -:1015F000408A0C4620682818206000F04DF92060D1 -:1016000018EE100AF0F74AF921F0004100221346C3 -:10161000F0F7FEFC43D2A94EF069052830D2316FB5 -:1016200000292DD104281CD1E1684018E06000F0A9 -:1016300033F9E0602146B0EE480AF069FFF7A4FFF5 -:10164000E0682818E06000F027F9E0602146B0EE7D -:10165000480A2846FFF798FF00F04BF80120306752 -:101660000AE0B4F84600042803D1B0692818B06134 -:1016700002E0706928187061F0692818F06135E09F -:10168000E0682818E06000F007F9E0602146B0EE5D -:10169000480A2846BDEC028BBDE8704074E7B4F8F8 -:1016A0004600032802D0042807D00DE060682818FF -:1016B000606000F0F1F860600CE0A0682818A0609D -:1016C00000F0EAF8A06005E060682818606000F0AB -:1016D000E3F86060794EF069052803D2002801D054 -:1016E00000F00DF800F005F800203067BDEC028B2B -:1016F00070BD7248002141618161C16170476F48CE -:101700006D494A6843699A184A608A6880698018F6 -:10171000886070470100C8410FB430B52DED088BCB -:10172000B0EE408ADFED698A9FED689ADDED139A8D -:1017300019EE900AF0F7B2F841EC1A0B9FED64BB7A -:10174000BDF83A00042853EC1A2B634824D16349AE -:10175000F0F7DCF853EC1B2BF0F702FAFEF718FD5C -:101760000BEE100AB5EE408AF1EE10FA38D453ECC5 -:101770001A2B5D485A49F0F7C9F804460D4618EE91 -:10178000100AF0F78BF822462B46F0F7BFF8FEF769 -:10179000FFFC09EE100A23E05249F0F7B7F853ECCA -:1017A0001B2BF0F7DDF9FEF7F3FC0BEE100AB5EE9C -:1017B000408AF1EE10FA13D453EC1A2B4A484B49E5 -:1017C000F0F7A4F804460D4618EE100AF0F766F894 -:1017D00022462B46F0F79AF8FEF7DAFC09EE100ADB -:1017E000F5EE409AF1EE10FA18D09DED0D0AB5EE27 -:1017F000400AF1EE10FA11D010EE100AF0F74EF890 -:1018000000223B4BF0F782F802460B460020394994 -:10181000F0F7DAFAFEF7BCFC08EE900A3BEE090A94 -:1018200010EE100AF0F73AF8334A384BF0F76EF83A -:1018300004460D461598F0F731F822462B46F0F78E -:1018400065F804460D4618EE900AF0F727F8224690 -:101850002B46F0F75BF8FEF79BFC00EE100ABDECA0 -:10186000088B30BC5DF814FBDFED240AB4EE600A8F -:10187000F1EE10FA03DBDFED260A30EE200A7047A6 -:10188000DFED1E0AB4EE600AF1EE10FA03DBDFEDC5 -:10189000200A30EE200A70471949884201D31D49B9 -:1018A00008187047D06F0020B471002034720020F7 -:1018B000B47200206C7A0020BC78002034730020C1 -:1018C000847B0020B81E85EB51B8AE3F00000000BD -:1018D0000000000000000C409A9999999999C93F1D -:1018E000CCCCEC3F9999B93FCDCCCCCCCCCCFC3F07 -:1018F00000004E400000F03F7B14AE4701247449C5 -:1019000081969800D46F00200000C841E17A743FAE -:10191000002474C9806967FF5044204E414320254C -:10192000660000005044202D3E204F46520000002B -:101930005044202D3E2057005044202D3E20520080 -:1019400050443A5365744865696768742025660099 -:1019500050443A536574576569676874202566007A -:1019600050443A53657447656E646572202564007F -:1019700050443A202564202564202564000000009E -:1019800050443A496E504654313030385F3100008F -:101990000FB400B593B001208DF80300AA208DF894 -:1019A00001003C208DF802000020ADF84A000A201A -:1019B0008DF828000DF1290000A92022F3F778F90D -:1019C00000208DF820000320099008A8F3F76AF89A -:1019D000012013B05DF814FB00B58BB00020ADF80A -:1019E0002A000A208DF8080000208DF809008DF8E3 -:1019F0000A0001208DF800000320019000A8F3F7F1 -:101A000051F801200BB000BD38B52148046B00F03F -:101A100037F8012810D101208DF8000004F10C05E1 -:101A20006A7D00A9E868E368C018F0F720FB012090 -:101A3000A874002000F021F8012032BD80B5F2F733 -:101A40007DFF144908601449C0F8D01300F5747084 -:101A500012494160124981600FF20D01C1600FF21D -:101A60004D010161012002BD0A48006890F8C103E0 -:101A7000002801D10020704705E00A49087070472E -:101A8000084800787047084890F900007047000047 -:101A900000000020D0FD002091190208D919020889 -:101AA000091A0208FCFD0020FBFD002018B43022BA -:101AB0000B7812FB030301241C700B7812FB030349 -:101AC0005C700B7812FB030318249C700B7812FBDC -:101AD00003000022C2700878401C087011BC05F099 -:101AE000BCBF00000FB400B593B001208DF8030017 -:101AF000AA208DF801003C208DF802000020ADF8EE -:101B00004A000A208DF828000DF1290000A92022A2 -:101B1000F3F7CEF800208DF820000320099008A8E4 -:101B2000F2F7C0FF012013B05DF814FB00B58BB0D5 -:101B30000020ADF82A000A208DF8080000208DF85A -:101B400009008DF80A0001208DF8000003200190A3 -:101B500000A8F2F7A7FF01200BB000BD38B50020A8 -:101B600000902648446C00F039F8012812D1FBF7A8 -:101B70006CFF009004F10C056A7D00A9E868E36839 -:101B8000C018F0F774FA0120A874002000F023F8C0 -:101B9000FBF75FFF012032BD80B5F2F7CFFE184999 -:101BA00008601849C0F8701400F27040164941608E -:101BB000164981600FF20D01C1600FF25D010161F4 -:101BC000012002BD0E48006890F86104002801D190 -:101BD000002070470BE00E49087070470C480078F1 -:101BE000704780B5002000F006F8012002BD0948CA -:101BF00090F9000070470749087070470000002006 -:101C0000CCFD0020E51A02082D1B02085D1B02080E -:101C1000FAFD0020F9FD002018B430220B7812FBE9 -:101C2000030301241C700B7812FB03035C700B7818 -:101C300012FB03031C249C700B7812FB0300002290 -:101C4000C2700878401C087011BCCAE738B5044659 -:101C5000AE4D002028650520686500202864686472 -:101C6000A864E8649FEDAA0B85ED040B85ED060BD7 -:101C700085ED080B85ED0A0B85ED0C0B85ED0E0B44 -:101C80006866A86605F16C00A8654FF4B67200217D -:101C9000F0F7F3F90C2200212846F0F7EEF994ED65 -:101CA000020AB1EE401A94ED010AF1EE400A94EDF9 -:101CB000000A05F1440105F1400005F0D1FF0120C3 -:101CC00032BD00002DE9F04D2DED068B0E468F4FF5 -:101CD0000168396090ED010AB1EE400A87ED010A12 -:101CE00090ED020AB1EE400A87ED020A1E22394643 -:101CF000B86D06F0BEF9796D4A1EB86D3B6D934222 -:101D000027DA1E22591C09B206F0DCF910EE100A7F -:101D1000EFF7C4FDC7E90A011E22386D411C09B264 -:101D2000B86D06F0EDF910EE100AEFF7B7FDC7E950 -:101D30000C011E22386D411C09B2B86D06F0FEF987 -:101D400010EE100AEFF7AAFDC7E90E01386D401C2E -:101D500072E023D11E2209B206F0B4F910EE100A87 -:101D6000EFF79CFDC7E90A011E22796D09B2B86D33 -:101D700006F0C6F910EE100AEFF790FDC7E90C0166 -:101D80001E22796D09B2B86D06F0D8F910EE100A6E -:101D9000EFF784FDC7E90E01786D4DE01E2209B210 -:101DA00006F080F9F8651E220021B86D06F07AF978 -:101DB0008046C7F86080FC6D2068EFF76FFD024633 -:101DC0000B46D7E90A01EFF73FFF82468B46D8F86A -:101DD0000000EFF763FD52465B46EFF7C1FEC7E92F -:101DE0000A016068EFF75AFD02460B46D7E90C017D -:101DF000EFF72AFF82468B46D8F80400EFF74EFD36 -:101E000052465B46EFF7ACFEC7E90C01A068EFF75E -:101E100045FD02460B46D7E90E01EFF715FF0446D4 -:101E20000D46D8F80800EFF739FD22462B46EFF7AC -:101E300097FEC7E90E01786DEFF77AFE41EC180BBB -:101E4000D7E90A0153EC182BEFF7BEFF41EC190B51 -:101E500087ED049BD7E90C0153EC182BEFF7B4FF87 -:101E600041EC1A0B87ED08ABD7E90E0153EC182BA8 -:101E7000EFF7AAFF41EC100B87ED060BFEF788F990 -:101E800001EE100AB0EE418A51EC1A0BFEF780F910 -:101E900000EE900AB0EE481AB0EE608AF0EE418A89 -:101EA00051EC190BFEF774F900EE100AB0EE681A47 -:101EB000F0EE480A07F14C0107F1480005F0D0FEAA -:101EC000386D401C38659FED120B87ED040B87EDD4 -:101ED000080B87ED060B396CB86C00F01DF8044652 -:101EE0007C66796CF86C00F017F8B86604F128018C -:101EF000512902D22830512802D30120307001E04C -:101F000000203070BDEC068BBDE8F08D10E600209F -:101F10000000000000000000421AB52A04DB081A85 -:101F200000F5B470424205E012F1B40F02DA00F598 -:101F3000B470421A1046704738B5DFF8244594F85B -:101F40002000012801D1002032BD204606F09BFE72 -:101F5000204606F005FA0020E08306F097FEDFF841 -:101F60000455E564002060651422014604F1300048 -:101F7000F0F783F820220021DFF8EC04F0F77DF879 -:101F800020220021DFF8E404F0F777F80020A065B4 -:101F9000024605E0D42101FB00510A718A71401C00 -:101FA0000128F7DB0120606400F011F8DFF8C004BD -:101FB000012180F83D10084606F0E4FD0020A064F1 -:101FC000207706F007FE012084F8200032BD70B4AF -:101FD00001460023DFF8882411E0D42504EB8304B4 -:101FE000A46805FB040401262671D66D05FB0300D9 -:101FF000807904EB8000006A3043D0655B1CDFF819 -:10200000700400EB4114DFF85C042579AB42E4DB9B -:1020100029465177237F1376002903D0DFF848340F -:102020005971D06470BC7047DFF834144A6D01EB0D -:1020300082031863501C4865052803D3401E486579 -:1020400000207047012070470020DFF8141402467A -:102050008A654A6D002A0BD00B6B8B65521E4A6550 -:1020600004E001EB8002536B1363401C0428F8DB8F -:10207000704738B50024DFF8E853287F06F0B6FD36 -:1020800002E000F03CF8641C287E8442F9D331BDA4 -:1020900070B50C460025DFF8C863F17F4A1CF27763 -:1020A000332901D32946F177B17F032915D301687C -:1020B00071624168B1628068F062284606F093FD63 -:1020C000307F401C3077317EC0B2884203D328462F -:1020D0003077FFF7CEFFFFF7B7FFB07F411CB17736 -:1020E000652801D33220B077B06D002805D020706C -:1020F00001250A2801D10A202070284670BD2DE94B -:10210000F84300200146DFF85C430BE0D42202FBD9 -:1021100001421379002B04D0937902EB8302126AF7 -:102120001043491C0129F1DB06F079FDCC4D06F086 -:102130009CFD28650020A86506463FE0D42202FBEE -:1021400006F707EB040898F80400002835D030465D -:1021500000F049F8D5F8509098F8060008EB800098 -:10216000006AD9F8001008421ED098F8060008EB63 -:102170008000406B002806D098F8060008EB80002D -:10218000406BFFF751FF98F80600401C88F80600E6 -:1021900098F80510C0B2884206D3B348395940F8C0 -:1021A0002610002088F80600D9F84000002804D046 -:1021B000D9F800100843C9F80000761C012EBDDBD9 -:1021C000286D006806F053FDA86C411CA964B0F5A9 -:1021D0007A7F01D90020A864A448A3492022BDE841 -:1021E000F843F2F775BDF0B59D4C256D00212964CB -:1021F000D4219C4A01FB00208179C1EBC10200EB94 -:10220000820600EB8107386A022846D1B06C0128AB -:1022100043D1306D022808D1686B032803DAF06DD2 -:10222000401CF06501E00020F065306D042808D105 -:10223000686B052803DAF06D401CF06501E00020B2 -:10224000F065306D082808D1686B082803DBF06D55 -:10225000401CF06501E00020F065306D102808D1C9 -:10226000686B102803DBF06D401CF06501E0002076 -:10227000F065F06C142190FBF1F0F16D814206DA0B -:102280002868396A88432860386A286405E0002095 -:10229000F0652868396A08432860386A012861D1E6 -:1022A00096F84800C0075DD5F06C41071ED594ED47 -:1022B0000B0AF9EE000AB4EE600AF1EE10FA09D545 -:1022C00040F22310A9699131814203D3E969913128 -:1022D00081423DD20020F065F06D05283CDA286887 -:1022E000396A88432860386A2864F0BD81070FD5B1 -:1022F00094ED0B0AB5EE400AF1EE10FAEADDA8699A -:102300005A30B528E6D2E8695A30B52820D3E1E73B -:10231000C006E1D5E06AEFF7C1FA21F000410122E1 -:10232000544BEFF775FED5D8606AEFF7B7FA21F096 -:1023300000410022504BEFF783FECBD2A06AEFF7AB -:10234000ADFA21F0004100224B4BEFF779FEC1D2EC -:10235000F06D401CF065BFE70020F0652868396A21 -:1023600008432860F0BD000010B43D49CA68002A47 -:1023700004D14FF48062CA600A614A619FED370A56 -:10238000D1ED040AF8EE600A91ED0A1A60EE810AB6 -:10239000C0EE800A91ED011AB8EE411A70EE810A82 -:1023A000FDEEE00A10EE902AD1ED050AF8EE600A83 -:1023B00091ED0B1A60EE810AC0EE800A91ED021ACF -:1023C000B8EE411A70EE810AFDEEE00A10EE903A86 -:1023D000B0F9024000EB4404D1ED030AF8EE600AC4 -:1023E00091ED091A60EE810A80EE800AD1ED000AB3 -:1023F000F8EE600A30EE200ABDEEC00A10EE101AA8 -:10240000A180B0F9021000EB4101CA80B0F90210BE -:1024100000EB41010B814188491C418009B21E2912 -:1024200001DB1D214180012010BC704710B5002048 -:1024300006E0D4210B4A01FB002100220A71401C56 -:102440000128F6DB064C00206064607706F0C4FBD0 -:102450000020E06584F8200010BD0000C3F51C4199 -:102460005C780020B4350020F87A0020187B00202A -:10247000FC360020000021400000F83F10B5C04CA1 -:10248000002020606060A060206205206062002063 -:10249000A061E061A062E06220636063A063E0632A -:1024A0006064A06404F14C0020644FF4B672002113 -:1024B000EFF7E3FD0C22002104F10C00BDE8104011 -:1024C000EFF7DBBD70B506460C46AD4DA86C401C61 -:1024D000A864304600F01DF8002808D0304600F00F -:1024E000E7F8002803D0686C401C686401E0002015 -:1024F0006864A86C0F280ADA686C0B2803DB0120DB -:102500002070022070BD00202070012070BD0320CB -:1025100070BD38B59A4C0168E16090ED010AB1EEEA -:10252000400A84ED040A90ED020AB1EE400A84EDFF -:10253000050A0A2204F10C01206C05F09AFD616A7B -:102540004A1E206C236A93421DDA0A22591C09B2E2 -:1025500005F0B8FD84ED0D0A0A22206A411C09B27B -:10256000206C05F0CDFD84ED0E0A0A22206A411C84 -:1025700009B2206C05F0E2FD84ED0F0A206A401CD0 -:1025800000EE100A49E018D10A2209B205F09AFDBE -:1025900084ED0D0A0A22616A09B2206C05F0B0FDD3 -:1025A00084ED0E0A0A22616A09B2206C05F0C6FDAC -:1025B00084ED0F0A94ED090A2FE00A2209B205F012 -:1025C00071FD05460A220021206C05F06BFD94ED9B -:1025D0000D0AD5ED000A30EE600AD0ED000A30EEAB -:1025E000200A84ED0D0A94ED0E0AD5ED010A30EEB5 -:1025F000600AD0ED010A30EE200A84ED0E0A94ED57 -:102600000F0AD5ED020A30EE600AD0ED020A30EE74 -:10261000200A84ED0F0A94ED090AB8EEC01A94ED71 -:102620000D0A80EE010A84ED0A0AD4ED0E0AC0EE0E -:10263000810AC4ED0C0AD4ED0F1A81EE811A84EDE3 -:102640000B1A04F11C0104F1180005F009FB206AC3 -:10265000401C20620020A0622063E062A069002884 -:1026600004D400EE100AB8EEC00A04E0404200EEC6 -:10267000100AB8EEC00AF3EE090AB4EE600AF1EEF1 -:1026800010FA13D5E069002804D400EE100AB8EE61 -:10269000C00A04E0404200EE100AB8EEC00AB4EEF0 -:1026A000600AF1EE10FA01D5012032BD002032BDE2 -:1026B0000021334A92ED000AB5EE400AF1EE10FA1D -:1026C00015D1D2ED010AF5EE400AF1EE10FA0ED165 -:1026D000D2ED020AF5EE400AF1EE10FA07D10168D8 -:1026E0001160416851608068906000207047D0EDB3 -:1026F000000A30EEC00A90ED011AD2ED011A31EE57 -:10270000611AD0ED021A92ED022A71EEC21AB5EEEC -:10271000400AF1EE10FA01DAB1EE400AB5EE002AF5 -:10272000B4EE420AF1EE10FA1AD5B5EE401AF1EE07 -:1027300010FA01DAB1EE411AB5EE000AB4EE401A11 -:10274000F1EE10FA0CD5F5EE401AF1EE10FA01DABE -:10275000F1EE611AF4EE401AF1EE10FA00D5012103 -:10276000C2ED000A43685360806890600846704775 -:1027700003480021016041608160416481647047C9 -:10278000BCE9002010B500F034FB00F09AFB0024F7 -:102790000DE020469FED151ADFED140A9FED130A98 -:1027A00000F0BCFE2146052000F0C5FE641C1E2C76 -:1027B000EFD3DFF8640D0021017001634163816391 -:1027C000C163016441648164052141710A21017181 -:1027D000002141708170C1620A2181710021C170A4 -:1027E00010BDDFF8341DC870704700000000000005 -:1027F0002DE9F0472DED048BB0EE408AF0EE608AB3 -:10280000B0EE419ADFF8344DE078012801D100257F -:1028100000E0052526781E2E09D2304600F07EFE07 -:102820003146284600F087FE701C207027E0002605 -:1028300016E0DFF80C1D01EB8602304692ED3D1AE2 -:10284000D2ED1F0A01EB860191ED010A00F066FE50 -:102850003146DFF8F00C3018407800F06CFE761C42 -:102860001D2EE6DB1D20B0EE491AF0EE680AB0EE30 -:10287000480A00F053FE1D21284600F05CFEDFF8F8 -:10288000C89C032D08DA606B401C606348450BD37D -:10289000DFF8B80C606307E0206B401C20634845FC -:1028A00002D3DFF8A80C206300F0BAFDB0EE408A36 -:1028B00000F07EFDF0EE408A00F012FBD4F830808C -:1028C0009FEDA09B4046EFF73DF953EC192BEFF736 -:1028D0001DF8EFF70FF90646E76B3846EFF732F9C8 -:1028E00053EC192BEFF712F8EFF704F98246207931 -:1028F0000A2802D0142846D05CE09FED940AB4EE7A -:10290000408AF1EE10FA0CD5F4EE408AF1EE10FA9E -:1029100007D5032D05DA14202071780800F0F4FBA8 -:1029200048E0781CE063484502D3DFF8200CE06300 -:10293000042D3FDB00F066FAE06A01283AD1B6F5D3 -:102940007A7F37D994ED090AB5EE400AF1EE10FA14 -:1029500001DCB1EE400ADFED7E0AB4EE600AF1EE72 -:1029600010FA0DDA94ED0A0AB5EE400AF1EE10FA0B -:1029700001DCB1EE400AB4EE600AF1EE10FA19DBA8 -:102980000020E06216E09FED710AB4EE408AF1EE9D -:1029900010FA04DAF4EE408AF1EE10FA02DB0A20B3 -:1029A000207107E0A06B401CA063484502D3DFF80C -:1029B0009C0BA06300206070607902280AD0C0F0F0 -:1029C0005B8104281BD074D3062800F00381C0F07B -:1029D000E68051E1032D0FDA606B012802D12079E6 -:1029E000A07149E10A2840F047810420607100F09D -:1029F000FDFB002020633FE1002060633CE1E06AD2 -:102A0000012832D1207900F049F901282DD140F276 -:102A1000E930864201D2002E22D1824502D2BAF19B -:102A2000000F1DD194ED090AB5EE400AF1EE10FA3F -:102A300001DCB1EE400ADFED460AB4EE600AF1EEC9 -:102A400010FA10D594ED0A0AB5EE400AF1EE10FA2C -:102A500001DCB1EE400AB4EE600AF1EE10FA02D5E4 -:102A6000A078607001E00020E062E06A002814D1E4 -:102A7000B6F5C87F01D8002E08D1A078002808D06C -:102A8000BAF1FB0F05D2BAF1000F02D0A078607046 -:102A900003E0207900F048F96070032060716078ED -:102AA000A070002020636063A063E06300F022FB5D -:102AB000E2E0042D17DBB8F1010F02D100F001FABA -:102AC000DAE0B8F1060FC0F0D7800021404600F0F0 -:102AD000D5FAA078032802D10020E06262E000F07D -:102AE000E1FCE0625EE00020206320790A2853D1F7 -:102AF000E06B0A28C0F0C080002100F0BFFAA07887 -:102B000000F0D0FCE06294ED130AB5EE400AF1EE5D -:102B100010FA02DDF0EE400A01E0F1EE400A9FED0E -:102B2000B81AF4EE410AF1EE10FAC0F2A580D4ED25 -:102B3000140AF5EE400AF1EE10FA0BDDF0EE601A21 -:102B40000AE000BF00000000000034409A99193FDD -:102B500000002042F1EE601AF4EE411AF1EE10FA94 -:102B6000C0F28A80F5EE400AF1EE10FA01DCF1EED7 -:102B7000600AB5EE400AF1EE10FA01DCB1EE400A4F -:102B8000F4EE400AF1EE10FA76D50520607100F0FF -:102B900098F90020A0636FE00020E0636CE0B8F1DA -:102BA000060F04D3022060710020606364E0A06B14 -:102BB000012805D1E06B00F0A7FA2079A0715BE055 -:102BC000052859D3606B052856D306206071002074 -:102BD000206351E0207914284ED1E06A01282DD1DC -:102BE00040F2E930864201D2002E22D1824502D243 -:102BF000BAF1000F1DD194ED090AB5EE400AF1EECD -:102C000010FA01DCB1EE400ADFEDB30AB4EE600A5F -:102C1000F1EE10FA10D594ED0A0AB5EE400AF1EE85 -:102C200010FA01DCB1EE400AB4EE600AF1EE10FADF -:102C300002D5A078607001E00020E062E06A002820 -:102C400011D140F29110864201D2002E04D182456A -:102C500005D2BAF1000F02D0A078607003E0A0792D -:102C600000F062F86070032060716078A07000204E -:102C700020636063E063A0636078012801D10120D4 -:102C800008E0022801D1022004E0032801D103203A -:102C900000E00020BDEC048BBDE8F08700B52DED11 -:102CA000048B81B000210A2808D1DFF86C0890ED70 -:102CB000100A90ED118AD0ED128A11E0142808D183 -:102CC000DFF8540890ED150A90ED168AD0ED178ABA -:102CD00006E09FED820A9FED818ADFED808A032165 -:102CE00003291CD29FEDD59A00F03AFCB4EE490AB4 -:102CF000F1EE10FA11D5B0EE480A00F031FCB4EE56 -:102D0000490AF1EE10FA08D5B0EE680A00F028FC86 -:102D1000B4EE490AF1EE10FA01D4012000E00020DF -:102D200001B0BDEC048B00BD00210A280AD1DFF8F8 -:102D3000E807D0ED100A90ED111AD0ED121A9FEDB0 -:102D4000670A13E014280AD1DFF8CC07D0ED150A82 -:102D500090ED161AD0ED171A9FEDC50A06E0DFEDCB -:102D60005F0A9FED5E1ADFED5D1A032103293ED253 -:102D7000B4EE600AF1EE10FA0BD59FEDBE2AB4EE68 -:102D8000421AF1EE10FA04D5F4EE421AF1EE10FAFE -:102D90002AD4B4EE600AF1EE10FA0BD59FEDB62AF4 -:102DA000B4EE421AF1EE10FA04DBF4EE421AF1EE40 -:102DB00010FA0BDAB4EE600AF1EE10FA08D59FEDC6 -:102DC000CC1AF4EE411AF1EE10FA01DB01210EE00B -:102DD000B4EE600AF1EE10FA08D59FEDCA0AF4EEDF -:102DE000401AF1EE10FA01D5022100E00321084655 -:102DF0007047DFF8240700218160C16001617047DE -:102E00000100C03F10B52DED068BDFF80C4794EDA7 -:102E1000050AB5EE400AF1EE10FA13D194ED060A58 -:102E2000B5EE400AF1EE10FA0CD194ED070AB5EEBA -:102E3000400AF1EE10FA05D1A0686061E068A06177 -:102E40002069E06194ED028A94ED050A38EE400AAB -:102E500000F0F6F8F0EE408A94ED039A94ED060A3D -:102E600039EE400A00F0ECF8F0EE409A94ED04AA36 -:102E700094ED070A3AEE400A00F0E2F8F0EE40AABC -:102E800094ED080A30EE280A00F0DAF884ED080A1A -:102E900094ED090A30EE290A00F0D2F884ED090A0F -:102EA00094ED0A0A30EE2A0A00F0CAF884ED0A0A04 -:102EB00084ED058A84ED069A84ED07AABDEC068BA5 -:102EC00010BDDFF854060021016241628162416158 -:102ED0008161C161704700000000204200000000D5 -:102EE000F0B52DED068B83B01D2100A800F006FB88 -:102EF0009DED000AB5EE400AF1EE10FA01DCB1EEEC -:102F0000400ADFEDB00AB4EE600AF1EE10FA01D526 -:102F10000020009000AE96ED010AB5EE400AF1EEF9 -:102F200010FA01DCB1EE400AB4EE600AF1EE10FADC -:102F300001D50020706096ED020AB5EE400AF1EE70 -:102F400010FA01DCB1EE400AB4EE600AF1EE10FABC -:102F500001D50020B0609FED9C8B9FED9D9B9FED68 -:102F60009EABDFF8D875B868EEF798FC04460D46BE -:102F70000098EEF793FC53EC1A2BEEF7C7FC53ECDA -:102F8000192BEEF721FF53EC182BEEF7BFFC22466E -:102F90002B46EEF7E5FDFDF7FBF800EE100A87ED96 -:102FA000020A00F04DF887ED020AF868EEF776FCA9 -:102FB00004460D467068EEF771FC53EC1A2BEEF7E1 -:102FC000A5FC53EC192BEEF7FFFE53EC182BEEF794 -:102FD0009DFC22462B46EEF7C3FDFDF7D9F800EE27 -:102FE000100A87ED030A00F02BF887ED030A386911 -:102FF000EEF754FC04460D46B068EEF74FFC53EC78 -:103000001A2BEEF783FC53EC192BEEF7DDFE53EC95 -:10301000182BEEF77BFC22462B46EEF7A1FDFDF7C1 -:10302000B7F800EE100A87ED040A00F009F887ED02 -:10303000040A03B0BDEC068BF0BD00009A99993EDE -:10304000DFED670AB4EE600AF1EE10FA04DBDFEDA3 -:10305000650A30EE200A7047DFED630AB4EE600ABD -:10306000F1EE10FA03D5DFEDD00A30EE200A7047FA -:103070009A9999BECCCCCCBDCDCCCC3D10B49FEDB3 -:10308000CB0ADFEDCA0A1F2801D31E2000E0C0B220 -:103090000022DFF8AC440EE0C2F11D03DBB204EB0A -:1030A000830393ED1E1A30EE010A93ED3C1A70EE85 -:1030B000810A521CD2B2824209DA002902D1C2F13D -:1030C0001D03EBE70129E7D1C2F11803E6E701EEA2 -:1030D000100AB8EE411ADFF8640480EE010A80EDB0 -:1030E000130A80EE810A80ED140A10BC70470000BC -:1030F000CDCCCC3EDFF84404002141658165C1653B -:1031000070470000CCCCCCBE30B49FEDA80ADFEDF8 -:10311000A70A9FEDA61A1F2801D31D2001E0401E1B -:10312000C0B200210DE030EE210A02EB8302D2EDA5 -:103130001E1A70EEA10AD2ED3C1A31EE211A491C7A -:1031400089B2DFF8D44381422ADA22781E2A03D2D8 -:10315000521A531EDBB202E0C1F11D03DBB2DFF8ED -:10316000E02352F8235001EE905A02EB830555F804 -:10317000045C02EE105A71EEC22A9FEDC93AF4EED9 -:10318000432AF1EE10FACEDBF5EE401AF1EE10FA1A -:10319000C9DDB5EE402AF1EE10FAC4D50B29C2DB29 -:1031A00001EE901AF8EE611A80EE210A84ED150AFC -:1031B00080EEA10A84ED160A81EE210A84ED170A39 -:1031C00030BC70470BD7233DF8C1631ADCA54C40D7 -:1031D0000000000000408F4000000000000034406C -:1031E000010034430000B4C3000034C3F0B4DFED89 -:1031F000C92AB0EE620AB0EE622ADFED6C0A9FEDDA -:103200006B1ADFED6A1ACD4801781E2900D31E2102 -:10321000026B914204D201EBD1725210D2B201E0A2 -:103220005208D2B200230DE0B1EE633AB4EE443A54 -:10323000F1EE10FA05DB71EEA31AB7EE003A32EEAA -:10324000032A5B1CDBB2934280F29F80CC1A641E7F -:10325000E4B225466E1EF6B2B94D55F8267003EE5F -:10326000107A05EB8407D7ED003A05EB860797ED5A -:10327000004A73EEC43AF5EE403AF1EE10FA05EB6F -:103280008407D7ED003A02DD33EEC33A01E033EEB6 -:10329000633A05EB8606D6ED1E3A97ED1E4AD6ED4B -:1032A0001E4A34EE644AB5EE404AF1EE10FA97ED4C -:1032B0001E4A02DD74EE633A01E073EEC43A06F191 -:1032C000780C9CED1E4A07F17806D6ED1E4A9CED5F -:1032D0001E5A74EEC54AF5EE404AF1EE10FAD6EDEC -:1032E0001E4A02DD34EEC44A01E034EE644ADFEDEA -:1032F000984AB4EE643AF1EE10FA09DBF4EE643A5F -:10330000F1EE10FA04DBB4EE644AF1EE10FA3CDAA6 -:1033100055F8244003EE104AB5EE403AF1EE10FAAB -:1033200002DDF0EE433A01E0F1EE433A9FED894AC7 -:10333000F4EE443AF1EE10FA05DB70EE830AB7EED4 -:10334000003A30EE030A97ED1E3AB5EE403AF1EE40 -:1033500010FA02DDF0EE433A01E0F1EE433AF4EE0A -:10336000443AF1EE10FA05DB31EE031AB7EE003AFB -:1033700072EE832AD6ED1E3AF5EE403AF1EE10FADF -:103380007FF752AFB0EE633A50E780EE800A80EDEF -:10339000100A81EE220A80ED110A81EE820A80ED88 -:1033A000120AF0BC704700000000B44300000000A7 -:1033B00010B52DED028B9FED688A002426E0C4F144 -:1033C0001D00C0B25E4901EB800202F1780393ED6B -:1033D0001E0AD2ED1E0A51F8200001EE100A21EE5D -:1033E000011A00EEA01A00EE001A11EE100AEEF714 -:1033F00055FA41EC100B05F061FC51EC100BFCF799 -:10340000C7FE00EE100A38EE008A641C062CD6D3E4 -:10341000B1EE080A88EE000ABDEC028B10BD000078 -:1034200010B52DED028B9FED4C8ADFED4B8A002409 -:1034300028E0C4F11D00C0B2414901EB800202F155 -:10344000780393ED1E0AD2ED1E0A51F8200001EE1A -:10345000100A21EE011A00EEA01A00EE001A11EE79 -:10346000100AEEF71BFA41EC100B05F027FC51ECAB -:10347000100BFCF78DFE00EE100A38EE008A40EECD -:10348000008A641C062CD4D3B1EE080AC8EE000AE8 -:1034900088EE800A00EEE00ABDEC028B10BD000051 -:1034A0009A99993E0121022812D19FED2C0A2348B6 -:1034B000D0ED130AF4EE400AF1EE10FA1CDBD0ED69 -:1034C000140AF4EE400AF1EE10FA15DB002113E0C5 -:1034D000012811D1194890ED130AFEEE000AB4EE4E -:1034E000600AF1EE10FA07D590ED140AB4EE600A06 -:1034F000F1EE10FA00D5002108467047104A52F844 -:103500002130036002EB81018A6F4260D1F8F01034 -:1035100081607047BD3786357CF90020C0B208490C -:1035200001EB800282ED000A01EB8000C0ED1E0A73 -:1035300080ED3C1A7047034A885470477CF900209C -:1035400008EF002040FC002041420F0040420F00E5 -:103550000100A040CDCC4C3D000000000100003F28 -:10356000B5EE400AF1EE10FA03D5FFEE000A20EEA8 -:10357000200A704710B5044602E0C068EFF7E2FE8B -:10358000EFF721FE20680028F7D104484078002892 -:1035900004BFBDE81040EFF710BE10BD2438002076 -:1035A000012005F00BBC00000649086808B10020A6 -:1035B0007047054808600549C908C900091A016033 -:1035C000704700BFE4FD0020009C002000AC0020FC -:1035D0000CB41CB5044604A80190009401AB0A4643 -:1035E00000A9074878441830F7F788FB00990022B3 -:1035F0000A7000285CBF0098001B16BC5DF80CFB2D -:1036000027E5FEFF10B50024ECF710FD002800D0E0 -:103610000124204610BD000038B500200246DFF826 -:10362000C84403E004EB80018A63401C0928F9DBED -:103630001046E066A066642020606060DFF8AC049D -:10364000A060B5EE000A84ED030A84ED040A84ED5F -:10365000050A84ED060A84ED070ADFF89404206267 -:1036600005206062A062104603E004EB80018A63DB -:10367000401C0928F9DB10466067A067E06704F189 -:1036800080057C2201462846EEF7F7FC0C2200213B -:1036900004F12C00EEF7F1FC256731BD2DE9F04176 -:1036A00006460F4690461C46DFF83C5485ED0B0A53 -:1036B000F1EE601AC5ED0C1AB1EE410A85ED0D0A66 -:1036C0000A2205F12C01286F00F018FA00F03EF8EC -:1036D0001421022801D004280DD1A86F401CA8672E -:1036E00098FBF1F2904202DB0020E8670CE0E86F03 -:1036F000401CE86708E0082801D0102804D1E86FD2 -:10370000401CE8670020A86796FBF1F0AA6F824290 -:1037100001DB0120686797FBF1F0E96F814201DB73 -:1037200002206867686F012803D0022801D00020BA -:103730006867696F080005D021700021A967E967F3 -:10374000696701E000212170BDE8F0812DE9F043B7 -:103750002DED048B87B09FEDA98ADFF88C43002004 -:1037600020666066E06E461CE666A76EDFF884534E -:103770000A2F41DAD4F870900A220021484600F05E -:10378000D6F980460A220121484600F0D0F904EB20 -:10379000870106EB860292008A63012F2ADB98EDEF -:1037A000000AD0ED000A30EE600A8DED030A98EDB4 -:1037B000010AD0ED010A30EE600A03AA82ED010A87 -:1037C000D8ED020A90ED021A70EEC10AC2ED020AAB -:1037D00005EB87009DED031ADDED031A21EE211A9A -:1037E00000EE001A00EEA01A80ED061A8A6B496BF3 -:1037F000511AC163781CA0660A2E01DA03202867DB -:10380000A06E0A28C0F2E280401EA0660A2211467D -:10381000206F04F057FC85ED040A0A221146206F40 -:1038200004F06EFC85ED050A0A221146206F04F0B3 -:1038300085FC85ED060A002006E005EB8001D1ED50 -:10384000070A38EE208A401C0928F6DBF2EE040A4B -:1038500095ED041A81EE201A8DED001A95ED051AEA -:10386000C1EE208A00A8C0ED018A80EE209A80ED8A -:10387000029AE06E0A2805DB00986860C5ED028AAE -:1038800085ED039A00260FE00A22C6F1090109B26C -:10389000206F00F04CF995ED031AD5ED020A95ED75 -:1038A000010A00F0ADF8761C0A2EEDDB606A216E8D -:1038B00088423ADAA06B2978002908D1686601218C -:1038C000297000996960C5ED028A85ED039AA16AA5 -:1038D000626E91420CDA697800290BD1A866012149 -:1038E000697000996960C5ED028A85ED039A01E06F -:1038F000002169702168AA6E821A914208D26A7802 -:10390000002A05D00020A870E870012028674CE04C -:103910006A6E801A814246D22878002843D000205F -:10392000A870E870022028673FE000986860C5ED45 -:10393000028A85ED039A002028706870A878002814 -:1039400001D10120A8709FED660A28EE000AB5EEAD -:10395000400AF1EE10FA03DC9FED620A28EE000A3D -:10396000D4ED020AB3EE041A60EE810AF4EE400AC6 -:10397000F1EE10FA07D5E878002806D1A06BE866CA -:103980000120E87001E00020E8706068A0F5FA709E -:10399000A16BEA6E891A884205D2E878002802D025 -:1039A0000420286701E00320286700200CE004EBD6 -:1039B0008001CA6B8A63082805DA05EB80010A6A70 -:1039C000CA614A6C0A64401C0928F0DB286F012890 -:1039D00006D00DD3032807D004D3042806D007E06F -:1039E000022006E0042004E0082002E0102000E0AD -:1039F000002007B0BDEC048BBDE8F08300000000A0 -:103A0000D0ED001A31EEC00A3B4981ED000AD0ED3D -:103A1000011A71EEE00AC1ED010AD0ED021A31EE91 -:103A2000C11A81ED021AB5EE400AF1EE10FA03D583 -:103A3000B1EE400A81ED000AF5EE400AF1EE10FA0F -:103A400003D5B1EE600A81ED010AB5EE401AF1EE40 -:103A500010FA03D5B1EE410A81ED020A91ED000A98 -:103A60002148D0ED030AB4EE600AF1EE10FA13D546 -:103A7000D1ED010A90ED041AF4EE410AF1EE10FACC -:103A80000AD5D1ED020A90ED051AF4EE410AF1EEE5 -:103A900010FA01D5012200E00022D0ED060AB4EEB2 -:103AA000600AF1EE10FA13D591ED010AD0ED070A84 -:103AB000B4EE600AF1EE10FA0AD591ED020AD0EDEB -:103AC000080AB4EE600AF1EE10FA01D5012100E017 -:103AD0000021036ED2180266426E89184166704753 -:103AE00000007A4400007AC4A8F1002000004041A0 -:103AF0003333B33EC8CA00201CFD00200388934224 -:103B000001D30023038003885B1C03809BB2934294 -:103B100001D300220280028802EB420300EB830003 -:103B2000001D91EC030A80EC030A01207047B0F9F4 -:103B30000030591A09B2002901D511FA82F109B2EF -:103B400001EB410200EB8200001D70472DE9F041BE -:103B500054220021DFF8AC0AEEF78FFADFF8A84A0A -:103B60000C2200212046EEF788FA1C22002104F1E5 -:103B70001000EEF782FA1C22002104F12C00EEF76F -:103B80007CFADFF8885A002028644FF47A720146E4 -:103B9000DFF87C0AEEF771FA4FF47A720021DFF851 -:103BA0004C0CEEF76AFA0020A0646864DFF8406C01 -:103BB000B062F0623063A8647063B063DFF8347C95 -:103BC0007863E864E0642865012068650020F0639C -:103BD000A8654FF0FF30E86528660020686630640D -:103BE000B863A866F8637064B064F0641C22014690 -:103BF00006F15000EEF741FA0020E866082201467F -:103C0000281DEEF73AFA2822002105F10C00EEF704 -:103C100034FA42F210702884688400202883688374 -:103C2000E8600C2201463046EEF727FADFF8FC0B7D -:103C30007060DFF8FC0B30604FF0FF303081002007 -:103C40002870A886E886288768873C220146DFF826 -:103C5000140CEEF712FA00202065F066A081606572 -:103C6000A887E88770673067286705F184082822ED -:103C700005F10C014046EEF7FAF9C4F8588000202F -:103C80006867A8673864B067F0677864C5F8800033 -:103C9000E86760662066E06501202067E066A06650 -:103CA0000020E067A0676067282201463846EEF7EB -:103CB000E4F90C22002106F11C00EEF7DEF90C22DB -:103CC000002107F12800EEF7D8F91022002106F1B3 -:103CD0000C00BDE8F041EEF7D0B910B584B0DFF8C4 -:103CE000104B0C22214600A8EEF7C1F9FFF72EFF7A -:103CF0000C2200A92046EEF7BAF91FBD2DE9F04FBE -:103D00002DED0C8B83B00020029082460446DFF834 -:103D1000E45A95ED118AD5ED0E8AC5ED118ADFF8CA -:103D2000D06AD6ED109AC5ED0E9ADFF8E07897EDDF -:103D3000199AB8EE490ADFEDB70A80EE80AA86ED3F -:103D400010AAD7F84CB0F86DABEB0000FA30FA21AE -:103D5000B0FBF1F201FB12091FFA89F9B9F14C0F1E -:103D600002DA786D012807D12046B887F887DFF896 -:103D700098080221C181AAE1D7F85880B8F1040F50 -:103D800032D3F4EE698AF1EE10FA2DD5F4EE4A9AA8 -:103D9000F1EE10FA28D51AEE100AEDF77FFD024673 -:103DA0000B46CDE9002318EE900AEDF777FDDFF81A -:103DB000842ADFF8843AEDF7A9FDDDE90023EEF768 -:103DC0003FF911D29FEDDD0AB4EE40AAF1EE10FAF0 -:103DD0000ADBC6ED109AC5ED0E8A85ED118ADFF873 -:103DE00028080321C181A3E1D6ED0AAAC6ED0BAADA -:103DF00096ED0DBA86ED0EBA484600EE100AB8EE02 -:103E0000400AD7ED110AC0EE800A97ED121A81EE32 -:103E1000001A2046B0627063F86D214621E0401C14 -:103E200080B2FA2800D12046DFF8E42702EB8002B6 -:103E3000D2ED001A71EEE01A96ED0A2A01EEA12ADF -:103E400086ED0A2ADFF8A42902EB8002D2ED001ADF -:103E500071EEC11A96ED0D2A01EEA12A86ED0D2A0A -:103E6000491C89B24945DADBD6ED0A0AC0EE80BAB0 -:103E7000C6ED0ABAD6ED0D0A80EE80CA86ED0DCAEF -:103E8000D6ED1FCAC5ED10CA97ED1D0AD7ED1E0A63 -:103E900030EE60DA86ED1FDA00F04CFB012803D12A -:103EA0002046B887F88712E1B8F1000F0AD1F88FE1 -:103EB000B98F10FA81F2052A04DB44185046B887FE -:103EC000F88705E0B8F1000F02D02046B887F887E0 -:103ED00018FA84F0002832D19FEDA28B3CEE0B0A39 -:103EE00010EE100AEDF7DAFC53EC182BEDF70EFD8F -:103EF0005246DFF8283CEEF7A3F816D33BEEAA0AA9 -:103F000010EE100AEDF7CAFC53EC182BEDF7FEFC8F -:103F10005246DFF80C3CEEF793F806D3B3EE040AF2 -:103F2000B4EE40DAF1EE10FA09D5B88F401CB8872C -:103F3000C7F860B0DFF8D0060621C181C7E0B88FAE -:103F4000002810D08CEE0B0AF0EE080AB4EE600ADE -:103F5000F1EE10FA05D5032805D304195046B887A9 -:103F600001E05046B88718FA84F000281DD1B7EE5A -:103F7000000AB4EE40AAF1EE10FA04D5DFF8880684 -:103F80000721C181A3E09FED790AB4EE40AAF1EECA -:103F900010FA0ADBF88F022806D2401CF887DFF8F7 -:103FA00068060821C18192E004195046F887B0EEF6 -:103FB0006B1AF0EE4C0AB0EE4A0A4946A4B220460B -:103FC00000F034FB012808D1C6ED109A86ED0DBA39 -:103FD000C6ED1FCAC6ED0AAA79E09FED650AB4EEE8 -:103FE00040AAF1EE10FA02DBDFF8440C30645046D0 -:103FF000B887B8F1000F0FD196ED100A87ED1A0AB5 -:1040000085ED0F0AC6ED0CBA85ED0DCA86ED1EDAF8 -:104010004FE000BF00007A44B6EE008A00F030FAAC -:10402000012818D196ED100AF0EE000A20EE200AC1 -:1040300086ED100A4FF0010A6BEE880AC6ED0A0AF7 -:104040002CEE081A86ED0D1AC6ED0B0A86ED0E1A37 -:1040500085ED0E0A641C96ED100AD5ED0E0A70EE81 -:10406000200A60EE880AC7ED1A0A96ED0A1AD6ED04 -:104070000B1A31EE211A21EE081A86ED0C1A96ED74 -:104080000D1AD6ED0E1A31EE211A21EE081A85ED21 -:104090000D1AB4EE600AF1EE10FA02D4BAF1010F73 -:1040A00001D185ED0F0A3CEE8D0A20EE080A86ED5F -:1040B0001E0A204680B200F05DF800F09DFBF8601B -:1040C00000F03EF8C7F860B001200290386702980F -:1040D000012802D10120288003E0DFF82C05C089E7 -:1040E0002880A4B26C6085ED029AA5F80C90788FB8 -:1040F000E881B06A2861706B6861306CA861306BD0 -:10410000E861686B2862B86E6862C7F85CB000202E -:1041100078667864B86478651022014606F10C0070 -:10412000EDF7ABFF0C22002106F11C00EDF7A5FF17 -:10413000029803B0BDEC0C8BBDE8F08F010040404D -:10414000DFF8C804DFF8A816CA6B02614A6C426245 -:104150008A6C8262CA6CC262826E4261096F0163BC -:1041600070470000000000000000E03F6766164056 -:104170000100A0402DE9F0472DED068B824600207E -:104180000146DFF86C46DFF88454BAF1000F1CD00A -:10419000E66B721E02F00702521906F007035B1964 -:1041A0001B791371AF6D7A1E0723B2FBF3F6C6EBD2 -:1041B000C606921B04EB8202B7FBF3F3C3EBC30307 -:1041C000FB1A04EB83031B6D136595ED1A8AB0EEA1 -:1041D000040AB4EE408AF1EE10FA08D494ED1B0AFA -:1041E000F0EE080AB4EE600AF1EE10FA02D50322EE -:1041F0002A8301E004222A83E66B06F007025219A3 -:104200002B8B1371024603E0032B00D1491C521C77 -:10421000082A06DA531993F90430042BF4D1401C10 -:10422000F5E780B210FA81F101EBD17149108142BA -:1042300002DA0420688301E003206883F0EE489AE4 -:10424000B7EE080AB4EE408AF1EE10FA02D5F7EEA6 -:10425000089A08E09FED890AB4EE408AF1EE10FA60 -:1042600001DBF1EE029A19EE900AEDF717FB41EC33 -:104270001A0B53EC1A2BDFF8480BDFF8481BEDF74D -:1042800045FBDFF8442BDFF8443BEDF769FC804643 -:10429000894653EC1A2BDFF8380BDFF8381BEDF7A3 -:1042A00035FB53EC1A2BEDF731FB02460B4640462B -:1042B0004946EDF7C9FCFBF76BFF00EE100AD4EDA1 -:1042C000010A20EE200A10EE100AEDF7E7FADFF8F7 -:1042D000082BDFF8083BEDF719FBFBF759FF00EE61 -:1042E000100A84ED110AB4F90800022805D1DFEDA7 -:1042F0008F0A20EE200A84ED110AD4ED118A94ED84 -:10430000120A30EE289A84ED129A28EEA90ADFEDFF -:10431000880A20EE200A84ED130AAF6D0720B7FB50 -:10432000F0F0C0EBC000381A04EB800080ED140AF6 -:104330000020E866072F20D209E004EB800191ED10 -:10434000141A70EE810AC5ED1B0A401C80B2D5ED2F -:104350001B0A8742F1D201EE100AB8EE411AC0EEF4 -:10436000810AC5ED1B0A12E004EB800191ED141ADD -:1043700070EE810AC5ED1B0A401CD5ED1B0A07280B -:10438000F2DBB1EE0C1AC0EE810AC5ED1B0A10EE8D -:10439000100AEDF783FA41EC100B9FED9EAB688B92 -:1043A000042853EC102BDFF8600C0BD1DFF86C1CE9 -:1043B000EDF7ACFA53EC1A2BEDF7D2FBFBF7E8FE66 -:1043C00060670AE0DFF8681CEDF7A0FA53EC1A2BDF -:1043D000EDF7C6FBFBF7DCFE6067606FEDF75EFA9A -:1043E000DFF8702CDFF8703CEDF790FA80468946D4 -:1043F0002068EDF753FA42464B46EDF787FA8046C0 -:10440000894618EE100AEDF749FA0022DFF8603C01 -:10441000EDF77CFA02460B460020DFF8641CEDF74E -:10442000D3FC42464B46EDF771FAFBF7B1FE00EEC6 -:10443000100A84ED1D0AD4ED1C0A70EE800AC4ED4A -:104440001C0A701CE063791CA965BAF1000F10D03A -:104450005044E0630AEB0100A86501EE10AAB8EE33 -:10446000411A01EE289A84ED129A41EE000AC4ED39 -:104470001C0ABDEC068BBDE8F087000001009040EF -:10448000F0B52DED028B0026D94F97ED108AD94853 -:10449000C06BEDF703FA4FF06632DFF8E83BEDF75B -:1044A00035FA02460B4614461D4618EE100AEDF783 -:1044B000F5F922462B46EDF7C3FD05D25348408F50 -:1044C000022801D3012617E09FED540AB4EE408A7A -:1044D000F1EE10FA10D597ED060ADFED510AB4EEB1 -:1044E000600AF1EE10FA07DBDFED4E0AB4EE600A67 -:1044F000F1EE10FA00D5012697ED1B0AF0EE000A46 -:10450000B4EE600AF1EE10FA0BD59FED470AB4EE57 -:10451000408AF1EE10FA04DB3C48408F032800D3B8 -:1045200000263046BDEC028BF0BD00001EC47E3F6D -:104530000000704230B52DED048B0025AC4C3348A3 -:10454000408B03281ED294ED100ADFED370AB4EE3B -:10455000600AF1EE10FA15DB94ED0A0AF2EE040A95 -:10456000B4EE600AF1EE10FA0CD594ED0D0ADFED11 -:10457000B30AB4EE600AF1EE10FA03D52248042122 -:10458000C181012594ED0D0AF3EE040AB4EE600A30 -:10459000F1EE10FA2ED49FEDAA8BD4ED0E0A30EE78 -:1045A000200A10EE100AEDF779F953EC182BEDF70D -:1045B000ADF90022DFF8D43AEDF742FD1AD394EDBD -:1045C0000A9A94ED0B0A39EE000A10EE100AEDF784 -:1045D00065F953EC182BEDF799F90022DFF8B03AA2 -:1045E000EDF72EFD06D3B2EE040AB4EE409AF1EEDA -:1045F00010FA03D504480521C18101252846BDECE8 -:10460000048B30BDA4F200200CF800208CF40020B4 -:10461000A0D400200000000000000C409A99993FAF -:10462000010020420000C842010000402DE9F04195 -:104630002DED028B08EE101A0026DFF8587AB96DBE -:104640004018DFF8AC8102281AD398ED100ADFED8C -:104650007E0AB4EE600AF1EE10FA11DB98ED0E0A54 -:10466000D8ED0D0A80EE200ADFED780AB4EE600A7C -:10467000F1EE10FA04DBDFF8201A0922CA810126C4 -:1046800002281CD39FED720AD8ED0E0A98ED0D1A80 -:10469000C0EE810AF4EE400AF1EE10FA0FDBD8ED1D -:1046A0000B0A98ED0A1AC0EE810AF4EE400AF1EE08 -:1046B00010FA04DBDFF8E0190A22CA81012600287B -:1046C0001BD0D8F87800EDF7E9F84FF03332DFF877 -:1046D000CC39EDF71BF902460B4614461D46D8F8B7 -:1046E0007C00EDF7DBF822462B46EDF7A9FC04D25F -:1046F000DFF8A4090B21C181012698ED100ADFED36 -:10470000550AB4EE600AF1EE10FA08DA97ED1A0ACB -:10471000DFED510AB4EE600AF1EE10FA1CDB98ED01 -:104720000D0ADFED4F0AB4EE600AF1EE10FA0BD479 -:1047300098ED0A0ADFED490AB4EE600AF1EE10FACC -:1047400002D4788F022807D3788B032804D3DFF8AC -:1047500048090C21C181012698ED0C0ADFED400AC1 -:10476000B4EE600AF1EE10FA08D498ED1B0AF1EEEF -:10477000040AB4EE600AF1EE10FA15D5F86FD7F816 -:1047800080100818EDF7D4F90022DFF81439EDF79E -:10479000BDF80122DFF8F438EDF73AFC04D8DFF871 -:1047A000F8080D21C1811646B8EEC80A1148D8EDA7 -:1047B000070AC0EE800AC0ED0A0AD8ED080AC0EE6A -:1047C000800AC0ED0B0AD8ED090A80EE800A80ED60 -:1047D0000C0A0C2200F1280107F1AC00EDF747FCB0 -:1047E0003046BDEC028BBDE8F081000088D8002087 -:1047F0008CF80020E8FA00200020DFF8A818CA6B27 -:1048000012F10A0F0FD29FEDC40AD1ED120AF4EE95 -:10481000400AF1EE10FA06DAD1ED1C0AF4EE400A75 -:10482000F1EE10FA00DB0120704700000000354374 -:1048300000009042CDCCCCCCCCCCFC3F0000204240 -:10484000000000000000E03F010060400100A040C7 -:1048500001007041010090400100804000001643BB -:104860000000C84374FB00202DE9F24F04460025E8 -:1048700000F0C6FBDFF81C68284630677067B06739 -:10488000DFF81478F881204600F04CF930780528DC -:1048900005D10120706528463070F0863087706E33 -:1048A000BDF8001010FA81F07066D6F84C80F06DFB -:1048B000804501D101207065D7F84C9009EB490083 -:1048C0004FEA800ADFF8E00721684AF800100AEB97 -:1048D000000B6068CBF80400A068CBF80800BDF8B6 -:1048E0000010204600F0A6F9F0619BED020ADBED16 -:1048F000010ADFF8B4075AF8000001EE100A21EEB1 -:10490000011A00EEA01A00EE001A11EE100AECF7E0 -:10491000C5FF41EC100B04F0D1F951EC100BFBF783 -:1049200037FC00EE100AD6F850A0BAF1000F0ED1F5 -:10493000284604E007EB800181ED040A401C0728AB -:10494000F8D3F1EE0C0A60EE200AC6ED100A07EB70 -:104950008900D0ED040A70EE600A96ED101A30EE70 -:10496000811A86ED101A80ED040ADFF8401701EB7A -:10497000880181ED001A96ED110A30EE010A86EDEC -:10498000110A90ED0B0A71EE400ADFF824B70BEB29 -:104990008801C1ED000A80ED0B1A96ED120A30EE87 -:1049A000200A86ED120A94EC031A87EC031AB08EE3 -:1049B000401CB0863178012901D0032930D180B262 -:1049C000022822D2718B04291FD2B06D002857D142 -:1049D00097ED120A9FED951AB4EE410AF1EE10FA26 -:1049E00004D5F4EE410AF1EE10FA0BDAB9EE0C1A26 -:1049F000B4EE410AF1EE10FA42DBF4EE410AF1EEB8 -:104A000010FA3DD5012070653AE0272808D3F18ED1 -:104A1000002903D010FA81F04B2801DB01207065DA -:104A200097ED120A00F0DCF93078012828D1F08ED9 -:104A3000002825D0318F002922D0032211FA80F0DE -:104A40003D2801DB01207065708B042800D3022211 -:104A5000708F824201D201207065F06FC6F880002D -:104A6000F86D396E0818796E0818F0672846786670 -:104A70003866F865FFF742F90546002030877087F1 -:104A8000306EA8EB0000FA30FA21B0FBF1F201FB26 -:104A9000120196290AD10022B265B266F266F2626C -:104AA00072613283B287F2870122326764290FD1A3 -:104AB0000020F062706108220146301DEDF7DDFA3A -:104AC000002070837061012030670020B087F0877C -:104AD0005BF82800B86408F10100F064FA2801D1FD -:104AE0000020F06409F10100F864072801D10020DA -:104AF000F8640AF101003065306F002808D006F133 -:104B00008404282206F10C012046EDF7B0FABC65BA -:104B10002846BDE8F28F00008096184B00C0624026 -:104B20000000544070B50446DFF86C55AE6E95ED4C -:104B3000000AD4ED000A70EEC00A01EE106AB8EE69 -:104B4000C11A60EE810AF5EE400AF1EE10FA17D5AF -:104B5000D5ED1D0A30EE600A10EE100AECF79EFE4D -:104B600021F00041DFF84C25DFF8B034EDF750FAC2 -:104B700002D8E86D401CE865286868677042A8663E -:104B8000EE6E95ED010AD4ED010A70EEC00A01EE59 -:104B9000106AB8EEC11A60EE810AF5EE400AF1EE35 -:104BA00010FA17D5D5ED1E0A30EE600A10EE100A85 -:104BB000ECF774FE21F00041DFF8F824DFF85C34F4 -:104BC000EDF726FA02D8286E401C28666868A867A8 -:104BD0007042E8662E6F95ED020AD4ED020A70EE7F -:104BE000C00A01EE106AB8EEC11A60EE810AF5EE55 -:104BF000400AF1EE10FA17D5D5ED1F0A30EE600A23 -:104C000010EE100AECF74AFE21F00041DFF8A42470 -:104C1000DFF80834EDF7FCF902D8686E401C6866CE -:104C2000A868E8677042286770BD00000100E04096 -:104C30000000A04030B4DFF8602490ED000AD2ED0F -:104C4000000A30EE600AD0ED010A92ED011A70EE12 -:104C5000C10A90ED021AD2ED021A31EE611AB5EED8 -:104C6000400AF1EE10FA02DDF0EE401A01E0F1EE3A -:104C7000401AF5EE400AF1EE10FA02DDB0EE602ABD -:104C800001E0B1EE602AB5EE401AF1EE10FA02DD55 -:104C9000F0EE412A01E0F1EE412A71EE821A71EE46 -:104CA000A21AB5EE400AF1EE10FA01DCB1EE400AAC -:104CB000DFF8F03393ED032A32EE000A83ED030AA6 -:104CC000F5EE400AF1EE10FA01DCF1EE600A93ED28 -:104CD000040A30EE200A83ED040AB5EE401AF1EE24 -:104CE00010FA01DCB1EE411A93ED050A30EE010A2B -:104CF00083ED050A93ED060A30EE210A83ED060ADC -:104D000093ED070AD0ED000A30EE200A83ED070A82 -:104D100093ED080AD0ED010A30EE200A83ED080A6F -:104D200093ED090AD0ED020A30EE200A83ED090A5C -:104D3000DFF86003006D002810D1002006E0DFF8E6 -:104D4000784304EB8004C4ED001A401C0F28F6D30E -:104D5000B2EE0E0A21EE800A82ED140A9089DFF885 -:104D6000584304EB800595ED000A31EEC00AD2ED00 -:104D7000140A30EE200A82ED140A04EB8004C4ED1C -:104D8000001AF2EE0E0A80EE200A83ED1B0AF5EE01 -:104D9000000AB4EE600AF1EE10FA04D5536D13FA6E -:104DA00081F1516501E000215165401C908180B284 -:104DB0000F2801D100209081506D30BC7047000059 -:104DC000F0164850FC18E93F3411363CBD52DABFAA -:104DD000BBB88D06F016B83FB8ED221C1818783F06 -:104DE00070B52DED048BB0EE408AF0EE608A9FED39 -:104DF000A19AA84E708B042801D3B0EE009AB5EEAC -:104E0000408AF1EE10FA07DBF5EE408AF1EE10FA77 -:104E100002D5708F401C70873078002806D0022899 -:104E20007DD040D3032800F0A380E5E019EE100AFE -:104E3000ECF734FD41EC100B53EC102B00209F4994 -:104E4000ECF78EFE41EC190B18EE100AECF726FD7C -:104E500002460B4651EC190BEDF7DAF811D818EEB3 -:104E6000900AECF71BFD02460B4651EC190BEDF7CF -:104E7000E7F806D2B08E1028C0F0AF800020B086D0 -:104E8000ABE0F06C8A4951F8200000EE100A8C4823 -:104E9000D0ED010AB4EE600AF1EE10FA40F1AC80F8 -:104EA00080ED010AA8E0F06C814951F8200000EE85 -:104EB000100A8348D0ED000AF4EE400AF1EE10FA31 -:104EC00001D580ED000AB7EE000AB4EE408AF1EE9B -:104ED00010FAC0F29180F4EE408AF1EE10FA40F13F -:104EE0008B80B08EF0860020B08619EE100AECF7A9 -:104EF000D5FC02460B4600207249ECF7A5FE02469F -:104F00000B4614461D4618EE900AECF7C7FC2246E5 -:104F10002B46EDF795F822D3022030706CE019EEA5 -:104F2000100AECF7BBFC41EC100B0020654953EC78 -:104F3000102BECF789FE41EC190B18EE100AECF778 -:104F4000ADFC53EC192BEDF763F855D818EE900A29 -:104F5000ECF7A4FC53EC192BEDF772F84CD20320BC -:104F60003070F06C524951F820005549486043E0D8 -:104F7000F06C4F4951F8200000EE100A5048D0ED77 -:104F8000010AB4EE600AF1EE10FA01D580ED010AD3 -:104F90009FED3D0AB4EE408AF1EE10FA2CD5F4EE06 -:104FA000408AF1EE10FA27DBB08E30870020B08601 -:104FB00018EE900AECF772FC02460B4614461D46AA -:104FC00019EE100AECF76AFC00223C4BECF7C8FD26 -:104FD00022462B46EDF734F80CD2012030703848C9 -:104FE000016871674168B167F16C314A52F821106C -:104FF000016001E0002030703078BDEC048B70BDA2 -:1050000024480078704700009A999999002804D0A4 -:105010002149896D2822EFF75BBE70479999C93FF6 -:105020001C48816D002901D1808F70470020704796 -:105030009999B93F174800210165018341830521F2 -:105040000170002181658166C166C162416181870D -:10505000C18770477B14AE47E17A743F002806D0C1 -:10506000104942684A6002680A60008908817047F6 -:1050700000004E40000000000748406D70470000EF -:105080000000F03F6666E63FFEFF7FBF0000444041 -:10509000000034408CF400200CF800203333D33F60 -:1050A0000000E03F8CF80020A4F20020A0D40020F3 -:1050B00088D800209B99999974FB002000001C401F -:1050C0007CFD002000001CC0B0F5803F5EDBB0F12D -:1050D000807F35DBB0F1805F15DBB0F1804F0CDBFA -:1050E000DFF8341C884202DB4BF204507047011693 -:1050F0000FF2F802895C090211E081150FF2EC024F -:10510000895CC9010BE00FF2E401B0F1806F03DBB1 -:105110000215515C890102E08214515C490190FB47 -:10512000F1F25118491C491090FBF1F25118491C39 -:10513000491001FB01F2904200DA491E084670470F -:105140000FF2A801B0F5801F0ADBB0F5800F03DB7A -:105150000214515C09010DE08213515CC90009E0A1 -:10516000B0F5802F03DB0213515C890002E082124C -:10517000515C490090FBF1F25118491C491001FBA8 -:1051800001F2904200DA491E08467047FF2823DDED -:105190000FF25801B0F5805F0BDBB0F5804F03DBF9 -:1051A0000212515C491C10E08211515C4908491CF3 -:1051B0000BE0B0F5806F04DB0211515C8908491CDB -:1051C00003E08210515CC908491C11FB01F29042B6 -:1051D00000DA491E08467047002804D40FF20C017B -:1051E000405C000970474FF0FF3070470010161BFD -:1051F0002023272A2D30323537393B3D4041434566 -:1052000047494B4C4E505153545657595A5B5D5E6B -:1052100060616263656667686A6B6C6D6E707172FF -:10522000737475767778797A7B7C7D7E80808182D5 -:10523000838485868788898A8B8C8D8E8F909091C8 -:105240009293949596969798999A9B9B9C9D9E9FD6 -:10525000A0A0A1A2A3A3A4A5A6A7A7A8A9AAAAABF8 -:10526000ACADADAEAFB0B0B1B2B2B3B4B5B5B6B728 -:10527000B7B8B9B9BABBBBBCBDBDBEBFC0C0C1C168 -:10528000C2C3C3C4C5C5C6C7C7C8C9C9CACBCBCCAE -:10529000CCCDCECECFD0D0D1D1D2D3D3D4D4D5D6FD -:1052A000D6D7D7D8D9D9DADADBDBDCDDDDDEDEDF55 -:1052B000E0E0E1E1E2E2E3E3E4E5E5E6E6E7E7E8B2 -:1052C000E8E9EAEAEBEBECECEDEDEEEEEFF0F0F115 -:1052D000F1F2F2F3F3F4F4F5F5F6F6F7F7F8F8F97E -:1052E000F9FAFAFBFBFCFCFDFDFEFEFF2DE9F041A7 -:1052F00099B00546144620461422EFF7E9FC002138 -:105300000A4611E0142055F8213000AF00FB067763 -:1053100047F8223000AF00FB027040F82630761CC0 -:10532000491C052EEEDB521C052A01DA1646F8E769 -:105330000021142000E01946052980F28A8000AA85 -:1053400000FB012252F821700D464B1C1E4606E060 -:10535000CEF1000CE04501DA35467746761C052E85 -:1053600010DAB846B8F1000F01D5C8F100080DF108 -:10537000000C00FB06CC5CF821E0BEF1000FE7D486 -:10538000F446E7E78D4218D000260CE052F826706C -:105390000DF1000C00FB05CC5CF826E042F826E09D -:1053A0004CF82670761C052EF0DB54F8217054F86A -:1053B000256044F8216044F825701E4614E0002D55 -:1053C00011D052F82650AD0142F8265052F8215023 -:1053D000AD110FD052F8265052F82170BF1195FB35 -:1053E000F7F542F82650761C052E52F82150E6DBE0 -:1053F000002D02D14FF0FF3046E054F8216096FBBB -:10540000F5F544F821501D461EE057F826E052F805 -:1054100026804FEAE8084FEAEC0C0CFB08FCAEEBE8 -:10542000AC1C47F826C0761C00AF00FB057757F888 -:1054300021C0052EE9DB54F8256054F821700CFBDF -:10544000176644F825606D1C052DBFF674AF1E4627 -:10545000EAE7042113E054F8210001EB810200ABDC -:1054600003EB820252F8262054F826305A43A0EB70 -:10547000223044F82100761C052EECDB491E002961 -:1054800001D44E1CF8E7002019B0BDE8F0812DE9E9 -:10549000F04186B000252E462C46234603AF9C469D -:1054A0009E469846A7E8005100AFA7E800511F4666 -:1054B00004E0664501DB66463B467F1C032F11DA9C -:1054C000002F04D10668354643461C46F5E70FF227 -:1054D0008C0C17F90CC050F82CC0AC45E9DB6546C4 -:1054E0003C46EAE703AD012645F8236045F8246011 -:1054F000464601E0761C76B2032E04DA55F8267093 -:10550000002FF7D101960094029343460EE0AF18A6 -:1055100007EB860706EB460C01EB8C0C5CF824C00D -:10552000C7F804C0761C032EF1DB5B1C032B10DADA -:1055300000AC54F823400FF2240C14F90C5050F82E -:1055400025601D01AE50012E01DA4646AE5046469A -:10555000E9E7404606B0BDE8F08100000003050021 -:105560002DE9F24F98B0014602A81822EFF7B0FBE0 -:10557000002101E0491C49B2032913DA002004E0AC -:10558000002342F82030401C40B20328F2DA0C22FB -:105590000EAB12FB01328142F2D14FF4804342F84C -:1055A0002030F0E70020019024E00C220EA912FB2D -:1055B000001252F8241052F8253006FB01F70BFBBD -:1055C00003FCA7EBEC07BF1142F824704FEAEB078E -:1055D000734307FB0131891142F82510401C032851 -:1055E000E3DB02A808A91822EFF772FB0198401C20 -:1055F00040B201900198062880F2DE80012000244C -:10560000054602270399002900D54942049A002A39 -:1056100000D55242914202DA38460546012702A9D6 -:1056200051F82000002800D540420699002900D5F5 -:105630004942884202DA0124022500270FF28C1029 -:1056400004EB440101EB000805EB450101EB000907 -:1056500015F8090002A951F8200014F8081002AA50 -:1056600052F82110401A461015F8080002A951F806 -:10567000200000904FF00A0A90FBFAF096FBFAF136 -:10568000404301FB0100FFF71FFD0AFB00FBBBF1DC -:10569000000F11D0300000D54042000390FBFBF01A -:1056A00000F580504FEA600A5046FFF70DFD0646B0 -:1056B00006FB0BF0801002D14FF0FF3082E0009922 -:1056C000090391FBF0FB15F8090002A951F820002D -:1056D00014F8081002AA52F82110884201DACBF11E -:1056E000000B0BFB0BF08011009008A802A91822F8 -:1056F000EFF7EEFA17F80800014602AA52F8211057 -:105700007143891117F8092002AB53F822200BFBD3 -:1057100002F2A1EB622108AA42F8201017F8091042 -:1057200002AA52F820000BFB00F052F8212072432D -:10573000921102EB602008AA42F8210015F8080037 -:1057400002A951F8200006FB0BF189114843011210 -:1057500014F8080002AA52F820000AFB00F0C1EB7E -:10576000203015F8092053F82220009B5A4300EB03 -:10577000223014F8082008AB43F8220015F809007D -:1057800002AA52F820000AFB00F001EB203014F8C6 -:10579000081052F82110009A514300EB213015F8FF -:1057A000091008AA42F8210015F8080008A90022EB -:1057B00041F82020104612E7189A0EA902A8FFF718 -:1057C00066FE002019B0BDE8F08F00000001020164 -:1057D0000304020405000000F0B4DFF8202C02F5F9 -:1057E0009A7191F9013092F93441012C1CDB5C1E55 -:1057F00064B2002C01D5143464B204EB440502EB0E -:105800008504E56C8668AD1BA66C4768F61B646C66 -:105810000768E41B764304FB046405FB0544B4F508 -:10582000C87F01DA00202DE003EB430402EB840380 -:10583000443370C870C34878401C487040B2142884 -:1058400001DB0020487092F83401401C82F83401DA -:1058500040B2142802DB142082F8340192F934019A -:105860000A2290FBF2F302FB1300002809D191F900 -:10587000010090FBF2F102FB1100401E8041C00FBD -:1058800000E00020F0BC7047DFF8700B90F9341195 -:105890000A2291FBF2F1012903D1002180F8341191 -:1058A0007047114680F8341170472DE9F04794B0E5 -:1058B00005460E460027DFF8448B98F9344198F8E6 -:1058C0003501A0EB04094FFA89F9B9F1000F03D5AE -:1058D00009F114094FFA89F9BA4624E009EB4900A5 -:1058E00008EB8000A968C26C891A6A68836CD21AB6 -:1058F0002B68406C181A524300FB002001FB01008A -:10590000FFF7E2FB00A941F82A00C71909F10109D4 -:105910004FFA89F94846142801D14FF000090AF1DD -:10592000010A4FFA8AFAA245D8DB97FBF4F03060FF -:105930000022134607E000A951F82310091A01FBC1 -:1059400001225B1C5BB298F934118B42F3DB92FBB2 -:10595000F1F014B0BDE8F0872DE9FE4100ACE0C9DC -:10596000E0C40C39002635462C4627460AE053F899 -:1059700027C052F827E051F82780AEEB080E0EFB47 -:105980000C667F1C032FF2DB711306EB9141891328 -:1059900022460FE053F822604E4300AF57F82270C2 -:1059A0004FEA663C06EB9C4607EBA63600AF47F88D -:1059B0002260521C032AEDDB21460CE050F8212026 -:1059C00000AE56F82160921B53F8216002FB065589 -:1059D00002FB0244491C0329F0DB002C02D140F2F7 -:1059E000011008E0280000D54042851205FB05F0B3 -:1059F00090FBF4F000B2BDE8FE812DE9F0419AB0D1 -:105A0000144600220AAD164602E045F82260521CF8 -:105A10000F2AFADB324606E005AD45F8226000ADFC -:105A200045F82260521C052AF6DB32460AAE07E032 -:105A30000FF64025555753F8227046F82570521C32 -:105A4000062AF5DB0025209A1CE005EB45060FF63B -:105A50002C27F6199E5730F9157002EB051C0CEB3C -:105A6000830CDCF814C00CFB07F70DF1280C4CF884 -:105A70002670002F02D0BF124CF826705B1C032B3F -:105A8000E3DB6D1C022D01DA0023F8E70025219BE2 -:105A900000AF04E053F8256047F825606D1C032D26 -:105AA000F8DB00250C261BE002EB051C0CEB830C3D -:105AB000DCF814C051F823E054F82380AEEB080E54 -:105AC0000EFB0C775B1C032BEEDBBB1230F9157061 -:105AD0007B4300AF07EB8507FB606D1C6DB2B61C06 -:105AE000022D15DA1368002B02D14FF0FF3025E0AC -:105AF00030F91570A7F58067BF0497FBF3F33746BD -:105B00007FB20DF1280C4CF8273000273B46DAE72E -:105B100005AA00A90AA8FFF7E9FB002522980AE0D8 -:105B200005A951F8251040F8251054F825205118E2 -:105B300040F825106D1C032DF2DB00201AB0BDE8E3 -:105B4000F0812DE9FE47002633461C461D4638C02D -:105B50000C3802E041F823405B1C062BFADB23469D -:105B600002E042F823405B1C032BFADBDFF88C4891 -:105B700004F59A735D7894F83471EF1B7FB2002FAF -:105B800001D514377FB2B44617E050F825E007EB93 -:105B9000470804EB880808EB8508D8F84480C64419 -:105BA00040F825E06D1C032DEFDB7F1C7FB23D46E6 -:105BB000142D00D137460CF1010C94F934514FFAF1 -:105BC0008CFCAC45354607DAEDE750F825C09CFB68 -:105BD000F7F740F825706D1C94F93471032DF4DB50 -:105BE0005B78DB1B5BB29C46BCF1000F03D50CF16C -:105BF000140C4FFA8CFCB6461BE00CEB4C0804EB83 -:105C0000880808EB8508D8F8448050F82590A8EB60 -:105C1000090808FB08666D1C032DEEDB0CF1010C76 -:105C20004FFA8CFC6546142D01D14FF0000C0EF19B -:105C3000010E4FFA8EFEBE4501DA0025ECE796FB19 -:105C4000F7F6002B01D514335BB200270FE052F8B2 -:105C500025E00DF1000858F8258009FB08F80EEB47 -:105C6000680E42F825E06D1C032DF0DB7F1C94F9D3 -:105C700034517FB2AF424CDA002510E003EB430C05 -:105C800004EB8C0C0CEB850CDCF844C050F825E0E0 -:105C9000ACEB0E0C0DF1000E4EF825C06D1C032D63 -:105CA000ECDB5B1C5BB21D46142D00D100230025EC -:105CB000AC4618E06DB251F825800DF1000959F895 -:105CC0002C900DF1000A5AF82EA00AFB098841F821 -:105CD00025800EF1010E6D1C4FFA8EFEBEF1030FF2 -:105CE000E8DB0CF1010CBCF1030F01DAE646F3E747 -:105CF0004FF0000C654606E00DF1000E5EF825E061 -:105D00000EFB0ECC6D1C032DF6DB0025ACEB06095B -:105D1000AAE70020BDE8FE8710A8FE7F2DE9F0432A -:105D2000A1B00446002003904FF0FF35064604A8BA -:105D3000314601600BAA1AA908A8FFF702FF002844 -:105D400000F1A9800EA91AA8FFF70AFC40B20028AA -:105D500000F1A1800DF110080120A8F80200DFF881 -:105D60009C7605A802900BA801900EA800901AAB93 -:105D700008AA391D04A8FFF740FE002800F18B8017 -:105D800003A905A8FFF791FD03990129C0F28380BB -:105D900097F9341142F21072129B93FBF1F35343C3 -:105DA000DDF80CC093FBFCF393FBFCF9169B93FB13 -:105DB000F1F15143624691FBF2F191FBF2F1216066 -:105DC000C4F80490A060039A2261324622753A6CAE -:105DD00022733346022201E0521E52B2002A1AD424 -:105DE00097F934C14FF00A0E9CFBFEFCACF1010C9C -:105DF0000CEB4C0C4FFA8CFCBCF1070F01DB4FF0A5 -:105E0000060C42FA8CFC07EB8C0CDCF810C08C45BD -:105E1000E2DA531C5BB2012B24DB1A46521E52B24B -:105E200001E0521E52B2002A0CD407EB820CDCF8BF -:105E300034C04FF0640E91FBFEFEF4448445F0DB69 -:105E4000531C5BB2002A44D407202075386C83426F -:105E500008DB3B6418462073381D05A91CC91CC00B -:105E6000012067E04FF48060A8F8020005A80290C6 -:105E70000BA801900EA800901AAB08AA391D04A81F -:105E8000FFF7BBFD002806D403A905A8FFF70DFD09 -:105E90000399012901DA28464CE0A06003992161A9 -:105EA000B9F57A7F45DD396C002901D1B44601E0AE -:105EB000A1F1010C4FFA8CFC07EB8C01496B01EB53 -:105EC000D1714FF4C87299FBF2F202EB6101814289 -:105ED00002DA6FF002002DE017AB08AA05A9381D01 -:105EE000FFF73AFDB446324605E049428D4201DAF9 -:105EF0000D469446521C032A06DA0EA901EB8201D4 -:105F0000496A0029F1D4F1E7BCF1000F00D106265F -:105F1000BCF1010F00D10526BCF1020F00D1032610 -:105F20002675E72803DA381D05A91CC91CC0012005 -:105F300000E0304621B0BDE8F083DFF8C0140A6805 -:105F4000002A02D16FF002007047002802D16FF0E2 -:105F50007F007047002206E001EB82035B689B0034 -:105F600020F81230521C032AF6DB0020704710B4D0 -:105F7000DFF888140A68002A02D16FF0020013E0EB -:105F8000002802D16FF07F000EE0002209E030F916 -:105F900012305C1003EB94739B1001EB820463607E -:105FA000521C032AF3DB002010BC7047DFF84C04BE -:105FB0000168002902D16FF002007047006C704741 -:105FC000DFF838140A68002A02D16FF00200704727 -:105FD000042802D36FF07F007047086400207047E8 -:105FE0002DE9F0418AB00C4615460026DFF80C7406 -:105FF0003968002902D16FF002007DE0002803D04B -:10600000002C01D0002D02D16FF07F0074E03146EA -:1060100037E0DFF8F02301EB410302EB430C0A23E6 -:10602000BCF91CE0B0F900801EFB08FE9EFBF3FEED -:10603000BCF91EC0B0F902801CFB08FC9CFBF3FC01 -:10604000F44401EB410E02EB4E02B2F92020B0F90C -:1060500004E012FB0EF292FBF3F262444FF47A7307 -:1060600092FBF3F200AB43F8212000AA52F8212062 -:10607000531002EB93729210E24B03EB81031A630D -:10608000491C032913DA30F9112047F6FF739A42AD -:1060900002D0DB4B9A42BCD132463A64D94A02EB79 -:1060A0008102126B920000AB43F82120DDE7E34848 -:1060B000FFF792FB002803D003A8FFF72FFE064648 -:1060C00000200AE000A951F8201007EB8002526876 -:1060D000A1EB820124F81010401C0328F2DBFFF72B -:1060E00065FF2860002E06D516F1030F01D1FFF7DA -:1060F000CBFB002000E030460AB0BDE8F08110B5CF -:10610000BE4C201D00210A460B460EC00FF2343152 -:106110003022EEF7DDFD0020206484F8340184F89D -:10612000350101202060002010BD80B520EE000A5E -:1061300000EEA00A01EE010A10EE100AEBF7AEFB2A -:1061400041EC100B02F0BAFD51EC100BFAF720F8FD -:1061500000EE100A01BD000070B52DED088B8CB06B -:1061600005460E461446002D00F0A380002E00F0D8 -:10617000A080002C00F09D8095ED021AD5ED010A5B -:1061800095ED000AFFF7D1FFB0EE408A96ED021AB6 -:10619000D6ED010A96ED000AFFF7C7FF9FED9A9A28 -:1061A000B4EE498AF1EE10FA00F18380B4EE490AA8 -:1061B000F1EE10FA7DD4002009AA16E005EB800369 -:1061C000D3ED000AC0EE880AF1EE600A01EB80010F -:1061D000C1ED000A06EB8001D1ED000AC0EE800A95 -:1061E00002EB8001C1ED000A401C03A90328E5DB96 -:1061F00092ED010A91ED028A92ED021AD1ED018A27 -:1062000068EE810A48EE400ACDED000ADDED090A8C -:1062100068EE200ADDED031A41EEC10A00ADC5EDBE -:10622000010A9DED031A21EE001A9DED090A08EE00 -:10623000C01A85ED021A9DED000AFFF776FFB4EE55 -:10624000490AF1EE10FA34D4002008E005EB800191 -:10625000D1ED000AC0EE800AC1ED000A401C0328FF -:10626000F4DB95ED020AD5ED019A69EE880A40EE5D -:10627000680ACDED060ADDED030A60EE200A9DED09 -:10628000000A40EE480A06ADC5ED010A9DED000A80 -:1062900020EE281A9DED030A09EEC01A85ED021AB8 -:1062A0009DED060AFFF741FFB4EE490AF1EE10FA40 -:1062B00002D56FF07F007DE0002008E005EB800153 -:1062C000D1ED000AC0EE800AC1ED000A401C03288F -:1062D000F4DB9FED4EAB9FED4FBB9DED000AD5ED7E -:1062E000010A70EE200A9DED060A39EEC00A02F09E -:1062F0006FFD10EE100AEBF7D1FA53EC1B2BEBF706 -:1063000005FB53EC1A2BEBF75FFDF9F741FF20601B -:10631000B1EE680A02F094FDB1EE400A10EE100AE8 -:10632000EBF7BCFA53EC1B2BEBF7F0FA53EC1A2B00 -:10633000EBF74AFDF9F72CFF60609DED030AB1EE23 -:10634000400A02F07DFD10EE100AEBF7A7FA53ECBD -:106350001B2BEBF7DBFA53EC1A2BEBF735FDF9F7B8 -:1063600017FFA060B1EE480AB5EE400AF1EE10FA50 -:1063700012D59FED2A0AD4ED010A70EE600AC4ED31 -:10638000010AF4EE400AF1EE10FA05D59FED2C0A51 -:1063900030EE800A84ED010A94ED000AB5EE400A61 -:1063A000F1EE10FA05D5DFED260A30EE200A84ED75 -:1063B000000A00200CB0BDEC088B70BD10B5114C6C -:1063C0001748206017482061174860611748A0608F -:1063D0001748E060174860601748A061122200214A -:1063E00004F11C00EBF749FE42F21070A083A08478 -:1063F000A085024800210160084610BD70F0002011 -:106400000080FFFFB0FB0020BD378635182D4454B7 -:10641000FB2109400000000000806640000034C3FA -:10642000FF600208AD5F0208C15F02083B5F02081F -:106430006F5F0208E15F020859610208E0FB00207B -:106440000000B4432C010000F4010000E803000048 -:10645000C80000002C010000F4010000C80000008A -:106460002C010000F40100001E00000014000000D8 -:106470000F000000000102050609000003070A04DE -:10648000080B0000002303604360C260816019466E -:1064900003E000EB41021382491C82689142F8DB61 -:1064A0007047024608469168022900DA704730B406 -:1064B000536814688C4208DA591C516002EB43019E -:1064C00008821168491C116035E08B4201DB002114 -:1064D000516051684B1C536002EB4101088200215E -:1064E0000B4606E002EB4304B4F9104001FA84F1D4 -:1064F0005B1C9468A342F5DB91FBF4F100231C467E -:1065000007E002EB4405B5F910504D1B05FB0533C0 -:10651000641C9568AC42F4DB93FBF5F3D2689A42B5 -:1065200002DB084600B206E0401A9A1A504390FB7C -:10653000F3F0081800B230BC704701600021818080 -:10654000704770B4B0F90420134604680D461E1B52 -:10655000B54202DBE318AB4202DA8180084600E074 -:10656000104670BC7047F8B504460D46002C01D0AB -:10657000002D02D16FF07F00F2BD244ED6F8C0008E -:10658000002802D16FF00200F2BD002712E034F9BA -:106590001710C7EBC70006EBC000FFF782FF25F816 -:1065A0001700014606EBC700A830FFF7CAFF25F821 -:1065B00017007F1C032FEADB0020F2BD38B5002452 -:1065C000124D11E00FF2540050F824201421C4EBB6 -:1065D000C40005EBC000FFF755FF032105EBC40025 -:1065E000A830FFF7AAFF641C032CEBDB0120C5F8E1 -:1065F000C000002032BD06480649016006494160DE -:1066000002480021C0F8C01008467047C8F30020B7 -:10661000B8FD0020BD650208676502089000000013 -:1066200090000000900000002DE9F04F0646DFF8D2 -:10663000DC03DFF8DC130160DFF8D8130068884260 -:1066400036D1DFF8D403016006F110070020F860AE -:10665000B86078603860B8617861386174682046E5 -:10666000002102F01DFC24D04FF08740214602F0AB -:1066700025FCEBF713F9054689462046EBF70EF9A2 -:10668000044688463088EBF75DFADFF89023DFF8A0 -:106690009033EBF799FB22464346EBF761FA02464B -:1066A0000B4628464946EBF78FFBEBF70DFA01E066 -:1066B000FEE70020B883B4682046002102F0F0FB1A -:1066C00022D035882802EBF733FA82468B462046E3 -:1066D000EBF7E4F802460B46DFF84003DFF840131F -:1066E000EBF714F9044688462846EBF72BFA2246C6 -:1066F0004346EBF735FA02460B4650465946EBF750 -:1067000063FBEBF7E1F900E00020F88330884FF4F9 -:106710007A7190FBF1F03884BDE8F08F2DE9FE4FDF -:1067200096B0DFF8F4120968DFF8E822914200D051 -:10673000FEE71946103100910969009A52690792E3 -:10674000009A92690392009AD2F8009052680692D9 -:10675000009A9268009BDB68189CA4890194009CB5 -:10676000A48B0594009CE48B089400244FF480755E -:10677000059EAD1B0D95019DC5EBC5050C95019DB5 -:1067800005EB450675000B95019D05EB85050A9502 -:10679000019D05EB45050995009D2D8C012DC0F24D -:1067A0001D810578DFF87062AD19069E95F80472B8 -:1067B000BE190E9695F8046109EB46072D79019EE6 -:1067C000365CDFF854C2664496F804C26744029708 -:1067D0000F9796F8047105EB47053679019F10F87D -:1067E0001770DFF834C2674497F804C26544109507 -:1067F00097F804C106EB4C063F79DDF824C01CF87D -:1068000000C0DFF814E2E6449EF804C26644119624 -:106810009EF804C107EB4C079EF804E0DDF804C0C5 -:1068200010F82CC0DFF8F081E04498F804C2674407 -:10683000129798F804C10EEB4C0C98F80480DDF820 -:1068400028E01EF800E0DFF8D091F14499F804E266 -:10685000E644CDF84CE099F804C108EB4C0C99F8EB -:1068600004A0DDF82C8018F80080DFF8AC91C1445A -:1068700099F80482E044CDF8508099F804C10AEBFD -:106880004C0A99F80490DDF830C01CF800C0DFF81D -:1068900088B1E344CDF810B09BF804C2E244CDF8CF -:1068A00054A0DDF810C09CF804C109EB4C09CDF8E8 -:1068B0001890DDF810C09CF80490DDF838C0CCEBDF -:1068C000CC0B03EB8B03DDF808C04FF0150B0BFB73 -:1068D0000C33C5EB051C634406EB860C03EB4C0341 -:1068E00007EB470C03EB4C030EEB4E0C634408EB39 -:1068F000030C0E9B03EBC30302EB8302029B4FF0DE -:106900002A0B0BFB03222E2303FB0522BB1903EBEF -:10691000430302EB03122E2303FB0E220BFB082280 -:106920000AEBCA0302EB8303029A05EB4505AA189A -:1069300006EB460502EB450207EB870502EB450235 -:10694000CEEB0E15AA18152505FB0822CAEBCA05C1 -:1069500002EB8502ACF50035089E56B1089E691819 -:10696000079FC91B7143CE1101EB166109120795F0 -:106970000D46059E66B10D9E039FDDF814C005FB14 -:106980000CF507FB0655EE1105EB16652D12039568 -:10699000BDF85C607543012DACBF0835083DEE10B5 -:1069A00005EB16752D11DFF87C60B542B8BF354692 -:1069B00005DB47F6BD76B542A8BF47F6BC75189E05 -:1069C000F6896643169F27F81650019D00EBC50017 -:1069D000641C009D2D8CAC42FFF6E3AE0098C0F81D -:1069E00000900098069C4460009882600098C36004 -:1069F00000980161009807994161009803998161AD -:106A00000098008C19B0BDE8F08F00000030024003 -:106A1000C2A507F4CDB5E8B56C3000201F85EB5159 -:106A2000B81E19404480FFFF10B40288164B9842EC -:106A30000BD0B0F1804F08D0144CA04205D0144CBC -:106A4000A04202D0134CA04204D14FF68F742240D2 -:106A50004C88224302804A68C2620A8802859842B2 -:106A600002D1897A0C4A11800121818210BC7047C1 -:106A70000029018803D041F00101018070474FF6E1 -:106A8000FE72114001807047000001400004004088 -:106A900000080040000C004030000140002A8289BC -:106AA00002D011438181704722EA01018181704740 -:106AB0000022038A0B4080890840002B02D0002866 -:106AC00000D001221046704770B4294A294B1C7827 -:106AD000012C08D102F10804546002F1280414606A -:106AE00000241C7007E002F12804546002F108043D -:106AF000146001241C70204B00249C8019E0012CA0 -:106B000014D15C888C420CD202EB4404166836F82F -:106B10001550A4F808545C88641C5C80A4B28C42B4 -:106B200004D300245C801C720124DC719C88641CEA -:106B30009C809D88854218D21C7A002CDFD11C884D -:106B40008C420CD202EB4404166836F81550A4F8B7 -:106B500048501C88641C1C80A4B28C42E6D30024DC -:106B60001C8001241C729C71E0E770BC704700BF60 -:106B700060590020FD7B0020507B00204FF4011164 -:106B800001600020704730B4C26C5389D48E928863 -:106B90004C30858915FA84F414FA82F202EB8204EF -:106BA000620002EB4302C38902F6EB1202EBC3025E -:106BB000426401B10A60002030BC704710B500F19A -:106BC0004804DFF8A802616C814204D1A16C41F253 -:106BD0007172914201D3012010BD002103E0002217 -:106BE00000F8012B491CA26C9142F8DB204602F010 -:106BF00011FB0021A18610BD2DE9F04F83B00C469A -:106C000004F14801009101F10806F16B01F6F80565 -:106C1000FD21ADF804100CB9FC2023E1DFF84CA2F3 -:106C20000AF6F8018D4202BF29690AF5076291420E -:106C30003AD1E9680AF65812914202BF6968009A8F -:106C4000914231D169690AF50B62914202BFA9688C -:106C50000AF63812914227D1DAF884180AF57472CC -:106C6000914202BF0AF5F878DAF8981841451BD12D -:106C7000DFF8FC914C4502BFE168DFF8F821914252 -:106C800002BF04F10C07B7F90410B1F5F07F0BD186 -:106C9000B7F9082040F2E111F0328A42BEBFB7F9DD -:106CA0000620F0328A4201DB0120DBE020B1014600 -:106CB000F022484602F091FB00980089022815D185 -:106CC000204600F0FDF868B1B7F90EB0204600F09C -:106CD00007F9F88130B9BBF1000F70D02046FFF7FB -:106CE0006DFF6CE0F88918B9B08568E00120F88183 -:106CF000E88F98B9204602F0FFFA00285FD043469B -:106D0000F0220021484602F012FB0020A887012053 -:106D1000E8876869016C491C016450E0A88F01286C -:106D200004BF0020A887E8680099B0F84600A1F8E1 -:106D30004C00A88F20B9204602F0DEFA00283ED091 -:106D40006868808E02281CBF0120B0856869016CCC -:106D5000491C0164B4F8960010B1401EA4F89600D6 -:106D60000AF5F8744FF4F07221460AF5747002F0D7 -:106D700073FB4346F0220021484602F0D8FA4FF454 -:106D8000907221460AF5B66002F066FB284602F0D2 -:106D90005AFE284602F0EEF840B195F82800C007E8 -:106DA0000FD4284602F0B8F9002855D12869C168E7 -:106DB000491CC1604168491C41600120A887FD2031 -:106DC00050E0002000900023E86841680222284635 -:106DD000DBF798FF686802218186E868D9F7C4FC70 -:106DE0000400E8681FD1818EC1F3C02131B3018E48 -:106DF0002846D9F780FE08B36869B0F840100161F1 -:106E00006968088B50B1284602F09EF8E868DAF706 -:106E100008FA2869C068401CA8630FE001242846CE -:106E200002F056F80AE06968CA8E521CCA86DAF780 -:106E3000F8F90024688D00F47F406885A88F401C15 -:106E4000A88780B2012806D12869C168491CC160A1 -:106E50004168491C41601CB195F82A00ADF8040056 -:106E6000BDF8040003B0BDE8F08F704758B30020B0 -:106E700050F6002098AF002038B50546202105F1D6 -:106E80002400DCF72BFA00202C1DC5F88400E067F5 -:106E90006860E082284602F03FFAEF30F02290FB73 -:106EA000F2F0B4F9101000B2C0EB001201EB0210C6 -:106EB000B4F90C1000B28842A8BF401A608231BDFC -:106EC000418AC28A891A09B2002944BFB0F9100068 -:106ED000091809B2F02901DB012070470020704732 -:106EE00038B5044604F1240500F07FF86168491CB8 -:106EF00061600028B5F9001047D021B101290CD0FC -:106F000003293FD064E00520688001202880211DEE -:106F10000020CA6F521CCA6732BDB5F902000028B2 -:106F2000F5D0401E688000B20028F0D1211DB1F9D3 -:106F30001200CA89121A12B2002A44BFB1F90C30E9 -:106F4000D218B1F9143012B29A1AF02392FBF3F26C -:106F500012B2182AA8BF1722C2EB0213A0EB03102B -:106F60000882B1F91000002802D58B891818088210 -:106F70000220288004F1840061688068891AC0F8C2 -:106F800074182BE00220288028E001291ED01FD38E -:106F9000032913D01CD2211D488A0A8A801A00B204 -:106FA000002844BFB1F90C10401800B2F02190FB4A -:106FB000F1F004F1840148820320288004F1840068 -:106FC000418A002904BF008A002801D100209DE7E2 -:106FD000B5F90000022818BF032898D1D4F884100E -:106FE000491C0120C4F8841032BD2DE9F84600F197 -:106FF0000C02C468B2F90A6000F1240104EB460AED -:10700000B1F91040B0F966000025002308B94FF42B -:1070100096604FF0F00C3AF902EBAEEB04077446C1 -:10702000BEF1000F48BFCEF1000E7544012FAEBF78 -:107030004FEA471EC7F1000E4FEA4E1E7344BCF1E3 -:10704000010CE8D1F036568136B2B2F90470BE4276 -:1070500004BF002656810C822A11B1F90640B1F90D -:107060000E601B1204F1010E16FB043606EB6E06D1 -:1070700096FBFEFA47F6FF76B245A8BFB24604DAA1 -:107080004B4DAA45B8BFDFF82CA1A1F80EA0B1F96D -:107090000C90B1F90050CA46022D04D14D271AFBBD -:1070A00007F7BF1103E016271AFB07F73F11B9F1E5 -:1070B000000F08D0B1F90E903FB24F45B4BF4FF06A -:1070C00001094FF00009B1F90A7017FB042707EB1B -:1070D0006E0797FBFEFEB645A8BFB64604DA344FEE -:1070E000BE45B8BFDFF8CCE0A1F80AE0022DB1F947 -:1070F0000870BE4606D14FF04D0C1EFB0CFC4FEA4B -:10710000AC1C05E04FF0160C1EFB0CFC4FEA2C1CCF -:10711000002F08D0B1F90A500FFA8CF7AF42B8BF70 -:107120004FF0010C01DB4FF0000C4CEA0905B0EB0D -:10713000221FB4BF012000202843072CACBF10241D -:10714000641CCC80B1F912401CB18C8100244C82AB -:1071500003E09C005445B8BF4B82B1F90440B1F93B -:107160000C50671C15FB043303EB670393FBF7F329 -:10717000B342A8BF334603DA0D4DAB42B8BF0D4B47 -:1071800014FB0E2202EB670292FBF7F28B81B242F4 -:10719000A8BF324603DA064B9A42B8BF054A0A81B5 -:1071A000062CACBFC822621C8A80BDE8F2860000B3 -:1071B0000280FFFF0180FFFF38B5DFF888475022CB -:1071C000002104F13000EAF758FF50220021EAF7CD -:1071D00054FF50220021DFF87007EAF74EFFDFF876 -:1071E0006C575022002105F11000EAF746FF5022AB -:1071F0000021DFF85C07EAF740FF50220021DFF8AA -:107200005407EAF73AFF0020207060702071607127 -:10721000A070E070A07120816081DFF83C07C4F8A5 -:1072200080009FEDC60B84ED040B84ED060B85ED0D -:10723000000B84ED080B85ED020B84ED0A0B31BDCC -:107240002DE9F04F2DED088B83B0B0EE408ADFF8CA -:10725000F446218900EB010BA4F808B061894718B6 -:107260006781A079192809D2401CA07118EE100A74 -:10727000EAF714FBDFF8D426C2E902019FEDAC0A5D -:10728000B4EE408AF1EE10FAC0F24C81D4ED200A3F -:10729000F4EE400AF1EE10FAC0F24481A079192808 -:1072A000C0F040811FFA8BFBBBF1AF0FC0F03A81F9 -:1072B00038EE600ADFF8945685ED1C0A84ED208ACA -:1072C00010EE100AEAF7EAFA21F00041DFF88C2606 -:1072D000DFF88C36EAF79CFE05D8D5E90201F8F70D -:1072E00057FF08EE100A6678002E04D185ED188A43 -:1072F00085ED198A52E0D5ED1A8A18EE100AEAF7E0 -:10730000CDFA41EC1A0B9FED8B9B95ED180A28EEF8 -:10731000800A10EE100AEAF7C1FA8046894618EE94 -:10732000900AEAF7BBFA02460B4651EC190BEAF752 -:107330008BFC53EC1A2BEAF7E9FA42464B46EAF784 -:107340000FFCF8F725FF08EE900AC5ED188A95EDB9 -:107350001BAA95ED190A2AEE000A10EE100AEAF7A8 -:107360009DFACDE900011AEE100AEAF797FA0246F3 -:107370000B4651EC190BEAF767FC8046894618EE7C -:10738000900AEAF78BFA42464B46EAF7BFFADDE984 -:107390000023EAF7E5FBF8F7FBFE686640F2E93008 -:1073A000BFB2874214D3A078DFF8B81501EB800193 -:1073B0006A6E8A62401CA070C0B2142801D10020FD -:1073C000A070E078142801D2401CE0700020608199 -:1073D00094F800904F4605EB8708DFF874A5142E4B -:1073E00027D1D8ED048A18EE900AEAF757FA024638 -:1073F0000B46D4E90401EAF727FCC4E9040128EEAE -:10740000A80A10EE100AEAF749FA02460B46D4E938 -:107410000601EAF719FCC4E906015AF82700EAF761 -:107420003DFA02460B46D5E90001EAF70DFCC5E935 -:10743000000188ED048A18EE100AEAF72FFA41ECF1 -:107440001A0B53EC1A2BD4E90401EAF789FB41EC3F -:10745000190B84ED049B28EE080A10EE100AEAF7D7 -:107460001DFAD4E90623EAF77BFB41EC180B84ED07 -:10747000068B4A46314605F1100000F07DF90AEB13 -:10748000870080ED000A10EE100AEAF707FAD5E946 -:107490000023EAF765FB41EC1A0B85ED00AB04EB2A -:1074A0008700696E0163DFF8BC0420F817B0142E62 -:1074B00001D2701C60706078EAF744FB41EC1B0B52 -:1074C00051EC190B53EC1B2BEAF77EFC41EC190B2A -:1074D00085ED029B51EC180B53EC1B2BEAF774FC67 -:1074E00006460F4653EC192B51EC190BEAF70EFA2E -:1074F00002460B4630463946EAF7A6FBC4E90801C6 -:1075000051EC1A0B53EC1B2BEAF75EFCC4E90A01A1 -:1075100009F101002070C0B2142801D100202070B0 -:107520000020208103B0BDEC088BBDE8F08F000087 -:107530000100FA43000000000000F03F00000000DE -:1075400000000000F0B52DED068B81B0F0EE408A12 -:1075500000263446DFEDB49A9FEDB39A9FEDB28AD0 -:10756000DFF8E0536878142840F0FF80E8780528B9 -:10757000C0F0FB80F5EE408AF1EE10FA40F3F580A2 -:1075800095ED08AB51EC1A0BDFF8DC23DFF8DC33A8 -:10759000EAF756FD02D29FEDC8AA0EE0EAF738FDE1 -:1075A00009D84FF06632DFF8C833EAF749FD02D256 -:1075B0009FED9EAA01E09FED9EAAA878411E00D5EE -:1075C0001431001F00D51430DFF8987307EB8101E8 -:1075D00091ED0A0A07EB8000D0ED0A0A30EE600A4E -:1075E00010EE100AEAF75AF921F00041F8F7D0FD41 -:1075F00000EE100ADFED8F0AB4EE600AF1EE10FA29 -:1076000010DB1AEE100AEAF749F9D5E90A2323F04C -:107610000043EAF715FD05D214212878401E00F03A -:107620000BF90646002E204600F09A8004E037F859 -:1076300010100C19A4B2401C1428F8D32046EAF705 -:1076400081FADFF83023DFF83033EAF75FF9F8F733 -:107650009FFD08EE100A18EE900AEAF71FF9DFF80E -:107660001C23DFF81C33EAF751F9F8F791FD00EE1F -:10767000100A28EE008A2878411E00D514316A7855 -:10768000801A00D5143005EB810191ED0C0A05EB51 -:107690008000D0ED0C0A30EE600AFFEE000A20EE0A -:1076A000200A10EE100AEAF7F9F8B64AB64BEAF7E4 -:1076B0008BFBF8F76DFD08EE900AF4EE488AF1EEC8 -:1076C00010FA02DBDFED588A11E028EE080A08EE16 -:1076D000E80A10EE100AEAF7E1F841EC100B01F0AD -:1076E000EDFA51EC100BF8F753FD09EE900A2879EA -:1076F000954988EEA90A01EB800282ED000A401C40 -:107700002871C0B2142801D100202871687914288A -:1077100001D2401C6871002006E001EB800292ED6E -:10772000000A39EE009A401C6A79134680B29842EA -:10773000F3D3B2EE040A29EE000A00EE902AF8EE26 -:10774000600A80EE200A10EE100AEAF7A7F8864ACF -:107750008E4BEAF7DBF8F8F71BFD08EE100A01E0A4 -:1077600028716871B0EE480A01E09FED2F0A01B060 -:10777000BDEC068BF0BD000030B52DED048B9FED08 -:107780002A8A9FED290ADFED280ADFED278A0023E8 -:107790001AE0142C00DB143C01EE103AB8EEC11ACA -:1077A00031EE088A50F8244001EE904A30EE210A6A -:1077B00041EE210A13FB03F401EE104AB8EEC11AA0 -:1077C00071EE288A5B1CDBB20C46A34205DA141B5F -:1077D0001C19641CDDD51434DEE701EE101AB8EE76 -:1077E000419A69EE200A48EE400A10EE900AEAF744 -:1077F00055F804460D4629EE280A08EE480A10EE10 -:10780000100AEAF74BF8624A624BEAF7A9F9024616 -:107810000B4620462946EAF7D7FAF8F7B9FC00EEFE -:10782000100ABDEC048B30BD00000000A69B443B59 -:10783000CDCCCC3D90C2F53CF0B50024002801D55C -:10784000143002E0142800DB143825462646224670 -:1078500009E0DFED190AB4EE600AF1EE10FA01DB7F -:10786000761CB6B2521C431AD2B21746A1F1010CD3 -:10787000674523DAFB185B1C01D5143302E0142B97 -:1078800000DB143B5F1C142F00DB143FDFF8B4C097 -:107890000CEB870797ED0C0A0CEB8303D3ED0C0A76 -:1078A00030EE600ADFED240AB4EE600AF1EE10FA61 -:1078B000CFD56D1CADB2D5E76F12033B591C00D577 -:1078C0001431DFF880C00CEB800090ED0C0A0CEB5B -:1078D0008100D0ED0C0A30EE600A10EE100AE9F7D4 -:1078E000DDFF21F00041F8F753FC00EE100A0B2EEB -:1078F0000FD3DFED120AB4EE600AF1EE10FA08DBE6 -:10790000DFED0F0AB4EE600AF1EE10FA01D50124A2 -:1079100010E00B2D0ED3DFED090AB4EE600AF1EE94 -:1079200010FA07DBDFED060AB4EE600AF1EE10FA9A -:1079300000D502242046F0BD6E1203BB90C2753DF7 -:10794000CDCCCC3E307100206079002088360020FC -:1079500010790020D473002000407E449B999999AF -:107960009999C93FAC7300209A9999999999A93F1F -:107970006666E63FFCA9F1D24D62503F0492B06FBB -:107980002711913FB81E85EB51B8BE3F9999B93F79 -:107990008DEDB5A0F7C6B03E0FB480B51922002119 -:1079A0000846ECF7CDFF022801D1022005E0DBF705 -:1079B00099FC2F4800210170012002BC5DF814FBE6 -:1079C00080B5192200210120ECF7BAFF022801D16D -:1079D000022002BD264800210170012002BD70B5C1 -:1079E0008CB02448446BA069E168451800A8EDF705 -:1079F0000DF81F4E3078012801D100200BE000A8BF -:107A000090EC030ADBF77AFC012803D101202870EF -:107A1000A077307001200CB070BD80B5ECF78EFF00 -:107A2000154908601549C0F8F81300F57E7014492F -:107A30004160144981600FF21101C1600FF24D01E4 -:107A40000161012002BD00000B48006890F8E903C5 -:107A5000002801D10020704705E080B50020DBF749 -:107A600070FF012002BD084890F900007047000037 -:107A7000F8FD002000000020C8FD002099790208D0 -:107A8000C1790208DF790208F7FD002018B430221E -:107A90000B7812FB030301241C700B7812FB030309 -:107AA0005C700B7812FB030319249C700B7812FB9B -:107AB00003000022C2700878401C087011BCCCE79B -:107AC00010B5DFF800450020206001F0DAF86061B1 -:107AD00005206060012010BDDFF8E804002101608E -:107AE0000120704770B52DED048B84B00C46002149 -:107AF0000391029101910091DFF8C854012C07D144 -:107B0000296090ED008AD0ED018A90ED029A7BE029 -:107B100069684A1E68692B6893421DDA1E22591C47 -:107B200009B200F0CFFA85ED020A1E222868411C36 -:107B300009B2686900F0E4FA85ED040A1E2228689B -:107B4000411C09B2686900F0F9FA85ED030A28685A -:107B5000401C00EE100A49E018D11E2209B200F0C4 -:107B6000B1FA85ED020A1E22696809B2686900F05F -:107B7000C7FA85ED040A1E22696809B2686900F037 -:107B8000DDFA85ED030A95ED010A2FE01E2209B208 -:107B900000F088FA06461E220021686900F082FA89 -:107BA00095ED020AD6ED000A30EE600AD0ED000A2B -:107BB00030EE200A85ED020A95ED040AD6ED010AA1 -:107BC00030EE600AD0ED010A30EE200A85ED040A9D -:107BD00095ED030AD6ED020A30EE600AD0ED020AF6 -:107BE00030EE200A85ED030A95ED010AB8EEC00AD1 -:107BF000D5ED020A80EE808AD5ED040AC0EE808AB7 -:107C0000D5ED030A80EE809AB0EE491AF0EE680ACC -:107C1000B0EE480A01A903A800F022F80022B0EE55 -:107C2000491AF0EE680AB0EE480A00A902A800F06E -:107C3000BEF82868401C286001F017F8039981619C -:107C40000199C1610299016200994162022C02D03E -:107C5000012101F012F8012004B0BDEC048B70BDCD -:107C600030B52DED068B81B004460D46B0EE40AA2E -:107C7000F0EE608AB0EE418AB5EE408AF1EE10FA7D -:107C800040D5F1EE480A00F021FB9FEDC19B10EEBC -:107C9000100AE9F703FE53EC192BE9F737FEF8F762 -:107CA00077FA00EE100A00F02DF9BDEEC00A84ED5F -:107CB000000A2AEE0A0A08EE080A10EE100AE9F78E -:107CC000EDFD41EC100B00F0F9FF51EC100BF8F753 -:107CD0005FFA00EE900AB1EE680A00F0F7FA10EED3 -:107CE000100AE9F7DBFD53EC192BE9F70FFEF8F763 -:107CF0004FFA00EE100A00F005F9BDEEC00A85ED5E -:107D0000000A50E0B5EE408AF1EE10FA4BDDF0EEDD -:107D1000480AB1EE4A0A00F0D9FA9FED9D9B10EE99 -:107D2000100AE9F7BBFD53EC192BE9F7EFFD002230 -:107D3000994BE9F715FFF8F72BFA00EE100A00F05F -:107D4000E1F8BDEEC00A84ED000A2AEE0A0A08EE48 -:107D5000080A10EE100AE9F7A1FD41EC100B00F043 -:107D6000ADFF51EC100BF8F713FA00EE900AB1EEEC -:107D7000680A00F0ABFA10EE100AE9F78FFD53EC39 -:107D8000192BE9F7C3FD0022844BE9F7E9FEF8F768 -:107D9000FFF900EE100A00F0B5F8B1EE400ABDEEB2 -:107DA000C00A85ED000A01B0BDEC068B30BD30B5D0 -:107DB0002DED048B81B004460D46F0EE408AB0EE06 -:107DC000609AB0EE418AB5EE409AF1EE10FA18D5FD -:107DD000F1EE490A00F07AFA10EE100AE9F75EFDBA -:107DE0006F4A794BE9F792FDF8F7D2F900EE100AE5 -:107DF00000F088F8B1EE400ABDEEC00A84ED000A3A -:107E000020E0B5EE409AF1EE10FA1BDBB1EE680A05 -:107E100000F05CFA10EE100AE9F740FD604A6A4B88 -:107E2000E9F774FD00225D4BE9F79AFEF8F7B0F927 -:107E300000EE100A00F066F8B1EE400ABDEEC00A8E -:107E400084ED000AB5EE408AF1EE10FA28D528EE4E -:107E5000A80A09EE090A10EE100AE9F71FFD41EC25 -:107E6000100B00F02BFF51EC100BF8F791F900EE1E -:107E7000900AB0EE480A00F029FA10EE100AE9F76D -:107E80000DFD474A504BE9F741FDF8F781F900EE47 -:107E9000100A00F037F8BDEEC00A85ED000A2CE0AC -:107EA000B5EE408AF1EE10FA27DD28EEA80A09EEB9 -:107EB000090A10EE100AE9F7F1FC41EC100B00F092 -:107EC000FDFE51EC100BF8F763F900EE900AB0EEEE -:107ED000480A00F0FBF910EE100AE9F7DFFC304A1F -:107EE000394BE9F713FDF8F753F900EE100A00F0EB -:107EF00009F8BDEEC00A85ED000A01B0BDEC048BA7 -:107F000030BD0000DFED270A9FED271AB4EE410ACD -:107F1000F1EE10FA09DBB4EE600AF1EE10FA04D5C6 -:107F2000DFED220A30EE200A7047B4EE600AF1EE6F -:107F300010FA0BDBDFED1E0AB4EE600AF1EE10FA68 -:107F400004D5DFED1C0A30EE200A7047DFED1A0A77 -:107F5000DFED1A1AB4EE610AF1EE10FA09DBB4EEA5 -:107F6000600AF1EE10FA04D5DFED150A30EE200AB2 -:107F70007047B4EE600AF1EE10FA08DBDFED130A89 -:107F8000B4EE600AF1EE10FA01D530EE010A704746 -:107F9000E6C1631ADCA54C4000806640008066C0E4 -:107FA000E6C1631AFFFF06C4000034C40000344475 -:107FB000FFFF33C30000B443010007440100344312 -:107FC0000000B4C394FC0020DCA54C400100344404 -:107FD000E54A12689FEDBC0A038800EB4303B3F93E -:107FE000043000EE903AF8EEE00A92ED001AB8EE96 -:107FF000411A70EEC10A92ED031AB8EE411AC0EEB2 -:10800000810A60EE800AC1ED000AD2ED010AF8EEA5 -:10801000600A038800EB4303B3F9063001EE103A1F -:10802000B8EEC11A70EEC10A92ED041AB8EE411A08 -:10803000C0EE810A60EE800AC1ED010AD2ED020AAB -:10804000F8EE600A038800EB4300B0F9080001EE87 -:10805000100AB8EEC11A70EEC10A92ED051AB8EE18 -:10806000411AC0EE810A20EE800A81ED020A012049 -:1080700070470388934201D30023038003885B1C6D -:1080800003809BB2934201D300220280028802EB5C -:10809000420300EB8300001D91EC030A80EC030A0D -:1080A00001207047B0F90030591A09B2002901D5F2 -:1080B00011FA82F109B201EB410200EB8200001DCE -:1080C0007047000030B49FEDB80A0023B0F90040BB -:1080D00010E024B2002C08D404EB440500EB850525 -:1080E000D5ED010A30EE200A641E24B2002C00D522 -:1080F000541E5B1C1BB28B42EBDB30BC7047000094 -:1081000030B49FEDA90A0023B0F9004010E024B27A -:10811000002C08D404EB440500EB8505D5ED020ADC -:1081200030EE200A641E24B2002C00D5541E5B1CC5 -:108130001BB28B42EBDB30BC7047000030B49FEDCC -:108140009A0A0023B0F9004010E024B2002C08D4B1 -:1081500004EB440500EB8505D5ED030A30EE200A5B -:10816000641E24B2002C00D5541E5B1C1BB28B4233 -:10817000EBDB30BC7047000010B52DED068BADF287 -:10818000D47D00A80FF2282140F2D472ECF7A0FDB4 -:108190009FED768B9FED779B00ACB5EE400AF1EE3C -:1081A00010FA48DB9FED75ABDFED760AB4EE600A9E -:1081B000F1EE10FA1AD510EE100AE9F76FFB53EC46 -:1081C000192BE9F7A3FB53EC182BE9F7C9FCE9F7E6 -:1081D0007BFC54F82000E9F7ABFC53EC1A2BE9F7D1 -:1081E00095FBF7F7D5FF00EE100A68E0F7EE000AFE -:1081F00080EE800A10EE100AE9F750FB53EC192BC1 -:10820000E9F784FB53EC182BE9F7AAFCE9F75CFCCF -:1082100054F82000E9F78CFC53EC1A2BE9F776FBB5 -:1082200002460B465B485849E9F70EFDF7F7B0FFE9 -:1082300000EE100A43E0FFEE000AB4EE600AF1EE31 -:1082400010FA1CDBB1EE400A10EE100AE9F726FB2B -:1082500053EC192BE9F75AFB53EC182BE9F780FC88 -:10826000E9F732FC54F82000E9F762FC0022474BA2 -:10827000E9F74CFBF7F78CFF00EE100A1FE080EEE9 -:10828000800A10EE100AE9F709FB53EC192BE9F705 -:108290003DFB53EC182BE9F763FCE9F715FC54F8A8 -:1082A0002000E9F745FC0022394BE9F72FFB394A5A -:1082B0003E4BE9F755FCF7F76BFF00EE100A0DF2A5 -:1082C000D47DBDEC068B10BDC3F51C4180B5B0EE6E -:1082D000401AF5EE400AF1EE10FA04DD81EE200AB4 -:1082E000BDE8014048E7F5EE400AF1EE10FA24D56A -:1082F00081EE200AB5EE401AF1EE10FA0EDBFFF720 -:108300003BFF10EE100AE9F7C9FA224A224BE9F7BF -:1083100027FCF7F73DFF00EE100A01BDFFF72CFF29 -:1083200010EE100AE9F7BAFA1A4A1C4BE9F718FCE2 -:10833000F7F72EFF00EE100A01BDB5EE401AF1EE80 -:1083400010FA02DD9FED160A01BDB5EE401AF1EEFE -:1083500010FA02D59FED130A01BD9FED130A01BD6E -:108360000149086070470000D8FD002000000000AF -:108370000000E03F0000000000407F4000000000DF -:108380000000503F0100803FFB21F93F000050BF3B -:108390000000503F182D4454FB210940FB2109C027 -:1083A000DB0FC93FDB0FC9BF00000000FB21F9BF95 -:1083B00000000000020000000400000006000000B1 -:1083C000080000000A0000000C0000000E00000081 -:1083D0001000000012000000140000001700000050 -:1083E000190000001B0000001D0000001F0000001D -:1083F00021000000230000002500000027000000ED -:10840000290000002B0000002D0000002F000000BC -:10841000310000003300000035000000370000008C -:10842000390000003B0000003D0000003F0000005C -:10843000410000004300000046000000480000002A -:108440004A0000004C0000004E00000050000000F8 -:1084500052000000540000005600000058000000C8 -:108460005A0000005C0000005E0000006000000098 -:108470006200000064000000660000006800000068 -:108480006A0000006C0000006E0000007000000038 -:108490007200000074000000760000007800000008 -:1084A0007A0000007C0000007E00000080000000D8 -:1084B00082000000840000008600000088000000A8 -:1084C0008A0000008C0000008E0000009000000078 -:1084D0009200000094000000960000009800000048 -:1084E0009A0000009C0000009E000000A000000018 -:1084F000A2000000A4000000A6000000A8000000E8 -:10850000AA000000AC000000AE000000B0000000B7 -:10851000B2000000B4000000B6000000B800000087 -:10852000BA000000BC000000BE000000C000000057 -:10853000C2000000C4000000C6000000C800000027 -:10854000CA000000CC000000CE000000D0000000F7 -:10855000D2000000D4000000D6000000D8000000C7 -:10856000DA000000DC000000DE000000E000000097 -:10857000E2000000E4000000E6000000E700000068 -:10858000E9000000EB000000ED000000EF0000003B -:10859000F1000000F3000000F5000000F70000000B -:1085A000F9000000FB000000FD000000FF000000DB -:1085B00001010000030100000401000006010000A9 -:1085C000080100000A0100000C0100000E0100007B -:1085D000100100001201000014010000160100004B -:1085E00018010000190100001B0100001D0100001E -:1085F0001F010000210100002301000025010000EF -:1086000027010000290100002A0100002C010000C0 -:108610002E01000030010000320100003401000092 -:108620003601000038010000390100003B01000064 -:108630003D0100003F010000410100004301000036 -:108640004501000046010000480100004A01000009 -:108650004C0100004E0100005001000051010000DB -:1086600053010000550100005701000059010000AE -:108670005B0100005C0100005E0100006001000081 -:108680006201000064010000650100006701000054 -:10869000690100006B0100006D0100006E01000027 -:1086A00070010000720100007401000076010000FA -:1086B00077010000790100007B0100007D010000CE -:1086C0007F010000800100008201000084010000A1 -:1086D0008601000087010000890100008B01000075 -:1086E0008D0100008E010000900100009201000049 -:1086F000940100009501000097010000990100001D -:108700009B0100009C0100009E010000A0010000F0 -:10871000A2010000A3010000A5010000A7010000C4 -:10872000A8010000AA010000AC010000AE01000099 -:10873000AF010000B1010000B3010000B40100006E -:10874000B6010000B8010000B9010000BB01000043 -:10875000BD010000BF010000C0010000C201000017 -:10876000C4010000C5010000C7010000C9010000EC -:10877000CA010000CC010000CE010000CF010000C2 -:10878000D1010000D3010000D4010000D601000097 -:10879000D7010000D9010000DB010000DC0100006E -:1087A000DE010000E0010000E1010000E301000043 -:1087B000E5010000E6010000E8010000E901000019 -:1087C000EB010000ED010000EE010000F0010000EF -:1087D000F1010000F3010000F5010000F6010000C6 -:1087E000F8010000F9010000FB010000FD0100009C -:1087F000FE01000000020000010200000302000070 -:108800000402000006020000080200000902000045 -:108810000B0200000C0200000E0200000F0200001C -:1088200011020000130200001402000016020000F2 -:1088300017020000190200001A0200001C020000CA -:108840001D0200001F0200002002000022020000A2 -:10885000230200002502000026020000280200007A -:10886000290200002B0200002C0200002E02000052 -:108870002F0200003102000032020000340200002A -:108880003502000037020000380200003A02000002 -:108890003B0200003D0200003E02000040020000DA -:1088A00041020000430200004402000046020000B2 -:1088B00047020000480200004A0200004B0200008C -:1088C0004D0200004E020000500200005102000064 -:1088D000530200005402000055020000570200003D -:1088E000580200005A0200005B0200005C02000017 -:1088F0005E0200005F0200006102000062020000F0 -:1089000064020000650200006602000068020000C8 -:10891000690200006A0200006C0200006D020000A3 -:108920006F0200007002000071020000730200007C -:108930007402000075020000770200007802000057 -:108940007A0200007B0200007C0200007E02000030 -:108950007F0200008002000082020000830200000B -:1089600084020000860200008702000088020000E6 -:108970008A0200008B0200008C0200008E020000C0 -:108980008F0200009002000092020000930200009B -:108990009402000096020000970200009802000076 -:1089A000990200009B0200009C0200009D02000052 -:1089B0009F020000A0020000A1020000A20200002D -:1089C000A4020000A5020000A6020000A802000008 -:1089D000A9020000AA020000AB020000AD020000E4 -:1089E000AE020000AF020000B0020000B2020000C0 -:1089F000B3020000B4020000B5020000B70200009C -:108A0000B8020000B9020000BA020000BC02000077 -:108A1000BD020000BE020000BF020000C102000053 -:108A2000C2020000C3020000C4020000C502000030 -:108A3000C7020000C8020000C9020000CA0200000C -:108A4000CB020000CD020000CE020000CF020000E9 -:108A5000D0020000D1020000D3020000D4020000C6 -:108A6000D5020000D6020000D7020000D8020000A4 -:108A7000DA020000DB020000DC020000DD02000080 -:108A8000DE020000E0020000E1020000E20200005D -:108A9000E3020000E4020000E5020000E60200003C -:108AA000E8020000E9020000EA020000EB02000018 -:108AB000EC020000ED020000EE020000F0020000F7 -:108AC000F1020000F2020000F3020000F4020000D4 -:108AD000F5020000F6020000F7020000F8020000B4 -:108AE000FA020000FB020000FC020000FD02000090 -:108AF000FE020000FF02000000030000010300006E -:108B00000203000003030000050300000603000049 -:108B10000703000008030000090300000A03000027 -:108B20000B0300000C0300000D0300000E03000007 -:108B30000F030000100300001103000013030000E6 -:108B400014030000150300001603000017030000C3 -:108B500018030000190300001A0300001B030000A3 -:108B60001C0300001D0300001E0300001F03000083 -:108B70002003000021030000220300002303000063 -:108B80002403000010B500F081F800F099FFFEF713 -:108B900097FF454C4422002104F10C00E9F76DFADF -:108BA0000A2200212046E9F768FA0A2200213F48FC -:108BB000E9F763FA0C22002104F15400E9F75DFAA9 -:108BC0003B4C4FF4B67200212046E9F756FA1E20BE -:108BD000208010BD00F074BF80B500F0A5FFBDE897 -:108BE0000140FEF779BF3148F9F7BEBB10B42F48FA -:108BF0002D491CC81CC10C380021418010BC704795 -:108C000010B50446FFF7E4F92088401C2080B4F931 -:108C1000021080B2884200DB2180012010BD38B5EF -:108C2000214C256D04F154012046FFF7E9FF1E2277 -:108C300004F154011E48FFF71CFA012104F154000D -:108C4000FEF750FFA80705D5002104F1540000F0FD -:108C50006DFF04E0012104F1540000F067FF0021E2 -:108C600004F10C00BDE8344007E0124870470E499B -:108C7000CA6822EA0000C8607047026811430160B8 -:108C800070470B4870470C49086070470A480068F5 -:108C900000210160416081604FF48061C160016129 -:108CA0004161012101767047FC7700209C7B002008 -:108CB000486D002008780020E87B002051EC100B64 -:108CC00000B500F003F841EC100B00BD40F2FF7C52 -:108CD0000B0D4DD0634566D230B421EA035141F407 -:108CE000801103F2FD3C5FEA5C0C01D3001849419E -:108CF000890041EA907180004FF440140023E202A1 -:108D0000D50AB1F5100107D46D081DD2091B6419ED -:108D100000184941491BF7D56D080AD20919641B8F -:108D200000184941491BEFD56D08F7D301E05208FF -:108D300017D0C01861419B1AAC4100184941801AF4 -:108D4000A941F4D452080AD0C01AA1419B186C4121 -:108D500000184941801AA941E9D45208F4D15B1C9A -:108D60006C4161084FEA330001EB0C5130BC704795 -:108D700050EA0103FBD030B4B1FA81F311B9B0FA73 -:108D800080F41B190B3BB3F120042FBF00FA04F150 -:108D90009940C3F1200420FA04F438BF21439840DD -:108DA000D3F101039DE76345E1D011F5801FDED8C3 -:108DB00050EA4101DBD0D94301F022B9C046C04698 -:108DC000024A11001820ABBEFBE700BF26000200DC -:108DD00010EE101A10EE902AB0EEC00AC80F49002B -:108DE0005200F0EEE00A28BF0C3011F1807F38BF4E -:108DF00012F1807F0CD28A4238BF80F00400124208 -:108E000014D034BF80EE800A80EE200A01F0FEB854 -:108E100011F1807F08BF80F0040098BF12F1807FBD -:108E200008D88A4214BF00224FF07E5200EE102A6A -:108E300001F0ECB86FF0004100EE101A704700002E -:108E400010EE101A4FF07E5C01EE90CAC80F31F0A0 -:108E5000004122D000EE101AB1F17E5F13D871EEFE -:108E6000C00ADFF838C031EE801A61EE200AF1EE58 -:108E7000E00A614586BF80F0040080EE800A80EE43 -:108E8000200A01F0C3B8490011F1807F9CBF6FF048 -:108E9000004100EE101A41F2B3807047F404353FF0 -:108EA00040EA010C5FEA4C0C07D0884205D14FEA3A -:108EB000400C1CF1807F98BF8042704700EE100A82 -:108EC00000EE901A20EE200A10EE100A7047000003 -:108ED00030B4C26890F82A304B8402F222035D8AD3 -:108EE000ED05ED0D0D844D8C112D07D15D8AC5F377 -:108EF000C0251DB19C88CC84DC8802E05D88CD84CF -:108F0000548C0C85848C4C854469A58A0DB9258CBC -:108F1000C584C08C8885908E00F44060B0F5806F69 -:108F200007D154685B8B088D34F8133090FBF3F055 -:108F300005E02069E368834234BFC01A0020C88579 -:108F4000106D086430BC704738B504460D46FFF715 -:108F5000BFFF2846C046C04600206884A884002180 -:108F6000206981870421C1872046BDE8324001F095 -:108F7000DCB900002DE9F041074682B03E69306857 -:108F8000018BBA6B4C08F1680025914231D1B38D49 -:108F9000B1FBF3F203FB12174289716ABFB27A4345 -:108FA000DF193F1B97FBF3FC03FB1C7301EB420231 -:108FB00027001AD0B0F80AC09BB20CFB03FC0027B4 -:108FC00001EB4C0C964604E03EF8028B2CF8028B29 -:108FD0007F1CB0F80A804745F6DB5B1CB78D9BB25F -:108FE000BB4228BF0023641EE4D1B5870420F0876C -:108FF0008FE010198142C0F08C80384601F0BCF837 -:10900000F968B1F846200146384601F0D6F8788D67 -:10901000010A19BFA0F580707885304600F0A6FBE4 -:10902000388D010A042974D8DFE801F0030A353FBE -:109030006800C1076DD54FF6FE710840388568E0BD -:10904000C0F30010C8B9F88DF1688AB203199A42CA -:10905000BCBF081B80B2091AF160B96B11B1081AC4 -:10906000001BB8636FF00201386981870821C1874E -:1090700097F8280040F404700CE097F82A007885EF -:109080006FF00201386981870821C18797F82800AD -:1090900040F400703885388D40F001003885012596 -:1090A000B969304600F0A8FB33E04FF6FE71084086 -:1090B00038850125F868808EC0F3003131B1788D94 -:1090C00000F47F4040F05400788522E097F82A10A1 -:1090D000132918BF14291CD0C0F3C02048B9ADF81B -:1090E000000000A93846D7F7C9FE798D60F3070163 -:1090F000798538467968FFF7EBFE0AE0788D00F451 -:109100007F4040F01100788538467968FFF7E0FE2F -:1091100001252846BDE8F68190F82A1011291CBFC8 -:109120001429132908D0542902D14068418403E04E -:10913000C068808EC00501D00120704700207047B4 -:10914000F8B5426C6A4D02F6F80402F6B0026261AC -:109150006060256017262B88E6854FF6EF766D88D0 -:1091600055834FF67B7C258D2E4026850CEA06061E -:109170000D686F883F06FF0F46EA87062685078938 -:10918000032F0CD1898EC1F3802109B1002105E0A4 -:10919000C6F38001002914BF022101210181018948 -:1091A000D182C189B1F5C87F0EBF698B01EB630124 -:1091B00091FBF3F19183818939B14FF47A755E089F -:1091C00005FB0161B1FBF3F100E0A98B1183218D57 -:1091D000C1F38001002901BF418900290321418198 -:1091E000408959084FF47A7505FB0010B0FBF3F085 -:1091F000A08501F1F00090FBF3F0108101F6C4109E -:1092000090FBF3F05081204601F08FF80020A087FA -:109210002046F2BD2DE9FC410446656C15B950208D -:10922000BDE8F681606800281CBF2068002805D1D1 -:10923000532060842046FDF718FE56E0002060842D -:10924000A084E086A08A08B9032002E0062801DB9A -:109250000520A082E08910B94FF4C87008E0B0F58D -:10926000617FC8BF4FF4617002DC642801DA6420BA -:10927000E0812046D9F706FF060005D02046D8F742 -:109280001BF95FEA000803D12046C046C0462CE027 -:10929000308AB8F83C10884205D0552060842046BA -:1092A000C046C04621E01349204600F0B3FB074604 -:1092B00041462046FFF744FF4169CA8A022A04BF9B -:1092C0000122A1F84420C0F80C800761866005F6F1 -:1092D0001E0181614FF480533968498901EB4102D5 -:1092E000510082698B527969C161608CBDE8F68159 -:1092F000BC3C0308703C0308418A828A891A09B27F -:10930000002902D5B0F91000091809B2F02901DBD3 -:109310000120704700207047418A828A891A09B269 -:10932000002901D5008A4118084600B27047F8B5F7 -:10933000044692B2F12A09D2E5684448854205D133 -:10934000B4F91460002E0CD0F02E0AD04048012150 -:10935000016012B211460FF21410E6F7DEFE012092 -:10936000F2BD1F463B48874205D300F5B85C0CF1BF -:10937000700C67450AD3364901220A600246194635 -:109380000FF2F000E6F7C9FE0120F2BD12B2002A8A -:1093900014D0608A801B00B2002802D5B4F9107086 -:1093A000C01900B2F02801DA0020F2BD520005EB2E -:1093B000460000EB4101184600F04EF8A08AF0305C -:1093C000A082B4F9101000B2884201D10020A0821E -:1093D0002068401C20600120F2BD10B50446F02A30 -:1093E0000BD1E068194B984207D1B4F91230002B29 -:1093F0000DD0B4F91230F02B09D0154801210160CD -:1094000011460FF28000BDE81040E6F786BE4FF42B -:10941000F072B4F9123000EB430000F01DF8608ADE -:10942000F0306082B4F91200B4F91010884201D112 -:1094300000206082208BF0302083B4F9101000B23D -:10944000814200DD0146218310BD000098AF00205D -:1094500094AF002058B3002003E011F8013B00F85E -:10946000013B13465A1E002BF7D17047734D4D3107 -:1094700020256400734D4D32202523582C25235878 -:1094800000000000734D4D3320256400F0B5044604 -:10949000002500262F464FF4C07047F6294312FBE3 -:1094A00003F24FEAE23CE25F31F902EBA2EB0C0C73 -:1094B0000CF30F0C1EFB0CFC4FEA2C4C24F802CBD7 -:1094C0006545B8BF6546B445B8BF6646401EE6D19F -:1094D0004FF480712046D9F701FF714204F5807086 -:1094E0008D42B8BF0D462DB2012D1FDBA0F5806067 -:1094F00043F6FF7101E06D007F1C2DB28D42BCBFB1 -:109500003FB20A2FF7DB60210288BA4020F8022B15 -:109510000288BA4020F8022B0288BA4020F8022BB9 -:109520000288BA4020F8022B491EEDD138B2F0BDB6 -:109530002DE9F24F024682B01069DFF8CC9400901A -:10954000D0F81CB08169019100230468E55E47F6FC -:10955000FF7A0DE0DFF8B4148842B8BFDFF8B0043A -:109560002188691A2BF811006D1C9B1C2DB21BB2AF -:109570006088854280F28780E06B30F9131000EB41 -:10958000430000274088A0EB010C206C00EB410059 -:1095900000F1020EA06B019930F9150001EB80007B -:1095A00000260FFA8CFC00F10408BCF1000F13D068 -:1095B00058F8040B3EF8021BA1FB0001C00BACF1F4 -:1095C000010C40EA414086190FFA8CFCBCF1000FF7 -:1095D000EED101E076087F1CE089E16A01EB8001B1 -:1095E00051F8041C8E4228BF032EF3D2022E24D33E -:1095F000002100B2D4F82CC0A0EB010EBEF1020F86 -:109600000ADB00EB010E4FEA6E0E5CF82EC06645D9 -:1096100034BF70467146EDE75CF821E05CF820C08D -:10962000A6EB0E06ACEB0E0C02E076084FEA5C0CE3 -:109630004E45FAD2BCF1000F05D12088281A00212E -:109640002BF8101090E7D4F828E03EF911103EF9FD -:109650001000401A7043B0FBFCF000FA81F0BDF836 -:109660000810C91B09B2676C002951BF37F91110E6 -:10967000494237F91110494209B2401A5045FFF6E4 -:1096800069AF50466CE7108DC0F3400028B35069B5 -:10969000009BC1685B688B4226BF591A89B20021C2 -:1096A00001F11003DC1003EB14742411A3EB041379 -:1096B0000429AEBF0421491C89B2D48C166A4D1E00 -:1096C00005FB04644D0814FA85F4B4FBF1F1D18470 -:1096D0009BB200EB4300D18C018403B0BDE8F08F56 -:1096E0002DE9F04F0168B1F90230B1F900404A6A42 -:1096F0001B1B8468858DB4FBF5F805FB18444D8968 -:1097000024B26C43456A05EB44041BB20027BF4DED -:1097100047F6FF7806E0AC45B8BFDFF8F4C224F89E -:1097200002CB7F1C3FB2B1F80AE0BC46F4451BDA1D -:10973000C6694FF0000E012B09DB994636F902ABE2 -:1097400032F902BB1AFB0BEEB9F10109F6D10E6B2F -:1097500036F91C604FEA2E2E06FB0EF64FEA262C39 -:10976000C445D8DBC446DAE7BDE8F08F2DE9F04305 -:10977000828DC368B0F93E4001684D8BD3181B1B26 -:10978000B3FBF2F402FB14324B8912B25A43436A20 -:1097900003EB4202B0F93C301C46A542B8BF2CB2E4 -:1097A00004DB002C48BF2CB25B1C8387631C1BB2FC -:1097B0004FF0000C5C1E964D944E47F6FF7808E083 -:1097C000B645B8BFAE4627F81CE00CF101070FFA0A -:1097D00087FCB1F80AE0F4450CDA076A32F9029B1B -:1097E00037F91CE004FB0E9E9EFBF3FEC645E7DB4B -:1097F000C646E8E7BDE8F0832DE9F34F85B0006881 -:1098000005990190B0F90A00019A00900598B2F903 -:109810001820808DC968821A5118491CB1FBF0F2DA -:1098200000FB121000B20390002100980128C0F242 -:10983000E88000A8425E0598406ADDF818B0DFF8BD -:10984000D091029003460598D0F820800398401CE0 -:1098500000B20490019846890398029FDDF810E059 -:1098600006FB001007EB4007B7F90000C51005988C -:10987000808D9EFBF0F400FB14E424B2002C0CBF9E -:109880001F4607EB4607641C0FFA84FC9CFBF0F4B0 -:10989000B7F900E000FB14C424B205EBEE05002C80 -:1098A0000CBF9C4607EB460CBCF90070641C05EB32 -:1098B000671E24B294FBF0F53F1100FB15447F4274 -:1098C00024B2002C0CBF9C460CEB460CBCF900509B -:1098D000641CAEEBE50EA7EB651724B294FBF0F524 -:1098E00000FB15452DB2002D0CBF9C460CEB460C21 -:1098F000BCF900404FEA241A0AEB8A0AAEEB0A0EC2 -:10990000B8F900A06D1CA4EB0A042DB295FBF0FA87 -:1099100000FB1A5564112DB2002D0CBF9C460CEBB8 -:10992000460CBCF900A06D1CAEEBEA0E07EB6A1703 -:109930002DB295FBF0FA00FB1A552DB2002D0CBF8D -:109940009C460CEB460CBCF900A06D1C0EEB6A1E8D -:1099500007EB2A172DB295FBF0FA00FB1A552DB232 -:10996000002D0CBF9C460CEB460CBCF900A06D1CF6 -:109970000EEBEA0E2DB295FBF0FA00FB1A5000B286 -:1099800000280CBF9C460CEB460CFE010A2796FBF8 -:10999000F7F6BCF90070E0010EEBE707FF01642465 -:1099A00097FBF4F7B0F5004FA8BF47F6FF7002DA57 -:1099B0004845B8BF4846B6F5004FA8BF47F6FF7602 -:1099C00002DA4E45B8BF4E46B7F5004FA8BF47F67E -:1099D000FF7702DA4F45B8BF4F462BF8020B491C00 -:1099E000069820F8126008F102080098069E801878 -:1099F00000B226F810709B1C0098521C8142FFF6A2 -:109A000029AF07B0BDE8F08F010010000280FFFF12 -:109A10000180FFFF426C02F6700001600021818727 -:109A20000421C18702F60401016202F2D071C16112 -:109A300002F574714161816102F5F871816213214F -:109A4000818542627047F8B5044600202569688721 -:109A50006869B5F91020B0F8DE1129822968096A11 -:109A6000FFF714FDE8866969084600F079FCE98E85 -:109A7000081A4000E88600222968A869B1F9081090 -:109A80000023012910DB0646B6F9027036F904CB33 -:109A90001CFB0CFC17FB07C712B240F822709B1C82 -:109AA000521C1BB28B42EFDBB5F936102046FFF794 -:109AB0003FFD2846FFF714FEA868401CA860F1BDD2 -:109AC00010B5DFF82C45FFF7DCF860660020024691 -:109AD00003E004EB8001CA62401C0928F9DB104650 -:109AE0002066E065FFF7C1F8A0664FF4FA702060C9 -:109AF0006060DFF80005A0609FED0A0A84ED030AAC -:109B000084ED040A84ED050AB5EE000A84ED060A28 -:109B100084ED070ADFF8E004206207206062A0629B -:109B200010BD00009A99193F70470000F0B52DED67 -:109B3000048B87B00C469FED438ADFF8B4640020A5 -:109B40007065B065306E401C3066DFF8B054012C93 -:109B500002D1002068672867F06D0A2844DA1E22C7 -:109B60000021706EFEF79EFAC5F88C001E220121BE -:109B7000706EFEF797FAF16D06EB8102336E03EB20 -:109B80008307BB00D36201292CDBD5F88C3093ED21 -:109B9000000AD0ED000A30EE600A8DED030A93ED65 -:109BA000010AD0ED010A30EE600A03AF87ED010A29 -:109BB000D3ED020A90ED021A70EEC10AC7ED020A57 -:109BC00005EB81009DED031ADDED031A21EE211A4C -:109BD00000EE001A00EEA01A80ED051AD36A926A10 -:109BE0009A1A8263481CF065316E0A2902DA032052 -:109BF000C5F88800F06D0A28C0F23E81401EF0656D -:109C0000706E0A2920D11E220A21FEF75BFA85ED2B -:109C1000030A1E220A21706EFEF772FA85ED040A0D -:109C20001E220A21706EFEF789FA85ED050A0020D2 -:109C3000092844DA05EB800191ED060A38EE008A26 -:109C4000401CF5E7000000001E220A21FEF72AFA58 -:109C5000D5F88C1095ED030AD0ED000A30EE600ABD -:109C6000D1ED000A30EE200A85ED030A95ED040AD5 -:109C7000D0ED010A30EE600AD1ED010A30EE200A83 -:109C800085ED040A95ED050AD0ED020A30EE600A72 -:109C9000D1ED020A30EE200A85ED050AF06D05EBE4 -:109CA000800090ED050AD0ED040A30EE200AD0EDD8 -:109CB000030A30EE200AF0EE080A20EE208AB2EE07 -:109CC000040AD5ED030AC0EE800ACDED000AD5EDF9 -:109CD000040AC0EE808A00A8C0ED018AD5ED050A0D -:109CE00080EE809A80ED029A306E0A2805D10098A5 -:109CF0002860C5ED018A85ED029A00270FE01E223B -:109D0000C7F1090109B2706EFEF7CCF995ED021AA0 -:109D1000D5ED010A95ED000A00F0EFF87F1C0A2F3F -:109D2000EDDBF06A716A726D914249DAA96F002920 -:109D300008D128660121A96700992960C5ED018A2B -:109D400085ED029AB16AB26D91420CDAE96F002991 -:109D50000BD168660121E96700992960C5ED018A88 -:109D600085ED029A01E00021E967296E411A296711 -:109D700032686B6EC31A9A420CD2EB6F012B09D179 -:109D80000020C5F88000C5F8840068670120C5F888 -:109D9000880060E08A420CD2A96F012909D1002015 -:109DA000C5F88000C5F8840068670220C5F88800FF -:109DB00051E0A96E401A68670320C5F888004AE0A0 -:109DC00000992960C5ED018A85ED029A0021A967F5 -:109DD000E9672967D5F88010002903D1A866012119 -:109DE000C5F88010A96E411A69679FED7F0A28EEB9 -:109DF000000AB5EE400AF1EE10FA03DC9FED7B0A93 -:109E000028EE000AD6ED020AB3EE041A60EE810ACB -:109E1000F4EE400AF1EE10FA08D5D5F884100029C6 -:109E200007D1E8660121C5F8841002E00021C5F8D9 -:109E300084107168A1F5FA71EA6E801A814207D226 -:109E4000D5F88400012803D10420C5F8880002E079 -:109E50000320C5F8880000200CE006EB80010A6BA7 -:109E6000CA62082805DA05EB8001CA698A610A6CB2 -:109E7000CA63401C0928F0DBD5F88800012806D009 -:109E800037D303281CD00ED3042826D031E0B06E7F -:109E90000121C162296F016302214163002C28D195 -:109EA000FEF7EBFE25E0B06E0121C162296F016370 -:109EB00004214163002C1CD10221FEF7DEFE18E0D4 -:109EC000B06E0121C162696F016308214163002CFA -:109ED0000FD10221FEF7D1FE0BE0B06E0121C1626D -:109EE000696F016310214163002C02D10221FEF74A -:109EF000C4FE07B0BDEC048BF0BD83B0D0ED001AFA -:109F000031EEC00A8DED000A90ED010A30EE600AD4 -:109F100000A981ED010AD0ED020A70EEC10AC1ED7F -:109F2000020A9DED001AB5EE401AF1EE10FA03D5C3 -:109F3000B1EE411A8DED001AB5EE400AF1EE10FABD -:109F400003D5B1EE400A81ED010AF5EE400AF1EECB -:109F500010FA03D5B1EE600A81ED020A24489DEDA6 -:109F6000000AD0ED030AB4EE600AF1EE10FA13D540 -:109F700091ED010AD0ED040AB4EE600AF1EE10FA98 -:109F80000AD591ED020AD0ED050AB4EE600AF1EEB1 -:109F900010FA01D5012200E000229DED000AD0ED6B -:109FA000060AB4EE600AF1EE10FA13D591ED010A3B -:109FB000D0ED070AB4EE600AF1EE10FA0AD591ED81 -:109FC000020AD0ED080AB4EE600AF1EE10FA01D5EB -:109FD000012100E00021436DD2184265826D89188D -:109FE000816503B07047000000007A4400007AC425 -:109FF0000CE30020000040413333B33E7CF70020E7 -:10A000001FB502F08BFB212101601FBD1AA210EECB -:10A01000101ADFF860C0F2EC060A614509DB00EEB9 -:10A02000803A70EE800A83EE200A40F0020010EEC3 -:10A03000101A21F0004CDCF1665C0BD860EE000ACF -:10A0400020EE203A03EE010A01EEA02A42EE202A79 -:10A0500080EE220A400810F0020F18BFB1EE400A4D -:10A0600002EB8002D2ED000A30EE200A28BFB1EEEA -:10A07000400A7047A430893ED7B3DD3F6AD5033F1D -:10A080002B94A93DB82A593F0000803F000080BFB3 -:10A0900000000000920A063FDB0FC93F920A863F8C -:10A0A000DB0FC93F920A0640DB0F4940368D27403F -:10A0B000F0B443695D88DF880A466C1C05FB0727FE -:10A0C00007EB6407B7FBF4F7002147F6FF74A742DC -:10A0D000A8BF274603DA264EB742B8BF254FDF8018 -:10A0E0001F89BD420BD2072D07DB5F80DD8A35B9A2 -:10A0F000058D45F08005058501E06D1C5D80DD8ADC -:10A1000015B1012D05D010E0018DC1F3C01169B961 -:10A1100010E09E8A9D88022E0CBF2E4605F596768D -:10A1200045B1DD88B6B2AE4204D20121058D45F0BD -:10A130008005058518889F88461C00FB072202EBD6 -:10A140006602B2FBF6F2A242A8BF224603DA084C2E -:10A15000A242B8BF074A9A805A89904204D2062880 -:10A16000AEBF1A80401C1880F0BC08467047000043 -:10A170000280FFFF0180FFFF38B504462069818D12 -:10A1800002688368158B5289406A5B1EA3EB5503F6 -:10A19000CB18B3FBF1F501FB153189B2514330F80F -:10A1A000115029462046FFF783FFA18CA94238BFF2 -:10A1B0002946A18400B9E58432BDF0B403695C6826 -:10A1C0001B681B8B4569A4EB530605F10C031F8923 -:10A1D00037B1022F39D017D3032F6DD0F0BC7047A1 -:10A1E00011B1EE6001209DE0818D002900F09B807F -:10A1F000B14280F098800421198190F8281001F074 -:10A20000FE0141F4806154E0E9B1E968DA89711A2C -:10A210009142C0F08880102E32BF0021611C01F0F5 -:10A220000F0105EB41014FF6FD72098CC184018DD0 -:10A2300011400185E96801630221A98290F8281084 -:10A2400041F4807135E000206CE011B95E600320BC -:10A2500068E05989002966D1818D002963D0B14217 -:10A2600061D20421198190F8281001F0FE0141F417 -:10A2700080610185C1F38001002954D1C1688A8EB3 -:10A28000C2F3C022002A4ED0828C43F699239A4210 -:10A2900049DBB1F856208B8E62F308038B86418D23 -:10A2A00001F47F4141F03301418590F8281041F4D9 -:10A2B00040710185F0BC704799BB2969491E416313 -:10A2C0008ABB9A8952B1046B091B491C89B28A4224 -:10A2D00004D20021198190F828100185A98B2A69E0 -:10A2E00012FA81F18E421ED390F8281041F4407189 -:10A2F0000185042119812A690168EB68D21A8B88CB -:10A300009A4238BF132105D3828CC9888A4234BF50 -:10A3100014210021428D02F47F4211434185F0BC9B -:10A32000704702201881F0BC7047416900228A8280 -:10A3300090F82820028500220A61CA600A804A80BB -:10A34000CA808A808284028D42F002020285002245 -:10A35000C28410200A84891C401EFBD17047000073 -:10A3600038B50D4604460FF25C424FF4807100F0A0 -:10A370007DF80FF2D0324FF48071204600F0B0F932 -:10A3800000954FF480710FF640230FF638022046F7 -:10A3900000F002F8082032BD2DE9F14F101D009A9F -:10A3A000151D02EB8102161F0A9A1C1D131D490878 -:10A3B00002F2FE38491E39D0D0F800C02F68D4F818 -:10A3C00000E0D6F80090D5F800A047FB0CFC3768F9 -:10A3D00027FB0ECC2F6855F804BB47FB0EFE076821 -:10A3E00029FB07EE276849FB17F7D0F800902AFBF6 -:10A3F000197750F8049B56F804A94AFB19F954F848 -:10A4000004AB4FEADC3C23F802CBFF132BFB1A9979 -:10A4100023F8027BC9F1000C4FEAEC3728F80279E7 -:10A42000491E4FEADE3728F80279C5D101682F6846 -:10A43000366800682D6847FB01F127683C4626FB1B -:10A44000071146FB14F425FB1040C90B1980C013FB -:10A4500023F8020F00990098B1F90010B0F902003A -:10A460000B1A401810805380BDE8F18F2DE9F64F8C -:10A4700085B0069B069C0093890803910A46A04676 -:10A48000894607463B689E101B049B146FF30F061A -:10A490009BB201EB090A334350F82A604FEAA60E3B -:10A4A0003604B6146FF30F0EB6B201EB0A0C46EA8F -:10A4B0000E0550F82CE093FA15F64FEAAE0BD3FADE -:10A4C00015F34FEA0E4E50F829504FEAAE4ECEEA41 -:10A4D0000B0E4FEAA50B2D04AD14C5EA0B0595FA3A -:10A4E0001EFE96FA2EF547F8045BD6FA1EFE54F8C7 -:10A4F000085B02952E4626FB0EF546FB1EFE4FEA34 -:10A500001E4E50F829604FEA0E4E4EEA154540F8AF -:10A51000295009F1010950F82CE04FEAAE054FEA45 -:10A520000E4E4FEAAE4ECEEA050EB5103604B61406 -:10A53000C6EA0506D6FA1EF6A3FA16FEE3FA16F5E3 -:10A54000009B1B1D009353F8046D0196334646FB98 -:10A5500015F6360C23FB05F3360446EA134340F8A0 -:10A560002A3058F80C3B23FB0EF643FB1EF31B0C62 -:10A570001B0443EA164340F82C30521E82D10422B9 -:10A580000092039A5EE00E1901EB060A50F824507F -:10A5900050F82A7095FA17FE01EB0A0CD5FA17F558 -:10A5A00050F82C9050F8267097FA19F99EFA29F76E -:10A5B0004FEA670B3F047F146FF30F0BBFB247EAFC -:10A5C0000B0740F82470DEFA29F9029FDDF808E055 -:10A5D00047FB19F72EFB09FE3F0C50F826903F046D -:10A5E00047EA1E4740F8267050F82C60019FD9FAC0 -:10A5F00016F6A5FA26FEE5FA26F5019E26FB05F6D7 -:10A6000047FB15F52D0C2D0445EA164640F82A6047 -:10A6100043FB1EFA4FEA1A4523FB0EF62D0445EACA -:10A62000164640F82C60039E3419059EB442AAD306 -:10A63000521C4B1E93420ED2009A9204120C0092AE -:10A64000049A92080492049B052B15D303914FF0B2 -:10A65000000889080022069B53F82830069C0193C5 -:10A66000069B53F83830029308EB48039B001B59B4 -:10A67000009CA0441446D8E7059C0023641A2AE0F5 -:10A6800003EB910606EB910A50F8232050F82A506C -:10A6900092FA15FE0AEB910CD2FA15F550F82C80BF -:10A6A00050F8262092FA18F89EFA28F940F82390DC -:10A6B000DEFA28F850F826E040F82680CB1850F84B -:10A6C0002C20DEFA12F6E5FA26F840F82A80A5FAE0 -:10A6D00026F840F82C809C42D2D207B0BDE8F08F1B -:10A6E0002DE9F0434FEA510C0CF101010023002445 -:10A6F000054600EB8106ACF1020811E09C420FD246 -:10A70000D5F800E050F823702F6040F823E0CF1810 -:10A71000D6F800E050F82790C6F8009040F827E0FF -:10A720006344D5F804E050F823706F6040F823E0EC -:10A73000A41C32F8023B08360835A045DED2BDE83D -:10A74000F083000040002000600010005000300046 -:10A750007000080048002800680018005800380001 -:10A760007800040044002400640014005400340005 -:10A7700074000C004C002C006C001C005C003C00C1 -:10A780007C000200420022006200120052003200EF -:10A7900072000A004A002A006A001A005A003A00B1 -:10A7A0007A000600460026006600160056003600B5 -:10A7B00076000E004E002E006E001E005E003E0071 -:10A7C0007E000100FF7F0000F67F2403D97F48064A -:10A7D000A77F6B09627F8C0C0A7FAB0F9D7EC8122E -:10A7E0001E7EE2158A7DF918E47C0C1C2A7C1A1F57 -:10A7F0005D7B24227D7A28258A79272885781F2B5E -:10A800006C77112E4276FC300575DF33B673BA369D -:10A8100055728D39E370573C5F6F173FCA6DCE415B -:10A82000246C7B446E6A1D47A768B449D066404CCF -:10A83000E964C04EF2623451EC609B53D75EF6552A -:10A84000B45C4358825A825A4358B45CF655D75E7A -:10A850009B53EC603451F262C04EE964404CD066C8 -:10A86000B449A7681D476E6A7B44246CCE41CA6D0B -:10A87000173F5F6F573CE3708D395572BA36B67328 -:10A88000DF330575FC304276112E6C771F2B8578EF -:10A8900027288A7928257D7A24225D7B1A1F2A7C25 -:10A8A0000C1CE47CF9188A7DE2151E7EC8129D7E80 -:10A8B000AB0F0A7F8C0C627F6B09A77F4806D97F9C -:10A8C0002403F67F0000FF7FDCFCF67FB8F9D97F18 -:10A8D00095F6A77F74F3627F55F00A7F38ED9D7E71 -:10A8E0001EEA1E7E07E78A7DF4E3E47CE6E02A7C2C -:10A8F000DCDD5D7BD8DA7D7AD9D78A79E1D48578B9 -:10A90000EFD16C7704CF427621CC057546C9B6737A -:10A9100073C65572A9C3E370E9C05F6F32BECA6DDA -:10A9200085BB246CE3B86E6A4CB6A768C0B3D0662A -:10A9300040B1E964CCAEF26265ACEC600AAAD75EC5 -:10A94000BDA7B45C7EA5825A4CA3435829A1F655F5 -:10A95000149F9B530E9D3451179BC04E3099404C11 -:10A960005997B44992951D47DC937B443692CE416A -:10A97000A190173F1D8F573CAB8D8D394A8CBA364D -:10A98000FB8ADF33BE89FC309488112E7B871F2B16 -:10A990007686272883852825A3842422D6831A1F18 -:10A9A0001C830C1C7682F918E281E2156381C812BF -:10A9B000F680AB0F9E808C0C59806B09278048066F -:10A9C0000A802403008000000A80DCFC2780B8F99C -:10A9D000598095F69E8074F3F68055F0638138EDCA -:10A9E000E2811EEA768207E71C83F4E3D683E6E081 -:10A9F000A384DCDD8385D8DA7686D9D77B87E1D45A -:10AA00009488EFD1BE8904CFFB8A21CC4A8C46C9F9 -:10AA1000AB8D73C61D8FA9C3A190E9C0369232BE1B -:10AA2000DC9385BB9295E3B859974CB63099C0B387 -:10AA3000179B40B10E9DCCAE149F65AC29A10AAA0C -:10AA40004CA3BDA77EA57EA5BDA74CA30AAA29A19C -:10AA500065AC149FCCAE0E9D40B1179BC0B330992E -:10AA60004CB65997E3B8929585BBDC9332BE3692CB -:10AA7000E9C0A190A9C31D8F73C6AB8D46C94A8C8E -:10AA800021CCFB8A04CFBE89EFD19488E1D47B87A7 -:10AA9000D9D77686D8DA8385DCDDA384E6E0D68351 -:10AAA000F4E31C8307E776821EEAE28138ED6381D6 -:10AAB00055F0F68074F39E8095F65980B8F927809A -:10AAC000DCFC0A800000008024030A8048062780FE -:10AAD0006B0959808C0C9E80AB0FF680C812638185 -:10AAE000E215E281F91876820C1C1C831A1FD683AA -:10AAF0002422A38428258385272876861F2B7B87FD -:10AB0000112E9488FC30BE89DF33FB8ABA364A8C1A -:10AB10008D39AB8D573C1D8F173FA190CE4136929A -:10AB20007B44DC931D479295B4495997404C30992A -:10AB3000C04E179B34510E9D9B53149FF65529A16F -:10AB400043584CA3825A7EA5B45CBDA7D75E0AAA1F -:10AB5000EC6065ACF262CCAEE96440B1D066C0B3E3 -:10AB6000A7684CB66E6AE3B8246C85BBCA6D32BE6A -:10AB70005F6FE9C0E370A9C3557273C6B67346C967 -:10AB8000057521CC427604CF6C77EFD18578E1D47E -:10AB90008A79D9D77D7AD8DA5D7BDCDD2A7CE6E05C -:10ABA000E47CF4E38A7D07E71E7E1EEA9D7E38ED95 -:10ABB0000A7F55F0627F74F3A77F95F6D97FB8F9C5 -:10ABC000F67FDCFC004000C0373F01C06E3E05C090 -:10ABD000A53D0BC0DC3C14C0133C1FC04B3B2CC03C -:10ABE000823A3CC0BA394FC0F23864C02A387BC0C0 -:10ABF000633795C09C36B1C0D535D0C00F35F1C094 -:10AC0000493415C184333BC1BF3263C1FA318EC1AF -:10AC10003631BBC17330EBC1B02F1DC2EE2E51C215 -:10AC20002D2E88C26C2DC1C2AC2CFDC2ED2B3BC3B6 -:10AC30002E2B7BC3702ABEC3B42903C4F7284AC491 -:10AC40003C2893C48227DFC4C9262DC511267EC5A2 -:10AC50005925D0C5A32425C6EE237CC63A23D5C6E4 -:10AC6000872231C7D5218FC72421EEC7742050C851 -:10AC7000C61FB5C8191F1BC96D1E83C9C31DEEC9E8 -:10AC8000191D5BCA721CC9CACB1B3ACB261BADCBA4 -:10AC9000821A21CCE01998CC3F1911CDA0188CCD87 -:10ACA000021808CE661787CECB1607CF32168ACF8A -:10ACB0009B150ED0051594D071141CD1DF13A6D1AD -:10ACC0004E1331D2BF12BFD231124ED3A611DFD3F1 -:10ACD0001C1171D4941005D50E109BD58A0F32D655 -:10ACE000070FCBD6870E66D7080E02D88C0DA0D8DA -:10ACF000110D3FD9980CE0D9210C82DAAD0B26DB7F -:10AD00003A0BCBDBC90A72DC5B0A19DDEE09C3DD45 -:10AD100083096DDE1B0919DFB508C6DF500874E032 -:10AD2000EE0724E18F07D5E1310787E2D5063AE344 -:10AD30007C06EEE32506A3E4D00559E57E0511E681 -:10AD40002D05C9E6DF0482E793043CE84A04F7E8EE -:10AD50000304B4E9BE0370EA7B032EEB3B03EDEB87 -:10AD6000FD02ACECC1026CED88022DEE5102EEEE5C -:10AD70001D02B0EFEB0173F0BB0136F18E01FAF169 -:10AD80006301BFF23B0184F3150149F4F1000FF5B3 -:10AD9000D000D5F5B1009CF6950063F77B002AF84A -:10ADA0006400F2F84F00BAF93C0082FA2C004BFB29 -:10ADB0001F0013FC1400DCFC0B00A5FD05006EFE5B -:10ADC000010037FF0000000000400040C940FF3F85 -:10ADD0009241FB3F5B42F53F2443EC3FED43E13FB3 -:10ADE000B544D43F7E45C43F4646B13F0E479C3FE5 -:10ADF000D647853F9D486B3F64494F3F2B4A303FC4 -:10AE0000F14A0F3FB74BEB3E7C4CC53E414D9D3E5A -:10AE1000064E723ECA4E453E8D4F153E5050E33DA4 -:10AE20001251AF3DD351783D94523F3D5453033DB1 -:10AE30001354C53CD254853C9055423C4C56FD3B86 -:10AE40000957B63BC4576D3B7E58213B3759D33A1F -:10AE5000EF59823AA75A303A5D5BDB39125C84398C -:10AE6000C65C2B39795DCF382B5E7138DC5E1238C9 -:10AE70008C5FB0373A604B37E760E53693617D36DB -:10AE80003D621236E762A5358E6337353564C634C8 -:10AE9000DA6453347E65DF3320666833C166EF328F -:10AEA00060677432FE67F8319A6879313569F93034 -:10AEB000CE697630656AF22FFB6A6C2F8F6BE42EB9 -:10AEC000216C5A2EB26CCF2D416D412DCF6DB22C1D -:10AED0005A6E212CE46E8F2B6C6FFB2AF26F652A61 -:10AEE0007670CE29F970352979719A28F871FE2784 -:10AEF00074726027EF72C12668732026DF737E2587 -:10AF00005374DA24C674352437758E23A575E72269 -:10AF100012763D227D769321E576E7204B773A2025 -:10AF2000B0778C1F1278DC1E71782B1ECF78791DBC -:10AF30002B79C61C8479121CDB795D1B307AA71A29 -:10AF4000827AEF19D37A3719217B7E186D7BC4176B -:10AF5000B67B0917FD7B4C16427C9015857CD2147C -:10AF6000C57C1314037D54133F7D9412787DD31157 -:10AF7000AF7D1211E37D5010157E8D0F457ECA0EF8 -:10AF8000727E060E9D7E410DC57E7C0CEB7EB70B5E -:10AF90000F7FF10A307F2B0A4F7F64096B7F9D087A -:10AFA000857FD6079C7F0E07B17F4606C47F7E054E -:10AFB000D47FB504E17FED03EC7F2403F57F5B02D2 -:10AFC000FB7F9201FF7FC900FF7F0000704780B5C3 -:10AFD000022808D0042806D0082804D0102802D05F -:10AFE0004FF4803104E04007411300EB914081139E -:10AFF000882001F0AFFC002002BD80B5B0F5FA6FEB -:10B000000DD0B0F57A7F0AD0B0F5FA7F07D0FA28D4 -:10B0100005D04FF07A71882001F0FBFB03E0C103FB -:10B02000882001F0F6FB002002BD80B501F0D5FFBD -:10B0300002F039FE00280CD002F035FE59230FF241 -:10B0400030220FF24421FFF7C1FFBDE8014002F0BA -:10B050002ABE03F08EFB00280CD003F08AFB5A2393 -:10B060000FF20C220FF22021FFF7B0FFBDE80140E4 -:10B0700003F07FBB03F067FD00280CD003F063FDF5 -:10B080005B230FF2EC120FF20021FFF79FFFBDE8E8 -:10B09000014003F058BD04F0AAF900280CD004F0D8 -:10B0A000A6F95F230FF2C8120FF2DC11FFF78EFF33 -:10B0B000BDE8014004F09BB904F035FC00280CD039 -:10B0C00004F031FC60230FF2A8120FF2BC11FFF75D -:10B0D0007DFFBDE8014004F026BC05F022FA0028FF -:10B0E0000CD005F01EFA61230FF284120FF29811B2 -:10B0F000FFF76CFFBDE8014005F013BA0220FFF72F -:10B1000066FF4FF4FA70FFF778FF4FF00071882068 -:10B1100001F025FCBDE8014001F09ABF10B54FF4E5 -:10B120007A720023F2F7CEF9044601F077FB20464D -:10B1300001F085FB204601F0A7FB002010BD80B583 -:10B140004FF47A720023F2F7BDF901F08AFB002078 -:10B1500002BD00002DE9F04784B00E4617469A461E -:10B16000DDF838804FF00009DDE90C45002803D0F8 -:10B1700022462B4601F0E1FC002E0ED0B6F900006D -:10B18000009000A8B6F902104160B6F90410816081 -:10B1900022462B46494601F09BFC002F24D09FED10 -:10B1A000260AD7ED000A60EE800AFDEEE00ACDED3A -:10B1B000000A00A8D7ED010A60EE800AFDEEE00A61 -:10B1C000C0ED010AD7ED020A20EE800ABDEEC00AEA -:10B1D00080ED020A22462B4648F0200101F0C8FC0F -:10B1E000002801D04FF02009BAF1000F0DD02246FF -:10B1F0002B460021504601F0F7FC002801D1012028 -:10B2000004E04FF02009002000E00020002802D0D8 -:10B2100001F094FD8146484604B0BDE8F08780B552 -:10B220000A4600A903F0CAFA02BD80B50A4600A981 -:10B2300003F022FB02BD00000000004280B501F0D7 -:10B2400029FD002002BD80B501F012FD002002BDE5 -:10B2500080B501F013FD002002BD80B501F014FDA2 -:10B26000002002BD05F0E3BC01F0D3BA01F072BBCF -:10B27000696E765F696E69745F696E76656E736517 -:10B280006E73655F61706900433A5C54656D705C14 -:10B290004955535C494B445C5461652D536F6F5C59 -:10B2A000656D6265646465645F7265666572656E2E -:10B2B00063655F666F725F4E6F74655F335C656D6B -:10B2C0006265646465645C496E76656E53656E7331 -:10B2D000655C6D706C5C696E76656E73656E7365CA -:10B2E0005F6170692E63000038B50C461546010A8F -:10B2F0008DF8001000A9487048782018B0F5807FBC -:10B3000002DD4FF0FF3032BD00AB02226D2168201C -:10B3100005F048FE002802D04FF0FF3032BD2B462A -:10B3200022466F21682005F03DFE002802D04FF034 -:10B33000FF3032BD002032BD38B50C461546010A3B -:10B340008DF8001000A9487048782018B0F5807F6B -:10B3500002DD4FF0FF3032BD00AB02226D216820CC -:10B3600005F020FE002802D04FF0FF3032BD2B4602 -:10B3700022466F21682005F02DFE002802D04FF0F4 -:10B38000FF3032BD002032BD2DE9F04F93B00546AD -:10B390000E461446002E02D14FF0FF3065E0002724 -:10B3A000A8460AE0B9F1010F05DB4A4639460FF21B -:10B3B000407005F01EFE5744BFB2474544DA4FF0D7 -:10B3C000000907EB060BA8EB0700412802DB4FF052 -:10B3D000400A01E0A5EB070A5A46514689B23846B1 -:10B3E000FFF782FF002802D06FF001003DE002AAC3 -:10B3F000514689B23846FFF79FFF002802D06FF010 -:10B40000020032E01FFA8AFA524602A9584605F0B5 -:10B41000FDFD002804D009F10109642005F0EDFDCF -:10B42000A9F101000328CED3B9F1040FBADB9DF8CE -:10B4300008000090BB5D524639460FF2986005F057 -:10B44000D8FD6FF0030010E0200A8DF804008DF89D -:10B45000054001AB02227021682005F0A3FD002801 -:10B4600002D06FF0040000E0002013B0BDE8F08FC0 -:10B4700090F90010012901DB00207047002901D557 -:10B480000420704790F90110012901DB0120704769 -:10B49000002901D50520704790F90200012801DB41 -:10B4A00002207047002801D506207047072070470A -:10B4B00038B50446FFF7DCFF0546E01CFFF7D8FF70 -:10B4C00045EAC005A01DFFF7D3FF45EA801080B212 -:10B4D00032BD70B586B0044605A80FF22C610A682B -:10B4E000026004A80FF224610A68026003A80FF248 -:10B4F00020610A68026002A80FF218610A680260FF -:10B5000004F0030005A9425C8DF8042001ADC4F3EA -:10B51000C102525C6A70C4F38112515CA97004A923 -:10B52000405C8DF8000000AEC4F3C100405C707058 -:10B53000C4F38110405CB07001AA032140F22640A0 -:10B54000FFF7D2FE002802D04FF0FF304DE000AAF6 -:10B55000032140F22A40FFF7C7FE002802D04FF037 -:10B56000FF3042E0032203A901A8E6F780FD032291 -:10B5700002A900A8E6F77BFD60070BD59DF8040043 -:10B5800040F001008DF804009DF8000040F001003B -:10B590008DF80000A00607D5687840F001006870BB -:10B5A000707840F001007070E00507D5A87840F091 -:10B5B0000100A870B07840F00100B07001AA03212A -:10B5C00040F23F40FFF790FE002802D04FF0FF30DE -:10B5D0000BE000AA032140F23140FFF785FE00286E -:10B5E00002D04FF0FF3000E0002006B070BD10B573 -:10B5F000044600223821682005F0C2FC002824D12E -:10B6000000222321682005F0BBFC00281DD1002268 -:10B610006A21682005F0B4FC002816D1002C17D050 -:10B620000C226A21682005F0ABFC00280DD1C02255 -:10B630006A21682005F0A4FC002806D100222321FD -:10B64000682005F09DFC002802D04FF0FF3010BDAF -:10B65000002010BD10B582B004000CD0C0208DF8C1 -:10B660000000C2208DF80100C4208DF80200C62021 -:10B670008DF8030004E004228B2100A8E6F7FDFC0E -:10B6800000AA042140F6C410FFF72EFE2046401EFB -:10B690008041C043C00FFFF7AAFF16BD10B582B0AE -:10B6A00004000CD020208DF8000028208DF8010027 -:10B6B00030208DF8020038208DF8030004E00422C9 -:10B6C000A32100A8E6F7D9FC00AA042140F6CA107D -:10B6D000FFF70AFE2046401E8041C043C00FFFF71F -:10B6E00086FF16BD30B585B002A90FF22C4238CACC -:10B6F00038C1052802DA4FF0FF3021E0052190FB28 -:10B70000F1F0401E80B20146090A8DF800108DF854 -:10B71000010000AA022140F21620FFF7E5FD0028F3 -:10B7200002D04FF0FF300BE002AA0C2140F6ED10E2 -:10B73000FFF7DAFD002802D04FF0FF3000E00020D4 -:10B7400005B030BD80B5002801D0022200E0002203 -:10B750003821682005F014FC002802D04FF0FF309B -:10B7600002BD002002BD70B584B0044625466D1EA2 -:10B77000AD41ED43ED0F00208DF8000000AEB2208A -:10B780007070B820B070C220F07000AA0421682048 -:10B79000FFF7AAFDA3208DF80000600606D5C020A3 -:10B7A0007070C820B070C220F07003E0A3207070E9 -:10B7B000B070F070200606D5C4203071CC207071B6 -:10B7C000C620B07103E0A32030717071B071A32066 -:10B7D0008DF807008DF808008DF8090000AA0A21ED -:10B7E00040F6D310FFF780FD0320044203D0202051 -:10B7F0008DF8000002E0D8208DF8000000AA012199 -:10B8000040F6E210FFF770FDD8208DF8000000AA86 -:10B81000012140F60200FFF767FD600703D5012014 -:10B82000FFF718FF02E00020FFF714FFE00603D542 -:10B830000120FFF733FF02E00020FFF72FFF28462B -:10B84000FFF7D5FE002004B070BD2DE9F04188B0AF -:10B8500004460D46164600AB02227221682005F010 -:10B86000B9FB002802D04FF0FF30D7E09DF8000070 -:10B870009DF8011041EA002841460FF2A82005F08A -:10B88000B8FB0F9FB8F11C0F04D2002038704FF0A6 -:10B89000FF30C3E0B8F5007F19DD01AB02223A2189 -:10B8A000682005F097FB002803D00FF28C2005F0EC -:10B8B000A0FB9DF80400C00609D50120FFF797FE04 -:10B8C0000FF2902005F095FB6FF00100A6E001ABB0 -:10B8D0001C227421682005F07DFB002806D00FF2A1 -:10B8E000942005F086FB4FF0FF3097E01C2098FB7A -:10B8F000F0F0401E387001A89DF804104278120440 -:10B9000042EA0161827841EA0221C2781143316042 -:10B9100001794279120442EA0161827941EA022105 -:10B920009DF80B2011437160017A9DF80D201204DF -:10B9300042EA01619DF80E2041EA02219DF80F20A4 -:10B940001143B160017B9DF81120120442EA0161AC -:10B950009DF8122041EA02219DF813201143F16065 -:10B96000017C9DF8152042EA012129809DF81610DE -:10B970009DF8172042EA012169809DF818109DF872 -:10B98000192042EA0121A9809DF81A109DF81B2078 -:10B9900042EA01212180007E9DF81D1041EA00202D -:10B9A00060809DF81E009DF81F1041EA0020A080D5 -:10B9B000002030E000EB40013C4A8B1893F9061060 -:10B9C00093F9052093F90430B4F9006013FB06F6EF -:10B9D000B4F9027012FB0766B4F9047011FB076634 -:10B9E000B5F9007013FB07F3B5F9027012FB0732CB -:10B9F000B5F9043011FB0321B6F5004F01DB47F622 -:10BA0000FF76B1F5004F01DB47F6FF7124F81060B7 -:10BA100025F81010401C0328CCDB002008B0BDE83E -:10BA2000F08138B5040002D14FF0FF3032BD1F4D18 -:10BA30002878002801D0002032BD09222146281D87 -:10BA4000E6F715FB00AB02226B21682005F0C2FA75 -:10BA50009DF80000400604D500226B21682005F007 -:10BA60008FFAC8234FF480620FF24C1140F6613018 -:10BA7000FFF78AFC002818D12046FFF719FDFFF7D1 -:10BA800028FD002802D06FF0060032BD0020FFF72D -:10BA900059FE002802D06FF0070032BD0120287047 -:10BAA0000FF2EC0005F0A5FA002032BD7CAF0020BB -:10BAB00010B50C460021002800D0C4210846FFF72D -:10BAC00052FE002805D12046FFF70CFE002800D1C9 -:10BAD000002010BD0A444D505F455252282564296C -:10BAE000282564292825642928256429200A00009E -:10BAF0000A444D505F545249414C28256429282559 -:10BB00006429200A000000004CCD6C000CC92C00F8 -:10BB10003656760026466600FEF2ABC4AAF1DFDF99 -:10BB2000BBAFDFDF5B444D505D204649464F2825C3 -:10BB30006429200A000000000A5B444D505D204645 -:10BB400049464F20737461747573206572726F7209 -:10BB50000A0000000A5B444D505D202D20464946F6 -:10BB60004F206F766572666C6F77206572726F72A8 -:10BB70000A0000000A5B444D505D202D20464946D6 -:10BB80004F2072656164206572726F720A00000056 -:10BB90005B444D505D4669726D77617265206C6FD4 -:10BBA00061646564207375636365737366756C6C3B -:10BBB00079212121210A00000000700000000024EA -:10BBC000000000020003000000650054FFEF0000C9 -:10BBD000FA80000B12820001200030C30E8C8CE929 -:10BBE00014D5400213710F8E3883F8833000F88328 -:10BBF000258EF8833000F883FFFFFFFF0FFEA9D6E4 -:10BC0000240004001A8279A10000003CFFFF00001C -:10BC10000010000038836FA2003E03304000000097 -:10BC200000B2BAC23E800000200000000000000008 -:10BC30004000000060000000000C0000000C186EC6 -:10BC4000000006920A16C0DF00000000000000029B -:10BC5000000000040000000700000000FFFF0B2BA5 -:10BC600000001657000003590000000000001DFAF4 -:10BC700000026C1D000000004000000000000000F9 -:10BC8000000000000000000000000000001942B5A4 -:10BC9000000039A20000B365D90E9FC91DCF4C34F6 -:10BCA00030000000500000003BB67AE8006400005D -:10BCB00000C80000000000000000000000000000BC -:10BCC0000000000000000000000000000000000074 -:10BCD0000000000000000000000100000000000063 -:10BCE0000000000000000000000010720000004092 -:10BCF000000000000000000005DC00000000000063 -:10BD000000000000000000000000000000000258D9 -:10BD100000000000000000C800000000000000005B -:10BD20000001000000020000000000000000000010 -:10BD30000000000000000000000000000000000003 -:10BD400000000000000000000000000000000000F3 -:10BD500000000000000000000000000000000000E3 -:10BD6000000000000000100040000000000000067D -:10BD70000000B26A000000000000000000000000A7 -:10BD800000000000000000000000000000000000B3 -:10BD9000000000000000000000000025000000007E -:10BDA00016A000000000100000001000002F00008E -:10BDB000000001F40000100000280000FFFF458192 -:10BDC000FFFFFA72000000000000000000440005C0 -:10BDD0000005BAC6004778A200000001000000007C -:10BDE00000000600000000140000254D002F706DBB -:10BDF000000005AE000C02D00000000000000000B2 -:10BE00000000000000000000001B00000000000017 -:10BE100000000000000000000064000000080000B6 -:10BE20000000000000000000000000000000000012 -:10BE30000000000000000000000000000000000002 -:10BE400000000000000000000000000000000000F2 -:10BE500000000000000000000000000000000000E2 -:10BE600000000000000000000000000000000000D2 -:10BE70000000000000000000001B000000000000A7 -:10BE800000000000000E000E00000AC700040000C1 -:10BE900000000032FFFFFF9C00000B2B000000029F -:10BEA0000000000100000064FFE500000000000049 -:10BEB0000000000000000000000000010000000081 -:10BEC000000100000000000000018000000180006F -:10BED00000018000002426D30000000000000000C4 -:10BEE000000600100096003C00000000000000006A -:10BEF00000000000000000000C0A4E68CDCF77095A -:10BF000050166759C619CE820000000000000000DC -:10BF10000000000000000000000000000000000021 -:10BF200017D784000300000000000000000000009C -:10BF3000C7938F9D1E1B1C1900000000000000000D -:10BF400000000000000000000000000000000000F1 -:10BF500002031885000040000000000300000003F9 -:10BF60000000000000000000400000000000000091 -:10BF700000000000000000000000000000000000C1 -:10BF800000000000000000000000000000000000B1 -:10BF9000000000000000000000000000677DDF7E60 -:10BFA00072902E554CF6E68800000000000000005C -:10BFB0000000000000000000D8DCB4B8B0D8B9AB75 -:10BFC000F3F8FAB3B7BB8E9EAEF132F51BF1B4B8FD -:10BFD000B08097F1A9DFDFDFAADFDFDFF2AAC5CDEE -:10BFE000C7A90CC92C97F1A989264666B28999A9D7 -:10BFF0002D557DB08AA896365676F1BAA3B4B28094 -:10C00000C0B8A89711B28398BAA3F024084410646A -:10C0100018B2B9B49883F1A329557DBAB5B1A383F9 -:10C0200093F0002850F5B2B6AA839328547CF1B956 -:10C03000A3829361BAA2DADEDFDB819AB9AEF56042 -:10C040006870F1DABAA2DFD9BAA2FAB9A38292DB98 -:10C0500031BAA2D9BAA2F8DFB9A3A3A3A3A3B8A205 -:10C06000DFDFDFBAA0DFDFDFD8F1B9A1B280C0B077 -:10C0700089A0C3C5C7B181B497A011B590A1F02420 -:10C080000844106418F19081A02D553DF2A5D0F818 -:10C09000F9D1D9F8F180A2C3C5C7D8F3A2DEF182E5 -:10C0A00090A42D557D8494F5A120D9F3A2F8D8F55C -:10C0B000A140D9F3A2F8D8F5A160D9F3A2F8D8F23B -:10C0C000B9A2F8F9D1D9A6DEA5D0DEF41AD8F28645 -:10C0D00096A109D1DBF411D8F211D1DBF41CD8F20E -:10C0E00019D1DBF414D8F410D8F3A2F8F9D1DAF2AC -:10C0F000A6F8F1A5DED8F4A11616D8F1A5F8A18509 -:10C100009509D9F1A5DEF2A5D0DEA6F8D8F4A109EB -:10C11000D8F3A2F8F9D1F4D90819DA42F2A2DEF480 -:10C120000BD8F1A5F8A1859519DAF407D8F2A6DEA7 -:10C13000A5D0DED8F1B8AAB38DB4980D355DB2B6EE -:10C14000BAAF8C96198F9FA70E161EB49AB8AA87FD -:10C150002C547CBAA4B08AB691325676B28494A498 -:10C16000C808CDD8B8B4B0F19982A82D557D98A84B -:10C170000E161EA22C547C92A4F02C5078F184A8A8 -:10C1800098C4CDFCD80DDBA8FC2DF3D9BAA6F8DAFB -:10C19000BAA6DED8BAB2B68696A6D0F3C841DAA659 -:10C1A000C8F8D8B0B4B882A892F52C548898F13564 -:10C1B000D9F418D8F1A2D0F8F9A884D9C7DFF8F8D3 -:10C1C00083C5DADF69DF83C1D8F40114F1A8824E98 -:10C1D000A884F311D182F5D992289788F109F41C2B -:10C1E0001CD884A8F3C0F9D1D99782F129F40DD8CD -:10C1F000F3F9F9D1D982F4C203D8DEDF1AD8F1A25B -:10C20000FAF9A88498D9C7DFF8F8F883C7DADF69A4 -:10C21000DFF883C3D8F40114F198A8822EA884F320 -:10C2200011D182F5D992509788F109F41CD884A8CD -:10C23000F3C0F8F9D1D99782F149F40DD8F3F9F99F -:10C24000D1D982F4C403D8DEDFD8F1AD8898CCA868 -:10C2500009F9D98292A8F57CF1883ACF944A6E9870 -:10C26000DB6931DAADF2DEF9D88795A8F221D1DAAF -:10C27000A5F9F417D9F1AE8ED0C0C3AE82C684C37F -:10C28000A88595C8A588F2C0F1F4010EF18E9EA88C -:10C29000C63E56F554F18872F40115F19845856E45 -:10C2A000F58E9E0488F142985A8E9E068869F401A4 -:10C2B0001CF1981E1108D0F504F11E970202983661 -:10C2C00025DBF9D985A5F3C1DA85A5F3DFD88595F6 -:10C2D000A8F309DAA5FAD88292A8F578F1881A8429 -:10C2E0009F26889821DAF41DF3D8879F39D1AFD9DA -:10C2F000DFDFFBF9F40CF3D8FAD0F8DAF9F9D0DF84 -:10C30000D9F9D8F40BD8F3879F39D1AFD9DFDFF44F -:10C310001DF3D8FAFCA869F9F9AFD0DADEFAD9F83A -:10C320008F9FA8F1CCF398DB45D9AFDFD0F8D8F1D7 -:10C330008F9FA8CAF38809DAAF8FCBF8D8F2AD97F0 -:10C340008D0CD9A5DFF9BAA6F3FAF412F2D8950D3F -:10C35000D1D9BAA6F3FADAA5F2C1BAA6F3DFD8F1B9 -:10C36000BAB2B68696A6D0CAF349DAA6CBF8D8B048 -:10C37000B4B8D8AD84F2C0DFF18FCBC3A8B2B68613 -:10C3800096C8C1CBC3F3B0B48898A821DB718D9D4A -:10C3900071859521D9ADF2FAD88597A828D9F408E6 -:10C3A000D8F28D29DAF405D9F285A4C2F2D8A88D85 -:10C3B0009401D1D9F411F2D88721D8F40AD8F284A3 -:10C3C00098A8C801D1D9F411D8F3A4C8BBAFD0F252 -:10C3D000DEF8F8F8F8F8F8F8F8D8F1D8B8B4B0976B -:10C3E00086A8319B069907AB9728889BF00C2014F0 -:10C3F00040B0B4B8F0A88A9A285078B79BA82951C1 -:10C4000079247059446938644831F1BBAB88002CF9 -:10C41000547CF0B38BB8A804285078F1B088B49756 -:10C4200026A85998BBABB38B02264666B0B8F08AF3 -:10C430009CA82951798B2951798A2470598B2058CD -:10C44000718A4469388B3940688A6448318B304935 -:10C450006088F1AC002C547CF08CA804285078F152 -:10C46000889726A85998AC8C02264666F0899CA825 -:10C47000295179247059446938644831A9880920C0 -:10C480005970AB11384069A8193148608CA83C41FB -:10C490005C207C00F187981986A86E767EA9998821 -:10C4A0002D557DD8B1B5B9A3DFDFDFAED0DFAAD07F -:10C4B000DEF2ABF8F9D9B087C4AAF1DFDFBBAFDF9A -:10C4C000DFB9D8B1F1A38EC6DFB084F2C8F8F9D9CC -:10C4D000DED89385F14AB183A308B5839A0810B7D3 -:10C4E0009F10D8F1B0BAAEB08AC2B2B68E9EF1FB40 -:10C4F000D9F41DD8F9D90CF1D8F8F8AD61D9AEFB53 -:10C50000D8F40CF1D8F8F8AD19D9AEFBDFD8F41691 -:10C51000F1D8F8AD8D61D9F4F4ACF59C9C8DDF2B8E -:10C52000BAB6AEFAF8F40BD8F1AED0F8AD51DAAE37 -:10C53000FAF8F1D8B9B1B6A3839C08B9B1839AB51A -:10C54000AAC0FD3083B79F10B58B93F20202D1AB26 -:10C55000DADED8F1B080BAABC0C3B284C1C3D8F3BD -:10C56000B9ACDED8B1B9F38BA391B609B4D9B9ACE3 -:10C57000F8ABDEB0879CB9A3DDF1B38B8B8B8B8BD3 -:10C58000B087A3A3A3A3B080B490F2A3A3A3A3A353 -:10C59000A3A3A3A3A3F1B087B59AA3F39BA3A3DCA2 -:10C5A000BAACDFB9A3A3A3A3A3A3A3A3A3A3A3A3E9 -:10C5B000A3A3A3D8F3B9ACF8F9D1D9F41BD8F3FAF3 -:10C5C000F9D1D9F41BD8F2B1B5B98CACF8F9D1D9FD -:10C5D000C2D8F2F9D9DEF40913DAF2DDC6DCF4319F -:10C5E00011D8F2ABFA8B9BA349D9F40706DAF2B95A -:10C5F000ABDFFED8F1BBB3B7AAF9DAFFD9809AAAAC -:10C6000028B48098A720B79787A86688F07951F159 -:10C61000902C870CA781976293F0717160859401CB -:10C6200029517990A5F1284C6C870C95188578A331 -:10C630008390284C6C886CD8F3A28200F210A892E8 -:10C640001980A2F2D926D8F188A84DD948D896A841 -:10C650003980D93CD89580A839A68698D92CDA8714 -:10C66000A72CD8A8899519A980D938D8A88939A91B -:10C6700080DA3CD8A82EA83990D90CD8A895319842 -:10C68000D90CD8A809D9FFD801DAFFD89539A9DA89 -:10C6900026FFD890A80D8999A810809821DA2ED865 -:10C6A0008999A83180DA2ED8A886963180DA2ED8DA -:10C6B000A8873180DA2ED8A88292F34180F1D92E52 -:10C6C000D8A882F31980F1D92ED882ACF3C0A28009 -:10C6D00022F1A62EA72EA92298A829DAACDEFFD82F -:10C6E000A2F22AF1A92E8292A8F23180A696F1D95F -:10C6F00000F1F1F1AC8C9C0C30ACDED0DEFFD88CBC -:10C700009CACD010ACDE8092A2F24C82A8F1CAF2AE -:10C7100035F19688A6D900D8FF000000014804F042 -:10C72000A6BC0000E8FD002010B5DFF860484822F4 -:10C73000014604F54570E5F79AFCD4F850036063B0 -:10C7400004F554704168C4F884108068C4F8D400BB -:10C75000032802D1012004F082FD002010BD80B525 -:10C760004822DFF83818E5F782FC002002BD80B5CA -:10C770000C220146DFF82808E5F779FC002002BD0D -:10C7800080B50C22DFF81818E5F771FC002002BD17 -:10C7900010B5DFF810484FF4A672002104F50870B8 -:10C7A000E5F76BFC4FF4087200212046E5F765FCC5 -:10C7B00000F0C7FB4DF294034822DFF8EC17DFF8D6 -:10C7C000EC0704F0A8FD04464CF251330C22DFF8CC -:10C7D000E017DFF8E00704F09EFD204310BD0023C2 -:10C7E000002A01D14FF48032426201F00302032A91 -:10C7F00000D1012301F01802182A00D1012301F011 -:10C80000C002C02A00D10123002B00D08821016082 -:10C8100070470A460146DFF88C07E0E7DFF86C173F -:10C8200088624FF47A7290FBF2F2CA628A6C002A34 -:10C8300004D1DFF8842792FBF0F088647047DFF8BA -:10C840004C17886778314FF47A7290FBF2F24A60A5 -:10C850000A6A002A04D1DFF8602792FBF0F0086230 -:10C860007047DFF82817C1F8C800C8314FF47A7252 -:10C8700090FBF2F24A600A6A002A04D1DFF83827F6 -:10C8800092FBF0F008627047DFF81817C1F86001FA -:10C890004FF47A7290FBF2F0C1F864017047DFF850 -:10C8A0000407D0F8D000001200F001007047DFF854 -:10C8B000F406006B001200F001007047DFF8E40698 -:10C8C000D0F88000001200F00100704730B4002062 -:10C8D0000146DFF8D02602F130031C6DE40501D5D6 -:10C8E000D3E91601146BE40508D5D3E90245A94242 -:10C8F00004DC01DBA04201D22046294602F1D0032C -:10C90000D2F8D040E40508D5D3E90245A94204DCB9 -:10C9100001DBA04201D2204629461C6DE40508D562 -:10C92000D3E91645A94204DC01DBA04201D220462E -:10C930002946D2F85031DB050AD502F5A874D4E9AE -:10C940000223994204DC01DB904201D210461946D1 -:10C9500030BC70470A460146DFF860063FE70A46EA -:10C960000146DFF85C063AE770B584B004460D4630 -:10C97000B4F90400C003009000AEB4F90600C0038F -:10C980007060B4F90800C003B06004F10C0300AAA1 -:10C99000606A4100206880B204F05AF90098296862 -:10C9A000A0EB6100009070686968A0EB61007060A6 -:10C9B000B068A968A0EB6100B06004F1180300AA98 -:10C9C000606A4100206880B204F042F9206B40F0B8 -:10C9D000200020637FBDDFF8CC15C1F88400C1F8CA -:10C9E0005403704738B50C46002818D0DFF8B4352A -:10C9F000D10702D50168C3F83413910703D503F5B5 -:10CA00004D7145684D60510703D503F54D71806840 -:10CA1000886003F54D7103F15000FFF7A5FF204634 -:10CA2000FFF7D9FF002210210846BDE8384004F086 -:10CA3000A7BCF8B504460D46DFF86865002C12D097 -:10CA400006F557770C222146384604F0DFFA002815 -:10CA500009D00C2221463846E5F709FB06F5577147 -:10CA60003046FFF781FF756306F54B746562D6F8B3 -:10CA70000801002802D0C6F82C0303E04FF4D810B8 -:10CA8000C6F82C0300220421084604F079FC01209A -:10CA90006060F1BDDFF80C15D1F83003012801D139 -:10CAA000012000E000200022C1F83023704710B5BB -:10CAB0000C46002804D00C22DFF8E414E5F7D7FA7E -:10CAC000002C04D0DFF8DC04D0F82C03206010BD6B -:10CAD000F8B514461D46DFF8CC6406F15407026829 -:10CAE0008B0610D4A6F85420416879808068B880FD -:10CAF000F86A40F08000F86206F54D7106F15000CA -:10CB0000FFF732FF0DE07A614268BA618068F86130 -:10CB1000F86A40F02000F86201F003003863C6F8BC -:10CB20005403F86A40F4A070F862D6E92201C6E91D -:10CB30002401C6E922450020F2BD70B514461D4609 -:10CB4000DFF8606406220146301DE5F790FA306B8D -:10CB500040F4E0703063D6E90E01C6E91001C6E981 -:10CB60000E4506F557713046FFF7FEFE002070BDFA -:10CB7000FEB514461D46DFF82C6406F1A4078A06AC -:10CB800017D400F0B8F900A800F0A8F90098A6F8AA -:10CB9000A40000A8416879808068B88006F54571D6 -:10CBA00006F1A000FFF7E0FEF86A40F08000F862AE -:10CBB0000EE002687A614268BA618068F861F86ADA -:10CBC00040F02000F86201F003003863C6F8580313 -:10CBD000D6E93601C6E93801C6E93645F86A40F4B7 -:10CBE000A070F8620020FEBD2DE9F04385B0064636 -:10CBF0000F4614461D46DFF8AC8308F5A079F8040B -:10CC000009D500A9304604F09AF9102200A9484637 -:10CC1000E5F72DFA04E0102231464846E5F727FAF9 -:10CC2000C8E95645D8F8500107F4385141F4E0718D -:10CC30000843C8F85001D8F8500110F4406F04D0F0 -:10CC400022462B46304604F013FAD8F8500100056E -:10CC50000AD500A80FF270311022E8F739F8224601 -:10CC60002B4600A804F018FA002005B0BDE8F083B8 -:10CC7000DFF830030021C0F880107047DFF824038C -:10CC80000021C0F8D0107047DFF818030021C0F869 -:10CC900050117047DFF80C030021016370472DE944 -:10CCA000F04300231C4600E0641CDFF8F852D5F87E -:10CCB0002062B4420DDA0C2707FB0455D5F8246234 -:10CCC0000746BE4203D0D5F828528D42ECD116203B -:10CCD00032E0142E2EDA1C46002E01D11BE0641C1B -:10CCE000B44207DA04EB440705EB8707D7F828724C -:10CCF0008F42F4DBB4420ED00BE00C2707FB065743 -:10CD000007F5097C07F50677B7E80043ACE8004370 -:10CD1000761EB442F1DB0C2707FB0454C4F824024E -:10CD200004F5097041608260D5F82002401CC5F806 -:10CD3000200200E00C231846BDE8F083F8B500257A -:10CD4000DFF8604294F83000400600D5022594F8E0 -:10CD50008000400601D545F0010594F8D00040065A -:10CD600001D545F0040594F82001400601D545F0B1 -:10CD7000080594F85001C00601D545F0100594F857 -:10CD80009801400601D545F020050026374611E000 -:10CD900007EB470004EB8001D1F82C02054208D0D4 -:10CDA0002046D1F824128847002802D0002E00D156 -:10CDB00006467F1CD4F820028742E9DB00F002F827 -:10CDC0003046F2BD10B47748016B4A0602D541F0F7 -:10CDD0001001016300F130010A6D530602D542F0E3 -:10CDE00010020A65D0F8D020530603D542F0100295 -:10CDF000C0F8D02000F1D002136D5C0602D543F0DC -:10CE000010031365D0F850315C0603D543F01003CE -:10CE1000C0F85031036B23F0400303630B6D23F024 -:10CE200040030B65D0F8D01021F04001C0F8D010BD -:10CE3000116D21F040011165D0F8501121F0400131 -:10CE4000C0F8501100F5A870816C21F04001816498 -:10CE500010BC704738B50C461546002803D00C228C -:10CE60005849E5F704F9002D04D04E48D0E92223B3 -:10CE7000C5E90023002C03D04A48D0F88400207074 -:10CE800031BD70B50C461546464E0C2206F1B80170 -:10CE9000E5F7EDF8002D03D0D6E93601C5E900012C -:10CEA000002C09D0D6F86803002802D0002020709A -:10CEB00070BDD6F8D400207070BD3A48406B704702 -:10CEC0003848D0F86813002901D000207047D0F806 -:10CED000D40070473348D0F884007047002107E041 -:10CEE000304A02EB8102D2F8C42140F82120491CCB -:10CEF0000329F5DB704718B4002106E003EB81023B -:10CF000050F82130C2F8B831491C264B0329F5DB13 -:10CF1000D3F81812012907D103F5E272014603F58F -:10CF2000E87018BC03F016BF002106E003EB810295 -:10CF300050F82140C2F8C441491C0329F6DB11BC5A -:10CF4000704710B500200246104C04E004EB80014D -:10CF5000C1F8F421401C0928F8DB2422002104F543 -:10CF6000E870E5F78AF800200AE004EB00114FF0C2 -:10CF70007E52C1F8F4214FF08042C1F8D021401C0C -:10CF80000328F2DBBDE8104002E0000070DC002066 -:10CF900004480021C0F818127047000084DF002008 -:10CFA000CCDF002070DC00205FC7020829C7020820 -:10CFB00081C702086FC7020840420F00C0DC002092 -:10CFC00010DD0020D8DC0020000000400000000040 -:10CFD0000000000000000000704780B504F090F9E8 -:10CFE00004F0E2F900280CD004F0DEF923230FF25C -:10CFF0008C020FF29801FFF7EFFFBDE8014004F04B -:10D00000D3B9FFF7C5FB00280CD0FFF7C1FB2623DF -:10D010000FF268020FF27401FFF7DEFFBDE8014076 -:10D02000FFF7B6BB04F00CF900280CD004F008F9A7 -:10D0300028230FF248020FF25401FFF7CDFFBDE89D -:10D04000014004F0FDB8012004F0A3F9002002BD66 -:10D0500080B504F0BFF900280CD004F0BBF94723D9 -:10D060000FF280020FF22401FFF7B6FFBDE8014086 -:10D0700004F0B0B9002002BD00000000696E765FC8 -:10D08000696E69745F6D706C00000000433A5C5417 -:10D09000656D705C4955535C494B445C5461652D2A -:10D0A000536F6F5C656D6265646465645F7265662D -:10D0B0006572656E63655F666F725F4E6F74655F04 -:10D0C000335C656D6265646465645C496E76656E4B -:10D0D00053656E73655C6D6C6C6974655C6D706CCA -:10D0E0002E630000696E765F73746172745F6D7099 -:10D0F0006C0000007047000000B510EE100AE4F765 -:10D10000CDFB0022DFF81C3CE4F700FCF2F73CFE0C -:10D11000DFF8D42BC2E9140100BDDFF8CC2BD2E933 -:10D1200012017047DFF8C01BD0E90E23C1E91223BA -:10D130007047C1070CD5DFF8F01B4FF040420A677B -:10D1400070314A608A604FF08042CA600A614A6169 -:10D1500081070ED5DFF8D01B4FF04042C1F81821EF -:10D1600001F58C714A608A604FF08042CA600A61A2 -:10D170004A6140070ED5DFF8B01B4FF04042C1F8BE -:10D18000C02101F5E070426082604FF08042C260D1 -:10D1900002614261704700000021401000D0491C2C -:10D1A0000128FADA481C70472DE9F14F88B00020B9 -:10D1B0000146CDE904010898806F002801D1084696 -:10D1C000BEE0FFF7E9FF81464FF000088BE000EB7F -:10D1D000C802D2E900014A46ECF7E0F904460D46E0 -:10D1E000089800EBC80002900246D2E906014A46C0 -:10D1F000ECF7D4F906460F46A4FB042304FB0533E1 -:10D2000005FB0433A4FB020104FB031105FB02111F -:10D21000CDE90601029AD2E912014A46ECF7BEF9BD -:10D22000CDE90001A6FB062306FB073307FB063307 -:10D230000320A0FB02AB00FB03BBDDE90001B0EB68 -:10D240000A0061EB0B01DDE90623A4FB02AB04FB42 -:10D2500003BB05FB02BB4FEA4B0B4BEADA7B10EB3F -:10D260004A0A41EB0B0BA4FB040104FB051105FB6F -:10D270000411301A67EB0101A4FB002304FB013306 -:10D2800005FB00330320A0FB026700FB0377DDE909 -:10D29000060136184F41029AD2E90C014A46ECF7D2 -:10D2A0007DF9321A67EB0103A4FB020104FB0311B1 -:10D2B00005FB0211890041EA9071BAEB80006BEB2B -:10D2C0000101002904DC00DB02D2404261EB410194 -:10D2D000DDE904238B4204DC01DB824201D2CDE98B -:10D2E000040108F10108B8F1030F0898FFF66FAFC9 -:10D2F000806F0899C96F884210D000EE100AB8EE0E -:10D30000C00A04F07DF8F7EE000A80EE800A089863 -:10D3100080ED200A08980146896FC167DDE90401A4 -:10D3200004F07CF800EE100A0898D0ED200A20EEF8 -:10D33000200A10EE100A09B0BDE8F04F04F0A0B8C2 -:10D3400009B0BDE8F08F2DE9F04F85B0814600208F -:10D350000146CDE90201D9F87800002801D108463C -:10D3600079E0FFF719FF00904FF0000849E009EB62 -:10D37000C802D2E90001009AECF710F904460D4604 -:10D38000A4FB046704FB057705FB047709EBC800E1 -:10D3900001900246D2E90601009AECF7FFF8801BE3 -:10D3A000B941A4FB002304FB013305FB0033032038 -:10D3B000A0FB02AB00FB03BBA4FB060104FB0711AF -:10D3C00005FB06111AEB00044BEB0105019AD2E9AB -:10D3D0000C01009AECF7E2F8201A65EB0101002934 -:10D3E00004DC00DB02D2404261EB4101DDE90223B3 -:10D3F0008B4204DC01DB824201D2CDE9020108F15B -:10D400000108B8F1030FB2DBD9F87800D9F87C1025 -:10D4100088420FD000EE100AB8EEC00A03F0F0FF09 -:10D42000F7EE000A80EE800A89ED200AD9F878002C -:10D43000C9F87C00DDE9020103F0F0FF00EE100AFC -:10D44000D9ED200A20EE200A10EE100A05B0BDE842 -:10D45000F04F04F015B805B0BDE8F08F10B401210D -:10D46000026BD20513D5DFF8C028D2F888301468D3 -:10D47000A3420CDBD0F88000C00505D5D2F8D80156 -:10D480005168884203DB0521084610BC7047002024 -:10D49000FBE72DE9F04184B00446002600ADDFF83B -:10D4A000887812E007EBC602D2E9040107F508729A -:10D4B000926A04F021F807EB8602D2F89420120455 -:10D4C000D317801845F82600761C032EEADBA82225 -:10D4D000002107F11000E4F7D0FD0120FFF729FE3D -:10D4E0006868002801D4014600E04142009A002A01 -:10D4F00000D55242914201DA104602E0002800D5E0 -:10D500004042A968002901D40A4600E04A4282420A -:10D5100004DB002901D4084600E04842616A03F0B8 -:10D520001CF9B0F5481F03DB052087F820024BE00B -:10D53000DFF8B467F16A6A68501A01D4034600E064 -:10D540008B1AD6F828C0DDF800E0BEEB0C0E01D433 -:10D55000F04603E0DDF80080ACEB0808434508DA4C -:10D56000BEF1000F01D4704606E00098ACEB00005D -:10D5700002E0002800D5881A316BAA68531A01D43A -:10D580009C4601E0A1EB020C844504DB002B01D496 -:10D59000184600E0881A616A03F0DFF8804602202E -:10D5A00003F096FD07F50870C06A804506DA03218E -:10D5B00000A8FFF73EFA2046FFF7B4FD0098B062DE -:10D5C0006868F062A8683063BDE8FF812DE9FE411C -:10D5D00086460E4600271CE0D317A2FB004502FB3F -:10D5E000015503FB0055204629460CEB4C0306EB86 -:10D5F000C30303EBC708D8E9004524184D4103EBEA -:10D60000C703C3E900450CF1010CBCF1040FE3DBD7 -:10D610007F1CB06F032F1BDA06EB870101F160035B -:10D62000002802D13EF9170058623EF917005A6AE5 -:10D63000821A00A840F82720086E904200DA0A6695 -:10D64000D868824200DADA60012000218C46DCE7EB -:10D65000401CB0670120C6F8A000BDE8F7812DE9A5 -:10D66000F04104460025069E05E006EB850054F8CF -:10D670002510C1666D1C032DF7DB06F17807C7E99D -:10D680000623B06F002814D0002510E006EB8508B3 -:10D6900054F82500D8F88410401AF2F771FBD8F836 -:10D6A0006010814200DA0146C8F860106D1C032D3D -:10D6B000ECDBB06F401CB0670120B862BDE8F081C0 -:10D6C00010B4002108E000EB810202F16003DC6885 -:10D6D0005C6200231366491C0329F4DB00F1780126 -:10D6E000D1E90623C1E90823002282671046886237 -:10D6F00010BC704730B4D0E92423D0E92645101B74 -:10D7000063EB050130BC7047016E426E8A4200DA5D -:10D710000A46816E914200DA114608467047016E52 -:10D72000C26E891A426E036FD21A8A4200DB11461A -:10D73000826E406F101A884200DB0146084670472F -:10D7400010B5DFF8E4451022002104F51670E4F767 -:10D7500094FC1022002104F51E70E4F78EFC1022C8 -:10D76000002104F51A70E4F788FC1022002104F56A -:10D770002270BDE81040E4F780BC10B5DFF8A84582 -:10D78000A822002104F11000E4F777FCA822002170 -:10D7900004F5B070E4F771FC0520BDE81040C8E462 -:10D7A000D0B4DFF8842502F51E739C68002C02D1EA -:10D7B000C2E99E0108E0D2E99E678F4204DC01DBEA -:10D7C000864201D2C2E99E01601C9860D0BC7047BD -:10D7D000D0B4DFF8542502F522739C68002C02D1E6 -:10D7E000C2E9A20108E0D2E9A2678F4204DC01DBB2 -:10D7F000864201D2C2E9A201601C9860D0BC704789 -:10D80000D0B4DFF8242502F516739C68002C02D1F1 -:10D81000C2E9960108E0D2E99667B94204DC01DB6F -:10D82000B04201D2C2E99601601C9860D0BC70473A -:10D83000D0B4DFF8F42402F51A739C68002C02D1EE -:10D84000C2E99A0108E0D2E99A67B94204DC01DB37 -:10D85000B04201D2C2E99A01601C9860D0BC704706 -:10D86000F8B507460124DFF8C05405F11000FFF7B2 -:10D8700056FFDFF87464316C814203DAFFF77DFFF5 -:10D880000020F2BD3846FFF7E9FD070001D1022074 -:10D89000F2BD78071ED505F5B070FFF785FC000DC9 -:10D8A00040EA01300915C5E98401D5E98401D6E9CA -:10D8B00004238B4205DC01DB824202D20024FFF705 -:10D8C000B7FFA822002105F5B070E4F7D6FB0420CD -:10D8D000FFF72FFCF80711D505F11000FFF764FCE6 -:10D8E00005F50472C2E90601D6E906238B4205DC80 -:10D8F00001DB824202D20024FFF782FF2046F2BD04 -:10D900001FB5044694F8300000F0C000C02804D1D0 -:10D91000DFF81C14201DFFF759FE94F8800000F07A -:10D92000C000C02805D1DFF80C1404F15400FFF743 -:10D930004DFED4F8D00000F0C001C0290BD100206A -:10D9400001AA032818DA04EB4001B1F9A41042F847 -:10D950002010401CF5E700F06000602814D1002082 -:10D9600001AA07E004EB8001D1F8B810891342F84E -:10D970002010401C0328F5DBDFF8BC030090D4E93D -:10D98000362301A8FFF76BFE1FBD0000F8B5044663 -:10D99000002004F12C077968CA0540F1278101F0C5 -:10D9A0005001402900D1012097F8541001F0500196 -:10D9B000402900D1012094F8D01001F050014029F5 -:10D9C00000D10120DFF86053002809D0FFF7D5FE11 -:10D9D0000020C5F8180285F820022046FFF7A2FBB8 -:10D9E000E06AD5F8401281421ED0C5F84002BE4E12 -:10D9F000716B0A2806DA48002860B06B401CC5F835 -:10DA0000440203E02960B06BC5F84402D5F8440233 -:10DA1000C0F11000C5F848024FF48040C5F84C0230 -:10DA20001920B16B88403064386DD5F850128142AE -:10DA300010D0C5F85002AC4E716B0A2806DA4800C7 -:10DA40006860B06B401CC5F8540203E06960B06BBD -:10DA5000C5F854022046FFF753FF95F82002062828 -:10DA600000F2C480DFE800F004122C3574A4B10089 -:10DA7000D5F81802411CC5F818120A28C0F2B68061 -:10DA8000FFF77BFE012085F82002AFE0D5F8B0005B -:10DA9000012840F0AB802046FFF7E2FE002803D1CA -:10DAA000052085F8200204E0012802D1022085F833 -:10DAB000200205F1B800FFF703FEFFF741FE95E0F5 -:10DAC000032085F820022046FFF7E3FCFFF755FE10 -:10DAD0008CE02046FFF7C4FE002857D0012840F014 -:10DAE0008580D4F8D000C00523D503F02DFD002893 -:10DAF0001FD105F1B8073846FFF706FEC117C5E983 -:10DB00008201794ED6E90201D5E98223994206DCE9 -:10DB100001DB904203D2052085F820020FE0384651 -:10DB2000FFF7E8FDD6E90823994208DB01DC9042C3 -:10DB300005D3042085F820022046FFF7AAFCD5E98A -:10DB40008401FFF745FED5E98A01FFF729FE4DE084 -:10DB5000D4F8D000C00514D503F0F6FC002810D18D -:10DB600005F1B800FFF7D0FDC117C5E982015E4895 -:10DB7000D0E90223D5E982018B4207DB01DC824236 -:10DB800004D32046FFF76CFE002803D1052085F85A -:10DB900020022BE0012829D12046FFF77AFCD5E9A5 -:10DBA0008401FFF715FED5E98A01FFF7F9FD1DE0B5 -:10DBB000062085F82002012003F08AFAFFF7DDFD38 -:10DBC00005F1B800FFF77CFD10E02046FFF748FEA6 -:10DBD000012803D1022085F8200207E0002805D1A2 -:10DBE000FFF7CBFD05F1B800FFF76AFD0020F2BD9D -:10DBF0000021401000D0491C0128FADA3A480122DD -:10DC00004B1C9A404263491C8163192202FA01F1BC -:10DC10000164704738B5444C4FF426720021204609 -:10DC2000E4F72BFA304D582200212846E4F725FA74 -:10DC30000720FFF77EFA40F2DC500021C5E906011B -:10DC40001420C5E902016420C5E904013B48C5E987 -:10DC500008010120C4F81C021920FFF7C9FF0020A9 -:10DC6000C4F840029FED310AFFF746FA002032BDAA -:10DC700010B52D4C4FF4267200212046E4F7FDF933 -:10DC80000720FFF756FA0120C4F81C0284F820028E -:10DC90000022032103F074FB072264212848BDE819 -:10DCA0001040FEF7FCBF10B5FFF7B4FF040009D029 -:10DCB0004FF447730FF294020FF2A801FFF71AFA1C -:10DCC000204610BD1F4803F077FB040009D040F246 -:10DCD0001F330FF278020FF28C01FFF70BFA204688 -:10DCE00010BD002010BD000090FA002070B5002685 -:10DCF000016BC90513D5D0E90E45FFF70EFA201ABE -:10DD000065EB010100290ADB00DC08D30E4AD2E9E9 -:10DD10001445A94203DC01DBA04200D201263046B3 -:10DD200070BD000065CDCD4178E300200000964332 -:10DD300088E30020D8E4002030E400200008AF2F62 -:10DD40008DD9020871DC020890FA0020696E765FB6 -:10DD5000656E61626C655F666173745F6E6F6D6F37 -:10DD600074000000433A5C54656D705C4955535C27 -:10DD7000494B445C5461652D536F6F5C656D626502 -:10DD8000646465645F7265666572656E63655F662F -:10DD90006F725F4E6F74655F335C656D626564645E -:10DDA00065645C496E76656E53656E73655C6D7017 -:10DDB0006C5C666173745F6E6F5F6D6F74696F6EBC -:10DDC0002E63000070B52DED028B98B005460E460F -:10DDD00008EE102A1C4695ED020AF8EEC00A95EDF1 -:10DDE000010AB8EEC01A95ED000AB8EEC00A20EE9E -:10DDF000000A01EE010A00EEA00A03F001FBF0EEBA -:10DE0000408A18EE900AE3F749FD21F00041012213 -:10DE1000DFF88439E4F7FCF800F2B9809FEDD60A08 -:10DE2000D6ED000AF8EEE00A60EE800ACDED040AB5 -:10DE300004A8D6ED010AF8EEE00A60EE800AC0ED13 -:10DE4000010AD6ED020AF8EEE00A60EE800AC0EDA3 -:10DE5000020AD6ED030AF8EEE00A20EE800A80ED11 -:10DE6000030A0020089008A895ED000AB8EEC00A41 -:10DE700080EE280A80ED010A95ED010AB8EEC00A8D -:10DE800080EE280A80ED020A95ED020AB8EEC00A7B -:10DE900080EE280A80ED030A14AA08A904A802F05B -:10DEA00006FD10A904A802F020FE00AA10A914A8DB -:10DEB00002F0FDFC00AD95ED010AD5ED020A20EE61 -:10DEC000A01A00EE001ADFEDAD1AB4EE611AF1EE01 -:10DED00010FA02D59FEDAA1A15E0DFEDAA1AB4EEEA -:10DEE000611AF1EE10FA02D59FEDA71A0BE0DFEDF3 -:10DEF000A71AB4EE611AF1EE10FA02D5B5EE001AC7 -:10DF000001E09FEDA31AF8EEC81A9FEDA22AC1EE18 -:10DF1000821A21EE811A00200C900CA860EE810A72 -:10DF2000C0ED010A20EE410A80ED020A0021C16025 -:10DF300000AA04A902F0BBFC00AA04A900A802F0F0 -:10DF40001FFD00A802F097FD9FEDD90ADDED000A44 -:10DF500060EE800AFDEEE00AC4ED000AD5ED010A8C -:10DF600060EE800AFDEEE00AC4ED010AD5ED020A7A -:10DF700060EE800AFDEEE00AC4ED020AD5ED030A68 -:10DF800020EE800ABDEEC00A84ED030A04E01022F0 -:10DF900031462046E4F76BF818B0BDEC028B70BD3B -:10DFA00038B52DED048B04460D4694ED020AF8EECB -:10DFB000C00A94ED010AB8EEC01A94ED000AB8EE5A -:10DFC000C00A20EE000A01EE010A00EEA00A03F0EA -:10DFD00017FA9FEDB88AB4EE480AF1EE10FA3CD475 -:10DFE000D4ED020AF8EEE00A80EE809AB7EE000A5D -:10DFF00030EE490AB5EE400AF1EE10FA01DC9FED71 -:10E00000AE0AF6EE009A20EE290A03F0F9F9F0EED6 -:10E01000408AB7EE000A39EE000AB5EE400AF1EE8A -:10E0200010FA01DC9FEDA40A20EE290A03F0E8F9BA -:10E03000B0EE409A94ED010AF8EEC00A94ED000AA1 -:10E04000B8EEC00A20EE000A00EEA00A03F0D8F9EC -:10E05000B4EE480AF1EE10FA07D54FF08040286080 -:10E0600000206860A860E86027E0DFED910A29EEF3 -:10E07000201ABDEEC11A85ED001A94ED011AB8EE12 -:10E08000C11A81EE001A21EE281A61EE200AFDEE77 -:10E09000E00AC5ED010AD4ED000AF8EEE00A80EED0 -:10E0A000800A20EE280ADFED850A20EE200ABDEE68 -:10E0B000C00A85ED020A0020E860BDEC048B31BD8A -:10E0C00038B504460D4694ED030AF8EEC00A94ED07 -:10E0D000020AB8EEC01A94ED010AF8EEC01A94EDE7 -:10E0E000000AB8EEC00A20EE000A01EEA10A01EE15 -:10E0F000010A00EEA00AB5EE400AF1EE10FA07D8C8 -:10E100004FF08040286000206860A860E86031BD62 -:10E1100003F076F9F7EE000A80EE800ADFED640A7C -:10E1200020EE200AD4ED000AF8EEE00A60EE800A44 -:10E13000FDEEE00AC5ED000AD4ED010AF8EEE00AB2 -:10E1400060EE800AFDEEE00AC5ED010AD4ED020A98 -:10E15000F8EEE00A60EE800AFDEEE00AC5ED020A84 -:10E16000D4ED030AF8EEE00A20EE800ABDEEC00A04 -:10E1700085ED030A31BD00000000803017B751392A -:10E18000A69BC43B0AD7233C8FC2753DCDCC4C3EE9 -:10E19000CDCCCC3E0014CD4770B588B0054695F87F -:10E1A0003000400640F18180A869002800D5404237 -:10E1B000B0F5803F0DDAE969002900D54942B1F593 -:10E1C000803F06DA296A002900D54942B1F5803F2F -:10E1D00067DBDFF8C815DFF8C84588420BDAE86965 -:10E1E000002800D54042884205DA286A002800D578 -:10E1F0004042884202DB0320A06301E00220A063CA -:10E20000A86A616B81421ED0606395ED0A0AB8EE80 -:10E21000C00ADFEDA00A80EE200ADFED9F0A20EEA3 -:10E22000200A10EE100AE3F739FBDFF87825DFF853 -:10E230007835E3F76BFB0022DFF87035E3F7C4FDB8 -:10E24000E3F742FC20630020049004AE216BA86930 -:10E2500002F083FA7060216BE86902F07EFAB06028 -:10E26000216B286A02F079FAF06000AA04A920461E -:10E2700002F079FA00988001009000A841688901B5 -:10E280004160816889018160C1688901C16022465D -:10E2900000A9204602F0CAFA21462046FFF710FFE7 -:10E2A00003E0DFF8FC040021816308B070BD0000CA -:10E2B0000000804E0100803F00000000000080CE82 -:10E2C00070B52DED048B8EB0044694F850014006D5 -:10E2D00040F1DC80DFF8C854D4F840012968401AC6 -:10E2E00000D54042D4F86411DFF8C4245143814280 -:10E2F00002DA0320A86301E00220A863D4F85001E9 -:10E30000810505D5294604F5A070FFF7D9FEBDE0CB -:10E31000800407D54FF08040A8640020E864286599 -:10E32000686597E0002103A8FEF7C1FB0C2205F108 -:10E330003C0103A802F06AFE002805D1D4F8600170 -:10E34000A96D884200F0868000AB03AA616A20684C -:10E3500080B202F07DFC00AE96ED020AF8EEC00A33 -:10E3600096ED010AB8EEC01A9DED000AB8EEC00A9B -:10E3700020EE000A01EE010A00EEA00A03F040F8C8 -:10E38000B0EE408A9FED450A28EE000ADFED440A10 -:10E3900080EE200AD4ED580AF8EEE00A20EE200ABA -:10E3A000DFEDD10AC0EE208AB0EE680A03F0D4F89F -:10E3B000B0EE409AB0EE680A03F0D1F8F0EE000A31 -:10E3C000B4EE608AF1EE10FA07D54FF08040A864F1 -:10E3D0000020E8642865686533E0DFEDC40A29EEB3 -:10E3E000201ABDEEC11A85ED121A20EE200ADDEDCD -:10E3F000000AF8EEE00A60EE200AC0EE880AF1EEAC -:10E40000600AFDEEE00AC5ED130AD6ED010AF8EE4A -:10E41000E00A60EE200AC0EE880AF1EE600AFDEE26 -:10E42000E00AC5ED140AD6ED020AF8EEE00A20EE85 -:10E43000200A80EE080AB1EE400ABDEEC00A85ED62 -:10E44000150A0C2203A905F13C00E3F710FED4F8ED -:10E450006001A86504F5A07406AA05F148012046EC -:10E4600002F081F90AAA06A905F15C0002F07BF925 -:10E4700005F15C01204602F0ECF906AA0AA928463B -:10E4800002F071F9294606A8FFF71AFE0EB0BDEC9E -:10E49000048B70BD002474490000004EDB0F49401E -:10E4A0000000344B2DE9F04F93B00746012407F1EB -:10E4B0003005286DBA4E00F05001402904D0F16EAD -:10E4C000002912D0400610D506F1100107F16800AE -:10E4D000FFF766FDD7F85001C00519D506F15C01BC -:10E4E00007F5A07002F0B5F912E0D7F8500100F07E -:10E4F0005002402A03D0002915D0400613D506F15A -:10E500005C0107F5A07002F0A4F9286DC0050AD5DA -:10E5100000A9304602F09DF906F1200200A906F19B -:10E52000100002F020F9D7F85001C005384602D596 -:10E53000FFF7C6FE01E0FFF72FFE06F1100231469D -:10E5400006F1200002F00FF995F85000400640F166 -:10E55000C780386BD7F850110843C00540F1AC8034 -:10E5600004AA07F1680106F1100002F081F9D5F85C -:10E5700040A04FEAEA7BE86BC117AA6BD317A2FB56 -:10E58000028902FB039903FB0299A0FB002300FB15 -:10E59000013301FB003318EB020049EB0301AAFB36 -:10E5A0000A230AFB0B330BFB0A338018594102295B -:10E5B0002FDB02DCB0F1804F2BD307A802F053FE13 -:10E5C00007A8D0F808A04FEAEA7B4068C117079A6D -:10E5D000D317A2FB028902FB039903FB0299A0FB5C -:10E5E000002300FB013301FB003318EB020049EB71 -:10E5F0000301AAFB0A230AFB0B330BFB0A33801827 -:10E600005941022905DB02DCB0F1804F01D304201F -:10E61000B063B06B042801D1002417E0022801D0B8 -:10E62000032808D1A96C41F2883291FBF2F4012C45 -:10E630000CDA01240AE0012808D1A96C41F28832E1 -:10E6400091FBF2F1012900DA21464C00032800D0A9 -:10E65000A4005848444300200A900AAD214605987A -:10E66000800202F07AF868602146049840428002F5 -:10E6700002F073F8A86000200D900EAA06F11001B8 -:10E680000AA802F070F806F110020EA906F11000B7 -:10E6900002F0CCF806F1100106F11000FFF710FDB2 -:10E6A00000A9304602F0D5F806F1200200A906F1D3 -:10E6B000100002F058F813E006F11003AA6C06F1FE -:10E6C000100107F16800FFF77DFB00A9304602F05A -:10E6D000C0F806F1200200A906F1100002F043F88C -:10E6E000002013B0BDE8F08F0024F4490000804EF4 -:10E6F00038B50446206BC0050AD404F13000006D23 -:10E70000C00505D4D4F85001C00501D4002032BDA5 -:10E71000234DD4F8500100F4A060B0F5A06F09D1EA -:10E72000102204F5A07105F11000E3F7A0FC012010 -:10E73000E86604E02046FFF7B5FE0020E86604F135 -:10E740003000D0E9022305F1100002F091FC002016 -:10E7500032BD10B5124C702200212046E3F78DFC2B -:10E760004FF08040206120602062E063E06500207F -:10E7700010BD80B5FFF7EDFF002805D10FF20D00A9 -:10E78000BDE8024002F018BE02BD00001322C821FD -:10E790000948FEF784BA00000000D0400100640080 -:10E7A0000CF90020112D4454FB2189400080664063 -:10E7B00071981C00A69BC400F1E6020838B5044617 -:10E7C000DFF8985368680870D5E90201C2E90001D2 -:10E7D000686A9FED600A296A002920D400EE900A39 -:10E7E000F8EEE00A60EE800AC4ED000AD5ED0A0AF0 -:10E7F000F8EEE00A60EE800AC4ED010AD5ED0B0ADE -:10E80000F8EEE00A60EE800AC4ED020AD5ED080ACF -:10E81000F8EEE00A20EE800A84ED030A26E040428A -:10E8200000EE900AF8EEE00A60EE800AC4ED000AFD -:10E83000A86A404200EE900AF8EEE00A60EE800A14 -:10E84000C4ED010AE86A404200EE900AF8EEE00AE0 -:10E8500060EE800AC4ED020A286A404200EE900A87 -:10E86000F8EEE00A20EE800A84ED030A02F01BFDB8 -:10E8700084ED040AE86B32BD70B588B004461646D4 -:10E8800004A8FEF7E7FADFF8D452D5E90201C5E99A -:10E890000401C6E9000100A802F065FC00A8416877 -:10E8A0009FED2C0A009A002A20D400EE901AF8EE70 -:10E8B000E00A60EE800AC4ED000AD0ED020AF8EE2C -:10E8C000E00A60EE800AC4ED010AD0ED030AF8EE1A -:10E8D000E00A60EE800AC4ED020ADDED000AF8EEFF -:10E8E000E00A20EE800A84ED030A26E0494200EEA9 -:10E8F000901AF8EEE00A60EE800AC4ED000A816822 -:10E90000494200EE901AF8EEE00A60EE800AC4ED8B -:10E91000010AC068404200EE900AF8EEE00A60EE9C -:10E92000800AC4ED020A0098404200EE900AF8EE18 -:10E93000E00A20EE800A84ED030A00202061686B63 -:10E94000801100F00100296C891101F001010843D8 -:10E9500008B070BD000080302DE9FF41044600255D -:10E960004FF47A787D4E06F10802311D06F1200041 -:10E9700002F01CFC04F12C025068306304F13800F2 -:10E98000816C716304F1CC077968B16304F1D8013B -:10E990008B6F33645268D30501D5D4F82C80836C17 -:10E9A0005FEAC35C05D5D0F844C0C44501DAE0464F -:10E9B0000125D7F804C05FEACC5E05D5D4F8CCE0D9 -:10E9C000C64501DAF0460225896F5FEAC15E04D5CB -:10E9D000D4F864E1C64500DA03255FEAC15E07D5D5 -:10E9E0000CEA030E5FEACE5E0BD44FF0FF3508E071 -:10E9F00003EA020E0CEA0E0E5FEACE5E01D44FF07F -:10EA0000FF35002D05D0022D1BD00ED3032D24D0B1 -:10EA10002FE002F04000401E8041C043C00FF06371 -:10EA2000D4E90E01C6E9020125E003F04001491EC8 -:10EA30008941C943C90FF163D0E91423C6E9022310 -:10EA400019E00CF04000401E8041C043C00FF0634D -:10EA5000D4E93601C6E902010DE001F04000401E94 -:10EA60008041C043C00FF063D4E95601C6E90201FA -:10EA700001E00020F06306F1180200A901A8FEF7EA -:10EA800000FA9DF90000306000240DE040060AD530 -:10EA900001A850F8240000EE100ABAEEC80A06EBEE -:10EAA000840080ED320A641C032C2CDA387900F0E3 -:10EAB000500040280CD101A850F8240000EE100AA4 -:10EAC000B8EEC00A2C2000FB0460443002F006F9C6 -:10EAD000786800F0C001C029D8D101A850F82400FE -:10EAE00000EE100AB8EEC00A2C2000FB046044308F -:10EAF00002F009F9DFED180A20EE200A06EB840087 -:10EB000080ED320ACFE7002004B0BDE8F081372263 -:10EB10004FF461711248FEF7C2B838B50F4CD822D5 -:10EB200000212046E3F7A9FA002508E004F1D80106 -:10EB30002C2000FB0540443002F0C1F86D1C032D71 -:10EB4000F4DB002032BD80B5FFF7E7FF0548BDE8E4 -:10EB5000024002F031BC000000008037E8AD002028 -:10EB600059E902080FEB02082DE9F0412DED048B65 -:10EB700084B004460F4690461D46DFF894683C2258 -:10EB800006F10C01304602F0EDFC502206F158016E -:10EB900006F1480002F0E6FC0C22414606F13C007A -:10EBA000E3F765FA1022394606F19800E3F75FFAB9 -:10EBB0009FEDA29AD6F85C01401CC6F85C010728BC -:10EBC00002DB0620C6F85C01D6F85C01C0F106073E -:10EBD00022E000AA06EB071000F14801284601F0E8 -:10EBE00066FE00AA07EB470006EB800104F1B800BF -:10EBF00001F030FDF0EE409A19EE900AE2F74EFE79 -:10EC000021F0004153EC182B23F00043E3F718FAEE -:10EC100001D2B0EE699A7F1C19EE100AE2F73EFEAF -:10EC200041EC180B062FD4DBB0EE480AF0EE680A70 -:10EC300004B0BDEC048BBDE8F08100002DE9F84F75 -:10EC40002DED088BB0EE409AF0EE609A0C4690469F -:10EC500000259FED78ABB0EE4A8AF0EE6A8A416BF0 -:10EC6000002904D4D0F8D400032800D10125DFF80E -:10EC7000A067482206F1C80106F1C00002F072FC4C -:10EC800006F1B80989ED149B00270CE053EC182B12 -:10EC900006EBC700D0F8C410D0F8C000E2F760FF60 -:10ECA00041EC180B7F1C0A2FF0DB51EC180B0022F3 -:10ECB000DFF86037E3F788F841EC1B0B89ED16BBF2 -:10ECC000322C2FDBC820C6F854014046E2F730FF53 -:10ECD00041EC1A0B51EC190B0022DFF83C37E3F73B -:10ECE00073F853EC1A2BE2F711FE0022DFF84C37D1 -:10ECF000E3F76AF841EC180BB4F57A7F45DB51EC89 -:10ED0000190B0022DFF81437E3F75EF853EC1A2BE7 -:10ED1000E2F7FCFD0022DFF82437E3F755F841EC79 -:10ED2000180B32E0D6F8540141F2883198FBF1F12A -:10ED300001EB8101401AC6F8540102D50020C6F843 -:10ED4000540151EC190B0022DFF8D436E3F73CF8FC -:10ED500082468B464046E2F7EBFE52465B46E2F7C0 -:10ED6000D5FD0022DFF8D436E3F72EF841EC180B7E -:10ED7000D6F85401002808D106F5AA70C068012809 -:10ED800003D1B0EE4A8AF0EE6A8A06F5AA704068AE -:10ED9000002803D0B0EE498AF0EE698ADFF88406D5 -:10EDA000804503D1B0EE498AF0EE698A53EC182B06 -:10EDB00000200146F1F726F801D089ED18BBD9E90A -:10EDC000180153EC1B2BE2F73FFF21F00041DFF865 -:10EDD0005826DFF85836E3F71BF922D8D6E92E2358 -:10EDE00000200146F1F70EF81BD1012D19D1C820E2 -:10EDF000C6F8540151EC190B0022DFF82436E2F773 -:10EE0000E3FF04460D464046E2F792FE22462B46BB -:10EE1000E2F77CFD0022DFF82436E2F7D5FF41EC73 -:10EE2000180BB0EE480AF0EE680ABDEC088BBDE89E -:10EE3000F18F000000000000000000000024744971 -:10EE40002DE9F0472DED0C8BAEB0044619A800213A -:10EE50000A460B460EC00846DFF8B4550DE005EB38 -:10EE6000800191ED2A0AB8EEC00A20EE090A12A923 -:10EE700001EB800181ED000A401C9FEDCB9A042834 -:10EE8000EDDB06A802F06FF99DED060AB8EEC00AA8 -:10EE900020EE090A8DED1C0A06A81CA990ED010AB6 -:10EEA000B8EEC00A20EE090A81ED010A90ED020ACF -:10EEB000B8EEC00A20EE090A81ED020A90ED030ABD -:10EEC000B8EEC00A20EE090A81ED030A02A802F09A -:10EED0004AF902AEF168706801F039FC0746029900 -:10EEE000B06801F034FC381A1690F168B06801F08F -:10EEF0002EFC804616AF0299706801F028FC404451 -:10EF00007860F068014601F022FC06460299084646 -:10EF100001F01DFC8019A0F18040B86012AB16AA68 -:10EF20001CA92046FFF720FEB0EE408AF0EE608A72 -:10EF30009FEDE3AB00261DE004EB86008069E2F75D -:10EF4000F7FD41EC1B0B9FEDE0CB53EC1B2B51EC81 -:10EF50001C0BE2F7DBFC53EC1B2BE2F7D7FC53EC6A -:10EF60001C2BE2F7D3FC53EC1A2BE2F7F9FD41EC32 -:10EF70001A0B761C032EDFDB51EC1A0BF1F708F9A4 -:10EF800000EE100A02F03CFA10EE100AE2F786FCDE -:10EF900005F5AC7696ED08BB53EC1B2BE2F754FE5F -:10EFA00041EC1C0B86ED0ACB9FEDC9AB53EC1C2B3F -:10EFB00051EC1A0BE2F7AAFC41EC1D0B86ED0CDBC1 -:10EFC00053EC1B2BE2F7CCFDC6E908019FEDC2BB59 -:10EFD00053EC1C2B51EC1D0BE2F798FCD6E90E23E9 -:10EFE000E2F7BEFD53EC1B2BE2F790FCC6E90E01E5 -:10EFF0004FF0000802F0A8FA002808D1D6E90E0167 -:10F00000DFF82C24DFF82C34E3F71AF80AD2D5F80D -:10F010005801002806D12046FEF768FE012801D1DC -:10F020004FF0010804F1180001F084FB81093269F6 -:10F03000DFF8F003824200DB0246B0EE480AF0EE51 -:10F04000680A2046FFF7FAFD85ED2E0B53EC102BD6 -:10F05000D5E94801E2F75AFCC5E92E0124A902A826 -:10F0600001F058FD05F59A7706AA02A9384601F085 -:10F070007AFB394602A801F0ECFB002218E002EB13 -:10F080004207DF190DF1900C5CF827700DF1180C98 -:10F090000CEB830CDCF804C0CCFB07015B1C032BDE -:10F0A000EDDB19AB800F40EA810043F82200521CCF -:10F0B000032A03DA002001460346F0E719AFD5F82A -:10F0C0005801002801D00020B860D7F80890C9F195 -:10F0D000000000EE100AB8EEC00A20EE098AB0EE79 -:10F0E000480A02F039FA8DED0E0A0DF1380A0020B7 -:10F0F000CAF80400CAF80800B0EE480A02F02FFA75 -:10F100008AED030A306941F2883190FBF1F000EE9C -:10F11000100AB8EEC00A00EE909AF8EEE00A9FEDF1 -:10F12000BB1AC0EE810AC0EE800AB0EE001AC0EE33 -:10F13000810AFDEEE00A10EE900A400000EE900A0F -:10F14000F8EEE00A9FEDB11A60EE810A20EE800A27 -:10F15000BDEEC00A87ED020AB8EEC00A20EE098AA9 -:10F16000B0EE480A02F0F8F98DED0A0A0DF128090F -:10F170000020C9F80400C9F80800B0EE480A02F0FF -:10F18000EEF989ED030A20AA0EA912A801F08FFB5F -:10F190000EAA0AA920A801F08AFBD4F8D4000128FD -:10F1A00016DB002212E000BF000080305AF8220077 -:10F1B00000EE100A12A800EB820080ED000ABEEEFD -:10F1C000C10A05EB820080ED2A0A521C042AEDDBFD -:10F1D00095ED2E8BD5F85871002F01D086ED068B5A -:10F1E000D6E9062351EC1B0BE2F790FBCDE90001B9 -:10F1F00053EC182B51EC1A0BE2F788FBDDE90023E6 -:10F20000E2F7AEFC41EC100B85ED2E0B86ED060B04 -:10F21000D4F8D400032802D1B8F1000F01D0002F98 -:10F220003FD09FED878B53EC102B51EC180BE2F77E -:10F230006DFBF0F7ADFF00EE100A02F08DF98DEDD9 -:10F240000A0A0020C9F80400C9F80800D5E92E23ED -:10F2500051EC180BE2F75AFBF0F79AFF00EE100A98 -:10F2600002F07DF989ED030A0EAA0AA912A801F09D -:10F270001EFB0EA801F0A5FB00220AE00AEB8200AB -:10F2800090ED000ABEEEC10A05EB820080ED2A0A6D -:10F29000521C042AF2DBD4E9362305F1A80001F060 -:10F2A000FBFED5F85801002804D000217160401EF3 -:10F2B000C5F858012EB0BDEC0C8BBDE8F08700BF3F -:10F2C0000000000000000000000000000000F03E10 -:10F2D000989999999999B93FCDCCCCCCCCCCEC3FAD -:10F2E000F8B5044604F1C801494800F5AC750A7A3E -:10F2F000D20604D40322C0F8582100226A60D4F850 -:10F300005021D2050CD4226BD20503D5D4F880202D -:10F31000D20505D40321C0F8581100206860F2BD61 -:10F320006A69002A0DD0D1E90423D1E90667901B50 -:10F3300063EB07014FF47A720023EEF7C3F82861FC -:10F3400015E0D4F8C81044F62062914201DB29612F -:10F350000DE0EB68C918E960914205DAD0F8580170 -:10F36000002801D10020F2BD29610020E86020467C -:10F37000FFF766FD0020F2BD10B5254C4FF4D072AA -:10F3800000212046E2F779FE4FF08040C4F83401B6 -:10F39000C4F8A8000022134604F1A80001F07CFE86 -:10F3A0004FF47A70C4F8540100202349C4E948019D -:10F3B0009FED250B84ED5C0B04F5B87080ED020B1E -:10F3C00080ED040B80ED060B80ED080B10BD10499D -:10F3D000C1F86001002070470D49C1F86C010020A0 -:10F3E000704704224FF416711948FDF758BC80B5D8 -:10F3F000FFF7C2FF0020FFF7EAFF0020FFF7ECFF56 -:10F400001448BDE8024001F0D7BF0000E1023747D1 -:10F41000D0EB00200000244000006940000049407B -:10F420000000794040420F001383C0CAA145B63F97 -:10F430007B14AE47E17A843F0000F03F0088B34080 -:10F44000000000000000E03F00000000000000009D -:10F45000E1F20208E3F3020880B5B8220146DFF8C2 -:10F46000FC04E2F704FE002002BD80B5B822DFF8FC -:10F47000EC14E2F7FCFD002002BDF0B585B00446B7 -:10F4800000A902A8FDF713FB01A801F019FE02284C -:10F490003FD0D4F808010099461ADFF8C04494F828 -:10F4A000B000002848D0002E46D0F717029D2268F1 -:10F4B000D317A2FB060102FB071103FB0611000C88 -:10F4C00040EA01404019029002ADD5F804C06268DC -:10F4D000D317A2FB060102FB071103FB0611000C68 -:10F4E00040EA014060446860D5F808C0A068C117D0 -:10F4F000A0FB062300FB073301FB0633120C42EA94 -:10F50000034202EB0C00A860032102A8FDF791FA68 -:10F5100012E0606B03280FD1FDF7BCFA00280BD076 -:10F52000DFF838440C2202A904F10C00E2F79FFD39 -:10F530000098A06100F003F8002005B0F0BD2DE9AF -:10F54000F04F87B0DFF814048069DFF81464B16805 -:10F55000884200DAB060F168814200DAF060F16858 -:10F56000B268891A3269914201DA0020C2E10014BE -:10F57000C117CDE900017068401C7060DDE9000131 -:10F58000DDE90023A2FB004502FB015503FB00550A -:10F59000CDE90245DDE90201DDE90023A2FB0045DA -:10F5A00002FB015503FB0055CDE90445D6E90E01E8 -:10F5B000DDE9002380185941C6E90E01D6E90C01A6 -:10F5C000DDE9022380185941C6E90C01D6E91C0186 -:10F5D000DDE9042380185941C6E91C01DFF87C03EA -:10F5E000D0E92A23DDE90401DDE90045A4FB008917 -:10F5F00004FB019905FB009912EB080043EB09019C -:10F60000DFF85823C2E92A01002445E0DFF84C0363 -:10F6100000EB840500EBC407D7E90CABDDE9002360 -:10F62000E868C117A0FB028900FB039901FB02995E -:10F630001AEB08004BEB0901C7E90C013037D7E999 -:10F640000A01DDE90289EA68D317A2FB08AB02FBD5 -:10F6500009BB03FB08BB10EB0A0041EB0B01C7E938 -:10F660000A01D7E91001EA68801851EBE271C7E995 -:10F670001001D7E918ABDDE90401EA68D317A2FB52 -:10F68000008902FB019903FB00991AEB08004BEB80 -:10F690000901C7E91801641C032CB7DB7068B0F5D9 -:10F6A0007A7FC0F2938000EBC00009300A2190FB02 -:10F6B000F1F070604FF00908D6E90E01A8FB0023B5 -:10F6C00008FB013312F1090043F100010A22002373 -:10F6D000EDF7F8FEC6E90E01D6E90C01A8FB002300 -:10F6E00008FB013312F1090043F100010A22002353 -:10F6F000EDF7E8FEC6E90C01D6E91C01A8FB0023E2 -:10F7000008FB013312F1090043F100010A22002332 -:10F71000EDF7D8FEC6E91C019048D0E92A23A8FBE2 -:10F72000020108FB0311093041F100010A22002304 -:10F73000EDF7C8FE894AC2E92A01002444E087485F -:10F7400000EBC405D5E90C01A8FB002308FB01333D -:10F7500012F1090043F100010A220023EDF7B2FE85 -:10F76000C5E90C013035D5E90A01A8FB002308FBE7 -:10F77000013312F1090043F100010A220023EDF7E1 -:10F78000A1FEC5E90A01D5E91001A8FB002308FB89 -:10F79000013312F1090043F100010A220023EDF7C1 -:10F7A00091FEC5E91001D5E91801A8FB002308FB6B -:10F7B000013312F1090043F100010A220023EDF7A1 -:10F7C00081FEC5E91801641C032CB8DBD6E90C01E5 -:10F7D000A0FB002300FB013301FB00330320A0FB4F -:10F7E000024500FB0355CDE90445D6E90E01D6E9F3 -:10F7F0001C23A2FB004502FB015503FB0055AD0095 -:10F8000045EA94757068C117544AD2E92A89A8FB61 -:10F81000002308FB013309FB0033CDE90223002755 -:10F8200061E0DDE90401B0EB8400A941DDE90223D8 -:10F8300080185941CDE9000101D1002852D0474834 -:10F8400000EBC70000F1300CD0E90C23D6E90C0125 -:10F85000A0FB02AB00FB03BB01FB02BBD6E90E23FE -:10F86000DCE90A01A0FB028900FB039901FB029974 -:10F87000BAEB08026BEB09030320A0FB02AB00FB11 -:10F8800003BBDCE91023D6E91C01A0FB028900FBC5 -:10F89000039901FB0299BAEB080A6BEB090B72683A -:10F8A000D317DCE91801A0FB028900FB039901FBD7 -:10F8B00002991AEB08004BEB0901DDE904238018DB -:10F8C0005941B0EB8400A941DDE902238018594178 -:10F8D000401E61F10001DDE90023EDF7F3FD1F4952 -:10F8E00041F827007F1C032F9BDB1C48012180F877 -:10F8F000B010002007B0BDE8F08F10B5174CB8224B -:10F9000000212046E2F7B9FB164820624FF4AA0016 -:10F9100060624FF4A020A062002010BD0822962152 -:10F920001148FDF7BCB980B5FFF7E7FF40F2D1639E -:10F93000B8220E490E4801F0EEFC002801D001204B -:10F9400002BD0C4801F038FD002801D0012002BDA5 -:10F950000248012180F8B110002002BD98F5002076 -:10F96000B0F500200000D8FF7BF402086BF4020819 -:10F9700059F402081DF90208704700200AE0DFF878 -:10F98000F81B01EB8001DFF8F42B0A62DFF8E42BAF -:10F99000CA62401C0328F2DB704700201BE0DFF83E -:10F9A000D81B01EB800191ED2D0AD1ED080AF4EE90 -:10F9B000400AF1EE10FA01D581ED080A01F12002AA -:10F9C000D2ED030AB4EE600AF1EE10FA02D5D1F8D6 -:10F9D000B410D160401C0328E1DB7047FEB5B0F9DC -:10F9E000542012040092B0F95620130400AA536068 -:10F9F000B0F9584024049460DFF87C5B009E6F6E81 -:10FA0000F61B0096AE6E9B1B5360EB6EE31A936081 -:10FA10000B46416F006D80B201F01AF9F7BDF0B5E9 -:10FA200089B000252E462F46DFF84C4BD4F89410B1 -:10FA3000012902D12946C4F8941003A9FFF7CEFF8B -:10FA400006A801F068FB03980699A0EBA13003908B -:10FA500006A803A94A684368A2EBA3324A608A68F1 -:10FA60008068A2EBA0308860602204F5587104F52C -:10FA7000577001F077FD0C2203A904F55D70E2F7E1 -:10FA8000F6FA00A801F0EFFB602204F5737104F5AB -:10FA9000727001F067FD0C2200A904F57870E2F79E -:10FAA000E6FA294600A838E004F2344293685B1C69 -:10FAB000936001EB410204EB8202D2F85C334FF019 -:10FAC000090C93FBFCF35D1901EB410304EB830389 -:10FAD000D3F860C34FF0090E9CFBFEFC664403F5AF -:10FAE0005873D3F804C09CFBFEFC6744DDF800C0EB -:10FAF000D2F8C82392FBFEF2624400924268D3F827 -:10FB00006CC09CFBFEFC6244426082681B6FF44642 -:10FB100093FBFCF39A188260491C0929C4DB290075 -:10FB200000D54942320000D552423B0000D55B422D -:10FB3000009D002D00D56D4200954568002D01D532 -:10FB40006D4245608568002D01D56D4285600025B8 -:10FB5000009EB14200DA012541688A4200DA6D1C3C -:10FB60008068834200DA6D1C04F2344290680928F0 -:10FB700000DB6D1C042D0FD194F83414032908DB2D -:10FB8000526804F16400FCF72DFF012001F063FBD3 -:10FB900002E00846FCF71FFF09B0F0BD2DE9F04177 -:10FBA0000446DFF8D459002085F8340405F23446C1 -:10FBB0007060074605F1080825E005EB870090ED29 -:10FBC000330AD8ED0D0AB4EE600AF1EE10FA19DB33 -:10FBD000D8E912230020DFF8AC19E1F7C1FF21F0CA -:10FBE0000041DFF8A429DFF8A439E2F729FA09D2A5 -:10FBF00095F83404401C85F8340470680121B9403C -:10FC0000084370607F1C032FD7DB95F8340400286D -:10FC100015D0002709E004EBC70041680068E1F750 -:10FC200053FF05EB870148667F1C032FF3DB0020A1 -:10FC3000B060A868042802DA95F83404A86095F842 -:10FC4000340403281DD198ED010ADFEDBD0AB4EE9E -:10FC5000600AF1EE10FA14D5D8E912230020DFF87B -:10FC60002419E1F77DFF21F00041DFF81C29DFF8BE -:10FC70001C39E2F7E5F904D2A868032801D1042071 -:10FC8000A86098ED020ADFEDAF0AB4EE600AF1EE6B -:10FC900010FA1DD598ED010ADFEDAB0AB4EE600A4B -:10FCA000F1EE10FA14D5D8E912230020DFF8D418A9 -:10FCB000E1F756FF21F00041DFF8D428DFF8D4380F -:10FCC000E2F7BEF904D2A868042801D10520A86093 -:10FCD000BDE8F0812DE9F0410446DFF89C78D7F8C3 -:10FCE000B404012850D107F1E005F7EE000AB7EEA1 -:10FCF000000A07F5E471284601F03AFC07F15002CA -:10FD000007F5D471284601F039FE06003DD0786829 -:10FD1000401C7860616F0C46D7E91401E1F7D4FE0E -:10FD2000214600F01AFD00EE100ABAEEC80A10EEE5 -:10FD3000100AE1F7B3FDC7E9140107F5D07407F124 -:10FD40005008D4E90201E1F7BFFEC8F80800D4E981 -:10FD50000401E1F7B9FEC8F80C00D4E90601E1F7A7 -:10FD6000B3FEC8F81000D7E968010122DFF828388F -:10FD7000E2F74EF909D89FED750AF0EE400A2946E0 -:10FD8000284601F0F5FB00E000263046BDE8F08192 -:10FD900090ED030AD0ED040AF4EE400AF1EE10FAF9 -:10FDA0001BD590ED051AB4EE401AF1EE10FA14D5F9 -:10FDB0000021016490ED040AD0ED050AB4EE600A5A -:10FDC000F1EE10FA04DB01214164022181647047E5 -:10FDD00002214164012181647047B4EE600AF1EEB2 -:10FDE00010FA1BD590ED050AB4EE600AF1EE10FA98 -:10FDF00014D50121016490ED030AD0ED050AB4EE9B -:10FE0000600AF1EE10FA04DB0021416402218164F2 -:10FE1000704702214164002181647047022101641E -:10FE200090ED030AB4EE600AF1EE10FA04DB002153 -:10FE30004164012181647047012141640021816492 -:10FE400070470021C1640B4606E01A4640F82120A5 -:10FE500000EB81025362491C0329F6DB0121416753 -:10FE600019468167704710B5044604F15400142107 -:10FE700041600A21C160002101772046FFF7E1FFC0 -:10FE80000020606510BD000038B52DED028B86B0F6 -:10FE900003A9FFF7A3FD9FEDB18B002418E003A891 -:10FEA00050F8240000EE100ABAEEC80A00A800EBD1 -:10FEB000840080ED000A20EE000A10EE100AE1F73F -:10FEC000EDFC53EC182BE1F74BFE41EC180B641CD6 -:10FED000032CE4DBB0EE480AF0EE680AF8F7EEFE19 -:10FEE000B0EE408AF0EE608A002419E000EB840551 -:10FEF00000A850F82400E1F7D1FC53EC182BE1F7EF -:10FF000063FFF0F745F900EE100AD5F8400400EE63 -:10FF1000900A30EE200A05F2404080ED000A641C91 -:10FF2000DFF85406032CE1DBD0F89414491CC0F828 -:10FF300094140121C0F8BC1406B0BDEC028B31BD95 -:10FF4000AF47E13D00007A43BD74933CCDCCCC3E3D -:10FF500038B50446002004F13C0507E0B1EE400A44 -:10FF600081ED030A002144F82010401C032838DAF0 -:10FF700095ED050AB8EEC00A04EB8001D1ED000A48 -:10FF800080EE800AF0EE400AF5EE400AF1EE10FA3B -:10FF900002DBB0EE601A01E0B1EE601AD1ED061A94 -:10FFA000F5EE401AF1EE10FA01DAF1EE611A31EED7 -:10FFB000611A81ED0C1AC1ED060AD4ED0F0ABFEEED -:10FFC000001A30EE811AD1ED091A01EE210A80EEF5 -:10FFD000200A81ED090AB5EE400AF1EE10FABDDB08 -:10FFE000BEE72046FFF7D4FE2869B0F57A7F01DA34 -:10FFF000401C2861686894F87010052900F283801D -:020000023000CC -:10000000DFE801F0030E192C6C4004F170000121AF -:100010004160816000202861084684F8700031BD8D -:1000200004F17000C16801296DD1022184F87010BB -:100030000021816031BD04EB800090ED030AD5ED15 -:100040000A0AB4EE600AF1EE10FA12DAD5ED0B0AE4 -:10005000F4EE400AF1EE10FA4BDB2BE004EB8000EB -:1000600090ED030AD5ED0A0AB4EE600AF1EE10FA3B -:1000700049DB042084F8700004F170000021416025 -:10008000816031BD04EB800095ED0B0AD0ED030AD1 -:10009000B4EE600AF1EE10FA0CDA90ED0C0ADFED26 -:1000A000330AB4EE600AF1EE10FA0CD52869696AD9 -:1000B000884228DB032084F8700004F170000121DD -:1000C0004160816031BD042084F870000020286107 -:1000D00004F1700000214160816031BD95ED0C0A92 -:1000E00004EB8000D0ED030AB4EE600AF1EE10FAE2 -:1000F00009DB052084F870000020286104F17000FD -:1001000001214160816031BD10B52DED028B08EEFB -:10011000100ADFF86444B8EEC80ADFED120A20EED8 -:10012000200ADFED110A80EE200A10EE100AE1F736 -:10013000B5FB41EC100B01F0AFFF53EC102B00208E -:10014000DFF85814E1F7E2FBE1F7BEFCC4F88400E5 -:1001500084ED208ABDEC028B10BD00000000000081 -:1001600000000000368D27400024F449CCCC4CBD63 -:100170002DE9F0472DED028B90B0044602A8002136 -:100180000A460B460EC004F13006B06CDFF8E853A7 -:1001900044F62061884206DBD5F88010884212D0F0 -:1001A000FFF7B2FF0FE0D5F858238018C5F85803C1 -:1001B0008842C0F26781B16C814201D0FFF7A4FF91 -:1001C0000020C5F85803206BC5F8C0042046FFF78F -:1001D0005BFED5F89404D5F89014884206DB05F54B -:1001E0008860FFF7B5FE0020C5F89404D5F8B80480 -:1001F000012802D12046FFF712FCD5F8B4040128EB -:1002000040F0408102A801F05DF802A8D0ED020A9A -:1002100090ED011A9DED020ADDED021A20EE210A91 -:1002200001EE010A00EEA00A01F0EAF885ED030AEA -:10023000BEEE410A10EE100AADF8000000A8002141 -:100240004180818005F52C773946FDF7BFF908A874 -:1002500000F089FF296F089800F07FFA81460DF1C0 -:100260002008696FD8F8040000F077FA8246A96F79 -:10027000D8F8080000F071FA0AEB090100EB010957 -:10028000E96FD8F80C0000F068FA00EB09081022BA -:1002900008A905F17000E1F7EAFE4FF000091CE043 -:1002A00004EB490A716CBAF95400000400F055FAE5 -:1002B00000EE100A0CA800EB890080ED000ABAEEEF -:1002C000C80A05EB890080ED050A05A8BAF95410A3 -:1002D000090440F8291009F10109B9F1030FDFDB26 -:1002E00005A905F5E47001F0E2F9D5F828032968BD -:1002F0008842C0F2C78094ED428ABAEEC88A95ED72 -:10030000360AB5EE400AF1EE10FA0BD038EE400A8C -:1003100010EE100AE1F7C2FA21F00041EFF738FFC2 -:10032000C5F8DC0085ED368AA868032804D9001FCB -:100330000AD0401E0FD014E09948A8634FF07E50B9 -:10034000E863C82028640CE09648A8639648E863F0 -:100350006420286405E09548A8639548E863322046 -:1003600028643846FCF7EFFF01F058F800EE100A59 -:10037000DFED800A80EE200A85ED040AA822002124 -:1003800005F52C70E1F779FED5F88400404549DA8F -:1003900095ED040AB5EE400AF1EE10FA42DDD5ED16 -:1003A0000E0AB4EE600AF1EE10FA3BD56868296CCB -:1003B000884205DA2046FFF78DFC002810D161E065 -:1003C00095ED2C0ADFED6E0AB4EE600AF1EE10FA3C -:1003D00006DB2046FFF77EFC002853D00020686033 -:1003E000002005E005EB80014A69C1F8B420401CFB -:1003F0000328F7DBFFF7D1FA4FF000090BE005EB1C -:10040000890090ED080AD0ED0B0A30EE600A80ED0D -:10041000330A09F10109B9F1030FF0DB05F5D470D6 -:10042000FFF7BCFB00200CE005EB800191ED260AF4 -:10043000D1ED050A30EE600AB0EEC00A81ED290A5E -:10044000401C0328F0DB95ED290AD5ED2A0A30EE91 -:10045000200AD5ED2B0A30EE200A85ED2C0A4FF04C -:10046000000906E005EB89004169C0F8981009F120 -:100470000109B9F1030FF5DBE822002105F5E4706D -:10048000E1F7FBFD002010B0BDEC028BBDE8F0876A -:1004900010B5394C4FF49B6200212046E1F7EDFD89 -:1004A000102020604FF080402067FFF766FA04F5C7 -:1004B0008860FFF7D8FC2068C4F890044FF08440AF -:1004C000C4F87C041E20C4F89C043A48C4F8A8046C -:1004D0003948C4F8A4043948C4F8AC041920FDF71D -:1004E00087FB002010BD012240F252313448FCF756 -:1004F000D6BB10B5204C4FF49B6201462046E1F775 -:10050000B6FD0120C4F89400002010BD80B51A4942 -:100510000022C1F894204FF49B62E1F7A8FD00206F -:1005200002BD10B5FFF7B4FF040009D04FF43773D4 -:100530000FF29C020FF2BC01FFF71EFA204610BD1D -:10054000204800F039FF040009D040F2DF230FF209 -:1005500080020FF2A001FFF70FFA204610BD42F211 -:1005600026034FF49B6218491848BDE8104000F07C -:10057000D2BE000000401C4640CB002000401CC6FC -:10058000CDCC4C3D0000F0BF9A9999999999B93F0B -:100590009CC420B07268913F0070A7400000D04119 -:1005A0000080BB44000096439A99993F0000704236 -:1005B0003333B33FCDCCCC3ECDCC4C3F3333333F44 -:1005C00071010308E70403080D050308F304030899 -:1005D000696E765F656E61626C655F696E5F75738B -:1005E000655F6175746F5F63616C69627261746984 -:1005F0006F6E0000433A5C54656D705C4955535C06 -:10060000494B445C5461652D536F6F5C656D626549 -:10061000646465645F7265666572656E63655F6676 -:100620006F725F4E6F74655F335C656D62656464A5 -:1006300065645C496E76656E53656E73655C6D705E -:100640006C5C616363656C5F6175746F5F63616C43 -:100650002E63000010B590B014460022009200AA4C -:1006600090ED010AB8EEC00AD1ED020AF8EEE00AF8 -:1006700020EE200AD0ED020AF8EEE00A91ED011A10 -:10068000B8EEC11A00EEC10A82ED010A90ED020A2D -:10069000B8EEC00AD1ED000AF8EEE00A20EE200A1A -:1006A000D0ED000AF8EEE00A91ED021AB8EEC11A98 -:1006B00000EEC10A82ED020A90ED000AB8EEC00A0F -:1006C000D1ED010AF8EEE00A20EE200AD0ED010A91 -:1006D000F8EEE00A91ED001AB8EEC11A00EEC10A78 -:1006E0008DED030A0CAA00A9204600F0E0F804A949 -:1006F000204600F0FAF908AA04A90CA800F0D7F8DF -:1007000008A890ED020AB5EE400AF1EE10FA09D100 -:10071000D0ED010AF5EE400AF1EE10FA02D19FED9C -:10072000530A05E0D0ED010AF8F752FBB1EE400A9A -:1007300010B010BD00210A4605E050F822305B13CE -:1007400003FB0311521C032AF7DB0846704781FBA9 -:100750000001400F40EAC100704781FB0001800F9B -:1007600040EA810070472DE9F04104460D461646E7 -:1007700029682068FFF7F1FF074669686068FFF79E -:10078000ECFF8046A968A068FFF7E7FFA7EB080128 -:100790000F1AE968E068FFF7E0FF381A306069680F -:1007A0002068FFF7DAFF074629686068FFF7D5FF82 -:1007B0008046E968A068FFF7D0FF08EB07014718FB -:1007C000A968E068FFF7C9FF381A7060A968206857 -:1007D000FFF7C3FF0746E9686068FFF7BEFF804682 -:1007E0002968A068FFF7B9FFA7EB080147186968F7 -:1007F000E068FFF7B2FFC019B060E9682068FFF752 -:10080000ACFF0746A9686068FFF7A7FF80466968E4 -:10081000A068FFF7A2FF08EB07010F1A2968E0683C -:10082000FFF79BFFC019F060BDE8F08110B40368CA -:100830000C68E318136043684C68E31853608368DE -:100840008C68E3189360C068C9680818D06010BC51 -:10085000704702680A60426852424A6082685242A7 -:100860008A60C0684042C860704700000000000015 -:1008700030B591B004461546002000900C2201A826 -:10088000E1F7F5FB0CAA00A92046FFF76CFF08A9C9 -:100890002046FFF7DEFF04AA08A90CA8FFF763FFB4 -:1008A0000C2205A92846E1F7E2FB11B030BD90ED1E -:1008B000000AD1ED000A20EE200AD0ED010A91EDE8 -:1008C000011A00EEC10AD0ED020A91ED021A00EE03 -:1008D000C10AD0ED030A91ED031A00EEC10A82EDC0 -:1008E000000A90ED000AD1ED010A20EE200AD0EDB9 -:1008F000010A91ED001A00EE810AD0ED020A91ED95 -:10090000031A00EE810AD0ED030A91ED021A00EEFF -:10091000C10A82ED010A90ED000AD1ED020A20EE33 -:10092000200AD0ED010A91ED031A00EEC10AD0EDC4 -:10093000020A91ED001A00EE810AD0ED030A91ED52 -:10094000011A00EE810A82ED020A90ED000AD1ED53 -:10095000030A20EE200AD0ED010A91ED021A00EE02 -:10096000810AD0ED020A91ED011A00EEC10AD0ED24 -:10097000030A91ED001A00EE810A82ED030A704726 -:1009800090ED000AD1ED000A30EE200A82ED000A57 -:1009900090ED010AD1ED010A30EE200A82ED010A44 -:1009A00090ED020AD1ED020A30EE200A82ED020A31 -:1009B00090ED030AD1ED030A30EE200A82ED030A1E -:1009C000704790ED030AD0ED020A90ED011AD0EDC8 -:1009D000001A21EEA12A01EE012A00EEA02A00EE63 -:1009E000002AB0EE000AB4EE402AF1EE10FA3AD531 -:1009F000B6EE000A22EE000A60EE020AB7EE081A0E -:100A000000EEC21A61EE020A20EE201AB7EE082AA2 -:100A100001EE602A62EE200A20EE201AB7EE082AC4 -:100A200001EE602A62EE200A20EE200AB7EE081AD4 -:100A300000EE601A21EE202A21EE820A80ED000AE3 -:100A400090ED010A20EE020A80ED010A90ED020A03 -:100A500020EE020A80ED020A90ED030A20EE020A5F -:100A600080ED030A70474FF07E5101600021416024 -:100A70008160C160704710B50446D4ED030A94ED5F -:100A8000021AD4ED011A94ED000A20EE000A01EEDC -:100A9000A10A01EE010A00EEA00A00F0B1FCB5EED9 -:100AA000400AF1EE10FA18D0D4ED000AC0EE800A28 -:100AB000C4ED000AD4ED010AC0EE800AC4ED010ABB -:100AC000D4ED020AC0EE800AC4ED020AD4ED030A96 -:100AD00080EE800A84ED030A10BD4FF07E50206046 -:100AE00000206060A060E06010BD02680A6090EDC8 -:100AF000010AB1EE400A81ED010A90ED020AB1EE61 -:100B0000400A81ED020A90ED030AB1EE400A81ED40 -:100B1000030A704770B505460C4668680146FFF742 -:100B200016FE064629680846FFF711FE8019A0F157 -:100B300080402060A9686868FFF709FE06462968BA -:100B4000E868FFF704FE301A6060E9686868FFF73C -:100B5000FEFD06462968A868FFF7F9FD8019A06028 -:100B6000A9686868FFF7F3FD06462968E868FFF79B -:100B7000EEFD8019E060A8680146FFF7E8FD064633 -:100B800028680146FFF7E3FD8019A0F1804020614D -:100B9000E968A868FFF7DBFD064629686868FFF783 -:100BA000D6FD301A6061E9686868FFF7D0FD064637 -:100BB0002968A868FFF7CBFD301AA061E968A8682A -:100BC000FFF7C5FD064629686868FFF7C0FD801974 -:100BD000E061E8680146FFF7BAFD0646286801466D -:100BE000FFF7B5FD8019A0F18040206270BD90F93B -:100BF0000010012901DB00207047002901D50420E5 -:100C0000704790F90110012901DB0120704700298C -:100C100001D50520704790F90200012801DB022070 -:100C20007047002801D5062070470720704738B567 -:100C30000446FFF7DCFF0546E01CFFF7D8FF45EA56 -:100C4000C005A01DFFF7D3FF45EA801080B232BD7A -:100C50002DE9F04107460C4615461E46780702D599 -:100C60004FF0FF3000E00120B84608F0030255F8CD -:100C700022205043FFF771FD3060B80602D54FF0D7 -:100C8000FF3000E0012021464FEA680202F00C022A -:100C900052595043FFF761FD7060F80502D54FF0DF -:100CA000FF3000E0012021464FEA281202F00C023A -:100CB00052595043FFF751FDB060BDE8F08110B4C8 -:100CC00000220260426005E000EB820351F82240FE -:100CD0001C61521C052AF7DB10BC704780ED090A25 -:100CE00080ED0A0AD0ED060AB7EE001A70EE810A0E -:100CF00090ED071A70EE810A80EE200A80ED000A5E -:100D000080ED010A704780ED090A90ED010AD0EDEF -:100D1000000AD0ED061A90ED091A01EEE01AD0EDA6 -:100D2000071A01EEC01A90ED042AF0EE411A42EEC5 -:100D3000201AD0ED050A40EE801AC0ED0A1A90ED97 -:100D4000080A21EE800A80ED0A0A0168416080ED00 -:100D5000001A70472DE9F84304460D461646002751 -:100D600011E055F8291009EB4900C01954F820008A -:100D7000FFF7F3FC804409F10109B9F1030FF0DB3F -:100D800046F827807F1C032F03DA4FF00008C14686 -:100D9000F3E7BDE8F183F1B582B0012801DA002064 -:100DA000FEBD00A902A800F055F8044600250098F1 -:100DB000012806DB0146024602EBD1714910A0EB87 -:100DC0004105401B00900298A0F180470646394635 -:100DD000FFF7C3FCA6EB6006022C23DB7810A0F122 -:100DE000C0413846FFF7B9FC01463846FFF7B5FC6D -:100DF000471039463046FFF7B0FCA6EB6006032CDF -:100E000010D17810A0F1C0413846FFF7A6FC01468A -:100E10003846FFF7A2FC471039463046FFF79DFCE5 -:100E2000A6EB6006002D04D027493046FFF795FC5D -:100E300006460098012802DB4010064107E010F149 -:100E4000010F04D121493046FFF787FC06463046A2 -:100E5000FEBD000070B504460D4620681C4988425E -:100E600005DB401020604FF0FF3028601AE0194E7B -:100E7000B04215DA204600F039F82860206816499B -:100E8000884205DB401020602868401E286009E089 -:100E9000B04207DA400020602868401C286001E06A -:100EA0000020286020680D4909180D4A914201D39D -:100EB000032070BD0B4908180B49884201D302205A -:100EC00070BD012070BD0000CD3C412D9A79825A41 -:100ED000FD0BB958FE855C2CFC0BB958666666C6DE -:100EE000CDCCCC0C0AD7A3C015AE470100210268B7 -:100EF000002A01D108467047130C1B0402D11021AF -:100F000012040260026812F07F4F02D1083112020F -:100F10000260026812F0704F02D1091D12010260D6 -:100F2000026812F0404F02D1891C920002600268F0 -:100F3000002A02D5491E5208026008467047F8B5DB -:100F400004460D4620680146FFF707FC0646616827 -:100F50000846FFF702FC0746A0680146FFF7FDFBC5 -:100F6000C6F18041C91B081AFFF715FF28602068E9 -:100F700068606068A860A068E8600020F2BD0000BA -:100F800080B58DF800108DF80120022300AAD02131 -:100F90000020DFF70BF9012801D1002002BD4FF03E -:100FA000FF3002BD38B51446094D29701946681C3A -:100FB000E1F75DF8631CDBB22A46D0210020DFF7A1 -:100FC000F5F8012801D1002032BD4FF0FF3032BDCD -:100FD00030FB002080B5D2B200920A46D02100201A -:100FE000DFF722F9012801D1002002BD4FF0FF30C8 -:100FF00002BD0EB4002003B0704780B5DFF713F8D0 -:101000006421DFF7C9F9002002BD000003000020C1 -:1010100013F0030F09D0521E22BF13F8010B11F871 -:1010200001CBB0EB0C00F3D07047121F22BF53F876 -:10103000040B51F804CB6045F7D0121D0AD200BA58 -:101040009CFA8CFCB0EB0C0038BF6FF0000088BF3E -:1010500001207047521E22BF13F8010B11F801CB7B -:10106000B0EB0C00F6D0521C08BF1046704770471A -:1010700070B514461D46DFF8386206F148014A6F24 -:1010800042F002024A671022014606F11000E0F722 -:10109000EEFFC6E9124570BD70B514461D46DFF877 -:1010A000106206F14001CA6F42F00102CA671022C5 -:1010B000014606F17000E0F7DAFFC6E9104570BDA1 -:1010C000DFF8EC11D1F8A820026091F8A400704775 -:1010D00018B40146DFF8D82102F1A40392F8A44025 -:1010E000A04208D1022903D15868401C586010E082 -:1010F000002058600DE000245C6082F8A400012903 -:1011000001D1012000E002202246032118BC00F09A -:1011100037B911BC704770B50446654DE968686819 -:10112000FFF715FB06462968A868FFF710FB301A81 -:101130002060E968A868FFF70AFB06462968686826 -:10114000FFF705FB80196060E8680146FFF7FFFACA -:10115000064629680846FFF7FAFA8019A0F1804090 -:10116000A060002070BD80B510225249E0F77FFFDB -:10117000002002BD38B504464D4D95F8BC0010F076 -:10118000030F0CD02A4605F1100105F17000FFF79E -:10119000EAFAD5F8BC0020F00300C5F8BC00102224 -:1011A00029462046E0F763FF002032BD38B50C46E3 -:1011B0001546FFF7DFFFFBF789FBC5E90001FBF7E9 -:1011C0006EFB002803D0FBF77BFE206031BDFBF7F0 -:1011D0006EFB002803D0FBF770FE206031BDFBF7EB -:1011E0006DFB002803D0FBF775FE206031BD0020A9 -:1011F000206031BD2E49C1F8C0000020704780B585 -:1012000007224FF448712C48FBF749FD002002BD2E -:1012100010B5274CD02200212046E0F72EFF4FF0DA -:1012200080406066A066E0662067206120602062E2 -:101230002063C4F880002148C4F8C400002010BD19 -:1012400080B5FFF7E5FF002804D11D48BDE8024046 -:1012500000F0B2B802BD1649C1F8940070471449B5 -:10126000C1F8B000704710B584B0040018D0002257 -:101270001146FBF7EFFD00A8FFF74DFF206800992E -:10128000A0EBA130206000A861684268A1EBA23108 -:101290006160A1688068A1EBA030A060002000E040 -:1012A000162004B010BD024890ED310A70470000CE -:1012B000F8F2002008F30020F5110308DB0F494085 -:1012C000FF11030810B584B0040016D000A8FFF782 -:1012D000CAFF002811D100200BE000A951F820100E -:1012E00000EE101ABAEEC80A04EB800181ED000A84 -:1012F000401C0328F1DB002000E0162004B010BDE4 -:1013000010B51E4C4FF4CC7200212046E0F7B5FE1C -:101310000C20606010BD70B4002500E06D1C174CFF -:101320002668B54209DA05EB450604EB8604D4F8D5 -:10133000B040A342F2D116201EE0142E01DB16208D -:101340001AE00C2505FB0646C6F8B030236805FBFD -:101350000343C3F8A820236804EB83039860206844 -:1013600004EB80008165606802F10C010818606080 -:101370002068401C2060002070BC704770ED002089 -:10138000002A05D1074A136823EA010108431060C7 -:101390007047044A1168002801D0002010600846F8 -:1013A00070470000E0FD002080B554220021134862 -:1013B000E0F763FE002002BD10490A68142A01DB31 -:1013C0001620704701EB820250600868401C0860DC -:1013D0000020704738B50024254609E000EB850061 -:1013E00040688047002802D0002C00D104466D1CC4 -:1013F000024801688D42F1DB204632BDDCF9002055 -:10140000B5EEC00AF1EE10FA02D4B1EEC00A704790 -:101410006FF0004C00EE10CAF8F7F2BD002940F161 -:101420000B80F4464942404271F1000100F00AF895 -:1014300050F000406047000050EA010200F00E80CA -:10144000094200BF0BD1B0FA80F18840C1F19D0183 -:10145000C905020672F1004241EB10207047B1FA53 -:1014600081F241409040C2F1200261FA02F181EA2A -:10147000000018BF40F0010002F19D01E8E7000004 -:10148000C0F3C7517F392CD420290DDAC1F11F0CCC -:1014900041004FEAC11141F0004121FA0CF08941AD -:1014A00028BF4042C9437047D1F13F0C1CD44100D2 -:1014B0004FEAC11141F0004161FA0CF021FA0CF140 -:1014C00080EA0100094244BF4FF00041002004D3EC -:1014D0004942404271F10001704701D5401E491E4A -:1014E000704700200021704709424FF0004158BF6B -:1014F000C943002070470000D2B2203A22BF00FA50 -:1015000002F1002070475242D041D2F120029140B6 -:101510004140D040904041407047000080B500F00D -:101520000DF8B5EE400AF1EE10FA02D00548406C15 -:1015300002BD012002BD0348C06C7047014890ED18 -:10154000160A704730FA002010B5FFF7E7FF04468F -:10155000FFF7F1FF204310BD012000F0A7BD0020E0 -:1015600000F0A4BD10B5044600F056FE204610BDA4 -:101570002DE9F8432DED048B06468946B0EE408AEE -:1015800010EE900AE0F78AF941EC190B18EE100AF8 -:10159000E0F784F941EC180B53EC182BD6E9300135 -:1015A000E0F7B4F904460D4653EC192BD9E93001A4 -:1015B000E0F7ACF922462B46E0F7D2FAC6E9300153 -:1015C000002734E051EC180B06EBC7025368126891 -:1015D000E0F79CF904460D4651EC190B09EBC702E4 -:1015E00053681268E0F792F922462B46E0F7B8FA02 -:1015F00006EBC702C2E9000106EBC70851EC180B65 -:10160000D8E92423E0F782F904460D4653EC192B60 -:1016100009EBC700D0F89410D0F89000E0F776F905 -:1016200022462B46E0F79CFAC8E924017F1C062FCE -:10163000C8DB002718E006EBC70851EC180BD8E907 -:101640001223E0F763F904460D4653EC192B09EB1E -:10165000C700C16C806CE0F759F922462B46E0F7D1 -:101660007FFAC8E912017F1C092FE4DB002718E08C -:1016700006EBC70851EC180BD8E90C23E0F746F944 -:1016800004460D4653EC192B09EBC700416B006B68 -:10169000E0F73CF922462B46E0F762FAC8E90C0174 -:1016A0007F1C032FE4DBBDEC048BBDE8F18338B570 -:1016B0002DED108B82B005460C462068E0F738FA15 -:1016C00041EC180B6068E0F733FA41EC190BA068A5 -:1016D000E0F72EFA41EC1A0BD5E930230020DFF8B1 -:1016E000B019E0F73DFAC5E93001D5E90C2351EC1A -:1016F000180BE0F735FAC5E90C01D5E90E2351ECDA -:10170000190BE0F72DFAC5E90E01D5E9102351ECCC -:101710001A0BE0F725FAC5E9100153EC182B51EC30 -:10172000180BE0F7F3F841EC1B0B53EC1B2BD5E93E -:101730000001E0F715FAC5E9000153EC182B51EC54 -:10174000190BE0F7E3F841EC1F0B53EC1F2BD5E925 -:101750000201E0F705FAC5E9020153EC182B51EC40 -:101760001A0BE0F7D3F841EC1C0B53EC1C2BD5E91A -:101770000401E0F7F5F9C5E9040153EC192B51EC2C -:10178000190BE0F7C3F841EC1D0B53EC1D2BD5E909 -:101790000601E0F7E5F9C5E9060153EC192B51EC18 -:1017A0001A0BE0F7B3F841EC1E0B53EC1E2BD5E9F6 -:1017B0000801E0F7D5F9C5E9080153EC1A2B51EC03 -:1017C0001A0BE0F7A3F8D5E90A23E0F7C9F9C5E950 -:1017D0000A0153EC1B2B51EC180BE0F797F8CDE9FD -:1017E0000001DDE90023D5E91201E0F7B9F9C5E907 -:1017F000120153EC1F2B51EC190BE0F787F8D5E9D8 -:101800001423E0F7ADF9C5E9140153EC1C2B51EC9E -:101810001A0BE0F77BF8D5E91623E0F7A1F9C5E943 -:10182000160153EC1F2B51EC180BE0F76FF8D5E9BC -:101830001823E0F795F9C5E9180153EC1D2B51EC7D -:10184000190BE0F763F841EC1F0B53EC1F2BD5E9A4 -:101850001A01E0F785F9C5E91A0153EC1E2B51EC8A -:101860001A0BE0F753F8D5E91C23E0F779F9C5E93D -:101870001C0153EC1C2B51EC180BE0F747F8D5E991 -:101880001E23E0F76DF9C5E91E0153EC1E2B51EC48 -:10189000190BE0F73BF8D5E92023E0F761F9C5E93A -:1018A000200153EC1A2B51EC1A0BE0F72FF853ECF4 -:1018B0001A2BE0F72BF841EC1C0B53EC1C2BD5E951 -:1018C0002201E0F74DF9C5E92201DDE9002351ECE1 -:1018D000180BE0F71BF8D5E92423E0F741F9C5E937 -:1018E000240153EC1F2B51EC190BE0F70FF8D5E94D -:1018F0002623E0F735F9C5E9260153EC1C2B51EC02 -:101900001A0BE0F703F8D5E92823E0F729F9C5E930 -:10191000280153EC1B2B51EC190BDFF7F7FF53ECAD -:10192000192BDFF7F3FFD5E92A23E0F719F9C5E909 -:101930002A0153EC1B2B51EC1A0BDFF7E7FF53EC9A -:101940001A2BDFF7E3FFD5E92C23E0F709F9C5E906 -:101950002C0153EC1D2B51EC1A0BDFF7D7FF53EC86 -:101960001A2BDFF7D3FFD5E92E23E0F7F9F8C5E905 -:101970002E0102B0BDEC108B31BD00002DE9F84FF7 -:101980002DED108B8CB080460C46914698ED0CEBFB -:1019900098ED308B98ED000B8DED000B53EC182B70 -:1019A000DDE90001DFF7B2FF06460F4653EC1E2BC0 -:1019B00051EC1E0BDFF7AAFF02460B4630463946B4 -:1019C000E0F742F9CDE9040198ED0EFB98ED060B26 -:1019D0008DED020B53EC182BDDE90201DFF796FFCA -:1019E00006460F4653EC1F2B51EC1F0BDFF78EFF03 -:1019F00002460B4630463946E0F726F9CDE90801A4 -:101A000098ED109B98ED0AAB53EC182B51EC1A0B88 -:101A1000DFF77CFF06460F4653EC192B51EC190BF0 -:101A2000DFF774FF02460B4630463946E0F70CF903 -:101A3000CDE9060153EC182BD8E90201DFF766FF68 -:101A400006460F4653EC1E2B51EC1F0BDFF75EFFD3 -:101A500002460B4630463946E0F7F6F841EC1B0BE0 -:101A600053EC182BD8E90401DFF750FF06460F4668 -:101A700053EC1E2B51EC190BDFF748FF02460B46C7 -:101A800030463946E0F7E0F841EC1C0B53EC182BDC -:101A9000D8E90801DFF73AFF06460F4653EC1F2B43 -:101AA00051EC190BDFF732FF02460B463046394640 -:101AB000E0F7CAF841EC1D0B53EC182BD8E91201E2 -:101AC000DFF724FF06460F4653EC1E2BDDE900012D -:101AD000DFF71CFF02460B4630463946E0F7B4F804 -:101AE00006460F4653EC182BD8E91401DFF70EFF1A -:101AF00032463B46E0F734F806460F4653EC1E2BC1 -:101B0000DDE90201DFF702FF02460B4630463946A7 -:101B1000E0F79AF806460F4653EC182BD8E9160161 -:101B2000DFF7F4FE32463B46E0F71AF806460F466A -:101B300053EC1E2B51EC1A0BDFF7E8FE02460B4666 -:101B400030463946E0F780F80022DFF84835DFF705 -:101B5000DDFE41EC1E0B53EC182BD8E91801DFF722 -:101B6000D5FE06460F4653EC1F2BDDE90001DFF7DB -:101B7000CDFE02460B4630463946E0F765F806468C -:101B80000F4653EC182BD8E91A01DFF7BFFE324697 -:101B90003B46DFF7E5FF06460F4653EC1F2BDDE91A -:101BA0000201DFF7B3FE02460B4630463946E0F746 -:101BB0004BF806460F4653EC182BD8E91C01DFF70B -:101BC000A5FE32463B46DFF7CBFF06460F4653ECF9 -:101BD0001F2B51EC1A0BDFF799FE02460B463046DD -:101BE0003946E0F731F80022DFF8A834DFF78EFE3F -:101BF00041EC1F0B53EC182BD8E91E01DFF786FED2 -:101C000006460F4653EC192BDDE90001DFF77EFE97 -:101C100002460B4630463946E0F716F806460F46B0 -:101C200053EC182BD8E92001DFF770FE32463B4613 -:101C3000DFF796FF06460F4653EC192BDDE902014C -:101C4000DFF764FE02460B4630463946DFF7FCFFFD -:101C500006460F4653EC182BD8E92201DFF756FE53 -:101C600032463B46DFF77CFF06460F4653EC192B06 -:101C700051EC1A0BDFF74AFE02460B463046394656 -:101C8000DFF7E2FF0022DFF80C34DFF73FFE41EC24 -:101C9000190BDDE90423DDE90801DFF737FECDE9A3 -:101CA0000201DDE9082351EC1C0BDFF72FFECDE923 -:101CB0000001DDE9062351EC1B0BDFF727FECDE920 -:101CC0000A019FEDF18BDDE90A2351EC1B0BDFF7D5 -:101CD0001DFE06460F4653EC1B2B51EC180BDFF78D -:101CE00015FE53EC1C2BDFF711FE53EC1D2BDFF719 -:101CF0000DFE02460B4630463946DFF7A5FF064685 -:101D00000F46DDE9002351EC1C0BDFF7FFFD3246E7 -:101D10003B46DFF725FF06460F46DDE9042351EC7D -:101D20001D0BDFF7F3FD53EC1D2BDFF7EFFD324604 -:101D30003B46DFF715FF06460F46DDE90223DDE9E6 -:101D40000601DFF7E3FD02460B4630463946DFF772 -:101D50007BFF41EC1A0B53EC1A2B00200146EEF7E7 -:101D600051F800F08B81DDE9082351EC190BDFF706 -:101D7000CDFD06460F4653EC1D2B51EC1F0BDFF734 -:101D8000C5FD02460B4630463946DFF75DFF53EC92 -:101D90001C2BDFF7BBFD06460F4653EC1D2B51EC09 -:101DA0001D0BDFF7B3FD53EC1E2BDFF7AFFD324603 -:101DB0003B46DFF7D5FE06460F46DDE90823DDE9A1 -:101DC0000601DFF7A3FD53EC1E2BDFF79FFD024654 -:101DD0000B4630463946DFF737FF06460F46DDE94A -:101DE0000A2351EC1F0BDFF791FD32463B46DFF72C -:101DF000B7FE06460F4653EC1B2B51EC1D0BDFF7CD -:101E000085FD53EC192BDFF781FD02460B4630466A -:101E10003946DFF719FFC4E90001DDE9042351EC7D -:101E2000190BDFF773FD06460F4653EC1C2B51ECE4 -:101E30001E0BDFF76BFD02460B4630463946DFF7D7 -:101E400003FF53EC1D2BDFF761FD06460F4653ECF5 -:101E50001C2B51EC1C0BDFF759FD53EC1F2BDFF74C -:101E600055FD32463B46DFF77BFE06460F46DDE971 -:101E70000423DDE90601DFF749FD53EC1F2BDFF7F3 -:101E800045FD02460B4630463946DFF7DDFE064685 -:101E90000F46DDE90A2351EC1E0BDFF737FD324612 -:101EA0003B46DFF75DFE06460F4653EC1B2B51EC1D -:101EB0001C0BDFF72BFD53EC192BDFF727FD024638 -:101EC0000B4630463946DFF7BFFEC4E90201DDE9C3 -:101ED000042351EC1F0BDFF719FD06460F4653ECA8 -:101EE0001B2B51EC1E0BDFF711FD02460B46304653 -:101EF0003946DFF7A9FE53EC1D2BDFF707FD064639 -:101F00000F4653EC1B2B51EC1B0BDFF7FFFC53EC84 -:101F1000192BDFF7FBFC32463B46DFF721FE064676 -:101F20000F46DDE9022351EC190BDFF7EFFC024607 -:101F30000B4630463946DFF787FE06460F46DDE999 -:101F4000002351EC1E0BDFF7E1FC32463B46DFF786 -:101F500007FE06460F4653EC1B2B51EC1C0BDFF71C -:101F6000D5FC53EC1F2BDFF7D1FC02460B46304665 -:101F70003946DFF769FEC4E90401D4E9000153ECF6 -:101F80001A2BDFF721FFC4E90001D4E9020153EC69 -:101F90001A2BDFF719FFC4E90201D4E9040153EC5D -:101FA0001A2BDFF711FF41EC190B84ED049B94ED24 -:101FB00002AB94ED00BB53EC1B2B51EC1B0BDFF77A -:101FC000A5FC04460D4653EC1A2B51EC1A0BDFF717 -:101FD0009DFC22462B46DFF7C3FD04460D4653EC1D -:101FE000192B51EC190BDFF791FC22462B46DFF73A -:101FF000B7FD04460D46D8E90023D8E90601DFF70E -:10200000AFFDD8E90A23DFF7ABFD82468B4653ECE0 -:102010001B2BD8E90C01DFF779FC06460F4653EC81 -:102020001A2BD8E90E01DFF771FC32463B46DFF789 -:1020300097FD06460F4653EC192BD8E91001DFF740 -:1020400065FC32463B46DFF78BFD53EC182BDFF780 -:102050005DFC02460B4650465946DFF7F5FDD8E9D0 -:102060003023DFF7B1FE22462B46DFF779FD41EC46 -:10207000100BF6F723FE89ED000B01200CB0BDEC30 -:10208000108BBDE8F28F00BF000000000000004090 -:102090000000F03F0000E03F80B5012251EC100B42 -:1020A00000F0F6F841EC100B01BD0000DFED4A0A2C -:1020B00010B560EE200AB0EEE01ADFED481AB4EE7B -:1020C000611A82B00446F1EE10FA29D5F5EE400A05 -:1020D000F1EE10FAACBFB6EE001ABEEE001A70EECA -:1020E000810AFDEEE00A10EE900AA8B1FAEEC90AE4 -:1020F0009FED3B1A00EEC10A9FED3A1A00EEC10AAD -:102100009FED391A00EEC10A9FED381A00EEC10AA0 -:102110009FED371A00EEC10A00F00300041921E018 -:102120008DED000A0098C0F3C750FF2808D088B989 -:10213000009840020ED1E00748D5B7EE000A45E00E -:102140000098400246D1FAF7E9FA212101609FED9B -:10215000290A13BD8DED000A00A800F0C5FA041984 -:102160009DED000ADFED240AB4EE600AF1EE10FAEC -:102170000BDBDFED220AB4EE600AF1EE10FA04D5B3 -:10218000E00723D5B7EE000A20E060EE000AE00782 -:102190000ED59FED1B0A9FED1B1A00EE801ADFED96 -:1021A0001A1A41EE201AB7EE000A01EEA00A0DE05D -:1021B000DFED161A9FED162A00EEA12ADFED151AA3 -:1021C00020EE201A42EE201A01EE210AA00748BF95 -:1021D000B1EE400A13BD000083F9223F0000004F1A -:1021E0000000C94600A0FD400020A23A00003433A0 -:1021F0000030C22EFFFFFF7FFEFF7FB90000803955 -:102200009349B2BA36A02A3DDFFFFFBE6E8C4CB9AF -:102210004283083CA1AA2ABE81423ABF5318984281 -:10222000E2F746BD8018990707D0521E24BF13F865 -:10223000011D00F8011DF6D8704781071CD1103A26 -:1022400007D330B433E93210103A20E93210F9D212 -:1022500030BC1032121F24BF53F8041D40F8041D77 -:10226000F8D838BF121D521E24BF13F8011D00F804 -:10227000011DF8D8704700BF083A07D333E90210B0 -:10228000083A40F804CD40F8041DF7D20832EAE7D6 -:10229000F0B52DED048B154641EC180B83B053ECD3 -:1022A000182BC448C449DFF731FBC44AC44B41EC86 -:1022B000190B21F00041DFF7C3FE80F0F38051ECF1 -:1022C000190B00220023DFF7A3FE53EC192B99BF53 -:1022D0000020BC490020BC49DFF742FCDFF7F4FBDB -:1022E000040051D0DFF724FC0022B84BDFF70EFBCF -:1022F00041EC190B53EC192B4FF0A040B449DFF718 -:1023000005FB02460B4651EC180BDFF79DFC064619 -:102310000F4653EC192B4FF0C040AE49DFF7F6FAE9 -:1023200002460B4630463946DFF78EFC06460F461E -:1023300053EC192B4FF00050A749DFF7E7FA02469C -:102340000B4630463946DFF77FFC06460F4653EC16 -:10235000192B0020A149DFF7D9FA02460B46304677 -:102360003946DFF771FC06460F4653EC192B4FF048 -:1023700000509B49DFF7CAFA02460B463046394601 -:10238000DFF762FC41EC180B04F00300451951EC37 -:10239000180B6FF00102944BDFF73AFE0BD80022C6 -:1023A0004FF07953DFF74CFE05D2E80740F18E81FC -:1023B0009FED8E8B8AE153EC182BDFF7A7FA41ECE7 -:1023C000190BE80731D553EC192B8A488A49DFF7F6 -:1023D0009DFA8A4A8A4BDFF7C3FB53EC192BDFF7D0 -:1023E00095FA884A884BDFF7BBFB53EC192BDFF7D4 -:1023F0008DFA864A864BDFF7B3FB53EC192BDFF7D8 -:1024000085FA844A844BDFF7ABFB53EC192BDFF7DB -:102410007DFA824B6FF05102DFF7A2FB53EC192BD0 -:10242000DFF774FA0022624B37E053EC182B51ECC3 -:10243000190BDFF76BFA06460F4653EC192B914840 -:102440009149DFF763FA914A914BDFF789FB53EC2F -:10245000192BDFF75BFA8F4A8F4BDFF781FB53ECC9 -:10246000192BDFF753FA8D4A8D4BDFF779FB53ECCD -:10247000192BDFF74BFA8B4A8B4BDFF771FB53ECD1 -:10248000192BDFF743FA894A564BDFF769FB3246CF -:102490003B46DFF73BFA53EC182BDFF761FB41ECCF -:1024A000180B13E18DED008BDDE90001DDE9002360 -:1024B000C3F30A5140F2FF74A14213D0002904BFB4 -:1024C000190350EA11301CD1E80748BF9FED478B34 -:1024D000A80740F1038151EC180B81F0004141EC59 -:1024E000180BFBE0190350EA113040F0F780FAF7BF -:1024F00015F9212103B001604FF0FF306FF000416A -:10250000EFE08DED008B00A800F064F945199DED1A -:10251000008B354B51EC180B6FF00102DFF778FDA3 -:102520000BD800224FF07953DFF78AFD05D2E80778 -:1025300040F1CC809FED2D8BC8E053EC182BDFF7DA -:10254000E5F941EC190BE8076AD553EC192B29483A -:102550002949DFF7DBF9294A294BDFF701FB53EC67 -:10256000192BDFF7D3F9274A274BDFF7F9FA53EC9A -:10257000192BDFF7CBF9254A254BDFF7F1FA53EC9E -:10258000192BDFF7C3F9234A234BDFF7E9FA53ECA2 -:10259000192BDFF7BBF9214B6FF05102DFF7E0FA9F -:1025A00053EC192BDFF7B2F90022014B8AE000BF90 -:1025B0000000F03F83C8C96D305FE43F0000A0FF1A -:1025C000FFFFDF410000E03F0000E0BF0000303EC1 -:1025D000FB21B941B410114026A6513E5C14D33CF6 -:1025E0009A833B3B5555C5BFFFFF3FBE000000002F -:1025F0000000F03F09260A1039BA213E3BA861C607 -:10260000F97D92BE63AC30909F01FA3EF6FB511605 -:102610006CC156BFB10255555555A53FFFFFDFBFF1 -:1026200053EC182B51EC190BDFF770F906460F46E7 -:1026300053EC192B13481449DFF768F9134A144B6C -:10264000DFF78EFA53EC192BDFF760F9114A124BC2 -:10265000DFF786FA53EC192BDFF758F90F4A104BC6 -:10266000DFF77EFA53EC192BDFF750F90D4A0E4BCA -:10267000DFF776FA53EC192BDFF748F90B4A0C4BCE -:1026800018E000BFB08F2FC310D8E53D8F0C73A1A9 -:10269000E1E55ABE4DADE44FE31DC73E3EE3B5193B -:1026A000A0012ABFFAF010111111813F4255555572 -:1026B0005555C5BFDFF754FA32463B46DFF726F9DA -:1026C00053EC182BDFF74CFA41EC180BA80705D593 -:1026D00051EC180B81F0004141EC180B03B051ECA8 -:1026E000180BBDEC048BF0BD10B504462DED028B2C -:1026F00094ED008A9FED2D0A82B028EE000AB5EE17 -:10270000400A8DED000AF1EE10FAACBFF6EE000AB9 -:10271000FEEE000A30EE200A8DED000A002100A82E -:1027200000F00CF99DED000AB5EE400AF1EE10FA4A -:1027300017D0DFED1F0A20EE200ADFED1E0A00EEA3 -:10274000608ADFED1D0A00EE608ADFED1C0A00EEF4 -:10275000608ADFED1B0A00EE608ADFED1A0A00EEE8 -:10276000608A84ED008ADFED180A9DED000AB4EE60 -:10277000600AF1EE10FA06D4DFED140AB4EE600A36 -:10278000F1EE10FA05DBDFED120A00F0FFF88DED37 -:10279000000A9DED000ABDEEC00A02B010EE100A5C -:1027A00000F00300BDEC028B10BD000083F9223F56 -:1027B000000080380000C94600A0FD400020A23A79 -:1027C000000034330030C22E000000CF0100004F63 -:1027D0000000004FD0B52DED048B044682B094ED7F -:1027E000008B4748474953EC182BDFF78FF8CDE9AA -:1027F000000100220023DFF70BFCDDE9002399BF75 -:102800000020414900204149DFF7AAF9CDE9000144 -:10281000002100A800F058F9DDE900230020002184 -:10282000EDF7F0FA4ED03A49DFF770F841EC190BAA -:1028300053EC192B4FF0A0403649DFF767F80246FA -:102840000B4651EC180BDFF7FFF906460F4653EC29 -:10285000192B4FF0C0403049DFF758F802460B46BD -:1028600030463946DFF7F0F906460F4653EC192B90 -:102870004FF000502949DFF749F802460B46304631 -:102880003946DFF7E1F906460F4653EC192B0020D5 -:102890002349DFF73BF802460B4630463946DFF75F -:1028A000D3F906460F4653EC192B4FF000501D4943 -:1028B000DFF72CF802460B4630463946DFF7C4F9FD -:1028C00041EC180B84ED008BDDE90001164A174B33 -:1028D000DFF7B6FB04D3164A164BDFF799FB05D892 -:1028E0000022154B00F030F9CDE90001DDE90001CF -:1028F000DFF7EAF802B000F00300BDEC048BD0BDB6 -:1029000083C8C96D305FE43F0000E03F0000E0BFD6 -:102910000000303EFB21B941B410114026A6513EC3 -:102920005C14D33C9A833B3B0000C0FFFFFFDFC138 -:102930000100C0FFFFFFDF410000E0410268C2F379 -:10294000C752FF2A06D10068400201D1012070471A -:102950000220704703685B0016D0C2F19602521A3B -:10296000012A11DB182A04DB016801F00041016033 -:1029700007E0012191400268491E11404A4002606F -:1029800011B14FF0FF3070470020704710EE100A71 -:1029900010EE901AA4464FF0FF034FEA410103EAFC -:1029A000D0540A0E1CBF94EA030F92EA030F55D0CD -:1029B000B1EB400F2ED24FEAC11141F0004100F0BF -:1029C00000434FEA002040F000404FEA90008908A1 -:1029D00064EB0204401A38BF01EB400018BF54F109 -:1029E000000407D0D1EB400038BF081818BFB4F17D -:1029F0000104F7D140002CD0B0FA80F100FA01F0C8 -:102A0000521A0EDB43EA102000EBC25000EE100A0F -:102A10006446704708BF00F0004000EE100A6446AC -:102A2000704743EA102000EE100A02F17F024FEADD -:102A3000C25100EE901AF1EE100A20F4F851E1EEC6 -:102A4000101A20EE200AE1EE100A10EE100A644679 -:102A50007047184600EE100A6446704709421CBFD2 -:102A600094EA030F92EA030F1CD04FF0984201EE54 -:102A7000102A60EE810AB1EB400FCBD2244208BF8E -:102A800020EE010A10EE901A03EAD152A2F11902C7 -:102A90004FEA012191D110EE100A03EAD054A4F1BB -:102AA00019048CE74FF0807212EB400F2CBF6FF0CF -:102AB000004011F1807F644618BF6FF0004000EEC7 -:102AC000100AF7F49DAA70474268C2F30A5240F216 -:102AD000FF7C624509D14168090304BF00680028F2 -:102AE00001D1012070470220704743685B0004BF9A -:102AF0000368002B25D040F233439A1A521A012A58 -:102B00001FDB352A06DB416801F0004141600021EE -:102B1000016013E0012102F01F039940491E920653 -:102B200007D5426811404A404260026811430022C2 -:102B300002E0026811404A40026011B14FF0FF30DC -:102B4000704700207047000070B540F2FF7601F03A -:102B5000004C5B0006EA11545D0D1ABFB442B54249 -:102B600078E0B3EB410F08BF82424BD2C3F353036B -:102B700043F48013C1F3130141F48011641B0B3C37 -:102B800013D9C90241EA5051B1FBF3FE03FB1E11F8 -:102B9000A2FB0EE6DEEBC020B14101D28018594104 -:102BA00050EA010653D00B3CEBD80B34C4F120069D -:102BB000A14020FA06F6A0403143B1FBF3FE03FB2F -:102BC0001E11A2FB0EE6B0EB0E00B14101D280183F -:102BD000594102BF0146203D0020C1B3B1FA81F343 -:102BE0009940C3F1200220FA02F211439840ED1AF5 -:102BF0000A3509DBC00A40EA41504CEAD12101EB19 -:102C0000055170BD23D070BDD5F10B05B5F1200283 -:102C10000DDAC5F120020300E84001FA02F6E940AE -:102C2000934073F10043704151EB0C0170BD402D96 -:102C30000DDC430821FA02F0C2F1200511FA05F675 -:102C4000334373F1004370415CF1000170BD614694 -:102C5000002070BD53EA020E1ABFB442B54237E0FD -:102C6000B3EB410F08BF8242CCD25B08B3FA83F5C5 -:102C700004BFB2FA82F6AD190B3DB5F1200624BFB0 -:102C800002FA06F305E0AB40C5F1200622FA06F68B -:102C90003343AA40D5F1010524427FF46BAF31F0F4 -:102CA0000041B1FA81F404BFB0FA80F6A4190B3CDC -:102CB000B4F1200624BF00FA06F105E0A140C4F1FA -:102CC000200620FA06F63143A040D4F1010455E76E -:102CD0004FF4001515EB410F2CBF6FF00041EB4294 -:102CE00018BF6FF00041BDE87040F7F489A9704744 -:102CF0003D0A3F0A450A4F0A5E0A700A860AA00A80 -:102D0000BF0AE10A080B320B600B930BC90B030CD3 -:102D1000410C840CCA0C140D610DB30D080E620E2B -:102D2000BE0E1F0F840FEC0F5810C7103A11B111CF -:102D30002B12A9122A13AE133614C2145015E21521 -:102D400078161017AC174B18EC189119391AE41AA9 -:102D5000921B431CF61CAC1D651E211FDF1FA0200B -:102D600063212922F122BC23882457252926FC2609 -:102D7000D227A92882295E2A3B2B1A2CFB2CDD2D79 -:102D8000C12EA72F8E30763160324B333734243545 -:102D900013360337F337E538D739CA3ABE3BB23C6E -:102DA000A73D9D3E933F8940804177426E436544F5 -:102DB0005C4554464B47424839492F4A254B1B4CEA -:102DC000104D054EF94EED4FDF50D151C252B25366 -:102DD000A1548F557C56685752583B59235A095B6A -:102DE000EE5BD15CB35D935E715F4D602761006205 -:102DF000D662AB637D644D651B66E766B067776836 -:102E00003C69FE69BD6A7A6B356CEC6CA16D536EE2 -:102E1000026FAF6F5870FE70A2714272DF727973E9 -:102E20001074A4743475C1754B76D1765477D47709 -:102E30005078C8783D79AE791C7A867AEC7A4F7BE7 -:102E4000AD7B097C607CB37C037D4F7D977DDB7D12 -:102E50001B7E577E907EC47EF47E217F497F6D7FEE -:102E60008E7FAA7FC27FD77FE77FF37FFB7FFF7FC5 -:102E7000FF7FFB7FF37FE77FD77FC27FAA7F8E7FB5 -:102E80006D7F497F217FF47EC47E907E577E1B7EBE -:102E9000DB7D977D4F7D037DB37C607C097CAD7BC2 -:102EA0004F7BEC7A867A1C7AAE793D79C878507877 -:102EB000D4775477D1764B76C1753475A474107479 -:102EC0007973DF724272A271FE705870AF6F026F39 -:102ED000536EA16DEC6C356C7A6BBD6AFE693C6912 -:102EE0007768B067E7661B664D657D64AB63D66245 -:102EF000006227614D60715F935EB35DD15CEE5BF4 -:102F0000095B235A3B59525868577C568F55A15438 -:102F1000B253C252D151DF50ED4FF94E054E104D14 -:102F20001B4C254B2F4A394942484B4754465C4578 -:102F300065446E43774280418940933F9D3EA73D63 -:102F4000B23CBE3BCA3AD739E538F33703371336BC -:102F5000243537344B33603276318E30A72FC12E73 -:102F6000DD2DFB2C1A2C3B2B5E2A8229A928D22787 -:102F7000FC26292657258824BC23F12229226321F7 -:102F8000A020DF1F211F651EAC1DF61C431C921BD9 -:102F9000E41A391A9119EC184B18AC171017781657 -:102FA000E2155015C2143614AE132A13A9122B12AF -:102FB000B1113A11C7105810EC0F840F1F0FBE0E3D -:102FC000620E080EB30D610D140DCA0C840C410C79 -:102FD000030CC90B930B600B320B080BE10ABF0A01 -:102FE000A00A860A700A5E0A4F0A450A3F0A3D0A8D -:102FF00000007900F3006C01E6016002D90253037E -:10300000CC034604C0043905B3052C06A6062007E8 -:10301000990713088C0806098009F909730AED0A53 -:10302000660BE00B590CD30C4D0DC60D400EB90EBE -:10303000330FAD0F2610A010191193110D12861227 -:1030400000137913F3136D14E6146015DA15531693 -:10305000CD164617C0173A18B3182D19A619201AFD -:103060009A1A131B8D1B061C801CFA1C731DED1D68 -:10307000661EE01E5A1FD31F4D20C7204021BA21D3 -:103080003322AD222723A0231A2493240D2587253C -:1030900000267A26F3266D27E7276028DA285329A9 -:1030A000CD29472AC02A3A2BB42B2D2CA72C202D12 -:1030B0009A2D142E8D2E072F802FFA2F7430ED307D -:1030C0006731E0315A32D4324D33C7334034BA34E9 -:1030D0003435AD352736A1361A3794370D38873851 -:1030E00001397A39F4396D3AE73A613BDA3B543CBD -:1030F000CD3C473DC13D3A3EB43E2D3FA73F214028 -:103100009A4014418E4107428142FA427443EE4391 -:103110006744E1445A45D4454E46C7464147BA47FD -:103120003448AE482749A1491A4A944A0E4B874B66 -:10313000014C7B4CF44C6E4DE74D614EDB4E544FD1 -:10314000CE4F4750C1503B51B4512E52A75221533C -:103150009B5314548E5407550100000001000000D9 -:103160000100000001000000020000000200000059 -:103170000200000002000000030000000300000045 -:10318000030000000400000004000000050000002F -:103190000500000006000000070000000800000015 -:1031A000080000000A0000000B0000000C000000F6 -:1031B0000E0000000F0000001100000013000000CE -:1031C00016000000190000001C0000001F00000095 -:1031D00023000000280000002D0000003200000045 -:1031E00039000000400000004800000051000000CD -:1031F0005B00000067000000740000008200000017 -:1032000093000000A5000000BA000000D1000000FB -:10321000EC0000000A0100002B0100005101000039 -:103220007B010000AB010000E10100001D02000075 -:1032300062020000AF020000050300006703000007 -:10324000D403000050040000DB04000078050000F7 -:1032500029060000EF060000CF070000CB080000A1 -:10326000E7090000270B00008F0C0000240E00006F -:10327000ED0F0000EF11000032140000BE16000038 -:103280009C190000D71C00007A2000009224000046 -:103290002F290000602E000039340000CF3A0000D2 -:1032A00039420000934A0000FA530000915E00008A -:1032B0007E6A0000EC7700000B8700001298000087 -:1032C0003FAB0000D7C0000028D900008AF40000FE -:1032D0006013010019360100345D01003C890100D2 -:1032E000D3BA0100A9F201008B3102005A78020022 -:1032F00017C80200E221030000870300DDF8030085 -:10330000177904007C09050016AC0500316306003E -:1033100062310700941908000E1F090080450A0059 -:1033200013910B0076060D00EEAA0E006B841000C0 -:103330009D9912000CF2140030961700988F1A0015 -:1033400002E91D008BAE2100D4ED250038B62A001D -:1033500001193000A629360015FE3C00FDAE4400E0 -:103360002B584D00EF18570089146200AC726E00A4 -:103370000E607C00060F8C0046B89D00A59BB10036 -:103380000701C8006139E100DD9FFD00259B1D019B -:10339000D39E4101172D6A0189D897014146CB017F -:1033A000243005028C67460236D88F029A8BE202DF -:1033B000ABAC3F030B8CA803D2A41E04E6A1A3046C -:1033C000FE6339057208E205DDF09F06B8CB75078C -:1033D0000D9E66085ECE7509F630A70AB915FF0B7B -:1033E000C257820DE86E360F89832111CC844A13AF -:1033F000AB41B9153585761852368C1B917B051F6C -:1034000074E3EE22D591562702734C2C5075E231AD -:10341000E5C92C38BB2D423FD03B3C47B2C93750A1 -:10342000BF4F555A805EB9650001000100010001DF -:1034300000010001FF00FF00FF00FE00FE00FE0093 -:10344000FD00FD00FC00FC00FB00FA00FA00F900A2 -:10345000F800F800F700F600F500F400F300F200C1 -:10346000F100F000EF00EE00ED00EB00EA00E900F3 -:10347000E700E600E500E300E200E000DF00DD0039 -:10348000DC00DA00D800D700D500D300D100CF008F -:10349000CE00CC00CA00C800C600C400C200C000F4 -:1034A000BE00BC00B900B700B500B300B100AE006B -:1034B000AC00AA00A700A500A200A0009D009B00F0 -:1034C00098009600930091008E008C008900860081 -:1034D000840081007E007B0079007600730070001C -:1034E0006D006B006800650062005F005C005900C1 -:1034F0005600530050004D004A0047004400410070 -:103500003E003B003800350032002F002C0029001F -:10351000260022001F001C001900160013001000D6 -:103520000D00090006000300000000000000C602B4 -:103530008C055108170BDD0DA31068132E16F41817 -:10354000BA1B801E45210B24D12697295D2C222FE2 -:10355000E831AE347437393AFF3CC53F0001000111 -:103560000001000100010001000100010001000153 -:103570000001000100010001000100010001000143 -:103580000001000100010001000100010001000133 -:103590000001FC00F400E900DB00CA00B5009E0059 -:1035A000840069004C002E000F00F1FFD2FFB4FF31 -:1035B00097FF7CFF62FF4BFF36FF25FF17FF0CFFD5 -:1035C00004FF00FFFE00EF00D300AA0077003D00DB -:1035D0000000C3FF89FF56FF2DFF11FF02FF02FF0E -:1035E00011FF2DFF56FF89FFC3FF00003D0077004C -:1035F000AA00D300EF00FE00FC00DB009E004C00A0 -:10360000F1FF97FF4BFF17FF00FF0CFF36FF7CFF1A -:10361000D2FF2E008400CA00F4000001E900B500CA -:1036200069000F00B4FF62FF25FF04FFF900C0002E -:103630005B00E1FF6FFF1DFF00FF1DFF6FFFE1FF5C -:103640005B00C000F900F900C0005B00E1FF6FFF04 -:103650001DFF00FF1DFF6FFFE1FF5B00C000F900D1 -:10366000F4009E000F007CFF17FF04FF4BFFD2FF0A -:103670006900DB000001CA004C00B4FF36FF00FF08 -:1036800025FF97FF2E00B500FC00E9008400F1FF44 -:1036900062FF0CFFEF007700C3FF2DFF02FF56FF14 -:1036A0000000AA00FE00D3003D0089FF11FF11FFBA -:1036B00089FF3D00D300FE00AA00000056FF02FF74 -:1036C0002DFFC3FF7700EF00E9004C007CFF04FFF3 -:1036D00036FFF1FFB50000019E00D2FF25FF0CFF71 -:1036E00097FF6900F400DB002E0062FF00FF4BFF34 -:1036F0000F00CA00FC008400B4FF17FFE3001F00A6 -:1037000040FF07FFA5FF910000019100A5FF07FF03 -:1037100040FF1F00E300E3001F0040FF07FFA5FF7D -:10372000910000019100A5FF07FF40FF1F00E3008B -:10373000DB00F1FF17FF36FF2E00F400B500B4FFE9 -:1037400004FF62FF6900000184007CFF00FF97FF17 -:103750009E00FC004C004BFF0CFFD2FFCA00E900AA -:103760000F0025FFD300C3FF02FF89FFAA00EF006F -:10377000000011FF56FF7700FE003D002DFF2DFFDA -:103780003D00FE00770056FF11FF0000EF00AA0089 -:1037900089FF02FFC3FFD300CA0097FF04FFF1FFB8 -:1037A000F40084004BFF25FF4C0000012E0017FFA2 -:1037B00062FF9E00E900D2FF00FFB4FFDB00B5000E -:1037C0007CFF0CFF0F00FC00690036FFC0006FFF9C -:1037D0001DFF5B00F900E1FF00FFE1FFF9005B0066 -:1037E0001DFF6FFFC000C0006FFF1DFF5B00F900F1 -:1037F000E1FF00FFE1FFF9005B001DFF6FFFC0006C -:103800000A000A000F00130017001A001D00200014 -:103810002200250027002A002C00000000000000E4 -:103820000300050007000A000D0011001400180035 -:103830001C00210026002C00320039004100490004 -:1038400052005B00660072007E008C009C00AC00A1 -:10385000BF00E900000000000000040005000800AF -:1038600009000D000E00130014001A001B002100B7 -:103870002200280029003000310039003A004300BE -:1038800044004E004F005A005B006700680076005D -:1038900077008600870097009800A900AA00BD0065 -:1038A000BE00D400D500EC00ED00060107012401A4 -:1038B000250144014501670168018E018F01B801AE -:1038C000B901E500000000000000AB2A555500805A -:1038D00000400000004000800040000000400080E8 -:1038E0005555AB2A0000AB2A555500805555AB2ADB -:1038F0000000AB2A55550080006000400020000009 -:1039000000200040006000805555AB2A0000AB2A23 -:10391000555500800060004000200000002000405D -:103920000060008000600040002000000020004097 -:10393000006000806666CD4C33339A1900009A19F6 -:103940003333CD4C666600806666CD4C33339A19AE -:1039500000009A193333CD4C66660080AB6A55552A -:103960000040AB2A551500005515AB2A00405555AF -:10397000AB6A0080AB6A55550040AB2A5515000074 -:103980005515AB2A00405555AB6A0080B76D6E5B8C -:103990002549DB3692244912000049129224DB3675 -:1039A00025496E5BB76D00800070006000500040DC -:1039B0000030002000100000001000200030004007 -:1039C00000500060007000800070006000500040F7 -:1039D00000300020001000000010002000300040E7 -:1039E0000050006000700080C7718E6355551C4701 -:1039F000E438AB2A721C390E0000390E721CAB2A57 -:103A0000E4381C4755558E63C7710080C7718E63BB -:103A100055551C47E438AB2A721C390E0000390E8C -:103A2000721CAB2AE4381C4755558E63C771008061 -:103A30005D74BA68175D7451D1452F3A8C2EE92216 -:103A40004617A30B0000A30B4617E9228C2E2F3A32 -:103A5000D1457451175DBA685D7400805575AB6AC5 -:103A600000605555AB4A00405535AB2A002055152E -:103A7000AB0A0000AB0A55150020AB2A55350040B3 -:103A8000AB4A55550060AB6A557500805575AB6AF9 -:103A900000605555AB4A00405535AB2A00205515FE -:103AA000AB0A0000AB0A55150020AB2A5535004083 -:103AB000AB4A55550060AB6A55750080DB76B76D33 -:103AC00092646E5B495225490040DB36B72D922443 -:103AD0006E1B491225090000250949126E1B92240C -:103AE000B72DDB360040254949526E5B9264B76DB5 -:103AF000DB7600800078007000680060005800509D -:103B00000048004000380030002800200018001055 -:103B100000080000000800100018002000280030F5 -:103B200000380040004800500058006000680070F5 -:103B30000078008000780070006800600058005035 -:103B40000048004000380030002800200018001015 -:103B500000080000000800100018002000280030B5 -:103B600000380040004800500058006000680070B5 -:103B70000078008043798772CA6B0D65515E945757 -:103B8000D8501B4A5E43A23CE535282F6C28AF2154 -:103B9000F31A3614790DBD060000BD06790D3614F2 -:103BA000F31AAF216C28282FE535A23C5E431B4A4F -:103BB000D8509457515E0D65CA6B87724379008067 -:103BC0009A793373CD6C666600609A593353CD4C45 -:103BD000664600409A393333CD2C662600209A1968 -:103BE0003313CD0C660600006606CD0C33139A190C -:103BF00000206626CD2C33339A3900406646CD4CE2 -:103C000033539A5900606666CD6C33739A7900809D -:103C10002F7A5D748C6EBA68E962175D46577451ED -:103C2000A34BD14500402F3A5D348C2EBA28E922AF -:103C3000171D46177411A30BD105000090019001C8 -:103C4000A400A40068006800680068004600460000 -:103C5000280028002000200014001400100010008C -:103C6000100010000A000A00060006000600060008 -:103C700001001B00F000800100020D005201B400A1 -:103C80001D003800B9018100090020001800000063 -:103C9000F02C03085C350308F02F030858310308A3 -:103CA00000380308283403081C3803085838030870 -:103CB000C83803082C3503083C3C03080F000300F8 -:103CC0000B00280010B5DFF8FC4520620C22002113 -:103CD000201DDEF7D2F904F12400206104F13C003C -:103CE000606104F15400A06104F16C00E06110BD5A -:103CF0002DE9F0472DED068B86B00C464FF0000AFB -:103D0000DFF8C055016869604168A9608068E860B3 -:103D1000D04640460190049003900290052205F1A0 -:103D20000C01286900F05DFA052205F108016869B7 -:103D300000F057FA0522291DA86900F052FA052360 -:103D400001AA0321286900F061FAB0EE408A052338 -:103D500004AA0321686900F059FAF0EE408A0523AD -:103D600003AA0321A86900F051FAB0EE409A052297 -:103D70000321286900F088FAF0EE080AC0EE209AC4 -:103D800095ED02AAD5ED01AAF5EE40AAF1EE10FAE2 -:103D90000FD1B5EE40AAF1EE10FA0AD195ED030A63 -:103DA000B5EE400AF1EE10FA03D100F016FA4FF02A -:103DB0000108564695F8019095ED030A6AEEAA0AA5 -:103DC0004AEE0A0A40EE000A10EE900ADDF766FDA0 -:103DD00041EC100BF4F772FF51EC100BECF7D8F933 -:103DE0000090052200A9E86900F0FBF99DED000AAA -:103DF000DFEDA30AB4EE600AF1EE10FA00F185805F -:103E0000DFEDA00AB4EE600AF1EE10FA7DDA0523C8 -:103E100002AA0321E86900F0F9F9F0EE0C0AB4EE09 -:103E2000600AF1EE10FA70D59FED970AB4EE408A61 -:103E3000F1EE10FA69D59FED950AF4EE409AF1EE95 -:103E400010FA10D59FED920AF4EE409AF1EE10FAB6 -:103E500009DB6878FF2858D0FF2068704FF0FF30EA -:103E600020700120C4E019EE900ADDF717FD21F063 -:103E700000413246DFF85034DEF7E2F811D2B0EEFE -:103E8000000AF4EE408AF1EE10FA17D4F4EE408AFC -:103E9000F1EE10FA39DAB4EE409AF1EE10FA0EDBD8 -:103EA00033E0052301AA1946286900F0AFF9F7EEBF -:103EB000000AB4EE600AF1EE10FA26D5B04695ED90 -:103EC000030ADDED000A80EE200A10EE100ADDF78D -:103ED000E5FC41EC100B00F0D7FA53EC102B4FF03F -:103EE0000040DFF8E813DDF711FD41EC100B00F0A6 -:103EF000F5FA51EC100BDDF7E7FD0746B8F1000FBE -:103F000051D1EBF73DFF3D2803DB00F066F9304669 -:103F10006EE0A868DDF7C2FC41EC110BB0EE418AFF -:103F2000F0EE618A95ED010AB1EE400A10EE100A3A -:103F3000DDF7B4FC41EC100BB0EE481AF0EE681A55 -:103F400000F070FB53EC102B4FF00040DFF88013B3 -:103F5000DDF7DCFC41EC100B00F0C0FA51EC100B6B -:103F6000DDF7B2FD060001D506F5B47606F12D00A9 -:103F70005A2190FBF1F8B8F1040F00D1D046384631 -:103F800000F03BF8002806D03A463146404600F0A3 -:103F900039F8002802D100F020F904E0A878404563 -:103FA00001D085F80280A878484502D1B9F1FF0F09 -:103FB0001DD195F8201011F0060F01D0012604E064 -:103FC0003A46314600F066F806463846EBF7D8FE2A -:103FD0003D280CDA002E0AD0A8786978814206D0F4 -:103FE000687020704FF0010AFF2800D028705046FA -:103FF00006B0BDEC068BBDE8F0873C3079288041E7 -:10400000C00F704718B4AF4C237894F8204014F0D8 -:10401000060F01D018BC3DE02FD4984208D05A1C9E -:10402000541002EB9474A410A2EB840290420ED1BF -:104030005A224243283A002807D1B1F59D7F06DD78 -:1040400002F5B472914202DA15E0914213DB984214 -:1040500008D0DA1C531002EB93739B10A2EB83027F -:1040600090420AD15A2242432832002801D12E29F7 -:1040700003DA8A4201DA002000E0012012BC704716 -:10408000DD0CFB40A7493C416766E63F3E1B3041E3 -:10409000D7B409412DE9F04F95B004460D461646B8 -:1040A000884F97F8008010A80FF228211422E0F71B -:1040B0000FFE4FF0000B0DF14009D9F804A0304677 -:1040C000EBF75EFE1099884204DB3046EBF758FEB2 -:1040D00050452ADBD9F808B03046EBF751FE504581 -:1040E00007DB3046EBF74CFE584502DA4FF0010B88 -:1040F0001BE0D9F80C903046EBF742FE584507DB41 -:104100003046EBF73DFE484502DA4FF0020B0CE07B -:104110003046EBF735FE48450CDB3046EBF730FE1A -:104120001499814206DB4FF0030BB8F1000F47D41E -:10413000002C01D5002044E0444509D008F10100DD -:10414000411000EB91718910A0EB8100844218D1DD -:1041500000A80FF294114022E0F7BAFD4FEA0B10CD -:10416000002C00A908D141588D420ADA00A9401854 -:104170004068A84205DA2CE0401850F82400854237 -:1041800027DB444509D008F10300411000EB917191 -:104190008910A0EB8100844212D100A80FF288118F -:1041A0004022E0F795FD4FEA0B10002C00A90BD13F -:1041B0004158A94204DA00A94018C068854208DBCA -:1041C000012015B0BDE8F08F401850F82400A84237 -:1041D000F6DAFF20B8700020F3E73A48FF2181703B -:1041E00070470388934201D30023038003885B1C3C -:1041F00003809BB2934201D300220280028800EB2D -:104200008200096841600120704700002DE9F043F9 -:104210002DED028B81B004460D4616461F469FEDDC -:10422000288A4FF00008B4F9009000EE105AF8EE1A -:10423000C08A3A4600F028F880EE280A86ED000A87 -:1042400005E0A7F101090FFA89F908F101080FFA51 -:1042500088F8A84511DA04EB890090ED010AD6ED43 -:10426000000A30EE600A00EE008AB9F1010FE8DBC7 -:10427000A9F101090FFA89F9E7E788EE280A01B0E8 -:10428000BDEC028BBDE8F08330B49FED0D0A002336 -:10429000B0F900400EE024B2002C06D400EB8405F7 -:1042A000D5ED010A30EE200A641E24B2002C00D5A0 -:1042B000541E5B1C1BB28B42EDDB30BC7047000010 -:1042C00000000000D4AE002000001040DCA54C40EF -:1042D000DCA54CC0000000001E000000280000000B -:1042E000320000003C0000004A0100003C000000D9 -:1042F00096000000F00000004F01000041000000A7 -:104300009B000000F5000000540100004600000082 -:10431000A0000000FA0000005E0100005000000054 -:10432000AA000000040100001E0000007800000048 -:10433000D20000002C0100001900000073000000F2 -:10434000CD00000027010000140000006E000000F6 -:10435000C8000000220100000A0000006400000004 -:10436000BE00000018010000D0B52DED048B82B016 -:1043700041EC180B8DED008BDDE90023C3F30A51EE -:1043800040F2FF74A14213D0002904BF190350EA80 -:10439000113011D051EC180B00220023DDF750FE34 -:1043A0003DBF81F0004141EC180B0824002407E0D8 -:1043B000190350EA1130EDD002B051EC180B60E057 -:1043C00051EC180B274A284BDDF73AFE1CD29FED23 -:1043D000239B51EC190B53EC182BDDF735FC0646EB -:1043E0000F4653EC182B51EC190BDDF7B9FB324695 -:1043F0003B46DDF78BFAF4F769FC41EC100B51EC0E -:10440000180B53EC102B1EE00122184BDDF718FEA1 -:104410002ED29FED129B51EC190B53EC182BDDF7AC -:1044200013FC06460F4653EC182B51EC190BDDF725 -:1044300097FB32463B46DDF769FAF4F747FC84F018 -:10444000020453EC182BDDF7BFFC02B02246BDEC92 -:10445000048BBDE8D04000F0EFB800BF00000000C2 -:104460000000F03FCE3B7F669EA0E63F0000F03F9D -:10447000F8F754F9212102B001604FF0FF306FF0DE -:104480000041BDEC048BD0BD80B551EC100BFFF7A3 -:104490006BFF41EC100B01BD83B5012100A8FEF7B5 -:1044A00013FB401E012811D9002100A8FEF70CFBC8 -:1044B00060B10198DDE90023002847BF00200549CD -:1044C00000200549DDF74CFBCDE90001DDE90001E5 -:1044D00003B000BD0000F0BF0000F03F80B551EC1C -:1044E000100BFFF7D9FF41EC100B01BD38B50FB42D -:1044F00082B040F2FF759DED040B8DED000BDDE900 -:104500000001C3F30A51A9420BD011B14FF0FF349F -:104510000DE0190350EA11300CBF00246FF00104C4 -:1045200005E0190350EA113014BF022401249DED67 -:10453000020B8DED000BDDE90001DDE90023C3F383 -:104540000A51A94215D069B14FF0FF30012C18DA99 -:10455000002B1CD5DDE9020181F00041CDE902010B -:10456000082515E0190350EA1130EFD06FF0010073 -:10457000ECE7190350EA113018BFDDE9020147D119 -:104580000120022C29D1DDE9040107B030BD00254E -:104590000598002807D5DDE9040181F00041CDE947 -:1045A000040185F00605DDE90401DDE90223DDF7FC -:1045B00047FD04D2DDF708FC41EC100B1EE0002C97 -:1045C00008D5DDE90201DDE90423DDF7FDFB41EC5F -:1045D000100B15E09FED0F0B12E084420CBF9FED16 -:1045E0000F0B9FED0C0B002B4CBF082500250599E8 -:1045F000002948BF85F00605012801D185F0020594 -:104600002A4607B0BDE8304051EC100B00F014B85A -:1046100007B030BD000000000000000000000000F6 -:104620000000F03F80B553EC112B51EC100BFFF75D -:104630005DFF41EC100B01BDD0B514462DED048B90 -:10464000534A544BDDF7E4FC41EC180B1DD89FEDA9 -:10465000529B53EC182B51EC190BDDF757F9002244 -:104660004F4BDDF77DFA06460F4653EC182B51EC05 -:10467000190BDDF775FA02460B4630463946DDF771 -:10468000A3FB41EC180B44F0010451EC180B002281 -:10469000444BDDF7D5FC05D301224FF07953DDF70C -:1046A000B7FC51D853EC182BDDF730F941EC190B5E -:1046B00053EC182BDDF72AF906460F4653EC192B5D -:1046C00039483A49DDF722F9394A3A4BDDF748FAD9 -:1046D00053EC192BDDF71AF9374A384BDDF740FA5E -:1046E00032463B46DDF712F953EC182BDDF738FA6A -:1046F00006460F4653EC192B31483249DDF706F9CF -:10470000314A324BDDF72CFA53EC192BDDF7FEF86A -:104710002F4A304BDDF724FA53EC192BDDF7F6F86E -:104720002D4A2E4BDDF71CFA53EC192BDDF7EEF872 -:104730002B4B0022DDF714FA02460B463046394671 -:10474000DDF742FB41EC180BA00705D551EC180B27 -:1047500081F0004141EC180B14F007020BD00FF26E -:10476000880303EBC20251EC180B53681268DDF7A3 -:10477000F7F941EC180B200705D551EC180B81F027 -:10478000004141EC180B51EC180BBDEC048BD0BD73 -:1047900057CD9E5E1426D13FAA4C58E87AB6FB3F0F -:1047A0000000F0BF000040BE845D57134B57B03F80 -:1047B000B2934C19ED5EE43FBEDE02B90240F83F11 -:1047C000DE39028FC7C0743F8AAB1283000CC83F2A -:1047D00024D7E508B6D8F03F0F34580E5895FD3F62 -:1047E0000000F03F0000000000000000000000009A -:1047F00066732D3852C1E03F182D4454FB21F93F18 -:1048000066732D3852C1F03F182D4454FB21F93FF7 -:1048100066732D3852C10040182D4454FB210940C5 -:104820003FD038C6A6F104401EF0040F0CBFEFF3D2 -:104830000880EFF3098000F033B870471EF0040FD2 -:104840000CBFEFF30880EFF3098000F029B8704740 -:104850001EF0040F0CBFEFF30880EFF3098000F0A7 -:104860001FB870471EF0040F0CBFEFF30880EFF382 -:10487000098000F015B870471EF0040F0CBFEFF36D -:104880000880EFF3098000F00BB870471EF0040FAA -:104890000CBFEFF30880EFF3098000F001B8704718 -:1048A000E5F7BBBD704786B04EE0BDF80500011DC1 -:1048B00089B2DDF80D0000F085FADBF7E6FDDFF8E0 -:1048C000A044DFF8A054DFF8A0142846E5F7F2FA78 -:1048D000002810D12046441E0028F4D1002128468B -:1048E000E5F7D3FA0021DFF88404E5F7CEFA0FF2FA -:1048F000AC40DBF712FC022E01D1DEF72EFEDDF814 -:104900000D00002804D0E0F727FA0020CDF80D00B4 -:1049100049F64044DFF8585402212846E5F702FAE8 -:10492000002803D12046441E0028F5D142F210741D -:1049300080212846E5F7F6F9012803D12046441ED8 -:104940000028F5D1DBF79EFD01A9DFF8280400F06F -:104950005DFA9DF8070010F00306A6D0022EA4D041 -:1049600002D3032E59D0EFE7DFF804048089C04654 -:1049700000A80021016002220DF10701DDF777FB9D -:1049800002220DF105010DF10200DDF770FB04219B -:1049900000A800F017FABDF80500001DE0F7C4F903 -:1049A000CDF80D00BDF80500011D89B2DDF80D0040 -:1049B00000F04CFADBF769FDDFF8A443DFF8AC53F5 -:1049C000DFF8B4132846E5F775FA002810D1204621 -:1049D000441E0028F4D10021DFF88803E5F755FADA -:1049E00000212846E5F751FA0FF2B830DBF795FBC6 -:1049F000DBF748FD002CA7D001A9DFF8800300F009 -:104A000049FA002803D00FF2A430E5F788FFDFF859 -:104A100070130820DCF73AFA96E7D5488089C0463B -:104A20000921DFF8600300F011FADBF734FDD64C02 -:104A30000221D648E4F789FF002885D12046441E8C -:104A40000028F5D10021C748E5F71FFA0021C74823 -:104A5000E5F71BFA0FF25C30DBF75FFB74E7F8B5A4 -:104A6000CB4C2078401C2070DEF7ADFB6078401CFA -:104A70006070DEF77FF96078401E6070C0B2002879 -:104A800001D1DEF79AFB0120E6F718F801285DD185 -:104A90000120E6F71FF80025BE4E0121BE48E4F7CD -:104AA00054FF002847D096F9000000284AD0284635 -:104AB0003070AB4EAD4F0FE03046461E00280BD194 -:104AC0002946A848E5F7E1F929463846E5F7DDF932 -:104AD0000FF2E820DBF721FB3846E5F7E7F900287D -:104AE000EAD10221A948E4F730FF002808D0207855 -:104AF000012833D16068002830D0DEF75AFB2DE062 -:104B0000A049C87810F003000AD0012810D1B1F8EC -:104B10000100002804D0974800F0BCF9054607E0E2 -:104B2000964800F0B7F9054695490820DCF7AEF93C -:104B3000DBF7AEFC06E001203070311D8D4800F03F -:104B4000A9F90546002D01D0E5F7FAFE20780128E5 -:104B500004D16068002801D0DEF72BFB2078401ECE -:104B60002070F1BD10B58A4C2078401C2070DEF713 -:104B70002AFB6078401C6070DEF7FCF86078401E0D -:104B80006070C0B2002801D1DEF717FB0220E5F704 -:104B900095FF002802D00220E5F79CFF207801282D -:104BA00004D16068002801D0DEF703FB2078401EA6 -:104BB000207010BD10B5764C2078401C2070DEF7B8 -:104BC00002FB6078401C6070DEF7D4F86078401E0D -:104BD0006070C0B2002801D1DEF7EFFA0420E5F7DB -:104BE0006DFF00280BD00420E5F774FF012200219F -:104BF0000320DBF753FC62491020DCF747F92078EB -:104C0000012804D16068002801D0DEF7D2FA2078AC -:104C1000401E207010BD10B55D4C2078401C2070E7 -:104C2000DEF7D1FA6078401C6070DEF7A3F8607898 -:104C3000401E6070C0B2002801D1DEF7BEFA4FF40A -:104C40000060E5F73BFF002807D04FF40060E5F770 -:104C500041FF4B492020DCF719F92078012804D1C5 -:104C60006068002801D0DEF7A4FA2078401E20708A -:104C700010BD38B5464C2078401C2070DEF7A3FAF2 -:104C80006078401C6070DEF775F86078401E6070D8 -:104C9000C0B2002801D1DEF790FA4FF48040E5F76A -:104CA00063FB00281DD0364DEBF7BCFA00280CD072 -:104CB0000020EBF7C0FADBF747FC806EDBF709FA60 -:104CC00029460620DCF7E2F803E029460220DCF75B -:104CD000DDF84FF48040E5F75CFB4FF48000E5F72A -:104CE000F9FE2078012804D16068002801D0DEF7A1 -:104CF00060FA2078401E207031BD10B5244C207819 -:104D0000401C2070DEF75FFA6078401C6070DEF7B0 -:104D100031F86078401E6070C0B2002801D1DEF723 -:104D20004CFA4FF48050E5F71FFB00280BD01449D4 -:104D30004020DCF7ABF84FF48050E5F72AFB4FF446 -:104D40000030E5F7C7FE2078012804D1606800280C -:104D500001D0DEF72EFA2078401E207010BD000032 -:104D600080841E0088640240000800201064024015 -:104D700000300140586600202000001040660020EE -:104D8000F0580020A87A0020404B4C00000402405C -:104D90002438002094380020000002405478444D0C -:104DA000410000005278444D410000005075744DA0 -:104DB00061696C005245414459000000455854490E -:104DC0003000000038B50C460E4D2968C90706D5DD -:104DD00029684908490029602968C907FCD40022CC -:104DE00001462846E5F75CF807492846E5F775F8D7 -:104DF000214628464160C04601212846BDE834408E -:104E0000E5F743B8886402400008002030B5044646 -:104E10000D480D46017881B0491C0170DEF7D3F9C9 -:104E2000A06840B940212046EBF70CFADEF7CBF939 -:104E3000A0680028F6D029462046EBF743FA01B0D7 -:104E4000BDE83040DEF762BA2438002038B50C46A1 -:104E50000E4D2968C90706D5296849084900296007 -:104E60002968C907FCD4002201462846E5F718F84E -:104E700007492846E5F731F8214628464160C046F3 -:104E800001212846BDE83440E4F7FFBF106402402A -:104E900020000010F0B50E4F0546387881B00E4660 -:104EA000401C01243870DEF78EF9A868E968884252 -:104EB00004D231462846EBF7E3F90024787808B9A4 -:104EC000DEF77BF9DEF722FA204601B0F0BD00BF25 -:104ED00024380020D75A0108015B01082D5C010825 -:104EE000E15C010800000000355D010800000000E1 -:104EF0003561010800000000F0B52DED048B8DB088 -:104F000005460E46174600A80FF284413022DFF70F -:104F1000DFFEDFF838440A20A0630720E063206446 -:104F200005206064DFF83004DFF82414CDE90001C7 -:104F300000AA4FF03330DFF81C14C2E90201DFF899 -:104F40001804DFF81814C2E904014FF03330DFF819 -:104F50001014C2E90601DFF80C14C2E90801DFF8F9 -:104F60000814CDE90A010A2020662868142190FB64 -:104F7000F1F0E0663868022801D1052023E03068AE -:104F8000102818D0B0F5807F06D0B0F5806F08D01B -:104F9000B0F5006F0AD012E04FF480706066002018 -:104FA00011E04FF48060606602200CE04FF4006076 -:104FB0006066032007E010206066042003E04FF4E1 -:104FC00000706066012002EBC000D0E90023E748D2 -:104FD000E749DCF79BFC41EC180B53EC182B002045 -:104FE000E449DCF793FC41EC100B84ED140B84EDE9 -:104FF000120B53EC102BE048E049DCF787FCC4E9C6 -:105000001601202200212046DDF737F89FEDDE9BB8 -:10501000A06BDCF78DFD53EC192BDCF777FC53EC20 -:10502000182BDCF773FCC4E90001E06BDCF780FDB2 -:1050300053EC192BDCF76AFC53EC182BDCF766FCFD -:10504000C4E90201206CDCF773FD53EC192BDCF78B -:105050005DFC53EC182BDCF759FCC4E90401606CCF -:10506000DCF766FD53EC192BDCF750FC53EC182BE6 -:10507000DCF74CFCC4E906010020A0660120606753 -:10508000A06704F17C0020670DB0BDEC048BF0BD7F -:10509000AE48012141678167704700002DE9F04368 -:1050A0002DED048B8BB005469FEDB58B04A8182120 -:1050B000DCF736FD4FF000088DED000AF1EE601AC6 -:1050C000CDED011AB1EE410A8DED020A9F4C1E2270 -:1050D00000A9206FF2F7CDFF2868022802D14FF017 -:1050E000020901E04FF00309206F616F00290AD027 -:1050F000002800F025810088216E8842C0F22081BE -:10510000404660671CE1A16F002939D01E22216E44 -:1051100009B2F2F7D7FF94ED189AF8EEC90A80EEBB -:10512000200A10EE100ADCF7B9FBC4E908011E22C0 -:1051300019EE101A09B2206FF2F7E2FF94ED189AF7 -:10514000F8EEC90A80EE200A10EE100ADCF7A6FB82 -:10515000C4E90A011E2219EE101A09B2206FF2F7F3 -:10516000EDFFD4ED180AF8EEE00A80EE200A10EE0A -:10517000100ADCF793FBC4E90C014046A06745E048 -:105180001E224146F2F78EFF05461E22216E09B20D -:10519000206FF2F787FF064694ED180AB8EEC09A22 -:1051A00095ED000AD6ED000A30EE600A80EE090A9D -:1051B00010EE100ADCF772FBD4E90823DCF7D0FC10 -:1051C000C4E9080195ED010AD6ED010A30EE600A46 -:1051D00080EE090A10EE100ADCF760FBD4E90A231E -:1051E000DCF7BEFCC4E90A0195ED020AD6ED020A1D -:1051F00030EE600A80EE090A10EE100ADCF74EFB72 -:10520000D4E90C23DCF7ACFCC4E90C0118224146BC -:1052100004A8DCF732FF454604AE40E01E222946D2 -:1052200009B2206FF2F73EFF07463868DCF736FB1D -:10523000D4E90823DCF708FD41EC100B53EC102BEC -:10524000DCF764FBDDE90423DCF78AFCCDE904012B -:105250007868DCF723FBD4E90A23DCF7F5FC41ECA2 -:10526000100B53EC102BDCF751FBD6E90223DCF7D3 -:1052700077FCC6E90201B868DCF710FBD4E90C231F -:10528000DCF7E2FC41EC100B53EC102BDCF73EFB9F -:10529000D6E90423DCF764FCC6E904016D1C206E2A -:1052A0008542BBDBDCF744FC41EC190BDDE9040172 -:1052B00053EC192BDCF788FDCDE90401D6E9020196 -:1052C00053EC192BDCF780FDC6E90201D6E9040195 -:1052D00053EC192BDCF778FDC6E9040145460FE0D5 -:1052E00006EBC50090ED009B51EC180B53EC192B0D -:1052F000DCF7A6FE03D2B0EE498AF0EE698A6D1C97 -:105300004D45EDDBA56EE66ED4E9120153EC182B8A -:10531000DCF77EFE0AD8AE4201DA4FF00108002029 -:10532000A06694ED140B84ED120B09E0AE4205DA91 -:105330004FF0020894ED160B84ED120B681CA0666A -:1053400040460BB0BDEC048BBDE8F08300AC002000 -:105350009999C93F3333D33F9A9999999999E93FDC -:105360003333F33F333303403333E33F1F85EB5194 -:10537000B89E2340000014407B14AE47E17A843F7E -:105380000000000000000000000000000000E03FFE -:105390009A9999999999C93F333333333333E33F1A -:1053A0009A9999999999E93F333333333333F33FDA -:1053B0003333333333330340333333333333E33F24 -:1053C000CF490022CA630A6401F148024A6201F12E -:1053D000C4028A6201F5A072CA6201F5DE720A6334 -:1053E00001F50E724A6301F52D728A630B2802DA09 -:1053F0001E2048647047152802DA19204864704757 -:10540000432802DA142048647047C92802DA0F20C2 -:10541000486470470A20486470470000F0B52DEDDD -:10542000068B83B004460026B54DE86B00286AD190 -:1054300085ED000AC5ED010A85ED021AB0EE610A9C -:1054400085ED030AB0EE420A85ED050AB0EE620A68 -:1054500085ED040A30460290019000901E222946F4 -:10546000E86A00F0DCF81E22291DA86A00F0D7F8CF -:105470001E2205F10801686A00F0D1F81E2205F12C -:105480000C01A86B00F0CBF81E2205F11001686B2F -:1054900000F0C5F81E2205F11401286B00F0BFF8DA -:1054A000696C286C81422ADA1E2300AA09B2E86AD4 -:1054B00000F0CAF8B0EE408A1E2301AA696C09B256 -:1054C000A86A00F0C1F8F0EE408A1E2302AA696CB7 -:1054D00009B2686A00F0B8F8DFED880AB4EE608AB5 -:1054E000F1EE10FA0BD5F4EE608AF1EE10FA06D563 -:1054F000B4EE600AF1EE10FA01D50120E863286CE1 -:10550000401C286486E0AE6B6F6C1E22394609B2DF -:10551000304600F0D7F8F0EE408A1E22394609B234 -:10552000304600F0F5F8B0EE409A1E22394609B236 -:10553000304600F012F9B81E00EE900AB8EEE08A8C -:1055400078EEC90A30EEC00AC0EE088AC5ED068AB8 -:105550006E6B1E22394609B2304600F0B3F8B0EE49 -:10556000409A1E22394609B2304600F0D1F8F0EEDA -:10557000409A1E22394609B2304600F0EEF879EE24 -:10558000690A30EEC00A80EE089A85ED079A2E6B04 -:105590001E22394609B2304600F094F8F0EE409AE7 -:1055A0001E22394609B2304600F0B2F8B0EE40AAE9 -:1055B0001E22394609B2304600F0CFF879EECA0A09 -:1055C00030EEC00A80EE088A85ED088A9FED4DAB6B -:1055D00018EE900ADCF762F953EC1A2BDCF7F4FBB7 -:1055E000DCF772FA208019EE100ADCF757F953EC59 -:1055F0001A2BDCF7E9FBDCF767FA608018EE100A7B -:10560000DCF74CF953EC1A2BDCF7DEFBDCF75CFA29 -:10561000A0800126304603B0BDEC068BF0BD0388A8 -:10562000934201D30023038003885B1C03809BB259 -:10563000934201D300220280028800EB82000968B5 -:1056400041600120704700002DE9F0432DED028BF1 -:1056500081B004460D4616461F469FED2C8A4FF03A -:105660000008B4F9009000EE105AF8EEC08A3A46ED -:1056700000F028F880EE280A86ED000A05E0A7F180 -:1056800001090FFA89F908F101080FFA88F8A8450D -:1056900011DA04EB890090ED010AD6ED000A30EE34 -:1056A000600A00EE008AB9F1010FE8DBA9F10109F7 -:1056B0000FFA89F9E7E788EE280A01B0BDEC028B02 -:1056C000BDE8F08330B49FED110A0023B0F900402B -:1056D0000EE024B2002C06D400EB8405D5ED010ABF -:1056E00030EE200A641E24B2002C00D5541E5B1C30 -:1056F0001BB28B42EDDB30BC704700006F12033BE6 -:10570000DCDF002089AD84FA0A74313F000000001C -:105710002DE9F04104460D46164694ED010A002796 -:10572000B4F9008014E00FFA88F8B8F1000F07D43C -:1057300004EB8800D0ED010A00F03CF8A8F1010864 -:105740000FFA88F8B8F1000F01D5A6F101087F1C07 -:105750003FB2AF42E7DBBDE8F0812DE9F0410446FE -:105760000D46164694ED010A0027B4F9008014E0B6 -:105770000FFA88F8B8F1000F07D404EB8800D0EDD9 -:10578000010A00F00FF8A8F101080FFA88F8B8F143 -:10579000000F01D5A6F101087F1C3FB2AF42E7DB45 -:1057A000BDE8F081B4EE600AF1EE10FA01D4B0EE7B -:1057B000600A7047F4EE400AF1EE10FA01D4B0EE40 -:1057C000600A70470FB480B50FF23420DAF7A5FCF9 -:1057D0008348002181700121C17001710021417154 -:1057E00081710170DAF71FFC0069000601D4012005 -:1057F00000E0012002BC5DF814FB80B50FF2082028 -:10580000DAF78BFCDAF70FFC0069000616D574484E -:10581000002181700121C1700171002141718171EC -:10582000417801290AD1002141700E220A2101206C -:10583000DFF786F8032801D1032002BD012002BD55 -:1058400038B568488169497AC069407A4518DAF7FD -:10585000EAFB0069000631D5614CA078002802D12E -:105860000120A07032BD6078EDB2002D06D0012875 -:1058700024D10120E070002060701FE0002811D1C9 -:10588000E078012806D10E220A210120DFF758F81E -:105890000020E0700E220A210020DFF751F80120DD -:1058A000607032BD94F90000002802D0022803D0B5 -:1058B00004E000F005F801E000F034F8012032BD0A -:1058C00038B5474CE068B0F958502079012809D123 -:1058D000512D07DA00202071012000F07EF8002011 -:1058E00000F06EF8B4F90820954217DBA079401C4F -:1058F000A07140B2022813DB022020700020A071AA -:1059000029460FF20C10DAF708FC782020810120DC -:1059100000F063F8012000F053F801E00020A071CE -:10592000012032BD38B52E4CE068B0F95850502DEA -:1059300016DA6079401C607140B2022812DB002048 -:105940002070012000F049F8002000F039F8002014 -:105950006071502229460FF2C400DAF7DEFB01E045 -:1059600000206071012032BD10B50FF2BC00DAF7E3 -:10597000D4FB1B4CDEF7E2FF2061DAF7E5FDE060C7 -:105980000020207020691849C0F8401200F51070FE -:1059900016494160164981600FF20D01C160154939 -:1059A0000161012010BD0000014600200C4A12696F -:1059B00092F83122002A02D0002900D109E0704774 -:1059C0000D49012802D1012008707047002008709D -:1059D00070470A4890F900007047084908707047FE -:1059E00058AF002000000020C5570308FB570308EC -:1059F00041580308014C0108EEFD0020EDFD002098 -:105A0000537461727400000053746F7000000000E2 -:105A1000436C6F7365202564202564004F70656EAC -:105A20002025642025640000496E69740000000090 -:105A3000854800210160416081607047F0B52DED1F -:105A40000E8B81B0B0EE408AF0EE608AB0EE419AE3 -:105A50000027B0EE680A10EE100ADBF71FFF41ECDA -:105A60001D0BB0EE480A10EE100ADBF717FF41ECF1 -:105A70001E0B754E21F000413A46744BDCF7E0FAFC -:105A800018D251EC1D0B21F00041DCF7D9FA11D2EC -:105A9000B0EE490A10EE100ADBF700FF21F00041DA -:105AA0003A466A4BDCF7CCFA04D21046306070609C -:105AB000B060C5E09FED66AB9FED67BB9FED68CB27 -:105AC0003068DBF7EBFE04460D4653EC1E2B51EC21 -:105AD0001C0BDBF71BFF53EC1B2BDBF717FF53EC07 -:105AE0001A2BDCF771F922462B46DCF739F8EAF776 -:105AF0004FFB09EE900AC6ED009A7068DBF7CEFE08 -:105B000004460D4653EC1D2B51EC1C0BDBF7FEFE3F -:105B100053EC1B2BDBF7FAFE53EC1A2BDCF754F992 -:105B200022462B46DCF71CF8EAF732FB0DEE100A92 -:105B300086ED01DAB068DBF7B1FE04460D46B0EE43 -:105B4000490A10EE100ADBF7A9FE53EC1C2BDBF719 -:105B5000DDFE53EC1B2BDBF7D9FE53EC1A2BDCF7E5 -:105B600033F922462B46DBF7FBFFEAF711FB09EE80 -:105B7000100A86ED029A19EE900ADBF78FFE21F0EB -:105B8000004141EC1B0B1DEE100ADBF787FE41ECD8 -:105B9000180B21F0004141EC1C0B19EE100ADBF749 -:105BA0007DFE41EC1A0B53EC1B2B51EC1C0BDBF76D -:105BB000D7FF53EC1A2B23F00043DBF7D1FFEAF7B2 -:105BC000E7FA00EE100ADFED280AB4EE600AF1EE03 -:105BD00010FA2EDB51EC1A0B21F000410122234B6D -:105BE000DCF716FA25D8BBEE090AF4EE409AF1EE7E -:105BF00010FA0BD551EC180B21F0004153EC1A2B85 -:105C000023F00043DCF71CFA00D201279FED180AAD -:105C1000F4EE409AF1EE10FA0BDB51EC180B21F088 -:105C2000004153EC1A2B23F00043DCF709FA00D2B1 -:105C30000227002F03D0002030607060B06038462B -:105C400001B0BDEC0E8BF0BD64FD00200000E03F14 -:105C50000000000000408F400000000000004E40A7 -:105C6000E6C1631ADCA54C400100484200004440F4 -:105C70000100C84110B582B000208DF800008A4CA8 -:105C800004F1100314220D2104F50670CDF798FEDF -:105C900004F58A7314220D2104F50C70CDF790FEE3 -:105CA000EAF7BEFA002848D0DAF7BDF9A060E5F7B8 -:105CB000A9FEE6F7AEFBA0680178002903D02178A1 -:105CC00041F0010121700A21DAF710FAA068DAF731 -:105CD000E7F9A068C178002903D0217841F00201DA -:105CE00021704179002903D0217841F0040121700D -:105CF0008179002903D0217841F0080121702178B1 -:105D00000F2902D15521817500E081750022012102 -:105D10000846DAF7C3FBE7F75DF83221A068DAF747 -:105D20003BFBA068DAF7FDFADAF7ACFBDAF7B0FB79 -:105D3000DAF70AFC0021C16616BD002016BD80B549 -:105D4000FFF798FF5849486001BD0720CDF744FE92 -:105D5000FBE784B0E4F76AFE002801D0E4F701FE17 -:105D6000E4F7D6FD002801D0E4F7F0FD3E20EBF784 -:105D700077F80646DDF7FDFB4B4C04F51275B007CE -:105D80000FD56068C06EDAF798FBDDF74FFB04F1C2 -:105D90000C012846DDF743FD04F10C012846DDF730 -:105DA0008FFDF0060AD50020DAF77AFB1020E6F71F -:105DB000DBFE04F10C012846DDF782FDB0060CD5B0 -:105DC00004F10C012846DDF73AFD0420E6F7CCFE8D -:105DD00004F10C012846DDF773FD700703D56068F8 -:105DE000806EE6F742FA04F10C012846DDF78AFFDF -:105DF00030071FD4BAE7BDF80100001DDEF794FF9D -:105E0000CDF8090002220DF10301DCF730F902227E -:105E10000DF10101DDF80900801CDCF728F904F11F -:105E20000C02294600A8DEF740F800A904F50C7022 -:105E3000E6F772FA00A904F5067000F037F80028BA -:105E400094D19DF8030010F00300D4D00128F1D1C3 -:105E500004F10C02294600A8DEF796F9BDF801000E -:105E60000028E7D0DDF809009DF80310490718D590 -:105E70000421ADF803100121ADF8011002220DF14B -:105E80000301DCF7F4F802220DF10101DDF809004D -:105E9000801CDCF7ECF800A904F50C70E6F73CFA7E -:105EA000C8E7DEF759FFC5E72864002030B581B0A8 -:105EB00004460D46DDF787F90A48A16829B94078FC -:105EC00008B9DDF77AF9012009E00178491C017071 -:105ED00029462046EAF7F6F9DDF718FA002001B066 -:105EE00030BD00BF243800200FB400B595B00020AD -:105EF000019000900D220146DEF722FD022801D11B -:105F000002204AE0754A01201060BDF85A00019055 -:105F10009DF859000090012803D14FF48070009043 -:105F200015E0022803D14FF4007000900FE0032821 -:105F300003D14FF48060009009E0042803D14FF4AE -:105F40000060009003E0052801D11020009000A916 -:105F500001A8FEF7D1FFB4208DF8350046208DF85A -:105F6000360001208DF8370000208DF8080003204E -:105F700003900DF111000DA92022DEF799FE0A20F1 -:105F80008DF810000020ADF8320002A8DEF78AFD7F -:105F9000002801D1022000E0012015B05DF814FBBB -:105FA00000B593B0B4208DF8010046208DF80200B2 -:105FB00001208DF803008DF82000032009900DF1D9 -:105FC000290000A92022DEF773FE0A208DF82800A0 -:105FD0000020ADF84A0008A8DEF764FD002801D1D2 -:105FE000032002E0FFF754F8012013B000BD30B5E4 -:105FF00095B000A8DEF70AFD0BA8EFF707F8374CBD -:10600000BDF83A002071204600A991EC030AFFF781 -:1060100045F80546607A85420ED0022D05D1012053 -:1060200000F03CF80120207206E0012D04D101208F -:1060300000F034F8022020726572012015B030BDE6 -:1060400080B5DEF77BFC2549C86000220A7224492E -:10605000C0F8181200F5067022494160224981609B -:106060000FF20D01C1600FF23D010161012002BD7F -:106070001A48C06890F80902002801D10020704732 -:1060800008E080B5154800210172084600F006F8C6 -:10609000012002BD154890F90000704713490870AF -:1060A0007047000018B430220B7812FB0303012460 -:1060B0001C700B7812FB03035C700B7812FB03035C -:1060C0000D249C700B7812FB0300044A127AC270F4 -:1060D0000878401C087011BCD3E7000000FD0020C8 -:1060E000E95E0308A15F0308EF5F0308FFFD0020DE -:1060F0000FB410B5A0B09DF8890058490870012070 -:106100008DF88B00AA208DF889003C208DF88A003C -:1061100000208DF80000032001900DF1090022A954 -:106120002022DEF7C5FD0A208DF8080000A8DEF762 -:10613000B9FC002805D10FF26C10D9F7EEFF022050 -:1061400014E00BA8EAF7F7FF454C54220021204643 -:10615000DBF793FF00216165A16554220BA9DBF7F2 -:1061600086FF0FF25410D9F7D8FF012020B010BCE1 -:106170005DF814FB80B50A210320E6F7D6FA032860 -:1061800001D1032002BD0FF23C10D9F7C6FF012058 -:1061900002BD80B5DEF7D2FB304948603149C0F816 -:1061A000001100F58070304941600FF26D0181608F -:1061B0000FF20D01C1600FF2B5010161012002BDB6 -:1061C00010B594B0254C606890F8F10000281BD001 -:1061D0002078002818D0012012901190204984B016 -:1061E00068465422DEF774FD0FBCE7F737FC014622 -:1061F000C9B22078814207DB0FF2D400D9F78DFFB6 -:1062000000F005F8012000E0002014B010BD134894 -:10621000002101700120704700B595B000A8EAF791 -:106220008AFF0F48416D491C4165012902D100993F -:1062300081650FE033290DD300214165816D009AFE -:10624000914207D1542200A9DBF711FF0FF294000D -:10625000D9F763FF012015B000BD0000B0FD00209C -:1062600074EB0020F16003087561030810B50C465B -:106270003021227811FB020201231370227811FBD6 -:1062800002025370227811FB0202062393702278D7 -:1062900011FB02000121C170FFF7B9FF2078401CFB -:1062A000207010BD50443A205065646F4F70656E89 -:1062B0004661696C2053530050443A2053432053A5 -:1062C0005441000050443A2053432053544F00009F -:1062D00050443A2044696666537465704F7665721F -:1062E0002025640050443A205343205245534554DE -:1062F000000000003C0A560A700A8B0AA60AC10A6E -:10630000DD0AF80A150B310B4E0B6B0B880BA50B36 -:10631000C30BE10B000C1E0C3D0C5D0C7C0C9C0CAB -:10632000BD0CDD0CFE0C1F0D410D630D850DA80D80 -:10633000CB0DEE0D120E360E5A0E7F0EA40ECA0EA7 -:10634000EF0E160F3C0F630F8B0FB30FDB0F031015 -:106350002C1056108010AA10D41000112B115711B8 -:106360008311B011DE110B12391268129712C71285 -:10637000F712271359138A13BC13EF132214551461 -:106380008914BE14F31429155F159515CD1504163F -:106390003D167616AF16E91624175F179B17D81708 -:1063A000151852189118CF180F194F199019D119A3 -:1063B000131A561A9A1ADE1A221B681BAE1BF51BFB -:1063C0003D1C851CCE1C181D621DAD1DF91D461EF1 -:1063D000941EE21E311F811FD11F23207520C8206B -:1063E0001C217121C7211D227422CD222623802346 -:1063F000DA2336249324F1244F25AF250F26712666 -:10640000D32636279B2700286728CE283629A0299F -:106410000B2A762AE32A512BC02B302CA12C132DCA -:10642000862DFB2D712EE82E602FD92F5330CF30C3 -:106430004C31CA314A32CA324C33D0335434DA3454 -:106440006235EA35743600378D371B38AA383C3947 -:10645000CE39623AF83A8F3B273CC13C5D3DFA3D6C -:10646000983E383FDA3F7E402341CA4172421C4386 -:10647000C84376442545D64589463D47F447AC4850 -:106480006649224ADF4A9F4B614C244DEA4DB14E8A -:106490007B4F46501451E351B55289535E543655E3 -:1064A0001156ED56CB57AC588F59745A5C5B465C0D -:1064B000325D215E125F0560FB60F361EE62EB63AB -:1064C000EB64ED65F266FA670469116A206B336C60 -:1064D000486D5F6E7A6F9770B871DB7201742A75C0 -:1064E00056768577B778EC79247B5F7C9D7DDF7E5F -:1064F000248000003D0A580A720A8D0AA80AC30ABD -:10650000DF0AFB0A170B330B500B6D0B8A0BA70B23 -:10651000C50BE30B020C210C400C5F0C7F0C9F0C95 -:10652000BF0CE00C010D220D430D650D880DAA0D69 -:10653000CD0DF10D140E380E5D0E820EA70ECC0E91 -:10654000F20E180F3F0F660F8D0FB50FDD0F0610FF -:106550002F1059108210AD10D71002112E115A11A0 -:106560008611B311E1110E123D126B129A12CA126A -:10657000FA122B135C138D13BF13F2132514591445 -:106580008D14C114F6142C1562159915D015081622 -:1065900040167916B316ED16281763179F17DB17E9 -:1065A000181856189418D318131953199419D51983 -:1065B000181A5A1A9E1AE21A271B6C1BB31BF91BD6 -:1065C000411C891CD21C1C1D671DB21DFE1D4B1ECB -:1065D000981EE71E361F861FD61F28207A20CD2042 -:1065E00021217621CC2122227A22D2222B2385231B -:1065F000E0233C249924F6245525B5251526772635 -:10660000D9263C27A12706286D28D4283D29A6296C -:10661000112A7D2AE92A572BC62B362CA82C1A2D95 -:106620008D2D022E782EEF2E672FE02F5B30D63087 -:106630005331D2315132D2325433D8335C34E23414 -:106640006A35F2357D36083795372338B338443903 -:10665000D7396B3A003B973B303CCA3C663D033E22 -:10666000A23E423FE43F87402D41D3417C42264336 -:10667000D24380442F45E04593464847FE47B648FD -:1066800071492D4AEB4AAA4B6C4C304DF54DBD4E2D -:10669000864F52502051EF51C15295536B54435580 -:1066A0001D56FA56D857B9589C59825A695B535CA3 -:1066B000405D2F5E205F136009610162FC62FA6336 -:1066C000FA64FC65016709681369206A306B426CE3 -:1066D000586D6F6E8A6FA870C871EB7212743B753B -:1066E00067769677C878FD79367B717CB07DF17ED0 -:1066F00036807F810FB480B51A2200210846DEF76C -:106700001FF9022801D102200EE01A2201210020E7 -:10671000DEF716F9022801D1022005E01A20E5F77C -:1067200043FEFEF74DFE012002BC5DF814FB80B570 -:106730001A2200210120DEF703F9022801D10220EC -:1067400002BD1A2201210846DEF7FAF8022801D11B -:10675000022002BD012002BDF0B52DED028B8BB0F1 -:106760004A48846BA069E1684518002600A8DEF756 -:106770004DF99FED478B0398DBF790F853EC182BFE -:10678000DBF722FBDBF7A0F928800498DBF786F81B -:1067900053EC182BDBF718FBDBF796F968800598AC -:1067A000DBF77CF853EC182BDBF70EFBDBF78CF9EF -:1067B000A8803C4F3878002809D1381D03A9D1ECB6 -:1067C000031A00A991EC030AFEF728FE0646012EE3 -:1067D00002D10120387006E03878002803D100206B -:1067E000B880F8803881B888E880F88828813889AE -:1067F00068810120A0770BB0BDEC028BF0BD80B5A5 -:10680000DEF79CF8244908602449C0F8201400F2FF -:10681000204023494160244981600FF21101C16089 -:106820000FF235010161012002BD00001A48006825 -:1068300090F81104002801D10020704705E080B5D0 -:10684000002000F006F8012002BD184890F9000071 -:10685000704716490870704718B430220B7812FB45 -:10686000030301241C700B7812FB03035C700B788C -:1068700012FB03031A249C700B7812FB0300002206 -:10688000C2700878401C087011BCD8E700000020D6 -:1068900089AD84FA0A74313FD4FD0020F5660308FF -:1068A0002F67030840FD002059670308FDFD002005 -:1068B0000FB480B50FF21010D9F72FFC1122092167 -:1068C0000020DEF73DF8022805D10FF21010D9F7AD -:1068D00024FC022000E0012002BC5DF814FB80B51E -:1068E0000FF20410D9F719FC112209210120DEF75B -:1068F00027F8032805D10FF20410D9F70EFC032066 -:1069000002BD012002BD01207047000010B50FF24A -:10691000F800D9F702FC264CDEF710F82060D9F712 -:1069200013FE606020682349C0F8B81200F52E708D -:1069300021494160214981600FF20D01C1600FF2D0 -:1069400039010161012010BD1948006890F8A902C1 -:10695000002801D10020704705E080B5002000F03C -:1069600006F8012002BD174890F90000704715494C -:10697000087070470000000018B430220B7812FB3A -:10698000030301241C700B7812FB03035C700B786B -:1069900012FB030311249C700B7812FB0300084ABE -:1069A0001278C2700878401C087011BCD5E700004E -:1069B00090FD0020B1680308DF6803080769030839 -:1069C000F0FD0020EFFD00205374617274204368D5 -:1069D00065636B4C696768744C75780053746172B9 -:1069E00074204661696C0000436865636B4C69679D -:1069F00068744C75782053746F70000053746F7016 -:106A0000204661696C000000436865636B4C6967F0 -:106A100068744C757820496E697400008168C2689A -:106A200091420BD107E002681168891853685B181E -:106A3000C36008320260C2689142F4D04A1C82608E -:106A4000087870472DE9F04D88B000F108010391F6 -:106A500001684A08039B03EBC202049200220592DC -:106A6000069200EB810101F10806406800F0010187 -:106A70000291400806EBC00001900024154601E099 -:106A8000AC4205D10198864202D108B0BDE8F08D34 -:106A900000F077F8074617F0030803D100F071F80B -:106AA00000F10308381100900F2819D100F069F89F -:106AB0000F30009014E000F064F88246AC420DD133 -:106AC0000198864208BFECF76BFD3468029800B16C -:106AD0004C44706805190836AC42F1D004F801AB9B -:106AE000B8F10108E7D100980028C9D000F049F8B2 -:106AF0008046B81000F00300032804BF03A8FFF786 -:106B00008DFF37462146AB4608EB002006E0801A91 -:106B1000083F79683A6801EB020B59463A688A1ACD -:106B20008242F4D3404200EB010A4FF0000805E036 -:106B30009DF81C0004F8010B08F101080098801C66 -:106B400080459DD0DA4507D157F804AB57F8040BC0 -:106B500000EB0A0BDA45F7D01AF8010B8DF81C0090 -:106B6000AC42E5D10198864208BFECF719FD3468C4 -:106B7000029800B14C44706805190836AC42F1D057 -:106B8000D6E703A84AE700000FB480B50FF218104B -:106B9000D9F7C3FA0F2201210020DDF7D1FE022828 -:106BA00005D10FF21410D9F7B8FA022000E0012045 -:106BB00002BC5DF814FB80B50FF20810D9F7ADFAEE -:106BC0000F2201210846DDF7BBFE032805D10FF295 -:106BD0000410D9F7A2FA032002BD012002BD80B53E -:106BE000012000F035F8002000F02BF8012002BD54 -:106BF00080B50FF2EC00D9F790FADDF79FFE24493B -:106C000008602449C0F8681200F51A7022494160F2 -:106C1000224981600FF20D01C1600FF23D01016157 -:106C2000012002BD1A48006890F85902002801D1DD -:106C30000020704708E080B5002000F009F801202E -:106C400002BD174908707047164890F90000704758 -:106C5000144908707047000018B430220B7812FBFA -:106C6000030301241C700B7812FB03035C700B7888 -:106C700012FB03030F249C700B7812FB0300084ADD -:106C80001278C2700878401C087011BCD3E700006D -:106C9000C4FD0020896B0308B76B0308DF6B030892 -:106CA000F5FD0020F4FD00205374617274204779D3 -:106CB000726F2054656D7000537461727420466168 -:106CC000696C00004779726F2054656D70205374B1 -:106CD0006F70000053746F70204661696C00000093 -:106CE0004779726F2054656D7020496E6974000099 -:106CF00052480021017041608160704770B50446C0 -:106D000000254E4E307800282CD12068DAF7C6FDD9 -:106D100021F000412A464A4BDBF792F919D260680C -:106D2000DAF7BCFD21F000412A46454BDBF788F934 -:106D30000FD2A068DAF7B2FD21F000410122414BE9 -:106D4000DBF766F905D87068401C70602846B060B3 -:106D500004E0B068401CB060284670607068052888 -:106D600062DB28E0032837D12068DAF797FD21F0AD -:106D700000412A46324BDBF763F917D26068DAF735 -:106D80008DFD21F000412A462D4BDBF759F90DD23C -:106D9000A068DAF783FD21F000410122294BDBF7DF -:106DA00037F903D87068401C706001E028467060B5 -:106DB0007068052840DB94ED020AB5EE400AF1EE5A -:106DC00010FA03DD01252846307002E0022528462E -:106DD0003070002070602FE0012801D002282BD1F4 -:106DE0002068DAF75BFD21F000410122144BDBF74C -:106DF0000FF913D96068DAF751FD21F00041012243 -:106E00000F4BDBF705F909D9A068DAF747FD21F048 -:106E100000412A460B4BDBF713F903D2B068401C44 -:106E2000B06001E01046B060B068052804DB0325BF -:106E3000284630700020B060284670BD70FD0020EC -:106E40000000F83F000021404B48002101704160E4 -:106E50008160704770B506460024474D28780028A9 -:106E60002BD13068DAF71AFD21F000412246434B5E -:106E7000DBF7E6F818D27068DAF710FD21F0004170 -:106E800022463E4BDBF7DCF80ED296ED020ADFED30 -:106E9000390AB4EE600AF1EE10FA05DB6868401CAE -:106EA00068601046A86004E0A868401CA86010460E -:106EB00068606868052853DB27E002282BD130681A -:106EC000DAF7ECFC21F0004122462C4BDBF7B8F856 -:106ED00016D27068DAF7E2FC21F000412246274B17 -:106EE000DBF7AEF80CD296ED020ADFED220AB4EE23 -:106EF000600AF1EE10FA03DB6868401C686001E08C -:106F0000104668606868052832DB01242046287036 -:106F1000104668602CE001282AD13068DAF7BEFC00 -:106F200021F000410122154BDBF772F812D970688D -:106F3000DAF7B4FC21F000410122104BDBF768F8CE -:106F400008D996ED020AF2EE020AB4EE600AF1EEFA -:106F500010FA03D5A868401CA86001E02046A8608C -:106F6000A868052804DB0224204628700020A860B9 -:106F7000204670BD0100104110FD00200000E03FE0 -:106F80000FB480B5102201210020DDF7D9FC0228C2 -:106F900001D1022002E0FEF74BFD012002BC5DF8AA -:106FA00014FB80B5102201210846DDF7C9FC032837 -:106FB00001D1032002BD012002BD30B58BB000A875 -:106FC000DDF724FD03A890EC030AFEF737FD044625 -:106FD000324D2878A0420FD0012C05D1012000F0BD -:106FE0003DF80120687006E0022C04D1012000F079 -:106FF00035F8022068702C7001200BB030BD80B5D0 -:10700000DDF79CFC2549486000224A702449C0F8FD -:10701000901200F5247023494160234981600FF2EA -:107020001101C1600FF23D010161012002BD0000AC -:107030001A48406890F88102002801D1002070476A -:1070400008E080B5154800214170084600F006F8B8 -:10705000012002BD154890F90000704713490870DF -:107060007047000018B430220B7812FB0303012490 -:107070001C700B7812FB03035C700B7812FB03038C -:1070800010249C700B7812FB0300044A5278C270E3 -:107090000878401C087011BCD3E70000C87B0020B2 -:1070A000816F0308A36F0308BB6F0308FA7B0020FE -:1070B0000901002806D500F00F003D4A801800F8AD -:1070C000041C70473B4A8154704710B5B0F1807F73 -:1070D00001D3012010BD384C0002000A401E606040 -:1070E0000F214FF0FF30FFF7E3FF0020A0600720E3 -:1070F0002060002010BD10B5304C2078401C20705E -:1071000000F06AF82078012804D16068002801D0D6 -:10711000DCF74FF82078401E207010BD10B5DCF76A -:1071200052F8264C6078401C607000F091F82448BA -:1071300000684FF47A71B0FBF1F0FFF7C6FF00284A -:1071400000D0FEE71F48204901600E214FF0FF30BC -:10715000FFF7AEFF6078401E6070C0B2002803D118 -:10716000BDE81040DCF729B810BD0000174C4FF403 -:1071700000512046E2F7F2FB30BF4FF400512046A9 -:10718000E2F7EAFBF3E700001EF0040F0CBFEFF399 -:107190000880EFF3098000F01DB80D480168002950 -:1071A00005D5016841F00041016000F0B1B8FEE78B -:1071B00018ED00E000E400E010E000E024380020DA -:1071C000B838002008ED00E0000000080010024080 -:1071D0002CED00E0E3F721B910B50948016A491C1C -:1071E0000162426A891A5CBF012181710548046805 -:1071F00024B1606880472468002CFAD110BD00BF1C -:1072000024380020F07B002080B54FF44070E3F775 -:1072100069FC3348016841F470010160314801683C -:1072200041F0010101600021816001682E4A114096 -:1072300001602E494160016821F480210160002134 -:10724000C16000F02CF82A484FF00061016001BDD8 -:107250002848416801F00C01274A082913D1016828 -:10726000036803F03F03B2FBF3F20168C1F3881136 -:1072700051430268C2F30142521C5200B1FBF2F1C9 -:107280001E4A116101E01D490A611C494068C0F3B2 -:107290000310405C0A6922FA00F008617047154843 -:1072A000C16B41F08051C1634168416041684160F8 -:1072B000416841600821016011494FF4C0620A60D1 -:1072C000416821F4000141600E480F4901600F48F8 -:1072D000016821F4404141F48041016070470000A1 -:1072E00088ED00E000380240FFFFF6FE1030002479 -:1072F00008ED00E0043802400024F400A838002023 -:10730000003C0240843802404031004000700040A0 -:10731000019810F0040006BFEFF308800830EFF387 -:107320000980816901F10201816170470FB480B564 -:10733000072200210846DDF703FB022801D10220C5 -:1073400004E09DF80800FCF7BDFC012002BC5DF8DC -:1073500014FB80B5072200210120DDF7F1FA032894 -:1073600001D1032002BD012002BD10B582B0002072 -:107370008DF80000314C00A96068FCF7B9FC0028CA -:1073800006D0012000F03BF89DF8000020706070EE -:10739000012016BD10B5294CDDF7D0FAA060D9F751 -:1073A000D3F8606000202070A0682549C0F828113B -:1073B00000F5947023494160234981600FF20D016B -:1073C000C1600FF241010161012010BD01460020A2 -:1073D0001A4A926892F81921002A02D0002900D195 -:1073E00009E0704780B5154800210170084600F09B -:1073F00006F8012002BD154890F9000070471349B6 -:107400000870704718B430220B7812FB0303012474 -:107410001C700B7812FB03035C700B7812FB0303E8 -:1074200007249C700B7812FB0300044A1278C27088 -:107430000878401C087011BCD4E70000907B002045 -:107440002D730308537303086B730308F97B002043 -:107450000FB480B5152200210846DDF771FA022825 -:1074600001D1022002E0FFF7EFFC012002BC5DF831 -:1074700014FB80B5152200210120DDF761FA0328F5 -:1074800001D1032002BD012002BD10B53148406882 -:10749000FFF7E0FC044664B2002C05D0012000F0A8 -:1074A00037F8204600F037F8012010BD10B5294C00 -:1074B000DDF744FAA060D9F747F86060002020703B -:1074C000A0682549C0F8581300F55670234941605B -:1074D000234981600FF20D01C1600FF2410101618A -:1074E000012010BD1B48806890F84903002801D195 -:1074F0000020704708E080B516480021017008465A -:1075000000F006F8012002BD164890F9000070470F -:107510001449087070470F490870704718B430223A -:107520000B7812FB030301241C700B7812FB03037E -:107530005C700B7812FB030315249C700B7812FB14 -:107540000300044A1278C2700878401C087011BC0D -:10755000D1E7000034FD0020517403087374030860 -:107560008B740308F2FD00200FB480B517220021B0 -:107570000846DDF7E5F9022801D1022002E0FFF715 -:10758000B7FB012002BC5DF814FB80B51722002177 -:107590000120DDF7D5F9032801D1032002BD012028 -:1075A00002BD10B531484068FFF7A8FB044664B23D -:1075B000002C05D0012000F037F8204600F037F805 -:1075C000012010BD10B5294CDDF7B8F9A060D8F73F -:1075D000BBFF606000202070A0682549C0F8A81398 -:1075E00000F56A7023494160234981600FF20D0163 -:1075F000C1600FF241010161012010BD1B4880688C -:1076000090F89903002801D10020704708E080B568 -:10761000164800210170084600F006F8012002BD5E -:10762000164890F9000070471449087070470F49D8 -:107630000870704718B430220B7812FB0303012442 -:107640001C700B7812FB03035C700B7812FB0303B6 -:1076500017249C700B7812FB0300044A1278C27046 -:107660000878401C087011BCD1E7000058FD0020CC -:10767000697503088B750308A3750308FEFD0020D8 -:107680004BDF3CE02BE119E205E3F0E3D9E4C0E590 -:10769000A5E687E768E846E921EAF9EACFEBA1EC3D -:1076A00070ED3BEE03EFC6EF86F041F1F8F1AAF280 -:1076B00057F300F4A3F441F5DAF56DF6FBF684F721 -:1076C00006F884F8FBF86EF9DAF942FAA4FA00FB3E -:1076D00058FBABFBF9FB42FC87FCC8FC04FD3DFDFD -:1076E00072FDA3FDD1FDFCFD23FE48FE6AFE8AFE6D -:1076F000A8FEC3FEDCFEF3FE09FF1CFF2FFF40FFC8 -:1077000063019701D20116026302BC0220039303B6 -:107710001604AA0453051206EA06DE07F108260A33 -:10772000800B020DB00E8D109B12DD145417011A40 -:10773000E51CFD1F4823C126642A2A2E0C3201367F -:10774000FF39FD3DF241D4459A493D4DB7500154B2 -:107750001A57FD59AA5C215F636171634E65FC662F -:107760007F68D9690D6B206C146DEC6DAB6E546F36 -:10777000E86F6B70DE7042719B71E8712C726772FA -:1077800010B582B0DBF742FEFFF7C8FCFEF7D7FA70 -:107790001A4C4FF4806000902346194A642104F586 -:1077A00000501C3000F036F84FF4A050009004F563 -:1077B0008063144A4B2104F5005000F02BF84FF47D -:1077C0008060009004F5C0530F4A322104F5005048 -:1077D000383000F01FF84FF48060009004F5E0535B -:1077E0000A4A0A2104F50050543000F013F8084802 -:1077F00001210170DBF7BFFC002016BDF03800202E -:10780000A7480308535D030835D301084B5D0308FF -:10781000FE7B0020F0B482B00025069C00262F4697 -:10782000AC46A0E8E010E0C01C380C4D4174017C6F -:107830002D7802B029430174E118C908C90041F844 -:10784000506D4FF080734B64054B0B64CA646FF04E -:1078500002024A624160F0BCDBF7A3BDFF7B00205F -:107860006B31010843F63001C4F202014FF09F0270 -:107870000A6040F20000C4F202004FF6FF73CAF63D -:10788000FF3303604FF6BF63CFF6FF7300F58060F0 -:1078900003604FF6FF73CFF6FF7300F5806003605F -:1078A00000F58060036000F58060036040F20F0324 -:1078B000C0F2000341F60040C4F2020003604FF042 -:1078C00000020A6001488047014800470972030826 -:1078D0004D7B0308000100FF0000000001FF0000D5 -:1078E00000FF0000000100FF000100000000010196 -:1078F000000000010000000100FF00FF0000000088 -:10790000FF01000000FF000000FF00010001000077 -:107910000000FFFF00000001000000FF80B5DDF760 -:107920000DF8064981630649C163064901640649A9 -:10793000416406498164012002BD0000F14B010849 -:10794000ED4B0108F94B0108FD4B0108014C010802 -:1079500010B5074979441831064C7C44163404E0CC -:10796000081D0A68511888470146A142F8D110BD88 -:1079700098000000E4000000D75A0108DD5F01080C -:107980007F6001080000000000000000000000000F -:10799000000000000000000000000000817B0108E2 -:1079A000A17C0108D77C0108F77C010800000000D9 -:1079B000E57F01080000000091800108FB7C0108C0 -:1079C000817B0108A17C0108D77C0108F77C0108B4 -:1079D000000000007B7F010800000000918001088A -:1079E000FB7C0108C9610108EB610108CF62010855 -:1079F0005D63010800000000B163010800000000A1 -:107A0000E76C0108116D0108E39EFDFF10430000C3 -:107A1000F0380020704E000094AF002000000000FD -:107A200025F0FFFF0200000002000000C0BFFCFFC5 -:107A30005700000000AC00209403000009F0FFFF95 -:107A40000200000002000000FBBFFCFFD6030000A4 -:107A500000000020EE3800005B494E564E5D616329 -:107A600063655F7368696674282564293A20256414 -:107A700020256420256400004EF68851CEF20001D6 -:107A8000086840F4700008604FF00070E1EE100AE2 -:107A9000704700000A5B494E564E5D414343454CDA -:107AA0005F4D474D5432203A202564000120C046E6 -:107AB000002801D0FFF74CFF0020FFF761FE00F027 -:107AC00000F800F001B8000007463846F1F776F9F3 -:107AD000FBE70000100000000800000004000000A8 -:107AE000020000000100000041522D25642C256495 -:107AF0002C25642C25640000474D2D494F46202538 -:107B000064000000474D2D4346202564000000001E -:107B1000474D2D524631202564000000474D2D521F -:107B2000463220256400000052030000EE020000EF -:107B3000EE02000000000000000000000000000055 -:107B400047797243616C3D2564000000C046C04621 -:107B5000FFF792FFFFF7AAFF4148532D453200007F -:107B60004148532D453300004148532D4534000012 -:107B70004148532D453100005354302D3200000050 -:107B800041522D534C50000041522D53544200009D -:107B900041432D52463100004149532D534C500072 -:107BA000474D2D5246310000474D2D5046310000C3 -:107BB000474D2D5046320000474D2D4F000000002C -:107BC000474D2D534B495000890E830F7D1077117F -:107BD00047522D534C50000047522D535442000041 -:107BE00047522D52463100004748532D4532000080 -:107BF0004748532D453300004748532D4534000076 -:107C00004748532D453500004748532D4536000061 -:107C10004748532D453700004748532D453800004D -:107C20007F7F7F000000000000000000FCF7FCBD2B -:107C3000FFF7AABAFCF702BEFCF70ABEFCF712BEB9 -:107C4000FCF71ABEFCF722BEDBF762BAFFF753BAA5 -:107C5000FFF7FEBFFFF7FEBFFFF7FEBFFDF709B856 -:107C6000FFF7FEBFFFF7FEBFFCF7F9BEFCF77ABFD8 -:107C7000FCF7A0BFFFF7FEBFFFF7FEBFFFF7FEBF99 -:107C8000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF28 -:107C9000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF18 -:107CA000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF08 -:107CB000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF8 -:107CC000FFF7FEBFE9F719B8FFF7FEBFFFF7FEBFEA -:107CD000FFF7FEBFFFF7FEBFFFF7FEBFFCF7E2BDF9 -:107CE000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC8 -:107CF000FCF791BFFDF701B8FFF7FEBFFFF7FEBF2E -:107D0000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA7 -:107D1000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF97 -:107D2000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF87 -:107D3000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF77 -:107D4000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF67 -:107D5000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF57 -:107D6000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF47 -:107D7000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF37 -:107D8000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF27 -:087D9000FFF7FEBFFFF7FEBF85 -:00000001FF +:10000000709400201582030859570308397B0308B0 +:100010006D57030881570308955703080000000037 +:10002000000000000000000000000000A9570308C5 +:10003000BD57030800000000B1130108A77A0308A8 +:1000400025860308298603082D860308A35B030879 +:1000500035860308398603088F590308955A030823 +:10006000E55A0308498603084D86030851860308AC +:1000700055860308598603085D86030861860308D0 +:1000800065860308698603086D8603087186030880 +:1000900075860308798603087D8603088186030830 +:1000A00085860308898603088D86030891860308E0 +:1000B00095860308838F01089D860308A18603089F +:1000C000A5860308A9860308AD860308D55703084B +:1000D000B5860308B9860308BD860308C1860308F0 +:1000E000475B03082B5C0308CD860308D186030811 +:1000F000D5860308D9860308DD860308E186030850 +:10010000E5860308E9860308ED860308F1860308FF +:10011000F5860308F9860308FD86030801870308AE +:1001200005870308098703080D870308118703085B +:1001300015870308198703081D870308218703080B +:1001400025870308298703082D87030831870308BB +:1001500035870308398703083D870308418703086B +:1001600045870308498703084D870308518703081B +:1001700055870308598703085D87030861870308CB +:100180006587030869870308DFF8980C00787047D3 +:100190002DE9F0418CB001F08BFB0446DFF8885C60 +:1001A0002E683FE096F9080007283AD00B2838DA85 +:1001B00006F10807B86C002802D5E16E0818B8648B +:1001C0004FF0FF313046FA6D926990478046B8F1A2 +:1001D000010F04D197F84C00B96D09698847B8F14F +:1001E000020F0BD1797E38697A688018BA6D52692E +:1001F0009047002802D0304601F06AFC00213046CA +:10020000FA6D92699047022801D10120B875012149 +:100210003046FA6D92699047022802D1304601F0CB +:1002200003FD3668AE42BDD1206E00280BD00A20F7 +:100230008DF8080002208DF80000E06EADF82A006D +:1002400000A80FF091FF01200CB0BDE8F08130B59F +:1002500085B004460D46CA208DF800002888ADF808 +:1002600001000220ADF80300BDF80100001D10F0F0 +:1002700081F8CDF8090002220DF1030110F0A4F875 +:1002800002222946DDF80900801C10F09DF82A881A +:100290002146DDF80900001D10F096F800202880A6 +:1002A00000A9DFF8880B10F095F805B030BDC0F557 +:1002B0007A60322801DA012070470020704780B54B +:1002C00010F0B7F8407B002804D001F071FBDFF894 +:1002D000341E086001BD80B501F06AFBDFF8281EFE +:1002E000086001BD18B400F10C030422DFF8181EE9 +:1002F0005C7DDB68C0681818201818BC10F064B862 +:1003000030B41488651C1580052565541488651C57 +:100310001580635413885C1C1480007A585430BCD8 +:10032000704732B515461C4621884A1C2280372268 +:100330004A5521884A1C2280007A4855022200A989 +:100340002088401910F040F82088801C208031BDA2 +:10035000F8B517461D4600F10C06069CA4B2B27D06 +:100360006243C06809182888C01910F02DF8288841 +:10037000B17D614311FA80F02880F1BD30B400F105 +:1003800010039B7C914203D1006990FBF3F00DE0D8 +:100390000C46154603D2281B90FBF3F006E00069DB +:1003A000001B90FBF3F095FBF3F1081880B230BC12 +:1003B000704700F110018A688B7CD2188A6000694E +:1003C000824201D100208860002088737047F8B510 +:1003D00004460D461E46069F92B289B2FFF7CEFF35 +:1003E00000903B46324629462046FFF7B1FFF1BD5B +:1003F000F8B5044615461E462269002D00D1154663 +:10040000069F0097FFF7E3FF2069854206DA009711 +:1004100033462A4600212046FFF7D9FFF1BD2DE9DA +:10042000FC4104460D461646A1696069002815D5B1 +:1004300000270A4692B289B22046FFF79FFF804606 +:1004400033462A4641462046FFF76BFFA2690096D5 +:100450002B4611462046FFF7CBFF2EE0814216DAED +:1004600001270A4692B2014689B22046FFF786FF6D +:10047000804633462A4641462046FFF752FF009603 +:100480002B46A26961692046FFF7B2FF15E00227FB +:100490000A4692B2014689B22046FFF76FFF8046B6 +:1004A00033462A4641462046FFF73BFF00962B463F +:1004B000A26961692046FFF78AFFA069019060691F +:1004C00000903B46424694F908100FF20C0010F0E1 +:1004D0002BF8BDE8F38100005061636B203D25647B +:1004E0002025642025642025642025640000000068 +:1004F00070B582B004460D461646A06C012811DA8C +:10050000A07F012811D133462A4601212046FFF75A +:1005100008FF0120009033462A46A1692046FFF7D4 +:1005200017FF02E02046FFF77AFF012332462946F3 +:100530002046FFF7E5FEA0696061A36CE26C94F9C8 +:1005400008100FF20C000FF0EFFFA06CE06473BD19 +:10055000666C75736820256420256420256400007E +:100560002DE9F84304460D46164601F0A1F98146EF +:100570000FF05FFF804604F10807B87D002802D025 +:100580002046FFF7AFFE386C0128C0F2898098F84A +:100590000E00002844D0B87D002800F0CD80786C93 +:1005A000D9F86C10401A7864B87E3969FA68531A21 +:1005B000834205D0002A2FD1BA68511A81422BD12B +:1005C00094F90820397E0FF274100FF0ADFF397ED8 +:1005D00000291ED094F908200FF278100FF0A4FF24 +:1005E0003869B97E421892B2F96889B22046FFF79D +:1005F000C5FE33462A4601462046FFF792FE009686 +:100600002B463869B97E4218F9682046FFF7F0FE9C +:1006100002E04FF0FF30F8602046BDE8F243C8E644 +:1006200098F80E00002840F08780786CD9F86C109C +:10063000401A786401282CDA386C7864386BD0F86A +:100640000C8094F908308268396C0FF224100FF096 +:100650006BFFB868B97E90FBF1F0396C91FBF8F153 +:10066000814202DB4FF0FF30F860B87D00280AD0ED +:100670002046FFF79EFE324629462046FFF7CFFE72 +:100680003869F86058E0324629462046BDE8F8430C +:10069000C5E6B87D00284FD02046BDE8F24388E685 +:1006A000B87D002848D094F9080098F80A1000296D +:1006B00028D0072814D133462A4601212046FFF7C7 +:1006C00030FE0120009033462A4639692046FFF764 +:1006D0003FFE7A7894F908100FF2A8000FF024FF7B +:1006E00094F90800082822D197F92C0001281EDB74 +:1006F000386B8068B0F57A7F0BD1B7F94E000128CE +:1007000007DA19E0082804D1DFF8000A4068002859 +:1007100012D133462A4601212046FFF702FE01206E +:10072000009033462A4639692046FFF711FE2046DD +:10073000FFF73FFE3869F860BDE8F18373757370A9 +:10074000656E64206669666F2066756C6C20256432 +:100750002025640073757370656E64206669666F2A +:100760002066756C6C203220256420256400000012 +:100770006669666F2066756C6C332025642025647D +:100780002025640041502053757320256420256482 +:1007900000000000F8B504460D46DFF88C663768A7 +:1007A00005E02A4621463846FFF7DAFE3F68B742A1 +:1007B000F7D1F1BDF8B504460D46DFF85409C66916 +:1007C0000FF234000FF0B0FE06F10C07797DF868E7 +:1007D000F26880187A6D52699047002809D001208C +:1007E000B874707A002804D02A4621463046FFF7B4 +:1007F000B7FE0120F2BD00003D3E50555000000004 +:100800000288D21C02800A80704780B50B889B1A30 +:10081000ADF80030BDF80030002B09D010180121D0 +:1008200000F8031C022200A9801E0FF0CDFD01BDBF +:100830000888C01E088001BD2DE9F041F0B00546D2 +:100840000E4601F035F807460FF0F3FD804610A87C +:100850004FF4C07110F080F800208DF8020006A857 +:10086000282110F079F801A8142110F075F8002063 +:10087000ADF800000446386E002800F0A08198F919 +:10088000090010F002FC002800F0998100A9304610 +:10089000FFF7B6FFA04616E0012000FA08F0396E17 +:1008A00008420ED008EB8800DFF8681801EBC002A0 +:1008B00092F90900012804D10DF1020110A8126A71 +:1008C000904708F10108B8F11D0FE5DB274619E054 +:1008D0003088421C3280897841553088FFF7E7FC28 +:1008E00000280DD0BDF8002031462846FFF78DFFC7 +:1008F00031462846FFF7ABFC00A93046FFF780FFE2 +:100900007F1C7FB29DF80200874280F250813188BF +:10091000481C308007EB4700000110AA825C4A5552 +:1009200031884A1C328010AA801842784A55328891 +:10093000511C3180411C4B7853554A78032A06D00C +:10094000092A00F021810C2A00F0FB80C0E74278E0 +:10095000032A04D13288531C33808B785355328854 +:10096000531C3380CB785355631CCA7812064AD483 +:1009700001AA91F804C004F802C0DBB24C799C547F +:100980005B1CDBB200249C545B1CDBB28C799C5456 +:100990005B1CC489DBB24FEA142C03F802C05B1C59 +:1009A000DBB29C545B1C00F20E04DBB294F802C074 +:1009B00003F802C05B1CDBB2E4789C545B1CDBB226 +:1009C000847C9C545B1CDBB2C07C9854581CC0B225 +:1009D000CB798354401CC0B20B7A8354401CC0B204 +:1009E0004B7A8354401CC0B2897A8154441CE4B2CF +:1009F000224601A9308840190FF0E6FC308850FAF1 +:100A000084F0308069E7D1F804C006AA4FEA1C4E92 +:100A100004F802E0DBB24FEA1C249C545B1CDBB2FE +:100A200003F802C05B1C8C68DBB24FEA144C03F87D +:100A300002C05B1CDBB24FEA142C03F802C05B1C43 +:100A4000DBB29C545B1CC968DBB20C0C9C545B1C75 +:100A5000DBB20C0A9C545B1CDBB29954591CD0F8D5 +:100A60001130C9B21C0C8C54491CC9B21C0A8C54DC +:100A7000491CC9B28B54491CD0F82730C9B21C0C90 +:100A80008C54491CC9B21C0A8C54491CC9B28B54E1 +:100A90004B1C00F22701DBB20C799C545B1CDBB2CF +:100AA0004C799C545B1CCC88DBB24FEA142C03F8C5 +:100AB00002C05B1CDBB29C545B1CDBB2097A99540C +:100AC000591CD0F81530C9B21C0C8C54491CC9B241 +:100AD0001C0A8C54491CC9B28B54491CD0F81930DB +:100AE000C9B21C0C8C54491CC9B21C0A8C54491C38 +:100AF000C9B28B54491CD0F81D30C9B21C0C8C549F +:100B0000491CC9B21C0A8C54491CC9B28B54491CDB +:100B1000D0F82100C9B2030C8B54491CC9B2030A96 +:100B20008B54491CC9B288544C1CE4B2224606A915 +:100B3000308840190FF048FC308850FA84F030803B +:100B4000CBE600F20301B1F90300C0F3072242EA49 +:100B50000020A1F80300B1F90700C0F3072242EA20 +:100B60000020A1F80700B1F90500C0F3072242EA0E +:100B70000020A1F805000922308840190FF024FC5C +:100B8000308809303080A8E64278032A09D1022251 +:100B9000C11C308840190FF017FC3088801C308051 +:100BA0009BE63088421C32808978415595E6BDF835 +:100BB000002031462846FFF728FE10F08EFA70B06C +:100BC000BDE8F0812DE9F04105460E460FF031FCFD +:100BD0000746DFF84C4C2078401C207010F043FC96 +:100BE0006078401C607097F81880B8F1010F26DB20 +:100BF0003088404480B2FFF75AFB002803D03146CA +:100C00002846FFF724FB3088411C318003214155E1 +:100C10003088411C318000F80580424607F11901F7 +:100C2000308840190FF0D0FB308840443080FF22DC +:100C3000002107F1190010F02DFC002038766078B3 +:100C4000401E6070C0B2002801D110F006FCBDE863 +:100C5000F04110F0B5BC38B504460D460FF0E9FB85 +:100C6000817A002909D1417B002906D129884A1CB3 +:100C70002A8006220A550121417331BD38B5044648 +:100C80000D46288800280CD02046FFF79BFF2946F8 +:100C90002046FFF7E0FF29462046BDE83440FFF735 +:100CA000D6BA31BD14B585B0049101A9002213460E +:100CB00014461CC10A21ADF8001004218DF804105F +:100CC0008DF805000A4605A90DF106000FF07CFB22 +:100CD000042204A90DF10A000FF076FB00A901A877 +:100CE000FFF7B5FA06B010BDF8B504460FF0A1FB4A +:100CF000DFF81C54296A496C8A6842F210739A42E0 +:100D00005AD10969002957D1807A002854D0DFF8D8 +:100D1000FC6330880C30B0F5347F01DD002030807A +:100D2000012010F078FF10F0B2FFADF802000320B0 +:100D300010F071FF10F0ABFFADF8000010F0BEFF37 +:100D4000378802220DF10201B81908300FF03CFB80 +:100D5000BF1C3780022200A9BFB2B81908300FF0BB +:100D600033FBBF1C378004222146BFB2B8190830BC +:100D70000FF02AFB381D3080022280B2801900F16A +:100D8000080106206B691B6E1B6A98473088801C1F +:100D90003080022280B2801900F1080106206B68C1 +:100DA0001B6E1B6A98473088801C308070680C303E +:100DB000B0F5347F00D27060F1BD2DE9F041D34C25 +:100DC0006068002828D0218888421FD00FF0D2FA0E +:100DD000054666682788A6EB07081FFA88F842468A +:100DE000381900F1080128460FF0EEFA3A4604F1EE +:100DF000080108EB05000FF0E7FA3246294604F136 +:100E000008000FF0E1FA28460FF0CCFA626804F10E +:100E100008010520FFF746FF002060602080BDE844 +:100E2000F08100006C740020BC0700205C480020AA +:100E30002DE9F04385B006460F4690460FF0F9FACB +:100E400081460025D6F80900041D307801460129A5 +:100E500000F081800F2933D0802900F0AA808129F9 +:100E600000F0B280822900F0AF80852900F0AC80CC +:100E7000862900F0A980882900F0A6808A2900F040 +:100E8000AB808B2900F0C4808C2900F0D0808D29A4 +:100E900000F0DC80DD2900F00481DF2900F01E81F4 +:100EA000F0292BD0F4293AD0F62949D0F82967D077 +:100EB000F92955D0FC291CD0FF2900F0CC807FE017 +:100EC00099F81600207099F8170000280CD14FF0FF +:100ED000FF30009003462A4642F21071082000F0CD +:100EE000D1FF012089F81700202089F8190101207D +:100EF00067E099F819012070012062E0DFF8240909 +:100F00000168090C21700168090A61700168A1700B +:100F100001680FF62C100FF007FB012051E0D9F803 +:100F20001000000E2070D9F81000000C6070D9F885 +:100F30001000000AA070D9F81000E070012040E015 +:100F4000032221462846DFF8E0389B681B6E1B6AA7 +:100F50009847012035E0204611F0E2FB012030E007 +:100F6000B6F80120B6F80300C010C0EB0011D6F8A7 +:100F7000050000EB811120460FF026FA012020E049 +:100F80002846ADF800000120D6F80510C9B20129A5 +:100F900000D1032010F03FFE10F079FEADF8000004 +:100FA00010F08CFE022200A920460FF00DFA01205D +:100FB00007E0D6F8050020702146284600F016FF0D +:100FC000284605B0BDE8F08329462170214600F08F +:100FD0007F0000F00BFFF3E701202070DFF84808E6 +:100FE00046682F46307F002801D12846E9E7707A0D +:100FF000002803D1306E4068804707462046316E96 +:10100000C9698847002FDBD0306E80688047D7E7FA +:101010000120B6F80310C1F3C101091D884040F05A +:10102000020020702146012000F0E0FEC8E799F898 +:101030000000207099F80300607099F80500A07016 +:1010400099F80600E07001202071BAE7204611F0FF +:101050007BFB0546B4E703A9284611F0EEFC02A984 +:10106000284611F064FD11F00DFD0090DFF8BC275B +:10107000A2FB0067760A46EAC756901B009004223E +:1010800003A920460FF0A0F9042202A9201D0FF0A9 +:101090009BF9042200A904F108000FF095F9012042 +:1010A0008FE77079DFF8801751F82060707A002898 +:1010B00010D0424639463046FFF71AFADFF870077B +:1010C00001210170DFF86C17082011F041FE0120AA +:1010D000207001E028462070012072E77079DFF867 +:1010E000481751F82060306996F8221090FBF1F013 +:1010F000401E0190042201A920460FF065F901204D +:101100005FE700005074002054740020DC6200206F +:101110000000002028D00020F0B599B006460FF05E +:1011200088F9054600F0C4FBD6F809100C1D31788B +:101130000A46A12A00F0B881A22A00F0D681A42A8A +:1011400000F0E181B12A00F06782B22A00F0E98262 +:10115000B82A00F0F781C12A00F00A82CD2A00F0F7 +:10116000E880CE2A00F0F780D12A3CD0D22A54D091 +:10117000D32A5BD0D42A78D0D62A00F09F80D72AF1 +:1011800000F09C80D82A00F0A380D92A00F0A0802B +:10119000DA2A00F0A780DB2A00F05981DC2A00F06F +:1011A0005D81E12A00F06181E22A00F07081F12A7C +:1011B00000F0AC80F22A00F0E080F32A00F02581F4 +:1011C000F52A00F0FB80F72A00F00E81FA2A00F0E1 +:1011D000BD82FB2A00F0BF82FD2A00F0FA80FE2AC1 +:1011E00000F0E1820EE1002128460FF01AFB05F124 +:1011F00009000021417195F81A01400709D50FF245 +:1012000048600FF091F995F81A0100F0FB0085F89D +:101210001A01FFF7D2FD0120F5E0012128460FF069 +:1012200000FB012011F0D6FD0120ECE005F10900E2 +:101230000021417005F11004E079002813D142F239 +:1012400010754FF0FF30009003460A4629460820EB +:1012500000F018FE4FF0FF3301222946082000F06D +:10126000A7FE0120E0710120CDE005F20900012177 +:1012700041700021017101214171807800281BD14A +:1012800005F11004E079002813D042F210754FF0F8 +:10129000FF3300222946082000F08AFE4FF0FF307D +:1012A0000090034601222946082000F0EBFD0020B3 +:1012B000E071012011F08EFD0120A4E0D62901D1BA +:1012C000012000E0002005F10901887001209AE06A +:1012D000D92901D1012000E0002005F10901C870E1 +:1012E000012090E0DFF84005056AB5F956000128B5 +:1012F0000ADB0020A5F856004FF0FF3302464FF4FA +:101300007A71082000F054FE01207CE000210CE0FE +:101310000A180B5D82F87030022905D10A5D80F849 +:1013200073200A5D80F87420491C0329F0DB01203A +:1013300069E000250BE0022204EB4501DFF8E80438 +:10134000406800EB450058300FF03EF86D1C032D4F +:10135000F1DB012057E000250BE0022204EB450100 +:10136000DFF8C404006800EB450058300FF02CF89B +:101370006D1C032DF1DB012045E02969090601D42C +:10138000012040E02178090201F4E06162788918C7 +:10139000A0F87610A178090201F4E061E2788918DA +:1013A000A0F8781004212046DFF87C24D269126E60 +:1013B00092699047002825D0012024E0032221468D +:1013C0000120DFF864349B681B6E1B6A984701207C +:1013D00019E0122221460220DFF84C349B681B6E74 +:1013E0001B6A984701200EE0DFF83C048569286EEF +:1013F00080688047002805D00122214605202B6EF9 +:101400001B6A9847002019B0F0BD217880F87A1047 +:1014100090F87A00002806D04FF4805100200FF099 +:1014200034FA0120EFE7DFF80004C169497A826AE3 +:10143000527A51188069407A4018C0B2002804D10D +:101440004FF4805100200FF022FA0120DBE7D6F89C +:1014500005100FF2FC300FF067F8D3E7D6F805104F +:101460000FF2F8300FF060F8CCE795F81A01217808 +:10147000084385F81A0195F81A110FF2EC300FF0B5 +:1014800053F8DFF8B413022011F062FCBAE795F8C4 +:101490001A012178884385F81A0195F81A110FF27C +:1014A000D8300FF041F8ADE794F9005000200190DA +:1014B0004FF0FF30029007460422611C01A80EF095 +:1014C00083FFB6F80100062806D30422611D02A896 +:1014D0000EF07AFF94F909700097029B002201999F +:1014E000284600F0CFFC20708CE794F900500422CD +:1014F000611C01A80EF068FF00231A4601992846D6 +:1015000000F056FD7FE794F900504FF0FF30029055 +:1015100007460422611C01A80EF056FFB6F8010030 +:10152000062806D30422611D02A80EF04DFF94F98F +:1015300009700097029B00220199284600F0A2FD45 +:1015400020705FE76178207803280BD18DF80D10AB +:10155000012905D1A0788DF80E0040B20EF0E3FD10 +:10156000012050E749B240B20FF04CFEC0B24AE74A +:10157000207801460E3903D0091F032914D941E709 +:101580000E208DF80C0060788DF80D00A1788DF894 +:101590000E10E2788DF80F2052B249B240B20FF02F +:1015A0008CF90EF0B7FD2DE78DF80C00122802D152 +:1015B00060788DF80D009DF80C00132802D160783A +:1015C0008DF80E009DF80C00142802D160788DF87B +:1015D0000F009DF80C00152802D160788DF80D00E1 +:1015E000627821780FF2A0200EF09EFF06208DF881 +:1015F000340020780E900DF13D0003A9202211F057 +:10160000A5FC0B208DF83C000020ADF85E000DA875 +:101610000EF0AAFDC0B2F6E694F900000FF0C3F98F +:1016200001285DD120780146032908D0062945D03C +:1016300009290BD00C2925D00D2931D04BE00322EC +:10164000611C0DF10D000EF0BFFE49E00722611C88 +:101650000DF10D000EF0B8FEBDF80D00010A41EAD3 +:101660000020ADF80D00BDF80F00010A41EA00208E +:10167000ADF80F00BDF81100010A41EA0020ADF8F5 +:1016800011002DE00322611C0DF10D000EF09CFEF7 +:10169000BDF80E00010A41EA0020ADF80E001FE07F +:1016A0000322611C0DF10D000EF08EFEBDF80E0040 +:1016B000010A41EA0020ADF80E0011E00122611C90 +:1016C0000DF10D000EF080FE9DF80D100FF2C81008 +:1016D0000EF02AFF04E08DF80C0060788DF80D0004 +:1016E0002078052807D1554801210170687A002823 +:1016F00001D1084687E600208DF8340020780E904E +:101700000DF13D0003A9202211F020FC0B208DF8E3 +:101710003C000020ADF85E000DA80EF025FDC0B223 +:1017200071E62078052804D1444800210170012089 +:1017300069E601208DF8340020780E900B208DF89A +:101740003C000DA80EF010FDC0B25CE6304611F072 +:1017500075FC012057E62078052822D8DFE800F044 +:1017600003210808181F0FF23C1012F094F818E03B +:10177000002000900422611C00A80EF025FE2078B5 +:1017800011F02CFC009A01462078FFF78BFA08E054 +:1017900095F81A0140F0040085F81A0101E0FFF7FE +:1017A0000CFB01202FE6042221460CA80EF00CFEB3 +:1017B0000422211D0BA80EF007FE042204F10801EB +:1017C00000A80EF001FE0CA9002011F0E7F80BA90B +:1017D000002011F05CF911F055F90446134A00237A +:1017E00000981946101A63EB0101490241EAD051F1 +:1017F000400212F00BF90090844205D2011B4FF019 +:10180000004011F014FA09E0A04207D2C4F50070BC +:10181000009909184FF0004011F009FA0120F2E593 +:10182000F0240020B42500200000002000CA9A3BCC +:101830002D460020BC450020F44500206C7400209B +:101840005265762025640000524D2050440000006F +:1018500044554D50534554202564000044554D5087 +:1018600046494E2025640000414420564C203A2031 +:101870003078257800000000524D20564C203A2048 +:10188000307825780000000050443A2053657425D4 +:10189000642025640000000050443A205343202572 +:1018A0006400000041505F524551554553540000BB +:1018B000004870471469002080B5FFF7F9FFDFF892 +:1018C00044190860012002BDF0B4049C059D8E1EE1 +:1018D000012E01DA0C36401E3C216427B0FBF7F7DD +:1018E000C7EB90074FF4C87CB0FBFCFC674440F2A8 +:1018F0006F1C0CFB06F64FF00C0CB6FBFCF6F61951 +:10190000921940F26D1606FB0020DFF8FC28101833 +:1019100000EB400203EBC20001FB004001FB005062 +:10192000F0BC70471CB50C460168019141680091FC +:101930008368C2680169491C406900F26C70FFF756 +:10194000C3FF2060002016BD10B58EB0DFF8BC08C4 +:10195000046801A9002011F070F800A9002011F01E +:10196000E6F89DF8040006909DF8050005909DF8A6 +:10197000060004909DF80100401E08909DF80200AA +:1019800007909DF803006430099002A904A8FFF7AE +:10199000C9FF4FF47A706043400AC0F57A70039033 +:1019A000029A4FF47A73C117E3FB02010EB010BD27 +:1019B00010B5FFF7C9FFDFF85848D4E90023821AB1 +:1019C0000023012B05DB01DC002A02D3C4E900015E +:1019D0001A46104610BDF0B583B0044600A8002199 +:1019E0000A4606C0A069E16845182888ADF80000DD +:1019F000B5F9027000A84780B5F904608680BDF88B +:101A00000000B4F85810401A2880B4F85A00381A68 +:101A10006880B4F85C00301AA880BDF90000B5F900 +:101A20000010C913B1EBE03F13D0B4F95810C9133B +:101A3000B1EBE03F0DD00FF2EC700EF075FDB5F993 +:101A40000000012802DBDFF8CC0701E047F6FF7059 +:101A50002880B5F90210C913B1EBE73F13D0B4F9F0 +:101A60005A10C913B1EBE73F0DD00FF2C4700EF05E +:101A70005BFDB5F90200012802DBDFF8980701E001 +:101A800047F6FF706880B5F90410C913B1EBE63F63 +:101A900013D0B4F95C10C913B1EBE63F0DD00FF2CF +:101AA0009C700EF041FDB5F90400012802DBDFF85F +:101AB000640701E047F6FF70A88094F90800002849 +:101AC00004D1002000E0401C0328FCDBF7BD00002F +:101AD000FEB5044600A800210A460B460EC0A069C8 +:101AE000E1684518174694F90860052E80F09A8041 +:101AF000012E02D12046FFF76EFF3046012802D9A1 +:101B0000C01E40F08A80002E01D14FF6FF77DFF82B +:101B1000F4060068301890F87000401E06285ED861 +:101B2000DFE800F004101D2936424F00B5F902002D +:101B3000009000A8B5F90010791A4160B5F90410B9 +:101B4000816056E0B5F90000381A009000A8B5F998 +:101B50000210791A4160B5F90410816049E0B5F9C5 +:101B60000200381A009000A8B5F900104160B5F9DC +:101B7000041081603DE0B5F90000381A009000A81B +:101B8000B5F902104160B5F90410791A816030E0AE +:101B9000B5F90200009000A8B5F900104160B5F950 +:101BA0000410791A816024E0B5F90000009000A8C3 +:101BB000B5F90210791A4160B5F90410791A8160FB +:101BC00017E0B5F90200381A009000A8B5F9001026 +:101BD000791A4160B5F90410791A816009E0B5F904 +:101BE0000000009000A8B5F902104160B5F904109A +:101BF0008160012E0AD1002106E050F8212002F375 +:101C00000F0240F82120491C0329F6DB00982880A8 +:101C100000A8416869808068A880002E02D1204613 +:101C2000FFF7D9FE0120FEBD70B52DED028B84B00B +:101C300001A9002213460CC18169C268891890F974 +:101C400008000A2800F2CD80DFE800F00631A9CBB9 +:101C5000CB97CBCB71B6C4000888ADF80400B1F9BE +:101C6000024001A84480B1F904508580DFF8940552 +:101C700000689FEDCC0ABDF9041000EE901AF8EE52 +:101C8000E00A60EE800AC0ED000A00EE904AF8EE2D +:101C9000E00A60EE800AC0ED010A00EE905AF8EE0C +:101CA000E00A20EE800A001D80ED010A99E0088814 +:101CB000ADF80400B1F9024001A84480B1F9045024 +:101CC0008580DFF840050068061D9FEDB78BBDF9E4 +:101CD000040000EE100AB8EEC00A10EE100A11F06F +:101CE00011FF53EC182B11F035FF12F005F8B0601E +:101CF00000EE104AB8EEC00A10EE100A11F002FF12 +:101D000053EC182B11F026FF11F0F6FFF06000EEF7 +:101D1000105AB8EEC00A10EE100A11F0F3FE53ECA0 +:101D2000182B11F017FF11F0E7FF306159E018464A +:101D3000ADF80200ADF800000888ADF80200488850 +:101D4000ADF80000DFF8BC040068061D9FEDCC0A6A +:101D5000BDF9020000EE900AF8EEE00A60EE800A9B +:101D6000C6ED0E0ABDF9000000EE900AF8EEE00A9A +:101D700020EE800A86ED0F0A33E0184603900868CB +:101D800003909DED030AB8EEC00ADFEDBD0A20EE18 +:101D9000200ADFF87004006880ED0C0A21E0DFF80B +:101DA000640400680A88A0F84A2000F24A004A88C1 +:101DB00042808988818014E0DFF84804006800F2DE +:101DC0004A000A88C2804A8802818A884281C9887A +:101DD000818106E0DFF82C040068B1F90010A0F85A +:101DE0005810012004B0BDEC028B70BD70B50D46DB +:101DF000DFF8241451F820400026207F002801D16C +:101E0000304670BD607A002803D0206E806880471D +:101E100006462846216EC96988470546002E02D02D +:101E2000206E40688047284670BD0120704770B51D +:101E300082B01C4600F11005002A0ED4AB7C00696C +:101E400092FBF1F65E43864202DAAA63EA6304E09B +:101E500090FBF3F04843A863E863009413460A46F6 +:101E6000E96B0FF2E4300EF05FFB002C02D4A00708 +:101E700000D52C7473BD002903D400218164416115 +:101E8000816170472DE9F2438EB0044615461E4627 +:101E90000020ADF8320003900A208DF810000020D9 +:101EA0008DF811008DF81200E4B2122C53D264B2F6 +:101EB0002146D94850F821704FF00208387F002899 +:101EC00049D00E98C82802D1B4200E9003E04228D1 +:101ED00001D13C200E909DF95890019500960E9BE3 +:101EE0004A460FF280300EF01FFBB9F1000F09D403 +:101EF0005FEAC97006D54B4632460E993846FFF761 +:101F000094FF4CE04B4632460E993846FFF78FFF60 +:101F1000A4F10C00C0B2062805D22146C9B20EA811 +:101F20003A6E92699047787A00281CD1294649B2C6 +:101F300038467A6E1268904700280ED0386E406896 +:101F40008047002805D14146A1F10108C9B2002906 +:101F5000F4D1002801D1002021E0294649B23846B9 +:101F60007A6E52689047787A401C78722A4652B24C +:101F70000E9938467B6E1B69984700F0D6F8072CFF +:101F80000CD1002D0AD100208DF8080011200390FB +:101F90000A208DF8100002A80EF0E6F801200FB01C +:101FA000BDE8F08360F61C3A89AD84FA0A74313FCB +:101FB0002DE9F0418CB004460D4616461946002026 +:101FC000ADF82A0001900A208DF8080000208DF855 +:101FD00009008DF80A00E4B2122C08D264B28E48CF +:101FE00050F824704FF00208387F002801D10020FB +:101FF00043E0C82D01D1B42502E0422D00D13C259B +:102000003846FFF738FF787A012818D1314649B2AF +:1020100038467A6E9268904700280AD0386E8068F9 +:102020008047002805D14046A0F10108C0B2002831 +:10203000F4D1314649B238467A6ED2689047787A00 +:10204000002801D0401E7872324652B229463846E6 +:102050007B6E5B69984700F068F8072C0CD1002E66 +:102060000AD101208DF80000112001900A208DF87E +:10207000080000A80EF078F801200CB0BDE8F0814F +:102080000AD7233C2DE9F04104460D4616461A4670 +:10209000E4B2122C19D264B25F4850F82470387F31 +:1020A000002812D09DF91830002B05D4D80703D58D +:1020B0003846BDE8F041B8E606EB460007EB80087D +:1020C000D8F838008068002801D500202BE0384679 +:1020D000FFF7ADFED8F838008068854215D0012D95 +:1020E00013DB0FF298100EF01FFA324652B2D8F8F6 +:1020F0003800816838467B6E5B699847324652B239 +:10210000294638467B6E1B699847A4F10C00C0B283 +:10211000062805D22946204612F0FEF8012002E0EA +:1021200000F003F80120BDE8F08170B56FF00045C4 +:102130002C463A48016804E08A68A24200DA144654 +:1021400009688142F8D1364E3078401C30700FF06B +:102150008AF97078401C7070AC4200D10024294884 +:1021600001688C66CA6E204682420AD0002801D0DF +:10217000002A03D1C8660EF0B3F902E0012012F084 +:10218000A8F97078401E7070C0B2002801D10FF01D +:1021900064F90FF015FA012070BD38B50546204CE2 +:1021A0002078401C20700FF05EF96078401C607051 +:1021B00014480068C5661948016805E08A68B2FBE2 +:1021C000F5F26A43CA6009688142F7D16078401E1F +:1021D0006070C0B2002801D10FF03FF9BDE8314076 +:1021E0000FF0EEB90D490A6808E01369012B01DA16 +:1021F000D368136113691B1A136112688A42F4D100 +:102200007047000064FE00207505F5FF2828004097 +:1022100028FE00200080FFFF00000020600000205A +:10222000F024002058206973206F7665720000004A +:1022300059206973206F7665720000005A20697317 +:10224000206F7665720000006261746368207261BD +:102250007465203D202564202564202564202564A4 +:102260000000000042617463684F70742025642090 +:102270002564202564202564202564006368616E40 +:1022800067652072617465320000000051EC100B2C +:1022900000B500F003F841EC100B00BD40F2FF7CEC +:1022A0000B0D4DD0634566D230B421EA035141F4A1 +:1022B000801103F2FD3C5FEA5C0C01D30018494138 +:1022C000890041EA907180004FF440140023E2023B +:1022D000D50AB1F5100107D46D081DD2091B641988 +:1022E00000184941491BF7D56D080AD20919641B2A +:1022F00000184941491BEFD56D08F7D301E052089A +:1023000017D0C01861419B1AAC4100184941801A8E +:10231000A941F4D452080AD0C01AA1419B186C41BB +:1023200000184941801AA941E9D45208F4D15B1C34 +:102330006C4161084FEA330001EB0C5130BC70472F +:1023400050EA0103FBD030B4B1FA81F311B9B0FA0D +:1023500080F41B190B3BB3F120042FBF00FA04F1EA +:102360009940C3F1200420FA04F438BF2143984077 +:10237000D3F101039DE76345E1D011F5801FDED85D +:1023800050EA4101DBD0D9432EF004BBC046C04621 +:10239000024A11001820ABBEFBE700BF2600020076 +:1023A0000278C9B28A421AB11CBF10F8012FF9E7AE +:1023B00018BF002070470000C9B2830706D0521E24 +:1023C00022D310F8013B9942F7D11FE0083A13D30A +:1023D00002F1040241EA012141EA014150F8043BC3 +:1023E000121F21BF4B40A3F1013C2CEA030C1CF04F +:1023F000803FF3D0C9B2001F083210F8013B521ED3 +:1024000028BF91EA030FF8D818BF0120401E70477B +:1024100030B4436803F0004201211B031B0B4360EF +:1024200004BF0368002B08D10DE00368DD0F45EA07 +:10243000440444605B000360491E4468E302F4D531 +:1024400023031B0B436043681A434260084630BCB9 +:102450007047000070B5044640F2FF726068C0F338 +:102460000A500D46904207D16068000304BF2068FF +:10247000002817D0022070BD20B92046FFF7C8FF02 +:10248000012867DA012D0FDB40F2FF71091A8D4236 +:102490000AD3606800284CBF9FED2F0B9FED300BD7 +:1024A00084ED000B012070BD4142A942616806DA4B +:1024B0006FF31E51401941EA0050606041E0401E38 +:1024C00063680122451962F31F5305F1350001F0DD +:1024D00000416360352803D361600020206070BD37 +:1024E000002215F11F0F04DA226823600020203536 +:1024F0006060684213D0521E25689241C0F12003EB +:10250000D2439D4055EAD27225686668C54006FAF6 +:1025100003F32B432360636823FA00F06060606874 +:1025200008436060B2F1004F03D80DD12078C00796 +:102530000AD52068401C2060206828B96068401CCB +:1025400060604FF0FF3070BD6068884204BF206853 +:102550000028F6D1002070BD000000000000F0FF50 +:10256000000000000000F07F91FBF2F303FB12116A +:10257000C0E900317047002848BF4042704704B5A9 +:102580000B46022200A918180DF01EFF01BD000025 +:102590000A18414004D4504002D54FF00040704723 +:1025A00010467047421A414004D5504002D54FF0C2 +:1025B00000407047104670470021002804D12020B9 +:1025C0007047091DC9B2000110F0704FF9D0002802 +:1025D00003D4491CC9B24000F9E7084670472DE909 +:1025E000F84304468846B8F1000F4CD0002C01D4C3 +:1025F000A14601E0C4F10009B8F1000F01D445463D +:1026000001E0C8F1000500261127280D00050ED0B5 +:10261000680C401CB9FBF0F64A46A5FB0601400CCD +:1026200040EAC130101A814601E02D093F1F15F024 +:102630000F0F01D1042FF8DAB9F1000F1BD0002FD2 +:1026400019D44846FFF7B8FF874200DC384609FA3C +:1026500000F93F1AB9FBF5F000FA07F18E194FF0B7 +:10266000FF31F940C94308420DD105FB10904FEAF4 +:1026700040097F1EE0E7701C400898EA040106D577 +:1026800010F1004F02D14FF0004000E04042BDE8A1 +:10269000F28330B581FB0045204629462F222EF0DB +:1026A0007FF9002D0FDC00DB0DD2C0430DD1641E7D +:1026B00065F1000520462946000C40EA0140C4F3BC +:1026C000C031081830BD0028F4D04FF0004030BDB4 +:1026D00010B50446FFF75CFF10F1004F06D1012C46 +:1026E00002DB6FF0004010BD4FF0004010BD70B431 +:1026F0000246D20F00D040420021030D1B0502D03C +:102700004FF0804303E04FF4802300E09B089842A1 +:10271000FCD30C4604E0000419464FF48043641CCB +:10272000022C08D3814200D2491C002A1AD0494207 +:1027300018E029469B08002B07D04D085E18B042D0 +:10274000F7D3401AC01A5919F4E7002CE7D10B044B +:10275000B0F5803FDFD3401A0004A0F5004003F538 +:102760000041DAE7084670BC7047002205E040F8F7 +:10277000221000EB82031961521C036A9A42F6DBB5 +:1027800070472DE9F84F0C4615461E46376A4FF044 +:102790000008DDF8289099FBF7F107FB119A46F83D +:1027A0002A00C34612E0A9EB0B00381890FBF7F1A2 +:1027B00007FB110056F8201054F82B00FFF769FFB3 +:1027C0004146FFF785FF80460BF1010BBB45EADB75 +:1027D000012413E0A9EB0400381890FBF7F107FB84 +:1027E000110006EB8000016955F824004042FFF714 +:1027F00050FF4146FFF76CFF8046641CBC42E9DB9A +:1028000006EB8A00C0F810804046BDE8F28F70B534 +:1028100004460D012068401C2060E1682846FFF74F +:10282000C1FE06462068022808DB01043046FFF797 +:10283000D6FE0146E068FFF7ABFE00E02846E06008 +:10284000206802280CDBE1682846FFF7ABFE014652 +:102850003046FFF71EFF0146A068FFF799FE00E033 +:102860000020A0602068022805DB401E0104A0684B +:10287000FFF7B5FE00E000206061FFF738FF206140 +:102880000011206170BD002101604FF48051416052 +:1028900000218160C16001614161704770B50446EB +:1028A0000020024620E0DFF8901641F82020DFF8F3 +:1028B0008C1641F82020DFF8881641F82020DFF838 +:1028C000841641F82020DFF8801641F82020DFF838 +:1028D0007C1641F82020DFF8781641F82020DFF838 +:1028E000741641F82020401C1828DCDB10460EE04E +:1028F000DFF8641641F8202001EB80018A600A614C +:102900008A610A628A620A638A630A64401C022836 +:10291000EEDBDFF8485610462864064609E0002141 +:1029200006EBC60005EB800000F59C70FFF71DFF6D +:10293000761C032EF3DB002609E0002106EBC6001F +:1029400005EB800000F5DA70FFF70FFF761C042E10 +:10295000F3DB4FF48030A86541F69910E86500205C +:10296000A8642846FFF78FFF0020E86428656863A5 +:102970004FF0FF30E86228630020A863E863E86650 +:10298000A86668666864A86D2866FF202867AC673B +:1029900001206865032068670020A86270BD2DE9EA +:1029A000FF4F8FB000241C981C90DFF8B05564E0F6 +:1029B000012028650020E863686B052801DB002002 +:1029C000E8644FF0FF30E862286300206863E86A3B +:1029D00010F1010F49D0AF6F002F43D0D5F83CE084 +:1029E000BEF1C80F3EDAEF6C2E2F02DA2F6D002FEA +:1029F00038D1704490FBF6F706FB1708D5F84090E5 +:102A0000DFF85475DFF830A55AF828A047F829A058 +:102A100007EB8907DFF824A55AF828A0C7F808A013 +:102A2000DFF81CA55AF828A0C7F810A0DFF814A5F5 +:102A30005AF828A0C7F818A051F82810396252F89F +:102A40002810B96253F828103963DFF8081551F8D7 +:102A50002810B963C7F840E009F1010129640EF1BB +:102A60000101E963686B401C68630CF1010090FB95 +:102A7000F6F106FB1100A863641C1C98844280F2E6 +:102A80002C820F9850F8240080010F9941F82400FF +:102A9000109850F824008001109941F824001198F2 +:102AA00050F824008001119941F82400129850F840 +:102AB00024008201129840F82420686D002841D03B +:102AC000686F411E69670128D6DA0F9850F8241004 +:102AD00047F6015081420EDB109B53F824308342AD +:102AE00009DB119B53F82430834204DB824202DB72 +:102AF0006420E867C0E7E86F421EEA670128BBDA96 +:102B0000A961109850F82400E861119850F8240049 +:102B10002862129850F82400686205F19000FFF7CF +:102B200024FEE96905F1B400FFF71FFE296A05F1EB +:102B3000D800FFF71AFE696A05F1FC00FFF715FEE1 +:102B40000020686505F5D27605F5D67AA86B009069 +:102B500005F5DA73524631460F9850F82400FFF716 +:102B600010FEA969FFF71EFD8146A86B009005F5D0 +:102B7000EC7352463146109850F82400FFF701FEDE +:102B8000E969FFF70FFD8046A86B009005F5FE731D +:102B900052463146119850F82400FFF7F2FD296A99 +:102BA000FFF700FD0746A86B009005F50873524635 +:102BB0003146129850F82400FFF7E3FD696AFFF7E9 +:102BC000F1FC019005F5907605F5967AA86B0090DA +:102BD00005F59C7352463146A8EB0900FFF7D1FD7D +:102BE0006866A86B009005F5AE73524631460198B1 +:102BF000381AFFF7C6FDA86607EB0800484401999C +:102C00000818A96B009105F5C0735246314646106D +:102C100000EB96708010FFF7B4FDE8661826A86AEE +:102C2000002878D105F1800A05F1880BA86B009087 +:102C300005F190035A4651460F9850F82400FFF7CB +:102C4000A0FDA861A86B009005F1B4035A46514657 +:102C5000109850F82400FFF794FDE861A86B0090ED +:102C600005F1D8035A465146119850F82400FFF751 +:102C700088FD2862A86B009005F1FC035A46514676 +:102C8000129850F82400FFF77CFD6862A86C411C84 +:102C9000A964502829DA47F601500F9A52F82420E7 +:102CA000824210DB109A52F8242082420BDB119AE8 +:102CB00052F82420824206DB129A52F824208242E3 +:102CC00001DB481EA864A86C292803DBE96E2846AE +:102CD000FFF79DFDA86B401C90FBF6F106FB110071 +:102CE000A8634FF480302866C6E60120A8624FF43E +:102CF00080212869FFF7CDFC286640F2DD5188422B +:102D000003DB40F2DC50286605E0B0F5E17F02DA33 +:102D10004FF4E1702866E86E296E81420BDAEA6AA8 +:102D200012F1010F07D1A86B173090FBF6F106FBEB +:102D30001100E86210E088420EDAE86A10F1010F33 +:102D40000AD0286B10F1010F06D1A86B401C90FB34 +:102D5000F6F106FB11002863E86A10F1010F36D185 +:102D6000E86C401CE86405F1800A05F1880BA86B4B +:102D7000009005F190035A4651460F9850F82400F0 +:102D8000FFF7FFFCA861A86B009005F1B4035A4659 +:102D90005146109850F82400FFF7F3FCE861A86B47 +:102DA000009005F1D8035A465146119850F8240076 +:102DB000FFF7E7FC2862A86B009005F1FC035A4678 +:102DC0005146129850F82400FFF7DBFC6862D5F8F2 +:102DD00038C09CFBF6F006FB10C057496A6E41F8FC +:102DE00020205649AA6E41F820205549EA6E41F844 +:102DF000202054492A6E41F82020534941F8209060 +:102E0000524A42F82080524B43F82070514FDDF86F +:102E100004E047F820E0E86A10F1010F3FF4D7AD75 +:102E20002F6B17F1010F3FF4D2ADBC457FF4CFAD4E +:102E3000AF6F002F3FF4BEADD5F83CE0BEF1C80F38 +:102E4000BFF6B8ADD5F84C80B8F12E0F03DA2F6D70 +:102E5000002F7FF4AFAD00EB0E0999FBF6F006FBF7 +:102E6000109AD5F840B03C4F334850F82A0047F844 +:102E70002B00CDF8009007EB8B07304850F82A0064 +:102E8000B860CDF800902E4850F82A003861CDF88F +:102E900000902C4850F82A00B861CDF8009051F805 +:102EA0002A003862CDF8009052F82A00B862CDF8B6 +:102EB000009053F82A003863264850F82A00B86377 +:102EC000CEF1000038640BF101002864B8F12E0F38 +:102ED000FFF66EAD002028656CE5286C012827DB25 +:102EE000AC6F210022D01C4F0E90786C0D90F86BC7 +:102EF0000C90786B0B90F86A0A90786A0990F869E0 +:102F0000089078690790F868069078680590386CA2 +:102F10000490B86B0390386B0290B86A0190386ADD +:102F20000090BB693A69B9683868A04700202864F6 +:102F3000002013B0BDE8F08F6C6D0020CC6D002038 +:102F40002C6E00208C6E0020EC6E00204C6F002058 +:102F5000AC6F00200C7000206C7200203C20002020 +:102F6000F446490006D200F011F809420DD5C81701 +:102F70004108604700F00AF807D04942404271F129 +:102F8000000102D400205FF0004160474A0DA2F525 +:102F900080621E3A0ADC5242202A18DA890241F085 +:102FA000004141EA50500021D0407047D2F1200248 +:102FB00010D4890241F0004141EA5051C002D04092 +:102FC00061FA02F35840D14080EA010070470020C6 +:102FD00000217047D01701007047000090420CD1CB +:102FE00041EA030C50EA4C0C07D0994205D14FF44A +:102FF000001C1CEB410F38BF894270470CB41CB554 +:10300000044604A80190009401AB0A4600A90748B1 +:103010007844183018F082FF009900220A700028C6 +:103020005CBF0098001B16BC5DF80CFBCF0A0100CA +:1030300010EE101A10EE902AB0EEC00AC80F490028 +:103040005200F0EEE00A28BF0C3011F1807F38BF4B +:1030500012F1807F0CD28A4238BF80F00400124205 +:1030600014D034BF80EE800A80EE200A2DF0AABC76 +:1030700011F1807F08BF80F0040098BF12F1807FBB +:1030800008D88A4214BF00224FF07E5200EE102A68 +:103090002DF098BC6FF0004100EE101A7047000050 +:1030A00010EE101A4FF07E5C01EE90CAC80F31F09E +:1030B000004122D000EE101AB1F17E5F13D871EEFC +:1030C000C00ADFF838C031EE801A61EE200AF1EE56 +:1030D000E00A614586BF80F0040080EE800A80EE41 +:1030E000200A2DF06FBC490011F1807F9CBF6FF06A +:1030F000004100EE101A6DF24D847047F404353F24 +:1031000040EA010C5FEA4C0C07D0884205D14FEA37 +:10311000400C1CF1807F98BF8042704700EE100A7F +:1031200000EE901A20EE200A10EE100A7047000000 +:1031300030B4C26890F82A304B8402F222035D8AD0 +:10314000ED05ED0D0D844D8C112D07D15D8AC5F374 +:10315000C0251DB19C88CC84DC8802E05D88CD84CC +:10316000548C0C85848C4C854469A58A0DB9258CBA +:10317000C584C08C8885908E00F44060B0F5806F67 +:1031800007D154685B8B088D34F8133090FBF3F053 +:1031900005E02069E368834234BFC01A0020C88577 +:1031A000106D086430BC704738B504460D46FFF713 +:1031B000BFFF2846C046C04600206884A88400217E +:1031C000206981870421C1872046BDE832402DF067 +:1031D00088BD00002DE9F041074682B03E693068A5 +:1031E000018BBA6B4C08F1680025914231D1B38D47 +:1031F000B1FBF3F203FB12174289716ABFB27A4343 +:10320000DF193F1B97FBF3FC03FB1C7301EB42022E +:1032100027001AD0B0F80AC09BB20CFB03FC0027B1 +:1032200001EB4C0C964604E03EF8028B2CF8028B26 +:103230007F1CB0F80A804745F6DB5B1CB78D9BB25C +:10324000BB4228BF0023641EE4D1B5870420F08769 +:103250008FE010198142C0F08C8038462DF068FC58 +:10326000F968B1F84620014638462DF082FC788D89 +:10327000010A19BFA0F580707885304626F07AFBE8 +:10328000388D010A042974D8DFE801F0030A353FBC +:103290006800C1076DD54FF6FE710840388568E0BB +:1032A000C0F30010C8B9F88DF1688AB203199A42C8 +:1032B000BCBF081B80B2091AF160B96B11B1081AC2 +:1032C000001BB8636FF00201386981870821C1874C +:1032D00097F8280040F404700CE097F82A007885ED +:1032E0006FF00201386981870821C18797F82800AB +:1032F00040F400703885388D40F001003885012594 +:10330000B969304626F07CFB33E04FF6FE71084089 +:1033100038850125F868808EC0F3003131B1788D91 +:1033200000F47F4040F05400788522E097F82A109E +:10333000132918BF14291CD0C0F3C02048B9ADF818 +:10334000000000A9384627F025FE798D60F30701BB +:10335000798538467968FFF7EBFE0AE0788D00F44E +:103360007F4040F01100788538467968FFF7E0FE2D +:1033700001252846BDE8F68190F82A1011291CBFC6 +:103380001429132908D0542902D14068418403E04C +:10339000C068808EC00501D00120704700207047B2 +:1033A000F8B5426C6A4D02F6F80402F6B0026261AA +:1033B0006060256017262B88E6854FF6EF766D88CE +:1033C00055834FF67B7C258D2E4026850CEA06061C +:1033D0000D686F883F06FF0F46EA87062685078936 +:1033E000032F0CD1898EC1F3802109B1002105E0A2 +:1033F000C6F38001002914BF022101210181018946 +:10340000D182C189B1F5C87F0EBF698B01EB630121 +:1034100091FBF3F19183818939B14FF47A755E089C +:1034200005FB0161B1FBF3F100E0A98B1183218D54 +:10343000C1F38001002901BF418900290321418195 +:10344000408959084FF47A7505FB0010B0FBF3F082 +:10345000A08501F1F00090FBF3F0108101F6C4109B +:1034600090FBF3F0508120462DF03BFC0020A0871C +:103470002046F2BD2DE9FC410446656C15B950208B +:10348000BDE8F681606800281CBF2068002805D1CF +:1034900053206084204622F07EFB56E000206084AA +:1034A000A084E086A08A08B9032002E0062801DB98 +:1034B0000520A082E08910B94FF4C87008E0B0F58B +:1034C000617FC8BF4FF4617002DC642801DA6420B8 +:1034D000E081204626F0B8FD060005D0204628F001 +:1034E00077F85FEA000803D12046C046C0462CE0CA +:1034F000308AB8F83C10884205D0552060842046B8 +:10350000C046C04621E01349204626F087FB074607 +:1035100041462046FFF744FF4169CA8A022A04BF98 +:103520000122A1F84420C0F80C800761866005F6EE +:103530001E0181614FF480533968498901EB4102D2 +:10354000510082698B527969C161608CBDE8F68156 +:10355000E04503089445030838B50C460E4D29682C +:10356000C90706D529684908490029602968C9079B +:10357000FCD400220146284615F01AF807492846CF +:1035800015F033F8214628464160C04601212846FF +:10359000BDE8344015F001B88864024000080020FE +:1035A00030B504460D480D46017881B0491C0170C4 +:1035B0000DF059FFA06840B94021204613F072FB7E +:1035C0000DF051FFA0680028F6D02946204613F0E0 +:1035D000A9FB01B0BDE830400DF0F2BFF02400209F +:1035E00070B400240025264670C070C018384360AF +:1035F000C260017570BC7047F24E0001200260008D +:10360000002004F2FF0001F1FF01F1FF01F1FF01D1 +:10361000F1FF01F1FF01F1E201FC04FFBC07002012 +:10362000BC075C07F1FF01F1FF01F1FF01F1FF01B0 +:10363000F1FF01F1FF01F1FF01F1FF01F1FF01F1E4 +:10364000FF01F1FF01F1FF01F1FF01F1FF01F1FFC6 +:1036500001F1FF01F1FF01F1FF01F1FF01F12A0189 +:1036600020411C15310F2B24400A261F3B19352EF3 +:103670004A06221B3715312A46102C25411F3B34A0 +:1036800050031F1834122E27430D29223E1C3831B7 +:103690004D09251E3A18342D49132F2844223E3750 +:1036A00053011D16322C201A0B27203C1A362F4BA3 +:1036B00007231C3816322B47112D2642203C35514A +:1036C000042019352C60060E2A233F1D39324E681E +:1036D000F0067014302945233F385480600D1215D0 +:1036E0002717292C3E182A2D3F2F41445608200623 +:1036F0003042455747595C6E1C20022E40435514FA +:10370000600246585B6D08211C60125E707385155F +:10371000272A3C2C3E41532D3F42544456596B08B6 +:10372000200645575A6C5C6E71831C200243555825 +:103730006A1460025B6D708208211C6012738588B8 +:103740009A12242739293B3E502A3C3F5141535677 +:103750006808200642545769596B6E801C2002404D +:10376000525567146002586A6D7F08211C60127000 +:1037700082859727393C4E3E5053653F51546656DB +:10378000686B7D08200657696C7E6E8083951C20CF +:103790000255676A7C1460026D7F829408211C10B8 +:1037A0001185979AAC000001010303040406060783 +:1037B0000709090A01101B0B0B0D0D0E0E1010113D +:1037C00011131314140F0F101012121313151516D2 +:1037D0001618181901600C1A1A1C1C1D1D1F1F2019 +:1037E00020222223231860061B1B1C1C1E1E1F1FC9 +:1037F000181015252526262828292924242525279B +:103800002728282A2A2B2B2D2D2E01A00C2F2F31D3 +:1038100031323234343535373738384C2134A01210 +:103820002626272729292A2A2C2C2D2D2F2F3030E8 +:103830002B2B2C2C34A00E35353636383839393B05 +:103840003B3C3C3E3E3F3F4C60023A3A3B3B18100B +:10385000154141424244444545404041414343446F +:10386000444646474749494A013C0C4B4B4D4D4E57 +:103870004E50505151535354540403FE1510AC187C +:1038800052FF01F10F28520106F3059919489203DE +:103890005443F503042130F311EC075CF0025B02A2 +:1038A000000000244004E02A0000C0550821D4F4A0 +:1038B00004116771FFFF1A3A2CF33903002443BA4D +:1038C0009E042554F4027F753D000024F50F51F24B +:1038D00006011FF2024728F20A10441AC8ABFE582C +:1038E000041906FC315E010001020304595A5B5CB5 +:1038F0005D636465676869001005A05C4404770433 +:103900004F7F0B903C0014000000000000000000FE +:103910000000000000000000013C1CFC061366666D +:10392000663FCDCC4C3F9003F4031E010000000124 +:10393000A0FC0D700000000000000000010000006D +:10394000000001AB07F61B10641E40B403FB000728 +:103950001F9B340E609C7866805DEFC81006F03CBB +:1039600064098024EA15E8F4040C636465676869F7 +:10397000CCFD04AF032924A40B060708090024F496 +:1039800000534E414D59749007020500100261002A +:1039900000058122549A000600003854D70031FFF8 +:1039A000F20E0001120A04520704220511F3FF026D +:1039B0000001F1FF01F11701180F400000803FFFE7 +:1039C000CAA3BFF986F43EFBB54A3D5E1301011957 +:1039D000F23A786560062D431CEBE2361A3F08FA8E +:1039E0000214E4520104310C200102030404A00279 +:1039F000060708091C72012A0300000000000000ED +:103A000000000000000000000000000000000000B6 +:103A100000000000000000000000000000000000A6 +:103A20000000000000000000000000000000000096 +:103A30000000000000000000000000000000000086 +:103A40000000000000000000000000000000000076 +:103A50000000000000000000000000000000000066 +:103A60000000000000000000000000000000000056 +:103A70000000000000000000000000000000000046 +:103A80000000000000000000000000000000000036 +:103A90000000000000000000000000000000000026 +:103AA0000000000000000000000000000000000016 +:103AB0000000000000000000000000000000000006 +:103AC00000000000000000000000000000000000F6 +:103AD00000000000000000000000000000000000E6 +:103AE00000000000000000000000000000000000D6 +:103AF00000000000000000000000000000000000C6 +:103B000000000000000000000000000000000000B5 +:103B100000000000000000000000000000000000A5 +:103B20000000000000000000000000000000000095 +:103B30000000000000000000000000000000000085 +:103B40000000000000000000000000000000000075 +:103B50000000000000000000000000000000000065 +:103B60000000000000000000000000000000000055 +:103B70000000000000000000000000000000000045 +:103B80000000000000000000000000000000000035 +:103B90000000000000000000000000000000000025 +:103BA0000000000000000000000000000000000015 +:103BB0000000000000000000000000000000000005 +:103BC00000000000000000000000000000000000F5 +:103BD00000000000000000000000000000000000E5 +:103BE00000000000000000000000000000000000D5 +:103BF00000000000000000000000000000000000C5 +:103C000000000000000000000000000000000000B4 +:103C100000000000000000000000000000000000A4 +:103C20000000000000000000000000000000000094 +:103C30000000000000000000000000000000000084 +:103C40000000000000000000000000000000000074 +:103C50000000000000000000000000000000000064 +:103C60000000000000000000000000000000000054 +:103C70000000000000000000000000000000000044 +:103C80000000000000000000000000000000000034 +:103C90000000000000000000000000000000000024 +:103CA0000000000000000000000000000000000014 +:103CB0000000000000000000000000000000000004 +:103CC00000000000000000000000000000000000F4 +:103CD00000000000000000000000000000000000E4 +:103CE00000000000000000000000000000000000D4 +:103CF00000000000000000000000000000000000C4 +:103D000000000000000000000000000000000000B3 +:103D100000000000000000000000000000000000A3 +:103D20000000000000000000000000000000000093 +:103D30000000000000000000000000000000000083 +:103D40000000000000000000000000000000000073 +:103D50000000000000000000000000000000000063 +:103D60000000000000000000000000000000000053 +:103D70000000000000000000000000000000000043 +:103D80000000000000000000000000000000000033 +:103D90000000000000000000000000000000000023 +:103DA0000000000000000000000000000000000013 +:103DB0000000000000000000000000000000000003 +:103DC00000000000000000000000000000000000F3 +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000000000D3 +:103DF00000000000000000000000000000000000C3 +:103E000000000000000000000000000000000000B2 +:103E100000000000000000000000000000000000A2 +:103E20000000000000000000000000000000000092 +:103E30000000000000000000000000000000000082 +:103E40000000000000000000000000000000000072 +:103E50000000000000000000000000000000000062 +:103E60000000000000000000000000000000000052 +:103E70000000000000000000000000000000000042 +:103E80000000000000000000000000000000000032 +:103E90000000000000000000000000000000000022 +:103EA0000000000000000000000000000000000012 +:103EB0000000000000000000000000000000000002 +:103EC00000000000000000000000000000000000F2 +:103ED00000000000000000000000000000000000E2 +:103EE00000000000000000000000000000000000D2 +:103EF00000000000000000000000000000000000C2 +:103F000000000000000000000000000000000000B1 +:103F100000000000000000000000000000000000A1 +:103F20000000000000000000000000000000000091 +:103F30000000000000000000000000000000000081 +:103F40000000000000000000000000000000000071 +:103F50000000000000000000000000000000000061 +:103F60000000000000000000000000000000000051 +:103F70000000000000000000000000000000000041 +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA0000000000000000000000000000000000011 +:103FB0000000000000000000000000000000000001 +:103FC00000000000000000000000000000000000F1 +:103FD00000000000000000000000000000000000E1 +:103FE00000000000000000000000000000000000D1 +:103FF00000000000000000000000000000000000C1 +:1040000000000000000000000000000000000000B0 +:1040100000000000000000000000000000000000A0 +:104020000000000000000000000000000000000090 +:104030000000000000000000000000000000000080 +:104040000000000000000000000000000000000070 +:104050000000000000000000000000000000000060 +:104060000000000000000000000000000000000050 +:104070000000000000000000000000000000000040 +:104080000000000000000000000000000000000030 +:104090000000000000000000000000000000000020 +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C00000000000000000000000000000000000F0 +:1040D00000000000000000000000000000000000E0 +:1040E00000000000000000000000000000000000D0 +:1040F00000000000000000000000000000000000C0 +:1041000000000000000000000000000000000000AF +:10411000000000000000000000000000000000009F +:10412000000000000000000000000000000000008F +:10413000000000000000000000000000000000007F +:10414000000000000000000000000000000000006F +:10415000000000000000000000000000000000005F +:10416000000000000000000000000000000000004F +:10417000000000000000000000000000000000003F +:10418000000000000000000000000000000000002F +:10419000000000000000000000000000000000001F +:1041A000000000000000000000000000000000000F +:1041B00000000000000000000000000000000000FF +:1041C00000000000000000000000000000000000EF +:1041D00000000000000000000000000000000000DF +:1041E00000000000000000000000000000000000CF +:1041F00000000000000000000000000000000000BF +:1042000000000000000000000000000000000000AE +:10421000000000000000000000000000000000009E +:10422000000000000000000000000000000000008E +:10423000000000000000000000000000000000007E +:10424000000000000000000000000000000000006E +:10425000000000000000000000000000000000005E +:10426000000000000000000000000000000000004E +:10427000000000000000000000000000000000003E +:10428000000000000000000000000000000000002E +:10429000000000000000000000000000000000001E +:1042A000000000000000000000000000000000000E +:1042B00000000000000000000000000000000000FE +:1042C00000000000000000000000000000000000EE +:1042D00000000000000000000000000000000000DE +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000000000000000000000000000AD +:10431000000000000000000000000000000000009D +:10432000000000000000000000000000000000008D +:10433000000000000000000000000000000000007D +:10434000000000000000000000000000000000006D +:10435000000000000000000000000000000000005D +:10436000000000000000000000000000000000004D +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:10439000000000000000000000000000000000001D +:1043A000000000000000000000000000000000000D +:1043B00000000000000000000000000000000000FD +:1043C00000000000000000000000000000000000ED +:1043D00000000000000000000000000000000000DD +:1043E00000000000000000000000000000000000CD +:1043F00000000000000000000000000000000000BD +:1044000000000000000000000000000000000000AC +:10441000000000000000000000000000000000009C +:10442000000000000000000000000000000000008C +:10443000000000000000000000000000000000007C +:10444000000000000000000000000000000000006C +:10445000000000000000000000000000000000005C +:10446000000000000000000000000000000000004C +:10447000000000000000000000000000000000003C +:10448000000000000000000000000000000000002C +:10449000000000000000000000000000000000001C +:1044A000000000000000000000000000000000000C +:1044B00000000000000000000000000000000000FC +:1044C00000000000000000000000000000000000EC +:1044D00000000000000000000000000000000000DC +:1044E00000000000000000000000000000000000CC +:1044F00000000000000000000000000000000000BC +:1045000000000000000000000000000000000000AB +:10451000000000000000000000000000000000009B +:10452000000000000000000000000000000000008B +:10453000000000000000000000000000000000007B +:10454000000000000000000000000000000000006B +:10455000000000000000000000000000000000005B +:10456000000000000000000000000000000000004B +:10457000000000000000000000000000000000003B +:10458000000000000000000000000000000000002B +:10459000000000000000000000000000000000001B +:1045A000000000000000000000000000000000000B +:1045B00000000000000000000000000000000000FB +:1045C00000000000000000000000000000000000EB +:1045D00000000000000000000000000000000000DB +:1045E00000000000000000000000000000000000CB +:1045F00000000000000000000000000000000000BB +:1046000000000000000000000000000000000000AA +:10461000000000000000000000000000000000009A +:10462000000000000000000000000000000000008A +:10463000000000000000000000000000000000007A +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:10466000000000000000000000000000000000004A +:10467000000000000000000000000000000000003A +:10468000000000000000000000000000000000002A +:10469000000000000000000000000000000000001A +:1046A000000000000000000000000000000000000A +:1046B00000000000000000000000000000000000FA +:1046C00000000000000000000000000000000000EA +:1046D00000000000000000000000000000000000DA +:1046E00000000000000000000000000000000000CA +:1046F00000000000000000000000000000000000BA +:1047000000000000000000000000000000000000A9 +:104710000000000000000000000000000000000099 +:104720000000000000000000000000000000000089 +:104730000000000000000000000000000000000079 +:104740000000000000000000000000000000000069 +:104750000000000000000000000000000000000059 +:104760000000000000000000000000000000000049 +:104770000000000000000000000000000000000039 +:104780000000000000000000000000000000000029 +:104790000000000000000000000000000000000019 +:1047A0000000000000000000000000000000000009 +:1047B00000000000000000000000000000000000F9 +:1047C00000000000000000000000000000000000E9 +:1047D00000000000000000000000000000000000D9 +:1047E00000000000000000000000000000000000C9 +:1047F00000000000000000000000000000000000B9 +:1048000000000000000000000000000000000000A8 +:104810000000000000000000000000000000000098 +:104820000000000000000000000000000000000088 +:104830000000000000000000000000000000000078 +:104840000000000000000000000000000000000068 +:104850000000000000000000000000000000000058 +:104860000000000000000000000000000000000048 +:104870000000000000000000000000000000000038 +:104880000000000000000000000000000000000028 +:104890000000000000000000000000000000000018 +:1048A0000000000000000000000000000000000008 +:1048B00000000000000000000000000000000000F8 +:1048C00000000000000000000000000000000000E8 +:1048D00000000000000000000000000000000000D8 +:1048E00000000000000000000000000000000000C8 +:1048F00000000000000000000000000000000000B8 +:1049000000000000000000000000000000000000A7 +:104910000000000000000000000000000000000097 +:104920000000000000000000000000000000000087 +:104930000000000000000000000000000000000077 +:104940000000000000000000000000000000000067 +:104950000000000000000000000000000000000057 +:104960000000000000000000000000000000000047 +:104970000000000000000000000000000000000037 +:104980000000000000000000000000000000000027 +:104990000000000000000000000000000000000017 +:1049A0000000000000000000000000000000000007 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000000000000000000000000000E7 +:1049D00000000000000000000000000000000000D7 +:1049E00000000000000000000000000000000000C7 +:1049F00000000000000000000000000000000000B7 +:104A000000000000000000000000000000000000A6 +:104A10000000000000000000000000000000000096 +:104A20000000000000000000000000000000000086 +:104A30000000000000000000000000000000000076 +:104A40000000000000000000000000000000000066 +:104A50000000000000000000000000000000000056 +:104A60000000000000000000000000000000000046 +:104A70000000000000000000000000000000000036 +:104A80000000000000000000000000000000000026 +:104A90000000000000000000000000000000000016 +:104AA0000000000000000000000000000000000006 +:104AB00000000000000000000000000000000000F6 +:104AC00000000000000000000000000000000000E6 +:104AD00000000000000000000000000000000000D6 +:104AE00000000000000000000000000000000000C6 +:104AF00000000000000000000000000000000000B6 +:104B000000000000000000000000000000000000A5 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000000000000085 +:104B30000000000000000000000000000000000075 +:104B40000000000000000000000000000000000065 +:104B50000000000000000000000000000000000055 +:104B60000000000000000000000000000000000045 +:104B70000000000000000000000000000000000035 +:104B80000000000000000000000000000000000025 +:104B90000000000000000000000000000000000015 +:104BA0000000000000000000000000000000000005 +:104BB00000000000000000000000000000000000F5 +:104BC00000000000000000000000000000000000E5 +:104BD00000000000000000000000000000000000D5 +:104BE00000000000000000000000000000000000C5 +:104BF00000000000000000000000000000000000B5 +:104C000000000000000000000000000000000000A4 +:104C10000000000000000000000000000000000094 +:104C20000000000000000000000000000000000084 +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000000000000064 +:104C50000000000000000000000000000000000054 +:104C60000000000000000000000000000000000044 +:104C70000000000000000000000000000000000034 +:104C80000000000000000000000000000000000024 +:104C90000000000000000000000000000000000014 +:104CA0000000000000000000000000000000000004 +:104CB00000000000000000000000000000000000F4 +:104CC00000000000000000000000000000000000E4 +:104CD00000000000000000000000000000000000D4 +:104CE00000000000000000000000000000000000C4 +:104CF00000000000000000000000000000000000B4 +:104D000000000000000000000000000000000000A3 +:104D10000000000000000000000000000000000093 +:104D20000000000000000000000000000000000083 +:104D30000000000000000000000000000000000073 +:104D40000000000000000000000000000000000063 +:104D50000000000000000000000000000000000053 +:104D60000000000000000000000000000000000043 +:104D70000000000000000000000000000000000033 +:104D80000000000000000000000000000000000023 +:104D90000000000000000000000000000000000013 +:104DA0000000000000000000000000000000000003 +:104DB00000000000000000000000000000000000F3 +:104DC00000000000000000000000000000000000E3 +:104DD00000000000000000000000000000000000D3 +:104DE00000000000000000000000000000000000C3 +:104DF00000000000000000000000000000000000B3 +:104E000000000000000000000000000000000000A2 +:104E10000000000000000000000000000000000092 +:104E20000000000000000000000000000000000082 +:104E30000000000000000000000000000000000072 +:104E40000000000000000000000000000000000062 +:104E50000000000000000000000000000000000052 +:104E60000000000000000000000000000000000042 +:104E70000000000000000000000000000000000032 +:104E80000000000000000000000000000000000022 +:104E90000000000000000000000000000000000012 +:104EA0000000000000000000000000000000000002 +:104EB00000000000000000000000000000000000F2 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 +:104EE00000000000000000000000000000000000C2 +:104EF00000000000000000000000000000000000B2 +:104F000000000000000000000000000000000000A1 +:104F10000000000000000000000000000000000091 +:104F20000000000000000000000000000000000081 +:104F30000000000000000000000000000000000071 +:104F40000000000000000000000000000000000061 +:104F50000000000000000000000000000000000051 +:104F60000000000000000000000000000000000041 +:104F70000000000000000000000000000000000031 +:104F80000000000000000000000000000000000021 +:104F90000000000000000000000000000000000011 +:104FA0000000000000000000000000000000000001 +:104FB00000000000000000000000000000000000F1 +:104FC00000000000000000000000000000000000E1 +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF00000000000000000000000000000000000B1 +:1050000000000000000000000000000000000000A0 +:105010000000000000000000000000000000000090 +:105020000000000000000000000000000000000080 +:105030000000000000000000000000000000000070 +:105040000000000000000000000000000000000060 +:105050000000000000000000000000000000000050 +:105060000000000000000000000000000000000040 +:105070000000000000000000000000000000000030 +:105080000000000000000000000000000000000020 +:105090000000000000000000000000000000000010 +:1050A0000000000000000000000000000000000000 +:1050B00000000000000000000000000000000000F0 +:1050C00000000000000000000000000000000000E0 +:1050D00000000000000000000000000000000000D0 +:1050E00000000000000000000000000000000000C0 +:1050F00000000000000000000000000000000000B0 +:10510000000000000000000000000000000000009F +:10511000000000000000000000000000000000008F +:10512000000000000000000000000000000000007F +:10513000000000000000000000000000000000006F +:10514000000000000000000000000000000000005F +:10515000000000000000000000000000000000004F +:10516000000000000000000000000000000000003F +:10517000000000000000000000000000000000002F +:10518000000000000000000000000000000000001F +:10519000000000000000000000000000000000000F +:1051A00000000000000000000000000000000000FF +:1051B00000000000000000000000000000000000EF +:1051C00000000000000000000000000000000000DF +:1051D00000000000000000000000000000000000CF +:1051E00000000000000000000000000000000000BF +:1051F00000000000000000000000000000000000AF +:10520000000000000000000000000000000000009E +:10521000000000000000000000000000000000008E +:10522000000000000000000000000000000000007E +:10523000000000000000000000000000000000006E +:10524000000000000000000000000000000000005E +:10525000000000000000000000000000000000004E +:10526000000000000000000000000000000000003E +:10527000000000000000000000000000000000002E +:10528000000000000000000000000000000000001E +:10529000000000000000000000000000000000000E +:1052A00000000000000000000000000000000000FE +:1052B00000000000000000000000000000000000EE +:1052C00000000000000000000000000000000000DE +:1052D00000000000000000000000000000000000CE +:1052E00000000000000000000000000000000000BE +:1052F00000000000000000000000000000000000AE +:10530000000000000000000000000000000000009D +:10531000000000000000000000000000000000008D +:10532000000000000000000000000000000000007D +:10533000000000000000000000000000000000006D +:10534000000000000000000000000000000000005D +:10535000000000000000000000000000000000004D +:10536000000000000000000000000000000000003D +:10537000000000000000000000000000000000002D +:10538000000000000000000000000000000000001D +:10539000000000000000000000000000000000000D +:1053A00000000000000000000000000000000000FD +:1053B00000000000000000000000000000000000ED +:1053C00000000000000000000000000000000000DD +:1053D00000000000000000000000000000000000CD +:1053E00000000000000000000000000000000000BD +:1053F00000000000000000000000000000000000AD +:10540000000000000000000000000000000000009C +:10541000000000000000000000000000000000008C +:10542000000000000000000000000000000000007C +:10543000000000000000000000000000000000006C +:10544000000000000000000000000000000000005C +:10545000000000000000000000000000000000004C +:10546000000000000000000000000000000000003C +:10547000000000000000000000000000000000002C +:10548000000000000000000000000000000000001C +:10549000000000000000000000000000000000000C +:1054A00000000000000000000000000000000000FC +:1054B00000000000000000000000000000000000EC +:1054C00000000000000000000000000000000000DC +:1054D00000000000000000000000000000000000CC +:1054E00000000000000000000000000000000000BC +:1054F00000000000000000000000000000000000AC +:10550000000000000000000000000000000000009B +:10551000000000000000000000000000000000008B +:10552000000000000000000000000000000000007B +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:10555000000000000000000000000000000000004B +:10556000000000000000000000000000000000003B +:10557000000000000000000000000000000000002B +:10558000000000000000000000000000000000001B +:10559000000000000000000000000000000000000B +:1055A00000000000000000000000000000000000FB +:1055B00000000000000000000000000000000000EB +:1055C00000000000000000000000000000000000DB +:1055D00000000000000000000000000000000000CB +:1055E00000000000000000000000000000000000BB +:1055F00000000000000000000000000000000000AB +:10560000000000000000000000000000000000009A +:10561000000000000000000000000000000000008A +:10562000000000000000000000000000000000007A +:10563000000000000000000000000000000000006A +:10564000000000000000000000000000000000005A +:10565000000000000000000000000000000000004A +:10566000000000000000000000000000000000003A +:10567000000000000000000000000000000000002A +:10568000000000000000000000000000000000001A +:10569000000000000000000000000000000000000A +:1056A00000000000000000000000000000000000FA +:1056B00000000000000000000000000000000000EA +:1056C00000000000000000000000000000000000DA +:1056D00000000000000000000000000000000000CA +:1056E00000000000000000000000000000000000BA +:1056F00000000000000000000000000000000000AA +:105700000000000000000000000000000000000099 +:105710000000000000000000000000000000000089 +:105720000000000000000000000000000000000079 +:105730000000000000000000000000000000000069 +:105740000000000000000000000000000000000059 +:105750000000000000000000000000000000000049 +:105760000000000000000000000000000000000039 +:105770000000000000000000000000000000000029 +:105780000000000000000000000000000000000019 +:105790000000000000000000000000000000000009 +:1057A00000000000000000000000000000000000F9 +:1057B00000000000000000000000000000000000E9 +:1057C00000000000000000000000000000000000D9 +:1057D00000000000000000000000000000000000C9 +:1057E00000000000000000000000000000000000B9 +:1057F00000000000000000000000000000000000A9 +:105800000000000000000000000000000000000098 +:105810000000000000000000000000000000000088 +:105820000000000000000000000000000000000078 +:105830000000000000000000000000000000000068 +:105840000000000000000000000000000000000058 +:105850000000000000000000000000000000000048 +:105860000000000000000000000000000000000038 +:105870000000000000000000000000000000000028 +:105880000000000000000000000000000000000018 +:105890000000000000000000000000000000000008 +:1058A00000000000000000000000000000000000F8 +:1058B00000000000000000000000000000000000E8 +:1058C00000000000000000000000000000000000D8 +:1058D00000000000000000000000000000000000C8 +:1058E00000000000000000000000000000000000B8 +:1058F00000000000000000000000000000000000A8 +:105900000000000000000000000000000000000097 +:105910000000000000000000000000000000000087 +:105920000000000000000000000000000000000077 +:105930000000000000000000000000000000000067 +:105940000000000000000000000000000000000057 +:105950000000000000000000000000000000000047 +:105960000000000000000000000000000000000037 +:105970000000000000000000000000000000000027 +:105980000000000000000000000000000000000017 +:105990000000000000000000000000000000000007 +:1059A00000000000000000000000000000000000F7 +:1059B00000000000000000000000000000000000E7 +:1059C00000000000000000000000000000000000D7 +:1059D00000000000000000000000000000000000C7 +:1059E00000000000000000000000000000000000B7 +:1059F00000000000000000000000000000000000A7 +:105A00000000000000000000000000000000000096 +:105A10000000000000000000000000000000000086 +:105A20000000000000000000000000000000000076 +:105A30000000000000000000000000000000000066 +:105A40000000000000000000000000000000000056 +:105A50000000000000000000000000000000000046 +:105A60000000000000000000000000000000000036 +:105A70000000000000000000000000000000000026 +:105A80000000000000000000000000000000000016 +:105A90000000000000000000000000000000000006 +:105AA00000000000000000000000000000000000F6 +:105AB00000000000000000000000000000000000E6 +:105AC00000000000000000000000000000000000D6 +:105AD00000000000000000000000000000000000C6 +:105AE00000000000000000000000000000000000B6 +:105AF00000000000000000000000000000000000A6 +:105B00000000000000000000000000000000000095 +:105B10000000000000000000000000000000000085 +:105B20000000000000000000000000000000000075 +:105B30000000000000000000000000000000000065 +:105B40000000000000000000000000000000000055 +:105B50000000000000000000000000000000000045 +:105B60000000000000000000000000000000000035 +:105B70000000000000000000000000000000000025 +:105B80000000000000000000000000000000000015 +:105B90000000000000000000000000000000000005 +:105BA00000000000000000000000000000000000F5 +:105BB00000000000000000000000000000000000E5 +:105BC00000000000000000000000000000000000D5 +:105BD00000000000000000000000000000000000C5 +:105BE00000000000000000000000000000000000B5 +:105BF00000000000000000000000000000000000A5 +:105C00000000000000000000000000000000000094 +:105C10000000000000000000000000000000000084 +:105C20000000000000000000000000000000000074 +:105C30000000000000000000000000000000000064 +:105C40000000000000000000000000000000000054 +:105C50000000000000000000000000000000000044 +:105C60000000000000000000000000000000000034 +:105C70000000000000000000000000000000000024 +:105C80000000000000000000000000000000000014 +:105C90000000000000000000000000000000000004 +:105CA00000000000000000000000000000000000F4 +:105CB00000000000000000000000000000000000E4 +:105CC00000000000000000000000000000000000D4 +:105CD00000000000000000000000000000000000C4 +:105CE00000000000000000000000000000000000B4 +:105CF00000000000000000000000000000000000A4 +:105D00000000000000000000000000000000000093 +:105D10000000000000000000000000000000000083 +:105D20000000000000000000000000000000000073 +:105D30000000000000000000000000000000000063 +:105D40000000000000000000000000000000000053 +:105D50000000000000000000000000000000000043 +:105D60000000000000000000000000000000000033 +:105D70000000000000000000000000000000000023 +:105D80000000000000000000000000000000000013 +:105D90000000000000000000000000000000000003 +:105DA00000000000000000000000000000000000F3 +:105DB00000000000000000000000000000000000E3 +:105DC00000000000000000000000000000000000D3 +:105DD00000000000000000000000000000000000C3 +:105DE00000000000000000000000000000000000B3 +:105DF00000000000000000000000000000000000A3 +:105E00000000000000000000000000000000000092 +:105E10000000000000000000000000000000000082 +:105E20000000000000000000000000000000000072 +:105E30000000000000000000000000000000000062 +:105E40000000000000000000000000000000000052 +:105E50000000000000000000000000000000000042 +:105E60000000000000000000000000000000000032 +:105E70000000000000000000000000000000000022 +:105E80000000000000000000000000000000000012 +:105E90000000000000000000000000000000000002 +:105EA00000000000000000000000000000000000F2 +:105EB00000000000000000000000000000000000E2 +:105EC00000000000000000000000000000000000D2 +:105ED00000000000000000000000000000000000C2 +:105EE00000000000000000000000000000000000B2 +:105EF00000000000000000000000000000000000A2 +:105F00000000000000000000000000000000000091 +:105F10000000000000000000000000000000000081 +:105F20000000000000000000000000000000000071 +:105F30000000000000000000000000000000000061 +:105F40000000000000000000000000000000000051 +:105F50000000000000000000000000000000000041 +:105F60000000000000000000000000000000000031 +:105F70000000000000000000000000000000000021 +:105F80000000000000000000000000000000000011 +:105F90000000000000000000000000000000000001 +:105FA00000000000000000000000000000000000F1 +:105FB00000000000000000000000000000000000E1 +:105FC00000000000000000000000000000000000D1 +:105FD00000000000000000000000000000000000C1 +:105FE00000000000000000000000000000000000B1 +:105FF00000000000000000000000000000000000A1 +:106000000000000000000000000000000000000090 +:106010000000000000000000000000000000000080 +:106020000000000000000000000000000000000070 +:106030000000000000000000000000000000000060 +:106040000000000000000000000000000000000050 +:106050000000000000000000000000000000000040 +:106060000000000000000000000000000000000030 +:106070000000000000000000000000000000000020 +:106080000000000000000000000000000000000010 +:106090000000000000000000000000000000000000 +:1060A00000000000000000000000000000000000F0 +:1060B00000000000000000000000000000000000E0 +:1060C00000000000000000000000000000000000D0 +:1060D00000000000000000000000000000000000C0 +:1060E00000000000000000000000000000000000B0 +:1060F00000000000000000000000000000000000A0 +:10610000000000000000000000000000000000008F +:10611000000000000000000000000000000000007F +:10612000000000000000000000000000000000006F +:10613000000000000000000000000000000000005F +:10614000000000000000000000000000000000004F +:10615000000000000000000000000000000000003F +:10616000000000000000000000000000000000002F +:10617000000000000000000000000000000000001F +:10618000000000000000000000000000000000000F +:1061900000000000000000000000000000000000FF +:1061A00000000000000000000000000000000000EF +:1061B00000000000000000000000000000000000DF +:1061C00000000000000000000000000000000000CF +:1061D00000000000000000000000000000000000BF +:1061E00000000000000000000000000000000000AF +:1061F000000000000000000000000000000000009F +:10620000000000000000000000000000000000008E +:10621000000000000000000000000000000000007E +:10622000000000000000000000000000000000006E +:10623000000000000000000000000000000000005E +:10624000000000000000000000000000000000004E +:10625000000000000000000000000000000000003E +:10626000000000000000000000000000000000002E +:10627000000000000000000000000000000000001E +:10628000000000000000000000000000000000000E +:1062900000000000000000000000000000000000FE +:1062A00000000000000000000000000000000000EE +:1062B00000000000000000000000000000000000DE +:1062C00000000000000000000000000000000000CE +:1062D00000000000000000000000000000000000BE +:1062E00000000000000000000000000000000000AE +:1062F000000000000000000000000000000000009E +:10630000000000000000000000000000000000008D +:10631000000000000000000000000000000000007D +:10632000000000000000000000000000000000006D +:10633000000000000000000000000000000000005D +:10634000000000000000000000000000000000004D +:10635000000000000000000000000000000000003D +:10636000000000000000000000000000000000002D +:10637000000000000000000000000000000000001D +:10638000000000000000000000000000000000000D +:1063900000000000000000000000000000000000FD +:1063A00000000000000000000000000000000000ED +:1063B00000000000000000000000000000000000DD +:1063C00000000000000000000000000000000000CD +:1063D00000000000000000000000000000000000BD +:1063E00000000000000000000000000000000000AD +:1063F000000000000000000000000000000000009D +:10640000000000000000000000000000000000008C +:10641000000000000000000000000000000000007C +:10642000000000000000000000000000000000006C +:10643000000000000000000000000000000000005C +:10644000000000000000000000000000000000004C +:10645000000000000000000000000000000000003C +:10646000000000000000000000000000000000002C +:10647000000000000000000000000000000000001C +:10648000000000000000000000000000000000000C +:1064900000000000000000000000000000000000FC +:1064A00000000000000000000000000000000000EC +:1064B00000000000000000000000000000000000DC +:1064C00000000000000000000000000000000000CC +:1064D00000000000000000000000000000000000BC +:1064E00000000000000000000000000000000000AC +:1064F000000000000000000000000000000000009C +:10650000000000000000000000000000000000008B +:10651000000000000000000000000000000000007B +:10652000000000000000000000000000000000006B +:10653000000000000000000000000000000000005B +:10654000000000000000000000000000000000004B +:10655000000000000000000000000000000000003B +:10656000000000000000000000000000000000002B +:10657000000000000000000000000000000000001B +:10658000000000000000000000000000000000000B +:1065900000000000000000000000000000000000FB +:1065A00000000000000000000000000000000000EB +:1065B00000000000000000000000000000000000DB +:1065C00000000000000000000000000000000000CB +:1065D00000000000000000000000000000000000BB +:1065E00000000000000000000000000000000000AB +:1065F000000000000000000000000000000000009B +:10660000000000000000000000000000000000008A +:10661000000000000000000000000000000000007A +:10662000000000000000000000000000000000006A +:10663000000000000000000000000000000000005A +:10664000000000000000000000000000000000004A +:10665000000000000000000000000000000000003A +:10666000000000000000000000000000000000002A +:10667000000000000000000000000000000000001A +:10668000000000000000000000000000000000000A +:1066900000000000000000000000000000000000FA +:1066A00000000000000000000000000000000000EA +:1066B00000000000000000000000000000000000DA +:1066C00000000000000000000000000000000000CA +:1066D00000000000000000000000000000000000BA +:1066E00000000000000000000000000000000000AA +:1066F000000000000000000000000000000000009A +:106700000000000000000000000000000000000089 +:106710000000000000000000000000000000000079 +:106720000000000000000000000000000000000069 +:106730000000000000000000000000000000000059 +:106740000000000000000000000000000000000049 +:106750000000000000000000000000000000000039 +:106760000000000000000000000000000000000029 +:106770000000000000000000000000000000000019 +:106780000000000000000000000000000000000009 +:1067900000000000000000000000000000000000F9 +:1067A00000000000000000000000000000000000E9 +:1067B00000000000000000000000000000000000D9 +:1067C00000000000000000000000000000000000C9 +:1067D00000000000000000000000000000000000B9 +:1067E00000000000000000000000000000000000A9 +:1067F0000000000000000000000000000000000099 +:106800000000000000000000000000000000000088 +:106810000000000000000000000000000000000078 +:106820000000000000000000000000000000000068 +:106830000000000000000000000000000000000058 +:106840000000000000000000000000000000000048 +:106850000000000000000000000000000000000038 +:106860000000000000000000000000000000000028 +:106870000000000000000000000000000000000018 +:106880000000000000000000000000000000000008 +:1068900000000000000000000000000000000000F8 +:1068A00000000000000000000000000000000000E8 +:1068B00000000000000000000000000000000000D8 +:1068C00000000000000000000000000000000000C8 +:1068D00000000000000000000000000000000000B8 +:1068E00000000000000000000000000000000000A8 +:1068F0000000000000000000000000000000000098 +:106900000000000000000000000000000000000087 +:106910000000000000000000000000000000000077 +:106920000000000000000000000000000000000067 +:106930000000000000000000000000000000000057 +:106940000000000000000000000000000000000047 +:106950000000000000000000000000000000000037 +:106960000000000000000000000000000000000027 +:106970000000000000000000000000000000000017 +:106980000000000000000000000000000000000007 +:1069900000000000000000000000000000000000F7 +:1069A00000000000000000000000000000000000E7 +:1069B00000000000000000000000000000000000D7 +:1069C00000000000000000000000000000000000C7 +:1069D00000000000000000000000000000000000B7 +:1069E00000000000000000000000000000000000A7 +:1069F0000000000000000000000000000000000097 +:106A00000000000000000000000000000000000086 +:106A10000000000000000000000000000000000076 +:106A20000000000000000000000000000000000066 +:106A30000000000000000000000000000000000056 +:106A40000000000000000000000000000000000046 +:106A50000000000000000000000000000000000036 +:106A60000000000000000000000000000000000026 +:106A70000000000000000000000000000000000016 +:106A80000000000000000000000000000000000006 +:106A900000000000000000000000000000000000F6 +:106AA00000000000000000000000000000000000E6 +:106AB00000000000000000000000000000000000D6 +:106AC00000000000000000000000000000000000C6 +:106AD00000000000000000000000000000000000B6 +:106AE00000000000000000000000000000000000A6 +:106AF0000000000000000000000000000000000096 +:106B00000000000000000000000000000000000085 +:106B10000000000000000000000000000000000075 +:106B20000000000000000000000000000000000065 +:106B30000000000000000000000000000000000055 +:106B40000000000000000000000000000000000045 +:106B50000000000000000000000000000000000035 +:106B60000000000000000000000000000000000025 +:106B70000000000000000000000000000000000015 +:106B80000000000000000000000000000000000005 +:106B900000000000000000000000000000000000F5 +:106BA00000000000000000000000000000000000E5 +:106BB00000000000000000000000000000000000D5 +:106BC00000000000000000000000000000000000C5 +:106BD00000000000000000000000000000000000B5 +:106BE00000000000000000000000000000000000A5 +:106BF0000000000000000000000000000000000095 +:106C00000000000000000000000000000000000084 +:106C10000000000000000000000000000000000074 +:106C20000000000000000000000000000000000064 +:106C30000000000000000000000000000000000054 +:106C40000000000000000000000000000000000044 +:106C50000000000000000000000000000000000034 +:106C60000000000000000000000000000000000024 +:106C70000000000000000000000000000000000014 +:106C80000000000000000000000000000000000004 +:106C900000000000000000000000000000000000F4 +:106CA00000000000000000000000000000000000E4 +:106CB00000000000000000000000000000000000D4 +:106CC00000000000000000000000000000000000C4 +:106CD00000000000000000000000000000000000B4 +:106CE00000000000000000000000000000000000A4 +:106CF0000000000000000000000000000000000094 +:106D00000000000000000000000000000000000083 +:106D10000000000000000000000000000000000073 +:106D20000000000000000000000000000000000063 +:106D30000000000000000000000000000000000053 +:106D40000000000000000000000000000000000043 +:106D50000000000000000000000000000000000033 +:106D60000000000000000000000000000000000023 +:106D70000000000000000000000000000000000013 +:106D80000000000000000000000000000000000003 +:106D900000000000000000000000000000000000F3 +:106DA00000000000000000000000000000000000E3 +:106DB00000000000000000000000000000000000D3 +:106DC00000000000000000000000000000000000C3 +:106DD00000000000000000000000000000000000B3 +:106DE00000000000000000000000000000000000A3 +:106DF0000000000000000000000000000000000093 +:106E00000000000000000000000000000000000082 +:106E10000000000000000000000000000000000072 +:106E20000000000000000000000000000000000062 +:106E30000000000000000000000000000000000052 +:106E40000000000000000000000000000000000042 +:106E50000000000000000000000000000000000032 +:106E60000000000000000000000000000000000022 +:106E70000000000000000000000000000000000012 +:106E80000000000000000000000000000000000002 +:106E900000000000000000000000000000000000F2 +:106EA00000000000000000000000000000000000E2 +:106EB00000000000000000000000000000000000D2 +:106EC00000000000000000000000000000000000C2 +:106ED00000000000000000000000000000000000B2 +:106EE00000000000000000000000000000000000A2 +:106EF0000000000000000000000000000000000092 +:106F00000000000000000000000000000000000081 +:106F10000000000000000000000000000000000071 +:106F20000000000000000000000000000000000061 +:106F30000000000000000000000000000000000051 +:106F40000000000000000000000000000000000041 +:106F50000000000000000000000000000000000031 +:106F60000000000000000000000000000000000021 +:106F70000000000000000000000000000000000011 +:106F80000000000000000000000000000000000001 +:106F900000000000000000000000000000000000F1 +:106FA00000000000000000000000000000000000E1 +:106FB00000000000000000000000000000000000D1 +:106FC00000000000000000000000000000000000C1 +:106FD00000000000000000000000000000000000B1 +:106FE00000000000000000000000000000000000A1 +:106FF0000000000000000000000000000000000091 +:107000000000000000000000000000000000000080 +:107010000000000000000000000000000000000070 +:107020000000000000000000000000000000000060 +:107030000000000000000000000000000000000050 +:107040000000000000000000000000000000000040 +:107050000000000000000000000000000000000030 +:107060000000000000000000000000000000000020 +:107070000000000000000000000000000000000010 +:107080000000000000000000000000000000000000 +:1070900000000000000000000000000000000000F0 +:1070A00000000000000000000000000000000000E0 +:1070B00000000000000000000000000000000000D0 +:1070C00000000000000000000000000000000000C0 +:1070D00000000000000000000000000000000000B0 +:1070E00000000000000000000000000000000000A0 +:1070F0000000000000000000000000000000000090 +:10710000000000000000000000000000000000007F +:10711000000000000000000000000000000000006F +:10712000000000000000000000000000000000005F +:10713000000000000000000000000000000000004F +:10714000000000000000000000000000000000003F +:10715000000000000000000000000000000000002F +:10716000000000000000000000000000000000001F +:10717000000000000000000000000000000000000F +:1071800000000000000000000000000000000000FF +:1071900000000000000000000000000000000000EF +:1071A00000000000000000000000000000000000DF +:1071B00000000000000000000000000000000000CF +:1071C00000000000000000000000000000000000BF +:1071D00000000000000000000000000000000000AF +:1071E000000000000000000000000000000000009F +:1071F000000000000000000000000000000000008F +:10720000000000000000000000000000000000007E +:10721000000000000000000000000000000000006E +:10722000000000000000000000000000000000005E +:10723000000000000000000000000000000000004E +:10724000000000000000000000000000000000003E +:10725000000000000000000000000000000000002E +:10726000000000000000000000000000000000001E +:10727000000000000000000000000000000000000E +:1072800000000000000000000000000000000000FE +:1072900000000000000000000000000000000000EE +:1072A00000000000000000000000000000000000DE +:1072B00000000000000000000000000000000000CE +:1072C00000000000000000000000000000000000BE +:1072D00000000000000000000000000000000000AE +:1072E000000000000000000000000000000000009E +:1072F000000000000000000000000000000000008E +:10730000000000000000000000000000000000007D +:10731000000000000000000000000000000000006D +:10732000000000000000000000000000000000005D +:10733000000000000000000000000000000000004D +:10734000000000000000000000000000000000003D +:10735000000000000000000000000000000000002D +:10736000000000000000000000000000000000001D +:10737000000000000000000000000000000000000D +:1073800000000000000000000000000000000000FD +:1073900000000000000000000000000000000000ED +:1073A00000000000000000000000000000000000DD +:1073B00000000000000000000000000000000000CD +:1073C00000000000000000000000000000000000BD +:1073D00000000000000000000000000000000000AD +:1073E000000000000000000000000000000000009D +:1073F000000000000000000000000000000000008D +:10740000000000000000000000000000000000007C +:10741000000000000000000000000000000000006C +:10742000000000000000000000000000000000005C +:10743000000000000000000000000000000000004C +:10744000000000000000000000000000000000003C +:10745000000000000000000000000000000000002C +:10746000000000000000000000000000000000001C +:10747000000000000000000000000000000000000C +:1074800000000000000000000000000000000000FC +:1074900000000000000000000000000000000000EC +:1074A00000000000000000000000000000000000DC +:1074B00000000000000000000000000000000000CC +:1074C00000000000000000000000000000000000BC +:1074D00000000000000000000000000000000000AC +:1074E000000000000000000000000000000000009C +:1074F000000000000000000000000000000000008C +:10750000000000000000000000000000000000007B +:10751000000000000000000000000000000000006B +:10752000000000000000000000000000000000005B +:10753000000000000000000000000000000000004B +:10754000000000000000000000000000000000003B +:10755000000000000000000000000000000000002B +:10756000000000000000000000000000000000001B +:10757000000000000000000000000000000000000B +:1075800000000000000000000000000000000000FB +:1075900000000000000000000000000000000000EB +:1075A00000000000000000000000000000000000DB +:1075B00000000000000000000000000000000000CB +:1075C00000000000000000000000000000000000BB +:1075D00000000000000000000000000000000000AB +:1075E000000000000000000000000000000000009B +:1075F000000000000000000000000000000000008B +:10760000000000000000000000000000000000007A +:10761000000000000000000000000000000000006A +:10762000000000000000000000000000000000005A +:10763000000000000000000000000000000000004A +:10764000000000000000000000000000000000003A +:10765000000000000000000000000000000000002A +:10766000000000000000000000000000000000001A +:10767000000000000000000000000000000000000A +:1076800000000000000000000000000000000000FA +:1076900000000000000000000000000000000000EA +:1076A00000000000000000000000000000000000DA +:1076B00000000000000000000000000000000000CA +:1076C00000000000000000000000000000000000BA +:1076D00000000000000000000000000000000000AA +:1076E000000000000000000000000000000000009A +:1076F000000000000000000000000000000000008A +:107700000000000000000000000000000000000079 +:107710000000000000000000000000000000000069 +:107720000000000000000000000000000000000059 +:107730000000000000000000000000000000000049 +:107740000000000000000000000000000000000039 +:107750000000000000000000000000000000000029 +:107760000000000000000000000000000000000019 +:107770000000000000000000000000000000000009 +:1077800000000000000000000000000000000000F9 +:1077900000000000000000000000000000000000E9 +:1077A00000000000000000000000000000000000D9 +:1077B00000000000000000000000000000000000C9 +:1077C00000000000000000000000000000000000B9 +:1077D00000000000000000000000000000000000A9 +:1077E0000000000000000000000000000000000099 +:1077F0000000000000000000000000000000000089 +:107800000000000000000000000000000000000078 +:107810000000000000000000000000000000000068 +:107820000000000000000000000000000000000058 +:107830000000000000000000000000000000000048 +:107840000000000000000000000000000000000038 +:107850000000000000000000000000000000000028 +:107860000000000000000000000000000000000018 +:107870000000000000000000000000000000000008 +:1078800000000000000000000000000000000000F8 +:1078900000000000000000000000000000000000E8 +:1078A00000000000000000000000000000000000D8 +:1078B00000000000000000000000000000000000C8 +:1078C00000000000000000000000000000000000B8 +:1078D00000000000000000000000000000000000A8 +:1078E0000000000000000000000000000000000098 +:1078F0000000000000000000000000000000000088 +:107900000000000000000000000000000000000077 +:107910000000000000000000000000000000000067 +:107920000000000000000000000000000000000057 +:107930000000000000000000000000000000000047 +:107940000000000000000000000000000000000037 +:107950000000000000000000000000000000000027 +:107960000000000000000000000000000000000017 +:107970000000000000000000000000000000000007 +:1079800000000000000000000000000000000000F7 +:1079900000000000000000000000000000000000E7 +:1079A00000000000000000000000000000000000D7 +:1079B00000000000000000000000000000000000C7 +:1079C00000000000000000000000000000000000B7 +:1079D00000000000000000000000000000000000A7 +:1079E0000000000000000000000000000000000097 +:1079F0000000000000000000000000000000000087 +:107A00000000000000000000000000000000000076 +:107A10000000000000000000000000000000000066 +:107A20000000000000000000000000000000000056 +:107A30000000000000000000000000000000000046 +:107A40000000000000000000000000000000000036 +:107A50000000000000000000000000000000000026 +:107A60000000000000000000000000000000000016 +:107A70000000000000000000000000000000000006 +:107A800000000000000000000000000000000000F6 +:107A900000000000000000000000000000000000E6 +:107AA00000000000000000000000000000000000D6 +:107AB00000000000000000000000000000000000C6 +:107AC00000000000000000000000000000000000B6 +:107AD00000000000000000000000000000000000A6 +:107AE0000000000000000000000000000000000096 +:107AF0000000000000000000000000000000000086 +:107B00000000000000000000000000000000000075 +:107B10000000000000000000000000000000000065 +:107B20000000000000000000000000000000000055 +:107B30000000000000000000000000000000000045 +:107B40000000000000000000000000000000000035 +:107B50000000000000000000000000000000000025 +:107B60000000000000000000000000000000000015 +:107B70000000000000000000000000000000000005 +:107B800000000000000000000000000000000000F5 +:107B900000000000000000000000000000000000E5 +:107BA00000000000000000000000000000000000D5 +:107BB00000000000000000000000000000000000C5 +:107BC00000000000000000000000000000000000B5 +:107BD00000000000000000000000000000000000A5 +:107BE0000000000000000000000000000000000095 +:107BF0000000000000000000000000000000000085 +:107C00000000000000000000000000000000000074 +:107C10000000000000000000000000000000000064 +:107C20000000000000000000000000000000000054 +:107C30000000000000000000000000000000000044 +:107C40000000000000000000000000000000000034 +:107C50000000000000000000000000000000000024 +:107C60000000000000000000000000000000000014 +:107C70000000000000000000000000000000000004 +:107C800000000000000000000000000000000000F4 +:107C900000000000000000000000000000000000E4 +:107CA00000000000000000000000000000000000D4 +:107CB00000000000000000000000000000000000C4 +:107CC00000000000000000000000000000000000B4 +:107CD00000000000000000000000000000000000A4 +:107CE0000000000000000000000000000000000094 +:107CF0000000000000000000000000000000000084 +:107D00000000000000000000000000000000000073 +:107D10000000000000000000000000000000000063 +:107D20000000000000000000000000000000000053 +:107D30000000000000000000000000000000000043 +:107D40000000000000000000000000000000000033 +:107D50000000000000000000000000000000000023 +:107D60000000000000000000000000000000000013 +:107D70000000000000000000000000000000000003 +:107D800000000000000000000000000000000000F3 +:107D900000000000000000000000000000000000E3 +:107DA00000000000000000000000000000000000D3 +:107DB00000000000000000000000000000000000C3 +:107DC00000000000000000000000000000000000B3 +:107DD00000000000000000000000000000000000A3 +:107DE0000000000000000000000000000000000093 +:107DF0000000000000000000000000000000000083 +:107E00000000000000000000000000000000000072 +:107E10000000000000000000000000000000000062 +:107E20000000000000000000000000000000000052 +:107E30000000000000000000000000000000000042 +:107E40000000000000000000000000000000000032 +:107E50000000000000000000000000000000000022 +:107E60000000000000000000000000000000000012 +:107E70000000000000000000000000000000000002 +:107E800000000000000000000000000000000000F2 +:107E900000000000000000000000000000000000E2 +:107EA00000000000000000000000000000000000D2 +:107EB00000000000000000000000000000000000C2 +:107EC00000000000000000000000000000000000B2 +:107ED00000000000000000000000000000000000A2 +:107EE0000000000000000000000000000000000092 +:107EF0000000000000000000000000000000000082 +:107F00000000000000000000000000000000000071 +:107F10000000000000000000000000000000000061 +:107F20000000000000000000000000000000000051 +:107F30000000000000000000000000000000000041 +:107F40000000000000000000000000000000000031 +:107F50000000000000000000000000000000000021 +:107F60000000000000000000000000000000000011 +:107F70000000000000000000000000000000000001 +:107F800000000000000000000000000000000000F1 +:107F900000000000000000000000000000000000E1 +:107FA00000000000000000000000000000000000D1 +:107FB00000000000000000000000000000000000C1 +:107FC00000000000000000000000000000000000B1 +:107FD00000000000000000000000000000000000A1 +:107FE0000000000000000000000000000000000091 +:107FF0000000000000000000000000000000000081 +:108000000000000000000000000000000000000070 +:108010000000000000000000000000000000000060 +:108020000000000000000000000000000000000050 +:108030000000000000000000000000000000000040 +:108040000000000000000000000000000000000030 +:108050000000000000000000000000000000000020 +:108060000000000000000000000000000000000010 +:108070000000000000000000000000000000000000 +:1080800000000000000000000000000000000000F0 +:1080900000000000000000000000000000000000E0 +:1080A00000000000000000000000000000000000D0 +:1080B00000000000000000000000000000000000C0 +:1080C00000000000000000000000000000000000B0 +:1080D00000000000000000000000000000000000A0 +:1080E0000000000000000000000000000000000090 +:1080F0000000000000000000000000000000000080 +:10810000000000000000000000000000000000006F +:10811000000000000000000000000000000000005F +:10812000000000000000000000000000000000004F +:10813000000000000000000000000000000000003F +:10814000000000000000000000000000000000002F +:10815000000000000000000000000000000000001F +:10816000000000000000000000000000000000000F +:1081700000000000000000000000000000000000FF +:1081800000000000000000000000000000000000EF +:1081900000000000000000000000000000000000DF +:1081A00000000000000000000000000000000000CF +:1081B00000000000000000000000000000000000BF +:1081C00000000000000000000000000000000000AF +:1081D000000000000000000000000000000000009F +:1081E000000000000000000000000000000000008F +:1081F000000000000000000000000000000000007F +:10820000000000000000000000000000000000006E +:10821000000000000000000000000000000000005E +:10822000000000000000000000000000000000004E +:10823000000000000000000000000000000000003E +:10824000000000000000000000000000000000002E +:10825000000000000000000000000000000000001E +:10826000000000000000000000000000000000000E +:1082700000000000000000000000000000000000FE +:1082800000000000000000000000000000000000EE +:1082900000000000000000000000000000000000DE +:1082A00000000000000000000000000000000000CE +:1082B00000000000000000000000000000000000BE +:1082C00000000000000000000000000000000000AE +:1082D000000000000000000000000000000000009E +:1082E000000000000000000000000000000000008E +:1082F000000000000000000000000000000000007E +:10830000000000000000000000000000000000006D +:10831000000000000000000000000000000000005D +:10832000000000000000000000000000000000004D +:10833000000000000000000000000000000000003D +:10834000000000000000000000000000000000002D +:10835000000000000000000000000000000000001D +:10836000000000000000000000000000000000000D +:1083700000000000000000000000000000000000FD +:1083800000000000000000000000000000000000ED +:1083900000000000000000000000000000000000DD +:1083A00000000000000000000000000000000000CD +:1083B00000000000000000000000000000000000BD +:1083C00000000000000000000000000000000000AD +:1083D000000000000000000000000000000000009D +:1083E000000000000000000000000000000000008D +:1083F000000000000000000000000000000000007D +:10840000000000000000000000000000000000006C +:10841000000000000000000000000000000000005C +:10842000000000000000000000000000000000004C +:10843000000000000000000000000000000000003C +:10844000000000000000000000000000000000002C +:10845000000000000000000000000000000000001C +:10846000000000000000000000000000000000000C +:1084700000000000000000000000000000000000FC +:1084800000000000000000000000000000000000EC +:1084900000000000000000000000000000000000DC +:1084A00000000000000000000000000000000000CC +:1084B00000000000000000000000000000000000BC +:1084C00000000000000000000000000000000000AC +:1084D000000000000000000000000000000000009C +:1084E000000000000000000000000000000000008C +:1084F000000000000000000000000000000000007C +:10850000000000000000000000000000000000006B +:10851000000000000000000000000000000000005B +:10852000000000000000000000000000000000004B +:10853000000000000000000000000000000000003B +:10854000000000000000000000000000000000002B +:10855000000000000000000000000000000000001B +:10856000000000000000000000000000000000000B +:1085700000000000000000000000000000000000FB +:1085800000000000000000000000000000000000EB +:1085900000000000000000000000000000000000DB +:1085A00000000000000000000000000000000000CB +:1085B00000000000000000000000000000000000BB +:1085C00000000000000000000000000000000000AB +:1085D000000000000000000000000000000000009B +:1085E000000000000000000000000000000000008B +:1085F000000000000000000000000000000000007B +:10860000000000000000000000000000000000006A +:10861000000000000000000000000000000000005A +:10862000000000000000000000000000000000004A +:10863000000000000000000000000000000000003A +:10864000000000000000000000000000000000002A +:10865000000000000000000000000000000000001A +:10866000000000000000000000000000000000000A +:1086700000000000000000000000000000000000FA +:1086800000000000000000000000000000000000EA +:1086900000000000000000000000000000000000DA +:1086A00000000000000000000000000000000000CA +:1086B00000000000000000000000000000000000BA +:1086C00000000000000000000000000000000000AA +:1086D000000000000000000000000000000000009A +:1086E000000000000000000000000000000000008A +:1086F000000000000000000000000000000000007A +:108700000000000000000000000000000000000069 +:108710000000000000000000000000000000000059 +:108720000000000000000000000000000000000049 +:108730000000000000000000000000000000000039 +:108740000000000000000000000000000000000029 +:108750000000000000000000000000000000000019 +:108760000000000000000000000000000000000009 +:1087700000000000000000000000000000000000F9 +:1087800000000000000000000000000000000000E9 +:1087900000000000000000000000000000000000D9 +:1087A00000000000000000000000000000000000C9 +:1087B00000000000000000000000000000000000B9 +:1087C00000000000000000000000000000000000A9 +:1087D0000000000000000000000000000000000099 +:1087E0000000000000000000000000000000000089 +:1087F0000000000000000000000000000000000079 +:108800000000000000000000000000000000000068 +:108810000000000000000000000000000000000058 +:108820000000000000000000000000000000000048 +:108830000000000000000000000000000000000038 +:108840000000000000000000000000000000000028 +:108850000000000000000000000000000000000018 +:108860000000000000000000000000000000000008 +:1088700000000000000000000000000000000000F8 +:1088800000000000000000000000000000000000E8 +:1088900000000000000000000000000000000000D8 +:1088A00000000000000000000000000000000000C8 +:1088B00000000000000000000000000000000000B8 +:1088C00000000000000000000000000000000000A8 +:1088D0000000000000000000000000000000000098 +:1088E0000000000000000000000000000000000088 +:1088F0000000000000000000000000000000000078 +:108900000000000000000000000000000000000067 +:108910000000000000000000000000000000000057 +:108920000000000000000000000000000000000047 +:108930000000000000000000000000000000000037 +:108940000000000000000000000000000000000027 +:108950000000000000000000000000000000000017 +:108960000000000000000000000000000000000007 +:1089700000000000000000000000000000000000F7 +:1089800000000000000000000000000000000000E7 +:1089900000000000000000000000000000000000D7 +:1089A00000000000000000000000000000000000C7 +:1089B00000000000000000000000000000000000B7 +:1089C00000000000000000000000000000000000A7 +:1089D0000000000000000000000000000000000097 +:1089E0000000000000000000000000000000000087 +:1089F0000000000000000000000000000000000077 +:108A00000000000000000000000000000000000066 +:108A10000000000000000000000000000000000056 +:108A20000000000000000000000000000000000046 +:108A30000000000000000000000000000000000036 +:108A40000000000000000000000000000000000026 +:108A50000000000000000000000000000000000016 +:108A60000000000000000000000000000000000006 +:108A700000000000000000000000000000000000F6 +:108A800000000000000000000000000000000000E6 +:108A900000000000000000000000000000000000D6 +:108AA00000000000000000000000000000000000C6 +:108AB00000000000000000000000000000000000B6 +:108AC00000000000000000000000000000000000A6 +:108AD0000000000000000000000000000000000096 +:108AE0000000000000000000000000000000000086 +:108AF0000000000000000000000000000000000076 +:108B00000000000000000000000000000000000065 +:108B10000000000000000000000000000000000055 +:108B20000000000000000000000000000000000045 +:108B30000000000000000000000000000000000035 +:108B40000000000000000000000000000000000025 +:108B50000000000000000000000000000000000015 +:108B60000000000000000000000000000000000005 +:108B700000000000000000000000000000000000F5 +:108B800000000000000000000000000000000000E5 +:108B900000000000000000000000000000000000D5 +:108BA00000000000000000000000000000000000C5 +:108BB00000000000000000000000000000000000B5 +:108BC00000000000000000000000000000000000A5 +:108BD0000000000000000000000000000000000095 +:108BE0000000000000000000000000000000000085 +:108BF0000000000000000000000000000000000075 +:108C00000000000000000000000000000000000064 +:108C10000000000000000000000000000000000054 +:108C20000000000000000000000000000000000044 +:108C30000000000000000000000000000000000034 +:108C40000000000000000000000000000000000024 +:108C50000000000000000000000000000000000014 +:108C60000000000000000000000000000000000004 +:108C700000000000000000000000000000000000F4 +:108C800000000000000000000000000000000000E4 +:108C900000000000000000000000000000000000D4 +:108CA00000000000000000000000000000000000C4 +:108CB00000000000000000000000000000000000B4 +:108CC00000000000000000000000000000000000A4 +:108CD0000000000000000000000000000000000094 +:108CE0000000000000000000000000000000000084 +:108CF0000000000000000000000000000000000074 +:108D00000000000000000000000000000000000063 +:108D10000000000000000000000000000000000053 +:108D20000000000000000000000000000000000043 +:108D30000000000000000000000000000000000033 +:108D40000000000000000000000000000000000023 +:108D50000000000000000000000000000000000013 +:108D60000000000000000000000000000000000003 +:108D700000000000000000000000000000000000F3 +:108D800000000000000000000000000000000000E3 +:108D900000000000000000000000000000000000D3 +:108DA00000000000000000000000000000000000C3 +:108DB00000000000000000000000000000000000B3 +:108DC00000000000000000000000000000000000A3 +:108DD0000000000000000000000000000000000093 +:108DE0000000000000000000000000000000000083 +:108DF0000000000000000000000000000000000073 +:108E00000000000000000000000000000000000062 +:108E10000000000000000000000000000000000052 +:108E20000000000000000000000000000000000042 +:108E30000000000000000000000000000000000032 +:108E40000000000000000000000000000000000022 +:108E50000000000000000000000000000000000012 +:108E60000000000000000000000000000000000002 +:108E700000000000000000000000000000000000F2 +:108E800000000000000000000000000000000000E2 +:108E900000000000000000000000000000000000D2 +:108EA00000000000000000000000000000000000C2 +:108EB00000000000000000000000000000000000B2 +:108EC00000000000000000000000000000000000A2 +:108ED0000000000000000000000000000000000092 +:108EE0000000000000000000000000000000000082 +:108EF0000000000000000000000000000000000072 +:108F00000000000000000000000000000000000061 +:108F10000000000000000000000000000000000051 +:108F20000000000000000000000000000000000041 +:108F30000000000000000000000000000000000031 +:108F40000000000000000000000000000000000021 +:108F50000000000000000000000000000000000011 +:108F60000000000000000000000000000000000001 +:108F700000000000000000000000000000000000F1 +:108F800000000000000000000000000000000000E1 +:108F900000000000000000000000000000000000D1 +:108FA00000000000000000000000000000000000C1 +:108FB00000000000000000000000000000000000B1 +:108FC00000000000000000000000000000000000A1 +:108FD0000000000000000000000000000000000091 +:108FE0000000000000000000000000000000000081 +:108FF0000000000000000000000000000000000071 +:109000000000000000000000000000000000000060 +:109010000000000000000000000000000000000050 +:109020000000000000000000000000000000000040 +:109030000000000000000000000000000000000030 +:109040000000000000000000000000000000000020 +:109050000000000000000000000000000000000010 +:109060000000000000000000000000000000000000 +:1090700000000000000000000000000000000000F0 +:1090800000000000000000000000000000000000E0 +:1090900000000000000000000000000000000000D0 +:1090A00000000000000000000000000000000000C0 +:1090B00000000000000000000000000000000000B0 +:1090C00000000000000000000000000000000000A0 +:1090D0000000000000000000000000000000000090 +:1090E0000000000000000000000000000000000080 +:1090F0000000000000000000000000000000000070 +:10910000000000000000000000000000000000005F +:10911000000000000000000000000000000000004F +:10912000000000000000000000000000000000003F +:10913000000000000000000000000000000000002F +:10914000000000000000000000000000000000001F +:10915000000000000000000000000000000000000F +:1091600000000000000000000000000000000000FF +:1091700000000000000000000000000000000000EF +:1091800000000000000000000000000000000000DF +:1091900000000000000000000000000000000000CF +:1091A00000000000000000000000000000000000BF +:1091B00000000000000000000000000000000000AF +:1091C000000000000000000000000000000000009F +:1091D000000000000000000000000000000000008F +:1091E000000000000000000000000000000000007F +:1091F000000000000000000000000000000000006F +:10920000000000000000000000000000000000005E +:10921000000000000000000000000000000000004E +:10922000000000000000000000000000000000003E +:10923000000000000000000000000000000000002E +:10924000000000000000000000000000000000001E +:10925000000000000000000000000000000000000E +:1092600000000000000000000000000000000000FE +:1092700000000000000000000000000000000000EE +:1092800000000000000000000000000000000000DE +:1092900000000000000000000000000000000000CE +:1092A00000000000000000000000000000000000BE +:1092B00000000000000000000000000000000000AE +:1092C000000000000000000000000000000000009E +:1092D000000000000000000000000000000000008E +:1092E000000000000000000000000000000000007E +:1092F000000000000000000000000000000000006E +:10930000000000000000000000000000000000005D +:10931000000000000000000000000000000000004D +:10932000000000000000000000000000000000003D +:10933000000000000000000000000000000000002D +:10934000000000000000000000000000000000001D +:10935000000000000000000000000000000000000D +:1093600000000000000000000000000000000000FD +:1093700000000000000000000000000000000000ED +:1093800000000000000000000000000000000000DD +:1093900000000000000000000000000000000000CD +:1093A00000000000000000000000000000000000BD +:1093B00000000000000000000000000000000000AD +:1093C000000000000000000000000000000000009D +:1093D000000000000000000000000000000000008D +:1093E000000000000000000000000000000000007D +:1093F000000000000000000000000000000000006D +:10940000000000000000000000000000000000005C +:10941000000000000000000000000000000000004C +:10942000000000000000000000000000000000003C +:10943000000000000000000000000000000000002C +:10944000000000000000000000000000000000001C +:10945000000000000000000000000000000000000C +:1094600000000000000000000000000000000000FC +:1094700000000000000000000000000000000000EC +:1094800000000000000000000000000000000000DC +:1094900000000000000000000000000000000000CC +:1094A00000000000000000000000000000000000BC +:1094B00000000000000000000000000000000000AC +:1094C000000000000000000000000000000000009C +:1094D000000000000000000000000000000000008C +:1094E000000000000000000000000000000000007C +:1094F000000000000000000000000000000000006C +:10950000000000000000000000000000000000005B +:10951000000000000000000000000000000000004B +:10952000000000000000000000000000000000003B +:10953000000000000000000000000000000000002B +:10954000000000000000000000000000000000001B +:10955000000000000000000000000000000000000B +:1095600000000000000000000000000000000000FB +:1095700000000000000000000000000000000000EB +:1095800000000000000000000000000000000000DB +:1095900000000000000000000000000000000000CB +:1095A00000000000000000000000000000000000BB +:1095B00000000000000000000000000000000000AB +:1095C000000000000000000000000000000000009B +:1095D000000000000000000000000000000000008B +:1095E000000000000000000000000000000000007B +:1095F000000000000000000000000000000000006B +:10960000000000000000000000000000000000005A +:10961000000000000000000000000000000000004A +:10962000000000000000000000000000000000003A +:10963000000000000000000000000000000000002A +:10964000000000000000000000000000000000001A +:10965000000000000000000000000000000000000A +:1096600000000000000000000000000000000000FA +:1096700000000000000000000000000000000000EA +:1096800000000000000000000000000000000000DA +:1096900000000000000000000000000000000000CA +:1096A00000000000000000000000000000000000BA +:1096B00000000000000000000000000000000000AA +:1096C000000000000000000000000000000000009A +:1096D000000000000000000000000000000000008A +:1096E000000000000000000000000000000000007A +:1096F000000000000000000000000000000000006A +:109700000000000000000000000000000000000059 +:109710000000000000000000000000000000000049 +:109720000000000000000000000000000000000039 +:109730000000000000000000000000000000000029 +:109740000000000000000000000000000000000019 +:109750000000000000000000000000000000000009 +:1097600000000000000000000000000000000000F9 +:1097700000000000000000000000000000000000E9 +:1097800000000000000000000000000000000000D9 +:1097900000000000000000000000000000000000C9 +:1097A00000000000000000000000000000000000B9 +:1097B00000000000000000000000000000000000A9 +:1097C0000000000000000000000000000000000099 +:1097D0000000000000000000000000000000000089 +:1097E0000000000000000000000000000000000079 +:1097F0000000000000000000000000000000000069 +:109800000000000000000000000000000000000058 +:109810000000000000000000000000000000000048 +:109820000000000000000000000000000000000038 +:109830000000000000000000000000000000000028 +:109840000000000000000000000000000000000018 +:109850000000000000000000000000000000000008 +:1098600000000000000000000000000000000000F8 +:1098700000000000000000000000000000000000E8 +:1098800000000000000000000000000000000000D8 +:1098900000000000000000000000000000000000C8 +:1098A00000000000000000000000000000000000B8 +:1098B00000000000000000000000000000000000A8 +:1098C0000000000000000000000000000000000098 +:1098D0000000000000000000000000000000000088 +:1098E0000000000000000000000000000000000078 +:1098F0000000000000000000000000000000000068 +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:109920000000000000000000000000000000000037 +:109930000000000000000000000000000000000027 +:109940000000000000000000000000000000000017 +:109950000000000000000000000000000000000007 +:1099600000000000000000000000000000000000F7 +:1099700000000000000000000000000000000000E7 +:1099800000000000000000000000000000000000D7 +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B00000000000000000000000000000000000A7 +:1099C0000000000000000000000000000000000097 +:1099D0000000000000000000000000000000000087 +:1099E0000000000000000000000000000000000077 +:1099F0000000000000000000000000000000000067 +:109A00000000000000000000000000000000000056 +:109A10000000000000000000000000000000000046 +:109A20000000000000000000000000000000000036 +:109A30000000000000000000000000000000000026 +:109A40000000000000000000000000000000000016 +:109A50000000000000000000000000000000000006 +:109A600000000000000000000000000000000000F6 +:109A700000000000000000000000000000000000E6 +:109A800000000000000000000000000000000000D6 +:109A900000000000000000000000000000000000C6 +:109AA00000000000000000000000000000000000B6 +:109AB00000000000000000000000000000000000A6 +:109AC0000000000000000000000000000000000096 +:109AD0000000000000000000000000000000000086 +:109AE0000000000000000000000000000000000076 +:109AF0000000000000000000000000000000000066 +:109B00000000000000000000000000000000000055 +:109B10000000000000000000000000000000000045 +:109B20000000000000000000000000000000000035 +:109B30000000000000000000000000000000000025 +:109B40000000000000000000000000000000000015 +:109B50000000000000000000000000000000000005 +:109B600000000000000000000000000000000000F5 +:109B700000000000000000000000000000000000E5 +:109B800000000000000000000000000000000000D5 +:109B900000000000000000000000000000000000C5 +:109BA00000000000000000000000000000000000B5 +:109BB00000000000000000000000000000000000A5 +:109BC0000000000000000000000000000000000095 +:109BD0000000000000000000000000000000000085 +:109BE0000000000000000000000000000000000075 +:109BF0000000000000000000000000000000000065 +:109C00000000000000000000000000000000000054 +:109C10000000000000000000000000000000000044 +:109C20000000000000000000000000000000000034 +:109C30000000000000000000000000000000000024 +:109C40000000000000000000000000000000000014 +:109C50000000000000000000000000000000000004 +:109C600000000000000000000000000000000000F4 +:109C700000000000000000000000000000000000E4 +:109C800000000000000000000000000000000000D4 +:109C900000000000000000000000000000000000C4 +:109CA00000000000000000000000000000000000B4 +:109CB00000000000000000000000000000000000A4 +:109CC0000000000000000000000000000000000094 +:109CD0000000000000000000000000000000000084 +:109CE0000000000000000000000000000000000074 +:109CF0000000000000000000000000000000000064 +:109D00000000000000000000000000000000000053 +:109D10000000000000000000000000000000000043 +:109D20000000000000000000000000000000000033 +:109D30000000000000000000000000000000000023 +:109D40000000000000000000000000000000000013 +:109D50000000000000000000000000000000000003 +:109D600000000000000000000000000000000000F3 +:109D700000000000000000000000000000000000E3 +:109D800000000000000000000000000000000000D3 +:109D900000000000000000000000000000000000C3 +:109DA00000000000000000000000000000000000B3 +:109DB00000000000000000000000000000000000A3 +:109DC0000000000000000000000000000000000093 +:109DD0000000000000000000000000000000000083 +:109DE0000000000000000000000000000000000073 +:109DF0000000000000000000000000000000000063 +:109E00000000000000000000000000000000000052 +:109E10000000000000000000000000000000000042 +:109E20000000000000000000000000000000000032 +:109E30000000000000000000000000000000000022 +:109E40000000000000000000000000000000000012 +:109E50000000000000000000000000000000000002 +:109E600000000000000000000000000000000000F2 +:109E700000000000000000000000000000000000E2 +:109E800000000000000000000000000000000000D2 +:109E900000000000000000000000000000000000C2 +:109EA00000000000000000000000000000000000B2 +:109EB00000000000000000000000000000000000A2 +:109EC0000000000000000000000000000000000092 +:109ED0000000000000000000000000000000000082 +:109EE0000000000000000000000000000000000072 +:109EF0000000000000000000000000000000000062 +:109F00000000000000000000000000000000000051 +:109F10000000000000000000000000000000000041 +:109F20000000000000000000000000000000000031 +:109F30000000000000000000000000000000000021 +:109F40000000000000000000000000000000000011 +:109F50000000000000000000000000000000000001 +:109F600000000000000000000000000000000000F1 +:109F700000000000000000000000000000000000E1 +:109F800000000000000000000000000000000000D1 +:109F900000000000000000000000000000000000C1 +:109FA00000000000000000000000000000000000B1 +:109FB00000000000000000000000000000000000A1 +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE0000000000000000000000000000000000071 +:109FF0000000000000000000000000000000000061 +:10A000000000000000000000000000000000000050 +:10A010000000000000000000000000000000000040 +:10A020000000000000000000000000000000000030 +:10A030000000000000000000000000000000000020 +:10A040000000000000000000000000000000000010 +:10A050000000000000000000000000000000000000 +:10A0600000000000000000000000000000000000F0 +:10A0700000000000000000000000000000000000E0 +:10A0800000000000000000000000000000000000D0 +:10A0900000000000000000000000000000000000C0 +:10A0A00000000000000000000000000000000000B0 +:10A0B00000000000000000000000000000000000A0 +:10A0C0000000000000000000000000000000000090 +:10A0D0000000000000000000000000000000000080 +:10A0E0000000000000000000000000000000000070 +:10A0F0000000000000000000000000000000000060 +:10A10000000000000000000000000000000000004F +:10A11000000000000000000000000000000000003F +:10A12000000000000000000000000000000000002F +:10A13000000000000000000000000000000000001F +:10A14000000000000000000000000000000000000F +:10A1500000000000000000000000000000000000FF +:10A1600000000000000000000000000000000000EF +:10A1700000000000000000000000000000000000DF +:10A1800000000000000000000000000000000000CF +:10A1900000000000000000000000000000000000BF +:10A1A00000000000000000000000000000000000AF +:10A1B000000000000000000000000000000000009F +:10A1C000000000000000000000000000000000008F +:10A1D000000000000000000000000000000000007F +:10A1E000000000000000000000000000000000006F +:10A1F000000000000000000000000000000000005F +:10A20000000000000000000000000000000000004E +:10A21000000000000000000000000000000000003E +:10A22000000000000000000000000000000000002E +:10A23000000000000000000000000000000000001E +:10A24000000000000000000000000000000000000E +:10A2500000000000000000000000000000000000FE +:10A2600000000000000000000000000000000000EE +:10A2700000000000000000000000000000000000DE +:10A2800000000000000000000000000000000000CE +:10A2900000000000000000000000000000000000BE +:10A2A00000000000000000000000000000000000AE +:10A2B000000000000000000000000000000000009E +:10A2C000000000000000000000000000000000008E +:10A2D000000000000000000000000000000000007E +:10A2E000000000000000000000000000000000006E +:10A2F000000000000000000000000000000000005E +:10A30000000000000000000000000000000000004D +:10A31000000000000000000000000000000000003D +:10A32000000000000000000000000000000000002D +:10A33000000000000000000000000000000000001D +:10A34000000000000000000000000000000000000D +:10A3500000000000000000000000000000000000FD +:10A3600000000000000000000000000000000000ED +:10A3700000000000000000000000000000000000DD +:10A3800000000000000000000000000000000000CD +:10A3900000000000000000000000000000000000BD +:10A3A00000000000000000000000000000000000AD +:10A3B000000000000000000000000000000000009D +:10A3C000000000000000000000000000000000008D +:10A3D000000000000000000000000000000000007D +:10A3E000000000000000000000000000000000006D +:10A3F000000000000000000000000000000000005D +:10A40000000000000000000000000000000000004C +:10A41000000000000000000000000000000000003C +:10A42000000000000000000000000000000000002C +:10A43000000000000000000000000000000000001C +:10A44000000000000000000000000000000000000C +:10A4500000000000000000000000000000000000FC +:10A4600000000000000000000000000000000000EC +:10A4700000000000000000000000000000000000DC +:10A4800000000000000000000000000000000000CC +:10A4900000000000000000000000000000000000BC +:10A4A00000000000000000000000000000000000AC +:10A4B000000000000000000000000000000000009C +:10A4C000000000000000000000000000000000008C +:10A4D000000000000000000000000000000000007C +:10A4E000000000000000000000000000000000006C +:10A4F000000000000000000000000000000000005C +:10A50000000000000000000000000000000000004B +:10A51000000000000000000000000000000000003B +:10A52000000000000000000000000000000000002B +:10A53000000000000000000000000000000000001B +:10A54000000000000000000000000000000000000B +:10A5500000000000000000000000000000000000FB +:10A5600000000000000000000000000000000000EB +:10A5700000000000000000000000000000000000DB +:10A5800000000000000000000000000000000000CB +:10A5900000000000000000000000000000000000BB +:10A5A00000000000000000000000000000000000AB +:10A5B000000000000000000000000000000000009B +:10A5C000000000000000000000000000000000008B +:10A5D000000000000000000000000000000000007B +:10A5E000000000000000000000000000000000006B +:10A5F000000000000000000000000000000000005B +:10A60000000000000000000000000000000000004A +:10A61000000000000000000000000000000000003A +:10A62000000000000000000000000000000000002A +:10A63000000000000000000000000000000000001A +:10A64000000000000000000000000000000000000A +:10A6500000000000000000000000000000000000FA +:10A6600000000000000000000000000000000000EA +:10A6700000000000000000000000000000000000DA +:10A6800000000000000000000000000000000000CA +:10A6900000000000000000000000000000000000BA +:10A6A00000000000000000000000000000000000AA +:10A6B000000000000000000000000000000000009A +:10A6C000000000000000000000000000000000008A +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000000000006A +:10A6F000000000000000000000000000000000005A +:10A700000000000000000000000000000000000049 +:10A710000000000000000000000000000000000039 +:10A720000000000000000000000000000000000029 +:10A730000000000000000000000000000000000019 +:10A740000000000000000000000000000000000009 +:10A7500000000000000000000000000000000000F9 +:10A7600000000000000000000000000000000000E9 +:10A7700000000000000000000000000000000000D9 +:10A7800000000000000000000000000000000000C9 +:10A7900000000000000000000000000000000000B9 +:10A7A00000000000000000000000000000000000A9 +:10A7B0000000000000000000000000000000000099 +:10A7C0000000000000000000000000000000000089 +:10A7D0000000000000000000000000000000000079 +:10A7E0000000000000000000000000000000000069 +:10A7F0000000000000000000000000000000000059 +:10A800000000000000000000000000000000000048 +:10A810000000000000000000000000000000000038 +:10A820000000000000000000000000000000000028 +:10A830000000000000000000000000000000000018 +:10A840000000000000000000000000000000000008 +:10A8500000000000000000000000000000000000F8 +:10A8600000000000000000000000000000000000E8 +:10A8700000000000000000000000000000000000D8 +:10A8800000000000000000000000000000000000C8 +:10A8900000000000000000000000000000000000B8 +:10A8A00000000000000000000000000000000000A8 +:10A8B0000000000000000000000000000000000098 +:10A8C0000000000000000000000000000000000088 +:10A8D0000000000000000000000000000000000078 +:10A8E0000000000000000000000000000000000068 +:10A8F0000000000000000000000000000000000058 +:10A900000000000000000000000000000000000047 +:10A910000000000000000000000000000000000037 +:10A920000000000000000000000000000000000027 +:10A930000000000000000000000000000000000017 +:10A940000000000000000000000000000000000007 +:10A9500000000000000000000000000000000000F7 +:10A9600000000000000000000000000000000000E7 +:10A9700000000000000000000000000000000000D7 +:10A9800000000000000000000000000000000000C7 +:10A9900000000000000000000000000000000000B7 +:10A9A00000000000000000000000000000000000A7 +:10A9B0000000000000000000000000000000000097 +:10A9C0000000000000000000000000000000000087 +:10A9D0000000000000000000000000000000000077 +:10A9E0000000000000000000000000000000000067 +:10A9F0000000000000000000000000000000000057 +:10AA00000000000000000000000000000000000046 +:10AA10000000000000000000000000000000000036 +:10AA20000000000000000000000000000000000026 +:10AA30000000000000000000000000000000000016 +:10AA40000000000000000000000000000000000006 +:10AA500000000000000000000000000000000000F6 +:10AA600000000000000000000000000000000000E6 +:10AA700000000000000000000000000000000000D6 +:10AA800000000000000000000000000000000000C6 +:10AA900000000000000000000000000000000000B6 +:10AAA00000000000000000000000000000000000A6 +:10AAB0000000000000000000000000000000000096 +:10AAC0000000000000000000000000000000000086 +:10AAD0000000000000000000000000000000000076 +:10AAE0000000000000000000000000000000000066 +:10AAF0000000000000000000000000000000000056 +:10AB00000000000000000000000000000000000045 +:10AB10000000000000000000000000000000000035 +:10AB20000000000000000000000000000000000025 +:10AB30000000000000000000000000000000000015 +:10AB40000000000000000000000000000000000005 +:10AB500000000000000000000000000000000000F5 +:10AB600000000000000000000000000000000000E5 +:10AB700000000000000000000000000000000000D5 +:10AB800000000000000000000000000000000000C5 +:10AB900000000000000000000000000000000000B5 +:10ABA00000000000000000000000000000000000A5 +:10ABB0000000000000000000000000000000000095 +:10ABC0000000000000000000000000000000000085 +:10ABD0000000000000000000000000000000000075 +:10ABE0000000000000000000000000000000000065 +:10ABF0000000000000000000000000000000000055 +:10AC00000000000000000000000000000000000044 +:10AC10000000000000000000000000000000000034 +:10AC20000000000000000000000000000000000024 +:10AC30000000000000000000000000000000000014 +:10AC40000000000000000000000000000000000004 +:10AC500000000000000000000000000000000000F4 +:10AC600000000000000000000000000000000000E4 +:10AC700000000000000000000000000000000000D4 +:10AC800000000000000000000000000000000000C4 +:10AC900000000000000000000000000000000000B4 +:10ACA00000000000000000000000000000000000A4 +:10ACB0000000000000000000000000000000000094 +:10ACC0000000000000000000000000000000000084 +:10ACD0000000000000000000000000000000000074 +:10ACE0000000000000000000000000000000000064 +:10ACF0000000000000000000000000000000000054 +:10AD00000000000000000000000000000000000043 +:10AD10000000000000000000000000000000000033 +:10AD20000000000000000000000000000000000023 +:10AD30000000000000000000000000000000000013 +:10AD40000000000000000000000000000000000003 +:10AD500000000000000000000000000000000000F3 +:10AD600000000000000000000000000000000000E3 +:10AD700000000000000000000000000000000000D3 +:10AD800000000000000000000000000000000000C3 +:10AD900000000000000000000000000000000000B3 +:10ADA00000000000000000000000000000000000A3 +:10ADB0000000000000000000000000000000000093 +:10ADC0000000000000000000000000000000000083 +:10ADD0000000000000000000000000000000000073 +:10ADE0000000000000000000000000000000000063 +:10ADF0000000000000000000000000000000000053 +:10AE00000000000000000000000000000000000042 +:10AE10000000000000000000000000000000000032 +:10AE20000000000000000000000000000000000022 +:10AE30000000000000000000000000000000000012 +:10AE40000000000000000000000000000000000002 +:10AE500000000000000000000000000000000000F2 +:10AE600000000000000000000000000000000000E2 +:10AE700000000000000000000000000000000000D2 +:10AE800000000000000000000000000000000000C2 +:10AE900000000000000000000000000000000000B2 +:10AEA00000000000000000000000000000000000A2 +:10AEB0000000000000000000000000000000000092 +:10AEC0000000000000000000000000000000000082 +:10AED0000000000000000000000000000000000072 +:10AEE0000000000000000000000000000000000062 +:10AEF0000000000000000000000000000000000052 +:10AF00000000000000000000000000000000000041 +:10AF10000000000000000000000000000000000031 +:10AF20000000000000000000000000000000000021 +:10AF30000000000000000000000000000000000011 +:10AF40000000000000000000000000000000000001 +:10AF500000000000000000000000000000000000F1 +:10AF600000000000000000000000000000000000E1 +:10AF700000000000000000000000000000000000D1 +:10AF800000000000000000000000000000000000C1 +:10AF900000000000000000000000000000000000B1 +:10AFA00000000000000000000000000000000000A1 +:10AFB0000000000000000000000000000000000091 +:10AFC0000000000000000000000000000000000081 +:10AFD0000000000000000000000000000000000071 +:10AFE0000000000000000000000000000000000061 +:10AFF0000000000000000000000000000000000051 +:10B000000000000000000000000000000000000040 +:10B010000000000000000000000000000000000030 +:10B020000000000000000000000000000000000020 +:10B030000000000000000000000000000000000010 +:10B040000000000000000000000000000000000000 +:10B0500000000000000000000000000000000000F0 +:10B0600000000000000000000000000000000000E0 +:10B0700000000000000000000000000000000000D0 +:10B0800000000000000000000000000000000000C0 +:10B0900000000000000000000000000000000000B0 +:10B0A00000000000000000000000000000000000A0 +:10B0B0000000000000000000000000000000000090 +:10B0C0000000000000000000000000000000000080 +:10B0D0000000000000000000000000000000000070 +:10B0E0000000000000000000000000000000000060 +:10B0F0000000000000000000000000000000000050 +:10B10000000000000000000000000000000000003F +:10B11000000000000000000000000000000000002F +:10B12000000000000000000000000000000000001F +:10B13000000000000000000000000000000000000F +:10B1400000000000000000000000000000000000FF +:10B1500000000000000000000000000000000000EF +:10B1600000000000000000000000000000000000DF +:10B1700000000000000000000000000000000000CF +:10B1800000000000000000000000000000000000BF +:10B1900000000000000000000000000000000000AF +:10B1A000000000000000000000000000000000009F +:10B1B000000000000000000000000000000000008F +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E000000000000000000000000000000000005F +:10B1F000000000000000000000000000000000004F +:10B20000000000000000000000000000000000003E +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000000000001E +:10B23000000000000000000000000000000000000E +:10B2400000000000000000000000000000000000FE +:10B2500000000000000000000000000000000000EE +:10B2600000000000000000000000000000000000DE +:10B2700000000000000000000000000000000000CE +:10B2800000000000000000000000000000000000BE +:10B2900000000000000000000000000000000000AE +:10B2A000000000000000000000000000000000009E +:10B2B000000000000000000000000000000000008E +:10B2C000000000000000000000000000000000007E +:10B2D000000000000000000000000000000000006E +:10B2E000000000000000000000000000000000005E +:10B2F000000000000000000000000000000000004E +:10B30000000000000000000000000000000000003D +:10B31000000000000000000000000000000000002D +:10B32000000000000000000000000000000000001D +:10B33000000000000000000000000000000000000D +:10B3400000000000000000000000000000000000FD +:10B3500000000000000000000000000000000000ED +:10B3600000000000000000000000000000000000DD +:10B3700000000000000000000000000000000000CD +:10B3800000000000000000000000000000000000BD +:10B3900000000000000000000000000000000000AD +:10B3A000000000000000000000000000000000009D +:10B3B000000000000000000000000000000000008D +:10B3C000000000000000000000000000000000007D +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000000000005D +:10B3F000000000000000000000000000000000004D +:10B40000000000000000000000000000000000003C +:10B41000000000000000000000000000000000002C +:10B42000000000000000000000000000000000001C +:10B43000000000000000000000000000000000000C +:10B4400000000000000000000000000000000000FC +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B4700000000000000000000000000000000000CC +:10B4800000000000000000000000000000000000BC +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B000000000000000000000000000000000008C +:10B4C000000000000000000000000000000000007C +:10B4D000000000000000000000000000000000006C +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000000000004C +:10B50000000000000000000000000000000000003B +:10B51000000000000000000000000000000000002B +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B5400000000000000000000000000000000000FB +:10B5500000000000000000000000000000000000EB +:10B5600000000000000000000000000000000000DB +:10B5700000000000000000000000000000000000CB +:10B5800000000000000000000000000000000000BB +:10B5900000000000000000000000000000000000AB +:10B5A000000000000000000000000000000000009B +:10B5B000000000000000000000000000000000008B +:10B5C000000000000000000000000000000000007B +:10B5D000000000000000000000000000000000006B +:10B5E000000000000000000000000000000000005B +:10B5F000000000000000000000000000000000004B +:10B60000000000000000000000000000000000003A +:10B61000000000000000000000000000000000002A +:10B62000000000000000000000000000000000001A +:10B63000000000000000000000000000000000000A +:10B6400000000000000000000000000000000000FA +:10B6500000000000000000000000000000000000EA +:10B6600000000000000000000000000000000000DA +:10B6700000000000000000000000000000000000CA +:10B6800000000000000000000000000000000000BA +:10B6900000000000000000000000000000000000AA +:10B6A000000000000000000000000000000000009A +:10B6B000000000000000000000000000000000008A +:10B6C000000000000000000000000000000000007A +:10B6D000000000000000000000000000000000006A +:10B6E000000000000000000000000000000000005A +:10B6F000000000000000000000000000000000004A +:10B700000000000000000000000000000000000039 +:10B710000000000000000000000000000000000029 +:10B720000000000000000000000000000000000019 +:10B730000000000000000000000000000000000009 +:10B7400000000000000000000000000000000000F9 +:10B7500000000000000000000000000000000000E9 +:10B7600000000000000000000000000000000000D9 +:10B7700000000000000000000000000000000000C9 +:10B7800000000000000000000000000000000000B9 +:10B7900000000000000000000000000000000000A9 +:10B7A0000000000000000000000000000000000099 +:10B7B0000000000000000000000000000000000089 +:10B7C0000000000000000000000000000000000079 +:10B7D0000000000000000000000000000000000069 +:10B7E0000000000000000000000000000000000059 +:10B7F0000000000000000000000000000000000049 +:10B800000000000000000000000000000000000038 +:10B810000000000000000000000000000000000028 +:10B820000000000000000000000000000000000018 +:10B830000000000000000000000000000000000008 +:10B8400000000000000000000000000000000000F8 +:10B8500000000000000000000000000000000000E8 +:10B8600000000000000000000000000000000000D8 +:10B8700000000000000000000000000000000000C8 +:10B8800000000000000000000000000000000000B8 +:10B8900000000000000000000000000000000000A8 +:10B8A0000000000000000000000000000000000098 +:10B8B0000000000000000000000000000000000088 +:10B8C0000000000000000000000000000000000078 +:10B8D0000000000000000000000000000000000068 +:10B8E0000000000000000000000000000000000058 +:10B8F0000000000000000000000000000000000048 +:10B900000000000000000000000000000000000037 +:10B910000000000000000000000000000000000027 +:10B920000000000000000000000000000000000017 +:10B930000000000000000000000000000000000007 +:10B9400000000000000000000000000000000000F7 +:10B9500000000000000000000000000000000000E7 +:10B9600000000000000000000000000000000000D7 +:10B9700000000000000000000000000000000000C7 +:10B9800000000000000000000000000000000000B7 +:10B9900000000000000000000000000000000000A7 +:10B9A0000000000000000000000000000000000097 +:10B9B0000000000000000000000000000000000087 +:10B9C0000000000000000000000000000000000077 +:10B9D0000000000000000000000000000000000067 +:10B9E0000000000000000000000000000000000057 +:10B9F0000000000000000000000000000000000047 +:10BA00000000000000000000000000000000000036 +:10BA10000000000000000000000000000000000026 +:10BA20000000000000000000000000000000000016 +:10BA30000000000000000000000000000000000006 +:10BA400000000000000000000000000000000000F6 +:10BA500000000000000000000000000000000000E6 +:10BA600000000000000000000000000000000000D6 +:10BA700000000000000000000000000000000000C6 +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000000000000A6 +:10BAA0000000000000000000000000000000000096 +:10BAB0000000000000000000000000000000000086 +:10BAC0000000000000000000000000000000000076 +:10BAD0000000000000000000000000000000000066 +:10BAE0000000000000000000000000000000000056 +:10BAF0000000000000000000000000000000000046 +:10BB00000000000000000000000000000000000035 +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000000000000015 +:10BB30000000000000000000000000000000000005 +:10BB400000000000000000000000000000000000F5 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB700000000000000000000000000000000000C5 +:10BB800000000000000000000000000000000000B5 +:10BB900000000000000000000000000000000000A5 +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000000000000085 +:10BBC0000000000000000000000000000000000075 +:10BBD0000000000000000000000000000000000065 +:10BBE0000000000000000000000000000000000055 +:10BBF0000000000000000000000000000000000045 +:10BC00000000000000000000000000000000000034 +:10BC10000000000000000000000000000000000024 +:10BC20000000000000000000000000000000000014 +:10BC30000000000000000000000000000000000004 +:10BC400000000000000000000000000000000000F4 +:10BC500000000000000000000000000000000000E4 +:10BC600000000000000000000000000000000000D4 +:10BC700000000000000000000000000000000000C4 +:10BC800000000000000000000000000000000000B4 +:10BC900000000000000000000000000000000000A4 +:10BCA0000000000000000000000000000000000094 +:10BCB0000000000000000000000000000000000084 +:10BCC0000000000000000000000000000000000074 +:10BCD0000000000000000000000000000000000064 +:10BCE0000000000000000000000000000000000054 +:10BCF0000000000000000000000000000000000044 +:10BD00000000000000000000000000000000000033 +:10BD10000000000000000000000000000000000023 +:10BD20000000000000000000000000000000000013 +:10BD30000000000000000000000000000000000003 +:10BD400000000000000000000000000000000000F3 +:10BD500000000000000000000000000000000000E3 +:10BD600000000000000000000000000000000000D3 +:10BD700000000000000000000000000000000000C3 +:10BD800000000000000000000000000000000000B3 +:10BD900000000000000000000000000000000000A3 +:10BDA0000000000000000000000000000000000093 +:10BDB0000000000000000000000000000000000083 +:10BDC0000000000000000000000000000000000073 +:10BDD0000000000000000000000000000000000063 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000000000000043 +:10BE00000000000000000000000000000000000032 +:10BE10000000000000000000000000000000000022 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE400000000000000000000000000000000000F2 +:10BE500000000000000000000000000000000000E2 +:10BE600000000000000000000000000000000000D2 +:10BE700000000000000000000000000000000000C2 +:10BE800000000000000000000000000000000000B2 +:10BE900000000000000000000000000000000000A2 +:10BEA0000000000000000000000000000000000092 +:10BEB0000000000000000000000000000000000082 +:10BEC0000000000000000000000000000000000072 +:10BED0000000000000000000000000000000000062 +:10BEE0000000000000000000000000000000000052 +:10BEF0000000000000000000000000000000000042 +:10BF00000000000000000000000000000000000031 +:10BF10000000000000000000000000000000000021 +:10BF20000000000000000000000000000000000011 +:10BF30000000000000000000000000000000000001 +:10BF400000000000000000000000000000000000F1 +:10BF500000000000000000000000000000000000E1 +:10BF600000000000000000000000000000000000D1 +:10BF700000000000000000000000000000000000C1 +:10BF800000000000000000000000000000000000B1 +:10BF900000000000000000000000000000000000A1 +:10BFA0000000000000000000000000000000000091 +:10BFB0000000000000000000000000000000000081 +:10BFC0000000000000000000000000000000000071 +:10BFD0000000000000000000000000000000000061 +:10BFE0000000000000000000000000000000000051 +:10BFF0000000000000000000000000000000000041 +:10C000000000000000000000000000000000000030 +:10C010000000000000000000000000000000000020 +:10C020000000000000000000000000000000000010 +:10C030000000000000000000000000000000000000 +:10C0400000000000000000000000000000000000F0 +:10C0500000000000000000000000000000000000E0 +:10C0600000000000000000000000000000000000D0 +:10C0700000000000000000000000000000000000C0 +:10C0800000000000000000000000000000000000B0 +:10C0900000000000000000000000000000000000A0 +:10C0A0000000000000000000000000000000000090 +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000000000000070 +:10C0D0000000000000000000000000000000000060 +:10C0E0000000000000000000000000000000000050 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C11000000000000000000000000000000000001F +:10C12000000000000000000000000000000000000F +:10C1300000000000000000000000000000000000FF +:10C1400000000000000000000000000000000000EF +:10C1500000000000000000000000000000000000DF +:10C1600000000000000000000000000000000000CF +:10C1700000000000000000000000000000000000BF +:10C1800000000000000000000000000000000000AF +:10C19000000000000000000000000000000000009F +:10C1A000000000000000000000000000000000008F +:10C1B000000000000000000000000000000000007F +:10C1C000000000000000000000000000000000006F +:10C1D000000000000000000000000000000000005F +:10C1E000000000000000000000000000000000004F +:10C1F000000000000000000000000000000000003F +:10C20000000000000000000000000000000000002E +:10C21000000000000000000000000000000000001E +:10C22000000000000000000000000000000000000E +:10C2300000000000000000000000000000000000FE +:10C2400000000000000000000000000000000000EE +:10C2500000000000000000000000000000000000DE +:10C2600000000000000000000000000000000000CE +:10C2700000000000000000000000000000000000BE +:10C2800000000000000000000000000000000000AE +:10C29000000000000000000000000000000000009E +:10C2A000000000000000000000000000000000008E +:10C2B000000000000000000000000000000000007E +:10C2C000000000000000000000000000000000006E +:10C2D000000000000000000000000000000000005E +:10C2E000000000000000000000000000000000004E +:10C2F000000000000000000000000000000000003E +:10C30000000000000000000000000000000000002D +:10C31000000000000000000000000000000000001D +:10C32000000000000000000000000000000000000D +:10C3300000000000000000000000000000000000FD +:10C3400000000000000000000000000000000000ED +:10C3500000000000000000000000000000000000DD +:10C3600000000000000000000000000000000000CD +:10C3700000000000000000000000000000000000BD +:10C3800000000000000000000000000000000000AD +:10C39000000000000000000000000000000000009D +:10C3A000000000000000000000000000000000008D +:10C3B000000000000000000000000000000000007D +:10C3C000000000000000000000000000000000006D +:10C3D000000000000000000000000000000000005D +:10C3E000000000000000000000000000000000004D +:10C3F000000000000000000000000000000000003D +:10C40000000000000000000000000000000000002C +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000000000000C +:10C4300000000000000000000000000000000000FC +:10C4400000000000000000000000000000000000EC +:10C4500000000000000000000000000000000000DC +:10C4600000000000000000000000000000000000CC +:10C4700000000000000000000000000000000000BC +:10C4800000000000000000000000000000000000AC +:10C49000000000000000000000000000000000009C +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000000000007C +:10C4C000000000000000000000000000000000006C +:10C4D000000000000000000000000000000000005C +:10C4E000000000000000000000000000000000004C +:10C4F000000000000000000000000000000000003C +:10C50000000000000000000000000000000000002B +:10C51000000000000000000000000000000000001B +:10C52000000000000000000000000000000000000B +:10C5300000000000000000000000000000000000FB +:10C5400000000000000000000000000000000000EB +:10C5500000000000000000000000000000000000DB +:10C5600000000000000000000000000000000000CB +:10C5700000000000000000000000000000000000BB +:10C5800000000000000000000000000000000000AB +:10C59000000000000000000000000000000000009B +:10C5A000000000000000000000000000000000008B +:10C5B000000000000000000000000000000000007B +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000000000004B +:10C5F000000000000000000000000000000000003B +:10C60000000000000000000000000000000000002A +:10C61000000000000000000000000000000000001A +:10C62000000000000000000000000000000000000A +:10C6300000000000000000000000000000000000FA +:10C6400000000000000000000000000000000000EA +:10C6500000000000000000000000000000000000DA +:10C6600000000000000000000000000000000000CA +:10C6700000000000000000000000000000000000BA +:10C6800000000000000000000000000000000000AA +:10C69000000000000000000000000000000000009A +:10C6A000000000000000000000000000000000008A +:10C6B000000000000000000000000000000000007A +:10C6C000000000000000000000000000000000006A +:10C6D000000000000000000000000000000000005A +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C700000000000000000000000000000000000029 +:10C710000000000000000000000000000000000019 +:10C720000000000000000000000000000000000009 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000000000000000000000000000E9 +:10C7500000000000000000000000000000000000D9 +:10C7600000000000000000000000000000000000C9 +:10C7700000000000000000000000000000000000B9 +:10C7800000000000000000000000000000000000A9 +:10C790000000000000000000000000000000000099 +:10C7A0000000000000000000000000000000000089 +:10C7B0000000000000000000000000000000000079 +:10C7C0000000000000000000000000000000000069 +:10C7D0000000000000000000000000000000000059 +:10C7E0000000000000000000000000000000000049 +:10C7F0000000000000000000000000000000000039 +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000000000000018 +:10C820000000000000000000000000000000000008 +:10C8300000000000000000000000000000000000F8 +:10C8400000000000000000000000000000000000E8 +:10C8500000000000000000000000000000000000D8 +:10C8600000000000000000000000000000000000C8 +:10C8700000000000000000000000000000000000B8 +:10C8800000000000000000000000000000000000A8 +:10C890000000000000000000000000000000000098 +:10C8A0000000000000000000000000000000000088 +:10C8B0000000000000000000000000000000000078 +:10C8C0000000000000000000000000000000000068 +:10C8D0000000000000000000000000000000000058 +:10C8E0000000000000000000000000000000000048 +:10C8F0000000000000000000000000000000000038 +:10C900000000000000000000000000000000000027 +:10C910000000000000000000000000000000000017 +:10C920000000000000000000000000000000000007 +:10C9300000000000000000000000000000000000F7 +:10C9400000000000000000000000000000000000E7 +:10C9500000000000000000000000000000000000D7 +:10C9600000000000000000000000000000000000C7 +:10C9700000000000000000000000000000000000B7 +:10C9800000000000000000000000000000000000A7 +:10C990000000000000000000000000000000000097 +:10C9A0000000000000000000000000000000000087 +:10C9B0000000000000000000000000000000000077 +:10C9C0000000000000000000000000000000000067 +:10C9D0000000000000000000000000000000000057 +:10C9E0000000000000000000000000000000000047 +:10C9F0000000000000000000000000000000000037 +:10CA00000000000000000000000000000000000026 +:10CA10000000000000000000000000000000000016 +:10CA20000000000000000000000000000000000006 +:10CA300000000000000000000000000000000000F6 +:10CA400000000000000000000000000000000000E6 +:10CA500000000000000000000000000000000000D6 +:10CA600000000000000000000000000000000000C6 +:10CA700000000000000000000000000000000000B6 +:10CA800000000000000000000000000000000000A6 +:10CA90000000000000000000000000000000000096 +:10CAA0000000000000000000000000000000000086 +:10CAB0000000000000000000000000000000000076 +:10CAC0000000000000000000000000000000000066 +:10CAD0000000000000000000000000000000000056 +:10CAE0000000000000000000000000000000000046 +:10CAF0000000000000000000000000000000000036 +:10CB00000000000000000000000000000000000025 +:10CB10000000000000000000000000000000000015 +:10CB20000000000000000000000000000000000005 +:10CB300000000000000000000000000000000000F5 +:10CB400000000000000000000000000000000000E5 +:10CB500000000000000000000000000000000000D5 +:10CB600000000000000000000000000000000000C5 +:10CB700000000000000000000000000000000000B5 +:10CB800000000000000000000000000000000000A5 +:10CB90000000000000000000000000000000000095 +:10CBA0000000000000000000000000000000000085 +:10CBB0000000000000000000000000000000000075 +:10CBC0000000000000000000000000000000000065 +:10CBD0000000000000000000000000000000000055 +:10CBE0000000000000000000000000000000000045 +:10CBF0000000000000000000000000000000000035 +:10CC00000000000000000000000000000000000024 +:10CC10000000000000000000000000000000000014 +:10CC20000000000000000000000000000000000004 +:10CC300000000000000000000000000000000000F4 +:10CC400000000000000000000000000000000000E4 +:10CC500000000000000000000000000000000000D4 +:10CC600000000000000000000000000000000000C4 +:10CC700000000000000000000000000000000000B4 +:10CC800000000000000000000000000000000000A4 +:10CC90000000000000000000000000000000000094 +:10CCA0000000000000000000000000000000000084 +:10CCB0000000000000000000000000000000000074 +:10CCC0000000000000000000000000000000000064 +:10CCD0000000000000000000000000000000000054 +:10CCE0000000000000000000000000000000000044 +:10CCF0000000000000000000000000000000000034 +:10CD00000000000000000000000000000000000023 +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000000000000003 +:10CD300000000000000000000000000000000000F3 +:10CD400000000000000000000000000000000000E3 +:10CD500000000000000000000000000000000000D3 +:10CD600000000000000000000000000000000000C3 +:10CD700000000000000000000000000000000000B3 +:10CD800000000000000000000000000000000000A3 +:10CD90000000000000000000000000000000000093 +:10CDA0000000000000000000000000000000000083 +:10CDB0000000000000000000000000000000000073 +:10CDC0000000000000000000000000000000000063 +:10CDD0000000000000000000000000000000000053 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE00000000000000000000000000000000000022 +:10CE10000000000000000000000000000000000012 +:10CE20000000000000000000000000000000000002 +:10CE300000000000000000000000000000000000F2 +:10CE400000000000000000000000000000000000E2 +:10CE500000000000000000000000000000000000D2 +:10CE600000000000000000000000000000000000C2 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000000000A2 +:10CE90000000000000000000000000000000000092 +:10CEA0000000000000000000000000000000000082 +:10CEB0000000000000000000000000000000000072 +:10CEC0000000000000000000000000000000000062 +:10CED0000000000000000000000000000000000052 +:10CEE0000000000000000000000000000000000042 +:10CEF0000000000000000000000000000000000032 +:10CF00000000000000000000000000000000000021 +:10CF10000000000000000000000000000000000011 +:10CF20000000000000000000000000000000000001 +:10CF300000000000000000000000000000000000F1 +:10CF400000000000000000000000000000000000E1 +:10CF500000000000000000000000000000000000D1 +:10CF600000000000000000000000000000000000C1 +:10CF700000000000000000000000000000000000B1 +:10CF800000000000000000000000000000000000A1 +:10CF90000000000000000000000000000000000091 +:10CFA0000000000000000000000000000000000081 +:10CFB0000000000000000000000000000000000071 +:10CFC0000000000000000000000000000000000061 +:10CFD0000000000000000000000000000000000051 +:10CFE0000000000000000000000000000000000041 +:10CFF0000000000000000000000000000000000031 +:10D000000000000000000000000000000000000020 +:10D010000000000000000000000000000000000010 +:10D020000000000000000000000000000000000000 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000000000000000000000000000E0 +:10D0500000000000000000000000000000000000D0 +:10D0600000000000000000000000000000000000C0 +:10D0700000000000000000000000000000000000B0 +:10D0800000000000000000000000000000000000A0 +:10D090000000000000000000000000000000000090 +:10D0A0000000000000000000000000000000000080 +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E0000000000000000000000000000000000040 +:10D0F0000000000000000000000000000000000030 +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000000000000F +:10D1200000000000000000000000000000000000FF +:10D1300000000000000000000000000000000000EF +:10D1400000000000000000000000000000000000DF +:10D1500000000000000000000000000000000000CF +:10D1600000000000000000000000000000000000BF +:10D1700000000000000000000000000000000000AF +:10D18000000000000000000000000000000000009F +:10D19000000000000000000000000000000000008F +:10D1A000000000000000000000000000000000007F +:10D1B000000000000000000000000000000000006F +:10D1C000000000000000000000000000000000005F +:10D1D000000000000000000000000000000000004F +:10D1E000000000000000000000000000000000003F +:10D1F000000000000000000000000000000000002F +:10D20000000000000000000000000000000000001E +:10D21000000000000000000000000000000000000E +:10D2200000000000000000000000000000000000FE +:10D2300000000000000000000000000000000000EE +:10D2400000000000000000000000000000000000DE +:10D2500000000000000000000000000000000000CE +:10D2600000000000000000000000000000000000BE +:10D2700000000000000000000000000000000000AE +:10D28000000000000000000000000000000000009E +:10D29000000000000000000000000000000000008E +:10D2A000000000000000000000000000000000007E +:10D2B000000000000000000000000000000000006E +:10D2C000000000000000000000000000000000005E +:10D2D000000000000000000000000000000000004E +:10D2E000000000000000000000000000000000003E +:10D2F000000000000000000000000000000000002E +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D3200000000000000000000000000000000000FD +:10D3300000000000000000000000000000000000ED +:10D3400000000000000000000000000000000000DD +:10D3500000000000000000000000000000000000CD +:10D3600000000000000000000000000000000000BD +:10D3700000000000000000000000000000000000AD +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A000000000000000000000000000000000007D +:10D3B000000000000000000000000000000000006D +:10D3C000000000000000000000000000000000005D +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000000000003D +:10D3F000000000000000000000000000000000002D +:10D40000000000000000000000000000000000001C +:10D41000000000000000000000000000000000000C +:10D4200000000000000000000000000000000000FC +:10D4300000000000000000000000000000000000EC +:10D4400000000000000000000000000000000000DC +:10D4500000000000000000000000000000000000CC +:10D4600000000000000000000000000000000000BC +:10D4700000000000000000000000000000000000AC +:10D48000000000000000000000000000000000009C +:10D49000000000000000000000000000000000008C +:10D4A000000000000000000000000000000000007C +:10D4B000000000000000000000000000000000006C +:10D4C000000000000000000000000000000000005C +:10D4D000000000000000000000000000000000004C +:10D4E000000000000000000000000000000000003C +:10D4F000000000000000000000000000000000002C +:10D50000000000000000000000000000000000001B +:10D51000000000000000000000000000000000000B +:10D5200000000000000000000000000000000000FB +:10D5300000000000000000000000000000000000EB +:10D5400000000000000000000000000000000000DB +:10D5500000000000000000000000000000000000CB +:10D5600000000000000000000000000000000000BB +:10D5700000000000000000000000000000000000AB +:10D58000000000000000000000000000000000009B +:10D59000000000000000000000000000000000008B +:10D5A000000000000000000000000000000000007B +:10D5B000000000000000000000000000000000006B +:10D5C000000000000000000000000000000000005B +:10D5D000000000000000000000000000000000004B +:10D5E000000000000000000000000000000000003B +:10D5F000000000000000000000000000000000002B +:10D60000000000000000000000000000000000001A +:10D61000000000000000000000000000000000000A +:10D6200000000000000000000000000000000000FA +:10D6300000000000000000000000000000000000EA +:10D6400000000000000000000000000000000000DA +:10D6500000000000000000000000000000000000CA +:10D6600000000000000000000000000000000000BA +:10D6700000000000000000000000000000000000AA +:10D68000000000000000000000000000000000009A +:10D69000000000000000000000000000000000008A +:10D6A000000000000000000000000000000000007A +:10D6B000000000000000000000000000000000006A +:10D6C000000000000000000000000000000000005A +:10D6D000000000000000000000000000000000004A +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000000000000000000002A +:10D700000000000000000000000000000000000019 +:10D710000000000000000000000000000000000009 +:10D7200000000000000000000000000000000000F9 +:10D7300000000000000000000000000000000000E9 +:10D7400000000000000000000000000000000000D9 +:10D7500000000000000000000000000000000000C9 +:10D7600000000000000000000000000000000000B9 +:10D7700000000000000000000000000000000000A9 +:10D780000000000000000000000000000000000099 +:10D790000000000000000000000000000000000089 +:10D7A0000000000000000000000000000000000079 +:10D7B0000000000000000000000000000000000069 +:10D7C0000000000000000000000000000000000059 +:10D7D0000000000000000000000000000000000049 +:10D7E0000000000000000000000000000000000039 +:10D7F0000000000000000000000000000000000029 +:10D800000000000000000000000000000000000018 +:10D810000000000000000000000000000000000008 +:10D8200000000000000000000000000000000000F8 +:10D8300000000000000000000000000000000000E8 +:10D8400000000000000000000000000000000000D8 +:10D8500000000000000000000000000000000000C8 +:10D8600000000000000000000000000000000000B8 +:10D8700000000000000000000000000000000000A8 +:10D880000000000000000000000000000000000098 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B0000000000000000000000000000000000068 +:10D8C0000000000000000000000000000000000058 +:10D8D0000000000000000000000000000000000048 +:10D8E0000000000000000000000000000000000038 +:10D8F0000000000000000000000000000000000028 +:10D900000000000000000000000000000000000017 +:10D910000000000000000000000000000000000007 +:10D9200000000000000000000000000000000000F7 +:10D9300000000000000000000000000000000000E7 +:10D9400000000000000000000000000000000000D7 +:10D9500000000000000000000000000000000000C7 +:10D9600000000000000000000000000000000000B7 +:10D9700000000000000000000000000000000000A7 +:10D980000000000000000000000000000000000097 +:10D990000000000000000000000000000000000087 +:10D9A0000000000000000000000000000000000077 +:10D9B0000000000000000000000000000000000067 +:10D9C0000000000000000000000000000000000057 +:10D9D0000000000000000000000000000000000047 +:10D9E0000000000000000000000000000000000037 +:10D9F0000000000000000000000000000000000027 +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000000000000006 +:10DA200000000000000000000000000000000000F6 +:10DA300000000000000000000000000000000000E6 +:10DA400000000000000000000000000000000000D6 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000000000000000000000000000B6 +:10DA700000000000000000000000000000000000A6 +:10DA80000000000000000000000000000000000096 +:10DA90000000000000000000000000000000000086 +:10DAA0000000000000000000000000000000000076 +:10DAB0000000000000000000000000000000000066 +:10DAC0000000000000000000000000000000000056 +:10DAD0000000000000000000000000000000000046 +:10DAE0000000000000000000000000000000000036 +:10DAF0000000000000000000000000000000000026 +:10DB00000000000000000000000000000000000015 +:10DB10000000000000000000000000000000000005 +:10DB200000000000000000000000000000000000F5 +:10DB300000000000000000000000000000000000E5 +:10DB400000000000000000000000000000000000D5 +:10DB500000000000000000000000000000000000C5 +:10DB600000000000000000000000000000000000B5 +:10DB700000000000000000000000000000000000A5 +:10DB80000000000000000000000000000000000095 +:10DB90000000000000000000000000000000000085 +:10DBA0000000000000000000000000000000000075 +:10DBB0000000000000000000000000000000000065 +:10DBC0000000000000000000000000000000000055 +:10DBD0000000000000000000000000000000000045 +:10DBE0000000000000000000000000000000000035 +:10DBF0000000000000000000000000000000000025 +:10DC00000000000000000000000000000000000014 +:10DC10000000000000000000000000000000000004 +:10DC200000000000000000000000000000000000F4 +:10DC300000000000000000000000000000000000E4 +:10DC400000000000000000000000000000000000D4 +:10DC500000000000000000000000000000000000C4 +:10DC600000000000000000000000000000000000B4 +:10DC700000000000000000000000000000000000A4 +:10DC80000000000000000000000000000000000094 +:10DC90000000000000000000000000000000000084 +:10DCA0000000000000000000000000000000000074 +:10DCB0000000000000000000000000000000000064 +:10DCC0000000000000000000000000000000000054 +:10DCD0000000000000000000000000000000000044 +:10DCE0000000000000000000000000000000000034 +:10DCF0000000000000000000000000000000000024 +:10DD00000000000000000000000000000000000013 +:10DD10000000000000000000000000000000000003 +:10DD200000000000000000000000000000000000F3 +:10DD300000000000000000000000000000000000E3 +:10DD400000000000000000000000000000000000D3 +:10DD500000000000000000000000000000000000C3 +:10DD600000000000000000000000000000000000B3 +:10DD700000000000000000000000000000000000A3 +:10DD80000000000000000000000000000000000093 +:10DD90000000000000000000000000000000000083 +:10DDA0000000000000000000000000000000000073 +:10DDB0000000000000000000000000000000000063 +:10DDC0000000000000000000000000000000000053 +:10DDD0000000000000000000000000000000000043 +:10DDE0000000000000000000000000000000000033 +:10DDF0000000000000000000000000000000000023 +:10DE00000000000000000000000000000000000012 +:10DE10000000000000000000000000000000000002 +:10DE200000000000000000000000000000000000F2 +:10DE300000000000000000000000000000000000E2 +:10DE400000000000000000000000000000000000D2 +:10DE500000000000000000000000000000000000C2 +:10DE600000000000000000000000000000000000B2 +:10DE700000000000000000000000000000000000A2 +:10DE80000000000000000000000000000000000092 +:10DE90000000000000000000000000000000000082 +:10DEA0000000000000000000000000000000000072 +:10DEB0000000000000000000000000000000000062 +:10DEC0000000000000000000000000000000000052 +:10DED0000000000000000000000000000000000042 +:10DEE0000000000000000000000000000000000032 +:10DEF0000000000000000000000000000000000022 +:10DF00000000000000000000000000000000000011 +:10DF10000000000000000000000000000000000001 +:10DF200000000000000000000000000000000000F1 +:10DF300000000000000000000000000000000000E1 +:10DF400000000000000000000000000000000000D1 +:10DF500000000000000000000000000000000000C1 +:10DF600000000000000000000000000000000000B1 +:10DF700000000000000000000000000000000000A1 +:10DF80000000000000000000000000000000000091 +:10DF90000000000000000000000000000000000081 +:10DFA0000000000000000000000000000000000071 +:10DFB0000000000000000000000000000000000061 +:10DFC0000000000000000000000000000000000051 +:10DFD0000000000000000000000000000000000041 +:10DFE0000000000000000000000000000000000031 +:10DFF0000000000000000000000000000000000021 +:10E000000000000000000000000000000000000010 +:10E010000000000000000000000000000000000000 +:10E0200000000000000000000000000000000000F0 +:10E0300000000000000000000000000000000000E0 +:10E0400000000000000000000000000000000000D0 +:10E0500000000000000000000000000000000000C0 +:10E0600000000000000000000000000000000000B0 +:10E0700000000000000000000000000000000000A0 +:10E080000000000000000000000000000000000090 +:10E090000000000000000000000000000000000080 +:10E0A0000000000000000000000000000000000070 +:10E0B0000000000000000000000000000000000060 +:10E0C0000000000000000000000000000000000050 +:10E0D0000000000000000000000000000000000040 +:10E0E0000000000000000000000000000000000030 +:10E0F0000000000000000000000000000000000020 +:10E10000000000000000000000000000000000000F +:10E1100000000000000000000000000000000000FF +:10E1200000000000000000000000000000000000EF +:10E1300000000000000000000000000000000000DF +:10E1400000000000000000000000000000000000CF +:10E1500000000000000000000000000000000000BF +:10E1600000000000000000000000000000000000AF +:10E17000000000000000000000000000000000009F +:10E18000000000000000000000000000000000008F +:10E19000000000000000000000000000000000007F +:10E1A000000000000000000000000000000000006F +:10E1B000000000000000000000000000000000005F +:10E1C000000000000000000000000000000000004F +:10E1D000000000000000000000000000000000003F +:10E1E000000000000000000000000000000000002F +:10E1F000000000000000000000000000000000001F +:10E20000000000000000000000000000000000000E +:10E2100000000000000000000000000000000000FE +:10E2200000000000000000000000000000000000EE +:10E2300000000000000000000000000000000000DE +:10E2400000000000000000000000000000000000CE +:10E2500000000000000000000000000000000000BE +:10E2600000000000000000000000000000000000AE +:10E27000000000000000000000000000000000009E +:10E28000000000000000000000000000000000008E +:10E29000000000000000000000000000000000007E +:10E2A000000000000000000000000000000000006E +:10E2B000000000000000000000000000000000005E +:10E2C000000000000000000000000000000000004E +:10E2D000000000000000000000000000000000003E +:10E2E000000000000000000000000000000000002E +:10E2F000000000000000000000000000000000001E +:10E30000000000000000000000000000000000000D +:10E3100000000000000000000000000000000000FD +:10E3200000000000000000000000000000000000ED +:10E3300000000000000000000000000000000000DD +:10E3400000000000000000000000000000000000CD +:10E3500000000000000000000000000000000000BD +:10E3600000000000000000000000000000000000AD +:10E37000000000000000000000000000000000009D +:10E38000000000000000000000000000000000008D +:10E39000000000000000000000000000000000007D +:10E3A000000000000000000000000000000000006D +:10E3B000000000000000000000000000000000005D +:10E3C000000000000000000000000000000000004D +:10E3D000000000000000000000000000000000003D +:10E3E000000000000000000000000000000000002D +:10E3F000000000000000000000000000000000001D +:10E40000000000000000000000000000000000000C +:10E4100000000000000000000000000000000000FC +:10E4200000000000000000000000000000000000EC +:10E4300000000000000000000000000000000000DC +:10E4400000000000000000000000000000000000CC +:10E4500000000000000000000000000000000000BC +:10E4600000000000000000000000000000000000AC +:10E47000000000000000000000000000000000009C +:10E48000000000000000000000000000000000008C +:10E49000000000000000000000000000000000007C +:10E4A000000000000000000000000000000000006C +:10E4B000000000000000000000000000000000005C +:10E4C000000000000000000000000000000000004C +:10E4D000000000000000000000000000000000003C +:10E4E000000000000000000000000000000000002C +:10E4F000000000000000000000000000000000001C +:10E50000000000000000000000000000000000000B +:10E5100000000000000000000000000000000000FB +:10E5200000000000000000000000000000000000EB +:10E5300000000000000000000000000000000000DB +:10E5400000000000000000000000000000000000CB +:10E5500000000000000000000000000000000000BB +:10E5600000000000000000000000000000000000AB +:10E57000000000000000000000000000000000009B +:10E58000000000000000000000000000000000008B +:10E59000000000000000000000000000000000007B +:10E5A000000000000000000000000000000000006B +:10E5B000000000000000000000000000000000005B +:10E5C000000000000000000000000000000000004B +:10E5D000000000000000000000000000000000003B +:10E5E000000000000000000000000000000000002B +:10E5F000000000000000000000000000000000001B +:10E60000000000000000000000000000000000000A +:10E6100000000000000000000000000000000000FA +:10E6200000000000000000000000000000000000EA +:10E6300000000000000000000000000000000000DA +:10E6400000000000000000000000000000000000CA +:10E6500000000000000000000000000000000000BA +:10E6600000000000000000000000000000000000AA +:10E67000000000000000000000000000000000009A +:10E68000000000000000000000000000000000008A +:10E69000000000000000000000000000000000007A +:10E6A000000000000000000000000000000000006A +:10E6B000000000000000000000000000000000005A +:10E6C000000000000000000000000000000000004A +:10E6D000000000000000000000000000000000003A +:10E6E000000000000000000000000000000000002A +:10E6F000000000000000000000000000000000001A +:10E700000000000000000000000000000000000009 +:10E7100000000000000000000000000000000000F9 +:10E7200000000000000000000000000000000000E9 +:10E7300000000000000000000000000000000000D9 +:10E7400000000000000000000000000000000000C9 +:10E7500000000000000000000000000000000000B9 +:10E7600000000000000000000000000000000000A9 +:10E770000000000000000000000000000000000099 +:10E780000000000000000000000000000000000089 +:10E790000000000000000000000000000000000079 +:10E7A0000000000000000000000000000000000069 +:10E7B0000000000000000000000000000000000059 +:10E7C0000000000000000000000000000000000049 +:10E7D0000000000000000000000000000000000039 +:10E7E0000000000000000000000000000000000029 +:10E7F0000000000000000000000000000000000019 +:10E800000000000000000000000000000000000008 +:10E8100000000000000000000000000000000000F8 +:10E8200000000000000000000000000000000000E8 +:10E8300000000000000000000000000000000000D8 +:10E8400000000000000000000000000000000000C8 +:10E8500000000000000000000000000000000000B8 +:10E8600000000000000000000000000000000000A8 +:10E870000000000000000000000000000000000098 +:10E880000000000000000000000000000000000088 +:10E890000000000000000000000000000000000078 +:10E8A0000000000000000000000000000000000068 +:10E8B0000000000000000000000000000000000058 +:10E8C0000000000000000000000000000000000048 +:10E8D0000000000000000000000000000000000038 +:10E8E0000000000000000000000000000000000028 +:10E8F0000000000000000000000000000000000018 +:10E900000000000000000000000000000000000007 +:10E9100000000000000000000000000000000000F7 +:10E9200000000000000000000000000000000000E7 +:10E9300000000000000000000000000000000000D7 +:10E9400000000000000000000000000000000000C7 +:10E9500000000000000000000000000000000000B7 +:10E9600000000000000000000000000000000000A7 +:10E970000000000000000000000000000000000097 +:10E980000000000000000000000000000000000087 +:10E990000000000000000000000000000000000077 +:10E9A0000000000000000000000000000000000067 +:10E9B0000000000000000000000000000000000057 +:10E9C0000000000000000000000000000000000047 +:10E9D0000000000000000000000000000000000037 +:10E9E0000000000000000000000000000000000027 +:10E9F0000000000000000000000000000000000017 +:10EA00000000000000000000000000000000000006 +:10EA100000000000000000000000000000000000F6 +:10EA200000000000000000000000000000000000E6 +:10EA300000000000000000000000000000000000D6 +:10EA400000000000000000000000000000000000C6 +:10EA500000000000000000000000000000000000B6 +:10EA600000000000000000000000000000000000A6 +:10EA70000000000000000000000000000000000096 +:10EA80000000000000000000000000000000000086 +:10EA90000000000000000000000000000000000076 +:10EAA0000000000000000000000000000000000066 +:10EAB0000000000000000000000000000000000056 +:10EAC0000000000000000000000000000000000046 +:10EAD0000000000000000000000000000000000036 +:10EAE0000000000000000000000000000000000026 +:10EAF0000000000000000000000000000000000016 +:10EB00000000000000000000000000000000000005 +:10EB100000000000000000000000000000000000F5 +:10EB200000000000000000000000000000000000E5 +:10EB300000000000000000000000000000000000D5 +:10EB400000000000000000000000000000000000C5 +:10EB500000000000000000000000000000000000B5 +:10EB600000000000000000000000000000000000A5 +:10EB70000000000000000000000000000000000095 +:10EB80000000000000000000000000000000000085 +:10EB90000000000000000000000000000000000075 +:10EBA0000000000000000000000000000000000065 +:10EBB0000000000000000000000000000000000055 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE0000000000000000000000000000000000025 +:10EBF0000000000000000000000000000000000015 +:10EC00000000000000000000000000000000000004 +:10EC100000000000000000000000000000000000F4 +:10EC200000000000000000000000000000000000E4 +:10EC300000000000000000000000000000000000D4 +:10EC400000000000000000000000000000000000C4 +:10EC500000000000000000000000000000000000B4 +:10EC600000000000000000000000000000000000A4 +:10EC70000000000000000000000000000000000094 +:10EC80000000000000000000000000000000000084 +:10EC90000000000000000000000000000000000074 +:10ECA0000000000000000000000000000000000064 +:10ECB0000000000000000000000000000000000054 +:10ECC0000000000000000000000000000000000044 +:10ECD0000000000000000000000000000000000034 +:10ECE0000000000000000000000000000000000024 +:10ECF0000000000000000000000000000000000014 +:10ED00000000000000000000000000000000000003 +:10ED100000000000000000000000000000000000F3 +:10ED200000000000000000000000000000000000E3 +:10ED300000000000000000000000000000000000D3 +:10ED400000000000000000000000000000000000C3 +:10ED500000000000000000000000000000000000B3 +:10ED600000000000000000000000000000000000A3 +:10ED70000000000000000000000000000000000093 +:10ED80000000000000000000000000000000000083 +:10ED90000000000000000000000000000000000073 +:10EDA0000000000000000000000000000000000063 +:10EDB0000000000000000000000000000000000053 +:10EDC0000000000000000000000000000000000043 +:10EDD0000000000000000000000000000000000033 +:10EDE0000000000000000000000000000000000023 +:10EDF0000000000000000000000000000000000013 +:10EE00000000000000000000000000000000000002 +:10EE100000000000000000000000000000000000F2 +:10EE200000000000000000000000000000000000E2 +:10EE300000000000000000000000000000000000D2 +:10EE400000000000000000000000000000000000C2 +:10EE500000000000000000000000000000000000B2 +:10EE600000000000000000000000000000000000A2 +:10EE70000000000000000000000000000000000092 +:10EE80000000000000000000000000000000000082 +:10EE90000000000000000000000000000000000072 +:10EEA0000000000000000000000000000000000062 +:10EEB0000000000000000000000000000000000052 +:10EEC0000000000000000000000000000000000042 +:10EED0000000000000000000000000000000000032 +:10EEE0000000000000000000000000000000000022 +:10EEF0000000000000000000000000000000000012 +:10EF00000000000000000000000000000000000001 +:10EF100000000000000000000000000000000000F1 +:10EF200000000000000000000000000000000000E1 +:10EF300000000000000000000000000000000000D1 +:10EF400000000000000000000000000000000000C1 +:10EF500000000000000000000000000000000000B1 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF80000000000000000000000000000000000081 +:10EF90000000000000000000000000000000000071 +:10EFA0000000000000000000000000000000000061 +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000000000000000000000000000041 +:10EFD0000000000000000000000000000000000031 +:10EFE0000000000000000000000000000000000021 +:10EFF0000000000000000000000000000000000011 +:10F000000000000000000000000000000000000000 +:10F0100000000000000000000000000000000000F0 +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000000000000070 +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F0000000000000000000000000000000000010 +:10F1000000000000000000000000000000000000FF +:10F1100000000000000000000000000000000000EF +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F2000000000000000000000000000000000000FE +:10F2100000000000000000000000000000000000EE +:10F2200000000000000000000000000000000000DE +:10F2300000000000000000000000000000000000CE +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000000000000000000000000000009E +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A000000000000000000000000000000000005E +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000000000002E +:10F2E000000000000000000000000000000000001E +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000000000FD +:10F3100000000000000000000000000000000000ED +:10F3200000000000000000000000000000000000DD +:10F3300000000000000000000000000000000000CD +:10F3400000000000000000000000000000000000BD +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000000000008D +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E000000000000000000000000000000000001D +:10F3F000000000000000000000000000000000000D +:10F4000000000000000000000000000000000000FC +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E000000000000000000000000000000000001C +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000000000000FB +:10F5100000000000000000000000000000000000EB +:10F5200000000000000000000000000000000000DB +:10F5300000000000000000000000000000000000CB +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F57000000000000000000000000000000000008B +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000000000000000000000000000FA +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000000000000BA +:10F6500000000000000000000000000000000000AA +:10F66000000000000000000000000000000000009A +:10F67000000000000000000000000000000000008A +:10F68000000000000000000000000000000000007A +:10F69000000000000000000000000000000000006A +:10F6A000000000000000000000000000000000005A +:10F6B000000000000000000000000000000000004A +:10F6C000000000000000000000000000000000003A +:10F6D000000000000000000000000000000000002A +:10F6E000000000000000000000000000000000001A +:10F6F000000000000000000000000000000000000A +:10F7000000000000000000000000000000000000F9 +:10F7100000000000000000000000000000000000E9 +:10F7200000000000000000000000000000000000D9 +:10F7300000000000000000000000000000000000C9 +:10F7400000000000000000000000000000000000B9 +:10F7500000000000000000000000000000000000A9 +:10F760000000000000000000000000000000000099 +:10F770000000000000000000000000000000000089 +:10F780000000000000000000000000000000000079 +:10F790000000000000000000000000000000000069 +:10F7A0000000000000000000000000000000000059 +:10F7B0000000000000000000000000000000000049 +:10F7C0000000000000000000000000000000000039 +:10F7D0000000000000000000000000000000000029 +:10F7E0000000000000000000000000000000000019 +:10F7F0000000000000000000000000000000000009 +:10F8000000000000000000000000000000000000F8 +:10F8100000000000000000000000000000000000E8 +:10F8200000000000000000000000000000000000D8 +:10F8300000000000000000000000000000000000C8 +:10F8400000000000000000000000000000000000B8 +:10F8500000000000000000000000000000000000A8 +:10F860000000000000000000000000000000000098 +:10F870000000000000000000000000000000000088 +:10F880000000000000000000000000000000000078 +:10F890000000000000000000000000000000000068 +:10F8A0000000000000000000000000000000000058 +:10F8B0000000000000000000000000000000000048 +:10F8C0000000000000000000000000000000000038 +:10F8D0000000000000000000000000000000000028 +:10F8E0000000000000000000000000000000000018 +:10F8F0000000000000000000000000000000000008 +:10F9000000000000000000000000000000000000F7 +:10F9100000000000000000000000000000000000E7 +:10F9200000000000000000000000000000000000D7 +:10F9300000000000000000000000000000000000C7 +:10F9400000000000000000000000000000000000B7 +:10F9500000000000000000000000000000000000A7 +:10F960000000000000000000000000000000000097 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000000000000067 +:10F9A0000000000000000000000000000000000057 +:10F9B0000000000000000000000000000000000047 +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000000000000000000000000000007 +:10FA000000000000000000000000000000000000F6 +:10FA100000000000000000000000000000000000E6 +:10FA200000000000000000000000000000000000D6 +:10FA300000000000000000000000000000000000C6 +:10FA400000000000000000000000000000000000B6 +:10FA500000000000000000000000000000000000A6 +:10FA60000000000000000000000000000000000096 +:10FA70000000000000000000000000000000000086 +:10FA80000000000000000000000000000000000076 +:10FA90000000000000000000000000000000000066 +:10FAA0000000000000000000000000000000000056 +:10FAB0000000000000000000000000000000000046 +:10FAC0000000000000000000000000000000000036 +:10FAD0000000000000000000000000000000000026 +:10FAE0000000000000000000000000000000000016 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000000000000000000000000000F5 +:10FB100000000000000000000000000000000000E5 +:10FB200000000000000000000000000000000000D5 +:10FB300000000000000000000000000000000000C5 +:10FB400000000000000000000000000000000000B5 +:10FB500000000000000000000000000000000000A5 +:10FB60000000000000000000000000000000000095 +:10FB70000000000000000000000000000000000085 +:10FB80000000000000000000000000000000000075 +:10FB90000000000000000000000000000000000065 +:10FBA0000000000000000000000000000000000055 +:10FBB0000000000000000000000000000000000045 +:10FBC0000000000000000000000000000000000035 +:10FBD0000000000000000000000000000000000025 +:10FBE0000000000000000000000000000000000015 +:10FBF0000000000000000000000000000000000005 +:10FC000000000000000000000000000000000000F4 +:10FC100000000000000000000000000000000000E4 +:10FC200000000000000000000000000000000000D4 +:10FC300000000000000000000000000000000000C4 +:10FC400000000000000000000000000000000000B4 +:10FC500000000000000000000000000000000000A4 +:10FC60000000000000000000000000000000000094 +:10FC70000000000000000000000000000000000084 +:10FC80000000000000000000000000000000000074 +:10FC90000000000000000000000000000000000064 +:10FCA0000000000000000000000000000000000054 +:10FCB0000000000000000000000000000000000044 +:10FCC0000000000000000000000000000000000034 +:10FCD0000000000000000000000000000000000024 +:10FCE0000000000000000000000000000000000014 +:10FCF0000000000000000000000000000000000004 +:10FD000000000000000000000000000000000000F3 +:10FD100000000000000000000000000000000000E3 +:10FD200000000000000000000000000000000000D3 +:10FD300000000000000000000000000000000000C3 +:10FD400000000000000000000000000000000000B3 +:10FD500000000000000000000000000000000000A3 +:10FD60000000000000000000000000000000000093 +:10FD70000000000000000000000000000000000083 +:10FD80000000000000000000000000000000000073 +:10FD90000000000000000000000000000000000063 +:10FDA0000000000000000000000000000000000053 +:10FDB0000000000000000000000000000000000043 +:10FDC0000000000000000000000000000000000033 +:10FDD0000000000000000000000000000000000023 +:10FDE0000000000000000000000000000000000013 +:10FDF0000000000000000000000000000000000003 +:10FE000000000000000000000000000000000000F2 +:10FE100000000000000000000000000000000000E2 +:10FE200000000000000000000000000000000000D2 +:10FE300000000000000000000000000000000000C2 +:10FE400000000000000000000000000000000000B2 +:10FE500000000000000000000000000000000000A2 +:10FE60000000000000000000000000000000000092 +:10FE70000000000000000000000000000000000082 +:10FE80000000000000000000000000000000000072 +:10FE90000000000000000000000000000000000062 +:10FEA0000000000000000000000000000000000052 +:10FEB0000000000000000000000000000000000042 +:10FEC0000000000000000000000000000000000032 +:10FED0000000000000000000000000000000000022 +:10FEE0000000000000000000000000000000000012 +:10FEF0000000000000000000000000000000000002 +:10FF000000000000000000000000000000000000F1 +:10FF100000000000000000000000000000000000E1 +:10FF200000000000000000000000000000000000D1 +:10FF300000000000000000000000000000000000C1 +:10FF400000000000000000000000000000000000B1 +:10FF500000000000000000000000000000000000A1 +:10FF60000000000000000000000000000000000091 +:10FF70000000000000000000000000000000000081 +:10FF80000000000000000000000000000000000071 +:10FF90000000000000000000000000000000000061 +:10FFA0000000000000000000000000000000000051 +:10FFB0000000000000000000000000000000000041 +:10FFC0000000000000000000000000000000000031 +:10FFD0000000000000000000000000000000000021 +:10FFE0000000000000000000000000000000000011 +:10FFF0000000000000000000000000000000000001 +:020000021000EC +:10000000584870472DE9F04182B00C46164601254C +:1000100000282DD106EB8600524901EBC007284687 +:1000200000FA04F8F86810EA080F08D02346FA68C6 +:1000300031460FF2942000F077FA022046E04FF0AC +:10004000FF30009003462A4679682046F1F71AFFF0 +:1000500000280BD02346FA6831460FF27C2000F0CE +:1000600063FAF86848EA0000F8602EE002202DE00C +:1000700001282AD106EB86003A4901EBC007284641 +:1000800000FA04F8F86810EA080F08D12346FA6865 +:1000900031460FF2542000F047FA032515E04FF0E7 +:1000A000FF332A4679682046F1F782FF002807D0FF +:1000B0002346FA6831460FF2402000F035FA00E09E +:1000C0000325F86820EA0800F8602846BDE8F681B4 +:1000D00001F0A4B802B58CB00021ADF82A1001914E +:1000E0000A218DF8081000218DF809108DF80A10EA +:1000F00005218DF80010019004220CA90DF10900D2 +:1001000000F062F90020ADF82A0000A800F02CF8F9 +:100110000DB000BD80B504F0A7FC0FF2EC10BDE8F7 +:10012000024000F001BA10B50446C0B204F0A7FCCA +:1001300021460FF2E010BDE8104000F0F5B90022B2 +:10014000C0B21D280CD240B200EB8003054800EB82 +:10015000C300C068012303FA01F1084200D01A4627 +:100160001046704728D0002030B587B004460125DE +:1001700094F90000062800F29280DFE800F00427DE +:10018000355067888C0004F1090182B0684620224E +:1001900002F0DCFE0CBC94F90810606840B200F07C +:1001A0002CFD02280AD1606800B200F06EFE002526 +:1001B00061680FF26C1000F0B7F976E0032874D193 +:1001C00061680FF2641000F0AFF96EE094F9081066 +:1001D000606840B200F0B9FD032866D161680FF293 +:1001E000501000F0A1F960E0618D00A800F066FEFB +:1001F0009DF9040002280AD1009800B200F045FEE3 +:10020000002500990FF2301000F08EF94DE0032820 +:100210004BD100990FF2281000F086F945E005F067 +:10022000B1F802280AD1606800B200F02EFE002565 +:1002300061680FF2141000F077F936E0032834D12A +:1002400061680FF20C1000F06FF92EE0606805286D +:100250000CD1284605F06DF902280DD0032824D1D1 +:1002600061680FF2FC0000F05FF91EE002281CD16B +:1002700005F061FA0228F1D1606800B200F005FED5 +:10028000002561680FF2D00000F04EF90DE0204625 +:1002900000F072FE09E0204601F020F805E06168F8 +:1002A0000FF2C40000F040F90025284607B030BD29 +:1002B000012070470FB4022004B07047012070473E +:1002C0000020704770470000534D414320256420B3 +:1002D0002564202564000000534D4120256420251D +:1002E0006420256400000000534D52432025642003 +:1002F0002564202564000000534D522025642025EC +:100300006420256400000000504420536574535459 +:100310000000000050442055543A2025640000009D +:10032000414C4F4620256400414C43462025640043 +:10033000524C434620256400504C4F462025640013 +:10034000504C43462025640050414F462025640010 +:10035000504143462025640050504F4620256400FC +:1003600050504346202564004558204C4D454C20B4 +:100370002564000030B5134D044681B0287820B9BB +:10038000281D05F055FA01202870281D05F06AFA8D +:10039000204606F0C3F80446281D05F084FA2046DE +:1003A00001B030BD30B5074D044681B0281D05F0C1 +:1003B00059FA204606F0FEF9281D01B0BDE830408C +:1003C00005F071BA7CFD002010B5044602F0BEFDB8 +:1003D000204610BD30B504460F480D46017881B067 +:1003E000491C017001F03FF8A068E168884209D11A +:1003F0003821204606F056FC01F035F8A068E16887 +:100400008842F5D02946204606F06AFC01B0BDE8D6 +:10041000304001F0D5B800BFF024002010B5DFF85F +:1004200000454FF48E720021204601F033F820463B +:1004300010BDDFF8EC04704710B5FFF7EFFF04467E +:1004400000221146084600F038FAC046C04601F0C6 +:1004500043F9204600F019F801F079FB204600F03E +:100460009CF9204600F015F8204600F019F800F03D +:100470005DF900206072A072E07220730120607349 +:100480000020E075A073012010BD0021C171017230 +:100490002BE010B5044601F077F90120607110BD22 +:1004A00010B5044601F020FA0120A07110BD38B546 +:1004B0000446012501F0CBFA012804D12846E0705A +:1004C0000020A0700AE0022804D10020E070284635 +:1004D000A07003E00020E070A0700546284632BD01 +:1004E00080B501F0F9FB012002BD10B50446E079AA +:1004F00001F0FCFC0121217010BD70B504460025FF +:10050000E679E171FFF7F1FF002807D02046FFF7F9 +:10051000C0FF2046FFF7C4FF012503E0E671204637 +:10052000FFF7E3FF284670BD0EB470B5C1B00546B5 +:1005300000A84FF4807100F00FFAFFF77AFF04462D +:1005400045AB2A464FF4807100A806F017FC00A8BE +:1005500006F032FC451C00A82818002100F8011CF8 +:10056000DFF8C0633078401C307000F07CFF70789A +:10057000401C7070207E2818FF2810DA207E00288A +:1005800003D0207E00190A2101762A4600A9207E88 +:1005900000191930FFF718FF207E28182076707890 +:1005A000401E7070C0B2002801D100F056FF01F06B +:1005B00007F841B070BC5DF810FB2DE9F843054623 +:1005C0000E4617464FF0020800F04DFFD54C6078FC +:1005D000401C60709DF80000401E8DF8000017F868 +:1005E000019B00AB4A463946304601F0A7FC002883 +:1005F00009D06078401E6070C0B2002801D100F0C0 +:100600002CFF012015E05FFA88F8424629460FF2D8 +:100610002430FFF789FF4046A0F101080028E0D10F +:100620006078401E6070C0B2002801D100F015FF54 +:100630000020BDE8F2832DE9F04704460D4616463A +:100640001F460898DFF8E08288F8000000F00BFFF2 +:10065000DFF8D09299F80100401C89F801004FF0B2 +:10066000020A434632463946284601F011FD002869 +:100670000BD099F80100401E89F80100C0B2002893 +:1006800001D100F0EAFE012017E05FFA8AFA524633 +:1006900021460FF2AC20FFF747FF5046A0F1010AB8 +:1006A0000028DED199F80100401E89F80100C0B28F +:1006B000002801D100F0D1FE0020BDE8F0872DE92F +:1006C000F84305460E46174698464FF0020900F0DB +:1006D000CAFE944C6078401C6070424639463046F1 +:1006E00001F0C8FD002809D06078401E6070C0B2DB +:1006F000002801D100F0B1FE012015E05FFA89F970 +:100700004A4629460FF24420FFF70EFF4846A0F163 +:1007100001090028E1D16078401E6070C0B2002855 +:1007200001D100F09AFE0020BDE8F28306F05FBF21 +:10073000F8B5044600273D467C4E0DE039464F1E75 +:10074000C9B200290AD1002804D120690121A94099 +:100750008843206100276D1C122D10DA56F8250001 +:10076000006E006880470128E8D121690122AA4073 +:100770001143216156F8251001220A77E3E7206929 +:10078000032805D02069022802D02069012803D15E +:10079000206940F480502061F1BD01F055BE01F0A8 +:1007A000BBBE01F074BE81B00022ADF80220ADF8EE +:1007B0000020C079042808D0062809D008280AD0CB +:1007C00009280BD00A280CD00EE04FF4C8600DE0C9 +:1007D0004FF448600AE04FF4C85007E04FF4FA5075 +:1007E00004E042F2107001E041F27070ADF80220B6 +:1007F0000DE0BDF80020521CADF80020BDF800202F +:100800008242F6DBBDF80220521CADF80220BDF892 +:1008100002208A4203D20022ADF80020EEE701B0A8 +:100820007047417210B58CB0EFF7AEFC0446FFF78D +:1008300000FE0021ADF82A1001910A218DF8081060 +:1008400000218DF809108DF80A10407A00280DD08B +:10085000002C18D008468DF80000052001900B20D0 +:100860008DF8080000A8FFF77FFC0CE0002C0AD0F0 +:1008700001208DF80000052001900B208DF8080064 +:1008800000A8FFF771FC0CB010BD01F0A7BE01F08D +:10089000AFBE01210846F8E701210846F7E702212B +:1008A0000120F2E702210120F1E701F0ABBE10B513 +:1008B0000446FFF7BEFD447510BD1D4B18705970FE +:1008C0009A70002098807047012822DB18498A8896 +:1008D0008018888000B2B0F57A7F1ADBA0F57A70B4 +:1008E00088808878401C887040B23C2811DB3C38F6 +:1008F00088704878401C487040B23C2809DB3C387E +:1009000048700878401C087040B2182801DB0020AD +:10091000087070470649062202F018BB000000006C +:1009200020670020F02400206874002000000020D0 +:1009300030740020495745202564202564000000BC +:1009400049524520256420256400000049524F4546 +:100950002025642025640000002206F015BF50F811 +:10096000041B61B150F8042BD30744BFA9F1010364 +:100970009A18002342F8043B091FFAD1EFE77047A9 +:100980004FF0FF31401E02280AD9001F042807D962 +:10099000C01F052804D9093802D0801E052800D8B8 +:1009A0000121084670470021012809D0032807D0FB +:1009B000062805D0092803D00C2801D00D2800D125 +:1009C000012108467047000038B504464FF0FF3556 +:1009D000FFF716FB1C2C2AD8DFE804F016161216B7 +:1009E00016121616121229290F1214141616292976 +:1009F00029162916181B1F2327004FF47A7516E0B5 +:100A0000142514E0B42512E03C2510E0D0F8C453BE +:100A10000DE000F57170856A09E000F57170056DF3 +:100A200005E000F57170856F01E0D0F86454284648 +:100A300032BD38B5DFF8F047F0F73AFFE06206F074 +:100A4000BDFEFFF7DDFA2063002509E01C2D04D16F +:100A500001F20C41DFF8D4278A67406A80476D1C99 +:100A60001D2D80F2C880216B05EB8500C00000229F +:100A70004254401842704FF0FF324260002202722E +:100A8000C2604272032D04D14C31DFF8A4270A65FD +:100A9000E3E7012D03D1DFF89C27CA64DDE7022DCF +:100AA00004D14C31DFF890278A62D6E7002D62D05E +:100AB000042D04D14C31DFF884278A67CDE7052D5A +:100AC00004D1DFF87C27C1F8EC20C6E7062D04D15D +:100AD000EC31DFF870278A62BFE7072D04D1EC31D3 +:100AE000DFF864270A65B8E7082D04D1EC31DFF898 +:100AF0005C278A67B1E7092D04D1DFF85427C1F8D4 +:100B00008C21AAE70A2D36D00B2D34D00C2D04D120 +:100B1000DFF84027C1F804229FE70D2D04D1DFF84C +:100B20003827C1F82C2298E70E2D05D101F50B715D +:100B3000DFF828278A6290E70F2D05D101F50B71A8 +:100B4000DFF81C270A6588E7102D05D101F50B7128 +:100B5000DFF810278A6780E7112D04D1DFF8082716 +:100B6000C1F8CC2279E7122D05D0142D03D0132D16 +:100B700001D0162D10D1DFF8F4160161DFF8F01660 +:100B80004161DFF8F0268261DFF8EC26C261DFF810 +:100B9000EC260262416260E7152D04D1DFF8E02601 +:100BA000C1F86C2359E7172D05D101F55B71DFF80A +:100BB000D4260A6551E7182D05D101F55B71DFF8E0 +:100BC000C8268A6749E7192D04D1DFF8C026C1F885 +:100BD0000C2442E71A2D05D101F20C41DFF8B026B2 +:100BE0008A623AE71B2D7FF431AF01F20C41DFF846 +:100BF000A4260A6531E7012032BD0CB42DE9F04787 +:100C000086B0054688460126A94609EB8900C4003E +:100C1000DFF81476B8F10B0F1ED1386B04EB000A25 +:100C20009AF80100002817D02846FFF7A9FE0128EE +:100C300012DB2846FFF7A4FE9AF8011081420BDB75 +:100C4000284600F0FCF80646386B20180021417059 +:100C50000FF2BC60FFF768FC386B215C002918D1EB +:100C600021184A78002A14D10022225410464870D4 +:100C70000EA983B06846202202F078F90EBC2846FF +:100C800000F035F8022801D102202BE0032800D122 +:100C90000326B8F10A0F04D1386B215C491C21549A +:100CA00010E0B8F10B0F0DD1032D06D1386B90F881 +:100CB0007900002801D103F024FE386B2018417818 +:100CC000491C4170386BF96A0A6E0192B1F85C10E8 +:100CD000009121184B78225C49460FF23C60FFF7E7 +:100CE00023FC304606B0BDE8F0075DF80CFB0EB4FF +:100CF000FFB504460125C0B2FFF766FEDFF82865A0 +:100D000004EB8401326B02EBC1077860002038727B +:100D1000F86009A984B06846202202F027F90FBCC8 +:100D20003F69B847022801D102200AE0032801D117 +:100D3000032505E0F06A016E2A46A24011430166D0 +:100D4000284604B0F0BC5DF810FB2DE9FC470446D2 +:100D50000D460126274607EB87004FEAC008DFF85B +:100D6000C894D9F8300008EB000A9AF8010002286C +:100D700014D32046FFF704FE01280FDB2046FFF7BF +:100D8000FFFD9AF80110814208DB2046FFF7F8FDCD +:100D90008AF801000FF29450FFF7C6FBD9F8300033 +:100DA00018F80010002904D108EB00025278002A3C +:100DB0002FD00A2D09D1002903D0491E08F80010B0 +:100DC00017E0002108F8001013E00B2D11D108EBFB +:100DD00000014A78002A02D0521E4A7001E0002227 +:100DE0004A70032C05D190F87900002801D103F056 +:100DF00097FDD9F8300018F80010002909D14044B7 +:100E00004078002805D1204600F019F8032800D1C9 +:100E10000326D9F83000D9F82C100A6E0192B1F8E7 +:100E20005C10009108EB00014B7818F8002039465F +:100E30000FF20050FFF778FB3046BDE8F687F8B5B3 +:100E40000446012504EB8400C700DFF8DC63306B47 +:100E5000381840698047032800D10325204640B256 +:100E600000F059F9032800D10325306B38184FF0F2 +:100E7000FF31416000210172C160F06A016E012200 +:100E8000A240914301662846F2BD38B5044604EB02 +:100E90008400C000DFF89053296B002242544018B0 +:100EA000114641702046FFF7CAFFE86A026E2146EC +:100EB0000FF29440FFF738FB012032BD2DE9F041DD +:100EC000AEB004460D46ADB201208DF85400DFF8F7 +:100ED000586316A8F16A5C2202F048F8139616A926 +:100EE00084B068465C2202F041F80FBC00F0D6F9ED +:100EF00000270BE0032803D1149703208DF854003A +:100F0000306B4044002101727F1C7FB21D2F23DA19 +:100F10000120B840F16A096E0842F5D007EB87005E +:100F20004FEAC008306B404441680029ECD4027A93 +:100F3000521C0272D2B26A4389B28A42E4DB8069EF +:100F400080470228D6D1149702208DF85400DDE99D +:100F50001401C4E9000103E0DDE91401C4E9000162 +:100F60002EB0BDE8F08100210A3842F207729042AB +:100F700000D20121084670472DE9F04383B00446B2 +:100F800000200190042204F1090101A8FFF71CFAD6 +:100F90006168DFF89462376B282505FB01704068B3 +:100FA000019A904204D10FF2AC30FFF7BDFA6AE02B +:100FB0001046FFF7D8FF002809D16168019B05FBA7 +:100FC000017042680FF29830FFF7AEFA5BE0DFF88D +:100FD000C8723868D0F8008026E090F90890606800 +:100FE000316B05FB0010C068012101FA09F10842CC +:100FF00017D04FF0FF300090034601220199484678 +:10100000F0F740FF40B200280BD1616801980090D2 +:10101000306B05FB010043684A460FF25830FFF77A +:1010200083FA4046D0F80080B842D6D13868D0F86C +:10103000008020E090F90890C868012202FA09F2C5 +:10104000104215D04FF0FF33012249684846F0F7AF +:10105000AFFF40B200280BD1616801980090306B5F +:1010600005FB010043684A460FF22030FFF75CFAA7 +:101070004046D0F800806168326B05FB0121B84220 +:10108000D8D101984860BDE8F7832DE9F0410446C6 +:1010900000252E46DFF890811AE006EB8600C70097 +:1010A000D8F830003918002048720120B040D8F834 +:1010B0002C20126E10420AD02046C96988470028A9 +:1010C00005D0D8F830003818012141720D46761C41 +:1010D0001D2EE2DB2846BDE8F0815348C16A096E47 +:1010E00000290BD0002107E001EB8102036B03EB29 +:1010F000C20200235372491C1D29F5DB70470121F0 +:1011000001FA00F04849C96A096E0840401E804152 +:10111000C043C00F70472DE9F0478146012409EB19 +:101120008900C500404E306B2818C068002828D0C0 +:10113000594F3868D0F8008003E003244046D0F8C7 +:101140000080B8421DD090F908A0306B2818C16803 +:10115000012202FA0AF2114021FA0AF149B20129E8 +:10116000ECD14FF0FF33012241685046F0F720FFE9 +:101170000028E2D0524649460FF22820FFF7D4F962 +:10118000DCE72046BDE8F08710B58CB004460020AF +:10119000ADF82A0001900A208DF8080000208DF893 +:1011A00009008DF80A00ADF82A00600719D505205E +:1011B000FFF7A5FF002807D004208DF800000520C8 +:1011C000019000A8FEF7D0FF0220FFF798FF00284B +:1011D00007D004208DF800000220019000A8FEF73F +:1011E000C3FFE0060CD50820FFF789FF002807D0D1 +:1011F00003208DF800000820019000A8FEF7B4FF3E +:101200000CB010BD02460020092A00D0704780B5FE +:10121000012902D106F044FC012002BD02492C2222 +:1012200001F0A4BE0000000090FC0020A9A301086A +:10123000E7460108CD82030809570108E5260108A1 +:10124000CF5401087B6B0308457D0308E952010870 +:10125000EF790108632E0108296A03082563030852 +:1012600011770308AF790308B5750308B5020108C3 +:10127000B1020108BD020108C1020108C50201084E +:101280005D7E0308757F03084DA20108DF80020818 +:10129000E3710308EB940108BC0700200FB4179812 +:1012A0000099016001994160029981600399C160D0 +:1012B0000499016105994161BDF84A100183BDF8A7 +:1012C0004C104183BDF84E1081830C9901620F9937 +:1012D00041621099816204B0704700004168122990 +:1012E00003D1817A002003F0C8BB132903D1C17A4E +:1012F000012003F0C2BB142903D1017B022003F0BB +:10130000BCBB152902D1807A03F0C8BB704700002E +:10131000414C204558000000414C256420256420A4 +:10132000256420256420256400000000524C2045DF +:1013300058000000524C2564202564202564202597 +:1013400064202564000000005445524D202564208F +:10135000256400004558204C4D435231202564003F +:101360004558204C4D4352322025642025642025C9 +:10137000640000004558204C4D4352332025642022 +:101380002564202564202564000000004558204C79 +:101390004D43523420256420256420256420256493 +:1013A00000000000534D52412025642025640000B8 +:1013B00030488168002904BF08B008E0EFF30982D3 +:1013C000A2F12802036882E8F84F83685A6000F0AF +:1013D000A6F8816859B14A6892E8F84F036002F1B3 +:1013E000280282F3098813F47F4F36D070472248D1 +:1013F00022490968401A80F308884FF08071C16162 +:101400001F4981617FF0060E704701BC2046DFF85E +:1014100074E000BDFEE71C48006818490968401ADE +:10142000203820F0070080F308884FF0000181F396 +:10143000118862B600F00DF8FEE74FF0000181F36D +:1014400011881249124A0A604FF0800181F3118815 +:1014500070470E490E4A0A6070474FF0000181F351 +:101460001188704700BF4FF0800181F311887047E9 +:1014700000BF0000F024002050940020FC850308E9 +:101480001D7B0308151401080000000804ED00E0AE +:101490000000001010B5044610460A4601462046DA +:1014A00006F014FC204610BD30B504460020A071A3 +:1014B000206A81B000F57A606062E16908001CBFB3 +:1014C00020468847FFF7C9FFE5681FE0FFF7CBFF1D +:1014D000206920B1687C2169497C88421DD3287C21 +:1014E000400710D5E868216A401A012806DA284624 +:1014F00000F082F8FFF7B7FF287C70B1E868616AF6 +:10150000411A48BF6062FFF7A8FF2D68002DDDD1AA +:1015100001B0BDE83040FFF7A6BF01B030BD70B5E7 +:1015200004460020607001202070206938B303E079 +:1015300028682061FFF791FFFFF795FF2569002DCF +:101540001CBF2E7C002E1CD070070ED5E868216AC7 +:10155000411A012905DA284600F04EF8287C20B906 +:101560000DE0616A411A48BF606206F0FB00102876 +:10157000DED1A86880684068007C0028D8D1FFF7D9 +:1015800072FFA07968B900206071206990B120696C +:10159000007C002820690BD0806880684068A060CB +:1015A0000CE02046FFF780FFA0790028F9D1EAE798 +:1015B000A06003E0A0602070FFF74FFF204670BDE1 +:1015C00010B5444C2078401E2070C0B298B96068B5 +:1015D00088B1FFF748FF606830B1012020702046D5 +:1015E000FFF72BFF002020706078002804BFBDE8C3 +:1015F0001040FFF732BF10BD10B5816849B1354AC0 +:10160000126AC2600A68496802B151600A6000212A +:101610008160017C11F0030101741BD12D4C216903 +:1016200091B92061207838B9012020702046FFF759 +:1016300004FF0020207001E001206071607848B94B +:10164000BDE81040FFF709BF4A7C437C9A42E8D3CB +:101650008142E7D010BD30B51E4D04462978607C2C +:1016600081B0491C297005F20C0100E011460A689E +:1016700012B1537C9842F9DB22600C60207C40B9A7 +:10168000FFF7F1FE2046FFF7B7FF687808B9FFF7CC +:10169000E4FE01B0BDE8304092E730B50D4C81B0BA +:1016A0002578681C20702046FFF7C7FE25706078FB +:1016B00020B901B0BDE83040FFF7CFBE01B030BD6A +:1016C00000B581B006F036FB02480121017001B07F +:1016D00000BD0000F02400207CB50121032006F0AD +:1016E000A6FBDFF88C4B204606F018FCDFF8546DA3 +:1016F000304606F013FC01208DF8040000208DF820 +:10170000050001208DF8060000208DF8070001215A +:1017100030460183C0460120009000A9304606F003 +:1017200059FC022130460183C0460220009000A9E6 +:10173000304606F04FFC01208DF8040000208DF8A3 +:101740000500ADF806004FF48055009500A930461D +:1017500006F040FC294630464183C04601208DF802 +:10176000040000208DF8050001208DF806000020FF +:101770008DF80700009500A9204606F02BFC2946AD +:1017800020464183C04673BD70B586B001214FF439 +:10179000001006F057FB01214FF4001006F052FB39 +:1017A0000121022006F043FB0121022006F03FFB4D +:1017B00001214FF4804006F050FB01214FF400104E +:1017C00006F061FB01214FF4001006F05CFB0021E4 +:1017D0004FF4001006F057FB00214FF4001006F004 +:1017E00052FBDFF8604C04220621204606F040FC44 +:1017F00004220721204606F03BFC02208DF804005D +:1018000001208DF805008DF8060000208DF80700F6 +:101810004020009000A9204606F0DCFB80200090CC +:1018200000A9204606F0D6FB4020009000A92046E3 +:1018300006F0D0FB8020009000A9204606F0CAFBED +:101840000020ADF80C004BF6FF70ADF80E004FF421 +:101850008060ADF812004FF48040ADF814000A200B +:10186000ADF81000DFF83C6C0296DFF83C5C02A992 +:10187000284606F040FC0121284606F09FFC0A207D +:10188000ADF81000029602A9284606F034FC0121AA +:10189000284606F093FC206820F440502060206821 +:1018A00020F440402060206840F400502060206810 +:1018B00040F40040206000220621204606F0D8FBBC +:1018C00000220721204606F0D3FB042206212046F1 +:1018D00006F0CEFB04220721204606F0C9FBDFF804 +:1018E000640C056006B070BD2DE9F04192B0012195 +:1018F0004FF4805006F0B1FA0121084606F097FA3D +:1019000001214FF4800006F092FADFF864490522C5 +:101910001146204606F0ACFB05220721204606F0C2 +:10192000A7FB05220621204606F0A2FB0522042182 +:10193000204606F09DFB02208DF8040001208DF862 +:1019400005000020ADF806002020009000A92046E8 +:1019500006F040FB8020009000A9204606F03AFBEC +:101960004020009000A9204606F034FB1020009093 +:1019700000A9204606F02EFBDFF8CC4B204606F0EF +:101980007FFCDFF8C85B0020288068600120288188 +:1019900000206881E8600720288200206880DFF846 +:1019A000B06B304606F04EFDDFF8A87B384606F0F7 +:1019B00049FD4FF48060069000210D9103210E91A6 +:1019C00000210F910A910890DFF88C0B03900846D4 +:1019D0001090099007904FF400300C9008460B903F +:1019E0004FF0C068CDF8088040200590084604906C +:1019F00002A9304606F0AAFD00200B90CDF8088021 +:101A0000059005F11400049002A9384606F09EFDE9 +:101A1000002068802946204606F061FC0122022150 +:101A2000204606F0FDFC01221146204606F0F8FC97 +:101A30000121204606F0DCFC0021304606F0ADFD19 +:101A40000021384606F0A9FD12B0BDE8F08110B5BE +:101A500088B001214FF0805006F0F4F901214FF4D5 +:101A6000802006F0E4F9012006F000FE0F2001F0CE +:101A7000D1F80446012006F0D7F9002006F0D4F989 +:101A8000002C01D001F070FF012006F06FF9412019 +:101A900006F00FFA0028FAD04FF4807006F0AEF985 +:101AA000012006F0BEF900F058FF3F20069040F2FA +:101AB000FF1007900020059005A800F005FF00200A +:101AC000029002A900F06AFF00208DF807000120B3 +:101AD0008DF804008DF805008DF8060001A900209E +:101AE00000F0D5FF4FF4800006F00CFE4FF48000AC +:101AF000039000208DF8100008208DF811000120BF +:101B00008DF8120003A806F0BBFD03208DF800003D +:101B10000D208DF8010000208DF8020001208DF8C5 +:101B2000030000A806F0FBFD032001F024F84FF4A9 +:101B3000804001F0DAF84FF4800006F0E3FD012167 +:101B40004FF4804001F097F8012008B010BD30B587 +:101B500085B00121084606F06AF901214FF4804062 +:101B600006F07BF900208DF810008DF8130001209D +:101B70000390DFF8E85903A9284606F02BFA4FF442 +:101B80000064039403A9284606F024FA0420039075 +:101B900003A9284606F01EFA0021084606F0F8FDC3 +:101BA0000B21002006F0F4FD0221002006F0F0FDDC +:101BB00000208DF8080001208DF80A0001900C200B +:101BC0008DF8090001A806F05BFD01940C208DF84A +:101BD000090001A806F054FD204606F093FD0420FC +:101BE00001900C208DF8090001A806F049FD0420A1 +:101BF00006F088FD28208DF800000F208DF80100E8 +:101C000000208DF8020001208DF8030000A806F0E6 +:101C100086FD05B030BD30B58DB0044601214FF4CE +:101C2000807006F01AF900A806F00EFA0A2000905B +:101C300003208DF8040000208DF8070000A9DFF8CC +:101C4000300606F0C7F906F0B7FD02A806F0F9FD68 +:101C50004FF48030039002A806F0E5FD06A806F0D8 +:101C6000D8FDDFF8FC5806A9284606F0B2FD072388 +:101C700001222146284606F0F5FD0121284606F0FE +:101C800036FE0121284606F0E2FD0DB030BD38B524 +:101C9000DFF8CC48204606F025FE4FF47A75022185 +:101CA000204606F03BFE002803D12846451E0128A9 +:101CB000F5DA2046BDE8324006F024BE80B50021AA +:101CC000DFF89C0806F0C3FD00214FF48070BDE8EA +:101CD000044006F0C2B8000038B5040039D0012035 +:101CE00006F0C4FC002000F060FF4FF40055042013 +:101CF00000F0DCFF012804D12846451E80B20028F0 +:101D0000F5D100EE104AB8EE400ADFED8A0A80EE07 +:101D1000800AF0EE000A20EE200ADFED870A80EE4E +:101D2000800ABDEEC00A10EE100A401E80B200F01C +:101D300032FF4FF4804000F0D8FF4FF4800006F0EF +:101D4000E1FC012000F031FFDFF8180801214160BB +:101D500031BD012006F08AFC0020BDE8324000F0D1 +:101D600024BF000030B4014601200023DFF8F8272B +:101D70001C469460946814F00C0FFBD10C460B2C9D +:101D800055D8DFE804F02054545406192031383F68 +:101D9000464D946844F080049460DFF8D0474FF4D7 +:101DA000C0652560146824F080741460DFF8C047B3 +:101DB000DFF8C05725603BE00346DFF8B447DFF8A3 +:101DC000B857256034E094689460DFF8A0474FF47A +:101DD000C0652560146824F080741460DFF89047B3 +:101DE000DFF89857256023E00223DFF88447DFF807 +:101DF000905725601CE00323DFF87447DFF8845711 +:101E0000256015E00423DFF86847DFF87C5725607C +:101E10000EE00523DFF85847DFF87057256007E02C +:101E20000623DFF84C47DFF86857256000E01846C6 +:101E3000002B4AD003EBC3030FF668041B19946808 +:101E40009460146824F080741460146824F0806432 +:101E500014609C781D8844EA8514DD786D086D1E39 +:101E600044EA05441D7944EA05645460DC881D7A1F +:101E70002D0745EA8414DFF81C572C60146844F0E1 +:101E8000807414601468A401FCD55B7943F4C063CA +:101E9000DFF8D846236093689360936893600529C0 +:101EA00004D1916841F09001916005E00A2903D1C5 +:101EB000916841F480519160916841F00201916014 +:101EC000916801F00C010829FAD1DFF8A41609681D +:101ED000DFF8C426914207D2DFF8C0160A6822F460 +:101EE000404242F480420A6030BC70473AE710B585 +:101EF000DFF850460121206806F099F9206806F0C5 +:101F0000CBF8BDE81040FFF73FBC30B40022838A15 +:101F1000008BDFF83046656843EA00400840000265 +:101F200055EA102060600840884200D10122104626 +:101F300030BC704700007A44000000472DE9F84F9C +:101F400004460D4616464FF420491F78DFF8F48505 +:101F50004FF40031D8F8000006F074F9002808D0DA +:101F60004846A0F101090028F2D1FFF7C0FF002088 +:101F70008CE0D8F8000001884FF6FF521140018034 +:101F80000121D8F8000006F025F94FF4805AD14617 +:101F90000020C8F80400D8F800B0DFF8041658464E +:101FA000FFF7B3FF002805D14846A0F1010900283A +:101FB000F1D163E0D14600222146584606F022F9CD +:101FC0000020C8F80400D8F80040DFF8D8152046F3 +:101FD000FFF79BFF002805D14846A0F10109002822 +:101FE000F1D14BE03146C9B220460182C046D1460C +:101FF0000020C8F80400D8F80040DFF8AC152046EF +:10200000FFF783FF002805D14846A0F10109002809 +:10201000F1D133E0012F15D1297820460182C04645 +:10202000D1460020C8F80400DFF88015D8F8000079 +:10203000FFF76BFF002823D14846A0F101090028D3 +:10204000F2D11BE03846471EC0B2002818D015F860 +:10205000011BD8F800000182C046D1460020C8F814 +:102060000400DFF84815D8F80000FFF74EFF0028FD +:10207000E8D14846A0F101090028F2D1002005E08E +:102080000121D8F8000006F0B1F80120BDE8F28F78 +:102090002DE9F54F81B00D461E464FF420483778A4 +:1020A000DFF8A0444FF40031206806F0CBF8002898 +:1020B00008D04046A0F101080028F3D1FFF717FF30 +:1020C0000020D3E0206801884FF6FF5211400180C4 +:1020D0000121206806F07EF84FF48059C8460020A0 +:1020E0006060DFF8BCA4D4F800B051465846FFF752 +:1020F0000CFF002805D14046A0F101080028F2D1CC +:1021000091E000229DF80410584606F07BF8C8467E +:1021100000206060D4F800B0DFF888145846FFF75C +:10212000F4FE002805D14046A0F101080028F1D1B5 +:1021300079E0BDF80810C9B258460182C046C846C9 +:10214000DFF86C14206806F07DF8002805D14046C1 +:10215000A0F101080028F3D165E00121206806F014 +:1021600039F8C84600206060D4F800B0514658469F +:10217000FFF7CBFE002805D14046A0F1010800285A +:10218000F2D150E001229DF80410584606F03AF8CA +:10219000022FC84639D2DFF81C14206806F052F826 +:1021A000002805D14046A0F101080028F3D13AE00B +:1021B0000021206806F02FF82068018B012106F02D +:1021C00015F8C846DFF8F013206806F03BF8002841 +:1021D00005D14046A0F101080028F3D123E0206892 +:1021E000008AC0B228703078401E3070C84620681F +:1021F0000188890505D54046A0F101080028F6D1DF +:1022000011E0012106F007F82BE000206060DFF804 +:10221000AC132068FFF779FE002806D14046A0F1F4 +:1022200001080028F3D1002020E0012616E0012F4C +:102230000CD1012E0AD100263146206805F0EBFFB3 +:102240002068818A018B012105F0D0FF2068818AF6 +:10225000490603D5008A05F8010B7F1EFFB2002F47 +:10226000E5D10121206805F0D6FF0120BDE8FE8FF1 +:10227000000002402DE9F04707460D4616464FF490 +:102280002048B04C4FF40031206805F0DBFF0028F7 +:1022900008D04046A0F101080028F3D1FFF727FE3F +:1022A000002089E0206801884FF6FF52114001802C +:1022B0000121206805F08EFF4FF48059C8460020A8 +:1022C0006060D4F800A0B6495046FFF71EFE002813 +:1022D00005D14046A0F101080028F2D149E00122D1 +:1022E0003946504605F08EFF022EC84634D2B14919 +:1022F000206805F0A7FF002805D14046A0F101089D +:102300000028F4D135E00021206805F084FF206822 +:10231000018B012105F06AFFC846A749206805F036 +:1023200091FF002805D14046A0F101080028F4D112 +:102330001FE02068008AC0B22870C8462068018863 +:10234000890505D54046A0F101080028F6D110E026 +:10235000012105F060FF2AE00020606097492068B5 +:10236000FFF7D3FD002806D14046A0F10108002860 +:10237000F4D1002020E0012716E0012E0CD1012F1E +:102380000AD100273946206805F045FF2068818A78 +:10239000018B012105F02AFF2068818A490603D5B7 +:1023A000008A05F8010B761EF6B2002EE5D1012158 +:1023B000206805F030FF0120BDE8F0878048016803 +:1023C00008292FD168490A6842F080720A60426881 +:1023D000B2F1806F03D10A6842F080620A600A6835 +:1023E0009201FCD58A6842F002028A608A6802F093 +:1023F0000C02082AFAD14268B2F1806F02D10A6851 +:102400001201FCD55A490968634A914206D26349D0 +:102410000A6822F4404242F480420A6000210160CE +:10242000416070474168B1F1806F09D14E490A6837 +:1024300042F080620A600A681201FCD50021416006 +:1024400070470000000402405E48016841F080517E +:102450000160524801688908890041F0010101606A +:1024600040480FF209010160704700003D48416893 +:1024700000290AD00021416053490A6842F0040251 +:102480000A600FF22901016010E030BF70474E482A +:10249000016821F00401016030BF016841F00401CE +:1024A00001607047801A06000054004010B5FDF727 +:1024B000C0FF807A012803D1012006F0DAF802E09B +:1024C000002006F0D6F8404C80211F4805F0B2FFEE +:1024D000002817D172B624483949826802F00C02EC +:1024E0000A60006800F080604860206840F00400E6 +:1024F000206030BF62B6206820F004002060BDE894 +:1025000010405BE7206820F00400206030BF2068A6 +:1025100040F00400206010BD1248006800470F49D9 +:10252000012806D00CD3032807D004D3042806D0F2 +:1025300006E0264904E0264902E0264900E0264953 +:1025400008467047AC25002000300140047300208D +:1025500088640240106402400C30014000000240D8 +:10256000002001402074002000380240003C02405E +:102570008425002000127A00809698000024F40040 +:1025800000366E010048E801005A620280F0FA024B +:1025900000BD0105843802400187930300700040AC +:1025A000010003008200070080000700840007008C +:1025B00004000010020000104000001002000300A0 +:1025C000287400204038024010ED00E00004024072 +:1025D00000080240000C02400010024010B50C46FA +:1025E000FFF79DFF214689B2BDE8104005F03CBDD4 +:1025F00010B50C46FFF793FF214689B2BDE81040A5 +:1026000005F034BDE0B500238DF8083001238DF8C6 +:102610000A30002A03D10C228DF8092002E008229A +:102620008DF8092004283CD8DFE800F0030D1922BA +:1026300022004FF40060019028208DF800000F2048 +:102640008DF801001CE01846019010208DF809005B +:1026500006208DF800000E208DF8010010E0022009 +:10266000019007208DF800000F208DF8010007E091 +:102670000420019008208DF800000F208DF8010043 +:1026800000208DF80200012903D118468DF80300BF +:1026900001E08DF8030001A805F0F2FF00A806F0A4 +:1026A0003EF807BD200110040F03020103F00010E3 +:1026B000060F01020103C00010080F01020103C050 +:1026C0000010060F01020103F00010060F010201C5 +:1026D00003C80010040F02020103A80010020F0338 +:1026E0000201030038B5FDF78BFC0446104DEFF7EF +:1026F000DFF8286006F01AF906F01DF9686006F0A8 +:102700001FF90C48C4F8B00004F1B0000A49416058 +:102710000A4981600A49C1600A490161012032BD4C +:1027200003494968896808470148406800680047CC +:1027300038FE0020B5020108B1020108BD020108FF +:10274000C1020108C50201082DE9F04786B0044620 +:1027500001A81421FEF700F9FDF76BFE05464FF0C6 +:102760000209002601E0761C76B20A2E80F29D80D6 +:10277000022EF8D0032EF6D0062EF4D0514850F891 +:10278000267007F10C08787A002805D1D8F8540093 +:10279000406880470028E6D009F8046009F1010983 +:1027A0004FFA89F9304609284FD8DFE800F0050ACA +:1027B0004E4E10154E10423CC8212846FDF7F3FF3F +:1027C00043E04FF448712846FDF7EDFF3DE032212C +:1027D0002846FDF7E8FF38E03C212846FDF7E3FFF7 +:1027E0004FF0000ABAF1030F2FDA0020D8F8541086 +:1027F0000969884714212846FDF7D5FF0120D8F83C +:1028000054100969884714212846FDF7CCFFBAF116 +:10281000020F05DA062101A8D8F854205269904722 +:102820000AF1010ADEE74FF416712846FDF7BBFFF7 +:102830000BE00020D8F8541009698847012088F877 +:1028400011003C212846FDF7AEFF98F8151001A8AD +:10285000D8F8542052699047002819D0D8F80C00B5 +:10286000F96800EB010A98F8152001A95046FDF718 +:10287000ABFD3846EFF72CF998F81520514609EBD7 +:102880000400FDF7A1FD98F9150081444FFA89F97C +:10289000787A00287FF467AFD8F8540080688047C2 +:1028A00000287FF460AF002009E0A9F10200ADF834 +:1028B0000000022200A92046FDF786FD002006B098 +:1028C000BDE8F0870000002070B504460026DFF860 +:1028D0003854CA20E8615320E86100F018F8002855 +:1028E00011D0286820F0400028602868216808433B +:1028F0002860A068A860A868616840EA0140A860F4 +:1029000000F024F80126FF20E861304670BD81B058 +:1029100000200090DFF8F4030168490613D44FF05B +:10292000FF310160016801F04001009A521C0092E1 +:10293000009AB2F5803F01D00029F3D000688009E9 +:1029400000F0010000E0012001B07047DFF8BC0397 +:10295000016821F080010160704781B00020009083 +:10296000DFF8A813CA20886153208861086820F026 +:10297000A0000860086800F02000009A521C009235 +:10298000009AB2F5003F01D00028F3D00868400952 +:1029900000F00100FF228A6101B07047F8B50746D8 +:1029A0000E460024DFF85C53002FA86804D14006CF +:1029B0000AD42046F07007E0400603D5307800F0D6 +:1029C000BEF901E02046F0703078002F09D0717810 +:1029D000090241EA0040B1780843F17840EA014633 +:1029E0000FE000F0A1F90746707800F09DF90002B1 +:1029F00040EA0747B07800F097F93843F17840EAA9 +:102A00000146CA20686253206862FFF780FF0028F1 +:102A10000FD0DFF8FC0230402860FFF797FFA8686E +:102A2000800605D4FFF799FF002802D0012400E0BA +:102A30000124FF2068622046F2BD10B50C46DFF885 +:102A4000C4120968DFF8C82211400A0C02F03F03E3 +:102A500023700B0A03F07F03637001F07F01A17004 +:102A600002F04001E17000280BD1207800F067F9F6 +:102A70002070607800F063F96070A07800F05FF972 +:102A8000A07010BDDFF88C12486A0968704770B5F5 +:102A900006460D460024002E06D16878C10603D5EF +:102AA00000F0EF000A306870002E05D0687800F062 +:102AB00046F9A87800F043F9E878002E09D0697843 +:102AC000090241EA0040A9780843297840EA4136E2 +:102AD0000FE000F029F90646687800F025F90002B9 +:102AE00040EA0646A87800F01FF93043297840EA0A +:102AF0004136DFF82052CA20286253202862FFF7AF +:102B000006FF00280FD0DFF8100230402860FFF7E2 +:102B10001DFF6868800605D4FFF71FFF002802D05C +:102B2000012400E00124FF202862204670BD10B57A +:102B30000C46DFF8E0110968DFF8DC2111400A0CCF +:102B4000E2700A0A02F01F02627001F03F02A270F6 +:102B5000490B01F00701217000280BD1E07800F04B +:102B6000EEF8E070607800F0EAF86070A07800F0AD +:102B7000E6F8A07010BDDFF89011CA22CA61532296 +:102B8000CA610A68D208D2000A600A681043086065 +:102B9000FF20C8617047DFF88411CA220A615322FE +:102BA0000A610860FF200861704781B00021009130 +:102BB000DFF85411CA22CA615322CA61002808688A +:102BC00004D040F480600860012012E020F48060AE +:102BD0000860486800F00400009A521C0092009AB5 +:102BE000B2F5803F01D00028F3D04868800800F09B +:102BF0000100FF22CA6101B0704781B0002200923B +:102C0000474A0092009A02EB800000900098016011 +:102C100001B0704781B000210091414900910099B5 +:102C200001EB800000900098006801B0704738B553 +:102C300000242246344DCA23EB615323EB616B68B9 +:102C40001B0701D406E0521C6B681B0702D5B2F5C6 +:102C5000805FF8D16A68120709D42A68D20606D4C0 +:102C600008436862FFF779FE002800D00124FF20A6 +:102C7000E861204632BD244ACA23D3615323D3617D +:102C800000F0040320F004000029116805D0084377 +:102C90001060906B1843906305E021EA000010601B +:102CA000906B98439063FF20D06170470021174AD2 +:102CB00012681C4B1A40024200D00121084670479E +:102CC00010B40021104A936B03F00403146804400D +:102CD00003EAD0332343526802EA101002D0000402 +:102CE00000D00121084610BC704708490003000CC1 +:102CF00040F080000A6802F0800262EA000008608A +:102D00007047000000280040082800400C280040C0 +:102D10007F7F7F00042800403FFFFF001428004011 +:102D2000502800407F3F0100002101E0491C0A3883 +:102D3000C0B20A28FAD240EA0110C0B270470109B5 +:102D400001EB810200F00F0000EB4200C0B27047BF +:102D500030B581B004460D46FEF785FB6869204317 +:102D60006861297C01F0F801082905D1A9690142AF +:102D70001CBF2846FEF740FC0448407820B901B04B +:102D8000BDE83040FEF769BB01B030BDF024002043 +:102D90000FB480B5BDF80A0067494880022802D305 +:102DA000801E088001E0002008800C229DF9091097 +:102DB0000020FDF727F9032801D1022000E00120BF +:102DC00002BC5DF814FB5C480121418000210180B8 +:102DD00001207047594908707047000030B58DB028 +:102DE00002A8FDF775F9544C2088401C20806188AA +:102DF00080B2884232D300202080054628E06068F7 +:102E0000D0F8EC010121A940084220D0284604F066 +:102E100039FD00281BD400EB80009FED460ADDED54 +:102E20000B0A60EE800AFDEEE00A10EE901A00AA8E +:102E30008152DDED0C0A20EE800ABDEEC00A10EED4 +:102E4000101A8218518000A94018012101716D1CCF +:102E5000132DD4DBDDE9000104F024FD01200DB0C9 +:102E600030BD80B5FDF7CCF8334948603449C0F82F +:102E7000F01100F5F87033494160334981600FF279 +:102E80001101C1600FF225010161012002BD0000A6 +:102E900010B50024294890F90000002804D104F05E +:102EA00020FD002800D00124204610BDF8B50446BE +:102EB0000D463026287816FB004001210170287845 +:102EC00016FB00404170287816FB00400C218170F1 +:102ED000287816FB0040194991F90010002902D00A +:102EE0000221C17001E00121C170287816FB004069 +:102EF00001210171287816FB0040082141712878D2 +:102F000016FB00400121C180287816FB00470020F5 +:102F100004F07AFC3881287816FB0044002004F085 +:102F200078FC60812878401C28700C20BDE8F240B5 +:102F300004F089BC0000C8429CAF002095FE002030 +:102F4000912D0108C72D0108DD2D010862B38B0703 +:102F500008D0521E11F8013B00F8013B00F024801C +:102F60008B07F6D1830740F0208000BF103A07D3CB +:102F700030B4B1E83810103AA0E83810F9D230BCBB +:102F8000530724BFB1E80810A0E8081044BF51F867 +:102F9000043B40F8043BD20724BF31F8022B20F851 +:102FA000022B44BF0B7803707047083A07D3B1E88F +:102FB0000810083A40F8043B40F804CBF7D2530716 +:102FC000E4E78268521C8260426832B10268531C96 +:102FD000036011704168491E41607047C44902286E +:102FE00007D1C44890F8922042F0010280F8922064 +:102FF00009E0032807D1BF4890F8921041F0020180 +:1030000080F89210BC490846704710B505F072FD73 +:10301000F32005F0E9FD08240AE00021204605F030 +:1030200078FD092803D00FF2F020FDF77DFA08346F +:10303000182CF2D3BDE8104005F065BD2DE9F8432A +:103040000646B6F803004FEAD008D6F80900071D77 +:10305000D6F80590FEF707FAA84C6078401C60701F +:10306000A44D95F89100002808D10FF2BC20FDF77F +:103070005BFAFFF7CAFF012085F8910005F03AFDE1 +:10308000F32005F0B1FDC8EB081009EB80184FF0F4 +:10309000000909E019F8071009EB080005F08AFD9E +:1030A00009F101090FFA89F9B6F801008145F1DB50 +:1030B00005F029FD05F29106707800F00300032861 +:1030C00009D100F036F80020707085F891008C4925 +:1030D0000220FFF73DFE6078401E6070C0B20028FD +:1030E00003D1BDE8F143FEF7B8B9BDE8F18310B5EF +:1030F000040004D0012C04D105F041FE01E005F0EC +:103100005EFE204610BD00207E498A79012A03D147 +:103110007D4800228A717047CA79012A02D17B4812 +:103120000022CA7170477349C87370477148C07BE9 +:10313000704738B56F4C04F211050120E870287112 +:10314000E32068710620ADF800007148006890F82F +:103150001A01C00719D594F8920000F00300032863 +:1031600009D1EF20A8710720ADF800000FF2C410BC +:10317000FDF7DAF909E0FFF7D9FFA8710720ADF8EC +:1031800000000FF2B810FDF7CFF9BDF80000C01E27 +:10319000ADF802000120607402220DF1020104F179 +:1031A0001200FDF711F900A904F11100EDF74FF835 +:1031B0000020FFF7B8FF31BD80B505F017FF0028EC +:1031C00005D10FF28010BDE80240FDF7ADB9014610 +:1031D0000FF27810FDF7A8F9BDE8014005F078BFBF +:1031E00000264B4CFDF725F92060424D94223146D4 +:1031F0002846FEF74FF9012210214FF47A5005F0CE +:1032000031FD42E00D2801D1FFF7D6FF103EF6B2A6 +:1032100008F101085FFA88F8B8F1020F0BD23046C6 +:1032200007EB400005F021FF0028EBD10120FFF75C +:103230007AFF012028740026287C002803D0FFF79D +:1032400078FF30462874FDF7ACFA206890F81A1120 +:10325000C90703D490F81A01400703D595F89200E6 +:10326000002827D00020C04605F099FD4FF480517A +:103270000120FDF70CFB3046FFF755FF206890F862 +:103280001A110FF2E000FDF74FF9022005F02CFFB4 +:10329000206890F81A110FF2C000FDF745F9FFF70A +:1032A0008BFF4FF480510120FDF7EFFA10211948F0 +:1032B00005F047FDFFF727FF07462068407AFFF734 +:1032C00016FF0028BFD0002FBDD0206890F81A014B +:1032D000400705D54FF4707239460420EDF7E2FC43 +:1032E000206890F81A01C007A6D5B04692E7000002 +:1032F0000040000808F7002000B00008F02400207B +:10330000F4450020C07300205C5800201C5C0020A5 +:1033100080FE00201C58002053562D464C4153453A +:10332000204641494C00000053562D5354415254FD +:103330000000000053562D444F4E450053562D4F6C +:103340004B000000535349205300000053534920C1 +:10335000462025640000000053562D522030782569 +:103360007800000053562D44203078257800000066 +:10337000EFF303807047BFF34F8FDFF87C050168E0 +:1033800001F4E061DFF8742511430160BFF34F8F52 +:10339000FEE770B5ADF5935D054600A841F25C21EE +:1033A000FDF7DAFA00F070FA002840F0718100F0C1 +:1033B00001FA05F09FFBF32005F016FCDFF840450D +:1033C00000206060DFF83C0520600020E06009E03C +:1033D00055F8211005F0D2FB2068001D2060E06840 +:1033E000401CE060E16820680829F1D3294605F017 +:1033F000C5FB2068001D2060EFF3088105F0BEFBCF +:103400002068001D2060EFF3098105F0B7FB2068FC +:10341000001D2060EFF3148105F0B0FB2068001D53 +:103420002060EFF3058105F0A9FB2068001D2060F6 +:10343000EFF3008105F0A2FB2068001D2060FFF77C +:1034400097FF0146206805F099FB2068001D206069 +:10345000EFF3108105F092FB2068001D2060EFF370 +:10346000118105F08BFB2068001D2060EFF31381B4 +:1034700005F084FB2068001D2060F1EE101A05F0B5 +:103480007DFB2068001D411C2160432105F092FB5B +:103490002068411C2160502105F08CFB2068411CF4 +:1034A0002160552105F086FBDFF85C0420600020D8 +:1034B000A0600FF2E81516E020690168206805F0A9 +:1034C0005DFB2068001D20602069001D2061E06810 +:1034D000401CE060A068E16805EBC00252689142C0 +:1034E000EAD3401CA060A068092805D255F8300036 +:1034F00020610020E060EDE72068411C216043214D +:1035000005F058FB2068411C21604F2105F052FB5B +:103510002068411C2160522105F04CFB2068411CB1 +:103520002160452105F046FBDFF8E0032060002024 +:10353000A0600FF2B01516E020690168206805F060 +:103540001DFB2068001D20602069001D2061E068CF +:10355000401CE060A068E16805EBC002526891423F +:10356000EAD3401CA060A0681A2805D255F83000A4 +:1035700020610020E060EDE7E54820605021E5484B +:1035800005F018FB2068411C2160452105F012FB65 +:103590002068411C2160522105F00CFB2068411C71 +:1035A0002160492105F006FB0D22DB4900A8FCF74C +:1035B0000BFF0422D9490DF10D00FCF705FF042291 +:1035C000D7490DF11100FCF7FFFE0422D5490DF19A +:1035D0001500FCF7F9FE0422D3490DF11900FCF7A0 +:1035E000F3FE0422D1490DF11D00FCF7EDFE14227B +:1035F00004F114010DF12100FCF7E6FE4FF48E708A +:103600000546FCF716FF2A4601460DF13500FCF78A +:10361000DBFE4FF48E7000A9401800F235058820BB +:10362000C0460646EEF744F9324601462846FCF706 +:10363000CBFE8820C0460020E06008E0421C2260EB +:1036400000AA895C05F0B6FAE068401CE060E16819 +:10365000206841F25C229142F0D3411C2160472155 +:1036600005F0A8FA2068411C21604C2105F0A2FA5F +:103670002068411C21604F2105F09CFA2068411C04 +:103680002160422105F096FA05F03DFA00F0ACF811 +:10369000FFF771FE0DF5935D70BD000008E000E0DE +:1036A0000500000000ED00E01000000088ED00E0E3 +:1036B0000700000000E100E00800000000E200E078 +:1036C0000800000000E300E00800000000E400E063 +:1036D0003C00000000EF00E00100000034EF00E0DB +:1036E000030000000064024034000000006002405B +:1036F00034000000003C0240060000000038024098 +:1037000024000000001C02400A00000000080240E3 +:103710000A000000000402400A000000000002400D +:103720000A000000003C0140060000000038014093 +:1037300009000000003001400900000000220140A3 +:10374000140000000021014014000000002001408E +:1037500014000000001001400700000000040140B8 +:103760001400000000000140140000000070004040 +:1037700002000000005C00400A0000000058004009 +:103780000A000000005400400A000000003C004015 +:10379000090000000038004009000000003000402F +:1037A00004000000002C004003000000002800403E +:1037B0002800000010B505F09DF9F32005F014FA7B +:1037C0004F4C1820A06002E0A0680830A060A068FC +:1037D000202805D2002105F09CF90928F4D0FEE745 +:1037E000BDE8104005F08FB9F8B551484168514A1D +:1037F00011400C0C0A0A02F01F0501F03F06006898 +:103800004D4901EA000705F075F9F32005F0ECF9E0 +:1038100045480168494805F0B1F9FF21484805F0DD +:10382000C9F92146474805F0C5F92946464805F03B +:10383000C1F93146454805F0BDF9380C00F03F01AB +:10384000434805F0B7F9380A00F07F01414805F018 +:10385000B1F907F07F01404805F0ACF9F5213F4888 +:1038600005F0A8F9BDE8F14005F04DB980B505F0C7 +:1038700041F9F32005F0B8F9AA21384805F09AF982 +:10388000BDE8014005F03FB9002034490978F52929 +:1038900000D10120704710B5044603F08DFAC0B284 +:1038A000142800D31320024621462D48FCF78CFD36 +:1038B0004FF0AC30007810BD80B500F055F8BDE891 +:1038C000014058E580B5FFF7D1FF4FF480420D4924 +:1038D0000020BDE80840EDF7E5B910B500F053F859 +:1038E000204C204603F068FA024621460020BDE83D +:1038F0001040EDF7D7B900000CED00E00400FA0528 +:10390000B472002000C0000850C0000830C2000897 +:10391000B1C80008B0C8000818730020B025002006 +:103920002C74002028740020B42500208425002059 +:10393000002800403FFFFF007F7F7F00F4FF00086A +:10394000F8FF0008F9FF0008FAFF0008FBFF000875 +:10395000FCFF0008FDFF0008FEFF0008FFFF000855 +:10396000C87200208825002080B501214FF48020F6 +:1039700004F05DFA012004F079FE94210F20BDE8E7 +:103980000440FFF73AB980B501214FF4802004F0DC +:103990004EFA012004F06AFE00210F20BDE8044029 +:1039A000FFF72BB910B5002401214FF4802004F05B +:1039B0003EFA012004F05AFE0F20FFF72BF994285D +:1039C00000D10124204610BD13F0004C03D55B420A +:1039D000524263F100039CEA210C00F0178010B5FD +:1039E000644603D34942404261F1000100F00EF801 +:1039F000640004D34942404261F10001244203D5EE +:103A00005B42524263F1000310BD00001B4213D120 +:103A1000094236D12AB18446B0FBF2F002FB10C253 +:103A2000704705F085BBFCD30022002370470B00D4 +:103A30000200002100207047904271EB030CF6D386 +:103A400070B5B1FA81F4B3FA83F52C1BA340C4F12D +:103A5000200532FA05F63343A2405FF00046E64007 +:103A600002E05B085FEA3202841A71EB030524BFAF +:103A7000204629467641F4D302000B003000002195 +:103A800070BD012ACFD970B5140C20D0B1FA81F4E1 +:103A9000B2FA82F5C4F120046419B4F12006D6D339 +:103AA000B2405FF00044F440002502E052085FEAB3 +:103AB0003303C61A71EB020E24BF304671466441CF +:103AC0006D41F3D302000B002000290070BD0C46AD +:103AD000B1FBF2F102FB11452D0445EA1045B5FB9F +:103AE000F2F402FB145580B240EA0545B5FBF2F052 +:103AF00002FB105240EA044070BD0268531C036090 +:103B0000117070475FF0FF0C1CEAD05114BF614583 +:103B100006E0C110400721F0E04101F1605170471B +:103B200079B900F0004100020AD0B0FA80FC00FA36 +:103B30000CF001F16051A1EB0C5101EBD0214005DB +:103B4000704741020CBF40F4E0016FF0000100201B +:103B500070470000B0B581EA030C0CF0004C40F255 +:103B6000FF7515EA11541DBF15EA1357AC42AF4259 +:103B700039E0E41923EA455343F48013C90241F0C4 +:103B8000004141EA505EC7021100A7FB0202002873 +:103B90004FF00000EEFB01204FF00001E3FB072196 +:103BA00018BF42F00102401800214941E3FB0E0119 +:103BB000A4F580640F0302D252004041494154F100 +:103BC00001046CDD470872F1004250F1000051EB36 +:103BD0000451A1F580115CBF41EA0C01B0BD4CEA73 +:103BE00005510020B0BD05EA1357AC4214BFAF42E7 +:103BF00041E050EA410E1CBF52EA430E02E061462A +:103C00000020B0BD24423C441BD15FEA070EF6D031 +:103C1000090302BF01460020AEF1140EB1FA81F78C +:103C2000AEEB070401FA07FE0C37C7F1200100FADA +:103C300007F7C8404EEA000E23EA455343F48013C9 +:103C4000A2E733F00043B3FA83F704BFB2FA82FE6F +:103C500077440B3FE41BB7F1200E2FBF02FA0EF39F +:103C6000BB40C7F1200E22FA0EFE38BF43EA0E0316 +:103C7000BA40641C82E750EA410E14BF52EA430E78 +:103C80006FF000014FF4001717EB430F8ABF19467E +:103C900017EB410FB5E74CEA05510020B0BDD4F158 +:103CA0000104B4F120070FDAC4F12007520828BF3D +:103CB00042F0010210FA07F501FA07F7E1BF2A43C3 +:103CC000E0403843E1400FE0352C98DCC7F1200498 +:103CD00052EA400220FA07F218BF42F0010231FA1C +:103CE00007F0A1400A43002172F1004250F10000A8 +:103CF00051EB0C01B0BD00004FEAF17CBCF1E04C8F +:103D00002CBFBCF5001F11E05FEA4C0C34BFBCF1C6 +:103D10007F5F2EE05FEA9C0C4FEA0C1C4FEA3C0CE4 +:103D2000C10071F100414CEB50707047C90241EA8B +:103D30005051C00218BF41F0010141F000414FEA6B +:103D40006C50C0F10900212810D240EACC7CCCF1A3 +:103D5000200C11FA0CF070F10040CCF1200C21FA8B +:103D60000CF00CF0004C40EB0C0070474FEACC70AC +:103D70007047490011F5001F04D84FEACC10FF30FE +:103D8000C0057047C817704710B50024FCF751FBF9 +:103D90000069C00700D50124204610BD00B58BB0D6 +:103DA00000A82C21FCF7D8FD0020ADF82A000A203D +:103DB0008DF8080000208DF809008DF80A008DF8B4 +:103DC00000001820019000A8FCF7CEF901200BB0EC +:103DD00000BD00B58BB000A82C21FCF7BDFD002074 +:103DE000ADF82A000A208DF8080000208DF809009F +:103DF0008DF80A0001208DF800001820019000A81D +:103E0000FCF7B2F901200BB000BD00B58BB000A8E3 +:103E10002C21FCF7A1FD0020ADF82A000A208DF826 +:103E2000080000208DF809008DF80A0001208DF8A7 +:103E300000001820019000A8FCF796F901200BB0B3 +:103E400000BD0120704710B50024FCF7F2FA0069AC +:103E5000C00700D50124204610BD00B58BB000A8D6 +:103E60002C21FCF779FD0020ADF82A000A208DF8FE +:103E7000080000208DF809008DF80A008DF8000078 +:103E80001920019000A8FCF76FF901200BB000BDCC +:103E900000B58BB000A82C21FCF75EFD0020ADF82A +:103EA0002A000A208DF8080000208DF809008DF8FE +:103EB0000A0001208DF800001920019000A8FCF7ED +:103EC00053F901200BB000BD00B58BB000A82C2128 +:103ED000FCF742FD0020ADF82A000A208DF808000A +:103EE00000208DF809008DF80A0001208DF80000EF +:103EF0001920019000A8FCF737F901200BB000BD94 +:103F00000120704710B50024FCF793FA0069800780 +:103F100000D50124204610BD00B58BB000A82C218F +:103F2000FCF71AFD0020ADF82A000A208DF80800E1 +:103F300000208DF809008DF80A008DF800001A2085 +:103F4000019000A8FCF710F901200BB000BD00B5EE +:103F50008BB000A82C21FCF7FFFC0020ADF82A0054 +:103F60000A208DF8080000208DF809008DF80A005D +:103F700001208DF800001A20019000A8FCF7F4F849 +:103F800001200BB000BD00B58BB000A82C21FCF7C0 +:103F9000E3FC0020ADF82A000A208DF8080000207C +:103FA0008DF809008DF80A0001208DF800001A2014 +:103FB000019000A8FCF7D8F801200BB000BD01204B +:103FC000704710B50024FCF734FA006900F00300D4 +:103FD000032800D10124204610BD00B58BB000A8F5 +:103FE0002C21FCF7B9FCCA48017841F002010170AC +:103FF0000020ADF82A000A208DF8080001208DF875 +:1040000009008DF80A1000208DF800001B20019097 +:1040100000A8FCF7A9F801200BB000BD00B58BB0DB +:1040200000A82C21FCF798FCB949087810F0FD0095 +:10403000087014D10020ADF82A000A208DF808007D +:1040400001208DF8090000208DF80A0001208DF86C +:1040500000001B20019000A8FCF786F802E040B2A7 +:1040600005F072FA01200BB000BD0120704701205D +:10407000704710B50024FCF7DCF9006900F0070078 +:10408000072800D10124204610BD00B58BB000A840 +:104090002C21FCF761FC9E48017841F00101017080 +:1040A000032905D1032005F04FFA05F067FA11E066 +:1040B0000020ADF82A000A208DF8080000208DF8B5 +:1040C00009008DF80A108DF800001B20019000A84F +:1040D000FCF74AF801200BB000BD00B58BB000A87A +:1040E0002C21FCF739FC8A49087810F0FE00087092 +:1040F00013D10020ADF82A000A208DF80800002016 +:104100008DF809008DF80A0001208DF800001B20B1 +:10411000019000A8FCF728F804E040B205F014FA7A +:1041200005F031FA01200BB000BD012070470120DD +:10413000704710B50024FCF77CF90069C00700D572 +:104140000124204610BD00B58BB000A82C21FCF73F +:1041500003FC0020ADF82A000A208DF8080000209A +:104160008DF809008DF80A008DF800001C200190E0 +:1041700000A8FBF7F9FF01200BB000BD00B58BB024 +:1041800000A82C21FCF7E8FB0020ADF82A000A204B +:104190008DF8080000208DF809008DF80A00012034 +:1041A0008DF800001C20019000A8FBF7DDFF012026 +:1041B0000BB000BD00B58BB000A82C21FCF7CCFBE8 +:1041C0000020ADF82A000A208DF8080000208DF8A4 +:1041D00009008DF80A0001208DF800001C200190D4 +:1041E00000A8FBF7C1FF01200BB000BD0120704704 +:1041F00070B58CB004460E46FBF702FF0546002062 +:1042000000900422214600A8FCF7DEF801A82C212A +:10421000FCF7A2FB009A31460FF2A810FCF784F9D4 +:1042200030460C38052847D8DFE800F0030F162386 +:104230003A0A1420C5F8C403207001200CB070BDE8 +:104240001420C5F864042070F7E705F571703C216F +:10425000816208462070F0E705F5717021783C29ED +:1042600004D13C21217021780165E6E700990165C0 +:10427000E3E727480078C10712D50021ADF82E10DA +:104280000A218DF80C1000218DF80D108DF80E000C +:1042900001208DF804001B20029001A8FBF764FFA9 +:1042A0000099304640B200F00DF80090206005F50E +:1042B000717000998167C0E70FF21810FCF734F9AC +:1042C0000020BBE710B4134AD36B126C104C247857 +:1042D000002C1AD00F2802D010280BD015E0507AED +:1042E000002812D0906B806800280ED488420DDD23 +:1042F00008460BE0587A002807D0986B80680028A1 +:1043000003D4884202DD084600E0084610BC70472E +:1043100090FE00200000002012B58BB001460C3941 +:10432000052928D8DFE801F0031D1F21211B1824CF +:104330000020ADF82A0001900A208DF80800052021 +:104340008DF80000019404220BA90DF10900FCF77F +:104350003BF800A8FBF708FF01200CB010BD1C249F +:10436000E6E71924E4E71A24E2E71B240B99FFF798 +:10437000A9FF0B90DCE70FF26400FCF7D5F80020F2 +:10438000EBE780B50FF25C010C2002F0D3FF0FF2D7 +:104390007801112002F0CEFF0FF290010D2002F003 +:1043A000C9FF0FF2AC010E2002F0C4FF0FF2C401EE +:1043B0000F2002F0BFFF0FF2E0011020BDE8044023 +:1043C00002F0B8BF4D52322044523D25642C256482 +:1043D000000000004D523220534446004D5232201E +:1043E00052434600893D01089D3D0108D33D010827 +:1043F0000B3E010800000000433E0108F1410108A6 +:10440000000000000000000033410108474101089E +:104410007D410108B541010800000000ED4101089F +:10442000F14101080000000000000000473E0108C3 +:104430005B3E0108913E0108C93E010800000000F2 +:10444000013F0108F14101080000000000000000E8 +:10445000053F0108193F01084F3F0108873F010848 +:1044600000000000BF3F0108F1410108000000000A +:1044700000000000C33F0108DB3F01081D400108A8 +:104480006B400108000000006F400108F141010885 +:104490000000000000000000734001088B4001088C +:1044A000DB4001082B410108000000002F410108FA +:1044B000F1410108000000000000000005F098B87C +:1044C00080B5EDF7F5F9C06EEDF78CFE0348007886 +:1044D00002BD02490870704700000000A4FE0020E1 +:1044E0000FB480B5032200210846FBF78BFD02289C +:1044F00001D1022018E00FF64440FCF715F8DFF870 +:10450000DC0B00214173C18181619DF80B209DF876 +:104510000A109DF8090005F006FA54220021DFF880 +:10452000D40BFCF7B7FF012002BC5DF814FB80B58B +:10453000032200210120FBF765FD032801D10320A0 +:1045400002BD012002BD30B58BB000A8FBF7C0FD55 +:1045500005210320FBF7F3FD002802D1DFF8800BD3 +:104560000890DFF8784B2069C56F05F08CF9207250 +:1045700094F90800022806D13C2D04D1142103200F +:10458000FBF7A8FD07E0012805D1142D03D13C213C +:104590000320FBF79FFD284680B2DDED081A00A935 +:1045A00091EC030A05F0DAF86069281860610120CF +:1045B0000BB030BD1CB5DFF8244B94F90000002887 +:1045C00043D400A8FCF7A6F9204600A90622FEF76E +:1045D000BDFC94F90A0094F90110814229D1217B94 +:1045E0000818A07240B23D2801DB3C38A07294F953 +:1045F0000A100FF65830FBF797FF00206061DFF8D4 +:10460000E40A90F901004FF0FF31884201D1012006 +:1046100016BD94F90110081A05F066FD21F000415D +:1046200005F07AFD40B2012801DB012016BD002013 +:1046300016BDDFF8B40A90F90120914203D0D4E905 +:104640000023C0E90023002016BD6069DFF8D01AFE +:10465000884205DB0FF60030FBF766FF012016BD30 +:10466000002016BD2DE9F8430026DFF8704A07E068 +:104670007A19A27252B231460FF6E820FBF754FFC6 +:1046800094F90A50002E21D46078461B76B294F932 +:104690000C70002EECD5304605F026FD21F00041CF +:1046A00002460B4690469946384605F01DFD4246A7 +:1046B0004B4605F05DFDE3D2EA1BA272002652B222 +:1046C00031460FF6B420FBF72FFFD9E73D2D02DB73 +:1046D000A5F13C00A07294F90A100FF6B020BDE8D5 +:1046E000F443FBF721BF10B5DFF8F0490120207239 +:1046F000002060724FF0FF3020700F20E072142015 +:10470000207300206073E081A061FBF779FC2061D9 +:10471000DFF8D819C0F888108830DFF8D419416064 +:10472000DFF8001A81600FF21101C1600FF21D5114 +:104730000161012010BD00002DE9F043A9B005463C +:10474000002413A805F0A3F8DFF8A869204612900A +:1047500001201190314684B068465422FEF706FCD1 +:104760000FBC00F0F9F807469DED210AD6ED0E0AC0 +:1047700030EE600A10EE100AFFF7C4F92246DFF8A7 +:104780007839FFF7E7F905F0C7FC80461FFA88F88B +:10479000BDF89200B6F84610461AF6B2DFF83C991A +:1047A000002D38D1002F02D156EA080018D001247C +:1047B000002F15D0DFF87059A868B84210D02046F5 +:1047C00005F063FD204605F00EFEA868381AC9F80A +:1047D0001C00AF60324639460FF6BC10FBF7A4FE52 +:1047E000DFF84459AF600020C9F814004FF0FF30E3 +:1047F00089F80000DFF8F028D9E90001C2E90001DA +:10480000C5E90001DFF8DC28C2E9000199F80B00D6 +:1048100089F80A002BE000F02CF900281CD0204673 +:1048200089F80900DFF8C028D9E90001C2E90001D0 +:1048300000A8FCF76FF8484600A90622FEF786FBA1 +:1048400099F9023099F9012099F900100FF65410E6 +:10485000FBF76AFEFFF706FFFFF7ACFE002806D065 +:10486000DFF88008D9E90023C0E90023012499F882 +:104870000D00012832D1B9F80E00002805D10FF63D +:104880003C10FBF751FE012428E0D9F818108142B2 +:1048900019D2002F02D156EA080000D00124DFF817 +:1048A000885895F9020099F90220904216D0491CC7 +:1048B000C9F818100FF61410FBF736FED9E90001FD +:1048C000C5E900010AE0002089F80D00A9F80E00F2 +:1048D000C9F818000FF60410FBF726FE012C02D1D0 +:1048E0000020C9F81400D9F8100090F879000028C9 +:1048F00003D10020C9F814000446204629B0BDE8C1 +:10490000F08310B5DFF8D4070021416103220521AF +:104910000020FBF777FB044600F007F8204610BDA7 +:10492000032205210120FBF76DBB00B595B000A85F +:1049300004F0ADFF542200A9DFF8B807FBF744FDEF +:10494000012015B000BDDFF89407C0697047DFF89B +:104950008C070021C16170470FB430B595B09DF947 +:10496000B4409DF9B800002501280BD105F054F89A +:104970001899884202D3451AEDB270E08038451A82 +:10498000EDB26CE000A804F082FF641E082C66D82B +:10499000DFE804F02905111D2936424E5A0001981E +:1049A0001999884201D3451A59E0DFF88027101879 +:1049B000401A451C53E002981A99884201D3451ABF +:1049C0004DE0DFF868271018401A451C47E00398AF +:1049D0001B99884201D3451A41E0DFF8502710188F +:1049E000401A451C3BE000981899884201D3451AAB +:1049F00035E0DFF8381708181899401A451C2EE0E2 +:104A000004981C99884201D3451A28E0DFF81C2736 +:104A10001018401A451C22E005981D99884201D3C0 +:104A2000451A1CE0DFF804271018401A451C16E050 +:104A300006981E99884201D3451A10E0DFF8EC264B +:104A40001018401A451C0AE007981F99884201D3A4 +:104A5000451A04E0DFF8D4261018401A451C2846F1 +:104A600015B030BC5DF814FBDFF87006012141720F +:104A70007047DFF86806407A704704F012BFDFF82D +:104A80005C16792802D37822CA8100E0C88101220D +:104A90004A7301460FF25470FBF746BD10B504008F +:104AA00001D1012402E0072C00D3062421460FF295 +:104AB0005070FBF739FD641E052C2DD8DFE804F09B +:104AC000030A11181F26DFF814063721C1723C2192 +:104AD000017321E0DFF804061921C1721E21017360 +:104AE0001AE0DFF8F8050F21C1721421017313E0F9 +:104AF000DFF8E8050A21C1720F2101730CE0DFF82D +:104B0000DC050721C1720C21017305E0DFF8CC053B +:104B10000521C1720A210173DFF8C005C17A8172D3 +:104B2000BDE810409EE500000FB400B595B000A8A8 +:104B300004F0ADFE9DED080ADDED1E0AB4EE600A3C +:104B4000F1EE10FA02DB30EE600A05E09FED3E1A4E +:104B500071EE600A30EE800A10EE100AFEF7D2FF06 +:104B6000DFF89825DFF8983505F078FCFFF7C4F8F2 +:104B7000FEF7C8FF0022DFF88C35FEF7EBFF05F0EB +:104B8000CBFA00EE100AB8EEC00A10EE100AFEF7DB +:104B9000B9FFDFF86825DFF87035FEF7DBFFDFF8D7 +:104BA0006C25DFF88C3505F059FCFFF7A5F800EE11 +:104BB000100A15B05DF814FB0FB400B595B000A84D +:104BC00004F065FE9DED0D0ADDED230AB4EE600AEA +:104BD000F1EE10FA02DB30EE600A05E09FED1A1AE2 +:104BE00071EE600A30EE800A10EE100AFEF78AFFBE +:104BF000DFF80825DFF8083505F030FCFFF77CF812 +:104C0000FEF780FF0022DFF8FC34FEF7A3FF05F07B +:104C100083FA00EE100AB8EEC00A10EE100AFEF792 +:104C200071FFDFF8D824DFF8E034FEF793FFDFF8F8 +:104C3000DC24DFF8FC3405F011FCFFF75DF800EE32 +:104C4000100A15B05DF814FB002474492DE9F047F3 +:104C50002DED068BA8B006460D4613A804F017FEEE +:104C60003024287814FB006001210170287814FB9F +:104C70000060DFF868144A7B012A0CD103224270DD +:104C8000287814FB00600122C270C889002804D172 +:104C90000020487301E001214170287814FB006076 +:104CA000032181700DF184099FED868B9FED879B19 +:104CB000DFF840740020129001201190394684B032 +:104CC00068465422FEF752F90FBCFFF745FE0A284A +:104CD000287814FB006080F0FD80002101712878A5 +:104CE00014FB006898F804A0084612900220119066 +:104CF000394684B068465422FEF738F90FBCFFF7F6 +:104D00002BFE40EA0A0088F80400287814FB0068AB +:104D10000020129003201190394684B06846542236 +:104D2000FEF724F90FBCFFF717FE88F80500287876 +:104D300014FB00680020129004201190394684B0C2 +:104D400068465422FEF712F90FBCFFF705FE88F8FB +:104D50000600287814FB00680020129005201190AE +:104D6000394684B068465422FEF700F90FBCFFF7BD +:104D7000F3FD88F80700394684B068465422FEF7F0 +:104D8000F5F80FBCFFF718FF10EE100AFEF7BAFE99 +:104D900041EC100B287814FB006853EC102B51ECFD +:104DA000190BFEF7D7FE05F0B7F9A8F80E00287822 +:104DB00014FB00682198FEF7A5FE53EC182BFEF7B4 +:104DC000C9FE05F0A9F988F81000287814FB0060E6 +:104DD000B9F80E104174394684B068465422FEF783 +:104DE000C5F80FBCFFF7A0FE10EE100AFEF78AFE12 +:104DF00041EC1A0B287814FB006853EC1A2B51EC89 +:104E0000190BFEF7A7FE05F087F988F8120028783D +:104E100014FB0068D9F80800FEF774FE53EC182B59 +:104E2000FEF798FE05F078F988F81300287814FB4F +:104E300000680020129006201190394684B0684620 +:104E40005422FEF793F80FBCFFF786FD88F80800A0 +:104E5000287814FB00680020129007201190394632 +:104E600084B068465422FEF781F80FBCFFF774FD4A +:104E700088F80900287814FB0068002012900820A8 +:104E80001190394684B068465422FEF76FF80FBC83 +:104E9000FFF762FD88F80A00287814FB0064002000 +:104EA000129009201190394684B068465422FEF7CA +:104EB0005DF80FBCFFF750FDE0722878401C2870A9 +:104EC00005E100BF000000000000244000000000D9 +:104ED0000000594080210171287814FB00680020EF +:104EE000129002201190394684B068465422FEF791 +:104EF0003DF80FBCFFF730FDC8F80500287814FB1B +:104F000000680020129003201190394684B0684652 +:104F10005422FEF72BF80FBCFFF71EFDC8F809005E +:104F2000287814FB00680020129004201190394664 +:104F300084B068465422FEF719F80FBCFFF70CFD49 +:104F4000C8F80D00287814FB006800201290052096 +:104F50001190394684B068465422FEF707F80FBC1A +:104F6000FFF7FAFCC8F81100394684B068465422AD +:104F7000FDF7FCFF0FBCFFF71FFE10EE100AFEF757 +:104F8000C1FD41EC100B287814FB006853EC102B8A +:104F900051EC190BFEF7DEFD05F0D4F8C8F8270038 +:104FA000287814FB00682198FEF7ACFD53EC182B11 +:104FB000FEF7D0FD05F0B0F888F82B00287814FB38 +:104FC0000060B9F80E1080F82C10394684B068469D +:104FD0005422FDF7CBFF0FBCFFF7A6FD10EE100A21 +:104FE000FEF790FD41EC1A0B494A4A4B05F0AAFA2C +:104FF00006D8494A494B05F0BBF801D29FED4DABAD +:10500000287814FB006853EC1A2B51EC180BFEF7B0 +:10501000A1FD05F081F8A8F82D00287814FB0068A0 +:10502000D9F80800FEF76EFD53EC182BFEF792FD41 +:1050300005F072F888F82F00287814FB006800202B +:10504000129006201190394684B068465422FDF72C +:105050008DFF0FBCFFF780FCC8F81500287814FB03 +:1050600000680020129007201190394684B06846ED +:105070005422FDF77BFF0FBCFFF76EFCC8F8190048 +:10508000287814FB006800201290082011903946FF +:1050900084B068465422FDF769FF0FBCFFF75CFC43 +:1050A000C8F81D00287814FB006400201290092025 +:1050B0001190394684B068465422FDF757FF0FBC63 +:1050C000FFF74AFCC4F821002878401C2870FFF73D +:1050D0002CFC28B0BDEC068BBDE8F087C4FC00209A +:1050E00000007A4448FE002040FE0020E144010810 +:1050F0002F45010864F50020000024407B14AE47D2 +:10510000E17A743F00005940E17A843F2D431CEB63 +:10511000B81E85EB51B89E3F9A9999999999B93FD4 +:1051200040771B0047450108F0FD0020809698005D +:10513000E2361A3F9A9999999999B93F50443A2081 +:1051400053746172745065646F00000050443A20DB +:105150004E5420256400000050443A204E6F54699C +:105160006D65000050443A20636F6D7031202564F6 +:105170002C2025640000000050443A20636F6D70BD +:10518000322025642C2025640000000050443A2081 +:105190004355542025640000537465703D25642CEC +:1051A0002025640050443A54696D654E6F7469203F +:1051B00025642025642025640000000050443A2026 +:1051C00053746F70204461746131000050443A2080 +:1051D0007574696D657220256400000050443A20A2 +:1051E00053746F70204461746132000050443A205F +:1051F000537461727420446174612025640000005E +:1052000050443A2055542025640000000FB480B566 +:10521000082200210846FAF7F5FE022801D10220F3 +:1052200004E06948002101704180012002BC5DF862 +:1052300014FB6548002101700120704738B5012436 +:105240000020ADF80000604D95F90000002809D15C +:10525000204628700020A880A86805F08BF905F08A +:10526000FFFA29E0012829D16888401C68800DF1E7 +:105270000101A86805F0A0FB002815D00822002134 +:105280002046FAF7BFFE032800D1032408220B2191 +:105290000020FAF7B7FE022801D1022032BD022019 +:1052A000287005F057FD07E0B5F90200962803DBEA +:1052B0000520287000F057F8204632BD0328FBD1A6 +:1052C000A888401CA88000B2FB28F1DA00A9A868D1 +:1052D00005F08CF90028EFD004202870204600F05B +:1052E00033F800F040F8E7E710B5374CFAF788FEDE +:1052F000E060ECF7DDFAA060E0683449C0F85011D6 +:1053000000F5A87032494160324981600FF20D0109 +:10531000C1600FF2C9010161012010BD01460020EA +:10532000294AD26892F84121002A02D0012900D1ED +:1053300006E0704780B5002000F006F8012002BDAD +:10534000254890F90000704723490870704780B5E0 +:10535000082200210846FAF755FE022801D1022052 +:1053600002BD012002BD80B5174800218180418027 +:1053700008220120FAF746FE032801D1032002BDCE +:10538000012002BD38B501240F4D95F90000022817 +:1053900015D108220B212046FAF734FE032800D14C +:1053A0000324FFF7D4FF022801D1022032BD0328D5 +:1053B00000D103240320287002A0FBF7B5F8204693 +:1053C00032BD000053414900D87300200D5201083E +:1053D000335201083D5201086B74002018B430228A +:1053E0000B7812FB030301241C700B7812FB0303E0 +:1053F0005C700B7812FB030308249C700B7812FB83 +:1054000003000122C2700878401C087011BC91E7AB +:105410000FB480B58748012101700522002108469C +:10542000FAF7F0FD022801D1022016E00522092139 +:105430000020FAF7E7FD022801D102200DE0052245 +:1054400007210020FAF7DEFD022801D1022004E046 +:1054500000F0E8F805F0A6FC012002BC5DF814FBA2 +:1054600038B50124052209212046FAF7CBFD03288F +:1054700000D10324052207210120FAF7C3FD0328E8 +:1054800000D103246B4D95F90000032801D00128B9 +:1054900007D1052200210120FAF7B4FD032800D12D +:1054A00003240020287000F0BDF805F007FE204618 +:1054B00032BD80B5002000F03CF8022801D1022066 +:1054C00002BD032801D1032002BD012002BD10B599 +:1054D000584CFAF795FD2061ECF7EAF9A060FAF76D +:1054E000A8FFE06020695449C0F8D810D83053496B +:1054F0004160534981600FF21101C1600FF24911FF +:105500000161012010BD000001460020494A1269D6 +:1055100092F8C920002A02D0012900D102E0704788 +:10552000002003E0474890F90000704745490870A3 +:10553000704770B582B0064601253E4C94F90000D4 +:10554000012823D1A088401CA08000B24C280BDB8E +:105550000020A08002202070052200212846FAF7B2 +:1055600051FD032800D10325012E59D1E068007DAB +:10557000012807D1B4F904001F2851DB6078401CD2 +:1055800060704DE0A078401CA07049E002281CD15A +:10559000012E0AD1E068007D012803D16078401C0B +:1055A000607002E0A078401CA07094F9010001280E +:1055B00036DB052200210846FAF724FD022801D136 +:1055C000022076BD032020702AE0032828D1002085 +:1055D0008DF8000000A9A06805F00EFCC0B20228FA +:1055E0000DD1052200212846FAF70CFD032800D131 +:1055F00003250120FFF79AFF0420207010E0032804 +:105600000ED1052200212846FAF7FCFC032800D120 +:10561000032500206070A0700220207005F0C2FBFE +:10562000284676BD03480021818041708170704713 +:105630000000000068FD00201154010861540108B9 +:10564000B354010897FE002010B50C463021227893 +:1056500011FB020201231370227811FB0202537026 +:10566000227811FB020205239370227811FB0200BD +:105670000121C170FFF754FF2078401C207010BD3D +:105680000FB480B5022201210020FAF7BBFC0228EA +:1056900001D102200EE0022207210020FAF7B2FC1D +:1056A000022801D1022005E005F012FD4A48002140 +:1056B0000170012002BC5DF814FB80B502220121BB +:1056C0000846FAF79FFC032801D1032002BD0222FD +:1056D00007210120FAF796FC032801D1032002BD1F +:1056E0003D4800210170012002BD00B58BB000A82B +:1056F000FAF7EEFC03A890EC030A05F01FFD36490B +:10570000087001200BB000BD10B5334CFAF778FCDF +:10571000A060FAF78EFE6060A068304901663049EB +:105720004166304981660FF22101C1660FF26901BD +:105730000167012010BD80B527484068007D05F055 +:10574000F6FC012002BD0000002023498A6892F87F +:105750005120002A04D091F90010002900D0012026 +:1057600070471D48002101700120704710B50024CA +:10577000012804D007D303280BD002D303E001246F +:1057800007E0022405E0032401460FF25C00FAF76B +:10579000CBFE204610BD000038B50C4630212278E3 +:1057A00011FB020201231370227811FB02025370D5 +:1057B000227811FB020202239370227811FB02056A +:1057C000054890F90000FFF7D1FFE8702078401CF1 +:1057D0002070BDE83140C4E7CCFD002081560108AF +:1057E000BB560108EB5601084C4D43505320312065 +:1057F0002564000070B504463548364E0568B5B1DD +:10580000287A88B16868A0420ED1012028723078C9 +:10581000401C3070287A401E2872C0B210B9284649 +:1058200006F04EFBFBF7CCFEED68002DE8D170BD15 +:1058300010B504462848294901600020002102468D +:1058400003460FC4103CFBF70EFE21480168E160DF +:10585000046020484078002804BFBDE81040FBF7F2 +:10586000FCBD10BD30B51B4D0446287881B0401CEE +:105870002870A868217A11B9606001250DE061687F +:10588000814208D01021204601F00CFA207A00282D +:10589000F8D1A8686060207A451C2572FBF790FE5D +:1058A000284601B030BD0B490A78521C0A70017AB3 +:1058B000491E0172C9B2002918BFFBF781BE00B5AD +:1058C00081B006F0FDFA01B05DF804EBFBF778BE9D +:1058D0005C740020F024002040740020F55701087B +:1058E000DFF82C0C016899B94FF4803181604FF4D6 +:1058F000805141604FF0FF31C1600161042141617D +:10590000DFF8101C0422C1F8B821DFF80C1C01607C +:105910000120704701F1080313F0070305D001F1DE +:105920000803C3F1080303F007035918D21A816171 +:10593000C26042F001034B60511828224A60DFF830 +:10594000D01B0969C16170472DE9F84F054601F187 +:10595000080010F0070005D001F10800C0F10800B0 +:1059600000F0070000EB010A02F1080010F0070048 +:1059700005D002F10800C0F1080000F0070084180B +:1059800003EB0A07A4EB0A00A0EB030843F00300B3 +:10599000CAF80400A74228BF06F0A8FA2079C00779 +:1059A00058BF06F0A3FAB8F1100F38BF06F09EFA00 +:1059B000A869844207D1E8684044E860AF6140F0DC +:1059C0000100786048E16869844208D1A8684044D1 +:1059D000A8606F6140F001017960C0513CE16068EE +:1059E00000F00301012940F09F80C008C000009032 +:1059F0004FEAD00BBBF1200F2FD2D4F80890E66805 +:105A0000B44208BF06F072FA4C4508BF06F06EFAC1 +:105A10006068C008C000B0EBCB0F18BF06F066FA94 +:105A2000B14506D12868012101FA0BF188432860AD +:105A300077E005EBCB0000F12801894502D0296908 +:105A400089456CD32830864202D02869864266D3C5 +:105A5000C9F80C60C6F8089063E0D4F81890E668BE +:105A6000A64206D0A068296988421DD3C660B060EE +:105A70001CE004F11400066836B904F11000066851 +:105A8000A6B101E00846066806F114010A68002A7A +:105A900002BF06F110010A68002AF3D12969884281 +:105AA00002D30021016001E006F020FAB9F1000FF5 +:105AB00037D0E06905EB800000F5987001688C42F2 +:105AC00009D10660300014D168680121E269914073 +:105AD0008843686025E02869814508D3D9F810001B +:105AE000A04214BFC9F81460C9F8106001E006F0C4 +:105AF000FDF9B6B12869864211D3C6F8189021691C +:105B000029B1814226BF31618E6106F0EFF96069EB +:105B100038B12969884202D37061866101E006F0DC +:105B2000E5F900980419804460684008400060600E +:105B300048F00100786048F807804FEAD806202E28 +:105B40001FD205EBC60000F12804A146B8F1100FE2 +:105B500038BF06F0CBF90120B0402968014202D1DC +:105B60000843286006E0A068296988422CBF814666 +:105B700006F0BCF9A760C9F80C70C7F80890FC6083 +:105B80006AE05FEA182008BF002123D0B0F5803F0B +:105B900028BF1F211ED2A0F58071090C01F0080159 +:105BA0008840A0F58052120C02F004029040A0F54B +:105BB00080431B0C03F00203C1F10E01891AC91ABC +:105BC000984001EBD030C11D28FA01F101F001012C +:105BD00001EB400105EB810000F59872F9610020AE +:105BE00078613861012088406B68034204D1184312 +:105BF00068601760BA611DE010681F290EBF0021A0 +:105C00004908C1F1190108FA01F100E010464268A3 +:105C1000D208D200424510D0CA0F00EB820202F136 +:105C2000100349001A68002AF0D129698B4211D368 +:105C30001F60B861FF60BF600EE081682A69904212 +:105C400028BF914206D3CF608760B960F86000201A +:105C5000B86101E006F04AF90AF10800BDE8F28FE8 +:105C60002DE9FE4F0446A56904F5DE7001688D42FA +:105C700003D3426851188D4202D380680028F5D1C1 +:105C8000416800680E18A6F12F0000F1080111F01C +:105C9000070105D000F10801C1F1080101F0070179 +:105CA00001EB000A05F11000824538BFAA460AF14F +:105CB000080B0AF1180900270198A0F128020099A1 +:105CC0002046FFF727FE1BF0070018BF06F00EF96D +:105CD0001B20CAF8040004F5DE70B0E80E10ABE833 +:105CE0000E10ABF110010098C4F8BC010198C4F883 +:105CF000C0010298C4F8C801C4F8C41100E081468C +:105D000009F104000721C9F804107F1C011DB142EC +:105D1000F5D3022FB8BF06F0E9F8AA4500F09C8041 +:105D2000AAEB050041194A68520852004A6040F047 +:105D3000010169604051C708202F1FD204EBC70141 +:105D400001F12806B046102838BF06F0CFF801212F +:105D500001FA07F02168014202D10843206006E001 +:105D6000B068216988422CBF804606F0BFF8B56054 +:105D7000C8F80C50C5F80880EE606DE0010A08BF55 +:105D8000002223D0B1F5803F28BF1F221ED2A1F5EB +:105D90008072120C02F008029140A1F580531B0C96 +:105DA00003F004039940A1F58046360C06F0020684 +:105DB000C2F10E02D21A921BB14002EBD131CA1DC0 +:105DC00020FA02F202F0010202EB410204EB82012E +:105DD00001F59873EA61002169612961012191400F +:105DE00066680E4205D141EA060060601D60AB6145 +:105DF0001DE019681F2A0EBF00225208C2F11902C5 +:105E000000FA02F200E019464B68DB08DB0083422F +:105E100010D0D30F01EB830303F110065200336857 +:105E2000002BF0D12069864211D33560A961ED6065 +:105E3000AD6011E088682269914228BF904206D384 +:105E4000C5608D60A860E9600020A86104E003B02F +:105E5000BDE8F04F06F04AB803B0BDE8F08FF8B5E2 +:105E600004460D46DFF8A866306808B9FFF738FD2C +:105E700006F040F801001CBF0A6811F1010F00F0A4 +:105E80008A80D4F8B0011018C4F8B001D4F8B43145 +:105E9000834238BF0346C4F8B431A06958BB2069B7 +:105EA00008B1814200D22161C4F8BC11C4F8C021FC +:105EB0000020C4F8C801306860624FF0FF302062F3 +:105EC0002046202300F12806F660B66008305B1EED +:105ED000F8D1DFF84006844208BF283A27D054F8AA +:105EE000040CC00814EBC00008385118091AA1F1BD +:105EF000280201461BE004F5DE70034600E09B68C3 +:105F0000CBB15E681F68F619B142F8D11E7B360727 +:105F100011D4A669BE420ED3D3F804C06744BE4272 +:105F200009D202EB0C005860E0681218A169204603 +:105F3000FFF7F0FC1EE02369994238BF2161034658 +:105F4000501800E09B688BB11E688642FAD1187B1E +:105F500000070BD4304619605E6892195A602B46D0 +:105F60000246204601B0BDE8F040EDE400232046A3 +:105F7000FFF776FEE06885420DD2401BE060A16924 +:105F80006A18A26140F00100506045F003004860CB +:105F900001F10800F2BD0020F2BD2DE9F84F0546E1 +:105FA0008B460024CBF100085FEA1B2023D0B0F51C +:105FB000803F28BF1F201ED2A0F58071090C01F080 +:105FC00008018840A0F58052120C02F004029040B3 +:105FD000A0F580431B0C03F00203C1F10E01891AE6 +:105FE000C91A984001EBD030C11D2BFA01F101F024 +:105FF000010101EB400005EB8001D1F8301129B31C +:106000001F280EBF00224208C2F119020BFA02F249 +:10601000002300E052004E68F608F600A6EB0B06DF +:10602000464503D20C465FEA06080BD04E69D70FEF +:1060300001EB87010969002E1CBF8E4233460029FF +:10604000E8D1194600293BD1002C3BD1012101FAAE +:1060500000F04000414208436968084000F0578161 +:1060600041420840411E080B00F0100021FA00F2E6 +:10607000510901F00801CA40930803F00403DA4013 +:10608000560806F00206F240C2F340070818181836 +:106090003018384422FA07F1081805EB8000D0F8D0 +:1060A00030110DE001464868C008C000A0EB0B00AD +:1060B00040453CBF80460C4608690028F2D149693A +:1060C0000029F0D1002C00F02281A868A0EB0B0081 +:1060D000804580F01C8128698442C0F016810BEB5A +:1060E00004060BEB08096068C008C000484518BFEB +:1060F00005F0FCFEB44280F00881D4F818A0E768EF +:10610000A74206D0A068296988421DD3C760B8603D +:106110001CE004F11400076837B904F110000768A7 +:10612000A7B101E00846076807F114010A68002AD0 +:1061300002BF07F110010A68002AF3D129698842D9 +:1061400002D30021016001E005F0D0FEBAF1000F9A +:1061500038D0E06905EB800000F5987001688C424A +:1061600009D10760380014D168680121E2699140C3 +:106170008843686026E02869824508D3DAF8100071 +:10618000A04214BFCAF81470CAF8107001E005F0FC +:10619000ADFEBFB12869874212D3C7F818A02069A5 +:1061A00030B12969884226BF3861876105F09EFEBB +:1061B000606938B12969884202D37861876101E05A +:1061C00005F094FEB8F1100F09D249F003006060A9 +:1061D00009EB0400416841F00101416091E04BF09E +:1061E0000300606048F00100706048F806804FEAE4 +:1061F000D80020281BD205EBC00101F12807B846C2 +:10620000012101FA00F02968014202D10843286007 +:1062100006E0B868296988422CBF804605F066FE12 +:10622000BE60C8F80C60C6F80880F76069E05FEAF5 +:10623000182008BF002223D0B0F5803F28BF1F22BE +:106240001ED2A0F58071090C01F008018840A0F56C +:106250008052120C02F004029040A0F580431B0C07 +:1062600003F00203C1F10E01891AC91A984001EB2B +:10627000D030C11D28FA01F101F0010101EB40020B +:1062800005EB820000F59870F261002171613161C7 +:10629000012191406B680B4203D11943696006608C +:1062A0001CE000681F2A0EBF00215108C1F119012E +:1062B00008FA01F100E010464268D208D2004245D7 +:1062C00010D0CA0F00EB820202F1100349001A68D5 +:1062D000002AF0D129698B4211D31E60B061F660AB +:1062E000B6600EE081682A69904228BF914206D3C9 +:1062F000CE608660B160F0600020B06101E005F022 +:10630000F5FD04F10800BDE8F28F05F0EFFDFBE0BC +:106310002DE9F84F04468846606841420840411E16 +:10632000080B00F01000C1404A0902F00802D140F9 +:106330008B0803F00403D9404D0805F00205E9403D +:10634000C1F340061018181828443018F1400818F6 +:1063500004EB8000D0F8300106464168C908C90046 +:10636000A1EB080A09E008464168C908C900A1EB89 +:10637000080151453CBF8A46064601690029F2D111 +:1063800040690028F0D120698642C0F0BB8008EB4C +:10639000060B08EB0A097068C008C000484518BF22 +:1063A00005F0A4FD5E4580F0AD80B569F768B742A1 +:1063B00006D0B068216988421DD3C760B8601CE070 +:1063C00006F11400076837B906F110000768A7B195 +:1063D00001E00846076807F114010A68002A02BFB5 +:1063E00007F110010A68002AF3D12169884202D31B +:1063F0000021016001E005F079FD002D34D0F06945 +:1064000004EB800000F5987001688E4209D10760A6 +:10641000380011D160680121F269914088436060C1 +:1064200022E02069854205D32869B04214BF6F611C +:106430002F6101E005F05AFDB7B12069874211D301 +:10644000BD61306930B12169884226BF38618761FA +:1064500005F04CFD706938B12169884202D378613A +:10646000876101E005F042FDBAF1100F09D249F051 +:106470000300706009EB0600416841F001014160D2 +:106480003CE048F0030070604AF00100CBF80400E3 +:106490004AF80BA0D4F80880B8F1000F2AD0D4F83D +:1064A00014904FEAD805202D28BF05F01FFD009558 +:1064B00004EBC50000F128052F46B8F1100F38BFD6 +:1064C00005F014FD0120009988402168014202D1A5 +:1064D0000843206006E0A868216988422CBF07466F +:1064E00005F004FDC5F80890C7F80C90C9F80870CD +:1064F000C9F80C50C4F808A0C4F814B006F108009C +:10650000BDE8F28F05F0F2FC0020BDE8F28F00003C +:1065100050FD0020F8E700206859883C2DE9F04F35 +:1065200083B00546C046C046DFF87447F52D80F0BD +:10653000F4800B2D31BF102705F10B00C008C700F8 +:10654000FE082068F04010F0030F3DD0C04300F07B +:106550000100861904EBC60000F12808D8F808509D +:10656000F7006868C008C000B84218BF05F0BEFC5C +:10657000D5F80890454508BF05F0B8FC4D4508BF63 +:1065800005F0B4FC6868C008C000B84218BF05F048 +:10659000ADFCC84505D120680121B1408843206089 +:1065A00008E02069814526BFC8F80890C9F80C802A +:1065B00005F09CFC47F0030068607819416841F0E1 +:1065C000010141600835F0E0A168B94280F0B78070 +:1065D000002800F09980012505FA06F14900B04035 +:1065E0004A421143084041420840411E080B00F056 +:1065F0001000C1404A0902F00802D1408B0803F0A4 +:106600000403D9404E0806F00206F140C1F34008E9 +:10661000101818183018404421FA08F101EB00084E +:1066200004EBC80000F12809D9F808604FEAC80A4D +:106630007068C008C000504518BF05F057FCD6F878 +:1066400008B04E4508BF05F051FC5E4508BF05F097 +:106650004DFC7068C008C000504518BF05F046FCEE +:10666000D94505D1206805FA08F18843206008E083 +:106670002069834526BFC9F808B0CBF80C9005F017 +:1066800035FCAAEB070847F003007060B8190090CA +:1066900048F001014160009848F80080A76867B39E +:1066A000D4F814904FEAD70ABAF1200F28BF05F0AA +:1066B0001DFCCDF804A004EBCA0000F1280AD34663 +:1066C000102F38BF05F012FC019805FA00F0216880 +:1066D000014202D10843206007E0DAF8080021698E +:1066E00088422CBF834605F001FCCAF80890CBF81D +:1066F0000C90C9F808B0C9F80CA0C4F8088000983C +:10670000606106F1080550E06068C0B33946204674 +:10671000FFF7FEFD050012D047E015F1400F28BF3E +:106720004FF0FF370BD205F10B00C008C7006068BF +:1067300028B139462046FFF730FC050035D1A16865 +:10674000B9421CD3CA1B6069102A0AD33918616187 +:10675000A26042F001034B60525047F003014160D8 +:106760000AE00022A260626141F00302426009185F +:106770004A6842F001024A6000F1080515E0E0684D +:1067800087420DD2C01BE060A1697A18A26140F077 +:106790000100506047F00300486001F1080504E083 +:1067A00039462046FFF75BFB0546C046C0462846F3 +:1067B000FFF752BB00B970472DE9F047A0F108047C +:1067C000C046C046DFF8D85428698442C0F06082D1 +:1067D000616801F00302012A00F05A82CA084FEAF8 +:1067E000C20808EB0409CA072DD4226811F0030F70 +:1067F00000F05082904451420C198442C0F048820B +:1068000069698C4200F0D4804FEAD20ABAF1200FB5 +:106810006FD2A668E768BC4208BF05F067FBB442C8 +:1068200008BF05F063FB6068C008C000B0EBCA0F8A +:1068300018BF05F05BFBBE4246D12868012101FA72 +:106840000AF1884328604C4580F02282D9F8040080 +:10685000C10740F11D82810700F17381A969894553 +:1068600040F0BB80E8684044E860AC6140F0010162 +:10687000616069698C4202D100216961A960E9699E +:10688000814280F00782DFF81404006808B9FFF73E +:1068900027F8A869002800F0FD81E96829290BD3B1 +:1068A00005F5DE721368984203D35468E3189842E2 +:1068B00002D39268002AF5D1E869884280F0EA8123 +:1068C0004FF0FF30E861E5E105EBCA0000F1280177 +:1068D0008E4202D029698E4208D32830874202D0E6 +:1068E0002869874202D3F760BE60ACE705F0FEFA84 +:1068F000A9E7A669E768A74205D0A16881421CD331 +:10690000CF60B9601BE004F114010F6837B904F1DE +:1069100010010F689FB101E011460F6807F11402E2 +:106920001368002B02BF07F110021368002BF3D18C +:10693000814202D30020086001E005F0D7FA002E62 +:106940003FF481AFE06905EB800000F598700168C5 +:106950008C4209D10760380011D168680121E269D1 +:106960009140884368606EE72869864205D33069A4 +:10697000A04214BF7761376101E005F0B7FA002F3C +:106980003FF461AF28698742B0D3BE61216929B164 +:10699000814226BF39618F6105F0A8FA606900283D +:1069A0003FF451AF29698842A0D3786187614AE7F3 +:1069B00099F8040000F0030003287FF444AFC5F801 +:1069C0000880D9F8040040084000C9F8040048F0E5 +:1069D0000100606048F804805CE16969894508D17C +:1069E000A8684044A8606C6140F0010161600051FA +:1069F00050E1C008C00080444FEAD00ABAF1200F2D +:106A00002FD2D9F80860D9F80C70B94508BF05F045 +:106A10006DFAB14508BF05F069FAD9F80400C0085D +:106A2000C000B0EBCA0F18BF05F060FABE4206D135 +:106A30002868012101FA0AF18843286076E005EB15 +:106A4000CA0000F128018E4202D029698E426BD320 +:106A50002830874202D02869874265D3F760BE603C +:106A600064E0D9F81860D9F80C704F4507D0D9F810 +:106A70000800296988421DD3C760B8601CE009F18D +:106A80001400076837B909F110000768A7B101E0E1 +:106A90000846076807F114010A68002A02BF07F1D7 +:106AA00010010A68002AF3D12969884202D3002123 +:106AB000016001E005F01AFA002E37D0D9F81C0069 +:106AC00005EB800000F59870016889450AD10760E0 +:106AD000380012D168680121D9F81C209140884300 +:106AE000686023E02869864205D33069484514BFB1 +:106AF0007761376101E005F0F9F9BFB12869874294 +:106B000012D3BE61D9F8101029B1814226BF396174 +:106B10008F6105F0EBF9D9F8140038B12969884282 +:106B200002D37861876101E005F0E0F948F00100E7 +:106B3000606048F80480686984420BD1C5F8088019 +:106B4000A8E040084000C9F8040048F00100606077 +:106B500048F804804FEAD807202F20D205EBC70061 +:106B600000F128094E46B8F1100F38BF05F0BEF904 +:106B70000120B8402968014202D10843286007E09B +:106B8000D9F80800296988422CBF064605F0AEF9FD +:106B9000C9F80840F460A660C4F80C907AE05FEA97 +:106BA000182008BF002123D0B0F5803F28BF1F2147 +:106BB0001ED2A0F58071090C01F008018840A0F5F3 +:106BC0008052120C02F004029040A0F580431B0C8E +:106BD00003F00203C1F10E01891AC91A984001EBB2 +:106BE000D030C11D28FA01F101F0010101EB400193 +:106BF00005EB810000F59872E16100206061206181 +:106C0000012088406B68034204D118436860146017 +:106C1000A2611DE010681F290EBF00214908C1F1C3 +:106C2000190108FA01F100E010464268D208D200CA +:106C3000424510D0CA0F00EB820202F11003490056 +:106C40001A68002AF0D129698B4211D31C60A06117 +:106C5000E460A4600EE081682A69904228BF9142F6 +:106C600006D3CC608460A160E0600020A06101E0F8 +:106C700005F03CF9286A401E28620BD1D5F8C40102 +:106C800000E080680028FCD14FF0FF30286201E06E +:106C900005F02CF9C046C046BDE8F08750FD002045 +:106CA000F8E7002070B50D4E0546B06884B00C467C +:106CB000029501950390FAF7D6FB2868009000A88A +:106CC0002860009808B100A94160B06800A98160FF +:106CD0000474FAF7E2FC04B070BD00BFF024002099 +:106CE00030B483680469027DE318C468A34228BFF6 +:106CF0001B1B534311F8015B44681D555B1C521E5E +:106D0000F8D18168491C8160012904BF30BC05F0BD +:106D1000D7B819484078002804BF30BCFAF79DBBAB +:106D200030BC704710B50446207D22694243636839 +:106D3000D35C521C401E01F8013BF8D12069401C75 +:106D40002061E168884224BF00202061A068421EC3 +:106D5000A260094A8842527807D10AB9FAF77DFB46 +:106D60002046BDE8104005F0ABB8002A04BFBDE8DE +:106D70001040FAF772BB10BDF024002008B584B0B3 +:106D80000023029311B90093019302E00090481E82 +:106D9000019004AB00A907487844183005F0BEF80C +:106DA000009909B100220A70002858BF029805B066 +:106DB00000BD00BF0FC2FFFF00F10103810704D037 +:106DC00010F8011B89B18107FAD10268B2F10131D3 +:106DD000914311F0803F04BF50F8042FF6E710F8FC +:106DE000011B11B110F8011BFBE7C01A704700002E +:106DF000506002604160086070470A68F8E74860C8 +:106E00000160704701684068F9E7F8B50600DFF8EF +:106E1000345802D505F14800F2BD05F148040020C0 +:106E2000296E00E0096805F16002914204D00C4629 +:106E3000A2689642F6D10120002831D1A86EC76E13 +:106E40001820F9F797FA0446A660002F05D0B7423C +:106E500003D2B6FBF7F0784300E03046E060002F45 +:106E600002D0B74200D23E46266100202075DFF8EE +:106E7000D8673078401C3070FAF7F5FA7078401C0B +:106E8000707005F160012046FFF7B7FF7078401E73 +:106E90007070C0B2002801D1FAF7DFFAFAF790FB60 +:106EA0002046F2BD38B5044694F9140000281BD1E1 +:106EB000DFF894572878401C2870FAF7D4FA6878DD +:106EC000401C68702046FFF79DFF2046F9F76AFADC +:106ED0006878401E6870C0B2002801D1FAF7BDFA88 +:106EE000BDE83140FAF76CBB31BDF8B50446084641 +:106EF0006FF00045FFF789FF064694F9050094F905 +:106F00000410814214D1C01C8000F9F733FA0746FF +:106F100094F90500012807DB820021683846F9F75B +:106F200053FA2068F9F73EFA27606079C01C607157 +:106F300094F90400411C2171216841F82060DFF8B8 +:106F40000C07864202D0307D401C3075002008E0DE +:106F5000216851F820108A68954201DB1546A1602E +:106F6000401C94F904108842F2DBF1BDF8B50446E8 +:106F70006FF00046DFF8CC2602F1480502F1480028 +:106F80004FF0FF33002704E0664501DB6646754697 +:106F90007F1C94F904C067450DDAD4F800C05CF892 +:106FA00027E0DEF808C0002BEED58C45ECD170460A +:106FB0003B465BB2ECE7002B11D4BCF1010F0EDBBA +:106FC00006E0216801EB8306766841F823605B1CCC +:106FD00094F904104E1EB342F3DB491E217102F1F5 +:106FE0004801884204D0017D491E0175FFF75AFF10 +:106FF000A560F1BD10B4C26A836B406C9C68002C24 +:1070000002D56FF0004300E01B698468002C02D5B4 +:107010006FF0004000E00069984200DD1846D26839 +:107020005143884201DB012000E0002010BC704782 +:1070300038B5DFF810168A6EB2F85C30012490F98A +:107040000850AC402343A2F85C3001F2BC71FFF75A +:10705000D4FE012032BD10B5DFF8E815896EB1F815 +:107060005C20012390F90840A3409A43A1F85C20DA +:10707000FFF7C8FE012010BD01207047F8B5044697 +:1070800015461E4604F12400FFF72FFF06EB4600CD +:1070900004EB8007294607F13000FFF726FF97F938 +:1070A000340000903346627A94F908100FF2A05031 +:1070B000F9F73AFAF1BDF8B5044615461E4604F153 +:1070C0002400FFF753FF06EB460004EB8007294638 +:1070D00007F13000FFF74AFF97F93400009033467C +:1070E000627A94F908100FF27850F9F71DFAF1BDA1 +:1070F000C16A8A68012A09DB0969012906DA006D7B +:10710000002801D5002070470220704700207047FA +:1071100001EB410200EB8201896B8A68012A09DBDD +:107120000969012906DA006D002801D500207047A1 +:107130000220704700207047002900D5D8E7E7E714 +:10714000012900DA012113460A4697E7012900DAEE +:10715000012113460A46AEE7B1F57A7F01DC4FF410 +:107160007A7113460A464FF4FA7187E7B1F57A7FD0 +:1071700001DC4FF47A7113460A464FF4FA719AE72C +:1071800010B50446002922D5E06A816801291CDB7C +:107190000069012819DA02212046FFF72BFF002899 +:1071A00013D194F954004FF0FF31884204D10020EC +:1071B00084F85400012010BD002806D1012060771A +:1071C000084684F85400022010BD002010BDBDE820 +:1071D00010409DE7DFF86C24926ED26E02F5FA72D1 +:1071E000524202654FF0FF3280F8542020E7DFF86A +:1071F0005424926ED26EA0325242026518E70029E2 +:107200000AD5C06A8168012904DB0069012801DA16 +:1072100002207047002070477AE7B52900DAB421D0 +:1072200013460A463C2129E7B52900DAB421134662 +:107230000A463C213FE710B50446002926D5E06AFE +:107240008168012920DB006901281DDA032120461D +:10725000FFF7D0FE002817D194F954004FF0FF310A +:10726000884204D1002084F85400012010BD002879 +:1072700003D1012084F8540010BD012804D1084630 +:1072800084F85400022010BD002010BDBDE810405D +:107290003EE7DFF8B023926ED26EB43252420265FE +:1072A0004FF0FF3280F85420C2E6DFF89823926E48 +:1072B000D26EC83252420265BAE613464FF0FF3230 +:1072C0001146DBE613464FF0FF321146F3E680B578 +:1072D000FFF7AEFEF9F7ADF800210175012002BD00 +:1072E00080B5FFF7B8FEF9F7A4F800210175012079 +:1072F00002BDD448C06A417A481E8041C00F704721 +:1073000080B5D0480068417A002902D1006E4068FB +:107310008047012002BD80B5FFF79DFEC948006887 +:10732000417A002902D1006E80688047012002BDA9 +:10733000000000002DE9F0410C46C24D55F82060D8 +:10734000307206F154070FF228313961112800F22A +:107350001481DFE810F0120022002E004C003D00E6 +:107360005B006A007900A60088009700B500C400A1 +:10737000D100DE00EB00F900060106F1080006214D +:1073800041760A21817605F2C471416040F2DC51F8 +:1073900081600FF2BC303861EFE006F10800062191 +:1073A00041760A21817605F6A05141600A2181606B +:1073B000E3E006F108000C2141761021817605F604 +:1073C000B8514160102181600FF2DC203861D4E0B7 +:1073D00006F10800072141760B21817605F6AC51B4 +:1073E00041600B2181600FF2C0203861C5E006F1D9 +:1073F0000800062141760A21817605F6C8514160D0 +:107400000A2181600FF2A0203861B6E006F1080081 +:10741000062141760A21817605F6D45141600A2180 +:1074200081600FF2A0203861A7E006F10800262154 +:1074300041762A21817605F6E05141602A2181605A +:107440000FF2F020386198E006F108000321417640 +:107450000721817605F628614160072181600FF2DE +:107460009C20386189E006F108000C21417610214A +:10747000817605F618614160102181600FF260206D +:1074800038617AE006F10800022141760621817612 +:1074900005F630614160062181600FF27C20386181 +:1074A0006BE006F10800052141760921817605F699 +:1074B0000C614160092181600FF2D01038615CE0FD +:1074C00006F10800062141760A21817605F6386129 +:1074D00041600A2181600FF2942038614DE006F18D +:1074E0000800012141760521817605F6446141605D +:1074F00040F28661816040E006F10800012141769A +:107500000521817605F5A051CC31416005218160CE +:1075100033E006F108000C2141761021817605F553 +:10752000A051D43141601021816026E006F10800AD +:10753000112141761521817605F5A051E431416094 +:1075400040F63401816018E006F10800112141760F +:107550001521817605F5E8511831416015218160CA +:107560000BE006F10800042141760821817605F53B +:10757000E851303141600821816006F108000021A6 +:107580000175417581750176C1600161417006F137 +:1075900028080846C8F828004FF0FF3086F8540045 +:1075A0007880062206F15800F9F774FF002010E0F9 +:1075B00000EB400106EB8101002281F834203431D8 +:1075C0004A7005F148024A6006EB800100228A6495 +:1075D000401C0228ECDB002086F8280088F8010017 +:1075E00005F14800C8F80400FC60BDE8F08110B562 +:1075F000144CEAF75DF9A066002006E0682111FB53 +:1076000000416C3144F82010401C1228F6DB4FF08A +:10761000FF30206560650020A06506F0D8FC07F00B +:10762000BCFA08F031FD09F0F0F90AF00FFD09F09D +:10763000B2FC09F085FF0AF043FEBDE81040FCF7FC +:10764000A0BE000000000020F02400204800002020 +:107650004144202564202564202564202564000001 +:10766000524D2025642025642025642025640000D7 +:1076700079700108317001087970010857700108AC +:10768000417101084D7101083971010879700108D3 +:10769000D571010879700108577001085971010806 +:1076A0006D7101088171010879700108EF7101089D +:1076B0007970010857700108417101084D71010886 +:1076C000FF7101087970010893720108797001084F +:1076D000577001081B7201082972010837720108EE +:1076E00079700108AB7201087970010857700108C0 +:1076F000417101084D710108397101087970010863 +:10770000CF72010879700108E1720108BB720108AB +:10771000C5720108397101087970010831700108DA +:107720007970010857700108417101084D71010815 +:107730003971010879700108317001087970010808 +:1077400057700108417101084D7101083971010834 +:10775000F372010831700108F372010857700108D3 +:10776000417101084D710108397101080173010867 +:10777000317001087970010817730108BB720108A4 +:10778000C57201083971010800B500BF13009646A3 +:107790009446103928BFA0E80C50FAD85FEA417C23 +:1077A00028BF0CC048BF40F8042BC90728BF20F8E9 +:1077B000022B48BF00F8012B00BD000080B500F08F +:1077C00009F800204D49024601E04254401C0228BD +:1077D000FBDB01BD10B44A48002101800846494C3A +:1077E0000CE001EB810200EB80031B19D21800238F +:1077F0001371491C49B20129F3DB401C142801DA3A +:107800000021F7E710BC704700EB80003D49405E67 +:10781000704700EB80003B494018B0F90200704708 +:1078200010B54FF0FF340146012902D00C2902D0D7 +:1078300003E0002405E0012403E00FF2D000F8F794 +:1078400073FE204610BD70B504460125FFF7E8FF22 +:1078500006462046012802D00C2803D005E000F09F +:1078600043F808E0FFF7B6FF05E021460FF2AC0051 +:10787000F8F75AFE0025002E02D42048002131548A +:10788000284670BD10B54FF0FF34C0B2082801D1B2 +:10789000002405E040B201460FF29000F8F744FEE4 +:1078A000204610BDF3B5164C25882E46701C1528B1 +:1078B00001DB0020F6BD00270DE007EB870106EB9A +:1078C0008600104A8018081800AA89180522FBF7BC +:1078D0003DFB7F1C7FB2012FEFDB681C2080012065 +:1078E000F6BD074800887047074800218180017075 +:1078F00041700121817008467047000064740020C7 +:10790000D6730020086D00206424002045582050C4 +:1079100044524D4D204331202564000045582050ED +:1079200044524D4D204333202564000045582050DB +:1079300044524D4D20433220256400000FB480B5E1 +:107940000AF0E2FCDC480521417000210170017160 +:107950004171DA4802A92022FBF708FB0922002125 +:107960000846F8F74FFB022801D1022000E0012071 +:1079700002BC5DF814FB80B5092200210120F8F754 +:1079800041FB032801D1032002BDBDE801404CE1C9 +:1079900010B5C94C94F9010005280AD100F0E4F8AB +:1079A000002822D0042060700AF0AEFCBDE8104030 +:1079B000FCE0042819D100F0B5F8002808D0032015 +:1079C0002070052060700AF09FFCBDE810402CE19B +:1079D00000F055F9002808D00220207005206070C2 +:1079E0000AF092FCBDE810401FE1012010BD80B5F7 +:1079F000F8F706FBB0498860B149C0F8781100F586 +:107A0000BC70B0494160B04981600FF21101C160A2 +:107A10000FF295010161012002BD00000020A6497E +:107A20000246CA708A6892F86921002A0FD091F93B +:107A30000020002A02D00220C870012091F9042001 +:107A4000012A04D1C87840F00400C87001207047B2 +:107A5000994800210170C17001710120704710B573 +:107A60008AB0044600A80CF049F90198A04204D35A +:107A7000001BC0B200EE100A04E08038001BC0B248 +:107A800000EE100AB8EE400ADDED060A20EE200AEC +:107A900010EE100AFCF736F841EC100B0AB010BDDE +:107AA000854801210171704778B4834A92F9033007 +:107AB0009C0716D530240D7814FB050501262E7081 +:107AC0000D7814FB05056E700D7814FB050509266D +:107AD000AE700D7814FB05041578E5700C78641C05 +:107AE0000C705B071CD530240B7814FB03030125B5 +:107AF0001D700B7814FB030303255D700B7814FBDA +:107B0000030309259D700B7814FB03030125DD7029 +:107B10000B7814FB0300527802710878401C08703F +:107B200071BC95E730B58DB0002420468DF800007B +:107B300001A8F8F7CDFA4FF47A70604D00ABB5F8B4 +:107B4000051000FB01F2B5F803104143B5F80150F0 +:107B5000684301AD95EC030A0AF018FC022800D135 +:107B6000012420460DB030BD30B58DB00024204634 +:107B70008DF8000001A8F8F7ABFA4FF47A704F4D7A +:107B800000ABB5F8051000FB01F2B5F80310414356 +:107B9000B5F80150684301AD95EC030A0AF0F6FB15 +:107BA000012800D1012420460DB030BD30B59DB074 +:107BB00001240020ADF82A0001900A208DF8080069 +:107BC00000208DF809008DF80A003B4D95F905005D +:107BD000002827D1B4208DF82D0046208DF82E00E6 +:107BE00020468DF82F0000208DF800000320019022 +:107BF0000DF109000BA92022FBF7A8F90A208DF846 +:107C000008000020ADF82A0000A8F8F7ADFA002817 +:107C100001D1022406E013A80CF070F81498A870A3 +:107C20002046687120461DB030BD30B58BB00124B0 +:107C3000214D95F9050001281ED10020ADF82A003C +:107C400001900A208DF8080000208DF809008DF8B9 +:107C50000A0020468DF80000032001900A208DF8CC +:107C600008000020ADF82A0000A8F8F77DFA0028E7 +:107C700000D103240020687120460BB030BD10B540 +:107C80002DED028B00240C488078FFF7E8FEB0EE63 +:107C9000408AF0EE608A0948C07902F02FFA024665 +:107CA0000B4651EC180B02F04DFC00D80124204685 +:107CB000BDEC028B10BD0000A02500204873002001 +:107CC0003D790108777901089179010862F30F2263 +:107CD00062F31F42401810F0030308D0C91A1FD3E3 +:107CE000DB0748BF00F8012D28BF20F8022D130044 +:107CF00030B414461546103928BF20E93C00FAD8A4 +:107D0000490728BF20E90C0048BF40F8042D89002E +:107D100028BF20F8022D48BF00F8012D30BC704765 +:107D2000C91818BF00F8012DCB0728BF00F8012D96 +:107D30007047000010B5EFF3108072B60A4C21684E +:107D400041F47F01216080F31088A06E10F4700F61 +:107D500004BFA7200CF030F84FF00070C4F81C02EC +:107D60000020C4F8140210BD20ED00E0DFF874110B +:107D700000220A700A70012802D0042803D070473C +:107D800001200870704705200870704710B45649EC +:107D90004A6802F00C02564B082A12D10A680C6895 +:107DA00004F03F04B3FBF4F30A68C2F388125A43A9 +:107DB0000B68C3F301435B1C5B00B2FBF3F2026090 +:107DC00000E003604A6802F0F0034A4A1B099B5C2A +:107DD000046824FA03F343604C6804F4E054A40AF2 +:107DE000A45CE3408360496801F46041490B895C0D +:107DF000426822FA01F1C16010BC70473B4900F4AF +:107E00004072B2F5407F06D10A6822F4F8123A4B6C +:107E100003401A430A608A6E000552EA10508866D1 +:107E20007047364908607047354908607047354AE1 +:107E30000029116802D008431060704721EA000051 +:107E400010607047304A0029116802D00843106062 +:107E5000704721EA0000106070472C4A0029116821 +:107E600002D008431060704721EA0000106070479C +:107E7000274A0029116802D008431060704721EAA0 +:107E8000000010607047234A0029116802D008439F +:107E90001060704721EA0000106070471E4A0029F8 +:107EA000116802D008431060704721EA000010609A +:107EB0007047002142090A4B012A01D11A6804E0E7 +:107EC000022A01D11A6F00E05A6F012300F01F004F +:107ED00003FA00F0024200D019460846704700003D +:107EE000003802407038024004380240083802402E +:107EF0000024F4007CAF0020FFFCFF0F3C0E474243 +:107F0000400E474230380240403802404438024078 +:107F100010380240203802402438024080B52749FA +:107F2000884209D101210846FFF7A2FF0021012064 +:107F3000BDE80440FFF79CBF2149884209D10121D7 +:107F40000220FFF795FF00210220BDE80440FFF763 +:107F50008FBF1C49884209D101210420FFF788FF07 +:107F600000210420BDE80440FFF782BF1649884283 +:107F700009D101210820FFF77BFF00210820BDE87F +:107F80000440FFF775BF1149884209D10121102033 +:107F9000FFF76EFF00211020BDE80440FFF768BF27 +:107FA0000B49884209D101218020FFF761FF0021A0 +:107FB0008020BDE80440FFF75BBF01BD0000024028 +:107FC0000004024000080240000C02400010024081 +:107FD000001C0240F0B4002232E0012393400C6800 +:107FE0001C409C422BD154000325A540ED4306685C +:107FF0002E40066006680F79A7403E4306600E7962 +:10800000012E01D0022E11D186682E40866086682E +:108010004F79A7403E438660466826EA03034360E3 +:1080200043688E799640B6B233434360C3682B40B1 +:10803000C360C368CD7905FA04F42343C360521CBE +:10804000102ACAD3F0BC70474FF6FF7101600021BF +:10805000017141718171C17170470022006908424C +:1080600000D001221046704701837047418370475A +:1080700010B4CB1000EB830001F007018900036A04 +:108080000F248C40A3430362036A02FA01F11943EF +:10809000016210BC7047000080B5434988420BD193 +:1080A00001214FF40010FFF7EEFE00214FF4001005 +:1080B000BDE80440FFF7E7BE3C4988420BD10121EF +:1080C0004FF48000FFF7DFFE00214FF48000BDE891 +:1080D0000440FFF7D8BE364988420BD101214FF446 +:1080E0000000FFF7D0FE00214FF40000BDE804407F +:1080F000FFF7C9BE01BD7FB504460D46A68800A89E +:10810000FFF744FE02992B48B1FBF0F04FF6C07226 +:1081100032400243A28022884FF6FE731A4022802A +:108120002A68254B9A420AD25200B1FBF2F10A4664 +:1081300092B2042A00D20421401C208421E0EB8862 +:108140004BF6FF76B34204D102EB4202B1FBF2F1EF +:1081500006E019235A43B1FBF2F141F4804189B2A0 +:108160000A0502D141F0010189B241F4004180B217 +:108170004FF4967250434FF47A7290FBF2F0401C29 +:108180002084A183208840F00100208020884FF6C1 +:10819000F5310840A9880843698908432080A889E7 +:1081A0002989084320817FBD0054004000580040C9 +:1081B000005C004040420F00A186010000290188B8 +:1081C00003D041F00101018070474FF6FE7211406B +:1081D000018070470029018803D041F4807101803B +:1081E00070474FF6FF6211400180704700290188F7 +:1081F00003D041F40071018070474FF6FF521140E7 +:1082000001807047002A02D041F0010101E001F035 +:10821000FE01018270470029018803D041F480618A +:10822000018070474FF6FF321140018070470029EE +:10823000018803D041F40041018070474904490C92 +:108240000180704782B002460020034601930093EC +:1082500000920A0F01920902090A019A002A03D02A +:10826000009A1432009203E0090C009A183200922E +:10827000009A12680A4200D0012002B07047000044 +:1082800080B5554988420BD101214FF48050FFF74A +:1082900005FE00214FF48050BDE80440FFF7FEBD0D +:1082A0004E4988420BD101214FF48040FFF7EBFD8E +:1082B00000214FF48040BDE80440FFF7E4BD484989 +:1082C00088420BD101214FF40040FFF7DCFD002173 +:1082D0004FF40040BDE80440FFF7D5BD01BD028862 +:1082E00002F441520B881A434B881A438B881A4375 +:1082F000CB881A430B891A434B891A438B891A433B +:10830000CB891A430280828B4FF2FF731A4082831B +:10831000098A01827047F0B40123828B4FF2400436 +:108320002240828302220284828B8C68022C02D13A +:108330000023022439E08C88002C00D00223294C31 +:1083400065682D0203D5656825F400056560264D36 +:108350002E68C6F388162D68C5F30275246804F0EC +:108360003F04224FB7FBF4F47443B4FBF5F58E6879 +:108370000A24CF88B7F5007F06D12B0A6343B3FBED +:10838000F6F35B1D9BB207E05B01B5FBF3F36343C0 +:10839000B3FBF6F35B1D9BB2B3FBF4F303F00105F3 +:1083A0002C461B1B5C08A4B22B02A51EFE2D01D37C +:1083B000022400232343CC88234303840B881A43DD +:1083C0004B881A438B881A438989114341F4006111 +:1083D0008183F0BC7047000000300140003800404D +:1083E000003C004004380240843802400024F4007D +:1083F0000029018803D041F04001018070474FF609 +:10840000BF721140018070470029818B03D041F475 +:108410008061818370474FF6FF321140818370473E +:10842000002A828802D011438180704722EA01012C +:108430008180704700220089084200D00122104646 +:10844000704700000168490849000160002101608F +:1084500041608160C1600161212141616A498842B6 +:1084600003D16A483D21016070476949884204D1BF +:1084700066484FF47461016070476649884204D1D0 +:1084800062484FF47411016070476349884204D117 +:108490005E484FF07461016070476049884203D1C3 +:1084A0005A485F49416070475E49884203D1574846 +:1084B0005D49416070475D49884203D153485C493A +:1084C000416070475B49884204D150484FF03D51AC +:1084D000416070475849884203D158483D210160A6 +:1084E00070475749884204D154484FF47461016081 +:1084F00070475449884204D150484FF474110160C8 +:1085000070475149884204D14C484FF07461016072 +:1085100070474E49884203D14848414941607047FD +:108520004B49884203D145483F494160704749491A +:10853000884203D141483E494160704746498842DC +:1085400003D13E484FF03D51416070470268434BB4 +:108550001A400B681A43CB681A434B691A438B695C +:108560001A43CB691A430B6A1A434B6A1A438B6A44 +:108570001A434B6B1A438B6B1A4302604269D20851 +:10858000CB6A53EAC2020B6B1A4342610A6942602A +:108590004A6882608968C16070470029016803D019 +:1085A00041F00101016070474908490001607047CE +:1085B000002A01D001617047C1607047006800F077 +:1085C0000100704700221C4B984201D2244800E071 +:1085D00024488B0001D5406800E00068084022492B +:1085E000084200D0012210467047134A904201D23F +:1085F0001B4800E01B481C4A0A40890001D5C260A4 +:1086000070478260704700001060024008600240BE +:1086100028600240406002405860024070600240A2 +:108620003D00002088600240400F0020A060024012 +:1086300000003D20B860024010640240086402401F +:108640002864024040640240586402407064024062 +:1086500088640240A0640240B86402403F801CF07D +:1086600000600240006402407D0F7D0F02490860F7 +:10867000704702490860704720000E4224000E42F5 +:1086800030B40168CB4321498279002A27D00A46B9 +:1086900014682340136053680468A343536003794C +:1086A000CC18236805682B43236093680468A343B0 +:1086B0009360D3680468A343D36043790568102BA3 +:1086C00007D1916829439160D16800680843D06060 +:1086D0000AE051FA83F420682843206004E000791E +:1086E0000C1820681840206030BC70470021074AF1 +:1086F000136803405269024202D0002B00D00121CE +:10870000084670470249086070470000003C01407D +:10871000143C01401949084319490860704770B476 +:1087200003781A460121C478002C1DD0144B1B6815 +:1087300003F4E063C3F5E0631B0A4478C3F1040566 +:10874000AC4085780F2646FA03F32B4023431B01E8 +:108750000C4C1355007842110B4B00F01F0001FA2E +:1087600000F043F8220006E05011084A03F01F030E +:10877000994042F8201070BC704700000000FA05D4 +:108780000CED00E000E400E000E100E080E100E04A +:1087900030B401F00302920021F00301054BCC58E4 +:1087A0000F259540AC43CC50CC5890402043C85046 +:1087B00030BC70470838014080B501214FF480700B +:1087C000FFF76CFB00214FF48070BDE80440FFF719 +:1087D00065BB42684D4B1A400B7942EA03220B6895 +:1087E0001A43426082684A4B1A400B691A43CB68AD +:1087F0001A438B681A434B7942EA43028260C26A89 +:1088000022F47002097D491EC9B242EA0151C162D7 +:10881000704700210160017141718160C160016197 +:108820000121017570473B490A683B4B1A400368B8 +:108830001A4343681A4383681A43C06810430860A8 +:1088400070470021016041608160C160704700296C +:10885000816803D041F001018160704749084900F7 +:108860008160704770B407240A290BD3C568A1F151 +:108870000A0606EB4606B44025EA0404B340234347 +:10888000C36008E0056901EB4106B44025EA040431 +:10889000B340234303611F23072A0AD2446B521EAD +:1088A00002EB8202934024EA03039140194341639F +:1088B00016E00D2A0AD2046BD21F02EB820293400B +:1088C00024EA030391401943016309E0C46A0D3AA5 +:1088D00002EB8202934024EA030391401943C162F0 +:1088E00070BC7047816841F0804181607047002909 +:1088F000816803D041F480618160704721F4806118 +:1089000081607047C06C80B270470000FFFEFFFCC2 +:10891000FDF7FFC004230140E030FCFF00220068A7 +:10892000084200D0012210467047000018220021A2 +:108930000248F8F7AFBD01487047000020FD002055 +:1089400080B5FFF7F8FF684908600FF291010160F8 +:108950000FF2A50141600FF2A50181600FF2A101A4 +:10896000C1600FF20D0101610FF23901416101BDDA +:1089700030B583B004465D4D207869698847002092 +:1089800009E004EB40014A78897841EA022100AA13 +:1089900022F81010401C0328F3DB00A8E968884780 +:1089A00000203EBD30B583B00446504D2869804755 +:1089B000207000A8A968884700200AE004EB400165 +:1089C00000AA32F910301B124B7032F810208A7056 +:1089D000401C0328F2DB00203EBD000080B50CF0F7 +:1089E00083FB0CF09EFC41480068804740480068CB +:1089F000BDE80240004700007047000070470000DB +:108A000073B52DED048B8EB0B0EE408AF0EE608A27 +:108A1000B0EE419A144600200090BDF84800ADF831 +:108A20000C0003A8BDF84A104180BDF84C108180AD +:108A30002E4D00AA01A96B689847002001AE0FE0F7 +:108A400036F9101000EE101AB8EEC00ADFED250A54 +:108A500080EE200A0BA901EB800181ED000A401C89 +:108A60000328EDDBB0EE480A8DED080A08A8B0EE49 +:108A7000680A80ED010AB0EE490A80ED020A05AAF3 +:108A80000BA9AB699847009820700598E06005A88D +:108A90004168A16080686060B2EE040ABDF904001C +:108AA00000EE900AF8EEE00AC0EE800AC4ED040A77 +:108AB000B6F9020000EE900AF8EEE00AC0EE800A75 +:108AC000C4ED050AB6F9040000EE900AF8EEE00ADB +:108AD00080EE800A84ED060A00200EB0BDEC048B07 +:108AE00076BD000000401C4660FE002054FC0020C3 +:108AF00058FE00204C48C168002903D54B4901604D +:108B00004B49016070474B48016841F000410160EA +:108B1000704770B50446002600290BD0012902D108 +:108B20004FF4807606E0022902D14FF4007601E08E +:108B30004FF4407600F082F809281ED13D4D286898 +:108B400020F440702860286830432860286820F0AE +:108B5000F8002860286844F002010843286028686B +:108B600040F48030286000F069F8296821F00201A3 +:108B70002960296821F0F801296070BD70B50446AC +:108B80000D4600F05BF8092813D12A4E306820F416 +:108B900040703060306840F400703060306840F001 +:108BA00001003060256000F049F83168490849004B +:108BB000316070BD70B505460E4600F03FF80928DB +:108BC00011D11C4C206820F4407020602068206087 +:108BD000206840F0010020602E7000F02FF821681E +:108BE00049084900216070BD134908607047092099 +:108BF00011490A68D20301D5012070470A68D206DC +:108C000001D5062070470A68D20501D502207047B9 +:108C10000A6812F0EF0F01D0072070470968890732 +:108C200000D5082070470000043C0240230167453E +:108C3000AB89EFCD103C02400C3C024080B50920CE +:108C40008DF80000FFF7D3FF8DF8000003E0FFF779 +:108C5000CEFF8DF800009DF800000128F7D09DF8A8 +:108C6000000002BD2DE9F04104460D461646CD4FE9 +:108C7000386B40F480503863DFF82C83CB48C8F859 +:108C80000400CB48C8F808004FF47A50A8F8000058 +:108C90000120A8F80E00A8F80C0040460CF05AFB82 +:108CA00000F0ADF8C046C046B86820F40000B860D7 +:108CB000386840F08060386038680001FCD560009A +:108CC00000F004F9C8F83450C8F8386000F003F830 +:108CD0000020BDE8F08130B585B001210220FFF70A +:108CE000B1F81D208DF800000F208DF80100002044 +:108CF0008DF8020001208DF8030000A8FFF70FFD9A +:108D0000AC480068AC49B0FBF1F0441E40F2E730DB +:108D1000029000200190ADF80C008DF80E00A74DD8 +:108D200001A928460CF016FD0122214689B22846E9 +:108D3000018582820122114628460CF045FD05B0CE +:108D400030BD80B5974A13681B010AD4936823F499 +:108D500000039360136843F08063136013681B0182 +:108D6000FCD5974A50609748016101219648FFF76A +:108D70004BFB01219548FFF710FC002002BD10B508 +:108D80008E4C2088C00709D40FF25020F7F7CCFB97 +:108D900001212046BDE810400CF000BD10BD80B59B +:108DA00000218948FFF730FB7E48016821F080618F +:108DB000016000218548FFF7F0FB002002BD10B5DF +:108DC0007E4C2088C00709D50FF21820F7F7ACFBBE +:108DD00000212046BDE810400CF0E0BC10BD30B4CE +:108DE000002308E031F81340250245EA142420F856 +:108DF00013405B1C9BB29342F4DB30BC70471CB544 +:108E000001210220FFF713F801210220FFF70FF8DC +:108E100002208DF804000020ADF8060002208DF835 +:108E200005004FF400500090694C00A92046FFF760 +:108E3000D1F805220D212046FFF71AF94FF4004022 +:108E4000009000A92046FFF7C5F805220F21204613 +:108E5000FFF70EF913BD30B5A1B05A4C5B4840681E +:108E600080B2C0F5A0706081554D29E0A08A05EB65 +:108E7000400205EB4101B1F84818A2F8C817A189D2 +:108E8000491CA181401CA082A189B1F5A07F01D31A +:108E90000021A18180B2402812D3402205F5F9615A +:108EA00000A8FFF79CFF404B1E22696800A80CF049 +:108EB000CBFA4FF4F07110200CF09CFC0020A08243 +:108EC000A18960898842D1D121B030BD30B593B03D +:108ED000054601214FF48040FEF7B4FF3A4C20468E +:108EE000FFF7CEF902952020ADF802000020ADF882 +:108EF0000400ADF80C004FF44070ADF80000002005 +:108F0000ADF8060000A92046FFF705FA01214FF44D +:108F10000010FEF78CFF2D4D00212846FFF73DFB8A +:108F20002846FFF78FFA002004902A4805902A4827 +:108F30000690002007904FF4A07008900020099040 +:108F40004FF480600A904FF400600B904FF4005093 +:108F50000C904FF480700D904FF400300E90002074 +:108F60000F900320109000201190129004A9284621 +:108F7000FFF7ECFA012211462046FFF751FA13B031 +:108F800030BD10B50D4C012120460CF027FC002807 +:108F900006D001212046C9430182BDE810405AE7AE +:108FA00010BD000000380240B42400200000FA4543 +:108FB000000020418425002040420F0000040040B2 +:108FC00014580020C0730020003800405860024050 +:108FD000000402400C3800405C60002054494D33CE +:108FE0002D45000054494D332D44000030B583B069 +:108FF0000020009001A80CF057FC314C9822002171 +:109000002046F8F747FA2F49A1642F49E164062169 +:10901000A4F85810FA21A4F85A100021A4F850100E +:109020000321A4F85C1000A90CF043FC009841F265 +:109030007171884201D3FE203EBD244D05F571704B +:10904000C4F88C004FF4F0702082281DE0600020EE +:10905000606160822060208320460CF0A3FD002028 +:10906000286020460CF040FC3EBD38B5144CD4F8C6 +:109070008C10002905D10FF25C00F7F755FA0D208E +:1090800032BD21460CF04EFC05461048016800290F +:1090900004D00FF24C00F7F747FA0D25002D08D148 +:1090A000B4F86800002800D1312520460CF01CFCE3 +:1090B00004E0FD2D02D020460CF016FC284632BDFF +:1090C00070F600200040000800B00008A4AF0020A7 +:1090D00000207047535046204E554C4C0000000075 +:1090E000734D4D202564000030B5104C05462078A6 +:1090F00081B0401C2070F8F7B6F9A0684169294298 +:1091000005D18561082101742046F8F796F9A06819 +:109110000021456941612078401E2070607808B9BF +:10912000F8F79BF9284601B030BD00BFF0240020BD +:109130007047000038B50446E8F7BAFB90F9705064 +:10914000002C02D14FF0FF3032BD09220021204611 +:10915000F8F7A0F96D1E062D36D8DFE805F0040CEF +:10916000131A21282F00012060704FF0FF30E070AB +:10917000012020722CE04FF0FF3020702071012080 +:10918000207225E04FF0FF3060700120E070207207 +:109190001EE04FF0FF30207001212171207217E096 +:1091A00001206070E0704FF0FF30207210E001206D +:1091B00020704FF0FF302071207209E04FF0FF3037 +:1091C0006070E070207203E0012020702071207236 +:1091D000002032BD0FB42DE9FE4300A80FF2E431A8 +:1091E0001CC91CC000A80CF0C9FF06469DF82970D8 +:1091F000DA4807704FF005084FF000090069D0F811 +:109200003C04C11742464B46FAF7DEFBA8FB00457B +:1092100008FB0155384600F03FF8D148A0FB04890F +:1092200000FB0599404649460CF004FF404649467C +:109230000CF011FF4FF47A0130460CF0A1FF4FF40F +:10924000803130460CF09EFF0CF084FF0CF087FF5D +:109250000CF08AFF0CF08DFF00A8FFF76BFF00A851 +:109260000DF06BFB002804D001460FF26430F7F7D5 +:109270005BF9214689B201200DF0A6FB0120BDE873 +:10928000FE035DF814FB80B500F026F8C82100202D +:109290000DF09AFB012002BD80B5C00710D51B223E +:1092A00000210846F6F7AEFE1B2201210020F6F74A +:1092B000A9FE1B2202210020BDE80840F6F7A2BE4D +:1092C0001B2200210846F6F79DFE1B2201210020EB +:1092D000BDE80840F6F796BE80B51B2200210120AC +:1092E000F6F790FE1B2201210846F6F78BFE1B22A3 +:1092F00002210120BDE80840F6F784BE2DE9F04FB9 +:10930000A1B000200146CDE90A011DA80A460B467E +:109310000EC019A81021F7F71FFB15A81021F7F7A9 +:109320001BFB10A81421F7F717FB07A800210A461A +:1093300006C005A806C00CA81021F7F70DFB0020F9 +:109340000490ADF80E008DF80C00044606F049FBC1 +:1093500005464FF00508A146804E3069D0F83C0420 +:10936000C11742464B46FAF72FFBA8FB00AB08FBA0 +:1093700001BB03A801900DF10E00009004AB0CAAF4 +:1093800005A907A80DF0EDF900283ED1D6E90201A4 +:10939000734AA2FB0A8902FB0B9910EB080041EB10 +:1093A0000901C6E902013278D20724D5002715E069 +:1093B00005EB4702B2F9062000EE102AB8EEC00A0B +:1093C000F2EE040A80EE200ADFED630A20EE200AA6 +:1093D0001DAA02EB870282ED000A7F1C032FE7DB48 +:1093E0006A690292CDE900010CAB1DAA05A907A884 +:1093F0000CF03CFE08E000220292CDE900010CAB2B +:1094000005A907A80CF032FE641C9DF80C0000288A +:1094100002D0E4B2032CACD3E4B2022C03D30FF29B +:10942000BC10F7F781F83078C0072BD50AA919A826 +:109430000CF081FE00270EE019A850F82700FAF77B +:1094400061FB0022474BFAF785FB00F065FE15A98A +:1094500041F827007F1C042FEEDB102215A910A86D +:10946000F6F7B2FF68698DF850003F48006C00F1D4 +:109470000C04627D10A9E368C0681818F6F7A4FF11 +:109480000120A074307880072BD50AA919A80CF008 +:1094900058FE00270EE019A850F82700FAF732FB13 +:1094A0000022304BFAF756FB00F036FE15A941F8C2 +:1094B00027007F1C042FEEDB102215A910A8F6F759 +:1094C00083FF00208DF850002748C06B00F10C048A +:1094D000627D10A9E368C0681818F6F775FF0120CF +:1094E000A074012021B0BDE8F08F80B5F6F788FDAB +:1094F0001A4908611D49C0F8481400F248401C4947 +:1095000041601C4981600FF21501C1600FF28101B9 +:10951000016101200CF015FD012002BD0F4800691A +:1095200090F83904002801D10020704705E080B58B +:10953000002000F006F8012002BD0F4890F900005D +:1095400070470D49087070470449087001460FF2D2 +:109550009400F6F7E9BF00000000804790FD00206E +:1095600040420F0080842E4100000020D591010868 +:1095700087920108FD9201089AFE00201B22022119 +:109580000020F6F73FBD1B2202210120F6F73ABD6D +:1095900018B430220B7812FB030301241C700B78E3 +:1095A00012FB03035C700B7812FB03031B249C70FB +:1095B0000B7812FB03000022C2700878401C087070 +:1095C00011BCB4E701000000010000000100000030 +:1095D000444D50204946282564290000444D502020 +:1095E00052464600525620666C6167202564000092 +:1095F00010B50024F6F720FF002800D001242046F3 +:1096000010BD0000DFF8F4090178DFF8F42902EB5F +:10961000810282ED000ADFF8EC2902EB8102C2ED43 +:10962000000ADFF8E42902EB810282ED001A427899 +:10963000202A01D2521C4270491C0170C9B2202953 +:1096400001D10021017070472DE9F0412DED028B11 +:109650000025DFF8A8496078022801D2284679E081 +:109660002E4601E00025761C607886426DDA20786F +:10967000002803D11F274FF01E0805E0471EB7F151 +:10968000010801D508F12008DFF8740900EB870113 +:1096900091ED000A00EB8800D0ED000A30EE600A80 +:1096A00010EE100AFAF72EFA21F00041FAF724FB27 +:1096B00008EE100ADFF84C0900EB870191ED000A73 +:1096C00000EB8800D0ED000A30EE600A10EE100AC0 +:1096D000FAF718FA21F00041FAF70EFB08EE900AAB +:1096E000DFF8240900EB870191ED000A00EB880008 +:1096F000D0ED000A30EE600A10EE100AFAF702FA16 +:1097000021F00041FAF7F8FA00EE100ADFEDC10A85 +:10971000B4EE608AF1EE10FA01DB012000E00020D7 +:10972000F4EE608AF1EE10FA01DB012100E0002185 +:10973000B4EE600AF1EE10FA01DB012200E0002233 +:10974000084310438ED06D1C8DE7EDB2152D80417E +:10975000C043C00FBDEC028BBDE8F08130B52DEDEC +:10976000028B87B0B0EE618A0546DFF8A84884ED29 +:10977000000AF0EE601AC4ED011AB0EE412A84ED41 +:10978000022AD4ED192AF4EE402AF1EE10FA1ED185 +:10979000D4ED1A2AF4EE612AF1EE10FA17D1D4EDC5 +:1097A0001B2AF4EE422AF1EE10FA10D1606F401C31 +:1097B0006067152813D3606EFAF7A4F902460B46CA +:1097C0000FF6AC00F6F7B0FE0020606707E084ED0E +:1097D000190AC4ED1A1A84ED1B2A0020606794EC64 +:1097E000030AFFF70FFF207B02283BD1284680B2F7 +:1097F000B0EE480A0DF062FF294689B2204609F012 +:10980000ABFEDFF8085828460AF078FA28680128E5 +:109810000FD109F0DAF828460AF070FA2822294612 +:10982000DFF83808F6F7D0FD0FF65000F6F77CFEAB +:1098300024E0294684B068462822F9F797FB0FBC3C +:1098400000F0F6F800F042FA002817D0E889002866 +:1098500014D10FF63400F6F767FE012020730AF0EA +:1098600061FA0BE0012809D1FFF7EEFE002805D0D0 +:109870000FF61C00F6F758FE02202073002007B0F8 +:10988000BDEC028B30BDDFF88C07007B70470028F1 +:1098900006D0DFF86817D1F880105422F9F766BBBC +:1098A000704710B5002815D1DFF86C4700EE101A8C +:1098B000B8EE400A84ED010A20460AF047FA6068D3 +:1098C000FAF720F902460B460FF2CC70BDE81040C3 +:1098D000F6F72ABE012815D1DFF83C4700EE101A32 +:1098E000B8EE400A84ED000A20460AF02FFA2068FC +:1098F000FAF708F902460B460FF2AC70BDE81040CB +:10990000F6F712BE02280DD1DFF80C472181204660 +:109910000AF01CFAB4F908100FF29C70BDE8104070 +:10992000F6F702BE10BD2DE9F0470746884691467E +:10993000DFF8DC46542200212046F7F7ABFDDFF8C4 +:10994000BC5605F18406542200213046F7F7A2FDEB +:109950005422002105F12C00F7F79CFD2822214616 +:109960003046F6F731FDC5F88060DFF8A86654226E +:10997000002106F11000F7F78DFDDFF89CA60C2200 +:1099800000215046F7F786FD28220021DFF87C06EB +:10999000F7F780FD28220021281DF7F77BFD00EE58 +:1099A000107AB8EE400A8AED010A00EE108AB8EE8D +:1099B000400A8AED000AAAF808904B46424639460A +:1099C0000FF20470F6F7B0FD08F038FF50460AF0C9 +:1099D000BDF904F1440042F21071C18001810021FF +:1099E00061640120307308462870687030670DF09C +:1099F00021FE0020A8700120E8700FF2DC60F6F76D +:109A000093FD00207066B066F06630607060B060F4 +:109A1000BDE8F0870100803F10B596B00AF078F9F4 +:109A2000044600A8FFF733FF0098001916B010BDD8 +:109A30000FB430B52DED028B89B0DFF8C045A068BA +:109A4000814205D1BDF84620638A9A4200F0978092 +:109A50000D1A02D5DFF8000645199DED170AD4ED61 +:109A60000A0A70EE608AF5EE408AF1EE10FA03D52C +:109A70009FED940A78EE808A9DED150AD4ED080AD0 +:109A800030EE608AB5EE408AF1EE10FA03D59FED14 +:109A90008D0A38EE008A9DED160A0DF091FFB0EEAA +:109AA000401AE078012802D0022838D048E004F1BA +:109AB0002C0007900EA983B068462822F9F756FAC1 +:109AC0000EBC9FED811AF0EE480AB0EE680A2846F7 +:109AD00000F05CF8A0782818A070C0B203282FD33B +:109AE000DFF82C0507900EA983B068462822F9F705 +:109AF0003DFA0EBC9FED741AD4ED180A94ED130ACA +:109B0000E06A00F043F8A078401CA07054220021C5 +:109B100004F12C00F7F7BEFC0220E07010E0DFF843 +:109B2000F00407900EA983B068462822F9F71EFAC0 +:109B30000EBCF0EE480AB0EE680A284600F026F89F +:109B4000BDF84600002809D15422002104F12C0060 +:109B5000F7F7A0FC0020A0700120E07028220EA9D9 +:109B6000201DF6F731FCDFF8A814C4F8801004F1CA +:109B7000840554222846F6F727FCC4F8805009B023 +:109B8000BDEC028B30BC5DF814FB00000EB470B568 +:109B90002DED048B89B0B0EE409AB0EE608AF0EE05 +:109BA000418A1B9D05F12004BDF852602685294697 +:109BB000B0EE680A00F0C3F8DFF85804006F002820 +:109BC0000ED195ED080A30EE090A85ED080A00F07D +:109BD00003FA85ED080AE684BDF85000A08437E05A +:109BE000DFF8340406AA0AC80AC20368136011A980 +:109BF00084B068462822F9F7B9F90FBCB0EE680ABC +:109C000000F036F9D5ED080A30EE800A85ED080A35 +:109C100000F0E2F985ED080AF5EE408AF1EE10FA5F +:109C20000BDD032E03D10620E084A08410E0042E77 +:109C30000ED10820E084A0840AE0032E03D107207F +:109C4000E084A08404E0042E02D10920E084A084F2 +:109C50001798206194ED050A30EE080A84ED050A94 +:109C600000F0AEF984ED050A1998F9F74BFFDFF81B +:109C7000AC23DFF8AC33F9F76DFFFAF73DF800EEEF +:109C8000100A84ED060ADFED790AB4EE600AF1EEFF +:109C900010FA02DBDFF8C803A06113982062E08CA1 +:109CA000002801D1002020620020E0611598206387 +:109CB000BDF85A00A08509B0BDEC048B70BC5DF8FE +:109CC00010FB0000002474490000000080B50AF079 +:109CD0004BF840F6B93188428041C043C00F02BD05 +:109CE00038B50D4605F11004218F032912D1B5EEC8 +:109CF000400AF1EE10FA06DD29694018286100F0EB +:109D000077F9286131BD61684018606000F070F932 +:109D1000606031BD042911D1B5EE400AF1EE10FAB0 +:109D200006DDA1684018A06000F062F9A06031BDB6 +:109D3000E1684018E06000F05BF9E06031BD70B5AB +:109D40002DED028B0546B0EE408A0C46206828189F +:109D5000206000F04DF9206018EE100AF9F7D2FEED +:109D600021F000410022134600F0ECFB43D2A94E43 +:109D7000F069052830D2316F00292DD104281CD17B +:109D8000E1684018E06000F033F9E0602146B0EE91 +:109D9000480AF069FFF7A4FFE0682818E06000F0C7 +:109DA00027F9E0602146B0EE480A2846FFF798FF01 +:109DB00000F04BF8012030670AE0B4F846000428B0 +:109DC00003D1B0692818B06102E070692818706189 +:109DD000F0692818F06135E0E0682818E06000F0CC +:109DE00007F9E0602146B0EE480A2846BDEC028B38 +:109DF000BDE8704074E7B4F84600032802D0042898 +:109E000007D00DE060682818606000F0F1F860602D +:109E10000CE0A0682818A06000F0EAF8A06005E057 +:109E200060682818606000F0E3F86060794EF069BF +:109E3000052803D2002801D000F00DF800F005F845 +:109E400000203067BDEC028B70BD7248002141617B +:109E50008161C16170476F486D494A6843699A18CA +:109E60004A608A6880698018886070470100C8412C +:109E70000FB430B52DED088BB0EE408ADFED698A66 +:109E80009FED689ADDED139A19EE900AF9F73AFE04 +:109E900041EC1A0B9FED64BBBDF83A00042853EC6B +:109EA0001A2B634824D16349F9F754FE53EC1B2B5A +:109EB00000F0D4FAF9F720FF0BEE100AB5EE408A55 +:109EC000F1EE10FA38D453EC1A2B5D485A49F9F7E1 +:109ED00041FE04460D4618EE100AF9F713FE22461D +:109EE0002B46F9F737FEF9F707FF09EE100A23E0D2 +:109EF0005249F9F72FFE53EC1B2B00F0AFFAF9F79C +:109F0000FBFE0BEE100AB5EE408AF1EE10FA13D408 +:109F100053EC1A2B4A484B49F9F71CFE04460D46F0 +:109F200018EE100AF9F7EEFD22462B46F9F712FE5D +:109F3000F9F7E2FE09EE100AF5EE409AF1EE10FA9A +:109F400018D09DED0D0AB5EE400AF1EE10FA11D0D1 +:109F500010EE100AF9F7D6FD00223B4BF9F7FAFD97 +:109F600002460B46002039490DF054FFF9F7C4FEB4 +:109F700008EE900A3BEE090A10EE100AF9F7C2FD4E +:109F8000334A384BF9F7E6FD04460D461598F9F7C4 +:109F9000B9FD22462B46F9F7DDFD04460D4618EEC5 +:109FA000900AF9F7AFFD22462B46F9F7D3FDF9F7F2 +:109FB000A3FE00EE100ABDEC088B30BC5DF814FB6C +:109FC000DFED240AB4EE600AF1EE10FA03DBDFEDF8 +:109FD000260A30EE200A7047DFED1E0AB4EE600A52 +:109FE000F1EE10FA03DBDFED200A30EE200A7047B5 +:109FF0001949884201D31D49081870473C68002060 +:10A00000246A0020A46A0020246B0020DC72002057 +:10A010002C710020A46B0020F4730020B81E85EB87 +:10A0200051B8AE3F000000000000000000000C40EE +:10A030009A9999999999C93FCCCCEC3F9999B93F94 +:10A04000CDCCCCCCCCCCFC3F00004E400000F03F4F +:10A050007B14AE4701247449819698004068002023 +:10A060000000C841E17A743F002474C9806967FF29 +:10A070005044204E41432025660000005044202DCE +:10A080003E204F46520000005044202D3E205700F5 +:10A090005044202D3E20520050443A536574486588 +:10A0A000696768742025660050443A5365745765A3 +:10A0B000696768742025660050443A5365744765A3 +:10A0C0006E6465722025640050443A202564202582 +:10A0D000642025640000000050443A496E50465404 +:10A0E000313030385F310000010040F10980F44622 +:10A0F000404200F005F851F000416047010000BF08 +:10A1000009D0B0FA80F18840C91CC1F58461090505 +:10A1100001EBD02140057047F446400D40EAC120D4 +:10A12000490006D200F014F8004248BF6FF000402A +:10A13000604700F00DF84FF0004188428CBF0846A0 +:10A1400040426047400D40EAC120490080F00D8048 +:10A1500040F00040490DA1F58061491C05D4D1F1C2 +:10A160001F0154BFC840C01770474FF00000704730 +:10A170004FF4001C1CEB410F94BF1CEB430F09E094 +:10A1800041EA030C50EA4C0C52EA0C0C03D29942FF +:10A1900008BF9042704714BF8B4282427047000054 +:10A1A0000FB400B593B001208DF80300AA208DF8FC +:10A1B00001003C208DF802000020ADF84A000A2082 +:10A1C0008DF828000DF1290000A92022F8F7BEFE25 +:10A1D00000208DF820000320099008A8F5F7C4FF9F +:10A1E000012013B05DF814FB00B58BB00020ADF872 +:10A1F0002A000A208DF8080000208DF809008DF84B +:10A200000A0001208DF800000320019000A8F5F756 +:10A21000ABFF01200BB000BD38B52148046B00F046 +:10A2200037F8012810D101208DF8000004F10C0549 +:10A230006A7D00A9E868E368C018F6F7C5F8012050 +:10A24000A874002000F021F8012032BD80B5F5F798 +:10A25000D7FE144908601449C0F8D01300F5747093 +:10A2600012494160124981600FF20D01C1600FF285 +:10A270004D010161012002BD0A48006890F8C10348 +:10A28000002801D10020704705E00A490870704796 +:10A29000084800787047084890F9000070470000AF +:10A2A0000000002074FE0020A1A10108E9A101081E +:10A2B00019A20108A0FE00209FFE002018B4302241 +:10A2C0000B7812FB030301241C700B7812FB0303B1 +:10A2D0005C700B7812FB030318249C700B7812FB44 +:10A2E00003000022C2700878401C087011BC0DF0F9 +:10A2F00016BF00000FB400B593B001208DF8030025 +:10A30000AA208DF801003C208DF802000020ADF855 +:10A310004A000A208DF828000DF1290000A920220A +:10A32000F8F714FE00208DF820000320099008A8FB +:10A33000F5F71AFF012013B05DF814FB00B58BB0E0 +:10A340000020ADF82A000A208DF8080000208DF8C2 +:10A3500009008DF80A0001208DF80000032001900B +:10A3600000A8F5F701FF01200BB000BD38B50020B3 +:10A3700000902648446C00F039F8012812D1FAF711 +:10A38000E2FA009004F10C056A7D00A9E868E36830 +:10A39000C018F6F719F80120A874002000F023F87F +:10A3A000FAF7D5FA012032BD80B5F5F729FE184934 +:10A3B00008601849C0F8701400F2704016494160F6 +:10A3C000164981600FF20D01C1600FF25D0101615C +:10A3D000012002BD0E48006890F86104002801D1F8 +:10A3E000002070470BE00E49087070470C48007859 +:10A3F000704780B5002000F006F8012002BD094832 +:10A4000090F900007047074908707047000000206D +:10A4100070FE0020F5A201083DA301086DA301080C +:10A420009EFE00209DFE002018B430220B7812FB07 +:10A43000030301241C700B7812FB03035C700B7880 +:10A4400012FB03031C249C700B7812FB03000022F8 +:10A45000C2700878401C087011BCCAE770B44FF095 +:10A46000004591EA030C44BF6B400DF095BE00BF60 +:10A47000841A71EB030603D2001BB1411219734118 +:10A480004FF4001C1CEB410F34BF7CEB430443E052 +:10A490000C0DA4EB1356352E50DC45EAC323DB0A22 +:10A4A00045EAC121C912B6F120050DDD63FA05F6B2 +:10A4B000EB4086EA0305124218BF45F00105C018BB +:10A4C00051F100010CD213E062FA06F5F24055405A +:10A4D000F3415A40B340F3405A408018594107D3E2 +:10A4E00049085FEA30005FEA350528BF45F00105FD +:10A4F00001F58011420875F1004250F1000041EB76 +:10A50000045170BC4FF4001C1CEB410F38BF704766 +:10A510000020090D090570471CEB410F10D252EACB +:10A5200043060BD0BCEB410F05D80C0DAB43661EA8 +:10A53000342EB5DD02E0AB438018594170BC704742 +:10A5400070BC70474FF4001C1CEB410F94BF1CEB18 +:10A55000430F09E041EA030C50EA4C0C52EA0C0CA0 +:10A5600003D28B4208BF8242704714BF9942904287 +:10A570007047000038B50446AE4D00202865052020 +:10A580006865002028646864A864E8649FEDAA0BED +:10A5900085ED040B85ED060B85ED080B85ED0A0BAB +:10A5A00085ED0C0B85ED0E0B6866A86605F16C0059 +:10A5B000A8654FF4B6720021F6F76CFF0C2200215B +:10A5C0002846F6F767FF94ED020AB1EE401A94EDC3 +:10A5D000010AF1EE400A94ED000A05F1440105F18B +:10A5E00040000DF05FFF012032BD00002DE9F04D6D +:10A5F0002DED068B0E468F4F0168396090ED010AF4 +:10A60000B1EE400A87ED010A90ED020AB1EE400A70 +:10A6100087ED020A1E223946B86D0EF04CF9796DAD +:10A620004A1EB86D3B6D934227DA1E22591C09B2AF +:10A630000EF06AF910EE100AF9F764FAC7E90A0198 +:10A640001E22386D411C09B2B86D0EF07BF910EE78 +:10A65000100AF9F757FAC7E90C011E22386D411CA0 +:10A6600009B2B86D0EF08CF910EE100AF9F74AFA3B +:10A67000C7E90E01386D401C72E023D11E2209B2D9 +:10A680000EF042F910EE100AF9F73CFAC7E90A0198 +:10A690001E22796D09B2B86D0EF054F910EE100A51 +:10A6A000F9F730FAC7E90C011E22796D09B2B86DCD +:10A6B0000EF066F910EE100AF9F724FAC7E90E0158 +:10A6C000786D4DE01E2209B20EF00EF9F8651E22DB +:10A6D0000021B86D0EF008F98046C7F86080FC6D67 +:10A6E0002068F9F70FFA02460B46D7E90A010DF088 +:10A6F00049FD82468B46D8F80000F9F703FA524626 +:10A700005B46FFF7ABFEC7E90A016068F9F7FAF9A3 +:10A7100002460B46D7E90C010DF034FD82468B460C +:10A72000D8F80400F9F7EEF952465B46FFF796FEBB +:10A73000C7E90C01A068F9F7E5F902460B46D7E92D +:10A740000E010DF01FFD04460D46D8F80800F9F77C +:10A75000D9F922462B46FFF781FEC7E90E01786D35 +:10A76000FFF7C2FC41EC180BD7E90A0153EC182B98 +:10A770000DF050FB41EC190B87ED049BD7E90C0160 +:10A7800053EC182B0DF046FB41EC1A0B87ED08AB90 +:10A79000D7E90E0153EC182B0DF03CFB41EC100BEC +:10A7A00087ED060BF9F7A8FA01EE100AB0EE418A20 +:10A7B00051EC1A0BF9F7A0FA00EE900AB0EE481A25 +:10A7C000B0EE608AF0EE418A51EC190BF9F794FA79 +:10A7D00000EE100AB0EE681AF0EE480A07F14C01DC +:10A7E00007F148000DF05EFE386D401C38659FEDA6 +:10A7F000120B87ED040B87ED080B87ED060B396C08 +:10A80000B86C00F01DF804467C66796CF86C00F0BA +:10A8100017F8B86604F12801512902D228305128CE +:10A8200002D30120307001E000203070BDEC068BB7 +:10A83000BDE8F08D20E600200000000000000000D0 +:10A84000421AB52A04DB081A00F5B470424205E04A +:10A8500012F1B40F02DA00F5B470421A10467047D4 +:10A8600038B5DFF8244594F82000012801D10020F4 +:10A8700032BD20460EF029FE20460EF093F900204E +:10A88000E0830EF025FEDFF80455E56400206065E6 +:10A890001422014604F13000F6F7FCFD20220021CD +:10A8A000DFF8EC04F6F7F6FD20220021DFF8E404DF +:10A8B000F6F7F0FD0020A065024605E0D42101FB7B +:10A8C00000510A718A71401C0128F7DB0120606485 +:10A8D00000F011F8DFF8C004012180F83D100846AF +:10A8E0000EF072FD0020A06420770EF095FD01208F +:10A8F00084F8200032BD70B401460023DFF88824BC +:10A9000011E0D42504EB8304A46805FB04040126AC +:10A910002671D66D05FB0300807904EB8000006A88 +:10A920003043D0655B1CDFF8700400EB4114DFF8A6 +:10A930005C042579AB42E4DB29465177237F13760B +:10A94000002903D0DFF848345971D06470BC7047D7 +:10A95000DFF834144A6D01EB82031863501C48651C +:10A96000052803D3401E486500207047012070472A +:10A970000020DFF8141402468A654A6D002A0BD0C5 +:10A980000B6B8B65521E4A6504E001EB8002536B32 +:10A990001363401C0428F8DB704738B50024DFF847 +:10A9A000E853287F0EF044FD02E000F03CF8641C00 +:10A9B000287E8442F9D331BD70B50C460025DFF8FE +:10A9C000C863F17F4A1CF277332901D32946F17716 +:10A9D000B17F032915D3016871624168B162806853 +:10A9E000F06228460EF021FD307F401C3077317E2A +:10A9F000C0B2884203D328463077FFF7CEFFFFF777 +:10AA0000B7FFB07F411CB177652801D33220B07702 +:10AA1000B06D002805D0207001250A2801D10A2038 +:10AA20002070284670BD2DE9F84300200146DFF86C +:10AA30005C430BE0D42202FB01421379002B04D0CB +:10AA4000937902EB8302126A1043491C0129F1DB5E +:10AA50000EF007FDCC4D0EF02AFD28650020A865FC +:10AA600006463FE0D42202FB06F707EB040898F8FD +:10AA70000400002835D0304600F049F8D5F8509051 +:10AA800098F8060008EB8000006AD9F80010084228 +:10AA90001ED098F8060008EB8000406B002806D016 +:10AAA00098F8060008EB8000406BFFF751FF98F81C +:10AAB0000600401C88F8060098F80510C0B28842CD +:10AAC00006D3B348395940F82610002088F806000C +:10AAD000D9F84000002804D0D9F800100843C9F87C +:10AAE0000000761C012EBDDB286D00680EF0E1FC35 +:10AAF000A86C411CA964B0F57A7F01D90020A86434 +:10AB0000A448A3492022BDE8F843F8F72FBAF0B5CE +:10AB10009D4C256D00212964D4219C4A01FB002015 +:10AB20008179C1EBC10200EB820600EB8107386A34 +:10AB3000022846D1B06C012843D1306D022808D1DB +:10AB4000686B032803DAF06D401CF06501E000201B +:10AB5000F065306D042808D1686B052803DAF06DC4 +:10AB6000401CF06501E00020F065306D082808D138 +:10AB7000686B082803DBF06D401CF06501E00020E5 +:10AB8000F065306D102808D1686B102803DBF06D7C +:10AB9000401CF06501E00020F065F06C142190FB92 +:10ABA000F1F0F16D814206DA2868396A884328603D +:10ABB000386A286405E00020F0652868396A08438F +:10ABC0002860386A012861D196F84800C0075DD531 +:10ABD000F06C41071ED594ED0B0AF9EE000AB4EEB5 +:10ABE000600AF1EE10FA09D540F22310A9699131FB +:10ABF000814203D3E969913181423DD20020F06561 +:10AC0000F06D05283CDA2868396A88432860386A7C +:10AC10002864F0BD81070FD594ED0B0AB5EE400A0C +:10AC2000F1EE10FAEADDA8695A30B528E6D2E869F3 +:10AC30005A30B52820D3E1E7C006E1D5E06AF8F73D +:10AC400061FF21F000410122544BFFF77BFCD5D876 +:10AC5000606AF8F757FF21F000410022504BFFF7E0 +:10AC600087FACBD2A06AF8F74DFF21F0004100220D +:10AC70004B4BFFF77DFAC1D2F06D401CF065BFE78A +:10AC80000020F0652868396A08432860F0BD00009C +:10AC900010B43D49CA68002A04D14FF48062CA60EA +:10ACA0000A614A619FED370AD1ED040AF8EE600AA5 +:10ACB00091ED0A1A60EE810AC0EE800A91ED011A48 +:10ACC000B8EE411A70EE810AFDEEE00A10EE902A0D +:10ACD000D1ED050AF8EE600A91ED0B1A60EE810ADB +:10ACE000C0EE800A91ED021AB8EE411A70EE810AA8 +:10ACF000FDEEE00A10EE903AB0F9024000EB440499 +:10AD0000D1ED030AF8EE600A91ED091A60EE810AAE +:10AD100080EE800AD1ED000AF8EE600A30EE200ADB +:10AD2000BDEEC00A10EE101AA180B0F9021000EBBF +:10AD30004101CA80B0F9021000EB41010B8141884A +:10AD4000491C418009B21E2901DB1D2141800120DF +:10AD500010BC704710B5002006E0D4210B4A01FB5F +:10AD6000002100220A71401C0128F6DB064C00205D +:10AD7000606460770EF052FB0020E06584F82000EC +:10AD800010BD0000C3F51C41CC70002080220020C3 +:10AD900068730020887300200424002000002140F4 +:10ADA0000000F83F10B5C94C0020E0620520206388 +:10ADB00000206062A0626063A063E063206460645E +:10ADC000A0642065606504F15C00E0640020A0657B +:10ADD0004FF4B672014604F15C00F6F75BFB0C22FF +:10ADE000002104F11800F6F755FB18220021204637 +:10ADF000BDE81040F6F74EBB70B506460C46B34DA5 +:10AE0000686D401C6865304600F01DF8002808D0C9 +:10AE1000304600F0E7F8002803D0286D401C286574 +:10AE200001E000202865686D0F280ADA286D0B28DC +:10AE300003DB01202070022070BD00202070012063 +:10AE400070BD032070BD38B5A04C0168A16190EDC4 +:10AE5000010AB1EE400A84ED070A90ED020AB1EE54 +:10AE6000400A84ED080A0A2204F11801E06C0DF092 +:10AE700022FD216B4A1EE06CE36A93421DDA0A222E +:10AE8000591C09B20DF040FD84ED100A0A22E06A57 +:10AE9000411C09B2E06C0DF055FD84ED110A0A2247 +:10AEA000E06A411C09B2E06C0DF06AFD84ED120A03 +:10AEB000E06A401C00EE100A49E018D10A2209B2EB +:10AEC0000DF022FD84ED100A0A22216B09B2E06C1C +:10AED0000DF038FD84ED110A0A22216B09B2E06CF5 +:10AEE0000DF04EFD84ED120A94ED0C0A2FE00A22BB +:10AEF00009B20DF0F9FC05460A220021E06C0DF0C4 +:10AF0000F3FC94ED100AD5ED000A30EE600AD0EDA6 +:10AF1000000A30EE200A84ED100A94ED110AD5EDF6 +:10AF2000010A30EE600AD0ED010A30EE200A84ED0D +:10AF3000110A94ED120AD5ED020A30EE600AD0ED46 +:10AF4000020A30EE200A84ED120A94ED0C0AB8EEE3 +:10AF5000C01A94ED100A80EE010A84ED0D0AD4EDBA +:10AF6000110AC0EE810AC4ED0F0AD4ED121A81EE67 +:10AF7000811A84ED0E1A04F1280104F124000DF069 +:10AF800091FAE06A401CE06200206063E063A06325 +:10AF9000606A002804D400EE100AB8EEC00A04E08B +:10AFA000404200EE100AB8EEC00AF3EE090AB4EE11 +:10AFB000600AF1EE10FA13D5A06A002804D400EE5E +:10AFC000100AB8EEC00A04E0404200EE100AB8EEE3 +:10AFD000C00AB4EE600AF1EE10FA01D5012032BDCC +:10AFE000002032BD70B52DED028B0025374CA66DCB +:10AFF000016844F8261004EB86014068C8603146B9 +:10B00000284600F021F8B0EE408A3146012000F0D9 +:10B010001BF8F5EE000AB4EE608AF1EE10FA05D5E1 +:10B02000B4EE600AF1EE10FA00D50125701CA0659F +:10B03000032190FBF1F101EB4101401AA065284684 +:10B04000BDEC028B70BD000030B49FED1F0ADFED38 +:10B050001E0A00221D4D10E08B1A1BB2002B00D5DA +:10B06000DB1C1BB200EB400405EB840404EB830300 +:10B0700093ED001A30EE010A521C032AECDBB0EE0D +:10B08000081A80EE010A002212E08B1A1BB2002B74 +:10B0900001D5DB1C1BB200EB400405EB840404EB80 +:10B0A0008303D3ED001A71EEC01A41EEA10A521CBF +:10B0B000032AEADB80EE810A30BC70470348002196 +:10B0C000016541657047000000000000CCE90020E8 +:10B0D00010B500F034FB00F09AFB00240DE0204690 +:10B0E0009FED151ADFED140A9FED130A00F0BCFE68 +:10B0F0002146052000F0C5FE641C1E2CEFD3DFF8AE +:10B10000640D00210170016341638163C1630164C7 +:10B1100041648164052141710A210171002141705E +:10B120008170C1620A2181710021C17010BDDFF8F8 +:10B13000341DC87070470000000000002DE9F04782 +:10B140002DED048BB0EE408AF0EE608AB0EE419AAD +:10B15000DFF8344DE078012801D1002500E0052515 +:10B1600026781E2E09D2304600F07EFE3146284653 +:10B1700000F087FE701C207027E0002616E0DFF844 +:10B180000C1D01EB8602304692ED3D1AD2ED1F0AEE +:10B1900001EB860191ED010A00F066FE3146DFF811 +:10B1A000F00C3018407800F06CFE761C1D2EE6DBAB +:10B1B0001D20B0EE491AF0EE680AB0EE480A00F021 +:10B1C00053FE1D21284600F05CFEDFF8C89C032DCD +:10B1D00008DA606B401C606348450BD3DFF8B80C9D +:10B1E000606307E0206B401C2063484502D3DFF812 +:10B1F000A80C206300F0BAFDB0EE408A00F07EFD9E +:10B20000F0EE408A00F012FBD4F830809FEDA09B56 +:10B210004046FEF773FF53EC192BF8F79BFCFEF743 +:10B2200091FF0646E76B3846FEF768FF53EC192B93 +:10B23000F8F790FCFEF786FF824620790A2802D0B4 +:10B24000142846D05CE09FED940AB4EE408AF1EEFB +:10B2500010FA0CD5F4EE408AF1EE10FA07D5032D62 +:10B2600005DA14202071780800F0F4FB48E0781C1F +:10B27000E063484502D3DFF8200CE063042D3FDB98 +:10B2800000F066FAE06A01283AD1B6F57A7F37D93C +:10B2900094ED090AB5EE400AF1EE10FA01DCB1EEC8 +:10B2A000400ADFED7E0AB4EE600AF1EE10FA0DDA24 +:10B2B00094ED0A0AB5EE400AF1EE10FA01DCB1EEA7 +:10B2C000400AB4EE600AF1EE10FA19DB0020E062E9 +:10B2D00016E09FED710AB4EE408AF1EE10FA04DA3E +:10B2E000F4EE408AF1EE10FA02DB0A20207107E04A +:10B2F000A06B401CA063484502D3DFF89C0BA06301 +:10B3000000206070607902280AD0C0F05B810428B8 +:10B310001BD074D3062800F00381C0F0E68051E111 +:10B32000032D0FDA606B012802D12079A07149E169 +:10B330000A2840F047810420607100F0FDFB0020E6 +:10B3400020633FE1002060633CE1E06A012832D1E4 +:10B35000207900F049F901282DD140F2E9308642E8 +:10B3600001D2002E22D1824502D2BAF1000F1DD1A6 +:10B3700094ED090AB5EE400AF1EE10FA01DCB1EEE7 +:10B38000400ADFED460AB4EE600AF1EE10FA10D57D +:10B3900094ED0A0AB5EE400AF1EE10FA01DCB1EEC6 +:10B3A000400AB4EE600AF1EE10FA02D5A07860709F +:10B3B00001E00020E062E06A002814D1B6F5C87F01 +:10B3C00001D8002E08D1A078002808D0BAF1FB0FD0 +:10B3D00005D2BAF1000F02D0A078607003E02079A6 +:10B3E00000F048F96070032060716078A070002060 +:10B3F00020636063A063E06300F022FBE2E0042DC1 +:10B4000017DBB8F1010F02D100F001FADAE0B8F170 +:10B41000060FC0F0D7800021404600F0D5FAA07892 +:10B42000032802D10020E06262E000F0E1FCE0626B +:10B430005EE00020206320790A2853D1E06B0A28BF +:10B44000C0F0C080002100F0BFFAA07800F0D0FC6E +:10B45000E06294ED130AB5EE400AF1EE10FA02DD57 +:10B46000F0EE400A01E0F1EE400A9FEDB81AF4EE6A +:10B47000410AF1EE10FAC0F2A580D4ED140AF5EEFF +:10B48000400AF1EE10FA0BDDF0EE601A0AE000BFA0 +:10B4900000000000000034409A99193F000020424B +:10B4A000F1EE601AF4EE411AF1EE10FAC0F28A8061 +:10B4B000F5EE400AF1EE10FA01DCF1EE600AB5EEAD +:10B4C000400AF1EE10FA01DCB1EE400AF4EE400A57 +:10B4D000F1EE10FA76D50520607100F098F90020A1 +:10B4E000A0636FE00020E0636CE0B8F1060F04D3C6 +:10B4F000022060710020606364E0A06B012805D128 +:10B50000E06B00F0A7FA2079A0715BE0052859D321 +:10B51000606B052856D3062060710020206351E03F +:10B52000207914284ED1E06A01282DD140F2E9306B +:10B53000864201D2002E22D1824502D2BAF1000FFA +:10B540001DD194ED090AB5EE400AF1EE10FA01DCC6 +:10B55000B1EE400ADFEDB30AB4EE600AF1EE10FA84 +:10B5600010D594ED0A0AB5EE400AF1EE10FA01DCAE +:10B57000B1EE400AB4EE600AF1EE10FA02D5A078FE +:10B58000607001E00020E062E06A002811D140F222 +:10B590009110864201D2002E04D1824505D2BAF123 +:10B5A000000F02D0A078607003E0A07900F062F88C +:10B5B0006070032060716078A07000202063606379 +:10B5C000E063A0636078012801D1012008E002282F +:10B5D00001D1022004E0032801D1032000E0002073 +:10B5E000BDEC048BBDE8F08700B52DED048B81B078 +:10B5F00000210A2808D1DFF86C0890ED100A90EDC0 +:10B60000118AD0ED128A11E0142808D1DFF854080D +:10B6100090ED150A90ED168AD0ED178A06E09FEDA1 +:10B62000820A9FED818ADFED808A032103291CD2E3 +:10B630009FEDD59A00F03AFCB4EE490AF1EE10FA0B +:10B6400011D5B0EE480A00F031FCB4EE490AF1EE33 +:10B6500010FA08D5B0EE680A00F028FCB4EE490AEA +:10B66000F1EE10FA01D4012000E0002001B0BDECA1 +:10B67000048B00BD00210A280AD1DFF8E807D0EDCD +:10B68000100A90ED111AD0ED121A9FED670A13E01F +:10B6900014280AD1DFF8CC07D0ED150A90ED161A60 +:10B6A000D0ED171A9FEDC50A06E0DFED5F0A9FEDAA +:10B6B0005E1ADFED5D1A032103293ED2B4EE600A63 +:10B6C000F1EE10FA0BD59FEDBE2AB4EE421AF1EE60 +:10B6D00010FA04D5F4EE421AF1EE10FA2AD4B4EEC0 +:10B6E000600AF1EE10FA0BD59FEDB62AB4EE421ABD +:10B6F000F1EE10FA04DBF4EE421AF1EE10FA0BDA76 +:10B70000B4EE600AF1EE10FA08D59FEDCC1AF4EE13 +:10B71000411AF1EE10FA01DB01210EE0B4EE600AED +:10B72000F1EE10FA08D59FEDCA0AF4EE401AF1EED8 +:10B7300010FA01D5022100E0032108467047DFF826 +:10B74000240700218160C160016170470100C03F92 +:10B7500010B52DED068BDFF80C4794ED050AB5EE1C +:10B76000400AF1EE10FA13D194ED060AB5EE400A44 +:10B77000F1EE10FA0CD194ED070AB5EE400AF1EEA5 +:10B7800010FA05D1A0686061E068A0612069E061FD +:10B7900094ED028A94ED050A38EE400A00F0F6F8BE +:10B7A000F0EE408A94ED039A94ED060A39EE400AD1 +:10B7B00000F0ECF8F0EE409A94ED04AA94ED070A3C +:10B7C0003AEE400A00F0E2F8F0EE40AA94ED080AE2 +:10B7D00030EE280A00F0DAF884ED080A94ED090A40 +:10B7E00030EE290A00F0D2F884ED090A94ED0A0A35 +:10B7F00030EE2A0A00F0CAF884ED0A0A84ED058AC0 +:10B8000084ED069A84ED07AABDEC068B10BDDFF827 +:10B810005406002101624162816241618161C1611E +:10B82000704700000000204200000000F0B52DED40 +:10B83000068B83B01D2100A800F006FB9DED000AD9 +:10B84000B5EE400AF1EE10FA01DCB1EE400ADFED90 +:10B85000B00AB4EE600AF1EE10FA01D500200090B3 +:10B8600000AE96ED010AB5EE400AF1EE10FA01DCE9 +:10B87000B1EE400AB4EE600AF1EE10FA01D50020F4 +:10B88000706096ED020AB5EE400AF1EE10FA01DCA6 +:10B89000B1EE400AB4EE600AF1EE10FA01D50020D4 +:10B8A000B0609FED9C8B9FED9D9B9FED9EABDFF865 +:10B8B000D875B868F8F726F904460D460098F8F7E9 +:10B8C00021F953EC1A2BF8F745F953EC192B0CF02E +:10B8D000A1FA53EC182BF8F73DF922462B46FEF758 +:10B8E000BDFDF8F709FA00EE100A87ED020A00F034 +:10B8F0004DF887ED020AF868F8F704F904460D469A +:10B900007068F8F7FFF853EC1A2BF8F723F953ECAB +:10B91000192B0CF07FFA53EC182BF8F71BF9224681 +:10B920002B46FEF79BFDF8F7E7F900EE100A87EDCE +:10B93000030A00F02BF887ED030A3869F8F7E2F8FC +:10B9400004460D46B068F8F7DDF853EC1A2BF8F70B +:10B9500001F953EC192B0CF05DFA53EC182BF8F7A6 +:10B96000F9F822462B46FEF779FDF8F7C5F900EE07 +:10B97000100A87ED040A00F009F887ED040A03B005 +:10B98000BDEC068BF0BD00009A99993EDFED670A89 +:10B99000B4EE600AF1EE10FA04DBDFED650A30EE7A +:10B9A000200A7047DFED630AB4EE600AF1EE10FA88 +:10B9B00003D5DFEDD00A30EE200A70479A9999BE80 +:10B9C000CCCCCCBDCDCCCC3D10B49FEDCB0ADFEDC3 +:10B9D000CA0A1F2801D31E2000E0C0B20022DFF8EF +:10B9E000AC440EE0C2F11D03DBB204EB830393ED24 +:10B9F0001E1A30EE010A93ED3C1A70EE810A521CB9 +:10BA0000D2B2824209DA002902D1C2F11D03EBE76A +:10BA10000129E7D1C2F11803E6E701EE100AB8EEFA +:10BA2000411ADFF8640480EE010A80ED130A80EE0B +:10BA3000810A80ED140A10BC70470000CDCCCC3ECA +:10BA4000DFF84404002141658165C165704700004D +:10BA5000CCCCCCBE30B49FEDA80ADFEDA70A9FED99 +:10BA6000A61A1F2801D31D2001E0401EC0B20021EC +:10BA70000DE030EE210A02EB8302D2ED1E1A70EEC9 +:10BA8000A10AD2ED3C1A31EE211A491C89B2DFF825 +:10BA9000D44381422ADA22781E2A03D2521A531E34 +:10BAA000DBB202E0C1F11D03DBB2DFF8E02352F8A4 +:10BAB000235001EE905A02EB830555F8045C02EE28 +:10BAC000105A71EEC22A9FEDC93AF4EE432AF1EE04 +:10BAD00010FACEDBF5EE401AF1EE10FAC9DDB5EE44 +:10BAE000402AF1EE10FAC4D50B29C2DB01EE901A00 +:10BAF000F8EE611A80EE210A84ED150A80EEA10AA3 +:10BB000084ED160A81EE210A84ED170A30BC7047D5 +:10BB10000BD7233DF8C1631ADCA54C4000000000A0 +:10BB200000408F400000000000003440010034431A +:10BB30000000B4C3000034C3F0B4DFEDC92AB0EE96 +:10BB4000620AB0EE622ADFED6C0A9FED6B1ADFED40 +:10BB50006A1ACD4801781E2900D31E21026B91423A +:10BB600004D201EBD1725210D2B201E05208D2B22B +:10BB700000230DE0B1EE633AB4EE443AF1EE10FA70 +:10BB800005DB71EEA31AB7EE003A32EE032A5B1C16 +:10BB9000DBB2934280F29F80CC1A641EE4B2254649 +:10BBA0006E1EF6B2B94D55F8267003EE107A05EB0D +:10BBB0008407D7ED003A05EB860797ED004A73EE50 +:10BBC000C43AF5EE403AF1EE10FA05EB8407D7EDF2 +:10BBD000003A02DD33EEC33A01E033EE633A05EB9F +:10BBE0008606D6ED1E3A97ED1E4AD6ED1E4A34EE75 +:10BBF000644AB5EE404AF1EE10FA97ED1E4A02DDB6 +:10BC000074EE633A01E073EEC43A06F1780C9CEDF1 +:10BC10001E4A07F17806D6ED1E4A9CED1E5A74EEB8 +:10BC2000C54AF5EE404AF1EE10FAD6ED1E4A02DDA5 +:10BC300034EEC44A01E034EE644ADFED984AB4EED3 +:10BC4000643AF1EE10FA09DBF4EE643AF1EE10FA20 +:10BC500004DBB4EE644AF1EE10FA3CDA55F8244005 +:10BC600003EE104AB5EE403AF1EE10FA02DDF0EEC6 +:10BC7000433A01E0F1EE433A9FED894AF4EE443A4B +:10BC8000F1EE10FA05DB70EE830AB7EE003A30EE03 +:10BC9000030A97ED1E3AB5EE403AF1EE10FA02DDD6 +:10BCA000F0EE433A01E0F1EE433AF4EE443AF1EEBD +:10BCB00010FA05DB31EE031AB7EE003A72EE832A72 +:10BCC000D6ED1E3AF5EE403AF1EE10FA7FF752AF9C +:10BCD000B0EE633A50E780EE800A80ED100A81EE04 +:10BCE000220A80ED110A81EE820A80ED120AF0BC70 +:10BCF000704700000000B4430000000010B52DEDB7 +:10BD0000028B9FED688A002426E0C4F11D00C0B2BA +:10BD10005E4901EB800202F1780393ED1E0AD2ED39 +:10BD20001E0A51F8200001EE100A21EE011A00EE61 +:10BD3000A01A00EE001A11EE100AF7F7E3FE41EC2C +:10BD4000100BE6F7A3FA51EC100BF7F7D5FF00EE56 +:10BD5000100A38EE008A641C062CD6D3B1EE080A0D +:10BD600088EE000ABDEC028B10BD000010B52DED71 +:10BD7000028B9FED4C8ADFED4B8A002428E0C4F152 +:10BD80001D00C0B2414901EB800202F1780393ED3E +:10BD90001E0AD2ED1E0A51F8200001EE100A21EE13 +:10BDA000011A00EEA01A00EE001A11EE100AF7F7C1 +:10BDB000A9FE41EC100BE6F769FA51EC100BF7F70E +:10BDC0009BFF00EE100A38EE008A40EE008A641CE9 +:10BDD000062CD4D3B1EE080AC8EE000A88EE800A19 +:10BDE00000EEE00ABDEC028B10BD00009A99993E6E +:10BDF0000121022812D19FED2C0A2348D0ED130A0D +:10BE0000F4EE400AF1EE10FA1CDBD0ED140AF4EE69 +:10BE1000400AF1EE10FA15DB002113E0012811D1E0 +:10BE2000194890ED130AFEEE000AB4EE600AF1EE36 +:10BE300010FA07D590ED140AB4EE600AF1EE10FA8C +:10BE400000D5002108467047104A52F8213003609F +:10BE500002EB81018A6F4260D1F8F0108160704777 +:10BE6000BD37863520FA0020C0B2084901EB8002B8 +:10BE700082ED000A01EB8000C0ED1E0A80ED3C1A45 +:10BE80007047034A8854704720FA002028EF0020AA +:10BE9000E4FC002041420F0040420F000100A0409E +:10BEA000CDCC4C3D000000000100003FB5EE400A43 +:10BEB000F1EE10FA03D5FFEE000A20EE200A7047DB +:10BEC00010B5044602E0C068F5F796FBF5F7CBFA2B +:10BED00020680028F7D104484078002804BFBDE856 +:10BEE0001040F5F7BABA10BDF02400200120E6F7A3 +:10BEF0004DBA00000649086808B10020704705489F +:10BF000008600549C908C900091A0160704700BFE7 +:10BF100088FE00207094002070AC00202DE9F04FC6 +:10BF2000A1B0804617461D46029102AE0020706205 +:10BF300011AC6FF000490AE017F8011B0298C047E6 +:10BF40000290002800F06A82706A401C70623878A3 +:10BF500008B9706A64E22528EED10020F0603061F3 +:10BF60007061B061F061306201E040F0010017F8EB +:10BF7000011F2029F9D023290DD02B2904D02D29E8 +:10BF800006D030290AD00CE040F0020080B2EEE783 +:10BF900040F00400FAE740F00800F7E740F0100036 +:10BFA000F4E72A290DD129680A1D2A600968F1627F +:10BFB000002904D54942F16240F0040080B27F1CA0 +:10BFC00012E00021F16209E0F16A494505D001EB78 +:10BFD000810302EB43013039F1627F1C3A78A2F110 +:10BFE0003001C9B20A29EFD339782E2903D04FF096 +:10BFF000FF31B1621DE017F8011F2A2906D1296817 +:10C000000A1D2A600968B1627F1C12E00021B1623A +:10C0100009E0B16A494505D001EB810302EB430118 +:10C020003039B1627F1C3A78A2F13001C9B20A29D5 +:10C03000EFD3308639780FF69830E6F7B1F908B1CA +:10C0400017F8010B8DF83A009DF83A00682804D1E2 +:10C05000387868280AD1622005E06C2804BF387857 +:10C060006C2803D171208DF83A007F1C11A8B060B4 +:10C070003978B1F1250023D01C3871D0001F022877 +:10C080006ED9133800F09680093869D0801E00F010 +:10C090002781401E00F0D180401E022860D9001F79 +:10C0A00000F0CB80401F30D0401E00F08380401E47 +:10C0B00020D0C01E09D0801E7CD0C01E7AD017E1CF +:10C0C000F068411CF16025211BE12868011D2960F1 +:10C0D00000687060B26A002A02D5FAF76DFE07E0C8 +:10C0E0000021E6F769F900281ABF7168401AB06AA2 +:10C0F000306107E12868011D296000680021CDE951 +:10C10000000111A870607821E6E09DF83A006228ED +:10C1100018D0682806D06A280BD06C2819D071284E +:10C1200007D016E02868011D2960716A0068018047 +:10C13000E8E02A68101D2860706AC1171268C2E919 +:10C140000001DFE02868011D2960716A0068017044 +:10C15000D8E02868011D2960716A00680160D1E09B +:10C160002868C01D20F00700286000F108022A603E +:10C17000D0E90023CDE90023002B04D5F068421C50 +:10C18000F2602D220DE0308E820704D5F068421C4B +:10C19000F2602B2205E0C00704D5F068421CF26073 +:10C1A00020220255F06811AA8018706000A800F0E3 +:10C1B000C5F9A7E09DF83A006C2808BF2A6811D09D +:10C1C000712808BF2A6802D06A282A680AD1D21DBD +:10C1D00022F007022A6094460CF108022A60DCE98A +:10C1E000002303E0131D2B6012680023CDE9002318 +:10C1F000682808BF92B207D0622808BFD2B203D025 +:10C20000742818BF7A2802D10023CDE9002396F8BC +:10C21000300000075CD5DDE90023002B08BF002AB1 +:10C2200056D041F02000782852D1F06830220255D3 +:10C23000401C421CF26001554AE09DF83A00622819 +:10C240000CD0682810D06A281AD06C2823D0712806 +:10C2500016D074281FD07A280CD01CE02868021D44 +:10C260002A6090F900201AE02868021D2A60B0F9BF +:10C27000002014E02868021D2A60026800230FE0F5 +:10C280002868C01D20F00700286000F108022A601D +:10C29000D0E9002304E02868021D2A600268D31751 +:10C2A000CDE90023002B04DAF068421CF2602D2255 +:10C2B0000DE0308E820704D5F068421CF2602B221C +:10C2C00005E0C00704D5F068421CF2602022025548 +:10C2D000F06811AA8018706000A800F0A4F811E0BE +:10C2E000F068411CF16029680A1D2A60096808E0AD +:10C2F000F068421CF2602522025519B1F068421C18 +:10C30000F26001557F1CF06AF168401AB169401A69 +:10C310003169401AF169401A7169401A316AA0EB1B +:10C32000010A96F83000400711D420208DF8400013 +:10C33000BAF1010F0BDBD346012310AA00A9404636 +:10C3400000F02FFC002869D1BBF1010BF4D1F36898 +:10C3500011AA00A9404600F024FC00285ED130203C +:10C360008DF84000D6F818B0BBF1010F0ADB0123AD +:10C3700010AA00A9404600F014FC00284ED1BBF1E1 +:10C38000010BF4D13369726800A9404600F009FC42 +:10C39000002843D130208DF84000D6F81CB0BBF106 +:10C3A000010F09DB012310AA00A9404600F0F9FBA8 +:10C3B000A0BBBBF1010BF5D17369306971684218FC +:10C3C00000A9404600F0EDFB40BB30208DF8400056 +:10C3D000D6F820B0BBF1010F09DB012310AA00A998 +:10C3E000404600F0DEFBC8B9BBF1010BF5D196F871 +:10C3F000300040077FF5ABAD20208DF84000BAF14A +:10C40000010FFFF6A4AD012310AA00A9404600F0D9 +:10C41000C8FB18B9BAF1010AF5D198E54FF0FF3021 +:10C4200021B0BDE8F08F2DE9FA4782B006463569A4 +:10C430006F2908BF082705D041F02000782814BFD5 +:10C440000A2710273C24D6E90001804689469DF83A +:10C450000820642A18BF692A05D1002903DAD8F117 +:10C46000000869EB4909B9F1000F08BFB8F1000FE6 +:10C470000CD1306B50B9082F3BD196F8380000072B +:10C4800037D53B24302085F83B0032E0A4F1010A87 +:10C490005446FB17404649463A46F7F7B7FACDE906 +:10C4A0000089B846A8FB0023DDE90089A8EB020259 +:10C4B0003032D2B23A2A03D39DF80830513B9A1851 +:10C4C0000AF8052080465FEA010908BFB8F1000FAD +:10C4D00003D0F06861198842D8D3082F09D196F8A3 +:10C4E0003800000705D5605D302802D0641E30207A +:10C4F0006055C4F13C00B0616119F160316B884254 +:10C5000007DA081A3062308F4FF6EF710840308733 +:10C5100010E000290ED596F8381001F0140110290A +:10C5200008D1716B7269891A326A891A081A01284E +:10C53000A8BF306204B0BDE8F08700002DE9F24FDB +:10C540008EB0044604AED4E90001CDE902019DF8A5 +:10C55000380040F020008DF8000061280BD0206BDF +:10C56000002848BF062005D404BF9DF800006728B6 +:10C5700001D1012020636168C1F30A5040F2FF73CA +:10C5800098421ED1080304BF206800280AD1032066 +:10C59000A0619DF838006138C0B21A2838D30FF274 +:10C5A000446109E00320A0619DF838006138C0B201 +:10C5B0001A282AD30FF224610322E068F6F7C6FC9A +:10C5C000B9E1012817DA2046E5F722FF012812DB3E +:10C5D000002700209DF80010612920D1E168302259 +:10C5E00001F8012B4A1CE2609DF83820612A0CBF3B +:10C5F000782258220FE040F2FE31626861F31E5249 +:10C600006260471A4FF0FF30E4E70FF2CC51D3E7F6 +:10C610000FF2CC51D0E70A706169891C616110B9D1 +:10C62000002500277EE19DF80000612840F09780FA +:10C63000206B00284CBF2125451C2DB26E1CD4E96F +:10C640000089DDE9020100220023FDF791FD3ABFD8 +:10C6500089F00040CDE90280CDE902893F1F8DF8C5 +:10C6600010200DF11108012E35DBDDE90201002259 +:10C670000023FDF767FF2ED21C2102A8E5F7EAFE92 +:10C68000DDE90201FDF748FD8146F61F012E09DBB9 +:10C69000FDF72AFD02460B46DDE902010BF072FDB3 +:10C6A000CDE9020108F20700072105E009F00F02B9 +:10C6B00000F8012D4FEA2919B9F1010F01DB491EDC +:10C6C000F4D5491E5CBF002200F8012DF9D500F217 +:10C6D0000708012EC9DA0DF11100A8EB00010DF1D8 +:10C6E0001106A942B8BF0D462DB2002D30D4284600 +:10C6F000884206DA04A941184978082928BF0F2181 +:10C7000000D2002104AA821800E06D1E401E12F81B +:10C7100001398B42F9D00F2904D104A941184A7874 +:10C72000521C4A70002802D504AE6D1C3F1D2DB26C +:10C73000681E0DD481190A783032D2B23A2A03D356 +:10C740009DF838303A3B9A1801F80129401EF2D57D +:10C75000206B002840F1E680681E2063E2E0DDE9FE +:10C76000020100220023FDF703FD3CBF81F00041E0 +:10C77000CDE902013FB247F297507843474990FB19 +:10C78000F1F73FB2C7F107069246DFF814B1012E68 +:10C7900019DBDDE90289F00707D552465B464046C2 +:10C7A0004946F7F7D7F980468946761050465946EC +:10C7B00052465B46F7F7CEF982468B46002EEAD109 +:10C7C000CDE9028921E076429046DFF8D89012E068 +:10C7D000F00707D552465B4640464946F7F7BAF997 +:10C7E0008046894676105046594652465B46F7F7D2 +:10C7F000B1F982468B46002EEAD1DDE902014246BC +:10C800004B460BF007FBCDE902019DF800006628BE +:10C810000CBF07F10A000620216B4518142DA8BF94 +:10C82000132530208DF810000DF11106DFF87890F7 +:10C83000012D3BDBDDE90201FDF784FC06F1080177 +:10C8400004220A26B0FBF6F303EB830EA0EB4E00A6 +:10C85000303001F8010DB3FBF6F000EB8006A3EBDE +:10C860004603303301F8013D521EEAD101F10806BA +:10C87000083D012DDCDBDDE90201FDF763FCFDF77E +:10C880003DFC02460B46DDE902010BF07BFC002279 +:10C890004B46F7F75FF9CDE90201CBE7A08601002F +:10C8A000000024400000F03F84D797410DF11100B3 +:10C8B000301A0DF1110602E0401E7F1E761C317801 +:10C8C0003029F9D09DF80010662902D13FB2791CB9 +:10C8D00003E065290CBF01210021226B8D182DB2C8 +:10C8E000A842B8BF05462DB2002D1BD4294681426F +:10C8F00004DA885D352828BF392000D230208A1913 +:10C90000521E00E06D1E491E12F801398342F9D013 +:10C91000392802D1885D401C8855002902D5761E31 +:10C920006D1C7F1C3FB200972BB232469DF8381029 +:10C93000204600F003F80FB0BDE8F08F2DE9F0437A +:10C9400085B00546894617461E46D5F83080012E2B +:10C9500002DA01260FF2902749F02000BDF930409D +:10C96000662808BF641C18D0672840F082806FF0EA +:10C9700003008442C0F28380444580F28080641CBE +:10C9800095F83800000702D44645B8BFB04624B237 +:10C99000B8EB040848BF4FF00008E868A96924B262 +:10C9A000012C25DA4A1C30230B54B8F1010F03DAAD +:10C9B00095F83810090702D52E211154521CAA618E +:10C9C00018EB040FB8BFC8F1000424B261426962D9 +:10C9D000A044B045B8BF464636B2EE61324639464D +:10C9E000AB691818F6F7B2FAA8EB0600A862C1E026 +:10C9F0000818A64218DA32463946F6F7A7FAA969A6 +:10CA00007118A961A01B6862B8F1010F03DA95F8EB +:10CA10003800000705D5E8682E220A54E869401C52 +:10CA2000E861C5F82880A5E022463946F6F78EFA77 +:10CA3000A8692018361BB8F1010F03DA95F83810F1 +:10CA4000090703D5E9682E224254401CA86136B27A +:10CA5000B045B8BF464636B23246E119EB68C01859 +:10CA6000F6F774FAA8693018A861A8EB06006862A6 +:10CA700080E0B9F1610F16D14FF0700918E046451A +:10CA800004DA95F83810090758BFB046B8F1010824 +:10CA900048BF4FF00008B9F1670F14BF4FF04509C8 +:10CAA0004FF0650904E0B9F1410F08BF4FF050099C +:10CAB000A9694A1CE86817F8013B0B54B8F1010F4B +:10CAC00005DA95F83810090758BFAA6117D52E2145 +:10CAD0001154531CAB61B8F1010F10DB761E36B256 +:10CAE000B045B8BF464636B2324639461818F6F752 +:10CAF0002DFAA8693018A861A8EB06006862A86939 +:10CB0000E968471807F8019B002C03D42B2007F88D +:10CB1000010B03E02D2007F8010B644200260DF104 +:10CB2000080809E00A22214600A8E5F71DFD019842 +:10CB300008F8010B009C761C24B2012CF2DA022EBC +:10CB400006DA49F02000652804BF302007F8010B01 +:10CB50004EB9302007F8010B07E0761E02A8305CC2 +:10CB6000303007F8010B012EF7DAA869E9684018A0 +:10CB7000381AE86195F8380000F0140010280DD13B +:10CB80006869A9690818696A0818E9690818A96A2A +:10CB90000818696B8842BCBF081A286205B0BDE856 +:10CBA000F083F8B504460D4616461F46002077B1BF +:10CBB00016F8011BA868A047A86030B1E86A401CBD +:10CBC000E86200207F1EF3D1F2BD4FF0FF30F2BDCE +:10CBD000686A6C747A4C00006E616E004E414E00C3 +:10CBE000696E6600494E46003000000000B583B013 +:10CBF0000020ADF8040000208DF8060000208DF81C +:10CC00000700012000900DF106037622D0210020BC +:10CC1000F3F711FD002801D1002044E076208DF8C3 +:10CC200004009DF8060050F020008DF80500022356 +:10CC300001AAD0210020F3F7C0FC002801D1002078 +:10CC400031E0012000900DF107034922D02100209E +:10CC5000F3F7F1FC002801D1002024E049208DF8F1 +:10CC600004009DF8070050F001008DF80500022334 +:10CC700001AAD0210020F3F7A0FC002801D1002058 +:10CC800011E076208DF804009DF806008DF805006F +:10CC9000022301AAD0210020F3F78FFC002801D144 +:10CCA000002000E001200EBD38B50400F3F7C1FB01 +:10CCB0000500DFF8B80C0078401CDFF8B01C0870E5 +:10CCC000F4F7D1FBDFF8A40C4078401CDFF89C1C83 +:10CCD0004870210089B22800F3F765FDDFF88C0C5D +:10CCE0004078401EDFF8841C4870C0B2002801D193 +:10CCF000F4F7B3FBF4F764FC31BD10B582B000204B +:10CD0000ADF80000F3F795FB04006B208DF80000F0 +:10CD100080208DF80100022300AAD0210020F3F723 +:10CD20004CFC002801D1002094E064212000F3F79E +:10CD30003AFDFFF75BFF002801D100208AE06B205D +:10CD40008DF8000000208DF80100022300AAD021F8 +:10CD50000020F3F732FC002801D100207AE02821DE +:10CD60002000F3F720FD19208DF8000004208DF835 +:10CD70000100022300AAD0210020F3F71EFC0028A6 +:10CD800001D1002066E01A208DF8000003208DF804 +:10CD90000100022300AAD0210020F3F70EFC002896 +:10CDA00001D1002056E01B208DF8000008208DF8EE +:10CDB0000100022300AAD0210020F3F7FEFB002887 +:10CDC00001D1002046E01D208DF8000003208DF8E1 +:10CDD0000100022300AAD0210020F3F7EEFB002877 +:10CDE00001D1002036E06A208DF8000000208DF887 +:10CDF0000100022300AAD0210020F3F7DEFB002867 +:10CE000001D1002026E06C208DF800003F208DF835 +:10CE100001009DF80110DFF8140DF3F785FB0223E4 +:10CE200000AAD0210020F3F7C8FB002801D1002080 +:10CE300010E06B208DF8000040208DF801000223E7 +:10CE400000AAD0210020F3F7B8FB002801D1002070 +:10CE500000E0012016BD0178407850EA012000B2C0 +:10CE6000704780B502200090DFF8C43C6B22D021CF +:10CE70000020F3F7E0FB002801D100205BE0012057 +:10CE80000090DFF8B03C1A22D0210020F3F7D3FB4A +:10CE9000002801D100204EE001200090DFF8983CEE +:10CEA0001B22D0210020F3F7C6FB002801D100206F +:10CEB00041E001200090DFF8843C1C22D0210020BA +:10CEC000F3F7B9FB002801D1002034E001200090E5 +:10CED000DFF86C3C1D22D0210020F3F7ACFB0028CA +:10CEE00001D1002027E001200090DFF8583C6A22A1 +:10CEF000D0210020F3F79FFB002801D100201AE089 +:10CF000001200090DFF8403C3822D0210020F3F7C8 +:10CF100092FB002801D100200DE001200090DFF8F5 +:10CF20002C3C1922D0210020F3F785FB002801D1E9 +:10CF3000002000E0012002BD80B50020ADF8000017 +:10CF40006B208DF80000DFF8E80B00788DF8010009 +:10CF5000022300AAD0210020F3F72FFB002801D1E3 +:10CF6000002090E06C208DF80000DFF8C40B4078C2 +:10CF70008DF80100022300AAD0210020F3F71DFB49 +:10CF8000002801D100207EE01A208DF80000DFF893 +:10CF9000A00B00798DF80100022300AAD021002007 +:10CFA000F3F70BFB002801D100206CE01B208DF86B +:10CFB0000000DFF87C0B40798DF80100022300AA05 +:10CFC000D0210020F3F7F9FA002801D100205AE01F +:10CFD0001C208DF80000DFF8580B80798DF80100D7 +:10CFE000022300AAD0210020F3F7E7FA002801D19C +:10CFF000002048E01D208DF80000DFF8340BC079D8 +:10D000008DF80100022300AAD0210020F3F7D5FA01 +:10D01000002801D1002036E06A208DF80000DFF8FA +:10D02000100BC0788DF80100022300AAD021002047 +:10D03000F3F7C3FA002801D1002024E019208DF86D +:10D040000000DFF8EC0A80788DF80100022300AAC6 +:10D05000D0210020F3F7B1FA002801D1002012E01E +:10D0600038208DF80000DFF8C80A007A8DF801003A +:10D07000022300AAD0210020F3F79FFA002801D153 +:10D08000002000E0012002BD10B582B00020ADF804 +:10D090000000DFF89C0A007840060FD56B208DF861 +:10D0A000000000208DF80100022300AAD0210020FA +:10D0B000F3F783FA002801D10020B9E06C208DF845 +:10D0C0000000DFF86C0A407810F0F8008DF80100DD +:10D0D000022300AAD0210020F3F76FFA002801D123 +:10D0E0000020A5E06A208DF8000000208DF80100E6 +:10D0F000022300AAD0210020F3F75FFA002801D113 +:10D10000002095E0002400E0641C062C10DA14F1E5 +:10D1100013008DF8000000208DF80100022300AA02 +:10D12000D0210020F3F749FA0028EDD100207FE05C +:10D1300019208DF8000000208DF80100022300AABC +:10D14000D0210020F3F739FA002801D100206FE048 +:10D150001A208DF8000003208DF801004FF4FA64C6 +:10D160002000B0F5FA7F13D0B0F57A7F09D0B0F582 +:10D17000FA6F14D19DF8010050F018008DF80100ED +:10D1800011E09DF8010050F010008DF801000AE058 +:10D190009DF8010050F008008DF8010003E09DF8B3 +:10D1A00001008DF80100022300AAD0210020F3F72E +:10D1B00004FA002801D100203AE0B4F5FA7F0DD03E +:10D1C000B4F57A7F06D0B4F5FA6F0BD103208DF851 +:10D1D00001000AE002208DF8010006E001208DF830 +:10D1E000010002E000208DF801001B208DF80000F6 +:10D1F0009DF80100C0008DF80100022300AAD02193 +:10D200000020F3F7DAF9002801D1002010E03820DF +:10D210008DF8000000208DF80100022300AAD02123 +:10D220000020F3F7CAF9002801D1002000E0012016 +:10D2300016BD00B583B00020ADF8060000208DF8C3 +:10D2400004006B208DF8060001208DF807000223F2 +:10D250000DF10602D0210120F3F7AFF9002801D12A +:10D26000002023E02820FFF71FFD0120009001ABE4 +:10D270006C22D0210120F3F7DEF9002801D1002033 +:10D2800014E06C208DF806009DF8040010F0C0003A +:10D290008DF8070002230DF10602D0210120F3F7DB +:10D2A0008CF9002801D1002000E001200EBD2DE9FD +:10D2B000F04F85B004000D0016001F000020ADF8EF +:10D2C000040002A80021002206C0083806208DF8BC +:10D2D000060038208DF8040000208DF80500022398 +:10D2E00001AAD0210120F3F768F9002802D15FF0EC +:10D2F000FF3070E123208DF8040000208DF8050038 +:10D30000022301AAD0210120F3F757F9002802D106 +:10D310005FF0FF305FE16A208DF8040000208DF897 +:10D320000500022301AAD0210120F3F746F90028C5 +:10D3300002D15FF0FF304EE16A208DF80400042036 +:10D340008DF80500022301AAD0210120F3F735F959 +:10D35000002802D15FF0FF303DE11A208DF8040073 +:10D3600001208DF80500022301AAD0210120F3F746 +:10D3700024F9002802D15FF0FF302CE119208DF84C +:10D38000040000208DF80500022301AAD02101200D +:10D39000F3F713F9002802D15FF0FF301BE11B20E7 +:10D3A0008DF804008DF80540022301AAD021012048 +:10D3B000F3F703F9002802D15FF0FF300BE1FFB271 +:10D3C000002F0FD01C208DF804008DF8054002239B +:10D3D00001AAD0210120F3F7F0F8002802D15FF074 +:10D3E000FF30F8E064B2002C02D0C820FFF75CFCEC +:10D3F0006A208DF8040044208DF80500022301AA5C +:10D40000D0210120F3F7D9F8002802D15FF0FF30D6 +:10D41000E1E023208DF80400FFB2002F03D00820A4 +:10D420008DF8050002E070208DF80500022301AAA6 +:10D43000D0210120F3F7C1F8002802D15FF0FF30BE +:10D44000C9E00A20FFF730FC002408E0E4B2002025 +:10D4500045F82400E4B2002046F82400641CE4B23D +:10D46000032CF3D35FF00009B9F1320F6EDA0A2012 +:10D47000FFF71AFC0220009002AB7222D02101209B +:10D48000F3F7D9F8002802D15FF0FF30A3E002A83B +:10D49000FFF7E1FC9DF8061090FBF1F8B8F1070FDB +:10D4A00002DA7FF0010096E000241AE05FFA8AFABF +:10D4B00055F82AB05FFA8AFA02A810EB4A00FFF783 +:10D4C000CAFC0BFA80F05FFA8AFA45F82A001AF1D2 +:10D4D000010A5FFA8AFABAF1030FE7D319F10109D9 +:10D4E000641CE4B24445BFDAB9F1320FBCDA9DF8EE +:10D4F0000600009002AB7422D0210120F3F79BF8C4 +:10D50000002802D15FF0FF3065E0FFB2002F1AD093 +:10D510005FF0000A5FFA8AFABAF1030FDED25FFA0F +:10D520008AFA56F82AB05FFA8AFA02A810EB4A0083 +:10D53000FFF791FC0BFA80F05FFA8AFA46F82A00AE +:10D540001AF1010AE6E75FF0000AC2E723208DF82E +:10D55000040000208DF80500022301AAD02101203B +:10D56000F3F72BF8002802D15FF0FF3033E05FF0D3 +:10D57000000A0FE05FFA8AFA55F82A004FF47A7130 +:10D580004843322190FBF1F05FFA8AFA45F82A000D +:10D590001AF1010A5FFA8AFABAF1030FEAD3FFB26D +:10D5A000002F17D05FF0000A0FE05FFA8AFA56F8F2 +:10D5B0002A004FF47A714843322190FBF1F05FFA70 +:10D5C0008AFA46F82A001AF1010A5FFA8AFABAF1D1 +:10D5D000030FEAD3012005B0BDE8F08F2DE9F04339 +:10D5E00089B004000D00160000275FF0010801A8B3 +:10D5F000002101605FF000090320009001AB0D22C3 +:10D60000D0210120F3F717F8002801D15FF0FF388F +:10D610005FF0000905E005A8002140F8291019F184 +:10D620000109B9F1030F11DA01A819F80000002867 +:10D63000F1D001A819F80000DFF8A81911EB40009B +:10D6400030F8020C05A941F82900E8E75FF000096D +:10D650001FE002A850F82900DFF88C19884207DA89 +:10D66000DFF88809F2F760FF012010FA09F007439C +:10D6700002A850F82900DFF87819884207DBDFF8A4 +:10D680007409F2F751FF012010FA09F0074319F16C +:10D690000109B9F1030F2BDA55F8290056F82910C2 +:10D6A000401AE4F768FF02A941F8290005A850F8DC +:10D6B00029000028CDD002A850F8290005A951F86A +:10D6C000291090FBF1F0B0F57A70E4F754FF24F8DC +:10D6D000190034F9190040F2F5118842D7DBDFF860 +:10D6E0001809F2F721FF012010FA09F00743CEE7ED +:10D6F000B4F904000090B4F90230B4F90020390004 +:10D70000DFF8F808F2F710FF002F05D0DFF8F00877 +:10D71000F2F70AFF7FF00208404640B209B0BDE8C8 +:10D72000F08338B505000020ADF800000020ADF80A +:10D730000200F2F77EFE040038208DF80000002081 +:10D740008DF80100022300AAD0210020F2F735FF56 +:10D75000002801D1002074E000F0D3FA002801D1A4 +:10D7600000206EE01F208DF800004B208DF8010096 +:10D77000022300AAD0210020F2F71FFF002801D1C8 +:10D7800000205EE01E208DF8000006208DF80100CC +:10D79000022300AAD0210020F2F70FFF002801D1B8 +:10D7A00000204EE069208DF80000C0208DF80100B7 +:10D7B000022300AAD0210020F2F7FFFE002801D1A9 +:10D7C00000203EE0012201210320F3F76EF8002043 +:10D7D000F3F76DF838208DF8000040208DF8010037 +:10D7E000022300AAD0210020F2F7E7FE002801D191 +:10D7F000002026E0012028702000407DC04601283E +:10D8000010D001212000F2F7CEFFBDF80200401C2D +:10D81000ADF80200BDF802003228EDD3DFF8E407CE +:10D82000F2F782FE012200210320F3F73EF80020E8 +:10D83000F3F73DF800F05BFB002801D1002000E089 +:10D84000012032BD70B58EB0040000A80021002276 +:10D8500006C00838012500260BA80021002200235D +:10D860000EC00C3808A80021002200230EC00C387E +:10D8700005A80021002200230EC00C3802A80021B8 +:10D88000002200230EC00C38FFF7EBFA002801D16C +:10D89000002056E0FFF7F8FB002806D00126FFF72E +:10D8A000C8FC002803D100204BE0002049E0012300 +:10D8B00002AA08A90020FFF7FAFC05006DB2012DAD +:10D8C00004D0DFF83C07F2F72FFE1CE0012305AA85 +:10D8D0000BA97FF01F00FFF7EAFC05006DB2012DD8 +:10D8E00004D0DFF81407F2F71FFE0CE005AA02A926 +:10D8F00000A8FFF773FE05006DB2012D03D0DFF81D +:10D90000EC06F2F711FE2670BDF800006070BDF95C +:10D9100000000012A070BDF80200E070BDF9020026 +:10D9200000122071BDF804006071BDF904000012FE +:10D93000A071E571FFF700FB002801D1002000E095 +:10D9400001200EB070BD80B5DFF8BC06007800285D +:10D9500009D1FFF7D2F9002801D1002004E0DFF857 +:10D96000A80601210170012002BD0000F024002062 +:10D9700000B583B000208DF806000020ADF804004B +:10D98000012000900DF106036B22D0210020F2F758 +:10D9900052FE002801D100207FE09DF806004006DD +:10D9A00012D56B208DF804009DF8060010F0BF0022 +:10D9B0008DF80500022301AAD0210020F2F7FDFD19 +:10D9C000002801D1002068E0012000900DF106033D +:10D9D0006C22D0210020F2F72EFE002801D1002079 +:10D9E0005BE06C208DF804009DF8060010F0C70085 +:10D9F0008DF80500022301AAD0210020F2F7DDFDF9 +:10DA0000002801D1002048E01D208DF804004320AB +:10DA10008DF80500022301AAD0210020F2F7CDFDE8 +:10DA2000002801D1002038E01C208DF804000020DF +:10DA30008DF80500022301AAD0210020F2F7BDFDD8 +:10DA4000002801D1002028E020208DF8040080204B +:10DA50008DF80500022301AAD0210020F2F7ADFDC8 +:10DA6000002801D1002018E01F208DF8040080203C +:10DA70008DF80500022301AAD0210020F2F79DFDB8 +:10DA8000002801D1002008E0DFF88005007850F080 +:10DA90000100DFF87815087001200EBD00B583B0D5 +:10DAA00000208DF806000020ADF804000120009051 +:10DAB0000DF106036C22D0210020F2F7BCFD0028F6 +:10DAC00001D1002030E06C208DF804009DF80600A4 +:10DAD00050F038008DF80500022301AAD021002063 +:10DAE000F2F76BFD002801D100201DE0DFF81C05D6 +:10DAF000007880070FD46B208DF8040040208DF84B +:10DB00000500022301AAD0210020F2F756FD0028CB +:10DB100001D1002008E0DFF8F404007810F0FE00E6 +:10DB2000DFF8E814087001200EBD000068840308C7 +:10DB3000E8730020EC730020ED730020EE730020EA +:10DB4000EF730020EB730020F0730020EA730020D5 +:10DB500000B583B000208DF804000020ADF8060069 +:10DB60000120009001AB6C22D0210020F2F763FD70 +:10DB7000002801D1002014E06C208DF806009DF8EB +:10DB8000040050F038008DF8070002230DF1060262 +:10DB9000D0210020F2F711FD002801D1002000E083 +:10DBA00001200EBD7FB504000D0002A80021002257 +:10DBB00006C008380020ADF80400F2F73AFC060071 +:10DBC000DFF84C040068401CDFF8441408600120B2 +:10DBD000009002AB6B22D0210020F2F72CFD002830 +:10DBE00001D100208BE09DF8080040061AD56B207B +:10DBF0008DF804009DF8080010F0BF008DF80500B6 +:10DC0000022301AAD0210020F2F7D7FC002801D17D +:10DC1000002074E005213000F2F7C5FDDFF8F403C1 +:10DC2000F2F782FC0120009002AB6C22D021002090 +:10DC3000F2F701FD002801D1002060E09DF8080006 +:10DC4000382108421ED06C208DF804009DF8080091 +:10DC500010F0C7008DF80500022301AAD021002092 +:10DC6000F2F7ABFC002801D1002048E0052130008C +:10DC7000F2F799FDDFF8A003F2F756FCDFF89C03FA +:10DC800001210160EDB2009502AB3B22D0210020C2 +:10DC9000F2F7D1FC002805D1DFF88403F2F744FC49 +:10DCA00000202CE09DF8090020709DF808006070AD +:10DCB0009DF80B00A0709DF80A00E0709DF80D0023 +:10DCC00020719DF80C006071D1480068642190FBC0 +:10DCD000F1F201FB1200002810D120790090A37806 +:10DCE0002278CE480168CF48F2F71EFCC848006889 +:10DCF000CD49884202DBC64800210160012004B002 +:10DD000070BD30B583B001240020ADF806000020BE +:10DD10008DF80400F2F78DFB05000120009001ABA7 +:10DD20006B22D0210020F2F786FC002801D10020D0 +:10DD30008BE09DF8040040061AD56B208DF8060094 +:10DD40009DF8040010F0BF008DF8070002230DF1CC +:10DD50000602D0210020F2F730FC002801D100207B +:10DD600073E005212800F2F71EFDB048F2F7DCFB56 +:10DD70001D208DF8060008208DF8070002230DF104 +:10DD80000602D0210020F2F718FC002801D1002063 +:10DD90005BE00120009001AB6C22D0210020F2F763 +:10DDA0004AFC002801D100204FE06C208DF80600CD +:10DDB0009DF8040050F080008DF804009DF80400E8 +:10DDC00050F007008DF804009DF8040010F0C70023 +:10DDD0008DF804009DF804008DF8070002230DF172 +:10DDE0000602D0210020F2F7E8FB002801D1002034 +:10DDF0002BE00120009001AB6B22D0210020F2F734 +:10DE00001AFC002801D100201FE06B208DF80600CD +:10DE10009DF8040010F0BF008DF804009DF8040088 +:10DE200050F020008DF804009DF804008DF80700E4 +:10DE300002230DF10602D0210020F2F7BEFB0028DC +:10DE400001D1002001E02000C0B23EBD80B500201D +:10DE5000ADF80000FFF755FF002801D1002045E094 +:10DE60001F208DF800004B208DF80100022300AA2E +:10DE7000D0210020F2F7A1FB002801D1002035E0DD +:10DE80001E208DF8000006208DF80100022300AA54 +:10DE9000D0210020F2F791FB002801D1002025E0DD +:10DEA00069208DF80000C0208DF80100022300AA2F +:10DEB000D0210020F2F781FB002801D1002015E0DD +:10DEC000012201210320F2F7F0FC38208DF8000038 +:10DED00040208DF80100022300AAD0210020F2F793 +:10DEE0006CFB002801D1002000E0012002BD80B5BC +:10DEF0000020ADF80000012200210320F2F7D5FC3C +:10DF000038208DF8000000208DF80100022300AABF +:10DF1000D0210020F2F751FB002801D1002040E081 +:10DF20006B208DF8000000208DF80100022300AA6C +:10DF3000D0210020F2F741FB002801D1002030E081 +:10DF40001D208DF8000000208DF80100022300AA9A +:10DF5000D0210020F2F731FB002801D1002020E081 +:10DF60006C208DF8000000208DF80100022300AA2B +:10DF7000D0210020F2F721FB002801D1002010E081 +:10DF800069208DF8000000208DF80100022300AA0E +:10DF9000D0210020F2F711FB002801D1002000E081 +:10DFA000012002BD80B50178012905D1FFF7B9FB39 +:10DFB00000280AD1002009E00178022905D1FFF7E5 +:10DFC00041FC002801D1002000E0012002BD80B505 +:10DFD00017490020F9F7AEF916490B20F9F7AAF90D +:10DFE00001BD0000DC6C0308003E490034850308D5 +:10DFF00001EFE7003C8503082C8503082C84030807 +:10E00000448503084C85030866740020677400206B +:10E0100048740020548503085C8503084C74002074 +:10E0200064850308BC840308A18601006C8503088D +:10E03000288303084C83030880B50020DFF8681BA1 +:10E040000978002906D1FEF758FEDFF85C1B012293 +:10E050000A7000E00120C0B202BD00B583B000200C +:10E060008DF806000020ADF80400012000900DF1AD +:10E0700006036B22D0210120F2F7DDFA002801D13E +:10E0800000205BE06B208DF804009DF8060010F086 +:10E09000BF008DF80500022301AAD0210120F2F76C +:10E0A0008CFA002801D1002048E0012000900DF1F9 +:10E0B00006036C22D0210120F2F7BDFA002801D11D +:10E0C00000203BE06C208DF804009DF8060010F065 +:10E0D000F8008DF80500022301AAD0210120F2F7F3 +:10E0E0006CFA002801D1002028E01B208DF80400E4 +:10E0F00008208DF80500022301AAD0210120F2F7A3 +:10E100005CFA002801D1002018E01A208DF80400E4 +:10E1100003208DF80500022301AAD0210120F2F787 +:10E120004CFA002801D1002008E0DFF8800A0078CE +:10E1300050F00200DFF8741A087001200EBD00B51F +:10E1400083B000208DF806000020ADF80400012007 +:10E1500000900DF106036C22D0210120F2F76BFA3A +:10E16000002801D1002030E06C208DF804009DF8DB +:10E17000060050F007008DF80500022301AAD02107 +:10E180000120F2F71AFA002801D100201DE0DFF883 +:10E190001C0A0078C0070FD46B208DF804004020C3 +:10E1A0008DF80500022301AAD0210120F2F705FA1B +:10E1B000002801D1002008E0DFF8F009007810F015 +:10E1C000FD00DFF8E819087001200EBD00B583B02E +:10E1D00000208DF804000020ADF80600012000901A +:10E1E00001AB6C22D0210120F2F725FA002801D1E1 +:10E1F000002014E06C208DF806009DF8040050F01B +:10E2000007008DF8070002230DF10602D02101203E +:10E21000F2F7D3F9002801D1002000E001200EBD63 +:10E220007FB5040002A80021002206C0083800269D +:10E230000020ADF80400F2F7FCF805000120009082 +:10E2400002AB6B22D0210120F2F7F5F9002801D1B1 +:10E25000002083E09DF80800400625D56B208DF84E +:10E2600004009DF8080010F0BF008DF8050002239F +:10E2700001AAD0210120F2F7A0F9002801D1002045 +:10E280006CE00A212800F2F78EFADFF82409F2F791 +:10E290004BF9002603E0F6B200203055761CF6B2AA +:10E2A000062EF8D3012059E00120009002AB6C2229 +:10E2B000D0210120F2F7BFF9002801D100204DE064 +:10E2C0009DF808000721084225D06C208DF8040035 +:10E2D0009DF8080010F0F8008DF80500022301AA4F +:10E2E000D0210120F2F769F9002801D1002035E0A2 +:10E2F0000A212800F2F757FADFF8B808F2F714F904 +:10E30000002603E0F6B200203055761CF6B2062E49 +:10E31000F8D3012022E00620009002AB4322D02156 +:10E320000120F2F788F9002805D1DFF88C08F2F710 +:10E33000FBF8002012E09DF8090020709DF808000D +:10E3400060709DF80B00A0709DF80A00E0709DF8C9 +:10E350000D0020719DF80C006071012004B070BDAB +:10E360002DE9F64FADF63C6D05000020ADF8080034 +:10E3700003A81421F2F7F0FA002608A800210022D1 +:10E3800000230EC00C385FF0000940F68C10684482 +:10E390004FF49661F2F7E0FAFFA8E0304FF496618F +:10E3A000F2F7DAFA0BA84FF49661F2F7D5FA5FF0BC +:10E3B0000008002700240020070000E07F1C032F36 +:10E3C00080F2BA806B208DF80800781C8DF8090067 +:10E3D000022302AAD0210120F2F7EFF8002801D190 +:10E3E000002099E13220FEF75FFC6A208DF80800DA +:10E3F00044208DF80900022302AAD0210120F2F75F +:10E40000DCF8002801D1002086E1012409E019EBA5 +:10E41000060608A850F8270019EB000008A941F8E3 +:10E4200027002000441E012875DB23208DF80800FA +:10E4300070208DF80900022302AAD0210120F2F7F2 +:10E44000BCF8002801D1002066E14B20FEF72CFC2F +:10E4500023208DF8080000208DF80900022302AA6D +:10E46000D0210120F2F7A9F8002801D1002053E1C2 +:10E470000220009003AB7222D0210120F2F7DBF8DA +:10E48000002801D1002047E103A8FEF7E4FC00EEDC +:10E49000100AB8EEC00A10EE100AF5F733FBDFF8E9 +:10E4A0001C27DFF81C37F5F755FBFBF735FE8146D7 +:10E4B000B9F148000128B4DB5FF000081DE003A8B3 +:10E4C000FEF7C9FC18EB060140F68C126A4422F8EC +:10E4D00011000DF10E00FEF7BEFC18EB0601FFAABD +:10E4E000E03222F8110004A8FEF7B5FC18EB060193 +:10E4F0000BAA22F8110018F10108C84587DA062096 +:10E50000009003AB7422D0210120F2F794F8002888 +:10E51000D5D1002000E123208DF8080000208DF8DF +:10E520000900022302AAD0210120F2F746F80028B0 +:10E530007FF444AF0020EFE0002E01D0340000E073 +:10E5400001245FF0000800200021C5E9000100203F +:10E550000021C5E9020100200021C5E9040122E0F3 +:10E56000D5E9000140F68C126A4432F91820D3171D +:10E5700080185941C5E90001D5E90201FFAAE0323E +:10E5800032F91820D31780185941C5E90201D5E99D +:10E5900004010BAA32F91820D31780185941C5E994 +:10E5A000040118F10108B045DADBD5E900012200C9 +:10E5B000E317F5F709FAC5E90001D5E902012200E0 +:10E5C000E317F5F701FAC5E90201D5E904012200D4 +:10E5D000E317F5F7F9F9C5E904015FF00008DDF884 +:10E5E0003C0E00220023C0E90023DDF83C0E00228F +:10E5F0000023C0E90223DDF83C0E00220023C0E91D +:10E60000042382E0DDF83C2ED2E90001CDE90001CF +:10E6100040F68C10684430F91800C117D5E9002382 +:10E62000801A994140F68C126A4432F918A05FEAC8 +:10E63000EA7BD5E90023BAEB02027BEB0303A2FBE2 +:10E6400000AB02FB01BB03FB00BBDDE9000110EBEB +:10E650000A0051EB0B01DDF83C2EC2E90001DDF8A8 +:10E660003C2ED2E90201CDE90001FFA8E03030F9EB +:10E670001800C117D5E90223801A9941FFAAE03298 +:10E6800032F918A05FEAEA7BD5E90223BAEB02026D +:10E690007BEB0303A2FB00AB02FB01BB03FB00BB54 +:10E6A000DDE9000110EB0A0051EB0B01DDF83C2E17 +:10E6B000C2E90201DDF83C2ED2E90401CDE90001F6 +:10E6C0000BA830F91800C117D5E90423801A994125 +:10E6D0000BAA32F918A05FEAEA7BD5E90423BAEB6A +:10E6E00002027BEB0303A2FB00AB02FB01BB03FBBB +:10E6F00000BBDDE9000110EB0A0051EB0B01DDF876 +:10E700003C2EC2E9040118F10108B045FFF67AAFCA +:10E71000DDF8400E066001200DF6446DBDE8F08F77 +:10E720002DE9F04389B004000D00160001275FF0C9 +:10E73000000801A8002101600320009001AB002225 +:10E74000D0210120F1F777FF002801D15FF0FF37DA +:10E750005FF0000907E04FFA89F905A8002140F8A9 +:10E76000291019F101094FFA89F9B9F1030F17DAE4 +:10E770004FFA89F901A819F800000028EBD04FFAE8 +:10E7800089F901A819F80000DFF8381411EB4000EE +:10E7900030F8020C4FFA89F905A941F82900E0E7A1 +:10E7A0005FF0000925E04FFA89F902A850F8290026 +:10E7B000DFF81414884208DADFF81004F1F7B4FE29 +:10E7C000012010FA09F050EA08084FFA89F902A866 +:10E7D00050F82900DFF8F813884208DBDFF8F4036B +:10E7E000F1F7A2FE012010FA09F050EA080819F129 +:10E7F00001094FFA89F9B9F1030F3BDA4FFA89F9A8 +:10E8000055F829004FFA89F956F82910401AE3F70C +:10E81000B2FE4FFA89F902A941F829004FFA89F9A5 +:10E8200005A850F829000028BDD04FFA89F902A8A0 +:10E8300050F829004FFA89F905A951F8291090FBE1 +:10E84000F1F0B0F57A70E3F796FE4FFA89F924F803 +:10E8500019004FFA89F934F9190040F2F51188428C +:10E86000C5DBDD48F1F760FE012010FA09F050EA3F +:10E870000808BCE74FFA88F8B8F1000F04D0D74871 +:10E88000F1F752FE7FF00207380040B209B0BDE850 +:10E89000F0832DE9F0439DB00400012501260CA86A +:10E8A0001821F2F759F806A81821F2F755F802A82E +:10E8B0000021016000A80021002206C008380027BE +:10E8C00018A80021002200230EC00C3815A8002132 +:10E8D000002200230EC00C3812A8002100220023C1 +:10E8E0000EC00C3803A80021002200230EC00C38F3 +:10E8F000BB48D0F80480FEF7B4FA002801D100200C +:10E90000EDE0FEF7C1FB0500EDB2012D09D10127B5 +:10E9100002AA06A90CA8FFF723FD002803D10020B6 +:10E92000DDE00020DBE0FEF784FC002801D10020C0 +:10E93000D5E0002303AA15A90020FEF7B8FC0600C5 +:10E9400076B2012E02D0A748F1F7EEFD002312AAFD +:10E9500018A97FF01F00FEF7AAFC060076B2012E70 +:10E9600002D0A148F1F7E0FD18AA15A900A8FFF709 +:10E97000D7FE060076B2012E02D09C48F1F7D4FDF6 +:10E980005FF0000918E05FFA89F918EB49025FFAB5 +:10E9900089F90CA810EBC903D3E900018000A2F8A3 +:10E9A00058005FFA89F918EB4900B0F958109048FF +:10E9B000F1F7BAFD19F101095FFA89F9B9F1030F0D +:10E9C000E1D32770BDF800006070BDF900000012AF +:10E9D000A070BDF80200E070BDF9020000122071C5 +:10E9E000BDF804006071BDF904000012A071E67169 +:10E9F0000298207202980012607202980014A072AD +:10EA000002980016E072DDE90C012073DDE90C01CB +:10EA100000B200126073DDE90C010014A073DDE99F +:10EA20000C010016E073DDE90E012074DDE90E0132 +:10EA300000B200126074DDE90E010014A074DDE97B +:10EA40000E010016E074DDE910012075DDE910010A +:10EA500000B200126075DDE910010014A075DDE957 +:10EA600010010016E075DDE906012076DDE90601FA +:10EA700000B200126076DDE906010014A076DDE93F +:10EA800006010016E076DDE908012077DDE90801DE +:10EA900000B200126077DDE908010014A077DDE91B +:10EAA00008010016E077DDE90A0184F82000DDE9BD +:10EAB0000A0100B2001284F82100DDE90A01001405 +:10EAC00084F82200DDE90A01001684F82300FEF72D +:10EAD00033FA002801D1002001E02800C0B21DB0A7 +:10EAE000BDE8F08330B583B004000020ADF8040029 +:10EAF00000203B494D68697A002907D1286E40689B +:10EB00008047F1F796FC0A21F1F74DFE02200090B4 +:10EB100001AB4122D0210120F1F78DFD002801D168 +:10EB2000002017E09DF805009DF8041050EA012030 +:10EB3000032110FB01F04FF47A7190FBF1F01530D6 +:10EB4000207000206070687A002802D1286E8068EA +:10EB5000804701203EBD80B50178002905D1FFF72F +:10EB600098FE00280AD1002009E00178012905D18A +:10EB7000FFF7B8FF002801D1002000E0012002BD0E +:10EB800080B5C0B2062806D10800FFF7ABFF002809 +:10EB900001D1002000E0012002BD80B5154901200F +:10EBA000F8F7C8FB01BD0000667400206774002000 +:10EBB000A4850308AC850308B48503082D211FF440 +:10EBC0006C56C53FDC6E030830FD1300C485030896 +:10EBD00079E2D100CC850308BC850308D4850308FD +:10EBE00000000020DC850308E4850308EC850308A9 +:10EBF00014850308B8830308002108E0C9B2DFF8D0 +:10EC0000E82D8A18C9B20B5C82F83830491CC9B2A9 +:10EC10000929F3D3704780B50921DFF8D02D01FB16 +:10EC20000020FFF7E9FF01BD2DE9F04F85B004009A +:10EC30000D000E20009001AB90225C210220F1F724 +:10EC4000FAFC002802D15FF0FF3017E10E2000909F +:10EC500001AB90225C210220F1F7EDFC002802D1EB +:10EC60005FF0FF300AE19DF804008DF801009DF887 +:10EC700005009DF806109DF80720D2B292089DF875 +:10EC800007309B0013F00C039DF80860F6B253EABE +:10EC900096139DF8086016F03F069DF80970FFB2C4 +:10ECA000BF089DF809C05FEA0C1C1CF0300C9DF8F1 +:10ECB0000AE05FFA8EFE5CEA1E1E9DF80AC05FEA5B +:10ECC000CC0C1CF0780C9DF80B805FFA88F85CEA9D +:10ECD00058189DF80BC05FEA4C0C1CF03E0C9DF8D8 +:10ECE0000C905FFA89F95CEAD9199DF80CC09DF87F +:10ECF0000DA05FFA8AFA5FEADA1A5AEA4C0A9DF81E +:10ED00000DC0CCF3840B8DF800B09DF80DC05FEA08 +:10ED10004C0C1CF0060C9DF80EB05FFA8BFB5CEA05 +:10ED2000DB1B8DF802B09DF80EC01CF0010C9DF8A5 +:10ED30000FB05FFA8BFB5FEADB1B5BEA4C0C84F8DD +:10ED400003C09DF80EC05FFA8CFC5FEA5C0C5FEAC2 +:10ED50008C0C4FFA8CFC5FEAAC0C84F800C09DF878 +:10ED60000FC01CF0010C9DF810B05FFA8BFB5FEA3E +:10ED7000DB1B5BEA4C0C84F804C09DF80FC05FFA03 +:10ED80008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA4F +:10ED9000AC0C84F801C09DF810C01CF0010C9DF86B +:10EDA00011B05FFA8BFB5FEADB1B5BEA4C0C84F86B +:10EDB00005C09DF810C05FFA8CFC5FEA5C0C5FEA4E +:10EDC0008C0C4FFA8CFC5FEAAC0C84F802C09DF806 +:10EDD00011C01CF0010C84F806C09DF801405FF0E2 +:10EDE0000A0C0CFB04F4B4F5A0642C60C0B20A2435 +:10EDF0006043B0F5A0606860C9B20A2000FB01F072 +:10EE0000B0F5A060A860D2B2B2F12000E860DBB239 +:10EE1000B3F108002861F6B2B6F120006861FFB2D4 +:10EE200017F12600A8615FFA8EFEBEF12000E861AE +:10EE30005FFA88F8B8F1400028625FFA89F9B9F101 +:10EE4000200068625FFA8AFAC5F828A09DF80000E1 +:10EE5000E862002000E0401CC0B20D2806D2C0B21B +:10EE600001A9415C0029F6D0002007E09DF81100BF +:10EE7000000601D5002001E07FF0090005B0BDE8E3 +:10EE8000F08F1CB5002400E0641CB4F57A7F12DA20 +:10EE90000120009001ABB0225C210220F1F7CBFBF6 +:10EEA000002802D15FF0FF3007E09DF80400000663 +:10EEB000EAD4002001E07FF0040016BD80B5DFF841 +:10EEC000280B90F85400002811D0DFF81C0B90F8A4 +:10EED000550000280BD0FFF7D4FF002802D57FF0A3 +:10EEE000040005E0DFF8000B002180F85510002039 +:10EEF00002BD10B582B014000022ADF800208222BD +:10EF00008DF8002001228DF80120002801D0012079 +:10EF100000E000209DF8012052EA40008DF8010039 +:10EF2000002901D0012000E000209DF8011051EAE5 +:10EF300080008DF80100022300AA5C210220F1F775 +:10EF40003CFB002802D15FF0FF3019E0002C0CD010 +:10EF5000FFF797FF002802D57FF0040010E0DFF8EC +:10EF6000880A002180F8551004E0DFF87C0A0121AE +:10EF700080F85510DFF8700A012180F85410002045 +:10EF800016BD3EB514001D00DFF85C2A92F854202F +:10EF9000002A04D10122FFF7ACFF002871D108201C +:10EFA000009001ABB0225C210220F1F744FB002865 +:10EFB00006D1DFF8900CF1F7B7FA5FF0FF3060E0B0 +:10EFC000DFF8240A002180F854109DF80400C0B234 +:10EFD000C009C0B220609DF80400C00010F47E702B +:10EFE0009DF80510C9B24909C9B20843288006989E +:10EFF0009DF80610890111F4FE519DF80720D2B248 +:10F000009208D2B2114301809DF80810890111F4D1 +:10F01000FE519DF80920D2B29208D2B2114341802C +:10F020009DF80A10890111F4FE519DF80B20D2B20F +:10F030009208D2B211438180079900220A6000220F +:10F040001BE0D2B230F91230002B06D10B6801243C +:10F05000D2B25500AC4023430B60D2B230F912302B +:10F0600041F6FE74A34207D10B680124D2B25500C9 +:10F070006D1CAC4023430B60521CD2B2032AE0D378 +:10F0800000203EBD10B582B004000020ADF80000A5 +:10F09000FFF714FF002802D57FF0040041E085202F +:10F0A0008DF8000020788DF80100022300AA5C2171 +:10F0B0000220F1F782FA002802D15FF0FF3030E041 +:10F0C00086208DF8000060788DF80100022300AAE8 +:10F0D0005C210220F1F771FA002802D15FF0FF30C5 +:10F0E0001FE087208DF80000A0788DF80100022332 +:10F0F00000AA5C210220F1F760FA002802D15FF03B +:10F10000FF300EE0002008E0C0B2DFF8DC18411844 +:10F11000C0B2025D81F84120401CC0B20328F3D385 +:10F12000002016BD80B50020ADF80000FFF7C6FE38 +:10F13000002802D57FF0040011E081208DF8000046 +:10F1400000208DF80100022300AA5C210220F1F7C3 +:10F1500034FA002802D15FF0FF3000E0002002BD49 +:10F1600030B58BB0040002A800210160FFF7A6FEB5 +:10F17000002802D57FF0040074E0DFF86C0800215D +:10F1800080F85410002516E008A951F82010002935 +:10F190000DD002A9415608AA52F82020DFF8503DB0 +:10F1A00053F825305A4342FA81F102AA8154401C97 +:10F1B0000328E9DB6D1C052D43DA02A8FFF762FF87 +:10F1C000002802D55FF0FF304CE007A8019005A8A9 +:10F1D000009003AB04AA00210020FFF7D2FE002814 +:10F1E00002D55FF0FF303DE00498002802D07FF0A8 +:10F1F000040037E0002020E005A931F91010B1F536 +:10F20000805F03D108A9002241F8202005A931F927 +:10F21000101041F20102914203DB08A9012241F8DA +:10F22000202005A931F91010B1F5805F04DA08A992 +:10F230005FF0FF3241F82020401C0328DCDB002077 +:10F24000B6E702A8FFF71EFF002802D55FF0FF30E7 +:10F2500008E0002503E002A8285C28556D1C032D5A +:10F26000F9DB00200BB030BD2DE970438AB00400FB +:10F270000E00DFF8805C0020059000200490FFF76E +:10F280001DFE002802D57FF0040078E0DFF8580763 +:10F29000002180F8541005A8019008A8009002AB46 +:10F2A00003AA00210120FFF76CFE0020002802D0F5 +:10F2B0005FF0FF3063E00398002802D07FF0040085 +:10F2C0005DE004A8019006A8009002AB03AA01210A +:10F2D0000120FFF756FE0020002802D05FF0FF302B +:10F2E0004DE00398002802D07FF0040047E0E86A70 +:10F2F000FAF7FAFE80468946BDF92000BDF91810DC +:10F30000401AFAF7F1FEDFF8F02BDFF8F03BF4F7E4 +:10F3100021FC42464B46F4F71DFC0022DFF8643D19 +:10F3200008F078FDFAF7F8FE2060E86AA96948431A +:10F33000FAF7DAFE04000D00BDF92200BDF91A103B +:10F34000401ABDF92410401ABDF91C1000FA81F0D2 +:10F35000FAF7CAFEDFF84C2DDFF84C3DF4F7FAFB64 +:10F3600022002B00F4F7F6FB0022DFF8183D08F02E +:10F3700051FDFAF7D1FE30600598049908430AB0B0 +:10F38000BDE8708380B5FFF799FD002802D57FF0B6 +:10F39000040004E0002200210020FFF7AAFD02BDC6 +:10F3A0002DE9F0478AB00400894617001D00DDF8FA +:10F3B0004880DFF8406B002007905FF0000A07A844 +:10F3C0000190CDF8009002AB08AA00210020FFF7C1 +:10F3D000D8FD002802D55FF0FF303DE100201DE0A0 +:10F3E00039F91010DFF800268218D278DFF8BC3C1B +:10F3F00033F91220891ADFF8F025821892F941209A +:10F40000DFF8E435C356D21ADFF8DC3513EB80039E +:10F410009B6C03FB021147F82010401C0328DFDB24 +:10F42000DFF8C405006FDFF8C01511EB4000BDF830 +:10F430000810A0F85810DFF8B005006F401CDFF886 +:10F44000A8150867DFF8A005006F0A2803DBDFF8BE +:10F45000980500210167DFF89005C06E401CDFF8B9 +:10F460008815C866DFF88005C06E0A2803DBDFF860 +:10F4700078050A21C166002008E0DFF86C1511EB61 +:10F480004001B1F958100AFA81FA401CDFF858150A +:10F49000C96E8842F1DB0A2000FB0AF0DFF848154C +:10F4A000C96EB0FBF1F00490386800907868039062 +:10F4B000B8680190B8F1000F1DD000983168049A27 +:10F4C00051434FF47A7291FBF2F1401A0090039885 +:10F4D0007168049A51434FF47A7291FBF2F1401A29 +:10F4E00003900198B168049A51434FF47A7291FBEA +:10F4F000F2F1401A019003980199401A069003987E +:10F5000040420199401A0590F06AFAF7EDFD8046F5 +:10F51000894600986421F268069B5A4301FB00204B +:10F520003169059A02FB0100FAF7DEFDDFF8C82910 +:10F53000DFF8C839F4F70EFB42464B46F4F70AFBF6 +:10F54000FAF7EAFD0490F06AFAF7CEFD80468946A4 +:10F5500070690099B269069B5A4301FB0020F1696A +:10F56000059A02FB0100FAF7BFFDDFF88C29DFF8EE +:10F570008C39F4F7EFFA42464B46F4F7EBFAFAF718 +:10F58000CBFD0390F06AFAF7AFFD80468946306AFA +:10F590000099726A069B5A4301FB0020B16A059AE2 +:10F5A00002FB0100FAF7A0FDDFF84C29DFF84C3927 +:10F5B000F4F7D0FA42464B46F4F7CCFAFAF7ACFD32 +:10F5C0000190DFF8240490F938000499DFF818243A +:10F5D00092F93920039B5A4301FB0020DFF80814FD +:10F5E00091F93A10019A02FB01002060DFF8F8035C +:10F5F00090F93B000499DFF8F02392F93C20039B3B +:10F600005A4301FB0020DFF8E01391F93D10019A05 +:10F6100002FB01006060DFF8D00390F93E0004991E +:10F62000DFF8C42392F93F20039B5A4301FB0020DB +:10F63000DFF8B41391F94010019A02FB0100A060B9 +:10F64000002D02D0BDF8080028800898002802D0BC +:10F650007FF0040000E007980AB0BDE8F08700B52D +:10F6600083B00020ADF8060000208DF804000020D3 +:10F6700008E0DFF874134118DFF8342A825C81F85F +:10F680004120401C0328F4DB88208DF80600002070 +:10F690008DF8070002230DF106025C210220F0F72D +:10F6A0008CFF002802D15FF0FF3045E089208DF803 +:10F6B000060000208DF8070002230DF106025C21F0 +:10F6C0000220F0F77AFF002802D15FF0FF3033E02C +:10F6D0000120009001AB80225C210220F0F7ABFFFB +:10F6E000002802D15FF0FF3026E0BF489DF80410EB +:10F6F00080F84410DFF8FC17BB48FFF795FA0028A4 +:10F700001AD4002008E0B84911EB8001DFF8A429E1 +:10F7100052F820208A64401C0328F4DBB248002100 +:10F7200080F85410B048002180F855100020AE49F0 +:10F730000867AD49C86600200EBD00281FD090F9AB +:10F74000001020291BDA90F90110202917DA90F90E +:10F750000210202913DA90F900107FF01E02914266 +:10F760000DDB90F901107FF01E02914207DB90F94A +:10F7700002007FF01E01884201DB012000E0002032 +:10F78000C0B270472DE9F04383B004000D001600AD +:10F790001F00DDF828805FF00009DFF81C09C06A4F +:10F7A000012802D002282FD062E0DFF80C09406C5B +:10F7B000DFF80419096C401AB0F5FA7F58D3DFF866 +:10F7C000F808DFF8F418496C0164FFF7ABFC8146D8 +:10F7D000B9F1000F4CD4DFF8E008806B002805D1A8 +:10F7E000DFF8D808FFF7A9FF002804D1DFF8C80820 +:10F7F0000221C16203E0DFF8C0080021C162FFF707 +:10F80000C1FD002869D433E001A8FFF7A9FC8146B7 +:10F81000B9F1000F2CD4DFF8A00890F93C009DF955 +:10F82000041088420FD1DFF8900890F93D009DF94F +:10F830000510884207D1DFF8800890F93E009DF955 +:10F840000610884201D05FF04009DFF86C08002103 +:10F85000C162002009E0C0B2DFF85C184118C0B2F4 +:10F8600001AA825C81F83C20401CC0B20328F2D37C +:10F87000B9F1000F01D548462FE0CDF800803B00DC +:10F88000320029002000FFF78BFD002825D4012835 +:10F890001ADBDFF82418896B002905D1DFF8181866 +:10F8A000DFF81428526C0A64DFF80C1801228A630E +:10F8B000DFF80418C96A002903D1DFF8FC17012218 +:10F8C000CA6250EA090903E0DFF8EC07002181630E +:10F8D000FFF758FD002800D44846BDE8FE8310B568 +:10F8E00082B00400002C02D17FF07F0078E0DFF8C6 +:10F8F000C8271268002A02D17FF0020070E0DFF80A +:10F90000B827126B002A33D0009114F1200314F1B0 +:10F91000140214F10C012000FFF734FF002827D453 +:10F9200000211EE0C9B214EB4102B2F90C20C9B2A9 +:10F93000DFF8843713EB81031A61C9B214EB81023B +:10F940005269C9B2DFF8703713EB8103DA61C9B2CB +:10F95000DFF8642712EB8102C9B254F821305360FA +:10F96000491CC9B20329DDD3DFF84C17098D218466 +:10F97000DFF84417096B002901D0002826D50021A3 +:10F980001DE0C9B2DFF8302712EB81025268C9B21C +:10F9900044F82120C9B214EB4102C9B2DFF818378C +:10F9A00013EB81031B699381C9B214EB8102C9B2C5 +:10F9B000DFF8043713EB8103DB695361491CC9B2DB +:10F9C0000329DED3DFF8F016098D2184DFF8E8166D +:10F9D000496CDFF8E426926C5118DFF8DC2651649C +:10F9E00016BDDFF8DC067047946C002084820308A3 +:10F9F00080B5002023E0DFF8C0164118DFF8C426E8 +:10FA0000825C81F83C20DFF8B01611EB8001DFF852 +:10FA1000B82652F820200A61DFF89C1611EB80010D +:10FA2000DFF8A42652F820204A60DFF88C1611EB8C +:10FA30008001DFF8942652F82020CA61401C032878 +:10FA4000D9DBDFF8740600210185DFF86C060021A0 +:10FA50004164DFF8640632218164DFF85C0600212E +:10FA60000163DFF8540600214163DFF84C060121F1 +:10FA7000C162DFF844065FF0FF310160DFF838064D +:10FA8000002181630320FFF7C6F8FFF7E8FD002897 +:10FA900005D5DFF83806F0F747FD002037E0DFF83E +:10FAA0001C06FFF74AFE002819D0DFF81006FFF702 +:10FAB000E9FA002805D5DFF81806F0F735FD002033 +:10FAC00025E0FFF72FFB002804D5DFF8EC05012126 +:10FAD000C16211E0DFF8E0050021C1620CE0FFF730 +:10FAE00021FB002804D5DFF8D0050121C16203E025 +:10FAF000DFF8C4050221C162DFF8BC050121016005 +:10FB000018220021DFF8B805F1F7C4FC012002BD7E +:10FB100080B5DFF8A405006B01280AD0DFF898054E +:10FB200001210163FFF72EFCDFF8A805F0F7FCFCCC +:10FB300007E0DFF8840501214163DFF89C05F0F759 +:10FB4000F3FC012002BDDFF87005406B012804D0F2 +:10FB5000DFF864050021016303E0DFF85C050021A4 +:10FB60004163012070470120704710B50023C0B2E7 +:10FB7000002803D002284DD010D360E0DFF838050C +:10FB800090F83C000870DFF8300590F83D004870B0 +:10FB9000DFF8240590F83E00887050E0DFF8180583 +:10FBA0000068002807D17FF00201DFF83005F0F788 +:10FBB000BBFC002044E0002308E0DBB2DFF8F804DF +:10FBC0001818DBB25C5680F83C405B1CDBB2D2B24A +:10FBD0009342F2D3DFF8E004006B002801D101204A +:10FBE0002EE0DFF8D804FFF7A8FD002804D0DFF8E6 +:10FBF000CC04FFF747FA0CE0FFF794FA002804D58D +:10FC0000DFF8B4040121C16203E0DFF8AC04022193 +:10FC1000C16214E000230FE0DBB211EB4300407837 +:10FC20000002DBB211F813208018DBB2DFF8B02439 +:10FC300012EB430290835B1CDBB2092BECD3012057 +:10FC400010BD0000748503082DE9F04389B004005D +:10FC50000D009046994600260027012100A8FFF7D5 +:10FC60003EFE0600002007000FE000A850F8270025 +:10FC7000FAF73AFADFF86C24DFF86C34F3F76AFF2E +:10FC8000FAF74AFA24F817007F1C032FEDDB002E49 +:10FC900006D53100DFF85404F0F746FC002055E0AB +:10FCA000F00702D547F6FF702080B00702D5DFF8D5 +:10FCB00040042080700702D547F6FF70608030074F +:10FCC00002D5DFF82C046080F00602D547F6FF70FD +:10FCD000A080B00602D5DFF81804A080DFF8140475 +:10FCE000C66896F821202100B069F368C018F0F7C3 +:10FCF0006BFB3000E1F7ECFE96F82120B069F1686B +:10FD000041182000F0F760FB4A4629002000DFF888 +:10FD1000D0335B6898474046DFF8C413896888474A +:10FD20002888B8F80010081820806888B8F80210F1 +:10FD300008186080A888B8F804100818A080290066 +:10FD40002800DFF8B42352689047012009B0BDE8CD +:10FD5000F08370B58CB0040000A80021002206C01A +:10FD6000083800260025FFF7A9F8002807D57FF0FE +:10FD70000401DFF88803F0F7D7FB002033E000210F +:10FD800002A8FFF7ACFD0600002E01D500202AE0F6 +:10FD9000FFF794F8002806D57FF00401D848F0F763 +:10FDA000C3FB00201FE00798ADF8000008980999F0 +:10FDB000401AADF80200089840420999401AADF87F +:10FDC000040000250CE000A830F8150004F8150028 +:10FDD00014EB450000A931F91510091241706D1C92 +:10FDE000032DF0DB01200CB070BDF8B50400002538 +:10FDF000E1F75EFD0600FFF7F4FD0700BD4800696E +:10FE0000C06A8068AC498864B6F85C0040070BD4CF +:10FE100017F1140317F10C02B91D3800FFF714FF96 +:10FE2000002801D1002014E000250DE017EB45006B +:10FE3000C08804F8150017EB4500B0F90600001261 +:10FE400014EB450148706D1C032DEFDB7869A07140 +:10FE50000120F2BD2DE9F041040000270026E1F762 +:10FE600027FD8046FFF7BDFD0500B8F85C000007E0 +:10FE700008D52000FFF76DFF002801D1002034E0F5 +:10FE8000032729E015F1140315F10C02A91D280020 +:10FE9000FFF7DAFE002801D1002026E0002618E056 +:10FEA00035F8160004F8160035F91600001214EBA8 +:10FEB0004601487014EB460015EB460189898171B3 +:10FEC00015EB4600B0F90C00001214EB4601C871A6 +:10FED000761C032EE4DB02277FB2864850F8270009 +:10FEE000C06A8068744988640120BDE8F081000020 +:10FEF000A88403089C6C00209A9999999999B93F14 +:10FF0000F0B58DB00400002600A80021002206C034 +:10FF10000838F0F78EFA050067480121016366484A +:10FF20000068002804D0774890F84400022803D0E5 +:10FF3000FFF75EFDFFF7ECFD724890F8440020707B +:10FF40006670A670E67003225E490120FFF70DFE81 +:10FF5000002104A8FFF7C3FC0600002E01D50020F5 +:10FF60008DE016F0150F02D07FF0050612E016F0B6 +:10FF70002A0F02D07FF006060CE00498002808D172 +:10FF80000598002805D10698002802D17FF00706C1 +:10FF900000E000265B4890F841002071594890F835 +:10FFA00042006071574890F84300A071E67100204C +:10FFB00020720020607200270EE004A850F827008D +:10FFC000FAF792F8374A384BF3F7C4FDFAF7A4F87A +:10FFD00000A921F817007F1C032FEEDB4548C768F6 +:10FFE00097F8212000A9B869FB68C018F0F7ECF970 +:10FFF0003800E1F76DFD97F82120B869F9684118DC +:020000022000DC +:1000000000A8F0F7E1F9BDF900000012A072BDF8F8 +:100010000000E072BDF9020000122073BDF802007A +:100020006073BDF904000012A073BDF80400E07312 +:10003000267402212800F0F7B6FB02A903A8FFF7F7 +:1000400013F90600002E01D5002018E016F0150F58 +:1000500001D07FF0050616F02A0F01D07FF00606CA +:100060000398001260740398A07402980012E07460 +:1000700002982075667510480021016301200DB0BB +:10008000F0BD00000000324080B51F490220F7F7A4 +:1000900051F91E490420F7F74DF91B490320F7F7E2 +:1000A00049F901BDFCA9F1D24D62503F9C8503087E +:1000B000F8850308FC840308207200205C7200208D +:1000C000A8730020F4850308088503087C850308CD +:1000D000848503088C85030894850308CC84030871 +:1000E00054FC00207B14AE47E17A843FD884030897 +:1000F0000080FFFF0000002058FE0020E484030879 +:10010000F0840308946C0020708303089483030830 +:100110002DE9FF4F81B0169C179D189E199FDDF8A1 +:100120006880DDF86C901C9ADFF8680DD0F818A094 +:10013000DAF80CB012B200215846E2F720FA139A0E +:1001400012B202215846E2F71AFA149A12B20421A6 +:100150005846E2F714FA159A12B206215846E2F709 +:100160000EFA224612B208215846E2F708FA2A4649 +:1001700012B20A215846E2F702FA324612B20C21B4 +:100180005846E2F7FCF93A4612B20E215846E2F719 +:10019000F6F9424612B210215846E2F7F0F94A4603 +:1001A00012B212215846E2F7EAF9019A12B214216A +:1001B0005846E2F7E4F9029A12B216215846E2F7DD +:1001C000DEF9039A12B218215846E2F7D8F9049AD8 +:1001D00012B21A215846E2F7D2F90E9A12B21C2135 +:1001E0005846E2F7CCF90F9A12B21E215846E2F7B0 +:1001F000C6F9109A12B220215846E2F7C0F9119AB6 +:1002000012B222215846E2F7BAF9129A12B2242108 +:100210005846E2F7B4F901208AF81D0005B0BDE8A0 +:10022000F08F00B583B00020ADF806008DF8040013 +:100230000120009001AB02229A210620F0F7FBF981 +:10024000002829D09DF8040000F00700022801D002 +:1002500000280AD1E1F72CFB90F87A00002804D19D +:100260004FF480510020F0F712FB9DF804000721A5 +:10027000084213D102208DF806009DF8040040F0DA +:1002800080008DF8070002230DF106029A21062056 +:10029000F0F793F9002801D100200EBD01200EBD1A +:1002A00000B583B00020ADF806008DF804000120F1 +:1002B000009001AB02229A210620F0F7BCF9002839 +:1002C00001D100200EBD9DF8040000F007009DF84C +:1002D0000410072211422CD0052801D0042814D183 +:1002E00001208DF8060092208DF807000FF27400AF +:1002F000F0F71AF902230DF106029A210620F0F711 +:100300005CF9002801D100200EBD02208DF8060006 +:100310009DF8040000F07F008DF8070002230DF126 +:1003200006029A210620F0F748F9002801D10020A2 +:100330000EBD0120009001AB00229A210620F0F7AB +:100340007AF9002801D100200EBD0120009001ABF8 +:1003500044229A210620F0F76EF9401E8041C043E6 +:10036000C00F0EBD3D3E53494E544539320000008A +:1003700030B583B004460020ADF806008DF80400C7 +:100380000546002C07D1DFF8F40C816A491C816214 +:100390000121016306E0012C04D1DFF8E00CC16A01 +:1003A000491CC1620120009001AB02229A21062063 +:1003B000F0F741F9002862D09DF8040000F0070032 +:1003C00007285CD8DFE800F00D5B085B0A04060C28 +:1003D000012506E0022504E0042502E0052500E0F1 +:1003E00006250120A04005424BD1680704D5002C0A +:1003F00010D0012C06D042E0A80705D5002C11D062 +:10040000022C3CD1072412E0E80705D5012C0BD0C3 +:10041000022C34D104240AE0002C03D0022C05D095 +:1004200002D32CE0052402E0062400E0022401208F +:100430008DF806000DF10605102068709DF8040087 +:1004400000F0DF008DF8040002230DF106029A216E +:100450000620F0F7B2F8002811D002208DF806002F +:100460009DF8040000F0F8002043687002230DF1AD +:1004700006029A210620F0F7A0F8002801D10020FA +:100480003EBD01203EBD00007CB505460020ADF814 +:1004900006008DF8040006460446002D0AD1DFF858 +:1004A000DC0B816A491E816201D521468162806A26 +:1004B000012877DA012D0AD1DFF8C00BC16A491E85 +:1004C000C16201D52146C162C06A01286ADA0120F1 +:1004D000009001AB02229A210620F0F7ACF8002828 +:1004E0005ED09DF8040000F00700072858D8DFE828 +:1004F00000F00D5708570A04060C012606E00226F4 +:1005000004E0042602E0052600E006260120A840BB +:10051000064247D070070DD5002D02D0022D02D023 +:100520003ED2022406E0F00701D5052402E0B00720 +:1005300000D50624052C01D0042C09D112208DF8F9 +:1005400007009DF8040040F020008DF8040008E04A +:1005500010208DF807009DF8040000F0DF008DF8F2 +:10056000040001208DF8060002230DF106029A21F5 +:100570000620F0F722F8002812D002208DF806009D +:100580009DF8040000F0F80020438DF807000223D6 +:100590000DF106029A210620F0F70FF8002801D18C +:1005A000002076BD012076BD7CB50FF29000EFF7FC +:1005B000BBFF0020ADF806008DF804000646E1F709 +:1005C00077F90446DFF8B45A0120A86200E0761CEF +:1005D0000F2E12DA701900798DF806007019007D5F +:1005E0008DF8070002230DF106029A210720EFF78C +:1005F000E4FF0028EBD1002076BD0020FFF744FF88 +:10060000002801D1002076BDFFF70BFE002801D1A4 +:10061000002076BD0120009001AB00229A21072026 +:10062000F0F709F8002801D1002076BD7820A4F861 +:1006300076005020A4F87800012076BD3D3E50524F +:100640005000000010B582B00FF21C10EFF76CFFE5 +:100650000020ADF800004FF48051F0F716F9DFF8F4 +:100660001C0AC16A012906DB816A491C81620121D9 +:100670004163084616BD0020FFF77AFE002801D12D +:10068000002016BD03208DF8000000ACA020607093 +:10069000022300AA9A210720EFF78FFF002801D13B +:1006A000002016BD04208DF800005C20607002233D +:1006B00000AA9A210720EFF780FF002801D100202F +:1006C00016BD63208DF800007F206070022300AA11 +:1006D0009A210720EFF771FF002801D1002016BDF5 +:1006E00064208DF800000B206070022300AA9A217C +:1006F0000720EFF762FF002801D1002016BD672018 +:100700008DF800003C206070022300AA9A21072087 +:10071000EFF753FF002801D1002016BD68208DF8A7 +:10072000000000206070022300AA9A210720EFF742 +:1007300044FF002801D1002016BD69208DF800007B +:1007400014206070022300AA9A210720EFF735FFDA +:10075000002801D1002016BDFFF7A2FD401E8041F8 +:10076000C043C00F16BD00003D3E50524F00000078 +:1007700080B50FF22400EFF7D7FE0020FFF784FECC +:10078000002801D1002002BDFFF74BFD401E804133 +:10079000C043C00F02BD00003D3E50524300000068 +:1007A00080B50020FFF770FE002801D1002002BDB7 +:1007B000FFF737FD401E8041C043C00F02BD30B57A +:1007C00083B004460020ADF80400DFF81C5DE86A41 +:1007D000002839D10120009001AB54229A21072032 +:1007E000EFF729FF00281DD09DF80400C0F3021088 +:1007F000C01D0221009101AB9DF80410C1F302114C +:10080000C91D821000EB5270C010A1EBC000C0B235 +:10081000400000F14402D2B29A210720EFF70BFF0B +:10082000002801D100203EBD9DF80400000200F424 +:10083000E0609DF80510084340F2FF31401A00B215 +:10084000002800D50020A884B5F9240020700012EB +:10085000607001203EBDF0B583B004460F46E1F75D +:1008600027F80646EFF7E5FD054600200190B6F8AB +:100870007820B6F876100FF6D440EFF755FE3946DB +:10088000601CFFF79CFFDFF8600C806B44F6206172 +:10089000884202DB00206070A070B6F87600A17874 +:1008A000627842EA0121884201DA012000E000205A +:1008B000207020782875287D0028A078617841EA8A +:1008C000002104D00FF69440EFF72EFE03E00FF660 +:1008D0009440EFF729FE0120009001AB02469A21D7 +:1008E0000620EFF7A8FE002819D09DF804000006A6 +:1008F00017D50FF67840EFF717FE01208DF80600A8 +:100900009DF8040000F07F008DF8070002230DF130 +:1009100006029A210620EFF750FE002801D10020A0 +:10092000FEBD0120FEBD30B583B00020ADF8000053 +:1009300001A800210160E0F7BBFF054605F276043F +:10094000B5F87600002802D06088002808D10FF69C +:100950002840EFF7E9FD7820A5F876005020608068 +:10096000B5F8760000F2FF30ADF80400608800F2C0 +:10097000FF34ADF806405A208DF8000000ADBDF8F8 +:100980000400000A6870022300AA9A210720EFF7EA +:1009900014FE002801D100203EBD5B208DF8000030 +:1009A000BDF804006870022300AA9A210720EFF71F +:1009B00004FE002801D100203EBD5C208DF800001F +:1009C000A4B2200A6870022300AA9A210720EFF738 +:1009D000F4FD002801D100203EBD5D208DF800000F +:1009E0006C70022300AA9A210720EFF7E6FD002889 +:1009F00001D100203EBDDFF8F00AB0F924100FF657 +:100A00008030EFF791FD01203EBD80B50FF6EC314F +:100A10000720F6F78FFC0FF608410A20BDE80440D6 +:100A2000F6F788BC1CB50020ADF806008DF8040070 +:100A30000FF66030EFF778FD002400E0641C0A2C0C +:100A400013DADFF8A00A2118097B8DF80610205C64 +:100A50008DF8070002230DF106029A210620EFF718 +:100A6000ACFD0028EAD1002016BD0120FFF70CFDE7 +:100A7000002801D1002016BDFFF7D3FB002801D1CB +:100A8000002016BD0120009001AB00229A21062013 +:100A9000EFF7D1FD401E8041C043C00F16BD10B519 +:100AA00082B00020ADF800000FF6F020EFF73CFD1B +:100AB0004FF480510020EFF7E8FE0120FFF758FCCB +:100AC000002801D1002016BD03208DF8000000ACE5 +:100AD000DFF8100A80786070022300AA9A210620AD +:100AE000EFF76BFD002801D1002016BD04208DF822 +:100AF00000003C206070022300AA9A210620EFF734 +:100B00005CFD002801D1002016BD63208DF8000097 +:100B100064206070022300AA9A210620EFF74DFDA1 +:100B2000002801D1002016BD64208DF800000920A6 +:100B30006070022300AA9A210620EFF73EFD0028EC +:100B400001D1002016BD67208DF8000024206070C0 +:100B5000022300AA9A210620EFF72FFD002801D1D9 +:100B6000002016BD68208DF8000000206070022370 +:100B700000AA9A210720EFF720FD002801D10020CC +:100B800016BD69208DF8000000206070022300AAC5 +:100B90009A210720EFF711FD002801D1002016BD92 +:100BA000FFF77EFB002801D1002016BDDFF83809D1 +:100BB00001218170084616BD10B50FF6E810EFF759 +:100BC000B3FC0120FFF760FC002803D0FFF729FBEE +:100BD000002801D1002010BDDFF80C49A06A0128CF +:100BE00007DBE06A002804D1FFF72CFDA06A401E55 +:100BF000A062012010BD80B50120FFF745FC002850 +:100C000001D1002002BDFFF70CFB401E8041C04314 +:100C1000C00F02BD2DE9F0478CB000200290E0F734 +:100C200047FE05460120009002AB54229A2106207F +:100C3000EFF701FD002800F08F809DF8080000F01C +:100C40000F06032E00DB0226C0F302100830801BC3 +:100C50009DF80810C1F302110831891B821000EBC6 +:100C60005270C010A1EBC007FFB24FF000080DF1A9 +:100C7000080A0EE09DF80800000200F4E0609AF80F +:100C800001100843A0F2FF3003A941F8280008F141 +:100C90000108B04562DA08EB0704A01004EB5070BD +:100CA000C010A4EBC0004FEA40090220009002AB44 +:100CB00009F11402D2B29A210620EFF7BCFC0028F9 +:100CC0004AD09DF80800000200F4E0609AF8011094 +:100CD0000843A0F2FF3009A941F828000220009043 +:100CE00002AB09F12402D2B29A210620EFF7A3FC4D +:100CF000002831D09DF80800000200F4E0609AF866 +:100D000001100843A0F2FF3007A941F82800022093 +:100D1000009002AB09F13402D2B29A210620EFF71B +:100D20008AFC002818D09DF80800000200F4E0605A +:100D30009AF801100843A0F2FF3005A941F82800F5 +:100D40000220009002AB09F14402D2B29A2106209F +:100D5000EFF771FC00288DD1002056E0012E4FDB0B +:100D600003A8019005A8009007AB09AA31460DF130 +:100D70000A0000F04DF8C14CBDF80A00A084A06A3A +:100D8000012826DB206B012823D1606B002820D1AD +:100D9000EFF74FFB007D01280BD1B4F92400B5F823 +:100DA0007810884205DADFF844172020F1F7D0FFE9 +:100DB0000FE0EFF73EFB007D00280AD1B5F8760082 +:100DC000B4F92410884204DADFF820172020F1F764 +:100DD000BFFF00206063A07800280AD0039800902D +:100DE000059B079A0999DFF80807E1F757FD0020EE +:100DF000A070009603AB05AA07A909A8E1F7CFFDEB +:100E000024488169487F00224A770CB0BDE8F0870A +:100E10002DE9F04105460C460026DDF8188014E067 +:100E200058F8260000EE100AB8EEC00A10EE100ABC +:100E3000F2F768FE0022DFF8FC36F2F78BFEF9F7D6 +:100E40006BF91938C0192880761CB5F90070A642D4 +:100E5000E6DB002F01D500202880B5F9000090FBCB +:100E6000F4F028800120BDE8F08180B5052802D18A +:100E7000084600F002F8012002BD80B50278DFF8D4 +:100E800064168A7001780FF22470EFF74DFB012091 +:100E900002BD0000000000207CB504460020ADF833 +:100EA0000400FFF7FCFDEFF7C4FA0A21EFF77BFC23 +:100EB0000120009001AB54229A210620EFF7BBFBE2 +:100EC000002801D1002076BD9DF80400C0F3021077 +:100ED000C01D9DF80410C1F30211C91D821000EB62 +:100EE0005270C010A1EBC000C0B2450002200090BB +:100EF00001AB05F11402D2B29A210620EFF79BFB59 +:100F0000002801D1002076BD9DF80400207001AEBC +:100F1000707860700220009001AB05F12402D2B21B +:100F20009A210620EFF787FB002801D1002076BD2B +:100F30009DF80400A0707078E0700220009001AB72 +:100F400005F13402D2B29A210620EFF774FB002893 +:100F500001D1002076BD9DF8040020717078607189 +:100F60000220009001AB05F14402D2B29A21062082 +:100F7000EFF761FB002801D1002076BD9DF8040049 +:100F8000A0717078E0710FF23460EFF7CDFAFFF7DF +:100F900013FE012076BD0FF2AC610620F6F7CAB948 +:100FA0001CB50020ADF806008DF804000FF21860A3 +:100FB000EFF7BAFA002400E0641CDFF87C05032C8C +:100FC00012DA211809798DF806102018007A8DF8A8 +:100FD000070002230DF106029A210920EFF7EDFA2E +:100FE0000028E9D1002016BD012101700220FFF781 +:100FF0004BFA002801D1002016BDFFF712F9002896 +:1010000001D1002016BD0120009001AB00229A21E1 +:101010000920EFF710FB401E8041C043C00F16BDF2 +:1010200080B50FF2AC50EFF77FFA0220FFF7A0F97E +:10103000002801D1002002BDFFF732F9401E804197 +:10104000C043C00F02BD80B50FF29050EFF76CFAAD +:10105000DFF89404806A012801DB012002BD022030 +:10106000FFF712FA002801D1002002BDFFF7D9F8DE +:10107000401E8041C043C00F02BD00005423002029 +:1010800080B50220FFF700FA002801D1002002BD40 +:10109000FFF7C7F8401E8041C043C00F02BD2DE9D5 +:1010A000F04F8BB0044606A800210A460B460EC03E +:1010B0000846ADF8100009900A20009006AB0822FF +:1010C0009A210920EFF7B7FA002800F0498106A815 +:1010D000C179DFF81454002902D18279002A04D0A2 +:1010E000FF2907D182793F2A04D12978C171697813 +:1010F000817102E0297081796970417821709DF8D1 +:1011000018106170C178A1708178E1704179217106 +:1011100001796171C179A1718179E171417A21729D +:10112000007A60720120009006AB05229A21092006 +:10113000EFF781FA002800F013819DF8180000F005 +:101140000300A0720020E0726078000200F47C507E +:10115000217841EA0006E078000200F47C50A17892 +:1011600041EA000A6079000200F47C50217941EAEA +:101170000007E079000200F47C50A1790843ADF843 +:101180001200607A000200F47C50217A41EA0008E3 +:10119000E07A000200F47C50A17A51EA0009D346BB +:1011A00018D10A209AFBF0F0AAEB000A1FFA8AFA7B +:1011B000BBF1790F67DB05208DF8100061208DF8F9 +:1011C0001100022304AA9A210620EFF7F6F900285D +:1011D00059D1C5E0B9F1010F3BD143F69A10014650 +:1011E0008E4203D2834501DA87420ED305208DF863 +:1011F000100062208DF81100022304AA9A21062013 +:10120000EFF7DBF9002812D1AAE0BBF1140F0EDAD8 +:1012100005208DF8100060208DF81100022304AA2B +:101220009A210620EFF7C9F9002800F09980ABF168 +:101230001400062804D20AF1020A1FFA8AFA22E0F0 +:10124000ABF11A0005281ED20AF1010A1FFA8AFA28 +:1012500019E0B9F1020F16D140F6333001468E4243 +:1012600011D283450FDA87420DD205208DF8100088 +:1012700061208DF81100022304AA9A210620EFF7BD +:101280009CF900286CD05046000AE07084F802A057 +:1012900009A8039005A80290CDF80490CDF800802D +:1012A000BDF812303A465146304600F05BF80598DA +:1012B000A863014644F6206081422BDB2A6B012A99 +:1012C00028D10FF22030EFF72FF9002028630120FA +:1012D000009006AB02469A210620EFF7ACF90028F1 +:1012E0003ED001208DF810009DF8180000F0FD00A0 +:1012F0008DF81100022304AA9A210620EFF75DF968 +:1013000000282DD079492020F1F722FD01200BB0D3 +:10131000BDE8F08F8142F9DA286B0028F6D10FF290 +:10132000D020EFF701F901202863E86A0028EDD109 +:101330000120009006AB44229A210620EFF77BF9AA +:1013400000280DD001208DF8100092208DF811009A +:10135000022304AA9A210620EFF72FF90028D5D1FD +:101360000020D4E72DE9F0472DED068B86B004462A +:101370008A469146DDF85880179D00A81821EFF79E +:10138000EBFA9FED5C8BB0EE489AF0EE689A00277E +:10139000159EB6B2042E5AD29FED588B08E053EC3E +:1013A000182B00205749F2F7D5FB41EC180B7F1C96 +:1013B000B742F4DB032E08D153EC182B00204FF07A +:1013C0008041F2F7C7FB41EC180B2046F8F796FE78 +:1013D00053EC182BF2F7BEFBCDE900015046F8F7AD +:1013E0008DFE53EC182BF2F7B5FB41EC1A0B00AE57 +:1013F00086ED02AB4846F8F781FE53EC182BF2F766 +:10140000A9FB41EC180B86ED048BDDE900233E4877 +:101410003E49F2F79FFB06460F4653EC1A2B3C4819 +:101420003C49F2F797FB32463B46F9F717F8064678 +:101430000F4653EC182B38483849F2F78BFB02461D +:101440000B463046394606F09DFE41EC180B1AFA61 +:1014500084F4002C0FD04846F8F750FE06460F469D +:101460002046F8F741FE02460B463046394606F064 +:10147000D1FC41EC190B51EC190B0022284BF2F76F +:1014800069FB0022274BF8F7E9FF0122264BF9F709 +:1014900059F802D841F6583009E00022234BF8F7FA +:1014A00067FE02D240F6FC0001E0F8F735FE286046 +:1014B00051EC180B01221E4BF9F744F801D81F48D4 +:1014C00008E000221346F8F753FE01D2104601E06F +:1014D000F8F722FEC8F8000006B0BDEC068BBDE8A8 +:1014E000F08700003425002054230020BC45002054 +:1014F00011010208000000000000000000000000D0 +:101500000000F03F000010401361C3D32B6589BF7A +:101510005C2041F163CCDD3F24B9FC87F4DBA73FBD +:101520008089CC400094A1400058BB4000F8A14005 +:1015300065CDCD410000D03F9425002000CA9A3BE4 +:101540000FF224110920F5F7F5BE00003D3E55705D +:101550003D25642C4C6F3D25640000003D3E50311C +:10156000202564003D3E5032202564003D3E494E1A +:1015700054453132000000003D3E5054483D30009B +:101580003D3E73796E5F50726F78446174613D25A2 +:10159000640000003D3E4745500000003D3E474589 +:1015A0004F0000003D3E4745430000003D3E47459B +:1015B0002043552025782025780000003D3E4745F2 +:1015C0002053454C460000003D3E4C49475000002A +:1015D0003D3E4C49476F70656E0000003D3E4C49F2 +:1015E000474300003D3E4C75783E3D2564000000B9 +:1015F0003D3E4C75783C3D2564000000A90502087D +:101600004506020871070208A10702080000000051 +:101610005708020827090208000000000000000027 +:10162000A90502084506020871070208A107020879 +:1016300000000000BF0702082709020800000000A0 +:1016400000000000250A02089F0A0208B90B0208E0 +:10165000F70B020800000000150C02080000000053 +:10166000990E02086B0E0208A10F02082110020851 +:101670004710020881100208000000009F100208B5 +:1016800000000000000000000000000000B583B072 +:1016900000208DF804000120009001ABF422EC2121 +:1016A0000520EEF7C8FF002801D100200EBDDFF8AD +:1016B00030099DF804104909417701200EBD00B59D +:1016C00083B000208DF804000120009001ABF422CB +:1016D000EC210520EEF7AFFF002801D100200EBD60 +:1016E0009DF80400C0F38200DFF8F4188877012029 +:1016F0000EBD80B50021ADF80010F4218DF800106A +:10170000DFF8DC184A7F897F890001EB421140181D +:101710008DF80100022300AAEC210520EEF74DFF11 +:10172000401E8041C043C00F02BD00007CB506468C +:1017300000208DF8040004460546ADF8060001209F +:10174000009001ABF422EC210520EEF774FF002895 +:1017500001D1204676BD042E12D8DFE806F003063C +:10176000090C0F00012425460AE00124022507E0A8 +:101770000124032504E00124042501E002240525B9 +:10178000F4208DF806009DF8040000F01F0040EAE8 +:10179000441000F0E300A90001F01C0108438DF89B +:1017A00004008DF8070002230DF10602EC2105204C +:1017B000EEF703FF002801D1002076BDFFF766FF9A +:1017C000002801D1002076BDFFF779FF401E80413F +:1017D000C043C00F76BD10B588B001A81821EFF73F +:1017E000BBF81820009001AB8822EC210520EEF711 +:1017F00022FF002801D100204BE0DFF8E4179DF81C +:1018000005209DF8043043EA02220A8001AA9DF9CE +:101810000730947844EA03234B8092F90530147919 +:1018200044EA03238B809DF80B30947944EA032328 +:10183000CB809DF90D30147A44EA03230B819DF986 +:101840000F30947A44EA03234B819DF91130147BC5 +:1018500044EA03238B819DF91330947B44EA0323EC +:10186000CB819DF91530147C44EA03230B829DF94A +:101870001730947C44EA03234B829DF91930147D80 +:1018800044EA03238B829DF91B30927D42EA0322B6 +:10189000CA8208B010BD10B582B001200090DFF8F8 +:1018A0004437D022EC210520EEF7C5FE0446012C7A +:1018B0000AD1FFF790FF002804D00320FFF736FF7E +:1018C000002801D1002016BD204616BD80B5DFF8E6 +:1018D0001807012101720320FFF70BFF401E804112 +:1018E000C043C00F02BD10B5002802D0012812D09D +:1018F00025E0DFF8F44604F10C0000F05BFA002864 +:101900001DD12078002817D16078002814D1A07844 +:10191000002811D113E0DFF8D04604F10F0000F0E9 +:101920003BFA00280BD1E078002805D12079002867 +:1019300002D16079002802D02046002101720120E6 +:1019400010BD80B50020FFF7D4FE401E8041C0438B +:10195000C00F02BD80B50020FFF7CBFE401E8041C6 +:10196000C043C00F02BD000070B52DED048B86B0E2 +:101970009FED430B8DED020B8DED000B8DED040BF8 +:10198000F8F7B2FB41EC180BDFF8546653EC182B58 +:101990000020DFF85816F2F7DDF804460D463088CF +:1019A000F8F7ACFB0022DFF84836F2F7D3F802462E +:1019B0000B462046294606F0E5FB04460D46B6F9DF +:1019C0000200F8F791FB22462B46F2F7C3F8CDE967 +:1019D000020153EC182B0020DFF81816F2F7BAF8C2 +:1019E00041EC180B9FEDB19B3088F8F787FB53EC67 +:1019F000192BF2F7AFF802460B4651EC180B06F024 +:101A0000C1FB04460D463088F8F778FB53EC192BE0 +:101A1000F2F7A0F802460B4651EC180B06F0B2FBA9 +:101A200022462B46F2F796F804460D46B6F9040016 +:101A3000F8F75AFB22462B46F2F78CF8CDE9000165 +:101A4000DDE90223DDE90001F8F708FDF8F764FBA2 +:101A5000B061DDE90223DDE90001F8F7FFFC0022B7 +:101A6000DFF8943506F0D6F9CDE90401DDE904018B +:101A700006B0BDEC048BBDE87040E1F771BA000020 +:101A80000000000000000000F0B52DED048B87B0D1 +:101A900007469FEDBF0B8DED000B8DED040B8DED1B +:101AA000020BDFF83C65B069F8F71EFB0022DFF897 +:101AB0004C35F2F74FF80022DFF84435F8F7CEFC4A +:101AC000CDE900019FEDD48BDDE90023DDE90001C4 +:101AD000F2F740F804460D46B6F91000F8F704FB9B +:101AE00022462B46F2F736F853EC182BF2F732F871 +:101AF000CDE90401B6F90E00F8F7F6FADDE90023A6 +:101B0000F2F728F800224FF08043F2F723F8DDE9DE +:101B10000423F8F7A3FCCDE90401DDE90423002048 +:101B2000DFF8E014F2F716F804460D46B6F90C009B +:101B3000F8F7DAFA0022DFF8D034F2F70BF8224691 +:101B40002B46F8F78BFCCDE904019FEDB59BB6F968 +:101B50000A00F8F7C9FADDE90023F1F7FBFFDDE938 +:101B60000023F1F7F7FF53EC192BF1F7F3FF0446CD +:101B70000D46B6F90800F8F7B7FADDE90023F1F7EA +:101B8000E9FF22462B46F8F769FC53EC192BF1F7D5 +:101B9000E1FFCDE90001DDE9002351EC180BF1F77D +:101BA000D9FF0022DFF86434F8F758FC04460D46EC +:101BB000F088F8F7A3FA22462B46F1F7CBFFCDE9E0 +:101BC0000001DDE9002300200146E1F707FA68D0B3 +:101BD0003846F8F789FA02460B460020DFF8301441 +:101BE00006F0D0FACDE90201DDE904230020DFF898 +:101BF0002414F1F7AFFF02460B46DDE9020106F0BF +:101C0000C1FA0022DFF81034F1F7A4FFDDE9002368 +:101C100006F000F9CDE90201B6F91600F8F764FA0A +:101C2000DDE90223F1F796FFDDE90223F1F792FFE8 +:101C300000224FF07853F1F78DFFCDE90001B6F99E +:101C40001400F8F751FADDE90223F1F783FF53ECB2 +:101C5000182BF1F77FFFCDE90401DDE90023DDE971 +:101C60000401F8F7FBFB04460D46B6F91200F8F73D +:101C70003BFA22462B46F8F7F1FB0022DFF89C33B3 +:101C8000F1F768FFDDE90223F8F7E8FBCDE902018F +:101C9000DDE9020107B0BDEC048BBDE8F040E1F7DF +:101CA0005FB907B0BDEC048BF0BD00000000000080 +:101CB0000000203F2DE9504387B0044600200190EA +:101CC00000900146CDE90201CDE904012078617858 +:101CD000090141EA0030A17840EA11100090009813 +:101CE000FFF742FECDE90401E0782179090141EADC +:101CF0000030617940EA111001900198FFF7C4FEAD +:101D0000CDE90201DDE902012070DDE9020100B246 +:101D100000126070DDE902010014A0700020E07084 +:101D2000BF4ADDE904016426A6FB008906FB019990 +:101D3000C2E90089D2E900012071D2E9000100B2B4 +:101D400000126071012007B0BDE8508370B50446F1 +:101D5000A54D05F10C00FFF7ADFF0646287A0028D7 +:101D600005D1062229462046EEF72EFB0BE006227F +:101D700005F10C012046EEF727FB062205F10C01C8 +:101D80002846EEF721FB01202872304670BD000086 +:101D9000000000000000000080B503210091034610 +:101DA000F722EC210520EEF746FC401E8041C0439F +:101DB000C00F02BD80B5032100910346FA22EC2139 +:101DC0000520EEF738FC401E8041C043C00F02BD25 +:101DD00030B585B0002102910A460B46CDE90023BB +:101DE00001784278120142EA0131807841EA10100C +:101DF00002900298FFF7B8FDCDE90001DDE900018E +:101E00006422A2FB004502FB01558548C0E900455C +:101E1000012005B030BD0000000000000000003FC0 +:101E2000000000000000C03EF0B4012100226C4B15 +:101E30001C88002C2BD1B3F90240002C27D1B3F918 +:101E40000440002C23D1DC88002C20D1B3F90840B9 +:101E5000002C1CD1B3F90A40002C18D1B3F90C4066 +:101E6000002C14D1B3F90E40002C10D1B3F910405E +:101E7000002C0CD1B3F91240002C08D1B3F9144056 +:101E8000002C04D1B3F91640002C00D10A461C885E +:101E900044F63825AC4271D31C8848F6B905AC42EB +:101EA0006CD2B3F9024045F2F055AC4266DB47F222 +:101EB0003154B3F90250A54260DAB3F90450594ED7 +:101EC000B5425BDBB3F90450574EB54256DADD88B4 +:101ED00047F23056B54251D3DD884AF21146B54239 +:101EE0004CD2B3F90850514EB54247DBB3F9085014 +:101EF0004F4EB54242DAB3F90A504E4EB5423DDB81 +:101F0000B3F90A5041F64176B54237DA4A4DB3F992 +:101F10000C60AE4232DBB3F90C6044F25167BE4252 +:101F20002CDAB3F90E60454FBE4227DBB3F90E60E1 +:101F300040F24D47BE4221DAB3F91060404FBE4235 +:101F40001CDBB3F9106040F2E937BE4216DAB3F990 +:101F50001260B3F91260B3F914603A4FBE420DDB60 +:101F6000B3F9146042F21177BE4207DAB3F9166092 +:101F7000AE4203DBB3F91630A34200DB521CD2B2EF +:101F8000022A00D1002101700846F0BC704770B5EC +:101F900082B00C46002506281FD12B484069204EF0 +:101FA000D6E90023002B01D1002A05D0017F0029AA +:101FB0000BD0407A002808D100A829460160FFF71D +:101FC000F9FE054600A8FFF703FFD6E900012070DF +:101FD000D6E9000100B200126070284676BD00000C +:101FE00028730020447300204C2500200000103F7F +:101FF0000000503F0000E03E0000B4400000E03F21 +:102000000040EFC00000D03F0000F0400000F03F73 +:10201000000030410000303F006AB8400000B03F8F +:102020001874002048F4FFFF19FCFFFF56CDFFFF96 +:10203000C1E0FFFF78ECFFFFF0D8FFFF0CFEFFFFD1 +:1020400018FCFFFFD08AFFFF000000200FF20801FC +:102050000520F5F76FB9000097180208CD1802089F +:102060004319020855190208E71802084D1D020815 +:1020700000000000291E02088F1F02088D48836897 +:10208000DBB200F1160201780820EEF796BA894813 +:102090008368DBB200F1180201780820EEF78DBAF0 +:1020A000F0B4854B5C78002500E06D1CEDB28D42EC +:1020B0000ED22E5C7440082602E03C46E4B2761E46 +:1020C000F3D067002406F8D51C787C40E4B2F6E72C +:1020D000944201D1012000E00020F0BC7047CDE720 +:1020E000FEB504460527734D00200090062301AA83 +:1020F00029780820EEF7E3FA0646012E03D00FF206 +:10210000D410EEF711FA012EEED13846471E80B2F8 +:102110000028E9D001AFBA78022101A8FFF7C0FF7B +:10212000002807D07A7902210DF10700FFF7B8FFE8 +:10213000002805D10FF29410EEF7F6F90020FEBD4D +:10214000A888401CA880E9687A789DF8043042EAA3 +:10215000032241F217135A43921341F29413D21AF5 +:1021600001FA82F1E9602A693B79FF7843EA0723A3 +:1021700040F6C4177B439B1302FA83F32B614F4A4B +:10218000126A577F002F16D000B291FBF0F193FB3B +:10219000F0F00023EB602B61AB80217009B20912D3 +:1021A0006170A07000B20012E070B2F95600012810 +:1021B00003DB012002E00020FEBD1846207120460E +:1021C000DEF792FD3046FEBD30B583B0394CA368D2 +:1021D000DBB204F11A0221780820EEF7EEF90020B4 +:1021E0000090032301AA21780820EEF768FA05463B +:1021F000012D05D00FF2E400EEF796F928463EBD1A +:1022000001ADAA78022101A8FFF74AFF002801D1F9 +:1022100000203EBD6878A17808406178884201D1ED +:1022200001203EBD00203EBD22480021C160016169 +:1022300081802CE7012070477CB504460020207087 +:1022400006251C4EB368DBB206F11A02317808206D +:10225000EEF7B3F900200090032301AA317808209B +:10226000EEF72DFA01280ED02846451E012808DB7E +:10227000EEF7DFF81E21EEF796FA2846451E0128F4 +:10228000E0DA002076BD9DF80620022101A8FFF7C4 +:1022900007FF002808D1EEF7CCF81E21EEF783FAED +:1022A00003A0EEF741F9E8E70120207076BD0000B9 +:1022B0004352430018250020B825002000000020CC +:1022C0000FF220010820F5F735B8000054482D52D0 +:1022D0004632000054482D524631000054482D50DB +:1022E00046310000C92102082922020835220208CD +:1022F00000000000DF200208E120020800000000CA +:10230000392202080000000038B500200246DFF83C +:10231000C84403E004EB80018A63401C0928F9DB10 +:102320001046E066A066642020606060DFF8AC04C0 +:10233000A060B5EE000A84ED030A84ED040A84ED82 +:10234000050A84ED060A84ED070ADFF8940420628A +:1023500005206062A062104603E004EB80018A63FE +:10236000401C0928F9DB10466067A067E06704F1AC +:1023700080057C2201462846EFF78CF80C220021CC +:1023800004F12C00EFF786F8256731BD2DE9F04107 +:1023900006460F4690461C46DFF83C5485ED0B0A76 +:1023A000F1EE601AC5ED0C1AB1EE410A85ED0D0A89 +:1023B0000A2205F12C01286F00F018FA00F03EF80F +:1023C0001421022801D004280DD1A86F401CA86751 +:1023D00098FBF1F2904202DB0020E8670CE0E86F26 +:1023E000401CE86708E0082801D0102804D1E86FF5 +:1023F000401CE8670020A86796FBF1F0AA6F8242B4 +:1024000001DB0120686797FBF1F0E96F814201DB96 +:1024100002206867686F012803D0022801D00020DD +:102420006867696F080005D021700021A967E96716 +:10243000696701E000212170BDE8F0812DE9F043DA +:102440002DED048B87B09FEDA98ADFF88C43002027 +:1024500020666066E06E461CE666A76EDFF8845371 +:102460000A2F41DAD4F870900A220021484600F081 +:10247000D6F980460A220121484600F0D0F904EB43 +:10248000870106EB860292008A63012F2ADB98ED12 +:10249000000AD0ED000A30EE600A8DED030A98EDD7 +:1024A000010AD0ED010A30EE600A03AA82ED010AAA +:1024B000D8ED020A90ED021A70EEC10AC2ED020ACE +:1024C00005EB87009DED031ADDED031A21EE211ABD +:1024D00000EE001A00EEA01A80ED061A8A6B496B16 +:1024E000511AC163781CA0660A2E01DA03202867FE +:1024F000A06E0A28C0F2E280401EA0660A221146A1 +:10250000206F06F001FA85ED040A0A221146206FB9 +:1025100006F018FA85ED050A0A221146206F06F02A +:102520002FFA85ED060A002006E005EB8001D1EDCB +:10253000070A38EE208A401C0928F6DBF2EE040A6E +:1025400095ED041A81EE201A8DED001A95ED051A0D +:10255000C1EE208A00A8C0ED018A80EE209A80EDAD +:10256000029AE06E0A2805DB00986860C5ED028AD1 +:1025700085ED039A00260FE00A22C6F1090109B28F +:10258000206F00F04CF995ED031AD5ED020A95ED98 +:10259000010A00F0ADF8761C0A2EEDDB606A216EB0 +:1025A00088423ADAA06B2978002908D168660121AF +:1025B000297000996960C5ED028A85ED039AA16AC8 +:1025C000626E91420CDA697800290BD1A86601216C +:1025D000697000996960C5ED028A85ED039A01E092 +:1025E000002169702168AA6E821A914208D26A7825 +:1025F000002A05D00020A870E870012028674CE070 +:102600006A6E801A814246D22878002843D0002082 +:10261000A870E870022028673FE000986860C5ED68 +:10262000028A85ED039A002028706870A878002837 +:1026300001D10120A8709FED660A28EE000AB5EED0 +:10264000400AF1EE10FA03DC9FED620A28EE000A60 +:10265000D4ED020AB3EE041A60EE810AF4EE400AE9 +:10266000F1EE10FA07D5E878002806D1A06BE866ED +:102670000120E87001E00020E8706068A0F5FA70C1 +:10268000A16BEA6E891A884205D2E878002802D048 +:102690000420286701E00320286700200CE004EBF9 +:1026A0008001CA6B8A63082805DA05EB80010A6A93 +:1026B000CA614A6C0A64401C0928F0DB286F0128B3 +:1026C00006D00DD3032807D004D3042806D007E092 +:1026D000022006E0042004E0082002E0102000E0D0 +:1026E000002007B0BDEC048BBDE8F08300000000C3 +:1026F000D0ED001A31EEC00A3B4981ED000AD0ED61 +:10270000011A71EEE00AC1ED010AD0ED021A31EEB4 +:10271000C11A81ED021AB5EE400AF1EE10FA03D5A6 +:10272000B1EE400A81ED000AF5EE400AF1EE10FA32 +:1027300003D5B1EE600A81ED010AB5EE401AF1EE63 +:1027400010FA03D5B1EE410A81ED020A91ED000ABB +:102750002148D0ED030AB4EE600AF1EE10FA13D569 +:10276000D1ED010A90ED041AF4EE410AF1EE10FAEF +:102770000AD5D1ED020A90ED051AF4EE410AF1EE08 +:1027800010FA01D5012200E00022D0ED060AB4EED5 +:10279000600AF1EE10FA13D591ED010AD0ED070AA7 +:1027A000B4EE600AF1EE10FA0AD591ED020AD0ED0E +:1027B000080AB4EE600AF1EE10FA01D5012100E03A +:1027C0000021036ED2180266426E89184166704776 +:1027D00000007A4400007AC4C8F1002000004041A3 +:1027E0003333B33ED8CA0020C0FD00200388934293 +:1027F00001D30023038003885B1C03809BB29342B8 +:1028000001D300220280028802EB420300EB830026 +:10281000001D91EC030A80EC030A01207047B0F917 +:102820000030591A09B2002901D511FA82F109B212 +:1028300001EB410200EB8200001D70472DE9F041E1 +:1028400054220021DFF8AC0AEEF724FEDFF8A84A94 +:102850000C2200212046EEF71DFE1C22002104F16F +:102860001000EEF717FE1C22002104F12C00EEF7F9 +:1028700011FEDFF8885A002028644FF47A7201466E +:10288000DFF87C0AEEF706FE4FF47A720021DFF8DB +:102890004C0CEEF7FFFD0020A0646864DFF8406C8C +:1028A000B062F0623063A8647063B063DFF8347CB8 +:1028B0007863E864E0642865012068650020F063BF +:1028C000A8654FF0FF30E865286600206866306430 +:1028D000B863A866F8637064B064F0641C220146B3 +:1028E00006F15000EEF7D6FD0020E866082201460A +:1028F000281DEEF7CFFD2822002105F10C00EEF790 +:10290000C9FD42F2107028846884002028836883FF +:10291000E8600C2201463046EEF7BCFDDFF8FC0B08 +:102920007060DFF8FC0B30604FF0FF30308100202A +:102930002870A886E886288768873C220146DFF849 +:10294000140CEEF7A7FD00202065F066A0816065FD +:10295000A887E88770673067286705F18408282210 +:1029600005F10C014046EDF72FFDC4F8588000201A +:102970006867A8673864B067F0677864C5F8800056 +:10298000E86760662066E06501202067E066A06673 +:102990000020E067A0676067282201463846EEF70E +:1029A00079FD0C22002106F11C00EEF773FD0C22CC +:1029B000002107F12800EEF76DFD1022002106F13D +:1029C0000C00BDE8F041EEF765BD10B584B0DFF84E +:1029D000104B0C22214600A8EDF7F6FCFFF72EFF66 +:1029E0000C2200A92046EDF7EFFC1FBD2DE9F04FAA +:1029F0002DED0C8B83B00020029082460446DFF858 +:102A0000E45A95ED118AD5ED0E8AC5ED118ADFF8ED +:102A1000D06AD6ED109AC5ED0E9ADFF8E07897ED02 +:102A2000199AB8EE490ADFEDB70A80EE80AA86ED62 +:102A300010AAD7F84CB0F86DABEB0000FA30FA21D1 +:102A4000B0FBF1F201FB12091FFA89F9B9F14C0F41 +:102A500002DA786D012807D12046B887F887DFF8B9 +:102A600098080221C181AAE1D7F85880B8F1040F73 +:102A700032D3F4EE698AF1EE10FA2DD5F4EE4A9ACB +:102A8000F1EE10FA28D51AEE100AF1F73BF80246DB +:102A90000B46CDE9002318EE900AF1F733F8DFF882 +:102AA000842ADFF8843AF1F755F8DDE90023F7F7D7 +:102AB0005FFB11D29FEDDD0AB4EE40AAF1EE10FAF1 +:102AC0000ADBC6ED109AC5ED0E8A85ED118ADFF896 +:102AD00028080321C181A3E1D6ED0AAAC6ED0BAAFD +:102AE00096ED0DBA86ED0EBA484600EE100AB8EE25 +:102AF000400AD7ED110AC0EE800A97ED121A81EE56 +:102B0000001A2046B0627063F86D214621E0401C37 +:102B100080B2FA2800D12046DFF8E42702EB8002D9 +:102B2000D2ED001A71EEE01A96ED0A2A01EEA12A02 +:102B300086ED0A2ADFF8A42902EB8002D2ED001A02 +:102B400071EEC11A96ED0D2A01EEA12A86ED0D2A2D +:102B5000491C89B24945DADBD6ED0A0AC0EE80BAD3 +:102B6000C6ED0ABAD6ED0D0A80EE80CA86ED0DCA12 +:102B7000D6ED1FCAC5ED10CA97ED1D0AD7ED1E0A86 +:102B800030EE60DA86ED1FDA00F04CFB012803D14D +:102B90002046B887F88712E1B8F1000F0AD1F88F04 +:102BA000B98F10FA81F2052A04DB44185046B88721 +:102BB000F88705E0B8F1000F02D02046B887F88703 +:102BC00018FA84F0002832D19FEDA28B3CEE0B0A5C +:102BD00010EE100AF0F796FF53EC182BF0F7BAFF3F +:102BE0005246DFF8283CF7F7C3FA16D33BEEAA0AA1 +:102BF00010EE100AF0F786FF53EC182BF0F7AAFF3F +:102C00005246DFF80C3CF7F7B3FA06D3B3EE040AEA +:102C1000B4EE40DAF1EE10FA09D5B88F401CB8874F +:102C2000C7F860B0DFF8D0060621C181C7E0B88FD1 +:102C3000002810D08CEE0B0AF0EE080AB4EE600A01 +:102C4000F1EE10FA05D5032805D304195046B887CC +:102C500001E05046B88718FA84F000281DD1B7EE7D +:102C6000000AB4EE40AAF1EE10FA04D5DFF88806A7 +:102C70000721C181A3E09FED790AB4EE40AAF1EEED +:102C800010FA0ADBF88F022806D2401CF887DFF81A +:102C900068060821C18192E004195046F887B0EE19 +:102CA0006B1AF0EE4C0AB0EE4A0A4946A4B220462E +:102CB00000F034FB012808D1C6ED109A86ED0DBA5C +:102CC000C6ED1FCAC6ED0AAA79E09FED650AB4EE0B +:102CD00040AAF1EE10FA02DBDFF8440C30645046F3 +:102CE000B887B8F1000F0FD196ED100A87ED1A0AD8 +:102CF00085ED0F0AC6ED0CBA85ED0DCA86ED1EDA1C +:102D00004FE000BF00007A44B6EE008A00F030FACF +:102D1000012818D196ED100AF0EE000A20EE200AE4 +:102D200086ED100A4FF0010A6BEE880AC6ED0A0A1A +:102D30002CEE081A86ED0D1AC6ED0B0A86ED0E1A5A +:102D400085ED0E0A641C96ED100AD5ED0E0A70EEA4 +:102D5000200A60EE880AC7ED1A0A96ED0A1AD6ED27 +:102D60000B1A31EE211A21EE081A86ED0C1A96ED97 +:102D70000D1AD6ED0E1A31EE211A21EE081A85ED44 +:102D80000D1AB4EE600AF1EE10FA02D4BAF1010F96 +:102D900001D185ED0F0A3CEE8D0A20EE080A86ED82 +:102DA0001E0A204680B200F05DF800F09DFBF8603E +:102DB00000F03EF8C7F860B0012002903867029832 +:102DC000012802D10120288003E0DFF82C05C0890A +:102DD0002880A4B26C6085ED029AA5F80C90788FDB +:102DE000E881B06A2861706B6861306CA861306BF3 +:102DF000E861686B2862B86E6862C7F85CB0002052 +:102E000078667864B86478651022014606F10C0093 +:102E1000EEF740FB0C22002106F11C00EEF73AFB16 +:102E2000029803B0BDEC0C8BBDE8F08F0100404070 +:102E3000DFF8C804DFF8A816CA6B02614A6C426268 +:102E40008A6C8262CA6CC262826E4261096F0163DF +:102E500070470000000000000000E03F6766164079 +:102E60000100A0402DE9F0472DED068B82460020A1 +:102E70000146DFF86C46DFF88454BAF1000F1CD02D +:102E8000E66B721E02F00702521906F007035B1987 +:102E90001B791371AF6D7A1E0723B2FBF3F6C6EBF5 +:102EA000C606921B04EB8202B7FBF3F3C3EBC3032A +:102EB000FB1A04EB83031B6D136595ED1A8AB0EEC4 +:102EC000040AB4EE408AF1EE10FA08D494ED1B0A1D +:102ED000F0EE080AB4EE600AF1EE10FA02D5032211 +:102EE0002A8301E004222A83E66B06F007025219C6 +:102EF0002B8B1371024603E0032B00D1491C521C9B +:102F0000082A06DA531993F90430042BF4D1401C33 +:102F1000F5E780B210FA81F101EBD17149108142DD +:102F200002DA0420688301E003206883F0EE489A07 +:102F3000B7EE080AB4EE408AF1EE10FA02D5F7EEC9 +:102F4000089A08E09FED890AB4EE408AF1EE10FA83 +:102F500001DBF1EE029A19EE900AF0F7D3FD41EC95 +:102F60001A0B53EC1A2BDFF8480BDFF8481BF0F76D +:102F7000F1FDDFF8442BDFF8443BF7F76FFA8046AA +:102F8000894653EC1A2BDFF8380BDFF8381BF0F7C3 +:102F9000E1FD53EC1A2BF0F7DDFD02460B464046EF +:102FA000494605F0EFF8F0F7A7FE00EE100AD4ED61 +:102FB000010A20EE200A10EE100AF0F7A3FDDFF858 +:102FC000082BDFF8083BF0F7C5FDF0F795FE00EEA3 +:102FD000100A84ED110AB4F90800022805D1DFEDCA +:102FE0008F0A20EE200A84ED110AD4ED118A94EDA7 +:102FF000120A30EE289A84ED129A28EEA90ADFED23 +:10300000880A20EE200A84ED130AAF6D0720B7FB73 +:10301000F0F0C0EBC000381A04EB800080ED140A19 +:103020000020E866072F20D209E004EB800191ED33 +:10303000141A70EE810AC5ED1B0A401C80B2D5ED52 +:103040001B0A8742F1D201EE100AB8EE411AC0EE17 +:10305000810AC5ED1B0A12E004EB800191ED141A00 +:1030600070EE810AC5ED1B0A401CD5ED1B0A07282E +:10307000F2DBB1EE0C1AC0EE810AC5ED1B0A10EEB0 +:10308000100AF0F73FFD41EC100B9FED9EAB688BF3 +:10309000042853EC102BDFF8600C0BD1DFF86C1C0C +:1030A000F0F758FD53EC1A2BF7F7D8F9F0F724FE98 +:1030B00060670AE0DFF8681CF0F74CFD53EC1A2B50 +:1030C000F7F7CCF9F0F718FE6067606FF0F71AFDBC +:1030D000DFF8702CDFF8703CF0F73CFD8046894645 +:1030E0002068F0F70FFD42464B46F0F733FD80466F +:1030F000894618EE100AF0F705FD0022DFF8603C63 +:10310000F0F728FD02460B460020DFF8641C04F0AF +:1031100081FE42464B46F0F71DFDF0F7EDFD00EE57 +:10312000100A84ED1D0AD4ED1C0A70EE800AC4ED6D +:103130001C0A701CE063791CA965BAF1000F10D05D +:103140005044E0630AEB0100A86501EE10AAB8EE56 +:10315000411A01EE289A84ED129A41EE000AC4ED5C +:103160001C0ABDEC068BBDE8F08700000100904012 +:10317000F0B52DED028B0026D94F97ED108AD94876 +:10318000C06BF0F7BFFC4FF06632DFF8E83BF0F7BA +:10319000E1FC02460B4614461D4618EE100AF0F7F5 +:1031A000B1FC22462B46F6F7E3FF05D25348408F89 +:1031B000022801D3012617E09FED540AB4EE408A9D +:1031C000F1EE10FA10D597ED060ADFED510AB4EED4 +:1031D000600AF1EE10FA07DBDFED4E0AB4EE600A8A +:1031E000F1EE10FA00D5012697ED1B0AF0EE000A69 +:1031F000B4EE600AF1EE10FA0BD59FED470AB4EE7B +:10320000408AF1EE10FA04DB3C48408F032800D3DB +:1032100000263046BDEC028BF0BD00001EC47E3F90 +:103220000000704230B52DED048B0025AC4C3348C6 +:10323000408B03281ED294ED100ADFED370AB4EE5E +:10324000600AF1EE10FA15DB94ED0A0AF2EE040AB8 +:10325000B4EE600AF1EE10FA0CD594ED0D0ADFED34 +:10326000B30AB4EE600AF1EE10FA03D52248042145 +:10327000C181012594ED0D0AF3EE040AB4EE600A53 +:10328000F1EE10FA2ED49FEDAA8BD4ED0E0A30EE9B +:10329000200A10EE100AF0F735FC53EC182BF0F76B +:1032A00059FC0022DFF8D43AF6F762FF1AD394ED06 +:1032B0000A9A94ED0B0A39EE000A10EE100AF0F7A4 +:1032C00021FC53EC182BF0F745FC0022DFF8B03A54 +:1032D000F6F74EFF06D3B2EE040AB4EE409AF1EED2 +:1032E00010FA03D504480521C18101252846BDEC0B +:1032F000048B30BDC4F20020B0F80020ACF40020F4 +:10330000B0D400200000000000000C409A99993FC2 +:10331000010020420000C842010000402DE9F041B8 +:103320002DED028B08EE101A0026DFF8587AB96DE1 +:103330004018DFF8AC8102281AD398ED100ADFEDAF +:103340007E0AB4EE600AF1EE10FA11DB98ED0E0A77 +:10335000D8ED0D0A80EE200ADFED780AB4EE600A9F +:10336000F1EE10FA04DBDFF8201A0922CA810126E7 +:1033700002281CD39FED720AD8ED0E0A98ED0D1AA3 +:10338000C0EE810AF4EE400AF1EE10FA0FDBD8ED40 +:103390000B0A98ED0A1AC0EE810AF4EE400AF1EE2B +:1033A00010FA04DBDFF8E0190A22CA81012600289E +:1033B0001BD0D8F87800F0F7A5FB4FF03332DFF8D8 +:1033C000CC39F0F7C7FB02460B4614461D46D8F829 +:1033D0007C00F0F797FB22462B46F6F7C9FE04D295 +:1033E000DFF8A4090B21C181012698ED100ADFED59 +:1033F000550AB4EE600AF1EE10FA08DA97ED1A0AEF +:10340000DFED510AB4EE600AF1EE10FA1CDB98ED24 +:103410000D0ADFED4F0AB4EE600AF1EE10FA0BD49C +:1034200098ED0A0ADFED490AB4EE600AF1EE10FAEF +:1034300002D4788F022807D3788B032804D3DFF8CF +:1034400048090C21C181012698ED0C0ADFED400AE4 +:10345000B4EE600AF1EE10FA08D498ED1B0AF1EE12 +:10346000040AB4EE600AF1EE10FA15D5F86FD7F839 +:1034700080100818F6F738FE0022DFF81439F0F74C +:1034800069FB0122DFF8F438F7F75CF804D8DFF8BD +:10349000F8080D21C1811646B8EEC80A1148D8EDCA +:1034A000070AC0EE800AC0ED0A0AD8ED080AC0EE8D +:1034B000800AC0ED0B0AD8ED090A80EE800A80ED83 +:1034C0000C0A0C2200F1280107F1AC00ECF77CFF9C +:1034D0003046BDEC028BBDE8F081000098D800209A +:1034E00030F900208CFB00200020DFF8A818CA6B00 +:1034F00012F10A0F0FD29FEDC40AD1ED120AF4EEB9 +:10350000400AF1EE10FA06DAD1ED1C0AF4EE400A98 +:10351000F1EE10FA00DB0120704700000000354397 +:1035200000009042CDCCCCCCCCCCFC3F0000204263 +:10353000000000000000E03F010060400100A040EA +:1035400001007041010090400100804000001643DE +:103550000000C84318FC00202DE9F24F0446002566 +:1035600000F0C6FBDFF81C68284630677067B0675C +:10357000DFF81478F881204600F04CF930780528FF +:1035800005D10120706528463070F0863087706E56 +:10359000BDF8001010FA81F07066D6F84C80F06D1E +:1035A000804501D101207065D7F84C9009EB4900A6 +:1035B0004FEA800ADFF8E00721684AF800100AEBBA +:1035C000000B6068CBF80400A068CBF80800BDF8D9 +:1035D0000010204600F0A6F9F0619BED020ADBED39 +:1035E000010ADFF8B4075AF8000001EE100A21EED4 +:1035F000011A00EEA01A00EE001A11EE100AF0F700 +:1036000081FA41EC100BDEF741FE51EC100BF0F7A4 +:1036100073FB00EE100AD6F850A0BAF1000F0ED1DD +:10362000284604E007EB800181ED040A401C0728CE +:10363000F8D3F1EE0C0A60EE200AC6ED100A07EB93 +:103640008900D0ED040A70EE600A96ED101A30EE93 +:10365000811A86ED101A80ED040ADFF8401701EB9D +:10366000880181ED001A96ED110A30EE010A86ED0F +:10367000110A90ED0B0A71EE400ADFF824B70BEB4C +:103680008801C1ED000A80ED0B1A96ED120A30EEAA +:10369000200A86ED120A94EC031A87EC031AB08E06 +:1036A000401CB0863178012901D0032930D180B285 +:1036B000022822D2718B04291FD2B06D002857D165 +:1036C00097ED120A9FED951AB4EE410AF1EE10FA49 +:1036D00004D5F4EE410AF1EE10FA0BDAB9EE0C1A49 +:1036E000B4EE410AF1EE10FA42DBF4EE410AF1EEDB +:1036F00010FA3DD5012070653AE0272808D3F18EF5 +:10370000002903D010FA81F04B2801DB01207065FD +:1037100097ED120A00F0DCF93078012828D1F08EFC +:10372000002825D0318F002922D0032211FA80F001 +:103730003D2801DB01207065708B042800D3022234 +:10374000708F824201D201207065F06FC6F8800050 +:10375000F86D396E0818796E0818F0672846786693 +:103760003866F865FFF742F9054600203087708714 +:10377000306EA8EB0000FA30FA21B0FBF1F201FB49 +:10378000120196290AD10022B265B266F266F2628F +:1037900072613283B287F2870122326764290FD1C6 +:1037A0000020F062706108220146301DEDF772FEC4 +:1037B000002070837061012030670020B087F0879F +:1037C0005BF82800B86408F10100F064FA2801D120 +:1037D0000020F06409F10100F864072801D10020FD +:1037E000F8640AF101003065306F002808D006F156 +:1037F0008404282206F10C012046ECF7E5FDBC65A7 +:103800002846BDE8F28F00008096184B00C0624049 +:103810000000544070B50446DFF86C55AE6E95ED6F +:10382000000AD4ED000A70EEC00A01EE106AB8EE8C +:10383000C11A60EE810AF5EE400AF1EE10FA17D5D2 +:10384000D5ED1D0A30EE600A10EE100AF0F75AF9B5 +:1038500021F00041DFF84C25DFF8B034F6F772FEB6 +:1038600002D8E86D401CE865286868677042A86661 +:10387000EE6E95ED010AD4ED010A70EEC00A01EE7C +:10388000106AB8EEC11A60EE810AF5EE400AF1EE58 +:1038900010FA17D5D5ED1E0A30EE600A10EE100AA8 +:1038A000F0F730F921F00041DFF8F824DFF85C345C +:1038B000F6F748FE02D8286E401C28666868A8679C +:1038C0007042E8662E6F95ED020AD4ED020A70EEA2 +:1038D000C00A01EE106AB8EEC11A60EE810AF5EE78 +:1038E000400AF1EE10FA17D5D5ED1F0A30EE600A46 +:1038F00010EE100AF0F706F921F00041DFF8A424D9 +:10390000DFF80834F6F71EFE02D8686E401C6866C1 +:10391000A868E8677042286770BD00000100E040B9 +:103920000000A04030B4DFF8602490ED000AD2ED32 +:10393000000A30EE600AD0ED010A92ED011A70EE35 +:10394000C10A90ED021AD2ED021A31EE611AB5EEFB +:10395000400AF1EE10FA02DDF0EE401A01E0F1EE5D +:10396000401AF5EE400AF1EE10FA02DDB0EE602AE0 +:1039700001E0B1EE602AB5EE401AF1EE10FA02DD78 +:10398000F0EE412A01E0F1EE412A71EE821A71EE69 +:10399000A21AB5EE400AF1EE10FA01DCB1EE400ACF +:1039A000DFF8F03393ED032A32EE000A83ED030AC9 +:1039B000F5EE400AF1EE10FA01DCF1EE600A93ED4B +:1039C000040A30EE200A83ED040AB5EE401AF1EE47 +:1039D00010FA01DCB1EE411A93ED050A30EE010A4E +:1039E00083ED050A93ED060A30EE210A83ED060AFF +:1039F00093ED070AD0ED000A30EE200A83ED070AA6 +:103A000093ED080AD0ED010A30EE200A83ED080A92 +:103A100093ED090AD0ED020A30EE200A83ED090A7F +:103A2000DFF86003006D002810D1002006E0DFF809 +:103A3000784304EB8004C4ED001A401C0F28F6D331 +:103A4000B2EE0E0A21EE800A82ED140A9089DFF8A8 +:103A5000584304EB800595ED000A31EEC00AD2ED23 +:103A6000140A30EE200A82ED140A04EB8004C4ED3F +:103A7000001AF2EE0E0A80EE200A83ED1B0AF5EE24 +:103A8000000AB4EE600AF1EE10FA04D5536D13FA91 +:103A900081F1516501E000215165401C908180B2A7 +:103AA0000F2801D100209081506D30BC704700007C +:103AB000F0164850FC18E93F3411363CBD52DABFCD +:103AC000BBB88D06F016B83FB8ED221C1818783F29 +:103AD00070B52DED048BB0EE408AF0EE608A9FED5C +:103AE000A19AA84E708B042801D3B0EE009AB5EECF +:103AF000408AF1EE10FA07DBF5EE408AF1EE10FA9B +:103B000002D5708F401C70873078002806D00228BC +:103B10007DD040D3032800F0A380E5E019EE100A21 +:103B2000EFF7F0FF41EC100B53EC102B00209F49F6 +:103B3000F6F794FC41EC190B18EE100AEFF7E2FFD0 +:103B400002460B4651EC190BF6F7FCFC11D818EEA7 +:103B5000900AEFF7D7FF02460B4651EC190BF6F728 +:103B600007FB06D2B08E1028C0F0AF800020B086D0 +:103B7000ABE0F06C8A4951F8200000EE100A8C4846 +:103B8000D0ED010AB4EE600AF1EE10FA40F1AC801B +:103B900080ED010AA8E0F06C814951F8200000EEA8 +:103BA000100A8348D0ED000AF4EE400AF1EE10FA54 +:103BB00001D580ED000AB7EE000AB4EE408AF1EEBE +:103BC00010FAC0F29180F4EE408AF1EE10FA40F162 +:103BD0008B80B08EF0860020B08619EE100AEFF7C9 +:103BE00091FF02460B460020724904F0CBFA0246D0 +:103BF0000B4614461D4618EE900AEFF783FF224647 +:103C00002B46F6F7B5FA22D3022030706CE019EE9D +:103C1000100AEFF777FF41EC100B0020654953ECD9 +:103C2000102B04F0AFFA41EC190B18EE100AEFF765 +:103C300069FF53EC192BF6F785FC55D818EE900A5E +:103C4000EFF760FF53EC192BF6F792FA4CD20320F2 +:103C50003070F06C524951F820005549486043E0FB +:103C6000F06C4F4951F8200000EE100A5048D0ED9A +:103C7000010AB4EE600AF1EE10FA01D580ED010AF6 +:103C80009FED3D0AB4EE408AF1EE10FA2CD5F4EE29 +:103C9000408AF1EE10FA27DBB08E30870020B08624 +:103CA00018EE900AEFF72EFF02460B4614461D460B +:103CB00019EE100AEFF726FF00223C4BF6F7CEFB79 +:103CC00022462B46F6F754FA0CD2012030703848C1 +:103CD000016871674168B167F16C314A52F821108F +:103CE000016001E0002030703078BDEC048B70BDC5 +:103CF00024480078704700009A999999002804D0C8 +:103D00002149896D2822EFF731B970479999C93F48 +:103D10001C48816D002901D1808F704700207047B9 +:103D20009999B93F17480021016501834183052115 +:103D30000170002181658166C166C1624161818730 +:103D4000C18770477B14AE47E17A743F002806D0E4 +:103D5000104942684A6002680A6000890881704719 +:103D600000004E40000000000748406D7047000012 +:103D70000000F03F6666E63FFEFF7FBF0000444064 +:103D800000003440ACF40020B0F800203333D33FBF +:103D90000000E03F30F90020C4F20020B0D4002041 +:103DA00098D800209B99999918FC002000001C408D +:103DB00020FE002000001CC000B585B002460FF2B6 +:103DC000140100A8DFF71AF900A8EFF764FD05B0A9 +:103DD00000BD00004F45256400000000B0F5803FA5 +:103DE0005EDBB0F1807F35DBB0F1805F15DBB0F1D9 +:103DF000804F0CDBDFF8341C884202DB4BF20450AE +:103E0000704701160FF2F802895C090211E0811572 +:103E10000FF2EC02895CC9010BE00FF2E401B0F192 +:103E2000806F03DB0215515C890102E08214515C52 +:103E3000490190FBF1F25118491C491090FBF1F235 +:103E40005118491C491001FB01F2904200DA491E49 +:103E5000084670470FF2A801B0F5801F0ADBB0F5E5 +:103E6000800F03DB0214515C09010DE08213515CE9 +:103E7000C90009E0B0F5802F03DB0213515C890013 +:103E800002E08212515C490090FBF1F25118491C8A +:103E9000491001FB01F2904200DA491E08467047C2 +:103EA000FF2823DD0FF25801B0F5805F0BDBB0F582 +:103EB000804F03DB0212515C491C10E08211515CFF +:103EC0004908491C0BE0B0F5806F04DB0211515C1E +:103ED0008908491C03E08210515CC908491C11FB88 +:103EE00001F2904200DA491E08467047002804D4C7 +:103EF0000FF20C01405C000970474FF0FF30704733 +:103F00000010161B2023272A2D30323537393B3D30 +:103F10004041434547494B4C4E50515354565759D5 +:103F20005A5B5D5E60616263656667686A6B6C6D53 +:103F30006E707172737475767778797A7B7C7D7E1A +:103F400080808182838485868788898A8B8C8D8E08 +:103F50008F9090919293949596969798999A9B9B0F +:103F60009C9D9E9FA0A0A1A2A3A3A4A5A6A7A7A82D +:103F7000A9AAAAABACADADAEAFB0B0B1B2B2B3B45A +:103F8000B5B5B6B7B7B8B9B9BABBBBBCBDBDBEBF96 +:103F9000C0C0C1C1C2C3C3C4C5C5C6C7C7C8C9C9DB +:103FA000CACBCBCCCCCDCECECFD0D0D1D1D2D3D327 +:103FB000D4D4D5D6D6D7D7D8D9D9DADADBDBDCDD7D +:103FC000DDDEDEDFE0E0E1E1E2E2E3E3E4E5E5E6D9 +:103FD000E6E7E7E8E8E9EAEAEBEBECECEDEDEEEE3C +:103FE000EFF0F0F1F1F2F2F3F3F4F4F5F5F6F6F7A1 +:103FF000F7F8F8F9F9FAFAFBFBFCFCFDFDFEFEFF11 +:104000002DE9F04199B00546144620461422EEF7FA +:10401000ADFF00210A4611E0142055F8213000AF11 +:1040200000FB067747F8223000AF00FB027040F833 +:104030002630761C491C052EEEDB521C052A01DABF +:104040001646F8E70021142000E01946052980F201 +:104050008A8000AA00FB012252F821700D464B1CF9 +:104060001E4606E0CEF1000CE04501DA3546774603 +:10407000761C052E10DAB846B8F1000F01D5C8F14C +:1040800000080DF1000C00FB06CC5CF821E0BEF14D +:10409000000FE7D4F446E7E78D4218D000260CE085 +:1040A00052F826700DF1000C00FB05CC5CF826E000 +:1040B00042F826E04CF82670761C052EF0DB54F80A +:1040C000217054F8256044F8216044F825701E469C +:1040D00014E0002D11D052F82650AD0142F82650C0 +:1040E00052F82150AD110FD052F8265052F82170DD +:1040F000BF1195FBF7F542F82650761C052E52F8B5 +:104100002150E6DB002D02D14FF0FF3046E054F89D +:10411000216096FBF5F544F821501D461EE057F846 +:1041200026E052F826804FEAE8084FEAEC0C0CFB38 +:1041300008FCAEEBAC1C47F826C0761C00AF00FBB9 +:10414000057757F821C0052EE9DB54F8256054F8AF +:1041500021700CFB176644F825606D1C052DBFF619 +:1041600074AF1E46EAE7042113E054F8210001EB86 +:10417000810200AB03EB820252F8262054F826306D +:104180005A43A0EB223044F82100761C052EECDBCC +:10419000491E002901D44E1CF8E7002019B0BDE8E3 +:1041A000F0812DE9F04186B000252E462C462346AD +:1041B00003AF9C469E469846A7E8005100AFA7E88B +:1041C00000511F4604E0664501DB66463B467F1C06 +:1041D000032F11DA002F04D10668354643461C46EA +:1041E000F5E70FF28C0C17F90CC050F82CC0AC4559 +:1041F000E9DB65463C46EAE703AD012645F8236066 +:1042000045F82460464601E0761C76B2032E04DAB7 +:1042100055F82670002FF7D101960094029343467B +:104220000EE0AF1807EB860706EB460C01EB8C0C93 +:104230005CF824C0C7F804C0761C032EF1DB5B1CBD +:10424000032B10DA00AC54F823400FF2240C14F9BD +:104250000C5050F825601D01AE50012E01DA464683 +:10426000AE504646E9E7404606B0BDE8F0810000A2 +:10427000000305002DE9F24F98B0014602A818226C +:10428000EEF774FE002101E0491C49B2032913DA5C +:10429000002004E0002342F82030401C40B20328F4 +:1042A000F2DA0C220EAB12FB01328142F2D14FF452 +:1042B000804342F82030F0E70020019024E00C22F7 +:1042C0000EA912FB001252F8241052F8253006FBFA +:1042D00001F70BFB03FCA7EBEC07BF1142F82470BE +:1042E0004FEAEB07734307FB0131891142F82510B0 +:1042F000401C0328E3DB02A808A91822EEF736FECB +:104300000198401C40B201900198062880F2DE809E +:1043100001200024054602270399002900D54942BF +:10432000049A002A00D55242914202DA38460546E4 +:10433000012702A951F82000002800D54042069923 +:10434000002900D54942884202DA012402250027CB +:104350000FF28C1004EB440101EB000805EB450162 +:1043600001EB000915F8090002A951F8200014F822 +:10437000081002AA52F82110401A461015F8080039 +:1043800002A951F8200000904FF00A0A90FBFAF0C1 +:1043900096FBFAF1404301FB0100FFF71FFD0AFB0A +:1043A00000FBBBF1000F11D0300000D540420003EC +:1043B00090FBFBF000F580504FEA600A5046FFF793 +:1043C0000DFD064606FB0BF0801002D14FF0FF30CA +:1043D00082E00099090391FBF0FB15F8090002A99E +:1043E00051F8200014F8081002AA52F8211088424F +:1043F00001DACBF1000B0BFB0BF08011009008A849 +:1044000002A91822EEF7B2FD17F80800014602AA29 +:1044100052F821107143891117F8092002AB53F8A3 +:1044200022200BFB02F2A1EB622108AA42F8201025 +:1044300017F8091002AA52F820000BFB00F052F8FE +:1044400021207243921102EB602008AA42F8210059 +:1044500015F8080002A951F8200006FB0BF189119C +:104460004843011214F8080002AA52F820000AFB7F +:1044700000F0C1EB203015F8092053F82220009BF2 +:104480005A4300EB223014F8082008AB43F822000E +:1044900015F8090002AA52F820000AFB00F001EB0F +:1044A000203014F8081052F82110009A514300EB04 +:1044B000213015F8091008AA42F8210015F8080063 +:1044C00008A9002241F82020104612E7189A0EA9E8 +:1044D00002A8FFF766FE002019B0BDE8F08F0000CB +:1044E000000102010304020405000000F0B4DFF83B +:1044F000382C02F59A7191F9013092F93441012C6E +:104500001CDB5C1E64B2002C01D5143464B204EBD5 +:10451000440502EB8504E56C8668AD1BA66C476814 +:10452000F61B646C0768E41B764304FB046405FB1C +:104530000544B4F5C87F01DA00202DE003EB430405 +:1045400002EB8403443370C870C34878401C487041 +:1045500040B2142801DB0020487092F83401401C5E +:1045600082F8340140B2142802DB142082F83401AE +:1045700092F934010A2290FBF2F302FB13000028A7 +:1045800009D191F9010090FBF2F102FB1100401EEC +:104590008041C00F00E00020F0BC7047DFF8880BBE +:1045A00090F934110A2291FBF2F1012903D1002183 +:1045B00080F834117047114680F8341170472DE9A6 +:1045C000F04794B005460E460027DFF85C8B98F95B +:1045D000344198F83501A0EB04094FFA89F9B9F193 +:1045E000000F03D509F114094FFA89F9BA4624E0FE +:1045F00009EB490008EB8000A968C26C891A6A6857 +:10460000836CD21A2B68406C181A524300FB0020AE +:1046100001FB0100FFF7E2FB00A941F82A00C719DE +:1046200009F101094FFA89F94846142801D14FF0E0 +:1046300000090AF1010A4FFA8AFAA245D8DB97FB72 +:10464000F4F030600022134607E000A951F823106F +:10465000091A01FB01225B1C5BB298F934118B42F1 +:10466000F3DB92FBF1F014B0BDE8F0872DE9FE41D9 +:1046700000ACE0C9E0C40C39002635462C4627467C +:104680000AE053F827C052F827E051F82780AEEB34 +:10469000080E0EFB0C667F1C032FF2DB711306EB7A +:1046A0009141891322460FE053F822604E4300AF38 +:1046B00057F822704FEA663C06EB9C4607EBA6369D +:1046C00000AF47F82260521C032AEDDB21460CE0C4 +:1046D00050F8212000AE56F82160921B53F821605B +:1046E00002FB065502FB0244491C0329F0DB002CA7 +:1046F00002D140F2011008E0280000D540428512A6 +:1047000005FB05F090FBF4F000B2BDE8FE812DE959 +:10471000F0419AB0144600220AAD164602E045F870 +:104720002260521C0F2AFADB324606E005AD45F83E +:10473000226000AD45F82260521C052AF6DB3246A5 +:104740000AAE07E00FF65825555753F8227046F881 +:104750002570521C062AF5DB0025209A1CE005EB8B +:1047600045060FF64427F6199E5730F9157002EBEF +:10477000051C0CEB830CDCF814C00CFB07F70DF1E7 +:10478000280C4CF82670002F02D0BF124CF826706F +:104790005B1C032BE3DB6D1C022D01DA0023F8E721 +:1047A0000025219B00AF04E053F8256047F8256001 +:1047B0006D1C032DF8DB00250C261BE002EB051C0D +:1047C0000CEB830CDCF814C051F823E054F8238080 +:1047D000AEEB080E0EFB0C775B1C032BEEDBBB1263 +:1047E00030F915707B4300AF07EB8507FB606D1C4C +:1047F0006DB2B61C022D15DA1368002B02D14FF0F2 +:10480000FF3025E030F91570A7F58067BF0497FBEE +:10481000F3F337467FB20DF1280C4CF82730002710 +:104820003B46DAE705AA00A90AA8FFF7E9FB00253D +:1048300022980AE005A951F8251040F8251054F8EF +:104840002520511840F825106D1C032DF2DB0020A7 +:104850001AB0BDE8F0812DE9FE47002633461C461C +:104860001D4638C00C3802E041F823405B1C062B83 +:10487000FADB234602E042F823405B1C032BFADB01 +:10488000DFF8A44804F59A735D7894F83471EF1B4F +:104890007FB2002F01D514377FB2B44617E050F82D +:1048A00025E007EB470804EB880808EB8508D8F8F3 +:1048B0004480C64440F825E06D1C032DEFDB7F1CCF +:1048C0007FB23D46142D00D137460CF1010C94F90E +:1048D00034514FFA8CFCAC45354607DAEDE750F819 +:1048E00025C09CFBF7F740F825706D1C94F93471D6 +:1048F000032DF4DB5B78DB1B5BB29C46BCF1000F45 +:1049000003D50CF1140C4FFA8CFCB6461BE00CEBF3 +:104910004C0804EB880808EB8508D8F8448050F868 +:104920002590A8EB090808FB08666D1C032DEEDB3B +:104930000CF1010C4FFA8CFC6546142D01D14FF09F +:10494000000C0EF1010E4FFA8EFEBE4501DA002575 +:10495000ECE796FBF7F6002B01D514335BB200278A +:104960000FE052F825E00DF1000858F8258009FB0A +:1049700008F80EEB680E42F825E06D1C032DF0DB05 +:104980007F1C94F934517FB2AF424CDA002510E01D +:1049900003EB430C04EB8C0C0CEB850CDCF844C0F3 +:1049A00050F825E0ACEB0E0C0DF1000E4EF825C0D2 +:1049B0006D1C032DECDB5B1C5BB21D46142D00D17E +:1049C00000230025AC4618E06DB251F825800DF1AA +:1049D000000959F82C900DF1000A5AF82EA00AFB94 +:1049E000098841F825800EF1010E6D1C4FFA8EFEEC +:1049F000BEF1030FE8DB0CF1010CBCF1030F01DA8F +:104A0000E646F3E74FF0000C654606E00DF1000EB8 +:104A10005EF825E00EFB0ECC6D1C032DF6DB0025A9 +:104A2000ACEB0609AAE70020BDE8FE8710A8FE7FD0 +:104A30002DE9F043A1B00446002003904FF0FF356C +:104A4000064604A8314601600BAA1AA908A8FFF778 +:104A500002FF002800F1B5800EA91AA8FFF70AFC92 +:104A600040B2002800F1AD800DF110080120A8F837 +:104A70000200DFF8B47605A802900BA801900EA8FA +:104A800000901AAB08AA391D04A8FFF740FE0028C1 +:104A900000F1978003A905A8FFF791FD03991A2952 +:104AA000C0F28F80652904DA64214843039990FBA2 +:104AB000F1F097F9341142F21072129B93FBF1F36B +:104AC0005343DDF80CC093FBFCF393FBFCF9169BFE +:104AD00093FBF1F15143624691FBF2F191FBF2F14C +:104AE0002160C4F80490A060039A226132462275C6 +:104AF0003A6C22733346022201E0521E52B2002A5F +:104B00001AD497F934C14FF00A0E9CFBFEFCACF1AD +:104B1000010C0CEB4C0C4FFA8CFCBCF1070F01DBC9 +:104B20004FF0060C42FA8CFC07EB8C0CDCF810C042 +:104B30008C45E2DA531C5BB2012B29DB1A46521E6C +:104B400052B201E0521E52B2002A11D44FF0FA0CB8 +:104B500091FBFCFCBCF1050F01DB4FF0050C07EBF2 +:104B6000820EDEF834E0F4448445EBDB531C5BB288 +:104B7000002A44D407202075386C834208DB3B644C +:104B800018462073381D05A91CC91CC0012067E008 +:104B90004FF48060A8F8020005A802900BA80190CD +:104BA0000EA800901AAB08AA391D04A8FFF7AFFDA4 +:104BB000002806D403A905A8FFF701FD03990129E0 +:104BC00001DA28464CE0A06003992161B9F57A7FAB +:104BD00045DD396C002901D1B44601E0A1F1010C99 +:104BE0004FFA8CFC07EB8C01496B01EBD1714FF450 +:104BF000C87299FBF2F202EB6101814202DA6FF0B6 +:104C000002002DE017AB08AA05A9381DFFF72EFDFD +:104C1000B446324605E049428D4201DA0D469446DB +:104C2000521C032A06DA0EA901EB8201496A002907 +:104C3000F1D4F1E7BCF1000F00D10626BCF1010F61 +:104C400000D10526BCF1020F00D103262675E72806 +:104C500003DA381D05A91CC91CC0012000E030463C +:104C600021B0BDE8F083DFF8C0140A68002A02D141 +:104C70006FF002007047002802D16FF07F0070478C +:104C8000002206E001EB82035B689B0020F81230F3 +:104C9000521C032AF6DB0020704710B4DFF888149A +:104CA0000A68002A02D16FF0020013E0002802D146 +:104CB0006FF07F000EE0002209E030F912305C1046 +:104CC00003EB94739B1001EB82046360521C032A74 +:104CD000F3DB002010BC7047DFF84C0401680029AA +:104CE00002D16FF002007047006C7047DFF8381493 +:104CF0000A68002A02D16FF002007047042802D32C +:104D00006FF07F0070470864002070472DE9F04184 +:104D10008AB00C4615460026DFF80C743968002965 +:104D200002D16FF002007DE0002803D0002C01D0FA +:104D3000002D02D16FF07F0074E0314637E0DFF8DC +:104D4000F02301EB410302EB430C0A23BCF91CE006 +:104D5000B0F900801EFB08FE9EFBF3FEBCF91EC0EE +:104D6000B0F902801CFB08FC9CFBF3FCF44401EB53 +:104D7000410E02EB4E02B2F92020B0F904E012FB22 +:104D80000EF292FBF3F262444FF47A7392FBF3F269 +:104D900000AB43F8212000AA52F82120531002EB67 +:104DA00093729210E24B03EB81031A63491C0329AF +:104DB00013DA30F9112047F6FF739A4202D0DB4B29 +:104DC0009A42BCD132463A64D94A02EB8102126B54 +:104DD000920000AB43F82120DDE7E348FFF786FBB4 +:104DE000002803D003A8FFF723FE064600200AE0B0 +:104DF00000A951F8201007EB80025268A1EB820154 +:104E000024F81010401C0328F2DBFFF765FF286030 +:104E1000002E06D516F1030F01D1FFF7BFFB0020CE +:104E200000E030460AB0BDE8F08110B5BE4C201D50 +:104E300000210A460B460EC00FF234313022EEF745 +:104E400095F80020206484F8340184F835010120AD +:104E50002060002010BD80B520EE000A00EEA00A00 +:104E600001EE010A10EE100AEEF74CFE41EC100BB9 +:104E7000DDF70CFA51EC100BEEF73EFF00EE100AD6 +:104E800001BD000070B52DED088B8CB005460E46B7 +:104E90001446002D00F0A380002E00F0A080002C0E +:104EA00000F09D8095ED021AD5ED010A95ED000AFE +:104EB000FFF7D1FFB0EE408A96ED021AD6ED010A57 +:104EC00096ED000AFFF7C7FF9FED9A9AB4EE498A64 +:104ED000F1EE10FA00F18380B4EE490AF1EE10FA17 +:104EE0007DD4002009AA16E005EB8003D3ED000A6B +:104EF000C0EE880AF1EE600A01EB8001C1ED000A04 +:104F000006EB8001D1ED000AC0EE800A02EB8001C1 +:104F1000C1ED000A401C03A90328E5DB92ED010A5C +:104F200091ED028A92ED021AD1ED018A68EE810AB2 +:104F300048EE400ACDED000ADDED090A68EE200AD0 +:104F4000DDED031A41EEC10A00ADC5ED010A9DED8C +:104F5000031A21EE001A9DED090A08EEC01A85ED2C +:104F6000021A9DED000AFFF776FFB4EE490AF1EE52 +:104F700010FA34D4002008E005EB8001D1ED000ADE +:104F8000C0EE800AC1ED000A401C0328F4DB95ED59 +:104F9000020AD5ED019A69EE880A40EE680ACDED65 +:104FA000060ADDED030A60EE200A9DED000A40EEE0 +:104FB000480A06ADC5ED010A9DED000A20EE281A4B +:104FC0009DED030A09EEC01A85ED021A9DED060A51 +:104FD000FFF741FFB4EE490AF1EE10FA02D56FF087 +:104FE0007F007DE0002008E005EB8001D1ED000AA4 +:104FF000C0EE800AC1ED000A401C0328F4DB9FEDDF +:105000004EAB9FED4FBB9DED000AD5ED010A70EE52 +:10501000200A9DED060A39EEC00ADEF709F810EE07 +:10502000100AEEF76FFD53EC1B2BEEF793FD53ECDC +:105030001A2B02F0EFFEEEF75FFE2060B1EE680A79 +:10504000DEF72EF8B1EE400A10EE100AEEF75AFD28 +:1050500053EC1B2BEEF77EFD53EC1A2B02F0DAFE1D +:10506000EEF74AFE60609DED030AB1EE400ADEF7FE +:1050700017F810EE100AEEF745FD53EC1B2BEEF778 +:1050800069FD53EC1A2B02F0C5FEEEF735FEA06069 +:10509000B1EE480AB5EE400AF1EE10FA12D59FEDD6 +:1050A0002A0AD4ED010A70EE600AC4ED010AF4EE9A +:1050B000400AF1EE10FA05D59FED2C0A30EE800A79 +:1050C00084ED010A94ED000AB5EE400AF1EE10FA03 +:1050D00005D5DFED260A30EE200A84ED000A002017 +:1050E0000CB0BDEC088B70BD10B5114C174820609A +:1050F00017482061174860611748A0601748E060B2 +:10510000174860601748A0611222002104F11C00BA +:10511000ECF7C0F942F21070A083A084A085024889 +:1051200000210160084610BD90F000200080FFFFC4 +:1051300054FC0020BD378635182D4454FB2109400E +:105140000000000000806640000034C32B4E0208BF +:10515000D94C0208ED4C0208674C02089B4C02082F +:105160000D4D0208854E020884FC00200000B44367 +:105170002C010000F4010000E8030000C80000005A +:105180002C010000F4010000C80000002C01000008 +:10519000F40100001E000000140000000F000000D9 +:1051A000000102050609000003070A04080B0000BD +:1051B000002303604360C2608160194603E000EB96 +:1051C00041021382491C82689142F8DB7047024613 +:1051D00008469168022900DA704730B453681468B1 +:1051E0008C4208DA591C516002EB430108821168B5 +:1051F000491C116035E08B4201DB00215160516890 +:105200004B1C536002EB4101088200210B4606E073 +:1052100002EB4304B4F9104001FA84F15B1C94687A +:10522000A342F5DB91FBF4F100231C4607E002EBFF +:105230004405B5F910504D1B05FB0533641C9568FA +:10524000AC42F4DB93FBF5F3D2689A4202DB0846EA +:1052500000B206E0401A9A1A504390FBF3F0081887 +:1052600000B230BC7047016000218180704770B48B +:10527000B0F90420134604680D461E1BB54202DB3C +:10528000E318AB4202DA8180084600E0104670BCA9 +:105290007047F8B504460D46002C01D0002D02D110 +:1052A0006FF07F00F2BD244ED6F8C000002802D176 +:1052B0006FF00200F2BD002712E034F91710C7EBBF +:1052C000C70006EBC000FFF782FF25F81700014674 +:1052D00006EBC700A830FFF7CAFF25F817007F1CB0 +:1052E000032FEADB0020F2BD38B50024124D11E097 +:1052F0000FF2540050F824201421C4EBC40005EB35 +:10530000C000FFF755FF032105EBC400A830FFF7ED +:10531000AAFF641C032CEBDB0120C5F8C0000020B1 +:1053200032BD064806490160064941600248002135 +:10533000C0F8C01008467047E8F3002058FE00206F +:10534000E952020893520208900000009000000009 +:10535000900000002DE9F04F0646DFF8DC03DFF88F +:10536000DC130160DFF8D8130068884236D1DFF81B +:10537000D403016006F110070020F860B86078607F +:105380003860B86178613861746820460021DDF7C3 +:10539000B7FE24D04FF087402146DDF7BFFEEEF781 +:1053A000B1FB054689462046EEF7ACFB044688462D +:1053B0003088F4F7A3FEDFF89023DFF8903302F093 +:1053C00029FD22464346F5F749F802460B46284692 +:1053D000494602F01FFDF4F79FFE01E0FEE70020C2 +:1053E000B883B46820460021DDF78AFE22D03588D4 +:1053F0002802F4F779FE82468B462046EEF782FBC0 +:1054000002460B46DFF84003DFF84013EEF7A2FB3D +:10541000044688462846F4F771FE22464346F5F7CF +:105420001DF802460B465046594602F0F3FCF4F7CD +:1054300073FE00E00020F88330884FF47A7190FB0F +:10544000F1F03884BDE8F08F2DE9FE4F96B0DFF81B +:10545000F4120968DFF8E822914200D0FEE719460D +:10546000103100910969009A52690792009A926975 +:105470000392009AD2F8009052680692009A9268BD +:10548000009BDB68189CA4890194009CA48B059464 +:10549000009CE48B089400244FF48075059EAD1B9E +:1054A0000D95019DC5EBC5050C95019D05EB4506C8 +:1054B00075000B95019D05EB85050A95019D05EB92 +:1054C00045050995009D2D8C012DC0F21D810578A3 +:1054D000DFF87062AD19069E95F80472BE190E963B +:1054E00095F8046109EB46072D79019E365CDFF8DB +:1054F00054C2664496F804C2674402970F9796F820 +:10550000047105EB47053679019F10F81770DFF835 +:1055100034C2674497F804C26544109597F804C1F3 +:1055200006EB4C063F79DDF824C01CF800C0DFF81C +:1055300014E2E6449EF804C2664411969EF804C143 +:1055400007EB4C079EF804E0DDF804C010F82CC00F +:10555000DFF8F081E04498F804C26744129798F8A5 +:1055600004C10EEB4C0C98F80480DDF828E01EF81E +:1055700000E0DFF8D091F14499F804E2E644CDF878 +:105580004CE099F804C108EB4C0C99F804A0DDF844 +:105590002C8018F80080DFF8AC91C14499F804829F +:1055A000E044CDF8508099F804C10AEB4C0A99F810 +:1055B0000490DDF830C01CF800C0DFF888B1E34487 +:1055C000CDF810B09BF804C2E244CDF854A0DDF849 +:1055D00010C09CF804C109EB4C09CDF81890DDF817 +:1055E00010C09CF80490DDF838C0CCEBCC0B03EB7A +:1055F0008B03DDF808C04FF0150B0BFB0C33C5EB2C +:10560000051C634406EB860C03EB4C0307EB470CCD +:1056100003EB4C030EEB4E0C634408EB030C0E9BA8 +:1056200003EBC30302EB8302029B4FF02A0B0BFB3D +:1056300003222E2303FB0522BB1903EB430302EBDA +:1056400003122E2303FB0E220BFB08220AEBCA03D4 +:1056500002EB8303029A05EB4505AA1806EB460503 +:1056600002EB450207EB870502EB4502CEEB0E1578 +:10567000AA18152505FB0822CAEBCA0502EB85020C +:10568000ACF50035089E56B1089E6918079FC91BE6 +:105690007143CE1101EB1661091207950D46059E67 +:1056A00066B10D9E039FDDF814C005FB0CF507FBEA +:1056B0000655EE1105EB16652D120395BDF85C60DD +:1056C0007543012DACBF0835083DEE1005EB16758E +:1056D0002D11DFF87C60B542B8BF354605DB47F6D3 +:1056E000BD76B542A8BF47F6BC75189EF6896643DD +:1056F000169F27F81650019D00EBC500641C009D05 +:105700002D8CAC42FFF6E3AE0098C0F800900098F4 +:10571000069C4460009882600098C3600098016114 +:105720000098079941610098039981610098008C65 +:1057300019B0BDE8F08F000000300240C2A507F4A8 +:10574000CDB5E8B5381D00201F85EB51B81E1940B6 +:105750004480FFFF10B40288164B98420BD0B0F182 +:10576000804F08D0144CA04205D0144CA04202D067 +:10577000134CA04204D14FF68F7422404C88224330 +:1057800002804A68C2620A880285984202D1897AF8 +:105790000C4A11800121818210BC704700290188C8 +:1057A00003D041F00101018070474FF6FE721140B5 +:1057B00001807047000001400004004000080040E4 +:1057C000000C004030000140002A828902D01143C1 +:1057D0008181704722EA0101818170470022038A9A +:1057E0000B4080890840002B02D0002800D0012205 +:1057F0001046704770B4294A294B1C78012C08D1F7 +:1058000002F10804546002F12804146000241C70A2 +:1058100007E002F12804546002F108041460012436 +:105820001C70204B00249C8019E0012C14D15C8852 +:105830008C420CD202EB4404166836F81550A4F8DA +:1058400008545C88641C5C80A4B28C4204D300249D +:105850005C801C720124DC719C88641C9C809D8887 +:10586000854218D21C7A002CDFD11C888C420CD2C5 +:1058700002EB4404166836F81550A4F848501C880A +:10588000641C1C80A4B28C42E6D300241C8001243A +:105890001C729C71E0E770BC704700BF1458002078 +:1058A0006D740020C07300204FF4011101600020CE +:1058B000704730B4C26C5389D48E92884C3085893D +:1058C00015FA84F414FA82F202EB8204620002EB0D +:1058D0004302C38902F6EB1202EBC302426401B138 +:1058E0000A60002030BC704710B500F14804DFF8B2 +:1058F000A802616C814204D1A16C41F271729142A3 +:1059000001D3012010BD002103E0002200F8012B8B +:10591000491CA26C9142F8DB2046DDF7ABFD00216B +:10592000A18610BD2DE9F04F83B00C4604F148016B +:10593000009101F10806F16B01F6F805FD21ADF8C3 +:1059400004100CB9FC2023E1DFF84CA20AF6F801A0 +:105950008D4202BF29690AF5076291423AD1E9688E +:105960000AF65812914202BF6968009A914231D1F9 +:1059700069690AF50B62914202BFA9680AF63812FA +:10598000914227D1DAF884180AF57472914202BF65 +:105990000AF5F878DAF8981841451BD1DFF8FC9140 +:1059A0004C4502BFE168DFF8F821914202BF04F1E3 +:1059B0000C07B7F90410B1F5F07F0BD1B7F9082047 +:1059C00040F2E111F0328A42BEBFB7F90620F03250 +:1059D0008A4201DB0120DBE020B10146F02248468B +:1059E00003F0FFFD00980089022815D1204600F041 +:1059F000FDF868B1B7F90EB0204600F007F9F8815C +:105A000030B9BBF1000F70D02046FFF76DFF6CE09E +:105A1000F88918B9B08568E00120F881E88F98B955 +:105A2000204603F06DFD00285FD04346F0220021A0 +:105A3000484603F080FD0020A8870120E8876869B8 +:105A4000016C491C016450E0A88F012804BF0020AC +:105A5000A887E8680099B0F84600A1F84C00A88F24 +:105A600020B9204603F04CFD00283ED06868808EA7 +:105A700002281CBF0120B0856869016C491C0164C3 +:105A8000B4F8960010B1401EA4F896000AF5F87418 +:105A90004FF4F07221460AF5747003F0E1FD4346BD +:105AA000F0220021484603F046FD4FF49072214653 +:105AB0000AF5B66003F0D4FD284604F0C8F828467D +:105AC000DDF788FB40B195F82800C0070FD42846C1 +:105AD000DDF752FC002855D12869C168491CC16016 +:105AE0004168491C41600120A887FD2050E000204A +:105AF00000900023E86841680222284604F0E4F898 +:105B0000686802218186E86804F0BAFE0400E8684B +:105B10001FD1818EC1F3C02131B3018E284605F01B +:105B200076F808B36869B0F8401001616968088BBD +:105B300050B12846DDF738FBE86805F0FEFB286920 +:105B4000C068401CA8630FE001242846DDF7F0FA86 +:105B50000AE06968CA8E521CCA8605F0EEFB002472 +:105B6000688D00F47F406885A88F401CA88780B2AC +:105B7000012806D12869C168491CC1604168491CD7 +:105B800041601CB195F82A00ADF80400BDF804008E +:105B900003B0BDE8F08F704768B3002070F60020B6 +:105BA000A8AF002038B50546202105F1240005F0F6 +:105BB00077FE00202C1DC5F88400E0676860E08255 +:105BC000284603F0ADFCEF30F02290FBF2F0B4F980 +:105BD000101000B2C0EB001201EB0210B4F90C106F +:105BE00000B28842A8BF401A608231BD418AC28A91 +:105BF000891A09B2002944BFB0F91000091809B286 +:105C0000F02901DB012070470020704738B50446B9 +:105C100004F1240500F07FF86168491C61600028E8 +:105C2000B5F9001047D021B101290CD003293FD08C +:105C300064E00520688001202880211D0020CA6FB3 +:105C4000521CCA6732BDB5F902000028F5D0401ECB +:105C5000688000B20028F0D1211DB1F91200CA8974 +:105C6000121A12B2002A44BFB1F90C30D218B1F99D +:105C7000143012B29A1AF02392FBF3F212B2182ADD +:105C8000A8BF1722C2EB0213A0EB03100882B1F9E0 +:105C90001000002802D58B8918180882022028805D +:105CA00004F1840061688068891AC0F874182BE0D8 +:105CB0000220288028E001291ED01FD3032913D0F9 +:105CC0001CD2211D488A0A8A801A00B2002844BFCB +:105CD000B1F90C10401800B2F02190FBF1F004F182 +:105CE000840148820320288004F18400418A00292D +:105CF00004BF008A002801D100209DE7B5F900000B +:105D0000022818BF032898D1D4F88410491C012018 +:105D1000C4F8841032BD2DE9F84600F10C02C468C5 +:105D2000B2F90A6000F1240104EB460AB1F910400F +:105D3000B0F966000025002308B94FF496604FF0D3 +:105D4000F00C3AF902EBAEEB04077446BEF1000F1B +:105D500048BFCEF1000E7544012FAEBF4FEA471E7B +:105D6000C7F1000E4FEA4E1E7344BCF1010CE8D19E +:105D7000F036568136B2B2F90470BE4204BF002636 +:105D800056810C822A11B1F90640B1F90E601B123E +:105D900004F1010E16FB043606EB6E0696FBFEFAC6 +:105DA00047F6FF76B245A8BFB24604DA4B4DAA4586 +:105DB000B8BFDFF82CA1A1F80EA0B1F90C90B1F991 +:105DC0000050CA46022D04D14D271AFB07F7BF1118 +:105DD00003E016271AFB07F73F11B9F1000F08D0AF +:105DE000B1F90E903FB24F45B4BF4FF001094FF0EB +:105DF0000009B1F90A7017FB042707EB6E0797FB40 +:105E0000FEFEB645A8BFB64604DA344FBE45B8BF5D +:105E1000DFF8CCE0A1F80AE0022DB1F90870BE4627 +:105E200006D14FF04D0C1EFB0CFC4FEAAC1C05E0FC +:105E30004FF0160C1EFB0CFC4FEA2C1C002F08D058 +:105E4000B1F90A500FFA8CF7AF42B8BF4FF0010C0E +:105E500001DB4FF0000C4CEA0905B0EB221FB4BF88 +:105E6000012000202843072CACBF1024641CCC80E8 +:105E7000B1F912401CB18C8100244C8203E09C00DB +:105E80005445B8BF4B82B1F90440B1F90C50671CBE +:105E900015FB043303EB670393FBF7F3B342A8BF8F +:105EA000334603DA0D4DAB42B8BF0D4B14FB0E2247 +:105EB00002EB670292FBF7F28B81B242A8BF324637 +:105EC00003DA064B9A42B8BF054A0A81062CACBFDA +:105ED000C822621C8A80BDE8F28600000280FFFFB3 +:105EE0000180FFFF704780B5022808D0042806D043 +:105EF000082804D0102802D04FF4803104E0400775 +:105F0000411300EB91408113882005F0E3FD002050 +:105F100002BD80B5B0F5FA6F0DD0B0F57A7F0AD02A +:105F2000B0F5FA7F07D0FA2805D04FF07A718820B3 +:105F300005F02FFD03E0C103882005F02AFD0020B5 +:105F400002BD80B506F009F906F06DFF00280CD0FF +:105F500006F069FF59230FF230220FF24421FFF7B8 +:105F6000C1FFBDE8014006F05EBF07F0C2FC00289B +:105F70000CD007F0BEFC5A230FF20C220FF22021A6 +:105F8000FFF7B0FFBDE8014007F0B3BC07F09BFE90 +:105F900000280CD007F097FE5B230FF2EC120FF2F3 +:105FA0000021FFF79FFFBDE8014007F08CBE08F01D +:105FB000DEFA00280CD008F0DAFA5F230FF2C812DC +:105FC0000FF2DC11FFF78EFFBDE8014008F0CFBAF9 +:105FD00008F069FD00280CD008F065FD60230FF281 +:105FE000A8120FF2BC11FFF77DFFBDE8014008F0D9 +:105FF0005ABD09F056FB00280CD009F052FB612372 +:106000000FF284120FF29811FFF76CFFBDE8014008 +:1060100009F047BB0220FFF766FF4FF4FA70FFF765 +:1060200078FF4FF00071882005F059FDBDE8014070 +:1060300006F0CEB810B54FF47A720023EDF7C4FC29 +:10604000044605F0ABFC204605F0B9FC204605F0FF +:10605000DBFC002010BD80B54FF47A720023EDF711 +:10606000B3FC05F0BEFC002002BD00002DE9F047A6 +:1060700084B00E4617469A46DDF838804FF0000986 +:10608000DDE90C45002803D022462B4605F015FE1D +:10609000002E0ED0B6F90000009000A8B6F902104C +:1060A0004160B6F90410816022462B46494605F04E +:1060B000CFFD002F24D09FED260AD7ED000A60EE19 +:1060C000800AFDEEE00ACDED000A00A8D7ED010A36 +:1060D00060EE800AFDEEE00AC0ED010AD7ED020A8B +:1060E00020EE800ABDEEC00A80ED020A22462B4651 +:1060F00048F0200105F0FCFD002801D04FF02009F8 +:10610000BAF1000F0DD022462B460021504605F073 +:106110002BFE002801D1012004E04FF020090020CF +:1061200000E00020002802D005F0C8FE8146484665 +:1061300004B0BDE8F08780B50A4600A907F0FEFB71 +:1061400002BD80B50A4600A907F056FC02BD00005A +:106150000000004280B505F05DFE002002BD80B564 +:1061600005F046FE002002BD80B505F047FE002088 +:1061700002BD80B505F048FE002002BD09F017BE43 +:1061800005F007BC05F0A6BC696E765F696E6974A0 +:106190005F696E76656E73656E73655F61706900C9 +:1061A000433A5C54656D705C4955535C494B445CA3 +:1061B0005461652D536F6F5C656D626564646564E1 +:1061C0005F7265666572656E63655F666F725F4E6E +:1061D0006F74655F335C656D6265646465645C49BA +:1061E0006E76656E53656E73655C6D706C5C696E22 +:1061F00076656E73656E73655F6170692E6300000E +:1062000038B50C461546010A8DF8001000A94870F3 +:1062100048782018B0F5807F02DD4FF0FF3032BDA6 +:1062200000AB02226D21682009F07CFF002802D01B +:106230004FF0FF3032BD2B4622466F21682009F017 +:1062400071FF002802D04FF0FF3032BD002032BD78 +:1062500038B50C461546010A8DF8001000A94870A3 +:1062600048782018B0F5807F02DD4FF0FF3032BD56 +:1062700000AB02226D21682009F054FF002802D0F3 +:106280004FF0FF3032BD2B4622466F21682009F0C7 +:1062900061FF002802D04FF0FF3032BD002032BD38 +:1062A0002DE9F04F93B005460E461446002E02D15C +:1062B0004FF0FF3065E00027A8460AE0B9F1010F72 +:1062C00005DB4A4639460FF2407009F052FF574449 +:1062D000BFB2474544DA4FF0000907EB060BA8EBC5 +:1062E0000700412802DB4FF0400A01E0A5EB070A56 +:1062F0005A46514689B23846FFF782FF002802D03D +:106300006FF001003DE002AA514689B23846FFF71E +:106310009FFF002802D06FF0020032E01FFA8AFAD5 +:10632000524602A9584609F031FF002804D009F16D +:106330000109642009F021FFA9F101000328CED34F +:10634000B9F1040FBADB9DF808000090BB5D52461E +:1063500039460FF2986009F00CFF6FF0030010E06F +:10636000200A8DF804008DF8054001AB022270214F +:10637000682009F0D7FE002802D06FF0040000E08A +:10638000002013B0BDE8F08F90F90010012901DB67 +:1063900000207047002901D50420704790F90110B2 +:1063A000012901DB01207047002901D50520704734 +:1063B00090F90200012801DB02207047002801D576 +:1063C000062070470720704738B50446FFF7DCFF0A +:1063D0000546E01CFFF7D8FF45EAC005A01DFFF702 +:1063E000D3FF45EA801080B232BD70B586B0044656 +:1063F00005A80FF22C610A68026004A80FF224615C +:106400000A68026003A80FF220610A68026002A80D +:106410000FF218610A68026004F0030005A9425CEB +:106420008DF8042001ADC4F3C102525C6A70C4F35C +:106430008112515CA97004A9405C8DF8000000AE87 +:10644000C4F3C100405C7070C4F38110405CB07054 +:1064500001AA032140F22640FFF7D2FE002802D015 +:106460004FF0FF304DE000AA032140F22A40FFF731 +:10647000C7FE002802D04FF0FF3042E0032203A9FC +:1064800001A8E9F7A1FF032202A900A8E9F79CFFF0 +:1064900060070BD59DF8040040F001008DF8040062 +:1064A0009DF8000040F001008DF80000A00607D51F +:1064B000687840F001006870707840F001007070FA +:1064C000E00507D5A87840F00100A870B07840F04A +:1064D0000100B07001AA032140F23F40FFF790FE97 +:1064E000002802D04FF0FF300BE000AA032140F259 +:1064F0003140FFF785FE002802D04FF0FF3000E06A +:10650000002006B070BD10B5044600223821682076 +:1065100009F0F6FD002824D100222321682009F08B +:10652000EFFD00281DD100226A21682009F0E8FD56 +:10653000002816D1002C17D00C226A21682009F0FF +:10654000DFFD00280DD1C0226A21682009F0D8FDA6 +:10655000002806D100222321682009F0D1FD00285F +:1065600002D04FF0FF3010BD002010BD10B582B03A +:1065700004000CD0C0208DF80000C2208DF801006E +:10658000C4208DF80200C6208DF8030004E0042228 +:106590008B2100A8EAF77EFF00AA042140F6C41070 +:1065A000FFF72EFE2046401E8041C043C00FFFF77C +:1065B000AAFF16BD10B582B004000CD020208DF8C3 +:1065C000000028208DF8010030208DF802003820CE +:1065D0008DF8030004E00422A32100A8EAF75AFF83 +:1065E00000AA042140F6CA10FFF70AFE2046401E0A +:1065F0008041C043C00FFFF786FF16BD30B585B0A0 +:1066000002A90FF22C4238CA38C1052802DA4FF02D +:10661000FF3021E0052190FBF1F0401E80B20146E1 +:10662000090A8DF800108DF8010000AA022140F23D +:106630001620FFF7E5FD002802D04FF0FF300BE0F9 +:1066400002AA0C2140F6ED10FFF7DAFD002802D077 +:106650004FF0FF3000E0002005B030BD80B50028CD +:1066600001D0022200E000223821682009F048FD14 +:10667000002802D04FF0FF3002BD002002BD70B5EF +:1066800084B0044625466D1EAD41ED43ED0F00205C +:106690008DF8000000AEB2207070B820B070C2203B +:1066A000F07000AA04216820FFF7AAFDA3208DF84E +:1066B0000000600606D5C0207070C820B070C220EF +:1066C000F07003E0A3207070B070F070200606D563 +:1066D000C4203071CC207071C620B07103E0A320BB +:1066E00030717071B071A3208DF807008DF808002B +:1066F0008DF8090000AA0A2140F6D310FFF780FDAB +:106700000320044203D020208DF8000002E0D820AE +:106710008DF8000000AA012140F6E210FFF770FD9D +:10672000D8208DF8000000AA012140F60200FFF7F2 +:1067300067FD600703D50120FFF718FF02E0002086 +:10674000FFF714FFE00603D50120FFF733FF02E057 +:106750000020FFF72FFF2846FFF7D5FE002004B0EA +:1067600070BD2DE9F04188B004460D46164600ABD9 +:1067700002227221682009F0EDFC002802D04FF0BF +:10678000FF30D7E09DF800009DF8011041EA002895 +:1067900041460FF2A82009F0ECFC0F9FB8F11C0F46 +:1067A00004D2002038704FF0FF30C3E0B8F5007F0E +:1067B00019DD01AB02223A21682009F0CBFC002848 +:1067C00003D00FF28C2009F0D4FC9DF80400C00621 +:1067D00009D50120FFF797FE0FF2902009F0C9FCC0 +:1067E0006FF00100A6E001AB1C227421682009F0C3 +:1067F000B1FC002806D00FF2942009F0BAFC4FF04B +:10680000FF3097E01C2098FBF0F0401E387001A884 +:106810009DF804104278120442EA0161827841EA4C +:106820000221C2781143316001794279120442EAAF +:106830000161827941EA02219DF80B2011437160C8 +:10684000017A9DF80D20120442EA01619DF80E20A4 +:1068500041EA02219DF80F201143B160017B9DF8B0 +:106860001120120442EA01619DF8122041EA02213E +:106870009DF813201143F160017C9DF8152042EA38 +:10688000012129809DF816109DF8172042EA012168 +:1068900069809DF818109DF8192042EA0121A9800D +:1068A0009DF81A109DF81B2042EA01212180007EEC +:1068B0009DF81D1041EA002060809DF81E009DF8A3 +:1068C0001F1041EA0020A080002030E000EB4001D2 +:1068D0003C4A8B1893F9061093F9052093F904307C +:1068E000B4F9006013FB06F6B4F9027012FB0766F8 +:1068F000B4F9047011FB0766B5F9007013FB07F3D8 +:10690000B5F9027012FB0732B5F9043011FB03210F +:10691000B6F5004F01DB47F6FF76B1F5004F01DB1E +:1069200047F6FF7124F8106025F81010401C03286A +:10693000CCDB002008B0BDE8F08138B5040002D1FE +:106940004FF0FF3032BD1F4D2878002801D00020C5 +:1069500032BD09222146281DE9F736FD00AB02228F +:106960006B21682009F0F6FB9DF80000400604D575 +:1069700000226B21682009F0C3FBC8234FF480621A +:106980000FF24C1140F66130FFF78AFC002818D155 +:106990002046FFF719FDFFF728FD002802D06FF011 +:1069A000060032BD0020FFF759FE002802D06FF02C +:1069B000070032BD012028700FF2EC0009F0D9FB6E +:1069C000002032BD8CAF002010B50C4600210028FD +:1069D00000D0C4210846FFF752FE002805D120460A +:1069E000FFF70CFE002800D1002010BD0A444D50D6 +:1069F0005F455252282564292825642928256429C1 +:106A000028256429200A00000A444D505F54524949 +:106A1000414C2825642928256429200A000000000B +:106A20004CCD6C000CC92C0036567600264666000C +:106A3000FEF2ABC4AAF1DFDFBBAFDFDF5B444D503A +:106A40005D204649464F28256429200A00000000A1 +:106A50000A5B444D505D204649464F207374617473 +:106A60007573206572726F720A0000000A5B444DF4 +:106A7000505D202D204649464F206F766572666C2A +:106A80006F77206572726F720A0000000A5B444DD6 +:106A9000505D202D204649464F2072656164206577 +:106AA00072726F720A0000005B444D505D4669725D +:106AB0006D77617265206C6F6164656420737563C6 +:106AC0006365737366756C6C79212121210A00005E +:106AD000000070000000002400000002000300001D +:106AE00000650054FFEF0000FA80000B12820001E5 +:106AF000200030C30E8C8CE914D5400213710F8E28 +:106B00003883F8833000F883258EF8833000F883CB +:106B1000FFFFFFFF0FFEA9D6240004001A8279A10F +:106B20000000003CFFFF00000010000038836FA24F +:106B3000003E03304000000000B2BAC23E800000B8 +:106B40002000000000000000400000006000000085 +:106B5000000C0000000C186E000006920A16C0DF40 +:106B60000000000000000002000000040000000718 +:106B700000000000FFFF0B2B000016570000035918 +:106B80000000000000001DFA00026C1D0000000063 +:106B900040000000000000000000000000000000B5 +:106BA00000000000001942B5000039A20000B365E2 +:106BB000D90E9FC91DCF4C3430000000500000009A +:106BC0003BB67AE80064000000C800000000000046 +:106BD00000000000000000000000000000000000B5 +:106BE00000000000000000000000000000000000A5 +:106BF0000001000000000000000000000000000094 +:106C000000001072000000400000000000000000C2 +:106C100005DC000000000000000000000000000093 +:106C2000000000000000025800000000000000C842 +:106C30000000000000000000000100000002000051 +:106C40000000000000000000000000000000000044 +:106C50000000000000000000000000000000000034 +:106C60000000000000000000000000000000000024 +:106C70000000000000000000000000000000100004 +:106C800040000000000000060000B26A00000000A2 +:106C900000000000000000000000000000000000F4 +:106CA00000000000000000000000000000000000E4 +:106CB000000000250000000016A0000000001000E9 +:106CC00000001000002F0000000001F40000100080 +:106CD00000280000FFFF4581FFFFFA72000000005E +:106CE00000000000004400050005BAC6004778A275 +:106CF0000000000100000000000006000000001479 +:106D00000000254D002F706D000005AE000C02D074 +:106D10000000000000000000000000000000000073 +:106D2000001B000000000000000000000000000048 +:106D300000640000000800000000000000000000E7 +:106D40000000000000000000000000000000000043 +:106D50000000000000000000000000000000000033 +:106D60000000000000000000000000000000000023 +:106D70000000000000000000000000000000000013 +:106D80000000000000000000000000000000000003 +:106D9000001B00000000000000000000000E000EBC +:106DA00000000AC70004000000000032FFFFFF9C43 +:106DB00000000B2B00000002000000010000006436 +:106DC000FFE50000000000000000000000000000DF +:106DD00000000001000000000001000000000000B1 +:106DE000000180000001800000018000002426D303 +:106DF0000000000000000000000600100096003CAB +:106E00000000000000000000000000000000000082 +:106E10000C0A4E68CDCF770950166759C619CE8235 +:106E20000000000000000000000000000000000062 +:106E3000000000000000000017D7840003000000DD +:106E40000000000000000000C7938F9D1E1B1C194E +:106E50000000000000000000000000000000000032 +:106E60000000000000000000020318850000400040 +:106E7000000000030000000300000000000000000C +:106E800040000000000000000000000000000000C2 +:106E900000000000000000000000000000000000F2 +:106EA00000000000000000000000000000000000E2 +:106EB00000000000677DDF7E72902E554CF6E6885C +:106EC00000000000000000000000000000000000C2 +:106ED000D8DCB4B8B0D8B9ABF3F8FAB3B7BB8E9E70 +:106EE000AEF132F51BF1B4B8B08097F1A9DFDFDF66 +:106EF000AADFDFDFF2AAC5CDC7A90CC92C97F1A97B +:106F000089264666B28999A92D557DB08AA89636FC +:106F10005676F1BAA3B4B280C0B8A89711B28398DC +:106F2000BAA3F0240844106418B2B9B49883F1A34A +:106F300029557DBAB5B1A38393F0002850F5B2B6B8 +:106F4000AA839328547CF1B9A3829361BAA2DADEB2 +:106F5000DFDB819AB9AEF5606870F1DABAA2DFD9E9 +:106F6000BAA2FAB9A38292DB31BAA2D9BAA2F8DFE7 +:106F7000B9A3A3A3A3A3B8A2DFDFDFBAA0DFDFDF3B +:106F8000D8F1B9A1B280C0B089A0C3C5C7B181B4DE +:106F900097A011B590A1F0240844106418F19081D5 +:106FA000A02D553DF2A5D0F8F9D1D9F8F180A2C3B2 +:106FB000C5C7D8F3A2DEF18290A42D557D8494F547 +:106FC000A120D9F3A2F8D8F5A140D9F3A2F8D8F5B9 +:106FD000A160D9F3A2F8D8F2B9A2F8F9D1D9A6DE06 +:106FE000A5D0DEF41AD8F28696A109D1DBF411D827 +:106FF000F211D1DBF41CD8F219D1DBF414D8F4105F +:10700000D8F3A2F8F9D1DAF2A6F8F1A5DED8F4A106 +:107010001616D8F1A5F8A1859509D9F1A5DEF2A536 +:10702000D0DEA6F8D8F4A109D8F3A2F8F9D1F4D9A2 +:107030000819DA42F2A2DEF40BD8F1A5F8A1859581 +:1070400019DAF407D8F2A6DEA5D0DED8F1B8AAB3D3 +:107050008DB4980D355DB2B6BAAF8C96198F9FA7D7 +:107060000E161EB49AB8AA872C547CBAA4B08AB65D +:1070700091325676B28494A4C808CDD8B8B4B0F191 +:107080009982A82D557D98A80E161EA22C547C928C +:10709000A4F02C5078F184A898C4CDFCD80DDBA8BE +:1070A000FC2DF3D9BAA6F8DABAA6DED8BAB2B686FB +:1070B00096A6D0F3C841DAA6C8F8D8B0B4B882A86A +:1070C00092F52C548898F135D9F418D8F1A2D0F85B +:1070D000F9A884D9C7DFF8F883C5DADF69DF83C18F +:1070E000D8F40114F1A8824EA884F311D182F5D905 +:1070F00092289788F109F41C1CD884A8F3C0F9D110 +:10710000D99782F129F40DD8F3F9F9D1D982F4C2D3 +:1071100003D8DEDF1AD8F1A2FAF9A88498D9C7DF1C +:10712000F8F8F883C7DADF69DFF883C3D8F401140D +:10713000F198A8822EA884F311D182F5D9925097A4 +:1071400088F109F41CD884A8F3C0F8F9D1D9978242 +:10715000F149F40DD8F3F9F9D1D982F4C403D8DE9A +:10716000DFD8F1AD8898CCA809F9D98292A8F57C2E +:10717000F1883ACF944A6E98DB6931DAADF2DEF9E4 +:10718000D88795A8F221D1DAA5F9F417D9F1AE8EF6 +:10719000D0C0C3AE82C684C3A88595C8A588F2C0F6 +:1071A000F1F4010EF18E9EA8C63E56F554F1887298 +:1071B000F40115F19845856EF58E9E0488F142988C +:1071C0005A8E9E068869F4011CF1981E1108D0F5AC +:1071D00004F11E970202983625DBF9D985A5F3C183 +:1071E000DA85A5F3DFD88595A8F309DAA5FAD88260 +:1071F00092A8F578F1881A849F26889821DAF41DE0 +:10720000F3D8879F39D1AFD9DFDFFBF9F40CF3D87E +:10721000FAD0F8DAF9F9D0DFD9F9D8F40BD8F38736 +:107220009F39D1AFD9DFDFF41DF3D8FAFCA869F993 +:10723000F9AFD0DADEFAD9F88F9FA8F1CCF398DB5A +:1072400045D9AFDFD0F8D8F18F9FA8CAF38809DA03 +:10725000AF8FCBF8D8F2AD978D0CD9A5DFF9BAA6D0 +:10726000F3FAF412F2D8950DD1D9BAA6F3FADAA549 +:10727000F2C1BAA6F3DFD8F1BAB2B68696A6D0CAE2 +:10728000F349DAA6CBF8D8B0B4B8D8AD84F2C0DFF1 +:10729000F18FCBC3A8B2B68696C8C1CBC3F3B0B446 +:1072A0008898A821DB718D9D71859521D9ADF2FA61 +:1072B000D88597A828D9F408D8F28D29DAF405D909 +:1072C000F285A4C2F2D8A88D9401D1D9F411F2D8D4 +:1072D0008721D8F40AD8F28498A8C801D1D9F4112A +:1072E000D8F3A4C8BBAFD0F2DEF8F8F8F8F8F8F895 +:1072F000F8D8F1D8B8B4B09786A8319B069907ABF7 +:107300009728889BF00C201440B0B4B8F0A88A9A53 +:10731000285078B79BA8295179247059446938645A +:107320004831F1BBAB88002C547CF0B38BB8A80477 +:10733000285078F1B088B49726A85998BBABB38B86 +:1073400002264666B0B8F08A9CA82951798B29514B +:10735000798A2470598B2058718A4469388B394056 +:10736000688A6448318B30496088F1AC002C547CC9 +:10737000F08CA804285078F1889726A85998AC8CEE +:1073800002264666F0899CA82951792470594469DF +:1073900038644831A98809205970AB11384069A870 +:1073A000193148608CA83C415C207C00F187981919 +:1073B00086A86E767EA999882D557DD8B1B5B9A3DA +:1073C000DFDFDFAED0DFAAD0DEF2ABF8F9D9B087CD +:1073D000C4AAF1DFDFBBAFDFDFB9D8B1F1A38EC63E +:1073E000DFB084F2C8F8F9D9DED89385F14AB183C9 +:1073F000A308B5839A0810B79F10D8F1B0BAAEB001 +:107400008AC2B2B68E9EF1FBD9F41DD8F9D90CF11F +:10741000D8F8F8AD61D9AEFBD8F40CF1D8F8F8ADD6 +:1074200019D9AEFBDFD8F416F1D8F8AD8D61D9F4D7 +:10743000F4ACF59C9C8DDF2BBAB6AEFAF8F40BD801 +:10744000F1AED0F8AD51DAAEFAF8F1D8B9B1B6A3D1 +:10745000839C08B9B1839AB5AAC0FD3083B79F1049 +:10746000B58B93F20202D1ABDADED8F1B080BAABC1 +:10747000C0C3B284C1C3D8F3B9ACDED8B1B9F38B01 +:10748000A391B609B4D9B9ACF8ABDEB0879CB9A367 +:10749000DDF1B38B8B8B8B8BB087A3A3A3A3B080C1 +:1074A000B490F2A3A3A3A3A3A3A3A3A3A3F1B08720 +:1074B000B59AA3F39BA3A3DCBAACDFB9A3A3A3A3A0 +:1074C000A3A3A3A3A3A3A3A3A3A3A3D8F3B9ACF893 +:1074D000F9D1D9F41BD8F3FAF9D1D9F41BD8F2B108 +:1074E000B5B98CACF8F9D1D9C2D8F2F9D9DEF40922 +:1074F00013DAF2DDC6DCF43111D8F2ABFA8B9BA3C0 +:1075000049D9F40706DAF2B9ABDFFED8F1BBB3B75D +:10751000AAF9DAFFD9809AAA28B48098A720B79749 +:1075200087A86688F07951F1902C870CA781976223 +:1075300093F071716085940129517990A5F1284CDF +:107540006C870C95188578A38390284C6C886CD830 +:10755000F3A28200F210A8921980A2F2D926D8F1E3 +:1075600088A84DD948D896A83980D93CD89580A804 +:1075700039A68698D92CDA87A72CD8A8899519A975 +:1075800080D938D8A88939A980DA3CD8A82EA8395A +:1075900090D90CD8A8953198D90CD8A809D9FFD87A +:1075A00001DAFFD89539A9DA26FFD890A80D899974 +:1075B000A810809821DA2ED88999A83180DA2ED89F +:1075C000A886963180DA2ED8A8873180DA2ED8A8FE +:1075D0008292F34180F1D92ED8A882F31980F1D993 +:1075E0002ED882ACF3C0A28022F1A62EA72EA9220B +:1075F00098A829DAACDEFFD8A2F22AF1A92E82924D +:10760000A8F23180A696F1D900F1F1F1AC8C9C0C76 +:1076100030ACDED0DEFFD88C9CACD010ACDE8092DB +:10762000A2F24C82A8F1CAF235F19688A6D900D808 +:10763000FF00000038B5DFF888475022002104F130 +:107640003000E9F727FF50220021E9F723FF5022FD +:107650000021DFF87007E9F71DFFDFF86C575022B3 +:10766000002105F11000E9F715FF50220021DFF895 +:107670005C07E9F70FFF50220021DFF85407E9F714 +:1076800009FF00202070607020716071A070E070B0 +:10769000A07120816081DFF83C07C4F880009FED75 +:1076A000C60B84ED040B84ED060B85ED000B84ED19 +:1076B000080B85ED020B84ED0A0B31BD2DE9F04F6F +:1076C0002DED088B83B0B0EE408ADFF8F4462189B7 +:1076D00000EB010BA4F808B0618947186781A07915 +:1076E000192809D2401CA07118EE100AECF70AFA0A +:1076F000DFF8D426C2E902019FEDAC0AB4EE408A5D +:10770000F1EE10FAC0F24C81D4ED200AF4EE400AFA +:10771000F1EE10FAC0F24481A0791928C0F040813E +:107720001FFA8BFBBBF1AF0FC0F03A8138EE600A55 +:10773000DFF8945685ED1C0A84ED208A10EE100ABD +:10774000ECF7E0F921F00041DFF88C26DFF88C3609 +:10775000F2F7F8FE05D8D5E90201ECF7CDFA08EE0C +:10776000100A6678002E04D185ED188A85ED198AF5 +:1077700052E0D5ED1A8A18EE100AECF7C3F941EC85 +:107780001A0B9FED8B9B95ED180A28EE800A10EEE0 +:10779000100AECF7B7F98046894618EE900AECF724 +:1077A000B1F902460B4651EC190B00F0EBFC53EC1F +:1077B0001A2BECF7CFF942464B46F2F74FFEECF7A7 +:1077C0009BFA08EE900AC5ED188A95ED1BAA95ED77 +:1077D000190A2AEE000A10EE100AECF793F9CDE927 +:1077E00000011AEE100AECF78DF902460B4651EC37 +:1077F000190B00F0C7FC8046894618EE900AECF79A +:1078000081F942464B46ECF7A5F9DDE90023F2F792 +:1078100025FEECF771FA686640F2E930BFB28742A4 +:1078200014D3A078DFF8B81501EB80016A6E8A6284 +:10783000401CA070C0B2142801D10020A070E078D4 +:10784000142801D2401CE0700020608194F8009060 +:107850004F4605EB8708DFF874A5142E27D1D8ED25 +:10786000048A18EE900AECF74DF902460B46D4E96B +:10787000040100F087FCC4E9040128EEA80A10EE18 +:10788000100AECF73FF902460B46D4E9060100F076 +:1078900079FCC4E906015AF82700ECF733F90246EF +:1078A0000B46D5E9000100F06DFCC5E9000188ED4B +:1078B000048A18EE100AECF725F941EC1A0B53EC88 +:1078C0001A2BD4E90401F2F7C9FD41EC190B84ED40 +:1078D000049B28EE080A10EE100AECF713F9D4E91D +:1078E0000623F2F7BBFD41EC180B84ED068B4A46EC +:1078F000314605F1100000F07DF90AEB870080EDBC +:10790000000A10EE100AECF7FDF8D5E90023F2F7B3 +:10791000A5FD41EC1A0B85ED00AB04EB8700696E09 +:107920000163DFF8BC0420F817B0142E01D2701CDC +:1079300060706078F2F7E2FB41EC1B0B51EC190B25 +:1079400053EC1B2B00F066FA41EC190B85ED029B02 +:1079500051EC180B53EC1B2B00F05CFA06460F465B +:1079600053EC192B51EC190BECF7F4F802460B46CB +:107970003046394600F006FCC4E9080151EC1A0B08 +:1079800053EC1B2B00F046FAC4E90A0109F101008F +:107990002070C0B2142801D1002020700020208166 +:1079A00003B0BDEC088BBDE8F08F00000100FA4386 +:1079B000000000000000F03F000000000000000098 +:1079C000F0B52DED068B81B0F0EE408A00263446EE +:1079D000DFEDB49A9FEDB39A9FEDB28ADFF8E053E2 +:1079E0006878142840F0FF80E8780528C0F0FB8014 +:1079F000F5EE408AF1EE10FA40F3F58095ED08AB14 +:107A000051EC1A0BDFF8DC23DFF8DC33F2F7B0FBC4 +:107A100002D29FEDC8AA0EE0F2F794FD09D84FF00C +:107A20006632DFF8C833F2F7A3FB02D29FED9EAABD +:107A300001E09FED9EAAA878411E00D51431001FD9 +:107A400000D51430DFF8987307EB810191ED0A0A35 +:107A500007EB8000D0ED0A0A30EE600A10EE100A43 +:107A6000ECF750F821F00041ECF746F900EE100A6F +:107A7000DFED8F0AB4EE600AF1EE10FA10DB1AEEB9 +:107A8000100AECF73FF8D5E90A2323F00043F2F798 +:107A90006FFB05D214212878401E00F00BF9064632 +:107AA000002E204600F09A8004E037F810100C19E0 +:107AB000A4B2401C1428F8D32046F2F71FFBDFF8CD +:107AC0003023DFF83033ECF745F8ECF715F908EE22 +:107AD000100A18EE900AECF715F8DFF81C23DFF80F +:107AE0001C33ECF737F8ECF707F900EE100A28EE34 +:107AF000008A2878411E00D514316A78801A00D592 +:107B0000143005EB810191ED0C0A05EB8000D0EDFE +:107B10000C0A30EE600AFFEE000A20EE200A10EE9A +:107B2000100AEBF7EFFFB64AB64B00F073F9ECF72B +:107B3000E3F808EE900AF4EE488AF1EE10FA02DB60 +:107B4000DFED588A11E028EE080A08EEE80A10EE88 +:107B5000100AEBF7D7FF41EC100BDAF797FB51EC6B +:107B6000100BECF7C9F809EE900A2879954988EED0 +:107B7000A90A01EB800282ED000A401C2871C0B204 +:107B8000142801D1002028716879142801D2401CE2 +:107B90006871002006E001EB800292ED000A39EEE8 +:107BA000009A401C6A79134680B29842F3D3B2EE31 +:107BB000040A29EE000A00EE902AF8EE600A80EE30 +:107BC000200A10EE100AEBF79DFF864A8E4BEBF76A +:107BD000C1FFECF791F808EE100A01E02871687116 +:107BE000B0EE480A01E09FED2F0A01B0BDEC068B14 +:107BF000F0BD000030B52DED048B9FED2A8A9FED7E +:107C0000290ADFED280ADFED278A00231AE0142C69 +:107C100000DB143C01EE103AB8EEC11A31EE088ACE +:107C200050F8244001EE904A30EE210A41EE210A3C +:107C300013FB03F401EE104AB8EEC11A71EE288A64 +:107C40005B1CDBB20C46A34205DA141B1C19641C36 +:107C5000DDD51434DEE701EE101AB8EE419A69EE74 +:107C6000200A48EE400A10EE900AEBF74BFF04465C +:107C70000D4629EE280A08EE480A10EE100AEBF726 +:107C800041FF624A624BF2F7E9FB02460B4620468F +:107C9000294600F0BFF8ECF72FF800EE100ABDEC13 +:107CA000048B30BD00000000A69B443BCDCCCC3DF6 +:107CB00090C2F53CF0B50024002801D5143002E054 +:107CC000142800DB143825462646224609E0DFED5D +:107CD000190AB4EE600AF1EE10FA01DB761CB6B2B6 +:107CE000521C431AD2B21746A1F1010C674523DAA0 +:107CF000FB185B1C01D5143302E0142B00DB143B92 +:107D00005F1C142F00DB143FDFF8B4C00CEB8707B7 +:107D100097ED0C0A0CEB8303D3ED0C0A30EE600AEE +:107D2000DFED240AB4EE600AF1EE10FACFD56D1C37 +:107D3000ADB2D5E76F12033B591C00D51431DFF803 +:107D400080C00CEB800090ED0C0A0CEB8100D0EDB4 +:107D50000C0A30EE600A10EE100AEBF7D3FE21F0A9 +:107D60000041EBF7C9FF00EE100A0B2E0FD3DFED39 +:107D7000120AB4EE600AF1EE10FA08DBDFED0F0A2A +:107D8000B4EE600AF1EE10FA01D5012410E00B2DDB +:107D90000ED3DFED090AB4EE600AF1EE10FA07DB4C +:107DA000DFED060AB4EE600AF1EE10FA00D5022407 +:107DB0002046F0BD6E1203BB90C2753DCDCCCC3ECB +:107DC000A0690020D0710020902300208071002045 +:107DD000446C002000407E449B9999999999C93F31 +:107DE0001C6C00209A9999999999A93F6666E63F7B +:107DF000FCA9F1D24D62503F0492B06F2711913F20 +:107E0000B81E85EB51B8BE3F9999B93F8DEDB5A02D +:107E1000F7C6B03EF0B540F2FF7581EA030C0CF0F6 +:107E2000004C15EA11541DBF15EA1357AC42AF427E +:107E3000E5E0BC41C1F31301C3F31303801A994178 +:107E400043F4801304D2641E400049418018594114 +:107E5000C90241EA5051B1FBF3F603FB1611A2FB34 +:107E60000675D7EBC020A94102D2761E8018594171 +:107E7000C90241EA5051B1FBF3FE03FB1E11A2FB04 +:107E80000E75D7EBC020A94103D2AEF1010E8018C8 +:107E90005941890241EA9051760546EA8E2EB1FB9E +:107EA000F3F603FB1611A2FB0675D7EB8020A94160 +:107EB00002D2761E80185941C90241EA50514EEA59 +:107EC000060EB1FBF3F603FB1611A2FB0675D7EB0A +:107ED000C020A94102D2761E80185941C90241EA48 +:107EE0005051B1FBF3F703FB1711A2FB0735D3EB9E +:107EF000C020A94167F100070CBF004247F001070D +:107F000066F3D5274FEA1E31B80814F5806412DDF8 +:107F1000BD0775F1004250EB0E5051EB045111F5C5 +:107F2000801F5CBF41EA0C01F0BD4CF07F6141F065 +:107F3000E0410020F0BDBD076D0840EA0E5041F45D +:107F40008011D4F10104B4F120060ADAC4F120064C +:107F50000200E04001FA06F3E1401843B240154345 +:107F60000EE0342C13DCC6F1200445EA40056D0810 +:107F700020FA06F2154321FA06F0A1400D43002134 +:107F800075F1004250F1000051EB0C01F0BD0020F2 +:107F90005FEA0C01F0BDCFB992185B41B3FA83F7E9 +:107FA00004BFB2FA82F6BF190B3FB7F120062FBF0C +:107FB00002FA06F3BB40C7F1200622FA06F638BFE4 +:107FC0003343BA401CB1E419641E33E77F4231F0F9 +:107FD0000041B1FA81F404BFB0FA80F6A4190B3C59 +:107FE000B4F120062FBF00FA06F1A140C4F120062B +:107FF00020FA06F638BF3143A0403C1B1AE7AC42DA +:108000001ABF05EA1357AF4212E050EA41061CBFFF +:1080100052EA4306BFE750EA4107304661461CBFBB +:1080200041EA0551F0BD52EA430C08BFC143F0BD1F +:1080300000204FF4001616EB410F98BF16EB430FCC +:1080400008BF16EB410F24BFC14305E016EB430FF9 +:108050000CBF61464CEA0551F0BD00000FB480B57D +:10806000192200210846E7F7CDFF022801D102209E +:1080700005E008F0BDF82F4800210170012002BC86 +:108080005DF814FB80B5192200210120E7F7BAFF43 +:10809000022801D1022002BD2648002101700120E2 +:1080A00002BD70B58CB02448446BA069E1684518E6 +:1080B00000A8E8F70DF81F4E3078012801D1002004 +:1080C0000BE000A890EC030A08F09EF8012803D109 +:1080D00001202870A077307001200CB070BD80B5F1 +:1080E000E7F78EFF154908601549C0F8F81300F549 +:1080F0007E7014494160144981600FF21101C16022 +:108100000FF24D010161012002BD00000B48006823 +:1081100090F8E903002801D10020704705E080B500 +:108120000020F1F70EFA012002BD084890F9000086 +:10813000704700009CFE0020000000206CFE002024 +:108140005D80020885800208A38002089BFE002053 +:1081500018B430220B7812FB030301241C700B7837 +:1081600012FB03035C700B7812FB030319249C7051 +:108170000B7812FB03000022C2700878401C0870C4 +:1081800011BCCCE770B44FF0004591EA030F44BF37 +:108190006B40F2F76DB900BF841A71EB030604D28D +:1081A0006E40001BB141121973414FF4001C1CEBCF +:1081B000410F34BF7CEB430684E00C0DA4EB135657 +:1081C000362E7DDC012E43DC45EAC32343EA5253BD +:1081D00012BFD20292025B08240545EAC12141EA9E +:1081E0005051D2EBC020994125D407D1B0FA80F686 +:1081F00010FA06F164D00020203608E0B1FA81F6CA +:10820000B140C6F1200220FA02F21143B0404FEA19 +:10821000F474B4EB465434F001064FEA74040AD8FF +:10822000D6F50016760D04F00044F04061FA06F22F +:108230005040F1404840C00A40EA415021F000411E +:1082400028BF5FEA500550F1000044EBD12137E030 +:1082500045EAC323DB0A45EAC121C90AB6F1200574 +:108260000EDD42EA0242120CC5F1200603FA06F6C0 +:10827000EB4042EA06056D42984161F100010DE0D4 +:1082800062FA06F5F240554063FA06FC82EA0C02F7 +:10829000F3405A406D42904161EB030111F4801F9D +:1082A00005D1641E620502D06D004041494121F4B0 +:1082B0008011430875F1004350F1000041EB045177 +:1082C00070BC70471CEB410F15D223F0004352EAFB +:1082D00043060BD04FEA4C0CBCEB410F04D80C0DFD +:1082E000661E342EB7DDEBE7801A994150EA41064D +:1082F00008BF0021E4E708BF1CEB430F28BF6FF065 +:108300000001DDE710B5DFF800450020206001F036 +:10831000DAF8606105206060012010BDDFF8E80434 +:10832000002101600120704770B52DED048B84B0F1 +:108330000C4600210391029101910091DFF8C8548D +:10834000012C07D1296090ED008AD0ED018A90EDD3 +:10835000029A7BE069684A1E68692B6893421DDABD +:108360001E22591C09B200F0CFFA85ED020A1E2226 +:108370002868411C09B2686900F0E4FA85ED040A36 +:108380001E222868411C09B2686900F0F9FA85EDDF +:10839000030A2868401C00EE100A49E018D11E228A +:1083A00009B200F0B1FA85ED020A1E22696809B22D +:1083B000686900F0C7FA85ED040A1E22696809B2EF +:1083C000686900F0DDFA85ED030A95ED010A2FE0FA +:1083D0001E2209B200F088FA06461E2200216869B2 +:1083E00000F082FA95ED020AD6ED000A30EE600A3E +:1083F000D0ED000A30EE200A85ED020A95ED040A60 +:10840000D6ED010A30EE600AD0ED010A30EE200A06 +:1084100085ED040A95ED030AD6ED020A30EE600AF6 +:10842000D0ED020A30EE200A85ED030A95ED010A2F +:10843000B8EEC00AD5ED020A80EE808AD5ED040AB6 +:10844000C0EE808AD5ED030A80EE809AB0EE491A1C +:10845000F0EE680AB0EE480A01A903A800F022F87D +:108460000022B0EE491AF0EE680AB0EE480A00A900 +:1084700002A800F0BEF82868401C286001F017F838 +:10848000039981610199C161029901620099416278 +:10849000022C02D0012101F012F8012004B0BDEC41 +:1084A000048B70BD30B52DED068B81B004460D46B2 +:1084B000B0EE40AAF0EE608AB0EE418AB5EE408A96 +:1084C000F1EE10FA40D5F1EE480A00F021FB9FEDE5 +:1084D000C19B10EE100AEBF715FB53EC192BEBF7D1 +:1084E00039FBEBF709FC00EE100A00F02DF9BDEEA8 +:1084F000C00A84ED000A2AEE0A0A08EE080A10EE05 +:10850000100AEBF7FFFA41EC100BD9F7BFFE51EC64 +:10851000100BEBF7F1FB00EE900AB1EE680A00F0E9 +:10852000F7FA10EE100AEBF7EDFA53EC192BEBF714 +:1085300011FBEBF7E1FB00EE100A00F005F9BDEED0 +:10854000C00A85ED000A50E0B5EE408AF1EE10FA5F +:108550004BDDF0EE480AB1EE4A0A00F0D9FA9FED81 +:108560009D9B10EE100AEBF7CDFA53EC192BEBF7AD +:10857000F1FA0022994BF1F771FFEBF7BDFB00EE2A +:10858000100A00F0E1F8BDEEC00A84ED000A2AEE00 +:108590000A0A08EE080A10EE100AEBF7B3FA41ECEB +:1085A000100BD9F773FE51EC100BEBF7A5FB00EEA7 +:1085B000900AB1EE680A00F0ABFA10EE100AEBF781 +:1085C000A1FA53EC192BEBF7C5FA0022844BF1F713 +:1085D00045FFEBF791FB00EE100A00F0B5F8B1EEA5 +:1085E000400ABDEEC00A85ED000A01B0BDEC068B65 +:1085F00030BD30B52DED048B81B004460D46F0EE54 +:10860000408AB0EE609AB0EE418AB5EE409AF1EE43 +:1086100010FA18D5F1EE490A00F07AFA10EE100AB5 +:10862000EBF770FA6F4A794BEBF794FAEBF764FBD0 +:1086300000EE100A00F088F8B1EE400ABDEEC00A64 +:1086400084ED000A20E0B5EE409AF1EE10FA1BDB53 +:10865000B1EE680A00F05CFA10EE100AEBF752FA7D +:10866000604A6A4BEBF776FA00225D4BF1F7F6FEB3 +:10867000EBF742FB00EE100A00F066F8B1EE400A9C +:10868000BDEEC00A84ED000AB5EE408AF1EE10FAA4 +:1086900028D528EEA80A09EE090A10EE100AEBF711 +:1086A00031FA41EC100BD9F7F1FD51EC100BEBF75F +:1086B00023FB00EE900AB0EE480A00F029FA10EE13 +:1086C000100AEBF71FFA474A504BEBF743FAEBF768 +:1086D00013FB00EE100A00F037F8BDEEC00A85ED7E +:1086E000000A2CE0B5EE408AF1EE10FA27DD28EE04 +:1086F000A80A09EE090A10EE100AEBF703FA41EC9A +:10870000100BD9F7C3FD51EC100BEBF7F5FA00EEA7 +:10871000900AB0EE480A00F0FBF910EE100AEBF7F1 +:10872000F1F9304A394BEBF715FAEBF7E5FA00EEC1 +:10873000100A00F009F8BDEEC00A85ED000A01B08C +:10874000BDEC048B30BD0000DFED270A9FED271A3A +:10875000B4EE410AF1EE10FA09DBB4EE600AF1EE74 +:1087600010FA04D5DFED220A30EE200A7047B4EE8D +:10877000600AF1EE10FA0BDBDFED1E0AB4EE600AC0 +:10878000F1EE10FA04D5DFED1C0A30EE200A704736 +:10879000DFED1A0ADFED1A1AB4EE610AF1EE10FAF3 +:1087A00009DBB4EE600AF1EE10FA04D5DFED150A2C +:1087B00030EE200A7047B4EE600AF1EE10FA08DBE2 +:1087C000DFED130AB4EE600AF1EE10FA01D530EED7 +:1087D000010A7047E6C1631ADCA54C400080664080 +:1087E000008066C0E6C1631AFFFF06C4000034C4FF +:1087F00000003444FFFF33C30000B44301000744CA +:10880000010034430000B4C338FD0020DCA54C4017 +:1088100001003444E54A12689FEDBC0A038800EB6E +:108820004303B3F9043000EE903AF8EEE00A92ED1B +:10883000001AB8EE411A70EEC10A92ED031AB8EEB2 +:10884000411AC0EE810A60EE800AC1ED000AD2ED45 +:10885000010AF8EE600A038800EB4303B3F906301F +:1088600001EE103AB8EEC11A70EEC10A92ED041A88 +:10887000B8EE411AC0EE810A60EE800AC1ED010A2D +:10888000D2ED020AF8EE600A038800EB4300B0F96B +:10889000080001EE100AB8EEC11A70EEC10A92ED9E +:1088A000051AB8EE411AC0EE810A20EE800A81ED69 +:1088B000020A012070470388934201D300230380FA +:1088C00003885B1C03809BB2934201D30022028089 +:1088D000028802EB420300EB8300001D91EC030AC7 +:1088E00080EC030A01207047B0F90030591A09B230 +:1088F000002901D511FA82F109B201EB410200EB26 +:108900008200001D7047000030B49FEDB80A0023BC +:10891000B0F9004010E024B2002C08D404EB440568 +:1089200000EB8505D5ED010A30EE200A641E24B265 +:10893000002C00D5541E5B1C1BB28B42EBDB30BC01 +:108940007047000030B49FEDA90A0023B0F9004041 +:1089500010E024B2002C08D404EB440500EB85059C +:10896000D5ED020A30EE200A641E24B2002C00D598 +:10897000541E5B1C1BB28B42EBDB30BC704700000B +:1089800030B49FED9A0A0023B0F9004010E024B201 +:10899000002C08D404EB440500EB8505D5ED030A53 +:1089A00030EE200A641E24B2002C00D5541E5B1C3D +:1089B0001BB28B42EBDB30BC7047000010B52DEDD5 +:1089C000068BADF2D47D00A80FF2282140F2D472BC +:1089D000EAF7CCFA9FED768B9FED779B00ACB5EE76 +:1089E000400AF1EE10FA48DB9FED75ABDFED760A39 +:1089F000B4EE600AF1EE10FA1AD510EE100AEBF799 +:108A000081F853EC192BEBF7A5F853EC182BF1F781 +:108A100025FDF1F781FB54F82000F1F765FB53ECDD +:108A20001A2BEBF797F8EBF767F900EE100A68E0FE +:108A3000F7EE000A80EE800A10EE100AEBF762F8FB +:108A400053EC192BEBF786F853EC182BF1F706FDD6 +:108A5000F1F762FB54F82000F1F746FB53EC1A2BB8 +:108A6000EBF778F802460B465B485849FFF78AFB5C +:108A7000EBF742F900EE100A43E0FFEE000AB4EE15 +:108A8000600AF1EE10FA1CDBB1EE400A10EE100A9B +:108A9000EBF738F853EC192BEBF75CF853EC182B89 +:108AA000F1F7DCFCF1F738FB54F82000F1F71CFB80 +:108AB0000022474BEBF74EF8EBF71EF900EE100AD9 +:108AC0001FE080EE800A10EE100AEBF71BF853EC63 +:108AD000192BEBF73FF853EC182BF1F7BFFCF1F72C +:108AE0001BFB54F82000F1F7FFFA0022394BEBF79B +:108AF00031F8394A3E4BF1F7B1FCEBF7FDF800EEE7 +:108B0000100A0DF2D47DBDEC068B10BDC3F51C41DF +:108B100080B5B0EE401AF5EE400AF1EE10FA04DD31 +:108B200081EE200ABDE8014048E7F5EE400AF1EE8B +:108B300010FA24D581EE200AB5EE401AF1EE10FAB3 +:108B40000EDBFFF73BFF10EE100AEAF7DBFF224ACD +:108B5000224BF1F783FCEBF7CFF800EE100A01BDD2 +:108B6000FFF72CFF10EE100AEAF7CCFF1A4A1C4B55 +:108B7000F1F774FCEBF7C0F800EE100A01BDB5EE9A +:108B8000401AF1EE10FA02DD9FED160A01BDB5EEB6 +:108B9000401AF1EE10FA02D59FED130A01BD9FEDC8 +:108BA000130A01BD01490860704700007CFE0020E7 +:108BB000000000000000E03F0000000000407F4097 +:108BC000000000000000503F0100803FFB21F93F02 +:108BD000000050BF0000503F182D4454FB210940B5 +:108BE000FB2109C0DB0FC93FDB0FC9BF000000003C +:108BF000FB21F9BF0000000002000000040000009B +:108C000006000000080000000A0000000C00000040 +:108C10000E00000010000000120000001400000010 +:108C200017000000190000001B0000001D000000DC +:108C30001F000000210000002300000025000000AC +:108C400027000000290000002B0000002D0000007C +:108C50002F0000003100000033000000350000004C +:108C600037000000390000003B0000003D0000001C +:108C70003F000000410000004300000046000000EB +:108C8000480000004A0000004C0000004E000000B8 +:108C90005000000052000000540000005600000088 +:108CA000580000005A0000005C0000005E00000058 +:108CB0006000000062000000640000006600000028 +:108CC000680000006A0000006C0000006E000000F8 +:108CD00070000000720000007400000076000000C8 +:108CE000780000007A0000007C0000007E00000098 +:108CF0008000000082000000840000008600000068 +:108D0000880000008A0000008C0000008E00000037 +:108D10009000000092000000940000009600000007 +:108D2000980000009A0000009C0000009E000000D7 +:108D3000A0000000A2000000A4000000A6000000A7 +:108D4000A8000000AA000000AC000000AE00000077 +:108D5000B0000000B2000000B4000000B600000047 +:108D6000B8000000BA000000BC000000BE00000017 +:108D7000C0000000C2000000C4000000C6000000E7 +:108D8000C8000000CA000000CC000000CE000000B7 +:108D9000D0000000D2000000D4000000D600000087 +:108DA000D8000000DA000000DC000000DE00000057 +:108DB000E0000000E2000000E4000000E600000027 +:108DC000E7000000E9000000EB000000ED000000FB +:108DD000EF000000F1000000F3000000F5000000CB +:108DE000F7000000F9000000FB000000FD0000009B +:108DF000FF00000001010000030100000401000069 +:108E000006010000080100000A0100000C0100003A +:108E10000E0100001001000012010000140100000A +:108E20001601000018010000190100001B010000DC +:108E30001D0100001F0100002101000023010000AE +:108E40002501000027010000290100002A0100007F +:108E50002C0100002E010000300100003201000052 +:108E60003401000036010000380100003901000023 +:108E70003B0100003D0100003F01000041010000F6 +:108E800043010000450100004601000048010000C8 +:108E90004A0100004C0100004E010000500100009A +:108EA000510100005301000055010000570100006E +:108EB000590100005B0100005C0100005E01000040 +:108EC0006001000062010000640100006501000013 +:108ED00067010000690100006B0100006D010000E6 +:108EE0006E010000700100007201000074010000BA +:108EF0007601000077010000790100007B0100008D +:108F00007D0100007F01000080010000820100005F +:108F10008401000086010000870100008901000033 +:108F20008B0100008D0100008E0100009001000007 +:108F300092010000940100009501000097010000DB +:108F4000990100009B0100009C0100009E010000AF +:108F5000A0010000A2010000A3010000A501000083 +:108F6000A7010000A8010000AA010000AC01000058 +:108F7000AE010000AF010000B1010000B30100002C +:108F8000B4010000B6010000B8010000B901000002 +:108F9000BB010000BD010000BF010000C0010000D6 +:108FA000C2010000C4010000C5010000C7010000AB +:108FB000C9010000CA010000CC010000CE01000080 +:108FC000CF010000D1010000D3010000D401000056 +:108FD000D6010000D7010000D9010000DB0100002C +:108FE000DC010000DE010000E0010000E101000002 +:108FF000E3010000E5010000E6010000E8010000D7 +:10900000E9010000EB010000ED010000EE010000AD +:10901000F0010000F1010000F3010000F501000083 +:10902000F6010000F8010000F9010000FB0100005A +:10903000FD010000FE01000000020000010200002E +:109040000302000004020000060200000802000003 +:10905000090200000B0200000C0200000E020000DA +:109060000F020000110200001302000014020000B1 +:109070001602000017020000190200001A02000088 +:109080001C0200001D0200001F0200002002000060 +:109090002202000023020000250200002602000038 +:1090A00028020000290200002B0200002C02000010 +:1090B0002E0200002F0200003102000032020000E8 +:1090C00034020000350200003702000038020000C0 +:1090D0003A0200003B0200003D0200003E02000098 +:1090E0004002000041020000430200004402000070 +:1090F0004602000047020000480200004A02000049 +:109100004B0200004D0200004E0200005002000021 +:1091100051020000530200005402000055020000FA +:1091200057020000580200005A0200005B020000D3 +:109130005C0200005E0200005F02000061020000AD +:109140006202000064020000650200006602000086 +:1091500068020000690200006A0200006C02000060 +:109160006D0200006F02000070020000710200003A +:109170007302000074020000750200007702000014 +:10918000780200007A0200007B0200007C020000EE +:109190007E0200007F0200008002000082020000C8 +:1091A00083020000840200008602000087020000A3 +:1091B000880200008A0200008B0200008C0200007E +:1091C0008E0200008F020000900200009202000058 +:1091D0009302000094020000960200009702000033 +:1091E00098020000990200009B0200009C0200000F +:1091F0009D0200009F020000A0020000A1020000EA +:10920000A2020000A4020000A5020000A6020000C5 +:10921000A8020000A9020000AA020000AB020000A0 +:10922000AD020000AE020000AF020000B00200007C +:10923000B2020000B3020000B4020000B502000058 +:10924000B7020000B8020000B9020000BA02000034 +:10925000BC020000BD020000BE020000BF02000010 +:10926000C1020000C2020000C3020000C4020000EC +:10927000C5020000C7020000C8020000C9020000C9 +:10928000CA020000CB020000CD020000CE020000A6 +:10929000CF020000D0020000D1020000D302000083 +:1092A000D4020000D5020000D6020000D702000060 +:1092B000D8020000DA020000DB020000DC0200003D +:1092C000DD020000DE020000E0020000E10200001A +:1092D000E2020000E3020000E4020000E5020000F8 +:1092E000E6020000E8020000E9020000EA020000D5 +:1092F000EB020000EC020000ED020000EE020000B4 +:10930000F0020000F1020000F2020000F30200008F +:10931000F4020000F5020000F6020000F70200006F +:10932000F8020000FA020000FB020000FC0200004C +:10933000FD020000FE020000FF020000000300002A +:109340000103000002030000030300000503000006 +:1093500006030000070300000803000009030000E3 +:109360000A0300000B0300000C0300000D030000C3 +:109370000E0300000F0300001003000011030000A3 +:10938000130300001403000015030000160300007F +:109390001703000018030000190300001A0300005F +:1093A0001B0300001C0300001D0300001E0300003F +:1093B0001F0300002003000021030000220300001F +:1093C000230300002403000010B500F081F807F02B +:1093D00041F8FEF797FF454C4422002104F10C00B0 +:1093E000E8F758F80A2200212046E8F753F80A2245 +:1093F00000213F48E8F74EF80C22002104F1540008 +:10940000E8F748F83B4C4FF4B67200212046E8F7E5 +:1094100041F81E20208010BD07F01CB880B507F071 +:109420004DF8BDE80140FEF779BF3148F1F730BC97 +:1094300010B42F482D491CC81CC10C380021418094 +:1094400010BC704710B50446FFF7E4F92088401CB3 +:109450002080B4F9021080B2884200DB2180012014 +:1094600010BD38B5214C256D04F154012046FFF79D +:10947000E9FF1E2204F154011E48FFF71CFA0121E6 +:1094800004F15400FEF750FFA80705D5002104F1B0 +:10949000540007F015F804E0012104F1540007F02E +:1094A0000FF8002104F10C00BDE8344007E0124839 +:1094B00070470E49CA6822EA0000C8607047026817 +:1094C0001143016070470B4870470C4908607047B2 +:1094D0000A48006800210160416081604FF48061AA +:1094E000C160016141610121017670476C7000200B +:1094F0000C740020B465002078700020587400209F +:10950000418A828A891A09B2002902D5B0F910006D +:10951000091809B2F02901DB0120704700207047CB +:10952000418A828A891A09B2002901D5008A411824 +:10953000084600B27047F8B5044692B2F12A09D243 +:10954000E5684448854205D1B4F91460002E0CD07A +:10955000F02E0AD040480121016012B211460FF2EC +:109560001410E6F7E1FF0120F2BD1F463B48874299 +:1095700005D300F5B85C0CF1700C67450AD3364989 +:1095800001220A60024619460FF2F000E6F7CCFF0E +:109590000120F2BD12B2002A14D0608A801B00B2F2 +:1095A000002802D5B4F91070C01900B2F02801DA11 +:1095B0000020F2BD520005EB460000EB41011846C9 +:1095C00000F04EF8A08AF030A082B4F9101000B27A +:1095D000884201D10020A0822068401C2060012028 +:1095E000F2BD10B50446F02A0BD1E068194B984241 +:1095F00007D1B4F91230002B0DD0B4F91230F02B92 +:1096000009D015480121016011460FF28000BDE824 +:109610001040E6F789BF4FF4F072B4F9123000EB56 +:10962000430000F01DF8608AF0306082B4F9120047 +:10963000B4F91010884201D100206082208BF030F4 +:109640002083B4F9101000B2814200DD014621836D +:1096500010BD0000A8AF0020A4AF002068B3002018 +:1096600003E011F8013B00F8013B13465A1E002BA2 +:10967000F7D17047734D4D3120256400734D4D3245 +:10968000202523582C25235800000000734D4D330E +:1096900020256400F0B50446002500262F464FF42F +:1096A000C07047F6294312FB03F24FEAE23CE25F47 +:1096B00031F902EBA2EB0C0C0CF30F0C1EFB0CFCB3 +:1096C0004FEA2C4C24F802CB6545B8BF6546B4453B +:1096D000B8BF6646401EE6D14FF48071204602F0C6 +:1096E000DFF8714204F580708D42B8BF0D462DB28F +:1096F000012D1FDBA0F5806043F6FF7101E06D00D6 +:109700007F1C2DB28D42BCBF3FB20A2FF7DB602118 +:109710000288BA4020F8022B0288BA4020F8022BB7 +:109720000288BA4020F8022B0288BA4020F8022BA7 +:10973000491EEDD138B2F0BD2DE9F24F024682B09C +:109740001069DFF8CC940090D0F81CB081690191C9 +:1097500000230468E55E47F6FF7A0DE0DFF8B414F5 +:109760008842B8BFDFF8B0042188691A2BF81100CD +:109770006D1C9B1C2DB21BB26088854280F28780D5 +:10978000E06B30F9131000EB430000274088A0EB9A +:10979000010C206C00EB410000F1020EA06B01995E +:1097A00030F9150001EB800000260FFA8CFC00F167 +:1097B0000408BCF1000F13D058F8040B3EF8021B4C +:1097C000A1FB0001C00BACF1010C40EA414086193D +:1097D0000FFA8CFCBCF1000FEED101E076087F1C83 +:1097E000E089E16A01EB800151F8041C8E4228BF38 +:1097F000032EF3D2022E24D3002100B2D4F82CC0C1 +:10980000A0EB010EBEF1020F0ADB00EB010E4FEAE6 +:109810006E0E5CF82EC0664534BF70467146EDE7AB +:109820005CF821E05CF820C0A6EB0E06ACEB0E0C59 +:1098300002E076084FEA5C0C4E45FAD2BCF1000F0C +:1098400005D12088281A00212BF8101090E7D4F8B1 +:1098500028E03EF911103EF91000401A7043B0FBA9 +:10986000FCF000FA81F0BDF80810C91B09B2676C62 +:10987000002951BF37F91110494237F911104942F7 +:1098800009B2401A5045FFF669AF50466CE7108D9B +:10989000C0F3400028B35069009BC1685B688B42ED +:1098A00026BF591A89B2002101F11003DC1003EB25 +:1098B00014742411A3EB04130429AEBF0421491C22 +:1098C00089B2D48C166A4D1E05FB04644D0814FA47 +:1098D00085F4B4FBF1F1D1849BB200EB4300D18C51 +:1098E000018403B0BDE8F08F2DE9F04F0168B1F9B4 +:1098F0000230B1F900404A6A1B1B8468858DB4FBB5 +:10990000F5F805FB18444D8924B26C43456A05EB14 +:1099100044041BB20027BF4D47F6FF7806E0AC4574 +:10992000B8BFDFF8F4C224F802CB7F1C3FB2B1F815 +:109930000AE0BC46F4451BDAC6694FF0000E012B65 +:1099400009DB994636F902AB32F902BB1AFB0BEE82 +:10995000B9F10109F6D10E6B36F91C604FEA2E2ED3 +:1099600006FB0EF64FEA262CC445D8DBC446DAE7E0 +:10997000BDE8F08F2DE9F043828DC368B0F93E4019 +:1099800001684D8BD3181B1BB3FBF2F402FB14329E +:109990004B8912B25A43436A03EB4202B0F93C309E +:1099A0001C46A542B8BF2CB204DB002C48BF2CB229 +:1099B0005B1C8387631C1BB24FF0000C5C1E964D32 +:1099C000944E47F6FF7808E0B645B8BFAE4627F894 +:1099D0001CE00CF101070FFA87FCB1F80AE0F4452E +:1099E0000CDA076A32F9029B37F91CE004FB0E9E81 +:1099F0009EFBF3FEC645E7DBC646E8E7BDE8F0831D +:109A00002DE9F34F85B0006805990190B0F90A007F +:109A1000019A00900598B2F91820808DC968821AC1 +:109A20005118491CB1FBF0F200FB121000B2039078 +:109A3000002100980128C0F2E88000A8425E059845 +:109A4000406ADDF818B0DFF8D0910290034605981F +:109A5000D0F820800398401C00B2049001984689F9 +:109A60000398029FDDF810E006FB001007EB4007AB +:109A7000B7F90000C5100598808D9EFBF0F400FB3F +:109A800014E424B2002C0CBF1F4607EB4607641CED +:109A90000FFA84FC9CFBF0F4B7F900E000FB14C45F +:109AA00024B205EBEE05002C0CBF9C4607EB460CE0 +:109AB000BCF90070641C05EB671E24B294FBF0F542 +:109AC0003F1100FB15447F4224B2002C0CBF9C4682 +:109AD0000CEB460CBCF90050641CAEEBE50EA7EB9A +:109AE000651724B294FBF0F500FB15452DB2002D4F +:109AF0000CBF9C460CEB460CBCF900404FEA241A04 +:109B00000AEB8A0AAEEB0A0EB8F900A06D1CA4EBB2 +:109B10000A042DB295FBF0FA00FB1A5564112DB220 +:109B2000002D0CBF9C460CEB460CBCF900A06D1C34 +:109B3000AEEBEA0E07EB6A172DB295FBF0FA00FBCD +:109B40001A552DB2002D0CBF9C460CEB460CBCF9EF +:109B500000A06D1C0EEB6A1E07EB2A172DB295FBB9 +:109B6000F0FA00FB1A552DB2002D0CBF9C460CEBF1 +:109B7000460CBCF900A06D1C0EEBEA0E2DB295FB55 +:109B8000F0FA00FB1A5000B200280CBF9C460CEB08 +:109B9000460CFE010A2796FBF7F6BCF90070E001BF +:109BA0000EEBE707FF01642497FBF4F7B0F5004FD5 +:109BB000A8BF47F6FF7002DA4845B8BF4846B6F579 +:109BC000004FA8BF47F6FF7602DA4E45B8BF4E46B3 +:109BD000B7F5004FA8BF47F6FF7702DA4F45B8BF89 +:109BE0004F462BF8020B491C069820F8126008F12A +:109BF00002080098069E801800B226F810709B1C80 +:109C00000098521C8142FFF629AF07B0BDE8F08FE3 +:109C1000010010000280FFFF0180FFFF426C02F68E +:109C200070000160002181870421C18702F60401D0 +:109C3000016202F2D071C16102F57471416181610A +:109C400002F5F87181621321818542627047F8B58F +:109C500004460020256968876869B5F91020B0F8C6 +:109C6000DE1129822968096AFFF714FDE88669690F +:109C7000084607F051F8E98E081A4000E8860022ED +:109C80002968A869B1F908100023012910DB0646EC +:109C9000B6F9027036F904CB1CFB0CFC17FB07C7A6 +:109CA00012B240F822709B1C521C1BB28B42EFDB9D +:109CB000B5F936102046FFF73FFD2846FFF714FEA2 +:109CC000A868401CA860F1BD2DE9F64F814683B01D +:109CD000D9F80860B0890E9C401C00EBD070C0031E +:109CE000000C1AB1022A1CD00AD322E07168584332 +:109CF00001EB4007706900EB4308A4B2CCB917E050 +:109D0000F089B168401C00EBD070C003000C5843D0 +:109D100001EB4007B06900EB4308A4B24CB9348AA8 +:109D200007E07168584301EB4007706900EB430896 +:109D3000F489012A00F0208103210AE000EB4100B0 +:109D4000031F30F9042C5D8820F8045C091D5A803B +:109D500089B2B289D9F818009142EFDBA4B200921F +:109D600001940123D9F81C20394600F0DAF9E00803 +:109D7000C1004FF0000C01910129C0F2DD80D9F83B +:109D80001C20AE48742114E000EB4E0540F2352A49 +:109D900030F91EE0B5F90250AAEB030A0EFB0AFEE9 +:109DA00015FB03E31B13D38008320CF101031FFAE8 +:109DB00083FC019B9C4580F2BF80B2F9003038F9EA +:109DC00002EB13FB0EF34FEA632E01FB0EF31D149F +:109DD00040F2352303FB15EE0FFA8EFE15F1200A33 +:109DE00048BF4FF0000E14D40AF10105402DA8BF62 +:109DF0004FF4805E0DDA00EB4A0530F91AA0B5F990 +:109E00000250A3EB0E0B0AFB0BFA15FB0EAE4FEA4A +:109E10002E3EA2F800E00CF101051FFA85FCB2F914 +:109E200002E038F9025B1EFB05F56D1201FB05FA35 +:109E30004FEA2A4AB2F904E003FB1A552DB21AF18F +:109E4000200A48BF002518D40AF1010BBBF1400FCE +:109E5000A8BF4FF4805510DA00EB4A0BBBF902B0F3 +:109E6000CDF800B0A3EB050B30F91AA00AFB0BFAF2 +:109E7000DDF800B00BFB05A52D13958038F9025BCA +:109E80001EFB05FE4FEA6E2E01FB0EF52D1403FBA3 +:109E900015EE0FFA8EFE15F1200A48BF4FF0000EA6 +:109EA00014D40AF10105402DA8BF4FF4805E0DDAED +:109EB00000EB4A0530F91AA0B5F90250A3EB0E0BDE +:109EC0000AFB0BFA15FB0EAE4FEA2E3EA2F802E09B +:109ED0000CF102051FFA85FCB2F906E038F9025BC5 +:109EE0001EFB05FE4FEA6E2E01FB0EF52D1403FB43 +:109EF00015E31BB215F1200E48BF00233FF553AF09 +:109F00000EF10105402DFFF63FAF4FF480534AE7B5 +:109F10004A4800EB4E0340F2352530F91E00B3F9F4 +:109F20000230AD1A684313FB0200001321F81C0035 +:109F30000CF101001FFA80FCA4451DDAD9F81C10B1 +:109F400038F9022B31F91C0010FB02FE4FEA6E209B +:109F500074224243131440F2352202FB130212B260 +:109F600013F1200E48BF0020E0D40EF1010040287C +:109F7000CEDB4FF48050D9E7BDF81000002859D04F +:109F8000022804BFB768D6F81880308A039A019077 +:109F90000123F08900903946D9F81C0000F0C1F87F +:109FA000274A284B4FF0000C42F60D6042F60E6136 +:109FB000B82419E002EB4E0532F91EE0B5F9025063 +:109FC000C7F5B27A0EFB0AFE15FB07E7BD122FB2EA +:109FD000C7F1000E8E45A8BF8646039F27F81CE0F8 +:109FE0000CF101071FFA87FC378ABC4522DA039F70 +:109FF00038F902EB37F91C7017FB0EF77D1204FBE2 +:10A0000005F74FEA274E4FF4B27707FB1E570EF1C4 +:10A01000200E0FFA8EFE3FB2BEF1000F04D5AD1038 +:10A020009D42D4DA1D46D2E70EF10105402DC1DB79 +:10A030000025CCE705B0BDE8F08F0000B080030834 +:10A0400030800308F3D1FFFF10B401460A684B6C5F +:10A05000148803F63810048014880E2C04BF54882A +:10A06000032C04D052204884002010BC70479188F3 +:10A070008181D188C18111890182918912FA81F18E +:10A080004160118A12FA81F18160518912FA81F1DD +:10A090004161D18912FA81F1816103F2D051C1612C +:10A0A00010BC7047F0B413460022DD082C46A3EB29 +:10A0B000C4031FD051F8045B50F8047B50F804CB64 +:10A0C0002FFA85F62D122FFA85F527FB06222CFB99 +:10A0D000052251F8045B50F8047B50F804CB2FFAAA +:10A0E00085F62D122FFA85F527FB06222CFB05227B +:10A0F000641EDFD19BB25B1CDB031B0C0ED031F95D +:10A10000024B30F9025B2606361616FB052230F9A3 +:10A11000025B241214FB05225B1EF0D1F0BC10463A +:10A1200070472DE9F34F85B091461098ADF8400087 +:10A13000ADF800300025BDF8400020F0010001908E +:10A14000BDF84000C008ADF80C001198ADF844000F +:10A15000BDF84400069E4108A0EB4100ADF80200A6 +:10A1600001988219059800EB45000290BDF80CC0DB +:10A17000BDF84030DDF808A000204FF0000EA3EB42 +:10A18000CC03BCF1000F38D056F8044B5AF8048BBE +:10A190002FFA84F724122FFA84FB5AF8044B28FB79 +:10A1A000070024FB0B0052F804BB2FFA8BF74FEA91 +:10A1B0002B2B2FFA8BFB28FB07EE24FB0BE756F823 +:10A1C00004EB2FFA8EF44FEA2E2E2FFA8EFB5AF85C +:10A1D00004EB5AF8048B2EFB040052F8044B28FBC6 +:10A1E0000B002FFA84FB24122FFA84F42EFB0B7E33 +:10A1F00028FB04EEBCF1010CC6D19BB25B1CDB0357 +:10A200005FEA134C18D036F9024B3AF9028B3AF94F +:10A21000023B27063F1617FB0800241214FB03001D +:10A2200032F9024B27063F1617FB08EE241214FBE7 +:10A2300003EEBCF1010CE6D120F3CF102EF3CF13C7 +:10A2400029F8020B29F8023B16460198491E82198B +:10A2500089B200298AD1BDF8020078B18246BDF8E2 +:10A26000402002983146FFF71DFF20F3CF1029F858 +:10A27000020B01988619BAF1010AF0D1BDF840002D +:10A280004519BDF80000401EADF80000ADB2BDF8A4 +:10A29000000000287FF45CAF07B0BDE8F08F00003D +:10A2A0002DE9F0430446079DA78AADB29FB3052F61 +:10A2B000A6BF381F1FFA80FC4FF0000C781EA6685E +:10A2C00080B206EBC006B6F800E05FEADE381BD0CD +:10A2D0004FEA8E584FEA9858884504BFCEF3C12EF6 +:10A2E000AE4511D1B6F806E0B4F82280C64504BFE9 +:10A2F000B6F802E0964507D133B19988B288914209 +:10A3000088BF1146B18061E08646AEF101001FFAB8 +:10A310008EFEE645D7D1D4F808E0B4F816C00EEBAF +:10A32000C706384601E00836401C80B2604504DAB2 +:10A33000B6F800905FEAD939F5D1604511D176467B +:10A34000002001E00836401C80B2B84204DAB6F8BA +:10A3500000E05FEADE3EF5D1B84208BF4FF6FF707D +:10A3600035D0378807F41C47890557EA915141F4E5 +:10A37000004131806BB11F78FF0744BF41F4804139 +:10A3800031801988C1F3800119B1318841F400513D +:10A390003180318865F3CC21318072801BB9E18D29 +:10A3A000B180002109E02DB1E18DB1801988890AC1 +:10A3B000491C02E09988B180618CF180411CA18226 +:10A3C00089B2228B8A4238BF0A46228380B2BDE816 +:10A3D000F0838168008B012806DB0A885204520C46 +:10A3E00021F8082B401EF8D170472DE9F041031DDC +:10A3F00099685A689F8ADD8F88461646012F06DBCA +:10A4000034886404640C26F8084B7F1EF8D1012DB3 +:10A4100045DBC66D371D4FF4804C4FF6FF76B8F81C +:10A4200000E0CEF30024A4B3CEF380145CB140F27C +:10A43000BF3404EA0E040EF5806E0EF47C4E4EEA34 +:10A440000404A8F80040B8F802E009E032F83E4001 +:10A4500044F4004422F83E4002EBCE04B4F802E09B +:10A46000B645F3D1B3F828E009E032F83E4044F4B1 +:10A47000004422F83E4002EBCE04B4F802E0B645B8 +:10A48000F3D1B7F800E01C8FA645BCBF446824F8A0 +:10A490001EC008F20A0807F20A076D1EBFD11B8E04 +:10A4A000DB0B2CD000234FF6FF760DE032F838504E +:10A4B00045F4004522F8385002EBC804B4F8028095 +:10A4C000B045F3D15B1C9BB2B0F84A40A34216DA08 +:10A4D000D0F8804034F8134004EB840501EB4505C7 +:10A4E000B5F802802D88C5F30025002DEAD003EBD6 +:10A4F000830501EB4505ED88002DE1D1E2E7BDE8DC +:10A50000F08101EB8102C16D01EB42010A89134622 +:10A510004FF6FF718B4200D1704770B4120414D40F +:10A5200003EB8302C36803EB42021388C3F30024E6 +:10A530004CBB43F4807313805180808EC00B22D0BB +:10A540000020D080108170BC704723F40042836DDE +:10A5500003EB420333F8022B5404640C04EB840530 +:10A56000C46804EB45042588C5F300264EB945F4BC +:10A57000807525806180858EED0B02D00025E580F9 +:10A5800025811204E6D570BC70472DE9F24F01EB2E +:10A590008104D0F80CE0660006EB0E010D88C5F3CF +:10A5A0000024002C00F08A8000F14C04AF0AD4F89B +:10A5B0001090B1F804A04E44C5F34018758807F117 +:10A5C000010CB8F1000F0ED0A76907EBC50500F12B +:10A5D0000C073F8DC7F380371FB92F8857441FFAE8 +:10A5E00087FA6D8802E0676937F82550A5EB0C05FE +:10A5F0000FFA85FCBCF1010F0CDB00F10C05ACF18E +:10A6000001076D8E55440FFA87FC1FFA85FABCF1DD +:10A61000000FF2D11D88554550D3AA453FD3178866 +:10A6200007EB87054FEA450CE644B8F1000F07D069 +:10A630007788A56905EBC705B5F80280AD8806E007 +:10A640006769758837F8258007EB85056D88B788B9 +:10A650000CEB0906BEF80090C9F34019B9F1000FE0 +:10A660000AD0B6F80290D4F818C00CEBC90CBCF8AC +:10A670000290BCF804C009E0D4F814B0B6F802C0E7 +:10A680003BF82C900BEB8C0CBCF802C0B6886545EF +:10A6900005D313D1B74202DB10D1C8450ED2A3F8BF +:10A6A00000A0BDF80030138000F10C02128DD20B17 +:10A6B00004D00A896260C988A0F84C10BDE8F18F07 +:10A6C0002DE9F041CB8800214FF6FF74A34264D0FE +:10A6D00000F10C041D042BD4258D8C46C5F3803667 +:10A6E00036B1D0F88C7037F913707F0007F5FA5C3B +:10A6F000C06803EB830700EB470EBEF80000BEF80E +:10A700000470C0F300237BB197420DDAC5F3C02279 +:10A7100022B1628A02F5FA52974205DA1EB11FFA97 +:10A720008CF2974200DA0121C0F34000A8B330E078 +:10A73000E56C23F4004305EB430636F8023BC7689B +:10A7400023F4004C0CEB8C0507EB4505AF88B5F8FE +:10A7500000E0CEF30025CDB1974217DA258DC5F381 +:10A76000C028B8F1000F05D0B4F8128008F5FA58E7 +:10A7700047450BDAC5F380355DB1D0F88C5035F91B +:10A780001C506D0005F5FA55AF4202DBCEF34005D3 +:10A790000DB1012101E01B04CFD50846BDE8F081D1 +:10A7A0002DE9F0479146984682B004460D46C845CB +:10A7B00053D04FF6FF7A4FF6FE715246884515D1B9 +:10A7C000608B884209D10120009000232046FFF7CA +:10A7D00067FD024652453DD062836A804946204665 +:10A7E000FFF78FFE2888C005C00D45E008EB880103 +:10A7F000E0684E00371838887A88C0F3401078B186 +:10A80000002000903B46E06D616E3018408801EBFF +:10A81000C000C1882046FFF743FD0246524519D0CB +:10A820003888C0F300100028D7D0A08E00F4205044 +:10A83000B0F5205FD1D1E16D715C0120890748BF7F +:10A84000022000903B4641462046FFF729FD024684 +:10A850005245C2D1FE20BDE8F6872888810A3F29EB +:10A860000BDAA18EC1F3C02100291CBFC0F3400147 +:10A87000002902D140F0400028800020BDE8F68782 +:10A880002DE9F14F041D86B0E08F069A049002F185 +:10A8900044050020ADF80200608EADF80C00218E5A +:10A8A000C1F3C02292B1C1F3803131B94FF47F417D +:10A8B00008421CBF000AADF80C00B5F90400401EA8 +:10A8C0004FF6FE71E182401EADF80800069AE08B5B +:10A8D0005268218F32F811100818E083208EC0F3DF +:10A8E000C02038B1A08BB0F5FA5F03DA208B00F5F9 +:10A8F000FA5002E0A08B218B0818ADF80A004FF047 +:10A9000000084FF48040A083AE69A768C1462AE0E2 +:10A91000BDF80400B880A18BBDF80400884288BF50 +:10A920000846A083CDF800A0BDF806300698424640 +:10A930003946FFF735FFADF80200208EC00B0AD074 +:10A94000E868B0F5803FA4BF4FF6FF70E860E868A4 +:10A9500038812889F88008F1010807F20A0706F211 +:10A960000A0609F1020904981FFA88F8804580F266 +:10A970004081BDF80200002840F03B818DF80000C6 +:10A980003A88C2F300200028E5D0910A491CC2F39E +:10A990004012002AB888728804D02B6A03EBC202E6 +:10A9A000928803E0EB6903EB8202528889B28A4203 +:10A9B0000DD23F2ABCBFA18F0818296B39B1069A66 +:10A9C000B188B2F84420914208BF4FF48040ADF8FE +:10A9D0000400ADF80680208EC00B18BF3889E860EF +:10A9E000208EC00B18BFF88828814FF6FF70B6F88C +:10A9F00006A082451DD05FEA0A4007D4069801AB45 +:10AA00000DF106025146FFF7C0FD12E069692AF414 +:10AA1000004001EB400B3BF802AB06984FEA4A417D +:10AA200001AB0DF10602490CFFF7AFFD5FEA0A40EA +:10AA3000F1D5208EC0F3C020A8B3BDF908100029BD +:10AA400031D43888C0F340026AB32A6B32F911104E +:10AA5000B5F9102002EB4101BDF8042089B2914202 +:10AA600019D2ADF8041038888005800D3880208E0A +:10AA7000C0F3403018B14FF6FE70ADF806004FF647 +:10AA8000BF71388808403880208EC00B06D0002067 +:10AA9000E860288102E040F040003880BDF80800FE +:10AAA000401EADF808003888C0F3402000281ABFC7 +:10AAB000686A39F800A0B6F804A006984068BDF8A6 +:10AAC000041030F81A201F32521112FA81F1ADF839 +:10AAD0000410218E01F49041B1F5904F28D16A6C99 +:10AAE000BDF9041039F80220A1EBD211069AB2F890 +:10AAF000442009B2924504BFA28E11FA82F10AB233 +:10AB0000012AB8BF0121ADF80410218EC90B0FD066 +:10AB1000317809060CD530F91A00404200B200F035 +:10AB200076FAE96801EB2010E8602889401C28814A +:10AB30003888C0F3400000283AD1208EC0F3C021ED +:10AB4000B1B1C0F3803060B1A86C39F90000BDF834 +:10AB50000410400000F5FA508842BCBF01208DF877 +:10AB60000000608BBDF8041000F5FA50884208DB45 +:10AB7000BDF80A00BDF80410884202D39DF8000019 +:10AB8000B0B1BDF80A2006983146FFF799FD20B90B +:10AB900038884FF6FF61084038803888C005C00DFE +:10ABA00038804FF48040B8804FF6FF707880D2E64E +:10ABB000208E00F49040B0F5006F7FF4A9AEBDF98F +:10ABC0000400BDF80C10401A0699B1F8441000B208 +:10ABD0008A4504BFA18E10FA81F001B20129B8BFE5 +:10ABE0000120ADF80400208EC00B3FF491AE51203F +:10ABF0000AE0BDF8020028B90698FFF7F6FB608D61 +:10AC0000401C6085BDF8020007B0BDE8F08F2DE95B +:10AC1000F041054682B0EC6804F10C070026B7F855 +:10AC200028C07A6F4FF4804318465FEADC3C12D0AC +:10AC3000218E0022284600F043F8BDE8F6810EEB95 +:10AC40008E08D4F80CE00EEB480EBEF804E09E45EA +:10AC50003CBF7346604632F802CBE6464FF6FF78BB +:10AC6000C645ECD17A8B9A421DD37B83B883B3F56A +:10AC7000FA5F18DAADF800607A8CFA8300EB800294 +:10AC8000E06800EB420040883884481C788700A9BF +:10AC9000284600F07FF9698D60F30701698529690D +:10ACA000686949680161788F38B14044788780B21B +:10ACB00018B9204600F03BFA06463046BDE8F6815A +:10ACC0002DE9F84304460020ADF800001746D4F8FB +:10ACD0000C904FF4FA58B80748BF4FF4804800254D +:10ACE00009F10C0633E0706F30F81500726800EB64 +:10ACF0008001D9F80C0000EB410005EB850102EB67 +:10AD000041018288B2F5804F1CBFC388002B1CD044 +:10AD100090451AD34B8813B10B889A4215D20A80FA +:10AD20000289C388520192FBF3F28A80B28C521CD2 +:10AD30004A8040880881708CC88000A9204600F0B5 +:10AD400029F9618D60F307016185681C85B2F08F78 +:10AD50008542C8DBF80710D500250BE0706805EBCD +:10AD6000850100EB4100418811B14FF6FF71418030 +:10AD7000681C85B2F08F8542F0DB4FF000084FF67B +:10AD8000FF7703E008F101001FFA80F8F08F80459B +:10AD900058DA716808EB880001EB400568880028E4 +:10ADA000F0D0B84215D03818688080B20028E9D1B8 +:10ADB000306E70B128887083706F30F81800B083DF +:10ADC000E888F08328893084484600F0B0F90028EC +:10ADD000D8D000200AE0AA888B889A4202D20021AB +:10ADE000698013E000224A80401C80B2F18F8842C3 +:10ADF0000CDA4045F8D0726800EB800102EB4101AB +:10AE00004A88002AF0D0BA42E5D06F80F18F88429C +:10AE1000B8D1002068800FF67012A888706461684D +:10AE20000864F18C706CC1F3022132F81110884271 +:10AE300005DA608D00F47F4040F04000608501201D +:10AE4000BDE8F2830020BDE8F283F0B4C268406838 +:10AE5000958E01EB8103D16801EB4304016BED0595 +:10AE6000ED0D0D800123B2F92450CD80558C0D815C +:10AE7000257805F001054D802588C5F380058D8076 +:10AE800065884FF6FF7413E02E88B605B60D21F8DD +:10AE90000A6F5B1CB5F90460CE80EE880E812E88A7 +:10AEA000C6F380364E802E88C6F340368E806D887D +:10AEB000A54216D0966806EBC5052E88C6F3C126B6 +:10AEC000002EF4D1CE88B5F90470F61BCE809BB26B +:10AED0000E89EF88F61B0E81068AB342D4D3562121 +:10AEE00041848384F0BC408C7047F8B504466068A8 +:10AEF000E568066B2046FFF7A8FF002849D1616886 +:10AF0000898C002202E0521C06F20A0692B28A42A2 +:10AF100005DA7788002F04BFB788002FF3D08A4264 +:10AF200001D13120F2BD3188AA8E61F30802AA86D0 +:10AF30007188228D61F3C3022285A98EC1F3C022DC +:10AF40003ABB6A8E0FF64C03C2F3022233F812208A +:10AF5000AB8C5A435202120CC1F34023002B6B8C72 +:10AF600006D09508AE189E4204DA5200EB1805E0B0 +:10AF70009A4201DB322004E002EB62029A42A8BF4F +:10AF80003320C1F3003121B1218DC1F3C00101B9DA +:10AF90005420F2BD2DE9F047C368B1F800C0D3F8E2 +:10AFA00080A0D3F80C904FF6FF784FF480444246CF +:10AFB000002618E00EEB8E056D0035F8097007F4D9 +:10AFC0009077B7F5907F0ED1DF6DEF194D44AD88C6 +:10AFD000A54238BFAC4506D22C467E885D6E05EB97 +:10AFE000C6067246F6883AF802EBC645E2D10C80F6 +:10AFF0004245998E66F3080199869C8408BF3120EA +:10B0000003D01146BDE8F0476FE7BDE8F08710B503 +:10B0100000F58061B1F5006F39D8DFF864170122BF +:10B02000034601F110048B4218DB24B2A04215DA6A +:10B03000802A19D0E01A8001611A90FBF1F10FF219 +:10B04000607000EB420309B230F9120033F9023CA0 +:10B05000C1F14004604313FB010016E0521C24B20E +:10B0600012B22146812ADCDB42F67A308C4213D0C0 +:10B07000E21A9201611A92FBF1F109B2C1F14003A7 +:10B0800042F6D122584312FB0100801110BD40103E +:10B09000FFF7BDFF4043001310BD0021C82201E0AF +:10B0A0008008491CB0F5805FFAD20003C823B0FBCA +:10B0B000F3F303E09A185208B0FBF2F3A3F1010C8A +:10B0C000624524BF03F1010C9445F3D302FA01F069 +:10B0D000704740010021B0F5004F24BF400A40F204 +:10B0E0003D61B0F5806F24BF400901F27731FF2840 +:10B0F00084BF800801F26311802824BF4008B13169 +:10B10000402824BF4008B131312824BFA0EB900073 +:10B110004A31292824BFA0EBD0002231262824BFA1 +:10B12000A0EBD0002231203801EBC00070472DE9A0 +:10B13000F04F044685B0208D04900021608D03906F +:10B14000054604A80022008802908A46A38EC3F315 +:10B15000403389468846002B00F0DB80A38D0193A5 +:10B1600018E067444FEA570CB1FBFCF7A7F1010B5D +:10B17000DC4524BF07F1010BE345F2D30CFA00F0E4 +:10B1800082180AF1010A00982D1A9805800D31469F +:10B19000BEF802304FF6FF76B34233D0A66806EB16 +:10B1A000C30EBEF80030C3F3C126002EF0D0BEF8A7 +:10B1B00004C0AFB2674538BF05F58035A5EB0C0775 +:10B1C000BFB20097B844276F37F820C007EB800064 +:10B1D00040888445D7DA0229D5D0BCF10F0FB8BF1B +:10B1E0004FF00F0C00FB0CF100204FF0C80C01E0F9 +:10B1F0008908401CB1F5805FFAD20903C827B1FB6A +:10B20000F7F7B3E702F120008209C8EB081802E063 +:10B210004FEA58085208B8F5805FF9D2002A7AD070 +:10B22000500800EBC810B0FBF2F8039D0298019B98 +:10B23000002112E04A0802EBC010B0FBF1F0FFF76A +:10B2400048FFA0F2DA40404309EB20193188880515 +:10B25000ED1B800DC1F3C12173884FF6FF7293423D +:10B2600031D0A26802EBC3063288C2F3C122002AA1 +:10B27000F2D0B288ABB2934238BF05F58035AA1A36 +:10B2800097B2226F32F8203002EB80004088834270 +:10B29000DCDA0229DAD00F2BB8BF0F235843FFF7AF +:10B2A000FCFEC00808FB00F1C7EB0710800201E0BC +:10B2B00049084008B0F5805F38BFB1F5805FF7D22C +:10B2C0000029B7D125E04FEA0A41C80B99FBF0F9F4 +:10B2D000B9F5FA5F1FDC002000E0401C2268D28E26 +:10B2E00080B20146904206D2D4F88030049A33F8F6 +:10B2F00011309A42F1D1E26EE08C32F8111001FB6C +:10B3000009F100EBE120E084A084E08CB0F5FA5F65 +:10B3100001DA012000E0002005B0BDE8F08F818F48 +:10B32000426802EB4101428FD21C0A80028F21F851 +:10B33000022F408F21F8020F70472DE9F047044695 +:10B34000251D04F15C06B5F83EA0D6F8208000204B +:10B350006885E88328844FF480476F84AF84EF8446 +:10B360004FF6FF79A5F82890A4F84600288EC0F380 +:10B37000C02048B1B069B0F9000004F146014000B6 +:10B38000B1F90E1000FA81F0A883686810B1204668 +:10B39000FFF71FF800202882A882BAF1010FA868E1 +:10B3A00007DB01780180878000F20A00BAF1010A08 +:10B3B000F7D138F8021B49451DD0AA6801EB81007E +:10B3C00002EB40000388C3F3002252B943F48073B8 +:10B3D0000380A0F802902B8EDB0B02D00023C380E9 +:10B3E00003812A8EC2F3C02202B13A4682802046EF +:10B3F000FFF787F8DDE7002005E000EB8001EA6851 +:10B400004900401C8F5204F1460180B2898888426D +:10B41000F3D3298F60680246012905DB42F60D63EC +:10B4200022F8023B491EFBD1EA8FA968012A1BDBE7 +:10B43000E46DF368241D0E88C6F300266EB12688DD +:10B4400020F816700E88C6F3001636B12E8EC6F39D +:10B45000C02616B91E8820F816709B1C01F20A013E +:10B4600004F20A04521EE6D10020BDE8F08701680C +:10B47000CA8A520182838A895200C286CA895200CE +:10B4800002870A8A520042878A8A5200A0F8402026 +:10B490004A8A5200C287CA8B002A14BF52014FF455 +:10B4A0008042C2834A8982870A8C002A1ABF0F23EE +:10B4B00092FBF3F2012202864EF6FF730A8FA0F888 +:10B4C0004420CA8E521EA0F84A208A88A0F8422042 +:10B4D000828E1A404B881B06DB0F42EA03328286BB +:10B4E0004DF6FF731A404B881B069B0F03F00103B8 +:10B4F00042EA43328286838E4A8862F3CB23838674 +:10B500004FF6FF33828E1A404B881B06DB0E03F08A +:10B51000010342EA832282864FF6FF531A404B888A +:10B520001B061B0F03F0010342EA432282865204EA +:10B5300049880906520C490E42EAC131818670479A +:10B54000F0B400F10C01C068CE8E0A6D0B6F04469A +:10B55000012E2CDB15882F0703D5278847F001071C +:10B5600027806F0703D5278847F004072780AF0798 +:10B5700007D50F8DC7F3C0271FB9278847F01007DD +:10B580002780EF0607D50F8DC7F3C0271FB1278887 +:10B5900047F010072780ED0703D5258845F02005E3 +:10B5A000258004F20A0402F20A02761ED2D133F890 +:10B5B000021B4FF6FF72914208D001EB810200EBB3 +:10B5C0004204218841F002012180F0E7F0BC70477D +:10B5D000F8B50446606C616800F6581529600A8861 +:10B5E000242A03D0512060840020F2BD01F14802DA +:10B5F000568811FA86F6AE6516890EB111FA86F6EE +:10B60000C5F8846056890EB111FA86F6C5F88860CF +:10B6100096890EB111FA86F6C5F88C604BF6FF7369 +:10B6200057897E1EB641AF8EF643F60F1F4047EA9C +:10B630008636AE86D68911FA86F62E66168A11FAF5 +:10B6400086F66E66568A0EB111FA86F6AE66968A50 +:10B6500011FA86F6C5F88060D68A0EB111FA86F620 +:10B66000EE66168B0EB111FA86F62E67968B11FADE +:10B6700086F6EE65B1F848600EB111FA86F66E678F +:10B680009EB13688B4F91670760407EB2647B7F5F5 +:10B69000004F04DB47F6FF77A7EB264604E0394B63 +:10B6A0009F4202DAA3EB2646E682E68AC6F5FA5600 +:10B6B000A5F8546000F6E810D28811FA82F2EA6721 +:10B6C0000A1D938CA5F84830538E5B1EA5F84A30AE +:10B6D00068609BB2D0886A6802EB4000801DC01C85 +:10B6E00080088000286103EB830200EB42002063A6 +:10B6F000228A02EB820300EB4300E860898801EBB9 +:10B70000810200EB4200A860608AE8822846FFF7C9 +:10B71000AEFEA88E00F4C051B1F5006F19D1B5F896 +:10B720004A20002192B1D5F880301E8806EB8607AA +:10B73000EE6D06EB47066F6E768807EBC606F68859 +:10B74000B14238BF31469B1C521EEED1491CA5F8B0 +:10B750005610618B11B14004400CA886A08A698EF6 +:10B76000401E60F30A2169862846FFF7E9FE284655 +:10B77000FFF7D5FD2846FFF7E0FD2846F2BD0000A3 +:10B7800000FCFFFF0180FFFFCC0C00103313661696 +:10B790009A190000520065008000A000C50000005A +:10B7A000E305FB0513062B0644065D0677069106A6 +:10B7B000AB06C606E206FD061A07360753077107F1 +:10B7C0008F07AD07CC07EC070C082C084D086E0856 +:10B7D0009008B308D608FA081E09430968098E09BB +:10B7E000B409DB09030A2C0A550A7E0AA90AD30AFE +:10B7F000FF0A2B0B580B860BB50BE40B140C450CF6 +:10B80000760CA80CDB0C0F0D440D790DAF0DE70D78 +:10B810001F0E580E910ECC0E080F440F820FC00F52 +:10B82000001041108210C51008114D119311D9114B +:10B8300021126A12B51200134D139B13EA133A1426 +:10B840008B14DE1432158815DF1537169016EB169B +:10B850004817A51705186618C8182C199119F81952 +:10B86000611ACC1A381BA51B151C861CF91C6E1DF1 +:10B87000E41D5D1ED71E541FD21F5220D420592113 +:10B88000DF216822F2227F230E24A0243325C9253C +:10B890006226FD269A273928DC288029282AD12AE1 +:10B8A0000022ECF717BA000010B5DFF86048482214 +:10B8B000014604F54570E4F787FDD4F85003606352 +:10B8C00004F554704168C4F884108068C4F8D4004A +:10B8D000032802D1012006F04CF9002010BD80B5EC +:10B8E0004822DFF83818E4F76FFD002002BD80B56C +:10B8F0000C220146DFF82808E4F766FD002002BDAF +:10B9000080B50C22DFF81818E4F75EFD002002BDB8 +:10B9100010B5DFF810484FF4A672002104F5087046 +:10B92000E5F7B8FD4FF4087200212046E5F7B2FDB7 +:10B9300000F0C7FB4DF294034822DFF8EC17DFF864 +:10B94000EC0706F072F904464CF251330C22DFF892 +:10B95000E017DFF8E00706F068F9204310BD002388 +:10B96000002A01D14FF48032426201F00302032A1F +:10B9700000D1012301F01802182A00D1012301F09F +:10B98000C002C02A00D10123002B00D08821016011 +:10B9900070470A460146DFF88C07E0E7DFF86C17CE +:10B9A00088624FF47A7290FBF2F2CA628A6C002AC3 +:10B9B00004D1DFF8842792FBF0F088647047DFF849 +:10B9C0004C17886778314FF47A7290FBF2F24A6034 +:10B9D0000A6A002A04D1DFF8602792FBF0F00862BF +:10B9E0007047DFF82817C1F8C800C8314FF47A72E1 +:10B9F00090FBF2F24A600A6A002A04D1DFF8382785 +:10BA000092FBF0F008627047DFF81817C1F8600188 +:10BA10004FF47A7290FBF2F0C1F864017047DFF8DE +:10BA20000407D0F8D000001200F001007047DFF8E2 +:10BA3000F406006B001200F001007047DFF8E40626 +:10BA4000D0F88000001200F00100704730B40020F0 +:10BA50000146DFF8D02602F130031C6DE40501D564 +:10BA6000D3E91601146BE40508D5D3E90245A942D0 +:10BA700004DC01DBA04201D22046294602F1D003BA +:10BA8000D2F8D040E40508D5D3E90245A94204DC48 +:10BA900001DBA04201D2204629461C6DE40508D5F1 +:10BAA000D3E91645A94204DC01DBA04201D22046BD +:10BAB0002946D2F85031DB050AD502F5A874D4E93D +:10BAC0000223994204DC01DB904201D21046194660 +:10BAD00030BC70470A460146DFF860063FE70A4679 +:10BAE0000146DFF85C063AE770B584B004460D46BF +:10BAF000B4F90400C003009000AEB4F90600C0031E +:10BB00007060B4F90800C003B06004F10C0300AA2F +:10BB1000606A4100206880B204F05AF900982968F0 +:10BB2000A0EB6100009070686968A0EB6100706034 +:10BB3000B068A968A0EB6100B06004F1180300AA26 +:10BB4000606A4100206880B204F042F9206B40F046 +:10BB5000200020637FBDDFF8CC15C1F88400C1F858 +:10BB60005403704738B50C46002818D0DFF8B435B8 +:10BB7000D10702D50168C3F83413910703D503F543 +:10BB80004D7145684D60510703D503F54D718068CF +:10BB9000886003F54D7103F15000FFF7A5FF2046C3 +:10BBA000FFF7D9FF002210210846BDE8384006F013 +:10BBB00071B8F8B504460D46DFF86865002C12D060 +:10BBC00006F557770C222146384604F0DFFA0028A4 +:10BBD00009D00C2221463846E4F7F6FB06F55771EA +:10BBE0003046FFF781FF756306F54B746562D6F842 +:10BBF0000801002802D0C6F82C0303E04FF4D81047 +:10BC0000C6F82C0300220421084606F043F8012060 +:10BC10006060F1BDDFF80C15D1F83003012801D1C7 +:10BC2000012000E000200022C1F83023704710B549 +:10BC30000C46002804D00C22DFF8E414E4F7C4FB1F +:10BC4000002C04D0DFF8DC04D0F82C03206010BDF9 +:10BC5000F8B514461D46DFF8CC6406F154070268B7 +:10BC60008B0610D4A6F85420416879808068B8808B +:10BC7000F86A40F08000F86206F54D7106F1500058 +:10BC8000FFF732FF0DE07A614268BA618068F861BF +:10BC9000F86A40F02000F86201F003003863C6F84B +:10BCA0005403F86A40F4A070F862D6E92201C6E9AC +:10BCB0002401C6E922450020F2BD70B514461D4698 +:10BCC000DFF8606406220146301DE4F77DFB306B2F +:10BCD00040F4E0703063D6E90E01C6E91001C6E910 +:10BCE0000E4506F557713046FFF7FEFE002070BD89 +:10BCF000FEB514461D46DFF82C6406F1A4078A063B +:10BD000017D400F0B8F900A800F0A8F90098A6F838 +:10BD1000A40000A8416879808068B88006F5457164 +:10BD200006F1A000FFF7E0FEF86A40F08000F8623C +:10BD30000EE002687A614268BA618068F861F86A68 +:10BD400040F02000F86201F003003863C6F85803A1 +:10BD5000D6E93601C6E93801C6E93645F86A40F445 +:10BD6000A070F8620020FEBD2DE9F04385B00646C4 +:10BD70000F4614461D46DFF8AC8308F5A079F80499 +:10BD800009D500A9304604F09AF9102200A94846C6 +:10BD9000E4F71AFB04E0102231464846E4F714FBAE +:10BDA000C8E95645D8F8500107F4385141F4E0711C +:10BDB0000843C8F85001D8F8500110F4406F04D07F +:10BDC00022462B46304605F0DDFDD8F8500100052F +:10BDD0000AD500A80FF270311022E7F7C7F8224603 +:10BDE0002B4600A805F0E2FD002005B0BDE8F08379 +:10BDF000DFF830030021C0F880107047DFF824031B +:10BE00000021C0F8D0107047DFF818030021C0F8F7 +:10BE100050117047DFF80C030021016370472DE9D2 +:10BE2000F04300231C4600E0641CDFF8F852D5F80C +:10BE30002062B4420DDA0C2707FB0455D5F82462C2 +:10BE40000746BE4203D0D5F828528D42ECD11620C9 +:10BE500032E0142E2EDA1C46002E01D11BE0641CA9 +:10BE6000B44207DA04EB440705EB8707D7F82872DA +:10BE70008F42F4DBB4420ED00BE00C2707FB0657D1 +:10BE800007F5097C07F50677B7E80043ACE80043FF +:10BE9000761EB442F1DB0C2707FB0454C4F82402DD +:10BEA00004F5097041608260D5F82002401CC5F895 +:10BEB000200200E00C231846BDE8F083F8B5002509 +:10BEC000DFF8604294F83000400600D5022594F86F +:10BED0008000400601D545F0010594F8D0004006E9 +:10BEE00001D545F0040594F82001400601D545F040 +:10BEF000080594F85001C00601D545F0100594F8E6 +:10BF00009801400601D545F020050026374611E08E +:10BF100007EB470004EB8001D1F82C02054208D062 +:10BF20002046D1F824128847002802D0002E00D1E4 +:10BF300006467F1CD4F820028742E9DB00F002F8B5 +:10BF40003046F2BD10B47748016B4A0602D541F085 +:10BF50001001016300F130010A6D530602D542F071 +:10BF600010020A65D0F8D020530603D542F0100223 +:10BF7000C0F8D02000F1D002136D5C0602D543F06A +:10BF800010031365D0F850315C0603D543F010035D +:10BF9000C0F85031036B23F0400303630B6D23F0B3 +:10BFA00040030B65D0F8D01021F04001C0F8D0104C +:10BFB000116D21F040011165D0F8501121F04001C0 +:10BFC000C0F8501100F5A870816C21F04001816427 +:10BFD00010BC704738B50C461546002803D00C221B +:10BFE0005849E4F7F1F9002D04D04E48D0E9222356 +:10BFF000C5E90023002C03D04A48D0F88400207003 +:10C0000031BD70B50C461546464E0C2206F1B801FE +:10C01000E4F7DAF9002D03D0D6E93601C5E90001CD +:10C02000002C09D0D6F86803002802D00020207028 +:10C0300070BDD6F8D400207070BD3A48406B704790 +:10C040003848D0F86813002901D000207047D0F894 +:10C05000D40070473348D0F884007047002107E0CF +:10C06000304A02EB8102D2F8C42140F82120491C59 +:10C070000329F5DB704718B4002106E003EB8102C9 +:10C0800050F82130C2F8B831491C264B0329F5DBA2 +:10C09000D3F81812012907D103F5E272014603F51E +:10C0A000E87018BC03F016BF002106E003EB810224 +:10C0B00050F82140C2F8C441491C0329F6DB11BCE9 +:10C0C000704710B500200246104C04E004EB8001DC +:10C0D000C1F8F421401C0928F8DB2422002104F5D2 +:10C0E000E870E5F7D7F900200AE004EB00114FF003 +:10C0F0007E52C1F8F4214FF08042C1F8D021401C9B +:10C100000328F2DBBDE8104002E0000080DC0020E4 +:10C1100004480021C0F818127047000094DF002086 +:10C12000DCDF002080DC0020DFB80208A9B80208AC +:10C1300001B90208EFB8020840420F00D0DC00202D +:10C1400020DD0020E8DC00200000004000000000AE +:10C150000000000000000000704780B505F05AFDA7 +:10C1600005F0ACFD00280CD005F0A8FD23230FF24C +:10C170008C020FF29801FFF7EFFFBDE8014005F0D8 +:10C180009DBDFFF7C5FB00280CD0FFF7C1FB2623A0 +:10C190000FF268020FF27401FFF7DEFFBDE8014005 +:10C1A000FFF7B6BB05F0D6FC00280CD005F0D2FC9A +:10C1B00028230FF248020FF25401FFF7CDFFBDE82C +:10C1C000014005F0C7BC012005F06DFD002002BD57 +:10C1D00080B505F089FD00280CD005F085FD4723CA +:10C1E0000FF280020FF22401FFF7B6FFBDE8014015 +:10C1F00005F07ABD002002BD00000000696E765F88 +:10C20000696E69745F6D706C00000000433A5C54A5 +:10C21000656D705C4955535C494B445C5461652DB8 +:10C22000536F6F5C656D6265646465645F726566BB +:10C230006572656E63655F666F725F4E6F74655F92 +:10C24000335C656D6265646465645C496E76656ED9 +:10C2500053656E73655C6D6C6C6974655C6D706C58 +:10C260002E630000696E765F73746172745F6D7027 +:10C270006C0000007047000000B510EE100AE7F7F0 +:10C2800041FC0022DFF81C3CE7F764FCD6F768FEAF +:10C29000DFF8D42BC2E9140100BDDFF8CC2BD2E9C2 +:10C2A00012017047DFF8C01BD0E90E23C1E9122349 +:10C2B0007047C1070CD5DFF8F01B4FF040420A670A +:10C2C00070314A608A604FF08042CA600A614A61F8 +:10C2D00081070ED5DFF8D01B4FF04042C1F818217E +:10C2E00001F58C714A608A604FF08042CA600A6131 +:10C2F0004A6140070ED5DFF8B01B4FF04042C1F84D +:10C30000C02101F5E070426082604FF08042C2605F +:10C3100002614261704700000021401000D0491CBA +:10C320000128FADA481C70472DE9F14F88B0002047 +:10C330000146CDE904010898806F002801D1084624 +:10C34000BEE0FFF7E9FF81464FF000088BE000EB0D +:10C35000C802D2E900014A4604F022FB04460D4619 +:10C36000089800EBC80002900246D2E906014A464E +:10C3700004F016FB06460F46A4FB042304FB05331A +:10C3800005FB0433A4FB020104FB031105FB0211AE +:10C39000CDE90601029AD2E912014A4604F000FBF7 +:10C3A000CDE90001A6FB062306FB073307FB063396 +:10C3B0000320A0FB02AB00FB03BBDDE90001B0EBF7 +:10C3C0000A0061EB0B01DDE90623A4FB02AB04FBD1 +:10C3D00003BB05FB02BB4FEA4B0B4BEADA7B10EBCE +:10C3E0004A0A41EB0B0BA4FB040104FB051105FBFE +:10C3F0000411301A67EB0101A4FB002304FB013395 +:10C4000005FB00330320A0FB026700FB0377DDE997 +:10C41000060136184F41029AD2E90C014A4604F04F +:10C42000BFFA321A67EB0103A4FB020104FB0311FC +:10C4300005FB0211890041EA9071BAEB80006BEBB9 +:10C440000101002904DC00DB02D2404261EB410122 +:10C45000DDE904238B4204DC01DB824201D2CDE919 +:10C46000040108F10108B8F1030F0898FFF66FAF57 +:10C47000806F0899C96F884210D000EE100AB8EE9C +:10C48000C00A05F047FCF7EE000A80EE800A089823 +:10C4900080ED200A08980146896FC167DDE9040133 +:10C4A00005F046FC00EE100A0898D0ED200A20EEB8 +:10C4B000200A10EE100A09B0BDE8F04F05F06ABC82 +:10C4C00009B0BDE8F08F2DE9F04F85B0814600201E +:10C4D0000146CDE90201D9F87800002801D10846CB +:10C4E00079E0FFF719FF00904FF0000849E009EBF1 +:10C4F000C802D2E90001009A04F052FA04460D463F +:10C50000A4FB046704FB057705FB047709EBC8006F +:10C5100001900246D2E90601009A04F041FA801B1C +:10C52000B941A4FB002304FB013305FB00330320C6 +:10C53000A0FB02AB00FB03BBA4FB060104FB07113D +:10C5400005FB06111AEB00044BEB0105019AD2E939 +:10C550000C01009A04F024FA201A65EB010100296D +:10C5600004DC00DB02D2404261EB4101DDE9022341 +:10C570008B4204DC01DB824201D2CDE9020108F1E9 +:10C580000108B8F1030FB2DBD9F87800D9F87C10B4 +:10C5900088420FD000EE100AB8EEC00A05F0BAFBD0 +:10C5A000F7EE000A80EE800A89ED200AD9F87800BB +:10C5B000C9F87C00DDE9020105F0BAFB00EE100AC3 +:10C5C000D9ED200A20EE200A10EE100A05B0BDE8D1 +:10C5D000F04F05F0DFBB05B0BDE8F08F10B40121CE +:10C5E000026BD20513D5DFF8C028D2F88830146862 +:10C5F000A3420CDBD0F88000C00505D5D2F8D801E5 +:10C600005168884203DB0521084610BC70470020B2 +:10C61000FBE72DE9F04184B00446002600ADDFF8C9 +:10C62000887812E007EBC602D2E9040107F5087228 +:10C63000926A05F0EBFB07EB8602D2F89420120415 +:10C64000D317801845F82600761C032EEADBA822B3 +:10C65000002107F11000E4F71DFF0120FFF729FE7C +:10C660006868002801D4014600E04142009A002A8F +:10C6700000D55242914201DA104602E0002800D56E +:10C680004042A968002901D40A4600E04A42824299 +:10C6900004DB002901D4084600E04842616A03F047 +:10C6A0001CF9B0F5481F03DB052087F820024BE09A +:10C6B000DFF8B467F16A6A68501A01D4034600E0F3 +:10C6C0008B1AD6F828C0DDF800E0BEEB0C0E01D4C2 +:10C6D000F04603E0DDF80080ACEB0808434508DADB +:10C6E000BEF1000F01D4704606E00098ACEB0000EC +:10C6F00002E0002800D5881A316BAA68531A01D4C9 +:10C700009C4601E0A1EB020C844504DB002B01D424 +:10C71000184600E0881A616A03F0DFF880460220BC +:10C7200005F060F907F50870C06A804506DA032154 +:10C7300000A8FFF73EFA2046FFF7B4FD0098B0626C +:10C740006868F062A8683063BDE8FF812DE9FE41AA +:10C7500086460E4600271CE0D317A2FB004502FBCD +:10C76000015503FB0055204629460CEB4C0306EB14 +:10C77000C30303EBC708D8E9004524184D4103EB78 +:10C78000C703C3E900450CF1010CBCF1040FE3DB66 +:10C790007F1CB06F032F1BDA06EB870101F16003EA +:10C7A000002802D13EF9170058623EF917005A6A74 +:10C7B000821A00A840F82720086E904200DA0A6624 +:10C7C000D868824200DADA60012000218C46DCE77A +:10C7D000401CB0670120C6F8A000BDE8F7812DE934 +:10C7E000F04104460025069E05E006EB850054F85E +:10C7F0002510C1666D1C032DF7DB06F17807C7E92C +:10C800000623B06F002814D0002510E006EB850841 +:10C8100054F82500D8F88410401AD5F7ACFED8F8A3 +:10C820006010814200DA0146C8F860106D1C032DCB +:10C83000ECDBB06F401CB0670120B862BDE8F0814E +:10C8400010B4002108E000EB810202F16003DC6813 +:10C850005C6200231366491C0329F4DB00F17801B4 +:10C86000D1E90623C1E908230022826710468862C5 +:10C8700010BC704730B4D0E92423D0E92645101B02 +:10C8800063EB050130BC7047016E426E8A4200DAEC +:10C890000A46816E914200DA114608467047016EE1 +:10C8A000C26E891A426E036FD21A8A4200DB1146A9 +:10C8B000826E406F101A884200DB014608467047BE +:10C8C00010B5DFF8E4451022002104F51670E4F7F6 +:10C8D000E1FD1022002104F51E70E4F7DBFD1022BB +:10C8E000002104F51A70E4F7D5FD1022002104F5AB +:10C8F0002270BDE81040E4F7CDBD10B5DFF8A845C3 +:10C90000A822002104F11000E4F7C4FDA8220021B0 +:10C9100004F5B070E4F7BEFD0520BDE81040C8E4A2 +:10C92000D0B4DFF8842502F51E739C68002C02D178 +:10C93000C2E99E0108E0D2E99E678F4204DC01DB78 +:10C94000864201D2C2E99E01601C9860D0BC70474B +:10C95000D0B4DFF8542502F522739C68002C02D174 +:10C96000C2E9A20108E0D2E9A2678F4204DC01DB40 +:10C97000864201D2C2E9A201601C9860D0BC704717 +:10C98000D0B4DFF8242502F516739C68002C02D180 +:10C99000C2E9960108E0D2E99667B94204DC01DBFE +:10C9A000B04201D2C2E99601601C9860D0BC7047C9 +:10C9B000D0B4DFF8F42402F51A739C68002C02D17D +:10C9C000C2E99A0108E0D2E99A67B94204DC01DBC6 +:10C9D000B04201D2C2E99A01601C9860D0BC704795 +:10C9E000F8B507460124DFF8C05405F11000FFF741 +:10C9F00056FFDFF87464316C814203DAFFF77DFF84 +:10CA00000020F2BD3846FFF7E9FD070001D1022002 +:10CA1000F2BD78071ED505F5B070FFF785FC000D57 +:10CA200040EA01300915C5E98401D5E98401D6E958 +:10CA300004238B4205DC01DB824202D20024FFF793 +:10CA4000B7FFA822002105F5B070E4F723FD04200C +:10CA5000FFF72FFCF80711D505F11000FFF764FC74 +:10CA600005F50472C2E90601D6E906238B4205DC0E +:10CA700001DB824202D20024FFF782FF2046F2BD92 +:10CA80001FB5044694F8300000F0C000C02804D15F +:10CA9000DFF81C14201DFFF759FE94F8800000F009 +:10CAA000C000C02805D1DFF80C1404F15400FFF7D2 +:10CAB0004DFED4F8D00000F0C001C0290BD10020F9 +:10CAC00001AA032818DA04EB4001B1F9A41042F8D6 +:10CAD0002010401CF5E700F06000602814D1002011 +:10CAE00001AA07E004EB8001D1F8B810891342F8DD +:10CAF0002010401C0328F5DBDFF8BC030090D4E9CC +:10CB0000362301A8FFF76BFE1FBD0000F8B50446F1 +:10CB1000002004F12C077968CA0540F1278101F053 +:10CB20005001402900D1012097F8541001F0500124 +:10CB3000402900D1012094F8D01001F05001402983 +:10CB400000D10120DFF86053002809D0FFF7D5FE9F +:10CB50000020C5F8180285F820022046FFF7A2FB46 +:10CB6000E06AD5F8401281421ED0C5F84002BE4EA0 +:10CB7000716B0A2806DA48002860B06B401CC5F8C3 +:10CB8000440203E02960B06BC5F84402D5F84402C2 +:10CB9000C0F11000C5F848024FF48040C5F84C02BF +:10CBA0001920B16B88403064386DD5F8501281423D +:10CBB00010D0C5F85002AC4E716B0A2806DA480056 +:10CBC0006860B06B401CC5F8540203E06960B06B4C +:10CBD000C5F854022046FFF753FF95F820020628B7 +:10CBE00000F2C480DFE800F004122C3574A4B10018 +:10CBF000D5F81802411CC5F818120A28C0F2B680F0 +:10CC0000FFF77BFE012085F82002AFE0D5F8B000E9 +:10CC1000012840F0AB802046FFF7E2FE002803D158 +:10CC2000052085F8200204E0012802D1022085F8C1 +:10CC3000200205F1B800FFF703FEFFF741FE95E083 +:10CC4000032085F820022046FFF7E3FCFFF755FE9E +:10CC50008CE02046FFF7C4FE002857D0012840F0A2 +:10CC60008580D4F8D000C00523D505F0F7F800285A +:10CC70001FD105F1B8073846FFF706FEC117C5E911 +:10CC80008201794ED6E90201D5E98223994206DC78 +:10CC900001DB904203D2052085F820020FE03846E0 +:10CCA000FFF7E8FDD6E90823994208DB01DC904252 +:10CCB00005D3042085F820022046FFF7AAFCD5E919 +:10CCC0008401FFF745FED5E98A01FFF729FE4DE013 +:10CCD000D4F8D000C00514D505F0C0F8002810D154 +:10CCE00005F1B800FFF7D0FDC117C5E982015E4824 +:10CCF000D0E90223D5E982018B4207DB01DC8242C5 +:10CD000004D32046FFF76CFE002803D1052085F8E8 +:10CD100020022BE0012829D12046FFF77AFCD5E933 +:10CD20008401FFF715FED5E98A01FFF7F9FD1DE043 +:10CD3000062085F82002012004F054FEFFF7DDFDF7 +:10CD400005F1B800FFF77CFD10E02046FFF748FE34 +:10CD5000012803D1022085F8200207E0002805D130 +:10CD6000FFF7CBFD05F1B800FFF76AFD0020F2BD2B +:10CD70000021401000D0491C0128FADA3A4801226B +:10CD80004B1C9A404263491C8163192202FA01F14B +:10CD90000164704738B5444C4FF426720021204698 +:10CDA000E4F778FB304D582200212846E4F772FB67 +:10CDB0000720FFF77EFA40F2DC500021C5E90601AA +:10CDC0001420C5E902016420C5E904013B48C5E916 +:10CDD00008010120C4F81C021920FFF7C9FF002038 +:10CDE000C4F840029FED310AFFF746FA002032BD39 +:10CDF00010B52D4C4FF4267200212046E4F74AFB73 +:10CE00000720FFF756FA0120C4F81C0284F820021C +:10CE10000022032104F03EFF072264212848BDE8D8 +:10CE20001040FEF7FCBF10B5FFF7B4FF040009D0B7 +:10CE30004FF447730FF294020FF2A801FFF71AFAAA +:10CE4000204610BD1F4804F041FF040009D040F205 +:10CE50001F330FF278020FF28C01FFF70BFA204616 +:10CE600010BD002010BD0000E0FA002070B50026C3 +:10CE7000016BC90513D5D0E90E45FFF70EFA201A4C +:10CE800065EB010100290ADB00DC08D30E4AD2E978 +:10CE90001445A94203DC01DBA04200D20126304642 +:10CEA00070BD000065CDCD4188E3002000009643B1 +:10CEB00098E30020E8E4002040E400200008AF2FC1 +:10CEC0000DCB0208F1CD0208E0FA0020696E765F12 +:10CED000656E61626C655F666173745F6E6F6D6FC6 +:10CEE00074000000433A5C54656D705C4955535CB6 +:10CEF000494B445C5461652D536F6F5C656D626591 +:10CF0000646465645F7265666572656E63655F66BD +:10CF10006F725F4E6F74655F335C656D62656464EC +:10CF200065645C496E76656E53656E73655C6D70A5 +:10CF30006C5C666173745F6E6F5F6D6F74696F6E4A +:10CF40002E63000070B52DED028B98B005460E469D +:10CF500008EE102A1C4695ED020AF8EEC00A95ED7F +:10CF6000010AB8EEC01A95ED000AB8EEC00A20EE2C +:10CF7000000A01EE010A00EEA00A04F0CBFEF0EE7A +:10CF8000408A18EE900AE6F7BDFD21F0004101222B +:10CF9000DFF88439EDF7D6FA00F2B9809FEDD60AB2 +:10CFA000D6ED000AF8EEE00A60EE800ACDED040A44 +:10CFB00004A8D6ED010AF8EEE00A60EE800AC0EDA2 +:10CFC000010AD6ED020AF8EEE00A60EE800AC0ED32 +:10CFD000020AD6ED030AF8EEE00A20EE800A80EDA0 +:10CFE000030A0020089008A895ED000AB8EEC00AD0 +:10CFF00080EE280A80ED010A95ED010AB8EEC00A1C +:10D0000080EE280A80ED020A95ED020AB8EEC00A09 +:10D0100080EE280A80ED030A14AA08A904A802F0E9 +:10D0200006FD10A904A802F020FE00AA10A914A869 +:10D0300002F0FDFC00AD95ED010AD5ED020A20EEEF +:10D04000A01A00EE001ADFEDAD1AB4EE611AF1EE8F +:10D0500010FA02D59FEDAA1A15E0DFEDAA1AB4EE78 +:10D06000611AF1EE10FA02D59FEDA71A0BE0DFED81 +:10D07000A71AB4EE611AF1EE10FA02D5B5EE001A55 +:10D0800001E09FEDA31AF8EEC81A9FEDA22AC1EEA7 +:10D09000821A21EE811A00200C900CA860EE810A01 +:10D0A000C0ED010A20EE410A80ED020A0021C160B4 +:10D0B00000AA04A902F0BBFC00AA04A900A802F07F +:10D0C0001FFD00A802F097FD9FEDD90ADDED000AD3 +:10D0D00060EE800AFDEEE00AC4ED000AD5ED010A1B +:10D0E00060EE800AFDEEE00AC4ED010AD5ED020A09 +:10D0F00060EE800AFDEEE00AC4ED020AD5ED030AF7 +:10D1000020EE800ABDEEC00A84ED030A04E010227E +:10D1100031462046E3F758F918B0BDEC028B70BDDC +:10D1200038B52DED048B04460D4694ED020AF8EE59 +:10D13000C00A94ED010AB8EEC01A94ED000AB8EEE8 +:10D14000C00A20EE000A01EE010A00EEA00A04F077 +:10D15000E1FD9FEDB88AB4EE480AF1EE10FA3CD436 +:10D16000D4ED020AF8EEE00A80EE809AB7EE000AEB +:10D1700030EE490AB5EE400AF1EE10FA01DC9FEDFF +:10D18000AE0AF6EE009A20EE290A04F0C3FDF0EE96 +:10D19000408AB7EE000A39EE000AB5EE400AF1EE19 +:10D1A00010FA01DC9FEDA40A20EE290A04F0B2FD7A +:10D1B000B0EE409A94ED010AF8EEC00A94ED000A30 +:10D1C000B8EEC00A20EE000A00EEA00A04F0A2FDAC +:10D1D000B4EE480AF1EE10FA07D54FF0804028600F +:10D1E00000206860A860E86027E0DFED910A29EE82 +:10D1F000201ABDEEC11A85ED001A94ED011AB8EEA1 +:10D20000C11A81EE001A21EE281A61EE200AFDEE05 +:10D21000E00AC5ED010AD4ED000AF8EEE00A80EE5E +:10D22000800A20EE280ADFED850A20EE200ABDEEF6 +:10D23000C00A85ED020A0020E860BDEC048B31BD18 +:10D2400038B504460D4694ED030AF8EEC00A94ED95 +:10D25000020AB8EEC01A94ED010AF8EEC01A94ED75 +:10D26000000AB8EEC00A20EE000A01EEA10A01EEA3 +:10D27000010A00EEA00AB5EE400AF1EE10FA07D856 +:10D280004FF08040286000206860A860E86031BDF1 +:10D2900004F040FDF7EE000A80EE800ADFED640A3C +:10D2A00020EE200AD4ED000AF8EEE00A60EE800AD3 +:10D2B000FDEEE00AC5ED000AD4ED010AF8EEE00A41 +:10D2C00060EE800AFDEEE00AC5ED010AD4ED020A27 +:10D2D000F8EEE00A60EE800AFDEEE00AC5ED020A13 +:10D2E000D4ED030AF8EEE00A20EE800ABDEEC00A93 +:10D2F00085ED030A31BD00000000803017B75139B9 +:10D30000A69BC43B0AD7233C8FC2753DCDCC4C3E77 +:10D31000CDCCCC3E0014CD4770B588B0054695F80D +:10D320003000400640F18180A869002800D54042C5 +:10D33000B0F5803F0DDAE969002900D54942B1F521 +:10D34000803F06DA296A002900D54942B1F5803FBD +:10D3500067DBDFF8C815DFF8C84588420BDAE869F3 +:10D36000002800D54042884205DA286A002800D506 +:10D370004042884202DB0320A06301E00220A06358 +:10D38000A86A616B81421ED0606395ED0A0AB8EE0F +:10D39000C00ADFEDA00A80EE200ADFED9F0A20EE32 +:10D3A000200A10EE100AE6F7ADFBDFF87825DFF86B +:10D3B0007835E6F7CFFB0022DFF87035FAF72AFD63 +:10D3C000ECF7AAFE20630020049004AE216BA8694C +:10D3D00002F083FA7060216BE86902F07EFAB060B7 +:10D3E000216B286A02F079FAF06000AA04A92046AD +:10D3F00002F079FA00988001009000A84168890144 +:10D400004160816889018160C1688901C1602246EB +:10D4100000A9204602F0CAFA21462046FFF710FF75 +:10D4200003E0DFF8FC040021816308B070BD000058 +:10D430000000804E0100803F00000000000080CE10 +:10D4400070B52DED048B8EB0044694F85001400663 +:10D4500040F1DC80DFF8C854D4F840012968401A54 +:10D4600000D54042D4F86411DFF8C424514381420E +:10D4700002DA0320A86301E00220A863D4F8500177 +:10D48000810505D5294604F5A070FFF7D9FEBDE05A +:10D49000800407D54FF08040A8640020E864286528 +:10D4A000686597E0002103A8FEF7C1FB0C2205F197 +:10D4B0003C0103A802F06AFE002805D1D4F86001FF +:10D4C000A96D884200F0868000AB03AA616A2068DB +:10D4D00080B202F07DFC00AE96ED020AF8EEC00AC2 +:10D4E00096ED010AB8EEC01A9DED000AB8EEC00A2A +:10D4F00020EE000A01EE010A00EEA00A04F00AFC88 +:10D50000B0EE408A9FED450A28EE000ADFED440A9E +:10D5100080EE200AD4ED580AF8EEE00A20EE200A48 +:10D52000DFEDD10AC0EE208AB0EE680A04F09EFC5E +:10D53000B0EE409AB0EE680A04F09BFCF0EE000AF0 +:10D54000B4EE608AF1EE10FA07D54FF08040A8647F +:10D550000020E8642865686533E0DFEDC40A29EE41 +:10D56000201ABDEEC11A85ED121A20EE200ADDED5B +:10D57000000AF8EEE00A60EE200AC0EE880AF1EE3A +:10D58000600AFDEEE00AC5ED130AD6ED010AF8EED9 +:10D59000E00A60EE200AC0EE880AF1EE600AFDEEB5 +:10D5A000E00AC5ED140AD6ED020AF8EEE00A20EE14 +:10D5B000200A80EE080AB1EE400ABDEEC00A85EDF1 +:10D5C000150A0C2203A905F13C00E2F7FDFED4F890 +:10D5D0006001A86504F5A07406AA05F1480120467B +:10D5E00002F081F90AAA06A905F15C0002F07BF9B4 +:10D5F00005F15C01204602F0ECF906AA0AA92846CA +:10D6000002F071F9294606A8FFF71AFE0EB0BDEC2C +:10D61000048B70BD002474490000004EDB0F4940AC +:10D620000000344B2DE9F04F93B00746012407F179 +:10D630003005286DBA4E00F05001402904D0F16E3B +:10D64000002912D0400610D506F1100107F168003C +:10D65000FFF766FDD7F85001C00519D506F15C014A +:10D6600007F5A07002F0B5F912E0D7F8500100F00C +:10D670005002402A03D0002915D0400613D506F1E8 +:10D680005C0107F5A07002F0A4F9286DC0050AD569 +:10D6900000A9304602F09DF906F1200200A906F12A +:10D6A000100002F020F9D7F85001C005384602D525 +:10D6B000FFF7C6FE01E0FFF72FFE06F1100231462C +:10D6C00006F1200002F00FF995F85000400640F1F5 +:10D6D000C780386BD7F850110843C00540F1AC80C3 +:10D6E00004AA07F1680106F1100002F081F9D5F8EB +:10D6F00040A04FEAEA7BE86BC117AA6BD317A2FBE5 +:10D70000028902FB039903FB0299A0FB002300FBA3 +:10D71000013301FB003318EB020049EB0301AAFBC4 +:10D720000A230AFB0B330BFB0A33801859410229E9 +:10D730002FDB02DCB0F1804F2BD307A804F01DFAD9 +:10D7400007A8D0F808A04FEAEA7B4068C117079AFB +:10D75000D317A2FB028902FB039903FB0299A0FBEA +:10D76000002300FB013301FB003318EB020049EBFF +:10D770000301AAFB0A230AFB0B330BFB0A338018B5 +:10D780005941022905DB02DCB0F1804F01D30420AE +:10D79000B063B06B042801D1002417E0022801D047 +:10D7A000032808D1A96C41F2883291FBF2F4012CD4 +:10D7B0000CDA01240AE0012808D1A96C41F2883270 +:10D7C00091FBF2F1012900DA21464C00032800D038 +:10D7D000A4005848444300200A900AAD2146059809 +:10D7E000800202F07AF86860214604984042800284 +:10D7F00002F073F8A86000200D900EAA06F1100147 +:10D800000AA802F070F806F110020EA906F1100045 +:10D8100002F0CCF806F1100106F11000FFF710FD40 +:10D8200000A9304602F0D5F806F1200200A906F161 +:10D83000100002F058F813E006F11003AA6C06F18C +:10D84000100107F16800FFF77DFB00A9304602F0E8 +:10D85000C0F806F1200200A906F1100002F043F81A +:10D86000002013B0BDE8F08F0024F4490000804E82 +:10D8700038B50446206BC0050AD404F13000006DB1 +:10D88000C00505D4D4F85001C00501D4002032BD34 +:10D89000234DD4F8500100F4A060B0F5A06F09D179 +:10D8A000102204F5A07105F11000E2F78DFD0120B2 +:10D8B000E86604E02046FFF7B5FE0020E86604F1C4 +:10D8C0003000D0E9022305F1100004F05BF80020DD +:10D8D00032BD10B5124C702200212046E3F7DAFD6C +:10D8E0004FF08040206120602062E063E06500200E +:10D8F00010BD80B5FFF7EDFF002805D10FF20D0038 +:10D90000BDE8024004F0E2B902BD00001322C821C4 +:10D910000948FEF784BA00000000D040010064000E +:10D92000B0F90020112D4454FB218940008066404D +:10D9300071981C00A69BC40071D8020838B5044633 +:10D94000DFF8985368680870D5E90201C2E9000160 +:10D95000686A9FED600A296A002920D400EE900AC7 +:10D96000F8EEE00A60EE800AC4ED000AD5ED0A0A7E +:10D97000F8EEE00A60EE800AC4ED010AD5ED0B0A6C +:10D98000F8EEE00A60EE800AC4ED020AD5ED080A5E +:10D99000F8EEE00A20EE800A84ED030A26E0404219 +:10D9A00000EE900AF8EEE00A60EE800AC4ED000A8C +:10D9B000A86A404200EE900AF8EEE00A60EE800AA3 +:10D9C000C4ED010AE86A404200EE900AF8EEE00A6F +:10D9D00060EE800AC4ED020A286A404200EE900A16 +:10D9E000F8EEE00A20EE800A84ED030A04F0E5F880 +:10D9F00084ED040AE86B32BD70B588B00446164663 +:10DA000004A8FEF7E7FADFF8D452D5E90201C5E928 +:10DA10000401C6E9000100A804F02FF800A841683D +:10DA20009FED2C0A009A002A20D400EE901AF8EEFE +:10DA3000E00A60EE800AC4ED000AD0ED020AF8EEBA +:10DA4000E00A60EE800AC4ED010AD0ED030AF8EEA8 +:10DA5000E00A60EE800AC4ED020ADDED000AF8EE8D +:10DA6000E00A20EE800A84ED030A26E0494200EE37 +:10DA7000901AF8EEE00A60EE800AC4ED000A8168B0 +:10DA8000494200EE901AF8EEE00A60EE800AC4ED1A +:10DA9000010AC068404200EE900AF8EEE00A60EE2B +:10DAA000800AC4ED020A0098404200EE900AF8EEA7 +:10DAB000E00A20EE800A84ED030A00202061686BF2 +:10DAC000801100F00100296C891101F00101084367 +:10DAD00008B070BD000080302DE9FF4104460025EC +:10DAE0004FF47A787D4E06F10802311D06F12000D0 +:10DAF00003F0E6FF04F12C025068306304F13800B3 +:10DB0000816C716304F1CC077968B16304F1D801C9 +:10DB10008B6F33645268D30501D5D4F82C80836CA5 +:10DB20005FEAC35C05D5D0F844C0C44501DAE046DD +:10DB30000125D7F804C05FEACC5E05D5D4F8CCE067 +:10DB4000C64501DAF0460225896F5FEAC15E04D559 +:10DB5000D4F864E1C64500DA03255FEAC15E07D563 +:10DB60000CEA030E5FEACE5E0BD44FF0FF3508E0FF +:10DB700003EA020E0CEA0E0E5FEACE5E01D44FF00D +:10DB8000FF35002D05D0022D1BD00ED3032D24D040 +:10DB90002FE002F04000401E8041C043C00FF06300 +:10DBA000D4E90E01C6E9020125E003F04001491E57 +:10DBB0008941C943C90FF163D0E91423C6E902239F +:10DBC00019E00CF04000401E8041C043C00FF063DC +:10DBD000D4E93601C6E902010DE001F04000401E23 +:10DBE0008041C043C00FF063D4E95601C6E9020189 +:10DBF00001E00020F06306F1180200A901A8FEF779 +:10DC000000FA9DF90000306000240DE040060AD5BE +:10DC100001A850F8240000EE100ABAEEC80A06EB7C +:10DC2000840080ED320A641C032C2CDA387900F071 +:10DC3000500040280CD101A850F8240000EE100A32 +:10DC4000B8EEC00A2C2000FB0460443002F006F954 +:10DC5000786800F0C001C029D8D101A850F824008C +:10DC600000EE100AB8EEC00A2C2000FB046044301D +:10DC700002F009F9DFED180A20EE200A06EB840015 +:10DC800080ED320ACFE7002004B0BDE8F0813722F2 +:10DC90004FF461711248FEF7C2B838B50F4CD82264 +:10DCA00000212046E3F7F6FB002508E004F1D80147 +:10DCB0002C2000FB0540443002F0C1F86D1C032D00 +:10DCC000F4DB002032BD80B5FFF7E7FF0548BDE873 +:10DCD000024003F0FBBF00000000803710AE0020C0 +:10DCE000D9DA02088FDC02082DE9F0412DED048B12 +:10DCF00084B004460F4690461D46DFF894683C22E7 +:10DD000006F10C01304604F0B7F8502206F1580134 +:10DD100006F1480004F0B0F80C22414606F13C0040 +:10DD2000E2F752FB1022394606F19800E2F74CFB6D +:10DD30009FEDA29AD6F85C01401CC6F85C0107284A +:10DD400002DB0620C6F85C01D6F85C01C0F10607CC +:10DD500022E000AA06EB071000F14801284601F076 +:10DD600066FE00AA07EB470006EB800104F1B8004D +:10DD700001F030FDF0EE409A19EE900AE5F7C2FE90 +:10DD800021F0004153EC182B23F00043ECF7F0F99D +:10DD900001D2B0EE699A7F1C19EE100AE5F7B2FEC7 +:10DDA00041EC180B062FD4DBB0EE480AF0EE680AFF +:10DDB00004B0BDEC048BBDE8F08100002DE9F84F04 +:10DDC0002DED088BB0EE409AF0EE609A0C4690462E +:10DDD00000259FED78ABB0EE4A8AF0EE6A8A416B7F +:10DDE000002904D4D0F8D400032800D10125DFF89D +:10DDF000A067482206F1C80106F1C00004F03CF813 +:10DE000006F1B80989ED149B00270CE053EC182BA0 +:10DE100006EBC700D0F8C410D0F8C000ECF71EFB2A +:10DE200041EC180B7F1C0A2FF0DB51EC180B002281 +:10DE3000DFF86037F9F7EEFF41EC1B0B89ED16BBFD +:10DE4000322C2FDBC820C6F854014046ECF74CF9C1 +:10DE500041EC1A0B51EC190B0022DFF83C37F9F7B3 +:10DE6000D9FF53EC1A2BE5F775FE0022DFF84C378B +:10DE7000F9F7D0FF41EC180BB4F57A7F45DB51EC94 +:10DE8000190B0022DFF81437F9F7C4FF53EC1A2BF3 +:10DE9000E5F760FE0022DFF82437F9F7BBFF41EC1D +:10DEA000180B32E0D6F8540141F2883198FBF1F1B9 +:10DEB00001EB8101401AC6F8540102D50020C6F8D2 +:10DEC000540151EC190B0022DFF8D436F9F7A2FF08 +:10DED00082468B464046ECF707F952465B46E5F72B +:10DEE00039FE0022DFF8D436F9F794FF41EC180B25 +:10DEF000D6F85401002808D106F5AA70C068012898 +:10DF000003D1B0EE4A8AF0EE6A8A06F5AA7040683C +:10DF1000002803D0B0EE498AF0EE698ADFF8840663 +:10DF2000804503D1B0EE498AF0EE698A53EC182B94 +:10DF300000200146D5F752F801D089ED18BBD9E988 +:10DF4000180153EC1B2BFAF71DF921F00041DFF803 +:10DF50005826DFF85836ECF7F5FA22D8D6E92E2302 +:10DF600000200146D5F73AF81BD1012D19D1C82060 +:10DF7000C6F8540151EC190B0022DFF82436F9F7EA +:10DF800049FF04460D464046ECF7AEF822462B46C4 +:10DF9000E5F7E0FD0022DFF82436F9F73BFF41EC1E +:10DFA000180BB0EE480AF0EE680ABDEC088BBDE82D +:10DFB000F18F000000000000000000000024744900 +:10DFC0002DE9F0472DED0C8BAEB0044619A80021C9 +:10DFD0000A460B460EC00846DFF8B4550DE005EBC7 +:10DFE000800191ED2A0AB8EEC00A20EE090A12A9B2 +:10DFF00001EB800181ED000A401C9FEDCB9A0428C3 +:10E00000EDDB06A803F039FD9DED060AB8EEC00A67 +:10E0100020EE090A8DED1C0A06A81CA990ED010A44 +:10E02000B8EEC00A20EE090A81ED010A90ED020A5D +:10E03000B8EEC00A20EE090A81ED020A90ED030A4B +:10E04000B8EEC00A20EE090A81ED030A02A803F027 +:10E0500014FD02AEF168706801F039FC07460299C0 +:10E06000B06801F034FC381A1690F168B06801F01D +:10E070002EFC804616AF0299706801F028FC4044DF +:10E080007860F068014601F022FC064602990846D5 +:10E0900001F01DFC8019A0F18040B86012AB16AAF7 +:10E0A0001CA92046FFF720FEB0EE408AF0EE608A01 +:10E0B0009FEDE3AB00261DE004EB86008069ECF7E2 +:10E0C00013F841EC1B0B9FEDE0CB53EC1B2B51ECF9 +:10E0D0001C0BE5F73FFD53EC1B2BE5F73BFD53EC29 +:10E0E0001C2BE5F737FD53EC1A2BECF7B7F941EC95 +:10E0F0001A0B761C032EDFDB51EC1A0BE5F7FCFD47 +:10E1000000EE100A03F006FE10EE100AE5F7FAFC26 +:10E1100005F5AC7696ED08BB53EC1B2BFAF732F8FD +:10E1200041EC1C0B86ED0ACB9FEDC9AB53EC1C2BCD +:10E1300051EC1A0BE5F70EFD41EC1D0B86ED0CDBE7 +:10E1400053EC1B2BECF78AF9C6E908019FEDC2BB23 +:10E1500053EC1C2B51EC1D0BE5F7FCFCD6E90E2310 +:10E16000ECF77CF953EC1B2BE5F7F4FCC6E90E0148 +:10E170004FF0000803F072FE002808D1D6E90E0126 +:10E18000DFF82C24DFF82C34EBF7F2FF0AD2D5F8B5 +:10E190005801002806D12046FEF768FE012801D16B +:10E1A0004FF0010804F1180001F084FB8109326985 +:10E1B000DFF8F003824200DB0246B0EE480AF0EEE0 +:10E1C000680A2046FFF7FAFD85ED2E0B53EC102B65 +:10E1D000D5E94801E5F7BEFCC5E92E0124A902A84E +:10E1E00001F058FD05F59A7706AA02A9384601F014 +:10E1F0007AFB394602A801F0ECFB002218E002EBA2 +:10E200004207DF190DF1900C5CF827700DF1180C26 +:10E210000CEB830CDCF804C0CCFB07015B1C032B6C +:10E22000EDDB19AB800F40EA810043F82200521C5D +:10E23000032A03DA002001460346F0E719AFD5F8B8 +:10E240005801002801D00020B860D7F80890C9F123 +:10E25000000000EE100AB8EEC00A20EE098AB0EE07 +:10E26000480A03F003FE8DED0E0A0DF1380A002076 +:10E27000CAF80400CAF80800B0EE480A03F0F9FD35 +:10E280008AED030A306941F2883190FBF1F000EE2B +:10E29000100AB8EEC00A00EE909AF8EEE00A9FED80 +:10E2A000BB1AC0EE810AC0EE800AB0EE001AC0EEC2 +:10E2B000810AFDEEE00A10EE900A400000EE900A9E +:10E2C000F8EEE00A9FEDB11A60EE810A20EE800AB6 +:10E2D000BDEEC00A87ED020AB8EEC00A20EE098A38 +:10E2E000B0EE480A03F0C2FD8DED0A0A0DF12809CF +:10E2F0000020C9F80400C9F80800B0EE480A03F08D +:10E30000B8FD89ED030A20AA0EA912A801F08FFB1F +:10E310000EAA0AA920A801F08AFBD4F8D40001288B +:10E3200016DB002212E000BF000080305AF8220005 +:10E3300000EE100A12A800EB820080ED000ABEEE8B +:10E34000C10A05EB820080ED2A0A521C042AEDDB8B +:10E3500095ED2E8BD5F85871002F01D086ED068BE8 +:10E36000D6E9062351EC1B0BE5F7F4FBCDE90001E0 +:10E3700053EC182B51EC1A0BE5F7ECFBDDE900230D +:10E38000ECF76CF841EC100B85ED2E0B86ED060BCF +:10E39000D4F8D400032802D1B8F1000F01D0002F27 +:10E3A0003FD09FED878B53EC102B51EC180BE5F70A +:10E3B000D1FBE5F7A1FC00EE100A03F057FD8DED4F +:10E3C0000A0A0020C9F80400C9F80800D5E92E237C +:10E3D00051EC180BE5F7BEFBE5F78EFC00EE100ADA +:10E3E00003F047FD89ED030A0EAA0AA912A801F05D +:10E3F0001EFB0EA801F0A5FB00220AE00AEB82003A +:10E4000090ED000ABEEEC10A05EB820080ED2A0AFB +:10E41000521C042AF2DBD4E9362305F1A80003F0EC +:10E42000C5FAD5F85801002804D000217160401EBB +:10E43000C5F858012EB0BDEC0C8BBDE8F08700BFCD +:10E440000000000000000000000000000000F03E9E +:10E45000989999999999B93FCDCCCCCCCCCCEC3F3B +:10E46000F8B5044604F1C801494800F5AC750A7ACC +:10E47000D20604D40322C0F8582100226A60D4F8DE +:10E480005021D2050CD4226BD20503D5D4F88020BC +:10E49000D20505D40321C0F8581100206860F2BDF0 +:10E4A0006A69002A0DD0D1E90423D1E90667901BDF +:10E4B00063EB07014FF47A720023E5F785FA2861D0 +:10E4C00015E0D4F8C81044F62062914201DB2961BE +:10E4D0000DE0EB68C918E960914205DAD0F85801FF +:10E4E000002801D10020F2BD29610020E86020460B +:10E4F000FFF766FD0020F2BD10B5254C4FF4D07239 +:10E5000000212046E2F7C6FF4FF08040C4F83401F6 +:10E51000C4F8A8000022134604F1A80003F046FA4C +:10E520004FF47A70C4F8540100202349C4E948012B +:10E530009FED250B84ED5C0B04F5B87080ED020BAC +:10E5400080ED040B80ED060B80ED080B10BD10492B +:10E55000C1F86001002070470D49C1F86C0100202E +:10E56000704704224FF416711948FDF758BC80B566 +:10E57000FFF7C2FF0020FFF7EAFF0020FFF7ECFFE4 +:10E580001448BDE8024003F0A1BB0000E102374798 +:10E59000F0EB0020000024400000694000004940EA +:10E5A0000000794040420F001383C0CAA145B63F26 +:10E5B0007B14AE47E17A843F0000F03F0088B3400F +:10E5C000000000000000E03F00000000000000002C +:10E5D00061E4020863E5020880B5B8220146DFF86D +:10E5E000FC04E1F7F1FE002002BD80B5B822DFF89F +:10E5F000EC14E1F7E9FE002002BDF0B585B0044659 +:10E6000000A902A8FDF713FB01A803F0E3F9022813 +:10E610003FD0D4F808010099461ADFF8C04494F8B6 +:10E62000B000002848D0002E46D0F717029D22687F +:10E63000D317A2FB060102FB071103FB0611000C16 +:10E6400040EA01404019029002ADD5F804C062686A +:10E65000D317A2FB060102FB071103FB0611000CF6 +:10E6600040EA014060446860D5F808C0A068C1175E +:10E67000A0FB062300FB073301FB0633120C42EA22 +:10E68000034202EB0C00A860032102A8FDF791FAF7 +:10E6900012E0606B03280FD1FDF7BCFA00280BD005 +:10E6A000DFF838440C2202A904F10C00E1F78CFEDB +:10E6B0000098A06100F003F8002005B0F0BD2DE93E +:10E6C000F04F87B0DFF814048069DFF81464B16894 +:10E6D000884200DAB060F168814200DAF060F168E7 +:10E6E000B268891A3269914201DA0020C2E100144D +:10E6F000C117CDE900017068401C7060DDE90001C0 +:10E70000DDE90023A2FB004502FB015503FB005598 +:10E71000CDE90245DDE90201DDE90023A2FB004568 +:10E7200002FB015503FB0055CDE90445D6E90E0176 +:10E73000DDE9002380185941C6E90E01D6E90C0134 +:10E74000DDE9022380185941C6E90C01D6E91C0114 +:10E75000DDE9042380185941C6E91C01DFF87C0378 +:10E76000D0E92A23DDE90401DDE90045A4FB0089A5 +:10E7700004FB019905FB009912EB080043EB09012A +:10E78000DFF85823C2E92A01002445E0DFF84C03F2 +:10E7900000EB840500EBC407D7E90CABDDE90023EF +:10E7A000E868C117A0FB028900FB039901FB0299ED +:10E7B0001AEB08004BEB0901C7E90C013037D7E928 +:10E7C0000A01DDE90289EA68D317A2FB08AB02FB64 +:10E7D00009BB03FB08BB10EB0A0041EB0B01C7E9C7 +:10E7E0000A01D7E91001EA68801851EBE271C7E924 +:10E7F0001001D7E918ABDDE90401EA68D317A2FBE1 +:10E80000008902FB019903FB00991AEB08004BEB0E +:10E810000901C7E91801641C032CB7DB7068B0F567 +:10E820007A7FC0F2938000EBC00009300A2190FB90 +:10E83000F1F070604FF00908D6E90E01A8FB002343 +:10E8400008FB013312F1090043F100010A22002301 +:10E85000E5F7BAF8C6E90E01D6E90C01A8FB0023DA +:10E8600008FB013312F1090043F100010A220023E1 +:10E87000E5F7AAF8C6E90C01D6E91C01A8FB0023BC +:10E8800008FB013312F1090043F100010A220023C1 +:10E89000E5F79AF8C6E91C019048D0E92A23A8FBBD +:10E8A000020108FB0311093041F100010A22002393 +:10E8B000E5F78AF8894AC2E92A01002444E087483A +:10E8C00000EBC405D5E90C01A8FB002308FB0133CC +:10E8D00012F1090043F100010A220023E5F774F860 +:10E8E000C5E90C013035D5E90A01A8FB002308FB76 +:10E8F000013312F1090043F100010A220023E5F778 +:10E9000063F8C5E90A01D5E91001A8FB002308FB5B +:10E91000013312F1090043F100010A220023E5F757 +:10E9200053F8C5E91001D5E91801A8FB002308FB3D +:10E93000013312F1090043F100010A220023E5F737 +:10E9400043F8C5E91801641C032CB8DBD6E90C01B7 +:10E95000A0FB002300FB013301FB00330320A0FBDD +:10E96000024500FB0355CDE90445D6E90E01D6E981 +:10E970001C23A2FB004502FB015503FB0055AD0023 +:10E9800045EA94757068C117544AD2E92A89A8FBF0 +:10E99000002308FB013309FB0033CDE902230027E4 +:10E9A00061E0DDE90401B0EB8400A941DDE9022367 +:10E9B00080185941CDE9000101D1002852D04748C3 +:10E9C00000EBC70000F1300CD0E90C23D6E90C01B4 +:10E9D000A0FB02AB00FB03BB01FB02BBD6E90E238D +:10E9E000DCE90A01A0FB028900FB039901FB029903 +:10E9F000BAEB08026BEB09030320A0FB02AB00FBA0 +:10EA000003BBDCE91023D6E91C01A0FB028900FB53 +:10EA1000039901FB0299BAEB080A6BEB090B7268C8 +:10EA2000D317DCE91801A0FB028900FB039901FB65 +:10EA300002991AEB08004BEB0901DDE90423801869 +:10EA40005941B0EB8400A941DDE902238018594106 +:10EA5000401E61F10001DDE90023E4F7B5FF1F4925 +:10EA600041F827007F1C032F9BDB1C48012180F805 +:10EA7000B010002007B0BDE8F08F10B5174CB822D9 +:10EA800000212046E2F706FD164820624FF4AA0056 +:10EA900060624FF4A020A062002010BD08229621E1 +:10EAA0001148FDF7BCB980B5FFF7E7FF40F2D1632D +:10EAB000B8220E490E4803F0B8F8002801D0012012 +:10EAC00002BD0C4803F002F9002801D0012002BD6C +:10EAD0000248012180F8B110002002BDB8F50020E5 +:10EAE000D0F500200000D8FFFBE50208EBE50208A6 +:10EAF000D9E502089DEA0208704700200AE0DFF825 +:10EB0000F81B01EB8001DFF8F42B0A62DFF8E42B3D +:10EB1000CA62401C0328F2DB704700201BE0DFF8CC +:10EB2000D81B01EB800191ED2D0AD1ED080AF4EE1E +:10EB3000400AF1EE10FA01D581ED080A01F1200238 +:10EB4000D2ED030AB4EE600AF1EE10FA02D5D1F864 +:10EB5000B410D160401C0328E1DB7047FEB5B0F96A +:10EB6000542012040092B0F95620130400AA5360F6 +:10EB7000B0F9584024049460DFF87C5B009E6F6E0F +:10EB8000F61B0096AE6E9B1B5360EB6EE31A936010 +:10EB90000B46416F006D80B201F01AF9F7BDF0B578 +:10EBA00089B000252E462F46DFF84C4BD4F8941040 +:10EBB000012902D12946C4F8941003A9FFF7CEFF1A +:10EBC00006A802F032FF03980699A0EBA13003904B +:10EBD00006A803A94A684368A2EBA3324A608A6880 +:10EBE0008068A2EBA0308860602204F5587104F5BB +:10EBF000577003F041F90C2203A904F55D70E1F7A9 +:10EC0000E3FB00A802F0B9FF602204F5737104F57C +:10EC1000727003F031F90C2200A904F57870E1F765 +:10EC2000D3FB294600A838E004F2344293685B1C09 +:10EC3000936001EB410204EB8202D2F85C334FF0A7 +:10EC4000090C93FBFCF35D1901EB410304EB830317 +:10EC5000D3F860C34FF0090E9CFBFEFC664403F53D +:10EC60005873D3F804C09CFBFEFC6744DDF800C079 +:10EC7000D2F8C82392FBFEF2624400924268D3F8B5 +:10EC80006CC09CFBFEFC6244426082681B6FF446D1 +:10EC900093FBFCF39A188260491C0929C4DB290004 +:10ECA00000D54942320000D552423B0000D55B42BC +:10ECB000009D002D00D56D4200954568002D01D5C1 +:10ECC0006D4245608568002D01D56D428560002547 +:10ECD000009EB14200DA012541688A4200DA6D1CCB +:10ECE0008068834200DA6D1C04F23442906809287F +:10ECF00000DB6D1C042D0FD194F83414032908DBBC +:10ED0000526804F16400FCF72DFF012002F02DFF92 +:10ED100002E00846FCF71FFF09B0F0BD2DE9F04105 +:10ED20000446DFF8D459002085F8340405F234464F +:10ED30007060074605F1080825E005EB870090EDB7 +:10ED4000330AD8ED0D0AB4EE600AF1EE10FA19DBC1 +:10ED5000D8E912230020DFF8AC19EBF77FFB21F094 +:10ED60000041DFF8A429DFF8A439EBF701FA09D252 +:10ED700095F83404401C85F8340470680121B940CA +:10ED8000084370607F1C032FD7DB95F834040028FC +:10ED900015D0002709E004EBC70041680068EBF7D5 +:10EDA000BBF905EB870148667F1C032FF3DB0020CE +:10EDB000B060A868042802DA95F83404A86095F8D1 +:10EDC000340403281DD198ED010ADFEDBD0AB4EE2D +:10EDD000600AF1EE10FA14D5D8E912230020DFF80A +:10EDE0002419EBF73BFB21F00041DFF81C29DFF889 +:10EDF0001C39EBF7BDF904D2A868032801D104201F +:10EE0000A86098ED020ADFEDAF0AB4EE600AF1EEF9 +:10EE100010FA1DD598ED010ADFEDAB0AB4EE600AD9 +:10EE2000F1EE10FA14D5D8E912230020DFF8D41837 +:10EE3000EBF714FB21F00041DFF8D428DFF8D438D9 +:10EE4000EBF796F904D2A868042801D10520A86040 +:10EE5000BDE8F0812DE9F0410446DFF89C78D7F851 +:10EE6000B404012850D107F1E005F7EE000AB7EE2F +:10EE7000000A07F5E471284603F004F807F1500290 +:10EE800007F5D471284603F003FA06003DD07868F0 +:10EE9000401C7860616F0C46D7E91401EBF73CF930 +:10EEA000214600F01AFD00EE100ABAEEC80A10EE74 +:10EEB000100AE4F727FEC7E9140107F5D07407F13B +:10EEC0005008D4E90201EBF727F9C8F80800D4E9A3 +:10EED0000401EBF721F9C8F80C00D4E90601EBF7BF +:10EEE0001BF9C8F81000D7E968010122DFF82838BB +:10EEF000EBF728FB09D89FED750AF0EE400A29468A +:10EF0000284602F0BFFF00E000263046BDE8F08151 +:10EF100090ED030AD0ED040AF4EE400AF1EE10FA87 +:10EF20001BD590ED051AB4EE401AF1EE10FA14D587 +:10EF30000021016490ED040AD0ED050AB4EE600AE8 +:10EF4000F1EE10FA04DB0121416402218164704773 +:10EF500002214164012181647047B4EE600AF1EE40 +:10EF600010FA1BD590ED050AB4EE600AF1EE10FA26 +:10EF700014D50121016490ED030AD0ED050AB4EE29 +:10EF8000600AF1EE10FA04DB002141640221816481 +:10EF900070470221416400218164704702210164AD +:10EFA00090ED030AB4EE600AF1EE10FA04DB0021E2 +:10EFB0004164012181647047012141640021816421 +:10EFC00070470021C1640B4606E01A4640F8212034 +:10EFD00000EB81025362491C0329F6DB01214167E2 +:10EFE00019468167704710B5044604F15400142196 +:10EFF00041600A21C160002101772046FFF7E1FF4F +:10F000000020606510BD000038B52DED028B86B084 +:10F0100003A9FFF7A3FD9FEDB18B002418E003A81F +:10F0200050F8240000EE100ABAEEC80A00A800EB5F +:10F03000840080ED000A20EE000A10EE100AE4F7CA +:10F0400061FD53EC182BEBF709FA41EC180B641C2B +:10F05000032CE4DBB0EE480AF0EE680AD3F716F9A9 +:10F06000B0EE408AF0EE608A002419E000EB8405DF +:10F0700000A850F82400E4F745FD53EC182BF8F7EE +:10F08000C9FEE4F739FE00EE100AD5F8400400EEA0 +:10F09000900A30EE200A05F2404080ED000A641C20 +:10F0A000DFF85406032CE1DBD0F89414491CC0F8B7 +:10F0B00094140121C0F8BC1406B0BDEC028B31BD24 +:10F0C000AF47E13D00007A43BD74933CCDCCCC3ECC +:10F0D00038B50446002004F13C0507E0B1EE400AD3 +:10F0E00081ED030A002144F82010401C032838DA7F +:10F0F00095ED050AB8EEC00A04EB8001D1ED000AD7 +:10F1000080EE800AF0EE400AF5EE400AF1EE10FAC9 +:10F1100002DBB0EE601A01E0B1EE601AD1ED061A22 +:10F12000F5EE401AF1EE10FA01DAF1EE611A31EE65 +:10F13000611A81ED0C1AC1ED060AD4ED0F0ABFEE7B +:10F14000001A30EE811AD1ED091A01EE210A80EE83 +:10F15000200A81ED090AB5EE400AF1EE10FABDDB96 +:10F16000BEE72046FFF7D4FE2869B0F57A7F01DAC2 +:10F17000401C2861686894F87010052900F28380AB +:10F18000DFE801F0030E192C6C4004F1700001213E +:10F190004160816000202861084684F8700031BD1C +:10F1A00004F17000C16801296DD1022184F870104A +:10F1B0000021816031BD04EB800090ED030AD5EDA4 +:10F1C0000A0AB4EE600AF1EE10FA12DAD5ED0B0A73 +:10F1D000F4EE400AF1EE10FA4BDB2BE004EB80007A +:10F1E00090ED030AD5ED0A0AB4EE600AF1EE10FACA +:10F1F00049DB042084F8700004F1700000214160B4 +:10F20000816031BD04EB800095ED0B0AD0ED030A5F +:10F21000B4EE600AF1EE10FA0CDA90ED0C0ADFEDB4 +:10F22000330AB4EE600AF1EE10FA0CD52869696A67 +:10F23000884228DB032084F8700004F1700001216B +:10F240004160816031BD042084F870000020286195 +:10F2500004F1700000214160816031BD95ED0C0A20 +:10F2600004EB8000D0ED030AB4EE600AF1EE10FA70 +:10F2700009DB052084F870000020286104F170008B +:10F2800001214160816031BD10B52DED028B08EE8A +:10F29000100ADFF86444B8EEC80ADFED120A20EE67 +:10F2A000200ADFED110A80EE200A10EE100AE4F7C2 +:10F2B00029FC41EC100B03F079FB53EC102B0020E0 +:10F2C000DFF85814E4F746FCEAF726FFC4F8840098 +:10F2D00084ED208ABDEC028B10BD00000000000010 +:10F2E00000000000368D27400024F449CCCC4CBDF2 +:10F2F0002DE9F0472DED028B90B0044602A80021C5 +:10F300000A460B460EC004F13006B06CDFF8E85335 +:10F3100044F62061884206DBD5F88010884212D07E +:10F32000FFF7B2FF0FE0D5F858238018C5F858034F +:10F330008842C0F26781B16C814201D0FFF7A4FF1F +:10F340000020C5F85803206BC5F8C0042046FFF71D +:10F350005BFED5F89404D5F89014884206DB05F5D9 +:10F360008860FFF7B5FE0020C5F89404D5F8B8040E +:10F37000012802D12046FFF712FCD5F8B404012879 +:10F3800040F0408102A802F027FC02A8D0ED020A5A +:10F3900090ED011A9DED020ADDED021A20EE210A20 +:10F3A00001EE010A00EEA00A02F0B4FC85ED030AAA +:10F3B000BEEE410A10EE100AADF8000000A80021D0 +:10F3C0004180818005F52C773946FDF7BFF908A803 +:10F3D00002F053FB296F089800F07FFA81460DF187 +:10F3E0002008696FD8F8040000F077FA8246A96F08 +:10F3F000D8F8080000F071FA0AEB090100EB0109E6 +:10F40000E96FD8F80C0000F068FA00EB0908102248 +:10F4100008A905F17000E0F7D7FF4FF000091CE0E4 +:10F4200004EB490A716CBAF95400000400F055FA73 +:10F4300000EE100A0CA800EB890080ED000ABAEE7D +:10F44000C80A05EB890080ED050A05A8BAF9541031 +:10F45000090440F8291009F10109B9F1030FDFDBB4 +:10F4600005A905F5E47002F0ACFDD5F8280329687C +:10F470008842C0F2C78094ED428ABAEEC88A95ED00 +:10F48000360AB5EE400AF1EE10FA0BD038EE400A1B +:10F4900010EE100AE4F736FB21F00041E4F72CFCF3 +:10F4A000C5F8DC0085ED368AA868032804D9001F5A +:10F4B0000AD0401E0FD014E09948A8634FF07E5048 +:10F4C000E863C82028640CE09648A8639648E8637F +:10F4D0006420286405E09548A8639548E8633220D5 +:10F4E00028643846FCF7EFFF02F022FC00EE100A19 +:10F4F000DFED800A80EE200A85ED040AA8220021B3 +:10F5000005F52C70E1F7C6FFD5F88400404549DACF +:10F5100095ED040AB5EE400AF1EE10FA42DDD5EDA4 +:10F520000E0AB4EE600AF1EE10FA3BD56868296C59 +:10F53000884205DA2046FFF78DFC002810D161E0F3 +:10F5400095ED2C0ADFED6E0AB4EE600AF1EE10FACA +:10F5500006DB2046FFF77EFC002853D000206860C1 +:10F56000002005E005EB80014A69C1F8B420401C89 +:10F570000328F7DBFFF7D1FA4FF000090BE005EBAA +:10F58000890090ED080AD0ED0B0A30EE600A80ED9C +:10F59000330A09F10109B9F1030FF0DB05F5D47065 +:10F5A000FFF7BCFB00200CE005EB800191ED260A83 +:10F5B000D1ED050A30EE600AB0EEC00A81ED290AED +:10F5C000401C0328F0DB95ED290AD5ED2A0A30EE20 +:10F5D000200AD5ED2B0A30EE200A85ED2C0A4FF0DB +:10F5E000000906E005EB89004169C0F8981009F1AF +:10F5F0000109B9F1030FF5DBE822002105F5E470FC +:10F60000E1F748FF002010B0BDEC028BBDE8F087A9 +:10F6100010B5394C4FF49B6200212046E1F73AFFC8 +:10F62000102020604FF080402067FFF766FA04F555 +:10F630008860FFF7D8FC2068C4F890044FF084403D +:10F64000C4F87C041E20C4F89C043A48C4F8A804FA +:10F650003948C4F8A4043948C4F8AC041920FDF7AB +:10F6600087FB002010BD012240F252313448FCF7E4 +:10F67000D6BB10B5204C4FF49B6201462046E0F704 +:10F68000A3FE0120C4F89400002010BD80B51A49E3 +:10F690000022C1F894204FF49B62E0F795FE002011 +:10F6A00002BD10B5FFF7B4FF040009D04FF4377363 +:10F6B0000FF29C020FF2BC01FFF71EFA204610BDAC +:10F6C000204802F003FB040009D040F2DF230FF2D0 +:10F6D00080020FF2A001FFF70FFA204610BD42F2A0 +:10F6E00026034FF49B6218491848BDE8104002F009 +:10F6F0009CBA000000401C4650CB002000401CC6B5 +:10F70000CDCC4C3D0000F0BF9A9999999999B93F99 +:10F710009CC420B07268913F0070A7400000D041A7 +:10F720000080BB44000096439A99993F00007042C4 +:10F730003333B33FCDCCCC3ECDCC4C3F3333333FD2 +:10F74000F1F2020867F602088DF6020873F6020865 +:10F75000696E765F656E61626C655F696E5F757319 +:10F76000655F6175746F5F63616C69627261746912 +:10F770006F6E0000433A5C54656D705C4955535C94 +:10F78000494B445C5461652D536F6F5C656D6265D8 +:10F79000646465645F7265666572656E63655F6605 +:10F7A0006F725F4E6F74655F335C656D6265646434 +:10F7B00065645C496E76656E53656E73655C6D70ED +:10F7C0006C5C616363656C5F6175746F5F63616CD2 +:10F7D0002E63000010B590B014460022009200AADB +:10F7E00090ED010AB8EEC00AD1ED020AF8EEE00A87 +:10F7F00020EE200AD0ED020AF8EEE00A91ED011A9F +:10F80000B8EEC11A00EEC10A82ED010A90ED020ABB +:10F81000B8EEC00AD1ED000AF8EEE00A20EE200AA8 +:10F82000D0ED000AF8EEE00A91ED021AB8EEC11A26 +:10F8300000EEC10A82ED020A90ED000AB8EEC00A9D +:10F84000D1ED010AF8EEE00A20EE200AD0ED010A1F +:10F85000F8EEE00A91ED001AB8EEC11A00EEC10A06 +:10F860008DED030A0CAA00A9204600F0E0F804A9D7 +:10F87000204600F0FAF908AA04A90CA800F0D7F86D +:10F8800008A890ED020AB5EE400AF1EE10FA09D18F +:10F89000D0ED010AF5EE400AF1EE10FA02D19FED2B +:10F8A000530A05E0D0ED010AD3F7C2FBB1EE400ADE +:10F8B00010B010BD00210A4605E050F822305B135D +:10F8C00003FB0311521C032AF7DB0846704781FB38 +:10F8D0000001400F40EAC100704781FB0001800F2A +:10F8E00040EA810070472DE9F04104460D46164676 +:10F8F00029682068FFF7F1FF074669686068FFF72D +:10F90000ECFF8046A968A068FFF7E7FFA7EB0801B6 +:10F910000F1AE968E068FFF7E0FF381A306069689D +:10F920002068FFF7DAFF074629686068FFF7D5FF10 +:10F930008046E968A068FFF7D0FF08EB0701471889 +:10F94000A968E068FFF7C9FF381A7060A9682068E5 +:10F95000FFF7C3FF0746E9686068FFF7BEFF804610 +:10F960002968A068FFF7B9FFA7EB08014718696885 +:10F97000E068FFF7B2FFC019B060E9682068FFF7E0 +:10F98000ACFF0746A9686068FFF7A7FF8046696873 +:10F99000A068FFF7A2FF08EB07010F1A2968E068CB +:10F9A000FFF79BFFC019F060BDE8F08110B4036859 +:10F9B0000C68E318136043684C68E318536083686D +:10F9C0008C68E3189360C068C9680818D06010BCE0 +:10F9D000704702680A60426852424A608268524236 +:10F9E0008A60C0684042C8607047000000000000A4 +:10F9F00030B591B004461546002000900C2201A8B5 +:10FA0000E0F7E2FC0CAA00A92046FFF76CFF08A96A +:10FA10002046FFF7DEFF04AA08A90CA8FFF763FF42 +:10FA20000C2205A92846E0F7CFFC11B030BD90EDBF +:10FA3000000AD1ED000A20EE200AD0ED010A91ED76 +:10FA4000011A00EEC10AD0ED020A91ED021A00EE91 +:10FA5000C10AD0ED030A91ED031A00EEC10A82ED4E +:10FA6000000A90ED000AD1ED010A20EE200AD0ED47 +:10FA7000010A91ED001A00EE810AD0ED020A91ED23 +:10FA8000031A00EE810AD0ED030A91ED021A00EE8E +:10FA9000C10A82ED010A90ED000AD1ED020A20EEC2 +:10FAA000200AD0ED010A91ED031A00EEC10AD0ED53 +:10FAB000020A91ED001A00EE810AD0ED030A91EDE1 +:10FAC000011A00EE810A82ED020A90ED000AD1EDE2 +:10FAD000030A20EE200AD0ED010A91ED021A00EE91 +:10FAE000810AD0ED020A91ED011A00EEC10AD0EDB3 +:10FAF000030A91ED001A00EE810A82ED030A7047B5 +:10FB000090ED000AD1ED000A30EE200A82ED000AE5 +:10FB100090ED010AD1ED010A30EE200A82ED010AD2 +:10FB200090ED020AD1ED020A30EE200A82ED020ABF +:10FB300090ED030AD1ED030A30EE200A82ED030AAC +:10FB4000704790ED030AD0ED020A90ED011AD0ED56 +:10FB5000001A21EEA12A01EE012A00EEA02A00EEF1 +:10FB6000002AB0EE000AB4EE402AF1EE10FA3AD5BF +:10FB7000B6EE000A22EE000A60EE020AB7EE081A9C +:10FB800000EEC21A61EE020A20EE201AB7EE082A31 +:10FB900001EE602A62EE200A20EE201AB7EE082A53 +:10FBA00001EE602A62EE200A20EE200AB7EE081A63 +:10FBB00000EE601A21EE202A21EE820A80ED000A72 +:10FBC00090ED010A20EE020A80ED010A90ED020A92 +:10FBD00020EE020A80ED020A90ED030A20EE020AEE +:10FBE00080ED030A70474FF07E51016000214160B3 +:10FBF0008160C160704710B50446D4ED030A94EDEE +:10FC0000021AD4ED011A94ED000A20EE000A01EE6A +:10FC1000A10A01EE010A00EEA00A02F07BF8B5EE9F +:10FC2000400AF1EE10FA18D0D4ED000AC0EE800AB6 +:10FC3000C4ED000AD4ED010AC0EE800AC4ED010A49 +:10FC4000D4ED020AC0EE800AC4ED020AD4ED030A24 +:10FC500080EE800A84ED030A10BD4FF07E502060D4 +:10FC600000206060A060E06010BD02680A6090ED56 +:10FC7000010AB1EE400A81ED010A90ED020AB1EEEF +:10FC8000400A81ED020A90ED030AB1EE400A81EDCF +:10FC9000030A704770B505460C4668680146FFF7D1 +:10FCA00016FE064629680846FFF711FE8019A0F1E6 +:10FCB00080402060A9686868FFF709FE0646296849 +:10FCC000E868FFF704FE301A6060E9686868FFF7CB +:10FCD000FEFD06462968A868FFF7F9FD8019A060B7 +:10FCE000A9686868FFF7F3FD06462968E868FFF72A +:10FCF000EEFD8019E060A8680146FFF7E8FD0646C2 +:10FD000028680146FFF7E3FD8019A0F180402061DB +:10FD1000E968A868FFF7DBFD064629686868FFF711 +:10FD2000D6FD301A6061E9686868FFF7D0FD0646C5 +:10FD30002968A868FFF7CBFD301AA061E968A868B8 +:10FD4000FFF7C5FD064629686868FFF7C0FD801902 +:10FD5000E061E8680146FFF7BAFD064628680146FB +:10FD6000FFF7B5FD8019A0F18040206270BD90F9C9 +:10FD70000010012901DB00207047002901D5042073 +:10FD8000704790F90110012901DB0120704700291B +:10FD900001D50520704790F90200012801DB0220FF +:10FDA0007047002801D5062070470720704738B5F6 +:10FDB0000446FFF7DCFF0546E01CFFF7D8FF45EAE5 +:10FDC000C005A01DFFF7D3FF45EA801080B232BD09 +:10FDD0002DE9F04107460C4615461E46780702D528 +:10FDE0004FF0FF3000E00120B84608F0030255F85C +:10FDF00022205043FFF771FD3060B80602D54FF066 +:10FE0000FF3000E0012021464FEA680202F00C02B8 +:10FE100052595043FFF761FD7060F80502D54FF06D +:10FE2000FF3000E0012021464FEA281202F00C02C8 +:10FE300052595043FFF751FDB060BDE8F08110B456 +:10FE400000220260426005E000EB820351F822408C +:10FE50001C61521C052AF7DB10BC704780ED090AB3 +:10FE600080ED0A0AD0ED060AB7EE001A70EE810A9C +:10FE700090ED071A70EE810A80EE200A80ED000AEC +:10FE800080ED010A704780ED090A90ED010AD0ED7E +:10FE9000000AD0ED061A90ED091A01EEE01AD0ED35 +:10FEA000071A01EEC01A90ED042AF0EE411A42EE54 +:10FEB000201AD0ED050A40EE801AC0ED0A1A90ED26 +:10FEC000080A21EE800A80ED0A0A0168416080ED8F +:10FED000001A70472DE9F84304460D4616460027E0 +:10FEE00011E055F8291009EB4900C01954F8200019 +:10FEF000FFF7F3FC804409F10109B9F1030FF0DBCE +:10FF000046F827807F1C032F03DA4FF00008C14614 +:10FF1000F3E7BDE8F183F1B582B0012801DA0020F2 +:10FF2000FEBD00A902A800F055F80446002500987F +:10FF3000012806DB0146024602EBD1714910A0EB15 +:10FF40004105401B00900298A0F1804706463946C3 +:10FF5000FFF7C3FCA6EB6006022C23DB7810A0F1B0 +:10FF6000C0413846FFF7B9FC01463846FFF7B5FCFB +:10FF7000471039463046FFF7B0FCA6EB6006032C6D +:10FF800010D17810A0F1C0413846FFF7A6FC014619 +:10FF90003846FFF7A2FC471039463046FFF79DFC74 +:10FFA000A6EB6006002D04D027493046FFF795FCEC +:10FFB00006460098012802DB4010064107E010F1D8 +:10FFC000010F04D121493046FFF787FC0646304631 +:10FFD000FEBD000070B504460D4620681C498842ED +:10FFE00005DB401020604FF0FF3028601AE0194E0A +:10FFF000B04215DA204600F039F82860206816492A +:020000023000CC +:10000000884205DB401020602868401E286009E017 +:10001000B04207DA400020602868401C286001E0F8 +:100020000020286020680D4909180D4A914201D32B +:10003000032070BD0B4908180B49884201D30220E8 +:1000400070BD012070BD0000CD3C412D9A79825ACF +:10005000FD0BB958FE855C2CFC0BB958666666C66C +:10006000CDCCCC0C0AD7A3C015AE47010021026845 +:10007000002A01D108467047130C1B0402D110213D +:1000800012040260026812F07F4F02D1083112029E +:100090000260026812F0704F02D1091D1201026065 +:1000A000026812F0404F02D1891C9200026002687F +:1000B000002A02D5491E5208026008467047F8B56A +:1000C00004460D4620680146FFF707FC06466168B6 +:1000D0000846FFF702FC0746A0680146FFF7FDFB54 +:1000E000C6F18041C91B081AFFF715FF2860206878 +:1000F00068606068A860A068E8600020F2BD000049 +:1001000080B58DF800108DF80120022300AAD021BF +:100110000020E0F752FA012801D1002002BD4FF083 +:10012000FF3002BD38B51446094D29701946681CC8 +:10013000E0F74AF9631CDBB22A46D0210020E0F741 +:100140003CFA012801D1002032BD4FF0FF3032BD12 +:10015000D4FB002080B5D2B200920A46D021002004 +:10016000E0F769FA012801D1002002BD4FF0FF300D +:1001700002BD0EB4002003B0704780B5E0F759F916 +:100180006421E0F710FB002002BD00000300002006 +:1001900013F0030F09D0521E22BF13F8010B11F800 +:1001A00001CBB0EB0C00F3D07047121F22BF53F805 +:1001B000040B51F804CB6045F7D0121D0AD200BAE7 +:1001C0009CFA8CFCB0EB0C0038BF6FF0000088BFCD +:1001D00001207047521E22BF13F8010B11F801CB0A +:1001E000B0EB0C00F6D0521C08BF10467047000060 +:1001F0009748002141608160C16001614161816176 +:10020000017001214170704770B52DED068BF0EE45 +:10021000608AB0EE419A00248D4D2878012800F0C4 +:1002200010816878002852D12E69002E00F0A88035 +:10023000D5ED010A30EE600A10EE100AE3F762FC19 +:1002400021F00041E3F758FD09EE900AB0EE680A8C +:10025000D5ED020A30EE600A10EE100AE3F752FC08 +:1002600021F00041E3F748FD0AEE100AB0EE490A1A +:10027000D5ED030A30EE600A10EE100AE3F742FCF7 +:1002800021F00041E3F738FD00EE100AF0EE040A19 +:10029000F4EE609AF1EE10FA16D5B4EE60AAF1EE23 +:1002A00010FA11D5B4EE600AF1EE10FA0CD5701CFC +:1002B00028610728C0F2C58020466860A860E86011 +:1002C000286101206870BCE020462861B9E06869B7 +:1002D00000284CD12869002852D0D5ED010A30EE13 +:1002E000600A10EE100AE3F70DFC21F00041E3F77D +:1002F00003FD09EE900AB0EE680AD5ED020A30EE71 +:10030000600A10EE100AE3F7FDFB21F00041E3F76D +:10031000F3FC0AEE100AB0EE490AD5ED030A30EEFE +:10032000600A10EE100AE3F7EDFB21F00041E3F75D +:10033000E3FC00EE100A2046DFED440AF4EE609A7A +:10034000F1EE10FA00DB0120B4EE60AAF1EE10FA33 +:1003500000DB401CB4EE600AF1EE10FA00DB401C3A +:1003600002286EDB012068612046286169E00128CF +:1003700067D12E69322E02DA701C286161E00DD13E +:1003800085ED010AB0EE680A85ED020AB0EE490A71 +:1003900085ED030A2869401C286152E0AE69322EBF +:1003A0004ADAD5ED010A30EE600A10EE100AE3F7E2 +:1003B000A9FB21F00041E3F79FFC09EE900AB0EEA3 +:1003C000680AD5ED020A30EE600A10EE100AE3F773 +:1003D00099FB21F00041E3F78FFC0AEE100AB0EE22 +:1003E000490AD5ED030A30EE600A10EE100AE3F771 +:1003F00089FB21F00041E3F77FFC00EE100A204664 +:10040000711CA961DFED110AF4EE609AF1EE10FAA9 +:1004100000DB0120B4EE60AAF1EE10FA00DB401C14 +:10042000B4EE600AF1EE10FA00DB401C022808DB93 +:1004300001202870044604E0204628616861A86114 +:1004400068702046BDEC068B70BD000001002040A6 +:1004500004FD002010B5DFF82C45F9F734F860668C +:100460000020024603E004EB8001CA62401C092818 +:10047000F9DB10462066E065F9F719F8A0664FF43D +:10048000FA7020606060DFF80005A0609FED0A0A46 +:1004900084ED030A84ED040A84ED050AB5EE000A32 +:1004A00084ED060A84ED070ADFF8E00420620720E5 +:1004B0006062A06210BD00009A99193F7047000069 +:1004C000F0B52DED048B87B00C469FED438ADFF825 +:1004D000B46400207065B065306E401C3066DFF893 +:1004E000B054012C02D1002068672867F06D0A28FB +:1004F00044DA1E220021706EF8F7F6F9C5F88C0078 +:100500001E220121706EF8F7EFF9F16D06EB810202 +:10051000336E03EB8307BB00D36201292CDBD5F8D4 +:100520008C3093ED000AD0ED000A30EE600A8DEDBC +:10053000030A93ED010AD0ED010A30EE600A03AF21 +:1005400087ED010AD3ED020A90ED021A70EEC10A9E +:10055000C7ED020A05EB81009DED031ADDED031ADC +:1005600021EE211A00EE001A00EEA01A80ED051A05 +:10057000D36A926A9A1A8263481CF065316E0A291E +:1005800002DA0320C5F88800F06D0A28C0F23E8127 +:10059000401EF065706E0A2920D11E220A21F8F74C +:1005A000B3F985ED030A1E220A21706EF8F7CAF925 +:1005B00085ED040A1E220A21706EF8F7E1F985ED37 +:1005C000050A0020092844DA05EB800191ED060AAE +:1005D00038EE008A401CF5E7000000001E220A21C8 +:1005E000F8F782F9D5F88C1095ED030AD0ED000AE2 +:1005F00030EE600AD1ED000A30EE200A85ED030AE4 +:1006000095ED040AD0ED010A30EE600AD1ED010A41 +:1006100030EE200A85ED040A95ED050AD0ED020AB8 +:1006200030EE600AD1ED020A30EE200A85ED050AAF +:10063000F06D05EB800090ED050AD0ED040A30EE78 +:10064000200AD0ED030A30EE200AF0EE080A20EE70 +:10065000208AB2EE040AD5ED030AC0EE800ACDED81 +:10066000000AD5ED040AC0EE808A00A8C0ED018A18 +:10067000D5ED050A80EE809A80ED029A306E0A2848 +:1006800005D100982860C5ED018A85ED029A002702 +:100690000FE01E22C7F1090109B2706EF8F724F9C4 +:1006A00095ED021AD5ED010A95ED000A00F0EFF87C +:1006B0007F1C0A2FEDDBF06A716A726D914249DA94 +:1006C000A96F002908D128660121A967009929602E +:1006D000C5ED018A85ED029AB16AB26D91420CDADC +:1006E000E96F00290BD168660121E967009929604B +:1006F000C5ED018A85ED029A01E00021E967296EC6 +:10070000411A296732686B6EC31A9A420CD2EB6F9A +:10071000012B09D10020C5F88000C5F88400686766 +:100720000120C5F8880060E08A420CD2A96F012937 +:1007300009D10020C5F88000C5F884006867022050 +:10074000C5F8880051E0A96E401A68670320C5F813 +:1007500088004AE000992960C5ED018A85ED029A7A +:100760000021A967E9672967D5F88010002903D11E +:10077000A8660121C5F88010A96E411A69679FED2E +:100780007F0A28EE000AB5EE400AF1EE10FA03DC0B +:100790009FED7B0A28EE000AD6ED020AB3EE041A9A +:1007A00060EE810AF4EE400AF1EE10FA08D5D5F8B1 +:1007B0008410002907D1E8660121C5F8841002E001 +:1007C0000021C5F884107168A1F5FA71EA6E801AEB +:1007D000814207D2D5F88400012803D10420C5F84E +:1007E000880002E00320C5F8880000200CE006EB3A +:1007F00080010A6BCA62082805DA05EB8001CA6924 +:100800008A610A6CCA63401C0928F0DBD5F88800AD +:10081000012806D037D303281CD00ED3042826D0B5 +:1008200031E0B06E0121C162296F01630221416391 +:10083000002C28D1F8F743FE25E0B06E0121C162FB +:10084000296F016304214163002C1CD10221F8F7B8 +:1008500036FE18E0B06E0121C162696F01630821A4 +:100860004163002C0FD10221F8F729FE0BE0B06E96 +:100870000121C162696F016310214163002C02D123 +:100880000221F8F71CFE07B0BDEC048BF0BD83B06D +:10089000D0ED001A31EEC00A8DED000A90ED010A8C +:1008A00030EE600A00A981ED010AD0ED020A70EE77 +:1008B000C10AC1ED020A9DED001AB5EE401AF1EE33 +:1008C00010FA03D5B1EE411A8DED001AB5EE400ACB +:1008D000F1EE10FA03D5B1EE400A81ED010AF5EE12 +:1008E000400AF1EE10FA03D5B1EE600A81ED020A7A +:1008F00024489DED000AD0ED030AB4EE600AF1EE43 +:1009000010FA13D591ED010AD0ED040AB4EE600A95 +:10091000F1EE10FA0AD591ED020AD0ED050AB4EE17 +:10092000600AF1EE10FA01D5012200E000229DEDEF +:10093000000AD0ED060AB4EE600AF1EE10FA13D503 +:1009400091ED010AD0ED070AB4EE600AF1EE10FA5B +:100950000AD591ED020AD0ED080AB4EE600AF1EE74 +:1009600010FA01D5012100E00021436DD218426543 +:10097000826D8918816503B07047000000007A44D9 +:1009800000007AC41CE30020000040413333B33E32 +:100990009CF700201FB502F013F8212101601FBD54 +:1009A000D2B2203A22BF41FA02F0C9177047203272 +:1009B000D141D04048409140D14048409140114100 +:1009C000704700001AA210EE101ADFF860C0F2ECB7 +:1009D000060A614509DB00EE803A70EE800A83EE7C +:1009E000200A40F0020010EE101A21F0004CDCF159 +:1009F000665C0BD860EE000A20EE203A03EE010A96 +:100A000001EEA02A42EE202A80EE220A400810F0D1 +:100A1000020F18BFB1EE400A02EB8002D2ED000ACD +:100A200030EE200A28BFB1EE400A7047A430893E5C +:100A3000D7B3DD3F6AD5033F2B94A93DB82A593F70 +:100A40000000803F000080BF00000000920A063FC7 +:100A5000DB0FC93F920A863FDB0FC93F920A06406F +:100A6000DB0F4940368D2740F0B443695D88DF884D +:100A70000A466C1C05FB072707EB6407B7FBF4F776 +:100A8000002147F6FF74A742A8BF274603DA264E87 +:100A9000B742B8BF254FDF801F89BD420BD2072D5B +:100AA00007DB5F80DD8A35B9058D45F0800505855A +:100AB00001E06D1C5D80DD8A15B1012D05D010E0CF +:100AC000018DC1F3C01169B910E09E8A9D88022E84 +:100AD0000CBF2E4605F5967645B1DD88B6B2AE421E +:100AE00004D20121058D45F08005058518889F8871 +:100AF000461C00FB072202EB6602B2FBF6F2A242A2 +:100B0000A8BF224603DA084CA242B8BF074A9A801F +:100B10005A89904204D20628AEBF1A80401C188021 +:100B2000F0BC0846704700000280FFFF0180FFFF15 +:100B300038B504462069818D02688368158B528917 +:100B4000406A5B1EA3EB5503CB18B3FBF1F501FB29 +:100B5000153189B2514330F8115029462046FFF72C +:100B600083FFA18CA94238BF2946A18400B9E5843E +:100B700032BDF0B403695C681B681B8B4569A4EB4C +:100B8000530605F10C031F8937B1022F39D017D353 +:100B9000032F6DD0F0BC704711B1EE6001209DE0D5 +:100BA000818D002900F09B80B14280F09880042163 +:100BB000198190F8281001F0FE0141F4806154E0A1 +:100BC000E9B1E968DA89711A9142C0F08880102E83 +:100BD00032BF0021611C01F00F0105EB41014FF60E +:100BE000FD72098CC184018D11400185E9680163A2 +:100BF0000221A98290F8281041F4807135E000208C +:100C00006CE011B95E60032068E05989002966D163 +:100C1000818D002963D0B14261D20421198190F8FD +:100C2000281001F0FE0141F480610185C1F38001CB +:100C3000002954D1C1688A8EC2F3C022002A4ED046 +:100C4000828C43F699239A4249DBB1F856208B8E69 +:100C500062F308038B86418D01F47F4141F033013B +:100C6000418590F8281041F440710185F0BC70472F +:100C700099BB2969491E41638ABB9A8952B1046BA9 +:100C8000091B491C89B28A4204D20021198190F8BB +:100C900028100185A98B2A6912FA81F18E421ED390 +:100CA00090F8281041F440710185042119812A69C6 +:100CB0000168EB68D21A8B889A4238BF132105D39A +:100CC000828CC9888A4234BF14210021428D02F4EB +:100CD0007F4211434185F0BC704702201881F0BC6F +:100CE0007047416900228A8290F8282002850022FC +:100CF0000A61CA600A804A80CA808A808284028D22 +:100D000042F0020202850022C28410200A84891C5B +:100D1000401EFBD17047000038B50D4604460FF267 +:100D20005C424FF4807100F07DF80FF2D0324FF446 +:100D30008071204600F0B0F900954FF480710FF6F5 +:100D400040230FF63802204600F002F8082032BD9A +:100D50002DE9F14F101D009A151D02EB8102161F9F +:100D60000A9A1C1D131D490802F2FE38491E39D08B +:100D7000D0F800C02F68D4F800E0D6F80090D5F87D +:100D800000A047FB0CFC376827FB0ECC2F6855F8FA +:100D900004BB47FB0EFE076829FB07EE276849FBEB +:100DA00017F7D0F800902AFB197750F8049B56F8F3 +:100DB00004A94AFB19F954F804AB4FEADC3C23F8C8 +:100DC00002CBFF132BFB1A9923F8027BC9F1000C0D +:100DD0004FEAEC3728F80279491E4FEADE3728F847 +:100DE0000279C5D101682F68366800682D6847FB15 +:100DF00001F127683C4626FB071146FB14F425FB4E +:100E00001040C90B1980C01323F8020F00990098F5 +:100E1000B1F90010B0F902000B1A4018108053808D +:100E2000BDE8F18F2DE9F64F85B0069B069C009337 +:100E3000890803910A46A046894607463B689E10EA +:100E40001B049B146FF30F069BB201EB090A33439B +:100E500050F82A604FEAA60E3604B6146FF30F0E50 +:100E6000B6B201EB0A0C46EA0E0550F82CE093FAF4 +:100E700015F64FEAAE0BD3FA15F34FEA0E4E50F8C3 +:100E800029504FEAAE4ECEEA0B0E4FEAA50B2D04C9 +:100E9000AD14C5EA0B0595FA1EFE96FA2EF547F835 +:100EA000045BD6FA1EFE54F8085B02952E4626FB1C +:100EB0000EF546FB1EFE4FEA1E4E50F829604FEA23 +:100EC0000E4E4EEA154540F8295009F1010950F837 +:100ED0002CE04FEAAE054FEA0E4E4FEAAE4ECEEA98 +:100EE000050EB5103604B614C6EA0506D6FA1EF687 +:100EF000A3FA16FEE3FA16F5009B1B1D009353F8A8 +:100F0000046D0196334646FB15F6360C23FB05F3BC +:100F1000360446EA134340F82A3058F80C3B23FBCA +:100F20000EF643FB1EF31B0C1B0443EA164340F86A +:100F30002C30521E82D104220092039A5EE00E19D8 +:100F400001EB060A50F8245050F82A7095FA17FE63 +:100F500001EB0A0CD5FA17F550F82C9050F82670D2 +:100F600097FA19F99EFA29F74FEA670B3F047F14A5 +:100F70006FF30F0BBFB247EA0B0740F82470DEFA9D +:100F800029F9029FDDF808E047FB19F72EFB09FE5F +:100F90003F0C50F826903F0447EA1E4740F8267061 +:100FA00050F82C60019FD9FA16F6A5FA26FEE5FA4C +:100FB00026F5019E26FB05F647FB15F52D0C2D04A5 +:100FC00045EA164640F82A6043FB1EFA4FEA1A45E6 +:100FD00023FB0EF62D0445EA164640F82C60039ECE +:100FE0003419059EB442AAD3521C4B1E93420ED212 +:100FF000009A9204120C0092049A92080492049BA4 +:10100000052B15D303914FF0000889080022069B99 +:1010100053F82830069C0193069B53F8383002930E +:1010200008EB48039B001B59009CA0441446D8E7DA +:10103000059C0023641A2AE003EB910606EB910A53 +:1010400050F8232050F82A5092FA15FE0AEB910C22 +:10105000D2FA15F550F82C8050F8262092FA18F89C +:101060009EFA28F940F82390DEFA28F850F826E096 +:1010700040F82680CB1850F82C20DEFA12F6E5FA5C +:1010800026F840F82A80A5FA26F840F82C809C42E1 +:10109000D2D207B0BDE8F08F2DE9F0434FEA510CF2 +:1010A0000CF1010100230024054600EB8106ACF1A0 +:1010B000020811E09C420FD2D5F800E050F82370EE +:1010C0002F6040F823E0CF18D6F800E050F82790C2 +:1010D000C6F8009040F827E06344D5F804E050F8E3 +:1010E00023706F6040F823E0A41C32F8023B0836FE +:1010F0000835A045DED2BDE8F083000040002000A6 +:101100006000100050003000700008004800280007 +:1011100068001800580038007800040044002400DB +:10112000640014005400340074000C004C002C00C7 +:101130006C001C005C003C007C00020042002200AD +:10114000620012005200320072000A004A002A00B7 +:101150006A001A005A003A007A000600460026008B +:10116000660016005600360076000E004E002E0077 +:101170006E001E005E003E007E000100FF7F00004A +:10118000F67F2403D97F4806A77F6B09627F8C0C0A +:101190000A7FAB0F9D7EC8121E7EE2158A7DF9186C +:1011A000E47C0C1C2A7C1A1F5D7B24227D7A282576 +:1011B0008A79272885781F2B6C77112E4276FC3090 +:1011C0000575DF33B673BA3655728D39E370573C07 +:1011D0005F6F173FCA6DCE41246C7B446E6A1D471A +:1011E000A768B449D066404CE964C04EF2623451FD +:1011F000EC609B53D75EF655B45C4358825A825AD2 +:101200004358B45CF655D75E9B53EC603451F262A0 +:10121000C04EE964404CD066B449A7681D476E6A69 +:101220007B44246CCE41CA6D173F5F6F573CE3701F +:101230008D395572BA36B673DF330575FC30427698 +:10124000112E6C771F2B857827288A7928257D7A9F +:1012500024225D7B1A1F2A7C0C1CE47CF9188A7DF1 +:10126000E2151E7EC8129D7EAB0F0A7F8C0C627F3A +:101270006B09A77F4806D97F2403F67F0000FF7F14 +:10128000DCFCF67FB8F9D97F95F6A77F74F3627F0F +:1012900055F00A7F38ED9D7E1EEA1E7E07E78A7DA7 +:1012A000F4E3E47CE6E02A7CDCDD5D7BD8DA7D7A61 +:1012B000D9D78A79E1D48578EFD16C7704CF42769B +:1012C00021CC057546C9B67373C65572A9C3E370C0 +:1012D000E9C05F6F32BECA6D85BB246CE3B86E6A2D +:1012E0004CB6A768C0B3D06640B1E964CCAEF26238 +:1012F00065ACEC600AAAD75EBDA7B45C7EA5825A35 +:101300004CA3435829A1F655149F9B530E9D34516D +:10131000179BC04E3099404C5997B44992951D4740 +:10132000DC937B443692CE41A190173F1D8F573CF2 +:10133000AB8D8D394A8CBA36FB8ADF33BE89FC30DF +:101340009488112E7B871F2B768627288385282556 +:10135000A3842422D6831A1F1C830C1C7682F918BE +:10136000E281E2156381C812F680AB0F9E808C0C7F +:1013700059806B09278048060A80240300800000FA +:101380000A80DCFC2780B8F9598095F69E8074F3BA +:10139000F68055F0638138EDE2811EEA768207E738 +:1013A0001C83F4E3D683E6E0A384DCDD8385D8DA0E +:1013B0007686D9D77B87E1D49488EFD1BE8904CFD4 +:1013C000FB8A21CC4A8C46C9AB8D73C61D8FA9C33D +:1013D000A190E9C0369232BEDC9385BB9295E3B80A +:1013E00059974CB63099C0B3179B40B10E9DCCAE07 +:1013F000149F65AC29A10AAA4CA3BDA77EA57EA512 +:10140000BDA74CA30AAA29A165AC149FCCAE0E9D22 +:1014100040B1179BC0B330994CB65997E3B8929539 +:1014200085BBDC9332BE3692E9C0A190A9C31D8F63 +:1014300073C6AB8D46C94A8C21CCFB8A04CFBE89CA +:10144000EFD19488E1D47B87D9D77686D8DA8385A3 +:10145000DCDDA384E6E0D683F4E31C8307E7768231 +:101460001EEAE28138ED638155F0F68074F39E80C8 +:1014700095F65980B8F92780DCFC0A8000000080CE +:1014800024030A80480627806B0959808C0C9E80B3 +:10149000AB0FF680C8126381E215E281F9187682FB +:1014A0000C1C1C831A1FD6832422A3842825838521 +:1014B000272876861F2B7B87112E9488FC30BE89C7 +:1014C000DF33FB8ABA364A8C8D39AB8D573C1D8F82 +:1014D000173FA190CE4136927B44DC931D479295F5 +:1014E000B4495997404C3099C04E179B34510E9DCA +:1014F0009B53149FF65529A143584CA3825A7EA5AD +:10150000B45CBDA7D75E0AAAEC6065ACF262CCAE53 +:10151000E96440B1D066C0B3A7684CB66E6AE3B860 +:10152000246C85BBCA6D32BE5F6FE9C0E370A9C38E +:10153000557273C6B67346C9057521CC427604CF81 +:101540006C77EFD18578E1D48A79D9D77D7AD8DAEA +:101550005D7BDCDD2A7CE6E0E47CF4E38A7D07E762 +:101560001E7E1EEA9D7E38ED0A7F55F0627F74F381 +:10157000A77F95F6D97FB8F9F67FDCFC004000C064 +:10158000373F01C06E3E05C0A53D0BC0DC3C14C01A +:10159000133C1FC04B3B2CC0823A3CC0BA394FC0F1 +:1015A000F23864C02A387BC0633795C09C36B1C01E +:1015B000D535D0C00F35F1C0493415C184333BC196 +:1015C000BF3263C1FA318EC13631BBC17330EBC15A +:1015D000B02F1DC2EE2E51C22D2E88C26C2DC1C25D +:1015E000AC2CFDC2ED2B3BC32E2B7BC3702ABEC39C +:1015F000B42903C4F7284AC43C2893C48227DFC413 +:10160000C9262DC511267EC55925D0C5A32425C6BA +:10161000EE237CC63A23D5C6872231C7D5218FC792 +:101620002421EEC7742050C8C61FB5C8191F1BC996 +:101630006D1E83C9C31DEEC9191D5BCA721CC9CAC0 +:10164000CB1B3ACB261BADCB821A21CCE01998CC10 +:101650003F1911CDA0188CCD021808CE661787CE81 +:10166000CB1607CF32168ACF9B150ED0051594D016 +:1016700071141CD1DF13A6D14E1331D2BF12BFD2C9 +:1016800031124ED3A611DFD31C1171D4941005D59D +:101690000E109BD58A0F32D6070FCBD6870E66D792 +:1016A000080E02D88C0DA0D8110D3FD9980CE0D9A6 +:1016B000210C82DAAD0B26DB3A0BCBDBC90A72DCDC +:1016C0005B0A19DDEE09C3DD83096DDE1B0919DF35 +:1016D000B508C6DF500874E0EE0724E18F07D5E1B6 +:1016E000310787E2D5063AE37C06EEE32506A3E45C +:1016F000D00559E57E0511E62D05C9E6DF0482E730 +:1017000093043CE84A04F7E80304B4E9BE0370EA32 +:101710007B032EEB3B03EDEBFD02ACECC1026CED69 +:1017200088022DEE5102EEEE1D02B0EFEB0173F0D8 +:10173000BB0136F18E01FAF16301BFF23B0184F384 +:10174000150149F4F1000FF5D000D5F5B1009CF674 +:10175000950063F77B002AF86400F2F84F00BAF9AD +:101760003C0082FA2C004BFB1F0013FC1400DCFC35 +:101770000B00A5FD05006EFE010037FF0000000014 +:1017800000400040C940FF3F9241FB3F5B42F53FB4 +:101790002443EC3FED43E13FB544D43F7E45C43F95 +:1017A0004646B13F0E479C3FD647853F9D486B3F1D +:1017B00064494F3F2B4A303FF14A0F3FB74BEB3E56 +:1017C0007C4CC53E414D9D3E064E723ECA4E453E46 +:1017D0008D4F153E5050E33D1251AF3DD351783DF2 +:1017E00094523F3D5453033D1354C53CD254853C61 +:1017F0009055423C4C56FD3B0957B63BC4576D3B98 +:101800007E58213B3759D33AEF59823AA75A303A9A +:101810005D5BDB39125C8439C65C2B39795DCF386E +:101820002B5E7138DC5E12388C5FB0373A604B3714 +:10183000E760E53693617D363D621236E762A53595 +:101840008E6337353564C634DA6453347E65DF33EE +:1018500020666833C166EF3260677432FE67F83124 +:101860009A6879313569F930CE697630656AF22F38 +:10187000FB6A6C2F8F6BE42E216C5A2EB26CCF2D2D +:10188000416D412DCF6DB22C5A6E212CE46E8F2B01 +:101890006C6FFB2AF26F652A7670CE29F9703529B4 +:1018A00079719A28F871FE2774726027EF72C12649 +:1018B00068732026DF737E255374DA24C6743524BA +:1018C00037758E23A575E72212763D227D7693210A +:1018D000E576E7204B773A20B0778C1F1278DC1E34 +:1018E00071782B1ECF78791D2B79C61C8479121C38 +:1018F000DB795D1B307AA71A827AEF19D37A371910 +:10190000217B7E186D7BC417B67B0917FD7B4C16B7 +:10191000427C9015857CD214C57C1314037D54132E +:101920003F7D9412787DD311AF7D1211E37D50106D +:10193000157E8D0F457ECA0E727E060E9D7E410D70 +:10194000C57E7C0CEB7EB70B0F7FF10A307F2B0A34 +:101950004F7F64096B7F9D08857FD6079C7F0E07AC +:10196000B17F4606C47F7E05D47FB504E17FED03D9 +:10197000EC7F2403F57F5B02FB7F9201FF7FC900B0 +:10198000FF7F000070B514461D46DFF8386206F18F +:1019900048014A6F42F002024A671022014606F1EE +:1019A0001000DEF711FDC6E9124570BD70B5144692 +:1019B0001D46DFF8106206F14001CA6F42F00102D5 +:1019C000CA671022014606F17000DEF7FDFCC6E989 +:1019D000104570BDDFF8EC11D1F8A820026091F835 +:1019E000A400704718B40146DFF8D82102F1A4031F +:1019F00092F8A440A04208D1022903D15868401CA3 +:101A0000586010E0002058600DE000245C6082F80F +:101A1000A400012901D1012000E002202246032177 +:101A200018BC00F037B911BC704770B50446654D5D +:101A3000E9686868FDF74BFF06462968A868FDF766 +:101A400046FF301A2060E968A868FDF740FF0646A7 +:101A500029686868FDF73BFF80196060E868014607 +:101A6000FDF735FF064629680846FDF730FF801967 +:101A7000A0F18040A060002070BD80B510225249C6 +:101A8000DEF7A2FC002002BD38B504464D4D95F8A6 +:101A9000BC0010F0030F0CD02A4605F1100105F12F +:101AA0007000FDF720FFD5F8BC0020F00300C5F85A +:101AB000BC00102229462046DEF786FC002032BDFD +:101AC00038B50C461546FFF7DFFFF9F7BFFFC5E94C +:101AD0000001F9F7A4FF002803D0FAF7B1FA20605B +:101AE00031BDF9F7A4FF002803D0FAF7A6FA206069 +:101AF00031BDF9F7A3FF002803D0FAF7ABFA206055 +:101B000031BD0020206031BD2E49C1F8C000002049 +:101B1000704780B507224FF448712C48FAF77FF9D7 +:101B2000002002BD10B5274CD02200212046DFF74F +:101B3000B1FC4FF080406066A066E06620672061DF +:101B4000206020622063C4F880002148C4F8C400EB +:101B5000002010BD80B5FFF7E5FF002804D11D4827 +:101B6000BDE8024000F0B2B802BD1649C1F89400C9 +:101B700070471449C1F8B000704710B584B0040034 +:101B800018D000221146FAF725FA00A8FFF74DFFFA +:101B900020680099A0EBA130206000A8616842682D +:101BA000A1EBA2316160A1688068A1EBA030A060C8 +:101BB000002000E0162004B010BD024890ED310A6C +:101BC0007047000018F3002028F30020091B0308C9 +:101BD000DB0F4940131B030810B584B0040016D076 +:101BE00000A8FFF7CAFF002811D100200BE000A9D0 +:101BF00051F8201000EE101ABAEEC80A04EB80016A +:101C000081ED000A401C0328F1DB002000E01620D3 +:101C100004B010BD10B51E4C4FF4CC72002120460C +:101C2000DFF738FC0C20606010BD70B4002500E0C8 +:101C30006D1C174C2668B54209DA05EB450604EB26 +:101C40008604D4F8B040A342F2D116201EE0142E30 +:101C500001DB16201AE00C2505FB0646C6F8B0305D +:101C6000236805FB0343C3F8A820236804EB830320 +:101C70009860206804EB80008165606802F10C01C7 +:101C8000081860602068401C2060002070BC70470D +:101C900090ED0020002A05D1074A136823EA0101CC +:101CA000084310607047044A1168002801D00020E2 +:101CB000106008467047000084FE002080B5542262 +:101CC00000211348DFF7E6FB002002BD10490A6837 +:101CD000142A01DB1620704701EB8202506008686D +:101CE000401C08600020704738B50024254609E0F4 +:101CF00000EB850040688047002802D0002C00D10E +:101D000004466D1C024801688D42F1DB204632BD5D +:101D100038FB0020B5EEC00AF1EE10FA02D4B1EEA5 +:101D2000C00A70476FF0004C00EE10CAFEF732BEDA +:101D3000002940F10B80F4464942404271F1000114 +:101D400000F00AF850F000406047000050EA01023D +:101D500000F00E80094200BF0BD1B0FA80F188403C +:101D6000C1F19D01C905020672F1004241EB10204C +:101D70007047B1FA81F241409040C2F1200261FA0D +:101D800002F181EA000018BF40F0010002F19D015C +:101D9000E8E70000C0F3C7517F392CD420290DDAC1 +:101DA000C1F11F0C41004FEAC11141F0004121FA7D +:101DB0000CF0894128BF4042C9437047D1F13F0C24 +:101DC0001CD441004FEAC11141F0004161FA0CF00E +:101DD00021FA0CF180EA0100094244BF4FF00041B2 +:101DE000002004D34942404271F10001704701D5FF +:101DF000401E491E704700200021704709424FF0E5 +:101E0000004158BFC943002070470000D2B2203AB9 +:101E100022BF00FA02F1002070475242D041D2F1B5 +:101E2000200291404140D040904041407047000026 +:101E300080B500F00DF8B5EE400AF1EE10FA02D0D0 +:101E40000548406C02BD012002BD0348C06C7047CC +:101E5000014890ED160A704780FA002010B5FFF790 +:101E6000E7FF0446FFF7F1FF204310BD012000F01B +:101E7000ADBD002000F0AABD10B5044600F05CFE28 +:101E8000204610BD2DE9F8432DED048B064689460A +:101E9000B0EE408A10EE900AE1F734FE41EC190BE7 +:101EA00018EE100AE1F72EFE41EC180B53EC182B3C +:101EB000D6E93001E1F74EFE04460D4653EC192BEE +:101EC000D9E93001E1F746FE22462B46E8F7C6FA8B +:101ED000C6E93001002734E051EC180B06EBC702CD +:101EE00053681268E1F736FE04460D4651EC190BB3 +:101EF00009EBC70253681268E1F72CFE22462B4615 +:101F0000E8F7ACFA06EBC702C2E9000106EBC70826 +:101F100051EC180BD8E92423E1F71CFE04460D46CA +:101F200053EC192B09EBC700D0F89410D0F89000AF +:101F3000E1F710FE22462B46E8F790FAC8E92401A3 +:101F40007F1C062FC8DB002718E006EBC70851EC02 +:101F5000180BD8E91223E1F7FDFD04460D4653ECBA +:101F6000192B09EBC700C16C806CE1F7F3FD224629 +:101F70002B46E8F773FAC8E912017F1C092FE4DB4E +:101F8000002718E006EBC70851EC180BD8E90C2322 +:101F9000E1F7E0FD04460D4653EC192B09EBC700B1 +:101FA000416B006BE1F7D6FD22462B46E8F756FA67 +:101FB000C8E90C017F1C032FE4DBBDEC048BBDE8FA +:101FC000F18338B52DED108B82B005460C462068A4 +:101FD000E8F78AF841EC180B6068E8F785F841ECFF +:101FE000190BA068E8F780F841EC1A0BD5E930230B +:101FF0000020DFF8B019E8F731FAC5E93001D5E97A +:102000000C2351EC180BE8F729FAC5E90C01D5E9C6 +:102010000E2351EC190BE8F721FAC5E90E01D5E9B9 +:10202000102351EC1A0BE8F719FAC5E9100153EC2B +:10203000182B51EC180BE1F78DFD41EC1B0B53EC09 +:102040001B2BD5E90001E8F709FAC5E9000153ECBB +:10205000182B51EC190BE1F77DFD41EC1F0B53ECF4 +:102060001F2BD5E90201E8F7F9F9C5E9020153ECA4 +:10207000182B51EC1A0BE1F76DFD41EC1C0B53ECE6 +:102080001C2BD5E90401E8F7E9F9C5E9040153EC93 +:10209000192B51EC190BE1F75DFD41EC1D0B53ECD5 +:1020A0001D2BD5E90601E8F7D9F9C5E9060153EC7E +:1020B000192B51EC1A0BE1F74DFD41EC1E0B53ECC3 +:1020C0001E2BD5E90801E8F7C9F9C5E9080153EC69 +:1020D0001A2B51EC1A0BE1F73DFDD5E90A23E8F77D +:1020E000BDF9C5E90A0153EC1B2B51EC180BE1F7C4 +:1020F00031FDCDE90001DDE90023D5E91201E8F762 +:10210000ADF9C5E9120153EC1F2B51EC190BE1F7A6 +:1021100021FDD5E91423E8F7A1F9C5E9140153EC31 +:102120001C2B51EC1A0BE1F715FDD5E91623E8F746 +:1021300095F9C5E9160153EC1F2B51EC180BE1F78B +:1021400009FDD5E91823E8F789F9C5E9180153EC29 +:102150001D2B51EC190BE1F7FDFC41EC1F0B53EC6F +:102160001F2BD5E91A01E8F779F9C5E91A0153ECF3 +:102170001E2B51EC1A0BE1F7EDFCD5E91C23E8F717 +:102180006DF9C5E91C0153EC1C2B51EC180BE1F760 +:10219000E1FCD5E91E23E8F761F9C5E91E0153EC1E +:1021A0001E2B51EC190BE1F7D5FCD5E92023E8F7FC +:1021B00055F9C5E9200153EC1A2B51EC1A0BE1F744 +:1021C000C9FC53EC1A2BE1F7C5FC41EC1C0B53EC9A +:1021D0001C2BD5E92201E8F741F9C5E92201DDE927 +:1021E000002351EC180BE1F7B5FCD5E92423E8F7FF +:1021F00035F9C5E9240153EC1F2B51EC190BE1F71C +:10220000A9FCD5E92623E8F729F9C5E9260153EC0D +:102210001C2B51EC1A0BE1F79DFCD5E92823E8F7BC +:102220001DF9C5E9280153EC1B2B51EC190BE1F703 +:1022300091FC53EC192BE1F78DFCD5E92A23E8F743 +:102240000DF9C5E92A0153EC1B2B51EC1A0BE1F7F0 +:1022500081FC53EC1A2BE1F77DFCD5E92C23E8F740 +:10226000FDF8C5E92C0153EC1D2B51EC1A0BE1F7DD +:1022700071FC53EC1A2BE1F76DFCD5E92E23E8F73E +:10228000EDF8C5E92E0102B0BDEC108B31BD0000A8 +:102290002DE9F84F2DED108B8CB080460C46914601 +:1022A00098ED0CEB98ED308B98ED000B8DED000B5D +:1022B00053EC182BDDE90001E1F74CFC06460F4614 +:1022C00053EC1E2B51EC1E0BE1F744FC02460B466F +:1022D00030463946F5F756FFCDE9040198ED0EFB7F +:1022E00098ED060B8DED020B53EC182BDDE9020186 +:1022F000E1F730FC06460F4653EC1F2B51EC1F0B49 +:10230000E1F728FC02460B4630463946F5F73AFF1E +:10231000CDE9080198ED109B98ED0AAB53EC182B12 +:1023200051EC1A0BE1F716FC06460F4653EC192B3D +:1023300051EC190BE1F70EFC02460B4630463946CC +:10234000F5F720FFCDE9060153EC182BD8E902017F +:10235000E1F700FC06460F4653EC1E2B51EC1F0B19 +:10236000E1F7F8FB02460B4630463946F5F70AFF1F +:1023700041EC1B0B53EC182BD8E90401E1F7EAFB05 +:1023800006460F4653EC1E2B51EC190BE1F7E2FB0E +:1023900002460B4630463946F5F7F4FE41EC1C0B7D +:1023A00053EC182BD8E90801E1F7D4FB06460F4699 +:1023B00053EC1F2B51EC190BE1F7CCFB02460B46FB +:1023C00030463946F5F7DEFE41EC1D0B53EC182B79 +:1023D000D8E91201E1F7BEFB06460F4653EC1E2B6F +:1023E000DDE90001E1F7B6FB02460B46304639460F +:1023F000F5F7C8FE06460F4653EC182BD8E9140132 +:10240000E1F7A8FB32463B46E8F728F806460F46B8 +:1024100053EC1E2BDDE90201E1F79CFB02460B4663 +:1024200030463946F5F7AEFE06460F4653EC182BFC +:10243000D8E91601E1F78EFB32463B46E8F70EF885 +:1024400006460F4653EC1E2B51EC1A0BE1F782FBAC +:1024500002460B4630463946F5F794FE0022DFF877 +:102460004835E1F777FB41EC1E0B53EC182BD8E90C +:102470001801E1F76FFB06460F4653EC1F2BDDE911 +:102480000001E1F767FB02460B4630463946F5F797 +:1024900079FE06460F4653EC182BD8E91A01E1F7EE +:1024A00059FB32463B46E7F7D9FF06460F4653EC49 +:1024B0001F2BDDE90201E1F74DFB02460B463046DA +:1024C0003946F5F75FFE06460F4653EC182BD8E960 +:1024D0001C01E1F73FFB32463B46E7F7BFFF0646EC +:1024E0000F4653EC1F2B51EC1A0BE1F733FB02465E +:1024F0000B4630463946F5F745FE0022DFF8A83492 +:10250000E1F728FB41EC1F0B53EC182BD8E91E0117 +:10251000E1F720FB06460F4653EC192BDDE90001DD +:10252000E1F718FB02460B4630463946F5F72AFE1E +:1025300006460F4653EC182BD8E92001E1F70AFBB9 +:1025400032463B46E7F78AFF06460F4653EC192B07 +:10255000DDE90201E1F7FEFA02460B463046394654 +:10256000F5F710FE06460F4653EC182BD8E922016A +:10257000E1F7F0FA32463B46E7F770FF06460F46B2 +:1025800053EC192B51EC1A0BE1F7E4FA02460B4617 +:1025900030463946F5F7F6FD0022DFF80C34E1F756 +:1025A000D9FA41EC190BDDE90423DDE90801E1F773 +:1025B000D1FACDE90201DDE9082351EC1C0BE1F76A +:1025C000C9FACDE90001DDE9062351EC1B0BE1F767 +:1025D000C1FACDE90A019FEDF18BDDE90A2351EC47 +:1025E0001B0BE1F7B7FA06460F4653EC1B2B51ECD9 +:1025F000180BE1F7AFFA53EC1C2BE1F7ABFA53ECF5 +:102600001D2BE1F7A7FA02460B4630463946F5F78F +:10261000B9FD06460F46DDE9002351EC1C0BE1F73E +:1026200099FA32463B46E7F719FF06460F46DDE9C1 +:10263000042351EC1D0BE1F78DFA53EC1D2BE1F750 +:1026400089FA32463B46E7F709FF06460F46DDE9C1 +:102650000223DDE90601E1F77DFA02460B4630462A +:102660003946F5F78FFD41EC1A0B53EC1A2B00207D +:102670000146D0F7B3FC00F08B81DDE9082351EC73 +:10268000190BE1F767FA06460F4653EC1D2B51EC88 +:102690001F0BE1F75FFA02460B4630463946F5F765 +:1026A00071FD53EC1C2BE1F755FA06460F4653EC2F +:1026B0001D2B51EC1D0BE1F74DFA53EC1E2BE1F7EE +:1026C00049FA32463B46E7F7C9FE06460F46DDE9C2 +:1026D0000823DDE90601E1F73DFA53EC1E2BE1F793 +:1026E00039FA02460B4630463946F5F74BFD0646A9 +:1026F0000F46DDE90A2351EC1F0BE1F72BFA3246B6 +:102700003B46E7F7ABFE06460F4653EC1B2B51EC5E +:102710001D0BE1F71FFA53EC192BE1F71BFA0246E8 +:102720000B4630463946F5F72DFDC4E90001DDE9D9 +:10273000042351EC190BE1F70DFA06460F4653EC52 +:102740001C2B51EC1E0BE1F705FA02460B463046F6 +:102750003946F5F717FD53EC1D2BE1F7FBF906465B +:102760000F4653EC1C2B51EC1C0BE1F7F3F953EC27 +:102770001F2BE1F7EFF932463B46E7F76FFE0646BF +:102780000F46DDE90423DDE90601E1F7E3F953EC47 +:102790001F2BE1F7DFF902460B4630463946F5F7C5 +:1027A000F1FC06460F46DDE90A2351EC1E0BE1F76A +:1027B000D1F932463B46E7F751FE06460F4653EC49 +:1027C0001B2B51EC1C0BE1F7C5F953EC192BE1F76E +:1027D000C1F902460B4630463946F5F7D3FCC4E949 +:1027E0000201DDE9042351EC1F0BE1F7B3F90646C2 +:1027F0000F4653EC1B2B51EC1E0BE1F7ABF90246D5 +:102800000B4630463946F5F7BDFC53EC1D2BE1F77E +:10281000A1F906460F4653EC1B2B51EC1B0BE1F7BD +:1028200099F953EC192BE1F795F932463B46E7F756 +:1028300015FE06460F46DDE9022351EC190BE1F7C0 +:1028400089F902460B4630463946F5F79BFC0646A9 +:102850000F46DDE9002351EC1E0BE1F77BF9324610 +:102860003B46E7F7FBFD06460F4653EC1B2B51ECAE +:102870001C0BE1F76FF953EC1F2BE1F76BF90246E4 +:102880000B4630463946F5F77DFCC4E90401D4E92E +:10289000000153EC1A2BF5F7BDFAC4E90001D4E9A5 +:1028A000020153EC1A2BF5F7B5FAC4E90201D4E999 +:1028B000040153EC1A2BF5F7ADFA41EC190B84ED3A +:1028C000049B94ED02AB94ED00BB53EC1B2B51EC3D +:1028D0001B0BE1F73FF904460D4653EC1A2B51EC64 +:1028E0001A0BE1F737F922462B46E7F7B7FD044606 +:1028F0000D4653EC192B51EC190BE1F72BF922463D +:102900002B46E7F7ABFD04460D46D8E90023D8E98E +:102910000601E7F7A3FDD8E90A23E7F79FFD824602 +:102920008B4653EC1B2BD8E90C01E1F713F9064653 +:102930000F4653EC1A2BD8E90E01E1F70BF932469A +:102940003B46E7F78BFD06460F4653EC192BD8E9BB +:102950001001E1F7FFF832463B46E7F77FFD53EC05 +:10296000182BE1F7F7F802460B4650465946F5F7A3 +:1029700009FCD8E93023F5F74DFA22462B46E7F754 +:102980006DFD41EC100BCFF781FC89ED000B0120B0 +:102990000CB0BDEC108BBDE8F28F00BF0000000052 +:1029A000000000400000F03F0000E03F80B5012241 +:1029B00051EC100B00F0FCF841EC100B01BD0000D5 +:1029C000014800F021BB00008CFE0020DFED4A0A28 +:1029D00010B560EE200AB0EEE01ADFED481AB4EE52 +:1029E000611A82B00446F1EE10FA29D5F5EE400ADC +:1029F000F1EE10FAACBFB6EE001ABEEE001A70EEA1 +:102A0000810AFDEEE00A10EE900AA8B1FAEEC90ABA +:102A10009FED3B1A00EEC10A9FED3A1A00EEC10A83 +:102A20009FED391A00EEC10A9FED381A00EEC10A77 +:102A30009FED371A00EEC10A00F00300041921E0EF +:102A40008DED000A0098C0F3C750FF2808D088B960 +:102A5000009840020ED1E00748D5B7EE000A45E0E5 +:102A60000098400246D1FFF7ABFF212101609FEDA6 +:102A7000290A13BD8DED000A00A800F0C7FA041959 +:102A80009DED000ADFED240AB4EE600AF1EE10FAC3 +:102A90000BDBDFED220AB4EE600AF1EE10FA04D58A +:102AA000E00723D5B7EE000A20E060EE000AE00759 +:102AB0000ED59FED1B0A9FED1B1A00EE801ADFED6D +:102AC0001A1A41EE201AB7EE000A01EEA00A0DE034 +:102AD000DFED161A9FED162A00EEA12ADFED151A7A +:102AE00020EE201A42EE201A01EE210AA00748BF6C +:102AF000B1EE400A13BD000083F9223F0000004FF1 +:102B00000000C94600A0FD400020A23A0000343376 +:102B10000030C22EFFFFFF7FFEFF7FB9000080392B +:102B20009349B2BA36A02A3DDFFFFFBE6E8C4CB986 +:102B30004283083CA1AA2ABE81423ABF5318984258 +:102B4000E0F704BA8018990707D0521E24BF13F883 +:102B5000011D00F8011DF6D8704781071CD1103AFD +:102B600007D330B433E93210103A20E93210F9D2E9 +:102B700030BC1032121F24BF53F8041D40F8041D4E +:102B8000F8D838BF121D521E24BF13F8011D00F8DB +:102B9000011DF8D8704700BF083A07D333E9021087 +:102BA000083A40F804CD40F8041DF7D20832EAE7AD +:102BB000F0B52DED048B154641EC180B83B053ECAA +:102BC000182BC448C449E0F7C5FFC44AC44B41ECC4 +:102BD000190B21F00041E7F7CBFA80F0F38051ECBC +:102BE000190B00220023E7F7ADFC53EC192B99BF1A +:102BF0000020BC490020BC49E7F730FCE7F78CFA1D +:102C0000040051D0E7F770FA0022B84BE0F7A2FFBA +:102C100041EC190B53EC192B4FF0A040B449E0F7ED +:102C200099FF02460B4651EC180BF5F7ABFA064636 +:102C30000F4653EC192B4FF0C040AE49E0F78AFF26 +:102C400002460B4630463946F5F79CFA06460F46D3 +:102C500053EC192B4FF00050A749E0F77BFF0246D9 +:102C60000B4630463946F5F78DFA06460F4653ECCB +:102C7000192B0020A149E0F76DFF02460B463046B4 +:102C80003946F5F77FFA06460F4653EC192B4FF0FD +:102C900000509B49E0F75EFF02460B46304639463E +:102CA000F5F770FA41EC180B04F00300451951ECEC +:102CB000180B6FF00102944BE7F744FC0BD800228D +:102CC0004FF07953E7F754FA05D2E80740F18E81C7 +:102CD0009FED8E8B8AE153EC182BE0F73BFF41EC24 +:102CE000190BE80731D553EC192B8A488A49E0F7CC +:102CF00031FF8A4A8A4BE7F7B1FB53EC192BE0F717 +:102D000029FF884A884BE7F7A9FB53EC192BE0F71A +:102D100021FF864A864BE7F7A1FB53EC192BE0F71E +:102D200019FF844A844BE7F799FB53EC192BE0F722 +:102D300011FF824B6FF05102E7F790FB53EC192B18 +:102D4000E0F708FF0022624B37E053EC182B51EC00 +:102D5000190BE0F7FFFE06460F4653EC192B91487E +:102D60009149E0F7F7FE914A914BE7F777FB53EC77 +:102D7000192BE0F7EFFE8F4A8F4BE7F76FFB53EC11 +:102D8000192BE0F7E7FE8D4A8D4BE7F767FB53EC15 +:102D9000192BE0F7DFFE8B4A8B4BE7F75FFB53EC19 +:102DA000192BE0F7D7FE894A564BE7F757FB324617 +:102DB0003B46E0F7CFFE53EC182BE7F74FFB41EC17 +:102DC000180B13E18DED008BDDE90001DDE9002337 +:102DD000C3F30A5140F2FF74A14213D0002904BF8B +:102DE000190350EA11301CD1E80748BF9FED478B0B +:102DF000A80740F1038151EC180B81F0004141EC30 +:102E0000180BFBE0190350EA113040F0F780FFF790 +:102E1000D7FD212103B001604FF0FF306FF000417A +:102E2000EFE08DED008B00A800F066F945199DEDEF +:102E3000008B354B51EC180B6FF00102E7F782FB6A +:102E40000BD800224FF07953E7F792F905D2E80743 +:102E500040F1CC809FED2D8BC8E053EC182BE0F7B0 +:102E600079FE41EC190BE8076AD553EC192B294878 +:102E70002949E0F76FFE294A294BE7F7EFFA53ECAF +:102E8000192BE0F767FE274A274BE7F7E7FA53ECE1 +:102E9000192BE0F75FFE254A254BE7F7DFFA53ECE5 +:102EA000192BE0F757FE234A234BE7F7D7FA53ECE9 +:102EB000192BE0F74FFE214B6FF05102E7F7CEFAE6 +:102EC00053EC192BE0F746FE0022014B8AE000BFCD +:102ED0000000F03F83C8C96D305FE43F0000A0FFF1 +:102EE000FFFFDF410000E03F0000E0BF0000303E98 +:102EF000FB21B941B410114026A6513E5C14D33CCD +:102F00009A833B3B5555C5BFFFFF3FBE0000000005 +:102F10000000F03F09260A1039BA213E3BA861C6DD +:102F2000F97D92BE63AC30909F01FA3EF6FB5116DC +:102F30006CC156BFB10255555555A53FFFFFDFBFC8 +:102F400053EC182B51EC190BE0F704FE06460F4624 +:102F500053EC192B13481449E0F7FCFD134A144BAA +:102F6000E7F77CFA53EC192BE0F7F4FD114A124B0A +:102F7000E7F774FA53EC192BE0F7ECFD0F4A104B0E +:102F8000E7F76CFA53EC192BE0F7E4FD0D4A0E4B12 +:102F9000E7F764FA53EC192BE0F7DCFD0B4A0C4B16 +:102FA00018E000BFB08F2FC310D8E53D8F0C73A180 +:102FB000E1E55ABE4DADE44FE31DC73E3EE3B51912 +:102FC000A0012ABFFAF010111111813F4255555549 +:102FD0005555C5BFE7F742FA32463B46E0F7BAFD22 +:102FE00053EC182BE7F73AFA41EC180BA80705D574 +:102FF00051EC180B81F0004141EC180B03B051EC7F +:10300000180BBDEC048BF0BD7047000010B50446F2 +:103010002DED028B94ED008A9FED2D0A82B028EEF3 +:10302000000AB5EE400A8DED000AF1EE10FAACBFD1 +:10303000F6EE000AFEEE000A30EE200A8DED000AE0 +:10304000002100A800F00CF99DED000AB5EE400A41 +:10305000F1EE10FA17D0DFED1F0A20EE200ADFEDA7 +:103060001E0A00EE608ADFED1D0A00EE608ADFEDC9 +:103070001C0A00EE608ADFED1B0A00EE608ADFEDBD +:103080001A0A00EE608A84ED008ADFED180A9DEDD1 +:10309000000AB4EE600AF1EE10FA06D4DFED140A6D +:1030A000B4EE600AF1EE10FA05DBDFED120A00F073 +:1030B000FFF88DED000A9DED000ABDEEC00A02B0DA +:1030C00010EE100A00F00300BDEC028B10BD0000F2 +:1030D00083F9223F000080380000C94600A0FD406F +:1030E0000020A23A000034330030C22E000000CF8E +:1030F0000100004F0000004FD0B52DED048B0446B9 +:1031000082B094ED008B4748474953EC182BE0F709 +:1031100021FDCDE9000100220023E7F713FADDE9E4 +:10312000002399BF0020414900204149E7F796F963 +:10313000CDE90001002100A800F058F9DDE90023E5 +:1031400000200021CFF74AFF4ED03A49E0F702FDB8 +:1031500041EC190B53EC192B4FF0A0403649E0F726 +:10316000F9FC02460B4651EC180BF5F70BF8064636 +:103170000F4653EC192B4FF0C0403049E0F7EAFC02 +:1031800002460B4630463946F4F7FCFF06460F462A +:1031900053EC192B4FF000502949E0F7DBFC0246B5 +:1031A0000B4630463946F4F7EDFF06460F4653EC22 +:1031B000192B00202349E0F7CDFC02460B46304690 +:1031C0003946F4F7DFFF06460F4653EC192B4FF054 +:1031D00000501D49E0F7BEFC02460B46304639461A +:1031E000F4F7D0FF41EC180B84ED008BDDE9000112 +:1031F000164A174BE6F7BCFF04D3164A164BE7F7FF +:10320000A1F905D80022154B00F030F9CDE90001F5 +:10321000DDE90001E6F780FF02B000F00300BDEC3D +:10322000048BD0BD83C8C96D305FE43F0000E03F30 +:103230000000E0BF0000303EFB21B941B410114056 +:1032400026A6513E5C14D33C9A833B3B0000C0FF52 +:10325000FFFFDFC10100C0FFFFFFDF410000E041D1 +:103260000268C2F3C752FF2A06D10068400201D1AA +:10327000012070470220704703685B0016D0C2F13E +:103280009602521A012A11DB182A04DB016801F0A8 +:103290000041016007E0012191400268491E114090 +:1032A0004A40026011B14FF0FF3070470020704774 +:1032B00010EE100A10EE901AA4464FF0FF034FEAEA +:1032C000410103EAD0540A0E1CBF94EA030F92EAAC +:1032D000030F55D0B1EB400F2ED24FEAC11141F090 +:1032E000004100F000434FEA002040F000404FEA68 +:1032F0009000890864EB0204401A38BF01EB4000DB +:1033000018BF54F1000407D0D1EB400038BF0818B3 +:1033100018BFB4F10104F7D140002CD0B0FA80F10D +:1033200000FA01F0521A0EDB43EA102000EBC25003 +:1033300000EE100A6446704708BF00F0004000EE3F +:10334000100A6446704743EA102000EE100A02F1AA +:103350007F024FEAC25100EE901AF1EE100A20F4FB +:10336000F851E1EE101A20EE200AE1EE100A10EEFC +:10337000100A64467047184600EE100A644670470B +:1033800009421CBF94EA030F92EA030F1CD04FF0CE +:10339000984201EE102A60EE810AB1EB400FCBD2C9 +:1033A000244208BF20EE010A10EE901A03EAD1521F +:1033B000A2F119024FEA012191D110EE100A03EA9D +:1033C000D054A4F119048CE74FF0807212EB400F37 +:1033D0002CBF6FF0004011F1807F644618BF6FF082 +:1033E000004000EE100AFDF4D5AA70474268C2F30F +:1033F0000A5240F2FF7C624509D14168090304BFCB +:103400000068002801D101207047022070474368FE +:103410005B0004BF0368002B25D040F233439A1AA7 +:10342000521A012A1FDB352A06DB416801F00041F0 +:1034300041600021016013E0012102F01F03994067 +:10344000491E920607D5426811404A404260026810 +:103450001143002202E0026811404A40026011B1AB +:103460004FF0FF30704700207047000070B540F209 +:10347000FF7601F0004C5B0006EA11545D0D1ABFA7 +:10348000B442B54278E0B3EB410F08BF82424BD261 +:10349000C3F3530343F48013C1F3130141F48011C8 +:1034A000641B0B3C13D9C90241EA5051B1FBF3FE36 +:1034B00003FB1E11A2FB0EE6DEEBC020B14101D2E0 +:1034C0008018594150EA010653D00B3CEBD80B341D +:1034D000C4F12006A14020FA06F6A0403143B1FB1A +:1034E000F3FE03FB1E11A2FB0EE6B0EB0E00B14192 +:1034F00001D28018594102BF0146203D0020C1B3CE +:10350000B1FA81F39940C3F1200220FA02F211438B +:103510009840ED1A0A3509DBC00A40EA41504CEAEE +:10352000D12101EB055170BD23D070BDD5F10B0544 +:10353000B5F120020DDAC5F120020300E84001FADE +:1035400002F6E940934073F10043704151EB0C01E6 +:1035500070BD402D0DDC430821FA02F0C2F12005B8 +:1035600011FA05F6334373F1004370415CF1000139 +:1035700070BD6146002070BD53EA020E1ABFB4420E +:10358000B54237E0B3EB410F08BF8242CCD25B08B3 +:10359000B3FA83F504BFB2FA82F6AD190B3DB5F16B +:1035A000200624BF02FA06F305E0AB40C5F1200671 +:1035B00022FA06F63343AA40D5F1010524427FF4EE +:1035C0006BAF31F00041B1FA81F404BFB0FA80F67C +:1035D000A4190B3CB4F1200624BF00FA06F105E063 +:1035E000A140C4F1200620FA06F63143A040D4F1F0 +:1035F000010455E74FF4001515EB410F2CBF6FF098 +:103600000041EB4218BF6FF00041BDE87040FDF48F +:10361000C1A970473D0A3F0A450A4F0A5E0A700A6F +:10362000860AA00ABF0AE10A080B320B600B930B53 +:10363000C90B030C410C840CCA0C140D610DB30DA5 +:10364000080E620EBE0E1F0F840FEC0F5810C7102D +:103650003A11B1112B12A9122A13AE133614C21447 +:103660005015E21578161017AC174B18EC18911975 +:10367000391AE41A921B431CF61CAC1D651E211F4F +:10368000DF1FA02063212922F122BC238824572593 +:103690002926FC26D227A92882295E2A3B2B1A2C10 +:1036A000FB2CDD2DC12EA72F8E30763160324B33AF +:1036B0003734243513360337F337E538D739CA3A68 +:1036C000BE3BB23CA73D9D3E933F8940804177423F +:1036D0006E4365445C4554464B47424839492F4A3E +:1036E000254B1B4C104D054EF94EED4FDF50D1517F +:1036F000C252B253A1548F557C56685752583B5909 +:10370000235A095BEE5BD15CB35D935E715F4D60E4 +:1037100027610062D662AB637D644D651B66E76618 +:10372000B06777683C69FE69BD6A7A6B356CEC6C92 +:10373000A16D536E026FAF6F5870FE70A27142722E +:10374000DF7279731074A4743475C1754B76D176B9 +:103750005477D4775078C8783D79AE791C7A867AD8 +:10376000EC7A4F7BAD7B097C607CB37C037D4F7D25 +:10377000977DDB7D1B7E577E907EC47EF47E217F0D +:10378000497F6D7F8E7FAA7FC27FD77FE77FF37FE0 +:10379000FB7FFF7FFF7FFB7FF37FE77FD77FC27FCA +:1037A000AA7F8E7F6D7F497F217FF47EC47E907ECD +:1037B000577E1B7EDB7D977D4F7D037DB37C607CD8 +:1037C000097CAD7B4F7BEC7A867A1C7AAE793D79A9 +:1037D000C8785078D4775477D1764B76C1753475E4 +:1037E000A47410747973DF724272A271FE70587003 +:1037F000AF6F026F536EA16DEC6C356C7A6BBD6A66 +:10380000FE693C697768B067E7661B664D657D6455 +:10381000AB63D662006227614D60715F935EB35DFA +:10382000D15CEE5B095B235A3B59525868577C5672 +:103830008F55A154B253C252D151DF50ED4FF94EC2 +:10384000054E104D1B4C254B2F4A394942484B47DA +:1038500054465C4565446E43774280418940933FBE +:103860009D3EA73DB23CBE3BCA3AD739E538F33757 +:1038700003371336243537344B33603276318E308C +:10388000A72FC12EDD2DFB2C1A2C3B2B5E2A822963 +:10389000A928D227FC26292657258824BC23F122D3 +:1038A00029226321A020DF1F211F651EAC1DF61CED +:1038B000431C921BE41A391A9119EC184B18AC17D7 +:1038C00010177816E2155015C2143614AE132A13C9 +:1038D000A9122B12B1113A11C7105810EC0F840F16 +:1038E0001F0FBE0E620E080EB30D610D140DCA0C33 +:1038F000840C410C030CC90B930B600B320B080BAF +:10390000E10ABF0AA00A860A700A5E0A4F0A450A3F +:103910003F0A3D0A00007900F3006C01E6016002F5 +:10392000D9025303CC034604C0043905B3052C0661 +:10393000A6062007990713088C0806098009F909CB +:10394000730AED0A660BE00B590CD30C4D0DC60D36 +:10395000400EB90E330FAD0F2610A01019119311A0 +:103960000D12861200137913F3136D14E61460150B +:10397000DA155316CD164617C0173A18B3182D1975 +:10398000A619201A9A1A131B8D1B061C801CFA1CE0 +:10399000731DED1D661EE01E5A1FD31F4D20C7204C +:1039A0004021BA213322AD222723A0231A249324B5 +:1039B0000D25872500267A26F3266D27E727602820 +:1039C000DA285329CD29472AC02A3A2BB42B2D2C8B +:1039D000A72C202D9A2D142E8D2E072F802FFA2FF5 +:1039E0007430ED306731E0315A32D4324D33C73361 +:1039F0004034BA343435AD352736A1361A379437CA +:103A00000D38873801397A39F4396D3AE73A613B34 +:103A1000DA3B543CCD3C473DC13D3A3EB43E2D3FA0 +:103A2000A73F21409A4014418E4107428142FA4209 +:103A30007443EE436744E1445A45D4454E46C74675 +:103A40004147BA473448AE482749A1491A4A944ADF +:103A50000E4B874B014C7B4CF44C6E4DE74D614E49 +:103A6000DB4E544FCE4F4750C1503B51B4512E52B4 +:103A7000A75221539B5314548E5407550100000044 +:103A80000100000001000000010000000200000031 +:103A9000020000000200000002000000030000001D +:103AA0000300000003000000040000000400000008 +:103AB00005000000050000000600000007000000EF +:103AC00008000000080000000A0000000B000000D1 +:103AD0000C0000000E0000000F00000011000000AC +:103AE0001300000016000000190000001C00000078 +:103AF0001F00000023000000280000002D0000002F +:103B000032000000390000004000000048000000C2 +:103B1000510000005B00000067000000740000001E +:103B20008200000093000000A5000000BA00000021 +:103B3000D1000000EC0000000A0100002B01000091 +:103B4000510100007B010000AB010000E101000019 +:103B50001D02000062020000AF0200000503000029 +:103B600067030000D403000050040000DB040000E1 +:103B70007805000029060000EF060000CF070000CE +:103B8000CB080000E7090000270B00008F0C0000A5 +:103B9000240E0000ED0F0000EF11000032140000B1 +:103BA000BE1600009C190000D71C00007A200000FF +:103BB000922400002F290000602E000039340000FC +:103BC000CF3A000039420000934A0000FA53000047 +:103BD000915E00007E6A0000EC7700000B87000019 +:103BE000129800003FAB0000D7C0000028D90000A9 +:103BF0008AF400006013010019360100345D0100F1 +:103C00003C890100D3BA0100A9F201008B31020006 +:103C10005A78020017C80200E2210300008703005F +:103C2000DDF80300177904007C09050016AC0500D7 +:103C30003163060062310700941908000E1F090065 +:103C400080450A0013910B0076060D00EEAA0E00C7 +:103C50006B8410009D9912000CF21400309617002E +:103C6000988F1A0002E91D008BAE2100D4ED2500CB +:103C700038B62A0001193000A629360015FE3C008E +:103C8000FDAE44002B584D00EF1857008914620018 +:103C9000AC726E000E607C00060F8C0046B89D0072 +:103CA000A59BB1000701C8006139E100DD9FFD005F +:103CB000259B1D01D39E4101172D6A0189D89701CB +:103CC0004146CB01243005028C67460236D88F026C +:103CD0009A8BE202ABAC3F030B8CA803D2A41E0468 +:103CE000E6A1A304FE6339057208E205DDF09F0634 +:103CF000B8CB75070D9E66085ECE7509F630A70A2B +:103D0000B915FF0BC257820DE86E360F898321115A +:103D1000CC844A13AB41B9153585761852368C1BC5 +:103D2000917B051F74E3EE22D591562702734C2C2C +:103D30005075E231E5C92C38BB2D423FD03B3C47A2 +:103D4000B2C93750BF4F555A805EB96500010001B6 +:103D50000001000100010001FF00FF00FF00FE0064 +:103D6000FE00FE00FD00FD00FC00FC00FB00FA0070 +:103D7000FA00F900F800F800F700F600F500F4008A +:103D8000F300F200F100F000EF00EE00ED00EB00B8 +:103D9000EA00E900E700E600E500E300E200E000F9 +:103DA000DF00DD00DC00DA00D800D700D500D3004A +:103DB000D100CF00CE00CC00CA00C800C600C400AD +:103DC000C200C000BE00BC00B900B700B500B3001F +:103DD000B100AE00AC00AA00A700A500A200A000A0 +:103DE0009D009B0098009600930091008E008C002F +:103DF00089008600840081007E007B0079007600C7 +:103E0000730070006D006B006800650062005F0069 +:103E10005C0059005600530050004D004A00470016 +:103E2000440041003E003B003800350032002F00C6 +:103E30002C002900260022001F001C00190016007B +:103E4000130010000D000900060003000000000030 +:103E50000000C6028C055108170BDD0DA310681376 +:103E60002E16F418BA1B801E45210B24D126972943 +:103E70005D2C222FE831AE347437393AFF3CC53F10 +:103E8000000100010001000100010001000100012A +:103E9000000100010001000100010001000100011A +:103EA000000100010001000100010001000100010A +:103EB000000100010001FC00F400E900DB00CA0081 +:103EC000B5009E00840069004C002E000F00F1FF39 +:103ED000D2FFB4FF97FF7CFF62FF4BFF36FF25FF49 +:103EE00017FF0CFF04FF00FFFE00EF00D300AA0045 +:103EF00077003D000000C3FF89FF56FF2DFF11FF33 +:103F000002FF02FF11FF2DFF56FF89FFC3FF0000D4 +:103F10003D007700AA00D300EF00FE00FC00DB00AC +:103F20009E004C00F1FF97FF4BFF17FF00FF0CFFB7 +:103F300036FF7CFFD2FF2E008400CA00F40000018F +:103F4000E900B50069000F00B4FF62FF25FF04FF20 +:103F5000F900C0005B00E1FF6FFF1DFF00FF1DFFC8 +:103F60006FFFE1FF5B00C000F900F900C0005B00DB +:103F7000E1FF6FFF1DFF00FF1DFF6FFFE1FF5B0013 +:103F8000C000F900F4009E000F007CFF17FF04FF43 +:103F90004BFFD2FF6900DB000001CA004C00B4FFF8 +:103FA00036FF00FF25FF97FF2E00B500FC00E9005B +:103FB0008400F1FF62FF0CFFEF007700C3FF2DFFCD +:103FC00002FF56FF0000AA00FE00D3003D0089FF5B +:103FD00011FF11FF89FF3D00D300FE00AA00000081 +:103FE00056FF02FF2DFFC3FF7700EF00E9004C00F2 +:103FF0007CFF04FF36FFF1FFB50000019E00D2FFF9 +:1040000025FF0CFF97FF6900F400DB002E0062FF24 +:1040100000FF4BFF0F00CA00FC008400B4FF17FF35 +:10402000E3001F0040FF07FFA5FF91000001910082 +:10403000A5FF07FF40FF1F00E300E3001F0040FF54 +:1040400007FFA5FF910000019100A5FF07FF40FFBA +:104050001F00E300DB00F1FF17FF36FF2E00F40026 +:10406000B500B4FF04FF62FF6900000184007CFF1B +:1040700000FF97FF9E00FC004C004BFF0CFFD2FF9F +:10408000CA00E9000F0025FFD300C3FF02FF89FF2C +:10409000AA00EF00000011FF56FF7700FE003D0070 +:1040A0002DFF2DFF3D00FE00770056FF11FF0000A1 +:1040B000EF00AA0089FF02FFC3FFD300CA0097FFE9 +:1040C00004FFF1FFF40084004BFF25FF4C000001CA +:1040D0002E0017FF62FF9E00E900D2FF00FFB4FF31 +:1040E000DB00B5007CFF0CFF0F00FC00690036FF11 +:1040F000C0006FFF1DFF5B00F900E1FF00FFE1FF63 +:10410000F9005B001DFF6FFFC000C0006FFF1DFFC7 +:104110005B00F900E1FF00FFE1FFF9005B001DFF1C +:104120006FFFC0000A000A000F00130017001A00FA +:104130001D0020002200250027002A002C0000007E +:10414000000000000300050007000A000D00110038 +:10415000140018001C00210026002C003200390039 +:104160004100490052005B00660072007E008C0036 +:104170009C00AC00BF00E90000000000000004004B +:104180000500080009000D000E00130014001A00BD +:104190001B002100220028002900300031003900D6 +:1041A0003A00430044004E004F005A005B00670095 +:1041B0006800760077008600870097009800A900C5 +:1041C000AA00BD00BE00D400D500EC00ED00060141 +:1041D00007012401250144014501670168018E01A1 +:1041E0008F01B801B901E500000000000000AB2A12 +:1041F0005555008000400000004000800040000055 +:10420000004000805555AB2A0000AB2A5555008070 +:104210005555AB2A0000AB2A555500800060004080 +:104220000020000000200040006000805555AB2AAF +:104230000000AB2A555500800060004000200000BF +:10424000002000400060008000600040002000006E +:1042500000200040006000806666CD4C33339A1920 +:1042600000009A193333CD4C666600806666CD4CEB +:1042700033339A1900009A193333CD4C66660080A7 +:10428000AB6A55550040AB2A551500005515AB2AB1 +:1042900000405555AB6A0080AB6A55550040AB2ACB +:1042A000551500005515AB2A00405555AB6A0080E6 +:1042B000B76D6E5B2549DB36922449120000491226 +:1042C0009224DB3625496E5BB76D0080007000607C +:1042D00000500040003000200010000000100020BE +:1042E00000300040005000600070008000700060EE +:1042F000005000400030002000100000001000209E +:10430000003000400050006000700080C7718E6374 +:1043100055551C47E438AB2A721C390E0000390E83 +:10432000721CAB2AE4381C4755558E63C771008058 +:10433000C7718E6355551C47E438AB2A721C390E81 +:104340000000390E721CAB2AE4381C4755558E63A9 +:10435000C77100805D74BA68175D7451D1452F3AFA +:104360008C2EE9224617A30B0000A30B4617E92267 +:104370008C2E2F3AD1457451175DBA685D74008058 +:104380005575AB6A00605555AB4A00405535AB2AB0 +:1043900000205515AB0A0000AB0A55150020AB2ACA +:1043A00055350040AB4A55550060AB6A55750080E5 +:1043B0005575AB6A00605555AB4A00405535AB2A80 +:1043C00000205515AB0A0000AB0A55150020AB2A9A +:1043D00055350040AB4A55550060AB6A55750080B5 +:1043E000DB76B76D92646E5B495225490040DB363F +:1043F000B72D92246E1B4912250900002509491288 +:104400006E1B9224B72DDB360040254949526E5B66 +:104410009264B76DDB760080007800700068006001 +:1044200000580050004800400038003000280020AC +:1044300000180010000800000008001000180020FC +:10444000002800300038004000480050005800604C +:1044500000680070007800800078007000680060DC +:10446000005800500048004000380030002800206C +:1044700000180010000800000008001000180020BC +:10448000002800300038004000480050005800600C +:10449000006800700078008043798772CA6B0D65F0 +:1044A000515E9457D8501B4A5E43A23CE535282FF5 +:1044B0006C28AF21F31A3614790DBD060000BD0635 +:1044C000790D3614F31AAF216C28282FE535A23C5C +:1044D0005E431B4AD8509457515E0D65CA6B877274 +:1044E000437900809A793373CD6C666600609A597F +:1044F0003353CD4C664600409A393333CD2C662673 +:1045000000209A193313CD0C660600006606CD0C08 +:1045100033139A1900206626CD2C33339A39004084 +:104520006646CD4C33539A5900606666CD6C337342 +:104530009A7900802F7A5D748C6EBA68E962175D93 +:1045400046577451A34BD14500402F3A5D348C2E11 +:10455000BA28E922171D46177411A30BD1050000D4 +:1045600090019001A400A400680068006800680041 +:1045700046004600280028002000200014001400F7 +:1045800010001000100010000A000A0006000600CB +:104590000600060001001B00F000800100020D0073 +:1045A0005201B4001D003800B9018100090020004B +:1045B0001800000014360308803E0308143903086D +:1045C0007C3A0308244103084C3D0308404103089A +:1045D0007C410308EC410308503E03086045030892 +:1045E0000F0003000B00280010B5DFF8084620621A +:1045F0000C220021201DDCF74DFF04F12400206176 +:1046000004F13C00606104F15400A06104F16C000D +:10461000E06100202070FF206070A07010BD0000DD +:104620002DE9F0472DED068B86B00C464FF0000AC1 +:10463000DFF8C055016869604168A9608068E8607A +:10464000D04640460190049003900290052205F167 +:104650000C01286900F05DFA052205F1080168697E +:1046600000F057FA0522291DA86900F052FA052327 +:1046700001AA0321286900F061FAB0EE408A0523FF +:1046800004AA0321686900F059FAF0EE408A052374 +:1046900003AA0321A86900F051FAB0EE409A05225E +:1046A0000321286900F088FAF0EE080AC0EE209A8B +:1046B00095ED02AAD5ED01AAF5EE40AAF1EE10FAA9 +:1046C0000FD1B5EE40AAF1EE10FA0AD195ED030A2A +:1046D000B5EE400AF1EE10FA03D100F016FA4FF0F1 +:1046E0000108564695F8019095ED030A6AEEAA0A6C +:1046F0004AEE0A0A40EE000A10EE900ADFF702FACC +:1047000041EC100BCDF7C2FD51EC100BDFF7F4FAC2 +:104710000090052200A9E86900F0FBF99DED000A70 +:10472000DFEDA30AB4EE600AF1EE10FA00F1858025 +:10473000DFEDA00AB4EE600AF1EE10FA7DDA05238F +:1047400002AA0321E86900F0F9F9F0EE0C0AB4EED0 +:10475000600AF1EE10FA70D59FED970AB4EE408A28 +:10476000F1EE10FA69D59FED950AF4EE409AF1EE5C +:1047700010FA10D59FED920AF4EE409AF1EE10FA7D +:1047800009DB6878FF2858D0FF2068704FF0FF30B1 +:1047900020700120C4E019EE900ADFF7B3F921F090 +:1047A00000413246DFF85034E5F7E2FC11D2B0EEBA +:1047B000000AF4EE408AF1EE10FA17D4F4EE408AC3 +:1047C000F1EE10FA39DAB4EE409AF1EE10FA0EDB9F +:1047D00033E0052301AA1946286900F0AFF9F7EE86 +:1047E000000AB4EE600AF1EE10FA26D5B04695ED57 +:1047F000030ADDED000A80EE200A10EE100ADFF752 +:1048000081F941EC100B00F0D7FA53EC102B4FF06C +:104810000040DFF8E813DFF79DF941EC100B00F0E2 +:10482000F5FA51EC100BE5F777FC0746B8F1000FED +:1048300051D1CDF7A0FE3D2803DB00F066F93046EC +:104840006EE0A868DFF75EF941EC110BB0EE418A2B +:10485000F0EE618A95ED010AB1EE400A10EE100A01 +:10486000DFF750F941EC100BB0EE481AF0EE681A81 +:1048700000F070FB53EC102B4FF00040DFF880137A +:10488000DFF768F941EC100B00F0C0FA51EC100BA7 +:10489000E5F742FC060001D506F5B47606F12D00D9 +:1048A0005A2190FBF1F8B8F1040F00D1D0463846F8 +:1048B00000F03BF8002806D03A463146404600F06A +:1048C00039F8002802D100F020F904E0A87840452A +:1048D00001D085F80280A878484502D1B9F1FF0FD0 +:1048E0001DD195F8201011F0060F01D0012604E02B +:1048F0003A46314600F066F806463846CDF73BFEAC +:104900003D280CDA002E0AD0A8786978814206D0BA +:10491000687020704FF0010AFF2800D028705046C0 +:1049200006B0BDEC068BBDE8F0873C3079288041AD +:10493000C00F704718B4AF4C237894F8204014F09F +:10494000060F01D018BC3DE02FD4984208D05A1C65 +:10495000541002EB9474A410A2EB840290420ED186 +:104960005A224243283A002807D1B1F59D7F06DD3F +:1049700002F5B472914202DA15E0914213DB9842DB +:1049800008D0DA1C531002EB93739B10A2EB830246 +:1049900090420AD15A2242432832002801D12E29BE +:1049A00003DA8A4201DA002000E0012012BC7047DD +:1049B000DD0CFB40A7493C416766E63F3E1B3041AA +:1049C000D7B409412DE9F04F95B004460D4616467F +:1049D000884F97F8008010A80FF228211422DEF7E4 +:1049E000C5FA4FF0000B0DF14009D9F804A030468C +:1049F000CDF7C1FD1099884204DB3046CDF7BBFDF1 +:104A000050452ADBD9F808B03046CDF7B4FD504503 +:104A100007DB3046CDF7AFFD584502DA4FF0010B0A +:104A20001BE0D9F80C903046CDF7A5FD584507DBC3 +:104A30003046CDF7A0FD484502DA4FF0020B0CE0FE +:104A40003046CDF798FD48450CDB3046CDF793FD59 +:104A50001499814206DB4FF0030BB8F1000F47D4E5 +:104A6000002C01D5002044E0444509D008F10100A4 +:104A7000411000EB91718910A0EB8100844218D1A4 +:104A800000A80FF294114022DEF770FA4FEA0B10E3 +:104A9000002C00A908D141588D420ADA00A940181B +:104AA0004068A84205DA2CE0401850F824008542FE +:104AB00027DB444509D008F10300411000EB917158 +:104AC0008910A0EB8100844212D100A80FF2881156 +:104AD0004022DEF74BFA4FEA0B10002C00A90BD155 +:104AE0004158A94204DA00A94018C068854208DB91 +:104AF000012015B0BDE8F08F401850F82400A842FE +:104B0000F6DAFF20B8700020F3E73A48FF21817001 +:104B100070470388934201D30023038003885B1C02 +:104B200003809BB2934201D300220280028800EBF3 +:104B30008200096841600120704700002DE9F043C0 +:104B40002DED028B81B004460D4616461F469FEDA3 +:104B5000288A4FF00008B4F9009000EE105AF8EEE1 +:104B6000C08A3A4600F028F880EE280A86ED000A4E +:104B700005E0A7F101090FFA89F908F101080FFA18 +:104B800088F8A84511DA04EB890090ED010AD6ED0A +:104B9000000A30EE600A00EE008AB9F1010FE8DB8E +:104BA000A9F101090FFA89F9E7E788EE280A01B0AF +:104BB000BDEC028BBDE8F08330B49FED0D0A0023FD +:104BC000B0F900400EE024B2002C06D400EB8405BE +:104BD000D5ED010A30EE200A641E24B2002C00D567 +:104BE000541E5B1C1BB28B42EDDB30BC70470000D7 +:104BF000000000002CF8002000001040DCA54C4014 +:104C0000DCA54CC0000000001E00000028000000D1 +:104C1000320000003C0000004A0100003C0000009F +:104C200096000000F00000004F010000410000006D +:104C30009B000000F5000000540100004600000049 +:104C4000A0000000FA0000005E010000500000001B +:104C5000AA000000040100001E000000780000000F +:104C6000D20000002C0100001900000073000000B9 +:104C7000CD00000027010000140000006E000000BD +:104C8000C8000000220100000A00000064000000CB +:104C9000BE00000018010000D0B52DED048B82B0DD +:104CA00041EC180B8DED008BDDE90023C3F30A51B5 +:104CB00040F2FF74A14213D0002904BF190350EA47 +:104CC000113011D051EC180B00220023E5F750FAF7 +:104CD0003DBF81F0004141EC180B0824002407E09F +:104CE000190350EA1130EDD002B051EC180B60E01E +:104CF00051EC180B274A284BE5F73AFA1CD29FEDE6 +:104D0000239B51EC190B53EC182BF3F73BFA064697 +:104D10000F4653EC182B51EC190BE5F79FFB32466D +:104D20003B46DEF717FFCDF7B9FA41EC100B51EC1B +:104D3000180B53EC102B1EE00122184BE5F718FA64 +:104D40002ED29FED129B51EC190B53EC182BF3F75D +:104D500019FA06460F4653EC182B51EC190BE5F7E0 +:104D60007DFB32463B46DEF7F5FECDF797FA84F041 +:104D7000020453EC182BF3F74DF802B02246BDECB9 +:104D8000048BBDE8D04000F0EFB800BF0000000089 +:104D90000000F03FCE3B7F669EA0E63F0000F03F64 +:104DA000FDF70EFE212102B001604FF0FF306FF0E1 +:104DB0000041BDEC048BD0BD80B551EC100BFFF76A +:104DC0006BFF41EC100B01BD83B5012100A8FEF77C +:104DD0000DFB401E012811D9002100A8FEF706FB9B +:104DE00060B10198DDE90023002847BF0020054994 +:104DF00000200549E5F732FBCDE90001DDE90001BE +:104E000003B000BD0000F0BF0000F03F80B551ECE2 +:104E1000100BFFF7D9FF41EC100B01BD38B50FB4F3 +:104E200082B040F2FF759DED040B8DED000BDDE9C6 +:104E30000001C3F30A51A9420BD011B14FF0FF3466 +:104E40000DE0190350EA11300CBF00246FF001048B +:104E500005E0190350EA113014BF022401249DED2E +:104E6000020B8DED000BDDE90001DDE90023C3F34A +:104E70000A51A94215D069B14FF0FF30012C18DA60 +:104E8000002B1CD5DDE9020181F00041CDE90201D2 +:104E9000082515E0190350EA1130EFD06FF001003A +:104EA000ECE7190350EA113018BFDDE9020147D1E0 +:104EB0000120022C29D1DDE9040107B030BD002515 +:104EC0000598002807D5DDE9040181F00041CDE90E +:104ED000040185F00605DDE90401DDE90223E5F7BB +:104EE00047F904D2F2F796FF41EC100B1EE0002CBC +:104EF00008D5DDE90201DDE90423F2F78BFF41EC7F +:104F0000100B15E09FED0F0B12E084420CBF9FEDDC +:104F10000F0B9FED0C0B002B4CBF082500250599AE +:104F2000002948BF85F00605012801D185F002055A +:104F30002A4607B0BDE8304051EC100B00F014B821 +:104F400007B030BD000000000000000000000000BD +:104F50000000F03F80B553EC112B51EC100BFFF724 +:104F60005DFF41EC100B01BDD0B514462DED048B57 +:104F7000534A544BE5F7E6FA41EC180B1DD89FED68 +:104F8000529B53EC182B51EC190BDEF7E3FD00227A +:104F90004F4BE5F763FA06460F4653EC182B51ECDE +:104FA000190BE5F75BFA02460B4630463946F2F735 +:104FB00031FF41EC180B44F0010451EC180B0022B6 +:104FC000444BE5F7D5F805D301224FF07953E5F7C7 +:104FD000B9FA51D853EC182BDEF7BCFD41EC190B94 +:104FE00053EC182BDEF7B6FD06460F4653EC192B93 +:104FF00039483A49DEF7AEFD394A3A4BE5F72EFA21 +:1050000053EC192BDEF7A6FD374A384BE5F726FAA5 +:1050100032463B46DEF79EFD53EC182BE5F71EFAB1 +:1050200006460F4653EC192B31483249DEF792FD04 +:10503000314A324BE5F712FA53EC192BDEF78AFDB1 +:105040002F4A304BE5F70AFA53EC192BDEF782FDB5 +:105050002D4A2E4BE5F702FA53EC192BDEF77AFDB9 +:105060002B4B0022E5F7FAF902460B46304639464B +:10507000F2F7D0FE41EC180BA00705D551EC180B48 +:1050800081F0004141EC180B14F007020BD00FF235 +:10509000880303EBC20251EC180B53681268E5F762 +:1050A000DDF941EC180B200705D551EC180B81F008 +:1050B000004141EC180B51EC180BBDEC048BD0BD3A +:1050C00057CD9E5E1426D13FAA4C58E87AB6FB3FD6 +:1050D0000000F0BF000040BE845D57134B57B03F47 +:1050E000B2934C19ED5EE43FBEDE02B90240F83FD8 +:1050F000DE39028FC7C0743F8AAB1283000CC83FF1 +:1051000024D7E508B6D8F03F0F34580E5895FD3F28 +:105110000000F03F00000000000000000000000060 +:1051200066732D3852C1E03F182D4454FB21F93FDE +:1051300066732D3852C1F03F182D4454FB21F93FBE +:1051400066732D3852C10040182D4454FB2109408C +:105150003FD038C6A6F104402DE9F0412DED048B77 +:105160008CB006460F46904600A80FF2BC51302284 +:10517000DDF7FCFEDFF860450A2020620720606250 +:10518000A0620520E062DFF85405DFF85415CDE990 +:10519000000100A84FF03332DFF84835C0E90223A0 +:1051A000DFF83825DFF84035C0E904234FF033320B +:1051B000DFF83835C0E90623DFF83435C0E90823C5 +:1051C000DFF83035C0E90A23DFF82C550A212965BC +:1051D0003168142291FBF2F1E965D8F80010022938 +:1051E00001D1052123E03968102918D0B1F5807F5D +:1051F00006D0B1F5806F08D0B1F5006F0AD012E08B +:105200004FF480712163002111E04FF4806121632C +:1052100002210CE04FF400612163032107E010211B +:105220002163042103E04FF400712163012100EBAD +:10523000C100D0E90023DFF8C404DFF8C414DEF7AE +:1052400089FC41EC180B53EC182B0020DFF8B41448 +:10525000DEF780FC41EC100B85ED0A0B85ED080BA9 +:1052600053EC102BDFF8A004DFF8A014DEF772FC7B +:10527000C5E90C01202200212046DCF70BF99FED47 +:10528000319B206AE4F730FF53EC192BDEF762FC08 +:1052900053EC182BDEF75EFCC4E90001606AE4F70A +:1052A00023FF53EC192BDEF755FC53EC182BDEF7DC +:1052B00051FCC4E90201A06AE4F716FF53EC192B74 +:1052C000DEF748FC53EC182BDEF744FCC4E904017C +:1052D000E06AE4F709FF53EC192BDEF73BFC53ECD3 +:1052E000182BDEF737FCC4E906010020A865012071 +:1052F0006866A86604F13400286600202870686596 +:105300000146C5E90E019FED110B85ED100B85EDF2 +:10531000120B0CB0BDEC048BBDE8F081DFF8D803B4 +:105320000121416681669FED090B80ED100B80ED38 +:10533000120B0021017041650A460B46C0E90E239D +:1053400070470000000000000000E03F2D431CEB10 +:10535000E2361A3F2DE9F04F2DED068B8BB0054656 +:105360004FF000089FEDDA9BB0EE498AF0EE698AB3 +:1053700004A81821DBF7F0FAC1468DED010AF1EE21 +:10538000601ACDED021AB1EE410A8DED030ADA4C36 +:105390001E2201A9206EF3F78EFA2868022802D196 +:1053A0000220009001E003200090206E616E002931 +:1053B0000CD0002800F085810088216D8842C0F261 +:1053C00080814046606684ED0E9B7AE1A16E0029E3 +:1053D00039D01E22216D09B2F3F796FA94ED149A92 +:1053E000F8EEC90A80EE200A10EE100ADEF78AFBFA +:1053F000C4E902011E2219EE101A09B2206EF3F759 +:10540000A1FA94ED149AF8EEC90A80EE200A10EE83 +:10541000100ADEF777FBC4E904011E2219EE101A08 +:1054200009B2206EF3F7ACFAD4ED140AF8EEE00AF4 +:1054300080EE200A10EE100ADEF764FBC4E90601D4 +:105440004046A06645E01E224146F3F74DFA054668 +:105450001E22216D09B2206EF3F746FA064694ED3E +:10546000140AB8EEC09A95ED000AD6ED000A30EEA7 +:10547000600A80EE090A10EE100ADEF743FBD4E959 +:105480000223E4F7EBFFC4E9020195ED010AD6ED32 +:10549000010A30EE600A80EE090A10EE100ADEF70B +:1054A00031FBD4E90423E4F7D9FFC4E9040195ED05 +:1054B000020AD6ED020A30EE600A80EE090A10EE0A +:1054C000100ADEF71FFBD4E90623E4F7C7FFC4E99F +:1054D00006011822414604A8DBF7DCFF454604AE6E +:1054E00040E01E22294609B2206EF3F7FDF9074677 +:1054F0003868DEF707FBD4E90223F2F743FE41ECFC +:10550000100B53EC102BDEF725FBDDE90423E4F749 +:10551000A5FFCDE904017868DEF7F4FAD4E90423A5 +:10552000F2F730FE41EC100B53EC102BDEF712FBC0 +:10553000D6E90223E4F792FFC6E90201B868DEF774 +:10554000E1FAD4E90623F2F71DFE41EC100B53EC0F +:10555000102BDEF7FFFAD6E90423E4F77FFFC6E954 +:1055600004016D1C206D8542BBDBE4F7BDFD41EC01 +:10557000190BDDE9040153EC192BF2F74BFCCDE9D3 +:105580000401D6E9020153EC192BF2F743FC41EC7C +:105590001A0B86ED02ABD6E9040153EC192BF2F796 +:1055A00039FC41EC190B86ED049BDDE9040153EC59 +:1055B0001A2BE4F753FF564A564BE4F7D9FD07D2AE +:1055C00094ED100B8DED040B94ED120B86ED020B98 +:1055D0009DED040B84ED100B96ED02AB84ED12AB48 +:1055E000D4E90E014FF066324B4BDEF7B3FA824638 +:1055F0008B46DDE9042351EC1A0BE4F72FFF02463A +:105600000B4651EC190BF2F705FC344A434BDEF71D +:10561000A1FA02460B4650465946E4F71FFF41ECFB +:10562000100B84ED0E0B01223D4BE4F78BFF06D8E7 +:1056300090462078012802D1606D401C60654D467F +:105640000FE006EBC50090ED009B51EC180B53ECFE +:10565000192BE4F78DFD03D2B0EE498AF0EE698A8A +:105660006D1C00988542ECDBD4E9080153EC182B43 +:10567000E4F768FF02D9606D10280FDBE06DA16DC3 +:10568000884204DA4846207060654FF00109002026 +:10569000A06594ED0A0B84ED080B12E0B8F1000F41 +:1056A0000FD1A06DE16D814209DA012121704946D7 +:1056B00061654FF0020994ED0C0B84ED080B401C62 +:1056C000A06548460BB0BDEC068BBDE8F08F00BF6F +:1056D000000000000000000070AC00209A99999929 +:1056E0009999C93F3333D33F9999E93F3333F33F16 +:1056F000333303403333E33F10AF00201F85EB51BA +:10570000B89E2340000014407B14AE47E17A843FEA +:105710002E431CEBE2362A3F6666EE3F9999A93F7D +:1057200000003440000000009A9999999999C93F66 +:10573000333333333333E33F9A9999999999E93F56 +:10574000333333333333F33F333333333333034080 +:10575000333333333333E33F1EF0040F0CBFEFF327 +:105760000880EFF3098000F033B870471EF0040F93 +:105770000CBFEFF30880EFF3098000F029B8704701 +:105780001EF0040F0CBFEFF30880EFF3098000F068 +:105790001FB870471EF0040F0CBFEFF30880EFF343 +:1057A000098000F015B870471EF0040F0CBFEFF32E +:1057B0000880EFF3098000F00BB870471EF0040F6B +:1057C0000CBFEFF30880EFF3098000F001B87047D9 +:1057D000DDF7DFBD704786B04EE0BDF80500011D66 +:1057E00089B2DDF80D00CDF7B7FEDBF755F8DFF82D +:1057F000A044DFF8A054DFF8A0142846E2F7E2FE48 +:10580000002810D12046441E0028F4D1002128464B +:10581000E2F7C3FE0021DFF88404E2F7BEFE0FF2D8 +:10582000AC40DAF781FE022E01D1CAF748FDDDF85F +:105830000D00002804D0DAF7B5FD0020CDF80D00EA +:1058400049F64044DFF8585402212846E2F7F2FDB9 +:10585000002803D12046441E0028F5D142F21074DE +:1058600080212846E2F7E6FD012803D12046441EA8 +:105870000028F5D1DBF70DF801A9DFF82804CDF7F2 +:105880008FFE9DF8070010F00306A6D0022EA4D0CC +:1058900002D3032E59D0EFE7DFF804048089C04615 +:1058A00000A80021016002220DF10701DAF78CFD4A +:1058B00002220DF105010DF10200DAF785FD042148 +:1058C00000A8CDF749FEBDF80500001DDAF752FD2E +:1058D000CDF80D00BDF80500011D89B2DDF80D0001 +:1058E00000F008FADAF7D8FFDFF8A443DFF8AC538A +:1058F000DFF8B4132846E2F765FE002810D12046F1 +:10590000441E0028F4D10021DFF88803E2F745FEA9 +:1059100000212846E2F741FE0FF2B830DAF704FE24 +:10592000DAF7B7FF002CA7D001A9DFF8800300F059 +:1059300005FA002803D00FF2A430DDF7ACFFDFF842 +:1059400070130820DDF704FA96E7D5488089C04631 +:105950000921DFF8600300F0CDF9DAF7A3FFD64C98 +:105960000221D648E2F779FB002885D12046441E63 +:105970000028F5D10021C748E2F70FFE0021C748F3 +:10598000E2F70BFE0FF25C30DAF7CEFD74E7F8B504 +:10599000CB4C2078401C2070DBF765FD6078401C04 +:1059A0006070DCF70BFD6078401E6070C0B20028AC +:1059B00001D1DBF752FD0120E2F798FE01285DD10D +:1059C0000120E2F79FFE0025BE4E0121BE48E2F70E +:1059D00044FB002847D096F9000000284AD028460A +:1059E0003070AB4EAD4F0FE03046461E00280BD155 +:1059F0002946A848E2F7D1FD29463846E2F7CDFD11 +:105A00000FF2E820DAF790FD3846E2F7D7FD0028DC +:105A1000EAD10221A948E2F720FB002808D020782B +:105A2000012833D16068002830D0DBF712FD2DE06B +:105A3000A049C87810F003000AD0012810D1B1F8AD +:105A40000100002804D0974800F078F9054607E0E7 +:105A5000964800F073F9054695490820DDF778F976 +:105A6000DAF71DFF06E001203070311D8D4800F08F +:105A700065F90546002D01D0DDF71EFF20780128CD +:105A800004D16068002801D0DBF7E3FC2078401ED9 +:105A90002070F1BD10B58A4C2078401C2070DBF7D7 +:105AA000E2FC6078401C6070DCF788FC6078401E87 +:105AB0006070C0B2002801D1DBF7CFFC0220E2F712 +:105AC00015FE002802D00220E2F71CFE20780128F3 +:105AD00004D16068002801D0DBF7BBFC2078401EB1 +:105AE000207010BD10B5764C2078401C2070DBF77C +:105AF000BAFC6078401C6070DCF760FC6078401E87 +:105B00006070C0B2002801D1DBF7A7FC0420E2F7E7 +:105B1000EDFD00280BD00420E2F7F4FD0122002166 +:105B20000320DAF7C2FE62491020DDF711F9207870 +:105B3000012804D16068002801D0DBF78AFC2078B6 +:105B4000401E207010BD10B55D4C2078401C2070A8 +:105B5000DBF789FC6078401C6070DCF72FFC607814 +:105B6000401E6070C0B2002801D1DBF776FC4FF414 +:105B70000060E2F7BBFD002807D04FF40060E2F7B9 +:105B8000C1FD4B492020DDF7E3F82078012804D13E +:105B90006068002801D0DBF75CFC2078401E207094 +:105BA00010BD38B5464C2078401C2070DBF75BFCFC +:105BB0006078401C6070DCF701FC6078401E60700B +:105BC000C0B2002801D1DBF748FC4FF48040DDF77C +:105BD00077F800281DD0364DDEF772FC00280CD077 +:105BE0000020DEF776FCCBF763FE806EDAF778FCF8 +:105BF00029460620DDF7ACF803E029460220DDF750 +:105C0000A7F84FF48040DDF770F84FF48000E2F71A +:105C100079FD2078012804D16068002801D0DBF7E5 +:105C200018FC2078401E207031BD10B5244C20781F +:105C3000401C2070DBF717FC6078401C6070DCF7BC +:105C4000BDFB6078401E6070C0B2002801D1DBF758 +:105C500004FC4FF48050DDF733F800280BD01449D2 +:105C60004020DDF775F84FF48050DDF73EF84FF433 +:105C70000030E2F747FD2078012804D16068002851 +:105C800001D0DBF7E6FB2078401E207010BD00003D +:105C900080841E00886402400008002010640240D6 +:105CA000003001405C4800202000001044480020E3 +:105CB000BC45002018730020404B4C0000040240FB +:105CC000F024002060250020000002405478444D5C +:105CD000410000005278444D410000005075744D61 +:105CE00061696C00524541445900000045585449CF +:105CF0003000000038B50C460E4D2968C90706D59E +:105D000029684908490029602968C907FCD400228C +:105D100001462846E2F74CFC07492846E2F765FCB5 +:105D2000214628464160C04601212846BDE834404E +:105D3000E2F733BC1064024020000010F0B50E4FB3 +:105D40000546387881B00E46401C01243870DBF7D8 +:105D50008AFBA868E968884204D231462846E0F701 +:105D6000BFFF0024787808B9DBF777FBDBF728FC66 +:105D7000204601B0F0BD00BFF0240020CF49002232 +:105D8000CA630A6401F148024A6201F1C4028A62EC +:105D900001F5A072CA6201F5DE720A6301F50E72A6 +:105DA0004A6301F52D728A630B2802DA1E204864CB +:105DB0007047152802DA1920486470473D2802DA36 +:105DC000142048647047B52802DA0F2048647047F1 +:105DD0000A20486470470000F0B52DED068B83B0B3 +:105DE00004460026B54DE86B00286AD185ED000A0F +:105DF000C5ED010A85ED021AB0EE610A85ED030AD0 +:105E0000B0EE420A85ED050AB0EE620A85ED040A9D +:105E100030460290019000901E222946E86A00F068 +:105E2000DCF81E22291DA86A00F0D7F81E2205F111 +:105E30000801686A00F0D1F81E2205F10C01A86B78 +:105E400000F0CBF81E2205F11001686B00F0C5F8D8 +:105E50001E2205F11401286B00F0BFF8696C286C54 +:105E600081422ADA1E2300AA09B2E86A00F0CAF8C1 +:105E7000B0EE408A1E2301AA696C09B2A86A00F03C +:105E8000C1F8F0EE408A1E2302AA696C09B2686A62 +:105E900000F0B8F8DFED880AB4EE608AF1EE10FA8F +:105EA0000BD5F4EE608AF1EE10FA06D5B4EE600A76 +:105EB000F1EE10FA01D50120E863286C401C28643B +:105EC00086E0AE6B6F6C1E22394609B2304600F098 +:105ED000D7F8F0EE408A1E22394609B2304600F06B +:105EE000F5F8B0EE409A1E22394609B2304600F06D +:105EF00012F9B81E00EE900AB8EEE08A78EEC90AF0 +:105F000030EEC00AC0EE088AC5ED068A6E6B1E220E +:105F1000394609B2304600F0B3F8B0EE409A1E227E +:105F2000394609B2304600F0D1F8F0EE409A1E2210 +:105F3000394609B2304600F0EEF879EE690A30EEE3 +:105F4000C00A80EE089A85ED079A2E6B1E2239460C +:105F500009B2304600F094F8F0EE409A1E2239461D +:105F600009B2304600F0B2F8B0EE40AA1E2239461F +:105F700009B2304600F0CFF879EECA0A30EEC00A16 +:105F800080EE088A85ED088A9FED4DAB18EE900AE9 +:105F9000DDF7B8FD53EC1A2BF1F73CFFE4F7BCF842 +:105FA000208019EE100ADDF7ADFD53EC1A2BF1F746 +:105FB00031FFE4F7B1F8608018EE100ADDF7A2FDBA +:105FC00053EC1A2BF1F726FFE4F7A6F8A080012680 +:105FD000304603B0BDEC068BF0BD0388934201D37D +:105FE0000023038003885B1C03809BB2934201D390 +:105FF00000220280028800EB8200096841600120D3 +:10600000704700002DE9F0432DED028B81B004466E +:106010000D4616461F469FED2C8A4FF00008B4F936 +:10602000009000EE105AF8EEC08A3A4600F028F8C8 +:1060300080EE280A86ED000A05E0A7F101090FFAB3 +:1060400089F908F101080FFA88F8A84511DA04EB7C +:10605000890090ED010AD6ED000A30EE600A00EEEC +:10606000008AB9F1010FE8DBA9F101090FFA89F9FA +:10607000E7E788EE280A01B0BDEC028BBDE8F083AB +:1060800030B49FED110A0023B0F900400EE024B2B5 +:10609000002C06D400EB8405D5ED010A30EE200A71 +:1060A000641E24B2002C00D5541E5B1C1BB28B4214 +:1060B000EDDB30BC704700006F12033BECDF0020CB +:1060C00089AD84FA0A74313F000000002DE9F041E7 +:1060D00004460D46164694ED010A0027B4F90080E7 +:1060E00014E00FFA88F8B8F1000F07D404EB880029 +:1060F000D0ED010A00F03CF8A8F101080FFA88F889 +:10610000B8F1000F01D5A6F101087F1C3FB2AF42E4 +:10611000E7DBBDE8F0812DE9F04104460D46164667 +:1061200094ED010A0027B4F9008014E00FFA88F812 +:10613000B8F1000F07D404EB8800D0ED010A00F09D +:106140000FF8A8F101080FFA88F8B8F1000F01D58F +:10615000A6F101087F1C3FB2AF42E7DBBDE8F0814A +:10616000B4EE600AF1EE10FA01D4B0EE600A7047A6 +:10617000F4EE400AF1EE10FA01D4B0EE600A704776 +:106180000FB480B50FF23420DAF7CEF9834800213E +:1061900081700121C1700171002141718171017013 +:1061A000DAF747F90069000601D4012000E0012078 +:1061B00002BC5DF814FB80B50FF20820DAF7B4F9E1 +:1061C000DAF737F90069000616D5744800218170A6 +:1061D0000121C17001710021417181714178012952 +:1061E0000AD1002141700E220A210120D9F70AFFAD +:1061F000032801D1032002BD012002BD38B5684843 +:106200008169497AC069407A4518DAF712F900695C +:10621000000631D5614CA078002802D10120A07081 +:1062200032BD6078EDB2002D06D0012824D10120C6 +:10623000E070002060701FE0002811D1E078012894 +:1062400006D10E220A210120D9F7DCFE0020E070E1 +:106250000E220A210020D9F7D5FE0120607032BD40 +:1062600094F90000002802D0022803D004E000F0D6 +:1062700005F801E000F034F8012032BD38B5474C94 +:10628000E068B0F958502079012809D1512D07DA7A +:1062900000202071012000F07EF8002000F06EF850 +:1062A000B4F90820954217DBA079401CA07140B2D8 +:1062B000022813DB022020700020A07129460FF273 +:1062C0000C10DAF731F978202081012000F063F812 +:1062D000012000F053F801E00020A071012032BD40 +:1062E00038B52E4CE068B0F95850502D16DA607968 +:1062F000401C607140B2022812DB00202070012097 +:1063000000F049F8002000F039F8002060715022B8 +:1063100029460FF2C400DAF707F901E000206071A6 +:10632000012032BD10B50FF2BC00DAF7FDF81B4CAE +:10633000D9F766FE2061CBF7BBFAE0600020207041 +:1063400020691849C0F8401200F5107016494160E4 +:10635000164981600FF20D01C160154901610120EC +:1063600010BD0000014600200C4A126992F831224B +:10637000002A02D0002900D109E070470D49012808 +:1063800002D10120087070470020087070470A4849 +:1063900090F900007047084908707047FCAE002073 +:1063A0000000002081610308B7610308FD61030854 +:1063B000C502010892FE002091FE00205374617214 +:1063C0007400000053746F7000000000436C6F7322 +:1063D00065202564202564004F70656E20256420AB +:1063E00025640000496E69740000000010B582B099 +:1063F00000208DF80000904C04F1100314220D21B0 +:1064000004F50670CDF7ECF804F58A7314220D211B +:1064100004F50C70CDF7E4F8DEF750F8002848D00A +:10642000DAF707F8A060CBF747FADAF702FBA068C3 +:106430000178002903D0217841F0010121700A215F +:10644000DAF75BF8A068DAF732F8A068C1780029BB +:1064500003D0217841F0020121704179002903D055 +:10646000217841F0040121708179002903D021783D +:1064700041F00801217021780F2902D15521817541 +:1064800000E08175002201210846DAF70EFADCF7F8 +:106490004BF93221A068DAF786F9A068DAF748F9F3 +:1064A000DAF7F7F9DAF7FBF9CBF702FA0021C16660 +:1064B00016BD002016BD80B5FFF798FF5E49486005 +:1064C00001BD072000F0BAF8FBE784B0DDF76AFAF7 +:1064D000002801D0DDF701FADDF7D6F9002801D058 +:1064E000DDF7F0F93E20E2F7FFFD0646C9F7F3FEBF +:1064F000514C04F51275B0070FD56068C06EDAF71D +:10650000E3F9C9F745FE04F10C012846CAF742F940 +:1065100004F10C012846CAF78FF9F0060AD50020CD +:10652000DAF7C5F91020DAF72FFE04F10C0128463E +:10653000CAF782F9B0060CD504F10C012846CAF757 +:1065400039F90420DAF720FE04F10C012846CAF7D5 +:1065500073F9700703D56068806ECBF71EFE3007B5 +:1065600009D56078002806D000206070D9F761FF57 +:106570000521DAF718F904F10C012846CAF77EFB69 +:1065800030071FD4AEE7BDF80100001DD9F7F2FEB9 +:10659000CDF8090002220DF10301D9F715FF0222FF +:1065A0000DF10101DDF80900801CD9F70DFF04F1A0 +:1065B0000C02294600A8CAF73BFC00A904F50C70A0 +:1065C000D9F708FF00A904F5067000F041F800288B +:1065D00088D19DF8030010F00300D4D00128F1D138 +:1065E00004F10C02294600A8CAF796FDBDF8010087 +:1065F0000028E7D0DDF809009DF80310490718D5F9 +:106600000421ADF803100121ADF8011002220DF1B3 +:106610000301D9F7D9FE02220DF10101DDF80900CD +:10662000801CD9F7D1FE00A904F50C70D9F7D2FE71 +:10663000C8E7D9F7B7FEC5E72C46002010B50446D9 +:10664000D9F7F7FE072C01D1DAF7A9F8012010BD20 +:1066500030B581B004460D46DAF705FF0A48A16857 +:1066600029B9407808B9DAF7F8FE012009E0017885 +:10667000491C017029462046E0F754FBDAF7A0FFD9 +:10668000002001B030BD00BFF0240020854800216B +:106690000160416081607047F0B52DED0E8B81B0D7 +:1066A000B0EE408AF0EE608AB0EE419A0027B0EE7C +:1066B000680A10EE100ADDF725FA41EC1D0BB0EE6A +:1066C000480A10EE100ADDF71DFA41EC1E0B754E5C +:1066D00021F000413A46744BE3F74AFD18D251ECE1 +:1066E0001D0B21F00041E3F743FD11D2B0EE490A42 +:1066F00010EE100ADDF706FA21F000413A466A4B27 +:10670000E3F736FD04D2104630607060B060C5E03B +:106710009FED66AB9FED67BB9FED68CB3068DDF703 +:10672000F1F904460D4653EC1E2B51EC1C0BDDF722 +:1067300011FA53EC1B2BDDF70DFA53EC1A2BF1F782 +:1067400069FB22462B46E3F789FEDDF7D5FA09EE11 +:10675000900AC6ED009A7068DDF7D4F904460D463C +:1067600053EC1D2B51EC1C0BDDF7F4F953EC1B2BF8 +:10677000DDF7F0F953EC1A2BF1F74CFB22462B46D0 +:10678000E3F76CFEDDF7B8FA0DEE100A86ED01DADC +:10679000B068DDF7B7F904460D46B0EE490A10EED1 +:1067A000100ADDF7AFF953EC1C2BDDF7D3F953ECEE +:1067B0001B2BDDF7CFF953EC1A2BF1F72BFB2246FD +:1067C0002B46E3F74BFEDDF797FA09EE100A86ED4C +:1067D000029A19EE900ADDF795F921F0004141EC9B +:1067E0001B0B1DEE100ADDF78DF941EC180B21F0A3 +:1067F000004141EC1C0B19EE100ADDF783F941EC66 +:106800001A0B53EC1B2B51EC1C0BE3F727FE53EC3C +:106810001A2B23F00043E3F721FEDDF76DFA00EEBB +:10682000100ADFED280AB4EE600AF1EE10FA2EDB52 +:1068300051EC1A0B21F000410122234BE3F782FEB9 +:1068400025D8BBEE090AF4EE409AF1EE10FA0BD50A +:1068500051EC180B21F0004153EC1A2B23F00043AC +:10686000E3F786FC00D201279FED180AF4EE409A68 +:10687000F1EE10FA0BDB51EC180B21F0004153EC58 +:106880001A2B23F00043E3F773FC00D20227002FFA +:1068900003D0002030607060B060384601B0BDECBD +:1068A0000E8BF0BD08FE00200000E03F000000005D +:1068B00000408F400000000000004E40E6C1631A17 +:1068C000DCA54C4001004842000044400100C841A2 +:1068D0000FB400B595B00020019000900D22014644 +:1068E000D9F790FB022801D102204AE0754A012025 +:1068F0001060BDF85A0001909DF8590000900128E1 +:1069000003D14FF48070009015E0022803D14FF4BA +:10691000007000900FE0032803D14FF480600090D6 +:1069200009E0042803D14FF40060009003E005283B +:1069300001D11020009000A901A8FEF70DFCB420A1 +:106940008DF8350046208DF8360001208DF837008F +:1069500000208DF80800032003900DF111000DA90F +:106960002022DCF7F3FA0A208DF810000020ADF8A1 +:10697000320002A8D9F7F8FB002801D1022000E07C +:10698000012015B05DF814FB00B593B0B4208DF86C +:10699000010046208DF8020001208DF803008DF8DB +:1069A0002000032009900DF1290000A92022DCF726 +:1069B000CDFA0A208DF828000020ADF84A0008A87A +:1069C000D9F7D2FB002801D1032002E0FEF7A6FC94 +:1069D000012013B000BD30B595B000A8D9F778FB01 +:1069E0000BA8EDF78BF9374CBDF83A002071204623 +:1069F00000A991EC030AFEF7ADFC0546607A8542DA +:106A00000ED0022D05D1012000F03CF801202072AB +:106A100006E0012D04D1012000F034F8022020729C +:106A20006572012015B030BD80B5D9F7E9FA254966 +:106A3000C86000220A722449C0F8181200F50670D6 +:106A400022494160224981600FF20D01C1600FF2BD +:106A50003D010161012002BD1A48C06890F8090299 +:106A6000002801D10020704708E080B515480021BA +:106A70000172084600F006F8012002BD154890F9A1 +:106A800000007047134908707047000018B43022A6 +:106A90000B7812FB030301241C700B7812FB030319 +:106AA0005C700B7812FB03030D249C700B7812FBB7 +:106AB0000300044A127AC2700878401C087011BCA6 +:106AC000D3E70000A4FD0020D1680308896903080A +:106AD000D7690308A3FE00200FB410B5A0B09DF83D +:106AE00089005849087001208DF88B00AA208DF884 +:106AF00089003C208DF88A0000208DF800000320DA +:106B000001900DF1090022A92022DCF71FFA0A20CA +:106B10008DF8080000A8D9F727FB002805D10FF24F +:106B20006C10D9F701FD022014E00BA8E2F7AFFECC +:106B3000454C542200212046DAF7ACFC0021616567 +:106B4000A16554220BA9D9F73FFC0FF25410D9F7D5 +:106B5000EBFC012020B010BC5DF814FB80B50A21CD +:106B60000320DAF7F2F8032801D1032002BD0FF267 +:106B70003C10D9F7D9FC012002BD80B5D9F740FA05 +:106B8000304948603149C0F8001100F58070304943 +:106B900041600FF26D0181600FF20D01C1600FF2D3 +:106BA000B5010161012002BD10B594B0254C6068AB +:106BB00090F8F10000281BD02078002818D0012080 +:106BC00012901190204984B068465422DCF7CEF927 +:106BD0000FBCDDF7C1FE0146C9B22078814207DB58 +:106BE0000FF2D400D9F7A0FC00F005F8012000E076 +:106BF000002014B010BD134800210170012070471F +:106C000000B595B000A8E2F742FE0F48416D491C5F +:106C10004165012902D1009981650FE033290DD327 +:106C200000214165816D009A914207D1542200A94B +:106C3000D9F7CAFB0FF29400D9F776FC012015B002 +:106C400000BD000050FE002094EB0020D96A03082C +:106C50005D6B030810B50C463021227811FB02024F +:106C600001231370227811FB02025370227811FB6A +:106C7000020206239370227811FB02000121C170E9 +:106C8000FFF7B9FF2078401C207010BD50443A2017 +:106C90005065646F4F70656E4661696C2053530098 +:106CA00050443A20534320535441000050443A206A +:106CB00053432053544F000050443A2044696666C1 +:106CC000537465704F7665722025640050443A20F5 +:106CD0005343205245534554000000003C0A560AD5 +:106CE000700A8B0AA60AC10ADD0AF80A150B310BD5 +:106CF0004E0B6B0B880BA50BC30BE10B000C1E0C92 +:106D00003D0C5D0C7C0C9C0CBD0CDD0CFE0C1F0DB9 +:106D1000410D630D850DA80DCB0DEE0D120E360E37 +:106D20005A0E7F0EA40ECA0EEF0E160F3C0F630F05 +:106D30008B0FB30FDB0F03102C1056108010AA100E +:106D4000D41000112B1157118311B011DE110B1249 +:106D5000391268129712C712F712271359138A13A0 +:106D6000BC13EF13221455148914BE14F3142915FF +:106D70005F159515CD1504163D167616AF16E91656 +:106D800024175F179B17D817151852189118CF188A +:106D90000F194F199019D119131A561A9A1ADE1A87 +:106DA000221B681BAE1BF51B3D1C851CCE1C181D31 +:106DB000621DAD1DF91D461E941EE21E311F811F6E +:106DC000D11F23207520C8201C217121C7211D221D +:106DD0007422CD2226238023DA2336249324F1241F +:106DE0004F25AF250F267126D32636279B2700284F +:106DF0006728CE283629A0290B2A762AE32A512B88 +:106E0000C02B302CA12C132D862DFB2D712EE82E9E +:106E1000602FD92F5330CF304C31CA314A32CA3269 +:106E20004C33D0335434DA346235EA3574360037B3 +:106E30008D371B38AA383C39CE39623AF83A8F3B45 +:106E4000273CC13C5D3DFA3D983E383FDA3F7E40ED +:106E50002341CA4172421C43C84376442545D64566 +:106E600089463D47F447AC486649224ADF4A9F4B72 +:106E7000614C244DEA4DB14E7B4F46501451E351C5 +:106E8000B55289535E5436551156ED56CB57AC5812 +:106E90008F59745A5C5B465C325D215E125F0560FF +:106EA000FB60F361EE62EB63EB64ED65F266FA673B +:106EB0000469116A206B336C486D5F6E7A6F97704E +:106EC000B871DB7201742A7556768577B778EC79DC +:106ED000247B5F7C9D7DDF7E248000003D0A580A74 +:106EE000720A8D0AA80AC30ADF0AFB0A170B330BC2 +:106EF000500B6D0B8A0BA70BC50BE30B020C210C7F +:106F0000400C5F0C7F0C9F0CBF0CE00C010D220DA0 +:106F1000430D650D880DAA0DCD0DF10D140E380E23 +:106F20005D0E820EA70ECC0EF20E180F3F0F660FED +:106F30008D0FB50FDD0F06102F1059108210AD10F8 +:106F4000D71002112E115A118611B311E1110E1230 +:106F50003D126B129A12CA12FA122B135C138D1384 +:106F6000BF13F213251459148D14C114F6142C15E3 +:106F700062159915D015081640167916B316ED1638 +:106F8000281763179F17DB17181856189418D3186B +:106F9000131953199419D519181A5A1A9E1AE21A64 +:106FA000271B6C1BB31BF91B411C891CD21C1C1D0D +:106FB000671DB21DFE1D4B1E981EE71E361F861F45 +:106FC000D61F28207A20CD2021217621CC212222F3 +:106FD0007A22D2222B238523E0233C249924F624F1 +:106FE0005525B52515267726D9263C27A12706281D +:106FF0006D28D4283D29A629112A7D2AE92A572B54 +:10700000C62B362CA82C1A2D8D2D022E782EEF2E65 +:10701000672FE02F5B30D6305331D2315132D2322C +:107020005433D8335C34E2346A35F2357D36083770 +:1070300095372338B3384439D7396B3A003B973BFF +:10704000303CCA3C663D033EA23E423FE43F87409F +:107050002D41D3417C422643D24380442F45E04515 +:1070600093464847FE47B64871492D4AEB4AAA4B1A +:107070006C4C304DF54DBD4E864F52502051EF5166 +:10708000C15295536B5443551D56FA56D857B958AB +:107090009C59825A695B535C405D2F5E205F136090 +:1070A00009610162FC62FA63FA64FC6501670968C0 +:1070B0001369206A306B426C586D6F6E8A6FA870CE +:1070C000C871EB7212743B7567769677C878FD7954 +:1070D000367B717CB07DF17E36807F810FB480B5C8 +:1070E0001A2200210846D8F78DFF022801D102207C +:1070F0000EE01A2201210020D8F784FF022801D1D6 +:10710000022005E01A20D9F75FFCFEF737FE0120C8 +:1071100002BC5DF814FB80B51A2200210120D8F7CB +:1071200071FF022801D1022002BD1A220121084666 +:10713000D8F768FF022801D1022002BD012002BD5C +:10714000F0B52DED028B8BB04948846BA069E168E6 +:107150004518002600A8D8F7BBFF9FED468B039883 +:10716000DCF7D0FC53EC182BF0F754FEE2F7D4FF19 +:1071700028800498DCF7C6FC53EC182BF0F74AFE85 +:10718000E2F7CAFF68800598DCF7BCFC53EC182BCB +:10719000F0F740FEE2F7C0FFA8803B4F38780028A8 +:1071A00009D1381D03A9D1EC031A00A991EC030AF7 +:1071B000FEF712FE0646012E02D10120387006E0CD +:1071C0003878002803D10020B880F880388100206A +:1071D000E880288168810120A0770BB0BDEC028B8C +:1071E000F0BD80B5D8F70CFF244908602449C0F8E9 +:1071F000201400F2204023494160244981600FF2AD +:107200001101C1600FF235010161012002BD0000D2 +:107210001A48006890F81104002801D10020704736 +:1072200005E080B5002000F006F8012002BD1848F6 +:1072300090F90000704716490870704718B4302262 +:107240000B7812FB030301241C700B7812FB030361 +:107250005C700B7812FB03031A249C700B7812FBF2 +:1072600003000022C2700878401C087011BCD8E7E7 +:107270000000002089AD84FA0A74313F78FE0020B6 +:10728000DD70030817710308E4FD00204171030855 +:10729000A1FE00208168C26891420BD107E002681C +:1072A0001168891853685B18C36008320260C268AD +:1072B0009142F4D04A1C8260087870472DE9F04D65 +:1072C00088B000F10801039101684A08039B03EBB1 +:1072D000C202049200220592069200EB810101F1A4 +:1072E0000806406800F001010291400806EBC0006A +:1072F00001900024154601E0AC4205D10198864278 +:1073000002D108B0BDE8F08D00F077F8074617F01D +:10731000030803D100F071F800F103083811009060 +:107320000F2819D100F069F80F30009014E000F038 +:1073300064F88246AC420DD10198864208BFE4F75A +:10734000D5FD3468029800B14C44706805190836C0 +:10735000AC42F1D004F801ABB8F10108E7D10098D4 +:107360000028C9D000F049F88046B81000F00300AA +:10737000032804BF03A8FFF78DFF37462146AB461D +:1073800008EB002006E0801A083F79683A6801EBB4 +:10739000020B59463A688A1A8242F4D3404200EB03 +:1073A000010A4FF0000805E09DF81C0004F8010BED +:1073B00008F101080098801C80459DD0DA4507D16E +:1073C00057F804AB57F8040B00EB0A0BDA45F7D07B +:1073D0001AF8010B8DF81C00AC42E5D101988642E9 +:1073E00008BFE4F783FD3468029800B14C4470682C +:1073F00005190836AC42F1D0D6E703A84AE70000E9 +:1074000052480021017041608160704770B50446A8 +:1074100000254E4E307800282CD12068DCF772FB16 +:1074200021F000412A464A4BE2F7A2FE19D26068D9 +:10743000DCF768FB21F000412A46454BE2F798FE55 +:107440000FD2A068DCF75EFB21F000410122414B26 +:10745000E3F778F805D87068401C70602846B06083 +:1074600004E0B068401CB060284670607068052871 +:1074700062DB28E0032837D12068DCF743FB21F0EA +:1074800000412A46324BE2F773FE17D26068DCF700 +:1074900039FB21F000412A462D4BE2F769FE0DD25F +:1074A000A068DCF72FFB21F000410122294BE3F714 +:1074B00049F803D87068401C706001E0284670608D +:1074C0007068052840DB94ED020AB5EE400AF1EE43 +:1074D00010FA03DD01252846307002E00225284617 +:1074E0003070002070602FE0012801D002282BD1DD +:1074F0002068DCF707FB21F000410122144BE3F781 +:1075000021F813D96068DCF7FDFA21F0004101226F +:107510000F4BE3F717F809D9A068DCF7F3FA21F06D +:1075200000412A460B4BE2F723FE03D2B068401C11 +:10753000B06001E01046B060B068052804DB0325A8 +:10754000284630700020B060284670BD14FE002030 +:107550000000F83F000021400FB480B50FF2081082 +:10756000D8F7E2FF112209210020D8F74BFD0228AD +:1075700005D10FF20810D8F7D7FF022000E0012054 +:1075800002BC5DF814FB80B50FF2FC00D8F7CCFF0D +:10759000112209210120D8F735FD032805D10FF26A +:1075A000FC00D8F7C1FF032002BD012002BD01206D +:1075B0007047000010B5264CD8F722FD2060CAF7AE +:1075C00077F9606020682349C0F8B81200F52E7082 +:1075D00021494160214981600FF20D01C1600FF224 +:1075E00039010161012010BD1948006890F8A90215 +:1075F000002801D10020704705E080B5002000F090 +:1076000006F8012002BD174890F90000704715499F +:10761000087070470000000018B430220B7812FB8D +:10762000030301241C700B7812FB03035C700B78BE +:1076300012FB030311249C700B7812FB0300084A11 +:107640001278C2700878401C087011BCD5E70000A1 +:1076500030FE00205975030887750308AF750308CD +:1076600094FE002093FE00205374617274204368DE +:1076700065636B4C696768744C757800537461720C +:1076800074204661696C0000436865636B4C6967F0 +:1076900068744C75782053746F70000053746F7069 +:1076A000204661696C0000000FB480B50FF2101025 +:1076B000D8F73AFF0F2201210020D8F7A3FC0228B7 +:1076C00005D10FF20C10D8F72FFF022000E00120A7 +:1076D00002BC5DF814FB80B50FF20010D8F724FF50 +:1076E0000F2201210846D8F78DFC032805D10FF29F +:1076F000FC00D8F719FF032002BD012002BD80B5B0 +:10770000012000F031F8002000F027F8012002BD30 +:1077100080B5D8F775FC244908602449C0F8681280 +:1077200000F51A7022494160224981600FF20D0173 +:10773000C1600FF23D010161012002BD1A480068DD +:1077400090F85902002801D10020704708E080B568 +:10775000002000F009F8012002BD174908707047A9 +:10776000164890F9000070471449087070470000EF +:1077700018B430220B7812FB030301241C700B7821 +:1077800012FB03035C700B7812FB03030F249C7045 +:107790000B7812FB0300084A1278C2700878401C6C +:1077A000087011BCD3E7000068FE0020A97603082A +:1077B000D7760308FF76030899FE002098FE002084 +:1077C0005374617274204779726F2054656D700034 +:1077D0005374617274204661696C00004779726F5E +:1077E0002054656D702053746F70000053746F7077 +:1077F000204661696C0000004B4800210170416027 +:107800008160704770B506460024474D28780028EF +:107810002BD13068DCF776F921F000412246434B4A +:10782000E2F7A6FC18D27068DCF76CF921F0004191 +:1078300022463E4BE2F79CFC0ED296ED020ADFEDAB +:10784000390AB4EE600AF1EE10FA05DB6868401CF4 +:1078500068601046A86004E0A868401CA860104654 +:1078600068606868052853DB27E002282BD1306860 +:10787000DCF748F921F0004122462C4BE2F778FC76 +:1078800016D27068DCF73EF921F000412246274B02 +:10789000E2F76EFC0CD296ED020ADFED220AB4EE9E +:1078A000600AF1EE10FA03DB6868401C686001E0D2 +:1078B000104668606868052832DB0124204628707D +:1078C000104668602CE001282AD13068DCF71AF9EC +:1078D00021F000410122154BE2F734FE12D9706805 +:1078E000DCF710F921F000410122104BE2F72AFEEB +:1078F00008D996ED020AF2EE020AB4EE600AF1EE41 +:1079000010FA03D5A868401CA86001E02046A860D2 +:10791000A868052804DB0224204628700020A860FF +:10792000204670BD01001041B4FD00200000E03F82 +:107930000FB480B5102201210020D8F763FB022884 +:1079400001D1022002E0FEF7A1FE012002BC5DF899 +:1079500014FB80B5102201210846D8F753FB0328F9 +:1079600001D1032002BD012002BD30B58BB000A8BB +:10797000D8F7AEFB03A890EC030AFEF78DFE044691 +:10798000324D2878A0420FD0012C05D1012000F003 +:107990003DF80120687006E0022C04D1012000F0BF +:1079A00035F8022068702C7001200BB030BD80B516 +:1079B000D8F726FB2549486000224A702449C0F8C0 +:1079C000901200F5247023494160234981600FF231 +:1079D0001101C1600FF23D010161012002BD0000F3 +:1079E0001A48406890F88102002801D100207047B1 +:1079F00008E080B5154800214170084600F006F8FF +:107A0000012002BD154890F9000070471349087025 +:107A10007047000018B430220B7812FB03030124D6 +:107A20001C700B7812FB03035C700B7812FB0303D2 +:107A300010249C700B7812FB0300044A5278C27029 +:107A40000878401C087011BCD3E70000387400208F +:107A500031790308537903086B7903086A740020AD +:107A60000901002806D500F00F003D4A801800F8F3 +:107A7000041C70473B4A8154704710B5B0F1807FB9 +:107A800001D3012010BD384C0002000A401E606086 +:107A90000F214FF0FF30FFF7E3FF0020A060072029 +:107AA0002060002010BD10B5304C2078401C2070A4 +:107AB00000F06AF82078012804D16068002801D01D +:107AC000D9F7C7FC2078401E207010BD10B5D9F73B +:107AD000CAFC264C6078401C607000F091F8244885 +:107AE00000684FF47A71B0FBF1F0FFF7C6FF002891 +:107AF00000D0FEE71F48204901600E214FF0FF3003 +:107B0000FFF7AEFF6078401E6070C0B2002803D15E +:107B1000BDE81040D9F7A1BC10BD0000174C4FF4D0 +:107B200000512046E0F7A2FA30BF4FF40051204642 +:107B3000E0F79AFAF3E700001EF0040F0CBFEFF332 +:107B40000880EFF3098000F01DB80D480168002996 +:107B500005D5016841F00041016000F0B1B8FEE7D1 +:107B600018ED00E000E400E010E000E0F024002068 +:107B70008425002008ED00E000000008001002400D +:107B80002CED00E0DBF705BC10B50948016A491C83 +:107B90000162426A891A5CBF01218171054804684B +:107BA00024B1606880472468002CFAD110BD00BF62 +:107BB000F02400206074002080B54FF44070E0F79E +:107BC000A9FD3348016841F4700101603148016842 +:107BD00041F0010101600021816001682E4A1140DD +:107BE00001602E494160016821F48021016000217B +:107BF000C16000F02CF82A484FF00061016001BD1F +:107C00002848416801F00C01274A082913D101686E +:107C1000036803F03F03B2FBF3F20168C1F388117C +:107C200051430268C2F30142521C5200B1FBF2F10F +:107C30001E4A116101E01D490A611C494068C0F3F8 +:107C40000310405C0A6922FA00F008617047154889 +:107C5000C16B41F08051C16341684160416841603E +:107C6000416841600821016011494FF4C0620A6017 +:107C7000416821F4000141600E480F4901600F483E +:107C8000016821F4404141F48041016070470000E7 +:107C900088ED00E000380240FFFFF6FE10300024BF +:107CA00008ED00E0043802400024F40074250020B0 +:107CB000003C0240843802404031004000700040E7 +:107CC000019810F0040006BFEFF308800830EFF3CE +:107CD0000980816901F10201816170470FB480B5AB +:107CE000072200210846D8F78DF9022801D1022089 +:107CF00004E09DF80800FCF777FC012002BC5DF869 +:107D000014FB80B5072200210120D8F77BF9032856 +:107D100001D1032002BD012002BD10B582B00020B8 +:107D20008DF80000314C00A96068FCF779FC002850 +:107D300006D0012000F03BF89DF800002070607034 +:107D4000012016BD10B5294CD8F75AF9A060C9F723 +:107D5000AFFD606000202070A0682549C0F82811A0 +:107D600000F5947023494160234981600FF20D01B1 +:107D7000C1600FF241010161012010BD01460020E8 +:107D80001A4A926892F81921002A02D0002900D1DB +:107D900009E0704780B5154800210170084600F0E1 +:107DA00006F8012002BD154890F9000070471349FC +:107DB0000870704718B430220B7812FB03030124BB +:107DC0001C700B7812FB03035C700B7812FB03032F +:107DD00007249C700B7812FB0300044A1278C270CF +:107DE0000878401C087011BCD4E700000074002023 +:107DF000DD7C0308037D03081B7D030869740020F4 +:107E00000FB480B5152200210846D8F7FBF80228E8 +:107E100001D1022002E0FFF7EFFC012002BC5DF877 +:107E200014FB80B5152200210120D8F7EBF80328B8 +:107E300001D1032002BD012002BD10B531484068C8 +:107E4000FFF7E0FC044664B2002C05D0012000F0EE +:107E500037F8204600F037F8012010BD10B5294C46 +:107E6000D8F7CEF8A060C9F723FD6060002020702D +:107E7000A0682549C0F8581300F5567023494160A1 +:107E8000234981600FF20D01C1600FF241010161D0 +:107E9000012010BD1B48806890F84903002801D1DB +:107EA0000020704708E080B51648002101700846A0 +:107EB00000F006F8012002BD164890F90000704756 +:107EC0001449087070470F490870704718B4302281 +:107ED0000B7812FB030301241C700B7812FB0303C5 +:107EE0005C700B7812FB030315249C700B7812FB5B +:107EF0000300044A1278C2700878401C087011BC54 +:107F0000D1E70000D8FD0020017E0308237E03088E +:107F10003B7E030896FE00200FB480B51722002197 +:107F20000846D8F76FF8022801D1022002E0FFF7D7 +:107F300067FA012002BC5DF814FB80B5172200210E +:107F40000120D8F75FF8032801D1032002BD0120EA +:107F500002BD10B531484068FFF758FA044664B2D4 +:107F6000002C05D0012000F037F8204600F037F84B +:107F7000012010BD10B5294CD8F742F8A060C9F710 +:107F800097FC606000202070A0682549C0F8A81305 +:107F900000F56A7023494160234981600FF20D01A9 +:107FA000C1600FF241010161012010BD1B488068D2 +:107FB00090F89903002801D10020704708E080B5AF +:107FC000164800210170084600F006F8012002BDA5 +:107FD000164890F9000070471449087070470F491F +:107FE0000870704718B430220B7812FB0303012489 +:107FF0001C700B7812FB03035C700B7812FB0303FD +:1080000017249C700B7812FB0300044A1278C2708C +:108010000878401C087011BCD1E70000FCFD00206E +:10802000197F03083B7F0308537F0308A2FE00204B +:108030004BDF3CE02BE119E205E3F0E3D9E4C0E5D6 +:10804000A5E687E768E846E921EAF9EACFEBA1EC83 +:1080500070ED3BEE03EFC6EF86F041F1F8F1AAF2C6 +:1080600057F300F4A3F441F5DAF56DF6FBF684F767 +:1080700006F884F8FBF86EF9DAF942FAA4FA00FB84 +:1080800058FBABFBF9FB42FC87FCC8FC04FD3DFD43 +:1080900072FDA3FDD1FDFCFD23FE48FE6AFE8AFEB3 +:1080A000A8FEC3FEDCFEF3FE09FF1CFF2FFF40FF0E +:1080B00063019701D20116026302BC0220039303FD +:1080C0001604AA0453051206EA06DE07F108260A7A +:1080D000800B020DB00E8D109B12DD145417011A87 +:1080E000E51CFD1F4823C126642A2A2E0C320136C6 +:1080F000FF39FD3DF241D4459A493D4DB7500154F9 +:108100001A57FD59AA5C215F636171634E65FC6675 +:108110007F68D9690D6B206C146DEC6DAB6E546F7C +:10812000E86F6B70DE7042719B71E8712C72677240 +:1081300010B582B0D9F7C4FAFFF7C8FCFEF7BBF957 +:108140001A4C4FF4806000902346194A642104F5CC +:1081500000501C3000F036F84FF4A050009004F5A9 +:108160008063144A4B2104F5005000F02BF84FF4C3 +:108170008060009004F5C0530F4A322104F500508E +:10818000383000F01FF84FF48060009004F5E053A1 +:108190000A4A0A2104F50050543000F013F8084848 +:1081A00001210170D9F737F9002016BDBC25002048 +:1081B000D7570308CB640308E1310108C3640308FF +:1081C0006E740020F0B482B00025069C00262F4675 +:1081D000AC46A0E8E010E0C01C380C4D4174017CB6 +:1081E0002D7802B029430174E118C908C90041F88B +:1081F000506D4FF080734B64054B0B64CA646FF095 +:1082000002024A624160F0BCD9F725BA6F740020BF +:108210000B14010843F63001C4F202014FF09F0233 +:108220000A6040F20000C4F202004FF6FF73CAF683 +:10823000FF3303604FF6BF63CFF6FF7300F5806036 +:1082400003604FF6FF73CFF6FF7300F580600360A5 +:1082500000F58060036000F58060036040F20F036A +:10826000C0F2000341F60040C4F2020003604FF088 +:1082700000020A600148804701480047B97B0308B3 +:1082800021850308000100FF0000000001FF00003D +:1082900000FF0000000100FF0001000000000101DC +:1082A000000000010000000100FF00FF00000000CE +:1082B000FF01000000FF000000FF000100010000BE +:1082C0000000FFFF00000001000000FF80B5D7F7AD +:1082D00097FE064981630649C16306490164064960 +:1082E000416406498164012002BD0000B502010815 +:1082F000B1020108BD020108C1020108C50201085E +:1083000010B5074979441831064C7C44163404E012 +:10831000081D0A68511888470146A142F8D110BDCE +:10832000BC0000000801000047D9010871D901080C +:108330009DDA010851DB010800000000A5DB0108FF +:1083400000000000A5DF01080000000047D9010877 +:108350004DDE0108EFDE0108000000000000000013 +:10836000000000000000000000000000000000000D +:10837000F1F9010811FB010847FB010867FB01083F +:108380000000000055FE01080000000001FF010888 +:108390006BFB0108F1F9010811FB010847FB01081B +:1083A00067FB010800000000EBFD01080000000071 +:1083B00001FF01086BFB010839E001085BE00108DF +:1083C0003FE10108CDE101080000000021E20108C1 +:1083D0000000000057EB010881EB01088385FDFFD9 +:1083E000B44E0000BC250020044F0000A4AF0020C4 +:1083F00000000000C9EEFFFF0200000002000000C4 +:10840000F8B1FCFFA803000000000020BA2500001E +:10841000ADEEFFFF020000000200000084B5FCFF8B +:108420005B00000070AC0020340300005B494E5636 +:108430004E5D616363655F736869667428256429AE +:108440003A20256420256420256400004EF68851DA +:10845000CEF20001086840F4700008604FF0007030 +:10846000E1EE100A704700000A5B494E564E5D412E +:108470004343454C5F4D474D5432203A202564001C +:108480000120C046002801D0FFF73AFF0020FFF787 +:108490004FFE00F000F800F001B800000746384633 +:1084A000C9F774FFFBE7000010000000080000009F +:1084B00004000000020000000100000041522D25D0 +:1084C000642C25642C25642C25640000474D2D491F +:1084D0004F46202564000000474D2D43462025646B +:1084E00000000000474D2D52463120256400000059 +:1084F000474D2D52463220256400000052030000F3 +:10850000EE020000EE02000000000000000000008B +:108510000000000047797243616C3D256400000053 +:10852000C046C046FFF792FFFFF7AAFF4148532D10 +:10853000453200004148532D453300004148532D3A +:10854000453400004148532D453100005354302D2F +:108550003200000041522D534C50000041522D5327 +:108560005442000041432D52463100004149532DF1 +:10857000534C5000474D2D5246310000474D2D5071 +:1085800046310000474D2D5046320000474D2D4FDB +:1085900000000000474D2D534B495000890E830FBA +:1085A0007D10771147522D534C50000047522D53E8 +:1085B0005442000047522D52463100004748532D87 +:1085C000453200004748532D453300004748532D9E +:1085D000453400004748532D453500004748532D8A +:1085E000453600004748532D453700004748532D76 +:1085F000453800007F7F7F00000000000000000081 +:10860000FDF7AAB8FFF798BAFDF7B0B8FDF7B8B80C +:10861000FDF7C0B8FDF7C8B8FDF7D0B8D8F7C8BEA9 +:10862000FFF741BAFFF7FEBFFFF7FEBFFFF7FEBF40 +:10863000FDF7B7BAFFF7FEBFFFF7FEBFFDF7A7B91B +:10864000FDF728BAFDF74EBAFFF7FEBFFFF7FEBFF2 +:10865000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF4E +:10866000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF3E +:10867000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF2E +:10868000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF1E +:10869000FFF7FEBFFFF7FEBFE0F773BCFFF7FEBFBB +:1086A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFFE +:1086B000FDF790B8FFF7FEBFFFF7FEBFFFF7FEBF65 +:1086C000FFF7FEBFFDF73FBAFDF7AFBAFFF7FEBFFA +:1086D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFCE +:1086E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFBE +:1086F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFAE +:10870000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF9D +:10871000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF8D +:10872000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF7D +:10873000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF6D +:10874000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF5D +:10875000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF4D +:0C876000FFF7FEBFFFF7FEBFFFF7FEBFF4 +:00000001FF diff --git a/firmware/ssp_stm32f_jsglte.fw.ihex b/firmware/ssp_stm32f_jsglte.fw.ihex new file mode 100644 index 000000000000..79800d974b83 --- /dev/null +++ b/firmware/ssp_stm32f_jsglte.fw.ihex @@ -0,0 +1,14403 @@ +:1000000018920020C57E030851510308E9770308C0 +:1000100065510308795103088D5103080000000061 +:10002000000000000000000000000000A1510308D3 +:10003000B551030800000000693B01085777030829 +:10004000A5820308A9820308AD8203089D55030811 +:10005000B5820308B9820308895303088F54030843 +:10006000DF540308C9820308CD820308D182030844 +:10007000D5820308D9820308DD820308E1820308E0 +:10008000E5820308E9820308ED820308F182030890 +:10009000F5820308F9820308FD820308018303083F +:1000A00005830308098303080D83030811830308EC +:1000B00015830308EBB301081D830308218303089C +:1000C00025830308298303082D830308CD510308E2 +:1000D00035830308398303083D83030841830308FC +:1000E00041550308255603084D830308518303082F +:1000F00055830308598303085D830308618303085C +:1001000065830308698303086D830308718303080B +:1001100075830308798303087D83030881830308BB +:1001200085830308898303088D830308918303086B +:1001300095830308998303089D830308A18303081B +:10014000A5830308A9830308AD830308B1830308CB +:10015000B5830308B9830308BD830308C18303087B +:10016000C5830308C9830308CD830308D18303082B +:10017000D5830308D9830308DD830308E1830308DB +:10018000E5830308E98303082DE9F0430446079D4E +:10019000A78AADB29FB3052FA6BF381F1FFA80FCF8 +:1001A0004FF0000C781EA66880B206EBC006B6F8C9 +:1001B00000E05FEADE381BD04FEA8E584FEA9858CD +:1001C000884504BFCEF3C12EAE4511D1B6F806E086 +:1001D000B4F82280C64504BFB6F802E0964507D1C0 +:1001E00033B19988B288914288BF1146B18061E0ED +:1001F0008646AEF101001FFA8EFEE645D7D1D4F84F +:1002000008E0B4F816C00EEBC706384601E0083621 +:10021000401C80B2604504DAB6F800905FEAD93934 +:10022000F5D1604511D17646002001E00836401C2A +:1002300080B2B84204DAB6F800E05FEADE3EF5D1FB +:10024000B84208BF4FF6FF7035D0378807F41C4717 +:10025000890557EA915141F4004131806BB11F7813 +:10026000FF0744BF41F4804131801988C1F3800108 +:1002700019B1318841F400513180318865F3CC21C6 +:10028000318072801BB9E18DB180002109E02DB170 +:10029000E18DB1801988890A491C02E09988B180F2 +:1002A000618CF180411CA18289B2228B8A4238BFC5 +:1002B0000A46228380B2BDE8F0838168008B012862 +:1002C00006DB0A885204520C21F8082B401EF8D194 +:1002D00070472DE9F041031D99685A689F8ADD8FA8 +:1002E00088461646012F06DB34886404640C26F821 +:1002F000084B7F1EF8D1012D45DBC66D371D4FF42D +:10030000804C4FF6FF76B8F800E0CEF30024A4B39B +:10031000CEF380145CB140F2BF3404EA0E040EF553 +:10032000806E0EF47C4E4EEA0404A8F80040B8F843 +:1003300002E009E032F83E4044F4004422F83E4036 +:1003400002EBCE04B4F802E0B645F3D1B3F828E0EE +:1003500009E032F83E4044F4004422F83E4002EB0B +:10036000CE04B4F802E0B645F3D1B7F800E01C8F34 +:10037000A645BCBF446824F81EC008F20A0807F26C +:100380000A076D1EBFD11B8EDB0B2CD000234FF64E +:10039000FF760DE032F8385045F4004522F8385029 +:1003A00002EBC804B4F80280B045F3D15B1C9BB2E9 +:1003B000B0F84A40A34216DAD0F8804034F813402F +:1003C00004EB840501EB4505B5F802802D88C5F3E3 +:1003D0000025002DEAD003EB830501EB4505ED88F0 +:1003E000002DE1D1E2E7BDE8F08101EB8102C16DB2 +:1003F00001EB42010A8913464FF6FF718B4200D18F +:10040000704770B4120414D403EB8302C36803EB87 +:1004100042021388C3F300244CBB43F4807313805F +:100420005180808EC00B22D00020D080108170BC03 +:10043000704723F40042836D03EB420333F8022B31 +:100440005404640C04EB8405C46804EB450425885B +:10045000C5F300264EB945F4807525806180858EF0 +:10046000ED0B02D00025E58025811204E6D570BC95 +:1004700070472DE9F24F01EB8104D0F80CE06600E3 +:1004800006EB0E010D88C5F30024002C00F08A80D5 +:1004900000F14C04AF0AD4F81090B1F804A04E4417 +:1004A000C5F34018758807F1010CB8F1000F0ED0A4 +:1004B000A76907EBC50500F10C073F8DC7F380372F +:1004C0001FB92F8857441FFA87FA6D8802E06769C1 +:1004D00037F82550A5EB0C050FFA85FCBCF1010F90 +:1004E0000CDB00F10C05ACF101076D8E55440FFAE1 +:1004F00087FC1FFA85FABCF1000FF2D11D88554523 +:1005000050D3AA453FD3178807EB87054FEA450C20 +:10051000E644B8F1000F07D07788A56905EBC70559 +:10052000B5F80280AD8806E06769758837F82580E0 +:1005300007EB85056D88B7880CEB0906BEF80090BF +:10054000C9F34019B9F1000F0AD0B6F80290D4F8F7 +:1005500018C00CEBC90CBCF80290BCF804C009E050 +:10056000D4F814B0B6F802C03BF82C900BEB8C0C0E +:10057000BCF802C0B688654505D313D1B74202DB8B +:1005800010D1C8450ED2A3F800A0BDF800301380EA +:1005900000F10C02128DD20B04D00A896260C98866 +:1005A000A0F84C10BDE8F18F2DE9F041CB88002177 +:1005B0004FF6FF74A34264D000F10C041D042BD449 +:1005C000258D8C46C5F3803636B1D0F88C7037F95E +:1005D00013707F0007F5FA5CC06803EB830700EB3C +:1005E000470EBEF80000BEF80470C0F300237BB1D4 +:1005F00097420DDAC5F3C02222B1628A02F5FA529F +:10060000974205DA1EB11FFA8CF2974200DA0121F7 +:10061000C0F34000A8B330E0E56C23F4004305EBE1 +:10062000430636F8023BC76823F4004C0CEB8C05FC +:1006300007EB4505AF88B5F800E0CEF30025CDB156 +:10064000974217DA258DC5F3C028B8F1000F05D001 +:10065000B4F8128008F5FA5847450BDAC5F380352F +:100660005DB1D0F88C5035F91C506D0005F5FA5588 +:10067000AF4202DBCEF340050DB1012101E01B04C6 +:10068000CFD50846BDE8F0812DE9F0479146984660 +:1006900082B004460D46C84553D04FF6FF7A4FF658 +:1006A000FE715246884515D1608B884209D10120E0 +:1006B000009000232046FFF767FD024652453DD0DB +:1006C00062836A8049462046FFF78FFE2888C0056E +:1006D000C00D45E008EB8801E0684E003718388807 +:1006E0007A88C0F3401078B1002000903B46E06D5E +:1006F000616E3018408801EBC000C1882046FFF7CA +:1007000043FD0246524519D03888C0F30010002836 +:10071000D7D0A08E00F42050B0F5205FD1D1E16D8C +:10072000715C0120890748BF022000903B4641468A +:100730002046FFF729FD02465245C2D1FE20BDE802 +:10074000F6872888810A3F290BDAA18EC1F3C021E0 +:1007500000291CBFC0F34001002902D140F0400035 +:1007600028800020BDE8F6872DE9F14F041D86B0F2 +:10077000E08F069A049002F144050020ADF80200D3 +:10078000608EADF80C00218EC1F3C02292B1C1F38E +:10079000803131B94FF47F4108421CBF000AADF8E7 +:1007A0000C00B5F90400401E4FF6FE71E182401EB8 +:1007B000ADF80800069AE08B5268218F32F81110CC +:1007C0000818E083208EC0F3C02038B1A08BB0F5AC +:1007D000FA5F03DA208B00F5FA5002E0A08B218B40 +:1007E0000818ADF80A004FF000084FF48040A083CD +:1007F000AE69A768C1462AE0BDF80400B880A18BA5 +:10080000BDF80400884288BF0846A083CDF800A048 +:10081000BDF80630069842463946FFF735FFADF879 +:100820000200208EC00B0AD0E868B0F5803FA4BF5C +:100830004FF6FF70E860E86838812889F88008F191 +:10084000010807F20A0706F20A0609F102090498EC +:100850001FFA88F8804580F24081BDF80200002828 +:1008600040F03B818DF800003A88C2F30020002858 +:10087000E5D0910A491CC2F34012002AB888728858 +:1008800004D02B6A03EBC202928803E0EB6903EB0E +:100890008202528889B28A420DD23F2ABCBFA18F00 +:1008A0000818296B39B1069AB188B2F844209142F0 +:1008B00008BF4FF48040ADF80400ADF80680208EEC +:1008C000C00B18BF3889E860208EC00B18BFF888AD +:1008D00028814FF6FF70B6F806A082451DD05FEA6A +:1008E0000A4007D4069801AB0DF106025146FFF706 +:1008F000C0FD12E069692AF4004001EB400B3BF8AF +:1009000002AB06984FEA4A4101AB0DF10602490CD1 +:10091000FFF7AFFD5FEA0A40F1D5208EC0F3C0209B +:10092000A8B3BDF90810002931D43888C0F34002BB +:100930006AB32A6B32F91110B5F9102002EB4101AC +:10094000BDF8042089B2914219D2ADF8041038885C +:100950008005800D3880208EC0F3403018B14FF6EE +:10096000FE70ADF806004FF6BF7138880840388039 +:10097000208EC00B06D00020E860288102E040F005 +:1009800040003880BDF80800401EADF808003888E7 +:10099000C0F3402000281ABF686A39F800A0B6F8F2 +:1009A00004A006984068BDF8041030F81A201F32E1 +:1009B000521112FA81F1ADF80410218E01F4904128 +:1009C000B1F5904F28D16A6CBDF9041039F80220B6 +:1009D000A1EBD211069AB2F8442009B2924504BFA5 +:1009E000A28E11FA82F10AB2012AB8BF0121ADF834 +:1009F0000410218EC90B0FD0317809060CD530F9BF +:100A00001A00404200B200F076FAE96801EB2010CB +:100A1000E8602889401C28813888C0F340000028FD +:100A20003AD1208EC0F3C021B1B1C0F3803060B1A3 +:100A3000A86C39F90000BDF80410400000F5FA5028 +:100A40008842BCBF01208DF80000608BBDF8041007 +:100A500000F5FA50884208DBBDF80A00BDF8041022 +:100A6000884202D39DF80000B0B1BDF80A20069874 +:100A70003146FFF799FD20B938884FF6FF610840ED +:100A800038803888C005C00D38804FF48040B88069 +:100A90004FF6FF707880D2E6208E00F49040B0F5DB +:100AA000006F7FF4A9AEBDF90400BDF80C10401A28 +:100AB0000699B1F8441000B28A4504BFA18E10FA1D +:100AC00081F001B20129B8BF0120ADF80400208EE9 +:100AD000C00B3FF491AE51200AE0BDF8020028B9E6 +:100AE0000698FFF7F6FB608D401C6085BDF802009C +:100AF00007B0BDE8F08F2DE9F041054682B0EC6803 +:100B000004F10C070026B7F828C07A6F4FF4804331 +:100B100018465FEADC3C12D0218E0022284600F005 +:100B200043F8BDE8F6810EEB8E08D4F80CE00EEB2E +:100B3000480EBEF804E09E453CBF7346604632F85E +:100B400002CBE6464FF6FF78C645ECD17A8B9A4247 +:100B50001DD37B83B883B3F5FA5F18DAADF8006074 +:100B60007A8CFA8300EB8002E06800EB4200408858 +:100B70003884481C788700A9284600F07FF9698DE1 +:100B800060F3070169852969686949680161788F9F +:100B900038B14044788780B218B9204600F03BFA5B +:100BA00006463046BDE8F6812DE9F84304460020AC +:100BB000ADF800001746D4F80C904FF4FA58B80777 +:100BC00048BF4FF48048002509F10C0633E0706FF0 +:100BD00030F81500726800EB8001D9F80C0000EBCA +:100BE000410005EB850102EB41018288B2F5804F9F +:100BF0001CBFC388002B1CD090451AD34B8813B15F +:100C00000B889A4215D20A800289C388520192FB4E +:100C1000F3F28A80B28C521C4A8040880881708C22 +:100C2000C88000A9204600F029F9618D60F3070112 +:100C30006185681C85B2F08F8542C8DBF80710D546 +:100C400000250BE0706805EB850100EB4100418851 +:100C500011B14FF6FF714180681C85B2F08F85425B +:100C6000F0DB4FF000084FF6FF7703E008F10100DA +:100C70001FFA80F8F08F804558DA716808EB880019 +:100C800001EB400568880028F0D0B84215D038182C +:100C9000688080B20028E9D1306E70B128887083F6 +:100CA000706F30F81800B083E888F08328893084AA +:100CB000484600F0B0F90028D8D000200AE0AA8801 +:100CC0008B889A4202D20021698013E000224A8078 +:100CD000401C80B2F18F88420CDA4045F8D072682F +:100CE00000EB800102EB41014A88002AF0D0BA42B1 +:100CF000E5D06F80F18F8842B8D1002068800FF670 +:100D00007012A888706461680864F18C706CC1F31B +:100D1000022132F81110884205DA608D00F47F401C +:100D200040F0400060850120BDE8F2830020BDE86E +:100D3000F283F0B4C2684068958E01EB8103D168FC +:100D400001EB4304016BED05ED0D0D800123B2F9BC +:100D50002450CD80558C0D81257805F001054D80FE +:100D60002588C5F380058D8065884FF6FF7413E0F4 +:100D70002E88B605B60D21F80A6F5B1CB5F9046024 +:100D8000CE80EE880E812E88C6F380364E802E8867 +:100D9000C6F340368E806D88A54216D0966806EB65 +:100DA000C5052E88C6F3C126002EF4D1CE88B5F92C +:100DB0000470F61BCE809BB20E89EF88F61B0E8165 +:100DC000068AB342D4D3562141848384F0BC408C3C +:100DD0007047F8B504466068E568066B2046FFF783 +:100DE000A8FF002849D16168898C002202E0521CCA +:100DF00006F20A0692B28A4205DA7788002F04BF0B +:100E0000B788002FF3D08A4201D13120F2BD31885A +:100E1000AA8E61F30802AA867188228D61F3C3024B +:100E20002285A98EC1F3C0223ABB6A8E0FF64C030D +:100E3000C2F3022233F81220AB8C5A435202120C36 +:100E4000C1F34023002B6B8C06D09508AE189E4250 +:100E500004DA5200EB1805E09A4201DB322004E08C +:100E600002EB62029A42A8BF3320C1F3003121B1E4 +:100E7000218DC1F3C00101B95420F2BD2DE9F04725 +:100E8000C368B1F800C0D3F880A0D3F80C904FF637 +:100E9000FF784FF480444246002618E00EEB8E05A2 +:100EA0006D0035F8097007F49077B7F5907F0ED193 +:100EB000DF6DEF194D44AD88A54238BFAC4506D271 +:100EC0002C467E885D6E05EBC6067246F6883AF8BB +:100ED00002EBC645E2D10C804245998E66F30801CB +:100EE00099869C8408BF312003D01146BDE8F047A5 +:100EF0006FE7BDE8F08710B500F58061B1F5006FD0 +:100F000039D8DFF864170122034601F110048B423F +:100F100018DB24B2A04215DA802A19D0E01A800129 +:100F2000611A90FBF1F10FF2607000EB420309B21D +:100F300030F9120033F9023CC1F14004604313FB65 +:100F4000010016E0521C24B212B22146812ADCDBD9 +:100F500042F67A308C4213D0E21A9201611A92FB67 +:100F6000F1F109B2C1F1400342F6D122584312FB1C +:100F70000100801110BD4010FFF7BDFF404300137A +:100F800010BD0021C82201E08008491CB0F5805F37 +:100F9000FAD20003C823B0FBF3F303E09A18520817 +:100FA000B0FBF2F3A3F1010C624524BF03F1010C85 +:100FB0009445F3D302FA01F0704740010021B0F5E7 +:100FC000004F24BF400A40F23D61B0F5806F24BF5E +:100FD000400901F27731FF2884BF800801F26311D4 +:100FE000802824BF4008B131402824BF4008B131D7 +:100FF000312824BFA0EB90004A31292824BFA0EB60 +:10100000D0002231262824BFA0EBD0002231203886 +:1010100001EBC00070472DE9F04F044685B0208DEC +:1010200004900021608D0390054604A800220088EA +:1010300002908A46A38EC3F3403389468846002B2C +:1010400000F0DB80A38D019318E067444FEA570C52 +:10105000B1FBFCF7A7F1010BDC4524BF07F1010B45 +:10106000E345F2D30CFA00F082180AF1010A009865 +:101070002D1A9805800D3146BEF802304FF6FF76E6 +:10108000B34233D0A66806EBC30EBEF80030C3F3FC +:10109000C126002EF0D0BEF804C0AFB2674538BFFD +:1010A00005F58035A5EB0C07BFB20097B844276F54 +:1010B00037F820C007EB800040888445D7DA022942 +:1010C000D5D0BCF10F0FB8BF4FF00F0C00FB0CF1E7 +:1010D00000204FF0C80C01E08908401CB1F5805F8A +:1010E000FAD20903C827B1FBF7F7B3E702F12000F2 +:1010F0008209C8EB081802E04FEA58085208B8F510 +:10110000805FF9D2002A7AD0500800EBC810B0FBFB +:10111000F2F8039D0298019B002112E04A0802EBBD +:10112000C010B0FBF1F0FFF748FFA0F2DA404043F7 +:1011300009EB201931888805ED1B800DC1F3C12111 +:1011400073884FF6FF72934231D0A26802EBC30658 +:101150003288C2F3C122002AF2D0B288ABB29342E5 +:1011600038BF05F58035AA1A97B2226F32F82030C1 +:1011700002EB800040888342DCDA0229DAD00F2BB0 +:10118000B8BF0F235843FFF7FCFEC00808FB00F16F +:10119000C7EB0710800201E049084008B0F5805F06 +:1011A00038BFB1F5805FF7D20029B7D125E04FEA0B +:1011B0000A41C80B99FBF0F9B9F5FA5F1FDC002072 +:1011C00000E0401C2268D28E80B20146904206D2D6 +:1011D000D4F88030049A33F811309A42F1D1E26E9B +:1011E000E08C32F8111001FB09F100EBE120E08402 +:1011F000A084E08CB0F5FA5F01DA012000E0002065 +:1012000005B0BDE8F08F818F426802EB4101428F4B +:10121000D21C0A80028F21F8022F408F21F8020F82 +:1012200070472DE9F0470446251D04F15C06B5F82A +:101230003EA0D6F8208000206885E88328844FF4FB +:1012400080476F84AF84EF844FF6FF79A5F828902C +:10125000A4F84600288EC0F3C02048B1B069B0F9A8 +:10126000000004F146014000B1F90E1000FA81F0CF +:10127000A883686810B12046FFF71FF80020288275 +:10128000A882BAF1010FA86807DB01780180878086 +:1012900000F20A00BAF1010AF7D138F8021B4945F9 +:1012A0001DD0AA6801EB810002EB40000388C3F364 +:1012B000002252B943F480730380A0F802902B8E71 +:1012C000DB0B02D00023C38003812A8EC2F3C0222D +:1012D00002B13A4682802046FFF787F8DDE700201A +:1012E00005E000EB8001EA684900401C8F5204F1E0 +:1012F000460180B289888842F3D3298F606802460C +:10130000012905DB42F60D6322F8023B491EFBD1A1 +:10131000EA8FA968012A1BDBE46DF368241D0E889F +:10132000C6F300266EB1268820F816700E88C6F324 +:10133000001636B12E8EC6F3C02616B91E8820F8C8 +:1013400016709B1C01F20A0104F20A04521EE6D137 +:101350000020BDE8F0870168CA8A520182838A8929 +:101360005200C286CA89520002870A8A5200428706 +:101370008A8A5200A0F840204A8A5200C287CA8B4B +:10138000002A14BF52014FF48042C2834A898287E7 +:101390000A8C002A1ABF0F2392FBF3F20122028665 +:1013A0004EF6FF730A8FA0F84420CA8E521EA0F892 +:1013B0004A208A88A0F84220828E1A404B881B0659 +:1013C000DB0F42EA033282864DF6FF731A404B88E8 +:1013D0001B069B0F03F0010342EA43328286838E91 +:1013E0004A8862F3CB2383864FF6FF33828E1A40FE +:1013F0004B881B06DB0E03F0010342EA8322828640 +:101400004FF6FF531A404B881B061B0F03F00103D6 +:1014100042EA43228286520449880906520C490E48 +:1014200042EAC13181867047F0B400F10C01C06816 +:10143000CE8E0A6D0B6F0446012E2CDB15882F070C +:1014400003D5278847F0010727806F0703D5278832 +:1014500047F004072780AF0707D50F8DC7F3C027D4 +:101460001FB9278847F010072780EF0607D50F8D93 +:10147000C7F3C0271FB1278847F010072780ED0763 +:1014800003D5258845F02005258004F20A0402F2E0 +:101490000A02761ED2D133F8021B4FF6FF72914238 +:1014A00008D001EB810200EB4204218841F00201E7 +:1014B0002180F0E7F0BC7047F8B50446606C6168C5 +:1014C00000F6581529600A88242A03D05120608428 +:1014D0000020F2BD01F14802568811FA86F6AE6589 +:1014E00016890EB111FA86F6C5F8846056890EB1D8 +:1014F00011FA86F6C5F8886096890EB111FA86F65B +:10150000C5F88C604BF6FF7357897E1EB641AF8ECF +:10151000F643F60F1F4047EA8636AE86D68911FAA3 +:1015200086F62E66168A11FA86F66E66568A0EB111 +:1015300011FA86F6AE66968A11FA86F6C5F88060CC +:10154000D68A0EB111FA86F6EE66168B0EB111FA36 +:1015500086F62E67968B11FA86F6EE65B1F848602E +:101560000EB111FA86F66E679EB13688B4F9167020 +:10157000760407EB2647B7F5004F04DB47F6FF7705 +:10158000A7EB264604E0394B9F4202DAA3EB26463E +:10159000E682E68AC6F5FA56A5F8546000F6E81029 +:1015A000D28811FA82F2EA670A1D938CA5F84830B6 +:1015B000538E5B1EA5F84A3068609BB2D0886A687B +:1015C00002EB4000801DC01C80088000286103EBF6 +:1015D000830200EB42002063228A02EB820300EBCD +:1015E0004300E860898801EB810200EB4200A860BB +:1015F000608AE8822846FFF7AEFEA88E00F4C0514C +:10160000B1F5006F19D1B5F84A20002192B1D5F893 +:1016100080301E8806EB8607EE6D06EB47066F6E80 +:10162000768807EBC606F688B14238BF31469B1C68 +:10163000521EEED1491CA5F85610618B11B1400421 +:10164000400CA886A08A698E401E60F30A21698634 +:101650002846FFF7E9FE2846FFF7D5FD2846FFF7A5 +:10166000E0FD2846F2BD000000FCFFFF0180FFFF07 +:10167000CC0C0010331366169A1900005200650056 +:101680008000A000C5000000E305FB0513062B0643 +:1016900044065D0677069106AB06C606E206FD0621 +:1016A0001A073607530771078F07AD07CC07EC07FA +:1016B0000C082C084D086E089008B308D608FA08E4 +:1016C0001E09430968098E09B409DB09030A2C0ABB +:1016D000550A7E0AA90AD30AFF0A2B0B580B860B60 +:1016E000B50BE40B140C450C760CA80CDB0C0F0DA1 +:1016F000440D790DAF0DE70D1F0E580E910ECC0E57 +:10170000080F440F820FC00F001041108210C51047 +:1017100008114D119311D91121126A12B51200133B +:101720004D139B13EA133A148B14DE1432158815EB +:10173000DF1537169016EB164817A517051866180B +:10174000C8182C199119F819611ACC1A381BA51B45 +:10175000151C861CF91C6E1DE41D5D1ED71E541F32 +:10176000D21F5220D4205921DF216822F2227F2368 +:101770000E24A0243325C9256226FD269A27392860 +:10178000DC288029282AD12A2DE9F0415422002181 +:10179000DFF8AC0A0EF034FCDFF8A84A0C22002176 +:1017A00020460EF02DFC1C22002104F110000EF04A +:1017B00027FC1C22002104F12C000EF021FCDFF894 +:1017C000885A002028644FF47A720146DFF87C0AB8 +:1017D0000EF016FC4FF47A720021DFF84C0C0EF07C +:1017E0000FFC0020A0646864DFF8406CB062F06217 +:1017F0003063A8647063B063DFF8347C7863E864B6 +:10180000E0642865012068650020F063A8654FF05A +:10181000FF30E8652866002068663064B863A86613 +:10182000F8637064B064F0641C22014606F1500055 +:101830000EF0E6FB0020E86608220146281D0EF0A7 +:10184000DFFB2822002105F10C000EF0D9FB42F24B +:10185000107028846884002028836883E8600C2244 +:10186000014630460EF0CCFBDFF8FC0B7060DFF871 +:10187000FC0B30604FF0FF30308100202870A886CC +:10188000E886288768873C220146DFF8140C0EF0B2 +:10189000B7FB00202065F066A0816065A887E88717 +:1018A00070673067286705F18408282205F10C016C +:1018B00040460EF0AFFBC4F8588000206867A86768 +:1018C0003864B067F0677864C5F88000E8676066E0 +:1018D0002066E06501202067E066A0660020E067E2 +:1018E000A06760672822014638460EF089FB0C226B +:1018F000002106F11C000EF083FB0C22002107F1F1 +:1019000028000EF07DFB1022002106F10C00BDE83E +:10191000F0410EF075BB10B584B0DFF8104B0C220F +:10192000214600A80EF076FBFFF72EFF0C2200A93F +:1019300020460EF06FFB1FBD2DE9F84F2DED0C8BEF +:1019400084B00020029082460446DFF8E45A95ED08 +:10195000118AD5ED0E8AC5ED118ADFF8D06AD6ED71 +:10196000109AC5ED0E9ADFF8E07897ED199AB8EE67 +:10197000490ADFEDB70A80EE80AA86ED10AAD7F8F3 +:101980004CB0F86DABEB0000FA30FA21B0FBF1F18E +:10199000FA2202FB11091FFA89F9B9F14C0F02DA98 +:1019A000786D012807D12046B887F887DFF89408BA +:1019B0000221C181A9E1D7F85880B8F1040F32D3D0 +:1019C000F4EE698AF1EE10FA2DD5F4EE4A9AF1EEB2 +:1019D00010FA28D51AEE100A0EF022FB02460B462A +:1019E000CDE9002318EE900A0EF01AFBDFF8802AEA +:1019F000DFF8803A0EF04CFBDDE900230EF026FC08 +:101A000011D29FEDDD0AB4EE40AAF1EE10FA0ADB26 +:101A1000C6ED109AC5ED0E8A85ED118ADFF824080F +:101A20000321C181A2E1D6ED0AAAC6ED0BAA96ED6B +:101A30000DBA86ED0EBA484600EE100AB8EE400A1E +:101A4000D7ED110AC0EE800A97ED121A81EE001A46 +:101A50002046B0627063F86D214621E0401C80B2E0 +:101A6000FA2800D12046DFF8E42702EB8002D2ED0D +:101A7000001A71EEE01A96ED0A2A01EEA12A86ED0F +:101A80000A2ADFF8A42902EB8002D2ED001A71EED7 +:101A9000C11A96ED0D2A01EEA12A86ED0D2A491CE8 +:101AA00089B24945DADBD6ED0A0AC0EE80BAC6ED46 +:101AB0000ABAD6ED0D0A80EE80CA86ED0DCAD6EDC3 +:101AC0001FCAC5ED10CA97ED1D0AD7ED1E0A30EEEC +:101AD00060DA86ED1FDA00F04BFB012803D12046C7 +:101AE000B887F88711E1B8F1000F0AD1F88FB98FE4 +:101AF00010FA81F2052A04DB44185046B887F887AB +:101B000005E0B8F1000F02D02046B887F88718FA30 +:101B100084F0002832D19FEDA28B3CEE0B0A10EE30 +:101B2000100A0EF07DFA53EC182B0EF0B1FA524663 +:101B3000DFF8283C0EF08AFB16D33BEEAA0A10EE23 +:101B4000100A0EF06DFA53EC182B0EF0A1FA524663 +:101B5000DFF80C3C0EF07AFB06D3B3EE040AB4EEC9 +:101B600040DAF1EE10FA09D5B88F401CB887C7F8F3 +:101B700060B0DFF8D0060621C181C6E0B88F00282A +:101B800010D08CEE0B0AF0EE080AB4EE600AF1EE0B +:101B900010FA05D5032805DB04195046B88701E083 +:101BA0005046B88718FA84F000281DD1B7EE000A15 +:101BB000B4EE40AAF1EE10FA04D5DFF8880607214A +:101BC000C181A2E09FED780AB4EE40AAF1EE10FACE +:101BD0000ADBF88F022806DA401CF887DFF8640673 +:101BE0000821C18191E004195046F887B0EE6B1AC4 +:101BF000F0EE4C0AB0EE4A0A4946A4B2204600F084 +:101C000033FB012808D1C6ED109A86ED0DBAC6ED5A +:101C10001FCAC6ED0AAA78E09FED640AB4EE40AA96 +:101C2000F1EE10FA02DBDFF8480C30645046B8875A +:101C3000B8F1000F0ED196ED100A87ED1A0A85ED66 +:101C40000F0AC6ED0CBA85ED0DCA86ED1EDA4EE020 +:101C500000007A44B6EE008A00F030FA012818D16C +:101C600096ED100AF0EE000A20EE200A86ED100A2A +:101C70004FF0010A6BEE880AC6ED0A0A2CEE081A2C +:101C800086ED0D1AC6ED0B0A86ED0E1A85ED0E0ACD +:101C9000641C96ED100AD5ED0E0A70EE200A60EE77 +:101CA000880AC7ED1A0A96ED0A1AD6ED0B1A31EE1C +:101CB000211A21EE081A86ED0C1A96ED0D1AD6EDB2 +:101CC0000E1A31EE211A21EE081A85ED0D1AB4EE26 +:101CD000600AF1EE10FA02D4BAF1010F01D185EDDC +:101CE0000F0A3CEE8D0A20EE080A86ED1E0A2046F9 +:101CF00080B200F05DF800F09DFBF86000F03EF867 +:101D0000C7F860B00120029038670298012802D11C +:101D10000120288003E0DFF82C05C0892880A4B2C8 +:101D20006C6085ED029AA5F80C90788FE881B06A16 +:101D30002861706B6861306CA861306BE861686B1A +:101D40002862B86E6862C7F85CB000207866786474 +:101D5000B86478651022014606F10C000EF050F9C7 +:101D60000C22002106F11C000EF04AF9029804B082 +:101D7000BDEC0C8BBDE8F28F01004040DFF8C804D9 +:101D8000DFF8A816CA6B02614A6C42628A6C8262F2 +:101D9000CA6CC262826E4261096F016370470000C3 +:101DA000000000000000E03F676616400100A04010 +:101DB0002DE9F0472DED068B824600200146DFF825 +:101DC0006C46DFF88454BAF1000F1DD0E66B721E2A +:101DD00002F00702521906F007035B191B79137111 +:101DE000AF6D7A1E0723B2FBF3F3C3EBC303D21A22 +:101DF00004EB82020723B7FBF3F3C3EBC303FB1A25 +:101E000004EB83031B6D136595ED1A8AB0EE040A8B +:101E1000B4EE408AF1EE10FA08D494ED1B0AF0EE0D +:101E2000080AB4EE600AF1EE10FA02D503222A8302 +:101E300001E004222A83E66B06F0070252192B8B7D +:101E40001371024603E0032B00D1491C521C082ADF +:101E500006DA531993F90430042BF4D1401CF5E74A +:101E600080B210FA81F101EBD1714910814202DA9E +:101E70000420688301E003206883F0EE489AB7EEFF +:101E8000080AB4EE408AF1EE10FA02D5F7EE089A8D +:101E900008E09FED890AB4EE408AF1EE10FA01DB0A +:101EA000F1EE029A19EE900A0EF0BAF841EC1A0B14 +:101EB00053EC1A2BDFF84C0BDFF84C1B0EF0E8F854 +:101EC000DFF8482BDFF8483B0EF0DCF98046894606 +:101ED00053EC1A2BDFF83C0BDFF83C1B0EF0D8F864 +:101EE00053EC1A2B0EF0D4F802460B4640464946F6 +:101EF0000EF03CFA0EF0FAFA00EE100AD4ED010AE8 +:101F000020EE200A10EE100A0EF08AF8DFF80C2BF3 +:101F1000DFF80C3B0EF0BCF80EF0E8FA00EE100A09 +:101F200084ED110AB4F90800022805D1DFED8E0A0C +:101F300020EE200A84ED110AD4ED118A94ED120AE4 +:101F400030EE289A84ED129A28EEA90ADFED870A6E +:101F500020EE200A84ED130AAF6D0720B7FBF0F0E6 +:101F6000C0EBC000381A04EB800080ED140A00209A +:101F7000E866072F20D209E004EB800191ED141AE6 +:101F800070EE810AC5ED1B0A401C80B2D5ED1B0A1C +:101F90008742F1D201EE100AB8EE411AC0EE810A72 +:101FA000C5ED1B0A12E004EB800191ED141A70EEEE +:101FB000810AC5ED1B0A401CD5ED1B0A0728F2DB80 +:101FC000B1EE0C1AC0EE810AC5ED1B0A10EE100A24 +:101FD0000EF026F841EC100B9FED9DAB688B0428AA +:101FE00053EC102BDFF8640C0BD1DFF8741C0EF0EF +:101FF0004FF853EC1A2B0EF045F90EF077FA6067A4 +:102000000AE0DFF8701C0EF043F853EC1A2B0EF0C8 +:1020100039F90EF06BFA6067606F0EF001F8DFF8C7 +:10202000582CDFF8783C0EF033F88046894620685B +:102030000DF0F6FF42464B460EF02AF880468946E0 +:1020400018EE100A0DF0ECFF0022DFF86C3C0EF0E9 +:102050001FF802460B460020DFF86C1C0EF08EFACB +:1020600042464B460EF014F80EF040FA00EE100A0D +:1020700084ED1D0AD4ED1C0A70EE800AC4ED1C0A22 +:10208000701CE063791CA965BAF1000F10D05044B0 +:10209000E0630AEB0100A86501EE10AAB8EE411A50 +:1020A00001EE289A84ED129A41EE000AC4ED1C0A52 +:1020B000BDEC068BBDE8F08701009040F8B52DED32 +:1020C000028B0026D94F97ED108AD948C06B0DF0CE +:1020D000A7FF4FF06632DFF8F43B0DF0D9FF024660 +:1020E0000B4614461D4618EE100A0DF099FF2246C5 +:1020F0002B460EF0ABF805D25348408F022801DB87 +:10210000012617E09FED540AB4EE408AF1EE10FA72 +:1021100010D597ED060ADFED510AB4EE600AF1EE34 +:1021200010FA07DBDFED4E0AB4EE600AF1EE10FAAA +:1021300000D5012697ED1B0AF0EE000AB4EE600A06 +:10214000F1EE10FA0BD59FED470AB4EE408AF1EE9E +:1021500010FA04DB3C48408F032800DB00263046A1 +:10216000BDEC028BF2BD00001EC47E3F0000704239 +:1021700038B52DED048B0025AC4C3348408B03283B +:102180001EDA94ED100ADFED370AB4EE600AF1EEC4 +:1021900010FA15DB94ED0A0AF2EE040AB4EE600AB6 +:1021A000F1EE10FA0CD594ED0D0ADFEDB30AB4EEA2 +:1021B000600AF1EE10FA03D522480421C1810125FD +:1021C00094ED0D0AF3EE040AB4EE600AF1EE10FA93 +:1021D0002ED49FEDAA8BD4ED0E0A30EE200A10EE1D +:1021E000100A0DF01DFF53EC182B0DF051FF0022CB +:1021F000DFF8E03A0EF02AF81AD394ED0A9A94ED3B +:102200000B0A39EE000A10EE100A0DF009FF53EC2C +:10221000182B0DF03DFF0022DFF8BC3A0EF016F847 +:1022200006D3B2EE040AB4EE409AF1EE10FA03D5EA +:1022300004480521C18101252846BDEC048B32BD2F +:10224000C4F20020B0F80020ACF4002008CB00203D +:102250000000000000000C409A99993F01002042C4 +:102260000000C842010000402DE9F0412DED028B35 +:1022700008EE101A0026DFF8647AB96D4018DFF80E +:10228000AC8102281AD398ED100ADFED7E0AB4EE75 +:10229000600AF1EE10FA11DB98ED0E0AD8ED0D0A86 +:1022A00080EE200ADFED780AB4EE600AF1EE10FA53 +:1022B00004DBDFF82C1A0922CA81012602281CD36C +:1022C0009FED720AD8ED0E0A98ED0D1AC0EE810A44 +:1022D000F4EE400AF1EE10FA0FDBD8ED0B0A98EDA0 +:1022E0000A1AC0EE810AF4EE400AF1EE10FA04DB9D +:1022F000DFF8EC190A22CA81012600281BD0D8F881 +:1023000078000DF08DFE4FF03332DFF8D8390DF044 +:10231000BFFE02460B4614461D46D8F87C000DF061 +:102320007FFE22462B460DF091FF04D2DFF8B00964 +:102330000B21C181012698ED100ADFED550AB4EE9C +:10234000600AF1EE10FA08DA97ED1A0ADFED510A89 +:10235000B4EE600AF1EE10FA1CDB98ED0D0ADFED29 +:102360004F0AB4EE600AF1EE10FA0BD498ED0A0AA7 +:10237000DFED490AB4EE600AF1EE10FA02D4788F6C +:10238000022807DB788B032804DBDFF854090C21D3 +:10239000C181012698ED0C0ADFED400AB4EE600A17 +:1023A000F1EE10FA08D498ED1B0AF1EE040AB4EE2F +:1023B000600AF1EE10FA15D5F86FD7F880100818FA +:1023C0000EF000FA0022DFF820390DF061FE012244 +:1023D000DFF800390EF00EFA04D8DFF804090D21F9 +:1023E000C1811646B8EEC80A1148D8ED070AC0EEFA +:1023F000800AC0ED0A0AD8ED080AC0EE800AC0EDD6 +:102400000B0AD8ED090A80EE800A80ED0C0A0C2236 +:1024100000F1280107F1AC000DF0FCFD3046BDECE9 +:10242000028BBDE8F0810000F0CE002030F90020E2 +:10243000ECFB00200020DFF8B418CA6B12F10A0F81 +:102440000FD29FEDC50AD1ED120AF4EE400AF1EE6B +:1024500010FA06DAD1ED1C0AF4EE400AF1EE10FA99 +:1024600000DB01207047000000003543000090426F +:10247000CDCCCCCCCCCCFC3F0000204200000000F6 +:102480000000E03F010060400100A04001007041F9 +:102490000100904001008040000016430000C84346 +:1024A00078FC00202DE9F24F0446002500F0CAFB1D +:1024B000DFF82868284630677067B067DFF8207853 +:1024C000F881204600F04EF93078052805D101202A +:1024D000706528463070F0863087706EBDF8001049 +:1024E00010FA81F07066D6F84C80F06D804501D10D +:1024F00001207065D7F84C9009EB49004FEA800A3B +:10250000DFF8EC0721684AF800100AEB000B60685E +:10251000CBF80400A068CBF80800BDF800102046F6 +:1025200000F0A8F9F0619BED020ADBED010ADFF88B +:10253000C0075AF8000001EE100A21EE011A00EE61 +:10254000A01A00EE001A11EE100A0DF069FD41EC20 +:10255000100B0EF067F951EC100B0DF0C7FF00EEF9 +:10256000100AD6F850A0BAF1000F10D1284604E0A6 +:1025700007EB810181ED040A401C80B20146072966 +:10258000F6DBF1EE0C0A60EE200AC6ED100A07EB4E +:102590008900D0ED040A70EE600A96ED101A30EE54 +:1025A000811A86ED101A80ED040ADFF8481701EB56 +:1025B000880181ED001A96ED110A30EE010A86EDD0 +:1025C000110A90ED0B0A71EE400ADFF82CB70BEB05 +:1025D0008801C1ED000A80ED0B1A96ED120A30EE6B +:1025E000200A86ED120A94EC031A87EC031AB08EC7 +:1025F000401CB0863178012901D0032930D180B246 +:10260000022822DA718B04291FDAB06D002857D115 +:1026100097ED120A9FED951AB4EE410AF1EE10FA09 +:1026200004D5F4EE410AF1EE10FA0BDAB9EE0C1A09 +:10263000B4EE410AF1EE10FA42DBF4EE410AF1EE9B +:1026400010FA3DD5012070653AE0272808DBF18EAD +:10265000002903D010FA81F04B2801DB01207065BE +:1026600097ED120A00F0DEF93078012828D1F08EBB +:10267000002825D0318F002922D0032211FA80F0C2 +:102680003D2801DB01207065708B042800DB0222ED +:10269000708F824201D201207065F06FC6F8800011 +:1026A000F86D396E0818796E0818F0672846786654 +:1026B0003866F865FFF740F90546002030877087D7 +:1026C000306EA8EB0000FA30FA21B0FBF1F1FA22EB +:1026D00002FB110196290AD10022B265B266F266A8 +:1026E000F26272613283B287F28701223267642913 +:1026F0000FD10020F062706108220146301D0DF0FC +:102700007FFC002070837061012030670020B0875B +:10271000F0875BF82800B86408F10100F064FA283B +:1027200001D10020F06409F10100F864072801D10B +:102730000020F8640AF101003065306F002808D0ED +:1027400006F18404282206F10C0120460DF062FCFB +:10275000BC652846BDE8F28F8096184B00C06240E9 +:102760000000544070B50446DFF87455AE6E95ED28 +:10277000000AD4ED000A70EEC00A01EE106AB8EE4D +:10278000C11A60EE810AF5EE400AF1EE10FA17D593 +:10279000D5ED1D0A30EE600A10EE100A0DF040FC77 +:1027A00021F00041DFF85425DFF8B4340EF022F8B0 +:1027B00002D8E86D401CE865286868677042A86622 +:1027C000EE6E95ED010AD4ED010A70EEC00A01EE3D +:1027D000106AB8EEC11A60EE810AF5EE400AF1EE19 +:1027E00010FA17D5D5ED1E0A30EE600A10EE100A69 +:1027F0000DF016FC21F00041DFF80025DFF8603411 +:102800000DF0F8FF02D8286E401C28666868A8679B +:102810007042E8662E6F95ED020AD4ED020A70EE62 +:10282000C00A01EE106AB8EEC11A60EE810AF5EE38 +:10283000400AF1EE10FA17D5D5ED1F0A30EE600A06 +:1028400010EE100A0DF0ECFB21F00041DFF8AC2493 +:10285000DFF80C340DF0CEFF02D8686E401C6866BD +:10286000A868E8677042286770BD00000100E0407A +:102870000000A04030B4DFF8682490ED000AD2EDEB +:10288000000A30EE600AD0ED010A92ED011A70EEF6 +:10289000C10A90ED021AD2ED021A31EE611AB5EEBC +:1028A000400AF1EE10FA02DDF0EE401A01E0F1EE1E +:1028B000401AF5EE400AF1EE10FA02DDB0EE602AA1 +:1028C00001E0B1EE602AB5EE401AF1EE10FA02DD39 +:1028D000F0EE412A01E0F1EE412A71EE821A71EE2A +:1028E000A21AB5EE400AF1EE10FA01DCB1EE400A90 +:1028F000DFF8F83393ED032A32EE000A83ED030A82 +:10290000F5EE400AF1EE10FA01DCF1EE600A93ED0B +:10291000040A30EE200A83ED040AB5EE401AF1EE07 +:1029200010FA01DCB1EE411A93ED050A30EE010A0E +:1029300083ED050A93ED060A30EE210A83ED060ABF +:1029400093ED070AD0ED000A30EE200A83ED070A66 +:1029500093ED080AD0ED010A30EE200A83ED080A53 +:1029600093ED090AD0ED020A30EE200A83ED090A40 +:10297000DFF86803006D002812D10020DFF88053D3 +:1029800004E005EB8404C4ED001A401C80B2044648 +:102990000F2CF6DBB2EE0E0A21EE800A82ED140A4D +:1029A0009089DFF85C4304EB800595ED000A31EE79 +:1029B000C00AD2ED140A30EE200A82ED140A04EBAC +:1029C0008004C4ED001AF2EE0E0A80EE200A83EDB8 +:1029D0001B0AF5EE000AB4EE600AF1EE10FA04D517 +:1029E000536D13FA81F1516501E000215165401CDE +:1029F000908180B20F2801D100209081506D30BCB1 +:102A000070470000F0164850FC18E93F3411363C7E +:102A1000BD52DABFBBB88D06F016B83FB8ED221C28 +:102A20001818783F70B52DED048BB0EE408AF0EEAB +:102A3000608A9FEDA29AA94E708B042801DBB0EE4C +:102A4000009AB5EE408AF1EE10FA07DBF5EE408A07 +:102A5000F1EE10FA02D5708F401C70873078002894 +:102A600006D002287DD040D3032800F0A380E5E003 +:102A700019EE100A0DF0D4FA41EC100B53EC102BA8 +:102A80000020A0490DF0FEFB41EC190B18EE100AD6 +:102A90000DF0C6FA02460B4651EC190B0DF0AAFEDA +:102AA00011D818EE900A0DF0BBFA02460B4651EC15 +:102AB000190B0DF0CBFB06D2B08E1028C0F0AF8002 +:102AC0000020B086ABE0F06C8B4951F8200000EE9E +:102AD000100A8D48D0ED010AB4EE600AF1EE10FA4A +:102AE00040F1AC8080ED010AA8E0F06C824951F819 +:102AF000200000EE100A8448D0ED000AF4EE400AEF +:102B0000F1EE10FA01D580ED000AB7EE000AB4EE3E +:102B1000408AF1EE10FAC0F29180F4EE408AF1EEB4 +:102B200010FA40F18B80B08EF0860020B08619EE4E +:102B3000100A0DF075FA02460B46002073490DF09D +:102B400015FC02460B4614461D4618EE900A0DF081 +:102B500067FA22462B460DF079FB22D30220307013 +:102B60006CE019EE100A0DF05BFA41EC100B00203E +:102B7000664953EC102B0DF0F9FB41EC190B18EEE4 +:102B8000100A0DF04DFA53EC192B0DF033FE55D809 +:102B900018EE900A0DF044FA53EC192B0DF056FB89 +:102BA0004CD203203070F06C534951F82000564944 +:102BB000486043E0F06C504951F8200000EE100AE4 +:102BC0005148D0ED010AB4EE600AF1EE10FA01D5D9 +:102BD00080ED010A9FED3E0AB4EE408AF1EE10FA54 +:102BE0002CD5F4EE408AF1EE10FA27DBB08E308758 +:102BF0000020B08618EE900A0DF012FA02460B463D +:102C000014461D4619EE100A0DF00AFA00223D4B3B +:102C10000DF038FB22462B460DF018FB0CD201209C +:102C200030703948016871674168B167F16C324AA8 +:102C300052F82110016001E0002030703078BDECC6 +:102C4000048B70BD25480078704700009A999999C7 +:102C5000002804D02249896D28220DF073BE7047E8 +:102C60009999C93F1D48816D002901D1808F704716 +:102C7000002070479999B93F7B14AE47174800214F +:102C80000165018341830521017000218165816611 +:102C9000C166C16241618187C1877047E17A743F33 +:102CA000002806D0114942684A6002680A6000891B +:102CB000088170470000000000004E400000000046 +:102CC0000748406D704700000000F03F6666E63F31 +:102CD000FEFF7FBF0000444000003440ACF4002001 +:102CE000B0F800203333D33F0000E03F30F900203C +:102CF000C4F2002008CB0020F0CE00209B999999C7 +:102D000078FC002000001C408CFE002000001CC04D +:102D100010B5DFF8DC4424F0E2FE606600200246D5 +:102D200003E004EB8001CA62401C0928F9DB10466D +:102D30002066E06524F0C7FEA0664FF4FA702060BC +:102D40006060DFF8B004A0609FED0A0A84ED030A1A +:102D500084ED040A84ED050AB5EE000A84ED060A46 +:102D600084ED070ADFF89004206207206062A06209 +:102D700010BD00009A99193F70470000F8B52DED7D +:102D8000048B0C469FED3D8ADFF86464002070657B +:102D9000B065306E401C3066DFF86054012C02D103 +:102DA000002068672867F06D0A2839DA1E220021A2 +:102DB000706E24F0A5F8C5F88C001E220121706EFB +:102DC00024F09EF8F16D06EB8102336E03EB83076E +:102DD000BB00D362012921DBD5F88C3093ED000ACA +:102DE000D0ED000A30EE600AD3ED010A90ED011A31 +:102DF00070EEC10A93ED021AD0ED021A31EE611A9B +:102E000005EB810020EE000A00EEA00A01EE010AA7 +:102E100080ED050AD36A926A9A1A8263481CF065AB +:102E2000316E0A2902DA0320C5F88800F06D0A28FD +:102E3000C0F23781401EF065706E0A2920D11E2233 +:102E40000A2124F06DF885ED030A1E220A21706E16 +:102E500024F084F885ED040A1E220A21706E24F005 +:102E60009BF885ED050A0020092844DA05EB80016E +:102E700091ED060A38EE008A401CF5E700000000DC +:102E80001E220A2124F03CF8D5F88C1095ED030A97 +:102E9000D0ED000A30EE600AD1ED000A30EE200AD3 +:102EA00085ED030A95ED040AD0ED010A30EE600AC3 +:102EB000D1ED010A30EE200A85ED040A95ED050AF0 +:102EC000D0ED020A30EE600AD1ED020A30EE200A9F +:102ED00085ED050AF06D05EB800090ED050AD0ED5B +:102EE000040A30EE200AD0ED030A30EE200AF0EE9C +:102EF000080A20EE208A95ED030AF2EE040AC0EEDD +:102F0000208A95ED040A80EE209A95ED050AC0EE20 +:102F1000209A306E0A2805D1C5ED008A85ED019A08 +:102F2000C5ED029A00270FE01E22C7F1090109B280 +:102F3000706E23F0E5FF95ED021AD5ED010A95EDCF +:102F4000000A00F0FBF87F1C0A2FEDDBF06A716AC3 +:102F5000726D914249DAA96F002908D128660121D2 +:102F6000A967C5ED008A85ED019AC5ED029AB16A9F +:102F7000B26D91420CDAE96F00290BD1686601212C +:102F8000E967C5ED008A85ED019AC5ED029A01E079 +:102F90000021E967296E411A296732686B6EC31AEE +:102FA0009A420CD2EB6F012B09D10020C5F88000AA +:102FB000C5F8840068670120C5F8880060E08A428F +:102FC0000CD2A96F012909D10020C5F88000C5F8ED +:102FD000840068670220C5F8880051E0A96E401A95 +:102FE00068670320C5F888004AE0C5ED008A85EDD2 +:102FF000019AC5ED029A0021A967E9672967D5F80A +:103000008010002903D1A8660121C5F88010A96E9F +:10301000411A69679FED740A28EE000AB5EE400A6E +:10302000F1EE10FA03DC9FED710A28EE000AD6EDEE +:10303000020AB3EE041A60EE810AF4EE400AF1EEE1 +:1030400010FA08D5D5F88410002907D1E8660121C7 +:10305000C5F8841002E00021C5F884107168A1F55C +:10306000FA71EA6E801A814207D2D5F884000128ED +:1030700003D10420C5F8880002E00320C5F88800C9 +:1030800000200CE006EB80010A6BCA62082805DA12 +:1030900005EB8001CA698A610A6CCA63401C092871 +:1030A000F0DBD5F88800012806D044D3032822D0CD +:1030B00011D304282FD03EE0B06E0121C162296FE8 +:1030C000016302214163002C35D1BDEC048BBDE8C6 +:1030D000F44024F000BDB06E0121C162296F01638C +:1030E00004214163002C26D10221BDEC048BBDE8F4 +:1030F000F44024F0F0BCB06E0121C162696F01633D +:1031000008214163002C16D10221BDEC048BBDE8DF +:10311000F44024F0E0BCB06E0121C162696F01632C +:1031200010214163002C06D10221BDEC048BBDE8C7 +:10313000F44024F0D0BCBDEC048BF1BDD0ED001AFE +:1031400031EEC00AD0ED011A71EEE00AD0ED021A9C +:1031500031EEC11AB5EE400AF1EE10FA01D5B1EE2A +:10316000400AF5EE400AF1EE10FA01D5F1EE600AE0 +:10317000B5EE401AF1EE10FA01D5B1EE411A1C4835 +:10318000D0ED031AB4EE610AF1EE10FA0FD5D0EDCE +:10319000041AF4EE610AF1EE10FA08D5D0ED051A22 +:1031A000B4EE611AF1EE10FA01D5012100E0002120 +:1031B000D0ED061AB4EE610AF1EE10FA10D590EDDA +:1031C000070AF4EE400AF1EE10FA09D590ED080A6C +:1031D000B4EE401AF1EE10FA02D5826D521C8265EF +:1031E000426D89184165704700007A4400007AC436 +:1031F00074D90020000040413333B33E9CF70020D7 +:103200001AA210EE101ADFF860C0F2EC060A61454F +:1032100009DB00EE803A70EE800A83EE200A40F06F +:10322000020010EE101A21F0004CDCF1665C0BD8A5 +:1032300060EE000A20EE203A03EE010A01EEA02A19 +:1032400042EE202A80EE220A400810F0020F18BF3A +:10325000B1EE400A02EB8002D2ED000A30EE200A05 +:1032600028BFB1EE400A7047A430893ED7B3DD3F96 +:103270006AD5033F2B94A93DB82A593F0000803FEF +:10328000000080BF00000000920A063FDB0FC93F2C +:10329000920A863FDB0FC93F920A0640DB0F494086 +:1032A000368D2740F0B443695D88DF880A466C1C80 +:1032B00005FB072707EB6407B7FBF4F7002147F688 +:1032C000FF74A742A8BF274603DA264EB742B8BF0D +:1032D000254FDF801F89BD420BD2072D07DB5F80A2 +:1032E000DD8A35B9058D45F08005058501E06D1C49 +:1032F0005D80DD8A15B1012D05D010E0018DC1F38F +:10330000C01169B910E09E8A9D88022E0CBF2E461E +:1033100005F5967645B1DD88B6B2AE4204D20121FC +:10332000058D45F08005058518889F88461C00FBA3 +:10333000072202EB6602B2FBF6F2A242A8BF2246C7 +:1033400003DA084CA242B8BF074A9A805A899042D1 +:1033500004D20628AEBF1A80401C1880F0BC084674 +:10336000704700000280FFFF0180FFFF38B5044670 +:103370002069818D02688368158B5289406A5B1EC3 +:10338000A3EB5503CB18B3FBF1F501FB153189B263 +:10339000514330F8115029462046FFF783FFA18C96 +:1033A000A94238BF2946A18400B9E58432BDF0B4F2 +:1033B00003695C681B681B8B4569A4EB530605F128 +:1033C0000C031F8937B1022F39D017D3032F6DD0CB +:1033D000F0BC704711B1EE6001209DE0818D0029A5 +:1033E00000F09B80B14280F098800421198190F810 +:1033F000281001F0FE0141F4806154E0E9B1E96870 +:10340000DA89711A9142C0F08880102E32BF0021F3 +:10341000611C01F00F0105EB41014FF6FD72098CB3 +:10342000C184018D11400185E96801630221A982EF +:1034300090F8281041F4807135E000206CE011B95B +:103440005E60032068E05989002966D1818D0029DA +:1034500063D0B14261D20421198190F8281001F0A3 +:10346000FE0141F480610185C1F38001002954D13E +:10347000C1688A8EC2F3C022002A4ED0828C43F6E5 +:1034800099239A4249DBB1F856208B8E62F30803E8 +:103490008B86418D01F47F4141F03301418590F8E5 +:1034A000281041F440710185F0BC704799BB29692F +:1034B000491E41638ABB9A8952B1046B091B491C9E +:1034C00089B28A4204D20021198190F8281001851E +:1034D000A98B2A6912FA81F18E421ED390F8281026 +:1034E00041F440710185042119812A690168EB6862 +:1034F000D21A8B889A4238BF132105D3828CC9888F +:103500008A4234BF14210021428D02F47F421143CC +:103510004185F0BC704702201881F0BC70474169BA +:1035200000228A8290F82820028500220A61CA605F +:103530000A804A80CA808A808284028D42F0020218 +:1035400002850022C28410200A84891C401EFBD1FF +:1035500070470000704780B5022808D0042806D0C4 +:10356000082804D0102802D04FF4803104E040072E +:10357000411300EB91408113882028F06FFD00205B +:1035800002BD80B5B0F5FA6F0DD0B0F57A7F0AD0E4 +:10359000B0F5FA7F07D0FA2805D04FF07A7188206D +:1035A00028F0BBFC03E0C103882028F0B6FC002013 +:1035B00002BD80B529F095F829F0F9FE00280CD05D +:1035C00029F0F5FE59230FF230220FF24421FFF7C4 +:1035D000C1FFBDE8014029F0EABE2AF04EFC0028F8 +:1035E0000CD02AF04AFC5A230FF20C220FF22021B1 +:1035F000FFF7B0FFBDE801402AF03FBC2AF027FEEC +:1036000000280CD02AF023FE5B230FF2EC120FF2FD +:103610000021FFF79FFFBDE801402AF018BE2BF004 +:103620006AFA00280CD02BF066FA5F230FF2C8125A +:103630000FF2DC11FFF78EFFBDE801402BF05BBA03 +:103640002BF0F5FC00280CD02BF0F1FC60230FF2DE +:10365000A8120FF2BC11FFF77DFFBDE801402BF06F +:10366000E6BC2CF0E2FA00280CD02CF0DEFA612344 +:103670000FF284120FF29811FFF76CFFBDE80140C2 +:103680002CF0D3BA0220FFF766FF4FF4FA70FFF771 +:1036900078FF4FF00071882028F0E5FCBDE801407C +:1036A00029F05AB810B54FF47A72002312F016FDC3 +:1036B000044628F037FC204628F045FC204628F038 +:1036C00067FC002010BD80B54FF47A72002312F021 +:1036D00005FD28F04AFC002002BD00002DE9F0475E +:1036E00084B00E4617469A46DDF838804FF0000940 +:1036F000DDE90C45002803D022462B4628F0A1FD29 +:10370000002E0ED0B6F90000009000A8B6F9021005 +:103710004160B6F90410816022462B46494628F0E4 +:103720005BFD002F24D09FED260AD7ED000A60EE46 +:10373000800AFDEEE00ACDED000A00A8D7ED010AEF +:1037400060EE800AFDEEE00AC0ED010AD7ED020A44 +:1037500020EE800ABDEEC00A80ED020A22462B460A +:1037600048F0200128F088FD002801D04FF0200902 +:10377000BAF1000F0DD022462B460021504628F00A +:10378000B7FD002801D1012004E04FF020090020FE +:1037900000E00020002802D028F054FE8146484670 +:1037A00004B0BDE8F08780B50A4600A92AF08AFB7C +:1037B00002BD80B50A4600A92AF0E2FB02BD000066 +:1037C0000000004280B528F0E9FD002002BD80B570 +:1037D00028F0D2FD002002BD80B528F0D3FD0020E6 +:1037E00002BD80B528F0D4FD002002BD2CF0A3BDA1 +:1037F00028F093BB28F032BC696E765F696E6974FD +:103800005F696E76656E73656E73655F6170690082 +:10381000433A5C54656D705C4955535C494B445C5C +:103820005461652D536F6F5C656D6265646465649A +:103830005F7265666572656E63655F666F725F4E27 +:103840006F74655F335C656D6265646465645C4973 +:103850006E76656E53656E73655C6D706C5C696EDB +:1038600076656E73656E73655F6170692E630000C7 +:1038700070B400240025264670C070C0183843601C +:10388000C260017570BC704741522D25642C2564BF +:103890002C25642C25640000F24E000120026000FB +:1038A000002004F2FF0001F5FF11F9FF21FDFF31B7 +:1038B00003FDFF4104FDFF5105FDE243062002BC6C +:1038C00007002004FDFF5C07F5FF10F9FF20FDFF56 +:1038D0003003FDFF4004FDFF5005FDFF6006FDFFC6 +:1038E0007007FDFF8008FDFF9009FDFFA00AFDFFA6 +:1038F000B00BFDFFC00CFDFFD00DFDFFE00EFDFF86 +:10390000F00FFDFF0011FDFF1012FDFF2013FDFF62 +:103910003014FDFF4015FDFF5016FDFF6017FDFF41 +:103920007018FDFF8019FDFF901AFDFFA01BFDFF21 +:10393000B01CFDFFC01DFDFFD01EFDFFE01FFDFF01 +:10394000F020FDFF0022FDFF1023FD7C9C23204181 +:103950001C15310F2B24400A261F3B19352E4A0611 +:10396000221B3715312A46102C25411F3B345003AA +:103970001F1834122E27430D29223E1C38314D09C1 +:10398000251E3A18342D49132F2844223E3753015F +:103990001D16322C201A0B27203C1A362F4B0723DA +:1039A0001C3816322B47112D2642203C355104205D +:1039B00019352C60060E2A233F1D39324E68F00659 +:1039C0007014302945233F385480600D1215271795 +:1039D000292C3E182A2D3F2F4144560820063042FC +:1039E000455747595C6E1C20022E40435514600217 +:1039F00046585B6D08211C60125E70738515272A7E +:103A00003C2C3E41532D3F42544456596B082006EE +:103A100045575A6C5C6E71831C20024355586A14DA +:103A200060025B6D708208211C60127385889A1297 +:103A3000242739293B3E502A3C3F514153566808C0 +:103A4000200642545769596B6E801C200240525523 +:103A500067146002586A6D7F08211C6012708285AD +:103A60009727393C4E3E5053653F51546656686B1C +:103A70007D08200657696C7E6E8083951C20025558 +:103A8000676A7C1460026D7F829408211C10118586 +:103A9000979AAC0000010103030404060607070916 +:103AA000090A01101B0B0B0D0D0E0E101011111336 +:103AB0001314140F0F1010121213131515161618D5 +:103AC000181901600C1A1A1C1C1D1D1F1F20202212 +:103AD0002223231860061B1B1C1C1E1E1F1F1810F0 +:103AE0001525252626282829292424252527272881 +:103AF000282A2A2B2B2D2D2E01A00C2F2F313132CD +:103B00003234343535373738384C2134A012262634 +:103B1000272729292A2A2C2C2D2D2F2F30302B2BEB +:103B20002C2C34A00E35353636383839393B3B3CF1 +:103B30003C3E3E3F3F4C60023A3A3B3B1810154139 +:103B40004142424444454540404141434344444648 +:103B500046474749494A013C0C4B4B4D4D4E4E5050 +:103B600050515153535454A026FE0902BB26F2066D +:103B7000011FF2024728F20A104412C804FE8A0408 +:103B8000A3275210A8F15703F0060F6666663FCDD3 +:103B9000CC4C3F28920104F51BA0A120F15DDA5125 +:103BA0006BD006400000E0071F0000A0C006609C2C +:103BB0007866805DEFC8A0B105F20403C8600E020C +:103BC0000304060708090024F400534E414D591917 +:103BD0009205252254761DD3050003B2D60031FF8D +:103BE000F20E0001120A04520704220511F3FF022B +:103BF0000001F5FF11F51738F40F03400000803F76 +:103C0000FFCAA3BFF986F43EFBB54A3D5D52FF01F2 +:103C1000F50B81F00401FF7F0000CC0C1843470135 +:103C200008920314F63601F560062D431CEBE236CC +:103C30001A3F08F20214246201701333F2C01270AA +:103C4000014110F00E1205060708090A0B0E0C0DB3 +:103C500000000853923C95220123E27815200102CE +:103C6000030404214FA170D201EA120101000000F7 +:103C70000000000000000000000000000000000044 +:103C80000000000000000000000000000000000034 +:103C90000000000000000000000000000000000024 +:103CA0000000000000000000000000000000000014 +:103CB0000000000000000000000000000000000004 +:103CC00000000000000000000000000000000000F4 +:103CD00000000000000000000000000000000000E4 +:103CE00000000000000000000000000000000000D4 +:103CF00000000000000000000000000000000000C4 +:103D000000000000000000000000000000000000B3 +:103D100000000000000000000000000000000000A3 +:103D20000000000000000000000000000000000093 +:103D30000000000000000000000000000000000083 +:103D40000000000000000000000000000000000073 +:103D50000000000000000000000000000000000063 +:103D60000000000000000000000000000000000053 +:103D70000000000000000000000000000000000043 +:103D80000000000000000000000000000000000033 +:103D90000000000000000000000000000000000023 +:103DA0000000000000000000000000000000000013 +:103DB0000000000000000000000000000000000003 +:103DC00000000000000000000000000000000000F3 +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000000000D3 +:103DF00000000000000000000000000000000000C3 +:103E000000000000000000000000000000000000B2 +:103E100000000000000000000000000000000000A2 +:103E20000000000000000000000000000000000092 +:103E30000000000000000000000000000000000082 +:103E40000000000000000000000000000000000072 +:103E50000000000000000000000000000000000062 +:103E60000000000000000000000000000000000052 +:103E70000000000000000000000000000000000042 +:103E80000000000000000000000000000000000032 +:103E90000000000000000000000000000000000022 +:103EA0000000000000000000000000000000000012 +:103EB0000000000000000000000000000000000002 +:103EC00000000000000000000000000000000000F2 +:103ED00000000000000000000000000000000000E2 +:103EE00000000000000000000000000000000000D2 +:103EF00000000000000000000000000000000000C2 +:103F000000000000000000000000000000000000B1 +:103F100000000000000000000000000000000000A1 +:103F20000000000000000000000000000000000091 +:103F30000000000000000000000000000000000081 +:103F40000000000000000000000000000000000071 +:103F50000000000000000000000000000000000061 +:103F60000000000000000000000000000000000051 +:103F70000000000000000000000000000000000041 +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA0000000000000000000000000000000000011 +:103FB0000000000000000000000000000000000001 +:103FC00000000000000000000000000000000000F1 +:103FD00000000000000000000000000000000000E1 +:103FE00000000000000000000000000000000000D1 +:103FF00000000000000000000000000000000000C1 +:1040000000000000000000000000000000000000B0 +:1040100000000000000000000000000000000000A0 +:104020000000000000000000000000000000000090 +:104030000000000000000000000000000000000080 +:104040000000000000000000000000000000000070 +:104050000000000000000000000000000000000060 +:104060000000000000000000000000000000000050 +:104070000000000000000000000000000000000040 +:104080000000000000000000000000000000000030 +:104090000000000000000000000000000000000020 +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C00000000000000000000000000000000000F0 +:1040D00000000000000000000000000000000000E0 +:1040E00000000000000000000000000000000000D0 +:1040F00000000000000000000000000000000000C0 +:1041000000000000000000000000000000000000AF +:10411000000000000000000000000000000000009F +:10412000000000000000000000000000000000008F +:10413000000000000000000000000000000000007F +:10414000000000000000000000000000000000006F +:10415000000000000000000000000000000000005F +:10416000000000000000000000000000000000004F +:10417000000000000000000000000000000000003F +:10418000000000000000000000000000000000002F +:10419000000000000000000000000000000000001F +:1041A000000000000000000000000000000000000F +:1041B00000000000000000000000000000000000FF +:1041C00000000000000000000000000000000000EF +:1041D00000000000000000000000000000000000DF +:1041E00000000000000000000000000000000000CF +:1041F00000000000000000000000000000000000BF +:1042000000000000000000000000000000000000AE +:10421000000000000000000000000000000000009E +:10422000000000000000000000000000000000008E +:10423000000000000000000000000000000000007E +:10424000000000000000000000000000000000006E +:10425000000000000000000000000000000000005E +:10426000000000000000000000000000000000004E +:10427000000000000000000000000000000000003E +:10428000000000000000000000000000000000002E +:10429000000000000000000000000000000000001E +:1042A000000000000000000000000000000000000E +:1042B00000000000000000000000000000000000FE +:1042C00000000000000000000000000000000000EE +:1042D00000000000000000000000000000000000DE +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000000000000000000000000000AD +:10431000000000000000000000000000000000009D +:10432000000000000000000000000000000000008D +:10433000000000000000000000000000000000007D +:10434000000000000000000000000000000000006D +:10435000000000000000000000000000000000005D +:10436000000000000000000000000000000000004D +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:10439000000000000000000000000000000000001D +:1043A000000000000000000000000000000000000D +:1043B00000000000000000000000000000000000FD +:1043C00000000000000000000000000000000000ED +:1043D00000000000000000000000000000000000DD +:1043E00000000000000000000000000000000000CD +:1043F00000000000000000000000000000000000BD +:1044000000000000000000000000000000000000AC +:10441000000000000000000000000000000000009C +:10442000000000000000000000000000000000008C +:10443000000000000000000000000000000000007C +:10444000000000000000000000000000000000006C +:10445000000000000000000000000000000000005C +:10446000000000000000000000000000000000004C +:10447000000000000000000000000000000000003C +:10448000000000000000000000000000000000002C +:10449000000000000000000000000000000000001C +:1044A000000000000000000000000000000000000C +:1044B00000000000000000000000000000000000FC +:1044C00000000000000000000000000000000000EC +:1044D00000000000000000000000000000000000DC +:1044E00000000000000000000000000000000000CC +:1044F00000000000000000000000000000000000BC +:1045000000000000000000000000000000000000AB +:10451000000000000000000000000000000000009B +:10452000000000000000000000000000000000008B +:10453000000000000000000000000000000000007B +:10454000000000000000000000000000000000006B +:10455000000000000000000000000000000000005B +:10456000000000000000000000000000000000004B +:10457000000000000000000000000000000000003B +:10458000000000000000000000000000000000002B +:10459000000000000000000000000000000000001B +:1045A000000000000000000000000000000000000B +:1045B00000000000000000000000000000000000FB +:1045C00000000000000000000000000000000000EB +:1045D00000000000000000000000000000000000DB +:1045E00000000000000000000000000000000000CB +:1045F00000000000000000000000000000000000BB +:1046000000000000000000000000000000000000AA +:10461000000000000000000000000000000000009A +:10462000000000000000000000000000000000008A +:10463000000000000000000000000000000000007A +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:10466000000000000000000000000000000000004A +:10467000000000000000000000000000000000003A +:10468000000000000000000000000000000000002A +:10469000000000000000000000000000000000001A +:1046A000000000000000000000000000000000000A +:1046B00000000000000000000000000000000000FA +:1046C00000000000000000000000000000000000EA +:1046D00000000000000000000000000000000000DA +:1046E00000000000000000000000000000000000CA +:1046F00000000000000000000000000000000000BA +:1047000000000000000000000000000000000000A9 +:104710000000000000000000000000000000000099 +:104720000000000000000000000000000000000089 +:104730000000000000000000000000000000000079 +:104740000000000000000000000000000000000069 +:104750000000000000000000000000000000000059 +:104760000000000000000000000000000000000049 +:104770000000000000000000000000000000000039 +:104780000000000000000000000000000000000029 +:104790000000000000000000000000000000000019 +:1047A0000000000000000000000000000000000009 +:1047B00000000000000000000000000000000000F9 +:1047C00000000000000000000000000000000000E9 +:1047D00000000000000000000000000000000000D9 +:1047E00000000000000000000000000000000000C9 +:1047F00000000000000000000000000000000000B9 +:1048000000000000000000000000000000000000A8 +:104810000000000000000000000000000000000098 +:104820000000000000000000000000000000000088 +:104830000000000000000000000000000000000078 +:104840000000000000000000000000000000000068 +:104850000000000000000000000000000000000058 +:104860000000000000000000000000000000000048 +:104870000000000000000000000000000000000038 +:104880000000000000000000000000000000000028 +:104890000000000000000000000000000000000018 +:1048A0000000000000000000000000000000000008 +:1048B00000000000000000000000000000000000F8 +:1048C00000000000000000000000000000000000E8 +:1048D00000000000000000000000000000000000D8 +:1048E00000000000000000000000000000000000C8 +:1048F00000000000000000000000000000000000B8 +:1049000000000000000000000000000000000000A7 +:104910000000000000000000000000000000000097 +:104920000000000000000000000000000000000087 +:104930000000000000000000000000000000000077 +:104940000000000000000000000000000000000067 +:104950000000000000000000000000000000000057 +:104960000000000000000000000000000000000047 +:104970000000000000000000000000000000000037 +:104980000000000000000000000000000000000027 +:104990000000000000000000000000000000000017 +:1049A0000000000000000000000000000000000007 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000000000000000000000000000E7 +:1049D00000000000000000000000000000000000D7 +:1049E00000000000000000000000000000000000C7 +:1049F00000000000000000000000000000000000B7 +:104A000000000000000000000000000000000000A6 +:104A10000000000000000000000000000000000096 +:104A20000000000000000000000000000000000086 +:104A30000000000000000000000000000000000076 +:104A40000000000000000000000000000000000066 +:104A50000000000000000000000000000000000056 +:104A60000000000000000000000000000000000046 +:104A70000000000000000000000000000000000036 +:104A80000000000000000000000000000000000026 +:104A90000000000000000000000000000000000016 +:104AA0000000000000000000000000000000000006 +:104AB00000000000000000000000000000000000F6 +:104AC00000000000000000000000000000000000E6 +:104AD00000000000000000000000000000000000D6 +:104AE00000000000000000000000000000000000C6 +:104AF00000000000000000000000000000000000B6 +:104B000000000000000000000000000000000000A5 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000000000000085 +:104B30000000000000000000000000000000000075 +:104B40000000000000000000000000000000000065 +:104B50000000000000000000000000000000000055 +:104B60000000000000000000000000000000000045 +:104B70000000000000000000000000000000000035 +:104B80000000000000000000000000000000000025 +:104B90000000000000000000000000000000000015 +:104BA0000000000000000000000000000000000005 +:104BB00000000000000000000000000000000000F5 +:104BC00000000000000000000000000000000000E5 +:104BD00000000000000000000000000000000000D5 +:104BE00000000000000000000000000000000000C5 +:104BF00000000000000000000000000000000000B5 +:104C000000000000000000000000000000000000A4 +:104C10000000000000000000000000000000000094 +:104C20000000000000000000000000000000000084 +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000000000000064 +:104C50000000000000000000000000000000000054 +:104C60000000000000000000000000000000000044 +:104C70000000000000000000000000000000000034 +:104C80000000000000000000000000000000000024 +:104C90000000000000000000000000000000000014 +:104CA0000000000000000000000000000000000004 +:104CB00000000000000000000000000000000000F4 +:104CC00000000000000000000000000000000000E4 +:104CD00000000000000000000000000000000000D4 +:104CE00000000000000000000000000000000000C4 +:104CF00000000000000000000000000000000000B4 +:104D000000000000000000000000000000000000A3 +:104D10000000000000000000000000000000000093 +:104D20000000000000000000000000000000000083 +:104D30000000000000000000000000000000000073 +:104D40000000000000000000000000000000000063 +:104D50000000000000000000000000000000000053 +:104D60000000000000000000000000000000000043 +:104D70000000000000000000000000000000000033 +:104D80000000000000000000000000000000000023 +:104D90000000000000000000000000000000000013 +:104DA0000000000000000000000000000000000003 +:104DB00000000000000000000000000000000000F3 +:104DC00000000000000000000000000000000000E3 +:104DD00000000000000000000000000000000000D3 +:104DE00000000000000000000000000000000000C3 +:104DF00000000000000000000000000000000000B3 +:104E000000000000000000000000000000000000A2 +:104E10000000000000000000000000000000000092 +:104E20000000000000000000000000000000000082 +:104E30000000000000000000000000000000000072 +:104E40000000000000000000000000000000000062 +:104E50000000000000000000000000000000000052 +:104E60000000000000000000000000000000000042 +:104E70000000000000000000000000000000000032 +:104E80000000000000000000000000000000000022 +:104E90000000000000000000000000000000000012 +:104EA0000000000000000000000000000000000002 +:104EB00000000000000000000000000000000000F2 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 +:104EE00000000000000000000000000000000000C2 +:104EF00000000000000000000000000000000000B2 +:104F000000000000000000000000000000000000A1 +:104F10000000000000000000000000000000000091 +:104F20000000000000000000000000000000000081 +:104F30000000000000000000000000000000000071 +:104F40000000000000000000000000000000000061 +:104F50000000000000000000000000000000000051 +:104F60000000000000000000000000000000000041 +:104F70000000000000000000000000000000000031 +:104F80000000000000000000000000000000000021 +:104F90000000000000000000000000000000000011 +:104FA0000000000000000000000000000000000001 +:104FB00000000000000000000000000000000000F1 +:104FC00000000000000000000000000000000000E1 +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF00000000000000000000000000000000000B1 +:1050000000000000000000000000000000000000A0 +:105010000000000000000000000000000000000090 +:105020000000000000000000000000000000000080 +:105030000000000000000000000000000000000070 +:105040000000000000000000000000000000000060 +:105050000000000000000000000000000000000050 +:105060000000000000000000000000000000000040 +:105070000000000000000000000000000000000030 +:105080000000000000000000000000000000000020 +:105090000000000000000000000000000000000010 +:1050A0000000000000000000000000000000000000 +:1050B00000000000000000000000000000000000F0 +:1050C00000000000000000000000000000000000E0 +:1050D00000000000000000000000000000000000D0 +:1050E00000000000000000000000000000000000C0 +:1050F00000000000000000000000000000000000B0 +:10510000000000000000000000000000000000009F +:10511000000000000000000000000000000000008F +:10512000000000000000000000000000000000007F +:10513000000000000000000000000000000000006F +:10514000000000000000000000000000000000005F +:10515000000000000000000000000000000000004F +:10516000000000000000000000000000000000003F +:10517000000000000000000000000000000000002F +:10518000000000000000000000000000000000001F +:10519000000000000000000000000000000000000F +:1051A00000000000000000000000000000000000FF +:1051B00000000000000000000000000000000000EF +:1051C00000000000000000000000000000000000DF +:1051D00000000000000000000000000000000000CF +:1051E00000000000000000000000000000000000BF +:1051F00000000000000000000000000000000000AF +:10520000000000000000000000000000000000009E +:10521000000000000000000000000000000000008E +:10522000000000000000000000000000000000007E +:10523000000000000000000000000000000000006E +:10524000000000000000000000000000000000005E +:10525000000000000000000000000000000000004E +:10526000000000000000000000000000000000003E +:10527000000000000000000000000000000000002E +:10528000000000000000000000000000000000001E +:10529000000000000000000000000000000000000E +:1052A00000000000000000000000000000000000FE +:1052B00000000000000000000000000000000000EE +:1052C00000000000000000000000000000000000DE +:1052D00000000000000000000000000000000000CE +:1052E00000000000000000000000000000000000BE +:1052F00000000000000000000000000000000000AE +:10530000000000000000000000000000000000009D +:10531000000000000000000000000000000000008D +:10532000000000000000000000000000000000007D +:10533000000000000000000000000000000000006D +:10534000000000000000000000000000000000005D +:10535000000000000000000000000000000000004D +:10536000000000000000000000000000000000003D +:10537000000000000000000000000000000000002D +:10538000000000000000000000000000000000001D +:10539000000000000000000000000000000000000D +:1053A00000000000000000000000000000000000FD +:1053B00000000000000000000000000000000000ED +:1053C00000000000000000000000000000000000DD +:1053D00000000000000000000000000000000000CD +:1053E00000000000000000000000000000000000BD +:1053F00000000000000000000000000000000000AD +:10540000000000000000000000000000000000009C +:10541000000000000000000000000000000000008C +:10542000000000000000000000000000000000007C +:10543000000000000000000000000000000000006C +:10544000000000000000000000000000000000005C +:10545000000000000000000000000000000000004C +:10546000000000000000000000000000000000003C +:10547000000000000000000000000000000000002C +:10548000000000000000000000000000000000001C +:10549000000000000000000000000000000000000C +:1054A00000000000000000000000000000000000FC +:1054B00000000000000000000000000000000000EC +:1054C00000000000000000000000000000000000DC +:1054D00000000000000000000000000000000000CC +:1054E00000000000000000000000000000000000BC +:1054F00000000000000000000000000000000000AC +:10550000000000000000000000000000000000009B +:10551000000000000000000000000000000000008B +:10552000000000000000000000000000000000007B +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:10555000000000000000000000000000000000004B +:10556000000000000000000000000000000000003B +:10557000000000000000000000000000000000002B +:10558000000000000000000000000000000000001B +:10559000000000000000000000000000000000000B +:1055A00000000000000000000000000000000000FB +:1055B00000000000000000000000000000000000EB +:1055C00000000000000000000000000000000000DB +:1055D00000000000000000000000000000000000CB +:1055E00000000000000000000000000000000000BB +:1055F00000000000000000000000000000000000AB +:10560000000000000000000000000000000000009A +:10561000000000000000000000000000000000008A +:10562000000000000000000000000000000000007A +:10563000000000000000000000000000000000006A +:10564000000000000000000000000000000000005A +:10565000000000000000000000000000000000004A +:10566000000000000000000000000000000000003A +:10567000000000000000000000000000000000002A +:10568000000000000000000000000000000000001A +:10569000000000000000000000000000000000000A +:1056A00000000000000000000000000000000000FA +:1056B00000000000000000000000000000000000EA +:1056C00000000000000000000000000000000000DA +:1056D00000000000000000000000000000000000CA +:1056E00000000000000000000000000000000000BA +:1056F00000000000000000000000000000000000AA +:105700000000000000000000000000000000000099 +:105710000000000000000000000000000000000089 +:105720000000000000000000000000000000000079 +:105730000000000000000000000000000000000069 +:105740000000000000000000000000000000000059 +:105750000000000000000000000000000000000049 +:105760000000000000000000000000000000000039 +:105770000000000000000000000000000000000029 +:105780000000000000000000000000000000000019 +:105790000000000000000000000000000000000009 +:1057A00000000000000000000000000000000000F9 +:1057B00000000000000000000000000000000000E9 +:1057C00000000000000000000000000000000000D9 +:1057D00000000000000000000000000000000000C9 +:1057E00000000000000000000000000000000000B9 +:1057F00000000000000000000000000000000000A9 +:105800000000000000000000000000000000000098 +:105810000000000000000000000000000000000088 +:105820000000000000000000000000000000000078 +:105830000000000000000000000000000000000068 +:105840000000000000000000000000000000000058 +:105850000000000000000000000000000000000048 +:105860000000000000000000000000000000000038 +:105870000000000000000000000000000000000028 +:105880000000000000000000000000000000000018 +:105890000000000000000000000000000000000008 +:1058A00000000000000000000000000000000000F8 +:1058B00000000000000000000000000000000000E8 +:1058C00000000000000000000000000000000000D8 +:1058D00000000000000000000000000000000000C8 +:1058E00000000000000000000000000000000000B8 +:1058F00000000000000000000000000000000000A8 +:105900000000000000000000000000000000000097 +:105910000000000000000000000000000000000087 +:105920000000000000000000000000000000000077 +:105930000000000000000000000000000000000067 +:105940000000000000000000000000000000000057 +:105950000000000000000000000000000000000047 +:105960000000000000000000000000000000000037 +:105970000000000000000000000000000000000027 +:105980000000000000000000000000000000000017 +:105990000000000000000000000000000000000007 +:1059A00000000000000000000000000000000000F7 +:1059B00000000000000000000000000000000000E7 +:1059C00000000000000000000000000000000000D7 +:1059D00000000000000000000000000000000000C7 +:1059E00000000000000000000000000000000000B7 +:1059F00000000000000000000000000000000000A7 +:105A00000000000000000000000000000000000096 +:105A10000000000000000000000000000000000086 +:105A20000000000000000000000000000000000076 +:105A30000000000000000000000000000000000066 +:105A40000000000000000000000000000000000056 +:105A50000000000000000000000000000000000046 +:105A60000000000000000000000000000000000036 +:105A70000000000000000000000000000000000026 +:105A80000000000000000000000000000000000016 +:105A90000000000000000000000000000000000006 +:105AA00000000000000000000000000000000000F6 +:105AB00000000000000000000000000000000000E6 +:105AC00000000000000000000000000000000000D6 +:105AD00000000000000000000000000000000000C6 +:105AE00000000000000000000000000000000000B6 +:105AF00000000000000000000000000000000000A6 +:105B00000000000000000000000000000000000095 +:105B10000000000000000000000000000000000085 +:105B20000000000000000000000000000000000075 +:105B30000000000000000000000000000000000065 +:105B40000000000000000000000000000000000055 +:105B50000000000000000000000000000000000045 +:105B60000000000000000000000000000000000035 +:105B70000000000000000000000000000000000025 +:105B80000000000000000000000000000000000015 +:105B90000000000000000000000000000000000005 +:105BA00000000000000000000000000000000000F5 +:105BB00000000000000000000000000000000000E5 +:105BC00000000000000000000000000000000000D5 +:105BD00000000000000000000000000000000000C5 +:105BE00000000000000000000000000000000000B5 +:105BF00000000000000000000000000000000000A5 +:105C00000000000000000000000000000000000094 +:105C10000000000000000000000000000000000084 +:105C20000000000000000000000000000000000074 +:105C30000000000000000000000000000000000064 +:105C40000000000000000000000000000000000054 +:105C50000000000000000000000000000000000044 +:105C60000000000000000000000000000000000034 +:105C70000000000000000000000000000000000024 +:105C80000000000000000000000000000000000014 +:105C90000000000000000000000000000000000004 +:105CA00000000000000000000000000000000000F4 +:105CB00000000000000000000000000000000000E4 +:105CC00000000000000000000000000000000000D4 +:105CD00000000000000000000000000000000000C4 +:105CE00000000000000000000000000000000000B4 +:105CF00000000000000000000000000000000000A4 +:105D00000000000000000000000000000000000093 +:105D10000000000000000000000000000000000083 +:105D20000000000000000000000000000000000073 +:105D30000000000000000000000000000000000063 +:105D40000000000000000000000000000000000053 +:105D50000000000000000000000000000000000043 +:105D60000000000000000000000000000000000033 +:105D70000000000000000000000000000000000023 +:105D80000000000000000000000000000000000013 +:105D90000000000000000000000000000000000003 +:105DA00000000000000000000000000000000000F3 +:105DB00000000000000000000000000000000000E3 +:105DC00000000000000000000000000000000000D3 +:105DD00000000000000000000000000000000000C3 +:105DE00000000000000000000000000000000000B3 +:105DF00000000000000000000000000000000000A3 +:105E00000000000000000000000000000000000092 +:105E10000000000000000000000000000000000082 +:105E20000000000000000000000000000000000072 +:105E30000000000000000000000000000000000062 +:105E40000000000000000000000000000000000052 +:105E50000000000000000000000000000000000042 +:105E60000000000000000000000000000000000032 +:105E70000000000000000000000000000000000022 +:105E80000000000000000000000000000000000012 +:105E90000000000000000000000000000000000002 +:105EA00000000000000000000000000000000000F2 +:105EB00000000000000000000000000000000000E2 +:105EC00000000000000000000000000000000000D2 +:105ED00000000000000000000000000000000000C2 +:105EE00000000000000000000000000000000000B2 +:105EF00000000000000000000000000000000000A2 +:105F00000000000000000000000000000000000091 +:105F10000000000000000000000000000000000081 +:105F20000000000000000000000000000000000071 +:105F30000000000000000000000000000000000061 +:105F40000000000000000000000000000000000051 +:105F50000000000000000000000000000000000041 +:105F60000000000000000000000000000000000031 +:105F70000000000000000000000000000000000021 +:105F80000000000000000000000000000000000011 +:105F90000000000000000000000000000000000001 +:105FA00000000000000000000000000000000000F1 +:105FB00000000000000000000000000000000000E1 +:105FC00000000000000000000000000000000000D1 +:105FD00000000000000000000000000000000000C1 +:105FE00000000000000000000000000000000000B1 +:105FF00000000000000000000000000000000000A1 +:106000000000000000000000000000000000000090 +:106010000000000000000000000000000000000080 +:106020000000000000000000000000000000000070 +:106030000000000000000000000000000000000060 +:106040000000000000000000000000000000000050 +:106050000000000000000000000000000000000040 +:106060000000000000000000000000000000000030 +:106070000000000000000000000000000000000020 +:106080000000000000000000000000000000000010 +:106090000000000000000000000000000000000000 +:1060A00000000000000000000000000000000000F0 +:1060B00000000000000000000000000000000000E0 +:1060C00000000000000000000000000000000000D0 +:1060D00000000000000000000000000000000000C0 +:1060E00000000000000000000000000000000000B0 +:1060F00000000000000000000000000000000000A0 +:10610000000000000000000000000000000000008F +:10611000000000000000000000000000000000007F +:10612000000000000000000000000000000000006F +:10613000000000000000000000000000000000005F +:10614000000000000000000000000000000000004F +:10615000000000000000000000000000000000003F +:10616000000000000000000000000000000000002F +:10617000000000000000000000000000000000001F +:10618000000000000000000000000000000000000F +:1061900000000000000000000000000000000000FF +:1061A00000000000000000000000000000000000EF +:1061B00000000000000000000000000000000000DF +:1061C00000000000000000000000000000000000CF +:1061D00000000000000000000000000000000000BF +:1061E00000000000000000000000000000000000AF +:1061F000000000000000000000000000000000009F +:10620000000000000000000000000000000000008E +:10621000000000000000000000000000000000007E +:10622000000000000000000000000000000000006E +:10623000000000000000000000000000000000005E +:10624000000000000000000000000000000000004E +:10625000000000000000000000000000000000003E +:10626000000000000000000000000000000000002E +:10627000000000000000000000000000000000001E +:10628000000000000000000000000000000000000E +:1062900000000000000000000000000000000000FE +:1062A00000000000000000000000000000000000EE +:1062B00000000000000000000000000000000000DE +:1062C00000000000000000000000000000000000CE +:1062D00000000000000000000000000000000000BE +:1062E00000000000000000000000000000000000AE +:1062F000000000000000000000000000000000009E +:10630000000000000000000000000000000000008D +:10631000000000000000000000000000000000007D +:10632000000000000000000000000000000000006D +:10633000000000000000000000000000000000005D +:10634000000000000000000000000000000000004D +:10635000000000000000000000000000000000003D +:10636000000000000000000000000000000000002D +:10637000000000000000000000000000000000001D +:10638000000000000000000000000000000000000D +:1063900000000000000000000000000000000000FD +:1063A00000000000000000000000000000000000ED +:1063B00000000000000000000000000000000000DD +:1063C00000000000000000000000000000000000CD +:1063D00000000000000000000000000000000000BD +:1063E00000000000000000000000000000000000AD +:1063F000000000000000000000000000000000009D +:10640000000000000000000000000000000000008C +:10641000000000000000000000000000000000007C +:10642000000000000000000000000000000000006C +:10643000000000000000000000000000000000005C +:10644000000000000000000000000000000000004C +:10645000000000000000000000000000000000003C +:10646000000000000000000000000000000000002C +:10647000000000000000000000000000000000001C +:10648000000000000000000000000000000000000C +:1064900000000000000000000000000000000000FC +:1064A00000000000000000000000000000000000EC +:1064B00000000000000000000000000000000000DC +:1064C00000000000000000000000000000000000CC +:1064D00000000000000000000000000000000000BC +:1064E00000000000000000000000000000000000AC +:1064F000000000000000000000000000000000009C +:10650000000000000000000000000000000000008B +:10651000000000000000000000000000000000007B +:10652000000000000000000000000000000000006B +:10653000000000000000000000000000000000005B +:10654000000000000000000000000000000000004B +:10655000000000000000000000000000000000003B +:10656000000000000000000000000000000000002B +:10657000000000000000000000000000000000001B +:10658000000000000000000000000000000000000B +:1065900000000000000000000000000000000000FB +:1065A00000000000000000000000000000000000EB +:1065B00000000000000000000000000000000000DB +:1065C00000000000000000000000000000000000CB +:1065D00000000000000000000000000000000000BB +:1065E00000000000000000000000000000000000AB +:1065F000000000000000000000000000000000009B +:10660000000000000000000000000000000000008A +:10661000000000000000000000000000000000007A +:10662000000000000000000000000000000000006A +:10663000000000000000000000000000000000005A +:10664000000000000000000000000000000000004A +:10665000000000000000000000000000000000003A +:10666000000000000000000000000000000000002A +:10667000000000000000000000000000000000001A +:10668000000000000000000000000000000000000A +:1066900000000000000000000000000000000000FA +:1066A00000000000000000000000000000000000EA +:1066B00000000000000000000000000000000000DA +:1066C00000000000000000000000000000000000CA +:1066D00000000000000000000000000000000000BA +:1066E00000000000000000000000000000000000AA +:1066F000000000000000000000000000000000009A +:106700000000000000000000000000000000000089 +:106710000000000000000000000000000000000079 +:106720000000000000000000000000000000000069 +:106730000000000000000000000000000000000059 +:106740000000000000000000000000000000000049 +:106750000000000000000000000000000000000039 +:106760000000000000000000000000000000000029 +:106770000000000000000000000000000000000019 +:106780000000000000000000000000000000000009 +:1067900000000000000000000000000000000000F9 +:1067A00000000000000000000000000000000000E9 +:1067B00000000000000000000000000000000000D9 +:1067C00000000000000000000000000000000000C9 +:1067D00000000000000000000000000000000000B9 +:1067E00000000000000000000000000000000000A9 +:1067F0000000000000000000000000000000000099 +:106800000000000000000000000000000000000088 +:106810000000000000000000000000000000000078 +:106820000000000000000000000000000000000068 +:106830000000000000000000000000000000000058 +:106840000000000000000000000000000000000048 +:106850000000000000000000000000000000000038 +:106860000000000000000000000000000000000028 +:106870000000000000000000000000000000000018 +:106880000000000000000000000000000000000008 +:1068900000000000000000000000000000000000F8 +:1068A00000000000000000000000000000000000E8 +:1068B00000000000000000000000000000000000D8 +:1068C00000000000000000000000000000000000C8 +:1068D00000000000000000000000000000000000B8 +:1068E00000000000000000000000000000000000A8 +:1068F0000000000000000000000000000000000098 +:106900000000000000000000000000000000000087 +:106910000000000000000000000000000000000077 +:106920000000000000000000000000000000000067 +:106930000000000000000000000000000000000057 +:106940000000000000000000000000000000000047 +:106950000000000000000000000000000000000037 +:106960000000000000000000000000000000000027 +:106970000000000000000000000000000000000017 +:106980000000000000000000000000000000000007 +:1069900000000000000000000000000000000000F7 +:1069A00000000000000000000000000000000000E7 +:1069B00000000000000000000000000000000000D7 +:1069C00000000000000000000000000000000000C7 +:1069D00000000000000000000000000000000000B7 +:1069E00000000000000000000000000000000000A7 +:1069F0000000000000000000000000000000000097 +:106A00000000000000000000000000000000000086 +:106A10000000000000000000000000000000000076 +:106A20000000000000000000000000000000000066 +:106A30000000000000000000000000000000000056 +:106A40000000000000000000000000000000000046 +:106A50000000000000000000000000000000000036 +:106A60000000000000000000000000000000000026 +:106A70000000000000000000000000000000000016 +:106A80000000000000000000000000000000000006 +:106A900000000000000000000000000000000000F6 +:106AA00000000000000000000000000000000000E6 +:106AB00000000000000000000000000000000000D6 +:106AC00000000000000000000000000000000000C6 +:106AD00000000000000000000000000000000000B6 +:106AE00000000000000000000000000000000000A6 +:106AF0000000000000000000000000000000000096 +:106B00000000000000000000000000000000000085 +:106B10000000000000000000000000000000000075 +:106B20000000000000000000000000000000000065 +:106B30000000000000000000000000000000000055 +:106B40000000000000000000000000000000000045 +:106B50000000000000000000000000000000000035 +:106B60000000000000000000000000000000000025 +:106B70000000000000000000000000000000000015 +:106B80000000000000000000000000000000000005 +:106B900000000000000000000000000000000000F5 +:106BA00000000000000000000000000000000000E5 +:106BB00000000000000000000000000000000000D5 +:106BC00000000000000000000000000000000000C5 +:106BD00000000000000000000000000000000000B5 +:106BE00000000000000000000000000000000000A5 +:106BF0000000000000000000000000000000000095 +:106C00000000000000000000000000000000000084 +:106C10000000000000000000000000000000000074 +:106C20000000000000000000000000000000000064 +:106C30000000000000000000000000000000000054 +:106C40000000000000000000000000000000000044 +:106C50000000000000000000000000000000000034 +:106C60000000000000000000000000000000000024 +:106C70000000000000000000000000000000000014 +:106C80000000000000000000000000000000000004 +:106C900000000000000000000000000000000000F4 +:106CA00000000000000000000000000000000000E4 +:106CB00000000000000000000000000000000000D4 +:106CC00000000000000000000000000000000000C4 +:106CD00000000000000000000000000000000000B4 +:106CE00000000000000000000000000000000000A4 +:106CF0000000000000000000000000000000000094 +:106D00000000000000000000000000000000000083 +:106D10000000000000000000000000000000000073 +:106D20000000000000000000000000000000000063 +:106D30000000000000000000000000000000000053 +:106D40000000000000000000000000000000000043 +:106D50000000000000000000000000000000000033 +:106D60000000000000000000000000000000000023 +:106D70000000000000000000000000000000000013 +:106D80000000000000000000000000000000000003 +:106D900000000000000000000000000000000000F3 +:106DA00000000000000000000000000000000000E3 +:106DB00000000000000000000000000000000000D3 +:106DC00000000000000000000000000000000000C3 +:106DD00000000000000000000000000000000000B3 +:106DE00000000000000000000000000000000000A3 +:106DF0000000000000000000000000000000000093 +:106E00000000000000000000000000000000000082 +:106E10000000000000000000000000000000000072 +:106E20000000000000000000000000000000000062 +:106E30000000000000000000000000000000000052 +:106E40000000000000000000000000000000000042 +:106E50000000000000000000000000000000000032 +:106E60000000000000000000000000000000000022 +:106E70000000000000000000000000000000000012 +:106E80000000000000000000000000000000000002 +:106E900000000000000000000000000000000000F2 +:106EA00000000000000000000000000000000000E2 +:106EB00000000000000000000000000000000000D2 +:106EC00000000000000000000000000000000000C2 +:106ED00000000000000000000000000000000000B2 +:106EE00000000000000000000000000000000000A2 +:106EF0000000000000000000000000000000000092 +:106F00000000000000000000000000000000000081 +:106F10000000000000000000000000000000000071 +:106F20000000000000000000000000000000000061 +:106F30000000000000000000000000000000000051 +:106F40000000000000000000000000000000000041 +:106F50000000000000000000000000000000000031 +:106F60000000000000000000000000000000000021 +:106F70000000000000000000000000000000000011 +:106F80000000000000000000000000000000000001 +:106F900000000000000000000000000000000000F1 +:106FA00000000000000000000000000000000000E1 +:106FB00000000000000000000000000000000000D1 +:106FC00000000000000000000000000000000000C1 +:106FD00000000000000000000000000000000000B1 +:106FE00000000000000000000000000000000000A1 +:106FF0000000000000000000000000000000000091 +:107000000000000000000000000000000000000080 +:107010000000000000000000000000000000000070 +:107020000000000000000000000000000000000060 +:107030000000000000000000000000000000000050 +:107040000000000000000000000000000000000040 +:107050000000000000000000000000000000000030 +:107060000000000000000000000000000000000020 +:107070000000000000000000000000000000000010 +:107080000000000000000000000000000000000000 +:1070900000000000000000000000000000000000F0 +:1070A00000000000000000000000000000000000E0 +:1070B00000000000000000000000000000000000D0 +:1070C00000000000000000000000000000000000C0 +:1070D00000000000000000000000000000000000B0 +:1070E00000000000000000000000000000000000A0 +:1070F0000000000000000000000000000000000090 +:10710000000000000000000000000000000000007F +:10711000000000000000000000000000000000006F +:10712000000000000000000000000000000000005F +:10713000000000000000000000000000000000004F +:10714000000000000000000000000000000000003F +:10715000000000000000000000000000000000002F +:10716000000000000000000000000000000000001F +:10717000000000000000000000000000000000000F +:1071800000000000000000000000000000000000FF +:1071900000000000000000000000000000000000EF +:1071A00000000000000000000000000000000000DF +:1071B00000000000000000000000000000000000CF +:1071C00000000000000000000000000000000000BF +:1071D00000000000000000000000000000000000AF +:1071E000000000000000000000000000000000009F +:1071F000000000000000000000000000000000008F +:10720000000000000000000000000000000000007E +:10721000000000000000000000000000000000006E +:10722000000000000000000000000000000000005E +:10723000000000000000000000000000000000004E +:10724000000000000000000000000000000000003E +:10725000000000000000000000000000000000002E +:10726000000000000000000000000000000000001E +:10727000000000000000000000000000000000000E +:1072800000000000000000000000000000000000FE +:1072900000000000000000000000000000000000EE +:1072A00000000000000000000000000000000000DE +:1072B00000000000000000000000000000000000CE +:1072C00000000000000000000000000000000000BE +:1072D00000000000000000000000000000000000AE +:1072E000000000000000000000000000000000009E +:1072F000000000000000000000000000000000008E +:10730000000000000000000000000000000000007D +:10731000000000000000000000000000000000006D +:10732000000000000000000000000000000000005D +:10733000000000000000000000000000000000004D +:10734000000000000000000000000000000000003D +:10735000000000000000000000000000000000002D +:10736000000000000000000000000000000000001D +:10737000000000000000000000000000000000000D +:1073800000000000000000000000000000000000FD +:1073900000000000000000000000000000000000ED +:1073A00000000000000000000000000000000000DD +:1073B00000000000000000000000000000000000CD +:1073C00000000000000000000000000000000000BD +:1073D00000000000000000000000000000000000AD +:1073E000000000000000000000000000000000009D +:1073F000000000000000000000000000000000008D +:10740000000000000000000000000000000000007C +:10741000000000000000000000000000000000006C +:10742000000000000000000000000000000000005C +:10743000000000000000000000000000000000004C +:10744000000000000000000000000000000000003C +:10745000000000000000000000000000000000002C +:10746000000000000000000000000000000000001C +:10747000000000000000000000000000000000000C +:1074800000000000000000000000000000000000FC +:1074900000000000000000000000000000000000EC +:1074A00000000000000000000000000000000000DC +:1074B00000000000000000000000000000000000CC +:1074C00000000000000000000000000000000000BC +:1074D00000000000000000000000000000000000AC +:1074E000000000000000000000000000000000009C +:1074F000000000000000000000000000000000008C +:10750000000000000000000000000000000000007B +:10751000000000000000000000000000000000006B +:10752000000000000000000000000000000000005B +:10753000000000000000000000000000000000004B +:10754000000000000000000000000000000000003B +:10755000000000000000000000000000000000002B +:10756000000000000000000000000000000000001B +:10757000000000000000000000000000000000000B +:1075800000000000000000000000000000000000FB +:1075900000000000000000000000000000000000EB +:1075A00000000000000000000000000000000000DB +:1075B00000000000000000000000000000000000CB +:1075C00000000000000000000000000000000000BB +:1075D00000000000000000000000000000000000AB +:1075E000000000000000000000000000000000009B +:1075F000000000000000000000000000000000008B +:10760000000000000000000000000000000000007A +:10761000000000000000000000000000000000006A +:10762000000000000000000000000000000000005A +:10763000000000000000000000000000000000004A +:10764000000000000000000000000000000000003A +:10765000000000000000000000000000000000002A +:10766000000000000000000000000000000000001A +:10767000000000000000000000000000000000000A +:1076800000000000000000000000000000000000FA +:1076900000000000000000000000000000000000EA +:1076A00000000000000000000000000000000000DA +:1076B00000000000000000000000000000000000CA +:1076C00000000000000000000000000000000000BA +:1076D00000000000000000000000000000000000AA +:1076E000000000000000000000000000000000009A +:1076F000000000000000000000000000000000008A +:107700000000000000000000000000000000000079 +:107710000000000000000000000000000000000069 +:107720000000000000000000000000000000000059 +:107730000000000000000000000000000000000049 +:107740000000000000000000000000000000000039 +:107750000000000000000000000000000000000029 +:107760000000000000000000000000000000000019 +:107770000000000000000000000000000000000009 +:1077800000000000000000000000000000000000F9 +:1077900000000000000000000000000000000000E9 +:1077A00000000000000000000000000000000000D9 +:1077B00000000000000000000000000000000000C9 +:1077C00000000000000000000000000000000000B9 +:1077D00000000000000000000000000000000000A9 +:1077E0000000000000000000000000000000000099 +:1077F0000000000000000000000000000000000089 +:107800000000000000000000000000000000000078 +:107810000000000000000000000000000000000068 +:107820000000000000000000000000000000000058 +:107830000000000000000000000000000000000048 +:107840000000000000000000000000000000000038 +:107850000000000000000000000000000000000028 +:107860000000000000000000000000000000000018 +:107870000000000000000000000000000000000008 +:1078800000000000000000000000000000000000F8 +:1078900000000000000000000000000000000000E8 +:1078A00000000000000000000000000000000000D8 +:1078B00000000000000000000000000000000000C8 +:1078C00000000000000000000000000000000000B8 +:1078D00000000000000000000000000000000000A8 +:1078E0000000000000000000000000000000000098 +:1078F0000000000000000000000000000000000088 +:107900000000000000000000000000000000000077 +:107910000000000000000000000000000000000067 +:107920000000000000000000000000000000000057 +:107930000000000000000000000000000000000047 +:107940000000000000000000000000000000000037 +:107950000000000000000000000000000000000027 +:107960000000000000000000000000000000000017 +:107970000000000000000000000000000000000007 +:1079800000000000000000000000000000000000F7 +:1079900000000000000000000000000000000000E7 +:1079A00000000000000000000000000000000000D7 +:1079B00000000000000000000000000000000000C7 +:1079C00000000000000000000000000000000000B7 +:1079D00000000000000000000000000000000000A7 +:1079E0000000000000000000000000000000000097 +:1079F0000000000000000000000000000000000087 +:107A00000000000000000000000000000000000076 +:107A10000000000000000000000000000000000066 +:107A20000000000000000000000000000000000056 +:107A30000000000000000000000000000000000046 +:107A40000000000000000000000000000000000036 +:107A50000000000000000000000000000000000026 +:107A60000000000000000000000000000000000016 +:107A70000000000000000000000000000000000006 +:107A800000000000000000000000000000000000F6 +:107A900000000000000000000000000000000000E6 +:107AA00000000000000000000000000000000000D6 +:107AB00000000000000000000000000000000000C6 +:107AC00000000000000000000000000000000000B6 +:107AD00000000000000000000000000000000000A6 +:107AE0000000000000000000000000000000000096 +:107AF0000000000000000000000000000000000086 +:107B00000000000000000000000000000000000075 +:107B10000000000000000000000000000000000065 +:107B20000000000000000000000000000000000055 +:107B30000000000000000000000000000000000045 +:107B40000000000000000000000000000000000035 +:107B50000000000000000000000000000000000025 +:107B60000000000000000000000000000000000015 +:107B70000000000000000000000000000000000005 +:107B800000000000000000000000000000000000F5 +:107B900000000000000000000000000000000000E5 +:107BA00000000000000000000000000000000000D5 +:107BB00000000000000000000000000000000000C5 +:107BC00000000000000000000000000000000000B5 +:107BD00000000000000000000000000000000000A5 +:107BE0000000000000000000000000000000000095 +:107BF0000000000000000000000000000000000085 +:107C00000000000000000000000000000000000074 +:107C10000000000000000000000000000000000064 +:107C20000000000000000000000000000000000054 +:107C30000000000000000000000000000000000044 +:107C40000000000000000000000000000000000034 +:107C50000000000000000000000000000000000024 +:107C60000000000000000000000000000000000014 +:107C70000000000000000000000000000000000004 +:107C800000000000000000000000000000000000F4 +:107C900000000000000000000000000000000000E4 +:107CA00000000000000000000000000000000000D4 +:107CB00000000000000000000000000000000000C4 +:107CC00000000000000000000000000000000000B4 +:107CD00000000000000000000000000000000000A4 +:107CE0000000000000000000000000000000000094 +:107CF0000000000000000000000000000000000084 +:107D00000000000000000000000000000000000073 +:107D10000000000000000000000000000000000063 +:107D20000000000000000000000000000000000053 +:107D30000000000000000000000000000000000043 +:107D40000000000000000000000000000000000033 +:107D50000000000000000000000000000000000023 +:107D60000000000000000000000000000000000013 +:107D70000000000000000000000000000000000003 +:107D800000000000000000000000000000000000F3 +:107D900000000000000000000000000000000000E3 +:107DA00000000000000000000000000000000000D3 +:107DB00000000000000000000000000000000000C3 +:107DC00000000000000000000000000000000000B3 +:107DD00000000000000000000000000000000000A3 +:107DE0000000000000000000000000000000000093 +:107DF0000000000000000000000000000000000083 +:107E00000000000000000000000000000000000072 +:107E10000000000000000000000000000000000062 +:107E20000000000000000000000000000000000052 +:107E30000000000000000000000000000000000042 +:107E40000000000000000000000000000000000032 +:107E50000000000000000000000000000000000022 +:107E60000000000000000000000000000000000012 +:107E70000000000000000000000000000000000002 +:107E800000000000000000000000000000000000F2 +:107E900000000000000000000000000000000000E2 +:107EA00000000000000000000000000000000000D2 +:107EB00000000000000000000000000000000000C2 +:107EC00000000000000000000000000000000000B2 +:107ED00000000000000000000000000000000000A2 +:107EE0000000000000000000000000000000000092 +:107EF0000000000000000000000000000000000082 +:107F00000000000000000000000000000000000071 +:107F10000000000000000000000000000000000061 +:107F20000000000000000000000000000000000051 +:107F30000000000000000000000000000000000041 +:107F40000000000000000000000000000000000031 +:107F50000000000000000000000000000000000021 +:107F60000000000000000000000000000000000011 +:107F70000000000000000000000000000000000001 +:107F800000000000000000000000000000000000F1 +:107F900000000000000000000000000000000000E1 +:107FA00000000000000000000000000000000000D1 +:107FB00000000000000000000000000000000000C1 +:107FC00000000000000000000000000000000000B1 +:107FD00000000000000000000000000000000000A1 +:107FE0000000000000000000000000000000000091 +:107FF0000000000000000000000000000000000081 +:108000000000000000000000000000000000000070 +:108010000000000000000000000000000000000060 +:108020000000000000000000000000000000000050 +:108030000000000000000000000000000000000040 +:108040000000000000000000000000000000000030 +:108050000000000000000000000000000000000020 +:108060000000000000000000000000000000000010 +:108070000000000000000000000000000000000000 +:1080800000000000000000000000000000000000F0 +:1080900000000000000000000000000000000000E0 +:1080A00000000000000000000000000000000000D0 +:1080B00000000000000000000000000000000000C0 +:1080C00000000000000000000000000000000000B0 +:1080D00000000000000000000000000000000000A0 +:1080E0000000000000000000000000000000000090 +:1080F0000000000000000000000000000000000080 +:10810000000000000000000000000000000000006F +:10811000000000000000000000000000000000005F +:10812000000000000000000000000000000000004F +:10813000000000000000000000000000000000003F +:10814000000000000000000000000000000000002F +:10815000000000000000000000000000000000001F +:10816000000000000000000000000000000000000F +:1081700000000000000000000000000000000000FF +:1081800000000000000000000000000000000000EF +:1081900000000000000000000000000000000000DF +:1081A00000000000000000000000000000000000CF +:1081B00000000000000000000000000000000000BF +:1081C00000000000000000000000000000000000AF +:1081D000000000000000000000000000000000009F +:1081E000000000000000000000000000000000008F +:1081F000000000000000000000000000000000007F +:10820000000000000000000000000000000000006E +:10821000000000000000000000000000000000005E +:10822000000000000000000000000000000000004E +:10823000000000000000000000000000000000003E +:10824000000000000000000000000000000000002E +:10825000000000000000000000000000000000001E +:10826000000000000000000000000000000000000E +:1082700000000000000000000000000000000000FE +:1082800000000000000000000000000000000000EE +:1082900000000000000000000000000000000000DE +:1082A00000000000000000000000000000000000CE +:1082B00000000000000000000000000000000000BE +:1082C00000000000000000000000000000000000AE +:1082D000000000000000000000000000000000009E +:1082E000000000000000000000000000000000008E +:1082F000000000000000000000000000000000007E +:10830000000000000000000000000000000000006D +:10831000000000000000000000000000000000005D +:10832000000000000000000000000000000000004D +:10833000000000000000000000000000000000003D +:10834000000000000000000000000000000000002D +:10835000000000000000000000000000000000001D +:10836000000000000000000000000000000000000D +:1083700000000000000000000000000000000000FD +:1083800000000000000000000000000000000000ED +:1083900000000000000000000000000000000000DD +:1083A00000000000000000000000000000000000CD +:1083B00000000000000000000000000000000000BD +:1083C00000000000000000000000000000000000AD +:1083D000000000000000000000000000000000009D +:1083E000000000000000000000000000000000008D +:1083F000000000000000000000000000000000007D +:10840000000000000000000000000000000000006C +:10841000000000000000000000000000000000005C +:10842000000000000000000000000000000000004C +:10843000000000000000000000000000000000003C +:10844000000000000000000000000000000000002C +:10845000000000000000000000000000000000001C +:10846000000000000000000000000000000000000C +:1084700000000000000000000000000000000000FC +:1084800000000000000000000000000000000000EC +:1084900000000000000000000000000000000000DC +:1084A00000000000000000000000000000000000CC +:1084B00000000000000000000000000000000000BC +:1084C00000000000000000000000000000000000AC +:1084D000000000000000000000000000000000009C +:1084E000000000000000000000000000000000008C +:1084F000000000000000000000000000000000007C +:10850000000000000000000000000000000000006B +:10851000000000000000000000000000000000005B +:10852000000000000000000000000000000000004B +:10853000000000000000000000000000000000003B +:10854000000000000000000000000000000000002B +:10855000000000000000000000000000000000001B +:10856000000000000000000000000000000000000B +:1085700000000000000000000000000000000000FB +:1085800000000000000000000000000000000000EB +:1085900000000000000000000000000000000000DB +:1085A00000000000000000000000000000000000CB +:1085B00000000000000000000000000000000000BB +:1085C00000000000000000000000000000000000AB +:1085D000000000000000000000000000000000009B +:1085E000000000000000000000000000000000008B +:1085F000000000000000000000000000000000007B +:10860000000000000000000000000000000000006A +:10861000000000000000000000000000000000005A +:10862000000000000000000000000000000000004A +:10863000000000000000000000000000000000003A +:10864000000000000000000000000000000000002A +:10865000000000000000000000000000000000001A +:10866000000000000000000000000000000000000A +:1086700000000000000000000000000000000000FA +:1086800000000000000000000000000000000000EA +:1086900000000000000000000000000000000000DA +:1086A00000000000000000000000000000000000CA +:1086B00000000000000000000000000000000000BA +:1086C00000000000000000000000000000000000AA +:1086D000000000000000000000000000000000009A +:1086E000000000000000000000000000000000008A +:1086F000000000000000000000000000000000007A +:108700000000000000000000000000000000000069 +:108710000000000000000000000000000000000059 +:108720000000000000000000000000000000000049 +:108730000000000000000000000000000000000039 +:108740000000000000000000000000000000000029 +:108750000000000000000000000000000000000019 +:108760000000000000000000000000000000000009 +:1087700000000000000000000000000000000000F9 +:1087800000000000000000000000000000000000E9 +:1087900000000000000000000000000000000000D9 +:1087A00000000000000000000000000000000000C9 +:1087B00000000000000000000000000000000000B9 +:1087C00000000000000000000000000000000000A9 +:1087D0000000000000000000000000000000000099 +:1087E0000000000000000000000000000000000089 +:1087F0000000000000000000000000000000000079 +:108800000000000000000000000000000000000068 +:108810000000000000000000000000000000000058 +:108820000000000000000000000000000000000048 +:108830000000000000000000000000000000000038 +:108840000000000000000000000000000000000028 +:108850000000000000000000000000000000000018 +:108860000000000000000000000000000000000008 +:1088700000000000000000000000000000000000F8 +:1088800000000000000000000000000000000000E8 +:1088900000000000000000000000000000000000D8 +:1088A00000000000000000000000000000000000C8 +:1088B00000000000000000000000000000000000B8 +:1088C00000000000000000000000000000000000A8 +:1088D0000000000000000000000000000000000098 +:1088E0000000000000000000000000000000000088 +:1088F0000000000000000000000000000000000078 +:108900000000000000000000000000000000000067 +:108910000000000000000000000000000000000057 +:108920000000000000000000000000000000000047 +:108930000000000000000000000000000000000037 +:108940000000000000000000000000000000000027 +:108950000000000000000000000000000000000017 +:108960000000000000000000000000000000000007 +:1089700000000000000000000000000000000000F7 +:1089800000000000000000000000000000000000E7 +:1089900000000000000000000000000000000000D7 +:1089A00000000000000000000000000000000000C7 +:1089B00000000000000000000000000000000000B7 +:1089C00000000000000000000000000000000000A7 +:1089D0000000000000000000000000000000000097 +:1089E0000000000000000000000000000000000087 +:1089F0000000000000000000000000000000000077 +:108A00000000000000000000000000000000000066 +:108A10000000000000000000000000000000000056 +:108A20000000000000000000000000000000000046 +:108A30000000000000000000000000000000000036 +:108A40000000000000000000000000000000000026 +:108A50000000000000000000000000000000000016 +:108A60000000000000000000000000000000000006 +:108A700000000000000000000000000000000000F6 +:108A800000000000000000000000000000000000E6 +:108A900000000000000000000000000000000000D6 +:108AA00000000000000000000000000000000000C6 +:108AB00000000000000000000000000000000000B6 +:108AC00000000000000000000000000000000000A6 +:108AD0000000000000000000000000000000000096 +:108AE0000000000000000000000000000000000086 +:108AF0000000000000000000000000000000000076 +:108B00000000000000000000000000000000000065 +:108B10000000000000000000000000000000000055 +:108B20000000000000000000000000000000000045 +:108B30000000000000000000000000000000000035 +:108B40000000000000000000000000000000000025 +:108B50000000000000000000000000000000000015 +:108B60000000000000000000000000000000000005 +:108B700000000000000000000000000000000000F5 +:108B800000000000000000000000000000000000E5 +:108B900000000000000000000000000000000000D5 +:108BA00000000000000000000000000000000000C5 +:108BB00000000000000000000000000000000000B5 +:108BC00000000000000000000000000000000000A5 +:108BD0000000000000000000000000000000000095 +:108BE0000000000000000000000000000000000085 +:108BF0000000000000000000000000000000000075 +:108C00000000000000000000000000000000000064 +:108C10000000000000000000000000000000000054 +:108C20000000000000000000000000000000000044 +:108C30000000000000000000000000000000000034 +:108C40000000000000000000000000000000000024 +:108C50000000000000000000000000000000000014 +:108C60000000000000000000000000000000000004 +:108C700000000000000000000000000000000000F4 +:108C800000000000000000000000000000000000E4 +:108C900000000000000000000000000000000000D4 +:108CA00000000000000000000000000000000000C4 +:108CB00000000000000000000000000000000000B4 +:108CC00000000000000000000000000000000000A4 +:108CD0000000000000000000000000000000000094 +:108CE0000000000000000000000000000000000084 +:108CF0000000000000000000000000000000000074 +:108D00000000000000000000000000000000000063 +:108D10000000000000000000000000000000000053 +:108D20000000000000000000000000000000000043 +:108D30000000000000000000000000000000000033 +:108D40000000000000000000000000000000000023 +:108D50000000000000000000000000000000000013 +:108D60000000000000000000000000000000000003 +:108D700000000000000000000000000000000000F3 +:108D800000000000000000000000000000000000E3 +:108D900000000000000000000000000000000000D3 +:108DA00000000000000000000000000000000000C3 +:108DB00000000000000000000000000000000000B3 +:108DC00000000000000000000000000000000000A3 +:108DD0000000000000000000000000000000000093 +:108DE0000000000000000000000000000000000083 +:108DF0000000000000000000000000000000000073 +:108E00000000000000000000000000000000000062 +:108E10000000000000000000000000000000000052 +:108E20000000000000000000000000000000000042 +:108E30000000000000000000000000000000000032 +:108E40000000000000000000000000000000000022 +:108E50000000000000000000000000000000000012 +:108E60000000000000000000000000000000000002 +:108E700000000000000000000000000000000000F2 +:108E800000000000000000000000000000000000E2 +:108E900000000000000000000000000000000000D2 +:108EA00000000000000000000000000000000000C2 +:108EB00000000000000000000000000000000000B2 +:108EC00000000000000000000000000000000000A2 +:108ED0000000000000000000000000000000000092 +:108EE0000000000000000000000000000000000082 +:108EF0000000000000000000000000000000000072 +:108F00000000000000000000000000000000000061 +:108F10000000000000000000000000000000000051 +:108F20000000000000000000000000000000000041 +:108F30000000000000000000000000000000000031 +:108F40000000000000000000000000000000000021 +:108F50000000000000000000000000000000000011 +:108F60000000000000000000000000000000000001 +:108F700000000000000000000000000000000000F1 +:108F800000000000000000000000000000000000E1 +:108F900000000000000000000000000000000000D1 +:108FA00000000000000000000000000000000000C1 +:108FB00000000000000000000000000000000000B1 +:108FC00000000000000000000000000000000000A1 +:108FD0000000000000000000000000000000000091 +:108FE0000000000000000000000000000000000081 +:108FF0000000000000000000000000000000000071 +:109000000000000000000000000000000000000060 +:109010000000000000000000000000000000000050 +:109020000000000000000000000000000000000040 +:109030000000000000000000000000000000000030 +:109040000000000000000000000000000000000020 +:109050000000000000000000000000000000000010 +:109060000000000000000000000000000000000000 +:1090700000000000000000000000000000000000F0 +:1090800000000000000000000000000000000000E0 +:1090900000000000000000000000000000000000D0 +:1090A00000000000000000000000000000000000C0 +:1090B00000000000000000000000000000000000B0 +:1090C00000000000000000000000000000000000A0 +:1090D0000000000000000000000000000000000090 +:1090E0000000000000000000000000000000000080 +:1090F0000000000000000000000000000000000070 +:10910000000000000000000000000000000000005F +:10911000000000000000000000000000000000004F +:10912000000000000000000000000000000000003F +:10913000000000000000000000000000000000002F +:10914000000000000000000000000000000000001F +:10915000000000000000000000000000000000000F +:1091600000000000000000000000000000000000FF +:1091700000000000000000000000000000000000EF +:1091800000000000000000000000000000000000DF +:1091900000000000000000000000000000000000CF +:1091A00000000000000000000000000000000000BF +:1091B00000000000000000000000000000000000AF +:1091C000000000000000000000000000000000009F +:1091D000000000000000000000000000000000008F +:1091E000000000000000000000000000000000007F +:1091F000000000000000000000000000000000006F +:10920000000000000000000000000000000000005E +:10921000000000000000000000000000000000004E +:10922000000000000000000000000000000000003E +:10923000000000000000000000000000000000002E +:10924000000000000000000000000000000000001E +:10925000000000000000000000000000000000000E +:1092600000000000000000000000000000000000FE +:1092700000000000000000000000000000000000EE +:1092800000000000000000000000000000000000DE +:1092900000000000000000000000000000000000CE +:1092A00000000000000000000000000000000000BE +:1092B00000000000000000000000000000000000AE +:1092C000000000000000000000000000000000009E +:1092D000000000000000000000000000000000008E +:1092E000000000000000000000000000000000007E +:1092F000000000000000000000000000000000006E +:10930000000000000000000000000000000000005D +:10931000000000000000000000000000000000004D +:10932000000000000000000000000000000000003D +:10933000000000000000000000000000000000002D +:10934000000000000000000000000000000000001D +:10935000000000000000000000000000000000000D +:1093600000000000000000000000000000000000FD +:1093700000000000000000000000000000000000ED +:1093800000000000000000000000000000000000DD +:1093900000000000000000000000000000000000CD +:1093A00000000000000000000000000000000000BD +:1093B00000000000000000000000000000000000AD +:1093C000000000000000000000000000000000009D +:1093D000000000000000000000000000000000008D +:1093E000000000000000000000000000000000007D +:1093F000000000000000000000000000000000006D +:10940000000000000000000000000000000000005C +:10941000000000000000000000000000000000004C +:10942000000000000000000000000000000000003C +:10943000000000000000000000000000000000002C +:10944000000000000000000000000000000000001C +:10945000000000000000000000000000000000000C +:1094600000000000000000000000000000000000FC +:1094700000000000000000000000000000000000EC +:1094800000000000000000000000000000000000DC +:1094900000000000000000000000000000000000CC +:1094A00000000000000000000000000000000000BC +:1094B00000000000000000000000000000000000AC +:1094C000000000000000000000000000000000009C +:1094D000000000000000000000000000000000008C +:1094E000000000000000000000000000000000007C +:1094F000000000000000000000000000000000006C +:10950000000000000000000000000000000000005B +:10951000000000000000000000000000000000004B +:10952000000000000000000000000000000000003B +:10953000000000000000000000000000000000002B +:10954000000000000000000000000000000000001B +:10955000000000000000000000000000000000000B +:1095600000000000000000000000000000000000FB +:1095700000000000000000000000000000000000EB +:1095800000000000000000000000000000000000DB +:1095900000000000000000000000000000000000CB +:1095A00000000000000000000000000000000000BB +:1095B00000000000000000000000000000000000AB +:1095C000000000000000000000000000000000009B +:1095D000000000000000000000000000000000008B +:1095E000000000000000000000000000000000007B +:1095F000000000000000000000000000000000006B +:10960000000000000000000000000000000000005A +:10961000000000000000000000000000000000004A +:10962000000000000000000000000000000000003A +:10963000000000000000000000000000000000002A +:10964000000000000000000000000000000000001A +:10965000000000000000000000000000000000000A +:1096600000000000000000000000000000000000FA +:1096700000000000000000000000000000000000EA +:1096800000000000000000000000000000000000DA +:1096900000000000000000000000000000000000CA +:1096A00000000000000000000000000000000000BA +:1096B00000000000000000000000000000000000AA +:1096C000000000000000000000000000000000009A +:1096D000000000000000000000000000000000008A +:1096E000000000000000000000000000000000007A +:1096F000000000000000000000000000000000006A +:109700000000000000000000000000000000000059 +:109710000000000000000000000000000000000049 +:109720000000000000000000000000000000000039 +:109730000000000000000000000000000000000029 +:109740000000000000000000000000000000000019 +:109750000000000000000000000000000000000009 +:1097600000000000000000000000000000000000F9 +:1097700000000000000000000000000000000000E9 +:1097800000000000000000000000000000000000D9 +:1097900000000000000000000000000000000000C9 +:1097A00000000000000000000000000000000000B9 +:1097B00000000000000000000000000000000000A9 +:1097C0000000000000000000000000000000000099 +:1097D0000000000000000000000000000000000089 +:1097E0000000000000000000000000000000000079 +:1097F0000000000000000000000000000000000069 +:109800000000000000000000000000000000000058 +:109810000000000000000000000000000000000048 +:109820000000000000000000000000000000000038 +:109830000000000000000000000000000000000028 +:109840000000000000000000000000000000000018 +:109850000000000000000000000000000000000008 +:1098600000000000000000000000000000000000F8 +:1098700000000000000000000000000000000000E8 +:1098800000000000000000000000000000000000D8 +:1098900000000000000000000000000000000000C8 +:1098A00000000000000000000000000000000000B8 +:1098B00000000000000000000000000000000000A8 +:1098C0000000000000000000000000000000000098 +:1098D0000000000000000000000000000000000088 +:1098E0000000000000000000000000000000000078 +:1098F0000000000000000000000000000000000068 +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:109920000000000000000000000000000000000037 +:109930000000000000000000000000000000000027 +:109940000000000000000000000000000000000017 +:109950000000000000000000000000000000000007 +:1099600000000000000000000000000000000000F7 +:1099700000000000000000000000000000000000E7 +:1099800000000000000000000000000000000000D7 +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B00000000000000000000000000000000000A7 +:1099C0000000000000000000000000000000000097 +:1099D0000000000000000000000000000000000087 +:1099E0000000000000000000000000000000000077 +:1099F0000000000000000000000000000000000067 +:109A00000000000000000000000000000000000056 +:109A10000000000000000000000000000000000046 +:109A20000000000000000000000000000000000036 +:109A30000000000000000000000000000000000026 +:109A40000000000000000000000000000000000016 +:109A50000000000000000000000000000000000006 +:109A600000000000000000000000000000000000F6 +:109A700000000000000000000000000000000000E6 +:109A800000000000000000000000000000000000D6 +:109A900000000000000000000000000000000000C6 +:109AA00000000000000000000000000000000000B6 +:109AB00000000000000000000000000000000000A6 +:109AC0000000000000000000000000000000000096 +:109AD0000000000000000000000000000000000086 +:109AE0000000000000000000000000000000000076 +:109AF0000000000000000000000000000000000066 +:109B00000000000000000000000000000000000055 +:109B10000000000000000000000000000000000045 +:109B20000000000000000000000000000000000035 +:109B30000000000000000000000000000000000025 +:109B40000000000000000000000000000000000015 +:109B50000000000000000000000000000000000005 +:109B600000000000000000000000000000000000F5 +:109B700000000000000000000000000000000000E5 +:109B800000000000000000000000000000000000D5 +:109B900000000000000000000000000000000000C5 +:109BA00000000000000000000000000000000000B5 +:109BB00000000000000000000000000000000000A5 +:109BC0000000000000000000000000000000000095 +:109BD0000000000000000000000000000000000085 +:109BE0000000000000000000000000000000000075 +:109BF0000000000000000000000000000000000065 +:109C00000000000000000000000000000000000054 +:109C10000000000000000000000000000000000044 +:109C20000000000000000000000000000000000034 +:109C30000000000000000000000000000000000024 +:109C40000000000000000000000000000000000014 +:109C50000000000000000000000000000000000004 +:109C600000000000000000000000000000000000F4 +:109C700000000000000000000000000000000000E4 +:109C800000000000000000000000000000000000D4 +:109C900000000000000000000000000000000000C4 +:109CA00000000000000000000000000000000000B4 +:109CB00000000000000000000000000000000000A4 +:109CC0000000000000000000000000000000000094 +:109CD0000000000000000000000000000000000084 +:109CE0000000000000000000000000000000000074 +:109CF0000000000000000000000000000000000064 +:109D00000000000000000000000000000000000053 +:109D10000000000000000000000000000000000043 +:109D20000000000000000000000000000000000033 +:109D30000000000000000000000000000000000023 +:109D40000000000000000000000000000000000013 +:109D50000000000000000000000000000000000003 +:109D600000000000000000000000000000000000F3 +:109D700000000000000000000000000000000000E3 +:109D800000000000000000000000000000000000D3 +:109D900000000000000000000000000000000000C3 +:109DA00000000000000000000000000000000000B3 +:109DB00000000000000000000000000000000000A3 +:109DC0000000000000000000000000000000000093 +:109DD0000000000000000000000000000000000083 +:109DE0000000000000000000000000000000000073 +:109DF0000000000000000000000000000000000063 +:109E00000000000000000000000000000000000052 +:109E10000000000000000000000000000000000042 +:109E20000000000000000000000000000000000032 +:109E30000000000000000000000000000000000022 +:109E40000000000000000000000000000000000012 +:109E50000000000000000000000000000000000002 +:109E600000000000000000000000000000000000F2 +:109E700000000000000000000000000000000000E2 +:109E800000000000000000000000000000000000D2 +:109E900000000000000000000000000000000000C2 +:109EA00000000000000000000000000000000000B2 +:109EB00000000000000000000000000000000000A2 +:109EC0000000000000000000000000000000000092 +:109ED0000000000000000000000000000000000082 +:109EE0000000000000000000000000000000000072 +:109EF0000000000000000000000000000000000062 +:109F00000000000000000000000000000000000051 +:109F10000000000000000000000000000000000041 +:109F20000000000000000000000000000000000031 +:109F30000000000000000000000000000000000021 +:109F40000000000000000000000000000000000011 +:109F50000000000000000000000000000000000001 +:109F600000000000000000000000000000000000F1 +:109F700000000000000000000000000000000000E1 +:109F800000000000000000000000000000000000D1 +:109F900000000000000000000000000000000000C1 +:109FA00000000000000000000000000000000000B1 +:109FB00000000000000000000000000000000000A1 +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE0000000000000000000000000000000000071 +:109FF0000000000000000000000000000000000061 +:10A000000000000000000000000000000000000050 +:10A010000000000000000000000000000000000040 +:10A020000000000000000000000000000000000030 +:10A030000000000000000000000000000000000020 +:10A040000000000000000000000000000000000010 +:10A050000000000000000000000000000000000000 +:10A0600000000000000000000000000000000000F0 +:10A0700000000000000000000000000000000000E0 +:10A0800000000000000000000000000000000000D0 +:10A0900000000000000000000000000000000000C0 +:10A0A00000000000000000000000000000000000B0 +:10A0B00000000000000000000000000000000000A0 +:10A0C0000000000000000000000000000000000090 +:10A0D0000000000000000000000000000000000080 +:10A0E0000000000000000000000000000000000070 +:10A0F0000000000000000000000000000000000060 +:10A10000000000000000000000000000000000004F +:10A11000000000000000000000000000000000003F +:10A12000000000000000000000000000000000002F +:10A13000000000000000000000000000000000001F +:10A14000000000000000000000000000000000000F +:10A1500000000000000000000000000000000000FF +:10A1600000000000000000000000000000000000EF +:10A1700000000000000000000000000000000000DF +:10A1800000000000000000000000000000000000CF +:10A1900000000000000000000000000000000000BF +:10A1A00000000000000000000000000000000000AF +:10A1B000000000000000000000000000000000009F +:10A1C000000000000000000000000000000000008F +:10A1D000000000000000000000000000000000007F +:10A1E000000000000000000000000000000000006F +:10A1F000000000000000000000000000000000005F +:10A20000000000000000000000000000000000004E +:10A21000000000000000000000000000000000003E +:10A22000000000000000000000000000000000002E +:10A23000000000000000000000000000000000001E +:10A24000000000000000000000000000000000000E +:10A2500000000000000000000000000000000000FE +:10A2600000000000000000000000000000000000EE +:10A2700000000000000000000000000000000000DE +:10A2800000000000000000000000000000000000CE +:10A2900000000000000000000000000000000000BE +:10A2A00000000000000000000000000000000000AE +:10A2B000000000000000000000000000000000009E +:10A2C000000000000000000000000000000000008E +:10A2D000000000000000000000000000000000007E +:10A2E000000000000000000000000000000000006E +:10A2F000000000000000000000000000000000005E +:10A30000000000000000000000000000000000004D +:10A31000000000000000000000000000000000003D +:10A32000000000000000000000000000000000002D +:10A33000000000000000000000000000000000001D +:10A34000000000000000000000000000000000000D +:10A3500000000000000000000000000000000000FD +:10A3600000000000000000000000000000000000ED +:10A3700000000000000000000000000000000000DD +:10A3800000000000000000000000000000000000CD +:10A3900000000000000000000000000000000000BD +:10A3A00000000000000000000000000000000000AD +:10A3B000000000000000000000000000000000009D +:10A3C000000000000000000000000000000000008D +:10A3D000000000000000000000000000000000007D +:10A3E000000000000000000000000000000000006D +:10A3F000000000000000000000000000000000005D +:10A40000000000000000000000000000000000004C +:10A41000000000000000000000000000000000003C +:10A42000000000000000000000000000000000002C +:10A43000000000000000000000000000000000001C +:10A44000000000000000000000000000000000000C +:10A4500000000000000000000000000000000000FC +:10A4600000000000000000000000000000000000EC +:10A4700000000000000000000000000000000000DC +:10A4800000000000000000000000000000000000CC +:10A4900000000000000000000000000000000000BC +:10A4A00000000000000000000000000000000000AC +:10A4B000000000000000000000000000000000009C +:10A4C000000000000000000000000000000000008C +:10A4D000000000000000000000000000000000007C +:10A4E000000000000000000000000000000000006C +:10A4F000000000000000000000000000000000005C +:10A50000000000000000000000000000000000004B +:10A51000000000000000000000000000000000003B +:10A52000000000000000000000000000000000002B +:10A53000000000000000000000000000000000001B +:10A54000000000000000000000000000000000000B +:10A5500000000000000000000000000000000000FB +:10A5600000000000000000000000000000000000EB +:10A5700000000000000000000000000000000000DB +:10A5800000000000000000000000000000000000CB +:10A5900000000000000000000000000000000000BB +:10A5A00000000000000000000000000000000000AB +:10A5B000000000000000000000000000000000009B +:10A5C000000000000000000000000000000000008B +:10A5D000000000000000000000000000000000007B +:10A5E000000000000000000000000000000000006B +:10A5F000000000000000000000000000000000005B +:10A60000000000000000000000000000000000004A +:10A61000000000000000000000000000000000003A +:10A62000000000000000000000000000000000002A +:10A63000000000000000000000000000000000001A +:10A64000000000000000000000000000000000000A +:10A6500000000000000000000000000000000000FA +:10A6600000000000000000000000000000000000EA +:10A6700000000000000000000000000000000000DA +:10A6800000000000000000000000000000000000CA +:10A6900000000000000000000000000000000000BA +:10A6A00000000000000000000000000000000000AA +:10A6B000000000000000000000000000000000009A +:10A6C000000000000000000000000000000000008A +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000000000006A +:10A6F000000000000000000000000000000000005A +:10A700000000000000000000000000000000000049 +:10A710000000000000000000000000000000000039 +:10A720000000000000000000000000000000000029 +:10A730000000000000000000000000000000000019 +:10A740000000000000000000000000000000000009 +:10A7500000000000000000000000000000000000F9 +:10A7600000000000000000000000000000000000E9 +:10A7700000000000000000000000000000000000D9 +:10A7800000000000000000000000000000000000C9 +:10A7900000000000000000000000000000000000B9 +:10A7A00000000000000000000000000000000000A9 +:10A7B0000000000000000000000000000000000099 +:10A7C0000000000000000000000000000000000089 +:10A7D0000000000000000000000000000000000079 +:10A7E0000000000000000000000000000000000069 +:10A7F0000000000000000000000000000000000059 +:10A800000000000000000000000000000000000048 +:10A810000000000000000000000000000000000038 +:10A820000000000000000000000000000000000028 +:10A830000000000000000000000000000000000018 +:10A840000000000000000000000000000000000008 +:10A8500000000000000000000000000000000000F8 +:10A8600000000000000000000000000000000000E8 +:10A8700000000000000000000000000000000000D8 +:10A8800000000000000000000000000000000000C8 +:10A8900000000000000000000000000000000000B8 +:10A8A00000000000000000000000000000000000A8 +:10A8B0000000000000000000000000000000000098 +:10A8C0000000000000000000000000000000000088 +:10A8D0000000000000000000000000000000000078 +:10A8E0000000000000000000000000000000000068 +:10A8F0000000000000000000000000000000000058 +:10A900000000000000000000000000000000000047 +:10A910000000000000000000000000000000000037 +:10A920000000000000000000000000000000000027 +:10A930000000000000000000000000000000000017 +:10A940000000000000000000000000000000000007 +:10A9500000000000000000000000000000000000F7 +:10A9600000000000000000000000000000000000E7 +:10A9700000000000000000000000000000000000D7 +:10A9800000000000000000000000000000000000C7 +:10A9900000000000000000000000000000000000B7 +:10A9A00000000000000000000000000000000000A7 +:10A9B0000000000000000000000000000000000097 +:10A9C0000000000000000000000000000000000087 +:10A9D0000000000000000000000000000000000077 +:10A9E0000000000000000000000000000000000067 +:10A9F0000000000000000000000000000000000057 +:10AA00000000000000000000000000000000000046 +:10AA10000000000000000000000000000000000036 +:10AA20000000000000000000000000000000000026 +:10AA30000000000000000000000000000000000016 +:10AA40000000000000000000000000000000000006 +:10AA500000000000000000000000000000000000F6 +:10AA600000000000000000000000000000000000E6 +:10AA700000000000000000000000000000000000D6 +:10AA800000000000000000000000000000000000C6 +:10AA900000000000000000000000000000000000B6 +:10AAA00000000000000000000000000000000000A6 +:10AAB0000000000000000000000000000000000096 +:10AAC0000000000000000000000000000000000086 +:10AAD0000000000000000000000000000000000076 +:10AAE0000000000000000000000000000000000066 +:10AAF0000000000000000000000000000000000056 +:10AB00000000000000000000000000000000000045 +:10AB10000000000000000000000000000000000035 +:10AB20000000000000000000000000000000000025 +:10AB30000000000000000000000000000000000015 +:10AB40000000000000000000000000000000000005 +:10AB500000000000000000000000000000000000F5 +:10AB600000000000000000000000000000000000E5 +:10AB700000000000000000000000000000000000D5 +:10AB800000000000000000000000000000000000C5 +:10AB900000000000000000000000000000000000B5 +:10ABA00000000000000000000000000000000000A5 +:10ABB0000000000000000000000000000000000095 +:10ABC0000000000000000000000000000000000085 +:10ABD0000000000000000000000000000000000075 +:10ABE0000000000000000000000000000000000065 +:10ABF0000000000000000000000000000000000055 +:10AC00000000000000000000000000000000000044 +:10AC10000000000000000000000000000000000034 +:10AC20000000000000000000000000000000000024 +:10AC30000000000000000000000000000000000014 +:10AC40000000000000000000000000000000000004 +:10AC500000000000000000000000000000000000F4 +:10AC600000000000000000000000000000000000E4 +:10AC700000000000000000000000000000000000D4 +:10AC800000000000000000000000000000000000C4 +:10AC900000000000000000000000000000000000B4 +:10ACA00000000000000000000000000000000000A4 +:10ACB0000000000000000000000000000000000094 +:10ACC0000000000000000000000000000000000084 +:10ACD0000000000000000000000000000000000074 +:10ACE0000000000000000000000000000000000064 +:10ACF0000000000000000000000000000000000054 +:10AD00000000000000000000000000000000000043 +:10AD10000000000000000000000000000000000033 +:10AD20000000000000000000000000000000000023 +:10AD30000000000000000000000000000000000013 +:10AD40000000000000000000000000000000000003 +:10AD500000000000000000000000000000000000F3 +:10AD600000000000000000000000000000000000E3 +:10AD700000000000000000000000000000000000D3 +:10AD800000000000000000000000000000000000C3 +:10AD900000000000000000000000000000000000B3 +:10ADA00000000000000000000000000000000000A3 +:10ADB0000000000000000000000000000000000093 +:10ADC0000000000000000000000000000000000083 +:10ADD0000000000000000000000000000000000073 +:10ADE0000000000000000000000000000000000063 +:10ADF0000000000000000000000000000000000053 +:10AE00000000000000000000000000000000000042 +:10AE10000000000000000000000000000000000032 +:10AE20000000000000000000000000000000000022 +:10AE30000000000000000000000000000000000012 +:10AE40000000000000000000000000000000000002 +:10AE500000000000000000000000000000000000F2 +:10AE600000000000000000000000000000000000E2 +:10AE700000000000000000000000000000000000D2 +:10AE800000000000000000000000000000000000C2 +:10AE900000000000000000000000000000000000B2 +:10AEA00000000000000000000000000000000000A2 +:10AEB0000000000000000000000000000000000092 +:10AEC0000000000000000000000000000000000082 +:10AED0000000000000000000000000000000000072 +:10AEE0000000000000000000000000000000000062 +:10AEF0000000000000000000000000000000000052 +:10AF00000000000000000000000000000000000041 +:10AF10000000000000000000000000000000000031 +:10AF20000000000000000000000000000000000021 +:10AF30000000000000000000000000000000000011 +:10AF40000000000000000000000000000000000001 +:10AF500000000000000000000000000000000000F1 +:10AF600000000000000000000000000000000000E1 +:10AF700000000000000000000000000000000000D1 +:10AF800000000000000000000000000000000000C1 +:10AF900000000000000000000000000000000000B1 +:10AFA00000000000000000000000000000000000A1 +:10AFB0000000000000000000000000000000000091 +:10AFC0000000000000000000000000000000000081 +:10AFD0000000000000000000000000000000000071 +:10AFE0000000000000000000000000000000000061 +:10AFF0000000000000000000000000000000000051 +:10B000000000000000000000000000000000000040 +:10B010000000000000000000000000000000000030 +:10B020000000000000000000000000000000000020 +:10B030000000000000000000000000000000000010 +:10B040000000000000000000000000000000000000 +:10B0500000000000000000000000000000000000F0 +:10B0600000000000000000000000000000000000E0 +:10B0700000000000000000000000000000000000D0 +:10B0800000000000000000000000000000000000C0 +:10B0900000000000000000000000000000000000B0 +:10B0A00000000000000000000000000000000000A0 +:10B0B0000000000000000000000000000000000090 +:10B0C0000000000000000000000000000000000080 +:10B0D0000000000000000000000000000000000070 +:10B0E0000000000000000000000000000000000060 +:10B0F0000000000000000000000000000000000050 +:10B10000000000000000000000000000000000003F +:10B11000000000000000000000000000000000002F +:10B12000000000000000000000000000000000001F +:10B13000000000000000000000000000000000000F +:10B1400000000000000000000000000000000000FF +:10B1500000000000000000000000000000000000EF +:10B1600000000000000000000000000000000000DF +:10B1700000000000000000000000000000000000CF +:10B1800000000000000000000000000000000000BF +:10B1900000000000000000000000000000000000AF +:10B1A000000000000000000000000000000000009F +:10B1B000000000000000000000000000000000008F +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E000000000000000000000000000000000005F +:10B1F000000000000000000000000000000000004F +:10B20000000000000000000000000000000000003E +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000000000001E +:10B23000000000000000000000000000000000000E +:10B2400000000000000000000000000000000000FE +:10B2500000000000000000000000000000000000EE +:10B2600000000000000000000000000000000000DE +:10B2700000000000000000000000000000000000CE +:10B2800000000000000000000000000000000000BE +:10B2900000000000000000000000000000000000AE +:10B2A000000000000000000000000000000000009E +:10B2B000000000000000000000000000000000008E +:10B2C000000000000000000000000000000000007E +:10B2D000000000000000000000000000000000006E +:10B2E000000000000000000000000000000000005E +:10B2F000000000000000000000000000000000004E +:10B30000000000000000000000000000000000003D +:10B31000000000000000000000000000000000002D +:10B32000000000000000000000000000000000001D +:10B33000000000000000000000000000000000000D +:10B3400000000000000000000000000000000000FD +:10B3500000000000000000000000000000000000ED +:10B3600000000000000000000000000000000000DD +:10B3700000000000000000000000000000000000CD +:10B3800000000000000000000000000000000000BD +:10B3900000000000000000000000000000000000AD +:10B3A000000000000000000000000000000000009D +:10B3B000000000000000000000000000000000008D +:10B3C000000000000000000000000000000000007D +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000000000005D +:10B3F000000000000000000000000000000000004D +:10B40000000000000000000000000000000000003C +:10B41000000000000000000000000000000000002C +:10B42000000000000000000000000000000000001C +:10B43000000000000000000000000000000000000C +:10B4400000000000000000000000000000000000FC +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B4700000000000000000000000000000000000CC +:10B4800000000000000000000000000000000000BC +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B000000000000000000000000000000000008C +:10B4C000000000000000000000000000000000007C +:10B4D000000000000000000000000000000000006C +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000000000004C +:10B50000000000000000000000000000000000003B +:10B51000000000000000000000000000000000002B +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B5400000000000000000000000000000000000FB +:10B5500000000000000000000000000000000000EB +:10B5600000000000000000000000000000000000DB +:10B5700000000000000000000000000000000000CB +:10B5800000000000000000000000000000000000BB +:10B5900000000000000000000000000000000000AB +:10B5A000000000000000000000000000000000009B +:10B5B000000000000000000000000000000000008B +:10B5C000000000000000000000000000000000007B +:10B5D000000000000000000000000000000000006B +:10B5E000000000000000000000000000000000005B +:10B5F000000000000000000000000000000000004B +:10B60000000000000000000000000000000000003A +:10B61000000000000000000000000000000000002A +:10B62000000000000000000000000000000000001A +:10B63000000000000000000000000000000000000A +:10B6400000000000000000000000000000000000FA +:10B6500000000000000000000000000000000000EA +:10B6600000000000000000000000000000000000DA +:10B6700000000000000000000000000000000000CA +:10B6800000000000000000000000000000000000BA +:10B6900000000000000000000000000000000000AA +:10B6A000000000000000000000000000000000009A +:10B6B000000000000000000000000000000000008A +:10B6C000000000000000000000000000000000007A +:10B6D000000000000000000000000000000000006A +:10B6E000000000000000000000000000000000005A +:10B6F000000000000000000000000000000000004A +:10B700000000000000000000000000000000000039 +:10B710000000000000000000000000000000000029 +:10B720000000000000000000000000000000000019 +:10B730000000000000000000000000000000000009 +:10B7400000000000000000000000000000000000F9 +:10B7500000000000000000000000000000000000E9 +:10B7600000000000000000000000000000000000D9 +:10B7700000000000000000000000000000000000C9 +:10B7800000000000000000000000000000000000B9 +:10B7900000000000000000000000000000000000A9 +:10B7A0000000000000000000000000000000000099 +:10B7B0000000000000000000000000000000000089 +:10B7C0000000000000000000000000000000000079 +:10B7D0000000000000000000000000000000000069 +:10B7E0000000000000000000000000000000000059 +:10B7F0000000000000000000000000000000000049 +:10B800000000000000000000000000000000000038 +:10B810000000000000000000000000000000000028 +:10B820000000000000000000000000000000000018 +:10B830000000000000000000000000000000000008 +:10B8400000000000000000000000000000000000F8 +:10B8500000000000000000000000000000000000E8 +:10B8600000000000000000000000000000000000D8 +:10B8700000000000000000000000000000000000C8 +:10B8800000000000000000000000000000000000B8 +:10B8900000000000000000000000000000000000A8 +:10B8A0000000000000000000000000000000000098 +:10B8B0000000000000000000000000000000000088 +:10B8C0000000000000000000000000000000000078 +:10B8D0000000000000000000000000000000000068 +:10B8E0000000000000000000000000000000000058 +:10B8F0000000000000000000000000000000000048 +:10B900000000000000000000000000000000000037 +:10B910000000000000000000000000000000000027 +:10B920000000000000000000000000000000000017 +:10B930000000000000000000000000000000000007 +:10B9400000000000000000000000000000000000F7 +:10B9500000000000000000000000000000000000E7 +:10B9600000000000000000000000000000000000D7 +:10B9700000000000000000000000000000000000C7 +:10B9800000000000000000000000000000000000B7 +:10B9900000000000000000000000000000000000A7 +:10B9A0000000000000000000000000000000000097 +:10B9B0000000000000000000000000000000000087 +:10B9C0000000000000000000000000000000000077 +:10B9D0000000000000000000000000000000000067 +:10B9E0000000000000000000000000000000000057 +:10B9F0000000000000000000000000000000000047 +:10BA00000000000000000000000000000000000036 +:10BA10000000000000000000000000000000000026 +:10BA20000000000000000000000000000000000016 +:10BA30000000000000000000000000000000000006 +:10BA400000000000000000000000000000000000F6 +:10BA500000000000000000000000000000000000E6 +:10BA600000000000000000000000000000000000D6 +:10BA700000000000000000000000000000000000C6 +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000000000000A6 +:10BAA0000000000000000000000000000000000096 +:10BAB0000000000000000000000000000000000086 +:10BAC0000000000000000000000000000000000076 +:10BAD0000000000000000000000000000000000066 +:10BAE0000000000000000000000000000000000056 +:10BAF0000000000000000000000000000000000046 +:10BB00000000000000000000000000000000000035 +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000000000000015 +:10BB30000000000000000000000000000000000005 +:10BB400000000000000000000000000000000000F5 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB700000000000000000000000000000000000C5 +:10BB800000000000000000000000000000000000B5 +:10BB900000000000000000000000000000000000A5 +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000000000000085 +:10BBC0000000000000000000000000000000000075 +:10BBD0000000000000000000000000000000000065 +:10BBE0000000000000000000000000000000000055 +:10BBF0000000000000000000000000000000000045 +:10BC00000000000000000000000000000000000034 +:10BC10000000000000000000000000000000000024 +:10BC20000000000000000000000000000000000014 +:10BC30000000000000000000000000000000000004 +:10BC400000000000000000000000000000000000F4 +:10BC500000000000000000000000000000000000E4 +:10BC600000000000000000000000000000000000D4 +:10BC700000000000000000000000000000000000C4 +:10BC800000000000000000000000000000000000B4 +:10BC900000000000000000000000000000000000A4 +:10BCA0000000000000000000000000000000000094 +:10BCB0000000000000000000000000000000000084 +:10BCC0000000000000000000000000000000000074 +:10BCD0000000000000000000000000000000000064 +:10BCE0000000000000000000000000000000000054 +:10BCF0000000000000000000000000000000000044 +:10BD00000000000000000000000000000000000033 +:10BD10000000000000000000000000000000000023 +:10BD20000000000000000000000000000000000013 +:10BD30000000000000000000000000000000000003 +:10BD400000000000000000000000000000000000F3 +:10BD500000000000000000000000000000000000E3 +:10BD600000000000000000000000000000000000D3 +:10BD700000000000000000000000000000000000C3 +:10BD800000000000000000000000000000000000B3 +:10BD900000000000000000000000000000000000A3 +:10BDA0000000000000000000000000000000000093 +:10BDB0000000000000000000000000000000000083 +:10BDC0000000000000000000000000000000000073 +:10BDD0000000000000000000000000000000000063 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000000000000043 +:10BE00000000000000000000000000000000000032 +:10BE10000000000000000000000000000000000022 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE400000000000000000000000000000000000F2 +:10BE500000000000000000000000000000000000E2 +:10BE600000000000000000000000000000000000D2 +:10BE700000000000000000000000000000000000C2 +:10BE800000000000000000000000000000000000B2 +:10BE900000000000000000000000000000000000A2 +:10BEA0000000000000000000000000000000000092 +:10BEB0000000000000000000000000000000000082 +:10BEC0000000000000000000000000000000000072 +:10BED0000000000000000000000000000000000062 +:10BEE0000000000000000000000000000000000052 +:10BEF0000000000000000000000000000000000042 +:10BF00000000000000000000000000000000000031 +:10BF10000000000000000000000000000000000021 +:10BF20000000000000000000000000000000000011 +:10BF30000000000000000000000000000000000001 +:10BF400000000000000000000000000000000000F1 +:10BF500000000000000000000000000000000000E1 +:10BF600000000000000000000000000000000000D1 +:10BF700000000000000000000000000000000000C1 +:10BF800000000000000000000000000000000000B1 +:10BF900000000000000000000000000000000000A1 +:10BFA0000000000000000000000000000000000091 +:10BFB0000000000000000000000000000000000081 +:10BFC0000000000000000000000000000000000071 +:10BFD0000000000000000000000000000000000061 +:10BFE0000000000000000000000000000000000051 +:10BFF0000000000000000000000000000000000041 +:10C000000000000000000000000000000000000030 +:10C010000000000000000000000000000000000020 +:10C020000000000000000000000000000000000010 +:10C030000000000000000000000000000000000000 +:10C0400000000000000000000000000000000000F0 +:10C0500000000000000000000000000000000000E0 +:10C0600000000000000000000000000000000000D0 +:10C0700000000000000000000000000000000000C0 +:10C0800000000000000000000000000000000000B0 +:10C0900000000000000000000000000000000000A0 +:10C0A0000000000000000000000000000000000090 +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000000000000070 +:10C0D0000000000000000000000000000000000060 +:10C0E0000000000000000000000000000000000050 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C11000000000000000000000000000000000001F +:10C12000000000000000000000000000000000000F +:10C1300000000000000000000000000000000000FF +:10C1400000000000000000000000000000000000EF +:10C1500000000000000000000000000000000000DF +:10C1600000000000000000000000000000000000CF +:10C1700000000000000000000000000000000000BF +:10C1800000000000000000000000000000000000AF +:10C19000000000000000000000000000000000009F +:10C1A000000000000000000000000000000000008F +:10C1B000000000000000000000000000000000007F +:10C1C000000000000000000000000000000000006F +:10C1D000000000000000000000000000000000005F +:10C1E000000000000000000000000000000000004F +:10C1F000000000000000000000000000000000003F +:10C20000000000000000000000000000000000002E +:10C21000000000000000000000000000000000001E +:10C22000000000000000000000000000000000000E +:10C2300000000000000000000000000000000000FE +:10C2400000000000000000000000000000000000EE +:10C2500000000000000000000000000000000000DE +:10C2600000000000000000000000000000000000CE +:10C2700000000000000000000000000000000000BE +:10C2800000000000000000000000000000000000AE +:10C29000000000000000000000000000000000009E +:10C2A000000000000000000000000000000000008E +:10C2B000000000000000000000000000000000007E +:10C2C000000000000000000000000000000000006E +:10C2D000000000000000000000000000000000005E +:10C2E000000000000000000000000000000000004E +:10C2F000000000000000000000000000000000003E +:10C30000000000000000000000000000000000002D +:10C31000000000000000000000000000000000001D +:10C32000000000000000000000000000000000000D +:10C3300000000000000000000000000000000000FD +:10C3400000000000000000000000000000000000ED +:10C3500000000000000000000000000000000000DD +:10C3600000000000000000000000000000000000CD +:10C3700000000000000000000000000000000000BD +:10C3800000000000000000000000000000000000AD +:10C39000000000000000000000000000000000009D +:10C3A000000000000000000000000000000000008D +:10C3B000000000000000000000000000000000007D +:10C3C000000000000000000000000000000000006D +:10C3D000000000000000000000000000000000005D +:10C3E000000000000000000000000000000000004D +:10C3F000000000000000000000000000000000003D +:10C40000000000000000000000000000000000002C +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000000000000C +:10C4300000000000000000000000000000000000FC +:10C4400000000000000000000000000000000000EC +:10C4500000000000000000000000000000000000DC +:10C4600000000000000000000000000000000000CC +:10C4700000000000000000000000000000000000BC +:10C4800000000000000000000000000000000000AC +:10C49000000000000000000000000000000000009C +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000000000007C +:10C4C000000000000000000000000000000000006C +:10C4D000000000000000000000000000000000005C +:10C4E000000000000000000000000000000000004C +:10C4F000000000000000000000000000000000003C +:10C50000000000000000000000000000000000002B +:10C51000000000000000000000000000000000001B +:10C52000000000000000000000000000000000000B +:10C5300000000000000000000000000000000000FB +:10C5400000000000000000000000000000000000EB +:10C5500000000000000000000000000000000000DB +:10C5600000000000000000000000000000000000CB +:10C5700000000000000000000000000000000000BB +:10C5800000000000000000000000000000000000AB +:10C59000000000000000000000000000000000009B +:10C5A000000000000000000000000000000000008B +:10C5B000000000000000000000000000000000007B +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000000000004B +:10C5F000000000000000000000000000000000003B +:10C60000000000000000000000000000000000002A +:10C61000000000000000000000000000000000001A +:10C62000000000000000000000000000000000000A +:10C6300000000000000000000000000000000000FA +:10C6400000000000000000000000000000000000EA +:10C6500000000000000000000000000000000000DA +:10C6600000000000000000000000000000000000CA +:10C6700000000000000000000000000000000000BA +:10C6800000000000000000000000000000000000AA +:10C69000000000000000000000000000000000009A +:10C6A000000000000000000000000000000000008A +:10C6B000000000000000000000000000000000007A +:10C6C000000000000000000000000000000000006A +:10C6D000000000000000000000000000000000005A +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C700000000000000000000000000000000000029 +:10C710000000000000000000000000000000000019 +:10C720000000000000000000000000000000000009 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000000000000000000000000000E9 +:10C7500000000000000000000000000000000000D9 +:10C7600000000000000000000000000000000000C9 +:10C7700000000000000000000000000000000000B9 +:10C7800000000000000000000000000000000000A9 +:10C790000000000000000000000000000000000099 +:10C7A0000000000000000000000000000000000089 +:10C7B0000000000000000000000000000000000079 +:10C7C0000000000000000000000000000000000069 +:10C7D0000000000000000000000000000000000059 +:10C7E0000000000000000000000000000000000049 +:10C7F0000000000000000000000000000000000039 +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000000000000018 +:10C820000000000000000000000000000000000008 +:10C8300000000000000000000000000000000000F8 +:10C8400000000000000000000000000000000000E8 +:10C8500000000000000000000000000000000000D8 +:10C8600000000000000000000000000000000000C8 +:10C8700000000000000000000000000000000000B8 +:10C8800000000000000000000000000000000000A8 +:10C890000000000000000000000000000000000098 +:10C8A0000000000000000000000000000000000088 +:10C8B0000000000000000000000000000000000078 +:10C8C0000000000000000000000000000000000068 +:10C8D0000000000000000000000000000000000058 +:10C8E0000000000000000000000000000000000048 +:10C8F0000000000000000000000000000000000038 +:10C900000000000000000000000000000000000027 +:10C910000000000000000000000000000000000017 +:10C920000000000000000000000000000000000007 +:10C9300000000000000000000000000000000000F7 +:10C9400000000000000000000000000000000000E7 +:10C9500000000000000000000000000000000000D7 +:10C9600000000000000000000000000000000000C7 +:10C9700000000000000000000000000000000000B7 +:10C9800000000000000000000000000000000000A7 +:10C990000000000000000000000000000000000097 +:10C9A0000000000000000000000000000000000087 +:10C9B0000000000000000000000000000000000077 +:10C9C0000000000000000000000000000000000067 +:10C9D0000000000000000000000000000000000057 +:10C9E0000000000000000000000000000000000047 +:10C9F0000000000000000000000000000000000037 +:10CA00000000000000000000000000000000000026 +:10CA10000000000000000000000000000000000016 +:10CA20000000000000000000000000000000000006 +:10CA300000000000000000000000000000000000F6 +:10CA400000000000000000000000000000000000E6 +:10CA500000000000000000000000000000000000D6 +:10CA600000000000000000000000000000000000C6 +:10CA700000000000000000000000000000000000B6 +:10CA800000000000000000000000000000000000A6 +:10CA90000000000000000000000000000000000096 +:10CAA0000000000000000000000000000000000086 +:10CAB0000000000000000000000000000000000076 +:10CAC0000000000000000000000000000000000066 +:10CAD0000000000000000000000000000000000056 +:10CAE0000000000000000000000000000000000046 +:10CAF0000000000000000000000000000000000036 +:10CB00000000000000000000000000000000000025 +:10CB10000000000000000000000000000000000015 +:10CB20000000000000000000000000000000000005 +:10CB300000000000000000000000000000000000F5 +:10CB400000000000000000000000000000000000E5 +:10CB500000000000000000000000000000000000D5 +:10CB600000000000000000000000000000000000C5 +:10CB700000000000000000000000000000000000B5 +:10CB800000000000000000000000000000000000A5 +:10CB90000000000000000000000000000000000095 +:10CBA0000000000000000000000000000000000085 +:10CBB0000000000000000000000000000000000075 +:10CBC0000000000000000000000000000000000065 +:10CBD0000000000000000000000000000000000055 +:10CBE0000000000000000000000000000000000045 +:10CBF0000000000000000000000000000000000035 +:10CC00000000000000000000000000000000000024 +:10CC10000000000000000000000000000000000014 +:10CC20000000000000000000000000000000000004 +:10CC300000000000000000000000000000000000F4 +:10CC400000000000000000000000000000000000E4 +:10CC500000000000000000000000000000000000D4 +:10CC600000000000000000000000000000000000C4 +:10CC700000000000000000000000000000000000B4 +:10CC800000000000000000000000000000000000A4 +:10CC90000000000000000000000000000000000094 +:10CCA0000000000000000000000000000000000084 +:10CCB0000000000000000000000000000000000074 +:10CCC0000000000000000000000000000000000064 +:10CCD0000000000000000000000000000000000054 +:10CCE0000000000000000000000000000000000044 +:10CCF0000000000000000000000000000000000034 +:10CD00000000000000000000000000000000000023 +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000000000000003 +:10CD300000000000000000000000000000000000F3 +:10CD400000000000000000000000000000000000E3 +:10CD500000000000000000000000000000000000D3 +:10CD600000000000000000000000000000000000C3 +:10CD700000000000000000000000000000000000B3 +:10CD800000000000000000000000000000000000A3 +:10CD90000000000000000000000000000000000093 +:10CDA0000000000000000000000000000000000083 +:10CDB0000000000000000000000000000000000073 +:10CDC0000000000000000000000000000000000063 +:10CDD0000000000000000000000000000000000053 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE00000000000000000000000000000000000022 +:10CE10000000000000000000000000000000000012 +:10CE20000000000000000000000000000000000002 +:10CE300000000000000000000000000000000000F2 +:10CE400000000000000000000000000000000000E2 +:10CE500000000000000000000000000000000000D2 +:10CE600000000000000000000000000000000000C2 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000000000A2 +:10CE90000000000000000000000000000000000092 +:10CEA0000000000000000000000000000000000082 +:10CEB0000000000000000000000000000000000072 +:10CEC0000000000000000000000000000000000062 +:10CED0000000000000000000000000000000000052 +:10CEE0000000000000000000000000000000000042 +:10CEF0000000000000000000000000000000000032 +:10CF00000000000000000000000000000000000021 +:10CF10000000000000000000000000000000000011 +:10CF20000000000000000000000000000000000001 +:10CF300000000000000000000000000000000000F1 +:10CF400000000000000000000000000000000000E1 +:10CF500000000000000000000000000000000000D1 +:10CF600000000000000000000000000000000000C1 +:10CF700000000000000000000000000000000000B1 +:10CF800000000000000000000000000000000000A1 +:10CF90000000000000000000000000000000000091 +:10CFA0000000000000000000000000000000000081 +:10CFB0000000000000000000000000000000000071 +:10CFC0000000000000000000000000000000000061 +:10CFD0000000000000000000000000000000000051 +:10CFE0000000000000000000000000000000000041 +:10CFF0000000000000000000000000000000000031 +:10D000000000000000000000000000000000000020 +:10D010000000000000000000000000000000000010 +:10D020000000000000000000000000000000000000 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000000000000000000000000000E0 +:10D0500000000000000000000000000000000000D0 +:10D0600000000000000000000000000000000000C0 +:10D0700000000000000000000000000000000000B0 +:10D0800000000000000000000000000000000000A0 +:10D090000000000000000000000000000000000090 +:10D0A0000000000000000000000000000000000080 +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E0000000000000000000000000000000000040 +:10D0F0000000000000000000000000000000000030 +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000000000000F +:10D1200000000000000000000000000000000000FF +:10D1300000000000000000000000000000000000EF +:10D1400000000000000000000000000000000000DF +:10D1500000000000000000000000000000000000CF +:10D1600000000000000000000000000000000000BF +:10D1700000000000000000000000000000000000AF +:10D18000000000000000000000000000000000009F +:10D19000000000000000000000000000000000008F +:10D1A000000000000000000000000000000000007F +:10D1B000000000000000000000000000000000006F +:10D1C000000000000000000000000000000000005F +:10D1D000000000000000000000000000000000004F +:10D1E000000000000000000000000000000000003F +:10D1F000000000000000000000000000000000002F +:10D20000000000000000000000000000000000001E +:10D21000000000000000000000000000000000000E +:10D2200000000000000000000000000000000000FE +:10D2300000000000000000000000000000000000EE +:10D2400000000000000000000000000000000000DE +:10D2500000000000000000000000000000000000CE +:10D2600000000000000000000000000000000000BE +:10D2700000000000000000000000000000000000AE +:10D28000000000000000000000000000000000009E +:10D29000000000000000000000000000000000008E +:10D2A000000000000000000000000000000000007E +:10D2B000000000000000000000000000000000006E +:10D2C000000000000000000000000000000000005E +:10D2D000000000000000000000000000000000004E +:10D2E000000000000000000000000000000000003E +:10D2F000000000000000000000000000000000002E +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D3200000000000000000000000000000000000FD +:10D3300000000000000000000000000000000000ED +:10D3400000000000000000000000000000000000DD +:10D3500000000000000000000000000000000000CD +:10D3600000000000000000000000000000000000BD +:10D3700000000000000000000000000000000000AD +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A000000000000000000000000000000000007D +:10D3B000000000000000000000000000000000006D +:10D3C000000000000000000000000000000000005D +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000000000003D +:10D3F000000000000000000000000000000000002D +:10D40000000000000000000000000000000000001C +:10D41000000000000000000000000000000000000C +:10D4200000000000000000000000000000000000FC +:10D4300000000000000000000000000000000000EC +:10D4400000000000000000000000000000000000DC +:10D4500000000000000000000000000000000000CC +:10D4600000000000000000000000000000000000BC +:10D4700000000000000000000000000000000000AC +:10D48000000000000000000000000000000000009C +:10D49000000000000000000000000000000000008C +:10D4A000000000000000000000000000000000007C +:10D4B000000000000000000000000000000000006C +:10D4C000000000000000000000000000000000005C +:10D4D000000000000000000000000000000000004C +:10D4E000000000000000000000000000000000003C +:10D4F000000000000000000000000000000000002C +:10D50000000000000000000000000000000000001B +:10D51000000000000000000000000000000000000B +:10D5200000000000000000000000000000000000FB +:10D5300000000000000000000000000000000000EB +:10D5400000000000000000000000000000000000DB +:10D5500000000000000000000000000000000000CB +:10D5600000000000000000000000000000000000BB +:10D5700000000000000000000000000000000000AB +:10D58000000000000000000000000000000000009B +:10D59000000000000000000000000000000000008B +:10D5A000000000000000000000000000000000007B +:10D5B000000000000000000000000000000000006B +:10D5C000000000000000000000000000000000005B +:10D5D000000000000000000000000000000000004B +:10D5E000000000000000000000000000000000003B +:10D5F000000000000000000000000000000000002B +:10D60000000000000000000000000000000000001A +:10D61000000000000000000000000000000000000A +:10D6200000000000000000000000000000000000FA +:10D6300000000000000000000000000000000000EA +:10D6400000000000000000000000000000000000DA +:10D6500000000000000000000000000000000000CA +:10D6600000000000000000000000000000000000BA +:10D6700000000000000000000000000000000000AA +:10D68000000000000000000000000000000000009A +:10D69000000000000000000000000000000000008A +:10D6A000000000000000000000000000000000007A +:10D6B000000000000000000000000000000000006A +:10D6C000000000000000000000000000000000005A +:10D6D000000000000000000000000000000000004A +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000000000000000000002A +:10D700000000000000000000000000000000000019 +:10D710000000000000000000000000000000000009 +:10D7200000000000000000000000000000000000F9 +:10D7300000000000000000000000000000000000E9 +:10D7400000000000000000000000000000000000D9 +:10D7500000000000000000000000000000000000C9 +:10D7600000000000000000000000000000000000B9 +:10D7700000000000000000000000000000000000A9 +:10D780000000000000000000000000000000000099 +:10D790000000000000000000000000000000000089 +:10D7A0000000000000000000000000000000000079 +:10D7B0000000000000000000000000000000000069 +:10D7C0000000000000000000000000000000000059 +:10D7D0000000000000000000000000000000000049 +:10D7E0000000000000000000000000000000000039 +:10D7F0000000000000000000000000000000000029 +:10D800000000000000000000000000000000000018 +:10D810000000000000000000000000000000000008 +:10D8200000000000000000000000000000000000F8 +:10D8300000000000000000000000000000000000E8 +:10D8400000000000000000000000000000000000D8 +:10D8500000000000000000000000000000000000C8 +:10D8600000000000000000000000000000000000B8 +:10D8700000000000000000000000000000000000A8 +:10D880000000000000000000000000000000000098 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B0000000000000000000000000000000000068 +:10D8C0000000000000000000000000000000000058 +:10D8D0000000000000000000000000000000000048 +:10D8E0000000000000000000000000000000000038 +:10D8F0000000000000000000000000000000000028 +:10D900000000000000000000000000000000000017 +:10D910000000000000000000000000000000000007 +:10D9200000000000000000000000000000000000F7 +:10D9300000000000000000000000000000000000E7 +:10D9400000000000000000000000000000000000D7 +:10D9500000000000000000000000000000000000C7 +:10D9600000000000000000000000000000000000B7 +:10D9700000000000000000000000000000000000A7 +:10D980000000000000000000000000000000000097 +:10D990000000000000000000000000000000000087 +:10D9A0000000000000000000000000000000000077 +:10D9B0000000000000000000000000000000000067 +:10D9C0000000000000000000000000000000000057 +:10D9D0000000000000000000000000000000000047 +:10D9E0000000000000000000000000000000000037 +:10D9F0000000000000000000000000000000000027 +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000000000000006 +:10DA200000000000000000000000000000000000F6 +:10DA300000000000000000000000000000000000E6 +:10DA400000000000000000000000000000000000D6 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000000000000000000000000000B6 +:10DA700000000000000000000000000000000000A6 +:10DA80000000000000000000000000000000000096 +:10DA90000000000000000000000000000000000086 +:10DAA0000000000000000000000000000000000076 +:10DAB0000000000000000000000000000000000066 +:10DAC0000000000000000000000000000000000056 +:10DAD0000000000000000000000000000000000046 +:10DAE0000000000000000000000000000000000036 +:10DAF0000000000000000000000000000000000026 +:10DB00000000000000000000000000000000000015 +:10DB10000000000000000000000000000000000005 +:10DB200000000000000000000000000000000000F5 +:10DB300000000000000000000000000000000000E5 +:10DB400000000000000000000000000000000000D5 +:10DB500000000000000000000000000000000000C5 +:10DB600000000000000000000000000000000000B5 +:10DB700000000000000000000000000000000000A5 +:10DB80000000000000000000000000000000000095 +:10DB90000000000000000000000000000000000085 +:10DBA0000000000000000000000000000000000075 +:10DBB0000000000000000000000000000000000065 +:10DBC0000000000000000000000000000000000055 +:10DBD0000000000000000000000000000000000045 +:10DBE0000000000000000000000000000000000035 +:10DBF0000000000000000000000000000000000025 +:10DC00000000000000000000000000000000000014 +:10DC10000000000000000000000000000000000004 +:10DC200000000000000000000000000000000000F4 +:10DC300000000000000000000000000000000000E4 +:10DC400000000000000000000000000000000000D4 +:10DC500000000000000000000000000000000000C4 +:10DC600000000000000000000000000000000000B4 +:10DC700000000000000000000000000000000000A4 +:10DC80000000000000000000000000000000000094 +:10DC90000000000000000000000000000000000084 +:10DCA0000000000000000000000000000000000074 +:10DCB0000000000000000000000000000000000064 +:10DCC0000000000000000000000000000000000054 +:10DCD0000000000000000000000000000000000044 +:10DCE0000000000000000000000000000000000034 +:10DCF0000000000000000000000000000000000024 +:10DD00000000000000000000000000000000000013 +:10DD10000000000000000000000000000000000003 +:10DD200000000000000000000000000000000000F3 +:10DD300000000000000000000000000000000000E3 +:10DD400000000000000000000000000000000000D3 +:10DD500000000000000000000000000000000000C3 +:10DD600000000000000000000000000000000000B3 +:10DD700000000000000000000000000000000000A3 +:10DD80000000000000000000000000000000000093 +:10DD90000000000000000000000000000000000083 +:10DDA0000000000000000000000000000000000073 +:10DDB0000000000000000000000000000000000063 +:10DDC0000000000000000000000000000000000053 +:10DDD0000000000000000000000000000000000043 +:10DDE0000000000000000000000000000000000033 +:10DDF0000000000000000000000000000000000023 +:10DE00000000000000000000000000000000000012 +:10DE10000000000000000000000000000000000002 +:10DE200000000000000000000000000000000000F2 +:10DE300000000000000000000000000000000000E2 +:10DE400000000000000000000000000000000000D2 +:10DE500000000000000000000000000000000000C2 +:10DE600000000000000000000000000000000000B2 +:10DE700000000000000000000000000000000000A2 +:10DE80000000000000000000000000000000000092 +:10DE90000000000000000000000000000000000082 +:10DEA0000000000000000000000000000000000072 +:10DEB0000000000000000000000000000000000062 +:10DEC0000000000000000000000000000000000052 +:10DED0000000000000000000000000000000000042 +:10DEE0000000000000000000000000000000000032 +:10DEF0000000000000000000000000000000000022 +:10DF00000000000000000000000000000000000011 +:10DF10000000000000000000000000000000000001 +:10DF200000000000000000000000000000000000F1 +:10DF300000000000000000000000000000000000E1 +:10DF400000000000000000000000000000000000D1 +:10DF500000000000000000000000000000000000C1 +:10DF600000000000000000000000000000000000B1 +:10DF700000000000000000000000000000000000A1 +:10DF80000000000000000000000000000000000091 +:10DF90000000000000000000000000000000000081 +:10DFA0000000000000000000000000000000000071 +:10DFB0000000000000000000000000000000000061 +:10DFC0000000000000000000000000000000000051 +:10DFD0000000000000000000000000000000000041 +:10DFE0000000000000000000000000000000000031 +:10DFF0000000000000000000000000000000000021 +:10E000000000000000000000000000000000000010 +:10E010000000000000000000000000000000000000 +:10E0200000000000000000000000000000000000F0 +:10E0300000000000000000000000000000000000E0 +:10E0400000000000000000000000000000000000D0 +:10E0500000000000000000000000000000000000C0 +:10E0600000000000000000000000000000000000B0 +:10E0700000000000000000000000000000000000A0 +:10E080000000000000000000000000000000000090 +:10E090000000000000000000000000000000000080 +:10E0A0000000000000000000000000000000000070 +:10E0B0000000000000000000000000000000000060 +:10E0C0000000000000000000000000000000000050 +:10E0D0000000000000000000000000000000000040 +:10E0E0000000000000000000000000000000000030 +:10E0F0000000000000000000000000000000000020 +:10E10000000000000000000000000000000000000F +:10E1100000000000000000000000000000000000FF +:10E1200000000000000000000000000000000000EF +:10E1300000000000000000000000000000000000DF +:10E1400000000000000000000000000000000000CF +:10E1500000000000000000000000000000000000BF +:10E1600000000000000000000000000000000000AF +:10E17000000000000000000000000000000000009F +:10E18000000000000000000000000000000000008F +:10E19000000000000000000000000000000000007F +:10E1A000000000000000000000000000000000006F +:10E1B000000000000000000000000000000000005F +:10E1C000000000000000000000000000000000004F +:10E1D000000000000000000000000000000000003F +:10E1E000000000000000000000000000000000002F +:10E1F000000000000000000000000000000000001F +:10E20000000000000000000000000000000000000E +:10E2100000000000000000000000000000000000FE +:10E2200000000000000000000000000000000000EE +:10E2300000000000000000000000000000000000DE +:10E2400000000000000000000000000000000000CE +:10E2500000000000000000000000000000000000BE +:10E2600000000000000000000000000000000000AE +:10E27000000000000000000000000000000000009E +:10E28000000000000000000000000000000000008E +:10E29000000000000000000000000000000000007E +:10E2A000000000000000000000000000000000006E +:10E2B000000000000000000000000000000000005E +:10E2C000000000000000000000000000000000004E +:10E2D000000000000000000000000000000000003E +:10E2E000000000000000000000000000000000002E +:10E2F000000000000000000000000000000000001E +:10E30000000000000000000000000000000000000D +:10E3100000000000000000000000000000000000FD +:10E3200000000000000000000000000000000000ED +:10E3300000000000000000000000000000000000DD +:10E3400000000000000000000000000000000000CD +:10E3500000000000000000000000000000000000BD +:10E3600000000000000000000000000000000000AD +:10E37000000000000000000000000000000000009D +:10E38000000000000000000000000000000000008D +:10E39000000000000000000000000000000000007D +:10E3A000000000000000000000000000000000006D +:10E3B000000000000000000000000000000000005D +:10E3C000000000000000000000000000000000004D +:10E3D000000000000000000000000000000000003D +:10E3E000000000000000000000000000000000002D +:10E3F000000000000000000000000000000000001D +:10E40000000000000000000000000000000000000C +:10E4100000000000000000000000000000000000FC +:10E4200000000000000000000000000000000000EC +:10E4300000000000000000000000000000000000DC +:10E4400000000000000000000000000000000000CC +:10E4500000000000000000000000000000000000BC +:10E4600000000000000000000000000000000000AC +:10E47000000000000000000000000000000000009C +:10E48000000000000000000000000000000000008C +:10E49000000000000000000000000000000000007C +:10E4A000000000000000000000000000000000006C +:10E4B000000000000000000000000000000000005C +:10E4C000000000000000000000000000000000004C +:10E4D000000000000000000000000000000000003C +:10E4E000000000000000000000000000000000002C +:10E4F000000000000000000000000000000000001C +:10E50000000000000000000000000000000000000B +:10E5100000000000000000000000000000000000FB +:10E5200000000000000000000000000000000000EB +:10E5300000000000000000000000000000000000DB +:10E5400000000000000000000000000000000000CB +:10E5500000000000000000000000000000000000BB +:10E5600000000000000000000000000000000000AB +:10E57000000000000000000000000000000000009B +:10E58000000000000000000000000000000000008B +:10E59000000000000000000000000000000000007B +:10E5A000000000000000000000000000000000006B +:10E5B000000000000000000000000000000000005B +:10E5C000000000000000000000000000000000004B +:10E5D000000000000000000000000000000000003B +:10E5E000000000000000000000000000000000002B +:10E5F000000000000000000000000000000000001B +:10E60000000000000000000000000000000000000A +:10E6100000000000000000000000000000000000FA +:10E6200000000000000000000000000000000000EA +:10E6300000000000000000000000000000000000DA +:10E6400000000000000000000000000000000000CA +:10E6500000000000000000000000000000000000BA +:10E6600000000000000000000000000000000000AA +:10E67000000000000000000000000000000000009A +:10E68000000000000000000000000000000000008A +:10E69000000000000000000000000000000000007A +:10E6A000000000000000000000000000000000006A +:10E6B000000000000000000000000000000000005A +:10E6C000000000000000000000000000000000004A +:10E6D000000000000000000000000000000000003A +:10E6E000000000000000000000000000000000002A +:10E6F000000000000000000000000000000000001A +:10E700000000000000000000000000000000000009 +:10E7100000000000000000000000000000000000F9 +:10E7200000000000000000000000000000000000E9 +:10E7300000000000000000000000000000000000D9 +:10E7400000000000000000000000000000000000C9 +:10E7500000000000000000000000000000000000B9 +:10E7600000000000000000000000000000000000A9 +:10E770000000000000000000000000000000000099 +:10E780000000000000000000000000000000000089 +:10E790000000000000000000000000000000000079 +:10E7A0000000000000000000000000000000000069 +:10E7B0000000000000000000000000000000000059 +:10E7C0000000000000000000000000000000000049 +:10E7D0000000000000000000000000000000000039 +:10E7E0000000000000000000000000000000000029 +:10E7F0000000000000000000000000000000000019 +:10E800000000000000000000000000000000000008 +:10E8100000000000000000000000000000000000F8 +:10E8200000000000000000000000000000000000E8 +:10E8300000000000000000000000000000000000D8 +:10E8400000000000000000000000000000000000C8 +:10E8500000000000000000000000000000000000B8 +:10E8600000000000000000000000000000000000A8 +:10E870000000000000000000000000000000000098 +:10E880000000000000000000000000000000000088 +:10E890000000000000000000000000000000000078 +:10E8A0000000000000000000000000000000000068 +:10E8B0000000000000000000000000000000000058 +:10E8C0000000000000000000000000000000000048 +:10E8D0000000000000000000000000000000000038 +:10E8E0000000000000000000000000000000000028 +:10E8F0000000000000000000000000000000000018 +:10E900000000000000000000000000000000000007 +:10E9100000000000000000000000000000000000F7 +:10E9200000000000000000000000000000000000E7 +:10E9300000000000000000000000000000000000D7 +:10E9400000000000000000000000000000000000C7 +:10E9500000000000000000000000000000000000B7 +:10E9600000000000000000000000000000000000A7 +:10E970000000000000000000000000000000000097 +:10E980000000000000000000000000000000000087 +:10E990000000000000000000000000000000000077 +:10E9A0000000000000000000000000000000000067 +:10E9B0000000000000000000000000000000000057 +:10E9C0000000000000000000000000000000000047 +:10E9D0000000000000000000000000000000000037 +:10E9E0000000000000000000000000000000000027 +:10E9F0000000000000000000000000000000000017 +:10EA00000000000000000000000000000000000006 +:10EA100000000000000000000000000000000000F6 +:10EA200000000000000000000000000000000000E6 +:10EA300000000000000000000000000000000000D6 +:10EA400000000000000000000000000000000000C6 +:10EA500000000000000000000000000000000000B6 +:10EA600000000000000000000000000000000000A6 +:10EA70000000000000000000000000000000000096 +:10EA80000000000000000000000000000000000086 +:10EA90000000000000000000000000000000000076 +:10EAA0000000000000000000000000000000000066 +:10EAB0000000000000000000000000000000000056 +:10EAC0000000000000000000000000000000000046 +:10EAD0000000000000000000000000000000000036 +:10EAE0000000000000000000000000000000000026 +:10EAF0000000000000000000000000000000000016 +:10EB00000000000000000000000000000000000005 +:10EB100000000000000000000000000000000000F5 +:10EB200000000000000000000000000000000000E5 +:10EB300000000000000000000000000000000000D5 +:10EB400000000000000000000000000000000000C5 +:10EB500000000000000000000000000000000000B5 +:10EB600000000000000000000000000000000000A5 +:10EB70000000000000000000000000000000000095 +:10EB80000000000000000000000000000000000085 +:10EB90000000000000000000000000000000000075 +:10EBA0000000000000000000000000000000000065 +:10EBB0000000000000000000000000000000000055 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE0000000000000000000000000000000000025 +:10EBF0000000000000000000000000000000000015 +:10EC00000000000000000000000000000000000004 +:10EC100000000000000000000000000000000000F4 +:10EC200000000000000000000000000000000000E4 +:10EC300000000000000000000000000000000000D4 +:10EC400000000000000000000000000000000000C4 +:10EC500000000000000000000000000000000000B4 +:10EC600000000000000000000000000000000000A4 +:10EC70000000000000000000000000000000000094 +:10EC80000000000000000000000000000000000084 +:10EC90000000000000000000000000000000000074 +:10ECA0000000000000000000000000000000000064 +:10ECB0000000000000000000000000000000000054 +:10ECC0000000000000000000000000000000000044 +:10ECD0000000000000000000000000000000000034 +:10ECE0000000000000000000000000000000000024 +:10ECF0000000000000000000000000000000000014 +:10ED00000000000000000000000000000000000003 +:10ED100000000000000000000000000000000000F3 +:10ED200000000000000000000000000000000000E3 +:10ED300000000000000000000000000000000000D3 +:10ED400000000000000000000000000000000000C3 +:10ED500000000000000000000000000000000000B3 +:10ED600000000000000000000000000000000000A3 +:10ED70000000000000000000000000000000000093 +:10ED80000000000000000000000000000000000083 +:10ED90000000000000000000000000000000000073 +:10EDA0000000000000000000000000000000000063 +:10EDB0000000000000000000000000000000000053 +:10EDC0000000000000000000000000000000000043 +:10EDD0000000000000000000000000000000000033 +:10EDE0000000000000000000000000000000000023 +:10EDF0000000000000000000000000000000000013 +:10EE00000000000000000000000000000000000002 +:10EE100000000000000000000000000000000000F2 +:10EE200000000000000000000000000000000000E2 +:10EE300000000000000000000000000000000000D2 +:10EE400000000000000000000000000000000000C2 +:10EE500000000000000000000000000000000000B2 +:10EE600000000000000000000000000000000000A2 +:10EE70000000000000000000000000000000000092 +:10EE80000000000000000000000000000000000082 +:10EE90000000000000000000000000000000000072 +:10EEA0000000000000000000000000000000000062 +:10EEB0000000000000000000000000000000000052 +:10EEC0000000000000000000000000000000000042 +:10EED0000000000000000000000000000000000032 +:10EEE0000000000000000000000000000000000022 +:10EEF0000000000000000000000000000000000012 +:10EF00000000000000000000000000000000000001 +:10EF100000000000000000000000000000000000F1 +:10EF200000000000000000000000000000000000E1 +:10EF300000000000000000000000000000000000D1 +:10EF400000000000000000000000000000000000C1 +:10EF500000000000000000000000000000000000B1 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF80000000000000000000000000000000000081 +:10EF90000000000000000000000000000000000071 +:10EFA0000000000000000000000000000000000061 +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000000000000000000000000000041 +:10EFD0000000000000000000000000000000000031 +:10EFE0000000000000000000000000000000000021 +:10EFF0000000000000000000000000000000000011 +:10F000000000000000000000000000000000000000 +:10F0100000000000000000000000000000000000F0 +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000000000000070 +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F0000000000000000000000000000000000010 +:10F1000000000000000000000000000000000000FF +:10F1100000000000000000000000000000000000EF +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F2000000000000000000000000000000000000FE +:10F2100000000000000000000000000000000000EE +:10F2200000000000000000000000000000000000DE +:10F2300000000000000000000000000000000000CE +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000000000000000000000000000009E +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A000000000000000000000000000000000005E +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000000000002E +:10F2E000000000000000000000000000000000001E +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000000000FD +:10F3100000000000000000000000000000000000ED +:10F3200000000000000000000000000000000000DD +:10F3300000000000000000000000000000000000CD +:10F3400000000000000000000000000000000000BD +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000000000008D +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E000000000000000000000000000000000001D +:10F3F000000000000000000000000000000000000D +:10F4000000000000000000000000000000000000FC +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E000000000000000000000000000000000001C +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000000000000FB +:10F5100000000000000000000000000000000000EB +:10F5200000000000000000000000000000000000DB +:10F5300000000000000000000000000000000000CB +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F57000000000000000000000000000000000008B +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000000000000000000000000000FA +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000000000000BA +:10F6500000000000000000000000000000000000AA +:10F66000000000000000000000000000000000009A +:10F67000000000000000000000000000000000008A +:10F68000000000000000000000000000000000007A +:10F69000000000000000000000000000000000006A +:10F6A000000000000000000000000000000000005A +:10F6B000000000000000000000000000000000004A +:10F6C000000000000000000000000000000000003A +:10F6D000000000000000000000000000000000002A +:10F6E000000000000000000000000000000000001A +:10F6F000000000000000000000000000000000000A +:10F7000000000000000000000000000000000000F9 +:10F7100000000000000000000000000000000000E9 +:10F7200000000000000000000000000000000000D9 +:10F7300000000000000000000000000000000000C9 +:10F7400000000000000000000000000000000000B9 +:10F7500000000000000000000000000000000000A9 +:10F760000000000000000000000000000000000099 +:10F770000000000000000000000000000000000089 +:10F780000000000000000000000000000000000079 +:10F790000000000000000000000000000000000069 +:10F7A0000000000000000000000000000000000059 +:10F7B0000000000000000000000000000000000049 +:10F7C0000000000000000000000000000000000039 +:10F7D0000000000000000000000000000000000029 +:10F7E0000000000000000000000000000000000019 +:10F7F0000000000000000000000000000000000009 +:10F8000000000000000000000000000000000000F8 +:10F8100000000000000000000000000000000000E8 +:10F8200000000000000000000000000000000000D8 +:10F8300000000000000000000000000000000000C8 +:10F8400000000000000000000000000000000000B8 +:10F8500000000000000000000000000000000000A8 +:10F860000000000000000000000000000000000098 +:10F870000000000000000000000000000000000088 +:10F880000000000000000000000000000000000078 +:10F890000000000000000000000000000000000068 +:10F8A0000000000000000000000000000000000058 +:10F8B0000000000000000000000000000000000048 +:10F8C0000000000000000000000000000000000038 +:10F8D0000000000000000000000000000000000028 +:10F8E0000000000000000000000000000000000018 +:10F8F0000000000000000000000000000000000008 +:10F9000000000000000000000000000000000000F7 +:10F9100000000000000000000000000000000000E7 +:10F9200000000000000000000000000000000000D7 +:10F9300000000000000000000000000000000000C7 +:10F9400000000000000000000000000000000000B7 +:10F9500000000000000000000000000000000000A7 +:10F960000000000000000000000000000000000097 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000000000000067 +:10F9A0000000000000000000000000000000000057 +:10F9B0000000000000000000000000000000000047 +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000000000000000000000000000007 +:10FA000000000000000000000000000000000000F6 +:10FA100000000000000000000000000000000000E6 +:10FA200000000000000000000000000000000000D6 +:10FA300000000000000000000000000000000000C6 +:10FA400000000000000000000000000000000000B6 +:10FA500000000000000000000000000000000000A6 +:10FA60000000000000000000000000000000000096 +:10FA70000000000000000000000000000000000086 +:10FA80000000000000000000000000000000000076 +:10FA90000000000000000000000000000000000066 +:10FAA0000000000000000000000000000000000056 +:10FAB0000000000000000000000000000000000046 +:10FAC0000000000000000000000000000000000036 +:10FAD0000000000000000000000000000000000026 +:10FAE0000000000000000000000000000000000016 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000000000000000000000000000F5 +:10FB100000000000000000000000000000000000E5 +:10FB200000000000000000000000000000000000D5 +:10FB300000000000000000000000000000000000C5 +:10FB400000000000000000000000000000000000B5 +:10FB500000000000000000000000000000000000A5 +:10FB60000000000000000000000000000000000095 +:10FB70000000000000000000000000000000000085 +:10FB80000000000000000000000000000000000075 +:10FB90000000000000000000000000000000000065 +:10FBA0000000000000000000000000000000000055 +:10FBB0000000000000000000000000000000000045 +:10FBC0000000000000000000000000000000000035 +:10FBD0000000000000000000000000000000000025 +:10FBE0000000000000000000000000000000000015 +:10FBF0000000000000000000000000000000000005 +:10FC000000000000000000000000000000000000F4 +:10FC100000000000000000000000000000000000E4 +:10FC200000000000000000000000000000000000D4 +:10FC300000000000000000000000000000000000C4 +:10FC400000000000000000000000000000000000B4 +:10FC500000000000000000000000000000000000A4 +:10FC60000000000000000000000000000000000094 +:10FC70000000000000000000000000000000000084 +:10FC80000000000000000000000000000000000074 +:10FC90000000000000000000000000000000000064 +:10FCA0000000000000000000000000000000000054 +:10FCB0000000000000000000000000000000000044 +:10FCC0000000000000000000000000000000000034 +:10FCD0000000000000000000000000000000000024 +:10FCE0000000000000000000000000000000000014 +:10FCF0000000000000000000000000000000000004 +:10FD000000000000000000000000000000000000F3 +:10FD100000000000000000000000000000000000E3 +:10FD200000000000000000000000000000000000D3 +:10FD300000000000000000000000000000000000C3 +:10FD400000000000000000000000000000000000B3 +:10FD500000000000000000000000000000000000A3 +:10FD60000000000000000000000000000000000093 +:10FD70000000000000000000000000000000000083 +:10FD80000000000000000000000000000000000073 +:10FD90000000000000000000000000000000000063 +:10FDA0000000000000000000000000000000000053 +:10FDB0000000000000000000000000000000000043 +:10FDC0000000000000000000000000000000000033 +:10FDD0000000000000000000000000000000000023 +:10FDE0000000000000000000000000000000000013 +:10FDF0000000000000000000000000000000000003 +:10FE000000000000000000000000000000000000F2 +:10FE100000000000000000000000000000000000E2 +:10FE200000000000000000000000000000000000D2 +:10FE300000000000000000000000000000000000C2 +:10FE400000000000000000000000000000000000B2 +:10FE500000000000000000000000000000000000A2 +:10FE60000000000000000000000000000000000092 +:10FE70000000000000000000000000000000000082 +:10FE80000000000000000000000000000000000072 +:10FE90000000000000000000000000000000000062 +:10FEA0000000000000000000000000000000000052 +:10FEB0000000000000000000000000000000000042 +:10FEC0000000000000000000000000000000000032 +:10FED0000000000000000000000000000000000022 +:10FEE0000000000000000000000000000000000012 +:10FEF0000000000000000000000000000000000002 +:10FF000000000000000000000000000000000000F1 +:10FF100000000000000000000000000000000000E1 +:10FF200000000000000000000000000000000000D1 +:10FF300000000000000000000000000000000000C1 +:10FF400000000000000000000000000000000000B1 +:10FF500000000000000000000000000000000000A1 +:10FF60000000000000000000000000000000000091 +:10FF70000000000000000000000000000000000081 +:10FF80000000000000000000000000000000000071 +:10FF90000000000000000000000000000000000061 +:10FFA0000000000000000000000000000000000051 +:10FFB0000000000000000000000000000000000041 +:10FFC0000000000000000000000000000000000031 +:10FFD0000000000000000000000000000000000021 +:10FFE0000000000000000000000000000000000011 +:10FFF0000000000000000000000000000000000001 +:020000021000EC +:1000000010B5044610460A460146204600F0C6FCDC +:10001000204610BD10B5044600F084FC204610BDFB +:100020005FF0FF0C1CEAD05114BF614506E0C1101F +:10003000400721F0E04101F16051704779B900F0CB +:10004000004100020AD0B0FA80FC00FA0CF001F185 +:100050006051A1EB0C5101EBD021400570474102EA +:100060000CBF40F4E0016FF000010020704750F831 +:10007000041B61B150F8042BD30744BFA9F101035D +:100080009A18002342F8043B091FFAD1EFE77047A2 +:10009000B0B581EA030C0CF0004C40F2FF7515EA94 +:1000A00011541DBF15EA1357AC42AF4239E0E419B1 +:1000B00023EA455343F48013C90241F0004141EA69 +:1000C000505EC7021100A7FB020200284FF000009B +:1000D000EEFB01204FF00001E3FB072118BF42F0C7 +:1000E0000102401800214941E3FB0E01A4F58064A0 +:1000F0000F0302D252004041494154F101046CDD2A +:10010000470872F1004250F1000051EB0451A1F593 +:1001100080115CBF41EA0C01B0BD4CEA05510020E2 +:10012000B0BD05EA1357AC4214BFAF4241E050EAFC +:10013000410E1CBF52EA430E02E061460020B0BDF2 +:1001400024423C441BD15FEA070EF6D0090302BFEC +:1001500001460020AEF1140EB1FA81F7AEEB0704B0 +:1001600001FA07FE0C37C7F1200100FA07F7C84073 +:100170004EEA000E23EA455343F48013A2E733F01E +:100180000043B3FA83F704BFB2FA82FE77440B3F11 +:10019000E41BB7F1200E2FBF02FA0EF3BB40C7F1EC +:1001A000200E22FA0EFE38BF43EA0E03BA40641C4A +:1001B00082E750EA410E14BF52EA430E6FF000018D +:1001C0004FF4001717EB430F8ABF194617EB410F87 +:1001D000B5E74CEA05510020B0BDD4F10104B4F1FB +:1001E00020070FDAC4F12007520828BF42F00102AD +:1001F00010FA07F501FA07F7E1BF2A43E040384358 +:10020000E1400FE0352C98DCC7F1200452EA4002AF +:1002100020FA07F218BF42F0010231FA07F0A140BC +:100220000A43002172F1004250F1000051EB0C0131 +:10023000B0BD8268521C8260426832B10268531CB1 +:10024000036011704168491E416070474FF4001C03 +:100250001CEB410F94BF1CEB430F09E041EA030C78 +:1002600050EA4C0C52EA0C0C03D2994208BF90425F +:10027000704714BF8B42824270470268531C036070 +:100280001170704770B44FF0004591EA030C44BF01 +:100290006B4000F075B800BF841A71EB030603D2FF +:1002A000001BB141121973414FF4001C1CEB410FAC +:1002B00034BF7CEB430443E00C0DA4EB1356352E06 +:1002C00050DC45EAC323DB0A45EAC121C912B6F175 +:1002D00020050DDD63FA05F6EB4086EA03051242C0 +:1002E00018BF45F00105C01851F100010CD213E010 +:1002F00062FA06F5F2405540F3415A40B340F340EC +:100300005A408018594107D349085FEA30005FEA34 +:10031000350528BF45F0010501F58011420875F14A +:10032000004250F1000041EB045170BC4FF4001C3E +:100330001CEB410F38BF70470020090D09057047BD +:100340001CEB410F10D252EA43060BD0BCEB410F1D +:1003500005D80C0DAB43661E342EB5DD02E0AB4371 +:100360008018594170BC704770BC704770B44FF032 +:10037000004591EA030F44BF6B40FFF78DBF00BFFC +:10038000841A71EB030604D26E40001BB1411219AE +:1003900073414FF4001C1CEB410F34BF7CEB430650 +:1003A00084E00C0DA4EB1356362E7DDC012E43DCCD +:1003B00045EAC32343EA525312BFD20292025B08BA +:1003C000240545EAC12141EA5051D2EBC0209941B0 +:1003D00025D407D1B0FA80F610FA06F164D00020D7 +:1003E000203608E0B1FA81F6B140C6F1200220FAC9 +:1003F00002F21143B0404FEAF474B4EB465434F0C7 +:1004000001064FEA74040AD8D6F50016760D04F0FA +:100410000044F04061FA06F25040F1404840C00A02 +:1004200040EA415021F0004128BF5FEA500550F1F9 +:10043000000044EBD12137E045EAC323DB0A45EA5B +:10044000C121C90AB6F120050EDD42EA0242120CB2 +:10045000C5F1200603FA06F6EB4042EA06056D42B6 +:10046000984161F100010DE062FA06F5F240554055 +:1004700063FA06FC82EA0C02F3405A406D42904156 +:1004800061EB030111F4801F05D1641E620502D0E7 +:100490006D004041494121F48011430875F100434A +:1004A00050F1000041EB045170BC70471CEB410F50 +:1004B00015D223F0004352EA43060BD04FEA4C0C0E +:1004C000BCEB410F04D80C0D661E342EB7DDEBE7F4 +:1004D000801A994150EA410608BF0021E4E708BFAD +:1004E0001CEB430F28BF6FF00001DDE74FEAF17C02 +:1004F000BCF1E04C2CBFBCF5001F11E05FEA4C0CD6 +:1005000034BFBCF17F5F2EE05FEA9C0C4FEA0C1C0D +:100510004FEA3C0CC10071F100414CEB5070704748 +:10052000C90241EA5051C00218BF41F0010141F037 +:1005300000414FEA6C50C0F10900212810D240EA76 +:10054000CC7CCCF1200C11FA0CF070F10040CCF115 +:10055000200C21FA0CF00CF0004C40EB0C00704722 +:100560004FEACC707047490011F5001F04D84FEADC +:10057000CC10FF30C0057047C8177047F0B540F287 +:10058000FF7581EA030C0CF0004C15EA11541DBFF5 +:1005900015EA1357AC42AF42E5E0BC41C1F3130189 +:1005A000C3F31303801A994143F4801304D2641EE9 +:1005B0004000494180185941C90241EA5051B1FBFC +:1005C000F3F603FB1611A2FB0675D7EBC020A94179 +:1005D00002D2761E80185941C90241EA5051B1FB3E +:1005E000F3FE03FB1E11A2FB0E75D7EBC020A94141 +:1005F00003D2AEF1010E80185941890241EA9051AF +:10060000760546EA8E2EB1FBF3F603FB1611A2FB2C +:100610000675D7EB8020A94102D2761E8018594179 +:10062000C90241EA50514EEA060EB1FBF3F603FB54 +:100630001611A2FB0675D7EBC020A94102D2761E87 +:1006400080185941C90241EA5051B1FBF3F703FB4D +:100650001711A2FB0735D3EBC020A94167F10007B2 +:100660000CBF004247F0010766F3D5274FEA1E3161 +:10067000B80814F5806412DDBD0775F1004250EB37 +:100680000E5051EB045111F5801F5CBF41EA0C0183 +:10069000F0BD4CF07F6141F0E0410020F0BDBD07AE +:1006A0006D0840EA0E5041F48011D4F10104B4F118 +:1006B00020060ADAC4F120060200E04001FA06F33F +:1006C000E1401843B24015430EE0342C13DCC6F170 +:1006D000200445EA40056D0820FA06F2154321FA88 +:1006E00006F0A1400D43002175F1004250F10000D9 +:1006F00051EB0C01F0BD00205FEA0C01F0BDCFB959 +:1007000092185B41B3FA83F704BFB2FA82F6BF19BD +:100710000B3FB7F120062FBF02FA06F3BB40C7F12B +:10072000200622FA06F638BF3343BA401CB1E4195A +:10073000641E33E77F4231F00041B1FA81F404BF17 +:10074000B0FA80F6A4190B3CB4F120062FBF00FAD2 +:1007500006F1A140C4F1200620FA06F638BF314365 +:10076000A0403C1B1AE7AC421ABF05EA1357AF4240 +:1007700012E050EA41061CBF52EA4306BFE750EAC6 +:100780004107304661461CBF41EA0551F0BD52EABF +:10079000430C08BFC143F0BD00204FF4001616EB18 +:1007A000410F98BF16EB430F08BF16EB410F24BF54 +:1007B000C14305E016EB430F0CBF61464CEA0551FF +:1007C000F0BD0000010040F10980F446404200F015 +:1007D00005F851F000416047010000BF09D0B0FAB0 +:1007E00080F18840C91CC1F58461090501EBD02165 +:1007F000400570474FF4001C1CEB410F94BF1CEBED +:10080000430F09E041EA030C50EA4C0C52EA0C0C8D +:1008100003D28B4208BF8242704714BF9942904274 +:100820007047000051EC100B00B500F003F841ECEC +:10083000100B00BD40F2FF7C0B0D4DD0634566D21E +:1008400030B421EA035141F4801103F2FD3C5FEA28 +:100850005C0C01D300184941890041EA9071800085 +:100860004FF440140023E202D50AB1F5100107D479 +:100870006D081DD2091B641900184941491BF7D5A1 +:100880006D080AD20919641B00184941491BEFD5AC +:100890006D08F7D301E0520817D0C01861419B1AC8 +:1008A000AC4100184941801AA941F4D452080AD039 +:1008B000C01AA1419B186C4100184941801AA941F6 +:1008C000E9D45208F4D15B1C6C4161084FEA330053 +:1008D00001EB0C5130BC704750EA0103FBD030B43F +:1008E000B1FA81F311B9B0FA80F41B190B3BB3F1E3 +:1008F00020042FBF00FA04F19940C3F1200420FA2C +:1009000004F438BF21439840D3F101039DE76345C8 +:10091000E1D011F5801FDED850EA4101DBD0D94388 +:1009200000F070B862B38B0708D0521E11F8013B7B +:1009300000F8013B00F024808B07F6D1830740F0DC +:10094000208000BF103A07D330B4B1E83810103A15 +:10095000A0E83810F9D230BC530724BFB1E8081022 +:10096000A0E8081044BF51F8043B40F8043BD2070C +:1009700024BF31F8022B20F8022B44BF0B78037000 +:100980007047083A07D3B1E80810083A40F8043B2A +:1009900040F804CBF7D25307E4E7000062F30F22DC +:1009A00062F31F42401810F0030308D0C91A1FD386 +:1009B000DB0748BF00F8012D28BF20F8022D1300E7 +:1009C00030B414461546103928BF20E93C00FAD847 +:1009D000490728BF20E90C0048BF40F8042D8900D2 +:1009E00028BF20F8022D48BF00F8012D30BC704709 +:1009F000C91818BF00F8012DCB0728BF00F8012D3A +:100A0000704700001FB500F003F8212101601FBDF1 +:100A1000014800F003B80000F8A50020704700006E +:100A2000DFF8700D007870472DE9F0418CB001F0CF +:100A30008BFA0446DFF8605D2E6841E096F9080005 +:100A400007283CD00B283ADA062838D006F10807E8 +:100A5000B86C002802D5E16E0818B8644FF0FF3179 +:100A60003046FA6D926990478046B8F1010F04D183 +:100A700097F84C00B96D09698847B8F1020F0BD19E +:100A8000797E38697A688018BA6D52699047002873 +:100A900002D0304601F050FB00213046FA6D9269D9 +:100AA0009047022801D10120B87501213046FA6D26 +:100AB00092699047022802D1304601F0EBFB36687C +:100AC000AE42BBD1206E00280BD00A208DF8080062 +:100AD00002208DF80000E06EADF82A0000A801F0B9 +:100AE00045FF01200CB0BDE8F08130B585B004466B +:100AF0000D46CA208DF800002888ADF801000220BC +:100B0000ADF80300BDF80100001D02F035F8CDF886 +:100B1000090002220DF10301FFF77CFA02222946A7 +:100B2000DDF80900801CFFF775FA2A882146DDF8F8 +:100B30000900001DFFF76EFA0020288000A9DFF8E9 +:100B40005C0C02F043F805B030BDC0F5806032287F +:100B500001DA012070470020704780B502F065F887 +:100B6000407B002804D001F06DFADFF8341C0860E7 +:100B700001BD80B501F066FADFF8281C086001BDF0 +:100B800018B400F10C030422DFF8181C5C7DDB684C +:100B9000C0681818201818BCFFF73CBA30B4148885 +:100BA000651C1580052565541488651C15806354E3 +:100BB00013885C1C1480007A585430BC7047F8B518 +:100BC0000E4614461D4629884A1C2A8037220A559B +:100BD00029884A1C2A80027A0A5500F108077A7E81 +:100BE0007868311828880019FFF714FA2888797E68 +:100BF00040182880787E796871184058DFF8A01B6B +:100C00000968401A0090042200A928880019FFF7FB +:100C100001FA2888001D288080B2FFF796FF00287F +:100C200003D029462046FFF760FFF1BD2DE9F041D2 +:100C300004460D4616461F46DDF8188008E0434678 +:100C40003A4629462046FFF7BAFF94F822002D18AD +:100C5000B542F4DBBDE8F081F8B5044615461E4602 +:100C6000069F00972269FFF7E1FF2069854206DAB7 +:100C7000009733462A4600212046FFF7D7FFF1BDF3 +:100C800000F110018A688B7CD2188A600069824268 +:100C900001D10020886000208873704770B582B051 +:100CA00000F1140674684569002D07D500920B46C3 +:100CB0002246B17B6118FFF7CFFF73BDAC420092B3 +:100CC0000B462246294602DAFFF7C6FF73BDFFF73F +:100CD000ADFF73BD70B504460D461646FFF7DEFF47 +:100CE0000123324629462046FFF758FFA06960617C +:100CF00070BD2DE9F84304460D46164601F024F96F +:100D0000804601F092FF81462046FFF739FF04F14B +:100D10000807386C012849DB99F80A00002821D01F +:100D2000B87D002879D000207864B87E3A69F968E7 +:100D30008B1A834205D0002910D1BB689B1A8342CD +:100D40000CD13B7E002B06D000962B468218204605 +:100D5000FFF782FF02E04FF0FF30F8602046BDE869 +:100D6000F2438DE7786CD8F86C10401A786401284B +:100D700015DA386C7864324629462046FFF78EFF34 +:100D8000B87D002808D033462A4639692046FFF747 +:100D900016FF2046FFF774FF3869F8603DE0B87D24 +:100DA00000283AD02046BDE8F24369E7B87D002824 +:100DB00033D094F9080099F80A1000291BD00928AB +:100DC00001D0072805D133462A4639692046FFF766 +:100DD000F6FE94F9080008281AD197F92C0001288A +:100DE00016DB386B8068B0F57A7F0BD1B7F94E000F +:100DF000012807DA11E0082804D1DFF8AC094068BF +:100E000000280AD133462A4639692046FFF7D7FE23 +:100E10002046FFF735FF3869F860BDE8F1832DE91A +:100E2000F04104460D46DFF8706937681BE097F91A +:100E30000800062811D107F1080898F81910D8F809 +:100E40001000D8F804208018D8F85820526990472C +:100E5000002802D0012088F816002A46214638468C +:100E6000FFF747FF3F68B742E1D1BDE8F081F8B531 +:100E700004460D46DFF83409C6690FF2340001F06C +:100E80004EFF06F10C07797DF868F26880187A6DDC +:100E900052699047002809D00120B874707A002860 +:100EA00004D02A4621463046FFF723FF0120F2BD39 +:100EB0003D3E5055500000000288D21C02800A803E +:100EC000704780B50B889B1AADF80030BDF8003034 +:100ED000002B09D01018012100F8031C022200A9E0 +:100EE000801EFFF797F801BD0888C01E088001BD6D +:100EF0002DE9F041F0B005460E4601F025F8074611 +:100F000001F093FE804610A84FF4C07102F01EF964 +:100F100000208DF8020006A8282102F017F901A888 +:100F2000142102F013F90020ADF800000446386ED9 +:100F3000002800F0A08198F9090002F084FC002844 +:100F400000F0998100A93046FFF7B6FFA04615E0F2 +:100F5000386E20FA08F0C0070ED508EB8800DFF8DD +:100F6000501801EBC00292F90900012804D10DF1DB +:100F7000020110A8126A904708F10108B8F11D0F8C +:100F8000E6DB274619E03088421C328089784155DB +:100F90003088FFF7DAFD00280DD0BDF8002031467B +:100FA0002846FFF78EFF31462846FFF79EFD00A931 +:100FB0003046FFF781FF7F1C7FB29DF80200874219 +:100FC00080F251813188481C308007EB47000001D6 +:100FD00010AA825C4A5531884A1C328010AA8018B7 +:100FE00042784A553288511C3180411C4B78535508 +:100FF0004A78032A06D0092A00F020810C2A00F042 +:10100000FB80C0E74278032A04D13288531C338026 +:101010008B7853553288531C3380CB785355631CDF +:10102000CA7812064AD401AA91F804C004F802C092 +:10103000DBB24C799C545B1CDBB200249C545B1CDF +:10104000DBB28C799C545B1CC489DBB24FEA142C54 +:1010500003F802C05B1CDBB29C545B1C00F20E0464 +:10106000DBB294F802C003F802C05B1CDBB2E47888 +:101070009C545B1CDBB2847C9C545B1CDBB2C07C4C +:101080009854581CC0B2CB798354401CC0B20B7A20 +:101090008354401CC0B24B7A8354401CC0B2897A3E +:1010A0008154441CE4B2224601A930884019FEF75D +:1010B000B1FF308850FA84F0308069E7D1F804C07D +:1010C00006AA4FEA1C4E04F802E0DBB24FEA1C24E9 +:1010D0009C545B1CDBB203F802C05B1C8C68DBB267 +:1010E0004FEA144C03F802C05B1CDBB24FEA142C2D +:1010F00003F802C05B1CDBB29C545B1CC968DBB20A +:101100000C0C9C545B1CDBB20C0A9C545B1CDBB2C9 +:101110009954591CD0F81130C9B21C0C8C54491C7C +:10112000C9B21C0A8C54491CC9B28B54491CD0F852 +:101130002730C9B21C0C8C54491CC9B21C0A8C54EF +:10114000491CC9B28B544B1C00F22701DBB20C794D +:101150009C545B1CDBB24C799C545B1CCC88DBB28E +:101160004FEA142C03F802C05B1CDBB29C545B1CDE +:10117000DBB2097A9954591CD0F81530C9B21C0C4D +:101180008C54491CC9B21C0A8C54491CC9B28B54DA +:10119000491CD0F81930C9B21C0C8C54491CC9B276 +:1011A0001C0A8C54491CC9B28B54491CD0F81D3000 +:1011B000C9B21C0C8C54491CC9B21C0A8C54491C61 +:1011C000C9B28B54491CD0F82100C9B2030C8B540E +:1011D000491CC9B2030A8B54491CC9B288544C1C1F +:1011E000E4B2224606A930884019FEF713FF308882 +:1011F00050FA84F03080CBE6C11CB1F90300C0F393 +:10120000072242EA0020A1F80300B1F90700C0F369 +:10121000072242EA0020A1F80700B1F90500C0F357 +:10122000072242EA0020A1F805000922308840196F +:10123000FEF7F0FE308809303080A9E63288134688 +:1012400090F801C0BCF1030F08D10222C11C58194B +:10125000FEF7E0FE3088801C308099E6501C30801C +:101260008878585594E6BDF8002031462846FFF7A7 +:1012700028FE02F00FFB70B0BDE8F0812DE9F041CF +:1012800005460E4601F0D1FC0746DFF8204C2078D9 +:10129000401C207002F0C3FC6078401C607097F81E +:1012A0001880B8F1000F26D03088404480B2FFF794 +:1012B0004CFC002803D031462846FFF716FC308846 +:1012C000411C3180032141553088411C318000F898 +:1012D0000580424607F1190130884019FEF79AFE51 +:1012E000308840443080FF22002107F11900FEF7CA +:1012F00087FE002038766078401E6070C0B20028FB +:1013000001D102F086FCBDE8F04102F02BBD38B5FA +:1013100004460D4601F089FC817A002909D1417B00 +:10132000002906D129884A1C2A8006220A55012153 +:10133000417331BD38B504460D46288800280CD0CD +:101340002046FFF79BFF29462046FFF7E0FF29468E +:101350002046BDE83440FFF7C8BB31BD14B585B0A9 +:10136000049101A90022134614461CC10A21ADF8BC +:10137000001004218DF804108DF805000A4605A917 +:101380000DF10600FEF746FE042204A90DF10A0045 +:10139000FEF740FE00A901A8FFF7A7FB06B010BDAD +:1013A000F8B5044601F041FCDFF80054296A496CA5 +:1013B0008A6842F210739A425AD10969002957D1BA +:1013C000807A002854D0DFF8E06330880C30B0F524 +:1013D000347F01DD00203080012002F0EEFF03F0B9 +:1013E00028F8ADF80200032002F0E7FF03F021F82F +:1013F000ADF8000003F034F8378802220DF1020145 +:10140000B8190830FEF706FEBF1C3780022200A97B +:10141000BFB2B8190830FEF7FDFDBF1C37800422AB +:101420002146BFB2B8190830FEF7F4FD381D3080F0 +:10143000022280B2801900F1080106206B691B6E40 +:101440001B6A98473088801C3080022280B2801945 +:1014500000F1080106206B681B6E1B6A98473088F4 +:10146000801C308070680C30B0F5347F00D2706022 +:10147000F1BD2DE9F041CC4C6068002828D02188CE +:1014800088421FD001F078FB054666682788A6EBE6 +:1014900007081FFA88F84246381900F10801284663 +:1014A000FEF7B8FD3A4604F1080108EB0500FEF727 +:1014B000B1FD3246294604F10800FEF7ABFD28468F +:1014C00001F072FB626804F108010520FFF746FF96 +:1014D000002060602080BDE8F0812DE9F04385B0F8 +:1014E00006460F46904601F0A0FB81460025D6F83F +:1014F0000900041D3078014601297BD00F2933D023 +:10150000802900F0A380812900F0AB80822900F0BF +:10151000A880852900F0A580862900F0A28088296E +:1015200000F09F808A2900F0A4808B2900F0BD8004 +:101530008C2900F0C9808D2900F0D580DD2900F0CC +:10154000FD80DF2900F01381F0292BD0F42935D05C +:10155000F62944D0F82962D0F92950D0FC291CD0B2 +:10156000FF2900F0C58078E099F81600207099F8FE +:10157000170000280CD14FF0FF30009003462A4698 +:1015800042F21071082000F098FF012089F817003E +:10159000202089F81901012060E099F819012070D4 +:1015A00001205BE0DFF808090168090C217001687F +:1015B000090A61700068A07001204FE0D9F810009E +:1015C000000E2070D9F81000000C6070D9F81000DF +:1015D000000AA070D9F81000E07001203EE003225C +:1015E00021462846DFF8CC389B681B6E1B6A98475B +:1015F000012033E0204603F065FC01202EE0B6F820 +:101600000120B6F80300C010C0EB0011D6F80500A9 +:1016100000EB81112046FEF7FDFC01201EE028466C +:10162000ADF8000001207179012900D1032002F0FA +:10163000C4FE02F0FEFEADF8000002F011FF02222F +:1016400000A92046FEF7E6FC012007E0D6F80500D9 +:1016500020702146284600F0EFFE284605B0BDE880 +:10166000F08329462170214600F07F0000F0E4FE5F +:10167000F3E701202070DFF83C0846682F46307FF2 +:10168000002801D12846E9E7707A002803D1306E9E +:101690004068804707462046316EC9698847002F59 +:1016A000DBD0306E80688047D7E70120B6F80310A2 +:1016B000C1F3C101091D884040F00200207021469D +:1016C000012000F0B9FEC8E799F80000207099F8F1 +:1016D0000300607099F80500A07099F80600E070AA +:1016E00001202071BAE7204603F000FC0546B4E76C +:1016F00003A9284603F073FD02A9284603F0E9FD7B +:1017000003F092FD0090DFF8B027A2FB0067760A95 +:1017100046EAC756901B0090042203A92046FEF714 +:1017200079FC042202A9201DFEF774FC042200A902 +:1017300004F10800FEF76EFC01208FE77079DFF8F6 +:10174000741751F82060707A00280CD04246394650 +:101750003046FFF7BFFADFF86417082003F0CAFE2F +:101760000120207001E028462070012076E7707982 +:10177000DFF8401751F82060306996F8221090FB8E +:10178000F1F0401E0190042201A92046FEF742FC20 +:10179000012063E714720020BC070020B45F002022 +:1017A000F8710020FC710020CC63002000000020B4 +:1017B00080C60020F0B599B0064601F036FA05461D +:1017C00000F0C2FBD6F809100C1D31780A46A12A98 +:1017D00000F0B681A22A00F0D481A42A00F0DF81B3 +:1017E000B12A00F05F82B22A00F0E182B82A00F04C +:1017F000F581C12A00F00882CD2A00F0E280CE2ACD +:1018000000F0F880D12A3CD0D22A50D0D32A57D029 +:10181000D42A74D0D62A00F09980D72A00F0968076 +:10182000D82A00F09D80D92A00F09A80DA2A00F0A8 +:10183000A180DB2A00F05781DC2A00F05B81E12ADD +:1018400000F05F81E22A00F06E81F12A00F0A680AC +:10185000F22A00F0E880F32A00F02381F52A00F054 +:10186000F980F72A00F00C81FA2A00F0B582FB2AF1 +:1018700000F0B782FD2A00F0F880FE2A00F0D9823D +:101880000CE10021284601F0C7FB95F81B01400739 +:1018900009D50FF2346001F042FA95F81B0100F00F +:1018A000FB0085F81B01FFF7E4FD0120F7E00121B3 +:1018B000284601F0B1FB012003F05EFE0120EEE0BE +:1018C00005F109000021417005F11004E0790028BC +:1018D00013D142F210754FF0FF30009003460A46D4 +:1018E0002946082000F0E9FD4FF0FF330122294688 +:1018F000082000F059FE0120E0710120CFE005F240 +:1019000009000121417000210171807800281BD15C +:1019100005F11004E079002813D042F210754FF061 +:10192000FF330A462946082000F03EFE4FF0FF3004 +:101930000090034601222946082000F0BEFD002049 +:10194000E071012003F018FE0120A8E0D62901D1A2 +:10195000012000E0002005F10901887001209EE0CF +:10196000D92901D1012000E0002005F10901C8704A +:10197000012094E0DFF83C05056AB5F9560001281E +:101980000ADB0020A5F856004FF0FF3302464FF463 +:101990007A71082000F008FE012080E000210CE0B0 +:1019A0000A180B5D82F87030022905D10A5D80F8B3 +:1019B00073200A5D80F87420491C0329F0DB0120A4 +:1019C0006DE0002612E0DFF8EC04456805EB460503 +:1019D000022204EB460105F15800FEF71BFBB5F9A6 +:1019E00058100FF2EC4001F09AF9761C032EEADB56 +:1019F000012054E0002612E0DFF8B804056805EB8A +:101A00004605022204EB460105F15800FEF702FBF1 +:101A1000B5F958100FF2C44001F081F9761C032E7D +:101A2000EADB01203BE02969090601D4012036E008 +:101A30002178A0F876106178A0F87810022120466D +:101A4000DFF87024D269126E92699047002825D081 +:101A5000012024E0032221460120DFF858349B684E +:101A60001B6E1B6A9847012019E0122221460220B2 +:101A7000DFF840349B681B6E1B6A984701200EE01C +:101A8000DFF830048569286E80688047002805D01B +:101A90000122214605202B6E1B6A9847002019B0B1 +:101AA000F0BD217880F87A1090F87A00002806D0EE +:101AB0004FF48051002001F0E3FA0120EFE7DFF856 +:101AC000F403C169497A826A527A51188069407A6E +:101AD0004018C0B2002804D14FF48051002001F01A +:101AE000D1FA0120DBE7D6F805100FF2FC3001F047 +:101AF00016F9D3E7D6F805100FF2F83001F00FF918 +:101B0000CCE795F81B012178084385F81B0195F86F +:101B10001B110FF2EC3001F002F9DFF8A4130220E0 +:101B200003F0E8FCBAE795F81B012178884385F8B3 +:101B30001B0195F81B110FF2D83001F0F0F8ADE75A +:101B400094F90050002001904FF0FF3002900746BA +:101B50000422611C01A8FEF75DFAB6F80100062810 +:101B600006DB0422611D02A8FEF754FA94F90970FD +:101B70000097029B00220199284600F09EFC2070ED +:101B80008CE794F900500422611C01A8FEF742FA88 +:101B900000231A460199284600F006FD7FE794F9D4 +:101BA00000504FF0FF30029007460422611C01A84C +:101BB000FEF730FAB6F80100062806DB0422611DA4 +:101BC00002A8FEF727FA94F909700097029B0022F9 +:101BD0000199284600F04CFD20705FE7617820787D +:101BE00003280BD18DF80D10012905D1A0788DF8AF +:101BF0000E0040B200F09CFE012050E749B240B216 +:101C000001F0DEFEC0B24AE7207801460E3903D06B +:101C1000091F032914D941E70E208DF80C006078C4 +:101C20008DF80D00A1788DF80E10E2788DF80F2058 +:101C300052B249B240B201F03BFA00F070FE2DE71B +:101C40008DF80C00122802D161788DF80D10132840 +:101C500002D161788DF80E10142802D161788DF8C8 +:101C60000F10152802D160788DF80D006278217868 +:101C70000FF2AC2001F053F806208DF834002078E4 +:101C80000E900DF13D0003A92022FEF74BFE0B2024 +:101C90008DF83C000020ADF85E000DA800F066FE57 +:101CA000C0B2FCE694F9000001F067FA01285DD1AA +:101CB00020780146032908D0062945D009290BD0F0 +:101CC0000C2925D00D2931D04BE00322611C0DF1E8 +:101CD0000D00FEF79FF949E00722611C0DF10D0090 +:101CE000FEF798F9BDF80D00010A41EA0020ADF8B1 +:101CF0000D00BDF80F00010A41EA0020ADF80F0009 +:101D0000BDF81100010A41EA0020ADF811002DE0F4 +:101D10000322611C0DF10D00FEF77CF9BDF80E00E9 +:101D2000010A41EA0020ADF80E001FE00322611C09 +:101D30000DF10D00FEF76EF9BDF80E00010A41EA43 +:101D40000020ADF80E0011E00122611C0DF10D0024 +:101D5000FEF760F99DF80D100FF2D41000F0DFFFD0 +:101D600004E08DF80C0060788DF80D0020780528CF +:101D700007D1544801210170687A002801D1084632 +:101D80008DE600208DF8340020780E900DF13D0096 +:101D900003A92022FEF7C6FD0B208DF83C00002091 +:101DA000ADF85E000DA800F0E1FDC0B277E6207846 +:101DB000052804D143480021017001206FE601206D +:101DC0008DF8340020780E900B208DF83C000DA883 +:101DD00000F0CCFDC0B262E6304603F0B7FC012053 +:101DE0005DE62078052822D8DFE800F00321080806 +:101DF000181F0FF2481004F0D8F818E000200090E7 +:101E00000422611C00A8FEF705F9207803F06EFC9F +:101E1000009A01462078FFF7A1FA08E095F81B0127 +:101E200040F0040085F81B0101E0FFF722FB0120D0 +:101E300035E6042221460CA8FEF7ECF80422211D09 +:101E40000BA8FEF7E7F8042204F1080100A8FEF74A +:101E5000E1F80CA9002003F073F90BA9002003F0AE +:101E6000E8F903F0E1F90446134A00230098194603 +:101E7000101A63EB0101490241EAD051400204F01B +:101E80004FF90090844205D2011B4FF0004003F04F +:101E9000A0FA09E0A04207D2C4F500700099091821 +:101EA0004FF0004003F095FA0120F8E5A43100203E +:101EB000443200200000002000CA9A3B4C5200200F +:101EC0008452002014720020524D20504400000023 +:101ED00047797243616C3D256400000041434343F0 +:101EE000616C3D256400000044554D50534554201D +:101EF0002564000044554D5046494E20256400009D +:101F0000414420564C203A203078257800000000CB +:101F1000524D20564C203A203078257800000000A1 +:101F200050443A2053657425642025640000000065 +:101F300050443A20534320256400000041505F5232 +:101F4000455155455354000000487047D46900205E +:101F500080B5FFF7F9FFDFF87C180860012002BDAB +:101F600070B48C1E012C01DA0C34401E3C21642517 +:101F7000B0FBF5F5C5EB90054FF4C876B0FBF6F66F +:101F8000751940F26F1674430C26B4FBF6F464190D +:101F9000121940F26D1404FB0020DFF83C281018E1 +:101FA00000EB400203EBC200039A01FB0020049AFD +:101FB00001FB002070BC70471CB50C460168019104 +:101FC000416800918368C2680169491C406900F258 +:101FD0006C70FFF7C5FF2060002016BD10B58EB0F5 +:101FE000DFF8F807046801A9002003F0F8F800A959 +:101FF000002003F06EF99DF8040006909DF805009E +:1020000005909DF8060004909DF80100401E089080 +:102010009DF8020007909DF803006430099002A922 +:1020200004A8FFF7C9FF4FF47A706043400AC0F577 +:102030007A700390029A4FF47A73C117E3FB02019E +:102040000EB010BD80B5FFF7C9FFDFF89417D1E9D6 +:102050000023801A02BDF8B50446A069E16845185E +:10206000B5F90000B5F90270B5F90460B4F858107C +:10207000411A2980B4F85A10791A6980B4F85C10B2 +:10208000711AA980B5F90010C913B1EBE03F13D064 +:10209000B4F95810C913B1EBE03F0DD00FF25470F2 +:1020A00000F03DFEB5F90000012802DBDFF834073F +:1020B00001E047F6FF702880B5F90210C913B1EBB3 +:1020C000E73F13D0B4F95A10C913B1EBE73F0DD075 +:1020D0000FF22C7000F023FEB5F90200012802DB9C +:1020E000DFF8000701E047F6FF706880B5F90410DB +:1020F000C913B1EBE63F13D0B4F95C10C913B1EBCF +:10210000E63F0DD00FF2047000F009FEB5F90400AF +:10211000012802DBDFF8CC0601E047F6FF70A8805B +:1021200094F90800002804D1002000E0401C032896 +:10213000FCDBF1BD0000000070B584B0044600A8CF +:1021400000210A460B460EC0A069E16845181646F4 +:1021500094F90800012802D12046FFF77CFF94F98A +:1021600008000146012902D9C91E40F089800028D3 +:1021700001D14FF6FF76DFF85C160968411891F837 +:102180007010491E06295ED8DFE801F004101D29F1 +:1021900036424F00B5F90210009100A9B5F90020B0 +:1021A000B21A4A60B5F904208A6056E0B5F9001009 +:1021B000711A009100A9B5F90220B21A4A60B5F966 +:1021C00004208A6049E0B5F90210711A009100A953 +:1021D000B5F900204A60B5F904208A603DE0B5F900 +:1021E0000010711A009100A9B5F902204A60B5F9F2 +:1021F0000420B21A8A6030E0B5F90210009100A9FB +:10220000B5F900204A60B5F90420B21A8A6024E0CA +:10221000B5F90010009100A9B5F90220B21A4A6080 +:10222000B5F90420B21A8A6017E0B5F90210711AE4 +:10223000009100A9B5F90020B21A4A60B5F904204E +:10224000B21A8A6009E0B5F90010009100A9B5F949 +:1022500002204A60B5F904208A6001280AD10020D2 +:1022600006E051F8202002F30F0241F82020401C24 +:102270000328F6DB00982880486868808868A88072 +:1022800094F90800002802D12046FFF7E4FE01205F +:1022900004B070BD70B52DED028B82B08169C2684B +:1022A000891890F908000A2800F2C180DFE800F0E0 +:1022B000062B9DBFBF8BBFBF65AAB800B1F9024016 +:1022C000B1F90450DFF80C0500689FEDB60AB1F9CA +:1022D000001000EE901AF8EEE00A60EE800AC0ED01 +:1022E000000A00EE904AF8EEE00A60EE800AC0EDC7 +:1022F000010A00EE905AF8EEE00A20EE800A001D76 +:1023000080ED010A93E0B1F90240B1F90450DFF821 +:10231000C4040068061D9FEDD38BB1F9000000EEE8 +:10232000100AB8EEC00A10EE100AFDF779FE53EC61 +:10233000182BFDF7ADFEFEF7D9F8B06000EE104A9D +:10234000B8EEC00A10EE100AFDF76AFE53EC182B27 +:10235000FDF79EFEFEF7CAF8F06000EE105AB8EEE8 +:10236000C00A10EE100AFDF75BFE53EC182BFDF7C8 +:102370008FFEFEF7BBF8306159E00020ADF8020097 +:10238000ADF800000888ADF802004888ADF80000FC +:10239000DFF840040068061D9FEDB40ABDF9020095 +:1023A00000EE900AF8EEE00A60EE800AC6ED0E0A32 +:1023B000BDF9000000EE900AF8EEE00A20EE800A77 +:1023C00086ED0F0A33E000200190086801909DED32 +:1023D000010AB8EEC00ADFEDA50A20EE200ADFF8F8 +:1023E000F403006880ED0C0A21E0DFF8E8030068E0 +:1023F0000A88A0F84A2000F24A004A884280898868 +:10240000818014E0DFF8CC03006800F24A000A88FB +:10241000C2804A8802818A884281C988818106E017 +:10242000DFF8B003006891F9001080F8581001201F +:1024300002B0BDEC028B70BD70B50D46DFF8A8137D +:1024400051F820400026207F002801D1304670BD81 +:10245000607A002803D0206E8068804706462846B0 +:10246000216EC96988470546002E02D0206E40685B +:102470008047284670BD9B0701D542F2107292FB3F +:10248000F1F190F8222051430069814201DA0120E4 +:10249000704700207047002901D48164C164002A7C +:1024A00003D4910701D580F820207047002903D478 +:1024B000002181644161816170472DE9F2418BB057 +:1024C0000446154619460020ADF82A0001900A205E +:1024D0008DF8080000208DF809008DF80A002646C6 +:1024E000C14850F826704FF00208387F002831D0DC +:1024F0009DF94820002A08D4D00706D513460A467D +:102500000B993846FFF7B7FF48E03846FFF7C3FF9F +:10251000A4F10C00062805D22146C9B20BA83A6ED8 +:1025200092699047787A00281CD1294649B23846EA +:102530007A6E1268904700280ED0386E4068804747 +:10254000002805D14146A1F10108C9B20029F4D102 +:10255000002801D1002021E0294649B238467A6E90 +:1025600052689047787A401C78722A4652B20B998A +:1025700038467B6E1B69984700F0C0F8072E0CD1D7 +:10258000002D0AD100208DF80000112001900A20B2 +:102590008DF8080000A800F0E9F901200CB0BDE8B2 +:1025A000F081000060F61C3A2DE9F0418CB006463F +:1025B0000C46154619460020ADF82A0001900A2065 +:1025C0008DF8080000208DF809008DF80A00864873 +:1025D00050F826704FF00208387F002801D1002003 +:1025E0003CE03846FFF762FF787A012818D1294687 +:1025F00049B238467A6E9268904700280AD0386E01 +:1026000080688047002805D14046A0F10108C0B28B +:102610000028F4D1294649B238467A6ED2689047EC +:10262000787A002801D0401E78722A4652B221469C +:1026300038467B6E5B69984700F060F8072E0CD136 +:10264000002D0AD101208DF80000112001900A20F0 +:102650008DF8080000A800F089F901200CB0BDE851 +:10266000F081000089AD84FA0A74313F0AD7233C17 +:102670002DE9F04104460D46164619465A4850F8D1 +:102680002470387F002815D09DF91820002A08D41E +:10269000D00706D513460A4629463846BDE8F0411C +:1026A000E9E606EB460007EB8008D8F838008068BA +:1026B000002801D500201FE03846FFF7ECFE324627 +:1026C00052B2D8F83800816838467B6E5B6998470B +:1026D000324652B2294638467B6E1B699847A4F1B0 +:1026E0000C00062805D22946204603F0FFFF0120F2 +:1026F00002E000F003F80120BDE8F08170B56FF052 +:1027000000452C463948016804E08A68A24200DA94 +:10271000144609688142F8D1354E3078401C30703B +:1027200001F07DFA7078401C7070AC4200D100243A +:10273000284801688C66CA6E204682420AD000286A +:1027400001D0002A03D1C86600F0C5FA02E00120DA +:1027500004F0A9F87078401E7070C0B2002801D152 +:1027600001F057FA01F0FEFA012070BD38B50546B8 +:102770001F4C2078401C207001F051FA6078401CFA +:10278000607014480068C5661848016805E08A68EA +:10279000B2FBF5F26A43CA6009688142F7D16078FA +:1027A000401E6070C0B2002801D101F032FABDE8CD +:1027B000314001F0D7BA0D490A6808E01369012BCE +:1027C00001DAD368136113691B1A136112688A4214 +:1027D000F4D17047CCFE00207505F5FF2828004095 +:1027E00098FE00200080FFFF000000206000002015 +:1027F000A431002058206973206F766572000000B4 +:1028000059206973206F7665720000005A20697341 +:10281000206F76657200000053487047F8B50C468B +:102820001646012500282BD106EB86004E4901EB08 +:10283000C007F868E040C00708D52346FA6831466B +:102840000FF2882000F06BFA0220F2BD4FF0FF304B +:10285000009003462A4679682046FFF72EFE00289E +:102860000CD02346FA6831460FF2702000F057FA78 +:10287000F8682946A1400843F8602CE00220F2BD28 +:10288000012828D106EB8600374901EBC007F8681C +:10289000E040C00708D42346FA6831460FF24C20C6 +:1028A00000F03DFA032516E04FF0FF332A46796821 +:1028B0002046FFF779FE002807D02346FA68314604 +:1028C0000FF2382000F02BFA00E00325F868012110 +:1028D000A1408843F8602846F2BD01F07DB802B5FA +:1028E0008CB00021ADF82A1001910A218DF8081052 +:1028F00000218DF809108DF80A1005218DF80010BF +:10290000019004220CA90DF10900FDF783FB0020C2 +:10291000ADF82A0000A800F029F80DB000BD80B580 +:1029200004F080FA0FF2E410BDE8024000F0F7B9BD +:1029300010B50446C0B204F080FA21460FF2D81058 +:10294000BDE8104000F0EBB900221D2809D200EBD1 +:102950008003054800EBC300C068C840C00700D52D +:10296000012210467047000080C6002030B587B0B5 +:102970000446012594F90000062800F29280DFE861 +:1029800000F00427355067888C0004F1090182B0FB +:1029900068462022FDF7C6FF0CBC94F90810606859 +:1029A00040B200F014FD02280AD1606800B200F0C5 +:1029B0004DFE002561680FF26C1000F0B0F976E072 +:1029C000032874D161680FF2641000F0A8F96EE07A +:1029D00094F90810606840B200F09FFD032866D1AA +:1029E00061680FF2501000F09AF960E0618D00A864 +:1029F00000F045FE9DF9040002280AD1009800B2BB +:102A000000F024FE002500990FF2301000F087F945 +:102A10004DE003284BD100990FF2281000F07FF908 +:102A200045E004F08FFE02280AD1606800B200F091 +:102A30000DFE002561680FF2141000F070F936E009 +:102A4000032834D161680FF20C1000F068F92EE011 +:102A5000606805280CD1284604F04BFF02280DD0F1 +:102A6000032824D161680FF2FC0000F058F91EE041 +:102A700002281CD105F02CF80228F1D1606800B2C0 +:102A800000F0E4FD002561680FF2D00000F047F986 +:102A90000DE0204600F050FE09E0204600F0FAFF6D +:102AA00005E061680FF2C40000F039F900252846FE +:102AB00007B030BD012070470FB4022004B070474A +:102AC000012070470020704770470000534D41437C +:102AD000202564202564202564000000534D4120FA +:102AE000256420256420256400000000534D5243D6 +:102AF000202564202564202564000000534D5220C9 +:102B000025642025642025640000000050442053E3 +:102B1000657453540000000050442055543A202559 +:102B200064000000414C4F4620256400414C434660 +:102B300020256400524C434620256400504C4F46EB +:102B400020256400504C43462025640050414F46E8 +:102B500020256400504143462025640050504F46D4 +:102B60002025640050504346202564004558204CE1 +:102B70004D454C202564000030B5134D044681B00E +:102B8000287820B9281D05F01FF801202870281D7D +:102B900005F034F8204605F0E1FE0446281D05F056 +:102BA0004EF8204601B030BD30B5074D044681B027 +:102BB000281D05F023F8204606F02AF8281D01B04C +:102BC000BDE8304005F03BB8DCFD002030B50446E0 +:102BD0000F480D46017881B0491C017001F01FF8C3 +:102BE000A068E168884209D13821204606F09EFAA3 +:102BF00001F015F8A068E1688842F5D02946204622 +:102C000006F0B2FA01B0BDE8304001F0ABB800BF49 +:102C1000A431002010B5DFF8FC444FF48E7200217F +:102C20002046FDF7EDF9204610BDDFF8E8047047B7 +:102C300010B5FFF7EFFF044600221146084600F0EA +:102C400037FAC046C04601F019F9204600F018F8DE +:102C500001F04FFB204600F09BF9204600F014F8ED +:102C6000204600F018F800F05CF900206072A072B5 +:102C7000E0722073012060730020E075012010BD18 +:102C80000021C17101722BE010B5044601F04EF92C +:102C90000120607110BD10B5044601F0F7F9012064 +:102CA000A07110BD38B50446012501F0A2FA012833 +:102CB00004D12846E0700020A0700AE0022804D168 +:102CC0000020E0702846A07003E00020E070A070B3 +:102CD0000546284632BD80B501F0D0FB012002BD7B +:102CE00010B50446E07901F0D3FC0121217010BD3C +:102CF00070B504460025E679E171FFF7F1FF002881 +:102D000007D02046FFF7C0FF2046FFF7C4FF01258C +:102D100003E0E6712046FFF7E3FF284670BD0EB4DE +:102D200070B5C1B0054600A84FF4807100F00EFAEE +:102D3000FFF77BFF044645AB2A464FF4807100A89D +:102D400006F060FA00A806F07BFA451C00A82818D7 +:102D5000002100F8011CDFF8C0633078401C30709F +:102D600000F05DFF7078401C7070207E2818FF28EE +:102D700010DA207E002803D0207E00190A21017677 +:102D80002A4600A9207E00191930FDF743F9207E5C +:102D9000281820767078401E7070C0B2002801D1CB +:102DA00000F037FF00F0DEFF41B070BC5DF810FBB3 +:102DB0002DE9F84305460E4617464FF0020800F08D +:102DC0002EFFD54C6078401C60709DF80000401EBE +:102DD0008DF8000017F8019B00AB4A463946304693 +:102DE00001F07EFC002809D06078401E6070C0B2FF +:102DF000002801D100F00DFF012015E05FFA88F8EE +:102E0000424629460FF22030FFF789FF4046A0F1E5 +:102E100001080028E0D16078401E6070C0B2002830 +:102E200001D100F0F6FE0020BDE8F2832DE9F04765 +:102E300004460D4616461F46DFF8E082089888F8DB +:102E4000000000F0ECFEDFF8D09299F80100401C81 +:102E500089F801004FF0020A4346324639462846B7 +:102E600001F0E8FC00280BD099F80100401E89F819 +:102E70000100C0B2002801D100F0CBFE012017E014 +:102E80005FFA8AFA524621460FF2A820FFF747FF61 +:102E90005046A0F1010A0028DED199F80100401E39 +:102EA00089F80100C0B2002801D100F0B2FE002074 +:102EB000BDE8F0872DE9F84305460E4617469846CB +:102EC0004FF0020900F0ABFE934C6078401C60703C +:102ED00042463946304601F09FFD002809D060780F +:102EE000401E6070C0B2002801D100F092FE0120A7 +:102EF00015E05FFA89F94A4629460FF24420FFF7A8 +:102F00000EFF4846A0F101090028E1D16078401E7B +:102F10006070C0B2002801D100F07BFE0020BDE847 +:102F2000F28306F0EBBDF8B5044600273D467C4E23 +:102F30000DE039464F1EC9B200290AD1002804D13C +:102F400020690121A9408843206100276D1C122DB2 +:102F500010DA56F82500006E006880470128E8D195 +:102F600021690122AA401143216156F8251001224E +:102F70000A77E3E72069032805D02069022802D0F8 +:102F80002069012803D1206940F480502061F1BDFF +:102F900001F02CBE01F092BE01F04BBE81B00022C8 +:102FA000ADF80220ADF80020C079042808D006282A +:102FB00009D008280AD009280BD00A280CD00EE026 +:102FC0004FF4C8600DE04FF448600AE04FF4C85079 +:102FD00007E04FF4FA5004E042F2107001E041F2D1 +:102FE0007070ADF802200DE0BDF80020521CADF865 +:102FF0000020BDF800208242F6DBBDF80220521C02 +:10300000ADF80220BDF802208A4203D20022ADF8BA +:103010000020EEE701B07047417210B58CB0FDF7AB +:10302000FFFC0446FFF701FE0021ADF82A100191D4 +:103030000A218DF8081000218DF809108DF80A106A +:10304000407A00280DD0002C18D008468DF80000DA +:10305000052001900B208DF8080000A8FFF786FCE2 +:103060000CE0002C0AD001208DF800000520019012 +:103070000B208DF8080000A8FFF778FC0CB010BDFD +:1030800001F07EBE01F086BE01210846F8E701216D +:103090000846F7E702210120F2E702210120F1E7CB +:1030A00001F082BE10B50446FFF7BFFD447510BDA8 +:1030B0001C4B187059709A70002098807047012836 +:1030C00022DB18498A888018888000B2B0F57A7FA0 +:1030D0001ADBA0F57A7088808878401C887040B22E +:1030E0003C2811DB3C3888704878401C487040B25E +:1030F0003C2809DB3C3848700878401C087040B216 +:10310000182801DB00200870704706490622FDF7E9 +:1031100009BC000010680020A431002010720020BB +:1031200000000020D8710020495745202564202543 +:1031300064000000495245202564202564000000F9 +:1031400049524F452025642025640000002206F0E6 +:1031500093BD00004FF0FF31401E02280AD9001F26 +:10316000042807D9C01F052804D9093802D0801EB9 +:10317000052800D80121084670470021012809D000 +:10318000032807D0062805D0092803D00C2801D031 +:103190000D2800D1012108467047000038B50446CB +:1031A0004FF0FF35FFF738FB1C2C2AD8DFE804F07E +:1031B0001616121616121616121229290F121414A8 +:1031C0001616292929162916181B1F2327004FF424 +:1031D0007A7516E0142514E0C82512E0422510E0A7 +:1031E000D0F8C4530DE000F57170856A09E000F570 +:1031F0007170056D05E000F57170856F01E0D0F824 +:103200006454284632BD38B5DFF8D447FEF79CFE3B +:10321000E06206F04BFDFFF7FFFA2063002509E0AE +:103220001C2D04D101F20C41DFF8B8278A67406AEF +:1032300080476D1C1D2D80F2C880216B05EB850039 +:10324000C00000224254401842704FF0FF324260EA +:1032500000220272C2604272032D04D14C31DFF8A9 +:1032600088270A65E3E7012D03D1DFF88027CA64C8 +:10327000DDE7022D04D14C31DFF874278A62D6E7EE +:10328000002D62D0042D04D14C31DFF868278A6705 +:10329000CDE7052D04D1DFF86027C1F8EC20C6E7A3 +:1032A000062D04D1EC31DFF854278A62BFE7072DE1 +:1032B00004D1EC31DFF848270A65B8E7082D04D1BE +:1032C000EC31DFF840278A67B1E7092D04D1DFF838 +:1032D0003827C1F88C21AAE70A2D36D00B2D34D01F +:1032E0000C2D04D1DFF82427C1F804229FE70D2D0F +:1032F00004D1DFF81C27C1F82C2298E70E2D05D148 +:1033000001F50B71DFF80C278A6290E70F2D05D1CC +:1033100001F50B71DFF800270A6588E7102D05D14C +:1033200001F50B71DFF8F4268A6780E7112D04D1CF +:10333000DFF8EC26C1F8CC2279E7122D05D0142D48 +:1033400003D0132D01D0162D10D1DFF8D81601614E +:10335000DFF8D4164161DFF8D4268261DFF8D02689 +:10336000C261DFF8D0260262416260E7152D04D108 +:10337000DFF8C426C1F86C2359E7172D05D101F5F4 +:103380005B71DFF8B8260A6551E7182D05D101F504 +:103390005B71DFF8AC268A6749E7192D04D1DFF8A5 +:1033A000A426C1F80C2442E71A2D05D101F20C41E4 +:1033B000DFF894268A623AE71B2D7FF431AF01F2E1 +:1033C0000C41DFF888260A6531E7012032BD0CB4D4 +:1033D0002DE9F04786B080460125C14609EB8900FA +:1033E000C4000F46DFF8F8650B2F1ED1306B04EBDD +:1033F000000A9AF80100002817D04046FFF7AAFEFD +:10340000012812DB4046FFF7A5FE9AF80110814221 +:103410000BDB404600F0F4F80546306B2018002125 +:1034200041700FF2A460FFF77AFC306B215C002939 +:1034300018D121184A78002A14D1002222541046AB +:1034400048700EA983B068462022FDF77BFA0EBCB7 +:10345000404600F034F8022801D102202AE0032877 +:1034600000D103250A2F04D1306B215C491C215463 +:1034700010E00B2F0ED1B9F1030F06D1306B90F88D +:103480007900002801D103F01AFC306B2018417834 +:10349000491C4170306BF16A0A6E0192B1F85C1000 +:1034A000009121184B78225C49460FF22460FFF707 +:1034B00036FC284606B0BDE8F0075DF80CFB0EB4FC +:1034C000FFB504460125C0B2FFF768FEDFF81065BE +:1034D00004EB8401326B02EBC10778600020387284 +:1034E000F86009A984B068462022FDF72BFA0FBCCA +:1034F0003F69B847022801D102200AE0032801D120 +:10350000032505E0F06A016E2A46A24011430166D8 +:10351000284604B0F0BC5DF810FB2DE9FC470446DA +:1035200089460125264606EB8600C700DFF8B084F1 +:10353000D8F8300007EB000A9AF80100022814DBE3 +:103540002046FFF707FE01280FDB2046FFF702FEAB +:103550009AF80110814208DB2046FFF7FBFD8AF84C +:1035600001000FF28050FFF7DAFBD8F83000395C29 +:10357000002903D13A185278002A2DD0B9F10A0F48 +:1035800007D1002902D0491E395416E000213954D0 +:1035900013E0B9F10B0F10D139184A78002A02D084 +:1035A000521E4A7001E000224A70032E05D190F8A5 +:1035B0007900002801D103F091FBD8F83000395C84 +:1035C000002909D138184078002805D1204600F09C +:1035D00017F8032800D10325D8F83000D8F82C10AC +:1035E0000A6E0192B1F85C10009139184B783A5C80 +:1035F00031460FF2F840FFF792FB2846BDE8F68708 +:10360000F8B50446012504EB8400C700DFF8D06359 +:10361000306B381840698047032800D103252046C5 +:1036200040B200F056F9032800D10325306B38185A +:103630004FF0FF31416000210172C160F06A016EFC +:103640000122A240914301662846F2BD38B50446E6 +:1036500004EB8400C000DFF88853296B0022425439 +:103660004018114641702046FFF7CAFFE86A026E13 +:1036700021460FF28C40FFF752FB012032BD2DE9AD +:10368000F041AEB004460D46ADB201208DF85400B5 +:10369000DFF84C6316A8F16A5C22FDF753F9139624 +:1036A00016A984B068465C22FDF74CF90FBC00F007 +:1036B000D1F900270BE0032803D1149703208DF8DC +:1036C0005400306B4044002101727F1C7FB21D2FDB +:1036D00022DAF06A006EF840C007F6D507EB8700E3 +:1036E0004FEAC008306B404441680029EDD4027AAB +:1036F000521C0272D2B26A4389B28A42E5DB806907 +:1037000080470228D7D1149702208DF85400DDE9B4 +:103710001401C4E9000103E0DDE91401C4E900017A +:103720002EB0BDE8F08100210A3842F207729042C3 +:1037300000D20121084670472DE9F04383B00446CA +:1037400000200190042204F1090101A8FCF762FCA9 +:103750006168DFF88C62376B282505FB01704068D3 +:10376000019A904204D10FF2A430FFF7D8FA68E032 +:103770001046FFF7D8FF002809D16168019B05FBBF +:10378000017042680FF29030FFF7C9FA59E0DFF894 +:10379000C0723868D0F8008025E090F90890606821 +:1037A000316B05FB0010C06820FA09F0C00717D57F +:1037B0004FF0FF3000900346012201994846FEF782 +:1037C0007CFE40B200280BD1616801980090306BFC +:1037D00005FB010043684A460FF25030FFF79FFA9D +:1037E0004046D0F80080B842D7D13868D0F8008081 +:1037F0001FE090F90890C86820FA09F0C00715D5B5 +:103800004FF0FF33012249684846FEF7CDFE40B233 +:1038100000280BD1616801980090306B05FB010016 +:1038200043684A460FF21C30FFF779FA4046D0F859 +:1038300000806168326B05FB0121B842D9D1019843 +:103840004860BDE8F7832DE9F041044600252E4687 +:10385000DFF88C8119E006EB8600C700D8F830004D +:10386000391800204872D8F82C00006EF040C007CC +:103870000AD52046C9698847002805D0D8F8300005 +:103880003818012141720D46761C1D2EE3DB2846B7 +:10389000BDE8F0815248C16A096E00290DD00021AF +:1038A00007E002EB8203026B02EBC30200235372B8 +:1038B000491C49B20A461D2AF3DB70474849C96AC8 +:1038C000096E21FA00F0C00701D5012070470020E1 +:1038D00070472DE9F0478146012409EB8900C500B6 +:1038E0003F4E306B2818C068002828D0584F3868E1 +:1038F000D0F8008003E003244046D0F80080B842AE +:103900001DD090F908A0306B2818C168012202FA76 +:103910000AF2114021FA0AF149B20129ECD14FF023 +:10392000FF33012241685046FEF73EFE0028E2D0F8 +:10393000524649460FF22420FFF7F1F9DCE7204612 +:10394000BDE8F08710B58CB004460020ADF82A0021 +:1039500001900A208DF8080000208DF809008DF8EC +:103960000A00ADF82A00600719D50520FFF7A6FF69 +:10397000002807D004208DF800000520019000A841 +:10398000FEF7F4FF0220FFF799FF002807D004207C +:103990008DF800000220019000A8FEF7E7FFE00686 +:1039A0000CD50820FFF78AFF002807D003208DF8E8 +:1039B00000000820019000A8FEF7D8FF0CB010BD51 +:1039C00002460020092A00D0704780B5012902D1A3 +:1039D00006F0D4FA012002BD01492C22FCF7B2BF47 +:1039E000F0FC0020F5C20108A56A01087D7F0308EC +:1039F000A37A0108894E01088F7801080F6903082E +:103A0000F5790308A9760108CB9E0108055601083F +:103A1000BD670308D960030855720308637603087D +:103A2000EF5D0308B92A0108B52A0108C12A010877 +:103A3000C52A0108C92A01080D7B0308257C030853 +:103A400099C101087F6802083B710308BB9C02080A +:103A5000BC0700200FB417980099016001994160DC +:103A6000029981600399C1600499016105994161DE +:103A7000BDF84A100183BDF84C104183BDF84E10CB +:103A800081830C9901620F9941621099816204B09F +:103A9000704700004168122903D1817A002003F0A9 +:103AA000CAB9132903D1C17A012003F0C4B914297A +:103AB00003D1017B022003F0BEB9152902D1807A1F +:103AC00003F0CAB970470000414C2045580000007F +:103AD000414C25642025642025642025642025642C +:103AE00000000000524C204558000000524C256454 +:103AF0002025642025642025642025640000000022 +:103B00005445524D20256420256400004558204C22 +:103B10004D435231202564004558204C4D435232CC +:103B20002025642025642025640000004558204C91 +:103B30004D435233202564202564202564202564CC +:103B4000000000004558204C4D435234202564208D +:103B5000256420256420256400000000534D524157 +:103B6000202564202564000030488168002904BFB6 +:103B700008B008E0EFF30982A2F12802036882E8A6 +:103B8000F84F83685A6000F09CF8816859B14A6820 +:103B900092E8F84F036002F1280282F3098813F4D7 +:103BA0007F4F36D07047224822490968401A80F377 +:103BB00008884FF08071C1611F4981617FF0060E56 +:103BC000704701BC2046DFF874E000BDFEE71C48EA +:103BD000006818490968401A203820F0070080F36F +:103BE00008884FF0000181F3118862B600F00DF8EB +:103BF000FEE74FF0000181F311881249124A0A6072 +:103C00004FF0800181F3118870470E490E4A0A6017 +:103C100070474FF0000181F31188704700BF4FF0EB +:103C2000800181F31188704700BF0000A43100209B +:103C3000F89100207C820308CD770308CD3B010872 +:103C40000000000804ED00E00000001030B504465C +:103C50000020A071206A81B000F57A606062E1699D +:103C600008001CBF20468847FFF7D3FFE5681FE028 +:103C7000FFF7D5FF206920B1687C2169497C884223 +:103C80001DD3287C400710D5E868216A401A012816 +:103C900006DA284600F082F8FFF7C1FF287C70B1F1 +:103CA000E868616A411A48BF6062FFF7B2FF2D6899 +:103CB000002DDDD101B0BDE83040FFF7B0BF01B04D +:103CC00030BD70B50446002060700120207020696E +:103CD00038B303E028682061FFF79BFFFFF79FFFE1 +:103CE0002569002D1CBF2E7C002E1CD070070ED520 +:103CF000E868216A411A012905DA284600F04EF8E1 +:103D0000287C20B90DE0616A411A48BF606206F064 +:103D1000FB001028DED1A86880684068007C00287D +:103D2000D8D1FFF77CFFA07968B9002060712069C5 +:103D300090B12069007C002820690BD080688068E1 +:103D40004068A0600CE02046FFF780FFA0790028C3 +:103D5000F9D1EAE7A06003E0A0602070FFF759FF07 +:103D6000204670BD10B5444C2078401E2070C0B273 +:103D700098B9606888B1FFF752FF606830B10120E0 +:103D800020702046FFF735FF002020706078002863 +:103D900004BFBDE81040FFF73CBF10BD10B58168FF +:103DA00049B1354A126AC2600A68496802B1516075 +:103DB0000A6000218160017C11F0030101741BD1B4 +:103DC0002D4C216991B92061207838B901202070EB +:103DD0002046FFF70EFF0020207001E001206071F7 +:103DE000607848B9BDE81040FFF713BF4A7C437CB8 +:103DF0009A42E8D38142E7D010BD30B51E4D04464B +:103E00002978607C81B0491C297005F20C0100E022 +:103E100011460A6812B1537C9842F9DB22600C60AB +:103E2000207C40B9FFF7FBFE2046FFF7B7FF68781C +:103E300008B9FFF7EEFE01B0BDE8304092E730B5BB +:103E40000D4C81B02578681C20702046FFF7D1FE0C +:103E50002570607820B901B0BDE83040FFF7D9BEC9 +:103E600001B030BD00B581B006F09EF902480121D5 +:103E7000017001B000BD0000A43100207CB501211B +:103E8000032006F00FFADFF88C4B204606F07CFA90 +:103E9000DFF8546D304606F077FA01208DF8040003 +:103EA00000208DF8050001208DF8060000208DF817 +:103EB0000700012130460183C0460120009000A97F +:103EC000304606F0BDFA022130460183C04602208A +:103ED000009000A9304606F0B3FA01208DF80400E6 +:103EE00000208DF80500ADF806004FF480550095D0 +:103EF00000A9304606F0A4FA294630464183C04660 +:103F000001208DF8040000208DF8050001208DF8B7 +:103F1000060000208DF80700009500A9204606F055 +:103F20008FFA294620464183C04673BD70B586B0DE +:103F300001214FF4001006F0C0F901214FF40010E8 +:103F400006F0BBF90121022006F0ACF901210220A4 +:103F500006F0A8F901214FF4804006F0B9F90121DB +:103F60004FF4001006F0CAF901214FF4001006F0DA +:103F7000C5F900214FF4001006F0C0F900214FF4FC +:103F8000001006F0BBF9DFF8604C04220621204641 +:103F900006F0A4FA04220721204606F09FFA022028 +:103FA0008DF8040001208DF805008DF80600002032 +:103FB0008DF807004020009000A9204606F040FA46 +:103FC0008020009000A9204606F03AFA4020009098 +:103FD00000A9204606F034FA8020009000A920466F +:103FE00006F02EFA0020ADF80C004BF6FF70ADF88D +:103FF0000E004FF48060ADF812004FF48040ADF831 +:1040000014000A20ADF81000DFF83C6C0296DFF8CF +:104010003C5C02A9284606F0A4FA0121284606F0D5 +:1040200003FB0A20ADF81000029602A9284606F00C +:1040300098FA0121284606F0F7FA206820F440504B +:104040002060206820F440402060206840F4005048 +:104050002060206840F400402060002206212046B5 +:1040600006F03CFA00220721204606F037FA042227 +:104070000621204606F032FA04220721204606F0E7 +:104080002DFADFF8640C056006B070BD2DE9F04133 +:1040900092B001214FF4805006F01AF90121084630 +:1040A00006F000F901214FF4800006F0FBF8DFF87C +:1040B000644905221146204606F010FA0522072120 +:1040C000204606F00BFA05220621204606F006FAE5 +:1040D00005220421204606F001FA02208DF8040092 +:1040E00001208DF805000020ADF80600202000908A +:1040F00000A9204606F0A4F98020009000A92046DF +:1041000006F09EF94020009000A9204606F098F99C +:104110001020009000A9204606F092F9DFF8CC4B61 +:10412000204606F0E3FADFF8C85B002028806860CC +:104130000120288100206881E86007202882002073 +:104140006880DFF8B06B304606F0B2FBDFF8A87B82 +:10415000384606F0ADFB4FF48060069000210D91CB +:1041600003210E9100210F910A910890DFF88C0B2A +:10417000039008461090099007904FF400300C907F +:1041800008460B904FF0C068CDF80880402005909D +:104190000846049002A9304606F00EFC00200B9061 +:1041A000CDF80880059005F11400049002A9384666 +:1041B00006F002FC002068802946204606F0C5FA79 +:1041C00001220221204606F061FB01221146204611 +:1041D00006F05CFB0121204606F040FB0021304642 +:1041E00006F011FC0021384606F00DFC12B0BDE8C7 +:1041F000F08110B588B001214FF0805006F05DF8D5 +:1042000001214FF4802006F04DF8012006F064FCF7 +:104210000F2001F0D1F80446012006F040F80020FC +:1042200006F03DF8002C01D001F028FF012005F038 +:10423000D7FF412006F078F80028FAD04FF48070BC +:1042400006F017F8012006F027F800F058FF3F208D +:10425000069040F2FF1007900020059005A800F09E +:1042600005FF0020029002A900F06AFF00208DF8EF +:10427000070001208DF804008DF805008DF8060078 +:1042800001A9002000F0D5FF4FF4800006F070FC7B +:104290004FF48000039000208DF8100008208DF866 +:1042A000110001208DF8120003A806F01FFC032066 +:1042B0008DF800000D208DF8010000208DF802001F +:1042C00001208DF8030000A806F05FFC032001F038 +:1042D00024F84FF4804001F0DAF84FF4800006F043 +:1042E00047FC01214FF4804001F097F8012008B00D +:1042F00010BD30B585B00121084605F0D3FF01217E +:104300004FF4804005F0E4FF00208DF810008DF898 +:10431000130001200390DFF8E85903A9284606F0AE +:104320008FF84FF40064039403A9284606F088F838 +:104330000420039003A9284606F082F800210846CD +:1043400006F05CFC0B21002006F058FC0221002046 +:1043500006F054FC00208DF8080001208DF80A00BA +:1043600001900C208DF8090001A806F0BFFB019414 +:104370000C208DF8090001A806F0B8FB204606F0D5 +:10438000F7FB042001900C208DF8090001A806F02D +:10439000ADFB042006F0ECFB28208DF800000F2078 +:1043A0008DF8010000208DF8020001208DF8030037 +:1043B00000A806F0EAFB05B030BD30B58DB004466C +:1043C00001214FF4807005F083FF00A806F072F819 +:1043D0000A20009003208DF8040000208DF80700CB +:1043E00000A9DFF8300606F02BF806F01BFC02A847 +:1043F00006F05DFC4FF48030039002A806F049FC03 +:1044000006A806F03CFCDFF8FC5806A9284606F092 +:1044100016FC072301222146284606F059FC0121FB +:10442000284606F098FC0121284606F046FC0DB00F +:1044300030BD38B5DFF8CC48204606F087FC4FF495 +:104440007A750221204606F09DFC002803D12846FB +:10445000451E0128F5DA2046BDE8324006F086BC4C +:1044600080B50021DFF89C0806F027FC00214FF4FE +:104470008070BDE8044005F02BBF000038B5040093 +:1044800039D0012006F028FB002000F060FF4FF437 +:104490000055042000F0DCFF012804D12846451E09 +:1044A00080B20028F5D100EE104AB8EE400ADFEDE8 +:1044B0008A0A80EE800AF0EE000A20EE200ADFED84 +:1044C000870A80EE800ABDEEC00A10EE100A401E78 +:1044D00080B200F032FF4FF4804000F0D8FF4FF47C +:1044E000800006F045FB012000F031FFDFF81808DE +:1044F0000121416031BD012006F0EEFA0020BDE847 +:10450000324000F024BF000030B4014601200023F7 +:10451000DFF8F8271C469460946814F00C0FFBD168 +:104520000C460B2C55D8DFE804F0205454540619DF +:104530002031383F464D946844F080049460DFF8A1 +:10454000D0474FF4C0652560146824F0807414606F +:10455000DFF8C047DFF8C05725603BE00346DFF8CF +:10456000B447DFF8B857256034E094689460DFF80A +:10457000A0474FF4C0652560146824F0807414606F +:10458000DFF89047DFF89857256023E00223DFF833 +:104590008447DFF8905725601CE00323DFF8744759 +:1045A000DFF88457256015E00423DFF86847DFF85B +:1045B0007C5725600EE00523DFF85847DFF8705779 +:1045C000256007E00623DFF84C47DFF868572560D1 +:1045D00000E01846002B4AD003EBC3030FF6680433 +:1045E0001B1994689460146824F080741460146833 +:1045F00024F0806414609C781D8844EA8514DD787A +:104600006D086D1E44EA05441D7944EA0564546052 +:10461000DC881D7A2D0745EA8414DFF81C572C60CE +:10462000146844F0807414601468A401FCD55B79AC +:1046300043F4C063DFF8D8462360936893609368BF +:104640009360052904D1916841F09001916005E0E3 +:104650000A2903D1916841F480519160916841F039 +:1046600002019160916801F00C010829FAD1DFF88C +:10467000A4160968DFF8C426914207D2DFF8C016F5 +:104680000A6822F4404242F480420A6030BC70471B +:104690003AE710B5DFF850460121206805F0FDFF2C +:1046A000206805F02FFFBDE81040FFF73FBC30B495 +:1046B0000022838A008BDFF83046656843EA0040B9 +:1046C0000840000255EA102060600840884200D18E +:1046D0000122104630BC704700007A4400000047B9 +:1046E0002DE9F84F04460D4616464FF420491F7831 +:1046F000DFF8F4854FF40031D8F8000005F0D8FF5A +:10470000002808D04846A0F101090028F2D1FFF79F +:10471000C0FF00208CE0D8F8000001884FF6FF525F +:10472000114001800121D8F8000005F089FF4FF405 +:10473000805AD1460020C8F80400D8F800B0DFF84D +:1047400004165846FFF7B3FF002805D14846A0F1EC +:1047500001090028F1D163E0D146002221465846E4 +:1047600005F086FF0020C8F80400D8F80040DFF804 +:10477000D8152046FFF79BFF002805D14846A0F139 +:1047800001090028F1D14BE03146C9B2204601822F +:10479000C046D1460020C8F80400D8F80040DFF831 +:1047A000AC152046FFF783FF002805D14846A0F14D +:1047B00001090028F1D133E0012F15D129782046D5 +:1047C0000182C046D1460020C8F80400DFF88015F9 +:1047D000D8F80000FFF76BFF002823D14846A0F16E +:1047E00001090028F2D11BE03846471EC0B200285C +:1047F00018D015F8011BD8F800000182C046D14638 +:104800000020C8F80400DFF84815D8F80000FFF7CA +:104810004EFF0028E8D14846A0F101090028F2D156 +:10482000002005E00121D8F8000005F015FF012067 +:10483000BDE8F28F2DE9F54F81B00D461E464FF4CD +:1048400020483778DFF8A0444FF40031206805F0A5 +:104850002FFF002808D04046A0F101080028F3D11E +:10486000FFF717FF0020D3E0206801884FF6FF52C2 +:10487000114001800121206805F0E2FE4FF48059CB +:10488000C84600206060DFF8BCA4D4F800B05146F0 +:104890005846FFF70CFF002805D14046A0F101085B +:1048A0000028F2D191E000229DF80410584605F04E +:1048B000DFFEC84600206060D4F800B0DFF888143E +:1048C0005846FFF7F4FE002805D14046A0F1010844 +:1048D0000028F1D179E0BDF80810C9B2584601822C +:1048E000C046C846DFF86C14206805F0E1FE0028D9 +:1048F00005D14046A0F101080028F3D165E001216F +:10490000206805F09DFEC84600206060D4F800B025 +:1049100051465846FFF7CBFE002805D14046A0F18E +:1049200001080028F2D150E001229DF804105846F9 +:1049300005F09EFE022FC84639DADFF81C14206805 +:1049400005F0B6FE002805D14046A0F10108002878 +:10495000F3D13AE00021206805F093FE2068018B36 +:10496000012105F079FEC846DFF8F013206805F054 +:104970009FFE002805D14046A0F101080028F3D190 +:1049800023E02068008AC0B228703078401E307062 +:10499000C84620680188890505D54046A0F1010870 +:1049A0000028F6D111E0012105F06BFE2BE000207C +:1049B0006060DFF8AC132068FFF779FE002806D1AD +:1049C0004046A0F101080028F3D1002020E0012694 +:1049D00016E0012F0CD1012E0AD1002631462068A5 +:1049E00005F04FFE2068818A018B012105F034FE1D +:1049F0002068818A490603D5008A05F8010B7F1ECD +:104A0000FFB2002FE5D10121206805F03AFE012018 +:104A1000BDE8FE8F000002402DE9F04707460D4635 +:104A200016464FF42048B04C4FF40031206805F092 +:104A30003FFE002808D04046A0F101080028F3D12D +:104A4000FFF727FE002089E0206801884FF6FF521B +:104A5000114001800121206805F0F2FD4FF48059DA +:104A6000C84600206060D4F800A0B6495046FFF761 +:104A70001EFE002805D14046A0F101080028F2D111 +:104A800049E001223946504605F0F2FD022EC846A3 +:104A900034DAB149206805F00BFE002805D1404604 +:104AA000A0F101080028F4D135E00021206805F0CC +:104AB000E8FD2068018B012105F0CEFDC846A7491D +:104AC000206805F0F5FD002805D14046A0F1010859 +:104AD0000028F4D11FE02068008AC0B22870C846C0 +:104AE00020680188890505D54046A0F10108002805 +:104AF000F6D110E0012105F0C4FD2AE0002060603D +:104B000097492068FFF7D3FD002806D14046A0F161 +:104B100001080028F4D1002020E0012716E0012E32 +:104B20000CD1012F0AD100273946206805F0A9FDD4 +:104B30002068818A018B012105F08EFD2068818A21 +:104B4000490603D5008A05F8010B761EF6B2002E41 +:104B5000E5D10121206805F094FD0120BDE8F08732 +:104B60008048016808292FD168490A6842F080729C +:104B70000A604268B2F1806F03D10A6842F0806235 +:104B80000A600A689201FCD58A6842F002028A60D3 +:104B90008A6802F00C02082AFAD14268B2F1806FEA +:104BA00002D10A681201FCD55A490968634A914248 +:104BB00006D263490A6822F4404242F480420A6005 +:104BC00000210160416070474168B1F1806F09D1F7 +:104BD0004E490A6842F080620A600A681201FCD5F8 +:104BE0000021416070470000000402405E480168F7 +:104BF00041F080510160524801688908890041F004 +:104C00000101016040480FF2090101607047000096 +:104C10003D48416800290AD00021416053490A6893 +:104C200042F004020A600FF22901016010E030BF77 +:104C300070474E48016821F00401016030BF0168EF +:104C400041F0040101607047801A060000540040E2 +:104C500010B5FDF7EAFF807A012803D1012005F0A5 +:104C60003EFF02E0002005F03AFF404C80211F4843 +:104C700005F016FE002817D172B62448394982681B +:104C800002F00C020A60006800F080604860206852 +:104C900040F00400206030BF62B6206820F00400BD +:104CA0002060BDE810405BE7206820F00400206031 +:104CB00030BF206840F00400206010BD124800683A +:104CC00000470F49012806D00CD3032807D004D38E +:104CD000042806D006E0264904E0264902E02649D9 +:104CE00000E02649084670473C3200200030014071 +:104CF000B870002088640240106402400C3001400B +:104D00000000024000200140C8710020003802402D +:104D1000003C02402032002000127A008096980069 +:104D20000024F40000366E010048E801005A6202D7 +:104D300080F0FA0200BD0105843802400187930328 +:104D4000007000400100030082000700800007009F +:104D50008400070004000010020000104000001052 +:104D600002000300D07100204038024010ED00E046 +:104D70000004024000080240000C02400010024003 +:104D800010B50C46FFF79DFF214689B2BDE81040E3 +:104D900005F0A0BB10B50C46FFF793FF214689B282 +:104DA000BDE8104005F098BBE0B500238DF8083051 +:104DB00001238DF80A30002A03D10C228DF8092036 +:104DC00002E008228DF8092004283CD8DFE800F032 +:104DD0000315212A2A004FF40060019028208DF845 +:104DE00000000F208DF8010000208DF8020001293D +:104DF00021D118468DF803001FE0184601901020BD +:104E00008DF8090006208DF800000E208DF80100B5 +:104E1000EAE70220019007208DF800000F208DF8AE +:104E20000100E1E70420019008208DF800000F2028 +:104E30008DF80100D8E78DF8030001A805F056FEB3 +:104E400000A805F0A2FE07BD200110040F03020117 +:104E500003F00010060F01020103C00010080F014B +:104E6000020103C00010060F01020103F00010064A +:104E70000F01020103C80010040F02020103A80081 +:104E800010020F030201030038B5FDF7C5FC04460C +:104E9000104DFDF759F8286005F07CFF05F07FFF05 +:104EA000686005F081FF0C48C4F8B00004F1B00060 +:104EB0000A4941600A4981600A49C1600A490161A1 +:104EC000012032BD034949688968084701484068A4 +:104ED00000680047A8FE0020B92A0108B52A010889 +:104EE000C12A0108C52A0108C92A01082DE9F0478D +:104EF00086B0044601A81421FEF728F9FDF795FEB7 +:104F000005464FF00209002601E0761C76B20A2E13 +:104F100080F29D80022EF8D0032EF6D0062EF4D01B +:104F2000514850F8267007F10C08787A002805D10E +:104F3000D8F85400406880470028E6D009F804609B +:104F400009F101094FFA89F9304609284FD8DFE8FD +:104F500000F0050A4E4E10154E10423CC82128465E +:104F6000FEF71CF843E04FF448712846FEF716F8A8 +:104F70003DE032212846FEF711F838E03C21284672 +:104F8000FEF70CF84FF0000ABAF1030F2FDA0020F9 +:104F9000D8F854100969884714212846FDF7FEFF08 +:104FA0000120D8F854100969884714212846FDF7D4 +:104FB000F5FFBAF1020F05DA062101A8D8F854204E +:104FC000526990470AF1010ADEE74FF4167128464C +:104FD000FDF7E4FF0BE00020D8F85410096988477A +:104FE000012088F811003C212846FDF7D7FF98F8EA +:104FF000151001A8D8F8542052699047002819D0FC +:10500000D8F80C00F96800EB010A98F8152001A9FE +:105010005046FAF7FFFF3846FDF78EF898F815204E +:10502000514609EB0400FAF7F5FF98F915008144A1 +:105030004FFA89F9787A00287FF467AFD8F85400DE +:105040008068804700287FF460AF002009E0A9F164 +:105050000200ADF80000022200A92046FAF7DAFFAC +:10506000002006B0BDE8F0870000002070B50446BF +:105070000026DFF83854CA20E8615320E86100F0C8 +:1050800018F8002811D0286820F04000286028680F +:10509000216808432860A068A860A868616840EAA1 +:1050A0000140A86000F024F80126FF20E8613046A6 +:1050B00070BD81B000200090DFF8F403016849065C +:1050C00013D44FF0FF310160016801F04001009AF4 +:1050D000521C0092009AB2F5803F01D00029F3D013 +:1050E0000068800900F0010000E0012001B0704775 +:1050F000DFF8BC03016821F080010160704781B0D6 +:1051000000200090DFF8A813CA208861532088612E +:10511000086820F0A0000860086800F02000009AED +:10512000521C0092009AB2F5003F01D00028F3D043 +:105130000868400900F00100FF228A6101B0704751 +:10514000F8B507460E460024DFF85C53002FA86828 +:1051500004D140060AD42046F07007E0400603D58B +:10516000307800F0BEF901E02046F0703078002F72 +:1051700009D07178090241EA0040B1780843F1781A +:1051800040EA01460FE000F0A1F90746707800F010 +:105190009DF9000240EA0747B07800F097F93843DC +:1051A000F17840EA0146CA20686253206862FFF73E +:1051B00080FF00280FD0DFF8FC0230402860FFF7A6 +:1051C00097FFA868800605D4FFF799FF002802D052 +:1051D000012400E00124FF2068622046F2BD10B5E2 +:1051E0000C46DFF8C4120968DFF8C82211400A0C27 +:1051F00002F03F0323700B0A03F07F03637001F09A +:105200007F01A17002F04001E17000280BD12078ED +:1052100000F067F92070607800F063F96070A078A2 +:1052200000F05FF9A07010BDDFF88C12486A0968C1 +:10523000704770B506460D460024002E06D16878EA +:10524000C10603D500F0EF000A306870002E05D0CB +:10525000687800F046F9A87800F043F9E878002E65 +:1052600009D06978090241EA0040A9780843297801 +:1052700040EA41360FE000F029F90646687800F070 +:1052800025F9000240EA0646A87800F01FF93043ED +:10529000297840EA4136DFF82052CA20286253209C +:1052A0002862FFF706FF00280FD0DFF81002304019 +:1052B0002860FFF71DFF6868800605D4FFF71FFF11 +:1052C000002802D0012400E00124FF2028622046AB +:1052D00070BD10B50C46DFF8E0110968DFF8DC217D +:1052E00011400A0CE2700A0A02F01F02627001F01B +:1052F0003F02A270490B01F00701217000280BD179 +:10530000E07800F0EEF8E070607800F0EAF86070A5 +:10531000A07800F0E6F8A07010BDDFF89011CA2266 +:10532000CA615322CA610A68D208D2000A600A68B8 +:1053300010430860FF20C8617047DFF88411CA225B +:105340000A6153220A610860FF200861704781B03A +:1053500000210091DFF85411CA22CA615322CA61A8 +:105360000028086804D040F480600860012012E042 +:1053700020F480600860486800F00400009A521C25 +:105380000092009AB2F5803F01D00028F3D048681F +:10539000800800F00100FF22CA6101B0704781B0AF +:1053A00000220092474A0092009A02EB800000908F +:1053B0000098016001B0704781B00021009141491F +:1053C0000091009901EB800000900098006801B006 +:1053D000704738B500242246344DCA23EB6153236D +:1053E000EB616B681B0701D406E0521C6B681B075E +:1053F00002D5B2F5805FF8D16A68120709D42A682D +:10540000D20606D408436862FFF779FE002800D070 +:105410000124FF20E861204632BD244ACA23D3611B +:105420005323D36100F0040320F004000029116825 +:1054300005D008431060906B1843906305E021EAA3 +:1054400000001060906B98439063FF20D06170471C +:105450000021174A12681C4B1A40024200D0012159 +:105460000846704710B40021104A936B03F0040300 +:105470001468044003EAD0332343526802EA101050 +:1054800002D0000400D00121084610BC7047084932 +:105490000003000C40F080000A6802F0800262EA1B +:1054A0000000086070470000002800400828004005 +:1054B0000C2800407F7F7F00042800403FFFFF0052 +:1054C00014280040502800407F3F0100002101E0E7 +:1054D000491C0A38C0B20A28FADA40EA0110C0B200 +:1054E0007047010901EB810200F00F0000EB420060 +:1054F000C0B2704730B581B004460D46FEF78FFB51 +:10550000686920436861297C01F0F801082905D108 +:10551000A96901421CBF2846FEF740FC04484078B8 +:1055200020B901B0BDE83040FEF773BB01B030BD1B +:10553000A43100200FB480B5BDF80A006649488048 +:10554000022802DB801E088001E0002008800C2277 +:105550009DF909100020FDF761F9032801D102200F +:1055600000E0012002BC5DF814FB5B480121418092 +:1055700000210180012070475849087070470000E1 +:1055800030B58DB002A8FDF7A8F9534C2088401C17 +:105590002080618880B2884231D300202080054677 +:1055A00027E06068D0F8EC01E840C00720D5284625 +:1055B00004F0E3FB00281BD400EB80009FED450ABC +:1055C000DDED0B0A60EE800AFDEEE00A10EE901AA7 +:1055D00000AA8152DDED0C0A20EE800ABDEEC00A61 +:1055E00010EE101A8218518000A940180121017193 +:1055F0006D1C132DD5DBDDE9000104F0CCFB01208F +:105600000DB030BD80B5FDF707F933494860344926 +:10561000C0F8F01100F5F8703249416032498160FC +:105620000FF20D01C1600FF225010161012002BDE1 +:1056300010B50024294890F90000002804D104F096 +:10564000CAFB002800D00124204610BDF8B504464E +:105650000D463026287816FB00400121017028787D +:1056600016FB00404170287816FB00400C21817029 +:10567000287816FB0040194991F90010002902D042 +:105680000221C17001E00121C170287816FB0040A1 +:1056900001210171287816FB00400821417128780A +:1056A00016FB00400121C180287816FB004700202E +:1056B00004F025FB3881287816FB0044002004F014 +:1056C00023FB60812878401C28700C20BDE8F24044 +:1056D00004F034BB0000C842F0A50020F6FE002014 +:1056E000355501086B55010881550108C549022847 +:1056F00007D1C54890F8922042F0010280F892202C +:1057000009E0032807D1C04890F8921041F0020147 +:1057100080F89210BD490846704710B505F01EFC90 +:10572000F32005F095FC08240AE00021204605F04E +:1057300024FC092803D00FF2F420FDF7F0FA083416 +:10574000182CF2D3BDE8104005F011BC2DE9F84348 +:105750000646B6F803004FEAD008D6F80900071D40 +:10576000D6F80590FEF75BFAA94C6078401C607093 +:10577000A54D95F89100002808D10FF2C020FDF743 +:10578000CEFAFFF7CAFF012085F8910005F0E6FB8D +:10579000F32005F05DFCC8EB081009EB80184FF012 +:1057A000000909E019F8071009EB080005F036FCBC +:1057B00009F101090FFA89F9B6F801008145F1DB19 +:1057C00005F0D5FB05F29106707800F00300032880 +:1057D00009D100F036F80020707085F891008D49ED +:1057E0000220FFF787FE6078401E6070C0B200287C +:1057F00003D1BDE8F143FEF70CBABDE8F18310B563 +:10580000040004D0012C04D105F0EDFC01E005F00A +:105810000AFD204610BD00207F498A79012A03D164 +:105820007E4800228A717047CA79012A02D17C48D9 +:105830000022CA7170477449C87370477248C07BB0 +:10584000704738B5704C04F211050120E8702871DA +:10585000E32068710620ADF800007248006890F8F7 +:105860001B01C00719D594F8920000F0030003282B +:1058700009D1EF20A8710720ADF800000FF2C81081 +:10588000FDF74DFA09E0FFF7D9FFA8710720ADF841 +:1058900000000FF2BC10FDF742FABDF80000C01E78 +:1058A000ADF802000120607402220DF1020104F142 +:1058B0001200FAF7AFFB00A904F11100FBF715F98C +:1058C0000020FFF7B8FF31BD80B505F0C3FD00280B +:1058D00005D10FF28410BDE80240FDF720BA014661 +:1058E0000FF27C10FDF71BFABDE8014005F024BE65 +:1058F0002DE9F04100264B4CFDF797F92060424D11 +:10590000942231462846FAF77BFB012210214FF4FE +:105910007A5005F0DBFB42E00D2801D1FFF7D4FF00 +:10592000103EF6B208F101085FFA88F8B8F1020FEC +:105930000BDA304607EB400005F0CBFD0028EBD139 +:105940000120FFF778FF012028740026287C00281A +:1059500003D0FFF776FF30462874FDF71DFB206863 +:1059600090F81B11C90703D490F81B01400703D519 +:1059700095F89200002827D00020C04605F043FC8F +:105980004FF480510120FDF77DFB3046FFF753FFB8 +:10599000206890F81B110FF2E000FDF7C0F902201B +:1059A00005F0D6FD206890F81B110FF2C000FDF73E +:1059B000B6F9FFF789FF4FF480510120FDF760FB36 +:1059C0001021194805F0F1FBFFF725FF0746206875 +:1059D000407AFFF714FF0028BFD0002FBDD0206809 +:1059E00090F81B01400705D54FF47072394604202A +:1059F000FBF7B4FC206890F81B01C007A6D5B046A1 +:105A000092E700000040000808F7002000B00008FE +:105A1000A43100208452002074710020045300201F +:105A2000C4560020C8FE0020C452002053562D4604 +:105A30004C415345204641494C00000053562D53DC +:105A4000544152540000000053562D444F4E45001F +:105A500053562D4F4B000000535349205300000074 +:105A600053534920462025640000000053562D5210 +:105A7000203078257800000053562D4420307825BA +:105A800078000000EFF303807047BFF34F8FDFF81B +:105A90007C05016801F4E061DFF8742511430160C1 +:105AA000BFF34F8FFEE770B5ADF5935D054600A8D7 +:105AB00041F25C21FDF74AFB00F070FA002840F04B +:105AC000718100F001FA05F049FAF32005F0C0FAFF +:105AD000DFF8404500206060DFF83C0520600020D2 +:105AE000E06009E055F8211005F07CFA2068001DFF +:105AF0002060E068401CE060E16820680829F1D37C +:105B0000294605F06FFA2068001D2060EFF3088138 +:105B100005F068FA2068001D2060EFF3098105F0A8 +:105B200061FA2068001D2060EFF3148105F05AFA35 +:105B30002068001D2060EFF3058105F053FA20680E +:105B4000001D2060EFF3008105F04CFA2068001D75 +:105B50002060FFF797FF0146206805F043FA2068B0 +:105B6000001D2060EFF3108105F03CFA2068001D55 +:105B70002060EFF3118105F035FA2068001D2060E8 +:105B8000EFF3138105F02EFA2068001D2060F1EE7E +:105B9000101A05F027FA2068001D411C21604321DE +:105BA00005F03CFA2068411C2160502105F036FACE +:105BB0002068411C2160552105F030FADFF85C04B3 +:105BC00020600020A0600FF2E81516E0206901684F +:105BD000206805F007FA2068001D20602069001D7C +:105BE0002061E068401CE060A068E16805EBC0024D +:105BF00052689142EAD3401CA060A068092805D2EF +:105C000055F8300020610020E060EDE72068411C7D +:105C10002160432105F002FA2068411C21604F21D8 +:105C200005F0FCF92068411C2160522105F0F6F9CD +:105C30002068411C2160452105F0F0F9DFF8E00300 +:105C400020600020A0600FF2B01516E02069016806 +:105C5000206805F0C7F92068001D20602069001D3C +:105C60002061E068401CE060A068E16805EBC002CC +:105C700052689142EAD3401CA060A0681A2805D25D +:105C800055F8300020610020E060EDE7E548206035 +:105C90005021E54805F0C2F92068411C21604521EA +:105CA00005F0BCF92068411C2160522105F0B6F9CD +:105CB0002068411C2160492105F0B0F90D22DB4923 +:105CC00000A8FAF7A7F90422D9490DF10D00FAF757 +:105CD000A1F90422D7490DF11100FAF79BF904222A +:105CE000D5490DF11500FAF795F90422D3490DF1C4 +:105CF0001900FAF78FF90422D1490DF11D00FAF7C6 +:105D000089F9142204F114010DF12100FAF782F946 +:105D10004FF48E700546FCF788FF2A4601460DF1C8 +:105D20003500FAF777F94FF48E7000A9401800F2A9 +:105D300035058820C0460646FCF706F9324601467E +:105D40002846FAF767F98820C0460020E06008E09E +:105D5000421C226000AA895C05F060F9E068401CE2 +:105D6000E060E168206841F25C229142F0D3411C7E +:105D70002160472105F052F92068411C21604C2127 +:105D800005F04CF92068411C21604F2105F046F9CF +:105D90002068411C2160422105F040F905F0E7F838 +:105DA00000F0ACF8FFF771FE0DF5935D70BD0000DB +:105DB00008E000E00500000000ED00E01000000039 +:105DC00088ED00E00700000000E100E008000000AE +:105DD00000E200E00800000000E300E0080000002E +:105DE00000E400E03C00000000EF00E001000000E3 +:105DF00034EF00E0030000000064024034000000C3 +:105E00000060024034000000003C02400600000038 +:105E10000038024024000000001C02400A0000007C +:105E2000000802400A000000000402400A000000CE +:105E3000000002400A000000003C01400600000093 +:105E40000038014009000000003001400900000056 +:105E50000022014014000000002101401400000055 +:105E60000020014014000000001001400700000065 +:105E70000004014014000000000001401400000074 +:105E80000070004002000000005C00400A000000BA +:105E9000005800400A000000005400400A000000C2 +:105EA000003C0040090000000038004009000000EC +:105EB0000030004004000000002C004003000000FF +:105EC000002800402800000010B505F047F8F32036 +:105ED00005F0BEF84F4C1820A06002E0A068083022 +:105EE000A060A068202805D2002105F046F8092806 +:105EF000F4D0FEE7BDE8104005F039B8F8B55148D8 +:105F00004168514A11400C0C0A0A02F01F0501F0C9 +:105F10003F0600684D4901EA000705F01FF8F3202D +:105F200005F096F845480168494805F05BF8FF21FF +:105F3000484805F073F82146474805F06FF82946B0 +:105F4000464805F06BF83146454805F067F8380CCF +:105F500000F03F01434805F061F8380A00F07F0186 +:105F6000414805F05BF807F07F01404805F056F81E +:105F7000F5213F4805F052F8BDE8F14004F0F7BFC5 +:105F800080B504F0EBFFF32005F062F8AA21384851 +:105F900005F044F8BDE8014004F0E9BF00203449B1 +:105FA0000978F52900D10120704710B5044603F0A7 +:105FB00047F9C0B2142800DB1320024621462D48C1 +:105FC000FAF728F84FF0AC30007810BD80B500F03B +:105FD00055F8BDE8014058E580B5FFF7D1FF4FF413 +:105FE00080420D490020BDE80840FBF7B7B910B565 +:105FF00000F053F8204C204603F022F902462146D7 +:106000000020BDE81040FBF7A9B900000CED00E04E +:106010000400FA056870002000C0000850C00008A5 +:1060200030C20008B1C80008B0C80008CC70002019 +:1060300040320020D4710020D07100204432002072 +:1060400020320020002800403FFFFF007F7F7F00BC +:10605000F4FF0008F8FF0008F9FF0008FAFF000845 +:10606000FBFF0008FCFF0008FDFF0008FEFF000822 +:10607000FFFF00087C7000202432002080B5012141 +:106080004FF4802004F00EF9012004F025FD942146 +:106090000F20BDE80440FFF782B980B501214FF41D +:1060A000802004F0FFF8012004F016FD00210F20ED +:1060B000BDE80440FFF773B910B5002401214FF487 +:1060C000802004F0EFF8012004F006FD0F20FFF718 +:1060D00073F9942800D10124204610BD13F0004C20 +:1060E00003D55B42524263F100039CEA210C00F0AD +:1060F000178010B5644603D34942404261F1000164 +:1061000000F00EF8640004D34942404261F10001FE +:10611000244203D55B42524263F1000310BD0000EC +:106120001B4213D1094236D12AB18446B0FBF2F0AA +:1061300002FB10C2704705F02FBAFCD300220023E7 +:1061400070470B000200002100207047904271EB65 +:10615000030CF6D370B5B1FA81F4B3FA83F52C1BB6 +:10616000A340C4F1200532FA05F63343A2405FF0A4 +:106170000046E64002E05B085FEA3202841A71EBF7 +:10618000030524BF204629467641F4D302000B00C4 +:106190003000002170BD012ACFD970B5140C20D079 +:1061A000B1FA81F4B2FA82F5C4F120046419B4F1B1 +:1061B0002006D6D3B2405FF00044F440002502E050 +:1061C00052085FEA3303C61A71EB020E24BF304651 +:1061D000714664416D41F3D302000B002000290099 +:1061E00070BD0C46B1FBF2F102FB11452D0445EAEE +:1061F0001045B5FBF2F402FB145580B240EA0545A8 +:10620000B5FBF2F002FB105240EA044070BD000002 +:1062100010B50024FCF709FD0069C00700D5012472 +:10622000204610BD00B58BB00020ADF82A000A2032 +:106230008DF8080000208DF809008DF80A008DF80F +:1062400000001820019000A8FCF790FB01200BB083 +:1062500000BD00B58BB00020ADF82A000A208DF8F3 +:10626000080000208DF809008DF80A0001208DF843 +:1062700000001820019000A8FCF778FB01200BB06B +:1062800000BD00B58BB00020ADF82A000A208DF8C3 +:10629000080000208DF809008DF80A0001208DF813 +:1062A00000001820019000A8FCF760FB01200BB053 +:1062B00000BD0120704710B50024FCF7B6FC006952 +:1062C000C00700D50124204610BD00B58BB00020CA +:1062D000ADF82A000A208DF8080000208DF809008A +:1062E0008DF80A008DF800001920019000A8FCF735 +:1062F0003DFB01200BB000BD00B58BB00020ADF818 +:106300002A000A208DF8080000208DF809008DF879 +:106310000A0001208DF800001920019000A8FCF768 +:1063200025FB01200BB000BD00B58BB00020ADF8FF +:106330002A000A208DF8080000208DF809008DF849 +:106340000A0001208DF800001920019000A8FCF738 +:106350000DFB01200BB000BD0120704710B50024DB +:10636000FCF763FC0069800700D50124204610BDBE +:1063700000B58BB00020ADF82A000A208DF8080087 +:1063800000208DF809008DF80A008DF800001A2011 +:10639000019000A8FCF7EAFA01200BB000BD00B59F +:1063A0008BB00020ADF82A000A208DF808000020EC +:1063B0008DF809008DF80A0001208DF800001A20E0 +:1063C000019000A8FCF7D2FA01200BB000BD00B587 +:1063D0008BB00020ADF82A000A208DF808000020BC +:1063E0008DF809008DF80A0001208DF800001A20B0 +:1063F000019000A8FCF7BAFA01200BB000BD012003 +:10640000704710B50024FCF710FC006900F0030091 +:10641000032800D10124204610BD00B58BB0FCF745 +:1064200004FCB048017841F0020101700020ADF891 +:106430002A000A208DF8080001208DF809008DF847 +:106440000A1000208DF800001B20019000A8FCF726 +:106450008DFA01200BB000BD00B58BB0FCF7E5FB59 +:10646000A048017811F0FD01017013D10020ADF8B2 +:106470002A000A208DF8080001208DF8090000206C +:106480008DF80A0001208DF800001B20019000A863 +:10649000FCF76CFA01200BB000BD01207047012011 +:1064A000704710B50024FCF7C0FB006900F007003E +:1064B000072800D10124204610BD00B58BB0FCF7A1 +:1064C000B4FB8848017841F0010101700020ADF86B +:1064D0002A000A208DF8080000208DF809008DF8A8 +:1064E0000A108DF800001B20019000A8FCF73EFA6E +:1064F00001200BB000BD00B58BB0FCF796FB7948CE +:10650000017811F0FE01017012D10020ADF82A00CF +:106510000A208DF8080000208DF809008DF80A0087 +:1065200001208DF800001B20019000A8FCF71EFA46 +:1065300001200BB000BD012070470120704710B54D +:106540000024FCF772FB0069C00700D50124204637 +:1065500010BD00B58BB00020ADF82A000A208DF8E0 +:10656000080000208DF809008DF80A008DF8000061 +:106570001C20019000A8FCF7F9F901200BB000BD28 +:1065800000B58BB00020ADF82A000A208DF8080075 +:1065900000208DF809008DF80A0001208DF8000018 +:1065A0001C20019000A8FCF7E1F901200BB000BD10 +:1065B00000B58BB00020ADF82A000A208DF8080045 +:1065C00000208DF809008DF80A0001208DF80000E8 +:1065D0001C20019000A8FCF7C9F901200BB000BDF8 +:1065E0000120704770B58CB006460D46FCF714F9D3 +:1065F0000446002000900422314600A8F9F70AFD65 +:10660000009A29460FF29010FCF789FB28460C38B7 +:1066100005283AD8DFE800F0030D12171709009893 +:10662000C4F8C40301200CB070BD0098C4F8640421 +:10663000F8E704F5717042218162F3E704F57170A7 +:1066400000990165EEE727480078002812D0002164 +:10665000ADF82E100A218DF80C1000218DF80D10C8 +:106660008DF80E0001208DF804001B20029001A877 +:10667000FCF77CF90099284640B200F00CF8009035 +:1066800004F5717000998167CCE70FF21C10FCF7DC +:1066900046FB0020C7E710B4134AD36B126C114CB1 +:1066A0002478002C1AD00F2802D010280BD015E027 +:1066B000507A002812D0906B806800280ED488424F +:1066C0000DDD08460BE0587A002807D0986B8068EB +:1066D000002803D4884202DD084600E0084610BCCA +:1066E00070470000F1FE00200000002012B58BB0C2 +:1066F00001460C39052928D8DFE801F0031D1F21C8 +:10670000211B18240020ADF82A0001900A208DF8E2 +:10671000080005208DF80000019404220BA90DF15A +:106720000900F9F777FC00A8FCF720F901200CB06C +:1067300010BD1C24E6E71924E4E71A24E2E71B2431 +:106740000B99FFF7A8FF0B90DCE70FF26400FCF752 +:10675000E6FA0020EBE780B50FF25C010C2003F0B5 +:1067600079F80FF27801112003F074F80FF290011C +:106770000D2003F06FF80FF2AC010E2003F06AF861 +:106780000FF2C4010F2003F065F80FF2E0011020B2 +:10679000BDE8044003F05EB84D52322044523D251E +:1067A000642C2564000000004D5232205344460002 +:1067B0004D52322052434600116201082562010801 +:1067C000536201088362010800000000B3620108FF +:1067D000E565010800000000000000003F650108B9 +:1067E0005365010881650108B165010800000000DA +:1067F000E1650108E56501080000000000000000F7 +:10680000B7620108CB620108F96201082963010837 +:106810000000000059630108E56501080000000060 +:10682000000000005D630108716301089F630108B7 +:10683000CF63010800000000FF630108E56501085F +:106840000000000000000000036401081B64010850 +:10685000596401089B640108000000009F6401085E +:10686000E56501080000000000000000A3640108C5 +:10687000BB640108F76401083765010800000000E7 +:106880003B650108E565010800000000000000000C +:1068900004F083BE80B5FBF757FBC06EFBF78BFFA0 +:1068A0000348007802BD02490870704700000000EC +:1068B00006FF00200FB480B5032200210846FBF735 +:1068C000ADFF022801D1022018E00FF63040FCF79E +:1068D00026FADFF8C80B00214173C18181619DF860 +:1068E0000B209DF80A109DF8090004F0F2FF5422D5 +:1068F0000021DFF8C00BF9F783FB012002BC5DF833 +:1069000014FB0120704730B58BB000A8FBF7E5FF02 +:1069100005210320FCF718F8002802D1DFF8800BCE +:106920000890DFF8784B2069C56F04F083FF207270 +:1069300094F90800022806D1422D04D11421032025 +:10694000FBF7CDFF07E0012805D1142D03D142212B +:106950000320FBF7C4FF284680B2DDED081A00A92A +:1069600091EC030A04F0D1FE6069281860610120EF +:106970000BB030BD1CB5DFF8244B94F900000028A3 +:1069800042D400A8FCF7C1FB204600A90622F9F773 +:10699000C9FF94F90A0094F90110814228D1217BA2 +:1069A0000818A07240B23D2801DB3C38A07294F96F +:1069B0000A100FF65830FCF7B2F900206061DFF8DA +:1069C000E40A90F9010010F1010F01D1012016BD78 +:1069D00094F90110081AF9F7F5FE21F0004105F0CD +:1069E00059FB40B2012801DB012016BD002016BD75 +:1069F000DFF8B40A90F90120914203D0D4E90023D2 +:106A0000C0E90023002016BD6069DFF8D41A88426F +:106A100005DB0FF60430FCF782F9012016BD0020DB +:106A200016BD2DE9F8430026DFF8704A07E07A1911 +:106A3000A27252B231460FF6EC20FCF770F994F9CD +:106A40000A50002E21D46078461B76B294F90C705F +:106A5000002EECD53046F9F7B5FE21F00041024694 +:106A60000B46904699463846F9F7ACFE42464B46EF +:106A7000F9F7ECFBE3D2EA1BA272002652B23146D0 +:106A80000FF6B420FCF74BF9D9E73D2D02DBA5F159 +:106A90003C00A07294F90A100FF6B020BDE8F44350 +:106AA000FCF73DB910B5DFF8F44901202072002051 +:106AB00060724FF0FF3020700F20E07214202073BE +:106AC00000206073E081A061FBF7A6FE2061DFF883 +:106AD000DC19C0F888108830DFF8D4194160DFF87D +:106AE000041A81600FF20D01C1600FF21D510161A6 +:106AF000012010BD2DE9F043A9B00546002413A8DC +:106B000004F09CFEDFF8AC69204612900120119041 +:106B1000314684B068465422F9F714FF0FBC00F0E8 +:106B2000F9F807469DED210AD6ED0E0A30EE600A0F +:106B300010EE100AF9F774FA2246DFF87C39F9F7FB +:106B4000A7FA05F0A7FA80461FFA88F8BDF8920068 +:106B5000B6F84610461AF6B2DFF84099002D38D143 +:106B6000002F02D156EA080018D00124002F15D0BA +:106B7000DFF87459A868B84210D0204605F02BFB06 +:106B8000204605F0D6FBA868381AC9F81C00AF608B +:106B9000324639460FF6C010FCF7C1F8DFF8485905 +:106BA000AF600020C9F814004FF0FF3089F80000F2 +:106BB000DFF8F428D9E90001C2E90001C5E90001C4 +:106BC000DFF8E028C2E9000199F80B0089F80A0013 +:106BD0002BE000F02CF900281CD0204689F8090091 +:106BE000DFF8C428D9E90001C2E9000100A8FCF7D8 +:106BF0008CFA484600A90622F9F794FE99F902306A +:106C000099F9012099F900100FF65810FCF787F850 +:106C1000FFF707FFFFF7AEFE002806D0DFF8840875 +:106C2000D9E90023C0E90023012499F80D000128C7 +:106C300032D1B9F80E00002805D10FF64010FCF74C +:106C40006EF8012428E0D9F81810814219D2002FDB +:106C500002D156EA080000D00124DFF88C5895F9DB +:106C6000020099F90220904216D0491CC9F8181068 +:106C70000FF61810FCF753F8D9E90001C5E9000137 +:106C80000AE0002089F80D00A9F80E00C9F81800E4 +:106C90000FF60810FCF743F8012C02D10020C9F8C8 +:106CA0001400D9F8100090F87900002803D10020D2 +:106CB000C9F814000446204629B0BDE8F08310B599 +:106CC000DFF8D80700214161032205210020FBF7EE +:106CD000A5FD044600F007F8204610BD032205215B +:106CE0000120FBF79BBD00B595B000A804F0A6FD00 +:106CF000542200A9DFF8BC07F9F78CF9012015B080 +:106D000000BDDFF89807C0697047DFF890070021E1 +:106D1000C16170470FB410B596B000249DF9B8005A +:106D200001280BD104F04EFE1899884202D3441A70 +:106D3000E4B272E08038441AE4B26EE000A804F0D5 +:106D40007DFD9DF9B400401E082866D8DFE800F0FC +:106D50002905111D2936424E5A0001981999884279 +:106D600001D3441A59E0DFF884271018401A441C54 +:106D700053E002981A99884201D3441A4DE0DFF893 +:106D80006C271018401A441C47E003981B9988424E +:106D900001D3441A41E0DFF854271018401A441C6C +:106DA0003BE000981899884201D3441A35E0DFF897 +:106DB0003C1708181899401A441C2EE004981C9996 +:106DC000884201D3441A28E0DFF820271018401A1F +:106DD000441C22E005981D99884201D3441A1CE006 +:106DE000DFF808271018401A441C16E006981E9970 +:106DF000884201D3441A10E0DFF8F0261018401A38 +:106E0000441C0AE007981F99884201D3441A04E001 +:106E1000DFF8D8261018401A441C204616B010BCC3 +:106E20005DF814FBDFF87406012141727047DFF84A +:106E30006C06407A704704F00ABD0146DFF85C2614 +:106E4000792902DB7820D08100E0D08101205073C5 +:106E50000FF25870FBF763BF10B5040001D1012495 +:106E600002E0072C00DB062421460FF25470FBF7EA +:106E700056FF641E052C2DD8DFE804F0030A111814 +:106E80001F26DFF818063721C1723C21017321E06B +:106E9000DFF808061921C1721E2101731AE0DFF81C +:106EA000FC050F21C1721421017313E0DFF8EC051A +:106EB0000A21C1720F2101730CE0DFF8E005072100 +:106EC000C1720C21017305E0DFF8D0050521C17204 +:106ED0000A210173DFF8C405C17A8172BDE8104050 +:106EE0009FE500000FB400B595B000A804F0A6FC23 +:106EF0009DED080ADDED1E0AB4EE600AF1EE10FA0F +:106F000002DB30EE600A05E09FED3E1A71EE600A8A +:106F100030EE800A10EE100AF9F782F8DFF89C25AF +:106F2000DFF89C35F9F7AEF9F9F7E0FAF9F778F8F8 +:106F30000022DFF89035F9F7ABF805F0ABF800EE7A +:106F4000100AB8EEC00A10EE100AF9F769F8DFF877 +:106F50006C25DFF87435F9F79BF8DFF87025DFF85A +:106F60009035F9F78FF9F9F7C1FA00EE100A15B06C +:106F70005DF814FB0FB400B595B000A804F05EFCFA +:106F80009DED0D0ADDED230AB4EE600AF1EE10FA74 +:106F900002DB30EE600A05E09FED1A1A71EE600A1E +:106FA00030EE800A10EE100AF9F73AF8DFF80C25F7 +:106FB000DFF80C35F9F766F9F9F798FAF9F730F8D0 +:106FC0000022DFF80035F9F763F805F063F800EE0A +:106FD000100AB8EEC00A10EE100AF9F721F8DFF82F +:106FE000DC24DFF8E434F9F753F8DFF8E024DFF8C5 +:106FF0000035F9F747F9F9F779FA00EE100A15B0FC +:107000005DF814FB002474492DE9F0472DED068B43 +:10701000A8B006460D4613A804F010FC30242878CA +:1070200014FB006001210170287814FB0060DFF878 +:107030006C144A7B012A0ED103234370287814FB79 +:1070400000600123C370012A07D1C889002804D138 +:107050000020487301E001214170287814FB006092 +:10706000032181700DF184099FED868B9FED879B35 +:10707000DFF840740020129001201190394684B04E +:1070800068465422F9F75EFC0FBCFFF743FE0A285E +:10709000287814FB006080F0FD80002101712878C1 +:1070A00014FB006898F804A0084612900220119082 +:1070B000394684B068465422F9F744FC0FBCFFF708 +:1070C00029FE40EA0A0088F80400287814FB0068CA +:1070D0000020129003201190394684B06846542253 +:1070E000F9F730FC0FBCFFF715FE88F8050028788B +:1070F00014FB00680020129004201190394684B0DF +:1071000068465422F9F71EFC0FBCFFF703FE88F80F +:107110000600287814FB00680020129005201190CA +:10712000394684B068465422F9F70CFC0FBCFFF7CF +:10713000F1FD88F80700394684B068465422F9F713 +:1071400001FC0FBCFFF716FF10EE100AF8F768FFFE +:1071500041EC100B287814FB006853EC102B51EC19 +:10716000190BF8F795FF04F095FFA8F80E002878A2 +:1071700014FB00682198F8F753FF53EC182BF8F72D +:1071800087FF04F087FF88F81000287814FB006060 +:10719000B9F80E104174394684B068465422F9F7A4 +:1071A000D1FB0FBCFFF79EFE10EE100AF8F738FF78 +:1071B00041EC1A0B287814FB006853EC1A2B51ECA5 +:1071C000190BF8F765FF04F065FF88F812002878BE +:1071D00014FB0068D9F80800F8F722FF53EC182BCD +:1071E000F8F756FF04F056FF88F81300287814FBD0 +:1071F00000680020129006201190394684B068463D +:107200005422F9F79FFB0FBCFFF784FD88F80800B4 +:10721000287814FB0068002012900720119039464E +:1072200084B068465422F9F78DFB0FBCFFF772FD5E +:1072300088F80900287814FB0068002012900820C4 +:107240001190394684B068465422F9F77BFB0FBC95 +:10725000FFF760FD88F80A00287814FB006400201E +:10726000129009201190394684B068465422F9F7EB +:1072700069FB0FBCFFF74EFDE0722878401C2870B8 +:1072800005E100BF000000000000244000000000F5 +:107290000000594080210171287814FB006800200B +:1072A000129002201190394684B068465422F9F7B2 +:1072B00049FB0FBCFFF72EFDC8F80500287814FB2A +:1072C00000680020129003201190394684B068466F +:1072D0005422F9F737FB0FBCFFF71CFDC8F8090073 +:1072E000287814FB00680020129004201190394681 +:1072F00084B068465422F9F725FB0FBCFFF70AFD5E +:10730000C8F80D00287814FB0068002012900520B2 +:107310001190394684B068465422F9F713FB0FBC2C +:10732000FFF7F8FCC8F81100394684B068465422CB +:10733000F9F708FB0FBCFFF71DFE10EE100AF8F777 +:107340006FFE41EC100B287814FB006853EC102BF7 +:1073500051EC190BF8F79CFE04F0B2FEC8F82700B8 +:10736000287814FB00682198F8F75AFE53EC182B84 +:10737000F8F78EFE04F08EFE88F82B00287814FBB8 +:107380000060B9F80E1080F82C10394684B06846B9 +:107390005422F9F7D7FA0FBCFFF7A4FD10EE100A3C +:1073A000F8F73EFE41EC1A0B494A4A4BF9F722FA2C +:1073B00006D8494A494BF8F749FF01D29FED4DAB3A +:1073C000287814FB006853EC1A2B51EC180BF8F7D3 +:1073D0005FFE04F05FFEA8F82D00287814FB00681B +:1073E000D9F80800F8F71CFE53EC182BF8F750FEFC +:1073F00004F050FE88F82F00287814FB0068002065 +:10740000129006201190394684B068465422F9F74C +:1074100099FA0FBCFFF77EFCC8F81500287814FB1A +:1074200000680020129007201190394684B0684609 +:107430005422F9F787FA0FBCFFF76CFCC8F8190063 +:10744000287814FB0068002012900820119039461B +:1074500084B068465422F9F775FA0FBCFFF75AFC5E +:10746000C8F81D00287814FB006400201290092041 +:107470001190394684B068465422F9F763FA0FBC7C +:10748000FFF748FCC4F821002878401C2870FFF75B +:107490002AFC28B0BDEC068BBDE8F08724FD002057 +:1074A00000007A44B8FE0020B0FE0020B568010854 +:1074B0000369010864F50020000024407B14AE47F6 +:1074C000E17A743F00005940E17A843F2D431CEB80 +:1074D000B81E85EB51B89E3F9A9999999999B93FF1 +:1074E00040771B00076901085CFE00208096980029 +:1074F000E2361A3F9A9999999999B93F50443A209E +:1075000053746172745065646F00000050443A20F7 +:107510004E5420256400000050443A204E6F5469B8 +:107520006D65000050443A20636F6D703120256412 +:107530002C2025640000000050443A20636F6D70D9 +:10754000322025642C2025640000000050443A209D +:107550004355542025640000537465703D25642C08 +:107560002025640050443A54696D654E6F7469205B +:1075700025642025642025640000000050443A2042 +:1075800053746F70204461746131000050443A209C +:107590007574696D657220256400000050443A20BE +:1075A00053746F70204461746132000050443A207B +:1075B000537461727420446174612025640000007A +:1075C00050443A2055542025640000000FB480B583 +:1075D000082200210846FBF721F9022801D10220E8 +:1075E00004E06948002101704180012002BC5DF87F +:1075F00014FB6548002101700120704738B5012453 +:107600000020ADF80000604D95F90000002809D178 +:10761000204628700020A880A86804F0C5FE05F068 +:1076200039F829E0012829D16888401C68800DF1CB +:107630000101A86805F0DAF8002815D00822002119 +:107640002046FBF7EBF8032800D1032408220B2186 +:107650000020FBF7E3F8022801D1022032BD02200E +:10766000287005F095FA07E0B5F90200962803DBCB +:107670000520287000F057F8204632BD0328FBD1C2 +:10768000A888401CA88000B2FB28F1DA00A9A868ED +:1076900004F0C6FE0028EFD004202870204600F039 +:1076A00033F800F040F8E7E710B5374CFBF7B4F8D3 +:1076B000E060FAF749FCA060E0683449C0F8501176 +:1076C00000F5A87032494160324981600FF20D0126 +:1076D000C1600FF2C9010161012010BD0146002007 +:1076E000294AD26892F84121002A02D0012900D10A +:1076F00006E0704780B5002000F006F8012002BDCA +:10770000254890F90000704723490870704780B5FC +:10771000082200210846FBF781F8022801D1022047 +:1077200002BD012002BD80B5174800218180418043 +:1077300008220120FBF772F8032801D1032002BDC3 +:10774000012002BD38B501240F4D95F90000022833 +:1077500015D108220B212046FBF760F8032800D141 +:107760000324FFF7D4FF022801D1022032BD0328F1 +:1077700000D103240320287002A0FBF7D0FA204692 +:1077800032BD0000534149008C710020CD750108C5 +:10779000F3750108FD7501081372002018B430223A +:1077A0000B7812FB030301241C700B7812FB0303FC +:1077B0005C700B7812FB030308249C700B7812FB9F +:1077C00003000122C2700878401C087011BC91E7C8 +:1077D0000FB480B5874801210170052200210846B9 +:1077E000FBF71CF8022801D1022016E0052209212E +:1077F0000020FBF713F8022801D102200DE005223A +:1078000007210020FBF70AF8022801D1022004E03A +:1078100000F0E8F805F0E4F9012002BC5DF814FB83 +:1078200038B50124052209212046FAF7F7FF03287D +:1078300000D10324052207210120FAF7EFFF0328D6 +:1078400000D103246B4D95F90000032801D00128D5 +:1078500007D1052200210120FAF7E0FF032800D11B +:1078600003240020287000F0BDF805F047FB2046F7 +:1078700032BD80B5002000F03CF8022801D1022082 +:1078800002BD032801D1032002BD012002BD10B5B5 +:10789000584CFAF7C1FF2061FAF756FBA060FBF7DE +:1078A000C4F9E06020695449C0F8D810D830534971 +:1078B0004160534981600FF21101C1600FF249111B +:1078C0000161012010BD000001460020494A1269F3 +:1078D00092F8C920002A02D0012900D102E07047A5 +:1078E000002003E0474890F90000704745490870C0 +:1078F000704770B582B0064601253E4C94F90000F1 +:10790000012823D1A088401CA08000B24C280BDBAA +:107910000020A08002202070052200212846FAF7CE +:107920007DFF032800D10325012E59D1E068007D99 +:10793000012807D1B4F904001F2851DB6078401CEE +:1079400060704DE0A078401CA07049E002281CD176 +:10795000012E0AD1E068007D012803D16078401C27 +:10796000607002E0A078401CA07094F9010001282A +:1079700036DB052200210846FAF750FF022801D124 +:10798000022076BD032020702AE0032828D10020A1 +:107990008DF8000000A9A06805F04CF9C0B20228DB +:1079A0000DD1052200212846FAF738FF032800D11F +:1079B00003250120FFF79AFF0420207010E0032820 +:1079C0000ED1052200212846FAF728FF032800D10E +:1079D000032500206070A0700220207005F000F9DF +:1079E000284676BD03480021818041708170704730 +:1079F00000000000C8FD0020D177010821780108AF +:107A000073780108F8FE002010B50C46302122786A +:107A100011FB020201231370227811FB0202537042 +:107A2000227811FB020205239370227811FB0200D9 +:107A30000121C170FFF754FF2078401C207010BD59 +:107A40000FB480B5022201210020FAF7E7FE0228D8 +:107A500001D102200EE0022207210020FAF7DEFE0B +:107A6000022801D1022005E005F052FA4048002129 +:107A70000170012002BC5DF814FB3D48002101703B +:107A80000120704700B58BB000A8FAF726FF03A8C5 +:107A900090EC030A05F072FA3549087001200BB02A +:107AA00000BD10B5324CFAF7B7FEA060FBF7BDF889 +:107AB0006060A0682F4901662F4941662F498166A1 +:107AC0000FF21D01C1660FF269010167012010BDAF +:107AD00080B527484068007D05F049FA012002BDC5 +:107AE000002023498A6892F85120002A04D091F995 +:107AF0000010002900D0012070471D4800210170AE +:107B00000120704710B50024012804D007D30328B2 +:107B10000BD002D303E0012407E0022405E0032494 +:107B200001460FF25C00FBF7FAF8204610BD00009A +:107B300038B50C463021227811FB02020123137064 +:107B4000227811FB02025370227811FB02020223F9 +:107B50009370227811FB0205054890F90000FFF7A9 +:107B6000D1FFE8702078401C2070BDE83140C4E7A8 +:107B700038FE0020417A01087B7A0108857A0108E5 +:107B80004C4D4350532031202564000070B504460D +:107B90003548364E0568B5B1287A88B16868A04284 +:107BA0000ED1012028723078401C3070287A401E97 +:107BB0002872C0B210B9284606F09CF8FCF7D2F83B +:107BC000ED68002DE8D170BD10B50446284829495C +:107BD000016000200021024603460FC4103CFCF760 +:107BE0001EF821480168E1600460204840780028C0 +:107BF00004BFBDE81040FCF70CB810BD30B51B4DFC +:107C00000446287881B0401C2870A868217A11B9F0 +:107C1000606001250DE06168814208D01021204696 +:107C200001F084FA207A0028F8D1A8686060207AF0 +:107C3000451C2572FCF796F8284601B030BD0B496B +:107C40000A78521C0A70017A491E0172C9B20029D1 +:107C500018BFFCF787B800B581B006F04BF801B04B +:107C60005DF804EBFCF77EB804720020A43100201C +:107C7000E87100208D7B010800F5E07002689142F8 +:107C800003D343689A18914202D380680028F5D143 +:107C90007047DFF82007016899B94FF4803181609F +:107CA00004224FF4805141604FF0FF31C160016107 +:107CB00004214161DFF80017C1F8BC21DFF8FC1690 +:107CC00001600120704701F1080313F0070305D09C +:107CD00001F10803C3F1080303F007035918D21A8E +:107CE0008161C26042F001034B60511828224A6052 +:107CF000DFF8C0160969C16170472DE9F84F0446E5 +:107D000001F1080010F0070005D001F10800C0F1F2 +:107D1000080000F0070000EB010B02F1080010F072 +:107D2000070005D002F10800C0F1080000F00700CC +:107D30008618A6EB0B00A0EB030803EB0B0743F040 +:107D40000300CBF80400B74228BF05F0E9FF307903 +:107D5000C00758BF05F0E4FFB8F1100F38BF05F0B9 +:107D6000DFFFA069864207D1E0684044E060A76178 +:107D700040F0010078605AE16069864208D1A0684D +:107D80004044A060676140F001017960C0514EE15C +:107D9000706800F00301012940F0AD80C0084FEA8F +:107DA000C00920283BD2D6F808A0F5680090AE4262 +:107DB00008BF05F0B5FF564508BF05F0B1FF706874 +:107DC0000099C008C000B0EBC10F18BF05F0A8FFB4 +:107DD000009804EBC00000F128018A4508D0216911 +:107DE0008A45C0F08480DAF80C10B14240F07F8000 +:107DF000554506D1009A20680121914088432060B2 +:107E000077E02830854205D0206985426FD3A86885 +:107E1000B0426CD1CAF80C50C5F808A069E0F5680A +:107E2000D6F818A0B5420CD0B0682169884223D397 +:107E3000C168B14204BFA968B1421DD1C560A86044 +:107E40001CE006F11400056835B906F1100005685C +:107E5000A5B101E00846056805F114010A68002A89 +:107E600002BF05F110010A68002AF3D12169884296 +:107E700002D30021016001E005F052FFBAF1000FCA +:107E800037D0F06904EB800000F5987001688E42ED +:107E900009D10560280014D1F26960680121914080 +:107EA0008843606025E02069824508D3DAF8100035 +:107EB000B04214BFCAF81450CAF8105001E005F0DF +:107EC0002FFFB5B12069854211D3C5F818A03169DB +:107ED00029B1814226BF29618D6105F021FF7069BA +:107EE00038B12169884202D36861856101E005F0FB +:107EF00017FF4E44C84470684008400070604FEA65 +:107F0000D80548F00100786048F80780202D21D27C +:107F100004EBC50000F12806B146B8F1100F38BFD8 +:107F200005F0FEFE206820FA05F1C90704D40121FE +:107F3000A9400843206006E0B068216988422CBF50 +:107F4000814605F0EDFEB760C9F80C70C7F80890DF +:107F5000FE606CE05FEA182008BF002123D0B0F576 +:107F6000803F28BF1F211ED2A0F58071090C01F0AF +:107F700008018840A0F58052120C02F004029040E3 +:107F8000A0F580431B0CC1F10E0103F00203891A16 +:107F9000C91A984001EBD030C11D28FA01F101F057 +:107FA000010101EB4001F96100227A613A6104EBC1 +:107FB0008100626822FA01F300F59870DB0706D4AD +:107FC000012303FA01F11143616007601CE01F29DE +:107FD00000680EBF00214908C1F1190108FA01F13A +:107FE00000E010464268D208D200424510D0CA0FC5 +:107FF00000EB820202F1100349001A68002AF0D156 +:1080000021698B4211D31F60B861FF60BF600EE031 +:1080100022698168904228BF914206D3CF60876071 +:10802000B960F8600020B86101E005F079FE0BF15D +:108030000800BDE8F28F2DE9F04F0546DFF8740324 +:10804000006883B0884608B9FFF723FEDFF86403B1 +:10805000806800EB08012F31401E21EA00008045B6 +:1080600080F0A581D5F8B81141B1D5F8B0218018BC +:10807000824280F09C818142C0F0998105F054FEDB +:1080800000281EBF0446076814F1010F00F08F811D +:10809000D5F8B0013818C5F8B001D5F8B41181424F +:1080A00038BF0146C5F8B411A86968BB286908B192 +:1080B000844200D22C61C5F8C041C5F8C4710020CB +:1080C000C5F8CC012021BB48006868624FF0FF3042 +:1080D0002862284600F128020830D2609260491ECA +:1080E000F8D1B548854203D1A7F12802214625E001 +:1080F00055F8040CC00805EBC000A0F108013819C0 +:10810000401AA0F1280219E005F5E071084600E0E8 +:108110008068B8B142680368D2189442F8D1027BF3 +:1081200012070FD4AA699A420CD3466833449A4284 +:1081300008D2B9194160E868A9693A182846FFF7DA +:10814000C2FD1FE12869844238BF2C6108463919F5 +:1081500000E0806880B102688A42FAD1017B090799 +:108160000AD4046043464168791841602846214694 +:1081700003B0BDE8F04FC0E5AE6931462846FFF7D1 +:108180007BFD41680068081801902F3800F1080154 +:1081900011F0070105D000F10801C1F1080101F05B +:1081A000070101EB000906F11000814538BFB14617 +:1081B00009F10800009004F1080109F1180A4FF0D4 +:1081C000000BA7F1280011F0070105D004F1080108 +:1081D000C1F1080101F007010A19401AAA61E8601B +:1081E00040F0010151608018282141607148006908 +:1081F000E861009810F0070018BF05F091FD1B2002 +:10820000C9F8040005F5E071B1E80C500098A0E849 +:108210000C50C5F8C041C5F8C471C5F8CCB1009880 +:10822000C5F8C801019800E08A460722CAF8042070 +:108230000AF104010A1D0BF1010B8242F4D3BBF1D8 +:10824000020FB8BF05F06CFDB14500F09B80A9EBB3 +:10825000060081194FEAD0094A68520852004A6064 +:1082600040F0010171608051B9F1200F1FD205EB80 +:10827000C90101F128042746102838BF05F050FD38 +:10828000286820FA09F1C90705D4012101FA09F18A +:108290000843286006E0A068296988422CBF074689 +:1082A00005F03EFDA660FE60B760F4606AE0010A7A +:1082B00008BF002223D0B1F5803F28BF1F221ED265 +:1082C000A1F58072120C02F008029140A1F58053D2 +:1082D0001B0C03F004039940A1F58044240CC2F167 +:1082E0000E0204F00204D21A121BA14002EBD1319B +:1082F000CA1D20FA02F202F0010202EB4102F26111 +:1083000000237361336105EB82016B6823FA02F489 +:1083100001F59871E40705D4012090401843686086 +:108320000E601CE01F2A09680EBF00225208C2F12D +:10833000190200FA02F200E019464B68DB08DB0084 +:10834000834210D0D30F01EB830303F110045200DA +:108350002368002BF0D12869844211D32660B161D3 +:10836000F660B6600EE02A698868914228BF9042A4 +:1083700006D3C6608E60B060F1600020B06101E09D +:1083800005F0CEFCE868804511D2A0EB0800E8605B +:1083900040F00100A96908EB0102AA61506048F0B1 +:1083A0000300486003B001F10800BDE8F08F002031 +:1083B00000F02BBCB0FD002050DE00206859883C46 +:1083C0002DE9F84F044688460026C8F1000B5FEA05 +:1083D000182008BF002123D0B0F5803F28BF1F21FF +:1083E0001ED2A0F58071090C01F008018840A0F5AB +:1083F0008052120C02F004029040A0F580431B0C46 +:10840000C1F10E0103F00203891AC91A984001EB69 +:10841000D030C11D28FA01F101F0010101EB40014A +:1084200004EB8100D0F8300130B31F290EBF0022C9 +:108430004A08C2F1190208FA02F2002300E05200D1 +:108440004568ED08ED00A5EB08055D4503D206463D +:108450005FEA050B0CD045694FEAD27E00EB8E0037 +:10846000002D00691CBF85422B460028E7D1184625 +:1084700000283AD1002E3AD10120884040004142E4 +:1084800008436168084000F05F8141420840411E96 +:10849000080B00F0100021FA00F2510901F0080168 +:1084A000CA40930803F00403DA40550805F00205BA +:1084B0000818EA401818C2F3400E2844704422FA03 +:1084C0000EF1081804EB8000D0F830010DE00846EA +:1084D0004168C908C900A1EB080159453CBF8B465A +:1084E000064601690029F2D140690028F0D1002E2A +:1084F00000F02A81A068A0EB0800834580F0248169 +:1085000020698642C0F01E817068C00808EB0B0924 +:10851000C00008EB0605484518BF05F001FCAE4257 +:1085200080F01081F768D6F818A0B7420CD0B06878 +:108530002169884223D3C168B14204BFB968B142FE +:108540001DD1C760B8601CE006F11400076837B998 +:1085500006F110000768A7B101E00846076807F1B7 +:1085600014010A68002A02BF07F110010A68002AF4 +:10857000F3D12169884202D30021016001E005F0B6 +:10858000CFFBBAF1000F38D0F06904EB800000F5A2 +:10859000987001688E4209D10760380014D1F269E1 +:1085A0006068012191408843606026E0206982452F +:1085B00008D3DAF81000B04214BFCAF81470CAF831 +:1085C000107001E005F0ACFBBFB12069874212D307 +:1085D000C7F818A0306930B12169884226BF3861D8 +:1085E000876105F09DFB706938B12169884202D32B +:1085F0007861876101E005F093FBBBF1100F09D2B0 +:1086000049F00300706009EB0600416841F0010188 +:10861000416096E048F0030070604BF00100686034 +:108620004BF805B04FEADB0020281DD204EBC00157 +:1086300001F12807216821FA00F2BB46D20705D4D0 +:10864000012202FA00F00843206006E0B8682169C0 +:1086500088422CBF834605F063FBBD60CBF80C500D +:10866000C5F808B0EF606CE05FEA1B2008BF00218E +:1086700023D0B0F5803F28BF1F211ED2A0F5807106 +:10868000090C01F008018840A0F58052120C02F09C +:1086900004029040A0F580431B0CC1F10E0103F0D1 +:1086A0000203891AC91A984001EBD030C11D2BFA78 +:1086B00001F101F0010101EB4001E96100226A6171 +:1086C0002A6104EB8100626822FA01F300F59870D8 +:1086D000DB0706D4012303FA01F111436160056051 +:1086E0001CE01F2900680EBF00214908C1F11901D3 +:1086F0000BFA01F100E010464268D208D2005A4558 +:1087000010D0CA0F00EB820202F1100349001A6870 +:10871000002AF0D121698B4211D31D60A861ED6060 +:10872000AD600EE022698168904228BF914206D375 +:10873000CD608560A960E8600020A86101E005F0D7 +:10874000EFFA07E105F0ECFA01E12DE9F84F0446F4 +:108750008846606841420840411E080B00F0100046 +:10876000C1404A0902F00802D1408B0803F004031B +:10877000D9404D0805F002051018E9401818C1F35A +:10878000400628443018F140081804EB8000D0F867 +:1087900030014168C908C9000646A1EB080A09E092 +:1087A00008464168C908C900A1EB080151453CBF12 +:1087B0008A46064601690029F2D140690028F0D1B5 +:1087C00020698642C0F0C1807068C00808EB0A09C1 +:1087D000C00008EB060B484518BF05F0A1FA5E453E +:1087E00080F0B380F768B569B7420CD0B0682169F2 +:1087F000884223D3C168B14204BFB968B1421DD1D8 +:10880000C760B8601CE006F11400076837B906F1CC +:1088100010000768A7B101E00846076807F11401D6 +:108820000A68002A02BF07F110010A68002AF3D182 +:108830002169884202D30021016001E005F070FA4D +:10884000002D34D0F06904EB800000F598700168C9 +:108850008E4209D10760380011D1F26960680121A8 +:1088600091408843606022E02069854205D32869F1 +:10887000B04214BF6F612F6101E005F051FAB7B14A +:108880002069874211D3BD61306930B121698842C6 +:1088900026BF3861876105F043FA706938B12169F4 +:1088A000884202D37861876101E005F039FABAF1B4 +:1088B000100F09D249F00300706009EB060041680F +:1088C00041F0010141603FE048F0030070604AF070 +:1088D0000100CBF804004AF80BA0D4F808804FEA56 +:1088E000D805202D28BF05F01BFAB8F1000F27D0BE +:1088F000D4F81490009504EBC50000F128052F462C +:10890000B8F1100F38BF05F00BFA2068009920FA73 +:1089100001F1C90705D4009A012191400843206064 +:1089200006E0A868216988422CBF074605F0F8F9DF +:10893000C5F80890C7F80C90C9F80870C9F80C5031 +:10894000C4F808A0C4F814B004E005F0E9F9002068 +:10895000BDE8F28F06F10800BDE8F28F2DE9F04F77 +:1089600083B00546C046C046DFF8B847F52D80F015 +:1089700001810B2D31BF102705F10B00C008C70086 +:108980002068FE08F04010F0030F42D0C04300F012 +:108990000100861904EBC60000F12808F700D8F89A +:1089A00008506868C008C000B84218BF05F0B8F9A0 +:1089B000D5F80890454508BF05F0B2F94D4508BF08 +:1089C00005F0AEF96868C008C000B84218BF05F0ED +:1089D000A7F9C84505D120680121B140884320602E +:1089E0000DE02069814508D3D9F80C00A84204D1D4 +:1089F000C8F80890C9F80C8001E005F091F947F03B +:108A00000300686078190835416841F00101416050 +:108A1000F8E0A168B94280F0BF80002800F0A18092 +:108A2000012505FA06F149004A42B04011430840C9 +:108A300041420840411E080B00F01000C1404A09A5 +:108A400002F00802D1408B0803F00403D9404E081D +:108A500006F002061018F1401818C1F3400830184B +:108A6000404421FA08F101EB000804EBC80000F1D2 +:108A700028094FEAC80AD9F808607068C008C00021 +:108A8000504518BF05F04CF9D6F808B04E4508BF60 +:108A900005F046F95E4508BF05F042F97068C00868 +:108AA000C000504518BF05F03BF9D94505D12068F5 +:108AB00005FA08F1884320600DE02069834508D35A +:108AC000DBF80C00B04204D1C9F808B0CBF80C9028 +:108AD00001E005F025F947F003007060AAEB0708F4 +:108AE000B819019048F001014160019848F80080F0 +:108AF000A7684FEAD70ABAF1200F28BF05F010F98E +:108B000047B3CDF800A004EBCA00D4F8149000F1EC +:108B1000280AD346102F38BF05F002F920680099C3 +:108B200020FA01F1C90705D4009905FA01F10843BB +:108B3000206007E0DAF80800216988422CBF8346EC +:108B400005F0EEF8CAF80890CBF80C90C9F808B018 +:108B5000C9F80CA0C4F8088006F108050198606106 +:108B600050E06068C0B339462046FFF7EEFD0500CF +:108B700012D047E015F1400F28BF4FF0FF370BD25E +:108B800005F10B00C008C700606828B139462046CF +:108B9000FFF716FC050035D1A168B9421CD3CA1BEA +:108BA0006069102A0AD339186161A26042F001039A +:108BB0004B60525047F0030141600AE00022A2607E +:108BC000626141F00302426009184A6842F0010202 +:108BD0004A6000F1080515E0E06887420DD2C01B2D +:108BE000A169E0607A18A26140F00100506001F1D3 +:108BF000080547F00300486004E039462046FFF7C7 +:108C00001AFA0546C046C046284603B0BDE8F08FB4 +:108C100000B970472DE9F047A0F10804C046C046EE +:108C2000DFF8005528698442C0F07582616801F060 +:108C30000302012A00F06F82CA084FEAC20808EB5B +:108C40000409CA0737D4226811F0030F00F06582C7 +:108C500051420C1990448442C0F05D8269698C4293 +:108C600000F0D880D608202E70D2D4F80CA0A768C7 +:108C7000544508BF05F054F8BC4208BF05F050F851 +:108C80006068C008C000B0EBC60F18BF05F048F818 +:108C900005EBC60000F128018F4205D029698F42FB +:108CA00051D3F968A1424ED1BA453DD1286801217E +:108CB000B140884328604C4580F02D82D9F80400EB +:108CC000C10740F12882810700F17A81A9698945AD +:108CD00040F0B580E868AC614044E86040F00101D4 +:108CE000616069698C4202D100216961A960E9690A +:108CF000814280F01282DFF83004006808B9FEF784 +:108D0000C8FFA969002900F00882E868292824BF63 +:108D10002846FEF7B1FFE869E968884280F0FD81E6 +:108D20004FF0FF30E861F8E12830824506D028692D +:108D3000824508D3DAF80800A04204D1C7F80CA095 +:108D4000CAF80870B7E704F0EBFFB4E7E768A66974 +:108D5000A7420BD0A168814222D3C868A04204BFB9 +:108D6000B868A0421CD1CF60B9601BE004F11401C7 +:108D70000F6837B904F110010F689FB101E0114687 +:108D80000F6807F114021368002B02BF07F11002ED +:108D90001368002BF3D1814202D30020086001E068 +:108DA00004F0BEFF002E86D0E06905EB800000F5E0 +:108DB000987001688C4209D10760380011D1E269CE +:108DC0006868012191408843686074E72869864299 +:108DD00005D33069A04214BF7761376101E004F028 +:108DE0009FFF002F3FF467AF28698742ABD3BE6176 +:108DF000216929B1814226BF39618F6104F090FF5A +:108E0000606900283FF457AF296988429BD3786195 +:108E1000876150E799F8040000F0030003287FF40D +:108E20004AAFC5F80880D9F8040040084000C9F8E6 +:108E3000040048F00100606048F804806DE1696951 +:108E4000894508D1A8686C614044A86040F00101E0 +:108E50006160005161E1C008C0004FEAD00A80445F +:108E6000BAF1200F36D2D9F80C70D9F80860B9459C +:108E700008BF04F055FFB14508BF04F051FFD9F811 +:108E80000400C008C000B0EBCA0F18BF04F048FFD0 +:108E900005EBCA0000F128018E4206D029698E42F6 +:108EA000C0F08180F16849457DD1B74206D128687C +:108EB000012101FA0AF18843286076E028308742D0 +:108EC00005D0286987426ED3B86848456BD1F760F2 +:108ED000BE606AE0D9F80C70D9F818604F450DD023 +:108EE000D9F808002969884223D3C168494504BFDD +:108EF000B96849451DD1C760B8601CE009F114008C +:108F0000076837B909F110000768A7B101E0084602 +:108F1000076807F114010A68002A02BF07F110016F +:108F20000A68002AF3D12969884202D3002101602E +:108F300001E004F0F5FE002E37D0D9F81C0005EB57 +:108F4000800000F59870016889450AD107603800F3 +:108F500012D1D9F81C2068680121914088436860CB +:108F600023E02869864205D33069484514BF7761FC +:108F7000376101E004F0D4FEBFB12869874212D303 +:108F8000BE61D9F8101029B1814226BF39618F61C5 +:108F900004F0C6FED9F8140038B12969884202D31A +:108FA0007861876101E004F0BBFE48F00100606079 +:108FB00048F80480686984420BD1C5F80880ACE0A9 +:108FC00040084000C9F8040048F00100606048F81B +:108FD00004804FEAD807202F22D205EBC70000F10A +:108FE00028094E46B8F1100F38BF04F099FE2868E2 +:108FF00020FA07F1C90704D40121B94008432860C9 +:1090000007E0D9F80800296988422CBF064604F019 +:1090100087FEC9F80840F460A660C4F80C907CE0B4 +:109020005FEA182008BF002123D0B0F5803F28BF99 +:109030001F211ED2A0F58071090C01F008018840A3 +:10904000A0F58052120C02F004029040A0F580437B +:109050001B0CC1F10E0103F00203891AC91A9840D2 +:1090600001EBD030C11D28FA01F101F0010101EB43 +:109070004001E16100226261226105EB81006A68C2 +:1090800022FA01F300F59870DB0706D4012303FAF6 +:1090900001F11143696004601CE01F2900680EBFE4 +:1090A00000214908C1F1190108FA01F100E0104658 +:1090B0004268D208D200424510D0CA0F00EB8202AB +:1090C00002F1100349001A68002AF0D129698B4285 +:1090D00011D31C60A061E460A4600EE02A6981687D +:1090E000904228BF914206D3CC608460A160E060CA +:1090F0000020A06101E004F013FE286A401E2862EF +:109100000BD1D5F8C80100E080680028FCD14FF0F1 +:10911000FF30286201E004F003FEC046C046BDE80F +:10912000F087000050DE0020B0FD002070B50D4E2D +:109130000546B06884B00C46029501950390FAF795 +:109140006EFD2868009000A82860009808B100A96A +:109150004160B06800A981600474FAF770FE04B041 +:1091600070BD00BFA431002030B483680469027D63 +:10917000E318C468A34228BF1B1B534311F8015BCB +:1091800044681D555B1C521EF8D18168491C8160E2 +:10919000012904BF30BC04F0ADBD19484078002857 +:1091A00004BF30BCFAF735BD30BC704710B504467B +:1091B000207D226942436368D35C521C401E01F843 +:1091C000013BF8D12069401C2061E168884224BF3E +:1091D00000202061A068421EA260094A884252789D +:1091E00007D10AB9FAF715FD2046BDE8104004F092 +:1091F00081BD002A04BFBDE81040FAF70ABD10BDCA +:10920000A431002008B584B00023029311B9009363 +:10921000019302E00090481E019004AB00A90748AA +:109220007844183004F096FD009909B100220A70C4 +:10923000002858BF029805B000BD00BFF76FFFFFC0 +:1092400000F10103810704D010F8011B89B18107E7 +:10925000FAD10268B2F10131914311F0803F04BFAD +:1092600050F8042FF6E710F8011B11B110F8011B9C +:10927000FBE7C01A70470000506002604160086060 +:1092800070470A68F8E74860016070470168406805 +:10929000F9E7F8B50600DFF8B85802D505F148003F +:1092A000F2BD05F148040020296E00E0096805F1CF +:1092B0006002914204D00C46A2689642F6D1012089 +:1092C000002831D1A86EC76E1820F9F755FC044666 +:1092D000A660002F05D0B74203D2B6FBF7F0784363 +:1092E00000E03046E060002F02D0B74200D23E4698 +:1092F000266100202075DFF85C683078401C3070F3 +:10930000FAF78DFC7078401C707005F16001204602 +:10931000FFF7B7FF7078401E7070C0B2002801D10F +:10932000FAF777FCFAF71EFD2046F2BD38B5044681 +:1093300094F9140000281BD1DFF818582878401C35 +:109340002870FAF76CFC6878401C68702046FFF7BC +:109350009DFF2046F9F728FC6878401E6870C0B26F +:10936000002801D1FAF755FCBDE83140FAF7FABC04 +:1093700031BDF8B5044608466FF00045FFF789FF98 +:10938000064694F9050094F90410814214D1C01CDA +:109390008000F9F7F1FB074694F90500012807DB87 +:1093A000820021683846F6F735FE2068F9F7FCFBA5 +:1093B00027606079C01C607194F90400411C217120 +:1093C000216841F82060DFF89007864202D0307DA6 +:1093D000401C3075002008E0216851F820108A6890 +:1093E000954201DB1546A160401C94F904108842A7 +:1093F000F2DBF1BDF8B504466FF00046DFF8502708 +:1094000002F1480502F148004FF0FF33002704E065 +:10941000664501DB664675467F1C94F904C06745C6 +:109420000DDAD4F800C05CF827E0DEF808C0002BA5 +:10943000EED58C45ECD170463B465BB2ECE7002B99 +:1094400011D4BCF1010F0EDB06E0216801EB8306AD +:10945000766841F823605B1C94F904104E1EB342F9 +:10946000F3DB491E217102F14801884204D0017DDD +:10947000491E0175FFF75AFFA560F1BD10B4C26A1D +:10948000836B406C9C68002C02D56FF0004300E0B9 +:109490001B698468002C02D56FF0004000E0006971 +:1094A000984200DD1846D2685143884201DB012012 +:1094B00000E0002010BC704738B5DFF894168A6EC3 +:1094C000B2F85C30012490F90850AC402343A2F874 +:1094D0005C3001F2BC71FFF7D4FE012032BD10B543 +:1094E000DFF86C16896EB1F85C20012390F9084012 +:1094F000A3409A43A1F85C20FFF7C8FE012010BDED +:1095000001207047F8B5044615461E4604F12400B4 +:10951000FFF72FFF06EB460004EB8007294607F113 +:109520003000FFF726FF97F9340000903346627A47 +:1095300094F908100FF22460F9F7F1FBF1BDF8B5CA +:10954000044615461E4604F12400FFF753FF06EBC0 +:10955000460004EB8007294607F13000FFF74AFF79 +:1095600097F9340000903346627A94F908100FF2AC +:10957000FC50F9F7D4FBF1BDC16A8A68012A09DB06 +:109580000969012906DA006D002801D5002070471D +:10959000022070470020704701EB410200EB82017E +:1095A000896B8A68012A09DB0969012906DA006DDD +:1095B000002801D500207047022070470020704726 +:1095C000002900D5D8E7E7E7012900DA0121134691 +:1095D0000A4697E7012900DA012113460A46AEE759 +:1095E000B1F57A7F01DC4FF47A7113460A464FF4E5 +:1095F000FA7187E7B1F57A7F01DC4FF47A7113468F +:109600000A464FF4FA719AE710B50446002922D5AC +:10961000E06A816801291CDB0069012819DA02214E +:109620002046FFF72BFF002813D194F9540010F1C6 +:10963000010F04D1002084F85400012010BD00283F +:1096400007D1012060774FF0FF3084F854000220EA +:1096500010BD002010BDBDE810409DE7DFF8F024EC +:10966000926ED26E02F5FA72524202654FF0FF32EC +:1096700080F8542020E7C92900DAC82113460A4699 +:1096800042213FE7C92900DAC82113460A46422190 +:1096900055E710B50446002927D5E06A81680129FD +:1096A00021DB006901281EDA03212046FFF7E6FED0 +:1096B000002818D194F95400014611F1010F04D18A +:1096C000002084F85400012010BD002803D101209F +:1096D00084F8540010BD012905D14FF0FF3084F803 +:1096E0005400022010BD002010BDBDE8104053E71B +:1096F000DFF85C24926ED26EC832524202654FF09F +:10970000FF3280F85420D7E6DFF84424926ED26E00 +:10971000C83252420265CFE613464FF0FF3211467F +:10972000F0E613464FF0FF32114608E7DFF8200459 +:109730008169497A002905D1806A417A481E8041B1 +:10974000C00F70470120704738B5DFF80404846A01 +:109750008569607A002805D1687A002802D0286ED1 +:1097600040688047687A002804D1617A481E8041A9 +:10977000C00F32BD002032BD80B5FFF79DFEF9F766 +:1097800054FA00210175012002BD80B5FFF7A7FE44 +:10979000F9F74BFA00210175012002BDDFF8B00393 +:1097A0008169497A002905D1C069417A481E804102 +:1097B000C00F70470120704738B5DFF89403C469C3 +:1097C0008569607A002805D1687A002802D0286E61 +:1097D00040688047687A002804D1617A481E804139 +:1097E000C00F32BD002032BD38B5D948C469856A82 +:1097F000687A002802D1607A002802D0206E406882 +:109800008047687A002804D1617A481E8041C00FE1 +:1098100032BD002032BDCE48C06A417A481E804128 +:10982000C00F704780B5CA480068417A002902D14C +:10983000006E40688047012002BD80B5FFF74FFEF3 +:10984000C3480068417A002902D1006E80688047D1 +:10985000012002BD2DE9F0410C46BD4D55F82060B8 +:10986000307206F154070FF214313961112800F2F9 +:109870000B81DFE810F0120022002E0046003A00B3 +:109880005200610070009D007F008E00AC00BB00A4 +:10989000C800D500E200F000FD0006F10800062136 +:1098A00041760A21817605F2C47141604FF4FA7164 +:1098B00081600FF28C303861E6E006F10800062185 +:1098C00041760A21817605F6B81141600A2181604E +:1098D000DAE006F108000C2141761021817605F6C8 +:1098E000D011416010218160CEE006F1080007210F +:1098F00041760B21817605F6C41141600B21816010 +:10990000C2E006F10800062141760A21817605F6BB +:10991000E01141600A218160B6E006F108000621ED +:1099200041760A21817605F6EC1141600A218160B9 +:109930000FF280203861A7E006F10800122141767D +:109940001621817605F6F8114160162181600FF22B +:10995000D420386198E006F1080002214176062102 +:10996000817605F628214160062181600FF27C2076 +:10997000386189E006F10800082141760C218176E2 +:1099800005F61C2141600C2181600FF244203861F2 +:109990007AE006F10800012141760521817605F67D +:1099A00030214160052181600FF25C2038616BE05D +:1099B00006F10800052141760921817605F610217E +:1099C0004160092181600FF2D01038615CE006F13E +:1099D0000800062141760A21817605F6382141608A +:1099E0000A2181600FF2742038614DE006F1080011 +:1099F000012141760521817605F64421416040F23E +:109A00008661816040E006F1080001214176052170 +:109A1000817605F58051CC3141600521816033E0CC +:109A200006F108000C2141761021817605F5805160 +:109A3000D43141601021816026E006F10800112137 +:109A400041761521817605F58051E431416041F67A +:109A50006631816018E006F1080011214176152178 +:109A6000817605F530514C314160152181600BE064 +:109A700006F10800042141760821817605F5305170 +:109A8000643141600821816006F108000021017500 +:109A9000417581750176C1600161417006F1280848 +:109AA0000846C8F828004FF0FF3086F85400788048 +:109AB000062206F15800F6F7A3FA002010E000EBAA +:109AC000400106EB8101002281F8342034314A70D4 +:109AD00005F148024A6006EB800100228A64401CBE +:109AE0000228ECDB002086F8280088F8010005F148 +:109AF0004800C8F80400FC60BDE8F08110B5144CC3 +:109B0000F8F722FAA066002006E0682111FB004168 +:109B10006C3144F82010401C1228F6DB4FF0FF3067 +:109B2000206560650020A06506F0CFF906F0B2FF61 +:109B300008F01CFA08F083FF09F016FD08F0CFFCCE +:109B400009F0E2FD09F028FFBDE81040FCF703BE74 +:109B500000000020A43100204800002041442025BE +:109B6000642025642025642025640000524D2025B2 +:109B700064202564202564202564000001950108E7 +:109B8000B994010801950108DF940108C9950108FD +:109B9000D5950108C1950108019501085D96010858 +:109BA00001950108DF940108E1950108F595010888 +:109BB0000996010801950108F1960108019501082F +:109BC000DF940108779601088596010893960108AD +:109BD000019501080997010801950108DF94010822 +:109BE000C9950108D5950108C19501082D9701086F +:109BF00079970108499701088B970108199701087F +:109C000023970108C19501089D970108B99401089F +:109C1000B9970108DF940108C9950108D595010895 +:109C2000C195010801950108B9940108E997010857 +:109C3000DF940108C9950108D5950108C19501086F +:109C400017980108B994010817980108DF940108D2 +:109C5000C9950108D5950108C19501082598010805 +:109C6000B9940108019501083B980108199701086A +:109C700023970108C195010800B500BF130096465F +:109C80009446103928BFA0E80C50FAD85FEA417C0E +:109C900028BF0CC048BF40F8042BC90728BF20F8D4 +:109CA000022B48BF00F8012B00BD000080B500F07A +:109CB0000BF800204E4A034601E08B54401C40B292 +:109CC00001460229F9DB01BD10B44A480021018098 +:109CD0000846494C0DE001EB810100EB80031B19A4 +:109CE000C91800230B71521C52B211460129F2DB34 +:109CF000401C142801DA0022F6E710BC704700EB84 +:109D000080003D49405E704700EB80003A494018B2 +:109D1000B0F90200704710B54FF0FF340146012939 +:109D200002D00C2902D003E0002405E0012403E066 +:109D30000FF2CC00F8F7F3FF204610BD70B50446D3 +:109D40000125FFF7E8FF06462046012802D00C282F +:109D500003D005E000F042F808E0FFF7B5FF05E0AA +:109D600021460FF2AC00F8F7DAFF0025002E02D4EE +:109D70001F4800213154284670BD10B54FF0FF3404 +:109D8000082801D1002404E001460FF29400F8F7FE +:109D9000C6FF204610BDF3B581B0164C25882E466F +:109DA000701C152801DB0020FEBD00270DE007EB2D +:109DB000870106EB8600104A8018081801AA891846 +:109DC0000522F6F7AFFD7F1C7FB2012FEFDB681C89 +:109DD00020800120FEBD0748008870470748002109 +:109DE0008180017041700121817008467047000038 +:109DF0000C7200208A710020506D00205431002028 +:109E00004558205044524D4D2043312025640000D8 +:109E10004558205044524D4D2043332025640000C6 +:109E20004558205044524D4D2043322025640000B7 +:109E30000FB480B509F0D4FDD6480521417000214A +:109E4000017001714171D44802A92022F6F77AFD10 +:109E5000092200210846F8F7E1FC022801D102207E +:109E600000E0012002BC5DF814FB4CE110B5C94CC8 +:109E700094F9010005280AD100F0E4F8002822D066 +:109E80000420607009F0ACFDBDE81040FCE004283F +:109E900019D100F0B5F8002808D003202070052063 +:109EA000607009F09DFDBDE810402CE100F055F90F +:109EB000002808D0022020700520607009F090FD75 +:109EC000BDE810401FE1012010BD80B5F8F7A4FCEB +:109ED000B0498860B149C0F8781100F5BC70B0494C +:109EE0004160B04981600FF21101C1600FF295012C +:109EF0000161012002BD00000020A6490246CA708F +:109F00008A6892F86921002A0FD091F90020002A6E +:109F100002D00220C870012091F90420012A04D146 +:109F2000C87840F00400C8700120704799480021AB +:109F30000170C17001710120704710B58AB00446EC +:109F400000A8E8F785FE0198A04204D3001BC0B228 +:109F500000EE100A04E08038001BC0B200EE100AC8 +:109F6000B8EE400ADDED060A20EE200A10EE100AD7 +:109F7000F6F756F841EC100B0AB010BD85480121E8 +:109F80000171704778B4834A92F903309C0716D563 +:109F900030240D7814FB050501262E700D7814FB76 +:109FA00005056E700D7814FB05050926AE700D7859 +:109FB00014FB05041578E5700C78641C0C705B07C5 +:109FC0001CD530240B7814FB030301251D700B787E +:109FD00014FB030303255D700B7814FB03030925B1 +:109FE0009D700B7814FB03030125DD700B7814FBC7 +:109FF0000300527802710878401C087071BC95E724 +:10A0000030B58DB0002420468DF8000001A8F8F787 +:10A0100064FC4FF47A70604D00ABB5F8051000FB9E +:10A0200001F2B5F803104143B5F80150684301ADA2 +:10A0300095EC030A09F016FD022800D10124204600 +:10A040000DB030BD30B58DB0002420468DF8000035 +:10A0500001A8F8F742FC4FF47A704F4D00ABB5F809 +:10A06000051000FB01F2B5F803104143B5F80150AB +:10A07000684301AD95EC030A09F0F4FC012800D116 +:10A08000012420460DB030BD30B59DB00124002024 +:10A09000ADF82A0001900A208DF8080000208DF804 +:10A0A00009008DF80A003B4D95F90500002827D1DD +:10A0B000B4208DF82D0046208DF82E0020468DF816 +:10A0C0002F0000208DF80000032001900DF1090001 +:10A0D0000BA92022F6F726FC0A208DF808000020A4 +:10A0E000ADF82A0000A8F8F741FC002801D10224AD +:10A0F00006E013A8E8F7ACFD1498A8702046687134 +:10A1000020461DB030BD30B58BB00124214D95F9EE +:10A11000050001281ED10020ADF82A0001900A2078 +:10A120008DF8080000208DF809008DF80A002046FF +:10A130008DF80000032001900A208DF8080000200F +:10A14000ADF82A0000A8F8F711FC002800D103247C +:10A150000020687120460BB030BD10B52DED028B8C +:10A1600000240C488078FFF7E8FEB0EE408AF0EE5D +:10A17000608A0948C079F6F72FFB02460B4651EC7E +:10A18000180BF6F737FB00D801242046BDEC028BF4 +:10A1900010BD000030320020FC700020319E01080C +:10A1A0006B9E01086D9E010810B5EFF3108072B62A +:10A1B0000A4C216841F47F01216080F31088A06E71 +:10A1C00010F4700F04BFA72009F092FE4FF000704A +:10A1D000C4F81C020020C4F8140210BD20ED00E0F9 +:10A1E000DFF86C1100220A700A70012802D00428DE +:10A1F00003D0704701200870704705200870704731 +:10A2000010B454494A6802F00C02082A13D10A68B3 +:10A210000B6803F03F03514CB4FBF3F30A68C2F33D +:10A2200088125A430B68C3F301435B1C5B00B2FB0B +:10A23000F3F2026001E0494A02604A6802F0F0036A +:10A24000474A1B099B5C046824FA03F343604C688B +:10A2500004F4E054A40AA45CE3408360496801F478 +:10A260006041490B895C426822FA01F1C16010BC6F +:10A270007047394900F44072B2F5407F06D10A6850 +:10A2800022F4F812374B03401A430A608A6E000525 +:10A2900052EA105088667047334908607047334966 +:10A2A00008607047324A0029116802D008431060E4 +:10A2B000704721EA0000106070472E4A002911689B +:10A2C00002D008431060704721EA00001060704718 +:10A2D000294A0029116802D008431060704721EA1A +:10A2E000000010607047254A0029116802D0084319 +:10A2F0001060704721EA000010607047204A002972 +:10A30000116802D008431060704721EA0000106015 +:10A3100070471C4A0029116802D00843106070473A +:10A3200021EA0000106070474109084A012901D163 +:10A33000116804E0022901D1116F00E0516F00F0B3 +:10A340001F0021FA00F000F00100704700380240C1 +:10A350007038024004380240083802400024F400FB +:10A36000D0A50020FFFCFF0F3C0E4742400E4742A5 +:10A370003038024040380240443802401038024031 +:10A38000203802402438024080B52749884209D14C +:10A3900001210846FFF7A7FF00210120BDE8044086 +:10A3A000FFF7A1BF2149884209D101210220FFF70F +:10A3B0009AFF00210220BDE80440FFF794BF1C492A +:10A3C000884209D101210420FFF78DFF00210420DC +:10A3D000BDE80440FFF787BF1649884209D1012133 +:10A3E0000820FFF780FF00210820BDE80440FFF7A8 +:10A3F0007ABF1149884209D101211020FFF773FF6C +:10A4000000211020BDE80440FFF76DBF0B498842D2 +:10A4100009D101218020FFF766FF00218020BDE8DF +:10A420000440FFF760BF01BD00000240000402408D +:10A4300000080240000C024000100240001C0240D4 +:10A44000F0B4002232E0012393400C681C409C428F +:10A450002BD154000325A540ED4306682E4006602D +:10A4600006680F79A7403E4306600E79012E01D0A1 +:10A47000022E11D186682E40866086684F79A740EB +:10A480003E438660466826EA0303436043688E794C +:10A490009640B6B233434360C3682B40C360C36881 +:10A4A000CD7905FA04F42343C360521C102ACAD3A1 +:10A4B000F0BC70474FF6FF710160002101714171DE +:10A4C0008171C171704700220069084200D00122E9 +:10A4D00010467047018370474183704710B4CB101A +:10A4E00000EB830001F007018900036A0F248C4010 +:10A4F000A3430362036A02FA01F11943016210BC2B +:10A500007047000080B5434988420BD101214FF4C8 +:10A510000010FFF7F3FE00214FF40010BDE80440E7 +:10A52000FFF7ECBE3C4988420BD101214FF480007B +:10A53000FFF7E4FE00214FF48000BDE80440FFF780 +:10A54000DDBE364988420BD101214FF40000FFF7F0 +:10A55000D5FE00214FF40000BDE80440FFF7CEBE59 +:10A5600001BD7FB504460D46A68800A8FFF748FE4A +:10A5700002992B48B1FBF0F04FF6C0723240024313 +:10A58000A28022884FF6FE731A4022802A68254B4B +:10A590009A420AD25200B1FBF2F10A4692B2042A60 +:10A5A00000DA0421401C208421E0EB884BF6FF7682 +:10A5B000B34204D102EB4202B1FBF2F106E01923EF +:10A5C0005A43B1FBF2F141F4804189B20A0502D14C +:10A5D00041F0010189B241F4004180B24FF496721A +:10A5E00050434FF47A7290FBF2F0401C2084A18318 +:10A5F000208840F00100208020884FF6F531084087 +:10A60000A9880843698908432080A88929890843C3 +:10A6100020817FBD0054004000580040005C004095 +:10A6200040420F00A18601000029018803D041F0BB +:10A630000101018070474FF6FE72114001807047A2 +:10A640000029018803D041F48071018070474FF6E2 +:10A65000FF621140018070470029018803D041F456 +:10A660000071018070474FF6FF5211400180704722 +:10A67000002A02D041F0010101E001F0FE01018257 +:10A6800070470029018803D041F480610180704740 +:10A690004FF6FF321140018070470029018803D036 +:10A6A00041F40041018070474904490C0180704722 +:10A6B00082B00246002003460193009300920A0FE5 +:10A6C00001920902090A019A002A03D0009A143261 +:10A6D000009203E0090C009A18320092009A126866 +:10A6E0000A4200D0012002B07047000080B55549F1 +:10A6F00088420BD101214FF48050FFF70AFE002160 +:10A700004FF48050BDE80440FFF703BE4E49884235 +:10A710000BD101214FF48040FFF7F0FD00214FF4F1 +:10A720008040BDE80440FFF7E9BD484988420BD1AD +:10A7300001214FF40040FFF7E1FD00214FF40040FC +:10A74000BDE80440FFF7DABD01BD028802F44152C2 +:10A750000B881A434B881A438B881A43CB881A43B9 +:10A760000B891A434B891A438B891A43CB891A43A5 +:10A770000280828B4FF2FF731A408283098A018222 +:10A780007047F0B40123828B4FF240042240828351 +:10A7900002220284828B8C68022C02D100230224C4 +:10A7A0003AE08C88002C00D00223294C65682D02E9 +:10A7B00003D5656825F400056560264D2E68C6F34F +:10A7C00088162D68C5F30275246804F03F04224FF3 +:10A7D000B7FBF4F47443B4FBF5F48D680A26CF8814 +:10A7E000B7F5007F06D1230A7343B3FBF5F35B1D76 +:10A7F0009BB207E05B01B4FBF3F37343B3FBF5F3E8 +:10A800005B1D9BB23446B3FBF4F303F001052C4609 +:10A810001B1B5C08A4B22B02A51EFE2D01D3022433 +:10A8200000232343CC88234303840B881A434B889B +:10A830001A438B881A438989114341F4006181834B +:10A84000F0BC70470030014000380040003C004040 +:10A8500004380240843802400024F40000290188B2 +:10A8600003D041F04001018070474FF6BF721140A4 +:10A87000018070470029818B03D041F4806181837E +:10A8800070474FF6FF32114081837047002A82885B +:10A8900002D011438180704722EA01018180704714 +:10A8A00000220089084200D00122104670470000B3 +:10A8B0000168490849000160002101604160816030 +:10A8C000C1600161212141616A49884203D16A481E +:10A8D0003D21016070476949884204D166484FF4C0 +:10A8E0007461016070476649884204D162484FF440 +:10A8F0007411016070476349884204D15E484FF08B +:10A900007461016070476049884203D15A485F49C9 +:10A91000416070475E49884203D157485D494160B4 +:10A9200070475D49884203D153485C494160704794 +:10A930005B49884204D150484FF03D514160704717 +:10A940005849884203D158483D2101607047574912 +:10A95000884204D154484FF47461016070475449EF +:10A96000884204D150484FF4741101607047514936 +:10A97000884204D14C484FF07461016070474E49E1 +:10A98000884203D148484149416070474B49884259 +:10A9900003D145483F49416070474949884203D146 +:10A9A00041483E49416070474649884203D13E488C +:10A9B0004FF03D51416070470268434B1A400B68AD +:10A9C0001A43CB681A434B691A438B691A43CB6904 +:10A9D0001A430B6A1A434B6A1A438B6A1A434B6B2E +:10A9E0001A438B6B1A4302604269D208CB6A53EA5E +:10A9F000C2020B6B1A4342610A6942604A68826074 +:10AA00008968C16070470029016803D041F00101E5 +:10AA1000016070474908490001607047002A01D071 +:10AA200001617047C1607047006800F00100704725 +:10AA300000221C4B984201D2244800E024488B009D +:10AA400001D5406800E0006808402249084200D073 +:10AA5000012210467047134A904201D21B4800E081 +:10AA60001B481C4A0A40890001D5C26070478260B9 +:10AA700070470000106002400860024028600240F9 +:10AA80004060024058600240706002403D0000207B +:10AA900088600240400F0020A060024000003D207E +:10AAA000B86002401064024008640240286402401A +:10AAB000406402405864024070640240886402406E +:10AAC000A0640240B86402403F801CF00060024075 +:10AAD000006402407D0F7D0F024908607047024903 +:10AAE0000860704720000E4224000E4230B4016816 +:10AAF000CB4321498279002A27D00A461468234093 +:10AB0000136053680468A34353600379CC18236827 +:10AB100005682B43236093680468A3439360D3685C +:10AB20000468A343D36043790568102B07D191686B +:10AB300029439160D16800680843D0600AE051FA67 +:10AB400083F420682843206004E000790C18206812 +:10AB50001840206030BC70470021074A136803404A +:10AB60005269024202D0002B00D0012108467047F2 +:10AB70000249086070470000003C0140143C01405D +:10AB80001949084319490860704770B403781A4698 +:10AB90000121C478002C1DD0144B1B6803F4E06322 +:10ABA000C3F5E0631B0A4478C3F10405AC40857823 +:10ABB0000F2646FA03F32B4023431B010C4C13557D +:10ABC000007842110B4B00F01F0001FA00F043F82F +:10ABD000220006E05011084A03F01F03994042F892 +:10ABE000201070BC704700000000FA050CED00E07A +:10ABF00000E400E000E100E080E100E030B401F0BA +:10AC00000302920021F00301054BCC580F2595401B +:10AC1000AC43CC50CC5890402043C85030BC704717 +:10AC20000838014080B501214FF48070FFF771FBB7 +:10AC300000214FF48070BDE80440FFF76ABB426812 +:10AC40004C4B1A400B7942EA03220B681A434260CC +:10AC50008268494B1A400B691A43CB681A438B68C8 +:10AC60001A434B7942EA43028260C26A22F47002BC +:10AC7000097D491EC9B242EA0151C16270470021F3 +:10AC80000160017141718160C16001610121017543 +:10AC900070473A490A683A4B1A4003681A434368B6 +:10ACA0001A4383681A43C068104308607047002144 +:10ACB000016041608160C16070470029816803D0F4 +:10ACC00041F0010181607047490849008160704787 +:10ACD00070B407240A290BDBC568A1F10A0606EB4C +:10ACE0004606B44025EA0404B3402343C36008E0A9 +:10ACF000056901EB4106B44025EA0404B34023434F +:10AD0000036113461F24072B09DA436B521E02EB23 +:10AD100082029440A34391401943416314E00D2BF8 +:10AD200009DA036BD21F02EB82029440A3439140E5 +:10AD30001943016308E0C36A0D3A02EB82029440B2 +:10AD4000A34391401943C16270BC7047816841F0D0 +:10AD50008041816070470029816803D041F480619F +:10AD60008160704721F4806181607047C06C80B25F +:10AD700070470000FFFEFFFCFDF7FFC00423014009 +:10AD8000E030FCFF00220068084200D0012210469B +:10AD900070470000182200210248F5F731B9014838 +:10ADA0007047000080FD002080B5FFF7F8FF68497C +:10ADB00008600FF2910101600FF2A50141600FF2EE +:10ADC000A50181600FF2A101C1600FF20D010161C7 +:10ADD0000FF23901416101BD30B583B004465D4DCC +:10ADE000207869698847002009E004EB40014A782F +:10ADF000897841EA022100AA22F81010401C032899 +:10AE0000F3DB00A8E968884700203EBD30B583B079 +:10AE10000446504D28698047207000A8A9688847DB +:10AE200000200AE004EB400100AA32F910301B12A6 +:10AE30004B7032F810208A70401C0328F2DB00208F +:10AE40003EBD000080B50AF0EDF90AF006FB41486E +:10AE50000068804740480068BDE8024000470000A5 +:10AE6000704700007047000073B52DED048B8EB065 +:10AE7000B0EE408AF0EE608AB0EE419A14460020AF +:10AE80000090BDF84800ADF80C0003A8BDF84A10CA +:10AE90004180BDF84C1081802E4D00AA01A96B683D +:10AEA0009847002001AE0FE036F9101000EE101A9E +:10AEB000B8EEC00ADFED250A80EE200A0BA901EBEF +:10AEC000800181ED000A401C0328EDDBB0EE480A4A +:10AED0008DED080A08A8B0EE680A80ED010AB0EE10 +:10AEE000490A80ED020A05AA0BA9AB6998470098A8 +:10AEF00020700598E06005A84168A16080686060E6 +:10AF0000BDF9040000EE100AB8EEC00AF2EE040A21 +:10AF100080EE200A84ED040AB6F9020000EE100A61 +:10AF2000B8EEC00A80EE200A84ED050AB6F90400E6 +:10AF300000EE100AB8EEC00A80EE200A84ED060A80 +:10AF400000200EB0BDEC048B76BD000000401C4616 +:10AF500094FE0020B4FC0020C0FE00204C48C168D4 +:10AF6000002903D54B4901604B49016070474B48AC +:10AF7000016841F000410160704770B50446002649 +:10AF800000290BD0012902D14FF4807606E0022976 +:10AF900002D14FF4007601E04FF4407600F082F8E1 +:10AFA00009281ED13D4D286820F44070286028688B +:10AFB00030432860286820F0F8002860286844F0B2 +:10AFC000020108432860286840F48030286000F0BF +:10AFD00069F8296821F002012960296821F0F80147 +:10AFE000296070BD70B504460D4600F05BF8092875 +:10AFF00013D12A4E306820F440703060306840F43D +:10B0000000703060306840F001003060256000F072 +:10B0100049F8316849084900316070BD70B505468E +:10B020000E4600F03FF8092811D11C4C206820F48E +:10B030004070206020682060206840F0010020609F +:10B040002E7000F02FF8216849084900216070BD7A +:10B05000134908607047092011490A68D20301D5D5 +:10B06000012070470A68D20601D5062070470A6899 +:10B07000D20501D5022070470A6812F0EF0F01D007 +:10B08000072070470968890700D50820704700002D +:10B09000043C024023016745AB89EFCD103C0240E0 +:10B0A0000C3C024080B509208DF80000FFF7D3FF6B +:10B0B0008DF8000003E0FFF7CEFF8DF800009DF84B +:10B0C00000000128F7D09DF8000002BD2DE9F041F5 +:10B0D00004460D461646CD4F386B40F48050386319 +:10B0E000DFF82C83CB48C8F80400CB48C8F8080028 +:10B0F0004FF47A50A8F800000120A8F80E00A8F834 +:10B100000C0040460AF0C2F900F0ADF8C046C04657 +:10B11000B86820F40000B860386840F0806038609B +:10B1200038680001FCD5600000F004F9C8F834501C +:10B13000C8F8386000F003F80020BDE8F08130B5B1 +:10B1400085B001210220FFF7B8F81D208DF800001E +:10B150000F208DF8010000208DF8020001208DF8ED +:10B16000030000A8FFF711FDAC480068AC49B0FB34 +:10B17000F1F0441E40F2E730029000200190ADF85B +:10B180000C008DF80E00A74D01A928460AF07EFBA1 +:10B190000122214689B22846018582820122114678 +:10B1A00028460AF0ADFB05B030BD80B5974A13685C +:10B1B0001B010AD4936823F400039360136843F0DF +:10B1C0008063136013681B01FCD5974A5060974851 +:10B1D000016101219648FFF74DFB01219548FFF7DA +:10B1E00012FC002002BD10B58E4C2088C00709D487 +:10B1F0000FF25020F7F793FD01212046BDE81040E3 +:10B200000AF068BB10BD80B500218948FFF732FB0A +:10B210007E48016821F08061016000218548FFF7C8 +:10B22000F2FB002002BD10B57E4C2088C00709D576 +:10B230000FF21820F7F773FD00212046BDE81040FB +:10B240000AF048BB10BD30B4002308E031F81340C9 +:10B25000250245EA142420F813405B1C9BB293425C +:10B26000F4DB30BC70471CB501210220FFF71AF84F +:10B2700001210220FFF716F802208DF804000020BB +:10B28000ADF8060002208DF805004FF40050009044 +:10B29000694C00A92046FFF7D3F805220D2120466E +:10B2A000FFF71CF94FF40040009000A92046FFF77B +:10B2B000C7F805220F212046FFF710F913BD30B55E +:10B2C000A1B05A4C5B48406880B2C0F5A070608164 +:10B2D000554D29E0A08A05EB400205EB4101B1F88C +:10B2E0004818A2F8C817A189491CA181401CA08256 +:10B2F000A189B1F5A07F01DB0021A18180B24028A6 +:10B3000012DB402205F5F96100A8FFF79CFF404BD6 +:10B310001E22696800A80AF033F94FF4F07110207A +:10B320000AF004FB0020A082A18960898842D1D163 +:10B3300021B030BD30B593B0054601214FF48040B7 +:10B34000FEF7BBFF3A4C2046FFF7D0F902952020CC +:10B35000ADF802000020ADF80400ADF80C004FF489 +:10B360004070ADF800000020ADF8060000A92046AE +:10B37000FFF707FA01214FF40010FEF793FF2D4D60 +:10B3800000212846FFF73FFB2846FFF791FA0020EF +:10B3900004902A4805902A480690002007904FF410 +:10B3A000A0700890002009904FF480600A904FF43C +:10B3B00000600B904FF400500C904FF480700D9093 +:10B3C0004FF400300E9000200F90032010900020CA +:10B3D0001190129004A92846FFF7EEFA01221146B7 +:10B3E0002046FFF753FA13B030BD10B50D4C0121C4 +:10B3F00020460AF08FFA002806D001212046C943D2 +:10B400000182BDE810405AE710BD0000003802403C +:10B41000443000200000FA45000020412032002086 +:10B4200040420F0000040040BC5200207471002014 +:10B430000038004058600240000402400C380040D0 +:10B44000045B002054494D332D45000054494D33D1 +:10B450002D44000030B583B00020009001A80AF010 +:10B46000BFFA314C982200212046F4F7C9FD2F493C +:10B47000A1642F49E1640621A4F85810FA21A4F828 +:10B480005A100021A4F850100321A4F85C1000A960 +:10B490000AF0ABFA009841F27171884201D3FE20A4 +:10B4A0003EBD244D05F57170C4F88C004FF4F0706A +:10B4B0002082281DE060002060616082206020837F +:10B4C00020460AF00BFC0020286020460AF0A8FA6B +:10B4D0003EBD38B5144CD4F88C10002905D10FF2BC +:10B4E0005C00F7F71CFC0D2032BD21460AF0B6FACD +:10B4F000054610480168002904D00FF24C00F7F708 +:10B500000EFC0D25002D08D1B4F86800002800D1EC +:10B51000312520460AF084FA04E0FD2D02D02046B1 +:10B520000AF07EFA284632BD70F60020004000087E +:10B5300000B0000800A600200020704753504620AD +:10B540004E554C4C00000000734D4D20256400000A +:10B5500030B5104C0546207881B0401C2070F8F7BB +:10B560005EFBA0684169294205D18561082101740B +:10B570002046F8F73EFBA06800214569416120782C +:10B58000401E2070607808B9F8F743FB284601B0E8 +:10B5900030BD00BFA4310020704710B50024F7F77C +:10B5A00047FB002800D00124204610BDDFF8FC092D +:10B5B000417BDFF8FC2902EB810282ED000ADFF813 +:10B5C000F42902EB8102F0EE601AC2ED001ADFF8F6 +:10B5D000E82902EB810282ED001A827B202A01DA3F +:10B5E000521C8273491C4173C9B2202901D1002128 +:10B5F000417370472DE9F0412DED028B0025DFF8F6 +:10B60000AC49A07B022801DA28467AE02E4601E008 +:10B610000025761CA07B86426DDA607B002803D172 +:10B620001F274FF01E0805E0471EB7F1010801D59E +:10B6300008F12008DFF8780900EB870191ED000A96 +:10B6400000EB8800D0ED000A30EE600A10EE100A20 +:10B65000F4F7E6FC21F00041F4F748FF08EE100A89 +:10B66000DFF8500900EB870191ED000A00EB88003C +:10B67000D0ED000A30EE600A10EE100AF4F7D0FCAC +:10B6800021F00041F4F732FF08EE900ADFF82809B4 +:10B6900000EB870191ED000A00EB8800D0ED000A75 +:10B6A00030EE600A10EE100AF4F7BAFC21F0004107 +:10B6B000F4F71CFF00EE100ADFEDC10AB4EE608A59 +:10B6C000F1EE10FA01DB012000E00020F4EE608AC8 +:10B6D000F1EE10FA01DB012100E00021B4EE600A76 +:10B6E000F1EE10FA01DB012200E0002208431043D2 +:10B6F0008ED06D1C8DE7EDB2152D01DB012000E031 +:10B700000020BDEC028BBDE8F08138B52DED028B39 +:10B7100086B0B0EE618A0546DFF8904884ED000AF5 +:10B72000F0EE601AC4ED011AB0EE412A84ED022A4F +:10B73000D4ED0F2AF4EE402AF1EE10FA1ED1D4ED2A +:10B74000102AF4EE612AF1EE10FA17D1D4ED112A85 +:10B75000F4EE422AF1EE10FA10D1206D401C206563 +:10B76000152813D3E06BF4F75BFC02460B460FF68B +:10B77000AC00F7F7D4FA0020206507E084ED0F0A4B +:10B78000C4ED101A84ED112A0020206594EC030A00 +:10B79000FFF70CFF207B02283BD1284680B2B0EE99 +:10B7A000480A0AF07FFC294689B22046E6F77AFE6D +:10B7B000DFF854582846E7F74BFA286801280FD1DC +:10B7C000E6F7A9F82846E7F743FA2822294604F1C4 +:10B7D0001400F4F71FFC0FF65000F7F7A0FA24E06E +:10B7E000294684B068462822F5F7ACF80FBC00F073 +:10B7F000F5F800F03FFA002817D0E889002814D1A6 +:10B800000FF63000F7F78BFA01202073E7F736FACE +:10B810000BE0012809D1FFF7EDFE002805D00FF657 +:10B820001C00F7F77CFA02202073002006B0BDEC64 +:10B83000028B32BDDFF87407007B7047002805D00B +:10B84000DFF86817C96C5422F5F77CB8704710B55B +:10B85000002815D1DFF86C4700EE101AB8EE400A48 +:10B8600084ED010A2046E7F71BFA6068F4F7D8FB7D +:10B8700002460B460FF2CC70BDE81040F7F74FBA06 +:10B88000012815D1DFF83C4700EE101AB8EE400A47 +:10B8900084ED000A2046E7F703FA2068F4F7C0FBBE +:10B8A00002460B460FF2AC70BDE81040F7F737BA0E +:10B8B00002280DD1DFF80C4721812046E7F7F0F987 +:10B8C000B4F908100FF29C70BDE81040F7F727BAE2 +:10B8D00010BD2DE9F84306460F469046DFF8DC46DA +:10B8E000542200212046F4F78BFBDFF8C056542287 +:10B8F000002105F15400F4F783FB54220021DFF806 +:10B90000C006F4F77DFB2822214605F15400F4F728 +:10B9100081FB05F15400E864DFF8A8965422002169 +:10B9200009F10C00F4F76CFB0C2200214846F4F7F7 +:10B9300067FB28220021DFF8D006F4F761FB2822FC +:10B94000002105F11400F4F75BFB00EE106AB8EE7D +:10B95000400A89ED010A00EE107AB8EE400A89ED3E +:10B96000000AA9F8088043463A4631460FF20470AF +:10B97000F7F7D5F9E5F708FF4846E7F791F904F13D +:10B98000440042F21071C1800181002161640120F4 +:10B99000287308466873A873A8640AF03FFB002068 +:10B9A000E873012028740FF2DC60F7F7B8F9002083 +:10B9B000E8632864686428606860A860BDE8F18373 +:10B9C0000100803F10B596B0E7F74CF9044600A897 +:10B9D000FFF734FF0098001916B010BD0FB470B512 +:10B9E0002DED028B88B0DFF8C445A069814205D1F6 +:10B9F000BDF84620638C9A4200F096800D1A02D55D +:10BA0000DFF8000645199DED170AD4ED0E0A70EE19 +:10BA1000608AF5EE408AF1EE10FA03D59FED930AA5 +:10BA200078EE808A9DED150AD4ED0C0A30EE608A1E +:10BA3000B5EE408AF1EE10FA03D59FED8C0A38EE90 +:10BA4000008A9DED160A0AF0ABFCB0EE401A207C8D +:10BA5000012802D0022837D047E0DFF86465079656 +:10BA60000EA983B068462822F4F76CFF0EBC9FED48 +:10BA7000801AF0EE480AB0EE680A284600F05AF83C +:10BA8000E07B2818E073C0B203282EDBDFF82C051A +:10BA900007900EA983B068462822F4F753FF0EBC26 +:10BAA0009FED731AD6ED0D0A96ED080A306800F086 +:10BAB00041F8E07B401CE073542200213046F4F74B +:10BAC0009FFA0220207410E0DFF8F00407900EA91E +:10BAD00083B068462822F4F735FF0EBCF0EE480A22 +:10BAE000B0EE680A284600F025F8BDF846000028A8 +:10BAF00009D154220021DFF8C804F4F781FA0020AC +:10BB0000E0730120207428220EA904F11400F4F738 +:10BB100081FADFF8A814E164542204F15400F4F728 +:10BB200079FA04F15400E06408B0BDEC028B70BCFB +:10BB30005DF814FB0EB478B52DED048B8AB0B0EE31 +:10BB4000409AB0EE608AF0EE418A1D9D05F1200416 +:10BB5000BDF85A6026852946B0EE680A00F0C4F8A0 +:10BB6000DFF84804806C00280ED195ED080A30EE0D +:10BB7000090A85ED080A00F007FA85ED080AE6844F +:10BB8000BDF85800A08437E0DFF8380406AA0AC8D8 +:10BB90000AC20368136013A984B068462822F4F728 +:10BBA000D1FE0FBCB0EE680A00F03AF9D5ED080AF4 +:10BBB00030EE800A85ED080A00F0E6F985ED080A06 +:10BBC000F5EE408AF1EE10FA0BDD032E03D10620CC +:10BBD000E084A08410E0042E0ED10820E084A0842C +:10BBE0000AE0032E03D10720E084A08404E0042EA1 +:10BBF00002D10920E084A0841998206194ED050AFF +:10BC000030EE080A84ED050A00F0B2F984ED050A69 +:10BC10001B98F4F705FADFF8B023DFF8B033F4F738 +:10BC200037FAF4F763FC00EE100A84ED060ADFED44 +:10BC30007B0AB4EE600AF1EE10FA02DBDFF8CC0307 +:10BC4000A06115982062E08C002801D100202062BC +:10BC50000020E06117982063BDF86200A0850AB05B +:10BC6000BDEC048B71BC5DF810FB0000002474492E +:10BC70000000000080B5E7F723F840F6B9318842AC +:10BC800001D3012002BD002002BD38B50D4605F1EB +:10BC90001004218F032912D1B5EE400AF1EE10FAFB +:10BCA00006DD29694018286100F07AF9286131BD64 +:10BCB00061684018606000F073F9606031BD04296C +:10BCC00011D1B5EE400AF1EE10FA06DDA168401878 +:10BCD000A06000F065F9A06031BDE1684018E06047 +:10BCE00000F05EF9E06031BDF8B52DED028B054640 +:10BCF000B0EE408A0C4620682818206000F050F909 +:10BD0000206018EE100AF4F78BF921F000410022B0 +:10BD10001346F4F76FFD44D2AA4EB069052831D21C +:10BD2000A24FB96C00292DD104281CD1E16840181C +:10BD3000E06000F035F9E0602146B0EE480AB069F5 +:10BD4000FFF7A3FFE0682818E06000F029F9E06041 +:10BD50002146B0EE480A2846FFF797FF00F04CF85E +:10BD60000120B8640AE0B4F84600042803D17069E1 +:10BD70002818706102E0306928183061B06928180D +:10BD8000B06136E0E0682818E06000F009F9E06092 +:10BD90002146B0EE480A2846BDEC028BBDE8F440CF +:10BDA00073E7B4F84600032802D0042807D00DE05A +:10BDB00060682818606000F0F3F860600CE0A0682C +:10BDC0002818A06000F0ECF8A06005E06068281872 +:10BDD000606000F0E5F860607A4EB069052803D233 +:10BDE000002801D000F00EF800F006F86F4800219E +:10BDF0008164BDEC028BF1BD72480021016141619B +:10BE0000816170476F486D494A6803699A184A60B2 +:10BE10008A68406980188860704700000100C84146 +:10BE20000FB438B52DED088BB0EE408ADFED688A8F +:10BE30009FED679ADDED149A19EE900AF4F7F0F889 +:10BE400041EC1A0B9FED63BBBDF83E00042853EC98 +:10BE50001A2B624824D16249F4F71AF953EC1B2BD0 +:10BE6000F4F710FAF4F742FB0BEE100AB5EE408A35 +:10BE7000F1EE10FA38D453EC1A2B5C485949F4F718 +:10BE800007F904460D4618EE100AF4F7C9F82246E1 +:10BE90002B46F4F7FDF8F4F729FB09EE100A23E02E +:10BEA0005149F4F7F5F853EC1B2BF4F7EBF9F4F7E1 +:10BEB0001DFB0BEE100AB5EE408AF1EE10FA13D41A +:10BEC00053EC1A2B49484A49F4F7E2F804460D4668 +:10BED00018EE100AF4F7A4F822462B46F4F7D8F827 +:10BEE000F4F704FB09EE100AF5EE409AF1EE10FAB1 +:10BEF00018D09DED0E0AB5EE400AF1EE10FA11D001 +:10BF000010EE100AF4F78CF800223A4BF4F7C0F860 +:10BF100002460B4600203849F4F730FBF4F7E6FA06 +:10BF200008EE900A3BEE090A10EE100AF4F778F8D2 +:10BF3000324A374BF4F7ACF804460D461698F4F73E +:10BF40006FF822462B46F4F7A3F804460D4618EE88 +:10BF5000900AF4F765F822462B46F4F799F8F4F7BF +:10BF6000C5FA00EE100ABDEC088B31BC5DF814FB7D +:10BF7000DFED230AB4EE600AF1EE10FA03DBDFED29 +:10BF8000250A30EE200A7047DFED1D0AB4EE600A84 +:10BF9000F1EE10FA03DBDFED1F0A30EE200A7047E6 +:10BFA0001849884201D31C49081870472C690020A1 +:10BFB000E46A0020646B0020E46B0020D46E002053 +:10BFC000286F0020B46D0020B81E85EB51B8AE3F3D +:10BFD000000000000000000000000C409A999999B0 +:10BFE0009999C93FCCCCEC3F9999B93FCDCCCCCCF9 +:10BFF000CCCCFC3F00004E400000F03F7B14AE472D +:10C000000124744981969800907000200000C84176 +:10C01000E17A743F002474C9806967FF5044204E60 +:10C0200041432025660000005044202D3E204F460D +:10C03000520000005044202D3E2057005044202D37 +:10C040003E20520050443A536574486569676874ED +:10C050002025660050443A536574576569676874D3 +:10C060002025660050443A53657447656E646572D6 +:10C070002025640050443A2025642025642025644E +:10C080000000000050443A496E5046543130303878 +:10C090005F310000F446400D40EAC120490006D25D +:10C0A00000F014F8004248BF6FF00040604700F015 +:10C0B0000DF84FF0004188428CBF0846404260476F +:10C0C000400D40EAC120490080F00D8040F0004062 +:10C0D000490DA1F58061491C05D4D1F11F0154BF60 +:10C0E000C840C01770474FF0000070470FB400B54C +:10C0F00093B001208DF80300AA208DF801003C20A8 +:10C100008DF802000020ADF84A000A208DF82800C2 +:10C110000DF1290000A92022F4F704FC00208DF87D +:10C1200020000320099008A8F6F720FC012013B096 +:10C130005DF814FB00B58BB00020ADF82A000A2092 +:10C140008DF8080000208DF809008DF80A00012004 +:10C150008DF800000320019000A8F6F707FC0120ED +:10C160000BB000BD38B52148046B00F037F801284A +:10C1700010D101208DF8000004F10C056A7D00A9A2 +:10C18000E868E368C018F3F745FF0120A8740020B1 +:10C1900000F021F8012032BD80B5F6F73DFB1449CF +:10C1A00008601449C0F8D01300F57470124941605A +:10C1B000124981600FF20D01C1600FF24D01016162 +:10C1C000012002BD0A48006890F8C103002801D18F +:10C1D0000020704705E00A49087070470848007859 +:10C1E0007047084890F900007047000000000020E8 +:10C1F000DCFE0020EDC0010835C1010865C1010861 +:10C2000001FF002000FF002018B430220B7812FB41 +:10C21000030301241C700B7812FB03035C700B7882 +:10C2200012FB030318249C700B7812FB03000022FE +:10C23000C2700878401C087011BC0AF040BB0000B6 +:10C240000FB400B593B001208DF80300AA208DF83B +:10C2500001003C208DF802000020ADF84A000A20C1 +:10C260008DF828000DF1290000A92022F4F75AFBCF +:10C2700000208DF820000320099008A8F6F776FB2F +:10C28000012013B05DF814FB00B58BB00020ADF8B1 +:10C290002A000A208DF8080000208DF809008DF88A +:10C2A0000A0001208DF800000320019000A8F6F795 +:10C2B0005DFB01200BB000BD38B500200090264882 +:10C2C000446C00F039F8012812D1FAF71AFD0090F9 +:10C2D00004F10C056A7D00A9E868E368C018F3F76B +:10C2E00099FE0120A874002000F023F8FAF70DFD54 +:10C2F000012032BD80B5F6F78FFA18490860184959 +:10C30000C0F8701400F2704016494160164981600F +:10C310000FF20D01C1600FF25D010161012002BD4C +:10C320000E48006890F86104002801D10020704791 +:10C330000BE00E49087070470C480078704780B5D4 +:10C34000002000F006F8012002BD094890F9000025 +:10C35000704707490870704700000020D8FE002091 +:10C3600041C2010889C20108B9C20108FFFE0020CC +:10C37000FEFE002018B430220B7812FB03030124C8 +:10C380001C700B7812FB03035C700B7812FB030329 +:10C390001C249C700B7812FB03000022C2700878EA +:10C3A000401C087011BCCAE738B50446AE4D0020E9 +:10C3B000286505206865002028646864A864E8642E +:10C3C0009FEDAA0B85ED040B85ED060B85ED080BA3 +:10C3D00085ED0A0B85ED0C0B85ED0E0B6866A866E6 +:10C3E00005F16C00A8654FF4B6720021F3F708FE62 +:10C3F0000C2200212846F3F703FE94ED020AB1EE69 +:10C40000401A94ED010AF1EE400A94ED000A05F19C +:10C41000440105F140000AF055FB012032BD000047 +:10C420002DE9F04D2DED068B0E468F4F01683960DA +:10C4300090ED010AB1EE400A87ED010A90ED020A83 +:10C44000B1EE400A87ED020A1E223946B86D0AF0A5 +:10C450003EFD796D4A1EB86D3B6D934227DA1E2270 +:10C46000591C09B20AF05CFD10EE100AF3F7D8FD72 +:10C47000C7E90A011E22386D411C09B2B86D0AF0E5 +:10C480006DFD10EE100AF3F7CBFDC7E90C011E227B +:10C49000386D411C09B2B86D0AF07EFD10EE100A2D +:10C4A000F3F7BEFDC7E90E01386D401C72E023D1E1 +:10C4B0001E2209B20AF034FD10EE100AF3F7B0FDA7 +:10C4C000C7E90A011E22796D09B2B86D0AF046FD6E +:10C4D00010EE100AF3F7A4FDC7E90C011E22796DD6 +:10C4E00009B2B86D0AF058FD10EE100AF3F798FD86 +:10C4F000C7E90E01786D4DE01E2209B20AF000FD79 +:10C50000F8651E220021B86D0AF0FAFC8046C7F8D3 +:10C510006080FC6D2068F3F783FD02460B46D7E987 +:10C520000A01F3F723FF82468B46D8F80000F3F7A1 +:10C5300077FD52465B46F3F7A5FEC7E90A0160683E +:10C54000F3F76EFD02460B46D7E90C01F3F70EFF39 +:10C5500082468B46D8F80400F3F762FD52465B46EC +:10C56000F3F790FEC7E90C01A068F3F759FD024606 +:10C570000B46D7E90E01F3F7F9FE04460D46D8F84D +:10C580000800F3F74DFD22462B46F3F77BFEC7E983 +:10C590000E01786DF4F716F941EC180BD7E90A0192 +:10C5A00053EC182BF3F7EAFF41EC190B87ED049BD2 +:10C5B000D7E90C0153EC182BF3F7E0FF41EC1A0B11 +:10C5C00087ED08ABD7E90E0153EC182BF3F7D6FF34 +:10C5D00041EC100B87ED060BF3F788FF01EE100A14 +:10C5E000B0EE418A51EC1A0BF3F780FF00EE900A8F +:10C5F000B0EE481AB0EE608AF0EE418A51EC190BA9 +:10C60000F3F774FF00EE100AB0EE681AF0EE480A75 +:10C6100007F14C0107F148000AF054FA386D401C4C +:10C6200038659FED120B87ED040B87ED080B87ED46 +:10C63000060B396CB86C00F01DF804467C66796C0A +:10C64000F86C00F017F8B86604F12801512902D2FD +:10C650002830512802D30120307001E000203070D2 +:10C66000BDEC068BBDE8F08D78DC002000000000FA +:10C6700000000000421AB52A04DB081A00F5B47065 +:10C68000424205E012F1B40F02DA00F5B470421A2A +:10C690001046704738B5DFF82C4594F82000012883 +:10C6A00001D1002032BD20460BF01BFA20460AF0D3 +:10C6B00085FD0020E0830BF017FADFF80C55E564E8 +:10C6C000002060651422014604F13000F3F798FC65 +:10C6D00020220021DFF8F404F3F792FC202200214D +:10C6E000DFF8EC04F3F78CFC0020A065024605E0BF +:10C6F000D42101FB00510A718A71401C0128F7DB2B +:10C700000120606400F011F8DFF8C804012180F80E +:10C710003D1008460BF064F90020A06420770BF070 +:10C7200087F9012084F8200032BD70B4014600234F +:10C73000DFF8902411E0D42504EB8304A46805FB02 +:10C74000040401262671D66D05FB0300807904EBF5 +:10C750008000006A3043D0655B1CDFF8780400EB92 +:10C760004114DFF864042579AB42E4DB29465177B4 +:10C77000237F1376002903D0DFF850345971D06439 +:10C7800070BC7047DFF83C144A6D01EB82031863FC +:10C79000501C4865052803D3401E4865002070479B +:10C7A000012070470020DFF81C1402468A654A6D9C +:10C7B000002A0BD00B6B8B65521E4A6504E001EB1F +:10C7C0008002536B1363401C0428F8DB704738B5B4 +:10C7D0000024DFF8F053287F0BF036F902E000F078 +:10C7E0003CF8641C287E8442F9D331BD70B50C46F8 +:10C7F0000025DFF8D063F17F4A1CF277332901DB93 +:10C800002946F177B17F032915DB01687162416820 +:10C81000B1628068F06228460BF013F9307F401C4B +:10C820003077317EC0B2884203D328463077FFF795 +:10C83000CEFFFFF7B7FFB07F411CB177652801DB62 +:10C840003220B077B06D002805D0207001250A286D +:10C8500001D10A202070284670BD2DE9F843002040 +:10C860000146DFF864430BE0D42202FB0142137956 +:10C87000002B04D0937902EB8302126A1043491C07 +:10C880000129F1DB0BF0F9F8CE4D0BF01CF928650E +:10C890000020A86506463FE0D42202FB06F707EB1E +:10C8A000040898F80400002835D0304600F049F814 +:10C8B000D5F8509098F8060008EB8000006AD9F887 +:10C8C000001008421ED098F8060008EB8000406B6C +:10C8D000002806D098F8060008EB8000406BFFF7B0 +:10C8E00051FF98F80600401C88F8060098F80510DB +:10C8F000C0B2884206D3B548395940F82610002006 +:10C9000088F80600D9F84000002804D0D9F80010B3 +:10C910000843C9F80000761C012EBDDB286D0068B5 +:10C920000BF0D3F8A86C411CA964B0F57A7F01D94B +:10C930000020A864A648A5492022BDE8F843F4F7E2 +:10C9400001B8F8B59F4C256D00212964D4219E4A79 +:10C9500001FB00208179C1EBC10200EB820600EBF4 +:10C960008107386A022846D1B06C012843D1306D66 +:10C97000022808D1686B032803DAF06D401CF065CB +:10C9800001E00020F065306D042808D1686B0528AF +:10C9900003DAF06D401CF06501E00020F065306DB9 +:10C9A000082808D1686B082803DBF06D401CF0658F +:10C9B00001E00020F065306D102808D1686B102868 +:10C9C00003DBF06D401CF06501E00020F065F06CC9 +:10C9D000142190FBF1F0F16D814206DA2868396A82 +:10C9E00088432860386A286405E00020F0652868DC +:10C9F000396A08432860386A012861D196F84800EE +:10CA0000C0075DD5F06C41071ED594ED0B0AF9EE19 +:10CA1000000AB4EE600AF1EE10FA09D540F22310D4 +:10CA2000A9699131814203D3E969913181423DD2B3 +:10CA30000020F065F06D05283CDA2868396A8843E3 +:10CA40002860386A2864F1BD81070FD594ED0B0A80 +:10CA5000B5EE400AF1EE10FAEADDA8695A30B528C1 +:10CA6000E6D2E8695A30B52820D3E1E7C006E1D51F +:10CA7000E06AF3F7D5FA21F000410122564BF3F7B3 +:10CA8000B9FED5D8606AF3F7CBFA21F00041002255 +:10CA9000524BF3F7DBFBCBD2A06AF3F7C1FA21F0DC +:10CAA000004100224D4BF3F7D1FBC1D2F06D401C89 +:10CAB000F065BFE70020F0652868396A0843286000 +:10CAC000F1BD000010B43F49CA68002A04D14FF4F8 +:10CAD0008062CA600A614A6191ED040AB8EE400AB8 +:10CAE000D1ED0A0A20EE200ADFED350A80EE200A99 +:10CAF000D1ED010AF8EE600A30EE200ABDEEC00A60 +:10CB000010EE102A91ED050AB8EE400AD1ED0B0A9D +:10CB100020EE200ADFED2A0A80EE200AD1ED020A7B +:10CB2000F8EE600A30EE200ABDEEC00A10EE103AB0 +:10CB3000B0F9024000EB440491ED030AB8EE400A5C +:10CB4000D1ED090A20EE200ADFED1D0A80EE200A51 +:10CB5000D1ED000AF8EE600A30EE200ABDEEC00A00 +:10CB600010EE101AA180B0F9021000EB4101CA804A +:10CB7000B0F9021000EB41010B814188491C418052 +:10CB800009B21E2901DB1D214180012010BC704724 +:10CB900010B5002006E0D4210B4A01FB0021002241 +:10CBA0000A71401C0128F6DB064C002060646077A7 +:10CBB0000AF040FF0020E06584F8200010BD00006E +:10CBC000C3F51C41746E0020702F00201C710020E2 +:10CBD0003C710020F4300020000021400000F83FAC +:10CBE00010B5CA4C0020E06205202063002060627E +:10CBF000A0626063A063E06320646064A064206559 +:10CC0000606504F15C00E0640020A0654FF4B6723A +:10CC1000014604F15C00F3F7F3F90C22002104F162 +:10CC20001800F3F7EDF9182200212046BDE8104066 +:10CC3000F3F7E6B970B506460C46B44D686D401C76 +:10CC40006865304600F01DF8002808D0304600F036 +:10CC5000E7F8002803D0286D401C286501E000207B +:10CC60002865686D0F280ADA286D0B2803DB012080 +:10CC70002070022070BD00202070012070BD0320B4 +:10CC800070BD38B5A14C0168A16190ED010AB1EE0B +:10CC9000400A84ED070A90ED020AB1EE400A84EDE5 +:10CCA000080A0A2204F11801E06C0AF010F9216B5D +:10CCB0004A1EE06CE36A93421DDA0A22591C09B24B +:10CCC0000AF02EF984ED100A0A22E06A411C09B22A +:10CCD000E06C0AF043F984ED110A0A22E06A411C73 +:10CCE00009B2E06C0AF058F984ED120AE06A401CBF +:10CCF00000EE100A49E018D10A2209B20AF010F930 +:10CD000084ED100A0A22216B09B2E06C0AF026F9C0 +:10CD100084ED110A0A22216B09B2E06C0AF03CF999 +:10CD200084ED120A94ED0C0A2FE00A2209B20AF0EF +:10CD3000E7F805460A220021E06C0AF0E1F894EDDC +:10CD4000100AD5ED000A30EE600AD0ED000A30EE90 +:10CD5000200A84ED100A94ED110AD5ED010A30EE97 +:10CD6000600AD0ED010A30EE200A84ED110A94ED3C +:10CD7000120AD5ED020A30EE600AD0ED020A30EE5A +:10CD8000200A84ED120A94ED0C0AB8EEC01A94ED54 +:10CD9000100A80EE010A84ED0D0AD4ED110AC0EEEE +:10CDA000810AC4ED0F0AD4ED121A81EE811A84EDC6 +:10CDB0000E1A04F1280104F1240009F083FEE06A50 +:10CDC000401CE06200206063E063A063606A0028AA +:10CDD00004D400EE100AB8EEC00A04E0404200EEAF +:10CDE000100AB8EEC00AF3EE090AB4EE600AF1EEDA +:10CDF00010FA13D5A06A002804D400EE100AB8EE89 +:10CE0000C00A04E0404200EE100AB8EEC00AB4EED8 +:10CE1000600AF1EE10FA01D5012032BD002032BDCA +:10CE200070B52DED028B0025384CA66D016844F8D5 +:10CE3000261004EB86014068C8603146284600F0A1 +:10CE400021F8B0EE408A3146012000F01BF8F5EEE3 +:10CE5000000AB4EE608AF1EE10FA05D5B4EE600A6D +:10CE6000F1EE10FA00D50125701CA065032190FB9E +:10CE7000F1F101EB4101401AA0652846BDEC028B9F +:10CE800070BD000030B49FED200ADFED1F0A0022C4 +:10CE90001E4D10E08B1A1BB2002B00D5DB1C1BB201 +:10CEA00000EB400405EB840404EB830393ED001ACC +:10CEB00030EE010A521C032AECDBB0EE081A80EEB9 +:10CEC000010A002212E08B1A1BB2002B01D5DB1CD9 +:10CED0001BB200EB400405EB840404EB830393EDE9 +:10CEE000001A31EE401A41EE010A521C032AEADB15 +:10CEF000B0EE080A80EE800A30BC7047034800217B +:10CF000001654165704700000000000028E0002036 +:10CF100010B500F032FB00F098FB00240DE0204635 +:10CF20009FED151ADFED140A9FED130A00F0B4FE11 +:10CF30002146052000F0BDFE641C1E2CEFDBDFF84F +:10CF4000540D00210170016341638163C163016479 +:10CF500041648164052141710A2101710021417000 +:10CF60008170C1620A2181710021C17010BDDFF89A +:10CF7000241DC87070470000000000002DE9F04734 +:10CF80002DED048BB0EE408AF0EE608AB0EE419A4F +:10CF9000DFF8244DE078012801D1002500E00525C7 +:10CFA00026781E2E09DA304600F076FE31462846F5 +:10CFB00000F07FFE701C207027E0002616E0DFF8EE +:10CFC000FC1C01EB8602304692ED3D1AD2ED1F0AA1 +:10CFD00001EB860191ED010A00F05EFE3146DFF8BB +:10CFE000E00C3018407800F064FE761C1D2EE6DB65 +:10CFF0001D20B0EE491AF0EE680AB0EE480A00F0C3 +:10D000004BFE1D21284600F054FEDFF8B89C032D8E +:10D0100008DA606B401C606348450BD3DFF8A80C4E +:10D02000606307E0206B401C2063484502D3DFF8B3 +:10D03000980C206300F0B2FDB0EE408A00F076FD5F +:10D04000F0EE408A00F010FBD4F830809FEDA09BFA +:10D050004046F3F7C1FB53EC192BF3F719F8FFF730 +:10D060002FF80646E76B3846F3F7B6FB53EC192B5F +:10D07000F3F70EF8FFF724F8824620790A2802D049 +:10D08000142846D05CE09FED940AB4EE408AF1EE9D +:10D0900010FA0CD5F4EE408AF1EE10FA07D5032D04 +:10D0A00005DA14202071780800F0F0FB48E0781CC5 +:10D0B000E063484502D3DFF8100CE063042D3FDB4A +:10D0C00000F064FAE06A01283AD1B6F57A7F37D9E0 +:10D0D00094ED090AB5EE400AF1EE10FA01DCB1EE6A +:10D0E000400ADFED7E0AB4EE600AF1EE10FA0DDAC6 +:10D0F00094ED0A0AB5EE400AF1EE10FA01DCB1EE49 +:10D10000400AB4EE600AF1EE10FA19DB0020E0628A +:10D1100016E09FED710AB4EE408AF1EE10FA04DADF +:10D12000F4EE408AF1EE10FA02DB0A20207107E0EB +:10D13000A06B401CA063484502D3DFF88C0BA063B2 +:10D1400000206070607902280AD0C0F05B8104285A +:10D150001BD074D3062800F00381C0F0E68051E1B3 +:10D16000032D0FDA606B012802D12079A07149E10B +:10D170000A2840F047810420607100F0F5FB002090 +:10D1800020633FE1002060633CE1E06A012832D186 +:10D19000207900F049F901282DD140F2E93086428A +:10D1A00001D2002E22D1824502D2BAF1000F1DD148 +:10D1B00094ED090AB5EE400AF1EE10FA01DCB1EE89 +:10D1C000400ADFED460AB4EE600AF1EE10FA10D51F +:10D1D00094ED0A0AB5EE400AF1EE10FA01DCB1EE68 +:10D1E000400AB4EE600AF1EE10FA02D5A078607041 +:10D1F00001E00020E062E06A002814D1B6F5C87FA3 +:10D2000001D8002E08D1A078002808D0BAF1FB0F71 +:10D2100005D2BAF1000F02D0A078607003E0207947 +:10D2200000F046F96070032060716078A070002003 +:10D2300020636063A063E06300F01DFBE2E0042D67 +:10D2400017DBB8F1010F02D100F0FFF9DAE0B8F115 +:10D25000060FC0F0D7800021404600F0D3FAA07836 +:10D26000032802D10020E06262E000F0D9FCE06215 +:10D270005EE00020206320790A2853D1E06B0A2861 +:10D28000C0F0C080002100F0BDFAA07800F0C8FC1A +:10D29000E06294ED130AB5EE400AF1EE10FA02DDF9 +:10D2A000F0EE400A01E0F1EE400A9FEDB71AF4EE0D +:10D2B000410AF1EE10FAC0F2A580D4ED140AF5EEA1 +:10D2C000400AF1EE10FA0BDDF0EE601A0AE000BF42 +:10D2D00000000000000034409A99193F00002042ED +:10D2E000F1EE601AF4EE411AF1EE10FAC0F28A8003 +:10D2F000F5EE400AF1EE10FA01DCF1EE600AB5EE4F +:10D30000400AF1EE10FA01DCB1EE400AF4EE400AF8 +:10D31000F1EE10FA76D50520607100F096F9002044 +:10D32000A0636FE00020E0636CE0B8F1060F04D367 +:10D33000022060710020606364E0A06B012805D1C9 +:10D34000E06B00F0A3FA2079A0715BE0052859D3C7 +:10D35000606B052856D3062060710020206351E0E1 +:10D36000207914284ED1E06A01282DD140F2E9300D +:10D37000864201D2002E22D1824502D2BAF1000F9C +:10D380001DD194ED090AB5EE400AF1EE10FA01DC68 +:10D39000B1EE400ADFEDB20AB4EE600AF1EE10FA27 +:10D3A00010D594ED0A0AB5EE400AF1EE10FA01DC50 +:10D3B000B1EE400AB4EE600AF1EE10FA02D5A078A0 +:10D3C000607001E00020E062E06A002811D140F2C4 +:10D3D0009110864201D2002E04D1824505D2BAF1C5 +:10D3E000000F02D0A078607003E0A07900F060F830 +:10D3F0006070032060716078A0700020206360631B +:10D40000E063A0636078012801D1012008E00228D0 +:10D4100001D1022004E0032801D1032000E0002014 +:10D42000BDEC048BBDE8F08780B52DED048B0021A9 +:10D430000A2808D1DFF85C0890ED100A90ED118AF7 +:10D44000D0ED128A11E0142808D1DFF8480890EDD9 +:10D45000150A90ED168AD0ED178A06E09FED810A35 +:10D460009FED808ADFED7F8A032103291CDA9FED7F +:10D47000D59A00F035FCB4EE490AF1EE10FA11D558 +:10D48000B0EE480A00F02CFCB4EE490AF1EE10FAB6 +:10D4900008D5B0EE680A00F023FCB4EE490AF1EEBC +:10D4A00010FA01D4012000E00020BDEC048B02BD85 +:10D4B00000210A280AD1DFF8DC07D0ED100A90ED30 +:10D4C000111AD0ED121A9FED670A13E014280AD141 +:10D4D000DFF8C007D0ED150A90ED161AD0ED171A37 +:10D4E0009FEDC50A06E0DFED5F0A9FED5E1ADFEDF6 +:10D4F0005D1A032103293EDAB4EE600AF1EE10FA58 +:10D500000BD59FEDBE2AB4EE421AF1EE10FA04D507 +:10D51000F4EE421AF1EE10FA2AD4B4EE600AF1EEFB +:10D5200010FA0BD59FEDB62AB4EE421AF1EE10FABE +:10D5300004DBF4EE421AF1EE10FA0BDAB4EE600AF4 +:10D54000F1EE10FA08D59FEDCF1AF4EE411AF1EE84 +:10D5500010FA01DB01210EE0B4EE600AF1EE10FAE0 +:10D5600008D59FEDC90AF4EE401AF1EE10FA01D584 +:10D57000022100E0032108467047DFF81807002168 +:10D580008160C160016170470100C03F10B52DEDA1 +:10D59000068BDFF8004794ED050AB5EE400AF1EE80 +:10D5A00010FA13D194ED060AB5EE400AF1EE10FA26 +:10D5B0000CD194ED070AB5EE400AF1EE10FA05D150 +:10D5C000A0686061E068A0612069E06194ED028A72 +:10D5D00094ED050A38EE400A00F0F6F8F0EE408AC5 +:10D5E00094ED039A94ED060A39EE400A00F0ECF847 +:10D5F000F0EE409A94ED04AA94ED070A3AEE400A40 +:10D6000000F0E2F8F0EE40AA94ED080A30EE280AA5 +:10D6100000F0DAF884ED080A94ED090A30EE290AE0 +:10D6200000F0D2F884ED090A94ED0A0A30EE2A0AD5 +:10D6300000F0CAF884ED0A0A84ED058A84ED069AA2 +:10D6400084ED07AABDEC068B10BDDFF8480600216B +:10D6500001624162816241618161C1617047000084 +:10D660000000204200000000F8B52DED048B84B0CE +:10D670001D2100A800F000FB9DED000AB5EE400A58 +:10D68000F1EE10FA01DCB1EE400ADFEDAF0AB4EEC4 +:10D69000600AF1EE10FA01D50020009000AE96ED80 +:10D6A000010AB5EE400AF1EE10FA01DCB1EE400AD3 +:10D6B000B4EE600AF1EE10FA01D50020706096ED2C +:10D6C000020AB5EE400AF1EE10FA01DCB1EE400AB2 +:10D6D000B4EE600AF1EE10FA01D50020B0609FEDC3 +:10D6E0009B8B9FED9C9BDFF8D075B868F2F798FC98 +:10D6F00004460D460098F2F793FC53EC192BF2F711 +:10D70000C7FC0022DFF8D435F2F738FF53EC182BB2 +:10D71000F2F7BEFC22462B46F2F7B4FDF2F7E6FE26 +:10D7200000EE100A87ED020A00F04EF887ED020ABB +:10D73000F868F2F775FC04460D467068F2F770FC65 +:10D7400053EC192BF2F7A4FC0022DFF89035F2F726 +:10D7500015FF53EC182BF2F79BFC22462B46F2F7F1 +:10D7600091FDF2F7C3FE00EE100A87ED030A00F008 +:10D770002BF887ED030A3869F2F752FC04460D4690 +:10D78000B068F2F74DFC53EC192BF2F781FC002244 +:10D79000DFF84835F2F7F2FE53EC182BF2F778FC7D +:10D7A00022462B46F2F76EFDF2F7A0FE00EE100ABD +:10D7B00087ED040A00F008F887ED040A04B0BDEC18 +:10D7C000048BF1BD9A99993EDFED640AB4EE600ACC +:10D7D000F1EE10FA04DBDFED620A30EE200A70474A +:10D7E000DFED600AB4EE600AF1EE10FA03D5DFED6A +:10D7F000CD0A30EE200A70479A9999BECCCCCCBDA8 +:10D80000CDCCCC3D10B49FEDC80ADFEDC70A1F2870 +:10D8100001D31E2000E0C0B20022DFF8A0440EE0D9 +:10D82000C2F11D03DBB204EB830393ED1E1A30EE4D +:10D83000010A93ED3C1A70EE810A521CD2B2824268 +:10D8400009DA002902D1C2F11D03EBE70129E7D172 +:10D85000C2F11803E6E701EE100AB8EE411ADFF84C +:10D86000580480EE010A80ED130A80EE810A80EDF3 +:10D87000140A10BC7047DFF840040021416581653F +:10D88000C1657047CDCCCC3ECCCCCCBE30B49FED86 +:10D89000A60ADFEDA50A9FEDA41A1F2801D31D20BB +:10D8A00001E0401EC0B200210DE030EE210A02EB83 +:10D8B0008302D2ED1E1A70EEA10AD2ED3C1A31EEAF +:10D8C000211A491C89B2DFF8CC4381422ADA227836 +:10D8D0001E2A03DA521A531EDBB202E0C1F11D0305 +:10D8E000DBB2DFF8D82352F8235001EE905A02EB56 +:10D8F000830555F8045C02EE105A71EEC22A9FEDC2 +:10D90000C73AF4EE432AF1EE10FACEDBF5EE401AF8 +:10D91000F1EE10FAC9DDB5EE402AF1EE10FAC4D5E9 +:10D920000B29C2DB01EE901AF8EE611A80EE210A93 +:10D9300084ED150A80EEA10A84ED160A81EE210A13 +:10D9400084ED170A30BC70470BD7233DF8C1631A2A +:10D95000DCA54C40000000000000344001003443CE +:10D960000000B4C3000034C3F0B4DFEDC92AB0EE48 +:10D97000620AB0EE622ADFED6C0A9FED6B1ADFEDF2 +:10D980006A1ACD4801781E2900DB1E21026B9142E4 +:10D9900004D201EBD1725210D2B201E05208D2B2DD +:10D9A00000230DE0B1EE633AB4EE443AF1EE10FA22 +:10D9B00005DB71EEA31AB7EE003A32EE032A5B1CC8 +:10D9C000DBB2934280F29F80CC1A641EE4B22546FB +:10D9D0006E1EF6B2B94D55F8267003EE107A05EBBF +:10D9E0008407D7ED003A05EB860797ED004A73EE02 +:10D9F000C43AF5EE403AF1EE10FA05EB8407D7EDA4 +:10DA0000003A02DD33EEC33A01E033EE633A05EB50 +:10DA10008606D6ED1E3A97ED1E4AD6ED1E4A34EE26 +:10DA2000644AB5EE404AF1EE10FA97ED1E4A02DD67 +:10DA300074EE633A01E073EEC43A06F1780C9CEDA3 +:10DA40001E4A07F17806D6ED1E4A9CED1E5A74EE6A +:10DA5000C54AF5EE404AF1EE10FAD6ED1E4A02DD57 +:10DA600034EEC44A01E034EE644ADFED984AB4EE85 +:10DA7000643AF1EE10FA09DBF4EE643AF1EE10FAD2 +:10DA800004DBB4EE644AF1EE10FA3CDA55F82440B7 +:10DA900003EE104AB5EE403AF1EE10FA02DDF0EE78 +:10DAA000433A01E0F1EE433A9FED894AF4EE443AFD +:10DAB000F1EE10FA05DB70EE830AB7EE003A30EEB5 +:10DAC000030A97ED1E3AB5EE403AF1EE10FA02DD88 +:10DAD000F0EE433A01E0F1EE433AF4EE443AF1EE6F +:10DAE00010FA05DB31EE031AB7EE003A72EE832A24 +:10DAF000D6ED1E3AF5EE403AF1EE10FA7FF752AF4E +:10DB0000B0EE633A50E780EE800A80ED100A81EEB5 +:10DB1000220A80ED110A81EE820A80ED120AF0BC21 +:10DB2000704700000000B4430000000010B52DED68 +:10DB3000028B9FED688A002426E0C4F11D00C0B26C +:10DB40005E4901EB800202F1780393ED1E0AD2EDEB +:10DB50001E0A51F8200001EE100A21EE011A00EE13 +:10DB6000A01A00EE001A11EE100AF2F759FA41EC71 +:10DB7000100BF2F757FE51EC100BF2F7B7FC00EE6A +:10DB8000100A38EE008A641C062CD6DBB1EE080AB7 +:10DB900088EE000ABDEC028B10BD000010B52DED23 +:10DBA000028B9FED4C8ADFED4B8A002428E0C4F104 +:10DBB0001D00C0B2414901EB800202F1780393EDF0 +:10DBC0001E0AD2ED1E0A51F8200001EE100A21EEC5 +:10DBD000011A00EEA01A00EE001A11EE100AF2F778 +:10DBE0001FFA41EC100BF2F71DFE51EC100BF2F78F +:10DBF0007DFC00EE100A38EE008A40EE008A641CBC +:10DC0000062CD4DBB1EE080AC8EE000A88EE800AC2 +:10DC100000EEE00ABDEC028B10BD00009A99993E1F +:10DC20000121022812D19FED2C0A2348D0ED130ABE +:10DC3000F4EE400AF1EE10FA1CDBD0ED140AF4EE1B +:10DC4000400AF1EE10FA15DB002113E0012811D192 +:10DC5000194890ED130AFEEE000AB4EE600AF1EEE8 +:10DC600010FA07D590ED140AB4EE600AF1EE10FA3E +:10DC700000D5002108467047104A52F82130036051 +:10DC800002EB81018A6F4260D1F8F0108160704729 +:10DC9000BD37863580FA0020C0B2084901EB80020A +:10DCA00082ED000A01EB8000C0ED1E0A80ED3C1AF7 +:10DCB0007047034A8854704780FA002028E5002006 +:10DCC00044FD002041420F0040420F000100A040EF +:10DCD000CDCC4C3D000000000100003F00408F40D3 +:10DCE000B5EE400AF1EE10FA03D5FFEE000A20EE81 +:10DCF000200A704710B5044602E0C068F6F74EF8F7 +:10DD0000F5F78DFF20680028F7D1044840780028F7 +:10DD100004BFBDE81040F5F77CBF10BDA431002062 +:10DD2000012009F0F9BE00000749086808B1002089 +:10DD300070470648C008C00008600549C908C90006 +:10DD4000091A0160704700BFECFE00201F920020FE +:10DD500018A200202DE9F04FA1B0824602AE0020AB +:10DD600017461D46029170620DF144080AE017F84B +:10DD7000011B0298D0470290002800F0DA82706AF6 +:10DD8000401C7062387808B9706AD4E22528EED158 +:10DD90000020F06030617061B061F061306201E0DC +:10DDA00040F0010017F8011F2029F9D023290DD0D8 +:10DDB0002B2904D02D2906D030290AD00CE040F0C0 +:10DDC000020080B2EEE740F00400FAE740F00800FD +:10DDD000F7E740F01000F4E72A290DD129680A1D61 +:10DDE0002A600968F162002904D5494240F0040024 +:10DDF000F16280B27F1C13E00021F1620BE0F16A56 +:10DE00006FF00043994205D001EB810302EB43011F +:10DE10003039F1627F1C3A78A2F130010A29EED341 +:10DE200039782E2903D04FF0FF31B1621EE017F888 +:10DE3000011F2A2906D129680A1D2A607F1C09684A +:10DE4000B16213E00021B1620BE0B16A6FF00043F0 +:10DE5000994205D001EB810302EB43013039B162F5 +:10DE60007F1C3A78A2F130010A29EED330860FF6F2 +:10DE70006040397809F05AFE08B117F8010B8DF8A7 +:10DE80003A009DF83A00682802BF39786829622074 +:10DE900005D06C2804BF38786C2803D171208DF828 +:10DEA0003A007F1C11A8B0603978B1F1250029D063 +:10DEB0001C3800F0C080001F022840F2BC801338DC +:10DEC00000F0E480093800F0B680801E00F0778111 +:10DED000401E00F02081401E022840F2AC80001F4E +:10DEE00000F01981401F7BD0401E00F0CF80401E03 +:10DEF00022D0C01E0BD0801E00F0C880C01E00F0D3 +:10DF0000C58064E1F068411CF160252169E1286861 +:10DF1000011D29600068B26A7060002A02D5FBF713 +:10DF20008FF907E0002109F00DFE00281ABF716883 +:10DF3000401AB06A306156E12868011D296000214D +:10DF40000068CDE900014FF03C0E11A87060DDE9DA +:10DF5000000111B908B9B26ACAB10206120FA0EBEA +:10DF600002123032AEF10103D2B29E463A2AA8BF65 +:10DF70002732000903F8082040EA0170090908BFA8 +:10DF8000002804D0726811AB73449A42E5D311A9FA +:10DF900071447160CEF13C00B16A3061884207DAA9 +:10DFA000081AB0614FF6EF71308E084030861AE1E2 +:10DFB000002940F1188196F8301001F01401102961 +:10DFC00040F01181F16AF268891AB269891AA1EBED +:10DFD000000EBEF1010FC0F20681C6F818E002E1A2 +:10DFE0009DF83A00622818D0682806D06A280BD01D +:10DFF0006C2819D0712807D016E02868011D296007 +:10E000000068716A0180EEE02A68101D28601268BD +:10E01000706AC117C2E90001E5E02868011D2960A6 +:10E020000068716A0170DEE02868011D29600068DF +:10E03000716A0160D7E02868C01D20F007002860E1 +:10E0400000F108022A60D0E90023CDE90023002B6B +:10E0500004D5F068421CF2602D220DE0308E82075C +:10E0600004D5F068421CF2602B2205E0C00705D5FC +:10E07000F068421CF260202200F80820F06811AA23 +:10E080008018706000A800F0E3F9ACE09DF83A0059 +:10E090006C2808BF2A6811D0712808BF2A6802D0EE +:10E0A0002A686A280AD1D21D22F007022A60144683 +:10E0B00004F108022A60D4E9002303E0131D2B6059 +:10E0C00000231268CDE90023682808BF92B207D068 +:10E0D000622808BFD2B203D0742818BF7A2802D1B0 +:10E0E0000023CDE9002396F8300000075FD5DDE975 +:10E0F0000023002B08BF002A59D041F020007828C7 +:10E1000055D1F068302200F80820401C421CF26013 +:10E1100000F808104BE09DF83A0062280CD06828FF +:10E1200010D06A281AD06C2823D0712816D07428F1 +:10E130001FD07A280CD01CE02868021D2A6090F9B4 +:10E1400000201AE02868021D2A60B0F9002014E0BF +:10E150002868021D2A60002302680FE02868C01D9D +:10E1600020F00700286000F108022A60D0E90023AF +:10E1700004E02868021D2A600268D317CDE9002355 +:10E18000002B04DAF068421CF2602D220DE0308E84 +:10E19000820704D5F068421CF2602B2205E0C0071C +:10E1A00005D5F068421CF260202200F80820F068D3 +:10E1B00011AA8018706000A800F0C0F813E0F068A1 +:10E1C000411CF16029680A1D2A60096809E0F068AD +:10E1D000421CF260252200F8082021B1F068421CA0 +:10E1E000F26000F80810F06AF168401AB169401A4C +:10E1F0003169401AF169401A7169401A316AA0EB1D +:10E20000010996F830007F1C400710D420208DF8BB +:10E210004000002409E0012310AA00A9504600F0A4 +:10E2200040FC002840F08580641C4C45F3DBF4681A +:10E230000DF1440B0AE01BF8011B0298D047029035 +:10E24000002876D0706A401C7062641E002CF2D1E7 +:10E2500030208DF840004FF0000BB46909E0012335 +:10E2600010AA00A9504600F01CFC002861D10BF157 +:10E27000010BA345F3DB3469D6F804B00AE01BF8C0 +:10E28000011B0298D0470290002852D0706A401CAF +:10E290007062641E002CF2D130208DF840004FF0E7 +:10E2A000000BF46909E0012310AA00A9504600F010 +:10E2B000F8FB00283DD10BF1010BA345F3DB3069DE +:10E2C0007168746900EB010B09E01BF8011B0298EF +:10E2D000D047029068B3706A401C7062641E002CC4 +:10E2E000F3D130208DF840004FF0000B346A08E085 +:10E2F000012310AA00A9504600F0D3FBC8B90BF1C6 +:10E30000010BA345F4DB96F8300040077FF53AADEA +:10E3100020208DF84000002400E0641C4C45BFF62E +:10E3200031AD012310AA00A9504600F0BAFB002825 +:10E33000F3D04FF0FF3021B0BDE8F08F2DE9FA4760 +:10E34000064682B035690A466F2A08BF082705D0FD +:10E3500041F02000782814BF0A271027D6E90001D1 +:10E360003C2480468946642A18BF692A05D10029C1 +:10E3700003DAD8F1000869EB4909B9F1000F08BFC9 +:10E38000B8F1000F0CD1306B50B9082F3BD196F883 +:10E390003800000737D530203B2485F83B0032E0B9 +:10E3A000CDE90089FB17404649463A46F7F7B8FEE3 +:10E3B000B846A8FB0023DDE90089A8EB0202303251 +:10E3C000A4F1010AD2B254463A2A03DB9DF8083080 +:10E3D000513B9A180AF8052080465FEA010908BFF8 +:10E3E000B8F1000F03D0F06861198842D8D3082F24 +:10E3F00009D196F83800000705D5605D302802D0B5 +:10E40000641E30206055C4F13C00B0616119F160B8 +:10E41000316B884207DA081A30624FF6EF71308F9D +:10E420000840308710E000290ED596F8381001F02A +:10E430001401102908D1716B7269891A326A891A1C +:10E44000081A0128A8BF306204B0BDE8F0870000B8 +:10E450002DE9F24F04468EB0D4E90001CDE9020166 +:10E4600004AE9DF8380040F02000009061280AD0EA +:10E47000206B002848BF062004D404BF00986728FA +:10E4800001D1012020636168C1F30A5040F2FF729C +:10E4900090421CD1080304BF2068002809D1032042 +:10E4A000A0619DF8380061381A2836D30FF2346124 +:10E4B00008E00320A0619DF8380061381A2829D3AC +:10E4C0000FF21861E0680322F2F72CFAB5E1012897 +:10E4D00016DA204609F062FB012811DB0027002034 +:10E4E0000099612920D1E168302201F8012B4A1CF2 +:10E4F000E2609DF83820612A0CBF782258220FE094 +:10E50000626840F2FE3161F31E52471A62604FF0BA +:10E51000FF30E5E70FF2C051D4E70FF2C451D1E765 +:10E520000A706169891C616110B9002500277BE1CF +:10E530000098612840F09680206B00284CBF212570 +:10E54000451CDDE902012DB26E1CD4E900890022D0 +:10E550000023F1F77BFE3ABF89F00040CDE902804D +:10E56000CDE902893F1F8DF810200DF1110801E05F +:10E5700000F20708012E32DBDDE902010022002350 +:10E58000F2F738F92BD21C2102A809F029FBDDE9AA +:10E590000201FDF77FFDF61F8146012E09DBF2F730 +:10E5A00011F902460B46DDE90201F1F7DFFECDE984 +:10E5B000020108F20700072105E009F00F0200F848 +:10E5C000012D4FEA2919B9F1010F01DB491EF4D5DC +:10E5D000491E5CBF002200F8012DF9D5C8E70DF1F6 +:10E5E0001100A8EB00010DF11106A942B8BF0D46BC +:10E5F0002DB228002FD4884206DA04A941184978A0 +:10E600000829A8BF0F2100DA002104AA821800E01F +:10E610006D1E12F80139401E8B42F9D00F2904D12A +:10E6200004A941184A78521C4A70002802D504AE49 +:10E630006D1C3F1D2DB2681E0DD481190A78303231 +:10E64000D2B23A2A03DB9DF838303A3B9A1801F8E7 +:10E650000129401EF2D5206B002840F1E580681E9C +:10E660002063E1E0DDE9020100220023F1F7EEFD85 +:10E670003CBF81F00041CDE902013FB247F2975023 +:10E6800078434849DFF820B190FBF1F73FB2C7F17A +:10E6900007069246012E19DBDDE90289F00707D54E +:10E6A00052465B4640464946F1F7F2FC80468946B1 +:10E6B00076105046594652465B46F1F7E9FC8246D1 +:10E6C0008B46002EEAD1CDE9028921E076429046C0 +:10E6D000DFF8D89012E0F00707D552465B46404677 +:10E6E0004946F1F7D5FC8046894676105046594692 +:10E6F00052465B46F1F7CCFC82468B46002EEAD1AF +:10E70000DDE9020142464B46F1F738FFCDE902014F +:10E71000009866280CBF07F10A000620216B4518F7 +:10E72000142DA8BF132530208DF810000DF111060F +:10E73000DFF87C90012D3DDBDDE90201FDF7C0FC37 +:10E7400006F1080104220A23B0FBF3F303EB83066E +:10E75000A0EB4600303001F8010D0A20B3FBF0F0C9 +:10E7600000EB8006A3EB4603303301F8013D521E57 +:10E77000E9D1083D01F10806012DDBDBDDE90201ED +:10E78000FDF79EFCF2F728F802460B46DDE9020190 +:10E79000F1F7ECFD00224B46F1F77AFCCDE90201DE +:10E7A000CAE700BFA0860100000024400000F03F3F +:10E7B00084D797410DF11100301A0DF1110602E0D6 +:10E7C000401E7F1E761C31783029F9D000996629C9 +:10E7D00002D13FB2791C03E065290CBF0121002161 +:10E7E000226B8D182DB2A842B8BF05462DB2290064 +:10E7F0001AD4814204DA885D3528A8BF392000DAAE +:10E8000030208A19521E00E06D1E12F80139491E8F +:10E810008342F9D0392802D1885D401C88550029EF +:10E8200002D5761E6D1C7F1C3FB29DF838100097F4 +:10E830002BB23246204600F003F80FB0BDE8F08F4F +:10E840002DE9F043054685B01E46D5F8308089464F +:10E850001746012E02DA01260FF28C2749F020001C +:10E86000BDF93040662808BF641C17D0672840F007 +:10E87000818014F1040FC0F28380444580F28080CF +:10E8800095F83800641C000702D44645B8BFB0466E +:10E8900024B2B8EB040848BF4FF00008E868A96943 +:10E8A00024B2012C25DA30234A1C0B54B8F1010F95 +:10E8B00003DA95F83810090702D52E211154521C9D +:10E8C000AA6118EB040FB8BFC8F1000424B261427A +:10E8D000A0446962B045B8BF464636B2EE613246E2 +:10E8E000AB6939461818F2F71DF8A8EB0600A862C4 +:10E8F000C0E00818A64218DA32463946F2F712F894 +:10E90000A9697118A961A01B6862B8F1010F03DA47 +:10E9100095F83800000705D5E8682E220A54E86902 +:10E92000401CE861C5F82880A4E022463946F1F78A +:10E93000F9FFA8692018361BB8F1010F03DA95F822 +:10E940003810090703D5E9682E224254401C36B21C +:10E95000A861B045B8BF4646EB6836B23246E11909 +:10E96000C018F1F7DFFFA8693018A861A8EB06000E +:10E9700068627FE0B9F1610F16D14FF0700918E0BD +:10E98000464504DA95F83810090758BFB046B8F183 +:10E99000010848BF4FF00008B9F1670F14BF4FF0EE +:10E9A00045094FF0650904E0B9F1410F08BF4FF088 +:10E9B0005009A969E86817F8013B0B544A1CB8F1E3 +:10E9C000010F05DA95F83810090758BFAA6117D565 +:10E9D0002E211154531CAB61B8F1010F10DB761ED0 +:10E9E00036B2B045B8BF464636B232463946181838 +:10E9F000F1F798FFA8693018A861A8EB06006862D3 +:10EA0000A869E9684718200007F8019B03D42B2068 +:10EA100007F8010B03E02D2107F8011B64420026D3 +:10EA20000DF1080808E00A2200A809F063F901982E +:10EA300008F8010B761C009C21B20129F3DA022EA2 +:10EA400006DA49F02000652804BF302007F8010BE2 +:10EA50004EB9302007F8010B07E0761E02A8305CA3 +:10EA6000303007F8010B012EF7DAA869E968401881 +:10EA7000381AE86195F8380000F0140010280DD11C +:10EA80006869A9690818696A0818E9690818A96A0B +:10EA90000818696B8842BCBF081A286205B0BDE837 +:10EAA000F083F8B504460D4616461F46002004E0E4 +:10EAB000E86A401CE8627F1E002047B116F8011B7F +:10EAC000A868A047A8600028F2D14FF0FF30F2BD3F +:10EAD000686A6C747A4C00006E616E004E414E00A4 +:10EAE000696E6600494E46003000000000B583B0F4 +:10EAF0000020ADF8040000208DF8060000208DF8FD +:10EB00000700012000900DF106037622D02100209D +:10EB1000F4F78CF9002801D1002044E076208DF82C +:10EB200004009DF8060050F020008DF80500022337 +:10EB300001AAD0210020F4F73BF9002801D10020E0 +:10EB400031E0012000900DF107034922D02100207F +:10EB5000F4F76CF9002801D1002024E049208DF859 +:10EB600004009DF8070050F001008DF80500022315 +:10EB700001AAD0210020F4F71BF9002801D10020C0 +:10EB800011E076208DF804009DF806008DF8050050 +:10EB9000022301AAD0210020F4F70AF9002801D1AC +:10EBA000002000E001200EBD38B50400F4F73DF868 +:10EBB0000500DFF8B40C0078401CDFF8AC1C0870CE +:10EBC000F5F72DF8DFF8A00C4078401CDFF8981C12 +:10EBD0004870210089B22800F4F7E0F9DFF8880CCA +:10EBE0004078401EDFF8801C4870C0B2002801D178 +:10EBF000F5F70FF8F5F7B6F831BD10B582B0002083 +:10EC0000ADF80000F4F711F804006B208DF8000057 +:10EC100080208DF80100022300AAD0210020F4F703 +:10EC2000C7F8002801D1002094E064212000F4F707 +:10EC3000B5F9FFF75BFF002801D100208AE06B20C7 +:10EC40008DF8000000208DF80100022300AAD021D9 +:10EC50000020F4F7ADF8002801D100207AE0282147 +:10EC60002000F4F79BF919208DF8000004208DF89E +:10EC70000100022300AAD0210020F4F799F800280F +:10EC800001D1002066E01A208DF8000003208DF8E5 +:10EC90000100022300AAD0210020F4F789F80028FF +:10ECA00001D1002056E01B208DF8000008208DF8CF +:10ECB0000100022300AAD0210020F4F779F80028EF +:10ECC00001D1002046E01D208DF8000003208DF8C2 +:10ECD0000100022300AAD0210020F4F769F80028DF +:10ECE00001D1002036E06A208DF8000000208DF868 +:10ECF0000100022300AAD0210020F4F759F80028CF +:10ED000001D1002026E06C208DF800003F208DF816 +:10ED100001009DF80110DFF8100DF4F700F8022350 +:10ED200000AAD0210020F4F743F8002801D10020E8 +:10ED300010E06B208DF8000040208DF801000223C8 +:10ED400000AAD0210020F4F733F8002801D10020D8 +:10ED500000E0012016BD0178407850EA012000B2A1 +:10ED6000704780B502200090DFF8C03C6B22D021B4 +:10ED70000020F4F75BF8002801D100205BE00120BF +:10ED80000090DFF8AC3C1A22D0210020F4F74EF8B6 +:10ED9000002801D100204EE001200090DFF8943CD3 +:10EDA0001B22D0210020F4F741F8002801D10020D7 +:10EDB00041E001200090DFF8803C1C22D02100209F +:10EDC000F4F734F8002801D1002034E0012000904D +:10EDD000DFF8683C1D22D0210020F4F727F8002836 +:10EDE00001D1002027E001200090DFF8543C6A2286 +:10EDF000D0210020F4F71AF8002801D100201AE0F1 +:10EE000001200090DFF83C3C3822D0210020F4F7AC +:10EE10000DF8002801D100200DE001200090DFF85E +:10EE2000283C1922D0210020F4F700F8002801D155 +:10EE3000002000E0012002BD80B50020ADF80000F8 +:10EE40006B208DF80000DFF8E40B00788DF80100EE +:10EE5000022300AAD0210020F3F7AAFF002801D145 +:10EE6000002090E06C208DF80000DFF8C00B4078A7 +:10EE70008DF80100022300AAD0210020F3F798FFAB +:10EE8000002801D100207EE01A208DF80000DFF874 +:10EE90009C0B00798DF80100022300AAD0210020EC +:10EEA000F3F786FF002801D100206CE01B208DF8CD +:10EEB0000000DFF8780B40798DF80100022300AAEA +:10EEC000D0210020F3F774FF002801D100205AE080 +:10EED0001C208DF80000DFF8540B80798DF80100BC +:10EEE000022300AAD0210020F3F762FF002801D1FD +:10EEF000002048E01D208DF80000DFF8300BC079BD +:10EF00008DF80100022300AAD0210020F3F750FF62 +:10EF1000002801D1002036E06A208DF80000DFF8DB +:10EF20000C0BC0788DF80100022300AAD02100202C +:10EF3000F3F73EFF002801D1002024E019208DF8CE +:10EF40000000DFF8E80A80788DF80100022300AAAB +:10EF5000D0210020F3F72CFF002801D1002012E07F +:10EF600038208DF80000DFF8C40A007A8DF801001F +:10EF7000022300AAD0210020F3F71AFF002801D1B4 +:10EF8000002000E0012002BD10B582B00020ADF8E5 +:10EF90000000DFF8980A007840060FD56B208DF846 +:10EFA000000000208DF80100022300AAD0210020DB +:10EFB000F3F7FEFE002801D10020B9E06C208DF8A7 +:10EFC0000000DFF8680A407810F0F8008DF80100C2 +:10EFD000022300AAD0210020F3F7EAFE002801D185 +:10EFE0000020A5E06A208DF8000000208DF80100C7 +:10EFF000022300AAD0210020F3F7DAFE002801D175 +:10F00000002095E0002400E0641C062C10DA14F1C6 +:10F0100013008DF8000000208DF80100022300AAE3 +:10F02000D0210020F3F7C4FE0028EDD100207FE0BE +:10F0300019208DF8000000208DF80100022300AA9D +:10F04000D0210020F3F7B4FE002801D100206FE0AA +:10F050001A208DF8000003208DF801004FF4FA64A7 +:10F060002000B0F5FA7F13D0B0F57A7F09D0B0F563 +:10F07000FA6F14D19DF8010050F018008DF80100CE +:10F0800011E09DF8010050F010008DF801000AE039 +:10F090009DF8010050F008008DF8010003E09DF894 +:10F0A00001008DF80100022300AAD0210020F3F70F +:10F0B0007FFE002801D100203AE0B4F5FA7F0DD0A0 +:10F0C000B4F57A7F06D0B4F5FA6F0BD103208DF832 +:10F0D00001000AE002208DF8010006E001208DF811 +:10F0E000010002E000208DF801001B208DF80000D7 +:10F0F0009DF80100C0008DF80100022300AAD02174 +:10F100000020F3F755FE002801D1002010E0382040 +:10F110008DF8000000208DF80100022300AAD02104 +:10F120000020F3F745FE002801D1002000E0012077 +:10F1300016BD00B583B00020ADF8060000208DF8A4 +:10F1400004006B208DF8060001208DF807000223D3 +:10F150000DF10602D0210120F3F72AFE002801D18B +:10F16000002023E02820FFF71FFD0120009001ABC5 +:10F170006C22D0210120F3F759FE002801D1002094 +:10F1800014E06C208DF806009DF8040010F0C0001B +:10F190008DF8070002230DF10602D0210120F3F7BC +:10F1A00007FE002801D1002000E001200EBD2DE95E +:10F1B000F04F85B004000D0016001F000020ADF8D0 +:10F1C000040002A80021002206C0083806208DF89D +:10F1D000060038208DF8040000208DF80500022379 +:10F1E00001AAD0210120F3F7E3FD002802D15FF04E +:10F1F000FF3070E123208DF8040000208DF8050019 +:10F20000022301AAD0210120F3F7D2FD002802D168 +:10F210005FF0FF305FE16A208DF8040000208DF878 +:10F220000500022301AAD0210120F3F7C1FD002827 +:10F2300002D15FF0FF304EE16A208DF80400042017 +:10F240008DF80500022301AAD0210120F3F7B0FDBB +:10F25000002802D15FF0FF303DE11A208DF8040054 +:10F2600001208DF80500022301AAD0210120F3F727 +:10F270009FFD002802D15FF0FF302CE119208DF8AE +:10F28000040000208DF80500022301AAD0210120EE +:10F29000F3F78EFD002802D15FF0FF301BE11B2049 +:10F2A0008DF804008DF80540022301AAD021012029 +:10F2B000F3F77EFD002802D15FF0FF300BE1FFB2D3 +:10F2C000002F0FD01C208DF804008DF8054002237C +:10F2D00001AAD0210120F3F76BFD002802D15FF0D5 +:10F2E000FF30F8E064B2002C02D0C820FFF75CFCCD +:10F2F0006A208DF8040044208DF80500022301AA3D +:10F30000D0210120F3F754FD002802D15FF0FF3037 +:10F31000E1E023208DF80400FFB2002F03D0082085 +:10F320008DF8050002E070208DF80500022301AA87 +:10F33000D0210120F3F73CFD002802D15FF0FF301F +:10F34000C9E00A20FFF730FC002408E0E4B2002006 +:10F3500045F82400E4B2002046F82400641CE4B21E +:10F36000032CF3DB5FF00009B9F1320F6EDA0A20EB +:10F37000FFF71AFC0220009002AB7222D02101207C +:10F38000F3F754FD002802D15FF0FF30A3E002A89C +:10F39000FFF7E1FC9DF8061090FBF1F8B8F1070FBC +:10F3A00002DA7FF0010096E000241AE05FFA8AFAA0 +:10F3B00055F82AB05FFA8AFA02A810EB4A00FFF764 +:10F3C000CAFC0BFA80F05FFA8AFA45F82A001AF1B3 +:10F3D000010A5FFA8AFABAF1030FE7DB19F10109B2 +:10F3E000641CE4B24445BFDAB9F1320FBCDA9DF8CF +:10F3F0000600009002AB7422D0210120F3F716FD25 +:10F40000002802D15FF0FF3065E0FFB2002F1AD074 +:10F410005FF0000A5FFA8AFABAF1030FDEDA5FFAE8 +:10F420008AFA56F82AB05FFA8AFA02A810EB4A0064 +:10F43000FFF791FC0BFA80F05FFA8AFA46F82A008F +:10F440001AF1010AE6E75FF0000AC2E723208DF80F +:10F45000040000208DF80500022301AAD02101201C +:10F46000F3F7A6FC002802D15FF0FF3033E05FF035 +:10F47000000A0FE05FFA8AFA55F82A004FF47A7111 +:10F480004843322190FBF1F05FFA8AFA45F82A00EE +:10F490001AF1010A5FFA8AFABAF1030FEADBFFB246 +:10F4A000002F17D05FF0000A0FE05FFA8AFA56F8D3 +:10F4B0002A004FF47A714843322190FBF1F05FFA51 +:10F4C0008AFA46F82A001AF1010A5FFA8AFABAF1B2 +:10F4D000030FEADB012005B0BDE8F08F2DE9F04312 +:10F4E00089B004000D00160000275FF0010801A894 +:10F4F000002101605FF000090320009001AB0D22A4 +:10F50000D0210120F3F792FC002801D15FF0FF38F1 +:10F510005FF0000905E005A8002140F8291019F165 +:10F520000109B9F1030F11DA01A819F80000002848 +:10F53000F1D001A819F80000DFF8A41911EB400080 +:10F5400030F8020C05A941F82900E8E75FF000094E +:10F550001FE002A850F82900DFF88819884207DA6E +:10F56000DFF88409F3F7DBFB012010FA09F0074309 +:10F5700002A850F82900DFF87419884207DBDFF889 +:10F580007009F3F7CCFB012010FA09F0074319F1D9 +:10F590000109B9F1030F2ADA55F8290056F82910A4 +:10F5A000401A08F0AEFB02A941F8290005A850F85E +:10F5B00029000028CDD002A850F8290005A951F84B +:10F5C000291090FBF1F0B0F57A7008F09AFB24F85E +:10F5D000190034F91900B0F5FA7FD8DDDFF8140905 +:10F5E000F3F79DFB012010FA09F00743CFE7B4F9C8 +:10F5F00004000090B4F90230B4F900203900DFF8BB +:10F60000F808F3F78CFB002F05D0DFF8F008F3F7CC +:10F6100086FB7FF00208404640B209B0BDE8F083A7 +:10F6200038B505000020ADF800000020ADF802005C +:10F63000F3F7FBFA040038208DF8000000208DF865 +:10F640000100022300AAD0210020F3F7B1FB00281B +:10F6500001D1002074E000F0D2FA002801D100208E +:10F660006EE01F208DF800004B208DF80100022372 +:10F6700000AAD0210020F3F79BFB002801D1002035 +:10F680005EE01E208DF8000006208DF801000223A8 +:10F6900000AAD0210020F3F78BFB002801D1002025 +:10F6A0004EE069208DF80000C0208DF80100022393 +:10F6B00000AAD0210020F3F77BFB002801D1002015 +:10F6C0003EE0012201210320F3F7EAFC0020F3F7DA +:10F6D000E9FC38208DF8000040208DF8010002235D +:10F6E00000AAD0210020F3F763FB002801D10020FD +:10F6F00026E0012028702000407DC046012810D05F +:10F7000001212000F3F74AFCBDF80200401CADF8CF +:10F710000200BDF802003228EDDBDFF8E407F3F762 +:10F72000FEFA012200210320F3F7BAFC0020F3F7D0 +:10F73000B9FC00F05AFB002801D1002000E00120B4 +:10F7400032BD70B58EB0040000A80021002206C0B2 +:10F750000838012500260BA80021002200230EC036 +:10F760000C3808A80021002200230EC00C3805A880 +:10F770000021002200230EC00C3802A80021002224 +:10F7800000230EC00C38FFF7ECFA002801D100204E +:10F7900056E0FFF7F9FB002806D00126FFF7C9FC69 +:10F7A000002803D100204BE0002049E0012302AAF9 +:10F7B00008A90020FFF7FBFC05006DB2012D04D065 +:10F7C000DFF83807F3F7ABFA1CE0012305AA0BA911 +:10F7D0007FF01F00FFF7EBFC05006DB2012D04D098 +:10F7E000DFF81007F3F79BFA0CE005AA02A900A8BE +:10F7F000FFF774FE05006DB2012D03D0DFF8E806B7 +:10F80000F3F78DFA2670BDF800006070BDF90000B6 +:10F810000012A070BDF80200E070BDF902000012F5 +:10F820002071BDF804006071BDF904000012A071E0 +:10F83000E571FFF701FB002801D1002000E0012065 +:10F840000EB070BD80B5DFF8BC060078002809D185 +:10F85000FFF7D3F9002801D1002004E0DFF8A40667 +:10F8600001210170012002BDA431002000B583B048 +:10F8700000208DF806000020ADF804000120009063 +:10F880000DF106036B22D0210020F3F7CFFA0028F8 +:10F8900001D100207FE09DF80600400612D56B20C4 +:10F8A0008DF804009DF8060010F0BF008DF80500EB +:10F8B000022301AAD0210020F3F77AFA002801D10F +:10F8C000002068E0012000900DF106036C22D02199 +:10F8D0000020F3F7ABFA002801D100205BE06C2098 +:10F8E0008DF804009DF8060010F0C7008DF80500A3 +:10F8F000022301AAD0210020F3F75AFA002801D1EF +:10F90000002048E01D208DF8040043208DF80500FC +:10F91000022301AAD0210020F3F74AFA002801D1DE +:10F92000002038E01C208DF8040000208DF8050030 +:10F93000022301AAD0210020F3F73AFA002801D1CE +:10F94000002028E020208DF8040080208DF805009C +:10F95000022301AAD0210020F3F72AFA002801D1BE +:10F96000002018E01F208DF8040080208DF805008D +:10F97000022301AAD0210020F3F71AFA002801D1AE +:10F98000002008E0DFF88005007850F00100DFF883 +:10F990007815087001200EBD00B583B000208DF8E9 +:10F9A00006000020ADF80400012000900DF10603D0 +:10F9B0006C22D0210020F3F739FA002801D1002071 +:10F9C00030E06C208DF804009DF8060050F03800FF +:10F9D0008DF80500022301AAD0210020F3F7E8F9F1 +:10F9E000002801D100201DE0DFF81C050078800709 +:10F9F0000FD46B208DF8040040208DF80500022301 +:10FA000001AAD0210020F3F7D3F9002801D100206A +:10FA100008E0DFF8F404007810F0FE00DFF8E814E6 +:10FA2000087001200EBD0000208103089C71002099 +:10FA3000A0710020A1710020A2710020A3710020FC +:10FA40009F710020A47100209E71002000B583B03A +:10FA500000208DF804000020ADF806000120009081 +:10FA600001AB6C22D0210020F3F7E0F9002801D18E +:10FA7000002014E06C208DF806009DF8040050F082 +:10FA800038008DF8070002230DF10602D021002076 +:10FA9000F3F78EF9002801D1002000E001200EBD0F +:10FAA0007FB504000D0002A80021002206C008381E +:10FAB0000020ADF80400F3F7B8F80600DFF84C04B6 +:10FAC0000068401CDFF8441408600120009002AB7D +:10FAD0006B22D0210020F3F7A9F9002801D10020E2 +:10FAE0008BE09DF8080040061AD56B208DF80400C5 +:10FAF0009DF8080010F0BF008DF80500022301AA50 +:10FB0000D0210020F3F754F9002801D1002074E03F +:10FB100005213000F3F742FADFF8F403F3F7FFF8BA +:10FB20000120009002AB6C22D0210020F3F77EF977 +:10FB3000002801D1002060E09DF80800382108422B +:10FB40001ED06C208DF804009DF8080010F0C7004E +:10FB50008DF80500022301AAD0210020F3F728F92F +:10FB6000002801D1002048E005213000F3F716FA03 +:10FB7000DFF8A003F3F7D3F8DFF89C03012101605D +:10FB8000EDB2009502AB3B22D0210020F3F74EF9F5 +:10FB9000002805D1DFF88403F3F7C1F800202CE03A +:10FBA0009DF8090020709DF8080060709DF80B001A +:10FBB000A0709DF80A00E0709DF80D0020719DF87E +:10FBC0000C006071D1480068642190FBF1F201FBE8 +:10FBD0001200002810D120790090A3782278CE4816 +:10FBE0000168CF48F3F79BF8C8480068CD498842C0 +:10FBF00002DBC64800210160012004B070BD30B5B1 +:10FC000083B001240020ADF8060000208DF8040028 +:10FC1000F3F70BF805000120009001AB6B22D02117 +:10FC20000020F3F703F9002801D100208BE09DF8B4 +:10FC3000040040061AD56B208DF806009DF80400DC +:10FC400010F0BF008DF8070002230DF10602D0214D +:10FC50000020F3F7ADF8002801D1002073E0052162 +:10FC60002800F3F79BF9B048F3F759F81D208DF8F9 +:10FC7000060008208DF8070002230DF10602D021AE +:10FC80000020F3F795F8002801D100205BE0012067 +:10FC9000009001AB6C22D0210020F3F7C7F80028B8 +:10FCA00001D100204FE06C208DF806009DF8040083 +:10FCB00050F080008DF804009DF8040050F007001B +:10FCC0008DF804009DF8040010F0C7008DF80400C2 +:10FCD0009DF804008DF8070002230DF10602D021E3 +:10FCE0000020F3F765F8002801D100202BE0012067 +:10FCF000009001AB6B22D0210020F3F797F8002889 +:10FD000001D100201FE06B208DF806009DF8040053 +:10FD100010F0BF008DF804009DF8040050F02000A2 +:10FD20008DF804009DF804008DF8070002230DF102 +:10FD30000602D0210020F3F73BF8002801D1002073 +:10FD400001E02000C0B23EBD80B50020ADF800004B +:10FD5000FFF755FF002801D1002045E01F208DF856 +:10FD600000004B208DF80100022300AAD0210020C2 +:10FD7000F3F71EF8002801D1002035E01E208DF891 +:10FD8000000006208DF80100022300AAD0210020E7 +:10FD9000F3F70EF8002801D1002025E069208DF846 +:10FDA0000000C0208DF80100022300AAD02100200D +:10FDB000F2F7FEFF002801D1002015E00122012109 +:10FDC0000320F3F76DF938208DF8000040208DF8FE +:10FDD0000100022300AAD0210020F2F7E9FF002849 +:10FDE00001D1002000E0012002BD80B50020ADF867 +:10FDF0000000012200210320F3F752F938208DF88A +:10FE0000000000208DF80100022300AAD02100206C +:10FE1000F2F7CEFF002801D1002040E06B208DF8E2 +:10FE2000000000208DF80100022300AAD02100204C +:10FE3000F2F7BEFF002801D1002030E01D208DF830 +:10FE4000000000208DF80100022300AAD02100202C +:10FE5000F2F7AEFF002801D1002020E06C208DF8E1 +:10FE6000000000208DF80100022300AAD02100200C +:10FE7000F2F79EFF002801D1002010E069208DF8E4 +:10FE8000000000208DF80100022300AAD0210020EC +:10FE9000F2F78EFF002801D1002000E0012002BD12 +:10FEA00080B50178012905D1FFF7BAFB00280AD1F6 +:10FEB000002009E00178022905D1FFF742FC002863 +:10FEC00001D1002000E0012002BD80B517490020CB +:10FED000F9F7C0FC16490B20F9F7BCFC01BD000086 +:10FEE000706A0308003E4900B481030801EFE7008F +:10FEF000BC810308AC810308B8800308C4810308EF +:10FF0000CC8103080E7200200F720020F0710020D7 +:10FF1000D4810308DC810308F4710020E481030824 +:10FF200088380008A1860100EC8103083C490308D9 +:10FF3000D87F030880B50020DFF8641B097800290A +:10FF400006D1FEF75AFEDFF8581B01220A7000E0C6 +:10FF50000120C0B202BD00B583B000208DF80600BC +:10FF60000020ADF80400012000900DF106036B2283 +:10FF7000D0210120F2F75AFF002801D100205BE0D8 +:10FF80006B208DF804009DF8060010F0BF008DF87E +:10FF90000500022301AAD0210120F2F709FF002861 +:10FFA00001D1002048E0012000900DF106036C22F1 +:10FFB000D0210120F2F73AFF002801D100203BE0D8 +:10FFC0006C208DF804009DF8060010F0F8008DF804 +:10FFD0000500022301AAD0210120F2F7E9FE002842 +:10FFE00001D1002028E01B208DF8040008208DF8A6 +:10FFF0000500022301AAD0210120F2F7D9FE002832 +:020000022000DC +:1000000001D1002018E01A208DF8040003208DF89B +:100010000500022301AAD0210120F2F7C9FE002821 +:1000200001D1002008E0DFF87C0A007850F00200DF +:10003000DFF8701A087001200EBD00B583B00020F3 +:100040008DF806000020ADF80400012000900DF1AD +:1000500006036C22D0210120F2F7E8FE002801D12E +:10006000002030E06C208DF804009DF8060050F070 +:1000700007008DF80500022301AAD0210120F2F724 +:1000800097FE002801D100201DE0DFF8180A007853 +:10009000C0070FD46B208DF8040040208DF80500B8 +:1000A000022301AAD0210120F2F782FE002801D10B +:1000B000002008E0DFF8EC09007810F0FD00DFF820 +:1000C000E419087001200EBD00B583B000208DF842 +:1000D00004000020ADF806000120009001AB6C2266 +:1000E000D0210120F2F7A2FE002801D1002014E067 +:1000F0006C208DF806009DF8040050F007008DF884 +:10010000070002230DF10602D0210120F2F750FE74 +:10011000002801D1002000E001200EBD7FB50400C1 +:1001200002A80021002206C0083800260020ADF8F1 +:100130000400F2F77AFD05000120009002AB6B226B +:10014000D0210120F2F772FE002801D1002083E0C7 +:100150009DF80800400625D56B208DF804009DF819 +:10016000080010F0BF008DF80500022301AAD0217D +:100170000120F2F71DFE002801D100206CE00A21C9 +:100180002800F2F70BFFDFF82009F2F7C8FD002680 +:1001900003E0F6B200203055761CF6B2062EF8DBEE +:1001A000012059E00120009002AB6C22D0210120F7 +:1001B000F2F73CFE002801D100204DE09DF8080038 +:1001C0000721084225D06C208DF804009DF8080016 +:1001D00010F0F8008DF80500022301AAD0210120BB +:1001E000F2F7E6FD002801D1002035E00A212800C1 +:1001F000F2F7D4FEDFF8B408F2F791FD002603E031 +:10020000F6B200203055761CF6B2062EF8DB01203F +:1002100022E00620009002AB4322D0210120F2F719 +:1002200005FE002805D1DFF88808F2F778FD0020E8 +:1002300012E09DF8090020709DF8080060709DF89C +:100240000B00A0709DF80A00E0709DF80D00207171 +:100250009DF80C006071012004B070BD2DE9F64FCF +:10026000ADF63C6D05000020ADF8080003A8142190 +:10027000F2F76CFF002608A80021002200230EC020 +:100280000C385FF0000940F68C1068444FF496611A +:10029000F2F75CFFFFA8E0304FF49661F2F756FFEB +:1002A0000BA84FF49661F2F751FF5FF000080027AA +:1002B00000240020070000E07F1C032F80F2BA809A +:1002C0006B208DF80800781C8DF80900022302AA23 +:1002D000D0210120F2F76CFD002801D1002099E126 +:1002E0003220FEF761FC6A208DF8080044208DF86A +:1002F0000900022302AAD0210120F2F759FD0028AB +:1003000001D1002086E1012409E019EB060608A8C6 +:1003100050F8270019EB000008A941F82700200039 +:10032000441E012875DB23208DF8080070208DF80D +:100330000900022302AAD0210120F2F739FD00288A +:1003400001D1002066E14B20FEF72EFC23208DF822 +:10035000080000208DF80900022302AAD021012004 +:10036000F2F726FD002801D1002053E10220009081 +:1003700003AB7222D0210120F2F758FD002801D1F1 +:10038000002047E103A8FEF7E6FC00EE100AB8EEF5 +:10039000C00A10EE100AEFF743FEDFF81827DFF867 +:1003A0001837EFF775FEFBF775FE8146B9F1480087 +:1003B0000128B4DB5FF000081DE003A8FEF7CBFCCA +:1003C00018EB060140F68C126A4422F811000DF178 +:1003D0000E00FEF7C0FC18EB0601FFAAE03222F87F +:1003E000110004A8FEF7B7FC18EB06010BAA22F8CF +:1003F000110018F10108C84587DA0620009003AB08 +:100400007422D0210120F2F711FD0028D5D100205F +:1004100000E123208DF8080000208DF80900022358 +:1004200002AAD0210120F2F7C3FC00287FF444AFD8 +:100430000020EFE0002E01D0340000E001245FF046 +:10044000000800200021C5E9000100200021C5E9C5 +:10045000020100200021C5E9040122E0D5E90001E4 +:1004600040F68C126A4432F91820D317801859418B +:10047000C5E90001D5E90201FFAAE03232F91820EE +:10048000D31780185941C5E90201D5E904010BAA27 +:1004900032F91820D31780185941C5E9040118F121 +:1004A0000108B045DADBD5E900012200E317F5F7D2 +:1004B00015FEC5E90001D5E902012200E317F5F7B1 +:1004C0000DFEC5E90201D5E904012200E317F5F7A5 +:1004D00005FEC5E904015FF00008DDF83C0E0022CE +:1004E0000023C0E90023DDF83C0E00220023C0E910 +:1004F0000223DDF83C0E00220023C0E9042382E041 +:10050000DDF83C2ED2E90001CDE9000140F68C1067 +:10051000684430F91800C117D5E90023801A9941C1 +:1005200040F68C126A4432F918A05FEAEA7BD5E9FA +:100530000023BAEB02027BEB0303A2FB00AB02FB3E +:1005400001BB03FB00BBDDE9000110EB0A0051EB2E +:100550000B01DDF83C2EC2E90001DDF83C2ED2E9AA +:100560000201CDE90001FFA8E03030F91800C11701 +:10057000D5E90223801A9941FFAAE03232F918A086 +:100580005FEAEA7BD5E90223BAEB02027BEB0303C5 +:10059000A2FB00AB02FB01BB03FB00BBDDE90001DA +:1005A00010EB0A0051EB0B01DDF83C2EC2E9020111 +:1005B000DDF83C2ED2E90401CDE900010BA830F9A9 +:1005C0001800C117D5E90423801A99410BAA32F902 +:1005D00018A05FEAEA7BD5E90423BAEB02027BEBC1 +:1005E0000303A2FB00AB02FB01BB03FB00BBDDE985 +:1005F000000110EB0A0051EB0B01DDF83C2EC2E9C3 +:10060000040118F10108B045FFF67AAFDDF8400E9D +:10061000066001200DF6446DBDE8F08F2DE9F04332 +:1006200089B004000D00160001275FF0000801A842 +:10063000002101600320009001AB0022D0210120A5 +:10064000F2F7F4FB002801D15FF0FF375FF00009FB +:1006500007E04FFA89F905A8002140F8291019F19F +:1006600001094FFA89F9B9F1030F17DA4FFA89F93D +:1006700001A819F800000028EBD04FFA89F901A869 +:1006800019F80000DFF8341411EB400030F8020CC8 +:100690004FFA89F905A941F82900E0E75FF0000960 +:1006A00025E04FFA89F902A850F82900DFF8101464 +:1006B000884208DADFF80C04F2F731FB012010FA67 +:1006C00009F050EA08084FFA89F902A850F8290001 +:1006D000DFF8F413884208DBDFF8F003F2F71FFBC2 +:1006E000012010FA09F050EA080819F101094FFA3F +:1006F00089F9B9F1030F3ADA4FFA89F955F8290067 +:100700004FFA89F956F82910401A07F0FAFA4FFA09 +:1007100089F902A941F829004FFA89F905A850F88A +:1007200029000028BDD04FFA89F902A850F8290005 +:100730004FFA89F905A951F8291090FBF1F0B0F5AD +:100740007A7007F0DEFA4FFA89F924F819004FFAA7 +:1007500089F934F91900B0F5FA7FC6DDDC48F2F703 +:10076000DEFA012010FA09F050EA0808BDE74FFA56 +:1007700088F8B8F1000F04D0D648F2F7D0FA7FF02D +:100780000207380040B209B0BDE8F0832DE9F0431C +:100790009DB00400012501260CA81821F2F7D6FC13 +:1007A00006A81821F2F7D2FC02A80021016000A8D7 +:1007B0000021002206C00838002718A800210022C6 +:1007C00000230EC00C3815A80021002200230EC003 +:1007D0000C3812A80021002200230EC00C3803A8F8 +:1007E0000021002200230EC00C38BB48D0F8048042 +:1007F000FEF7B7FA002801D10020EDE0FEF7C4FBB8 +:100800000500EDB2012D09D1012702AA06A90CA805 +:10081000FFF724FD002803D10020DDE00020DBE00D +:10082000FEF787FC002801D10020D5E0002303AAB1 +:1008300015A90020FEF7BBFC060076B2012E02D0FF +:10084000A648F2F76CFA002312AA18A97FF01F003D +:10085000FEF7ADFC060076B2012E02D0A048F2F7FA +:100860005EFA18AA15A900A8FFF7D8FE060076B20E +:10087000012E02D09B48F2F752FA5FF0000918E00F +:100880005FFA89F918EB49025FFA89F90CA810EBB5 +:10089000C903D3E900018000A2F858005FFA89F982 +:1008A00018EB4900B0F958108F48F2F738FA19F1EF +:1008B00001095FFA89F9B9F1030FE1DB2770BDF88F +:1008C00000006070BDF900000012A070BDF80200C9 +:1008D000E070BDF9020000122071BDF804006071E3 +:1008E000BDF904000012A071E6710298207202980E +:1008F0000012607202980014A07202980016E07252 +:10090000DDE90C012073DDE90C0100B20012607317 +:10091000DDE90C010014A073DDE90C010016E073A1 +:10092000DDE90E012074DDE90E0100B200126074F1 +:10093000DDE90E010014A074DDE90E010016E0747B +:10094000DDE910012075DDE9100100B200126075CB +:10095000DDE910010014A075DDE910010016E07555 +:10096000DDE906012076DDE9060100B200126076BD +:10097000DDE906010014A076DDE906010016E07647 +:10098000DDE908012077DDE9080100B20012607797 +:10099000DDE908010014A077DDE908010016E07721 +:1009A000DDE90A0184F82000DDE90A0100B2001245 +:1009B00084F82100DDE90A01001484F82200DDE951 +:1009C0000A01001684F82300FEF736FA002801D148 +:1009D000002001E02800C0B21DB0BDE8F08330B5B2 +:1009E00083B004000020ADF8040000203A494D68AF +:1009F000697A002907D1286E40688047F2F715F917 +:100A00000A21F2F7CBFA0220009001AB4122D0215B +:100A10000120F2F70BFA002801D1002017E09DF821 +:100A200005009DF8041050EA0120032110FB01F09D +:100A30004FF47A7190FBF1F0153020700020607057 +:100A4000687A002802D1286E8068804701203EBD68 +:100A500080B50178002905D1FFF798FE00280AD15A +:100A6000002009E00178012905D1FFF7B8FF00282F +:100A700001D1002000E0012002BD80B5C0B20628EF +:100A800006D10800FFF7ABFF002801D1002000E0ED +:100A9000012002BD80B515490120F8F7DBFE01BD3C +:100AA0000E7200200F720020248203082C8203089B +:100AB000348203082D211FF46C56C53F706C030867 +:100AC00030FD13004482030879E2D1004C82030810 +:100AD0003C82030854820308000000205C82030863 +:100AE000648203086C82030894810308448003082D +:100AF000002108E0C9B2DFF8D42D8A18C9B20B5C16 +:100B000082F83830491CC9B20929F3DB704780B537 +:100B10000921DFF8BC2D01FB0020FFF7E9FF01BD33 +:100B20002DE9F04F85B004000D000E20009001ABC0 +:100B300090225C210220F2F779F9002802D15FF0BF +:100B4000FF3017E10E20009001AB90225C210220C3 +:100B5000F2F76CF9002802D15FF0FF300AE19DF84E +:100B600004008DF801009DF805009DF806109DF821 +:100B70000720D2B292089DF807309B0013F00C03B7 +:100B80009DF80860F6B253EA96139DF8086016F0D7 +:100B90003F069DF80970FFB2BF089DF809C05FEAE3 +:100BA0000C1C1CF0300C9DF80AE05FFA8EFE5CEA2B +:100BB0001E1E9DF80AC05FEACC0C1CF0780C9DF854 +:100BC0000B805FFA88F85CEA58189DF80BC05FEA62 +:100BD0004C0C1CF03E0C9DF80C905FFA89F95CEA15 +:100BE000D9199DF80CC09DF80DA05FFA8AFA5FEA4A +:100BF000DA1A5AEA4C0A9DF80DC0CCF3840B8DF832 +:100C000000B09DF80DC05FEA4C0C1CF0060C9DF87E +:100C10000EB05FFA8BFB5CEADB1B8DF802B09DF82F +:100C20000EC01CF0010C9DF80FB05FFA8BFB5FEA61 +:100C3000DB1B5BEA4C0C84F803C09DF80EC05FFA26 +:100C40008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA70 +:100C5000AC0C84F800C09DF80FC01CF0010C9DF88E +:100C600010B05FFA8BFB5FEADB1B5BEA4C0C84F88D +:100C700004C09DF80FC05FFA8CFC5FEA5C0C5FEA71 +:100C80008C0C4FFA8CFC5FEAAC0C84F801C09DF828 +:100C900010C01CF0010C9DF811B05FFA8BFB5FEAED +:100CA000DB1B5BEA4C0C84F805C09DF810C05FFAB2 +:100CB0008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA00 +:100CC000AC0C84F802C09DF811C01CF0010C84F833 +:100CD00006C09DF801405FF00A0C0CFB04F4B4F56B +:100CE000A0642C60C0B20A246043B0F5A0606860C4 +:100CF000C9B20A2000FB01F0B0F5A060A860D2B232 +:100D0000B2F12000E860DBB2B3F108002861F6B26E +:100D1000B6F120006861FFB217F12600A8615FFA02 +:100D20008EFEBEF12000E8615FFA88F8B8F140005D +:100D300028625FFA89F9B9F1200068625FFA8AFADD +:100D4000C5F828A09DF80000E862002000E0401CE3 +:100D5000C0B20D2806DAC0B201A9415C0029F6D064 +:100D6000002007E09DF81100000601D5002001E0F9 +:100D70007FF0090005B0BDE8F08F1CB5002400E04D +:100D8000641CB4F57A7F12DA0120009001ABB02226 +:100D90005C210220F2F74AF8002802D15FF0FF3010 +:100DA00007E09DF804000006EAD4002001E07FF08F +:100DB000040016BD80B5DFF8140B90F8540000282D +:100DC00011D0DFF8080B90F8550000280BD0FFF782 +:100DD000D4FF002802D57FF0040005E0DFF8EC0A1C +:100DE000002180F85510002002BD10B582B014001B +:100DF0000022ADF8002082228DF8002001228DF81B +:100E00000120002801D0012000E000209DF80120F1 +:100E100052EA40008DF80100002901D0012000E0D5 +:100E200000209DF8011051EA80008DF80100022396 +:100E300000AA5C210220F1F7BBFF002802D15FF07D +:100E4000FF3019E0002C0CD0FFF797FF002802D5E7 +:100E50007FF0040010E0DFF8740A002180F85510DC +:100E600004E0DFF8680A012180F85510DFF85C0A19 +:100E7000012180F85410002016BD3EB514001D005D +:100E8000DFF8482A92F85420002A04D10122FFF703 +:100E9000ACFF002871D10820009001ABB0225C218A +:100EA0000220F1F7C3FF002806D1DFF87C0CF1F730 +:100EB00036FF5FF0FF3060E0DFF8100A002180F8B5 +:100EC00054109DF80400C0B2C009C0B220609DF863 +:100ED0000400C00010F47E709DF80510C9B24909E5 +:100EE000C9B20843288006989DF80610890111F4BC +:100EF000FE519DF80720D2B29208D2B21143018070 +:100F00009DF80810890111F4FE519DF80920D2B214 +:100F10009208D2B2114341809DF80A10890111F460 +:100F2000FE519DF80B20D2B29208D2B211438180BB +:100F3000079900220A6000221BE0D2B230F9123079 +:100F4000002B06D10B680124D2B25500AC402343DC +:100F50000B60D2B230F9123041F6FE74A34207D1D1 +:100F60000B680124D2B255006D1CAC4023430B60CA +:100F7000521CD2B2032AE0DB00203EBD10B582B085 +:100F800004000020ADF80000FFF714FF002802D590 +:100F90007FF0040041E085208DF8000020788DF876 +:100FA0000100022300AA5C210220F1F701FF0028C2 +:100FB00002D15FF0FF3030E086208DF800006078CD +:100FC0008DF80100022300AA5C210220F1F7F0FE57 +:100FD000002802D15FF0FF301FE087208DF800006D +:100FE000A0788DF80100022300AA5C210220F1F70D +:100FF000DFFE002802D15FF0FF300EE0002008E0A5 +:10100000C0B2DFF8C8184118C0B2025D81F84120B3 +:10101000401CC0B20328F3DB002016BD80B50020C1 +:10102000ADF80000FFF7C6FE002802D57FF00400EF +:1010300011E081208DF8000000208DF801000223CE +:1010400000AA5C210220F1F7B3FE002802D15FF074 +:10105000FF3000E0002002BD30B58BB0040002A8D4 +:1010600000210160FFF7A6FE002802D57FF00400F2 +:1010700073E0DFF85808002180F85410002516E0CE +:1010800008A951F8201000290DD002A9415608AA3C +:1010900052F82020DFF83C3D53F825305A4342FAFD +:1010A00081F102AA8154401C0328E9DB6D1C052D47 +:1010B00042DA02A8FFF762FF002802D55FF0FF3096 +:1010C0004BE007A8019005A8009003AB04AA0021FB +:1010D0000020FFF7D2FE002802D55FF0FF303CE091 +:1010E0000498002802D07FF0040036E000201FE0C2 +:1010F00005A931F91010B1F5805F03D108A90022CC +:1011000041F8202005A931F91010B1F5805F03DD09 +:1011100008A9012241F8202005A931F91010B1F5E4 +:10112000805F04DA08A95FF0FF3241F82020401CFC +:101130000328DDDB0020B7E702A8FFF71FFF002828 +:1011400002D55FF0FF3008E0002503E002A8285C2C +:1011500028556D1C032DF9DB00200BB030BD2DE9A7 +:1011600070438AB004000E00DFF86C5C002005902C +:1011700000200490FFF71EFE002802D57FF0040037 +:1011800078E0DFF84807002180F8541005A80190A6 +:1011900008A8009002AB03AA00210120FFF76DFE12 +:1011A0000020002802D05FF0FF3063E003980028A1 +:1011B00002D07FF004005DE004A8019006A8009032 +:1011C00002AB03AA01210120FFF757FE00200028EF +:1011D00002D05FF0FF304DE00398002802D07FF08E +:1011E000040047E0E86AEFF7EDFA80468946BDF96A +:1011F0002000BDF91810401AEFF7E4FADFF8DC2BF5 +:10120000DFF8DC3BEEF744FF42464B46EEF740FF8B +:101210000022DFF8543DEFF7B1F9FAF73BFF206009 +:10122000E86AA9694843EFF7CDFA04000D00BDF95B +:101230002200BDF91A10401ABDF92410401ABDF958 +:101240001C1000FA81F0EFF7BDFADFF83C2DDFF853 +:101250003C3DEEF71DFF22002B00EEF719FF0022A8 +:10126000DFF8043DEFF78AF9FAF714FF30600598CC +:10127000049908430AB0BDE8708380B5FFF79AFD72 +:10128000002802D57FF0040004E0002200210020A5 +:10129000FFF7ABFD02BD2DE9F04389B0040088469D +:1012A00017001D00DFF8306B002007905FF0000989 +:1012B00007A80190CDF8008002AB08AA0021002009 +:1012C000FFF7DBFD002802D55FF0FF303DE1002095 +:1012D0001DE038F91010DFF8F4258218D278DFF815 +:1012E000B03C33F91220891ADFF8E025821892F910 +:1012F0004120DFF8D835C356D21ADFF8D03513EBCA +:1013000080039B6C03FB021147F82010401C03284C +:10131000DFDBDFF8B805006FDFF8B01511EB400038 +:10132000BDF80810A0F85810DFF8A005006F401CA9 +:10133000DFF898150867DFF89405006F0A2803DBCB +:10134000DFF8880500210167DFF88005C06E401CCA +:10135000DFF87815C866DFF87405C06E0A2803DB6D +:10136000DFF868050A21C166002008E0DFF85C1597 +:1013700011EB4001B1F9581009FA81F9401CDFF86E +:101380004C15C96E8842F1DB0A2000FB09F0DFF83A +:101390003C15C96EB0FBF1F0049038680090786895 +:1013A0000390B8680190109800281DD0009831680B +:1013B000049A51434FF47A7291FBF2F1401A009073 +:1013C00003987168049A51434FF47A7291FBF2F1D9 +:1013D000401A03900198B168049A51434FF47A720D +:1013E00091FBF2F1401A019003980199401A06907E +:1013F000039840420199401A0590F06AEFF7E2F92C +:101400008046894600986421F268069B5A4301FB96 +:1014100000203169059A02FB0100EFF7D3F9DFF8EC +:10142000BC29DFF8BC39EEF733FE42464B46EEF7F7 +:101430002FFEFAF72FFE0490F06AEFF7C3F980460B +:10144000894670690099B269069B5A4301FB0020E6 +:10145000F169059A02FB0100EFF7B4F9DFF87C2986 +:10146000DFF87C39EEF714FE42464B46EEF710FEED +:10147000FAF710FE0390F06AEFF7A4F98046894668 +:10148000306A0099726A069B5A4301FB0020B16AD8 +:10149000059A02FB0100EFF795F9DFF84029DFF824 +:1014A0004039EEF7F5FD42464B46EEF7F1FDFAF70F +:1014B000F1FD0190DFF8140490F938000499DFF889 +:1014C0000C2492F93920039B5A4301FB0020DFF8DA +:1014D000FC1391F93A10019A02FB01002060DFF839 +:1014E000EC0390F93B000499DFF8E02392F93C20EB +:1014F000039B5A4301FB0020DFF8D01391F93D1004 +:10150000019A02FB01006060DFF8C00390F93E0021 +:101510000499DFF8B82392F93F20039B5A4301FB5B +:101520000020DFF8A81391F94010019A02FB010096 +:10153000A060002D02D0BDF808002880089800287F +:1015400002D07FF0040000E0079809B0BDE8F08306 +:1015500000B583B00020ADF8060000208DF804002F +:10156000002007E0D9494118DFF8282A825C81F879 +:101570004120401C0328F5DB88208DF80600002060 +:101580008DF8070002230DF106025C210220F1F71D +:101590000FFC002802D15FF0FF3045E089208DF874 +:1015A000060000208DF8070002230DF106025C21E1 +:1015B0000220F1F7FDFB002802D15FF0FF3033E09D +:1015C0000120009001AB80225C210220F1F72EFC6B +:1015D000002802D15FF0FF3026E0BC489DF80410DF +:1015E00080F84410DFF8F017B848FFF799FA0028A0 +:1015F0001AD4002008E0B54911EB8001DFF89829E2 +:1016000052F820208A64401C0328F4DBAF480021F4 +:1016100080F85410AD48002180F855100020AB49E7 +:101620000867AA49C86600200EBD00281CD090F9A2 +:101630000010202918DA90F90110202914DA90F905 +:101640000210202910DA90F9001011F11F0F0BDBA6 +:1016500090F9011011F11F0F06DB90F9020010F153 +:101660001F0F01DB012000E00020C0B270472DE910 +:10167000FC4104000D0016001F005FF00008DFF8B9 +:101680001C09C06A012802D002282FD062E0DFF8CE +:101690000C09406CDFF80419096C401AB0F5FA7FA8 +:1016A00058D3DFF8F808DFF8F418496C0164FFF745 +:1016B000B5FC8046B8F1000F4CD4DFF8E008806B31 +:1016C000002805D1DFF8D808FFF7AFFF002804D1C4 +:1016D000DFF8C8080221C16203E0DFF8C00800217A +:1016E000C162FFF7CAFD002869D433E001A8FFF703 +:1016F000B3FC8046B8F1000F2CD4DFF8A00890F9B5 +:101700003C009DF9041088420FD1DFF8900890F951 +:101710003D009DF90510884207D1DFF8800890F957 +:101720003E009DF90610884201D05FF04008DFF8C6 +:101730006C080021C162002009E0C0B2DFF85C182B +:101740004118C0B201AA825C81F83C20401CC0B2A2 +:101750000328F2DBB8F1000F01D540462FE00898CE +:1017600000903B00320029002000FFF794FD002884 +:1017700025D401281ADBDFF82418896B002905D14C +:10178000DFF81818DFF81428526C0A64DFF80C1818 +:1017900001228A63DFF80418C96A002903D1DFF83F +:1017A000FC170122CA6250EA080803E0DFF8EC07E0 +:1017B00000218163FFF761FD002800D44046BDE8A9 +:1017C000F68110B582B00400002C02D17FF07F00BA +:1017D00078E0DFF8C8271268002A02D17FF0020003 +:1017E00070E0DFF8B827126B002A33D0009114F1B3 +:1017F000200314F1140214F10C012000FFF737FF4D +:10180000002827D400211EE0C9B214EB4102B2F92E +:101810000C20C9B2DFF8843713EB81031A61C9B217 +:1018200014EB81025269C9B2DFF8703713EB810300 +:10183000DA61C9B2DFF8642712EB8102C9B254F849 +:1018400021305360491CC9B20329DDDBDFF84C1796 +:10185000098D2184DFF84417096B002901D0002885 +:1018600026D500211DE0C9B2DFF8302712EB810236 +:101870005268C9B244F82120C9B214EB4102C9B27E +:10188000DFF8183713EB81031B699381C9B214EB9E +:101890008102C9B2DFF8043713EB8103DB695361BE +:1018A000491CC9B20329DEDBDFF8F016098D21845B +:1018B000DFF8E816496CDFF8E426926C5118DFF87F +:1018C000DC26516416BDDFF8DC067047DC6C0020B6 +:1018D000347F030880B5002023E0DFF8C0164118EC +:1018E000DFF8C426825C81F83C20DFF8B01611EBEB +:1018F0008001DFF8B82652F820200A61DFF89C1634 +:1019000011EB8001DFF8A42652F820204A60DFF8AE +:101910008C1611EB8001DFF8942652F82020CA6162 +:10192000401C0328D9DBDFF8740600210185DFF8AD +:101930006C0600214164DFF8640632218164DFF81F +:101940005C0600210163DFF8540600214163DFF8E3 +:101950004C060121C162DFF844065FF0FF310160EF +:10196000DFF83806002181630320FFF7D0F8FFF786 +:10197000EFFD002805D5DFF83806F1F7D0F9002093 +:1019800037E0DFF81C06FFF750FE002819D0DFF81B +:101990001006FFF7F3FA002805D5DFF81806F1F76F +:1019A000BEF9002025E0FFF739FB002804D5DFF859 +:1019B000EC050121C16211E0DFF8E0050021C16200 +:1019C0000CE0FFF72BFB002804D5DFF8D005012140 +:1019D000C16203E0DFF8C4050221C162DFF8BC0583 +:1019E0000121016018220021DFF8B805EEF708FB9D +:1019F000012002BD80B5DFF8A405006B01280AD0E4 +:101A0000DFF8980501210163FFF737FCDFF8A8052F +:101A1000F1F785F907E0DFF8840501214163DFF87C +:101A20009C05F1F77CF9012002BDDFF87005406BE1 +:101A3000012804D0DFF864050021016303E0DFF82A +:101A40005C0500214163012070470120704710B5FB +:101A50000023C0B2002803D002284DD010D360E08C +:101A6000DFF8380590F83C000870DFF8300590F892 +:101A70003D004870DFF8240590F83E00887050E083 +:101A8000DFF818050068002807D17FF00201DFF8B1 +:101A90003005F1F744F9002044E0002308E0DBB210 +:101AA000DFF8F8041818DBB25C5680F83C405B1C89 +:101AB000DBB2D2B29342F2D3DFF8E004006B00282D +:101AC00001D101202EE0DFF8D804FFF7AEFD002899 +:101AD00004D0DFF8CC04FFF751FA0CE0FFF79EFAD0 +:101AE000002804D5DFF8B4040121C16203E0DFF867 +:101AF000AC040221C16214E000230FE0DBB211EB61 +:101B0000430040780002DBB211F813208018DBB2EA +:101B1000DFF8B02412EB430290835B1CDBB2092B8D +:101B2000ECDB012010BD0000F48103082DE9F04337 +:101B300089B004000D009046994600260027012137 +:101B400000A8FFF73EFE0600002007000FE000A8F7 +:101B500050F82700EEF736FEDFF86C24DFF86C341F +:101B6000EEF796FAFAF796FA24F817007F1C032F7F +:101B7000EDDB002E06D53100DFF85404F1F7CFF885 +:101B8000002055E0F00702D547F6FF702080B0072F +:101B900002D5DFF840042080700702D547F6FF70B9 +:101BA0006080300702D5DFF82C046080F00602D593 +:101BB00047F6FF70A080B00602D5DFF81804A080B9 +:101BC000DFF81404C66896F821202100B069F36894 +:101BD000C018EEF71FFA3000F0F7AEFA96F82120A1 +:101BE000B069F16841182000EEF714FA4A4629005E +:101BF0002000DFF8D0335B6898474046DFF8C41315 +:101C0000896888472888B8F80010081820806888F4 +:101C1000B8F8021008186080A888B8F804100818EE +:101C2000A08029002800DFF8B423526890470120E3 +:101C300009B0BDE8F08370B58CB0040000A80021A5 +:101C4000002206C0083800260025FFF7B3F8002858 +:101C500007D57FF00401DFF88803F1F760F8002072 +:101C600033E0002102A8FFF7ACFD0600002E01D5ED +:101C700000202AE0FFF79EF8002806D57FF0040137 +:101C8000D848F1F74CF800201FE00798ADF80000A5 +:101C900008980999401AADF802000898404209993D +:101CA000401AADF8040000250CE000A830F815003B +:101CB00004F8150014EB450000A931F915100912BC +:101CC00041706D1C032DF0DB01200CB070BDF8B528 +:101CD00004000025F0F738F90600FFF7F4FD0700CF +:101CE000BD480069C06A8068AC498864B6F85C0089 +:101CF00040070BD417F1140317F10C02B91D38007B +:101D0000FFF714FF002801D1002014E000250DE0AA +:101D100017EB4500C08804F8150017EB4500B0F933 +:101D20000600001214EB450148706D1C032DEFDB1B +:101D30007869A0710120F2BD2DE9F041040000276F +:101D40000026F0F701F98046FFF7BDFD0500B8F861 +:101D50005C00000708D52000FFF76DFF002801D1C7 +:101D6000002034E0032729E015F1140315F10C02DB +:101D7000A91D2800FFF7DAFE002801D1002026E087 +:101D8000002618E035F8160004F8160035F916009C +:101D9000001214EB4601487014EB460015EB4601A7 +:101DA0008989817115EB4600B0F90C00001214EB23 +:101DB0004601C871761C032EE4DB02277FB28648F9 +:101DC00050F82700C06A8068744988640120BDE823 +:101DD000F081000038810308E46C00209A999999F9 +:101DE0009999B93FF0B58DB00400002600A80021F4 +:101DF000002206C00838F0F718FF050067480121E7 +:101E0000016366480068002804D0774890F84400D1 +:101E1000022803D0FFF75EFDFFF7ECFD724890F853 +:101E2000440020706670A670E67003225E490120AF +:101E3000FFF70DFE002104A8FFF7C3FC0600002EEB +:101E400001D500208DE016F0150F02D07FF00506B9 +:101E500012E016F02A0F02D07FF006060CE004987C +:101E6000002808D10598002805D10698002802D13D +:101E70007FF0070600E000265B4890F841002071E3 +:101E8000594890F842006071574890F84300A0719B +:101E9000E671002020720020607200270EE004A886 +:101EA00050F82700EEF78EFC374A384BEEF7F0F883 +:101EB000FAF7F0F800A921F817007F1C032FEEDBDA +:101EC0004548C76897F8212000A9B869FB68C01881 +:101ED000EEF7A0F83800F0F72FF997F82120B8694D +:101EE000F968411800A8EEF795F8BDF90000001256 +:101EF000A072BDF80000E072BDF90200001220736C +:101F0000BDF802006073BDF904000012A073BDF8B3 +:101F10000400E073267402212800F1F73FF802A9BB +:101F200003A8FFF71CF90600002E01D5002018E0D9 +:101F300016F0150F01D07FF0050616F02A0F01D01C +:101F40007FF006060398001260740398A07402984C +:101F50000012E07402982075667510480021016334 +:101F600001200DB0F0BD00000000324080B51F49D7 +:101F70000220F7F76FFC1E490420F7F76BFC1B49A2 +:101F80000320F7F767FC01BDFCA9F1D24D62503F79 +:101F90001C820308788203087C8103081C700020DF +:101FA000587000205C710020748203088881030847 +:101FB000FC810308048203080C82030814820308CE +:101FC0004C810308B4FC00207B14AE47E17A843FC7 +:101FD000588103080080FFFF00000020C0FE0020A1 +:101FE0006481030870810308DC6C0020FC7F030817 +:101FF000208003082DE9F84304460D4616461F4687 +:10200000DFF8EC08D0F81880D8F80C90224612B20D +:102010000021484605F079FE2A4612B202214846C0 +:1020200005F073FE324612B20421484605F06DFEFB +:102030003A4612B20621484605F067FE0C9F3A4622 +:1020400012B20821484605F060FE089A12B20A2131 +:10205000484605F05AFE099A12B20C21484605F08E +:1020600054FE0A9A12B20E21484605F04EFE0B9A13 +:1020700012B21021484605F048FE012088F81D00E4 +:102080003FB2009736B233462DB22A4624B22146DB +:102090000FF6C410F0F743FEBDE8F1831CB5002035 +:1020A000ADF806008DF804000FF6C010F0F737FE0B +:1020B000002401E0641CE4B20A2C13DADFF83408CF +:1020C0002118097C8DF80610205C8DF8070002238A +:1020D0000DF106028C210620F0F76AFE0028E9D1F6 +:1020E000002016BD0120009001AB05228C210620A6 +:1020F000F0F79CFE002801D1002016BD9DF80400D9 +:1021000040F080008DF8040005208DF806009DF851 +:1021100004008DF8070002230DF106028C21062031 +:10212000F0F746FE002801D1002016BD012016BDA3 +:102130007FB50020ADF80A008DF8080003A8002143 +:1021400001600FF63010F0F7EAFD05208DF80A0067 +:102150000DF10A058020687002230DF10A028C211E +:102160000620F0F725FE002839D04FF480510020DA +:10217000F0F786FF0026DFF87C4716E0032E12D02A +:10218000042E10D0052E0ED03019007C8DF80A00D8 +:10219000305D687002230DF10A028C210620F0F7F1 +:1021A00007FE00281BD0761CF6B20A2EE6DB0120C3 +:1021B000009002AB05228C210620F0F737FE0028A4 +:1021C0000DD09DF8080000F07F008DF80800012375 +:1021D00002AA8C210620F0F7EBFD002801D1002097 +:1021E0001AE006F053F8207B012814D1042103A83B +:1021F00000F08AF8002811D103A8C17801918178F4 +:10220000009143789DF80C20DFF8EC16002005F0D3 +:1022100085FD00202073012004B070BD0FF65C0026 +:10222000F0F77DFD0020F7E700B583B00020ADF8A2 +:1022300006008DF804000FF64C00F0F770FD012049 +:10224000009001AB05228C210620F0F7EFFD00285D +:1022500015D09DF8040040F080008DF804000520A2 +:102260008DF806009DF804008DF8070002230DF19B +:1022700006028C210620F0F79BFD002801D10020EA +:102280000EBDEFF761FE90F87A00002804D14FF4FC +:1022900080510020F0F7F6FE01200EBD00B583B09E +:1022A0000020ADF806008DF804000120009001AB7D +:1022B00005228C210620F0F7B9FD002815D09DF8E5 +:1022C000040040F080008DF8040005208DF8060021 +:1022D0009DF804008DF8070002230DF106028C2101 +:1022E0000620F0F765FD002801D100200EBDEFF7B4 +:1022F0002BFE90F87A00002804D14FF48051002082 +:10230000F0F7C0FE01200EBD10B582B004460420D7 +:102310000090234601228C210620F0F787FD00283B +:1023200005D10FF26870F0F7FAFC002016BD2046C8 +:1023300000F00FF800200090E378A2786178207810 +:1023400005F028FDDFF8A8058169487F00224A775B +:1023500016BD38B50021ADF800100A46DFF8941517 +:10236000DFF8985507E000249C629B6A032B01DB91 +:102370000123CB63521C042A0DDA01EB8203145CA7 +:10238000002CF0D19C6A641C9C62AC42EDDBDFF84F +:1023900070459C62E9E7C86B00283FD0886B002835 +:1023A0003CD101208863FF258DF8005000AC5420FB +:1023B0006070022300AA8C210620F0F7F9FC8DF84A +:1023C00000504D206070022300AA8C210620F0F7F7 +:1023D000EFFC45208DF8000005206070022300AA64 +:1023E0008C210620F0F7E4FC44208DF8000040200A +:1023F0006070022300AA8C210620F0F7D9FC45204A +:102400008DF8000000206070022300AA8C210620B5 +:10241000F0F7CEFC0FF28060F0F781FC31BD80B5A3 +:10242000DFF8D01402788A7001780FF27860F0F744 +:1024300076FC012002BD70B586B0044602A81021CA +:10244000F0F784FE01A800210160F0F7EEFB0546DD +:10245000FFF76EFE002618E002989DF8041050FA6F +:1024600081F0029001A802A94A684378D2184A6014 +:102470008A688378D2188A60CA68C0781018C860E1 +:102480000A212846F0F78AFD761C032E0BDA042079 +:10249000009001AB01228C210620F0F7C7FC002838 +:1024A000DAD1002012E00020032206E002A951F850 +:1024B000201091FBF2F10155401C0428F6DBFFF7D8 +:1024C000B3FE0FF2EC50F0F72AFC012006B070BD0D +:1024D00002460020052A01D10846A0E770470FF206 +:1024E0005C610620F7F7B6B930B583B00020ADF8CF +:1024F00006008DF80400EFF727FD04460FF2BC50EC +:10250000F0F70DFC002513E0DFF8E8032818017C44 +:102510008DF80610007F8DF8070002230DF10602EA +:102520008C210720F0F744FC002844D06D1CEDB24C +:102530000A2DE9DB0120009001AB05228C21072048 +:10254000F0F774FC002836D09DF8040040F001003C +:102550008DF8040005208DF806000DF106059DF8A4 +:102560000400687002230DF106028C210720F0F7A9 +:102570001FFC00281FD0012000900DF1060300224F +:102580008C210720F0F752FC002814D09DF804009D +:1025900040F080008DF8040005208DF806009DF8BD +:1025A0000400687002230DF106028C210720F0F769 +:1025B000FFFB002801D100203EBD00221146084645 +:1025C000F0F76EFD94F87A00002804D14FF48051A2 +:1025D0000020F0F757FD01203EBD7CB50020ADF88E +:1025E00006008DF804000FF2DC40F0F798FB4FF482 +:1025F00080510020F0F744FD0025BE4C01E06D1C29 +:10260000EDB20A2D17DA062DF9D0072DF7D0082DD7 +:10261000F5D02819017C8DF80610007F8DF8070091 +:1026200002230DF106028C210720F0F7C1FB0028E0 +:10263000E5D1002076BDA16B0FF29040F0F76FFB63 +:10264000A06B012856D1FF268DF806600DF1060516 +:102650005420687002230DF106028C210720F0F748 +:10266000A7FB002801D1002076BD8DF806604D2023 +:10267000687002230DF106028C210720F0F798FB09 +:10268000002801D1002076BD45208DF806000520E8 +:10269000687002230DF106028C210720F0F788FBF9 +:1026A000002801D1002076BD44208DF806000020CE +:1026B000687002230DF106028C210720F0F778FBE9 +:1026C000002801D1002076BD45208DF806000020AD +:1026D000687002230DF106028C210720F0F768FBD9 +:1026E000002801D1002076BD0FF2F030F0F717FB83 +:1026F0000020A0630120009001AB05228C2107205F +:10270000F0F794FB002801D1002076BD9DF804006D +:1027100000F07F008DF80400012301AA8C2107201E +:10272000F0F746FB002801D1002076BD0120009083 +:1027300001AB05228C210720F0F778FB002801D19E +:10274000002076BD9DF8040040F001008DF80400E3 +:1027500005208DF806009DF804008DF8070002237F +:102760000DF106028C210720F0F722FB002801D191 +:10277000002076BD0120009001AB00228C210720B3 +:10278000F0F754FB002801D1002076BD0022012182 +:102790001046F0F785FC012076BD00B583B000201F +:1027A000ADF806008DF804000FF23C30F0F7B7FAF0 +:1027B0000120009001AB05228C210720F0F736FBA9 +:1027C000002815D09DF8040040F080008DF804002A +:1027D00005208DF806009DF804008DF807000223FF +:1027E0000DF106028C210720F0F7E2FA002801D152 +:1027F00000200EBD002211460846F0F751FCEFF70D +:10280000A3FB90F87A00002804D14FF480510020F7 +:10281000F0F738FC01200EBD00B583B00020ADF804 +:1028200006008DF804000120009001AB05228C21E8 +:102830000720F0F7FBFA002801D100200EBD9DF81B +:10284000040040F080008DF8040005208DF806009B +:102850000DF1060041789DF80420114341700223D8 +:102860000DF106028C210720F0F7A2FA002801D111 +:1028700000200EBD01200EBD38B50C460021ADF87C +:10288000001008218DF8001000AD6870022300AA26 +:102890008C210720F0F78CFA002801D1002032BDEE +:1028A00009208DF800006C70022300AA8C210720FB +:1028B000F0F77EFA002801D1002032BD012032BDA0 +:1028C00038B504460F4D012000902B4604228C2180 +:1028D0000720F0F7ABFA002805D10FF21420F0F72B +:1028E0001EFA002032BD28782070012032BD000081 +:1028F000000000207CA50020F51F0208A186010031 +:10290000A0860100F0FE00202DE9FC410446884627 +:10291000EFF71AFB0546F0F788F9064600208DF818 +:1029200004000120009001AB00228C210720F0F769 +:102930007DFA002803D00FF2C410F0F7F0F905F289 +:1029400076077A88B5F876100FF2B810F0F7E7F945 +:102950004146601CFFF7B4FFB5F8761062789142EB +:102960008041C00F20702078307596F81A01002839 +:102970001AD1307D002861780AD00FF29810F0F754 +:10298000CEF9012030757988FF20FFF775FF2AE026 +:102990000FF28810F0F7C3F9002030750146B5F842 +:1029A0007600FFF769FF1EE0607879280CDB61781C +:1029B0000FF27010F0F7B3F9012020703075642128 +:1029C000FF20FFF759FF0EE0607864280BDA61788A +:1029D0000FF25C10F0F7A3F900202070307501466B +:1029E0007820FFF749FF0120BDE8F68110B582B0DD +:1029F0000020ADF80000EFF7A7FA08218DF80010CD +:102A000000ACB0F876006070022300AA8C21072089 +:102A1000F0F7CEF9002801D1002016BD09208DF86D +:102A2000000000206070022300AA8C210720F0F72C +:102A3000BFF9002801D1002016BD012016BD80B5C8 +:102A40000FF21C110720F6F705FF0FF238110A20CC +:102A5000BDE80440F6F7FEBE3D3E472025642C202D +:102A600025642C2025642C20256400003D3E47452C +:102A7000500000003D3E47454F0000003D3E4745A9 +:102A8000204F46003D3E4543000000003D3E475379 +:102A90002D524631000000003D3E4765737452657B +:102AA000670000003D3E4745204355202564000057 +:102AB0003D3E474520535445000000003D3E5052E6 +:102AC000500000003D3E50524F0000003D3E50720D +:102AD0006F78695365743D25640000003D3E507277 +:102AE0006F786952656700003D3E50524300000018 +:102AF0003D3E50522D524631000000003D3E5043B5 +:102B00004B0000003D3E55703D25642C4C6F3D252B +:102B1000640000003D3E5031202564003D3E5032AF +:102B20002025640053756E5031202564000000009C +:102B300053756E5032202564000000009D2002086D +:102B400031210208292202089D220208000000000B +:102B5000092302080000000037240208D1240208DB +:102B6000E9240208DB2502089B270208192802082D +:102B70000000000009290208ED29020800000000F9 +:102B800000000000E9240208DB2502089B27020858 +:102B90001928020800000000C1280208ED290208D7 +:102BA000000000000000000000B583B000208DF898 +:102BB00004000120009001ABF422EC210520F0F785 +:102BC00035F9002801D100200EBDDFF838099DF845 +:102BD00004104909417701200EBD00B583B00020E3 +:102BE0008DF804000120009001ABF422EC210520B7 +:102BF000F0F71CF9002801D100200EBD9DF804005B +:102C0000C0F38200DFF8FC18887701200EBD80B584 +:102C10000021ADF80010F4218DF80010DFF8E41861 +:102C20004A7F897F890001EB421140188DF801002D +:102C3000022300AAEC210520F0F7BAF8002801D100 +:102C4000002002BD012002BD7CB5064600208DF8A3 +:102C5000040004460546ADF806000120009001ABD3 +:102C6000F422EC210520F0F7E1F8002801D12046FC +:102C700076BD042E12D8DFE806F00306090C0F001B +:102C8000012425460AE00124022507E0012403254A +:102C900004E00124042501E002240525F4208DF838 +:102CA00006009DF8040000F01F0040EA441000F008 +:102CB000E300A90001F01C0108438DF804008DF821 +:102CC000070002230DF10602EC210520F0F770F851 +:102CD000002801D1002076BDFFF766FF002801D152 +:102CE000002076BDFFF779FF002801D1002076BDD6 +:102CF000012076BD10B588B001A81821F0F726FA9A +:102D00001820009001AB8822EC210520F0F78EF806 +:102D1000002801D100204BE0DFF8E8179DF80520DE +:102D20009DF8043043EA02220A8001AA9DF9073087 +:102D3000947844EA03234B8092F90530147944EAED +:102D400003238B809DF80B30947944EA0323CB80D6 +:102D50009DF90D30147A44EA03230B819DF90F305D +:102D6000947A44EA03234B819DF91130147B44EAA1 +:102D700003238B819DF91330947B44EA0323CB8199 +:102D80009DF91530147C44EA03230B829DF917301A +:102D9000947C44EA03234B829DF91930147D44EA64 +:102DA00003238B829DF91B30927D42EA0322CA8263 +:102DB00008B010BD10B582B001200090DFF8483790 +:102DC000D022EC210520F0F731F80446012C0AD17D +:102DD000FFF790FF002804D00320FFF735FF0028FD +:102DE00001D1002016BD204616BD80B5DFF81C07B6 +:102DF000012101720320FFF70AFF002801D1002002 +:102E000002BD012002BD10B5002802D0012812D059 +:102E100025E0DFF8F84604F10C0000F05EFA002827 +:102E20001DD12078002817D16078002814D1A0780F +:102E3000002811D113E0DFF8D44604F10F0000F0B0 +:102E40003DFA00280BD1E078002805D12079002830 +:102E500002D16079002802D02046002101720120B1 +:102E600010BD80B50020FFF7D2FE002801D1002060 +:102E700002BD012002BD80B50020FFF7C8FE00287A +:102E800001D1002002BD012002BD000070B52DED72 +:102E9000048B86B09FED430B8DED020B8DED000B87 +:102EA0008DED040BEDF78EFC41EC180BDFF854664A +:102EB00053EC182B0020DFF85816EDF7E9F804461C +:102EC0000D463088EDF788FC0022DFF84836EDF734 +:102ED000DFF802460B4620462946EDF747FA04463E +:102EE0000D46B6F90200EDF76DFC22462B46EDF7D4 +:102EF000CFF8CDE9020153EC182B0020DFF81816AB +:102F0000EDF7C6F841EC180B9FEDB19B3088EDF75B +:102F100063FC53EC192BEDF7BBF802460B4651EC62 +:102F2000180BEDF723FA04460D463088EDF754FCF4 +:102F300053EC192BEDF7ACF802460B4651EC180B8D +:102F4000EDF714FA22462B46EDF7A2F804460D469B +:102F5000B6F90400EDF736FC22462B46EDF798F85B +:102F6000CDE90001DDE90223DDE90001EDF78AF991 +:102F7000F9F790F8B061DDE90223DDE90001EDF732 +:102F800081F90022DFF89435EDF7F8FACDE9040174 +:102F9000DDE9040106B0BDEC048BBDE8704005F02E +:102FA000ADB900000000000000000000F8B52DEDF4 +:102FB000048B86B007469FEDBF0B8DED000B8DEDAA +:102FC000040B8DED020BDFF83C65B069EDF7FAFB01 +:102FD0000022DFF84C35EDF75BF80022DFF84435CE +:102FE000EDF750F9CDE900019FEDD58BDDE9002328 +:102FF000DDE90001EDF74CF804460D46B6F9100086 +:10300000EDF7E0FB22462B46EDF742F853EC182B88 +:10301000EDF73EF8CDE90401B6F90E00EDF7D2FB6D +:10302000DDE90023EDF734F800224FF08043EDF79F +:103030002FF8DDE90423EDF725F9CDE90401DDE9F9 +:1030400004230020DFF8E014EDF722F804460D46D3 +:10305000B6F90C00EDF7B6FB0022DFF8D034EDF73F +:1030600017F822462B46EDF70DF9CDE904019FED47 +:10307000B69BB6F90A00EDF7A5FBDDE90023EDF7F5 +:1030800007F8DDE90023EDF703F853EC192BECF713 +:10309000FFFF04460D46B6F90800EDF793FBDDE9A6 +:1030A0000023ECF7F5FF22462B46EDF7EBF853EC47 +:1030B000192BECF7EDFFCDE90001DDE9002351EC20 +:1030C000180BECF7E5FF0022DFF86434EDF7DAF8CF +:1030D00004460D46F088EDF77FFB22462B46ECF7C1 +:1030E000D7FFCDE90001DDE900230020014605F00E +:1030F00043F968D03846EDF765FB02460B460020E1 +:10310000DFF83014EDF732F9CDE90201DDE90423EF +:103110000020DFF82414ECF7BBFF02460B46DDE984 +:103120000201EDF723F90022DFF81034ECF7B0FFCD +:10313000DDE90023EDF722FACDE90201B6F9160028 +:10314000EDF740FBDDE90223ECF7A2FFDDE9022306 +:10315000ECF79EFF00224FF07853ECF799FFCDE992 +:103160000001B6F91400EDF72DFBDDE90223ECF7C1 +:103170008FFF53EC182BECF78BFFCDE90401DDE951 +:103180000023DDE90401EDF77DF804460D46B6F9AC +:103190001200EDF717FB22462B46EDF773F80022DD +:1031A000DFF89C33ECF774FFDDE90223EDF76AF8F2 +:1031B000CDE90201DDE9020106B0BDEC048BBDE8FA +:1031C000F44005F09BB806B0BDEC048BF4BD0000E4 +:1031D000000000000000203F2DE9504387B0044666 +:1031E0000020019000900146CDE90201CDE90401E3 +:1031F00020786178090141EA0030A17840EA111095 +:1032000000900098FFF742FECDE90401E0782179B3 +:10321000090141EA0030617940EA111001900198FA +:10322000FFF7C4FECDE90201DDE902012070DDE90E +:10323000020100B200126070DDE902010014A0700A +:103240000020E070BF4ADDE904016426A6FB008986 +:1032500006FB0199C2E90089D2E900012071D2E997 +:10326000000100B200126071012007B0BDE8508378 +:1032700070B50446A54D05F10C00FFF7ADFF0646FD +:10328000287A002805D1062229462046ECF7C2FEFE +:103290000BE0062205F10C012046ECF7BBFE0622EE +:1032A00005F10C012846ECF7B5FE012028723046E6 +:1032B00070BD0000000000000000000080B5032188 +:1032C00000910346F722EC210520EFF7AFFD00281F +:1032D00001D1002002BD012002BD80B50321009173 +:1032E0000346FA22EC210520EFF7A0FD002801D1CA +:1032F000002002BD012002BD30B585B00021029141 +:103300000A460B46CDE9002301784278120142EAD1 +:103310000131807841EA101002900298FFF7B6FD63 +:10332000CDE90001DDE900016422A2FB004502FBBA +:1033300001558448C0E90045012005B030BD0000BA +:10334000000000000000003F000000000000C03E40 +:10335000F0B4012100226B4B1C88002C2BD1B3F957 +:103360000240002C27D1B3F90440002C23D1DC8883 +:10337000002C20D1B3F90840002C1CD1B3F90A402D +:10338000002C18D1B3F90C40002C14D1B3F90E4025 +:10339000002C10D1B3F91040002C0CD1B3F912401D +:1033A000002C08D1B3F91440002C04D1B3F9164015 +:1033B000002C00D10A461C8844F63825AC426FDB4D +:1033C0001C8848F6B905AC426ADAB3F9024045F206 +:1033D000F055AC4264DB47F23154B3F90250A542D8 +:1033E0005EDAB3F90450584EB54259DBB3F90450D4 +:1033F000564EB54254DADD8847F23056B5424FDBBF +:10340000DD884AF21146B5424ADAB3F90850504E07 +:10341000B54245DBB3F908504E4EB54240DAB3F938 +:103420000A504D4EB5423BDBB3F90A50B5F5FA5F91 +:1034300036DC4A4DB3F90C60AE4231DBB3F90C60B7 +:1034400044F25167BE422BDAB3F90E6016F5FA7FEB +:1034500026DBB3F90E6040F24D47BE4220DAB3F9E5 +:10346000106016F57A7F1BDBB3F91060B6F57A7F32 +:1034700016DCB3F91260B3F91260B3F91460384F77 +:10348000BE420DDBB3F9146042F21177BE4207DA97 +:10349000B3F91660AE4203DBB3F91630A34200DB8A +:1034A000521CD2B2022A00D1002101700846F0BCA1 +:1034B000704770B582B00C46002506281FD12948F8 +:1034C0004069204ED6E90023002B01D1002A05D007 +:1034D000017F00290BD0407A002808D100A8294696 +:1034E0000160FFF7FAFE054600A8FFF705FFD6E9E1 +:1034F00000012070D6E9000100B200126070284679 +:1035000076BD0000DC700020F8700020E83100205B +:103510000000103F0000503F0000E03E0000B440BB +:103520000000E03F0040EFC00000D03F0000F0404E +:103530000000F03F000030410000303F006AB8401A +:103540000000B03FC071002048F4FFFF19FCFFFFEE +:1035500056CDFFFFC1E0FFFF78ECFFFFF0D8FFFF83 +:10356000D08AFFFF000000200FF208010520F6F7C7 +:1035700071B90000B52D0208EB2D0208632E020878 +:10358000772E0208072E02087132020800000000A0 +:1035900051330208B334020880B500A80FF2741149 +:1035A0000A680260032300AA20210920EFF700FC2B +:1035B000002801D1002002BD4E48007802BD80B530 +:1035C00000A800210160032300AA20210920EFF7B1 +:1035D000EFFB002801D1002002BD4748007802BD62 +:1035E00080B500A80FF230110A680260032300AA18 +:1035F00020210920EFF7DCFB002801D1002002BDCB +:103600003E48007802BD80B500A80FF210110A688C +:103610000260032300AA20210920EFF7C9FB00283C +:1036200001D1002002BD3648007802BD2DE9FE43DD +:1036300005460124264627464FF0000819E001A858 +:1036400099F8011015F8182012EB012120F8181034 +:1036500030F918002B4901EB4801B1F904108842F8 +:1036600000D00026012800DB002708F101085FFADE +:1036700088F8B8F1040F13DA05EB4809022000902E +:103680004B4608F10802D2B220210920EFF7CEFB09 +:103690000400D4D10FF28800EFF741FB002026E0B0 +:1036A000012E01D0012F18D1164D95F900000628E2 +:1036B0001CDA6888401C688080B20A2816DB0FF28A +:1036C0006800EFF72CFBFFF78BFFFFF778FF2878F8 +:1036D000401C28700020688008E00A4D082201A9DB +:1036E000281DECF797FC0020688028702046BDE874 +:1036F000FE830000FCA50020FDA50020FEA5002003 +:10370000FFA500202CFE00200FF224010920F6F76F +:10371000A1B800000001000000010000000100004D +:103720004C53332D524631005246203200000000E7 +:1037300099350208BF350208E1350208073602084C +:10374000000000002D36020800000000000000000C +:10375000000000008D488368DBB200F1160201789A +:103760000820EFF725BB89488368DBB200F1180217 +:1037700001780820EFF71CBBF0B4854B5C7800257E +:1037800000E06D1CEDB28D420ED22E5C7440082616 +:1037900002E03C46E4B2761EF3D067002406F8D57A +:1037A0001C787C40E4B2F6E7944201D1012000E0AD +:1037B0000020F0BC7047CDE7FEB504460527734DE9 +:1037C00000200090062301AA29780820EFF772FB59 +:1037D0000646012E03D00FF2D410EFF7A0FA012E07 +:1037E000EED13846471E80B20028E9D001AFBA7842 +:1037F000022101A8FFF7C0FF002807D07A79022133 +:103800000DF10700FFF7B8FF002805D10FF2941063 +:10381000EFF785FA0020FEBDA888401CA880E96863 +:103820007A789DF8043042EA032241F217135A4392 +:10383000921341F29413D21A01FA82F1E9602A69D3 +:103840003B79FF7843EA072340F6C4177B439B1379 +:1038500002FA83F32B614F4A126A577F002F16D06A +:1038600000B291FBF0F193FBF0F00023EB602B61D1 +:10387000AB80217009B209126170A07000B2001211 +:10388000E070B2F95600012803DB012002E00020BD +:10389000FEBD184620712046EDF782FD3046FEBD84 +:1038A00030B583B0394CA368DBB204F11A02217839 +:1038B0000820EFF77DFA00200090032301AA217869 +:1038C0000820EFF7F7FA0546012D05D00FF2E400C6 +:1038D000EFF725FA28463EBD01ADAA78022101A8DE +:1038E000FFF74AFF002801D100203EBD6878A1788B +:1038F00008406178884201D101203EBD00203EBDD4 +:1039000022480021C160016181802CE701207047BD +:103910007CB504460020207006251C4EB368DBB23F +:1039200006F11A0231780820EFF742FA00200090E1 +:10393000032301AA31780820EFF7BCFA0646012ECE +:103940000ED02846451E012808DBEFF76EF91E2130 +:10395000EFF724FB2846451E0128DEDA002076BD5D +:103960009DF80620022101A8FFF706FF002808D1D4 +:10397000EFF75BF91E21EFF711FB03A0EFF7CFF98B +:10398000E8E72670012076BD43524300CC31002089 +:1039900048320020000000200FF220010820F5F737 +:1039A00059BF000054482D524632000054482D5251 +:1039B0004631000054482D5046310000A13802081D +:1039C000013902080D39020800000000B73702086B +:1039D000B937020800000000113902080000000099 +:1039E00038B500200246DFF8A44403E004EB800170 +:1039F0008A63401C0928F9DB1046E066A066642053 +:103A000020606060DFF88804A060B5EE000A84EDF5 +:103A1000030A84ED040A84ED050A84ED060A84EDA8 +:103A2000070ADFF87004206205206062A062104679 +:103A300003E004EB80018A63401C0928F9DB10468F +:103A40006067A067E06704F180057C220146284694 +:103A5000ECF7D6FA0C22002104F12C00ECF7D0FA96 +:103A6000256731BD2DE9F04106460F4690461C46BC +:103A7000DFF8185485ED0B0AF0EE601AF1EE611ACA +:103A8000C5ED0C1AB1EE410A85ED0D0A0A2205F1C9 +:103A90002C01286F00F004FA00F040F8022801D051 +:103AA00004280ED1A86F401CA867142198FBF1F1DF +:103AB000884202DB0020E8670CE0E86F401CE86702 +:103AC00008E0082801D0102804D1E86F401CE867FE +:103AD0000020A867142096FBF0F0A96F814201DB5B +:103AE00001206867142097FBF0F0E96F814201DB49 +:103AF00002206867686F012803D0022801D00020E7 +:103B00006867696F080005D021700021A967E9671F +:103B1000696701E000212170BDE8F0812DE9F843DB +:103B20002DED048B9FED9F8AD84C002020666066A7 +:103B3000E06E461CE666A76ED74D0A2F36DAD4F83B +:103B400070900A220021484600F0C3F980460A22FC +:103B50000121484600F0BDF904EB870106EB86021F +:103B600092008A63012F1FDB98ED000AD0ED000A56 +:103B700030EE600AD8ED010A90ED011A70EEC10A2C +:103B800098ED021AD0ED021A31EE611A05EB8700AA +:103B900020EE000A00EEA00A01EE010A80ED060AFE +:103BA0008A6B496B511AC163781CA0660A2E01DA30 +:103BB00003202867A06E0A28C0F2DD80401EA066A0 +:103BC0000A221146206F03F0ABF985ED040A0A22A0 +:103BD0001146206F03F0C2F985ED050A0A2211464D +:103BE000206F03F0D9F985ED060A002006E005EB09 +:103BF0008001D1ED070A38EE208A401C0928F6DB47 +:103C0000D5ED040AB2EE041AC0EE818AD5ED050A9C +:103C100080EE819AF2EE040AC0EE209AE06E0A2845 +:103C200005DBC5ED018A85ED029AC5ED039A0026F4 +:103C30000FE00A22C6F1090109B2206F00F049F92C +:103C400095ED031AD5ED020A95ED010A00F0ACF8E6 +:103C5000761C0A2EEDDB606A216E88423ADAA06B90 +:103C60002978002908D1686601212970C5ED018AEB +:103C700085ED029AC5ED039AA16A626E91420CDA53 +:103C8000697800290BD1A86601216970C5ED018A08 +:103C900085ED029AC5ED039A01E000216970216863 +:103CA000AA6E821A914208D26A78002A05D00020B2 +:103CB000A870E870012028674CE06A6E801A814283 +:103CC00046D22878002843D00020A870E87002204F +:103CD00028673FE0C5ED018A85ED029AC5ED039A9C +:103CE000002028706870A878002801D10120A870F1 +:103CF0009FED640A28EE000AB5EE400AF1EE10FAD4 +:103D000003DC9FED610A28EE000AD4ED020AB3EE4F +:103D1000041A60EE810AF4EE400AF1EE10FA07D5BB +:103D2000E878002806D1A06BE8660120E87001E081 +:103D30000020E8706068A0F5FA70A16BEA6E891A3D +:103D4000884205D2E878002802D00420286701E0E4 +:103D50000320286700200CE004EB8001CA6B8A6313 +:103D6000082805DA05EB80010A6ACA614A6C0A6410 +:103D7000401C0928F0DB286F012806D00DD303284A +:103D800007D004D3042806D007E0022006E0042070 +:103D900004E0082002E0102000E00020BDEC048BCD +:103DA000BDE8F28300000000D0ED001A31EEC00A39 +:103DB0003A4981ED000AD0ED011A71EEE00AC1ED39 +:103DC000010AD0ED021A31EEC11A81ED021AB5EEE8 +:103DD000400AF1EE10FA03D5B1EE400A81ED000A77 +:103DE000F5EE400AF1EE10FA03D5B1EE600A81ED6E +:103DF000010AB5EE401AF1EE10FA03D5B1EE410A10 +:103E000081ED020A91ED000A2048D0ED030AB4EEDC +:103E1000600AF1EE10FA13D5D1ED010A90ED041A03 +:103E2000F4EE410AF1EE10FA0AD5D1ED020A90ED56 +:103E3000051AF4EE410AF1EE10FA01D5012200E074 +:103E40000022D0ED060AB4EE600AF1EE10FA14D5A5 +:103E500091ED010AD0ED070AB4EE600AF1EE10FA16 +:103E60000BD591ED020AD0ED080AB4EE600AF1EE2E +:103E700010FA02D5416E491C4166016E5118016667 +:103E80007047000000007A4400007AC4C8F10020A6 +:103E9000000040413333B33E34C1002020FE0020F7 +:103EA0000388934201D30023038003885B1C0380B3 +:103EB0009BB2934201D300220280028802EB4203AC +:103EC00000EB8300001D91EC030A80EC030A012043 +:103ED0007047B0F90030591A09B2002901D511FA1A +:103EE00082F109B201EB410200EB8200001D704734 +:103EF00000B585B002460FF2140100A804F04CFA98 +:103F000000A8F2F752F805B000BD00004F45256447 +:103F100000000000B0F5803F5EDBB0F1807F35DB54 +:103F2000B0F1805F15DBB0F1804F0CDBDFF8381C9F +:103F3000884202DB4BF20450704701160FF2F80280 +:103F4000895C090211E081150FF2EC02895CC9015C +:103F50000BE00FF2E401B0F1806F03DB0215515C5E +:103F6000890102E08214515C490190FBF1F2511881 +:103F7000491C491090FBF1F25118491C491001FBF2 +:103F800001F2904200DA491E084670470FF2A8017C +:103F9000B0F5801F0ADBB0F5800F03DB0214515C23 +:103FA00009010DE08213515CC90009E0B0F5802FD2 +:103FB00003DB0213515C890002E08212515C49006C +:103FC00090FBF1F25118491C491001FB01F290429B +:103FD00000DA491E08467047FF2823DD0FF258011A +:103FE000B0F5805F0BDBB0F5804F03DB0212515C54 +:103FF000491C10E08211515C4908491C0BE0B0F5E6 +:10400000806F04DB0211515C8908491C03E08210B7 +:10401000515CC908491C11FB01F2904200DA491EAB +:1040200008467047002804D40FF20C01405C0009D8 +:1040300070474FF0FF3070470010161B2023272ACF +:104040002D30323537393B3D4041434547494B4C94 +:104050004E505153545657595A5B5D5E60616263CE +:10406000656667686A6B6C6D6E7071727374757675 +:104070007778797A7B7C7D7E808081828384858657 +:104080008788898A8B8C8D8E8F909091929394954E +:1040900096969798999A9B9B9C9D9E9FA0A0A1A263 +:1040A000A3A3A4A5A6A7A7A8A9AAAAABACADADAE89 +:1040B000AFB0B0B1B2B2B3B4B5B5B6B7B7B8B9B9BD +:1040C000BABBBBBCBDBDBEBFC0C0C1C1C2C3C3C4FF +:1040D000C5C5C6C7C7C8C9C9CACBCBCCCCCDCECE47 +:1040E000CFD0D0D1D1D2D3D3D4D4D5D6D6D7D7D898 +:1040F000D9D9DADADBDBDCDDDDDEDEDFE0E0E1E1F1 +:10410000E2E2E3E3E4E5E5E6E6E7E7E8E8E9EAEA50 +:10411000EBEBECECEDEDEEEEEFF0F0F1F1F2F2F3B3 +:10412000F3F4F4F5F5F6F6F7F7F8F8F9F9FAFAFB1F +:10413000FBFCFCFDFDFEFEFF2DE9F0419AB00546BB +:10414000144620461422ECF7FDFB00210A4611E03C +:10415000142055F8213000AF00FB067747F82230D5 +:1041600000AF00FB027040F82630761C491C052E7B +:10417000EEDB521C052A01DA1646F8E7002114206E +:1041800000E01946052980F28A8000AA00FB01227E +:1041900052F821700D464B1C1E4606E0CEF1000C75 +:1041A000E04501DA35467746761C052E10DAB8462A +:1041B000B8F1000F01D5C8F100080DF1000C00FBAB +:1041C00006CC5CF821E0BEF1000FE7D4F446E7E747 +:1041D0008D4218D000260CE052F826700DF1000C2C +:1041E00000FB05CC5CF826E042F826E04CF826708F +:1041F000761C052EF0DB54F8217054F8256044F845 +:10420000216044F825701E4614E0002D11D052F8AC +:104210002650AD0142F8265052F82150AD110FD072 +:1042200052F8265052F82170BF1195FBF7F542F86D +:104230002650761C052E52F82150E6DB002D02D1C7 +:104240004FF0FF3046E054F8216096FBF5F544F856 +:1042500021501D461EE057F826E052F826804FEA0E +:10426000E8084FEAEC0C0CFB08FCAEEBAC1C47F882 +:1042700026C0761C00AF00FB057757F821C0052E3D +:10428000E9DB54F8256054F821700CFB176644F8FC +:1042900025606D1C052DBFF674AF1E46EAE70421AC +:1042A00013E054F8210001EB810200AB03EB820222 +:1042B00052F8262054F826305A43A0EB223044F816 +:1042C0002100761C052EECDB491E002901D44E1C72 +:1042D000F8E700201AB0BDE8F0812DE9F04186B082 +:1042E00000252E462C46234603AF9C469E46984604 +:1042F000A7E8005100AFA7E800511F4604E066455B +:1043000001DB66463B467F1C032F11DA002F04D1E8 +:104310000668354643461C46F5E70FF28C0C17F944 +:104320000CC050F82CC0AC45E9DB65463C46EAE7DA +:1043300003AD012645F8236045F82460464601E0B8 +:10434000761C76B2032E04DA55F82670002FF7D1CA +:1043500001960094029343460EE0AF1807EB8607E0 +:1043600006EB460C01EB8C0C5CF824C0C7F804C0CB +:10437000761C032EF1DB5B1C032B10DA00AC54F827 +:1043800023400FF2240C14F90C5050F825601D0145 +:10439000AE50012E01DA4646AE504646E9E74046A9 +:1043A00006B0BDE8F0810000000305002DE9F24FE2 +:1043B00098B0014602A81822ECF7C4FA002101E0E7 +:1043C000491C49B2032913DA002004E0002342F813 +:1043D0002030401C40B20328F2DA0C220EAB12FB54 +:1043E00001328142F2D14FF4804342F82030F0E7AD +:1043F0000020019024E00C220EA912FB001252F8BA +:10440000241052F8253006FB01F70BFB03FCA7EB49 +:10441000EC07BF1142F824704FEAEB07734307FB28 +:104420000131891142F82510401C0328E3DB02A862 +:1044300008A91822ECF786FA0198401C40B20190B6 +:104440000198062880F2DD8001200024054602271D +:104450000399002900D54942049A002A00D5524206 +:10446000914202DA38460546012702A951F8200098 +:10447000002800D540420699002900D549428842CB +:1044800002DA0124022500270FF2881004EB440110 +:1044900001EB000805EB450101EB000915F80900E7 +:1044A00002A951F8200014F8081002AA52F82110AD +:1044B000401A461015F8080002A951F82000009093 +:1044C0000A2190FBF1F096FBF1F1404301FB010062 +:1044D000FFF720FD00EB80015FEA410B11D03000B7 +:1044E00000D54042000390FBFBF000F580504FEAFE +:1044F000600A5046FFF70EFD064606FB0BF08010E3 +:1045000002D14FF0FF3082E00099090391FBF0FBEC +:1045100015F8090002A951F8200014F8081002AAA1 +:1045200052F82110884201DACBF1000B0BFB0BF0A3 +:104530008011009008A802A91822ECF703FA17F8D6 +:104540000800014602AA52F821107143891117F898 +:10455000092002AB53F822200BFB02F2A1EB6221EF +:1045600008AA42F8201017F8091002AA52F82000F1 +:104570000BFB00F052F821207243921102EB6020F5 +:1045800008AA42F8210015F8080002A951F82000F5 +:1045900006FB0BF189114843011214F8080002AA26 +:1045A00052F820000AFB00F0C1EB203015F809207A +:1045B00053F82220009B5A4300EB223014F80820C5 +:1045C00008AB43F8220015F8090002AA52F82000AF +:1045D0000AFB00F001EB203014F8081052F821100B +:1045E000009A514300EB213015F8091008AA42F84F +:1045F000210015F8080008A9002241F820201046E3 +:1046000013E7189A0EA902A8FFF767FE002019B059 +:10461000BDE8F08F00010201030402040500000060 +:10462000F0B4DFF8402C02F59A7191F9013092F95B +:104630003441012C1CDB5C1E64B2002C01D5143407 +:1046400064B204EB440502EB8504E56C8668AD1B9F +:10465000A66C4768F61B646C0768E41B764304FB92 +:10466000046405FB0544B4F5C87F01DA00202FE09F +:1046700003EB430402EB8403443370C870C34878EF +:10468000401C487040B2142801DB0020487092F8AA +:104690003401401C82F8340140B2142802DB14209B +:1046A00082F8340192F934010A22134690FBF3F3A5 +:1046B00002FB130000280AD191F90100114690FB7A +:1046C000F1F102FB1100401E8041C00F00E000200C +:1046D000F0BC7047DFF88C0B90F934110A2291FB83 +:1046E000F2F1012903D1002180F8341170471146FD +:1046F00080F8341170472DE9F04794B005460E4616 +:104700000027DFF8608B98F9344198F83501A0EB69 +:1047100004094FFA89F9B9F1000F03D509F1140919 +:104720004FFA89F9BA4624E009EB490008EB80000A +:10473000A968C26C891A6A68836CD21A2B68406CAB +:10474000181A524300FB002001FB0100FFF7E2FBB7 +:1047500000A941F82A00C71909F101094FFA89F99E +:10476000B9F1140F01D14FF000090AF1010A4FFA13 +:104770008AFAA245D8DB97FBF4F03060002213469A +:1047800007E000A951F82310091A01FB01225B1C64 +:104790005BB298F934118B42F3DB92FBF1F014B069 +:1047A000BDE8F0872DE9FE4100ACE0C9E0C40C395A +:1047B000002635462C4627460AE053F827C052F813 +:1047C00027E051F82780AEEB080E0EFB0C667F1C2D +:1047D000032FF2DB711306EB9141891322460FE0A0 +:1047E00053F822604E4300AF57F822704FEA663C00 +:1047F00006EB9C4607EBA63600AF47F82260521C3A +:10480000032AEDDB21460CE050F8212000AE56F8DB +:104810002160921B53F8216002FB065502FB024403 +:10482000491C0329F0DB002C02D140F2011008E002 +:10483000280000D54042851205FB05F090FBF4F0FE +:1048400000B2BDE8FE812DE9F0419AB01446002285 +:104850000AAD164602E045F82260521C0F2AFADB28 +:10486000324606E005AD45F8226000AD45F822600D +:10487000521C052AF6DB32460AAE07E00FF6582531 +:10488000555753F8227046F82570521C062AF5DB5E +:104890000025209A1CE005EB45060FF64427F61983 +:1048A0009E5730F9157002EB051C0CEB830CDCF8FD +:1048B00014C00CFB07F70DF1280C4CF82670002FE4 +:1048C00002D0BF124CF826705B1C032BE3DB6D1C7F +:1048D000022D01DA0023F8E70025219B00AF04E058 +:1048E00053F8256047F825606D1C032DF8DB002583 +:1048F0000C261BE002EB051C0CEB830CDCF814C04F +:1049000051F823E054F82380AEEB080E0EFB0C7731 +:104910005B1C032BEEDBBB1230F915707B4300AF41 +:1049200007EB8507FB606D1C6DB2B61C022D15DA16 +:104930001368002B02D14FF0FF3025E030F91570DD +:10494000A7F58067BF0497FBF3F337467FB20DF1FD +:10495000280C4CF8273000273B46DAE705AA00A9C7 +:104960000AA8FFF7E9FB002522980AE005A951F8FB +:10497000251040F8251054F82520511840F825102E +:104980006D1C032DF2DB00201AB0BDE8F0812DE98B +:10499000FE4F002423461D461E4668C00C3802E028 +:1049A00041F825605B1C5BB21D46062DF8DB2346F3 +:1049B00002E042F825605B1C5BB21D46032DF8DB6C +:1049C000DFF8A03803F59A756E7893F83471F61B0A +:1049D00076B2002E01D5143676B2A44616E050F811 +:1049E00027E006EB460803EB880808EB8708D8F8B1 +:1049F0004480C64440F827E07F1C032FEFDB761C81 +:104A000076B2142E00D126460CF1010C93F93471C4 +:104A10004FFA8CFCBC4501DA2746EEE7264606E055 +:104A200050F827E09EFBFCFC40F827C0761C93F969 +:104A300034C176B23746032FF2DB6D78A5EB0C0656 +:104A400076B2350001D514356DB2A64617E005EBF8 +:104A5000450803EB880808EB8708D8F8448050F82D +:104A60002790A8EB090808FB08447F1C032FEEDB06 +:104A70006D1C6DB2142D00D100250EF1010E4FFA00 +:104A80008EFEE64501DA0027F0E794FBFCF4002EE9 +:104A900001D5143676B200250FE052F827E00DF16B +:104AA000000858F8278009FB08F80EEB680E42F85A +:104AB00027E07F1C032FF0DB6D1C93F934716DB27E +:104AC000BD424DDA002710E006EB460C03EB8C0CE0 +:104AD0000CEB870CDCF844C050F827E0ACEB0E0C74 +:104AE0000DF1000E4EF827C07F1C032FECDB761C67 +:104AF00076B2142E00D100264FF0000B5F461AE06C +:104B00004FFA8BFB51F82BE00DF1000858F8278085 +:104B10000DF1000959F82A9009FB08EE41F82BE045 +:104B20000CF1010C0BF1010B4FFA8CFCE246BAF1CF +:104B3000030FE5DB7F1C032F01DABC46F4E74FF0DF +:104B4000000C674606E00DF1000E5EF827E00EFB54 +:104B50000ECC7F1C032FF6DB0027ACEB0409A9E782 +:104B60000020BDE8FE8F000010A8FE7F2DE9F04375 +:104B7000A1B00446002003904FF0FF35064604A87C +:104B8000314601600BAA1AA908A8FFF700FF002808 +:104B900000F1B5800EA91AA8FFF708FC40B2002862 +:104BA00000F1AD800DF110080120A8F80200DFF837 +:104BB000B47605A802900BA801900EA800901AAB3D +:104BC00008AA391D04A8FFF73EFE002800F19780CF +:104BD00003A905A8FFF78FFD03991A29C0F28F805A +:104BE000652904DA64214843039990FBF1F097F9B1 +:104BF000341142F21072129B93FBF1F35343DDF830 +:104C00000CC093FBFCF393FBFCF9169B93FBF1F1B7 +:104C10005143624691FBF2F191FBF2F12160C4F83D +:104C20000490A060039A2261324622753A6C227386 +:104C30003346022201E0521E52B2002A1AD497F9DA +:104C400034C14FF00A0E9CFBFEFCACF1010C0CEBE6 +:104C50004C0C4FFA8CFCBCF1070F01DB4FF0060C3B +:104C600042FA8CFC07EB8C0CDCF810C08C45E2DAC5 +:104C7000531C5BB2012B29DB1A46521E52B201E0D3 +:104C8000521E52B2002A11D44FF0FA0C91FBFCFCD8 +:104C9000BCF1050F01DB4FF0050C07EB820EDEF8CF +:104CA00034E0F4448445EBDB531C5BB2002A44D46B +:104CB00007202075386C834208DB3B64184620735C +:104CC000381D05A91CC91CC0012067E04FF4806095 +:104CD000A8F8020005A802900BA801900EA8009069 +:104CE0001AAB08AA391D04A8FFF7ADFD002806D4A9 +:104CF00003A905A8FFF7FFFC0399012901DA28465B +:104D00004CE0A06003992161B9F57A7F45DD396CEB +:104D1000002901D1B44601E0A1F1010C4FFA8CFC4D +:104D200007EB8C01496B01EBD1714FF4C87299FB11 +:104D3000F2F202EB6101814202DA6FF002002DE033 +:104D400017AB08AA05A9381DFFF72CFDB44632465B +:104D500005E049428D4201DA0D469446521C032A71 +:104D600006DA0EA901EB8201496A0029F1D4F1E7C4 +:104D7000BCF1000F00D10626BCF1010F00D10526C1 +:104D8000BCF1020F00D103262675E72803DA381D8F +:104D900005A91CC91CC0012000E0304621B0BDE8B7 +:104DA000F083DFF8C0140A68002A02D16FF0020015 +:104DB0007047002802D16FF07F007047002206E0A4 +:104DC00001EB82035B689B0020F81230521C032A1F +:104DD000F6DB0020704710B4DFF888140A68002A58 +:104DE00002D16FF0020013E0002802D16FF07F00C3 +:104DF0000EE0002209E030F912305C1003EB9473EE +:104E00009B1001EB82046360521C032AF3DB002039 +:104E100010BC7047DFF84C040168002902D16FF024 +:104E200002007047006C7047DFF838140A68002AE7 +:104E300002D16FF002007047042802D36FF07F00A8 +:104E40007047086400207047F0B589B00C461546DD +:104E50000026DFF810743968002902D16FF00200D3 +:104E600081E0002803D0002C01D0002D02D16FF08A +:104E70007F0078E031463BE0DFF8EC2301EB4103B3 +:104E800002EB4303B3F91CC0B0F900E01CFB0EFCBD +:104E90004FF00A0E9CFBFEFCB3F91E30B0F902E0A5 +:104EA00013FB0EF34FF00A0E93FBFEF3634401EB8A +:104EB000410C02EB4C02B2F92020B0F904C012FB05 +:104EC0000CF2F44692FBFCF2D2184FF47A7392FB88 +:104ED000F3F200AB43F8212000AA52F8212053102E +:104EE00002EB93729210E04B03EB81031A63491CAF +:104EF000032913DA30F9112047F6FF739A4202D0E2 +:104F000012F5004FB8D132463A64D74A02EB81021B +:104F1000126B920000AB43F82120DDE7E048FFF779 +:104F20007FFB002803D003A8FFF720FE06460020E1 +:104F30000AE000A951F8201007EB80025268A1EBAB +:104F4000820124F81010401C0328F2DBFFF762FFF7 +:104F50002860002E06D516F1030F01D1FFF7BAFB2A +:104F6000002000E0304609B0F0BD10B5BD4C201D5A +:104F700000210A460B460EC00FF22C313022EBF70F +:104F8000E1FC0020206484F8340184F8350101201C +:104F90002060002010BD80B520EE000A00EEA00ABF +:104FA00001EE010A10EE100AEBF73AF841EC100B93 +:104FB000EBF738FC51EC100BEBF798FA00EE100A07 +:104FC00001BD000070B52DED068B8CB005460E4678 +:104FD0001446002D00F0A380002E00F0A080002CCD +:104FE00000F09D8095ED021AD5ED010A95ED000ABD +:104FF000FFF7D1FFF0EE408A96ED021AD6ED010AD6 +:1050000096ED000AFFF7C7FF9FED988AF4EE488AF5 +:10501000F1EE10FA00F18380B4EE480AF1EE10FAD6 +:105020007DD4002009AA16E005EB8003D3ED000A29 +:10503000C0EEA80AF1EE600A01EB8001C1ED000AA2 +:1050400006EB8001D1ED000AC0EE800A02EB800180 +:10505000C1ED000A401C03A90328E5DB92ED010A1B +:10506000D1ED028A92ED021A91ED019A69EE010AE0 +:1050700048EEC00ACDED000ADDED090A68EEA00A8F +:10508000DDED031A41EEC10A00ADC5ED010A9DED4B +:10509000031A21EE001A9DED090A09EE401A85ED6A +:1050A000021A9DED000AFFF776FFB4EE480AF1EE12 +:1050B00010FA34D4002008E005EB8001D1ED000A9D +:1050C000C0EE800AC1ED000A401C0328F4DB95ED18 +:1050D000020AD5ED019A69EEA80A40EE490ACDED23 +:1050E000060ADDED030A60EE200A9DED000A40EE9F +:1050F000680A06ADC5ED010A9DED000A20EE091A09 +:105100009DED030A09EEC01A85ED021A9DED060A0F +:10511000FFF741FFB4EE480AF1EE10FA02D56FF046 +:105120007F007BE0002008E005EB8001D1ED000A64 +:10513000C0EE800AC1ED000A401C0328F4DB9FED9D +:105140004CAB9DED000AD5ED010A70EE200A9DEDF5 +:10515000060A39EEC00A03F039F910EE100AEAF730 +:105160005FFF53EC1A2BEAF793FF434A434BEBF7ED +:1051700005FAEBF7BBF92060B1EE490A03F05EF9DE +:10518000B1EE400A10EE100AEAF74AFF53EC1A2B70 +:10519000EAF77EFF384A394BEBF7F0F9EBF7A6F95F +:1051A00060609DED030AB1EE400A03F047F910EE8E +:1051B000100AEAF735FF53EC1A2BEAF769FF2E4A7B +:1051C0002E4BEBF7DBF9EBF791F9A060B1EE680A33 +:1051D000B5EE400AF1EE10FA12D59FED290AD4ED92 +:1051E000010A70EE600AC4ED010AF4EE400AF1EE25 +:1051F00010FA05D59FED2B0A30EE800A84ED010AE6 +:1052000094ED000AB5EE400AF1EE10FA05D5DFED97 +:10521000250A30EE200A84ED000A00200CB0BDEC17 +:10522000068B70BD10B5104C1648206016482061E2 +:10523000164860611648A0601648E0601648606035 +:105240001648A0611222002104F11C00EAF7D8FEE2 +:1052500042F21070A083A084A08502480021016062 +:10526000084610BD90F00020B4FC0020BD37863504 +:105270000000000000806640182D4454FB210940C6 +:10528000000034C36B4F0208154E0208294E020875 +:10529000A34D0208D74D0208494E0208C54F020827 +:1052A000E4FC00200000B4432C010000F4010000E5 +:1052B000E8030000C80000002C010000F401000019 +:1052C000C80000002C010000F40100001E000000D6 +:1052D000140000000F000000000102050609000094 +:1052E00003070A04080B0000002303604360C26048 +:1052F0008160194603E000EB41021382491C826879 +:105300009142F8DB7047024608469168022900DAAC +:10531000704730B4536814688C4208DA591C5160E5 +:1053200002EB430108821168491C116035E08B4291 +:1053300001DB0021516051684B1C536002EB4101BD +:10534000088200210B4606E002EB4304B4F910404A +:1053500001FA84F15B1C9468A342F5DB91FBF4F144 +:1053600000231C4607E002EB4405B5F910504D1B25 +:1053700005FB0533641C9568AC42F4DB93FBF5F345 +:10538000D2689A4202DB084600B206E0401A9A1A36 +:10539000504390FBF3F0081800B230BC7047016036 +:1053A00000218180704770B4B0F90420134604686E +:1053B0000D461E1BB54202DBE318AB4202DA8180C8 +:1053C000084600E0104670BC7047F8B504460D462C +:1053D000002C01D0002D02D16FF07F00F2BD244ED1 +:1053E000D6F8C000002802D16FF00200F2BD0027FD +:1053F00012E034F91710C7EBC70006EBC000FFF747 +:1054000082FF25F81700014606EBC700A830FFF71A +:10541000CAFF25F817007F1C032FEADB0020F2BD2E +:1054200038B50024124D11E00FF2540050F824203A +:105430001421C4EBC40005EBC000FFF755FF0321A6 +:1054400005EBC400A830FFF7AAFF641C032CEBDBBC +:105450000120C5F8C000002032BD064806490160A1 +:105460000649416002480021C0F8C0100846704754 +:10547000E8F30020C0FE002021540208CB530208AC +:105480009000000090000000900000002DE9F04F17 +:105490000646DFF8DC03DFF8DC130160DFF8D81321 +:1054A0000068884236D1DFF8D403016006F11007A6 +:1054B0000020F860B86078603860B8617861386161 +:1054C00074682046002102F0E9FF24D04FF08740A5 +:1054D000214602F0F1FFEAF7A3FD05468946204682 +:1054E000EAF79EFD044688463088EBF775F9DFF849 +:1054F0009023DFF89033EBF741F822464346EAF772 +:10550000C1FE02460B4628464946EBF737F8F6F748 +:10551000C1FD01E0FEE70020B883B4682046002109 +:1055200002F0BCFF22D035882802EBF74BF9824607 +:105530008B462046EAF774FD02460B46DFF840032F +:10554000DFF84013EAF7A4FD044688462846EBF747 +:1055500043F922464346EAF795FE02460B4650467B +:105560005946EBF70BF8F6F795FD00E00020F883BD +:1055700030884FF47A7190FBF1F03884BDE8F08FF9 +:105580002DE9FE4F96B0DFF8F4120968DFF8E82243 +:10559000914200D0FEE71946103100910969009A46 +:1055A00052690792009A92690392009AD2F8009089 +:1055B00052680692009A9268009BDB68189CA48946 +:1055C0000194009CA48B0594009CE48B0894002417 +:1055D0004FF48075059EAD1B0D95019DC5EBC5056E +:1055E0000C95019D05EB450675000B95019D05EB9E +:1055F00085050A95019D05EB45050995009D2D8CB6 +:10560000012DC0F21D810578DFF87062AD19069E8C +:1056100095F80472BE190E9695F8046109EB4607D9 +:105620002D79019E365CDFF854C2664496F804C2B8 +:10563000674402970F9796F8047105EB4705367992 +:10564000019F10F81770DFF834C2674497F804C25E +:105650006544109597F804C106EB4C063F79DDF8D8 +:1056600024C01CF800C0DFF814E2E6449EF804C22F +:10567000664411969EF804C107EB4C079EF804E0BF +:10568000DDF804C010F82CC0DFF8F081E04498F891 +:1056900004C26744129798F804C10EEB4C0C98F8BA +:1056A0000480DDF828E01EF800E0DFF8D091F14436 +:1056B00099F804E2E644CDF84CE099F804C108EB0F +:1056C0004C0C99F804A0DDF82C8018F80080DFF865 +:1056D000AC91C14499F80482E044CDF8508099F827 +:1056E00004C10AEB4C0A99F80490DDF830C01CF8AC +:1056F00000C0DFF888B1E344CDF810B09BF804C2D5 +:10570000E244CDF854A0DDF810C09CF804C109EBC8 +:105710004C09CDF81890DDF810C09CF80490DDF825 +:1057200038C0CCEBCC0B03EB8B03DDF808C04FF09B +:10573000150B0BFB0C33C5EB051C634406EB860C09 +:1057400003EB4C0307EB470C03EB4C030EEB4E0C47 +:10575000634408EB030C0E9B03EBC30302EB8302D1 +:10576000029B4FF02A0B0BFB03222E2303FB052287 +:10577000BB1903EB430302EB03122E2303FB0E22A0 +:105780000BFB08220AEBCA0302EB8303029A05EB28 +:105790004505AA1806EB460502EB450207EB87050F +:1057A00002EB4502CEEB0E15AA18152505FB0822C3 +:1057B000CAEBCA0502EB8502ACF50035089E56B16E +:1057C000089E6918079FC91B7143CE1101EB166132 +:1057D000091207950D46059E66B10D9E039FDDF8E3 +:1057E00014C005FB0CF507FB0655EE1105EB16651D +:1057F0002D120395BDF85C607543012DACBF0835D3 +:10580000083DEE1005EB16752D11DFF87C60B542F2 +:10581000B8BF354605DB47F6BD76B542A8BF47F6AB +:10582000BC75189EF6896643169F27F81650019D91 +:1058300000EBC500641C009D2D8CAC42FFF6E3AE6E +:105840000098C0F800900098069C44600098826020 +:105850000098C36000980161009807994161009821 +:10586000039981610098008C19B0BDE8F08F0000A9 +:1058700000300240C2A507F4CDB5E8B56C2C00207D +:105880001F85EB51B81E19404480FFFF10B40288F9 +:10589000164B98420BD0B0F1804F08D0144CA04268 +:1058A00005D0144CA04202D0134CA04204D14FF6B4 +:1058B0008F7422404C88224302804A68C2620A8860 +:1058C0000285984202D1897A0C4A11800121818295 +:1058D00010BC70470029018803D041F0010101800C +:1058E00070474FF6FE721140018070470000014082 +:1058F0000004004000080040000C0040300001405F +:10590000002A828902D011438181704722EA010175 +:10591000818170470022038A0B4080890840002B58 +:1059200002D0002800D001221046704770B4294AE6 +:10593000294B1C78012C08D102F10804546002F1B3 +:105940002804146000241C7007E002F1280454604D +:1059500002F10804146001241C70204B00249C8078 +:1059600019E0012C14D15C888C420CD202EB440467 +:10597000166836F81550A4F808545C88641C5C80DE +:10598000A4B28C4204D300245C801C720124DC711C +:105990009C88641C9C809D88854218D21C7A002CAF +:1059A000DFD11C888C420CD202EB4404166836F816 +:1059B0001550A4F848501C88641C1C80A4B28C426A +:1059C000E6D300241C8001241C729C71E0E770BCAB +:1059D000704700BFBC520020157200207471002077 +:1059E0004FF4011101600020704730B4C26C53893C +:1059F000D48E92884C30858915FA84F414FA82F298 +:105A000002EB8204620002EB4302C38902F6EB124E +:105A100002EBC302426401B10A60002030BC70474F +:105A200010B500F14804DFF8A802616C814204D18E +:105A3000A16C41F27172914201D3012010BD00218D +:105A400003E0002200F8012B491CA26C9142F8DB14 +:105A5000204602F0DDFE0021A18610BD2DE9F04FA9 +:105A600083B00C4604F14801009101F10806F16B86 +:105A700001F6F805FD21ADF804100CB9FC2023E176 +:105A8000DFF84CA20AF6F8018D4202BF29690AF537 +:105A9000076291423AD1E9680AF65812914202BF70 +:105AA0006968009A914231D169690AF50B629142A5 +:105AB00002BFA9680AF63812914227D1DAF8841891 +:105AC0000AF57472914202BF0AF5F878DAF898186C +:105AD00041451BD1DFF8FC914C4502BFE168DFF87E +:105AE000F821914202BF04F10C07B7F90410B1F597 +:105AF000F07F0BD1B7F9082040F2E111F0328A4271 +:105B0000BEBFB7F90620F0328A4201DB0120DBE09C +:105B100020B10146F022484602F05BFF0098008960 +:105B2000022815D1204600F0FDF868B1B7F90EB093 +:105B3000204600F007F9F88130B9BBF1000F70D0B2 +:105B40002046FFF76DFF6CE0F88918B9B08568E072 +:105B50000120F881E88F98B9204602F0CBFE00289A +:105B60005FD04346F0220021484602F0DEFE0020CE +:105B7000A8870120E8876869016C491C016450E02E +:105B8000A88F012804BF0020A887E8680099B0F812 +:105B90004600A1F84C00A88F20B9204602F0AAFECA +:105BA00000283ED06868808E02281CBF0120B08586 +:105BB0006869016C491C0164B4F8960010B1401E7C +:105BC000A4F896000AF5F8744FF4F07221460AF52D +:105BD000747002F03DFF4346F0220021484602F077 +:105BE000A4FE4FF4907221460AF5B66002F030FF31 +:105BF000284603F024FA284602F0BAFC40B195F892 +:105C00002800C0070FD4284602F084FD002855D193 +:105C10002869C168491CC1604168491C4160012074 +:105C2000A887FD2050E0002000900023E86841682C +:105C30000222284603F040FA686802218186E8685B +:105C4000DAF792FD0400E8681FD1818EC1F3C0210C +:105C500031B3018E2846DAF74EFF08B36869B0F811 +:105C6000401001616968088B50B1284602F06AFC57 +:105C7000E868DBF7D6FA2869C068401CA8630FE023 +:105C80000124284602F022FC0AE06968CA8E521CF0 +:105C9000CA86DBF7C6FA0024688D00F47F40688569 +:105CA000A88F401CA88780B2012806D12869C16846 +:105CB000491CC1604168491C41601CB195F82A002B +:105CC000ADF80400BDF8040003B0BDE8F08F7047E4 +:105CD000C4A9002070F6002004A6002038B50546AF +:105CE000202105F1240003F0D3FC00202C1DC5F871 +:105CF0008400E0676860E082284602F00BFEEF3027 +:105D0000F02290FBF2F0B4F9101000B2C0EB0012D8 +:105D100001EB0210B4F90C1000B28842A8BF401A7F +:105D2000608231BD418AC28A891A09B2002944BF02 +:105D3000B0F91000091809B2F02901DB0120704701 +:105D40000020704738B5044604F1240500F07FF8C0 +:105D50006168491C61600028B5F9001047D021B185 +:105D600001290CD003293FD064E005206880012080 +:105D70002880211D0020CA6F521CCA6732BDB5F9A8 +:105D800002000028F5D0401E688000B20028F0D143 +:105D9000211DB1F91200CA89121A12B2002A44BF99 +:105DA000B1F90C30D218B1F9143012B29A1AF023AA +:105DB00092FBF3F212B2182AA8BF1722C2EB021309 +:105DC000A0EB03100882B1F91000002802D58B89DE +:105DD000181808820220288004F184006168806815 +:105DE000891AC0F874182BE00220288028E00129C5 +:105DF0001ED01FD3032913D01CD2211D488A0A8A22 +:105E0000801A00B2002844BFB1F90C10401800B24B +:105E1000F02190FBF1F004F18401488203202880F6 +:105E200004F18400418A002904BF008A002801D1BE +:105E300000209DE7B5F90000022818BF032898D17B +:105E4000D4F88410491C0120C4F8841032BD2DE917 +:105E5000F84600F10C02C468B2F90A6000F12401AE +:105E600004EB460AB1F91040B0F9660000250023A2 +:105E700008B94FF496604FF0F00C3AF902EBAEEB34 +:105E800004077446BEF1000F48BFCEF1000E754402 +:105E9000012FAEBF4FEA471EC7F1000E4FEA4E1E5C +:105EA0007344BCF1010CE8D1F036568136B2B2F938 +:105EB0000470BE4204BF002656810C822A11B1F93B +:105EC0000640B1F90E601B1204F1010E16FB0436F8 +:105ED00006EB6E0696FBFEFA47F6FF76B245A8BFC4 +:105EE000B24604DA4B4DAA45B8BFDFF82CA1A1F8A1 +:105EF0000EA0B1F90C90B1F90050CA46022D04D1A0 +:105F00004D271AFB07F7BF1103E016271AFB07F707 +:105F10003F11B9F1000F08D0B1F90E903FB24F45D3 +:105F2000B4BF4FF001094FF00009B1F90A7017FB37 +:105F3000042707EB6E0797FBFEFEB645A8BFB646E3 +:105F400004DA344FBE45B8BFDFF8CCE0A1F80AE070 +:105F5000022DB1F90870BE4606D14FF04D0C1EFB64 +:105F60000CFC4FEAAC1C05E04FF0160C1EFB0CFCC1 +:105F70004FEA2C1C002F08D0B1F90A500FFA8CF709 +:105F8000AF42B8BF4FF0010C01DB4FF0000C4CEA00 +:105F90000905B0EB221FB4BF012000202843072CC5 +:105FA000ACBF1024641CCC80B1F912401CB18C81B0 +:105FB00000244C8203E09C005445B8BF4B82B1F9E9 +:105FC0000440B1F90C50671C15FB043303EB670365 +:105FD00093FBF7F3B342A8BF334603DA0D4DAB4250 +:105FE000B8BF0D4B14FB0E2202EB670292FBF7F2D7 +:105FF0008B81B242A8BF324603DA064B9A42B8BF41 +:10600000054A0A81062CACBFC822621C8A80BDE802 +:10601000F28600000280FFFF0180FFFF38B5DFF845 +:1060200088475022002104F13000E9F7E9FF5022AF +:106030000021E9F7E5FF50220021DFF87007E9F7BA +:10604000DFFFDFF86C575022002105F11000E9F75F +:10605000D7FF50220021DFF85C07E9F7D1FF50227B +:106060000021DFF85407E9F7CBFF002020706070B3 +:1060700020716071A070E070A07120816081DFF8F4 +:106080003C07C4F880009FEDC40B84ED040B84ED45 +:10609000060B85ED000B84ED080B85ED020B84EDFE +:1060A0000A0B31BD2DE9F84F2DED088BB0EE408A7B +:1060B000DFF8F446218941182181618947186781F9 +:1060C000A079192809DA401CA07118EE100AE9F726 +:1060D000A7FFDFF8DC26C2E902019FEDAC0AB4EEAF +:1060E000408AF1EE10FAC0F24D81D4ED200AF4EEB0 +:1060F000400AF1EE10FAC0F24581A0791928C0F2E9 +:1061000041812089AF28C0F23D8138EE600ADFF876 +:10611000A05685ED1C0A84ED208A10EE100AE9F7DE +:106120007FFF21F00041DFF89826DFF89836EAF784 +:1061300061FB05D8D5E90201EAF7D8F908EE100AA3 +:106140006678002E04D185ED188A85ED198A52E013 +:10615000D5ED1A8A18EE100AE9F762FF41EC1A0B26 +:106160009FED8B9B95ED180A28EE800A10EE100A21 +:10617000E9F756FF8046894618EE900AE9F750FF86 +:1061800002460B4651EC190BEAF7F0F853EC1A2BC8 +:10619000E9F77EFF42464B46EAF774F8EAF7A6F9BC +:1061A00008EE900AC5ED188A95ED1BAA95ED190A1F +:1061B0002AEE000A10EE100AE9F732FF82468B46FB +:1061C0001AEE100AE9F72CFF02460B4651EC190BA8 +:1061D000EAF7CCF88046894618EE900AE9F720FFE6 +:1061E00042464B46E9F754FF52465B46EAF74AF807 +:1061F000EAF77CF96866BFB2B7F57A7F14DDA0785C +:10620000DFF8C41501EB80016A6E8A62401CA07041 +:10621000C0B2142801D10020A070E078142801DA5F +:10622000401CE0700020608194F800904F4605EB20 +:106230008708B246DFF87CB5BAF1140F27D1D8ED44 +:10624000048A18EE900AE9F7EBFE02460B46D4E901 +:106250000401EAF78BF8C4E9040128EEA80A10EE5D +:10626000100AE9F7DDFE02460B46D4E90601EAF71B +:106270007DF8C4E906015BF82700E9F7D1FE024684 +:106280000B46D5E90001EAF771F8C5E9000188ED90 +:10629000048A18EE100AE9F7C3FE41EC1A0B53EC1E +:1062A0001A2BD4E90401E9F7EDFF41EC190B84ED59 +:1062B000049B28EE080A10EE100AE9F7B1FED4E9B3 +:1062C0000623E9F7DFFF41EC180B84ED068B4A4605 +:1062D000314605F1100000F081F90BEB870080EDED +:1062E000000A10EE100AE9F79BFED5E90023E9F752 +:1062F000C9FF41EC1A0B85ED00AB04EB8700696E1A +:106300000163DFF8C404218920F81710BAF1140FD3 +:1063100001DA701C60706078EAF75EFA41EC1B0BE2 +:1063200051EC190B53EC1B2BEAF728F941EC190B34 +:1063300085ED029B51EC180B53EC1B2BEAF71EF971 +:1063400006460F4653EC192B51EC190BE9F7A0FE4A +:1063500002460B4630463946EAF708F8C4E9080118 +:1063600051EC1A0B53EC1B2BEAF708F9C4E90A01AC +:1063700009F101002070C0B2142801D10020207062 +:1063800000202081BDEC088BBDE8F18F0100FA43AD +:10639000000000000000F03F0000000000000000CE +:1063A0002DE9F0412DED068BF0EE408A4FF000080C +:1063B0004546DFEDB69A9FEDB59A9FEDB48ADFF8BA +:1063C000E8637478142C40F00281F0780528C0F25C +:1063D000FE80F5EE408AF1EE10FA40F3F88096ED7B +:1063E00008AB51EC1A0BDFF8E423DFF8E433E9F7EC +:1063F0002DFF02D29FEDC9AA0EE0EAF7FBF909D8FA +:106400004FF06632DFF8CC33E9F720FF02D29FED80 +:10641000A0AA01E09FED9FAAB078411E00D51431DB +:10642000001F00D51430DFF8A07307EB810191ED58 +:106430000A0A07EB8000D0ED0A0A30EE600A10EE7F +:10644000100AE9F7EDFD21F00041EAF74FF800EE00 +:10645000100ADFED910AB4EE600AF1EE10FA10DBDB +:106460001AEE100AE9F7DCFDD6E90A2323F000430F +:10647000E9F7ECFE05D221463078401E00F00EF917 +:106480008046B8F1000F284600F09C8004E037F801 +:1064900011104D19ADB2401C80B201461429F6DB33 +:1064A0002846EAF799F9DFF83023DFF83033E9F7C7 +:1064B000EFFDEAF71BF808EE100A18EE900AE9F76C +:1064C000AFFDDFF81C23DFF81C33E9F7E1FDEAF745 +:1064D0000DF800EE100A28EE008A3078411E00D533 +:1064E00014317278801A00D5143006EB810191EDD9 +:1064F0000C0A06EB8000D0ED0C0A30EE600AFFEECD +:10650000000A20EE200A10EE100AE9F789FDB64ACB +:10651000B64BEAF733F8E9F7E9FF08EE900AF4EE34 +:10652000488AF1EE10FA02DBDFED588A11E028EE1E +:10653000080A08EEE80A10EE100AE9F771FD41ECCE +:10654000100BEAF76FF951EC100BE9F7CFFF09EEEA +:10655000900A3079954988EEA90A01EB800282ED14 +:10656000000A401C3071C0B2142801D100203071E3 +:106570007079142801DA401C7071002006E001EBEC +:10658000800292ED000A39EE009A401C727913469F +:1065900080B29842F3D3B2EE040A29EE000A00EE6C +:1065A000902AF8EE600A80EE200A10EE100AE9F751 +:1065B00037FD864A8E4BE9F76BFDE9F797FF08EE4A +:1065C000100A01E030717071B0EE480A01E09FEDF1 +:1065D0002F0ABDEC068BBDE8F081000038B52DED2B +:1065E000048B9FED2A8A9FED290ADFED280ADFED53 +:1065F000278A00231AE0142C00DB143C01EE103A29 +:10660000B8EEC11A31EE088A50F8244001EE904AE3 +:1066100030EE210A41EE210A13FB03F401EE104A89 +:10662000B8EEC11A71EE288A5B1CDBB20C46A3429D +:1066300005DA141B1C19641CDDD51434DEE701EEE9 +:10664000101AB8EE419A69EE200A48EE400A10EEA0 +:10665000900AE9F7E5FC04460D4629EE280A08EE03 +:10666000480A10EE100AE9F7DBFC624A624BE9F7D0 +:1066700009FE02460B4620462946E9F77FFFE9F767 +:1066800035FF00EE100ABDEC048B31BD00000000A8 +:10669000A69B443BCDCCCC3D90C2F53CF8B5002444 +:1066A000002801D5143002E0142800DB14382546F8 +:1066B0002646224609E0DFED190AB4EE600AF1EE43 +:1066C00010FA01DB761CB6B2521C431AD2B217463E +:1066D000A1F1010C674523DAFB185B1C01D51433CB +:1066E00002E0142B00DB143B5F1C142F00DB143F73 +:1066F000DFF8B4C00CEB870797ED0C0A0CEB8303B3 +:10670000D3ED0C0A30EE600ADFED240AB4EE600A25 +:10671000F1EE10FACFD56D1CADB2D5E76F12033B89 +:10672000591C00D51431DFF880C00CEB800090EDCF +:106730000C0A0CEB8100D0ED0C0A30EE600A10EE72 +:10674000100AE9F76DFC21F00041E9F7CFFE00EEF9 +:10675000100A0B2E0FDBDFED120AB4EE600AF1EE29 +:1067600010FA08DBDFED0F0AB4EE600AF1EE10FA62 +:1067700001D5012410E00B2D0EDBDFED090AB4EE8C +:10678000600AF1EE10FA07DBDFED060AB4EE600AEC +:10679000F1EE10FA00D502242046F2BD6E1203BBC2 +:1067A00090C2753DCDCCCC3E606A0020CC6F0020FD +:1067B000803000207C6F00208C6C002000407E44E4 +:1067C0009B9999999999C93F646C00209A999999D4 +:1067D0009999A93F6666E63FFCA9F1D24D62503F08 +:1067E0000492B06F2711913FB81E85EB51B8BE3FA0 +:1067F0009999B93F8DEDB5A0F7C6B03E0FB480B5FD +:10680000192200210846ECF709F8022801D10220DC +:1068100005E002F041FF2F4800210170012002BC79 +:106820005DF814FB80B5192200210120EBF7F6FF7B +:10683000022801D1022002BD26480021017001205A +:1068400002BD70B58CB02448446BA069E16845185E +:1068500000A8ECF742F81F4E3078012801D1002043 +:106860000BE000A890EC030A02F022FF012803D1FC +:1068700028700120A077307001200CB070BD80B569 +:10688000EBF7CAFF154908601549C0F8F81300F581 +:106890007E7014494160144981600FF21101C1609A +:1068A0000FF24D010161012002BD00000B4800689C +:1068B00090F8E903002801D10020704705E080B579 +:1068C000002003F026FA012002BD084890F90000DC +:1068D00070470000FDFE002000000020D4FE0020D4 +:1068E000FD6702082568020843680208FCFE0020D4 +:1068F00018B430220B7812FB030301241C700B78B0 +:1069000012FB03035C700B7812FB030319249C70C9 +:106910000B7812FB03000022C2700878401C08703C +:1069200011BCCCE710B5DFF8F8440020206001F07E +:10693000D6F8606105206060012010BDDFF8E0043A +:10694000002101600120704770B52DED048B84B0EB +:106950000C4600210391029101910091DFF8C0548F +:10696000012C07D1296090ED008AD0ED018A90EDCD +:10697000029A7BE069684A1E68692B6893421DDAB7 +:106980001E22591C09B200F0CBFA85ED020A1E2224 +:106990002868411C09B2686900F0E0FA85ED040A34 +:1069A0001E222868411C09B2686900F0F5FA85EDDD +:1069B000030A2868401C00EE100A49E018D11E2284 +:1069C00009B200F0ADFA85ED020A1E22696809B22B +:1069D000686900F0C3FA85ED040A1E22696809B2ED +:1069E000686900F0D9FA85ED030A95ED010A2FE0F8 +:1069F0001E2209B200F084FA06461E2200216869B0 +:106A000000F07EFA95ED020AD6ED000A30EE600A3B +:106A1000D0ED000A30EE200A85ED020A95ED040A59 +:106A2000D6ED010A30EE600AD0ED010A30EE200A00 +:106A300085ED040A95ED030AD6ED020A30EE600AF0 +:106A4000D0ED020A30EE200A85ED030A95ED010A29 +:106A5000B8EEC00AD5ED020A80EE808AD5ED040AB0 +:106A6000C0EE808AD5ED030A80EE809AB0EE491A16 +:106A7000F0EE680AB0EE480A01A903A800F022F877 +:106A80000022B0EE491AF0EE680AB0EE480A00A9FA +:106A900002A800F0BCF82868401C286001F013F838 +:106AA000039981610199C161029901620099416272 +:106AB000022C02D0012101F00EF8012004B0BDEC3F +:106AC000048B70BD38B52DED068B04460D46B0EE37 +:106AD00040AAF0EE608AB0EE418AB5EE408AF1EE4F +:106AE00010FA40D5F1EE480A00F01EFB9FEDBF9B67 +:106AF00010EE100AE9F794FA53EC192BE9F7C8FAEB +:106B0000E9F7F4FC00EE100A00F02AF9BDEEC00A25 +:106B100084ED000A2AEE0A0A08EE080A10EE100AAE +:106B2000E9F77EFA41EC100BE9F77CFE51EC100B13 +:106B3000E9F7DCFC00EE900AB1EE680A00F0F4FA26 +:106B400010EE100AE9F76CFA53EC192BE9F7A0FAEA +:106B5000E9F7CCFC00EE100A00F002F9BDEEC00A25 +:106B600085ED000A50E0B5EE408AF1EE10FA4BDDFB +:106B7000F0EE480AB1EE4A0A00F0D6FA9FED9B9B70 +:106B800010EE100AE9F74CFA53EC192BE9F780FAEA +:106B90000022984BE9F776FBE9F7A8FC00EE100A13 +:106BA00000F0DEF8BDEEC00A84ED000A2AEE0A0A03 +:106BB00008EE080A10EE100AE9F732FA41EC100B61 +:106BC000E9F730FE51EC100BE9F790FC00EE900A6B +:106BD000B1EE680A00F0A8FA10EE100AE9F720FA00 +:106BE00053EC192BE9F754FA0022834BE9F74AFBDF +:106BF000E9F77CFC00EE100A00F0B2F8B1EE400AB2 +:106C0000BDEEC00A85ED000ABDEC068B31BD38B57E +:106C10002DED048B04460D46F0EE408AB0EE609AEE +:106C2000B0EE418AB5EE409AF1EE10FA18D5F1EEC9 +:106C3000490A00F079FA10EE100AE9F7F1F96F4A03 +:106C4000784BE9F725FAE9F751FC00EE100A00F05D +:106C500087F8B1EE400ABDEEC00A84ED000A20E0DC +:106C6000B5EE409AF1EE10FA1BDBB1EE680A00F0C7 +:106C70005BFA10EE100AE9F7D3F9604A694BE9F7BD +:106C800007FA00225C4BE9F7FDFAE9F72FFC00EE6A +:106C9000100A00F065F8B1EE400ABDEEC00A84EDBE +:106CA000000AB5EE408AF1EE10FA28D528EEA80ABF +:106CB00009EE090A10EE100AE9F7B2F941EC100BDF +:106CC000E9F7B0FD51EC100BE9F710FC00EE900A6B +:106CD000B0EE480A00F028FA10EE100AE9F7A0F921 +:106CE000464A504BE9F7D4F9E9F700FC00EE100AE8 +:106CF00000F036F8BDEEC00A85ED000A2CE0B5EED6 +:106D0000408AF1EE10FA27DD28EEA80A09EE090AFA +:106D100010EE100AE9F784F941EC100BE9F782FD57 +:106D200051EC100BE9F7E2FB00EE900AB0EE480AD6 +:106D300000F0FAF910EE100AE9F772F92F4A394B10 +:106D4000E9F7A6F9E9F7D2FB00EE100A00F008F81F +:106D5000BDEEC00A85ED000ABDEC048B31BD00001C +:106D6000DFED270A9FED271AB4EE410AF1EE10FA83 +:106D700009DBB4EE600AF1EE10FA04D5DFED220A69 +:106D800030EE200A7047B4EE600AF1EE10FA0BDB29 +:106D9000DFED1E0AB4EE600AF1EE10FA04D5DFED65 +:106DA0001C0A30EE200A7047DFED1A0ADFED1A1ACE +:106DB000B4EE610AF1EE10FA09DBB4EE600AF1EE0E +:106DC00010FA04D5DFED150A30EE200A7047B4EE54 +:106DD000600AF1EE10FA08DBDFED130AB4EE600A88 +:106DE000F1EE10FA01D530EE010A7047E6C1631AE0 +:106DF000DCA54C4000806640008066C0E6C1631A96 +:106E0000FFFF06C4000034C400003444FFFF33C356 +:106E10000000B44301000744010034430000B4C340 +:106E200098FD0020DCA54C4001003444E54A12687E +:106E30009FEDBC0A038800EB4303B3F9043000EE76 +:106E4000903AF8EEE00A92ED001AB8EE411A70EEB0 +:106E5000C10A92ED031AB8EE411AC0EE810A60EE43 +:106E6000800AC1ED000AD2ED010AF8EE600A03883B +:106E700000EB4303B3F9063001EE103AB8EEC11A45 +:106E800070EEC10A92ED041AB8EE411AC0EE810A02 +:106E900060EE800AC1ED010AD2ED020AF8EE600A46 +:106EA000038800EB4300B0F9080001EE100AB8EEC9 +:106EB000C11A70EEC10A92ED051AB8EE411AC0EE81 +:106EC000810A20EE800A81ED020A012070470388C2 +:106ED000934201D30023038003885B1C03809BB291 +:106EE000934201D300220280028802EB420300EBAE +:106EF0008300001D91EC030A80EC030A0120704717 +:106F0000B0F90030591A09B2002901D511FA82F1FD +:106F100009B201EB410200EB8200001D7047000046 +:106F200070B49FEDB80A0023B0F9004010E024B21D +:106F3000250008D405EB450600EB8605D5ED010AD2 +:106F400030EE200A641E24B2002C00D5541E5B1CB7 +:106F50001BB28B42EBDB70BC7047000070B49FED3E +:106F6000A90A0023B0F9004010E024B2250008D49B +:106F700005EB450600EB8605D5ED020A30EE200A4A +:106F8000641E24B2002C00D5541E5B1C1BB28B4225 +:106F9000EBDB70BC7047000070B49FED9A0A0023D1 +:106FA000B0F9004010E024B2250008D405EB4506F6 +:106FB00000EB8605D5ED030A30EE200A641E24B2EC +:106FC000002C00D5541E5B1C1BB28B42EBDB70BC4B +:106FD0007047000010B52DED068BADF5FB6D00A8D8 +:106FE0000FF2282140F2D472E9F7ACFC9FED768BCA +:106FF0009FED779B00ACB5EE400AF1EE10FA48DB4E +:107000009FED75ABDFED760AB4EE600AF1EE10FA93 +:107010001AD510EE100AE9F703F853EC192BE9F72B +:1070200037F853EC182BE9F72DF9F5F733F854F846 +:107030002000E9F7C7FB53EC1A2BE9F729F8E9F729 +:1070400055FA00EE100A68E0F7EE000A80EE800ABA +:1070500010EE100AE8F7E4FF53EC192BE9F718F8E3 +:1070600053EC182BE9F70EF9F5F714F854F8200053 +:10707000E9F7A8FB53EC1A2BE9F70AF802460B468E +:107080005B485849E9F772F9E9F730FA00EE100A5F +:1070900043E0FFEE000AB4EE600AF1EE10FA1CDBEA +:1070A000B1EE400A10EE100AE8F7BAFF53EC192BC4 +:1070B000E8F7EEFF53EC182BE9F7E4F8F4F7EAFFF2 +:1070C00054F82000E9F77EFB0022474BE8F7E0FF89 +:1070D000E9F70CFA00EE100A1FE080EE800A10EECD +:1070E000100AE8F79DFF53EC192BE8F7D1FF53EC9A +:1070F000182BE9F7C7F8F4F7CDFF54F82000E9F7AB +:1071000061FB0022394BE8F7C3FF394A3E4BE9F7F0 +:10711000B9F8E9F7EBF900EE100A0DF5FB6DBDECDF +:10712000068B10BDC3F51C4180B5B0EE401AF5EEDC +:10713000400AF1EE10FA04DD81EE200ABDE80140BC +:1071400048E7F5EE400AF1EE10FA24D581EE200A68 +:10715000B5EE401AF1EE10FA0EDBFFF73BFF10EE32 +:10716000100AE8F75DFF224A224BE9F78BF8E9F7AE +:10717000BDF900EE100A01BDFFF72CFF10EE100A5A +:10718000E8F74EFF1A4A1C4BE9F77CF8E9F7AEF92D +:1071900000EE100A01BDB5EE401AF1EE10FA02DD64 +:1071A0009FED160A01BDB5EE401AF1EE10FA02D5B8 +:1071B0009FED130A01BD9FED130A01BD014908604F +:1071C00070470000E4FE0020000000000000E03FE7 +:1071D0000000000000407F40000000000000503F21 +:1071E0000100803FFB21F93F000050BF0000503FED +:1071F000182D4454FB210940FB2109C0DB0FC93F76 +:10720000DB0FC9BF00000000FB21F9BF0000000038 +:10721000020000000400000006000000080000005A +:107220000A0000000C0000000E000000100000002A +:1072300012000000140000001700000019000000F8 +:107240001B0000001D0000001F00000021000000C6 +:107250002300000025000000270000002900000096 +:107260002B0000002D0000002F0000003100000066 +:107270003300000035000000370000003900000036 +:107280003B0000003D0000003F0000004100000006 +:107290004300000046000000480000004A000000D3 +:1072A0004C0000004E0000005000000052000000A2 +:1072B0005400000056000000580000005A00000072 +:1072C0005C0000005E000000600000006200000042 +:1072D0006400000066000000680000006A00000012 +:1072E0006C0000006E0000007000000072000000E2 +:1072F0007400000076000000780000007A000000B2 +:107300007C0000007E000000800000008200000081 +:107310008400000086000000880000008A00000051 +:107320008C0000008E000000900000009200000021 +:107330009400000096000000980000009A000000F1 +:107340009C0000009E000000A0000000A2000000C1 +:10735000A4000000A6000000A8000000AA00000091 +:10736000AC000000AE000000B0000000B200000061 +:10737000B4000000B6000000B8000000BA00000031 +:10738000BC000000BE000000C0000000C200000001 +:10739000C4000000C6000000C8000000CA000000D1 +:1073A000CC000000CE000000D0000000D2000000A1 +:1073B000D4000000D6000000D8000000DA00000071 +:1073C000DC000000DE000000E0000000E200000041 +:1073D000E4000000E6000000E7000000E900000013 +:1073E000EB000000ED000000EF000000F1000000E5 +:1073F000F3000000F5000000F7000000F9000000B5 +:10740000FB000000FD000000FF0000000101000083 +:107410000301000004010000060100000801000053 +:107420000A0100000C0100000E0100001001000024 +:1074300012010000140100001601000018010000F4 +:10744000190100001B0100001D0100001F010000C8 +:107450002101000023010000250100002701000098 +:10746000290100002A0100002C0100002E0100006B +:10747000300100003201000034010000360100003C +:1074800038010000390100003B0100003D0100000F +:107490003F010000410100004301000045010000E0 +:1074A00046010000480100004A0100004C010000B4 +:1074B0004E01000050010000510100005301000086 +:1074C0005501000057010000590100005B01000058 +:1074D0005C0100005E01000060010000620100002C +:1074E00064010000650100006701000069010000FF +:1074F0006B0100006D0100006E01000070010000D2 +:1075000072010000740100007601000077010000A4 +:10751000790100007B0100007D0100007F01000077 +:10752000800100008201000084010000860100004B +:1075300087010000890100008B0100008D0100001F +:107540008E010000900100009201000094010000F3 +:107550009501000097010000990100009B010000C7 +:107560009C0100009E010000A0010000A20100009B +:10757000A3010000A5010000A7010000A801000070 +:10758000AA010000AC010000AE010000AF01000044 +:10759000B1010000B3010000B4010000B601000019 +:1075A000B8010000B9010000BB010000BD010000EE +:1075B000BF010000C0010000C2010000C4010000C2 +:1075C000C5010000C7010000C9010000CA01000098 +:1075D000CC010000CE010000CF010000D10100006D +:1075E000D3010000D4010000D6010000D701000043 +:1075F000D9010000DB010000DC010000DE01000019 +:10760000E0010000E1010000E3010000E5010000ED +:10761000E6010000E8010000E9010000EB010000C4 +:10762000ED010000EE010000F0010000F10100009A +:10763000F3010000F5010000F6010000F801000070 +:10764000F9010000FB010000FD010000FE01000047 +:10765000000200000102000003020000040200001A +:107660000602000008020000090200000B020000F0 +:107670000C0200000E0200000F02000011020000C8 +:10768000130200001402000016020000170200009E +:10769000190200001A0200001C0200001D02000076 +:1076A0001F0200002002000022020000230200004E +:1076B0002502000026020000280200002902000026 +:1076C0002B0200002C0200002E0200002F020000FE +:1076D00031020000320200003402000035020000D6 +:1076E00037020000380200003A0200003B020000AE +:1076F0003D0200003E020000400200004102000086 +:10770000430200004402000046020000470200005D +:10771000480200004A0200004B0200004D02000037 +:107720004E0200005002000051020000530200000F +:1077300054020000550200005702000058020000E9 +:107740005A0200005B0200005C0200005E020000C2 +:107750005F0200006102000062020000640200009B +:107760006502000066020000680200006902000075 +:107770006A0200006C0200006D0200006F0200004F +:107780007002000071020000730200007402000029 +:107790007502000077020000780200007A02000003 +:1077A0007B0200007C0200007E0200007F020000DD +:1077B00080020000820200008302000084020000B8 +:1077C0008602000087020000880200008A02000092 +:1077D0008B0200008C0200008E0200008F0200006D +:1077E0009002000092020000930200009402000048 +:1077F0009602000097020000980200009902000023 +:107800009B0200009C0200009D0200009F020000FD +:10781000A0020000A1020000A2020000A4020000D9 +:10782000A5020000A6020000A8020000A9020000B4 +:10783000AA020000AB020000AD020000AE02000090 +:10784000AF020000B0020000B2020000B30200006C +:10785000B4020000B5020000B7020000B802000048 +:10786000B9020000BA020000BC020000BD02000024 +:10787000BE020000BF020000C1020000C202000000 +:10788000C3020000C4020000C5020000C7020000DD +:10789000C8020000C9020000CA020000CB020000BA +:1078A000CD020000CE020000CF020000D002000096 +:1078B000D1020000D3020000D4020000D502000073 +:1078C000D6020000D7020000D8020000DA02000051 +:1078D000DB020000DC020000DD020000DE0200002E +:1078E000E0020000E1020000E2020000E30200000A +:1078F000E4020000E5020000E6020000E8020000E9 +:10790000E9020000EA020000EB020000EC020000C5 +:10791000ED020000EE020000F0020000F1020000A3 +:10792000F2020000F3020000F4020000F502000081 +:10793000F6020000F7020000F8020000FA02000060 +:10794000FB020000FC020000FD020000FE0200003D +:10795000FF0200000003000001030000020300001A +:1079600003030000050300000603000007030000F6 +:1079700008030000090300000A0300000B030000D5 +:107980000C0300000D0300000E0300000F030000B5 +:107990001003000011030000130300001403000093 +:1079A0001503000016030000170300001803000071 +:1079B000190300001A0300001B0300001C03000051 +:1079C0001D0300001E0300001F0300002003000031 +:1079D0002103000022030000230300002403000011 +:1079E00010B500F081F8DBF793F9FEF79BFF454CEB +:1079F0004422002104F10C00E8F702FB0A220021D6 +:107A00002046E8F7FDFA0A2200213F48E8F7F8FA95 +:107A10000C22002104F15400E8F7F2FA3B4C4FF439 +:107A2000B67200212046E8F7EBFA1E20208010BD38 +:107A3000DBF76EB980B5DBF79FF9BDE80140FEF7D3 +:107A40007DBF3148F5F73EB810B42F482D491CC80A +:107A50001CC10C380021418010BC704710B5044691 +:107A6000FFF7E4F92088401C2080B4F9021080B2AE +:107A7000884200DB2180012010BD38B5214C256DE6 +:107A800004F154012046FFF7E9FF1E2204F15401DE +:107A90001E48FFF71CFA012104F15400FEF754FFC1 +:107AA000A80705D5002104F15400DBF767F904E0CD +:107AB000012104F15400DBF761F9002104F10C000D +:107AC000BDE8344007E0124870470E49CA6822EA10 +:107AD0000000C860704702681143016070470B489E +:107AE00070470C49086070470A480068002101602F +:107AF000416081604FF48061C16001614161012199 +:107B000001767047146E0020B4710020A466002036 +:107B1000206E00200072002080B5C046C046024A98 +:107B200011001820ABBEFBE7260002000278C9B2A4 +:107B30008A421AB11CBF10F8012FF9E718BF0020C4 +:107B400070470000C9B2830706D0521E22D310F836 +:107B5000013B9942F7D11FE0083A13D302F1040226 +:107B600041EA012141EA014150F8043B121F21BFC3 +:107B70004B40A3F1013C2CEA030C1CF0803FF3D0F6 +:107B8000C9B2001F083210F8013B521E28BF91EA0B +:107B9000030FF8D818BF0120401E704730B4436867 +:107BA00003F0004201211B031B0B436004BF036869 +:107BB000002B08D10DE00368DD0F45EA4404446062 +:107BC0005B000360491E4468E302F4D523031B0BEA +:107BD000436043681A434260084630BC7047000067 +:107BE00070B504460D466068C0F30A5040F2FF715C +:107BF000884207D16068000304BF2068002817D0BE +:107C0000022070BD20B92046FFF7C8FF012867DABF +:107C1000012D0FDB40F2FF71091A8D420AD3606813 +:107C200000284CBF9FED2F0B9FED300B84ED000B18 +:107C3000012070BD4142A942616806DA6FF31E510E +:107C4000401941EA0050606041E0401E6368012233 +:107C5000451962F31F5305F1350001F000416360DF +:107C6000352803D361600020206070BD002215F12B +:107C70001F0F04DA2268236000202035606068420C +:107C800013D0521E25689241C0F12003D2439D407B +:107C900045EAD27225686668C54006FA03F32B43AD +:107CA0002360636823FA00F06060606808436060E6 +:107CB000B2F1004F03D80DD12078C0070AD5206853 +:107CC000401C2060206828B96068401C60604FF04C +:107CD000FF3070BD6068884204BF20680028F6D17C +:107CE000002070BD000000000000F0FF0000000058 +:107CF0000000F07F91FBF2F303FB1211C0E90031A9 +:107D00007047002848BF4042704704B50B46022226 +:107D100000A91818E8F77EF901BD000010B4002290 +:107D2000144620E0DFF8B03543F82240DFF8AC35E8 +:107D300043F82240DFF8A83543F82240DFF8A435A5 +:107D400043F82240DFF8A03543F82240DFF89C35A5 +:107D500043F82240DFF8983543F82240DFF89435A5 +:107D600043F82240521C502ADCDBDFF88C254FF010 +:107D7000FF33536193612346D36193625362D364AB +:107D800093645364936B1364D0651166204610614D +:107D900010BC70472DE9F04F85B005460E461746DA +:107DA0009846DFF85445606E616D084355D0A06D6C +:107DB000411EA165012880F2E380972D0BDB972EF1 +:107DC00009DB972F07DBB8F1970F04DB0520A066CE +:107DD0004FF0FF3057E2A06E411EA166012880F2ED +:107DE000CF800020606660659FED670A00EE908A94 +:107DF000F8EEE00A60EE800AFDEEE00A10EE900A6E +:107E0000FF2190FBF1F300EE907AF8EEE00A60EECD +:107E1000800AFDEEE00A10EE900A90FBF1F200EE0F +:107E2000906AF8EEE00A60EE800AFDEEE00A10EEDD +:107E3000900A90FBF1F100EE905AF8EEE00A20EE85 +:107E4000800ABDEEC00A10EE100A4FF0FF0C90FB46 +:107E5000FCF000F021FA002020619FED4B0A00EEBB +:107E6000905AF8EEE00A9FED491AC0EE810A60EEE2 +:107E7000800AFDEEE00A10EE903A00EE906AF8EE0D +:107E8000E00AC0EE810A60EE800AFDEEE00A10EE24 +:107E9000902A00EE907AF8EEE00AC0EE810A60EED9 +:107EA000800AFDEEE00A10EE901A00EE908AF8EEDD +:107EB000E00AC0EE810A20EE800ABDEEC00A10EE94 +:107EC000100AD4F814C01CF1010F0ED0D4F810E041 +:107ED000BEF1000F09D0D4F84CE0BEF1000F04D47D +:107EE000D4F81CE0BEF1500F35DBD4F850E047F673 +:107EF000FF79A9EB0E09D4F800A00AFB09FA03FBED +:107F00000EFB4FEAEB3B0BEBEA3AC4F800A0D4F8C7 +:107F100004A00AFB09FA02FB0EFB4FEAEB3B0BEB5A +:107F2000EA3AC4F804A0D4F808A00AFB09FA01FB55 +:107F30000EFB4FEAEB3B0BEBEA3AC4F808A0D4F88F +:107F40000CA00AFB09F900FB0EFE4FEAEE3E0EEB19 +:107F5000E93EC4F80CE0D4F82CE00EF10109C4F8B5 +:107F60002C90BEF13C0F13DA972D09DB972E07DB1F +:107F7000972F05DBB8F1970F02DBA9F10100E06252 +:107F80004FF0FF307FE100BF00FEFF4600007F435F +:107F9000622525650125256125685B1B6568521BE7 +:107FA000A568491BE568401B43F6991544F2666EC7 +:107FB000666C0EFB06F6D71A6F43FF1307EBE63627 +:107FC0006664A76C0EFB07F7A1EB000805FB08F839 +:107FD0004FEAE83808EBE737A764D4F84C800EFB8B +:107FE00008FE01EB02089844804405FB08F56D1477 +:107FF00005EBEE38C4F84C80A56B454502DAC4F8B1 +:10800000388003E0C5EB8535ED13A563E56B05F519 +:10801000F85E0EF1FF0ED4F83890F14501DAC4F89D +:1080200038E01CF1010F04D0D4F81CE0BEF1500F71 +:1080300016DB40F2676E0EFB08FE47F6981909FB47 +:1080400005F5ED1305EBEE35E563D4F838E0AEEB5E +:10805000050E40F63D2909FB0EFE05EBEE352564C5 +:108060001CF1010F02D1256B6D1C2563D4F84090E3 +:108070005025C1450EDA1CF1010F0BD1D4F820C0F8 +:108080000CF14F0CAE469CFBFEFE05FB1ECCC4F86B +:1080900014C014E0C84512DA1CF1010F0FD0D4F857 +:1080A00018C01CF1010F0AD1D4F820C00CF1010C4A +:1080B000AE469CFBFEFE05FB1ECCC4F818C0D4F8EF +:1080C00020C0AE469CFBFEFE05FB1ECEDFF808A2DC +:1080D0004AF82E60814E46F82E70814F47F82E8068 +:1080E000DFF8008248F82E90DFF8FC8148F82E3047 +:1080F000DFF8F89149F82E20DFF8F4A14AF82E10A5 +:10810000DFF8F0B14BF82E00606910F1010F74D068 +:10811000A16911F1010F70D08C456ED1D4F860C007 +:108120006146002937D0616A502934DA226B1A2A55 +:1081300002DA626B002A2ED142180092009200925D +:108140000092009200920092284692FBF0F005FB0C +:108150001020494204915BF8201003915AF8201036 +:10816000029159F82010019158F8201000915D49B2 +:1081700051F8203057F8202056F82010DFF858E149 +:108180005EF82000E047206B1A2802DB00206063C5 +:1081900001E00120606300206062E069042801DBE7 +:1081A00000212163D4F85CC0614600291FD0052856 +:1081B0001DDB216B1A2902DA616B002917D1614698 +:1081C000002907D029460191009063693A4631465B +:1081D0004148E047A06A401CA062206B1A2802DBDD +:1081E0000020606301E001206063002020634FF005 +:1081F000FF306061A0610020E061606910F1010F53 +:1082000038D0D4F860C06146002930D0616A502966 +:108210002DDA226B1A2A02DA626B002A27D1421861 +:1082200000920092009200920092009200922846E2 +:1082300092FBF0F005FB102004915BF820100391F5 +:108240005AF82010029159F82010019158F8201086 +:108250000091244951F8203057F8202056F820107A +:108260001D4E56F82000E047606A401C6062E069DD +:10827000401CE061206A401C294690FBF1F105FB9F +:1082800011002062002005B0BDE8F08F1A480321DC +:10829000816501214165704730B4174C47F6FF7581 +:1082A000A56340F6CC45E56340F2471525650025FA +:1082B000E56225636563E5614FF0FF356561A561A2 +:1082C000002525626562E564A564656420606160DF +:1082D000A260E36030BC704790E60020D0E7002049 +:1082E00010E9002050EA002090EB0020D0EC0020A4 +:1082F00010EE002050EF0020A4A40020F446490016 +:1083000006D200F011F809420DD5C81741086047A0 +:1083100000F00AF807D04942404271F1000102D44E +:1083200000205FF0004160474A0DA2F580621E3ACE +:108330000ADC5242202A18DA890241F0004141EA5F +:1083400050500021D0407047D2F1200210D4890251 +:1083500041F0004141EA5051C002D04061FA02F3BD +:108360005840D14080EA010070470020002170474A +:10837000D01701007047000090420CD141EA030C75 +:1083800050EA4C0C07D0994205D14FF4001C1CEB6D +:10839000410F38BF894270470CB41CB5044604A88D +:1083A00001900A46009401AB00A9074878441830B0 +:1083B000F5F7D0FC009900220A7000285CBF0098F5 +:1083C000001B16BC5DF80CFBB37EFEFF10EE101A0E +:1083D00010EE902AB0EEC00AC80F49005200F0EE2D +:1083E000E00A28BF0C3011F1807F38BF12F1807F86 +:1083F0000CD28A4238BF80F00400124214D034BF3D +:1084000080EE800A80EE200ADAF7FABE11F1807F52 +:1084100008BF80F0040098BF12F1807F08D88A421C +:1084200014BF00224FF07E5200EE102ADAF7E8BEA9 +:108430006FF0004100EE101A7047000010EE101AA5 +:108440004FF07E5C01EE90CAC80F31F0004122D09F +:1084500000EE101AB1F17E5F13D871EEC00ADFF89A +:1084600038C031EE801A61EE200AF1EEE00A614573 +:1084700086BF80F0040080EE800A80EE200ADAF7E2 +:10848000BFBE490011F1807F9CBF6FF0004100EE3C +:10849000101A68F6B7AA7047F404353F40EA010C99 +:1084A0005FEA4C0C07D0884205D14FEA400C1CF122 +:1084B000807F98BF8042704700EE100A00EE901A4D +:1084C00020EE200A10EE100A7047000030B4C26897 +:1084D00090F82A304B8402F222035D8AED05ED0DFF +:1084E0000D844D8C112D07D15D8AC5F3C0251DB1BA +:1084F0009C88CC84DC8802E05D88CD84548C0C851B +:10850000848C4C854469A58A0DB9258CC584C08CA2 +:108510008885908E00F44060B0F5806F07D1546874 +:108520005B8B088D34F8133090FBF3F005E0206985 +:10853000E368834234BFC01A0020C885106D086408 +:1085400030BC704738B504460D46FFF7BFFF2846DC +:10855000C046C04600206884A88400212069818725 +:108560000421C1872046BDE83240DAF7D8BF0000B9 +:108570002DE9F041074682B03E693068018BBA6B45 +:108580004C08F1680025914231D1B38DB1FBF3F273 +:1085900003FB12174289716ABFB27A43DF193F1B8E +:1085A00097FBF3FC03FB1C7301EB420227001AD07C +:1085B000B0F80AC09BB20CFB03FC002701EB4C0C8B +:1085C000964604E03EF8028B2CF8028B7F1CB0F834 +:1085D0000A804745F6DB5B1CB78D9BB2BB4228BFC8 +:1085E0000023641EE4D1B5870420F0878FE01019C2 +:1085F0008142C0F08C803846DAF7B8FEF968B1F8ED +:10860000462001463846DAF7D2FE788D010A19BFB6 +:10861000A0F580707885304600F0A4FB388D010A03 +:10862000042974D8DFE801F0030A353F6800C10768 +:108630006DD54FF6FE710840388568E0C0F3001034 +:10864000C8B9F88DF1688AB203199A42BCBF081BF9 +:1086500080B2091AF160B96B11B1081A001BB86336 +:108660006FF00201386981870821C18797F82800D7 +:1086700040F404700CE097F82A0078856FF002014E +:10868000386981870821C18797F8280040F4007075 +:108690003885388D40F0010038850125B9693046AC +:1086A00000F0A6FB33E04FF6FE7108403885012547 +:1086B000F868808EC0F3003131B1788D00F47F40CE +:1086C00040F05400788522E097F82A10132918BF4B +:1086D00014291CD0C0F3C02048B9ADF8000000A98F +:1086E0003846D8F7CBFB798D60F30701798538469A +:1086F0007968FFF7EBFE0AE0788D00F47F4040F0E8 +:108700001100788538467968FFF7E0FE0125284694 +:10871000BDE8F68190F82A1011291CBF14291329ED +:1087200008D0542902D14068418403E0C068808E9B +:10873000C00501D00120704700207047F8B5426C99 +:108740006A4D02F6F80402F6B002626160602560CC +:1087500017262B88E6854FF6EF766D8855834FF602 +:108760007B7C258D2E4026850CEA06060D686F88D9 +:108770003F06FF0F46EA870626850789032F0CD19F +:10878000898EC1F3802109B1002105E0C6F3800183 +:10879000002914BF0221012101810189D182C189EF +:1087A000B1F5C87F0EBF698B01EB630191FBF3F15B +:1087B0009183818939B14FF47A755E0805FB0161B7 +:1087C000B1FBF3F100E0A98B1183218DC1F380018E +:1087D000002901BF418900290321418140895908AD +:1087E0004FF47A7505FB0010B0FBF3F0A08501F1A2 +:1087F000F00090FBF3F0108101F6C41090FBF3F051 +:1088000050812046DAF78BFE0020A0872046F2BD7B +:108810002DE9FC410446656C15B95020BDE8F68190 +:10882000606800281CBF2068002805D153206084A0 +:108830002046FDF74CFA56E000206084A084E086D4 +:10884000A08A08B9032002E0062801DB0520A082E7 +:10885000E08910B94FF4C87008E0B0F5617FC8BF77 +:108860004FF4617002DC642801DA6420E081204664 +:1088700000F0E2FD060005D02046D8F71DFE5FEAB5 +:10888000000803D12046C046C0462CE0308AB8F824 +:108890003C10884205D0552060842046C046C04622 +:1088A00021E01349204600F0B1FB0746414620462F +:1088B000FFF744FF4169CA8A022A04BF0122A1F8D6 +:1088C0004420C0F80C800761866005F61E018161B6 +:1088D0004FF480533968498901EB410251008269A4 +:1088E0008B527969C161608CBDE8F681E833030879 +:1088F0009C330308418A828A891A09B2002902D569 +:10890000B0F91000091809B2F02901DB0120704705 +:1089100000207047418A828A891A09B2002901D54C +:10892000008A4118084600B27047F8B5044615465B +:10893000F12D09D2E6684348864205D1B4F9147096 +:10894000002F0BD0F02F09D03F48012101601146C4 +:108950000FF21010EAF7E3F90120F2BD9C463B4804 +:10896000844505D300F5B85E0EF1700EF4450AD3C8 +:10897000354901220A60024619460FF2F000EAF773 +:10898000CEF90120F2BD002A14D0608AC01B00B2CB +:10899000002802D5B4F91020801800B2F02801DABE +:1089A0000020F2BD6A0006EB470000EB41011846CB +:1089B00000F04EF8A08AF030A082B4F9101000B296 +:1089C000884201D10020A0822068401C2060012044 +:1089D000F2BD38B5044615462846F0280BD1E368A9 +:1089E000184A934207D1B4F91220002A0DD0B4F9E5 +:1089F0001220F02A09D0144901220A6001460FF220 +:108A00007C00BDE83440EAF78AB96A00B4F9120084 +:108A100003EB400000F01CF8608A28186082B4F96B +:108A20001200B4F91010884201D100206082208B1E +:108A300028182083B4F9101000B2814200DD0146ED +:108A4000218331BD04A6002000A60020C4A9002077 +:108A500003E011F8013B00F8013B13465A1E002BBE +:108A6000F7D17047734D4D3120256400734D4D3261 +:108A7000202523582C25235800000000734D4D332A +:108A800020256400F0B50446002500262F464FF44B +:108A9000C07047F6294312FB03F24FEAE23CE25F63 +:108AA00031F902EBA2EB0C0C0CF30F0C1EFB0CFCCF +:108AB0004FEA2C4C24F802CB6545B8BF6546B44557 +:108AC000B8BF6646401EE6D14FF48071204600F0E4 +:108AD000DFFD714204F580708D42B8BF0D462DB2A6 +:108AE000012D1FDBA0F5806043F6FF7101E06D00F2 +:108AF0007F1C2DB28D42BCBF3FB20A2FF7DB602135 +:108B00000288BA4020F8022B0288BA4020F8022BD3 +:108B10000288BA4020F8022B0288BA4020F8022BC3 +:108B2000491EEDD138B2F0BD2DE9F24F024682B0B8 +:108B30001069DFF8CC940090D0F81CB081690191E5 +:108B400000230468E55E47F6FF7A0DE0DFF8B41411 +:108B50008842B8BFDFF8B0042188691A2BF81100E9 +:108B60006D1C9B1C2DB21BB26088854280F28780F1 +:108B7000E06B30F9131000EB430000274088A0EBB6 +:108B8000010C206C00EB410000F1020EA06B01997A +:108B900030F9150001EB800000260FFA8CFC00F183 +:108BA0000408BCF1000F13D058F8040B3EF8021B68 +:108BB000A1FB0001C00BACF1010C40EA4140861959 +:108BC0000FFA8CFCBCF1000FEED101E076087F1C9F +:108BD000E089E16A01EB800151F8041C8E4228BF54 +:108BE000032EF3D2022E24D3002100B2D4F82CC0DD +:108BF000A0EB010EBEF1020F0ADB00EB010E4FEA03 +:108C00006E0E5CF82EC0664534BF70467146EDE7C7 +:108C10005CF821E05CF820C0A6EB0E06ACEB0E0C75 +:108C200002E076084FEA5C0C4E45FAD2BCF1000F28 +:108C300005D12088281A00212BF8101090E7D4F8CD +:108C400028E03EF911103EF91000401A7043B0FBC5 +:108C5000FCF000FA81F0BDF80810C91B09B2676C7E +:108C6000002951BF37F91110494237F91110494213 +:108C700009B2401A5045FFF669AF50466CE7108DB7 +:108C8000C0F3400028B35069009BC1685B688B4209 +:108C900026BF591A89B2002101F11003DC1003EB41 +:108CA00014742411A3EB04130429AEBF0421491C3E +:108CB00089B2D48C166A4D1E05FB04644D0814FA63 +:108CC00085F4B4FBF1F1D1849BB200EB4300D18C6D +:108CD000018403B0BDE8F08F2DE9F04F0168B1F9D0 +:108CE0000230B1F900404A6A1B1B8468858DB4FBD1 +:108CF000F5F805FB18444D8924B26C43456A05EB31 +:108D000044041BB20027BF4D47F6FF7806E0AC4590 +:108D1000B8BFDFF8F4C224F802CB7F1C3FB2B1F831 +:108D20000AE0BC46F4451BDAC6694FF0000E012B81 +:108D300009DB994636F902AB32F902BB1AFB0BEE9E +:108D4000B9F10109F6D10E6B36F91C604FEA2E2EEF +:108D500006FB0EF64FEA262CC445D8DBC446DAE7FC +:108D6000BDE8F08F2DE9F043828DC368B0F93E4035 +:108D700001684D8BD3181B1BB3FBF2F402FB1432BA +:108D80004B8912B25A43436A03EB4202B0F93C30BA +:108D90001C46A542B8BF2CB204DB002C48BF2CB245 +:108DA0005B1C8387631C1BB24FF0000C5C1E964D4E +:108DB000944E47F6FF7808E0B645B8BFAE4627F8B0 +:108DC0001CE00CF101070FFA87FCB1F80AE0F4454A +:108DD0000CDA076A32F9029B37F91CE004FB0E9E9D +:108DE0009EFBF3FEC645E7DBC646E8E7BDE8F08339 +:108DF0002DE9F34F85B0006805990190B0F90A009C +:108E0000019A00900598B2F91820808DC968821ADD +:108E10005118491CB1FBF0F200FB121000B2039094 +:108E2000002100980128C0F2E88000A8425E059861 +:108E3000406ADDF818B0DFF8D0910290034605983B +:108E4000D0F820800398401C00B204900198468915 +:108E50000398029FDDF810E006FB001007EB4007C7 +:108E6000B7F90000C5100598808D9EFBF0F400FB5B +:108E700014E424B2002C0CBF1F4607EB4607641C09 +:108E80000FFA84FC9CFBF0F4B7F900E000FB14C47B +:108E900024B205EBEE05002C0CBF9C4607EB460CFC +:108EA000BCF90070641C05EB671E24B294FBF0F55E +:108EB0003F1100FB15447F4224B2002C0CBF9C469E +:108EC0000CEB460CBCF90050641CAEEBE50EA7EBB6 +:108ED000651724B294FBF0F500FB15452DB2002D6B +:108EE0000CBF9C460CEB460CBCF900404FEA241A20 +:108EF0000AEB8A0AAEEB0A0EB8F900A06D1CA4EBCF +:108F00000A042DB295FBF0FA00FB1A5564112DB23C +:108F1000002D0CBF9C460CEB460CBCF900A06D1C50 +:108F2000AEEBEA0E07EB6A172DB295FBF0FA00FBE9 +:108F30001A552DB2002D0CBF9C460CEB460CBCF90B +:108F400000A06D1C0EEB6A1E07EB2A172DB295FBD5 +:108F5000F0FA00FB1A552DB2002D0CBF9C460CEB0D +:108F6000460CBCF900A06D1C0EEBEA0E2DB295FB71 +:108F7000F0FA00FB1A5000B200280CBF9C460CEB24 +:108F8000460CFE010A2796FBF7F6BCF90070E001DB +:108F90000EEBE707FF01642497FBF4F7B0F5004FF1 +:108FA000A8BF47F6FF7002DA4845B8BF4846B6F595 +:108FB000004FA8BF47F6FF7602DA4E45B8BF4E46CF +:108FC000B7F5004FA8BF47F6FF7702DA4F45B8BFA5 +:108FD0004F462BF8020B491C069820F8126008F146 +:108FE00002080098069E801800B226F810709B1C9C +:108FF0000098521C8142FFF629AF07B0BDE8F08F00 +:10900000010010000280FFFF0180FFFF426C02F6AA +:1090100070000160002181870421C18702F60401EC +:10902000016202F2D071C16102F574714161816126 +:1090300002F5F87181621321818542627047F8B5AB +:1090400004460020256968876869B5F91020B0F8E2 +:10905000DE1129822968096AFFF714FDE88669692B +:10906000084600F095FEE98E081A4000E8860022C6 +:109070002968A869B1F908100023012910DB064608 +:10908000B6F9027036F904CB1CFB0CFC17FB07C7C2 +:1090900012B240F822709B1C521C1BB28B42EFDBB9 +:1090A000B5F936102046FFF73FFD2846FFF714FEBE +:1090B000A868401CA860F1BD2DE9F64F814683B039 +:1090C000D9F80860B0890E9C401C00EBD070C0033A +:1090D000000C1AB1022A1CD00AD322E0716858434E +:1090E00001EB4007706900EB4308A4B2CCB917E06C +:1090F000F089B168401C00EBD070C003000C5843ED +:1091000001EB4007B06900EB4308A4B24CB9348AC4 +:1091100007E07168584301EB4007706900EB4308B2 +:10912000F489012A00F0208103210AE000EB4100CC +:10913000031F30F9042C5D8820F8045C091D5A8057 +:1091400089B2B289D9F818009142EFDBA4B200923B +:1091500001940123D9F81C20394600F0DAF9E0081F +:10916000C1004FF0000C01910129C0F2DD80D9F857 +:109170001C20AE48742114E000EB4E0540F2352A65 +:1091800030F91EE0B5F90250AAEB030A0EFB0AFE05 +:1091900015FB03E31B13D38008320CF101031FFA04 +:1091A00083FC019B9C4580F2BF80B2F9003038F906 +:1091B00002EB13FB0EF34FEA632E01FB0EF31D14BB +:1091C00040F2352303FB15EE0FFA8EFE15F1200A4F +:1091D00048BF4FF0000E14D40AF10105402DA8BF7E +:1091E0004FF4805E0DDA00EB4A0530F91AA0B5F9AC +:1091F0000250A3EB0E0B0AFB0BFA15FB0EAE4FEA67 +:109200002E3EA2F800E00CF101051FFA85FCB2F930 +:1092100002E038F9025B1EFB05F56D1201FB05FA51 +:109220004FEA2A4AB2F904E003FB1A552DB21AF1AB +:10923000200A48BF002518D40AF1010BBBF1400FEA +:10924000A8BF4FF4805510DA00EB4A0BBBF902B00F +:10925000CDF800B0A3EB050B30F91AA00AFB0BFA0E +:10926000DDF800B00BFB05A52D13958038F9025BE6 +:109270001EFB05FE4FEA6E2E01FB0EF52D1403FBBF +:1092800015EE0FFA8EFE15F1200A48BF4FF0000EC2 +:1092900014D40AF10105402DA8BF4FF4805E0DDA09 +:1092A00000EB4A0530F91AA0B5F90250A3EB0E0BFA +:1092B0000AFB0BFA15FB0EAE4FEA2E3EA2F802E0B7 +:1092C0000CF102051FFA85FCB2F906E038F9025BE1 +:1092D0001EFB05FE4FEA6E2E01FB0EF52D1403FB5F +:1092E00015E31BB215F1200E48BF00233FF553AF25 +:1092F0000EF10105402DFFF63FAF4FF480534AE7D2 +:109300004A4800EB4E0340F2352530F91E00B3F910 +:109310000230AD1A684313FB0200001321F81C0051 +:109320000CF101001FFA80FCA4451DDAD9F81C10CD +:1093300038F9022B31F91C0010FB02FE4FEA6E20B7 +:1093400074224243131440F2352202FB130212B27C +:1093500013F1200E48BF0020E0D40EF10100402898 +:10936000CEDB4FF48050D9E7BDF81000002859D06B +:10937000022804BFB768D6F81880308A039A019093 +:109380000123F08900903946D9F81C0000F0C1F89B +:10939000274A284B4FF0000C42F60D6042F60E6152 +:1093A000B82419E002EB4E0532F91EE0B5F902507F +:1093B000C7F5B27A0EFB0AFE15FB07E7BD122FB206 +:1093C000C7F1000E8E45A8BF8646039F27F81CE014 +:1093D0000CF101071FFA87FC378ABC4522DA039F8C +:1093E00038F902EB37F91C7017FB0EF77D1204FBFE +:1093F00005F74FEA274E4FF4B27707FB1E570EF1E1 +:10940000200E0FFA8EFE3FB2BEF1000F04D5AD1054 +:109410009D42D4DA1D46D2E70EF10105402DC1DB95 +:109420000025CCE705B0BDE8F08F0000607D0308A3 +:10943000E07C0308F3D1FFFF10B401460A684B6CCF +:10944000148803F63810048014880E2C04BF548846 +:10945000032C04D052204884002010BC704791880F +:109460008181D188C18111890182918912FA81F1AA +:109470004160118A12FA81F18160518912FA81F1F9 +:109480004161D18912FA81F1816103F2D051C16148 +:1094900010BC7047F0B413460022DD082C46A3EB45 +:1094A000C4031FD051F8045B50F8047B50F804CB80 +:1094B0002FFA85F62D122FFA85F527FB06222CFBB5 +:1094C000052251F8045B50F8047B50F804CB2FFAC6 +:1094D00085F62D122FFA85F527FB06222CFB052297 +:1094E000641EDFD19BB25B1CDB031B0C0ED031F979 +:1094F000024B30F9025B2606361616FB052230F9C0 +:10950000025B241214FB05225B1EF0D1F0BC104656 +:1095100070472DE9F34F85B091461098ADF84000A3 +:10952000ADF800300025BDF8400020F001000190AA +:10953000BDF84000C008ADF80C001198ADF844002B +:10954000BDF84400069E4108A0EB4100ADF80200C2 +:1095500001988219059800EB45000290BDF80CC0F7 +:10956000BDF84030DDF808A000204FF0000EA3EB5E +:10957000CC03BCF1000F38D056F8044B5AF8048BDA +:109580002FFA84F724122FFA84FB5AF8044B28FB95 +:10959000070024FB0B0052F804BB2FFA8BF74FEAAD +:1095A0002B2B2FFA8BFB28FB07EE24FB0BE756F83F +:1095B00004EB2FFA8EF44FEA2E2E2FFA8EFB5AF878 +:1095C00004EB5AF8048B2EFB040052F8044B28FBE2 +:1095D0000B002FFA84FB24122FFA84F42EFB0B7E4F +:1095E00028FB04EEBCF1010CC6D19BB25B1CDB0373 +:1095F0005FEA134C18D036F9024B3AF9028B3AF96C +:10960000023B27063F1617FB0800241214FB030039 +:1096100032F9024B27063F1617FB08EE241214FB03 +:1096200003EEBCF1010CE6D120F3CF102EF3CF13E3 +:1096300029F8020B29F8023B16460198491E8219A7 +:1096400089B200298AD1BDF8020078B18246BDF8FE +:10965000402002983146FFF71DFF20F3CF1029F874 +:10966000020B01988619BAF1010AF0D1BDF8400049 +:109670004519BDF80000401EADF80000ADB2BDF8C0 +:10968000000000287FF45CAF07B0BDE8F08F000059 +:109690000022E7F787B9000092480021416081600D +:1096A000C1600161416181610170012141707047B8 +:1096B00070B52DED068BF0EE608AB0EE419A002475 +:1096C000884D2878012800F004816878002852D15C +:1096D0002E69002E00F0A280D5ED010A30EE600A5E +:1096E00010EE100AE6F79CFC21F00041E6F7FEFEC2 +:1096F00009EE900AB0EE680AD5ED020A30EE600A73 +:1097000010EE100AE6F78CFC21F00041E6F7EEFEC1 +:109710000AEE100AB0EE490AD5ED030A30EE600AEF +:1097200010EE100AE6F77CFC21F00041E6F7DEFEC1 +:1097300000EE100ADFED690AF4EE609AF1EE10FA1D +:1097400016D5B4EE60AAF1EE10FA11D5B4EE600AA7 +:10975000F1EE10FA0CD5701C28610728C0F2B98010 +:1097600020466860A860E860286101206870B0E069 +:1097700020462861ADE06869002846D128690028A4 +:109780004CD0D5ED010A30EE600A10EE100AE6F773 +:1097900047FC21F00041E6F7A9FE09EE900AB0EE81 +:1097A000680AD5ED020A30EE600A10EE100AE6F7FC +:1097B00037FC21F00041E6F799FE0AEE100AB0EE00 +:1097C000490AD5ED030A30EE600A10EE100AE6F7FA +:1097D00027FC21F00041E6F789FE00EE100ADFEDDC +:1097E000400AF4EE609AF1EE10FA09DAB4EE60AADB +:1097F000F1EE10FA04DAB4EE600AF1EE10FA68DB6A +:10980000012068612046286163E0012861D12E694A +:10981000322E02DA701C28615BE00DD185ED010A61 +:10982000B0EE680A85ED020AB0EE490A85ED030A3A +:109830002869401C28614CE0AE69322E44DAD5ED2F +:10984000010A30EE600A10EE100AE6F7E9FB21F09B +:109850000041E6F74BFE09EE900AB0EE680AD5ED3E +:10986000020A30EE600A10EE100AE6F7D9FB21F08A +:109870000041E6F73BFE0AEE100AB0EE490AD5EDCC +:10988000030A30EE600A10EE100AE6F7C9FB21F079 +:109890000041E6F72BFE00EE100A701CA861DFED18 +:1098A000100AF4EE609AF1EE10FA09DAB4EE60AA4A +:1098B000F1EE10FA04DAB4EE600AF1EE10FA08DB09 +:1098C00001202870044604E0204628616861A861F0 +:1098D00068702046BDEC068B70BD00006666A63F32 +:1098E0006766A63F64FD002038B50446E8F72CFB08 +:1098F00090F97050002C02D14FF0FF3032BD092298 +:1099000000212046E6F77CFB6D1E062D36D8DFE8E9 +:1099100005F0040C131A21282F00012060704FF06D +:10992000FF30E070012020722CE04FF0FF302070FB +:1099300020710120207225E04FF0FF30607001207F +:10994000E07020721EE04FF0FF3020700121217185 +:10995000207217E001206070E0704FF0FF3020723D +:1099600010E0012020704FF0FF302071207209E0DC +:109970004FF0FF306070E070207203E00120207033 +:1099800020712072002032BD0FB42DE9FE4300A8E3 +:109990000FF2DC311CC91CC000A8D9F727FF06460E +:1099A0009DF82970DD4807700069D0F83C04C117A4 +:1099B00005220023ECF792FB0522A2FB004502FBE7 +:1099C0000155384600F03FF8D548A0FB048900FB5C +:1099D000059940464946D9F765FE40464946D9F7BC +:1099E00072FE4FF47A013046D9F702FF4FF480310E +:1099F0003046D9F7FFFED9F7E5FED9F7E8FED9F7EB +:109A0000EBFED9F7EEFE00A8FFF76EFF00A801F00D +:109A100092FB002804D001460FF26030E9F77FF98D +:109A2000214689B2012001F0CDFB0120BDE8FE03F3 +:109A30005DF814FB80B500F026F8C821002001F085 +:109A4000C1FB012002BD80B5C00710D51B2200213B +:109A50000846E8F7E3FE1B2201210020E8F7DEFEBE +:109A60001B2202210020BDE80840E8F7D7BE1B22D8 +:109A700000210846E8F7D2FE1B2201210020BDE8A4 +:109A80000840E8F7CBBE80B51B2200210120E8F793 +:109A9000C5FE1B2201210846E8F7C0FE1B22022159 +:109AA0000120BDE80840E8F7B9BE00002DE9F04705 +:109AB000A0B000200146CDE90A011DA80A460B46C8 +:109AC0000EC019A81021E9F741FB15A81021E9F7EC +:109AD0003DFB10A81421E9F739FB07A800210A462D +:109AE00006C005A806C00CA81021E9F72FFB00202E +:109AF0000490ADF80E008DF80C000646F7F7E3FE73 +:109B00000746DFF818A2DAF81000D0F83C04C117B5 +:109B100005223346ECF7E2FA0522A2FB004502FBE0 +:109B2000015503A801900DF10E00009004AB0CAAA2 +:109B300005A907A801F013FA002842D1DAE90201C9 +:109B4000774AA2FB048902FB059910EB080041EB60 +:109B50000901CAE902019AF80020D20727D54FF07F +:109B6000000816E007EB4802B2F9062000EE102AC2 +:109B7000B8EEC00AF2EE040A80EE200ADFED660AB3 +:109B800020EE200A1DAA02EB880282ED000A08F1ED +:109B90000108B8F1030FE5DB7A690292CDE9000113 +:109BA0000CAB1DAA05A907A8D9F798FD08E000226B +:109BB0000292CDE900010CAB05A907A8D9F78EFDEB +:109BC000761CF6B230469DF80C10002901D003280F +:109BD000A7DB022803DB0FF2B010E9F7A0F89AF830 +:109BE0000000C00730D50AA919A8D9F7DCFD4FF04D +:109BF000000811E019A850F82800E6F711FA02460B +:109C00000B4600204749E6F743FAF2F743FA15A955 +:109C100041F8280008F10108B8F1040FEADB10222E +:109C200015A910A8E6F7F6F978698DF850003E48B6 +:109C3000006C00F10C04627D10A9E368C06818187C +:109C4000E6F7E8F90120A0749AF80000800730D503 +:109C50000AA919A8D9F7ADFD4FF0000811E019A81D +:109C600050F82800E6F7DCF902460B4600202D49A3 +:109C7000E6F70EFAF2F70EFA15A941F8280008F1F6 +:109C80000108B8F1040FEADB102215A910A8E6F7C5 +:109C9000C1F900208DF850002348C06B00F10C047E +:109CA000627D10A9E368C0681818E6F7B3F90120CF +:109CB000A074012020B0BDE8F08780B5E8F7ACFDC6 +:109CC000164908611949C0F8481400F2484018497B +:109CD0004160184981600FF21501C1600FF25D010A +:109CE00001610120D9F765FC012002BD0B48006924 +:109CF00090F83904002801D10020704705E080B5B4 +:109D0000002000F006F8012002BD0B4890F9000089 +:109D1000704709490870704700008047F0FD002037 +:109D200040420F0080842E410000002089990208E3 +:109D3000359A0208AD9A0208FBFE002018B43022C2 +:109D40000B7812FB030301241C700B7812FB030336 +:109D50005C700B7812FB03031B249C700B7812FBC6 +:109D600003000022C2700878401C087011BCC6E7CE +:109D7000010000000100000001000000444D5020DF +:109D80004946282564290000444D5020524646008B +:109D900038B50D4604460FF25C424FF4807100F076 +:109DA0007DF80FF2D0324FF48071204600F0B0F908 +:109DB00000954FF480710FF640230FF638022046CD +:109DC00000F002F8082032BD2DE9F14F101D009A75 +:109DD000151D02EB8102161F0A9A1C1D131D49084E +:109DE00002F2FE38491E39D0D0F800C02F68D4F8EE +:109DF00000E0D6F80090D5F800A047FB0CFC3768CF +:109E000027FB0ECC2F6855F804BB47FB0EFE0768F6 +:109E100029FB07EE276849FB17F7D0F800902AFBCB +:109E2000197750F8049B56F804A94AFB19F954F81D +:109E300004AB4FEADC3C23F802CBFF132BFB1A994F +:109E400023F8027BC9F1000C4FEAEC3728F80279BD +:109E5000491E4FEADE3728F80279C5D101682F681C +:109E6000366800682D6847FB01F127683C4626FBF1 +:109E7000071146FB14F425FB1040C90B1980C013D1 +:109E800023F8020F00990098B1F90010B0F9020010 +:109E90000B1A401810805380BDE8F18F2DE9F64F62 +:109EA00085B0069B069C0093890803910A46A0464C +:109EB000894607463B689E101B049B146FF30F06F0 +:109EC0009BB201EB090A334350F82A604FEAA60E11 +:109ED0003604B6146FF30F0EB6B201EB0A0C46EA65 +:109EE0000E0550F82CE093FA15F64FEAAE0BD3FAB4 +:109EF00015F34FEA0E4E50F829504FEAAE4ECEEA17 +:109F00000B0E4FEAA50B2D04AD14C5EA0B0595FA0F +:109F10001EFE96FA2EF547F8045BD6FA1EFE54F89C +:109F2000085B02952E4626FB0EF546FB1EFE4FEA09 +:109F30001E4E50F829604FEA0E4E4EEA154540F885 +:109F4000295009F1010950F82CE04FEAAE054FEA1B +:109F50000E4E4FEAAE4ECEEA050EB5103604B614DC +:109F6000C6EA0506D6FA1EF6A3FA16FEE3FA16F5B9 +:109F7000009B1B1D009353F8046D0196334646FB6E +:109F800015F6360C23FB05F3360446EA134340F876 +:109F90002A3058F80C3B23FB0EF643FB1EF31B0C38 +:109FA0001B0443EA164340F82C30521E82D104228F +:109FB0000092039A5EE00E1901EB060A50F8245055 +:109FC00050F82A7095FA17FE01EB0A0CD5FA17F52E +:109FD00050F82C9050F8267097FA19F99EFA29F744 +:109FE0004FEA670B3F047F146FF30F0BBFB247EAD2 +:109FF0000B0740F82470DEFA29F9029FDDF808E02B +:10A0000047FB19F72EFB09FE3F0C50F826903F0442 +:10A0100047EA1E4740F8267050F82C60019FD9FA95 +:10A0200016F6A5FA26FEE5FA26F5019E26FB05F6AC +:10A0300047FB15F52D0C2D0445EA164640F82A601D +:10A0400043FB1EFA4FEA1A4523FB0EF62D0445EAA0 +:10A05000164640F82C60039E3419059EB442AAD3DC +:10A06000521C4B1E93420ED2009A9204120C009284 +:10A07000049A92080492049B052B15D303914FF088 +:10A08000000889080022069B53F82830069C01939B +:10A09000069B53F83830029308EB48039B001B598A +:10A0A000009CA0441446D8E7059C0023641A2AE0CB +:10A0B00003EB910606EB910A50F8232050F82A5042 +:10A0C00092FA15FE0AEB910CD2FA15F550F82C8095 +:10A0D00050F8262092FA18F89EFA28F940F82390B2 +:10A0E000DEFA28F850F826E040F82680CB1850F821 +:10A0F0002C20DEFA12F6E5FA26F840F82A80A5FAB6 +:10A1000026F840F82C809C42D2D207B0BDE8F08FF0 +:10A110002DE9F0434FEA510C0CF10101002300241A +:10A12000054600EB8106ACF1020811E09C420FD21B +:10A13000D5F800E050F823702F6040F823E0CF18E6 +:10A14000D6F800E050F82790C6F8009040F827E0D5 +:10A150006344D5F804E050F823706F6040F823E0C2 +:10A16000A41C32F8023B08360835A045DED2BDE813 +:10A17000F08300004000200060001000500030001C +:10A1800070000800480028006800180058003800D7 +:10A1900078000400440024006400140054003400DB +:10A1A00074000C004C002C006C001C005C003C0097 +:10A1B0007C000200420022006200120052003200C5 +:10A1C00072000A004A002A006A001A005A003A0087 +:10A1D0007A0006004600260066001600560036008B +:10A1E00076000E004E002E006E001E005E003E0047 +:10A1F0007E000100FF7F0000F67F2403D97F480620 +:10A20000A77F6B09627F8C0C0A7FAB0F9D7EC81203 +:10A210001E7EE2158A7DF918E47C0C1C2A7C1A1F2C +:10A220005D7B24227D7A28258A79272885781F2B33 +:10A230006C77112E4276FC300575DF33B673BA3673 +:10A2400055728D39E370573C5F6F173FCA6DCE4131 +:10A25000246C7B446E6A1D47A768B449D066404CA5 +:10A26000E964C04EF2623451EC609B53D75EF65500 +:10A27000B45C4358825A825A4358B45CF655D75E50 +:10A280009B53EC603451F262C04EE964404CD0669E +:10A29000B449A7681D476E6A7B44246CCE41CA6DE1 +:10A2A000173F5F6F573CE3708D395572BA36B673FE +:10A2B000DF330575FC304276112E6C771F2B8578C5 +:10A2C00027288A7928257D7A24225D7B1A1F2A7CFB +:10A2D0000C1CE47CF9188A7DE2151E7EC8129D7E56 +:10A2E000AB0F0A7F8C0C627F6B09A77F4806D97F72 +:10A2F0002403F67F0000FF7FDCFCF67FB8F9D97FEE +:10A3000095F6A77F74F3627F55F00A7F38ED9D7E46 +:10A310001EEA1E7E07E78A7DF4E3E47CE6E02A7C01 +:10A32000DCDD5D7BD8DA7D7AD9D78A79E1D485788E +:10A33000EFD16C7704CF427621CC057546C9B67350 +:10A3400073C65572A9C3E370E9C05F6F32BECA6DB0 +:10A3500085BB246CE3B86E6A4CB6A768C0B3D06600 +:10A3600040B1E964CCAEF26265ACEC600AAAD75E9B +:10A37000BDA7B45C7EA5825A4CA3435829A1F655CB +:10A38000149F9B530E9D3451179BC04E3099404CE7 +:10A390005997B44992951D47DC937B443692CE4140 +:10A3A000A190173F1D8F573CAB8D8D394A8CBA3623 +:10A3B000FB8ADF33BE89FC309488112E7B871F2BEC +:10A3C0007686272883852825A3842422D6831A1FEE +:10A3D0001C830C1C7682F918E281E2156381C81295 +:10A3E000F680AB0F9E808C0C59806B092780480645 +:10A3F0000A802403008000000A80DCFC2780B8F972 +:10A40000598095F69E8074F3F68055F0638138ED9F +:10A41000E2811EEA768207E71C83F4E3D683E6E056 +:10A42000A384DCDD8385D8DA7686D9D77B87E1D42F +:10A430009488EFD1BE8904CFFB8A21CC4A8C46C9CF +:10A44000AB8D73C61D8FA9C3A190E9C0369232BEF1 +:10A45000DC9385BB9295E3B859974CB63099C0B35D +:10A46000179B40B10E9DCCAE149F65AC29A10AAAE2 +:10A470004CA3BDA77EA57EA5BDA74CA30AAA29A172 +:10A4800065AC149FCCAE0E9D40B1179BC0B3309904 +:10A490004CB65997E3B8929585BBDC9332BE3692A1 +:10A4A000E9C0A190A9C31D8F73C6AB8D46C94A8C64 +:10A4B00021CCFB8A04CFBE89EFD19488E1D47B877D +:10A4C000D9D77686D8DA8385DCDDA384E6E0D68327 +:10A4D000F4E31C8307E776821EEAE28138ED6381AC +:10A4E00055F0F68074F39E8095F65980B8F9278070 +:10A4F000DCFC0A800000008024030A8048062780D4 +:10A500006B0959808C0C9E80AB0FF680C81263815A +:10A51000E215E281F91876820C1C1C831A1FD6837F +:10A520002422A38428258385272876861F2B7B87D2 +:10A53000112E9488FC30BE89DF33FB8ABA364A8CF0 +:10A540008D39AB8D573C1D8F173FA190CE41369270 +:10A550007B44DC931D479295B4495997404C309900 +:10A56000C04E179B34510E9D9B53149FF65529A145 +:10A5700043584CA3825A7EA5B45CBDA7D75E0AAAF5 +:10A58000EC6065ACF262CCAEE96440B1D066C0B3B9 +:10A59000A7684CB66E6AE3B8246C85BBCA6D32BE40 +:10A5A0005F6FE9C0E370A9C3557273C6B67346C93D +:10A5B000057521CC427604CF6C77EFD18578E1D454 +:10A5C0008A79D9D77D7AD8DA5D7BDCDD2A7CE6E032 +:10A5D000E47CF4E38A7D07E71E7E1EEA9D7E38ED6B +:10A5E0000A7F55F0627F74F3A77F95F6D97FB8F99B +:10A5F000F67FDCFC004000C0373F01C06E3E05C066 +:10A60000A53D0BC0DC3C14C0133C1FC04B3B2CC011 +:10A61000823A3CC0BA394FC0F23864C02A387BC095 +:10A62000633795C09C36B1C0D535D0C00F35F1C069 +:10A63000493415C184333BC1BF3263C1FA318EC185 +:10A640003631BBC17330EBC1B02F1DC2EE2E51C2EB +:10A650002D2E88C26C2DC1C2AC2CFDC2ED2B3BC38C +:10A660002E2B7BC3702ABEC3B42903C4F7284AC467 +:10A670003C2893C48227DFC4C9262DC511267EC578 +:10A680005925D0C5A32425C6EE237CC63A23D5C6BA +:10A69000872231C7D5218FC72421EEC7742050C827 +:10A6A000C61FB5C8191F1BC96D1E83C9C31DEEC9BE +:10A6B000191D5BCA721CC9CACB1B3ACB261BADCB7A +:10A6C000821A21CCE01998CC3F1911CDA0188CCD5D +:10A6D000021808CE661787CECB1607CF32168ACF60 +:10A6E0009B150ED0051594D071141CD1DF13A6D183 +:10A6F0004E1331D2BF12BFD231124ED3A611DFD3C7 +:10A700001C1171D4941005D50E109BD58A0F32D62A +:10A71000070FCBD6870E66D7080E02D88C0DA0D8AF +:10A72000110D3FD9980CE0D9210C82DAAD0B26DB54 +:10A730003A0BCBDBC90A72DC5B0A19DDEE09C3DD1B +:10A7400083096DDE1B0919DFB508C6DF500874E008 +:10A75000EE0724E18F07D5E1310787E2D5063AE31A +:10A760007C06EEE32506A3E4D00559E57E0511E657 +:10A770002D05C9E6DF0482E793043CE84A04F7E8C4 +:10A780000304B4E9BE0370EA7B032EEB3B03EDEB5D +:10A79000FD02ACECC1026CED88022DEE5102EEEE32 +:10A7A0001D02B0EFEB0173F0BB0136F18E01FAF13F +:10A7B0006301BFF23B0184F3150149F4F1000FF589 +:10A7C000D000D5F5B1009CF6950063F77B002AF820 +:10A7D0006400F2F84F00BAF93C0082FA2C004BFBFF +:10A7E0001F0013FC1400DCFC0B00A5FD05006EFE31 +:10A7F000010037FF0000000000400040C940FF3F5B +:10A800009241FB3F5B42F53F2443EC3FED43E13F88 +:10A81000B544D43F7E45C43F4646B13F0E479C3FBA +:10A82000D647853F9D486B3F64494F3F2B4A303F99 +:10A83000F14A0F3FB74BEB3E7C4CC53E414D9D3E30 +:10A84000064E723ECA4E453E8D4F153E5050E33D7A +:10A850001251AF3DD351783D94523F3D5453033D87 +:10A860001354C53CD254853C9055423C4C56FD3B5C +:10A870000957B63BC4576D3B7E58213B3759D33AF5 +:10A88000EF59823AA75A303A5D5BDB39125C843962 +:10A89000C65C2B39795DCF382B5E7138DC5E12389F +:10A8A0008C5FB0373A604B37E760E53693617D36B1 +:10A8B0003D621236E762A5358E6337353564C6349E +:10A8C000DA6453347E65DF3320666833C166EF3265 +:10A8D00060677432FE67F8319A6879313569F9300A +:10A8E000CE697630656AF22FFB6A6C2F8F6BE42E8F +:10A8F000216C5A2EB26CCF2D416D412DCF6DB22CF3 +:10A900005A6E212CE46E8F2B6C6FFB2AF26F652A36 +:10A910007670CE29F970352979719A28F871FE2759 +:10A9200074726027EF72C12668732026DF737E255C +:10A930005374DA24C674352437758E23A575E7223F +:10A9400012763D227D769321E576E7204B773A20FB +:10A95000B0778C1F1278DC1E71782B1ECF78791D92 +:10A960002B79C61C8479121CDB795D1B307AA71AFF +:10A97000827AEF19D37A3719217B7E186D7BC41741 +:10A98000B67B0917FD7B4C16427C9015857CD21452 +:10A99000C57C1314037D54133F7D9412787DD3112D +:10A9A000AF7D1211E37D5010157E8D0F457ECA0ECE +:10A9B000727E060E9D7E410DC57E7C0CEB7EB70B34 +:10A9C0000F7FF10A307F2B0A4F7F64096B7F9D0850 +:10A9D000857FD6079C7F0E07B17F4606C47F7E0524 +:10A9E000D47FB504E17FED03EC7F2403F57F5B02A8 +:10A9F000FB7F9201FF7FC900FF7F000038B50C4646 +:10AA00001546010A8DF8001000A9487048782018F2 +:10AA1000B0F5807F02DD4FF0FF3032BD00AB022287 +:10AA20006D21682005F042FE002802D04FF0FF3073 +:10AA300032BD2B4622466F21682005F037FE0028E4 +:10AA400002D04FF0FF3032BD002032BD38B50C4689 +:10AA50001546010A8DF8001000A9487048782018A2 +:10AA6000B0F5807F02DD4FF0FF3032BD00AB022237 +:10AA70006D21682005F01AFE002802D04FF0FF304B +:10AA800032BD2B4622466F21682005F027FE0028A4 +:10AA900002D04FF0FF3032BD002032BD2DE9F04F23 +:10AAA00093B005460E461446002E02D14FF0FF30FB +:10AAB00065E00027A8460AE0B9F1010F05DB4A4628 +:10AAC00039460FF2407005F018FE5744BFB24745B3 +:10AAD00044DA4FF0000907EB060BA8EB070041280A +:10AAE00002DB4FF0400A01E0A5EB070A5A46514647 +:10AAF00089B23846FFF782FF002802D06FF00100CC +:10AB00003DE002AA514689B23846FFF79FFF002870 +:10AB100002D06FF0020032E01FFA8AFA524602A910 +:10AB2000584605F0F7FD002804D009F1010964201A +:10AB300005F0E7FDA9F101000328CED3B9F1040F18 +:10AB4000BADB9DF808000090BB5D524639460FF213 +:10AB5000986005F0D2FD6FF0030010E0200A8DF838 +:10AB600004008DF8054001AB02227021682005F039 +:10AB70009DFD002802D06FF0040000E0002013B01B +:10AB8000BDE8F08F90F90010012901DB002070472B +:10AB9000002901D50420704790F90110012901DB3B +:10ABA00001207047002901D50520704790F9020067 +:10ABB000012801DB02207047002801D506207047DC +:10ABC0000720704738B50446FFF7DCFF0546E01C58 +:10ABD000FFF7D8FF45EAC005A01DFFF7D3FF45EA00 +:10ABE000801080B232BD70B586B0044605A80FF261 +:10ABF0002C610A68026004A80FF224610A680260EE +:10AC000003A80FF220610A68026002A80FF218611F +:10AC10000A68026004F0030005A9425C8DF8042074 +:10AC200001ADC4F3C102525C6A70C4F38112515C7D +:10AC3000A97004A9405C8DF8000000AEC4F3C10007 +:10AC4000405C7070C4F38110405CB07001AA0321B5 +:10AC500040F22640FFF7D2FE002802D04FF0FF302E +:10AC60004DE000AA032140F22A40FFF7C7FE00286A +:10AC700002D04FF0FF3042E0032203A901A8E5F71C +:10AC8000C9F9032202A900A8E5F7C4F960070BD5AA +:10AC90009DF8040040F001008DF804009DF80000CC +:10ACA00040F001008DF80000A00607D5687840F05C +:10ACB00001006870707840F001007070E00507D501 +:10ACC000A87840F00100A870B07840F00100B070A2 +:10ACD00001AA032140F23F40FFF790FE002802D076 +:10ACE0004FF0FF300BE000AA032140F23140FFF7A4 +:10ACF00085FE002802D04FF0FF3000E0002006B0B3 +:10AD000070BD10B5044600223821682005F0BCFC57 +:10AD1000002824D100222321682005F0B5FC00285A +:10AD20001DD100226A21682005F0AEFC002816D152 +:10AD3000002C17D00C226A21682005F0A5FC002801 +:10AD40000DD1C0226A21682005F09EFC002806D1A2 +:10AD500000222321682005F097FC002802D04FF044 +:10AD6000FF3010BD002010BD10B582B004000CD023 +:10AD7000C0208DF80000C2208DF80100C4208DF89D +:10AD80000200C6208DF8030004E004228B2100A8F5 +:10AD9000E5F736F900AA042140F6C410FFF72EFEAD +:10ADA0002046401E8041C043C00FFFF7AAFF16BDDA +:10ADB00010B582B004000CD020208DF800002820AF +:10ADC0008DF8010030208DF8020038208DF8030046 +:10ADD00004E00422A32100A8E5F712F900AA042147 +:10ADE00040F6CA10FFF70AFE2046401E8041C043CD +:10ADF000C00FFFF786FF16BD30B585B002A90FF270 +:10AE00002C4238CA38C1052802DA4FF0FF3021E061 +:10AE1000052190FBF1F0401E80B20146090A8DF831 +:10AE200000108DF8010000AA022140F21620FFF761 +:10AE3000E5FD002802D04FF0FF300BE002AA0C2104 +:10AE400040F6ED10FFF7DAFD002802D04FF0FF309A +:10AE500000E0002005B030BD80B5002801D00222FE +:10AE600000E000223821682005F00EFC002802D006 +:10AE70004FF0FF3002BD002002BD70B584B0044623 +:10AE800025466D1EAD41ED43ED0F00208DF800000D +:10AE900000AEB2207070B820B070C220F07000AA6E +:10AEA00004216820FFF7AAFDA3208DF800006006AA +:10AEB00006D5C0207070C820B070C220F07003E0CA +:10AEC000A3207070B070F070200606D5C4203071D9 +:10AED000CC207071C620B07103E0A3203071707176 +:10AEE000B071A3208DF807008DF808008DF80900D7 +:10AEF00000AA0A2140F6D310FFF780FD0320044288 +:10AF000003D020208DF8000002E0D8208DF800004A +:10AF100000AA012140F6E210FFF770FDD8208DF85D +:10AF2000000000AA012140F60200FFF767FD60075C +:10AF300003D50120FFF718FF02E00020FFF714FF00 +:10AF4000E00603D50120FFF733FF02E00020FFF702 +:10AF50002FFF2846FFF7D5FE002004B070BD2DE975 +:10AF6000F04188B004460D46164600AB022272211D +:10AF7000682005F0B3FB002802D04FF0FF30D7E087 +:10AF80009DF800009DF8011041EA002841460FF2AB +:10AF9000A82005F0B2FB0F9FB8F11C0F04D20020CF +:10AFA00038704FF0FF30C3E0B8F5007F19DD01AB1A +:10AFB00002223A21682005F091FB002803D00FF20D +:10AFC0008C2005F09AFB9DF80400C00609D50120ED +:10AFD000FFF797FE0FF2902005F08FFB6FF0010056 +:10AFE000A6E001AB1C227421682005F077FB002845 +:10AFF00006D00FF2942005F080FB4FF0FF3097E071 +:10B000001C2098FBF0F0401E387001A89DF8041039 +:10B010004278120442EA0161827841EA0221C27850 +:10B020001143316001794279120442EA0161827967 +:10B0300041EA02219DF80B2011437160017A9DF8CD +:10B040000D20120442EA01619DF80E2041EA02211E +:10B050009DF80F201143B160017B9DF8112012046F +:10B0600042EA01619DF8122041EA02219DF8132075 +:10B070001143F160017C9DF8152042EA01212980ED +:10B080009DF816109DF8172042EA012169809DF86D +:10B0900018109DF8192042EA0121A9809DF81A1084 +:10B0A0009DF81B2042EA01212180007E9DF81D10A1 +:10B0B00041EA002060809DF81E009DF81F1041EAC3 +:10B0C0000020A080002030E000EB40013C4A8B18BB +:10B0D00093F9061093F9052093F90430B4F9006050 +:10B0E00013FB06F6B4F9027012FB0766B4F904709C +:10B0F00011FB0766B5F9007013FB07F3B5F9027091 +:10B1000012FB0732B5F9043011FB0321B6F5004FED +:10B1100001DB47F6FF76B1F5004F01DB47F6FF7123 +:10B1200024F8106025F81010401C0328CCDB002008 +:10B1300008B0BDE8F08138B5040002D14FF0FF300F +:10B1400032BD1F4D2878002801D0002032BD0922D1 +:10B150002146281DE4F75EFF00AB02226B21682028 +:10B1600005F0BCFA9DF80000400604D500226B21D2 +:10B17000682005F089FAC8234FF480620FF24C1161 +:10B1800040F66130FFF78AFC002818D12046FFF70F +:10B1900019FDFFF728FD002802D06FF0060032BD30 +:10B1A0000020FFF759FE002802D06FF0070032BDE3 +:10B1B000012028700FF2EC0005F09FFA002032BD4C +:10B1C000E0A5002010B50C460021002800D0C421C5 +:10B1D0000846FFF752FE002805D12046FFF70CFE77 +:10B1E000002800D1002010BD0A444D505F45525246 +:10B1F00028256429282564292825642928256429E7 +:10B20000200A00000A444D505F545249414C282501 +:10B21000642928256429200A000000004CCD6C0018 +:10B220000CC92C003656760026466600FEF2ABC4EA +:10B23000AAF1DFDFBBAFDFDF5B444D505D20464945 +:10B24000464F28256429200A000000000A5B444D6F +:10B25000505D204649464F207374617475732065B4 +:10B2600072726F720A0000000A5B444D505D202D1F +:10B27000204649464F206F766572666C6F77206571 +:10B2800072726F720A0000000A5B444D505D202DFF +:10B29000204649464F2072656164206572726F7264 +:10B2A0000A0000005B444D505D4669726D77617223 +:10B2B00065206C6F61646564207375636365737387 +:10B2C00066756C6C79212121210A00000000700054 +:10B2D000000000240000000200030000006500548C +:10B2E000FFEF0000FA80000B12820001200030C343 +:10B2F0000E8C8CE914D5400213710F8E3883F883BD +:10B300003000F883258EF8833000F883FFFFFFFFBD +:10B310000FFEA9D6240004001A8279A10000003C87 +:10B32000FFFF00000010000038836FA2003E0330D2 +:10B330004000000000B2BAC23E80000020000000C1 +:10B34000000000004000000060000000000C000051 +:10B35000000C186E000006920A16C0DF0000000004 +:10B3600000000002000000040000000700000000D0 +:10B37000FFFF0B2B000016570000035900000000D0 +:10B3800000001DFA00026C1D0000000040000000DB +:10B3900000000000000000000000000000000000AD +:10B3A000001942B5000039A20000B365D90E9FC94B +:10B3B0001DCF4C3430000000500000003BB67AE84E +:10B3C0000064000000C80000000000000000000051 +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000000100005C +:10B3F00000000000000000000000000000001072CB +:10B4000000000040000000000000000005DC00001B +:10B41000000000000000000000000000000000002C +:10B420000000025800000000000000C800000000FA +:10B430000000000000010000000200000000000009 +:10B4400000000000000000000000000000000000FC +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B47000000000000000000000001000400000007C +:10B48000000000060000B26A00000000000000009A +:10B4900000000000000000000000000000000000AC +:10B4A0000000000000000000000000000000002577 +:10B4B0000000000016A000000000100000001000B6 +:10B4C000002F0000000001F4000010000028000020 +:10B4D000FFFF4581FFFFFA7200000000000000003E +:10B4E000004400050005BAC6004778A2000000012C +:10B4F0000000000000000600000000140000254DC0 +:10B50000002F706D000005AE000C02D0000000009E +:10B51000000000000000000000000000001B000010 +:10B5200000000000000000000000000000640000B7 +:10B530000008000000000000000000000000000003 +:10B5400000000000000000000000000000000000FB +:10B5500000000000000000000000000000000000EB +:10B5600000000000000000000000000000000000DB +:10B5700000000000000000000000000000000000CB +:10B58000000000000000000000000000001B0000A0 +:10B590000000000000000000000E000E00000AC7BE +:10B5A0000004000000000032FFFFFF9C00000B2B96 +:10B5B000000000020000000100000064FFE5000040 +:10B5C000000000000000000000000000000000017A +:10B5D00000000000000100000000000000018000E9 +:10B5E0000001800000018000002426D3000000003C +:10B5F00000000000000600100096003C0000000063 +:10B600000000000000000000000000000C0A4E686E +:10B61000CDCF770950166759C619CE8200000000B9 +:10B62000000000000000000000000000000000001A +:10B630000000000017D78400030000000000000095 +:10B6400000000000C7938F9D1E1B1C190000000006 +:10B6500000000000000000000000000000000000EA +:10B6600000000000020318850000400000000003F5 +:10B670000000000300000000000000004000000087 +:10B6800000000000000000000000000000000000BA +:10B6900000000000000000000000000000000000AA +:10B6A000000000000000000000000000000000009A +:10B6B000677DDF7E72902E554CF6E6880000000014 +:10B6C000000000000000000000000000D8DCB4B85A +:10B6D000B0D8B9ABF3F8FAB3B7BB8E9EAEF132F582 +:10B6E0001BF1B4B8B08097F1A9DFDFDFAADFDFDF9D +:10B6F000F2AAC5CDC7A90CC92C97F1A9892646661F +:10B70000B28999A92D557DB08AA896365676F1BA98 +:10B71000A3B4B280C0B8A89711B28398BAA3F0249A +:10B720000844106418B2B9B49883F1A329557DBABE +:10B73000B5B1A38393F0002850F5B2B6AA8393283D +:10B74000547CF1B9A3829361BAA2DADEDFDB819A7D +:10B75000B9AEF5606870F1DABAA2DFD9BAA2FAB967 +:10B76000A38292DB31BAA2D9BAA2F8DFB9A3A3A30C +:10B77000A3A3B8A2DFDFDFBAA0DFDFDFD8F1B9A172 +:10B78000B280C0B089A0C3C5C7B181B497A011B5BC +:10B7900090A1F0240844106418F19081A02D553D2B +:10B7A000F2A5D0F8F9D1D9F8F180A2C3C5C7D8F372 +:10B7B000A2DEF18290A42D557D8494F5A120D9F3C9 +:10B7C000A2F8D8F5A140D9F3A2F8D8F5A160D9F331 +:10B7D000A2F8D8F2B9A2F8F9D1D9A6DEA5D0DEF444 +:10B7E0001AD8F28696A109D1DBF411D8F211D1DB77 +:10B7F000F41CD8F219D1DBF414D8F410D8F3A2F861 +:10B80000F9D1DAF2A6F8F1A5DED8F4A11616D8F12E +:10B81000A5F8A1859509D9F1A5DEF2A5D0DEA6F897 +:10B82000D8F4A109D8F3A2F8F9D1F4D90819DA4269 +:10B83000F2A2DEF40BD8F1A5F8A1859519DAF40788 +:10B84000D8F2A6DEA5D0DED8F1B8AAB38DB4980D93 +:10B85000355DB2B6BAAF8C96198F9FA70E161EB47F +:10B860009AB8AA872C547CBAA4B08AB6913256767C +:10B87000B28494A4C808CDD8B8B4B0F19982A82DE8 +:10B88000557D98A80E161EA22C547C92A4F02C5024 +:10B8900078F184A898C4CDFCD80DDBA8FC2DF3D991 +:10B8A000BAA6F8DABAA6DED8BAB2B68696A6D0F3A9 +:10B8B000C841DAA6C8F8D8B0B4B882A892F52C541A +:10B8C0008898F135D9F418D8F1A2D0F8F9A884D91C +:10B8D000C7DFF8F883C5DADF69DF83C1D8F4011464 +:10B8E000F1A8824EA884F311D182F5D992289788C5 +:10B8F000F109F41C1CD884A8F3C0F9D1D99782F1BE +:10B9000029F40DD8F3F9F9D1D982F4C203D8DEDFD6 +:10B910001AD8F1A2FAF9A88498D9C7DFF8F8F88301 +:10B92000C7DADF69DFF883C3D8F40114F198A8827D +:10B930002EA884F311D182F5D992509788F109F499 +:10B940001CD884A8F3C0F8F9D1D99782F149F40D35 +:10B95000D8F3F9F9D1D982F4C403D8DEDFD8F1AD38 +:10B960008898CCA809F9D98292A8F57CF1883ACFB9 +:10B97000944A6E98DB6931DAADF2DEF9D88795A882 +:10B98000F221D1DAA5F9F417D9F1AE8ED0C0C3AE49 +:10B9900082C684C3A88595C8A588F2C0F1F4010EBB +:10B9A000F18E9EA8C63E56F554F18872F40115F149 +:10B9B0009845856EF58E9E0488F142985A8E9E06B3 +:10B9C0008869F4011CF1981E1108D0F504F11E9746 +:10B9D0000202983625DBF9D985A5F3C1DA85A5F3EE +:10B9E000DFD88595A8F309DAA5FAD88292A8F57868 +:10B9F000F1881A849F26889821DAF41DF3D8879F4E +:10BA000039D1AFD9DFDFFBF9F40CF3D8FAD0F8DA8B +:10BA1000F9F9D0DFD9F9D8F40BD8F3879F39D1AF32 +:10BA2000D9DFDFF41DF3D8FAFCA869F9F9AFD0DA51 +:10BA3000DEFAD9F88F9FA8F1CCF398DB45D9AFDFB8 +:10BA4000D0F8D8F18F9FA8CAF38809DAAF8FCBF866 +:10BA5000D8F2AD978D0CD9A5DFF9BAA6F3FAF41296 +:10BA6000F2D8950DD1D9BAA6F3FADAA5F2C1BAA6E1 +:10BA7000F3DFD8F1BAB2B68696A6D0CAF349DAA6F1 +:10BA8000CBF8D8B0B4B8D8AD84F2C0DFF18FCBC357 +:10BA9000A8B2B68696C8C1CBC3F3B0B48898A82123 +:10BAA000DB718D9D71859521D9ADF2FAD88597A866 +:10BAB00028D9F408D8F28D29DAF405D9F285A4C280 +:10BAC000F2D8A88D9401D1D9F411F2D88721D8F4F5 +:10BAD0000AD8F28498A8C801D1D9F411D8F3A4C81F +:10BAE000BBAFD0F2DEF8F8F8F8F8F8F8F8D8F1D8EB +:10BAF000B8B4B09786A8319B069907AB9728889B66 +:10BB0000F00C201440B0B4B8F0A88A9A285078B746 +:10BB10009BA8295179247059446938644831F1BB94 +:10BB2000AB88002C547CF0B38BB8A804285078F173 +:10BB3000B088B49726A85998BBABB38B022646664B +:10BB4000B0B8F08A9CA82951798B2951798A247040 +:10BB5000598B2058718A4469388B3940688A644807 +:10BB6000318B30496088F1AC002C547CF08CA804F7 +:10BB7000285078F1889726A85998AC8C02264666FA +:10BB8000F0899CA829517924705944693864483156 +:10BB9000A98809205970AB11384069A8193148604B +:10BBA0008CA83C415C207C00F187981986A86E76B1 +:10BBB0007EA999882D557DD8B1B5B9A3DFDFDFAE59 +:10BBC000D0DFAAD0DEF2ABF8F9D9B087C4AAF1DF92 +:10BBD000DFBBAFDFDFB9D8B1F1A38EC6DFB084F22F +:10BBE000C8F8F9D9DED89385F14AB183A308B583A3 +:10BBF0009A0810B79F10D8F1B0BAAEB08AC2B2B6E8 +:10BC00008E9EF1FBD9F41DD8F9D90CF1D8F8F8AD16 +:10BC100061D9AEFBD8F40CF1D8F8F8AD19D9AEFB68 +:10BC2000DFD8F416F1D8F8AD8D61D9F4F4ACF59CF9 +:10BC30009C8DDF2BBAB6AEFAF8F40BD8F1AED0F883 +:10BC4000AD51DAAEFAF8F1D8B9B1B6A3839C08B910 +:10BC5000B1839AB5AAC0FD3083B79F10B58B93F21C +:10BC60000202D1ABDADED8F1B080BAABC0C3B28485 +:10BC7000C1C3D8F3B9ACDED8B1B9F38BA391B6097F +:10BC8000B4D9B9ACF8ABDEB0879CB9A3DDF1B38B06 +:10BC90008B8B8B8BB087A3A3A3A3B080B490F2A3AC +:10BCA000A3A3A3A3A3A3A3A3A3F1B087B59AA3F3CC +:10BCB0009BA3A3DCBAACDFB9A3A3A3A3A3A3A3A3B1 +:10BCC000A3A3A3A3A3A3A3D8F3B9ACF8F9D1D9F440 +:10BCD0001BD8F3FAF9D1D9F41BD8F2B1B5B98CACB1 +:10BCE000F8F9D1D9C2D8F2F9D9DEF40913DAF2DDC4 +:10BCF000C6DCF43111D8F2ABFA8B9BA349D9F40717 +:10BD000006DAF2B9ABDFFED8F1BBB3B7AAF9DAFFB6 +:10BD1000D9809AAA28B48098A720B79787A8668860 +:10BD2000F07951F1902C870CA781976293F0717193 +:10BD30006085940129517990A5F1284C6C870C9568 +:10BD4000188578A38390284C6C886CD8F3A2820065 +:10BD5000F210A8921980A2F2D926D8F188A84DD95C +:10BD600048D896A83980D93CD89580A839A6869815 +:10BD7000D92CDA87A72CD8A8899519A980D938D8C1 +:10BD8000A88939A980DA3CD8A82EA83990D90CD82E +:10BD9000A8953198D90CD8A809D9FFD801DAFFD8CD +:10BDA0009539A9DA26FFD890A80D8999A81080980E +:10BDB00021DA2ED88999A83180DA2ED8A886963132 +:10BDC00080DA2ED8A8873180DA2ED8A88292F34163 +:10BDD00080F1D92ED8A882F31980F1D92ED882AC5F +:10BDE000F3C0A28022F1A62EA72EA92298A829DAB4 +:10BDF000ACDEFFD8A2F22AF1A92E8292A8F23180FD +:10BE0000A696F1D900F1F1F1AC8C9C0C30ACDED0EF +:10BE1000DEFFD88C9CACD010ACDE8092A2F24C82BB +:10BE2000A8F1CAF235F19688A6D900D8FF00000023 +:10BE300010B5DFF860484822014604F54570E4F784 +:10BE4000E9F8D4F85003606304F554704168C4F80D +:10BE500084108068C4F8D400032802D1012004F0C3 +:10BE600082FD002010BD80B54822DFF83818E4F7C5 +:10BE7000D1F8002002BD80B50C220146DFF8280869 +:10BE8000E4F7C8F8002002BD80B50C22DFF81818CE +:10BE9000E4F7C0F8002002BD10B5DFF810484FF4F9 +:10BEA000A672002104F50870E4F7AAF84FF40872AE +:10BEB00000212046E4F7A4F800F0C7FB4DF29403FC +:10BEC0004822DFF8EC17DFF8EC0704F0A8FD044681 +:10BED0004CF251330C22DFF8E017DFF8E00704F0F2 +:10BEE0009EFD204310BD0023002A01D14FF4803273 +:10BEF000426201F00302032A00D1012301F018027B +:10BF0000182A00D1012301F0C002C02A00D1012368 +:10BF1000002B00D08821016070470A460146DFF8F7 +:10BF20008C07E0E7DFF86C1788624FF47A7290FBB9 +:10BF3000F2F2CA628A6C002A04D1DFF8842792FBED +:10BF4000F0F088647047DFF84C17886778314FF459 +:10BF50007A7290FBF2F24A600A6A002A04D1DFF892 +:10BF6000602792FBF0F008627047DFF82817C1F8ED +:10BF7000C800C8314FF47A7290FBF2F24A600A6A44 +:10BF8000002A04D1DFF8382792FBF0F008627047EE +:10BF9000DFF81817C1F860014FF47A7290FBF2F0E5 +:10BFA000C1F864017047DFF80407D0F8D000001230 +:10BFB00000F001007047DFF8F406006B001200F09B +:10BFC00001007047DFF8E406D0F88000001200F0AE +:10BFD0000100704730B400200146DFF8D02602F19E +:10BFE00030031C6DE40501D5D3E91601146BE4059B +:10BFF00008D5D3E90245A94204DC01DBA04201D205 +:10C000002046294602F1D003D2F8D040E40508D5F5 +:10C01000D3E90245A94204DC01DBA04201D220465B +:10C0200029461C6DE40508D5D3E91645A94204DC70 +:10C0300001DBA04201D220462946D2F85031DB056F +:10C040000AD502F5A874D4E90223994204DC01DB85 +:10C05000904201D21046194630BC70470A4601464C +:10C06000DFF860063FE70A460146DFF85C063AE77C +:10C0700070B584B004460D46B4F90400C0030090C6 +:10C0800000AEB4F90600C0037060B4F90800C00344 +:10C09000B06004F10C0300AA606A4100206880B21D +:10C0A00004F05AF900982968A0EB610000907068CC +:10C0B0006968A0EB61007060B068A968A0EB6100DE +:10C0C000B06004F1180300AA606A4100206880B2E1 +:10C0D00004F042F9206B40F0200020637FBDDFF8C0 +:10C0E000CC15C1F88400C1F85403704738B50C462C +:10C0F000002818D0DFF8B435D10702D50168C3F89D +:10C100003413910703D503F54D7145684D60510710 +:10C1100003D503F54D718068886003F54D7103F117 +:10C120005000FFF7A5FF2046FFF7D9FF002210219E +:10C130000846BDE8384004F0A7BCF8B504460D46F3 +:10C14000DFF86865002C12D006F557770C222146DF +:10C15000384604F0DFFA002809D00C222146384680 +:10C16000E3F758FF06F557713046FFF781FF756317 +:10C1700006F54B746562D6F80801002802D0C6F8AF +:10C180002C0303E04FF4D810C6F82C03002204213E +:10C19000084604F079FC01206060F1BDDFF80C1561 +:10C1A000D1F83003012801D1012000E00020002255 +:10C1B000C1F83023704710B50C46002804D00C227B +:10C1C000DFF8E414E3F726FF002C04D0DFF8DC04EA +:10C1D000D0F82C03206010BDF8B514461D46DFF8DA +:10C1E000CC6406F1540702688B0610D4A6F85420DC +:10C1F000416879808068B880F86A40F08000F86211 +:10C2000006F54D7106F15000FFF732FF0DE07A613F +:10C210004268BA618068F861F86A40F02000F8620C +:10C2200001F003003863C6F85403F86A40F4A070C4 +:10C23000F862D6E92201C6E92401C6E922450020B8 +:10C24000F2BD70B514461D46DFF860640622014653 +:10C25000301DE3F7DFFE306B40F4E0703063D6E969 +:10C260000E01C6E91001C6E90E4506F557713046C4 +:10C27000FFF7FEFE002070BDFEB514461D46DFF838 +:10C280002C6406F1A4078A0617D400F0B8F900A8B8 +:10C2900000F0A8F90098A6F8A40000A841687980E9 +:10C2A0008068B88006F5457106F1A000FFF7E0FE52 +:10C2B000F86A40F08000F8620EE002687A61426835 +:10C2C000BA618068F861F86A40F02000F86201F015 +:10C2D00003003863C6F85803D6E93601C6E93801C9 +:10C2E000C6E93645F86A40F4A070F8620020FEBD49 +:10C2F0002DE9F04385B006460F4614461D46DFF88B +:10C30000AC8308F5A079F80409D500A9304604F0FB +:10C310009AF9102200A94846E3F77CFE04E01022B7 +:10C3200031464846E3F776FEC8E95645D8F850014D +:10C3300007F4385141F4E0710843C8F85001D8F8C7 +:10C34000500110F4406F04D022462B46304604F0D2 +:10C3500013FAD8F8500100050AD500A80FF2703181 +:10C360001022E4F7EFFA22462B4600A804F018FA50 +:10C37000002005B0BDE8F083DFF830030021C0F8ED +:10C3800080107047DFF824030021C0F8D0107047F8 +:10C39000DFF818030021C0F850117047DFF80C03D4 +:10C3A0000021016370472DE9F04300231C4600E0A3 +:10C3B000641CDFF8F852D5F82062B4420DDA0C277D +:10C3C00007FB0455D5F824620746BE4203D0D5F8D2 +:10C3D00028528D42ECD1162032E0142E2EDA1C4663 +:10C3E000002E01D11BE0641CB44207DA04EB4407C1 +:10C3F00005EB8707D7F828728F42F4DBB4420ED0E2 +:10C400000BE00C2707FB065707F5097C07F50677B5 +:10C41000B7E80043ACE80043761EB442F1DB0C27DA +:10C4200007FB0454C4F8240204F5097041608260DB +:10C43000D5F82002401CC5F8200200E00C23184665 +:10C44000BDE8F083F8B50025DFF8604294F83000CD +:10C45000400600D5022594F88000400601D545F03D +:10C46000010594F8D000400601D545F0040594F884 +:10C470002001400601D545F0080594F85001C0069A +:10C4800001D545F0100594F89801400601D545F016 +:10C4900020050026374611E007EB470004EB80013A +:10C4A000D1F82C02054208D02046D1F82412884742 +:10C4B000002802D0002E00D106467F1CD4F82002AE +:10C4C0008742E9DB00F002F83046F2BD10B477484D +:10C4D000016B4A0602D541F01001016300F1300101 +:10C4E0000A6D530602D542F010020A65D0F8D0203A +:10C4F000530603D542F01002C0F8D02000F1D0025C +:10C50000136D5C0602D543F010031365D0F850316B +:10C510005C0603D543F01003C0F85031036B23F0E1 +:10C52000400303630B6D23F040030B65D0F8D0107C +:10C5300021F04001C0F8D010116D21F040011165CB +:10C54000D0F8501121F04001C0F8501100F5A8704A +:10C55000816C21F04001816410BC704738B50C46F5 +:10C560001546002803D00C225849E3F753FD002D4F +:10C5700004D04E48D0E92223C5E90023002C03D083 +:10C580004A48D0F88400207031BD70B50C4615467D +:10C59000464E0C2206F1B801E3F73CFD002D03D016 +:10C5A000D6E93601C5E90001002C09D0D6F86803A8 +:10C5B000002802D00020207070BDD6F8D400207072 +:10C5C00070BD3A48406B70473848D0F8681300296E +:10C5D00001D000207047D0F8D40070473348D0F81D +:10C5E00084007047002107E0304A02EB8102D2F854 +:10C5F000C42140F82120491C0329F5DB704718B4F9 +:10C60000002106E003EB810250F82130C2F8B83176 +:10C61000491C264B0329F5DBD3F81812012907D151 +:10C6200003F5E272014603F5E87018BC03F016BF8B +:10C63000002106E003EB810250F82140C2F8C4411A +:10C64000491C0329F6DB11BC704710B500200246D7 +:10C65000104C04E004EB8001C1F8F421401C0928CF +:10C66000F8DB2422002104F5E870E3F7C9FC002080 +:10C670000AE004EB00114FF07E52C1F8F4214FF0B4 +:10C680008042C1F8D021401C0328F2DBBDE81040F5 +:10C6900002E00000D8D2002004480021C0F818129F +:10C6A00070470000ECD5002034D60020D8D20020FE +:10C6B00067BE020831BE020889BE020877BE0208C2 +:10C6C00040420F0028D3002078D3002040D3002020 +:10C6D000000000400000000000000000000000001A +:10C6E000704780B504F090F904F0E2F900280CD00E +:10C6F00004F0DEF923230FF28C020FF29801FFF70A +:10C70000EFFFBDE8014004F0D3B9FFF7C5FB0028F7 +:10C710000CD0FFF7C1FB26230FF268020FF2740161 +:10C72000FFF7DEFFBDE80140FFF7B6BB04F00CF9F0 +:10C7300000280CD004F008F928230FF248020FF269 +:10C740005401FFF7CDFFBDE8014004F0FDB8012022 +:10C7500004F0A3F9002002BD80B504F0BFF9002861 +:10C760000CD004F0BBF947230FF280020FF2240132 +:10C77000FFF7B6FFBDE8014004F0B0B9002002BDEC +:10C7800000000000696E765F696E69745F6D706CA1 +:10C7900000000000433A5C54656D705C4955535C81 +:10C7A000494B445C5461652D536F6F5C656D6265E8 +:10C7B000646465645F7265666572656E63655F6615 +:10C7C0006F725F4E6F74655F335C656D6265646444 +:10C7D00065645C496E76656E53656E73655C6D6C01 +:10C7E0006C6974655C6D706C2E630000696E765FB9 +:10C7F00073746172745F6D706C00000070470000AC +:10C8000000B510EE100AE3F70BFC0022DFF81C3C29 +:10C81000E3F73EFCFBF772FDDFF8D42BC2E914010D +:10C8200000BDDFF8CC2BD2E912017047DFF8C01B46 +:10C83000D0E90E23C1E912237047C1070CD5DFF8F8 +:10C84000F01B4FF040420A6770314A608A604FF037 +:10C850008042CA600A614A6181070ED5DFF8D01BA9 +:10C860004FF04042C1F8182101F58C714A608A608E +:10C870004FF08042CA600A614A6140070ED5DFF876 +:10C88000B01B4FF04042C1F8C02101F5E07042609A +:10C8900082604FF08042C2600261426170470000D6 +:10C8A0000021401000D0491C0128FADA481C7047CA +:10C8B0002DE9F14F88B000200146CDE90401089828 +:10C8C000806F002801D10846BEE0FFF7E9FF8146EE +:10C8D0004FF000088BE000EBC802D2E900014A46A5 +:10C8E00004F012F904460D46089800EBC8000290C7 +:10C8F0000246D2E906014A4604F006F906460F460A +:10C90000A4FB042304FB053305FB0433A4FB020151 +:10C9100004FB031105FB0211CDE90601029AD2E9DD +:10C9200012014A4604F0F0F8CDE90001A6FB062307 +:10C9300006FB073307FB06330320A0FB02AB00FB1B +:10C9400003BBDDE90001B0EB0A0061EB0B01DDE99F +:10C950000623A4FB02AB04FB03BB05FB02BB4FEAAF +:10C960004B0B4BEADA7B10EB4A0A41EB0B0BA4FBB7 +:10C97000040104FB051105FB0411301A67EB0101EA +:10C98000A4FB002304FB013305FB00330320A0FBC1 +:10C99000026700FB0377DDE9060136184F41029A72 +:10C9A000D2E90C014A4604F0AFF8321A67EB0103F2 +:10C9B000A4FB020104FB031105FB0211890041EAFB +:10C9C0009071BAEB80006BEB0101002904DC00DB05 +:10C9D00002D2404261EB4101DDE904238B4204DCD9 +:10C9E00001DB824201D2CDE9040108F10108B8F16E +:10C9F000030F0898FFF66FAF806F0899C96F8842E0 +:10CA000010D000EE100AB8EEC00A04F08FF8F7EE6E +:10CA1000000A80EE800A089880ED200A08980146F6 +:10CA2000896FC167DDE9040104F08EF800EE100A99 +:10CA30000898D0ED200A20EE200A10EE100A09B066 +:10CA4000BDE8F04F04F0B2B809B0BDE8F08F2DE9B1 +:10CA5000F04F85B0814600200146CDE90201D9F8AA +:10CA60007800002801D1084679E0FFF719FF00900F +:10CA70004FF0000849E009EBC802D2E90001009A32 +:10CA800004F042F804460D46A4FB046704FB057756 +:10CA900005FB047709EBC80001900246D2E90601C4 +:10CAA000009A04F031F8801BB941A4FB002304FB79 +:10CAB000013305FB00330320A0FB02AB00FB03BBEB +:10CAC000A4FB060104FB071105FB06111AEB000489 +:10CAD0004BEB0105019AD2E90C01009A04F014F81D +:10CAE000201A65EB0101002904DC00DB02D2404280 +:10CAF00061EB4101DDE902238B4204DC01DB824270 +:10CB000001D2CDE9020108F10108B8F1030FB2DB4F +:10CB1000D9F87800D9F87C1088420FD000EE100ABE +:10CB2000B8EEC00A04F002F8F7EE000A80EE800AC0 +:10CB300089ED200AD9F87800C9F87C00DDE9020106 +:10CB400004F002F800EE100AD9ED200A20EE200AC7 +:10CB500010EE100A05B0BDE8F04F04F027B805B09C +:10CB6000BDE8F08F10B40121026BD20513D5DFF8B8 +:10CB7000C028D2F888301468A3420CDBD0F88000BB +:10CB8000C00505D5D2F8D8015168884203DB0521DC +:10CB9000084610BC70470020FBE72DE9F04184B047 +:10CBA0000446002600ADDFF8887812E007EBC602E5 +:10CBB000D2E9040107F50872926A04F033F807EB32 +:10CBC0008602D2F894201204D317801845F8260064 +:10CBD000761C032EEADBA822002107F11000E3F700 +:10CBE0000FFA0120FFF729FE6868002801D40146EA +:10CBF00000E04142009A002A00D55242914201DAF7 +:10CC0000104602E0002800D54042A968002901D45E +:10CC10000A4600E04A42824204DB002901D4084669 +:10CC200000E04842616A03F01CF9B0F5481F03DBDD +:10CC3000052087F820024BE0DFF8B467F16A6A68E4 +:10CC4000501A01D4034600E08B1AD6F828C0DDF84C +:10CC500000E0BEEB0C0E01D4F04603E0DDF80080EE +:10CC6000ACEB0808434508DABEF1000F01D470466A +:10CC700006E00098ACEB000002E0002800D5881A1E +:10CC8000316BAA68531A01D49C4601E0A1EB020C57 +:10CC9000844504DB002B01D4184600E0881A616A41 +:10CCA00003F0DFF88046022003F096FD07F50870D8 +:10CCB000C06A804506DA032100A8FFF73EFA204645 +:10CCC000FFF7B4FD0098B0626868F062A86830634E +:10CCD000BDE8FF812DE9FE4186460E4600271CE097 +:10CCE000D317A2FB004502FB015503FB005520466C +:10CCF00029460CEB4C0306EBC30303EBC708D8E94A +:10CD0000004524184D4103EBC703C3E900450CF16E +:10CD1000010CBCF1040FE3DB7F1CB06F032F1BDAA7 +:10CD200006EB870101F16003002802D13EF91700EC +:10CD300058623EF917005A6A821A00A840F8272064 +:10CD4000086E904200DA0A66D868824200DADA6039 +:10CD5000012000218C46DCE7401CB0670120C6F8AA +:10CD6000A000BDE8F7812DE9F04104460025069EAC +:10CD700005E006EB850054F82510C1666D1C032DF7 +:10CD8000F7DB06F17807C7E90623B06F002814D057 +:10CD9000002510E006EB850854F82500D8F884102B +:10CDA000401AFAF7AEFFD8F86010814200DA014667 +:10CDB000C8F860106D1C032DECDBB06F401CB06731 +:10CDC0000120B862BDE8F08110B4002108E000EB5A +:10CDD000810202F16003DC685C6200231366491C77 +:10CDE0000329F4DB00F17801D1E90623C1E9082326 +:10CDF000002282671046886210BC704730B4D0E9C8 +:10CE00002423D0E92645101B63EB050130BC704795 +:10CE1000016E426E8A4200DA0A46816E914200DA61 +:10CE2000114608467047016EC26E891A426E036F42 +:10CE3000D21A8A4200DB1146826E406F101A884275 +:10CE400000DB01460846704710B5DFF8E4451022C4 +:10CE5000002104F51670E3F7D3F81022002104F541 +:10CE60001E70E3F7CDF81022002104F51A70E3F7E5 +:10CE7000C7F81022002104F52270BDE81040E3F746 +:10CE8000BFB810B5DFF8A845A822002104F11000B2 +:10CE9000E3F7B6F8A822002104F5B070E3F7B0F884 +:10CEA0000520BDE81040C8E4D0B4DFF8842502F5C1 +:10CEB0001E739C68002C02D1C2E99E0108E0D2E9F1 +:10CEC0009E678F4204DC01DB864201D2C2E99E01EB +:10CED000601C9860D0BC7047D0B4DFF8542502F5D0 +:10CEE00022739C68002C02D1C2E9A20108E0D2E9B9 +:10CEF000A2678F4204DC01DB864201D2C2E9A201B3 +:10CF0000601C9860D0BC7047D0B4DFF8242502F5CF +:10CF100016739C68002C02D1C2E9960108E0D2E9A0 +:10CF20009667B94204DC01DBB04201D2C2E9960146 +:10CF3000601C9860D0BC7047D0B4DFF8F42402F5D0 +:10CF40001A739C68002C02D1C2E99A0108E0D2E968 +:10CF50009A67B94204DC01DBB04201D2C2E99A010E +:10CF6000601C9860D0BC7047F8B507460124DFF814 +:10CF7000C05405F11000FFF756FFDFF87464316C00 +:10CF8000814203DAFFF77DFF0020F2BD3846FFF74C +:10CF9000E9FD070001D10220F2BD78071ED505F595 +:10CFA000B070FFF785FC000D40EA01300915C5E9B6 +:10CFB0008401D5E98401D6E904238B4205DC01DB39 +:10CFC000824202D20024FFF7B7FFA822002105F514 +:10CFD000B070E3F715F80420FFF72FFCF80711D520 +:10CFE00005F11000FFF764FC05F50472C2E90601C3 +:10CFF000D6E906238B4205DC01DB824202D2002403 +:10D00000FFF782FF2046F2BD1FB5044694F83000BA +:10D0100000F0C000C02804D1DFF81C14201DFFF769 +:10D0200059FE94F8800000F0C000C02805D1DFF858 +:10D030000C1404F15400FFF74DFED4F8D00000F0BA +:10D04000C001C0290BD1002001AA032818DA04EB83 +:10D050004001B1F9A41042F82010401CF5E700F09F +:10D060006000602814D1002001AA07E004EB8001D1 +:10D07000D1F8B810891342F82010401C0328F5DBC2 +:10D08000DFF8BC030090D4E9362301A8FFF76BFE5C +:10D090001FBD0000F8B50446002004F12C07796894 +:10D0A000CA0540F1278101F05001402900D101203B +:10D0B00097F8541001F05001402900D1012094F854 +:10D0C000D01001F05001402900D10120DFF8605359 +:10D0D000002809D0FFF7D5FE0020C5F8180285F812 +:10D0E00020022046FFF7A2FBE06AD5F840128142F9 +:10D0F0001ED0C5F84002BE4E716B0A2806DA480001 +:10D100002860B06B401CC5F8440203E02960B06B96 +:10D11000C5F84402D5F84402C0F11000C5F8480231 +:10D120004FF48040C5F84C021920B16B8840306440 +:10D13000386DD5F85012814210D0C5F85002AC4E6F +:10D14000716B0A2806DA48006860B06B401CC5F8AD +:10D15000540203E06960B06BC5F854022046FFF743 +:10D1600053FF95F82002062800F2C480DFE800F0A3 +:10D1700004122C3574A4B100D5F81802411CC5F86E +:10D1800018120A28C0F2B680FFF77BFE012085F84E +:10D190002002AFE0D5F8B000012840F0AB80204677 +:10D1A000FFF7E2FE002803D1052085F8200204E005 +:10D1B000012802D1022085F8200205F1B800FFF70E +:10D1C00003FEFFF741FE95E0032085F8200220468C +:10D1D000FFF7E3FCFFF755FE8CE02046FFF7C4FEA7 +:10D1E000002857D0012840F08580D4F8D000C00531 +:10D1F00023D503F03FFD00281FD105F1B8073846BD +:10D20000FFF706FEC117C5E98201794ED6E9020192 +:10D21000D5E98223994206DC01DB904203D2052046 +:10D2200085F820020FE03846FFF7E8FDD6E908232D +:10D23000994208DB01DC904205D3042085F82002E6 +:10D240002046FFF7AAFCD5E98401FFF745FED5E9A2 +:10D250008A01FFF729FE4DE0D4F8D000C00514D5AF +:10D2600003F008FD002810D105F1B800FFF7D0FD4C +:10D27000C117C5E982015E48D0E90223D5E98201E0 +:10D280008B4207DB01DC824204D32046FFF76CFEB1 +:10D29000002803D1052085F820022BE0012829D1A0 +:10D2A0002046FFF77AFCD5E98401FFF715FED5E9A2 +:10D2B0008A01FFF7F9FD1DE0062085F82002012014 +:10D2C00003F08AFAFFF7DDFD05F1B800FFF77CFDFA +:10D2D00010E02046FFF748FE012803D1022085F820 +:10D2E000200207E0002805D1FFF7CBFD05F1B800CB +:10D2F000FFF76AFD0020F2BD0021401000D0491C5C +:10D300000128FADA3A4801224B1C9A404263491C30 +:10D310008163192202FA01F10164704738B5444C67 +:10D320004FF4267200212046E2F76AFE304D582263 +:10D3300000212846E2F764FE0720FFF77EFA40F25C +:10D34000DC500021C5E906011420C5E90201642072 +:10D35000C5E904013B48C5E908010120C4F81C02E5 +:10D360001920FFF7C9FF0020C4F840029FED310AE1 +:10D37000FFF746FA002032BD10B52D4C4FF426724F +:10D3800000212046E2F73CFE0720FFF756FA012075 +:10D39000C4F81C0284F820020022032103F074FB6D +:10D3A000072264212848BDE81040FEF7FCBF10B5F5 +:10D3B000FFF7B4FF040009D04FF447730FF2940253 +:10D3C0000FF2A801FFF71AFA204610BD1F4803F01C +:10D3D00077FB040009D040F21F330FF278020FF2FE +:10D3E0008C01FFF70BFA204610BD002010BD000095 +:10D3F00040FB002070B50026016BC90513D5D0E9AC +:10D400000E45FFF70EFA201A65EB010100290ADB31 +:10D4100000DC08D30E4AD2E91445A94203DC01DB43 +:10D42000A04200D20126304670BD000065CDCD413E +:10D43000E0D9002000009643F0D9002040DB002016 +:10D4400098DA00200008AF2F95D0020879D302089F +:10D4500040FB0020696E765F656E61626C655F6699 +:10D460006173745F6E6F6D6F74000000433A5C54BB +:10D47000656D705C4955535C494B445C5461652D46 +:10D48000536F6F5C656D6265646465645F72656649 +:10D490006572656E63655F666F725F4E6F74655F20 +:10D4A000335C656D6265646465645C496E76656E67 +:10D4B00053656E73655C6D706C5C666173745F6EF2 +:10D4C0006F5F6D6F74696F6E2E63000070B52DED28 +:10D4D000028B98B005460E4608EE102A1C4695EDC4 +:10D4E000020AF8EEC00A95ED010AB8EEC01A95EDF1 +:10D4F000000AB8EEC00A20EE000A01EE010A00EEB2 +:10D50000A00A03F013FBF0EE408A18EE900AE2F74F +:10D5100087FD21F000410122DFF88439E3F76AF941 +:10D5200000F2B9809FEDD60AD6ED000AF8EEE00AC7 +:10D5300060EE800ACDED040A04A8D6ED010AF8EEEB +:10D54000E00A60EE800AC0ED010AD6ED020AF8EEAC +:10D55000E00A60EE800AC0ED020AD6ED030AF8EE9A +:10D56000E00A20EE800A80ED030A0020089008A857 +:10D5700095ED000AB8EEC00A80EE280A80ED010A97 +:10D5800095ED010AB8EEC00A80EE280A80ED020A85 +:10D5900095ED020AB8EEC00A80EE280A80ED030A73 +:10D5A00014AA08A904A802F006FD10A904A802F014 +:10D5B00020FE00AA10A914A802F0FDFC00AD95ED14 +:10D5C000010AD5ED020A20EEA01A00EE001ADFEDE6 +:10D5D000AD1AB4EE611AF1EE10FA02D59FEDAA1A57 +:10D5E00015E0DFEDAA1AB4EE611AF1EE10FA02D5D9 +:10D5F0009FEDA71A0BE0DFEDA71AB4EE611AF1EE6A +:10D6000010FA02D5B5EE001A01E09FEDA31AF8EE6C +:10D61000C81A9FEDA22AC1EE821A21EE811A0020BB +:10D620000C900CA860EE810AC0ED010A20EE410AC0 +:10D6300080ED020A0021C16000AA04A902F0BBFC2F +:10D6400000AA04A900A802F01FFD00A802F097FD9F +:10D650009FEDD90ADDED000A60EE800AFDEEE00ADA +:10D66000C4ED000AD5ED010A60EE800AFDEEE00A85 +:10D67000C4ED010AD5ED020A60EE800AFDEEE00A73 +:10D68000C4ED020AD5ED030A20EE800ABDEEC00A01 +:10D6900084ED030A04E0102231462046E2F7BAFC8A +:10D6A00018B0BDEC028B70BD38B52DED048B04466F +:10D6B0000D4694ED020AF8EEC00A94ED010AB8EEA8 +:10D6C000C01A94ED000AB8EEC00A20EE000A01EE7E +:10D6D000010A00EEA00A03F029FA9FEDB88AB4EE21 +:10D6E000480AF1EE10FA3CD4D4ED020AF8EEE00A52 +:10D6F00080EE809AB7EE000A30EE490AB5EE400A95 +:10D70000F1EE10FA01DC9FEDAE0AF6EE009A20EE83 +:10D71000290A03F00BFAF0EE408AB7EE000A39EE60 +:10D72000000AB5EE400AF1EE10FA01DC9FEDA40A02 +:10D7300020EE290A03F0FAF9B0EE409A94ED010ABE +:10D74000F8EEC00A94ED000AB8EEC00A20EE000A16 +:10D7500000EEA00A03F0EAF9B4EE480AF1EE10FA7E +:10D7600007D54FF08040286000206860A860E8601E +:10D7700027E0DFED910A29EE201ABDEEC11A85EDF2 +:10D78000001A94ED011AB8EEC11A81EE001A21EECA +:10D79000281A61EE200AFDEEE00AC5ED010AD4ED7B +:10D7A000000AF8EEE00A80EE800A20EE280ADFED9B +:10D7B000850A20EE200ABDEEC00A85ED020A00208F +:10D7C000E860BDEC048B31BD38B504460D4694EDE0 +:10D7D000030AF8EEC00A94ED020AB8EEC01A94EDFE +:10D7E000010AF8EEC01A94ED000AB8EEC00A20EE65 +:10D7F000000A01EEA10A01EE010A00EEA00AB5EE50 +:10D80000400AF1EE10FA07D84FF08040286000205F +:10D810006860A860E86031BD03F088F9F7EE000A9F +:10D8200080EE800ADFED640A20EE200AD4ED000AC3 +:10D83000F8EEE00A60EE800AFDEEE00AC5ED000AAF +:10D84000D4ED010AF8EEE00A60EE800AFDEEE00A8F +:10D85000C5ED010AD4ED020AF8EEE00A60EE800A96 +:10D86000FDEEE00AC5ED020AD4ED030AF8EEE00A87 +:10D8700020EE800ABDEEC00A85ED030A31BD00002E +:10D880000000803017B75139A69BC43B0AD7233C10 +:10D890008FC2753DCDCC4C3ECDCCCC3E0014CD4797 +:10D8A00070B588B0054695F83000400640F181809B +:10D8B000A869002800D54042B0F5803F0DDAE9693B +:10D8C000002900D54942B1F5803F06DA296A0029CE +:10D8D00000D54942B1F5803F67DBDFF8C815DFF8B6 +:10D8E000C84588420BDAE869002800D540428842E2 +:10D8F00005DA286A002800D54042884202DB03206E +:10D90000A06301E00220A063A86A616B81421ED07F +:10D91000606395ED0A0AB8EEC00ADFEDA00A80EE5A +:10D92000200ADFED9F0A20EE200A10EE100AE2F72F +:10D9300077FBDFF87825DFF87835E2F7A9FB0022DE +:10D94000DFF87035E2F71AFEEEF7A4FB2063002043 +:10D95000049004AE216BA86902F083FA7060216B19 +:10D96000E86902F07EFAB060216B286A02F079FA69 +:10D97000F06000AA04A9204602F079FA009880011C +:10D98000009000A841688901416081688901816037 +:10D99000C1688901C160224600A9204602F0CAFA86 +:10D9A00021462046FFF710FF03E0DFF8FC040021CA +:10D9B000816308B070BD00000000804E0100803F10 +:10D9C00000000000000080CE70B52DED048B8EB0FD +:10D9D000044694F85001400640F1DC80DFF8C8545A +:10D9E000D4F840012968401A00D54042D4F86411A7 +:10D9F000DFF8C4245143814202DA0320A86301E026 +:10DA00000220A863D4F85001810505D5294604F504 +:10DA1000A070FFF7D9FEBDE0800407D54FF080402D +:10DA2000A8640020E8642865686597E0002103A8E1 +:10DA3000FEF7C1FB0C2205F13C0103A802F06AFECF +:10DA4000002805D1D4F86001A96D884200F08680D5 +:10DA500000AB03AA616A206880B202F07DFC00AED0 +:10DA600096ED020AF8EEC00A96ED010AB8EEC01A69 +:10DA70009DED000AB8EEC00A20EE000A01EE010A90 +:10DA800000EEA00A03F052F8B0EE408A9FED450A7E +:10DA900028EE000ADFED440A80EE200AD4ED580A91 +:10DAA000F8EEE00A20EE200ADFEDD10AC0EE208A6F +:10DAB000B0EE680A03F0E6F8B0EE409AB0EE680AFD +:10DAC00003F0E3F8F0EE000AB4EE608AF1EE10FA2B +:10DAD00007D54FF08040A8640020E8642865686599 +:10DAE00033E0DFEDC40A29EE201ABDEEC11A85ED40 +:10DAF000121A20EE200ADDED000AF8EEE00A60EED0 +:10DB0000200AC0EE880AF1EE600AFDEEE00AC5EDDB +:10DB1000130AD6ED010AF8EEE00A60EE200AC0EE24 +:10DB2000880AF1EE600AFDEEE00AC5ED140AD6EDB2 +:10DB3000020AF8EEE00A20EE200A80EE080AB1EEB2 +:10DB4000400ABDEEC00A85ED150A0C2203A905F1B5 +:10DB50003C00E2F75FFAD4F86001A86504F5A07410 +:10DB600006AA05F14801204602F081F90AAA06A991 +:10DB700005F15C0002F07BF905F15C01204602F042 +:10DB8000ECF906AA0AA9284602F071F9294606A866 +:10DB9000FFF71AFE0EB0BDEC048B70BD0024744973 +:10DBA0000000004EDB0F49400000344B2DE9F04FE0 +:10DBB00093B00746012407F13005286DBA4E00F0F6 +:10DBC0005001402904D0F16E002912D0400610D532 +:10DBD00006F1100107F16800FFF766FDD7F8500164 +:10DBE000C00519D506F15C0107F5A07002F0B5F982 +:10DBF00012E0D7F8500100F05002402A03D000296B +:10DC000015D0400613D506F15C0107F5A07002F0AF +:10DC1000A4F9286DC0050AD500A9304602F09DF987 +:10DC200006F1200200A906F1100002F020F9D7F851 +:10DC30005001C005384602D5FFF7C6FE01E0FFF7E8 +:10DC40002FFE06F11002314606F1200002F00FF916 +:10DC500095F85000400640F1C780386BD7F8501156 +:10DC60000843C00540F1AC8004AA07F1680106F141 +:10DC7000100002F081F9D5F840A04FEAEA7BE86B8A +:10DC8000C117AA6BD317A2FB028902FB039903FBFE +:10DC90000299A0FB002300FB013301FB003318EBCA +:10DCA000020049EB0301AAFB0A230AFB0B330BFB1F +:10DCB0000A338018594102292FDB02DCB0F1804F72 +:10DCC0002BD307A802F053FE07A8D0F808A04FEA0C +:10DCD000EA7B4068C117079AD317A2FB028902FBAF +:10DCE000039903FB0299A0FB002300FB013301FB16 +:10DCF000003318EB020049EB0301AAFB0A230AFBDD +:10DD00000B330BFB0A3380185941022905DB02DC77 +:10DD1000B0F1804F01D30420B063B06B042801D16F +:10DD2000002417E0022801D0032808D1A96C41F291 +:10DD3000883291FBF2F4012C0CDA01240AE001286C +:10DD400008D1A96C41F2883291FBF2F1012900DA85 +:10DD500021464C00032800D0A4005848444300202A +:10DD60000A900AAD21460598800202F07AF86860B0 +:10DD7000214604984042800202F073F8A860002017 +:10DD80000D900EAA06F110010AA802F070F806F133 +:10DD900010020EA906F1100002F0CCF806F11001F5 +:10DDA00006F11000FFF710FD00A9304602F0D5F88B +:10DDB00006F1200200A906F1100002F058F813E065 +:10DDC00006F11003AA6C06F1100107F16800FFF7D5 +:10DDD0007DFB00A9304602F0C0F806F1200200A940 +:10DDE00006F1100002F043F8002013B0BDE8F08FF8 +:10DDF0000024F4490000804E38B50446206BC0056D +:10DE00000AD404F13000006DC00505D4D4F85001E7 +:10DE1000C00501D4002032BD234DD4F8500100F4D8 +:10DE2000A060B0F5A06F09D1102204F5A07105F132 +:10DE30001000E2F7EFF80120E86604E02046FFF763 +:10DE4000B5FE0020E86604F13000D0E9022305F1B8 +:10DE5000100002F091FC002032BD10B5124C70226F +:10DE600000212046E2F7CCF84FF08040206120608E +:10DE70002062E063E065002010BD80B5FFF7EDFF94 +:10DE8000002805D10FF20D00BDE8024002F018BED7 +:10DE900002BD00001322C8210948FEF784BA000021 +:10DEA0000000D04001006400B0F90020112D44545E +:10DEB000FB2189400080664071981C00A69BC4002D +:10DEC000F9DD020838B50446DFF898536868087031 +:10DED000D5E90201C2E90001686A9FED600A296A7A +:10DEE000002920D400EE900AF8EEE00A60EE800AE5 +:10DEF000C4ED000AD5ED0A0AF8EEE00A60EE800AE9 +:10DF0000C4ED010AD5ED0B0AF8EEE00A60EE800AD6 +:10DF1000C4ED020AD5ED080AF8EEE00A20EE800A08 +:10DF200084ED030A26E0404200EE900AF8EEE00A93 +:10DF300060EE800AC4ED000AA86A404200EE900A32 +:10DF4000F8EEE00A60EE800AC4ED010AE86A404299 +:10DF500000EE900AF8EEE00A60EE800AC4ED020AD4 +:10DF6000286A404200EE900AF8EEE00A20EE800AAD +:10DF700084ED030A02F01BFD84ED040AE86B32BD58 +:10DF800070B588B00446164604A8FEF7E7FADFF835 +:10DF9000D452D5E90201C5E90401C6E9000100A88F +:10DFA00002F065FC00A841689FED2C0A009A002A47 +:10DFB00020D400EE901AF8EEE00A60EE800AC4ED7C +:10DFC000000AD0ED020AF8EEE00A60EE800AC4ED25 +:10DFD000010AD0ED030AF8EEE00A60EE800AC4ED13 +:10DFE000020ADDED000AF8EEE00A20EE800A84ED78 +:10DFF000030A26E0494200EE901AF8EEE00A60EECD +:10E00000800AC4ED000A8168494200EE901AF8EED9 +:10E01000E00A60EE800AC4ED010AC068404200EEEA +:10E02000900AF8EEE00A60EE800AC4ED020A009859 +:10E03000404200EE900AF8EEE00A20EE800A84EDFD +:10E04000030A00202061686B801100F00100296C38 +:10E05000891101F00101084308B070BD0000803053 +:10E060002DE9FF41044600254FF47A787D4E06F1F4 +:10E070000802311D06F1200002F01CFC04F12C0204 +:10E080005068306304F13800816C716304F1CC078F +:10E090007968B16304F1D8018B6F33645268D3059A +:10E0A00001D5D4F82C80836C5FEAC35C05D5D0F829 +:10E0B00044C0C44501DAE0460125D7F804C05FEA50 +:10E0C000CC5E05D5D4F8CCE0C64501DAF046022591 +:10E0D000896F5FEAC15E04D5D4F864E1C64500DA11 +:10E0E00003255FEAC15E07D50CEA030E5FEACE5E48 +:10E0F0000BD44FF0FF3508E003EA020E0CEA0E0ED7 +:10E100005FEACE5E01D44FF0FF35002D05D0022D21 +:10E110001BD00ED3032D24D02FE002F04000401E70 +:10E120008041C043C00FF063D4E90E01C6E902018B +:10E1300025E003F04001491E8941C943C90FF1633D +:10E14000D0E91423C6E9022319E00CF04000401E78 +:10E150008041C043C00FF063D4E93601C6E9020133 +:10E160000DE001F04000401E8041C043C00FF0634D +:10E17000D4E95601C6E9020101E00020F06306F18E +:10E18000180200A901A8FEF700FA9DF9000030600E +:10E1900000240DE040060AD501A850F8240000EE46 +:10E1A000100ABAEEC80A06EB840080ED320A641C3D +:10E1B000032C2CDA387900F0500040280CD101A84B +:10E1C00050F8240000EE100AB8EEC00A2C2000FB24 +:10E1D0000460443002F006F9786800F0C001C029FC +:10E1E000D8D101A850F8240000EE100AB8EEC00AF9 +:10E1F0002C2000FB0460443002F009F9DFED180A1E +:10E2000020EE200A06EB840080ED320ACFE70020E2 +:10E2100004B0BDE8F08137224FF461711248FEF777 +:10E22000C2B838B50F4CD82200212046E1F7E8FEED +:10E23000002508E004F1D8012C2000FB0540443003 +:10E2400002F0C1F86D1C032DF4DB002032BD80B557 +:10E25000FFF7E7FF0548BDE8024002F031BC0000CF +:10E2600000008037B8A3002061E0020817E202082E +:10E270002DE9F0412DED048B84B004460F46904605 +:10E280001D46DFF894683C2206F10C01304602F08E +:10E29000FFFC502206F1580106F1480002F0F8FC9C +:10E2A0000C22414606F13C00E1F7B4FE102239464B +:10E2B00006F19800E1F7AEFE9FEDA29AD6F85C0158 +:10E2C000401CC6F85C01072802DB0620C6F85C018A +:10E2D000D6F85C01C0F1060722E000AA06EB0710A1 +:10E2E00000F14801284601F066FE00AA07EB47004E +:10E2F00006EB800104F1B80001F030FDF0EE409A29 +:10E3000019EE900AE1F78CFE21F0004153EC182B36 +:10E3100023F00043E1F79AFF01D2B0EE699A7F1C27 +:10E3200019EE100AE1F77CFE41EC180B062FD4DB46 +:10E33000B0EE480AF0EE680A04B0BDEC048BBDE80C +:10E34000F08100002DE9F84F2DED088BB0EE409ADA +:10E35000F0EE609A0C46904600259FED78ABB0EE4B +:10E360004A8AF0EE6A8A416B002904D4D0F8D400BE +:10E37000032800D10125DFF8A067482206F1C80173 +:10E3800006F1C00002F084FC06F1B80989ED149B87 +:10E3900000270CE053EC182B06EBC700D0F8C41094 +:10E3A000D0F8C000E1F76EFF41EC180B7F1C0A2F7C +:10E3B000F0DB51EC180B0022DFF86037E2F7DEF8F3 +:10E3C00041EC1B0B89ED16BB322C2FDBC820C6F8A5 +:10E3D00054014046E2F7F6F941EC1A0B51EC190BE7 +:10E3E0000022DFF83C37E2F7C9F853EC1A2BE1F7CB +:10E3F0004FFE0022DFF84C37E2F7C0F841EC180B73 +:10E40000B4F57A7F45DB51EC190B0022DFF81437A5 +:10E41000E2F7B4F853EC1A2BE1F73AFE0022DFF8EA +:10E420002437E2F7ABF841EC180B32E0D6F8540190 +:10E4300041F2883198FBF1F101EB8101401AC6F8F5 +:10E44000540102D50020C6F8540151EC190B0022EA +:10E45000DFF8D436E2F792F882468B464046E2F780 +:10E46000B1F952465B46E1F713FE0022DFF8D436DD +:10E47000E2F784F841EC180BD6F85401002808D1D3 +:10E4800006F5AA70C068012803D1B0EE4A8AF0EE02 +:10E490006A8A06F5AA704068002803D0B0EE498A5F +:10E4A000F0EE698ADFF88406804503D1B0EE498A30 +:10E4B000F0EE698A53EC182B00200146F9F75CFF57 +:10E4C00001D089ED18BBD9E9180153EC1B2BE1F7FA +:10E4D0004DFF21F00041DFF85826DFF85836E2F70B +:10E4E00089F922D8D6E92E2300200146F9F744FF06 +:10E4F0001BD1012D19D1C820C6F8540151EC190BBC +:10E500000022DFF82436E2F739F804460D4640468B +:10E51000E2F758F922462B46E1F7BAFD0022DFF870 +:10E520002436E2F72BF841EC180BB0EE480AF0EE77 +:10E53000680ABDEC088BBDE8F18F00000000000008 +:10E5400000000000002474492DE9F0472DED0C8BEC +:10E55000AEB0044619A800210A460B460EC0084674 +:10E56000DFF8B4550DE005EB800191ED2A0AB8EE15 +:10E57000C00A20EE090A12A901EB800181ED000A10 +:10E58000401C9FEDCB9A0428EDDB06A802F06FF942 +:10E590009DED060AB8EEC00A20EE090A8DED1C0AB0 +:10E5A00006A81CA990ED010AB8EEC00A20EE090ADF +:10E5B00081ED010A90ED020AB8EEC00A20EE090AC8 +:10E5C00081ED020A90ED030AB8EEC00A20EE090AB6 +:10E5D00081ED030A02A802F04AF902AEF168706800 +:10E5E00001F039FC07460299B06801F034FC381A92 +:10E5F0001690F168B06801F02EFC804616AF0299C3 +:10E60000706801F028FC40447860F068014601F031 +:10E6100022FC06460299084601F01DFC8019A0F173 +:10E620008040B86012AB16AA1CA92046FFF720FE56 +:10E63000B0EE408AF0EE608A9FEDE3AB00261DE06D +:10E6400004EB86008069E2F7BDF841EC1B0B9FEDFF +:10E65000E0CB53EC1B2B51EC1C0BE1F719FD53ECF9 +:10E660001B2BE1F715FD53EC1C2BE1F711FD53ECCF +:10E670001A2BE1F707FE41EC1A0B761C032EDFDBA9 +:10E6800051EC1A0BE1F732FF00EE100A02F04EFADD +:10E6900010EE100AE1F7C4FC05F5AC7696ED08BB68 +:10E6A00053EC1B2BE1F762FE41EC1C0B86ED0ACB11 +:10E6B0009FEDC9AB53EC1C2B51EC1A0BE1F7E8FCB6 +:10E6C00041EC1D0B86ED0CDB53EC1B2BE1F7DAFD67 +:10E6D000C6E908019FEDC2BB53EC1C2B51EC1D0B8E +:10E6E000E1F7D6FCD6E90E23E1F7CCFD53EC1B2B6A +:10E6F000E1F7CEFCC6E90E014FF0000802F0BAFACD +:10E70000002808D1D6E90E01DFF82C24DFF82C34DC +:10E71000E1F79CFD0AD2D5F85801002806D1204621 +:10E72000FEF768FE012801D14FF0010804F118003E +:10E7300001F084FB81093269DFF8F003824200DBDB +:10E740000246B0EE480AF0EE680A2046FFF7FAFDEE +:10E7500085ED2E0B53EC102BD5E94801E1F798FC21 +:10E76000C5E92E0124A902A801F058FD05F59A7704 +:10E7700006AA02A9384601F07AFB394602A801F040 +:10E78000ECFB002218E002EB4207DF190DF1900CC0 +:10E790005CF827700DF1180C0CEB830CDCF804C04E +:10E7A000CCFB07015B1C032BEDDB19AB800F40EAB0 +:10E7B000810043F82200521C032A03DA002001469C +:10E7C0000346F0E719AFD5F85801002801D0002022 +:10E7D000B860D7F80890C9F1000000EE100AB8EE52 +:10E7E000C00A20EE098AB0EE480A02F04BFA8DED1D +:10E7F0000E0A0DF1380A0020CAF80400CAF8080011 +:10E80000B0EE480A02F041FA8AED030A306941F29B +:10E81000883190FBF1F000EE100AB8EEC00A00EE6D +:10E82000909AF8EEE00A9FEDBB1AC0EE810AC0EEA6 +:10E83000800AB0EE001AC0EE810AFDEEE00A10EE8A +:10E84000900A400000EE900AF8EEE00A9FEDB11A3F +:10E8500060EE810A20EE800ABDEEC00A87ED020A52 +:10E86000B8EEC00A20EE098AB0EE480A02F00AFAB1 +:10E870008DED0A0A0DF128090020C9F80400C9F835 +:10E880000800B0EE480A02F000FA89ED030A20AA57 +:10E890000EA912A801F08FFB0EAA0AA920A801F068 +:10E8A0008AFBD4F8D400012816DB002212E000BF56 +:10E8B000000080305AF8220000EE100A12A800EB87 +:10E8C000820080ED000ABEEEC10A05EB820080EDF9 +:10E8D0002A0A521C042AEDDB95ED2E8BD5F85871CF +:10E8E000002F01D086ED068BD6E9062351EC1B0BD9 +:10E8F000E1F7CEFBCDE9000153EC182B51EC1A0BDC +:10E90000E1F7C6FBDDE90023E1F7BCFC41EC100BAD +:10E9100085ED2E0B86ED060BD4F8D400032802D12A +:10E92000B8F1000F01D0002F3FD09FED878B53EC43 +:10E93000102B51EC180BE1F7ABFBE1F7D7FD00EE24 +:10E94000100A02F09FF98DED0A0A0020C9F80400B0 +:10E95000C9F80800D5E92E2351EC180BE1F798FB14 +:10E96000E1F7C4FD00EE100A02F08FF989ED030A09 +:10E970000EAA0AA912A801F01EFB0EA801F0A5FB21 +:10E9800000220AE00AEB820090ED000ABEEEC10A06 +:10E9900005EB820080ED2A0A521C042AF2DBD4E93E +:10E9A000362305F1A80001F0FBFED5F85801002838 +:10E9B00004D000217160401EC5F858012EB0BDEC96 +:10E9C0000C8BBDE8F08700BF0000000000000000D5 +:10E9D000000000000000F03E989999999999B93F7C +:10E9E000CDCCCCCCCCCCEC3FF8B5044604F1C8017E +:10E9F000494800F5AC750A7AD20604D40322C0F85F +:10EA0000582100226A60D4F85021D2050CD4226B20 +:10EA1000D20503D5D4F88020D20505D40321C0F84F +:10EA2000581100206860F2BD6A69002A0DD0D1E952 +:10EA30000423D1E90667901B63EB07014FF47A7258 +:10EA40000023E7F74BFB286115E0D4F8C81044F623 +:10EA50002062914201DB29610DE0EB68C918E96091 +:10EA6000914205DAD0F85801002801D10020F2BD0A +:10EA700029610020E8602046FFF766FD0020F2BD16 +:10EA800010B5254C4FF4D07200212046E1F7B8FABA +:10EA90004FF08040C4F83401C4F8A80000221346A7 +:10EAA00004F1A80001F07CFE4FF47A70C4F8540120 +:10EAB00000202349C4E948019FED250B84ED5C0B40 +:10EAC00004F5B87080ED020B80ED040B80ED060BB1 +:10EAD00080ED080B10BD1049C1F86001002070479F +:10EAE0000D49C1F86C010020704704224FF41671E3 +:10EAF0001948FDF758BC80B5FFF7C2FF0020FFF7AB +:10EB0000EAFF0020FFF7ECFF1448BDE8024001F0E7 +:10EB1000D7BF0000E1023747F0E1002000002440A9 +:10EB200000006940000049400000794040420F0069 +:10EB30001383C0CAA145B63F7B14AE47E17A843F38 +:10EB40000000F03F0088B340000000000000E03FFC +:10EB50000000000000000000E9E90208EBEA0208FA +:10EB600080B5B8220146DFF8FC04E1F753FA002033 +:10EB700002BD80B5B822DFF8EC14E1F74BFA0020B3 +:10EB800002BDF0B585B0044600A902A8FDF713FB4D +:10EB900001A801F019FE02283FD0D4F8080100991D +:10EBA000461ADFF8C04494F8B000002848D0002E80 +:10EBB00046D0F717029D2268D317A2FB060102FB7D +:10EBC000071103FB0611000C40EA014040190290B6 +:10EBD00002ADD5F804C06268D317A2FB060102FBA0 +:10EBE000071103FB0611000C40EA01406044686015 +:10EBF000D5F808C0A068C117A0FB062300FB0733A7 +:10EC000001FB0633120C42EA034202EB0C00A8603F +:10EC1000032102A8FDF791FA12E0606B03280FD1DF +:10EC2000FDF7BCFA00280BD0DFF838440C2202A90B +:10EC300004F10C00E1F7EEF90098A06100F003F890 +:10EC4000002005B0F0BD2DE9F04F87B0DFF81404C7 +:10EC50008069DFF81464B168884200DAB060F16856 +:10EC6000814200DAF060F168B268891A3269914233 +:10EC700001DA0020C2E10014C117CDE9000170687B +:10EC8000401C7060DDE90001DDE90023A2FB0045C6 +:10EC900002FB015503FB0055CDE90245DDE9020108 +:10ECA000DDE90023A2FB004502FB015503FB0055F3 +:10ECB000CDE90445D6E90E01DDE90023801859416C +:10ECC000C6E90E01D6E90C01DDE90223801859419D +:10ECD000C6E90C01D6E91C01DDE90423801859417D +:10ECE000C6E91C01DFF87C03D0E92A23DDE9040131 +:10ECF000DDE90045A4FB008904FB019905FB0099AF +:10ED000012EB080043EB0901DFF85823C2E92A019E +:10ED1000002445E0DFF84C0300EB840500EBC4075A +:10ED2000D7E90CABDDE90023E868C117A0FB028935 +:10ED300000FB039901FB02991AEB08004BEB090158 +:10ED4000C7E90C013037D7E90A01DDE90289EA6831 +:10ED5000D317A2FB08AB02FB09BB03FB08BB10EBFC +:10ED60000A0041EB0B01C7E90A01D7E91001EA6883 +:10ED7000801851EBE271C7E91001D7E918ABDDE962 +:10ED80000401EA68D317A2FB008902FB019903FB87 +:10ED900000991AEB08004BEB0901C7E91801641C44 +:10EDA000032CB7DB7068B0F57A7FC0F2938000EB7C +:10EDB000C00009300A2190FBF1F070604FF00908A3 +:10EDC000D6E90E01A8FB002308FB013312F109006C +:10EDD00043F100010A220023E7F780F9C6E90E019A +:10EDE000D6E90C01A8FB002308FB013312F109004E +:10EDF00043F100010A220023E7F770F9C6E90C018C +:10EE0000D6E91C01A8FB002308FB013312F109001D +:10EE100043F100010A220023E7F760F9C6E91C016B +:10EE20009048D0E92A23A8FB020108FB031109300E +:10EE300041F100010A220023E7F750F9894AC2E9AB +:10EE40002A01002444E0874800EBC405D5E90C0101 +:10EE5000A8FB002308FB013312F1090043F1000174 +:10EE60000A220023E7F73AF9C5E90C013035D5E964 +:10EE70000A01A8FB002308FB013312F1090043F14A +:10EE800000010A220023E7F729F9C5E90A01D5E9BB +:10EE90001001A8FB002308FB013312F1090043F124 +:10EEA00000010A220023E7F719F9C5E91001D5E9A5 +:10EEB0001801A8FB002308FB013312F1090043F1FC +:10EEC00000010A220023E7F709F9C5E91801641CCB +:10EED000032CB8DBD6E90C01A0FB002300FB0133B7 +:10EEE00001FB00330320A0FB024500FB0355CDE9E5 +:10EEF0000445D6E90E01D6E91C23A2FB004502FB1E +:10EF0000015503FB0055AD0045EA94757068C117C3 +:10EF1000544AD2E92A89A8FB002308FB013309FBE4 +:10EF20000033CDE90223002761E0DDE90401B0EB05 +:10EF30008400A941DDE9022380185941CDE900018F +:10EF400001D1002852D0474800EBC70000F1300C37 +:10EF5000D0E90C23D6E90C01A0FB02AB00FB03BBFC +:10EF600001FB02BBD6E90E23DCE90A01A0FB028902 +:10EF700000FB039901FB0299BAEB08026BEB090352 +:10EF80000320A0FB02AB00FB03BBDCE91023D6E9A6 +:10EF90001C01A0FB028900FB039901FB0299BAEB5B +:10EFA000080A6BEB090B7268D317DCE91801A0FBA8 +:10EFB000028900FB039901FB02991AEB08004BEB55 +:10EFC0000901DDE9042380185941B0EB8400A9410F +:10EFD000DDE9022380185941401E61F10001DDE99D +:10EFE0000023E7F77BF81F4941F827007F1C032F18 +:10EFF0009BDB1C48012180F8B010002007B0BDE861 +:10F00000F08F10B5174CB82200212046E0F7F8FF2A +:10F01000164820624FF4AA0060624FF4A020A0625C +:10F02000002010BD082296211148FDF7BCB980B51B +:10F03000FFF7E7FF40F2D163B8220E490E4801F016 +:10F04000EEFC002801D0012002BD0C4801F038FD83 +:10F05000002801D0012002BD0248012180F8B11032 +:10F06000002002BDB8F50020D0F500200000D8FF38 +:10F0700083EB020873EB020861EB020825F002083B +:10F08000704700200AE0DFF8F81B01EB8001DFF891 +:10F09000F42B0A62DFF8E42BCA62401C0328F2DB7F +:10F0A000704700201BE0DFF8D81B01EB800191EDD9 +:10F0B0002D0AD1ED080AF4EE400AF1EE10FA01D55E +:10F0C00081ED080A01F12002D2ED030AB4EE600AD4 +:10F0D000F1EE10FA02D5D1F8B410D160401C03282B +:10F0E000E1DB7047FEB5B0F9542012040092B0F98C +:10F0F0005620130400AA5360B0F9584024049460C9 +:10F10000DFF87C5B009E6F6EF61B0096AE6E9B1B5D +:10F110005360EB6EE31A93600B46416F006D80B253 +:10F1200001F01AF9F7BDF0B589B000252E462F463B +:10F13000DFF84C4BD4F89410012902D12946C4F8C9 +:10F14000941003A9FFF7CEFF06A801F068FB03980F +:10F150000699A0EBA130039006A803A94A6843686A +:10F16000A2EBA3324A608A688068A2EBA030886074 +:10F17000602204F5587104F5577001F089FD0C22E6 +:10F1800003A904F55D70E0F745FF00A801F0EFFB6F +:10F19000602204F5737104F5727001F079FD0C22A0 +:10F1A00000A904F57870E0F735FF294600A838E09B +:10F1B00004F2344293685B1C936001EB410204EB60 +:10F1C0008202D2F85C334FF0090C93FBFCF35D191B +:10F1D00001EB410304EB8303D3F860C34FF0090E46 +:10F1E0009CFBFEFC664403F55873D3F804C09CFBFB +:10F1F000FEFC6744DDF800C0D2F8C82392FBFEF2A3 +:10F20000624400924268D3F86CC09CFBFEFC6244EE +:10F21000426082681B6FF44693FBFCF39A1882608D +:10F22000491C0929C4DB290000D54942320000D518 +:10F2300052423B0000D55B42009D002D00D56D423F +:10F2400000954568002D01D56D4245608568002D0B +:10F2500001D56D4285600025009EB14200DA01258E +:10F2600041688A4200DA6D1C8068834200DA6D1CB6 +:10F2700004F234429068092800DB6D1C042D0FD184 +:10F2800094F83414032908DB526804F16400FCF795 +:10F290002DFF012001F063FB02E00846FCF71FFF91 +:10F2A00009B0F0BD2DE9F0410446DFF8D459002043 +:10F2B00085F8340405F234467060074605F1080805 +:10F2C00025E005EB870090ED330AD8ED0D0AB4EE8A +:10F2D000600AF1EE10FA19DBD8E912230020DFF8FA +:10F2E000AC19E0F7CFFF21F00041DFF8A429DFF8E7 +:10F2F000A439E0F7ABFF09D295F83404401C85F837 +:10F30000340470680121B940084370607F1C032FEA +:10F31000D7DB95F83404002815D0002709E004EB6A +:10F32000C70041680068ECF7B5FE05EB8701486649 +:10F330007F1C032FF3DB0020B060A868042802DAEA +:10F3400095F83404A86095F8340403281DD198ED8D +:10F35000010ADFEDBD0AB4EE600AF1EE10FA14D531 +:10F36000D8E912230020DFF82419E0F78BFF21F001 +:10F370000041DFF81C29DFF81C39E0F767FF04D2F1 +:10F38000A868032801D10420A86098ED020ADFEDE7 +:10F39000AF0AB4EE600AF1EE10FA1DD598ED010A3D +:10F3A000DFEDAB0AB4EE600AF1EE10FA14D5D8E93D +:10F3B00012230020DFF8D418E0F764FF21F00041A9 +:10F3C000DFF8D428DFF8D438E0F740FF04D2A8688B +:10F3D000042801D10520A860BDE8F0812DE9F041A5 +:10F3E0000446DFF89C78D7F8B404012850D107F11F +:10F3F000E005F7EE000AB7EE000A07F5E4712846CB +:10F4000001F04CFC07F1500207F5D471284601F0D9 +:10F410004BFE06003DD07868401C7860616F0C465A +:10F42000D7E91401ECF736FE214600F01AFD00EE94 +:10F43000100ABAEEC80A10EE100AE0F7F1FDC7E9AB +:10F44000140107F5D07407F15008D4E90201ECF774 +:10F4500021FEC8F80800D4E90401ECF71BFEC8F847 +:10F460000C00D4E90601ECF715FEC8F81000D7E946 +:10F4700068010122DFF82838E1F7BCF909D89FEDCF +:10F48000750AF0EE400A2946284601F007FC00E024 +:10F4900000263046BDE8F08190ED030AD0ED040A65 +:10F4A000F4EE400AF1EE10FA1BD590ED051AB4EE19 +:10F4B000401AF1EE10FA14D50021016490ED040A0F +:10F4C000D0ED050AB4EE600AF1EE10FA04DB01217A +:10F4D00041640221816470470221416401218164F9 +:10F4E0007047B4EE600AF1EE10FA1BD590ED050AF4 +:10F4F000B4EE600AF1EE10FA14D50121016490ED2A +:10F50000030AD0ED050AB4EE600AF1EE10FA04DB4E +:10F51000002141640221816470470221416400217D +:10F52000816470470221016490ED030AB4EE600A21 +:10F53000F1EE10FA04DB002141640121816470477F +:10F54000012141640021816470470021C1640B46A0 +:10F5500006E01A4640F8212000EB81025362491C64 +:10F560000329F6DB0121416719468167704710B511 +:10F57000044604F15400142141600A21C1600021B5 +:10F5800001772046FFF7E1FF0020606510BD000015 +:10F5900038B52DED028B86B003A9FFF7A3FD9FEDD3 +:10F5A000B18B002418E003A850F8240000EE100AE4 +:10F5B000BAEEC80A00A800EB840080ED000A20EE35 +:10F5C000000A10EE100AE0F72BFD53EC182BE0F7C1 +:10F5D00059FE41EC180B641C032CE4DBB0EE480A26 +:10F5E000F0EE680AE1F71EF9B0EE408AF0EE608AAC +:10F5F000002419E000EB840500A850F82400E0F78F +:10F600000FFD53EC182BE0F7B9FFE0F76FFF00EEAA +:10F61000100AD5F8400400EE900A30EE200A05F2F8 +:10F62000404080ED000A641CDFF85406032CE1DB47 +:10F63000D0F89414491CC0F894140121C0F8BC14EB +:10F6400006B0BDEC028B31BDAF47E13D00007A430F +:10F65000BD74933CCDCCCC3E38B50446002004F1BB +:10F660003C0507E0B1EE400A81ED030A002144F8B1 +:10F670002010401C032838DA95ED050AB8EEC00AC0 +:10F6800004EB8001D1ED000A80EE800AF0EE400A22 +:10F69000F5EE400AF1EE10FA02DBB0EE601A01E07E +:10F6A000B1EE601AD1ED061AF5EE401AF1EE10FA3D +:10F6B00001DAF1EE611A31EE611A81ED0C1AC1ED39 +:10F6C000060AD4ED0F0ABFEE001A30EE811AD1ED12 +:10F6D000091A01EE210A80EE200A81ED090AB5EE31 +:10F6E000400AF1EE10FABDDBBEE72046FFF7D4FE7C +:10F6F0002869B0F57A7F01DA401C2861686894F8BF +:10F700007010052900F28380DFE801F0030E192C48 +:10F710006C4004F17000012141608160002028618B +:10F72000084684F8700031BD04F17000C1680129F9 +:10F730006DD1022184F870100021816031BD04EB8D +:10F74000800090ED030AD5ED0A0AB4EE600AF1EEEE +:10F7500010FA12DAD5ED0B0AF4EE400AF1EE10FAC7 +:10F760004BDB2BE004EB800090ED030AD5ED0A0A99 +:10F77000B4EE600AF1EE10FA49DB042084F8700060 +:10F7800004F1700000214160816031BD04EB800014 +:10F7900095ED0B0AD0ED030AB4EE600AF1EE10FA13 +:10F7A0000CDA90ED0C0ADFED330AB4EE600AF1EEEC +:10F7B00010FA0CD52869696A884228DB032084F88E +:10F7C000700004F1700001214160816031BD0420AE +:10F7D00084F870000020286104F17000002141606D +:10F7E000816031BD95ED0C0A04EB8000D0ED030A79 +:10F7F000B4EE600AF1EE10FA09DB052084F870001F +:10F800000020286104F1700001214160816031BD58 +:10F8100010B52DED028B08EE100ADFF86444B8EE47 +:10F82000C80ADFED120A20EE200ADFED110A80EE91 +:10F83000200A10EE100AE0F7F3FB41EC100B01F088 +:10F84000C1FF53EC102B0020DFF85814E0F720FC28 +:10F85000ECF720FCC4F8840084ED208ABDEC028B18 +:10F8600010BD00000000000000000000368D2740A1 +:10F870000024F449CCCC4CBD2DE9F0472DED028B92 +:10F8800090B0044602A800210A460B460EC004F1BF +:10F890003006B06CDFF8E85344F62061884206DB9E +:10F8A000D5F88010884212D0FFF7B2FF0FE0D5F8EC +:10F8B00058238018C5F858038842C0F26781B16C9C +:10F8C000814201D0FFF7A4FF0020C5F85803206B48 +:10F8D000C5F8C0042046FFF75BFED5F89404D5F8C0 +:10F8E0009014884206DB05F58860FFF7B5FE00201E +:10F8F000C5F89404D5F8B804012802D12046FFF7D2 +:10F9000012FCD5F8B404012840F0408102A801F0AF +:10F910005DF802A8D0ED020A90ED011A9DED020AF1 +:10F92000DDED021A20EE210A01EE010A00EEA00A26 +:10F9300001F0FCF885ED030ABEEE410A10EE100A54 +:10F94000ADF8000000A800214180818005F52C77EA +:10F950003946FDF7BFF908A800F089FF296F08981C +:10F9600000F07FFA81460DF12008696FD8F8040095 +:10F9700000F077FA8246A96FD8F8080000F071FA13 +:10F980000AEB090100EB0109E96FD8F80C0000F05F +:10F9900068FA00EB0908102208A905F17000E0F7E9 +:10F9A00039FB4FF000091CE004EB490A716CBAF90D +:10F9B0005400000400F055FA00EE100A0CA800EB09 +:10F9C000890080ED000ABAEEC80A05EB890080EDD7 +:10F9D000050A05A8BAF95410090440F8291009F1DC +:10F9E0000109B9F1030FDFDB05A905F5E47001F0AA +:10F9F000F4F9D5F8280329688842C0F2C78094ED4D +:10FA0000428ABAEEC88A95ED360AB5EE400AF1EEA2 +:10FA100010FA0BD038EE400A10EE100AE0F700FBA7 +:10FA200021F00041E0F762FDC5F8DC0085ED368A83 +:10FA3000A868032804D9001F0AD0401E0FD014E084 +:10FA40009948A8634FF07E50E863C82028640CE012 +:10FA50009648A8639648E8636420286405E09548C2 +:10FA6000A8639548E863322028643846FCF7EFFF26 +:10FA700001F06AF800EE100ADFED800A80EE200A3D +:10FA800085ED040AA822002105F52C70E0F7B8FAEC +:10FA9000D5F88400404549DA95ED040AB5EE400AF0 +:10FAA000F1EE10FA42DDD5ED0E0AB4EE600AF1EE89 +:10FAB00010FA3BD56868296C884205DA2046FFF7C2 +:10FAC0008DFC002810D161E095ED2C0ADFED6E0A67 +:10FAD000B4EE600AF1EE10FA06DB2046FFF77EFC7A +:10FAE000002853D000206860002005E005EB80016D +:10FAF0004A69C1F8B420401C0328F7DBFFF7D1FAAC +:10FB00004FF000090BE005EB890090ED080AD0EDFD +:10FB10000B0A30EE600A80ED330A09F10109B9F1F0 +:10FB2000030FF0DB05F5D470FFF7BCFB00200CE001 +:10FB300005EB800191ED260AD1ED050A30EE600A51 +:10FB4000B0EEC00A81ED290A401C0328F0DB95EDD8 +:10FB5000290AD5ED2A0A30EE200AD5ED2B0A30EE1F +:10FB6000200A85ED2C0A4FF0000906E005EB89001C +:10FB70004169C0F8981009F10109B9F1030FF5DBEB +:10FB8000E822002105F5E470E0F73AFA002010B011 +:10FB9000BDEC028BBDE8F08710B5394C4FF49B6289 +:10FBA00000212046E0F72CFA102020604FF0804022 +:10FBB0002067FFF766FA04F58860FFF7D8FC206835 +:10FBC000C4F890044FF08440C4F87C041E20C4F8AC +:10FBD0009C043A48C4F8A8043948C4F8A404394835 +:10FBE000C4F8AC041920FDF787FB002010BD0122EA +:10FBF00040F252313448FCF7D6BB10B5204C4FF4DC +:10FC00009B6201462046E0F705FA0120C4F8940003 +:10FC1000002010BD80B51A490022C1F894204FF48D +:10FC20009B62E0F7F7F9002002BD10B5FFF7B4FFC3 +:10FC3000040009D04FF437730FF29C020FF2BC019D +:10FC4000FFF71EFA204610BD204800F039FF0400DF +:10FC500009D040F2DF230FF280020FF2A001FFF77C +:10FC60000FFA204610BD42F226034FF49B6218495A +:10FC70001848BDE8104000F0D2BE000000401C460D +:10FC8000A8C1002000401CC6CDCC4C3D0000F0BFF8 +:10FC90009A9999999999B93F9CC420B07268913FFB +:10FCA0000070A7400000D0410080BB440000964394 +:10FCB0009A99993F000070423333B33FCDCCCC3E8C +:10FCC000CDCC4C3F3333333F79F80208EFFB0208C9 +:10FCD00015FC0208FBFB0208696E765F656E6162C7 +:10FCE0006C655F696E5F7573655F6175746F5F6387 +:10FCF000616C6962726174696F6E0000433A5C54B2 +:10FD0000656D705C4955535C494B445C5461652D8D +:10FD1000536F6F5C656D6265646465645F72656690 +:10FD20006572656E63655F666F725F4E6F74655F67 +:10FD3000335C656D6265646465645C496E76656EAE +:10FD400053656E73655C6D706C5C616363656C5F5D +:10FD50006175746F5F63616C2E63000010B590B0C5 +:10FD600014460022009200AA90ED010AB8EEC00AE3 +:10FD7000D1ED020AF8EEE00A20EE200AD0ED020AE8 +:10FD8000F8EEE00A91ED011AB8EEC11A00EEC10AD0 +:10FD900082ED010A90ED020AB8EEC00AD1ED000A28 +:10FDA000F8EEE00A20EE200AD0ED000AF8EEE00AB4 +:10FDB00091ED021AB8EEC11A00EEC10A82ED020AF4 +:10FDC00090ED000AB8EEC00AD1ED010AF8EEE00AA3 +:10FDD00020EE200AD0ED010AF8EEE00A91ED001ABB +:10FDE000B8EEC11A00EEC10A8DED030A0CAA00A9F3 +:10FDF000204600F0E0F804A9204600F0FAF908AA2D +:10FE000004A90CA800F0D7F808A890ED020AB5EEF6 +:10FE1000400AF1EE10FA09D1D0ED010AF5EE400AE0 +:10FE2000F1EE10FA02D19FED530A05E0D0ED010A80 +:10FE3000F8F7CCFAB1EE400A10B010BD00210A4626 +:10FE400005E050F822305B1303FB0311521C032A18 +:10FE5000F7DB0846704781FB0001400F40EAC10014 +:10FE6000704781FB0001800F40EA810070472DE957 +:10FE7000F04104460D46164629682068FFF7F1FF59 +:10FE8000074669686068FFF7ECFF8046A968A068CC +:10FE9000FFF7E7FFA7EB08010F1AE968E068FFF733 +:10FEA000E0FF381A306069682068FFF7DAFF07461C +:10FEB00029686068FFF7D5FF8046E968A068FFF70A +:10FEC000D0FF08EB07014718A968E068FFF7C9FFF2 +:10FED000381A7060A9682068FFF7C3FF0746E96811 +:10FEE0006068FFF7BEFF80462968A068FFF7B9FF8A +:10FEF000A7EB080147186968E068FFF7B2FFC0196F +:10FF0000B060E9682068FFF7ACFF0746A968606841 +:10FF1000FFF7A7FF80466968A068FFF7A2FF08EB1C +:10FF200007010F1A2968E068FFF79BFFC019F0600E +:10FF3000BDE8F08110B403680C68E31813604368EF +:10FF40004C68E318536083688C68E3189360C0685A +:10FF5000C9680818D06010BC704702680A6042681F +:10FF600052424A60826852428A60C0684042C86019 +:10FF7000704700000000000030B591B004461546FF +:10FF8000002000900C2201A8E0F744F80CAA00A978 +:10FF90002046FFF76CFF08A92046FFF7DEFF04AA02 +:10FFA00008A90CA8FFF763FF0C2205A92846E0F773 +:10FFB00031F811B030BD90ED000AD1ED000A20EE0D +:10FFC000200AD0ED010A91ED011A00EEC10AD0ED30 +:10FFD000020A91ED021A00EEC10AD0ED030A91ED7A +:10FFE000031A00EEC10A82ED000A90ED000AD1ED7D +:10FFF000010A20EE200AD0ED010A91ED001A00EE70 +:020000023000CC +:10000000810AD0ED020A91ED031A00EE810AD0EDCB +:10001000030A91ED021A00EEC10A82ED010A90ED89 +:10002000000AD1ED020A20EE200AD0ED010A91ED7E +:10003000031A00EEC10AD0ED020A91ED001A00EE9B +:10004000810AD0ED030A91ED011A00EE810A82EDDA +:10005000020A90ED000AD1ED030A20EE200AD0ED4D +:10006000010A91ED021A00EE810AD0ED020A91ED2B +:10007000011A00EEC10AD0ED030A91ED001A00EE5C +:10008000810A82ED030A704790ED000AD1ED000A63 +:1000900030EE200A82ED000A90ED010AD1ED010A4E +:1000A00030EE200A82ED010A90ED020AD1ED020A3B +:1000B00030EE200A82ED020A90ED030AD1ED030A28 +:1000C00030EE200A82ED030A704790ED030AD0ED6E +:1000D000020A90ED011AD0ED001A21EEA12A01EEDC +:1000E000012A00EEA02A00EE002AB0EE000AB4EECB +:1000F000402AF1EE10FA3AD5B6EE000A22EE000AD6 +:1001000060EE020AB7EE081A00EEC21A61EE020AA9 +:1001100020EE201AB7EE082A01EE602A62EE200ACD +:1001200020EE201AB7EE082A01EE602A62EE200ABD +:1001300020EE200AB7EE081A00EE601A21EE202AFF +:1001400021EE820A80ED000A90ED010A20EE020AFB +:1001500080ED010A90ED020A20EE020A80ED020A0B +:1001600090ED030A20EE020A80ED030A70474FF07B +:100170007E510160002141608160C160704710B50F +:100180000446D4ED030A94ED021AD4ED011A94ED5D +:10019000000A20EE000A01EEA10A01EE010A00EEBB +:1001A000A00A00F0C3FCB5EE400AF1EE10FA18D038 +:1001B000D4ED000AC0EE800AC4ED000AD4ED010AB5 +:1001C000C0EE800AC4ED010AD4ED020AC0EE800A36 +:1001D000C4ED020AD4ED030A80EE800A84ED030A1E +:1001E00010BD4FF07E50206000206060A060E06095 +:1001F00010BD02680A6090ED010AB1EE400A81ED7F +:10020000010A90ED020AB1EE400A81ED020A90ED7A +:10021000030AB1EE400A81ED030A704770B5054646 +:100220000C4668680146FFF716FE06462968084630 +:10023000FFF711FE8019A0F180402060A96868686E +:10024000FFF709FE06462968E868FFF704FE301A42 +:100250006060E9686868FFF7FEFD06462968A868DF +:10026000FFF7F9FD8019A060A9686868FFF7F3FD42 +:1002700006462968E868FFF7EEFD8019E060A86887 +:100280000146FFF7E8FD064628680146FFF7E3FD53 +:100290008019A0F180402061E968A868FFF7DBFDC4 +:1002A000064629686868FFF7D6FD301A6061E9687C +:1002B0006868FFF7D0FD06462968A868FFF7CBFD00 +:1002C000301AA061E968A868FFF7C5FD06462968ED +:1002D0006868FFF7C0FD8019E061E8680146FFF734 +:1002E000BAFD064628680146FFF7B5FD8019A0F162 +:1002F0008040206270BD90F90010012901DB0020D0 +:100300007047002901D50420704790F90110012998 +:1003100001DB01207047002901D50520704790F9C5 +:100320000200012801DB02207047002801D50620C9 +:1003300070470720704738B50446FFF7DCFF0546D5 +:10034000E01CFFF7D8FF45EAC005A01DFFF7D3FF6B +:1003500045EA801080B232BD2DE9F04107460C46D7 +:1003600015461E46780702D54FF0FF3000E0012009 +:10037000B84608F0030255F822205043FFF771FDFC +:100380003060B80602D54FF0FF3000E00120214672 +:100390004FEA680202F00C0252595043FFF761FD28 +:1003A0007060F80502D54FF0FF3000E001202146D3 +:1003B0004FEA281202F00C0252595043FFF751FD48 +:1003C000B060BDE8F08110B400220260426005E038 +:1003D00000EB820351F822401C61521C052AF7DB16 +:1003E00010BC704780ED090A80ED0A0AD0ED060ABC +:1003F000B7EE001A70EE810A90ED071A70EE810ACE +:1004000080EE200A80ED000A80ED010A704780ED41 +:10041000090A90ED010AD0ED000AD0ED061A90ED20 +:10042000091A01EEE01AD0ED071A01EEC01A90ED9C +:10043000042AF0EE411A42EE201AD0ED050A40EEF1 +:10044000801AC0ED0A1A90ED080A21EE800A80EDAC +:100450000A0A0168416080ED001A70472DE9F843EF +:1004600004460D461646002711E055F8291009EB01 +:100470004900C01954F82000FFF7F3FC804409F14B +:100480000109B9F1030FF0DB46F827807F1C032F29 +:1004900003DA4FF00008C146F3E7BDE8F183F1B598 +:1004A00082B0012801DA0020FEBD00A902A800F0F8 +:1004B00055F8044600250098012806DB014602464F +:1004C00002EBD1714910A0EB4105401B009002984E +:1004D000A0F1804706463946FFF7C3FCA6EB60064D +:1004E000022C23DB7810A0F1C0413846FFF7B9FC9D +:1004F00001463846FFF7B5FC471039463046FFF74E +:10050000B0FCA6EB6006032C10D17810A0F1C0411E +:100510003846FFF7A6FC01463846FFF7A2FC471015 +:1005200039463046FFF79DFCA6EB6006002D04D04F +:1005300027493046FFF795FC06460098012802DB64 +:100540004010064107E010F1010F04D12149304667 +:10055000FFF787FC06463046FEBD000070B5044636 +:100560000D4620681C49884205DB401020604FF092 +:10057000FF3028601AE0194EB04215DA204600F02C +:1005800039F8286020681649884205DB4010206051 +:100590002868401E286009E0B04207DA4000206069 +:1005A0002868401C286001E00020286020680D4970 +:1005B00009180D4A914201D3032070BD0B49081858 +:1005C0000B49884201D3022070BD012070BD00009C +:1005D000CD3C412D9A79825AFD0BB958FE855C2C91 +:1005E000FC0BB958666666C6CDCCCC0C0AD7A3C046 +:1005F00015AE470100210268002A01D10846704764 +:10060000130C1B0402D1102112040260026812F0C4 +:100610007F4F02D1083112020260026812F0704F5F +:1006200002D1091D12010260026812F0404F02D18E +:10063000891C920002600268002A02D5491E5208F5 +:10064000026008467047F8B504460D46206801462A +:10065000FFF707FC064661680846FFF702FC0746FD +:10066000A0680146FFF7FDFBC6F18041C91B081ACF +:10067000FFF715FF2860206868606068A860A068C0 +:10068000E8600020F2BD000080B58DF800108DF804 +:100690000120022300AAD0210020E2F789FB0128D3 +:1006A00001D1002002BD4FF0FF3002BD38B5144625 +:1006B000094D29701946681CDFF7ACFC631CDBB2DE +:1006C0002A46D0210020E2F773FB012801D1002047 +:1006D00032BD4FF0FF3032BD34FC002080B5D2B2C5 +:1006E00000920A46D0210020E2F7A0FB012801D1A8 +:1006F000002002BD4FF0FF3002BD0EB4002003B059 +:10070000704780B5E2F791FA6421E2F747FC0020D8 +:1007100002BD00000300002013F0030F09D0521E99 +:1007200022BF13F8010B11F801CBB0EB0C00F3D092 +:100730007047121F22BF53F8040B51F804CB6045D9 +:10074000F7D0121D0AD200BA9CFA8CFCB0EB0C0058 +:1007500038BF6FF0000088BF01207047521E22BFD3 +:1007600013F8010B11F801CBB0EB0C00F6D0521CC2 +:1007700008BF10467047000070B514461D46DFF8EC +:10078000386206F148014A6F42F002024A671022BD +:10079000014606F11000DFF73DFCC6E9124570BDC9 +:1007A00070B514461D46DFF8106206F14001CA6FAD +:1007B00042F00102CA671022014606F17000DFF71D +:1007C00029FCC6E9104570BDDFF8EC11D1F8A8206E +:1007D000026091F8A400704718B40146DFF8D821F0 +:1007E00002F1A40392F8A440A04208D1022903D147 +:1007F0005868401C586010E0002058600DE000244C +:100800005C6082F8A400012901D1012000E00220EF +:100810002246032118BC00F037B911BC704770B5EF +:100820000446654DE9686868FFF715FB06462968C8 +:10083000A868FFF710FB301A2060E968A868FFF786 +:100840000AFB064629686868FFF705FB80196060A7 +:10085000E8680146FFF7FFFA064629680846FFF7F1 +:10086000FAFA8019A0F18040A060002070BD80B528 +:1008700010225249DFF7CEFB002002BD38B50446F6 +:100880004D4D95F8BC0010F0030F0CD02A4605F131 +:10089000100105F17000FFF7EAFAD5F8BC0020F06E +:1008A0000300C5F8BC00102229462046DFF7B2FB42 +:1008B000002032BD38B50C461546FFF7DFFFFBF7C9 +:1008C00089FBC5E90001FBF76EFB002803D0FBF7AD +:1008D0007BFE206031BDFBF76EFB002803D0FBF7E9 +:1008E00070FE206031BDFBF76DFB002803D0FBF7E5 +:1008F00075FE206031BD0020206031BD2E49C1F859 +:10090000C0000020704780B507224FF448712C4882 +:10091000FBF749FD002002BD10B5274CD022002175 +:100920002046DFF76DFB4FF080406066A066E06612 +:1009300020672061206020622063C4F88000214885 +:10094000C4F8C400002010BD80B5FFF7E5FF002803 +:1009500004D11D48BDE8024000F0B2B802BD1649FE +:10096000C1F8940070471449C1F8B000704710B541 +:1009700084B0040018D000221146FBF7EFFD00A858 +:10098000FFF74DFF20680099A0EBA130206000A880 +:1009900061684268A1EBA2316160A1688068A1EB47 +:1009A000A030A060002000E0162004B010BD024876 +:1009B00090ED310A7047000018F3002028F3002062 +:1009C000FD080308DB0F49400709030810B584B090 +:1009D000040016D000A8FFF7CAFF002811D100209C +:1009E0000BE000A951F8201000EE101ABAEEC80A68 +:1009F00004EB800181ED000A401C0328F1DB00209C +:100A000000E0162004B010BD10B51E4C4FF4CC729F +:100A100000212046DFF7F4FA0C20606010BD70B4AE +:100A2000002500E06D1C174C2668B54209DA05EB7D +:100A3000450604EB8604D4F8B040A342F2D1162058 +:100A40001EE0142E01DB16201AE00C2505FB0646DD +:100A5000C6F8B030236805FB0343C3F8A820236819 +:100A600004EB83039860206804EB80008165606874 +:100A700002F10C01081860602068401C2060002012 +:100A800070BC704790E30020002A05D1074A136824 +:100A900023EA0101084310607047044A11680028E6 +:100AA00001D000201060084670470000E8FE0020DA +:100AB00080B5542200211348DFF7A2FA002002BDBE +:100AC00010490A68142A01DB1620704701EB8202E4 +:100AD00050600868401C08600020704738B500244A +:100AE000254609E000EB850040688047002802D0D9 +:100AF000002C00D104466D1C024801688D42F1DBD8 +:100B0000204632BD98FB0020D2B2203A22BF41FAE3 +:100B100002F0C91770472032D141D040484091407F +:100B2000D14048409140114170470000B5EEC00AE5 +:100B3000F1EE10FA02D4B1EEC00A70476FF0004C2B +:100B400000EE10CADFF75EBF002940F10B80F446CB +:100B50004942404271F1000100F00AF850F00040B3 +:100B60006047000050EA010200F00E80094200BF19 +:100B70000BD1B0FA80F18840C1F19D01C905020690 +:100B800072F1004241EB10207047B1FA81F241400E +:100B90009040C2F1200261FA02F181EA000018BF20 +:100BA00040F0010002F19D01E8E70000C0F3C751E9 +:100BB0007F392CD420290DDAC1F11F0C41004FEAF6 +:100BC000C11141F0004121FA0CF0894128BF404297 +:100BD000C9437047D1F13F0C1CD441004FEAC11109 +:100BE00041F0004161FA0CF021FA0CF180EA0100B9 +:100BF000094244BF4FF00041002004D34942404223 +:100C000071F10001704701D5401E491E7047002058 +:100C10000021704709424FF0004158BFC9430020EE +:100C200070470000D2B2203A22BF00FA02F1002041 +:100C300070475242D041D2F1200291404140D04011 +:100C4000904041407047000080B500F00DF8B5EECF +:100C5000400AF1EE10FA02D00548406C02BD0120B6 +:100C600002BD0348C06C7047014890ED160A7047FA +:100C7000E0FA002010B5FFF7E7FF0446FFF7F1FFA9 +:100C8000204310BD012000F0A7BD002000F0A4BD4E +:100C900010B5044600F056FE204610BD2DE9F8437D +:100CA0002DED048B06468946B0EE408A10EE900A80 +:100CB000DFF7B6F941EC190B18EE100ADFF7B0F9BF +:100CC00041EC180B53EC182BD6E93001DFF7E0F9B3 +:100CD00004460D4653EC192BD9E93001DFF7D8F95A +:100CE00022462B46DFF7CEFAC6E93001002734E072 +:100CF00051EC180B06EBC70253681268DFF7C8F90E +:100D000004460D4651EC190B09EBC70253681268F3 +:100D1000DFF7BEF922462B46DFF7B4FA06EBC7022F +:100D2000C2E9000106EBC70851EC180BD8E92423EF +:100D3000DFF7AEF904460D4653EC192B09EBC7005B +:100D4000D0F89410D0F89000DFF7A2F922462B4695 +:100D5000DFF798FAC8E924017F1C062FC8DB0027BB +:100D600018E006EBC70851EC180BD8E91223DFF79F +:100D70008FF904460D4653EC192B09EBC700C16CE3 +:100D8000806CDFF785F922462B46DFF77BFAC8E94E +:100D900012017F1C092FE4DB002718E006EBC708CF +:100DA00051EC180BD8E90C23DFF772F904460D4615 +:100DB00053EC192B09EBC700416B006BDFF768F9A7 +:100DC00022462B46DFF75EFAC8E90C017F1C032F91 +:100DD000E4DBBDEC048BBDE8F18338B52DED108B61 +:100DE00082B005460C462068DFF7ECFC41EC180B9E +:100DF0006068DFF7E7FC41EC190BA068DFF7E2FC65 +:100E000041EC1A0BD5E930230020DFF8B019DFF7E9 +:100E100039FAC5E93001D5E90C2351EC180BDFF79D +:100E200031FAC5E90C01D5E90E2351EC190BDFF7B6 +:100E300029FAC5E90E01D5E9102351EC1A0BDFF7A9 +:100E400021FAC5E9100153EC182B51EC180BDFF710 +:100E50001FF941EC1B0B53EC1B2BD5E90001DFF70D +:100E600011FAC5E9000153EC182B51EC190BDFF70F +:100E70000FF941EC1F0B53EC1F2BD5E90201DFF7F3 +:100E800001FAC5E9020153EC182B51EC1A0BDFF7FC +:100E9000FFF841EC1C0B53EC1C2BD5E90401DFF7E8 +:100EA000F1F9C5E9040153EC192B51EC190BDFF7EB +:100EB000EFF841EC1D0B53EC1D2BD5E90601DFF7D4 +:100EC000E1F9C5E9060153EC192B51EC1A0BDFF7D8 +:100ED000DFF841EC1E0B53EC1E2BD5E90801DFF7C0 +:100EE000D1F9C5E9080153EC1A2B51EC1A0BDFF7C5 +:100EF000CFF8D5E90A23DFF7C5F9C5E90A0153ECB4 +:100F00001B2B51EC180BDFF7C3F8CDE90001DDE92D +:100F10000023D5E91201DFF7B5F9C5E9120153EC59 +:100F20001F2B51EC190BDFF7B3F8D5E91423DFF7CA +:100F3000A9F9C5E9140153EC1C2B51EC1A0BDFF78E +:100F4000A7F8D5E91623DFF79DF9C5E9160153EC9B +:100F50001F2B51EC180BDFF79BF8D5E91823DFF7AF +:100F600091F9C5E9180153EC1D2B51EC190BDFF772 +:100F70008FF841EC1F0B53EC1F2BD5E91A01DFF75B +:100F800081F9C5E91A0153EC1E2B51EC1A0BDFF75E +:100F90007FF8D5E91C23DFF775F9C5E91C0153EC8F +:100FA0001C2B51EC180BDFF773F8D5E91E23DFF784 +:100FB00069F9C5E91E0153EC1E2B51EC190BDFF743 +:100FC00067F8D5E92023DFF75DF9C5E9200153EC87 +:100FD0001A2B51EC1A0BDFF75BF853EC1A2BDFF7E7 +:100FE00057F841EC1C0B53EC1C2BD5E92201DFF721 +:100FF00049F9C5E92201DDE9002351EC180BDFF7BF +:1010000047F8D5E92423DFF73DF9C5E9240153EC7E +:101010001F2B51EC190BDFF73BF8D5E92623DFF73F +:1010200031F9C5E9260153EC1C2B51EC1A0BDFF703 +:101030002FF8D5E92823DFF725F9C5E9280153EC76 +:101040001B2B51EC190BDFF723F853EC192BDFF7AF +:101050001FF8D5E92A23DFF715F9C5E92A0153EC72 +:101060001B2B51EC1A0BDFF713F853EC1A2BDFF79D +:101070000FF8D5E92C23DFF705F9C5E92C0153EC6E +:101080001D2B51EC1A0BDFF703F853EC1A2BDEF78C +:10109000FFFFD5E92E23DFF7F5F8C5E92E0102B0F1 +:1010A000BDEC108B31BD00002DE9F84F2DED108BFC +:1010B0008CB080460C46914698ED0CEB98ED308B49 +:1010C00098ED000B8DED000B53EC182BDDE90001C2 +:1010D000DEF7DEFF06460F4653EC1E2B51EC1E0BCF +:1010E000DEF7D6FF02460B4630463946DFF73EF9BB +:1010F000CDE9040198ED0EFB98ED060B8DED020B8A +:1011000053EC182BDDE90201DEF7C2FF06460F465D +:1011100053EC1F2B51EC1F0BDEF7BAFF02460B46B8 +:1011200030463946DFF722F9CDE9080198ED109BEA +:1011300098ED0AAB53EC182B51EC1A0BDEF7A8FF15 +:1011400006460F4653EC192B51EC190BDEF7A0FFA6 +:1011500002460B4630463946DFF708F9CDE906016D +:1011600053EC182BD8E90201DEF792FF06460F4632 +:1011700053EC1E2B51EC1F0BDEF78AFF02460B4689 +:1011800030463946DFF7F2F841EC1B0B53EC182BD5 +:10119000D8E90401DEF77CFF06460F4653EC1E2B10 +:1011A00051EC190BDEF774FF02460B463046394608 +:1011B000DFF7DCF841EC1C0B53EC182BD8E90801E5 +:1011C000DEF766FF06460F4653EC1F2B51EC190B5A +:1011D000DEF75EFF02460B4630463946DFF7C6F8BB +:1011E00041EC1D0B53EC182BD8E91201DEF750FF30 +:1011F00006460F4653EC1E2BDDE90001DEF748FFE3 +:1012000002460B4630463946DFF7B0F806460F4631 +:1012100053EC182BD8E91401DEF73AFF32463B466F +:10122000DFF730F806460F4653EC1E2BDDE90201CE +:10123000DEF72EFF02460B4630463946DFF796F8BA +:1012400006460F4653EC182BD8E91601DEF720FFAF +:1012500032463B46DFF716F806460F4653EC1E2B88 +:1012600051EC1A0BDEF714FF02460B4630463946A6 +:10127000DFF77CF80022DFF84835DEF709FF41ECA4 +:101280001E0B53EC182BD8E91801DEF701FF0646B8 +:101290000F4653EC1F2BDDE90001DEF7F9FE024695 +:1012A0000B4630463946DFF761F806460F4653ECE9 +:1012B000182BD8E91A01DEF7EBFE32463B46DEF783 +:1012C000E1FF06460F4653EC1F2BDDE90201DEF776 +:1012D000DFFE02460B4630463946DFF747F8064642 +:1012E0000F4653EC182BD8E91C01DEF7D1FE32462D +:1012F0003B46DEF7C7FF06460F4653EC1F2B51EC6B +:101300001A0BDEF7C5FE02460B4630463946DFF7BC +:101310002DF80022DFF8A834DEF7BAFE41EC1F0BEF +:1013200053EC182BD8E91E01DEF7B2FE06460F4635 +:1013300053EC192BDDE90001DEF7AAFE02460B464D +:1013400030463946DFF712F806460F4653EC182BA5 +:10135000D8E92001DEF79CFE32463B46DEF792FFDD +:1013600006460F4653EC192BDDE90201DEF790FE2D +:1013700002460B4630463946DEF7F8FF06460F4672 +:1013800053EC182BD8E92201DEF782FE32463B46A9 +:10139000DEF778FF06460F4653EC192B51EC1A0B7B +:1013A000DEF776FE02460B4630463946DEF7DEFFB4 +:1013B0000022DFF80C34DEF76BFE41EC190BDDE99F +:1013C0000423DDE90801DEF763FECDE90201DDE972 +:1013D000082351EC1C0BDEF75BFECDE90001DDE9D3 +:1013E000062351EC1B0BDEF753FECDE90A019FEDFE +:1013F000F18BDDE90A2351EC1B0BDEF749FE0646B3 +:101400000F4653EC1B2B51EC180BDEF741FE53EC4F +:101410001C2BDEF73DFE53EC1D2BDEF739FE02469A +:101420000B4630463946DEF7A1FF06460F46DDE99A +:10143000002351EC1C0BDEF72BFE32463B46DEF759 +:1014400021FF06460F46DDE9042351EC1D0BDEF7B4 +:101450001FFE53EC1D2BDEF71BFE32463B46DEF72C +:1014600011FF06460F46DDE90223DDE90601DEF73E +:101470000FFE02460B4630463946DEF777FF41EC59 +:101480001A0B53EC1A2B00200146F6F775FF00F0FB +:101490008B81DDE9082351EC190BDEF7F9FD0646D7 +:1014A0000F4653EC1D2B51EC1F0BDEF7F1FD0246EE +:1014B0000B4630463946DEF759FF53EC1C2BDEF75E +:1014C000E7FD06460F4653EC1D2B51EC1D0BDEF7D6 +:1014D000DFFD53EC1E2BDEF7DBFD32463B46DEF72D +:1014E000D1FE06460F46DDE90823DDE90601DEF7F9 +:1014F000CFFD53EC1E2BDEF7CBFD02460B463046EC +:101500003946DEF733FF06460F46DDE90A2351EC84 +:101510001F0BDEF7BDFD32463B46DEF7B3FE064647 +:101520000F4653EC1B2B51EC1D0BDEF7B1FD53ECBA +:10153000192BDEF7ADFD02460B4630463946DEF785 +:1015400015FFC4E90001DDE9042351EC190BDEF7B6 +:101550009FFD06460F4653EC1C2B51EC1E0BDEF78D +:1015600097FD02460B4630463946DEF7FFFE53EC48 +:101570001D2BDEF78DFD06460F4653EC1C2B51EC60 +:101580001C0BDEF785FD53EC1F2BDEF781FD324689 +:101590003B46DEF777FE06460F46DDE90423DDE92C +:1015A0000601DEF775FD53EC1F2BDEF771FD0246D9 +:1015B0000B4630463946DEF7D9FE06460F46DDE9D2 +:1015C0000A2351EC1E0BDEF763FD32463B46DEF785 +:1015D00059FE06460F4653EC1B2B51EC1C0BDEF755 +:1015E00057FD53EC192BDEF753FD02460B463046F0 +:1015F0003946DEF7BBFEC4E90201DDE9042351EC04 +:101600001F0BDEF745FD06460F4653EC1B2B51EC36 +:101610001E0BDEF73DFD02460B4630463946DEF72F +:10162000A5FE53EC1D2BDEF733FD06460F4653ECAB +:101630001B2B51EC1B0BDEF72BFD53EC192BDEF7AC +:1016400027FD32463B46DEF71DFE06460F46DDE926 +:10165000022351EC190BDEF71BFD02460B46304608 +:101660003946DEF783FE06460F46DDE9002351ECDE +:101670001E0BDEF70DFD32463B46DEF703FE064647 +:101680000F4653EC1B2B51EC1C0BDEF701FD53EC0A +:101690001F2BDEF7FDFC02460B4630463946DEF7CF +:1016A00065FEC4E90401D4E9000153EC1A2BDEF70E +:1016B00065FFC4E90001D4E9020153EC1A2BDEF7FF +:1016C0005DFFC4E90201D4E9040153EC1A2BDEF7F3 +:1016D00055FF41EC190B84ED049B94ED02AB94EDA6 +:1016E00000BB53EC1B2B51EC1B0BDEF7D1FC04466B +:1016F0000D4653EC1A2B51EC1A0BDEF7C9FC2246AF +:101700002B46DEF7BFFD04460D4653EC192B51EC7A +:10171000190BDEF7BDFC22462B46DEF7B3FD04466F +:101720000D46D8E90023D8E90601DEF7ABFDD8E97C +:101730000A23DEF7A7FD82468B4653EC1B2BD8E924 +:101740000C01DEF7A5FC06460F4653EC1A2BD8E930 +:101750000E01DEF79DFC32463B46DEF793FD064662 +:101760000F4653EC192BD8E91001DEF791FC3246F5 +:101770003B46DEF787FD53EC182BDEF789FC02466B +:101780000B4650465946DEF7F1FDD8E93023DEF727 +:10179000F5FE22462B46DEF775FD41EC100BDFF718 +:1017A00041F889ED000B01200CB0BDEC108BBDE8B9 +:1017B000F28F00BF00000000000000400000F03F7A +:1017C0000000E03F80B5012251EC100B00F0F6F86C +:1017D00041EC100B01BD0000DFED4A0A10B560EED0 +:1017E000200AB0EEE01ADFED481AB4EE611A82B0BA +:1017F0000446F1EE10FA29D5F5EE400AF1EE10FAA2 +:10180000ACBFB6EE001ABEEE001A70EE810AFDEE15 +:10181000E00A10EE900AA8B1FAEEC90A9FED3B1A51 +:1018200000EEC10A9FED3A1A00EEC10A9FED391A87 +:1018300000EEC10A9FED381A00EEC10A9FED371A7B +:1018400000EEC10A00F00300041921E08DED000A4A +:101850000098C0F3C750FF2808D088B9009840020C +:101860000ED1E00748D5B7EE000A45E000984002E7 +:1018700046D1DFF7CDF8212101609FED290A13BD84 +:101880008DED000A00A800F0C5FA04199DED000ACC +:10189000DFED240AB4EE600AF1EE10FA0BDBDFEDA7 +:1018A000220AB4EE600AF1EE10FA04D5E00723D55F +:1018B000B7EE000A20E060EE000AE0070ED59FEDCB +:1018C0001B0A9FED1B1A00EE801ADFED1A1A41EE7B +:1018D000201AB7EE000A01EEA00A0DE0DFED161A9D +:1018E0009FED162A00EEA12ADFED151A20EE201A30 +:1018F00042EE201A01EE210AA00748BFB1EE400ACD +:1019000013BD000083F9223F0000004F0000C946CC +:1019100000A0FD400020A23A000034330030C22E67 +:10192000FFFFFF7FFEFF7FB9000080399349B2BA05 +:1019300036A02A3DDFFFFFBE6E8C4CB94283083CC7 +:10194000A1AA2ABE81423ABF53189842DEF7EABFE5 +:101950008018990707D0521E24BF13F8011D00F804 +:10196000011DF6D8704781071CD1103A07D330B457 +:1019700033E93210103A20E93210F9D230BC10327B +:10198000121F24BF53F8041D40F8041DF8D838BFB7 +:10199000121D521E24BF13F8011D00F8011DF8D8B6 +:1019A000704700BF083A07D333E90210083A40F8FD +:1019B00004CD40F8041DF7D20832EAE7F8B52DED62 +:1019C000048B154641EC180B82B053EC182BC4481D +:1019D000C449DEF75DFBC44AC44B41EC190B21F04E +:1019E0000041DEF733FC80F0F38051EC190B00224C +:1019F0000023DEF7FFFE53EC192B99BF0020BC49F2 +:101A00000020BC49DEF73EFCEAF744FB040051D05D +:101A1000DEF7D8FE0022B84BDEF73AFB41EC190B9B +:101A200053EC192B4FF0A040B449DEF731FB0246CE +:101A30000B4651EC180BDEF799FC06460F4653ECAB +:101A4000192B4FF0C040AE49DEF722FB02460B4691 +:101A500030463946DEF78AFC06460F4653EC192B12 +:101A60004FF00050A749DEF713FB02460B46304605 +:101A70003946DEF77BFC06460F4653EC192B002057 +:101A8000A149DEF705FB02460B4630463946DEF734 +:101A90006DFC06460F4653EC192B4FF000509B4946 +:101AA000DEF7F6FA02460B4630463946DEF75EFCB4 +:101AB00041EC180B04F00300451951EC180B6FF0C2 +:101AC0000102944BDEF796FE0BD800224FF07953BB +:101AD000DEF7BCFB05D2E80740F18E819FED8E8BCF +:101AE0008AE153EC182BDEF7D3FA41EC190BE80727 +:101AF00031D553EC192B8A488A49DEF7C9FA8A4A4C +:101B00008A4BDEF7BFFB53EC192BDEF7C1FA884A8C +:101B1000884BDEF7B7FB53EC192BDEF7B9FA864A90 +:101B2000864BDEF7AFFB53EC192BDEF7B1FA844A94 +:101B3000844BDEF7A7FB53EC192BDEF7A9FA824B97 +:101B40006FF05102DEF79EFB53EC192BDEF7A0FA83 +:101B50000022624B37E053EC182B51EC190BDEF7E7 +:101B600097FA06460F4653EC192B91489149DEF738 +:101B70008FFA914A914BDEF785FB53EC192BDEF778 +:101B800087FA8F4A8F4BDEF77DFB53EC192BDEF77C +:101B90007FFA8D4A8D4BDEF775FB53EC192BDEF780 +:101BA00077FA8B4A8B4BDEF76DFB53EC192BDEF784 +:101BB0006FFA894A564BDEF765FB32463B46DEF745 +:101BC00067FA53EC182BDEF75DFB41EC180B13E1C1 +:101BD0008DED008BDDE90001DDE90023C3F30A513F +:101BE00040F2FF72914213D0002904BF190350EA5A +:101BF00011301CD1E80748BF9FED478BA80740F183 +:101C0000038151EC180B81F0004141EC180BFBE013 +:101C1000190350EA113040F0F780DEF7F9FE212178 +:101C2000016002B04FF0FF306FF00041EFE08DED4A +:101C3000008B00A800F064F945199DED008B354B31 +:101C400051EC180B6FF00102DEF7D4FD0BD8002227 +:101C50004FF07953DEF7FAFA05D2E80740F1CC806D +:101C60009FED2D8BC8E053EC182BDEF711FA41ECF9 +:101C7000190BE8076AD553EC192B29482949DEF7D7 +:101C800007FA294A294BDEF7FDFA53EC192BDEF748 +:101C9000FFF9274A274BDEF7F5FA53EC192BDEF74D +:101CA000F7F9254A254BDEF7EDFA53EC192BDEF751 +:101CB000EFF9234A234BDEF7E5FA53EC192BDEF755 +:101CC000E7F9214B6FF05102DEF7DCFA53EC192BE8 +:101CD000DEF7DEF90022014B8AE000BF0000F03F92 +:101CE00083C8C96D305FE43F0000A0FFFFFFDF4104 +:101CF0000000E03F0000E0BF0000303EFB21B941A2 +:101D0000B410114026A6513E5C14D33C9A833B3B51 +:101D10005555C5BFFFFF3FBE000000000000F03F6B +:101D200009260A1039BA213E3BA861C6F97D92BE48 +:101D300063AC30909F01FA3EF6FB51166CC156BF62 +:101D4000B10255555555A53FFFFFDFBF53EC182B8A +:101D500051EC190BDEF79CF906460F4653EC192B94 +:101D600013481449DEF794F9134A144BDEF78AFA44 +:101D700053EC192BDEF78CF9114A124BDEF782FA7D +:101D800053EC192BDEF784F90F4A104BDEF77AFA81 +:101D900053EC192BDEF77CF90D4A0E4BDEF772FA85 +:101DA00053EC192BDEF774F90B4A0C4B18E000BF0B +:101DB000B08F2FC310D8E53D8F0C73A1E1E55ABE5B +:101DC0004DADE44FE31DC73E3EE3B519A0012ABF68 +:101DD000FAF010111111813F425555555555C5BFA7 +:101DE000DEF750FA32463B46DEF752F953EC182B39 +:101DF000DEF748FA41EC180BA80705D551EC180B93 +:101E000081F0004141EC180B02B051EC180BBDEC15 +:101E1000048BF4BD10B52DED028B044682B094ED19 +:101E2000008A9FED2D0A28EE000AB5EE400A8DEDDE +:101E3000000AF1EE10FAACBFF6EE000AFEEE000A60 +:101E400030EE200A8DED000A002100A800F00CF908 +:101E50009DED000AB5EE400AF1EE10FA17D0DFED65 +:101E60001F0A20EE200ADFED1E0A00EE608ADFED79 +:101E70001D0A00EE608ADFED1C0A00EE608ADFEDCD +:101E80001B0A00EE608ADFED1A0A00EE608A84ED1C +:101E9000008ADFED180A9DED000AB4EE600AF1EE4B +:101EA00010FA06D4DFED140AB4EE600AF1EE10FA6F +:101EB00005DBDFED120A00F0FFF88DED000A9DED65 +:101EC000000ABDEEC00A02B010EE100A00F00300D6 +:101ED000BDEC028B10BD000083F9223F000080386A +:101EE0000000C94600A0FD400020A23A00003433A3 +:101EF0000030C22E000000CF0100004F0000004F54 +:101F0000D0B52DED048B044682B094ED008B47488C +:101F1000474953EC182BDEF7BBF8CDE9000100224E +:101F20000023DEF767FCDDE9002399BF002041496B +:101F300000204149DEF7A6F9CDE90001002100A803 +:101F400000F058F9DDE9002300200021F6F714FA2B +:101F50004ED03A49DEF79CF841EC190B53EC192BA3 +:101F60004FF0A0403649DEF793F802460B4651EC9D +:101F7000180BDEF7FBF906460F4653EC192B4FF012 +:101F8000C0403049DEF784F802460B4630463946F9 +:101F9000DEF7ECF906460F4653EC192B4FF00050D4 +:101FA0002949DEF775F802460B4630463946DEF71A +:101FB000DDF906460F4653EC192B00202349DEF7C6 +:101FC00067F802460B4630463946DEF7CFF906463B +:101FD0000F4653EC192B4FF000501D49DEF758F80F +:101FE00002460B4630463946DEF7C0F941EC180B85 +:101FF00084ED008BDDE90001164A174BDEF726F968 +:1020000004D3164A164BDEF7F5FB05D80022154B14 +:1020100000F030F9CDE90001DDE90001EAF73AF816 +:1020200002B000F00300BDEC048BD0BD83C8C96DC5 +:10203000305FE43F0000E03F0000E0BF0000303EC2 +:10204000FB21B941B410114026A6513E5C14D33C8B +:102050009A833B3B0000C0FFFFFFDFC10100C0FFD0 +:10206000FFFFDF410000E0410268C2F3C752FF2AD0 +:1020700006D10068400201D101207047022070475C +:1020800003685B0016D0C2F19602521A012A11DBD6 +:10209000182A04DB016801F00041016007E001211A +:1020A00091400268491E11404A40026011B14FF050 +:1020B000FF3070470020704710EE100A10EE901AA3 +:1020C000A4464FF0FF034FEA410103EAD0540A0E41 +:1020D0001CBF94EA030F92EA030F55D0B1EB400FF7 +:1020E0002ED24FEAC11141F0004100F000434FEA07 +:1020F000002040F000404FEA9000890864EB0204A1 +:10210000401A38BF01EB400018BF54F1000407D05B +:10211000D1EB400038BF081818BFB4F10104F7D163 +:1021200040002CD0B0FA80F100FA01F0521A0EDB18 +:1021300043EA102000EBC25000EE100A64467047DC +:1021400008BF00F0004000EE100A6446704743EA02 +:10215000102000EE100A02F17F024FEAC25100EE99 +:10216000901AF1EE100A20F4F851E1EE101A20EE68 +:10217000200AE1EE100A10EE100A64467047184675 +:1021800000EE100A6446704709421CBF94EA030F30 +:1021900092EA030F1CD04FF0984201EE102A60EE35 +:1021A000810AB1EB400FCBD2244208BF20EE010AD6 +:1021B00010EE901A03EAD152A2F119024FEA01215E +:1021C00091D110EE100A03EAD054A4F119048CE75F +:1021D0004FF0807212EB400F2CBF6FF0004011F1F6 +:1021E000807F644618BF6FF0004000EE100ADEF4F6 +:1021F00009AC70474268C2F30A5240F2FF739A4238 +:1022000009D14168090304BF0068002801D10120F9 +:1022100070470220704743685B0004BF0368002BCF +:1022200025D040F233439A1A521A012A1FDB352A6D +:1022300006DB416801F0004141600021016013E0CC +:10224000012102F01F039940491E920607D54268FA +:1022500011404A40426002681143002202E00268D5 +:1022600011404A40026011B14FF0FF30704700202A +:102270007047000070B540F2FF7601F0004C5B0043 +:1022800006EA11545D0D1ABFB442B54278E0B3EBD3 +:10229000410F08BF82424BD2C3F3530343F4801370 +:1022A000C1F3130141F48011641B0B3C13D9C90223 +:1022B00041EA5051B1FBF3FE03FB1E11A2FB0EE6F7 +:1022C000DEEBC020B14101D28018594150EA01062D +:1022D00053D00B3CEBD80B34C4F12006A14020FABC +:1022E00006F6A0403143B1FBF3FE03FB1E11A2FB37 +:1022F0000EE6B0EB0E00B14101D28018594102BF89 +:102300000146203D0020C1B3B1FA81F39940C3F1E9 +:10231000200220FA02F211439840ED1A0A3509DB37 +:10232000C00A40EA41504CEAD12101EB055170BD91 +:1023300023D070BDD5F10B05B5F120020DDAC5F142 +:1023400020020300E84001FA02F6E940934073F1ED +:102350000043704151EB0C0170BD402D0DDC430872 +:1023600021FA02F0C2F1200511FA05F6334373F1A8 +:10237000004370415CF1000170BD6146002070BDFA +:1023800053EA020E1ABFB442B54237E0B3EB410F35 +:1023900008BF8242CCD25B08B3FA83F504BFB2FA1D +:1023A00082F6AD190B3DB5F1200624BF02FA06F303 +:1023B00005E0AB40C5F1200622FA06F63343AA40F9 +:1023C000D5F1010524427FF46BAF31F00041B1FA41 +:1023D00081F404BFB0FA80F6A4190B3CB4F12006D6 +:1023E00024BF00FA06F105E0A140C4F1200620FA5E +:1023F00006F63143A040D4F1010455E74FF400152F +:1024000015EB410F2CBF6FF00041EB4218BF6FF08E +:102410000041BDE87040DEF4F5AA70473D0A3F0A6E +:10242000450A4F0A5E0A700A860AA00ABF0AE10A34 +:10243000080B320B600B930BC90B030C410C840C83 +:10244000CA0C140D610DB30D080E620EBE0E1F0FE7 +:10245000840FEC0F5810C7103A11B1112B12A912AA +:102460002A13AE133614C2145015E215781610173D +:10247000AC174B18EC189119391AE41A921B431C2B +:10248000F61CAC1D651E211FDF1FA0206321292221 +:10249000F122BC23882457252926FC26D227A928E7 +:1024A00082295E2A3B2B1A2CFB2CDD2DC12EA72F57 +:1024B0008E30763160324B33373424351336033760 +:1024C000F337E538D739CA3ABE3BB23CA73D9D3E0B +:1024D000933F8940804177426E4365445C45544652 +:1024E0004B47424839492F4A254B1B4C104D054E4E +:1024F000F94EED4FDF50D151C252B253A1548F5516 +:102500007C56685752583B59235A095BEE5BD15CA5 +:10251000B35D935E715F4D6027610062D662AB630D +:102520007D644D651B66E766B06777683C69FE6948 +:10253000BD6A7A6B356CEC6CA16D536E026FAF6F38 +:102540005870FE70A2714272DF7279731074A474B5 +:102550003475C1754B76D1765477D4775078C87876 +:102560003D79AE791C7A867AEC7A4F7BAD7B097C1B +:10257000607CB37C037D4F7D977DDB7D1B7E577E2A +:10258000907EC47EF47E217F497F6D7F8E7FAA7FFF +:10259000C27FD77FE77FF37FFB7FFF7FFF7FFB7FDC +:1025A000F37FE77FD77FC27FAA7F8E7F6D7F497FD2 +:1025B000217FF47EC47E907E577E1B7EDB7D977DDF +:1025C0004F7D037DB37C607C097CAD7B4F7BEC7AD7 +:1025D000867A1C7AAE793D79C8785078D47754776A +:1025E000D1764B76C1753475A47410747973DF722B +:1025F0004272A271FE705870AF6F026F536EA16D80 +:10260000EC6C356C7A6BBD6AFE693C697768B067C3 +:10261000E7661B664D657D64AB63D6620062276129 +:102620004D60715F935EB35DD15CEE5B095B235AD5 +:102630003B59525868577C568F55A154B253C252D9 +:10264000D151DF50ED4FF94E054E104D1B4C254B2F +:102650002F4A394942484B4754465C4565446E43CE +:10266000774280418940933F9D3EA73DB23CBE3BAF +:10267000CA3AD739E538F3370337133624353734B8 +:102680004B33603276318E30A72FC12EDD2DFB2CDF +:102690001A2C3B2B5E2A8229A928D227FC26292620 +:1026A00057258824BC23F12229226321A020DF1F83 +:1026B000211F651EAC1DF61C431C921BE41A391A1F +:1026C0009119EC184B18AC1710177816E215501525 +:1026D000C2143614AE132A13A9122B12B1113A11D7 +:1026E000C7105810EC0F840F1F0FBE0E620E080E9D +:1026F000B30D610D140DCA0C840C410C030CC90BF5 +:10270000930B600B320B080BE10ABF0AA00A860A82 +:10271000700A5E0A4F0A450A3F0A3D0A0000790026 +:10272000F3006C01E6016002D9025303CC034604B6 +:10273000C0043905B3052C06A6062007990713081F +:102740008C0806098009F909730AED0A660BE00B8B +:10275000590CD30C4D0DC60D400EB90E330FAD0FF5 +:102760002610A010191193110D128612001379135F +:10277000F3136D14E6146015DA155316CD164617CB +:10278000C0173A18B3182D19A619201A9A1A131B34 +:102790008D1B061C801CFA1C731DED1D661EE01EA1 +:1027A0005A1FD31F4D20C7204021BA213322AD220A +:1027B0002723A0231A2493240D25872500267A2673 +:1027C000F3266D27E7276028DA285329CD29472AE1 +:1027D000C02A3A2BB42B2D2CA72C202D9A2D142E49 +:1027E0008D2E072F802FFA2F7430ED306731E031B6 +:1027F0005A32D4324D33C7334034BA343435AD3520 +:102800002736A1361A3794370D38873801397A3987 +:10281000F4396D3AE73A613BDA3B543CCD3C473DF5 +:10282000C13D3A3EB43E2D3FA73F21409A4014415E +:102830008E4107428142FA427443EE436744E144C9 +:102840005A45D4454E46C7464147BA473448AE4834 +:102850002749A1491A4A944A0E4B874B014C7B4C9D +:10286000F44C6E4DE74D614EDB4E544FCE4F47500A +:10287000C1503B51B4512E52A75221539B53145473 +:102880008E54075501000000010000000100000007 +:102890000100000002000000020000000200000031 +:1028A000020000000300000003000000030000001D +:1028B0000400000004000000050000000500000006 +:1028C00006000000070000000800000008000000EB +:1028D0000A0000000B0000000C0000000E000000C9 +:1028E0000F0000001100000013000000160000009F +:1028F000190000001C0000001F0000002300000061 +:10290000280000002D000000320000003900000007 +:102910004000000048000000510000005B00000083 +:1029200067000000740000008200000093000000B7 +:10293000A5000000BA000000D1000000EC0000007B +:102940000A0100002B010000510100007B01000082 +:10295000AB010000E10100001D0200006202000066 +:10296000AF0200000503000067030000D40300006D +:1029700050040000DB040000780500002906000078 +:10298000EF060000CF070000CB080000E7090000B9 +:10299000270B00008F0C0000240E0000ED0F00003C +:1029A000EF11000032140000BE1600009C19000058 +:1029B000D71C00007A200000922400002F2900007C +:1029C000602E000039340000CF3A00003942000088 +:1029D000934A0000FA530000915E00007E6A0000F6 +:1029E000EC7700000B870000129800003FAB00005E +:1029F000D7C0000028D900008AF40000601301004D +:102A000019360100345D01003C890100D3BA010090 +:102A1000A9F201008B3102005A78020017C80200A7 +:102A2000E221030000870300DDF8030017790400AA +:102A30007C09050016AC0500316306006231070011 +:102A4000941908000E1F090080450A0013910B001D +:102A500076060D00EEAA0E006B8410009D99120000 +:102A60000CF2140030961700988F1A0002E91D002E +:102A70008BAE2100D4ED250038B62A0001193000B4 +:102A8000A629360015FE3C00FDAE44002B584D0033 +:102A9000EF18570089146200AC726E000E607C0063 +:102AA000060F8C0046B89D00A59BB1000701C80029 +:102AB0006139E100DD9FFD00259B1D01D39E410191 +:102AC000172D6A0189D897014146CB0124300502B0 +:102AD0008C67460236D88F029A8BE202ABAC3F037A +:102AE0000B8CA803D2A41E04E6A1A304FE6339053F +:102AF0007208E205DDF09F06B8CB75070D9E6608EB +:102B00005ECE7509F630A70AB915FF0BC257820DC4 +:102B1000E86E360F89832111CC844A13AB41B91575 +:102B20003585761852368C1B917B051F74E3EE2297 +:102B3000D591562702734C2C5075E231E5C92C38DB +:102B4000BB2D423FD03B3C47B2C93750BF4F555ACF +:102B5000805EB96500010001000100010001000173 +:102B6000FF00FF00FF00FE00FE00FE00FD00FD0074 +:102B7000FC00FC00FB00FA00FA00F900F800F80085 +:102B8000F700F600F500F400F300F200F100F000A9 +:102B9000EF00EE00ED00EB00EA00E900E700E600E0 +:102BA000E500E300E200E000DF00DD00DC00DA0029 +:102BB000D800D700D500D300D100CF00CE00CC0084 +:102BC000CA00C800C600C400C200C000BE00BC00ED +:102BD000B900B700B500B300B100AE00AC00AA0068 +:102BE000A700A500A200A0009D009B0098009600F1 +:102BF000930091008E008C00890086008400810083 +:102C00007E007B0079007600730070006D006B0021 +:102C10006800650062005F005C00590056005300C8 +:102C200050004D004A004700440041003E003B0078 +:102C30003800350032002F002C0029002600220029 +:102C40001F001C0019001600130010000D000900E1 +:102C500006000300000000000000C6028C055108B9 +:102C6000170BDD0DA31068132E16F418BA1B801E67 +:102C700045210B24D12697295D2C222FE831AE3433 +:102C80007437393AFF3CC53F0001000100010001E3 +:102C9000000100010001000100010001000100012C +:102CA000000100010001000100010001000100011C +:102CB0000001000100010001000100010001FC0011 +:102CC000F400E900DB00CA00B5009E008400690042 +:102CD0004C002E000F00F1FFD2FFB4FF97FF7CFFE6 +:102CE00062FF4BFF36FF25FF17FF0CFF04FF00FFBD +:102CF000FE00EF00D300AA0077003D000000C3FFF4 +:102D000089FF56FF2DFF11FF02FF02FF11FF2DFF6C +:102D100056FF89FFC3FF00003D007700AA00D300E3 +:102D2000EF00FE00FC00DB009E004C00F1FF97FF6F +:102D30004BFF17FF00FF0CFF36FF7CFFD2FF2E007A +:102D40008400CA00F4000001E900B50069000F002A +:102D5000B4FF62FF25FF04FFF900C0005B00E1FF44 +:102D60006FFF1DFF00FF1DFF6FFFE1FF5B00C00055 +:102D7000F900F900C0005B00E1FF6FFF1DFF00FFDD +:102D80001DFF6FFFE1FF5B00C000F900F4009E0033 +:102D90000F007CFF17FF04FF4BFFD2FF6900DB0031 +:102DA0000001CA004C00B4FF36FF00FF25FF97FF6B +:102DB0002E00B500FC00E9008400F1FF62FF0CFF6B +:102DC000EF007700C3FF2DFF02FF56FF0000AA00AF +:102DD000FE00D3003D0089FF11FF11FF89FF3D0078 +:102DE000D300FE00AA00000056FF02FF2DFFC3FF24 +:102DF0007700EF00E9004C007CFF04FF36FFF1FF95 +:102E0000B50000019E00D2FF25FF0CFF97FF69006F +:102E1000F400DB002E0062FF00FF4BFF0F00CA0032 +:102E2000FC008400B4FF17FFE3001F0040FF07FF12 +:102E3000A5FF910000019100A5FF07FF40FF1F00C3 +:102E4000E300E3001F0040FF07FFA5FF9100000122 +:102E50009100A5FF07FF40FF1F00E300DB00F1FF2B +:102E600017FF36FF2E00F400B500B4FF04FF62FF29 +:102E70006900000184007CFF00FF97FF9E00FC00BA +:102E80004C004BFF0CFFD2FFCA00E9000F0025FFEA +:102E9000D300C3FF02FF89FFAA00EF00000011FF6B +:102EA00056FF7700FE003D002DFF2DFF3D00FE0088 +:102EB000770056FF11FF0000EF00AA0089FF02FF14 +:102EC000C3FFD300CA0097FF04FFF1FFF4008400A2 +:102ED0004BFF25FF4C0000012E0017FF62FF9E00F4 +:102EE000E900D2FF00FFB4FFDB00B5007CFF0CFF60 +:102EF0000F00FC00690036FFC0006FFF1DFF5B0084 +:102F0000F900E1FF00FFE1FFF9005B001DFF6FFF2B +:102F1000C000C0006FFF1DFF5B00F900E1FF00FF74 +:102F2000E1FFF9005B001DFF6FFFC0000A000A000F +:102F30000F00130017001A001D00200022002500BA +:102F400027002A002C0000000000000003000500FC +:102F500007000A000D001100140018001C002100D9 +:102F600026002C00320039004100490052005B006D +:102F7000660072007E008C009C00AC00BF00E9007F +:102F800000000000000004000500080009000D001A +:102F90000E00130014001A001B002100220028005C +:102FA00029003000310039003A00430044004E004F +:102FB0004F005A005B0067006800760077008600CB +:102FC000870097009800A900AA00BD00BE00D400A9 +:102FD000D500EC00ED0006010701240125014401A4 +:102FE0004501670168018E018F01B801B901E50053 +:102FF000000000000000AB2A555500800040000092 +:103000000040008000400000004000805555AB2A81 +:103010000000AB2A555500805555AB2A0000AB2A5D +:103020005555008000600040002000000020004056 +:10303000006000805555AB2A0000AB2A5555008032 +:103040000060004000200000002000400060008080 +:103050000060004000200000002000400060008070 +:103060006666CD4C33339A1900009A193333CD4C30 +:10307000666600806666CD4C33339A1900009A1953 +:103080003333CD4C66660080AB6A55550040AB2AA1 +:10309000551500005515AB2A00405555AB6A008008 +:1030A000AB6A55550040AB2A551500005515AB2AA3 +:1030B00000405555AB6A0080B76D6E5B2549DB3625 +:1030C00092244912000049129224DB3625496E5B96 +:1030D000B76D00800070006000500040003000209C +:1030E0000010000000100020003000400050006080 +:1030F0000070008000700060005000400030002030 +:10310000001000000010002000300040005000605F +:1031100000700080C7718E6355551C47E438AB2A98 +:10312000721C390E0000390E721CAB2AE4381C47A1 +:1031300055558E63C7710080C7718E6355551C4706 +:10314000E438AB2A721C390E0000390E721CAB2A0F +:10315000E4381C4755558E63C77100805D74BA68AA +:10316000175D7451D1452F3A8C2EE9224617A30BD7 +:103170000000A30B4617E9228C2E2F3AD14574513B +:10318000175DBA685D7400805575AB6A006055556F +:10319000AB4A00405535AB2A00205515AB0A00005C +:1031A000AB0A55150020AB2A55350040AB4A5555A2 +:1031B0000060AB6A557500805575AB6A0060555567 +:1031C000AB4A00405535AB2A00205515AB0A00002C +:1031D000AB0A55150020AB2A55350040AB4A555572 +:1031E0000060AB6A55750080DB76B76D92646E5BEC +:1031F000495225490040DB36B72D92246E1B4912F7 +:1032000025090000250949126E1B9224B72DDB36D3 +:103210000040254949526E5B9264B76DDB760080B1 +:1032200000780070006800600058005000480040BE +:1032300000380030002800200018001000080000AE +:10324000000800100018002000280030003800405E +:10325000004800500058006000680070007800804E +:10326000007800700068006000580050004800407E +:10327000003800300028002000180010000800006E +:10328000000800100018002000280030003800401E +:10329000004800500058006000680070007800800E +:1032A00043798772CA6B0D65515E9457D8501B4A9B +:1032B0005E43A23CE535282F6C28AF21F31A361463 +:1032C000790DBD060000BD06790D3614F31AAF2145 +:1032D0006C28282FE535A23C5E431B4AD8509457F2 +:1032E000515E0D65CA6B8772437900809A7933739A +:1032F000CD6C666600609A593353CD4C66460040EB +:103300009A393333CD2C662600209A193313CD0C0D +:10331000660600006606CD0C33139A190020662657 +:10332000CD2C33339A3900406646CD4C33539A59ED +:1033300000606666CD6C33739A7900802F7A5D7475 +:103340008C6EBA68E962175D46577451A34BD1453C +:1033500000402F3A5D348C2EBA28E922171D4617FB +:103360007411A30BD105000090019001A400A400EA +:1033700068006800680068004600460028002800D1 +:103380002000200014001400100010001000100095 +:103390000A000A00060006000600060001001B00E5 +:1033A000F000800100020D005201B4001D00380041 +:1033B000B901810009002000180000001C24030846 +:1033C000882C03081C270308842803082C2F0308D3 +:1033D000542B0308482F0308842F0308F42F0308F5 +:1033E000582C0308683303080F0003000B00280063 +:1033F0002DE9F8490FB42DED088B86B040F2FF712E +:103400000F989DED100B8DED040BC0F30A50884210 +:1034100008D10F980027000305BF0E98002802244A +:10342000012412E0012807DA0EA8F4F7B7FB0128FF +:1034300002DB0027002408E00F9A40F2FE3161F31E +:103440001E520F92471A4FF0FF34002104A8FEF7D6 +:10345000D1FE1A9E05460EB10020308035B9DDE957 +:10346000102300200021F4F787FF12D0002C13D581 +:103470003FB2012F15D1DDE90E230020DFF88813BC +:10348000F4F77AFF05D0012D0BD1DE49F4F774FF74 +:103490003ED106B0CC49E6E1022C04D1DDE90E01B3 +:1034A000E0E1012D6FDB022D08BFDDE9100100F026 +:1034B000D981012C2AD10F980028119806D4002810 +:1034C00054BF9FEDD40B9FEDD50BC9E100280ED45E +:1034D00055B94FF0FF3104A8FEF78CFE002848BF15 +:1034E0009FEDD00B00F1BC819FEDCA0BB8E155B93F +:1034F0004FF0FF3104A8FEF77DFE002848BF9FED86 +:10350000B30B00F1AD819FEDC50BA9E1012D11D1E8 +:1035100011983FB2002806D4012FACBF9FEDBD0B20 +:103520009FEDBE0B9CE1012FACBF9FEDBC0B9FED4F +:10353000B90B95E11198002810D465B94FF0FF310F +:1035400004A8FEF757FE002842BF0F9800289FED01 +:103550009F0B00F185819FEDB10B81E1DDF758FAFA +:103560002221016065B94FF0FF3104A8FEF742FE49 +:10357000002842BF0F9800289FEDAA0B00F1708130 +:103580009FEDA40B6CE10F98002848BF002D0BD5D0 +:10359000DDF73EFA2121016006B04FF0FF30BDECAF +:1035A000088B6FF0004160E1DDE90E01002200238D +:1035B000DDF720F938BF002409D381F00041CDE9BF +:1035C0000E014FF0FF3104A8FEF714FE0446012F50 +:1035D00013D1DDE90E017F4A7F4BDCF737FE0CD2B9 +:1035E000DDE90E2300259FED7D8B00204FF080410B +:1035F000DCF74EFDCDE90E011CE0DDE90E239FED69 +:10360000798B00207949DCF743FD53EC182BDCF76C +:1036100039FEE8F73FFDA0F120052846DDF7D2F896 +:103620000022734BDCF734FD53EC182BDCF72AFE39 +:1036300041EC180B0FF2582000EB4518DDE90E01A4 +:1036400053EC182BDCF792FEDDE90E2341EC190B4D +:1036500051EC180BDCF716FE02460B4651EC190B29 +:10366000DCF78CFF41EC1A0B53EC1A2BDCF710FD46 +:1036700041EC1B0B8DED0E9B00F01AFB53EC1B2B4A +:10368000DCF706FDDDE90E23DCF770FE05468B4610 +:1036900000204D4953EC182BDCF768FE00224FF058 +:1036A0008043DCF7F5FC2A465B46DCF7EBFD53EC88 +:1036B0001A2BDCF7EDFCDDE90E23DCF7E3FD41EC32 +:1036C000180B4C4A4C4BDCF759FFCDE90401384646 +:1036D000DDF778F841EC190BD8E9000153EC192B10 +:1036E000DCF7D0FDDDE90423DCF7CCFDCDE90401F6 +:1036F000DDE91023DCF7CCFCCDE9020100223F4BD1 +:10370000DCF7A4FDC0F0928001223D4BDDF772F89A +:1037100040F2908000220023DCF798FDDDE90223CF +:1037200039BF0020374900203749DCF7ABFDE8F707 +:10373000B1FC0546DDE9100153EC182BDCF7A8FCC1 +:10374000CDE90201D8E90223D8E904019FED2F8BCE +:10375000DCF798FDDDE91023DCF79AFC53EC182B1D +:10376000DCF796FCDDE90223DCF78CFDCDE90201F4 +:10377000D8E9002351EC190BDCF784FDDDE91023B7 +:10378000DCF786FC80460F462846DDF71BF802462C +:103790000B4640463946DCF7E9FD53EC182BDCF7C5 +:1037A00077FCDDE90223DCF76DFDCDE902010EB106 +:1037B0003580002500950022034B02A800F0D0FAC6 +:1037C000A0B3012836D041E00000F03F0000000027 +:1037D00000000080CD3B7F669EA0E63F0000000019 +:1037E0000000F03F000000000000E03F00005040FB +:1037F0000000903FEF39FAFE422EE63F0000E0C0A5 +:103800000000E0400000E0BF0000E03FEF39FAFEBA +:10381000422EE63F000000000000F07F00000000A4 +:1038200000000000000000000000F0FF0020CDE9D3 +:10383000020007E00020014902E000BF0000F07F25 +:10384000CDE90201DDF7E4F822210160002C1DBF63 +:10385000DDE9020181F0004141EC100B9DED020B0E +:1038600051EC100B06B0BDEC088B05B0BDE8F0893B +:1038700080B50020009053EC112B51EC100BFFF79A +:10388000B7FD41EC100B01BD00000000000000007E +:10389000000000000000F0BF0000000000000080F9 +:1038A0000000000000000080000000000000000098 +:1038B000000000C05294EEBF00000048204E51BEF0 +:1038C000000000F86467BCBC0000000000000000BD +:1038D000000000208133EDBF00000080B3DB14BE88 +:1038E000000000506706A3BC0000000000000000BC +:1038F000000000D0E9DCEBBF00000008C39259BE15 +:1039000000000080B0D3B8BC000000000000000040 +:1039100000000070F98FEABF000000C0A51028BEAB +:10392000000000E8BFC0B0BC0000000000000000C4 +:1039300000000070284CE9BF00000060134B42BE3D +:10394000000000C03D20B8BC0000000000000000E6 +:1039500000000050FA10E8BF000000C05FF62BBE68 +:10396000000000905C71A7BC000000000000000097 +:1039700000000020FCDDE6BF000000C0F8F154BEEE +:1039800000000018E9F6B9BC0000000000000000CB +:10399000000000D0C3B2E5BF00000070E43254BEA6 +:1039A00000000050DB06B4BC000000000000000076 +:1039B00000000010EF8EE4BF00000020F36252BE52 +:1039C000000000C02A879ABC000000000000000030 +:1039D000000000B02272E3BF000000F0E8E056BE35 +:1039E00000000028352DBDBC0000000000000000D4 +:1039F000000000000A5CE2BF000000B0FA8E41BE89 +:103A000000000040AE6FBDBC0000000000000000E0 +:103A100000000000564CE1BF000000F015CD5FBE75 +:103A200000000000141C90BC00000000000000001A +:103A300000000040BD42E0BF00000030F93457BE36 +:103A4000000000E06C1E93BC0000000000000000BD +:103A5000000000E0F57DDEBF000000B08A535EBECE +:103A600000000080DA77AABC00000000000000001F +:103A7000000000C09D81DCBF00000000FFA226BE48 +:103A80000000006057E2B0BC000000000000000031 +:103A900000000060F98FDABF000000580A8151BEB3 +:103AA000000000F05F60B8BC0000000000000000F3 +:103AB0000000000098A8D8BF000000607A7F45BED3 +:103AC000000000D05433A3BC000000000000000040 +:103AD000000000600FCBD6BF000000D091CB40BEED +:103AE000000000406D1BA0BC0000000000000000B2 +:103AF000000000A0FBF6D4BF00000098C5CE52BE67 +:103B0000000000003A397EBC000000000000000008 +:103B1000000000E0FE2BD3BF0000004073872BBEE7 +:103B200000000000926879BC000000000000000066 +:103B300000000040C069D1BF00000058F16353BECF +:103B400000000080438D7CBC0000000000000000ED +:103B500000000080D85FCFBF000000181F8354BE54 +:103B6000000000B03F42A2BC0000000000000000C6 +:103B70000000008067FCCBBF00000060FAFF53BE6E +:103B800000000050E00DB8BC000000000000000084 +:103B90000000000098A8C8BF000000607A7F35BE12 +:103BA000000000C0543393BC00000000000000007F +:103BB00000000000DC63C5BF00000058D6FF54BE03 +:103BC00000000000396490BC00000000000000000C +:103BD000000000C0AD2DC2BF00000080A45915BE7A +:103BE000000000E0484BABBC0000000000000000FB +:103BF000000000801A0BBEBF00000050BF3C5ABE40 +:103C0000000000A0B364B6BC00000000000000008B +:103C10000000008004D6B7BF00000040BBCF36BE16 +:103C20000000008076CEA8BC00000000000000006C +:103C30000000008032BBB1BF000000402A0043BE3C +:103C400000000028C60CBDBC000000000000000001 +:103C5000000000009473A7BF000000182B3B59BE62 +:103C6000000000C0E55DA5BC0000000000000000F1 +:103C700000000000EE4397BF000000A0E6C340BE76 +:103C800000000020958DB5BC000000000000000081 +:103C90000000000000000080000000000000008024 +:103CA0000000000000000080000000000000000094 +:103CB00080B52DED028B41EC180B53EC182B1A48F4 +:103CC0001A49DCF7E5F91A4A1A4BDCF7DBFA53EC30 +:103CD000182BDCF7DDF9184A184BDCF7D3FA53EC54 +:103CE000182BDCF7D5F9164A164BDCF7CBFA53EC58 +:103CF000182BDCF7CDF9144A144BDCF7C3FA53EC5C +:103D0000182BDCF7C5F9124A124BDCF7BBFA53EC5F +:103D1000182BDCF7BDF9104A104BBDEC028BBDE847 +:103D20000050DCF7AFBA0000F7DE29BFD8F8C23F79 +:103D3000F4B3FECC1A99C33F62CB68D96F46C73F34 +:103D4000C6C912DAC471CC3F4AE98A942449D23FE9 +:103D5000F75F97999999D93FBC5555555555E53F0A +:103D60002DE9704C04462DED088BD4E9000143EC9D +:103D7000182B00F054F9064651EC180B00F04FF9DF +:103D80000E9D310006D500284AD4022805D184EDC5 +:103D9000008B40E1022EF8D121E050B9D4E90001B6 +:103DA0000022334BF4F7E8FA0FD084ED008B0020AB +:103DB00031E1012815D1D4E9000100222D4BF4F79F +:103DC000DBFA18BF84ED008B50D1DCF721FE2121F6 +:103DD00001604FF0FF306FF00041C4E900010220A4 +:103DE00019E17EB984ED008B29462046F3F7F8FEF1 +:103DF000040018BF012C40F00D81DCF709FE2221E0 +:103E0000016007E1D4E900010022194BF4F7B4FA8C +:103E10000FD151EC180BDCF73BF9C4E9000125E0A8 +:103E200094ED009B144B51EC190B0022DCF70EFAB9 +:103E30000BD251EC180B0023DCF72AF9C4E900017E +:103E4000BDEC088B0020BDE8708C01220B4BDCF729 +:103E5000D1FC15D851EC180B0022054BDCF718F9F2 +:103E6000C4E90001DCF7D4FD222101600120D2E089 +:103E70000000F07F0000F0FF00C89CC000C89C401C +:103E8000384A394BDCF704F900220023DCF7DEF96D +:103E900034BF9FED360B9FED370B53EC102BDCF747 +:103EA000F1F9E8F7F7F80646DCF78CFC41EC1A0B61 +:103EB0004FF07842314BDCF7EBF802460B4651EC01 +:103EC000190BDCF753FA82468B4653EC1A2B2C481D +:103ED0002C49DCF7DDF802460B4650465946DCF724 +:103EE00045FA6FF00102284BDCF784FC41EC190B1A +:103EF00005D80022254BDCF7A9F9C0F07D8053ECF2 +:103F0000192BDCF7C5F841EC1A0B214A214BDCF7E1 +:103F1000BFF8214A214BDCF7B5F953EC1A2BDCF73B +:103F2000B7F81F4A1F4B41EC1B0B51EC1A0BDCF787 +:103F3000AFF81D4A1D4BDCF7A5F953EC1A2BDCF743 +:103F4000A7F81B4B0022DCF79DF953EC192BDCF78B +:103F50009FF841EC190B9FED01AB2BE00000000036 +:103F60000000F03FFE822B654715F73F0000000080 +:103F70000000E0BF000000000000E03F422EE63FEE +:103F8000F2E4D5BCE7E84B3EFFFF8FBC0000903C5D +:103F9000112E5781A03F503F5843128C8F71BC3F68 +:103FA0004BE8A541B752013F0BBDF3DAE8708C3FF7 +:103FB0000000E03F51EC1B0B53EC192BDCF762F9CE +:103FC00053EC1A2BDCF75EF982468B4651EC1B0B47 +:103FD00053EC192BDCF7CAF953EC1A2BDCF752F926 +:103FE00002460B4650465946DCF7C8FA53EC182BEC +:103FF000DCF74EF841EC180B84ED008BA919204634 +:10400000F3F7EEFD040018BF012C03D1DCF700FD2F +:10401000222101602046BDEC088BBDE8708C03B402 +:10402000DDE90023C3F30A5140F2FF72914206D04A +:1040300001B10CE0190350EA113006D00BE019036E +:1040400050EA113014BF0220012002B070474FF037 +:10405000FF3002B070476FF0010002B070470000FF +:1040600010B5DFF8D84520620C220021201DDBF7B7 +:10407000C7FF04F12400206104F13C00606104F1F9 +:104080005400A06104F16C00E06100202070FF206A +:104090006070A07010BD00002DE9F0472DED068B7B +:1040A00086B00C464FF0000ADFF890550168696051 +:1040B0004168A9608068E860D0464046019004905D +:1040C00003900290052205F10C01286900F047FADF +:1040D000052205F10801686900F041FA0522291D51 +:1040E000A86900F03CFA052301AA0321286900F021 +:1040F0004BFAB0EE408A052304AA0321686900F058 +:1041000043FAF0EE408A052303AA0321A86900F0D0 +:104110003BFAB0EE409A05220321286900F070FABC +:10412000F0EE080AC0EE209A95ED02AAD5ED01AA9C +:10413000F5EE40AAF1EE10FA0FD1B5EE40AAF1EE7D +:1041400010FA0AD195ED030AB5EE400AF1EE10FA25 +:1041500003D100F000FA4FF00108564695F801909F +:1041600095ED030A6AEEAA0A4AEE0A0A40EE000A30 +:1041700010EE900ADBF754FF41EC100BDCF752FB1A +:1041800051EC100BDCF7B2F90090052200A9E869A8 +:1041900000F0E5F99DED000ADFEDA30AB4EE600A38 +:1041A000F1EE10FA00F18580DFEDA00AB4EE600AAE +:1041B000F1EE10FA7DDA052302AA0321E86900F086 +:1041C000E3F9F0EE0C0AB4EE600AF1EE10FA70D5E5 +:1041D0009FED970AB4EE408AF1EE10FA69D59FED93 +:1041E000950AF4EE409AF1EE10FA10D59FED920A7E +:1041F000F4EE409AF1EE10FA09DB6878FF2858D007 +:10420000FF2068704FF0FF3020700120C3E019EEEE +:10421000900ADBF705FF21F000413246DFF8203439 +:10422000DCF714F811D2B0EE000AF4EE408AF1EE99 +:1042300010FA17D4F4EE408AF1EE10FA39DAB4EE3F +:10424000409AF1EE10FA0EDB33E0052301AA19467D +:10425000286900F099F9F7EE000AB4EE600AF1EE71 +:1042600010FA26D5B04695ED030ADDED000A80EE82 +:10427000200A10EE100ADBF7D3FE41EC100B00F021 +:10428000B5FA53EC102B4FF00040DFF8B813DBF712 +:10429000FFFE41EC100B00F0B1FA51EC100BE7F708 +:1042A000F9FE0746B8F1000F50D1F3F72AFD3D287B +:1042B00003DB00F050F930466DE0A868DBF7B0FE94 +:1042C00041EC110BB0EE418AF0EE618A95ED010AE6 +:1042D000B1EE400A10EE100ADBF7A2FE41EC100B23 +:1042E000B0EE481AF0EE681A00F01EFB53EC102BEB +:1042F0004FF00040D449DBF7CBFE41EC100B00F04F +:104300007DFA51EC100BE7F7C5FE060001D506F566 +:10431000B47606F12D005A2190FBF1F8B8F1040FA4 +:1043200000D1D046384600F03BF8002806D03A4687 +:104330003146404600F039F8002802D100F00BF970 +:1043400004E0A878404501D085F80280A878484567 +:1043500002D1B9F1FF0F1DD195F8201011F0060F11 +:1043600001D0012604E03A46314600F067F80646DF +:104370003846F3F7C6FC3D280CDA002E0AD0A878A0 +:104380006978814206D0687020704FF0010AFF28DA +:1043900000D02870504606B0BDEC068BBDE8F08713 +:1043A0003C3079288041C00F704718B4A34C237863 +:1043B00094F8204014F0060F01D018BC3EE02FD432 +:1043C000984208D05A1C541002EB9474A410A2EB2B +:1043D000840290420ED15A224243283A002807D143 +:1043E000B1F59D7F06DD02F5B472914202DA15E067 +:1043F000914213DB984208D0DA1C531002EB9373FE +:104400009B10A2EB830290420AD15A2242432832E7 +:10441000002801D12E2903DA8A4201DA002000E0C7 +:10442000012012BC70470000DD0CFB40A7493C4155 +:104430006766E63F3E1B3041D7B409412DE9F043A2 +:1044400091B004460D4691467C4E96F800800027B8 +:104450004846F3F756FC002804D44846F3F751FCCD +:104460001E2822DB4846F3F74CFC1E2806DB484694 +:10447000F3F747FC282801DA012716E04846F3F74E +:1044800040FC282806DB4846F3F73BFC322801DADB +:1044900002270AE04846F3F734FC32280ADB484694 +:1044A000F3F72FFC3D2805DA0327B8F1000F45D4B8 +:1044B000002C01D5002042E0444509D008F101005C +:1044C000411000EB91718910A0EB8100844217D15B +:1044D00000A80FF278114022DCF734FA3801002CE2 +:1044E00000A908D141588D420ADA00A94018406855 +:1044F000A84205DA2BE0401850F82400854226DB5C +:10450000444509D008F10300411000EB9171891076 +:10451000A0EB8100844211D100A80FF2701140225B +:10452000DCF710FA3801002C00A90BD14158A94240 +:1045300004DA00A94018C068854208DB012011B0E8 +:10454000BDE8F083401850F82400A842F6DAFF20B6 +:10455000B0700020F3E73948FF218170704703886D +:10456000934201D30023038003885B1C03809BB22A +:10457000934201D300220280028800EB8200096886 +:1045800041600120704700002DE9F8432DED028BBA +:1045900004460D4616461F469FED278A4FF0000839 +:1045A000B4F9009000EE105AF8EEC08A3A4600F0D6 +:1045B00027F880EE280A86ED000A05E0A7F1010938 +:1045C0000FFA89F908F101080FFA88F8A84511DAFD +:1045D00004EB890090ED010AD6ED000A30EE600A86 +:1045E00000EE008AB9F1010FE8DBA9F101090FFA29 +:1045F00089F9E7E788EE280ABDEC028BBDE8F18374 +:1046000030B49FED0D0A0023B0F900400EE024B253 +:10461000250006D400EB8505D5ED010A30EE200A11 +:10462000641E24B2002C00D5541E5B1C1BB28B42AE +:10463000EDDB30BC70470000000000002CF80020CB +:1046400000001040DCA54C40DCA54CC04A01000035 +:104650003C00000096000000F00000004F01000048 +:10466000410000009B000000F50000005401000024 +:1046700046000000A0000000FA0000005E010000FB +:1046800050000000AA000000040100001E0000000D +:1046900078000000D20000002C010000190000008A +:1046A00073000000CD00000027010000140000008E +:1046B0006E000000C8000000220100000A00000097 +:1046C00064000000BE00000018010000D0B52DED10 +:1046D000048B82B041EC180B8DED008BDDE90023DB +:1046E000C3F30A5140F2FF72914213D0002904BF74 +:1046F000190350EA113011D051EC180B002200239D +:10470000DBF7A4FD3DBF81F0004141EC180B08240C +:10471000002407E0190350EA1130EDD002B051EC4B +:10472000180B60E051EC180B274A284BDBF78EFD85 +:104730001CD29FED239B51EC190B53EC182BDBF78C +:1047400015FE06460F4653EC182B51EC190BDBF700 +:1047500099FD32463B46DBF79BFCDCF76BF841ECFE +:10476000100B51EC180B53EC102B1EE00122184BD0 +:10477000DBF76CFD2ED29FED129B51EC190B53EC25 +:10478000182BDBF7F3FD06460F4653EC182B51ECC4 +:10479000190BDBF777FD32463B46DBF779FCDCF79C +:1047A00049F884F0020453EC182BDBF7E7FE02B063 +:1047B0002246BDEC048BBDE8D04000F0D1B800BF6C +:1047C000000000000000F03FCE3B7F669EA0E63F69 +:1047D0000000F03FDCF71CF92121016002B04FF02E +:1047E000FF306FF00041BDEC048BD0BD80B551ECC3 +:1047F000100BFFF76BFF41EC100B01BD00B583B050 +:1048000001218DED000B00A8FDF7F4FC401E0128EE +:1048100011D9002100A8FDF7EDFC60B10198DDE998 +:104820000023002847BF0020054900200549DBF789 +:1048300029FDCDE900019DED000B03B000BD000096 +:104840000000F0BF0000F03F38B50FB4DDE9020111 +:10485000FFF7E5FB0546DDE90001FFF7E0FB012D71 +:10486000B8BF012830DA0198002807D5DDE900013A +:1048700081F00041CDE90001082400E00024039804 +:10488000002807D5DDE9020181F00041CDE90201F0 +:1048900084F00604DDE90201DDE90023DBF7D6FC44 +:1048A00004D2DBF76BFE41EC100B29E0002D08D59C +:1048B000DDE90001DDE90223DBF760FE41EC100BCE +:1048C00020E09FED150B1DE0022808BFDDE9000187 +:1048D00020D0022D08BFDDE902011BD085420CBFAC +:1048E0009FED0F0B9FED0C0B019900294CBF082485 +:1048F00000240399002948BF84F00604012801D14F +:1049000084F00204224605B0BDE8304051EC100BA3 +:1049100000F026B805B030BD000000000000000027 +:10492000000000000000F03F80B553EC112B51EC6B +:10493000100BFFF789FF41EC100B01BD45F8010892 +:104940006DF8010899F901084DFA0108000000000E +:10495000A1FA010800000000A1FE0108000000000B +:10496000D0B514462DED048B534A544BDBF742FF70 +:1049700041EC180B1DD89FED529B53EC182B51ECBA +:10498000190BDBF785FB00224F4BDBF77BFC064660 +:104990000F4653EC182B51EC190BDBF773FC024656 +:1049A0000B4630463946DBF7E9FD41EC180B44F085 +:1049B000010451EC180B0022444BDBF747FC05D3F4 +:1049C00001224FF07953DBF715FF51D853EC182B28 +:1049D000DBF75EFB41EC190B53EC182BDBF758FBB4 +:1049E00006460F4653EC192B39483A49DBF750FB82 +:1049F000394A3A4BDBF746FC53EC192BDBF748FB03 +:104A0000374A384BDBF73EFC32463B46DBF740FB90 +:104A100053EC182BDBF736FC06460F4653EC192BEC +:104A200031483249DBF734FB314A324BDBF72AFCA1 +:104A300053EC192BDBF72CFB2F4A304BDBF722FC16 +:104A400053EC192BDBF724FB2D4A2E4BDBF71AFC1A +:104A500053EC192BDBF71CFB2B4B0022DBF712FC72 +:104A600002460B4630463946DBF788FD41EC180B11 +:104A7000A00705D551EC180B81F0004141EC180B53 +:104A800014F007020BD00FF2880303EBC20251ECC3 +:104A9000180B53681268DBF7F5FB41EC180B200785 +:104AA00005D551EC180B81F0004141EC180B51EC8D +:104AB000180BBDEC048BD0BD57CD9E5E1426D13FA4 +:104AC000AA4C58E87AB6FB3F0000F0BF000040BE99 +:104AD000845D57134B57B03FB2934C19ED5EE43FE2 +:104AE000BEDE02B90240F83FDE39028FC7C0743F14 +:104AF0008AAB1283000CC83F24D7E508B6D8F03F34 +:104B00000F34580E5895FD3F0000F03F00000000A4 +:104B1000000000000000000066732D3852C1E03F25 +:104B2000182D4454FB21F93F66732D3852C1F03FD4 +:104B3000182D4454FB21F93F66732D3852C10040B3 +:104B4000182D4454FB2109403FD038C6A6F104403B +:104B50002DE9F0412DED048B8CB006460F469046B2 +:104B600000A80FF2BC513022DBF7ECFEDFF8644501 +:104B70000A20206207206062A0620520E062DFF860 +:104B80005805DFF85815CDE9000100A84FF0333281 +:104B9000DFF84C35C0E90223DFF83C25DFF8443567 +:104BA000C0E904234FF03332DFF83C35C0E9062377 +:104BB000DFF83835C0E90823DFF83435C0E90A23C7 +:104BC000DFF830550A2129653168142291FBF2F192 +:104BD000E965D8F80010022901D1052123E03968E0 +:104BE000102918D0B1F5807F06D0B1F5806F08D0BC +:104BF000B1F5006F0AD012E04FF4807121630021FB +:104C000011E04FF48061216302210CE04FF4006158 +:104C10002163032107E010212163042103E04FF405 +:104C200000712163012100EBC100D0E90023DFF80E +:104C3000C804DFF8C814DBF72BFA41EC180B53EC6F +:104C4000182B0020DFF8B814DBF722FA41EC100B28 +:104C500085ED0A0B85ED080B53EC102BDFF8A4044F +:104C6000DFF8A414DBF714FAC5E90C0120220021B7 +:104C70002046DBF7C5F99FED319B206ADBF7A2FDEB +:104C800053EC192BDBF704FA53EC182BDBF700FA83 +:104C9000C4E90001606ADBF795FD53EC192BDBF7E3 +:104CA000F7F953EC182BDBF7F3F9C4E90201A06A1A +:104CB000DBF788FD53EC192BDBF7EAF953EC182BE3 +:104CC000DBF7E6F9C4E90401E06ADBF77BFD53ECAE +:104CD000192BDBF7DDF953EC182BDBF7D9F9C4E915 +:104CE00006010020A86501206866A86604F134006A +:104CF00028660020287068650146C5E90E019FED11 +:104D0000110B85ED100B85ED120B0CB0BDEC048B77 +:104D1000BDE8F081DFF8DC030121416681669FED8B +:104D2000090B80ED100B80ED120B00210170416525 +:104D30000A460B46C0E90E23704700000000000041 +:104D40000000E03F2D431CEBE2361A3F2DE9F84FFF +:104D50002DED068B8AB005464FF000089FEDDB9BDA +:104D6000B0EE498AF0EE698A04A81821DEF7EEF960 +:104D7000C1468DED010AF0EE601AF1EE611ACDED3B +:104D8000021AB1EE410A8DED030ADA4C1E2201A986 +:104D9000206EF2F79CF82868022802D102200090C9 +:104DA00001E003200090206E616E00290CD00028E5 +:104DB00000F085810088216D8842C0F280814046E4 +:104DC000606684ED0E9B7AE1A16E002939D01E2227 +:104DD000216D09B2F2F7A4F894ED149AF8EEC90A1D +:104DE00080EE200A10EE100ADBF71AF9C4E902017E +:104DF0001E2219EE101A09B2206EF2F7AFF894EDE8 +:104E0000149AF8EEC90A80EE200A10EE100ADBF7B9 +:104E100007F9C4E904011E2219EE101A09B2206E26 +:104E2000F2F7BAF8D4ED140AF8EEE00A80EE200AA0 +:104E300010EE100ADBF7F4F8C4E906014046A0665C +:104E400045E01E224146F2F75BF805461E22216D21 +:104E500009B2206EF2F754F8064694ED140AB8EE43 +:104E6000C09A95ED000AD6ED000A30EE600A80EE99 +:104E7000090A10EE100ADBF7D3F8D4E90223DBF7B6 +:104E800001FAC4E9020195ED010AD6ED010A30EEFE +:104E9000600A80EE090A10EE100ADBF7C1F8D4E9C7 +:104EA0000423DBF7EFF9C4E9040195ED020AD6ED1E +:104EB000020A30EE600A80EE090A10EE100ADBF7F3 +:104EC000AFF8D4E90623DBF7DDF9C4E906011822BF +:104ED000414604A8DBF794F8454604AE40E01E22A4 +:104EE000294609B2206EF2F70BF807463868DBF75F +:104EF00097F8D4E90223DBF739FA41EC100B53ECB5 +:104F0000102BDBF7C5F8DDE90423DBF7BBF9CDE9AE +:104F100004017868DBF784F8D4E90423DBF726FA88 +:104F200041EC100B53EC102BDBF7B2F8D6E902235F +:104F3000DBF7A8F9C6E90201B868DBF771F8D4E934 +:104F40000623DBF713FA41EC100B53EC102BDBF7C5 +:104F50009FF8D6E90423DBF795F9C6E904016D1C37 +:104F6000206D8542BBDBDBF72DFC41EC190BDDE945 +:104F7000040153EC192BDBF701FBCDE90401D6E961 +:104F8000020153EC192BDBF7F9FA41EC1A0B86ED11 +:104F900002ABD6E9040153EC192BDBF7EFFA41EC35 +:104FA000190B86ED049BDDE9040153EC1A2BDBF7AA +:104FB00069F9564A564BDBF749F907D294ED100BC5 +:104FC0008DED040B94ED120B86ED020B9DED040BA1 +:104FD00084ED100B96ED02AB84ED12ABD4E90E011B +:104FE0004FF066324B4BDBF753F882468B46DDE9D8 +:104FF000042351EC1A0BDBF745F902460B4651EC42 +:10500000190BDBF7BBFA344A434BDBF741F8024696 +:105010000B4650465946DBF735F941EC100B84ED51 +:105020000E0B01223D4BDBF7E5FB06D890462078BE +:10503000012802D1606D401C60654D460FE006EB13 +:10504000C50090ED009B51EC180B53EC192BDBF7CE +:10505000FDF803D2B0EE498AF0EE698A6D1C009823 +:105060008542ECDBD4E9080153EC182BDBF7C2FBDB +:1050700002D9606D10280FDBE06DA16D884204DA63 +:105080004846207060654FF001090020A06594ED4E +:105090000A0B84ED080B12E0B8F1000F0FD1A06DE0 +:1050A000E16D814209DA01212170494661654FF0C5 +:1050B000020994ED0C0B84ED080B401CA0654846DA +:1050C0000AB0BDEC068BBDE8F28F00BF0000000007 +:1050D0000000000018A200209A9999999999C93F57 +:1050E0003333D33F9999E93F3333F33F33330340AD +:1050F0003333E33F10A500201F85EB51B89E2340BA +:10510000000014407B14AE47E17A843F2E431CEB31 +:10511000E2362A3F6666EE3F9999A93F0000344087 +:105120009A9999999999C93F333333333333E33F8C +:105130009A9999999999E93F333333333333F33F4C +:105140003333333333330340333333333333E33F96 +:105150001EF0040F0CBFEFF30880EFF3098000F09E +:1051600033B870471EF0040F0CBFEFF30880EFF365 +:10517000098000F029B870471EF0040F0CBFEFF350 +:105180000880EFF3098000F01FB870471EF0040F8D +:105190000CBFEFF30880EFF3098000F015B87047FB +:1051A0001EF0040F0CBFEFF30880EFF3098000F04E +:1051B0000BB870471EF0040F0CBFEFF30880EFF33D +:1051C000098000F001B87047E0F76DBC704770B51A +:1051D00086B04EE0BDF80500011D89B2DDF80D0076 +:1051E00000F084FADDF753FFDFF89C44DFF89C54AD +:1051F000DFF89C142846E5F71BFC002810D1204658 +:10520000441E0028F4D100212846E5F7FCFB0021CC +:10521000DFF88004E5F7F7FB0FF2A840DDF77FFD2C +:10522000022E01D1DBF799FCDDF80D00002804D037 +:10523000DDF7BAFC0020CDF80D0049F64044DFF858 +:10524000585402212846E5F72BFB002803D12046BD +:10525000441E0028F5D142F2107480212846E5F75B +:105260001FFB012803D12046441E0028F5D1DDF79D +:105270000BFF01A9DFF8240400F05CFA9DF8070099 +:1052800010F00306A6D0022EA4D002D3032E59D0CC +:10529000EFE7DFF804048089C04600A80021016020 +:1052A00002220DF10701DAF7B5FE02220DF1050128 +:1052B0000DF10200DAF7AEFE042100A800F016FAA4 +:1052C000BDF80500001DDDF757FCCDF80D00BDF859 +:1052D0000500011D89B2DDF80D0000F04BFADDF785 +:1052E000D6FEDFF8A443DFF8AC53DFF8B41328464A +:1052F000E5F79EFB002810D12046441E0028F4D17B +:105300000021DFF88803E5F77EFB00212846E5F75A +:105310007AFB0FF2B830DDF702FDDDF7B5FE002CA9 +:10532000A7D001A9DFF87C0300F048FA002803D0D9 +:105330000FF2A030E0F739FEDFF86C130820E0F739 +:10534000D9F896E7D4488089C0460921DFF85C0384 +:1053500000F010FADDF7A1FED54C0221D548E5F7A3 +:10536000B2F8002885D12046441E0028F5D100213E +:10537000C648E5F748FB0021C648E5F744FB0FF2B5 +:105380005C30DDF7CCFC74E7F8B5CB4C2078401CE2 +:105390002070DEF744FC6078401C6070DFF7E0FBB3 +:1053A0006078401E6070C0B2002801D1DEF731FC89 +:1053B0000120E5F7D1FB01285DD10120E5F7D8FBFD +:1053C0000025BE4E0121BE48E5F77DF8002847D0F4 +:1053D00096F9000000284AD028463070AA4EAD4FFA +:1053E0000FE03046461E00280BD12946A748E5F7B6 +:1053F0000AFB29463846E5F706FB0FF2E820DDF701 +:105400008EFC3846E5F710FB0028EAD10221A948B6 +:10541000E5F759F8002808D02078012833D16068D2 +:10542000002830D0DEF7F1FB2DE0A049C87810F05D +:1054300003000AD0012810D1B1F80100002804D0DF +:10544000964800F0BBF9054607E0964800F0B6F92B +:10545000054695490820E0F74DF8DDF71BFE06E00C +:1054600001203070311D8D4800F0A8F90546002D4F +:1054700001D0E0F7ABFD2078012804D16068002856 +:1054800001D0DEF7C2FB2078401E2070F1BD10B5C0 +:10549000894C2078401C2070DEF7C1FB6078401CEE +:1054A0006070DFF75DFB6078401E6070C0B200285E +:1054B00001D1DEF7AEFB0220E5F74EFB002802D05B +:1054C0000220E5F755FB2078012804D16068002808 +:1054D00001D0DEF79AFB2078401E207010BD10B579 +:1054E000754C2078401C2070DEF799FB6078401CDA +:1054F0006070DFF735FB6078401E6070C0B2002836 +:1055000001D1DEF786FB0420E5F726FB00280BD04F +:105510000420E5F72DFB012200210320DDF7C0FD6B +:1055200061491020DFF7E6FF2078012804D1606888 +:10553000002801D0DEF769FB2078401E207010BDE6 +:1055400010B55D4C2078401C2070DEF768FB607859 +:10555000401C6070DFF704FB6078401E6070C0B2D2 +:10556000002801D1DEF755FB4FF40060E5F7F4FAAF +:10557000002807D04FF40060E5F7FAFA4A492020E6 +:10558000DFF7B8FF2078012804D16068002801D037 +:10559000DEF73BFB2078401E207010BD38B5464C2E +:1055A0002078401C2070DEF73AFB6078401C607069 +:1055B000DFF7D6FA6078401E6070C0B2002801D1D3 +:1055C000DEF727FB4FF48040DFF74CFF00281DD0AB +:1055D000354DE1F75FF900280CD00020E1F763F9C1 +:1055E000DCF7B2FC806EDDF776FB29460620DFF79C +:1055F00081FF03E029460220DFF77CFF4FF4804063 +:10560000DFF745FF4FF48000E5F7B2FA2078012874 +:1056100004D16068002801D0DEF7F7FA2078401E38 +:10562000207031BD10B5244C2078401C2070DEF76E +:10563000F6FA6078401C6070DFF792FA6078401EDE +:105640006070C0B2002801D1DEF7E3FA4FF4805059 +:10565000DFF708FF00280BD013494020DFF74AFF8F +:105660004FF48050DFF713FF4FF40030E5F780FA76 +:105670002078012804D16068002801D0DEF7C5FA3F +:105680002078401E207010BD80841E008864024077 +:10569000000800201064024000300140B45F002088 +:1056A000200000109C5F00204C520020CC70002095 +:1056B000404B4C0000040240A4310020FC3100208B +:1056C000000002405478444D410000005278444D9F +:1056D000410000005075744D61696C0052454144B1 +:1056E00059000000455854493000000038B50C46B8 +:1056F0000E4D2968C90706D529684908490029605F +:105700002968C907FCD4002201462846E5F786F936 +:1057100007492846E5F79FF9214628464160C046DB +:1057200001212846BDE83440E5F76DB988640240A0 +:105730000008002030B504460D480D46017881B0C0 +:10574000491C0170DEF76BFAA06840B94021204681 +:10575000E3F7ECFCDEF763FAA0680028F6D02946F0 +:105760002046E3F723FD01B0BDE83040DEF7FABA8A +:10577000A431002038B50C460E4D2968C90706D55E +:1057800029684908490029602968C907FCD4002212 +:1057900001462846E5F742F907492846E5F75BF94F +:1057A000214628464160C04601212846BDE83440D4 +:1057B000E5F729B91064024020000010F0B50E4F43 +:1057C0000546387881B00E46401C01243870DEF75B +:1057D00026FAA868E968884204D231462846E3F7E9 +:1057E000C3FC0024787808B9DEF713FADEF7BAFABA +:1057F000204601B0F0BD00BFA4310020CF490022F7 +:10580000CA630A6401F148024A6201F1C4028A6271 +:1058100001F5A072CA6201F5DE720A6301F50E722B +:105820004A6301F52D728A630B2802DA1E20486450 +:105830007047152802DA192048647047432802DAB5 +:10584000142048647047C92802DA0F204864704762 +:105850000A20486470470000F8B52DED068B84B02F +:1058600004460026B54DE86B00286CD185ED000A92 +:10587000B0EE603A85ED013A85ED021AB0EE610AAC +:1058800085ED030AB0EE420A85ED050AB0EE620A24 +:1058900085ED040A30460290019000901E222946B0 +:1058A000E86A00F0DAF81E22291DA86A00F0D5F88F +:1058B0001E2205F10801686A00F0CFF81E2205F1EA +:1058C0000C01A86B00F0C9F81E2205F11001686BED +:1058D00000F0C3F81E2205F11401286B00F0BDF89A +:1058E000696C286C81422ADA1E2300AA09B2E86A90 +:1058F00000F0C8F8B0EE408A1E2301AA696C09B214 +:10590000A86A00F0BFF8F0EE408A1E2302AA696C74 +:1059100009B2686A00F0B6F8DFED860AB4EE608A74 +:10592000F1EE10FA0BD5F4EE608AF1EE10FA06D51E +:10593000B4EE600AF1EE10FA01D50120E863286C9C +:10594000401C286484E0AE6B6F6C1E22394609B29D +:10595000304600F0D3F8F0EE408A1E22394609B2F4 +:10596000304600F0F1F8B0EE409A1E22394609B2F6 +:10597000304600F00EF9B81E00EE900AB8EEE08A4C +:1059800078EEC90A30EEC00AC0EE088AC5ED068A74 +:105990006E6B1E22394609B2304600F0AFF8B0EE09 +:1059A000409A1E22394609B2304600F0CDF8F0EE9A +:1059B000409A1E22394609B2304600F0EAF879EEE4 +:1059C000690A30EEC00A80EE089A85ED079A2E6BC0 +:1059D0001E22394609B2304600F090F8F0EE409AA7 +:1059E0001E22394609B2304600F0AEF8B0EE40AAA9 +:1059F0001E22394609B2304600F0CBF879EECA0AC9 +:105A000030EEC00A80EE088A85ED088A18EE900A0A +:105A1000DAF706FB4A4A4B4BDAF7B0FDE6F73AFBFA +:105A2000208019EE100ADAF7FBFA454A454BDAF7FF +:105A3000A5FDE6F72FFB608018EE100ADAF7F0FA02 +:105A40003F4A404BDAF79AFDE6F724FBA080012697 +:105A5000304604B0BDEC068BF2BD0388934201D3FF +:105A60000023038003885B1C03809BB2934201D315 +:105A700000220280028800EB820009684160012058 +:105A8000704700002DE9F8432DED028B04460D46CA +:105A900016461F469FED288A4FF00008B4F9009083 +:105AA00000EE105AF8EEC08A3A4600F027F880EE71 +:105AB000280A86ED000A05E0A7F101090FFA89F925 +:105AC00008F101080FFA88F8A84511DA04EB8900FB +:105AD00090ED010AD6ED000A30EE600A00EE008A71 +:105AE000B9F1010FE8DBA9F101090FFA89F9E7E73C +:105AF00088EE280ABDEC028BBDE8F18330B49FED3F +:105B00000E0A0023B0F900400EE024B2250006D4AE +:105B100000EB8505D5ED010A30EE200A641E24B2A3 +:105B2000002C00D5541E5B1C1BB28B42EDDB30BC3D +:105B3000704700006F12033B0000000044D60020B5 +:105B400089AD84FA0A74313F2DE9F04104460D46CF +:105B5000164694ED010A0027B4F9008014E00FFA0C +:105B600088F84046002807D404EB8000D0ED010AF5 +:105B700000F03CF8A8F101080FFA88F8B8F1000F1E +:105B800001D5A6F101087F1C3FB2AF42E7DBBDE8BB +:105B9000F0812DE9F04104460D46164694ED010AC8 +:105BA0000027B4F9008014E00FFA88F84046002876 +:105BB00007D404EB8000D0ED010A00F00FF8A8F143 +:105BC00001080FFA88F8B8F1000F01D5A6F1010815 +:105BD0007F1C3FB2AF42E7DBBDE8F081B4EE600A64 +:105BE000F1EE10FA01D4B0EE600A7047F4EE400A0C +:105BF000F1EE10FA01D4B0EE600A70470FB480B530 +:105C00000FF2D420DDF78BF8112209210020DCF7F8 +:105C100005FE022805D10FF2D420DDF780F802201E +:105C200000E0012002BC5DF814FB80B50FF2C82033 +:105C3000DDF775F8112209210120DCF7EFFD0328BB +:105C400005D10FF2C820DDF76AF8032002BD01205C +:105C500002BD1CB5DCF7E9FF044600A800210A4696 +:105C600006C008229548406800F1500100A8DAF704 +:105C7000D1F9BDF80630BDF80420BDF80210BDF81A +:105C8000000000F02DF842F2117188420EDB012075 +:105C900084F81A01207D01281FD16421FF20ECF730 +:105CA000EBFD0FF27420DDF73AF816E0884214DAC3 +:105CB00094F81A01012810D1002084F81A01207DDF +:105CC00000280AD1DCF740F90021B0F87600ECF7A3 +:105CD000D3FD0FF24420DDF722F8012016BD0000AD +:105CE000F8B52DED048B00EE100A00EE901A00209E +:105CF0009FED688A01EE103AB8EEC11AB8EEC00AFC +:105D0000F8EEE00A20EE200A61EE010A80EE200A99 +:105D1000052B69DBDFED600AB4EE600AF1EE10FAE4 +:105D200016D4B4EE600AF1EE10FA0FDBDFED5B0A79 +:105D3000B4EE600AF1EE10FA08D5DFED590A30EE44 +:105D4000200ADFED580A20EE208A01E0B7EE008A33 +:105D500011EE100ADAF764F941EC190B9FED521BB2 +:105D6000B0EE490AF0EE690AFDF782FD53EC102B04 +:105D70004FF080404E49DAF78BF904460D46B7EEF6 +:105D8000000A30EE480A10EE100ADAF749F9224606 +:105D90002B46DAF77DF9E6F77DF9DAF713FD0446CD +:105DA0000D469FED441BB0EE490AF0EE690AFDF77F +:105DB0005FFD53EC102B4FF020404349DAF768F9B0 +:105DC00006460F4618EE100ADAF72AF932463B4625 +:105DD000DAF75EF922462B46DAF754FABDEC048B6B +:105DE000BDE8F440E6F756B9BDEC048BF2BD10B542 +:105DF0000FF22C10DCF793FF304CDCF70DFD206028 +:105E0000DCF7A2F8606020682D49C0F8B81200F5F0 +:105E10002E702C4941602D4981600FF21101C16043 +:105E20000FF239010161012010BD00002348006814 +:105E300090F8A902002801D10020704705E080B544 +:105E4000002000F006F8012002BD224890F9000071 +:105E500070472049087070470000000018B43022D5 +:105E60000B7812FB030301241C700B7812FB030355 +:105E70005C700B7812FB030311249C700B7812FBEF +:105E80000300134A1278C2700878401C087011BCD5 +:105E9000D5E70000000000003433333F6666E63F7C +:105EA000333333BF2EBA683F00000000AC1CF83F0C +:105EB0002AA9433F000000803F35F03FA0FE0020AC +:105EC000FD5B03082B5C0308ED7CF13F535C03088A +:105ED000F5FE0020F4FE00205374617274204368C4 +:105EE00065636B4C696768744C75780053746172B4 +:105EF00074204661696C0000436865636B4C696798 +:105F000068744C75782053746F70000053746F7010 +:105F1000204661696C0000004C7578430000000069 +:105F2000436865636B4C696768744C757820496E8B +:105F3000697400000FB480B50FF23420DCF7EFFE77 +:105F40008348002181700121C170017100214171DC +:105F500081710170DCF769FE0069000601D401203F +:105F600000E0012002BC5DF814FB80B50FF20820B0 +:105F7000DCF7D5FEDCF759FE0069000616D574483B +:105F8000002181700121C170017100214171817175 +:105F9000417801290AD1002141700E220A210120F5 +:105FA000DCF73CFC032801D1032002BD012002BD27 +:105FB00038B568488169497AC069407A4518DCF784 +:105FC00034FE0069000631D5614CA078002802D16A +:105FD0000120A07032BD6078EDB2002D06D00128FE +:105FE00024D10120E070002060701FE0002811D152 +:105FF000E078012806D10E220A210120DCF70EFCF0 +:106000000020E0700E220A210020DCF707FC0120AE +:10601000607032BD94F90000002802D0022803D03D +:1060200004E000F005F801E000F034F8012032BD92 +:1060300038B5474CE06890F958502079012809D1CB +:10604000512D07DA00202071012000F07EF8002099 +:1060500000F06EF8B4F90820954217DBA079401CD7 +:10606000A07140B2022813DB022020700020A07132 +:1060700029460FF20C10DCF752FE78202081012017 +:1060800000F063F8012000F053F801E00020A07157 +:10609000012032BD38B52E4CE06890F95850502D93 +:1060A00016DA6079401C607140B2022812DB0020D1 +:1060B0002070012000F049F8002000F039F800209D +:1060C0006071502229460FF2C400DCF728FE01E07F +:1060D00000206071012032BD10B50FF2BC00DCF76A +:1060E0001EFE1B4CDCF798FB2061DBF72DFFE06008 +:1060F0000020207020691849C0F8401200F5107087 +:1061000016494160164981600FF20D01C1601549C1 +:106110000161012010BD0000014600200C4A1269F7 +:1061200092F83122002A02D0002900D109E07047FC +:106130000D49012802D10120087070470020087025 +:1061400070470A4890F90000704708490870704786 +:10615000BCA5002000000020355F03086B5F03082A +:10616000B15F0308C92A0108F3FE0020F2FE0020F7 +:10617000537461727400000053746F70000000006B +:10618000436C6F7365202564202564004F70656E35 +:106190002025642025640000496E69740000000019 +:1061A00010B582B000208DF800008B4C04F1100374 +:1061B00014220D2104F50670CDF75AFB04F58A73FD +:1061C00014220D2104F50C70CDF752FBE0F760FBB3 +:1061D000002848D0DCF729FDA060DBF7B9FEDDF729 +:1061E00012F8A0680178002903D0217841F001015C +:1061F00021700A21DCF77CFDA068DCF753FDA06864 +:10620000C178002903D0217841F002012170417941 +:10621000002903D0217841F00401217081790029FF +:1062200003D0217841F00801217021780F2902D193 +:106230005521817500E08175002201210846DCF7B7 +:106240002FFFDEF743FE3221A068DCF7A7FEA0682F +:10625000DCF769FEDCF718FFDCF71CFFDBF774FEE8 +:106260000021C16616BD002016BD80B5FFF798FF5E +:106270005949486001BD80B5072000F0AFF8FBE741 +:106280007FB5DFF719FF002801D0DFF7B0FEDFF799 +:1062900085FE002801D0DFF79FFE3E20E5F758F984 +:1062A0000646DAF766FC4C4C04F51275B0070FD5BC +:1062B0006068C06EDCF703FFDAF7B6FB04F10C018F +:1062C0002846DAF7ACFD04F10C012846DAF710FE97 +:1062D000F0060AD50020DCF7E5FE1020DDF732FBE2 +:1062E00004F10C012846DAF703FEB0060CD504F1E0 +:1062F0000C012846DAF7BBFD0420DDF723FB04F18F +:106300000C012846DAF7F4FD700703D56068806E4B +:10631000DCF72CFA04F10C012846DBF70BF8300708 +:106320001FD4BAE7BDF80100001DDCF725FCCDF84D +:10633000090002220DF10301D9F76CFE02220DF1D2 +:106340000101DDF80900801CD9F764FE04F10C029C +:10635000294600A8DBF7C1F800A904F50C70DCF7AA +:1063600035FC00A904F5067000F042F8002894D12D +:106370009DF8030010F00300D4D00128F1D104F1FE +:106380000C02294600A8DBF715FABDF80100002829 +:10639000E7D0DDF809009DF80310490718D504215E +:1063A000ADF803100121ADF8011002220DF1030137 +:1063B000D9F730FE02220DF10101DDF80900801C41 +:1063C000D9F728FE00A904F50C70DCF7FFFBC8E73D +:1063D000DCF7EAFBC5E70000845D002010B5044649 +:1063E000DCF723FC072C01D1DCF7D4FD012010BD24 +:1063F00030B581B004460D46DDF711FC0A48A168AE +:1064000029B9407808B9DDF704FC012009E00178DA +:10641000491C017029462046E2F7C8FEDDF7A2FCC0 +:10642000002001B030BD00BFA4310020834800210E +:106430000160416081607047F8B52DED0C8BB0EEC6 +:10644000408AF0EE608AB0EE419A0027B0EE680A0A +:1064500010EE100AD9F7E4FD41EC1A0BB0EE480A31 +:1064600010EE100AD9F7DCFD41EC1C0B734E21F045 +:1064700000413A46724BD9F7E9FE18D251EC1A0B9B +:1064800021F00041D9F7E2FE11D2B0EE490A10EE38 +:10649000100AD9F7C5FD21F000413A46684BD9F7FB +:1064A000D5FE04D2104630607060B060C3E09FED4E +:1064B00065BB9FED66DB3068D9F7B2FD04460D463B +:1064C00053EC1C2B51EC1D0BD9F7E2FD53EC1B2BAD +:1064D000D9F7DEFD3A465F4BDAF750F822462B46F5 +:1064E000D9F7D0FEDAF702F809EE900AC6ED009A65 +:1064F0007068D9F795FD04460D4653EC1A2B51EC04 +:106500001D0BD9F7C5FD53EC1B2BD9F7C1FD3A463E +:10651000504BDAF733F822462B46D9F7B3FED9F7BA +:10652000E5FF0AEE100A86ED01AAB068D9F778FDFA +:1065300004460D46B0EE490A10EE100AD9F770FD78 +:1065400053EC1D2BD9F7A4FD53EC1B2BD9F7A0FD61 +:106550003A46404BDAF712F822462B46D9F792FE1C +:10656000D9F7C4FF09EE100A86ED029A19EE900AD7 +:10657000D9F756FD21F0004141EC1B0B1AEE100A31 +:10658000D9F74EFD41EC180B21F0004141EC1C0BFA +:1065900019EE100AD9F744FD41EC1A0B53EC1B2BF2 +:1065A00051EC1C0BD9F76EFE53EC1A2B23F0004371 +:1065B000D9F768FED9F79AFF00EE100ADFED260A38 +:1065C000B4EE600AF1EE10FA2EDB51EC1A0B21F05A +:1065D00000410122214BDAF70DF925D8BBEE090A5B +:1065E000F4EE409AF1EE10FA0BD551EC180B21F0B5 +:1065F000004153EC1A2B23F00043D9F727FE00D2B9 +:1066000001279FED170AF4EE409AF1EE10FA0BDB2A +:1066100051EC180B21F0004153EC1A2B23F00043EE +:10662000D9F714FE00D20227002F03D000203060DB +:106630007060B0603846BDEC0C8BF2BD74FE00207B +:106640000000E03F0000000000004E40E6C1631A79 +:10665000DCA54C4000408F4001004842000044400F +:106660000100C8410FB400B595B000200190009022 +:106670000D220146DCF7D2F8022801D102204AE0BF +:10668000754A01201060BDF85A0001909DF859002C +:106690000090012803D14FF48070009015E002288B +:1066A00003D14FF4007000900FE0032803D14FF4A2 +:1066B0008060009009E0042803D14FF4006000904E +:1066C00003E0052801D11020009000A901A8FEF7E1 +:1066D0003FFAB4208DF8350046208DF836000120B1 +:1066E0008DF8370000208DF80800032003900DF18D +:1066F00011000DA92022DAF715F90A208DF81000F3 +:106700000020ADF8320002A8DCF730F9002801D1F2 +:10671000022000E0012015B05DF814FB00B593B035 +:10672000B4208DF8010046208DF8020001208DF87C +:1067300003008DF82000032009900DF1290000A925 +:106740002022DAF7EFF80A208DF828000020ADF8B3 +:106750004A0008A8DCF70AF9002801D1032002E06A +:10676000FEF7D8FA012013B000BD30B595B000A8EF +:10677000DCF7B3F80BA8CCF76BFA374CBDF83A004E +:106780002071204600A991EC030AFEF7DFFA0546C6 +:10679000607A85420ED0022D05D1012000F03CF830 +:1067A0000120207206E0012D04D1012000F034F810 +:1067B000022020726572012015B030BD80B5DCF773 +:1067C0002BF82549C86000220A722449C0F8181223 +:1067D00000F5067022494160224981600FF20D01E7 +:1067E000C1600FF23D010161012002BD1A48C0687D +:1067F00090F80902002801D10020704708E080B518 +:10680000154800210172084600F006F8012002BD7B +:10681000154890F900007047134908707047000050 +:1068200018B430220B7812FB030301241C700B7880 +:1068300012FB03035C700B7812FB03030D249C70A6 +:106840000B7812FB0300044A127AC2700878401CCD +:10685000087011BCD3E7000004FE00206566030841 +:106860001D6703086B67030803FF00200FB410B512 +:10687000A0B09DF889005849087001208DF88B0060 +:10688000AA208DF889003C208DF88A0000208DF820 +:106890000000032001900DF1090022A92022DAF75F +:1068A00041F80A208DF8080000A8DCF75FF80028FE +:1068B00005D10FF26C10DCF732FA022014E00BA8BD +:1068C000E4F7BCFF454C542200212046D9F798FB41 +:1068D0000021A165E16554220BA9D9F79BFB0FF2BA +:1068E0005410DCF71CFA012020B010BC5DF814FB3A +:1068F00080B50A210320DCF710FE032801D1032014 +:1069000002BD0FF23C10DCF70AFA012002BD80B58F +:10691000DBF782FF314948653149C0F8001100F5C5 +:106920008070304941600FF26D0181600FF20D01FE +:10693000C1600FF2B5010161012002BD10B594B034 +:106940002649486D90F8F10000281BD0224C207891 +:10695000002817D001201290119084B0684654226C +:10696000D9F7F0FF0FBCE0F7D5F9C0B22178884223 +:1069700008DB01460FF2D400DCF7D1F900F005F88E +:10698000012000E0002014B010BD13480021017068 +:106990000120704700B595B000A8E4F74FFF0F48FD +:1069A000816D491C8165012902D10099C1650FE003 +:1069B00033290DD300218165C16D009A914207D121 +:1069C000542200A9D9F726FB0FF29400DCF7A7F9AF +:1069D000012015B000BD000005FF002020FA0020B6 +:1069E0006D680308F168030810B50C463021227861 +:1069F00011FB020201231370227811FB0202537073 +:106A0000227811FB020206239370227811FB020008 +:106A10000121C170FFF7B9FF2078401C207010BD24 +:106A200050443A205065646F4F70656E4661696CE2 +:106A30002053530050443A20534320535441000004 +:106A400050443A2053432053544F000050443A20BE +:106A500044696666537465704F76657220256400DC +:106A600050443A20534320524553455400000000FF +:106A70003C0A560A700A8B0AA60AC10ADD0AF80AFD +:106A8000150B310B4E0B6B0B880BA50BC30BE10BDE +:106A9000000C1E0C3D0C5D0C7C0C9C0CBD0CDD0C2C +:106AA000FE0C1F0D410D630D850DA80DCB0DEE0DD8 +:106AB000120E360E5A0E7F0EA40ECA0EEF0E160FD1 +:106AC0003C0F630F8B0FB30FDB0F03102C1056100E +:106AD0008010AA10D41000112B1157118311B0117E +:106AE000DE110B12391268129712C712F712271310 +:106AF00059138A13BC13EF13221455148914BE14AE +:106B0000F31429155F159515CD1504163D16761647 +:106B1000AF16E91624175F179B17D81715185218C8 +:106B20009118CF180F194F199019D119131A561A15 +:106B30009A1ADE1A221B681BAE1BF51B3D1C851C16 +:106B4000CE1C181D621DAD1DF91D461E941EE21EB1 +:106B5000311F811FD11F23207520C8201C217121C6 +:106B6000C7211D227422CD2226238023DA23362436 +:106B70009324F1244F25AF250F267126D3263627DF +:106B80009B2700286728CE283629A0290B2A762A99 +:106B9000E32A512BC02B302CA12C132D862DFB2D3D +:106BA000712EE82E602FD92F5330CF304C31CA319F +:106BB0004A32CA324C33D0335434DA346235EA358F +:106BC000743600378D371B38AA383C39CE39623AD3 +:106BD000F83A8F3B273CC13C5D3DFA3D983E383F3B +:106BE000DA3F7E402341CA4172421C43C843764487 +:106BF0002545D64589463D47F447AC486649224A73 +:106C0000DF4A9F4B614C244DEA4DB14E7B4F4650BD +:106C10001451E351B55289535E5436551156ED5611 +:106C2000CB57AC588F59745A5C5B465C325D215E21 +:106C3000125F0560FB60F361EE62EB63EB64ED6590 +:106C4000F266FA670469116A206B336C486D5F6EF7 +:106C50007A6F9770B871DB7201742A7556768577F2 +:106C6000B778EC79247B5F7C9D7DDF7E24800000FB +:106C70003D0A580A720A8D0AA80AC30ADF0AFB0AEB +:106C8000170B330B500B6D0B8A0BA70BC50BE30BCC +:106C9000020C210C400C5F0C7F0C9F0CBF0CE00C15 +:106CA000010D220D430D650D880DAA0DCD0DF10DC1 +:106CB000140E380E5D0E820EA70ECC0EF20E180FBB +:106CC0003F0F660F8D0FB50FDD0F06102F105910F7 +:106CD0008210AD10D71002112E115A118611B31166 +:106CE000E1110E123D126B129A12CA12FA122B13F4 +:106CF0005C138D13BF13F213251459148D14C11492 +:106D0000F6142C1562159915D0150816401679162B +:106D1000B316ED16281763179F17DB1718185618A8 +:106D20009418D318131953199419D519181A5A1AF3 +:106D30009E1AE21A271B6C1BB31BF91B411C891CF2 +:106D4000D21C1C1D671DB21DFE1D4B1E981EE71E8A +:106D5000361F861FD61F28207A20CD20212176219C +:106D6000CC2122227A22D2222B238523E0233C2409 +:106D70009924F6245525B52515267726D9263C27AE +:106D8000A12706286D28D4283D29A629112A7D2A65 +:106D9000E92A572BC62B362CA82C1A2D8D2D022E06 +:106DA000782EEF2E672FE02F5B30D6305331D23163 +:106DB0005132D2325433D8335C34E2346A35F2354E +:106DC0007D36083795372338B3384439D7396B3A8D +:106DD000003B973B303CCA3C663D033EA23E423FEF +:106DE000E43F87402D41D3417C422643D243804437 +:106DF0002F45E04593464847FE47B64871492D4A1E +:106E0000EB4AAA4B6C4C304DF54DBD4E864F52505F +:106E10002051EF51C15295536B5443551D56FA56AC +:106E2000D857B9589C59825A695B535C405D2F5EB4 +:106E3000205F136009610162FC62FA63FA64FC6519 +:106E4000016709681369206A306B426C586D6F6E78 +:106E50008A6FA870C871EB7212743B75677696776B +:106E6000C878FD79367B717CB07DF17E36807F817C +:106E7000816807E002681168536889185B18C3606D +:106E800008320260C2689142F4D04A1C82600878DD +:106E9000704738B504460D46A068E168884212D1B3 +:106EA00020686168884208BFE6F73AFF2068227CC4 +:106EB000016802B14944A16042685218E26008309A +:106EC00020609142ECD0A068401CA06000F8015DF9 +:106ED00031BD2DE9F04589B000F108010591016847 +:106EE000059A490802EBC10106910021079108911A +:106EF0000168490800EBC10108310091017901F0F6 +:106F000001018DF8101040680099400801EBC000A5 +:106F1000019000200290039088E005A8FFF7A8FFE9 +:106F2000044614F0030503D105A8FFF7A1FFC51C13 +:106F300026090F2E1BD105A8FFF79AFF00F10F06B7 +:106F400015E0059801680818059907904968081820 +:106F50000890059808300590079808998842F0D065 +:106F6000401C079010F8011D00A8FFF792FF6D1E4E +:106F7000F2D1002E55D005A8FFF77AFF0546A008EC +:106F800000F00300032804BF05A8FFF771FF009C71 +:106F90000299DDF80C8005EB002008E0083C801A1F +:106FA00054F8041C54F8082C01EB0208414654F82C +:106FB000082C8A1A8242F1D3404247180025B61C99 +:106FC0002FD0474507D154F8047B54F8040B00EB4D +:106FD00007084745F7D00298039917F801AB884294 +:106FE00017D100980199884208BFE6F799FE0098EA +:106FF00000689DF81010029009B148440290009971 +:1070000002984968009A0918083203910092884250 +:10701000E7D00298401C02906D1C00F801ADB5420B +:10702000CFD10298039988427FF477AF01980099F5 +:1070300081427FF472AF09B0BDE8F0850FB480B52E +:107040001A2200210846DBF7E9FB022801D10220C1 +:107050000EE01A2201210020DBF7E0FB022801D11B +:10706000022005E01A20DCF799F8FEF7C7FB0120A3 +:1070700002BC5DF814FB80B51A2200210120DBF769 +:10708000CDFB022801D1022002BD1A2201210846AF +:10709000DBF7C4FB022801D1022002BD012002BDA2 +:1070A000F0B58BB04848846BA069E16845180026AC +:1070B00000A8DBF712FC0398D8F7B2FF434A444B11 +:1070C000D9F75CFAE4F7E6FF28800498D8F7A8FF20 +:1070D0003E4A3F4BD9F752FAE4F7DCFF6880059847 +:1070E000D8F79EFF394A3A4BD9F748FAE4F7D2FF6E +:1070F000A880384F3878002809D1381D03A9D1EC71 +:10710000031A00A991EC030AFEF7A6FB0646012E1E +:1071100002D10120387006E03878002803D1002021 +:10712000B880F8803881B888E880F8882881388964 +:1071300068810120A0770BB0F0BD80B5DBF76CFB58 +:10714000254908602549C0F8201400F22040244950 +:107150004160244981600FF21101C1600FF23501D5 +:107160000161012002BD00001B48006890F8110475 +:10717000002801D10020704705E080B5002000F014 +:1071800006F8012002BD184890F900007047164922 +:107190000870704718B430220B7812FB03030124E7 +:1071A0001C700B7812FB03035C700B7812FB03035B +:1071B0001A249C700B7812FB03000022C27008781E +:1071C000401C087011BCD8E70000002089AD84FA8B +:1071D0000A74313F50FE0020E0FE00203D7003089D +:1071E00077700308A170030802FF00200FB480B578 +:1071F0000FF21810DBF793FD0F2201210020DBF7BF +:107200000DFB022805D10FF21410DBF788FD0220D8 +:1072100000E0012002BC5DF814FB80B50FF20810FD +:10722000DBF77DFD0F2201210846DBF7F7FA032883 +:1072300005D10FF20410DBF772FD032002BD01201F +:1072400002BD80B5012000F035F8002000F02BF8D9 +:10725000012002BD80B50FF2EC00DBF760FDDBF72B +:10726000DBFA244908602449C0F8681200F51A7056 +:1072700022494160224981600FF20D01C1600FF285 +:107280003D010161012002BD1A48006890F85902D1 +:10729000002801D10020704708E080B5002000F0F0 +:1072A00009F8012002BD174908707047164890F987 +:1072B00000007047144908707047000018B430226D +:1072C0000B7812FB030301241C700B7812FB0303E1 +:1072D0005C700B7812FB03030F249C700B7812FB7D +:1072E0000300084A1278C2700878401C087011BC6C +:1072F000D3E70000D0FE0020ED7103081B720308E5 +:1073000043720308FAFE0020F9FE002053746172F4 +:1073100074204779726F2054656D700053746172E8 +:1073200074204661696C00004779726F2054656D66 +:10733000702053746F70000053746F702046616941 +:107340006C0000004779726F2054656D7020496EA3 +:1073500069740000524800210170416081607047EB +:1073600070B5044600254E4E307800282CD1206898 +:10737000D8F756FE21F000412A464A4BD8F766FF5F +:1073800019D26068D8F74CFE21F000412A46454BDF +:10739000D8F75CFF0FD2A068D8F742FE21F0004179 +:1073A0000122414BD9F726FA05D87068401C70605D +:1073B0002846B06004E0B068401CB06028467060A9 +:1073C0007068052862DB28E0032837D12068D8F7E9 +:1073D00027FE21F000412A46324BD8F737FF17D25B +:1073E0006068D8F71DFE21F000412A462D4BD8F7E2 +:1073F0002DFF0DD2A068D8F713FE21F00041012225 +:10740000294BD9F7F7F903D87068401C706001E088 +:10741000284670607068052840DB94ED020AB5EEDE +:10742000400AF1EE10FA03DD01252846307002E033 +:10743000022528463070002070602FE0012801D01E +:1074400002282BD12068D8F7EBFD21F00041012262 +:10745000144BD9F7CFF913D96068D8F7E1FD21F0C3 +:10746000004101220F4BD9F7C5F909D9A068D8F717 +:10747000D7FD21F000412A460B4BD8F7E7FE03D297 +:10748000B068401CB06001E01046B060B0680528EC +:1074900004DB0325284630700020B060284670BD0C +:1074A00080FE00200000F83F000021404B480021F2 +:1074B000017041608160704770B506460024474DF9 +:1074C000287800282BD13068D8F7AAFD21F0004198 +:1074D0002246434BD8F7BAFE18D27068D8F7A0FD01 +:1074E00021F0004122463E4BD8F7B0FE0ED296ED79 +:1074F000020ADFED390AB4EE600AF1EE10FA05DB9C +:107500006868401C68601046A86004E0A868401CD9 +:10751000A860104668606868052853DB27E00228E9 +:107520002BD13068D8F77CFD21F0004122462C4B4E +:10753000D8F78CFE16D27068D8F772FD21F00041A2 +:107540002246274BD8F782FE0CD296ED020ADFEDD9 +:10755000220AB4EE600AF1EE10FA03DB6868401C00 +:10756000686001E0104668606868052832DB012425 +:1075700020462870104668602CE001282AD1306827 +:10758000D8F74EFD21F000410122154BD9F732F911 +:1075900012D97068D8F744FD21F000410122104B48 +:1075A000D9F728F908D996ED020AF2EE020AB4EEEC +:1075B000600AF1EE10FA03D5A868401CA86001E04B +:1075C0002046A860A868052804DB0224204628700D +:1075D0000020A860204670BD0100104114FE00206C +:1075E0000000E03F0FB480B5102201210020DBF73E +:1075F00015F9022801D1022002E0FEF717FF012051 +:1076000002BC5DF814FB80B5102201210846DBF7AF +:1076100005F9032801D1032002BD012002BD30B5C8 +:107620008BB000A8DBF759F903A890EC030AFEF72A +:1076300003FF0446324D2878A0420FD0012C05D11B +:10764000012000F03DF80120687006E0022C04D112 +:10765000012000F035F8022068702C7001200BB07A +:1076600030BD80B5DBF7D8F82549486000224A7064 +:107670002449C0F8901200F5247023494160234941 +:1076800081600FF21101C1600FF23D010161012023 +:1076900002BD00001A48406890F88102002801D11C +:1076A0000020704708E080B5154800214170084669 +:1076B00000F006F8012002BD154890F9000070475F +:1076C000134908707047000018B430220B7812FB81 +:1076D000030301241C700B7812FB03035C700B780E +:1076E00012FB030310249C700B7812FB0300044A66 +:1076F0005278C2700878401C087011BCD3E70000B3 +:10770000E0710020E5750308077603081F7603087B +:10771000127200200901002806D500F00F003C4A33 +:10772000801800F8041C70473A4A8154704710B51D +:10773000401EB0F1807F01D3012010BD364C606047 +:107740000F214FF0FF30FFF7E5FF0020A06007207A +:107750002060002010BD10B5304C2078401C2070F7 +:1077600000F06AF82078012804D16068002801D070 +:10777000DCF74BFA2078401E207010BD10B5DCF706 +:107780004EFA264C6078401C607000F091F8244856 +:1077900000684FF47A71B0FBF1F0FFF7C8FF0028E2 +:1077A00000D0FEE71F48204901600E214FF0FF3056 +:1077B000FFF7B0FF6078401E6070C0B2002803D1B0 +:1077C000BDE81040DCF725BA10BD000010B5174C1D +:1077D0004FF4005120464183C04630BF4FF4005162 +:1077E0002046E2F777FEF3E71EF0040F0CBFEFF33D +:1077F0000880EFF3098000F01DB80D4801680029EA +:1078000005D5016841F00041016000F0B1B8FEE724 +:1078100018ED00E000E400E010E000E0A4310020FA +:107820002032002008ED00E00000000800100240B7 +:107830002CED00E0DEF737B910B50948016A491CA4 +:107840000162426A891A5CBF01218171054804689E +:1078500024B1606880472468002CFAD110BD00BFB5 +:10786000A43100200872002080B54FF44070E3F787 +:1078700087F93348016841F47001016031480168BB +:1078800041F0010101600021816001682E4A114030 +:1078900001602E494160016821F4802101600021CE +:1078A000C16000F02DF82A484FF00061016001BD71 +:1078B0002848416801F00C01082914D101680268C8 +:1078C00002F03F02244BB3FBF2F20168C1F38811CE +:1078D00051430268C2F30142521C5200B1FBF2F163 +:1078E0001E4A116102E01D491B4A0A611B4940689A +:1078F000C0F30310405C0A6922FA00F00861704787 +:107900001448C16B41F08051C163416841604168D6 +:107910004160416841600821016011494FF4C06233 +:107920000A60416821F4000141600E480E4901607F +:107930000E48016821F4404141F4804101607047E4 +:1079400088ED00E000380240FFFFF6FE1030002412 +:1079500008ED00E0043802400024F400103200205A +:10796000003C02408438024040310040007000403A +:10797000019810F0040006BFEFF308800830EFF321 +:107980000980816901F10201816170470FB480B5FE +:10799000072200210846DAF741FF022801D1022020 +:1079A00004E09DF80800FCF75BFB012002BC5DF8D9 +:1079B00014FB80B5072200210120DAF72FFF0328EE +:1079C00001D1032002BD012002BD10B582B000200C +:1079D0008DF80000314C00A96068FCF75DFB0028C1 +:1079E00006D0012000F03BF89DF800002070607088 +:1079F000012016BD10B5294CDAF70EFFA060DAF7AA +:107A0000A3FA606000202070A0682549C0F8281102 +:107A100000F5947023494160234981600FF20D0104 +:107A2000C1600FF241010161012010BD014600203B +:107A30001A4A926892F81921002A02D0002900D12E +:107A400009E0704780B5154800210170084600F034 +:107A500006F8012002BD154890F90000704713494F +:107A60000870704718B430220B7812FB030301240E +:107A70001C700B7812FB03035C700B7812FB030382 +:107A800007249C700B7812FB0300044A1278C27022 +:107A90000878401C087011BCD4E70000A8710020D1 +:107AA0008D790308B3790308CB790308117200209C +:107AB0000FB480B5152200210846DAF7AFFE022880 +:107AC00001D1022002E0FFF7F1FC012002BC5DF8C9 +:107AD00014FB80B5152200210120DAF79FFE032850 +:107AE00001D1032002BD012002BD10B5314840681C +:107AF000FFF7E2FC044664B2002C05D0012000F040 +:107B000037F8204600F037F8012010BD10B5294C99 +:107B1000DAF782FEA060DAF717FA606000202070C2 +:107B2000A0682549C0F8581300F5567023494160F4 +:107B3000234981600FF20D01C1600FF24101016123 +:107B4000012010BD1B48806890F84903002801D12E +:107B50000020704708E080B51648002101700846F3 +:107B600000F006F8012002BD164890F900007047A9 +:107B70001449087070470F490870704718B43022D4 +:107B80000B7812FB030301241C700B7812FB030318 +:107B90005C700B7812FB030315249C700B7812FBAE +:107BA0000300044A1278C2700878401C087011BCA7 +:107BB000D1E7000044FE0020B17A0308D37A03081D +:107BC000EB7A0308F7FE00200FB480B517220021DE +:107BD0000846DAF723FE022801D1022002E0FFF76F +:107BE000B9FB012002BC5DF814FB80B5172200210F +:107BF0000120DAF713FE032801D1032002BD012082 +:107C000002BD10B531484068FFF7AAFB044664B2D4 +:107C1000002C05D0012000F037F8204600F037F89E +:107C2000012010BD10B5294CDAF7F6FDA060DAF797 +:107C30008BF9606000202070A0682549C0F8A81367 +:107C400000F56A7023494160234981600FF20D01FC +:107C5000C1600FF241010161012010BD1B48806825 +:107C600090F89903002801D10020704708E080B502 +:107C7000164800210170084600F006F8012002BDF8 +:107C8000164890F9000070471449087070470F4972 +:107C90000870704718B430220B7812FB03030124DC +:107CA0001C700B7812FB03035C700B7812FB030350 +:107CB00017249C700B7812FB0300044A1278C270E0 +:107CC0000878401C087011BCD1E7000068FE002055 +:107CD000C97B0308EB7B0308037C030804FF002037 +:107CE0004BDF3CE02BE119E205E3F0E3D9E4C0E52A +:107CF000A5E687E768E846E921EAF9EACFEBA1ECD7 +:107D000070ED3BEE03EFC6EF86F041F1F8F1AAF219 +:107D100057F300F4A3F441F5DAF56DF6FBF684F7BA +:107D200006F884F8FBF86EF9DAF942FAA4FA00FBD7 +:107D300058FBABFBF9FB42FC87FCC8FC04FD3DFD96 +:107D400072FDA3FDD1FDFCFD23FE48FE6AFE8AFE06 +:107D5000A8FEC3FEDCFEF3FE09FF1CFF2FFF40FF61 +:107D600063019701D20116026302BC022003930350 +:107D70001604AA0453051206EA06DE07F108260ACD +:107D8000800B020DB00E8D109B12DD145417011ADA +:107D9000E51CFD1F4823C126642A2A2E0C32013619 +:107DA000FF39FD3DF241D4459A493D4DB75001544C +:107DB0001A57FD59AA5C215F636171634E65FC66C9 +:107DC0007F68D9690D6B206C146DEC6DAB6E546FD0 +:107DD000E86F6B70DE7042719B71E8712C72677294 +:107DE00010B582B0DCF73EF8FFF7C8FCFEF73DFAAD +:107DF0001A4C4FF4806000902346194A642104F520 +:107E000000501C3000F036F84FF4A050009004F5FC +:107E10008063144A4B2104F5005000F02BF84FF416 +:107E20008060009004F5C0530F4A322104F50050E1 +:107E3000383000F01FF84FF48060009004F5E053F4 +:107E40000A4A0A2104F50050543000F013F808489B +:107E500001210170DBF7BBFE002016BD4C32002073 +:107E6000CF51030881620308F158010877620308C3 +:107E700016720020F0B482B00025069C00262F4622 +:107E8000AC46A0E8E010E0C01C380C4D4174017C09 +:107E90002D7802B029430174E118C908C90041F8DE +:107EA000506D4FF080734B64054B0B64CA646FF0E8 +:107EB00002024A624160F0BCDBF79FBF17720020EC +:107EC000C33B010843F63001C4F202014FF09F02A8 +:107ED0000A6040F20000C4F202004FF6FF73CAF6D7 +:107EE000FF3303604FF6BF63CFF6FF7300F580608A +:107EF00003604FF6FF73CFF6FF7300F580600360F9 +:107F000000F58060036000F58060036040F20F03BD +:107F1000C0F2000341F60040C4F2020003604FF0DB +:107F200000020A6001488047014800476978030859 +:107F3000A1810308000100FF0000000001FF000014 +:107F400000FF0000000100FF00010000000001012F +:107F5000000000010000000100FF00FF0000000021 +:107F6000FF01000000FF000000FF00010001000011 +:107F70000000FFFF00000001000000FF80B5DAF7FD +:107F80004BFC064981630649C16306490164064901 +:107F9000416406498164012002BD0000B92A01083C +:107FA000B52A0108C12A0108C52A0108C92A010801 +:107FB00010B5074979441831064C7C44163404E066 +:107FC0000A68081D511888470146A142F8D110BD22 +:107FD00098000000E400000045F8010849FD010890 +:107FE000EBFD0108000000000000000000000000A0 +:107FF000000000000000000000000000D51802088A +:10800000F51902082B1A02084B1A0208000000009A +:10801000391D020800000000E51D02084F1A020881 +:10802000D5180208F51902082B1A02084B1A020883 +:1080300000000000CF1C020800000000E51D02083F +:108040004F1A020835FF010857FF01083B000208DC +:10805000C9000208000000001D0102080000000025 +:10806000510A02087B0A02080780FDFFCC3F00008E +:108070004C3200200859000000A60020000000003B +:1080800053EEFFFF02000000020000000CB8FCFFEE +:1080900048030000000000204A32000037EEFFFFD6 +:1080A000020000000200000038BBFCFF8D00000051 +:1080B00018A20020E80300005B494E564E5D616344 +:1080C00063655F7368696674282564293A202564AE +:1080D00020256420256400004EF68851CEF2000170 +:1080E000086840F4700008604FF00070E1EE100A7C +:1080F000704700000120C046002801D0FFF758FF5C +:108100000020C046C046FFF76BFE00F000F800F00C +:1081100001B8000007463846EFF7FEFCFBE7000019 +:108120000A5B494E564E5D414343454C5F4D474DBA +:108130005432203A2025640010000000080000009E +:10814000040000000200000001000000474D2D491E +:108150004F46202564000000474D2D4346202564EE +:1081600000000000474D2D524631202564000000DC +:10817000474D2D5246322025640000005203000076 +:10818000EE020000EE02000000000000000000000F +:108190000000000047797243616C3D2564000000D7 +:1081A000C046C046FFF798FFFFF7A4FF4148532D94 +:1081B000453200004148532D453300004148532DBE +:1081C000453400004148532D453100005354302DB3 +:1081D0003200000041522D534C50000041522D53AB +:1081E0005442000041432D52463100004149532D75 +:1081F000534C5000474D2D5246310000474D2D50F5 +:1082000046310000474D2D5046320000474D2D4F5E +:1082100000000000474D2D534B495000890E830F3D +:108220007D10771147522D534C50000047522D536B +:108230005442000047522D52463100004748532D0A +:10824000453200004748532D453300004748532D21 +:10825000453400004748532D453500004748532D0D +:10826000453600004748532D453700004748532DF9 +:10827000453800007F7F7F00000000000000000004 +:10828000FCF766BFFFF7B0BAFCF76CBFFCF774BF32 +:10829000FCF77CBFFCF784BFFCF78CBFDBF764BC4A +:1082A000FFF759BAFFF7FEBFFFF7FEBFFFF7FEBFAC +:1082B000FDF774B9FFF7FEBFFFF7FEBFFDF764B827 +:1082C000FDF7E5B8FDF70BB9FFF7FEBFFFF7FEBFFF +:1082D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD2 +:1082E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC2 +:1082F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB2 +:10830000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA1 +:10831000FFF7FEBFFFF7FEBFE3F767B8FFF7FEBF4B +:10832000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF81 +:10833000FCF74CBFFFF7FEBFFFF7FEBFFFF7FEBF26 +:10834000FFF7FEBFFDF7FCB8FDF76CB9FFF7FEBF06 +:10835000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF51 +:10836000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF41 +:10837000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF31 +:10838000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF21 +:10839000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF11 +:1083A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF01 +:1083B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF1 +:1083C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFE1 +:1083D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD1 +:0C83E000FFF7FEBFFFF7FEBFFFF7FEBF78 +:00000001FF diff --git a/firmware/ssp_stm_bf.fw.ihex b/firmware/ssp_stm_bf.fw.ihex index 99378f65e41e..d9877114e5ed 100755 --- a/firmware/ssp_stm_bf.fw.ihex +++ b/firmware/ssp_stm_bf.fw.ihex @@ -1,28 +1,28 @@ -:10000000009C0020AD810308214B0308D17A03082E -:10001000354B0308494B03085D4B03080000000003 -:10002000000000000000000000000000714B030809 -:10003000854B030800000000F13001083F7A0308F7 -:10004000998503089D850308A1850308414F03088E -:10005000A9850308AD850308514D0308334E0308F5 -:10006000834E0308BD850308C1850308C5850308C1 -:10007000C9850308CD850308D1850308D585030804 -:10008000D9850308DD850308E1850308E5850308B4 -:10009000E9850308ED850308F1850308F585030864 -:1000A000F9850308FD850308018603080586030812 -:1000B00009860308CF0F0208118603081586030876 -:1000C000198603081D860308218603089D4B030833 -:1000D000298603082D860308318603083586030820 -:1000E000E54E0308C94F0308418603084586030807 -:1000F000498603084D860308518603085586030880 -:10010000598603085D86030861860308658603082F -:10011000698603086D8603087186030875860308DF -:10012000798603087D86030881860308858603088F -:10013000898603088D86030891860308958603083F -:10014000998603089D860308A1860308A5860308EF -:10015000A9860308AD860308B1860308B58603089F -:10016000B9860308BD860308C1860308C58603084F -:10017000C9860308CD860308D1860308D5860308FF -:10018000D9860308DD8603082DE9F0430446079D60 +:10000000009C00201D820308414B0308417B03082C +:10001000554B0308694B03087D4B030800000000A3 +:10002000000000000000000000000000914B0308E9 +:10003000A54B03080000000011310108AF7A030846 +:10004000E5850308E9850308ED8503088B4F030860 +:10005000F5850308F9850308774D03087D4E0308ED +:10006000CD4E0308098603080D8603081186030890 +:1000700015860308198603081D86030821860308D0 +:1000800025860308298603082D8603083186030880 +:1000900035860308398603083D8603084186030830 +:1000A00045860308498603084D86030851860308E0 +:1000B00055860308EF0F02085D8603086186030872 +:1000C00065860308698603086D860308BD4B03082F +:1000D00075860308798603087D86030881860308F0 +:1000E0002F4F0308135003088D86030891860308D9 +:1000F00095860308998603089D860308A186030850 +:10010000A5860308A9860308AD860308B1860308FF +:10011000B5860308B9860308BD860308C1860308AF +:10012000C5860308C9860308CD860308D18603085F +:10013000D5860308D9860308DD860308E18603080F +:10014000E5860308E9860308ED860308F1860308BF +:10015000F5860308F9860308FD860308018703086E +:1001600005870308098703080D870308118703081B +:1001700015870308198703081D87030821870308CB +:1001800025870308298703082DE9F0430446079DC6 :10019000A78AADB29FB3052FA6BF381F1FFA80FCF8 :1001A0004FF0000C781EA66880B206EBC006B6F8C9 :1001B00000E05FEADE381BD04FEA8E584FEA9858CD @@ -518,8 +518,8 @@ :102050003EBD5D208DF800006C70022300AA9A211D :1020600007200EF0A3F8002801D100203EBDDFF8C4 :10207000F00AB0F924100FF680300EF04EF801206F -:102080003EBD80B50FF6EC3107200EF0DBFC0FF6FD -:1020900008410A20BDE804400EF0D4BC1CB5002065 +:102080003EBD80B50FF6EC3107200EF0EDFC0FF6EB +:1020900008410A20BDE804400EF0E6BC1CB5002053 :1020A000ADF806008DF804000FF660300EF035F83C :1020B000002400E0641C0A2C13DADFF8A00A2118BF :1020C000097B8DF80610205C8DF8070002230DF1C6 @@ -576,16 +576,16 @@ :1023F000BDF80A00A084A06A012826DB206B012812 :1024000023D1606B002820D10DF00DFE007D012846 :102410000BD1B4F92400B5F87810884205DADFF85A -:10242000441720200EF024FD0FE00DF0FCFD007D90 +:10242000441720200EF032FD0FE00DF0FCFD007D82 :1024300000280AD1B5F87600B4F92410884204DAED -:10244000DFF8201720200EF013FD00206063A07835 +:10244000DFF8201720200EF021FD00206063A07827 :1024500000280AD003980090059B079A0999DFF895 -:1024600008070EF0ABFE0020A070009603AB05AA93 -:1024700007A909A80EF023FF24488169487F00229C +:1024600008070EF0B9FE0020A070009603AB05AA85 +:1024700007A909A80EF031FF24488169487F00228E :102480004A770CB0BDE8F0872DE9F04105460C46CF :102490000026DDF8188014E058F8260000EE100A37 -:1024A000B8EEC00A10EE100A0FF0EAF90022DFF8C9 -:1024B000FC360FF01DFA0FF0F9FA1938C019288010 +:1024A000B8EEC00A10EE100A0FF0F8F90022DFF8BB +:1024B000FC360FF02BFA0FF007FB1938C0192880F3 :1024C000761CB5F90070A642E6DB002F01D500208E :1024D0002880B5F9000090FBF4F028800120BDE8C9 :1024E000F08180B5052802D1084600F002F80120ED @@ -607,7 +607,7 @@ :1025E0004402D2B29A2106200DF01EFE002801D12D :1025F000002076BD9DF80400A0717078E0710FF2A4 :1026000034600DF08AFDFFF713FE012076BD0FF256 -:10261000AC6106200EF016BA1CB50020ADF806001D +:10261000AC6106200EF028BA1CB50020ADF806000B :102620008DF804000FF218600DF077FD002400E033 :10263000641CDFF87C05032C12DA211809798DF867 :1026400006102018007A8DF8070002230DF106020B @@ -662,43 +662,43 @@ :1029500006200DF069FC00283ED001208DF8100003 :102960009DF8180000F0FD008DF81100022304AA64 :102970009A2106200DF01AFC00282DD0794920203C -:102980000EF076FA01200BB0BDE8F08F8142F9DA43 +:102980000EF084FA01200BB0BDE8F08F8142F9DA35 :10299000286B0028F6D10FF2D0200DF0BEFB0120ED :1029A0002863E86A0028EDD10120009006AB44229C :1029B0009A2106200DF038FC00280DD001208DF85A :1029C000100092208DF81100022304AA9A210620FB :1029D0000DF0ECFB0028D5D10020D4E72DE9F0471D :1029E0002DED068B86B004468A469146DDF8588068 -:1029F000179D00A818210FF085F89FED5C8BB0EEB5 +:1029F000179D00A818210FF093F89FED5C8BB0EEA7 :102A0000489AF0EE689A0027159EB6B2042E5AD264 :102A10009FED588B08E053EC182B002057490EF01F -:102A200067FF41EC180B7F1CB742F4DB032E08D183 -:102A300053EC182B00204FF080410EF059FF41EC71 -:102A4000180B20460FF070F853EC182B0EF050FFC7 -:102A5000CDE9000150460FF067F853EC182B0EF04B -:102A600047FF41EC1A0B00AE86ED02AB48460FF073 -:102A70005BF853EC182B0EF03BFF41EC180B86ED86 -:102A8000048BDDE900233E483E490EF031FF064647 -:102A90000F4653EC1A2B3C483C490EF029FF3246B6 -:102AA0003B460FF04FF806460F4653EC182B3848BC -:102AB00038490EF01DFF02460B46304639460FF0EE -:102AC000B5F841EC180B1AFA84F4002C0FD04846E4 -:102AD0000FF02AF806460F4620460FF01BF8024674 -:102AE0000B46304639460FF061F941EC190B51ECB9 -:102AF000190B0022284B0EF0FBFE0022274B0FF093 -:102B000021F80122264B0FF075FA02D841F6583011 -:102B100009E00022234B0FF085FA02D240F6FC00B8 -:102B200001E00EF0C3FF286051EC180B01221E4B90 -:102B30000FF060FA01D81F4808E0002213460FF09A -:102B400071FA01D2104601E00EF0B0FFC8F80000A3 +:102A200075FF41EC180B7F1CB742F4DB032E08D175 +:102A300053EC182B00204FF080410EF067FF41EC63 +:102A4000180B20460FF07EF853EC182B0EF05EFFAB +:102A5000CDE9000150460FF075F853EC182B0EF03D +:102A600055FF41EC1A0B00AE86ED02AB48460FF065 +:102A700069F853EC182B0EF049FF41EC180B86ED6A +:102A8000048BDDE900233E483E490EF03FFF064639 +:102A90000F4653EC1A2B3C483C490EF037FF3246A8 +:102AA0003B460FF05DF806460F4653EC182B3848AE +:102AB00038490EF02BFF02460B46304639460FF0E0 +:102AC000C3F841EC180B1AFA84F4002C0FD04846D6 +:102AD0000FF038F806460F4620460FF029F8024658 +:102AE0000B46304639460FF06FF941EC190B51ECAB +:102AF000190B0022284B0EF009FF0022274B0FF084 +:102B00002FF80122264B0FF083FA02D841F65830F5 +:102B100009E00022234B0FF093FA02D240F6FC00AA +:102B200001E00EF0D1FF286051EC180B01221E4B82 +:102B30000FF06EFA01D81F4808E0002213460FF08C +:102B40007FFA01D2104601E00EF0BEFFC8F8000087 :102B500006B0BDEC068BBDE8F087000068380020A9 -:102B6000AC370020EC580020891700080000000056 +:102B6000AC370020F0580020891700080000000052 :102B700000000000000000000000F03F00001040D6 :102B80001361C3D32B6589BF5C2041F163CCDD3F6A :102B900024B9FC87F4DBA73F8089CC400094A14096 :102BA0000058BB4000F8A14065CDCD410000D03FAA -:102BB000C438002000CA9A3B0FF2241109200DF0FE -:102BC00041BF00003D3E55703D25642C4C6F3D25B6 +:102BB000C838002000CA9A3B0FF2241109200DF0FA +:102BC00053BF00003D3E55703D25642C4C6F3D25A4 :102BD000640000003D3E5031202564003D3E5032EF :102BE000202564003D3E494E54453132000000002E :102BF0003D3E5054483D30003D3E73796E5F50720B @@ -773,7 +773,7 @@ :10304000274E4FF4B27707FB1E570EF1200E0FFAF2 :103050008EFE3FB2BEF1000F04D5AD109D42D4DA12 :103060001D46D2E70EF10105402DC1DB0025CCE75E -:1030700005B0BDE8F08F000048800308C87F030852 +:1030700005B0BDE8F08F0000B88003083880030871 :10308000F3D1FFFF10B401460A684B6C148803F6B5 :103090003810048014880E2C04BF5488032C04D0EC :1030A00052204884002010BC704791888181D188CB @@ -812,46 +812,46 @@ :1032B0008619BAF1010AF0D1BDF840004519BDF8F0 :1032C0000000401EADF80000ADB2BDF800000028BF :1032D0007FF45CAF07B0BDE8F08F0000002216F06D -:1032E00085B900009248002141608160C1600161A0 +:1032E00095B900009248002141608160C160016190 :1032F00041618161017001214170704770B52DED10 :10330000068BF0EE608AB0EE419A0024884D287852 :10331000012800F004816878002852D12E69002E1F :1033200000F0A280D5ED010A30EE600A10EE100A1E -:103330000EF0A6FA21F000411DF094F809EE900A73 +:103330000EF0B4FA21F000411DF0A4F809EE900A55 :10334000B0EE680AD5ED020A30EE600A10EE100AFF -:103350000EF096FA21F000411DF084F80AEE100AF2 +:103350000EF0A4FA21F000411DF094F80AEE100AD4 :10336000B0EE490AD5ED030A30EE600A10EE100AFD -:103370000EF086FA21F000411DF074F800EE100AFC +:103370000EF094FA21F000411DF084F800EE100ADE :10338000DFED690AF4EE609AF1EE10FA16D5B4EEAC :1033900060AAF1EE10FA11D5B4EE600AF1EE10FA5F :1033A0000CD5701C28610728C0F2B98020466860DF :1033B000A860E860286101206870B0E020462861BC :1033C000ADE06869002846D1286900284CD0D5EDC9 -:1033D000010A30EE600A10EE100A0EF051FA21F0E8 -:1033E00000411DF03FF809EE900AB0EE680AD5EDF5 -:1033F000020A30EE600A10EE100A0EF041FA21F0D7 -:1034000000411DF02FF80AEE100AB0EE490AD5ED82 -:10341000030A30EE600A10EE100A0EF031FA21F0C5 -:1034200000411DF01FF800EE100ADFED400AF4EE37 +:1033D000010A30EE600A10EE100A0EF05FFA21F0DA +:1033E00000411DF04FF809EE900AB0EE680AD5EDE5 +:1033F000020A30EE600A10EE100A0EF04FFA21F0C9 +:1034000000411DF03FF80AEE100AB0EE490AD5ED72 +:10341000030A30EE600A10EE100A0EF03FFA21F0B7 +:1034200000411DF02FF800EE100ADFED400AF4EE27 :10343000609AF1EE10FA09DAB4EE60AAF1EE10FA31 :1034400004DAB4EE600AF1EE10FA68DB012068617C :103450002046286163E0012861D12E69322E02DA0C :10346000701C28615BE00DD185ED010AB0EE680AA1 :1034700085ED020AB0EE490A85ED030A2869401C71 :1034800028614CE0AE69322E44DAD5ED010A30EE07 -:10349000600A10EE100A0EF0F3F921F000411CF062 -:1034A000E1FF09EE900AB0EE680AD5ED020A30EEAF -:1034B000600A10EE100A0EF0E3F921F000411CF052 -:1034C000D1FF0AEE100AB0EE490AD5ED030A30EE3C -:1034D000600A10EE100A0EF0D3F921F000411CF042 -:1034E000C1FF00EE100A701CA861DFED100AF4EEB7 +:10349000600A10EE100A0EF001FA21F000411CF053 +:1034A000F1FF09EE900AB0EE680AD5ED020A30EE9F +:1034B000600A10EE100A0EF0F1F921F000411CF044 +:1034C000E1FF0AEE100AB0EE490AD5ED030A30EE2C +:1034D000600A10EE100A0EF0E1F921F000411CF034 +:1034E000D1FF00EE100A701CA861DFED100AF4EEA7 :1034F000609AF1EE10FA09DAB4EE60AAF1EE10FA71 :1035000004DAB4EE600AF1EE10FA08DB012028704C :10351000044604E0204628616861A861687020467E :10352000BDEC068B70BD00006666A63F6766A63FD1 :10353000B0FC002038B504460DF006F890F9705044 :10354000002C02D14FF0FF3032BD0922002120466D -:103550000EF085FD6D1E062D36D8DFE805F0040C53 +:103550000EF093FD6D1E062D36D8DFE805F0040C45 :10356000131A21282F00012060704FF0FF30E07007 :10357000012020722CE04FF0FF30207020710120DC :10358000207225E04FF0FF3060700120E070207263 @@ -860,58 +860,58 @@ :1035B00020704FF0FF302071207209E04FF0FF3093 :1035C0006070E070207203E0012020702071207292 :1035D000002032BD0FB42DE9FE4300A80FF2C03128 -:1035E0001CC91CC000A827F0A7FF06469DF829703B +:1035E0001CC91CC000A827F0B7FF06469DF829702B :1035F000D64807704FF005084FF000090069D0F871 -:103600003C04C11742464B461AF0C6F8A8FB0045D9 +:103600003C04C11742464B461AF0D6F8A8FB0045C9 :1036100008FB0155384600F03FF8CD48A0FB04896F -:1036200000FB05994046494627F0E2FE40464946E0 -:1036300027F0EFFE4FF47A01304627F07FFF4FF47A -:103640008031304627F07CFF27F062FF27F065FFCE -:1036500027F068FF27F06BFF00A8FFF76BFF00A8BB -:1036600028F049FB002804D001460FF240300CF04E -:1036700054FD214689B2012028F084FB0120BDE8D9 +:1036200000FB05994046494627F0F2FE40464946D0 +:1036300027F0FFFE4FF47A01304627F08FFF4FF45A +:103640008031304627F08CFF27F072FF27F075FF9E +:1036500027F078FF27F07BFF00A8FFF76BFF00A89B +:1036600028F059FB002804D001460FF240300CF03E +:1036700054FD214689B2012028F094FB0120BDE8C9 :10368000FE035DF814FB80B500F026F8C821002089 -:1036900028F078FB012002BD80B5C00710D51B22A1 -:1036A0000021084611F044F91B220121002011F0ED -:1036B0003FF91B2202210020BDE8084011F038B973 -:1036C0001B220021084611F033F91B2201210020A2 -:1036D000BDE8084011F02CB980B51B220021012063 -:1036E00011F026F91B220121084611F021F91B22B5 -:1036F00002210120BDE8084011F01AB92DE9F04F70 +:1036900028F088FB012002BD80B5C00710D51B2291 +:1036A0000021084611F054F91B220121002011F0DD +:1036B0004FF91B2202210020BDE8084011F048B953 +:1036C0001B220021084611F043F91B220121002092 +:1036D000BDE8084011F03CB980B51B220021012053 +:1036E00011F036F91B220121084611F031F91B2295 +:1036F00002210120BDE8084011F02AB92DE9F04F60 :10370000A1B000200146CDE90A011DA80A460B46DA -:103710000EC019A810210EF0F5F915A810210EF011 -:10372000F1F910A814210EF0EDF907A800210A46BE -:1037300006C005A806C00CA810210EF0E3F9002071 -:103740000490ADF80E008DF80C00044614F009FA50 +:103710000EC019A810210EF003FA15A810210EF002 +:10372000FFF910A814210EF0FBF907A800210A46A2 +:1037300006C005A806C00CA810210EF0F1F9002063 +:103740000490ADF80E008DF80C00044614F019FA40 :1037500005464FF00508A1467C4E3069D0F83C0480 -:10376000C11742464B461AF017F8A8FB00AB08FBFE +:10376000C11742464B461AF027F8A8FB00AB08FBEE :1037700001BB03A801900DF10E00009004AB0CAA50 -:1037800005A907A828F0CBF900283ED1D6E9020107 +:1037800005A907A828F0DBF900283ED1D6E90201F7 :103790006F4AA2FB0A8902FB0B9910EB080041EB70 :1037A0000901C6E902013278D20724D5002715E0C5 :1037B00005EB4702B2F9062000EE102AB8EEC00A67 :1037C000F2EE040A80EE200ADFED5F0A20EE200A06 :1037D0001DAA02EB870282ED000A7F1C032FE7DBA4 :1037E0006A690292CDE900010CAB1DAA05A907A8E0 -:1037F00027F01AFE08E000220292CDE900010CAB8E -:1038000005A907A827F010FE641C9DF80C000028ED +:1037F00027F02AFE08E000220292CDE900010CAB7E +:1038000005A907A827F020FE641C9DF80C000028DD :1038100002D0E4B2032CACD3E4B2022C03D30FF2F7 :1038200098100CF07AFC3078C0072BD50AA919A89B -:1038300027F05FFE00270EE019A850F827000EF0D1 -:103840001FF80022434B0EF053F80EF02FF915A984 +:1038300027F06FFE00270EE019A850F827000EF0C1 +:103840002DF80022434B0EF061F80EF03DF915A95A :1038500041F827007F1C042FEEDB102215A910A8C9 -:103860000EF0F7FB68698DF850003B48006C00F1E2 -:103870000C04627D10A9E368C06818180EF0E9FB1B +:103860000EF005FC68698DF850003B48006C00F1D3 +:103870000C04627D10A9E368C06818180EF0F7FB0D :103880000120A074307880072BD50AA919A827F049 -:1038900036FE00270EE019A850F827000DF0F0FFC3 -:1038A00000222C4B0EF024F80EF000F915A941F877 +:1038900046FE00270EE019A850F827000DF0FEFFA5 +:1038A00000222C4B0EF032F80EF00EF915A941F85B :1038B00027007F1C042FEEDB102215A910A80EF0A4 -:1038C000C8FB00208DF850002348C06B00F10C04A9 -:1038D000627D10A9E368C06818180EF0BAFB0120D9 -:1038E000A074012021B0BDE8F08F80B511F01EF862 +:1038C000D6FB00208DF850002348C06B00F10C049B +:1038D000627D10A9E368C06818180EF0C8FB0120CB +:1038E000A074012021B0BDE8F08F80B511F02EF852 :1038F000164908611949C0F8481400F248401849AF :103900004160184981600FF21501C1600FF25D013D -:103910000161012027F0F3FC012002BD0B48006982 +:103910000161012027F003FD012002BD0B48006971 :1039200090F83904002801D10020704705E080B5E7 :10393000002000F006F8012002BD0B4890F90000BD :1039400070470949087070470000804728FD002033 @@ -988,10 +988,10 @@ :103DB0001400000000000000000000000082F21B60 :103DC00010401E40B403FB00071F9B300E609C7820 :103DD00066805DEFC81006F03C64098024C611C4FB -:103DE000F0040D636465676869A821ECFC050006B2 -:103DF0000708090024F4BF03A403534E414D59ACF6 -:103E000090070205001002610000057D2254960013 -:103E10000600008C3CC80031FF00000000000000DC +:103DE000F0040C636465676869A8FD04AF032500EF +:103DF000A40B060708090024F400534E414D59B0A6 +:103E000090070205001002610000058122549A1DEE +:103E10002C310003C7D50031FF0000000000000076 :103E20000000000000000000000000000000000092 :103E30000000000000000000000000000000000082 :103E40000000000000000000000000000000000072 @@ -4095,64 +4095,64 @@ :10FFE0000000000000000000000000000000000011 :10FFF0000000000000000000000000000000000001 :020000021000EC -:1000000004B50B46022200A9181802F022F801BD1F +:1000000004B50B46022200A9181802F030F801BD11 :1000100010B5DFF8FC444FF48E720021204602F048 -:100020001EF8204610BDDFF8E804704710B5FFF752 +:100020002CF8204610BDDFF8E804704710B5FFF744 :10003000EFFF044600221146084600F037FAC0469A -:10004000C04602F017F8204600F018F802F04DFA0A +:10004000C04602F025F8204600F018F802F05BFAEE :10005000204600F09BF9204600F014F8204600F0FE :1000600018F800F05CF900206072A072E072207352 :10007000012060730020E075012010BD0021C171D6 -:1000800001722BE010B5044602F04CF801206071BB -:1000900010BD10B5044602F0F5F80120A07110BDA6 -:1000A00038B50446012502F0A0F9012804D12846FC +:1000800001722BE010B5044602F05AF801206071AD +:1000900010BD10B5044602F003F90120A07110BD97 +:1000A00038B50446012502F0AEF9012804D12846EE :1000B000E0700020A0700AE0022804D10020E07067 :1000C0002846A07003E00020E070A0700546284696 -:1000D00032BD80B502F0CEFA012002BD10B5044653 -:1000E000E07902F0D1FB0121217010BD70B504460A +:1000D00032BD80B502F0DCFA012002BD10B5044645 +:1000E000E07902F0DFFB0121217010BD70B50446FC :1000F0000025E679E171FFF7F1FF002807D02046DF :10010000FFF7C0FF2046FFF7C4FF012503E0E671BB :100110002046FFF7E3FF284670BD0EB470B5C1B0AE -:10012000054600A84FF4807101F0ECFCFFF77BFF5F -:10013000044645AB2A464FF4807100A802F09EFFAA -:1001400000A802F0B9FF451C00A82818002100F8FB -:10015000011CDFF8C0633078401C307003F023F8D6 +:10012000054600A84FF4807101F0FAFCFFF77BFF51 +:10013000044645AB2A464FF4807100A802F0AEFF9A +:1001400000A802F0C9FF451C00A82818002100F8EB +:10015000011CDFF8C0633078401C307003F033F8C6 :100160007078401C7070207E2818FF2810DA207EDE :10017000002803D0207E00190A2101762A4600A912 -:10018000207E0019193001F064FF207E28182076A7 -:100190007078401E7070C0B2002801D102F0FDFFDF -:1001A00003F0A4F841B070BC5DF810FB2DE9F843F2 -:1001B00005460E4617464FF0020802F0F4FFD54CF4 +:10018000207E0019193001F072FF207E2818207699 +:100190007078401E7070C0B2002801D103F00DF8D5 +:1001A00003F0B4F841B070BC5DF810FB2DE9F843E2 +:1001B00005460E4617464FF0020803F004F8D54CEA :1001C0006078401C60709DF80000401E8DF80000B3 -:1001D00017F8019B00AB4A463946304602F07CFBDB +:1001D00017F8019B00AB4A463946304602F08AFBCD :1001E000002809D06078401E6070C0B2002801D19C -:1001F00002F0D3FF012015E05FFA88F84246294655 +:1001F00002F0E3FF012015E05FFA88F84246294645 :100200000FF22030FFF789FF4046A0F101080028D7 :10021000E0D16078401E6070C0B2002801D102F0C9 -:10022000BCFF0020BDE8F2832DE9F04704460D46EF +:10022000CCFF0020BDE8F2832DE9F04704460D46DF :1002300016461F460898DFF8E08288F8000002F0B2 -:10024000B2FFDFF8D09299F80100401C89F8010054 -:100250004FF0020A434632463946284602F0E6FB92 +:10024000C2FFDFF8D09299F80100401C89F8010044 +:100250004FF0020A434632463946284602F0F4FB84 :1002600000280BD099F80100401E89F80100C0B2A7 -:10027000002801D102F091FF012017E05FFA8AFA0D +:10027000002801D102F0A1FF012017E05FFA8AFAFD :10028000524621460FF2A820FFF747FF5046A0F143 :10029000010A0028DED199F80100401E89F801000A -:1002A000C0B2002801D102F078FF0020BDE8F0873D +:1002A000C0B2002801D102F088FF0020BDE8F0872D :1002B0002DE9F84305460E46174698464FF00209C9 -:1002C00002F071FF934C6078401C607042463946E2 -:1002D000304602F09DFC002809D06078401E607016 -:1002E000C0B2002801D102F058FF012015E05FFAEA +:1002C00002F081FF934C6078401C607042463946D2 +:1002D000304602F0ABFC002809D06078401E607008 +:1002E000C0B2002801D102F068FF012015E05FFADA :1002F00089F94A4629460FF24420FFF70EFF484687 :10030000A0F101090028E1D16078401E6070C0B200 -:10031000002801D102F041FF0020BDE8F28300F087 -:10032000E5BCF8B5044600273D467C4E0DE0394655 +:10031000002801D102F051FF0020BDE8F28300F077 +:10032000F7BCF8B5044600273D467C4E0DE0394643 :100330004F1EC9B200290AD1002804D12069012129 :10034000A9408843206100276D1C122D10DA56F851 :100350002500006E006880470128E8D1216901224C :10036000AA401143216156F8251001220A77E3E7DC :100370002069032805D02069022802D020690128BD -:1003800003D1206940F480502061F1BD02F02ABD04 -:1003900002F08DBD02F049BD81B00022ADF802200F +:1003800003D1206940F480502061F1BD02F038BDF6 +:1003900002F09EBD02F057BD81B00022ADF80220F0 :1003A000ADF80020C079042808D0062809D0082814 :1003B0000AD009280BD00A280CD00EE04FF4C860F0 :1003C0000DE04FF448600AE04FF4C85007E04FF4E6 @@ -4160,51 +4160,51 @@ :1003E00002200DE0BDF80020521CADF80020BDF841 :1003F00000208242F6DBBDF80220521CADF802203C :10040000BDF802208A4203D20022ADF80020EEE7B8 -:1004100001B07047417210B58CB002F0F3FF044692 +:1004100001B07047417210B58CB003F003F8044688 :10042000FFF701FE0021ADF82A1001910A218DF895 :10043000081000218DF809108DF80A10407A002864 :100440000DD0002C18D008468DF800000520019032 -:100450000B208DF8080000A804F01CFB0CE0002C19 +:100450000B208DF8080000A804F02CFB0CE0002C09 :100460000AD001208DF80000052001900B208DF8A6 -:10047000080000A804F00EFB0CB010BD02F07ABD1D -:1004800002F082BD01210846F8E701210846F7E79E -:1004900002210120F2E702210120F1E702F07EBDF6 +:10047000080000A804F01EFB0CB010BD02F08ABDFD +:1004800002F092BD01210846F8E701210846F7E78E +:1004900002210120F2E702210120F1E702F08EBDE6 :1004A00010B50446FFF7BFFD447510BD1C4B187016 :1004B00059709A70002098807047012822DB1849F3 :1004C0008A888018888000B2B0F57A7F1ADBA0F5A0 :1004D0007A7088808878401C887040B23C2811DB94 :1004E0003C3888704878401C487040B23C2809DB92 :1004F0003C3848700878401C087040B2182801DB6E -:100500000020087070470649062204F0C9BB0000AD -:10051000B06E002024380020F87B0020000000206E +:100500000020087070470649062204F0D9BB00009D +:10051000B46E002024380020F87B0020000000206A :10052000C07B002049574520256420256400000039 :1005300049524520256420256400000049524F455A -:10054000202564202564000000487047A470002026 +:10054000202564202564000000487047A870002022 :10055000506002604160086070470A68F8E74860D0 :100560000160704701684068F9E7F8B50600DFF8F8 -:10057000D05702D505F14800F2BD05F1480400202E +:10057000F45702D505F14800F2BD05F1480400200A :10058000296E00E0096805F16002914204D00C4632 :10059000A2689642F6D10120002831D1A86EC76E1C -:1005A000182004F0B9FB0446A660002F05D0B7421E +:1005A000182004F0C9FB0446A660002F05D0B7420E :1005B00003D2B6FBF7F0784300E03046E060002F4E :1005C00002D0B74200D23E46266100202075DFF8F7 -:1005D00074673078401C307002F0E5FD7078401C84 +:1005D00098673078401C307002F0F5FD7078401C50 :1005E000707005F160012046FFF7B7FF7078401E7C -:1005F0007070C0B2002801D102F0CFFD02F076FE8B +:1005F0007070C0B2002801D102F0DFFD02F086FE6B :100600002046F2BD38B5044694F9140000281BD1E9 -:10061000DFF830572878401C287002F0C4FD687855 -:10062000401C68702046FFF79DFF204604F08CFBBD -:100630006878401E6870C0B2002801D102F0ADFD9C -:10064000BDE8314002F052BE31BDF8B5044608465F +:10061000DFF854572878401C287002F0D4FD687821 +:10062000401C68702046FFF79DFF204604F09CFBAD +:100630006878401E6870C0B2002801D102F0BDFD8C +:10064000BDE8314002F062BE31BDF8B5044608464F :100650006FF00045FFF789FF064694F9050094F90D -:100660000410814214D1C01C800004F055FB0746E1 +:100660000410814214D1C01C800004F065FB0746D1 :1006700094F90500012807DB82002168384601F063 -:10068000E8FC206804F060FB27606079C01C6071A2 +:10068000F6FC206804F070FB27606079C01C607184 :1006900094F90400411C2171216841F82060DFF8C1 -:1006A000A806864202D0307D401C3075002008E04C +:1006A000CC06864202D0307D401C3075002008E028 :1006B000216851F820108A68954201DB1546A16037 :1006C000401C94F904108842F2DBF1BDF8B50446F1 -:1006D0006FF00046DFF8682602F1480502F1480095 +:1006D0006FF00046DFF88C2602F1480502F1480071 :1006E0004FF0FF33002704E0664501DB66467546A0 :1006F0007F1C94F904C067450DDAD4F800C05CF89B :1007000027E0DEF808C0002BEED58C45ECD1704612 @@ -4216,10235 +4216,10240 @@ :1007600002D56FF0004300E01B698468002C02D5BD :100770006FF0004000E00069984200DD1846D26842 :100780005143884201DB012000E0002010BC70478B -:1007900038B5DFF8AC158A6EB2F85C30012490F9F8 +:1007900038B5DFF8D0158A6EB2F85C30012490F9D4 :1007A0000850AC402343A2F85C3001F2BC71FFF763 -:1007B000D4FE012032BD10B5DFF88415896EB1F882 +:1007B000D4FE012032BD10B5DFF8A815896EB1F85E :1007C0005C20012390F90840A3409A43A1F85C20E3 :1007D000FFF7C8FE012010BD01207047F8B50446A0 :1007E00015461E4604F12400FFF72FFF06EB4600D6 :1007F00004EB8007294607F13000FFF726FF97F941 -:10080000340000903346627A94F908100FF2445095 +:10080000340000903346627A94F908100FF2605079 :10081000FFF783FCF1BDF8B5044615461E4604F10A :100820002400FFF753FF06EB460004EB8007294640 :1008300007F13000FFF74AFF97F934000090334684 -:10084000627A94F908100FF21C50FFF766FCF1BDB4 -:10085000C06A8168012904DB0069012801DA0220ED -:1008600070470020704701EB410200EB8201896B69 -:100870008A68012A09DB0969012906DA006D002866 -:1008800001D50020704702207047002070470029E2 -:1008900000D5DDE7E7E7012900DA012113460A4622 -:1008A0009CE7012900DA012113460A46B3E7B1F5B6 -:1008B0007A7F01DC4FF47A7113460A464FF4FA71DD -:1008C0008CE7B1F57A7F01DC4FF47A7113460A4662 -:1008D0004FF4FA719FE710B50446002922D5E06A6B -:1008E000816801291CDB0069012819DA02212046F0 -:1008F000FFF730FF002813D194F954004FF0FF3177 -:10090000884204D1002084F85400012010BD002842 -:1009100006D101206077084684F85400022010BDFB -:10092000002010BDBDE810409DE7DFF820240265DF -:100930004FF0FF3280F854202AE7C92900DAC82195 -:1009400013460A46422149E7C92900DAC82113465D -:100950000A4642215FE710B50446002926D5E06A21 -:100960008168012920DB006901281DDA0321204666 -:10097000FFF7F0FE002817D194F954004FF0FF3133 -:10098000884204D1002084F85400012010BD0028C2 -:1009900003D1012084F8540010BD012804D1084679 -:1009A00084F85400022010BD002010BDBDE81040A6 -:1009B00059E76FF0C70202654FF0FF3280F854200C -:1009C000E6E6DFF88C230265E2E613464FF0FF32DD -:1009D000114603E713464FF0FF3211461BE780B57F -:1009E000FFF7D6FEFFF71FFB00210175012002BDB6 -:1009F00080B5FFF7E0FEFFF716FB0021017501202F -:100A000002BDCF48C06A417A481E8041C00F70477E -:100A100080B5CB480068417A002902D1006E406859 -:100A20008047012002BD80B5FFF7C5FEC4480068BD -:100A3000417A002902D1006E80688047012002BD02 -:100A4000000000002DE9F0410C46BD4D55F8206036 -:100A5000307206F154070FF21C313961112800F28F -:100A60000B81DFE810F0120022002E0046003A0051 -:100A70005200610070009D007F008E00AC00BB0042 -:100A8000C800D500E200F000FD0006F108000621D4 -:100A900041760A21817605F2C471416040F2DC5151 -:100AA00081600FF294303861E6E006F1080006211B -:100AB00041760A21817605F6A05141600A218160C4 -:100AC000DAE006F108000C2141761021817605F666 -:100AD000B851416010218160CEE006F10800072185 -:100AE00041760B21817605F6AC5141600B21816086 -:100AF000C2E006F10800062141760A21817605F65A -:100B0000C85141600A218160B6E006F10800062163 -:100B100041760A21817605F6D45141600A2181602F -:100B20000FF288203861A7E006F1080026214176FF -:100B30002A21817605F6E05141602A2181600FF279 -:100B4000DC20386198E006F1080003214176072196 -:100B5000817605F628614160072181600FF28420CB -:100B6000386189E006F108000C2141761021817678 -:100B700005F618614160102181600FF24C20386148 -:100B80007AE006F10800022141760621817605F619 -:100B900030614160062181600FF2642038616BE0B2 -:100BA00006F10800052141760921817605F60C61E0 -:100BB0004160092181600FF2D81038615CE006F1D4 -:100BC0000800062141760A21817605F638614160E8 -:100BD0000A2181600FF27C2038614DE006F10800A7 -:100BE000012141760521817605F64461416040F29C -:100BF0008661816040E006F108000121417605210F -:100C0000817605F5A051CC3141600521816033E04A -:100C100006F108000C2141761021817605F5A051DE -:100C2000D43141601021816026E006F108001121D5 -:100C300041761521817605F5A051E431416041F6F8 -:100C40006631816018E006F1080011214176152116 -:100C5000817605F540514C314160152181600BE0F2 -:100C600006F10800042141760821817605F54051FE -:100C7000643141600821816006F10800002101759E -:100C8000417581750176C1600161417006F12808E6 -:100C90000846C8F828004FF0FF3086F854007880E6 -:100CA000062206F1580001F0DAF9002010E000EB0E -:100CB000400106EB8101002281F8342034314A7072 -:100CC00005F148024A6006EB800100228A64401C5C -:100CD0000228ECDB002086F8280088F8010005F1E6 -:100CE0004800C8F80400FC60BDE8F08110B5144C61 -:100CF000FFF72AFCA066002006E0682111FB0041F6 -:100D00006C3144F82010401C1228F6DB4FF0FF3005 -:100D1000206560650020A06505F019FA05F0FDFF6B -:100D200007F072FAF1F7ADF907F092FFF1F76FFCF7 -:100D3000F1F742FF08F0C6F8BDE8104008F089BBA3 -:100D4000000000202438002048000020A8FDFFFFFC -:100D5000D4FEFFFF41442025642025642025642023 -:100D600025640000524D2025642025642025642040 -:100D700025640000D907010891070108D907010877 -:100D8000B707010897080108A30801088F080108A0 -:100D9000D90701082B090108D9070108B70701087D -:100DA000AF080108C3080108D7080108D9070108DE -:100DB000B3090108D9070108B70701083B09010871 -:100DC0004909010857090108D9070108C3090108A1 -:100DD000D9070108B707010897080108A308010807 -:100DE0008F080108D9070108DF090108D9070108A0 -:100DF000F1090108CB090108D50901088F0801088C -:100E0000D907010891070108D9070108B7070108A8 -:100E100097080108A30801088F080108D9070108ED -:100E200091070108D9070108B707010897080108C9 -:100E3000A30801088F080108030A010891070108A7 -:100E4000030A0108B707010897080108A308010869 -:100E50008F080108110A010891070108D907010844 -:100E6000270A0108CB090108D50901088F080108E4 -:100E700030B581B004460D4602F095F9686920430B -:100E80006861297C01F0F801082905D1A9690142AE -:100E90001CBF284602F046FA0448407820B901B049 -:100EA000BDE8304002F079B901B030BD24380020EF -:100EB0000A18414004D4504002D54FF0004070471A -:100EC00010467047421A414004D5504002D54FF0B9 -:100ED00000407047104670470021002804D12020B0 -:100EE0007047091DC9B2000110F0704FF9D00028F9 -:100EF00003D4491CC9B24000F9E7084670472DE900 -:100F0000F84304468846B8F1000F4CD0002C01D4B9 -:100F1000A14601E0C4F10009B8F1000F01D4454633 -:100F200001E0C8F1000500261127280D00050ED0AC -:100F3000680C401CB9FBF0F64A46A5FB0601400CC4 -:100F400040EAC130101A814601E02D093F1F15F01B -:100F50000F0F01D1042FF8DAB9F1000F1BD0002FC9 -:100F600019D44846FFF7B8FF874200DC384609FA33 -:100F700000F93F1AB9FBF5F000FA07F18E194FF0AE -:100F8000FF31F940C94308420DD105FB10904FEAEB -:100F900040097F1EE0E7701C400898EA040106D56E -:100FA00010F1004F02D14FF0004000E04042BDE898 -:100FB000F28330B581FB0045204629462F2208F0F8 -:100FC000E5FA002D0FDC00DB0DD2C0430DD1641E0D -:100FD00065F1000520462946000C40EA0140C4F3B3 -:100FE000C031081830BD0028F4D04FF0004030BDAB -:100FF00010B50446FFF75CFF10F1004F06D1012C3D -:1010000002DB6FF0004010BD4FF0004010BD70B427 -:101010000246D20F00D040420021030D1B0502D032 -:101020004FF0804303E04FF4802300E09B08984298 -:10103000FCD30C4604E0000419464FF48043641CC2 -:10104000022C08D3814200D2491C002A1AD04942FE -:1010500018E029469B08002B07D04D085E18B042C7 -:10106000F7D3401AC01A5919F4E7002CE7D10B0442 -:10107000B0F5803FDFD3401A0004A0F5004003F52F -:101080000041DAE7084670BC7047002205E040F8EE -:10109000221000EB82031961521C036A9A42F6DBAC -:1010A00070472DE9F84F0C4615461E46376A4FF03B -:1010B0000008DDF8289099FBF7F107FB119A46F834 -:1010C0002A00C34612E0A9EB0B00381890FBF7F199 -:1010D00007FB110056F8201054F82B00FFF769FFAA -:1010E0004146FFF785FF80460BF1010BBB45EADB6C -:1010F000012413E0A9EB0400381890FBF7F107FB7B -:10110000110006EB8000016955F824004042FFF70A -:1011100050FF4146FFF76CFF8046641CBC42E9DB90 -:1011200006EB8A00C0F810804046BDE8F28F70B52B -:1011300004460D012068401C2060E1682846FFF746 -:10114000C1FE06462068022808DB01043046FFF78E -:10115000D6FE0146E068FFF7ABFE00E02846E060FF -:10116000206802280CDBE1682846FFF7ABFE014649 -:101170003046FFF71EFF0146A068FFF799FE00E02A -:101180000020A0602068022805DB401E0104A06842 -:10119000FFF7B5FE00E000206061FFF738FF206137 -:1011A0000011206170BD002101604FF48051416049 -:1011B00000218160C16001614161704770B50446E2 -:1011C0000020024620E0DFF8901641F82020DFF8EA -:1011D0008C1641F82020DFF8881641F82020DFF82F -:1011E000841641F82020DFF8801641F82020DFF82F -:1011F0007C1641F82020DFF8781641F82020DFF82F -:10120000741641F82020401C1828DCDB10460EE044 -:10121000DFF8641641F8202001EB80018A600A6142 -:101220008A610A628A620A638A630A64401C02282D -:10123000EEDBDFF8485610462864064609E0002138 -:1012400006EBC60005EB800000F59C70FFF71DFF64 -:10125000761C032EF3DB002609E0002106EBC60016 -:1012600005EB800000F5DA70FFF70FFF761C042E07 -:10127000F3DB4FF48030A86541F69910E865002053 -:10128000A8642846FFF78FFF0020E864286568639C -:101290004FF0FF30E86228630020A863E863E86647 -:1012A000A86668666864A86D2866FF202867AC6732 -:1012B00001206865032068670020A86270BD2DE9E1 -:1012C000FF4F8FB000241C981C90DFF8B05564E0ED -:1012D000012028650020E863686B052801DB0020F9 -:1012E000E8644FF0FF30E862286300206863E86A32 -:1012F00010F1010F49D0AF6F002F43D0D5F83CE07B -:10130000BEF1C80F3EDAEF6C2E2F02DA2F6D002FE0 -:1013100038D1704490FBF6F706FB1708D5F84090DB -:10132000DFF85475DFF830A55AF828A047F829A04F -:1013300007EB8907DFF824A55AF828A0C7F808A00A -:10134000DFF81CA55AF828A0C7F810A0DFF814A5EC -:101350005AF828A0C7F818A051F82810396252F896 -:101360002810B96253F828103963DFF8081551F8CE -:101370002810B963C7F840E009F1010129640EF1B2 -:101380000101E963686B401C68630CF1010090FB8C -:10139000F6F106FB1100A863641C1C98844280F2DD -:1013A0002C820F9850F8240080010F9941F82400F6 -:1013B000109850F824008001109941F824001198E9 -:1013C00050F824008001119941F82400129850F837 -:1013D00024008201129840F82420686D002841D032 -:1013E000686F411E69670128D6DA0F9850F82410FB -:1013F00047F6015081420EDB109B53F824308342A4 -:1014000009DB119B53F82430834204DB824202DB68 -:101410006420E867C0E7E86F421EEA670128BBDA8C -:10142000A961109850F82400E861119850F8240040 -:101430002862129850F82400686205F19000FFF7C6 -:1014400024FEE96905F1B400FFF71FFE296A05F1E2 -:10145000D800FFF71AFE696A05F1FC00FFF715FED8 -:101460000020686505F5D27605F5D67AA86B009060 -:1014700005F5DA73524631460F9850F82400FFF70D -:1014800010FEA969FFF71EFD8146A86B009005F5C7 -:10149000EC7352463146109850F82400FFF701FED5 -:1014A000E969FFF70FFD8046A86B009005F5FE7314 -:1014B00052463146119850F82400FFF7F2FD296A90 -:1014C000FFF700FD0746A86B009005F5087352462C -:1014D0003146129850F82400FFF7E3FD696AFFF7E0 -:1014E000F1FC019005F5907605F5967AA86B0090D1 -:1014F00005F59C7352463146A8EB0900FFF7D1FD74 -:101500006866A86B009005F5AE73524631460198A7 -:10151000381AFFF7C6FDA86607EB08004844019992 -:101520000818A96B009105F5C07352463146461064 -:1015300000EB96708010FFF7B4FDE8661826A86AE5 -:10154000002878D105F1800A05F1880BA86B00907E -:1015500005F190035A4651460F9850F82400FFF7C2 -:10156000A0FDA861A86B009005F1B4035A4651464E -:10157000109850F82400FFF794FDE861A86B0090E4 -:1015800005F1D8035A465146119850F82400FFF748 -:1015900088FD2862A86B009005F1FC035A4651466D -:1015A000129850F82400FFF77CFD6862A86C411C7B -:1015B000A964502829DA47F601500F9A52F82420DE -:1015C000824210DB109A52F8242082420BDB119ADF -:1015D00052F82420824206DB129A52F824208242DA -:1015E00001DB481EA864A86C292803DBE96E2846A5 -:1015F000FFF79DFDA86B401C90FBF6F106FB110068 -:10160000A8634FF480302866C6E60120A8624FF434 -:1016100080212869FFF7CDFC286640F2DD51884221 -:1016200003DB40F2DC50286605E0B0F5E17F02DA2A -:101630004FF4E1702866E86E296E81420BDAEA6A9F -:1016400012F1010F07D1A86B173090FBF6F106FBE2 -:101650001100E86210E088420EDAE86A10F1010F2A -:101660000AD0286B10F1010F06D1A86B401C90FB2B -:10167000F6F106FB11002863E86A10F1010F36D17C -:10168000E86C401CE86405F1800A05F1880BA86B42 -:10169000009005F190035A4651460F9850F82400E7 -:1016A000FFF7FFFCA861A86B009005F1B4035A4650 -:1016B0005146109850F82400FFF7F3FCE861A86B3E -:1016C000009005F1D8035A465146119850F824006D -:1016D000FFF7E7FC2862A86B009005F1FC035A466F -:1016E0005146129850F82400FFF7DBFC6862D5F8E9 -:1016F00038C09CFBF6F006FB10C057496A6E41F8F3 -:1017000020205649AA6E41F820205549EA6E41F83A -:10171000202054492A6E41F82020534941F8209056 -:10172000524A42F82080524B43F82070514FDDF866 -:1017300004E047F820E0E86A10F1010F3FF4D7AD6C -:101740002F6B17F1010F3FF4D2ADBC457FF4CFAD45 -:10175000AF6F002F3FF4BEADD5F83CE0BEF1C80F2F -:10176000BFF6B8ADD5F84C80B8F12E0F03DA2F6D67 -:10177000002F7FF4AFAD00EB0E0999FBF6F006FBEE -:10178000109AD5F840B03C4F334850F82A0047F83B -:101790002B00CDF8009007EB8B07304850F82A005B -:1017A000B860CDF800902E4850F82A003861CDF886 -:1017B00000902C4850F82A00B861CDF8009051F8FC -:1017C0002A003862CDF8009052F82A00B862CDF8AD -:1017D000009053F82A003863264850F82A00B8636E -:1017E000CEF1000038640BF101002864B8F12E0F2F -:1017F000FFF66EAD002028656CE5286C012827DB1C -:10180000AC6F210022D01C4F0E90786C0D90F86BBD -:101810000C90786B0B90F86A0A90786A0990F869D6 -:10182000089078690790F868069078680590386C99 -:101830000490B86B0390386B0290B86A0190386AD4 -:101840000090BB693A69B9683868A04700202864ED -:10185000002013B0BDE8F08FFC7400205C75002000 -:10186000BC7500201C7600207C760020DC760020F1 -:101870003C7700209C770020FC790020703300200A -:101880005FF0FF0C1CEAD05114BF614506E0C110A7 -:10189000400721F0E04101F16051704779B900F053 -:1018A000004100020AD0B0FA80FC00FA0CF001F10D -:1018B0006051A1EB0C5101EBD02140057047410272 -:1018C0000CBF40F4E0016FF000010020704750F8B9 -:1018D000041B61B150F8042BD30744BFA9F10103E5 -:1018E0009A18002342F8043B091FFAD1EFE770472A -:1018F000B0B581EA030C0CF0004C40F2FF7515EA1C -:1019000011541DBF15EA1357AC42AF4239E0E41938 -:1019100023EA455343F48013C90241F0004141EAF0 -:10192000505EC7021100A7FB020200284FF0000022 -:10193000EEFB01204FF00001E3FB072118BF42F04E -:101940000102401800214941E3FB0E01A4F5806427 -:101950000F0302D252004041494154F101046CDDB1 -:10196000470872F1004250F1000051EB0451A1F51B -:1019700080115CBF41EA0C01B0BD4CEA055100206A -:10198000B0BD05EA1357AC4214BFAF4241E050EA84 -:10199000410E1CBF52EA430E02E061460020B0BD7A -:1019A00024423C441BD15FEA070EF6D0090302BF74 -:1019B00001460020AEF1140EB1FA81F7AEEB070438 -:1019C00001FA07FE0C37C7F1200100FA07F7C840FB -:1019D0004EEA000E23EA455343F48013A2E733F0A6 -:1019E0000043B3FA83F704BFB2FA82FE77440B3F99 -:1019F000E41BB7F1200E2FBF02FA0EF3BB40C7F174 -:101A0000200E22FA0EFE38BF43EA0E03BA40641CD1 -:101A100082E750EA410E14BF52EA430E6FF0000114 -:101A20004FF4001717EB430F8ABF194617EB410F0E -:101A3000B5E74CEA05510020B0BDD4F10104B4F182 -:101A400020070FDAC4F12007520828BF42F0010234 -:101A500010FA07F501FA07F7E1BF2A43E0403843DF -:101A6000E1400FE0352C98DCC7F1200452EA400237 -:101A700020FA07F218BF42F0010231FA07F0A14044 -:101A80000A43002172F1004250F1000051EB0C01B9 -:101A9000B0BD8268521C8260426832B10268531C39 -:101AA000036011704168491E41607047F446400D63 -:101AB00040EAC120490006D200F014F8004248BFB5 -:101AC0006FF00040604700F00DF84FF00041884291 -:101AD0008CBF084640426047400D40EAC1204900A3 -:101AE00080F00D8040F00040490DA1F58061491C57 -:101AF00005D4D1F11F0154BFC840C01770474FF043 -:101B000000007047002207F053BD0268531C0360B9 -:101B100011707047010040F10980F446404200F026 -:101B200005F851F000416047010000BF09D0B0FA4C -:101B300080F18840C91CC1F58461090501EBD02101 -:101B40004005704770B44FF0004591EA030C44BF64 -:101B50006B4000F075B800BF841A71EB030603D226 -:101B6000001BB141121973414FF4001C1CEB410FD3 -:101B700034BF7CEB430443E00C0DA4EB1356352E2D -:101B800050DC45EAC323DB0A45EAC121C912B6F19C -:101B900020050DDD63FA05F6EB4086EA03051242E7 -:101BA00018BF45F00105C01851F100010CD213E037 -:101BB00062FA06F5F2405540F3415A40B340F34013 -:101BC0005A408018594107D349085FEA30005FEA5C -:101BD000350528BF45F0010501F58011420875F172 -:101BE000004250F1000041EB045170BC4FF4001C66 -:101BF0001CEB410F38BF70470020090D09057047E5 -:101C00001CEB410F10D252EA43060BD0BCEB410F44 -:101C100005D80C0DAB43661E342EB5DD02E0AB4398 -:101C20008018594170BC704770BC704770B44FF059 -:101C3000004591EA030F44BF6B40FFF78DBF00BF23 -:101C4000841A71EB030604D26E40001BB1411219D5 -:101C500073414FF4001C1CEB410F34BF7CEB430677 -:101C600084E00C0DA4EB1356362E7DDC012E43DCF4 -:101C700045EAC32343EA525312BFD20292025B08E1 -:101C8000240545EAC12141EA5051D2EBC0209941D7 -:101C900025D407D1B0FA80F610FA06F164D00020FE -:101CA000203608E0B1FA81F6B140C6F1200220FAF0 -:101CB00002F21143B0404FEAF474B4EB465434F0EE -:101CC00001064FEA74040AD8D6F50016760D04F022 -:101CD0000044F04061FA06F25040F1404840C00A2A -:101CE00040EA415021F0004128BF5FEA500550F121 -:101CF000000044EBD12137E045EAC323DB0A45EA83 -:101D0000C121C90AB6F120050EDD42EA0242120CD9 -:101D1000C5F1200603FA06F6EB4042EA06056D42DD -:101D2000984161F100010DE062FA06F5F24055407C -:101D300063FA06FC82EA0C02F3405A406D4290417D -:101D400061EB030111F4801F05D1641E620502D00E -:101D50006D004041494121F48011430875F1004371 -:101D600050F1000041EB045170BC70471CEB410F77 -:101D700015D223F0004352EA43060BD04FEA4C0C35 -:101D8000BCEB410F04D80C0D661E342EB7DDEBE71B -:101D9000801A994150EA410608BF0021E4E708BFD4 -:101DA0001CEB430F28BF6FF00001DDE7F0B540F2F8 -:101DB000FF7581EA030C0CF0004C15EA11541DBFAD -:101DC00015EA1357AC42AF42E5E0BC41C1F3130141 -:101DD000C3F31303801A994143F4801304D2641EA1 -:101DE0004000494180185941C90241EA5051B1FBB4 -:101DF000F3F603FB1611A2FB0675D7EBC020A94131 -:101E000002D2761E80185941C90241EA5051B1FBF5 -:101E1000F3FE03FB1E11A2FB0E75D7EBC020A941F8 -:101E200003D2AEF1010E80185941890241EA905166 -:101E3000760546EA8E2EB1FBF3F603FB1611A2FBE4 -:101E40000675D7EB8020A94102D2761E8018594131 -:101E5000C90241EA50514EEA060EB1FBF3F603FB0C -:101E60001611A2FB0675D7EBC020A94102D2761E3F -:101E700080185941C90241EA5051B1FBF3F703FB05 -:101E80001711A2FB0735D3EBC020A94167F100076A -:101E90000CBF004247F0010766F3D5274FEA1E3119 -:101EA000B80814F5806412DDBD0775F1004250EBEF -:101EB0000E5051EB045111F5801F5CBF41EA0C013B -:101EC000F0BD4CF07F6141F0E0410020F0BDBD0766 -:101ED0006D0840EA0E5041F48011D4F10104B4F1D0 -:101EE00020060ADAC4F120060200E04001FA06F3F7 -:101EF000E1401843B24015430EE0342C13DCC6F128 -:101F0000200445EA40056D0820FA06F2154321FA3F -:101F100006F0A1400D43002175F1004250F1000090 -:101F200051EB0C01F0BD00205FEA0C01F0BDCFB910 -:101F300092185B41B3FA83F704BFB2FA82F6BF1975 -:101F40000B3FB7F120062FBF02FA06F3BB40C7F1E3 -:101F5000200622FA06F638BF3343BA401CB1E41912 -:101F6000641E33E77F4231F00041B1FA81F404BFCF -:101F7000B0FA80F6A4190B3CB4F120062FBF00FA8A -:101F800006F1A140C4F1200620FA06F638BF31431D -:101F9000A0403C1B1AE7AC421ABF05EA1357AF42F8 -:101FA00012E050EA41061CBF52EA4306BFE750EA7E -:101FB0004107304661461CBF41EA0551F0BD52EA77 -:101FC000430C08BFC143F0BD00204FF4001616EBD0 -:101FD000410F98BF16EB430F08BF16EB410F24BF0C -:101FE000C14305E016EB430F0CBF61464CEA0551B7 -:101FF000F0BD00004FF4001C1CEB410F94BF1CEB24 -:10200000430F09E041EA030C50EA4C0C52EA0C0C75 -:1020100003D28B4208BF8242704714BF994290425C -:10202000704700004FF4001C1CEB410F94BF1CEBE9 -:10203000430F09E041EA030C50EA4C0C52EA0C0C45 -:1020400003D2994208BF9042704714BF8B4282422C -:10205000704710B5044602F023FE204610BD10B5AF -:10206000044610460A460146204607F0BBFA2046C1 -:1020700010BD00007CB50121032007F048FBDFF80C -:102080008C4B204607F0BAFBDFF8546D304607F062 -:10209000B5FB01208DF8040000208DF8050001201B -:1020A0008DF8060000208DF80700012130460183DD -:1020B000C0460120009000A9304607F0FBFB02213A -:1020C00030460183C0460220009000A9304607F048 -:1020D000F1FB01208DF8040000208DF80500ADF81B -:1020E00006004FF48055009500A9304607F0E2FB4A -:1020F000294630464183C04601208DF80400002067 -:102100008DF8050001208DF8060000208DF80700ED -:10211000009500A9204607F0CDFB294620464183C3 -:10212000C04673BD70B586B001214FF4001007F0B2 -:10213000F9FA01214FF4001007F0F4FA012102200E -:1021400007F0E5FA0121022007F0E1FA01214FF43E -:10215000804007F0F2FA01214FF4001007F003FB72 -:1021600001214FF4001007F0FEFA00214FF4001097 -:1021700007F0F9FA00214FF4001007F0F4FADFF845 -:10218000604C04220621204607F0E2FB04220721CE -:10219000204607F0DDFB02208DF8040001208DF8B9 -:1021A00005008DF8060000208DF807004020009003 -:1021B00000A9204607F07EFB8020009000A9204661 -:1021C00007F078FB4020009000A9204607F072FB42 -:1021D0008020009000A9204607F06CFB0020ADF89D -:1021E0000C004BF6FF70ADF80E004FF48060ADF8B8 -:1021F00012004FF48040ADF814000A20ADF8100032 -:10220000DFF83C6C0296DFF83C5C02A9284607F038 -:10221000E2FB0121284607F041FC0A20ADF810003E -:10222000029602A9284607F0D6FB0121284607F0AE -:1022300035FC206820F440502060206820F44040A5 -:102240002060206840F400502060206840F4004086 -:10225000206000220621204607F07AFB0022072199 -:10226000204607F075FB04220621204607F070FB8C -:1022700004220721204607F06BFBDFF8600C0560A5 -:1022800006B070BD2DE9F04192B001214FF48050AD -:1022900007F053FA0121084607F039FA01214FF4FB -:1022A000800007F034FADFF8644905221146204621 -:1022B00007F04EFB05220721204607F049FB0522C7 -:1022C0000621204607F044FB05220421204607F0A2 -:1022D0003FFB02208DF8040001208DF8050000204E -:1022E000ADF806002020009000A9204607F0E2FA91 -:1022F0008020009000A9204607F0DCFA40200090E2 -:1023000000A9204607F0D6FA1020009000A9204628 -:1023100007F0D0FADFF8C84B204607F021FCDFF8C1 -:10232000C45B00202880686001202881002068812B -:10233000E8600720288200206880DFF8AC6B304618 -:1023400007F0F0FCDFF8A47B384607F0EBFC4FF415 -:102350008060069000210D9103210E9100210F91C4 -:102360000A910890DFF8880B0390084610900990B6 -:1023700007904FF400300C9008460B904FF0C06867 -:10238000CDF80880402005900846049002A9304608 -:1023900007F04CFD00200B90CDF80880059005F16A -:1023A0001400049002A9384607F040FD0020688020 -:1023B0002946204607F003FC01220221204607F0AF -:1023C0009FFC01221146204607F09AFC012120467D -:1023D00007F07EFC0021304607F04FFD0021384613 -:1023E00007F04BFD12B0BDE8F08110B588B00121B7 -:1023F0004FF0805007F096F901214FF4802007F04C -:1024000086F9012007F0A2FD0F2007F04FFF0446D8 -:10241000012007F079F9002007F076F9002C01D0AF -:1024200008F0DEFA012007F011F9412007F0B1F9B8 -:102430000028FAD04FF4807007F050F9012007F01F -:1024400060F907F0D6FD3F20069040F2FF1007909C -:102450000020059005A807F083FD0020029002A946 -:1024600007F0E8FD00208DF8070001208DF804003A -:102470008DF805008DF8060001A9002007F053FE35 -:102480004FF4800008F01EFB4FF480000390002002 -:102490008DF8100008208DF8110001208DF8120031 -:1024A00003A808F0CDFA03208DF800000D208DF868 -:1024B000010000208DF8020001208DF8030000A823 -:1024C00008F00DFB032007F0A2FE4FF4804007F058 -:1024D00058FF4FF4800008F0F5FA01214FF48040D6 -:1024E00007F015FF012008B010BD30B585B00121FF -:1024F000084607F00CF901214FF4804007F01DF960 -:1025000000208DF810008DF8130001200390DFF8F3 -:10251000E45903A9284607F0CDF94FF40064039469 -:1025200003A9284607F0C6F90420039003A928460A -:1025300007F0C0F90021084608F00AFB0B21002033 -:1025400008F006FB0221002008F002FB00208DF8B5 -:10255000080001208DF80A0001900C208DF8090078 -:1025600001A808F06DFA01940C208DF8090001A86B -:1025700008F066FA204608F0A5FA042001900C2025 -:102580008DF8090001A808F05BFA042008F09AFA17 -:1025900028208DF800000F208DF8010000208DF814 -:1025A000020001208DF8030000A808F098FA05B099 -:1025B00030BD30B58DB0044601214FF4807007F076 -:1025C000BCF800A807F0B0F90A20009003208DF8AD -:1025D000040000208DF8070000A9DFF8300607F09E -:1025E00069F908F0C9FA02A808F00BFB4FF4803033 -:1025F000039002A808F0F7FA06A808F0EAFADFF854 -:10260000F85806A9284608F0C4FA072301222146F3 -:10261000284608F007FB0121284608F048FB012165 -:10262000284608F0F4FA0DB030BD38B5DFF8C848D8 -:10263000204608F037FB4FF47A750221204608F057 -:102640004DFB002803D12846451E0128F5DA204617 -:10265000BDE8324008F036BB80B50021DFF89808AD -:1026600008F0D5FA00214FF48070BDE8044007F06F -:1026700064B8000038B5040039D0012007F066FCCA -:10268000002007F0DEFD4FF40055042007F05AFE4D -:10269000012804D12846451E80B20028F5D100EE5D -:1026A000104AB8EE400ADFED8A0A80EE800AF0EEAA -:1026B000000A20EE200ADFED870A80EE800ABDEED8 -:1026C000C00A10EE100A401E80B207F0B0FD4FF4B1 -:1026D000804007F056FE4FF4800008F0F3F9012027 -:1026E00007F0AFFDDFF814080121416031BD012082 -:1026F00007F02CFC0020BDE8324007F0A2BD00002E -:1027000030B4014601200023DFF8F4271C46946012 -:10271000946814F00C0FFBD10C460B2C55D8DFE855 -:1027200004F02054545406192031383F464D946823 -:1027300044F080049460DFF8CC474FF4C065256016 -:10274000146824F080741460DFF8BC47DFF8BC57CD -:1027500025603BE00346DFF8B047DFF8B45725605B -:1027600034E094689460DFF89C474FF4C0652560BE -:10277000146824F080741460DFF88C47DFF89457F5 -:10278000256023E00223DFF88047DFF88C572560BF -:102790001CE00323DFF87047DFF88057256015E061 -:1027A0000423DFF86447DFF8785725600EE005233F -:1027B000DFF85447DFF86C57256007E00623DFF8A1 -:1027C0004847DFF86457256000E01846002B4AD0E0 -:1027D00003EBC3030FF664041B1994689460146838 -:1027E00024F080741460146824F0806414609C7871 -:1027F0001D8844EA8514DD786D086D1E44EA0544A1 -:102800001D7944EA05645460DC881D7A2D0745EA89 -:102810008414DFF818572C60146844F08074146036 -:102820001468A401FCD55B7943F4C063DFF8D44697 -:1028300023609368936093689360052904D191683D -:1028400041F09001916005E00A2903D1916841F4BB -:1028500080519160916841F002019160916801F0AE -:102860000C010829FAD1DFF8A0160968DFF8C026A4 -:10287000914207D2DFF8BC160A6822F4404242F4C3 -:1028800080420A6030BC70473AE710B5DFF84C462A -:102890000121206807F03BF9206807F06DF8BDE8DA -:1028A0001040FFF73FBC30B40022838A008BDFF872 -:1028B0002C46656843EA00400840000255EA1020B3 -:1028C00060600840884200D10122104630BC704749 -:1028D00000007A44000000472DE9F84F04460D46F9 -:1028E00016464FF420491F78DFF8F0854FF4003189 -:1028F000D8F8000007F016F9002808D04846A0F1E3 -:1029000001090028F2D1FFF7C0FF00208CE0D8F8C1 -:10291000000001884FF6FF52114001800121D8F8D4 -:10292000000007F0C7F84FF4805AD1460020C8F8DD -:102930000400D8F800B0DFF800165846FFF7B3FFE0 -:10294000002805D14846A0F101090028F1D163E033 -:10295000D14600222146584607F0C4F80020C8F8A6 -:102960000400D8F80040DFF8D4152046FFF79BFF9D -:10297000002805D14846A0F101090028F1D14BE01B -:102980003146C9B220460182C046D1460020C8F86F -:102990000400D8F80040DFF8A8152046FFF783FFB1 -:1029A000002805D14846A0F101090028F1D133E003 -:1029B000012F15D1297820460182C046D14600203A -:1029C000C8F80400DFF87C15D8F80000FFF76BFFAB -:1029D000002823D14846A0F101090028F2D11BE0CC -:1029E0003846471EC0B2002818D015F8011BD8F889 -:1029F00000000182C046D1460020C8F80400DFF87C -:102A00004415D8F80000FFF74EFF0028E8D14846EB -:102A1000A0F101090028F2D1002005E00121D8F839 -:102A2000000007F053F80120BDE8F28F2DE9F54FC3 -:102A300081B00D461E464FF420483778DFF89C449D -:102A40004FF40031206807F06DF8002808D04046A8 -:102A5000A0F101080028F3D1FFF717FF0020D3E011 -:102A6000206801884FF6FF52114001800121206843 -:102A700007F020F84FF48059C84600206060DFF866 -:102A8000B8A4D4F800B051465846FFF70CFF002810 -:102A900005D14046A0F101080028F2D191E00022C2 -:102AA0009DF80410584607F01DF8C84600206060E5 -:102AB000D4F800B0DFF884145846FFF7F4FE00287D -:102AC00005D14046A0F101080028F1D179E0BDF818 -:102AD0000810C9B258460182C046C846DFF86814DB -:102AE000206807F01FF8002805D14046A0F1010832 -:102AF0000028F3D165E00121206806F0DBFFC8461D -:102B000000206060D4F800B051465846FFF7CBFE75 -:102B1000002805D14046A0F101080028F2D150E07C -:102B200001229DF80410584606F0DCFF022FC8462B -:102B300039D2DFF81814206806F0F4FF002805D118 -:102B40004046A0F101080028F3D13AE000212068B6 -:102B500006F0D1FF2068018B012106F0B7FFC846BF -:102B6000DFF8EC13206806F0DDFF002805D14046B1 -:102B7000A0F101080028F3D123E02068008AC0B248 -:102B800028703078401E3070C8462068018889055A -:102B900005D54046A0F101080028F6D111E0012139 -:102BA00006F0A9FF2BE000206060DFF8A813206882 -:102BB000FFF779FE002806D14046A0F10108002861 -:102BC000F3D1002020E0012616E0012F0CD1012EC8 -:102BD0000AD100263146206806F08DFF2068818AE0 -:102BE000018B012106F072FF2068818A490603D516 -:102BF000008A05F8010B7F1EFFB2002FE5D10121ED -:102C0000206806F078FF0120BDE8FE8F000002403A -:102C10002DE9F04707460D4616464FF42048AF4CC5 -:102C20004FF40031206806F07DFF002808D04046B0 -:102C3000A0F101080028F3D1FFF727FE002089E06A -:102C4000206801884FF6FF52114001800121206861 -:102C500006F030FF4FF48059C84600206060D4F879 -:102C600000A0B5495046FFF71EFE002805D140469A -:102C7000A0F101080028F2D149E00122394650466E -:102C800006F030FF022EC84634D2B049206806F064 -:102C900049FF002805D14046A0F101080028F4D1E1 -:102CA00035E00021206806F026FF2068018B012115 -:102CB00006F00CFFC846A649206806F033FF00283E -:102CC00005D14046A0F101080028F4D11FE020689A -:102CD000008AC0B22870C84620680188890505D5D9 -:102CE0004046A0F101080028F6D110E0012106F0CD -:102CF00002FF2AE00020606096492068FFF7D3FDBC -:102D0000002806D14046A0F101080028F4D1002097 -:102D100020E0012716E0012E0CD1012F0AD1002757 -:102D20003946206806F0E7FE2068818A018B012180 -:102D300006F0CCFE2068818A490603D5008A05F892 -:102D4000010B761EF6B2002EE5D10121206806F0B7 -:102D5000D2FE0120BDE8F0877F48016808292FD105 -:102D600067490A6842F080720A604268B2F1806F77 -:102D700003D10A6842F080620A600A689201FCD5B9 -:102D80008A6842F002028A608A6802F00C02082A0D -:102D9000FAD14268B2F1806F02D10A681201FCD503 -:102DA00059490968624A914206D262490A6822F486 -:102DB000404242F480420A60002101604160704755 -:102DC0004168B1F1806F09D14D490A6842F08062D3 -:102DD0000A600A681201FCD50021416070470000BA -:102DE000000402405D48016841F080510160514893 -:102DF00001688908890041F0010101603F480FF234 -:102E000009010160704700003C48416800290AD070 -:102E10000021416052490A6842F004020A600FF240 -:102E20002901016010E030BF70474D48016821F072 -:102E30000401016030BF016841F004010160704786 -:102E4000801A06000054004010B52D48424982689F -:102E500002F00C020A60006800F080604860FDF734 -:102E6000E2F8807A012803D1012007F072F802E02D -:102E7000002007F06EF83A4C8021194806F04AFF0E -:102E8000002820680AD140F00400206030BF20688C -:102E900020F004002060BDE810405DE720F0040051 -:102EA000206030BF206840F00400206010BD13484F -:102EB000006800470F49012806D00CD3032807D02B -:102EC00004D3042806D006E0264904E0264902E09F -:102ED000264900E02649084670470000DC380020FB -:102EE00000300140947A002088640240106402405F -:102EF0000C3001400000024000200140B07B002067 -:102F000000380240003C0240A438002000127A0041 -:102F1000809698000024F40000366E010048E80115 -:102F2000005A620280F0FA0200BD010584380240B6 -:102F30000187930300700040010003008200070036 -:102F40008000070084000700040000100200001049 -:102F50004000001002000300B87B0020403802400F -:102F600010ED00E00004024000080240000C0240A6 -:102F70000010024010B50C46FFF79CFF214689B2B5 -:102F8000BDE8104006F0E0BC10B50C46FFF792FF1C -:102F9000214689B2BDE8104006F0D8BCE0B5002358 -:102FA0008DF8083001238DF80A30002A03D10C2255 -:102FB0008DF8092002E008228DF8092004283CD869 -:102FC000DFE800F0030D192222004FF400600190A9 -:102FD00028208DF800000F208DF801001CE0184615 -:102FE000019010208DF8090006208DF800000E20B9 -:102FF0008DF8010010E00220019007208DF80000FC -:103000000F208DF8010007E00420019008208DF8C2 -:1030100000000F208DF8010000208DF8020001292A -:1030200003D118468DF8030001E08DF8030001A8D4 -:1030300007F006FD00A807F052FD07BD20011004AF -:103040000F03020103F00010060F01020103C0008C -:1030500010080F01020103C00010060F0102010356 -:10306000F00010060F01020103C80010040F020255 -:103070000103A80010020F030201030008B584B089 -:103080000023029311B90093019302E00090481EBF -:10309000019004AB00A907487844183007F026FED9 -:1030A000009909B100220A70002858BF029805B0A3 -:1030B00000BD00BFDFE9FFFF00F10103810704D07D -:1030C00010F8011B89B18107FAD10268B2F1013110 -:1030D000914311F0803F04BF50F8042FF6E710F839 -:1030E000011B11B110F8011BFBE7C01A704700006B -:1030F00030488168002904BF08B008E0EFF3098276 -:10310000A2F12802036882E8F84F83685A6000F051 -:103110009CF8816859B14A6892E8F84F036002F15F -:10312000280282F3098813F47F4F36D07047224873 -:1031300022490968401A80F308884FF08071C16104 -:103140001F4981617FF0060E704701BC2046DFF801 -:1031500074E000BDFEE71C48006818490968401A81 -:10316000203820F0070080F308884FF0000181F339 -:10317000118862B600F00DF8FEE74FF0000181F310 -:1031800011881249124A0A604FF0800181F31188B8 -:1031900070470E490E4A0A6070474FF0000181F3F4 -:1031A0001188704700BF4FF0800181F3118870478C -:1031B00000BF000024380020E09B00207085030839 -:1031C000B57A0308553101080000000804ED00E05D -:1031D0000000001030B504460020A071206A81B0C4 -:1031E00000F57A606062E16908001CBF20468847EC -:1031F000FFF7D3FFE5681FE0FFF7D5FF206920B197 -:10320000687C2169497C88421DD3287C400710D501 -:10321000E868216A401A012806DA284600F082F898 -:10322000FFF7C1FF287C70B1E868616A411A48BFA6 -:103230006062FFF7B2FF2D68002DDDD101B0BDE85F -:103240003040FFF7B0BF01B030BD70B5044600207C -:10325000607001202070206938B303E02868206185 -:10326000FFF79BFFFFF79FFF2569002D1CBF2E7CFA -:10327000002E1CD070070ED5E868216A411A01297A -:1032800005DA284600F04EF8287C20B90DE0616A86 -:10329000411A48BF606206F0FB001028DED1A86822 -:1032A00080684068007C0028D8D1FFF77CFFA079B7 -:1032B00068B900206071206990B12069007C002805 -:1032C00020690BD0806880684068A0600CE02046D0 -:1032D000FFF780FFA0790028F9D1EAE7A06003E0BA -:1032E000A0602070FFF759FF204670BD10B5444C18 -:1032F0002078401E2070C0B298B9606888B1FFF78E -:1033000052FF606830B1012020702046FFF735FF82 -:10331000002020706078002804BFBDE81040FFF74F -:103320003CBF10BD10B5816849B1354A126AC26010 -:103330000A68496802B151600A6000218160017C1D -:1033400011F0030101741BD12D4C216991B9206149 -:10335000207838B9012020702046FFF70EFF0020AA -:10336000207001E001206071607848B9BDE810402C -:10337000FFF713BF4A7C437C9A42E8D38142E7D0EF -:1033800010BD30B51E4D04462978607C81B0491CC3 -:10339000297005F20C0100E011460A6812B1537C55 -:1033A0009842F9DB22600C60207C40B9FFF7FBFEFD -:1033B0002046FFF7B7FF687808B9FFF7EEFE01B0C7 -:1033C000BDE8304092E730B50D4C81B02578681CDF -:1033D00020702046FFF7D1FE2570607820B901B03B -:1033E000BDE83040FFF7D9BE01B030BD00B581B0B7 -:1033F00008F0E4FA02480121017001B000BD0000AC -:1034000024380020DFF8400D007870472DE9F041A6 -:103410008CB0FDF799F80446DFF8305D2E683FE088 -:1034200096F9080007283AD00B2838DA06F1080781 -:10343000B86C002802D5E16E0818B8644FF0FF316F -:103440003046FA6D926990478046B8F1010F04D179 -:1034500097F84C00B96D09698847B8F1020F0BD194 -:10346000797E38697A688018BA6D52699047002869 -:1034700002D0304608F0CAFB00213046FA6D92694E -:103480009047022801D10120B87501213046FA6D1C -:1034900092699047022802D1304608F069FC3668EC -:1034A000AE42BDD1206E00280BD00A208DF8080056 -:1034B00002208DF80000E06EADF82A0000A801F0AF -:1034C000E9FA01200CB0BDE8F08130B585B00446C2 -:1034D0000D46CA208DF800002888ADF801000220B2 -:1034E000ADF80300BDF80100001D01F015FCCDF89A -:1034F000090002220DF10301FEF7ABFD022229466D -:10350000DDF80900801CFEF7A4FD2A882146DDF8BD -:103510000900001DFEF79DFD0020288000A9DFF8AE -:10352000300C09F053F805B030BDC0F5806032288A -:1035300001DA012070470020704780B5FCF773FD69 -:10354000407B002804D008F0D1FADFF8081C08609E -:1035500001BD80B508F0CAFADFF8FC1B086001BDA8 -:1035600018B400F10C030422DFF8EC1B5C7DDB686F -:10357000C0681818201818BCFEF76BBD30B414884A -:10358000651C1580052565541488651C15806354D9 -:1035900013885C1C1480007A585430BC7047F8B50E -:1035A0000E4614461D4629884A1C2A8037220A5591 -:1035B00029884A1C2A80027A0A5500F108077A7E77 -:1035C0007868311828880019FEF743FD2888797E2D -:1035D00040182880787E796871184058DFF8741B8D -:1035E0000968401A0090042200A928880019FEF7F3 -:1035F00030FD2888001D288080B2FFF796FF002844 -:1036000003D029462046FFF760FFF1BD2DE9F041C8 -:1036100004460D4616461F46DDF8188008E043466E -:103620003A4629462046FFF7BAFF94F822002D18A3 -:10363000B542F4DBBDE8F081F8B5044615461E46F8 -:10364000069F00972269FFF7E1FF2069854206DAAD -:10365000009733462A4600212046FFF7D7FFF1BDE9 -:1036600000F110018A688B7CD2188A60006982425E -:1036700001D10020886000208873704770B582B047 -:1036800000F1140674684569002D07D500920B46B9 -:103690002246B17B6118FFF7CFFF73BDAC420092A9 -:1036A0000B462246294602DAFFF7C6FF73BDFFF735 -:1036B000ADFF73BD70B504460D461646FFF7DEFF3D -:1036C0000123324629462046FFF758FFA069606172 -:1036D00070BD2DE9F84304460D461646FCF734FF4D -:1036E0008046FCF7A0FC81462046FFF739FF04F135 -:1036F0000807386C012849DB99F80A00002821D016 -:10370000B87D002879D000207864B87E3A69F968DD -:103710008B1A834205D0002910D1BB689B1A8342C3 -:103720000CD13B7E002B06D000962B4682182046FB -:10373000FFF782FF02E04FF0FF30F8602046BDE85F -:10374000F2438DE7786CD8F86C10401A7864012841 -:1037500015DA386C7864324629462046FFF78EFF2A -:10376000B87D002808D033462A4639692046FFF73D -:1037700016FF2046FFF774FF3869F8603DE0B87D1A -:1037800000283AD02046BDE8F24369E7B87D00281A -:1037900033D094F9080099F80A1000291BD00928A1 -:1037A00001D0072805D133462A4639692046FFF75C -:1037B000F6FE94F9080008281AD197F92C00012880 -:1037C00016DB386B8068B0F57A7F0BD1B7F94E0005 -:1037D000012807DA11E0082804D1DFF880094068E1 -:1037E00000280AD133462A4639692046FFF7D7FE1A -:1037F0002046FFF735FF3869F860BDE8F183F8B57A -:1038000004460D46DFF84469376805E02A4621463C -:103810003846FFF75EFF3F68B742F7D1F1BDF8B514 -:1038200004460D46DFF83809C6690FF23400FCF78C -:1038300074FC06F10C07797DF868F26880187A6DDF -:1038400052699047002809D00120B874707A002886 -:1038500004D02A4621463046FFF73BFF0120F2BD47 -:103860003D3E5055500000000288D21C02800A8064 -:10387000704780B50B889B1AADF80030BDF800305A -:10388000002B09D01018012100F8031C022200A906 -:10389000801EFEF7DEFB01BD0888C01E088001BD4A -:1038A0002DE9F041F0B005460E46FCF74DFE074607 -:1038B000FCF7B9FB804610A84FF4C071FEF722F95F -:1038C00000208DF8020006A82821FEF71BF901A8A8 -:1038D0001421FEF717F90020ADF800000446386EF9 -:1038E000002800F0A08198F9090009F024FA0028C6 -:1038F00000F0998100A93046FFF7B6FFA04616E018 -:10390000012000FA08F0396E08420ED008EB88005A -:10391000DFF8501801EBC00292F90900012804D128 -:103920000DF1020110A8126A904708F10108B8F1E0 -:103930001D0FE5DB274619E03088421C328089786C -:1039400041553088FFF7F1FD00280DD0BDF800206B -:1039500031462846FFF78DFF31462846FFF7B5FD73 -:1039600000A93046FFF780FF7F1C7FB29DF8020060 -:10397000874280F250813188481C308007EB470035 -:10398000000110AA825C4A5531884A1C328010AA74 -:10399000801842784A553288511C3180411C4B783E -:1039A00053554A78032A06D0092A00F021810C2AAF -:1039B00000F0FB80C0E74278032A04D13288531C10 -:1039C00033808B7853553288531C3380CB785355D2 -:1039D000631CCA7812064AD401AA91F804C004F8FC -:1039E00002C0DBB24C799C545B1CDBB200249C54BB -:1039F0005B1CDBB28C799C545B1CC489DBB24FEA44 -:103A0000142C03F802C05B1CDBB29C545B1C00F25C -:103A10000E04DBB294F802C003F802C05B1CDBB2F8 -:103A2000E4789C545B1CDBB2847C9C545B1CDBB252 -:103A3000C07C9854581CC0B2CB798354401CC0B28F -:103A40000B7A8354401CC0B24B7A8354401CC0B2E2 -:103A5000897A8154441CE4B2224601A93088401975 -:103A6000FEF7F7FA308850FA84F0308069E7D1F831 -:103A700004C006AA4FEA1C4E04F802E0DBB24FEA8B -:103A80001C249C545B1CDBB203F802C05B1C8C68DA -:103A9000DBB24FEA144C03F802C05B1CDBB24FEA06 -:103AA000142C03F802C05B1CDBB29C545B1CC9687D -:103AB000DBB20C0C9C545B1CDBB20C0A9C545B1CF0 -:103AC000DBB29954591CD0F81130C9B21C0C8C547B -:103AD000491CC9B21C0A8C54491CC9B28B54491CDC -:103AE000D0F82730C9B21C0C8C54491CC9B21C0A2E -:103AF0008C54491CC9B28B544B1C00F22701DBB219 -:103B00000C799C545B1CDBB24C799C545B1CCC88BC -:103B1000DBB24FEA142C03F802C05B1CDBB29C54EE -:103B20005B1CDBB2097A9954591CD0F81530C9B224 -:103B30001C0C8C54491CC9B21C0A8C54491CC9B2B7 -:103B40008B54491CD0F81930C9B21C0C8C54491C38 -:103B5000C9B21C0A8C54491CC9B28B54491CD0F8F8 -:103B60001D30C9B21C0C8C54491CC9B21C0A8C549F -:103B7000491CC9B28B54491CD0F82100C9B2030CAE -:103B80008B54491CC9B2030A8B54491CC9B28854CE -:103B90004C1CE4B2224606A930884019FEF759FAB7 -:103BA000308850FA84F03080CBE600F20301B1F99E -:103BB0000300C0F3072242EA0020A1F80300B1F994 -:103BC0000700C0F3072242EA0020A1F80700B1F97C -:103BD0000500C0F3072242EA0020A1F805000922EF -:103BE00030884019FEF735FA308809303080A8E671 -:103BF0004278032A09D10222C11C30884019FEF7FD -:103C000028FA3088801C30809BE63088421C328045 -:103C10008978415595E6BDF8002031462846FFF7E2 -:103C200028FE09F0B0F870B0BDE8F0812DE9F04150 -:103C300005460E46FCF7F7F90746DFF8544C2078A6 -:103C4000401C2070FFF7AFFA6078401C607097F856 -:103C50001880B8F1010F26DB3088404480B2FFF7AE -:103C600064FC002803D031462846FFF72EFC30883C -:103C7000411C3180032141553088411C318000F8BE -:103C80000580424607F1190130884019FEF7E1F935 -:103C9000308840443080FF22002107F11900FEF7F0 -:103CA000DEF9002038766078401E6070C0B20028CF -:103CB00001D1FFF772FABDE8F041FFF717BB38B545 -:103CC00004460D46FCF7AFF9817A002909D1417B02 -:103CD000002906D129884A1C2A8006220A5501217A -:103CE000417331BD38B504460D46288800280CD0F4 -:103CF0002046FFF79BFF29462046FFF7E0FF2946B5 -:103D00002046BDE83440FFF7E0BB31BD14B585B0B7 -:103D1000049101A90022134614461CC10A21ADF8E2 -:103D2000001004218DF804108DF805000A4605A93D -:103D30000DF10600FEF78DF9042204A90DF10A0029 -:103D4000FEF787F900A901A8FFF7BFFB06B010BD79 -:103D5000F8B50446FCF767F9DFF80454296A496CA2 -:103D60008A6842F210739A425AD10969002957D1E0 -:103D7000807A002854D0DFF8E46330880C30B0F546 -:103D8000347F01DD002030800120FEF712FCFEF7B9 -:103D90004CFCADF802000320FEF70BFCFEF745FCDF -:103DA000ADF80000FEF758FC378802220DF1020141 -:103DB000B8190830FEF74DF9BF1C3780022200A960 -:103DC000BFB2B8190830FEF744F9BF1C378004228F -:103DD0002146BFB2B8190830FEF73BF9381D3080D4 -:103DE000022280B2801900F1080106206B691B6E67 -:103DF0001B6A98473088801C3080022280B280196C -:103E000000F1080106206B681B6E1B6A984730881A -:103E1000801C308070680C30B0F5347F00D2706048 -:103E2000F1BD2DE9F041CD4C6068002828D02188F3 -:103E300088421FD000F070FF054666682788A6EB11 -:103E400007081FFA88F84246381900F10801284689 -:103E5000FEF7FFF83A4604F1080108EB0500FEF70B -:103E6000F8F83246294604F10800FEF7F2F8284631 -:103E700000F06AFF626804F108010520FFF746FFC1 -:103E8000002060602080BDE8F0812DE9F04385B01E -:103E900006460F469046FCF7C6F881460025D6F840 -:103EA0000900041D3078014601297BD00F2933D049 -:103EB000802900F0A580812900F0AD80822900F0E2 -:103EC000AA80852900F0A780862900F0A48088298F -:103ED00000F0A1808A2900F0A6808B2900F0BF8025 -:103EE0008C2900F0CB808D2900F0D780DD2900F0EF -:103EF000FF80DF2900F01581F0292BD0F42935D07F -:103F0000F62944D0F82962D0F92950D0FC291CD0D8 -:103F1000FF2900F0C7807AE099F81600207099F820 -:103F2000170000280CD14FF0FF30009003462A46BE -:103F300042F21071082008F05FF9012089F817009B -:103F4000202089F81901012062E099F819012070F8 -:103F500001205DE0DFF83C090168090C217001686F -:103F6000090A61700068A070012051E0D9F81000C2 -:103F7000000E2070D9F81000000C6070D9F8100005 -:103F8000000AA070D9F81000E070012040E0032280 -:103F900021462846DFF800399B681B6E1B6A98474C -:103FA000012035E0204609F07BF8012030E0B6F82A -:103FB0000120B6F80300C010C0EB0011D6F80500D0 -:103FC00000EB81112046FEF744F8012020E028464E -:103FD000ADF800000120D6F80510C9B2012900D1C2 -:103FE0000320FEF7E6FAFEF720FBADF80000FEF72F -:103FF00033FB022200A92046FEF72BF8012007E040 -:10400000D6F8050020702146284608F0B1F8284669 -:1040100005B0BDE8F08329462170214600F07F00FD -:1040200008F0A6F8F3E701202070DFF86C08466876 -:104030002F46307F002801D12846E9E7707A002812 -:1040400003D1306E4068804707462046316EC9690B -:104050008847002FDBD0306E80688047D7E701208B -:10406000B6F80310C1F3C101091D884040F00200F9 -:1040700020702146012008F07BF8C8E799F800007D -:10408000207099F80300607099F80500A07099F805 -:104090000600E07001202071BAE7204609F014F80C -:1040A0000546B4E703A9284606F013F802A92846F6 -:1040B00006F089F806F032F80090DFF8E027A2FB5E -:1040C0000067760A46EAC756901B0090042203A9AF -:1040D0002046FDF7BEFF042202A9201DFDF7B9FF0F -:1040E000042200A904F10800FDF7B3FF01208FE7C7 -:1040F0007079DFF8A41751F82060707A00280CD08E -:10410000424639463046FFF7D5FADFF894170820C3 -:10411000FCF7AEFE0120207001E02846207001204F -:1041200076E77079DFF8701751F82060306996F8FB -:10413000221090FBF1F0401E0190042201A92046BC -:10414000FDF787FF012063E7FC7B0020BC07002010 -:1041500054660020E07B0020E47B00206C6A002095 -:104160000000002018D00020F0B599B00646FBF7FB -:104170005AFF0546FCF7E8F9D6F809100C1D31780E -:104180000A46A12A00F0C881A22A00F0E681A42AEA -:1041900000F0F181B12A00F07782B22A00F0F982B2 -:1041A000B82A00F00782C12A00F01A82CD2A00F056 -:1041B000EA80CE2A00F00081D12A3FD0D22A53D003 -:1041C000D32A5AD0D42A77D0D62A00F09C80D72A76 -:1041D00000F09980D82A00F0A080D92A00F09D80B4 -:1041E000DA2A00F0A480DB2A00F06981DC2A00F0E2 -:1041F0006D81E12A00F07181E22A00F08081EA2AD3 -:1042000000F0BC80F12A00F0A680F22A00F0ED80D8 -:10421000F32A00F03281F52A00F00881F72A00F035 -:104220001B81FA2A00F0CA82FB2A00F0CC82FD2A08 -:1042300000F00781FE2A00F0EE821BE100212846F3 -:10424000FCF7E8F895F81A01400709D50FF25C6011 -:10425000FBF763FF95F81A0100F0FB0085F81A01DF -:10426000FFF7DFFD012006E101212846FCF7D2F827 -:10427000012009F00BF80120FDE005F10900002103 -:10428000417005F11004E079002813D142F2107555 -:104290004FF0FF30009003460A462946082007F0F9 -:1042A000ABFF4FF0FF3301222946082008F014F835 -:1042B0000120E0710120DEE005F2090001214170DA -:1042C00000210171807800281BD105F11004E079EC -:1042D000002813D042F210754FF0FF330A462946EA -:1042E000082007F0F9FF4FF0FF300090034601224D -:1042F0002946082007F080FF0020E071012008F027 -:10430000C5FF0120B7E0D62901D1012000E000203F -:1043100005F1090188700120ADE0D92901D1012002 -:1043200000E0002005F10901C8700120A3E0DFF8DA -:104330006805056AB5F9560001280ADB0020A5F8D2 -:1043400056004FF0FF3302464FF47A71082007F011 -:10435000C3FF01208FE000210CE00A180B5D82F8FA -:104360007030022905D10A5D80F873200A5D80F85B -:104370007420491C0329F0DB01207CE0217880F8BF -:104380007B10012077E0002612E0DFF80C0545687D -:1043900005EB4605022204EB460105F15800FDF746 -:1043A00058FEB5F958100FF20C50FBF7B6FE761C0C -:1043B000032EEADB01205EE0002612E0DFF8D804DD -:1043C000056805EB4605022204EB460105F158009D -:1043D000FDF73FFEB5F958100FF2E440FBF79DFEE4 -:1043E000761C032EEADB012045E02969090601D489 -:1043F000012040E02178090201F4E0616278891827 -:10440000A0F87610A178090201F4E061E278891839 -:10441000A0F8781004212046DFF87C24D269126EBF -:1044200092699047002825D0012024E003222146EC -:104430000120DFF864349B681B6E1B6A98470120DB -:1044400019E0122221460220DFF84C349B681B6ED3 -:104450001B6A984701200EE0DFF83C048569286E4E -:1044600080688047002805D00122214605202B6E58 -:104470001B6A9847002019B0F0BD217880F87A10A7 -:1044800090F87A00002806D04FF480510020FBF706 -:10449000F5FF0120EFE7DFF80004C169497A826A7D -:1044A000527A51188069407A4018C0B2002804D16D -:1044B0004FF480510020FBF7E3FF0120DBE7D6F843 -:1044C00005100FF20840FBF728FED3E7D6F80510D9 -:1044D0000FF20440FBF721FECCE795F81A01217892 -:1044E000084385F81A0195F81A110FF2F830FBF716 -:1044F00014FEDFF8B0130220FCF7BAFCBAE795F817 -:104500001A012178884385F81A0195F81A110FF2DB -:10451000E430FBF702FEADE794F900500020019073 -:104520004FF0FF30029007460422611C01A8FDF7FE -:1045300090FDB6F80100062806D30422611D02A8EA -:10454000FDF787FD94F909700097029B00220199FD -:10455000284607F051FE20708CE794F900500422A1 -:10456000611C01A8FDF775FD00231A460199284634 -:1045700007F0B2FE7FE794F900504FF0FF30029051 -:1045800007460422611C01A8FDF763FDB6F801008F -:10459000062806D30422611D02A8FDF75AFD94F9EE -:1045A00009700097029B00220199284607F0F1FE4E -:1045B00020705FE76178207803280BD18DF80D100B -:1045C000012905D1A0788DF80E0040B200F041FA23 -:1045D000012050E749B240B208F06AFCC0B24AE795 -:1045E000207801460E3903D0091F032914D941E769 -:1045F0000E208DF80C0060788DF80D00A1788DF8F4 -:104600000E10E2788DF80F2052B249B240B2FBF79B -:104610004DFF00F015FA2DE78DF80C00122802D19D -:1046200060788DF80D009DF80C00132802D1607899 -:104630008DF80E009DF80C00142802D160788DF8DA -:104640000F009DF80C00152802D160788DF80D0040 -:10465000627821780FF2AC20FBF75FFD06208DF821 -:10466000340020780E900DF13D0003A9202200F0C7 -:1046700017FB0B208DF83C000020ADF85E000DA864 -:1046800000F008FAC0B2F6E694F9000007F0D6FF91 -:1046900001285DD120780146032908D0062945D09C -:1046A00009290BD00C2925D00D2931D04BE003224C -:1046B000611C0DF10D00FDF7CCFC49E00722611CE7 -:1046C0000DF10D00FDF7C5FCBDF80D00010A41EA32 -:1046D0000020ADF80D00BDF80F00010A41EA0020EE -:1046E000ADF80F00BDF81100010A41EA0020ADF855 -:1046F00011002DE00322611C0DF10D00FDF7A9FC56 -:10470000BDF80E00010A41EA0020ADF80E001FE0DE -:104710000322611C0DF10D00FDF79BFCBDF80E009E -:10472000010A41EA0020ADF80E0011E00122611CEF -:104730000DF10D00FDF78DFC9DF80D100FF2D4105A -:10474000FBF7EBFC04E08DF80C0060788DF80D00B1 -:104750002078052807D1544801210170687A002883 -:1047600001D1084687E600208DF8340020780E90AD -:104770000DF13D0003A9202200F092FA0B208DF8E4 -:104780003C000020ADF85E000DA800F083F9C0B237 -:1047900071E62078052804D14348002101700120EA -:1047A00069E601208DF8340020780E900B208DF8FA -:1047B0003C000DA800F06EF9C0B25CE6304608F08F -:1047C00051FE012057E62078052822D8DFE800F0C6 -:1047D00003210808181F0FF2481006F098F818E097 -:1047E000002000900422611C00A8FDF732FC207814 -:1047F00008F008FE009A01462078FFF787FA08E0E3 -:1048000095F81A0140F0040085F81A0101E0FFF75D -:1048100008FB01202FE6042221460CA8FDF719FC15 -:104820000422211D0BA8FDF714FC042204F1080149 -:1048300000A8FDF70EFC0CA9002005F0FBFB0BA95E -:10484000002005F070FC05F069FC0446134A0023C3 -:1048500000981946101A63EB0101490241EAD05150 -:10486000400208F0BBFF0090844205D2011B4FF0CC -:10487000004005F028FD09E0A04207D2C4F5007011 -:10488000009909184FF0004005F01DFD0120F2E5E8 -:1048900024380020E43800200000002000CA9A3BA1 -:1048A000EC58002024590020FC7B0020524D205061 -:1048B0004400000047797243616C3D2564000000AC -:1048C00041434343616C3D256400000044554D5015 -:1048D000534554202564000044554D5046494E2010 -:1048E00025640000414420564C203A203078257839 -:1048F00000000000524D20564C203A203078257898 -:104900000000000050443A2053657425642025645B -:104910000000000050443A2053432025640000006A -:1049200041505F5245515545535400005848704717 -:104930002DE9F04182B00C461646012500282DD104 -:1049400006EB8600524901EBC007284600FA04F83E -:10495000F86810EA080F08D02346FA6831460FF2CB -:104960009420FBF7DAFB022046E04FF0FF30009086 -:1049700003462A467968204607F03EFC00280BD003 -:104980002346FA6831460FF27C20FBF7C6FBF86835 -:1049900048EA0000F8602EE002202DE001282AD12C -:1049A00006EB86003A4901EBC007284600FA04F8F6 -:1049B000F86810EA080F08D12346FA6831460FF26A -:1049C0005420FBF7AAFB032515E04FF0FF332A46DE -:1049D0007968204607F080FC002807D02346FA6853 -:1049E00031460FF24020FBF798FB00E00325F86802 -:1049F00020EA0800F8602846BDE8F68108F064BAAD -:104A000002B58CB00021ADF82A1001910A218DF871 -:104A1000081000218DF809108DF80A1005218DF875 -:104A20000010019004220CA90DF10900FDF711FB03 -:104A30000020ADF82A0000A800F02CF80DB000BD51 -:104A400080B509F0FDF90FF2EC10BDE80240FBF76C -:104A500064BB10B50446C0B209F0FDF921460FF25F -:104A6000E010BDE81040FBF758BB0022C0B21D2883 -:104A70000CD240B200EB8003054800EBC300C068D5 -:104A8000012303FA01F1084200D01A46104670478C -:104A900018D0002030B587B00446012594F90000F5 -:104AA000062800F29280DFE800F00427355067887E -:104AB0008C0004F1090182B06846202200F0F0F871 -:104AC0000CBC94F90810606840B207F0ECFE0228B4 -:104AD0000AD1606800B208F02EF8002561680FF274 -:104AE0006C10FBF71AFB76E0032874D161680FF2B3 -:104AF0006410FBF712FB6EE094F90810606840B296 -:104B000007F079FF032866D161680FF25010FBF7B8 -:104B100004FB60E0618D00A808F026F89DF9040010 -:104B200002280AD1009800B208F005F80025009983 -:104B30000FF23010FBF7F1FA4DE003284BD100994A -:104B40000FF22810FBF7E9FA45E009F007FE02280A -:104B50000AD1606800B207F0EEFF002561680FF22D -:104B60001410FBF7DAFA36E0032834D161680FF24B -:104B70000C10FBF7D2FA2EE0606805280CD128460D -:104B800009F0C3FE02280DD0032824D161680FF27A -:104B9000FC00FBF7C2FA1EE002281CD109F0A4FFBA -:104BA0000228F1D1606800B207F0C5FF00256168F6 -:104BB0000FF2D000FBF7B1FA0DE0204608F032F812 -:104BC00009E0204608F0E4F905E061680FF2C4004E -:104BD000FBF7A3FA0025284607B030BD0120704737 -:104BE0000FB4022004B070470120704700207047C6 -:104BF00070470000534D4143202564202564202543 -:104C000064000000534D4120256420256420256464 -:104C100000000000534D52432025642025642025C8 -:104C200064000000534D5220256420256420256433 -:104C300000000000504420536574535400000000ED -:104C400050442055543A202564000000414C4F4602 -:104C500020256400414C434620256400524C4346C5 -:104C600020256400504C4F4620256400504C43469C -:104C70002025640050414F462025640050414346A2 -:104C80002025640050504F46202564005050434674 -:104C9000202564004558204C4D454C2025640000DB -:104CA00062B38B0708D0521E11F8013B00F8013B9C -:104CB00000F024808B07F6D1830740F0208000BFEE -:104CC000103A07D330B4B1E83810103AA0E83810E1 -:104CD000F9D230BC530724BFB1E80810A0E808108F -:104CE00044BF51F8043B40F8043BD20724BF31F8DD -:104CF000022B20F8022B44BF0B7803707047083A50 -:104D000007D3B1E80810083A40F8043B40F804CB58 -:104D1000F7D25307E4E7000030B5134D044681B0E5 -:104D2000287820B9281D09F05BFF01202870281D74 -:104D300009F070FF20460AF0C9FD0446281D09F05D -:104D40008AFF204601B030BD30B5074D044681B022 -:104D5000281D09F05FFF20460AF004FF281D01B05E -:104D6000BDE8304009F077BF3CFD002000B583B0BE -:104D70000020ADF8040000208DF8060000208DF81A -:104D80000700012000900DF106037622D0210020BB -:104D9000FBF74AFA002801D1002044E076208DF884 -:104DA00004009DF8060050F020008DF80500022355 -:104DB00001AAD0210020FBF7F9F9002801D1002039 -:104DC00031E0012000900DF107034922D02100209D -:104DD000FBF72AFA002801D1002024E049208DF8B1 -:104DE00004009DF8070050F001008DF80500022333 -:104DF00001AAD0210020FBF7D9F9002801D1002019 -:104E000011E076208DF804009DF806008DF805006D -:104E1000022301AAD0210020FBF7C8F9002801D104 -:104E2000002000E001200EBD38B50400FBF7FBF8C0 -:104E30000500DFF8B80C0078401CDFF8B01C0870E3 -:104E4000FEF7B1F9DFF8A40C4078401CDFF89C1C99 -:104E50004870210089B22800FBF79EFADFF88C0C1D -:104E60004078401EDFF8841C4870C0B2002801D191 -:104E7000FEF793F9FEF73AFA31BD10B582B0002083 -:104E8000ADF80000FBF7CFF804006B208DF80000B0 -:104E900080208DF80100022300AAD0210020FBF71A -:104EA00085F9002801D1002094E064212000FBF75F -:104EB00073FAFFF75BFF002801D100208AE06B2026 -:104EC0008DF8000000208DF80100022300AAD021F7 -:104ED0000020FBF76BF9002801D100207AE028219F -:104EE0002000FBF759FA19208DF8000004208DF8F6 -:104EF0000100022300AAD0210020FBF757F9002867 -:104F000001D1002066E01A208DF8000003208DF802 +:10084000627A94F908100FF23850FFF766FCF1BD98 +:10085000C16A8A68012A09DB0969012906DA006D83 +:10086000002801D500207047022070470020704703 +:1008700001EB410200EB8201896B8A68012A09DBE6 +:100880000969012906DA006D002801D500207047AA +:100890000220704700207047002900D5D8E7E7E71D +:1008A000012900DA012113460A4697E7012900DAF7 +:1008B000012113460A46AEE7B1F57A7F01DC4FF419 +:1008C0007A7113460A464FF4FA7187E7B1F57A7FD9 +:1008D00001DC4FF47A7113460A464FF4FA719AE735 +:1008E00010B50446002922D5E06A816801291CDB85 +:1008F0000069012819DA02212046FFF72BFF0028A2 +:1009000013D194F954004FF0FF31884204D10020F4 +:1009100084F85400012010BD002806D10120607722 +:10092000084684F85400022010BD002010BDBDE828 +:1009300010409DE7DFF82C24926ED26E02F5FA7219 +:10094000524202654FF0FF3280F8542020E7C92957 +:1009500000DAC82113460A4642213FE7C92900DAD6 +:10096000C82113460A46422155E710B5044600291E +:1009700026D5E06A8168012920DB006901281DDA9B +:1009800003212046FFF7E6FE002817D194F9540012 +:100990004FF0FF31884204D1002084F85400012038 +:1009A00010BD002803D1012084F8540010BD012897 +:1009B00004D1084684F85400022010BD002010BD68 +:1009C000BDE8104054E7DFF89C23926ED26EC83227 +:1009D000524202654FF0FF3280F85420D8E6DFF82B +:1009E0008423926ED26EC83252420265D0E613461C +:1009F0004FF0FF321146F1E613464FF0FF32114639 +:100A000009E780B5FFF7C4FEFFF70DFB0021017574 +:100A1000012002BD80B5FFF7CEFEFFF704FB0021E9 +:100A20000175012002BDCF48C06A417A481E80414D +:100A3000C00F704780B5CB480068417A002902D1C9 +:100A4000006E40688047012002BD80B5FFF7B3FE0D +:100A5000C4480068417A002902D1006E806880474E +:100A6000012002BD000000002DE9F0410C46BD4D03 +:100A700055F82060307206F154070FF214313961D5 +:100A8000112800F20B81DFE810F0120022002E0086 +:100A900046003A005200610070009D007F008E0009 +:100AA000AC00BB00C800D500E200F000FD0006F17C +:100AB0000800062141760A21817605F2C471416061 +:100AC00040F2DC5181600FF28C303861E6E006F1D3 +:100AD0000800062141760A21817605F6A051416081 +:100AE0000A218160DAE006F108000C21417610212C +:100AF000817605F6B851416010218160CEE006F1A3 +:100B00000800072141760B21817605F6AC51416042 +:100B10000B218160C2E006F10800062141760A211E +:100B2000817605F6C85141600A218160B6E006F180 +:100B30000800062141760A21817605F6D4514160EC +:100B40000A2181600FF280203861A7E006F10800D9 +:100B5000262141762A21817605F6E05141602A213D +:100B600081600FF2D420386198E006F1080003217B +:100B700041760721817605F6286141600721816071 +:100B80000FF27C20386189E006F108000C214176E3 +:100B90001021817605F618614160102181600FF205 +:100BA000442038617AE006F10800022141760621EE +:100BB000817605F630614160062181600FF25C208C +:100BC00038616BE006F10800052141760921817644 +:100BD00005F60C614160092181600FF2D010386187 +:100BE0005CE006F10800062141760A21817605F6CF +:100BF000386141600A2181600FF2742038614DE054 +:100C000006F10800012141760521817605F644614F +:100C1000416040F28661816040E006F108000121F8 +:100C200041760521817605F5A051CC314160052141 +:100C3000816033E006F108000C21417610218176B5 +:100C400005F5A051D43141601021816026E006F104 +:100C50000800112141761521817605F5A051E43176 +:100C6000416041F66631816018E006F1080011210B +:100C700041761521817605F540514C3141601521B1 +:100C800081600BE006F1080004214176082181769D +:100C900005F54051643141600821816006F108008A +:100CA00000210175417581750176C1600161417056 +:100CB00006F128080846C8F828004FF0FF3086F8EB +:100CC00054007880062206F1580001F0D6F9002081 +:100CD00010E000EB400106EB8101002281F8342096 +:100CE00034314A7005F148024A6006EB8001002267 +:100CF0008A64401C0228ECDB002086F8280088F873 +:100D0000010005F14800C8F80400FC60BDE8F0816E +:100D100010B5144CFFF718FCA066002006E068210F +:100D200011FB00416C3144F82010401C1228F6DB06 +:100D30004FF0FF30206560650020A06505F017FAD0 +:100D400005F0FBFF07F070FAF1F79BF907F090FF51 +:100D5000F1F75DFCF1F730FF08F0C4F8BDE8104092 +:100D600008F087BB00000020243800204800002045 +:100D7000414420256420256420256420256400004A +:100D8000524D202564202564202564202564000020 +:100D9000D907010891070108D9070108B707010819 +:100DA000A1080108AD08010899080108D907010840 +:100DB00035090108D9070108B7070108B908010872 +:100DC000CD080108E1080108D9070108C709010891 +:100DD000D9070108B70701084F0901085D09010893 +:100DE0006B090108D9070108DF090108D9070108C3 +:100DF000B7070108A1080108AD0801089908010812 +:100E0000D9070108030A0108D9070108150A0108D2 +:100E1000EF090108F909010899080108D907010833 +:100E200091070108D9070108B7070108A1080108BF +:100E3000AD08010899080108D907010891070108C0 +:100E4000D9070108B7070108A1080108AD08010882 +:100E500099080108270A010891070108270A0108D3 +:100E6000B7070108A1080108AD08010899080108A1 +:100E7000350A010891070108D90701084B0A010842 +:100E8000EF090108F90901089908010830B581B096 +:100E900004460D4602F097F9686920436861297C91 +:100EA00001F0F801082905D1A96901421CBF2846B3 +:100EB00002F048FA0448407820B901B0BDE830405B +:100EC00002F07BB901B030BD243800200A1841403F +:100ED00004D4504002D54FF0004070471046704790 +:100EE000421A414004D5504002D54FF000407047AF +:100EF000104670470021002804D120207047091DAA +:100F0000C9B2000110F0704FF9D0002803D4491C79 +:100F1000C9B24000F9E7084670472DE9F843044696 +:100F20008846B8F1000F4CD0002C01D4A14601E056 +:100F3000C4F10009B8F1000F01D4454601E0C8F141 +:100F4000000500261127280D00050ED0680C401C56 +:100F5000B9FBF0F64A46A5FB0601400C40EAC13059 +:100F6000101A814601E02D093F1F15F00F0F01D126 +:100F7000042FF8DAB9F1000F1BD0002F19D448461E +:100F8000FFF7B8FF874200DC384609FA00F93F1A3C +:100F9000B9FBF5F000FA07F18E194FF0FF31F94077 +:100FA000C94308420DD105FB10904FEA40097F1E4E +:100FB000E0E7701C400898EA040106D510F1004FE4 +:100FC00002D14FF0004000E04042BDE8F28330B56E +:100FD00081FB0045204629462F2208F0E7FA002D24 +:100FE0000FDC00DB0DD2C0430DD1641E65F100059E +:100FF00020462946000C40EA0140C4F3C0310818DD +:1010000030BD0028F4D04FF0004030BD10B504468C +:10101000FFF75CFF10F1004F06D1012C02DB6FF0EF +:10102000004010BD4FF0004010BD70B40246D20F1A +:1010300000D040420021030D1B0502D04FF0804339 +:1010400003E04FF4802300E09B089842FCD30C4659 +:1010500004E0000419464FF48043641C022C08D3BA +:10106000814200D2491C002A1AD0494218E0294680 +:101070009B08002B07D04D085E18B042F7D3401AEA +:10108000C01A5919F4E7002CE7D10B04B0F5803FE2 +:10109000DFD3401A0004A0F5004003F50041DAE771 +:1010A000084670BC7047002205E040F8221000EBB3 +:1010B00082031961521C036A9A42F6DB70472DE9DC +:1010C000F84F0C4615461E46376A4FF00008DDF80B +:1010D000289099FBF7F107FB119A46F82A00C346BE +:1010E00012E0A9EB0B00381890FBF7F107FB110099 +:1010F00056F8201054F82B00FFF769FF4146FFF720 +:1011000085FF80460BF1010BBB45EADB012413E0B0 +:10111000A9EB0400381890FBF7F107FB110006EB70 +:101120008000016955F824004042FFF750FF414616 +:10113000FFF76CFF8046641CBC42E9DB06EB8A00CB +:10114000C0F810804046BDE8F28F70B504460D012E +:101150002068401C2060E1682846FFF7C1FE064673 +:101160002068022808DB01043046FFF7D6FE01465E +:10117000E068FFF7ABFE00E02846E0602068022848 +:101180000CDBE1682846FFF7ABFE01463046FFF76F +:101190001EFF0146A068FFF799FE00E00020A06056 +:1011A0002068022805DB401E0104A068FFF7B5FE99 +:1011B00000E000206061FFF738FF2061001120612E +:1011C00070BD002101604FF48051416000218160B9 +:1011D000C16001614161704770B50446002002465C +:1011E00020E0DFF8901641F82020DFF88C1641F857 +:1011F0002020DFF8881641F82020DFF8841641F817 +:101200002020DFF8801641F82020DFF87C1641F816 +:101210002020DFF8781641F82020DFF8741641F816 +:101220002020401C1828DCDB10460EE0DFF8641696 +:1012300041F8202001EB80018A600A618A610A621C +:101240008A620A638A630A64401C0228EEDBDFF8C4 +:10125000485610462864064609E0002106EBC60001 +:1012600005EB800000F59C70FFF71DFF761C032E38 +:10127000F3DB002609E0002106EBC60005EB800049 +:1012800000F5DA70FFF70FFF761C042EF3DB4FF446 +:101290008030A86541F69910E8650020A8642846CA +:1012A000FFF78FFF0020E864286568634FF0FF3088 +:1012B000E86228630020A863E863E866A8666866B9 +:1012C0006864A86D2866FF202867AC670120686500 +:1012D000032068670020A86270BD2DE9FF4F8FB022 +:1012E00000241C981C90DFF8B05564E001202865AC +:1012F0000020E863686B052801DB0020E8644FF0FC +:10130000FF30E862286300206863E86A10F1010F8B +:1013100049D0AF6F002F43D0D5F83CE0BEF1C80FE5 +:101320003EDAEF6C2E2F02DA2F6D002F38D1704489 +:1013300090FBF6F706FB1708D5F84090DFF85475D8 +:10134000DFF830A55AF828A047F829A007EB89074D +:10135000DFF824A55AF828A0C7F808A0DFF81CA5D4 +:101360005AF828A0C7F810A0DFF814A55AF828A04A +:10137000C7F818A051F82810396252F82810B9623D +:1013800053F828103963DFF8081551F82810B963AD +:10139000C7F840E009F1010129640EF10101E96398 +:1013A000686B401C68630CF1010090FBF6F106FBD2 +:1013B0001100A863641C1C98844280F22C820F9850 +:1013C00050F8240080010F9941F82400109850F83B +:1013D00024008001109941F82400119850F824004D +:1013E0008001119941F82400129850F824008201DC +:1013F000129840F82420686D002841D0686F411E83 +:1014000069670128D6DA0F9850F8241047F6015082 +:1014100081420EDB109B53F82430834209DB119B81 +:1014200053F82430834204DB824202DB6420E86705 +:10143000C0E7E86F421EEA670128BBDAA96110988D +:1014400050F82400E861119850F82400286212989E +:1014500050F82400686205F19000FFF724FEE96966 +:1014600005F1B400FFF71FFE296A05F1D800FFF768 +:101470001AFE696A05F1FC00FFF715FE0020686599 +:1014800005F5D27605F5D67AA86B009005F5DA73E6 +:10149000524631460F9850F82400FFF710FEA96914 +:1014A000FFF71EFD8146A86B009005F5EC735246D0 +:1014B0003146109850F82400FFF701FEE969FFF764 +:1014C0000FFD8046A86B009005F5FE73524631462D +:1014D000119850F82400FFF7F2FD296AFFF700FD8C +:1014E0000746A86B009005F50873524631461298DE +:1014F00050F82400FFF7E3FD696AFFF7F1FC019063 +:1015000005F5907605F5967AA86B009005F59C7325 +:1015100052463146A8EB0900FFF7D1FD6866A86B7B +:10152000009005F5AE73524631460198381AFFF720 +:10153000C6FDA86607EB0800484401990818A96B86 +:10154000009105F5C07352463146461000EB967087 +:101550008010FFF7B4FDE8661826A86A002878D145 +:1015600005F1800A05F1880BA86B009005F1900346 +:101570005A4651460F9850F82400FFF7A0FDA86185 +:10158000A86B009005F1B4035A465146109850F8E4 +:101590002400FFF794FDE861A86B009005F1D803E3 +:1015A0005A465146119850F82400FFF788FD2862EA +:1015B000A86B009005F1FC035A465146129850F86A +:1015C0002400FFF77CFD6862A86C411CA9645028C8 +:1015D00029DA47F601500F9A52F82420824210DB94 +:1015E000109A52F8242082420BDB119A52F82420E0 +:1015F000824206DB129A52F82420824201DB481E06 +:10160000A864A86C292803DBE96E2846FFF79DFD36 +:10161000A86B401C90FBF6F106FB1100A8634FF489 +:1016200080302866C6E60120A8624FF48021286930 +:10163000FFF7CDFC286640F2DD51884203DB40F223 +:10164000DC50286605E0B0F5E17F02DA4FF4E17086 +:101650002866E86E296E81420BDAEA6A12F1010F00 +:1016600007D1A86B173090FBF6F106FB1100E8627A +:1016700010E088420EDAE86A10F1010F0AD0286BF8 +:1016800010F1010F06D1A86B401C90FBF6F106FB90 +:1016900011002863E86A10F1010F36D1E86C401C94 +:1016A000E86405F1800A05F1880BA86B009005F14C +:1016B00090035A4651460F9850F82400FFF7FFFC5C +:1016C000A861A86B009005F1B4035A4651461098E2 +:1016D00050F82400FFF7F3FCE861A86B009005F1D7 +:1016E000D8035A465146119850F82400FFF7E7FCFA +:1016F0002862A86B009005F1FC035A4651461298E7 +:1017000050F82400FFF7DBFC6862D5F838C09CFB7A +:10171000F6F006FB10C057496A6E41F82020564982 +:10172000AA6E41F820205549EA6E41F8202054491C +:101730002A6E41F82020534941F82090524A42F83D +:101740002080524B43F82070514FDDF804E047F8F9 +:1017500020E0E86A10F1010F3FF4D7AD2F6B17F1CD +:10176000010F3FF4D2ADBC457FF4CFADAF6F002F7A +:101770003FF4BEADD5F83CE0BEF1C80FBFF6B8AD42 +:10178000D5F84C80B8F12E0F03DA2F6D002F7FF4BF +:10179000AFAD00EB0E0999FBF6F006FB109AD5F8F9 +:1017A00040B03C4F334850F82A0047F82B00CDF8A2 +:1017B000009007EB8B07304850F82A00B860CDF84E +:1017C00000902E4850F82A003861CDF800902C483F +:1017D00050F82A00B861CDF8009051F82A0038621C +:1017E000CDF8009052F82A00B862CDF8009053F876 +:1017F0002A003863264850F82A00B863CEF100006A +:1018000038640BF101002864B8F12E0FFFF66EADBD +:10181000002028656CE5286C012827DBAC6F2100CF +:1018200022D01C4F0E90786C0D90F86B0C90786B5A +:101830000B90F86A0A90786A0990F86908907869BC +:101840000790F868069078680590386C0490B86B3B +:101850000390386B0290B86A0190386A0090BB69B7 +:101860003A69B9683868A04700202864002013B09E +:10187000BDE8F08FFC7400205C750020BC75002072 +:101880001C7600207C760020DC7600203C7700204F +:101890009C770020FC790020703300205FF0FF0C63 +:1018A0001CEAD05114BF614506E0C110400721F089 +:1018B000E04101F16051704779B900F00041000248 +:1018C0000AD0B0FA80FC00FA0CF001F16051A1EBF3 +:1018D0000C5101EBD0214005704741020CBF40F490 +:1018E000E0016FF000010020704750F8041B61B167 +:1018F00050F8042BD30744BFA9F101039A18002321 +:1019000042F8043B091FFAD1EFE77047B0B581EA0E +:10191000030C0CF0004C40F2FF7515EA11541DBF8A +:1019200015EA1357AC42AF4239E0E41923EA4553B4 +:1019300043F48013C90241F0004141EA505EC702FE +:101940001100A7FB020200284FF00000EEFB01206F +:101950004FF00001E3FB072118BF42F001024018DD +:1019600000214941E3FB0E01A4F580640F0302D27C +:1019700052004041494154F101046CDD470872F1C5 +:10198000004250F1000051EB0451A1F580115CBF01 +:1019900041EA0C01B0BD4CEA05510020B0BD05EA9A +:1019A0001357AC4214BFAF4241E050EA410E1CBF96 +:1019B00052EA430E02E061460020B0BD24423C449E +:1019C0001BD15FEA070EF6D0090302BF01460020D3 +:1019D000AEF1140EB1FA81F7AEEB070401FA07FE7F +:1019E0000C37C7F1200100FA07F7C8404EEA000E95 +:1019F00023EA455343F48013A2E733F00043B3FADC +:101A000083F704BFB2FA82FE77440B3FE41BB7F1C1 +:101A1000200E2FBF02FA0EF3BB40C7F1200E22FAB0 +:101A20000EFE38BF43EA0E03BA40641C82E750EA58 +:101A3000410E14BF52EA430E6FF000014FF400173D +:101A400017EB430F8ABF194617EB410FB5E74CEA76 +:101A500005510020B0BDD4F10104B4F120070FDA24 +:101A6000C4F12007520828BF42F0010210FA07F51E +:101A700001FA07F7E1BF2A43E0403843E1400FE0B5 +:101A8000352C98DCC7F1200452EA400220FA07F214 +:101A900018BF42F0010231FA07F0A1400A430021C9 +:101AA00072F1004250F1000051EB0C01B0BD8268B0 +:101AB000521C8260426832B10268531C036011708C +:101AC0004168491E41607047F446400D40EAC1201C +:101AD000490006D200F014F8004248BF6FF0004001 +:101AE000604700F00DF84FF0004188428CBF084677 +:101AF00040426047400D40EAC120490080F00D801F +:101B000040F00040490DA1F58061491C05D4D1F198 +:101B10001F0154BFC840C01770474FF00000704706 +:101B2000002207F055BD0268531C03601170704716 +:101B3000010040F10980F446404200F005F851F000 +:101B400000416047010000BF09D0B0FA80F1884031 +:101B5000C91CC1F58461090501EBD021400570471E +:101B600070B44FF0004591EA030C44BF6B4000F0A5 +:101B700075B800BF841A71EB030603D2001BB14194 +:101B8000121973414FF4001C1CEB410F34BF7CEB66 +:101B9000430443E00C0DA4EB1356352E50DC45EA0C +:101BA000C323DB0A45EAC121C912B6F120050DDDC8 +:101BB00063FA05F6EB4086EA0305124218BF45F0CA +:101BC0000105C01851F100010CD213E062FA06F5CC +:101BD000F2405540F3415A40B340F3405A40801818 +:101BE000594107D349085FEA30005FEA350528BF4D +:101BF00045F0010501F58011420875F1004250F1F0 +:101C0000000041EB045170BC4FF4001C1CEB410F71 +:101C100038BF70470020090D090570471CEB410FC4 +:101C200010D252EA43060BD0BCEB410F05D80C0D85 +:101C3000AB43661E342EB5DD02E0AB43801859413C +:101C400070BC704770BC704770B44FF0004591EAAB +:101C5000030F44BF6B40FFF78DBF00BF841A71EBC9 +:101C6000030604D26E40001BB141121973414FF4B8 +:101C7000001C1CEB410F34BF7CEB430684E00C0DD1 +:101C8000A4EB1356362E7DDC012E43DC45EAC3233C +:101C900043EA525312BFD20292025B08240545EA7E +:101CA000C12141EA5051D2EBC020994125D407D13E +:101CB000B0FA80F610FA06F164D00020203608E071 +:101CC000B1FA81F6B140C6F1200220FA02F21143C6 +:101CD000B0404FEAF474B4EB465434F001064FEAD6 +:101CE00074040AD8D6F50016760D04F00044F040CE +:101CF00061FA06F25040F1404840C00A40EA4150C3 +:101D000021F0004128BF5FEA500550F1000044EB8C +:101D1000D12137E045EAC323DB0A45EAC121C90ADC +:101D2000B6F120050EDD42EA0242120CC5F1200692 +:101D300003FA06F6EB4042EA06056D42984161F16E +:101D400000010DE062FA06F5F240554063FA06FC28 +:101D500082EA0C02F3405A406D42904161EB03016C +:101D600011F4801F05D1641E620502D06D00404150 +:101D7000494121F48011430875F1004350F10000FE +:101D800041EB045170BC70471CEB410F15D223F09E +:101D9000004352EA43060BD04FEA4C0CBCEB410F18 +:101DA00004D80C0D661E342EB7DDEBE7801A99417E +:101DB00050EA410608BF0021E4E708BF1CEB430FCF +:101DC00028BF6FF00001DDE7F0B540F2FF7581EA52 +:101DD000030C0CF0004C15EA11541DBF15EA135703 +:101DE000AC42AF42E5E0BC41C1F31301C3F31303BE +:101DF000801A994143F4801304D2641E4000494183 +:101E000080185941C90241EA5051B1FBF3F603FB76 +:101E10001611A2FB0675D7EBC020A94102D2761E8F +:101E200080185941C90241EA5051B1FBF3FE03FB4E +:101E30001E11A2FB0E75D7EBC020A94103D2AEF153 +:101E4000010E80185941890241EA9051760546EA0F +:101E50008E2EB1FBF3F603FB1611A2FB0675D7EB32 +:101E60008020A94102D2761E80185941C90241EA58 +:101E700050514EEA060EB1FBF3F603FB1611A2FB1E +:101E80000675D7EBC020A94102D2761E80185941B1 +:101E9000C90241EA5051B1FBF3F703FB1711A2FB52 +:101EA0000735D3EBC020A94167F100070CBF004202 +:101EB00047F0010766F3D5274FEA1E31B80814F53D +:101EC000806412DDBD0775F1004250EB0E5051EBFE +:101ED000045111F5801F5CBF41EA0C01F0BD4CF0CC +:101EE0007F6141F0E0410020F0BDBD076D0840EA90 +:101EF0000E5041F48011D4F10104B4F120060ADA45 +:101F0000C4F120060200E04001FA06F3E140184364 +:101F1000B24015430EE0342C13DCC6F1200445EA30 +:101F200040056D0820FA06F2154321FA06F0A1409B +:101F30000D43002175F1004250F1000051EB0C01FE +:101F4000F0BD00205FEA0C01F0BDCFB992185B41F3 +:101F5000B3FA83F704BFB2FA82F6BF190B3FB7F1A9 +:101F600020062FBF02FA06F3BB40C7F1200622FA73 +:101F700006F638BF3343BA401CB1E419641E33E798 +:101F80007F4231F00041B1FA81F404BFB0FA80F62B +:101F9000A4190B3CB4F120062FBF00FA06F1A140B2 +:101FA000C4F1200620FA06F638BF3143A0403C1B9E +:101FB0001AE7AC421ABF05EA1357AF4212E050EAE3 +:101FC00041061CBF52EA4306BFE750EA41073046CC +:101FD00061461CBF41EA0551F0BD52EA430C08BFFF +:101FE000C143F0BD00204FF4001616EB410F98BF1F +:101FF00016EB430F08BF16EB410F24BFC14305E0AA +:1020000016EB430F0CBF61464CEA0551F0BD0000D2 +:102010004FF4001C1CEB410F94BF1CEB430F09E075 +:1020200041EA030C50EA4C0C52EA0C0C03D28B42EE +:1020300008BF8242704714BF994290427047000027 +:102040004FF4001C1CEB410F94BF1CEB430F09E045 +:1020500041EA030C50EA4C0C52EA0C0C03D29942B0 +:1020600008BF9042704714BF8B428242704710B540 +:10207000044602F025FE204610BD10B50446104669 +:102080000A460146204607F0BDFA204610BD000072 +:102090007CB50121032007F04AFBDFF88C4B20467A +:1020A00007F0BCFBDFF8546D304607F0B7FB0120AA +:1020B0008DF8040000208DF8050001208DF8060041 +:1020C00000208DF80700012130460183C046012021 +:1020D000009000A9304607F0FDFB02213046018345 +:1020E000C0460220009000A9304607F0F3FB012013 +:1020F0008DF8040000208DF80500ADF806004FF4BF +:102100008055009500A9304607F0E4FB294630468B +:102110004183C04601208DF8040000208DF80500A1 +:1021200001208DF8060000208DF80700009500A919 +:10213000204607F0CFFB294620464183C04673BDA9 +:1021400070B586B001214FF4001007F0FBFA0121B1 +:102150004FF4001007F0F6FA0121022007F0E7FA29 +:102160000121022007F0E3FA01214FF4804007F03B +:10217000F4FA01214FF4001007F005FB01214FF4A0 +:10218000001007F000FB00214FF4001007F0FBFAED +:1021900000214FF4001007F0F6FADFF8604C04223B +:1021A0000621204607F0E4FB04220721204607F021 +:1021B000DFFB02208DF8040001208DF805008DF86A +:1021C000060000208DF807004020009000A920465E +:1021D00007F080FB8020009000A9204607F07AFBE2 +:1021E0004020009000A9204607F074FB802000905A +:1021F00000A9204607F06EFB0020ADF80C004BF65E +:10220000FF70ADF80E004FF48060ADF812004FF48F +:102210008040ADF814000A20ADF81000DFF83C6CE7 +:102220000296DFF83C5C02A9284607F0E4FB012196 +:10223000284607F043FC0A20ADF81000029602A9D8 +:10224000284607F0D8FB0121284607F037FC206814 +:1022500020F440502060206820F440402060206836 +:1022600040F400502060206840F4004020600022CC +:102270000621204607F07CFB00220721204607F0BC +:1022800077FB04220621204607F072FB0422072177 +:10229000204607F06DFBDFF8640C056006B070BDEA +:1022A0002DE9F04192B001214FF4805007F055FA2A +:1022B0000121084607F03BFA01214FF4800007F0A6 +:1022C00036FADFF8644905221146204607F050FB34 +:1022D00005220721204607F04BFB05220621204658 +:1022E00007F046FB05220421204607F041FB0220AF +:1022F0008DF8040001208DF805000020ADF80600DF +:102300002020009000A9204607F0E4FA80200090E9 +:1023100000A9204607F0DEFA4020009000A92046E0 +:1023200007F0D8FA1020009000A9204607F0D2FA52 +:10233000DFF8CC4B204607F023FCDFF8C85B002019 +:10234000288068600120288100206881E8600720DB +:10235000288200206880DFF8B06B304607F0F2FC7E +:10236000DFF8A87B384607F0EDFC4FF4806006905C +:1023700000210D9103210E9100210F910A910890E7 +:10238000DFF88C0B039008461090099007904FF4EB +:1023900000300C9008460B904FF0C068CDF80880D4 +:1023A000402005900846049002A9304607F04EFDF3 +:1023B00000200B90CDF80880059005F114000490E2 +:1023C00002A9384607F042FD0020688029462046D1 +:1023D00007F005FC01220221204607F0A1FC0122A2 +:1023E0001146204607F09CFC0121204607F080FCA6 +:1023F0000021304607F051FD0021384607F04DFD21 +:1024000012B0BDE8F08110B588B001214FF08050C6 +:1024100007F098F901214FF4802007F088F9012096 +:1024200007F0A4FD0F2007F051FF0446012007F03C +:102430007BF9002007F078F9002C01D008F0E0FAD1 +:10244000012007F013F9412007F0B3F90028FAD072 +:102450004FF4807007F052F9012007F062F907F09D +:10246000D8FD3F20069040F2FF1007900020059015 +:1024700005A807F085FD0020029002A907F0EAFDFB +:1024800000208DF8070001208DF804008DF805006C +:102490008DF8060001A9002007F055FE4FF48000DA +:1024A00008F020FB4FF48000039000208DF810000E +:1024B00008208DF8110001208DF8120003A808F003 +:1024C000CFFA03208DF800000D208DF801000020C8 +:1024D0008DF8020001208DF8030000A808F00FFB22 +:1024E000032007F0A4FE4FF4804007F05AFF4FF49A +:1024F000800008F0F7FA01214FF4804007F017FF41 +:10250000012008B010BD30B585B00121084607F0A4 +:102510000EF901214FF4804007F01FF900208DF8DB +:1025200010008DF8130001200390DFF8E85903A98B +:10253000284607F0CFF94FF40064039403A9284616 +:1025400007F0C8F90420039003A9284607F0C2F950 +:102550000021084608F00CFB0B21002008F008FBC6 +:102560000221002008F004FB00208DF80800012063 +:102570008DF80A0001900C208DF8090001A808F0E0 +:102580006FFA01940C208DF8090001A808F068FA90 +:10259000204608F0A7FA042001900C208DF80900CD +:1025A00001A808F05DFA042008F09CFA28208DF8B4 +:1025B00000000F208DF8010000208DF8020001209E +:1025C0008DF8030000A808F09AFA05B030BD30B5C8 +:1025D0008DB0044601214FF4807007F0BEF800A8CA +:1025E00007F0B2F90A20009003208DF804000020C3 +:1025F0008DF8070000A9DFF8300607F06BF908F046 +:10260000CBFA02A808F00DFB4FF48030039002A82B +:1026100008F0F9FA06A808F0ECFADFF8FC5806A969 +:10262000284608F0C6FA072301222146284608F06A +:1026300009FB0121284608F04AFB0121284608F041 +:10264000F6FA0DB030BD38B5DFF8CC48204608F0BA +:1026500039FB4FF47A750221204608F04FFB002821 +:1026600003D12846451E0128F5DA2046BDE8324050 +:1026700008F038BB80B50021DFF89C0808F0D7FAD5 +:1026800000214FF48070BDE8044007F066B80000F8 +:1026900038B5040039D0012007F068FC002007F0AD +:1026A000E0FD4FF40055042007F05CFE012804D142 +:1026B0002846451E80B20028F5D100EE104AB8EE3B +:1026C000400ADFED8A0A80EE800AF0EE000A20EE72 +:1026D000200ADFED870A80EE800ABDEEC00A10EE08 +:1026E000100A401E80B207F0B2FD4FF4804007F0A0 +:1026F00058FE4FF4800008F0F5F9012007F0B1FD15 +:10270000DFF818080121416031BD012007F02EFCDF +:102710000020BDE8324007F0A4BD000030B40146FF +:1027200001200023DFF8F8271C469460946814F019 +:102730000C0FFBD10C460B2C55D8DFE804F02054CD +:10274000545406192031383F464D946844F08004B3 +:102750009460DFF8D0474FF4C0652560146824F01A +:1027600080741460DFF8C047DFF8C05725603BE095 +:102770000346DFF8B447DFF8B857256034E09468C3 +:102780009460DFF8A0474FF4C0652560146824F01A +:1027900080741460DFF89047DFF89857256023E0D5 +:1027A0000223DFF88447DFF8905725601CE00323FD +:1027B000DFF87447DFF88457256015E00423DFF85D +:1027C0006847DFF87C5725600EE00523DFF858479F +:1027D000DFF87057256007E00623DFF84C47DFF885 +:1027E0006857256000E01846002B4AD003EBC3036E +:1027F0000FF668041B1994689460146824F08074C0 +:102800001460146824F0806414609C781D8844EA85 +:102810008514DD786D086D1E44EA05441D7944EA8F +:1028200005645460DC881D7A2D0745EA8414DFF8BE +:102830001C572C60146844F0807414601468A40160 +:10284000FCD55B7943F4C063DFF8D8462360936816 +:10285000936093689360052904D1916841F09001D9 +:10286000916005E00A2903D1916841F4805191609B +:10287000916841F002019160916801F00C01082912 +:10288000FAD1DFF8A4160968DFF8C426914207D20E +:10289000DFF8C0160A6822F4404242F480420A601F +:1028A00030BC70473AE710B5DFF850460121206888 +:1028B00007F03DF9206807F06FF8BDE81040FFF71A +:1028C0003FBC30B40022838A008BDFF83046656855 +:1028D00043EA00400840000255EA102060600840CA +:1028E000884200D10122104630BC704700007A4473 +:1028F000000000472DE9F84F04460D4616464FF4F8 +:1029000020491F78DFF8F4854FF40031D8F8000033 +:1029100007F018F9002808D04846A0F1010900285E +:10292000F2D1FFF7C0FF00208CE0D8F8000001884A +:102930004FF6FF52114001800121D8F8000007F046 +:10294000C9F84FF4805AD1460020C8F80400D8F8DE +:1029500000B0DFF804165846FFF7B3FF002805D192 +:102960004846A0F101090028F1D163E0D1460022D8 +:102970002146584607F0C6F80020C8F80400D8F8E9 +:102980000040DFF8D8152046FFF79BFF002805D14F +:102990004846A0F101090028F1D14BE03146C9B207 +:1029A00020460182C046D1460020C8F80400D8F86D +:1029B0000040DFF8AC152046FFF783FF002805D163 +:1029C0004846A0F101090028F1D133E0012F15D1CB +:1029D000297820460182C046D1460020C8F804006C +:1029E000DFF88015D8F80000FFF76BFF002823D12F +:1029F0004846A0F101090028F2D11BE03846471EE5 +:102A0000C0B2002818D015F8011BD8F800000182C8 +:102A1000C046D1460020C8F80400DFF84815D8F8B1 +:102A20000000FFF74EFF0028E8D14846A0F1010959 +:102A30000028F2D1002005E00121D8F8000007F0BD +:102A400055F80120BDE8F28F2DE9F54F81B00D4614 +:102A50001E464FF420483778DFF8A0444FF4003189 +:102A6000206807F06FF8002808D04046A0F1010860 +:102A70000028F3D1FFF717FF0020D3E0206801887A +:102A80004FF6FF52114001800121206807F022F823 +:102A90004FF48059C84600206060DFF8BCA4D4F829 +:102AA00000B051465846FFF70CFF002805D14046BC +:102AB000A0F101080028F2D191E000229DF8041055 +:102AC000584607F01FF8C84600206060D4F800B0F0 +:102AD000DFF888145846FFF7F4FE002805D1404679 +:102AE000A0F101080028F1D179E0BDF80810C9B2C1 +:102AF00058460182C046C846DFF86C14206807F0CB +:102B000021F8002805D14046A0F101080028F3D1A2 +:102B100065E00121206806F0DDFFC8460020606006 +:102B2000D4F800B051465846FFF7CBFE002805D137 +:102B30004046A0F101080028F2D150E001229DF8A2 +:102B40000410584606F0DEFF022FC84639D2DFF8DF +:102B50001C14206806F0F6FF002805D14046A0F1BD +:102B600001080028F3D13AE00021206806F0D3FFE5 +:102B70002068018B012106F0B9FFC846DFF8F01389 +:102B8000206806F0DFFF002805D14046A0F10108CB +:102B90000028F3D123E02068008AC0B22870307882 +:102BA000401E3070C84620680188890505D540461A +:102BB000A0F101080028F6D111E0012106F0ABFFD9 +:102BC0002BE000206060DFF8AC132068FFF779FE8F +:102BD000002806D14046A0F101080028F3D10020CA +:102BE00020E0012616E0012F0CD1012E0AD100268B +:102BF0003146206806F08FFF2068818A018B012111 +:102C000006F074FF2068818A490603D5008A05F81A +:102C1000010B7F1EFFB2002FE5D10121206806F0D5 +:102C20007AFF0120BDE8FE8F000002402DE9F04749 +:102C300007460D4616464FF42048B04C4FF400317D +:102C4000206806F07FFF002808D04046A0F1010868 +:102C50000028F3D1FFF727FE002089E020680188D3 +:102C60004FF6FF52114001800121206806F032FF2B +:102C70004FF48059C84600206060D4F800A0B649DF +:102C80005046FFF71EFE002805D14046A0F101087E +:102C90000028F2D149E001223946504606F032FFC1 +:102CA000022EC84634D2B149206806F04BFF0028F6 +:102CB00005D14046A0F101080028F4D135E00021FB +:102CC000206806F028FF2068018B012106F00EFF26 +:102CD000C846A749206806F035FF002805D14046C0 +:102CE000A0F101080028F4D11FE02068008AC0B2DA +:102CF0002870C84620680188890505D54046A0F19E +:102D000001080028F6D110E0012106F004FF2AE0B6 +:102D10000020606097492068FFF7D3FD002806D1A6 +:102D20004046A0F101080028F4D1002020E001274E +:102D300016E0012E0CD1012F0AD100273946206858 +:102D400006F0E9FE2068818A018B012106F0CEFEA3 +:102D50002068818A490603D5008A05F8010B761E92 +:102D6000F6B2002EE5D10121206806F0D4FE012044 +:102D7000BDE8F0878048016808292FD168490A68B2 +:102D800042F080720A604268B2F1806F03D10A6833 +:102D900042F080620A600A689201FCD58A6842F0BB +:102DA00002028A608A6802F00C02082AFAD142689C +:102DB000B2F1806F02D10A681201FCD55A49096844 +:102DC000634A914206D263490A6822F4404242F4BF +:102DD00080420A6000210160416070474168B1F1A2 +:102DE000806F09D14E490A6842F080620A600A6821 +:102DF0001201FCD500214160704700000004024030 +:102E00005E48016841F080510160524801688908BC +:102E1000890041F00101016040480FF209010160A1 +:102E2000704700003D48416800290AD000214160F8 +:102E300053490A6842F004020A600FF22901016056 +:102E400010E030BF70474E48016821F00401016076 +:102E500030BF016841F0040101607047801A06002C +:102E60000054004010B5FDF7DEF8807A012803D148 +:102E7000012007F07EF802E0002007F07AF8404CCD +:102E800080211F4806F056FF002817D172B624484B +:102E90003949826802F00C020A60006800F0806024 +:102EA0004860206840F00400206030BF62B62068AF +:102EB00020F004002060BDE810405BE7206820F0AF +:102EC0000400206030BF206840F00400206010BD86 +:102ED0001248006800470F49012806D00CD3032888 +:102EE00007D004D3042806D006E0264904E026498A +:102EF00002E0264900E0264908467047E0380020F5 +:102F000000300140947A002088640240106402403E +:102F10000C3001400000024000200140B07B002046 +:102F200000380240003C0240B838002000127A000D +:102F3000809698000024F40000366E010048E801F5 +:102F4000005A620280F0FA0200BD01058438024096 +:102F50000187930300700040010003008200070016 +:102F60008000070084000700040000100200001029 +:102F70004000001002000300B87B002040380240EF +:102F800010ED00E00004024000080240000C024086 +:102F90000010024010B50C46FFF79DFF214689B294 +:102FA000BDE8104006F0E0BC10B50C46FFF793FFFB +:102FB000214689B2BDE8104006F0D8BCE0B5002338 +:102FC0008DF8083001238DF80A30002A03D10C2235 +:102FD0008DF8092002E008228DF8092004283CD849 +:102FE000DFE800F0030D192222004FF40060019089 +:102FF00028208DF800000F208DF801001CE01846F5 +:10300000019010208DF8090006208DF800000E2098 +:103010008DF8010010E00220019007208DF80000DB +:103020000F208DF8010007E00420019008208DF8A2 +:1030300000000F208DF8010000208DF8020001290A +:1030400003D118468DF8030001E08DF8030001A8B4 +:1030500007F006FD00A807F052FD07BD200110048F +:103060000F03020103F00010060F01020103C0006C +:1030700010080F01020103C00010060F0102010336 +:10308000F00010060F01020103C80010040F020235 +:103090000103A80010020F030201030008B584B069 +:1030A0000023029311B90093019302E00090481E9F +:1030B000019004AB00A907487844183007F026FEB9 +:1030C000009909B100220A70002858BF029805B083 +:1030D00000BD00BFDBE9FFFF00F10103810704D061 +:1030E00010F8011B89B18107FAD10268B2F10131F0 +:1030F000914311F0803F04BF50F8042FF6E710F819 +:10310000011B11B110F8011BFBE7C01A704700004A +:1031100030488168002904BF08B008E0EFF3098255 +:10312000A2F12802036882E8F84F83685A6000F031 +:103130009CF8816859B14A6892E8F84F036002F13F +:10314000280282F3098813F47F4F36D07047224853 +:1031500022490968401A80F308884FF08071C161E4 +:103160001F4981617FF0060E704701BC2046DFF8E1 +:1031700074E000BDFEE71C48006818490968401A61 +:10318000203820F0070080F308884FF0000181F319 +:10319000118862B600F00DF8FEE74FF0000181F3F0 +:1031A00011881249124A0A604FF0800181F3118898 +:1031B00070470E490E4A0A6070474FF0000181F3D4 +:1031C0001188704700BF4FF0800181F3118870476C +:1031D00000BF000024380020E09B0020BC850308CD +:1031E000257B0308753101080000000804ED00E0AC +:1031F0000000001030B504460020A071206A81B0A4 +:1032000000F57A606062E16908001CBF20468847CB +:10321000FFF7D3FFE5681FE0FFF7D5FF206920B176 +:10322000687C2169497C88421DD3287C400710D5E1 +:10323000E868216A401A012806DA284600F082F878 +:10324000FFF7C1FF287C70B1E868616A411A48BF86 +:103250006062FFF7B2FF2D68002DDDD101B0BDE83F +:103260003040FFF7B0BF01B030BD70B5044600205C +:10327000607001202070206938B303E02868206165 +:10328000FFF79BFFFFF79FFF2569002D1CBF2E7CDA +:10329000002E1CD070070ED5E868216A411A01295A +:1032A00005DA284600F04EF8287C20B90DE0616A66 +:1032B000411A48BF606206F0FB001028DED1A86802 +:1032C00080684068007C0028D8D1FFF77CFFA07997 +:1032D00068B900206071206990B12069007C0028E5 +:1032E00020690BD0806880684068A0600CE02046B0 +:1032F000FFF780FFA0790028F9D1EAE7A06003E09A +:10330000A0602070FFF759FF204670BD10B5444CF7 +:103310002078401E2070C0B298B9606888B1FFF76D +:1033200052FF606830B1012020702046FFF735FF62 +:10333000002020706078002804BFBDE81040FFF72F +:103340003CBF10BD10B5816849B1354A126AC260F0 +:103350000A68496802B151600A6000218160017CFD +:1033600011F0030101741BD12D4C216991B9206129 +:10337000207838B9012020702046FFF70EFF00208A +:10338000207001E001206071607848B9BDE810400C +:10339000FFF713BF4A7C437C9A42E8D38142E7D0CF +:1033A00010BD30B51E4D04462978607C81B0491CA3 +:1033B000297005F20C0100E011460A6812B1537C35 +:1033C0009842F9DB22600C60207C40B9FFF7FBFEDD +:1033D0002046FFF7B7FF687808B9FFF7EEFE01B0A7 +:1033E000BDE8304092E730B50D4C81B02578681CBF +:1033F00020702046FFF7D1FE2570607820B901B01B +:10340000BDE83040FFF7D9BE01B030BD00B581B096 +:1034100008F0E4FA02480121017001B000BD00008B +:1034200024380020DFF8400D007870472DE9F04186 +:103430008CB0FDF789F80446DFF8305D2E683FE078 +:1034400096F9080007283AD00B2838DA06F1080761 +:10345000B86C002802D5E16E0818B8644FF0FF314F +:103460003046FA6D926990478046B8F1010F04D159 +:1034700097F84C00B96D09698847B8F1020F0BD174 +:10348000797E38697A688018BA6D52699047002849 +:1034900002D0304608F0CAFB00213046FA6D92692E +:1034A0009047022801D10120B87501213046FA6DFC +:1034B00092699047022802D1304608F069FC3668CC +:1034C000AE42BDD1206E00280BD00A208DF8080036 +:1034D00002208DF80000E06EADF82A0000A801F08F +:1034E000E9FA01200CB0BDE8F08130B585B00446A2 +:1034F0000D46CA208DF800002888ADF80100022092 +:10350000ADF80300BDF80100001D01F015FCCDF879 +:10351000090002220DF10301FEF7A9FD022229464E +:10352000DDF80900801CFEF7A2FD2A882146DDF89F +:103530000900001DFEF79BFD0020288000A9DFF890 +:10354000300C09F053F805B030BDC0F5806032286A +:1035500001DA012070470020704780B5FCF763FD59 +:10356000407B002804D008F0D1FADFF8081C08607E +:1035700001BD80B508F0CAFADFF8FC1B086001BD88 +:1035800018B400F10C030422DFF8EC1B5C7DDB684F +:10359000C0681818201818BCFEF769BD30B414882C +:1035A000651C1580052565541488651C15806354B9 +:1035B00013885C1C1480007A585430BC7047F8B5EE +:1035C0000E4614461D4629884A1C2A8037220A5571 +:1035D00029884A1C2A80027A0A5500F108077A7E57 +:1035E0007868311828880019FEF741FD2888797E0F +:1035F00040182880787E796871184058DFF8741B6D +:103600000968401A0090042200A928880019FEF7D2 +:103610002EFD2888001D288080B2FFF796FF002825 +:1036200003D029462046FFF760FFF1BD2DE9F041A8 +:1036300004460D4616461F46DDF8188008E043464E +:103640003A4629462046FFF7BAFF94F822002D1883 +:10365000B542F4DBBDE8F081F8B5044615461E46D8 +:10366000069F00972269FFF7E1FF2069854206DA8D +:10367000009733462A4600212046FFF7D7FFF1BDC9 +:1036800000F110018A688B7CD2188A60006982423E +:1036900001D10020886000208873704770B582B027 +:1036A00000F1140674684569002D07D500920B4699 +:1036B0002246B17B6118FFF7CFFF73BDAC42009289 +:1036C0000B462246294602DAFFF7C6FF73BDFFF715 +:1036D000ADFF73BD70B504460D461646FFF7DEFF1D +:1036E0000123324629462046FFF758FFA069606152 +:1036F00070BD2DE9F84304460D461646FCF724FF3D +:103700008046FCF790FC81462046FFF739FF04F124 +:103710000807386C012849DB99F80A00002821D0F5 +:10372000B87D002879D000207864B87E3A69F968BD +:103730008B1A834205D0002910D1BB689B1A8342A3 +:103740000CD13B7E002B06D000962B4682182046DB +:10375000FFF782FF02E04FF0FF30F8602046BDE83F +:10376000F2438DE7786CD8F86C10401A7864012821 +:1037700015DA386C7864324629462046FFF78EFF0A +:10378000B87D002808D033462A4639692046FFF71D +:1037900016FF2046FFF774FF3869F8603DE0B87DFA +:1037A00000283AD02046BDE8F24369E7B87D0028FA +:1037B00033D094F9080099F80A1000291BD0092881 +:1037C00001D0072805D133462A4639692046FFF73C +:1037D000F6FE94F9080008281AD197F92C00012860 +:1037E00016DB386B8068B0F57A7F0BD1B7F94E00E5 +:1037F000012807DA11E0082804D1DFF880094068C1 +:1038000000280AD133462A4639692046FFF7D7FEF9 +:103810002046FFF735FF3869F860BDE8F183F8B559 +:1038200004460D46DFF84469376805E02A4621461C +:103830003846FFF75EFF3F68B742F7D1F1BDF8B5F4 +:1038400004460D46DFF83809C6690FF23400FCF76C +:1038500064FC06F10C07797DF868F26880187A6DCF +:1038600052699047002809D00120B874707A002866 +:1038700004D02A4621463046FFF73BFF0120F2BD27 +:103880003D3E5055500000000288D21C02800A8044 +:10389000704780B50B889B1AADF80030BDF800303A +:1038A000002B09D01018012100F8031C022200A9E6 +:1038B000801EFEF7DCFB01BD0888C01E088001BD2C +:1038C0002DE9F041F0B005460E46FCF73DFE0746F7 +:1038D000FCF7A9FB804610A84FF4C071FEF720F951 +:1038E00000208DF8020006A82821FEF719F901A88A +:1038F0001421FEF715F90020ADF800000446386EDB +:10390000002800F0A08198F9090009F024FA0028A5 +:1039100000F0998100A93046FFF7B6FFA04616E0F7 +:10392000012000FA08F0396E08420ED008EB88003A +:10393000DFF8501801EBC00292F90900012804D108 +:103940000DF1020110A8126A904708F10108B8F1C0 +:103950001D0FE5DB274619E03088421C328089784C +:1039600041553088FFF7F1FD00280DD0BDF800204B +:1039700031462846FFF78DFF31462846FFF7B5FD53 +:1039800000A93046FFF780FF7F1C7FB29DF8020040 +:10399000874280F250813188481C308007EB470015 +:1039A000000110AA825C4A5531884A1C328010AA54 +:1039B000801842784A553288511C3180411C4B781E +:1039C00053554A78032A06D0092A00F021810C2A8F +:1039D00000F0FB80C0E74278032A04D13288531CF0 +:1039E00033808B7853553288531C3380CB785355B2 +:1039F000631CCA7812064AD401AA91F804C004F8DC +:103A000002C0DBB24C799C545B1CDBB200249C549A +:103A10005B1CDBB28C799C545B1CC489DBB24FEA23 +:103A2000142C03F802C05B1CDBB29C545B1C00F23C +:103A30000E04DBB294F802C003F802C05B1CDBB2D8 +:103A4000E4789C545B1CDBB2847C9C545B1CDBB232 +:103A5000C07C9854581CC0B2CB798354401CC0B26F +:103A60000B7A8354401CC0B24B7A8354401CC0B2C2 +:103A7000897A8154441CE4B2224601A93088401955 +:103A8000FEF7F5FA308850FA84F0308069E7D1F813 +:103A900004C006AA4FEA1C4E04F802E0DBB24FEA6B +:103AA0001C249C545B1CDBB203F802C05B1C8C68BA +:103AB000DBB24FEA144C03F802C05B1CDBB24FEAE6 +:103AC000142C03F802C05B1CDBB29C545B1CC9685D +:103AD000DBB20C0C9C545B1CDBB20C0A9C545B1CD0 +:103AE000DBB29954591CD0F81130C9B21C0C8C545B +:103AF000491CC9B21C0A8C54491CC9B28B54491CBC +:103B0000D0F82730C9B21C0C8C54491CC9B21C0A0D +:103B10008C54491CC9B28B544B1C00F22701DBB2F8 +:103B20000C799C545B1CDBB24C799C545B1CCC889C +:103B3000DBB24FEA142C03F802C05B1CDBB29C54CE +:103B40005B1CDBB2097A9954591CD0F81530C9B204 +:103B50001C0C8C54491CC9B21C0A8C54491CC9B297 +:103B60008B54491CD0F81930C9B21C0C8C54491C18 +:103B7000C9B21C0A8C54491CC9B28B54491CD0F8D8 +:103B80001D30C9B21C0C8C54491CC9B21C0A8C547F +:103B9000491CC9B28B54491CD0F82100C9B2030C8E +:103BA0008B54491CC9B2030A8B54491CC9B28854AE +:103BB0004C1CE4B2224606A930884019FEF757FA99 +:103BC000308850FA84F03080CBE600F20301B1F97E +:103BD0000300C0F3072242EA0020A1F80300B1F974 +:103BE0000700C0F3072242EA0020A1F80700B1F95C +:103BF0000500C0F3072242EA0020A1F805000922CF +:103C000030884019FEF733FA308809303080A8E652 +:103C10004278032A09D10222C11C30884019FEF7DC +:103C200026FA3088801C30809BE63088421C328027 +:103C30008978415595E6BDF8002031462846FFF7C2 +:103C400028FE09F0B0F870B0BDE8F0812DE9F04130 +:103C500005460E46FCF7E7F90746DFF8544C207896 +:103C6000401C2070FFF7AFFA6078401C607097F836 +:103C70001880B8F1010F26DB3088404480B2FFF78E +:103C800064FC002803D031462846FFF72EFC30881C +:103C9000411C3180032141553088411C318000F89E +:103CA0000580424607F1190130884019FEF7DFF917 +:103CB000308840443080FF22002107F11900FEF7D0 +:103CC000DCF9002038766078401E6070C0B20028B1 +:103CD00001D1FFF772FABDE8F041FFF717BB38B525 +:103CE00004460D46FCF79FF9817A002909D1417BF2 +:103CF000002906D129884A1C2A8006220A5501215A +:103D0000417331BD38B504460D46288800280CD0D3 +:103D10002046FFF79BFF29462046FFF7E0FF294694 +:103D20002046BDE83440FFF7E0BB31BD14B585B097 +:103D3000049101A90022134614461CC10A21ADF8C2 +:103D4000001004218DF804108DF805000A4605A91D +:103D50000DF10600FEF78BF9042204A90DF10A000B +:103D6000FEF785F900A901A8FFF7BFFB06B010BD5B +:103D7000F8B50446FCF757F9DFF80454296A496C92 +:103D80008A6842F210739A425AD10969002957D1C0 +:103D9000807A002854D0DFF8E46330880C30B0F526 +:103DA000347F01DD002030800120FEF710FCFEF79B +:103DB0004AFCADF802000320FEF709FCFEF743FCC5 +:103DC000ADF80000FEF756FC378802220DF1020123 +:103DD000B8190830FEF74BF9BF1C3780022200A942 +:103DE000BFB2B8190830FEF742F9BF1C3780042271 +:103DF0002146BFB2B8190830FEF739F9381D3080B6 +:103E0000022280B2801900F1080106206B691B6E46 +:103E10001B6A98473088801C3080022280B280194B +:103E200000F1080106206B681B6E1B6A98473088FA +:103E3000801C308070680C30B0F5347F00D2706028 +:103E4000F1BD2DE9F041CD4C6068002828D02188D3 +:103E500088421FD000F070FF054666682788A6EBF1 +:103E600007081FFA88F84246381900F10801284669 +:103E7000FEF7FDF83A4604F1080108EB0500FEF7ED +:103E8000F6F83246294604F10800FEF7F0F8284615 +:103E900000F06AFF626804F108010520FFF746FFA1 +:103EA000002060602080BDE8F0812DE9F04385B0FE +:103EB00006460F469046FCF7B6F881460025D6F830 +:103EC0000900041D3078014601297BD00F2933D029 +:103ED000802900F0A580812900F0AD80822900F0C2 +:103EE000AA80852900F0A780862900F0A48088296F +:103EF00000F0A1808A2900F0A6808B2900F0BF8005 +:103F00008C2900F0CB808D2900F0D780DD2900F0CE +:103F1000FF80DF2900F01581F0292BD0F42935D05E +:103F2000F62944D0F82962D0F92950D0FC291CD0B8 +:103F3000FF2900F0C7807AE099F81600207099F800 +:103F4000170000280CD14FF0FF30009003462A469E +:103F500042F21071082008F05FF9012089F817007B +:103F6000202089F81901012062E099F819012070D8 +:103F700001205DE0DFF83C090168090C217001684F +:103F8000090A61700068A070012051E0D9F81000A2 +:103F9000000E2070D9F81000000C6070D9F81000E5 +:103FA000000AA070D9F81000E070012040E0032260 +:103FB00021462846DFF800399B681B6E1B6A98472C +:103FC000012035E0204609F07BF8012030E0B6F80A +:103FD0000120B6F80300C010C0EB0011D6F80500B0 +:103FE00000EB81112046FEF742F8012020E0284630 +:103FF000ADF800000120D6F80510C9B2012900D1A2 +:104000000320FEF7E4FAFEF71EFBADF80000FEF712 +:1040100031FB022200A92046FEF729F8012007E023 +:10402000D6F8050020702146284608F0B1F8284649 +:1040300005B0BDE8F08329462170214600F07F00DD +:1040400008F0A6F8F3E701202070DFF86C08466856 +:104050002F46307F002801D12846E9E7707A0028F2 +:1040600003D1306E4068804707462046316EC969EB +:104070008847002FDBD0306E80688047D7E701206B +:10408000B6F80310C1F3C101091D884040F00200D9 +:1040900020702146012008F07BF8C8E799F800005D +:1040A000207099F80300607099F80500A07099F8E5 +:1040B0000600E07001202071BAE7204609F014F8EC +:1040C0000546B4E703A9284606F013F802A92846D6 +:1040D00006F089F806F032F80090DFF8E027A2FB3E +:1040E0000067760A46EAC756901B0090042203A98F +:1040F0002046FDF7BCFF042202A9201DFDF7B7FFF3 +:10410000042200A904F10800FDF7B1FF01208FE7A8 +:104110007079DFF8A41751F82060707A00280CD06D +:10412000424639463046FFF7D5FADFF894170820A3 +:10413000FCF7ACFE0120207001E028462070012031 +:1041400076E77079DFF8701751F82060306996F8DB +:10415000221090FBF1F0401E0190042201A920469C +:10416000FDF785FF012063E7FC7B0020BC070020F2 +:1041700058660020E07B0020E47B0020706A00206D +:104180000000002018D00020F0B599B00646FBF7DB +:104190004AFF0546FCF7D8F9D6F809100C1D31780E +:1041A0000A46A12A00F0C881A22A00F0E681A42ACA +:1041B00000F0F181B12A00F07782B22A00F0F98292 +:1041C000B82A00F00782C12A00F01A82CD2A00F036 +:1041D000EA80CE2A00F00081D12A3FD0D22A53D0E3 +:1041E000D32A5AD0D42A77D0D62A00F09C80D72A56 +:1041F00000F09980D82A00F0A080D92A00F09D8094 +:10420000DA2A00F0A480DB2A00F06981DC2A00F0C1 +:104210006D81E12A00F07181E22A00F08081EA2AB2 +:1042200000F0BC80F12A00F0A680F22A00F0ED80B8 +:10423000F32A00F03281F52A00F00881F72A00F015 +:104240001B81FA2A00F0CA82FB2A00F0CC82FD2AE8 +:1042500000F00781FE2A00F0EE821BE100212846D3 +:10426000FCF7D8F895F81A01400709D50FF25C6001 +:10427000FBF753FF95F81A0100F0FB0085F81A01CF +:10428000FFF7DFFD012006E101212846FCF7C2F817 +:10429000012009F00BF80120FDE005F109000021E3 +:1042A000417005F11004E079002813D142F2107535 +:1042B0004FF0FF30009003460A462946082007F0D9 +:1042C000ABFF4FF0FF3301222946082008F014F815 +:1042D0000120E0710120DEE005F2090001214170BA +:1042E00000210171807800281BD105F11004E079CC +:1042F000002813D042F210754FF0FF330A462946CA +:10430000082007F0F9FF4FF0FF300090034601222C +:104310002946082007F080FF0020E071012008F006 +:10432000C5FF0120B7E0D62901D1012000E000201F +:1043300005F1090188700120ADE0D92901D10120E2 +:1043400000E0002005F10901C8700120A3E0DFF8BA +:104350006805056AB5F9560001280ADB0020A5F8B2 +:1043600056004FF0FF3302464FF47A71082007F0F1 +:10437000C3FF01208FE000210CE00A180B5D82F8DA +:104380007030022905D10A5D80F873200A5D80F83B +:104390007420491C0329F0DB01207CE0217880F89F +:1043A0007B10012077E0002612E0DFF80C0545685D +:1043B00005EB4605022204EB460105F15800FDF726 +:1043C00056FEB5F958100FF20C50FBF7A6FE761CFE +:1043D000032EEADB01205EE0002612E0DFF8D804BD +:1043E000056805EB4605022204EB460105F158007D +:1043F000FDF73DFEB5F958100FF2E440FBF78DFED6 +:10440000761C032EEADB012045E02969090601D468 +:10441000012040E02178090201F4E0616278891806 +:10442000A0F87610A178090201F4E061E278891819 +:10443000A0F8781004212046DFF87C24D269126E9F +:1044400092699047002825D0012024E003222146CC +:104450000120DFF864349B681B6E1B6A98470120BB +:1044600019E0122221460220DFF84C349B681B6EB3 +:104470001B6A984701200EE0DFF83C048569286E2E +:1044800080688047002805D00122214605202B6E38 +:104490001B6A9847002019B0F0BD217880F87A1087 +:1044A00090F87A00002806D04FF480510020FBF7E6 +:1044B000E5FF0120EFE7DFF80004C169497A826A6D +:1044C000527A51188069407A4018C0B2002804D14D +:1044D0004FF480510020FBF7D3FF0120DBE7D6F833 +:1044E00005100FF20840FBF718FED3E7D6F80510C9 +:1044F0000FF20440FBF711FECCE795F81A01217882 +:10450000084385F81A0195F81A110FF2F830FBF7F5 +:1045100004FEDFF8B0130220FCF7B8FCBAE795F808 +:104520001A012178884385F81A0195F81A110FF2BB +:10453000E430FBF7F2FDADE794F900500020019064 +:104540004FF0FF30029007460422611C01A8FDF7DE +:104550008EFDB6F80100062806D30422611D02A8CC +:10456000FDF785FD94F909700097029B00220199DF +:10457000284607F051FE20708CE794F90050042281 +:10458000611C01A8FDF773FD00231A460199284616 +:1045900007F0B2FE7FE794F900504FF0FF30029031 +:1045A00007460422611C01A8FDF761FDB6F8010071 +:1045B000062806D30422611D02A8FDF758FD94F9D0 +:1045C00009700097029B00220199284607F0F1FE2E +:1045D00020705FE76178207803280BD18DF80D10EB +:1045E000012905D1A0788DF80E0040B200F041FA03 +:1045F000012050E749B240B208F06AFCC0B24AE775 +:10460000207801460E3903D0091F032914D941E748 +:104610000E208DF80C0060788DF80D00A1788DF8D3 +:104620000E10E2788DF80F2052B249B240B2FBF77B +:104630003DFF00F015FA2DE78DF80C00122802D18D +:1046400060788DF80D009DF80C00132802D1607879 +:104650008DF80E009DF80C00142802D160788DF8BA +:104660000F009DF80C00152802D160788DF80D0020 +:10467000627821780FF2AC20FBF74FFD06208DF811 +:10468000340020780E900DF13D0003A9202200F0A7 +:1046900017FB0B208DF83C000020ADF85E000DA844 +:1046A00000F008FAC0B2F6E694F9000007F0D6FF71 +:1046B00001285DD120780146032908D0062945D07C +:1046C00009290BD00C2925D00D2931D04BE003222C +:1046D000611C0DF10D00FDF7CAFC49E00722611CC9 +:1046E0000DF10D00FDF7C3FCBDF80D00010A41EA14 +:1046F0000020ADF80D00BDF80F00010A41EA0020CE +:10470000ADF80F00BDF81100010A41EA0020ADF834 +:1047100011002DE00322611C0DF10D00FDF7A7FC37 +:10472000BDF80E00010A41EA0020ADF80E001FE0BE +:104730000322611C0DF10D00FDF799FCBDF80E0080 +:10474000010A41EA0020ADF80E0011E00122611CCF +:104750000DF10D00FDF78BFC9DF80D100FF2D4103C +:10476000FBF7DBFC04E08DF80C0060788DF80D00A1 +:104770002078052807D1544801210170687A002863 +:1047800001D1084687E600208DF8340020780E908D +:104790000DF13D0003A9202200F092FA0B208DF8C4 +:1047A0003C000020ADF85E000DA800F083F9C0B217 +:1047B00071E62078052804D14348002101700120CA +:1047C00069E601208DF8340020780E900B208DF8DA +:1047D0003C000DA800F06EF9C0B25CE6304608F06F +:1047E00051FE012057E62078052822D8DFE800F0A6 +:1047F00003210808181F0FF2481006F098F818E077 +:10480000002000900422611C00A8FDF730FC2078F5 +:1048100008F008FE009A01462078FFF787FA08E0C2 +:1048200095F81A0140F0040085F81A0101E0FFF73D +:1048300008FB01202FE6042221460CA8FDF717FCF7 +:104840000422211D0BA8FDF712FC042204F108012B +:1048500000A8FDF70CFC0CA9002005F0FBFB0BA940 +:10486000002005F070FC05F069FC0446134A0023A3 +:1048700000981946101A63EB0101490241EAD05130 +:10488000400208F0BBFF0090844205D2011B4FF0AC +:10489000004005F028FD09E0A04207D2C4F50070F1 +:1048A000009909184FF0004005F01DFD0120F2E5C8 +:1048B00024380020E83800200000002000CA9A3B7D +:1048C000F058002028590020FC7B0020524D205039 +:1048D0004400000047797243616C3D25640000008C +:1048E00041434343616C3D256400000044554D50F5 +:1048F000534554202564000044554D5046494E20F0 +:1049000025640000414420564C203A203078257818 +:1049100000000000524D20564C203A203078257877 +:104920000000000050443A2053657425642025643B +:104930000000000050443A2053432025640000004A +:1049400041505F52455155455354000058487047F7 +:104950002DE9F04182B00C461646012500282DD1E4 +:1049600006EB8600524901EBC007284600FA04F81E +:10497000F86810EA080F08D02346FA6831460FF2AB +:104980009420FBF7CAFB022046E04FF0FF30009076 +:1049900003462A467968204607F03EFC00280BD0E3 +:1049A0002346FA6831460FF27C20FBF7B6FBF86825 +:1049B00048EA0000F8602EE002202DE001282AD10C +:1049C00006EB86003A4901EBC007284600FA04F8D6 +:1049D000F86810EA080F08D12346FA6831460FF24A +:1049E0005420FBF79AFB032515E04FF0FF332A46CE +:1049F0007968204607F080FC002807D02346FA6833 +:104A000031460FF24020FBF788FB00E00325F868F1 +:104A100020EA0800F8602846BDE8F68108F064BA8C +:104A200002B58CB00021ADF82A1001910A218DF851 +:104A3000081000218DF809108DF80A1005218DF855 +:104A40000010019004220CA90DF10900FDF70FFBE5 +:104A50000020ADF82A0000A800F02CF80DB000BD31 +:104A600080B509F0FDF90FF2EC10BDE80240FBF74C +:104A700054BB10B50446C0B209F0FDF921460FF24F +:104A8000E010BDE81040FBF748BB0022C0B21D2873 +:104A90000CD240B200EB8003054800EBC300C068B5 +:104AA000012303FA01F1084200D01A46104670476C +:104AB00018D0002030B587B00446012594F90000D5 +:104AC000062800F29280DFE800F00427355067885E +:104AD0008C0004F1090182B06846202200F0F0F851 +:104AE0000CBC94F90810606840B207F0ECFE022894 +:104AF0000AD1606800B208F02EF8002561680FF254 +:104B00006C10FBF70AFB76E0032874D161680FF2A2 +:104B10006410FBF702FB6EE094F90810606840B285 +:104B200007F079FF032866D161680FF25010FBF798 +:104B3000F4FA60E0618D00A808F026F89DF9040001 +:104B400002280AD1009800B208F005F80025009963 +:104B50000FF23010FBF7E1FA4DE003284BD100993A +:104B60000FF22810FBF7D9FA45E009F007FE0228FA +:104B70000AD1606800B207F0EEFF002561680FF20D +:104B80001410FBF7CAFA36E0032834D161680FF23B +:104B90000C10FBF7C2FA2EE0606805280CD12846FD +:104BA00009F0C3FE02280DD0032824D161680FF25A +:104BB000FC00FBF7B2FA1EE002281CD109F0A4FFAA +:104BC0000228F1D1606800B207F0C5FF00256168D6 +:104BD0000FF2D000FBF7A1FA0DE0204608F032F802 +:104BE00009E0204608F0E4F905E061680FF2C4002E +:104BF000FBF793FA0025284607B030BD0120704727 +:104C00000FB4022004B070470120704700207047A5 +:104C100070470000534D4143202564202564202522 +:104C200064000000534D4120256420256420256444 +:104C300000000000534D52432025642025642025A8 +:104C400064000000534D5220256420256420256413 +:104C500000000000504420536574535400000000CD +:104C600050442055543A202564000000414C4F46E2 +:104C700020256400414C434620256400524C4346A5 +:104C800020256400504C4F4620256400504C43467C +:104C90002025640050414F46202564005041434682 +:104CA0002025640050504F46202564005050434654 +:104CB000202564004558204C4D454C2025640000BB +:104CC00062B38B0708D0521E11F8013B00F8013B7C +:104CD00000F024808B07F6D1830740F0208000BFCE +:104CE000103A07D330B4B1E83810103AA0E83810C1 +:104CF000F9D230BC530724BFB1E80810A0E808106F +:104D000044BF51F8043B40F8043BD20724BF31F8BC +:104D1000022B20F8022B44BF0B7803707047083A2F +:104D200007D3B1E80810083A40F8043B40F804CB38 +:104D3000F7D25307E4E7000030B5134D044681B0C5 +:104D4000287820B9281D09F05BFF01202870281D54 +:104D500009F070FF20460AF0C9FD0446281D09F03D +:104D60008AFF204601B030BD30B5074D044681B002 +:104D7000281D09F05FFF20460AF004FF281D01B03E +:104D8000BDE8304009F077BF3CFD002000B583B09E +:104D90000020ADF8040000208DF8060000208DF8FA +:104DA0000700012000900DF106037622D02100209B +:104DB000FBF73AFA002801D1002044E076208DF874 +:104DC00004009DF8060050F020008DF80500022335 +:104DD00001AAD0210020FBF7E9F9002801D1002029 +:104DE00031E0012000900DF107034922D02100207D +:104DF000FBF71AFA002801D1002024E049208DF8A1 +:104E000004009DF8070050F001008DF80500022312 +:104E100001AAD0210020FBF7C9F9002801D1002008 +:104E200011E076208DF804009DF806008DF805004D +:104E3000022301AAD0210020FBF7B8F9002801D1F4 +:104E4000002000E001200EBD38B50400FBF7EBF8B0 +:104E50000500DFF8B80C0078401CDFF8B01C0870C3 +:104E6000FEF7B1F9DFF8A40C4078401CDFF89C1C79 +:104E70004870210089B22800FBF78EFADFF88C0C0D +:104E80004078401EDFF8841C4870C0B2002801D171 +:104E9000FEF793F9FEF73AFA31BD10B582B0002063 +:104EA000ADF80000FBF7BFF804006B208DF80000A0 +:104EB00080208DF80100022300AAD0210020FBF7FA +:104EC00075F9002801D1002094E064212000FBF74F +:104ED00063FAFFF75BFF002801D100208AE06B2016 +:104EE0008DF8000000208DF80100022300AAD021D7 +:104EF0000020FBF75BF9002801D100207AE028218F +:104F00002000FBF749FA19208DF8000004208DF8E5 :104F10000100022300AAD0210020FBF747F9002856 -:104F200001D1002056E01B208DF8000008208DF8EC +:104F200001D1002066E01A208DF8000003208DF8E2 :104F30000100022300AAD0210020FBF737F9002846 -:104F400001D1002046E01D208DF8000003208DF8DF +:104F400001D1002056E01B208DF8000008208DF8CC :104F50000100022300AAD0210020FBF727F9002836 -:104F600001D1002036E06A208DF8000000208DF885 +:104F600001D1002046E01D208DF8000003208DF8BF :104F70000100022300AAD0210020FBF717F9002826 -:104F800001D1002026E06C208DF800003F208DF834 -:104F900001009DF80110DFF8140DFBF7BEF80223A5 -:104FA00000AAD0210020FBF701F9002801D1002040 -:104FB00010E06B208DF8000040208DF801000223E6 +:104F800001D1002036E06A208DF8000000208DF865 +:104F90000100022300AAD0210020FBF707F9002816 +:104FA00001D1002026E06C208DF800003F208DF814 +:104FB00001009DF80110DFF8140DFBF7AEF8022395 :104FC00000AAD0210020FBF7F1F8002801D1002031 -:104FD00000E0012016BD0178407850EA012000B2BF -:104FE000704780B502200090DFF8C43C6B22D021CE -:104FF0000020FBF719F9002801D100205BE0012017 -:105000000090DFF8B03C1A22D0210020FBF70CF909 -:10501000002801D100204EE001200090DFF8983CEC -:105020001B22D0210020FBF7FFF8002801D100202F -:1050300041E001200090DFF8843C1C22D0210020B8 -:10504000FBF7F2F8002801D1002034E001200090A5 -:10505000DFF86C3C1D22D0210020FBF7E5F800288A -:1050600001D1002027E001200090DFF8583C6A229F -:10507000D0210020FBF7D8F8002801D100201AE049 -:1050800001200090DFF8403C3822D0210020FBF7BF -:10509000CBF8002801D100200DE001200090DFF8BE -:1050A0002C3C1922D0210020FBF7BEF8002801D1AA -:1050B000002000E0012002BD80B50020ADF8000016 -:1050C0006B208DF80000DFF8E80B00788DF8010008 -:1050D000022300AAD0210020FBF768F8002801D1A4 -:1050E000002090E06C208DF80000DFF8C40B4078C1 -:1050F0008DF80100022300AAD0210020FBF756F80A -:10510000002801D100207EE01A208DF80000DFF891 -:10511000A00B00798DF80100022300AAD021002005 -:10512000FBF744F8002801D100206CE01B208DF82B -:105130000000DFF87C0B40798DF80100022300AA03 -:10514000D0210020FBF732F8002801D100205AE0DE -:105150001C208DF80000DFF8580B80798DF80100D5 -:10516000022300AAD0210020FBF720F8002801D15B -:10517000002048E01D208DF80000DFF8340BC079D6 -:105180008DF80100022300AAD0210020FBF70EF8C1 -:10519000002801D1002036E06A208DF80000DFF8F9 -:1051A000100BC0788DF80100022300AAD021002046 -:1051B000FAF7FCFF002801D1002024E019208DF827 -:1051C0000000DFF8EC0A80788DF80100022300AAC5 -:1051D000D0210020FAF7EAFF002801D1002012E0D8 -:1051E00038208DF80000DFF8C80A007A8DF8010039 -:1051F000022300AAD0210020FAF7D8FF002801D10D -:10520000002000E0012002BD10B582B00020ADF802 -:105210000000DFF89C0A007840060FD56B208DF85F -:10522000000000208DF80100022300AAD0210020F8 -:10523000FAF7BCFF002801D10020B9E06C208DF8FE -:105240000000DFF86C0A407810F0F8008DF80100DB -:10525000022300AAD0210020FAF7A8FF002801D1DC -:105260000020A5E06A208DF8000000208DF80100E4 +:104FD00010E06B208DF8000040208DF801000223C6 +:104FE00000AAD0210020FBF7E1F8002801D1002021 +:104FF00000E0012016BD0178407850EA012000B29F +:10500000704780B502200090DFF8C43C6B22D021AD +:105010000020FBF709F9002801D100205BE0012006 +:105020000090DFF8B03C1A22D0210020FBF7FCF8FA +:10503000002801D100204EE001200090DFF8983CCC +:105040001B22D0210020FBF7EFF8002801D100201F +:1050500041E001200090DFF8843C1C22D021002098 +:10506000FBF7E2F8002801D1002034E00120009095 +:10507000DFF86C3C1D22D0210020FBF7D5F800287A +:1050800001D1002027E001200090DFF8583C6A227F +:10509000D0210020FBF7C8F8002801D100201AE039 +:1050A00001200090DFF8403C3822D0210020FBF79F +:1050B000BBF8002801D100200DE001200090DFF8AE +:1050C0002C3C1922D0210020FBF7AEF8002801D19A +:1050D000002000E0012002BD80B50020ADF80000F6 +:1050E0006B208DF80000DFF8E80B00788DF80100E8 +:1050F000022300AAD0210020FBF758F8002801D194 +:10510000002090E06C208DF80000DFF8C40B4078A0 +:105110008DF80100022300AAD0210020FBF746F8F9 +:10512000002801D100207EE01A208DF80000DFF871 +:10513000A00B00798DF80100022300AAD0210020E5 +:10514000FBF734F8002801D100206CE01B208DF81B +:105150000000DFF87C0B40798DF80100022300AAE3 +:10516000D0210020FBF722F8002801D100205AE0CE +:105170001C208DF80000DFF8580B80798DF80100B5 +:10518000022300AAD0210020FBF710F8002801D14B +:10519000002048E01D208DF80000DFF8340BC079B6 +:1051A0008DF80100022300AAD0210020FAF7FEFFAB +:1051B000002801D1002036E06A208DF80000DFF8D9 +:1051C000100BC0788DF80100022300AAD021002026 +:1051D000FAF7ECFF002801D1002024E019208DF817 +:1051E0000000DFF8EC0A80788DF80100022300AAA5 +:1051F000D0210020FAF7DAFF002801D1002012E0C8 +:1052000038208DF80000DFF8C80A007A8DF8010018 +:10521000022300AAD0210020FAF7C8FF002801D1FC +:10522000002000E0012002BD10B582B00020ADF8E2 +:105230000000DFF89C0A007840060FD56B208DF83F +:10524000000000208DF80100022300AAD0210020D8 +:10525000FAF7ACFF002801D10020B9E06C208DF8EE +:105260000000DFF86C0A407810F0F8008DF80100BB :10527000022300AAD0210020FAF798FF002801D1CC -:10528000002095E0002400E0641C062C10DA14F1E4 -:1052900013008DF8000000208DF80100022300AA01 -:1052A000D0210020FAF782FF0028EDD100207FE016 -:1052B00019208DF8000000208DF80100022300AABB -:1052C000D0210020FAF772FF002801D100206FE002 -:1052D0001A208DF8000003208DF801004FF4FA64C5 -:1052E0002000B0F5FA7F13D0B0F57A7F09D0B0F581 -:1052F000FA6F14D19DF8010050F018008DF80100EC -:1053000011E09DF8010050F010008DF801000AE056 -:105310009DF8010050F008008DF8010003E09DF8B1 -:1053200001008DF80100022300AAD0210020FAF725 -:105330003DFF002801D100203AE0B4F5FA7F0DD0FE -:10534000B4F57A7F06D0B4F5FA6F0BD103208DF84F -:1053500001000AE002208DF8010006E001208DF82E -:10536000010002E000208DF801001B208DF80000F4 -:105370009DF80100C0008DF80100022300AAD02191 -:105380000020FAF713FF002801D1002010E0382098 -:105390008DF8000000208DF80100022300AAD02122 -:1053A0000020FAF703FF002801D1002000E00120CF -:1053B00016BD00B583B00020ADF8060000208DF8C2 -:1053C00004006B208DF8060001208DF807000223F1 -:1053D0000DF10602D0210120FAF7E8FE002801D1E4 -:1053E000002023E02820FFF71FFD0120009001ABE3 -:1053F0006C22D0210120FAF717FF002801D10020EC -:1054000014E06C208DF806009DF8040010F0C00038 -:105410008DF8070002230DF10602D0210120FAF7D2 -:10542000C5FE002801D1002000E001200EBD2DE9BD -:10543000F04F85B004000D0016001F000020ADF8ED -:10544000040002A80021002206C0083806208DF8BA -:10545000060038208DF8040000208DF80500022396 -:1054600001AAD0210120FAF7A1FE002802D15FF0A5 -:10547000FF3070E123208DF8040000208DF8050036 -:10548000022301AAD0210120FAF790FE002802D1C0 -:105490005FF0FF305FE16A208DF8040000208DF896 -:1054A0000500022301AAD0210120FAF77FFE00287F -:1054B00002D15FF0FF304EE16A208DF80400042035 -:1054C0008DF80500022301AAD0210120FAF76EFE13 -:1054D000002802D15FF0FF303DE11A208DF8040072 -:1054E00001208DF80500022301AAD0210120FAF73E -:1054F0005DFE002802D15FF0FF302CE119208DF80D -:10550000040000208DF80500022301AAD02101200B -:10551000FAF74CFE002802D15FF0FF301BE11B20A0 -:105520008DF804008DF80540022301AAD021012046 -:10553000FAF73CFE002802D15FF0FF300BE1FFB22A -:10554000002F0FD01C208DF804008DF80540022399 -:1055500001AAD0210120FAF729FE002802D15FF02C -:10556000FF30F8E064B2002C02D0C820FFF75CFCEA -:105570006A208DF8040044208DF80500022301AA5A -:10558000D0210120FAF712FE002802D15FF0FF308F -:10559000E1E023208DF80400FFB2002F03D00820A3 -:1055A0008DF8050002E070208DF80500022301AAA5 -:1055B000D0210120FAF7FAFD002802D15FF0FF3078 -:1055C000C9E00A20FFF730FC002408E0E4B2002024 -:1055D00045F82400E4B2002046F82400641CE4B23C -:1055E000032CF3D35FF00009B9F1320F6EDA0A2011 -:1055F000FFF71AFC0220009002AB7222D02101209A -:10560000FAF712FE002802D15FF0FF30A3E002A8F3 -:10561000FFF7E1FC9DF8061090FBF1F8B8F1070FD9 -:1056200002DA7FF0010096E000241AE05FFA8AFABD -:1056300055F82AB05FFA8AFA02A810EB4A00FFF781 -:10564000CAFC0BFA80F05FFA8AFA45F82A001AF1D0 -:10565000010A5FFA8AFABAF1030FE7D319F10109D7 -:10566000641CE4B24445BFDAB9F1320FBCDA9DF8EC -:105670000600009002AB7422D0210120FAF7D4FD7D -:10568000002802D15FF0FF3065E0FFB2002F1AD092 -:105690005FF0000A5FFA8AFABAF1030FDED25FFA0E -:1056A0008AFA56F82AB05FFA8AFA02A810EB4A0082 -:1056B000FFF791FC0BFA80F05FFA8AFA46F82A00AD -:1056C0001AF1010AE6E75FF0000AC2E723208DF82D -:1056D000040000208DF80500022301AAD02101203A -:1056E000FAF764FD002802D15FF0FF3033E05FF08D -:1056F000000A0FE05FFA8AFA55F82A004FF47A712F -:105700004843322190FBF1F05FFA8AFA45F82A000B -:105710001AF1010A5FFA8AFABAF1030FEAD3FFB26B -:10572000002F17D05FF0000A0FE05FFA8AFA56F8F0 -:105730002A004FF47A714843322190FBF1F05FFA6E -:105740008AFA46F82A001AF1010A5FFA8AFABAF1CF -:10575000030FEAD3012005B0BDE8F08F2DE9F04337 -:1057600089B004000D00160000275FF0010801A8B1 -:10577000002101605FF000090320009001AB0D22C1 -:10578000D0210120FAF750FD002801D15FF0FF3849 -:105790005FF0000905E005A8002140F8291019F183 -:1057A0000109B9F1030F11DA01A819F80000002866 -:1057B000F1D001A819F80000DFF8A81911EB40009A -:1057C00030F8020C05A941F82900E8E75FF000096C -:1057D0001FE002A850F82900DFF88C19884207DA88 -:1057E000DFF88809FAF799FC012010FA09F007435D -:1057F00002A850F82900DFF87819884207DBDFF8A3 -:105800007409FAF78AFC012010FA09F0074319F12C -:105810000109B9F1030F2BDA55F8290056F82910C0 -:10582000401A0AF017FC02A941F8290005A850F80F -:1058300029000028CDD002A850F8290005A951F868 -:10584000291090FBF1F0B0F57A700AF003FC24F80F -:10585000190034F9190040F2F5118842D7DBDFF85E -:105860001809FAF75AFC012010FA09F00743CEE7AD -:10587000B4F904000090B4F90230B4F90020390002 -:10588000DFF8F808FAF749FC002F05D0DFF8F00838 -:10589000FAF743FC7FF00208404640B209B0BDE889 -:1058A000F08338B505000020ADF800000020ADF809 -:1058B0000200FAF7B8FB040038208DF80000002041 -:1058C0008DF80100022300AAD0210020FAF76EFC17 -:1058D000002801D1002074E000F0D3FA002801D1A3 -:1058E00000206EE01F208DF800004B208DF8010095 -:1058F000022300AAD0210020FAF758FC002801D189 -:1059000000205EE01E208DF8000006208DF80100CA +:105280000020A5E06A208DF8000000208DF80100C4 +:10529000022300AAD0210020FAF788FF002801D1BC +:1052A000002095E0002400E0641C062C10DA14F1C4 +:1052B00013008DF8000000208DF80100022300AAE1 +:1052C000D0210020FAF772FF0028EDD100207FE006 +:1052D00019208DF8000000208DF80100022300AA9B +:1052E000D0210020FAF762FF002801D100206FE0F2 +:1052F0001A208DF8000003208DF801004FF4FA64A5 +:105300002000B0F5FA7F13D0B0F57A7F09D0B0F560 +:10531000FA6F14D19DF8010050F018008DF80100CB +:1053200011E09DF8010050F010008DF801000AE036 +:105330009DF8010050F008008DF8010003E09DF891 +:1053400001008DF80100022300AAD0210020FAF705 +:105350002DFF002801D100203AE0B4F5FA7F0DD0EE +:10536000B4F57A7F06D0B4F5FA6F0BD103208DF82F +:1053700001000AE002208DF8010006E001208DF80E +:10538000010002E000208DF801001B208DF80000D4 +:105390009DF80100C0008DF80100022300AAD02171 +:1053A0000020FAF703FF002801D1002010E0382088 +:1053B0008DF8000000208DF80100022300AAD02102 +:1053C0000020FAF7F3FE002801D1002000E00120C0 +:1053D00016BD00B583B00020ADF8060000208DF8A2 +:1053E00004006B208DF8060001208DF807000223D1 +:1053F0000DF10602D0210120FAF7D8FE002801D1D4 +:10540000002023E02820FFF71FFD0120009001ABC2 +:105410006C22D0210120FAF707FF002801D10020DB +:1054200014E06C208DF806009DF8040010F0C00018 +:105430008DF8070002230DF10602D0210120FAF7B2 +:10544000B5FE002801D1002000E001200EBD2DE9AD +:10545000F04F85B004000D0016001F000020ADF8CD +:10546000040002A80021002206C0083806208DF89A +:10547000060038208DF8040000208DF80500022376 +:1054800001AAD0210120FAF791FE002802D15FF095 +:10549000FF3070E123208DF8040000208DF8050016 +:1054A000022301AAD0210120FAF780FE002802D1B0 +:1054B0005FF0FF305FE16A208DF8040000208DF876 +:1054C0000500022301AAD0210120FAF76FFE00286F +:1054D00002D15FF0FF304EE16A208DF80400042015 +:1054E0008DF80500022301AAD0210120FAF75EFE03 +:1054F000002802D15FF0FF303DE11A208DF8040052 +:1055000001208DF80500022301AAD0210120FAF71D +:105510004DFE002802D15FF0FF302CE119208DF8FC +:10552000040000208DF80500022301AAD0210120EB +:10553000FAF73CFE002802D15FF0FF301BE11B2090 +:105540008DF804008DF80540022301AAD021012026 +:10555000FAF72CFE002802D15FF0FF300BE1FFB21A +:10556000002F0FD01C208DF804008DF80540022379 +:1055700001AAD0210120FAF719FE002802D15FF01C +:10558000FF30F8E064B2002C02D0C820FFF75CFCCA +:105590006A208DF8040044208DF80500022301AA3A +:1055A000D0210120FAF702FE002802D15FF0FF307F +:1055B000E1E023208DF80400FFB2002F03D0082083 +:1055C0008DF8050002E070208DF80500022301AA85 +:1055D000D0210120FAF7EAFD002802D15FF0FF3068 +:1055E000C9E00A20FFF730FC002408E0E4B2002004 +:1055F00045F82400E4B2002046F82400641CE4B21C +:10560000032CF3D35FF00009B9F1320F6EDA0A20F0 +:10561000FFF71AFC0220009002AB7222D021012079 +:10562000FAF702FE002802D15FF0FF30A3E002A8E3 +:10563000FFF7E1FC9DF8061090FBF1F8B8F1070FB9 +:1056400002DA7FF0010096E000241AE05FFA8AFA9D +:1056500055F82AB05FFA8AFA02A810EB4A00FFF761 +:10566000CAFC0BFA80F05FFA8AFA45F82A001AF1B0 +:10567000010A5FFA8AFABAF1030FE7D319F10109B7 +:10568000641CE4B24445BFDAB9F1320FBCDA9DF8CC +:105690000600009002AB7422D0210120FAF7C4FD6D +:1056A000002802D15FF0FF3065E0FFB2002F1AD072 +:1056B0005FF0000A5FFA8AFABAF1030FDED25FFAEE +:1056C0008AFA56F82AB05FFA8AFA02A810EB4A0062 +:1056D000FFF791FC0BFA80F05FFA8AFA46F82A008D +:1056E0001AF1010AE6E75FF0000AC2E723208DF80D +:1056F000040000208DF80500022301AAD02101201A +:10570000FAF754FD002802D15FF0FF3033E05FF07C +:10571000000A0FE05FFA8AFA55F82A004FF47A710E +:105720004843322190FBF1F05FFA8AFA45F82A00EB +:105730001AF1010A5FFA8AFABAF1030FEAD3FFB24B +:10574000002F17D05FF0000A0FE05FFA8AFA56F8D0 +:105750002A004FF47A714843322190FBF1F05FFA4E +:105760008AFA46F82A001AF1010A5FFA8AFABAF1AF +:10577000030FEAD3012005B0BDE8F08F2DE9F04317 +:1057800089B004000D00160000275FF0010801A891 +:10579000002101605FF000090320009001AB0D22A1 +:1057A000D0210120FAF740FD002801D15FF0FF3839 +:1057B0005FF0000905E005A8002140F8291019F163 +:1057C0000109B9F1030F11DA01A819F80000002846 +:1057D000F1D001A819F80000DFF8A81911EB40007A +:1057E00030F8020C05A941F82900E8E75FF000094C +:1057F0001FE002A850F82900DFF88C19884207DA68 +:10580000DFF88809FAF789FC012010FA09F007434C +:1058100002A850F82900DFF87819884207DBDFF882 +:105820007409FAF77AFC012010FA09F0074319F11C +:105830000109B9F1030F2BDA55F8290056F82910A0 +:10584000401A0AF017FC02A941F8290005A850F8EF +:1058500029000028CDD002A850F8290005A951F848 +:10586000291090FBF1F0B0F57A700AF003FC24F8EF +:10587000190034F9190040F2F5118842D7DBDFF83E +:105880001809FAF74AFC012010FA09F00743CEE79D +:10589000B4F904000090B4F90230B4F900203900E2 +:1058A000DFF8F808FAF739FC002F05D0DFF8F00828 +:1058B000FAF733FC7FF00208404640B209B0BDE879 +:1058C000F08338B505000020ADF800000020ADF8E9 +:1058D0000200FAF7A8FB040038208DF80000002031 +:1058E0008DF80100022300AAD0210020FAF75EFC07 +:1058F000002801D1002074E000F0D3FA002801D183 +:1059000000206EE01F208DF800004B208DF8010074 :10591000022300AAD0210020FAF748FC002801D178 -:1059200000204EE069208DF80000C0208DF80100B5 +:1059200000205EE01E208DF8000006208DF80100AA :10593000022300AAD0210020FAF738FC002801D168 -:1059400000203EE0012201210320FAF7A7FD0020FC -:10595000FAF7A6FD38208DF8000040208DF80100F0 -:10596000022300AAD0210020FAF720FC002801D150 -:10597000002026E0012028702000407DC04601283C -:1059800010D001212000FAF707FDBDF80200401CED -:10599000ADF80200BDF802003228EDD3DFF8E407CD -:1059A000FAF7BBFB012200210320FAF777FD002064 -:1059B000FAF776FD00F05BFB002801D1002000E043 -:1059C000012032BD70B58EB0040000A80021002275 -:1059D00006C00838012500260BA80021002200235C -:1059E0000EC00C3808A80021002200230EC00C387D -:1059F00005A80021002200230EC00C3802A80021B7 -:105A0000002200230EC00C38FFF7EBFA002801D16A -:105A1000002056E0FFF7F8FB002806D00126FFF72C -:105A2000C8FC002803D100204BE0002049E00123FE -:105A300002AA08A90020FFF7FAFC05006DB2012DAB -:105A400004D0DFF83C07FAF768FB1CE0012305AA45 -:105A50000BA97FF01F00FFF7EAFC05006DB2012DD6 -:105A600004D0DFF81407FAF758FB0CE005AA02A9E6 -:105A700000A8FFF773FE05006DB2012D03D0DFF81B -:105A8000EC06FAF74AFB2670BDF800006070BDF91D -:105A900000000012A070BDF80200E070BDF9020025 -:105AA00000122071BDF804006071BDF904000012FD -:105AB000A071E571FFF700FB002801D1002000E094 -:105AC00001200EB070BD80B5DFF8BC06007800285C -:105AD00009D1FFF7D2F9002801D1002004E0DFF856 -:105AE000A80601210170012002BD00002438002019 -:105AF00000B583B000208DF806000020ADF804004A -:105B0000012000900DF106036B22D0210020FAF74E -:105B10008BFB002801D100207FE09DF806004006A5 -:105B200012D56B208DF804009DF8060010F0BF0020 -:105B30008DF80500022301AAD0210020FAF736FBD8 -:105B4000002801D1002068E0012000900DF106033B -:105B50006C22D0210020FAF767FB002801D1002039 -:105B60005BE06C208DF804009DF8060010F0C70083 -:105B70008DF80500022301AAD0210020FAF716FBB8 -:105B8000002801D1002048E01D208DF804004320AA +:1059400000204EE069208DF80000C0208DF8010095 +:10595000022300AAD0210020FAF728FC002801D158 +:1059600000203EE0012201210320FAF797FD0020EC +:10597000FAF796FD38208DF8000040208DF80100E0 +:10598000022300AAD0210020FAF710FC002801D140 +:10599000002026E0012028702000407DC04601281C +:1059A00010D001212000FAF7F7FCBDF80200401CDE +:1059B000ADF80200BDF802003228EDD3DFF8E407AD +:1059C000FAF7ABFB012200210320FAF767FD002064 +:1059D000FAF766FD00F05BFB002801D1002000E033 +:1059E000012032BD70B58EB0040000A80021002255 +:1059F00006C00838012500260BA80021002200233C +:105A00000EC00C3808A80021002200230EC00C385C +:105A100005A80021002200230EC00C3802A8002196 +:105A2000002200230EC00C38FFF7EBFA002801D14A +:105A3000002056E0FFF7F8FB002806D00126FFF70C +:105A4000C8FC002803D100204BE0002049E00123DE +:105A500002AA08A90020FFF7FAFC05006DB2012D8B +:105A600004D0DFF83C07FAF758FB1CE0012305AA35 +:105A70000BA97FF01F00FFF7EAFC05006DB2012DB6 +:105A800004D0DFF81407FAF748FB0CE005AA02A9D6 +:105A900000A8FFF773FE05006DB2012D03D0DFF8FB +:105AA000EC06FAF73AFB2670BDF800006070BDF90D +:105AB00000000012A070BDF80200E070BDF9020005 +:105AC00000122071BDF804006071BDF904000012DD +:105AD000A071E571FFF700FB002801D1002000E074 +:105AE00001200EB070BD80B5DFF8BC06007800283C +:105AF00009D1FFF7D2F9002801D1002004E0DFF836 +:105B0000A80601210170012002BD000024380020F8 +:105B100000B583B000208DF806000020ADF8040029 +:105B2000012000900DF106036B22D0210020FAF72E +:105B30007BFB002801D100207FE09DF80600400695 +:105B400012D56B208DF804009DF8060010F0BF0000 +:105B50008DF80500022301AAD0210020FAF726FBC8 +:105B6000002801D1002068E0012000900DF106031B +:105B70006C22D0210020FAF757FB002801D1002029 +:105B80005BE06C208DF804009DF8060010F0C70063 :105B90008DF80500022301AAD0210020FAF706FBA8 -:105BA000002801D1002038E01C208DF804000020DE +:105BA000002801D1002048E01D208DF8040043208A :105BB0008DF80500022301AAD0210020FAF7F6FA99 -:105BC000002801D1002028E020208DF8040080204A +:105BC000002801D1002038E01C208DF804000020BE :105BD0008DF80500022301AAD0210020FAF7E6FA89 -:105BE000002801D1002018E01F208DF8040080203B +:105BE000002801D1002028E020208DF8040080202A :105BF0008DF80500022301AAD0210020FAF7D6FA79 -:105C0000002801D1002008E0DFF88005007850F07E -:105C10000100DFF87815087001200EBD00B583B0D3 -:105C200000208DF806000020ADF80400012000904F -:105C30000DF106036C22D0210020FAF7F5FA0028B6 -:105C400001D1002030E06C208DF804009DF80600A2 -:105C500050F038008DF80500022301AAD021002061 -:105C6000FAF7A4FA002801D100201DE0DFF81C0596 -:105C7000007880070FD46B208DF8040040208DF849 -:105C80000500022301AAD0210020FAF78FFA00288C -:105C900001D1002008E0DFF8F404007810F0FE00E5 -:105CA000DFF8E814087001200EBD0000DC83030853 -:105CB000787B00207C7B00207D7B00207E7B002089 -:105CC0007F7B00207B7B0020807B00207A7B002074 -:105CD00000B583B000208DF804000020ADF8060068 -:105CE0000120009001AB6C22D0210020FAF79CFA31 -:105CF000002801D1002014E06C208DF806009DF8EA -:105D0000040050F038008DF8070002230DF1060260 -:105D1000D0210020FAF74AFA002801D1002000E043 -:105D200001200EBD7FB504000D0002A80021002255 -:105D300006C008380020ADF80400FAF774F9060030 -:105D4000DFF84C040068401CDFF8441408600120B0 -:105D5000009002AB6B22D0210020FAF765FA0028F0 -:105D600001D100208BE09DF8080040061AD56B2079 -:105D70008DF804009DF8080010F0BF008DF80500B4 -:105D8000022301AAD0210020FAF710FA002801D13D -:105D9000002074E005213000FAF7FEFADFF8F40382 -:105DA000FAF7BBF90120009002AB6C22D021002051 -:105DB000FAF73AFA002801D1002060E09DF80800C7 -:105DC000382108421ED06C208DF804009DF8080090 -:105DD00010F0C7008DF80500022301AAD021002091 -:105DE000FAF7E4F9002801D1002048E0052130004D -:105DF000FAF7D2FADFF8A003FAF78FF9DFF89C037D -:105E000001210160EDB2009502AB3B22D0210020C0 -:105E1000FAF70AFA002805D1DFF88403FAF77DF9CA -:105E200000202CE09DF8090020709DF808006070AB -:105E30009DF80B00A0709DF80A00E0709DF80D0021 -:105E400020719DF80C006071D1480068642190FBBE -:105E5000F1F201FB1200002810D120790090A37804 -:105E60002278CE480168CF48FAF757F9C848006849 -:105E7000CD49884202DBC64800210160012004B000 -:105E800070BD30B583B001240020ADF806000020BD -:105E90008DF80400FAF7C7F805000120009001AB67 -:105EA0006B22D0210020FAF7BFF9002801D1002091 -:105EB0008BE09DF8040040061AD56B208DF8060093 -:105EC0009DF8040010F0BF008DF8070002230DF1CB -:105ED0000602D0210020FAF769F9002801D100203C -:105EE00073E005212800FAF757FAB048FAF715F9D8 -:105EF0001D208DF8060008208DF8070002230DF103 -:105F00000602D0210020FAF751F9002801D1002023 -:105F10005BE00120009001AB6C22D0210020FAF759 -:105F200083F9002801D100204FE06C208DF8060095 -:105F30009DF8040050F080008DF804009DF80400E6 -:105F400050F007008DF804009DF8040010F0C70021 -:105F50008DF804009DF804008DF8070002230DF170 -:105F60000602D0210020FAF721F9002801D10020F3 -:105F70002BE00120009001AB6B22D0210020FAF72A -:105F800053F9002801D100201FE06B208DF8060096 -:105F90009DF8040010F0BF008DF804009DF8040087 -:105FA00050F020008DF804009DF804008DF80700E3 -:105FB00002230DF10602D0210020FAF7F7F800289D -:105FC00001D1002001E02000C0B23EBD80B500201C -:105FD000ADF80000FFF755FF002801D1002045E093 -:105FE0001F208DF800004B208DF80100022300AA2D -:105FF000D0210020FAF7DAF8002801D1002035E09E -:106000001E208DF8000006208DF80100022300AA52 -:10601000D0210020FAF7CAF8002801D1002025E09D -:1060200069208DF80000C0208DF80100022300AA2D -:10603000D0210020FAF7BAF8002801D1002015E09D -:10604000012201210320FAF729FA38208DF80000F7 -:1060500040208DF80100022300AAD0210020FAF789 -:10606000A5F8002801D1002000E0012002BD80B584 -:106070000020ADF80000012200210320FAF70EFAFB -:1060800038208DF8000000208DF80100022300AABE -:10609000D0210020FAF78AF8002801D1002040E042 -:1060A0006B208DF8000000208DF80100022300AA6B -:1060B000D0210020FAF77AF8002801D1002030E042 -:1060C0001D208DF8000000208DF80100022300AA99 -:1060D000D0210020FAF76AF8002801D1002020E042 -:1060E0006C208DF8000000208DF80100022300AA2A -:1060F000D0210020FAF75AF8002801D1002010E042 -:1061000069208DF8000000208DF80100022300AA0C -:10611000D0210020FAF74AF8002801D1002000E041 -:10612000012002BD80B50178012905D1FFF7B9FB37 -:1061300000280AD1002009E00178022905D1FFF7E3 -:1061400041FC002801D1002000E0012002BD80B503 -:1061500017490020FAF776FC16490B20FAF772FC73 -:1061600001BD0000E4670308003E4900A88403085D -:1061700001EFE700B0840308A0840308A0830308AC -:10618000B8840308C0840308F67B0020F77B002056 -:10619000D87B0020C8840308D0840308DC7B00205F -:1061A000D884030830840308A1860100E084030832 -:1061B0000C490308C082030880B50020DFF8681B83 -:1061C0000978002906D1FEF758FEDFF85C1B012292 -:1061D0000A7000E00120C0B202BD00B583B000200B -:1061E0008DF806000020ADF80400012000900DF1AC -:1061F00006036B22D0210120FAF716F8002801D1FE -:1062000000205BE06B208DF804009DF8060010F084 -:10621000BF008DF80500022301AAD0210120F9F763 -:10622000C5FF002801D1002048E0012000900DF1B9 -:1062300006036C22D0210120F9F7F6FF002801D1D6 -:1062400000203BE06C208DF804009DF8060010F063 -:10625000F8008DF80500022301AAD0210120F9F7EA -:10626000A5FF002801D1002028E01B208DF80400A4 -:1062700008208DF80500022301AAD0210120F9F79A -:1062800095FF002801D1002018E01A208DF80400A5 -:1062900003208DF80500022301AAD0210120F9F77F -:1062A00085FF002801D1002008E0DFF8800A00788F -:1062B00050F00200DFF8741A087001200EBD00B51E -:1062C00083B000208DF806000020ADF80400012006 -:1062D00000900DF106036C22D0210120F9F7A4FFF4 -:1062E000002801D1002030E06C208DF804009DF8DA -:1062F000060050F007008DF80500022301AAD02106 -:106300000120F9F753FF002801D100201DE0DFF83C -:106310001C0A0078C0070FD46B208DF804004020C1 -:106320008DF80500022301AAD0210120F9F73EFFD4 -:10633000002801D1002008E0DFF8F009007810F013 -:10634000FD00DFF8E819087001200EBD00B583B02C -:1063500000208DF804000020ADF806000120009018 -:1063600001AB6C22D0210120F9F75EFF002801D19A -:10637000002014E06C208DF806009DF8040050F019 -:1063800007008DF8070002230DF10602D02101203D -:10639000F9F70CFF002801D1002000E001200EBD1C -:1063A0007FB5040002A80021002206C0083800269C -:1063B0000020ADF80400F9F736FE0500012000903A -:1063C00002AB6B22D0210120F9F72EFF002801D16A -:1063D000002083E09DF80800400625D56B208DF84D -:1063E00004009DF8080010F0BF008DF8050002239E -:1063F00001AAD0210120F9F7D9FE002801D10020FF -:106400006CE00A212800F9F7C7FFDFF82409F9F743 -:1064100084FE002603E0F6B200203055761CF6B26A -:10642000062EF8D3012059E00120009002AB6C2227 -:10643000D0210120F9F7F8FE002801D100204DE01D -:106440009DF808000721084225D06C208DF8040033 -:106450009DF8080010F0F8008DF80500022301AA4D -:10646000D0210120F9F7A2FE002801D1002035E05B -:106470000A212800F9F790FFDFF8B808F9F74DFE78 -:10648000002603E0F6B200203055761CF6B2062E48 -:10649000F8D3012022E00620009002AB4322D02155 -:1064A0000120F9F7C1FE002805D1DFF88C08F9F7C3 -:1064B00034FE002012E09DF8090020709DF80800CD -:1064C00060709DF80B00A0709DF80A00E0709DF8C8 -:1064D0000D0020719DF80C006071012004B070BDAA -:1064E0002DE9F64FADF63C6D05000020ADF8080033 -:1064F00003A81421FBF706FB002608A800210022B0 -:1065000000230EC00C385FF0000940F68C10684480 -:106510004FF49661FBF7F6FAFFA8E0304FF496616E -:10652000FBF7F0FA0BA84FF49661FBF7EBFA5FF07C -:106530000008002700240020070000E07F1C032F34 -:1065400080F2BA806B208DF80800781C8DF8090065 -:10655000022302AAD0210120F9F728FE002801D148 -:10656000002099E13220FEF75FFC6A208DF80800D8 -:1065700044208DF80900022302AAD0210120F9F756 -:1065800015FE002801D1002086E1012409E019EB65 -:10659000060608A850F8270019EB000008A941F8E2 -:1065A00027002000441E012875DB23208DF80800F9 -:1065B00070208DF80900022302AAD0210120F9F7EA -:1065C000F5FD002801D1002066E14B20FEF72CFCF0 -:1065D00023208DF8080000208DF80900022302AA6C -:1065E000D0210120F9F7E2FD002801D1002053E17C -:1065F0000220009003AB7222D0210120F9F714FE93 -:10660000002801D1002047E103A8FEF7E4FC00EEDA -:10661000100AB8EEC00A10EE100AFBF731F9DFF8E5 -:106620001C27DFF81C37FBF763F9FBF73FFA8146BD -:10663000B9F148000128B4DB5FF000081DE003A8B1 -:10664000FEF7C9FC18EB060140F68C126A4422F8EA -:1066500011000DF10E00FEF7BEFC18EB0601FFAABB -:10666000E03222F8110004A8FEF7B5FC18EB060191 -:106670000BAA22F8110018F10108C84587DA062094 -:10668000009003AB7422D0210120F9F7CDFD002842 -:10669000D5D1002000E123208DF8080000208DF8DE -:1066A0000900022302AAD0210120F9F77FFD00286A -:1066B0007FF444AF0020EFE0002E01D0340000E072 -:1066C00001245FF0000800200021C5E9000100203E -:1066D0000021C5E9020100200021C5E9040122E0F2 -:1066E000D5E9000140F68C126A4432F91820D3171C -:1066F00080185941C5E90001D5E90201FFAAE0323D -:1067000032F91820D31780185941C5E90201D5E99B -:1067100004010BAA32F91820D31780185941C5E992 -:10672000040118F10108B045DADBD5E900012200C7 -:10673000E31707F031F8C5E90001D5E902012200AD -:10674000E31707F029F8C5E90201D5E904012200A1 -:10675000E31707F021F8C5E904015FF00008DDF850 -:106760003C0E00220023C0E90023DDF83C0E00228D -:106770000023C0E90223DDF83C0E00220023C0E91B -:10678000042382E0DDF83C2ED2E90001CDE90001CE -:1067900040F68C10684430F91800C117D5E9002381 -:1067A000801A994140F68C126A4432F918A05FEAC7 -:1067B000EA7BD5E90023BAEB02027BEB0303A2FBE1 -:1067C00000AB02FB01BB03FB00BBDDE9000110EBEA -:1067D0000A0051EB0B01DDF83C2EC2E90001DDF8A7 -:1067E0003C2ED2E90201CDE90001FFA8E03030F9EA -:1067F0001800C117D5E90223801A9941FFAAE03297 -:1068000032F918A05FEAEA7BD5E90223BAEB02026B -:106810007BEB0303A2FB00AB02FB01BB03FB00BB52 -:10682000DDE9000110EB0A0051EB0B01DDF83C2E15 -:10683000C2E90201DDF83C2ED2E90401CDE90001F4 -:106840000BA830F91800C117D5E90423801A994123 -:106850000BAA32F918A05FEAEA7BD5E90423BAEB68 -:1068600002027BEB0303A2FB00AB02FB01BB03FBB9 -:1068700000BBDDE9000110EB0A0051EB0B01DDF874 -:106880003C2EC2E9040118F10108B045FFF67AAFC9 -:10689000DDF8400E066001200DF6446DBDE8F08F76 -:1068A0002DE9F04389B004000D00160001275FF0C8 -:1068B000000801A8002101600320009001AB002224 -:1068C000D0210120F9F7B0FC002801D15FF0FF379B -:1068D0005FF0000907E04FFA89F905A8002140F8A8 -:1068E000291019F101094FFA89F9B9F1030F17DAE3 -:1068F0004FFA89F901A819F800000028EBD04FFAE7 -:1069000089F901A819F80000DFF8381411EB4000EC -:1069100030F8020C4FFA89F905A941F82900E0E79F -:106920005FF0000925E04FFA89F902A850F8290024 -:10693000DFF81414884208DADFF81004F9F7EDFBE9 -:10694000012010FA09F050EA08084FFA89F902A864 -:1069500050F82900DFF8F813884208DBDFF8F40369 -:10696000F9F7DBFB012010FA09F050EA080819F1E9 -:1069700001094FFA89F9B9F1030F3BDA4FFA89F9A6 -:1069800055F829004FFA89F956F82910401A09F0EC -:1069900061FB4FFA89F902A941F829004FFA89F9F8 -:1069A00005A850F829000028BDD04FFA89F902A89F -:1069B00050F829004FFA89F905A951F8291090FBE0 -:1069C000F1F0B0F57A7009F045FB4FFA89F924F837 -:1069D00019004FFA89F934F9190040F2F51188428B -:1069E000C5DBDD48F9F799FB012010FA09F050EA00 -:1069F0000808BCE74FFA88F8B8F1000F04D0D74870 -:106A0000F9F78BFB7FF00207380040B209B0BDE810 -:106A1000F0832DE9F0439DB00400012501260CA868 -:106A20001821FBF76FF806A81821FBF76BF802A8EE -:106A30000021016000A80021002206C008380027BC -:106A400018A80021002200230EC00C3815A8002130 -:106A5000002200230EC00C3812A8002100220023BF -:106A60000EC00C3803A80021002200230EC00C38F1 -:106A7000BB48D0F80480FEF7B4FA002801D100200A -:106A8000EDE0FEF7C1FB0500EDB2012D09D10127B4 -:106A900002AA06A90CA8FFF723FD002803D10020B5 -:106AA000DDE00020DBE0FEF784FC002801D10020BF -:106AB000D5E0002303AA15A90020FEF7B8FC0600C4 -:106AC00076B2012E02D0A748F9F727FB002312AABD -:106AD00018A97FF01F00FEF7AAFC060076B2012E6F -:106AE00002D0A148F9F719FB18AA15A900A8FFF7C9 -:106AF000D7FE060076B2012E02D09C48F9F70DFBB6 -:106B00005FF0000918E05FFA89F918EB49025FFAB3 -:106B100089F90CA810EBC903D3E900018000A2F8A1 -:106B200058005FFA89F918EB4900B0F958109048FD -:106B3000F9F7F3FA19F101095FFA89F9B9F1030FCD -:106B4000E1D32770BDF800006070BDF900000012AD -:106B5000A070BDF80200E070BDF9020000122071C3 -:106B6000BDF804006071BDF904000012A071E67167 -:106B70000298207202980012607202980014A072AB -:106B800002980016E072DDE90C012073DDE90C01CA -:106B900000B200126073DDE90C010014A073DDE99E -:106BA0000C010016E073DDE90E012074DDE90E0131 -:106BB00000B200126074DDE90E010014A074DDE97A -:106BC0000E010016E074DDE910012075DDE9100109 -:106BD00000B200126075DDE910010014A075DDE956 -:106BE00010010016E075DDE906012076DDE90601F9 -:106BF00000B200126076DDE906010014A076DDE93E -:106C000006010016E076DDE908012077DDE90801DC -:106C100000B200126077DDE908010014A077DDE919 -:106C200008010016E077DDE90A0184F82000DDE9BB -:106C30000A0100B2001284F82100DDE90A01001403 -:106C400084F82200DDE90A01001684F82300FEF72B -:106C500033FA002801D1002001E02800C0B21DB0A5 -:106C6000BDE8F08330B583B004000020ADF8040027 -:106C700000203B494D68697A002907D1286E406899 -:106C80008047F9F7D0F90A21F9F786FB0220009036 -:106C900001AB4122D0210120F9F7C6FA002801D129 -:106CA000002017E09DF805009DF8041050EA01202F -:106CB000032110FB01F04FF47A7190FBF1F01530D5 -:106CC000207000206070687A002802D1286E8068E9 -:106CD000804701203EBD80B50178002905D1FFF72E -:106CE00098FE00280AD1002009E00178012905D189 -:106CF000FFF7B8FF002801D1002000E0012002BD0D -:106D000080B5C0B2062806D10800FFF7ABFF002807 -:106D100001D1002000E0012002BD80B5154901200D -:106D2000F9F790FE01BD0000F67B0020F77B002004 -:106D30001885030820850308288503082D211FF4E2 -:106D40006C56C53FE469030830FD1300388503081D -:106D500079E2D1004085030830850308488503089F -:106D6000000000205085030858850308608503084B -:106D7000888403082C830308002108E0C9B2DFF8E7 -:106D8000E82D8A18C9B20B5C82F83830491CC9B2A8 -:106D90000929F3D3704780B50921DFF8D02D01FB15 -:106DA0000020FFF7E9FF01BD2DE9F04F85B0040099 -:106DB0000D000E20009001AB90225C210220F9F71B -:106DC00033FA002802D15FF0FF3017E10E20009067 -:106DD00001AB90225C210220F9F726FA002802D1AB -:106DE0005FF0FF300AE19DF804008DF801009DF886 -:106DF00005009DF806109DF80720D2B292089DF874 -:106E000007309B0013F00C039DF80860F6B253EABC -:106E100096139DF8086016F03F069DF80970FFB2C2 -:106E2000BF089DF809C05FEA0C1C1CF0300C9DF8EF -:106E30000AE05FFA8EFE5CEA1E1E9DF80AC05FEA59 -:106E4000CC0C1CF0780C9DF80B805FFA88F85CEA9B -:106E500058189DF80BC05FEA4C0C1CF03E0C9DF8D6 -:106E60000C905FFA89F95CEAD9199DF80CC09DF87D -:106E70000DA05FFA8AFA5FEADA1A5AEA4C0A9DF81C -:106E80000DC0CCF3840B8DF800B09DF80DC05FEA07 -:106E90004C0C1CF0060C9DF80EB05FFA8BFB5CEA04 -:106EA000DB1B8DF802B09DF80EC01CF0010C9DF8A4 -:106EB0000FB05FFA8BFB5FEADB1B5BEA4C0C84F8DC -:106EC00003C09DF80EC05FFA8CFC5FEA5C0C5FEAC1 -:106ED0008C0C4FFA8CFC5FEAAC0C84F800C09DF877 -:106EE0000FC01CF0010C9DF810B05FFA8BFB5FEA3D -:106EF000DB1B5BEA4C0C84F804C09DF80FC05FFA02 -:106F00008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA4D -:106F1000AC0C84F801C09DF810C01CF0010C9DF869 -:106F200011B05FFA8BFB5FEADB1B5BEA4C0C84F869 -:106F300005C09DF810C05FFA8CFC5FEA5C0C5FEA4C -:106F40008C0C4FFA8CFC5FEAAC0C84F802C09DF804 -:106F500011C01CF0010C84F806C09DF801405FF0E0 -:106F60000A0C0CFB04F4B4F5A0642C60C0B20A2433 -:106F70006043B0F5A0606860C9B20A2000FB01F070 -:106F8000B0F5A060A860D2B2B2F12000E860DBB238 -:106F9000B3F108002861F6B2B6F120006861FFB2D3 -:106FA00017F12600A8615FFA8EFEBEF12000E861AD -:106FB0005FFA88F8B8F1400028625FFA89F9B9F100 -:106FC000200068625FFA8AFAC5F828A09DF80000E0 -:106FD000E862002000E0401CC0B20D2806D2C0B21A -:106FE00001A9415C0029F6D0002007E09DF81100BE -:106FF000000601D5002001E07FF0090005B0BDE8E2 -:10700000F08F1CB5002400E0641CB4F57A7F12DA1E -:107010000120009001ABB0225C210220F9F704F9B5 -:10702000002802D15FF0FF3007E09DF80400000661 -:10703000EAD4002001E07FF0040016BD80B5DFF83F -:10704000280B90F85400002811D0DFF81C0B90F8A2 -:10705000550000280BD0FFF7D4FF002802D57FF0A1 -:10706000040005E0DFF8000B002180F85510002037 -:1070700002BD10B582B014000022ADF800208222BB -:107080008DF8002001228DF80120002801D0012078 -:1070900000E000209DF8012052EA40008DF8010038 -:1070A000002901D0012000E000209DF8011051EAE4 -:1070B00080008DF80100022300AA5C210220F9F76C -:1070C00075F8002802D15FF0FF3019E0002C0CD0D9 -:1070D000FFF797FF002802D57FF0040010E0DFF8EB -:1070E000880A002180F8551004E0DFF87C0A0121AD -:1070F00080F85510DFF8700A012180F85410002044 -:1071000016BD3EB514001D00DFF85C2A92F854202D -:10711000002A04D10122FFF7ACFF002871D108201A -:10712000009001ABB0225C210220F9F77DF8002825 -:1071300006D1DFF8900CF8F7F0FF5FF0FF3060E069 -:10714000DFF8240A002180F854109DF80400C0B232 -:10715000C009C0B220609DF80400C00010F47E7029 -:107160009DF80510C9B24909C9B20843288006989C -:107170009DF80610890111F4FE519DF80720D2B246 -:107180009208D2B2114301809DF80810890111F4D0 -:10719000FE519DF80920D2B29208D2B2114341802B -:1071A0009DF80A10890111F4FE519DF80B20D2B20E -:1071B0009208D2B211438180079900220A6000220E -:1071C0001BE0D2B230F91230002B06D10B6801243B -:1071D000D2B25500AC4023430B60D2B230F912302A -:1071E00041F6FE74A34207D10B680124D2B25500C8 -:1071F0006D1CAC4023430B60521CD2B2032AE0D377 -:1072000000203EBD10B582B004000020ADF80000A3 -:10721000FFF714FF002802D57FF0040041E085202D -:107220008DF8000020788DF80100022300AA5C216F -:107230000220F8F7BBFF002802D15FF0FF3030E0FA -:1072400086208DF8000060788DF80100022300AAE6 -:107250005C210220F8F7AAFF002802D15FF0FF307E -:107260001FE087208DF80000A0788DF80100022330 -:1072700000AA5C210220F8F799FF002802D15FF0F4 -:10728000FF300EE0002008E0C0B2DFF8DC18411843 -:10729000C0B2025D81F84120401CC0B20328F3D384 -:1072A000002016BD80B50020ADF80000FFF7C6FE37 -:1072B000002802D57FF0040011E081208DF8000045 -:1072C00000208DF80100022300AA5C210220F8F7BB -:1072D0006DFF002802D15FF0FF3000E0002002BD0A -:1072E00030B58BB0040002A800210160FFF7A6FEB4 -:1072F000002802D57FF0040074E0DFF86C0800215C -:1073000080F85410002516E008A951F82010002933 -:107310000DD002A9415608AA52F82020DFF8503DAE -:1073200053F825305A4342FA81F102AA8154401C95 -:107330000328E9DB6D1C052D43DA02A8FFF762FF85 -:10734000002802D55FF0FF304CE007A8019005A8A7 -:10735000009003AB04AA00210020FFF7D2FE002812 -:1073600002D55FF0FF303DE00498002802D07FF0A6 -:10737000040037E0002020E005A931F91010B1F534 -:10738000805F03D108A9002241F8202005A931F926 -:10739000101041F20102914203DB08A9012241F8D9 -:1073A000202005A931F91010B1F5805F04DA08A991 -:1073B0005FF0FF3241F82020401C0328DCDB002076 -:1073C000B6E702A8FFF71EFF002802D55FF0FF30E6 -:1073D00008E0002503E002A8285C28556D1C032D59 -:1073E000F9DB00200BB030BD2DE970438AB00400FA -:1073F0000E00DFF8805C0020059000200490FFF76D -:107400001DFE002802D57FF0040078E0DFF8580761 -:10741000002180F8541005A8019008A8009002AB44 -:1074200003AA00210120FFF76CFE0020002802D0F3 -:107430005FF0FF3063E00398002802D07FF0040083 -:107440005DE004A8019006A8009002AB03AA012108 -:107450000120FFF756FE0020002802D05FF0FF3029 -:107460004DE00398002802D07FF0040047E0E86A6E -:10747000FAF750FB80468946BDF92000BDF9181087 -:10748000401AFAF747FBDFF8F02BDFF8F03BFAF78A -:107490002FFA42464B46FAF72BFA0022DFF8643DFA -:1074A000FAF784FCFAF702FB2060E86AA96948430E -:1074B000FAF730FB04000D00BDF92200BDF91A10E7 -:1074C000401ABDF92410401ABDF91C1000FA81F0D1 -:1074D000FAF720FBDFF84C2DDFF84C3DFAF708FAFD -:1074E00022002B00FAF704FA0022DFF8183DFAF721 -:1074F0005DFCFAF7DBFA30600598049908430AB09E -:10750000BDE8708380B5FFF799FD002802D57FF0B4 -:10751000040004E0002200210020FFF7AAFD02BDC4 -:107520002DE9F0478AB00400894617001D00DDF8F8 -:107530004880DFF8406B002007905FF0000A07A842 -:107540000190CDF8009002AB08AA00210020FFF7BF -:10755000D8FD002802D55FF0FF303DE100201DE09E -:1075600039F91010DFF800268218D278DFF8BC3C19 -:1075700033F91220891ADFF8F025821892F9412098 -:10758000DFF8E435C356D21ADFF8DC3513EB80039D -:107590009B6C03FB021147F82010401C0328DFDB23 -:1075A000DFF8C405006FDFF8C01511EB4000BDF82F -:1075B0000810A0F85810DFF8B005006F401CDFF885 -:1075C000A8150867DFF8A005006F0A2803DBDFF8BD -:1075D000980500210167DFF89005C06E401CDFF8B8 -:1075E0008815C866DFF88005C06E0A2803DBDFF85F -:1075F00078050A21C166002008E0DFF86C1511EB60 -:107600004001B1F958100AFA81FA401CDFF8581508 -:10761000C96E8842F1DB0A2000FB0AF0DFF848154A -:10762000C96EB0FBF1F00490386800907868039060 -:10763000B8680190B8F1000F1DD000983168049A25 -:1076400051434FF47A7291FBF2F1401A0090039883 -:107650007168049A51434FF47A7291FBF2F1401A27 -:1076600003900198B168049A51434FF47A7291FBE8 -:10767000F2F1401A019003980199401A069003987C -:1076800040420199401A0590F06AFAF743FA8046A1 -:10769000894600986421F268069B5A4301FB00204A -:1076A0003169059A02FB0100FAF734FADFF8C829BC -:1076B000DFF8C839FAF71CF942464B46FAF718F9D1 -:1076C000FAF7F4F90490F06AFAF724FA804689464A -:1076D00070690099B269069B5A4301FB0020F16969 -:1076E000059A02FB0100FAF715FADFF88C29DFF89A -:1076F0008C39FAF7FDF842464B46FAF7F9F8FAF7F3 -:10770000D5F90390F06AFAF705FA80468946306A9F -:107710000099726A069B5A4301FB0020B16A059AE0 -:1077200002FB0100FAF7F6F9DFF84C29DFF84C39D3 -:10773000FAF7DEF842464B46FAF7DAF8FAF7B6F906 -:107740000190DFF8240490F938000499DFF8182438 -:1077500092F93920039B5A4301FB0020DFF80814FB -:1077600091F93A10019A02FB01002060DFF8F8035A -:1077700090F93B000499DFF8F02392F93C20039B39 -:107780005A4301FB0020DFF8E01391F93D10019A04 -:1077900002FB01006060DFF8D00390F93E0004991D -:1077A000DFF8C42392F93F20039B5A4301FB0020DA -:1077B000DFF8B41391F94010019A02FB0100A060B8 -:1077C000002D02D0BDF8080028800898002802D0BB -:1077D0007FF0040000E007980AB0BDE8F08700B52C -:1077E00083B00020ADF8060000208DF804000020D2 -:1077F00008E0DFF874134118DFF8342A825C81F85E -:107800004120401C0328F4DB88208DF8060000206E -:107810008DF8070002230DF106025C210220F8F723 -:10782000C5FC002802D15FF0FF3045E089208DF8CB -:10783000060000208DF8070002230DF106025C21EE -:107840000220F8F7B3FC002802D15FF0FF3033E0EC -:107850000120009001AB80225C210220F8F7E4FCBB -:10786000002802D15FF0FF3026E0BF489DF80410E9 -:1078700080F84410DFF8FC17BB48FFF795FA0028A2 -:107880001AD4002008E0B84911EB8001DFF8A429E0 -:1078900052F820208A64401C0328F4DBB2480021FF -:1078A00080F85410B048002180F855100020AE49EF -:1078B0000867AD49C86600200EBD00281FD090F9AA -:1078C000001020291BDA90F90110202917DA90F90D -:1078D0000210202913DA90F900107FF01E02914265 -:1078E0000DDB90F901107FF01E02914207DB90F949 -:1078F00002007FF01E01884201DB012000E0002031 -:10790000C0B270472DE9F04383B004000D001600AB -:107910001F00DDF828805FF00009DFF81C09C06A4D -:10792000012802D002282FD062E0DFF80C09406C59 -:10793000DFF80419096C401AB0F5FA7F58D3DFF864 -:10794000F808DFF8F418496C0164FFF7ABFC8146D6 -:10795000B9F1000F4CD4DFF8E008806B002805D1A6 -:10796000DFF8D808FFF7A9FF002804D1DFF8C8081E -:107970000221C16203E0DFF8C0080021C162FFF705 -:10798000C1FD002869D433E001A8FFF7A9FC8146B6 -:10799000B9F1000F2CD4DFF8A00890F93C009DF954 -:1079A000041088420FD1DFF8900890F93D009DF94E -:1079B0000510884207D1DFF8800890F93E009DF954 -:1079C0000610884201D05FF04009DFF86C08002102 -:1079D000C162002009E0C0B2DFF85C184118C0B2F3 -:1079E00001AA825C81F83C20401CC0B20328F2D37B -:1079F000B9F1000F01D548462FE0CDF800803B00DB -:107A0000320029002000FFF78BFD002825D4012833 -:107A10001ADBDFF82418896B002905D1DFF8181864 -:107A2000DFF81428526C0A64DFF80C1801228A630C -:107A3000DFF80418C96A002903D1DFF8FC17012216 -:107A4000CA6250EA090903E0DFF8EC07002181630C -:107A5000FFF758FD002800D44846BDE8FE8310B566 -:107A600082B00400002C02D17FF07F0078E0DFF8C4 -:107A7000C8271268002A02D17FF0020070E0DFF808 -:107A8000B827126B002A33D0009114F1200314F1AF -:107A9000140214F10C012000FFF734FF002827D452 -:107AA00000211EE0C9B214EB4102B2F90C20C9B2A8 -:107AB000DFF8843713EB81031A61C9B214EB81023A -:107AC0005269C9B2DFF8703713EB8103DA61C9B2CA -:107AD000DFF8642712EB8102C9B254F821305360F9 -:107AE000491CC9B20329DDD3DFF84C17098D218465 -:107AF000DFF84417096B002901D0002826D50021A2 -:107B00001DE0C9B2DFF8302712EB81025268C9B21A -:107B100044F82120C9B214EB4102C9B2DFF818378A -:107B200013EB81031B699381C9B214EB8102C9B2C3 -:107B3000DFF8043713EB8103DB695361491CC9B2D9 -:107B40000329DED3DFF8F016098D2184DFF8E8166B -:107B5000496CDFF8E426926C5118DFF8DC2651649A -:107B600016BDDFF8DC067047247400201C82030871 -:107B700080B5002023E0DFF8C0164118DFF8C426E6 -:107B8000825C81F83C20DFF8B01611EB8001DFF851 -:107B9000B82652F820200A61DFF89C1611EB80010C -:107BA000DFF8A42652F820204A60DFF88C1611EB8B -:107BB0008001DFF8942652F82020CA61401C032877 -:107BC000D9DBDFF8740600210185DFF86C0600219F -:107BD0004164DFF8640632218164DFF85C0600212D -:107BE0000163DFF8540600214163DFF84C060121F0 -:107BF000C162DFF844065FF0FF310160DFF838064C -:107C0000002181630320FFF7C6F8FFF7E8FD002895 -:107C100005D5DFF83806F8F780FA002037E0DFF8FE -:107C20001C06FFF74AFE002819D0DFF81006FFF700 -:107C3000E9FA002805D5DFF81806F8F76EFA0020F3 -:107C400025E0FFF72FFB002804D5DFF8EC05012124 -:107C5000C16211E0DFF8E0050021C1620CE0FFF72E -:107C600021FB002804D5DFF8D0050121C16203E023 -:107C7000DFF8C4050221C162DFF8BC050121016003 -:107C800018220021DFF8B805FAF7E9F9012002BD52 -:107C900080B5DFF8A405006B01280AD0DFF898054D -:107CA00001210163FFF72EFCDFF8A805F8F735FA8C -:107CB00007E0DFF8840501214163DFF89C05F8F750 -:107CC0002CFA012002BDDFF87005406B012804D0BA -:107CD000DFF864050021016303E0DFF85C050021A3 -:107CE0004163012070470120704710B50023C0B2E6 -:107CF000002803D002284DD010D360E0DFF838050B -:107D000090F83C000870DFF8300590F83D004870AE -:107D1000DFF8240590F83E00887050E0DFF8180581 -:107D20000068002807D17FF00201DFF83005F8F77E -:107D3000F4F9002044E0002308E0DBB2DFF8F804A7 -:107D40001818DBB25C5680F83C405B1CDBB2D2B248 -:107D50009342F2D3DFF8E004006B002801D1012048 -:107D60002EE0DFF8D804FFF7A8FD002804D0DFF8E4 -:107D7000CC04FFF747FA0CE0FFF794FA002804D58B -:107D8000DFF8B4040121C16203E0DFF8AC04022192 -:107D9000C16214E000230FE0DBB211EB4300407836 -:107DA0000002DBB211F813208018DBB2DFF8B02438 -:107DB00012EB430290835B1CDBB2092BECD3012056 -:107DC00010BD0000E88403082DE9F04389B00400E9 -:107DD0000D009046994600260027012100A8FFF7D4 -:107DE0003EFE0600002007000FE000A850F8270024 -:107DF000F9F790FEDFF86C24DFF86C34F9F778FDC2 -:107E0000F9F754FE24F817007F1C032FEDDB002E3A -:107E100006D53100DFF85404F8F77FF9002055E06B -:107E2000F00702D547F6FF702080B00702D5DFF8D3 -:107E300040042080700702D547F6FF70608030074D -:107E400002D5DFF82C046080F00602D547F6FF70FB -:107E5000A080B00602D5DFF81804A080DFF8140473 -:107E6000C66896F821202100B069F368C018FAF7B7 -:107E7000F0F8300003F0CAFE96F82120B069F168EE -:107E800041182000FAF7E5F84A4629002000DFF8FB -:107E9000D0335B6898474046DFF8C4138968884749 -:107EA0002888B8F80010081820806888B8F80210F0 -:107EB00008186080A888B8F804100818A080290065 -:107EC0002800DFF8B42352689047012009B0BDE8CC -:107ED000F08370B58CB0040000A80021002206C019 -:107EE000083800260025FFF7A9F8002807D57FF0FD -:107EF0000401DFF88803F8F710F9002033E00021CF -:107F000002A8FFF7ACFD0600002E01D500202AE0F4 -:107F1000FFF794F8002806D57FF00401D848F8F759 -:107F2000FCF800201FE00798ADF8000008980999B8 -:107F3000401AADF80200089840420999401AADF87D -:107F4000040000250CE000A830F8150004F8150026 -:107F500014EB450000A931F91510091241706D1C90 -:107F6000032DF0DB01200CB070BDF8B50400002536 -:107F7000F8F7EAFA0600FFF7F4FD0700BD480069CC -:107F8000C06A8068AC498864B6F85C0040070BD4CE -:107F900017F1140317F10C02B91D3800FFF714FF95 -:107FA000002801D1002014E000250DE017EB45006A -:107FB000C08804F8150017EB4500B0F90600001260 -:107FC00014EB450148706D1C032DEFDB7869A0713F -:107FD0000120F2BD2DE9F041040000270026F8F74A -:107FE000B3FA8046FFF7BDFD0500B8F85C00000756 -:107FF00008D52000FFF76DFF002801D1002034E0F4 -:10800000032729E015F1140315F10C02A91D28001E -:10801000FFF7DAFE002801D1002026E0002618E054 -:1080200035F8160004F8160035F91600001214EBA6 -:108030004601487014EB460015EB460189898171B1 -:1080400015EB4600B0F90C00001214EB4601C871A4 -:10805000761C032EE4DB02277FB2864850F8270007 -:10806000C06A8068744988640120BDE8F08100001E -:108070001C8403082C7400209A9999999999B93F06 -:10808000F0B58DB00400002600A80021002206C033 -:108090000838F7F7C8FF0500674801210163664803 -:1080A0000068002804D0774890F84400022803D0E4 -:1080B000FFF75EFDFFF7ECFD724890F8440020707A -:1080C0006670A670E67003225E490120FFF70DFE80 -:1080D000002104A8FFF7C3FC0600002E01D50020F4 -:1080E0008DE016F0150F02D07FF0050612E016F0B5 -:1080F0002A0F02D07FF006060CE00498002808D171 -:108100000598002805D10698002802D17FF00706BF -:1081100000E000265B4890F841002071594890F833 -:1081200042006071574890F84300A071E67100204A -:1081300020720020607200270EE004A850F827008B -:10814000F9F7E8FC374A384BF9F7D2FBF9F7AEFC00 -:1081500000A921F817007F1C032FEEDB4548C768F4 -:1081600097F8212000A9B869FB68C018F9F771FFDA -:10817000380003F04BFD97F82120B869F9684118E1 -:1081800000A8F9F766FFBDF900000012A072BDF863 -:108190000000E072BDF9020000122073BDF8020079 -:1081A0006073BDF904000012A073BDF80400E07311 -:1081B000267402212800F8F7EFF802A903A8FFF7B8 -:1081C00013F90600002E01D5002018E016F0150F57 -:1081D00001D07FF0050616F02A0F01D07FF00606C9 -:1081E0000398001260740398A07402980012E0745F -:1081F00002982075667510480021016301200DB0BA -:10820000F0BD00000000324080B51F490220F8F7A1 -:1082100019FC1E490420F8F715FC1B490320F8F748 -:1082200011FC01BDFCA9F1D24D62503F108503083D -:108230006C85030870840308B0790020EC79002075 -:10824000387B0020688503087C840308F0840308D9 -:10825000F8840308008503080885030840840308A0 -:10826000B0FB00207B14AE47E17A843F4C840308C6 -:108270000080FFFF0000002020FE0020588403083B -:108280006484030824740020E4820308088303083C -:1082900000B583B000208DF804000120009001ABF0 -:1082A000F422EC210520F7F7BFFF002801D10020C0 -:1082B0000EBDDFF830099DF804104909417701200F -:1082C0000EBD00B583B000208DF8040001200090A1 -:1082D00001ABF422EC210520F7F7A6FF002801D11D -:1082E00000200EBD9DF80400C0F38200DFF8F418F2 -:1082F000887701200EBD80B50021ADF80010F42173 -:108300008DF80010DFF8DC184A7F897F890001EBC7 -:10831000421140188DF80100022300AAEC2105202B -:10832000F7F744FF401E8041C043C00F02BD00006C -:108330007CB5064600208DF8040004460546ADF8DD -:1083400006000120009001ABF422EC210520F7F794 -:108350006BFF002801D1204676BD042E12D8DFE83D -:1083600006F00306090C0F00012425460AE001244B -:10837000022507E00124032504E00124042501E08F -:1083800002240525F4208DF806009DF8040000F075 -:108390001F0040EA441000F0E300A90001F01C01B6 -:1083A00008438DF804008DF8070002230DF1060242 -:1083B000EC210520F7F7FAFE002801D1002076BD58 -:1083C000FFF766FF002801D1002076BDFFF779FF97 -:1083D000401E8041C043C00F76BD10B588B001A8D3 -:1083E0001821F9F78FFB1820009001AB8822EC21AF -:1083F0000520F7F719FF002801D100204BE0DFF836 -:10840000E4179DF805209DF8043043EA02220A8013 -:1084100001AA9DF90730947844EA03234B8092F92E -:108420000530147944EA03238B809DF80B3094794E -:1084300044EA0323CB809DF90D30147A44EA0323E8 -:108440000B819DF90F30947A44EA03234B819DF907 -:108450001130147B44EA03238B819DF91330947B04 -:1084600044EA0323CB819DF91530147C44EA0323AD -:108470000B829DF91730947C44EA03234B829DF9CB -:108480001930147D44EA03238B829DF91B30927DC1 -:1084900042EA0322CA8208B010BD10B582B00120A2 -:1084A0000090DFF84437D022EC210520F7F7BCFE1E -:1084B0000446012C0AD1FFF790FF002804D00320C6 -:1084C000FFF736FF002801D1002016BD204616BD5B -:1084D00080B5DFF81807012101720320FFF70BFFB9 -:1084E000401E8041C043C00F02BD10B5002802D01D -:1084F000012812D025E0DFF8F44604F10C0000F06A -:108500005BFA00281DD12078002817D16078002858 -:1085100014D1A078002811D113E0DFF8D04604F17F -:108520000F0000F03BFA00280BD1E078002805D1BD -:108530002079002802D16079002802D0204600214D -:108540000172012010BD80B50020FFF7D4FE401E4F -:108550008041C043C00F02BD80B50020FFF7CBFEB5 -:10856000401E8041C043C00F02BD000070B52DED1C -:10857000048B86B09FED430B8DED020B8DED000B50 -:108580008DED040BF9F7C6FA41EC180BDFF85466D1 -:1085900053EC182B0020DFF85816F9F7A9F9044618 -:1085A0000D463088F9F7C0FA0022DFF84836F9F7AF -:1085B0009FF902460B4620462946F9F737FB044649 -:1085C0000D46B6F90200F9F7A5FA22462B46F9F74F -:1085D0008FF9CDE9020153EC182B0020DFF81816B3 -:1085E000F9F786F941EC180B9FEDB19B3088F9F74C -:1085F0009BFA53EC192BF9F77BF902460B4651EC29 -:10860000180BF9F713FB04460D463088F9F78CFA7E -:1086100053EC192BF9F76CF902460B4651EC180B89 -:10862000F9F704FB22462B46F9F762F904460D469A -:10863000B6F90400F9F76EFA22462B46F9F758F915 -:10864000CDE90001DDE90223DDE90001F9F77AFA5D -:10865000F9F72CFAB061DDE90223DDE90001F9F751 -:1086600071FA0022DFF89435F9F7A0FBCDE9040197 -:10867000DDE9040106B0BDEC048BBDE8704007F0F5 -:10868000EDBC00000000000000000000F0B52DED82 -:10869000048B87B007469FEDBF0B8DED000B8DED72 -:1086A000040B8DED020BDFF83C65B069F9F732FA87 -:1086B0000022DFF84C35F9F71BF90022DFF84435CA -:1086C000F9F740FACDE900019FEDD48BDDE90023F5 -:1086D000DDE90001F9F70CF904460D46B6F9100082 -:1086E000F9F718FA22462B46F9F702F953EC182B42 -:1086F000F9F7FEF8CDE90401B6F90E00F9F70AFA28 -:10870000DDE90023F9F7F4F800224FF08043F9F790 -:10871000EFF8DDE90423F9F715FACDE90401DDE905 -:1087200004230020DFF8E014F9F7E2F804460D46D0 -:10873000B6F90C00F9F7EEF90022DFF8D034F9F7BA -:10874000D7F822462B46F9F7FDF9CDE904019FED54 -:10875000B59BB6F90A00F9F7DDF9DDE90023F9F771 -:10876000C7F8DDE90023F9F7C3F853EC192BF9F743 -:10877000BFF804460D46B6F90800F9F7CBF9DDE974 -:108780000023F9F7B5F822462B46F9F7DBF953EC4D -:10879000192BF9F7ADF8CDE90001DDE9002351EC23 -:1087A000180BF9F7A5F80022DFF86434F9F7CAF9D5 -:1087B00004460D46F088F9F7B7F922462B46F9F73B -:1087C00097F8CDE90001DDE900230020014607F01C -:1087D00083FC68D03846F9F79DF902460B46002025 -:1087E000DFF83014F9F722FACDE90201DDE90423BC -:1087F0000020DFF82414F9F77BF802460B46DDE988 -:108800000201F9F713FA0022DFF81034F9F770F8D3 -:10881000DDE90023F9F7CAFACDE90201B6F916003D -:10882000F9F778F9DDE90223F9F762F8DDE90223C7 -:10883000F9F75EF800224FF07853F9F759F8CDE9CF -:108840000001B6F91400F9F765F9DDE90223F9F73B -:108850004FF853EC182BF9F74BF8CDE90401DDE99B -:108860000023DDE90401F9F76DF904460D46B6F978 -:108870001200F9F74FF922462B46F9F763F9002267 -:10888000DFF89C33F9F734F8DDE90223F9F75AF9F8 -:10889000CDE90201DDE9020107B0BDEC048BBDE8C2 -:1088A000F04007F0DBBB07B0BDEC048BF0BD00006F -:1088B000000000000000203F2DE9504387B004462F -:1088C0000020019000900146CDE90201CDE90401AC -:1088D00020786178090141EA0030A17840EA11105E -:1088E00000900098FFF742FECDE90401E07821797D -:1088F000090141EA0030617940EA111001900198C4 -:10890000FFF7C4FECDE90201DDE902012070DDE9D7 -:10891000020100B200126070DDE902010014A070D3 -:108920000020E070BF4ADDE904016426A6FB00894F -:1089300006FB0199C2E90089D2E900012071D2E960 -:10894000000100B200126071012007B0BDE8508341 -:1089500070B50446A54D05F10C00FFF7ADFF0646C6 -:10896000287A002805D1062229462046F9F771FB0E -:108970000BE0062205F10C012046F9F76AFB0622FE -:1089800005F10C012846F9F764FB012028723046F6 -:1089900070BD0000000000000000000080B5032151 -:1089A00000910346F722EC210520F7F73DFC401E1D -:1089B0008041C043C00F02BD80B503210091034632 -:1089C000FA22EC210520F7F72FFC401E8041C0431E -:1089D000C00F02BD30B585B0002102910A460B469A -:1089E000CDE9002301784278120142EA0131807812 -:1089F00041EA101002900298FFF7B8FDCDE900019E -:108A0000DDE900016422A2FB004502FB0155854817 -:108A1000C0E90045012005B030BD000000000000A5 -:108A20000000003F000000000000C03EF0B4012143 -:108A300000226C4B1C88002C2BD1B3F90240002C77 -:108A400027D1B3F90440002C23D1DC88002C20D19D -:108A5000B3F90840002C1CD1B3F90A40002C18D1FE -:108A6000B3F90C40002C14D1B3F90E40002C10D1F6 -:108A7000B3F91040002C0CD1B3F91240002C08D1EE -:108A8000B3F91440002C04D1B3F91640002C00D1E6 -:108A90000A461C8844F63825AC4271D31C8848F637 -:108AA000B905AC426CD2B3F9024045F2F055AC4284 -:108AB00066DB47F23154B3F90250A54260DAB3F9EC -:108AC0000450594EB5425BDBB3F90450574EB542E2 -:108AD00056DADD8847F23056B54251D3DD884AF286 -:108AE0001146B5424CD2B3F90850514EB54247DB5E -:108AF000B3F908504F4EB54242DAB3F90A504E4E20 -:108B0000B5423DDBB3F90A5041F64176B54237DA5A -:108B10004A4DB3F90C60AE4232DBB3F90C6044F25B -:108B20005167BE422CDAB3F90E60454FBE4227DBD7 -:108B3000B3F90E6040F24D47BE4221DAB3F910603E -:108B4000404FBE421CDBB3F9106040F2E937BE4231 -:108B500016DAB3F91260B3F91260B3F914603A4F40 -:108B6000BE420DDBB3F9146042F21177BE4207DA60 -:108B7000B3F91660AE4203DBB3F91630A34200DB53 -:108B8000521CD2B2022A00D1002101700846F0BC6A -:108B9000704770B582B00C46002506281FD12B48BF -:108BA0004069204ED6E90023002B01D1002A05D0D0 -:108BB000017F00290BD0407A002808D100A829465F -:108BC0000160FFF7F9FE054600A8FFF703FFD6E9AD -:108BD00000012070D6E9000100B200126070284642 -:108BE00076BD0000B87A0020D47A002080380020BA -:108BF0000000103F0000503F0000E03E0000B44085 -:108C00000000E03F0040EFC00000D03F0000F04017 -:108C10000000F03F000030410000303F006AB840E3 -:108C20000000B03FA87B002048F4FFFF19FCFFFFC5 -:108C300056CDFFFFC1E0FFFF78ECFFFFF0D8FFFF4C -:108C40000CFEFFFF18FCFFFFD08AFFFF0000002092 -:108C50000FF208010520F7F7F5BE00009B8401081C -:108C6000D18401084785010859850108EB84010872 -:108C700051890108000000002D8A0108938B01082A -:108C80008D488368DBB200F1160201780820F7F7FF -:108C90008DBA89488368DBB200F118020178082098 -:108CA000F7F784BAF0B4854B5C78002500E06D1CC2 -:108CB000EDB28D420ED22E5C7440082602E03C4696 -:108CC000E4B2761EF3D067002406F8D51C787C4009 -:108CD000E4B2F6E7944201D1012000E00020F0BCAC -:108CE0007047CDE7FEB504460527734D0020009080 -:108CF000062301AA29780820F7F7DAFA0646012E9A -:108D000003D00FF2D410F7F708FA012EEED138464F -:108D1000471E80B20028E9D001AFBA78022101A82D -:108D2000FFF7C0FF002807D07A7902210DF1070074 -:108D3000FFF7B8FF002805D10FF29410F7F7EDF90F -:108D40000020FEBDA888401CA880E9687A789DF8BC -:108D5000043042EA032241F217135A43921341F2BC -:108D60009413D21A01FA82F1E9602A693B79FF78FB -:108D700043EA072340F6C4177B439B1302FA83F3AD -:108D80002B614F4A126A577F002F16D000B291FB19 -:108D9000F0F193FBF0F00023EB602B61AB802170CE -:108DA00009B209126170A07000B20012E070B2F94D -:108DB0005600012803DB012002E00020FEBD18461A -:108DC00020712046FAF7C4FF3046FEBD30B583B0AF -:108DD000394CA368DBB204F11A0221780820F7F7B6 -:108DE000E5F900200090032301AA21780820F7F775 -:108DF0005FFA0546012D05D00FF2E400F7F78DF973 -:108E000028463EBD01ADAA78022101A8FFF74AFF1E -:108E1000002801D100203EBD6878A1780840617823 -:108E2000884201D101203EBD00203EBD22480021E4 -:108E3000C160016181802CE7012070477CB5044648 -:108E40000020207006251C4EB368DBB206F11A0222 -:108E500031780820F7F7AAF900200090032301AA2F -:108E600031780820F7F724FA01280ED02846451E4D -:108E7000012808DBF7F7D7F81E21F7F78DFA284607 -:108E8000451E0128E0DA002076BD9DF8062002216B -:108E900001A8FFF707FF002808D1F7F7C4F81E2143 -:108EA000F7F77AFA03A0F7F738F9E8E7012020701E -:108EB00076BD0000435243004C380020E8380020C3 -:108EC000000000200FF220010820F7F7BBBD0000D2 -:108ED00054482D524632000054482D52463100006D -:108EE00054482D5046310000CD8D01082D8E0108CB -:108EF000398E010800000000E38C0108E58C0108B0 -:108F0000000000003D8E01080000000010B50024A4 -:108F1000F7F789F80069C00700D50124204610BD85 -:108F200000B58BB00020ADF82A000A208DF80800AB -:108F300000208DF809008DF80A008DF80000182037 -:108F4000019000A8FBF7A6FD01200BB000BD00B505 -:108F50008BB00020ADF82A000A208DF80800002010 -:108F60008DF809008DF80A0001208DF80000182006 -:108F7000019000A8FBF78EFD01200BB000BD00B5ED -:108F80008BB00020ADF82A000A208DF808000020E0 -:108F90008DF809008DF80A0001208DF800001820D6 -:108FA000019000A8FBF776FD01200BB000BD012069 -:108FB000704710B50024F7F736F80069C00700D5F0 -:108FC0000124204610BD00B58BB00020ADF82A006A -:108FD0000A208DF8080000208DF809008DF80A009D -:108FE0008DF800001920019000A8FBF753FD012027 -:108FF0000BB000BD00B58BB00020ADF82A000A20F0 -:109000008DF8080000208DF809008DF80A00012075 -:109010008DF800001920019000A8FBF73BFD01200E -:109020000BB000BD00B58BB00020ADF82A000A20BF -:109030008DF8080000208DF809008DF80A00012045 -:109040008DF800001920019000A8FBF723FD0120F6 -:109050000BB000BD0120704710B50024F6F7E3FF08 -:109060000069800700D50124204610BD00B58BB0F3 -:109070000020ADF82A000A208DF8080000208DF8A5 -:1090800009008DF80A008DF800001A20019000A850 -:10909000FBF700FD01200BB000BD00B58BB0002038 -:1090A000ADF82A000A208DF8080000208DF809008C -:1090B0008DF80A0001208DF800001A20019000A808 -:1090C000FBF7E8FC01200BB000BD00B58BB0002021 -:1090D000ADF82A000A208DF8080000208DF809005C -:1090E0008DF80A0001208DF800001A20019000A8D8 -:1090F000FBF7D0FC01200BB000BD0120704710B57C -:109100000024F6F790FF006900F00300032800D167 -:109110000124204610BD00B58BB0F6F784FFB0489F -:10912000017841F0020101700020ADF82A000A2008 -:109130008DF8080001208DF809008DF80A10002034 -:109140008DF800001B20019000A8FBF7A3FC012074 -:109150000BB000BD00B58BB0F6F765FFA0480178F5 -:1091600011F0FD01017013D10020ADF82A000A2092 -:109170008DF8080001208DF8090000208DF80A0004 -:1091800001208DF800001B20019000A8FBF782FC55 -:1091900001200BB000BD012070470120704710B5C1 -:1091A0000024F6F740FF006900F00700072800D10F -:1091B0000124204610BD00B58BB0F6F734FF884877 -:1091C000017841F0010101700020ADF82A000A2069 -:1091D0008DF8080000208DF809008DF80A108DF830 -:1091E00000001B20019000A8FBF754FC01200BB0ED -:1091F00000BD00B58BB0F6F716FF7948017811F085 -:10920000FE01017012D10020ADF82A000A208DF86D -:10921000080000208DF809008DF80A0001208DF863 -:1092200000001B20019000A8FBF734FC01200BB0CC -:1092300000BD012070470120704710B50024F6F7EB -:10924000F2FE0069C00700D50124204610BD00B51C -:109250008BB00020ADF82A000A208DF8080000200D -:109260008DF809008DF80A008DF800001C2001908F -:1092700000A8FBF70FFC01200BB000BD00B58BB0C0 -:109280000020ADF82A000A208DF8080000208DF893 -:1092900009008DF80A0001208DF800001C200190C3 -:1092A00000A8FBF7F7FB01200BB000BD00B58BB0A9 -:1092B0000020ADF82A000A208DF8080000208DF863 -:1092C00009008DF80A0001208DF800001C20019093 -:1092D00000A8FBF7DFFB01200BB000BD01207047A9 -:1092E00070B58CB006460D46FBF720FB0446002007 -:1092F00000900422314600A8F8F7ABFE009A2946F8 -:109300000FF29010F6F709FF28460C3805283AD8D6 -:10931000DFE800F0030D121717090098C4F8C40322 -:1093200001200CB070BD0098C4F86404F8E704F59F -:10933000717042218162F3E704F571700099016553 -:10934000EEE727480078002812D00021ADF82E1053 -:109350000A218DF80C1000218DF80D108DF80E00EB -:1093600001208DF804001B20029001A8FBF792FB5E -:109370000099284640B200F00CF8009004F5717096 -:1093800000998167CCE70FF21C10F6F7C6FE0020AB -:10939000C7E710B4134AD36B126C114C2478002C1D -:1093A0001AD00F2802D010280BD015E0507A0028D0 -:1093B00012D0906B806800280ED488420DDD0846DC -:1093C0000BE0587A002807D0986B8068002803D4F7 -:1093D000884202DD084600E0084610BC70470000E5 -:1093E00054FE00200000002012B58BB001460C395D -:1093F000052928D8DFE801F0031D1F21211B1824AF -:109400000020ADF82A0001900A208DF80800052000 -:109410008DF80000019404220BA90DF10900F8F762 -:1094200018FE00A8FBF736FB01200CB010BD1C2471 -:10943000E6E71924E4E71A24E2E71B240B99FFF777 -:10944000A8FF0B90DCE70FF26400F6F766FE002041 -:10945000EBE780B50FF25C010C20F7F7F3FA0FF29F -:1094600078011120F7F7EEFA0FF290010D20F7F7CF -:10947000E9FA0FF2AC010E20F7F7E4FA0FF2C4019B -:109480000F20F7F7DFFA0FF2E0011020BDE80440EB -:10949000F7F7D8BA4D52322044523D25642C25644A -:1094A000000000004D523220534446004D523220FD -:1094B000524346000D8F0108218F01084F8F01088C -:1094C0007F8F010800000000AF8F0108E1920108C2 -:1094D00000000000000000003B9201084F920108CC -:1094E0007D920108AD92010800000000DD920108A4 -:1094F000E19201080000000000000000B38F0108A5 -:10950000C78F0108F58F01082590010800000000B1 -:1095100055900108E19201080000000000000000E1 -:10952000599001086D9001089B900108CB900108AB -:1095300000000000FB900108E1920108000000001B -:1095400000000000FF9001081791010855910108E3 -:1095500097910108000000009B910108E192010829 -:1095600000000000000000009F910108B791010871 -:10957000F3910108339201080000000037920108BE -:10958000E19201080000000000000000D2B2203A81 -:1095900022BF41FA02F0C91770472032D141D040B2 -:1095A00048409140D14048409140114170470000EF -:1095B00000B500BF130096469446103928BFA0E8B6 -:1095C0000C50FAD85FEA417C28BF0CC048BF40F875 -:1095D000042BC90728BF20F8022B48BF00F8012B35 -:1095E00000BD000062F30F2262F31F42401810F02A -:1095F000030308D0C91A1FD3DB0748BF00F8012DA9 -:1096000028BF20F8022D130030B414461546103937 -:1096100028BF20E93C00FAD8490728BF20E90C0000 -:1096200048BF40F8042D890028BF20F8022D48BF0C -:1096300000F8012D30BC7047C91818BF00F8012D83 -:10964000CB0728BF00F8012D70470000DFF8741128 -:1096500000220A700A70012802D0042803D0704743 -:1096600001200870704705200870704710B45649F3 -:109670004A6802F00C02564B082A12D10A680C689C -:1096800004F03F04B3FBF4F30A68C2F388125A43B0 -:109690000B68C3F301435B1C5B00B2FBF3F2026097 -:1096A00000E003604A6802F0F0034A4A1B099B5C31 -:1096B000046824FA03F343604C6804F4E054A40AF9 -:1096C000A45CE3408360496801F46041490B895C14 -:1096D000426822FA01F1C16010BC70473B4900F4B6 -:1096E0004072B2F5407F06D10A6822F4F8123A4B74 -:1096F00003401A430A608A6E000552EA10508866D9 -:109700007047364908607047354908607047354AE8 -:109710000029116802D008431060704721EA000058 -:1097200010607047304A0029116802D00843106069 -:10973000704721EA0000106070472C4A0029116828 -:1097400002D008431060704721EA000010607047A3 -:10975000274A0029116802D008431060704721EAA7 -:10976000000010607047234A0029116802D00843A6 -:109770001060704721EA0000106070471E4A0029FF -:10978000116802D008431060704721EA00001060A1 -:109790007047002142090A4B012A01D11A6804E0EE -:1097A000022A01D11A6F00E05A6F012300F01F0056 -:1097B00003FA00F0024200D0194608467047000044 -:1097C0000038024070380240043802400838024035 -:1097D0000024F4006CAF0020FFFCFF0F3C0E47425A -:1097E000400E474230380240403802404438024080 -:1097F00010380240203802402438024080B5274902 -:10980000884209D101210846FFF7A2FF002101206B -:10981000BDE80440FFF79CBF2149884209D10121DE -:109820000220FFF795FF00210220BDE80440FFF76A -:109830008FBF1C49884209D101210420FFF788FF0E -:1098400000210420BDE80440FFF782BF164988428A -:1098500009D101210820FFF77BFF00210820BDE886 -:109860000440FFF775BF1149884209D1012110203A -:10987000FFF76EFF00211020BDE80440FFF768BF2E -:109880000B49884209D101218020FFF761FF0021A7 -:109890008020BDE80440FFF75BBF01BD000002402F -:1098A0000004024000080240000C02400010024088 -:1098B000001C0240F0B4002232E0012393400C6807 -:1098C0001C409C422BD154000325A540ED43066863 -:1098D0002E40066006680F79A7403E4306600E7969 -:1098E000012E01D0022E11D186682E408660866836 -:1098F0004F79A7403E438660466826EA03034360EB -:1099000043688E799640B6B233434360C3682B40B8 -:10991000C360C368CD7905FA04F42343C360521CC5 -:10992000102ACAD3F0BC70474FF6FF7101600021C6 -:10993000017141718171C171704700220069084253 -:1099400000D0012210467047018370474183704761 -:1099500010B4CB1000EB830001F007018900036A0B -:109960000F248C40A3430362036A02FA01F11943F6 -:10997000016210BC7047000080B5434988420BD19A -:1099800001214FF40010FFF7EEFE00214FF400100C -:10999000BDE80440FFF7E7BE3C4988420BD10121F6 -:1099A0004FF48000FFF7DFFE00214FF48000BDE898 -:1099B0000440FFF7D8BE364988420BD101214FF44D -:1099C0000000FFF7D0FE00214FF40000BDE8044086 -:1099D000FFF7C9BE01BD7FB504460D46A68800A8A5 -:1099E000FFF744FE02992B48B1FBF0F04FF6C0722E -:1099F00032400243A28022884FF6FE731A40228032 -:109A00002A68254B9A420AD25200B1FBF2F10A466B -:109A100092B2042A00D20421401C208421E0EB8869 -:109A20004BF6FF76B34204D102EB4202B1FBF2F1F6 -:109A300006E019235A43B1FBF2F141F4804189B2A7 -:109A40000A0502D141F0010189B241F4004180B21E -:109A50004FF4967250434FF47A7290FBF2F0401C30 -:109A60002084A183208840F00100208020884FF6C8 -:109A7000F5310840A9880843698908432080A889EE -:109A80002989084320817FBD0054004000580040D0 -:109A9000005C004040420F00A186010000290188BF -:109AA00003D041F00101018070474FF6FE72114072 -:109AB000018070470029018803D041F48071018042 -:109AC00070474FF6FF6211400180704700290188FE -:109AD00003D041F40071018070474FF6FF521140EE -:109AE00001807047002A02D041F0010101E001F03D -:109AF000FE01018270470029018803D041F4806192 -:109B0000018070474FF6FF321140018070470029F5 -:109B1000018803D041F40041018070474904490C99 -:109B20000180704782B002460020034601930093F3 -:109B300000920A0F01920902090A019A002A03D031 -:109B4000009A1432009203E0090C009A1832009235 -:109B5000009A12680A4200D0012002B0704700004B -:109B600080B5554988420BD101214FF48050FFF751 -:109B700005FE00214FF48050BDE80440FFF7FEBD14 -:109B80004E4988420BD101214FF48040FFF7EBFD95 -:109B900000214FF48040BDE80440FFF7E4BD484990 -:109BA00088420BD101214FF40040FFF7DCFD00217A -:109BB0004FF40040BDE80440FFF7D5BD01BD028869 -:109BC00002F441520B881A434B881A438B881A437C -:109BD000CB881A430B891A434B891A438B891A4342 -:109BE000CB891A430280828B4FF2FF731A40828323 -:109BF000098A01827047F0B40123828B4FF240043E -:109C00002240828302220284828B8C68022C02D141 -:109C10000023022439E08C88002C00D00223294C38 -:109C200065682D0203D5656825F400056560264D3D -:109C30002E68C6F388162D68C5F30275246804F0F3 -:109C40003F04224FB7FBF4F47443B4FBF5F58E6880 -:109C50000A24CF88B7F5007F06D12B0A6343B3FBF4 -:109C6000F6F35B1D9BB207E05B01B5FBF3F36343C7 -:109C7000B3FBF6F35B1D9BB2B3FBF4F303F00105FA -:109C80002C461B1B5C08A4B22B02A51EFE2D01D383 -:109C9000022400232343CC88234303840B881A43E4 -:109CA0004B881A438B881A438989114341F4006118 -:109CB0008183F0BC70470000003001400038004054 -:109CC000003C004004380240843802400024F40084 -:109CD0000029018803D041F04001018070474FF610 -:109CE000BF721140018070470029818B03D041F47D -:109CF0008061818370474FF6FF3211408183704746 -:109D0000002A828802D011438180704722EA010133 -:109D10008180704700220089084200D0012210464D -:109D20007047000001684908490001600021016096 -:109D300041608160C1600161212141616A498842BD -:109D400003D16A483D21016070476949884204D1C6 -:109D500066484FF47461016070476649884204D1D7 -:109D600062484FF47411016070476349884204D11E -:109D70005E484FF07461016070476049884203D1CA -:109D80005A485F49416070475E49884203D157484D -:109D90005D49416070475D49884203D153485C4941 -:109DA000416070475B49884204D150484FF03D51B3 -:109DB000416070475849884203D158483D210160AD -:109DC00070475749884204D154484FF47461016088 -:109DD00070475449884204D150484FF474110160CF -:109DE00070475149884204D14C484FF0746101607A -:109DF00070474E49884203D1484841494160704705 -:109E00004B49884203D145483F4941607047494921 -:109E1000884203D141483E494160704746498842E3 -:109E200003D13E484FF03D51416070470268434BBB -:109E30001A400B681A43CB681A434B691A438B6963 -:109E40001A43CB691A430B6A1A434B6A1A438B6A4B -:109E50001A434B6B1A438B6B1A4302604269D20858 -:109E6000CB6A53EAC2020B6B1A4342610A69426031 -:109E70004A6882608968C16070470029016803D020 -:109E800041F00101016070474908490001607047D5 -:109E9000002A01D001617047C1607047006800F07E -:109EA0000100704700221C4B984201D2244800E078 -:109EB00024488B0001D5406800E000680840224932 -:109EC000084200D0012210467047134A904201D246 -:109ED0001B4800E01B481C4A0A40890001D5C260AB -:109EE00070478260704700001060024008600240C6 -:109EF00028600240406002405860024070600240AA -:109F00003D00002088600240400F0020A060024019 -:109F100000003D20B8600240106402400864024026 -:109F20002864024040640240586402407064024069 -:109F300088640240A0640240B86402403F801CF084 -:109F400000600240006402407D0F7D0F02490860FE -:109F5000704702490860704720000E4224000E42FC -:109F600070B504460026DFF83854CA20E861532053 -:109F7000E86100F018F8002811D0286820F04000AF -:109F800028602868216808432860A068A860A8683D -:109F9000616840EA0140A86000F024F80126FF2033 -:109FA000E861304670BD81B000200090DFF8F40316 -:109FB0000168490613D44FF0FF310160016801F0D8 -:109FC0004001009A521C0092009AB2F5803F01D0E5 -:109FD0000029F3D00068800900F0010000E00120B2 -:109FE00001B07047DFF8BC03016821F08001016017 -:109FF000704781B000200090DFF8A813CA20886164 -:10A0000053208861086820F0A0000860086800F00C -:10A010002000009A521C0092009AB2F5003F01D035 -:10A020000028F3D00868400900F00100FF228A618F -:10A0300001B07047F8B507460E460024DFF85C53C0 -:10A04000002FA86804D140060AD42046F07007E02B -:10A05000400603D5307800F0BEF901E02046F070EC -:10A060003078002F09D07178090241EA0040B178B8 -:10A070000843F17840EA01460FE000F0A1F90746F5 -:10A08000707800F09DF9000240EA0747B07800F0D0 -:10A0900097F93843F17840EA0146CA2068625320B4 -:10A0A0006862FFF780FF00280FD0DFF8FC02304025 -:10A0B0002860FFF797FFA868800605D4FFF799FF8F -:10A0C000002802D0012400E00124FF20686220461D -:10A0D000F2BD10B50C46DFF8C4120968DFF8C822DB -:10A0E00011400A0C02F03F0323700B0A03F07F03B8 -:10A0F000637001F07F01A17002F04001E17000285F -:10A100000BD1207800F067F92070607800F063F9D7 -:10A110006070A07800F05FF9A07010BDDFF88C12BD -:10A12000486A0968704770B506460D460024002E3F -:10A1300006D16878C10603D500F0EF000A306870D8 -:10A14000002E05D0687800F046F9A87800F043F9B1 -:10A15000E878002E09D06978090241EA0040A97820 -:10A160000843297840EA41360FE000F029F9064615 -:10A17000687800F025F9000240EA0646A87800F069 -:10A180001FF93043297840EA4136DFF82052CA20CF -:10A19000286253202862FFF706FF00280FD0DFF85F -:10A1A000100230402860FFF71DFF6868800605D464 -:10A1B000FFF71FFF002802D0012400E00124FF2048 -:10A1C0002862204670BD10B50C46DFF8E011096822 -:10A1D000DFF8DC2111400A0CE2700A0A02F01F02CB -:10A1E000627001F03F02A270490B01F0070121707B -:10A1F00000280BD1E07800F0EEF8E070607800F015 -:10A20000EAF86070A07800F0E6F8A07010BDDFF802 -:10A210009011CA22CA615322CA610A68D208D200C8 -:10A220000A600A6810430860FF20C8617047DFF8C1 -:10A230008411CA220A6153220A610860FF20086162 -:10A24000704781B000210091DFF85411CA22CA6121 -:10A250005322CA610028086804D040F48060086076 -:10A26000012012E020F480600860486800F00400DB -:10A27000009A521C0092009AB2F5803F01D000284B -:10A28000F3D04868800800F00100FF22CA6101B0E5 -:10A29000704781B000220092474A0092009A02EB78 -:10A2A000800000900098016001B0704781B00021EB -:10A2B000009141490091009901EB800000900098C5 -:10A2C000006801B0704738B500242246344DCA23D7 -:10A2D000EB615323EB616B681B0701D406E0521C52 -:10A2E0006B681B0702D5B2F5805FF8D16A68120768 -:10A2F00009D42A68D20606D408436862FFF779FEBB -:10A30000002800D00124FF20E861204632BD244A05 -:10A31000CA23D3615323D36100F0040320F0040067 -:10A320000029116805D008431060906B18439063B2 -:10A3300005E021EA00001060906B98439063FF20D5 -:10A34000D06170470021174A12681C4B1A40024224 -:10A3500000D001210846704710B40021104A936BC9 -:10A3600003F004031468044003EAD0332343526823 -:10A3700002EA101002D0000400D00121084610BCEF -:10A38000704708490003000C40F080000A6802F0A2 -:10A39000800262EA00000860704700000028004068 -:10A3A000082800400C2800407F7F7F0004280040E0 -:10A3B0003FFFFF0014280040502800407F3F01006D -:10A3C000002101E0491C0A38C0B20A28FAD240EA4A -:10A3D0000110C0B27047010901EB810200F00F00CB -:10A3E00000EB4200C0B27047EFF303807047BFF349 -:10A3F0004F8FDFF87C05016801F4E061DFF8742518 -:10A4000011430160BFF34F8FFEE770B5ADF5935D6B -:10A41000054600A841F25C21F7F774FB00F070FAE2 -:10A42000002840F0718100F001FA05F065FEF3208C -:10A4300005F0DCFEDFF8404500206060DFF83C05F9 -:10A4400020600020E06009E055F8211005F098FE3A -:10A450002068001D2060E068401CE060E168206822 -:10A460000829F1D3294605F08BFE2068001D2060E5 -:10A47000EFF3088105F084FE2068001D2060EFF3F3 -:10A48000098105F07DFE2068001D2060EFF3148136 -:10A4900005F076FE2068001D2060EFF3058105F0D1 -:10A4A0006FFE2068001D2060EFF3008105F068FE5C -:10A4B0002068001D2060FFF797FF0146206805F027 -:10A4C0005FFE2068001D2060EFF3108105F058FE4C -:10A4D0002068001D2060EFF3118105F051FE206817 -:10A4E000001D2060EFF3138105F04AFE2068001D77 -:10A4F0002060F1EE101A05F043FE2068001D411C9B -:10A500002160432105F058FE2068411C2160502144 -:10A5100005F052FE2068411C2160552105F04CFEDB -:10A52000DFF85C0420600020A0600FF2E81516E060 -:10A5300020690168206805F023FE2068001D206066 -:10A540002069001D2061E068401CE060A068E168AF -:10A5500005EBC00252689142EAD3401CA060A0689B -:10A56000092805D255F8300020610020E060EDE7B1 -:10A570002068411C2160432105F01EFE2068411C1B -:10A5800021604F2105F018FE2068411C21605221F6 -:10A5900005F012FE2068411C2160452105F00CFEEB -:10A5A000DFF8E00320600020A0600FF2B01516E095 -:10A5B00020690168206805F0E3FD2068001D206027 -:10A5C0002069001D2061E068401CE060A068E1682F -:10A5D00005EBC00252689142EAD3401CA060A0681B -:10A5E0001A2805D255F8300020610020E060EDE720 -:10A5F000E54820605021E54805F0DEFD2068411C5B -:10A600002160452105F0D8FD2068411C21605221C0 -:10A6100005F0D2FD2068411C2160492105F0CCFDE8 -:10A620000D22DB4900A8F7F714FD0422D9490DF1EA -:10A630000D00F7F70EFD0422D7490DF11100F7F7D1 -:10A6400008FD0422D5490DF11500F7F702FD04229B -:10A65000D3490DF11900F7F7FCFC0422D1490DF1A3 -:10A660001D00F7F7F6FC142204F114010DF121008E -:10A67000F7F7EFFC4FF48E700546F5F7D4FC2A4649 -:10A6800001460DF13500F7F7E4FC4FF48E7000A998 -:10A69000401800F235058820C0460646F5F754FFFD -:10A6A000324601462846F7F7D4FC8820C0460020F1 -:10A6B000E06008E0421C226000AA895C05F07CFD95 -:10A6C000E068401CE060E168206841F25C22914251 -:10A6D000F0D3411C2160472105F06EFD2068411C2C -:10A6E00021604C2105F068FD2068411C21604F214C -:10A6F00005F062FD2068411C2160422105F05CFDEF -:10A7000005F003FD00F0ACF8FFF771FE0DF5935D69 -:10A7100070BD000008E000E00500000000ED00E072 -:10A720001000000088ED00E00700000000E100E0FC -:10A730000800000000E200E00800000000E300E084 -:10A740000800000000E400E03C00000000EF00E032 -:10A750000100000034EF00E003000000006402404C -:10A76000340000000060024034000000003C024061 -:10A77000060000000038024024000000001C0240D7 -:10A780000A000000000802400A0000000004024025 -:10A790000A000000000002400A000000003C0140E6 -:10A7A00006000000003801400900000000300140B0 -:10A7B00009000000002201401400000000210140B7 -:10A7C00014000000002001401400000000100140AF -:10A7D00007000000000401401400000000000140D8 -:10A7E000140000000070004002000000005C004007 -:10A7F0000A000000005800400A0000000054004019 -:10A800000A000000003C0040090000000038004041 -:10A81000090000000030004004000000002C00404F -:10A8200003000000002800402800000010B505F0DB -:10A8300063FCF32005F0DAFC4F4C1820A06002E026 -:10A84000A0680830A060A068202805D2002105F08B -:10A8500062FC0928F4D0FEE7BDE8104005F055BCC5 -:10A86000F8B551484168514A11400C0C0A0A02F0EF -:10A870001F0501F03F0600684D4901EA000705F099 -:10A880003BFCF32005F0B2FC45480168494805F05F -:10A8900077FCFF21484805F08FFC2146474805F02A -:10A8A0008BFC2946464805F087FC3146454805F0B3 -:10A8B00083FC380C00F03F01434805F07DFC380A6A -:10A8C00000F07F01414805F077FC07F07F01404828 -:10A8D00005F072FCF5213F4805F06EFCBDE8F14043 -:10A8E00005F013BC80B505F007FCF32005F07EFCF5 -:10A8F000AA21384805F060FCBDE8014005F005BC20 -:10A90000002034490978F52900D10120704710B59D -:10A910000446F8F7D1FBC0B2142800D31320024636 -:10A9200021462D48F7F795FB4FF0AC30007810BD6D -:10A9300080B500F055F8BDE8014058E580B5FFF757 -:10A94000D1FF4FF480420D490020BDE80840F9F7DF -:10A95000DDB910B500F053F8204C2046F8F7ACFBF9 -:10A96000024621460020BDE81040F9F7CFB90000AB -:10A970000CED00E00400FA05447A002000C0000855 -:10A9800050C0000830C20008B1C80008B0C80008B4 -:10A99000A87A0020E0380020BC7B0020B87B002093 -:10A9A000E4380020A4380020002800403FFFFF00CA -:10A9B0007F7F7F00F4FF0008F8FF0008F9FF000820 -:10A9C000FAFF0008FBFF0008FCFF0008FDFF00087D -:10A9D000FEFF0008FFFF0008587A0020B83800206A -:10A9E00080B501214FF48020FEF791FE0120FFF792 -:10A9F000ADFA94210F20BDE80440FFF74ABC80B5B2 -:10AA000001214FF48020FEF782FE0120FFF79EFA1D -:10AA100000210F20BDE80440FFF73BBC10B5002427 -:10AA200001214FF48020FEF772FE0120FFF78EFA1D -:10AA30000F20FFF73BFC942800D10124204610BDD5 -:10AA400030B40168CB4321498279002A27D00A46D5 -:10AA500014682340136053680468A3435360037968 -:10AA6000CC18236805682B43236093680468A343CC -:10AA70009360D3680468A343D36043790568102BBF -:10AA800007D1916829439160D16800680843D0607C -:10AA90000AE051FA83F420682843206004E000793A -:10AAA0000C1820681840206030BC70470021074A0D -:10AAB000136803405269024202D0002B00D00121EA -:10AAC000084670470249086070470000003C01409A -:10AAD000143C01401949084319490860704770B493 -:10AAE00003781A460121C478002C1DD0144B1B6832 -:10AAF00003F4E063C3F5E0631B0A4478C3F1040583 -:10AB0000AC4085780F2646FA03F32B4023431B0104 -:10AB10000C4C1355007842110B4B00F01F0001FA4A -:10AB200000F043F8220006E05011084A03F01F032A -:10AB3000994042F8201070BC704700000000FA05F0 -:10AB40000CED00E000E400E000E100E080E100E066 -:10AB500030B401F00302920021F00301054BCC5800 -:10AB60000F259540AC43CC50CC5890402043C85062 -:10AB700030BC70470838014080B501214FF4807027 -:10AB8000FEF7FCFD00214FF48070BDE80440FEF7A5 -:10AB9000F5BD42684D4B1A400B7942EA03220B681F -:10ABA0001A43426082684A4B1A400B691A43CB68C9 -:10ABB0001A438B681A434B7942EA43028260C26AA5 -:10ABC00022F47002097D491EC9B242EA0151C162F4 -:10ABD000704700210160017141718160C1600161B4 -:10ABE0000121017570473B490A683B4B1A400368D5 -:10ABF0001A4343681A4383681A43C06810430860C5 -:10AC000070470021016041608160C1607047002988 -:10AC1000816803D041F00101816070474908490013 -:10AC20008160704770B407240A290BD3C568A1F16D -:10AC30000A0606EB4606B44025EA0404B340234363 -:10AC4000C36008E0056901EB4106B44025EA04044D -:10AC5000B340234303611F23072A0AD2446B521EC9 -:10AC600002EB8202934024EA0303914019434163BB -:10AC700016E00D2A0AD2046BD21F02EB8202934027 -:10AC800024EA030391401943016309E0C46A0D3AC1 -:10AC900002EB8202934024EA030391401943C1620C -:10ACA00070BC7047816841F0804181607047002925 -:10ACB000816803D041F480618160704721F4806134 -:10ACC00081607047C06C80B270470000FFFEFFFCDF -:10ACD000FDF7FFC004230140E030FCFF00220068C4 -:10ACE000084200D001221046704700002DE9F04FC5 -:10ACF000A1B0804617461D46029102AE0020706248 -:10AD000011AC6FF000490AE017F8011B0298C04728 -:10AD10000290002800F06A82706A401C70623878E5 -:10AD200008B9706A64E22528EED10020F060306135 -:10AD30007061B061F061306201E040F0010017F82D -:10AD4000011F2029F9D023290DD02B2904D02D292A -:10AD500006D030290AD00CE040F0020080B2EEE7C5 -:10AD600040F00400FAE740F00800F7E740F0100078 -:10AD7000F4E72A290DD129680A1D2A600968F162C1 -:10AD8000002904D54942F16240F0040080B27F1CE2 -:10AD900012E00021F16209E0F16A494505D001EBBA -:10ADA000810302EB43013039F1627F1C3A78A2F152 -:10ADB0003001C9B20A29EFD339782E2903D04FF0D8 -:10ADC000FF31B1621DE017F8011F2A2906D1296859 -:10ADD0000A1D2A600968B1627F1C12E00021B1627D -:10ADE00009E0B16A494505D001EB810302EB43015B -:10ADF0003039B1627F1C3A78A2F13001C9B20A2918 -:10AE0000EFD3308639780FF6983005F02DFA08B177 -:10AE100017F8010B8DF83A009DF83A00682804D124 -:10AE2000387868280AD1622005E06C2804BF387899 -:10AE30006C2803D171208DF83A007F1C11A8B060F6 -:10AE40003978B1F1250023D01C3871D0001F0228B9 -:10AE50006ED9133800F09680093869D0801E00F052 -:10AE60002781401E00F0D180401E022860D9001FBB -:10AE700000F0CB80401F30D0401E00F08380401E89 -:10AE800020D0C01E09D0801E7CD0C01E7AD017E111 -:10AE9000F068411CF16025211BE12868011D296033 -:10AEA00000687060B26A002A02D5F8F705F907E079 -:10AEB000002105F0E5F900281ABF7168401AB06A50 -:10AEC000306107E12868011D296000680021CDE993 -:10AED000000111A870607821E6E09DF83A00622830 -:10AEE00018D0682806D06A280BD06C2819D0712891 -:10AEF00007D016E02868011D2960716A006801808A -:10AF0000E8E02A68101D2860706AC1171268C2E95B -:10AF10000001DFE02868011D2960716A0068017086 -:10AF2000D8E02868011D2960716A00680160D1E0DD -:10AF30002868C01D20F00700286000F108022A6080 -:10AF4000D0E90023CDE90023002B04D5F068421C92 -:10AF5000F2602D220DE0308E820704D5F068421C8D -:10AF6000F2602B2205E0C00704D5F068421CF260B5 -:10AF700020220255F06811AA8018706000A800F025 -:10AF8000C5F9A7E09DF83A006C2808BF2A6811D0DF -:10AF9000712808BF2A6802D06A282A680AD1D21DFF -:10AFA00022F007022A6094460CF108022A60DCE9CC -:10AFB000002303E0131D2B6012680023CDE900235A -:10AFC000682808BF92B207D0622808BFD2B203D067 -:10AFD000742818BF7A2802D10023CDE9002396F8FF -:10AFE000300000075CD5DDE90023002B08BF002AF4 -:10AFF00056D041F02000782852D1F0683022025516 -:10B00000401C421CF26001554AE09DF83A0062285B -:10B010000CD0682810D06A281AD06C2823D0712848 -:10B0200016D074281FD07A280CD01CE02868021D86 -:10B030002A6090F900201AE02868021D2A60B0F901 -:10B04000002014E02868021D2A60026800230FE037 -:10B050002868C01D20F00700286000F108022A605F -:10B06000D0E9002304E02868021D2A600268D31793 -:10B07000CDE90023002B04DAF068421CF2602D2297 -:10B080000DE0308E820704D5F068421CF2602B225E -:10B0900005E0C00704D5F068421CF260202202558A -:10B0A000F06811AA8018706000A800F0A4F811E000 -:10B0B000F068411CF16029680A1D2A60096808E0EF -:10B0C000F068421CF2602522025519B1F068421C5A -:10B0D000F26001557F1CF06AF168401AB169401AAC -:10B0E0003169401AF169401A7169401A316AA0EB5E -:10B0F000010A96F83000400711D420208DF8400056 -:10B10000BAF1010F0BDBD346012310AA00A9404678 -:10B1100000F02FFC002869D1BBF1010BF4D1F368DA -:10B1200011AA00A9404600F024FC00285ED130207E -:10B130008DF84000D6F818B0BBF1010F0ADB0123EF -:10B1400010AA00A9404600F014FC00284ED1BBF123 -:10B15000010BF4D13369726800A9404600F009FC84 -:10B16000002843D130208DF84000D6F81CB0BBF148 -:10B17000010F09DB012310AA00A9404600F0F9FBEA -:10B18000A0BBBBF1010BF5D173693069716842183E -:10B1900000A9404600F0EDFB40BB30208DF8400098 -:10B1A000D6F820B0BBF1010F09DB012310AA00A9DA -:10B1B000404600F0DEFBC8B9BBF1010BF5D196F8B3 -:10B1C000300040077FF5ABAD20208DF84000BAF18C -:10B1D000010FFFF6A4AD012310AA00A9404600F01C -:10B1E000C8FB18B9BAF1010AF5D198E54FF0FF3064 -:10B1F00021B0BDE8F08F2DE9FA4782B006463569E7 -:10B200006F2908BF082705D041F02000782814BF17 -:10B210000A2710273C24D6E90001804689469DF87C -:10B220000820642A18BF692A05D1002903DAD8F159 -:10B23000000869EB4909B9F1000F08BFB8F1000F28 -:10B240000CD1306B50B9082F3BD196F8380000076D -:10B2500037D53B24302085F83B0032E0A4F1010AC9 -:10B260005446FB17404649463A4602F0B7FACDE944 -:10B270000089B846A8FB0023DDE90089A8EB02029B -:10B280003032D2B23A2A03D39DF80830513B9A1893 -:10B290000AF8052080465FEA010908BFB8F1000FEF -:10B2A00003D0F06861198842D8D3082F09D196F8E5 -:10B2B0003800000705D5605D302802D0641E3020BC -:10B2C0006055C4F13C00B0616119F160316B884296 -:10B2D00007DA081A3062308F4FF6EF710840308776 -:10B2E00010E000290ED596F8381001F0140110294D -:10B2F00008D1716B7269891A326A891A081A012891 -:10B30000A8BF306204B0BDE8F08700002DE9F24F1D -:10B310008EB0044604AED4E90001CDE902019DF8E7 -:10B32000380040F020008DF8000061280BD0206B21 -:10B33000002848BF062005D404BF9DF800006728F8 -:10B3400001D1012020636168C1F30A5040F2FF730C -:10B3500098421ED1080304BF206800280AD10320A8 -:10B36000A0619DF838006138C0B21A2838D30FF2B6 -:10B37000446109E00320A0619DF838006138C0B243 -:10B380001A282AD30FF224610322E068F9F788FC17 -:10B39000B9E1012817DA204604F09EFF012812DBEC -:10B3A000002700209DF80010612920D1E16830229B -:10B3B00001F8012B4A1CE2609DF83820612A0CBF7D -:10B3C000782258220FE040F2FE31626861F31E528B -:10B3D0006260471A4FF0FF30E4E70FF2CC51D3E739 -:10B3E0000FF2CC51D0E70A706169891C616110B914 -:10B3F000002500277EE19DF80000612840F097803D -:10B40000206B00284CBF2125451C2DB26E1CD4E9B1 -:10B410000089DDE9020100220023F6F703FE3ABFAE -:10B4200089F00040CDE90280CDE902893F1F8DF807 -:10B4300010200DF11108012E35DBDDE9020100229B -:10B440000023F6F7D7FD2ED21C2102A804F066FFD8 -:10B45000DDE90201F6F72AFB8146F61F012E09DB22 -:10B46000F6F758FB02460B46DDE90201F6F7DEFB74 -:10B47000CDE9020108F20700072105E009F00F02FB -:10B4800000F8012D4FEA2919B9F1010F01DB491E1E -:10B49000F4D5491E5CBF002200F8012DF9D500F259 -:10B4A0000708012EC9DA0DF11100A8EB00010DF11A -:10B4B0001106A942B8BF0D462DB2002D30D4284642 -:10B4C000884206DA04A941184978082928BF0F21C3 -:10B4D00000D2002104AA821800E06D1E401E12F85E -:10B4E00001398B42F9D00F2904D104A941184A78B7 -:10B4F000521C4A70002802D504AE6D1C3F1D2DB2AF -:10B50000681E0DD481190A783032D2B23A2A03D398 -:10B510009DF838303A3B9A1801F80129401EF2D5BF -:10B52000206B002840F1E680681E2063E2E0DDE940 -:10B53000020100220023F6F775FD3CBF81F00041B7 -:10B54000CDE902013FB247F297507843474990FB5B -:10B55000F1F73FB2C7F107069246DFF814B1012EAA -:10B5600019DBDDE90289F00707D552465B46404604 -:10B570004946F6F7BDF98046894676105046594649 -:10B5800052465B46F6F7B4F982468B46002EEAD166 -:10B59000CDE9028921E076429046DFF8D89012E0AA -:10B5A000F00707D552465B4640464946F6F7A0F9F4 -:10B5B0008046894676105046594652465B46F6F715 -:10B5C00097F982468B46002EEAD1DDE90201424618 -:10B5D0004B46F6F7EBFBCDE902019DF8000066282B -:10B5E0000CBF07F10A000620216B4518142DA8BFD7 -:10B5F000132530208DF810000DF11106DFF878903A -:10B60000012D3BDBDDE90201F6F766FA06F10801E0 -:10B6100004220A26B0FBF6F303EB830EA0EB4E00E8 -:10B62000303001F8010DB3FBF6F000EB8006A3EB20 -:10B630004603303301F8013D521EEAD101F10806FC -:10B64000083D012DDCDBDDE90201F6F745FAF6F7EE -:10B650006BFA02460B46DDE90201F6F7E7FA002233 -:10B660004B46F6F745F9CDE90201CBE7A08601008C -:10B67000000024400000F03F84D797410DF11100F5 -:10B68000301A0DF1110602E0401E7F1E761C317843 -:10B690003029F9D09DF80010662902D13FB2791CFB -:10B6A00003E065290CBF01210021226B8D182DB20A -:10B6B000A842B8BF05462DB2002D1BD429468142B1 -:10B6C00004DA885D352828BF392000D230208A1955 -:10B6D000521E00E06D1E491E12F801398342F9D056 -:10B6E000392802D1885D401C8855002902D5761E74 -:10B6F0006D1C7F1C3FB200972BB232469DF838106C -:10B70000204600F003F80FB0BDE8F08F2DE9F043BC -:10B7100085B00546894617461E46D5F83080012E6D -:10B7200002DA01260FF2902749F02000BDF93040DF -:10B73000662808BF641C18D0672840F082806FF02C -:10B7400003008442C0F28380444580F28080641C00 -:10B7500095F83800000702D44645B8BFB04624B279 -:10B76000B8EB040848BF4FF00008E868A96924B2A4 -:10B77000012C25DA4A1C30230B54B8F1010F03DAEF -:10B7800095F83810090702D52E211154521CAA61D0 -:10B7900018EB040FB8BFC8F1000424B2614269621B -:10B7A000A044B045B8BF464636B2EE61324639468F -:10B7B000AB691818F9F774FAA8EB0600A862C1E0A3 -:10B7C0000818A64218DA32463946F9F769FAA96923 -:10B7D0007118A961A01B6862B8F1010F03DA95F82E -:10B7E0003800000705D5E8682E220A54E869401C95 -:10B7F000E861C5F82880A5E022463946F9F750FAF5 -:10B80000A8692018361BB8F1010F03DA95F8381033 -:10B81000090703D5E9682E224254401CA86136B2BC -:10B82000B045B8BF464636B23246E119EB68C0189B -:10B83000F9F736FAA8693018A861A8EB0600686223 -:10B8400080E0B9F1610F16D14FF0700918E046455C -:10B8500004DA95F83810090758BFB046B8F1010866 -:10B8600048BF4FF00008B9F1670F14BF4FF045090A -:10B870004FF0650904E0B9F1410F08BF4FF05009DE -:10B88000A9694A1CE86817F8013B0B54B8F1010F8D -:10B8900005DA95F83810090758BFAA6117D52E2187 -:10B8A0001154531CAB61B8F1010F10DB761E36B298 -:10B8B000B045B8BF464636B2324639461818F9F791 -:10B8C000EFF9A8693018A861A8EB06006862A869BA -:10B8D000E968471807F8019B002C03D42B2007F8D0 -:10B8E000010B03E02D2007F8010B644200260DF147 -:10B8F000080809E00A22214600A804F099FD0198F1 -:10B9000008F8010B009C761C24B2012CF2DA022EFE -:10B9100006DA49F02000652804BF302007F8010B43 -:10B920004EB9302007F8010B07E0761E02A8305C04 -:10B93000303007F8010B012EF7DAA869E9684018E2 -:10B94000381AE86195F8380000F0140010280DD17D -:10B950006869A9690818696A0818E9690818A96A6C -:10B960000818696B8842BCBF081A286205B0BDE898 -:10B97000F083F8B504460D4616461F46002077B101 -:10B9800016F8011BA868A047A86030B1E86A401CFF -:10B99000E86200207F1EF3D1F2BD4FF0FF30F2BD10 -:10B9A000686A6C747A4C00006E616E004E414E0005 -:10B9B000696E6600494E46003000000010B5EFF396 -:10B9C000108072B60A4C216841F47F01216080F337 -:10B9D0001088A06E10F4700F04BFA72004F030FD93 -:10B9E0004FF00070C4F81C020020C4F8140210BD0F -:10B9F00020ED00E080B5F4F7A7FDDFF8FC1A086041 -:10BA0000012002BDF0B4049C059D8E1E012E01DABA -:10BA10000C36401E3C216427B0FBF7F7C7EB9007BC -:10BA20004FF4C87CB0FBFCFC674440F26F1C0CFB7D -:10BA300006F64FF00C0CB6FBFCF6F619921940F224 -:10BA40006D1606FB0020DFF8B42A101800EB400248 -:10BA500003EBC20001FB004001FB0050F0BC70474B -:10BA60001CB50C4601680191416800918368C26869 -:10BA70000169491C406900F26C70FFF7C3FF206048 -:10BA8000002016BD10B58EB0DFF8740A046801A955 -:10BA90000020FEF71EFB00A90020FEF794FB9DF896 -:10BAA000040006909DF8050005909DF8060004909E -:10BAB0009DF80100401E08909DF8020007909DF837 -:10BAC00003006430099002A904A8FFF7C9FF4FF4EE -:10BAD0007A706043400AC0F57A700390029A4FF47E -:10BAE0007A73C117E3FB02010EB010BD10B5FFF76A -:10BAF000C9FFDFF8104AD4E90023821A0023012B82 -:10BB000005DB01DC002A02D3C4E900011A46104615 -:10BB100010BDF0B583B0044600A800210A4606C057 -:10BB2000A069E16845182888ADF80000B5F90270F1 -:10BB300000A84780B5F904608680BDF80000B4F81D -:10BB40005810401A2880B4F85A00381A6880B4F89F -:10BB50005C00301AA880BDF90000B5F90010C913C7 -:10BB6000B1EBE03F13D0B4F95810C913B1EBE03F8B -:10BB70000DD00FF6A410F4F7D0FAB5F900000128A3 -:10BB800002DBDFF8840901E047F6FF702880B5F991 -:10BB90000210C913B1EBE73F13D0B4F95A10C9131F -:10BBA000B1EBE73F0DD00FF67C10F4F7B6FAB5F91C -:10BBB0000200012802DBDFF8500901E047F6FF70C0 -:10BBC0006880B5F90410C913B1EBE63F13D0B4F99E -:10BBD0005C10C913B1EBE63F0DD00FF65410F4F72B -:10BBE0009CFAB5F90400012802DBDFF81C0901E02A -:10BBF00047F6FF70A88094F90800002804D10020BF -:10BC000000E0401C0328FCDBF7BD000070B584B0E9 -:10BC1000044600A800210A460B460EC0A069E16850 -:10BC20004518164694F90800012802D12046FFF76E -:10BC300070FF94F908000146012902D9C91E40F09D -:10BC40008980002801D14FF6FF76DFF8AC1809682B -:10BC5000411891F87010491E06295ED8DFE801F0FE -:10BC600004101D2936424F00B5F90210009100A9B9 -:10BC7000B5F90020B21A4A60B5F904208A6056E08E -:10BC8000B5F90010711A009100A9B5F90220B21A95 -:10BC90004A60B5F904208A6049E0B5F90210711ACA -:10BCA000009100A9B5F900204A60B5F904208A6026 -:10BCB0003DE0B5F90010711A009100A9B5F9022014 -:10BCC0004A60B5F90420B21A8A6030E0B5F9021072 -:10BCD000009100A9B5F900204A60B5F90420B21A14 -:10BCE0008A6024E0B5F90010009100A9B5F902209E -:10BCF000B21A4A60B5F90420B21A8A6017E0B5F9A1 -:10BD00000210711A009100A9B5F90020B21A4A6018 -:10BD1000B5F90420B21A8A6009E0B5F90010009163 -:10BD200000A9B5F902204A60B5F904208A6001280B -:10BD30000AD1002006E051F8202002F30F0241F85A -:10BD40002020401C0328F6DB009828804868688083 -:10BD50008868A880204600F0EFF894F908000028D1 -:10BD600002D12046FFF7D5FE012004B070BD0000CF -:10BD700070B52DED028B84B001A9002213460CC1D1 -:10BD80008169C268891890F908000A2800F2CD80FC -:10BD9000DFE800F00631A9CBCB97CBCB71B6C4005E -:10BDA0000888ADF80400B1F9024001A84480B1F957 -:10BDB00004508580DFF8400700689FED5E0ABDF9FA -:10BDC000041000EE901AF8EEE00A60EE800AC0ED72 -:10BDD000000A00EE904AF8EEE00A60EE800AC0ED3C -:10BDE000010A00EE905AF8EEE00A20EE800A001DEB -:10BDF00080ED010A99E00888ADF80400B1F902402D -:10BE000001A84480B1F904508580DFF8EC06006891 -:10BE1000061D9FEDD58BBDF9040000EE100AB8EEAB -:10BE2000C00A10EE100AF5F72BFD53EC182BF5F7AE -:10BE30005FFD04F017FBB06000EE104AB8EEC00AD8 -:10BE400010EE100AF5F71CFD53EC182BF5F750FD1A -:10BE500004F008FBF06000EE105AB8EEC00A10EED5 -:10BE6000100AF5F70DFD53EC182BF5F741FD04F022 -:10BE7000F9FA306159E01846ADF80200ADF800005B -:10BE80000888ADF802004888ADF80000DFF86806C1 -:10BE90000068061D9FEDC60ABDF9020000EE900A7B -:10BEA000F8EEE00A60EE800AC6ED0E0ABDF9000069 -:10BEB00000EE900AF8EEE00A20EE800A86ED0F0A06 -:10BEC00033E018460390086803909DED030AB8EE2E -:10BED000C00ADFEDB70A20EE200ADFF81C06006872 -:10BEE00080ED0C0A21E0DFF8100600680A88A0F84F -:10BEF0004A2000F24A004A8842808988818014E002 -:10BF0000DFF8F405006800F24A000A88C2804A8817 -:10BF100002818A884281C988818106E0DFF8D805DC -:10BF20000068B1F90010A0F85810012004B0BDEC71 -:10BF3000028B70BD60F61C3A10B5A7B0044600A88D -:10BF400000210A460B460EC01EA80FF2F051242213 -:10BF5000F8F7B6FE15A80FF208612422F8F7B0FE34 -:10BF60000CA80FF220612422F8F7AAFE03A80FF212 -:10BF700038612422F8F7A4FEA069E168401894F91A -:10BF80000810002902D0012940F0EA80DFF8681586 -:10BF9000096891F87B10012908D0C0F0B38003290B -:10BFA0005AD02ED3042900F08280ABE0B0F90410FF -:10BFB00000EE101AB8EEC00AB0F9001000EE901AA8 -:10BFC000F8EEE00A1EA99DED1E1A20EE811AD1EDB1 -:10BFD000021A00EE211A8DED001A00AAB0F9023003 -:10BFE00001EE103AB8EEC11A82ED011A91ED061A6F -:10BFF00060EE810A91ED081A40EE010AC2ED020AD4 -:10C0000099E0B0F9041000EE101AB8EEC00AB0F9C9 -:10C01000001000EE901AF8EEE00A15A99DED151A31 -:10C0200020EE811AD1ED021A00EE211A8DED001AD0 -:10C0300000AAB0F9023001EE103AB8EEC11A82ED52 -:10C04000011A91ED061A60EE810A91ED081A40EE90 -:10C05000010AC2ED020A6EE0B0F9001000EE101AFB -:10C06000B8EEC00A8DED000AB0F9041000EE101A07 -:10C07000B8EEC00AB0F9021000EE901AF8EEE00A2D -:10C080000CA900AA91ED041A20EE811AD1ED051A2F -:10C0900000EE211A82ED011A91ED071A60EE810A75 -:10C0A00091ED081A40EE010AC2ED020A43E0B0F930 -:10C0B000001000EE101AB8EEC00A8DED000AB0F9BB -:10C0C000041000EE101AB8EEC00AB0F9021000EE2B -:10C0D000901AF8EEE00A03A900AA91ED041A20EEE6 -:10C0E000811AD1ED051A00EE211A82ED011A91EDA7 -:10C0F000071A60EE810A91ED081A40EE010AC2EDBE -:10C10000020A18E0B0F9001000EE101AB8EEC00AEA -:10C110008DED000A00AAB0F9021000EE101AB8EE78 -:10C12000C00A82ED010AB0F9041000EE101AB8EE50 -:10C13000C00A82ED020A9DED000ABDEEC00A10EEB3 -:10C14000101A018092ED010ABDEEC00A10EE101A1D -:10C15000418092ED020ABDEEC00A10EE101A8180F5 -:10C16000012027B010BD000089AD84FA0A74313F68 -:10C1700070B50D46DFF8941351F820400026207F5B -:10C18000002801D1304670BD607A002803D0206EAF -:10C190008068804706462846216EC969884705465B -:10C1A000002E02D0206E40688047284670BD0000F7 -:10C1B0000AD7233C9B0701D542F2107292FBF1F1A2 -:10C1C00090F8222051430069814201DA0120704732 -:10C1D00000207047002901D48164C164002A03D47F -:10C1E000910701D580F820207047002903D4002151 -:10C1F0008164416181617047F2B58CB00446154697 -:10C2000019460020ADF82A0001900A208DF8080098 -:10C2100000208DF809008DF80A00BC4850F8246011 -:10C220000227307F002831D09DF94820002A08D409 -:10C23000D00706D513460A460C993046FFF7BAFFD9 -:10C2400048E03046FFF7C6FFA4F10C00C0B2062854 -:10C2500005D22146C9B20CA8326E92699047707A15 -:10C2600000281BD1294649B23046726E12689047A9 -:10C2700000280DD0306E40688047002804D1394630 -:10C280004F1EC9B20029F5D1002801D1002021E0BC -:10C29000294649B23046726E52689047707A401C07 -:10C2A00070722A4652B20C993046736E1B699847D9 -:10C2B00000F0B6F8072C0CD1002D0AD100208DF823 -:10C2C0000000112001900A208DF8080000A8F8F75E -:10C2D000E1FB01200DB0F0BD2DE9F0418CB004462A -:10C2E0000D46164619460020ADF82A0001900A2096 -:10C2F0008DF8080000208DF809008DF80A008348A9 -:10C3000050F824704FF00208387F002801D1002037 -:10C310003CE03846FFF769FF787A012818D13146AA -:10C3200049B238467A6E9268904700280AD0386E33 -:10C3300080688047002805D14046A0F10108C0B2BE -:10C340000028F4D1314649B238467A6ED268904717 -:10C35000787A002801D0401E7872324652B22946BF -:10C3600038467B6E5B69984700F05AF8072C0CD171 -:10C37000002E0AD101208DF80000112001900A2022 -:10C380008DF8080000A8F8F785FB01200CB0BDE887 -:10C39000F0812DE9F04104460D46164619465B48EA -:10C3A00050F82470387F002815D09DF91820002AF5 -:10C3B00008D4D00706D513460A4629463846BDE8B4 -:10C3C000F041F7E606EB460007EB8008D8F83800A6 -:10C3D0008068002801D5002020E03846FFF7FAFEEB -:10C3E000324652B2D8F83800816838467B6E5B69B5 -:10C3F0009847324652B2294638467B6E1B699847A9 -:10C40000A4F10C00C0B2062805D229462046FCF74C -:10C41000EBFF012002E000F003F80120BDE8F0810D -:10C4200070B56FF000452C463948016804E08A6811 -:10C43000A24200DA144609688142F8D1354E3078BC -:10C44000401C3070F6F7AFFE7078401C7070AC4244 -:10C4500000D10024284801688C66CA6E20468242BA -:10C460000AD0002801D0002A03D1C866F3F731FEB4 -:10C4700002E0012004F049F87078401E7070C0B2EC -:10C48000002801D1F6F789FEF6F730FF012070BDD4 -:10C4900038B505461F4C2078401C2070F6F783FE07 -:10C4A0006078401C607014480068C56618480168D0 -:10C4B00005E08A68B2FBF5F26A43CA600968814206 -:10C4C000F7D16078401E6070C0B2002801D1F6F745 -:10C4D00064FEBDE83140F6F709BF0D490A6808E07F -:10C4E0001369012B01DAD368136113691B1A1361F5 -:10C4F00012688A42F4D1704728FE00207505F5FFC6 -:10C5000028280040F0FD00200080FFFF00000020F0 -:10C51000600000202438002058206973206F766561 -:10C520007200000059206973206F76657200000068 -:10C530005A206973206F766572000000A3067F3F62 -:10C5400000000000F180B2BD000000000000803F4C -:10C5500000000000D87EB23D00000000A3067F3F2F -:10C56000A3067F3F00000000D87EB23D000000001F -:10C570000000803F00000000F180B2BD000000001C -:10C58000A3067F3F0000803F000000000000000085 -:10C5900000000000A3067F3FD87EB23D00000000EF -:10C5A000F180B2BDA3067F3F0000803F0000000085 -:10C5B0000000000000000000A3067F3FF180B2BD34 -:10C5C00000000000D87EB23DA3067F3F30B5044690 -:10C5D0000F480D46017881B0491C0170F6F7E3FD64 -:10C5E000A068E168884209D13821204603F094FF11 -:10C5F000F6F7D9FDA068E1688842F5D029462046C3 -:10C6000003F0A8FF01B0BDE83040F6F76FBE00BFF1 -:10C61000243800204FF0FF31401E02280BD9001FA4 -:10C62000042808D9C01F062805D90838012802D9CE -:10C63000C01E052800D801210846704700210128A6 -:10C6400009D0032807D0062805D0092803D00C28D4 -:10C6500001D00D2800D101210846704738B50446A5 -:10C660004FF0FF35F8F762F91C2C2AD8DFE804F008 -:10C670001616141616141616141429290F1412124D -:10C680001616142916162916181B1F2327004FF4F7 -:10C690007A7516E0C82514E0142512E0422510E052 -:10C6A000D0F8C4530DE000F57170856A09E000F51B -:10C6B0007170056D05E000F57170856F01E0D0F8CF -:10C6C0006454284632BD38B5DFF80848F3F73CFF1C -:10C6D000E06203F08DFFF8F729F92063002509E0F7 -:10C6E0001C2D04D101F20C41DFF8EC278A67406A67 -:10C6F00080476D1C1D2D80F2D480216B05EB8500D9 -:10C70000C00000224254401842704FF0FF32426095 -:10C7100000220272C2604272032D04D14C31DFF854 -:10C72000BC270A65E3E7012D03D1DFF8B427CA640B -:10C73000DDE7022D04D14C31DFF8A8278A62D6E765 -:10C74000002D6ED0042D04D14C31DFF89C278A6770 -:10C75000CDE7052D04D1DFF89427C1F8EC20C6E71A -:10C76000062D04D1EC31DFF888278A62BFE7072D58 -:10C7700004D1EC31DFF87C270A65B8E7082D04D135 -:10C78000EC31DFF874278A67B1E7092D04D1DFF8AF -:10C790006C27C1F88C21AAE70A2D42D00B2D40D07E -:10C7A0000C2D04D1DFF85827C1F804229FE70D2D86 -:10C7B00004D1DFF85027C1F82C2298E70E2D05D1BF -:10C7C00001F50B71DFF840278A6290E70F2D05D144 -:10C7D00001F50B71DFF834270A6588E7102D05D1C4 -:10C7E00001F50B71DFF828278A6780E7112D04D146 -:10C7F000DFF82027C1F8CC2279E7122D05D101F509 -:10C800003371DFF814278A6271E7142D05D101F521 -:10C810003371DFF808278A6769E7132D01D0162DD9 -:10C8200010D1DFF8FC160161DFF8F8164161DFF87E -:10C83000F8268261DFF8F426C261DFF8F42602628E -:10C84000416254E7152D04D1DFF8E826C1F86C23C6 -:10C850004DE7172D05D101F55B71DFF8DC260A6580 -:10C8600045E7182D05D101F55B71DFF8D0268A6701 -:10C870003DE7192D04D1DFF8C826C1F80C2436E7AE -:10C880001A2D05D101F20C41DFF8B8268A622EE795 -:10C890001B2D7FF425AF01F20C41DFF8AC260A65B1 -:10C8A00025E7012032BD0CB42DE9F04786B00546DE -:10C8B00088460126A94609EB8900C400DFF81476F2 -:10C8C000B8F10B0F1ED1386B04EB000A9AF8010087 -:10C8D000002817D02846FFF79DFE012812DB2846C6 -:10C8E000FFF798FE9AF8011081420BDB284600F012 -:10C8F000FCF80646386B2018002141700FF2C46026 -:10C90000F3F70BFC386B215C002918D121184A7809 -:10C91000002A14D100222254104648700EA983B078 -:10C9200068462022F8F7CCF90EBC284600F035F80E -:10C93000022801D102202BE0032800D10326B8F100 -:10C940000A0F04D1386B215C491C215410E0B8F166 -:10C950000B0F0DD1032D06D1386B90F8790000280C -:10C9600001D101F0BAF9386B20184178491C4170A7 -:10C97000386BF96A0A6E0192B1F85C1000912118C7 -:10C980004B78225C49460FF24460F3F7C6FB304611 -:10C9900006B0BDE8F0075DF80CFB0EB4FFB5044629 -:10C9A0000125C0B2FFF75AFEDFF8286504EB8401C9 -:10C9B000326B02EBC107786000203872F86009A979 -:10C9C00084B068462022F8F77BF90FBC3F69B8476E -:10C9D000022801D102200AE0032801D1032505E045 -:10C9E000F06A016E2A46A24011430166284604B04F -:10C9F000F0BC5DF810FB2DE9FC4704460D4601260E -:10CA0000274607EB87004FEAC008DFF8C894D9F83B -:10CA1000300008EB000A9AF80100022814D32046DF -:10CA2000FFF7F8FD01280FDB2046FFF7F3FD9AF82A -:10CA30000110814208DB2046FFF7ECFD8AF8010077 -:10CA40000FF29C50F3F769FBD9F8300018F800108A -:10CA5000002904D108EB00025278002A2FD00A2DB9 -:10CA600009D1002903D0491E08F8001017E0002161 -:10CA700008F8001013E00B2D11D108EB00014A78E3 -:10CA8000002A02D0521E4A7001E000224A70032C94 -:10CA900005D190F87900002801D101F02DF9D9F8DD -:10CAA000300018F80010002909D1404440780028CF -:10CAB00005D1204600F019F8032800D10326D9F843 -:10CAC0003000D9F82C100A6E0192B1F85C10009178 -:10CAD00008EB00014B7818F8002039460FF2085097 -:10CAE000F3F71BFB3046BDE8F687F8B50446012591 -:10CAF00004EB8400C700DFF8DC63306B3818406952 -:10CB00008047032800D10325204640B200F059F9A0 -:10CB1000032800D10325306B38184FF0FF314160F6 -:10CB200000210172C160F06A016E0122A2409143AE -:10CB300001662846F2BD38B5044604EB8400C00007 -:10CB4000DFF89053296B002242544018114641707F -:10CB50002046FFF7CAFFE86A026E21460FF29C40AA -:10CB6000F3F7DBFA012032BD2DE9F041AEB0044607 -:10CB70000D46ADB201208DF85400DFF8586316A8B9 -:10CB8000F16A5C22F8F79CF8139616A984B06846FF -:10CB90005C22F8F795F80FBC00F0DAF900270BE0FB -:10CBA000032803D1149703208DF85400306B4044C0 -:10CBB000002101727F1C7FB21D2F23DA0120B840B3 -:10CBC000F16A096E0842F5D007EB87004FEAC0080A -:10CBD000306B404441680029ECD4027A521C027246 -:10CBE000D2B26A4389B28A42E4DB80698047022874 -:10CBF000D6D1149702208DF85400DDE91401C4E960 -:10CC0000000103E0DDE91401C4E900012EB0BDE834 -:10CC1000F08100210A3842F20772904200D20121CD -:10CC2000084670472DE9F04383B004460020019088 -:10CC3000042204F1090101A8F5F70BFA6168DFF895 -:10CC40009462376B282505FB01704068019A904279 -:10CC500004D10FF2B430F3F760FA6AE01046FFF740 -:10CC6000D8FF002809D16168019B05FB017042686B -:10CC70000FF2A030F3F751FA5BE0DFF8D0723868BA -:10CC8000D0F8008026E090F908906068316B05FBD1 -:10CC90000010C068012101FA09F1084217D04FF0D5 -:10CCA000FF3000900346012201994846FFF7A4FA9D -:10CCB00040B200280BD1616801980090306B05FBF1 -:10CCC000010043684A460FF26030F3F726FA404607 -:10CCD000D0F80080B842D6D13868D0F8008020E083 -:10CCE00090F90890C868012202FA09F2104215D0A2 -:10CCF0004FF0FF33012249684846FFF7EDFA40B292 -:10CD000000280BD1616801980090306B05FB010091 -:10CD100043684A460FF22830F3F7FFF94046D0F84F -:10CD200000806168326B05FB0121B842D8D10198BF -:10CD30004860BDE8F7832DE9F041044600252E4602 -:10CD4000DFF890811AE006EB8600C700D8F83000C3 -:10CD50003918002048720120B040D8F82C20126EFB -:10CD600010420AD02046C9698847002805D0D8F863 -:10CD700030003818012141720D46761C1D2EE2DB71 -:10CD80002846BDE8F0815348C16A096E00290BD0DE -:10CD9000002107E001EB8102036B03EBC2020023D9 -:10CDA0005372491C1D29F5DB7047012101FA00F07F -:10CDB0004849C96A096E0840401E8041C043C00FFF -:10CDC00070472DE9F0478146012409EB8900C50031 -:10CDD000404E306B2818C068002828D05B4F386858 -:10CDE000D0F8008003E003244046D0F80080B84229 -:10CDF0001DD090F908A0306B2818C168012202FAF2 -:10CE00000AF2114021FA0AF149B20129ECD14FF09E -:10CE1000FF33012241685046FFF75EFA0028E2D056 -:10CE2000524649460FF23020F3F777F9DCE7204607 -:10CE3000BDE8F08710B58CB004460020ADF82A009C -:10CE400001900A208DF8080000208DF809008DF867 -:10CE50000A00ADF82A00600719D50520FFF7A5FFE5 -:10CE6000002807D004208DF800000520019000A8BC -:10CE7000F7F710FE0220FFF798FF002807D00420E4 -:10CE80008DF800000220019000A8F7F703FEE006ED -:10CE90000CD50820FFF789FF002807D003208DF864 -:10CEA00000000820019000A8F7F7F4FD0CB010BDB9 -:10CEB00002460020092A00D0704780B5012902D11E -:10CEC00003F0FCFC012002BD02492C22F7F7F8BE5A -:10CED00000000000ECFB00206D1E0208BFDA010814 -:10CEE00065820308BBEA010865D00108A7E80108CC -:10CEF00083660308DD7C0308C1E601080B0802080D -:10CF00001BD3010831650308115C0308D1720308C3 -:10CF100047790308ED6F030811780308DD760308ED -:10CF2000E14B0108DD4B0108E94B0108ED4B01081D -:10CF3000F14B0108F57D03080D7F0308111D020860 -:10CF4000EF7C0208DF6E0308EB380008BC07002006 -:10CF50000FB41798009901600199416002998160AE -:10CF60000399C1600499016105994161BDF84A10B6 -:10CF70000183BDF84C104183BDF84E1081830C999C -:10CF800001620F9941621099816204B070470000FC -:10CF90004168122903D1817A002000F05ABF132979 -:10CFA00003D1C17A012000F054BF142903D1017BC1 -:10CFB000022000F04EBF152902D1807A00F05ABF3E -:10CFC00070470000414C204558000000414C25644A -:10CFD00020256420256420256420256400000000AD -:10CFE000524C204558000000524C256420256420F6 -:10CFF0002564202564202564000000005445524D1E -:10D0000020256420256400004558204C4D435231B2 -:10D01000202564004558204C4D4352322025642081 -:10D0200025642025640000004558204C4D435233B0 -:10D03000202564202564202564202564000000004C -:10D040004558204C4D43523420256420256420252A -:10D050006420256400000000534D524120256420C7 -:10D060002564000038B5F7F761FC0446104DF3F76E -:10D070006BFA286003F038FD03F03BFD686003F0B5 -:10D080003DFD0C48C4F8B00004F1B0000A4941600D -:10D090000A4981600A49C1600A490161012032BD23 -:10D0A00003494968896808470148406800680047A3 -:10D0B00000FE0020E14B0108DD4B0108E94B0108AF -:10D0C000ED4B0108F14B01082DE9F04786B004460D -:10D0D00001A81421F4F716FDF2F7A5FF05464FF05D -:10D0E0000209002601E0761C76B20A2E80F29D80AD -:10D0F000022EF8D0032EF6D0062EF4D0514850F868 -:10D10000267007F10C08787A002805D1D8F8540069 -:10D11000406880470028E6D009F8046009F1010959 -:10D120004FFA89F9304609284FD8DFE800F0050AA0 -:10D130004E4E10154E10423CC8212846F3F72CF9EC -:10D1400043E04FF448712846F3F726F93DE03221D9 -:10D150002846F3F721F938E03C212846F3F71CF97B -:10D160004FF0000ABAF1030F2FDA0020D8F854105C -:10D170000969884714212846F3F70EF90120D8F8E9 -:10D1800054100969884714212846F3F705F9BAF1C4 -:10D19000020F05DA062101A8D8F8542052699047F9 -:10D1A0000AF1010ADEE74FF416712846F3F7F4F8A6 -:10D1B0000BE00020D8F8541009698847012088F84E -:10D1C00011003C212846F3F7E7F898F8151001A85C -:10D1D000D8F8542052699047002819D0D8F80C008C -:10D1E000F96800EB010A98F8152001A95046F4F7F8 -:10D1F00030FF3846FEF70AFD98F81520514609EB36 -:10D200000400F4F726FF98F9150081444FFA89F9D4 -:10D21000787A00287FF467AFD8F854008068804798 -:10D2200000287FF460AF002009E0A9F10200ADF80A -:10D230000000022200A92046F4F70BFF002006B0F0 -:10D24000BDE8F087000000200FB480B5BDF80A00EB -:10D2500067494880022802D3801E088001E0002030 -:10D2600008800C229DF909100020F7F761FB0328C4 -:10D2700001D1022000E0012002BC5DF814FB5C48F3 -:10D280000121418000210180012070475949087027 -:10D290007047000030B58DB002A8F7F7AFFB544CD3 -:10D2A0002088401C2080618880B2884232D30020D0 -:10D2B0002080054628E06068D0F8EC010121A940F3 -:10D2C000084220D0284603F0F7F900281BD400EBD1 -:10D2D00080009FED460ADDED0B0A60EE800AFDEE50 -:10D2E000E00A10EE901A00AA8152DDED0C0A20EE41 -:10D2F000800ABDEEC00A10EE101A8218518000A9F3 -:10D300004018012101716D1C132DD4DBDDE90001F2 -:10D3100003F0E2F901200DB030BD80B5F7F706FB50 -:10D32000334948603449C0F8F01100F5F8703349CA -:10D330004160334981600FF21101C1600FF2250194 -:10D340000161012002BD000010B50024294890F9B8 -:10D350000000002804D103F0DEF9002800D00124E9 -:10D36000204610BDF8B504460D463026287816FB39 -:10D37000004001210170287816FB00404170287898 -:10D3800016FB00400C218170287816FB00401949DB -:10D3900091F90010002902D00221C17001E00121A1 -:10D3A000C170287816FB004001210171287816FB16 -:10D3B000004008214171287816FB00400121C180FE -:10D3C000287816FB0047002003F038F938812878C8 -:10D3D00016FB0044002003F036F960812878401CD9 -:10D3E00028700C20BDE8F24003F047B90000C842A5 -:10D3F0008CAF00205BFE002049D201087FD20108DB -:10D4000095D20108C449022807D1C44890F8922057 -:10D4100042F0010280F8922009E0032807D1BF48BA -:10D4200090F8921041F0020180F89210BC49084631 -:10D43000704710B502F060FEF32002F0D7FE08241A -:10D440000AE00021204602F066FE092803D00FF210 -:10D45000F020F2F762FE0834182CF2D3BDE8104039 -:10D4600002F053BE2DE9F8430646B6F803004FEA32 -:10D47000D008D6F80900071DD6F80590F5F793FEF9 -:10D48000A84C6078401C6070A44D95F8910000286D -:10D4900008D10FF2BC20F2F740FEFFF7CAFF0120CF -:10D4A00085F8910002F028FEF32002F09FFEC8EB01 -:10D4B000081009EB80184FF0000909E019F807106F -:10D4C00009EB080002F078FE09F101090FFA89F969 -:10D4D000B6F801008145F1DB02F017FE05F2910676 -:10D4E000707800F00300032809D100F036F800201E -:10D4F000707085F891008C490220F3F7B9FC6078D0 -:10D50000401E6070C0B2002803D1BDE8F143F5F7BA -:10D5100044BEBDE8F18310B5040004D0012C04D151 -:10D5200003F053FC01E003F070FC204610BD002026 -:10D530007E498A79012A03D17D4800228A71704789 -:10D54000CA79012A02D17B480022CA717047734907 -:10D55000C87370477148C07B704738B56F4C04F290 -:10D5600011050120E8702871E32068710620ADF8EC -:10D5700000007148006890F81A01C00719D594F8A6 -:10D58000920000F00300032809D1EF20A8710720C2 -:10D59000ADF800000FF2C410F2F7BFFD09E0FFF78D -:10D5A000D9FFA8710720ADF800000FF2B810F2F70C -:10D5B000B4FDBDF80000C01EADF80200012060748B -:10D5C00002220DF1020104F11200F4F742FD00A95C -:10D5D00004F11100F5F779FF0020FFF7B8FF31BD26 -:10D5E00080B503F029FD002805D10FF28010BDE8B9 -:10D5F0000240F2F792BD01460FF27810F2F78DFD6E -:10D60000BDE8014003F08ABD00264B4CF2F70BFD4C -:10D610002060424D942231462846F4F720FD012235 -:10D6200010214FF47A5003F043FB42E00D2801D162 -:10D63000FFF7D6FF103EF6B208F101085FFA88F84E -:10D64000B8F1020F0BD2304607EB400003F033FD78 -:10D650000028EBD10120FFF77AFF01202874002673 -:10D66000287C002803D0FFF778FF30462874F2F7B3 -:10D6700091FE206890F81A11C90703D490F81A0196 -:10D68000400703D595F89200002827D00020C04617 -:10D6900003F0ABFB4FF480510120F2F7F1FE30466E -:10D6A000FFF755FF206890F81A110FF2E000F2F72B -:10D6B00034FD022003F03EFD206890F81A110FF2AD -:10D6C000C000F2F72AFDFFF78BFF4FF480510120D5 -:10D6D000F2F7D4FE1021194803F059FBFFF727FF9A -:10D6E00007462068407AFFF716FF0028BFD0002FBA -:10D6F000BDD0206890F81A01400705D54FF470722C -:10D7000039460420F6F702FB206890F81A01C0079A -:10D71000A6D5B04692E7000000400008E8F60020D9 -:10D7200000B000082438002024590020507B00203D -:10D73000A4590020645D002044FE002064590020AC -:10D7400053562D464C415345204641494C0000005C -:10D7500053562D53544152540000000053562D444B -:10D760004F4E450053562D4F4B0000005353492058 -:10D770005300000053534920462025640000000058 -:10D7800053562D52203078257800000053562D44F2 -:10D79000203078257800000013F0004C03D55B4260 -:10D7A000524263F100039CEA210C00F0178010B58F -:10D7B000644603D34942404261F1000100F00EF893 -:10D7C000640004D34942404261F10001244203D580 -:10D7D0005B42524263F1000310BD00001B4213D1B3 -:10D7E000094236D12AB18446B0FBF2F002FB10C2E6 -:10D7F000704703F0C3BCFCD30022002370470B002A -:10D800000200002100207047904271EB030CF6D318 -:10D8100070B5B1FA81F4B3FA83F52C1BA340C4F1BF -:10D82000200532FA05F63343A2405FF00046E64099 -:10D8300002E05B085FEA3202841A71EB030524BF41 -:10D84000204629467641F4D302000B003000002127 -:10D8500070BD012ACFD970B5140C20D0B1FA81F473 -:10D86000B2FA82F5C4F120046419B4F12006D6D3CB -:10D87000B2405FF00044F440002502E052085FEA45 -:10D880003303C61A71EB020E24BF30467146644161 -:10D890006D41F3D302000B002000290070BD0C463F -:10D8A000B1FBF2F102FB11452D0445EA1045B5FB31 -:10D8B000F2F402FB145580B240EA0545B5FBF2F0E4 -:10D8C00002FB105240EA044070BD00000FB480B566 -:10D8D000032200210846F7F72BF8022801D1022085 -:10D8E00018E00FF63040F2F718FCDFF8C80B002103 -:10D8F0004173C18181619DF80B209DF80A109DF84C -:10D90000090003F0CEFD54220021DFF8C00BF4F72C -:10D91000A6FB012002BC5DF814FB0120704730B566 -:10D920008BB000A8F7F76AF805210320F7F79DF8F8 -:10D93000002802D1DFF8800B0890DFF8784B2069CF -:10D94000C56F03F05EFD207294F90800022806D12D -:10D95000422D04D114210320F7F752F807E00128E3 -:10D9600005D1142D03D142210320F7F749F82846A9 -:10D9700080B2DDED081A00A991EC030A03F0ACFCBB -:10D9800060692818606101200BB030BD1CB5DFF85C -:10D99000244B94F90000002843D400A8F2F7B3FD0B -:10D9A000204600A90622F7F77BF994F90A0094F9BA -:10D9B0000110814229D1217B0818A07240B23D2874 -:10D9C00001DB3C38A07294F90A100FF65830F2F7D8 -:10D9D000A4FB00206061DFF8E40A90F901004FF039 -:10D9E000FF31884201D1012016BD94F90110081AB7 -:10D9F000F4F790F821F00041F4F758F840B201280C -:10DA000001DB012016BD002016BDDFF8B40A90F935 -:10DA10000120914203D0D4E90023C0E90023002073 -:10DA200016BD6069DFF8D01A884205DB0FF60030BA -:10DA3000F2F773FB012016BD002016BD2DE9F84357 -:10DA40000026DFF8704A07E07A19A27252B2314616 -:10DA50000FF6E820F2F761FB94F90A50002E21D46A -:10DA60006078461B76B294F90C70002EECD53046E7 -:10DA7000F4F750F821F0004102460B4690469946D3 -:10DA80003846F4F747F842464B46F4F7CBFAE3D270 -:10DA9000EA1BA272002652B231460FF6B420F2F70A -:10DAA0003CFBD9E73D2D02DBA5F13C00A07294F9C7 -:10DAB0000A100FF6B020BDE8F443F2F72EBB10B504 -:10DAC000DFF8F04901202072002060724FF0FF3033 -:10DAD00020700F20E0721420207300206073E0811A -:10DAE000A061F6F723FF2061DFF8D819C0F888108D -:10DAF0008830DFF8D4194160DFF8001A81600FF236 -:10DB00001101C1600FF21D510161012010BD000023 -:10DB10002DE9F043A9B00546002413A803F075FCD5 -:10DB2000DFF8A8692046129001201190314684B098 -:10DB300068465422F7F7C4F80FBC00F0F9F807461E -:10DB40009DED210AD6ED0E0A30EE600A10EE100AA5 -:10DB5000F3F796FE2246DFF87839F3F7C9FEF3F7BC -:10DB6000A5FF80461FFA88F8BDF89200B6F8461067 -:10DB7000461AF6B2DFF83C99002D38D1002F02D1B9 -:10DB800056EA080018D00124002F15D0DFF870598C -:10DB9000A868B84210D0204604F0D9F8204604F016 -:10DBA00084F9A868381AC9F81C00AF6032463946B3 -:10DBB0000FF6BC10F2F7B1FADFF84459AF6000205D -:10DBC000C9F814004FF0FF3089F80000DFF8F028A2 -:10DBD000D9E90001C2E90001C5E90001DFF8DC284C -:10DBE000C2E9000199F80B0089F80A002BE000F067 -:10DBF0002CF900281CD0204689F80900DFF8C0283D -:10DC0000D9E90001C2E9000100A8F2F77CFC48460E -:10DC100000A90622F7F744F899F9023099F9012092 -:10DC200099F900100FF65410F2F777FAFFF706FF94 -:10DC3000FFF7ACFE002806D0DFF88008D9E9002302 -:10DC4000C0E90023012499F80D00012832D1B9F868 -:10DC50000E00002805D10FF63C10F2F75EFA012401 -:10DC600028E0D9F81810814219D2002F02D156EAC3 -:10DC7000080000D00124DFF8885895F9020099F9CE -:10DC80000220904216D0491CC9F818100FF6141043 -:10DC9000F2F743FAD9E90001C5E900010AE00020E2 -:10DCA00089F80D00A9F80E00C9F818000FF6041045 -:10DCB000F2F733FA012C02D10020C9F81400D9F888 -:10DCC000100090F87900002803D10020C9F8140052 -:10DCD0000446204629B0BDE8F08310B5DFF8D4072C -:10DCE00000214161032205210020F6F721FE0446B0 -:10DCF00000F007F8204610BD032205210120F6F7A9 -:10DD000017BE00B595B000A803F07FFB542200A910 -:10DD1000DFF8B807F4F79DF9012015B000BDDFF872 -:10DD20009407C0697047DFF88C070021C161704714 -:10DD30000FB430B595B09DF9B4409DF9B8000025F9 -:10DD400001280BD103F026FC1899884202D3451A0A -:10DD5000EDB270E08038451AEDB26CE000A803F037 -:10DD600054FB641E082C66D8DFE804F02905111D59 -:10DD70002936424E5A0001981999884201D3451A12 -:10DD800059E0DFF880271018401A451C53E002982C -:10DD90001A99884201D3451A4DE0DFF86827101818 -:10DDA000401A451C47E003981B99884201D3451A45 -:10DDB00041E0DFF850271018401A451C3BE000985E -:10DDC0001899884201D3451A35E0DFF8381708184A -:10DDD0001899401A451C2EE004981C99884201D3DA -:10DDE000451A28E0DFF81C271018401A451C22E0CD -:10DDF00005981D99884201D3451A1CE0DFF80427D5 -:10DE00001018401A451C16E006981E99884201D346 -:10DE1000451A10E0DFF8EC261018401A451C0AE0FD -:10DE200007981F99884201D3451A04E0DFF8D426E9 -:10DE30001018401A451C284615B030BC5DF814FB7C -:10DE4000DFF87006012141727047DFF86806407AFA -:10DE5000704703F0E4BADFF85C16792802D3782221 -:10DE6000CA8100E0C88101224A7301460FF2547052 -:10DE7000F2F753B910B5040001D1012402E0072CD8 -:10DE800000D3062421460FF25070F2F746F9641EC3 -:10DE9000052C2DD8DFE804F0030A11181F26DFF83F -:10DEA00014063721C1723C21017321E0DFF804061A -:10DEB0001921C1721E2101731AE0DFF8F8050F2144 -:10DEC000C1721421017313E0DFF8E8050A21C17261 -:10DED0000F2101730CE0DFF8DC050721C1720C2172 -:10DEE000017305E0DFF8CC050521C1720A21017339 -:10DEF000DFF8C005C17A8172BDE810409EE50000E0 -:10DF00000FB400B595B000A803F07FFA9DED080AA4 -:10DF1000DDED1E0AB4EE600AF1EE10FA02DB30EE1F -:10DF2000600A05E09FED3E1A71EE600A30EE800A4D -:10DF300010EE100AF3F7A4FCDFF89825DFF8983507 -:10DF4000F3F700FE02F08EFAF3F79AFC0022DFF8F6 -:10DF50008C35F3F7CDFCF3F7A9FD00EE100AB8EE0F -:10DF6000C00A10EE100AF3F78BFCDFF86825DFF823 -:10DF70007035F3F7BDFCDFF86C25DFF88C35F3F76F -:10DF8000E1FD02F06FFA00EE100A15B05DF814FB27 -:10DF90000FB400B595B000A803F037FA9DED0D0A57 -:10DFA000DDED230AB4EE600AF1EE10FA02DB30EE8A -:10DFB000600A05E09FED1A1A71EE600A30EE800AE1 -:10DFC00010EE100AF3F75CFCDFF80825DFF80835DF -:10DFD000F3F7B8FD02F046FAF3F752FC0022DFF83F -:10DFE000FC34F3F785FCF3F761FD00EE100AB8EEA0 -:10DFF000C00A10EE100AF3F743FCDFF8D824DFF86C -:10E00000E034F3F775FCDFF8DC24DFF8FC34F3F7D9 -:10E0100099FD02F027FA00EE100A15B05DF814FB26 -:10E02000002474492DE9F0472DED068BA8B0064673 -:10E030000D4613A803F0E9F93024287814FB00609A -:10E0400001210170287814FB0060DFF868144A7B16 -:10E05000012A0CD103224270287814FB00600122AF -:10E06000C270C889002804D10020487301E0012152 -:10E070004170287814FB0060032181700DF1840940 -:10E080009FED868B9FED879BDFF8407400201290F8 -:10E0900001201190394684B068465422F6F710FEEC -:10E0A0000FBCFFF745FE0A28287814FB006080F0BB -:10E0B000FD8000210171287814FB006898F804A005 -:10E0C0000846129002201190394684B068465422C6 -:10E0D000F6F7F6FD0FBCFFF72BFE40EA0A0088F8C2 -:10E0E0000400287814FB006800201290032011908F -:10E0F000394684B068465422F6F7E2FD0FBCFFF7BC -:10E1000017FE88F80500287814FB0068002012909C -:10E1100004201190394684B068465422F6F7D0FDA9 -:10E120000FBCFFF705FE88F80600287814FB00688E -:10E130000020129005201190394684B06846542280 -:10E14000F6F7BEFD0FBCFFF7F3FD88F80700394670 -:10E1500084B068465422F6F7B3FD0FBCFFF718FFF2 -:10E1600010EE100AF3F78CFB41EC100B287814FB2F -:10E17000006853EC102B51EC190BF3F7B9FBF3F7D4 -:10E1800095FCA8F80E00287814FB00682198F3F796 -:10E1900077FB53EC182BF3F7ABFBF3F787FC88F80E -:10E1A0001000287814FB0060B9F80E10417439464D -:10E1B00084B068465422F6F783FD0FBCFFF7A0FE3B -:10E1C00010EE100AF3F75CFB41EC1A0B287814FBF5 -:10E1D000006853EC1A2B51EC190BF3F789FBF3F79A -:10E1E00065FC88F81200287814FB0068D9F808004C -:10E1F000F3F746FB53EC182BF3F77AFBF3F756FCD7 -:10E2000088F81300287814FB00680020129006207C -:10E210001190394684B068465422F6F751FD0FBC80 -:10E22000FFF786FD88F80800287814FB00680020B6 -:10E23000129007201190394684B068465422F6F7B0 -:10E240003FFD0FBCFFF774FD88F80900287814FB28 -:10E2500000680020129008201190394684B068466A -:10E260005422F6F72DFD0FBCFFF762FD88F80A0077 -:10E27000287814FB00640020129009201190394680 -:10E2800084B068465422F6F71BFD0FBCFFF750FD23 -:10E29000E0722878401C287005E100BF00000000F3 -:10E2A000000024400000000000005940802101715E -:10E2B000287814FB00680020129002201190394643 -:10E2C00084B068465422F6F7FBFC0FBCFFF730FD24 -:10E2D000C8F80500287814FB00680020129003207D -:10E2E0001190394684B068465422F6F7E9FC0FBC19 -:10E2F000FFF71EFDC8F80900287814FB006800200D -:10E30000129004201190394684B068465422F6F7E2 -:10E31000D7FC0FBCFFF70CFDC8F80D00287814FBE4 -:10E3200000680020129005201190394684B068469C -:10E330005422F6F7C5FC0FBCFFF7FAFCC8F8110031 -:10E34000394684B068465422F6F7BAFC0FBCFFF792 -:10E350001FFE10EE100AF3F793FA41EC100B287829 -:10E3600014FB006853EC102B51EC190BF3F7C0FAB7 -:10E37000F3F7B2FBC8F82700287814FB006821984F -:10E38000F3F77EFA53EC182BF3F7B2FAF3F78EFBA0 -:10E3900088F82B00287814FB0060B9F80E1080F87C -:10E3A0002C10394684B068465422F6F789FC0FBC1D -:10E3B000FFF7A6FD10EE100AF3F762FA41EC1A0B14 -:10E3C000494A4A4BF3F716FE06D8494A494BF3F738 -:10E3D00029FE01D29FED4DAB287814FB006853EC69 -:10E3E0001A2B51EC180BF3F783FAF3F75FFBA8F83D -:10E3F0002D00287814FB0068D9F80800F3F740FADC -:10E4000053EC182BF3F774FAF3F750FB88F82F004E -:10E41000287814FB006800201290062011903946DD -:10E4200084B068465422F6F74BFC0FBCFFF780FC23 -:10E43000C8F81500287814FB006800201290072007 -:10E440001190394684B068465422F6F739FC0FBC67 -:10E45000FFF76EFCC8F81900287814FB006800204C -:10E46000129008201190394684B068465422F6F77D -:10E4700027FC0FBCFFF75CFCC8F81D00287814FBD4 -:10E4800000640020129009201190394684B068463B -:10E490005422F6F715FC0FBCFFF74AFCC4F8210024 -:10E4A0002878401C2870FFF72CFC28B0BDEC068BA8 -:10E4B000BDE8F08770FC002000007A4410FE0020C8 -:10E4C00008FE0020CDD801081BD9010844F5002022 -:10E4D000000024407B14AE47E17A743F00005940AD -:10E4E000E17A843F2D431CEBB81E85EB51B89E3F6B -:10E4F0009A9999999999B93F40771B001FD90108BA -:10E50000B4FD002080969800E2361A3F9A999999B6 -:10E510009999B93F50443A205374617274506564BC -:10E520006F00000050443A204E5420256400000043 -:10E5300050443A204E6F54696D65000050443A20B3 -:10E54000636F6D70312025642C202564000000006D -:10E5500050443A20636F6D70322025642C2025646E -:10E560000000000050443A20435554202564000028 -:10E57000537465703D25642C2025640050443A5442 -:10E58000696D654E6F7469202564202564202564BB -:10E590000000000050443A2053746F7020446174AE -:10E5A0006131000050443A207574696D6572202510 -:10E5B0006400000050443A2053746F70204461742A -:10E5C0006132000050443A205374617274204461F7 -:10E5D000746120256400000050443A2055542025E1 -:10E5E000640000000FB480B5082200210846F6F749 -:10E5F0009FF9022801D1022004E06948002101703E -:10E600004180012002BC5DF814FB654800210170C7 -:10E610000120704738B501240020ADF80000604D9E -:10E6200095F90000002809D1204628700020A88014 -:10E63000A86803F075FC03F0E9FD29E0012829D161 -:10E640006888401C68800DF10101A86803F08AFE0B -:10E65000002815D0082200212046F6F769F9032882 -:10E6600000D1032408220B210020F6F761F90228CB -:10E6700001D1022032BD0220287004F041F807E0E9 -:10E68000B5F90200962803DB0520287000F057F842 -:10E69000204632BD0328FBD1A888401CA88000B2C8 -:10E6A000FB28F1DA00A9A86803F076FC0028EFD077 -:10E6B00004202870204600F033F800F040F8E7E727 -:10E6C00010B5374CF6F732F9E060F1F73DFFA06086 -:10E6D000E0683449C0F8501100F5A8703249416033 -:10E6E000324981600FF20D01C1600FF2C901016171 -:10E6F000012010BD01460020294AD26892F841212C -:10E70000002A02D0012900D106E0704780B5002020 -:10E7100000F006F8012002BD254890F9000070477E -:10E7200023490870704780B5082200210846F6F793 -:10E73000FFF8022801D1022002BD012002BD80B5F0 -:10E74000174800218180418008220120F6F7F0F867 -:10E75000032801D1032002BD012002BD38B50124E8 -:10E760000F4D95F90000022815D108220B212046F3 -:10E77000F6F7DEF8032800D10324FFF7D4FF0228C0 -:10E7800001D1022032BD032800D1032403202870C8 -:10E7900002A0F1F7C2FC204632BD000053414900FF -:10E7A000687B0020E5E501080BE6010815E6010895 -:10E7B000FB7B002018B430220B7812FB03030124EA -:10E7C0001C700B7812FB03035C700B7812FB0303C5 -:10E7D00008249C700B7812FB03000122C270087899 -:10E7E000401C087011BC91E70FB480B58748012127 -:10E7F0000170052200210846F6F79AF8022801D197 -:10E80000022016E0052209210020F6F791F80228DF -:10E8100001D102200DE0052207210020F6F788F83B -:10E82000022801D1022004E000F0E8F803F090FF94 -:10E83000012002BC5DF814FB38B501240522092132 -:10E840002046F6F775F8032800D103240522072196 -:10E850000120F6F76DF8032800D103246B4D95F9DC -:10E860000000032801D0012807D105220021012042 -:10E87000F6F75EF8032800D103240020287000F08A -:10E88000BDF804F0DFF8204632BD80B5002000F06E -:10E890003CF8022801D1022002BD032801D1032047 -:10E8A00002BD012002BD10B5584CF6F73FF82061BB -:10E8B000F1F74AFEA060F1F7B6FBE0602069544929 -:10E8C000C0F8D810D83053494160534981600FF2E5 -:10E8D0001101C1600FF249110161012010BD00005A -:10E8E00001460020494A126992F8C920002A02D044 -:10E8F000012900D102E07047002003E0474890F969 -:10E900000000704745490870704770B582B00646F0 -:10E9100001253E4C94F90000012823D1A088401C19 -:10E92000A08000B24C280BDB0020A08002202070C9 -:10E93000052200212846F5F7FBFF032800D1032517 -:10E94000012E59D1E068007D012807D1B4F90400F7 -:10E950001F2851DB6078401C60704DE0A078401C9F -:10E96000A07049E002281CD1012E0AD1E068007D88 -:10E97000012803D16078401C607002E0A078401C40 -:10E98000A07094F90100012836DB05220021084619 -:10E99000F5F7CEFF022801D1022076BD03202070BA -:10E9A0002AE0032828D100208DF8000000A9A068E3 -:10E9B00003F0F2FEC0B202280DD105220021284644 -:10E9C000F5F7B6FF032800D103250120FFF79AFFD2 -:10E9D0000420207010E003280ED1052200212846D3 -:10E9E000F5F7A6FF032800D1032500206070A07072 -:10E9F0000220207003F0ACFE284676BD03480021BB -:10EA000081804170817070470000000014FD00207B -:10EA1000E9E7010839E801088BE801085DFE0020FC -:10EA200010B50C463021227811FB0202012313702D -:10EA3000227811FB02025370227811FB0202052397 -:10EA40009370227811FB02000121C170FFF754FF7F -:10EA50002078401C207010BD0FB480B50222012127 -:10EA60000020F5F765FF022801D102200EE0022206 -:10EA700007210020F5F75CFF022801D1022005E004 -:10EA800003F0EAFF404800210170012002BC5DF85C -:10EA900014FB3D48002101700120704700B58BB088 -:10EAA00000A8F5F7ABFF03A890EC030A04F00AF8FE -:10EAB0003549087001200BB000BD10B5324CF5F798 -:10EAC00035FFA060F1F7AFFA6060A0682F490166DA -:10EAD0002F4941662F4981660FF21D01C1660FF271 -:10EAE00069010167012010BD80B527484068007D9D -:10EAF00003F0E1FF012002BD002023498A6892F85B -:10EB00005120002A04D091F90010002900D00120E2 -:10EB100070471D48002101700120704710B5002486 -:10EB2000012804D007D303280BD002D303E001242B -:10EB300007E0022405E0032401460FF25C00F1F730 -:10EB4000ECFA204610BD000038B50C463021227882 -:10EB500011FB020201231370227811FB0202537091 -:10EB6000227811FB020202239370227811FB020526 -:10EB7000054890F90000FFF7D1FFE8702078401CAD -:10EB80002070BDE83140C4E790FD002059EA01083B -:10EB900093EA01089DEA01084C4D4350532031206F -:10EBA0002564000070B504463548364E0568B5B199 -:10EBB000287A88B16868A0420ED101202872307886 -:10EBC000401C3070287A401E2872C0B210B9284606 -:10EBD00004F03AFEF4F78AFBED68002DE8D170BD31 -:10EBE00010B504462848294901600020002102464A -:10EBF00003460FC4103CF4F7D6FA21480168E160DF -:10EC0000046020484078002804BFBDE81040F4F7B5 -:10EC1000C4BA10BD30B51B4D0446287881B0401CE5 -:10EC20002870A868217A11B9606001250DE061683B -:10EC3000814208D01021204601F06EFC207A002885 -:10EC4000F8D1A8686060207A451C2572F4F74EFB65 -:10EC5000284601B030BD0B490A78521C0A70017A6F -:10EC6000491E0172C9B2002918BFF4F73FBB00B5B5 -:10EC700081B004F0E9FD01B05DF804EBF4F736BBB8 -:10EC8000EC7B002024380020D07B0020A5EB01087D -:10EC9000DFF82C0C016899B94FF4803181604FF492 -:10ECA000805141604FF0FF31C16001610421416139 -:10ECB000DFF8101C0422C1F8B821DFF80C1C016039 -:10ECC0000120704701F1080313F0070305D001F19B -:10ECD0000803C3F1080303F007035918D21A81612E -:10ECE000C26042F001034B60511828224A60DFF8ED -:10ECF000D01B0969C16170472DE9F84F054601F144 -:10ED0000080010F0070005D001F10800C0F108006C -:10ED100000F0070000EB010A02F1080010F0070004 -:10ED200005D002F10800C0F1080000F007008418C7 -:10ED300003EB0A07A4EB0A00A0EB030843F003006F -:10ED4000CAF80400A74228BF04F094FD2079C00748 -:10ED500058BF04F08FFDB8F1100F38BF04F08AFDE2 -:10ED6000A869844207D1E8684044E860AF6140F098 -:10ED70000100786048E16869844208D1A86840448D -:10ED8000A8606F6140F001017960C0513CE16068AA -:10ED900000F00301012940F09F80C008C0000090EE -:10EDA0004FEAD00BBBF1200F2FD2D4F80890E668C1 -:10EDB000B44208BF04F05EFD4C4508BF04F05AFDA4 -:10EDC0006068C008C000B0EBCB0F18BF04F052FD64 -:10EDD000B14506D12868012101FA0BF1884328606A -:10EDE00077E005EBCB0000F12801894502D02969C5 -:10EDF00089456CD32830864202D02869864266D382 -:10EE0000C9F80C60C6F8089063E0D4F81890E6687A -:10EE1000A64206D0A068296988421DD3C660B060AA -:10EE20001CE004F11400066836B904F1100006680D -:10EE3000A6B101E00846066806F114010A68002A36 -:10EE400002BF06F110010A68002AF3D1296988423D -:10EE500002D30021016001E004F00CFDB9F1000FC4 -:10EE600037D0E06905EB800000F5987001688C42AE -:10EE700009D10660300014D168680121E26991402F -:10EE80008843686025E02869814508D3D9F81000D7 -:10EE9000A04214BFC9F81460C9F8106001E004F082 -:10EEA000E9FCB6B12869864211D3C6F818902169E9 -:10EEB00029B1814226BF31618E6104F0DBFC6069BB -:10EEC00038B12969884202D37061866101E004F09B -:10EED000D1FC0098041980446068400840006060DC -:10EEE00048F00100786048F807804FEAD806202EE5 -:10EEF0001FD205EBC60000F12804A146B8F1100F9F -:10EF000038BF04F0B7FC0120B0402968014202D1AB -:10EF10000843286006E0A068296988422CBF814622 -:10EF200004F0A8FCA760C9F80C70C7F80890FC6052 -:10EF30006AE05FEA182008BF002123D0B0F5803FC7 -:10EF400028BF1F211ED2A0F58071090C01F0080115 -:10EF50008840A0F58052120C02F004029040A0F507 -:10EF600080431B0C03F00203C1F10E01891AC91A78 -:10EF7000984001EBD030C11D28FA01F101F00101E8 -:10EF800001EB400105EB810000F59872F96100206A -:10EF900078613861012088406B68034204D11843CE -:10EFA00068601760BA611DE010681F290EBF00215C -:10EFB0004908C1F1190108FA01F100E01046426860 -:10EFC000D208D200424510D0CA0F00EB820202F1F3 -:10EFD000100349001A68002AF0D129698B4211D325 -:10EFE0001F60B861FF60BF600EE081682A699042CF -:10EFF00028BF914206D3CF608760B960F8600020D7 -:10F00000B86101E004F036FC0AF10800BDE8F28FB7 -:10F010002DE9FE4F0446A56904F5DE7001688D42B6 -:10F0200003D3426851188D4202D380680028F5D17D -:10F03000416800680E18A6F12F0000F1080111F0D8 -:10F04000070105D000F10801C1F1080101F0070135 -:10F0500001EB000A05F11000824538BFAA460AF10B -:10F06000080B0AF1180900270198A0F1280200995D -:10F070002046FFF727FE1BF0070018BF04F0FAFB3D -:10F080001B20CAF8040004F5DE70B0E80E10ABE8EF -:10F090000E10ABF110010098C4F8BC010198C4F83F -:10F0A000C0010298C4F8C801C4F8C41100E0814648 -:10F0B00009F104000721C9F804107F1C011DB142A9 -:10F0C000F5D3022FB8BF04F0D5FBAA4500F09C8011 -:10F0D000AAEB050041194A68520852004A6040F004 -:10F0E000010169604051C708202F1FD204EBC701FE -:10F0F00001F12806B046102838BF04F0BBFB0121FF -:10F1000001FA07F02168014202D10843206006E0BD -:10F11000B068216988422CBF804604F0ABFBB56023 -:10F12000C8F80C50C5F80880EE606DE0010A08BF11 -:10F13000002223D0B1F5803F28BF1F221ED2A1F5A7 -:10F140008072120C02F008029140A1F580531B0C52 -:10F1500003F004039940A1F58046360C06F0020640 -:10F16000C2F10E02D21A921BB14002EBD131CA1D7C -:10F1700020FA02F202F0010202EB410204EB8201EA -:10F1800001F59873EA6100216961296101219140CB -:10F1900066680E4205D141EA060060601D60AB6101 -:10F1A0001DE019681F2A0EBF00225208C2F1190281 -:10F1B00000FA02F200E019464B68DB08DB008342EC -:10F1C00010D0D30F01EB830303F110065200336814 -:10F1D000002BF0D12069864211D33560A961ED6022 -:10F1E000AD6011E088682269914228BF904206D341 -:10F1F000C5608D60A860E9600020A86104E003B0EC -:10F20000BDE8F04F04F036BB03B0BDE8F08FF8B5B1 -:10F2100004460D46DFF8A866306808B9FFF738FDE8 -:10F2200004F02CFB01001CBF0A6811F1010F00F073 -:10F230008A80D4F8B0011018C4F8B001D4F8B43101 -:10F24000834238BF0346C4F8B431A06958BB206973 -:10F2500008B1814200D22161C4F8BC11C4F8C021B8 -:10F260000020C4F8C801306860624FF0FF302062AF -:10F270002046202300F12806F660B66008305B1EA9 -:10F28000F8D1DFF84006844208BF283A27D054F866 -:10F29000040CC00814EBC00008385118091AA1F179 -:10F2A000280201461BE004F5DE70034600E09B687F -:10F2B000CBB15E681F68F619B142F8D11E7B3607E4 -:10F2C00011D4A669BE420ED3D3F804C06744BE422F -:10F2D00009D202EB0C005860E0681218A1692046C0 -:10F2E000FFF7F0FC1EE02369994238BF2161034615 -:10F2F000501800E09B688BB11E688642FAD1187BDB -:10F3000000070BD4304619605E6892195A602B468C -:10F310000246204601B0BDE8F040EDE4002320465F -:10F32000FFF776FEE06885420DD2401BE060A169E0 -:10F330006A18A26140F00100506045F00300486087 -:10F3400001F10800F2BD0020F2BD2DE9F84F05469D -:10F350008B460024CBF100085FEA1B2023D0B0F5D8 -:10F36000803F28BF1F201ED2A0F58071090C01F03C -:10F3700008018840A0F58052120C02F0040290406F -:10F38000A0F580431B0C03F00203C1F10E01891AA2 -:10F39000C91A984001EBD030C11D2BFA01F101F0E0 -:10F3A000010101EB400005EB8001D1F8301129B3D8 -:10F3B0001F280EBF00224208C2F119020BFA02F206 -:10F3C000002300E052004E68F608F600A6EB0B069C -:10F3D000464503D20C465FEA06080BD04E69D70FAC -:10F3E00001EB87010969002E1CBF8E4233460029BC -:10F3F000E8D1194600293BD1002C3BD1012101FA6B -:10F4000000F04000414208436968084000F057811D -:10F4100041420840411E080B00F0100021FA00F2A2 -:10F42000510901F00801CA40930803F00403DA40CF -:10F43000560806F00206F240C2F3400708181818F2 -:10F440003018384422FA07F1081805EB8000D0F88C -:10F4500030110DE001464868C008C000A0EB0B0069 -:10F4600040453CBF80460C4608690028F2D14969F6 -:10F470000029F0D1002C00F02281A868A0EB0B003D -:10F48000804580F01C8128698442C0F016810BEB16 -:10F4900004060BEB08096068C008C000484518BFA7 -:10F4A00004F0E8F9B44280F00881D4F818A0E768C5 -:10F4B000A74206D0A068296988421DD3C760B860FA -:10F4C0001CE004F11400076837B904F11000076864 -:10F4D000A7B101E00846076807F114010A68002A8D -:10F4E00002BF07F110010A68002AF3D12969884296 -:10F4F00002D30021016001E004F0BCF9BAF1000F71 -:10F5000038D0E06905EB800000F5987001688C4206 -:10F5100009D10760380014D168680121E26991407F -:10F520008843686026E02869824508D3DAF810002D -:10F53000A04214BFCAF81470CAF8107001E004F0B9 -:10F5400099F9BFB12869874212D3C7F818A020697A -:10F5500030B12969884226BF3861876104F08AF991 -:10F56000606938B12969884202D37861876101E016 -:10F5700004F080F9B8F1100F09D249F0030060607F -:10F5800009EB0400416841F00101416091E04BF05A -:10F590000300606048F00100706048F806804FEAA0 -:10F5A000D80020281BD205EBC00101F12807B8467E -:10F5B000012101FA00F02968014202D108432860C4 -:10F5C00006E0B868296988422CBF804604F052F9E9 -:10F5D000BE60C8F80C60C6F80880F76069E05FEAB2 -:10F5E000182008BF002223D0B0F5803F28BF1F227B -:10F5F0001ED2A0F58071090C01F008018840A0F529 -:10F600008052120C02F004029040A0F580431B0CC3 -:10F6100003F00203C1F10E01891AC91A984001EBE7 -:10F62000D030C11D28FA01F101F0010101EB4002C7 -:10F6300005EB820000F59870F26100217161316183 -:10F64000012191406B680B4203D119436960066048 -:10F650001CE000681F2A0EBF00215108C1F11901EA -:10F6600008FA01F100E010464268D208D200424593 -:10F6700010D0CA0F00EB820202F1100349001A6891 -:10F68000002AF0D129698B4211D31E60B061F66067 -:10F69000B6600EE081682A69904228BF914206D385 -:10F6A000CE608660B160F0600020B06101E004F0DF -:10F6B000E1F804F10800BDE8F28F04F0DBF8FBE0AC -:10F6C0002DE9F84F04468846606841420840411ED3 -:10F6D000080B00F01000C1404A0902F00802D140B6 -:10F6E0008B0803F00403D9404D0805F00205E940FA -:10F6F000C1F340061018181828443018F1400818B3 -:10F7000004EB8000D0F8300106464168C908C90002 -:10F71000A1EB080A09E008464168C908C900A1EB45 -:10F72000080151453CBF8A46064601690029F2D1CD -:10F7300040690028F0D120698642C0F0BB8008EB08 -:10F74000060B08EB0A097068C008C000484518BFDE -:10F7500004F090F85E4580F0AD80B569F768B74277 -:10F7600006D0B068216988421DD3C760B8601CE02C -:10F7700006F11400076837B906F110000768A7B151 -:10F7800001E00846076807F114010A68002A02BF71 -:10F7900007F110010A68002AF3D12169884202D3D7 -:10F7A0000021016001E004F065F8002D34D0F0691B -:10F7B00004EB800000F5987001688E4209D1076063 -:10F7C000380011D160680121F2699140884360607E -:10F7D00022E02069854205D32869B04214BF6F61D9 -:10F7E0002F6101E004F046F8B7B12069874211D3D8 -:10F7F000BD61306930B12169884226BF38618761B7 -:10F8000004F038F8706938B12169884202D3786110 -:10F81000876101E004F02EF8BAF1100F09D249F027 -:10F820000300706009EB0600416841F0010141608E -:10F830003CE048F0030070604AF00100CBF804009F -:10F840004AF80BA0D4F80880B8F1000F2AD0D4F8F9 -:10F8500014904FEAD805202D28BF04F00BF800952E -:10F8600004EBC50000F128052F46B8F1100F38BF92 -:10F8700004F000F80120009988402168014202D17B -:10F880000843206006E0A868216988422CBF07462B -:10F8900003F0F0FFC5F80890C7F80C90C9F808709D -:10F8A000C9F80C50C4F808A0C4F814B006F1080058 -:10F8B000BDE8F28F03F0DEFF0020BDE8F28F00000C -:10F8C000FCFC0020E8E700206859883C2DE9F04F57 -:10F8D00083B00546C046C046DFF87447F52D80F07A -:10F8E000F4800B2D31BF102705F10B00C008C700B5 -:10F8F000FE082068F04010F0030F3DD0C04300F038 -:10F900000100861904EBC60000F12808D8F8085059 -:10F91000F7006868C008C000B84218BF03F0AAFF2B -:10F92000D5F80890454508BF03F0A4FF4D4508BF32 -:10F9300003F0A0FF6868C008C000B84218BF03F019 -:10F9400099FFC84505D120680121B1408843206056 -:10F9500008E02069814526BFC8F80890C9F80C80E6 -:10F9600003F088FF47F0030068607819416841F0B0 -:10F97000010141600835F0E0A168B94280F0B7802C -:10F98000002800F09980012505FA06F14900B040F1 -:10F990004A421143084041420840411E080B00F012 -:10F9A0001000C1404A0902F00802D1408B0803F060 -:10F9B0000403D9404E0806F00206F140C1F34008A6 -:10F9C000101818183018404421FA08F101EB00080B -:10F9D00004EBC80000F12809D9F808604FEAC80A0A -:10F9E0007068C008C000504518BF03F043FFD6F848 -:10F9F00008B04E4508BF03F03DFF5E4508BF03F069 -:10FA000039FF7068C008C000504518BF03F032FFCE -:10FA1000D94505D1206805FA08F18843206008E03F -:10FA20002069834526BFC9F808B0CBF80C9003F0D5 -:10FA300021FFAAEB070847F003007060B819009097 -:10FA400048F001014160009848F80080A76867B35A -:10FA5000D4F814904FEAD70ABAF1200F28BF03F068 -:10FA600009FFCDF804A004EBCA0000F1280AD34630 -:10FA7000102F38BF03F0FEFE019805FA00F0216850 -:10FA8000014202D10843206007E0DAF8080021694A -:10FA900088422CBF834603F0EDFECAF80890CBF8ED -:10FAA0000C90C9F808B0C9F80CA0C4F808800098F8 -:10FAB000606106F1080550E06068C0B33946204631 -:10FAC000FFF7FEFD050012D047E015F1400F28BFFB -:10FAD0004FF0FF370BD205F10B00C008C70060687C -:10FAE00028B139462046FFF730FC050035D1A16822 -:10FAF000B9421CD3CA1B6069102A0AD33918616144 -:10FB0000A26042F001034B60525047F00301416094 -:10FB10000AE00022A260626141F00302426009181B -:10FB20004A6842F001024A6000F1080515E0E06809 -:10FB300087420DD2C01BE060A1697A18A26140F033 -:10FB40000100506047F00300486001F1080504E03F -:10FB500039462046FFF75BFB0546C046C0462846AF -:10FB6000FFF752BB00B970472DE9F047A0F1080438 -:10FB7000C046C046DFF8D85428698442C0F060828D -:10FB8000616801F00302012A00F05A82CA084FEAB4 -:10FB9000C20808EB0409CA072DD4226811F0030F2C -:10FBA00000F05082904451420C198442C0F04882C7 -:10FBB00069698C4200F0D4804FEAD20ABAF1200F72 -:10FBC0006FD2A668E768BC4208BF03F053FEB44298 -:10FBD00008BF03F04FFE6068C008C000B0EBCA0F5A -:10FBE00018BF03F047FEBE4246D12868012101FA42 -:10FBF0000AF1884328604C4580F02282D9F804003D -:10FC0000C10740F11D82810700F17381A96989450F -:10FC100040F0BB80E8684044E860AC6140F001011E -:10FC2000616069698C4202D100216961A960E9695A -:10FC3000814280F00782DFF81404006808B9FFF7FA -:10FC400027F8A869002800F0FD81E96829290BD36D -:10FC500005F5DE721368984203D35468E31898429E -:10FC600002D39268002AF5D1E869884280F0EA81DF -:10FC70004FF0FF30E861E5E105EBCA0000F1280133 -:10FC80008E4202D029698E4208D32830874202D0A2 -:10FC90002869874202D3F760BE60ACE703F0EAFD53 -:10FCA000A9E7A669E768A74205D0A16881421CD3ED -:10FCB000CF60B9601BE004F114010F6837B904F19B -:10FCC00010010F689FB101E011460F6807F114029F -:10FCD0001368002B02BF07F110021368002BF3D149 -:10FCE000814202D30020086001E003F0C3FD002E32 -:10FCF0003FF481AFE06905EB800000F59870016882 -:10FD00008C4209D10760380011D168680121E2698D -:10FD10009140884368606EE72869864205D3306960 -:10FD2000A04214BF7761376101E003F0A3FD002F0B -:10FD30003FF461AF28698742B0D3BE61216929B120 -:10FD4000814226BF39618F6103F094FD606900280C -:10FD50003FF451AF29698842A0D3786187614AE7AF -:10FD600099F8040000F0030003287FF444AFC5F8BD -:10FD70000880D9F8040040084000C9F8040048F0A1 -:10FD80000100606048F804805CE16969894508D138 -:10FD9000A8684044A8606C6140F0010161600051B6 -:10FDA00050E1C008C00080444FEAD00ABAF1200FE9 -:10FDB0002FD2D9F80860D9F80C70B94508BF03F004 -:10FDC00059FDB14508BF03F055FDD9F80400C0083E -:10FDD000C000B0EBCA0F18BF03F04CFDBE4206D105 -:10FDE0002868012101FA0AF18843286076E005EBD2 -:10FDF000CA0000F128018E4202D029698E426BD3DD -:10FE00002830874202D02869874265D3F760BE60F8 -:10FE100064E0D9F81860D9F80C704F4507D0D9F8CC -:10FE20000800296988421DD3C760B8601CE009F149 -:10FE30001400076837B909F110000768A7B101E09D -:10FE40000846076807F114010A68002A02BF07F193 -:10FE500010010A68002AF3D12969884202D30021DF -:10FE6000016001E003F006FD002E37D0D9F81C0038 -:10FE700005EB800000F59870016889450AD107609C -:10FE8000380012D168680121D9F81C2091408843BC -:10FE9000686023E02869864205D33069484514BF6D -:10FEA0007761376101E003F0E5FCBFB12869874263 -:10FEB00012D3BE61D9F8101029B1814226BF396131 -:10FEC0008F6103F0D7FCD9F8140038B12969884252 -:10FED00002D37861876101E003F0CCFC48F00100B7 -:10FEE000606048F80480686984420BD1C5F80880D6 -:10FEF000A8E040084000C9F8040048F00100606034 -:10FF000048F804804FEAD807202F20D205EBC7001D -:10FF100000F128094E46B8F1100F38BF03F0AAFCD3 -:10FF20000120B8402968014202D10843286007E057 -:10FF3000D9F80800296988422CBF064603F09AFCCC -:10FF4000C9F80840F460A660C4F80C907AE05FEA53 -:10FF5000182008BF002123D0B0F5803F28BF1F2103 -:10FF60001ED2A0F58071090C01F008018840A0F5AF -:10FF70008052120C02F004029040A0F580431B0C4A -:10FF800003F00203C1F10E01891AC91A984001EB6E -:10FF9000D030C11D28FA01F101F0010101EB40014F -:10FFA00005EB810000F59872E1610020606120613D -:10FFB000012088406B68034204D1184368601460D4 -:10FFC000A2611DE010681F290EBF00214908C1F180 -:10FFD000190108FA01F100E010464268D208D20087 -:10FFE000424510D0CA0F00EB820202F11003490013 -:10FFF0001A68002AF0D129698B4211D31C60A061D4 +:105C0000002801D1002018E01F208DF8040080201A +:105C10008DF80500022301AAD0210020FAF7C6FA68 +:105C2000002801D1002008E0DFF88005007850F05E +:105C30000100DFF87815087001200EBD00B583B0B3 +:105C400000208DF806000020ADF80400012000902F +:105C50000DF106036C22D0210020FAF7E5FA0028A6 +:105C600001D1002030E06C208DF804009DF8060082 +:105C700050F038008DF80500022301AAD021002041 +:105C8000FAF794FA002801D100201DE0DFF81C0586 +:105C9000007880070FD46B208DF8040040208DF829 +:105CA0000500022301AAD0210020FAF77FFA00287C +:105CB00001D1002008E0DFF8F404007810F0FE00C5 +:105CC000DFF8E814087001200EBD000028840308E6 +:105CD000787B00207C7B00207D7B00207E7B002069 +:105CE0007F7B00207B7B0020807B00207A7B002054 +:105CF00000B583B000208DF804000020ADF8060048 +:105D00000120009001AB6C22D0210020FAF78CFA20 +:105D1000002801D1002014E06C208DF806009DF8C9 +:105D2000040050F038008DF8070002230DF1060240 +:105D3000D0210020FAF73AFA002801D1002000E033 +:105D400001200EBD7FB504000D0002A80021002235 +:105D500006C008380020ADF80400FAF764F9060020 +:105D6000DFF84C040068401CDFF844140860012090 +:105D7000009002AB6B22D0210020FAF755FA0028E0 +:105D800001D100208BE09DF8080040061AD56B2059 +:105D90008DF804009DF8080010F0BF008DF8050094 +:105DA000022301AAD0210020FAF700FA002801D12D +:105DB000002074E005213000FAF7EEFADFF8F40372 +:105DC000FAF7ABF90120009002AB6C22D021002041 +:105DD000FAF72AFA002801D1002060E09DF80800B7 +:105DE000382108421ED06C208DF804009DF8080070 +:105DF00010F0C7008DF80500022301AAD021002071 +:105E0000FAF7D4F9002801D1002048E0052130003C +:105E1000FAF7C2FADFF8A003FAF77FF9DFF89C037C +:105E200001210160EDB2009502AB3B22D0210020A0 +:105E3000FAF7FAF9002805D1DFF88403FAF76DF9CB +:105E400000202CE09DF8090020709DF8080060708B +:105E50009DF80B00A0709DF80A00E0709DF80D0001 +:105E600020719DF80C006071D1480068642190FB9E +:105E7000F1F201FB1200002810D120790090A378E4 +:105E80002278CE480168CF48FAF747F9C848006839 +:105E9000CD49884202DBC64800210160012004B0E0 +:105EA00070BD30B583B001240020ADF8060000209D +:105EB0008DF80400FAF7B7F805000120009001AB57 +:105EC0006B22D0210020FAF7AFF9002801D1002081 +:105ED0008BE09DF8040040061AD56B208DF8060073 +:105EE0009DF8040010F0BF008DF8070002230DF1AB +:105EF0000602D0210020FAF759F9002801D100202C +:105F000073E005212800FAF747FAB048FAF705F9D7 +:105F10001D208DF8060008208DF8070002230DF1E2 +:105F20000602D0210020FAF741F9002801D1002013 +:105F30005BE00120009001AB6C22D0210020FAF739 +:105F400073F9002801D100204FE06C208DF8060085 +:105F50009DF8040050F080008DF804009DF80400C6 +:105F600050F007008DF804009DF8040010F0C70001 +:105F70008DF804009DF804008DF8070002230DF150 +:105F80000602D0210020FAF711F9002801D10020E3 +:105F90002BE00120009001AB6B22D0210020FAF70A +:105FA00043F9002801D100201FE06B208DF8060086 +:105FB0009DF8040010F0BF008DF804009DF8040067 +:105FC00050F020008DF804009DF804008DF80700C3 +:105FD00002230DF10602D0210020FAF7E7F800288D +:105FE00001D1002001E02000C0B23EBD80B50020FC +:105FF000ADF80000FFF755FF002801D1002045E073 +:106000001F208DF800004B208DF80100022300AA0C +:10601000D0210020FAF7CAF8002801D1002035E08D +:106020001E208DF8000006208DF80100022300AA32 +:10603000D0210020FAF7BAF8002801D1002025E08D +:1060400069208DF80000C0208DF80100022300AA0D +:10605000D0210020FAF7AAF8002801D1002015E08D +:10606000012201210320FAF719FA38208DF80000E7 +:1060700040208DF80100022300AAD0210020FAF769 +:1060800095F8002801D1002000E0012002BD80B574 +:106090000020ADF80000012200210320FAF7FEF9EC +:1060A00038208DF8000000208DF80100022300AA9E +:1060B000D0210020FAF77AF8002801D1002040E032 +:1060C0006B208DF8000000208DF80100022300AA4B +:1060D000D0210020FAF76AF8002801D1002030E032 +:1060E0001D208DF8000000208DF80100022300AA79 +:1060F000D0210020FAF75AF8002801D1002020E032 +:106100006C208DF8000000208DF80100022300AA09 +:10611000D0210020FAF74AF8002801D1002010E031 +:1061200069208DF8000000208DF80100022300AAEC +:10613000D0210020FAF73AF8002801D1002000E031 +:10614000012002BD80B50178012905D1FFF7B9FB17 +:1061500000280AD1002009E00178022905D1FFF7C3 +:1061600041FC002801D1002000E0012002BD80B5E3 +:1061700017490020FAF778FC16490B20FAF774FC4F +:1061800001BD000054680308003E4900F484030880 +:1061900001EFE700FC840308EC840308EC830308A8 +:1061A000048503080C850308F67B0020F77B00209C +:1061B000D87B0020148503081C850308DC7B0020A5 +:1061C000248503087C840308A18601002C8503082C +:1061D0002C490308EC51030880B50020DFF8681B48 +:1061E0000978002906D1FEF758FEDFF85C1B012272 +:1061F0000A7000E00120C0B202BD00B583B00020EB +:106200008DF806000020ADF80400012000900DF18B +:1062100006036B22D0210120FAF706F8002801D1ED +:1062200000205BE06B208DF804009DF8060010F064 +:10623000BF008DF80500022301AAD0210120F9F743 +:10624000B5FF002801D1002048E0012000900DF1A9 +:1062500006036C22D0210120F9F7E6FF002801D1C6 +:1062600000203BE06C208DF804009DF8060010F043 +:10627000F8008DF80500022301AAD0210120F9F7CA +:1062800095FF002801D1002028E01B208DF8040094 +:1062900008208DF80500022301AAD0210120F9F77A +:1062A00085FF002801D1002018E01A208DF8040095 +:1062B00003208DF80500022301AAD0210120F9F75F +:1062C00075FF002801D1002008E0DFF8800A00787F +:1062D00050F00200DFF8741A087001200EBD00B5FE +:1062E00083B000208DF806000020ADF804000120E6 +:1062F00000900DF106036C22D0210120F9F794FFE4 +:10630000002801D1002030E06C208DF804009DF8B9 +:10631000060050F007008DF80500022301AAD021E5 +:106320000120F9F743FF002801D100201DE0DFF82C +:106330001C0A0078C0070FD46B208DF804004020A1 +:106340008DF80500022301AAD0210120F9F72EFFC4 +:10635000002801D1002008E0DFF8F009007810F0F3 +:10636000FD00DFF8E819087001200EBD00B583B00C +:1063700000208DF804000020ADF8060001200090F8 +:1063800001AB6C22D0210120F9F74EFF002801D18A +:10639000002014E06C208DF806009DF8040050F0F9 +:1063A00007008DF8070002230DF10602D02101201D +:1063B000F9F7FCFE002801D1002000E001200EBD0D +:1063C0007FB5040002A80021002206C0083800267C +:1063D0000020ADF80400F9F726FE0500012000902A +:1063E00002AB6B22D0210120F9F71EFF002801D15A +:1063F000002083E09DF80800400625D56B208DF82D +:1064000004009DF8080010F0BF008DF8050002237D +:1064100001AAD0210120F9F7C9FE002801D10020EE +:106420006CE00A212800F9F7B7FFDFF82409F9F733 +:1064300074FE002603E0F6B200203055761CF6B25A +:10644000062EF8D3012059E00120009002AB6C2207 +:10645000D0210120F9F7E8FE002801D100204DE00D +:106460009DF808000721084225D06C208DF8040013 +:106470009DF8080010F0F8008DF80500022301AA2D +:10648000D0210120F9F792FE002801D1002035E04B +:106490000A212800F9F780FFDFF8B808F9F73DFE78 +:1064A000002603E0F6B200203055761CF6B2062E28 +:1064B000F8D3012022E00620009002AB4322D02135 +:1064C0000120F9F7B1FE002805D1DFF88C08F9F7B3 +:1064D00024FE002012E09DF8090020709DF80800BD +:1064E00060709DF80B00A0709DF80A00E0709DF8A8 +:1064F0000D0020719DF80C006071012004B070BD8A +:106500002DE9F64FADF63C6D05000020ADF8080012 +:1065100003A81421FBF704FB002608A80021002291 +:1065200000230EC00C385FF0000940F68C10684460 +:106530004FF49661FBF7F4FAFFA8E0304FF4966150 +:10654000FBF7EEFA0BA84FF49661FBF7E9FA5FF060 +:106550000008002700240020070000E07F1C032F14 +:1065600080F2BA806B208DF80800781C8DF8090045 +:10657000022302AAD0210120F9F718FE002801D138 +:10658000002099E13220FEF75FFC6A208DF80800B8 +:1065900044208DF80900022302AAD0210120F9F736 +:1065A00005FE002801D1002086E1012409E019EB55 +:1065B000060608A850F8270019EB000008A941F8C2 +:1065C00027002000441E012875DB23208DF80800D9 +:1065D00070208DF80900022302AAD0210120F9F7CA +:1065E000E5FD002801D1002066E14B20FEF72CFCE0 +:1065F00023208DF8080000208DF80900022302AA4C +:10660000D0210120F9F7D2FD002801D1002053E16B +:106610000220009003AB7222D0210120F9F704FE82 +:10662000002801D1002047E103A8FEF7E4FC00EEBA +:10663000100AB8EEC00A10EE100AFBF72FF9DFF8C7 +:106640001C27DFF81C37FBF761F9FBF73DFA8146A1 +:10665000B9F148000128B4DB5FF000081DE003A891 +:10666000FEF7C9FC18EB060140F68C126A4422F8CA +:1066700011000DF10E00FEF7BEFC18EB0601FFAA9B +:10668000E03222F8110004A8FEF7B5FC18EB060171 +:106690000BAA22F8110018F10108C84587DA062074 +:1066A000009003AB7422D0210120F9F7BDFD002832 +:1066B000D5D1002000E123208DF8080000208DF8BE +:1066C0000900022302AAD0210120F9F76FFD00285A +:1066D0007FF444AF0020EFE0002E01D0340000E052 +:1066E00001245FF0000800200021C5E9000100201E +:1066F0000021C5E9020100200021C5E9040122E0D2 +:10670000D5E9000140F68C126A4432F91820D317FB +:1067100080185941C5E90001D5E90201FFAAE0321C +:1067200032F91820D31780185941C5E90201D5E97B +:1067300004010BAA32F91820D31780185941C5E972 +:10674000040118F10108B045DADBD5E900012200A7 +:10675000E31707F031F8C5E90001D5E9020122008D +:10676000E31707F029F8C5E90201D5E90401220081 +:10677000E31707F021F8C5E904015FF00008DDF830 +:106780003C0E00220023C0E90023DDF83C0E00226D +:106790000023C0E90223DDF83C0E00220023C0E9FB +:1067A000042382E0DDF83C2ED2E90001CDE90001AE +:1067B00040F68C10684430F91800C117D5E9002361 +:1067C000801A994140F68C126A4432F918A05FEAA7 +:1067D000EA7BD5E90023BAEB02027BEB0303A2FBC1 +:1067E00000AB02FB01BB03FB00BBDDE9000110EBCA +:1067F0000A0051EB0B01DDF83C2EC2E90001DDF887 +:106800003C2ED2E90201CDE90001FFA8E03030F9C9 +:106810001800C117D5E90223801A9941FFAAE03276 +:1068200032F918A05FEAEA7BD5E90223BAEB02024B +:106830007BEB0303A2FB00AB02FB01BB03FB00BB32 +:10684000DDE9000110EB0A0051EB0B01DDF83C2EF5 +:10685000C2E90201DDF83C2ED2E90401CDE90001D4 +:106860000BA830F91800C117D5E90423801A994103 +:106870000BAA32F918A05FEAEA7BD5E90423BAEB48 +:1068800002027BEB0303A2FB00AB02FB01BB03FB99 +:1068900000BBDDE9000110EB0A0051EB0B01DDF854 +:1068A0003C2EC2E9040118F10108B045FFF67AAFA9 +:1068B000DDF8400E066001200DF6446DBDE8F08F56 +:1068C0002DE9F04389B004000D00160001275FF0A8 +:1068D000000801A8002101600320009001AB002204 +:1068E000D0210120F9F7A0FC002801D15FF0FF378B +:1068F0005FF0000907E04FFA89F905A8002140F888 +:10690000291019F101094FFA89F9B9F1030F17DAC2 +:106910004FFA89F901A819F800000028EBD04FFAC6 +:1069200089F901A819F80000DFF8381411EB4000CC +:1069300030F8020C4FFA89F905A941F82900E0E77F +:106940005FF0000925E04FFA89F902A850F8290004 +:10695000DFF81414884208DADFF81004F9F7DDFBD9 +:10696000012010FA09F050EA08084FFA89F902A844 +:1069700050F82900DFF8F813884208DBDFF8F40349 +:10698000F9F7CBFB012010FA09F050EA080819F1D9 +:1069900001094FFA89F9B9F1030F3BDA4FFA89F986 +:1069A00055F829004FFA89F956F82910401A09F0CC +:1069B00061FB4FFA89F902A941F829004FFA89F9D8 +:1069C00005A850F829000028BDD04FFA89F902A87F +:1069D00050F829004FFA89F905A951F8291090FBC0 +:1069E000F1F0B0F57A7009F045FB4FFA89F924F817 +:1069F00019004FFA89F934F9190040F2F51188426B +:106A0000C5DBDD48F9F789FB012010FA09F050EAEF +:106A10000808BCE74FFA88F8B8F1000F04D0D7484F +:106A2000F9F77BFB7FF00207380040B209B0BDE800 +:106A3000F0832DE9F0439DB00400012501260CA848 +:106A40001821FBF76DF806A81821FBF769F802A8D2 +:106A50000021016000A80021002206C0083800279C +:106A600018A80021002200230EC00C3815A8002110 +:106A7000002200230EC00C3812A80021002200239F +:106A80000EC00C3803A80021002200230EC00C38D1 +:106A9000BB48D0F80480FEF7B4FA002801D10020EA +:106AA000EDE0FEF7C1FB0500EDB2012D09D1012794 +:106AB00002AA06A90CA8FFF723FD002803D1002095 +:106AC000DDE00020DBE0FEF784FC002801D100209F +:106AD000D5E0002303AA15A90020FEF7B8FC0600A4 +:106AE00076B2012E02D0A748F9F717FB002312AAAD +:106AF00018A97FF01F00FEF7AAFC060076B2012E4F +:106B000002D0A148F9F709FB18AA15A900A8FFF7B8 +:106B1000D7FE060076B2012E02D09C48F9F7FDFAA6 +:106B20005FF0000918E05FFA89F918EB49025FFA93 +:106B300089F90CA810EBC903D3E900018000A2F881 +:106B400058005FFA89F918EB4900B0F958109048DD +:106B5000F9F7E3FA19F101095FFA89F9B9F1030FBD +:106B6000E1D32770BDF800006070BDF9000000128D +:106B7000A070BDF80200E070BDF9020000122071A3 +:106B8000BDF804006071BDF904000012A071E67147 +:106B90000298207202980012607202980014A0728B +:106BA00002980016E072DDE90C012073DDE90C01AA +:106BB00000B200126073DDE90C010014A073DDE97E +:106BC0000C010016E073DDE90E012074DDE90E0111 +:106BD00000B200126074DDE90E010014A074DDE95A +:106BE0000E010016E074DDE910012075DDE91001E9 +:106BF00000B200126075DDE910010014A075DDE936 +:106C000010010016E075DDE906012076DDE90601D8 +:106C100000B200126076DDE906010014A076DDE91D +:106C200006010016E076DDE908012077DDE90801BC +:106C300000B200126077DDE908010014A077DDE9F9 +:106C400008010016E077DDE90A0184F82000DDE99B +:106C50000A0100B2001284F82100DDE90A010014E3 +:106C600084F82200DDE90A01001684F82300FEF70B +:106C700033FA002801D1002001E02800C0B21DB085 +:106C8000BDE8F08330B583B004000020ADF8040007 +:106C900000203B494D68697A002907D1286E406879 +:106CA0008047F9F7C0F90A21F9F776FB0220009036 +:106CB00001AB4122D0210120F9F7B6FA002801D119 +:106CC000002017E09DF805009DF8041050EA01200F +:106CD000032110FB01F04FF47A7190FBF1F01530B5 +:106CE000207000206070687A002802D1286E8068C9 +:106CF000804701203EBD80B50178002905D1FFF70E +:106D000098FE00280AD1002009E00178012905D168 +:106D1000FFF7B8FF002801D1002000E0012002BDEC +:106D200080B5C0B2062806D10800FFF7ABFF0028E7 +:106D300001D1002000E0012002BD80B515490120ED +:106D4000F9F792FE01BD0000F67B0020F77B0020E2 +:106D5000648503086C850308748503082D211FF4DE +:106D60006C56C53F546A030830FD13008485030840 +:106D700079E2D1008C8503087C850308948503089B +:106D8000000000209C850308A4850308AC85030847 +:106D9000D484030878830308002108E0C9B2DFF82F +:106DA000E82D8A18C9B20B5C82F83830491CC9B288 +:106DB0000929F3D3704780B50921DFF8D02D01FBF5 +:106DC0000020FFF7E9FF01BD2DE9F04F85B0040079 +:106DD0000D000E20009001AB90225C210220F9F7FB +:106DE00023FA002802D15FF0FF3017E10E20009057 +:106DF00001AB90225C210220F9F716FA002802D19B +:106E00005FF0FF300AE19DF804008DF801009DF865 +:106E100005009DF806109DF80720D2B292089DF853 +:106E200007309B0013F00C039DF80860F6B253EA9C +:106E300096139DF8086016F03F069DF80970FFB2A2 +:106E4000BF089DF809C05FEA0C1C1CF0300C9DF8CF +:106E50000AE05FFA8EFE5CEA1E1E9DF80AC05FEA39 +:106E6000CC0C1CF0780C9DF80B805FFA88F85CEA7B +:106E700058189DF80BC05FEA4C0C1CF03E0C9DF8B6 +:106E80000C905FFA89F95CEAD9199DF80CC09DF85D +:106E90000DA05FFA8AFA5FEADA1A5AEA4C0A9DF8FC +:106EA0000DC0CCF3840B8DF800B09DF80DC05FEAE7 +:106EB0004C0C1CF0060C9DF80EB05FFA8BFB5CEAE4 +:106EC000DB1B8DF802B09DF80EC01CF0010C9DF884 +:106ED0000FB05FFA8BFB5FEADB1B5BEA4C0C84F8BC +:106EE00003C09DF80EC05FFA8CFC5FEA5C0C5FEAA1 +:106EF0008C0C4FFA8CFC5FEAAC0C84F800C09DF857 +:106F00000FC01CF0010C9DF810B05FFA8BFB5FEA1C +:106F1000DB1B5BEA4C0C84F804C09DF80FC05FFAE1 +:106F20008CFC5FEA5C0C5FEA8C0C4FFA8CFC5FEA2D +:106F3000AC0C84F801C09DF810C01CF0010C9DF849 +:106F400011B05FFA8BFB5FEADB1B5BEA4C0C84F849 +:106F500005C09DF810C05FFA8CFC5FEA5C0C5FEA2C +:106F60008C0C4FFA8CFC5FEAAC0C84F802C09DF8E4 +:106F700011C01CF0010C84F806C09DF801405FF0C0 +:106F80000A0C0CFB04F4B4F5A0642C60C0B20A2413 +:106F90006043B0F5A0606860C9B20A2000FB01F050 +:106FA000B0F5A060A860D2B2B2F12000E860DBB218 +:106FB000B3F108002861F6B2B6F120006861FFB2B3 +:106FC00017F12600A8615FFA8EFEBEF12000E8618D +:106FD0005FFA88F8B8F1400028625FFA89F9B9F1E0 +:106FE000200068625FFA8AFAC5F828A09DF80000C0 +:106FF000E862002000E0401CC0B20D2806D2C0B2FA +:1070000001A9415C0029F6D0002007E09DF811009D +:10701000000601D5002001E07FF0090005B0BDE8C1 +:10702000F08F1CB5002400E0641CB4F57A7F12DAFE +:107030000120009001ABB0225C210220F9F7F4F8A6 +:10704000002802D15FF0FF3007E09DF80400000641 +:10705000EAD4002001E07FF0040016BD80B5DFF81F +:10706000280B90F85400002811D0DFF81C0B90F882 +:10707000550000280BD0FFF7D4FF002802D57FF081 +:10708000040005E0DFF8000B002180F85510002017 +:1070900002BD10B582B014000022ADF8002082229B +:1070A0008DF8002001228DF80120002801D0012058 +:1070B00000E000209DF8012052EA40008DF8010018 +:1070C000002901D0012000E000209DF8011051EAC4 +:1070D00080008DF80100022300AA5C210220F9F74C +:1070E00065F8002802D15FF0FF3019E0002C0CD0C9 +:1070F000FFF797FF002802D57FF0040010E0DFF8CB +:10710000880A002180F8551004E0DFF87C0A01218C +:1071100080F85510DFF8700A012180F85410002023 +:1071200016BD3EB514001D00DFF85C2A92F854200D +:10713000002A04D10122FFF7ACFF002871D10820FA +:10714000009001ABB0225C210220F9F76DF8002815 +:1071500006D1DFF8900CF8F7E0FF5FF0FF3060E059 +:10716000DFF8240A002180F854109DF80400C0B212 +:10717000C009C0B220609DF80400C00010F47E7009 +:107180009DF80510C9B24909C9B20843288006987C +:107190009DF80610890111F4FE519DF80720D2B226 +:1071A0009208D2B2114301809DF80810890111F4B0 +:1071B000FE519DF80920D2B29208D2B2114341800B +:1071C0009DF80A10890111F4FE519DF80B20D2B2EE +:1071D0009208D2B211438180079900220A600022EE +:1071E0001BE0D2B230F91230002B06D10B6801241B +:1071F000D2B25500AC4023430B60D2B230F912300A +:1072000041F6FE74A34207D10B680124D2B25500A7 +:107210006D1CAC4023430B60521CD2B2032AE0D356 +:1072200000203EBD10B582B004000020ADF8000083 +:10723000FFF714FF002802D57FF0040041E085200D +:107240008DF8000020788DF80100022300AA5C214F +:107250000220F8F7ABFF002802D15FF0FF3030E0EA +:1072600086208DF8000060788DF80100022300AAC6 +:107270005C210220F8F79AFF002802D15FF0FF306E +:107280001FE087208DF80000A0788DF80100022310 +:1072900000AA5C210220F8F789FF002802D15FF0E4 +:1072A000FF300EE0002008E0C0B2DFF8DC18411823 +:1072B000C0B2025D81F84120401CC0B20328F3D364 +:1072C000002016BD80B50020ADF80000FFF7C6FE17 +:1072D000002802D57FF0040011E081208DF8000025 +:1072E00000208DF80100022300AA5C210220F8F79B +:1072F0005DFF002802D15FF0FF3000E0002002BDFA +:1073000030B58BB0040002A800210160FFF7A6FE93 +:10731000002802D57FF0040074E0DFF86C0800213B +:1073200080F85410002516E008A951F82010002913 +:107330000DD002A9415608AA52F82020DFF8503D8E +:1073400053F825305A4342FA81F102AA8154401C75 +:107350000328E9DB6D1C052D43DA02A8FFF762FF65 +:10736000002802D55FF0FF304CE007A8019005A887 +:10737000009003AB04AA00210020FFF7D2FE0028F2 +:1073800002D55FF0FF303DE00498002802D07FF086 +:10739000040037E0002020E005A931F91010B1F514 +:1073A000805F03D108A9002241F8202005A931F906 +:1073B000101041F20102914203DB08A9012241F8B9 +:1073C000202005A931F91010B1F5805F04DA08A971 +:1073D0005FF0FF3241F82020401C0328DCDB002056 +:1073E000B6E702A8FFF71EFF002802D55FF0FF30C6 +:1073F00008E0002503E002A8285C28556D1C032D39 +:10740000F9DB00200BB030BD2DE970438AB00400D9 +:107410000E00DFF8805C0020059000200490FFF74C +:107420001DFE002802D57FF0040078E0DFF8580741 +:10743000002180F8541005A8019008A8009002AB24 +:1074400003AA00210120FFF76CFE0020002802D0D3 +:107450005FF0FF3063E00398002802D07FF0040063 +:107460005DE004A8019006A8009002AB03AA0121E8 +:107470000120FFF756FE0020002802D05FF0FF3009 +:107480004DE00398002802D07FF0040047E0E86A4E +:10749000FAF74EFB80468946BDF92000BDF9181069 +:1074A000401AFAF745FBDFF8F02BDFF8F03BFAF76C +:1074B0002DFA42464B46FAF729FA0022DFF8643DDE +:1074C000FAF782FCFAF700FB2060E86AA9694843F2 +:1074D000FAF72EFB04000D00BDF92200BDF91A10C9 +:1074E000401ABDF92410401ABDF91C1000FA81F0B1 +:1074F000FAF71EFBDFF84C2DDFF84C3DFAF706FAE1 +:1075000022002B00FAF702FA0022DFF8183DFAF702 +:107510005BFCFAF7D9FA30600598049908430AB081 +:10752000BDE8708380B5FFF799FD002802D57FF094 +:10753000040004E0002200210020FFF7AAFD02BDA4 +:107540002DE9F0478AB00400894617001D00DDF8D8 +:107550004880DFF8406B002007905FF0000A07A822 +:107560000190CDF8009002AB08AA00210020FFF79F +:10757000D8FD002802D55FF0FF303DE100201DE07E +:1075800039F91010DFF800268218D278DFF8BC3CF9 +:1075900033F91220891ADFF8F025821892F9412078 +:1075A000DFF8E435C356D21ADFF8DC3513EB80037D +:1075B0009B6C03FB021147F82010401C0328DFDB03 +:1075C000DFF8C405006FDFF8C01511EB4000BDF80F +:1075D0000810A0F85810DFF8B005006F401CDFF865 +:1075E000A8150867DFF8A005006F0A2803DBDFF89D +:1075F000980500210167DFF89005C06E401CDFF898 +:107600008815C866DFF88005C06E0A2803DBDFF83E +:1076100078050A21C166002008E0DFF86C1511EB3F +:107620004001B1F958100AFA81FA401CDFF85815E8 +:10763000C96E8842F1DB0A2000FB0AF0DFF848152A +:10764000C96EB0FBF1F00490386800907868039040 +:10765000B8680190B8F1000F1DD000983168049A05 +:1076600051434FF47A7291FBF2F1401A0090039863 +:107670007168049A51434FF47A7291FBF2F1401A07 +:1076800003900198B168049A51434FF47A7291FBC8 +:10769000F2F1401A019003980199401A069003985C +:1076A00040420199401A0590F06AFAF741FA804683 +:1076B000894600986421F268069B5A4301FB00202A +:1076C0003169059A02FB0100FAF732FADFF8C8299E +:1076D000DFF8C839FAF71AF942464B46FAF716F9B5 +:1076E000FAF7F2F90490F06AFAF722FA804689462E +:1076F00070690099B269069B5A4301FB0020F16949 +:10770000059A02FB0100FAF713FADFF88C29DFF87B +:107710008C39FAF7FBF842464B46FAF7F7F8FAF7D6 +:10772000D3F90390F06AFAF703FA80468946306A83 +:107730000099726A069B5A4301FB0020B16A059AC0 +:1077400002FB0100FAF7F4F9DFF84C29DFF84C39B5 +:10775000FAF7DCF842464B46FAF7D8F8FAF7B4F9EC +:107760000190DFF8240490F938000499DFF8182418 +:1077700092F93920039B5A4301FB0020DFF80814DB +:1077800091F93A10019A02FB01002060DFF8F8033A +:1077900090F93B000499DFF8F02392F93C20039B19 +:1077A0005A4301FB0020DFF8E01391F93D10019AE4 +:1077B00002FB01006060DFF8D00390F93E000499FD +:1077C000DFF8C42392F93F20039B5A4301FB0020BA +:1077D000DFF8B41391F94010019A02FB0100A06098 +:1077E000002D02D0BDF8080028800898002802D09B +:1077F0007FF0040000E007980AB0BDE8F08700B50C +:1078000083B00020ADF8060000208DF804000020B1 +:1078100008E0DFF874134118DFF8342A825C81F83D +:107820004120401C0328F4DB88208DF8060000204E +:107830008DF8070002230DF106025C210220F8F703 +:10784000B5FC002802D15FF0FF3045E089208DF8BB +:10785000060000208DF8070002230DF106025C21CE +:107860000220F8F7A3FC002802D15FF0FF3033E0DC +:107870000120009001AB80225C210220F8F7D4FCAB +:10788000002802D15FF0FF3026E0BF489DF80410C9 +:1078900080F84410DFF8FC17BB48FFF795FA002882 +:1078A0001AD4002008E0B84911EB8001DFF8A429C0 +:1078B00052F820208A64401C0328F4DBB2480021DF +:1078C00080F85410B048002180F855100020AE49CF +:1078D0000867AD49C86600200EBD00281FD090F98A +:1078E000001020291BDA90F90110202917DA90F9ED +:1078F0000210202913DA90F900107FF01E02914245 +:107900000DDB90F901107FF01E02914207DB90F928 +:1079100002007FF01E01884201DB012000E0002010 +:10792000C0B270472DE9F04383B004000D0016008B +:107930001F00DDF828805FF00009DFF81C09C06A2D +:10794000012802D002282FD062E0DFF80C09406C39 +:10795000DFF80419096C401AB0F5FA7F58D3DFF844 +:10796000F808DFF8F418496C0164FFF7ABFC8146B6 +:10797000B9F1000F4CD4DFF8E008806B002805D186 +:10798000DFF8D808FFF7A9FF002804D1DFF8C808FE +:107990000221C16203E0DFF8C0080021C162FFF7E5 +:1079A000C1FD002869D433E001A8FFF7A9FC814696 +:1079B000B9F1000F2CD4DFF8A00890F93C009DF934 +:1079C000041088420FD1DFF8900890F93D009DF92E +:1079D0000510884207D1DFF8800890F93E009DF934 +:1079E0000610884201D05FF04009DFF86C080021E2 +:1079F000C162002009E0C0B2DFF85C184118C0B2D3 +:107A000001AA825C81F83C20401CC0B20328F2D35A +:107A1000B9F1000F01D548462FE0CDF800803B00BA +:107A2000320029002000FFF78BFD002825D4012813 +:107A30001ADBDFF82418896B002905D1DFF8181844 +:107A4000DFF81428526C0A64DFF80C1801228A63EC +:107A5000DFF80418C96A002903D1DFF8FC170122F6 +:107A6000CA6250EA090903E0DFF8EC0700218163EC +:107A7000FFF758FD002800D44846BDE8FE8310B546 +:107A800082B00400002C02D17FF07F0078E0DFF8A4 +:107A9000C8271268002A02D17FF0020070E0DFF8E8 +:107AA000B827126B002A33D0009114F1200314F18F +:107AB000140214F10C012000FFF734FF002827D432 +:107AC00000211EE0C9B214EB4102B2F90C20C9B288 +:107AD000DFF8843713EB81031A61C9B214EB81021A +:107AE0005269C9B2DFF8703713EB8103DA61C9B2AA +:107AF000DFF8642712EB8102C9B254F821305360D9 +:107B0000491CC9B20329DDD3DFF84C17098D218444 +:107B1000DFF84417096B002901D0002826D5002181 +:107B20001DE0C9B2DFF8302712EB81025268C9B2FA +:107B300044F82120C9B214EB4102C9B2DFF818376A +:107B400013EB81031B699381C9B214EB8102C9B2A3 +:107B5000DFF8043713EB8103DB695361491CC9B2B9 +:107B60000329DED3DFF8F016098D2184DFF8E8164B +:107B7000496CDFF8E426926C5118DFF8DC2651647A +:107B800016BDDFF8DC067047247400208C820308E1 +:107B900080B5002023E0DFF8C0164118DFF8C426C6 +:107BA000825C81F83C20DFF8B01611EB8001DFF831 +:107BB000B82652F820200A61DFF89C1611EB8001EC +:107BC000DFF8A42652F820204A60DFF88C1611EB6B +:107BD0008001DFF8942652F82020CA61401C032857 +:107BE000D9DBDFF8740600210185DFF86C0600217F +:107BF0004164DFF8640632218164DFF85C0600210D +:107C00000163DFF8540600214163DFF84C060121CF +:107C1000C162DFF844065FF0FF310160DFF838062B +:107C2000002181630320FFF7C6F8FFF7E8FD002875 +:107C300005D5DFF83806F8F770FA002037E0DFF8EE +:107C40001C06FFF74AFE002819D0DFF81006FFF7E0 +:107C5000E9FA002805D5DFF81806F8F75EFA0020E3 +:107C600025E0FFF72FFB002804D5DFF8EC05012104 +:107C7000C16211E0DFF8E0050021C1620CE0FFF70E +:107C800021FB002804D5DFF8D0050121C16203E003 +:107C9000DFF8C4050221C162DFF8BC0501210160E3 +:107CA00018220021DFF8B805FAF7E7F9012002BD34 +:107CB00080B5DFF8A405006B01280AD0DFF898052D +:107CC00001210163FFF72EFCDFF8A805F8F725FA7C +:107CD00007E0DFF8840501214163DFF89C05F8F730 +:107CE0001CFA012002BDDFF87005406B012804D0AA +:107CF000DFF864050021016303E0DFF85C05002183 +:107D00004163012070470120704710B50023C0B2C5 +:107D1000002803D002284DD010D360E0DFF83805EA +:107D200090F83C000870DFF8300590F83D0048708E +:107D3000DFF8240590F83E00887050E0DFF8180561 +:107D40000068002807D17FF00201DFF83005F8F75E +:107D5000E4F9002044E0002308E0DBB2DFF8F80497 +:107D60001818DBB25C5680F83C405B1CDBB2D2B228 +:107D70009342F2D3DFF8E004006B002801D1012028 +:107D80002EE0DFF8D804FFF7A8FD002804D0DFF8C4 +:107D9000CC04FFF747FA0CE0FFF794FA002804D56B +:107DA000DFF8B4040121C16203E0DFF8AC04022172 +:107DB000C16214E000230FE0DBB211EB4300407816 +:107DC0000002DBB211F813208018DBB2DFF8B02418 +:107DD00012EB430290835B1CDBB2092BECD3012036 +:107DE00010BD0000348503082DE9F04389B004007C +:107DF0000D009046994600260027012100A8FFF7B4 +:107E00003EFE0600002007000FE000A850F8270003 +:107E1000F9F78EFEDFF86C24DFF86C34F9F776FDA5 +:107E2000F9F752FE24F817007F1C032FEDDB002E1C +:107E300006D53100DFF85404F8F76FF9002055E05B +:107E4000F00702D547F6FF702080B00702D5DFF8B3 +:107E500040042080700702D547F6FF70608030072D +:107E600002D5DFF82C046080F00602D547F6FF70DB +:107E7000A080B00602D5DFF81804A080DFF8140453 +:107E8000C66896F821202100B069F368C018FAF797 +:107E9000EEF8300003F0CAFE96F82120B069F168D0 +:107EA00041182000FAF7E3F84A4629002000DFF8DD +:107EB000D0335B6898474046DFF8C4138968884729 +:107EC0002888B8F80010081820806888B8F80210D0 +:107ED00008186080A888B8F804100818A080290045 +:107EE0002800DFF8B42352689047012009B0BDE8AC +:107EF000F08370B58CB0040000A80021002206C0F9 +:107F0000083800260025FFF7A9F8002807D57FF0DC +:107F10000401DFF88803F8F700F9002033E00021BE +:107F200002A8FFF7ACFD0600002E01D500202AE0D4 +:107F3000FFF794F8002806D57FF00401D848F8F739 +:107F4000ECF800201FE00798ADF8000008980999A8 +:107F5000401AADF80200089840420999401AADF85D +:107F6000040000250CE000A830F8150004F8150006 +:107F700014EB450000A931F91510091241706D1C70 +:107F8000032DF0DB01200CB070BDF8B50400002516 +:107F9000F8F7DAFA0600FFF7F4FD0700BD480069BC +:107FA000C06A8068AC498864B6F85C0040070BD4AE +:107FB00017F1140317F10C02B91D3800FFF714FF75 +:107FC000002801D1002014E000250DE017EB45004A +:107FD000C08804F8150017EB4500B0F90600001240 +:107FE00014EB450148706D1C032DEFDB7869A0711F +:107FF0000120F2BD2DE9F041040000270026F8F72A +:10800000A3FA8046FFF7BDFD0500B8F85C00000745 +:1080100008D52000FFF76DFF002801D1002034E0D3 +:10802000032729E015F1140315F10C02A91D2800FE +:10803000FFF7DAFE002801D1002026E0002618E034 +:1080400035F8160004F8160035F91600001214EB86 +:108050004601487014EB460015EB46018989817191 +:1080600015EB4600B0F90C00001214EB4601C87184 +:10807000761C032EE4DB02277FB2864850F82700E7 +:10808000C06A8068744988640120BDE8F0810000FE +:10809000688403082C7400209A9999999999B93F9A +:1080A000F0B58DB00400002600A80021002206C013 +:1080B0000838F7F7B8FF05006748012101636648F3 +:1080C0000068002804D0774890F84400022803D0C4 +:1080D000FFF75EFDFFF7ECFD724890F8440020705A +:1080E0006670A670E67003225E490120FFF70DFE60 +:1080F000002104A8FFF7C3FC0600002E01D50020D4 +:108100008DE016F0150F02D07FF0050612E016F094 +:108110002A0F02D07FF006060CE00498002808D150 +:108120000598002805D10698002802D17FF007069F +:1081300000E000265B4890F841002071594890F813 +:1081400042006071574890F84300A071E67100202A +:1081500020720020607200270EE004A850F827006B +:10816000F9F7E6FC374A384BF9F7D0FBF9F7ACFCE6 +:1081700000A921F817007F1C032FEEDB4548C768D4 +:1081800097F8212000A9B869FB68C018F9F76FFFBC +:10819000380003F04BFD97F82120B869F9684118C1 +:1081A00000A8F9F764FFBDF900000012A072BDF845 +:1081B0000000E072BDF9020000122073BDF8020059 +:1081C0006073BDF904000012A073BDF80400E073F1 +:1081D000267402212800F8F7DFF802A903A8FFF7A8 +:1081E00013F90600002E01D5002018E016F0150F37 +:1081F00001D07FF0050616F02A0F01D07FF00606A9 +:108200000398001260740398A07402980012E0743E +:1082100002982075667510480021016301200DB099 +:10822000F0BD00000000324080B51F490220F8F781 +:108230001BFC1E490420F8F717FC1B490320F8F724 +:1082400013FC01BDFCA9F1D24D62503F5C850308CF +:10825000B8850308BC840308B0790020EC790020BD +:10826000387B0020B4850308C88403083C850308D4 +:10827000448503084C850308548503088C8403084F +:10828000B0FB00207B14AE47E17A843F988403085A +:108290000080FFFF0000002020FE0020A4840308CF +:1082A000B084030824740020308303085483030837 +:1082B00000B583B000208DF804000120009001ABD0 +:1082C000F422EC210520F7F7AFFF002801D10020B0 +:1082D0000EBDDFF830099DF80410490941770120EF +:1082E0000EBD00B583B000208DF804000120009081 +:1082F00001ABF422EC210520F7F796FF002801D10D +:1083000000200EBD9DF80400C0F38200DFF8F418D1 +:10831000887701200EBD80B50021ADF80010F42152 +:108320008DF80010DFF8DC184A7F897F890001EBA7 +:10833000421140188DF80100022300AAEC2105200B +:10834000F7F734FF401E8041C043C00F02BD00005C +:108350007CB5064600208DF8040004460546ADF8BD +:1083600006000120009001ABF422EC210520F7F774 +:108370005BFF002801D1204676BD042E12D8DFE82D +:1083800006F00306090C0F00012425460AE001242B +:10839000022507E00124032504E00124042501E06F +:1083A00002240525F4208DF806009DF8040000F055 +:1083B0001F0040EA441000F0E300A90001F01C0196 +:1083C00008438DF804008DF8070002230DF1060222 +:1083D000EC210520F7F7EAFE002801D1002076BD48 +:1083E000FFF766FF002801D1002076BDFFF779FF77 +:1083F000401E8041C043C00F76BD10B588B001A8B3 +:108400001821F9F78DFB1820009001AB8822EC2190 +:108410000520F7F709FF002801D100204BE0DFF825 +:10842000E4179DF805209DF8043043EA02220A80F3 +:1084300001AA9DF90730947844EA03234B8092F90E +:108440000530147944EA03238B809DF80B3094792E +:1084500044EA0323CB809DF90D30147A44EA0323C8 +:108460000B819DF90F30947A44EA03234B819DF9E7 +:108470001130147B44EA03238B819DF91330947BE4 +:1084800044EA0323CB819DF91530147C44EA03238D +:108490000B829DF91730947C44EA03234B829DF9AB +:1084A0001930147D44EA03238B829DF91B30927DA1 +:1084B00042EA0322CA8208B010BD10B582B0012082 +:1084C0000090DFF84437D022EC210520F7F7ACFE0E +:1084D0000446012C0AD1FFF790FF002804D00320A6 +:1084E000FFF736FF002801D1002016BD204616BD3B +:1084F00080B5DFF81807012101720320FFF70BFF99 +:10850000401E8041C043C00F02BD10B5002802D0FC +:10851000012812D025E0DFF8F44604F10C0000F049 +:108520005BFA00281DD12078002817D16078002838 +:1085300014D1A078002811D113E0DFF8D04604F15F +:108540000F0000F03BFA00280BD1E078002805D19D +:108550002079002802D16079002802D0204600212D +:108560000172012010BD80B50020FFF7D4FE401E2F +:108570008041C043C00F02BD80B50020FFF7CBFE95 +:10858000401E8041C043C00F02BD000070B52DEDFC +:10859000048B86B09FED430B8DED020B8DED000B30 +:1085A0008DED040BF9F7C4FA41EC180BDFF85466B3 +:1085B00053EC182B0020DFF85816F9F7A7F90446FA +:1085C0000D463088F9F7BEFA0022DFF84836F9F791 +:1085D0009DF902460B4620462946F9F735FB04462D +:1085E0000D46B6F90200F9F7A3FA22462B46F9F731 +:1085F0008DF9CDE9020153EC182B0020DFF8181695 +:10860000F9F784F941EC180B9FEDB19B3088F9F72D +:1086100099FA53EC192BF9F779F902460B4651EC0C +:10862000180BF9F711FB04460D463088F9F78AFA62 +:1086300053EC192BF9F76AF902460B4651EC180B6B +:10864000F9F702FB22462B46F9F760F904460D467E +:10865000B6F90400F9F76CFA22462B46F9F756F9F9 +:10866000CDE90001DDE90223DDE90001F9F778FA3F +:10867000F9F72AFAB061DDE90223DDE90001F9F733 +:108680006FFA0022DFF89435F9F79EFBCDE904017B +:10869000DDE9040106B0BDEC048BBDE8704007F0D5 +:1086A000EDBC00000000000000000000F0B52DED62 +:1086B000048B87B007469FEDBF0B8DED000B8DED52 +:1086C000040B8DED020BDFF83C65B069F9F730FA69 +:1086D0000022DFF84C35F9F719F90022DFF84435AC +:1086E000F9F73EFACDE900019FEDD48BDDE90023D7 +:1086F000DDE90001F9F70AF904460D46B6F9100064 +:10870000F9F716FA22462B46F9F700F953EC182B25 +:10871000F9F7FCF8CDE90401B6F90E00F9F708FA0B +:10872000DDE90023F9F7F2F800224FF08043F9F772 +:10873000EDF8DDE90423F9F713FACDE90401DDE9E9 +:1087400004230020DFF8E014F9F7E0F804460D46B2 +:10875000B6F90C00F9F7ECF90022DFF8D034F9F79C +:10876000D5F822462B46F9F7FBF9CDE904019FED38 +:10877000B59BB6F90A00F9F7DBF9DDE90023F9F753 +:10878000C5F8DDE90023F9F7C1F853EC192BF9F727 +:10879000BDF804460D46B6F90800F9F7C9F9DDE958 +:1087A0000023F9F7B3F822462B46F9F7D9F953EC31 +:1087B000192BF9F7ABF8CDE90001DDE9002351EC05 +:1087C000180BF9F7A3F80022DFF86434F9F7C8F9B9 +:1087D00004460D46F088F9F7B5F922462B46F9F71D +:1087E00095F8CDE90001DDE900230020014607F0FE +:1087F00083FC68D03846F9F79BF902460B46002007 +:10880000DFF83014F9F720FACDE90201DDE904239D +:108810000020DFF82414F9F779F802460B46DDE969 +:108820000201F9F711FA0022DFF81034F9F76EF8B7 +:10883000DDE90023F9F7C8FACDE90201B6F916001F +:10884000F9F776F9DDE90223F9F760F8DDE90223AB +:10885000F9F75CF800224FF07853F9F757F8CDE9B3 +:108860000001B6F91400F9F763F9DDE90223F9F71D +:108870004DF853EC182BF9F749F8CDE90401DDE97F +:108880000023DDE90401F9F76BF904460D46B6F95A +:108890001200F9F74DF922462B46F9F761F900224B +:1088A000DFF89C33F9F732F8DDE90223F9F758F9DC +:1088B000CDE90201DDE9020107B0BDEC048BBDE8A2 +:1088C000F04007F0DBBB07B0BDEC048BF0BD00004F +:1088D000000000000000203F2DE9504387B004460F +:1088E0000020019000900146CDE90201CDE904018C +:1088F00020786178090141EA0030A17840EA11103E +:1089000000900098FFF742FECDE90401E07821795C +:10891000090141EA0030617940EA111001900198A3 +:10892000FFF7C4FECDE90201DDE902012070DDE9B7 +:10893000020100B200126070DDE902010014A070B3 +:108940000020E070BF4ADDE904016426A6FB00892F +:1089500006FB0199C2E90089D2E900012071D2E940 +:10896000000100B200126071012007B0BDE8508321 +:1089700070B50446A54D05F10C00FFF7ADFF0646A6 +:10898000287A002805D1062229462046F9F76FFBF0 +:108990000BE0062205F10C012046F9F768FB0622E0 +:1089A00005F10C012846F9F762FB012028723046D8 +:1089B00070BD0000000000000000000080B5032131 +:1089C00000910346F722EC210520F7F72DFC401E0D +:1089D0008041C043C00F02BD80B503210091034612 +:1089E000FA22EC210520F7F71FFC401E8041C0430E +:1089F000C00F02BD30B585B0002102910A460B467A +:108A0000CDE9002301784278120142EA01318078F1 +:108A100041EA101002900298FFF7B8FDCDE900017D +:108A2000DDE900016422A2FB004502FB01558548F7 +:108A3000C0E90045012005B030BD00000000000085 +:108A40000000003F000000000000C03EF0B4012123 +:108A500000226C4B1C88002C2BD1B3F90240002C57 +:108A600027D1B3F90440002C23D1DC88002C20D17D +:108A7000B3F90840002C1CD1B3F90A40002C18D1DE +:108A8000B3F90C40002C14D1B3F90E40002C10D1D6 +:108A9000B3F91040002C0CD1B3F91240002C08D1CE +:108AA000B3F91440002C04D1B3F91640002C00D1C6 +:108AB0000A461C8844F63825AC4271D31C8848F617 +:108AC000B905AC426CD2B3F9024045F2F055AC4264 +:108AD00066DB47F23154B3F90250A54260DAB3F9CC +:108AE0000450594EB5425BDBB3F90450574EB542C2 +:108AF00056DADD8847F23056B54251D3DD884AF266 +:108B00001146B5424CD2B3F90850514EB54247DB3D +:108B1000B3F908504F4EB54242DAB3F90A504E4EFF +:108B2000B5423DDBB3F90A5041F64176B54237DA3A +:108B30004A4DB3F90C60AE4232DBB3F90C6044F23B +:108B40005167BE422CDAB3F90E60454FBE4227DBB7 +:108B5000B3F90E6040F24D47BE4221DAB3F910601E +:108B6000404FBE421CDBB3F9106040F2E937BE4211 +:108B700016DAB3F91260B3F91260B3F914603A4F20 +:108B8000BE420DDBB3F9146042F21177BE4207DA40 +:108B9000B3F91660AE4203DBB3F91630A34200DB33 +:108BA000521CD2B2022A00D1002101700846F0BC4A +:108BB000704770B582B00C46002506281FD12B489F +:108BC0004069204ED6E90023002B01D1002A05D0B0 +:108BD000017F00290BD0407A002808D100A829463F +:108BE0000160FFF7F9FE054600A8FFF703FFD6E98D +:108BF00000012070D6E9000100B200126070284622 +:108C000076BD0000B87A0020D47A00208038002099 +:108C10000000103F0000503F0000E03E0000B44064 +:108C20000000E03F0040EFC00000D03F0000F040F7 +:108C30000000F03F000030410000303F006AB840C3 +:108C40000000B03FA87B002048F4FFFF19FCFFFFA5 +:108C500056CDFFFFC1E0FFFF78ECFFFFF0D8FFFF2C +:108C60000CFEFFFF18FCFFFFD08AFFFF0000002072 +:108C70000FF208010520F7F7F7BE0000BB840108DA +:108C8000F184010867850108798501080B850108D1 +:108C900071890108000000004D8A0108B38B0108AA +:108CA0008D488368DBB200F1160201780820F7F7DF +:108CB0007DBA89488368DBB200F118020178082088 +:108CC000F7F774BAF0B4854B5C78002500E06D1CB2 +:108CD000EDB28D420ED22E5C7440082602E03C4676 +:108CE000E4B2761EF3D067002406F8D51C787C40E9 +:108CF000E4B2F6E7944201D1012000E00020F0BC8C +:108D00007047CDE7FEB504460527734D002000905F +:108D1000062301AA29780820F7F7CAFA0646012E89 +:108D200003D00FF2D410F7F7F8F9012EEED1384640 +:108D3000471E80B20028E9D001AFBA78022101A80D +:108D4000FFF7C0FF002807D07A7902210DF1070054 +:108D5000FFF7B8FF002805D10FF29410F7F7DDF9FF +:108D60000020FEBDA888401CA880E9687A789DF89C +:108D7000043042EA032241F217135A43921341F29C +:108D80009413D21A01FA82F1E9602A693B79FF78DB +:108D900043EA072340F6C4177B439B1302FA83F38D +:108DA0002B614F4A126A577F002F16D000B291FBF9 +:108DB000F0F193FBF0F00023EB602B61AB802170AE +:108DC00009B209126170A07000B20012E070B2F92D +:108DD0005600012803DB012002E00020FEBD1846FA +:108DE00020712046FAF7C4FF3046FEBD30B583B08F +:108DF000394CA368DBB204F11A0221780820F7F796 +:108E0000D5F900200090032301AA21780820F7F764 +:108E10004FFA0546012D05D00FF2E400F7F77DF972 +:108E200028463EBD01ADAA78022101A8FFF74AFFFE +:108E3000002801D100203EBD6878A1780840617803 +:108E4000884201D101203EBD00203EBD22480021C4 +:108E5000C160016181802CE7012070477CB5044628 +:108E60000020207006251C4EB368DBB206F11A0202 +:108E700031780820F7F79AF900200090032301AA1F +:108E800031780820F7F714FA01280ED02846451E3D +:108E9000012808DBF7F7C7F81E21F7F77DFA284607 +:108EA000451E0128E0DA002076BD9DF8062002214B +:108EB00001A8FFF707FF002808D1F7F7B4F81E2133 +:108EC000F7F76AFA03A0F7F728F9E8E7012020701E +:108ED00076BD0000435243004C380020EC3800209F +:108EE000000000200FF220010820F7F7BDBD0000B0 +:108EF00054482D524632000054482D52463100004D +:108F000054482D5046310000ED8D01084D8E01086A +:108F1000598E010800000000038D0108058D01082D +:108F2000000000005D8E01080000000010B5002464 +:108F3000F7F779F80069C00700D50124204610BD75 +:108F400000B58BB00020ADF82A000A208DF808008B +:108F500000208DF809008DF80A008DF80000182017 +:108F6000019000A8FBF7A6FD01200BB000BD00B5E5 +:108F70008BB00020ADF82A000A208DF808000020F0 +:108F80008DF809008DF80A0001208DF800001820E6 +:108F9000019000A8FBF78EFD01200BB000BD00B5CD +:108FA0008BB00020ADF82A000A208DF808000020C0 +:108FB0008DF809008DF80A0001208DF800001820B6 +:108FC000019000A8FBF776FD01200BB000BD012049 +:108FD000704710B50024F7F726F80069C00700D5E0 +:108FE0000124204610BD00B58BB00020ADF82A004A +:108FF0000A208DF8080000208DF809008DF80A007D +:109000008DF800001920019000A8FBF753FD012006 +:109010000BB000BD00B58BB00020ADF82A000A20CF +:109020008DF8080000208DF809008DF80A00012055 +:109030008DF800001920019000A8FBF73BFD0120EE +:109040000BB000BD00B58BB00020ADF82A000A209F +:109050008DF8080000208DF809008DF80A00012025 +:109060008DF800001920019000A8FBF723FD0120D6 +:109070000BB000BD0120704710B50024F6F7D3FFF8 +:109080000069800700D50124204610BD00B58BB0D3 +:109090000020ADF82A000A208DF8080000208DF885 +:1090A00009008DF80A008DF800001A20019000A830 +:1090B000FBF700FD01200BB000BD00B58BB0002018 +:1090C000ADF82A000A208DF8080000208DF809006C +:1090D0008DF80A0001208DF800001A20019000A8E8 +:1090E000FBF7E8FC01200BB000BD00B58BB0002001 +:1090F000ADF82A000A208DF8080000208DF809003C +:109100008DF80A0001208DF800001A20019000A8B7 +:10911000FBF7D0FC01200BB000BD0120704710B55B +:109120000024F6F780FF006900F00300032800D157 +:109130000124204610BD00B58BB0F6F774FFB0488F +:10914000017841F0020101700020ADF82A000A20E8 +:109150008DF8080001208DF809008DF80A10002014 +:109160008DF800001B20019000A8FBF7A3FC012054 +:109170000BB000BD00B58BB0F6F755FFA0480178E5 +:1091800011F0FD01017013D10020ADF82A000A2072 +:109190008DF8080001208DF8090000208DF80A00E4 +:1091A00001208DF800001B20019000A8FBF782FC35 +:1091B00001200BB000BD012070470120704710B5A1 +:1091C0000024F6F730FF006900F00700072800D1FF +:1091D0000124204610BD00B58BB0F6F724FF884867 +:1091E000017841F0010101700020ADF82A000A2049 +:1091F0008DF8080000208DF809008DF80A108DF810 +:1092000000001B20019000A8FBF754FC01200BB0CC +:1092100000BD00B58BB0F6F706FF7948017811F074 +:10922000FE01017012D10020ADF82A000A208DF84D +:10923000080000208DF809008DF80A0001208DF843 +:1092400000001B20019000A8FBF734FC01200BB0AC +:1092500000BD012070470120704710B50024F6F7CB +:10926000E2FE0069C00700D50124204610BD00B50C +:109270008BB00020ADF82A000A208DF808000020ED +:109280008DF809008DF80A008DF800001C2001906F +:1092900000A8FBF70FFC01200BB000BD00B58BB0A0 +:1092A0000020ADF82A000A208DF8080000208DF873 +:1092B00009008DF80A0001208DF800001C200190A3 +:1092C00000A8FBF7F7FB01200BB000BD00B58BB089 +:1092D0000020ADF82A000A208DF8080000208DF843 +:1092E00009008DF80A0001208DF800001C20019073 +:1092F00000A8FBF7DFFB01200BB000BD0120704789 +:1093000070B58CB006460D46FBF720FB04460020E6 +:1093100000900422314600A8F8F7A9FE009A2946D9 +:109320000FF29010F6F7F9FE28460C3805283AD8C7 +:10933000DFE800F0030D121717090098C4F8C40302 +:1093400001200CB070BD0098C4F86404F8E704F57F +:10935000717042218162F3E704F571700099016533 +:10936000EEE727480078002812D00021ADF82E1033 +:109370000A218DF80C1000218DF80D108DF80E00CB +:1093800001208DF804001B20029001A8FBF792FB3E +:109390000099284640B200F00CF8009004F5717076 +:1093A00000998167CCE70FF21C10F6F7B6FE00209B +:1093B000C7E710B4134AD36B126C114C2478002CFD +:1093C0001AD00F2802D010280BD015E0507A0028B0 +:1093D00012D0906B806800280ED488420DDD0846BC +:1093E0000BE0587A002807D0986B8068002803D4D7 +:1093F000884202DD084600E0084610BC70470000C5 +:1094000054FE00200000002012B58BB001460C393C +:10941000052928D8DFE801F0031D1F21211B18248E +:109420000020ADF82A0001900A208DF808000520E0 +:109430008DF80000019404220BA90DF10900F8F742 +:1094400016FE00A8FBF736FB01200CB010BD1C2453 +:10945000E6E71924E4E71A24E2E71B240B99FFF757 +:10946000A8FF0B90DCE70FF26400F6F756FE002031 +:10947000EBE780B50FF25C010C20F7F7F5FA0FF27D +:1094800078011120F7F7F0FA0FF290010D20F7F7AD +:10949000EBFA0FF2AC010E20F7F7E6FA0FF2C40177 +:1094A0000F20F7F7E1FA0FF2E0011020BDE80440C9 +:1094B000F7F7DABA4D52322044523D25642C256428 +:1094C000000000004D523220534446004D523220DD +:1094D000524346002D8F0108418F01086F8F01080C +:1094E0009F8F010800000000CF8F01080193010841 +:1094F00000000000000000005B9201086F9201086C +:109500009D920108CD92010800000000FD92010823 +:10951000019301080000000000000000D38F010843 +:10952000E78F010815900108459001080000000030 +:109530007590010801930108000000000000000080 +:10954000799001088D900108BB900108EB9001080B +:10955000000000001B9101080193010800000000B9 +:10956000000000001F910108379101087591010862 +:10957000B791010800000000BB91010801930108A8 +:109580000000000000000000BF910108D791010811 +:10959000139201085392010800000000579201083D +:1095A000019301080000000000000000D2B2203A40 +:1095B00022BF41FA02F0C91770472032D141D04092 +:1095C00048409140D14048409140114170470000CF +:1095D00000B500BF130096469446103928BFA0E896 +:1095E0000C50FAD85FEA417C28BF0CC048BF40F855 +:1095F000042BC90728BF20F8022B48BF00F8012B15 +:1096000000BD000062F30F2262F31F42401810F009 +:10961000030308D0C91A1FD3DB0748BF00F8012D88 +:1096200028BF20F8022D130030B414461546103917 +:1096300028BF20E93C00FAD8490728BF20E90C00E0 +:1096400048BF40F8042D890028BF20F8022D48BFEC +:1096500000F8012D30BC7047C91818BF00F8012D63 +:10966000CB0728BF00F8012D70470000DFF8741108 +:1096700000220A700A70012802D0042803D0704723 +:1096800001200870704705200870704710B45649D3 +:109690004A6802F00C02564B082A12D10A680C687C +:1096A00004F03F04B3FBF4F30A68C2F388125A4390 +:1096B0000B68C3F301435B1C5B00B2FBF3F2026077 +:1096C00000E003604A6802F0F0034A4A1B099B5C11 +:1096D000046824FA03F343604C6804F4E054A40AD9 +:1096E000A45CE3408360496801F46041490B895CF4 +:1096F000426822FA01F1C16010BC70473B4900F496 +:109700004072B2F5407F06D10A6822F4F8123A4B53 +:1097100003401A430A608A6E000552EA10508866B8 +:109720007047364908607047354908607047354AC8 +:109730000029116802D008431060704721EA000038 +:1097400010607047304A0029116802D00843106049 +:10975000704721EA0000106070472C4A0029116808 +:1097600002D008431060704721EA00001060704783 +:10977000274A0029116802D008431060704721EA87 +:10978000000010607047234A0029116802D0084386 +:109790001060704721EA0000106070471E4A0029DF +:1097A000116802D008431060704721EA0000106081 +:1097B0007047002142090A4B012A01D11A6804E0CE +:1097C000022A01D11A6F00E05A6F012300F01F0036 +:1097D00003FA00F0024200D0194608467047000024 +:1097E0000038024070380240043802400838024015 +:1097F0000024F4006CAF0020FFFCFF0F3C0E47423A +:10980000400E47423038024040380240443802405F +:1098100010380240203802402438024080B52749E1 +:10982000884209D101210846FFF7A2FF002101204B +:10983000BDE80440FFF79CBF2149884209D10121BE +:109840000220FFF795FF00210220BDE80440FFF74A +:109850008FBF1C49884209D101210420FFF788FFEE +:1098600000210420BDE80440FFF782BF164988426A +:1098700009D101210820FFF77BFF00210820BDE866 +:109880000440FFF775BF1149884209D1012110201A +:10989000FFF76EFF00211020BDE80440FFF768BF0E +:1098A0000B49884209D101218020FFF761FF002187 +:1098B0008020BDE80440FFF75BBF01BD000002400F +:1098C0000004024000080240000C02400010024068 +:1098D000001C0240F0B4002232E0012393400C68E7 +:1098E0001C409C422BD154000325A540ED43066843 +:1098F0002E40066006680F79A7403E4306600E7949 +:10990000012E01D0022E11D186682E408660866815 +:109910004F79A7403E438660466826EA03034360CA +:1099200043688E799640B6B233434360C3682B4098 +:10993000C360C368CD7905FA04F42343C360521CA5 +:10994000102ACAD3F0BC70474FF6FF7101600021A6 +:10995000017141718171C171704700220069084233 +:1099600000D0012210467047018370474183704741 +:1099700010B4CB1000EB830001F007018900036AEB +:109980000F248C40A3430362036A02FA01F11943D6 +:10999000016210BC7047000080B5434988420BD17A +:1099A00001214FF40010FFF7EEFE00214FF40010EC +:1099B000BDE80440FFF7E7BE3C4988420BD10121D6 +:1099C0004FF48000FFF7DFFE00214FF48000BDE878 +:1099D0000440FFF7D8BE364988420BD101214FF42D +:1099E0000000FFF7D0FE00214FF40000BDE8044066 +:1099F000FFF7C9BE01BD7FB504460D46A68800A885 +:109A0000FFF744FE02992B48B1FBF0F04FF6C0720D +:109A100032400243A28022884FF6FE731A40228011 +:109A20002A68254B9A420AD25200B1FBF2F10A464B +:109A300092B2042A00D20421401C208421E0EB8849 +:109A40004BF6FF76B34204D102EB4202B1FBF2F1D6 +:109A500006E019235A43B1FBF2F141F4804189B287 +:109A60000A0502D141F0010189B241F4004180B2FE +:109A70004FF4967250434FF47A7290FBF2F0401C10 +:109A80002084A183208840F00100208020884FF6A8 +:109A9000F5310840A9880843698908432080A889CE +:109AA0002989084320817FBD0054004000580040B0 +:109AB000005C004040420F00A1860100002901889F +:109AC00003D041F00101018070474FF6FE72114052 +:109AD000018070470029018803D041F48071018022 +:109AE00070474FF6FF6211400180704700290188DE +:109AF00003D041F40071018070474FF6FF521140CE +:109B000001807047002A02D041F0010101E001F01C +:109B1000FE01018270470029018803D041F4806171 +:109B2000018070474FF6FF321140018070470029D5 +:109B3000018803D041F40041018070474904490C79 +:109B40000180704782B002460020034601930093D3 +:109B500000920A0F01920902090A019A002A03D011 +:109B6000009A1432009203E0090C009A1832009215 +:109B7000009A12680A4200D0012002B0704700002B +:109B800080B5554988420BD101214FF48050FFF731 +:109B900005FE00214FF48050BDE80440FFF7FEBDF4 +:109BA0004E4988420BD101214FF48040FFF7EBFD75 +:109BB00000214FF48040BDE80440FFF7E4BD484970 +:109BC00088420BD101214FF40040FFF7DCFD00215A +:109BD0004FF40040BDE80440FFF7D5BD01BD028849 +:109BE00002F441520B881A434B881A438B881A435C +:109BF000CB881A430B891A434B891A438B891A4322 +:109C0000CB891A430280828B4FF2FF731A40828302 +:109C1000098A01827047F0B40123828B4FF240041D +:109C20002240828302220284828B8C68022C02D121 +:109C30000023022439E08C88002C00D00223294C18 +:109C400065682D0203D5656825F400056560264D1D +:109C50002E68C6F388162D68C5F30275246804F0D3 +:109C60003F04224FB7FBF4F47443B4FBF5F58E6860 +:109C70000A24CF88B7F5007F06D12B0A6343B3FBD4 +:109C8000F6F35B1D9BB207E05B01B5FBF3F36343A7 +:109C9000B3FBF6F35B1D9BB2B3FBF4F303F00105DA +:109CA0002C461B1B5C08A4B22B02A51EFE2D01D363 +:109CB000022400232343CC88234303840B881A43C4 +:109CC0004B881A438B881A438989114341F40061F8 +:109CD0008183F0BC70470000003001400038004034 +:109CE000003C004004380240843802400024F40064 +:109CF0000029018803D041F04001018070474FF6F0 +:109D0000BF721140018070470029818B03D041F45C +:109D10008061818370474FF6FF3211408183704725 +:109D2000002A828802D011438180704722EA010113 +:109D30008180704700220089084200D0012210462D +:109D40007047000001684908490001600021016076 +:109D500041608160C1600161212141616A4988429D +:109D600003D16A483D21016070476949884204D1A6 +:109D700066484FF47461016070476649884204D1B7 +:109D800062484FF47411016070476349884204D1FE +:109D90005E484FF07461016070476049884203D1AA +:109DA0005A485F49416070475E49884203D157482D +:109DB0005D49416070475D49884203D153485C4921 +:109DC000416070475B49884204D150484FF03D5193 +:109DD000416070475849884203D158483D2101608D +:109DE00070475749884204D154484FF47461016068 +:109DF00070475449884204D150484FF474110160AF +:109E000070475149884204D14C484FF07461016059 +:109E100070474E49884203D14848414941607047E4 +:109E20004B49884203D145483F4941607047494901 +:109E3000884203D141483E494160704746498842C3 +:109E400003D13E484FF03D51416070470268434B9B +:109E50001A400B681A43CB681A434B691A438B6943 +:109E60001A43CB691A430B6A1A434B6A1A438B6A2B +:109E70001A434B6B1A438B6B1A4302604269D20838 +:109E8000CB6A53EAC2020B6B1A4342610A69426011 +:109E90004A6882608968C16070470029016803D000 +:109EA00041F00101016070474908490001607047B5 +:109EB000002A01D001617047C1607047006800F05E +:109EC0000100704700221C4B984201D2244800E058 +:109ED00024488B0001D5406800E000680840224912 +:109EE000084200D0012210467047134A904201D226 +:109EF0001B4800E01B481C4A0A40890001D5C2608B +:109F000070478260704700001060024008600240A5 +:109F10002860024040600240586002407060024089 +:109F20003D00002088600240400F0020A0600240F9 +:109F300000003D20B8600240106402400864024006 +:109F40002864024040640240586402407064024049 +:109F500088640240A0640240B86402403F801CF064 +:109F600000600240006402407D0F7D0F02490860DE +:109F7000704702490860704720000E4224000E42DC +:109F800070B504460026DFF83854CA20E861532033 +:109F9000E86100F018F8002811D0286820F040008F +:109FA00028602868216808432860A068A860A8681D +:109FB000616840EA0140A86000F024F80126FF2013 +:109FC000E861304670BD81B000200090DFF8F403F6 +:109FD0000168490613D44FF0FF310160016801F0B8 +:109FE0004001009A521C0092009AB2F5803F01D0C5 +:109FF0000029F3D00068800900F0010000E0012092 +:10A0000001B07047DFF8BC03016821F080010160F6 +:10A01000704781B000200090DFF8A813CA20886143 +:10A0200053208861086820F0A0000860086800F0EC +:10A030002000009A521C0092009AB2F5003F01D015 +:10A040000028F3D00868400900F00100FF228A616F +:10A0500001B07047F8B507460E460024DFF85C53A0 +:10A06000002FA86804D140060AD42046F07007E00B +:10A07000400603D5307800F0BEF901E02046F070CC +:10A080003078002F09D07178090241EA0040B17898 +:10A090000843F17840EA01460FE000F0A1F90746D5 +:10A0A000707800F09DF9000240EA0747B07800F0B0 +:10A0B00097F93843F17840EA0146CA206862532094 +:10A0C0006862FFF780FF00280FD0DFF8FC02304005 +:10A0D0002860FFF797FFA868800605D4FFF799FF6F +:10A0E000002802D0012400E00124FF2068622046FD +:10A0F000F2BD10B50C46DFF8C4120968DFF8C822BB +:10A1000011400A0C02F03F0323700B0A03F07F0397 +:10A11000637001F07F01A17002F04001E17000283E +:10A120000BD1207800F067F92070607800F063F9B7 +:10A130006070A07800F05FF9A07010BDDFF88C129D +:10A14000486A0968704770B506460D460024002E1F +:10A1500006D16878C10603D500F0EF000A306870B8 +:10A16000002E05D0687800F046F9A87800F043F991 +:10A17000E878002E09D06978090241EA0040A97800 +:10A180000843297840EA41360FE000F029F90646F5 +:10A19000687800F025F9000240EA0646A87800F049 +:10A1A0001FF93043297840EA4136DFF82052CA20AF +:10A1B000286253202862FFF706FF00280FD0DFF83F +:10A1C000100230402860FFF71DFF6868800605D444 +:10A1D000FFF71FFF002802D0012400E00124FF2028 +:10A1E0002862204670BD10B50C46DFF8E011096802 +:10A1F000DFF8DC2111400A0CE2700A0A02F01F02AB +:10A20000627001F03F02A270490B01F0070121705A +:10A2100000280BD1E07800F0EEF8E070607800F0F4 +:10A22000EAF86070A07800F0E6F8A07010BDDFF8E2 +:10A230009011CA22CA615322CA610A68D208D200A8 +:10A240000A600A6810430860FF20C8617047DFF8A1 +:10A250008411CA220A6153220A610860FF20086142 +:10A26000704781B000210091DFF85411CA22CA6101 +:10A270005322CA610028086804D040F48060086056 +:10A28000012012E020F480600860486800F00400BB +:10A29000009A521C0092009AB2F5803F01D000282B +:10A2A000F3D04868800800F00100FF22CA6101B0C5 +:10A2B000704781B000220092474A0092009A02EB58 +:10A2C000800000900098016001B0704781B00021CB +:10A2D000009141490091009901EB800000900098A5 +:10A2E000006801B0704738B500242246344DCA23B7 +:10A2F000EB615323EB616B681B0701D406E0521C32 +:10A300006B681B0702D5B2F5805FF8D16A68120747 +:10A3100009D42A68D20606D408436862FFF779FE9A +:10A32000002800D00124FF20E861204632BD244AE5 +:10A33000CA23D3615323D36100F0040320F0040047 +:10A340000029116805D008431060906B1843906392 +:10A3500005E021EA00001060906B98439063FF20B5 +:10A36000D06170470021174A12681C4B1A40024204 +:10A3700000D001210846704710B40021104A936BA9 +:10A3800003F004031468044003EAD0332343526803 +:10A3900002EA101002D0000400D00121084610BCCF +:10A3A000704708490003000C40F080000A6802F082 +:10A3B000800262EA00000860704700000028004048 +:10A3C000082800400C2800407F7F7F0004280040C0 +:10A3D0003FFFFF0014280040502800407F3F01004D +:10A3E000002101E0491C0A38C0B20A28FAD240EA2A +:10A3F0000110C0B27047010901EB810200F00F00AB +:10A4000000EB4200C0B27047EFF303807047BFF328 +:10A410004F8FDFF87C05016801F4E061DFF87425F7 +:10A4200011430160BFF34F8FFEE770B5ADF5935D4B +:10A43000054600A841F25C21F7F772FB00F070FAC4 +:10A44000002840F0718100F001FA05F065FEF3206C +:10A4500005F0DCFEDFF8404500206060DFF83C05D9 +:10A4600020600020E06009E055F8211005F098FE1A +:10A470002068001D2060E068401CE060E168206802 +:10A480000829F1D3294605F08BFE2068001D2060C5 +:10A49000EFF3088105F084FE2068001D2060EFF3D3 +:10A4A000098105F07DFE2068001D2060EFF3148116 +:10A4B00005F076FE2068001D2060EFF3058105F0B1 +:10A4C0006FFE2068001D2060EFF3008105F068FE3C +:10A4D0002068001D2060FFF797FF0146206805F007 +:10A4E0005FFE2068001D2060EFF3108105F058FE2C +:10A4F0002068001D2060EFF3118105F051FE2068F7 +:10A50000001D2060EFF3138105F04AFE2068001D56 +:10A510002060F1EE101A05F043FE2068001D411C7A +:10A520002160432105F058FE2068411C2160502124 +:10A5300005F052FE2068411C2160552105F04CFEBB +:10A54000DFF85C0420600020A0600FF2E81516E040 +:10A5500020690168206805F023FE2068001D206046 +:10A560002069001D2061E068401CE060A068E1688F +:10A5700005EBC00252689142EAD3401CA060A0687B +:10A58000092805D255F8300020610020E060EDE791 +:10A590002068411C2160432105F01EFE2068411CFB +:10A5A00021604F2105F018FE2068411C21605221D6 +:10A5B00005F012FE2068411C2160452105F00CFECB +:10A5C000DFF8E00320600020A0600FF2B01516E075 +:10A5D00020690168206805F0E3FD2068001D206007 +:10A5E0002069001D2061E068401CE060A068E1680F +:10A5F00005EBC00252689142EAD3401CA060A068FB +:10A600001A2805D255F8300020610020E060EDE7FF +:10A61000E54820605021E54805F0DEFD2068411C3A +:10A620002160452105F0D8FD2068411C21605221A0 +:10A6300005F0D2FD2068411C2160492105F0CCFDC8 +:10A640000D22DB4900A8F7F712FD0422D9490DF1CC +:10A650000D00F7F70CFD0422D7490DF11100F7F7B3 +:10A6600006FD0422D5490DF11500F7F700FD04227F +:10A67000D3490DF11900F7F7FAFC0422D1490DF185 +:10A680001D00F7F7F4FC142204F114010DF1210070 +:10A69000F7F7EDFC4FF48E700546F5F7C4FC2A463B +:10A6A00001460DF13500F7F7E2FC4FF48E7000A97A +:10A6B000401800F235058820C0460646F5F744FFED +:10A6C000324601462846F7F7D2FC8820C0460020D3 +:10A6D000E06008E0421C226000AA895C05F07CFD75 +:10A6E000E068401CE060E168206841F25C22914231 +:10A6F000F0D3411C2160472105F06EFD2068411C0C +:10A7000021604C2105F068FD2068411C21604F212B +:10A7100005F062FD2068411C2160422105F05CFDCE +:10A7200005F003FD00F0ACF8FFF771FE0DF5935D49 +:10A7300070BD000008E000E00500000000ED00E052 +:10A740001000000088ED00E00700000000E100E0DC +:10A750000800000000E200E00800000000E300E064 +:10A760000800000000E400E03C00000000EF00E012 +:10A770000100000034EF00E003000000006402402C +:10A78000340000000060024034000000003C024041 +:10A79000060000000038024024000000001C0240B7 +:10A7A0000A000000000802400A0000000004024005 +:10A7B0000A000000000002400A000000003C0140C6 +:10A7C0000600000000380140090000000030014090 +:10A7D0000900000000220140140000000021014097 +:10A7E000140000000020014014000000001001408F +:10A7F00007000000000401401400000000000140B8 +:10A80000140000000070004002000000005C0040E6 +:10A810000A000000005800400A00000000540040F8 +:10A820000A000000003C0040090000000038004021 +:10A83000090000000030004004000000002C00402F +:10A8400003000000002800402800000010B505F0BB +:10A8500063FCF32005F0DAFC4F4C1820A06002E006 +:10A86000A0680830A060A068202805D2002105F06B +:10A8700062FC0928F4D0FEE7BDE8104005F055BCA5 +:10A88000F8B551484168514A11400C0C0A0A02F0CF +:10A890001F0501F03F0600684D4901EA000705F079 +:10A8A0003BFCF32005F0B2FC45480168494805F03F +:10A8B00077FCFF21484805F08FFC2146474805F00A +:10A8C0008BFC2946464805F087FC3146454805F093 +:10A8D00083FC380C00F03F01434805F07DFC380A4A +:10A8E00000F07F01414805F077FC07F07F01404808 +:10A8F00005F072FCF5213F4805F06EFCBDE8F14023 +:10A9000005F013BC80B505F007FCF32005F07EFCD4 +:10A91000AA21384805F060FCBDE8014005F005BCFF +:10A92000002034490978F52900D10120704710B57D +:10A930000446F8F7D1FBC0B2142800D31320024616 +:10A9400021462D48F7F793FB4FF0AC30007810BD4F +:10A9500080B500F055F8BDE8014058E580B5FFF737 +:10A96000D1FF4FF480420D490020BDE80840F9F7BF +:10A97000DDB910B500F053F8204C2046F8F7ACFBD9 +:10A98000024621460020BDE81040F9F7CFB900008B +:10A990000CED00E00400FA05447A002000C0000835 +:10A9A00050C0000830C20008B1C80008B0C8000894 +:10A9B000A87A0020E4380020BC7B0020B87B00206F +:10A9C000E8380020B8380020002800403FFFFF0092 +:10A9D0007F7F7F00F4FF0008F8FF0008F9FF000800 +:10A9E000FAFF0008FBFF0008FCFF0008FDFF00085D +:10A9F000FEFF0008FFFF0008587A0020BC38002046 +:10AA000080B501214FF48020FEF791FE0120FFF771 +:10AA1000ADFA94210F20BDE80440FFF74ABC80B591 +:10AA200001214FF48020FEF782FE0120FFF79EFAFD +:10AA300000210F20BDE80440FFF73BBC10B5002407 +:10AA400001214FF48020FEF772FE0120FFF78EFAFD +:10AA50000F20FFF73BFC942800D10124204610BDB5 +:10AA600030B40168CB4321498279002A27D00A46B5 +:10AA700014682340136053680468A3435360037948 +:10AA8000CC18236805682B43236093680468A343AC +:10AA90009360D3680468A343D36043790568102B9F +:10AAA00007D1916829439160D16800680843D0605C +:10AAB0000AE051FA83F420682843206004E000791A +:10AAC0000C1820681840206030BC70470021074AED +:10AAD000136803405269024202D0002B00D00121CA +:10AAE000084670470249086070470000003C01407A +:10AAF000143C01401949084319490860704770B473 +:10AB000003781A460121C478002C1DD0144B1B6811 +:10AB100003F4E063C3F5E0631B0A4478C3F1040562 +:10AB2000AC4085780F2646FA03F32B4023431B01E4 +:10AB30000C4C1355007842110B4B00F01F0001FA2A +:10AB400000F043F8220006E05011084A03F01F030A +:10AB5000994042F8201070BC704700000000FA05D0 +:10AB60000CED00E000E400E000E100E080E100E046 +:10AB700030B401F00302920021F00301054BCC58E0 +:10AB80000F259540AC43CC50CC5890402043C85042 +:10AB900030BC70470838014080B501214FF4807007 +:10ABA000FEF7FCFD00214FF48070BDE80440FEF785 +:10ABB000F5BD42684D4B1A400B7942EA03220B68FF +:10ABC0001A43426082684A4B1A400B691A43CB68A9 +:10ABD0001A438B681A434B7942EA43028260C26A85 +:10ABE00022F47002097D491EC9B242EA0151C162D4 +:10ABF000704700210160017141718160C160016194 +:10AC00000121017570473B490A683B4B1A400368B4 +:10AC10001A4343681A4383681A43C06810430860A4 +:10AC200070470021016041608160C1607047002968 +:10AC3000816803D041F001018160704749084900F3 +:10AC40008160704770B407240A290BD3C568A1F14D +:10AC50000A0606EB4606B44025EA0404B340234343 +:10AC6000C36008E0056901EB4106B44025EA04042D +:10AC7000B340234303611F23072A0AD2446B521EA9 +:10AC800002EB8202934024EA03039140194341639B +:10AC900016E00D2A0AD2046BD21F02EB8202934007 +:10ACA00024EA030391401943016309E0C46A0D3AA1 +:10ACB00002EB8202934024EA030391401943C162EC +:10ACC00070BC7047816841F0804181607047002905 +:10ACD000816803D041F480618160704721F4806114 +:10ACE00081607047C06C80B270470000FFFEFFFCBF +:10ACF000FDF7FFC004230140E030FCFF00220068A4 +:10AD0000084200D001221046704700002DE9F04FA4 +:10AD1000A1B0804617461D46029102AE0020706227 +:10AD200011AC6FF000490AE017F8011B0298C04708 +:10AD30000290002800F06A82706A401C70623878C5 +:10AD400008B9706A64E22528EED10020F060306115 +:10AD50007061B061F061306201E040F0010017F80D +:10AD6000011F2029F9D023290DD02B2904D02D290A +:10AD700006D030290AD00CE040F0020080B2EEE7A5 +:10AD800040F00400FAE740F00800F7E740F0100058 +:10AD9000F4E72A290DD129680A1D2A600968F162A1 +:10ADA000002904D54942F16240F0040080B27F1CC2 +:10ADB00012E00021F16209E0F16A494505D001EB9A +:10ADC000810302EB43013039F1627F1C3A78A2F132 +:10ADD0003001C9B20A29EFD339782E2903D04FF0B8 +:10ADE000FF31B1621DE017F8011F2A2906D1296839 +:10ADF0000A1D2A600968B1627F1C12E00021B1625D +:10AE000009E0B16A494505D001EB810302EB43013A +:10AE10003039B1627F1C3A78A2F13001C9B20A29F7 +:10AE2000EFD3308639780FF6983005F02DFA08B157 +:10AE300017F8010B8DF83A009DF83A00682804D104 +:10AE4000387868280AD1622005E06C2804BF387879 +:10AE50006C2803D171208DF83A007F1C11A8B060D6 +:10AE60003978B1F1250023D01C3871D0001F022899 +:10AE70006ED9133800F09680093869D0801E00F032 +:10AE80002781401E00F0D180401E022860D9001F9B +:10AE900000F0CB80401F30D0401E00F08380401E69 +:10AEA00020D0C01E09D0801E7CD0C01E7AD017E1F1 +:10AEB000F068411CF16025211BE12868011D296013 +:10AEC00000687060B26A002A02D5F8F705F907E059 +:10AED000002105F0E5F900281ABF7168401AB06A30 +:10AEE000306107E12868011D296000680021CDE973 +:10AEF000000111A870607821E6E09DF83A00622810 +:10AF000018D0682806D06A280BD06C2819D0712870 +:10AF100007D016E02868011D2960716A0068018069 +:10AF2000E8E02A68101D2860706AC1171268C2E93B +:10AF30000001DFE02868011D2960716A0068017066 +:10AF4000D8E02868011D2960716A00680160D1E0BD +:10AF50002868C01D20F00700286000F108022A6060 +:10AF6000D0E90023CDE90023002B04D5F068421C72 +:10AF7000F2602D220DE0308E820704D5F068421C6D +:10AF8000F2602B2205E0C00704D5F068421CF26095 +:10AF900020220255F06811AA8018706000A800F005 +:10AFA000C5F9A7E09DF83A006C2808BF2A6811D0BF +:10AFB000712808BF2A6802D06A282A680AD1D21DDF +:10AFC00022F007022A6094460CF108022A60DCE9AC +:10AFD000002303E0131D2B6012680023CDE900233A +:10AFE000682808BF92B207D0622808BFD2B203D047 +:10AFF000742818BF7A2802D10023CDE9002396F8DF +:10B00000300000075CD5DDE90023002B08BF002AD3 +:10B0100056D041F02000782852D1F06830220255F5 +:10B02000401C421CF26001554AE09DF83A0062283B +:10B030000CD0682810D06A281AD06C2823D0712828 +:10B0400016D074281FD07A280CD01CE02868021D66 +:10B050002A6090F900201AE02868021D2A60B0F9E1 +:10B06000002014E02868021D2A60026800230FE017 +:10B070002868C01D20F00700286000F108022A603F +:10B08000D0E9002304E02868021D2A600268D31773 +:10B09000CDE90023002B04DAF068421CF2602D2277 +:10B0A0000DE0308E820704D5F068421CF2602B223E +:10B0B00005E0C00704D5F068421CF260202202556A +:10B0C000F06811AA8018706000A800F0A4F811E0E0 +:10B0D000F068411CF16029680A1D2A60096808E0CF +:10B0E000F068421CF2602522025519B1F068421C3A +:10B0F000F26001557F1CF06AF168401AB169401A8C +:10B100003169401AF169401A7169401A316AA0EB3D +:10B11000010A96F83000400711D420208DF8400035 +:10B12000BAF1010F0BDBD346012310AA00A9404658 +:10B1300000F02FFC002869D1BBF1010BF4D1F368BA +:10B1400011AA00A9404600F024FC00285ED130205E +:10B150008DF84000D6F818B0BBF1010F0ADB0123CF +:10B1600010AA00A9404600F014FC00284ED1BBF103 +:10B17000010BF4D13369726800A9404600F009FC64 +:10B18000002843D130208DF84000D6F81CB0BBF128 +:10B19000010F09DB012310AA00A9404600F0F9FBCA +:10B1A000A0BBBBF1010BF5D173693069716842181E +:10B1B00000A9404600F0EDFB40BB30208DF8400078 +:10B1C000D6F820B0BBF1010F09DB012310AA00A9BA +:10B1D000404600F0DEFBC8B9BBF1010BF5D196F893 +:10B1E000300040077FF5ABAD20208DF84000BAF16C +:10B1F000010FFFF6A4AD012310AA00A9404600F0FC +:10B20000C8FB18B9BAF1010AF5D198E54FF0FF3043 +:10B2100021B0BDE8F08F2DE9FA4782B006463569C6 +:10B220006F2908BF082705D041F02000782814BFF7 +:10B230000A2710273C24D6E90001804689469DF85C +:10B240000820642A18BF692A05D1002903DAD8F139 +:10B25000000869EB4909B9F1000F08BFB8F1000F08 +:10B260000CD1306B50B9082F3BD196F8380000074D +:10B2700037D53B24302085F83B0032E0A4F1010AA9 +:10B280005446FB17404649463A4602F0B7FACDE924 +:10B290000089B846A8FB0023DDE90089A8EB02027B +:10B2A0003032D2B23A2A03D39DF80830513B9A1873 +:10B2B0000AF8052080465FEA010908BFB8F1000FCF +:10B2C00003D0F06861198842D8D3082F09D196F8C5 +:10B2D0003800000705D5605D302802D0641E30209C +:10B2E0006055C4F13C00B0616119F160316B884276 +:10B2F00007DA081A3062308F4FF6EF710840308756 +:10B3000010E000290ED596F8381001F0140110292C +:10B3100008D1716B7269891A326A891A081A012870 +:10B32000A8BF306204B0BDE8F08700002DE9F24FFD +:10B330008EB0044604AED4E90001CDE902019DF8C7 +:10B34000380040F020008DF8000061280BD0206B01 +:10B35000002848BF062005D404BF9DF800006728D8 +:10B3600001D1012020636168C1F30A5040F2FF73EC +:10B3700098421ED1080304BF206800280AD1032088 +:10B38000A0619DF838006138C0B21A2838D30FF296 +:10B39000446109E00320A0619DF838006138C0B223 +:10B3A0001A282AD30FF224610322E068F9F788FCF7 +:10B3B000B9E1012817DA204604F09EFF012812DBCC +:10B3C000002700209DF80010612920D1E16830227B +:10B3D00001F8012B4A1CE2609DF83820612A0CBF5D +:10B3E000782258220FE040F2FE31626861F31E526B +:10B3F0006260471A4FF0FF30E4E70FF2CC51D3E719 +:10B400000FF2CC51D0E70A706169891C616110B9F3 +:10B41000002500277EE19DF80000612840F097801C +:10B42000206B00284CBF2125451C2DB26E1CD4E991 +:10B430000089DDE9020100220023F6F701FE3ABF90 +:10B4400089F00040CDE90280CDE902893F1F8DF8E7 +:10B4500010200DF11108012E35DBDDE9020100227B +:10B460000023F6F7D5FD2ED21C2102A804F066FFBA +:10B47000DDE90201F6F728FB8146F61F012E09DB04 +:10B48000F6F756FB02460B46DDE90201F6F7DCFB58 +:10B49000CDE9020108F20700072105E009F00F02DB +:10B4A00000F8012D4FEA2919B9F1010F01DB491EFE +:10B4B000F4D5491E5CBF002200F8012DF9D500F239 +:10B4C0000708012EC9DA0DF11100A8EB00010DF1FA +:10B4D0001106A942B8BF0D462DB2002D30D4284622 +:10B4E000884206DA04A941184978082928BF0F21A3 +:10B4F00000D2002104AA821800E06D1E401E12F83E +:10B5000001398B42F9D00F2904D104A941184A7896 +:10B51000521C4A70002802D504AE6D1C3F1D2DB28E +:10B52000681E0DD481190A783032D2B23A2A03D378 +:10B530009DF838303A3B9A1801F80129401EF2D59F +:10B54000206B002840F1E680681E2063E2E0DDE920 +:10B55000020100220023F6F773FD3CBF81F0004199 +:10B56000CDE902013FB247F297507843474990FB3B +:10B57000F1F73FB2C7F107069246DFF814B1012E8A +:10B5800019DBDDE90289F00707D552465B464046E4 +:10B590004946F6F7BBF9804689467610504659462B +:10B5A00052465B46F6F7B2F982468B46002EEAD148 +:10B5B000CDE9028921E076429046DFF8D89012E08A +:10B5C000F00707D552465B4640464946F6F79EF9D6 +:10B5D0008046894676105046594652465B46F6F7F5 +:10B5E00095F982468B46002EEAD1DDE902014246FA +:10B5F0004B46F6F7E9FBCDE902019DF8000066280D +:10B600000CBF07F10A000620216B4518142DA8BFB6 +:10B61000132530208DF810000DF11106DFF8789019 +:10B62000012D3BDBDDE90201F6F764FA06F10801C2 +:10B6300004220A26B0FBF6F303EB830EA0EB4E00C8 +:10B64000303001F8010DB3FBF6F000EB8006A3EB00 +:10B650004603303301F8013D521EEAD101F10806DC +:10B66000083D012DDCDBDDE90201F6F743FAF6F7D0 +:10B6700069FA02460B46DDE90201F6F7E5FA002217 +:10B680004B46F6F743F9CDE90201CBE7A08601006E +:10B69000000024400000F03F84D797410DF11100D5 +:10B6A000301A0DF1110602E0401E7F1E761C317823 +:10B6B0003029F9D09DF80010662902D13FB2791CDB +:10B6C00003E065290CBF01210021226B8D182DB2EA +:10B6D000A842B8BF05462DB2002D1BD42946814291 +:10B6E00004DA885D352828BF392000D230208A1935 +:10B6F000521E00E06D1E491E12F801398342F9D036 +:10B70000392802D1885D401C8855002902D5761E53 +:10B710006D1C7F1C3FB200972BB232469DF838104B +:10B72000204600F003F80FB0BDE8F08F2DE9F0439C +:10B7300085B00546894617461E46D5F83080012E4D +:10B7400002DA01260FF2902749F02000BDF93040BF +:10B75000662808BF641C18D0672840F082806FF00C +:10B7600003008442C0F28380444580F28080641CE0 +:10B7700095F83800000702D44645B8BFB04624B259 +:10B78000B8EB040848BF4FF00008E868A96924B284 +:10B79000012C25DA4A1C30230B54B8F1010F03DACF +:10B7A00095F83810090702D52E211154521CAA61B0 +:10B7B00018EB040FB8BFC8F1000424B261426962FB +:10B7C000A044B045B8BF464636B2EE61324639466F +:10B7D000AB691818F9F774FAA8EB0600A862C1E083 +:10B7E0000818A64218DA32463946F9F769FAA96903 +:10B7F0007118A961A01B6862B8F1010F03DA95F80E +:10B800003800000705D5E8682E220A54E869401C74 +:10B81000E861C5F82880A5E022463946F9F750FAD4 +:10B82000A8692018361BB8F1010F03DA95F8381013 +:10B83000090703D5E9682E224254401CA86136B29C +:10B84000B045B8BF464636B23246E119EB68C0187B +:10B85000F9F736FAA8693018A861A8EB0600686203 +:10B8600080E0B9F1610F16D14FF0700918E046453C +:10B8700004DA95F83810090758BFB046B8F1010846 +:10B8800048BF4FF00008B9F1670F14BF4FF04509EA +:10B890004FF0650904E0B9F1410F08BF4FF05009BE +:10B8A000A9694A1CE86817F8013B0B54B8F1010F6D +:10B8B00005DA95F83810090758BFAA6117D52E2167 +:10B8C0001154531CAB61B8F1010F10DB761E36B278 +:10B8D000B045B8BF464636B2324639461818F9F771 +:10B8E000EFF9A8693018A861A8EB06006862A8699A +:10B8F000E968471807F8019B002C03D42B2007F8B0 +:10B90000010B03E02D2007F8010B644200260DF126 +:10B91000080809E00A22214600A804F099FD0198D0 +:10B9200008F8010B009C761C24B2012CF2DA022EDE +:10B9300006DA49F02000652804BF302007F8010B23 +:10B940004EB9302007F8010B07E0761E02A8305CE4 +:10B95000303007F8010B012EF7DAA869E9684018C2 +:10B96000381AE86195F8380000F0140010280DD15D +:10B970006869A9690818696A0818E9690818A96A4C +:10B980000818696B8842BCBF081A286205B0BDE878 +:10B99000F083F8B504460D4616461F46002077B1E1 +:10B9A00016F8011BA868A047A86030B1E86A401CDF +:10B9B000E86200207F1EF3D1F2BD4FF0FF30F2BDF0 +:10B9C000686A6C747A4C00006E616E004E414E00E5 +:10B9D000696E6600494E46003000000010B5EFF376 +:10B9E000108072B60A4C216841F47F01216080F317 +:10B9F0001088A06E10F4700F04BFA72004F030FD73 +:10BA00004FF00070C4F81C020020C4F8140210BDEE +:10BA100020ED00E080B5F4F797FDDFF8FC1A086030 +:10BA2000012002BDF0B4049C059D8E1E012E01DA9A +:10BA30000C36401E3C216427B0FBF7F7C7EB90079C +:10BA40004FF4C87CB0FBFCFC674440F26F1C0CFB5D +:10BA500006F64FF00C0CB6FBFCF6F619921940F204 +:10BA60006D1606FB0020DFF8B42A101800EB400228 +:10BA700003EBC20001FB004001FB0050F0BC70472B +:10BA80001CB50C4601680191416800918368C26849 +:10BA90000169491C406900F26C70FFF7C3FF206028 +:10BAA000002016BD10B58EB0DFF8740A046801A935 +:10BAB0000020FEF71EFB00A90020FEF794FB9DF876 +:10BAC000040006909DF8050005909DF8060004907E +:10BAD0009DF80100401E08909DF8020007909DF817 +:10BAE00003006430099002A904A8FFF7C9FF4FF4CE +:10BAF0007A706043400AC0F57A700390029A4FF45E +:10BB00007A73C117E3FB02010EB010BD10B5FFF749 +:10BB1000C9FFDFF8104AD4E90023821A0023012B61 +:10BB200005DB01DC002A02D3C4E900011A461046F5 +:10BB300010BDF0B583B0044600A800210A4606C037 +:10BB4000A069E16845182888ADF80000B5F90270D1 +:10BB500000A84780B5F904608680BDF80000B4F8FD +:10BB60005810401A2880B4F85A00381A6880B4F87F +:10BB70005C00301AA880BDF90000B5F90010C913A7 +:10BB8000B1EBE03F13D0B4F95810C913B1EBE03F6B +:10BB90000DD00FF6A410F4F7C0FAB5F90000012893 +:10BBA00002DBDFF8840901E047F6FF702880B5F971 +:10BBB0000210C913B1EBE73F13D0B4F95A10C913FF +:10BBC000B1EBE73F0DD00FF67C10F4F7A6FAB5F90C +:10BBD0000200012802DBDFF8500901E047F6FF70A0 +:10BBE0006880B5F90410C913B1EBE63F13D0B4F97E +:10BBF0005C10C913B1EBE63F0DD00FF65410F4F70B +:10BC00008CFAB5F90400012802DBDFF81C0901E019 +:10BC100047F6FF70A88094F90800002804D100209E +:10BC200000E0401C0328FCDBF7BD000070B584B0C9 +:10BC3000044600A800210A460B460EC0A069E16830 +:10BC40004518164694F90800012802D12046FFF74E +:10BC500070FF94F908000146012902D9C91E40F07D +:10BC60008980002801D14FF6FF76DFF8AC1809680B +:10BC7000411891F87010491E06295ED8DFE801F0DE +:10BC800004101D2936424F00B5F90210009100A999 +:10BC9000B5F90020B21A4A60B5F904208A6056E06E +:10BCA000B5F90010711A009100A9B5F90220B21A75 +:10BCB0004A60B5F904208A6049E0B5F90210711AAA +:10BCC000009100A9B5F900204A60B5F904208A6006 +:10BCD0003DE0B5F90010711A009100A9B5F90220F4 +:10BCE0004A60B5F90420B21A8A6030E0B5F9021052 +:10BCF000009100A9B5F900204A60B5F90420B21AF4 +:10BD00008A6024E0B5F90010009100A9B5F902207D +:10BD1000B21A4A60B5F90420B21A8A6017E0B5F980 +:10BD20000210711A009100A9B5F90020B21A4A60F8 +:10BD3000B5F90420B21A8A6009E0B5F90010009143 +:10BD400000A9B5F902204A60B5F904208A600128EB +:10BD50000AD1002006E051F8202002F30F0241F83A +:10BD60002020401C0328F6DB009828804868688063 +:10BD70008868A880204600F0EFF894F908000028B1 +:10BD800002D12046FFF7D5FE012004B070BD0000AF +:10BD900070B52DED028B84B001A9002213460CC1B1 +:10BDA0008169C268891890F908000A2800F2CD80DC +:10BDB000DFE800F00631A9CBCB97CBCB71B6C4003E +:10BDC0000888ADF80400B1F9024001A84480B1F937 +:10BDD00004508580DFF8400700689FED5E0ABDF9DA +:10BDE000041000EE901AF8EEE00A60EE800AC0ED52 +:10BDF000000A00EE904AF8EEE00A60EE800AC0ED1C +:10BE0000010A00EE905AF8EEE00A20EE800A001DCA +:10BE100080ED010A99E00888ADF80400B1F902400C +:10BE200001A84480B1F904508580DFF8EC06006871 +:10BE3000061D9FEDD58BBDF9040000EE100AB8EE8B +:10BE4000C00A10EE100AF5F729FD53EC182BF5F790 +:10BE50005DFD04F017FBB06000EE104AB8EEC00ABA +:10BE600010EE100AF5F71AFD53EC182BF5F74EFDFE +:10BE700004F008FBF06000EE105AB8EEC00A10EEB5 +:10BE8000100AF5F70BFD53EC182BF5F73FFD04F006 +:10BE9000F9FA306159E01846ADF80200ADF800003B +:10BEA0000888ADF802004888ADF80000DFF86806A1 +:10BEB0000068061D9FEDC60ABDF9020000EE900A5B +:10BEC000F8EEE00A60EE800AC6ED0E0ABDF9000049 +:10BED00000EE900AF8EEE00A20EE800A86ED0F0AE6 +:10BEE00033E018460390086803909DED030AB8EE0E +:10BEF000C00ADFEDB70A20EE200ADFF81C06006852 +:10BF000080ED0C0A21E0DFF8100600680A88A0F82E +:10BF10004A2000F24A004A8842808988818014E0E1 +:10BF2000DFF8F405006800F24A000A88C2804A88F7 +:10BF300002818A884281C988818106E0DFF8D805BC +:10BF40000068B1F90010A0F85810012004B0BDEC51 +:10BF5000028B70BD60F61C3A10B5A7B0044600A86D +:10BF600000210A460B460EC01EA80FF2F0512422F3 +:10BF7000F8F7B6FE15A80FF208612422F8F7B0FE14 +:10BF80000CA80FF220612422F8F7AAFE03A80FF2F2 +:10BF900038612422F8F7A4FEA069E168401894F9FA +:10BFA0000810002902D0012940F0EA80DFF8681566 +:10BFB000096891F87B10012908D0C0F0B3800329EB +:10BFC0005AD02ED3042900F08280ABE0B0F90410DF +:10BFD00000EE101AB8EEC00AB0F9001000EE901A88 +:10BFE000F8EEE00A1EA99DED1E1A20EE811AD1ED91 +:10BFF000021A00EE211A8DED001A00AAB0F90230E3 +:10C0000001EE103AB8EEC11A82ED011A91ED061A4E +:10C0100060EE810A91ED081A40EE010AC2ED020AB3 +:10C0200099E0B0F9041000EE101AB8EEC00AB0F9A9 +:10C03000001000EE901AF8EEE00A15A99DED151A11 +:10C0400020EE811AD1ED021A00EE211A8DED001AB0 +:10C0500000AAB0F9023001EE103AB8EEC11A82ED32 +:10C06000011A91ED061A60EE810A91ED081A40EE70 +:10C07000010AC2ED020A6EE0B0F9001000EE101ADB +:10C08000B8EEC00A8DED000AB0F9041000EE101AE7 +:10C09000B8EEC00AB0F9021000EE901AF8EEE00A0D +:10C0A0000CA900AA91ED041A20EE811AD1ED051A0F +:10C0B00000EE211A82ED011A91ED071A60EE810A55 +:10C0C00091ED081A40EE010AC2ED020A43E0B0F910 +:10C0D000001000EE101AB8EEC00A8DED000AB0F99B +:10C0E000041000EE101AB8EEC00AB0F9021000EE0B +:10C0F000901AF8EEE00A03A900AA91ED041A20EEC6 +:10C10000811AD1ED051A00EE211A82ED011A91ED86 +:10C11000071A60EE810A91ED081A40EE010AC2ED9D +:10C12000020A18E0B0F9001000EE101AB8EEC00ACA +:10C130008DED000A00AAB0F9021000EE101AB8EE58 +:10C14000C00A82ED010AB0F9041000EE101AB8EE30 +:10C15000C00A82ED020A9DED000ABDEEC00A10EE93 +:10C16000101A018092ED010ABDEEC00A10EE101AFD +:10C17000418092ED020ABDEEC00A10EE101A8180D5 +:10C18000012027B010BD000089AD84FA0A74313F48 +:10C1900070B50D46DFF8941351F820400026207F3B +:10C1A000002801D1304670BD607A002803D0206E8F +:10C1B0008068804706462846216EC969884705463B +:10C1C000002E02D0206E40688047284670BD0000D7 +:10C1D0000AD7233C9B0701D542F2107292FBF1F182 +:10C1E00090F8222051430069814201DA0120704712 +:10C1F00000207047002901D48164C164002A03D45F +:10C20000910701D580F820207047002903D4002130 +:10C210008164416181617047F2B58CB00446154676 +:10C2200019460020ADF82A0001900A208DF8080078 +:10C2300000208DF809008DF80A00BC4850F82460F1 +:10C240000227307F002831D09DF94820002A08D4E9 +:10C25000D00706D513460A460C993046FFF7BAFFB9 +:10C2600048E03046FFF7C6FFA4F10C00C0B2062834 +:10C2700005D22146C9B20CA8326E92699047707AF5 +:10C2800000281BD1294649B23046726E1268904789 +:10C2900000280DD0306E40688047002804D1394610 +:10C2A0004F1EC9B20029F5D1002801D1002021E09C +:10C2B000294649B23046726E52689047707A401CE7 +:10C2C00070722A4652B20C993046736E1B699847B9 +:10C2D00000F0B6F8072C0CD1002D0AD100208DF803 +:10C2E0000000112001900A208DF8080000A8F8F73E +:10C2F000E1FB01200DB0F0BD2DE9F0418CB004460A +:10C300000D46164619460020ADF82A0001900A2075 +:10C310008DF8080000208DF809008DF80A00834888 +:10C3200050F824704FF00208387F002801D1002017 +:10C330003CE03846FFF769FF787A012818D131468A +:10C3400049B238467A6E9268904700280AD0386E13 +:10C3500080688047002805D14046A0F10108C0B29E +:10C360000028F4D1314649B238467A6ED2689047F7 +:10C37000787A002801D0401E7872324652B229469F +:10C3800038467B6E5B69984700F05AF8072C0CD151 +:10C39000002E0AD101208DF80000112001900A2002 +:10C3A0008DF8080000A8F8F785FB01200CB0BDE867 +:10C3B000F0812DE9F04104460D46164619465B48CA +:10C3C00050F82470387F002815D09DF91820002AD5 +:10C3D00008D4D00706D513460A4629463846BDE894 +:10C3E000F041F7E606EB460007EB8008D8F8380086 +:10C3F0008068002801D5002020E03846FFF7FAFECB +:10C40000324652B2D8F83800816838467B6E5B6994 +:10C410009847324652B2294638467B6E1B69984788 +:10C42000A4F10C00C0B2062805D229462046FCF72C +:10C43000EBFF012002E000F003F80120BDE8F081ED +:10C4400070B56FF000452C463948016804E08A68F1 +:10C45000A24200DA144609688142F8D1354E30789C +:10C46000401C3070F6F7AFFE7078401C7070AC4224 +:10C4700000D10024284801688C66CA6E204682429A +:10C480000AD0002801D0002A03D1C866F3F721FEA4 +:10C4900002E0012004F049F87078401E7070C0B2CC +:10C4A000002801D1F6F789FEF6F730FF012070BDB4 +:10C4B00038B505461F4C2078401C2070F6F783FEE7 +:10C4C0006078401C607014480068C56618480168B0 +:10C4D00005E08A68B2FBF5F26A43CA6009688142E6 +:10C4E000F7D16078401E6070C0B2002801D1F6F725 +:10C4F00064FEBDE83140F6F709BF0D490A6808E05F +:10C500001369012B01DAD368136113691B1A1361D4 +:10C5100012688A42F4D1704728FE00207505F5FFA5 +:10C5200028280040F0FD00200080FFFF00000020D0 +:10C53000600000202438002058206973206F766541 +:10C540007200000059206973206F76657200000048 +:10C550005A206973206F766572000000A3067F3F42 +:10C5600000000000F180B2BD000000000000803F2C +:10C5700000000000D87EB23D00000000A3067F3F0F +:10C58000A3067F3F00000000D87EB23D00000000FF +:10C590000000803F00000000F180B2BD00000000FC +:10C5A000A3067F3F0000803F000000000000000065 +:10C5B00000000000A3067F3FD87EB23D00000000CF +:10C5C000F180B2BDA3067F3F0000803F0000000065 +:10C5D0000000000000000000A3067F3FF180B2BD14 +:10C5E00000000000D87EB23DA3067F3F30B5044670 +:10C5F0000F480D46017881B0491C0170F6F7E3FD44 +:10C60000A068E168884209D13821204603F094FFF0 +:10C61000F6F7D9FDA068E1688842F5D029462046A2 +:10C6200003F0A8FF01B0BDE83040F6F76FBE00BFD1 +:10C63000243800204FF0FF31401E02280BD9001F84 +:10C64000042808D9C01F062805D90838012802D9AE +:10C65000C01E052800D80121084670470021012886 +:10C6600009D0032807D0062805D0092803D00C28B4 +:10C6700001D00D2800D101210846704738B5044685 +:10C680004FF0FF35F8F762F91C2C2AD8DFE804F0E8 +:10C690001616141616141616141429290F1412122D +:10C6A0001616142916162916181B1F2327004FF4D7 +:10C6B0007A7516E0C82514E0142512E0422510E032 +:10C6C000D0F8C4530DE000F57170856A09E000F5FB +:10C6D0007170056D05E000F57170856F01E0D0F8AF +:10C6E0006454284632BD38B5DFF80848F3F72CFF0C +:10C6F000E06203F08DFFF8F729F92063002509E0D7 +:10C700001C2D04D101F20C41DFF8EC278A67406A46 +:10C7100080476D1C1D2D80F2D480216B05EB8500B8 +:10C72000C00000224254401842704FF0FF32426075 +:10C7300000220272C2604272032D04D14C31DFF834 +:10C74000BC270A65E3E7012D03D1DFF8B427CA64EB +:10C75000DDE7022D04D14C31DFF8A8278A62D6E745 +:10C76000002D6ED0042D04D14C31DFF89C278A6750 +:10C77000CDE7052D04D1DFF89427C1F8EC20C6E7FA +:10C78000062D04D1EC31DFF888278A62BFE7072D38 +:10C7900004D1EC31DFF87C270A65B8E7082D04D115 +:10C7A000EC31DFF874278A67B1E7092D04D1DFF88F +:10C7B0006C27C1F88C21AAE70A2D42D00B2D40D05E +:10C7C0000C2D04D1DFF85827C1F804229FE70D2D66 +:10C7D00004D1DFF85027C1F82C2298E70E2D05D19F +:10C7E00001F50B71DFF840278A6290E70F2D05D124 +:10C7F00001F50B71DFF834270A6588E7102D05D1A4 +:10C8000001F50B71DFF828278A6780E7112D04D125 +:10C81000DFF82027C1F8CC2279E7122D05D101F5E8 +:10C820003371DFF814278A6271E7142D05D101F501 +:10C830003371DFF808278A6769E7132D01D0162DB9 +:10C8400010D1DFF8FC160161DFF8F8164161DFF85E +:10C85000F8268261DFF8F426C261DFF8F42602626E +:10C86000416254E7152D04D1DFF8E826C1F86C23A6 +:10C870004DE7172D05D101F55B71DFF8DC260A6560 +:10C8800045E7182D05D101F55B71DFF8D0268A67E1 +:10C890003DE7192D04D1DFF8C826C1F80C2436E78E +:10C8A0001A2D05D101F20C41DFF8B8268A622EE775 +:10C8B0001B2D7FF425AF01F20C41DFF8AC260A6591 +:10C8C00025E7012032BD0CB42DE9F04786B00546BE +:10C8D00088460126A94609EB8900C400DFF81476D2 +:10C8E000B8F10B0F1ED1386B04EB000A9AF8010067 +:10C8F000002817D02846FFF79DFE012812DB2846A6 +:10C90000FFF798FE9AF8011081420BDB284600F0F1 +:10C91000FCF80646386B2018002141700FF2C46005 +:10C92000F3F7FBFB386B215C002918D121184A78FA +:10C93000002A14D100222254104648700EA983B058 +:10C9400068462022F8F7CCF90EBC284600F035F8EE +:10C95000022801D102202BE0032800D10326B8F1E0 +:10C960000A0F04D1386B215C491C215410E0B8F146 +:10C970000B0F0DD1032D06D1386B90F879000028EC +:10C9800001D101F0BAF9386B20184178491C417087 +:10C99000386BF96A0A6E0192B1F85C1000912118A7 +:10C9A0004B78225C49460FF24460F3F7B6FB304601 +:10C9B00006B0BDE8F0075DF80CFB0EB4FFB5044609 +:10C9C0000125C0B2FFF75AFEDFF8286504EB8401A9 +:10C9D000326B02EBC107786000203872F86009A959 +:10C9E00084B068462022F8F77BF90FBC3F69B8474E +:10C9F000022801D102200AE0032801D1032505E025 +:10CA0000F06A016E2A46A24011430166284604B02E +:10CA1000F0BC5DF810FB2DE9FC4704460D460126ED +:10CA2000274607EB87004FEAC008DFF8C894D9F81B +:10CA3000300008EB000A9AF80100022814D32046BF +:10CA4000FFF7F8FD01280FDB2046FFF7F3FD9AF80A +:10CA50000110814208DB2046FFF7ECFD8AF8010057 +:10CA60000FF29C50F3F759FBD9F8300018F800107A +:10CA7000002904D108EB00025278002A2FD00A2D99 +:10CA800009D1002903D0491E08F8001017E0002141 +:10CA900008F8001013E00B2D11D108EB00014A78C3 +:10CAA000002A02D0521E4A7001E000224A70032C74 +:10CAB00005D190F87900002801D101F02DF9D9F8BD +:10CAC000300018F80010002909D1404440780028AF +:10CAD00005D1204600F019F8032800D10326D9F823 +:10CAE0003000D9F82C100A6E0192B1F85C10009158 +:10CAF00008EB00014B7818F8002039460FF2085077 +:10CB0000F3F70BFB3046BDE8F687F8B50446012580 +:10CB100004EB8400C700DFF8DC63306B3818406931 +:10CB20008047032800D10325204640B200F059F980 +:10CB3000032800D10325306B38184FF0FF314160D6 +:10CB400000210172C160F06A016E0122A24091438E +:10CB500001662846F2BD38B5044604EB8400C000E7 +:10CB6000DFF89053296B002242544018114641705F +:10CB70002046FFF7CAFFE86A026E21460FF29C408A +:10CB8000F3F7CBFA012032BD2DE9F041AEB00446F7 +:10CB90000D46ADB201208DF85400DFF8586316A899 +:10CBA000F16A5C22F8F79CF8139616A984B06846DF +:10CBB0005C22F8F795F80FBC00F0DAF900270BE0DB +:10CBC000032803D1149703208DF85400306B4044A0 +:10CBD000002101727F1C7FB21D2F23DA0120B84093 +:10CBE000F16A096E0842F5D007EB87004FEAC008EA +:10CBF000306B404441680029ECD4027A521C027226 +:10CC0000D2B26A4389B28A42E4DB80698047022853 +:10CC1000D6D1149702208DF85400DDE91401C4E93F +:10CC2000000103E0DDE91401C4E900012EB0BDE814 +:10CC3000F08100210A3842F20772904200D20121AD +:10CC4000084670472DE9F04383B004460020019068 +:10CC5000042204F1090101A8F5F709FA6168DFF877 +:10CC60009462376B282505FB01704068019A904259 +:10CC700004D10FF2B430F3F750FA6AE01046FFF730 +:10CC8000D8FF002809D16168019B05FB017042684B +:10CC90000FF2A030F3F741FA5BE0DFF8D0723868AA +:10CCA000D0F8008026E090F908906068316B05FBB1 +:10CCB0000010C068012101FA09F1084217D04FF0B5 +:10CCC000FF3000900346012201994846FFF7A4FA7D +:10CCD00040B200280BD1616801980090306B05FBD1 +:10CCE000010043684A460FF26030F3F716FA4046F7 +:10CCF000D0F80080B842D6D13868D0F8008020E063 +:10CD000090F90890C868012202FA09F2104215D081 +:10CD10004FF0FF33012249684846FFF7EDFA40B271 +:10CD200000280BD1616801980090306B05FB010071 +:10CD300043684A460FF22830F3F7EFF94046D0F83F +:10CD400000806168326B05FB0121B842D8D101989F +:10CD50004860BDE8F7832DE9F041044600252E46E2 +:10CD6000DFF890811AE006EB8600C700D8F83000A3 +:10CD70003918002048720120B040D8F82C20126EDB +:10CD800010420AD02046C9698847002805D0D8F843 +:10CD900030003818012141720D46761C1D2EE2DB51 +:10CDA0002846BDE8F0815348C16A096E00290BD0BE +:10CDB000002107E001EB8102036B03EBC2020023B9 +:10CDC0005372491C1D29F5DB7047012101FA00F05F +:10CDD0004849C96A096E0840401E8041C043C00FDF +:10CDE00070472DE9F0478146012409EB8900C50011 +:10CDF000404E306B2818C068002828D05B4F386838 +:10CE0000D0F8008003E003244046D0F80080B84208 +:10CE10001DD090F908A0306B2818C168012202FAD1 +:10CE20000AF2114021FA0AF149B20129ECD14FF07E +:10CE3000FF33012241685046FFF75EFA0028E2D036 +:10CE4000524649460FF23020F3F767F9DCE72046F7 +:10CE5000BDE8F08710B58CB004460020ADF82A007C +:10CE600001900A208DF8080000208DF809008DF847 +:10CE70000A00ADF82A00600719D50520FFF7A5FFC5 +:10CE8000002807D004208DF800000520019000A89C +:10CE9000F7F710FE0220FFF798FF002807D00420C4 +:10CEA0008DF800000220019000A8F7F703FEE006CD +:10CEB0000CD50820FFF789FF002807D003208DF844 +:10CEC00000000820019000A8F7F7F4FD0CB010BD99 +:10CED00002460020092A00D0704780B5012902D1FE +:10CEE00003F0FCFC012002BD02492C22F7F7F8BE3A +:10CEF00000000000ECFB00208D1E0208DFDA0108B4 +:10CF0000D5820308DBEA010885D00108C7E80108DB +:10CF1000F36603084D7D0308E1E601082B080208CB +:10CF20003BD30108A1650308815C03084173030832 +:10CF3000B77903085D700308817803084D7703080B +:10CF4000014C0108FD4B0108094C01080D4C01087A +:10CF5000114C0108657E03087D7F0308311D02081E +:10CF60000F7D02084F6F0308EB380008BC07002054 +:10CF70000FB417980099016001994160029981608E +:10CF80000399C1600499016105994161BDF84A1096 +:10CF90000183BDF84C104183BDF84E1081830C997C +:10CFA00001620F9941621099816204B070470000DC +:10CFB0004168122903D1817A002000F05ABF132959 +:10CFC00003D1C17A012000F054BF142903D1017BA1 +:10CFD000022000F04EBF152902D1807A00F05ABF1E +:10CFE00070470000414C204558000000414C25642A +:10CFF000202564202564202564202564000000008D +:10D00000524C204558000000524C256420256420D5 +:10D010002564202564202564000000005445524DFD +:10D0200020256420256400004558204C4D43523192 +:10D03000202564004558204C4D4352322025642061 +:10D0400025642025640000004558204C4D43523390 +:10D05000202564202564202564202564000000002C +:10D060004558204C4D43523420256420256420250A +:10D070006420256400000000534D524120256420A7 +:10D080002564000038B5F7F761FC0446104DF3F74E +:10D090005BFA286003F038FD03F03BFD686003F0A5 +:10D0A0003DFD0C48C4F8B00004F1B0000A494160ED +:10D0B0000A4981600A49C1600A490161012032BD03 +:10D0C0000349496889680847014840680068004783 +:10D0D00000FE0020014C0108FD4B0108094C01082D +:10D0E0000D4C0108114C01082DE9F04786B00446AB +:10D0F00001A81421F4F714FDF2F795FF05464FF04F +:10D100000209002601E0761C76B20A2E80F29D808C +:10D11000022EF8D0032EF6D0062EF4D0514850F847 +:10D12000267007F10C08787A002805D1D8F8540049 +:10D13000406880470028E6D009F8046009F1010939 +:10D140004FFA89F9304609284FD8DFE800F0050A80 +:10D150004E4E10154E10423CC8212846F3F71CF9DC +:10D1600043E04FF448712846F3F716F93DE03221C9 +:10D170002846F3F711F938E03C212846F3F70CF97B +:10D180004FF0000ABAF1030F2FDA0020D8F854103C +:10D190000969884714212846F3F7FEF80120D8F8DA +:10D1A00054100969884714212846F3F7F5F8BAF1B5 +:10D1B000020F05DA062101A8D8F8542052699047D9 +:10D1C0000AF1010ADEE74FF416712846F3F7E4F896 +:10D1D0000BE00020D8F8541009698847012088F82E +:10D1E00011003C212846F3F7D7F898F8151001A84C +:10D1F000D8F8542052699047002819D0D8F80C006C +:10D20000F96800EB010A98F8152001A95046F4F7D7 +:10D210002EFF3846FEF70AFD98F81520514609EB17 +:10D220000400F4F724FF98F9150081444FFA89F9B6 +:10D23000787A00287FF467AFD8F854008068804778 +:10D2400000287FF460AF002009E0A9F10200ADF8EA +:10D250000000022200A92046F4F709FF002006B0D2 +:10D26000BDE8F087000000200FB480B5BDF80A00CB +:10D2700067494880022802D3801E088001E0002010 +:10D2800008800C229DF909100020F7F761FB0328A4 +:10D2900001D1022000E0012002BC5DF814FB5C48D3 +:10D2A0000121418000210180012070475949087007 +:10D2B0007047000030B58DB002A8F7F7AFFB544CB3 +:10D2C0002088401C2080618880B2884232D30020B0 +:10D2D0002080054628E06068D0F8EC010121A940D3 +:10D2E000084220D0284603F0F7F900281BD400EBB1 +:10D2F00080009FED460ADDED0B0A60EE800AFDEE30 +:10D30000E00A10EE901A00AA8152DDED0C0A20EE20 +:10D31000800ABDEEC00A10EE101A8218518000A9D2 +:10D320004018012101716D1C132DD4DBDDE90001D2 +:10D3300003F0E2F901200DB030BD80B5F7F706FB30 +:10D34000334948603449C0F8F01100F5F8703349AA +:10D350004160334981600FF21101C1600FF2250174 +:10D360000161012002BD000010B50024294890F998 +:10D370000000002804D103F0DEF9002800D00124C9 +:10D38000204610BDF8B504460D463026287816FB19 +:10D39000004001210170287816FB00404170287878 +:10D3A00016FB00400C218170287816FB00401949BB +:10D3B00091F90010002902D00221C17001E0012181 +:10D3C000C170287816FB004001210171287816FBF6 +:10D3D000004008214171287816FB00400121C180DE +:10D3E000287816FB0047002003F038F938812878A8 +:10D3F00016FB0044002003F036F960812878401CB9 +:10D4000028700C20BDE8F24003F047B90000C84284 +:10D410008CAF00205BFE002069D201089FD201087A +:10D42000B5D20108C449022807D1C44890F8922017 +:10D4300042F0010280F8922009E0032807D1BF489A +:10D4400090F8921041F0020180F89210BC49084611 +:10D45000704710B502F060FEF32002F0D7FE0824FA +:10D460000AE00021204602F066FE092803D00FF2F0 +:10D47000F020F2F752FE0834182CF2D3BDE8104029 +:10D4800002F053BE2DE9F8430646B6F803004FEA12 +:10D49000D008D6F80900071DD6F80590F5F793FED9 +:10D4A000A84C6078401C6070A44D95F8910000284D +:10D4B00008D10FF2BC20F2F730FEFFF7CAFF0120BF +:10D4C00085F8910002F028FEF32002F09FFEC8EBE1 +:10D4D000081009EB80184FF0000909E019F807104F +:10D4E00009EB080002F078FE09F101090FFA89F949 +:10D4F000B6F801008145F1DB02F017FE05F2910656 +:10D50000707800F00300032809D100F036F80020FD +:10D51000707085F891008C490220F3F7B7FC6078B1 +:10D52000401E6070C0B2002803D1BDE8F143F5F79A +:10D5300044BEBDE8F18310B5040004D0012C04D131 +:10D5400003F053FC01E003F070FC204610BD002006 +:10D550007E498A79012A03D17D4800228A71704769 +:10D56000CA79012A02D17B480022CA7170477349E7 +:10D57000C87370477148C07B704738B56F4C04F270 +:10D5800011050120E8702871E32068710620ADF8CC +:10D5900000007148006890F81A01C00719D594F886 +:10D5A000920000F00300032809D1EF20A8710720A2 +:10D5B000ADF800000FF2C410F2F7AFFD09E0FFF77D +:10D5C000D9FFA8710720ADF800000FF2B810F2F7EC +:10D5D000A4FDBDF80000C01EADF80200012060747B +:10D5E00002220DF1020104F11200F4F740FD00A93E +:10D5F00004F11100F5F779FF0020FFF7B8FF31BD06 +:10D6000080B503F029FD002805D10FF28010BDE898 +:10D610000240F2F782BD01460FF27810F2F77DFD6D +:10D62000BDE8014003F08ABD00264B4CF2F7FBFC3D +:10D630002060424D942231462846F4F71EFD012217 +:10D6400010214FF47A5003F043FB42E00D2801D142 +:10D65000FFF7D6FF103EF6B208F101085FFA88F82E +:10D66000B8F1020F0BD2304607EB400003F033FD58 +:10D670000028EBD10120FFF77AFF01202874002653 +:10D68000287C002803D0FFF778FF30462874F2F793 +:10D6900081FE206890F81A11C90703D490F81A0186 +:10D6A000400703D595F89200002827D00020C046F7 +:10D6B00003F0ABFB4FF480510120F2F7E1FE30465E +:10D6C000FFF755FF206890F81A110FF2E000F2F70B +:10D6D00024FD022003F03EFD206890F81A110FF29D +:10D6E000C000F2F71AFDFFF78BFF4FF480510120C5 +:10D6F000F2F7C4FE1021194803F059FBFFF727FF8A +:10D7000007462068407AFFF716FF0028BFD0002F99 +:10D71000BDD0206890F81A01400705D54FF470720B +:10D7200039460420F6F702FB206890F81A01C0077A +:10D73000A6D5B04692E7000000400008E8F60020B9 +:10D7400000B000082438002028590020507B002019 +:10D75000A8590020685D002044FE00206859002080 +:10D7600053562D464C415345204641494C0000003C +:10D7700053562D53544152540000000053562D442B +:10D780004F4E450053562D4F4B0000005353492038 +:10D790005300000053534920462025640000000038 +:10D7A00053562D52203078257800000053562D44D2 +:10D7B000203078257800000013F0004C03D55B4240 +:10D7C000524263F100039CEA210C00F0178010B56F +:10D7D000644603D34942404261F1000100F00EF873 +:10D7E000640004D34942404261F10001244203D560 +:10D7F0005B42524263F1000310BD00001B4213D193 +:10D80000094236D12AB18446B0FBF2F002FB10C2C5 +:10D81000704703F0C3BCFCD30022002370470B0009 +:10D820000200002100207047904271EB030CF6D3F8 +:10D8300070B5B1FA81F4B3FA83F52C1BA340C4F19F +:10D84000200532FA05F63343A2405FF00046E64079 +:10D8500002E05B085FEA3202841A71EB030524BF21 +:10D86000204629467641F4D302000B003000002107 +:10D8700070BD012ACFD970B5140C20D0B1FA81F453 +:10D88000B2FA82F5C4F120046419B4F12006D6D3AB +:10D89000B2405FF00044F440002502E052085FEA25 +:10D8A0003303C61A71EB020E24BF30467146644141 +:10D8B0006D41F3D302000B002000290070BD0C461F +:10D8C000B1FBF2F102FB11452D0445EA1045B5FB11 +:10D8D000F2F402FB145580B240EA0545B5FBF2F0C4 +:10D8E00002FB105240EA044070BD00000FB480B546 +:10D8F000032200210846F7F72BF8022801D1022065 +:10D9000018E00FF63040F2F708FCDFF8C80B0021F2 +:10D910004173C18181619DF80B209DF80A109DF82B +:10D92000090003F0CEFD54220021DFF8C00BF4F70C +:10D93000A4FB012002BC5DF814FB0120704730B548 +:10D940008BB000A8F7F76AF805210320F7F79DF8D8 +:10D95000002802D1DFF8800B0890DFF8784B2069AF +:10D96000C56F03F05EFD207294F90800022806D10D +:10D97000422D04D114210320F7F752F807E00128C3 +:10D9800005D1142D03D142210320F7F749F8284689 +:10D9900080B2DDED081A00A991EC030A03F0ACFC9B +:10D9A00060692818606101200BB030BD1CB5DFF83C +:10D9B000244B94F90000002843D400A8F2F7A3FDFB +:10D9C000204600A90622F7F77BF994F90A0094F99A +:10D9D0000110814229D1217B0818A07240B23D2854 +:10D9E00001DB3C38A07294F90A100FF65830F2F7B8 +:10D9F00094FB00206061DFF8E40A90F901004FF029 +:10DA0000FF31884201D1012016BD94F90110081A96 +:10DA1000F4F78EF821F00041F4F756F840B20128EF +:10DA200001DB012016BD002016BDDFF8B40A90F915 +:10DA30000120914203D0D4E90023C0E90023002053 +:10DA400016BD6069DFF8D01A884205DB0FF600309A +:10DA5000F2F763FB012016BD002016BD2DE9F84347 +:10DA60000026DFF8704A07E07A19A27252B23146F6 +:10DA70000FF6E820F2F751FB94F90A50002E21D45A +:10DA80006078461B76B294F90C70002EECD53046C7 +:10DA9000F4F74EF821F0004102460B4690469946B5 +:10DAA0003846F4F745F842464B46F4F7C9FAE3D254 +:10DAB000EA1BA272002652B231460FF6B420F2F7EA +:10DAC0002CFBD9E73D2D02DBA5F13C00A07294F9B7 +:10DAD0000A100FF6B020BDE8F443F2F71EBB10B5F4 +:10DAE000DFF8F04901202072002060724FF0FF3013 +:10DAF00020700F20E0721420207300206073E081FA +:10DB0000A061F6F723FF2061DFF8D819C0F888106C +:10DB10008830DFF8D4194160DFF8001A81600FF215 +:10DB20001101C1600FF21D510161012010BD000003 +:10DB30002DE9F043A9B00546002413A803F075FCB5 +:10DB4000DFF8A8692046129001201190314684B078 +:10DB500068465422F7F7C4F80FBC00F0F9F80746FE +:10DB60009DED210AD6ED0E0A30EE600A10EE100A85 +:10DB7000F3F794FE2246DFF87839F3F7C7FEF3F7A0 +:10DB8000A3FF80461FFA88F8BDF89200B6F8461049 +:10DB9000461AF6B2DFF83C99002D38D1002F02D199 +:10DBA00056EA080018D00124002F15D0DFF870596C +:10DBB000A868B84210D0204604F0D9F8204604F0F6 +:10DBC00084F9A868381AC9F81C00AF603246394693 +:10DBD0000FF6BC10F2F7A1FADFF84459AF6000204D +:10DBE000C9F814004FF0FF3089F80000DFF8F02882 +:10DBF000D9E90001C2E90001C5E90001DFF8DC282C +:10DC0000C2E9000199F80B0089F80A002BE000F046 +:10DC10002CF900281CD0204689F80900DFF8C0281C +:10DC2000D9E90001C2E9000100A8F2F76CFC4846FE +:10DC300000A90622F7F744F899F9023099F9012072 +:10DC400099F900100FF65410F2F767FAFFF706FF84 +:10DC5000FFF7ACFE002806D0DFF88008D9E90023E2 +:10DC6000C0E90023012499F80D00012832D1B9F848 +:10DC70000E00002805D10FF63C10F2F74EFA0124F1 +:10DC800028E0D9F81810814219D2002F02D156EAA3 +:10DC9000080000D00124DFF8885895F9020099F9AE +:10DCA0000220904216D0491CC9F818100FF6141023 +:10DCB000F2F733FAD9E90001C5E900010AE00020D2 +:10DCC00089F80D00A9F80E00C9F818000FF6041025 +:10DCD000F2F723FA012C02D10020C9F81400D9F878 +:10DCE000100090F87900002803D10020C9F8140032 +:10DCF0000446204629B0BDE8F08310B5DFF8D4070C +:10DD000000214161032205210020F6F721FE04468F +:10DD100000F007F8204610BD032205210120F6F788 +:10DD200017BE00B595B000A803F07FFB542200A9F0 +:10DD3000DFF8B807F4F79BF9012015B000BDDFF854 +:10DD40009407C0697047DFF88C070021C1617047F4 +:10DD50000FB430B595B09DF9B4409DF9B8000025D9 +:10DD600001280BD103F026FC1899884202D3451AEA +:10DD7000EDB270E08038451AEDB26CE000A803F017 +:10DD800054FB641E082C66D8DFE804F02905111D39 +:10DD90002936424E5A0001981999884201D3451AF2 +:10DDA00059E0DFF880271018401A451C53E002980C +:10DDB0001A99884201D3451A4DE0DFF868271018F8 +:10DDC000401A451C47E003981B99884201D3451A25 +:10DDD00041E0DFF850271018401A451C3BE000983E +:10DDE0001899884201D3451A35E0DFF8381708182A +:10DDF0001899401A451C2EE004981C99884201D3BA +:10DE0000451A28E0DFF81C271018401A451C22E0AC +:10DE100005981D99884201D3451A1CE0DFF80427B4 +:10DE20001018401A451C16E006981E99884201D326 +:10DE3000451A10E0DFF8EC261018401A451C0AE0DD +:10DE400007981F99884201D3451A04E0DFF8D426C9 +:10DE50001018401A451C284615B030BC5DF814FB5C +:10DE6000DFF87006012141727047DFF86806407ADA +:10DE7000704703F0E4BADFF85C16792802D3782201 +:10DE8000CA8100E0C88101224A7301460FF2547032 +:10DE9000F2F743B910B5040001D1012402E0072CC8 +:10DEA00000D3062421460FF25070F2F736F9641EB3 +:10DEB000052C2DD8DFE804F0030A11181F26DFF81F +:10DEC00014063721C1723C21017321E0DFF80406FA +:10DED0001921C1721E2101731AE0DFF8F8050F2124 +:10DEE000C1721421017313E0DFF8E8050A21C17241 +:10DEF0000F2101730CE0DFF8DC050721C1720C2152 +:10DF0000017305E0DFF8CC050521C1720A21017318 +:10DF1000DFF8C005C17A8172BDE810409EE50000BF +:10DF20000FB400B595B000A803F07FFA9DED080A84 +:10DF3000DDED1E0AB4EE600AF1EE10FA02DB30EEFF +:10DF4000600A05E09FED3E1A71EE600A30EE800A2D +:10DF500010EE100AF3F7A2FCDFF89825DFF89835E9 +:10DF6000F3F7FEFD02F08EFAF3F798FC0022DFF8DB +:10DF70008C35F3F7CBFCF3F7A7FD00EE100AB8EEF3 +:10DF8000C00A10EE100AF3F789FCDFF86825DFF805 +:10DF90007035F3F7BBFCDFF86C25DFF88C35F3F751 +:10DFA000DFFD02F06FFA00EE100A15B05DF814FB09 +:10DFB0000FB400B595B000A803F037FA9DED0D0A37 +:10DFC000DDED230AB4EE600AF1EE10FA02DB30EE6A +:10DFD000600A05E09FED1A1A71EE600A30EE800AC1 +:10DFE00010EE100AF3F75AFCDFF80825DFF80835C1 +:10DFF000F3F7B6FD02F046FAF3F750FC0022DFF823 +:10E00000FC34F3F783FCF3F75FFD00EE100AB8EE83 +:10E01000C00A10EE100AF3F741FCDFF8D824DFF84D +:10E02000E034F3F773FCDFF8DC24DFF8FC34F3F7BB +:10E0300097FD02F027FA00EE100A15B05DF814FB08 +:10E04000002474492DE9F0472DED068BA8B0064653 +:10E050000D4613A803F0E9F93024287814FB00607A +:10E0600001210170287814FB0060DFF868144A7BF6 +:10E07000012A0CD103224270287814FB006001228F +:10E08000C270C889002804D10020487301E0012132 +:10E090004170287814FB0060032181700DF1840920 +:10E0A0009FED868B9FED879BDFF8407400201290D8 +:10E0B00001201190394684B068465422F6F710FECC +:10E0C0000FBCFFF745FE0A28287814FB006080F09B +:10E0D000FD8000210171287814FB006898F804A0E5 +:10E0E0000846129002201190394684B068465422A6 +:10E0F000F6F7F6FD0FBCFFF72BFE40EA0A0088F8A2 +:10E100000400287814FB006800201290032011906E +:10E11000394684B068465422F6F7E2FD0FBCFFF79B +:10E1200017FE88F80500287814FB0068002012907C +:10E1300004201190394684B068465422F6F7D0FD89 +:10E140000FBCFFF705FE88F80600287814FB00686E +:10E150000020129005201190394684B06846542260 +:10E16000F6F7BEFD0FBCFFF7F3FD88F80700394650 +:10E1700084B068465422F6F7B3FD0FBCFFF718FFD2 +:10E1800010EE100AF3F78AFB41EC100B287814FB11 +:10E19000006853EC102B51EC190BF3F7B7FBF3F7B6 +:10E1A00093FCA8F80E00287814FB00682198F3F778 +:10E1B00075FB53EC182BF3F7A9FBF3F785FC88F8F4 +:10E1C0001000287814FB0060B9F80E10417439462D +:10E1D00084B068465422F6F783FD0FBCFFF7A0FE1B +:10E1E00010EE100AF3F75AFB41EC1A0B287814FBD7 +:10E1F000006853EC1A2B51EC190BF3F787FBF3F77C +:10E2000063FC88F81200287814FB0068D9F808002D +:10E21000F3F744FB53EC182BF3F778FBF3F754FCBC +:10E2200088F81300287814FB00680020129006205C +:10E230001190394684B068465422F6F751FD0FBC60 +:10E24000FFF786FD88F80800287814FB0068002096 +:10E25000129007201190394684B068465422F6F790 +:10E260003FFD0FBCFFF774FD88F80900287814FB08 +:10E2700000680020129008201190394684B068464A +:10E280005422F6F72DFD0FBCFFF762FD88F80A0057 +:10E29000287814FB00640020129009201190394660 +:10E2A00084B068465422F6F71BFD0FBCFFF750FD03 +:10E2B000E0722878401C287005E100BF00000000D3 +:10E2C000000024400000000000005940802101713E +:10E2D000287814FB00680020129002201190394623 +:10E2E00084B068465422F6F7FBFC0FBCFFF730FD04 +:10E2F000C8F80500287814FB00680020129003205D +:10E300001190394684B068465422F6F7E9FC0FBCF8 +:10E31000FFF71EFDC8F80900287814FB00680020EC +:10E32000129004201190394684B068465422F6F7C2 +:10E33000D7FC0FBCFFF70CFDC8F80D00287814FBC4 +:10E3400000680020129005201190394684B068467C +:10E350005422F6F7C5FC0FBCFFF7FAFCC8F8110011 +:10E36000394684B068465422F6F7BAFC0FBCFFF772 +:10E370001FFE10EE100AF3F791FA41EC100B28780B +:10E3800014FB006853EC102B51EC190BF3F7BEFA99 +:10E39000F3F7B0FBC8F82700287814FB0068219831 +:10E3A000F3F77CFA53EC182BF3F7B0FAF3F78CFB86 +:10E3B00088F82B00287814FB0060B9F80E1080F85C +:10E3C0002C10394684B068465422F6F789FC0FBCFD +:10E3D000FFF7A6FD10EE100AF3F760FA41EC1A0BF6 +:10E3E000494A4A4BF3F714FE06D8494A494BF3F71A +:10E3F00027FE01D29FED4DAB287814FB006853EC4B +:10E400001A2B51EC180BF3F781FAF3F75DFBA8F820 +:10E410002D00287814FB0068D9F80800F3F73EFABD +:10E4200053EC182BF3F772FAF3F74EFB88F82F0032 +:10E43000287814FB006800201290062011903946BD +:10E4400084B068465422F6F74BFC0FBCFFF780FC03 +:10E45000C8F81500287814FB0068002012900720E7 +:10E460001190394684B068465422F6F739FC0FBC47 +:10E47000FFF76EFCC8F81900287814FB006800202C +:10E48000129008201190394684B068465422F6F75D +:10E4900027FC0FBCFFF75CFCC8F81D00287814FBB4 +:10E4A00000640020129009201190394684B068461B +:10E4B0005422F6F715FC0FBCFFF74AFCC4F8210004 +:10E4C0002878401C2870FFF72CFC28B0BDEC068B88 +:10E4D000BDE8F08770FC002000007A4410FE0020A8 +:10E4E00008FE0020EDD801083BD9010844F50020C2 +:10E4F000000024407B14AE47E17A743F000059408D +:10E50000E17A843F2D431CEBB81E85EB51B89E3F4A +:10E510009A9999999999B93F40771B003FD9010879 +:10E52000B4FD002080969800E2361A3F9A99999996 +:10E530009999B93F50443A2053746172745065649C +:10E540006F00000050443A204E5420256400000023 +:10E5500050443A204E6F54696D65000050443A2093 +:10E56000636F6D70312025642C202564000000004D +:10E5700050443A20636F6D70322025642C2025644E +:10E580000000000050443A20435554202564000008 +:10E59000537465703D25642C2025640050443A5422 +:10E5A000696D654E6F74692025642025642025649B +:10E5B0000000000050443A2053746F70204461748E +:10E5C0006131000050443A207574696D65722025F0 +:10E5D0006400000050443A2053746F70204461740A +:10E5E0006132000050443A205374617274204461D7 +:10E5F000746120256400000050443A2055542025C1 +:10E60000640000000FB480B5082200210846F6F728 +:10E610009FF9022801D1022004E06948002101701D +:10E620004180012002BC5DF814FB654800210170A7 +:10E630000120704738B501240020ADF80000604D7E +:10E6400095F90000002809D1204628700020A880F4 +:10E65000A86803F075FC03F0E9FD29E0012829D141 +:10E660006888401C68800DF10101A86803F08AFEEB +:10E67000002815D0082200212046F6F769F9032862 +:10E6800000D1032408220B210020F6F761F90228AB +:10E6900001D1022032BD0220287004F041F807E0C9 +:10E6A000B5F90200962803DB0520287000F057F822 +:10E6B000204632BD0328FBD1A888401CA88000B2A8 +:10E6C000FB28F1DA00A9A86803F076FC0028EFD057 +:10E6D00004202870204600F033F800F040F8E7E707 +:10E6E00010B5374CF6F732F9E060F1F72DFFA06076 +:10E6F000E0683449C0F8501100F5A8703249416013 +:10E70000324981600FF20D01C1600FF2C901016150 +:10E71000012010BD01460020294AD26892F841210B +:10E72000002A02D0012900D106E0704780B5002000 +:10E7300000F006F8012002BD254890F9000070475E +:10E7400023490870704780B5082200210846F6F773 +:10E75000FFF8022801D1022002BD012002BD80B5D0 +:10E76000174800218180418008220120F6F7F0F847 +:10E77000032801D1032002BD012002BD38B50124C8 +:10E780000F4D95F90000022815D108220B212046D3 +:10E79000F6F7DEF8032800D10324FFF7D4FF0228A0 +:10E7A00001D1022032BD032800D1032403202870A8 +:10E7B00002A0F1F7B2FC204632BD000053414900EF +:10E7C000687B002005E601082BE6010835E6010814 +:10E7D000FB7B002018B430220B7812FB03030124CA +:10E7E0001C700B7812FB03035C700B7812FB0303A5 +:10E7F00008249C700B7812FB03000122C270087879 +:10E80000401C087011BC91E70FB480B58748012106 +:10E810000170052200210846F6F79AF8022801D176 +:10E82000022016E0052209210020F6F791F80228BF +:10E8300001D102200DE0052207210020F6F788F81B +:10E84000022801D1022004E000F0E8F803F090FF74 +:10E85000012002BC5DF814FB38B501240522092112 +:10E860002046F6F775F8032800D103240522072176 +:10E870000120F6F76DF8032800D103246B4D95F9BC +:10E880000000032801D0012807D105220021012022 +:10E89000F6F75EF8032800D103240020287000F06A +:10E8A000BDF804F0DFF8204632BD80B5002000F04E +:10E8B0003CF8022801D1022002BD032801D1032027 +:10E8C00002BD012002BD10B5584CF6F73FF820619B +:10E8D000F1F73AFEA060F1F7A6FBE0602069544929 +:10E8E000C0F8D810D83053494160534981600FF2C5 +:10E8F0001101C1600FF249110161012010BD00003A +:10E9000001460020494A126992F8C920002A02D023 +:10E91000012900D102E07047002003E0474890F948 +:10E920000000704745490870704770B582B00646D0 +:10E9300001253E4C94F90000012823D1A088401CF9 +:10E94000A08000B24C280BDB0020A08002202070A9 +:10E95000052200212846F5F7FBFF032800D10325F7 +:10E96000012E59D1E068007D012807D1B4F90400D7 +:10E970001F2851DB6078401C60704DE0A078401C7F +:10E98000A07049E002281CD1012E0AD1E068007D68 +:10E99000012803D16078401C607002E0A078401C20 +:10E9A000A07094F90100012836DB052200210846F9 +:10E9B000F5F7CEFF022801D1022076BD032020709A +:10E9C0002AE0032828D100208DF8000000A9A068C3 +:10E9D00003F0F2FEC0B202280DD105220021284624 +:10E9E000F5F7B6FF032800D103250120FFF79AFFB2 +:10E9F0000420207010E003280ED1052200212846B3 +:10EA0000F5F7A6FF032800D1032500206070A07051 +:10EA10000220207003F0ACFE284676BD034800219A +:10EA200081804170817070470000000014FD00205B +:10EA300009E8010859E80108ABE801085DFE00207B +:10EA400010B50C463021227811FB0202012313700D +:10EA5000227811FB02025370227811FB0202052377 +:10EA60009370227811FB02000121C170FFF754FF5F +:10EA70002078401C207010BD0FB480B50222012107 +:10EA80000020F5F765FF022801D102200EE00222E6 +:10EA900007210020F5F75CFF022801D1022005E0E4 +:10EAA00003F0EAFF404800210170012002BC5DF83C +:10EAB00014FB3D48002101700120704700B58BB068 +:10EAC00000A8F5F7ABFF03A890EC030A04F00AF8DE +:10EAD0003549087001200BB000BD10B5324CF5F778 +:10EAE00035FFA060F1F79FFA6060A0682F490166CA +:10EAF0002F4941662F4981660FF21D01C1660FF251 +:10EB000069010167012010BD80B527484068007D7C +:10EB100003F0E1FF012002BD002023498A6892F83A +:10EB20005120002A04D091F90010002900D00120C2 +:10EB300070471D48002101700120704710B5002466 +:10EB4000012804D007D303280BD002D303E001240B +:10EB500007E0022405E0032401460FF25C00F1F710 +:10EB6000DCFA204610BD000038B50C463021227872 +:10EB700011FB020201231370227811FB0202537071 +:10EB8000227811FB020202239370227811FB020506 +:10EB9000054890F90000FFF7D1FFE8702078401C8D +:10EBA0002070BDE83140C4E790FD002079EA0108FB +:10EBB000B3EA0108BDEA01084C4D4350532031200F +:10EBC0002564000070B504463548364E0568B5B179 +:10EBD000287A88B16868A0420ED101202872307866 +:10EBE000401C3070287A401E2872C0B210B92846E6 +:10EBF00004F03AFEF4F78AFBED68002DE8D170BD11 +:10EC000010B5044628482949016000200021024629 +:10EC100003460FC4103CF4F7D6FA21480168E160BE +:10EC2000046020484078002804BFBDE81040F4F795 +:10EC3000C4BA10BD30B51B4D0446287881B0401CC5 +:10EC40002870A868217A11B9606001250DE061681B +:10EC5000814208D01021204601F06EFC207A002865 +:10EC6000F8D1A8686060207A451C2572F4F74EFB45 +:10EC7000284601B030BD0B490A78521C0A70017A4F +:10EC8000491E0172C9B2002918BFF4F73FBB00B595 +:10EC900081B004F0E9FD01B05DF804EBF4F736BB98 +:10ECA000EC7B002024380020D07B0020C5EB01083D +:10ECB000DFF82C0C016899B94FF4803181604FF472 +:10ECC000805141604FF0FF31C16001610421416119 +:10ECD000DFF8101C0422C1F8B821DFF80C1C016019 +:10ECE0000120704701F1080313F0070305D001F17B +:10ECF0000803C3F1080303F007035918D21A81610E +:10ED0000C26042F001034B60511828224A60DFF8CC +:10ED1000D01B0969C16170472DE9F84F054601F123 +:10ED2000080010F0070005D001F10800C0F108004C +:10ED300000F0070000EB010A02F1080010F00700E4 +:10ED400005D002F10800C0F1080000F007008418A7 +:10ED500003EB0A07A4EB0A00A0EB030843F003004F +:10ED6000CAF80400A74228BF04F094FD2079C00728 +:10ED700058BF04F08FFDB8F1100F38BF04F08AFDC2 +:10ED8000A869844207D1E8684044E860AF6140F078 +:10ED90000100786048E16869844208D1A86840446D +:10EDA000A8606F6140F001017960C0513CE160688A +:10EDB00000F00301012940F09F80C008C0000090CE +:10EDC0004FEAD00BBBF1200F2FD2D4F80890E668A1 +:10EDD000B44208BF04F05EFD4C4508BF04F05AFD84 +:10EDE0006068C008C000B0EBCB0F18BF04F052FD44 +:10EDF000B14506D12868012101FA0BF1884328604A +:10EE000077E005EBCB0000F12801894502D02969A4 +:10EE100089456CD32830864202D02869864266D361 +:10EE2000C9F80C60C6F8089063E0D4F81890E6685A +:10EE3000A64206D0A068296988421DD3C660B0608A +:10EE40001CE004F11400066836B904F110000668ED +:10EE5000A6B101E00846066806F114010A68002A16 +:10EE600002BF06F110010A68002AF3D1296988421D +:10EE700002D30021016001E004F00CFDB9F1000FA4 +:10EE800037D0E06905EB800000F5987001688C428E +:10EE900009D10660300014D168680121E26991400F +:10EEA0008843686025E02869814508D3D9F81000B7 +:10EEB000A04214BFC9F81460C9F8106001E004F062 +:10EEC000E9FCB6B12869864211D3C6F818902169C9 +:10EED00029B1814226BF31618E6104F0DBFC60699B +:10EEE00038B12969884202D37061866101E004F07B +:10EEF000D1FC0098041980446068400840006060BC +:10EF000048F00100786048F807804FEAD806202EC4 +:10EF10001FD205EBC60000F12804A146B8F1100F7E +:10EF200038BF04F0B7FC0120B0402968014202D18B +:10EF30000843286006E0A068296988422CBF814602 +:10EF400004F0A8FCA760C9F80C70C7F80890FC6032 +:10EF50006AE05FEA182008BF002123D0B0F5803FA7 +:10EF600028BF1F211ED2A0F58071090C01F00801F5 +:10EF70008840A0F58052120C02F004029040A0F5E7 +:10EF800080431B0C03F00203C1F10E01891AC91A58 +:10EF9000984001EBD030C11D28FA01F101F00101C8 +:10EFA00001EB400105EB810000F59872F96100204A +:10EFB00078613861012088406B68034204D11843AE +:10EFC00068601760BA611DE010681F290EBF00213C +:10EFD0004908C1F1190108FA01F100E01046426840 +:10EFE000D208D200424510D0CA0F00EB820202F1D3 +:10EFF000100349001A68002AF0D129698B4211D305 +:10F000001F60B861FF60BF600EE081682A699042AE +:10F0100028BF914206D3CF608760B960F8600020B6 +:10F02000B86101E004F036FC0AF10800BDE8F28F97 +:10F030002DE9FE4F0446A56904F5DE7001688D4296 +:10F0400003D3426851188D4202D380680028F5D15D +:10F05000416800680E18A6F12F0000F1080111F0B8 +:10F06000070105D000F10801C1F1080101F0070115 +:10F0700001EB000A05F11000824538BFAA460AF1EB +:10F08000080B0AF1180900270198A0F1280200993D +:10F090002046FFF727FE1BF0070018BF04F0FAFB1D +:10F0A0001B20CAF8040004F5DE70B0E80E10ABE8CF +:10F0B0000E10ABF110010098C4F8BC010198C4F81F +:10F0C000C0010298C4F8C801C4F8C41100E0814628 +:10F0D00009F104000721C9F804107F1C011DB14289 +:10F0E000F5D3022FB8BF04F0D5FBAA4500F09C80F1 +:10F0F000AAEB050041194A68520852004A6040F0E4 +:10F10000010169604051C708202F1FD204EBC701DD +:10F1100001F12806B046102838BF04F0BBFB0121DE +:10F1200001FA07F02168014202D10843206006E09D +:10F13000B068216988422CBF804604F0ABFBB56003 +:10F14000C8F80C50C5F80880EE606DE0010A08BFF1 +:10F15000002223D0B1F5803F28BF1F221ED2A1F587 +:10F160008072120C02F008029140A1F580531B0C32 +:10F1700003F004039940A1F58046360C06F0020620 +:10F18000C2F10E02D21A921BB14002EBD131CA1D5C +:10F1900020FA02F202F0010202EB410204EB8201CA +:10F1A00001F59873EA6100216961296101219140AB +:10F1B00066680E4205D141EA060060601D60AB61E1 +:10F1C0001DE019681F2A0EBF00225208C2F1190261 +:10F1D00000FA02F200E019464B68DB08DB008342CC +:10F1E00010D0D30F01EB830303F1100652003368F4 +:10F1F000002BF0D12069864211D33560A961ED6002 +:10F20000AD6011E088682269914228BF904206D320 +:10F21000C5608D60A860E9600020A86104E003B0CB +:10F22000BDE8F04F04F036BB03B0BDE8F08FF8B591 +:10F2300004460D46DFF8A866306808B9FFF738FDC8 +:10F2400004F02CFB01001CBF0A6811F1010F00F053 +:10F250008A80D4F8B0011018C4F8B001D4F8B431E1 +:10F26000834238BF0346C4F8B431A06958BB206953 +:10F2700008B1814200D22161C4F8BC11C4F8C02198 +:10F280000020C4F8C801306860624FF0FF3020628F +:10F290002046202300F12806F660B66008305B1E89 +:10F2A000F8D1DFF84006844208BF283A27D054F846 +:10F2B000040CC00814EBC00008385118091AA1F159 +:10F2C000280201461BE004F5DE70034600E09B685F +:10F2D000CBB15E681F68F619B142F8D11E7B3607C4 +:10F2E00011D4A669BE420ED3D3F804C06744BE420F +:10F2F00009D202EB0C005860E0681218A1692046A0 +:10F30000FFF7F0FC1EE02369994238BF21610346F4 +:10F31000501800E09B688BB11E688642FAD1187BBA +:10F3200000070BD4304619605E6892195A602B466C +:10F330000246204601B0BDE8F040EDE4002320463F +:10F34000FFF776FEE06885420DD2401BE060A169C0 +:10F350006A18A26140F00100506045F00300486067 +:10F3600001F10800F2BD0020F2BD2DE9F84F05467D +:10F370008B460024CBF100085FEA1B2023D0B0F5B8 +:10F38000803F28BF1F201ED2A0F58071090C01F01C +:10F3900008018840A0F58052120C02F0040290404F +:10F3A000A0F580431B0C03F00203C1F10E01891A82 +:10F3B000C91A984001EBD030C11D2BFA01F101F0C0 +:10F3C000010101EB400005EB8001D1F8301129B3B8 +:10F3D0001F280EBF00224208C2F119020BFA02F2E6 +:10F3E000002300E052004E68F608F600A6EB0B067C +:10F3F000464503D20C465FEA06080BD04E69D70F8C +:10F4000001EB87010969002E1CBF8E42334600299B +:10F41000E8D1194600293BD1002C3BD1012101FA4A +:10F4200000F04000414208436968084000F05781FD +:10F4300041420840411E080B00F0100021FA00F282 +:10F44000510901F00801CA40930803F00403DA40AF +:10F45000560806F00206F240C2F3400708181818D2 +:10F460003018384422FA07F1081805EB8000D0F86C +:10F4700030110DE001464868C008C000A0EB0B0049 +:10F4800040453CBF80460C4608690028F2D14969D6 +:10F490000029F0D1002C00F02281A868A0EB0B001D +:10F4A000804580F01C8128698442C0F016810BEBF6 +:10F4B00004060BEB08096068C008C000484518BF87 +:10F4C00004F0E8F9B44280F00881D4F818A0E768A5 +:10F4D000A74206D0A068296988421DD3C760B860DA +:10F4E0001CE004F11400076837B904F11000076844 +:10F4F000A7B101E00846076807F114010A68002A6D +:10F5000002BF07F110010A68002AF3D12969884275 +:10F5100002D30021016001E004F0BCF9BAF1000F50 +:10F5200038D0E06905EB800000F5987001688C42E6 +:10F5300009D10760380014D168680121E26991405F +:10F540008843686026E02869824508D3DAF810000D +:10F55000A04214BFCAF81470CAF8107001E004F099 +:10F5600099F9BFB12869874212D3C7F818A020695A +:10F5700030B12969884226BF3861876104F08AF971 +:10F58000606938B12969884202D37861876101E0F6 +:10F5900004F080F9B8F1100F09D249F0030060605F +:10F5A00009EB0400416841F00101416091E04BF03A +:10F5B0000300606048F00100706048F806804FEA80 +:10F5C000D80020281BD205EBC00101F12807B8465E +:10F5D000012101FA00F02968014202D108432860A4 +:10F5E00006E0B868296988422CBF804604F052F9C9 +:10F5F000BE60C8F80C60C6F80880F76069E05FEA92 +:10F60000182008BF002223D0B0F5803F28BF1F225A +:10F610001ED2A0F58071090C01F008018840A0F508 +:10F620008052120C02F004029040A0F580431B0CA3 +:10F6300003F00203C1F10E01891AC91A984001EBC7 +:10F64000D030C11D28FA01F101F0010101EB4002A7 +:10F6500005EB820000F59870F26100217161316163 +:10F66000012191406B680B4203D119436960066028 +:10F670001CE000681F2A0EBF00215108C1F11901CA +:10F6800008FA01F100E010464268D208D200424573 +:10F6900010D0CA0F00EB820202F1100349001A6871 +:10F6A000002AF0D129698B4211D31E60B061F66047 +:10F6B000B6600EE081682A69904228BF914206D365 +:10F6C000CE608660B160F0600020B06101E004F0BF +:10F6D000E1F804F10800BDE8F28F04F0DBF8FBE08C +:10F6E0002DE9F84F04468846606841420840411EB3 +:10F6F000080B00F01000C1404A0902F00802D14096 +:10F700008B0803F00403D9404D0805F00205E940D9 +:10F71000C1F340061018181828443018F140081892 +:10F7200004EB8000D0F8300106464168C908C900E2 +:10F73000A1EB080A09E008464168C908C900A1EB25 +:10F74000080151453CBF8A46064601690029F2D1AD +:10F7500040690028F0D120698642C0F0BB8008EBE8 +:10F76000060B08EB0A097068C008C000484518BFBE +:10F7700004F090F85E4580F0AD80B569F768B74257 +:10F7800006D0B068216988421DD3C760B8601CE00C +:10F7900006F11400076837B906F110000768A7B131 +:10F7A00001E00846076807F114010A68002A02BF51 +:10F7B00007F110010A68002AF3D12169884202D3B7 +:10F7C0000021016001E004F065F8002D34D0F069FB +:10F7D00004EB800000F5987001688E4209D1076043 +:10F7E000380011D160680121F2699140884360605E +:10F7F00022E02069854205D32869B04214BF6F61B9 +:10F800002F6101E004F046F8B7B12069874211D3B7 +:10F81000BD61306930B12169884226BF3861876196 +:10F8200004F038F8706938B12169884202D37861F0 +:10F83000876101E004F02EF8BAF1100F09D249F007 +:10F840000300706009EB0600416841F0010141606E +:10F850003CE048F0030070604AF00100CBF804007F +:10F860004AF80BA0D4F80880B8F1000F2AD0D4F8D9 +:10F8700014904FEAD805202D28BF04F00BF800950E +:10F8800004EBC50000F128052F46B8F1100F38BF72 +:10F8900004F000F80120009988402168014202D15B +:10F8A0000843206006E0A868216988422CBF07460B +:10F8B00003F0F0FFC5F80890C7F80C90C9F808707D +:10F8C000C9F80C50C4F808A0C4F814B006F1080038 +:10F8D000BDE8F28F03F0DEFF0020BDE8F28F0000EC +:10F8E000FCFC0020E8E700206859883C2DE9F04F37 +:10F8F00083B00546C046C046DFF87447F52D80F05A +:10F90000F4800B2D31BF102705F10B00C008C70094 +:10F91000FE082068F04010F0030F3DD0C04300F017 +:10F920000100861904EBC60000F12808D8F8085039 +:10F93000F7006868C008C000B84218BF03F0AAFF0B +:10F94000D5F80890454508BF03F0A4FF4D4508BF12 +:10F9500003F0A0FF6868C008C000B84218BF03F0F9 +:10F9600099FFC84505D120680121B1408843206036 +:10F9700008E02069814526BFC8F80890C9F80C80C6 +:10F9800003F088FF47F0030068607819416841F090 +:10F99000010141600835F0E0A168B94280F0B7800C +:10F9A000002800F09980012505FA06F14900B040D1 +:10F9B0004A421143084041420840411E080B00F0F2 +:10F9C0001000C1404A0902F00802D1408B0803F040 +:10F9D0000403D9404E0806F00206F140C1F3400886 +:10F9E000101818183018404421FA08F101EB0008EB +:10F9F00004EBC80000F12809D9F808604FEAC80AEA +:10FA00007068C008C000504518BF03F043FFD6F827 +:10FA100008B04E4508BF03F03DFF5E4508BF03F048 +:10FA200039FF7068C008C000504518BF03F032FFAE +:10FA3000D94505D1206805FA08F18843206008E01F +:10FA40002069834526BFC9F808B0CBF80C9003F0B5 +:10FA500021FFAAEB070847F003007060B819009077 +:10FA600048F001014160009848F80080A76867B33A +:10FA7000D4F814904FEAD70ABAF1200F28BF03F048 +:10FA800009FFCDF804A004EBCA0000F1280AD34610 +:10FA9000102F38BF03F0FEFE019805FA00F0216830 +:10FAA000014202D10843206007E0DAF8080021692A +:10FAB00088422CBF834603F0EDFECAF80890CBF8CD +:10FAC0000C90C9F808B0C9F80CA0C4F808800098D8 +:10FAD000606106F1080550E06068C0B33946204611 +:10FAE000FFF7FEFD050012D047E015F1400F28BFDB +:10FAF0004FF0FF370BD205F10B00C008C70060685C +:10FB000028B139462046FFF730FC050035D1A16801 +:10FB1000B9421CD3CA1B6069102A0AD33918616123 +:10FB2000A26042F001034B60525047F00301416074 +:10FB30000AE00022A260626141F0030242600918FB +:10FB40004A6842F001024A6000F1080515E0E068E9 +:10FB500087420DD2C01BE060A1697A18A26140F013 +:10FB60000100506047F00300486001F1080504E01F +:10FB700039462046FFF75BFB0546C046C04628468F +:10FB8000FFF752BB00B970472DE9F047A0F1080418 +:10FB9000C046C046DFF8D85428698442C0F060826D +:10FBA000616801F00302012A00F05A82CA084FEA94 +:10FBB000C20808EB0409CA072DD4226811F0030F0C +:10FBC00000F05082904451420C198442C0F04882A7 +:10FBD00069698C4200F0D4804FEAD20ABAF1200F52 +:10FBE0006FD2A668E768BC4208BF03F053FEB44278 +:10FBF00008BF03F04FFE6068C008C000B0EBCA0F3A +:10FC000018BF03F047FEBE4246D12868012101FA21 +:10FC10000AF1884328604C4580F02282D9F804001C +:10FC2000C10740F11D82810700F17381A9698945EF +:10FC300040F0BB80E8684044E860AC6140F00101FE +:10FC4000616069698C4202D100216961A960E9693A +:10FC5000814280F00782DFF81404006808B9FFF7DA +:10FC600027F8A869002800F0FD81E96829290BD34D +:10FC700005F5DE721368984203D35468E31898427E +:10FC800002D39268002AF5D1E869884280F0EA81BF +:10FC90004FF0FF30E861E5E105EBCA0000F1280113 +:10FCA0008E4202D029698E4208D32830874202D082 +:10FCB0002869874202D3F760BE60ACE703F0EAFD33 +:10FCC000A9E7A669E768A74205D0A16881421CD3CD +:10FCD000CF60B9601BE004F114010F6837B904F17B +:10FCE00010010F689FB101E011460F6807F114027F +:10FCF0001368002B02BF07F110021368002BF3D129 +:10FD0000814202D30020086001E003F0C3FD002E11 +:10FD10003FF481AFE06905EB800000F59870016861 +:10FD20008C4209D10760380011D168680121E2696D +:10FD30009140884368606EE72869864205D3306940 +:10FD4000A04214BF7761376101E003F0A3FD002FEB +:10FD50003FF461AF28698742B0D3BE61216929B100 +:10FD6000814226BF39618F6103F094FD60690028EC +:10FD70003FF451AF29698842A0D3786187614AE78F +:10FD800099F8040000F0030003287FF444AFC5F89D +:10FD90000880D9F8040040084000C9F8040048F081 +:10FDA0000100606048F804805CE16969894508D118 +:10FDB000A8684044A8606C6140F001016160005196 +:10FDC00050E1C008C00080444FEAD00ABAF1200FC9 +:10FDD0002FD2D9F80860D9F80C70B94508BF03F0E4 +:10FDE00059FDB14508BF03F055FDD9F80400C0081E +:10FDF000C000B0EBCA0F18BF03F04CFDBE4206D1E5 +:10FE00002868012101FA0AF18843286076E005EBB1 +:10FE1000CA0000F128018E4202D029698E426BD3BC +:10FE20002830874202D02869874265D3F760BE60D8 +:10FE300064E0D9F81860D9F80C704F4507D0D9F8AC +:10FE40000800296988421DD3C760B8601CE009F129 +:10FE50001400076837B909F110000768A7B101E07D +:10FE60000846076807F114010A68002A02BF07F173 +:10FE700010010A68002AF3D12969884202D30021BF +:10FE8000016001E003F006FD002E37D0D9F81C0018 +:10FE900005EB800000F59870016889450AD107607C +:10FEA000380012D168680121D9F81C20914088439C +:10FEB000686023E02869864205D33069484514BF4D +:10FEC0007761376101E003F0E5FCBFB12869874243 +:10FED00012D3BE61D9F8101029B1814226BF396111 +:10FEE0008F6103F0D7FCD9F8140038B12969884232 +:10FEF00002D37861876101E003F0CCFC48F0010097 +:10FF0000606048F80480686984420BD1C5F80880B5 +:10FF1000A8E040084000C9F8040048F00100606013 +:10FF200048F804804FEAD807202F20D205EBC700FD +:10FF300000F128094E46B8F1100F38BF03F0AAFCB3 +:10FF40000120B8402968014202D10843286007E037 +:10FF5000D9F80800296988422CBF064603F09AFCAC +:10FF6000C9F80840F460A660C4F80C907AE05FEA33 +:10FF7000182008BF002123D0B0F5803F28BF1F21E3 +:10FF80001ED2A0F58071090C01F008018840A0F58F +:10FF90008052120C02F004029040A0F580431B0C2A +:10FFA00003F00203C1F10E01891AC91A984001EB4E +:10FFB000D030C11D28FA01F101F0010101EB40012F +:10FFC00005EB810000F59872E1610020606120611D +:10FFD000012088406B68034204D1184368601460B4 +:10FFE000A2611DE010681F290EBF00214908C1F160 +:10FFF000190108FA01F100E010464268D208D20067 :020000022000DC -:10000000E460A4600EE081682A69904228BF9142B2 -:1000100006D3CC608460A160E0600020A06101E0B4 -:1000200003F028FC286A401E28620BD1D5F8C401D1 -:1000300000E080680028FCD14FF0FF30286201E02A -:1000400003F018FCC046C046BDE8F087FCFC002069 -:10005000E8E70020002848BF40427047F4464900C6 -:1000600006D200F011F809420DD5C81741086047C3 -:1000700000F00AF807D04942404271F1000102D471 -:1000800000205FF0004160474A0DA2F580621E3AF1 -:100090000ADC5242202A18DA890241F0004141EA82 -:1000A00050500021D0407047D2F1200210D4890274 -:1000B00041F0004141EA5051C002D04061FA02F3E0 -:1000C0005840D14080EA010070470020002170476D -:1000D000D01701007047000090420CD141EA030C98 -:1000E00050EA4C0C07D0994205D14FF4001C1CEB90 -:1000F000410F38BF894270474C48C168002903D579 -:100100004B4901604B49016070474B48016841F021 -:1001100000410160704770B50446002600290BD0ED -:10012000012902D14FF4807606E0022902D14FF472 -:10013000007601E04FF4407600F082F809281ED1E5 -:100140003D4D286820F440702860286830432860BE -:10015000286820F0F8002860286844F0020108436D -:100160002860286840F48030286000F069F8296829 -:1001700021F002012960296821F0F801296070BD91 -:1001800070B504460D4600F05BF8092813D12A4EDD -:10019000306820F440703060306840F400703060A7 -:1001A000306840F001003060256000F049F83168A7 -:1001B00049084900316070BD70B505460E4600F033 -:1001C0003FF8092811D11C4C206820F440702060B1 -:1001D00020682060206840F0010020602E7000F050 -:1001E0002FF8216849084900216070BD1349086053 -:1001F0007047092011490A68D20301D501207047D0 -:100200000A68D20601D5062070470A68D20501D5D2 -:10021000022070470A6812F0EF0F01D007207047E4 -:100220000968890700D5082070470000043C024097 -:1002300023016745AB89EFCD103C02400C3C0240E6 -:1002400080B509208DF80000FFF7D3FF8DF800007E -:1002500003E0FFF7CEFF8DF800009DF800000128B5 -:10026000F7D09DF8000002BD0278C9B28A421AB1E7 -:100270001CBF10F8012FF9E718BF002070470000DD -:10028000C9B2830706D0521E22D310F8013B99420F -:10029000F7D11FE0083A13D302F1040241EA012129 -:1002A00041EA014150F8043B121F21BF4B40A3F12A -:1002B000013C2CEA030C1CF0803FF3D0C9B2001FB4 -:1002C000083210F8013B521E28BF91EA030FF8D8FC -:1002D00018BF0120401E704730B4436803F000424D -:1002E00001211B031B0B436004BF0368002B08D1D3 -:1002F0000DE00368DD0F45EA440444605B000360E1 -:10030000491E4468E302F4D523031B0B4360436892 -:100310001A434260084630BC7047000070B504467E -:1003200040F2FF726068C0F30A500D46904207D158 -:100330006068000304BF2068002817D0022070BD49 -:1003400020B92046FFF7C8FF012867DA012D0FDB2F -:1003500040F2FF71091A8D420AD3606800284CBF31 -:100360009FED2F0B9FED300B84ED000B012070BD36 -:100370004142A942616806DA6FF31E51401941EA11 -:100380000050606041E0401E63680122451962F33D -:100390001F5305F1350001F000416360352803D398 -:1003A00061600020206070BD002215F11F0F04DA8B -:1003B00022682360002020356060684213D0521EFE -:1003C00025689241C0F12003D2439D4055EAD27284 -:1003D00025686668C54006FA03F32B43236063680B -:1003E00023FA00F06060606808436060B2F1004F7B -:1003F00003D80DD12078C0070AD52068401C2060A2 -:10040000206828B96068401C60604FF0FF3070BD04 -:100410006068884204BF20680028F6D1002070BDC3 -:10042000000000000000F0FF000000000000F07F6E -:1004300091FBF2F303FB1211C0E900317047000099 -:1004400000B585B002460FF2140100A803F02AFAA5 -:1004500000A8FAF75CFA05B000BD00004F4525641E -:10046000000000004FEAF17CBCF1E04C2CBFBCF571 -:10047000001F11E05FEA4C0C34BFBCF17F5F2EE03F -:100480005FEA9C0C4FEA0C1C4FEA3C0CC10071F176 -:1004900000414CEB50707047C90241EA5051C00214 -:1004A00018BF41F0010141F000414FEA6C50C0F12A -:1004B0000900212810D240EACC7CCCF1200C11FAA2 -:1004C0000CF070F10040CCF1200C21FA0CF00CF093 -:1004D000004C40EB0C0070474FEACC70704749006D -:1004E00011F5001F04D84FEACC10FF30C00570474B -:1004F000C817704703F0F0B980B5F0F725F8C06E63 -:10050000FBF7EBFF0348007802BD02490870704713 -:10051000000000006AFE002070B50D4E0546B06870 -:1005200084B00C46029501950390F2F73CFE2868D2 -:10053000009000A82860009808B100A94160B06848 -:1005400000A981600474F2F73EFF04B070BD00BFE3 -:100550002438002030B483680469027DE318C4683D -:10056000A34228BF1B1B534311F8015B44681D5570 -:100570005B1C521EF8D18168491C8160012904BFAF -:1005800030BC03F061B919484078002804BF30BC82 -:10059000F2F703BE30BC704710B50446207D2269D7 -:1005A00042436368D35C521C401E01F8013BF8D102 -:1005B0002069401C2061E168884224BF002020613E -:1005C000A068421EA260094A8842527807D10AB93F -:1005D000F2F7E3FD2046BDE8104003F035B9002AEC -:1005E00004BFBDE81040F2F7D8BD10BD243800208C -:1005F00080B500F009F800204D49024601E0425460 -:10060000401C0228FBDB01BD10B44A4800210180D8 -:100610000846494C0CE001EB810200EB80031B19FA -:10062000D21800231371491C49B20129F3DB401C85 -:10063000142801DA0021F7E710BC704700EB8000B6 -:100640003D49405E704700EB80003B494018B0F9DF -:100650000200704710B54FF0FF340146012902D067 -:100660000C2902D003E0002405E0012403E00FF28E -:10067000D000EFF752FD204610BD70B504460125AD -:10068000FFF7E8FF06462046012802D00C2803D0D9 -:1006900005E000F043F808E0FFF7B6FF05E021466B -:1006A0000FF2AC00EFF739FD0025002E02D42048F0 -:1006B00000213154284670BD10B54FF0FF34C0B250 -:1006C000082801D1002405E040B201460FF2900055 -:1006D000EFF723FD204610BDF3B5164C25882E46B6 -:1006E000701C152801DB0020F6BD00270DE007EB8C -:1006F000870106EB8600104A8018081800AA89189E -:100700000522F4F7CDFA7F1C7FB2012FEFDB681CC6 -:1007100020800120F6BD0748008870470748002167 -:10072000818001704170012181700846704700008E -:10073000F47B0020667B0020987400205C3700204A -:100740004558205044524D4D20433120256400002F -:100750004558205044524D4D20433320256400001D -:100760004558205044524D4D20433220256400000E -:100770000FB480B503F0BAF8D648052141700021C6 -:10078000017001714171D44802A92022F4F798FA4E -:10079000092200210846F4F7CBF8022801D10220F3 -:1007A00000E0012002BC5DF814FB4CE110B5C94C1F -:1007B00094F9010005280AD100F0E4F8002822D0BD -:1007C0000420607003F092F8BDE81040FCE00428BB -:1007D00019D100F0B5F8002808D0032020700520BA -:1007E000607003F083F8BDE810402CE100F055F98B -:1007F000002808D0022020700520607003F076F8F1 -:10080000BDE810401FE1012010BD80B5F4F78EF85F -:10081000B0498860B149C0F8781100F5BC70B049A2 -:100820004160B04981600FF21101C1600FF2950182 -:100830000161012002BD00000020A6490246CA70E5 -:100840008A6892F86921002A0FD091F90020002AC5 -:1008500002D00220C870012091F90420012A04D19D -:10086000C87840F00400C870012070479948002102 -:100870000170C17001710120704710B58AB0044643 -:1008800000A804F02DFD0198A04204D3001BC0B2C3 -:1008900000EE100A04E08038001BC0B200EE100A1F -:1008A000B8EE400ADDED060A20EE200A10EE100A2E -:1008B000F0F7E6FF41EC100B0AB010BD85480121AE -:1008C0000171704778B4834A92F903309C0716D5BA -:1008D00030240D7814FB050501262E700D7814FBCD -:1008E00005056E700D7814FB05050926AE700D78B0 -:1008F00014FB05041578E5700C78641C0C705B071C -:100900001CD530240B7814FB030301251D700B78D4 -:1009100014FB030303255D700B7814FB0303092507 -:100920009D700B7814FB03030125DD700B7814FB1D -:100930000300527802710878401C087071BC95E77A -:1009400030B58DB0002420468DF8000001A8F4F7E2 -:1009500055F84FF47A70604D00ABB5F8051000FB08 -:1009600001F2B5F803104143B5F80150684301ADF9 -:1009700095EC030A02F0FCFF022800D10124204676 -:100980000DB030BD30B58DB0002420468DF800008C -:1009900001A8F4F733F84FF47A704F4D00ABB5F877 -:1009A000051000FB01F2B5F803104143B5F8015002 -:1009B000684301AD95EC030A02F0DAFF012800D18B -:1009C000012420460DB030BD30B59DB0012400207B -:1009D000ADF82A0001900A208DF8080000208DF85B -:1009E00009008DF80A003B4D95F90500002827D134 -:1009F000B4208DF82D0046208DF82E0020468DF86D -:100A00002F0000208DF80000032001900DF1090057 -:100A10000BA92022F4F744F90A208DF808000020E1 -:100A2000ADF82A0000A8F4F735F8002801D1022417 -:100A300006E013A804F054FC1498A87020466871CE -:100A400020461DB030BD30B58BB00124214D95F945 -:100A5000050001281ED10020ADF82A0001900A20CF -:100A60008DF8080000208DF809008DF80A00204656 -:100A70008DF80000032001900A208DF80800002066 -:100A8000ADF82A0000A8F4F705F8002800D10324E7 -:100A90000020687120460BB030BD10B52DED028BE3 -:100AA00000240C488078FFF7E8FEB0EE408AF0EEB4 -:100AB000608A0948C079F1F737F802460B4651ECD5 -:100AC000180BF1F797FA00D801242046BDEC028BF1 -:100AD00010BD0000D0380020D87A0020710702082D -:100AE000AB070208AD070208182200210248F1F7FF -:100AF000B6BA014870470000CCFC002080B5FFF773 -:100B0000F8FF684908600FF2910101600FF2A5013A -:100B100041600FF2A50181600FF2A101C1600FF2E7 -:100B20000D0101610FF23901416101BD30B583B0A2 -:100B300004465D4D207869698847002009E004EB90 -:100B400040014A78897841EA022100AA22F810106F -:100B5000401C0328F3DB00A8E968884700203EBD5D -:100B600030B583B00446504D28698047207000A8F6 -:100B7000A968884700200AE004EB400100AA32F986 -:100B800010301B124B7032F810208A70401C032862 -:100B9000F2DB00203EBD000080B505F079FD05F0D8 -:100BA00094FE41480068804740480068BDE8024024 -:100BB00000470000704700007047000073B52DED3E -:100BC000048B8EB0B0EE408AF0EE608AB0EE419AAF -:100BD000144600200090BDF84800ADF80C0003A8B2 -:100BE000BDF84A104180BDF84C1081802E4D00AAFE -:100BF00001A96B689847002001AE0FE036F910108C -:100C000000EE101AB8EEC00ADFED250A80EE200AC9 -:100C10000BA901EB800181ED000A401C0328EDDBEC -:100C2000B0EE480A8DED080A08A8B0EE680A80ED1B -:100C3000010AB0EE490A80ED020A05AA0BA9AB69C8 -:100C40009847009820700598E06005A84168A16069 -:100C500080686060B2EE040ABDF9040000EE900AFC -:100C6000F8EEE00AC0EE800AC4ED040AB6F902000C -:100C700000EE900AF8EEE00AC0EE800AC4ED050A24 -:100C8000B6F9040000EE900AF8EEE00A80EE800A61 -:100C900084ED060A00200EB0BDEC048B76BD00008A -:100CA00000401C46ECFD0020B0FB002020FE002090 -:100CB0002DE9F04104460D461646CD4F386B40F401 -:100CC00080503863DFF82C83CB48C8F80400CB4849 -:100CD000C8F808004FF47A50A8F800000120A8F8DE -:100CE0000E00A8F80C00404605F008FE00F0ADF834 -:100CF000C046C046B86820F40000B860386840F0CC -:100D00008060386038680001FCD5600000F004F9AC -:100D1000C8F83450C8F8386000F003F80020BDE887 -:100D2000F08130B585B001210220F8F7FBFC1D20D1 -:100D30008DF800000F208DF8010000208DF80200D2 -:100D400001208DF8030000A8F9F7C9FEAC4800683F -:100D5000AC49B0FBF1F0441E40F2E73002900020B5 -:100D60000190ADF80C008DF80E00A74D01A92846A2 -:100D700005F0C4FF0122214689B2284601858282FE -:100D800001221146284605F0F3FF05B030BD80B5BD -:100D9000974A13681B010AD4936823F400039360F5 -:100DA000136843F08063136013681B01FCD5974AF6 -:100DB00050609748016101219648F8F795FF01219D -:100DC0009548F9F75AF8002002BD10B58E4C2088DE -:100DD000C00709D40FF25020EFF79FF901212046F8 -:100DE000BDE8104005F0AEBF10BD80B500218948B8 -:100DF000F8F77AFF7E48016821F0806101600021E8 -:100E00008548F9F73AF8002002BD10B57E4C2088DD -:100E1000C00709D50FF21820EFF77FF9002120460F -:100E2000BDE8104005F08EBF10BD30B4002308E0CF -:100E300031F81340250245EA142420F813405B1CC6 -:100E40009BB29342F4DB30BC70471CB501210220F9 -:100E5000F8F75DFC01210220F8F759FC02208DF81B -:100E600004000020ADF8060002208DF805004FF4C4 -:100E700000500090694C00A92046F8F71BFD0522A0 -:100E80000D212046F8F764FD4FF40040009000A9C2 -:100E90002046F8F70FFD05220F212046F8F758FDF0 -:100EA00013BD30B5A1B05A4C5B48406880B2C0F564 -:100EB000A0706081554D29E0A08A05EB400205EB4A -:100EC0004101B1F84818A2F8C817A189491CA181AD -:100ED000401CA082A189B1F5A07F01D30021A1818E -:100EE00080B2402812D3402205F5F96100A8FFF72F -:100EF0009CFF404B1E22696800A805F079FD4FF465 -:100F0000F071102005F04AFF0020A082A1896089BD -:100F10008842D1D121B030BD30B593B00546012112 -:100F20004FF48040F8F7FEFB3A4C2046F8F718FEE5 -:100F300002952020ADF802000020ADF80400ADF8C5 -:100F40000C004FF44070ADF800000020ADF8060032 -:100F500000A92046F8F74FFE01214FF40010F8F7E2 -:100F6000D6FB2D4D00212846F8F787FF2846F8F7D5 -:100F7000D9FE002004902A4805902A4806900020B7 -:100F800007904FF4A0700890002009904FF4806003 -:100F90000A904FF400600B904FF400500C904FF407 -:100FA00080700D904FF400300E9000200F900320C1 -:100FB000109000201190129004A92846F8F736FFEF -:100FC000012211462046F8F79BFE13B030BD10B544 -:100FD0000D4C0121204605F0D5FE002806D0012148 -:100FE0002046C9430182BDE810405AE710BD000009 -:100FF00000380240E83700200000FA450000204198 -:10100000A438002040420F00000400405C5900203A -:10101000507B00200038004058600240000402402D -:101020000C380040A461002054494D332D45000088 -:1010300054494D332D44000030B583B0002000905A -:1010400001A805F005FF314C982200212046F1F758 -:1010500006F82F49A1642F49E1640621A4F858102D -:10106000FA21A4F85A100021A4F850100321A4F882 -:101070005C1000A905F0F1FE009841F27171884200 -:1010800001D3FE203EBD244D05F57170C4F88C00DF -:101090004FF4F0702082281DE060002060616082C3 -:1010A00020602083204606F051F80020286020466A -:1010B00005F0EEFE3EBD38B5144CD4F88C10002976 -:1010C00005D10FF25C00EFF728F80D2032BD214664 -:1010D00005F0FCFE054610480168002904D00FF217 -:1010E0004C00EFF71AF80D25002D08D1B4F8680070 -:1010F000002800D13125204605F0CAFE04E0FD2D70 -:1011000002D0204605F0C4FE284632BD50F600202D -:101110000040000800B0000894AF00200020704795 -:10112000535046204E554C4C00000000734D4D204E -:101130002564000030B5104C0546207881B0401C75 -:101140002070F2F730F8A0684169294205D1856125 -:10115000082101742046F2F710F8A06800214569C3 -:1011600041612078401E2070607808B9F2F715F8C8 -:10117000284601B030BD00BF243800207047000071 -:10118000DFF8F4090178DFF8F42902EB810282ED3F -:10119000000ADFF8EC2902EB8102C2ED000ADFF859 -:1011A000E42902EB810282ED001A4278202A01D262 -:1011B000521C4270491C0170C9B2202901D1002182 -:1011C000017070472DE9F0412DED028B0025DFF80D -:1011D000A8496078022801D2284679E02E4601E02D -:1011E0000025761C607886426DDA2078002803D1CD -:1011F0001F274FF01E0805E0471EB7F1010801D573 -:1012000008F12008DFF8740900EB870191ED000A6E -:1012100000EB8800D0ED000A30EE600A10EE100AF4 -:10122000F0F72EFB21F00041FFF71CF908EE100A41 -:10123000DFF84C0900EB870191ED000A00EB880014 -:10124000D0ED000A30EE600A10EE100AF0F718FB3D -:1012500021F00041FFF706F908EE900ADFF82409B3 -:1012600000EB870191ED000A00EB8800D0ED000A49 -:1012700030EE600A10EE100AF0F702FB21F0004198 -:10128000FFF7F0F800EE100ADFEDC10AB4EE608A55 -:10129000F1EE10FA01DB012000E00020F4EE608A9C -:1012A000F1EE10FA01DB012100E00021B4EE600A4A -:1012B000F1EE10FA01DB012200E0002208431043A6 -:1012C0008ED06D1C8DE7EDB2152D8041C043C00F4F -:1012D000BDEC028BBDE8F08130B52DED028B87B0FF -:1012E000B0EE618A0546DFF8A84884ED000AF0EE0A -:1012F000601AC4ED011AB0EE412A84ED022AD4ED41 -:10130000192AF4EE402AF1EE10FA1ED1D4ED1A2A71 -:10131000F4EE612AF1EE10FA17D1D4ED1B2AF4EEA7 -:10132000422AF1EE10FA10D1606F401C6067152858 -:1013300013D3606EF0F7A4FA02460B460FF6AC002A -:10134000EEF7EBFE0020606707E084ED190AC4EDBC -:101350001A1A84ED1B2A0020606794EC030AFFF739 -:101360000FFF207B02283BD1284680B2B0EE480A0E -:1013700006F0D0F8294689B2204603F0DFFBDFF8FB -:101380000858284603F0ACFF286801280FD102F066 -:101390000EFE284603F0A4FF28222946DFF838086D -:1013A000F0F757FE0FF65000EEF7B7FE24E029469F -:1013B00084B068462822F3F783FC0FBC00F0F6F8EF -:1013C00000F042FA002817D0E889002814D10FF65F -:1013D0003400EEF7A2FE0120207303F095FF0BE02E -:1013E000012809D1FFF7EEFE002805D00FF61C00FA -:1013F000EEF793FE02202073002007B0BDEC028BB5 -:1014000030BDDFF88C07007B7047002806D0DFF87E -:101410006817D1F880105422F3F752BC704710B50A -:10142000002815D1DFF86C4700EE101AB8EE400A1C -:1014300084ED010A204603F07BFF6068F0F720FA94 -:1014400002460B460FF2CC70BDE81040EEF765BEC9 -:10145000012815D1DFF83C4700EE101AB8EE400A1B -:1014600084ED000A204603F063FF2068F0F708FAD5 -:1014700002460B460FF2AC70BDE81040EEF74DBED1 -:1014800002280DD1DFF80C472181204603F050FFE0 -:10149000B4F908100FF29C70BDE81040EEF73DBEA5 -:1014A00010BD2DE9F047074688469146DFF8DC4637 -:1014B000542200212046F0F7D2FDDFF8BC5605F19A -:1014C0008406542200213046F0F7C9FD5422002141 -:1014D00005F12C00F0F7C3FD282221463046F0F735 -:1014E000B8FDC5F88060DFF8A8665422002106F137 -:1014F0001000F0F7B4FDDFF89CA60C220021504646 -:10150000F0F7ADFD28220021DFF87C06F0F7A7FDFB -:1015100028220021281DF0F7A2FD00EE107AB8EE77 -:10152000400A8AED010A00EE108AB8EE400A8AED00 -:10153000000AAAF808904B46424639460FF204705A -:10154000EEF7EBFD02F06CFC504603F0F1FE04F107 -:10155000440042F21071C1800181002161640120C8 -:101560003073084628706870306705F08FFF0020E0 -:10157000A8700120E8700FF2DC60EEF7CEFD0020CD -:101580007066B066F06630607060B060BDE8F0878D -:101590000100803F10B596B003F0ACFE044600A8F1 -:1015A000FFF733FF0098001916B010BD0FB430B527 -:1015B0002DED028B89B0DFF8C045A068814205D1CE -:1015C000BDF84620638A9A4200F097800D1A02D532 -:1015D000DFF8000645199DED170AD4ED0A0A70EEF2 -:1015E000608AF5EE408AF1EE10FA03D59FED940A79 -:1015F00078EE808A9DED150AD4ED080A30EE608AF7 -:10160000B5EE408AF1EE10FA03D59FED8D0A38EE63 -:10161000008A9DED160A06F0FFF8B0EE401AE07859 -:10162000012802D0022838D048E004F12C000790AD -:101630000EA983B068462822F3F742FB0EBC9FED4B -:10164000811AF0EE480AB0EE680A284600F05CF80D -:10165000A0782818A070C0B203282FD3DFF82C057B -:1016600007900EA983B068462822F3F729FB0EBC29 -:101670009FED741AD4ED180A94ED130AE06A00F095 -:1016800043F8A078401CA0705422002104F12C00E3 -:10169000F0F7E5FC0220E07010E0DFF8F0040790BE -:1016A0000EA983B068462822F3F70AFB0EBCF0EEC1 -:1016B000480AB0EE680A284600F026F8BDF8460051 -:1016C000002809D15422002104F12C00F0F7C7FCB6 -:1016D0000020A0700120E07028220EA9201DF0F744 -:1016E000B8FCDFF8A814C4F8801004F18405542273 -:1016F0002846F0F7AEFCC4F8805009B0BDEC028B70 -:1017000030BC5DF814FB00000EB470B52DED048BF9 -:1017100089B0B0EE409AB0EE608AF0EE418A1B9D2F -:1017200005F12004BDF8526026852946B0EE680A0E -:1017300000F0C3F8DFF85804006F00280ED195EDD3 -:10174000080A30EE090A85ED080A00F003FA85ED73 -:10175000080AE684BDF85000A08437E0DFF83404BE -:1017600006AA0AC80AC20368136011A984B06846B1 -:101770002822F3F7A5FA0FBCB0EE680A00F036F99C -:10178000D5ED080A30EE800A85ED080A00F0E2F98E -:1017900085ED080AF5EE408AF1EE10FA0BDD032E16 -:1017A00003D10620E084A08410E0042E0ED108208E -:1017B000E084A0840AE0032E03D10720E084A08403 -:1017C00004E0042E02D10920E084A084179820614F -:1017D00094ED050A30EE080A84ED050A00F0AEF932 -:1017E00084ED050A1998F0F74BF8DFF8AC23DFF821 -:1017F000AC33F0F77DF8FEF735FE00EE100A84ED0D -:10180000060ADFED790AB4EE600AF1EE10FA02DBA7 -:10181000DFF8C803A06113982062E08C002801D192 -:10182000002020620020E06115982063BDF85A0076 -:10183000A08509B0BDEC048B70BC5DF810FB000006 -:10184000002474490000000080B503F07FFD40F6DD -:10185000B93188428041C043C00F02BD38B50D4642 -:1018600005F11004218F032912D1B5EE400AF1EEE3 -:1018700010FA06DD29694018286100F077F928611F -:1018800031BD61684018606000F070F9606031BD82 -:10189000042911D1B5EE400AF1EE10FA06DDA16877 -:1018A0004018A06000F062F9A06031BDE168401806 -:1018B000E06000F05BF9E06031BD70B52DED028BAA -:1018C0000546B0EE408A0C4620682818206000F0DB -:1018D0004DF9206018EE100AEFF7D2FF21F0004119 -:1018E00000221346F0F786FB43D2A94EF069052883 -:1018F00030D2316F00292DD104281CD1E168401865 -:10190000E06000F033F9E0602146B0EE480AF0698B -:10191000FFF7A4FFE0682818E06000F027F9E06016 -:101920002146B0EE480A2846FFF798FF00F04BF832 -:10193000012030670AE0B4F84600042803D1B069FA -:101940002818B06102E0706928187061F0692818E1 -:10195000F06135E0E0682818E06000F007F9E06029 -:101960002146B0EE480A2846BDEC028BBDE8704027 -:1019700074E7B4F84600032802D0042807D00DE02D -:1019800060682818606000F0F1F860600CE0A06802 -:101990002818A06000F0EAF8A06005E06068281848 -:1019A000606000F0E3F86060794EF069052803D2CA -:1019B000002801D000F00DF800F005F80020306795 -:1019C000BDEC028B70BD7248002141618161C16133 -:1019D00070476F486D494A6843699A184A608A6837 -:1019E00080698018886070470100C8410FB430B525 -:1019F0002DED088BB0EE408ADFED698A9FED689A85 -:101A0000DDED139A19EE900AEFF73AFF41EC1A0B4D -:101A10009FED64BBBDF83A00042853EC1A2B6348D1 -:101A200024D16349EFF764FF53EC1B2BF0F78AF8DE -:101A3000FEF718FD0BEE100AB5EE408AF1EE10FA33 -:101A400038D453EC1A2B5D485A49EFF751FF04463E -:101A50000D4618EE100AEFF713FF22462B46EFF75C -:101A600047FFFEF7FFFC09EE100A23E05249EFF7AB -:101A70003FFF53EC1B2BF0F765F8FEF7F3FC0BEE82 -:101A8000100AB5EE408AF1EE10FA13D453EC1A2B7B -:101A90004A484B49EFF72CFF04460D4618EE100A52 -:101AA000EFF7EEFE22462B46EFF722FFFEF7DAFCB9 -:101AB00009EE100AF5EE409AF1EE10FA18D09DEDFD -:101AC0000D0AB5EE400AF1EE10FA11D010EE100A30 -:101AD000EFF7D6FE00223B4BEFF70AFF02460B461C -:101AE00000203949F0F762F9FEF7BCFC08EE900AD5 -:101AF0003BEE090A10EE100AEFF7C2FE334A384BEC -:101B0000EFF7F6FE04460D461598EFF7B9FE2246AC -:101B10002B46EFF7EDFE04460D4618EE900AEFF760 -:101B2000AFFE22462B46EFF7E3FEFEF79BFC00EEEE -:101B3000100ABDEC088B30BC5DF814FBDFED240A05 -:101B4000B4EE600AF1EE10FA03DBDFED260A30EEA8 -:101B5000200A7047DFED1E0AB4EE600AF1EE10FABB -:101B600003DBDFED200A30EE200A70471949884276 -:101B700001D31D4908187047CC6F0020B4710020B4 -:101B800034720020B47200206C7A0020BC780020EF -:101B900034730020847B0020B81E85EB51B8AE3F23 -:101BA000000000000000000000000C409A99999984 -:101BB0009999C93FCCCCEC3F9999B93FCDCCCCCCCD -:101BC000CCCCFC3F00004E400000F03F7B14AE4701 -:101BD0000124744981969800D06F00200000C8410C -:101BE000E17A743F002474C9806967FF5044204E35 -:101BF00041432025660000005044202D3E204F46E2 -:101C0000520000005044202D3E2057005044202D0B -:101C10003E20520050443A536574486569676874C1 -:101C20002025660050443A536574576569676874A7 -:101C30002025660050443A53657447656E646572AA -:101C40002025640050443A20256420256420256422 -:101C50000000000050443A496E504654313030384C -:101C60005F3100000FB400B593B001208DF8030080 -:101C7000AA208DF801003C208DF802000020ADF86C -:101C80004A000A208DF828000DF1290000A9202221 -:101C9000F3F706F800208DF820000320099008A82B -:101CA000F2F7F8FE012013B05DF814FB00B58BB01D -:101CB0000020ADF82A000A208DF8080000208DF8D9 -:101CC00009008DF80A0001208DF800000320019022 -:101CD00000A8F2F7DFFE01200BB000BD38B52148A7 -:101CE000046B00F037F8012810D101208DF80000B6 -:101CF00004F10C056A7D00A9E868E368C018F0F7F4 -:101D0000A8F90120A874002000F021F8012032BDBC -:101D100080B5F2F70BFE144908601449C0F8D013DF -:101D200000F5747012494160124981600FF20D0193 -:101D3000C1600FF24D010161012002BD0A48006837 -:101D400090F8C103002801D10020704705E00A493E -:101D500008707047084800787047084890F90000FC -:101D6000704700000000002038FE0020651C0208BB -:101D7000AD1C0208DD1C020866FE002065FE002086 -:101D800018B430220B7812FB030301241C700B786B -:101D900012FB03035C700B7812FB030318249C7086 -:101DA0000B7812FB03000022C2700878401C0870F8 -:101DB00011BC05F0BCBF00000FB400B593B001200A -:101DC0008DF80300AA208DF801003C208DF8020058 -:101DD0000020ADF84A000A208DF828000DF12900F6 -:101DE00000A92022F2F75CFF00208DF820000320DC -:101DF000099008A8F2F74EFE012013B05DF814FB1D -:101E000000B58BB00020ADF82A000A208DF808003C -:101E100000208DF809008DF80A0001208DF80000DF -:101E20000320019000A8F2F735FE01200BB000BDA1 -:101E300038B5002000902648446C00F039F801289D -:101E400012D1FBF76CFF009004F10C056A7D00A92C -:101E5000E868E368C018F0F7FCF80120A8740020D7 -:101E600000F023F8FBF75FFF012032BD80B5F2F7E9 -:101E70005DFD184908601849C0F8701400F2704000 -:101E800016494160164981600FF20D01C1600FF2E1 -:101E90005D010161012002BD0E48006890F86104F7 -:101EA000002801D1002070470BE00E4908707047F0 -:101EB0000C480078704780B5002000F006F801203B -:101EC00002BD094890F90000704707490870704743 -:101ED0000000002034FE0020B91D0208011E020887 -:101EE000311E020864FE002063FE002018B4302278 -:101EF0000B7812FB030301241C700B7812FB030305 -:101F00005C700B7812FB03031C249C700B7812FB93 -:101F100003000022C2700878401C087011BCCAE798 -:101F200038B50446AE4D00202865052068650020C0 -:101F300028646864A864E8649FEDAA0B85ED040B2F -:101F400085ED060B85ED080B85ED0A0B85ED0C0B79 -:101F500085ED0E0B6866A86605F16C00A8654FF468 -:101F6000B6720021F0F77BF80C2200212846F0F72A -:101F700076F894ED020AB1EE401A94ED010AF1EE02 -:101F8000400A94ED000A05F1440105F1400005F016 -:101F9000D1FF012032BD00002DE9F04D2DED068B63 -:101FA0000E468F4F0168396090ED010AB1EE400A8C -:101FB00087ED010A90ED020AB1EE400A87ED020AB0 -:101FC0001E223946B86D06F0BEF9796D4A1EB86D0D -:101FD0003B6D934227DA1E22591C09B206F0DCF948 -:101FE00010EE100AEFF74CFCC7E90A011E22386D0B -:101FF000411C09B2B86D06F0EDF910EE100AEFF7CA -:102000003FFCC7E90C011E22386D411C09B2B86DB6 -:1020100006F0FEF910EE100AEFF732FCC7E90E01E8 -:10202000386D401C72E023D11E2209B206F0B4F9CB -:1020300010EE100AEFF724FCC7E90A011E22796DA1 -:1020400009B2B86D06F0C6F910EE100AEFF718FCE9 -:10205000C7E90C011E22796D09B2B86D06F0D8F9F6 -:1020600010EE100AEFF70CFCC7E90E01786D4DE099 -:102070001E2209B206F080F9F8651E220021B86D13 -:1020800006F07AF98046C7F86080FC6D2068EFF7AB -:10209000F7FB02460B46D7E90A01EFF7C7FD824678 -:1020A0008B46D8F80000EFF7EBFB52465B46EFF7A4 -:1020B00049FDC7E90A016068EFF7E2FB02460B46FB -:1020C000D7E90C01EFF7B2FD82468B46D8F8040041 -:1020D000EFF7D6FB52465B46EFF734FDC7E90C013C -:1020E000A068EFF7CDFB02460B46D7E90E01EFF7EC -:1020F0009DFD04460D46D8F80800EFF7C1FB2246C7 -:102100002B46EFF71FFDC7E90E01786DEFF702FDD3 -:1021100041EC180BD7E90A0153EC182BEFF746FEF8 -:1021200041EC190B87ED049BD7E90C0153EC182BFC -:10213000EFF73CFE41EC1A0B87ED08ABD7E90E0137 -:1021400053EC182BEFF732FE41EC100B87ED060B2A -:10215000FEF788F901EE100AB0EE418A51EC1A0B35 -:10216000FEF780F900EE900AB0EE481AB0EE608AF1 -:10217000F0EE418A51EC190BFEF774F900EE100AEB -:10218000B0EE681AF0EE480A07F14C0107F148007A -:1021900005F0D0FE386D401C38659FED120B87EDC1 -:1021A000040B87ED080B87ED060B396CB86C00F05B -:1021B0001DF804467C66796CF86C00F017F8B86678 -:1021C00004F12801512902D22830512802D30120DC -:1021D000307001E000203070BDEC068BBDE8F08D62 -:1021E00010E600200000000000000000421AB52A9E -:1021F00004DB081A00F5B470424205E012F1B40F96 -:1022000002DA00F5B470421A1046704738B5DFF8AC -:10221000244594F82000012801D1002032BD204639 -:1022200006F09BFE204606F005FA0020E08306F04B -:1022300097FEDFF80455E56400206065142201462E -:1022400004F13000EFF70BFF20220021DFF8EC044F -:10225000EFF705FF20220021DFF8E404EFF7FFFE8F -:102260000020A065024605E0D42101FB00510A715F -:102270008A71401C0128F7DB0120606400F011F82E -:10228000DFF8C004012180F83D10084606F0E4FDA7 -:102290000020A064207706F007FE012084F82000CB -:1022A00032BD70B401460023DFF8882411E0D42544 -:1022B00004EB8304A46805FB040401262671D66D93 -:1022C00005FB0300807904EB8000006A3043D06591 -:1022D0005B1CDFF8700400EB4114DFF85C04257927 -:1022E000AB42E4DB29465177237F1376002903D0E4 -:1022F000DFF848345971D06470BC7047DFF834148B -:102300004A6D01EB82031863501C4865052803D30E -:10231000401E486500207047012070470020DFF80C -:10232000141402468A654A6D002A0BD00B6B8B652C -:10233000521E4A6504E001EB8002536B1363401C9C -:102340000428F8DB704738B50024DFF8E853287F0D -:1023500006F0B6FD02E000F03CF8641C287E8442E2 -:10236000F9D331BD70B50C460025DFF8C863F17FA5 -:102370004A1CF277332901D32946F177B17F03292B -:1023800015D3016871624168B1628068F0622846C5 -:1023900006F093FD307F401C3077317EC0B288421A -:1023A00003D328463077FFF7CEFFFFF7B7FFB07FA4 -:1023B000411CB177652801D33220B077B06D002879 -:1023C00005D0207001250A2801D10A202070284656 -:1023D00070BD2DE9F84300200146DFF85C430BE0B7 -:1023E000D42202FB01421379002B04D0937902EB33 -:1023F0008302126A1043491C0129F1DB06F079FDC2 -:10240000CC4D06F09CFD28650020A86506463FE0FF -:10241000D42202FB06F707EB040898F80400002812 -:1024200035D0304600F049F8D5F8509098F80600BD -:1024300008EB8000006AD9F8001008421ED098F816 -:10244000060008EB8000406B002806D098F80600D4 -:1024500008EB8000406BFFF751FF98F80600401C26 -:1024600088F8060098F80510C0B2884206D3B34831 -:10247000395940F82610002088F80600D9F84000A5 -:10248000002804D0D9F800100843C9F80000761CD1 -:10249000012EBDDB286D006806F053FDA86C411CC1 -:1024A000A964B0F57A7F01D90020A864A448A349A3 -:1024B0002022BDE8F843F2F703BCF0B59D4C256D32 -:1024C00000212964D4219C4A01FB00208179C1EBC1 -:1024D000C10200EB820600EB8107386A022846D170 -:1024E000B06C012843D1306D022808D1686B0328F5 -:1024F00003DAF06D401CF06501E00020F065306DFE -:10250000042808D1686B052803DAF06D401CF065DB -:1025100001E00020F065306D082808D1686B0828BC -:1025200003DBF06D401CF06501E00020F065306DCC -:10253000102808D1686B102803DBF06D401CF06593 -:1025400001E00020F065F06C142190FBF1F0F16DDA -:10255000814206DA2868396A88432860386A286424 -:1025600005E00020F0652868396A08432860386A69 -:10257000012861D196F84800C0075DD5F06C41078D -:102580001ED594ED0B0AF9EE000AB4EE600AF1EEE6 -:1025900010FA09D540F22310A9699131814203D381 -:1025A000E969913181423DD20020F065F06D052846 -:1025B0003CDA2868396A88432860386A2864F0BDA4 -:1025C00081070FD594ED0B0AB5EE400AF1EE10FA33 -:1025D000EADDA8695A30B528E6D2E8695A30B5284C -:1025E00020D3E1E7C006E1D5E06AEFF749F921F031 -:1025F00000410122544BEFF7FDFCD5D8606AEFF79C -:102600003FF921F000410022504BEFF70BFDCBD2F8 -:10261000A06AEFF735F921F0004100224B4BEFF7AC -:1026200001FDC1D2F06D401CF065BFE70020F065F0 -:102630002868396A08432860F0BD000010B43D499D -:10264000CA68002A04D14FF48062CA600A614A61F4 -:102650009FED370AD1ED040AF8EE600A91ED0A1AEF -:1026600060EE810AC0EE800A91ED011AB8EE411ABF -:1026700070EE810AFDEEE00A10EE902AD1ED050A17 -:10268000F8EE600A91ED0B1A60EE810AC0EE800A46 -:1026900091ED021AB8EE411A70EE810AFDEEE00AE1 -:1026A00010EE903AB0F9024000EB4404D1ED030A79 -:1026B000F8EE600A91ED091A60EE810A80EE800A58 -:1026C000D1ED000AF8EE600A30EE200ABDEEC00A35 -:1026D00010EE101AA180B0F9021000EB4101CA807F -:1026E000B0F9021000EB41010B814188491C418087 -:1026F00009B21E2901DB1D214180012010BC704759 -:1027000010B5002006E0D4210B4A01FB0021002275 -:102710000A71401C0128F6DB064C002060646077DB -:1027200006F0C4FB0020E06584F8200010BD000026 -:10273000C3F51C415C780020B4350020F87A0020F5 -:10274000187B0020FC360020000021400000F83FEC -:1027500010B5C04C002020606060A06020620520A1 -:1027600060620020A061E061A062E06220636063BB -:10277000A063E0636064A06404F14C0020644FF443 -:10278000B6720021EFF76BFC0C22002104F10C0063 -:10279000BDE81040EFF763BC70B506460C46AD4D82 -:1027A000A86C401CA864304600F01DF8002808D032 -:1027B000304600F0E7F8002803D0686C401C6864DD -:1027C00001E000206864A86C0F280ADA686C0B2806 -:1027D00003DB01202070022070BD0020207001204A -:1027E00070BD032070BD38B59A4C0168E16090ED72 -:1027F000010AB1EE400A84ED040A90ED020AB1EE3E -:10280000400A84ED050A0A2204F10C01206C05F04F -:102810009AFD616A4A1E206C236A93421DDA0A22DD -:10282000591C09B205F0B8FD84ED0D0A0A22206A90 -:10283000411C09B2206C05F0CDFD84ED0E0A0A2280 -:10284000206A411C09B2206C05F0E2FD84ED0F0AFC -:10285000206A401C00EE100A49E018D10A2209B291 -:1028600005F09AFD84ED0D0A0A22616A09B2206C16 -:1028700005F0B0FD84ED0E0A0A22616A09B2206CEF -:1028800005F0C6FD84ED0F0A94ED090A2FE00A2237 -:1028900009B205F071FD05460A220021206C05F001 -:1028A0006BFD94ED0D0AD5ED000A30EE600AD0ED17 -:1028B000000A30EE200A84ED0D0A94ED0E0AD5EDE3 -:1028C000010A30EE600AD0ED010A30EE200A84EDF4 -:1028D0000E0A94ED0F0AD5ED020A30EE600AD0ED33 -:1028E000020A30EE200A84ED0F0A94ED090AB8EED0 -:1028F000C01A94ED0D0A80EE010A84ED0A0AD4EDA7 -:102900000E0AC0EE810AC4ED0C0AD4ED0F1A81EE56 -:10291000811A84ED0B1A04F11C0104F1180005F072 -:1029200009FB206A401C20620020A0622063E06254 -:10293000A069002804D400EE100AB8EEC00A04E032 -:10294000404200EE100AB8EEC00AF3EE090AB4EEF7 -:10295000600AF1EE10FA13D5E069002804D400EE05 -:10296000100AB8EEC00A04E0404200EE100AB8EEC9 -:10297000C00AB4EE600AF1EE10FA01D5012032BDB2 -:10298000002032BD0021334A92ED000AB5EE400A24 -:10299000F1EE10FA15D1D2ED010AF5EE400AF1EE92 -:1029A00010FA0ED1D2ED020AF5EE400AF1EE10FA5D -:1029B00007D1016811604168516080689060002013 -:1029C0007047D0ED000A30EEC00A90ED011AD2ED4A -:1029D000011A31EE611AD0ED021A92ED022A71EE5F -:1029E000C21AB5EE400AF1EE10FA01DAB1EE400A71 -:1029F000B5EE002AB4EE420AF1EE10FA1AD5B5EEA1 -:102A0000401AF1EE10FA01DAB1EE411AB5EE000A01 -:102A1000B4EE401AF1EE10FA0CD5F5EE401AF1EED4 -:102A200010FA01DAF1EE611AF4EE401AF1EE10FA42 -:102A300000D50121C2ED000A4368536080689060B0 -:102A4000084670470348002101604160816041648D -:102A500081647047BCE9002010B500F034FB00F041 -:102A60009AFB00240DE020469FED151ADFED140AB5 -:102A70009FED130A00F0BCFE2146052000F0C5FEC4 -:102A8000641C1E2CEFD3DFF8640D0021017001637C -:102A900041638163C16301644164816405214171C3 -:102AA0000A210171002141708170C1620A21817186 -:102AB0000021C17010BDDFF8341DC87070470000E0 -:102AC000000000002DE9F0472DED048BB0EE408AA8 -:102AD000F0EE608AB0EE419ADFF8344DE0780128DC -:102AE00001D1002500E0052526781E2E09D23046AA -:102AF00000F07EFE3146284600F087FE701C2070F4 -:102B000027E0002616E0DFF80C1D01EB86023046B8 -:102B100092ED3D1AD2ED1F0A01EB860191ED010AFB -:102B200000F066FE3146DFF8F00C3018407800F017 -:102B30006CFE761C1D2EE6DB1D20B0EE491AF0EE71 -:102B4000680AB0EE480A00F053FE1D21284600F046 -:102B50005CFEDFF8C89C032D08DA606B401C6063E4 -:102B600048450BD3DFF8B80C606307E0206B401CCE -:102B70002063484502D3DFF8A80C206300F0BAFDBB -:102B8000B0EE408A00F07EFDF0EE408A00F012FBCD -:102B9000D4F830809FEDA09B4046EEF7C5FF53EC84 -:102BA000192BEEF7A5FEEEF797FF0646E76B3846C2 -:102BB000EEF7BAFF53EC192BEEF79AFEEEF78CFF07 -:102BC000824620790A2802D0142846D05CE09FED86 -:102BD000940AB4EE408AF1EE10FA0CD5F4EE408A75 -:102BE000F1EE10FA07D5032D05DA142020717808CC -:102BF00000F0F4FB48E0781CE063484502D3DFF8BE -:102C0000200CE063042D3FDB00F066FAE06A012847 -:102C10003AD1B6F57A7F37D994ED090AB5EE400A74 -:102C2000F1EE10FA01DCB1EE400ADFED7E0AB4EEFF -:102C3000600AF1EE10FA0DDA94ED0A0AB5EE400AD8 -:102C4000F1EE10FA01DCB1EE400AB4EE600AF1EEEA -:102C500010FA19DB0020E06216E09FED710AB4EE75 -:102C6000408AF1EE10FA04DAF4EE408AF1EE10FA3E -:102C700002DB0A20207107E0A06B401CA0634845DE -:102C800002D3DFF89C0BA0630020607060790228FB -:102C90000AD0C0F05B8104281BD074D3062800F052 -:102CA0000381C0F0E68051E1032D0FDA606B01284B -:102CB00002D12079A07149E10A2840F0478104201F -:102CC000607100F0FDFB002020633FE100206063A5 -:102CD0003CE1E06A012832D1207900F049F901286D -:102CE0002DD140F2E930864201D2002E22D1824518 -:102CF00002D2BAF1000F1DD194ED090AB5EE400AD7 -:102D0000F1EE10FA01DCB1EE400ADFED460AB4EE56 -:102D1000600AF1EE10FA10D594ED0A0AB5EE400AF9 -:102D2000F1EE10FA01DCB1EE400AB4EE600AF1EE09 -:102D300010FA02D5A078607001E00020E062E06A3D -:102D4000002814D1B6F5C87F01D8002E08D1A0788C -:102D5000002808D0BAF1FB0F05D2BAF1000F02D05B -:102D6000A078607003E0207900F048F960700320DB -:102D700060716078A070002020636063A063E063EE -:102D800000F022FBE2E0042D17DBB8F1010F02D1C5 -:102D900000F001FADAE0B8F1060FC0F0D7800021A8 -:102DA000404600F0D5FAA078032802D10020E06266 -:102DB00062E000F0E1FCE0625EE000202063207948 -:102DC0000A2853D1E06B0A28C0F0C080002100F02F -:102DD000BFFAA07800F0D0FCE06294ED130AB5EEE3 -:102DE000400AF1EE10FA02DDF0EE400A01E0F1EEE9 -:102DF000400A9FEDB81AF4EE410AF1EE10FAC0F263 -:102E0000A580D4ED140AF5EE400AF1EE10FA0BDDC0 -:102E1000F0EE601A0AE000BF00000000000034403D -:102E20009A99193F00002042F1EE601AF4EE411A1F -:102E3000F1EE10FAC0F28A80F5EE400AF1EE10FAD7 -:102E400001DCF1EE600AB5EE400AF1EE10FA01DCA9 -:102E5000B1EE400AF4EE400AF1EE10FA76D5052004 -:102E6000607100F098F90020A0636FE00020E0633B -:102E70006CE0B8F1060F04D302206071002060639B -:102E800064E0A06B012805D1E06B00F0A7FA20797F -:102E9000A0715BE0052859D3606B052856D3062046 -:102EA00060710020206351E0207914284ED1E06A3F -:102EB00001282DD140F2E930864201D2002E22D1E4 -:102EC000824502D2BAF1000F1DD194ED090AB5EE88 -:102ED000400AF1EE10FA01DCB1EE400ADFEDB30A70 -:102EE000B4EE600AF1EE10FA10D594ED0A0AB5EED0 -:102EF000400AF1EE10FA01DCB1EE400AB4EE600ACD -:102F0000F1EE10FA02D5A078607001E00020E062D6 -:102F1000E06A002811D140F29110864201D2002EC1 -:102F200004D1824505D2BAF1000F02D0A0786070BA -:102F300003E0A07900F062F86070032060716078AF -:102F4000A070002020636063E063A06360780128C4 -:102F500001D1012008E0022801D1022004E0032869 -:102F600001D1032000E00020BDEC048BBDE8F08718 -:102F700000B52DED048B81B000210A2808D1DFF8BF -:102F80006C0890ED100A90ED118AD0ED128A11E0D4 -:102F9000142808D1DFF8540890ED150A90ED168A30 -:102FA000D0ED178A06E09FED820A9FED818ADFED62 -:102FB000808A032103291CD29FEDD59A00F03AFCA8 -:102FC000B4EE490AF1EE10FA11D5B0EE480A00F05D -:102FD00031FCB4EE490AF1EE10FA08D5B0EE680AF9 -:102FE00000F028FCB4EE490AF1EE10FA01D40120F9 -:102FF00000E0002001B0BDEC048B00BD00210A28D8 -:103000000AD1DFF8E807D0ED100A90ED111AD0EDE3 -:10301000121A9FED670A13E014280AD1DFF8CC07D3 -:10302000D0ED150A90ED161AD0ED171A9FEDC50ACE -:1030300006E0DFED5F0A9FED5E1ADFED5D1A03210A -:1030400003293ED2B4EE600AF1EE10FA0BD59FEDE3 -:10305000BE2AB4EE421AF1EE10FA04D5F4EE421A8A -:10306000F1EE10FA2AD4B4EE600AF1EE10FA0BD5A4 -:103070009FEDB62AB4EE421AF1EE10FA04DBF4EE3C -:10308000421AF1EE10FA0BDAB4EE600AF1EE10FA21 -:1030900008D59FEDCC1AF4EE411AF1EE10FA01DBDF -:1030A00001210EE0B4EE600AF1EE10FA08D59FEDB2 -:1030B000CA0AF4EE401AF1EE10FA01D5022100E03E -:1030C000032108467047DFF8240700218160C160B2 -:1030D000016170470100C03F10B52DED068BDFF890 -:1030E0000C4794ED050AB5EE400AF1EE10FA13D143 -:1030F00094ED060AB5EE400AF1EE10FA0CD194ED0B -:10310000070AB5EE400AF1EE10FA05D1A068606139 -:10311000E068A0612069E06194ED028A94ED050AFF -:1031200038EE400A00F0F6F8F0EE408A94ED039A8B -:1031300094ED060A39EE400A00F0ECF8F0EE409A01 -:1031400094ED04AA94ED070A3AEE400A00F0E2F882 -:10315000F0EE40AA94ED080A30EE280A00F0DAF802 -:1031600084ED080A94ED090A30EE290A00F0D2F83D -:1031700084ED090A94ED0A0A30EE2A0A00F0CAF832 -:1031800084ED0A0A84ED058A84ED069A84ED07AA87 -:10319000BDEC068B10BDDFF85406002101624162D0 -:1031A000816241618161C16170470000000020427D -:1031B00000000000F0B52DED068B83B01D2100A8A6 -:1031C00000F006FB9DED000AB5EE400AF1EE10FAA4 -:1031D00001DCB1EE400ADFEDB00AB4EE600AF1EEB8 -:1031E00010FA01D50020009000AE96ED010AB5EE70 -:1031F000400AF1EE10FA01DCB1EE400AB4EE600ACA -:10320000F1EE10FA01D50020706096ED020AB5EEDD +:10000000424510D0CA0F00EB820202F110034900F2 +:100010001A68002AF0D129698B4211D31C60A061B3 +:10002000E460A4600EE081682A69904228BF914292 +:1000300006D3CC608460A160E0600020A06101E094 +:1000400003F028FC286A401E28620BD1D5F8C401B1 +:1000500000E080680028FCD14FF0FF30286201E00A +:1000600003F018FCC046C046BDE8F087FCFC002049 +:10007000E8E70020002848BF40427047F4464900A6 +:1000800006D200F011F809420DD5C81741086047A3 +:1000900000F00AF807D04942404271F1000102D451 +:1000A00000205FF0004160474A0DA2F580621E3AD1 +:1000B0000ADC5242202A18DA890241F0004141EA62 +:1000C00050500021D0407047D2F1200210D4890254 +:1000D00041F0004141EA5051C002D04061FA02F3C0 +:1000E0005840D14080EA010070470020002170474D +:1000F000D01701007047000090420CD141EA030C78 +:1001000050EA4C0C07D0994205D14FF4001C1CEB6F +:10011000410F38BF894270474C48C168002903D558 +:100120004B4901604B49016070474B48016841F001 +:1001300000410160704770B50446002600290BD0CD +:10014000012902D14FF4807606E0022902D14FF452 +:10015000007601E04FF4407600F082F809281ED1C5 +:100160003D4D286820F4407028602868304328609E +:10017000286820F0F8002860286844F0020108434D +:100180002860286840F48030286000F069F8296809 +:1001900021F002012960296821F0F801296070BD71 +:1001A00070B504460D4600F05BF8092813D12A4EBD +:1001B000306820F440703060306840F40070306087 +:1001C000306840F001003060256000F049F8316887 +:1001D00049084900316070BD70B505460E4600F013 +:1001E0003FF8092811D11C4C206820F44070206091 +:1001F00020682060206840F0010020602E7000F030 +:100200002FF8216849084900216070BD1349086032 +:100210007047092011490A68D20301D501207047AF +:100220000A68D20601D5062070470A68D20501D5B2 +:10023000022070470A6812F0EF0F01D007207047C4 +:100240000968890700D5082070470000043C024077 +:1002500023016745AB89EFCD103C02400C3C0240C6 +:1002600080B509208DF80000FFF7D3FF8DF800005E +:1002700003E0FFF7CEFF8DF800009DF80000012895 +:10028000F7D09DF8000002BD0278C9B28A421AB1C7 +:100290001CBF10F8012FF9E718BF002070470000BD +:1002A000C9B2830706D0521E22D310F8013B9942EF +:1002B000F7D11FE0083A13D302F1040241EA012109 +:1002C00041EA014150F8043B121F21BF4B40A3F10A +:1002D000013C2CEA030C1CF0803FF3D0C9B2001F94 +:1002E000083210F8013B521E28BF91EA030FF8D8DC +:1002F00018BF0120401E704730B4436803F000422D +:1003000001211B031B0B436004BF0368002B08D1B2 +:100310000DE00368DD0F45EA440444605B000360C0 +:10032000491E4468E302F4D523031B0B4360436872 +:100330001A434260084630BC7047000070B504465E +:1003400040F2FF726068C0F30A500D46904207D138 +:100350006068000304BF2068002817D0022070BD29 +:1003600020B92046FFF7C8FF012867DA012D0FDB0F +:1003700040F2FF71091A8D420AD3606800284CBF11 +:100380009FED2F0B9FED300B84ED000B012070BD16 +:100390004142A942616806DA6FF31E51401941EAF1 +:1003A0000050606041E0401E63680122451962F31D +:1003B0001F5305F1350001F000416360352803D378 +:1003C00061600020206070BD002215F11F0F04DA6B +:1003D00022682360002020356060684213D0521EDE +:1003E00025689241C0F12003D2439D4055EAD27264 +:1003F00025686668C54006FA03F32B4323606368EB +:1004000023FA00F06060606808436060B2F1004F5A +:1004100003D80DD12078C0070AD52068401C206081 +:10042000206828B96068401C60604FF0FF3070BDE4 +:100430006068884204BF20680028F6D1002070BDA3 +:10044000000000000000F0FF000000000000F07F4E +:1004500091FBF2F303FB1211C0E900317047000079 +:1004600000B585B002460FF2140100A803F02AFA85 +:1004700000A8FAF75CFA05B000BD00004F452564FE +:10048000000000004FEAF17CBCF1E04C2CBFBCF551 +:10049000001F11E05FEA4C0C34BFBCF17F5F2EE01F +:1004A0005FEA9C0C4FEA0C1C4FEA3C0CC10071F156 +:1004B00000414CEB50707047C90241EA5051C002F4 +:1004C00018BF41F0010141F000414FEA6C50C0F10A +:1004D0000900212810D240EACC7CCCF1200C11FA82 +:1004E0000CF070F10040CCF1200C21FA0CF00CF073 +:1004F000004C40EB0C0070474FEACC70704749004D +:1005000011F5001F04D84FEACC10FF30C00570472A +:10051000C817704703F0F0B980B5F0F715F8C06E52 +:10052000FBF7EBFF0348007802BD024908707047F3 +:10053000000000006AFE002070B50D4E0546B06850 +:1005400084B00C46029501950390F2F73CFE2868B2 +:10055000009000A82860009808B100A94160B06828 +:1005600000A981600474F2F73EFF04B070BD00BFC3 +:100570002438002030B483680469027DE318C4681D +:10058000A34228BF1B1B534311F8015B44681D5550 +:100590005B1C521EF8D18168491C8160012904BF8F +:1005A00030BC03F061B919484078002804BF30BC62 +:1005B000F2F703BE30BC704710B50446207D2269B7 +:1005C00042436368D35C521C401E01F8013BF8D1E2 +:1005D0002069401C2061E168884224BF002020611E +:1005E000A068421EA260094A8842527807D10AB91F +:1005F000F2F7E3FD2046BDE8104003F035B9002ACC +:1006000004BFBDE81040F2F7D8BD10BD243800206B +:1006100080B500F009F800204D49024601E042543F +:10062000401C0228FBDB01BD10B44A4800210180B8 +:100630000846494C0CE001EB810200EB80031B19DA +:10064000D21800231371491C49B20129F3DB401C65 +:10065000142801DA0021F7E710BC704700EB800096 +:100660003D49405E704700EB80003B494018B0F9BF +:100670000200704710B54FF0FF340146012902D047 +:100680000C2902D003E0002405E0012403E00FF26E +:10069000D000EFF742FD204610BD70B5044601259D +:1006A000FFF7E8FF06462046012802D00C2803D0B9 +:1006B00005E000F043F808E0FFF7B6FF05E021464B +:1006C0000FF2AC00EFF729FD0025002E02D42048E0 +:1006D00000213154284670BD10B54FF0FF34C0B230 +:1006E000082801D1002405E040B201460FF2900035 +:1006F000EFF713FD204610BDF3B5164C25882E46A6 +:10070000701C152801DB0020F6BD00270DE007EB6B +:10071000870106EB8600104A8018081800AA89187D +:100720000522F4F7CDFA7F1C7FB2012FEFDB681CA6 +:1007300020800120F6BD0748008870470748002147 +:10074000818001704170012181700846704700006E +:10075000F47B0020667B0020987400205C3700202A +:100760004558205044524D4D20433120256400000F +:100770004558205044524D4D2043332025640000FD +:100780004558205044524D4D2043322025640000EE +:100790000FB480B503F0BAF8D648052141700021A6 +:1007A000017001714171D44802A92022F4F798FA2E +:1007B000092200210846F4F7CBF8022801D10220D3 +:1007C00000E0012002BC5DF814FB4CE110B5C94CFF +:1007D00094F9010005280AD100F0E4F8002822D09D +:1007E0000420607003F092F8BDE81040FCE004289B +:1007F00019D100F0B5F8002808D00320207005209A +:10080000607003F083F8BDE810402CE100F055F96A +:10081000002808D0022020700520607003F076F8D0 +:10082000BDE810401FE1012010BD80B5F4F78EF83F +:10083000B0498860B149C0F8781100F5BC70B04982 +:100840004160B04981600FF21101C1600FF2950162 +:100850000161012002BD00000020A6490246CA70C5 +:100860008A6892F86921002A0FD091F90020002AA5 +:1008700002D00220C870012091F90420012A04D17D +:10088000C87840F00400C8700120704799480021E2 +:100890000170C17001710120704710B58AB0044623 +:1008A00000A804F02DFD0198A04204D3001BC0B2A3 +:1008B00000EE100A04E08038001BC0B200EE100AFF +:1008C000B8EE400ADDED060A20EE200A10EE100A0E +:1008D000F0F7E4FF41EC100B0AB010BD8548012190 +:1008E0000171704778B4834A92F903309C0716D59A +:1008F00030240D7814FB050501262E700D7814FBAD +:1009000005056E700D7814FB05050926AE700D788F +:1009100014FB05041578E5700C78641C0C705B07FB +:100920001CD530240B7814FB030301251D700B78B4 +:1009300014FB030303255D700B7814FB03030925E7 +:100940009D700B7814FB03030125DD700B7814FBFD +:100950000300527802710878401C087071BC95E75A +:1009600030B58DB0002420468DF8000001A8F4F7C2 +:1009700055F84FF47A70604D00ABB5F8051000FBE8 +:1009800001F2B5F803104143B5F80150684301ADD9 +:1009900095EC030A02F0FCFF022800D10124204656 +:1009A0000DB030BD30B58DB0002420468DF800006C +:1009B00001A8F4F733F84FF47A704F4D00ABB5F857 +:1009C000051000FB01F2B5F803104143B5F80150E2 +:1009D000684301AD95EC030A02F0DAFF012800D16B +:1009E000012420460DB030BD30B59DB0012400205B +:1009F000ADF82A0001900A208DF8080000208DF83B +:100A000009008DF80A003B4D95F90500002827D113 +:100A1000B4208DF82D0046208DF82E0020468DF84C +:100A20002F0000208DF80000032001900DF1090037 +:100A30000BA92022F4F744F90A208DF808000020C1 +:100A4000ADF82A0000A8F4F735F8002801D10224F7 +:100A500006E013A804F054FC1498A87020466871AE +:100A600020461DB030BD30B58BB00124214D95F925 +:100A7000050001281ED10020ADF82A0001900A20AF +:100A80008DF8080000208DF809008DF80A00204636 +:100A90008DF80000032001900A208DF80800002046 +:100AA000ADF82A0000A8F4F705F8002800D10324C7 +:100AB0000020687120460BB030BD10B52DED028BC3 +:100AC00000240C488078FFF7E8FEB0EE408AF0EE94 +:100AD000608A0948C079F1F735F802460B4651ECB7 +:100AE000180BF1F795FA00D801242046BDEC028BD3 +:100AF00010BD0000D4380020D87A002091070208E9 +:100B0000CB070208CD070208182200210248F1F79E +:100B1000B4BA014870470000CCFC002080B5FFF754 +:100B2000F8FF684908600FF2910101600FF2A5011A +:100B300041600FF2A50181600FF2A101C1600FF2C7 +:100B40000D0101610FF23901416101BD30B583B082 +:100B500004465D4D207869698847002009E004EB70 +:100B600040014A78897841EA022100AA22F810104F +:100B7000401C0328F3DB00A8E968884700203EBD3D +:100B800030B583B00446504D28698047207000A8D6 +:100B9000A968884700200AE004EB400100AA32F966 +:100BA00010301B124B7032F810208A70401C032842 +:100BB000F2DB00203EBD000080B505F079FD05F0B8 +:100BC00094FE41480068804740480068BDE8024004 +:100BD00000470000704700007047000073B52DED1E +:100BE000048B8EB0B0EE408AF0EE608AB0EE419A8F +:100BF000144600200090BDF84800ADF80C0003A892 +:100C0000BDF84A104180BDF84C1081802E4D00AADD +:100C100001A96B689847002001AE0FE036F910106B +:100C200000EE101AB8EEC00ADFED250A80EE200AA9 +:100C30000BA901EB800181ED000A401C0328EDDBCC +:100C4000B0EE480A8DED080A08A8B0EE680A80EDFB +:100C5000010AB0EE490A80ED020A05AA0BA9AB69A8 +:100C60009847009820700598E06005A84168A16049 +:100C700080686060B2EE040ABDF9040000EE900ADC +:100C8000F8EEE00AC0EE800AC4ED040AB6F90200EC +:100C900000EE900AF8EEE00AC0EE800AC4ED050A04 +:100CA000B6F9040000EE900AF8EEE00A80EE800A41 +:100CB00084ED060A00200EB0BDEC048B76BD00006A +:100CC00000401C46ECFD0020B0FB002020FE002070 +:100CD0002DE9F04104460D461646CD4F386B40F4E1 +:100CE00080503863DFF82C83CB48C8F80400CB4829 +:100CF000C8F808004FF47A50A8F800000120A8F8BE +:100D00000E00A8F80C00404605F008FE00F0ADF813 +:100D1000C046C046B86820F40000B860386840F0AB +:100D20008060386038680001FCD5600000F004F98C +:100D3000C8F83450C8F8386000F003F80020BDE867 +:100D4000F08130B585B001210220F8F7FBFC1D20B1 +:100D50008DF800000F208DF8010000208DF80200B2 +:100D600001208DF8030000A8F9F7C9FEAC4800681F +:100D7000AC49B0FBF1F0441E40F2E7300290002095 +:100D80000190ADF80C008DF80E00A74D01A9284682 +:100D900005F0C4FF0122214689B2284601858282DE +:100DA00001221146284605F0F3FF05B030BD80B59D +:100DB000974A13681B010AD4936823F400039360D5 +:100DC000136843F08063136013681B01FCD5974AD6 +:100DD00050609748016101219648F8F795FF01217D +:100DE0009548F9F75AF8002002BD10B58E4C2088BE +:100DF000C00709D40FF25020EFF78FF901212046E8 +:100E0000BDE8104005F0AEBF10BD80B50021894897 +:100E1000F8F77AFF7E48016821F0806101600021C7 +:100E20008548F9F73AF8002002BD10B57E4C2088BD +:100E3000C00709D50FF21820EFF76FF900212046FF +:100E4000BDE8104005F08EBF10BD30B4002308E0AF +:100E500031F81340250245EA142420F813405B1CA6 +:100E60009BB29342F4DB30BC70471CB501210220D9 +:100E7000F8F75DFC01210220F8F759FC02208DF8FB +:100E800004000020ADF8060002208DF805004FF4A4 +:100E900000500090694C00A92046F8F71BFD052280 +:100EA0000D212046F8F764FD4FF40040009000A9A2 +:100EB0002046F8F70FFD05220F212046F8F758FDD0 +:100EC00013BD30B5A1B05A4C5B48406880B2C0F544 +:100ED000A0706081554D29E0A08A05EB400205EB2A +:100EE0004101B1F84818A2F8C817A189491CA1818D +:100EF000401CA082A189B1F5A07F01D30021A1816E +:100F000080B2402812D3402205F5F96100A8FFF70E +:100F10009CFF404B1E22696800A805F079FD4FF444 +:100F2000F071102005F04AFF0020A082A18960899D +:100F30008842D1D121B030BD30B593B005460121F2 +:100F40004FF48040F8F7FEFB3A4C2046F8F718FEC5 +:100F500002952020ADF802000020ADF80400ADF8A5 +:100F60000C004FF44070ADF800000020ADF8060012 +:100F700000A92046F8F74FFE01214FF40010F8F7C2 +:100F8000D6FB2D4D00212846F8F787FF2846F8F7B5 +:100F9000D9FE002004902A4805902A480690002097 +:100FA00007904FF4A0700890002009904FF48060E3 +:100FB0000A904FF400600B904FF400500C904FF4E7 +:100FC00080700D904FF400300E9000200F900320A1 +:100FD000109000201190129004A92846F8F736FFCF +:100FE000012211462046F8F79BFE13B030BD10B524 +:100FF0000D4C0121204605F0D5FE002806D0012128 +:101000002046C9430182BDE810405AE710BD0000E8 +:1010100000380240E83700200000FA450000204177 +:10102000B838002040420F00000400406059002002 +:10103000507B00200038004058600240000402400D +:101040000C380040A861002054494D332D45000064 +:1010500054494D332D44000030B583B0002000903A +:1010600001A805F005FF314C982200212046F1F738 +:1010700004F82F49A1642F49E1640621A4F858100F +:10108000FA21A4F85A100021A4F850100321A4F862 +:101090005C1000A905F0F1FE009841F271718842E0 +:1010A00001D3FE203EBD244D05F57170C4F88C00BF +:1010B0004FF4F0702082281DE060002060616082A3 +:1010C00020602083204606F051F80020286020464A +:1010D00005F0EEFE3EBD38B5144CD4F88C10002956 +:1010E00005D10FF25C00EFF718F80D2032BD214654 +:1010F00005F0FCFE054610480168002904D00FF2F7 +:101100004C00EFF70AF80D25002D08D1B4F868005F +:10111000002800D13125204605F0CAFE04E0FD2D4F +:1011200002D0204605F0C4FE284632BD50F600200D +:101130000040000800B0000894AF00200020704775 +:10114000535046204E554C4C00000000734D4D202E +:101150002564000030B5104C0546207881B0401C55 +:101160002070F2F730F8A0684169294205D1856105 +:10117000082101742046F2F710F8A06800214569A3 +:1011800041612078401E2070607808B9F2F715F8A8 +:10119000284601B030BD00BF243800207047000051 +:1011A000DFF8F4090178DFF8F42902EB810282ED1F +:1011B000000ADFF8EC2902EB8102C2ED000ADFF839 +:1011C000E42902EB810282ED001A4278202A01D242 +:1011D000521C4270491C0170C9B2202901D1002162 +:1011E000017070472DE9F0412DED028B0025DFF8ED +:1011F000A8496078022801D2284679E02E4601E00D +:101200000025761C607886426DDA2078002803D1AC +:101210001F274FF01E0805E0471EB7F1010801D552 +:1012200008F12008DFF8740900EB870191ED000A4E +:1012300000EB8800D0ED000A30EE600A10EE100AD4 +:10124000F0F72CFB21F00041FFF71CF908EE100A23 +:10125000DFF84C0900EB870191ED000A00EB8800F4 +:10126000D0ED000A30EE600A10EE100AF0F716FB1F +:1012700021F00041FFF706F908EE900ADFF8240993 +:1012800000EB870191ED000A00EB8800D0ED000A29 +:1012900030EE600A10EE100AF0F700FB21F000417A +:1012A000FFF7F0F800EE100ADFEDC10AB4EE608A35 +:1012B000F1EE10FA01DB012000E00020F4EE608A7C +:1012C000F1EE10FA01DB012100E00021B4EE600A2A +:1012D000F1EE10FA01DB012200E000220843104386 +:1012E0008ED06D1C8DE7EDB2152D8041C043C00F2F +:1012F000BDEC028BBDE8F08130B52DED028B87B0DF +:10130000B0EE618A0546DFF8A84884ED000AF0EEE9 +:10131000601AC4ED011AB0EE412A84ED022AD4ED20 +:10132000192AF4EE402AF1EE10FA1ED1D4ED1A2A51 +:10133000F4EE612AF1EE10FA17D1D4ED1B2AF4EE87 +:10134000422AF1EE10FA10D1606F401C6067152838 +:1013500013D3606EF0F7A2FA02460B460FF6AC000C +:10136000EEF7DBFE0020606707E084ED190AC4EDAC +:101370001A1A84ED1B2A0020606794EC030AFFF719 +:101380000FFF207B02283BD1284680B2B0EE480AEE +:1013900006F0D0F8294689B2204603F0DFFBDFF8DB +:1013A0000858284603F0ACFF286801280FD102F046 +:1013B0000EFE284603F0A4FF28222946DFF838084D +:1013C000F0F755FE0FF65000EEF7A7FE24E0294691 +:1013D00084B068462822F3F783FC0FBC00F0F6F8CF +:1013E00000F042FA002817D0E889002814D10FF63F +:1013F0003400EEF792FE0120207303F095FF0BE01E +:10140000012809D1FFF7EEFE002805D00FF61C00D9 +:10141000EEF783FE02202073002007B0BDEC028BA4 +:1014200030BDDFF88C07007B7047002806D0DFF85E +:101430006817D1F880105422F3F752BC704710B5EA +:10144000002815D1DFF86C4700EE101AB8EE400AFC +:1014500084ED010A204603F07BFF6068F0F71EFA76 +:1014600002460B460FF2CC70BDE81040EEF755BEB9 +:10147000012815D1DFF83C4700EE101AB8EE400AFB +:1014800084ED000A204603F063FF2068F0F706FAB7 +:1014900002460B460FF2AC70BDE81040EEF73DBEC1 +:1014A00002280DD1DFF80C472181204603F050FFC0 +:1014B000B4F908100FF29C70BDE81040EEF72DBE95 +:1014C00010BD2DE9F047074688469146DFF8DC4617 +:1014D000542200212046F0F7D0FDDFF8BC5605F17C +:1014E0008406542200213046F0F7C7FD5422002123 +:1014F00005F12C00F0F7C1FD282221463046F0F717 +:10150000B6FDC5F88060DFF8A8665422002106F118 +:101510001000F0F7B2FDDFF89CA60C220021504627 +:10152000F0F7ABFD28220021DFF87C06F0F7A5FDDF +:1015300028220021281DF0F7A0FD00EE107AB8EE59 +:10154000400A8AED010A00EE108AB8EE400A8AEDE0 +:10155000000AAAF808904B46424639460FF204703A +:10156000EEF7DBFD02F06CFC504603F0F1FE04F1F7 +:10157000440042F21071C1800181002161640120A8 +:101580003073084628706870306705F08FFF0020C0 +:10159000A8700120E8700FF2DC60EEF7BEFD0020BD +:1015A0007066B066F06630607060B060BDE8F0876D +:1015B0000100803F10B596B003F0ACFE044600A8D1 +:1015C000FFF733FF0098001916B010BD0FB430B507 +:1015D0002DED028B89B0DFF8C045A068814205D1AE +:1015E000BDF84620638A9A4200F097800D1A02D512 +:1015F000DFF8000645199DED170AD4ED0A0A70EED2 +:10160000608AF5EE408AF1EE10FA03D59FED940A58 +:1016100078EE808A9DED150AD4ED080A30EE608AD6 +:10162000B5EE408AF1EE10FA03D59FED8D0A38EE43 +:10163000008A9DED160A06F0FFF8B0EE401AE07839 +:10164000012802D0022838D048E004F12C0007908D +:101650000EA983B068462822F3F742FB0EBC9FED2B +:10166000811AF0EE480AB0EE680A284600F05CF8ED +:10167000A0782818A070C0B203282FD3DFF82C055B +:1016800007900EA983B068462822F3F729FB0EBC09 +:101690009FED741AD4ED180A94ED130AE06A00F075 +:1016A00043F8A078401CA0705422002104F12C00C3 +:1016B000F0F7E3FC0220E07010E0DFF8F0040790A0 +:1016C0000EA983B068462822F3F70AFB0EBCF0EEA1 +:1016D000480AB0EE680A284600F026F8BDF8460031 +:1016E000002809D15422002104F12C00F0F7C5FC98 +:1016F0000020A0700120E07028220EA9201DF0F724 +:10170000B6FCDFF8A814C4F8801004F18405542254 +:101710002846F0F7ACFCC4F8805009B0BDEC028B51 +:1017200030BC5DF814FB00000EB470B52DED048BD9 +:1017300089B0B0EE409AB0EE608AF0EE418A1B9D0F +:1017400005F12004BDF8526026852946B0EE680AEE +:1017500000F0C3F8DFF85804006F00280ED195EDB3 +:10176000080A30EE090A85ED080A00F003FA85ED53 +:10177000080AE684BDF85000A08437E0DFF834049E +:1017800006AA0AC80AC20368136011A984B0684691 +:101790002822F3F7A5FA0FBCB0EE680A00F036F97C +:1017A000D5ED080A30EE800A85ED080A00F0E2F96E +:1017B00085ED080AF5EE408AF1EE10FA0BDD032EF6 +:1017C00003D10620E084A08410E0042E0ED108206E +:1017D000E084A0840AE0032E03D10720E084A084E3 +:1017E00004E0042E02D10920E084A084179820612F +:1017F00094ED050A30EE080A84ED050A00F0AEF912 +:1018000084ED050A1998F0F749F8DFF8AC23DFF802 +:10181000AC33F0F77BF8FEF735FE00EE100A84EDEE +:10182000060ADFED790AB4EE600AF1EE10FA02DB87 +:10183000DFF8C803A06113982062E08C002801D172 +:10184000002020620020E06115982063BDF85A0056 +:10185000A08509B0BDEC048B70BC5DF810FB0000E6 +:10186000002474490000000080B503F07FFD40F6BD +:10187000B93188428041C043C00F02BD38B50D4622 +:1018800005F11004218F032912D1B5EE400AF1EEC3 +:1018900010FA06DD29694018286100F077F92861FF +:1018A00031BD61684018606000F070F9606031BD62 +:1018B000042911D1B5EE400AF1EE10FA06DDA16857 +:1018C0004018A06000F062F9A06031BDE1684018E6 +:1018D000E06000F05BF9E06031BD70B52DED028B8A +:1018E0000546B0EE408A0C4620682818206000F0BB +:1018F0004DF9206018EE100AEFF7D0FF21F00041FB +:1019000000221346F0F784FB43D2A94EF069052864 +:1019100030D2316F00292DD104281CD1E168401844 +:10192000E06000F033F9E0602146B0EE480AF0696B +:10193000FFF7A4FFE0682818E06000F027F9E060F6 +:101940002146B0EE480A2846FFF798FF00F04BF812 +:10195000012030670AE0B4F84600042803D1B069DA +:101960002818B06102E0706928187061F0692818C1 +:10197000F06135E0E0682818E06000F007F9E06009 +:101980002146B0EE480A2846BDEC028BBDE8704007 +:1019900074E7B4F84600032802D0042807D00DE00D +:1019A00060682818606000F0F1F860600CE0A068E2 +:1019B0002818A06000F0EAF8A06005E06068281828 +:1019C000606000F0E3F86060794EF069052803D2AA +:1019D000002801D000F00DF800F005F80020306775 +:1019E000BDEC028B70BD7248002141618161C16113 +:1019F00070476F486D494A6843699A184A608A6817 +:101A000080698018886070470100C8410FB430B504 +:101A10002DED088BB0EE408ADFED698A9FED689A64 +:101A2000DDED139A19EE900AEFF738FF41EC1A0B2F +:101A30009FED64BBBDF83A00042853EC1A2B6348B1 +:101A400024D16349EFF762FF53EC1B2BF0F788F8C2 +:101A5000FEF718FD0BEE100AB5EE408AF1EE10FA13 +:101A600038D453EC1A2B5D485A49EFF74FFF044620 +:101A70000D4618EE100AEFF711FF22462B46EFF73E +:101A800045FFFEF7FFFC09EE100A23E05249EFF78D +:101A90003DFF53EC1B2BF0F763F8FEF7F3FC0BEE66 +:101AA000100AB5EE408AF1EE10FA13D453EC1A2B5B +:101AB0004A484B49EFF72AFF04460D4618EE100A34 +:101AC000EFF7ECFE22462B46EFF720FFFEF7DAFC9D +:101AD00009EE100AF5EE409AF1EE10FA18D09DEDDD +:101AE0000D0AB5EE400AF1EE10FA11D010EE100A10 +:101AF000EFF7D4FE00223B4BEFF708FF02460B4600 +:101B000000203949F0F760F9FEF7BCFC08EE900AB6 +:101B10003BEE090A10EE100AEFF7C0FE334A384BCD +:101B2000EFF7F4FE04460D461598EFF7B7FE224690 +:101B30002B46EFF7EBFE04460D4618EE900AEFF742 +:101B4000ADFE22462B46EFF7E1FEFEF79BFC00EED2 +:101B5000100ABDEC088B30BC5DF814FBDFED240AE5 +:101B6000B4EE600AF1EE10FA03DBDFED260A30EE88 +:101B7000200A7047DFED1E0AB4EE600AF1EE10FA9B +:101B800003DBDFED200A30EE200A70471949884256 +:101B900001D31D4908187047D06F0020B471002090 +:101BA00034720020B47200206C7A0020BC780020CF +:101BB00034730020847B0020B81E85EB51B8AE3F03 +:101BC000000000000000000000000C409A99999964 +:101BD0009999C93FCCCCEC3F9999B93FCDCCCCCCAD +:101BE000CCCCFC3F00004E400000F03F7B14AE47E1 +:101BF0000124744981969800D46F00200000C841E8 +:101C0000E17A743F002474C9806967FF5044204E14 +:101C100041432025660000005044202D3E204F46C1 +:101C2000520000005044202D3E2057005044202DEB +:101C30003E20520050443A536574486569676874A1 +:101C40002025660050443A53657457656967687487 +:101C50002025660050443A53657447656E6465728A +:101C60002025640050443A20256420256420256402 +:101C70000000000050443A496E504654313030382C +:101C80005F3100000FB400B593B001208DF8030060 +:101C9000AA208DF801003C208DF802000020ADF84C +:101CA0004A000A208DF828000DF1290000A9202201 +:101CB000F3F706F800208DF820000320099008A80B +:101CC000F2F7F8FE012013B05DF814FB00B58BB0FD +:101CD0000020ADF82A000A208DF8080000208DF8B9 +:101CE00009008DF80A0001208DF800000320019002 +:101CF00000A8F2F7DFFE01200BB000BD38B5214887 +:101D0000046B00F037F8012810D101208DF8000095 +:101D100004F10C056A7D00A9E868E368C018F0F7D3 +:101D2000A6F90120A874002000F021F8012032BD9E +:101D300080B5F2F70BFE144908601449C0F8D013BF +:101D400000F5747012494160124981600FF20D0173 +:101D5000C1600FF24D010161012002BD0A48006817 +:101D600090F8C103002801D10020704705E00A491E +:101D700008707047084800787047084890F90000DC +:101D8000704700000000002038FE0020851C02087B +:101D9000CD1C0208FD1C020866FE002065FE002026 +:101DA00018B430220B7812FB030301241C700B784B +:101DB00012FB03035C700B7812FB030318249C7066 +:101DC0000B7812FB03000022C2700878401C0870D8 +:101DD00011BC05F0BCBF00000FB400B593B00120EA +:101DE0008DF80300AA208DF801003C208DF8020038 +:101DF0000020ADF84A000A208DF828000DF12900D6 +:101E000000A92022F2F75CFF00208DF820000320BB +:101E1000099008A8F2F74EFE012013B05DF814FBFC +:101E200000B58BB00020ADF82A000A208DF808001C +:101E300000208DF809008DF80A0001208DF80000BF +:101E40000320019000A8F2F735FE01200BB000BD81 +:101E500038B5002000902648446C00F039F801287D +:101E600012D1FBF76CFF009004F10C056A7D00A90C +:101E7000E868E368C018F0F7FAF80120A8740020B9 +:101E800000F023F8FBF75FFF012032BD80B5F2F7C9 +:101E90005DFD184908601849C0F8701400F27040E0 +:101EA00016494160164981600FF20D01C1600FF2C1 +:101EB0005D010161012002BD0E48006890F86104D7 +:101EC000002801D1002070470BE00E4908707047D0 +:101ED0000C480078704780B5002000F006F801201B +:101EE00002BD094890F90000704707490870704723 +:101EF0000000002034FE0020D91D0208211E020827 +:101F0000511E020864FE002063FE002018B4302237 +:101F10000B7812FB030301241C700B7812FB0303E4 +:101F20005C700B7812FB03031C249C700B7812FB73 +:101F300003000022C2700878401C087011BCCAE778 +:101F400038B50446AE4D00202865052068650020A0 +:101F500028646864A864E8649FEDAA0B85ED040B0F +:101F600085ED060B85ED080B85ED0A0B85ED0C0B59 +:101F700085ED0E0B6866A86605F16C00A8654FF448 +:101F8000B6720021F0F779F80C2200212846F0F70C +:101F900074F894ED020AB1EE401A94ED010AF1EEE4 +:101FA000400A94ED000A05F1440105F1400005F0F6 +:101FB000D1FF012032BD00002DE9F04D2DED068B43 +:101FC0000E468F4F0168396090ED010AB1EE400A6C +:101FD00087ED010A90ED020AB1EE400A87ED020A90 +:101FE0001E223946B86D06F0BEF9796D4A1EB86DED +:101FF0003B6D934227DA1E22591C09B206F0DCF928 +:1020000010EE100AEFF74AFCC7E90A011E22386DEC +:10201000411C09B2B86D06F0EDF910EE100AEFF7A9 +:102020003DFCC7E90C011E22386D411C09B2B86D98 +:1020300006F0FEF910EE100AEFF730FCC7E90E01CA +:10204000386D401C72E023D11E2209B206F0B4F9AB +:1020500010EE100AEFF722FCC7E90A011E22796D83 +:1020600009B2B86D06F0C6F910EE100AEFF716FCCB +:10207000C7E90C011E22796D09B2B86D06F0D8F9D6 +:1020800010EE100AEFF70AFCC7E90E01786D4DE07B +:102090001E2209B206F080F9F8651E220021B86DF3 +:1020A00006F07AF98046C7F86080FC6D2068EFF78B +:1020B000F5FB02460B46D7E90A01EFF7C5FD82465C +:1020C0008B46D8F80000EFF7E9FB52465B46EFF786 +:1020D00047FDC7E90A016068EFF7E0FB02460B46DF +:1020E000D7E90C01EFF7B0FD82468B46D8F8040023 +:1020F000EFF7D4FB52465B46EFF732FDC7E90C0120 +:10210000A068EFF7CBFB02460B46D7E90E01EFF7CD +:102110009BFD04460D46D8F80800EFF7BFFB2246AA +:102120002B46EFF71DFDC7E90E01786DEFF700FDB7 +:1021300041EC180BD7E90A0153EC182BEFF744FEDA +:1021400041EC190B87ED049BD7E90C0153EC182BDC +:10215000EFF73AFE41EC1A0B87ED08ABD7E90E0119 +:1021600053EC182BEFF730FE41EC100B87ED060B0C +:10217000FEF788F901EE100AB0EE418A51EC1A0B15 +:10218000FEF780F900EE900AB0EE481AB0EE608AD1 +:10219000F0EE418A51EC190BFEF774F900EE100ACB +:1021A000B0EE681AF0EE480A07F14C0107F148005A +:1021B00005F0D0FE386D401C38659FED120B87EDA1 +:1021C000040B87ED080B87ED060B396CB86C00F03B +:1021D0001DF804467C66796CF86C00F017F8B86658 +:1021E00004F12801512902D22830512802D30120BC +:1021F000307001E000203070BDEC068BBDE8F08D42 +:1022000010E600200000000000000000421AB52A7D +:1022100004DB081A00F5B470424205E012F1B40F75 +:1022200002DA00F5B470421A1046704738B5DFF88C +:10223000244594F82000012801D1002032BD204619 +:1022400006F09BFE204606F005FA0020E08306F02B +:1022500097FEDFF80455E56400206065142201460E +:1022600004F13000EFF709FF20220021DFF8EC0431 +:10227000EFF703FF20220021DFF8E404EFF7FDFE73 +:102280000020A065024605E0D42101FB00510A713F +:102290008A71401C0128F7DB0120606400F011F80E +:1022A000DFF8C004012180F83D10084606F0E4FD87 +:1022B0000020A064207706F007FE012084F82000AB +:1022C00032BD70B401460023DFF8882411E0D42524 +:1022D00004EB8304A46805FB040401262671D66D73 +:1022E00005FB0300807904EB8000006A3043D06571 +:1022F0005B1CDFF8700400EB4114DFF85C04257907 +:10230000AB42E4DB29465177237F1376002903D0C3 +:10231000DFF848345971D06470BC7047DFF834146A +:102320004A6D01EB82031863501C4865052803D3EE +:10233000401E486500207047012070470020DFF8EC +:10234000141402468A654A6D002A0BD00B6B8B650C +:10235000521E4A6504E001EB8002536B1363401C7C +:102360000428F8DB704738B50024DFF8E853287FED +:1023700006F0B6FD02E000F03CF8641C287E8442C2 +:10238000F9D331BD70B50C460025DFF8C863F17F85 +:102390004A1CF277332901D32946F177B17F03290B +:1023A00015D3016871624168B1628068F0622846A5 +:1023B00006F093FD307F401C3077317EC0B28842FA +:1023C00003D328463077FFF7CEFFFFF7B7FFB07F84 +:1023D000411CB177652801D33220B077B06D002859 +:1023E00005D0207001250A2801D10A202070284636 +:1023F00070BD2DE9F84300200146DFF85C430BE097 +:10240000D42202FB01421379002B04D0937902EB12 +:102410008302126A1043491C0129F1DB06F079FDA1 +:10242000CC4D06F09CFD28650020A86506463FE0DF +:10243000D42202FB06F707EB040898F804000028F2 +:1024400035D0304600F049F8D5F8509098F806009D +:1024500008EB8000006AD9F8001008421ED098F8F6 +:10246000060008EB8000406B002806D098F80600B4 +:1024700008EB8000406BFFF751FF98F80600401C06 +:1024800088F8060098F80510C0B2884206D3B34811 +:10249000395940F82610002088F80600D9F8400085 +:1024A000002804D0D9F800100843C9F80000761CB1 +:1024B000012EBDDB286D006806F053FDA86C411CA1 +:1024C000A964B0F57A7F01D90020A864A448A34983 +:1024D0002022BDE8F843F2F703BCF0B59D4C256D12 +:1024E00000212964D4219C4A01FB00208179C1EBA1 +:1024F000C10200EB820600EB8107386A022846D150 +:10250000B06C012843D1306D022808D1686B0328D4 +:1025100003DAF06D401CF06501E00020F065306DDD +:10252000042808D1686B052803DAF06D401CF065BB +:1025300001E00020F065306D082808D1686B08289C +:1025400003DBF06D401CF06501E00020F065306DAC +:10255000102808D1686B102803DBF06D401CF06573 +:1025600001E00020F065F06C142190FBF1F0F16DBA +:10257000814206DA2868396A88432860386A286404 +:1025800005E00020F0652868396A08432860386A49 +:10259000012861D196F84800C0075DD5F06C41076D +:1025A0001ED594ED0B0AF9EE000AB4EE600AF1EEC6 +:1025B00010FA09D540F22310A9699131814203D361 +:1025C000E969913181423DD20020F065F06D052826 +:1025D0003CDA2868396A88432860386A2864F0BD84 +:1025E00081070FD594ED0B0AB5EE400AF1EE10FA13 +:1025F000EADDA8695A30B528E6D2E8695A30B5282C +:1026000020D3E1E7C006E1D5E06AEFF747F921F012 +:1026100000410122544BEFF7FBFCD5D8606AEFF77D +:102620003DF921F000410022504BEFF709FDCBD2DC +:10263000A06AEFF733F921F0004100224B4BEFF78E +:10264000FFFCC1D2F06D401CF065BFE70020F065D3 +:102650002868396A08432860F0BD000010B43D497D +:10266000CA68002A04D14FF48062CA600A614A61D4 +:102670009FED370AD1ED040AF8EE600A91ED0A1ACF +:1026800060EE810AC0EE800A91ED011AB8EE411A9F +:1026900070EE810AFDEEE00A10EE902AD1ED050AF7 +:1026A000F8EE600A91ED0B1A60EE810AC0EE800A26 +:1026B00091ED021AB8EE411A70EE810AFDEEE00AC1 +:1026C00010EE903AB0F9024000EB4404D1ED030A59 +:1026D000F8EE600A91ED091A60EE810A80EE800A38 +:1026E000D1ED000AF8EE600A30EE200ABDEEC00A15 +:1026F00010EE101AA180B0F9021000EB4101CA805F +:10270000B0F9021000EB41010B814188491C418066 +:1027100009B21E2901DB1D214180012010BC704738 +:1027200010B5002006E0D4210B4A01FB0021002255 +:102730000A71401C0128F6DB064C002060646077BB +:1027400006F0C4FB0020E06584F8200010BD000006 +:10275000C3F51C415C780020B4350020F87A0020D5 +:10276000187B0020FC360020000021400000F83FCC +:1027700010B5C04C002020606060A0602062052081 +:1027800060620020A061E061A062E062206360639B +:10279000A063E0636064A06404F14C0020644FF423 +:1027A000B6720021EFF769FC0C22002104F10C0045 +:1027B000BDE81040EFF761BC70B506460C46AD4D64 +:1027C000A86C401CA864304600F01DF8002808D012 +:1027D000304600F0E7F8002803D0686C401C6864BD +:1027E00001E000206864A86C0F280ADA686C0B28E6 +:1027F00003DB01202070022070BD0020207001202A +:1028000070BD032070BD38B59A4C0168E16090ED51 +:10281000010AB1EE400A84ED040A90ED020AB1EE1D +:10282000400A84ED050A0A2204F10C01206C05F02F +:102830009AFD616A4A1E206C236A93421DDA0A22BD +:10284000591C09B205F0B8FD84ED0D0A0A22206A70 +:10285000411C09B2206C05F0CDFD84ED0E0A0A2260 +:10286000206A411C09B2206C05F0E2FD84ED0F0ADC +:10287000206A401C00EE100A49E018D10A2209B271 +:1028800005F09AFD84ED0D0A0A22616A09B2206CF6 +:1028900005F0B0FD84ED0E0A0A22616A09B2206CCF +:1028A00005F0C6FD84ED0F0A94ED090A2FE00A2217 +:1028B00009B205F071FD05460A220021206C05F0E1 +:1028C0006BFD94ED0D0AD5ED000A30EE600AD0EDF7 +:1028D000000A30EE200A84ED0D0A94ED0E0AD5EDC3 +:1028E000010A30EE600AD0ED010A30EE200A84EDD4 +:1028F0000E0A94ED0F0AD5ED020A30EE600AD0ED13 +:10290000020A30EE200A84ED0F0A94ED090AB8EEAF +:10291000C01A94ED0D0A80EE010A84ED0A0AD4ED86 +:102920000E0AC0EE810AC4ED0C0AD4ED0F1A81EE36 +:10293000811A84ED0B1A04F11C0104F1180005F052 +:1029400009FB206A401C20620020A0622063E06234 +:10295000A069002804D400EE100AB8EEC00A04E012 +:10296000404200EE100AB8EEC00AF3EE090AB4EED7 +:10297000600AF1EE10FA13D5E069002804D400EEE5 +:10298000100AB8EEC00A04E0404200EE100AB8EEA9 +:10299000C00AB4EE600AF1EE10FA01D5012032BD92 +:1029A000002032BD0021334A92ED000AB5EE400A04 +:1029B000F1EE10FA15D1D2ED010AF5EE400AF1EE72 +:1029C00010FA0ED1D2ED020AF5EE400AF1EE10FA3D +:1029D00007D10168116041685160806890600020F3 +:1029E0007047D0ED000A30EEC00A90ED011AD2ED2A +:1029F000011A31EE611AD0ED021A92ED022A71EE3F +:102A0000C21AB5EE400AF1EE10FA01DAB1EE400A50 +:102A1000B5EE002AB4EE420AF1EE10FA1AD5B5EE80 +:102A2000401AF1EE10FA01DAB1EE411AB5EE000AE1 +:102A3000B4EE401AF1EE10FA0CD5F5EE401AF1EEB4 +:102A400010FA01DAF1EE611AF4EE401AF1EE10FA22 +:102A500000D50121C2ED000A436853608068906090 +:102A6000084670470348002101604160816041646D +:102A700081647047BCE9002010B500F034FB00F021 +:102A80009AFB00240DE020469FED151ADFED140A95 +:102A90009FED130A00F0BCFE2146052000F0C5FEA4 +:102AA000641C1E2CEFD3DFF8640D0021017001635C +:102AB00041638163C16301644164816405214171A3 +:102AC0000A210171002141708170C1620A21817166 +:102AD0000021C17010BDDFF8341DC87070470000C0 +:102AE000000000002DE9F0472DED048BB0EE408A88 +:102AF000F0EE608AB0EE419ADFF8344DE0780128BC +:102B000001D1002500E0052526781E2E09D2304689 +:102B100000F07EFE3146284600F087FE701C2070D3 +:102B200027E0002616E0DFF80C1D01EB8602304698 +:102B300092ED3D1AD2ED1F0A01EB860191ED010ADB +:102B400000F066FE3146DFF8F00C3018407800F0F7 +:102B50006CFE761C1D2EE6DB1D20B0EE491AF0EE51 +:102B6000680AB0EE480A00F053FE1D21284600F026 +:102B70005CFEDFF8C89C032D08DA606B401C6063C4 +:102B800048450BD3DFF8B80C606307E0206B401CAE +:102B90002063484502D3DFF8A80C206300F0BAFD9B +:102BA000B0EE408A00F07EFDF0EE408A00F012FBAD +:102BB000D4F830809FEDA09B4046EEF7C3FF53EC66 +:102BC000192BEEF7A3FEEEF795FF0646E76B3846A6 +:102BD000EEF7B8FF53EC192BEEF798FEEEF78AFFED +:102BE000824620790A2802D0142846D05CE09FED66 +:102BF000940AB4EE408AF1EE10FA0CD5F4EE408A55 +:102C0000F1EE10FA07D5032D05DA142020717808AB +:102C100000F0F4FB48E0781CE063484502D3DFF89D +:102C2000200CE063042D3FDB00F066FAE06A012827 +:102C30003AD1B6F57A7F37D994ED090AB5EE400A54 +:102C4000F1EE10FA01DCB1EE400ADFED7E0AB4EEDF +:102C5000600AF1EE10FA0DDA94ED0A0AB5EE400AB8 +:102C6000F1EE10FA01DCB1EE400AB4EE600AF1EECA +:102C700010FA19DB0020E06216E09FED710AB4EE55 +:102C8000408AF1EE10FA04DAF4EE408AF1EE10FA1E +:102C900002DB0A20207107E0A06B401CA0634845BE +:102CA00002D3DFF89C0BA0630020607060790228DB +:102CB0000AD0C0F05B8104281BD074D3062800F032 +:102CC0000381C0F0E68051E1032D0FDA606B01282B +:102CD00002D12079A07149E10A2840F047810420FF +:102CE000607100F0FDFB002020633FE10020606385 +:102CF0003CE1E06A012832D1207900F049F901284D +:102D00002DD140F2E930864201D2002E22D18245F7 +:102D100002D2BAF1000F1DD194ED090AB5EE400AB6 +:102D2000F1EE10FA01DCB1EE400ADFED460AB4EE36 +:102D3000600AF1EE10FA10D594ED0A0AB5EE400AD9 +:102D4000F1EE10FA01DCB1EE400AB4EE600AF1EEE9 +:102D500010FA02D5A078607001E00020E062E06A1D +:102D6000002814D1B6F5C87F01D8002E08D1A0786C +:102D7000002808D0BAF1FB0F05D2BAF1000F02D03B +:102D8000A078607003E0207900F048F960700320BB +:102D900060716078A070002020636063A063E063CE +:102DA00000F022FBE2E0042D17DBB8F1010F02D1A5 +:102DB00000F001FADAE0B8F1060FC0F0D780002188 +:102DC000404600F0D5FAA078032802D10020E06246 +:102DD00062E000F0E1FCE0625EE000202063207928 +:102DE0000A2853D1E06B0A28C0F0C080002100F00F +:102DF000BFFAA07800F0D0FCE06294ED130AB5EEC3 +:102E0000400AF1EE10FA02DDF0EE400A01E0F1EEC8 +:102E1000400A9FEDB81AF4EE410AF1EE10FAC0F242 +:102E2000A580D4ED140AF5EE400AF1EE10FA0BDDA0 +:102E3000F0EE601A0AE000BF00000000000034401D +:102E40009A99193F00002042F1EE601AF4EE411AFF +:102E5000F1EE10FAC0F28A80F5EE400AF1EE10FAB7 +:102E600001DCF1EE600AB5EE400AF1EE10FA01DC89 +:102E7000B1EE400AF4EE400AF1EE10FA76D50520E4 +:102E8000607100F098F90020A0636FE00020E0631B +:102E90006CE0B8F1060F04D302206071002060637B +:102EA00064E0A06B012805D1E06B00F0A7FA20795F +:102EB000A0715BE0052859D3606B052856D3062026 +:102EC00060710020206351E0207914284ED1E06A1F +:102ED00001282DD140F2E930864201D2002E22D1C4 +:102EE000824502D2BAF1000F1DD194ED090AB5EE68 +:102EF000400AF1EE10FA01DCB1EE400ADFEDB30A50 +:102F0000B4EE600AF1EE10FA10D594ED0A0AB5EEAF +:102F1000400AF1EE10FA01DCB1EE400AB4EE600AAC +:102F2000F1EE10FA02D5A078607001E00020E062B6 +:102F3000E06A002811D140F29110864201D2002EA1 +:102F400004D1824505D2BAF1000F02D0A07860709A +:102F500003E0A07900F062F860700320607160788F +:102F6000A070002020636063E063A06360780128A4 +:102F700001D1012008E0022801D1022004E0032849 +:102F800001D1032000E00020BDEC048BBDE8F087F8 +:102F900000B52DED048B81B000210A2808D1DFF89F +:102FA0006C0890ED100A90ED118AD0ED128A11E0B4 +:102FB000142808D1DFF8540890ED150A90ED168A10 +:102FC000D0ED178A06E09FED820A9FED818ADFED42 +:102FD000808A032103291CD29FEDD59A00F03AFC88 +:102FE000B4EE490AF1EE10FA11D5B0EE480A00F03D +:102FF00031FCB4EE490AF1EE10FA08D5B0EE680AD9 +:1030000000F028FCB4EE490AF1EE10FA01D40120D8 +:1030100000E0002001B0BDEC048B00BD00210A28B7 +:103020000AD1DFF8E807D0ED100A90ED111AD0EDC3 +:10303000121A9FED670A13E014280AD1DFF8CC07B3 +:10304000D0ED150A90ED161AD0ED171A9FEDC50AAE +:1030500006E0DFED5F0A9FED5E1ADFED5D1A0321EA +:1030600003293ED2B4EE600AF1EE10FA0BD59FEDC3 +:10307000BE2AB4EE421AF1EE10FA04D5F4EE421A6A +:10308000F1EE10FA2AD4B4EE600AF1EE10FA0BD584 +:103090009FEDB62AB4EE421AF1EE10FA04DBF4EE1C +:1030A000421AF1EE10FA0BDAB4EE600AF1EE10FA01 +:1030B00008D59FEDCC1AF4EE411AF1EE10FA01DBBF +:1030C00001210EE0B4EE600AF1EE10FA08D59FED92 +:1030D000CA0AF4EE401AF1EE10FA01D5022100E01E +:1030E000032108467047DFF8240700218160C16092 +:1030F000016170470100C03F10B52DED068BDFF870 +:103100000C4794ED050AB5EE400AF1EE10FA13D122 +:1031100094ED060AB5EE400AF1EE10FA0CD194EDEA +:10312000070AB5EE400AF1EE10FA05D1A068606119 +:10313000E068A0612069E06194ED028A94ED050ADF +:1031400038EE400A00F0F6F8F0EE408A94ED039A6B +:1031500094ED060A39EE400A00F0ECF8F0EE409AE1 +:1031600094ED04AA94ED070A3AEE400A00F0E2F862 +:10317000F0EE40AA94ED080A30EE280A00F0DAF8E2 +:1031800084ED080A94ED090A30EE290A00F0D2F81D +:1031900084ED090A94ED0A0A30EE2A0A00F0CAF812 +:1031A00084ED0A0A84ED058A84ED069A84ED07AA67 +:1031B000BDEC068B10BDDFF85406002101624162B0 +:1031C000816241618161C16170470000000020425D +:1031D00000000000F0B52DED068B83B01D2100A886 +:1031E00000F006FB9DED000AB5EE400AF1EE10FA84 +:1031F00001DCB1EE400ADFEDB00AB4EE600AF1EE98 +:1032000010FA01D50020009000AE96ED010AB5EE4F :10321000400AF1EE10FA01DCB1EE400AB4EE600AA9 -:10322000F1EE10FA01D50020B0609FED9C8B9FED70 -:103230009D9B9FED9EABDFF8D875B868EEF720FB3D -:1032400004460D460098EEF71BFB53EC1A2BEEF7E5 -:103250004FFB53EC192BEEF7A9FD53EC182BEEF7AF -:1032600047FB22462B46EEF76DFCFDF7FBF800EE20 -:10327000100A87ED020A00F04DF887ED020AF8689F -:10328000EEF7FEFA04460D467068EEF7F9FA53ECD5 -:103290001A2BEEF72DFB53EC192BEEF787FD53ECB1 -:1032A000182BEEF725FB22462B46EEF74BFCFDF7DD -:1032B000D9F800EE100A87ED030A00F02BF887ED2D -:1032C000030A3869EEF7DCFA04460D46B068EEF7FB -:1032D000D7FA53EC1A2BEEF70BFB53EC192BEEF746 -:1032E00065FD53EC182BEEF703FB22462B46EEF759 -:1032F00029FCFDF7B7F800EE100A87ED040A00F08C -:1033000009F887ED040A03B0BDEC068BF0BD0000A0 -:103310009A99993EDFED670AB4EE600AF1EE10FA71 -:1033200004DBDFED650A30EE200A7047DFED630A4B -:10333000B4EE600AF1EE10FA03D5DFEDD00A30EEFC -:10334000200A70479A9999BECCCCCCBDCDCCCC3D4F -:1033500010B49FEDCB0ADFEDCA0A1F2801D31E204F -:1033600000E0C0B20022DFF8AC440EE0C2F11D0361 -:10337000DBB204EB830393ED1E1A30EE010A93EDEA -:103380003C1A70EE810A521CD2B2824209DA00293C -:1033900002D1C2F11D03EBE70129E7D1C2F1180305 -:1033A000E6E701EE100AB8EE411ADFF8640480EE99 -:1033B000010A80ED130A80EE810A80ED140A10BC28 -:1033C00070470000CDCCCC3EDFF8440400214165BD -:1033D0008165C16570470000CCCCCCBE30B49FED98 -:1033E000A80ADFEDA70A9FEDA61A1F2801D31D200A -:1033F00001E0401EC0B200210DE030EE210A02EBD8 -:103400008302D2ED1E1A70EEA10AD2ED3C1A31EE03 -:10341000211A491C89B2DFF8D44381422ADA227882 -:103420001E2A03D2521A531EDBB202E0C1F11D0361 -:10343000DBB2DFF8E02352F8235001EE905A02EBA2 -:10344000830555F8045C02EE105A71EEC22A9FED16 -:10345000C93AF4EE432AF1EE10FACEDBF5EE401A4B -:10346000F1EE10FAC9DDB5EE402AF1EE10FAC4D53E -:103470000B29C2DB01EE901AF8EE611A80EE210AE8 -:1034800084ED150A80EEA10A84ED160A81EE210A68 -:1034900084ED170A30BC70470BD7233DF8C1631A7F -:1034A000DCA54C400000000000408F400000000000 -:1034B00000003440010034430000B4C3000034C3B2 -:1034C000F0B4DFEDC92AB0EE620AB0EE622ADFED99 -:1034D0006C0A9FED6B1ADFED6A1ACD4801781E2940 -:1034E00000D31E21026B914204D201EBD172521023 -:1034F000D2B201E05208D2B200230DE0B1EE633A3D -:10350000B4EE443AF1EE10FA05DB71EEA31AB7EE11 -:10351000003A32EE032A5B1CDBB2934280F29F80BA -:10352000CC1A641EE4B225466E1EF6B2B94D55F8AB -:10353000267003EE107A05EB8407D7ED003A05EB11 -:10354000860797ED004A73EEC43AF5EE403AF1EE85 -:1035500010FA05EB8407D7ED003A02DD33EEC33AEB -:1035600001E033EE633A05EB8606D6ED1E3A97EDA1 -:103570001E4AD6ED1E4A34EE644AB5EE404AF1EEDC -:1035800010FA97ED1E4A02DD74EE633A01E073EE25 -:10359000C43A06F1780C9CED1E4A07F17806D6ED88 -:1035A0001E4A9CED1E5A74EEC54AF5EE404AF1EEF5 -:1035B00010FAD6ED1E4A02DD34EEC44A01E034EEC4 -:1035C000644ADFED984AB4EE643AF1EE10FA09DB92 -:1035D000F4EE643AF1EE10FA04DBB4EE644AF1EE74 -:1035E00010FA3CDA55F8244003EE104AB5EE403AA2 -:1035F000F1EE10FA02DDF0EE433A01E0F1EE433A6B -:103600009FED894AF4EE443AF1EE10FA05DB70EED4 -:10361000830AB7EE003A30EE030A97ED1E3AB5EE94 -:10362000403AF1EE10FA02DDF0EE433A01E0F1EE3D -:10363000433AF4EE443AF1EE10FA05DB31EE031AA8 -:10364000B7EE003A72EE832AD6ED1E3AF5EE403A16 -:10365000F1EE10FA7FF752AFB0EE633A50E780EE2A -:10366000800A80ED100A81EE220A80ED110A81EEB7 -:10367000820A80ED120AF0BC704700000000B443DB -:103680000000000010B52DED028B9FED688A00242C -:1036900026E0C4F11D00C0B25E4901EB800202F1D8 -:1036A000780393ED1E0AD2ED1E0A51F8200001EEB8 -:1036B000100A21EE011A00EEA01A00EE001A11EE17 -:1036C000100AEEF7DDF841EC100B05F061FC51EC4F -:1036D000100BFCF7C7FE00EE100A38EE008A641CDF -:1036E000062CD6D3B1EE080A88EE000ABDEC028B98 -:1036F00010BD000010B52DED028B9FED4C8ADFED63 -:103700004B8A002428E0C4F11D00C0B2414901EBFE -:10371000800202F1780393ED1E0AD2ED1E0A51F8E1 -:10372000200001EE100A21EE011A00EEA01A00EEB0 -:10373000001A11EE100AEEF7A3F841EC100B05F099 -:1037400027FC51EC100BFCF78DFE00EE100A38EE52 -:10375000008A40EE008A641C062CD4D3B1EE080A1D -:10376000C8EE000A88EE800A00EEE00ABDEC028B8B -:1037700010BD00009A99993E0121022812D19FEDB7 -:103780002C0A2348D0ED130AF4EE400AF1EE10FAA9 -:103790001CDBD0ED140AF4EE400AF1EE10FA15DB52 -:1037A000002113E0012811D1194890ED130AFEEE13 -:1037B000000AB4EE600AF1EE10FA07D590ED140A93 -:1037C000B4EE600AF1EE10FA00D500210846704709 -:1037D000104A52F82130036002EB81018A6F426087 -:1037E000D1F8F01081607047BD3786357CF9002034 -:1037F000C0B2084901EB800282ED000A01EB8000B3 -:10380000C0ED1E0A80ED3C1A7047034A8854704789 -:103810007CF9002008EF002090FC002041420F00BE -:1038200040420F000100A040CDCC4C3D0000000004 -:103830000100003FB5EE400AF1EE10FA03D5FFEEAD -:10384000000A20EE200A704710B5044602E0C06866 -:10385000EFF768FDEFF7A7FC20680028F7D10448D0 -:103860004078002804BFBDE81040EFF796BC10BDBB -:1038700024380020012005F00BBC00000649086830 -:1038800008B100207047054808600549C908C9000B -:10389000091A0160704700BF4CFE0020009C002008 -:1038A00000AC00200CB41CB5044604A801900094A0 -:1038B00001AB0A4600A9074878441830F7F716FA12 -:1038C000009900220A7000285CBF0098001B16BCFB -:1038D0005DF80CFB37E2FEFF10B50024ECF7A6FB09 -:1038E000002800D00124204610BD000038B500207B -:1038F0000246DFF8C84403E004EB80018A63401C01 -:103900000928F9DB1046E066A0666420206060604C -:10391000DFF8AC04A060B5EE000A84ED030A84ED84 -:10392000040A84ED050A84ED060A84ED070ADFF82F -:103930009404206205206062A062104603E004EB5C -:1039400080018A63401C0928F9DB10466067A06784 -:10395000E06704F180057C2201462846EEF77FFBF4 -:103960000C22002104F12C00EEF779FB256731BD14 -:103970002DE9F04106460F4690461C46DFF83C54C0 -:1039800085ED0B0AF1EE601AC5ED0C1AB1EE410A95 -:1039900085ED0D0A0A2205F12C01286F00F018FAB6 -:1039A00000F03EF81421022801D004280DD1A86FA0 -:1039B000401CA86798FBF1F2904202DB0020E86708 -:1039C0000CE0E86F401CE86708E0082801D01028E8 -:1039D00004D1E86F401CE8670020A86796FBF1F06F -:1039E000AA6F824201DB0120686797FBF1F0E96F63 -:1039F000814201DB02206867686F012803D002283A -:103A000001D000206867696F080005D0217000218F -:103A1000A967E967696701E000212170BDE8F081CD -:103A20002DE9F0432DED048B87B09FEDA98ADFF8D7 -:103A30008C43002020666066E06E461CE666A76E3A -:103A4000DFF884530A2F41DAD4F870900A2200215B -:103A5000484600F0D6F980460A220121484600F087 -:103A6000D0F904EB870106EB860292008A63012FEE -:103A70002ADB98ED000AD0ED000A30EE600A8DEDE9 -:103A8000030A98ED010AD0ED010A30EE600A03AA9C -:103A900082ED010AD8ED020A90ED021A70EEC10A19 -:103AA000C2ED020A05EB87009DED031ADDED031A56 -:103AB00021EE211A00EE001A00EEA01A80ED061A7F -:103AC0008A6B496B511AC163781CA0660A2E01DA11 -:103AD00003202867A06E0A28C0F2E280401EA0667C -:103AE0000A221146206F04F057FC85ED040A0A22D1 -:103AF0001146206F04F06EFC85ED050A0A2211467E -:103B0000206F04F085FC85ED060A002006E005EB39 -:103B10008001D1ED070A38EE208A401C0928F6DB27 -:103B2000F2EE040A95ED041A81EE201A8DED001ACA -:103B300095ED051AC1EE208A00A8C0ED018A80EE3D -:103B4000209A80ED029AE06E0A2805DB00986860F2 -:103B5000C5ED028A85ED039A00260FE00A22C6F120 -:103B6000090109B2206F00F04CF995ED031AD5ED6B -:103B7000020A95ED010A00F0ADF8761C0A2EEDDB85 -:103B8000606A216E88423ADAA06B2978002908D150 -:103B900068660121297000996960C5ED028A85ED8A -:103BA000039AA16A626E91420CDA697800290BD1FE -:103BB000A8660121697000996960C5ED028A85EDEA -:103BC000039A01E0002169702168AA6E821A91426D -:103BD00008D26A78002A05D00020A870E870012079 -:103BE00028674CE06A6E801A814246D22878002805 -:103BF00043D00020A870E870022028673FE00098BA -:103C00006860C5ED028A85ED039A0020287068700F -:103C1000A878002801D10120A8709FED660A28EE3F -:103C2000000AB5EE400AF1EE10FA03DC9FED620ADD -:103C300028EE000AD4ED020AB3EE041A60EE810AFF -:103C4000F4EE400AF1EE10FA07D5E878002806D124 -:103C5000A06BE8660120E87001E00020E870606871 -:103C6000A0F5FA70A16BEA6E891A884205D2E8784D -:103C7000002802D00420286701E0032028670020E4 -:103C80000CE004EB8001CA6B8A63082805DA05EBB7 -:103C900080010A6ACA614A6C0A64401C0928F0DB88 -:103CA000286F012806D00DD3032807D004D3042899 -:103CB00006D007E0022006E0042004E0082002E02D -:103CC000102000E0002007B0BDEC048BBDE8F083BD -:103CD00000000000D0ED001A31EEC00A3B4981ED32 -:103CE000000AD0ED011A71EEE00AC1ED010AD0ED33 -:103CF000021A31EEC11A81ED021AB5EE400AF1EE58 -:103D000010FA03D5B1EE400A81ED000AF5EE400A43 -:103D1000F1EE10FA03D5B1EE600A81ED010AB5EEBD -:103D2000401AF1EE10FA03D5B1EE410A81ED020A14 -:103D300091ED000A2148D0ED030AB4EE600AF1EEDD -:103D400010FA13D5D1ED010A90ED041AF4EE410AF0 -:103D5000F1EE10FA0AD5D1ED020A90ED051AF4EE53 -:103D6000410AF1EE10FA01D5012200E00022D0ED67 -:103D7000060AB4EE600AF1EE10FA13D591ED010ACD -:103D8000D0ED070AB4EE600AF1EE10FA0AD591ED13 -:103D9000020AD0ED080AB4EE600AF1EE10FA01D57D -:103DA000012100E00021036ED2180266426E8918DC -:103DB0004166704700007A4400007AC4A8F10020F0 -:103DC000000040413333B33EC8CA00206CFD0020E0 -:103DD0000388934201D30023038003885B1C038084 -:103DE0009BB2934201D300220280028802EB42037D -:103DF00000EB8300001D91EC030A80EC030A012014 -:103E00007047B0F90030591A09B2002901D511FAEA -:103E100082F109B201EB410200EB8200001D704704 -:103E20002DE9F04154220021DFF8AC0AEEF717F932 -:103E3000DFF8A84A0C2200212046EEF710F91C22D8 -:103E4000002104F11000EEF70AF91C22002104F110 -:103E50002C00EEF704F9DFF8885A002028644FF4AC -:103E60007A720146DFF87C0AEEF7F9F84FF47A72BD -:103E70000021DFF84C0CEEF7F2F80020A064686433 -:103E8000DFF8406CB062F0623063A8647063B063C6 -:103E9000DFF8347C7863E864E064286501206865B5 -:103EA0000020F063A8654FF0FF30E8652866002029 -:103EB00068663064B863A866F8637064B064F064E0 -:103EC0001C22014606F15000EEF7C9F80020E86612 -:103ED00008220146281DEEF7C2F82822002105F12C -:103EE0000C00EEF7BCF842F21070288468840020C1 -:103EF00028836883E8600C2201463046EEF7AFF86D -:103F0000DFF8FC0B7060DFF8FC0B30604FF0FF3027 -:103F1000308100202870A886E886288768873C22A0 -:103F20000146DFF8140CEEF79AF800202065F066E1 -:103F3000A0816065A887E88770673067286705F10A -:103F40008408282205F10C014046EEF782F8C4F8F7 -:103F5000588000206867A8673864B067F0677864A5 -:103F6000C5F88000E86760662066E065012020678C -:103F7000E066A0660020E067A0676067282201462F -:103F80003846EEF76CF80C22002106F11C00EEF723 -:103F900066F80C22002107F12800EEF760F81022E5 -:103FA000002106F10C00BDE8F041EEF758B810B55D -:103FB00084B0DFF8104B0C22214600A8EEF749F838 -:103FC000FFF72EFF0C2200A92046EEF742F81FBD96 -:103FD0002DE9F04F2DED0C8B83B00020029082462E -:103FE0000446DFF8E45A95ED118AD5ED0E8AC5ED49 -:103FF000118ADFF8D06AD6ED109AC5ED0E9ADFF877 -:10400000E07897ED199AB8EE490ADFEDB70A80EE2D -:1040100080AA86ED10AAD7F84CB0F86DABEB000083 -:10402000FA30FA21B0FBF1F201FB12091FFA89F90B -:10403000B9F14C0F02DA786D012807D12046B88714 -:10404000F887DFF898080221C181AAE1D7F85880E3 -:10405000B8F1040F32D3F4EE698AF1EE10FA2DD5DF -:10406000F4EE4A9AF1EE10FA28D51AEE100AEDF79E -:1040700007FC02460B46CDE9002318EE900AEDF747 -:10408000FFFBDFF8842ADFF8843AEDF731FCDDE945 -:104090000023EDF7C7FF11D29FEDDD0AB4EE40AA71 -:1040A000F1EE10FA0ADBC6ED109AC5ED0E8A85ED29 -:1040B000118ADFF828080321C181A3E1D6ED0AAAFD -:1040C000C6ED0BAA96ED0DBA86ED0EBA484600EE87 -:1040D000100AB8EE400AD7ED110AC0EE800A97ED3B -:1040E000121A81EE001A2046B0627063F86D214604 -:1040F00021E0401C80B2FA2800D12046DFF8E427F6 -:1041000002EB8002D2ED001A71EEE01A96ED0A2A57 -:1041100001EEA12A86ED0A2ADFF8A42902EB80022B -:10412000D2ED001A71EEC11A96ED0D2A01EEA12A08 -:1041300086ED0D2A491C89B24945DADBD6ED0A0A1B -:10414000C0EE80BAC6ED0ABAD6ED0D0A80EE80CA7E -:1041500086ED0DCAD6ED1FCAC5ED10CA97ED1D0A32 -:10416000D7ED1E0A30EE60DA86ED1FDA00F04CFB68 -:10417000012803D12046B887F88712E1B8F1000F73 -:104180000AD1F88FB98F10FA81F2052A04DB44189E -:104190005046B887F88705E0B8F1000F02D02046F6 -:1041A000B887F88718FA84F0002832D19FEDA28BE7 -:1041B0003CEE0B0A10EE100AEDF762FB53EC182BE5 -:1041C000EDF796FB5246DFF8283CEDF72BFF16D3B0 -:1041D0003BEEAA0A10EE100AEDF752FB53EC182B37 -:1041E000EDF786FB5246DFF80C3CEDF71BFF06D3DC -:1041F000B3EE040AB4EE40DAF1EE10FA09D5B88F46 -:10420000401CB887C7F860B0DFF8D0060621C1812E -:10421000C7E0B88F002810D08CEE0B0AF0EE080A29 -:10422000B4EE600AF1EE10FA05D5032805D304199F -:104230005046B88701E05046B88718FA84F0002845 -:104240001DD1B7EE000AB4EE40AAF1EE10FA04D583 -:10425000DFF888060721C181A3E09FED790AB4EE5B -:1042600040AAF1EE10FA0ADBF88F022806D2401CB1 -:10427000F887DFF868060821C18192E004195046EA -:10428000F887B0EE6B1AF0EE4C0AB0EE4A0A4946D7 -:10429000A4B2204600F034FB012808D1C6ED109AE4 -:1042A00086ED0DBAC6ED1FCAC6ED0AAA79E09FEDEC -:1042B000650AB4EE40AAF1EE10FA02DBDFF8440C16 -:1042C00030645046B887B8F1000F0FD196ED100A50 -:1042D00087ED1A0A85ED0F0AC6ED0CBA85ED0DCAF9 -:1042E00086ED1EDA4FE000BF00007A44B6EE008A89 -:1042F00000F030FA012818D196ED100AF0EE000A0D -:1043000020EE200A86ED100A4FF0010A6BEE880AB3 -:10431000C6ED0A0A2CEE081A86ED0D1AC6ED0B0A38 -:1043200086ED0E1A85ED0E0A641C96ED100AD5ED89 -:104330000E0A70EE200A60EE880AC7ED1A0A96EDA2 -:104340000A1AD6ED0B1A31EE211A21EE081A86ED63 -:104350000C1A96ED0D1AD6ED0E1A31EE211A21EE39 -:10436000081A85ED0D1AB4EE600AF1EE10FA02D4C7 -:10437000BAF1010F01D185ED0F0A3CEE8D0A20EE56 -:10438000080A86ED1E0A204680B200F05DF800F0B3 -:104390009DFBF86000F03EF8C7F860B00120029085 -:1043A00038670298012802D10120288003E0DFF855 -:1043B0002C05C0892880A4B26C6085ED029AA5F80E -:1043C0000C90788FE881B06A2861706B6861306CFE -:1043D000A861306BE861686B2862B86E6862C7F8E4 -:1043E0005CB0002078667864B86478651022014675 -:1043F00006F10C00EDF733FE0C22002106F11C0043 -:10440000EDF72DFE029803B0BDEC0C8BBDE8F08FEC -:1044100001004040DFF8C804DFF8A816CA6B02614B -:104420004A6C42628A6C8262CA6CC262826E42616B -:10443000096F016370470000000000000000E03FCA -:10444000676616400100A0402DE9F0472DED068B70 -:10445000824600200146DFF86C46DFF88454BAF14A -:10446000000F1CD0E66B721E02F00702521906F014 -:1044700007035B191B791371AF6D7A1E0723B2FB1B -:10448000F3F6C6EBC606921B04EB8202B7FBF3F30E -:10449000C3EBC303FB1A04EB83031B6D136595ED9C -:1044A0001A8AB0EE040AB4EE408AF1EE10FA08D48B -:1044B00094ED1B0AF0EE080AB4EE600AF1EE10FA71 -:1044C00002D503222A8301E004222A83E66B06F048 -:1044D000070252192B8B1371024603E0032B00D104 -:1044E000491C521C082A06DA531993F90430042B8C -:1044F000F4D1401CF5E780B210FA81F101EBD171E3 -:104500004910814202DA0420688301E003206883B5 -:10451000F0EE489AB7EE080AB4EE408AF1EE10FACF -:1045200002D5F7EE089A08E09FED890AB4EE408ABA -:10453000F1EE10FA01DBF1EE029A19EE900AEDF7B6 -:104540009FF941EC1A0B53EC1A2BDFF8480BDFF8FC -:10455000481BEDF7CDF9DFF8442BDFF8443BEDF7CE -:10456000F1FA8046894653EC1A2BDFF8380BDFF856 -:10457000381BEDF7BDF953EC1A2BEDF7B9F90246EC -:104580000B4640464946EDF751FBFBF76BFF00EE4B -:10459000100AD4ED010A20EE200A10EE100AEDF701 -:1045A0006FF9DFF8082BDFF8083BEDF7A1F9FBF70F -:1045B00059FF00EE100A84ED110AB4F90800022830 -:1045C00005D1DFED8F0A20EE200A84ED110AD4ED2B -:1045D000118A94ED120A30EE289A84ED129A28EE90 -:1045E000A90ADFED880A20EE200A84ED130AAF6DD8 -:1045F0000720B7FBF0F0C0EBC000381A04EB8000D6 -:1046000080ED140A0020E866072F20D209E004EBB1 -:10461000800191ED141A70EE810AC5ED1B0A401C51 -:1046200080B2D5ED1B0A8742F1D201EE100AB8EE36 -:10463000411AC0EE810AC5ED1B0A12E004EB8001AD -:1046400091ED141A70EE810AC5ED1B0A401CD5EDE0 -:104650001B0A0728F2DBB1EE0C1AC0EE810AC5ED89 -:104660001B0A10EE100AEDF70BF941EC100B9FED51 -:104670009EAB688B042853EC102BDFF8600C0BD139 -:10468000DFF86C1CEDF734F953EC1A2BEDF75AFAFE -:10469000FBF7E8FE60670AE0DFF8681CEDF728F931 -:1046A00053EC1A2BEDF74EFAFBF7DCFE6067606FF8 -:1046B000EDF7E6F8DFF8702CDFF8703CEDF718F94D -:1046C000804689462068EDF7DBF842464B46EDF719 -:1046D0000FF98046894618EE100AEDF7D1F800224E -:1046E000DFF8603CEDF704F902460B460020DFF8E6 -:1046F000641CEDF75BFB42464B46EDF7F9F8FBF720 -:10470000B1FE00EE100A84ED1D0AD4ED1C0A70EE15 -:10471000800AC4ED1C0A701CE063791CA965BAF11B -:10472000000F10D05044E0630AEB0100A86501EED1 -:1047300010AAB8EE411A01EE289A84ED129A41EEC1 -:10474000000AC4ED1C0ABDEC068BBDE8F087000032 -:1047500001009040F0B52DED028B0026D94F97ED6A -:10476000108AD948C06BEDF78BF84FF06632DFF84E -:10477000E83BEDF7BDF802460B4614461D4618EE21 -:10478000100AEDF77DF822462B46EDF74BFC05D2DB -:104790005348408F022801D3012617E09FED540AA9 -:1047A000B4EE408AF1EE10FA10D597ED060ADFED6F -:1047B000510AB4EE600AF1EE10FA07DBDFED4E0AA3 -:1047C000B4EE600AF1EE10FA00D5012697ED1B0A4F -:1047D000F0EE000AB4EE600AF1EE10FA0BD59FED90 -:1047E000470AB4EE408AF1EE10FA04DB3C48408FF1 -:1047F000032800D300263046BDEC028BF0BD00003C -:104800001EC47E3F0000704230B52DED048B0025A4 -:10481000AC4C3348408B03281ED294ED100ADFEDD8 -:10482000370AB4EE600AF1EE10FA15DB94ED0A0ACD -:10483000F2EE040AB4EE600AF1EE10FA0CD594ED33 -:104840000D0ADFEDB30AB4EE600AF1EE10FA03D5FB -:1048500022480421C181012594ED0D0AF3EE040ADA -:10486000B4EE600AF1EE10FA2ED49FEDAA8BD4EDCF -:104870000E0A30EE200A10EE100AEDF701F853ECA4 -:10488000182BEDF735F80022DFF8D43AEDF7CAFB24 -:104890001AD394ED0A9A94ED0B0A39EE000A10EE41 -:1048A000100AECF7EDFF53EC182BEDF721F800227E -:1048B000DFF8B03AEDF7B6FB06D3B2EE040AB4EE79 -:1048C000409AF1EE10FA03D504480521C181012573 -:1048D0002846BDEC048B30BDA4F200200CF800206B -:1048E0008CF40020A0D400200000000000000C4048 -:1048F0009A99993F010020420000C84201000040FF -:104900002DE9F0412DED028B08EE101A0026DFF89C -:10491000587AB96D4018DFF8AC8102281AD398EDA7 -:10492000100ADFED7E0AB4EE600AF1EE10FA11DB38 -:1049300098ED0E0AD8ED0D0A80EE200ADFED780A18 -:10494000B4EE600AF1EE10FA04DBDFF8201A092257 -:10495000CA81012602281CD39FED720AD8ED0E0AE7 -:1049600098ED0D1AC0EE810AF4EE400AF1EE10FA4D -:104970000FDBD8ED0B0A98ED0A1AC0EE810AF4EEAF -:10498000400AF1EE10FA04DBDFF8E0190A22CA81CE -:10499000012600281BD0D8F87800ECF771FF4FF003 -:1049A0003332DFF8CC39ECF7A3FF02460B4614464E -:1049B0001D46D8F87C00ECF763FF22462B46EDF746 -:1049C00031FB04D2DFF8A4090B21C181012698ED47 -:1049D000100ADFED550AB4EE600AF1EE10FA08DABB -:1049E00097ED1A0ADFED510AB4EE600AF1EE10FA03 -:1049F0001CDB98ED0D0ADFED4F0AB4EE600AF1EE14 -:104A000010FA0BD498ED0A0ADFED490AB4EE600AF9 -:104A1000F1EE10FA02D4788F022807D3788B03289E -:104A200004D3DFF848090C21C181012698ED0C0A56 -:104A3000DFED400AB4EE600AF1EE10FA08D498ED0A -:104A40001B0AF1EE040AB4EE600AF1EE10FA15D575 -:104A5000F86FD7F880100818EDF75CF80022DFF83F -:104A60001439ECF745FF0122DFF8F438EDF7C2FA0C -:104A700004D8DFF8F8080D21C1811646B8EEC80A3F -:104A80001148D8ED070AC0EE800AC0ED0A0AD8ED39 -:104A9000080AC0EE800AC0ED0B0AD8ED090A80EEC4 -:104AA000800A80ED0C0A0C2200F1280107F1AC000D -:104AB000EDF7CFFA3046BDEC028BBDE8F081000087 -:104AC00088D800208CF80020E8FA00200020DFF8C9 -:104AD000A818CA6B12F10A0F0FD29FEDC40AD1EDCC -:104AE000120AF4EE400AF1EE10FA06DAD1ED1C0AD1 -:104AF000F4EE400AF1EE10FA00DB012070470000EE -:104B00000000354300009042CDCCCCCCCCCCFC3F57 -:104B100000002042000000000000E03F0100604073 -:104B20000100A04001007041010090400100804060 -:104B3000000016430000C84374FB00202DE9F24F2B -:104B40000446002500F0C6FBDFF81C6828463067E5 -:104B50007067B067DFF81478F881204600F04CF9F0 -:104B60003078052805D10120706528463070F08620 -:104B70003087706EBDF8001010FA81F07066D6F8BC -:104B80004C80F06D804501D101207065D7F84C90C4 -:104B900009EB49004FEA800ADFF8E00721684AF88C -:104BA00000100AEB000B6068CBF80400A068CBF89B -:104BB0000800BDF80010204600F0A6F9F0619BED5A -:104BC000020ADBED010ADFF8B4075AF8000001EE33 -:104BD000100A21EE011A00EEA01A00EE001A11EEE2 -:104BE000100AECF74DFE41EC100B04F0D1F951EC3A -:104BF000100BFBF737FC00EE100AD6F850A0BAF104 -:104C0000000F0ED1284604E007EB800181ED040A75 -:104C1000401C0728F8D3F1EE0C0A60EE200AC6ED1E -:104C2000100A07EB8900D0ED040A70EE600A96EDD9 -:104C3000101A30EE811A86ED101A80ED040ADFF8A2 -:104C4000401701EB880181ED001A96ED110A30EE54 -:104C5000010A86ED110A90ED0B0A71EE400ADFF8A9 -:104C600024B70BEB8801C1ED000A80ED0B1A96ED1D -:104C7000120A30EE200A86ED120A94EC031A87EC31 -:104C8000031AB08E401CB0863178012901D0032967 -:104C900030D180B2022822D2718B04291FD2B06D8C -:104CA000002857D197ED120A9FED951AB4EE410AEC -:104CB000F1EE10FA04D5F4EE410AF1EE10FA0BDA37 -:104CC000B9EE0C1AB4EE410AF1EE10FA42DBF4EE42 -:104CD000410AF1EE10FA3DD5012070653AE027282F -:104CE00008D3F18E002903D010FA81F04B2801DBA4 -:104CF0000120706597ED120A00F0DCF93078012888 -:104D000028D1F08E002825D0318F002922D003220F -:104D100011FA80F03D2801DB01207065708B0428BA -:104D200000D30222708F824201D201207065F06FA1 -:104D3000C6F88000F86D396E0818796E0818F067AB -:104D4000284678663866F865FFF742F90546002080 -:104D500030877087306EA8EB0000FA30FA21B0FB84 -:104D6000F1F201FB120196290AD10022B265B26666 -:104D7000F266F26272613283B287F2870122326791 -:104D800064290FD10020F062706108220146301DB5 -:104D9000EDF765F900207083706101203067002015 -:104DA000B087F0875BF82800B86408F10100F06470 -:104DB000FA2801D10020F06409F10100F864072805 -:104DC00001D10020F8640AF101003065306F00283D -:104DD00008D006F18404282206F10C012046EDF7E4 -:104DE00038F9BC652846BDE8F28F00008096184B64 -:104DF00000C062400000544070B50446DFF86C55B6 -:104E0000AE6E95ED000AD4ED000A70EEC00A01EE18 -:104E1000106AB8EEC11A60EE810AF5EE400AF1EEB2 -:104E200010FA17D5D5ED1D0A30EE600A10EE100A03 -:104E3000ECF726FD21F00041DFF84C25DFF8B03417 -:104E4000EDF7D8F802D8E86D401CE8652868686777 -:104E50007042A866EE6E95ED010AD4ED010A70EE7F -:104E6000C00A01EE106AB8EEC11A60EE810AF5EED2 -:104E7000400AF1EE10FA17D5D5ED1E0A30EE600AA1 -:104E800010EE100AECF7FCFC21F00041DFF8F824EA -:104E9000DFF85C34EDF7AEF802D8286E401C2866C7 -:104EA0006868A8677042E8662E6F95ED020AD4ED37 -:104EB000020A70EEC00A01EE106AB8EEC11A60EE86 -:104EC000810AF5EE400AF1EE10FA17D5D5ED1F0A6A -:104ED00030EE600A10EE100AECF7D2FC21F000412F -:104EE000DFF8A424DFF80834EDF784F802D8686E00 -:104EF000401C6866A868E8677042286770BD0000BB -:104F00000100E0400000A04030B4DFF8602490EDE4 -:104F1000000AD2ED000A30EE600AD0ED010A92EDEF -:104F2000011A70EEC10A90ED021AD2ED021A31EEAA -:104F3000611AB5EE400AF1EE10FA02DDF0EE401A09 -:104F400001E0F1EE401AF5EE400AF1EE10FA02DD52 -:104F5000B0EE602A01E0B1EE602AB5EE401AF1EE43 -:104F600010FA02DDF0EE412A01E0F1EE412A71EE85 -:104F7000821A71EEA21AB5EE400AF1EE10FA01DCC7 -:104F8000B1EE400ADFF8F03393ED032A32EE000A67 -:104F900083ED030AF5EE400AF1EE10FA01DCF1EEC2 -:104FA000600A93ED040A30EE200A83ED040AB5EEA0 -:104FB000401AF1EE10FA01DCB1EE411A93ED050A48 -:104FC00030EE010A83ED050A93ED060A30EE210A60 -:104FD00083ED060A93ED070AD0ED000A30EE200AB1 -:104FE00083ED070A93ED080AD0ED010A30EE200A9E -:104FF00083ED080A93ED090AD0ED020A30EE200A8B -:1050000083ED090ADFF86003006D002810D100204D -:1050100006E0DFF8784304EB8004C4ED001A401C7E -:105020000F28F6D3B2EE0E0A21EE800A82ED140AA2 -:105030009089DFF8584304EB800595ED000A31EEC6 -:10504000C00AD2ED140A30EE200A82ED140A04EBF5 -:105050008004C4ED001AF2EE0E0A80EE200A83ED01 -:105060001B0AF5EE000AB4EE600AF1EE10FA04D560 -:10507000536D13FA81F1516501E000215165401C27 -:10508000908180B20F2801D100209081506D30BCFA -:1050900070470000F0164850FC18E93F3411363CC8 -:1050A000BD52DABFBBB88D06F016B83FB8ED221C72 -:1050B0001818783F70B52DED048BB0EE408AF0EEF5 -:1050C000608A9FEDA19AA84E708B042801D3B0EEA0 -:1050D000009AB5EE408AF1EE10FA07DBF5EE408A51 -:1050E000F1EE10FA02D5708F401C708730780028DE -:1050F00006D002287DD040D3032800F0A380E5E04D -:1051000019EE100AECF7BCFB41EC100B53EC102B22 -:1051100000209F49ECF716FD41EC190B18EE100A20 -:10512000ECF7AEFB02460B4651EC190BECF762FFB5 -:1051300011D818EE900AECF7A3FB02460B4651EC8F -:10514000190BECF76FFF06D2B08E1028C0F0AF80BD -:105150000020B086ABE0F06C8A4951F8200000EEE8 -:10516000100A8C48D0ED010AB4EE600AF1EE10FA94 -:1051700040F1AC8080ED010AA8E0F06C814951F863 -:10518000200000EE100A8348D0ED000AF4EE400A39 -:10519000F1EE10FA01D580ED000AB7EE000AB4EE88 -:1051A000408AF1EE10FAC0F29180F4EE408AF1EEFE -:1051B00010FA40F18B80B08EF0860020B08619EE98 -:1051C000100AECF75DFB02460B4600207249ECF733 -:1051D0002DFD02460B4614461D4618EE900AECF7CC -:1051E0004FFB22462B46ECF71DFF22D302203070E6 -:1051F0006CE019EE100AECF743FB41EC100B0020B9 -:10520000654953EC102BECF711FD41EC190B18EE2E -:10521000100AECF735FB53EC192BECF7EBFE55D8E5 -:1052200018EE900AECF72CFB53EC192BECF7FAFE76 -:105230004CD203203070F06C524951F8200055498F -:10524000486043E0F06C4F4951F8200000EE100A2E -:105250005048D0ED010AB4EE600AF1EE10FA01D523 -:1052600080ED010A9FED3D0AB4EE408AF1EE10FA9E -:105270002CD5F4EE408AF1EE10FA27DBB08E3087A1 -:105280000020B08618EE900AECF7FAFA02460B46B8 -:1052900014461D4619EE100AECF7F2FA00223C4BB8 -:1052A000ECF750FC22462B46ECF7BCFE0CD201205A -:1052B00030703848016871674168B167F16C314AF4 -:1052C00052F82110016001E0002030703078BDEC10 -:1052D000048B70BD24480078704700009A99999912 -:1052E000002804D02149896D2822EFF7E9BC7047D6 -:1052F0009999C93F1C48816D002901D1808F704761 -:10530000002070479999B93F174800210165018332 -:10531000418305210170002181658166C166C162FA -:1053200041618187C18770477B14AE47E17A743F42 -:10533000002806D0104942684A6002680A60008965 -:105340000881704700004E40000000000748406D93 -:10535000704700000000F03F6666E63FFEFF7FBF3B -:1053600000004440000034408CF400200CF8002081 -:105370003333D33F0000E03F8CF80020A4F200203C -:10538000A0D4002088D800209B99999974FB002014 -:1053900000001C40E4FD002000001CC0B0F5803F70 -:1053A0005EDBB0F1807F35DBB0F1805F15DBB0F103 -:1053B000804F0CDBDFF8341C884202DB4BF20450D8 -:1053C000704701160FF2F802895C090211E081159D -:1053D0000FF2EC02895CC9010BE00FF2E401B0F1BD -:1053E000806F03DB0215515C890102E08214515C7D -:1053F000490190FBF1F25118491C491090FBF1F260 -:105400005118491C491001FB01F2904200DA491E73 -:10541000084670470FF2A801B0F5801F0ADBB0F50F -:10542000800F03DB0214515C09010DE08213515C13 -:10543000C90009E0B0F5802F03DB0213515C89003D -:1054400002E08212515C490090FBF1F25118491CB4 -:10545000491001FB01F2904200DA491E08467047EC -:10546000FF2823DD0FF25801B0F5805F0BDBB0F5AC -:10547000804F03DB0212515C491C10E08211515C29 -:105480004908491C0BE0B0F5806F04DB0211515C48 -:105490008908491C03E08210515CC908491C11FBB2 -:1054A00001F2904200DA491E08467047002804D4F1 -:1054B0000FF20C01405C000970474FF0FF3070475D -:1054C0000010161B2023272A2D30323537393B3D5B -:1054D0004041434547494B4C4E5051535456575900 -:1054E0005A5B5D5E60616263656667686A6B6C6D7E -:1054F0006E707172737475767778797A7B7C7D7E45 -:1055000080808182838485868788898A8B8C8D8E32 -:105510008F9090919293949596969798999A9B9B39 -:105520009C9D9E9FA0A0A1A2A3A3A4A5A6A7A7A857 -:10553000A9AAAAABACADADAEAFB0B0B1B2B2B3B484 -:10554000B5B5B6B7B7B8B9B9BABBBBBCBDBDBEBFC0 -:10555000C0C0C1C1C2C3C3C4C5C5C6C7C7C8C9C905 -:10556000CACBCBCCCCCDCECECFD0D0D1D1D2D3D351 -:10557000D4D4D5D6D6D7D7D8D9D9DADADBDBDCDDA7 -:10558000DDDEDEDFE0E0E1E1E2E2E3E3E4E5E5E603 -:10559000E6E7E7E8E8E9EAEAEBEBECECEDEDEEEE66 -:1055A000EFF0F0F1F1F2F2F3F3F4F4F5F5F6F6F7CB -:1055B000F7F8F8F9F9FAFAFBFBFCFCFDFDFEFEFF3B -:1055C0002DE9F04199B00546144620461422EFF724 -:1055D00077FB00210A4611E0142055F8213000AF76 -:1055E00000FB067747F8223000AF00FB027040F85E -:1055F0002630761C491C052EEEDB521C052A01DAEA -:105600001646F8E70021142000E01946052980F22B -:105610008A8000AA00FB012252F821700D464B1C23 -:105620001E4606E0CEF1000CE04501DA354677462D -:10563000761C052E10DAB846B8F1000F01D5C8F176 -:1056400000080DF1000C00FB06CC5CF821E0BEF177 -:10565000000FE7D4F446E7E78D4218D000260CE0AF -:1056600052F826700DF1000C00FB05CC5CF826E02A -:1056700042F826E04CF82670761C052EF0DB54F834 -:10568000217054F8256044F8216044F825701E46C6 -:1056900014E0002D11D052F82650AD0142F82650EA -:1056A00052F82150AD110FD052F8265052F8217007 -:1056B000BF1195FBF7F542F82650761C052E52F8DF -:1056C0002150E6DB002D02D14FF0FF3046E054F8C8 -:1056D000216096FBF5F544F821501D461EE057F871 -:1056E00026E052F826804FEAE8084FEAEC0C0CFB63 -:1056F00008FCAEEBAC1C47F826C0761C00AF00FBE4 -:10570000057757F821C0052EE9DB54F8256054F8D9 -:1057100021700CFB176644F825606D1C052DBFF643 -:1057200074AF1E46EAE7042113E054F8210001EBB0 -:10573000810200AB03EB820252F8262054F8263097 -:105740005A43A0EB223044F82100761C052EECDBF6 -:10575000491E002901D44E1CF8E7002019B0BDE80D -:10576000F0812DE9F04186B000252E462C462346D7 -:1057700003AF9C469E469846A7E8005100AFA7E8B5 -:1057800000511F4604E0664501DB66463B467F1C30 -:10579000032F11DA002F04D10668354643461C4614 -:1057A000F5E70FF28C0C17F90CC050F82CC0AC4583 -:1057B000E9DB65463C46EAE703AD012645F8236090 -:1057C00045F82460464601E0761C76B2032E04DAE2 -:1057D00055F82670002FF7D10196009402934346A6 -:1057E0000EE0AF1807EB860706EB460C01EB8C0CBE -:1057F0005CF824C0C7F804C0761C032EF1DB5B1CE8 -:10580000032B10DA00AC54F823400FF2240C14F9E7 -:105810000C5050F825601D01AE50012E01DA4646AD -:10582000AE504646E9E7404606B0BDE8F0810000CC -:10583000000305002DE9F24F98B0014602A8182296 -:10584000EFF73EFA002101E0491C49B2032913DABF -:10585000002004E0002342F82030401C40B203281E -:10586000F2DA0C220EAB12FB01328142F2D14FF47C -:10587000804342F82030F0E70020019024E00C2221 -:105880000EA912FB001252F8241052F8253006FB24 -:1058900001F70BFB03FCA7EBEC07BF1142F82470E8 -:1058A0004FEAEB07734307FB0131891142F82510DA -:1058B000401C0328E3DB02A808A91822EFF700FA2E -:1058C0000198401C40B201900198062880F2DE80C9 -:1058D00001200024054602270399002900D54942EA -:1058E000049A002A00D55242914202DA384605460F -:1058F000012702A951F82000002800D5404206994E -:10590000002900D54942884202DA012402250027F5 -:105910000FF28C1004EB440101EB000805EB45018C -:1059200001EB000915F8090002A951F8200014F84C -:10593000081002AA52F82110401A461015F8080063 -:1059400002A951F8200000904FF00A0A90FBFAF0EB -:1059500096FBFAF1404301FB0100FFF71FFD0AFB34 -:1059600000FBBBF1000F11D0300000D54042000316 -:1059700090FBFBF000F580504FEA600A5046FFF7BD -:105980000DFD064606FB0BF0801002D14FF0FF30F4 -:1059900082E00099090391FBF0FB15F8090002A9C8 -:1059A00051F8200014F8081002AA52F82110884279 -:1059B00001DACBF1000B0BFB0BF08011009008A873 -:1059C00002A91822EFF77CF917F80800014602AA8D -:1059D00052F821107143891117F8092002AB53F8CE -:1059E00022200BFB02F2A1EB622108AA42F8201050 -:1059F00017F8091002AA52F820000BFB00F052F829 -:105A000021207243921102EB602008AA42F8210083 -:105A100015F8080002A951F8200006FB0BF18911C6 -:105A20004843011214F8080002AA52F820000AFBA9 -:105A300000F0C1EB203015F8092053F82220009B1C -:105A40005A4300EB223014F8082008AB43F8220038 -:105A500015F8090002AA52F820000AFB00F001EB39 -:105A6000203014F8081052F82110009A514300EB2E -:105A7000213015F8091008AA42F8210015F808008D -:105A800008A9002241F82020104612E7189A0EA912 -:105A900002A8FFF766FE002019B0BDE8F08F0000F5 -:105AA000000102010304020405000000F0B4DFF865 -:105AB000202C02F59A7191F9013092F93441012CB0 -:105AC0001CDB5C1E64B2002C01D5143464B204EB00 -:105AD000440502EB8504E56C8668AD1BA66C47683F -:105AE000F61B646C0768E41B764304FB046405FB47 -:105AF0000544B4F5C87F01DA00202DE003EB430430 -:105B000002EB8403443370C870C34878401C48706B -:105B100040B2142801DB0020487092F83401401C88 -:105B200082F8340140B2142802DB142082F83401D8 -:105B300092F934010A2290FBF2F302FB13000028D1 -:105B400009D191F9010090FBF2F102FB1100401E16 -:105B50008041C00F00E00020F0BC7047DFF8700B00 -:105B600090F934110A2291FBF2F1012903D10021AD -:105B700080F834117047114680F8341170472DE9D0 -:105B8000F04794B005460E460027DFF8448B98F99D -:105B9000344198F83501A0EB04094FFA89F9B9F1BD -:105BA000000F03D509F114094FFA89F9BA4624E028 -:105BB00009EB490008EB8000A968C26C891A6A6881 -:105BC000836CD21A2B68406C181A524300FB0020D9 -:105BD00001FB0100FFF7E2FB00A941F82A00C71909 -:105BE00009F101094FFA89F94846142801D14FF00B -:105BF00000090AF1010A4FFA8AFAA245D8DB97FB9D -:105C0000F4F030600022134607E000A951F8231099 -:105C1000091A01FB01225B1C5BB298F934118B421B -:105C2000F3DB92FBF1F014B0BDE8F0872DE9FE4103 -:105C300000ACE0C9E0C40C39002635462C462746A6 -:105C40000AE053F827C052F827E051F82780AEEB5E -:105C5000080E0EFB0C667F1C032FF2DB711306EBA4 -:105C60009141891322460FE053F822604E4300AF62 -:105C700057F822704FEA663C06EB9C4607EBA636C7 -:105C800000AF47F82260521C032AEDDB21460CE0EE -:105C900050F8212000AE56F82160921B53F8216085 -:105CA00002FB065502FB0244491C0329F0DB002CD1 -:105CB00002D140F2011008E0280000D540428512D0 -:105CC00005FB05F090FBF4F000B2BDE8FE812DE984 -:105CD000F0419AB0144600220AAD164602E045F89B -:105CE0002260521C0F2AFADB324606E005AD45F869 -:105CF000226000AD45F82260521C052AF6DB3246D0 -:105D00000AAE07E00FF64025555753F8227046F8C3 -:105D10002570521C062AF5DB0025209A1CE005EBB5 -:105D200045060FF62C27F6199E5730F9157002EB31 -:105D3000051C0CEB830CDCF814C00CFB07F70DF111 -:105D4000280C4CF82670002F02D0BF124CF8267099 -:105D50005B1C032BE3DB6D1C022D01DA0023F8E74B -:105D60000025219B00AF04E053F8256047F825602B -:105D70006D1C032DF8DB00250C261BE002EB051C37 -:105D80000CEB830CDCF814C051F823E054F82380AA -:105D9000AEEB080E0EFB0C775B1C032BEEDBBB128D -:105DA00030F915707B4300AF07EB8507FB606D1C76 -:105DB0006DB2B61C022D15DA1368002B02D14FF01C -:105DC000FF3025E030F91570A7F58067BF0497FB19 -:105DD000F3F337467FB20DF1280C4CF8273000273B -:105DE0003B46DAE705AA00A90AA8FFF7E9FB002568 -:105DF00022980AE005A951F8251040F8251054F81A -:105E00002520511840F825106D1C032DF2DB0020D1 -:105E10001AB0BDE8F0812DE9FE47002633461C4646 -:105E20001D4638C00C3802E041F823405B1C062BAD -:105E3000FADB234602E042F823405B1C032BFADB2B -:105E4000DFF88C4804F59A735D7894F83471EF1B91 -:105E50007FB2002F01D514377FB2B44617E050F857 -:105E600025E007EB470804EB880808EB8508D8F81D -:105E70004480C64440F825E06D1C032DEFDB7F1CF9 -:105E80007FB23D46142D00D137460CF1010C94F938 -:105E900034514FFA8CFCAC45354607DAEDE750F843 -:105EA00025C09CFBF7F740F825706D1C94F9347100 -:105EB000032DF4DB5B78DB1B5BB29C46BCF1000F6F -:105EC00003D50CF1140C4FFA8CFCB6461BE00CEB1E -:105ED0004C0804EB880808EB8508D8F8448050F893 -:105EE0002590A8EB090808FB08666D1C032DEEDB66 -:105EF0000CF1010C4FFA8CFC6546142D01D14FF0CA -:105F0000000C0EF1010E4FFA8EFEBE4501DA00259F -:105F1000ECE796FBF7F6002B01D514335BB20027B4 -:105F20000FE052F825E00DF1000858F8258009FB34 -:105F300008F80EEB680E42F825E06D1C032DF0DB2F -:105F40007F1C94F934517FB2AF424CDA002510E047 -:105F500003EB430C04EB8C0C0CEB850CDCF844C01D -:105F600050F825E0ACEB0E0C0DF1000E4EF825C0FC -:105F70006D1C032DECDB5B1C5BB21D46142D00D1A8 -:105F800000230025AC4618E06DB251F825800DF1D4 -:105F9000000959F82C900DF1000A5AF82EA00AFBBE -:105FA000098841F825800EF1010E6D1C4FFA8EFE16 -:105FB000BEF1030FE8DB0CF1010CBCF1030F01DAB9 -:105FC000E646F3E74FF0000C654606E00DF1000EE3 -:105FD0005EF825E00EFB0ECC6D1C032DF6DB0025D4 -:105FE000ACEB0609AAE70020BDE8FE8710A8FE7FFB -:105FF0002DE9F043A1B00446002003904FF0FF3597 -:10600000064604A8314601600BAA1AA908A8FFF7A2 -:1060100002FF002800F1A9800EA91AA8FFF70AFCC8 -:1060200040B2002800F1A1800DF110080120A8F86D -:106030000200DFF89C7605A802900BA801900EA83C -:1060400000901AAB08AA391D04A8FFF740FE0028EB -:1060500000F18B8003A905A8FFF791FD03990129A1 -:10606000C0F2838097F9341142F21072129B93FBB5 -:10607000F1F35343DDF80CC093FBFCF393FBFCF905 -:10608000169B93FBF1F15143624691FBF2F191FBB8 -:10609000F2F12160C4F80490A060039A22613246B4 -:1060A00022753A6C22733346022201E0521E52B22C -:1060B000002A1AD497F934C14FF00A0E9CFBFEFC5B -:1060C000ACF1010C0CEB4C0C4FFA8CFCBCF1070F43 -:1060D00001DB4FF0060C42FA8CFC07EB8C0CDCF871 -:1060E00010C08C45E2DA531C5BB2012B24DB1A464C -:1060F000521E52B201E0521E52B2002A0CD407EBDB -:10610000820CDCF834C04FF0640E91FBFEFEF444C8 -:106110008445F0DB531C5BB2002A44D40720207571 -:10612000386C834208DB3B6418462073381D05A990 -:106130001CC91CC0012067E04FF48060A8F8020071 -:1061400005A802900BA801900EA800901AAB08AA0F -:10615000391D04A8FFF7BBFD002806D403A905A834 -:10616000FFF70DFD0399012901DA28464CE0A060F4 -:1061700003992161B9F57A7F45DD396C002901D198 -:10618000B44601E0A1F1010C4FFA8CFC07EB8C0145 -:10619000496B01EBD1714FF4C87299FBF2F202EB3B -:1061A0006101814202DA6FF002002DE017AB08AA0C -:1061B00005A9381DFFF73AFDB446324605E04942CD -:1061C0008D4201DA0D469446521C032A06DA0EA9C6 -:1061D00001EB8201496A0029F1D4F1E7BCF1000F1B -:1061E00000D10626BCF1010F00D10526BCF1020F3B -:1061F00000D103262675E72803DA381D05A91CC936 -:106200001CC0012000E0304621B0BDE8F083DFF87B -:10621000C0140A68002A02D16FF0020070470028FB -:1062200002D16FF07F007047002206E001EB82038D -:106230005B689B0020F81230521C032AF6DB00201A -:10624000704710B4DFF888140A68002A02D16FF092 -:10625000020013E0002802D16FF07F000EE0002260 -:1062600009E030F912305C1003EB94739B1001EBE2 -:1062700082046360521C032AF3DB002010BC7047C9 -:10628000DFF84C040168002902D16FF0020070476A -:10629000006C7047DFF838140A68002A02D16FF0EA -:1062A00002007047042802D36FF07F007047086433 -:1062B000002070472DE9F0418AB00C4615460026B3 -:1062C000DFF80C743968002902D16FF002007DE01C -:1062D000002803D0002C01D0002D02D16FF07F00E8 -:1062E00074E0314637E0DFF8F02301EB410302EBC5 -:1062F000430C0A23BCF91CE0B0F900801EFB08FE29 -:106300009EFBF3FEBCF91EC0B0F902801CFB08FC2A -:106310009CFBF3FCF44401EB410E02EB4E02B2F99C -:106320002020B0F904E012FB0EF292FBF3F262447B -:106330004FF47A7392FBF3F200AB43F8212000AAEA -:1063400052F82120531002EB93729210E24B03EBB0 -:1063500081031A63491C032913DA30F9112047F627 -:10636000FF739A4202D0DB4B9A42BCD132463A6468 -:10637000D94A02EB8102126B920000AB43F8212054 -:10638000DDE7E348FFF792FB002803D003A8FFF7FF -:106390002FFE064600200AE000A951F8201007EB66 -:1063A00080025268A1EB820124F81010401C0328DF -:1063B000F2DBFFF765FF2860002E06D516F1030F0C -:1063C00001D1FFF7CBFB002000E030460AB0BDE86A -:1063D000F08110B5BE4C201D00210A460B460EC0B0 -:1063E0000FF234313022EEF76BFC0020206484F889 -:1063F000340184F8350101202060002010BD80B5F3 -:1064000020EE000A00EEA00A01EE010A10EE100ACA -:10641000EBF736FA41EC100B02F0BAFD51EC100B21 -:10642000FAF720F800EE100A01BD000070B52DED5E -:10643000088B8CB005460E461446002D00F0A38054 -:10644000002E00F0A080002C00F09D8095ED021A37 -:10645000D5ED010A95ED000AFFF7D1FFB0EE408AB5 -:1064600096ED021AD6ED010A96ED000AFFF7C7FF76 -:106470009FED9A9AB4EE498AF1EE10FA00F183800A -:10648000B4EE490AF1EE10FA7DD4002009AA16E014 -:1064900005EB8003D3ED000AC0EE880AF1EE600A36 -:1064A00001EB8001C1ED000A06EB8001D1ED000A8D -:1064B000C0EE800A02EB8001C1ED000A401C03A976 -:1064C0000328E5DB92ED010A91ED028A92ED021AB2 -:1064D000D1ED018A68EE810A48EE400ACDED000A4E -:1064E000DDED090A68EE200ADDED031A41EEC10A6E -:1064F00000ADC5ED010A9DED031A21EE001A9DEDD8 -:10650000090A08EEC01A85ED021A9DED000AFFF790 -:1065100076FFB4EE490AF1EE10FA34D4002008E018 -:1065200005EB8001D1ED000AC0EE800AC1ED000A42 -:10653000401C0328F4DB95ED020AD5ED019A69EEC3 -:10654000880A40EE680ACDED060ADDED030A60EE2A -:10655000200A9DED000A40EE480A06ADC5ED010A8D -:106560009DED000A20EE281A9DED030A09EEC01ADF -:1065700085ED021A9DED060AFFF741FFB4EE490AC8 -:10658000F1EE10FA02D56FF07F007DE0002008E008 -:1065900005EB8001D1ED000AC0EE800AC1ED000AD2 -:1065A000401C0328F4DB9FED4EAB9FED4FBB9DEDF0 -:1065B000000AD5ED010A70EE200A9DED060A39EEBB -:1065C000C00A02F06FFD10EE100AEBF759F953EC18 -:1065D0001B2BEBF78DF953EC1A2BEBF7E7FBF9F7D5 -:1065E00041FF2060B1EE680A02F094FDB1EE400A6E -:1065F00010EE100AEBF744F953EC1B2BEBF778F98C -:1066000053EC1A2BEBF7D2FBF9F72CFF60609DEDF2 -:10661000030AB1EE400A02F07DFD10EE100AEBF71E -:106620002FF953EC1B2BEBF763F953EC1A2BEBF719 -:10663000BDFBF9F717FFA060B1EE480AB5EE400ABE -:10664000F1EE10FA12D59FED2A0AD4ED010A70EE90 -:10665000600AC4ED010AF4EE400AF1EE10FA05D525 -:106660009FED2C0A30EE800A84ED010A94ED000AB9 -:10667000B5EE400AF1EE10FA05D5DFED260A30EE50 -:10668000200A84ED000A00200CB0BDEC088B70BD20 -:1066900010B5114C174820601748206117486061F9 -:1066A0001748A0601748E060174860601748A0616D -:1066B0001222002104F11C00EBF7D1FC42F2107011 -:1066C000A083A084A085024800210160084610BD77 -:1066D00070F000200080FFFFB0FB0020BD37863542 -:1066E000182D4454FB210940000000000080664042 -:1066F000000034C3D3630208816202089562020875 -:106700000F62020843620208B56202082D640208A3 -:10671000E0FB00200000B4432C010000F401000065 -:10672000E8030000C80000002C010000F401000094 -:10673000C80000002C010000F40100001E00000051 -:10674000140000000F00000000010205060900000F -:1067500003070A04080B0000002303604360C260C3 -:106760008160194603E000EB41021382491C8268F4 -:106770009142F8DB7047024608469168022900DA28 -:10678000704730B4536814688C4208DA591C516061 -:1067900002EB430108821168491C116035E08B420D -:1067A00001DB0021516051684B1C536002EB410139 -:1067B000088200210B4606E002EB4304B4F91040C6 -:1067C00001FA84F15B1C9468A342F5DB91FBF4F1C0 -:1067D00000231C4607E002EB4405B5F910504D1BA1 -:1067E00005FB0533641C9568AC42F4DB93FBF5F3C1 -:1067F000D2689A4202DB084600B206E0401A9A1AB2 -:10680000504390FBF3F0081800B230BC70470160B1 -:1068100000218180704770B4B0F9042013460468E9 -:106820000D461E1BB54202DBE318AB4202DA818043 -:10683000084600E0104670BC7047F8B504460D46A7 -:10684000002C01D0002D02D16FF07F00F2BD244E4C -:10685000D6F8C000002802D16FF00200F2BD002778 -:1068600012E034F91710C7EBC70006EBC000FFF7C2 -:1068700082FF25F81700014606EBC700A830FFF796 -:10688000CAFF25F817007F1C032FEADB0020F2BDAA -:1068900038B50024124D11E00FF2540050F82420B6 -:1068A0001421C4EBC40005EBC000FFF755FF032122 -:1068B00005EBC400A830FFF7AAFF641C032CEBDB38 -:1068C0000120C5F8C000002032BD0648064901601D -:1068D0000649416002480021C0F8C01008467047D0 -:1068E000C8F3002020FE0020916802083B680208DF -:1068F0009000000090000000900000002DE9F04F93 -:106900000646DFF8DC03DFF8DC130160DFF8D8139C -:106910000068884236D1DFF8D403016006F1100721 -:106920000020F860B86078603860B86178613861DC -:1069300074682046002102F01DFC24D04FF08740EF -:10694000214602F025FCEAF79BFF054689462046D2 -:10695000EAF796FF044688463088EBF7E5F8DFF85B -:106960009023DFF89033EBF721FA22464346EBF70A -:10697000E9F802460B4628464946EBF717FAEBF7CB -:1069800095F801E0FEE70020B883B46820460021B6 -:1069900002F0F0FB22D035882802EBF7BBF88246E4 -:1069A0008B462046EAF76CFF02460B46DFF84003B1 -:1069B000DFF84013EAF79CFF044688462846EBF7C9 -:1069C000B3F822464346EBF7BDF802460B46504665 -:1069D0005946EBF7EBF9EBF769F800E00020F88394 -:1069E00030884FF47A7190FBF1F03884BDE8F08F75 -:1069F0002DE9FE4F96B0DFF8F4120968DFF8E822BF -:106A0000914200D0FEE71946103100910969009AC1 -:106A100052690792009A92690392009AD2F8009004 -:106A200052680692009A9268009BDB68189CA489C1 -:106A30000194009CA48B0594009CE48B0894002492 -:106A40004FF48075059EAD1B0D95019DC5EBC505E9 -:106A50000C95019D05EB450675000B95019D05EB19 -:106A600085050A95019D05EB45050995009D2D8C31 -:106A7000012DC0F21D810578DFF87062AD19069E08 -:106A800095F80472BE190E9695F8046109EB460755 -:106A90002D79019E365CDFF854C2664496F804C234 -:106AA000674402970F9796F8047105EB470536790E -:106AB000019F10F81770DFF834C2674497F804C2DA -:106AC0006544109597F804C106EB4C063F79DDF854 -:106AD00024C01CF800C0DFF814E2E6449EF804C2AB -:106AE000664411969EF804C107EB4C079EF804E03B -:106AF000DDF804C010F82CC0DFF8F081E04498F80D -:106B000004C26744129798F804C10EEB4C0C98F835 -:106B10000480DDF828E01EF800E0DFF8D091F144B1 -:106B200099F804E2E644CDF84CE099F804C108EB8A -:106B30004C0C99F804A0DDF82C8018F80080DFF8E0 -:106B4000AC91C14499F80482E044CDF8508099F8A2 -:106B500004C10AEB4C0A99F80490DDF830C01CF827 -:106B600000C0DFF888B1E344CDF810B09BF804C250 -:106B7000E244CDF854A0DDF810C09CF804C109EB44 -:106B80004C09CDF81890DDF810C09CF80490DDF8A1 -:106B900038C0CCEBCC0B03EB8B03DDF808C04FF017 -:106BA000150B0BFB0C33C5EB051C634406EB860C85 -:106BB00003EB4C0307EB470C03EB4C030EEB4E0CC3 -:106BC000634408EB030C0E9B03EBC30302EB83024D -:106BD000029B4FF02A0B0BFB03222E2303FB052203 -:106BE000BB1903EB430302EB03122E2303FB0E221C -:106BF0000BFB08220AEBCA0302EB8303029A05EBA4 -:106C00004505AA1806EB460502EB450207EB87058A -:106C100002EB4502CEEB0E15AA18152505FB08223E -:106C2000CAEBCA0502EB8502ACF50035089E56B1E9 -:106C3000089E6918079FC91B7143CE1101EB1661AD -:106C4000091207950D46059E66B10D9E039FDDF85E -:106C500014C005FB0CF507FB0655EE1105EB166598 -:106C60002D120395BDF85C607543012DACBF08354E -:106C7000083DEE1005EB16752D11DFF87C60B5426E -:106C8000B8BF354605DB47F6BD76B542A8BF47F627 -:106C9000BC75189EF6896643169F27F81650019D0D -:106CA00000EBC500641C009D2D8CAC42FFF6E3AEEA -:106CB0000098C0F800900098069C4460009882609C -:106CC0000098C3600098016100980799416100989D -:106CD000039981610098008C19B0BDE8F08F000025 -:106CE00000300240C2A507F4CDB5E8B56C300020F5 -:106CF0001F85EB51B81E19404480FFFF10B4028875 -:106D0000164B98420BD0B0F1804F08D0144CA042E3 -:106D100005D0144CA04202D0134CA04204D14FF62F -:106D20008F7422404C88224302804A68C2620A88DB -:106D30000285984202D1897A0C4A11800121818210 -:106D400010BC70470029018803D041F00101018087 -:106D500070474FF6FE7211400180704700000140FD -:106D60000004004000080040000C004030000140DA -:106D7000002A828902D011438181704722EA0101F1 -:106D8000818170470022038A0B4080890840002BD4 -:106D900002D0002800D001221046704770B4294A62 -:106DA000294B1C78012C08D102F10804546002F12F -:106DB0002804146000241C7007E002F128045460C9 -:106DC00002F10804146001241C70204B00249C80F4 -:106DD00019E0012C14D15C888C420CD202EB4404E3 -:106DE000166836F81550A4F808545C88641C5C805A -:106DF000A4B28C4204D300245C801C720124DC7198 -:106E00009C88641C9C809D88854218D21C7A002C2A -:106E1000DFD11C888C420CD202EB4404166836F891 -:106E20001550A4F848501C88641C1C80A4B28C42E5 -:106E3000E6D300241C8001241C729C71E0E770BC26 -:106E4000704700BF5C590020FD7B0020507B002074 -:106E50004FF4011101600020704730B4C26C5389B7 -:106E6000D48E92884C30858915FA84F414FA82F213 -:106E700002EB8204620002EB4302C38902F6EB12CA -:106E800002EBC302426401B10A60002030BC7047CB -:106E900010B500F14804DFF8A802616C814204D10A -:106EA000A16C41F27172914201D3012010BD002109 -:106EB00003E0002200F8012B491CA26C9142F8DB90 -:106EC000204602F011FB0021A18610BD2DE9F04FF4 -:106ED00083B00C4604F14801009101F10806F16B02 -:106EE00001F6F805FD21ADF804100CB9FC2023E1F2 -:106EF000DFF84CA20AF6F8018D4202BF29690AF5B3 -:106F0000076291423AD1E9680AF65812914202BFEB -:106F10006968009A914231D169690AF50B62914220 -:106F200002BFA9680AF63812914227D1DAF884180C -:106F30000AF57472914202BF0AF5F878DAF89818E7 -:106F400041451BD1DFF8FC914C4502BFE168DFF8F9 -:106F5000F821914202BF04F10C07B7F90410B1F512 -:106F6000F07F0BD1B7F9082040F2E111F0328A42EC -:106F7000BEBFB7F90620F0328A4201DB0120DBE018 -:106F800020B10146F022484602F091FB00980089AA -:106F9000022815D1204600F0FDF868B1B7F90EB00F -:106FA000204600F007F9F88130B9BBF1000F70D02E -:106FB0002046FFF76DFF6CE0F88918B9B08568E0EE -:106FC0000120F881E88F98B9204602F0FFFA0028E6 -:106FD0005FD04346F0220021484602F012FB002019 -:106FE000A8870120E8876869016C491C016450E0AA -:106FF000A88F012804BF0020A887E8680099B0F88E -:107000004600A1F84C00A88F20B9204602F0DEFA15 -:1070100000283ED06868808E02281CBF0120B08501 -:107020006869016C491C0164B4F8960010B1401EF7 -:10703000A4F896000AF5F8744FF4F07221460AF5A8 -:10704000747002F073FB4346F0220021484602F0C0 -:10705000D8FA4FF4907221460AF5B66002F066FB4A -:10706000284602F05AFE284602F0EEF840B195F8A4 -:107070002800C0070FD4284602F0B8F9002855D1DF -:107080002869C168491CC1604168491C41600120F0 -:10709000A887FD2050E0002000900023E8684168A8 -:1070A00002222846DBF72EFE686802218186E86806 -:1070B000D9F75AFB0400E8681FD1818EC1F3C021C3 -:1070C00031B3018E2846D9F716FD08B36869B0F8C8 -:1070D000401001616968088B50B1284602F09EF8A3 -:1070E000E868DAF79EF82869C068401CA8630FE0DA -:1070F0000124284602F056F80AE06968CA8E521C3C -:10710000CA86DAF78EF80024688D00F47F4068851F -:10711000A88F401CA88780B2012806D12869C168C1 -:10712000491CC1604168491C41601CB195F82A00A6 -:10713000ADF80400BDF8040003B0BDE8F08F70475F -:1071400058B3002050F6002098AF002038B505460F -:10715000202105F12400DCF7C1F800202C1DC5F822 -:107160008400E0676860E082284602F03FFAEF3072 -:10717000F02290FBF2F0B4F9101000B2C0EB001254 -:1071800001EB0210B4F90C1000B28842A8BF401AFB -:10719000608231BD418AC28A891A09B2002944BF7E -:1071A000B0F91000091809B2F02901DB012070477D -:1071B0000020704738B5044604F1240500F07FF83C -:1071C0006168491C61600028B5F9001047D021B101 -:1071D00001290CD003293FD064E0052068800120FC -:1071E0002880211D0020CA6F521CCA6732BDB5F924 -:1071F00002000028F5D0401E688000B20028F0D1BF -:10720000211DB1F91200CA89121A12B2002A44BF14 -:10721000B1F90C30D218B1F9143012B29A1AF02325 -:1072200092FBF3F212B2182AA8BF1722C2EB021384 -:10723000A0EB03100882B1F91000002802D58B8959 -:10724000181808820220288004F184006168806890 -:10725000891AC0F874182BE00220288028E0012940 -:107260001ED01FD3032913D01CD2211D488A0A8A9D -:10727000801A00B2002844BFB1F90C10401800B2C7 -:10728000F02190FBF1F004F1840148820320288072 -:1072900004F18400418A002904BF008A002801D13A -:1072A00000209DE7B5F90000022818BF032898D1F7 -:1072B000D4F88410491C0120C4F8841032BD2DE993 -:1072C000F84600F10C02C468B2F90A6000F124012A -:1072D00004EB460AB1F91040B0F96600002500231E -:1072E00008B94FF496604FF0F00C3AF902EBAEEBB0 -:1072F00004077446BEF1000F48BFCEF1000E75447E -:10730000012FAEBF4FEA471EC7F1000E4FEA4E1ED7 -:107310007344BCF1010CE8D1F036568136B2B2F9B3 -:107320000470BE4204BF002656810C822A11B1F9B6 -:107330000640B1F90E601B1204F1010E16FB043673 -:1073400006EB6E0696FBFEFA47F6FF76B245A8BF3F -:10735000B24604DA4B4DAA45B8BFDFF82CA1A1F81C -:107360000EA0B1F90C90B1F90050CA46022D04D11B -:107370004D271AFB07F7BF1103E016271AFB07F783 -:107380003F11B9F1000F08D0B1F90E903FB24F454F -:10739000B4BF4FF001094FF00009B1F90A7017FBB3 -:1073A000042707EB6E0797FBFEFEB645A8BFB6465F -:1073B00004DA344FBE45B8BFDFF8CCE0A1F80AE0EC -:1073C000022DB1F90870BE4606D14FF04D0C1EFBE0 -:1073D0000CFC4FEAAC1C05E04FF0160C1EFB0CFC3D -:1073E0004FEA2C1C002F08D0B1F90A500FFA8CF785 -:1073F000AF42B8BF4FF0010C01DB4FF0000C4CEA7C -:107400000905B0EB221FB4BF012000202843072C40 -:10741000ACBF1024641CCC80B1F912401CB18C812B -:1074200000244C8203E09C005445B8BF4B82B1F964 -:107430000440B1F90C50671C15FB043303EB6703E0 -:1074400093FBF7F3B342A8BF334603DA0D4DAB42CB -:10745000B8BF0D4B14FB0E2202EB670292FBF7F252 -:107460008B81B242A8BF324603DA064B9A42B8BFBC -:10747000054A0A81062CACBFC822621C8A80BDE87E -:10748000F28600000280FFFF0180FFFF38B5DFF8C1 -:1074900088475022002104F13000EAF7E0FD502235 -:1074A0000021EAF7DCFD50220021DFF87007EAF73F -:1074B000D6FDDFF86C575022002105F11000EAF7E5 -:1074C000CEFD50220021DFF85C07EAF7C8FD50220C -:1074D0000021DFF85407EAF7C2FD00202070607039 -:1074E00020716071A070E070A07120816081DFF870 -:1074F0003C07C4F880009FEDC60B84ED040B84EDBF -:10750000060B85ED000B84ED080B85ED020B84ED79 -:107510000A0B31BD2DE9F04F2DED088B83B0B0EE95 -:10752000408ADFF8F446218900EB010BA4F808B08B -:10753000618947186781A079192809D2401CA07178 -:1075400018EE100AEAF79CF9DFF8D426C2E9020126 -:107550009FEDAC0AB4EE408AF1EE10FAC0F24C8115 -:10756000D4ED200AF4EE400AF1EE10FAC0F24481A4 -:10757000A0791928C0F040811FFA8BFBBBF1AF0F37 -:10758000C0F03A8138EE600ADFF8945685ED1C0AA7 -:1075900084ED208A10EE100AEAF772F921F000411A -:1075A000DFF88C26DFF88C36EAF724FD05D8D5E91C -:1075B0000201F8F757FF08EE100A6678002E04D192 -:1075C00085ED188A85ED198A52E0D5ED1A8A18EEF4 -:1075D000100AEAF755F941EC1A0B9FED8B9B95EDDC -:1075E000180A28EE800A10EE100AEAF749F98046D8 -:1075F000894618EE900AEAF743F902460B4651EC29 -:10760000190BEAF713FB53EC1A2BEAF771F9424610 -:107610004B46EAF797FAF8F725FF08EE900AC5ED12 -:10762000188A95ED1BAA95ED190A2AEE000A10EEAC -:10763000100AEAF725F9CDE900011AEE100AEAF777 -:107640001FF902460B4651EC190BEAF7EFFA804698 -:10765000894618EE900AEAF713F942464B46EAF7D4 -:1076600047F9DDE90023EAF76DFAF8F7FBFE6866F3 -:1076700040F2E930BFB2874214D3A078DFF8B815E2 -:1076800001EB80016A6E8A62401CA070C0B21428AF -:1076900001D10020A070E078142801D2401CE070D5 -:1076A0000020608194F800904F4605EB8708DFF8D2 -:1076B00074A5142E27D1D8ED048A18EE900AEAF7A3 -:1076C000DFF802460B46D4E90401EAF7AFFAC4E951 -:1076D000040128EEA80A10EE100AEAF7D1F80246D3 -:1076E0000B46D4E90601EAF7A1FAC4E906015AF803 -:1076F0002700EAF7C5F802460B46D5E90001EAF78C -:1077000095FAC5E9000188ED048A18EE100AEAF737 -:10771000B7F841EC1A0B53EC1A2BD4E90401EAF741 -:1077200011FA41EC190B84ED049B28EE080A10EEC7 -:10773000100AEAF7A5F8D4E90623EAF703FA41ECC0 -:10774000180B84ED068B4A46314605F1100000F017 -:107750007DF90AEB870080ED000A10EE100AEAF7C7 -:107760008FF8D5E90023EAF7EDF941EC1A0B85ED26 -:1077700000AB04EB8700696E0163DFF8BC0420F8FE -:1077800017B0142E01D2701C60706078EAF7CCF943 -:1077900041EC1B0B51EC190B53EC1B2BEAF706FBCE -:1077A00041EC190B85ED029B51EC180B53EC1B2B94 -:1077B000EAF7FCFA06460F4653EC192B51EC190B6D -:1077C000EAF796F802460B4630463946EAF72EFAB3 -:1077D000C4E9080151EC1A0B53EC1B2BEAF7E6FA4B -:1077E000C4E90A0109F101002070C0B2142801D1D6 -:1077F000002020700020208103B0BDEC088BBDE884 -:10780000F08F00000100FA43000000000000F03F8C -:107810000000000000000000F0B52DED068B81B0E7 -:10782000F0EE408A00263446DFEDB49A9FEDB39A1D -:107830009FEDB28ADFF8E0536878142840F0FF80AB -:10784000E8780528C0F0FB80F5EE408AF1EE10FAEA -:1078500040F3F58095ED08AB51EC1A0BDFF8DC2313 -:10786000DFF8DC33EAF7DEFB02D29FEDC8AA0EE0B8 -:10787000EAF7C0FB09D84FF06632DFF8C833EAF701 -:10788000D1FB02D29FED9EAA01E09FED9EAAA878AF -:10789000411E00D51431001F00D51430DFF8987355 -:1078A00007EB810191ED0A0A07EB8000D0ED0A0A8F -:1078B00030EE600A10EE100AE9F7E2FF21F0004115 -:1078C000F8F7D0FD00EE100ADFED8F0AB4EE600A83 -:1078D000F1EE10FA10DB1AEE100AE9F7D1FFD5E944 -:1078E0000A2323F00043EAF79DFB05D214212878F0 -:1078F000401E00F00BF90646002E204600F09A804C -:1079000004E037F810100C19A4B2401C1428F8D366 -:107910002046EAF709F9DFF83023DFF83033E9F7DA -:10792000E7FFF8F79FFD08EE100A18EE900AE9F756 -:10793000A7FFDFF81C23DFF81C33E9F7D9FFF8F7BE -:1079400091FD00EE100A28EE008A2878411E00D52D -:1079500014316A78801A00D5143005EB810191ED5D -:107960000C0A05EB8000D0ED0C0A30EE600AFFEE49 -:10797000000A20EE200A10EE100AE9F781FFB64A4D -:10798000B64BEAF713FAF8F76DFD08EE900AF4EE3D -:10799000488AF1EE10FA02DBDFED588A11E028EE9A -:1079A000080A08EEE80A10EE100AE9F769FF41EC50 -:1079B000100B01F0EDFA51EC100BF8F753FD09EE46 -:1079C000900A2879954988EEA90A01EB800282ED98 -:1079D000000A401C2871C0B2142801D1002028716F -:1079E0006879142801D2401C6871002006E001EB80 -:1079F000800292ED000A39EE009A401C6A79134623 -:107A000080B29842F3D3B2EE040A29EE000A00EEE7 -:107A1000902AF8EE600A80EE200A10EE100AE9F7CC -:107A20002FFF864A8E4BE9F763FFF8F71BFD08EE40 -:107A3000100A01E028716871B0EE480A01E09FED7C -:107A40002F0A01B0BDEC068BF0BD000030B52DED66 -:107A5000048B9FED2A8A9FED290ADFED280ADFEDCE -:107A6000278A00231AE0142C00DB143C01EE103AA4 -:107A7000B8EEC11A31EE088A50F8244001EE904A5F -:107A800030EE210A41EE210A13FB03F401EE104A05 -:107A9000B8EEC11A71EE288A5B1CDBB20C46A34219 -:107AA00005DA141B1C19641CDDD51434DEE701EE65 -:107AB000101AB8EE419A69EE200A48EE400A10EE1C -:107AC000900AE9F7DDFE04460D4629EE280A08EE85 -:107AD000480A10EE100AE9F7D3FE624A624BEAF751 -:107AE00031F802460B4620462946EAF75FF9F8F7D7 -:107AF000B9FC00EE100ABDEC048B30BD00000000A4 -:107B0000A69B443BCDCCCC3D90C2F53CF0B50024C7 -:107B1000002801D5143002E0142800DB1438254673 -:107B20002646224609E0DFED190AB4EE600AF1EEBE -:107B300010FA01DB761CB6B2521C431AD2B21746B9 -:107B4000A1F1010C674523DAFB185B1C01D5143346 -:107B500002E0142B00DB143B5F1C142F00DB143FEE -:107B6000DFF8B4C00CEB870797ED0C0A0CEB83032E -:107B7000D3ED0C0A30EE600ADFED240AB4EE600AA1 -:107B8000F1EE10FACFD56D1CADB2D5E76F12033B05 -:107B9000591C00D51431DFF880C00CEB800090ED4B -:107BA0000C0A0CEB8100D0ED0C0A30EE600A10EEEE -:107BB000100AE9F765FE21F00041F8F753FC00EEEA -:107BC000100A0B2E0FD3DFED120AB4EE600AF1EEAD -:107BD00010FA08DBDFED0F0AB4EE600AF1EE10FADE -:107BE00001D5012410E00B2D0ED3DFED090AB4EE10 -:107BF000600AF1EE10FA07DBDFED060AB4EE600A68 -:107C0000F1EE10FA00D502242046F0BD6E1203BB3F -:107C100090C2753DCDCCCC3E307100206079002003 -:107C20008836002010790020D473002000407E4464 -:107C30009B9999999999C93FAC7300209A99999900 -:107C40009999A93F6666E63FFCA9F1D24D62503F83 -:107C50000492B06F2711913FB81E85EB51B8BE3F1B -:107C60009999B93F8DEDB5A0F7C6B03E0FB480B578 -:107C7000192200210846ECF75BFE022801D1022000 -:107C800005E0DBF72FFB2F4800210170012002BC2B -:107C90005DF814FB80B5192200210120ECF748FEA5 -:107CA000022801D1022002BD2648002101700120D6 -:107CB00002BD70B58CB02448446BA069E1684518DA -:107CC00000A8ECF79BFE1F4E3078012801D1002060 -:107CD0000BE000A890EC030ADBF710FB012803D1AE -:107CE00001202870A077307001200CB070BD80B5E5 -:107CF000ECF71CFE154908601549C0F8F81300F5AB -:107D00007E7014494160144981600FF21101C16015 -:107D10000FF24D010161012002BD00000B48006817 -:107D200090F8E903002801D10020704705E080B5F4 -:107D30000020DBF706FE012002BD084890F9000094 -:107D40007047000062FE00200000002030FE00208E -:107D50006D7C0208957C0208B37C020861FE00205D -:107D600018B430220B7812FB030301241C700B782B -:107D700012FB03035C700B7812FB030319249C7045 -:107D80000B7812FB03000022C2700878401C0870B8 -:107D900011BCCCE710B5DFF800450020206001F0F1 -:107DA000DAF8606105206060012010BDDFF8E804AA -:107DB000002101600120704770B52DED048B84B067 -:107DC0000C4600210391029101910091DFF8C85403 -:107DD000012C07D1296090ED008AD0ED018A90ED49 -:107DE000029A7BE069684A1E68692B6893421DDA33 -:107DF0001E22591C09B200F0CFFA85ED020A1E229C -:107E00002868411C09B2686900F0E4FA85ED040AAB -:107E10001E222868411C09B2686900F0F9FA85ED54 -:107E2000030A2868401C00EE100A49E018D11E22FF -:107E300009B200F0B1FA85ED020A1E22696809B2A2 -:107E4000686900F0C7FA85ED040A1E22696809B264 -:107E5000686900F0DDFA85ED030A95ED010A2FE06F -:107E60001E2209B200F088FA06461E220021686927 -:107E700000F082FA95ED020AD6ED000A30EE600AB3 -:107E8000D0ED000A30EE200A85ED020A95ED040AD5 -:107E9000D6ED010A30EE600AD0ED010A30EE200A7C -:107EA00085ED040A95ED030AD6ED020A30EE600A6C -:107EB000D0ED020A30EE200A85ED030A95ED010AA5 -:107EC000B8EEC00AD5ED020A80EE808AD5ED040A2C -:107ED000C0EE808AD5ED030A80EE809AB0EE491A92 -:107EE000F0EE680AB0EE480A01A903A800F022F8F3 -:107EF0000022B0EE491AF0EE680AB0EE480A00A976 -:107F000002A800F0BEF82868401C286001F017F8AD -:107F1000039981610199C1610299016200994162ED -:107F2000022C02D0012101F012F8012004B0BDECB6 -:107F3000048B70BD30B52DED068B81B004460D4627 -:107F4000B0EE40AAF0EE608AB0EE418AB5EE408A0B -:107F5000F1EE10FA40D5F1EE480A00F021FB9FED5A -:107F6000C19B10EE100AE9F78BFC53EC192BE9F7D3 -:107F7000BFFCF8F777FA00EE100A00F02DF9BDEE1D -:107F8000C00A84ED000A2AEE0A0A08EE080A10EE7A -:107F9000100AE9F775FC41EC100B00F0F9FF51EC09 -:107FA000100BF8F75FFA00EE900AB1EE680A00F0E5 -:107FB000F7FA10EE100AE9F763FC53EC192BE9F716 -:107FC00097FCF8F74FFA00EE100A00F005F9BDEE45 -:107FD000C00A85ED000A50E0B5EE408AF1EE10FAD5 -:107FE0004BDDF0EE480AB1EE4A0A00F0D9FA9FEDF7 -:107FF0009D9B10EE100AE9F743FC53EC192BE9F7AF -:1080000077FC0022994BE9F79DFDF8F72BFA00EE7B -:10801000100A00F0E1F8BDEEC00A84ED000A2AEE75 -:108020000A0A08EE080A10EE100AE9F729FC41ECEA -:10803000100B00F0ADFF51EC100BF8F713FA00EE47 -:10804000900AB1EE680A00F0ABFA10EE100AE9F7F8 -:1080500017FC53EC192BE9F74BFC0022844BE9F792 -:1080600071FDF8F7FFF900EE100A00F0B5F8B1EE77 -:10807000400ABDEEC00A85ED000A01B0BDEC068BDA -:1080800030BD30B52DED048B81B004460D46F0EEC9 -:10809000408AB0EE609AB0EE418AB5EE409AF1EEB9 -:1080A00010FA18D5F1EE490A00F07AFA10EE100A2B -:1080B000E9F7E6FB6F4A794BE9F71AFCF8F7D2F9D2 -:1080C00000EE100A00F088F8B1EE400ABDEEC00ADA -:1080D00084ED000A20E0B5EE409AF1EE10FA1BDBC9 -:1080E000B1EE680A00F05CFA10EE100AE9F7C8FB7E -:1080F000604A6A4BE9F7FCFB00225D4BE9F722FD81 -:10810000F8F7B0F900EE100A00F066F8B1EE400A98 -:10811000BDEEC00A84ED000AB5EE408AF1EE10FA19 -:1081200028D528EEA80A09EE090A10EE100AE9F788 -:10813000A7FB41EC100B00F02BFF51EC100BF8F7F4 -:1081400091F900EE900AB0EE480A00F029FA10EE1C -:10815000100AE9F795FB474A504BE9F7C9FBF8F7D6 -:1081600081F900EE100A00F037F8BDEEC00A85ED87 -:10817000000A2CE0B5EE408AF1EE10FA27DD28EE79 -:10818000A80A09EE090A10EE100AE9F779FB41EC9A -:10819000100B00F0FDFE51EC100BF8F763F900EE48 -:1081A000900AB0EE480A00F0FBF910EE100AE9F769 -:1081B00067FB304A394BE9F79BFBF8F753F900EEC0 -:1081C000100A00F009F8BDEEC00A85ED000A01B002 -:1081D000BDEC048B30BD0000DFED270A9FED271AB0 -:1081E000B4EE410AF1EE10FA09DBB4EE600AF1EEEA -:1081F00010FA04D5DFED220A30EE200A7047B4EE03 -:10820000600AF1EE10FA0BDBDFED1E0AB4EE600A35 -:10821000F1EE10FA04D5DFED1C0A30EE200A7047AB -:10822000DFED1A0ADFED1A1AB4EE610AF1EE10FA68 -:1082300009DBB4EE600AF1EE10FA04D5DFED150AA1 -:1082400030EE200A7047B4EE600AF1EE10FA08DB57 -:10825000DFED130AB4EE600AF1EE10FA01D530EE4C -:10826000010A7047E6C1631ADCA54C4000806640F5 -:10827000008066C0E6C1631AFFFF06C4000034C474 -:1082800000003444FFFF33C30000B443010007443F -:10829000010034430000B4C3E4FC0020DCA54C40E2 -:1082A00001003444E54A12689FEDBC0A038800EBE4 -:1082B0004303B3F9043000EE903AF8EEE00A92ED91 -:1082C000001AB8EE411A70EEC10A92ED031AB8EE28 -:1082D000411AC0EE810A60EE800AC1ED000AD2EDBB -:1082E000010AF8EE600A038800EB4303B3F9063095 -:1082F00001EE103AB8EEC11A70EEC10A92ED041AFE -:10830000B8EE411AC0EE810A60EE800AC1ED010AA2 -:10831000D2ED020AF8EE600A038800EB4300B0F9E0 -:10832000080001EE100AB8EEC11A70EEC10A92ED13 -:10833000051AB8EE411AC0EE810A20EE800A81EDDE -:10834000020A012070470388934201D3002303806F -:1083500003885B1C03809BB2934201D300220280FE -:10836000028802EB420300EB8300001D91EC030A3C -:1083700080EC030A01207047B0F90030591A09B2A5 -:10838000002901D511FA82F109B201EB410200EB9B -:108390008200001D7047000030B49FEDB80A002332 -:1083A000B0F9004010E024B2002C08D404EB4405DE -:1083B00000EB8505D5ED010A30EE200A641E24B2DB -:1083C000002C00D5541E5B1C1BB28B42EBDB30BC77 -:1083D0007047000030B49FEDA90A0023B0F90040B7 -:1083E00010E024B2002C08D404EB440500EB850512 -:1083F000D5ED020A30EE200A641E24B2002C00D50E -:10840000541E5B1C1BB28B42EBDB30BC7047000080 -:1084100030B49FED9A0A0023B0F9004010E024B276 -:10842000002C08D404EB440500EB8505D5ED030AC8 -:1084300030EE200A641E24B2002C00D5541E5B1CB2 -:108440001BB28B42EBDB30BC7047000010B52DED4A -:10845000068BADF2D47D00A80FF2282140F2D47231 -:10846000ECF72EFC9FED768B9FED779B00ACB5EE85 -:10847000400AF1EE10FA48DB9FED75ABDFED760AAE -:10848000B4EE600AF1EE10FA1AD510EE100AE9F710 -:10849000F7F953EC192BE9F72BFA53EC182BE9F702 -:1084A00051FBE9F703FB54F82000E9F733FB53ECE9 -:1084B0001A2BE9F71DFAF7F7D5FF00EE100A68E06E -:1084C000F7EE000A80EE800A10EE100AE9F7D8F9FC -:1084D00053EC192BE9F70CFA53EC182BE9F732FBA4 -:1084E000E9F7E4FA54F82000E9F714FB53EC1A2BEF -:1084F000E9F7FEF902460B465B485849E9F796FB57 -:10850000F7F7B0FF00EE100A43E0FFEE000AB4EE0A -:10851000600AF1EE10FA1CDBB1EE400A10EE100A10 -:10852000E9F7AEF953EC192BE9F7E2F953EC182B04 -:10853000E9F708FBE9F7BAFA54F82000E9F7EAFA94 -:108540000022474BE9F7D4F9F7F78CFF00EE100A49 -:108550001FE080EE800A10EE100AE9F791F953EC63 -:10856000192BE9F7C5F953EC182BE9F7EBFAE9F702 -:108570009DFA54F82000E9F7CDFA0022394BE9F7CB -:10858000B7F9394A3E4BE9F7DDFAF7F76BFF00EE32 -:10859000100A0DF2D47DBDEC068B10BDC3F51C4155 -:1085A00080B5B0EE401AF5EE400AF1EE10FA04DDA7 -:1085B00081EE200ABDE8014048E7F5EE400AF1EE01 -:1085C00010FA24D581EE200AB5EE401AF1EE10FA29 -:1085D0000EDBFFF73BFF10EE100AE9F751F9224AD4 -:1085E000224BE9F7AFFAF7F73DFF00EE100A01BDA5 -:1085F000FFF72CFF10EE100AE9F742F91A4A1C4B5C -:10860000E9F7A0FAF7F72EFF00EE100A01BDB5EE6C -:10861000401AF1EE10FA02DD9FED160A01BDB5EE2B -:10862000401AF1EE10FA02D59FED130A01BD9FED3D -:10863000130A01BD014908607047000040FE002098 -:10864000000000000000E03F0000000000407F400C -:10865000000000000000503F0100803FFB21F93F77 -:10866000000050BF0000503F182D4454FB2109402A -:10867000FB2109C0DB0FC93FDB0FC9BF00000000B1 -:10868000FB21F9BF00000000020000000400000010 -:1086900006000000080000000A0000000C000000B6 -:1086A0000E00000010000000120000001400000086 -:1086B00017000000190000001B0000001D00000052 -:1086C0001F00000021000000230000002500000022 -:1086D00027000000290000002B0000002D000000F2 -:1086E0002F000000310000003300000035000000C2 -:1086F00037000000390000003B0000003D00000092 -:108700003F00000041000000430000004600000060 -:10871000480000004A0000004C0000004E0000002D -:1087200050000000520000005400000056000000FD -:10873000580000005A0000005C0000005E000000CD -:10874000600000006200000064000000660000009D -:10875000680000006A0000006C0000006E0000006D -:10876000700000007200000074000000760000003D -:10877000780000007A0000007C0000007E0000000D -:1087800080000000820000008400000086000000DD -:10879000880000008A0000008C0000008E000000AD -:1087A000900000009200000094000000960000007D -:1087B000980000009A0000009C0000009E0000004D -:1087C000A0000000A2000000A4000000A60000001D -:1087D000A8000000AA000000AC000000AE000000ED -:1087E000B0000000B2000000B4000000B6000000BD -:1087F000B8000000BA000000BC000000BE0000008D -:10880000C0000000C2000000C4000000C60000005C -:10881000C8000000CA000000CC000000CE0000002C -:10882000D0000000D2000000D4000000D6000000FC -:10883000D8000000DA000000DC000000DE000000CC -:10884000E0000000E2000000E4000000E60000009C -:10885000E7000000E9000000EB000000ED00000070 -:10886000EF000000F1000000F3000000F500000040 -:10887000F7000000F9000000FB000000FD00000010 -:10888000FF000000010100000301000004010000DE -:1088900006010000080100000A0100000C010000B0 -:1088A0000E01000010010000120100001401000080 -:1088B0001601000018010000190100001B01000052 -:1088C0001D0100001F010000210100002301000024 -:1088D0002501000027010000290100002A010000F5 -:1088E0002C0100002E0100003001000032010000C8 -:1088F0003401000036010000380100003901000099 -:108900003B0100003D0100003F010000410100006B -:10891000430100004501000046010000480100003D -:108920004A0100004C0100004E010000500100000F -:1089300051010000530100005501000057010000E3 -:10894000590100005B0100005C0100005E010000B5 -:108950006001000062010000640100006501000088 -:1089600067010000690100006B0100006D0100005B -:108970006E0100007001000072010000740100002F -:108980007601000077010000790100007B01000002 -:108990007D0100007F0100008001000082010000D5 -:1089A00084010000860100008701000089010000A9 -:1089B0008B0100008D0100008E010000900100007D -:1089C0009201000094010000950100009701000051 -:1089D000990100009B0100009C0100009E01000025 -:1089E000A0010000A2010000A3010000A5010000F9 -:1089F000A7010000A8010000AA010000AC010000CE -:108A0000AE010000AF010000B1010000B3010000A1 -:108A1000B4010000B6010000B8010000B901000077 -:108A2000BB010000BD010000BF010000C00100004B -:108A3000C2010000C4010000C5010000C701000020 -:108A4000C9010000CA010000CC010000CE010000F5 -:108A5000CF010000D1010000D3010000D4010000CB -:108A6000D6010000D7010000D9010000DB010000A1 -:108A7000DC010000DE010000E0010000E101000077 -:108A8000E3010000E5010000E6010000E80100004C -:108A9000E9010000EB010000ED010000EE01000023 -:108AA000F0010000F1010000F3010000F5010000F9 -:108AB000F6010000F8010000F9010000FB010000D0 -:108AC000FD010000FE0100000002000001020000A4 -:108AD0000302000004020000060200000802000079 -:108AE000090200000B0200000C0200000E02000050 -:108AF0000F02000011020000130200001402000027 -:108B00001602000017020000190200001A020000FD -:108B10001C0200001D0200001F02000020020000D5 -:108B200022020000230200002502000026020000AD -:108B300028020000290200002B0200002C02000085 -:108B40002E0200002F02000031020000320200005D -:108B50003402000035020000370200003802000035 -:108B60003A0200003B0200003D0200003E0200000D -:108B700040020000410200004302000044020000E5 -:108B80004602000047020000480200004A020000BE -:108B90004B0200004D0200004E0200005002000097 -:108BA0005102000053020000540200005502000070 -:108BB00057020000580200005A0200005B02000049 -:108BC0005C0200005E0200005F0200006102000023 -:108BD00062020000640200006502000066020000FC -:108BE00068020000690200006A0200006C020000D6 -:108BF0006D0200006F0200007002000071020000B0 -:108C00007302000074020000750200007702000089 -:108C1000780200007A0200007B0200007C02000063 -:108C20007E0200007F02000080020000820200003D -:108C30008302000084020000860200008702000018 -:108C4000880200008A0200008B0200008C020000F3 -:108C50008E0200008F0200009002000092020000CD -:108C600093020000940200009602000097020000A8 -:108C700098020000990200009B0200009C02000084 -:108C80009D0200009F020000A0020000A10200005F -:108C9000A2020000A4020000A5020000A60200003B -:108CA000A8020000A9020000AA020000AB02000016 -:108CB000AD020000AE020000AF020000B0020000F2 -:108CC000B2020000B3020000B4020000B5020000CE -:108CD000B7020000B8020000B9020000BA020000AA -:108CE000BC020000BD020000BE020000BF02000086 -:108CF000C1020000C2020000C3020000C402000062 -:108D0000C5020000C7020000C8020000C90200003E -:108D1000CA020000CB020000CD020000CE0200001B -:108D2000CF020000D0020000D1020000D3020000F8 -:108D3000D4020000D5020000D6020000D7020000D5 -:108D4000D8020000DA020000DB020000DC020000B2 -:108D5000DD020000DE020000E0020000E10200008F -:108D6000E2020000E3020000E4020000E50200006D -:108D7000E6020000E8020000E9020000EA0200004A -:108D8000EB020000EC020000ED020000EE02000029 -:108D9000F0020000F1020000F2020000F302000005 -:108DA000F4020000F5020000F6020000F7020000E5 -:108DB000F8020000FA020000FB020000FC020000C2 -:108DC000FD020000FE020000FF02000000030000A0 -:108DD000010300000203000003030000050300007C -:108DE0000603000007030000080300000903000059 -:108DF0000A0300000B0300000C0300000D03000039 -:108E00000E0300000F030000100300001103000018 -:108E100013030000140300001503000016030000F4 -:108E20001703000018030000190300001A030000D4 -:108E30001B0300001C0300001D0300001E030000B4 -:108E40001F03000020030000210300002203000094 -:108E5000230300002403000010B500F081F800F0A7 -:108E600099FFFEF797FF454C4422002104F10C00C6 -:108E7000E9F7F5F80A2200212046E9F7F0F80A227E -:108E800000213F48E9F7EBF80C22002104F15400DF -:108E9000E9F7E5F83B4C4FF4B67200212046E9F7BC -:108EA000DEF81E20208010BD00F074BF80B500F0F9 -:108EB000A5FFBDE80140FEF779BF3148F9F7BEBB19 -:108EC00010B42F482D491CC81CC10C38002141800A -:108ED00010BC704710B50446FFF7E4F92088401C29 -:108EE0002080B4F9021080B2884200DB218001208A -:108EF00010BD38B5214C256D04F154012046FFF713 -:108F0000E9FF1E2204F154011E48FFF71CFA01215B -:108F100004F15400FEF750FFA80705D5002104F125 -:108F2000540000F06DFF04E0012104F1540000F052 -:108F300067FF002104F10C00BDE8344007E012484F -:108F400070470E49CA6822EA0000C860704702688C -:108F50001143016070470B4870470C490860704727 -:108F60000A48006800210160416081604FF480611F -:108F7000C16001614161012101767047FC770020E9 -:108F80009C7B0020446D002008780020E87B0020B6 -:108F900051EC100B00B500F003F841EC100B00BDD4 -:108FA00040F2FF7C0B0D4DD0634566D230B421EA10 -:108FB000035141F4801103F2FD3C5FEA5C0C01D3E4 -:108FC00000184941890041EA907180004FF4401433 -:108FD0000023E202D50AB1F5100107D46D081DD2B5 -:108FE000091B641900184941491BF7D56D080AD2BD -:108FF0000919641B00184941491BEFD56D08F7D3C7 -:1090000001E0520817D0C01861419B1AAC4100180A -:109010004941801AA941F4D452080AD0C01AA1418A -:109020009B186C4100184941801AA941E9D45208A3 -:10903000F4D15B1C6C4161084FEA330001EB0C5129 -:1090400030BC704750EA0103FBD030B4B1FA81F371 -:1090500011B9B0FA80F41B190B3BB3F120042FBFF8 -:1090600000FA04F19940C3F1200420FA04F438BF57 -:1090700021439840D3F101039DE76345E1D011F509 -:10908000801FDED850EA4101DBD0D94301F022B97C -:10909000C046C046024A11001820ABBEFBE700BF25 -:1090A0002600020010EE101A10EE902AB0EEC00A50 -:1090B000C80F49005200F0EEE00A28BF0C3011F151 -:1090C000807F38BF12F1807F0CD28A4238BF80F097 -:1090D0000400124214D034BF80EE800A80EE200AD1 -:1090E00001F0FEB811F1807F08BF80F0040098BF46 -:1090F00012F1807F08D88A4214BF00224FF07E52BE -:1091000000EE102A01F0ECB86FF0004100EE101AEA -:109110007047000010EE101A4FF07E5C01EE90CA0E -:10912000C80F31F0004122D000EE101AB1F17E5F7D -:1091300013D871EEC00ADFF838C031EE801A61EE44 -:10914000200AF1EEE00A614586BF80F0040080EE5F -:10915000800A80EE200A01F0C3B8490011F1807F37 -:109160009CBF6FF0004100EE101A41F2B3807047CF -:10917000F404353F40EA010C5FEA4C0C07D088420A -:1091800005D14FEA400C1CF1807F98BF80427047A8 -:1091900000EE100A00EE901A20EE200A10EE100ADF -:1091A0007047000030B4C26890F82A304B8402F255 -:1091B00022035D8AED05ED0D0D844D8C112D07D137 -:1091C0005D8AC5F3C0251DB19C88CC84DC8802E093 -:1091D0005D88CD84548C0C85848C4C854469A58A2B -:1091E0000DB9258CC584C08C8885908E00F44060B4 -:1091F000B0F5806F07D154685B8B088D34F813305D -:1092000090FBF3F005E02069E368834234BFC01AA5 -:109210000020C885106D086430BC704738B504461E -:109220000D46FFF7BFFF2846C046C04600206884B1 -:10923000A8840021206981870421C1872046BDE8D8 -:10924000324001F0DCB900002DE9F041074682B060 -:109250003E693068018BBA6B4C08F1680025914279 -:1092600031D1B38DB1FBF3F203FB12174289716A5E -:10927000BFB27A43DF193F1B97FBF3FC03FB1C7360 -:1092800001EB420227001AD0B0F80AC09BB20CFBD7 -:1092900003FC002701EB4C0C964604E03EF8028BE1 -:1092A0002CF8028B7F1CB0F80A804745F6DB5B1C6C -:1092B000B78D9BB2BB4228BF0023641EE4D1B587A3 -:1092C0000420F0878FE010198142C0F08C8038466E -:1092D00001F0BCF8F968B1F846200146384601F0C3 -:1092E000D6F8788D010A19BFA0F5807078853046D0 -:1092F00000F0A6FB388D010A042974D8DFE801F0DC -:10930000030A353F6800C1076DD54FF6FE7108406E -:10931000388568E0C0F30010C8B9F88DF1688AB2EA -:1093200003199A42BCBF081B80B2091AF160B96BDD -:1093300011B1081A001BB8636FF002013869818708 -:109340000821C18797F8280040F404700CE097F8D2 -:109350002A0078856FF00201386981870821C1876A -:1093600097F8280040F400703885388D40F00100EF -:1093700038850125B969304600F0A8FB33E04FF687 -:10938000FE71084038850125F868808EC0F30031F1 -:1093900031B1788D00F47F4040F05400788522E0B0 -:1093A00097F82A10132918BF14291CD0C0F3C02025 -:1093B00048B9ADF8000000A93846D7F75FFD798DB0 -:1093C00060F30701798538467968FFF7EBFE0AE01C -:1093D000788D00F47F4040F0110078853846796838 -:1093E000FFF7E0FE01252846BDE8F68190F82A1037 -:1093F00011291CBF1429132908D0542902D140680F -:10940000418403E0C068808EC00501D00120704710 -:1094100000207047F8B5426C6A4D02F6F80402F677 -:10942000B00262616060256017262B88E6854FF6E2 -:10943000EF766D8855834FF67B7C258D2E402685F3 -:109440000CEA06060D686F883F06FF0F46EA87069E -:1094500026850789032F0CD1898EC1F3802109B19C -:10946000002105E0C6F38001002914BF022101217B -:1094700001810189D182C189B1F5C87F0EBF698B95 -:1094800001EB630191FBF3F19183818939B14FF4D1 -:109490007A755E0805FB0161B1FBF3F100E0A98B71 -:1094A0001183218DC1F38001002901BF4189002969 -:1094B00003214181408959084FF47A7505FB00105A -:1094C000B0FBF3F0A08501F1F00090FBF3F0108108 -:1094D00001F6C41090FBF3F05081204601F08FF8A4 -:1094E0000020A0872046F2BD2DE9FC410446656CB2 -:1094F00015B95020BDE8F681606800281CBF2068BF -:10950000002805D1532060842046FDF718FE56E060 -:1095100000206084A084E086A08A08B9032002E0CD -:10952000062801DB0520A082E08910B94FF4C8703D -:1095300008E0B0F5617FC8BF4FF4617002DC6428B9 -:1095400001DA6420E0812046D9F79CFD060005D0B1 -:109550002046D7F7B1FF5FEA000803D12046C04696 -:10956000C0462CE0308AB8F83C10884205D055201F -:1095700060842046C046C04621E01349204600F0E2 -:10958000B3FB074641462046FFF744FF4169CA8ABC -:10959000022A04BF0122A1F84420C0F80C80076110 -:1095A000866005F61E0181614FF480533968498950 -:1095B00001EB4102510082698B527969C161608C73 -:1095C000BDE8F681903F0308443F0308418A828A40 -:1095D000891A09B2002902D5B0F91000091809B298 -:1095E000F02901DB0120704700207047418A828A00 -:1095F000891A09B2002901D5008A4118084600B22B -:109600007047F8B5044692B2F12A09D2E568444899 -:10961000854205D1B4F91460002E0CD0F02E0AD08A -:1096200040480121016012B211460FF21410E6F712 -:1096300074FD0120F2BD1F463B48874205D300F56B -:10964000B85C0CF1700C67450AD3364901220A60F8 -:10965000024619460FF2F000E6F75FFD0120F2BD69 -:1096600012B2002A14D0608A801B00B2002802D5F2 -:10967000B4F91070C01900B2F02801DA0020F2BD70 -:10968000520005EB460000EB4101184600F04EF891 -:10969000A08AF030A082B4F9101000B2884201D143 -:1096A0000020A0822068401C20600120F2BD10B57F -:1096B0000446F02A0BD1E068194B984207D1B4F95F -:1096C0001230002B0DD0B4F91230F02B09D0154810 -:1096D0000121016011460FF28000BDE81040E6F75D -:1096E0001CBD4FF4F072B4F9123000EB430000F0EF -:1096F0001DF8608AF0306082B4F91200B4F91010DD -:10970000884201D100206082208BF0302083B4F9A0 -:10971000101000B2814200DD0146218310BD00001F -:1097200098AF002094AF002058B3002003E011F858 -:10973000013B00F8013B13465A1E002BF7D170473E -:10974000734D4D3120256400734D4D322025235833 -:109750002C25235800000000734D4D332025640054 -:10976000F0B50446002500262F464FF4C07047F69A -:10977000294312FB03F24FEAE23CE25F31F902EBCC -:10978000A2EB0C0C0CF30F0C1EFB0CFC4FEA2C4C48 -:1097900024F802CB6545B8BF6546B445B8BF6646F8 -:1097A000401EE6D14FF480712046D9F797FD7142F3 -:1097B00004F580708D42B8BF0D462DB2012D1FDB20 -:1097C000A0F5806043F6FF7101E06D007F1C2DB2B3 -:1097D0008D42BCBF3FB20A2FF7DB60210288BA403E -:1097E00020F8022B0288BA4020F8022B0288BA40E7 -:1097F00020F8022B0288BA4020F8022B491EEDD136 -:1098000038B2F0BD2DE9F24F024682B01069DFF8A0 -:10981000CC940090D0F81CB08169019100230468B9 -:10982000E55E47F6FF7A0DE0DFF8B4148842B8BF72 -:10983000DFF8B0042188691A2BF811006D1C9B1CFD -:109840002DB21BB26088854280F28780E06B30F9D0 -:10985000131000EB430000274088A0EB010C206CA4 -:1098600000EB410000F1020EA06B019930F91500E8 -:1098700001EB800000260FFA8CFC00F10408BCF11B -:10988000000F13D058F8040B3EF8021BA1FB000197 -:10989000C00BACF1010C40EA414086190FFA8CFC78 -:1098A000BCF1000FEED101E076087F1CE089E16A8F -:1098B00001EB800151F8041C8E4228BF032EF3D225 -:1098C000022E24D3002100B2D4F82CC0A0EB010E4C -:1098D000BEF1020F0ADB00EB010E4FEA6E0E5CF8E0 -:1098E0002EC0664534BF70467146EDE75CF821E056 -:1098F0005CF820C0A6EB0E06ACEB0E0C02E076087E -:109900004FEA5C0C4E45FAD2BCF1000F05D120881D -:10991000281A00212BF8101090E7D4F828E03EF91F -:1099200011103EF91000401A7043B0FBFCF000FA31 -:1099300081F0BDF80810C91B09B2676C002951BF3E -:1099400037F91110494237F91110494209B2401A4A -:109950005045FFF669AF50466CE7108DC0F34000EC -:1099600028B35069009BC1685B688B4226BF591AB7 -:1099700089B2002101F11003DC1003EB14742411EF -:10998000A3EB04130429AEBF0421491C89B2D48C73 -:10999000166A4D1E05FB04644D0814FA85F4B4FBE9 -:1099A000F1F1D1849BB200EB4300D18C018403B070 -:1099B000BDE8F08F2DE9F04F0168B1F90230B1F93F -:1099C00000404A6A1B1B8468858DB4FBF5F805FBD3 -:1099D00018444D8924B26C43456A05EB44041BB21C -:1099E0000027BF4D47F6FF7806E0AC45B8BFDFF86B -:1099F000F4C224F802CB7F1C3FB2B1F80AE0BC46A7 -:109A0000F4451BDAC6694FF0000E012B09DB9946BD -:109A100036F902AB32F902BB1AFB0BEEB9F10109C0 -:109A2000F6D10E6B36F91C604FEA2E2E06FB0EF6B1 -:109A30004FEA262CC445D8DBC446DAE7BDE8F08FF0 -:109A40002DE9F043828DC368B0F93E4001684D8B2B -:109A5000D3181B1BB3FBF2F402FB14324B8912B276 -:109A60005A43436A03EB4202B0F93C301C46A5421C -:109A7000B8BF2CB204DB002C48BF2CB25B1C838720 -:109A8000631C1BB24FF0000C5C1E964D944E47F6C3 -:109A9000FF7808E0B645B8BFAE4627F81CE00CF1E9 -:109AA00001070FFA87FCB1F80AE0F4450CDA076AFF -:109AB00032F9029B37F91CE004FB0E9E9EFBF3FE7D -:109AC000C645E7DBC646E8E7BDE8F0832DE9F34F7E -:109AD00085B0006805990190B0F90A00019A0090DC -:109AE0000598B2F91820808DC968821A5118491C4E -:109AF000B1FBF0F200FB121000B2039000210098BD -:109B00000128C0F2E88000A8425E0598406ADDF8AE -:109B100018B0DFF8D091029003460598D0F8208065 -:109B20000398401C00B20490019846890398029F54 -:109B3000DDF810E006FB001007EB4007B7F9000066 -:109B4000C5100598808D9EFBF0F400FB14E424B250 -:109B5000002C0CBF1F4607EB4607641C0FFA84FC61 -:109B60009CFBF0F4B7F900E000FB14C424B205EB51 -:109B7000EE05002C0CBF9C4607EB460CBCF90070B0 -:109B8000641C05EB671E24B294FBF0F53F1100FB4B -:109B900015447F4224B2002C0CBF9C460CEB460CB3 -:109BA000BCF90050641CAEEBE50EA7EB651724B2C0 -:109BB00094FBF0F500FB15452DB2002D0CBF9C4623 -:109BC0000CEB460CBCF900404FEA241A0AEB8A0A57 -:109BD000AEEB0A0EB8F900A06D1CA4EB0A042DB27E -:109BE00095FBF0FA00FB1A5564112DB2002D0CBF45 -:109BF0009C460CEB460CBCF900A06D1CAEEBEA0ECB -:109C000007EB6A172DB295FBF0FA00FB1A552DB23F -:109C1000002D0CBF9C460CEB460CBCF900A06D1C43 -:109C20000EEB6A1E07EB2A172DB295FBF0FA00FB2C -:109C30001A552DB2002D0CBF9C460CEB460CBCF9FE -:109C400000A06D1C0EEBEA0E2DB295FBF0FA00FBA6 -:109C50001A5000B200280CBF9C460CEB460CFE01CB -:109C60000A2796FBF7F6BCF90070E0010EEBE70758 -:109C7000FF01642497FBF4F7B0F5004FA8BF47F647 -:109C8000FF7002DA4845B8BF4846B6F5004FA8BF96 -:109C900047F6FF7602DA4E45B8BF4E46B7F5004F9D -:109CA000A8BF47F6FF7702DA4F45B8BF4F462BF8FB -:109CB000020B491C069820F8126008F1020800986F -:109CC000069E801800B226F810709B1C0098521C4B -:109CD0008142FFF629AF07B0BDE8F08F0100100008 -:109CE0000280FFFF0180FFFF426C02F670000160FE -:109CF000002181870421C18702F60401016202F27A -:109D0000D071C16102F574714161816102F5F87130 -:109D100081621321818542627047F8B504460020B4 -:109D2000256968876869B5F91020B0F8DE112982C5 -:109D30002968096AFFF714FDE8866969084600F09A -:109D400079FCE98E081A4000E88600222968A86993 -:109D5000B1F908100023012910DB0646B6F902709C -:109D600036F904CB1CFB0CFC17FB07C712B240F8FA -:109D700022709B1C521C1BB28B42EFDBB5F93610D4 -:109D80002046FFF73FFD2846FFF714FEA868401C59 -:109D9000A860F1BD10B5DFF82C45FFF7DCF8606670 -:109DA0000020024603E004EB8001CA62401C09283F -:109DB000F9DB10462066E065FFF7C1F8A0664FF4B6 -:109DC000FA7020606060DFF80005A0609FED0A0A6D -:109DD00084ED030A84ED040A84ED050AB5EE000A59 -:109DE00084ED060A84ED070ADFF8E004206207200C -:109DF0006062A06210BD00009A99193F7047000090 -:109E0000F0B52DED048B87B00C469FED438ADFF84B -:109E1000B46400207065B065306E401C3066DFF8B9 -:109E2000B054012C02D1002068672867F06D0A2821 -:109E300044DA1E220021706EFEF79EFAC5F88C00EF -:109E40001E220121706EFEF797FAF16D06EB81027A -:109E5000336E03EB8307BB00D36201292CDBD5F8FB -:109E60008C3093ED000AD0ED000A30EE600A8DEDE3 -:109E7000030A93ED010AD0ED010A30EE600A03AF48 -:109E800087ED010AD3ED020A90ED021A70EEC10AC5 -:109E9000C7ED020A05EB81009DED031ADDED031A03 -:109EA00021EE211A00EE001A00EEA01A80ED051A2C -:109EB000D36A926A9A1A8263481CF065316E0A2945 -:109EC00002DA0320C5F88800F06D0A28C0F23E814E -:109ED000401EF065706E0A2920D11E220A21FEF76D -:109EE0005BFA85ED030A1E220A21706EFEF772FAF4 -:109EF00085ED040A1E220A21706EFEF789FA85EDAF -:109F0000050A0020092844DA05EB800191ED060AD4 -:109F100038EE008A401CF5E7000000001E220A21EE -:109F2000FEF72AFAD5F88C1095ED030AD0ED000A59 -:109F300030EE600AD1ED000A30EE200A85ED030A0A -:109F400095ED040AD0ED010A30EE600AD1ED010A68 -:109F500030EE200A85ED040A95ED050AD0ED020ADF -:109F600030EE600AD1ED020A30EE200A85ED050AD6 -:109F7000F06D05EB800090ED050AD0ED040A30EE9F -:109F8000200AD0ED030A30EE200AF0EE080A20EE97 -:109F9000208AB2EE040AD5ED030AC0EE800ACDEDA8 -:109FA000000AD5ED040AC0EE808A00A8C0ED018A3F -:109FB000D5ED050A80EE809A80ED029A306E0A286F -:109FC00005D100982860C5ED018A85ED029A002729 -:109FD0000FE01E22C7F1090109B2706EFEF7CCF93D -:109FE00095ED021AD5ED010A95ED000A00F0EFF8A3 -:109FF0007F1C0A2FEDDBF06A716A726D914249DABB -:10A00000A96F002908D128660121A9670099296054 -:10A01000C5ED018A85ED029AB16AB26D91420CDA02 -:10A02000E96F00290BD168660121E9670099296071 -:10A03000C5ED018A85ED029A01E00021E967296EEC -:10A04000411A296732686B6EC31A9A420CD2EB6FC1 -:10A05000012B09D10020C5F88000C5F8840068678D -:10A060000120C5F8880060E08A420CD2A96F01295E -:10A0700009D10020C5F88000C5F884006867022077 -:10A08000C5F8880051E0A96E401A68670320C5F83A -:10A0900088004AE000992960C5ED018A85ED029AA1 -:10A0A0000021A967E9672967D5F88010002903D145 -:10A0B000A8660121C5F88010A96E411A69679FED55 -:10A0C0007F0A28EE000AB5EE400AF1EE10FA03DC32 -:10A0D0009FED7B0A28EE000AD6ED020AB3EE041AC1 -:10A0E00060EE810AF4EE400AF1EE10FA08D5D5F8D8 -:10A0F0008410002907D1E8660121C5F8841002E028 -:10A100000021C5F884107168A1F5FA71EA6E801A11 -:10A11000814207D2D5F88400012803D10420C5F874 -:10A12000880002E00320C5F8880000200CE006EB60 -:10A1300080010A6BCA62082805DA05EB8001CA694A -:10A140008A610A6CCA63401C0928F0DBD5F88800D4 -:10A15000012806D037D303281CD00ED3042826D0DC -:10A1600031E0B06E0121C162296F016302214163B8 -:10A17000002C28D1FEF7EBFE25E0B06E0121C16274 -:10A18000296F016304214163002C1CD10221FEF7D9 -:10A19000DEFE18E0B06E0121C162696F0163082123 -:10A1A0004163002C0FD10221FEF7D1FE0BE0B06E0F -:10A1B0000121C162696F016310214163002C02D14A -:10A1C0000221FEF7C4FE07B0BDEC048BF0BD83B0E6 -:10A1D000D0ED001A31EEC00A8DED000A90ED010AB3 -:10A1E00030EE600A00A981ED010AD0ED020A70EE9E -:10A1F000C10AC1ED020A9DED001AB5EE401AF1EE5A -:10A2000010FA03D5B1EE411A8DED001AB5EE400AF1 -:10A21000F1EE10FA03D5B1EE400A81ED010AF5EE38 -:10A22000400AF1EE10FA03D5B1EE600A81ED020AA0 -:10A2300024489DED000AD0ED030AB4EE600AF1EE69 -:10A2400010FA13D591ED010AD0ED040AB4EE600ABC -:10A25000F1EE10FA0AD591ED020AD0ED050AB4EE3E -:10A26000600AF1EE10FA01D5012200E000229DED16 -:10A27000000AD0ED060AB4EE600AF1EE10FA13D52A -:10A2800091ED010AD0ED070AB4EE600AF1EE10FA82 -:10A290000AD591ED020AD0ED080AB4EE600AF1EE9B -:10A2A00010FA01D5012100E00021436DD21842656A -:10A2B000826D8918816503B07047000000007A4400 -:10A2C00000007AC40CE30020000040413333B33E69 -:10A2D0007CF700201FB502F08BFB212101601FBD20 -:10A2E0001AA210EE101ADFF860C0F2EC060A6145FF -:10A2F00009DB00EE803A70EE800A83EE200A40F01F -:10A30000020010EE101A21F0004CDCF1665C0BD854 -:10A3100060EE000A20EE203A03EE010A01EEA02AC8 -:10A3200042EE202A80EE220A400810F0020F18BFE9 -:10A33000B1EE400A02EB8002D2ED000A30EE200AB4 -:10A3400028BFB1EE400A7047A430893ED7B3DD3F45 -:10A350006AD5033F2B94A93DB82A593F0000803F9E -:10A36000000080BF00000000920A063FDB0FC93FDB -:10A37000920A863FDB0FC93F920A0640DB0F494035 -:10A38000368D2740F0B443695D88DF880A466C1C2F -:10A3900005FB072707EB6407B7FBF4F7002147F637 -:10A3A000FF74A742A8BF274603DA264EB742B8BFBC -:10A3B000254FDF801F89BD420BD2072D07DB5F8051 -:10A3C000DD8A35B9058D45F08005058501E06D1CF8 -:10A3D0005D80DD8A15B1012D05D010E0018DC1F33E -:10A3E000C01169B910E09E8A9D88022E0CBF2E46CE -:10A3F00005F5967645B1DD88B6B2AE4204D20121AC -:10A40000058D45F08005058518889F88461C00FB52 -:10A41000072202EB6602B2FBF6F2A242A8BF224676 -:10A4200003DA084CA242B8BF074A9A805A89904280 -:10A4300004D20628AEBF1A80401C1880F0BC084623 -:10A44000704700000280FFFF0180FFFF38B504461F -:10A450002069818D02688368158B5289406A5B1E72 -:10A46000A3EB5503CB18B3FBF1F501FB153189B212 -:10A47000514330F8115029462046FFF783FFA18C45 -:10A48000A94238BF2946A18400B9E58432BDF0B4A1 -:10A4900003695C681B681B8B4569A4EB530605F1D7 -:10A4A0000C031F8937B1022F39D017D3032F6DD07A -:10A4B000F0BC704711B1EE6001209DE0818D002954 -:10A4C00000F09B80B14280F098800421198190F8BF -:10A4D000281001F0FE0141F4806154E0E9B1E9681F -:10A4E000DA89711A9142C0F08880102E32BF0021A3 -:10A4F000611C01F00F0105EB41014FF6FD72098C63 -:10A50000C184018D11400185E96801630221A9829E -:10A5100090F8281041F4807135E000206CE011B90A -:10A520005E60032068E05989002966D1818D002989 -:10A5300063D0B14261D20421198190F8281001F052 -:10A54000FE0141F480610185C1F38001002954D1ED -:10A55000C1688A8EC2F3C022002A4ED0828C43F694 -:10A5600099239A4249DBB1F856208B8E62F3080397 -:10A570008B86418D01F47F4141F03301418590F894 -:10A58000281041F440710185F0BC704799BB2969DE -:10A59000491E41638ABB9A8952B1046B091B491C4D -:10A5A00089B28A4204D20021198190F828100185CD -:10A5B000A98B2A6912FA81F18E421ED390F82810D5 -:10A5C00041F440710185042119812A690168EB6811 -:10A5D000D21A8B889A4238BF132105D3828CC9883E -:10A5E0008A4234BF14210021428D02F47F4211437C -:10A5F0004185F0BC704702201881F0BC704741696A -:10A6000000228A8290F82820028500220A61CA600E -:10A610000A804A80CA808A808284028D42F00202C7 -:10A6200002850022C28410200A84891C401EFBD1AE -:10A630007047000038B50D4604460FF25C424FF4F7 -:10A64000807100F07DF80FF2D0324FF48071204617 -:10A6500000F0B0F900954FF480710FF640230FF62B -:10A660003802204600F002F8082032BD2DE9F14FF3 -:10A67000101D009A151D02EB8102161F0A9A1C1D5F -:10A68000131D490802F2FE38491E39D0D0F800C027 -:10A690002F68D4F800E0D6F80090D5F800A047FB6A -:10A6A0000CFC376827FB0ECC2F6855F804BB47FB22 -:10A6B0000EFE076829FB07EE276849FB17F7D0F85D -:10A6C00000902AFB197750F8049B56F804A94AFB1E -:10A6D00019F954F804AB4FEADC3C23F802CBFF1322 -:10A6E0002BFB1A9923F8027BC9F1000C4FEAEC37D7 -:10A6F00028F80279491E4FEADE3728F80279C5D1D9 -:10A7000001682F68366800682D6847FB01F12768EB -:10A710003C4626FB071146FB14F425FB1040C90BF1 -:10A720001980C01323F8020F00990098B1F90010A6 -:10A73000B0F902000B1A401810805380BDE8F18F69 -:10A740002DE9F64F85B0069B069C0093890803917E -:10A750000A46A046894607463B689E101B049B1488 -:10A760006FF30F069BB201EB090A334350F82A60DE -:10A770004FEAA60E3604B6146FF30F0EB6B201EB15 -:10A780000A0C46EA0E0550F82CE093FA15F64FEA4B -:10A79000AE0BD3FA15F34FEA0E4E50F829504FEA9C -:10A7A000AE4ECEEA0B0E4FEAA50B2D04AD14C5EA52 -:10A7B0000B0595FA1EFE96FA2EF547F8045BD6FABD -:10A7C0001EFE54F8085B02952E4626FB0EF546FB4E -:10A7D0001EFE4FEA1E4E50F829604FEA0E4E4EEA1A -:10A7E000154540F8295009F1010950F82CE04FEACD -:10A7F000AE054FEA0E4E4FEAAE4ECEEA050EB5104C -:10A800003604B614C6EA0506D6FA1EF6A3FA16FEF4 -:10A81000E3FA16F5009B1B1D009353F8046D019697 -:10A82000334646FB15F6360C23FB05F3360446EAA1 -:10A83000134340F82A3058F80C3B23FB0EF643FB39 -:10A840001EF31B0C1B0443EA164340F82C30521E27 -:10A8500082D104220092039A5EE00E1901EB060AEF -:10A8600050F8245050F82A7095FA17FE01EB0A0CA4 -:10A87000D5FA17F550F82C9050F8267097FA19F978 -:10A880009EFA29F74FEA670B3F047F146FF30F0B13 -:10A89000BFB247EA0B0740F82470DEFA29F9029F9D -:10A8A000DDF808E047FB19F72EFB09FE3F0C50F8D6 -:10A8B00026903F0447EA1E4740F8267050F82C6067 -:10A8C000019FD9FA16F6A5FA26FEE5FA26F5019EAD -:10A8D00026FB05F647FB15F52D0C2D0445EA16461B -:10A8E00040F82A6043FB1EFA4FEA1A4523FB0EF696 -:10A8F0002D0445EA164640F82C60039E3419059E47 -:10A90000B442AAD3521C4B1E93420ED2009A920418 -:10A91000120C0092049A92080492049B052B15D302 -:10A9200003914FF0000889080022069B53F8283055 -:10A93000069C0193069B53F83830029308EB4803BA -:10A940009B001B59009CA0441446D8E7059C00239B -:10A95000641A2AE003EB910606EB910A50F82320D3 -:10A9600050F82A5092FA15FE0AEB910CD2FA15F51E -:10A9700050F82C8050F8262092FA18F89EFA28F900 -:10A9800040F82390DEFA28F850F826E040F82680B8 -:10A99000CB1850F82C20DEFA12F6E5FA26F840F82B -:10A9A0002A80A5FA26F840F82C809C42D2D207B023 -:10A9B000BDE8F08F2DE9F0434FEA510C0CF1010195 -:10A9C00000230024054600EB8106ACF1020811E0EB -:10A9D0009C420FD2D5F800E050F823702F6040F869 -:10A9E00023E0CF18D6F800E050F82790C6F8009082 -:10A9F00040F827E06344D5F804E050F823706F6016 -:10AA000040F823E0A41C32F8023B08360835A04584 -:10AA1000DED2BDE8F083000040002000600010009E -:10AA2000500030007000080048002800680018003E -:10AA3000580038007800040044002400640014002A -:10AA40005400340074000C004C002C006C001C00FE -:10AA50005C003C007C000200420022006200120008 -:10AA60005200320072000A004A002A006A001A00EE -:10AA70005A003A007A0006004600260066001600DA -:10AA80005600360076000E004E002E006E001E00AE -:10AA90005E003E007E000100FF7F0000F67F240381 -:10AAA000D97F4806A77F6B09627F8C0C0A7FAB0FAA -:10AAB0009D7EC8121E7EE2158A7DF918E47C0C1C6E -:10AAC0002A7C1A1F5D7B24227D7A28258A792728F3 -:10AAD00085781F2B6C77112E4276FC300575DF339D -:10AAE000B673BA3655728D39E370573C5F6F173FB6 -:10AAF000CA6DCE41246C7B446E6A1D47A768B44979 -:10AB0000D066404CE964C04EF2623451EC609B5315 -:10AB1000D75EF655B45C4358825A825A4358B45CA7 -:10AB2000F655D75E9B53EC603451F262C04EE96437 -:10AB3000404CD066B449A7681D476E6A7B44246CBC -:10AB4000CE41CA6D173F5F6F573CE3708D39557228 -:10AB5000BA36B673DF330575FC304276112E6C774A -:10AB60001F2B857827288A7928257D7A24225D7BEA -:10AB70001A1F2A7C0C1CE47CF9188A7DE2151E7EC3 -:10AB8000C8129D7EAB0F0A7F8C0C627F6B09A77F7A -:10AB90004806D97F2403F67F0000FF7FDCFCF67FA8 -:10ABA000B8F9D97F95F6A77F74F3627F55F00A7FD5 -:10ABB00038ED9D7E1EEA1E7E07E78A7DF4E3E47C85 -:10ABC000E6E02A7CDCDD5D7BD8DA7D7AD9D78A792C -:10ABD000E1D48578EFD16C7704CF427621CC05752E -:10ABE00046C9B67373C65572A9C3E370E9C05F6FF7 -:10ABF00032BECA6D85BB246CE3B86E6A4CB6A768DA -:10AC0000C0B3D06640B1E964CCAEF26265ACEC6032 -:10AC10000AAAD75EBDA7B45C7EA5825A4CA343584E -:10AC200029A1F655149F9B530E9D3451179BC04E7E -:10AC30003099404C5997B44992951D47DC937B4419 -:10AC40003692CE41A190173F1D8F573CAB8D8D3969 -:10AC50004A8CBA36FB8ADF33BE89FC309488112EC9 -:10AC60007B871F2B7686272883852825A38424228B -:10AC7000D6831A1F1C830C1C7682F918E281E21518 -:10AC80006381C812F680AB0F9E808C0C59806B09D3 -:10AC9000278048060A802403008000000A80DCFC2C -:10ACA0002780B8F9598095F69E8074F3F68055F0A8 -:10ACB000638138EDE2811EEA768207E71C83F4E3C4 -:10ACC000D683E6E0A384DCDD8385D8DA7686D9D71F -:10ACD0007B87E1D49488EFD1BE8904CFFB8A21CC55 -:10ACE0004A8C46C9AB8D73C61D8FA9C3A190E9C01C -:10ACF000369232BEDC9385BB9295E3B859974CB639 -:10AD00003099C0B3179B40B10E9DCCAE149F65AC7B -:10AD100029A10AAA4CA3BDA77EA57EA5BDA74CA3C9 -:10AD20000AAA29A165AC149FCCAE0E9D40B1179B19 -:10AD3000C0B330994CB65997E3B8929585BBDC9374 -:10AD400032BE3692E9C0A190A9C31D8F73C6AB8DE8 -:10AD500046C94A8C21CCFB8A04CFBE89EFD19488A6 -:10AD6000E1D47B87D9D77686D8DA8385DCDDA384E6 -:10AD7000E6E0D683F4E31C8307E776821EEAE281ED -:10AD800038ED638155F0F68074F39E8095F6598016 -:10AD9000B8F92780DCFC0A800000008024030A80C8 -:10ADA000480627806B0959808C0C9E80AB0FF6807B -:10ADB000C8126381E215E281F91876820C1C1C83AB -:10ADC0001A1FD6832422A3842825838527287686E4 -:10ADD0001F2B7B87112E9488FC30BE89DF33FB8AC2 -:10ADE000BA364A8C8D39AB8D573C1D8F173FA190D9 -:10ADF000CE4136927B44DC931D479295B4495997D6 -:10AE0000404C3099C04E179B34510E9D9B53149F5C -:10AE1000F65529A143584CA3825A7EA5B45CBDA720 -:10AE2000D75E0AAAEC6065ACF262CCAEE96440B1D0 -:10AE3000D066C0B3A7684CB66E6AE3B8246C85BB15 -:10AE4000CA6D32BE5F6FE9C0E370A9C3557273C6A5 -:10AE5000B67346C9057521CC427604CF6C77EFD125 -:10AE60008578E1D48A79D9D77D7AD8DA5D7BDCDD43 -:10AE70002A7CE6E0E47CF4E38A7D07E71E7E1EEA96 -:10AE80009D7E38ED0A7F55F0627F74F3A77F95F6BB -:10AE9000D97FB8F9F67FDCFC004000C0373F01C025 -:10AEA0006E3E05C0A53D0BC0DC3C14C0133C1FC06A -:10AEB0004B3B2CC0823A3CC0BA394FC0F23864C018 -:10AEC0002A387BC0633795C09C36B1C0D535D0C019 -:10AED0000F35F1C0493415C184333BC1BF3263C162 -:10AEE000FA318EC13631BBC17330EBC1B02F1DC2F8 -:10AEF000EE2E51C22D2E88C26C2DC1C2AC2CFDC2CB -:10AF0000ED2B3BC32E2B7BC3702ABEC3B42903C4D5 -:10AF1000F7284AC43C2893C48227DFC4C9262DC51C -:10AF200011267EC55925D0C5A32425C6EE237CC68F -:10AF30003A23D5C6872231C7D5218FC72421EEC732 -:10AF4000742050C8C61FB5C8191F1BC96D1E83C900 -:10AF5000C31DEEC9191D5BCA721CC9CACB1B3ACBF3 -:10AF6000261BADCB821A21CCE01998CC3F1911CD0C -:10AF7000A0188CCD021808CE661787CECB1607CF47 -:10AF800032168ACF9B150ED0051594D071141CD1A2 -:10AF9000DF13A6D14E1331D2BF12BFD231124ED31E -:10AFA000A611DFD31C1171D4941005D50E109BD5BA -:10AFB0008A0F32D6070FCBD6870E66D7080E02D877 -:10AFC0008C0DA0D8110D3FD9980CE0D9210C82DA54 -:10AFD000AD0B26DB3A0BCBDBC90A72DC5B0A19DD51 -:10AFE000EE09C3DD83096DDE1B0919DFB508C6DF75 -:10AFF000500874E0EE0724E18F07D5E1310787E2BE -:10B00000D5063AE37C06EEE32506A3E4D00559E530 -:10B010007E0511E62D05C9E6DF0482E793043CE8CE -:10B020004A04F7E80304B4E9BE0370EA7B032EEB9D -:10B030003B03EDEBFD02ACECC1026CED88022DEEA2 -:10B040005102EEEE1D02B0EFEB0173F0BB0136F1E1 -:10B050008E01FAF16301BFF23B0184F3150149F45B -:10B06000F1000FF5D000D5F5B1009CF6950063F71F -:10B070007B002AF86400F2F84F00BAF93C0082FA2B -:10B080002C004BFB1F0013FC1400DCFC0B00A5FD87 -:10B0900005006EFE010037FF000000000040004088 -:10B0A000C940FF3F9241FB3F5B42F53F2443EC3FE9 -:10B0B000ED43E13FB544D43F7E45C43F4646B13FF2 -:10B0C0000E479C3FD647853F9D486B3F64494F3FA5 -:10B0D0002B4A303FF14A0F3FB74BEB3E7C4CC53E0D -:10B0E000414D9D3E064E723ECA4E453E8D4F153E29 -:10B0F0005050E33D1251AF3DD351783D94523F3D06 -:10B100005453033D1354C53CD254853C9055423CA6 -:10B110004C56FD3B0957B63BC4576D3B7E58213B0F -:10B120003759D33AEF59823AA75A303A5D5BDB3947 -:10B13000125C8439C65C2B39795DCF382B5E71384F -:10B14000DC5E12388C5FB0373A604B37E760E5362B -:10B1500093617D363D621236E762A5358E633735E1 -:10B160003564C634DA6453347E65DF332066683371 -:10B17000C166EF3260677432FE67F8319A687931E0 -:10B180003569F930CE697630656AF22FFB6A6C2F2B -:10B190008F6BE42E216C5A2EB26CCF2D416D412D58 -:10B1A000CF6DB22C5A6E212CE46E8F2B6C6FFB2A64 -:10B1B000F26F652A7670CE29F970352979719A284F -:10B1C000F871FE2774726027EF72C126687320261B -:10B1D000DF737E255374DA24C674352437758E23C5 -:10B1E000A575E72212763D227D769321E576E7204C -:10B1F0004B773A20B0778C1F1278DC1E71782B1EAB -:10B20000CF78791D2B79C61C8479121CDB795D1BE4 -:10B21000307AA71A827AEF19D37A3719217B7E18F0 -:10B220006D7BC417B67B0917FD7B4C16427C9015CD -:10B23000857CD214C57C1314037D54133F7D941276 -:10B24000787DD311AF7D1211E37D5010157E8D0FE7 -:10B25000457ECA0E727E060E9D7E410DC57E7C0C1B -:10B26000EB7EB70B0F7FF10A307F2B0A4F7F64090B -:10B270006B7F9D08857FD6079C7F0E07B17F4606B2 -:10B28000C47F7E05D47FB504E17FED03EC7F24030A -:10B29000F57F5B02FB7F9201FF7FC900FF7F00000B -:10B2A000704780B5022808D0042806D0082804D0AA -:10B2B000102802D04FF4803104E04007411300EB26 -:10B2C00091408113882001F0AFFC002002BD80B5C1 -:10B2D000B0F5FA6F0DD0B0F57A7F0AD0B0F5FA7FED -:10B2E00007D0FA2805D04FF07A71882001F0FBFBD7 -:10B2F00003E0C103882001F0F6FB002002BD80B509 -:10B3000001F0D5FF02F039FE00280CD002F035FE26 -:10B3100059230FF230220FF24421FFF7C1FFBDE89D -:10B32000014002F02ABE03F08EFB00280CD003F08F -:10B330008AFB5A230FF20C220FF22021FFF7B0FFF5 -:10B34000BDE8014003F07FBB03F067FD00280CD08F -:10B3500003F063FD5B230FF2EC120FF20021FFF705 -:10B360009FFFBDE8014003F058BD04F0AAF9002892 -:10B370000CD004F0A6F95F230FF2C8120FF2DC1113 -:10B38000FFF78EFFBDE8014004F09BB904F035FCE7 -:10B3900000280CD004F031FC60230FF2A8120FF249 -:10B3A000BC11FFF77DFFBDE8014004F026BC05F0AD -:10B3B00022FA00280CD005F01EFA61230FF2841245 -:10B3C0000FF29811FFF76CFFBDE8014005F013BACA -:10B3D0000220FFF766FF4FF4FA70FFF778FF4FF097 -:10B3E0000071882001F025FCBDE8014001F09ABF02 -:10B3F00010B54FF47A720023F2F7CEF9044601F04B -:10B4000077FB204601F085FB204601F0A7FB0020DA -:10B4100010BD80B54FF47A720023F2F7BDF901F048 -:10B420008AFB002002BD00002DE9F04784B00E46E3 -:10B4300017469A46DDF838804FF00009DDE90C45E3 -:10B44000002803D022462B4601F0E1FC002E0ED04E -:10B45000B6F90000009000A8B6F902104160B6F9F4 -:10B460000410816022462B46494601F09BFC002FC8 -:10B4700024D09FED260AD7ED000A60EE800AFDEE8B -:10B48000E00ACDED000A00A8D7ED010A60EE800ABF -:10B49000FDEEE00AC0ED010AD7ED020A20EE800AB7 -:10B4A000BDEEC00A80ED020A22462B4648F020017C -:10B4B00001F0C8FC002801D04FF02009BAF1000FBC -:10B4C0000DD022462B460021504601F0F7FC002803 -:10B4D00001D1012004E04FF02009002000E000200D -:10B4E000002802D001F094FD8146484604B0BDE832 -:10B4F000F08780B50A4600A903F0CAFA02BD80B5FC -:10B500000A4600A903F022FB02BD00000000004231 -:10B5100080B501F029FD002002BD80B501F012FDCB -:10B52000002002BD80B501F013FD002002BD80B5F2 -:10B5300001F014FD002002BD05F0E3BC01F0D3BA18 -:10B5400001F072BB696E765F696E69745F696E76D1 -:10B55000656E73656E73655F61706900433A5C5434 -:10B56000656D705C4955535C494B445C5461652D75 -:10B57000536F6F5C656D6265646465645F72656678 -:10B580006572656E63655F666F725F4E6F74655F4F -:10B59000335C656D6265646465645C496E76656E96 -:10B5A00053656E73655C6D706C5C696E76656E7309 -:10B5B000656E73655F6170692E63000038B50C4677 -:10B5C0001546010A8DF8001000A948704878201827 -:10B5D000B0F5807F02DD4FF0FF3032BD00AB0222BC -:10B5E0006D21682005F048FE002802D04FF0FF30A2 -:10B5F00032BD2B4622466F21682005F03DFE002813 -:10B6000002D04FF0FF3032BD002032BD38B50C46BD -:10B610001546010A8DF8001000A9487048782018D6 -:10B62000B0F5807F02DD4FF0FF3032BD00AB02226B -:10B630006D21682005F020FE002802D04FF0FF3079 -:10B6400032BD2B4622466F21682005F02DFE0028D2 -:10B6500002D04FF0FF3032BD002032BD2DE9F04F57 -:10B6600093B005460E461446002E02D14FF0FF302F -:10B6700065E00027A8460AE0B9F1010F05DB4A465C -:10B6800039460FF2407005F01EFE5744BFB24745E1 -:10B6900044DA4FF0000907EB060BA8EB070041283E -:10B6A00002DB4FF0400A01E0A5EB070A5A4651467B -:10B6B00089B23846FFF782FF002802D06FF0010000 -:10B6C0003DE002AA514689B23846FFF79FFF0028A5 -:10B6D00002D06FF0020032E01FFA8AFA524602A945 -:10B6E000584605F0FDFD002804D009F10109642049 -:10B6F00005F0EDFDA9F101000328CED3B9F1040F47 -:10B70000BADB9DF808000090BB5D524639460FF247 -:10B71000986005F0D8FD6FF0030010E0200A8DF866 -:10B7200004008DF8054001AB02227021682005F06D -:10B73000A3FD002802D06FF0040000E0002013B049 -:10B74000BDE8F08F90F90010012901DB002070475F -:10B75000002901D50420704790F90110012901DB6F -:10B7600001207047002901D50520704790F902009B -:10B77000012801DB02207047002801D50620704710 -:10B780000720704738B50446FFF7DCFF0546E01C8C -:10B79000FFF7D8FF45EAC005A01DFFF7D3FF45EA34 -:10B7A000801080B232BD70B586B0044605A80FF295 -:10B7B0002C610A68026004A80FF224610A68026022 -:10B7C00003A80FF220610A68026002A80FF2186154 -:10B7D0000A68026004F0030005A9425C8DF80420A9 -:10B7E00001ADC4F3C102525C6A70C4F38112515CB2 -:10B7F000A97004A9405C8DF8000000AEC4F3C1003C -:10B80000405C7070C4F38110405CB07001AA0321E9 -:10B8100040F22640FFF7D2FE002802D04FF0FF3062 -:10B820004DE000AA032140F22A40FFF7C7FE00289E -:10B8300002D04FF0FF3042E0032203A901A8E6F74F -:10B8400008FC032202A900A8E6F703FC60070BD559 -:10B850009DF8040040F001008DF804009DF8000000 -:10B8600040F001008DF80000A00607D5687840F090 -:10B8700001006870707840F001007070E00507D535 -:10B88000A87840F00100A870B07840F00100B070D6 -:10B8900001AA032140F23F40FFF790FE002802D0AA -:10B8A0004FF0FF300BE000AA032140F23140FFF7D8 -:10B8B00085FE002802D04FF0FF3000E0002006B0E7 -:10B8C00070BD10B5044600223821682005F0C2FC86 -:10B8D000002824D100222321682005F0BBFC002889 -:10B8E0001DD100226A21682005F0B4FC002816D181 -:10B8F000002C17D00C226A21682005F0ABFC002830 -:10B900000DD1C0226A21682005F0A4FC002806D1D0 -:10B9100000222321682005F09DFC002802D04FF072 -:10B92000FF3010BD002010BD10B582B004000CD057 -:10B93000C0208DF80000C2208DF80100C4208DF8D1 -:10B940000200C6208DF8030004E004228B2100A829 -:10B95000E6F785FB00AA042140F6C410FFF72EFE8F -:10B960002046401E8041C043C00FFFF7AAFF16BD0E -:10B9700010B582B004000CD020208DF800002820E3 -:10B980008DF8010030208DF8020038208DF803007A -:10B9900004E00422A32100A8E6F761FB00AA042129 -:10B9A00040F6CA10FFF70AFE2046401E8041C04301 -:10B9B000C00FFFF786FF16BD30B585B002A90FF2A4 -:10B9C0002C4238CA38C1052802DA4FF0FF3021E096 -:10B9D000052190FBF1F0401E80B20146090A8DF866 -:10B9E00000108DF8010000AA022140F21620FFF796 -:10B9F000E5FD002802D04FF0FF300BE002AA0C2139 -:10BA000040F6ED10FFF7DAFD002802D04FF0FF30CE -:10BA100000E0002005B030BD80B5002801D0022232 -:10BA200000E000223821682005F014FC002802D034 -:10BA30004FF0FF3002BD002002BD70B584B0044657 -:10BA400025466D1EAD41ED43ED0F00208DF8000041 -:10BA500000AEB2207070B820B070C220F07000AAA2 -:10BA600004216820FFF7AAFDA3208DF800006006DE -:10BA700006D5C0207070C820B070C220F07003E0FE -:10BA8000A3207070B070F070200606D5C42030710D -:10BA9000CC207071C620B07103E0A32030717071AA -:10BAA000B071A3208DF807008DF808008DF809000B -:10BAB00000AA0A2140F6D310FFF780FD03200442BC -:10BAC00003D020208DF8000002E0D8208DF800007F -:10BAD00000AA012140F6E210FFF770FDD8208DF892 -:10BAE000000000AA012140F60200FFF767FD600791 -:10BAF00003D50120FFF718FF02E00020FFF714FF35 -:10BB0000E00603D50120FFF733FF02E00020FFF736 -:10BB10002FFF2846FFF7D5FE002004B070BD2DE9A9 -:10BB2000F04188B004460D46164600AB0222722151 -:10BB3000682005F0B9FB002802D04FF0FF30D7E0B5 -:10BB40009DF800009DF8011041EA002841460FF2DF -:10BB5000A82005F0B8FB0F9FB8F11C0F04D20020FD -:10BB600038704FF0FF30C3E0B8F5007F19DD01AB4E -:10BB700002223A21682005F097FB002803D00FF23B -:10BB80008C2005F0A0FB9DF80400C00609D501201B -:10BB9000FFF797FE0FF2902005F095FB6FF0010084 -:10BBA000A6E001AB1C227421682005F07DFB002873 -:10BBB00006D00FF2942005F086FB4FF0FF3097E09F -:10BBC0001C2098FBF0F0401E387001A89DF804106E -:10BBD0004278120442EA0161827841EA0221C27885 -:10BBE0001143316001794279120442EA016182799C -:10BBF00041EA02219DF80B2011437160017A9DF802 -:10BC00000D20120442EA01619DF80E2041EA022152 -:10BC10009DF80F201143B160017B9DF811201204A3 -:10BC200042EA01619DF8122041EA02219DF81320A9 -:10BC30001143F160017C9DF8152042EA0121298021 -:10BC40009DF816109DF8172042EA012169809DF8A1 -:10BC500018109DF8192042EA0121A9809DF81A10B8 -:10BC60009DF81B2042EA01212180007E9DF81D10D5 -:10BC700041EA002060809DF81E009DF81F1041EAF7 -:10BC80000020A080002030E000EB40013C4A8B18EF -:10BC900093F9061093F9052093F90430B4F9006084 -:10BCA00013FB06F6B4F9027012FB0766B4F90470D0 -:10BCB00011FB0766B5F9007013FB07F3B5F90270C5 -:10BCC00012FB0732B5F9043011FB0321B6F5004F22 -:10BCD00001DB47F6FF76B1F5004F01DB47F6FF7158 -:10BCE00024F8106025F81010401C0328CCDB00203D -:10BCF00008B0BDE8F08138B5040002D14FF0FF3044 -:10BD000032BD1F4D2878002801D0002032BD092205 -:10BD10002146281DE6F79DF900AB02226B21682021 -:10BD200005F0C2FA9DF80000400604D500226B2100 -:10BD3000682005F08FFAC8234FF480620FF24C118F -:10BD400040F66130FFF78AFC002818D12046FFF743 -:10BD500019FDFFF728FD002802D06FF0060032BD64 -:10BD60000020FFF759FE002802D06FF0070032BD17 -:10BD7000012028700FF2EC0005F0A5FA002032BD7A -:10BD80007CAF002010B50C460021002800D0C42153 -:10BD90000846FFF752FE002805D12046FFF70CFEAB -:10BDA000002800D1002010BD0A444D505F4552527A -:10BDB000282564292825642928256429282564291B -:10BDC000200A00000A444D505F545249414C282536 -:10BDD000642928256429200A000000004CCD6C004D -:10BDE0000CC92C003656760026466600FEF2ABC41F -:10BDF000AAF1DFDFBBAFDFDF5B444D505D2046497A -:10BE0000464F28256429200A000000000A5B444DA3 -:10BE1000505D204649464F207374617475732065E8 -:10BE200072726F720A0000000A5B444D505D202D53 -:10BE3000204649464F206F766572666C6F772065A5 +:10322000F1EE10FA01D50020706096ED020AB5EEBD +:10323000400AF1EE10FA01DCB1EE400AB4EE600A89 +:10324000F1EE10FA01D50020B0609FED9C8B9FED50 +:103250009D9B9FED9EABDFF8D875B868EEF71EFB1F +:1032600004460D460098EEF719FB53EC1A2BEEF7C7 +:103270004DFB53EC192BEEF7A7FD53EC182BEEF793 +:1032800045FB22462B46EEF76BFCFDF7FBF800EE04 +:10329000100A87ED020A00F04DF887ED020AF8687F +:1032A000EEF7FCFA04460D467068EEF7F7FA53ECB9 +:1032B0001A2BEEF72BFB53EC192BEEF785FD53EC95 +:1032C000182BEEF723FB22462B46EEF749FCFDF7C1 +:1032D000D9F800EE100A87ED030A00F02BF887ED0D +:1032E000030A3869EEF7DAFA04460D46B068EEF7DD +:1032F000D5FA53EC1A2BEEF709FB53EC192BEEF72A +:1033000063FD53EC182BEEF701FB22462B46EEF73C +:1033100027FCFDF7B7F800EE100A87ED040A00F06D +:1033200009F887ED040A03B0BDEC068BF0BD000080 +:103330009A99993EDFED670AB4EE600AF1EE10FA51 +:1033400004DBDFED650A30EE200A7047DFED630A2B +:10335000B4EE600AF1EE10FA03D5DFEDD00A30EEDC +:10336000200A70479A9999BECCCCCCBDCDCCCC3D2F +:1033700010B49FEDCB0ADFEDCA0A1F2801D31E202F +:1033800000E0C0B20022DFF8AC440EE0C2F11D0341 +:10339000DBB204EB830393ED1E1A30EE010A93EDCA +:1033A0003C1A70EE810A521CD2B2824209DA00291C +:1033B00002D1C2F11D03EBE70129E7D1C2F11803E5 +:1033C000E6E701EE100AB8EE411ADFF8640480EE79 +:1033D000010A80ED130A80EE810A80ED140A10BC08 +:1033E00070470000CDCCCC3EDFF84404002141659D +:1033F0008165C16570470000CCCCCCBE30B49FED78 +:10340000A80ADFEDA70A9FEDA61A1F2801D31D20E9 +:1034100001E0401EC0B200210DE030EE210A02EBB7 +:103420008302D2ED1E1A70EEA10AD2ED3C1A31EEE3 +:10343000211A491C89B2DFF8D44381422ADA227862 +:103440001E2A03D2521A531EDBB202E0C1F11D0341 +:10345000DBB2DFF8E02352F8235001EE905A02EB82 +:10346000830555F8045C02EE105A71EEC22A9FEDF6 +:10347000C93AF4EE432AF1EE10FACEDBF5EE401A2B +:10348000F1EE10FAC9DDB5EE402AF1EE10FAC4D51E +:103490000B29C2DB01EE901AF8EE611A80EE210AC8 +:1034A00084ED150A80EEA10A84ED160A81EE210A48 +:1034B00084ED170A30BC70470BD7233DF8C1631A5F +:1034C000DCA54C400000000000408F4000000000E0 +:1034D00000003440010034430000B4C3000034C392 +:1034E000F0B4DFEDC92AB0EE620AB0EE622ADFED79 +:1034F0006C0A9FED6B1ADFED6A1ACD4801781E2920 +:1035000000D31E21026B914204D201EBD172521002 +:10351000D2B201E05208D2B200230DE0B1EE633A1C +:10352000B4EE443AF1EE10FA05DB71EEA31AB7EEF1 +:10353000003A32EE032A5B1CDBB2934280F29F809A +:10354000CC1A641EE4B225466E1EF6B2B94D55F88B +:10355000267003EE107A05EB8407D7ED003A05EBF1 +:10356000860797ED004A73EEC43AF5EE403AF1EE65 +:1035700010FA05EB8407D7ED003A02DD33EEC33ACB +:1035800001E033EE633A05EB8606D6ED1E3A97ED81 +:103590001E4AD6ED1E4A34EE644AB5EE404AF1EEBC +:1035A00010FA97ED1E4A02DD74EE633A01E073EE05 +:1035B000C43A06F1780C9CED1E4A07F17806D6ED68 +:1035C0001E4A9CED1E5A74EEC54AF5EE404AF1EED5 +:1035D00010FAD6ED1E4A02DD34EEC44A01E034EEA4 +:1035E000644ADFED984AB4EE643AF1EE10FA09DB72 +:1035F000F4EE643AF1EE10FA04DBB4EE644AF1EE54 +:1036000010FA3CDA55F8244003EE104AB5EE403A81 +:10361000F1EE10FA02DDF0EE433A01E0F1EE433A4A +:103620009FED894AF4EE443AF1EE10FA05DB70EEB4 +:10363000830AB7EE003A30EE030A97ED1E3AB5EE74 +:10364000403AF1EE10FA02DDF0EE433A01E0F1EE1D +:10365000433AF4EE443AF1EE10FA05DB31EE031A88 +:10366000B7EE003A72EE832AD6ED1E3AF5EE403AF6 +:10367000F1EE10FA7FF752AFB0EE633A50E780EE0A +:10368000800A80ED100A81EE220A80ED110A81EE97 +:10369000820A80ED120AF0BC704700000000B443BB +:1036A0000000000010B52DED028B9FED688A00240C +:1036B00026E0C4F11D00C0B25E4901EB800202F1B8 +:1036C000780393ED1E0AD2ED1E0A51F8200001EE98 +:1036D000100A21EE011A00EEA01A00EE001A11EEF7 +:1036E000100AEEF7DBF841EC100B05F061FC51EC31 +:1036F000100BFCF7C7FE00EE100A38EE008A641CBF +:10370000062CD6D3B1EE080A88EE000ABDEC028B77 +:1037100010BD000010B52DED028B9FED4C8ADFED42 +:103720004B8A002428E0C4F11D00C0B2414901EBDE +:10373000800202F1780393ED1E0AD2ED1E0A51F8C1 +:10374000200001EE100A21EE011A00EEA01A00EE90 +:10375000001A11EE100AEEF7A1F841EC100B05F07B +:1037600027FC51EC100BFCF78DFE00EE100A38EE32 +:10377000008A40EE008A641C062CD4D3B1EE080AFD +:10378000C8EE000A88EE800A00EEE00ABDEC028B6B +:1037900010BD00009A99993E0121022812D19FED97 +:1037A0002C0A2348D0ED130AF4EE400AF1EE10FA89 +:1037B0001CDBD0ED140AF4EE400AF1EE10FA15DB32 +:1037C000002113E0012811D1194890ED130AFEEEF3 +:1037D000000AB4EE600AF1EE10FA07D590ED140A73 +:1037E000B4EE600AF1EE10FA00D5002108467047E9 +:1037F000104A52F82130036002EB81018A6F426067 +:10380000D1F8F01081607047BD3786357CF9002013 +:10381000C0B2084901EB800282ED000A01EB800092 +:10382000C0ED1E0A80ED3C1A7047034A8854704769 +:103830007CF9002008EF002090FC002041420F009E +:1038400040420F000100A040CDCC4C3D00000000E4 +:103850000100003FB5EE400AF1EE10FA03D5FFEE8D +:10386000000A20EE200A704710B5044602E0C06846 +:10387000EFF768FDEFF7A7FC20680028F7D10448B0 +:103880004078002804BFBDE81040EFF796BC10BD9B +:1038900024380020012005F00BBC00000649086810 +:1038A00008B100207047054808600549C908C900EB +:1038B000091A0160704700BF4CFE0020009C0020E8 +:1038C00000AC00200CB41CB5044604A80190009480 +:1038D00001AB0A4600A9074878441830F7F716FAF2 +:1038E000009900220A7000285CBF0098001B16BCDB +:1038F0005DF80CFB33E2FEFF10B50024ECF796FBFD +:10390000002800D00124204610BD000038B500205A +:103910000246DFF8C84403E004EB80018A63401CE0 +:103920000928F9DB1046E066A0666420206060602C +:10393000DFF8AC04A060B5EE000A84ED030A84ED64 +:10394000040A84ED050A84ED060A84ED070ADFF80F +:103950009404206205206062A062104603E004EB3C +:1039600080018A63401C0928F9DB10466067A06764 +:10397000E06704F180057C2201462846EEF77DFBD6 +:103980000C22002104F12C00EEF777FB256731BDF6 +:103990002DE9F04106460F4690461C46DFF83C54A0 +:1039A00085ED0B0AF1EE601AC5ED0C1AB1EE410A75 +:1039B00085ED0D0A0A2205F12C01286F00F018FA96 +:1039C00000F03EF81421022801D004280DD1A86F80 +:1039D000401CA86798FBF1F2904202DB0020E867E8 +:1039E0000CE0E86F401CE86708E0082801D01028C8 +:1039F00004D1E86F401CE8670020A86796FBF1F04F +:103A0000AA6F824201DB0120686797FBF1F0E96F42 +:103A1000814201DB02206867686F012803D0022819 +:103A200001D000206867696F080005D0217000216F +:103A3000A967E967696701E000212170BDE8F081AD +:103A40002DE9F0432DED048B87B09FEDA98ADFF8B7 +:103A50008C43002020666066E06E461CE666A76E1A +:103A6000DFF884530A2F41DAD4F870900A2200213B +:103A7000484600F0D6F980460A220121484600F067 +:103A8000D0F904EB870106EB860292008A63012FCE +:103A90002ADB98ED000AD0ED000A30EE600A8DEDC9 +:103AA000030A98ED010AD0ED010A30EE600A03AA7C +:103AB00082ED010AD8ED020A90ED021A70EEC10AF9 +:103AC000C2ED020A05EB87009DED031ADDED031A36 +:103AD00021EE211A00EE001A00EEA01A80ED061A5F +:103AE0008A6B496B511AC163781CA0660A2E01DAF1 +:103AF00003202867A06E0A28C0F2E280401EA0665C +:103B00000A221146206F04F057FC85ED040A0A22B0 +:103B10001146206F04F06EFC85ED050A0A2211465D +:103B2000206F04F085FC85ED060A002006E005EB19 +:103B30008001D1ED070A38EE208A401C0928F6DB07 +:103B4000F2EE040A95ED041A81EE201A8DED001AAA +:103B500095ED051AC1EE208A00A8C0ED018A80EE1D +:103B6000209A80ED029AE06E0A2805DB00986860D2 +:103B7000C5ED028A85ED039A00260FE00A22C6F100 +:103B8000090109B2206F00F04CF995ED031AD5ED4B +:103B9000020A95ED010A00F0ADF8761C0A2EEDDB65 +:103BA000606A216E88423ADAA06B2978002908D130 +:103BB00068660121297000996960C5ED028A85ED6A +:103BC000039AA16A626E91420CDA697800290BD1DE +:103BD000A8660121697000996960C5ED028A85EDCA +:103BE000039A01E0002169702168AA6E821A91424D +:103BF00008D26A78002A05D00020A870E870012059 +:103C000028674CE06A6E801A814246D228780028E4 +:103C100043D00020A870E870022028673FE0009899 +:103C20006860C5ED028A85ED039A002028706870EF +:103C3000A878002801D10120A8709FED660A28EE1F +:103C4000000AB5EE400AF1EE10FA03DC9FED620ABD +:103C500028EE000AD4ED020AB3EE041A60EE810ADF +:103C6000F4EE400AF1EE10FA07D5E878002806D104 +:103C7000A06BE8660120E87001E00020E870606851 +:103C8000A0F5FA70A16BEA6E891A884205D2E8782D +:103C9000002802D00420286701E0032028670020C4 +:103CA0000CE004EB8001CA6B8A63082805DA05EB97 +:103CB00080010A6ACA614A6C0A64401C0928F0DB68 +:103CC000286F012806D00DD3032807D004D3042879 +:103CD00006D007E0022006E0042004E0082002E00D +:103CE000102000E0002007B0BDEC048BBDE8F0839D +:103CF00000000000D0ED001A31EEC00A3B4981ED12 +:103D0000000AD0ED011A71EEE00AC1ED010AD0ED12 +:103D1000021A31EEC11A81ED021AB5EE400AF1EE37 +:103D200010FA03D5B1EE400A81ED000AF5EE400A23 +:103D3000F1EE10FA03D5B1EE600A81ED010AB5EE9D +:103D4000401AF1EE10FA03D5B1EE410A81ED020AF4 +:103D500091ED000A2148D0ED030AB4EE600AF1EEBD +:103D600010FA13D5D1ED010A90ED041AF4EE410AD0 +:103D7000F1EE10FA0AD5D1ED020A90ED051AF4EE33 +:103D8000410AF1EE10FA01D5012200E00022D0ED47 +:103D9000060AB4EE600AF1EE10FA13D591ED010AAD +:103DA000D0ED070AB4EE600AF1EE10FA0AD591EDF3 +:103DB000020AD0ED080AB4EE600AF1EE10FA01D55D +:103DC000012100E00021036ED2180266426E8918BC +:103DD0004166704700007A4400007AC4A8F10020D0 +:103DE000000040413333B33EC8CA00206CFD0020C0 +:103DF0000388934201D30023038003885B1C038064 +:103E00009BB2934201D300220280028802EB42035C +:103E100000EB8300001D91EC030A80EC030A0120F3 +:103E20007047B0F90030591A09B2002901D511FACA +:103E300082F109B201EB410200EB8200001D7047E4 +:103E40002DE9F04154220021DFF8AC0AEEF715F914 +:103E5000DFF8A84A0C2200212046EEF70EF91C22BA +:103E6000002104F11000EEF708F91C22002104F1F2 +:103E70002C00EEF702F9DFF8885A002028644FF48E +:103E80007A720146DFF87C0AEEF7F7F84FF47A729F +:103E90000021DFF84C0CEEF7F0F80020A064686415 +:103EA000DFF8406CB062F0623063A8647063B063A6 +:103EB000DFF8347C7863E864E06428650120686595 +:103EC0000020F063A8654FF0FF30E8652866002009 +:103ED00068663064B863A866F8637064B064F064C0 +:103EE0001C22014606F15000EEF7C7F80020E866F4 +:103EF00008220146281DEEF7C0F82822002105F10E +:103F00000C00EEF7BAF842F21070288468840020A2 +:103F100028836883E8600C2201463046EEF7ADF84E +:103F2000DFF8FC0B7060DFF8FC0B30604FF0FF3007 +:103F3000308100202870A886E886288768873C2280 +:103F40000146DFF8140CEEF798F800202065F066C3 +:103F5000A0816065A887E88770673067286705F1EA +:103F60008408282205F10C014046EEF780F8C4F8D9 +:103F7000588000206867A8673864B067F067786485 +:103F8000C5F88000E86760662066E065012020676C +:103F9000E066A0660020E067A0676067282201460F +:103FA0003846EEF76AF80C22002106F11C00EEF705 +:103FB00064F80C22002107F12800EEF75EF81022C9 +:103FC000002106F10C00BDE8F041EEF756B810B53F +:103FD00084B0DFF8104B0C22214600A8EEF747F81A +:103FE000FFF72EFF0C2200A92046EEF740F81FBD78 +:103FF0002DE9F04F2DED0C8B83B00020029082460E +:104000000446DFF8E45A95ED118AD5ED0E8AC5ED28 +:10401000118ADFF8D06AD6ED109AC5ED0E9ADFF856 +:10402000E07897ED199AB8EE490ADFEDB70A80EE0D +:1040300080AA86ED10AAD7F84CB0F86DABEB000063 +:10404000FA30FA21B0FBF1F201FB12091FFA89F9EB +:10405000B9F14C0F02DA786D012807D12046B887F4 +:10406000F887DFF898080221C181AAE1D7F85880C3 +:10407000B8F1040F32D3F4EE698AF1EE10FA2DD5BF +:10408000F4EE4A9AF1EE10FA28D51AEE100AEDF77E +:1040900005FC02460B46CDE9002318EE900AEDF729 +:1040A000FDFBDFF8842ADFF8843AEDF72FFCDDE929 +:1040B0000023EDF7C5FF11D29FEDDD0AB4EE40AA53 +:1040C000F1EE10FA0ADBC6ED109AC5ED0E8A85ED09 +:1040D000118ADFF828080321C181A3E1D6ED0AAADD +:1040E000C6ED0BAA96ED0DBA86ED0EBA484600EE67 +:1040F000100AB8EE400AD7ED110AC0EE800A97ED1B +:10410000121A81EE001A2046B0627063F86D2146E3 +:1041100021E0401C80B2FA2800D12046DFF8E427D5 +:1041200002EB8002D2ED001A71EEE01A96ED0A2A37 +:1041300001EEA12A86ED0A2ADFF8A42902EB80020B +:10414000D2ED001A71EEC11A96ED0D2A01EEA12AE8 +:1041500086ED0D2A491C89B24945DADBD6ED0A0AFB +:10416000C0EE80BAC6ED0ABAD6ED0D0A80EE80CA5E +:1041700086ED0DCAD6ED1FCAC5ED10CA97ED1D0A12 +:10418000D7ED1E0A30EE60DA86ED1FDA00F04CFB48 +:10419000012803D12046B887F88712E1B8F1000F53 +:1041A0000AD1F88FB98F10FA81F2052A04DB44187E +:1041B0005046B887F88705E0B8F1000F02D02046D6 +:1041C000B887F88718FA84F0002832D19FEDA28BC7 +:1041D0003CEE0B0A10EE100AEDF760FB53EC182BC7 +:1041E000EDF794FB5246DFF8283CEDF729FF16D394 +:1041F0003BEEAA0A10EE100AEDF750FB53EC182B19 +:10420000EDF784FB5246DFF80C3CEDF719FF06D3BF +:10421000B3EE040AB4EE40DAF1EE10FA09D5B88F25 +:10422000401CB887C7F860B0DFF8D0060621C1810E +:10423000C7E0B88F002810D08CEE0B0AF0EE080A09 +:10424000B4EE600AF1EE10FA05D5032805D304197F +:104250005046B88701E05046B88718FA84F0002825 +:104260001DD1B7EE000AB4EE40AAF1EE10FA04D563 +:10427000DFF888060721C181A3E09FED790AB4EE3B +:1042800040AAF1EE10FA0ADBF88F022806D2401C91 +:10429000F887DFF868060821C18192E004195046CA +:1042A000F887B0EE6B1AF0EE4C0AB0EE4A0A4946B7 +:1042B000A4B2204600F034FB012808D1C6ED109AC4 +:1042C00086ED0DBAC6ED1FCAC6ED0AAA79E09FEDCC +:1042D000650AB4EE40AAF1EE10FA02DBDFF8440CF6 +:1042E00030645046B887B8F1000F0FD196ED100A30 +:1042F00087ED1A0A85ED0F0AC6ED0CBA85ED0DCAD9 +:1043000086ED1EDA4FE000BF00007A44B6EE008A68 +:1043100000F030FA012818D196ED100AF0EE000AEC +:1043200020EE200A86ED100A4FF0010A6BEE880A93 +:10433000C6ED0A0A2CEE081A86ED0D1AC6ED0B0A18 +:1043400086ED0E1A85ED0E0A641C96ED100AD5ED69 +:104350000E0A70EE200A60EE880AC7ED1A0A96ED82 +:104360000A1AD6ED0B1A31EE211A21EE081A86ED43 +:104370000C1A96ED0D1AD6ED0E1A31EE211A21EE19 +:10438000081A85ED0D1AB4EE600AF1EE10FA02D4A7 +:10439000BAF1010F01D185ED0F0A3CEE8D0A20EE36 +:1043A000080A86ED1E0A204680B200F05DF800F093 +:1043B0009DFBF86000F03EF8C7F860B00120029065 +:1043C00038670298012802D10120288003E0DFF835 +:1043D0002C05C0892880A4B26C6085ED029AA5F8EE +:1043E0000C90788FE881B06A2861706B6861306CDE +:1043F000A861306BE861686B2862B86E6862C7F8C4 +:104400005CB0002078667864B86478651022014654 +:1044100006F10C00EDF731FE0C22002106F11C0024 +:10442000EDF72BFE029803B0BDEC0C8BBDE8F08FCE +:1044300001004040DFF8C804DFF8A816CA6B02612B +:104440004A6C42628A6C8262CA6CC262826E42614B +:10445000096F016370470000000000000000E03FAA +:10446000676616400100A0402DE9F0472DED068B50 +:10447000824600200146DFF86C46DFF88454BAF12A +:10448000000F1CD0E66B721E02F00702521906F0F4 +:1044900007035B191B791371AF6D7A1E0723B2FBFB +:1044A000F3F6C6EBC606921B04EB8202B7FBF3F3EE +:1044B000C3EBC303FB1A04EB83031B6D136595ED7C +:1044C0001A8AB0EE040AB4EE408AF1EE10FA08D46B +:1044D00094ED1B0AF0EE080AB4EE600AF1EE10FA51 +:1044E00002D503222A8301E004222A83E66B06F028 +:1044F000070252192B8B1371024603E0032B00D1E4 +:10450000491C521C082A06DA531993F90430042B6B +:10451000F4D1401CF5E780B210FA81F101EBD171C2 +:104520004910814202DA0420688301E00320688395 +:10453000F0EE489AB7EE080AB4EE408AF1EE10FAAF +:1045400002D5F7EE089A08E09FED890AB4EE408A9A +:10455000F1EE10FA01DBF1EE029A19EE900AEDF796 +:104560009DF941EC1A0B53EC1A2BDFF8480BDFF8DE +:10457000481BEDF7CBF9DFF8442BDFF8443BEDF7B0 +:10458000EFFA8046894653EC1A2BDFF8380BDFF838 +:10459000381BEDF7BBF953EC1A2BEDF7B7F90246D0 +:1045A0000B4640464946EDF74FFBFBF76BFF00EE2D +:1045B000100AD4ED010A20EE200A10EE100AEDF7E1 +:1045C0006DF9DFF8082BDFF8083BEDF79FF9FBF7F3 +:1045D00059FF00EE100A84ED110AB4F90800022810 +:1045E00005D1DFED8F0A20EE200A84ED110AD4ED0B +:1045F000118A94ED120A30EE289A84ED129A28EE70 +:10460000A90ADFED880A20EE200A84ED130AAF6DB7 +:104610000720B7FBF0F0C0EBC000381A04EB8000B5 +:1046200080ED140A0020E866072F20D209E004EB91 +:10463000800191ED141A70EE810AC5ED1B0A401C31 +:1046400080B2D5ED1B0A8742F1D201EE100AB8EE16 +:10465000411AC0EE810AC5ED1B0A12E004EB80018D +:1046600091ED141A70EE810AC5ED1B0A401CD5EDC0 +:104670001B0A0728F2DBB1EE0C1AC0EE810AC5ED69 +:104680001B0A10EE100AEDF709F941EC100B9FED33 +:104690009EAB688B042853EC102BDFF8600C0BD119 +:1046A000DFF86C1CEDF732F953EC1A2BEDF758FAE2 +:1046B000FBF7E8FE60670AE0DFF8681CEDF726F913 +:1046C00053EC1A2BEDF74CFAFBF7DCFE6067606FDA +:1046D000EDF7E4F8DFF8702CDFF8703CEDF716F931 +:1046E000804689462068EDF7D9F842464B46EDF7FB +:1046F0000DF98046894618EE100AEDF7CFF8002232 +:10470000DFF8603CEDF702F902460B460020DFF8C7 +:10471000641CEDF759FB42464B46EDF7F7F8FBF703 +:10472000B1FE00EE100A84ED1D0AD4ED1C0A70EEF5 +:10473000800AC4ED1C0A701CE063791CA965BAF1FB +:10474000000F10D05044E0630AEB0100A86501EEB1 +:1047500010AAB8EE411A01EE289A84ED129A41EEA1 +:10476000000AC4ED1C0ABDEC068BBDE8F087000012 +:1047700001009040F0B52DED028B0026D94F97ED4A +:10478000108AD948C06BEDF789F84FF06632DFF830 +:10479000E83BEDF7BBF802460B4614461D4618EE03 +:1047A000100AEDF77BF822462B46EDF749FC05D2BF +:1047B0005348408F022801D3012617E09FED540A89 +:1047C000B4EE408AF1EE10FA10D597ED060ADFED4F +:1047D000510AB4EE600AF1EE10FA07DBDFED4E0A83 +:1047E000B4EE600AF1EE10FA00D5012697ED1B0A2F +:1047F000F0EE000AB4EE600AF1EE10FA0BD59FED70 +:10480000470AB4EE408AF1EE10FA04DB3C48408FD0 +:10481000032800D300263046BDEC028BF0BD00001B +:104820001EC47E3F0000704230B52DED048B002584 +:10483000AC4C3348408B03281ED294ED100ADFEDB8 +:10484000370AB4EE600AF1EE10FA15DB94ED0A0AAD +:10485000F2EE040AB4EE600AF1EE10FA0CD594ED13 +:104860000D0ADFEDB30AB4EE600AF1EE10FA03D5DB +:1048700022480421C181012594ED0D0AF3EE040ABA +:10488000B4EE600AF1EE10FA2ED49FEDAA8BD4EDAF +:104890000E0A30EE200A10EE100AECF7FFFF53EC80 +:1048A000182BEDF733F80022DFF8D43AEDF7C8FB08 +:1048B0001AD394ED0A9A94ED0B0A39EE000A10EE21 +:1048C000100AECF7EBFF53EC182BEDF71FF8002262 +:1048D000DFF8B03AEDF7B4FB06D3B2EE040AB4EE5B +:1048E000409AF1EE10FA03D504480521C181012553 +:1048F0002846BDEC048B30BDA4F200200CF800204B +:104900008CF40020A0D400200000000000000C4027 +:104910009A99993F010020420000C84201000040DE +:104920002DE9F0412DED028B08EE101A0026DFF87C +:10493000587AB96D4018DFF8AC8102281AD398ED87 +:10494000100ADFED7E0AB4EE600AF1EE10FA11DB18 +:1049500098ED0E0AD8ED0D0A80EE200ADFED780AF8 +:10496000B4EE600AF1EE10FA04DBDFF8201A092237 +:10497000CA81012602281CD39FED720AD8ED0E0AC7 +:1049800098ED0D1AC0EE810AF4EE400AF1EE10FA2D +:104990000FDBD8ED0B0A98ED0A1AC0EE810AF4EE8F +:1049A000400AF1EE10FA04DBDFF8E0190A22CA81AE +:1049B000012600281BD0D8F87800ECF76FFF4FF0E5 +:1049C0003332DFF8CC39ECF7A1FF02460B46144630 +:1049D0001D46D8F87C00ECF761FF22462B46EDF728 +:1049E0002FFB04D2DFF8A4090B21C181012698ED29 +:1049F000100ADFED550AB4EE600AF1EE10FA08DA9B +:104A000097ED1A0ADFED510AB4EE600AF1EE10FAE2 +:104A10001CDB98ED0D0ADFED4F0AB4EE600AF1EEF3 +:104A200010FA0BD498ED0A0ADFED490AB4EE600AD9 +:104A3000F1EE10FA02D4788F022807D3788B03287E +:104A400004D3DFF848090C21C181012698ED0C0A36 +:104A5000DFED400AB4EE600AF1EE10FA08D498EDEA +:104A60001B0AF1EE040AB4EE600AF1EE10FA15D555 +:104A7000F86FD7F880100818EDF75AF80022DFF821 +:104A80001439ECF743FF0122DFF8F438EDF7C0FAF0 +:104A900004D8DFF8F8080D21C1811646B8EEC80A1F +:104AA0001148D8ED070AC0EE800AC0ED0A0AD8ED19 +:104AB000080AC0EE800AC0ED0B0AD8ED090A80EEA4 +:104AC000800A80ED0C0A0C2200F1280107F1AC00ED +:104AD000EDF7CDFA3046BDEC028BBDE8F081000069 +:104AE00088D800208CF80020E8FA00200020DFF8A9 +:104AF000A818CA6B12F10A0F0FD29FEDC40AD1EDAC +:104B0000120AF4EE400AF1EE10FA06DAD1ED1C0AB0 +:104B1000F4EE400AF1EE10FA00DB012070470000CD +:104B20000000354300009042CDCCCCCCCCCCFC3F37 +:104B300000002042000000000000E03F0100604053 +:104B40000100A04001007041010090400100804040 +:104B5000000016430000C84374FB00202DE9F24F0B +:104B60000446002500F0C6FBDFF81C6828463067C5 +:104B70007067B067DFF81478F881204600F04CF9D0 +:104B80003078052805D10120706528463070F08600 +:104B90003087706EBDF8001010FA81F07066D6F89C +:104BA0004C80F06D804501D101207065D7F84C90A4 +:104BB00009EB49004FEA800ADFF8E00721684AF86C +:104BC00000100AEB000B6068CBF80400A068CBF87B +:104BD0000800BDF80010204600F0A6F9F0619BED3A +:104BE000020ADBED010ADFF8B4075AF8000001EE13 +:104BF000100A21EE011A00EEA01A00EE001A11EEC2 +:104C0000100AECF74BFE41EC100B04F0D1F951EC1B +:104C1000100BFBF737FC00EE100AD6F850A0BAF1E3 +:104C2000000F0ED1284604E007EB800181ED040A55 +:104C3000401C0728F8D3F1EE0C0A60EE200AC6EDFE +:104C4000100A07EB8900D0ED040A70EE600A96EDB9 +:104C5000101A30EE811A86ED101A80ED040ADFF882 +:104C6000401701EB880181ED001A96ED110A30EE34 +:104C7000010A86ED110A90ED0B0A71EE400ADFF889 +:104C800024B70BEB8801C1ED000A80ED0B1A96EDFD +:104C9000120A30EE200A86ED120A94EC031A87EC11 +:104CA000031AB08E401CB0863178012901D0032947 +:104CB00030D180B2022822D2718B04291FD2B06D6C +:104CC000002857D197ED120A9FED951AB4EE410ACC +:104CD000F1EE10FA04D5F4EE410AF1EE10FA0BDA17 +:104CE000B9EE0C1AB4EE410AF1EE10FA42DBF4EE22 +:104CF000410AF1EE10FA3DD5012070653AE027280F +:104D000008D3F18E002903D010FA81F04B2801DB83 +:104D10000120706597ED120A00F0DCF93078012867 +:104D200028D1F08E002825D0318F002922D00322EF +:104D300011FA80F03D2801DB01207065708B04289A +:104D400000D30222708F824201D201207065F06F81 +:104D5000C6F88000F86D396E0818796E0818F0678B +:104D6000284678663866F865FFF742F90546002060 +:104D700030877087306EA8EB0000FA30FA21B0FB64 +:104D8000F1F201FB120196290AD10022B265B26646 +:104D9000F266F26272613283B287F2870122326771 +:104DA00064290FD10020F062706108220146301D95 +:104DB000EDF763F9002070837061012030670020F7 +:104DC000B087F0875BF82800B86408F10100F06450 +:104DD000FA2801D10020F06409F10100F8640728E5 +:104DE00001D10020F8640AF101003065306F00281D +:104DF00008D006F18404282206F10C012046EDF7C4 +:104E000036F9BC652846BDE8F28F00008096184B45 +:104E100000C062400000544070B50446DFF86C5595 +:104E2000AE6E95ED000AD4ED000A70EEC00A01EEF8 +:104E3000106AB8EEC11A60EE810AF5EE400AF1EE92 +:104E400010FA17D5D5ED1D0A30EE600A10EE100AE3 +:104E5000ECF724FD21F00041DFF84C25DFF8B034F9 +:104E6000EDF7D6F802D8E86D401CE8652868686759 +:104E70007042A866EE6E95ED010AD4ED010A70EE5F +:104E8000C00A01EE106AB8EEC11A60EE810AF5EEB2 +:104E9000400AF1EE10FA17D5D5ED1E0A30EE600A81 +:104EA00010EE100AECF7FAFC21F00041DFF8F824CC +:104EB000DFF85C34EDF7ACF802D8286E401C2866A9 +:104EC0006868A8677042E8662E6F95ED020AD4ED17 +:104ED000020A70EEC00A01EE106AB8EEC11A60EE66 +:104EE000810AF5EE400AF1EE10FA17D5D5ED1F0A4A +:104EF00030EE600A10EE100AECF7D0FC21F0004111 +:104F0000DFF8A424DFF80834EDF782F802D8686EE1 +:104F1000401C6866A868E8677042286770BD00009A +:104F20000100E0400000A04030B4DFF8602490EDC4 +:104F3000000AD2ED000A30EE600AD0ED010A92EDCF +:104F4000011A70EEC10A90ED021AD2ED021A31EE8A +:104F5000611AB5EE400AF1EE10FA02DDF0EE401AE9 +:104F600001E0F1EE401AF5EE400AF1EE10FA02DD32 +:104F7000B0EE602A01E0B1EE602AB5EE401AF1EE23 +:104F800010FA02DDF0EE412A01E0F1EE412A71EE65 +:104F9000821A71EEA21AB5EE400AF1EE10FA01DCA7 +:104FA000B1EE400ADFF8F03393ED032A32EE000A47 +:104FB00083ED030AF5EE400AF1EE10FA01DCF1EEA2 +:104FC000600A93ED040A30EE200A83ED040AB5EE80 +:104FD000401AF1EE10FA01DCB1EE411A93ED050A28 +:104FE00030EE010A83ED050A93ED060A30EE210A40 +:104FF00083ED060A93ED070AD0ED000A30EE200A91 +:1050000083ED070A93ED080AD0ED010A30EE200A7D +:1050100083ED080A93ED090AD0ED020A30EE200A6A +:1050200083ED090ADFF86003006D002810D100202D +:1050300006E0DFF8784304EB8004C4ED001A401C5E +:105040000F28F6D3B2EE0E0A21EE800A82ED140A82 +:105050009089DFF8584304EB800595ED000A31EEA6 +:10506000C00AD2ED140A30EE200A82ED140A04EBD5 +:105070008004C4ED001AF2EE0E0A80EE200A83EDE1 +:105080001B0AF5EE000AB4EE600AF1EE10FA04D540 +:10509000536D13FA81F1516501E000215165401C07 +:1050A000908180B20F2801D100209081506D30BCDA +:1050B00070470000F0164850FC18E93F3411363CA8 +:1050C000BD52DABFBBB88D06F016B83FB8ED221C52 +:1050D0001818783F70B52DED048BB0EE408AF0EED5 +:1050E000608A9FEDA19AA84E708B042801D3B0EE80 +:1050F000009AB5EE408AF1EE10FA07DBF5EE408A31 +:10510000F1EE10FA02D5708F401C708730780028BD +:1051100006D002287DD040D3032800F0A380E5E02C +:1051200019EE100AECF7BAFB41EC100B53EC102B04 +:1051300000209F49ECF714FD41EC190B18EE100A02 +:10514000ECF7ACFB02460B4651EC190BECF760FF99 +:1051500011D818EE900AECF7A1FB02460B4651EC71 +:10516000190BECF76DFF06D2B08E1028C0F0AF809F +:105170000020B086ABE0F06C8A4951F8200000EEC8 +:10518000100A8C48D0ED010AB4EE600AF1EE10FA74 +:1051900040F1AC8080ED010AA8E0F06C814951F843 +:1051A000200000EE100A8348D0ED000AF4EE400A19 +:1051B000F1EE10FA01D580ED000AB7EE000AB4EE68 +:1051C000408AF1EE10FAC0F29180F4EE408AF1EEDE +:1051D00010FA40F18B80B08EF0860020B08619EE78 +:1051E000100AECF75BFB02460B4600207249ECF715 +:1051F0002BFD02460B4614461D4618EE900AECF7AE +:105200004DFB22462B46ECF71BFF22D302203070C9 +:105210006CE019EE100AECF741FB41EC100B00209A +:10522000654953EC102BECF70FFD41EC190B18EE10 +:10523000100AECF733FB53EC192BECF7E9FE55D8C9 +:1052400018EE900AECF72AFB53EC192BECF7F8FE5A +:105250004CD203203070F06C524951F8200055496F +:10526000486043E0F06C4F4951F8200000EE100A0E +:105270005048D0ED010AB4EE600AF1EE10FA01D503 +:1052800080ED010A9FED3D0AB4EE408AF1EE10FA7E +:105290002CD5F4EE408AF1EE10FA27DBB08E308781 +:1052A0000020B08618EE900AECF7F8FA02460B469A +:1052B00014461D4619EE100AECF7F0FA00223C4B9A +:1052C000ECF74EFC22462B46ECF7BAFE0CD201203E +:1052D00030703848016871674168B167F16C314AD4 +:1052E00052F82110016001E0002030703078BDECF0 +:1052F000048B70BD24480078704700009A999999F2 +:10530000002804D02149896D2822EFF7E9BC7047B5 +:105310009999C93F1C48816D002901D1808F704740 +:10532000002070479999B93F174800210165018312 +:10533000418305210170002181658166C166C162DA +:1053400041618187C18770477B14AE47E17A743F22 +:10535000002806D0104942684A6002680A60008945 +:105360000881704700004E40000000000748406D73 +:10537000704700000000F03F6666E63FFEFF7FBF1B +:1053800000004440000034408CF400200CF8002061 +:105390003333D33F0000E03F8CF80020A4F200201C +:1053A000A0D4002088D800209B99999974FB0020F4 +:1053B00000001C40E4FD002000001CC0B0F5803F50 +:1053C0005EDBB0F1807F35DBB0F1805F15DBB0F1E3 +:1053D000804F0CDBDFF8341C884202DB4BF20450B8 +:1053E000704701160FF2F802895C090211E081157D +:1053F0000FF2EC02895CC9010BE00FF2E401B0F19D +:10540000806F03DB0215515C890102E08214515C5C +:10541000490190FBF1F25118491C491090FBF1F23F +:105420005118491C491001FB01F2904200DA491E53 +:10543000084670470FF2A801B0F5801F0ADBB0F5EF +:10544000800F03DB0214515C09010DE08213515CF3 +:10545000C90009E0B0F5802F03DB0213515C89001D +:1054600002E08212515C490090FBF1F25118491C94 +:10547000491001FB01F2904200DA491E08467047CC +:10548000FF2823DD0FF25801B0F5805F0BDBB0F58C +:10549000804F03DB0212515C491C10E08211515C09 +:1054A0004908491C0BE0B0F5806F04DB0211515C28 +:1054B0008908491C03E08210515CC908491C11FB92 +:1054C00001F2904200DA491E08467047002804D4D1 +:1054D0000FF20C01405C000970474FF0FF3070473D +:1054E0000010161B2023272A2D30323537393B3D3B +:1054F0004041434547494B4C4E50515354565759E0 +:105500005A5B5D5E60616263656667686A6B6C6D5D +:105510006E707172737475767778797A7B7C7D7E24 +:1055200080808182838485868788898A8B8C8D8E12 +:105530008F9090919293949596969798999A9B9B19 +:105540009C9D9E9FA0A0A1A2A3A3A4A5A6A7A7A837 +:10555000A9AAAAABACADADAEAFB0B0B1B2B2B3B464 +:10556000B5B5B6B7B7B8B9B9BABBBBBCBDBDBEBFA0 +:10557000C0C0C1C1C2C3C3C4C5C5C6C7C7C8C9C9E5 +:10558000CACBCBCCCCCDCECECFD0D0D1D1D2D3D331 +:10559000D4D4D5D6D6D7D7D8D9D9DADADBDBDCDD87 +:1055A000DDDEDEDFE0E0E1E1E2E2E3E3E4E5E5E6E3 +:1055B000E6E7E7E8E8E9EAEAEBEBECECEDEDEEEE46 +:1055C000EFF0F0F1F1F2F2F3F3F4F4F5F5F6F6F7AB +:1055D000F7F8F8F9F9FAFAFBFBFCFCFDFDFEFEFF1B +:1055E0002DE9F04199B00546144620461422EFF704 +:1055F00077FB00210A4611E0142055F8213000AF56 +:1056000000FB067747F8223000AF00FB027040F83D +:105610002630761C491C052EEEDB521C052A01DAC9 +:105620001646F8E70021142000E01946052980F20B +:105630008A8000AA00FB012252F821700D464B1C03 +:105640001E4606E0CEF1000CE04501DA354677460D +:10565000761C052E10DAB846B8F1000F01D5C8F156 +:1056600000080DF1000C00FB06CC5CF821E0BEF157 +:10567000000FE7D4F446E7E78D4218D000260CE08F +:1056800052F826700DF1000C00FB05CC5CF826E00A +:1056900042F826E04CF82670761C052EF0DB54F814 +:1056A000217054F8256044F8216044F825701E46A6 +:1056B00014E0002D11D052F82650AD0142F82650CA +:1056C00052F82150AD110FD052F8265052F82170E7 +:1056D000BF1195FBF7F542F82650761C052E52F8BF +:1056E0002150E6DB002D02D14FF0FF3046E054F8A8 +:1056F000216096FBF5F544F821501D461EE057F851 +:1057000026E052F826804FEAE8084FEAEC0C0CFB42 +:1057100008FCAEEBAC1C47F826C0761C00AF00FBC3 +:10572000057757F821C0052EE9DB54F8256054F8B9 +:1057300021700CFB176644F825606D1C052DBFF623 +:1057400074AF1E46EAE7042113E054F8210001EB90 +:10575000810200AB03EB820252F8262054F8263077 +:105760005A43A0EB223044F82100761C052EECDBD6 +:10577000491E002901D44E1CF8E7002019B0BDE8ED +:10578000F0812DE9F04186B000252E462C462346B7 +:1057900003AF9C469E469846A7E8005100AFA7E895 +:1057A00000511F4604E0664501DB66463B467F1C10 +:1057B000032F11DA002F04D10668354643461C46F4 +:1057C000F5E70FF28C0C17F90CC050F82CC0AC4563 +:1057D000E9DB65463C46EAE703AD012645F8236070 +:1057E00045F82460464601E0761C76B2032E04DAC2 +:1057F00055F82670002FF7D1019600940293434686 +:105800000EE0AF1807EB860706EB460C01EB8C0C9D +:105810005CF824C0C7F804C0761C032EF1DB5B1CC7 +:10582000032B10DA00AC54F823400FF2240C14F9C7 +:105830000C5050F825601D01AE50012E01DA46468D +:10584000AE504646E9E7404606B0BDE8F0810000AC +:10585000000305002DE9F24F98B0014602A8182276 +:10586000EFF73EFA002101E0491C49B2032913DA9F +:10587000002004E0002342F82030401C40B20328FE +:10588000F2DA0C220EAB12FB01328142F2D14FF45C +:10589000804342F82030F0E70020019024E00C2201 +:1058A0000EA912FB001252F8241052F8253006FB04 +:1058B00001F70BFB03FCA7EBEC07BF1142F82470C8 +:1058C0004FEAEB07734307FB0131891142F82510BA +:1058D000401C0328E3DB02A808A91822EFF700FA0E +:1058E0000198401C40B201900198062880F2DE80A9 +:1058F00001200024054602270399002900D54942CA +:10590000049A002A00D55242914202DA38460546EE +:10591000012702A951F82000002800D5404206992D +:10592000002900D54942884202DA012402250027D5 +:105930000FF28C1004EB440101EB000805EB45016C +:1059400001EB000915F8090002A951F8200014F82C +:10595000081002AA52F82110401A461015F8080043 +:1059600002A951F8200000904FF00A0A90FBFAF0CB +:1059700096FBFAF1404301FB0100FFF71FFD0AFB14 +:1059800000FBBBF1000F11D0300000D540420003F6 +:1059900090FBFBF000F580504FEA600A5046FFF79D +:1059A0000DFD064606FB0BF0801002D14FF0FF30D4 +:1059B00082E00099090391FBF0FB15F8090002A9A8 +:1059C00051F8200014F8081002AA52F82110884259 +:1059D00001DACBF1000B0BFB0BF08011009008A853 +:1059E00002A91822EFF77CF917F80800014602AA6D +:1059F00052F821107143891117F8092002AB53F8AE +:105A000022200BFB02F2A1EB622108AA42F820102F +:105A100017F8091002AA52F820000BFB00F052F808 +:105A200021207243921102EB602008AA42F8210063 +:105A300015F8080002A951F8200006FB0BF18911A6 +:105A40004843011214F8080002AA52F820000AFB89 +:105A500000F0C1EB203015F8092053F82220009BFC +:105A60005A4300EB223014F8082008AB43F8220018 +:105A700015F8090002AA52F820000AFB00F001EB19 +:105A8000203014F8081052F82110009A514300EB0E +:105A9000213015F8091008AA42F8210015F808006D +:105AA00008A9002241F82020104612E7189A0EA9F2 +:105AB00002A8FFF766FE002019B0BDE8F08F0000D5 +:105AC000000102010304020405000000F0B4DFF845 +:105AD000202C02F59A7191F9013092F93441012C90 +:105AE0001CDB5C1E64B2002C01D5143464B204EBE0 +:105AF000440502EB8504E56C8668AD1BA66C47681F +:105B0000F61B646C0768E41B764304FB046405FB26 +:105B10000544B4F5C87F01DA00202DE003EB43040F +:105B200002EB8403443370C870C34878401C48704B +:105B300040B2142801DB0020487092F83401401C68 +:105B400082F8340140B2142802DB142082F83401B8 +:105B500092F934010A2290FBF2F302FB13000028B1 +:105B600009D191F9010090FBF2F102FB1100401EF6 +:105B70008041C00F00E00020F0BC7047DFF8700BE0 +:105B800090F934110A2291FBF2F1012903D100218D +:105B900080F834117047114680F8341170472DE9B0 +:105BA000F04794B005460E460027DFF8448B98F97D +:105BB000344198F83501A0EB04094FFA89F9B9F19D +:105BC000000F03D509F114094FFA89F9BA4624E008 +:105BD00009EB490008EB8000A968C26C891A6A6861 +:105BE000836CD21A2B68406C181A524300FB0020B9 +:105BF00001FB0100FFF7E2FB00A941F82A00C719E9 +:105C000009F101094FFA89F94846142801D14FF0EA +:105C100000090AF1010A4FFA8AFAA245D8DB97FB7C +:105C2000F4F030600022134607E000A951F8231079 +:105C3000091A01FB01225B1C5BB298F934118B42FB +:105C4000F3DB92FBF1F014B0BDE8F0872DE9FE41E3 +:105C500000ACE0C9E0C40C39002635462C46274686 +:105C60000AE053F827C052F827E051F82780AEEB3E +:105C7000080E0EFB0C667F1C032FF2DB711306EB84 +:105C80009141891322460FE053F822604E4300AF42 +:105C900057F822704FEA663C06EB9C4607EBA636A7 +:105CA00000AF47F82260521C032AEDDB21460CE0CE +:105CB00050F8212000AE56F82160921B53F8216065 +:105CC00002FB065502FB0244491C0329F0DB002CB1 +:105CD00002D140F2011008E0280000D540428512B0 +:105CE00005FB05F090FBF4F000B2BDE8FE812DE964 +:105CF000F0419AB0144600220AAD164602E045F87B +:105D00002260521C0F2AFADB324606E005AD45F848 +:105D1000226000AD45F82260521C052AF6DB3246AF +:105D20000AAE07E00FF64025555753F8227046F8A3 +:105D30002570521C062AF5DB0025209A1CE005EB95 +:105D400045060FF62C27F6199E5730F9157002EB11 +:105D5000051C0CEB830CDCF814C00CFB07F70DF1F1 +:105D6000280C4CF82670002F02D0BF124CF8267079 +:105D70005B1C032BE3DB6D1C022D01DA0023F8E72B +:105D80000025219B00AF04E053F8256047F825600B +:105D90006D1C032DF8DB00250C261BE002EB051C17 +:105DA0000CEB830CDCF814C051F823E054F823808A +:105DB000AEEB080E0EFB0C775B1C032BEEDBBB126D +:105DC00030F915707B4300AF07EB8507FB606D1C56 +:105DD0006DB2B61C022D15DA1368002B02D14FF0FC +:105DE000FF3025E030F91570A7F58067BF0497FBF9 +:105DF000F3F337467FB20DF1280C4CF8273000271B +:105E00003B46DAE705AA00A90AA8FFF7E9FB002547 +:105E100022980AE005A951F8251040F8251054F8F9 +:105E20002520511840F825106D1C032DF2DB0020B1 +:105E30001AB0BDE8F0812DE9FE47002633461C4626 +:105E40001D4638C00C3802E041F823405B1C062B8D +:105E5000FADB234602E042F823405B1C032BFADB0B +:105E6000DFF88C4804F59A735D7894F83471EF1B71 +:105E70007FB2002F01D514377FB2B44617E050F837 +:105E800025E007EB470804EB880808EB8508D8F8FD +:105E90004480C64440F825E06D1C032DEFDB7F1CD9 +:105EA0007FB23D46142D00D137460CF1010C94F918 +:105EB00034514FFA8CFCAC45354607DAEDE750F823 +:105EC00025C09CFBF7F740F825706D1C94F93471E0 +:105ED000032DF4DB5B78DB1B5BB29C46BCF1000F4F +:105EE00003D50CF1140C4FFA8CFCB6461BE00CEBFE +:105EF0004C0804EB880808EB8508D8F8448050F873 +:105F00002590A8EB090808FB08666D1C032DEEDB45 +:105F10000CF1010C4FFA8CFC6546142D01D14FF0A9 +:105F2000000C0EF1010E4FFA8EFEBE4501DA00257F +:105F3000ECE796FBF7F6002B01D514335BB2002794 +:105F40000FE052F825E00DF1000858F8258009FB14 +:105F500008F80EEB680E42F825E06D1C032DF0DB0F +:105F60007F1C94F934517FB2AF424CDA002510E027 +:105F700003EB430C04EB8C0C0CEB850CDCF844C0FD +:105F800050F825E0ACEB0E0C0DF1000E4EF825C0DC +:105F90006D1C032DECDB5B1C5BB21D46142D00D188 +:105FA00000230025AC4618E06DB251F825800DF1B4 +:105FB000000959F82C900DF1000A5AF82EA00AFB9E +:105FC000098841F825800EF1010E6D1C4FFA8EFEF6 +:105FD000BEF1030FE8DB0CF1010CBCF1030F01DA99 +:105FE000E646F3E74FF0000C654606E00DF1000EC3 +:105FF0005EF825E00EFB0ECC6D1C032DF6DB0025B4 +:10600000ACEB0609AAE70020BDE8FE8710A8FE7FDA +:106010002DE9F043A1B00446002003904FF0FF3576 +:10602000064604A8314601600BAA1AA908A8FFF782 +:1060300002FF002800F1A9800EA91AA8FFF70AFCA8 +:1060400040B2002800F1A1800DF110080120A8F84D +:106050000200DFF89C7605A802900BA801900EA81C +:1060600000901AAB08AA391D04A8FFF740FE0028CB +:1060700000F18B8003A905A8FFF791FD0399012981 +:10608000C0F2838097F9341142F21072129B93FB95 +:10609000F1F35343DDF80CC093FBFCF393FBFCF9E5 +:1060A000169B93FBF1F15143624691FBF2F191FB98 +:1060B000F2F12160C4F80490A060039A2261324694 +:1060C00022753A6C22733346022201E0521E52B20C +:1060D000002A1AD497F934C14FF00A0E9CFBFEFC3B +:1060E000ACF1010C0CEB4C0C4FFA8CFCBCF1070F23 +:1060F00001DB4FF0060C42FA8CFC07EB8C0CDCF851 +:1061000010C08C45E2DA531C5BB2012B24DB1A462B +:10611000521E52B201E0521E52B2002A0CD407EBBA +:10612000820CDCF834C04FF0640E91FBFEFEF444A8 +:106130008445F0DB531C5BB2002A44D40720207551 +:10614000386C834208DB3B6418462073381D05A970 +:106150001CC91CC0012067E04FF48060A8F8020051 +:1061600005A802900BA801900EA800901AAB08AAEF +:10617000391D04A8FFF7BBFD002806D403A905A814 +:10618000FFF70DFD0399012901DA28464CE0A060D4 +:1061900003992161B9F57A7F45DD396C002901D178 +:1061A000B44601E0A1F1010C4FFA8CFC07EB8C0125 +:1061B000496B01EBD1714FF4C87299FBF2F202EB1B +:1061C0006101814202DA6FF002002DE017AB08AAEC +:1061D00005A9381DFFF73AFDB446324605E04942AD +:1061E0008D4201DA0D469446521C032A06DA0EA9A6 +:1061F00001EB8201496A0029F1D4F1E7BCF1000FFB +:1062000000D10626BCF1010F00D10526BCF1020F1A +:1062100000D103262675E72803DA381D05A91CC915 +:106220001CC0012000E0304621B0BDE8F083DFF85B +:10623000C0140A68002A02D16FF0020070470028DB +:1062400002D16FF07F007047002206E001EB82036D +:106250005B689B0020F81230521C032AF6DB0020FA +:10626000704710B4DFF888140A68002A02D16FF072 +:10627000020013E0002802D16FF07F000EE0002240 +:1062800009E030F912305C1003EB94739B1001EBC2 +:1062900082046360521C032AF3DB002010BC7047A9 +:1062A000DFF84C040168002902D16FF0020070474A +:1062B000006C7047DFF838140A68002A02D16FF0CA +:1062C00002007047042802D36FF07F007047086413 +:1062D000002070472DE9F0418AB00C461546002693 +:1062E000DFF80C743968002902D16FF002007DE0FC +:1062F000002803D0002C01D0002D02D16FF07F00C8 +:1063000074E0314637E0DFF8F02301EB410302EBA4 +:10631000430C0A23BCF91CE0B0F900801EFB08FE08 +:106320009EFBF3FEBCF91EC0B0F902801CFB08FC0A +:106330009CFBF3FCF44401EB410E02EB4E02B2F97C +:106340002020B0F904E012FB0EF292FBF3F262445B +:106350004FF47A7392FBF3F200AB43F8212000AACA +:1063600052F82120531002EB93729210E24B03EB90 +:1063700081031A63491C032913DA30F9112047F607 +:10638000FF739A4202D0DB4B9A42BCD132463A6448 +:10639000D94A02EB8102126B920000AB43F8212034 +:1063A000DDE7E348FFF792FB002803D003A8FFF7DF +:1063B0002FFE064600200AE000A951F8201007EB46 +:1063C00080025268A1EB820124F81010401C0328BF +:1063D000F2DBFFF765FF2860002E06D516F1030FEC +:1063E00001D1FFF7CBFB002000E030460AB0BDE84A +:1063F000F08110B5BE4C201D00210A460B460EC090 +:106400000FF234313022EEF76BFC0020206484F868 +:10641000340184F8350101202060002010BD80B5D2 +:1064200020EE000A00EEA00A01EE010A10EE100AAA +:10643000EBF734FA41EC100B02F0BAFD51EC100B03 +:10644000FAF720F800EE100A01BD000070B52DED3E +:10645000088B8CB005460E461446002D00F0A38034 +:10646000002E00F0A080002C00F09D8095ED021A17 +:10647000D5ED010A95ED000AFFF7D1FFB0EE408A95 +:1064800096ED021AD6ED010A96ED000AFFF7C7FF56 +:106490009FED9A9AB4EE498AF1EE10FA00F18380EA +:1064A000B4EE490AF1EE10FA7DD4002009AA16E0F4 +:1064B00005EB8003D3ED000AC0EE880AF1EE600A16 +:1064C00001EB8001C1ED000A06EB8001D1ED000A6D +:1064D000C0EE800A02EB8001C1ED000A401C03A956 +:1064E0000328E5DB92ED010A91ED028A92ED021A92 +:1064F000D1ED018A68EE810A48EE400ACDED000A2E +:10650000DDED090A68EE200ADDED031A41EEC10A4D +:1065100000ADC5ED010A9DED031A21EE001A9DEDB7 +:10652000090A08EEC01A85ED021A9DED000AFFF770 +:1065300076FFB4EE490AF1EE10FA34D4002008E0F8 +:1065400005EB8001D1ED000AC0EE800AC1ED000A22 +:10655000401C0328F4DB95ED020AD5ED019A69EEA3 +:10656000880A40EE680ACDED060ADDED030A60EE0A +:10657000200A9DED000A40EE480A06ADC5ED010A6D +:106580009DED000A20EE281A9DED030A09EEC01ABF +:1065900085ED021A9DED060AFFF741FFB4EE490AA8 +:1065A000F1EE10FA02D56FF07F007DE0002008E0E8 +:1065B00005EB8001D1ED000AC0EE800AC1ED000AB2 +:1065C000401C0328F4DB9FED4EAB9FED4FBB9DEDD0 +:1065D000000AD5ED010A70EE200A9DED060A39EE9B +:1065E000C00A02F06FFD10EE100AEBF757F953ECFA +:1065F0001B2BEBF78BF953EC1A2BEBF7E5FBF9F7B9 +:1066000041FF2060B1EE680A02F094FDB1EE400A4D +:1066100010EE100AEBF742F953EC1B2BEBF776F96F +:1066200053EC1A2BEBF7D0FBF9F72CFF60609DEDD4 +:10663000030AB1EE400A02F07DFD10EE100AEBF7FE +:106640002DF953EC1B2BEBF761F953EC1A2BEBF7FD +:10665000BBFBF9F717FFA060B1EE480AB5EE400AA0 +:10666000F1EE10FA12D59FED2A0AD4ED010A70EE70 +:10667000600AC4ED010AF4EE400AF1EE10FA05D505 +:106680009FED2C0A30EE800A84ED010A94ED000A99 +:10669000B5EE400AF1EE10FA05D5DFED260A30EE30 +:1066A000200A84ED000A00200CB0BDEC088B70BD00 +:1066B00010B5114C174820601748206117486061D9 +:1066C0001748A0601748E060174860601748A0614D +:1066D0001222002104F11C00EBF7CFFC42F21070F3 +:1066E000A083A084A085024800210160084610BD57 +:1066F00070F000200080FFFFB0FB0020BD37863522 +:10670000182D4454FB210940000000000080664021 +:10671000000034C3F3630208A1620208B5620208F4 +:106720002F62020863620208D56202084D64020803 +:10673000E0FB00200000B4432C010000F401000045 +:10674000E8030000C80000002C010000F401000074 +:10675000C80000002C010000F40100001E00000031 +:10676000140000000F0000000001020506090000EF +:1067700003070A04080B0000002303604360C260A3 +:106780008160194603E000EB41021382491C8268D4 +:106790009142F8DB7047024608469168022900DA08 +:1067A000704730B4536814688C4208DA591C516041 +:1067B00002EB430108821168491C116035E08B42ED +:1067C00001DB0021516051684B1C536002EB410119 +:1067D000088200210B4606E002EB4304B4F91040A6 +:1067E00001FA84F15B1C9468A342F5DB91FBF4F1A0 +:1067F00000231C4607E002EB4405B5F910504D1B81 +:1068000005FB0533641C9568AC42F4DB93FBF5F3A0 +:10681000D2689A4202DB084600B206E0401A9A1A91 +:10682000504390FBF3F0081800B230BC7047016091 +:1068300000218180704770B4B0F9042013460468C9 +:106840000D461E1BB54202DBE318AB4202DA818023 +:10685000084600E0104670BC7047F8B504460D4687 +:10686000002C01D0002D02D16FF07F00F2BD244E2C +:10687000D6F8C000002802D16FF00200F2BD002758 +:1068800012E034F91710C7EBC70006EBC000FFF7A2 +:1068900082FF25F81700014606EBC700A830FFF776 +:1068A000CAFF25F817007F1C032FEADB0020F2BD8A +:1068B00038B50024124D11E00FF2540050F8242096 +:1068C0001421C4EBC40005EBC000FFF755FF032102 +:1068D00005EBC400A830FFF7AAFF641C032CEBDB18 +:1068E0000120C5F8C000002032BD064806490160FD +:1068F0000649416002480021C0F8C01008467047B0 +:10690000C8F3002020FE0020B16802085B6802087E +:106910009000000090000000900000002DE9F04F72 +:106920000646DFF8DC03DFF8DC130160DFF8D8137C +:106930000068884236D1DFF8D403016006F1100701 +:106940000020F860B86078603860B86178613861BC +:1069500074682046002102F01DFC24D04FF08740CF +:10696000214602F025FCEAF799FF054689462046B4 +:10697000EAF794FF044688463088EBF7E3F8DFF83F +:106980009023DFF89033EBF71FFA22464346EBF7EC +:10699000E7F802460B4628464946EBF715FAEBF7AF +:1069A00093F801E0FEE70020B883B4682046002198 +:1069B00002F0F0FB22D035882802EBF7B9F88246C6 +:1069C0008B462046EAF76AFF02460B46DFF8400393 +:1069D000DFF84013EAF79AFF044688462846EBF7AB +:1069E000B1F822464346EBF7BBF802460B46504649 +:1069F0005946EBF7E9F9EBF767F800E00020F88378 +:106A000030884FF47A7190FBF1F03884BDE8F08F54 +:106A10002DE9FE4F96B0DFF8F4120968DFF8E8229E +:106A2000914200D0FEE71946103100910969009AA1 +:106A300052690792009A92690392009AD2F80090E4 +:106A400052680692009A9268009BDB68189CA489A1 +:106A50000194009CA48B0594009CE48B0894002472 +:106A60004FF48075059EAD1B0D95019DC5EBC505C9 +:106A70000C95019D05EB450675000B95019D05EBF9 +:106A800085050A95019D05EB45050995009D2D8C11 +:106A9000012DC0F21D810578DFF87062AD19069EE8 +:106AA00095F80472BE190E9695F8046109EB460735 +:106AB0002D79019E365CDFF854C2664496F804C214 +:106AC000674402970F9796F8047105EB47053679EE +:106AD000019F10F81770DFF834C2674497F804C2BA +:106AE0006544109597F804C106EB4C063F79DDF834 +:106AF00024C01CF800C0DFF814E2E6449EF804C28B +:106B0000664411969EF804C107EB4C079EF804E01A +:106B1000DDF804C010F82CC0DFF8F081E04498F8EC +:106B200004C26744129798F804C10EEB4C0C98F815 +:106B30000480DDF828E01EF800E0DFF8D091F14491 +:106B400099F804E2E644CDF84CE099F804C108EB6A +:106B50004C0C99F804A0DDF82C8018F80080DFF8C0 +:106B6000AC91C14499F80482E044CDF8508099F882 +:106B700004C10AEB4C0A99F80490DDF830C01CF807 +:106B800000C0DFF888B1E344CDF810B09BF804C230 +:106B9000E244CDF854A0DDF810C09CF804C109EB24 +:106BA0004C09CDF81890DDF810C09CF80490DDF881 +:106BB00038C0CCEBCC0B03EB8B03DDF808C04FF0F7 +:106BC000150B0BFB0C33C5EB051C634406EB860C65 +:106BD00003EB4C0307EB470C03EB4C030EEB4E0CA3 +:106BE000634408EB030C0E9B03EBC30302EB83022D +:106BF000029B4FF02A0B0BFB03222E2303FB0522E3 +:106C0000BB1903EB430302EB03122E2303FB0E22FB +:106C10000BFB08220AEBCA0302EB8303029A05EB83 +:106C20004505AA1806EB460502EB450207EB87056A +:106C300002EB4502CEEB0E15AA18152505FB08221E +:106C4000CAEBCA0502EB8502ACF50035089E56B1C9 +:106C5000089E6918079FC91B7143CE1101EB16618D +:106C6000091207950D46059E66B10D9E039FDDF83E +:106C700014C005FB0CF507FB0655EE1105EB166578 +:106C80002D120395BDF85C607543012DACBF08352E +:106C9000083DEE1005EB16752D11DFF87C60B5424E +:106CA000B8BF354605DB47F6BD76B542A8BF47F607 +:106CB000BC75189EF6896643169F27F81650019DED +:106CC00000EBC500641C009D2D8CAC42FFF6E3AECA +:106CD0000098C0F800900098069C4460009882607C +:106CE0000098C3600098016100980799416100987D +:106CF000039981610098008C19B0BDE8F08F000005 +:106D000000300240C2A507F4CDB5E8B56C300020D4 +:106D10001F85EB51B81E19404480FFFF10B4028854 +:106D2000164B98420BD0B0F1804F08D0144CA042C3 +:106D300005D0144CA04202D0134CA04204D14FF60F +:106D40008F7422404C88224302804A68C2620A88BB +:106D50000285984202D1897A0C4A118001218182F0 +:106D600010BC70470029018803D041F00101018067 +:106D700070474FF6FE7211400180704700000140DD +:106D80000004004000080040000C004030000140BA +:106D9000002A828902D011438181704722EA0101D1 +:106DA000818170470022038A0B4080890840002BB4 +:106DB00002D0002800D001221046704770B4294A42 +:106DC000294B1C78012C08D102F10804546002F10F +:106DD0002804146000241C7007E002F128045460A9 +:106DE00002F10804146001241C70204B00249C80D4 +:106DF00019E0012C14D15C888C420CD202EB4404C3 +:106E0000166836F81550A4F808545C88641C5C8039 +:106E1000A4B28C4204D300245C801C720124DC7177 +:106E20009C88641C9C809D88854218D21C7A002C0A +:106E3000DFD11C888C420CD202EB4404166836F871 +:106E40001550A4F848501C88641C1C80A4B28C42C5 +:106E5000E6D300241C8001241C729C71E0E770BC06 +:106E6000704700BF60590020FD7B0020507B002050 +:106E70004FF4011101600020704730B4C26C538997 +:106E8000D48E92884C30858915FA84F414FA82F2F3 +:106E900002EB8204620002EB4302C38902F6EB12AA +:106EA00002EBC302426401B10A60002030BC7047AB +:106EB00010B500F14804DFF8A802616C814204D1EA +:106EC000A16C41F27172914201D3012010BD0021E9 +:106ED00003E0002200F8012B491CA26C9142F8DB70 +:106EE000204602F011FB0021A18610BD2DE9F04FD4 +:106EF00083B00C4604F14801009101F10806F16BE2 +:106F000001F6F805FD21ADF804100CB9FC2023E1D1 +:106F1000DFF84CA20AF6F8018D4202BF29690AF592 +:106F2000076291423AD1E9680AF65812914202BFCB +:106F30006968009A914231D169690AF50B62914200 +:106F400002BFA9680AF63812914227D1DAF88418EC +:106F50000AF57472914202BF0AF5F878DAF89818C7 +:106F600041451BD1DFF8FC914C4502BFE168DFF8D9 +:106F7000F821914202BF04F10C07B7F90410B1F5F2 +:106F8000F07F0BD1B7F9082040F2E111F0328A42CC +:106F9000BEBFB7F90620F0328A4201DB0120DBE0F8 +:106FA00020B10146F022484602F091FB009800898A +:106FB000022815D1204600F0FDF868B1B7F90EB0EF +:106FC000204600F007F9F88130B9BBF1000F70D00E +:106FD0002046FFF76DFF6CE0F88918B9B08568E0CE +:106FE0000120F881E88F98B9204602F0FFFA0028C6 +:106FF0005FD04346F0220021484602F012FB0020F9 +:10700000A8870120E8876869016C491C016450E089 +:10701000A88F012804BF0020A887E8680099B0F86D +:107020004600A1F84C00A88F20B9204602F0DEFAF5 +:1070300000283ED06868808E02281CBF0120B085E1 +:107040006869016C491C0164B4F8960010B1401ED7 +:10705000A4F896000AF5F8744FF4F07221460AF588 +:10706000747002F073FB4346F0220021484602F0A0 +:10707000D8FA4FF4907221460AF5B66002F066FB2A +:10708000284602F05AFE284602F0EEF840B195F884 +:107090002800C0070FD4284602F0B8F9002855D1BF +:1070A0002869C168491CC1604168491C41600120D0 +:1070B000A887FD2050E0002000900023E868416888 +:1070C00002222846DBF71EFE686802218186E868F6 +:1070D000D9F74AFB0400E8681FD1818EC1F3C021B3 +:1070E00031B3018E2846D9F706FD08B36869B0F8B8 +:1070F000401001616968088B50B1284602F09EF883 +:10710000E868DAF78EF82869C068401CA8630FE0C9 +:107110000124284602F056F80AE06968CA8E521C1B +:10712000CA86DAF77EF80024688D00F47F4068850F +:10713000A88F401CA88780B2012806D12869C168A1 +:10714000491CC1604168491C41601CB195F82A0086 +:10715000ADF80400BDF8040003B0BDE8F08F70473F +:1071600058B3002050F6002098AF002038B50546EF +:10717000202105F12400DCF7B1F800202C1DC5F812 +:107180008400E0676860E082284602F03FFAEF3052 +:10719000F02290FBF2F0B4F9101000B2C0EB001234 +:1071A00001EB0210B4F90C1000B28842A8BF401ADB +:1071B000608231BD418AC28A891A09B2002944BF5E +:1071C000B0F91000091809B2F02901DB012070475D +:1071D0000020704738B5044604F1240500F07FF81C +:1071E0006168491C61600028B5F9001047D021B1E1 +:1071F00001290CD003293FD064E0052068800120DC +:107200002880211D0020CA6F521CCA6732BDB5F903 +:1072100002000028F5D0401E688000B20028F0D19E +:10722000211DB1F91200CA89121A12B2002A44BFF4 +:10723000B1F90C30D218B1F9143012B29A1AF02305 +:1072400092FBF3F212B2182AA8BF1722C2EB021364 +:10725000A0EB03100882B1F91000002802D58B8939 +:10726000181808820220288004F184006168806870 +:10727000891AC0F874182BE00220288028E0012920 +:107280001ED01FD3032913D01CD2211D488A0A8A7D +:10729000801A00B2002844BFB1F90C10401800B2A7 +:1072A000F02190FBF1F004F1840148820320288052 +:1072B00004F18400418A002904BF008A002801D11A +:1072C00000209DE7B5F90000022818BF032898D1D7 +:1072D000D4F88410491C0120C4F8841032BD2DE973 +:1072E000F84600F10C02C468B2F90A6000F124010A +:1072F00004EB460AB1F91040B0F9660000250023FE +:1073000008B94FF496604FF0F00C3AF902EBAEEB8F +:1073100004077446BEF1000F48BFCEF1000E75445D +:10732000012FAEBF4FEA471EC7F1000E4FEA4E1EB7 +:107330007344BCF1010CE8D1F036568136B2B2F993 +:107340000470BE4204BF002656810C822A11B1F996 +:107350000640B1F90E601B1204F1010E16FB043653 +:1073600006EB6E0696FBFEFA47F6FF76B245A8BF1F +:10737000B24604DA4B4DAA45B8BFDFF82CA1A1F8FC +:107380000EA0B1F90C90B1F90050CA46022D04D1FB +:107390004D271AFB07F7BF1103E016271AFB07F763 +:1073A0003F11B9F1000F08D0B1F90E903FB24F452F +:1073B000B4BF4FF001094FF00009B1F90A7017FB93 +:1073C000042707EB6E0797FBFEFEB645A8BFB6463F +:1073D00004DA344FBE45B8BFDFF8CCE0A1F80AE0CC +:1073E000022DB1F90870BE4606D14FF04D0C1EFBC0 +:1073F0000CFC4FEAAC1C05E04FF0160C1EFB0CFC1D +:107400004FEA2C1C002F08D0B1F90A500FFA8CF764 +:10741000AF42B8BF4FF0010C01DB4FF0000C4CEA5B +:107420000905B0EB221FB4BF012000202843072C20 +:10743000ACBF1024641CCC80B1F912401CB18C810B +:1074400000244C8203E09C005445B8BF4B82B1F944 +:107450000440B1F90C50671C15FB043303EB6703C0 +:1074600093FBF7F3B342A8BF334603DA0D4DAB42AB +:10747000B8BF0D4B14FB0E2202EB670292FBF7F232 +:107480008B81B242A8BF324603DA064B9A42B8BF9C +:10749000054A0A81062CACBFC822621C8A80BDE85E +:1074A000F28600000280FFFF0180FFFF38B5DFF8A1 +:1074B00088475022002104F13000EAF7DEFD502217 +:1074C0000021EAF7DAFD50220021DFF87007EAF721 +:1074D000D4FDDFF86C575022002105F11000EAF7C7 +:1074E000CCFD50220021DFF85C07EAF7C6FD5022F0 +:1074F0000021DFF85407EAF7C0FD0020207060701B +:1075000020716071A070E070A07120816081DFF84F +:107510003C07C4F880009FEDC60B84ED040B84ED9E +:10752000060B85ED000B84ED080B85ED020B84ED59 +:107530000A0B31BD2DE9F04F2DED088B83B0B0EE75 +:10754000408ADFF8F446218900EB010BA4F808B06B +:10755000618947186781A079192809D2401CA07158 +:1075600018EE100AEAF79AF9DFF8D426C2E9020108 +:107570009FEDAC0AB4EE408AF1EE10FAC0F24C81F5 +:10758000D4ED200AF4EE400AF1EE10FAC0F2448184 +:10759000A0791928C0F040811FFA8BFBBBF1AF0F17 +:1075A000C0F03A8138EE600ADFF8945685ED1C0A87 +:1075B00084ED208A10EE100AEAF770F921F00041FC +:1075C000DFF88C26DFF88C36EAF722FD05D8D5E9FE +:1075D0000201F8F757FF08EE100A6678002E04D172 +:1075E00085ED188A85ED198A52E0D5ED1A8A18EED4 +:1075F000100AEAF753F941EC1A0B9FED8B9B95EDBE +:10760000180A28EE800A10EE100AEAF747F98046B9 +:10761000894618EE900AEAF741F902460B4651EC0A +:10762000190BEAF711FB53EC1A2BEAF76FF94246F4 +:107630004B46EAF795FAF8F725FF08EE900AC5EDF4 +:10764000188A95ED1BAA95ED190A2AEE000A10EE8C +:10765000100AEAF723F9CDE900011AEE100AEAF759 +:107660001DF902460B4651EC190BEAF7EDFA80467C +:10767000894618EE900AEAF711F942464B46EAF7B6 +:1076800045F9DDE90023EAF76BFAF8F7FBFE6866D7 +:1076900040F2E930BFB2874214D3A078DFF8B815C2 +:1076A00001EB80016A6E8A62401CA070C0B214288F +:1076B00001D10020A070E078142801D2401CE070B5 +:1076C0000020608194F800904F4605EB8708DFF8B2 +:1076D00074A5142E27D1D8ED048A18EE900AEAF783 +:1076E000DDF802460B46D4E90401EAF7ADFAC4E935 +:1076F000040128EEA80A10EE100AEAF7CFF80246B5 +:107700000B46D4E90601EAF79FFAC4E906015AF8E4 +:107710002700EAF7C3F802460B46D5E90001EAF76D +:1077200093FAC5E9000188ED048A18EE100AEAF719 +:10773000B5F841EC1A0B53EC1A2BD4E90401EAF723 +:107740000FFA41EC190B84ED049B28EE080A10EEA9 +:10775000100AEAF7A3F8D4E90623EAF701FA41ECA4 +:10776000180B84ED068B4A46314605F1100000F0F7 +:107770007DF90AEB870080ED000A10EE100AEAF7A7 +:107780008DF8D5E90023EAF7EBF941EC1A0B85ED0A +:1077900000AB04EB8700696E0163DFF8BC0420F8DE +:1077A00017B0142E01D2701C60706078EAF7CAF925 +:1077B00041EC1B0B51EC190B53EC1B2BEAF704FBB0 +:1077C00041EC190B85ED029B51EC180B53EC1B2B74 +:1077D000EAF7FAFA06460F4653EC192B51EC190B4F +:1077E000EAF794F802460B4630463946EAF72CFA97 +:1077F000C4E9080151EC1A0B53EC1B2BEAF7E4FA2D +:10780000C4E90A0109F101002070C0B2142801D1B5 +:10781000002020700020208103B0BDEC088BBDE863 +:10782000F08F00000100FA43000000000000F03F6C +:107830000000000000000000F0B52DED068B81B0C7 +:10784000F0EE408A00263446DFEDB49A9FEDB39AFD +:107850009FEDB28ADFF8E0536878142840F0FF808B +:10786000E8780528C0F0FB80F5EE408AF1EE10FACA +:1078700040F3F58095ED08AB51EC1A0BDFF8DC23F3 +:10788000DFF8DC33EAF7DCFB02D29FEDC8AA0EE09A +:10789000EAF7BEFB09D84FF06632DFF8C833EAF7E3 +:1078A000CFFB02D29FED9EAA01E09FED9EAAA87891 +:1078B000411E00D51431001F00D51430DFF8987335 +:1078C00007EB810191ED0A0A07EB8000D0ED0A0A6F +:1078D00030EE600A10EE100AE9F7E0FF21F00041F7 +:1078E000F8F7D0FD00EE100ADFED8F0AB4EE600A63 +:1078F000F1EE10FA10DB1AEE100AE9F7CFFFD5E926 +:107900000A2323F00043EAF79BFB05D214212878D1 +:10791000401E00F00BF90646002E204600F09A802B +:1079200004E037F810100C19A4B2401C1428F8D346 +:107930002046EAF707F9DFF83023DFF83033E9F7BC +:10794000E5FFF8F79FFD08EE100A18EE900AE9F738 +:10795000A5FFDFF81C23DFF81C33E9F7D7FFF8F7A2 +:1079600091FD00EE100A28EE008A2878411E00D50D +:1079700014316A78801A00D5143005EB810191ED3D +:107980000C0A05EB8000D0ED0C0A30EE600AFFEE29 +:10799000000A20EE200A10EE100AE9F77FFFB64A2F +:1079A000B64BEAF711FAF8F76DFD08EE900AF4EE1F +:1079B000488AF1EE10FA02DBDFED588A11E028EE7A +:1079C000080A08EEE80A10EE100AE9F767FF41EC32 +:1079D000100B01F0EDFA51EC100BF8F753FD09EE26 +:1079E000900A2879954988EEA90A01EB800282ED78 +:1079F000000A401C2871C0B2142801D1002028714F +:107A00006879142801D2401C6871002006E001EB5F +:107A1000800292ED000A39EE009A401C6A79134602 +:107A200080B29842F3D3B2EE040A29EE000A00EEC7 +:107A3000902AF8EE600A80EE200A10EE100AE9F7AC +:107A40002DFF864A8E4BE9F761FFF8F71BFD08EE24 +:107A5000100A01E028716871B0EE480A01E09FED5C +:107A60002F0A01B0BDEC068BF0BD000030B52DED46 +:107A7000048B9FED2A8A9FED290ADFED280ADFEDAE +:107A8000278A00231AE0142C00DB143C01EE103A84 +:107A9000B8EEC11A31EE088A50F8244001EE904A3F +:107AA00030EE210A41EE210A13FB03F401EE104AE5 +:107AB000B8EEC11A71EE288A5B1CDBB20C46A342F9 +:107AC00005DA141B1C19641CDDD51434DEE701EE45 +:107AD000101AB8EE419A69EE200A48EE400A10EEFC +:107AE000900AE9F7DBFE04460D4629EE280A08EE67 +:107AF000480A10EE100AE9F7D1FE624A624BEAF733 +:107B00002FF802460B4620462946EAF75DF9F8F7BA +:107B1000B9FC00EE100ABDEC048B30BD0000000083 +:107B2000A69B443BCDCCCC3D90C2F53CF0B50024A7 +:107B3000002801D5143002E0142800DB1438254653 +:107B40002646224609E0DFED190AB4EE600AF1EE9E +:107B500010FA01DB761CB6B2521C431AD2B2174699 +:107B6000A1F1010C674523DAFB185B1C01D5143326 +:107B700002E0142B00DB143B5F1C142F00DB143FCE +:107B8000DFF8B4C00CEB870797ED0C0A0CEB83030E +:107B9000D3ED0C0A30EE600ADFED240AB4EE600A81 +:107BA000F1EE10FACFD56D1CADB2D5E76F12033BE5 +:107BB000591C00D51431DFF880C00CEB800090ED2B +:107BC0000C0A0CEB8100D0ED0C0A30EE600A10EECE +:107BD000100AE9F763FE21F00041F8F753FC00EECC +:107BE000100A0B2E0FD3DFED120AB4EE600AF1EE8D +:107BF00010FA08DBDFED0F0AB4EE600AF1EE10FABE +:107C000001D5012410E00B2D0ED3DFED090AB4EEEF +:107C1000600AF1EE10FA07DBDFED060AB4EE600A47 +:107C2000F1EE10FA00D502242046F0BD6E1203BB1F +:107C300090C2753DCDCCCC3E3071002060790020E3 +:107C40008836002010790020D473002000407E4444 +:107C50009B9999999999C93FAC7300209A999999E0 +:107C60009999A93F6666E63FFCA9F1D24D62503F63 +:107C70000492B06F2711913FB81E85EB51B8BE3FFB +:107C80009999B93F8DEDB5A0F7C6B03E0FB480B558 +:107C9000192200210846ECF75BFE022801D10220E0 +:107CA00005E0DBF71FFB2F4800210170012002BC1B +:107CB0005DF814FB80B5192200210120ECF748FE85 +:107CC000022801D1022002BD2648002101700120B6 +:107CD00002BD70B58CB02448446BA069E1684518BA +:107CE00000A8ECF79BFE1F4E3078012801D1002040 +:107CF0000BE000A890EC030ADBF700FB012803D19E +:107D000001202870A077307001200CB070BD80B5C4 +:107D1000ECF71CFE154908601549C0F8F81300F58A +:107D20007E7014494160144981600FF21101C160F5 +:107D30000FF24D010161012002BD00000B480068F7 +:107D400090F8E903002801D10020704705E080B5D4 +:107D50000020DBF7F6FD012002BD084890F9000085 +:107D60007047000062FE00200000002030FE00206E +:107D70008D7C0208B57C0208D37C020861FE0020DD +:107D800018B430220B7812FB030301241C700B780B +:107D900012FB03035C700B7812FB030319249C7025 +:107DA0000B7812FB03000022C2700878401C087098 +:107DB00011BCCCE710B5DFF800450020206001F0D1 +:107DC000DAF8606105206060012010BDDFF8E8048A +:107DD000002101600120704770B52DED048B84B047 +:107DE0000C4600210391029101910091DFF8C854E3 +:107DF000012C07D1296090ED008AD0ED018A90ED29 +:107E0000029A7BE069684A1E68692B6893421DDA12 +:107E10001E22591C09B200F0CFFA85ED020A1E227B +:107E20002868411C09B2686900F0E4FA85ED040A8B +:107E30001E222868411C09B2686900F0F9FA85ED34 +:107E4000030A2868401C00EE100A49E018D11E22DF +:107E500009B200F0B1FA85ED020A1E22696809B282 +:107E6000686900F0C7FA85ED040A1E22696809B244 +:107E7000686900F0DDFA85ED030A95ED010A2FE04F +:107E80001E2209B200F088FA06461E220021686907 +:107E900000F082FA95ED020AD6ED000A30EE600A93 +:107EA000D0ED000A30EE200A85ED020A95ED040AB5 +:107EB000D6ED010A30EE600AD0ED010A30EE200A5C +:107EC00085ED040A95ED030AD6ED020A30EE600A4C +:107ED000D0ED020A30EE200A85ED030A95ED010A85 +:107EE000B8EEC00AD5ED020A80EE808AD5ED040A0C +:107EF000C0EE808AD5ED030A80EE809AB0EE491A72 +:107F0000F0EE680AB0EE480A01A903A800F022F8D2 +:107F10000022B0EE491AF0EE680AB0EE480A00A955 +:107F200002A800F0BEF82868401C286001F017F88D +:107F3000039981610199C1610299016200994162CD +:107F4000022C02D0012101F012F8012004B0BDEC96 +:107F5000048B70BD30B52DED068B81B004460D4607 +:107F6000B0EE40AAF0EE608AB0EE418AB5EE408AEB +:107F7000F1EE10FA40D5F1EE480A00F021FB9FED3A +:107F8000C19B10EE100AE9F789FC53EC192BE9F7B5 +:107F9000BDFCF8F777FA00EE100A00F02DF9BDEEFF +:107FA000C00A84ED000A2AEE0A0A08EE080A10EE5A +:107FB000100AE9F773FC41EC100B00F0F9FF51ECEB +:107FC000100BF8F75FFA00EE900AB1EE680A00F0C5 +:107FD000F7FA10EE100AE9F761FC53EC192BE9F7F8 +:107FE00095FCF8F74FFA00EE100A00F005F9BDEE27 +:107FF000C00A85ED000A50E0B5EE408AF1EE10FAB5 +:108000004BDDF0EE480AB1EE4A0A00F0D9FA9FEDD6 +:108010009D9B10EE100AE9F741FC53EC192BE9F790 +:1080200075FC0022994BE9F79BFDF8F72BFA00EE5F +:10803000100A00F0E1F8BDEEC00A84ED000A2AEE55 +:108040000A0A08EE080A10EE100AE9F727FC41ECCC +:10805000100B00F0ADFF51EC100BF8F713FA00EE27 +:10806000900AB1EE680A00F0ABFA10EE100AE9F7D8 +:1080700015FC53EC192BE9F749FC0022844BE9F776 +:108080006FFDF8F7FFF900EE100A00F0B5F8B1EE59 +:10809000400ABDEEC00A85ED000A01B0BDEC068BBA +:1080A00030BD30B52DED048B81B004460D46F0EEA9 +:1080B000408AB0EE609AB0EE418AB5EE409AF1EE99 +:1080C00010FA18D5F1EE490A00F07AFA10EE100A0B +:1080D000E9F7E4FB6F4A794BE9F718FCF8F7D2F9B6 +:1080E00000EE100A00F088F8B1EE400ABDEEC00ABA +:1080F00084ED000A20E0B5EE409AF1EE10FA1BDBA9 +:10810000B1EE680A00F05CFA10EE100AE9F7C6FB5F +:10811000604A6A4BE9F7FAFB00225D4BE9F720FD64 +:10812000F8F7B0F900EE100A00F066F8B1EE400A78 +:10813000BDEEC00A84ED000AB5EE408AF1EE10FAF9 +:1081400028D528EEA80A09EE090A10EE100AE9F768 +:10815000A5FB41EC100B00F02BFF51EC100BF8F7D6 +:1081600091F900EE900AB0EE480A00F029FA10EEFC +:10817000100AE9F793FB474A504BE9F7C7FBF8F7BA +:1081800081F900EE100A00F037F8BDEEC00A85ED67 +:10819000000A2CE0B5EE408AF1EE10FA27DD28EE59 +:1081A000A80A09EE090A10EE100AE9F777FB41EC7C +:1081B000100B00F0FDFE51EC100BF8F763F900EE28 +:1081C000900AB0EE480A00F0FBF910EE100AE9F749 +:1081D00065FB304A394BE9F799FBF8F753F900EEA4 +:1081E000100A00F009F8BDEEC00A85ED000A01B0E2 +:1081F000BDEC048B30BD0000DFED270A9FED271A90 +:10820000B4EE410AF1EE10FA09DBB4EE600AF1EEC9 +:1082100010FA04D5DFED220A30EE200A7047B4EEE2 +:10822000600AF1EE10FA0BDBDFED1E0AB4EE600A15 +:10823000F1EE10FA04D5DFED1C0A30EE200A70478B +:10824000DFED1A0ADFED1A1AB4EE610AF1EE10FA48 +:1082500009DBB4EE600AF1EE10FA04D5DFED150A81 +:1082600030EE200A7047B4EE600AF1EE10FA08DB37 +:10827000DFED130AB4EE600AF1EE10FA01D530EE2C +:10828000010A7047E6C1631ADCA54C4000806640D5 +:10829000008066C0E6C1631AFFFF06C4000034C454 +:1082A00000003444FFFF33C30000B443010007441F +:1082B000010034430000B4C3E4FC0020DCA54C40C2 +:1082C00001003444E54A12689FEDBC0A038800EBC4 +:1082D0004303B3F9043000EE903AF8EEE00A92ED71 +:1082E000001AB8EE411A70EEC10A92ED031AB8EE08 +:1082F000411AC0EE810A60EE800AC1ED000AD2ED9B +:10830000010AF8EE600A038800EB4303B3F9063074 +:1083100001EE103AB8EEC11A70EEC10A92ED041ADD +:10832000B8EE411AC0EE810A60EE800AC1ED010A82 +:10833000D2ED020AF8EE600A038800EB4300B0F9C0 +:10834000080001EE100AB8EEC11A70EEC10A92EDF3 +:10835000051AB8EE411AC0EE810A20EE800A81EDBE +:10836000020A012070470388934201D3002303804F +:1083700003885B1C03809BB2934201D300220280DE +:10838000028802EB420300EB8300001D91EC030A1C +:1083900080EC030A01207047B0F90030591A09B285 +:1083A000002901D511FA82F109B201EB410200EB7B +:1083B0008200001D7047000030B49FEDB80A002312 +:1083C000B0F9004010E024B2002C08D404EB4405BE +:1083D00000EB8505D5ED010A30EE200A641E24B2BB +:1083E000002C00D5541E5B1C1BB28B42EBDB30BC57 +:1083F0007047000030B49FEDA90A0023B0F9004097 +:1084000010E024B2002C08D404EB440500EB8505F1 +:10841000D5ED020A30EE200A641E24B2002C00D5ED +:10842000541E5B1C1BB28B42EBDB30BC7047000060 +:1084300030B49FED9A0A0023B0F9004010E024B256 +:10844000002C08D404EB440500EB8505D5ED030AA8 +:1084500030EE200A641E24B2002C00D5541E5B1C92 +:108460001BB28B42EBDB30BC7047000010B52DED2A +:10847000068BADF2D47D00A80FF2282140F2D47211 +:10848000ECF72EFC9FED768B9FED779B00ACB5EE65 +:10849000400AF1EE10FA48DB9FED75ABDFED760A8E +:1084A000B4EE600AF1EE10FA1AD510EE100AE9F7F0 +:1084B000F5F953EC192BE9F729FA53EC182BE9F7E6 +:1084C0004FFBE9F701FB54F82000E9F731FB53ECCF +:1084D0001A2BE9F71BFAF7F7D5FF00EE100A68E050 +:1084E000F7EE000A80EE800A10EE100AE9F7D6F9DE +:1084F00053EC192BE9F70AFA53EC182BE9F730FB88 +:10850000E9F7E2FA54F82000E9F712FB53EC1A2BD2 +:10851000E9F7FCF902460B465B485849E9F794FB3A +:10852000F7F7B0FF00EE100A43E0FFEE000AB4EEEA +:10853000600AF1EE10FA1CDBB1EE400A10EE100AF0 +:10854000E9F7ACF953EC192BE9F7E0F953EC182BE8 +:10855000E9F706FBE9F7B8FA54F82000E9F7E8FA7A +:108560000022474BE9F7D2F9F7F78CFF00EE100A2B +:108570001FE080EE800A10EE100AE9F78FF953EC45 +:10858000192BE9F7C3F953EC182BE9F7E9FAE9F7E6 +:108590009BFA54F82000E9F7CBFA0022394BE9F7AF +:1085A000B5F9394A3E4BE9F7DBFAF7F76BFF00EE16 +:1085B000100A0DF2D47DBDEC068B10BDC3F51C4135 +:1085C00080B5B0EE401AF5EE400AF1EE10FA04DD87 +:1085D00081EE200ABDE8014048E7F5EE400AF1EEE1 +:1085E00010FA24D581EE200AB5EE401AF1EE10FA09 +:1085F0000EDBFFF73BFF10EE100AE9F74FF9224AB6 +:10860000224BE9F7ADFAF7F73DFF00EE100A01BD86 +:10861000FFF72CFF10EE100AE9F740F91A4A1C4B3D +:10862000E9F79EFAF7F72EFF00EE100A01BDB5EE4E +:10863000401AF1EE10FA02DD9FED160A01BDB5EE0B +:10864000401AF1EE10FA02D59FED130A01BD9FED1D +:10865000130A01BD014908607047000040FE002078 +:10866000000000000000E03F0000000000407F40EC +:10867000000000000000503F0100803FFB21F93F57 +:10868000000050BF0000503F182D4454FB2109400A +:10869000FB2109C0DB0FC93FDB0FC9BF0000000091 +:1086A000FB21F9BF000000000200000004000000F0 +:1086B00006000000080000000A0000000C00000096 +:1086C0000E00000010000000120000001400000066 +:1086D00017000000190000001B0000001D00000032 +:1086E0001F00000021000000230000002500000002 +:1086F00027000000290000002B0000002D000000D2 +:108700002F000000310000003300000035000000A1 +:1087100037000000390000003B0000003D00000071 +:108720003F00000041000000430000004600000040 +:10873000480000004A0000004C0000004E0000000D +:1087400050000000520000005400000056000000DD +:10875000580000005A0000005C0000005E000000AD +:10876000600000006200000064000000660000007D +:10877000680000006A0000006C0000006E0000004D +:10878000700000007200000074000000760000001D +:10879000780000007A0000007C0000007E000000ED +:1087A00080000000820000008400000086000000BD +:1087B000880000008A0000008C0000008E0000008D +:1087C000900000009200000094000000960000005D +:1087D000980000009A0000009C0000009E0000002D +:1087E000A0000000A2000000A4000000A6000000FD +:1087F000A8000000AA000000AC000000AE000000CD +:10880000B0000000B2000000B4000000B60000009C +:10881000B8000000BA000000BC000000BE0000006C +:10882000C0000000C2000000C4000000C60000003C +:10883000C8000000CA000000CC000000CE0000000C +:10884000D0000000D2000000D4000000D6000000DC +:10885000D8000000DA000000DC000000DE000000AC +:10886000E0000000E2000000E4000000E60000007C +:10887000E7000000E9000000EB000000ED00000050 +:10888000EF000000F1000000F3000000F500000020 +:10889000F7000000F9000000FB000000FD000000F0 +:1088A000FF000000010100000301000004010000BE +:1088B00006010000080100000A0100000C01000090 +:1088C0000E01000010010000120100001401000060 +:1088D0001601000018010000190100001B01000032 +:1088E0001D0100001F010000210100002301000004 +:1088F0002501000027010000290100002A010000D5 +:108900002C0100002E0100003001000032010000A7 +:108910003401000036010000380100003901000078 +:108920003B0100003D0100003F010000410100004B +:10893000430100004501000046010000480100001D +:108940004A0100004C0100004E01000050010000EF +:1089500051010000530100005501000057010000C3 +:10896000590100005B0100005C0100005E01000095 +:108970006001000062010000640100006501000068 +:1089800067010000690100006B0100006D0100003B +:108990006E0100007001000072010000740100000F +:1089A0007601000077010000790100007B010000E2 +:1089B0007D0100007F0100008001000082010000B5 +:1089C0008401000086010000870100008901000089 +:1089D0008B0100008D0100008E010000900100005D +:1089E0009201000094010000950100009701000031 +:1089F000990100009B0100009C0100009E01000005 +:108A0000A0010000A2010000A3010000A5010000D8 +:108A1000A7010000A8010000AA010000AC010000AD +:108A2000AE010000AF010000B1010000B301000081 +:108A3000B4010000B6010000B8010000B901000057 +:108A4000BB010000BD010000BF010000C00100002B +:108A5000C2010000C4010000C5010000C701000000 +:108A6000C9010000CA010000CC010000CE010000D5 +:108A7000CF010000D1010000D3010000D4010000AB +:108A8000D6010000D7010000D9010000DB01000081 +:108A9000DC010000DE010000E0010000E101000057 +:108AA000E3010000E5010000E6010000E80100002C +:108AB000E9010000EB010000ED010000EE01000003 +:108AC000F0010000F1010000F3010000F5010000D9 +:108AD000F6010000F8010000F9010000FB010000B0 +:108AE000FD010000FE010000000200000102000084 +:108AF0000302000004020000060200000802000059 +:108B0000090200000B0200000C0200000E0200002F +:108B10000F02000011020000130200001402000006 +:108B20001602000017020000190200001A020000DD +:108B30001C0200001D0200001F02000020020000B5 +:108B4000220200002302000025020000260200008D +:108B500028020000290200002B0200002C02000065 +:108B60002E0200002F02000031020000320200003D +:108B70003402000035020000370200003802000015 +:108B80003A0200003B0200003D0200003E020000ED +:108B900040020000410200004302000044020000C5 +:108BA0004602000047020000480200004A0200009E +:108BB0004B0200004D0200004E0200005002000077 +:108BC0005102000053020000540200005502000050 +:108BD00057020000580200005A0200005B02000029 +:108BE0005C0200005E0200005F0200006102000003 +:108BF00062020000640200006502000066020000DC +:108C000068020000690200006A0200006C020000B5 +:108C10006D0200006F02000070020000710200008F +:108C20007302000074020000750200007702000069 +:108C3000780200007A0200007B0200007C02000043 +:108C40007E0200007F02000080020000820200001D +:108C500083020000840200008602000087020000F8 +:108C6000880200008A0200008B0200008C020000D3 +:108C70008E0200008F0200009002000092020000AD +:108C80009302000094020000960200009702000088 +:108C900098020000990200009B0200009C02000064 +:108CA0009D0200009F020000A0020000A10200003F +:108CB000A2020000A4020000A5020000A60200001B +:108CC000A8020000A9020000AA020000AB020000F6 +:108CD000AD020000AE020000AF020000B0020000D2 +:108CE000B2020000B3020000B4020000B5020000AE +:108CF000B7020000B8020000B9020000BA0200008A +:108D0000BC020000BD020000BE020000BF02000065 +:108D1000C1020000C2020000C3020000C402000041 +:108D2000C5020000C7020000C8020000C90200001E +:108D3000CA020000CB020000CD020000CE020000FB +:108D4000CF020000D0020000D1020000D3020000D8 +:108D5000D4020000D5020000D6020000D7020000B5 +:108D6000D8020000DA020000DB020000DC02000092 +:108D7000DD020000DE020000E0020000E10200006F +:108D8000E2020000E3020000E4020000E50200004D +:108D9000E6020000E8020000E9020000EA0200002A +:108DA000EB020000EC020000ED020000EE02000009 +:108DB000F0020000F1020000F2020000F3020000E5 +:108DC000F4020000F5020000F6020000F7020000C5 +:108DD000F8020000FA020000FB020000FC020000A2 +:108DE000FD020000FE020000FF0200000003000080 +:108DF000010300000203000003030000050300005C +:108E00000603000007030000080300000903000038 +:108E10000A0300000B0300000C0300000D03000018 +:108E20000E0300000F0300001003000011030000F8 +:108E300013030000140300001503000016030000D4 +:108E40001703000018030000190300001A030000B4 +:108E50001B0300001C0300001D0300001E03000094 +:108E60001F03000020030000210300002203000074 +:108E7000230300002403000010B500F081F800F087 +:108E800099FFFEF797FF454C4422002104F10C00A6 +:108E9000E9F7F3F80A2200212046E9F7EEF80A2262 +:108EA00000213F48E9F7E9F80C22002104F15400C1 +:108EB000E9F7E3F83B4C4FF4B67200212046E9F79E +:108EC000DCF81E20208010BD00F074BF80B500F0DB +:108ED000A5FFBDE80140FEF779BF3148F9F7BEBBF9 +:108EE00010B42F482D491CC81CC10C3800214180EA +:108EF00010BC704710B50446FFF7E4F92088401C09 +:108F00002080B4F9021080B2884200DB2180012069 +:108F100010BD38B5214C256D04F154012046FFF7F2 +:108F2000E9FF1E2204F154011E48FFF71CFA01213B +:108F300004F15400FEF750FFA80705D5002104F105 +:108F4000540000F06DFF04E0012104F1540000F032 +:108F500067FF002104F10C00BDE8344007E012482F +:108F600070470E49CA6822EA0000C860704702686C +:108F70001143016070470B4870470C490860704707 +:108F80000A48006800210160416081604FF48061FF +:108F9000C16001614161012101767047FC770020C9 +:108FA0009C7B0020486D002008780020E87B002092 +:108FB00051EC100B00B500F003F841EC100B00BDB4 +:108FC00040F2FF7C0B0D4DD0634566D230B421EAF0 +:108FD000035141F4801103F2FD3C5FEA5C0C01D3C4 +:108FE00000184941890041EA907180004FF4401413 +:108FF0000023E202D50AB1F5100107D46D081DD295 +:10900000091B641900184941491BF7D56D080AD29C +:109010000919641B00184941491BEFD56D08F7D3A6 +:1090200001E0520817D0C01861419B1AAC410018EA +:109030004941801AA941F4D452080AD0C01AA1416A +:109040009B186C4100184941801AA941E9D4520883 +:10905000F4D15B1C6C4161084FEA330001EB0C5109 +:1090600030BC704750EA0103FBD030B4B1FA81F351 +:1090700011B9B0FA80F41B190B3BB3F120042FBFD8 +:1090800000FA04F19940C3F1200420FA04F438BF37 +:1090900021439840D3F101039DE76345E1D011F5E9 +:1090A000801FDED850EA4101DBD0D94301F022B95C +:1090B000C046C046024A11001820ABBEFBE700BF05 +:1090C0002600020010EE101A10EE902AB0EEC00A30 +:1090D000C80F49005200F0EEE00A28BF0C3011F131 +:1090E000807F38BF12F1807F0CD28A4238BF80F077 +:1090F0000400124214D034BF80EE800A80EE200AB1 +:1091000001F0FEB811F1807F08BF80F0040098BF25 +:1091100012F1807F08D88A4214BF00224FF07E529D +:1091200000EE102A01F0ECB86FF0004100EE101ACA +:109130007047000010EE101A4FF07E5C01EE90CAEE +:10914000C80F31F0004122D000EE101AB1F17E5F5D +:1091500013D871EEC00ADFF838C031EE801A61EE24 +:10916000200AF1EEE00A614586BF80F0040080EE3F +:10917000800A80EE200A01F0C3B8490011F1807F17 +:109180009CBF6FF0004100EE101A41F2B3807047AF +:10919000F404353F40EA010C5FEA4C0C07D08842EA +:1091A00005D14FEA400C1CF1807F98BF8042704788 +:1091B00000EE100A00EE901A20EE200A10EE100ABF +:1091C0007047000030B4C26890F82A304B8402F235 +:1091D00022035D8AED05ED0D0D844D8C112D07D117 +:1091E0005D8AC5F3C0251DB19C88CC84DC8802E073 +:1091F0005D88CD84548C0C85848C4C854469A58A0B +:109200000DB9258CC584C08C8885908E00F4406093 +:10921000B0F5806F07D154685B8B088D34F813303C +:1092200090FBF3F005E02069E368834234BFC01A85 +:109230000020C885106D086430BC704738B50446FE +:109240000D46FFF7BFFF2846C046C0460020688491 +:10925000A8840021206981870421C1872046BDE8B8 +:10926000324001F0DCB900002DE9F041074682B040 +:109270003E693068018BBA6B4C08F1680025914259 +:1092800031D1B38DB1FBF3F203FB12174289716A3E +:10929000BFB27A43DF193F1B97FBF3FC03FB1C7340 +:1092A00001EB420227001AD0B0F80AC09BB20CFBB7 +:1092B00003FC002701EB4C0C964604E03EF8028BC1 +:1092C0002CF8028B7F1CB0F80A804745F6DB5B1C4C +:1092D000B78D9BB2BB4228BF0023641EE4D1B58783 +:1092E0000420F0878FE010198142C0F08C8038464E +:1092F00001F0BCF8F968B1F846200146384601F0A3 +:10930000D6F8788D010A19BFA0F5807078853046AF +:1093100000F0A6FB388D010A042974D8DFE801F0BB +:10932000030A353F6800C1076DD54FF6FE7108404E +:10933000388568E0C0F30010C8B9F88DF1688AB2CA +:1093400003199A42BCBF081B80B2091AF160B96BBD +:1093500011B1081A001BB8636FF0020138698187E8 +:109360000821C18797F8280040F404700CE097F8B2 +:109370002A0078856FF00201386981870821C1874A +:1093800097F8280040F400703885388D40F00100CF +:1093900038850125B969304600F0A8FB33E04FF667 +:1093A000FE71084038850125F868808EC0F30031D1 +:1093B00031B1788D00F47F4040F05400788522E090 +:1093C00097F82A10132918BF14291CD0C0F3C02005 +:1093D00048B9ADF8000000A93846D7F74FFD798DA0 +:1093E00060F30701798538467968FFF7EBFE0AE0FC +:1093F000788D00F47F4040F0110078853846796818 +:10940000FFF7E0FE01252846BDE8F68190F82A1016 +:1094100011291CBF1429132908D0542902D14068EE +:10942000418403E0C068808EC00501D001207047F0 +:1094300000207047F8B5426C6A4D02F6F80402F657 +:10944000B00262616060256017262B88E6854FF6C2 +:10945000EF766D8855834FF67B7C258D2E402685D3 +:109460000CEA06060D686F883F06FF0F46EA87067E +:1094700026850789032F0CD1898EC1F3802109B17C +:10948000002105E0C6F38001002914BF022101215B +:1094900001810189D182C189B1F5C87F0EBF698B75 +:1094A00001EB630191FBF3F19183818939B14FF4B1 +:1094B0007A755E0805FB0161B1FBF3F100E0A98B51 +:1094C0001183218DC1F38001002901BF4189002949 +:1094D00003214181408959084FF47A7505FB00103A +:1094E000B0FBF3F0A08501F1F00090FBF3F01081E8 +:1094F00001F6C41090FBF3F05081204601F08FF884 +:109500000020A0872046F2BD2DE9FC410446656C91 +:1095100015B95020BDE8F681606800281CBF20689E +:10952000002805D1532060842046FDF718FE56E040 +:1095300000206084A084E086A08A08B9032002E0AD +:10954000062801DB0520A082E08910B94FF4C8701D +:1095500008E0B0F5617FC8BF4FF4617002DC642899 +:1095600001DA6420E0812046D9F78CFD060005D0A1 +:109570002046D7F7A1FF5FEA000803D12046C04686 +:10958000C0462CE0308AB8F83C10884205D05520FF +:1095900060842046C046C04621E01349204600F0C2 +:1095A000B3FB074641462046FFF744FF4169CA8A9C +:1095B000022A04BF0122A1F84420C0F80C800761F0 +:1095C000866005F61E0181614FF480533968498930 +:1095D00001EB4102510082698B527969C161608C53 +:1095E000BDE8F681B03F0308643F0308418A828AE0 +:1095F000891A09B2002902D5B0F91000091809B278 +:10960000F02901DB0120704700207047418A828ADF +:10961000891A09B2002901D5008A4118084600B20A +:109620007047F8B5044692B2F12A09D2E568444879 +:10963000854205D1B4F91460002E0CD0F02E0AD06A +:1096400040480121016012B211460FF21410E6F7F2 +:1096500064FD0120F2BD1F463B48874205D300F55B +:10966000B85C0CF1700C67450AD3364901220A60D8 +:10967000024619460FF2F000E6F74FFD0120F2BD59 +:1096800012B2002A14D0608A801B00B2002802D5D2 +:10969000B4F91070C01900B2F02801DA0020F2BD50 +:1096A000520005EB460000EB4101184600F04EF871 +:1096B000A08AF030A082B4F9101000B2884201D123 +:1096C0000020A0822068401C20600120F2BD10B55F +:1096D0000446F02A0BD1E068194B984207D1B4F93F +:1096E0001230002B0DD0B4F91230F02B09D01548F0 +:1096F0000121016011460FF28000BDE81040E6F73D +:109700000CBD4FF4F072B4F9123000EB430000F0DE +:109710001DF8608AF0306082B4F91200B4F91010BC +:10972000884201D100206082208BF0302083B4F980 +:10973000101000B2814200DD0146218310BD0000FF +:1097400098AF002094AF002058B3002003E011F838 +:10975000013B00F8013B13465A1E002BF7D170471E +:10976000734D4D3120256400734D4D322025235813 +:109770002C25235800000000734D4D332025640034 +:10978000F0B50446002500262F464FF4C07047F67A +:10979000294312FB03F24FEAE23CE25F31F902EBAC +:1097A000A2EB0C0C0CF30F0C1EFB0CFC4FEA2C4C28 +:1097B00024F802CB6545B8BF6546B445B8BF6646D8 +:1097C000401EE6D14FF480712046D9F787FD7142E3 +:1097D00004F580708D42B8BF0D462DB2012D1FDB00 +:1097E000A0F5806043F6FF7101E06D007F1C2DB293 +:1097F0008D42BCBF3FB20A2FF7DB60210288BA401E +:1098000020F8022B0288BA4020F8022B0288BA40C6 +:1098100020F8022B0288BA4020F8022B491EEDD115 +:1098200038B2F0BD2DE9F24F024682B01069DFF880 +:10983000CC940090D0F81CB0816901910023046899 +:10984000E55E47F6FF7A0DE0DFF8B4148842B8BF52 +:10985000DFF8B0042188691A2BF811006D1C9B1CDD +:109860002DB21BB26088854280F28780E06B30F9B0 +:10987000131000EB430000274088A0EB010C206C84 +:1098800000EB410000F1020EA06B019930F91500C8 +:1098900001EB800000260FFA8CFC00F10408BCF1FB +:1098A000000F13D058F8040B3EF8021BA1FB000177 +:1098B000C00BACF1010C40EA414086190FFA8CFC58 +:1098C000BCF1000FEED101E076087F1CE089E16A6F +:1098D00001EB800151F8041C8E4228BF032EF3D205 +:1098E000022E24D3002100B2D4F82CC0A0EB010E2C +:1098F000BEF1020F0ADB00EB010E4FEA6E0E5CF8C0 +:109900002EC0664534BF70467146EDE75CF821E035 +:109910005CF820C0A6EB0E06ACEB0E0C02E076085D +:109920004FEA5C0C4E45FAD2BCF1000F05D12088FD +:10993000281A00212BF8101090E7D4F828E03EF9FF +:1099400011103EF91000401A7043B0FBFCF000FA11 +:1099500081F0BDF80810C91B09B2676C002951BF1E +:1099600037F91110494237F91110494209B2401A2A +:109970005045FFF669AF50466CE7108DC0F34000CC +:1099800028B35069009BC1685B688B4226BF591A97 +:1099900089B2002101F11003DC1003EB14742411CF +:1099A000A3EB04130429AEBF0421491C89B2D48C53 +:1099B000166A4D1E05FB04644D0814FA85F4B4FBC9 +:1099C000F1F1D1849BB200EB4300D18C018403B050 +:1099D000BDE8F08F2DE9F04F0168B1F90230B1F91F +:1099E00000404A6A1B1B8468858DB4FBF5F805FBB3 +:1099F00018444D8924B26C43456A05EB44041BB2FC +:109A00000027BF4D47F6FF7806E0AC45B8BFDFF84A +:109A1000F4C224F802CB7F1C3FB2B1F80AE0BC4686 +:109A2000F4451BDAC6694FF0000E012B09DB99469D +:109A300036F902AB32F902BB1AFB0BEEB9F10109A0 +:109A4000F6D10E6B36F91C604FEA2E2E06FB0EF691 +:109A50004FEA262CC445D8DBC446DAE7BDE8F08FD0 +:109A60002DE9F043828DC368B0F93E4001684D8B0B +:109A7000D3181B1BB3FBF2F402FB14324B8912B256 +:109A80005A43436A03EB4202B0F93C301C46A542FC +:109A9000B8BF2CB204DB002C48BF2CB25B1C838700 +:109AA000631C1BB24FF0000C5C1E964D944E47F6A3 +:109AB000FF7808E0B645B8BFAE4627F81CE00CF1C9 +:109AC00001070FFA87FCB1F80AE0F4450CDA076ADF +:109AD00032F9029B37F91CE004FB0E9E9EFBF3FE5D +:109AE000C645E7DBC646E8E7BDE8F0832DE9F34F5E +:109AF00085B0006805990190B0F90A00019A0090BC +:109B00000598B2F91820808DC968821A5118491C2D +:109B1000B1FBF0F200FB121000B20390002100989C +:109B20000128C0F2E88000A8425E0598406ADDF88E +:109B300018B0DFF8D091029003460598D0F8208045 +:109B40000398401C00B20490019846890398029F34 +:109B5000DDF810E006FB001007EB4007B7F9000046 +:109B6000C5100598808D9EFBF0F400FB14E424B230 +:109B7000002C0CBF1F4607EB4607641C0FFA84FC41 +:109B80009CFBF0F4B7F900E000FB14C424B205EB31 +:109B9000EE05002C0CBF9C4607EB460CBCF9007090 +:109BA000641C05EB671E24B294FBF0F53F1100FB2B +:109BB00015447F4224B2002C0CBF9C460CEB460C93 +:109BC000BCF90050641CAEEBE50EA7EB651724B2A0 +:109BD00094FBF0F500FB15452DB2002D0CBF9C4603 +:109BE0000CEB460CBCF900404FEA241A0AEB8A0A37 +:109BF000AEEB0A0EB8F900A06D1CA4EB0A042DB25E +:109C000095FBF0FA00FB1A5564112DB2002D0CBF24 +:109C10009C460CEB460CBCF900A06D1CAEEBEA0EAA +:109C200007EB6A172DB295FBF0FA00FB1A552DB21F +:109C3000002D0CBF9C460CEB460CBCF900A06D1C23 +:109C40000EEB6A1E07EB2A172DB295FBF0FA00FB0C +:109C50001A552DB2002D0CBF9C460CEB460CBCF9DE +:109C600000A06D1C0EEBEA0E2DB295FBF0FA00FB86 +:109C70001A5000B200280CBF9C460CEB460CFE01AB +:109C80000A2796FBF7F6BCF90070E0010EEBE70738 +:109C9000FF01642497FBF4F7B0F5004FA8BF47F627 +:109CA000FF7002DA4845B8BF4846B6F5004FA8BF76 +:109CB00047F6FF7602DA4E45B8BF4E46B7F5004F7D +:109CC000A8BF47F6FF7702DA4F45B8BF4F462BF8DB +:109CD000020B491C069820F8126008F1020800984F +:109CE000069E801800B226F810709B1C0098521C2B +:109CF0008142FFF629AF07B0BDE8F08F01001000E8 +:109D00000280FFFF0180FFFF426C02F670000160DD +:109D1000002181870421C18702F60401016202F259 +:109D2000D071C16102F574714161816102F5F87110 +:109D300081621321818542627047F8B50446002094 +:109D4000256968876869B5F91020B0F8DE112982A5 +:109D50002968096AFFF714FDE8866969084600F07A +:109D600079FCE98E081A4000E88600222968A86973 +:109D7000B1F908100023012910DB0646B6F902707C +:109D800036F904CB1CFB0CFC17FB07C712B240F8DA +:109D900022709B1C521C1BB28B42EFDBB5F93610B4 +:109DA0002046FFF73FFD2846FFF714FEA868401C39 +:109DB000A860F1BD10B5DFF82C45FFF7DCF8606650 +:109DC0000020024603E004EB8001CA62401C09281F +:109DD000F9DB10462066E065FFF7C1F8A0664FF496 +:109DE000FA7020606060DFF80005A0609FED0A0A4D +:109DF00084ED030A84ED040A84ED050AB5EE000A39 +:109E000084ED060A84ED070ADFF8E00420620720EB +:109E10006062A06210BD00009A99193F704700006F +:109E2000F0B52DED048B87B00C469FED438ADFF82B +:109E3000B46400207065B065306E401C3066DFF899 +:109E4000B054012C02D1002068672867F06D0A2801 +:109E500044DA1E220021706EFEF79EFAC5F88C00CF +:109E60001E220121706EFEF797FAF16D06EB81025A +:109E7000336E03EB8307BB00D36201292CDBD5F8DB +:109E80008C3093ED000AD0ED000A30EE600A8DEDC3 +:109E9000030A93ED010AD0ED010A30EE600A03AF28 +:109EA00087ED010AD3ED020A90ED021A70EEC10AA5 +:109EB000C7ED020A05EB81009DED031ADDED031AE3 +:109EC00021EE211A00EE001A00EEA01A80ED051A0C +:109ED000D36A926A9A1A8263481CF065316E0A2925 +:109EE00002DA0320C5F88800F06D0A28C0F23E812E +:109EF000401EF065706E0A2920D11E220A21FEF74D +:109F00005BFA85ED030A1E220A21706EFEF772FAD3 +:109F100085ED040A1E220A21706EFEF789FA85ED8E +:109F2000050A0020092844DA05EB800191ED060AB4 +:109F300038EE008A401CF5E7000000001E220A21CE +:109F4000FEF72AFAD5F88C1095ED030AD0ED000A39 +:109F500030EE600AD1ED000A30EE200A85ED030AEA +:109F600095ED040AD0ED010A30EE600AD1ED010A48 +:109F700030EE200A85ED040A95ED050AD0ED020ABF +:109F800030EE600AD1ED020A30EE200A85ED050AB6 +:109F9000F06D05EB800090ED050AD0ED040A30EE7F +:109FA000200AD0ED030A30EE200AF0EE080A20EE77 +:109FB000208AB2EE040AD5ED030AC0EE800ACDED88 +:109FC000000AD5ED040AC0EE808A00A8C0ED018A1F +:109FD000D5ED050A80EE809A80ED029A306E0A284F +:109FE00005D100982860C5ED018A85ED029A002709 +:109FF0000FE01E22C7F1090109B2706EFEF7CCF91D +:10A0000095ED021AD5ED010A95ED000A00F0EFF882 +:10A010007F1C0A2FEDDBF06A716A726D914249DA9A +:10A02000A96F002908D128660121A9670099296034 +:10A03000C5ED018A85ED029AB16AB26D91420CDAE2 +:10A04000E96F00290BD168660121E9670099296051 +:10A05000C5ED018A85ED029A01E00021E967296ECC +:10A06000411A296732686B6EC31A9A420CD2EB6FA1 +:10A07000012B09D10020C5F88000C5F8840068676D +:10A080000120C5F8880060E08A420CD2A96F01293E +:10A0900009D10020C5F88000C5F884006867022057 +:10A0A000C5F8880051E0A96E401A68670320C5F81A +:10A0B00088004AE000992960C5ED018A85ED029A81 +:10A0C0000021A967E9672967D5F88010002903D125 +:10A0D000A8660121C5F88010A96E411A69679FED35 +:10A0E0007F0A28EE000AB5EE400AF1EE10FA03DC12 +:10A0F0009FED7B0A28EE000AD6ED020AB3EE041AA1 +:10A1000060EE810AF4EE400AF1EE10FA08D5D5F8B7 +:10A110008410002907D1E8660121C5F8841002E007 +:10A120000021C5F884107168A1F5FA71EA6E801AF1 +:10A13000814207D2D5F88400012803D10420C5F854 +:10A14000880002E00320C5F8880000200CE006EB40 +:10A1500080010A6BCA62082805DA05EB8001CA692A +:10A160008A610A6CCA63401C0928F0DBD5F88800B4 +:10A17000012806D037D303281CD00ED3042826D0BC +:10A1800031E0B06E0121C162296F01630221416398 +:10A19000002C28D1FEF7EBFE25E0B06E0121C16254 +:10A1A000296F016304214163002C1CD10221FEF7B9 +:10A1B000DEFE18E0B06E0121C162696F0163082103 +:10A1C0004163002C0FD10221FEF7D1FE0BE0B06EEF +:10A1D0000121C162696F016310214163002C02D12A +:10A1E0000221FEF7C4FE07B0BDEC048BF0BD83B0C6 +:10A1F000D0ED001A31EEC00A8DED000A90ED010A93 +:10A2000030EE600A00A981ED010AD0ED020A70EE7D +:10A21000C10AC1ED020A9DED001AB5EE401AF1EE39 +:10A2200010FA03D5B1EE411A8DED001AB5EE400AD1 +:10A23000F1EE10FA03D5B1EE400A81ED010AF5EE18 +:10A24000400AF1EE10FA03D5B1EE600A81ED020A80 +:10A2500024489DED000AD0ED030AB4EE600AF1EE49 +:10A2600010FA13D591ED010AD0ED040AB4EE600A9C +:10A27000F1EE10FA0AD591ED020AD0ED050AB4EE1E +:10A28000600AF1EE10FA01D5012200E000229DEDF6 +:10A29000000AD0ED060AB4EE600AF1EE10FA13D50A +:10A2A00091ED010AD0ED070AB4EE600AF1EE10FA62 +:10A2B0000AD591ED020AD0ED080AB4EE600AF1EE7B +:10A2C00010FA01D5012100E00021436DD21842654A +:10A2D000826D8918816503B07047000000007A44E0 +:10A2E00000007AC40CE30020000040413333B33E49 +:10A2F0007CF700201FB502F08BFB212101601FBD00 +:10A300001AA210EE101ADFF860C0F2EC060A6145DE +:10A3100009DB00EE803A70EE800A83EE200A40F0FE +:10A32000020010EE101A21F0004CDCF1665C0BD834 +:10A3300060EE000A20EE203A03EE010A01EEA02AA8 +:10A3400042EE202A80EE220A400810F0020F18BFC9 +:10A35000B1EE400A02EB8002D2ED000A30EE200A94 +:10A3600028BFB1EE400A7047A430893ED7B3DD3F25 +:10A370006AD5033F2B94A93DB82A593F0000803F7E +:10A38000000080BF00000000920A063FDB0FC93FBB +:10A39000920A863FDB0FC93F920A0640DB0F494015 +:10A3A000368D2740F0B443695D88DF880A466C1C0F +:10A3B00005FB072707EB6407B7FBF4F7002147F617 +:10A3C000FF74A742A8BF274603DA264EB742B8BF9C +:10A3D000254FDF801F89BD420BD2072D07DB5F8031 +:10A3E000DD8A35B9058D45F08005058501E06D1CD8 +:10A3F0005D80DD8A15B1012D05D010E0018DC1F31E +:10A40000C01169B910E09E8A9D88022E0CBF2E46AD +:10A4100005F5967645B1DD88B6B2AE4204D201218B +:10A42000058D45F08005058518889F88461C00FB32 +:10A43000072202EB6602B2FBF6F2A242A8BF224656 +:10A4400003DA084CA242B8BF074A9A805A89904260 +:10A4500004D20628AEBF1A80401C1880F0BC084603 +:10A46000704700000280FFFF0180FFFF38B50446FF +:10A470002069818D02688368158B5289406A5B1E52 +:10A48000A3EB5503CB18B3FBF1F501FB153189B2F2 +:10A49000514330F8115029462046FFF783FFA18C25 +:10A4A000A94238BF2946A18400B9E58432BDF0B481 +:10A4B00003695C681B681B8B4569A4EB530605F1B7 +:10A4C0000C031F8937B1022F39D017D3032F6DD05A +:10A4D000F0BC704711B1EE6001209DE0818D002934 +:10A4E00000F09B80B14280F098800421198190F89F +:10A4F000281001F0FE0141F4806154E0E9B1E968FF +:10A50000DA89711A9142C0F08880102E32BF002182 +:10A51000611C01F00F0105EB41014FF6FD72098C42 +:10A52000C184018D11400185E96801630221A9827E +:10A5300090F8281041F4807135E000206CE011B9EA +:10A540005E60032068E05989002966D1818D002969 +:10A5500063D0B14261D20421198190F8281001F032 +:10A56000FE0141F480610185C1F38001002954D1CD +:10A57000C1688A8EC2F3C022002A4ED0828C43F674 +:10A5800099239A4249DBB1F856208B8E62F3080377 +:10A590008B86418D01F47F4141F03301418590F874 +:10A5A000281041F440710185F0BC704799BB2969BE +:10A5B000491E41638ABB9A8952B1046B091B491C2D +:10A5C00089B28A4204D20021198190F828100185AD +:10A5D000A98B2A6912FA81F18E421ED390F82810B5 +:10A5E00041F440710185042119812A690168EB68F1 +:10A5F000D21A8B889A4238BF132105D3828CC9881E +:10A600008A4234BF14210021428D02F47F4211435B +:10A610004185F0BC704702201881F0BC7047416949 +:10A6200000228A8290F82820028500220A61CA60EE +:10A630000A804A80CA808A808284028D42F00202A7 +:10A6400002850022C28410200A84891C401EFBD18E +:10A650007047000038B50D4604460FF25C424FF4D7 +:10A66000807100F07DF80FF2D0324FF480712046F7 +:10A6700000F0B0F900954FF480710FF640230FF60B +:10A680003802204600F002F8082032BD2DE9F14FD3 +:10A69000101D009A151D02EB8102161F0A9A1C1D3F +:10A6A000131D490802F2FE38491E39D0D0F800C007 +:10A6B0002F68D4F800E0D6F80090D5F800A047FB4A +:10A6C0000CFC376827FB0ECC2F6855F804BB47FB02 +:10A6D0000EFE076829FB07EE276849FB17F7D0F83D +:10A6E00000902AFB197750F8049B56F804A94AFBFE +:10A6F00019F954F804AB4FEADC3C23F802CBFF1302 +:10A700002BFB1A9923F8027BC9F1000C4FEAEC37B6 +:10A7100028F80279491E4FEADE3728F80279C5D1B8 +:10A7200001682F68366800682D6847FB01F12768CB +:10A730003C4626FB071146FB14F425FB1040C90BD1 +:10A740001980C01323F8020F00990098B1F9001086 +:10A75000B0F902000B1A401810805380BDE8F18F49 +:10A760002DE9F64F85B0069B069C0093890803915E +:10A770000A46A046894607463B689E101B049B1468 +:10A780006FF30F069BB201EB090A334350F82A60BE +:10A790004FEAA60E3604B6146FF30F0EB6B201EBF5 +:10A7A0000A0C46EA0E0550F82CE093FA15F64FEA2B +:10A7B000AE0BD3FA15F34FEA0E4E50F829504FEA7C +:10A7C000AE4ECEEA0B0E4FEAA50B2D04AD14C5EA32 +:10A7D0000B0595FA1EFE96FA2EF547F8045BD6FA9D +:10A7E0001EFE54F8085B02952E4626FB0EF546FB2E +:10A7F0001EFE4FEA1E4E50F829604FEA0E4E4EEAFA +:10A80000154540F8295009F1010950F82CE04FEAAC +:10A81000AE054FEA0E4E4FEAAE4ECEEA050EB5102B +:10A820003604B614C6EA0506D6FA1EF6A3FA16FED4 +:10A83000E3FA16F5009B1B1D009353F8046D019677 +:10A84000334646FB15F6360C23FB05F3360446EA81 +:10A85000134340F82A3058F80C3B23FB0EF643FB19 +:10A860001EF31B0C1B0443EA164340F82C30521E07 +:10A8700082D104220092039A5EE00E1901EB060ACF +:10A8800050F8245050F82A7095FA17FE01EB0A0C84 +:10A89000D5FA17F550F82C9050F8267097FA19F958 +:10A8A0009EFA29F74FEA670B3F047F146FF30F0BF3 +:10A8B000BFB247EA0B0740F82470DEFA29F9029F7D +:10A8C000DDF808E047FB19F72EFB09FE3F0C50F8B6 +:10A8D00026903F0447EA1E4740F8267050F82C6047 +:10A8E000019FD9FA16F6A5FA26FEE5FA26F5019E8D +:10A8F00026FB05F647FB15F52D0C2D0445EA1646FB +:10A9000040F82A6043FB1EFA4FEA1A4523FB0EF675 +:10A910002D0445EA164640F82C60039E3419059E26 +:10A92000B442AAD3521C4B1E93420ED2009A9204F8 +:10A93000120C0092049A92080492049B052B15D3E2 +:10A9400003914FF0000889080022069B53F8283035 +:10A95000069C0193069B53F83830029308EB48039A +:10A960009B001B59009CA0441446D8E7059C00237B +:10A97000641A2AE003EB910606EB910A50F82320B3 +:10A9800050F82A5092FA15FE0AEB910CD2FA15F5FE +:10A9900050F82C8050F8262092FA18F89EFA28F9E0 +:10A9A00040F82390DEFA28F850F826E040F8268098 +:10A9B000CB1850F82C20DEFA12F6E5FA26F840F80B +:10A9C0002A80A5FA26F840F82C809C42D2D207B003 +:10A9D000BDE8F08F2DE9F0434FEA510C0CF1010175 +:10A9E00000230024054600EB8106ACF1020811E0CB +:10A9F0009C420FD2D5F800E050F823702F6040F849 +:10AA000023E0CF18D6F800E050F82790C6F8009061 +:10AA100040F827E06344D5F804E050F823706F60F5 +:10AA200040F823E0A41C32F8023B08360835A04564 +:10AA3000DED2BDE8F083000040002000600010007E +:10AA4000500030007000080048002800680018001E +:10AA5000580038007800040044002400640014000A +:10AA60005400340074000C004C002C006C001C00DE +:10AA70005C003C007C0002004200220062001200E8 +:10AA80005200320072000A004A002A006A001A00CE +:10AA90005A003A007A0006004600260066001600BA +:10AAA0005600360076000E004E002E006E001E008E +:10AAB0005E003E007E000100FF7F0000F67F240361 +:10AAC000D97F4806A77F6B09627F8C0C0A7FAB0F8A +:10AAD0009D7EC8121E7EE2158A7DF918E47C0C1C4E +:10AAE0002A7C1A1F5D7B24227D7A28258A792728D3 +:10AAF00085781F2B6C77112E4276FC300575DF337D +:10AB0000B673BA3655728D39E370573C5F6F173F95 +:10AB1000CA6DCE41246C7B446E6A1D47A768B44958 +:10AB2000D066404CE964C04EF2623451EC609B53F5 +:10AB3000D75EF655B45C4358825A825A4358B45C87 +:10AB4000F655D75E9B53EC603451F262C04EE96417 +:10AB5000404CD066B449A7681D476E6A7B44246C9C +:10AB6000CE41CA6D173F5F6F573CE3708D39557208 +:10AB7000BA36B673DF330575FC304276112E6C772A +:10AB80001F2B857827288A7928257D7A24225D7BCA +:10AB90001A1F2A7C0C1CE47CF9188A7DE2151E7EA3 +:10ABA000C8129D7EAB0F0A7F8C0C627F6B09A77F5A +:10ABB0004806D97F2403F67F0000FF7FDCFCF67F88 +:10ABC000B8F9D97F95F6A77F74F3627F55F00A7FB5 +:10ABD00038ED9D7E1EEA1E7E07E78A7DF4E3E47C65 +:10ABE000E6E02A7CDCDD5D7BD8DA7D7AD9D78A790C +:10ABF000E1D48578EFD16C7704CF427621CC05750E +:10AC000046C9B67373C65572A9C3E370E9C05F6FD6 +:10AC100032BECA6D85BB246CE3B86E6A4CB6A768B9 +:10AC2000C0B3D06640B1E964CCAEF26265ACEC6012 +:10AC30000AAAD75EBDA7B45C7EA5825A4CA343582E +:10AC400029A1F655149F9B530E9D3451179BC04E5E +:10AC50003099404C5997B44992951D47DC937B44F9 +:10AC60003692CE41A190173F1D8F573CAB8D8D3949 +:10AC70004A8CBA36FB8ADF33BE89FC309488112EA9 +:10AC80007B871F2B7686272883852825A38424226B +:10AC9000D6831A1F1C830C1C7682F918E281E215F8 +:10ACA0006381C812F680AB0F9E808C0C59806B09B3 +:10ACB000278048060A802403008000000A80DCFC0C +:10ACC0002780B8F9598095F69E8074F3F68055F088 +:10ACD000638138EDE2811EEA768207E71C83F4E3A4 +:10ACE000D683E6E0A384DCDD8385D8DA7686D9D7FF +:10ACF0007B87E1D49488EFD1BE8904CFFB8A21CC35 +:10AD00004A8C46C9AB8D73C61D8FA9C3A190E9C0FB +:10AD1000369232BEDC9385BB9295E3B859974CB618 +:10AD20003099C0B3179B40B10E9DCCAE149F65AC5B +:10AD300029A10AAA4CA3BDA77EA57EA5BDA74CA3A9 +:10AD40000AAA29A165AC149FCCAE0E9D40B1179BF9 +:10AD5000C0B330994CB65997E3B8929585BBDC9354 +:10AD600032BE3692E9C0A190A9C31D8F73C6AB8DC8 +:10AD700046C94A8C21CCFB8A04CFBE89EFD1948886 +:10AD8000E1D47B87D9D77686D8DA8385DCDDA384C6 +:10AD9000E6E0D683F4E31C8307E776821EEAE281CD +:10ADA00038ED638155F0F68074F39E8095F65980F6 +:10ADB000B8F92780DCFC0A800000008024030A80A8 +:10ADC000480627806B0959808C0C9E80AB0FF6805B +:10ADD000C8126381E215E281F91876820C1C1C838B +:10ADE0001A1FD6832422A3842825838527287686C4 +:10ADF0001F2B7B87112E9488FC30BE89DF33FB8AA2 +:10AE0000BA364A8C8D39AB8D573C1D8F173FA190B8 +:10AE1000CE4136927B44DC931D479295B4495997B5 +:10AE2000404C3099C04E179B34510E9D9B53149F3C +:10AE3000F65529A143584CA3825A7EA5B45CBDA700 +:10AE4000D75E0AAAEC6065ACF262CCAEE96440B1B0 +:10AE5000D066C0B3A7684CB66E6AE3B8246C85BBF5 +:10AE6000CA6D32BE5F6FE9C0E370A9C3557273C685 +:10AE7000B67346C9057521CC427604CF6C77EFD105 +:10AE80008578E1D48A79D9D77D7AD8DA5D7BDCDD23 +:10AE90002A7CE6E0E47CF4E38A7D07E71E7E1EEA76 +:10AEA0009D7E38ED0A7F55F0627F74F3A77F95F69B +:10AEB000D97FB8F9F67FDCFC004000C0373F01C005 +:10AEC0006E3E05C0A53D0BC0DC3C14C0133C1FC04A +:10AED0004B3B2CC0823A3CC0BA394FC0F23864C0F8 +:10AEE0002A387BC0633795C09C36B1C0D535D0C0F9 +:10AEF0000F35F1C0493415C184333BC1BF3263C142 +:10AF0000FA318EC13631BBC17330EBC1B02F1DC2D7 +:10AF1000EE2E51C22D2E88C26C2DC1C2AC2CFDC2AA +:10AF2000ED2B3BC32E2B7BC3702ABEC3B42903C4B5 +:10AF3000F7284AC43C2893C48227DFC4C9262DC5FC +:10AF400011267EC55925D0C5A32425C6EE237CC66F +:10AF50003A23D5C6872231C7D5218FC72421EEC712 +:10AF6000742050C8C61FB5C8191F1BC96D1E83C9E0 +:10AF7000C31DEEC9191D5BCA721CC9CACB1B3ACBD3 +:10AF8000261BADCB821A21CCE01998CC3F1911CDEC +:10AF9000A0188CCD021808CE661787CECB1607CF27 +:10AFA00032168ACF9B150ED0051594D071141CD182 +:10AFB000DF13A6D14E1331D2BF12BFD231124ED3FE +:10AFC000A611DFD31C1171D4941005D50E109BD59A +:10AFD0008A0F32D6070FCBD6870E66D7080E02D857 +:10AFE0008C0DA0D8110D3FD9980CE0D9210C82DA34 +:10AFF000AD0B26DB3A0BCBDBC90A72DC5B0A19DD31 +:10B00000EE09C3DD83096DDE1B0919DFB508C6DF54 +:10B01000500874E0EE0724E18F07D5E1310787E29D +:10B02000D5063AE37C06EEE32506A3E4D00559E510 +:10B030007E0511E62D05C9E6DF0482E793043CE8AE +:10B040004A04F7E80304B4E9BE0370EA7B032EEB7D +:10B050003B03EDEBFD02ACECC1026CED88022DEE82 +:10B060005102EEEE1D02B0EFEB0173F0BB0136F1C1 +:10B070008E01FAF16301BFF23B0184F3150149F43B +:10B08000F1000FF5D000D5F5B1009CF6950063F7FF +:10B090007B002AF86400F2F84F00BAF93C0082FA0B +:10B0A0002C004BFB1F0013FC1400DCFC0B00A5FD67 +:10B0B00005006EFE010037FF000000000040004068 +:10B0C000C940FF3F9241FB3F5B42F53F2443EC3FC9 +:10B0D000ED43E13FB544D43F7E45C43F4646B13FD2 +:10B0E0000E479C3FD647853F9D486B3F64494F3F85 +:10B0F0002B4A303FF14A0F3FB74BEB3E7C4CC53EED +:10B10000414D9D3E064E723ECA4E453E8D4F153E08 +:10B110005050E33D1251AF3DD351783D94523F3DE5 +:10B120005453033D1354C53CD254853C9055423C86 +:10B130004C56FD3B0957B63BC4576D3B7E58213BEF +:10B140003759D33AEF59823AA75A303A5D5BDB3927 +:10B15000125C8439C65C2B39795DCF382B5E71382F +:10B16000DC5E12388C5FB0373A604B37E760E5360B +:10B1700093617D363D621236E762A5358E633735C1 +:10B180003564C634DA6453347E65DF332066683351 +:10B19000C166EF3260677432FE67F8319A687931C0 +:10B1A0003569F930CE697630656AF22FFB6A6C2F0B +:10B1B0008F6BE42E216C5A2EB26CCF2D416D412D38 +:10B1C000CF6DB22C5A6E212CE46E8F2B6C6FFB2A44 +:10B1D000F26F652A7670CE29F970352979719A282F +:10B1E000F871FE2774726027EF72C12668732026FB +:10B1F000DF737E255374DA24C674352437758E23A5 +:10B20000A575E72212763D227D769321E576E7202B +:10B210004B773A20B0778C1F1278DC1E71782B1E8A +:10B22000CF78791D2B79C61C8479121CDB795D1BC4 +:10B23000307AA71A827AEF19D37A3719217B7E18D0 +:10B240006D7BC417B67B0917FD7B4C16427C9015AD +:10B25000857CD214C57C1314037D54133F7D941256 +:10B26000787DD311AF7D1211E37D5010157E8D0FC7 +:10B27000457ECA0E727E060E9D7E410DC57E7C0CFB +:10B28000EB7EB70B0F7FF10A307F2B0A4F7F6409EB +:10B290006B7F9D08857FD6079C7F0E07B17F460692 +:10B2A000C47F7E05D47FB504E17FED03EC7F2403EA +:10B2B000F57F5B02FB7F9201FF7FC900FF7F0000EB +:10B2C000704780B5022808D0042806D0082804D08A +:10B2D000102802D04FF4803104E04007411300EB06 +:10B2E00091408113882001F0AFFC002002BD80B5A1 +:10B2F000B0F5FA6F0DD0B0F57A7F0AD0B0F5FA7FCD +:10B3000007D0FA2805D04FF07A71882001F0FBFBB6 +:10B3100003E0C103882001F0F6FB002002BD80B5E8 +:10B3200001F0D5FF02F039FE00280CD002F035FE06 +:10B3300059230FF230220FF24421FFF7C1FFBDE87D +:10B34000014002F02ABE03F08EFB00280CD003F06F +:10B350008AFB5A230FF20C220FF22021FFF7B0FFD5 +:10B36000BDE8014003F07FBB03F067FD00280CD06F +:10B3700003F063FD5B230FF2EC120FF20021FFF7E5 +:10B380009FFFBDE8014003F058BD04F0AAF9002872 +:10B390000CD004F0A6F95F230FF2C8120FF2DC11F3 +:10B3A000FFF78EFFBDE8014004F09BB904F035FCC7 +:10B3B00000280CD004F031FC60230FF2A8120FF229 +:10B3C000BC11FFF77DFFBDE8014004F026BC05F08D +:10B3D00022FA00280CD005F01EFA61230FF2841225 +:10B3E0000FF29811FFF76CFFBDE8014005F013BAAA +:10B3F0000220FFF766FF4FF4FA70FFF778FF4FF077 +:10B400000071882001F025FCBDE8014001F09ABFE1 +:10B4100010B54FF47A720023F2F7CEF9044601F02A +:10B4200077FB204601F085FB204601F0A7FB0020BA +:10B4300010BD80B54FF47A720023F2F7BDF901F028 +:10B440008AFB002002BD00002DE9F04784B00E46C3 +:10B4500017469A46DDF838804FF00009DDE90C45C3 +:10B46000002803D022462B4601F0E1FC002E0ED02E +:10B47000B6F90000009000A8B6F902104160B6F9D4 +:10B480000410816022462B46494601F09BFC002FA8 +:10B4900024D09FED260AD7ED000A60EE800AFDEE6B +:10B4A000E00ACDED000A00A8D7ED010A60EE800A9F +:10B4B000FDEEE00AC0ED010AD7ED020A20EE800A97 +:10B4C000BDEEC00A80ED020A22462B4648F020015C +:10B4D00001F0C8FC002801D04FF02009BAF1000F9C +:10B4E0000DD022462B460021504601F0F7FC0028E3 +:10B4F00001D1012004E04FF02009002000E00020ED +:10B50000002802D001F094FD8146484604B0BDE811 +:10B51000F08780B50A4600A903F0CAFA02BD80B5DB +:10B520000A4600A903F022FB02BD00000000004211 +:10B5300080B501F029FD002002BD80B501F012FDAB +:10B54000002002BD80B501F013FD002002BD80B5D2 +:10B5500001F014FD002002BD05F0E3BC01F0D3BAF8 +:10B5600001F072BB696E765F696E69745F696E76B1 +:10B57000656E73656E73655F61706900433A5C5414 +:10B58000656D705C4955535C494B445C5461652D55 +:10B59000536F6F5C656D6265646465645F72656658 +:10B5A0006572656E63655F666F725F4E6F74655F2F +:10B5B000335C656D6265646465645C496E76656E76 +:10B5C00053656E73655C6D706C5C696E76656E73E9 +:10B5D000656E73655F6170692E63000038B50C4657 +:10B5E0001546010A8DF8001000A948704878201807 +:10B5F000B0F5807F02DD4FF0FF3032BD00AB02229C +:10B600006D21682005F048FE002802D04FF0FF3081 +:10B6100032BD2B4622466F21682005F03DFE0028F2 +:10B6200002D04FF0FF3032BD002032BD38B50C469D +:10B630001546010A8DF8001000A9487048782018B6 +:10B64000B0F5807F02DD4FF0FF3032BD00AB02224B +:10B650006D21682005F020FE002802D04FF0FF3059 +:10B6600032BD2B4622466F21682005F02DFE0028B2 +:10B6700002D04FF0FF3032BD002032BD2DE9F04F37 +:10B6800093B005460E461446002E02D14FF0FF300F +:10B6900065E00027A8460AE0B9F1010F05DB4A463C +:10B6A00039460FF2407005F01EFE5744BFB24745C1 +:10B6B00044DA4FF0000907EB060BA8EB070041281E +:10B6C00002DB4FF0400A01E0A5EB070A5A4651465B +:10B6D00089B23846FFF782FF002802D06FF00100E0 +:10B6E0003DE002AA514689B23846FFF79FFF002885 +:10B6F00002D06FF0020032E01FFA8AFA524602A925 +:10B70000584605F0FDFD002804D009F10109642028 +:10B7100005F0EDFDA9F101000328CED3B9F1040F26 +:10B72000BADB9DF808000090BB5D524639460FF227 +:10B73000986005F0D8FD6FF0030010E0200A8DF846 +:10B7400004008DF8054001AB02227021682005F04D +:10B75000A3FD002802D06FF0040000E0002013B029 +:10B76000BDE8F08F90F90010012901DB002070473F +:10B77000002901D50420704790F90110012901DB4F +:10B7800001207047002901D50520704790F902007B +:10B79000012801DB02207047002801D506207047F0 +:10B7A0000720704738B50446FFF7DCFF0546E01C6C +:10B7B000FFF7D8FF45EAC005A01DFFF7D3FF45EA14 +:10B7C000801080B232BD70B586B0044605A80FF275 +:10B7D0002C610A68026004A80FF224610A68026002 +:10B7E00003A80FF220610A68026002A80FF2186134 +:10B7F0000A68026004F0030005A9425C8DF8042089 +:10B8000001ADC4F3C102525C6A70C4F38112515C91 +:10B81000A97004A9405C8DF8000000AEC4F3C1001B +:10B82000405C7070C4F38110405CB07001AA0321C9 +:10B8300040F22640FFF7D2FE002802D04FF0FF3042 +:10B840004DE000AA032140F22A40FFF7C7FE00287E +:10B8500002D04FF0FF3042E0032203A901A8E6F72F +:10B8600006FC032202A900A8E6F701FC60070BD53D +:10B870009DF8040040F001008DF804009DF80000E0 +:10B8800040F001008DF80000A00607D5687840F070 +:10B8900001006870707840F001007070E00507D515 +:10B8A000A87840F00100A870B07840F00100B070B6 +:10B8B00001AA032140F23F40FFF790FE002802D08A +:10B8C0004FF0FF300BE000AA032140F23140FFF7B8 +:10B8D00085FE002802D04FF0FF3000E0002006B0C7 +:10B8E00070BD10B5044600223821682005F0C2FC66 +:10B8F000002824D100222321682005F0BBFC002869 +:10B900001DD100226A21682005F0B4FC002816D160 +:10B91000002C17D00C226A21682005F0ABFC00280F +:10B920000DD1C0226A21682005F0A4FC002806D1B0 +:10B9300000222321682005F09DFC002802D04FF052 +:10B94000FF3010BD002010BD10B582B004000CD037 +:10B95000C0208DF80000C2208DF80100C4208DF8B1 +:10B960000200C6208DF8030004E004228B2100A809 +:10B97000E6F783FB00AA042140F6C410FFF72EFE71 +:10B980002046401E8041C043C00FFFF7AAFF16BDEE +:10B9900010B582B004000CD020208DF800002820C3 +:10B9A0008DF8010030208DF8020038208DF803005A +:10B9B00004E00422A32100A8E6F75FFB00AA04210B +:10B9C00040F6CA10FFF70AFE2046401E8041C043E1 +:10B9D000C00FFFF786FF16BD30B585B002A90FF284 +:10B9E0002C4238CA38C1052802DA4FF0FF3021E076 +:10B9F000052190FBF1F0401E80B20146090A8DF846 +:10BA000000108DF8010000AA022140F21620FFF775 +:10BA1000E5FD002802D04FF0FF300BE002AA0C2118 +:10BA200040F6ED10FFF7DAFD002802D04FF0FF30AE +:10BA300000E0002005B030BD80B5002801D0022212 +:10BA400000E000223821682005F014FC002802D014 +:10BA50004FF0FF3002BD002002BD70B584B0044637 +:10BA600025466D1EAD41ED43ED0F00208DF8000021 +:10BA700000AEB2207070B820B070C220F07000AA82 +:10BA800004216820FFF7AAFDA3208DF800006006BE +:10BA900006D5C0207070C820B070C220F07003E0DE +:10BAA000A3207070B070F070200606D5C4203071ED +:10BAB000CC207071C620B07103E0A320307170718A +:10BAC000B071A3208DF807008DF808008DF80900EB +:10BAD00000AA0A2140F6D310FFF780FD032004429C +:10BAE00003D020208DF8000002E0D8208DF800005F +:10BAF00000AA012140F6E210FFF770FDD8208DF872 +:10BB0000000000AA012140F60200FFF767FD600770 +:10BB100003D50120FFF718FF02E00020FFF714FF14 +:10BB2000E00603D50120FFF733FF02E00020FFF716 +:10BB30002FFF2846FFF7D5FE002004B070BD2DE989 +:10BB4000F04188B004460D46164600AB0222722131 +:10BB5000682005F0B9FB002802D04FF0FF30D7E095 +:10BB60009DF800009DF8011041EA002841460FF2BF +:10BB7000A82005F0B8FB0F9FB8F11C0F04D20020DD +:10BB800038704FF0FF30C3E0B8F5007F19DD01AB2E +:10BB900002223A21682005F097FB002803D00FF21B +:10BBA0008C2005F0A0FB9DF80400C00609D50120FB +:10BBB000FFF797FE0FF2902005F095FB6FF0010064 +:10BBC000A6E001AB1C227421682005F07DFB002853 +:10BBD00006D00FF2942005F086FB4FF0FF3097E07F +:10BBE0001C2098FBF0F0401E387001A89DF804104E +:10BBF0004278120442EA0161827841EA0221C27865 +:10BC00001143316001794279120442EA016182797B +:10BC100041EA02219DF80B2011437160017A9DF8E1 +:10BC20000D20120442EA01619DF80E2041EA022132 +:10BC30009DF80F201143B160017B9DF81120120483 +:10BC400042EA01619DF8122041EA02219DF8132089 +:10BC50001143F160017C9DF8152042EA0121298001 +:10BC60009DF816109DF8172042EA012169809DF881 +:10BC700018109DF8192042EA0121A9809DF81A1098 +:10BC80009DF81B2042EA01212180007E9DF81D10B5 +:10BC900041EA002060809DF81E009DF81F1041EAD7 +:10BCA0000020A080002030E000EB40013C4A8B18CF +:10BCB00093F9061093F9052093F90430B4F9006064 +:10BCC00013FB06F6B4F9027012FB0766B4F90470B0 +:10BCD00011FB0766B5F9007013FB07F3B5F90270A5 +:10BCE00012FB0732B5F9043011FB0321B6F5004F02 +:10BCF00001DB47F6FF76B1F5004F01DB47F6FF7138 +:10BD000024F8106025F81010401C0328CCDB00201C +:10BD100008B0BDE8F08138B5040002D14FF0FF3023 +:10BD200032BD1F4D2878002801D0002032BD0922E5 +:10BD30002146281DE6F79BF900AB02226B21682003 +:10BD400005F0C2FA9DF80000400604D500226B21E0 +:10BD5000682005F08FFAC8234FF480620FF24C116F +:10BD600040F66130FFF78AFC002818D12046FFF723 +:10BD700019FDFFF728FD002802D06FF0060032BD44 +:10BD80000020FFF759FE002802D06FF0070032BDF7 +:10BD9000012028700FF2EC0005F0A5FA002032BD5A +:10BDA0007CAF002010B50C460021002800D0C42133 +:10BDB0000846FFF752FE002805D12046FFF70CFE8B +:10BDC000002800D1002010BD0A444D505F4552525A +:10BDD00028256429282564292825642928256429FB +:10BDE000200A00000A444D505F545249414C282516 +:10BDF000642928256429200A000000004CCD6C002D +:10BE00000CC92C003656760026466600FEF2ABC4FE +:10BE1000AAF1DFDFBBAFDFDF5B444D505D20464959 +:10BE2000464F28256429200A000000000A5B444D83 +:10BE3000505D204649464F207374617475732065C8 :10BE400072726F720A0000000A5B444D505D202D33 -:10BE5000204649464F2072656164206572726F7298 -:10BE60000A0000005B444D505D4669726D77617257 -:10BE700065206C6F616465642073756363657373BB -:10BE800066756C6C79212121210A00000000700088 -:10BE900000000024000000020003000000650054C0 -:10BEA000FFEF0000FA80000B12820001200030C377 -:10BEB0000E8C8CE914D5400213710F8E3883F883F1 -:10BEC0003000F883258EF8833000F883FFFFFFFFF2 -:10BED0000FFEA9D6240004001A8279A10000003CBC -:10BEE000FFFF00000010000038836FA2003E033007 -:10BEF0004000000000B2BAC23E80000020000000F6 -:10BF0000000000004000000060000000000C000085 -:10BF1000000C186E000006920A16C0DF0000000038 -:10BF20000000000200000004000000070000000004 -:10BF3000FFFF0B2B00001657000003590000000004 -:10BF400000001DFA00026C1D00000000400000000F -:10BF500000000000000000000000000000000000E1 -:10BF6000001942B5000039A20000B365D90E9FC97F -:10BF70001DCF4C3430000000500000003BB67AE882 -:10BF80000064000000C80000000000000000000085 -:10BF900000000000000000000000000000000000A1 -:10BFA0000000000000000000000000000001000090 -:10BFB00000000000000000000000000000001072FF -:10BFC00000000040000000000000000005DC000050 -:10BFD0000000000000000000000000000000000061 -:10BFE0000000025800000000000000C8000000002F -:10BFF000000000000001000000020000000000003E -:10C000000000000000000000000000000000000030 -:10C010000000000000000000000000000000000020 +:10BE5000204649464F206F766572666C6F77206585 +:10BE600072726F720A0000000A5B444D505D202D13 +:10BE7000204649464F2072656164206572726F7278 +:10BE80000A0000005B444D505D4669726D77617237 +:10BE900065206C6F6164656420737563636573739B +:10BEA00066756C6C79212121210A00000000700068 +:10BEB00000000024000000020003000000650054A0 +:10BEC000FFEF0000FA80000B12820001200030C357 +:10BED0000E8C8CE914D5400213710F8E3883F883D1 +:10BEE0003000F883258EF8833000F883FFFFFFFFD2 +:10BEF0000FFEA9D6240004001A8279A10000003C9C +:10BF0000FFFF00000010000038836FA2003E0330E6 +:10BF10004000000000B2BAC23E80000020000000D5 +:10BF2000000000004000000060000000000C000065 +:10BF3000000C186E000006920A16C0DF0000000018 +:10BF400000000002000000040000000700000000E4 +:10BF5000FFFF0B2B000016570000035900000000E4 +:10BF600000001DFA00026C1D0000000040000000EF +:10BF700000000000000000000000000000000000C1 +:10BF8000001942B5000039A20000B365D90E9FC95F +:10BF90001DCF4C3430000000500000003BB67AE862 +:10BFA0000064000000C80000000000000000000065 +:10BFB0000000000000000000000000000000000081 +:10BFC0000000000000000000000000000001000070 +:10BFD00000000000000000000000000000001072DF +:10BFE00000000040000000000000000005DC000030 +:10BFF0000000000000000000000000000000000041 +:10C000000000025800000000000000C8000000000E +:10C01000000000000001000000020000000000001D :10C020000000000000000000000000000000000010 -:10C0300000000000000000000000100040000000B0 -:10C04000000000060000B26A0000000000000000CE -:10C0500000000000000000000000000000000000E0 -:10C0600000000000000000000000000000000025AB -:10C070000000000016A000000000100000001000EA -:10C08000002F0000000001F4000010000028000054 -:10C09000FFFF4581FFFFFA72000000000000000072 -:10C0A000004400050005BAC6004778A20000000160 -:10C0B0000000000000000600000000140000254DF4 -:10C0C000002F706D000005AE000C02D000000000D3 -:10C0D000000000000000000000000000001B000045 -:10C0E00000000000000000000000000000640000EC -:10C0F0000008000000000000000000000000000038 -:10C10000000000000000000000000000000000002F -:10C11000000000000000000000000000000000001F +:10C030000000000000000000000000000000000000 +:10C0400000000000000000000000000000000000F0 +:10C050000000000000000000000010004000000090 +:10C06000000000060000B26A0000000000000000AE +:10C0700000000000000000000000000000000000C0 +:10C08000000000000000000000000000000000258B +:10C090000000000016A000000000100000001000CA +:10C0A000002F0000000001F4000010000028000034 +:10C0B000FFFF4581FFFFFA72000000000000000052 +:10C0C000004400050005BAC6004778A20000000140 +:10C0D0000000000000000600000000140000254DD4 +:10C0E000002F706D000005AE000C02D000000000B3 +:10C0F000000000000000000000000000001B000025 +:10C1000000000000000000000000000000640000CB +:10C110000008000000000000000000000000000017 :10C12000000000000000000000000000000000000F :10C1300000000000000000000000000000000000FF -:10C14000000000000000000000000000001B0000D4 -:10C150000000000000000000000E000E00000AC7F2 -:10C160000004000000000032FFFFFF9C00000B2BCA -:10C17000000000020000000100000064FFE5000074 -:10C1800000000000000000000000000000000001AE -:10C19000000000000001000000000000000180001D -:10C1A0000001800000018000002426D30000000070 -:10C1B00000000000000600100096003C0000000097 -:10C1C0000000000000000000000000000C0A4E68A3 -:10C1D000CDCF770950166759C619CE8200000000EE -:10C1E000000000000000000000000000000000004F -:10C1F0000000000017D784000300000000000000CA -:10C2000000000000C7938F9D1E1B1C19000000003A -:10C21000000000000000000000000000000000001E -:10C220000000000002031885000040000000000329 -:10C2300000000003000000000000000040000000BB -:10C2400000000000000000000000000000000000EE -:10C2500000000000000000000000000000000000DE +:10C1400000000000000000000000000000000000EF +:10C1500000000000000000000000000000000000DF +:10C16000000000000000000000000000001B0000B4 +:10C170000000000000000000000E000E00000AC7D2 +:10C180000004000000000032FFFFFF9C00000B2BAA +:10C19000000000020000000100000064FFE5000054 +:10C1A000000000000000000000000000000000018E +:10C1B00000000000000100000000000000018000FD +:10C1C0000001800000018000002426D30000000050 +:10C1D00000000000000600100096003C0000000077 +:10C1E0000000000000000000000000000C0A4E6883 +:10C1F000CDCF770950166759C619CE8200000000CE +:10C20000000000000000000000000000000000002E +:10C210000000000017D784000300000000000000A9 +:10C2200000000000C7938F9D1E1B1C19000000001A +:10C2300000000000000000000000000000000000FE +:10C240000000000002031885000040000000000309 +:10C25000000000030000000000000000400000009B :10C2600000000000000000000000000000000000CE -:10C27000677DDF7E72902E554CF6E6880000000048 -:10C28000000000000000000000000000D8DCB4B88E -:10C29000B0D8B9ABF3F8FAB3B7BB8E9EAEF132F5B6 -:10C2A0001BF1B4B8B08097F1A9DFDFDFAADFDFDFD1 -:10C2B000F2AAC5CDC7A90CC92C97F1A98926466653 -:10C2C000B28999A92D557DB08AA896365676F1BACD -:10C2D000A3B4B280C0B8A89711B28398BAA3F024CF -:10C2E0000844106418B2B9B49883F1A329557DBAF3 -:10C2F000B5B1A38393F0002850F5B2B6AA83932872 -:10C30000547CF1B9A3829361BAA2DADEDFDB819AB1 -:10C31000B9AEF5606870F1DABAA2DFD9BAA2FAB99B -:10C32000A38292DB31BAA2D9BAA2F8DFB9A3A3A340 -:10C33000A3A3B8A2DFDFDFBAA0DFDFDFD8F1B9A1A6 -:10C34000B280C0B089A0C3C5C7B181B497A011B5F0 -:10C3500090A1F0240844106418F19081A02D553D5F -:10C36000F2A5D0F8F9D1D9F8F180A2C3C5C7D8F3A6 -:10C37000A2DEF18290A42D557D8494F5A120D9F3FD -:10C38000A2F8D8F5A140D9F3A2F8D8F5A160D9F365 -:10C39000A2F8D8F2B9A2F8F9D1D9A6DEA5D0DEF478 -:10C3A0001AD8F28696A109D1DBF411D8F211D1DBAB -:10C3B000F41CD8F219D1DBF414D8F410D8F3A2F895 -:10C3C000F9D1DAF2A6F8F1A5DED8F4A11616D8F163 -:10C3D000A5F8A1859509D9F1A5DEF2A5D0DEA6F8CC -:10C3E000D8F4A109D8F3A2F8F9D1F4D90819DA429E -:10C3F000F2A2DEF40BD8F1A5F8A1859519DAF407BD -:10C40000D8F2A6DEA5D0DED8F1B8AAB38DB4980DC7 -:10C41000355DB2B6BAAF8C96198F9FA70E161EB4B3 -:10C420009AB8AA872C547CBAA4B08AB691325676B0 -:10C43000B28494A4C808CDD8B8B4B0F19982A82D1C -:10C44000557D98A80E161EA22C547C92A4F02C5058 -:10C4500078F184A898C4CDFCD80DDBA8FC2DF3D9C5 -:10C46000BAA6F8DABAA6DED8BAB2B68696A6D0F3DD -:10C47000C841DAA6C8F8D8B0B4B882A892F52C544E -:10C480008898F135D9F418D8F1A2D0F8F9A884D950 -:10C49000C7DFF8F883C5DADF69DF83C1D8F4011498 -:10C4A000F1A8824EA884F311D182F5D992289788F9 -:10C4B000F109F41C1CD884A8F3C0F9D1D99782F1F2 -:10C4C00029F40DD8F3F9F9D1D982F4C203D8DEDF0B -:10C4D0001AD8F1A2FAF9A88498D9C7DFF8F8F88336 -:10C4E000C7DADF69DFF883C3D8F40114F198A882B2 -:10C4F0002EA884F311D182F5D992509788F109F4CE -:10C500001CD884A8F3C0F8F9D1D99782F149F40D69 -:10C51000D8F3F9F9D1D982F4C403D8DEDFD8F1AD6C -:10C520008898CCA809F9D98292A8F57CF1883ACFED -:10C53000944A6E98DB6931DAADF2DEF9D88795A8B6 -:10C54000F221D1DAA5F9F417D9F1AE8ED0C0C3AE7D -:10C5500082C684C3A88595C8A588F2C0F1F4010EEF -:10C56000F18E9EA8C63E56F554F18872F40115F17D -:10C570009845856EF58E9E0488F142985A8E9E06E7 -:10C580008869F4011CF1981E1108D0F504F11E977A -:10C590000202983625DBF9D985A5F3C1DA85A5F322 -:10C5A000DFD88595A8F309DAA5FAD88292A8F5789C -:10C5B000F1881A849F26889821DAF41DF3D8879F82 -:10C5C00039D1AFD9DFDFFBF9F40CF3D8FAD0F8DAC0 -:10C5D000F9F9D0DFD9F9D8F40BD8F3879F39D1AF67 -:10C5E000D9DFDFF41DF3D8FAFCA869F9F9AFD0DA86 -:10C5F000DEFAD9F88F9FA8F1CCF398DB45D9AFDFED -:10C60000D0F8D8F18F9FA8CAF38809DAAF8FCBF89A -:10C61000D8F2AD978D0CD9A5DFF9BAA6F3FAF412CA -:10C62000F2D8950DD1D9BAA6F3FADAA5F2C1BAA615 -:10C63000F3DFD8F1BAB2B68696A6D0CAF349DAA625 -:10C64000CBF8D8B0B4B8D8AD84F2C0DFF18FCBC38B -:10C65000A8B2B68696C8C1CBC3F3B0B48898A82157 -:10C66000DB718D9D71859521D9ADF2FAD88597A89A -:10C6700028D9F408D8F28D29DAF405D9F285A4C2B4 -:10C68000F2D8A88D9401D1D9F411F2D88721D8F429 -:10C690000AD8F28498A8C801D1D9F411D8F3A4C853 -:10C6A000BBAFD0F2DEF8F8F8F8F8F8F8F8D8F1D81F -:10C6B000B8B4B09786A8319B069907AB9728889B9A -:10C6C000F00C201440B0B4B8F0A88A9A285078B77B -:10C6D0009BA8295179247059446938644831F1BBC9 -:10C6E000AB88002C547CF0B38BB8A804285078F1A8 -:10C6F000B088B49726A85998BBABB38B0226466680 -:10C70000B0B8F08A9CA82951798B2951798A247074 -:10C71000598B2058718A4469388B3940688A64483B -:10C72000318B30496088F1AC002C547CF08CA8042B -:10C73000285078F1889726A85998AC8C022646662E -:10C74000F0899CA82951792470594469386448318A -:10C75000A98809205970AB11384069A8193148607F -:10C760008CA83C415C207C00F187981986A86E76E5 -:10C770007EA999882D557DD8B1B5B9A3DFDFDFAE8D -:10C78000D0DFAAD0DEF2ABF8F9D9B087C4AAF1DFC6 -:10C79000DFBBAFDFDFB9D8B1F1A38EC6DFB084F263 -:10C7A000C8F8F9D9DED89385F14AB183A308B583D7 -:10C7B0009A0810B79F10D8F1B0BAAEB08AC2B2B61C -:10C7C0008E9EF1FBD9F41DD8F9D90CF1D8F8F8AD4B -:10C7D00061D9AEFBD8F40CF1D8F8F8AD19D9AEFB9D -:10C7E000DFD8F416F1D8F8AD8D61D9F4F4ACF59C2E -:10C7F0009C8DDF2BBAB6AEFAF8F40BD8F1AED0F8B8 -:10C80000AD51DAAEFAF8F1D8B9B1B6A3839C08B944 -:10C81000B1839AB5AAC0FD3083B79F10B58B93F250 -:10C820000202D1ABDADED8F1B080BAABC0C3B284B9 -:10C83000C1C3D8F3B9ACDED8B1B9F38BA391B609B3 -:10C84000B4D9B9ACF8ABDEB0879CB9A3DDF1B38B3A -:10C850008B8B8B8BB087A3A3A3A3B080B490F2A3E0 -:10C86000A3A3A3A3A3A3A3A3A3F1B087B59AA3F300 -:10C870009BA3A3DCBAACDFB9A3A3A3A3A3A3A3A3E5 -:10C88000A3A3A3A3A3A3A3D8F3B9ACF8F9D1D9F474 -:10C890001BD8F3FAF9D1D9F41BD8F2B1B5B98CACE5 -:10C8A000F8F9D1D9C2D8F2F9D9DEF40913DAF2DDF8 -:10C8B000C6DCF43111D8F2ABFA8B9BA349D9F4074B -:10C8C00006DAF2B9ABDFFED8F1BBB3B7AAF9DAFFEB -:10C8D000D9809AAA28B48098A720B79787A8668895 -:10C8E000F07951F1902C870CA781976293F07171C8 -:10C8F0006085940129517990A5F1284C6C870C959D -:10C90000188578A38390284C6C886CD8F3A2820099 -:10C91000F210A8921980A2F2D926D8F188A84DD990 -:10C9200048D896A83980D93CD89580A839A6869849 -:10C93000D92CDA87A72CD8A8899519A980D938D8F5 -:10C94000A88939A980DA3CD8A82EA83990D90CD862 -:10C95000A8953198D90CD8A809D9FFD801DAFFD801 -:10C960009539A9DA26FFD890A80D8999A810809842 -:10C9700021DA2ED88999A83180DA2ED8A886963166 -:10C9800080DA2ED8A8873180DA2ED8A88292F34197 -:10C9900080F1D92ED8A882F31980F1D92ED882AC93 -:10C9A000F3C0A28022F1A62EA72EA92298A829DAE8 -:10C9B000ACDEFFD8A2F22AF1A92E8292A8F2318031 -:10C9C000A696F1D900F1F1F1AC8C9C0C30ACDED024 -:10C9D000DEFFD88C9CACD010ACDE8092A2F24C82F0 -:10C9E000A8F1CAF235F19688A6D900D8FF00000058 -:10C9F000014804F0A6BC000050FE002010B5DFF88E -:10CA000060484822014604F54570E5F722FBD4F85A -:10CA10005003606304F554704168C4F88410806862 -:10CA2000C4F8D400032802D1012004F082FD0020C4 -:10CA300010BD80B54822DFF83818E5F70AFB002062 -:10CA400002BD80B50C220146DFF82808E5F701FB9E -:10CA5000002002BD80B50C22DFF81818E5F7F9FABE -:10CA6000002002BD10B5DFF810484FF4A672002177 -:10CA700004F50870E5F7F3FA4FF408720021204638 -:10CA8000E5F7EDFA00F0C7FB4DF294034822DFF81A -:10CA9000EC17DFF8EC0704F0A8FD04464CF2513324 -:10CAA0000C22DFF8E017DFF8E00704F09EFD2043DA -:10CAB00010BD0023002A01D14FF48032426201F000 -:10CAC0000302032A00D1012301F01802182A00D121 -:10CAD000012301F0C002C02A00D10123002B00D0A5 -:10CAE0008821016070470A460146DFF88C07E0E7BD -:10CAF000DFF86C1788624FF47A7290FBF2F2CA6228 -:10CB00008A6C002A04D1DFF8842792FBF0F0886455 -:10CB10007047DFF84C17886778314FF47A7290FBD2 -:10CB2000F2F24A600A6A002A04D1DFF8602792FB19 -:10CB3000F0F008627047DFF82817C1F8C800C83164 -:10CB40004FF47A7290FBF2F24A600A6A002A04D12A -:10CB5000DFF8382792FBF0F008627047DFF818170B -:10CB6000C1F860014FF47A7290FBF2F0C1F86401F1 -:10CB70007047DFF80407D0F8D000001200F0010081 -:10CB80007047DFF8F406006B001200F001007047F8 -:10CB9000DFF8E406D0F88000001200F001007047D2 -:10CBA00030B400200146DFF8D02602F130031C6DBE -:10CBB000E40501D5D3E91601146BE40508D5D3E9E2 -:10CBC0000245A94204DC01DBA04201D220462946ED -:10CBD00002F1D003D2F8D040E40508D5D3E90245EC -:10CBE000A94204DC01DBA04201D2204629461C6D8B -:10CBF000E40508D5D3E91645A94204DC01DBA042CF -:10CC000001D220462946D2F85031DB050AD502F57B -:10CC1000A874D4E90223994204DC01DB904201D2DA -:10CC20001046194630BC70470A460146DFF86006D8 -:10CC30003FE70A460146DFF85C063AE770B584B084 -:10CC400004460D46B4F90400C003009000AEB4F9E8 -:10CC50000600C0037060B4F90800C003B06004F1BE -:10CC60000C0300AA606A4100206880B204F05AF9FF -:10CC700000982968A0EB6100009070686968A0EBDB -:10CC800061007060B068A968A0EB6100B06004F159 -:10CC9000180300AA606A4100206880B204F042F9DB -:10CCA000206B40F0200020637FBDDFF8CC15C1F879 -:10CCB0008400C1F85403704738B50C46002818D0DA -:10CCC000DFF8B435D10702D50168C3F834139107F2 -:10CCD00003D503F54D7145684D60510703D503F544 -:10CCE0004D718068886003F54D7103F15000FFF7C6 -:10CCF000A5FF2046FFF7D9FF002210210846BDE816 -:10CD0000384004F0A7BCF8B504460D46DFF8686566 -:10CD1000002C12D006F557770C222146384604F035 -:10CD2000DFFA002809D00C2221463846E5F791F9B0 -:10CD300006F557713046FFF781FF756306F54B74B2 -:10CD40006562D6F80801002802D0C6F82C0303E07B -:10CD50004FF4D810C6F82C0300220421084604F032 -:10CD600079FC01206060F1BDDFF80C15D1F83003CB -:10CD7000012801D1012000E000200022C1F8302369 -:10CD8000704710B50C46002804D00C22DFF8E414DC -:10CD9000E5F75FF9002C04D0DFF8DC04D0F82C03B1 -:10CDA000206010BDF8B514461D46DFF8CC6406F1CE -:10CDB000540702688B0610D4A6F854204168798085 -:10CDC0008068B880F86A40F08000F86206F54D711E -:10CDD00006F15000FFF732FF0DE07A614268BA6158 -:10CDE0008068F861F86A40F02000F86201F0030002 -:10CDF0003863C6F85403F86A40F4A070F862D6E9C4 -:10CE00002201C6E92401C6E922450020F2BD70B521 -:10CE100014461D46DFF8606406220146301DE5F722 -:10CE200018F9306B40F4E0703063D6E90E01C6E9C2 -:10CE30001001C6E90E4506F557713046FFF7FEFEB4 -:10CE4000002070BDFEB514461D46DFF82C6406F1C7 -:10CE5000A4078A0617D400F0B8F900A800F0A8F9D2 -:10CE60000098A6F8A40000A8416879808068B8807E -:10CE700006F5457106F1A000FFF7E0FEF86A40F004 -:10CE80008000F8620EE002687A614268BA618068E8 -:10CE9000F861F86A40F02000F86201F0030038639E -:10CEA000C6F85803D6E93601C6E93801C6E9364561 -:10CEB000F86A40F4A070F8620020FEBD2DE9F0434E -:10CEC00085B006460F4614461D46DFF8AC8308F5CC -:10CED000A079F80409D500A9304604F09AF9102287 -:10CEE00000A94846E5F7B5F804E010223146484667 -:10CEF000E5F7AFF8C8E95645D8F8500107F43851BE -:10CF000041F4E0710843C8F85001D8F8500110F41A -:10CF1000406F04D022462B46304604F013FAD8F86E -:10CF2000500100050AD500A80FF270311022E7F772 -:10CF3000C7FE22462B4600A804F018FA002005B0D0 -:10CF4000BDE8F083DFF830030021C0F8801070479F -:10CF5000DFF824030021C0F8D0107047DFF8180371 -:10CF60000021C0F850117047DFF80C030021016365 -:10CF700070472DE9F04300231C4600E0641CDFF8F5 -:10CF8000F852D5F82062B4420DDA0C2707FB04559D -:10CF9000D5F824620746BE4203D0D5F828528D4208 -:10CFA000ECD1162032E0142E2EDA1C46002E01D1D0 -:10CFB0001BE0641CB44207DA04EB440705EB870767 -:10CFC000D7F828728F42F4DBB4420ED00BE00C2766 -:10CFD00007FB065707F5097C07F50677B7E8004316 -:10CFE000ACE80043761EB442F1DB0C2707FB045487 -:10CFF000C4F8240204F5097041608260D5F820026B -:10D00000401CC5F8200200E00C231846BDE8F08360 -:10D01000F8B50025DFF8604294F83000400600D5EE -:10D02000022594F88000400601D545F0010594F8EA -:10D03000D000400601D545F0040594F820014006D3 -:10D0400001D545F0080594F85001C00601D545F01A -:10D05000100594F89801400601D545F020050026FA -:10D06000374611E007EB470004EB8001D1F82C02B2 -:10D07000054208D02046D1F824128847002802D063 -:10D08000002E00D106467F1CD4F820028742E9DB3F -:10D0900000F002F83046F2BD10B47748016B4A0642 -:10D0A00002D541F01001016300F130010A6D530611 -:10D0B00002D542F010020A65D0F8D020530603D5FD -:10D0C00042F01002C0F8D02000F1D002136D5C06CF -:10D0D00002D543F010031365D0F850315C0603D538 -:10D0E00043F01003C0F85031036B23F04003036397 -:10D0F0000B6D23F040030B65D0F8D01021F04001F8 -:10D10000C0F8D010116D21F040011165D0F8501118 -:10D1100021F04001C0F8501100F5A870816C21F099 -:10D120004001816410BC704738B50C461546002894 -:10D1300003D00C225849E4F78CFF002D04D04E4850 -:10D14000D0E92223C5E90023002C03D04A48D0F8B7 -:10D150008400207031BD70B50C461546464E0C2239 -:10D1600006F1B801E4F775FF002D03D0D6E93601CA -:10D17000C5E90001002C09D0D6F86803002802D0C8 -:10D180000020207070BDD6F8D400207070BD3A48E1 -:10D19000406B70473848D0F86813002901D0002050 -:10D1A0007047D0F8D40070473348D0F884007047F7 -:10D1B000002107E0304A02EB8102D2F8C42140F896 -:10D1C0002120491C0329F5DB704718B4002106E033 -:10D1D00003EB810250F82130C2F8B831491C264BCC -:10D1E0000329F5DBD3F81812012907D103F5E27200 -:10D1F000014603F5E87018BC03F016BF002106E0F5 -:10D2000003EB810250F82140C2F8C441491C0329B4 -:10D21000F6DB11BC704710B500200246104C04E04C -:10D2200004EB8001C1F8F421401C0928F8DB24221A -:10D23000002104F5E870E4F712FF00200AE004EB97 -:10D2400000114FF07E52C1F8F4214FF08042C1F836 -:10D25000D021401C0328F2DBBDE8104002E00000B2 -:10D2600070DC002004480021C0F81812704700004C -:10D2700084DF0020CCDF002070DC002033CA0208ED -:10D28000FDC9020855CA020843CA020840420F00FD -:10D29000C0DC002010DD0020D8DC002000000040B1 -:10D2A000000000000000000000000000704780B592 -:10D2B00004F090F904F0E2F900280CD004F0DEF953 -:10D2C00023230FF28C020FF29801FFF7EFFFBDE866 -:10D2D000014004F0D3B9FFF7C5FB00280CD0FFF7DD -:10D2E000C1FB26230FF268020FF27401FFF7DEFF85 -:10D2F000BDE80140FFF7B6BB04F00CF900280CD0E4 -:10D3000004F008F928230FF248020FF25401FFF746 -:10D31000CDFFBDE8014004F0FDB8012004F0A3F901 -:10D32000002002BD80B504F0BFF900280CD004F045 -:10D33000BBF947230FF280020FF22401FFF7B6FF7B -:10D34000BDE8014004F0B0B9002002BD00000000BB -:10D35000696E765F696E69745F6D706C00000000C5 -:10D36000433A5C54656D705C4955535C494B445C71 -:10D370005461652D536F6F5C656D626564646564AF -:10D380005F7265666572656E63655F666F725F4E3C -:10D390006F74655F335C656D6265646465645C4988 -:10D3A0006E76656E53656E73655C6D6C6C697465E5 -:10D3B0005C6D706C2E630000696E765F73746172D1 -:10D3C000745F6D706C0000007047000000B510EED7 -:10D3D000100AE4F755FA0022DFF81C3CE4F788FA5B -:10D3E000F2F73CFEDFF8D42BC2E9140100BDDFF8F0 -:10D3F000CC2BD2E912017047DFF8C01BD0E90E2315 -:10D40000C1E912237047C1070CD5DFF8F01B4FF0BC -:10D4100040420A6770314A608A604FF08042CA60B9 -:10D420000A614A6181070ED5DFF8D01B4FF04042F8 -:10D43000C1F8182101F58C714A608A604FF0804272 -:10D44000CA600A614A6140070ED5DFF8B01B4FF091 -:10D450004042C1F8C02101F5E070426082604FF0A7 -:10D460008042C260026142617047000000214010AA -:10D4700000D0491C0128FADA481C70472DE9F14F09 -:10D4800088B000200146CDE904010898806F00288B -:10D4900001D10846BEE0FFF7E9FF81464FF00008E2 -:10D4A0008BE000EBC802D2E900014A46ECF76EF8C7 -:10D4B00004460D46089800EBC80002900246D2E9E7 -:10D4C00006014A46ECF762F806460F46A4FB042321 -:10D4D00004FB053305FB0433A4FB020104FB031129 -:10D4E00005FB0211CDE90601029AD2E912014A4672 -:10D4F000ECF74CF8CDE90001A6FB062306FB073349 -:10D5000007FB06330320A0FB02AB00FB03BBDDE9F6 -:10D510000001B0EB0A0061EB0B01DDE90623A4FB7F -:10D5200002AB04FB03BB05FB02BB4FEA4B0B4BEA10 -:10D53000DA7B10EB4A0A41EB0B0BA4FB040104FB62 -:10D54000051105FB0411301A67EB0101A4FB002350 -:10D5500004FB013305FB00330320A0FB026700FB43 -:10D560000377DDE9060136184F41029AD2E90C0132 -:10D570004A46ECF70BF8321A67EB0103A4FB0201F1 -:10D5800004FB031105FB0211890041EA9071BAEB1B -:10D5900080006BEB0101002904DC00DB02D2404279 -:10D5A00061EB4101DDE904238B4204DC01DB8242B3 -:10D5B00001D2CDE9040108F10108B8F1030F089880 -:10D5C000FFF66FAF806F0899C96F884210D000EEE8 -:10D5D000100AB8EEC00A04F07DF8F7EE000A80EEFB -:10D5E000800A089880ED200A08980146896FC16773 -:10D5F000DDE9040104F07CF800EE100A0898D0ED93 -:10D60000200A20EE200A10EE100A09B0BDE8F04F03 -:10D6100004F0A0B809B0BDE8F08F2DE9F04F85B057 -:10D62000814600200146CDE90201D9F878000028A2 -:10D6300001D1084679E0FFF719FF00904FF000088C -:10D6400049E009EBC802D2E90001009AEBF79EFF1E -:10D6500004460D46A4FB046704FB057705FB04772D -:10D6600009EBC80001900246D2E90601009AEBF7E7 -:10D670008DFF801BB941A4FB002304FB013305FB94 -:10D6800000330320A0FB02AB00FB03BBA4FB06019D -:10D6900004FB071105FB06111AEB00044BEB010517 -:10D6A000019AD2E90C01009AEBF770FF201A65EBA2 -:10D6B0000101002904DC00DB02D2404261EB4101A0 -:10D6C000DDE902238B4204DC01DB824201D2CDE999 -:10D6D000020108F10108B8F1030FB2DBD9F87800B4 -:10D6E000D9F87C1088420FD000EE100AB8EEC00ABC -:10D6F00003F0F0FFF7EE000A80EE800A89ED200AC1 -:10D70000D9F87800C9F87C00DDE9020103F0F0FFE8 -:10D7100000EE100AD9ED200A20EE200A10EE100AC1 -:10D7200005B0BDE8F04F04F015B805B0BDE8F08FC6 -:10D7300010B40121026BD20513D5DFF8C028D2F84E -:10D7400088301468A3420CDBD0F88000C00505D5F2 -:10D75000D2F8D8015168884203DB0521084610BC85 -:10D7600070470020FBE72DE9F04184B00446002615 -:10D7700000ADDFF8887812E007EBC602D2E90401B9 -:10D7800007F50872926A04F021F807EB8602D2F8D6 -:10D7900094201204D317801845F82600761C032E17 -:10D7A000EADBA822002107F11000E4F758FC012071 -:10D7B000FFF729FE6868002801D4014600E04142D5 -:10D7C000009A002A00D55242914201DA104602E046 -:10D7D000002800D54042A968002901D40A4600E08B -:10D7E0004A42824204DB002901D4084600E0484254 -:10D7F000616A03F01CF9B0F5481F03DB052087F8C8 -:10D8000020024BE0DFF8B467F16A6A68501A01D46D -:10D81000034600E08B1AD6F828C0DDF800E0BEEB26 -:10D820000C0E01D4F04603E0DDF80080ACEB0808F4 -:10D83000434508DABEF1000F01D4704606E00098B7 -:10D84000ACEB000002E0002800D5881A316BAA6812 -:10D85000531A01D49C4601E0A1EB020C844504DB81 -:10D86000002B01D4184600E0881A616A03F0DFF843 -:10D870008046022003F096FD07F50870C06A8045D7 -:10D8800006DA032100A8FFF73EFA2046FFF7B4FDB1 -:10D890000098B0626868F062A8683063BDE8FF81F4 -:10D8A0002DE9FE4186460E4600271CE0D317A2FB59 -:10D8B000004502FB015503FB0055204629460CEBB1 -:10D8C0004C0306EBC30303EBC708D8E90045241853 -:10D8D0004D4103EBC703C3E900450CF1010CBCF15A -:10D8E000040FE3DB7F1CB06F032F1BDA06EB87010D -:10D8F00001F16003002802D13EF9170058623EF999 -:10D9000017005A6A821A00A840F82720086E904231 -:10D9100000DA0A66D868824200DADA600120002163 -:10D920008C46DCE7401CB0670120C6F8A000BDE8CB -:10D93000F7812DE9F04104460025069E05E006EB3F -:10D94000850054F82510C1666D1C032DF7DB06F128 -:10D950007807C7E90623B06F002814D0002510E02F -:10D9600006EB850854F82500D8F88410401AF2F721 -:10D9700071FBD8F86010814200DA0146C8F86010E7 -:10D980006D1C032DECDBB06F401CB0670120B8624A -:10D99000BDE8F08110B4002108E000EB810202F143 -:10D9A0006003DC685C6200231366491C0329F4DB16 -:10D9B00000F17801D1E90623C1E90823002282673A -:10D9C0001046886210BC704730B4D0E92423D0E9F7 -:10D9D0002645101B63EB050130BC7047016E426E9B -:10D9E0008A4200DA0A46816E914200DA1146084600 -:10D9F0007047016EC26E891A426E036FD21A8A4254 -:10DA000000DB1146826E406F101A884200DB01462F -:10DA10000846704710B5DFF8E4451022002104F5F0 -:10DA20001670E4F71CFB1022002104F51E70E4F7C9 -:10DA300016FB1022002104F51A70E4F710FB1022E7 -:10DA4000002104F52270BDE81040E4F708BB10B5D2 -:10DA5000DFF8A845A822002104F11000E4F7FFFA3E -:10DA6000A822002104F5B070E4F7F9FA0520BDE81A -:10DA70001040C8E4D0B4DFF8842502F51E739C681A -:10DA8000002C02D1C2E99E0108E0D2E99E678F42D4 -:10DA900004DC01DB864201D2C2E99E01601C986071 -:10DAA000D0BC7047D0B4DFF8542502F522739C68CF -:10DAB000002C02D1C2E9A20108E0D2E9A2678F429C -:10DAC00004DC01DB864201D2C2E9A201601C98603D -:10DAD000D0BC7047D0B4DFF8242502F516739C68DB -:10DAE000002C02D1C2E9960108E0D2E99667B9425A -:10DAF00004DC01DBB04201D2C2E99601601C9860EF -:10DB0000D0BC7047D0B4DFF8F42402F51A739C68D7 -:10DB1000002C02D1C2E99A0108E0D2E99A67B94221 -:10DB200004DC01DBB04201D2C2E99A01601C9860BA -:10DB3000D0BC7047F8B507460124DFF8C05405F1A2 -:10DB40001000FFF756FFDFF87464316C814203DA8E -:10DB5000FFF77DFF0020F2BD3846FFF7E9FD070023 -:10DB600001D10220F2BD78071ED505F5B070FFF790 -:10DB700085FC000D40EA01300915C5E98401D5E9AD -:10DB80008401D6E904238B4205DC01DB824202D208 -:10DB90000024FFF7B7FFA822002105F5B070E4F7D5 -:10DBA0005EFA0420FFF72FFCF80711D505F11000ED -:10DBB000FFF764FC05F50472C2E90601D6E9062305 -:10DBC0008B4205DC01DB824202D20024FFF782FF98 -:10DBD0002046F2BD1FB5044694F8300000F0C000A6 -:10DBE000C02804D1DFF81C14201DFFF759FE94F85B -:10DBF000800000F0C000C02805D1DFF80C1404F14B -:10DC00005400FFF74DFED4F8D00000F0C001C02949 -:10DC10000BD1002001AA032818DA04EB4001B1F966 -:10DC2000A41042F82010401CF5E700F060006028C6 -:10DC300014D1002001AA07E004EB8001D1F8B8104C -:10DC4000891342F82010401C0328F5DBDFF8BC03E1 -:10DC50000090D4E9362301A8FFF76BFE1FBD00003A -:10DC6000F8B50446002004F12C077968CA0540F194 -:10DC7000278101F05001402900D1012097F854106C -:10DC800001F05001402900D1012094F8D01001F09A -:10DC90005001402900D10120DFF86053002809D04D -:10DCA000FFF7D5FE0020C5F8180285F820022046AF -:10DCB000FFF7A2FBE06AD5F8401281421ED0C5F8FA -:10DCC0004002BE4E716B0A2806DA48002860B06B2D -:10DCD000401CC5F8440203E02960B06BC5F844025B -:10DCE000D5F84402C0F11000C5F848024FF4804056 -:10DCF000C5F84C021920B16B88403064386DD5F8F6 -:10DD00005012814210D0C5F85002AC4E716B0A28F7 -:10DD100006DA48006860B06B401CC5F8540203E0A6 -:10DD20006960B06BC5F854022046FFF753FF95F8C1 -:10DD30002002062800F2C480DFE800F004122C352F -:10DD400074A4B100D5F81802411CC5F818120A28AD -:10DD5000C0F2B680FFF77BFE012085F82002AFE01D -:10DD6000D5F8B000012840F0AB802046FFF7E2FE76 -:10DD7000002803D1052085F8200204E0012802D103 -:10DD8000022085F8200205F1B800FFF703FEFFF737 -:10DD900041FE95E0032085F820022046FFF7E3FCD2 -:10DDA000FFF755FE8CE02046FFF7C4FE002857D051 -:10DDB000012840F08580D4F8D000C00523D503F0B9 -:10DDC0002DFD00281FD105F1B8073846FFF706FEE4 -:10DDD000C117C5E98201794ED6E90201D5E982234E -:10DDE000994206DC01DB904203D2052085F820022F -:10DDF0000FE03846FFF7E8FDD6E90823994208DB33 -:10DE000001DC904205D3042085F820022046FFF76C -:10DE1000AAFCD5E98401FFF745FED5E98A01FFF7A1 -:10DE200029FE4DE0D4F8D000C00514D503F0F6FC6F -:10DE3000002810D105F1B800FFF7D0FDC117C5E9E2 -:10DE400082015E48D0E90223D5E982018B4207DBDB -:10DE500001DC824204D32046FFF76CFE002803D188 -:10DE6000052085F820022BE0012829D12046FFF764 -:10DE70007AFCD5E98401FFF715FED5E98A01FFF7A1 -:10DE8000F9FD1DE0062085F82002012003F08AFA42 -:10DE9000FFF7DDFD05F1B800FFF77CFD10E020463F -:10DEA000FFF748FE012803D1022085F8200207E091 -:10DEB000002805D1FFF7CBFD05F1B800FFF76AFD9B -:10DEC0000020F2BD0021401000D0491C0128FADAE0 -:10DED0003A4801224B1C9A404263491C8163192233 -:10DEE00002FA01F10164704738B5444C4FF42672D0 -:10DEF00000212046E4F7B3F8304D5822002128468F -:10DF0000E4F7ADF80720FFF77EFA40F2DC5000217D -:10DF1000C5E906011420C5E902016420C5E9040130 -:10DF20003B48C5E908010120C4F81C021920FFF78D -:10DF3000C9FF0020C4F840029FED310AFFF746FAFE -:10DF4000002032BD10B52D4C4FF426720021204622 -:10DF5000E4F785F80720FFF756FA0120C4F81C0201 -:10DF600084F820020022032103F074FB07226421BD -:10DF70002848BDE81040FEF7FCBF10B5FFF7B4FF1E -:10DF8000040009D04FF447730FF294020FF2A80176 -:10DF9000FFF71AFA204610BD1F4803F077FB040074 -:10DFA00009D040F21F330FF278020FF28C01FFF715 -:10DFB0000BFA204610BD002010BD000090FA002092 -:10DFC00070B50026016BC90513D5D0E90E45FFF7E2 -:10DFD0000EFA201A65EB010100290ADB00DC08D3E8 -:10DFE0000E4AD2E91445A94203DC01DBA04200D26B -:10DFF0000126304670BD000065CDCD4178E300209C -:10E000000000964388E30020D8E4002030E400209C -:10E010000008AF2F61DC020845DF020890FA0020FB -:10E02000696E765F656E61626C655F666173745F71 -:10E030006E6F6D6F74000000433A5C54656D705CE8 -:10E040004955535C494B445C5461652D536F6F5C7B -:10E05000656D6265646465645F7265666572656E50 -:10E0600063655F666F725F4E6F74655F335C656D8D -:10E070006265646465645C496E76656E53656E7353 -:10E08000655C6D706C5C666173745F6E6F5F6D6F05 -:10E0900074696F6E2E63000070B52DED028B98B021 -:10E0A00005460E4608EE102A1C4695ED020AF8EECB -:10E0B000C00A95ED010AB8EEC01A95ED000AB8EE57 -:10E0C000C00A20EE000A01EE010A00EEA00A03F0E9 -:10E0D00001FBF0EE408A18EE900AE3F7D1FB21F045 -:10E0E00000410122DFF88439E3F784FF00F2B980B0 -:10E0F0009FEDD60AD6ED000AF8EEE00A60EE800A3F -:10E10000CDED040A04A8D6ED010AF8EEE00A60EEAF -:10E11000800AC0ED010AD6ED020AF8EEE00A60EED0 -:10E12000800AC0ED020AD6ED030AF8EEE00A20EEFE -:10E13000800A80ED030A0020089008A895ED000AE7 -:10E14000B8EEC00A80EE280A80ED010A95ED010ABA -:10E15000B8EEC00A80EE280A80ED020A95ED020AA8 -:10E16000B8EEC00A80EE280A80ED030A14AA08A9B6 -:10E1700004A802F006FD10A904A802F020FE00AADF -:10E1800010A914A802F0FDFC00AD95ED010AD5ED33 -:10E19000020A20EEA01A00EE001ADFEDAD1AB4EE6E -:10E1A000611AF1EE10FA02D59FEDAA1A15E0DFED23 -:10E1B000AA1AB4EE611AF1EE10FA02D59FEDA71A71 -:10E1C0000BE0DFEDA71AB4EE611AF1EE10FA02D5FA -:10E1D000B5EE001A01E09FEDA31AF8EEC81A9FED04 -:10E1E000A22AC1EE821A21EE811A00200C900CA8FE -:10E1F00060EE810AC0ED010A20EE410A80ED020ABC -:10E200000021C16000AA04A902F0BBFC00AA04A975 -:10E2100000A802F01FFD00A802F097FD9FEDD90AAB -:10E22000DDED000A60EE800AFDEEE00AC4ED000AB2 -:10E23000D5ED010A60EE800AFDEEE00AC4ED010AA8 -:10E24000D5ED020A60EE800AFDEEE00AC4ED020A96 -:10E25000D5ED030A20EE800ABDEEC00A84ED030A64 -:10E2600004E0102231462046E3F7F3FE18B0BDEC7F -:10E27000028B70BD38B52DED048B04460D4694ED30 -:10E28000020AF8EEC00A94ED010AB8EEC01A94ED45 -:10E29000000AB8EEC00A20EE000A01EE010A00EE04 -:10E2A000A00A03F017FA9FEDB88AB4EE480AF1EE1F -:10E2B00010FA3CD4D4ED020AF8EEE00A80EE809A1F -:10E2C000B7EE000A30EE490AB5EE400AF1EE10FA58 -:10E2D00001DC9FEDAE0AF6EE009A20EE290A03F06B -:10E2E000F9F9F0EE408AB7EE000A39EE000AB5EE11 -:10E2F000400AF1EE10FA01DC9FEDA40A20EE290A93 -:10E3000003F0E8F9B0EE409A94ED010AF8EEC00A85 -:10E3100094ED000AB8EEC00A20EE000A00EEA00A52 -:10E3200003F0D8F9B4EE480AF1EE10FA07D54FF031 -:10E330008040286000206860A860E86027E0DFED8A -:10E34000910A29EE201ABDEEC11A85ED001A94ED4E -:10E35000011AB8EEC11A81EE001A21EE281A61EEF8 -:10E36000200AFDEEE00AC5ED010AD4ED000AF8EE40 -:10E37000E00A80EE800A20EE280ADFED850A20EE12 -:10E38000200ABDEEC00A85ED020A0020E860BDEC5F -:10E39000048B31BD38B504460D4694ED030AF8EE02 -:10E3A000C00A94ED020AB8EEC01A94ED010AF8EE24 -:10E3B000C01A94ED000AB8EEC00A20EE000A01EE81 -:10E3C000A10A01EE010A00EEA00AB5EE400AF1EE44 -:10E3D00010FA07D84FF08040286000206860A860DD -:10E3E000E86031BD03F076F9F7EE000A80EE800AAE -:10E3F000DFED640A20EE200AD4ED000AF8EEE00A10 -:10E4000060EE800AFDEEE00AC5ED000AD4ED010AD7 -:10E41000F8EEE00A60EE800AFDEEE00AC5ED010AC2 -:10E42000D4ED020AF8EEE00A60EE800AFDEEE00AA2 -:10E43000C5ED020AD4ED030AF8EEE00A20EE800AE8 -:10E44000BDEEC00A85ED030A31BD0000000080303A -:10E4500017B75139A69BC43B0AD7233C8FC2753DE1 -:10E46000CDCC4C3ECDCCCC3E0014CD4770B588B061 -:10E47000054695F83000400640F18180A8690028E3 -:10E4800000D54042B0F5803F0DDAE969002900D59A -:10E490004942B1F5803F06DA296A002900D5494290 -:10E4A000B1F5803F67DBDFF8C815DFF8C845884263 -:10E4B0000BDAE869002800D54042884205DA286A6C -:10E4C000002800D54042884202DB0320A06301E01F -:10E4D0000220A063A86A616B81421ED0606395ED43 -:10E4E0000A0AB8EEC00ADFEDA00A80EE200ADFEDCE -:10E4F0009F0A20EE200A10EE100AE3F7C1F9DFF8B8 -:10E500007825DFF87835E3F7F3F90022DFF8703586 -:10E51000E3F74CFCE3F7CAFA20630020049004AE52 -:10E52000216BA86902F083FA7060216BE86902F040 -:10E530007EFAB060216B286A02F079FAF06000AAD6 -:10E5400004A9204602F079FA00988001009000A802 -:10E55000416889014160816889018160C1688901E0 -:10E56000C160224600A9204602F0CAFA2146204690 -:10E57000FFF710FF03E0DFF8FC040021816308B01F -:10E5800070BD00000000804E0100803F00000000D0 -:10E59000000080CE70B52DED048B8EB0044694F84B -:10E5A0005001400640F1DC80DFF8C854D4F8400147 -:10E5B0002968401A00D54042D4F86411DFF8C42419 -:10E5C0005143814202DA0320A86301E00220A863DC -:10E5D000D4F85001810505D5294604F5A070FFF750 -:10E5E000D9FEBDE0800407D54FF08040A86400202C -:10E5F000E8642865686597E0002103A8FEF7C1FB81 -:10E600000C2205F13C0103A802F06AFE002805D1A6 -:10E61000D4F86001A96D884200F0868000AB03AA9F -:10E62000616A206880B202F07DFC00AE96ED020ABD -:10E63000F8EEC00A96ED010AB8EEC01A9DED000A88 -:10E64000B8EEC00A20EE000A01EE010A00EEA00AB0 -:10E6500003F040F8B0EE408A9FED450A28EE000A2C -:10E66000DFED440A80EE200AD4ED580AF8EEE00A05 -:10E6700020EE200ADFEDD10AC0EE208AB0EE680A53 -:10E6800003F0D4F8B0EE409AB0EE680A03F0D1F887 -:10E69000F0EE000AB4EE608AF1EE10FA07D54FF002 -:10E6A0008040A8640020E8642865686533E0DFEDF9 -:10E6B000C40A29EE201ABDEEC11A85ED121A20EE09 -:10E6C000200ADDED000AF8EEE00A60EE200AC0EE56 -:10E6D000880AF1EE600AFDEEE00AC5ED130AD6EDF8 -:10E6E000010AF8EEE00A60EE200AC0EE880AF1EEB8 -:10E6F000600AFDEEE00AC5ED140AD6ED020AF8EE56 -:10E70000E00A20EE200A80EE080AB1EE400ABDEED3 -:10E71000C00A85ED150A0C2203A905F13C00E3F7B8 -:10E7200098FCD4F86001A86504F5A07406AA05F168 -:10E730004801204602F081F90AAA06A905F15C0009 -:10E7400002F07BF905F15C01204602F0ECF906AA23 -:10E750000AA9284602F071F9294606A8FFF71AFE11 -:10E760000EB0BDEC048B70BD002474490000004E57 -:10E77000DB0F49400000344B2DE9F04F93B00746C2 -:10E78000012407F13005286DBA4E00F050014029F0 -:10E7900004D0F16E002912D0400610D506F1100108 -:10E7A00007F16800FFF766FDD7F85001C00519D5DD -:10E7B00006F15C0107F5A07002F0B5F912E0D7F898 -:10E7C000500100F05002402A03D0002915D0400625 -:10E7D00013D506F15C0107F5A07002F0A4F9286DCD -:10E7E000C0050AD500A9304602F09DF906F12002C5 -:10E7F00000A906F1100002F020F9D7F85001C00579 -:10E80000384602D5FFF7C6FE01E0FFF72FFE06F1FE -:10E810001002314606F1200002F00FF995F8500081 -:10E82000400640F1C780386BD7F850110843C00547 -:10E8300040F1AC8004AA07F1680106F1100002F073 -:10E8400081F9D5F840A04FEAEA7BE86BC117AA6BC3 -:10E85000D317A2FB028902FB039903FB0299A0FBD9 -:10E86000002300FB013301FB003318EB020049EBEE -:10E870000301AAFB0A230AFB0B330BFB0A338018A4 -:10E88000594102292FDB02DCB0F1804F2BD307A8BE -:10E8900002F053FE07A8D0F808A04FEAEA7B4068D0 -:10E8A000C117079AD317A2FB028902FB039903FB46 -:10E8B0000299A0FB002300FB013301FB003318EB9E -:10E8C000020049EB0301AAFB0A230AFB0B330BFBF3 -:10E8D0000A3380185941022905DB02DCB0F1804F70 -:10E8E00001D30420B063B06B042801D1002417E0E9 -:10E8F000022801D0032808D1A96C41F2883291FB8B -:10E90000F2F4012C0CDA01240AE0012808D1A96CE8 -:10E9100041F2883291FBF2F1012900DA21464C00E4 -:10E92000032800D0A4005848444300200A900AADB0 -:10E9300021460598800202F07AF868602146049822 -:10E940004042800202F073F8A86000200D900EAAE9 -:10E9500006F110010AA802F070F806F110020EA9E3 -:10E9600006F1100002F0CCF806F1100106F11000DB -:10E97000FFF710FD00A9304602F0D5F806F120029D -:10E9800000A906F1100002F058F813E006F1100398 -:10E99000AA6C06F1100107F16800FFF77DFB00A9E2 -:10E9A000304602F0C0F806F1200200A906F110007E -:10E9B00002F043F8002013B0BDE8F08F0024F449C2 -:10E9C0000000804E38B50446206BC0050AD404F11F -:10E9D0003000006DC00505D4D4F85001C00501D445 -:10E9E000002032BD234DD4F8500100F4A060B0F5F2 -:10E9F000A06F09D1102204F5A07105F11000E3F712 -:10EA000028FB0120E86604E02046FFF7B5FE002061 -:10EA1000E86604F13000D0E9022305F1100002F0AD -:10EA200091FC002032BD10B5124C7022002120460E -:10EA3000E3F715FB4FF08040206120602062E06327 -:10EA4000E065002010BD80B5FFF7EDFF002805D17F -:10EA50000FF20D00BDE8024002F018BE02BD00003A -:10EA60001322C8210948FEF784BA00000000D040F4 -:10EA7000010064000CF90020112D4454FB21894051 -:10EA80000080664071981C00A69BC400C5E902087E -:10EA900038B50446DFF8985368680870D5E9020174 -:10EAA000C2E90001686A9FED600A296A002920D442 -:10EAB00000EE900AF8EEE00A60EE800AC4ED000A6B -:10EAC000D5ED0A0AF8EEE00A60EE800AC4ED010A0C -:10EAD000D5ED0B0AF8EEE00A60EE800AC4ED020AFA -:10EAE000D5ED080AF8EEE00A20EE800A84ED030A6C -:10EAF00026E0404200EE900AF8EEE00A60EE800A5E -:10EB0000C4ED000AA86A404200EE900AF8EEE00A5E -:10EB100060EE800AC4ED010AE86A404200EE900A05 -:10EB2000F8EEE00A60EE800AC4ED020A286A40426C -:10EB300000EE900AF8EEE00A20EE800A84ED030A67 -:10EB400002F01BFD84ED040AE86B32BD70B588B09D -:10EB50000446164604A8FEF7E7FADFF8D452D5E9D2 -:10EB60000201C5E90401C6E9000100A802F065FC44 -:10EB700000A841689FED2C0A009A002A20D400EEDC -:10EB8000901AF8EEE00A60EE800AC4ED000AD0EDBB -:10EB9000020AF8EEE00A60EE800AC4ED010AD0ED48 -:10EBA000030AF8EEE00A60EE800AC4ED020ADDED29 -:10EBB000000AF8EEE00A20EE800A84ED030A26E05F -:10EBC000494200EE901AF8EEE00A60EE800AC4EDC9 -:10EBD000000A8168494200EE901AF8EEE00A60EE01 -:10EBE000800AC4ED010AC068404200EE900AF8EEC7 -:10EBF000E00A60EE800AC4ED020A0098404200EE8E -:10EC0000900AF8EEE00A20EE800A84ED030A002064 -:10EC10002061686B801100F00100296C891101F0FE -:10EC20000101084308B070BD000080302DE9FF41AC -:10EC3000044600254FF47A787D4E06F10802311D16 -:10EC400006F1200002F01CFC04F12C025068306335 -:10EC500004F13800816C716304F1CC077968B16309 -:10EC600004F1D8018B6F33645268D30501D5D4F811 -:10EC70002C80836C5FEAC35C05D5D0F844C0C445E2 -:10EC800001DAE0460125D7F804C05FEACC5E05D57D -:10EC9000D4F8CCE0C64501DAF0460225896F5FEA78 -:10ECA000C15E04D5D4F864E1C64500DA03255FEA05 -:10ECB000C15E07D50CEA030E5FEACE5E0BD44FF0BF -:10ECC000FF3508E003EA020E0CEA0E0E5FEACE5EA4 -:10ECD00001D44FF0FF35002D05D0022D1BD00ED3EF -:10ECE000032D24D02FE002F04000401E8041C0439D -:10ECF000C00FF063D4E90E01C6E9020125E003F07C -:10ED00004001491E8941C943C90FF163D0E9142369 -:10ED1000C6E9022319E00CF04000401E8041C043C8 -:10ED2000C00FF063D4E93601C6E902010DE001F03D -:10ED30004000401E8041C043C00FF063D4E956013B -:10ED4000C6E9020101E00020F06306F1180200A903 -:10ED500001A8FEF700FA9DF90000306000240DE0E4 -:10ED600040060AD501A850F8240000EE100ABAEEB9 -:10ED7000C80A06EB840080ED320A641C032C2CDAEE -:10ED8000387900F0500040280CD101A850F8240038 -:10ED900000EE100AB8EEC00A2C2000FB04604430DC -:10EDA00002F006F9786800F0C001C029D8D101A8A6 -:10EDB00050F8240000EE100AB8EEC00A2C2000FB28 -:10EDC0000460443002F009F9DFED180A20EE200A51 -:10EDD00006EB840080ED320ACFE7002004B0BDE8E6 -:10EDE000F08137224FF461711248FEF7C2B838B58E -:10EDF0000F4CD82200212046E3F731F9002508E026 -:10EE000004F1D8012C2000FB0540443002F0C1F889 -:10EE10006D1C032DF4DB002032BD80B5FFF7E7FF4A -:10EE20000548BDE8024002F031BC00000000803718 -:10EE3000E8AD00202DEC0208E3ED02082DE9F041D9 -:10EE40002DED048B84B004460F4690461D46DFF836 -:10EE500094683C2206F10C01304602F0EDFC502291 -:10EE600006F1580106F1480002F0E6FC0C2241468A -:10EE700006F13C00E3F7EDF81022394606F1980060 -:10EE8000E3F7E7F89FEDA29AD6F85C01401CC6F8BC -:10EE90005C01072802DB0620C6F85C01D6F85C019D -:10EEA000C0F1060722E000AA06EB071000F14801B6 -:10EEB000284601F066FE00AA07EB470006EB80013A -:10EEC00004F1B80001F030FDF0EE409A19EE900A1E -:10EED000E2F7D6FC21F0004153EC182B23F000435D -:10EEE000E3F7A0F801D2B0EE699A7F1C19EE100A80 -:10EEF000E2F7C6FC41EC180B062FD4DBB0EE480A53 -:10EF0000F0EE680A04B0BDEC048BBDE8F0810000AF -:10EF10002DE9F84F2DED088BB0EE409AF0EE609A97 -:10EF20000C46904600259FED78ABB0EE4A8AF0EE95 -:10EF30006A8A416B002904D4D0F8D400032800D198 -:10EF40000125DFF8A067482206F1C80106F1C000DC -:10EF500002F072FC06F1B80989ED149B00270CE061 -:10EF600053EC182B06EBC700D0F8C410D0F8C00043 -:10EF7000E2F7E8FD41EC180B7F1C0A2FF0DB51ECA7 -:10EF8000180B0022DFF86037E2F710FF41EC1B0B93 -:10EF900089ED16BB322C2FDBC820C6F85401404641 -:10EFA000E2F7B8FD41EC1A0B51EC190B0022DFF827 -:10EFB0003C37E2F7FBFE53EC1A2BE2F799FC0022F8 -:10EFC000DFF84C37E2F7F2FE41EC180BB4F57A7F2C -:10EFD00045DB51EC190B0022DFF81437E2F7E6FEAF -:10EFE00053EC1A2BE2F784FC0022DFF82437E2F717 -:10EFF000DDFE41EC180B32E0D6F8540141F28831C5 -:10F0000098FBF1F101EB8101401AC6F8540102D5D9 -:10F010000020C6F8540151EC190B0022DFF8D43659 -:10F02000E2F7C4FE82468B464046E2F773FD524645 -:10F030005B46E2F75DFC0022DFF8D436E2F7B6FE6D -:10F0400041EC180BD6F85401002808D106F5AA7037 -:10F05000C068012803D1B0EE4A8AF0EE6A8A06F54C -:10F06000AA704068002803D0B0EE498AF0EE698AA1 -:10F07000DFF88406804503D1B0EE498AF0EE698A54 -:10F0800053EC182B00200146F1F726F801D089ED4A -:10F0900018BBD9E9180153EC1B2BE2F7C7FD21F08F -:10F0A0000041DFF85826DFF85836E2F7A3FF22D8F0 -:10F0B000D6E92E2300200146F1F70EF81BD1012DD1 -:10F0C00019D1C820C6F8540151EC190B0022DFF801 -:10F0D0002436E2F76BFE04460D464046E2F71AFD81 -:10F0E00022462B46E2F704FC0022DFF82436E2F742 -:10F0F0005DFE41EC180BB0EE480AF0EE680ABDEC7C -:10F10000088BBDE8F18F0000000000000000000047 -:10F11000002474492DE9F0472DED0C8BAEB0044668 -:10F1200019A800210A460B460EC00846DFF8B45560 -:10F130000DE005EB800191ED2A0AB8EEC00A20EE41 -:10F14000090A12A901EB800181ED000A401C9FED24 -:10F15000CB9A0428EDDB06A802F06FF99DED060AB4 -:10F16000B8EEC00A20EE090A8DED1C0A06A81CA9FB -:10F1700090ED010AB8EEC00A20EE090A81ED010AFD -:10F1800090ED020AB8EEC00A20EE090A81ED020AEB -:10F1900090ED030AB8EEC00A20EE090A81ED030AD9 -:10F1A00002A802F04AF902AEF168706801F039FC79 -:10F1B00007460299B06801F034FC381A1690F168DD -:10F1C000B06801F02EFC804616AF0299706801F01D -:10F1D00028FC40447860F068014601F022FC0646B5 -:10F1E0000299084601F01DFC8019A0F18040B8602A -:10F1F00012AB16AA1CA92046FFF720FEB0EE408AEB -:10F20000F0EE608A9FEDE3AB00261DE004EB860084 -:10F210008069E2F77FFC41EC1B0B9FEDE0CB53ECE8 -:10F220001B2B51EC1C0BE2F763FB53EC1B2BE2F79F -:10F230005FFB53EC1C2BE2F75BFB53EC1A2BE2F762 -:10F2400081FC41EC1A0B761C032EDFDB51EC1A0B10 -:10F25000F1F708F900EE100A02F03CFA10EE100A7D -:10F26000E2F70EFB05F5AC7696ED08BB53EC1B2BD5 -:10F27000E2F7DCFC41EC1C0B86ED0ACB9FEDC9AB41 -:10F2800053EC1C2B51EC1A0BE2F732FB41EC1D0B3B -:10F2900086ED0CDB53EC1B2BE2F754FCC6E90801AE -:10F2A0009FEDC2BB53EC1C2B51EC1D0BE2F720FB76 -:10F2B000D6E90E23E2F746FC53EC1B2BE2F718FBD2 -:10F2C000C6E90E014FF0000802F0A8FA002808D1A4 -:10F2D000D6E90E01DFF82C24DFF82C34E2F7A2FE89 -:10F2E0000AD2D5F85801002806D12046FEF768FE5C -:10F2F000012801D14FF0010804F1180001F084FB4E -:10F3000081093269DFF8F003824200DB0246B0EE89 -:10F31000480AF0EE680A2046FFF7FAFD85ED2E0B4D -:10F3200053EC102BD5E94801E2F7E2FAC5E92E01CA -:10F3300024A902A801F058FD05F59A7706AA02A9AA -:10F34000384601F07AFB394602A801F0ECFB0022B6 -:10F3500018E002EB4207DF190DF1900C5CF8277002 -:10F360000DF1180C0CEB830CDCF804C0CCFB07018E -:10F370005B1C032BEDDB19AB800F40EA810043F8E7 -:10F380002200521C032A03DA002001460346F0E75C -:10F3900019AFD5F85801002801D00020B860D7F87F -:10F3A0000890C9F1000000EE100AB8EEC00A20EE85 -:10F3B000098AB0EE480A02F039FA8DED0E0A0DF115 -:10F3C000380A0020CAF80400CAF80800B0EE480A5B -:10F3D00002F02FFA8AED030A306941F2883190FB7E -:10F3E000F1F000EE100AB8EEC00A00EE909AF8EEC6 -:10F3F000E00A9FEDBB1AC0EE810AC0EE800AB0EEB3 -:10F40000001AC0EE810AFDEEE00A10EE900A4000FC -:10F4100000EE900AF8EEE00A9FEDB11A60EE810A64 -:10F4200020EE800ABDEEC00A87ED020AB8EEC00ADF -:10F4300020EE098AB0EE480A02F0F8F98DED0A0ACA -:10F440000DF128090020C9F80400C9F80800B0EE41 -:10F45000480A02F0EEF989ED030A20AA0EA912A8C3 -:10F4600001F08FFB0EAA0AA920A801F08AFBD4F8AC -:10F47000D400012816DB002212E000BF000080301B -:10F480005AF8220000EE100A12A800EB820080ED6C -:10F49000000ABEEEC10A05EB820080ED2A0A521C6A -:10F4A000042AEDDB95ED2E8BD5F85871002F01D095 -:10F4B00086ED068BD6E9062351EC1B0BE2F718FA12 -:10F4C000CDE9000153EC182B51EC1A0BE2F710FABE -:10F4D000DDE90023E2F736FB41EC100B85ED2E0B46 -:10F4E00086ED060BD4F8D400032802D1B8F1000F42 -:10F4F00001D0002F3FD09FED878B53EC102B51ECA8 -:10F50000180BE2F7F5F9F0F7ADFF00EE100A02F084 -:10F510008DF98DED0A0A0020C9F80400C9F8080029 -:10F52000D5E92E2351EC180BE2F7E2F9F0F79AFF38 -:10F5300000EE100A02F07DF989ED030A0EAA0AA96D -:10F5400012A801F01EFB0EA801F0A5FB00220AE0A4 -:10F550000AEB820090ED000ABEEEC10A05EB8200C4 -:10F5600080ED2A0A521C042AF2DBD4E9362305F185 -:10F57000A80001F0FBFED5F85801002804D00021B6 -:10F580007160401EC5F858012EB0BDEC0C8BBDE873 -:10F59000F08700BF00000000000000000000000035 -:10F5A0000000F03E989999999999B93FCDCCCCCC6F -:10F5B000CCCCEC3FF8B5044604F1C801494800F54D -:10F5C000AC750A7AD20604D40322C0F8582100226E -:10F5D0006A60D4F85021D2050CD4226BD20503D531 -:10F5E000D4F88020D20505D40321C0F8581100209A -:10F5F0006860F2BD6A69002A0DD0D1E90423D1E91F -:10F600000667901B63EB07014FF47A720023EEF755 -:10F61000C3F8286115E0D4F8C81044F6206291427E -:10F6200001DB29610DE0EB68C918E960914205DA58 -:10F63000D0F85801002801D10020F2BD2961002036 -:10F64000E8602046FFF766FD0020F2BD10B5254CAE -:10F650004FF4D07200212046E2F701FD4FF08040C8 -:10F66000C4F83401C4F8A8000022134604F1A8002D -:10F6700001F07CFE4FF47A70C4F854010020234955 -:10F68000C4E948019FED250B84ED5C0B04F5B870CF -:10F6900080ED020B80ED040B80ED060B80ED080B76 -:10F6A00010BD1049C1F86001002070470D49C1F834 -:10F6B0006C010020704704224FF416711948FDF7C1 -:10F6C00058BC80B5FFF7C2FF0020FFF7EAFF00201B -:10F6D000FFF7ECFF1448BDE8024001F0D7BF00007F -:10F6E000E1023747D0EB00200000244000006940D1 -:10F6F000000049400000794040420F001383C0CA17 -:10F70000A145B63F7B14AE47E17A843F0000F03F4D -:10F710000088B340000000000000E03F000000004F -:10F7200000000000B5F50208B7F6020880B5B8225F -:10F730000146DFF8FC04E2F78CFC002002BD80B536 -:10F74000B822DFF8EC14E2F784FC002002BDF0B52B -:10F7500085B0044600A902A8FDF713FB01A801F03B -:10F7600019FE02283FD0D4F808010099461ADFF8A4 -:10F77000C04494F8B000002848D0002E46D0F717B7 -:10F78000029D2268D317A2FB060102FB071103FBAF -:10F790000611000C40EA01404019029002ADD5F874 -:10F7A00004C06268D317A2FB060102FB071103FB2A -:10F7B0000611000C40EA014060446860D5F808C0BA -:10F7C000A068C117A0FB062300FB073301FB06332B -:10F7D000120C42EA034202EB0C00A860032102A8CB -:10F7E000FDF791FA12E0606B03280FD1FDF7BCFA28 -:10F7F00000280BD0DFF838440C2202A904F10C00D9 -:10F80000E2F727FC0098A06100F003F8002005B0A3 -:10F81000F0BD2DE9F04F87B0DFF814048069DFF800 -:10F820001464B168884200DAB060F168814200DA9D -:10F83000F060F168B268891A3269914201DA0020F9 -:10F84000C2E10014C117CDE900017068401C70606E -:10F85000DDE90001DDE90023A2FB004502FB0155C3 -:10F8600003FB0055CDE90245DDE90201DDE9002396 -:10F87000A2FB004502FB015503FB0055CDE9044501 -:10F88000D6E90E01DDE9002380185941C6E90E01D1 -:10F89000D6E90C01DDE9022380185941C6E90C01C3 -:10F8A000D6E91C01DDE9042380185941C6E91C0191 -:10F8B000DFF87C03D0E92A23DDE90401DDE9004516 -:10F8C000A4FB008904FB019905FB009912EB0800D9 -:10F8D00043EB0901DFF85823C2E92A01002445E07F -:10F8E000DFF84C0300EB840500EBC407D7E90CAB51 -:10F8F000DDE90023E868C117A0FB028900FB03993A -:10F9000001FB02991AEB08004BEB0901C7E90C0156 -:10F910003037D7E90A01DDE90289EA68D317A2FB8B -:10F9200008AB02FB09BB03FB08BB10EB0A0041EB71 -:10F930000B01C7E90A01D7E91001EA68801851EB09 -:10F94000E271C7E91001D7E918ABDDE90401EA6803 -:10F95000D317A2FB008902FB019903FB00991AEB64 -:10F9600008004BEB0901C7E91801641C032CB7DB45 -:10F970007068B0F57A7FC0F2938000EBC000093068 -:10F980000A2190FBF1F070604FF00908D6E90E01F2 -:10F99000A8FB002308FB013312F1090043F1000129 -:10F9A0000A220023EDF7F8FEC6E90E01D6E90C01A4 +:10C2700000000000000000000000000000000000BE +:10C2800000000000000000000000000000000000AE +:10C29000677DDF7E72902E554CF6E6880000000028 +:10C2A000000000000000000000000000D8DCB4B86E +:10C2B000B0D8B9ABF3F8FAB3B7BB8E9EAEF132F596 +:10C2C0001BF1B4B8B08097F1A9DFDFDFAADFDFDFB1 +:10C2D000F2AAC5CDC7A90CC92C97F1A98926466633 +:10C2E000B28999A92D557DB08AA896365676F1BAAD +:10C2F000A3B4B280C0B8A89711B28398BAA3F024AF +:10C300000844106418B2B9B49883F1A329557DBAD2 +:10C31000B5B1A38393F0002850F5B2B6AA83932851 +:10C32000547CF1B9A3829361BAA2DADEDFDB819A91 +:10C33000B9AEF5606870F1DABAA2DFD9BAA2FAB97B +:10C34000A38292DB31BAA2D9BAA2F8DFB9A3A3A320 +:10C35000A3A3B8A2DFDFDFBAA0DFDFDFD8F1B9A186 +:10C36000B280C0B089A0C3C5C7B181B497A011B5D0 +:10C3700090A1F0240844106418F19081A02D553D3F +:10C38000F2A5D0F8F9D1D9F8F180A2C3C5C7D8F386 +:10C39000A2DEF18290A42D557D8494F5A120D9F3DD +:10C3A000A2F8D8F5A140D9F3A2F8D8F5A160D9F345 +:10C3B000A2F8D8F2B9A2F8F9D1D9A6DEA5D0DEF458 +:10C3C0001AD8F28696A109D1DBF411D8F211D1DB8B +:10C3D000F41CD8F219D1DBF414D8F410D8F3A2F875 +:10C3E000F9D1DAF2A6F8F1A5DED8F4A11616D8F143 +:10C3F000A5F8A1859509D9F1A5DEF2A5D0DEA6F8AC +:10C40000D8F4A109D8F3A2F8F9D1F4D90819DA427D +:10C41000F2A2DEF40BD8F1A5F8A1859519DAF4079C +:10C42000D8F2A6DEA5D0DED8F1B8AAB38DB4980DA7 +:10C43000355DB2B6BAAF8C96198F9FA70E161EB493 +:10C440009AB8AA872C547CBAA4B08AB69132567690 +:10C45000B28494A4C808CDD8B8B4B0F19982A82DFC +:10C46000557D98A80E161EA22C547C92A4F02C5038 +:10C4700078F184A898C4CDFCD80DDBA8FC2DF3D9A5 +:10C48000BAA6F8DABAA6DED8BAB2B68696A6D0F3BD +:10C49000C841DAA6C8F8D8B0B4B882A892F52C542E +:10C4A0008898F135D9F418D8F1A2D0F8F9A884D930 +:10C4B000C7DFF8F883C5DADF69DF83C1D8F4011478 +:10C4C000F1A8824EA884F311D182F5D992289788D9 +:10C4D000F109F41C1CD884A8F3C0F9D1D99782F1D2 +:10C4E00029F40DD8F3F9F9D1D982F4C203D8DEDFEB +:10C4F0001AD8F1A2FAF9A88498D9C7DFF8F8F88316 +:10C50000C7DADF69DFF883C3D8F40114F198A88291 +:10C510002EA884F311D182F5D992509788F109F4AD +:10C520001CD884A8F3C0F8F9D1D99782F149F40D49 +:10C53000D8F3F9F9D1D982F4C403D8DEDFD8F1AD4C +:10C540008898CCA809F9D98292A8F57CF1883ACFCD +:10C55000944A6E98DB6931DAADF2DEF9D88795A896 +:10C56000F221D1DAA5F9F417D9F1AE8ED0C0C3AE5D +:10C5700082C684C3A88595C8A588F2C0F1F4010ECF +:10C58000F18E9EA8C63E56F554F18872F40115F15D +:10C590009845856EF58E9E0488F142985A8E9E06C7 +:10C5A0008869F4011CF1981E1108D0F504F11E975A +:10C5B0000202983625DBF9D985A5F3C1DA85A5F302 +:10C5C000DFD88595A8F309DAA5FAD88292A8F5787C +:10C5D000F1881A849F26889821DAF41DF3D8879F62 +:10C5E00039D1AFD9DFDFFBF9F40CF3D8FAD0F8DAA0 +:10C5F000F9F9D0DFD9F9D8F40BD8F3879F39D1AF47 +:10C60000D9DFDFF41DF3D8FAFCA869F9F9AFD0DA65 +:10C61000DEFAD9F88F9FA8F1CCF398DB45D9AFDFCC +:10C62000D0F8D8F18F9FA8CAF38809DAAF8FCBF87A +:10C63000D8F2AD978D0CD9A5DFF9BAA6F3FAF412AA +:10C64000F2D8950DD1D9BAA6F3FADAA5F2C1BAA6F5 +:10C65000F3DFD8F1BAB2B68696A6D0CAF349DAA605 +:10C66000CBF8D8B0B4B8D8AD84F2C0DFF18FCBC36B +:10C67000A8B2B68696C8C1CBC3F3B0B48898A82137 +:10C68000DB718D9D71859521D9ADF2FAD88597A87A +:10C6900028D9F408D8F28D29DAF405D9F285A4C294 +:10C6A000F2D8A88D9401D1D9F411F2D88721D8F409 +:10C6B0000AD8F28498A8C801D1D9F411D8F3A4C833 +:10C6C000BBAFD0F2DEF8F8F8F8F8F8F8F8D8F1D8FF +:10C6D000B8B4B09786A8319B069907AB9728889B7A +:10C6E000F00C201440B0B4B8F0A88A9A285078B75B +:10C6F0009BA8295179247059446938644831F1BBA9 +:10C70000AB88002C547CF0B38BB8A804285078F187 +:10C71000B088B49726A85998BBABB38B022646665F +:10C72000B0B8F08A9CA82951798B2951798A247054 +:10C73000598B2058718A4469388B3940688A64481B +:10C74000318B30496088F1AC002C547CF08CA8040B +:10C75000285078F1889726A85998AC8C022646660E +:10C76000F0899CA82951792470594469386448316A +:10C77000A98809205970AB11384069A8193148605F +:10C780008CA83C415C207C00F187981986A86E76C5 +:10C790007EA999882D557DD8B1B5B9A3DFDFDFAE6D +:10C7A000D0DFAAD0DEF2ABF8F9D9B087C4AAF1DFA6 +:10C7B000DFBBAFDFDFB9D8B1F1A38EC6DFB084F243 +:10C7C000C8F8F9D9DED89385F14AB183A308B583B7 +:10C7D0009A0810B79F10D8F1B0BAAEB08AC2B2B6FC +:10C7E0008E9EF1FBD9F41DD8F9D90CF1D8F8F8AD2B +:10C7F00061D9AEFBD8F40CF1D8F8F8AD19D9AEFB7D +:10C80000DFD8F416F1D8F8AD8D61D9F4F4ACF59C0D +:10C810009C8DDF2BBAB6AEFAF8F40BD8F1AED0F897 +:10C82000AD51DAAEFAF8F1D8B9B1B6A3839C08B924 +:10C83000B1839AB5AAC0FD3083B79F10B58B93F230 +:10C840000202D1ABDADED8F1B080BAABC0C3B28499 +:10C85000C1C3D8F3B9ACDED8B1B9F38BA391B60993 +:10C86000B4D9B9ACF8ABDEB0879CB9A3DDF1B38B1A +:10C870008B8B8B8BB087A3A3A3A3B080B490F2A3C0 +:10C88000A3A3A3A3A3A3A3A3A3F1B087B59AA3F3E0 +:10C890009BA3A3DCBAACDFB9A3A3A3A3A3A3A3A3C5 +:10C8A000A3A3A3A3A3A3A3D8F3B9ACF8F9D1D9F454 +:10C8B0001BD8F3FAF9D1D9F41BD8F2B1B5B98CACC5 +:10C8C000F8F9D1D9C2D8F2F9D9DEF40913DAF2DDD8 +:10C8D000C6DCF43111D8F2ABFA8B9BA349D9F4072B +:10C8E00006DAF2B9ABDFFED8F1BBB3B7AAF9DAFFCB +:10C8F000D9809AAA28B48098A720B79787A8668875 +:10C90000F07951F1902C870CA781976293F07171A7 +:10C910006085940129517990A5F1284C6C870C957C +:10C92000188578A38390284C6C886CD8F3A2820079 +:10C93000F210A8921980A2F2D926D8F188A84DD970 +:10C9400048D896A83980D93CD89580A839A6869829 +:10C95000D92CDA87A72CD8A8899519A980D938D8D5 +:10C96000A88939A980DA3CD8A82EA83990D90CD842 +:10C97000A8953198D90CD8A809D9FFD801DAFFD8E1 +:10C980009539A9DA26FFD890A80D8999A810809822 +:10C9900021DA2ED88999A83180DA2ED8A886963146 +:10C9A00080DA2ED8A8873180DA2ED8A88292F34177 +:10C9B00080F1D92ED8A882F31980F1D92ED882AC73 +:10C9C000F3C0A28022F1A62EA72EA92298A829DAC8 +:10C9D000ACDEFFD8A2F22AF1A92E8292A8F2318011 +:10C9E000A696F1D900F1F1F1AC8C9C0C30ACDED004 +:10C9F000DEFFD88C9CACD010ACDE8092A2F24C82D0 +:10CA0000A8F1CAF235F19688A6D900D8FF00000037 +:10CA1000014804F0A6BC000050FE002010B5DFF86D +:10CA200060484822014604F54570E5F720FBD4F83C +:10CA30005003606304F554704168C4F88410806842 +:10CA4000C4F8D400032802D1012004F082FD0020A4 +:10CA500010BD80B54822DFF83818E5F708FB002044 +:10CA600002BD80B50C220146DFF82808E5F7FFFA81 +:10CA7000002002BD80B50C22DFF81818E5F7F7FAA0 +:10CA8000002002BD10B5DFF810484FF4A672002157 +:10CA900004F50870E5F7F1FA4FF40872002120461A +:10CAA000E5F7EBFA00F0C7FB4DF294034822DFF8FC +:10CAB000EC17DFF8EC0704F0A8FD04464CF2513304 +:10CAC0000C22DFF8E017DFF8E00704F09EFD2043BA +:10CAD00010BD0023002A01D14FF48032426201F0E0 +:10CAE0000302032A00D1012301F01802182A00D101 +:10CAF000012301F0C002C02A00D10123002B00D085 +:10CB00008821016070470A460146DFF88C07E0E79C +:10CB1000DFF86C1788624FF47A7290FBF2F2CA6207 +:10CB20008A6C002A04D1DFF8842792FBF0F0886435 +:10CB30007047DFF84C17886778314FF47A7290FBB2 +:10CB4000F2F24A600A6A002A04D1DFF8602792FBF9 +:10CB5000F0F008627047DFF82817C1F8C800C83144 +:10CB60004FF47A7290FBF2F24A600A6A002A04D10A +:10CB7000DFF8382792FBF0F008627047DFF81817EB +:10CB8000C1F860014FF47A7290FBF2F0C1F86401D1 +:10CB90007047DFF80407D0F8D000001200F0010061 +:10CBA0007047DFF8F406006B001200F001007047D8 +:10CBB000DFF8E406D0F88000001200F001007047B2 +:10CBC00030B400200146DFF8D02602F130031C6D9E +:10CBD000E40501D5D3E91601146BE40508D5D3E9C2 +:10CBE0000245A94204DC01DBA04201D220462946CD +:10CBF00002F1D003D2F8D040E40508D5D3E90245CC +:10CC0000A94204DC01DBA04201D2204629461C6D6A +:10CC1000E40508D5D3E91645A94204DC01DBA042AE +:10CC200001D220462946D2F85031DB050AD502F55B +:10CC3000A874D4E90223994204DC01DB904201D2BA +:10CC40001046194630BC70470A460146DFF86006B8 +:10CC50003FE70A460146DFF85C063AE770B584B064 +:10CC600004460D46B4F90400C003009000AEB4F9C8 +:10CC70000600C0037060B4F90800C003B06004F19E +:10CC80000C0300AA606A4100206880B204F05AF9DF +:10CC900000982968A0EB6100009070686968A0EBBB +:10CCA00061007060B068A968A0EB6100B06004F139 +:10CCB000180300AA606A4100206880B204F042F9BB +:10CCC000206B40F0200020637FBDDFF8CC15C1F859 +:10CCD0008400C1F85403704738B50C46002818D0BA +:10CCE000DFF8B435D10702D50168C3F834139107D2 +:10CCF00003D503F54D7145684D60510703D503F524 +:10CD00004D718068886003F54D7103F15000FFF7A5 +:10CD1000A5FF2046FFF7D9FF002210210846BDE8F5 +:10CD2000384004F0A7BCF8B504460D46DFF8686546 +:10CD3000002C12D006F557770C222146384604F015 +:10CD4000DFFA002809D00C2221463846E5F78FF992 +:10CD500006F557713046FFF781FF756306F54B7492 +:10CD60006562D6F80801002802D0C6F82C0303E05B +:10CD70004FF4D810C6F82C0300220421084604F012 +:10CD800079FC01206060F1BDDFF80C15D1F83003AB +:10CD9000012801D1012000E000200022C1F8302349 +:10CDA000704710B50C46002804D00C22DFF8E414BC +:10CDB000E5F75DF9002C04D0DFF8DC04D0F82C0393 +:10CDC000206010BDF8B514461D46DFF8CC6406F1AE +:10CDD000540702688B0610D4A6F854204168798065 +:10CDE0008068B880F86A40F08000F86206F54D71FE +:10CDF00006F15000FFF732FF0DE07A614268BA6138 +:10CE00008068F861F86A40F02000F86201F00300E1 +:10CE10003863C6F85403F86A40F4A070F862D6E9A3 +:10CE20002201C6E92401C6E922450020F2BD70B501 +:10CE300014461D46DFF8606406220146301DE5F702 +:10CE400016F9306B40F4E0703063D6E90E01C6E9A4 +:10CE50001001C6E90E4506F557713046FFF7FEFE94 +:10CE6000002070BDFEB514461D46DFF82C6406F1A7 +:10CE7000A4078A0617D400F0B8F900A800F0A8F9B2 +:10CE80000098A6F8A40000A8416879808068B8805E +:10CE900006F5457106F1A000FFF7E0FEF86A40F0E4 +:10CEA0008000F8620EE002687A614268BA618068C8 +:10CEB000F861F86A40F02000F86201F0030038637E +:10CEC000C6F85803D6E93601C6E93801C6E9364541 +:10CED000F86A40F4A070F8620020FEBD2DE9F0432E +:10CEE00085B006460F4614461D46DFF8AC8308F5AC +:10CEF000A079F80409D500A9304604F09AF9102267 +:10CF000000A94846E5F7B3F804E010223146484648 +:10CF1000E5F7ADF8C8E95645D8F8500107F438519F +:10CF200041F4E0710843C8F85001D8F8500110F4FA +:10CF3000406F04D022462B46304604F013FAD8F84E +:10CF4000500100050AD500A80FF270311022E7F752 +:10CF5000C7FE22462B4600A804F018FA002005B0B0 +:10CF6000BDE8F083DFF830030021C0F8801070477F +:10CF7000DFF824030021C0F8D0107047DFF8180351 +:10CF80000021C0F850117047DFF80C030021016345 +:10CF900070472DE9F04300231C4600E0641CDFF8D5 +:10CFA000F852D5F82062B4420DDA0C2707FB04557D +:10CFB000D5F824620746BE4203D0D5F828528D42E8 +:10CFC000ECD1162032E0142E2EDA1C46002E01D1B0 +:10CFD0001BE0641CB44207DA04EB440705EB870747 +:10CFE000D7F828728F42F4DBB4420ED00BE00C2746 +:10CFF00007FB065707F5097C07F50677B7E80043F6 +:10D00000ACE80043761EB442F1DB0C2707FB045466 +:10D01000C4F8240204F5097041608260D5F820024A +:10D02000401CC5F8200200E00C231846BDE8F08340 +:10D03000F8B50025DFF8604294F83000400600D5CE +:10D04000022594F88000400601D545F0010594F8CA +:10D05000D000400601D545F0040594F820014006B3 +:10D0600001D545F0080594F85001C00601D545F0FA +:10D07000100594F89801400601D545F020050026DA +:10D08000374611E007EB470004EB8001D1F82C0292 +:10D09000054208D02046D1F824128847002802D043 +:10D0A000002E00D106467F1CD4F820028742E9DB1F +:10D0B00000F002F83046F2BD10B47748016B4A0622 +:10D0C00002D541F01001016300F130010A6D5306F1 +:10D0D00002D542F010020A65D0F8D020530603D5DD +:10D0E00042F01002C0F8D02000F1D002136D5C06AF +:10D0F00002D543F010031365D0F850315C0603D518 +:10D1000043F01003C0F85031036B23F04003036376 +:10D110000B6D23F040030B65D0F8D01021F04001D7 +:10D12000C0F8D010116D21F040011165D0F85011F8 +:10D1300021F04001C0F8501100F5A870816C21F079 +:10D140004001816410BC704738B50C461546002874 +:10D1500003D00C225849E4F78AFF002D04D04E4832 +:10D16000D0E92223C5E90023002C03D04A48D0F897 +:10D170008400207031BD70B50C461546464E0C2219 +:10D1800006F1B801E4F773FF002D03D0D6E93601AC +:10D19000C5E90001002C09D0D6F86803002802D0A8 +:10D1A0000020207070BDD6F8D400207070BD3A48C1 +:10D1B000406B70473848D0F86813002901D0002030 +:10D1C0007047D0F8D40070473348D0F884007047D7 +:10D1D000002107E0304A02EB8102D2F8C42140F876 +:10D1E0002120491C0329F5DB704718B4002106E013 +:10D1F00003EB810250F82130C2F8B831491C264BAC +:10D200000329F5DBD3F81812012907D103F5E272DF +:10D21000014603F5E87018BC03F016BF002106E0D4 +:10D2200003EB810250F82140C2F8C441491C032994 +:10D23000F6DB11BC704710B500200246104C04E02C +:10D2400004EB8001C1F8F421401C0928F8DB2422FA +:10D25000002104F5E870E4F710FF00200AE004EB79 +:10D2600000114FF07E52C1F8F4214FF08042C1F816 +:10D27000D021401C0328F2DBBDE8104002E0000092 +:10D2800070DC002004480021C0F81812704700002C +:10D2900084DF0020CCDF002070DC002053CA0208AD +:10D2A0001DCA020875CA020863CA020840420F007C +:10D2B000C0DC002010DD0020D8DC00200000004091 +:10D2C000000000000000000000000000704780B572 +:10D2D00004F090F904F0E2F900280CD004F0DEF933 +:10D2E00023230FF28C020FF29801FFF7EFFFBDE846 +:10D2F000014004F0D3B9FFF7C5FB00280CD0FFF7BD +:10D30000C1FB26230FF268020FF27401FFF7DEFF64 +:10D31000BDE80140FFF7B6BB04F00CF900280CD0C3 +:10D3200004F008F928230FF248020FF25401FFF726 +:10D33000CDFFBDE8014004F0FDB8012004F0A3F9E1 +:10D34000002002BD80B504F0BFF900280CD004F025 +:10D35000BBF947230FF280020FF22401FFF7B6FF5B +:10D36000BDE8014004F0B0B9002002BD000000009B +:10D37000696E765F696E69745F6D706C00000000A5 +:10D38000433A5C54656D705C4955535C494B445C51 +:10D390005461652D536F6F5C656D6265646465648F +:10D3A0005F7265666572656E63655F666F725F4E1C +:10D3B0006F74655F335C656D6265646465645C4968 +:10D3C0006E76656E53656E73655C6D6C6C697465C5 +:10D3D0005C6D706C2E630000696E765F73746172B1 +:10D3E000745F6D706C0000007047000000B510EEB7 +:10D3F000100AE4F753FA0022DFF81C3CE4F786FA3F +:10D40000F2F73CFEDFF8D42BC2E9140100BDDFF8CF +:10D41000CC2BD2E912017047DFF8C01BD0E90E23F4 +:10D42000C1E912237047C1070CD5DFF8F01B4FF09C +:10D4300040420A6770314A608A604FF08042CA6099 +:10D440000A614A6181070ED5DFF8D01B4FF04042D8 +:10D45000C1F8182101F58C714A608A604FF0804252 +:10D46000CA600A614A6140070ED5DFF8B01B4FF071 +:10D470004042C1F8C02101F5E070426082604FF087 +:10D480008042C2600261426170470000002140108A +:10D4900000D0491C0128FADA481C70472DE9F14FE9 +:10D4A00088B000200146CDE904010898806F00286B +:10D4B00001D10846BEE0FFF7E9FF81464FF00008C2 +:10D4C0008BE000EBC802D2E900014A46ECF76EF8A7 +:10D4D00004460D46089800EBC80002900246D2E9C7 +:10D4E00006014A46ECF762F806460F46A4FB042301 +:10D4F00004FB053305FB0433A4FB020104FB031109 +:10D5000005FB0211CDE90601029AD2E912014A4651 +:10D51000ECF74CF8CDE90001A6FB062306FB073328 +:10D5200007FB06330320A0FB02AB00FB03BBDDE9D6 +:10D530000001B0EB0A0061EB0B01DDE90623A4FB5F +:10D5400002AB04FB03BB05FB02BB4FEA4B0B4BEAF0 +:10D55000DA7B10EB4A0A41EB0B0BA4FB040104FB42 +:10D56000051105FB0411301A67EB0101A4FB002330 +:10D5700004FB013305FB00330320A0FB026700FB23 +:10D580000377DDE9060136184F41029AD2E90C0112 +:10D590004A46ECF70BF8321A67EB0103A4FB0201D1 +:10D5A00004FB031105FB0211890041EA9071BAEBFB +:10D5B00080006BEB0101002904DC00DB02D2404259 +:10D5C00061EB4101DDE904238B4204DC01DB824293 +:10D5D00001D2CDE9040108F10108B8F1030F089860 +:10D5E000FFF66FAF806F0899C96F884210D000EEC8 +:10D5F000100AB8EEC00A04F07DF8F7EE000A80EEDB +:10D60000800A089880ED200A08980146896FC16752 +:10D61000DDE9040104F07CF800EE100A0898D0ED72 +:10D62000200A20EE200A10EE100A09B0BDE8F04FE3 +:10D6300004F0A0B809B0BDE8F08F2DE9F04F85B037 +:10D64000814600200146CDE90201D9F87800002882 +:10D6500001D1084679E0FFF719FF00904FF000086C +:10D6600049E009EBC802D2E90001009AEBF79EFFFE +:10D6700004460D46A4FB046704FB057705FB04770D +:10D6800009EBC80001900246D2E90601009AEBF7C7 +:10D690008DFF801BB941A4FB002304FB013305FB74 +:10D6A00000330320A0FB02AB00FB03BBA4FB06017D +:10D6B00004FB071105FB06111AEB00044BEB0105F7 +:10D6C000019AD2E90C01009AEBF770FF201A65EB82 +:10D6D0000101002904DC00DB02D2404261EB410180 +:10D6E000DDE902238B4204DC01DB824201D2CDE979 +:10D6F000020108F10108B8F1030FB2DBD9F8780094 +:10D70000D9F87C1088420FD000EE100AB8EEC00A9B +:10D7100003F0F0FFF7EE000A80EE800A89ED200AA0 +:10D72000D9F87800C9F87C00DDE9020103F0F0FFC8 +:10D7300000EE100AD9ED200A20EE200A10EE100AA1 +:10D7400005B0BDE8F04F04F015B805B0BDE8F08FA6 +:10D7500010B40121026BD20513D5DFF8C028D2F82E +:10D7600088301468A3420CDBD0F88000C00505D5D2 +:10D77000D2F8D8015168884203DB0521084610BC65 +:10D7800070470020FBE72DE9F04184B004460026F5 +:10D7900000ADDFF8887812E007EBC602D2E9040199 +:10D7A00007F50872926A04F021F807EB8602D2F8B6 +:10D7B00094201204D317801845F82600761C032EF7 +:10D7C000EADBA822002107F11000E4F756FC012053 +:10D7D000FFF729FE6868002801D4014600E04142B5 +:10D7E000009A002A00D55242914201DA104602E026 +:10D7F000002800D54042A968002901D40A4600E06B +:10D800004A42824204DB002901D4084600E0484233 +:10D81000616A03F01CF9B0F5481F03DB052087F8A7 +:10D8200020024BE0DFF8B467F16A6A68501A01D44D +:10D83000034600E08B1AD6F828C0DDF800E0BEEB06 +:10D840000C0E01D4F04603E0DDF80080ACEB0808D4 +:10D85000434508DABEF1000F01D4704606E0009897 +:10D86000ACEB000002E0002800D5881A316BAA68F2 +:10D87000531A01D49C4601E0A1EB020C844504DB61 +:10D88000002B01D4184600E0881A616A03F0DFF823 +:10D890008046022003F096FD07F50870C06A8045B7 +:10D8A00006DA032100A8FFF73EFA2046FFF7B4FD91 +:10D8B0000098B0626868F062A8683063BDE8FF81D4 +:10D8C0002DE9FE4186460E4600271CE0D317A2FB39 +:10D8D000004502FB015503FB0055204629460CEB91 +:10D8E0004C0306EBC30303EBC708D8E90045241833 +:10D8F0004D4103EBC703C3E900450CF1010CBCF13A +:10D90000040FE3DB7F1CB06F032F1BDA06EB8701EC +:10D9100001F16003002802D13EF9170058623EF978 +:10D9200017005A6A821A00A840F82720086E904211 +:10D9300000DA0A66D868824200DADA600120002143 +:10D940008C46DCE7401CB0670120C6F8A000BDE8AB +:10D95000F7812DE9F04104460025069E05E006EB1F +:10D96000850054F82510C1666D1C032DF7DB06F108 +:10D970007807C7E90623B06F002814D0002510E00F +:10D9800006EB850854F82500D8F88410401AF2F701 +:10D9900071FBD8F86010814200DA0146C8F86010C7 +:10D9A0006D1C032DECDBB06F401CB0670120B8622A +:10D9B000BDE8F08110B4002108E000EB810202F123 +:10D9C0006003DC685C6200231366491C0329F4DBF6 +:10D9D00000F17801D1E90623C1E90823002282671A +:10D9E0001046886210BC704730B4D0E92423D0E9D7 +:10D9F0002645101B63EB050130BC7047016E426E7B +:10DA00008A4200DA0A46816E914200DA11460846DF +:10DA10007047016EC26E891A426E036FD21A8A4233 +:10DA200000DB1146826E406F101A884200DB01460F +:10DA30000846704710B5DFF8E4451022002104F5D0 +:10DA40001670E4F71AFB1022002104F51E70E4F7AB +:10DA500014FB1022002104F51A70E4F70EFB1022CB +:10DA6000002104F52270BDE81040E4F706BB10B5B4 +:10DA7000DFF8A845A822002104F11000E4F7FDFA20 +:10DA8000A822002104F5B070E4F7F7FA0520BDE8FC +:10DA90001040C8E4D0B4DFF8842502F51E739C68FA +:10DAA000002C02D1C2E99E0108E0D2E99E678F42B4 +:10DAB00004DC01DB864201D2C2E99E01601C986051 +:10DAC000D0BC7047D0B4DFF8542502F522739C68AF +:10DAD000002C02D1C2E9A20108E0D2E9A2678F427C +:10DAE00004DC01DB864201D2C2E9A201601C98601D +:10DAF000D0BC7047D0B4DFF8242502F516739C68BB +:10DB0000002C02D1C2E9960108E0D2E99667B94239 +:10DB100004DC01DBB04201D2C2E99601601C9860CE +:10DB2000D0BC7047D0B4DFF8F42402F51A739C68B7 +:10DB3000002C02D1C2E99A0108E0D2E99A67B94201 +:10DB400004DC01DBB04201D2C2E99A01601C98609A +:10DB5000D0BC7047F8B507460124DFF8C05405F182 +:10DB60001000FFF756FFDFF87464316C814203DA6E +:10DB7000FFF77DFF0020F2BD3846FFF7E9FD070003 +:10DB800001D10220F2BD78071ED505F5B070FFF770 +:10DB900085FC000D40EA01300915C5E98401D5E98D +:10DBA0008401D6E904238B4205DC01DB824202D2E8 +:10DBB0000024FFF7B7FFA822002105F5B070E4F7B5 +:10DBC0005CFA0420FFF72FFCF80711D505F11000CF +:10DBD000FFF764FC05F50472C2E90601D6E90623E5 +:10DBE0008B4205DC01DB824202D20024FFF782FF78 +:10DBF0002046F2BD1FB5044694F8300000F0C00086 +:10DC0000C02804D1DFF81C14201DFFF759FE94F83A +:10DC1000800000F0C000C02805D1DFF80C1404F12A +:10DC20005400FFF74DFED4F8D00000F0C001C02929 +:10DC30000BD1002001AA032818DA04EB4001B1F946 +:10DC4000A41042F82010401CF5E700F060006028A6 +:10DC500014D1002001AA07E004EB8001D1F8B8102C +:10DC6000891342F82010401C0328F5DBDFF8BC03C1 +:10DC70000090D4E9362301A8FFF76BFE1FBD00001A +:10DC8000F8B50446002004F12C077968CA0540F174 +:10DC9000278101F05001402900D1012097F854104C +:10DCA00001F05001402900D1012094F8D01001F07A +:10DCB0005001402900D10120DFF86053002809D02D +:10DCC000FFF7D5FE0020C5F8180285F8200220468F +:10DCD000FFF7A2FBE06AD5F8401281421ED0C5F8DA +:10DCE0004002BE4E716B0A2806DA48002860B06B0D +:10DCF000401CC5F8440203E02960B06BC5F844023B +:10DD0000D5F84402C0F11000C5F848024FF4804035 +:10DD1000C5F84C021920B16B88403064386DD5F8D5 +:10DD20005012814210D0C5F85002AC4E716B0A28D7 +:10DD300006DA48006860B06B401CC5F8540203E086 +:10DD40006960B06BC5F854022046FFF753FF95F8A1 +:10DD50002002062800F2C480DFE800F004122C350F +:10DD600074A4B100D5F81802411CC5F818120A288D +:10DD7000C0F2B680FFF77BFE012085F82002AFE0FD +:10DD8000D5F8B000012840F0AB802046FFF7E2FE56 +:10DD9000002803D1052085F8200204E0012802D1E3 +:10DDA000022085F8200205F1B800FFF703FEFFF717 +:10DDB00041FE95E0032085F820022046FFF7E3FCB2 +:10DDC000FFF755FE8CE02046FFF7C4FE002857D031 +:10DDD000012840F08580D4F8D000C00523D503F099 +:10DDE0002DFD00281FD105F1B8073846FFF706FEC4 +:10DDF000C117C5E98201794ED6E90201D5E982232E +:10DE0000994206DC01DB904203D2052085F820020E +:10DE10000FE03846FFF7E8FDD6E90823994208DB12 +:10DE200001DC904205D3042085F820022046FFF74C +:10DE3000AAFCD5E98401FFF745FED5E98A01FFF781 +:10DE400029FE4DE0D4F8D000C00514D503F0F6FC4F +:10DE5000002810D105F1B800FFF7D0FDC117C5E9C2 +:10DE600082015E48D0E90223D5E982018B4207DBBB +:10DE700001DC824204D32046FFF76CFE002803D168 +:10DE8000052085F820022BE0012829D12046FFF744 +:10DE90007AFCD5E98401FFF715FED5E98A01FFF781 +:10DEA000F9FD1DE0062085F82002012003F08AFA22 +:10DEB000FFF7DDFD05F1B800FFF77CFD10E020461F +:10DEC000FFF748FE012803D1022085F8200207E071 +:10DED000002805D1FFF7CBFD05F1B800FFF76AFD7B +:10DEE0000020F2BD0021401000D0491C0128FADAC0 +:10DEF0003A4801224B1C9A404263491C8163192213 +:10DF000002FA01F10164704738B5444C4FF42672AF +:10DF100000212046E4F7B1F8304D58220021284670 +:10DF2000E4F7ABF80720FFF77EFA40F2DC5000215F +:10DF3000C5E906011420C5E902016420C5E9040110 +:10DF40003B48C5E908010120C4F81C021920FFF76D +:10DF5000C9FF0020C4F840029FED310AFFF746FADE +:10DF6000002032BD10B52D4C4FF426720021204602 +:10DF7000E4F783F80720FFF756FA0120C4F81C02E3 +:10DF800084F820020022032103F074FB072264219D +:10DF90002848BDE81040FEF7FCBF10B5FFF7B4FFFE +:10DFA000040009D04FF447730FF294020FF2A80156 +:10DFB000FFF71AFA204610BD1F4803F077FB040054 +:10DFC00009D040F21F330FF278020FF28C01FFF7F5 +:10DFD0000BFA204610BD002010BD000090FA002072 +:10DFE00070B50026016BC90513D5D0E90E45FFF7C2 +:10DFF0000EFA201A65EB010100290ADB00DC08D3C8 +:10E000000E4AD2E91445A94203DC01DBA04200D24A +:10E010000126304670BD000065CDCD4178E300207B +:10E020000000964388E30020D8E4002030E400207C +:10E030000008AF2F81DC020865DF020890FA00209B +:10E04000696E765F656E61626C655F666173745F51 +:10E050006E6F6D6F74000000433A5C54656D705CC8 +:10E060004955535C494B445C5461652D536F6F5C5B +:10E07000656D6265646465645F7265666572656E30 +:10E0800063655F666F725F4E6F74655F335C656D6D +:10E090006265646465645C496E76656E53656E7333 +:10E0A000655C6D706C5C666173745F6E6F5F6D6FE5 +:10E0B00074696F6E2E63000070B52DED028B98B001 +:10E0C00005460E4608EE102A1C4695ED020AF8EEAB +:10E0D000C00A95ED010AB8EEC01A95ED000AB8EE37 +:10E0E000C00A20EE000A01EE010A00EEA00A03F0C9 +:10E0F00001FBF0EE408A18EE900AE3F7CFFB21F027 +:10E1000000410122DFF88439E3F782FF00F2B98091 +:10E110009FEDD60AD6ED000AF8EEE00A60EE800A1E +:10E12000CDED040A04A8D6ED010AF8EEE00A60EE8F +:10E13000800AC0ED010AD6ED020AF8EEE00A60EEB0 +:10E14000800AC0ED020AD6ED030AF8EEE00A20EEDE +:10E15000800A80ED030A0020089008A895ED000AC7 +:10E16000B8EEC00A80EE280A80ED010A95ED010A9A +:10E17000B8EEC00A80EE280A80ED020A95ED020A88 +:10E18000B8EEC00A80EE280A80ED030A14AA08A996 +:10E1900004A802F006FD10A904A802F020FE00AABF +:10E1A00010A914A802F0FDFC00AD95ED010AD5ED13 +:10E1B000020A20EEA01A00EE001ADFEDAD1AB4EE4E +:10E1C000611AF1EE10FA02D59FEDAA1A15E0DFED03 +:10E1D000AA1AB4EE611AF1EE10FA02D59FEDA71A51 +:10E1E0000BE0DFEDA71AB4EE611AF1EE10FA02D5DA +:10E1F000B5EE001A01E09FEDA31AF8EEC81A9FEDE4 +:10E20000A22AC1EE821A21EE811A00200C900CA8DD +:10E2100060EE810AC0ED010A20EE410A80ED020A9B +:10E220000021C16000AA04A902F0BBFC00AA04A955 +:10E2300000A802F01FFD00A802F097FD9FEDD90A8B +:10E24000DDED000A60EE800AFDEEE00AC4ED000A92 +:10E25000D5ED010A60EE800AFDEEE00AC4ED010A88 +:10E26000D5ED020A60EE800AFDEEE00AC4ED020A76 +:10E27000D5ED030A20EE800ABDEEC00A84ED030A44 +:10E2800004E0102231462046E3F7F1FE18B0BDEC61 +:10E29000028B70BD38B52DED048B04460D4694ED10 +:10E2A000020AF8EEC00A94ED010AB8EEC01A94ED25 +:10E2B000000AB8EEC00A20EE000A01EE010A00EEE4 +:10E2C000A00A03F017FA9FEDB88AB4EE480AF1EEFF +:10E2D00010FA3CD4D4ED020AF8EEE00A80EE809AFF +:10E2E000B7EE000A30EE490AB5EE400AF1EE10FA38 +:10E2F00001DC9FEDAE0AF6EE009A20EE290A03F04B +:10E30000F9F9F0EE408AB7EE000A39EE000AB5EEF0 +:10E31000400AF1EE10FA01DC9FEDA40A20EE290A72 +:10E3200003F0E8F9B0EE409A94ED010AF8EEC00A65 +:10E3300094ED000AB8EEC00A20EE000A00EEA00A32 +:10E3400003F0D8F9B4EE480AF1EE10FA07D54FF011 +:10E350008040286000206860A860E86027E0DFED6A +:10E36000910A29EE201ABDEEC11A85ED001A94ED2E +:10E37000011AB8EEC11A81EE001A21EE281A61EED8 +:10E38000200AFDEEE00AC5ED010AD4ED000AF8EE20 +:10E39000E00A80EE800A20EE280ADFED850A20EEF2 +:10E3A000200ABDEEC00A85ED020A0020E860BDEC3F +:10E3B000048B31BD38B504460D4694ED030AF8EEE2 +:10E3C000C00A94ED020AB8EEC01A94ED010AF8EE04 +:10E3D000C01A94ED000AB8EEC00A20EE000A01EE61 +:10E3E000A10A01EE010A00EEA00AB5EE400AF1EE24 +:10E3F00010FA07D84FF08040286000206860A860BD +:10E40000E86031BD03F076F9F7EE000A80EE800A8D +:10E41000DFED640A20EE200AD4ED000AF8EEE00AEF +:10E4200060EE800AFDEEE00AC5ED000AD4ED010AB7 +:10E43000F8EEE00A60EE800AFDEEE00AC5ED010AA2 +:10E44000D4ED020AF8EEE00A60EE800AFDEEE00A82 +:10E45000C5ED020AD4ED030AF8EEE00A20EE800AC8 +:10E46000BDEEC00A85ED030A31BD0000000080301A +:10E4700017B75139A69BC43B0AD7233C8FC2753DC1 +:10E48000CDCC4C3ECDCCCC3E0014CD4770B588B041 +:10E49000054695F83000400640F18180A8690028C3 +:10E4A00000D54042B0F5803F0DDAE969002900D57A +:10E4B0004942B1F5803F06DA296A002900D5494270 +:10E4C000B1F5803F67DBDFF8C815DFF8C845884243 +:10E4D0000BDAE869002800D54042884205DA286A4C +:10E4E000002800D54042884202DB0320A06301E0FF +:10E4F0000220A063A86A616B81421ED0606395ED23 +:10E500000A0AB8EEC00ADFEDA00A80EE200ADFEDAD +:10E510009F0A20EE200A10EE100AE3F7BFF9DFF899 +:10E520007825DFF87835E3F7F1F90022DFF8703568 +:10E53000E3F74AFCE3F7C8FA20630020049004AE36 +:10E54000216BA86902F083FA7060216BE86902F020 +:10E550007EFAB060216B286A02F079FAF06000AAB6 +:10E5600004A9204602F079FA00988001009000A8E2 +:10E57000416889014160816889018160C1688901C0 +:10E58000C160224600A9204602F0CAFA2146204670 +:10E59000FFF710FF03E0DFF8FC040021816308B0FF +:10E5A00070BD00000000804E0100803F00000000B0 +:10E5B000000080CE70B52DED048B8EB0044694F82B +:10E5C0005001400640F1DC80DFF8C854D4F8400127 +:10E5D0002968401A00D54042D4F86411DFF8C424F9 +:10E5E0005143814202DA0320A86301E00220A863BC +:10E5F000D4F85001810505D5294604F5A070FFF730 +:10E60000D9FEBDE0800407D54FF08040A86400200B +:10E61000E8642865686597E0002103A8FEF7C1FB60 +:10E620000C2205F13C0103A802F06AFE002805D186 +:10E63000D4F86001A96D884200F0868000AB03AA7F +:10E64000616A206880B202F07DFC00AE96ED020A9D +:10E65000F8EEC00A96ED010AB8EEC01A9DED000A68 +:10E66000B8EEC00A20EE000A01EE010A00EEA00A90 +:10E6700003F040F8B0EE408A9FED450A28EE000A0C +:10E68000DFED440A80EE200AD4ED580AF8EEE00AE5 +:10E6900020EE200ADFEDD10AC0EE208AB0EE680A33 +:10E6A00003F0D4F8B0EE409AB0EE680A03F0D1F867 +:10E6B000F0EE000AB4EE608AF1EE10FA07D54FF0E2 +:10E6C0008040A8640020E8642865686533E0DFEDD9 +:10E6D000C40A29EE201ABDEEC11A85ED121A20EEE9 +:10E6E000200ADDED000AF8EEE00A60EE200AC0EE36 +:10E6F000880AF1EE600AFDEEE00AC5ED130AD6EDD8 +:10E70000010AF8EEE00A60EE200AC0EE880AF1EE97 +:10E71000600AFDEEE00AC5ED140AD6ED020AF8EE35 +:10E72000E00A20EE200A80EE080AB1EE400ABDEEB3 +:10E73000C00A85ED150A0C2203A905F13C00E3F798 +:10E7400096FCD4F86001A86504F5A07406AA05F14A +:10E750004801204602F081F90AAA06A905F15C00E9 +:10E7600002F07BF905F15C01204602F0ECF906AA03 +:10E770000AA9284602F071F9294606A8FFF71AFEF1 +:10E780000EB0BDEC048B70BD002474490000004E37 +:10E79000DB0F49400000344B2DE9F04F93B00746A2 +:10E7A000012407F13005286DBA4E00F050014029D0 +:10E7B00004D0F16E002912D0400610D506F11001E8 +:10E7C00007F16800FFF766FDD7F85001C00519D5BD +:10E7D00006F15C0107F5A07002F0B5F912E0D7F878 +:10E7E000500100F05002402A03D0002915D0400605 +:10E7F00013D506F15C0107F5A07002F0A4F9286DAD +:10E80000C0050AD500A9304602F09DF906F12002A4 +:10E8100000A906F1100002F020F9D7F85001C00558 +:10E82000384602D5FFF7C6FE01E0FFF72FFE06F1DE +:10E830001002314606F1200002F00FF995F8500061 +:10E84000400640F1C780386BD7F850110843C00527 +:10E8500040F1AC8004AA07F1680106F1100002F053 +:10E8600081F9D5F840A04FEAEA7BE86BC117AA6BA3 +:10E87000D317A2FB028902FB039903FB0299A0FBB9 +:10E88000002300FB013301FB003318EB020049EBCE +:10E890000301AAFB0A230AFB0B330BFB0A33801884 +:10E8A000594102292FDB02DCB0F1804F2BD307A89E +:10E8B00002F053FE07A8D0F808A04FEAEA7B4068B0 +:10E8C000C117079AD317A2FB028902FB039903FB26 +:10E8D0000299A0FB002300FB013301FB003318EB7E +:10E8E000020049EB0301AAFB0A230AFB0B330BFBD3 +:10E8F0000A3380185941022905DB02DCB0F1804F50 +:10E9000001D30420B063B06B042801D1002417E0C8 +:10E91000022801D0032808D1A96C41F2883291FB6A +:10E92000F2F4012C0CDA01240AE0012808D1A96CC8 +:10E9300041F2883291FBF2F1012900DA21464C00C4 +:10E94000032800D0A4005848444300200A900AAD90 +:10E9500021460598800202F07AF868602146049802 +:10E960004042800202F073F8A86000200D900EAAC9 +:10E9700006F110010AA802F070F806F110020EA9C3 +:10E9800006F1100002F0CCF806F1100106F11000BB +:10E99000FFF710FD00A9304602F0D5F806F120027D +:10E9A00000A906F1100002F058F813E006F1100378 +:10E9B000AA6C06F1100107F16800FFF77DFB00A9C2 +:10E9C000304602F0C0F806F1200200A906F110005E +:10E9D00002F043F8002013B0BDE8F08F0024F449A2 +:10E9E0000000804E38B50446206BC0050AD404F1FF +:10E9F0003000006DC00505D4D4F85001C00501D425 +:10EA0000002032BD234DD4F8500100F4A060B0F5D1 +:10EA1000A06F09D1102204F5A07105F11000E3F7F1 +:10EA200026FB0120E86604E02046FFF7B5FE002043 +:10EA3000E86604F13000D0E9022305F1100002F08D +:10EA400091FC002032BD10B5124C702200212046EE +:10EA5000E3F713FB4FF08040206120602062E06309 +:10EA6000E065002010BD80B5FFF7EDFF002805D15F +:10EA70000FF20D00BDE8024002F018BE02BD00001A +:10EA80001322C8210948FEF784BA00000000D040D4 +:10EA9000010064000CF90020112D4454FB21894031 +:10EAA0000080664071981C00A69BC400E5E902083E +:10EAB00038B50446DFF8985368680870D5E9020154 +:10EAC000C2E90001686A9FED600A296A002920D422 +:10EAD00000EE900AF8EEE00A60EE800AC4ED000A4B +:10EAE000D5ED0A0AF8EEE00A60EE800AC4ED010AEC +:10EAF000D5ED0B0AF8EEE00A60EE800AC4ED020ADA +:10EB0000D5ED080AF8EEE00A20EE800A84ED030A4B +:10EB100026E0404200EE900AF8EEE00A60EE800A3D +:10EB2000C4ED000AA86A404200EE900AF8EEE00A3E +:10EB300060EE800AC4ED010AE86A404200EE900AE5 +:10EB4000F8EEE00A60EE800AC4ED020A286A40424C +:10EB500000EE900AF8EEE00A20EE800A84ED030A47 +:10EB600002F01BFD84ED040AE86B32BD70B588B07D +:10EB70000446164604A8FEF7E7FADFF8D452D5E9B2 +:10EB80000201C5E90401C6E9000100A802F065FC24 +:10EB900000A841689FED2C0A009A002A20D400EEBC +:10EBA000901AF8EEE00A60EE800AC4ED000AD0ED9B +:10EBB000020AF8EEE00A60EE800AC4ED010AD0ED28 +:10EBC000030AF8EEE00A60EE800AC4ED020ADDED09 +:10EBD000000AF8EEE00A20EE800A84ED030A26E03F +:10EBE000494200EE901AF8EEE00A60EE800AC4EDA9 +:10EBF000000A8168494200EE901AF8EEE00A60EEE1 +:10EC0000800AC4ED010AC068404200EE900AF8EEA6 +:10EC1000E00A60EE800AC4ED020A0098404200EE6D +:10EC2000900AF8EEE00A20EE800A84ED030A002044 +:10EC30002061686B801100F00100296C891101F0DE +:10EC40000101084308B070BD000080302DE9FF418C +:10EC5000044600254FF47A787D4E06F10802311DF6 +:10EC600006F1200002F01CFC04F12C025068306315 +:10EC700004F13800816C716304F1CC077968B163E9 +:10EC800004F1D8018B6F33645268D30501D5D4F8F1 +:10EC90002C80836C5FEAC35C05D5D0F844C0C445C2 +:10ECA00001DAE0460125D7F804C05FEACC5E05D55D +:10ECB000D4F8CCE0C64501DAF0460225896F5FEA58 +:10ECC000C15E04D5D4F864E1C64500DA03255FEAE5 +:10ECD000C15E07D50CEA030E5FEACE5E0BD44FF09F +:10ECE000FF3508E003EA020E0CEA0E0E5FEACE5E84 +:10ECF00001D44FF0FF35002D05D0022D1BD00ED3CF +:10ED0000032D24D02FE002F04000401E8041C0437C +:10ED1000C00FF063D4E90E01C6E9020125E003F05B +:10ED20004001491E8941C943C90FF163D0E9142349 +:10ED3000C6E9022319E00CF04000401E8041C043A8 +:10ED4000C00FF063D4E93601C6E902010DE001F01D +:10ED50004000401E8041C043C00FF063D4E956011B +:10ED6000C6E9020101E00020F06306F1180200A9E3 +:10ED700001A8FEF700FA9DF90000306000240DE0C4 +:10ED800040060AD501A850F8240000EE100ABAEE99 +:10ED9000C80A06EB840080ED320A641C032C2CDACE +:10EDA000387900F0500040280CD101A850F8240018 +:10EDB00000EE100AB8EEC00A2C2000FB04604430BC +:10EDC00002F006F9786800F0C001C029D8D101A886 +:10EDD00050F8240000EE100AB8EEC00A2C2000FB08 +:10EDE0000460443002F009F9DFED180A20EE200A31 +:10EDF00006EB840080ED320ACFE7002004B0BDE8C6 +:10EE0000F08137224FF461711248FEF7C2B838B56D +:10EE10000F4CD82200212046E3F72FF9002508E007 +:10EE200004F1D8012C2000FB0540443002F0C1F869 +:10EE30006D1C032DF4DB002032BD80B5FFF7E7FF2A +:10EE40000548BDE8024002F031BC000000008037F8 +:10EE5000E8AD00204DEC020803EE02082DE9F04178 +:10EE60002DED048B84B004460F4690461D46DFF816 +:10EE700094683C2206F10C01304602F0EDFC502271 +:10EE800006F1580106F1480002F0E6FC0C2241466A +:10EE900006F13C00E3F7EBF81022394606F1980042 +:10EEA000E3F7E5F89FEDA29AD6F85C01401CC6F89E +:10EEB0005C01072802DB0620C6F85C01D6F85C017D +:10EEC000C0F1060722E000AA06EB071000F1480196 +:10EED000284601F066FE00AA07EB470006EB80011A +:10EEE00004F1B80001F030FDF0EE409A19EE900AFE +:10EEF000E2F7D4FC21F0004153EC182B23F000433F +:10EF0000E3F79EF801D2B0EE699A7F1C19EE100A61 +:10EF1000E2F7C4FC41EC180B062FD4DBB0EE480A34 +:10EF2000F0EE680A04B0BDEC048BBDE8F08100008F +:10EF30002DE9F84F2DED088BB0EE409AF0EE609A77 +:10EF40000C46904600259FED78ABB0EE4A8AF0EE75 +:10EF50006A8A416B002904D4D0F8D400032800D178 +:10EF60000125DFF8A067482206F1C80106F1C000BC +:10EF700002F072FC06F1B80989ED149B00270CE041 +:10EF800053EC182B06EBC700D0F8C410D0F8C00023 +:10EF9000E2F7E6FD41EC180B7F1C0A2FF0DB51EC89 +:10EFA000180B0022DFF86037E2F70EFF41EC1B0B75 +:10EFB00089ED16BB322C2FDBC820C6F85401404621 +:10EFC000E2F7B6FD41EC1A0B51EC190B0022DFF809 +:10EFD0003C37E2F7F9FE53EC1A2BE2F797FC0022DC +:10EFE000DFF84C37E2F7F0FE41EC180BB4F57A7F0E +:10EFF00045DB51EC190B0022DFF81437E2F7E4FE91 +:10F0000053EC1A2BE2F782FC0022DFF82437E2F7F8 +:10F01000DBFE41EC180B32E0D6F8540141F28831A6 +:10F0200098FBF1F101EB8101401AC6F8540102D5B9 +:10F030000020C6F8540151EC190B0022DFF8D43639 +:10F04000E2F7C2FE82468B464046E2F771FD524629 +:10F050005B46E2F75BFC0022DFF8D436E2F7B4FE51 +:10F0600041EC180BD6F85401002808D106F5AA7017 +:10F07000C068012803D1B0EE4A8AF0EE6A8A06F52C +:10F08000AA704068002803D0B0EE498AF0EE698A81 +:10F09000DFF88406804503D1B0EE498AF0EE698A34 +:10F0A00053EC182B00200146F1F726F801D089ED2A +:10F0B00018BBD9E9180153EC1B2BE2F7C5FD21F071 +:10F0C0000041DFF85826DFF85836E2F7A1FF22D8D2 +:10F0D000D6E92E2300200146F1F70EF81BD1012DB1 +:10F0E00019D1C820C6F8540151EC190B0022DFF8E1 +:10F0F0002436E2F769FE04460D464046E2F718FD65 +:10F1000022462B46E2F702FC0022DFF82436E2F723 +:10F110005BFE41EC180BB0EE480AF0EE680ABDEC5D +:10F12000088BBDE8F18F0000000000000000000027 +:10F13000002474492DE9F0472DED0C8BAEB0044648 +:10F1400019A800210A460B460EC00846DFF8B45540 +:10F150000DE005EB800191ED2A0AB8EEC00A20EE21 +:10F16000090A12A901EB800181ED000A401C9FED04 +:10F17000CB9A0428EDDB06A802F06FF99DED060A94 +:10F18000B8EEC00A20EE090A8DED1C0A06A81CA9DB +:10F1900090ED010AB8EEC00A20EE090A81ED010ADD +:10F1A00090ED020AB8EEC00A20EE090A81ED020ACB +:10F1B00090ED030AB8EEC00A20EE090A81ED030AB9 +:10F1C00002A802F04AF902AEF168706801F039FC59 +:10F1D00007460299B06801F034FC381A1690F168BD +:10F1E000B06801F02EFC804616AF0299706801F0FD +:10F1F00028FC40447860F068014601F022FC064695 +:10F200000299084601F01DFC8019A0F18040B86009 +:10F2100012AB16AA1CA92046FFF720FEB0EE408ACA +:10F22000F0EE608A9FEDE3AB00261DE004EB860064 +:10F230008069E2F77DFC41EC1B0B9FEDE0CB53ECCA +:10F240001B2B51EC1C0BE2F761FB53EC1B2BE2F781 +:10F250005DFB53EC1C2BE2F759FB53EC1A2BE2F746 +:10F260007FFC41EC1A0B761C032EDFDB51EC1A0BF2 +:10F27000F1F708F900EE100A02F03CFA10EE100A5D +:10F28000E2F70CFB05F5AC7696ED08BB53EC1B2BB7 +:10F29000E2F7DAFC41EC1C0B86ED0ACB9FEDC9AB23 +:10F2A00053EC1C2B51EC1A0BE2F730FB41EC1D0B1D +:10F2B00086ED0CDB53EC1B2BE2F752FCC6E9080190 +:10F2C0009FEDC2BB53EC1C2B51EC1D0BE2F71EFB58 +:10F2D000D6E90E23E2F744FC53EC1B2BE2F716FBB6 +:10F2E000C6E90E014FF0000802F0A8FA002808D184 +:10F2F000D6E90E01DFF82C24DFF82C34E2F7A0FE6B +:10F300000AD2D5F85801002806D12046FEF768FE3B +:10F31000012801D14FF0010804F1180001F084FB2D +:10F3200081093269DFF8F003824200DB0246B0EE69 +:10F33000480AF0EE680A2046FFF7FAFD85ED2E0B2D +:10F3400053EC102BD5E94801E2F7E0FAC5E92E01AC +:10F3500024A902A801F058FD05F59A7706AA02A98A +:10F36000384601F07AFB394602A801F0ECFB002296 +:10F3700018E002EB4207DF190DF1900C5CF82770E2 +:10F380000DF1180C0CEB830CDCF804C0CCFB07016E +:10F390005B1C032BEDDB19AB800F40EA810043F8C7 +:10F3A0002200521C032A03DA002001460346F0E73C +:10F3B00019AFD5F85801002801D00020B860D7F85F +:10F3C0000890C9F1000000EE100AB8EEC00A20EE65 +:10F3D000098AB0EE480A02F039FA8DED0E0A0DF1F5 +:10F3E000380A0020CAF80400CAF80800B0EE480A3B +:10F3F00002F02FFA8AED030A306941F2883190FB5E +:10F40000F1F000EE100AB8EEC00A00EE909AF8EEA5 +:10F41000E00A9FEDBB1AC0EE810AC0EE800AB0EE92 +:10F42000001AC0EE810AFDEEE00A10EE900A4000DC +:10F4300000EE900AF8EEE00A9FEDB11A60EE810A44 +:10F4400020EE800ABDEEC00A87ED020AB8EEC00ABF +:10F4500020EE098AB0EE480A02F0F8F98DED0A0AAA +:10F460000DF128090020C9F80400C9F80800B0EE21 +:10F47000480A02F0EEF989ED030A20AA0EA912A8A3 +:10F4800001F08FFB0EAA0AA920A801F08AFBD4F88C +:10F49000D400012816DB002212E000BF00008030FB +:10F4A0005AF8220000EE100A12A800EB820080ED4C +:10F4B000000ABEEEC10A05EB820080ED2A0A521C4A +:10F4C000042AEDDB95ED2E8BD5F85871002F01D075 +:10F4D00086ED068BD6E9062351EC1B0BE2F716FAF4 +:10F4E000CDE9000153EC182B51EC1A0BE2F70EFAA0 +:10F4F000DDE90023E2F734FB41EC100B85ED2E0B28 +:10F5000086ED060BD4F8D400032802D1B8F1000F21 +:10F5100001D0002F3FD09FED878B53EC102B51EC87 +:10F52000180BE2F7F3F9F0F7ADFF00EE100A02F066 +:10F530008DF98DED0A0A0020C9F80400C9F8080009 +:10F54000D5E92E2351EC180BE2F7E0F9F0F79AFF1A +:10F5500000EE100A02F07DF989ED030A0EAA0AA94D +:10F5600012A801F01EFB0EA801F0A5FB00220AE084 +:10F570000AEB820090ED000ABEEEC10A05EB8200A4 +:10F5800080ED2A0A521C042AF2DBD4E9362305F165 +:10F59000A80001F0FBFED5F85801002804D0002196 +:10F5A0007160401EC5F858012EB0BDEC0C8BBDE853 +:10F5B000F08700BF00000000000000000000000015 +:10F5C0000000F03E989999999999B93FCDCCCCCC4F +:10F5D000CCCCEC3FF8B5044604F1C801494800F52D +:10F5E000AC750A7AD20604D40322C0F8582100224E +:10F5F0006A60D4F85021D2050CD4226BD20503D511 +:10F60000D4F88020D20505D40321C0F85811002079 +:10F610006860F2BD6A69002A0DD0D1E90423D1E9FE +:10F620000667901B63EB07014FF47A720023EEF735 +:10F63000C3F8286115E0D4F8C81044F6206291425E +:10F6400001DB29610DE0EB68C918E960914205DA38 +:10F65000D0F85801002801D10020F2BD2961002016 +:10F66000E8602046FFF766FD0020F2BD10B5254C8E +:10F670004FF4D07200212046E2F7FFFC4FF08040AB +:10F68000C4F83401C4F8A8000022134604F1A8000D +:10F6900001F07CFE4FF47A70C4F854010020234935 +:10F6A000C4E948019FED250B84ED5C0B04F5B870AF +:10F6B00080ED020B80ED040B80ED060B80ED080B56 +:10F6C00010BD1049C1F86001002070470D49C1F814 +:10F6D0006C010020704704224FF416711948FDF7A1 +:10F6E00058BC80B5FFF7C2FF0020FFF7EAFF0020FB +:10F6F000FFF7ECFF1448BDE8024001F0D7BF00005F +:10F70000E1023747D0EB00200000244000006940B0 +:10F71000000049400000794040420F001383C0CAF6 +:10F72000A145B63F7B14AE47E17A843F0000F03F2D +:10F730000088B340000000000000E03F000000002F +:10F7400000000000D5F50208D7F6020880B5B822FF +:10F750000146DFF8FC04E2F78AFC002002BD80B518 +:10F76000B822DFF8EC14E2F782FC002002BDF0B50D +:10F7700085B0044600A902A8FDF713FB01A801F01B +:10F7800019FE02283FD0D4F808010099461ADFF884 +:10F79000C04494F8B000002848D0002E46D0F71797 +:10F7A000029D2268D317A2FB060102FB071103FB8F +:10F7B0000611000C40EA01404019029002ADD5F854 +:10F7C00004C06268D317A2FB060102FB071103FB0A +:10F7D0000611000C40EA014060446860D5F808C09A +:10F7E000A068C117A0FB062300FB073301FB06330B +:10F7F000120C42EA034202EB0C00A860032102A8AB +:10F80000FDF791FA12E0606B03280FD1FDF7BCFA07 +:10F8100000280BD0DFF838440C2202A904F10C00B8 +:10F82000E2F725FC0098A06100F003F8002005B085 +:10F83000F0BD2DE9F04F87B0DFF814048069DFF8E0 +:10F840001464B168884200DAB060F168814200DA7D +:10F85000F060F168B268891A3269914201DA0020D9 +:10F86000C2E10014C117CDE900017068401C70604E +:10F87000DDE90001DDE90023A2FB004502FB0155A3 +:10F8800003FB0055CDE90245DDE90201DDE9002376 +:10F89000A2FB004502FB015503FB0055CDE90445E1 +:10F8A000D6E90E01DDE9002380185941C6E90E01B1 +:10F8B000D6E90C01DDE9022380185941C6E90C01A3 +:10F8C000D6E91C01DDE9042380185941C6E91C0171 +:10F8D000DFF87C03D0E92A23DDE90401DDE90045F6 +:10F8E000A4FB008904FB019905FB009912EB0800B9 +:10F8F00043EB0901DFF85823C2E92A01002445E05F +:10F90000DFF84C0300EB840500EBC407D7E90CAB30 +:10F91000DDE90023E868C117A0FB028900FB039919 +:10F9200001FB02991AEB08004BEB0901C7E90C0136 +:10F930003037D7E90A01DDE90289EA68D317A2FB6B +:10F9400008AB02FB09BB03FB08BB10EB0A0041EB51 +:10F950000B01C7E90A01D7E91001EA68801851EBE9 +:10F96000E271C7E91001D7E918ABDDE90401EA68E3 +:10F97000D317A2FB008902FB019903FB00991AEB44 +:10F9800008004BEB0901C7E91801641C032CB7DB25 +:10F990007068B0F57A7FC0F2938000EBC000093048 +:10F9A0000A2190FBF1F070604FF00908D6E90E01D2 :10F9B000A8FB002308FB013312F1090043F1000109 -:10F9C0000A220023EDF7E8FEC6E90C01D6E91C0186 +:10F9C0000A220023EDF7F8FEC6E90E01D6E90C0184 :10F9D000A8FB002308FB013312F1090043F10001E9 -:10F9E0000A220023EDF7D8FEC6E91C019048D0E9B1 -:10F9F0002A23A8FB020108FB0311093041F1000191 -:10FA00000A220023EDF7C8FE894AC2E92A01002430 -:10FA100044E0874800EBC405D5E90C01A8FB0023AE -:10FA200008FB013312F1090043F100010A2200230F -:10FA3000EDF7B2FEC5E90C013035D5E90A01A8FBA6 -:10FA4000002308FB013312F1090043F100010A22EF -:10FA50000023EDF7A1FEC5E90A01D5E91001A8FBD5 +:10F9E0000A220023EDF7E8FEC6E90C01D6E91C0166 +:10F9F000A8FB002308FB013312F1090043F10001C9 +:10FA00000A220023EDF7D8FEC6E91C019048D0E990 +:10FA10002A23A8FB020108FB0311093041F1000170 +:10FA20000A220023EDF7C8FE894AC2E92A01002410 +:10FA300044E0874800EBC405D5E90C01A8FB00238E +:10FA400008FB013312F1090043F100010A220023EF +:10FA5000EDF7B2FEC5E90C013035D5E90A01A8FB86 :10FA6000002308FB013312F1090043F100010A22CF -:10FA70000023EDF791FEC5E91001D5E91801A8FBB7 +:10FA70000023EDF7A1FEC5E90A01D5E91001A8FBB5 :10FA8000002308FB013312F1090043F100010A22AF -:10FA90000023EDF781FEC5E91801641C032CB8DBD7 -:10FAA000D6E90C01A0FB002300FB013301FB00336E -:10FAB0000320A0FB024500FB0355CDE90445D6E930 -:10FAC0000E01D6E91C23A2FB004502FB015503FBF6 -:10FAD0000055AD0045EA94757068C117544AD2E9E3 -:10FAE0002A89A8FB002308FB013309FB0033CDE979 -:10FAF0000223002761E0DDE90401B0EB8400A941A5 -:10FB0000DDE9022380185941CDE9000101D1002827 -:10FB100052D0474800EBC70000F1300CD0E90C236D -:10FB2000D6E90C01A0FB02AB00FB03BB01FB02BB4F -:10FB3000D6E90E23DCE90A01A0FB028900FB039948 -:10FB400001FB0299BAEB08026BEB09030320A0FB4F -:10FB500002AB00FB03BBDCE91023D6E91C01A0FBD0 -:10FB6000028900FB039901FB0299BAEB080A6BEBCF -:10FB7000090B7268D317DCE91801A0FB028900FBAE -:10FB8000039901FB02991AEB08004BEB0901DDE92F -:10FB9000042380185941B0EB8400A941DDE9022318 -:10FBA00080185941401E61F10001DDE90023EDF7A5 -:10FBB000F3FD1F4941F827007F1C032F9BDB1C48E6 -:10FBC000012180F8B010002007B0BDE8F08F10B51B -:10FBD000174CB82200212046E2F741FA164820626D -:10FBE0004FF4AA0060624FF4A020A062002010BD74 -:10FBF000082296211148FDF7BCB980B5FFF7E7FF51 -:10FC000040F2D163B8220E490E4801F0EEFC002804 -:10FC100001D0012002BD0C4801F038FD002801D0C0 -:10FC2000012002BD0248012180F8B110002002BD70 -:10FC300098F50020B0F500200000D8FF4FF702082B -:10FC40003FF702082DF70208F1FB02087047002079 -:10FC50000AE0DFF8F81B01EB8001DFF8F42B0A6201 -:10FC6000DFF8E42BCA62401C0328F2DB7047002057 -:10FC70001BE0DFF8D81B01EB800191ED2D0AD1EDDF -:10FC8000080AF4EE400AF1EE10FA01D581ED080AF7 -:10FC900001F12002D2ED030AB4EE600AF1EE10FA8F -:10FCA00002D5D1F8B410D160401C0328E1DB7047C5 -:10FCB000FEB5B0F9542012040092B0F95620130496 -:10FCC00000AA5360B0F9584024049460DFF87C5BCC -:10FCD000009E6F6EF61B0096AE6E9B1B5360EB6E24 -:10FCE000E31A93600B46416F006D80B201F01AF980 -:10FCF000F7BDF0B589B000252E462F46DFF84C4BF6 -:10FD0000D4F89410012902D12946C4F8941003A90B -:10FD1000FFF7CEFF06A801F068FB03980699A0EB59 -:10FD2000A130039006A803A94A684368A2EBA33256 -:10FD30004A608A688068A2EBA0308860602204F57F -:10FD4000587104F5577001F077FD0C2203A904F5F2 -:10FD50005D70E2F77EF900A801F0EFFB602204F588 -:10FD6000737104F5727001F067FD0C2200A904F5AF -:10FD70007870E2F76EF9294600A838E004F23442C0 -:10FD800093685B1C936001EB410204EB8202D2F8A2 -:10FD90005C334FF0090C93FBFCF35D1901EB41035D -:10FDA00004EB8303D3F860C34FF0090E9CFBFEFC09 -:10FDB000664403F55873D3F804C09CFBFEFC67440B -:10FDC000DDF800C0D2F8C82392FBFEF26244009234 -:10FDD0004268D3F86CC09CFBFEFC624442608268BF -:10FDE0001B6FF44693FBFCF39A188260491C0929A7 -:10FDF000C4DB290000D54942320000D552423B0005 -:10FE000000D55B42009D002D00D56D4200954568F0 -:10FE1000002D01D56D4245608568002D01D56D42EC -:10FE200085600025009EB14200DA012541688A42C2 -:10FE300000DA6D1C8068834200DA6D1C04F23442E3 -:10FE40009068092800DB6D1C042D0FD194F8341440 -:10FE5000032908DB526804F16400FCF72DFF012040 -:10FE600001F063FB02E00846FCF71FFF09B0F0BD9C -:10FE70002DE9F0410446DFF8D459002085F8340418 -:10FE800005F234467060074605F1080825E005EBE9 -:10FE9000870090ED330AD8ED0D0AB4EE600AF1EE5A -:10FEA00010FA19DBD8E912230020DFF8AC19E1F7CA -:10FEB00049FE21F00041DFF8A429DFF8A439E2F778 -:10FEC000B1F809D295F83404401C85F83404706800 -:10FED0000121B940084370607F1C032FD7DB95F8E0 -:10FEE0003404002815D0002709E004EBC70041685E -:10FEF0000068E1F7DBFD05EB870148667F1C032FF7 -:10FF0000F3DB0020B060A868042802DA95F8340416 -:10FF1000A86095F8340403281DD198ED010ADFED9F -:10FF2000BD0AB4EE600AF1EE10FA14D5D8E9122336 -:10FF30000020DFF82419E1F705FE21F00041DFF889 -:10FF40001C29DFF81C39E2F76DF804D2A8680328F1 -:10FF500001D10420A86098ED020ADFEDAF0AB4EEEB -:10FF6000600AF1EE10FA1DD598ED010ADFEDAB0A3B -:10FF7000B4EE600AF1EE10FA14D5D8E9122300208D -:10FF8000DFF8D418E1F7DEFD21F00041DFF8D428D6 -:10FF9000DFF8D438E2F746F804D2A868042801D183 -:10FFA0000520A860BDE8F0812DE9F0410446DFF8A6 -:10FFB0009C78D7F8B404012850D107F1E005F7EE9A -:10FFC000000AB7EE000A07F5E471284601F03AFC92 -:10FFD00007F1500207F5D471284601F039FE0600FA -:10FFE0003DD07868401C7860616F0C46D7E91401F9 -:10FFF000E1F75CFD214600F01AFD00EE100ABAEEB2 +:10FA90000023EDF791FEC5E91001D5E91801A8FB97 +:10FAA000002308FB013312F1090043F100010A228F +:10FAB0000023EDF781FEC5E91801641C032CB8DBB7 +:10FAC000D6E90C01A0FB002300FB013301FB00334E +:10FAD0000320A0FB024500FB0355CDE90445D6E910 +:10FAE0000E01D6E91C23A2FB004502FB015503FBD6 +:10FAF0000055AD0045EA94757068C117544AD2E9C3 +:10FB00002A89A8FB002308FB013309FB0033CDE958 +:10FB10000223002761E0DDE90401B0EB8400A94184 +:10FB2000DDE9022380185941CDE9000101D1002807 +:10FB300052D0474800EBC70000F1300CD0E90C234D +:10FB4000D6E90C01A0FB02AB00FB03BB01FB02BB2F +:10FB5000D6E90E23DCE90A01A0FB028900FB039928 +:10FB600001FB0299BAEB08026BEB09030320A0FB2F +:10FB700002AB00FB03BBDCE91023D6E91C01A0FBB0 +:10FB8000028900FB039901FB0299BAEB080A6BEBAF +:10FB9000090B7268D317DCE91801A0FB028900FB8E +:10FBA000039901FB02991AEB08004BEB0901DDE90F +:10FBB000042380185941B0EB8400A941DDE90223F8 +:10FBC00080185941401E61F10001DDE90023EDF785 +:10FBD000F3FD1F4941F827007F1C032F9BDB1C48C6 +:10FBE000012180F8B010002007B0BDE8F08F10B5FB +:10FBF000174CB82200212046E2F73FFA164820624F +:10FC00004FF4AA0060624FF4A020A062002010BD53 +:10FC1000082296211148FDF7BCB980B5FFF7E7FF30 +:10FC200040F2D163B8220E490E4801F0EEFC0028E4 +:10FC300001D0012002BD0C4801F038FD002801D0A0 +:10FC4000012002BD0248012180F8B110002002BD50 +:10FC500098F50020B0F500200000D8FF6FF70208EB +:10FC60005FF702084DF7020811FC020870470020F8 +:10FC70000AE0DFF8F81B01EB8001DFF8F42B0A62E1 +:10FC8000DFF8E42BCA62401C0328F2DB7047002037 +:10FC90001BE0DFF8D81B01EB800191ED2D0AD1EDBF +:10FCA000080AF4EE400AF1EE10FA01D581ED080AD7 +:10FCB00001F12002D2ED030AB4EE600AF1EE10FA6F +:10FCC00002D5D1F8B410D160401C0328E1DB7047A5 +:10FCD000FEB5B0F9542012040092B0F95620130476 +:10FCE00000AA5360B0F9584024049460DFF87C5BAC +:10FCF000009E6F6EF61B0096AE6E9B1B5360EB6E04 +:10FD0000E31A93600B46416F006D80B201F01AF95F +:10FD1000F7BDF0B589B000252E462F46DFF84C4BD5 +:10FD2000D4F89410012902D12946C4F8941003A9EB +:10FD3000FFF7CEFF06A801F068FB03980699A0EB39 +:10FD4000A130039006A803A94A684368A2EBA33236 +:10FD50004A608A688068A2EBA0308860602204F55F +:10FD6000587104F5577001F077FD0C2203A904F5D2 +:10FD70005D70E2F77CF900A801F0EFFB602204F56A +:10FD8000737104F5727001F067FD0C2200A904F58F +:10FD90007870E2F76CF9294600A838E004F23442A2 +:10FDA00093685B1C936001EB410204EB8202D2F882 +:10FDB0005C334FF0090C93FBFCF35D1901EB41033D +:10FDC00004EB8303D3F860C34FF0090E9CFBFEFCE9 +:10FDD000664403F55873D3F804C09CFBFEFC6744EB +:10FDE000DDF800C0D2F8C82392FBFEF26244009214 +:10FDF0004268D3F86CC09CFBFEFC6244426082689F +:10FE00001B6FF44693FBFCF39A188260491C092986 +:10FE1000C4DB290000D54942320000D552423B00E4 +:10FE200000D55B42009D002D00D56D4200954568D0 +:10FE3000002D01D56D4245608568002D01D56D42CC +:10FE400085600025009EB14200DA012541688A42A2 +:10FE500000DA6D1C8068834200DA6D1C04F23442C3 +:10FE60009068092800DB6D1C042D0FD194F8341420 +:10FE7000032908DB526804F16400FCF72DFF012020 +:10FE800001F063FB02E00846FCF71FFF09B0F0BD7C +:10FE90002DE9F0410446DFF8D459002085F83404F8 +:10FEA00005F234467060074605F1080825E005EBC9 +:10FEB000870090ED330AD8ED0D0AB4EE600AF1EE3A +:10FEC00010FA19DBD8E912230020DFF8AC19E1F7AA +:10FED00047FE21F00041DFF8A429DFF8A439E2F75A +:10FEE000AFF809D295F83404401C85F834047068E2 +:10FEF0000121B940084370607F1C032FD7DB95F8C0 +:10FF00003404002815D0002709E004EBC70041683D +:10FF10000068E1F7D9FD05EB870148667F1C032FD8 +:10FF2000F3DB0020B060A868042802DA95F83404F6 +:10FF3000A86095F8340403281DD198ED010ADFED7F +:10FF4000BD0AB4EE600AF1EE10FA14D5D8E9122316 +:10FF50000020DFF82419E1F703FE21F00041DFF86B +:10FF60001C29DFF81C39E2F76BF804D2A8680328D3 +:10FF700001D10420A86098ED020ADFEDAF0AB4EECB +:10FF8000600AF1EE10FA1DD598ED010ADFEDAB0A1B +:10FF9000B4EE600AF1EE10FA14D5D8E9122300206D +:10FFA000DFF8D418E1F7DCFD21F00041DFF8D428B8 +:10FFB000DFF8D438E2F744F804D2A868042801D165 +:10FFC0000520A860BDE8F0812DE9F0410446DFF886 +:10FFD0009C78D7F8B404012850D107F1E005F7EE7A +:10FFE000000AB7EE000A07F5E471284601F03AFC72 +:10FFF00007F1500207F5D471284601F039FE0600DA :020000023000CC -:10000000C80A10EE100AE1F73BFCC7E9140107F536 -:10001000D07407F15008D4E90201E1F747FDC8F8B0 -:100020000800D4E90401E1F741FDC8F80C00D4E967 -:100030000601E1F73BFDC8F81000D7E9680101228D -:10004000DFF82838E1F7D6FF09D89FED750AF0EE02 -:10005000400A2946284601F0F5FB00E0002630461C -:10006000BDE8F08190ED030AD0ED040AF4EE400AF9 -:10007000F1EE10FA1BD590ED051AB4EE401AF1EE30 -:1000800010FA14D50021016490ED040AD0ED050AA0 -:10009000B4EE600AF1EE10FA04DB012141640221A2 -:1000A0008164704702214164012181647047B4EE8C -:1000B000600AF1EE10FA1BD590ED050AB4EE600A65 -:1000C000F1EE10FA14D50121016490ED030AD0ED90 -:1000D000050AB4EE600AF1EE10FA04DB0021416477 -:1000E00002218164704702214164002181647047CC -:1000F0000221016490ED030AB4EE600AF1EE10FAF9 -:1001000004DB0021416401218164704701214164C5 -:100110000021816470470021C1640B4606E01A4645 -:1001200040F8212000EB81025362491C0329F6DBD1 -:100130000121416719468167704710B5044604F1F3 -:100140005400142141600A21C1600021017720463A -:10015000FFF7E1FF0020606510BD000038B52DED10 -:10016000028B86B003A9FFF7A3FD9FEDB18B00249E -:1001700018E003A850F8240000EE100ABAEEC80AEE -:1001800000A800EB840080ED000A20EE000A10EECB -:10019000100AE1F775FB53EC182BE1F7D3FC41ECA7 -:1001A000180B641C032CE4DBB0EE480AF0EE680A7E -:1001B000F8F7EEFEB0EE408AF0EE608A002419E017 -:1001C00000EB840500A850F82400E1F759FB53EC3C -:1001D000182BE1F7EBFDF0F745F900EE100AD5F822 -:1001E000400400EE900A30EE200A05F2404080ED17 -:1001F000000A641CDFF85406032CE1DBD0F89414E9 -:10020000491CC0F894140121C0F8BC1406B0BDEC20 -:10021000028B31BDAF47E13D00007A43BD74933C92 -:10022000CDCCCC3E38B50446002004F13C0507E0B7 -:10023000B1EE400A81ED030A002144F82010401C71 -:10024000032838DA95ED050AB8EEC00A04EB800100 -:10025000D1ED000A80EE800AF0EE400AF5EE400A89 -:10026000F1EE10FA02DBB0EE601A01E0B1EE601AB6 -:10027000D1ED061AF5EE401AF1EE10FA01DAF1EEC0 -:10028000611A31EE611A81ED0C1AC1ED060AD4ED46 -:100290000F0ABFEE001A30EE811AD1ED091A01EEF5 -:1002A000210A80EE200A81ED090AB5EE400AF1EE3E -:1002B00010FABDDBBEE72046FFF7D4FE2869B0F593 -:1002C0007A7F01DA401C2861686894F8701005296B -:1002D00000F28380DFE801F0030E192C6C4004F17A -:1002E000700001214160816000202861084684F887 -:1002F000700031BD04F17000C16801296DD1022187 -:1003000084F870100021816031BD04EB800090ED15 -:10031000030AD5ED0A0AB4EE600AF1EE10FA12DA19 -:10032000D5ED0B0AF4EE400AF1EE10FA4BDB2BE0B0 -:1003300004EB800090ED030AD5ED0A0AB4EE600AE2 -:10034000F1EE10FA49DB042084F8700004F170002B -:1003500000214160816031BD04EB800095ED0B0A06 -:10036000D0ED030AB4EE600AF1EE10FA0CDA90ED6B -:100370000C0ADFED330AB4EE600AF1EE10FA0CD588 -:100380002869696A884228DB032084F8700004F138 -:10039000700001214160816031BD042084F870004B -:1003A0000020286104F1700000214160816031BDAE -:1003B00095ED0C0A04EB8000D0ED030AB4EE600A60 -:1003C000F1EE10FA09DB052084F8700000202861A6 -:1003D00004F1700001214160816031BD10B52DED47 -:1003E000028B08EE100ADFF86444B8EEC80ADFEDAD -:1003F000120A20EE200ADFED110A80EE200A10EE2C -:10040000100AE1F73DFA41EC100B01F0AFFF53EC9D -:10041000102B0020DFF85814E1F76AFAE1F746FBE9 -:10042000C4F8840084ED208ABDEC028B10BD00006E -:100430000000000000000000368D27400024F44931 -:10044000CCCC4CBD2DE9F0472DED028B90B004468D -:1004500002A800210A460B460EC004F13006B06C1B -:10046000DFF8E85344F62061884206DBD5F88010B7 -:10047000884212D0FFF7B2FF0FE0D5F8582380185A -:10048000C5F858038842C0F26781B16C814201D03F -:10049000FFF7A4FF0020C5F85803206BC5F8C0047F -:1004A0002046FFF75BFED5F89404D5F890148842F7 -:1004B00006DB05F58860FFF7B5FE0020C5F894045B -:1004C000D5F8B804012802D12046FFF712FCD5F870 -:1004D000B404012840F0408102A801F05DF802A8B0 -:1004E000D0ED020A90ED011A9DED020ADDED021A2F -:1004F00020EE210A01EE010A00EEA00A01F0EAF85E -:1005000085ED030ABEEE410A10EE100AADF80000B8 -:1005100000A800214180818005F52C773946FDF740 -:10052000BFF908A800F089FF296F089800F07FFA4A -:1005300081460DF12008696FD8F8040000F077FAC1 -:100540008246A96FD8F8080000F071FA0AEB090199 -:1005500000EB0109E96FD8F80C0000F068FA00EB35 -:100560000908102208A905F17000E1F772FD4FF0AB -:1005700000091CE004EB490A716CBAF9540000044C -:1005800000F055FA00EE100A0CA800EB890080ED8F -:10059000000ABAEEC80A05EB890080ED050A05A835 -:1005A000BAF95410090440F8291009F10109B9F108 -:1005B000030FDFDB05A905F5E47001F0E2F9D5F8DA -:1005C000280329688842C0F2C78094ED428ABAEEB7 -:1005D000C88A95ED360AB5EE400AF1EE10FA0BD056 -:1005E00038EE400A10EE100AE1F74AF921F0004116 -:1005F000EFF738FFC5F8DC0085ED368AA8680328D8 -:1006000004D9001F0AD0401E0FD014E09948A863F7 -:100610004FF07E50E863C82028640CE09648A86339 -:100620009648E8636420286405E09548A8639548E7 -:10063000E863322028643846FCF7EFFF01F058F8F1 -:1006400000EE100ADFED800A80EE200A85ED040A34 -:10065000A822002105F52C70E1F701FDD5F88400F2 -:10066000404549DA95ED040AB5EE400AF1EE10FA7C -:1006700042DDD5ED0E0AB4EE600AF1EE10FA3BD57C -:100680006868296C884205DA2046FFF78DFC00284F -:1006900010D161E095ED2C0ADFED6E0AB4EE600A30 -:1006A000F1EE10FA06DB2046FFF77EFC002853D05F -:1006B00000206860002005E005EB80014A69C1F870 -:1006C000B420401C0328F7DBFFF7D1FA4FF00009F4 -:1006D0000BE005EB890090ED080AD0ED0B0A30EE37 -:1006E000600A80ED330A09F10109B9F1030FF0DB6B -:1006F00005F5D470FFF7BCFB00200CE005EB800192 -:1007000091ED260AD1ED050A30EE600AB0EEC00A7E -:1007100081ED290A401C0328F0DB95ED290AD5ED6F -:100720002A0A30EE200AD5ED2B0A30EE200A85ED9C -:100730002C0A4FF0000906E005EB89004169C0F87A -:10074000981009F10109B9F1030FF5DBE822002146 -:1007500005F5E470E1F783FC002010B0BDEC028BDE -:10076000BDE8F08710B5394C4FF49B62002120465C -:10077000E1F775FC102020604FF080402067FFF704 -:1007800066FA04F58860FFF7D8FC2068C4F8900486 -:100790004FF08440C4F87C041E20C4F89C043A48FE -:1007A000C4F8A8043948C4F8A4043948C4F8AC040F -:1007B0001920FDF787FB002010BD012240F25231C5 -:1007C0003448FCF7D6BB10B5204C4FF49B62014671 -:1007D0002046E1F73EFC0120C4F89400002010BD43 -:1007E00080B51A490022C1F894204FF49B62E1F7CA -:1007F00030FC002002BD10B5FFF7B4FF040009D0A3 -:100800004FF437730FF29C020FF2BC01FFF71EFA90 -:10081000204610BD204800F039FF040009D040F206 -:10082000DF230FF280020FF2A001FFF70FFA20463C -:1008300010BD42F226034FF49B6218491848BDE8E8 -:10084000104000F0D2BE000000401C4640CB00200B -:1008500000401CC6CDCC4C3D0000F0BF9A99999940 -:100860009999B93F9CC420B07268913F0070A7402D -:100870000000D0410080BB44000096439A99993F04 -:10088000000070423333B33FCDCCCC3ECDCC4C3F97 -:100890003333333F45040308BB070308E10703086C -:1008A000C7070308696E765F656E61626C655F6994 -:1008B0006E5F7573655F6175746F5F63616C6962AC -:1008C000726174696F6E0000433A5C54656D705CD0 -:1008D0004955535C494B445C5461652D536F6F5CC3 -:1008E000656D6265646465645F7265666572656E98 -:1008F00063655F666F725F4E6F74655F335C656DD5 -:100900006265646465645C496E76656E53656E739A -:10091000655C6D706C5C616363656C5F6175746F61 -:100920005F63616C2E63000010B590B01446002226 -:10093000009200AA90ED010AB8EEC00AD1ED020AB9 -:10094000F8EEE00A20EE200AD0ED020AF8EEE00A06 -:1009500091ED011AB8EEC11A00EEC10A82ED010A4A -:1009600090ED020AB8EEC00AD1ED000AF8EEE00AF6 -:1009700020EE200AD0ED000AF8EEE00A91ED021A0E -:10098000B8EEC11A00EEC10A82ED020A90ED000A2B -:10099000B8EEC00AD1ED010AF8EEE00A20EE200A16 -:1009A000D0ED010AF8EEE00A91ED001AB8EEC11A96 -:1009B00000EEC10A8DED030A0CAA00A9204600F042 -:1009C000E0F804A9204600F0FAF908AA04A90CA846 -:1009D00000F0D7F808A890ED020AB5EE400AF1EE53 -:1009E00010FA09D1D0ED010AF5EE400AF1EE10FA45 -:1009F00002D19FED530A05E0D0ED010AF8F752FB52 -:100A0000B1EE400A10B010BD00210A4605E050F8D2 -:100A100022305B1303FB0311521C032AF7DB084649 -:100A2000704781FB0001400F40EAC100704781FB25 -:100A30000001800F40EA810070472DE9F041044633 -:100A40000D46164629682068FFF7F1FF07466968DA -:100A50006068FFF7ECFF8046A968A068FFF7E7FF32 -:100A6000A7EB08010F1AE968E068FFF7E0FF381A02 -:100A7000306069682068FFF7DAFF07462968606818 -:100A8000FFF7D5FF8046E968A068FFF7D0FF08EBC5 -:100A900007014718A968E068FFF7C9FF381A7060B6 -:100AA000A9682068FFF7C3FF0746E9686068FFF799 -:100AB000BEFF80462968A068FFF7B9FFA7EB0801D1 -:100AC00047186968E068FFF7B2FFC019B060E968CD -:100AD0002068FFF7ACFF0746A9686068FFF7A7FF2B -:100AE00080466968A068FFF7A2FF08EB07010F1AAC -:100AF0002968E068FFF79BFFC019F060BDE8F0814E -:100B000010B403680C68E318136043684C68E3187A -:100B1000536083688C68E3189360C068C9680818DC -:100B2000D06010BC704702680A60426852424A6056 -:100B3000826852428A60C0684042C86070470000C4 -:100B40000000000030B591B004461546002000902A -:100B50000C2201A8E1F77DFA0CAA00A92046FFF7B4 -:100B60006CFF08A92046FFF7DEFF04AA08A90CA81D -:100B7000FFF763FF0C2205A92846E1F76AFA11B0D6 -:100B800030BD90ED000AD1ED000A20EE200AD0ED34 -:100B9000010A91ED011A00EEC10AD0ED020A91EDB1 -:100BA000021A00EEC10AD0ED030A91ED031A00EE1D -:100BB000C10A82ED000A90ED000AD1ED010A20EE93 -:100BC000200AD0ED010A91ED001A00EE810AD0ED65 -:100BD000020A91ED031A00EE810AD0ED030A91EDAD -:100BE000021A00EEC10A82ED010A90ED000AD1ED71 -:100BF000020A20EE200AD0ED010A91ED031A00EE60 -:100C0000C10AD0ED020A91ED001A00EE810AD0ED82 -:100C1000030A91ED011A00EE810A82ED020A90EDBD -:100C2000000AD1ED030A20EE200AD0ED010A91ED71 -:100C3000021A00EE810AD0ED020A91ED011A00EECF -:100C4000C10AD0ED030A91ED001A00EE810A82ED8F -:100C5000030A704790ED000AD1ED000A30EE200A39 -:100C600082ED000A90ED010AD1ED010A30EE200A72 -:100C700082ED010A90ED020AD1ED020A30EE200A5F -:100C800082ED020A90ED030AD1ED030A30EE200A4C -:100C900082ED030A704790ED030AD0ED020A90ED51 -:100CA000011AD0ED001A21EEA12A01EE012A00EE70 -:100CB000A02A00EE002AB0EE000AB4EE402AF1EEBF -:100CC00010FA3AD5B6EE000A22EE000A60EE020AE9 -:100CD000B7EE081A00EEC21A61EE020A20EE201AE0 -:100CE000B7EE082A01EE602A62EE200A20EE201AF2 -:100CF000B7EE082A01EE602A62EE200A20EE200AF2 -:100D0000B7EE081A00EE601A21EE202A21EE820AC0 -:100D100080ED000A90ED010A20EE020A80ED010A42 -:100D200090ED020A20EE020A80ED020A90ED030A1D -:100D300020EE020A80ED030A70474FF07E510160F9 -:100D4000002141608160C160704710B50446D4ED58 -:100D5000030A94ED021AD4ED011A94ED000A20EE74 -:100D6000000A01EEA10A01EE010A00EEA00A00F05D -:100D7000B1FCB5EE400AF1EE10FA18D0D4ED000A3D -:100D8000C0EE800AC4ED000AD4ED010AC0EE800A6C -:100D9000C4ED010AD4ED020AC0EE800AC4ED020AD5 -:100DA000D4ED030A80EE800A84ED030A10BD4FF0F3 -:100DB0007E50206000206060A060E06010BD02688E -:100DC0000A6090ED010AB1EE400A81ED010A90ED52 -:100DD000020AB1EE400A81ED020A90ED030AB1EE7B -:100DE000400A81ED030A704770B505460C466868F5 -:100DF0000146FFF716FE064629680846FFF711FE72 -:100E00008019A0F180402060A9686868FFF709FE9A -:100E100006462968E868FFF704FE301A6060E96852 -:100E20006868FFF7FEFD06462968A868FFF7F9FD28 -:100E30008019A060A9686868FFF7F3FD0646296875 -:100E4000E868FFF7EEFD8019E060A8680146FFF74B -:100E5000E8FD064628680146FFF7E3FD8019A0F18A -:100E600080402061E968A868FFF7DBFD0646296835 -:100E70006868FFF7D6FD301A6061E9686868FFF7B7 -:100E8000D0FD06462968A868FFF7CBFD301AA0619F -:100E9000E968A868FFF7C5FD064629686868FFF796 -:100EA000C0FD8019E061E8680146FFF7BAFD06461B -:100EB00028680146FFF7B5FD8019A0F18040206247 -:100EC00070BD90F90010012901DB00207047002956 -:100ED00001D50420704790F90110012901DB0120A0 -:100EE0007047002901D50520704790F902000128BC -:100EF00001DB02207047002801D50620704707203B -:100F0000704738B50446FFF7DCFF0546E01CFFF7E5 -:100F1000D8FF45EAC005A01DFFF7D3FF45EA8010C2 -:100F200080B232BD2DE9F04107460C4615461E46FB -:100F3000780702D54FF0FF3000E00120B84608F0F6 -:100F4000030255F822205043FFF771FD3060B806C8 -:100F500002D54FF0FF3000E0012021464FEA680241 -:100F600002F00C0252595043FFF761FD7060F80522 -:100F700002D54FF0FF3000E0012021464FEA281251 -:100F800002F00C0252595043FFF751FDB060BDE82A -:100F9000F08110B400220260426005E000EB8203A1 -:100FA00051F822401C61521C052AF7DB10BC704727 -:100FB00080ED090A80ED0A0AD0ED060AB7EE001AA4 -:100FC00070EE810A90ED071A70EE810A80EE200A19 -:100FD00080ED000A80ED010A704780ED090A90ED6E -:100FE000010AD0ED000AD0ED061A90ED091A01EEC3 -:100FF000E01AD0ED071A01EEC01A90ED042AF0EEC7 -:10100000411A42EE201AD0ED050A40EE801AC0EDDA -:101010000A1A90ED080A21EE800A80ED0A0A01689A -:10102000416080ED001A70472DE9F84304460D46F3 -:101030001646002711E055F8291009EB4900C019A0 -:1010400054F82000FFF7F3FC804409F10109B9F1DD -:10105000030FF0DB46F827807F1C032F03DA4FF0E5 -:101060000008C146F3E7BDE8F183F1B582B001287D -:1010700001DA0020FEBD00A902A800F055F80446E0 -:1010800000250098012806DB0146024602EBD171DB -:101090004910A0EB4105401B00900298A0F1804749 -:1010A00006463946FFF7C3FCA6EB6006022C23DB9D -:1010B0007810A0F1C0413846FFF7B9FC0146384628 -:1010C000FFF7B5FC471039463046FFF7B0FCA6EBFA -:1010D0006006032C10D17810A0F1C0413846FFF70C -:1010E000A6FC01463846FFF7A2FC471039463046B9 -:1010F000FFF79DFCA6EB6006002D04D02749304683 -:10110000FFF795FC06460098012802DB40100641D7 -:1011100007E010F1010F04D121493046FFF787FCA9 -:1011200006463046FEBD000070B504460D462068F8 -:101130001C49884205DB401020604FF0FF302860DA -:101140001AE0194EB04215DA204600F039F828604E -:1011500020681649884205DB401020602868401E40 -:10116000286009E0B04207DA400020602868401C8F -:10117000286001E00020286020680D4909180D4A08 -:10118000914201D3032070BD0B4908180B498842D6 -:1011900001D3022070BD012070BD0000CD3C412D67 -:1011A0009A79825AFD0BB958FE855C2CFC0BB95814 -:1011B000666666C6CDCCCC0C0AD7A3C015AE470177 -:1011C00000210268002A01D108467047130C1B0455 -:1011D00002D1102112040260026812F07F4F02D186 -:1011E000083112020260026812F0704F02D1091D2C -:1011F00012010260026812F0404F02D1891C920075 -:1012000002600268002A02D5491E520802600846A0 -:101210007047F8B504460D4620680146FFF707FC05 -:10122000064661680846FFF702FC0746A0680146CB -:10123000FFF7FDFBC6F18041C91B081AFFF715FF38 -:101240002860206868606068A860A068E860002086 -:10125000F2BD000080B58DF800108DF8012002234A -:1012600000AAD0210020DEF7A1FF012801D1002033 -:1012700002BD4FF0FF3002BD38B51446094D29704C -:101280001946681CE0F7E5FE631CDBB22A46D02154 -:101290000020DEF78BFF012801D1002032BD4FF086 -:1012A000FF3032BD30FB002080B5D2B200920A463A -:1012B000D0210020DEF7B8FF012801D1002002BDB7 -:1012C0004FF0FF3002BD0EB4002003B0704780B570 -:1012D000DEF7A9FE6421DFF75FF8002002BD000001 -:1012E0000300002013F0030F09D0521E22BF13F891 -:1012F000010B11F801CBB0EB0C00F3D07047121FBB -:1013000022BF53F8040B51F804CB6045F7D0121DEF -:101310000AD200BA9CFA8CFCB0EB0C0038BF6FF01C -:10132000000088BF01207047521E22BF13F8010B36 -:1013300011F801CBB0EB0C00F6D0521C08BF1046E0 -:101340007047704770B514461D46DFF8386206F1E5 -:1013500048014A6F42F002024A671022014606F134 -:101360001000E0F776FEC6E9124570BD70B5144670 -:101370001D46DFF8106206F14001CA6F42F001021B -:10138000CA671022014606F17000E0F762FEC6E966 -:10139000104570BDDFF8EC11D1F8A820026091F87B -:1013A000A400704718B40146DFF8D82102F1A40365 -:1013B00092F8A440A04208D1022903D15868401CE9 -:1013C000586010E0002058600DE000245C6082F856 -:1013D000A400012901D1012000E0022022460321BE -:1013E00018BC00F037B911BC704770B50446654DA4 -:1013F000E9686868FFF715FB06462968A868FFF7E3 -:1014000010FB301A2060E968A868FFF70AFB06465F -:1014100029686868FFF705FB80196060E868014685 -:10142000FFF7FFFA064629680846FFF7FAFA80191F -:10143000A0F18040A060002070BD80B5102252490C -:10144000E0F707FE002002BD38B504464D4D95F883 -:10145000BC0010F0030F0CD02A4605F1100105F175 -:101460007000FFF7EAFAD5F8BC0020F00300C5F8D9 -:10147000BC00102229462046E0F7EBFD002032BDDB -:1014800038B50C461546FFF7DFFFFBF789FBC5E9CA -:101490000001FBF76EFB002803D0FBF77BFE20600A -:1014A00031BDFBF76EFB002803D0FBF770FE206018 -:1014B00031BDFBF76DFB002803D0FBF775FE206004 -:1014C00031BD0020206031BD2E49C1F8C000002090 -:1014D000704780B507224FF448712C48FBF749FD4F -:1014E000002002BD10B5274CD02200212046E0F795 -:1014F000B6FD4FF080406066A066E0662067206120 -:10150000206020622063C4F880002148C4F8C40031 -:10151000002010BD80B5FFF7E5FF002804D11D486D -:10152000BDE8024000F0B2B802BD1649C1F894000F -:1015300070471449C1F8B000704710B584B004007A -:1015400018D000221146FBF7EFFD00A8FFF74DFF72 -:1015500020680099A0EBA130206000A86168426873 -:10156000A1EBA2316160A1688068A1EBA030A0600E -:10157000002000E0162004B010BD024890ED310AB2 -:1015800070470000F8F2002008F30020C914030897 -:10159000DB0F4940D314030810B584B0040016D003 -:1015A00000A8FFF7CAFF002811D100200BE000A916 -:1015B00051F8201000EE101ABAEEC80A04EB8001B0 -:1015C00081ED000A401C0328F1DB002000E016201A -:1015D00004B010BD10B51E4C4FF4CC720021204653 -:1015E000E0F73DFD0C20606010BD70B4002500E008 -:1015F0006D1C174C2668B54209DA05EB450604EB6D -:101600008604D4F8B040A342F2D116201EE0142E76 -:1016100001DB16201AE00C2505FB0646C6F8B030A3 -:10162000236805FB0343C3F8A820236804EB830366 -:101630009860206804EB80008165606802F10C010D -:10164000081860602068401C2060002070BC704753 -:1016500070ED0020002A05D1074A136823EA010132 -:10166000084310607047044A1168002801D0002028 -:10167000106008467047000048FE002080B55422E4 -:1016800000211348E0F7EBFC002002BD10490A6876 -:10169000142A01DB1620704701EB820250600868B3 -:1016A000401C08600020704738B50024254609E03A -:1016B00000EB850040688047002802D0002C00D154 -:1016C00004466D1C024801688D42F1DB204632BDA4 -:1016D000DCF90020B5EEC00AF1EE10FA02D4B1EE4A -:1016E000C00A70476FF0004C00EE10CAF8F7F2BD68 -:1016F000002940F10B80F4464942404271F100015B -:1017000000F00AF850F000406047000050EA010283 -:1017100000F00E80094200BF0BD1B0FA80F1884082 -:10172000C1F19D01C905020672F1004241EB102092 -:101730007047B1FA81F241409040C2F1200261FA53 -:1017400002F181EA000018BF40F0010002F19D01A2 -:10175000E8E70000C0F3C7517F392CD420290DDA07 -:10176000C1F11F0C41004FEAC11141F0004121FAC3 -:101770000CF0894128BF4042C9437047D1F13F0C6A -:101780001CD441004FEAC11141F0004161FA0CF054 -:1017900021FA0CF180EA0100094244BF4FF00041F8 -:1017A000002004D34942404271F10001704701D545 -:1017B000401E491E704700200021704709424FF02B -:1017C000004158BFC943002070470000D2B2203A00 -:1017D00022BF00FA02F1002070475242D041D2F1FC -:1017E000200291404140D04090404140704700006D -:1017F00080B500F00DF8B5EE400AF1EE10FA02D017 -:101800000548406C02BD012002BD0348C06C704712 -:10181000014890ED160A704730FA002010B5FFF726 -:10182000E7FF0446FFF7F1FF204310BD012000F061 -:10183000A7BD002000F0A4BD10B5044600F056FE80 -:10184000204610BD2DE9F8432DED048B0646894650 -:10185000B0EE408A10EE900AE0F712F841EC190B56 -:1018600018EE100AE0F70CF841EC180B53EC182BAB -:10187000D6E93001E0F73CF804460D4653EC192B4D -:10188000D9E93001E0F734F822462B46E0F75AF95F -:10189000C6E93001002734E051EC180B06EBC70213 -:1018A00053681268E0F724F804460D4651EC190B12 -:1018B00009EBC70253681268E0F71AF822462B4674 -:1018C000E0F740F906EBC702C2E9000106EBC708E2 -:1018D00051EC180BD8E92423E0F70AF804460D462A -:1018E00053EC192B09EBC700D0F89410D0F89000F6 -:1018F000DFF7FEFF22462B46E0F724F9C8E9240172 -:101900007F1C062FC8DB002718E006EBC70851EC48 -:10191000180BD8E91223DFF7EBFF04460D4653EC12 -:10192000192B09EBC700C16C806CDFF7E1FF224681 -:101930002B46E0F707F9C8E912017F1C092FE4DB09 -:10194000002718E006EBC70851EC180BD8E90C2368 -:10195000DFF7CEFF04460D4653EC192B09EBC70009 -:10196000416B006BDFF7C4FF22462B46E0F7EAF835 -:10197000C8E90C017F1C032FE4DBBDEC048BBDE840 -:10198000F18338B52DED108B82B005460C462068EA -:10199000E0F7C0F841EC180B6068E0F7BBF841ECE9 -:1019A000190BA068E0F7B6F841EC1A0BD5E9302323 -:1019B0000020DFF8B019E0F7C5F8C5E93001D5E936 -:1019C0000C2351EC180BE0F7BDF8C5E90C01D5E983 -:1019D0000E2351EC190BE0F7B5F8C5E90E01D5E976 -:1019E000102351EC1A0BE0F7ADF8C5E9100153ECE8 -:1019F000182B51EC180BDFF77BFF41EC1B0B53EC62 -:101A00001B2BD5E90001E0F79DF8C5E9000153EC77 -:101A1000182B51EC190BDFF76BFF41EC1F0B53EC4C -:101A20001F2BD5E90201E0F78DF8C5E9020153EC5F -:101A3000182B51EC1A0BDFF75BFF41EC1C0B53EC3E -:101A40001C2BD5E90401E0F77DF8C5E9040153EC4E -:101A5000192B51EC190BDFF74BFF41EC1D0B53EC2D -:101A60001D2BD5E90601E0F76DF8C5E9060153EC39 -:101A7000192B51EC1A0BDFF73BFF41EC1E0B53EC1B -:101A80001E2BD5E90801E0F75DF8C5E9080153EC24 -:101A90001A2B51EC1A0BDFF72BFFD5E90A23E0F7DD -:101AA00051F8C5E90A0153EC1B2B51EC180BDFF779 -:101AB0001FFFCDE90001DDE90023D5E91201E0F7C0 -:101AC00041F8C5E9120153EC1F2B51EC190BDFF75C -:101AD0000FFFD5E91423E0F735F8C5E9140153ECFD -:101AE0001C2B51EC1A0BDFF703FFD5E91623E0F7A7 -:101AF00029F8C5E9160153EC1F2B51EC180BDFF741 -:101B0000F7FED5E91823E0F71DF8C5E9180153ECF5 -:101B10001D2B51EC190BDFF7EBFE41EC1F0B53ECC7 -:101B20001F2BD5E91A01E0F70DF8C5E91A0153ECAE -:101B30001E2B51EC1A0BDFF7DBFED5E91C23E0F777 -:101B400001F8C5E91C0153EC1C2B51EC180BDFF715 -:101B5000CFFED5E91E23DFF7F5FFC5E91E0153ECE3 -:101B60001E2B51EC190BDFF7C3FED5E92023DFF75D -:101B7000E9FFC5E9200153EC1A2B51EC1A0BDFF7F2 -:101B8000B7FE53EC1A2BDFF7B3FE41EC1C0B53EC02 -:101B90001C2BD5E92201DFF7D5FFC5E92201DDE9DC -:101BA000002351EC180BDFF7A3FED5E92423DFF760 -:101BB000C9FFC5E9240153EC1F2B51EC190BDFF7CA -:101BC00097FED5E92623DFF7BDFFC5E9260153ECD3 -:101BD0001C2B51EC1A0BDFF78BFED5E92823DFF71E -:101BE000B1FFC5E9280153EC1B2B51EC190BDFF7B2 -:101BF0007FFE53EC192BDFF77BFED5E92A23DFF7B5 -:101C0000A1FFC5E92A0153EC1B2B51EC1A0BDFF79E -:101C10006FFE53EC1A2BDFF76BFED5E92C23DFF7B1 -:101C200091FFC5E92C0153EC1D2B51EC1A0BDFF78A -:101C30005FFE53EC1A2BDFF75BFED5E92E23DFF7AF -:101C400081FFC5E92E0102B0BDEC108B31BD000053 -:101C50002DE9F84F2DED108B8CB080460C46914647 -:101C600098ED0CEB98ED308B98ED000B8DED000BA3 -:101C700053EC182BDDE90001DFF73AFE06460F466C -:101C800053EC1E2B51EC1E0BDFF732FE02460B46C7 -:101C900030463946DFF7CAFFCDE9040198ED0EFB67 -:101CA00098ED060B8DED020B53EC182BDDE90201CC -:101CB000DFF71EFE06460F4653EC1F2B51EC1F0BA1 -:101CC000DFF716FE02460B4630463946DFF7AEFF19 -:101CD000CDE9080198ED109B98ED0AAB53EC182B59 -:101CE00051EC1A0BDFF704FE06460F4653EC192B96 -:101CF00051EC190BDFF7FCFD02460B463046394626 -:101D0000DFF794FFCDE9060153EC182BD8E9020167 -:101D1000DFF7EEFD06460F4653EC1E2B51EC1F0B72 -:101D2000DFF7E6FD02460B4630463946DFF77EFF19 -:101D300041EC1B0B53EC182BD8E90401DFF7D8FD5D -:101D400006460F4653EC1E2B51EC190BDFF7D0FD66 -:101D500002460B4630463946DFF768FF41EC1C0B64 -:101D600053EC182BD8E90801DFF7C2FD06460F46F1 -:101D700053EC1F2B51EC190BDFF7BAFD02460B4653 -:101D800030463946DFF752FF41EC1D0B53EC182B60 -:101D9000D8E91201DFF7ACFD06460F4653EC1E2BC7 -:101DA000DDE90001DFF7A4FD02460B463046394667 -:101DB000DFF73CFF06460F4653EC182BD8E9140119 -:101DC000DFF796FD32463B46DFF7BCFE06460F4680 -:101DD00053EC1E2BDDE90201DFF78AFD02460B46BC -:101DE00030463946DFF722FF06460F4653EC182BE4 -:101DF000D8E91601DFF77CFD32463B46DFF7A2FE4D -:101E000006460F4653EC1E2B51EC1A0BDFF770FD04 -:101E100002460B4630463946DFF708FF0022DFF85E -:101E20004835DFF765FD41EC1E0B53EC182BD8E964 -:101E30001801DFF75DFD06460F4653EC1F2BDDE969 -:101E40000001DFF755FD02460B4630463946DFF705 -:101E5000EDFE06460F4653EC182BD8E91A01DFF7C2 -:101E600047FD32463B46DFF76DFE06460F4653EC14 -:101E70001F2BDDE90201DFF73BFD02460B46304632 -:101E80003946DFF7D3FE06460F4653EC182BD8E948 -:101E90001C01DFF72DFD32463B46DFF753FE0646B9 -:101EA0000F4653EC1F2B51EC1A0BDFF721FD0246B6 -:101EB0000B4630463946DFF7B9FE0022DFF8A8347A -:101EC000DFF716FD41EC1F0B53EC182BD8E91E0170 -:101ED000DFF70EFD06460F4653EC192BDDE9000136 -:101EE000DFF706FD02460B4630463946DFF79EFE19 -:101EF00006460F4653EC182BD8E92001DFF7F8FC13 -:101F000032463B46DFF71EFE06460F4653EC192BC2 -:101F1000DDE90201DFF7ECFC02460B4630463946AC -:101F2000DFF784FE06460F4653EC182BD8E9220152 -:101F3000DFF7DEFC32463B46DFF704FE06460F467F -:101F400053EC192B51EC1A0BDFF7D2FC02460B466F -:101F500030463946DFF76AFE0022DFF80C34DFF73F -:101F6000C7FC41EC190BDDE90423DDE90801DFF7CB -:101F7000BFFCCDE90201DDE9082351EC1C0BDFF7C2 -:101F8000B7FCCDE90001DDE9062351EC1B0BDFF7BF -:101F9000AFFCCDE90A019FEDF18BDDE90A2351EC9D -:101FA0001B0BDFF7A5FC06460F4653EC1B2B51EC31 -:101FB000180BDFF79DFC53EC1C2BDFF799FC53EC5F -:101FC0001D2BDFF795FC02460B4630463946DFF7FE -:101FD0002DFE06460F46DDE9002351EC1C0BDFF712 -:101FE00087FC32463B46DFF7ADFD06460F46DDE98E -:101FF000042351EC1D0BDFF77BFC53EC1D2BDFF7AB -:1020000077FC32463B46DFF79DFD06460F46DDE98D -:102010000223DDE90601DFF76BFC02460B46304682 -:102020003946DFF703FE41EC1A0B53EC1A2B002064 -:102030000146EEF751F800F08B81DDE9082351EC01 -:10204000190BDFF755FC06460F4653EC1D2B51ECE0 -:102050001F0BDFF74DFC02460B4630463946DFF7D3 -:10206000E5FD53EC1C2BDFF743FC06460F4653EC13 -:102070001D2B51EC1D0BDFF73BFC53EC1E2BDFF748 -:1020800037FC32463B46DFF75DFD06460F46DDE98D -:102090000823DDE90601DFF72BFC53EC1E2BDFF7ED -:1020A00027FC02460B4630463946DFF7BFFD0646A1 -:1020B0000F46DDE90A2351EC1F0BDFF719FC32460E -:1020C0003B46DFF73FFD06460F4653EC1B2B51EC1A -:1020D0001D0BDFF70DFC53EC192BDFF709FC024653 -:1020E0000B4630463946DFF7A1FDC4E90001DDE9C2 -:1020F000042351EC190BDFF7FBFB06460F4653ECAC -:102100001C2B51EC1E0BDFF7F3FB02460B4630464F -:102110003946DFF78BFD53EC1D2BDFF7E9FB064655 -:102120000F4653EC1C2B51EC1C0BDFF7E1FB53EC7F -:102130001F2BDFF7DDFB32463B46DFF703FD06468C -:102140000F46DDE90423DDE90601DFF7D1FB53EC9F -:102150001F2BDFF7CDFB02460B4630463946DFF733 -:1021600065FD06460F46DDE90A2351EC1E0BDFF73D -:10217000BFFB32463B46DFF7E5FC06460F4653EC15 -:102180001B2B51EC1C0BDFF7B3FB53EC192BDFF7C8 -:10219000AFFB02460B4630463946DFF747FDC4E940 -:1021A0000201DDE9042351EC1F0BDFF7A1FB06461A -:1021B0000F4653EC1B2B51EC1E0BDFF799FB02462D -:1021C0000B4630463946DFF731FD53EC1D2BDFF768 -:1021D0008FFB06460F4653EC1B2B51EC1B0BDFF716 -:1021E00087FB53EC192BDFF783FB32463B46DFF7C7 -:1021F000A9FC06460F46DDE9022351EC190BDFF777 -:1022000077FB02460B4630463946DFF70FFD0646A0 -:102210000F46DDE9002351EC1E0BDFF769FB324668 -:102220003B46DFF78FFC06460F4653EC1B2B51EC69 -:102230001C0BDFF75DFB53EC1F2BDFF759FB02464E -:102240000B4630463946DFF7F1FCC4E90401D4E916 -:10225000000153EC1A2BDFF7A9FDC4E90001D4E912 -:10226000020153EC1A2BDFF7A1FDC4E90201D4E906 -:10227000040153EC1A2BDFF799FD41EC190B84EDA7 -:10228000049B94ED02AB94ED00BB53EC1B2B51EC83 -:102290001B0BDFF72DFB04460D4653EC1A2B51ECBC -:1022A0001A0BDFF725FB22462B46DFF74BFC0446D3 -:1022B0000D4653EC192B51EC190BDFF719FB224695 -:1022C0002B46DFF73FFC04460D46D8E90023D8E94A -:1022D0000601DFF737FCD8E90A23DFF733FC824633 -:1022E0008B4653EC1B2BD8E90C01DFF701FB0646AC -:1022F0000F4653EC1A2BD8E90E01DFF7F9FA3246F4 -:102300003B46DFF71FFC06460F4653EC192BD8E976 -:102310001001DFF7EDFA32463B46DFF713FC53ECD2 -:10232000182BDFF7E5FA02460B4650465946DFF711 -:102330007DFCD8E93023DFF739FD22462B46DFF755 -:1023400001FC41EC100BF6F723FE89ED000B012098 -:102350000CB0BDEC108BBDE8F28F00BF0000000098 -:10236000000000400000F03F0000E03F80B5012287 -:1023700051EC100B00F0F6F841EC100B01BD000021 -:10238000DFED4A0A10B560EE200AB0EEE01ADFED8C -:10239000481AB4EE611A82B00446F1EE10FA29D55B -:1023A000F5EE400AF1EE10FAACBFB6EE001ABEEE42 -:1023B000001A70EE810AFDEEE00A10EE900AA8B154 -:1023C000FAEEC90A9FED3B1A00EEC10A9FED3A1AD8 -:1023D00000EEC10A9FED391A00EEC10A9FED381ACE -:1023E00000EEC10A9FED371A00EEC10A00F00300AB -:1023F000041921E08DED000A0098C0F3C750FF28B2 -:1024000008D088B9009840020ED1E00748D5B7EE51 -:10241000000A45E00098400246D1FAF7E9FA212186 -:1024200001609FED290A13BD8DED000A00A800F0A0 -:10243000C5FA04199DED000ADFED240AB4EE600A26 -:10244000F1EE10FA0BDBDFED220AB4EE600AF1EEDA -:1024500010FA04D5E00723D5B7EE000A20E060EEBD -:10246000000AE0070ED59FED1B0A9FED1B1A00EE38 -:10247000801ADFED1A1A41EE201AB7EE000A01EEBB -:10248000A00A0DE0DFED161A9FED162A00EEA12A34 -:10249000DFED151A20EE201A42EE201A01EE210A75 -:1024A000A00748BFB1EE400A13BD000083F9223FE8 -:1024B0000000004F0000C94600A0FD400020A23AE5 -:1024C000000034330030C22EFFFFFF7FFEFF7FB9D4 -:1024D000000080399349B2BA36A02A3DDFFFFFBE23 -:1024E0006E8C4CB94283083CA1AA2ABE81423ABFF5 -:1024F00053189842E2F7D4BB8018990707D0521EB0 -:1025000024BF13F8011D00F8011DF6D8704781079C -:102510001CD1103A07D330B433E93210103A20E915 -:102520003210F9D230BC1032121F24BF53F8041DF0 -:1025300040F8041DF8D838BF121D521E24BF13F8EE -:10254000011D00F8011DF8D8704700BF083A07D3F5 -:1025500033E90210083A40F804CD40F8041DF7D2E0 -:102560000832EAE7F0B52DED048B154641EC180B67 -:1025700083B053EC182BC448C449DFF7B9F9C44AF7 -:10258000C44B41EC190B21F00041DFF74BFD80F00B -:10259000F38051EC190B00220023DFF72BFD53ECE5 -:1025A000192B99BF0020BC490020BC49DFF7CAFAAB -:1025B000DFF77CFA040051D0DFF7ACFA0022B84B09 -:1025C000DFF796F941EC190B53EC192B4FF0A040B3 -:1025D000B449DFF78DF902460B4651EC180BDFF7D3 -:1025E00025FB06460F4653EC192B4FF0C040AE4971 -:1025F000DFF77EF902460B4630463946DFF716FB19 -:1026000006460F4653EC192B4FF00050A749DFF751 -:102610006FF902460B4630463946DFF707FB0646A0 -:102620000F4653EC192B0020A149DFF761F9024650 -:102630000B4630463946DFF7F9FA06460F4653ECAB -:10264000192B4FF000509B49DFF752F902460B4619 -:1026500030463946DFF7EAFA41EC180B04F0030084 -:10266000451951EC180B6FF00102944BDFF7C2FCD7 -:102670000BD800224FF07953DFF7D4FC05D2E807DE -:1026800040F18E819FED8E8B8AE153EC182BDFF7A2 -:102690002FF941EC190BE80731D553EC192B8A4877 -:1026A0008A49DFF725F98A4A8A4BDFF74BFA53EC60 -:1026B000192BDFF71DF9884A884BDFF743FA53ECF3 -:1026C000192BDFF715F9864A864BDFF73BFA53ECF7 -:1026D000192BDFF70DF9844A844BDFF733FA53ECFB -:1026E000192BDFF705F9824B6FF05102DFF72AFA59 -:1026F00053EC192BDFF7FCF80022624B37E053EC68 -:10270000182B51EC190BDFF7F3F806460F4653EC84 -:10271000192B91489149DFF7EBF8914A914BDFF77C -:1027200011FA53EC192BDFF7E3F88F4A8F4BDFF7E1 -:1027300009FA53EC192BDFF7DBF88D4A8D4BDFF7E5 -:1027400001FA53EC192BDFF7D3F88B4A8B4BDFF7E9 -:10275000F9F953EC192BDFF7CBF8894A564BDFF721 -:10276000F1F932463B46DFF7C3F853EC182BDFF79D -:10277000E9F941EC180B13E18DED008BDDE9000167 -:10278000DDE90023C3F30A5140F2FF74A14213D0E4 -:10279000002904BF190350EA11301CD1E80748BFD3 -:1027A0009FED478BA80740F1038151EC180B81F096 -:1027B000004141EC180BFBE0190350EA113040F0E6 -:1027C000F780FAF715F9212103B001604FF0FF30CF -:1027D0006FF00041EFE08DED008B00A800F064F990 -:1027E00045199DED008B354B51EC180B6FF0010234 -:1027F000DFF700FC0BD800224FF07953DFF712FC13 -:1028000005D2E80740F1CC809FED2D8BC8E053EC5A -:10281000182BDFF76DF841EC190BE8076AD553EC7C -:10282000192B29482949DFF763F8294A294BDFF793 -:1028300089F953EC192BDFF75BF8274A274BDFF7B1 -:1028400081F953EC192BDFF753F8254A254BDFF7B5 -:1028500079F953EC192BDFF74BF8234A234BDFF7B9 -:1028600071F953EC192BDFF743F8214B6FF051024C -:10287000DFF768F953EC192BDFF73AF80022014B28 -:102880008AE000BF0000F03F83C8C96D305FE43FBD -:102890000000A0FFFFFFDF410000E03F0000E0BFBD -:1028A0000000303EFB21B941B410114026A6513E34 -:1028B0005C14D33C9A833B3B5555C5BFFFFF3FBEDD -:1028C000000000000000F03F09260A1039BA213E3E -:1028D0003BA861C6F97D92BE63AC30909F01FA3E81 -:1028E000F6FB51166CC156BFB10255555555A53F63 -:1028F000FFFFDFBF53EC182B51EC190BDEF7F8FF8D -:1029000006460F4653EC192B13481449DEF7F0FF27 -:10291000134A144BDFF716F953EC192BDEF7E8FFD7 -:10292000114A124BDFF70EF953EC192BDEF7E0FFDB -:102930000F4A104BDFF706F953EC192BDEF7D8FFDF -:102940000D4A0E4BDFF7FEF853EC192BDEF7D0FFE4 -:102950000B4A0C4B18E000BFB08F2FC310D8E53DD9 -:102960008F0C73A1E1E55ABE4DADE44FE31DC73EA8 -:102970003EE3B519A0012ABFFAF010111111813FF1 -:10298000425555555555C5BFDFF7DCF832463B4635 -:10299000DEF7AEFF53EC182BDFF7D4F841EC180B41 -:1029A000A80705D551EC180B81F0004141EC180B3C -:1029B00003B051EC180BBDEC048BF0BD10B5044610 -:1029C0002DED028B94ED008A9FED2D0A82B028EE4A -:1029D000000AB5EE400A8DED000AF1EE10FAACBF28 -:1029E000F6EE000AFEEE000A30EE200A8DED000A37 -:1029F000002100A800F00CF99DED000AB5EE400A98 -:102A0000F1EE10FA17D0DFED1F0A20EE200ADFEDFD -:102A10001E0A00EE608ADFED1D0A00EE608ADFED1F -:102A20001C0A00EE608ADFED1B0A00EE608ADFED13 -:102A30001A0A00EE608A84ED008ADFED180A9DED27 -:102A4000000AB4EE600AF1EE10FA06D4DFED140AC3 -:102A5000B4EE600AF1EE10FA05DBDFED120A00F0C9 -:102A6000FFF88DED000A9DED000ABDEEC00A02B030 -:102A700010EE100A00F00300BDEC028B10BD000048 -:102A800083F9223F000080380000C94600A0FD40C5 -:102A90000020A23A000034330030C22E000000CFE4 -:102AA0000100004F0000004FD0B52DED048B04460F -:102AB00082B094ED008B4748474953EC182BDEF762 -:102AC00017FFCDE9000100220023DFF793FADDE9CB -:102AD000002399BF0020414900204149DFF732F827 -:102AE000CDE90001002100A800F058F9DDE900233C -:102AF00000200021EDF7F0FA4ED03A49DEF7F8FE5B -:102B000041EC190B53EC192B4FF0A0403649DEF77E -:102B1000EFFE02460B4651EC180BDFF787F806462E -:102B20000F4653EC192B4FF0C0403049DEF7E0FE62 -:102B300002460B4630463946DFF778F806460F4620 -:102B400053EC192B4FF000502949DEF7D1FE024615 -:102B50000B4630463946DFF769F806460F4653EC18 -:102B6000192B00202349DEF7C3FE02460B463046F0 -:102B70003946DFF75BF806460F4653EC192B4FF04A -:102B800000501D49DEF7B4FE02460B46304639467A -:102B9000DFF74CF841EC180B84ED008BDDE9000108 -:102BA000164A174BDFF73EFA04D3164A164BDFF7E7 -:102BB00021FA05D80022154B00F030F9CDE90001CB -:102BC000DDE90001DEF772FF02B000F00300BDECAA -:102BD000048BD0BD83C8C96D305FE43F0000E03F87 -:102BE0000000E0BF0000303EFB21B941B4101140AD -:102BF00026A6513E5C14D33C9A833B3B0000C0FFA9 -:102C0000FFFFDFC10100C0FFFFFFDF410000E04127 -:102C10000268C2F3C752FF2A06D10068400201D100 -:102C2000012070470220704703685B0016D0C2F194 -:102C30009602521A012A11DB182A04DB016801F0FE -:102C40000041016007E0012191400268491E1140E6 -:102C50004A40026011B14FF0FF30704700207047CA -:102C600010EE100A10EE901AA4464FF0FF034FEA40 -:102C7000410103EAD0540A0E1CBF94EA030F92EA02 -:102C8000030F55D0B1EB400F2ED24FEAC11141F0E6 -:102C9000004100F000434FEA002040F000404FEABE -:102CA0009000890864EB0204401A38BF01EB400031 -:102CB00018BF54F1000407D0D1EB400038BF08180A -:102CC00018BFB4F10104F7D140002CD0B0FA80F164 -:102CD00000FA01F0521A0EDB43EA102000EBC2505A -:102CE00000EE100A6446704708BF00F0004000EE96 -:102CF000100A6446704743EA102000EE100A02F101 -:102D00007F024FEAC25100EE901AF1EE100A20F451 -:102D1000F851E1EE101A20EE200AE1EE100A10EE52 -:102D2000100A64467047184600EE100A6446704761 -:102D300009421CBF94EA030F92EA030F1CD04FF024 -:102D4000984201EE102A60EE810AB1EB400FCBD21F -:102D5000244208BF20EE010A10EE901A03EAD15275 -:102D6000A2F119024FEA012191D110EE100A03EAF3 -:102D7000D054A4F119048CE74FF0807212EB400F8D -:102D80002CBF6FF0004011F1807F644618BF6FF0D8 -:102D9000004000EE100AF7F49DAA70474268C2F3A3 -:102DA0000A5240F2FF7C624509D14168090304BF21 -:102DB0000068002801D10120704702207047436855 -:102DC0005B0004BF0368002B25D040F233439A1AFE -:102DD000521A012A1FDB352A06DB416801F0004147 -:102DE00041600021016013E0012102F01F039940BE -:102DF000491E920607D5426811404A404260026867 -:102E00001143002202E0026811404A40026011B101 -:102E10004FF0FF30704700207047000070B540F25F -:102E2000FF7601F0004C5B0006EA11545D0D1ABFFD -:102E3000B442B54278E0B3EB410F08BF82424BD2B7 -:102E4000C3F3530343F48013C1F3130141F480111E -:102E5000641B0B3C13D9C90241EA5051B1FBF3FE8C -:102E600003FB1E11A2FB0EE6DEEBC020B14101D236 -:102E70008018594150EA010653D00B3CEBD80B3473 -:102E8000C4F12006A14020FA06F6A0403143B1FB70 -:102E9000F3FE03FB1E11A2FB0EE6B0EB0E00B141E8 -:102EA00001D28018594102BF0146203D0020C1B324 -:102EB000B1FA81F39940C3F1200220FA02F21143E2 -:102EC0009840ED1A0A3509DBC00A40EA41504CEA45 -:102ED000D12101EB055170BD23D070BDD5F10B059B -:102EE000B5F120020DDAC5F120020300E84001FA35 -:102EF00002F6E940934073F10043704151EB0C013D -:102F000070BD402D0DDC430821FA02F0C2F120050E -:102F100011FA05F6334373F1004370415CF100018F -:102F200070BD6146002070BD53EA020E1ABFB44264 -:102F3000B54237E0B3EB410F08BF8242CCD25B0809 -:102F4000B3FA83F504BFB2FA82F6AD190B3DB5F1C1 -:102F5000200624BF02FA06F305E0AB40C5F12006C7 -:102F600022FA06F63343AA40D5F1010524427FF444 -:102F70006BAF31F00041B1FA81F404BFB0FA80F6D2 -:102F8000A4190B3CB4F1200624BF00FA06F105E0B9 -:102F9000A140C4F1200620FA06F63143A040D4F146 -:102FA000010455E74FF4001515EB410F2CBF6FF0EE -:102FB0000041EB4218BF6FF00041BDE87040F7F4EC -:102FC00089A970473D0A3F0A450A4F0A5E0A700AFE -:102FD000860AA00ABF0AE10A080B320B600B930BAA -:102FE000C90B030C410C840CCA0C140D610DB30DFC -:102FF000080E620EBE0E1F0F840FEC0F5810C71084 -:103000003A11B1112B12A9122A13AE133614C2149D -:103010005015E21578161017AC174B18EC189119CB -:10302000391AE41A921B431CF61CAC1D651E211FA5 -:10303000DF1FA02063212922F122BC2388245725E9 -:103040002926FC26D227A92882295E2A3B2B1A2C66 -:10305000FB2CDD2DC12EA72F8E30763160324B3305 -:103060003734243513360337F337E538D739CA3ABE -:10307000BE3BB23CA73D9D3E933F89408041774295 -:103080006E4365445C4554464B47424839492F4A94 -:10309000254B1B4C104D054EF94EED4FDF50D151D5 -:1030A000C252B253A1548F557C56685752583B595F -:1030B000235A095BEE5BD15CB35D935E715F4D603B -:1030C00027610062D662AB637D644D651B66E7666F -:1030D000B06777683C69FE69BD6A7A6B356CEC6CE9 -:1030E000A16D536E026FAF6F5870FE70A271427285 -:1030F000DF7279731074A4743475C1754B76D17610 -:103100005477D4775078C8783D79AE791C7A867A2E -:10311000EC7A4F7BAD7B097C607CB37C037D4F7D7B -:10312000977DDB7D1B7E577E907EC47EF47E217F63 -:10313000497F6D7F8E7FAA7FC27FD77FE77FF37F36 -:10314000FB7FFF7FFF7FFB7FF37FE77FD77FC27F20 -:10315000AA7F8E7F6D7F497F217FF47EC47E907E23 -:10316000577E1B7EDB7D977D4F7D037DB37C607C2E -:10317000097CAD7B4F7BEC7A867A1C7AAE793D79FF -:10318000C8785078D4775477D1764B76C17534753A -:10319000A47410747973DF724272A271FE70587059 -:1031A000AF6F026F536EA16DEC6C356C7A6BBD6ABC -:1031B000FE693C697768B067E7661B664D657D64AC -:1031C000AB63D662006227614D60715F935EB35D51 -:1031D000D15CEE5B095B235A3B59525868577C56C9 -:1031E0008F55A154B253C252D151DF50ED4FF94E19 -:1031F000054E104D1B4C254B2F4A394942484B4731 -:1032000054465C4565446E43774280418940933F14 -:103210009D3EA73DB23CBE3BCA3AD739E538F337AD -:1032200003371336243537344B33603276318E30E2 -:10323000A72FC12EDD2DFB2C1A2C3B2B5E2A8229B9 -:10324000A928D227FC26292657258824BC23F12229 -:1032500029226321A020DF1F211F651EAC1DF61C43 -:10326000431C921BE41A391A9119EC184B18AC172D -:1032700010177816E2155015C2143614AE132A131F -:10328000A9122B12B1113A11C7105810EC0F840F6C -:103290001F0FBE0E620E080EB30D610D140DCA0C89 -:1032A000840C410C030CC90B930B600B320B080B05 -:1032B000E10ABF0AA00A860A700A5E0A4F0A450A96 -:1032C0003F0A3D0A00007900F3006C01E60160024C -:1032D000D9025303CC034604C0043905B3052C06B8 -:1032E000A6062007990713088C0806098009F90922 -:1032F000730AED0A660BE00B590CD30C4D0DC60D8D -:10330000400EB90E330FAD0F2610A01019119311F6 -:103310000D12861200137913F3136D14E614601561 -:10332000DA155316CD164617C0173A18B3182D19CB -:10333000A619201A9A1A131B8D1B061C801CFA1C36 -:10334000731DED1D661EE01E5A1FD31F4D20C720A2 -:103350004021BA213322AD222723A0231A2493240B -:103360000D25872500267A26F3266D27E727602876 -:10337000DA285329CD29472AC02A3A2BB42B2D2CE1 -:10338000A72C202D9A2D142E8D2E072F802FFA2F4B -:103390007430ED306731E0315A32D4324D33C733B7 -:1033A0004034BA343435AD352736A1361A37943720 -:1033B0000D38873801397A39F4396D3AE73A613B8B -:1033C000DA3B543CCD3C473DC13D3A3EB43E2D3FF7 -:1033D000A73F21409A4014418E4107428142FA4260 -:1033E0007443EE436744E1445A45D4454E46C746CC -:1033F0004147BA473448AE482749A1491A4A944A36 -:103400000E4B874B014C7B4CF44C6E4DE74D614E9F -:10341000DB4E544FCE4F4750C1503B51B4512E520A -:10342000A75221539B5314548E540755010000009A -:103430000100000001000000010000000200000087 -:103440000200000002000000020000000300000073 -:10345000030000000300000004000000040000005E -:103460000500000005000000060000000700000045 -:1034700008000000080000000A0000000B00000027 -:103480000C0000000E0000000F0000001100000002 -:103490001300000016000000190000001C000000CE -:1034A0001F00000023000000280000002D00000085 -:1034B0003200000039000000400000004800000019 -:1034C000510000005B000000670000007400000075 -:1034D0008200000093000000A5000000BA00000078 -:1034E000D1000000EC0000000A0100002B010000E8 -:1034F000510100007B010000AB010000E101000070 -:103500001D02000062020000AF020000050300007F -:1035100067030000D403000050040000DB04000037 -:103520007805000029060000EF060000CF07000024 -:10353000CB080000E7090000270B00008F0C0000FB -:10354000240E0000ED0F0000EF1100003214000007 -:10355000BE1600009C190000D71C00007A20000055 -:10356000922400002F290000602E00003934000052 -:10357000CF3A000039420000934A0000FA5300009D -:10358000915E00007E6A0000EC7700000B8700006F -:10359000129800003FAB0000D7C0000028D90000FF -:1035A0008AF400006013010019360100345D010047 -:1035B0003C890100D3BA0100A9F201008B3102005D -:1035C0005A78020017C80200E221030000870300B6 -:1035D000DDF80300177904007C09050016AC05002E -:1035E0003163060062310700941908000E1F0900BC -:1035F00080450A0013910B0076060D00EEAA0E001E -:103600006B8410009D9912000CF214003096170084 -:10361000988F1A0002E91D008BAE2100D4ED250021 -:1036200038B62A0001193000A629360015FE3C00E4 -:10363000FDAE44002B584D00EF185700891462006E -:10364000AC726E000E607C00060F8C0046B89D00C8 -:10365000A59BB1000701C8006139E100DD9FFD00B5 -:10366000259B1D01D39E4101172D6A0189D8970121 -:103670004146CB01243005028C67460236D88F02C2 -:103680009A8BE202ABAC3F030B8CA803D2A41E04BE -:10369000E6A1A304FE6339057208E205DDF09F068A -:1036A000B8CB75070D9E66085ECE7509F630A70A81 -:1036B000B915FF0BC257820DE86E360F89832111B1 -:1036C000CC844A13AB41B9153585761852368C1B1C -:1036D000917B051F74E3EE22D591562702734C2C83 -:1036E0005075E231E5C92C38BB2D423FD03B3C47F9 -:1036F000B2C93750BF4F555A805EB965000100010D -:103700000001000100010001FF00FF00FF00FE00BA -:10371000FE00FE00FD00FD00FC00FC00FB00FA00C6 -:10372000FA00F900F800F800F700F600F500F400E0 -:10373000F300F200F100F000EF00EE00ED00EB000E -:10374000EA00E900E700E600E500E300E200E0004F -:10375000DF00DD00DC00DA00D800D700D500D300A0 -:10376000D100CF00CE00CC00CA00C800C600C40003 -:10377000C200C000BE00BC00B900B700B500B30075 -:10378000B100AE00AC00AA00A700A500A200A000F6 -:103790009D009B0098009600930091008E008C0085 -:1037A00089008600840081007E007B00790076001D -:1037B000730070006D006B006800650062005F00C0 -:1037C0005C0059005600530050004D004A0047006D -:1037D000440041003E003B003800350032002F001D -:1037E0002C002900260022001F001C0019001600D2 -:1037F000130010000D000900060003000000000087 -:103800000000C6028C055108170BDD0DA3106813CC -:103810002E16F418BA1B801E45210B24D126972999 -:103820005D2C222FE831AE347437393AFF3CC53F66 -:103830000001000100010001000100010001000180 -:103840000001000100010001000100010001000170 +:100000003DD07868401C7860616F0C46D7E91401D8 +:10001000E1F75AFD214600F01AFD00EE100ABAEE93 +:10002000C80A10EE100AE1F739FCC7E9140107F518 +:10003000D07407F15008D4E90201E1F745FDC8F892 +:100040000800D4E90401E1F73FFDC8F80C00D4E949 +:100050000601E1F739FDC8F81000D7E9680101226F +:10006000DFF82838E1F7D4FF09D89FED750AF0EEE4 +:10007000400A2946284601F0F5FB00E000263046FC +:10008000BDE8F08190ED030AD0ED040AF4EE400AD9 +:10009000F1EE10FA1BD590ED051AB4EE401AF1EE10 +:1000A00010FA14D50021016490ED040AD0ED050A80 +:1000B000B4EE600AF1EE10FA04DB01214164022182 +:1000C0008164704702214164012181647047B4EE6C +:1000D000600AF1EE10FA1BD590ED050AB4EE600A45 +:1000E000F1EE10FA14D50121016490ED030AD0ED70 +:1000F000050AB4EE600AF1EE10FA04DB0021416457 +:1001000002218164704702214164002181647047AB +:100110000221016490ED030AB4EE600AF1EE10FAD8 +:1001200004DB0021416401218164704701214164A5 +:100130000021816470470021C1640B4606E01A4625 +:1001400040F8212000EB81025362491C0329F6DBB1 +:100150000121416719468167704710B5044604F1D3 +:100160005400142141600A21C1600021017720461A +:10017000FFF7E1FF0020606510BD000038B52DEDF0 +:10018000028B86B003A9FFF7A3FD9FEDB18B00247E +:1001900018E003A850F8240000EE100ABAEEC80ACE +:1001A00000A800EB840080ED000A20EE000A10EEAB +:1001B000100AE1F773FB53EC182BE1F7D1FC41EC8B +:1001C000180B641C032CE4DBB0EE480AF0EE680A5E +:1001D000F8F7EEFEB0EE408AF0EE608A002419E0F7 +:1001E00000EB840500A850F82400E1F757FB53EC1E +:1001F000182BE1F7E9FDF0F745F900EE100AD5F804 +:10020000400400EE900A30EE200A05F2404080EDF6 +:10021000000A641CDFF85406032CE1DBD0F89414C8 +:10022000491CC0F894140121C0F8BC1406B0BDEC00 +:10023000028B31BDAF47E13D00007A43BD74933C72 +:10024000CDCCCC3E38B50446002004F13C0507E097 +:10025000B1EE400A81ED030A002144F82010401C51 +:10026000032838DA95ED050AB8EEC00A04EB8001E0 +:10027000D1ED000A80EE800AF0EE400AF5EE400A69 +:10028000F1EE10FA02DBB0EE601A01E0B1EE601A96 +:10029000D1ED061AF5EE401AF1EE10FA01DAF1EEA0 +:1002A000611A31EE611A81ED0C1AC1ED060AD4ED26 +:1002B0000F0ABFEE001A30EE811AD1ED091A01EED5 +:1002C000210A80EE200A81ED090AB5EE400AF1EE1E +:1002D00010FABDDBBEE72046FFF7D4FE2869B0F573 +:1002E0007A7F01DA401C2861686894F8701005294B +:1002F00000F28380DFE801F0030E192C6C4004F15A +:10030000700001214160816000202861084684F866 +:10031000700031BD04F17000C16801296DD1022166 +:1003200084F870100021816031BD04EB800090EDF5 +:10033000030AD5ED0A0AB4EE600AF1EE10FA12DAF9 +:10034000D5ED0B0AF4EE400AF1EE10FA4BDB2BE090 +:1003500004EB800090ED030AD5ED0A0AB4EE600AC2 +:10036000F1EE10FA49DB042084F8700004F170000B +:1003700000214160816031BD04EB800095ED0B0AE6 +:10038000D0ED030AB4EE600AF1EE10FA0CDA90ED4B +:100390000C0ADFED330AB4EE600AF1EE10FA0CD568 +:1003A0002869696A884228DB032084F8700004F118 +:1003B000700001214160816031BD042084F870002B +:1003C0000020286104F1700000214160816031BD8E +:1003D00095ED0C0A04EB8000D0ED030AB4EE600A40 +:1003E000F1EE10FA09DB052084F870000020286186 +:1003F00004F1700001214160816031BD10B52DED27 +:10040000028B08EE100ADFF86444B8EEC80ADFED8C +:10041000120A20EE200ADFED110A80EE200A10EE0B +:10042000100AE1F73BFA41EC100B01F0AFFF53EC7F +:10043000102B0020DFF85814E1F768FAE1F744FBCD +:10044000C4F8840084ED208ABDEC028B10BD00004E +:100450000000000000000000368D27400024F44911 +:10046000CCCC4CBD2DE9F0472DED028B90B004466D +:1004700002A800210A460B460EC004F13006B06CFB +:10048000DFF8E85344F62061884206DBD5F8801097 +:10049000884212D0FFF7B2FF0FE0D5F8582380183A +:1004A000C5F858038842C0F26781B16C814201D01F +:1004B000FFF7A4FF0020C5F85803206BC5F8C0045F +:1004C0002046FFF75BFED5F89404D5F890148842D7 +:1004D00006DB05F58860FFF7B5FE0020C5F894043B +:1004E000D5F8B804012802D12046FFF712FCD5F850 +:1004F000B404012840F0408102A801F05DF802A890 +:10050000D0ED020A90ED011A9DED020ADDED021A0E +:1005100020EE210A01EE010A00EEA00A01F0EAF83D +:1005200085ED030ABEEE410A10EE100AADF8000098 +:1005300000A800214180818005F52C773946FDF720 +:10054000BFF908A800F089FF296F089800F07FFA2A +:1005500081460DF12008696FD8F8040000F077FAA1 +:100560008246A96FD8F8080000F071FA0AEB090179 +:1005700000EB0109E96FD8F80C0000F068FA00EB15 +:100580000908102208A905F17000E1F770FD4FF08D +:1005900000091CE004EB490A716CBAF9540000042C +:1005A00000F055FA00EE100A0CA800EB890080ED6F +:1005B000000ABAEEC80A05EB890080ED050A05A815 +:1005C000BAF95410090440F8291009F10109B9F1E8 +:1005D000030FDFDB05A905F5E47001F0E2F9D5F8BA +:1005E000280329688842C0F2C78094ED428ABAEE97 +:1005F000C88A95ED360AB5EE400AF1EE10FA0BD036 +:1006000038EE400A10EE100AE1F748F921F00041F7 +:10061000EFF738FFC5F8DC0085ED368AA8680328B7 +:1006200004D9001F0AD0401E0FD014E09948A863D7 +:100630004FF07E50E863C82028640CE09648A86319 +:100640009648E8636420286405E09548A8639548C7 +:10065000E863322028643846FCF7EFFF01F058F8D1 +:1006600000EE100ADFED800A80EE200A85ED040A14 +:10067000A822002105F52C70E1F7FFFCD5F88400D5 +:10068000404549DA95ED040AB5EE400AF1EE10FA5C +:1006900042DDD5ED0E0AB4EE600AF1EE10FA3BD55C +:1006A0006868296C884205DA2046FFF78DFC00282F +:1006B00010D161E095ED2C0ADFED6E0AB4EE600A10 +:1006C000F1EE10FA06DB2046FFF77EFC002853D03F +:1006D00000206860002005E005EB80014A69C1F850 +:1006E000B420401C0328F7DBFFF7D1FA4FF00009D4 +:1006F0000BE005EB890090ED080AD0ED0B0A30EE17 +:10070000600A80ED330A09F10109B9F1030FF0DB4A +:1007100005F5D470FFF7BCFB00200CE005EB800171 +:1007200091ED260AD1ED050A30EE600AB0EEC00A5E +:1007300081ED290A401C0328F0DB95ED290AD5ED4F +:100740002A0A30EE200AD5ED2B0A30EE200A85ED7C +:100750002C0A4FF0000906E005EB89004169C0F85A +:10076000981009F10109B9F1030FF5DBE822002126 +:1007700005F5E470E1F781FC002010B0BDEC028BC0 +:10078000BDE8F08710B5394C4FF49B62002120463C +:10079000E1F773FC102020604FF080402067FFF7E6 +:1007A00066FA04F58860FFF7D8FC2068C4F8900466 +:1007B0004FF08440C4F87C041E20C4F89C043A48DE +:1007C000C4F8A8043948C4F8A4043948C4F8AC04EF +:1007D0001920FDF787FB002010BD012240F25231A5 +:1007E0003448FCF7D6BB10B5204C4FF49B62014651 +:1007F0002046E1F73CFC0120C4F89400002010BD25 +:1008000080B51A490022C1F894204FF49B62E1F7A9 +:100810002EFC002002BD10B5FFF7B4FF040009D084 +:100820004FF437730FF29C020FF2BC01FFF71EFA70 +:10083000204610BD204800F039FF040009D040F2E6 +:10084000DF230FF280020FF2A001FFF70FFA20461C +:1008500010BD42F226034FF49B6218491848BDE8C8 +:10086000104000F0D2BE000000401C4640CB0020EB +:1008700000401CC6CDCC4C3D0000F0BF9A99999920 +:100880009999B93F9CC420B07268913F0070A7400D +:100890000000D0410080BB44000096439A99993FE4 +:1008A000000070423333B33FCDCCCC3ECDCC4C3F77 +:1008B0003333333F65040308DB07030801080308EB +:1008C000E7070308696E765F656E61626C655F6954 +:1008D0006E5F7573655F6175746F5F63616C69628C +:1008E000726174696F6E0000433A5C54656D705CB0 +:1008F0004955535C494B445C5461652D536F6F5CA3 +:10090000656D6265646465645F7265666572656E77 +:1009100063655F666F725F4E6F74655F335C656DB4 +:100920006265646465645C496E76656E53656E737A +:10093000655C6D706C5C616363656C5F6175746F41 +:100940005F63616C2E63000010B590B01446002206 +:10095000009200AA90ED010AB8EEC00AD1ED020A99 +:10096000F8EEE00A20EE200AD0ED020AF8EEE00AE6 +:1009700091ED011AB8EEC11A00EEC10A82ED010A2A +:1009800090ED020AB8EEC00AD1ED000AF8EEE00AD6 +:1009900020EE200AD0ED000AF8EEE00A91ED021AEE +:1009A000B8EEC11A00EEC10A82ED020A90ED000A0B +:1009B000B8EEC00AD1ED010AF8EEE00A20EE200AF6 +:1009C000D0ED010AF8EEE00A91ED001AB8EEC11A76 +:1009D00000EEC10A8DED030A0CAA00A9204600F022 +:1009E000E0F804A9204600F0FAF908AA04A90CA826 +:1009F00000F0D7F808A890ED020AB5EE400AF1EE33 +:100A000010FA09D1D0ED010AF5EE400AF1EE10FA24 +:100A100002D19FED530A05E0D0ED010AF8F752FB31 +:100A2000B1EE400A10B010BD00210A4605E050F8B2 +:100A300022305B1303FB0311521C032AF7DB084629 +:100A4000704781FB0001400F40EAC100704781FB05 +:100A50000001800F40EA810070472DE9F041044613 +:100A60000D46164629682068FFF7F1FF07466968BA +:100A70006068FFF7ECFF8046A968A068FFF7E7FF12 +:100A8000A7EB08010F1AE968E068FFF7E0FF381AE2 +:100A9000306069682068FFF7DAFF074629686068F8 +:100AA000FFF7D5FF8046E968A068FFF7D0FF08EBA5 +:100AB00007014718A968E068FFF7C9FF381A706096 +:100AC000A9682068FFF7C3FF0746E9686068FFF779 +:100AD000BEFF80462968A068FFF7B9FFA7EB0801B1 +:100AE00047186968E068FFF7B2FFC019B060E968AD +:100AF0002068FFF7ACFF0746A9686068FFF7A7FF0B +:100B000080466968A068FFF7A2FF08EB07010F1A8B +:100B10002968E068FFF79BFFC019F060BDE8F0812D +:100B200010B403680C68E318136043684C68E3185A +:100B3000536083688C68E3189360C068C9680818BC +:100B4000D06010BC704702680A60426852424A6036 +:100B5000826852428A60C0684042C86070470000A4 +:100B60000000000030B591B004461546002000900A +:100B70000C2201A8E1F77BFA0CAA00A92046FFF796 +:100B80006CFF08A92046FFF7DEFF04AA08A90CA8FD +:100B9000FFF763FF0C2205A92846E1F768FA11B0B8 +:100BA00030BD90ED000AD1ED000A20EE200AD0ED14 +:100BB000010A91ED011A00EEC10AD0ED020A91ED91 +:100BC000021A00EEC10AD0ED030A91ED031A00EEFD +:100BD000C10A82ED000A90ED000AD1ED010A20EE73 +:100BE000200AD0ED010A91ED001A00EE810AD0ED45 +:100BF000020A91ED031A00EE810AD0ED030A91ED8D +:100C0000021A00EEC10A82ED010A90ED000AD1ED50 +:100C1000020A20EE200AD0ED010A91ED031A00EE3F +:100C2000C10AD0ED020A91ED001A00EE810AD0ED62 +:100C3000030A91ED011A00EE810A82ED020A90ED9D +:100C4000000AD1ED030A20EE200AD0ED010A91ED51 +:100C5000021A00EE810AD0ED020A91ED011A00EEAF +:100C6000C10AD0ED030A91ED001A00EE810A82ED6F +:100C7000030A704790ED000AD1ED000A30EE200A19 +:100C800082ED000A90ED010AD1ED010A30EE200A52 +:100C900082ED010A90ED020AD1ED020A30EE200A3F +:100CA00082ED020A90ED030AD1ED030A30EE200A2C +:100CB00082ED030A704790ED030AD0ED020A90ED31 +:100CC000011AD0ED001A21EEA12A01EE012A00EE50 +:100CD000A02A00EE002AB0EE000AB4EE402AF1EE9F +:100CE00010FA3AD5B6EE000A22EE000A60EE020AC9 +:100CF000B7EE081A00EEC21A61EE020A20EE201AC0 +:100D0000B7EE082A01EE602A62EE200A20EE201AD1 +:100D1000B7EE082A01EE602A62EE200A20EE200AD1 +:100D2000B7EE081A00EE601A21EE202A21EE820AA0 +:100D300080ED000A90ED010A20EE020A80ED010A22 +:100D400090ED020A20EE020A80ED020A90ED030AFD +:100D500020EE020A80ED030A70474FF07E510160D9 +:100D6000002141608160C160704710B50446D4ED38 +:100D7000030A94ED021AD4ED011A94ED000A20EE54 +:100D8000000A01EEA10A01EE010A00EEA00A00F03D +:100D9000B1FCB5EE400AF1EE10FA18D0D4ED000A1D +:100DA000C0EE800AC4ED000AD4ED010AC0EE800A4C +:100DB000C4ED010AD4ED020AC0EE800AC4ED020AB5 +:100DC000D4ED030A80EE800A84ED030A10BD4FF0D3 +:100DD0007E50206000206060A060E06010BD02686E +:100DE0000A6090ED010AB1EE400A81ED010A90ED32 +:100DF000020AB1EE400A81ED020A90ED030AB1EE5B +:100E0000400A81ED030A704770B505460C466868D4 +:100E10000146FFF716FE064629680846FFF711FE51 +:100E20008019A0F180402060A9686868FFF709FE7A +:100E300006462968E868FFF704FE301A6060E96832 +:100E40006868FFF7FEFD06462968A868FFF7F9FD08 +:100E50008019A060A9686868FFF7F3FD0646296855 +:100E6000E868FFF7EEFD8019E060A8680146FFF72B +:100E7000E8FD064628680146FFF7E3FD8019A0F16A +:100E800080402061E968A868FFF7DBFD0646296815 +:100E90006868FFF7D6FD301A6061E9686868FFF797 +:100EA000D0FD06462968A868FFF7CBFD301AA0617F +:100EB000E968A868FFF7C5FD064629686868FFF776 +:100EC000C0FD8019E061E8680146FFF7BAFD0646FB +:100ED00028680146FFF7B5FD8019A0F18040206227 +:100EE00070BD90F90010012901DB00207047002936 +:100EF00001D50420704790F90110012901DB012080 +:100F00007047002901D50520704790F9020001289B +:100F100001DB02207047002801D50620704707201A +:100F2000704738B50446FFF7DCFF0546E01CFFF7C5 +:100F3000D8FF45EAC005A01DFFF7D3FF45EA8010A2 +:100F400080B232BD2DE9F04107460C4615461E46DB +:100F5000780702D54FF0FF3000E00120B84608F0D6 +:100F6000030255F822205043FFF771FD3060B806A8 +:100F700002D54FF0FF3000E0012021464FEA680221 +:100F800002F00C0252595043FFF761FD7060F80502 +:100F900002D54FF0FF3000E0012021464FEA281231 +:100FA00002F00C0252595043FFF751FDB060BDE80A +:100FB000F08110B400220260426005E000EB820381 +:100FC00051F822401C61521C052AF7DB10BC704707 +:100FD00080ED090A80ED0A0AD0ED060AB7EE001A84 +:100FE00070EE810A90ED071A70EE810A80EE200AF9 +:100FF00080ED000A80ED010A704780ED090A90ED4E +:10100000010AD0ED000AD0ED061A90ED091A01EEA2 +:10101000E01AD0ED071A01EEC01A90ED042AF0EEA6 +:10102000411A42EE201AD0ED050A40EE801AC0EDBA +:101030000A1A90ED080A21EE800A80ED0A0A01687A +:10104000416080ED001A70472DE9F84304460D46D3 +:101050001646002711E055F8291009EB4900C01980 +:1010600054F82000FFF7F3FC804409F10109B9F1BD +:10107000030FF0DB46F827807F1C032F03DA4FF0C5 +:101080000008C146F3E7BDE8F183F1B582B001285D +:1010900001DA0020FEBD00A902A800F055F80446C0 +:1010A00000250098012806DB0146024602EBD171BB +:1010B0004910A0EB4105401B00900298A0F1804729 +:1010C00006463946FFF7C3FCA6EB6006022C23DB7D +:1010D0007810A0F1C0413846FFF7B9FC0146384608 +:1010E000FFF7B5FC471039463046FFF7B0FCA6EBDA +:1010F0006006032C10D17810A0F1C0413846FFF7EC +:10110000A6FC01463846FFF7A2FC47103946304698 +:10111000FFF79DFCA6EB6006002D04D02749304662 +:10112000FFF795FC06460098012802DB40100641B7 +:1011300007E010F1010F04D121493046FFF787FC89 +:1011400006463046FEBD000070B504460D462068D8 +:101150001C49884205DB401020604FF0FF302860BA +:101160001AE0194EB04215DA204600F039F828602E +:1011700020681649884205DB401020602868401E20 +:10118000286009E0B04207DA400020602868401C6F +:10119000286001E00020286020680D4909180D4AE8 +:1011A000914201D3032070BD0B4908180B498842B6 +:1011B00001D3022070BD012070BD0000CD3C412D47 +:1011C0009A79825AFD0BB958FE855C2CFC0BB958F4 +:1011D000666666C6CDCCCC0C0AD7A3C015AE470157 +:1011E00000210268002A01D108467047130C1B0435 +:1011F00002D1102112040260026812F07F4F02D166 +:10120000083112020260026812F0704F02D1091D0B +:1012100012010260026812F0404F02D1891C920054 +:1012200002600268002A02D5491E52080260084680 +:101230007047F8B504460D4620680146FFF707FCE5 +:10124000064661680846FFF702FC0746A0680146AB +:10125000FFF7FDFBC6F18041C91B081AFFF715FF18 +:101260002860206868606068A860A068E860002066 +:10127000F2BD000080B58DF800108DF8012002232A +:1012800000AAD0210020DEF791FF012801D1002023 +:1012900002BD4FF0FF3002BD38B51446094D29702C +:1012A0001946681CE0F7E3FE631CDBB22A46D02136 +:1012B0000020DEF77BFF012801D1002032BD4FF076 +:1012C000FF3032BD30FB002080B5D2B200920A461A +:1012D000D0210020DEF7A8FF012801D1002002BDA7 +:1012E0004FF0FF3002BD0EB4002003B0704780B550 +:1012F000DEF799FE6421DFF74FF8002002BD000001 +:101300000300002013F0030F09D0521E22BF13F870 +:10131000010B11F801CBB0EB0C00F3D07047121F9A +:1013200022BF53F8040B51F804CB6045F7D0121DCF +:101330000AD200BA9CFA8CFCB0EB0C0038BF6FF0FC +:10134000000088BF01207047521E22BF13F8010B16 +:1013500011F801CBB0EB0C00F6D0521C08BF1046C0 +:101360007047704770B514461D46DFF8386206F1C5 +:1013700048014A6F42F002024A671022014606F114 +:101380001000E0F774FEC6E9124570BD70B5144652 +:101390001D46DFF8106206F14001CA6F42F00102FB +:1013A000CA671022014606F17000E0F760FEC6E948 +:1013B000104570BDDFF8EC11D1F8A820026091F85B +:1013C000A400704718B40146DFF8D82102F1A40345 +:1013D00092F8A440A04208D1022903D15868401CC9 +:1013E000586010E0002058600DE000245C6082F836 +:1013F000A400012901D1012000E00220224603219E +:1014000018BC00F037B911BC704770B50446654D83 +:10141000E9686868FFF715FB06462968A868FFF7C2 +:1014200010FB301A2060E968A868FFF70AFB06463F +:1014300029686868FFF705FB80196060E868014665 +:10144000FFF7FFFA064629680846FFF7FAFA8019FF +:10145000A0F18040A060002070BD80B510225249EC +:10146000E0F705FE002002BD38B504464D4D95F865 +:10147000BC0010F0030F0CD02A4605F1100105F155 +:101480007000FFF7EAFAD5F8BC0020F00300C5F8B9 +:10149000BC00102229462046E0F7E9FD002032BDBD +:1014A00038B50C461546FFF7DFFFFBF789FBC5E9AA +:1014B0000001FBF76EFB002803D0FBF77BFE2060EA +:1014C00031BDFBF76EFB002803D0FBF770FE2060F8 +:1014D00031BDFBF76DFB002803D0FBF775FE2060E4 +:1014E00031BD0020206031BD2E49C1F8C000002070 +:1014F000704780B507224FF448712C48FBF749FD2F +:10150000002002BD10B5274CD02200212046E0F774 +:10151000B4FD4FF080406066A066E0662067206101 +:10152000206020622063C4F880002148C4F8C40011 +:10153000002010BD80B5FFF7E5FF002804D11D484D +:10154000BDE8024000F0B2B802BD1649C1F89400EF +:1015500070471449C1F8B000704710B584B004005A +:1015600018D000221146FBF7EFFD00A8FFF74DFF52 +:1015700020680099A0EBA130206000A86168426853 +:10158000A1EBA2316160A1688068A1EBA030A060EE +:10159000002000E0162004B010BD024890ED310A92 +:1015A00070470000F8F2002008F30020E914030857 +:1015B000DB0F4940F314030810B584B0040016D0C3 +:1015C00000A8FFF7CAFF002811D100200BE000A9F6 +:1015D00051F8201000EE101ABAEEC80A04EB800190 +:1015E00081ED000A401C0328F1DB002000E01620FA +:1015F00004B010BD10B51E4C4FF4CC720021204633 +:10160000E0F73BFD0C20606010BD70B4002500E0E9 +:101610006D1C174C2668B54209DA05EB450604EB4C +:101620008604D4F8B040A342F2D116201EE0142E56 +:1016300001DB16201AE00C2505FB0646C6F8B03083 +:10164000236805FB0343C3F8A820236804EB830346 +:101650009860206804EB80008165606802F10C01ED +:10166000081860602068401C2060002070BC704733 +:1016700070ED0020002A05D1074A136823EA010112 +:10168000084310607047044A1168002801D0002008 +:10169000106008467047000048FE002080B55422C4 +:1016A00000211348E0F7E9FC002002BD10490A6858 +:1016B000142A01DB1620704701EB82025060086893 +:1016C000401C08600020704738B50024254609E01A +:1016D00000EB850040688047002802D0002C00D134 +:1016E00004466D1C024801688D42F1DB204632BD84 +:1016F000DCF90020B5EEC00AF1EE10FA02D4B1EE2A +:10170000C00A70476FF0004C00EE10CAF8F7F2BD47 +:10171000002940F10B80F4464942404271F100013A +:1017200000F00AF850F000406047000050EA010263 +:1017300000F00E80094200BF0BD1B0FA80F1884062 +:10174000C1F19D01C905020672F1004241EB102072 +:101750007047B1FA81F241409040C2F1200261FA33 +:1017600002F181EA000018BF40F0010002F19D0182 +:10177000E8E70000C0F3C7517F392CD420290DDAE7 +:10178000C1F11F0C41004FEAC11141F0004121FAA3 +:101790000CF0894128BF4042C9437047D1F13F0C4A +:1017A0001CD441004FEAC11141F0004161FA0CF034 +:1017B00021FA0CF180EA0100094244BF4FF00041D8 +:1017C000002004D34942404271F10001704701D525 +:1017D000401E491E704700200021704709424FF00B +:1017E000004158BFC943002070470000D2B2203AE0 +:1017F00022BF00FA02F1002070475242D041D2F1DC +:10180000200291404140D04090404140704700004C +:1018100080B500F00DF8B5EE400AF1EE10FA02D0F6 +:101820000548406C02BD012002BD0348C06C7047F2 +:10183000014890ED160A704730FA002010B5FFF706 +:10184000E7FF0446FFF7F1FF204310BD012000F041 +:10185000A7BD002000F0A4BD10B5044600F056FE60 +:10186000204610BD2DE9F8432DED048B0646894630 +:10187000B0EE408A10EE900AE0F710F841EC190B38 +:1018800018EE100AE0F70AF841EC180B53EC182B8D +:10189000D6E93001E0F73AF804460D4653EC192B2F +:1018A000D9E93001E0F732F822462B46E0F758F943 +:1018B000C6E93001002734E051EC180B06EBC702F3 +:1018C00053681268E0F722F804460D4651EC190BF4 +:1018D00009EBC70253681268E0F718F822462B4656 +:1018E000E0F73EF906EBC702C2E9000106EBC708C4 +:1018F00051EC180BD8E92423E0F708F804460D460C +:1019000053EC192B09EBC700D0F89410D0F89000D5 +:10191000DFF7FCFF22462B46E0F722F9C8E9240155 +:101920007F1C062FC8DB002718E006EBC70851EC28 +:10193000180BD8E91223DFF7E9FF04460D4653ECF4 +:10194000192B09EBC700C16C806CDFF7DFFF224663 +:101950002B46E0F705F9C8E912017F1C092FE4DBEB +:10196000002718E006EBC70851EC180BD8E90C2348 +:10197000DFF7CCFF04460D4653EC192B09EBC700EB +:10198000416B006BDFF7C2FF22462B46E0F7E8F819 +:10199000C8E90C017F1C032FE4DBBDEC048BBDE820 +:1019A000F18338B52DED108B82B005460C462068CA +:1019B000E0F7BEF841EC180B6068E0F7B9F841ECCD +:1019C000190BA068E0F7B4F841EC1A0BD5E9302305 +:1019D0000020DFF8B019E0F7C3F8C5E93001D5E918 +:1019E0000C2351EC180BE0F7BBF8C5E90C01D5E965 +:1019F0000E2351EC190BE0F7B3F8C5E90E01D5E958 +:101A0000102351EC1A0BE0F7ABF8C5E9100153ECC9 +:101A1000182B51EC180BDFF779FF41EC1B0B53EC43 +:101A20001B2BD5E90001E0F79BF8C5E9000153EC59 +:101A3000182B51EC190BDFF769FF41EC1F0B53EC2E +:101A40001F2BD5E90201E0F78BF8C5E9020153EC41 +:101A5000182B51EC1A0BDFF759FF41EC1C0B53EC20 +:101A60001C2BD5E90401E0F77BF8C5E9040153EC30 +:101A7000192B51EC190BDFF749FF41EC1D0B53EC0F +:101A80001D2BD5E90601E0F76BF8C5E9060153EC1B +:101A9000192B51EC1A0BDFF739FF41EC1E0B53ECFD +:101AA0001E2BD5E90801E0F75BF8C5E9080153EC06 +:101AB0001A2B51EC1A0BDFF729FFD5E90A23E0F7BF +:101AC0004FF8C5E90A0153EC1B2B51EC180BDFF75B +:101AD0001DFFCDE90001DDE90023D5E91201E0F7A2 +:101AE0003FF8C5E9120153EC1F2B51EC190BDFF73E +:101AF0000DFFD5E91423E0F733F8C5E9140153ECE1 +:101B00001C2B51EC1A0BDFF701FFD5E91623E0F788 +:101B100027F8C5E9160153EC1F2B51EC180BDFF722 +:101B2000F5FED5E91823E0F71BF8C5E9180153ECD9 +:101B30001D2B51EC190BDFF7E9FE41EC1F0B53ECA9 +:101B40001F2BD5E91A01E0F70BF8C5E91A0153EC90 +:101B50001E2B51EC1A0BDFF7D9FED5E91C23DFF75A +:101B6000FFFFC5E91C0153EC1C2B51EC180BDFF7F0 +:101B7000CDFED5E91E23DFF7F3FFC5E91E0153ECC7 +:101B80001E2B51EC190BDFF7C1FED5E92023DFF73F +:101B9000E7FFC5E9200153EC1A2B51EC1A0BDFF7D4 +:101BA000B5FE53EC1A2BDFF7B1FE41EC1C0B53ECE6 +:101BB0001C2BD5E92201DFF7D3FFC5E92201DDE9BE +:101BC000002351EC180BDFF7A1FED5E92423DFF742 +:101BD000C7FFC5E9240153EC1F2B51EC190BDFF7AC +:101BE00095FED5E92623DFF7BBFFC5E9260153ECB7 +:101BF0001C2B51EC1A0BDFF789FED5E92823DFF700 +:101C0000AFFFC5E9280153EC1B2B51EC190BDFF793 +:101C10007DFE53EC192BDFF779FED5E92A23DFF798 +:101C20009FFFC5E92A0153EC1B2B51EC1A0BDFF780 +:101C30006DFE53EC1A2BDFF769FED5E92C23DFF795 +:101C40008FFFC5E92C0153EC1D2B51EC1A0BDFF76C +:101C50005DFE53EC1A2BDFF759FED5E92E23DFF793 +:101C60007FFFC5E92E0102B0BDEC108B31BD000035 +:101C70002DE9F84F2DED108B8CB080460C46914627 +:101C800098ED0CEB98ED308B98ED000B8DED000B83 +:101C900053EC182BDDE90001DFF738FE06460F464E +:101CA00053EC1E2B51EC1E0BDFF730FE02460B46A9 +:101CB00030463946DFF7C8FFCDE9040198ED0EFB49 +:101CC00098ED060B8DED020B53EC182BDDE90201AC +:101CD000DFF71CFE06460F4653EC1F2B51EC1F0B83 +:101CE000DFF714FE02460B4630463946DFF7ACFFFD +:101CF000CDE9080198ED109B98ED0AAB53EC182B39 +:101D000051EC1A0BDFF702FE06460F4653EC192B77 +:101D100051EC190BDFF7FAFD02460B463046394607 +:101D2000DFF792FFCDE9060153EC182BD8E9020149 +:101D3000DFF7ECFD06460F4653EC1E2B51EC1F0B54 +:101D4000DFF7E4FD02460B4630463946DFF77CFFFD +:101D500041EC1B0B53EC182BD8E90401DFF7D6FD3F +:101D600006460F4653EC1E2B51EC190BDFF7CEFD48 +:101D700002460B4630463946DFF766FF41EC1C0B46 +:101D800053EC182BD8E90801DFF7C0FD06460F46D3 +:101D900053EC1F2B51EC190BDFF7B8FD02460B4635 +:101DA00030463946DFF750FF41EC1D0B53EC182B42 +:101DB000D8E91201DFF7AAFD06460F4653EC1E2BA9 +:101DC000DDE90001DFF7A2FD02460B463046394649 +:101DD000DFF73AFF06460F4653EC182BD8E91401FB +:101DE000DFF794FD32463B46DFF7BAFE06460F4664 +:101DF00053EC1E2BDDE90201DFF788FD02460B469E +:101E000030463946DFF720FF06460F4653EC182BC5 +:101E1000D8E91601DFF77AFD32463B46DFF7A0FE30 +:101E200006460F4653EC1E2B51EC1A0BDFF76EFDE6 +:101E300002460B4630463946DFF706FF0022DFF840 +:101E40004835DFF763FD41EC1E0B53EC182BD8E946 +:101E50001801DFF75BFD06460F4653EC1F2BDDE94B +:101E60000001DFF753FD02460B4630463946DFF7E7 +:101E7000EBFE06460F4653EC182BD8E91A01DFF7A4 +:101E800045FD32463B46DFF76BFE06460F4653ECF8 +:101E90001F2BDDE90201DFF739FD02460B46304614 +:101EA0003946DFF7D1FE06460F4653EC182BD8E92A +:101EB0001C01DFF72BFD32463B46DFF751FE06469D +:101EC0000F4653EC1F2B51EC1A0BDFF71FFD024698 +:101ED0000B4630463946DFF7B7FE0022DFF8A8345C +:101EE000DFF714FD41EC1F0B53EC182BD8E91E0152 +:101EF000DFF70CFD06460F4653EC192BDDE9000118 +:101F0000DFF704FD02460B4630463946DFF79CFEFC +:101F100006460F4653EC182BD8E92001DFF7F6FCF4 +:101F200032463B46DFF71CFE06460F4653EC192BA4 +:101F3000DDE90201DFF7EAFC02460B46304639468E +:101F4000DFF782FE06460F4653EC182BD8E9220134 +:101F5000DFF7DCFC32463B46DFF702FE06460F4663 +:101F600053EC192B51EC1A0BDFF7D0FC02460B4651 +:101F700030463946DFF768FE0022DFF80C34DFF721 +:101F8000C5FC41EC190BDDE90423DDE90801DFF7AD +:101F9000BDFCCDE90201DDE9082351EC1C0BDFF7A4 +:101FA000B5FCCDE90001DDE9062351EC1B0BDFF7A1 +:101FB000ADFCCDE90A019FEDF18BDDE90A2351EC7F +:101FC0001B0BDFF7A3FC06460F4653EC1B2B51EC13 +:101FD000180BDFF79BFC53EC1C2BDFF797FC53EC43 +:101FE0001D2BDFF793FC02460B4630463946DFF7E0 +:101FF0002BFE06460F46DDE9002351EC1C0BDFF7F4 +:1020000085FC32463B46DFF7ABFD06460F46DDE971 +:10201000042351EC1D0BDFF779FC53EC1D2BDFF78C +:1020200075FC32463B46DFF79BFD06460F46DDE971 +:102030000223DDE90601DFF769FC02460B46304664 +:102040003946DFF701FE41EC1A0B53EC1A2B002046 +:102050000146EEF751F800F08B81DDE9082351ECE1 +:10206000190BDFF753FC06460F4653EC1D2B51ECC2 +:102070001F0BDFF74BFC02460B4630463946DFF7B5 +:10208000E3FD53EC1C2BDFF741FC06460F4653ECF7 +:102090001D2B51EC1D0BDFF739FC53EC1E2BDFF72A +:1020A00035FC32463B46DFF75BFD06460F46DDE971 +:1020B0000823DDE90601DFF729FC53EC1E2BDFF7CF +:1020C00025FC02460B4630463946DFF7BDFD064685 +:1020D0000F46DDE90A2351EC1F0BDFF717FC3246F0 +:1020E0003B46DFF73DFD06460F4653EC1B2B51ECFC +:1020F0001D0BDFF70BFC53EC192BDFF707FC024637 +:102100000B4630463946DFF79FFDC4E90001DDE9A3 +:10211000042351EC190BDFF7F9FB06460F4653EC8D +:102120001C2B51EC1E0BDFF7F1FB02460B46304631 +:102130003946DFF789FD53EC1D2BDFF7E7FB064639 +:102140000F4653EC1C2B51EC1C0BDFF7DFFB53EC61 +:102150001F2BDFF7DBFB32463B46DFF701FD064670 +:102160000F46DDE90423DDE90601DFF7CFFB53EC81 +:102170001F2BDFF7CBFB02460B4630463946DFF715 +:1021800063FD06460F46DDE90A2351EC1E0BDFF71F +:10219000BDFB32463B46DFF7E3FC06460F4653ECF9 +:1021A0001B2B51EC1C0BDFF7B1FB53EC192BDFF7AA +:1021B000ADFB02460B4630463946DFF745FDC4E924 +:1021C0000201DDE9042351EC1F0BDFF79FFB0646FC +:1021D0000F4653EC1B2B51EC1E0BDFF797FB02460F +:1021E0000B4630463946DFF72FFD53EC1D2BDFF74A +:1021F0008DFB06460F4653EC1B2B51EC1B0BDFF7F8 +:1022000085FB53EC192BDFF781FB32463B46DFF7AA +:10221000A7FC06460F46DDE9022351EC190BDFF758 +:1022200075FB02460B4630463946DFF70DFD064684 +:102230000F46DDE9002351EC1E0BDFF767FB32464A +:102240003B46DFF78DFC06460F4653EC1B2B51EC4B +:102250001C0BDFF75BFB53EC1F2BDFF757FB024632 +:102260000B4630463946DFF7EFFCC4E90401D4E9F8 +:10227000000153EC1A2BDFF7A7FDC4E90001D4E9F4 +:10228000020153EC1A2BDFF79FFDC4E90201D4E9E8 +:10229000040153EC1A2BDFF797FD41EC190B84ED89 +:1022A000049B94ED02AB94ED00BB53EC1B2B51EC63 +:1022B0001B0BDFF72BFB04460D4653EC1A2B51EC9E +:1022C0001A0BDFF723FB22462B46DFF749FC0446B7 +:1022D0000D4653EC192B51EC190BDFF717FB224677 +:1022E0002B46DFF73DFC04460D46D8E90023D8E92C +:1022F0000601DFF735FCD8E90A23DFF731FC824617 +:102300008B4653EC1B2BD8E90C01DFF7FFFA06468E +:102310000F4653EC1A2BD8E90E01DFF7F7FA3246D5 +:102320003B46DFF71DFC06460F4653EC192BD8E958 +:102330001001DFF7EBFA32463B46DFF711FC53ECB6 +:10234000182BDFF7E3FA02460B4650465946DFF7F3 +:102350007BFCD8E93023DFF737FD22462B46DFF739 +:10236000FFFB41EC100BF6F723FE89ED000B01207B +:102370000CB0BDEC108BBDE8F28F00BF0000000078 +:10238000000000400000F03F0000E03F80B5012267 +:1023900051EC100B00F0F6F841EC100B01BD000001 +:1023A000DFED4A0A10B560EE200AB0EEE01ADFED6C +:1023B000481AB4EE611A82B00446F1EE10FA29D53B +:1023C000F5EE400AF1EE10FAACBFB6EE001ABEEE22 +:1023D000001A70EE810AFDEEE00A10EE900AA8B134 +:1023E000FAEEC90A9FED3B1A00EEC10A9FED3A1AB8 +:1023F00000EEC10A9FED391A00EEC10A9FED381AAE +:1024000000EEC10A9FED371A00EEC10A00F003008A +:10241000041921E08DED000A0098C0F3C750FF2891 +:1024200008D088B9009840020ED1E00748D5B7EE31 +:10243000000A45E00098400246D1FAF7E9FA212166 +:1024400001609FED290A13BD8DED000A00A800F080 +:10245000C5FA04199DED000ADFED240AB4EE600A06 +:10246000F1EE10FA0BDBDFED220AB4EE600AF1EEBA +:1024700010FA04D5E00723D5B7EE000A20E060EE9D +:10248000000AE0070ED59FED1B0A9FED1B1A00EE18 +:10249000801ADFED1A1A41EE201AB7EE000A01EE9B +:1024A000A00A0DE0DFED161A9FED162A00EEA12A14 +:1024B000DFED151A20EE201A42EE201A01EE210A55 +:1024C000A00748BFB1EE400A13BD000083F9223FC8 +:1024D0000000004F0000C94600A0FD400020A23AC5 +:1024E000000034330030C22EFFFFFF7FFEFF7FB9B4 +:1024F000000080399349B2BA36A02A3DDFFFFFBE03 +:102500006E8C4CB94283083CA1AA2ABE81423ABFD4 +:1025100053189842E2F7D4BB8018990707D0521E8F +:1025200024BF13F8011D00F8011DF6D8704781077C +:102530001CD1103A07D330B433E93210103A20E9F5 +:102540003210F9D230BC1032121F24BF53F8041DD0 +:1025500040F8041DF8D838BF121D521E24BF13F8CE +:10256000011D00F8011DF8D8704700BF083A07D3D5 +:1025700033E90210083A40F804CD40F8041DF7D2C0 +:102580000832EAE7F0B52DED048B154641EC180B47 +:1025900083B053EC182BC448C449DFF7B7F9C44AD9 +:1025A000C44B41EC190B21F00041DFF749FD80F0ED +:1025B000F38051EC190B00220023DFF729FD53ECC7 +:1025C000192B99BF0020BC490020BC49DFF7C8FA8D +:1025D000DFF77AFA040051D0DFF7AAFA0022B84BED +:1025E000DFF794F941EC190B53EC192B4FF0A04095 +:1025F000B449DFF78BF902460B4651EC180BDFF7B5 +:1026000023FB06460F4653EC192B4FF0C040AE4952 +:10261000DFF77CF902460B4630463946DFF714FBFC +:1026200006460F4653EC192B4FF00050A749DFF731 +:102630006DF902460B4630463946DFF705FB064684 +:102640000F4653EC192B0020A149DFF75FF9024632 +:102650000B4630463946DFF7F7FA06460F4653EC8D +:10266000192B4FF000509B49DFF750F902460B46FB +:1026700030463946DFF7E8FA41EC180B04F0030066 +:10268000451951EC180B6FF00102944BDFF7C0FCB9 +:102690000BD800224FF07953DFF7D2FC05D2E807C0 +:1026A00040F18E819FED8E8B8AE153EC182BDFF782 +:1026B0002DF941EC190BE80731D553EC192B8A4859 +:1026C0008A49DFF723F98A4A8A4BDFF749FA53EC44 +:1026D000192BDFF71BF9884A884BDFF741FA53ECD7 +:1026E000192BDFF713F9864A864BDFF739FA53ECDB +:1026F000192BDFF70BF9844A844BDFF731FA53ECDF +:10270000192BDFF703F9824B6FF05102DFF728FA3C +:1027100053EC192BDFF7FAF80022624B37E053EC49 +:10272000182B51EC190BDFF7F1F806460F4653EC66 +:10273000192B91489149DFF7E9F8914A914BDFF75E +:102740000FFA53EC192BDFF7E1F88F4A8F4BDFF7C5 +:1027500007FA53EC192BDFF7D9F88D4A8D4BDFF7C9 +:10276000FFF953EC192BDFF7D1F88B4A8B4BDFF7CE +:10277000F7F953EC192BDFF7C9F8894A564BDFF705 +:10278000EFF932463B46DFF7C1F853EC182BDFF781 +:10279000E7F941EC180B13E18DED008BDDE9000149 +:1027A000DDE90023C3F30A5140F2FF74A14213D0C4 +:1027B000002904BF190350EA11301CD1E80748BFB3 +:1027C0009FED478BA80740F1038151EC180B81F076 +:1027D000004141EC180BFBE0190350EA113040F0C6 +:1027E000F780FAF715F9212103B001604FF0FF30AF +:1027F0006FF00041EFE08DED008B00A800F064F970 +:1028000045199DED008B354B51EC180B6FF0010213 +:10281000DFF7FEFB0BD800224FF07953DFF710FCF7 +:1028200005D2E80740F1CC809FED2D8BC8E053EC3A +:10283000182BDFF76BF841EC190BE8076AD553EC5E +:10284000192B29482949DFF761F8294A294BDFF775 +:1028500087F953EC192BDFF759F8274A274BDFF795 +:102860007FF953EC192BDFF751F8254A254BDFF799 +:1028700077F953EC192BDFF749F8234A234BDFF79D +:102880006FF953EC192BDFF741F8214B6FF0510230 +:10289000DFF766F953EC192BDFF738F80022014B0C +:1028A0008AE000BF0000F03F83C8C96D305FE43F9D +:1028B0000000A0FFFFFFDF410000E03F0000E0BF9D +:1028C0000000303EFB21B941B410114026A6513E14 +:1028D0005C14D33C9A833B3B5555C5BFFFFF3FBEBD +:1028E000000000000000F03F09260A1039BA213E1E +:1028F0003BA861C6F97D92BE63AC30909F01FA3E61 +:10290000F6FB51166CC156BFB10255555555A53F42 +:10291000FFFFDFBF53EC182B51EC190BDEF7F6FF6E +:1029200006460F4653EC192B13481449DEF7EEFF09 +:10293000134A144BDFF714F953EC192BDEF7E6FFBB +:10294000114A124BDFF70CF953EC192BDEF7DEFFBF +:102950000F4A104BDFF704F953EC192BDEF7D6FFC3 +:102960000D4A0E4BDFF7FCF853EC192BDEF7CEFFC8 +:102970000B4A0C4B18E000BFB08F2FC310D8E53DB9 +:102980008F0C73A1E1E55ABE4DADE44FE31DC73E88 +:102990003EE3B519A0012ABFFAF010111111813FD1 +:1029A000425555555555C5BFDFF7DAF832463B4617 +:1029B000DEF7ACFF53EC182BDFF7D2F841EC180B25 +:1029C000A80705D551EC180B81F0004141EC180B1C +:1029D00003B051EC180BBDEC048BF0BD10B50446F0 +:1029E0002DED028B94ED008A9FED2D0A82B028EE2A +:1029F000000AB5EE400A8DED000AF1EE10FAACBF08 +:102A0000F6EE000AFEEE000A30EE200A8DED000A16 +:102A1000002100A800F00CF99DED000AB5EE400A77 +:102A2000F1EE10FA17D0DFED1F0A20EE200ADFEDDD +:102A30001E0A00EE608ADFED1D0A00EE608ADFEDFF +:102A40001C0A00EE608ADFED1B0A00EE608ADFEDF3 +:102A50001A0A00EE608A84ED008ADFED180A9DED07 +:102A6000000AB4EE600AF1EE10FA06D4DFED140AA3 +:102A7000B4EE600AF1EE10FA05DBDFED120A00F0A9 +:102A8000FFF88DED000A9DED000ABDEEC00A02B010 +:102A900010EE100A00F00300BDEC028B10BD000028 +:102AA00083F9223F000080380000C94600A0FD40A5 +:102AB0000020A23A000034330030C22E000000CFC4 +:102AC0000100004F0000004FD0B52DED048B0446EF +:102AD00082B094ED008B4748474953EC182BDEF742 +:102AE00015FFCDE9000100220023DFF791FADDE9AF +:102AF000002399BF0020414900204149DFF730F809 +:102B0000CDE90001002100A800F058F9DDE900231B +:102B100000200021EDF7F0FA4ED03A49DEF7F6FE3C +:102B200041EC190B53EC192B4FF0A0403649DEF75E +:102B3000EDFE02460B4651EC180BDFF785F8064612 +:102B40000F4653EC192B4FF0C0403049DEF7DEFE44 +:102B500002460B4630463946DFF776F806460F4602 +:102B600053EC192B4FF000502949DEF7CFFE0246F7 +:102B70000B4630463946DFF767F806460F4653ECFA +:102B8000192B00202349DEF7C1FE02460B463046D2 +:102B90003946DFF759F806460F4653EC192B4FF02C +:102BA00000501D49DEF7B2FE02460B46304639465C +:102BB000DFF74AF841EC180B84ED008BDDE90001EA +:102BC000164A174BDFF73CFA04D3164A164BDFF7C9 +:102BD0001FFA05D80022154B00F030F9CDE90001AD +:102BE000DDE90001DEF770FF02B000F00300BDEC8C +:102BF000048BD0BD83C8C96D305FE43F0000E03F67 +:102C00000000E0BF0000303EFB21B941B41011408C +:102C100026A6513E5C14D33C9A833B3B0000C0FF88 +:102C2000FFFFDFC10100C0FFFFFFDF410000E04107 +:102C30000268C2F3C752FF2A06D10068400201D1E0 +:102C4000012070470220704703685B0016D0C2F174 +:102C50009602521A012A11DB182A04DB016801F0DE +:102C60000041016007E0012191400268491E1140C6 +:102C70004A40026011B14FF0FF30704700207047AA +:102C800010EE100A10EE901AA4464FF0FF034FEA20 +:102C9000410103EAD0540A0E1CBF94EA030F92EAE2 +:102CA000030F55D0B1EB400F2ED24FEAC11141F0C6 +:102CB000004100F000434FEA002040F000404FEA9E +:102CC0009000890864EB0204401A38BF01EB400011 +:102CD00018BF54F1000407D0D1EB400038BF0818EA +:102CE00018BFB4F10104F7D140002CD0B0FA80F144 +:102CF00000FA01F0521A0EDB43EA102000EBC2503A +:102D000000EE100A6446704708BF00F0004000EE75 +:102D1000100A6446704743EA102000EE100A02F1E0 +:102D20007F024FEAC25100EE901AF1EE100A20F431 +:102D3000F851E1EE101A20EE200AE1EE100A10EE32 +:102D4000100A64467047184600EE100A6446704741 +:102D500009421CBF94EA030F92EA030F1CD04FF004 +:102D6000984201EE102A60EE810AB1EB400FCBD2FF +:102D7000244208BF20EE010A10EE901A03EAD15255 +:102D8000A2F119024FEA012191D110EE100A03EAD3 +:102D9000D054A4F119048CE74FF0807212EB400F6D +:102DA0002CBF6FF0004011F1807F644618BF6FF0B8 +:102DB000004000EE100AF7F49DAA70474268C2F383 +:102DC0000A5240F2FF7C624509D14168090304BF01 +:102DD0000068002801D10120704702207047436835 +:102DE0005B0004BF0368002B25D040F233439A1ADE +:102DF000521A012A1FDB352A06DB416801F0004127 +:102E000041600021016013E0012102F01F0399409D +:102E1000491E920607D5426811404A404260026846 +:102E20001143002202E0026811404A40026011B1E1 +:102E30004FF0FF30704700207047000070B540F23F +:102E4000FF7601F0004C5B0006EA11545D0D1ABFDD +:102E5000B442B54278E0B3EB410F08BF82424BD297 +:102E6000C3F3530343F48013C1F3130141F48011FE +:102E7000641B0B3C13D9C90241EA5051B1FBF3FE6C +:102E800003FB1E11A2FB0EE6DEEBC020B14101D216 +:102E90008018594150EA010653D00B3CEBD80B3453 +:102EA000C4F12006A14020FA06F6A0403143B1FB50 +:102EB000F3FE03FB1E11A2FB0EE6B0EB0E00B141C8 +:102EC00001D28018594102BF0146203D0020C1B304 +:102ED000B1FA81F39940C3F1200220FA02F21143C2 +:102EE0009840ED1A0A3509DBC00A40EA41504CEA25 +:102EF000D12101EB055170BD23D070BDD5F10B057B +:102F0000B5F120020DDAC5F120020300E84001FA14 +:102F100002F6E940934073F10043704151EB0C011C +:102F200070BD402D0DDC430821FA02F0C2F12005EE +:102F300011FA05F6334373F1004370415CF100016F +:102F400070BD6146002070BD53EA020E1ABFB44244 +:102F5000B54237E0B3EB410F08BF8242CCD25B08E9 +:102F6000B3FA83F504BFB2FA82F6AD190B3DB5F1A1 +:102F7000200624BF02FA06F305E0AB40C5F12006A7 +:102F800022FA06F63343AA40D5F1010524427FF424 +:102F90006BAF31F00041B1FA81F404BFB0FA80F6B2 +:102FA000A4190B3CB4F1200624BF00FA06F105E099 +:102FB000A140C4F1200620FA06F63143A040D4F126 +:102FC000010455E74FF4001515EB410F2CBF6FF0CE +:102FD0000041EB4218BF6FF00041BDE87040F7F4CC +:102FE00089A970473D0A3F0A450A4F0A5E0A700ADE +:102FF000860AA00ABF0AE10A080B320B600B930B8A +:10300000C90B030C410C840CCA0C140D610DB30DDB +:10301000080E620EBE0E1F0F840FEC0F5810C71063 +:103020003A11B1112B12A9122A13AE133614C2147D +:103030005015E21578161017AC174B18EC189119AB +:10304000391AE41A921B431CF61CAC1D651E211F85 +:10305000DF1FA02063212922F122BC2388245725C9 +:103060002926FC26D227A92882295E2A3B2B1A2C46 +:10307000FB2CDD2DC12EA72F8E30763160324B33E5 +:103080003734243513360337F337E538D739CA3A9E +:10309000BE3BB23CA73D9D3E933F89408041774275 +:1030A0006E4365445C4554464B47424839492F4A74 +:1030B000254B1B4C104D054EF94EED4FDF50D151B5 +:1030C000C252B253A1548F557C56685752583B593F +:1030D000235A095BEE5BD15CB35D935E715F4D601B +:1030E00027610062D662AB637D644D651B66E7664F +:1030F000B06777683C69FE69BD6A7A6B356CEC6CC9 +:10310000A16D536E026FAF6F5870FE70A271427264 +:10311000DF7279731074A4743475C1754B76D176EF +:103120005477D4775078C8783D79AE791C7A867A0E +:10313000EC7A4F7BAD7B097C607CB37C037D4F7D5B +:10314000977DDB7D1B7E577E907EC47EF47E217F43 +:10315000497F6D7F8E7FAA7FC27FD77FE77FF37F16 +:10316000FB7FFF7FFF7FFB7FF37FE77FD77FC27F00 +:10317000AA7F8E7F6D7F497F217FF47EC47E907E03 +:10318000577E1B7EDB7D977D4F7D037DB37C607C0E +:10319000097CAD7B4F7BEC7A867A1C7AAE793D79DF +:1031A000C8785078D4775477D1764B76C17534751A +:1031B000A47410747973DF724272A271FE70587039 +:1031C000AF6F026F536EA16DEC6C356C7A6BBD6A9C +:1031D000FE693C697768B067E7661B664D657D648C +:1031E000AB63D662006227614D60715F935EB35D31 +:1031F000D15CEE5B095B235A3B59525868577C56A9 +:103200008F55A154B253C252D151DF50ED4FF94EF8 +:10321000054E104D1B4C254B2F4A394942484B4710 +:1032200054465C4565446E43774280418940933FF4 +:103230009D3EA73DB23CBE3BCA3AD739E538F3378D +:1032400003371336243537344B33603276318E30C2 +:10325000A72FC12EDD2DFB2C1A2C3B2B5E2A822999 +:10326000A928D227FC26292657258824BC23F12209 +:1032700029226321A020DF1F211F651EAC1DF61C23 +:10328000431C921BE41A391A9119EC184B18AC170D +:1032900010177816E2155015C2143614AE132A13FF +:1032A000A9122B12B1113A11C7105810EC0F840F4C +:1032B0001F0FBE0E620E080EB30D610D140DCA0C69 +:1032C000840C410C030CC90B930B600B320B080BE5 +:1032D000E10ABF0AA00A860A700A5E0A4F0A450A76 +:1032E0003F0A3D0A00007900F3006C01E60160022C +:1032F000D9025303CC034604C0043905B3052C0698 +:10330000A6062007990713088C0806098009F90901 +:10331000730AED0A660BE00B590CD30C4D0DC60D6C +:10332000400EB90E330FAD0F2610A01019119311D6 +:103330000D12861200137913F3136D14E614601541 +:10334000DA155316CD164617C0173A18B3182D19AB +:10335000A619201A9A1A131B8D1B061C801CFA1C16 +:10336000731DED1D661EE01E5A1FD31F4D20C72082 +:103370004021BA213322AD222723A0231A249324EB +:103380000D25872500267A26F3266D27E727602856 +:10339000DA285329CD29472AC02A3A2BB42B2D2CC1 +:1033A000A72C202D9A2D142E8D2E072F802FFA2F2B +:1033B0007430ED306731E0315A32D4324D33C73397 +:1033C0004034BA343435AD352736A1361A37943700 +:1033D0000D38873801397A39F4396D3AE73A613B6B +:1033E000DA3B543CCD3C473DC13D3A3EB43E2D3FD7 +:1033F000A73F21409A4014418E4107428142FA4240 +:103400007443EE436744E1445A45D4454E46C746AB +:103410004147BA473448AE482749A1491A4A944A15 +:103420000E4B874B014C7B4CF44C6E4DE74D614E7F +:10343000DB4E544FCE4F4750C1503B51B4512E52EA +:10344000A75221539B5314548E540755010000007A +:103450000100000001000000010000000200000067 +:103460000200000002000000020000000300000053 +:10347000030000000300000004000000040000003E +:103480000500000005000000060000000700000025 +:1034900008000000080000000A0000000B00000007 +:1034A0000C0000000E0000000F00000011000000E2 +:1034B0001300000016000000190000001C000000AE +:1034C0001F00000023000000280000002D00000065 +:1034D00032000000390000004000000048000000F9 +:1034E000510000005B000000670000007400000055 +:1034F0008200000093000000A5000000BA00000058 +:10350000D1000000EC0000000A0100002B010000C7 +:10351000510100007B010000AB010000E10100004F +:103520001D02000062020000AF020000050300005F +:1035300067030000D403000050040000DB04000017 +:103540007805000029060000EF060000CF07000004 +:10355000CB080000E7090000270B00008F0C0000DB +:10356000240E0000ED0F0000EF11000032140000E7 +:10357000BE1600009C190000D71C00007A20000035 +:10358000922400002F290000602E00003934000032 +:10359000CF3A000039420000934A0000FA5300007D +:1035A000915E00007E6A0000EC7700000B8700004F +:1035B000129800003FAB0000D7C0000028D90000DF +:1035C0008AF400006013010019360100345D010027 +:1035D0003C890100D3BA0100A9F201008B3102003D +:1035E0005A78020017C80200E22103000087030096 +:1035F000DDF80300177904007C09050016AC05000E +:103600003163060062310700941908000E1F09009B +:1036100080450A0013910B0076060D00EEAA0E00FD +:103620006B8410009D9912000CF214003096170064 +:10363000988F1A0002E91D008BAE2100D4ED250001 +:1036400038B62A0001193000A629360015FE3C00C4 +:10365000FDAE44002B584D00EF185700891462004E +:10366000AC726E000E607C00060F8C0046B89D00A8 +:10367000A59BB1000701C8006139E100DD9FFD0095 +:10368000259B1D01D39E4101172D6A0189D8970101 +:103690004146CB01243005028C67460236D88F02A2 +:1036A0009A8BE202ABAC3F030B8CA803D2A41E049E +:1036B000E6A1A304FE6339057208E205DDF09F066A +:1036C000B8CB75070D9E66085ECE7509F630A70A61 +:1036D000B915FF0BC257820DE86E360F8983211191 +:1036E000CC844A13AB41B9153585761852368C1BFC +:1036F000917B051F74E3EE22D591562702734C2C63 +:103700005075E231E5C92C38BB2D423FD03B3C47D8 +:10371000B2C93750BF4F555A805EB96500010001EC +:103720000001000100010001FF00FF00FF00FE009A +:10373000FE00FE00FD00FD00FC00FC00FB00FA00A6 +:10374000FA00F900F800F800F700F600F500F400C0 +:10375000F300F200F100F000EF00EE00ED00EB00EE +:10376000EA00E900E700E600E500E300E200E0002F +:10377000DF00DD00DC00DA00D800D700D500D30080 +:10378000D100CF00CE00CC00CA00C800C600C400E3 +:10379000C200C000BE00BC00B900B700B500B30055 +:1037A000B100AE00AC00AA00A700A500A200A000D6 +:1037B0009D009B0098009600930091008E008C0065 +:1037C00089008600840081007E007B0079007600FD +:1037D000730070006D006B006800650062005F00A0 +:1037E0005C0059005600530050004D004A0047004D +:1037F000440041003E003B003800350032002F00FD +:103800002C002900260022001F001C0019001600B1 +:10381000130010000D000900060003000000000066 +:103820000000C6028C055108170BDD0DA3106813AC +:103830002E16F418BA1B801E45210B24D126972979 +:103840005D2C222FE831AE347437393AFF3CC53F46 :103850000001000100010001000100010001000160 -:10386000000100010001FC00F400E900DB00CA00D7 -:10387000B5009E00840069004C002E000F00F1FF8F -:10388000D2FFB4FF97FF7CFF62FF4BFF36FF25FF9F -:1038900017FF0CFF04FF00FFFE00EF00D300AA009B -:1038A00077003D000000C3FF89FF56FF2DFF11FF89 -:1038B00002FF02FF11FF2DFF56FF89FFC3FF00002B -:1038C0003D007700AA00D300EF00FE00FC00DB0003 -:1038D0009E004C00F1FF97FF4BFF17FF00FF0CFF0E -:1038E00036FF7CFFD2FF2E008400CA00F4000001E6 -:1038F000E900B50069000F00B4FF62FF25FF04FF77 -:10390000F900C0005B00E1FF6FFF1DFF00FF1DFF1E -:103910006FFFE1FF5B00C000F900F900C0005B0031 -:10392000E1FF6FFF1DFF00FF1DFF6FFFE1FF5B0069 -:10393000C000F900F4009E000F007CFF17FF04FF99 -:103940004BFFD2FF6900DB000001CA004C00B4FF4E -:1039500036FF00FF25FF97FF2E00B500FC00E900B1 -:103960008400F1FF62FF0CFFEF007700C3FF2DFF23 -:1039700002FF56FF0000AA00FE00D3003D0089FFB1 -:1039800011FF11FF89FF3D00D300FE00AA000000D7 -:1039900056FF02FF2DFFC3FF7700EF00E9004C0048 -:1039A0007CFF04FF36FFF1FFB50000019E00D2FF4F -:1039B00025FF0CFF97FF6900F400DB002E0062FF7B -:1039C00000FF4BFF0F00CA00FC008400B4FF17FF8C -:1039D000E3001F0040FF07FFA5FF910000019100D9 -:1039E000A5FF07FF40FF1F00E300E3001F0040FFAB -:1039F00007FFA5FF910000019100A5FF07FF40FF11 -:103A00001F00E300DB00F1FF17FF36FF2E00F4007C -:103A1000B500B4FF04FF62FF6900000184007CFF71 -:103A200000FF97FF9E00FC004C004BFF0CFFD2FFF5 -:103A3000CA00E9000F0025FFD300C3FF02FF89FF82 -:103A4000AA00EF00000011FF56FF7700FE003D00C6 -:103A50002DFF2DFF3D00FE00770056FF11FF0000F7 -:103A6000EF00AA0089FF02FFC3FFD300CA0097FF3F -:103A700004FFF1FFF40084004BFF25FF4C00000120 -:103A80002E0017FF62FF9E00E900D2FF00FFB4FF87 -:103A9000DB00B5007CFF0CFF0F00FC00690036FF67 -:103AA000C0006FFF1DFF5B00F900E1FF00FFE1FFB9 -:103AB000F9005B001DFF6FFFC000C0006FFF1DFF1E -:103AC0005B00F900E1FF00FFE1FFF9005B001DFF73 -:103AD0006FFFC0000A000A000F00130017001A0051 -:103AE0001D0020002200250027002A002C000000D5 -:103AF000000000000300050007000A000D0011008F -:103B0000140018001C00210026002C00320039008F -:103B10004100490052005B00660072007E008C008C -:103B20009C00AC00BF00E9000000000000000400A1 -:103B30000500080009000D000E00130014001A0013 -:103B40001B0021002200280029003000310039002C -:103B50003A00430044004E004F005A005B006700EB -:103B60006800760077008600870097009800A9001B -:103B7000AA00BD00BE00D400D500EC00ED00060197 -:103B800007012401250144014501670168018E01F7 -:103B90008F01B801B901E500000000000000AB2A68 -:103BA00055550080004000000040008000400000AB -:103BB000004000805555AB2A0000AB2A55550080C7 -:103BC0005555AB2A0000AB2A5555008000600040D7 -:103BD0000020000000200040006000805555AB2A06 -:103BE0000000AB2A55550080006000400020000016 -:103BF00000200040006000800060004000200000C5 -:103C000000200040006000806666CD4C33339A1976 -:103C100000009A193333CD4C666600806666CD4C41 -:103C200033339A1900009A193333CD4C66660080FD -:103C3000AB6A55550040AB2A551500005515AB2A07 -:103C400000405555AB6A0080AB6A55550040AB2A21 -:103C5000551500005515AB2A00405555AB6A00803C -:103C6000B76D6E5B2549DB3692244912000049127C -:103C70009224DB3625496E5BB76D008000700060D2 -:103C80000050004000300020001000000010002014 -:103C90000030004000500060007000800070006044 +:103860000001000100010001000100010001000150 +:103870000001000100010001000100010001000140 +:10388000000100010001FC00F400E900DB00CA00B7 +:10389000B5009E00840069004C002E000F00F1FF6F +:1038A000D2FFB4FF97FF7CFF62FF4BFF36FF25FF7F +:1038B00017FF0CFF04FF00FFFE00EF00D300AA007B +:1038C00077003D000000C3FF89FF56FF2DFF11FF69 +:1038D00002FF02FF11FF2DFF56FF89FFC3FF00000B +:1038E0003D007700AA00D300EF00FE00FC00DB00E3 +:1038F0009E004C00F1FF97FF4BFF17FF00FF0CFFEE +:1039000036FF7CFFD2FF2E008400CA00F4000001C5 +:10391000E900B50069000F00B4FF62FF25FF04FF56 +:10392000F900C0005B00E1FF6FFF1DFF00FF1DFFFE +:103930006FFFE1FF5B00C000F900F900C0005B0011 +:10394000E1FF6FFF1DFF00FF1DFF6FFFE1FF5B0049 +:10395000C000F900F4009E000F007CFF17FF04FF79 +:103960004BFFD2FF6900DB000001CA004C00B4FF2E +:1039700036FF00FF25FF97FF2E00B500FC00E90091 +:103980008400F1FF62FF0CFFEF007700C3FF2DFF03 +:1039900002FF56FF0000AA00FE00D3003D0089FF91 +:1039A00011FF11FF89FF3D00D300FE00AA000000B7 +:1039B00056FF02FF2DFFC3FF7700EF00E9004C0028 +:1039C0007CFF04FF36FFF1FFB50000019E00D2FF2F +:1039D00025FF0CFF97FF6900F400DB002E0062FF5B +:1039E00000FF4BFF0F00CA00FC008400B4FF17FF6C +:1039F000E3001F0040FF07FFA5FF910000019100B9 +:103A0000A5FF07FF40FF1F00E300E3001F0040FF8A +:103A100007FFA5FF910000019100A5FF07FF40FFF0 +:103A20001F00E300DB00F1FF17FF36FF2E00F4005C +:103A3000B500B4FF04FF62FF6900000184007CFF51 +:103A400000FF97FF9E00FC004C004BFF0CFFD2FFD5 +:103A5000CA00E9000F0025FFD300C3FF02FF89FF62 +:103A6000AA00EF00000011FF56FF7700FE003D00A6 +:103A70002DFF2DFF3D00FE00770056FF11FF0000D7 +:103A8000EF00AA0089FF02FFC3FFD300CA0097FF1F +:103A900004FFF1FFF40084004BFF25FF4C00000100 +:103AA0002E0017FF62FF9E00E900D2FF00FFB4FF67 +:103AB000DB00B5007CFF0CFF0F00FC00690036FF47 +:103AC000C0006FFF1DFF5B00F900E1FF00FFE1FF99 +:103AD000F9005B001DFF6FFFC000C0006FFF1DFFFE +:103AE0005B00F900E1FF00FFE1FFF9005B001DFF53 +:103AF0006FFFC0000A000A000F00130017001A0031 +:103B00001D0020002200250027002A002C000000B4 +:103B1000000000000300050007000A000D0011006E +:103B2000140018001C00210026002C00320039006F +:103B30004100490052005B00660072007E008C006C +:103B40009C00AC00BF00E900000000000000040081 +:103B50000500080009000D000E00130014001A00F3 +:103B60001B0021002200280029003000310039000C +:103B70003A00430044004E004F005A005B006700CB +:103B80006800760077008600870097009800A900FB +:103B9000AA00BD00BE00D400D500EC00ED00060177 +:103BA00007012401250144014501670168018E01D7 +:103BB0008F01B801B901E500000000000000AB2A48 +:103BC000555500800040000000400080004000008B +:103BD000004000805555AB2A0000AB2A55550080A7 +:103BE0005555AB2A0000AB2A5555008000600040B7 +:103BF0000020000000200040006000805555AB2AE6 +:103C00000000AB2A555500800060004000200000F5 +:103C100000200040006000800060004000200000A4 +:103C200000200040006000806666CD4C33339A1956 +:103C300000009A193333CD4C666600806666CD4C21 +:103C400033339A1900009A193333CD4C66660080DD +:103C5000AB6A55550040AB2A551500005515AB2AE7 +:103C600000405555AB6A0080AB6A55550040AB2A01 +:103C7000551500005515AB2A00405555AB6A00801C +:103C8000B76D6E5B2549DB3692244912000049125C +:103C90009224DB3625496E5BB76D008000700060B2 :103CA00000500040003000200010000000100020F4 -:103CB000003000400050006000700080C7718E63CB -:103CC00055551C47E438AB2A721C390E0000390EDA -:103CD000721CAB2AE4381C4755558E63C7710080AF -:103CE000C7718E6355551C47E438AB2A721C390ED8 -:103CF0000000390E721CAB2AE4381C4755558E6300 -:103D0000C77100805D74BA68175D7451D1452F3A50 -:103D10008C2EE9224617A30B0000A30B4617E922BD -:103D20008C2E2F3AD1457451175DBA685D740080AE -:103D30005575AB6A00605555AB4A00405535AB2A06 -:103D400000205515AB0A0000AB0A55150020AB2A20 -:103D500055350040AB4A55550060AB6A557500803B -:103D60005575AB6A00605555AB4A00405535AB2AD6 -:103D700000205515AB0A0000AB0A55150020AB2AF0 -:103D800055350040AB4A55550060AB6A557500800B -:103D9000DB76B76D92646E5B495225490040DB3695 -:103DA000B72D92246E1B49122509000025094912DE -:103DB0006E1B9224B72DDB360040254949526E5BBD -:103DC0009264B76DDB760080007800700068006058 -:103DD0000058005000480040003800300028002003 -:103DE0000018001000080000000800100018002053 -:103DF00000280030003800400048005000580060A3 -:103E00000068007000780080007800700068006032 -:103E100000580050004800400038003000280020C2 -:103E20000018001000080000000800100018002012 -:103E30000028003000380040004800500058006062 -:103E4000006800700078008043798772CA6B0D6546 -:103E5000515E9457D8501B4A5E43A23CE535282F4B -:103E60006C28AF21F31A3614790DBD060000BD068B -:103E7000790D3614F31AAF216C28282FE535A23CB2 -:103E80005E431B4AD8509457515E0D65CA6B8772CA -:103E9000437900809A793373CD6C666600609A59D5 -:103EA0003353CD4C664600409A393333CD2C6626C9 -:103EB00000209A193313CD0C660600006606CD0C5F -:103EC00033139A1900206626CD2C33339A390040DB -:103ED0006646CD4C33539A5900606666CD6C337399 -:103EE0009A7900802F7A5D748C6EBA68E962175DEA -:103EF00046577451A34BD14500402F3A5D348C2E68 -:103F0000BA28E922171D46177411A30BD10500002A -:103F100090019001A400A400680068006800680097 -:103F2000460046002800280020002000140014004D -:103F300010001000100010000A000A000600060021 -:103F40000600060001001B00F000800100020D00C9 -:103F50005201B4001D003800B901810009002000A1 -:103F600018000000C42F030830380308C4320308C7 -:103F70002C340308D43A0308FC360308F03A03084B -:103F80002C3B03089C3B030800380308103F030840 -:103F90000F0003000B00280010B5DFF8FC4520627D -:103FA0000C220021201DDEF75AF804F124002061C4 -:103FB00004F13C00606104F15400A06104F16C0064 -:103FC000E06110BD2DE9F0472DED068B86B00C4663 -:103FD0004FF0000ADFF8C055016869604168A960C8 -:103FE0008068E860D04640460190049003900290BB -:103FF000052205F10C01286900F05DFA052205F1A2 -:104000000801686900F057FA0522291DA86900F027 -:1040100052FA052301AA0321286900F061FAB0EEE3 -:10402000408A052304AA0321686900F059FAF0EEDA -:10403000408A052303AA0321A86900F051FAB0EED3 -:10404000409A05220321286900F088FAF0EE080A58 -:10405000C0EE209A95ED02AAD5ED01AAF5EE40AA90 -:10406000F1EE10FA0FD1B5EE40AAF1EE10FA0AD136 -:1040700095ED030AB5EE400AF1EE10FA03D100F017 -:1040800016FA4FF00108564695F8019095ED030A8F -:104090006AEEAA0A4AEE0A0A40EE000A10EE900AF8 -:1040A000DDF7EEFB41EC100BF4F772FF51EC100B57 -:1040B000ECF7D8F90090052200A9E86900F0FBF9B7 -:1040C0009DED000ADFEDA30AB4EE600AF1EE10FAEE -:1040D00000F18580DFEDA00AB4EE600AF1EE10FA7F -:1040E0007DDA052302AA0321E86900F0F9F9F0EE70 -:1040F0000C0AB4EE600AF1EE10FA70D59FED970A43 -:10410000B4EE408AF1EE10FA69D59FED950AF4EE0F -:10411000409AF1EE10FA10D59FED920AF4EE409A13 -:10412000F1EE10FA09DB6878FF2858D0FF2068709C -:104130004FF0FF3020700120C4E019EE900ADDF747 -:104140009FFB21F000413246DFF85034DDF76AFF73 -:1041500011D2B0EE000AF4EE408AF1EE10FA17D454 -:10416000F4EE408AF1EE10FA39DAB4EE409AF1EE4C -:1041700010FA0EDB33E0052301AA1946286900F086 -:10418000AFF9F7EE000AB4EE600AF1EE10FA26D5A8 -:10419000B04695ED030ADDED000A80EE200A10EE30 -:1041A000100ADDF76DFB41EC100B00F0D7FA53EC71 -:1041B000102B4FF00040DFF8E813DDF799FB41ECDE -:1041C000100B00F0F5FA51EC100BDDF76FFC074611 -:1041D000B8F1000F51D1EBF73DFF3D2803DB00F0B4 -:1041E00066F930466EE0A868DDF74AFB41EC110B3A -:1041F000B0EE418AF0EE618A95ED010AB1EE400A17 -:1042000010EE100ADDF73CFB41EC100BB0EE481A43 -:10421000F0EE681A00F070FB53EC102B4FF00040EA -:10422000DFF88013DDF764FB41EC100B00F0C0FAFF -:1042300051EC100BDDF73AFC060001D506F5B4761B -:1042400006F12D005A2190FBF1F8B8F1040F00D1CE -:10425000D046384600F03BF8002806D03A463146B2 -:10426000404600F039F8002802D100F020F904E0BF -:10427000A878404501D085F80280A878484502D149 -:10428000B9F1FF0F1DD195F8201011F0060F01D0E4 -:10429000012604E03A46314600F066F80646384604 -:1042A000EBF7D8FE3D280CDA002E0AD0A878697802 -:1042B000814206D0687020704FF0010AFF2800D0BC -:1042C0002870504606B0BDEC068BBDE8F0873C3048 -:1042D00079288041C00F704718B4AF4C237894F808 -:1042E000204014F0060F01D018BC3DE02FD49842B6 -:1042F00008D05A1C541002EB9474A410A2EB840250 -:1043000090420ED15A224243283A002807D1B1F5F3 -:104310009D7F06DD02F5B472914202DA15E091420A -:1043200013DB984208D0DA1C531002EB93739B10F6 -:10433000A2EB830290420AD15A224243283200283B -:1043400001D12E2903DA8A4201DA002000E001209F -:1043500012BC7047DD0CFB40A7493C416766E63F55 -:104360003E1B3041D7B409412DE9F04F95B00446CA -:104370000D461646884F97F8008010A80FF22821A6 -:104380001422E0F79DFC4FF0000B0DF14009D9F825 -:1043900004A03046EBF75EFE1099884204DB3046FD -:1043A000EBF758FE50452ADBD9F808B03046EBF75A -:1043B00051FE504507DB3046EBF74CFE584502DA1C -:1043C0004FF0010B1BE0D9F80C903046EBF742FEA2 -:1043D000584507DB3046EBF73DFE484502DA4FF023 -:1043E000020B0CE03046EBF735FE48450CDB30465F -:1043F000EBF730FE1499814206DB4FF0030BB8F166 -:10440000000F47D4002C01D5002044E0444509D0DA -:1044100008F10100411000EB91718910A0EB8100BF -:10442000844218D100A80FF294114022E0F748FC12 -:104430004FEA0B10002C00A908D141588D420ADA2E -:1044400000A940184068A84205DA2CE0401850F84E -:104450002400854227DB444509D008F103004110C0 -:1044600000EB91718910A0EB8100844212D100A869 -:104470000FF288114022E0F723FC4FEA0B10002CCA -:1044800000A90BD14158A94204DA00A94018C0681C -:10449000854208DB012015B0BDE8F08F401850F8C8 -:1044A0002400A842F6DAFF20B8700020F3E73A486B -:1044B000FF21817070470388934201D3002303805A -:1044C00003885B1C03809BB2934201D300220280CD -:1044D000028800EB820009684160012070470000FB -:1044E0002DE9F0432DED028B81B004460D461646B2 -:1044F0001F469FED288A4FF00008B4F9009000EEA7 -:10450000105AF8EEC08A3A4600F028F880EE280AE1 -:1045100086ED000A05E0A7F101090FFA89F908F113 -:1045200001080FFA88F8A84511DA04EB890090ED2C -:10453000010AD6ED000A30EE600A00EE008AB9F1F9 -:10454000010FE8DBA9F101090FFA89F9E7E788EE25 -:10455000280A01B0BDEC028BBDE8F08330B49FEDBA -:104560000D0A0023B0F900400EE024B2002C06D45E -:1045700000EB8405D5ED010A30EE200A641E24B25A -:10458000002C00D5541E5B1C1BB28B42EDDB30BCF3 -:104590007047000000000000D4AE00200000104072 -:1045A000DCA54C40DCA54CC0000000001E00000053 -:1045B00028000000320000003C0000004A0100001A -:1045C0003C00000096000000F00000004F010000D9 -:1045D000410000009B000000F500000054010000B5 -:1045E00046000000A0000000FA0000005E0100008C -:1045F00050000000AA000000040100001E0000009E -:1046000078000000D20000002C010000190000001A -:1046100073000000CD00000027010000140000001E -:104620006E000000C8000000220100000A00000027 -:1046300064000000BE00000018010000D0B52DEDA0 -:10464000048B82B041EC180B8DED008BDDE900236B -:10465000C3F30A5140F2FF74A14213D0002904BFF2 -:10466000190350EA113011D051EC180B002200232D -:10467000DDF7D8FC3DBF81F0004141EC180B082468 -:10468000002407E0190350EA1130EDD002B051ECDC -:10469000180B60E051EC180B274A284BDDF7C2FCE1 -:1046A0001CD29FED239B51EC190B53EC182BDDF71B -:1046B000BDFA06460F4653EC182B51EC190BDDF7EB -:1046C00041FA32463B46DDF713F9F4F769FC41EC59 -:1046D000100B51EC180B53EC102B1EE00122184B61 -:1046E000DDF7A0FC2ED29FED129B51EC190B53EC81 -:1046F000182BDDF79BFA06460F4653EC182B51ECAE -:10470000190BDDF71FFA32463B46DDF7F1F8F4F7F7 -:1047100047FC84F0020453EC182BDDF747FB02B092 -:104720002246BDEC048BBDE8D04000F001B900BFCB -:10473000000000000000F03FCE3B7F669EA0E63FF9 -:104740000000F03FF8F754F9212102B001604FF06A -:10475000FF306FF00041BDEC048BD0BD80B551EC53 -:10476000100BFFF76BFF41EC100B01BD83B501216E -:1047700000A8FEF713FB401E012811D9002100A854 -:10478000FEF70CFB60B10198DDE90023002847BF6C -:104790000020054900200549DDF7D4F9CDE90001E5 -:1047A000DDE9000103B000BD0000F0BF0000F03FF4 -:1047B00080B551EC100BFFF7D9FF41EC100B01BD98 -:1047C00038B50FB482B040F2FF759DED040B8DED4E -:1047D000000BDDE90001C3F30A51A9420BD011B16E -:1047E0004FF0FF340DE0190350EA11300CBF0024E4 -:1047F0006FF0010405E0190350EA113014BF0224E0 -:1048000001249DED020B8DED000BDDE90001DDE9DA -:104810000023C3F30A51A94215D069B14FF0FF300C -:10482000012C18DA002B1CD5DDE9020181F00041D2 -:10483000CDE90201082515E0190350EA1130EFD047 -:104840006FF00100ECE7190350EA113018BFDDE901 -:10485000020147D10120022C29D1DDE9040107B072 -:1048600030BD00250598002807D5DDE9040181F059 -:104870000041CDE9040185F00605DDE90401DDE92B -:104880000223DDF7CFFB04D2DDF790FA41EC100BE9 -:104890001EE0002C08D5DDE90201DDE90423DDF787 -:1048A00085FA41EC100B15E09FED0F0B12E08442EE -:1048B0000CBF9FED0F0B9FED0C0B002B4CBF082581 -:1048C00000250599002948BF85F00605012801D17A -:1048D00085F002052A4607B0BDE8304051EC100BC8 -:1048E00000F026B807B030BD000000000000000056 -:1048F000000000000000F03F80B553EC112B51EC9C -:10490000100BFFF75DFF41EC100B01BDC75A01080A -:10491000F15A01081D5C0108D15C0108000000008B -:10492000255D01080000000025610108000000006D -:10493000D0B514462DED048B534A544BDDF75AFB8A -:1049400041EC180B1DD89FED529B53EC182B51ECEA -:10495000190BDCF7CDFF00224F4BDDF7F3F80646CD -:104960000F4653EC182B51EC190BDDF7EBF8024610 -:104970000B4630463946DDF719FA41EC180B44F086 -:10498000010451EC180B0022444BDDF74BFB05D31F -:1049900001224FF07953DDF72DFB51D853EC182B42 -:1049A000DCF7A6FF41EC190B53EC182BDCF7A0FF4A -:1049B00006460F4653EC192B39483A49DCF798FF65 -:1049C000394A3A4BDDF7BEF853EC192BDCF790FF70 -:1049D000374A384BDDF7B6F832463B46DCF788FFFE -:1049E00053EC182BDDF7AEF806460F4653EC192BA7 -:1049F00031483249DCF77CFF314A324BDDF7A2F80F -:104A000053EC192BDCF774FF2F4A304BDDF79AF883 -:104A100053EC192BDCF76CFF2D4A2E4BDDF792F887 -:104A200053EC192BDCF764FF2B4B0022DDF78AF8DF -:104A300002460B4630463946DDF7B8F941EC180B13 -:104A4000A00705D551EC180B81F0004141EC180B83 -:104A500014F007020BD00FF2880303EBC20251ECF3 -:104A6000180B53681268DDF76DF841EC180B20073E -:104A700005D551EC180B81F0004141EC180B51ECBD -:104A8000180BBDEC048BD0BD57CD9E5E1426D13FD4 -:104A9000AA4C58E87AB6FB3F0000F0BF000040BEC9 -:104AA000845D57134B57B03FB2934C19ED5EE43F12 -:104AB000BEDE02B90240F83FDE39028FC7C0743F44 -:104AC0008AAB1283000CC83F24D7E508B6D8F03F64 -:104AD0000F34580E5895FD3F0000F03F00000000D5 -:104AE000000000000000000066732D3852C1E03F56 -:104AF000182D4454FB21F93F66732D3852C1F03F05 -:104B0000182D4454FB21F93F66732D3852C10040E3 -:104B1000182D4454FB2109403FD038C6A6F104406B -:104B20001EF0040F0CBFEFF30880EFF3098000F0D4 -:104B300033B870471EF0040F0CBFEFF30880EFF39B -:104B4000098000F029B870471EF0040F0CBFEFF386 -:104B50000880EFF3098000F01FB870471EF0040FC3 -:104B60000CBFEFF30880EFF3098000F015B8704731 -:104B70001EF0040F0CBFEFF30880EFF3098000F084 -:104B80000BB870471EF0040F0CBFEFF30880EFF373 -:104B9000098000F001B87047E5F737BC704786B070 -:104BA0004EE0BDF80500011D89B2DDF80D0000F0F2 -:104BB0006FFADBF76AFCDFF87444DFF87454DFF84F -:104BC00074142846E5F76EF9002810D12046441EDB -:104BD0000028F4D100212846E5F74FF90021DFF83D -:104BE0005804E5F74AF90FF28040DBF796FA022EF7 -:104BF00001D1DEF7A2FCDDF80D00002804D0E0F7BB -:104C0000A3F80020CDF80D0049F64044DFF82C54FD -:104C100002212846E5F77EF8002803D12046441EED -:104C20000028F5D142F2107480212846E5F772F889 -:104C3000012803D12046441E0028F5D1DBF722FCD1 -:104C400001A9DFF8FC0300F047FA9DF8070010F017 -:104C50000306A6D0022EA4D002D3032E57D0EFE72E -:104C6000DFF8D8038089C04600A800210160022235 -:104C70000DF10701DDF7EDF902220DF105010DF14E -:104C80000200DDF7E6F9042100A800F001FABDF802 -:104C90000500001DE0F740F8CDF80D00BDF8050057 -:104CA000011D89B2DDF80D0000F036FADBF7EDFBEF -:104CB000DFF87843DFF88053DFF888132846E5F7FC -:104CC000F1F8002810D12046441E0028F4D100211C -:104CD000DFF85C03E5F7D1F800212846E5F7CDF8C9 -:104CE0000FF28C30DBF719FADBF7CCFB002CA7D0E6 -:104CF00001A9D54800F034FA002803D00FF278302B -:104D0000E5F705FED1490820DCF7B2F898E7CB4873 -:104D10008089C0460921CE4800F0FEF9DBF7BBFBD5 -:104D2000CC4C0221CC48E4F708FE002888D120466C -:104D3000441E0028F5D10021BD48E5F79EF800216A -:104D4000BD48E5F79AF80FF23830DBF7E6F977E778 -:104D5000F8B5C24C2078401C2070DEF724FA607849 -:104D6000401C6070DDF7F8FF6078401E6070C0B2D4 -:104D7000002801D1DEF711FA0120E5F797FE01289E -:104D80004BD10120E5F79EFE00250121B448E4F750 -:104D9000D4FD002838D0A54EA74F0FE03046461E60 -:104DA00000280BD12946A248E5F767F8294638467E -:104DB000E5F763F80FF2D020DBF7AFF93846E5F7F7 -:104DC0006DF80028EAD10221A348E4F7B6FD0028D7 -:104DD0002ED19F49C87810F003000AD0012810D1C5 -:104DE000B1F80100002804D0954800F0B9F9054653 -:104DF00007E0954800F0B4F9054694490820DCF72F -:104E000037F8DBF745FB04E096498D4800F0A8F938 -:104E10000546002D01D0E5F78BFD2078012804D14F -:104E20006068002801D0DEF7B4F92078401E2070B9 -:104E3000F1BD10B5894C2078401C2070DEF7B3F925 -:104E40006078401C6070DDF787FF6078401E6070FE -:104E5000C0B2002801D1DEF7A0F90220E5F726FE56 -:104E6000002802D00220E5F72DFE2078012804D189 -:104E70006068002801D0DEF78CF92078401E207091 -:104E800010BD10B5754C2078401C2070DEF78BF9F2 -:104E90006078401C6070DDF75FFF6078401E6070D6 -:104EA000C0B2002801D1DEF778F90420E5F7FEFD55 -:104EB00000280BD00420E5F705FE01220021032085 -:104EC000DBF7ECFA61491020DBF7D2FF20780128EC -:104ED00004D16068002801D0DEF75BF92078401E1D -:104EE000207010BD10B55D4C2078401C2070DEF79E -:104EF0005AF96078401C6070DDF72EFF6078401E24 -:104F00006070C0B2002801D1DEF747F94FF40060AD -:104F1000E5F7CCFD002807D04FF40060E5F7D2FD9F -:104F20004A492020DBF7A4FF2078012804D16068DB -:104F3000002801D0DEF72DF92078401E207010BD2A -:104F400038B5464C2078401C2070DEF72CF960788C -:104F5000401C6070DDF700FF6078401E6070C0B2DA -:104F6000002801D1DEF719F94FF48040E5F7F4F994 -:104F700000281DD0354DEBF7BFFA00280CD00020DB -:104F8000EBF7C3FADBF7E0FA806EDBF7A2F829460D -:104F90000620DBF76DFF03E029460220DBF768FF00 -:104FA0004FF48040E5F7EDF94FF48000E5F78AFD16 -:104FB0002078012804D16068002801D0DEF7E9F8E4 -:104FC0002078401E207031BD10B5244C2078401C44 -:104FD0002070DEF7E8F86078401C6070DDF7BCFEFA -:104FE0006078401E6070C0B2002801D1DEF7D5F8AD -:104FF0004FF48050E5F7B0F900280BD0134940205A -:10500000DBF736FF4FF48050E5F7BBF94FF4003083 -:10501000E5F758FD2078012804D16068002801D008 -:10502000DEF7B7F82078401E207010BD80841E0087 -:1050300088640240000800201064024000300140F3 -:1050400054660020200000103C660020EC58002030 -:10505000A87A0020404B4C00000402402438002075 -:1050600000000240A83800205478444D4100000060 -:105070005278444D410000005075744D61696C00D8 -:105080005245414459000000455854493000000041 -:1050900038B50C460E4D2968C90706D52968490858 -:1050A000490029602968C907FCD400220146284626 -:1050B000E4F7EEFE07492846E4F707FF21462846B5 -:1050C0004160C04601212846BDE83440E4F7D5BE22 -:1050D000886402400008002030B504460D480D46A3 -:1050E000017881B0491C0170DEF75DF8A06840B915 -:1050F00040212046EBF710FADEF755F8A0680028AB -:10510000F6D029462046EBF747FA01B0BDE830401B -:10511000DEF7ECB82438002038B50C460E4D29686F -:10512000C90706D529684908490029602968C907BF -:10513000FCD4002201462846E4F7AAFE0749284687 -:10514000E4F7C3FE214628464160C04601212846B7 -:10515000BDE83440E4F791BE106402402000001026 -:10516000F0B50E4F0546387881B00E46401C01243C -:105170003870DEF718F8A868E968884204D231462A -:105180002846EBF7E7F90024787808B9DEF705F848 -:10519000DEF7ACF8204601B0F0BD00BF2438002097 -:1051A000F0B52DED048B8DB005460E46174600A8D0 -:1051B0000FF284413022DFF783FDDFF838440A2004 -:1051C000A0630720E063206405206064DFF83004FA -:1051D000DFF82414CDE9000100AA4FF03330DFF8E6 -:1051E0001C14C2E90201DFF81804DFF81814C2E940 -:1051F00004014FF03330DFF81014C2E90601DFF884 -:105200000C14C2E90801DFF80814CDE90A010A20EC -:1052100020662868142190FBF1F0E06638680228C7 -:1052200001D1052023E03068102818D0B0F5807F28 -:1052300006D0B0F5806F08D0B0F5006F0AD012E04C -:105240004FF480706066002011E04FF4806060666B -:1052500002200CE04FF400606066032007E010209D -:105260006066042003E04FF400706066012002EBEA -:10527000C000D0E90023E748E749DCF739FB41ECFF -:10528000180B53EC182B0020E449DCF731FB41EC00 -:10529000100B84ED140B84ED120B53EC102BE04833 -:1052A000E049DCF725FBC4E9160120220021204655 -:1052B000DCF7D5FE9FEDDE9BA06BDCF72BFC53ECFF -:1052C000192BDCF715FB53EC182BDCF711FBC4E9A9 -:1052D0000001E06BDCF71EFC53EC192BDCF708FB3C -:1052E00053EC182BDCF704FBC4E90201206CDCF75B -:1052F00011FC53EC192BDCF7FBFA53EC182BDCF701 -:10530000F7FAC4E90401606CDCF704FC53EC192BD8 -:10531000DCF7EEFA53EC182BDCF7EAFAC4E90601E5 -:105320000020A06601206067A06704F17C00206770 -:105330000DB0BDEC048BF0BDAE4801214167816723 -:10534000704700002DE9F0432DED048B8BB005462E -:105350009FEDB58B04A81821DCF7D4FB4FF00008B3 -:105360008DED000AF1EE601ACDED011AB1EE410AA1 -:105370008DED020A9F4C1E2200A9206FF2F7E3FF79 -:105380002868022802D14FF0020901E04FF003091A -:10539000206F616F00290AD0002800F02581008865 -:1053A000216E8842C0F22081404660671CE1A16FF7 -:1053B000002939D01E22216E09B2F2F7EDFF94EDDB -:1053C000189AF8EEC90A80EE200A10EE100ADCF7EF -:1053D00057FAC4E908011E2219EE101A09B2206F0B -:1053E000F2F7F8FF94ED189AF8EEC90A80EE200A59 -:1053F00010EE100ADCF744FAC4E90A011E2219EE85 -:10540000101A09B2206FF3F703F8D4ED180AF8EE7A -:10541000E00A80EE200A10EE100ADCF731FAC4E947 -:105420000C014046A06745E01E224146F2F7A4FF6A -:1054300005461E22216E09B2206FF2F79DFF064637 -:1054400094ED180AB8EEC09A95ED000AD6ED000A60 -:1054500030EE600A80EE090A10EE100ADCF710FA4E -:10546000D4E90823DCF76EFBC4E9080195ED010AD5 -:10547000D6ED010A30EE600A80EE090A10EE100A3D -:10548000DCF7FEF9D4E90A23DCF75CFBC4E90A0186 -:1054900095ED020AD6ED020A30EE600A80EE090AA6 -:1054A00010EE100ADCF7ECF9D4E90C23DCF74AFB28 -:1054B000C4E90C011822414604A8DCF7D0FD45469A -:1054C00004AE40E01E22294609B2206FF2F754FFD5 -:1054D00007463868DCF7D4F9D4E90823DCF7A6FBE3 -:1054E00041EC100B53EC102BDCF702FADDE904233E -:1054F000DCF728FBCDE904017868DCF7C1F9D4E9D1 -:105500000A23DCF793FB41EC100B53EC102BDCF778 -:10551000EFF9D6E90223DCF715FBC6E90201B8680A -:10552000DCF7AEF9D4E90C23DCF780FB41EC100B7F -:1055300053EC102BDCF7DCF9D6E90423DCF702FB93 -:10554000C6E904016D1C206E8542BBDBDCF7E2FA84 -:1055500041EC190BDDE9040153EC192BDCF726FCB7 -:10556000CDE90401D6E9020153EC192BDCF71EFC4E -:10557000C6E90201D6E9040153EC192BDCF716FC4D -:10558000C6E9040145460FE006EBC50090ED009B1F -:1055900051EC180B53EC192BDCF744FD03D2B0EEA1 -:1055A000498AF0EE698A6D1C4D45EDDBA56EE66E0D -:1055B000D4E9120153EC182BDCF71CFD0AD8AE42DB -:1055C00001DA4FF001080020A06694ED140B84ED81 -:1055D000120B09E0AE4205DA4FF0020894ED160B0B -:1055E00084ED120B681CA06640460BB0BDEC048B2A -:1055F000BDE8F08300AC00209999C93F3333D33F15 -:105600009A9999999999E93F3333F33F333303409A -:105610003333E33F1F85EB51B89E23400000144015 -:105620007B14AE47E17A843F0000000000000000D8 -:10563000000000000000E03F9A9999999999C93FAC -:10564000333333333333E33F9A9999999999E93F47 -:10565000333333333333F33F333333333333034071 -:10566000333333333333E33FCF490022CA630A6411 -:1056700001F148024A6201F1C4028A6201F5A07296 -:10568000CA6201F5DE720A6301F50E724A6301F522 -:105690002D728A630B2802DA1E2048647047152891 -:1056A00002DA192048647047432802DA142048645B -:1056B0007047C92802DA0F20486470470A204864FE -:1056C00070470000F0B52DED068B83B00446002630 -:1056D000B54DE86B00286AD185ED000AC5ED010AD9 -:1056E00085ED021AB0EE610A85ED030AB0EE420ABA -:1056F00085ED050AB0EE620A85ED040A3046029097 -:10570000019000901E222946E86A00F0DCF81E2273 -:10571000291DA86A00F0D7F81E2205F10801686A61 -:1057200000F0D1F81E2205F10C01A86B00F0CBF8B7 -:105730001E2205F11001686B00F0C5F81E2205F16C -:105740001401286B00F0BFF8696C286C81422ADADA -:105750001E2300AA09B2E86A00F0CAF8B0EE408A37 -:105760001E2301AA696C09B2A86A00F0C1F8F0EE24 -:10577000408A1E2302AA696C09B2686A00F0B8F870 -:10578000DFED880AB4EE608AF1EE10FA0BD5F4EE84 -:10579000608AF1EE10FA06D5B4EE600AF1EE10FA66 -:1057A00001D50120E863286C401C286486E0AE6BBC -:1057B0006F6C1E22394609B2304600F0D7F8F0EE81 -:1057C000408A1E22394609B2304600F0F5F8B0EEA4 -:1057D000409A1E22394609B2304600F012F9B81E2E -:1057E00000EE900AB8EEE08A78EEC90A30EEC00A00 -:1057F000C0EE088AC5ED068A6E6B1E22394609B2D4 -:10580000304600F0B3F8B0EE409A1E22394609B295 -:10581000304600F0D1F8F0EE409A1E22394609B227 -:10582000304600F0EEF879EE690A30EEC00A80EEFC -:10583000089A85ED079A2E6B1E22394609B230462A -:1058400000F094F8F0EE409A1E22394609B2304634 -:1058500000F0B2F8B0EE40AA1E22394609B2304636 -:1058600000F0CFF879EECA0A30EEC00A80EE088A5E -:1058700085ED088A9FED4DAB18EE900ADCF700F835 -:1058800053EC1A2BDCF792FADCF710F9208019EEB2 -:10589000100ADBF7F5FF53EC1A2BDCF787FADCF77D -:1058A00005F9608018EE100ADBF7EAFF53EC1A2BBB -:1058B000DCF77CFADCF7FAF8A0800126304603B06A -:1058C000BDEC068BF0BD0388934201D30023038017 -:1058D00003885B1C03809BB2934201D300220280A9 -:1058E000028800EB820009684160012070470000D7 -:1058F0002DE9F0432DED028B81B004460D4616468E -:105900001F469FED2C8A4FF00008B4F9009000EE7E -:10591000105AF8EEC08A3A4600F028F880EE280ABD -:1059200086ED000A05E0A7F101090FFA89F908F1EF -:1059300001080FFA88F8A84511DA04EB890090ED08 -:10594000010AD6ED000A30EE600A00EE008AB9F1D5 -:10595000010FE8DBA9F101090FFA89F9E7E788EE01 -:10596000280A01B0BDEC028BBDE8F08330B49FED96 -:10597000110A0023B0F900400EE024B2002C06D436 -:1059800000EB8405D5ED010A30EE200A641E24B236 -:10599000002C00D5541E5B1C1BB28B42EDDB30BCCF -:1059A000704700006F12033BDCDF002089AD84FAF2 -:1059B0000A74313F000000002DE9F04104460D4615 -:1059C000164694ED010A0027B4F9008014E00FFA9E -:1059D00088F8B8F1000F07D404EB8800D0ED010A75 -:1059E00000F03CF8A8F101080FFA88F8B8F1000FB0 -:1059F00001D5A6F101087F1C3FB2AF42E7DBBDE84D -:105A0000F0812DE9F04104460D46164694ED010A59 -:105A10000027B4F9008014E00FFA88F8B8F1000FFD -:105A200007D404EB8800D0ED010A00F00FF8A8F1CC -:105A300001080FFA88F8B8F1000F01D5A6F10108A6 -:105A40007F1C3FB2AF42E7DBBDE8F081B4EE600AF5 -:105A5000F1EE10FA01D4B0EE600A7047F4EE400A9D -:105A6000F1EE10FA01D4B0EE600A70470FB480B5C1 -:105A70000FF23420DAF751FB8348002181700121B5 -:105A8000C17001710021417181710170DAF7CBFAA7 -:105A90000069000601D4012000E0012002BC5DF88D -:105AA00014FB80B50FF20820DAF737FBDAF7BBFA00 -:105AB0000069000616D57448002181700121C1706B -:105AC0000171002141718171417801290AD10021C0 -:105AD00041700E220A210120DEF72AFF032801D19E -:105AE000032002BD012002BD38B568488169497AAA -:105AF000C069407A4518DAF796FA0069000631D590 -:105B0000614CA078002802D10120A07032BD6078DD -:105B1000EDB2002D06D0012824D10120E070002034 -:105B200060701FE0002811D1E078012806D10E2214 -:105B30000A210120DEF7FCFE0020E0700E220A217F -:105B40000020DEF7F5FE0120607032BD94F9000000 -:105B5000002802D0022803D004E000F005F801E09C -:105B600000F034F8012032BD38B5474CE068B0F998 -:105B700058502079012809D1512D07DA00202071D1 -:105B8000012000F07EF8002000F06EF8B4F9082043 -:105B9000954217DBA079401CA07140B2022813DBAC -:105BA000022020700020A07129460FF20C10DAF7B5 -:105BB000B4FA78202081012000F063F8012000F081 -:105BC00053F801E00020A071012032BD38B52E4C01 -:105BD000E068B0F95850502D16DA6079401C6071B9 -:105BE00040B2022812DB00202070012000F049F8AA -:105BF000002000F039F800206071502229460FF291 -:105C0000C400DAF78AFA01E000206071012032BD99 -:105C100010B50FF2BC00DAF780FA1B4CDEF786FEF7 -:105C20002061DAF791FCE0600020207020691849BB -:105C3000C0F8401200F510701649416016498160A5 -:105C40000FF20D01C16015490161012010BD000076 -:105C5000014600200C4A126992F83122002A02D033 -:105C6000002900D109E070470D49012802D1012027 -:105C7000087070470020087070470A4890F90000CB -:105C8000704708490870704758AF00200000002096 -:105C90006D5A0308A35A0308E95A0308F14B010897 -:105CA00058FE002057FE00205374617274000000FB -:105CB00053746F7000000000436C6F73652025649F -:105CC000202564004F70656E202564202564000047 -:105CD000496E6974000000008D4800214160016137 -:105CE00041618161C16101628160C1600170416295 -:105CF0008162704730B52DED028B044694ED020AA7 -:105D0000834DA868002803D185ED060A0120A8600C -:105D1000D5ED060A30EE608A85ED060A2068DBF7CD -:105D2000AFFD21F0004100227A4BDCF77BF921D254 -:105D30006068DBF7A5FD21F000410022754BDCF720 -:105D400071F917D294ED020ADFED6C0AB4EE600A25 -:105D5000F1EE10FA0EDB18EE100ADBF791FD21F0E0 -:105D600000416D4A6D4BDCF75DF903D26868401C59 -:105D7000686001E0002068606868062808DB206829 -:105D800028616068686100206860A860012000E008 -:105D90000020BDEC028B30BD70B52DED028B0646A8 -:105DA00000245B4D96ED000AD5ED040A30EE608AC2 -:105DB00096ED010AD5ED050A30EE600A10EE100AE4 -:105DC000DBF75EFD21F0004101224FF08043DCF75C -:105DD00011F903D8FFF780FF03208BE0E868002863 -:105DE00030D19FED470AB4EE408AF1EE10FA05DBA0 -:105DF000286A401C28622046E8610FE09FED410AB6 -:105E0000B4EE408AF1EE10FA05D5E869401CE8616D -:105E10002046286202E020462862E861E8690A28F4 -:105E200006DB104628702046E8611046E86060E016 -:105E3000286A0A285DDB0220287020462862104666 -:105E4000E86056E001282BD1686A401C6862297816 -:105E500001290AD19FED2C0AB4EE408AF1EE10FA26 -:105E60000DDBAA6A521CAA6209E09FED280AB4EE73 -:105E7000408AF1EE10FA02D5AA6A521CAA622A28B8 -:105E800005DB2046A86268620220E86031E0A86A6B -:105E900003282EDB0C460020A8626862E86028E038 -:105EA0003068DBF7EDFC21F000412246194BDCF7AE -:105EB000B9F816D27068DBF7E3FC21F00041224606 -:105EC000144BDCF7AFF80CD296ED020ADFED0B0AAB -:105ED000B4EE600AF1EE10FA03DB6868401C6860FB -:105EE00001E0104668606868062802DB10466860BA -:105EF000E8602046BDEC028B70BD0000010010413F -:105F00006766263F666626BF999919BF9A99193F19 -:105F100020FC00200000E03F9A9999999999C93F87 -:105F2000854800210160416081607047F0B52DED2A -:105F30000E8B81B0B0EE408AF0EE608AB0EE419AEE -:105F40000027B0EE680A10EE100ADBF799FC41EC6E -:105F50001D0BB0EE480A10EE100ADBF791FC41EC85 -:105F60001E0B754E21F000413A46744BDCF75AF88F -:105F700018D251EC1D0B21F00041DCF753F811D27F -:105F8000B0EE490A10EE100ADBF77AFC21F000416E -:105F90003A466A4BDCF746F804D21046306070602F -:105FA000B060C5E09FED66AB9FED67BB9FED68CB32 -:105FB0003068DBF765FC04460D4653EC1E2B51ECB4 -:105FC0001C0BDBF795FC53EC1B2BDBF791FC53EC24 -:105FD0001A2BDBF7EBFE22462B46DBF7B3FDEAF785 -:105FE00041FA09EE900AC6ED009A7068DBF748FCAA -:105FF00004460D4653EC1D2B51EC1C0BDBF778FCD3 -:1060000053EC1B2BDBF774FC53EC1A2BDBF7CEFEA7 -:1060100022462B46DBF796FDEAF724FA0DEE100A2E -:1060200086ED01DAB068DBF72BFC04460D46B0EED6 -:10603000490A10EE100ADBF723FC53EC1C2BDBF7AC -:1060400057FC53EC1B2BDBF753FC53EC1A2BDBF701 -:10605000ADFE22462B46DBF775FDEAF703FA09EEA3 -:10606000100A86ED029A19EE900ADBF709FC21F07E -:10607000004141EC1B0B1DEE100ADBF701FC41EC6B -:10608000180B21F0004141EC1C0B19EE100ADBF754 -:10609000F7FB41EC1A0B53EC1B2B51EC1C0BDBF701 -:1060A00051FD53EC1A2B23F00043DBF74BFDEAF7CD -:1060B000D9F900EE100ADFED280AB4EE600AF1EE1D -:1060C00010FA2EDB51EC1A0B21F000410122234B78 -:1060D000DBF790FF25D8BBEE090AF4EE409AF1EE0B -:1060E00010FA0BD551EC180B21F0004153EC1A2B90 -:1060F00023F00043DBF796FF00D201279FED180A3B -:10610000F4EE409AF1EE10FA0BDB51EC180B21F093 -:10611000004153EC1A2B23F00043DBF783FF00D23E -:106120000227002F03D0002030607060B060384636 -:1061300001B0BDEC0E8BF0BDCCFD00200000E03FB7 -:106140000000000000408F400000000000004E40B2 -:10615000E6C1631ADCA54C400100484200004440FF -:106160000100C84110B582B000208DF800008A4CB3 -:1061700004F1100314220D2104F50670CDF720FC64 -:1061800004F58A7314220D2104F50C70CDF718FC68 -:10619000EAF7B0F9002848D0D9F745FFA060E5F745 -:1061A00029FCE6F790FAA0680178002903D021784D -:1061B00041F0010121700A21D9F798FFA068D9F7B1 -:1061C0006FFFA068C178002903D0217841F0020157 -:1061D00021704179002903D0217841F00401217018 -:1061E0008179002903D0217841F0080121702178BC -:1061F0000F2902D15521817500E08175002201210E -:106200000846DAF74BF9E6F74FFF3221A068DAF7D4 -:10621000C3F8A068DAF785F8DAF734F9DAF738F96D -:10622000DAF792F90021C16616BD002016BD80B5CF -:10623000FFF798FF5849486001BD0720CDF7CCFB18 -:10624000FBE784B0E4F7EAFB002801D0E4F781FB28 -:10625000E4F756FB002801D0E4F770FB3E20EAF794 -:1062600069FF0646DDF775F94B4C04F51275B0076A -:106270000FD56068C06EDAF720F9DDF7C7F804F1D2 -:106280000C012846DDF7BBFA04F10C012846DDF7C6 -:1062900007FBF0060AD50020DAF702F91020E6F72E -:1062A000C9FD04F10C012846DDF7FAFAB0060CD559 -:1062B00004F10C012846DDF7B2FA0420E6F7BAFD36 -:1062C00004F10C012846DDF7EBFA700703D560688E -:1062D000806EE6F7DDF804F10C012846DDF702FDDB -:1062E00030071FD4BAE7BDF80100001DDEF714FD2A -:1062F000CDF8090002220DF10301DBF7AAFE02220C -:106300000DF10101DDF80900801CDBF7A2FE04F1AC -:106310000C02294600A8DDF7B8FD00A904F50C70B1 -:10632000E6F754F900A904F5067000F037F80028E4 -:1063300094D19DF8030010F00300D4D00128F1D1CE -:1063400004F10C02294600A8DDF70EFFBDF801009C -:106350000028E7D0DDF809009DF80310490718D59B -:106360000421ADF803100121ADF8011002220DF156 -:106370000301DBF76EFE02220DF10101DDF80900D9 -:10638000801CDBF766FE00A904F50C70E6F71EF929 -:10639000C8E7DEF7D9FCC5E72464002030B581B03A -:1063A00004460D46DCF7FFFE0A48A16829B940788B -:1063B00008B9DCF7F2FE012009E00178491C017000 -:1063C00029462046EAF7E8F8DCF790FF002001B004 -:1063D00030BD00BF243800200FB400B595B00020B8 -:1063E000019000900D220146DEF7A2FA022801D1A9 -:1063F00002204AE0754A01201060BDF85A00019061 -:106400009DF859000090012803D14FF4807000904E -:1064100015E0022803D14FF4007000900FE003282C -:1064200003D14FF48060009009E0042803D14FF4B9 -:106430000060009003E0052801D11020009000A921 -:1064400001A8FEF7ADFEB4208DF8350046208DF88A -:10645000360001208DF8370000208DF80800032059 -:1064600003900DF111000DA92022DEF719FC0A207E -:106470008DF810000020ADF8320002A8DEF70AFB0C -:10648000002801D1022000E0012015B05DF814FBC6 -:1064900000B593B0B4208DF8010046208DF80200BD -:1064A00001208DF803008DF82000032009900DF1E4 -:1064B000290000A92022DEF7F3FB0A208DF828002E -:1064C0000020ADF84A0008A8DEF7E4FA002801D160 -:1064D000032002E0FEF730FF012013B000BD30B50D -:1064E00095B000A8DEF78AFA0BA8EEF7F9FE374C54 -:1064F000BDF83A002071204600A991EC030AFEF78E -:1065000021FF0546607A85420ED0022D05D101207B -:1065100000F03CF80120207206E0012D04D101209A -:1065200000F034F8022020726572012015B030BDF1 -:1065300080B5DEF7FBF92549C86000220A722449BC -:10654000C0F8181200F506702249416022498160A6 -:106550000FF20D01C1600FF23D010161012002BD8A -:106560001A48C06890F80902002801D1002070473D -:1065700008E080B5154800210172084600F006F8D1 -:10658000012002BD154890F90000704713490870BA -:106590007047000018B430220B7812FB030301246B -:1065A0001C700B7812FB03035C700B7812FB030367 -:1065B0000D249C700B7812FB0300044A127AC270FF -:1065C0000878401C087011BCD3E7000050FD002083 -:1065D000D963030891640308DF64030869FE00209F -:1065E0000FB410B5A0B09DF889005849087001207B -:1065F0008DF88B00AA208DF889003C208DF88A0048 -:1066000000208DF80000032001900DF1090022A95F -:106610002022DEF745FB0A208DF8080000A8DEF7EF -:1066200039FA002805D10FF26C10D9F776FD022057 -:1066300014E00BA8EAF7E9FE454C5422002120465D -:10664000DBF70DFD00216165A16554220BA9DBF785 -:1066500000FD0FF25410D9F760FD012020B010BCEE -:106660005DF814FB80B50A210320E6F7C4F903287E -:1066700001D1032002BD0FF23C10D9F74EFD0120DD -:1066800002BD80B5DEF752F9304948603149C0F8A3 -:10669000001100F58070304941600FF26D0181609A -:1066A0000FF20D01C1600FF2B5010161012002BDC1 -:1066B00010B594B0254C606890F8F10000281BD00C -:1066C0002078002818D0012012901190204984B021 -:1066D00068465422DEF7F4FA0FBCE7F729FB0146BF -:1066E000C9B22078814207DB0FF2D400D9F715FD3B -:1066F00000F005F8012000E0002014B010BD1348A0 -:10670000002101700120704700B595B000A8EAF79C -:106710007CFE0F48416D491C4165012902D1009959 -:1067200081650FE033290DD300214165816D009A09 -:10673000914207D1542200A9DBF78BFC0FF29400A1 -:10674000D9F7EBFC012015B000BD000018FE0020B9 -:1067500074EB0020E16503086566030810B50C467C -:106760003021227811FB020201231370227811FBE1 -:1067700002025370227811FB0202062393702278E2 -:1067800011FB02000121C170FFF7B9FF2078401C06 -:10679000207010BD50443A205065646F4F70656E94 -:1067A0004661696C2053530050443A2053432053B0 -:1067B0005441000050443A2053432053544F0000AA -:1067C00050443A2044696666537465704F7665722A -:1067D0002025640050443A205343205245534554E9 -:1067E000000000003C0A560A700A8B0AA60AC10A79 -:1067F000DD0AF80A150B310B4E0B6B0B880BA50B42 -:10680000C30BE10B000C1E0C3D0C5D0C7C0C9C0CB6 -:10681000BD0CDD0CFE0C1F0D410D630D850DA80D8B -:10682000CB0DEE0D120E360E5A0E7F0EA40ECA0EB2 -:10683000EF0E160F3C0F630F8B0FB30FDB0F031020 -:106840002C1056108010AA10D41000112B115711C3 -:106850008311B011DE110B12391268129712C71290 -:10686000F712271359138A13BC13EF13221455146C -:106870008914BE14F31429155F159515CD1504164A -:106880003D167616AF16E91624175F179B17D81713 -:10689000151852189118CF180F194F199019D119AE -:1068A000131A561A9A1ADE1A221B681BAE1BF51B06 -:1068B0003D1C851CCE1C181D621DAD1DF91D461EFC -:1068C000941EE21E311F811FD11F23207520C82076 -:1068D0001C217121C7211D227422CD222623802351 -:1068E000DA2336249324F1244F25AF250F26712671 -:1068F000D32636279B2700286728CE283629A029AB -:106900000B2A762AE32A512BC02B302CA12C132DD5 -:10691000862DFB2D712EE82E602FD92F5330CF30CE -:106920004C31CA314A32CA324C33D0335434DA345F -:106930006235EA35743600378D371B38AA383C3952 -:10694000CE39623AF83A8F3B273CC13C5D3DFA3D77 -:10695000983E383FDA3F7E402341CA4172421C4391 -:10696000C84376442545D64589463D47F447AC485B -:106970006649224ADF4A9F4B614C244DEA4DB14E95 -:106980007B4F46501451E351B55289535E543655EE -:106990001156ED56CB57AC588F59745A5C5B465C18 -:1069A000325D215E125F0560FB60F361EE62EB63B6 -:1069B000EB64ED65F266FA670469116A206B336C6B -:1069C000486D5F6E7A6F9770B871DB7201742A75CB -:1069D00056768577B778EC79247B5F7C9D7DDF7E6A -:1069E000248000003D0A580A720A8D0AA80AC30AC8 -:1069F000DF0AFB0A170B330B500B6D0B8A0BA70B2F -:106A0000C50BE30B020C210C400C5F0C7F0C9F0CA0 -:106A1000BF0CE00C010D220D430D650D880DAA0D74 -:106A2000CD0DF10D140E380E5D0E820EA70ECC0E9C -:106A3000F20E180F3F0F660F8D0FB50FDD0F06100A -:106A40002F1059108210AD10D71002112E115A11AB -:106A50008611B311E1110E123D126B129A12CA1275 -:106A6000FA122B135C138D13BF13F2132514591450 -:106A70008D14C114F6142C1562159915D01508162D -:106A800040167916B316ED16281763179F17DB17F4 -:106A9000181856189418D318131953199419D5198E -:106AA000181A5A1A9E1AE21A271B6C1BB31BF91BE1 -:106AB000411C891CD21C1C1D671DB21DFE1D4B1ED6 -:106AC000981EE71E361F861FD61F28207A20CD204D -:106AD00021217621CC2122227A22D2222B23852326 -:106AE000E0233C249924F6245525B5251526772640 -:106AF000D9263C27A12706286D28D4283D29A62978 -:106B0000112A7D2AE92A572BC62B362CA82C1A2DA0 -:106B10008D2D022E782EEF2E672FE02F5B30D63092 -:106B20005331D2315132D2325433D8335C34E2341F -:106B30006A35F2357D36083795372338B33844390E -:106B4000D7396B3A003B973B303CCA3C663D033E2D -:106B5000A23E423FE43F87402D41D3417C42264341 -:106B6000D24380442F45E04593464847FE47B64808 -:106B700071492D4AEB4AAA4B6C4C304DF54DBD4E38 -:106B8000864F52502051EF51C15295536B5443558B -:106B90001D56FA56D857B9589C59825A695B535CAE -:106BA000405D2F5E205F136009610162FC62FA6341 -:106BB000FA64FC65016709681369206A306B426CEE -:106BC000586D6F6E8A6FA870C871EB7212743B7546 -:106BD00067769677C878FD79367B717CB07DF17EDB -:106BE00036807F817548002101608160C16041610C -:106BF0000161C161016281614160704730B52DED75 -:106C0000028B044694ED020A6C4D6868002803D19B -:106C100085ED060A01206860D5ED060A30EE608A2F -:106C200085ED060A2068DAF72BFE21F000410022EC -:106C3000634BDBF7F7F921D26068DAF721FE21F028 -:106C4000004100225E4BDBF7EDF917D294ED020A0A -:106C5000DFED570AB4EE600AF1EE10FA0EDB18EE23 -:106C6000100ADAF70DFE21F00041564A564BDBF7C9 -:106C7000D9F903D22868401C286001E00020286070 -:106C80002868052808DB2068E86160682862002021 -:106C900068602860012000E00020BDEC028B30BD60 -:106CA00070B52DED028B06460024444D96ED000A8A -:106CB000D5ED070A30EE608A96ED010AD5ED080A97 -:106CC00070EE608A686900283ED118EE900ADAF703 -:106CD000D7FD21F0004101224FF08043DBF78AF914 -:106CE00003D8FFF77FFF04205EE09FED320AB4EE89 -:106CF000408AF1EE10FA05DBE868401CE8602046A7 -:106D0000A8600FE09FED2C0AB4EE408AF1EE10FA75 -:106D100005D5A868401CA8602046E86002E020462F -:106D2000E860A860A868112805DB14460020A86068 -:106D30001046686137E0E868112834DB022400203F -:106D4000E860104668612EE001282CD118EE100A88 -:106D5000DAF796FD21F000414FF033321B4BDBF7A1 -:106D600061F917D218EE900ADAF78AFD21F0004196 -:106D70002246174BDBF756F90CD296ED020ADFEDEF -:106D80000C0AB4EE600AF1EE10FA03DB2869401C2D -:106D9000286101E0204628612869032803DB20469A -:106DA0006861286103242046BDEC028B70BD0000A1 -:106DB000010010416766263F666626BF4CFC002036 -:106DC0000000E03F9A9999999999C93F3333E33F7D -:106DD0000000F03F0FB480B51A2200210846DDF70D -:106DE000A7FD022801D102200EE01A220121002075 -:106DF000DDF79EFD022801D1022005E01A20E5F70B -:106E00002DFCFEF731FC012002BC5DF814FB80B5BF -:106E10001A2200210120DDF78BFD022801D102207A -:106E200002BD1A2201210846DDF782FD022801D1A8 -:106E3000022002BD012002BDF0B52DED028B8BB00A -:106E40004A48846BA069E1684518002600A8DDF770 -:106E5000D5FD9FED478B0398DAF712FD53EC182B05 -:106E6000DAF7A4FFDAF722FE28800498DAF708FDA3 -:106E700053EC182BDAF79AFFDAF718FE68800598BA -:106E8000DAF7FEFC53EC182BDAF790FFDAF70EFE78 -:106E9000A8803C4F3878002809D1381D03A9D1ECCF -:106EA000031A00A991EC030AFEF70CFC0646012E1A -:106EB00002D10120387006E03878002803D1002084 -:106EC000B880F8803881B888E880F88828813889C7 -:106ED00068810120A0770BB0BDEC028BF0BD80B5BE -:106EE000DDF724FD244908602449C0F8201400F28D -:106EF000204023494160244981600FF21101C160A3 -:106F00000FF235010161012002BD00001A4800683E -:106F100090F81104002801D10020704705E080B5E9 -:106F2000002000F006F8012002BD184890F900008A -:106F3000704716490870704718B430220B7812FB5E -:106F4000030301241C700B7812FB03035C700B78A5 -:106F500012FB03031A249C700B7812FB030000221F -:106F6000C2700878401C087011BCD8E700000020EF -:106F700089AD84FA0A74313F3CFE0020D56D0308C8 -:106F80000F6E0308A8FD0020396E030867FE00207D -:106F90000FB480B50FF21010D9F7BFF811220921F4 -:106FA0000020DDF7C5FC022805D10FF21010D9F73B -:106FB000B4F8022000E0012002BC5DF814FB80B5AB -:106FC0000FF20410D9F7A9F8112209210120DDF7E9 -:106FD000AFFC032805D10FF20410D9F79EF8032067 -:106FE00002BD012002BD01207047000010B50FF264 -:106FF000F800D9F792F8264CDDF798FC2060D9F715 -:10700000A3FA606020682349C0F8B81200F52E701A -:1070100021494160214981600FF20D01C1600FF2E9 -:1070200039010161012010BD1948006890F8A902DA -:10703000002801D10020704705E080B5002000F055 -:1070400006F8012002BD174890F900007047154965 -:10705000087070470000000018B430220B7812FB53 -:10706000030301241C700B7812FB03035C700B7884 -:1070700012FB030311249C700B7812FB0300084AD7 -:107080001278C2700878401C087011BCD5E7000067 -:10709000F8FD0020916F0308BF6F0308E76F030836 -:1070A0005AFE002059FE0020537461727420436818 -:1070B00065636B4C696768744C75780053746172D2 -:1070C00074204661696C0000436865636B4C6967B6 -:1070D00068744C75782053746F70000053746F702F -:1070E000204661696C000000436865636B4C69670A -:1070F00068744C757820496E697400008168C268B4 -:1071000091420BD107E002681168891853685B1837 -:10711000C36008320260C2689142F4D04A1C8260A7 -:10712000087870472DE9F04D88B000F1080103910F -:1071300001684A08039B03EBC202049200220592F5 -:10714000069200EB810101F10806406800F00101A0 -:107150000291400806EBC00001900024154601E0B2 -:10716000AC4205D10198864202D108B0BDE8F08D4D -:1071700000F077F8074617F0030803D100F071F824 -:1071800000F10308381100900F2819D100F069F8B8 -:107190000F30009014E000F064F88246AC420DD14C -:1071A0000198864208BFECF765FB3468029800B18D -:1071B0004C44706805190836AC42F1D004F801ABB4 -:1071C000B8F10108E7D100980028C9D000F049F8CB -:1071D0008046B81000F00300032804BF03A8FFF79F -:1071E0008DFF37462146AB4608EB002006E0801AAB -:1071F000083F79683A6801EB020B59463A688A1AE7 -:107200008242F4D3404200EB010A4FF0000805E04F -:107210009DF81C0004F8010B08F101080098801C7F -:1072200080459DD0DA4507D157F804AB57F8040BD9 -:1072300000EB0A0BDA45F7D01AF8010B8DF81C00A9 -:10724000AC42E5D10198864208BFECF713FB3468E5 -:10725000029800B14C44706805190836AC42F1D070 -:10726000D6E703A84AE700000FB480B50FF2181064 -:10727000D8F753FF0F2201210020DDF759FB022828 -:1072800005D10FF21410D8F748FF022000E00120CA -:1072900002BC5DF814FB80B50FF20810D8F73DFF73 -:1072A0000F2201210846DDF743FB032805D10FF229 -:1072B0000410D8F732FF032002BD012002BD80B5C3 -:1072C000012000F035F8002000F02BF8012002BD6D -:1072D00080B50FF2EC00D8F720FFDDF727FB24493B -:1072E00008602449C0F8681200F51A70224941600C -:1072F000224981600FF20D01C1600FF23D01016171 -:10730000012002BD1A48006890F85902002801D1F6 -:107310000020704708E080B5002000F009F8012047 -:1073200002BD174908707047164890F90000704771 -:10733000144908707047000018B430220B7812FB13 -:10734000030301241C700B7812FB03035C700B78A1 -:1073500012FB03030F249C700B7812FB0300084AF6 -:107360001278C2700878401C087011BCD3E7000086 -:107370002CFE00206972030897720308BF7203088D -:107380005FFE00205EFE0020537461727420477916 -:10739000726F2054656D7000537461727420466181 -:1073A000696C00004779726F2054656D70205374CA -:1073B0006F70000053746F70204661696C000000AC -:1073C0004779726F2054656D7020496E69740000B2 -:1073D00052480021017041608160704770B50446D9 -:1073E00000254E4E307800282CD12068DAF748FA74 -:1073F00021F000412A464A4BDAF714FE19D26068A0 -:10740000DAF73EFA21F000412A46454BDAF70AFE48 -:107410000FD2A068DAF734FA21F000410122414B83 -:10742000DAF7E8FD05D87068401C70602846B06047 -:1074300004E0B068401CB0602846706070680528A1 -:1074400062DB28E0032837D12068DAF719FA21F047 -:1074500000412A46324BDAF7E5FD17D26068DAF7C9 -:107460000FFA21F000412A462D4BDAF7DBFD0DD251 -:10747000A068DAF705FA21F000410122294BDAF77A -:10748000B9FD03D87068401C706001E02846706048 -:107490007068052840DB94ED020AB5EE400AF1EE73 -:1074A00010FA03DD01252846307002E00225284647 -:1074B0003070002070602FE0012801D002282BD10D -:1074C0002068DAF7DDF921F000410122144BDAF7E8 -:1074D00091FD13D96068DAF7D3F921F00041012258 -:1074E0000F4BDAF787FD09D9A068DAF7C9F921F05F -:1074F00000412A460B4BDAF795FD03D2B068401CD9 -:10750000B06001E01046B060B068052804DB0325D8 -:10751000284630700020B060284670BDD8FD00209D -:107520000000F83F000021404B48002101704160FD -:107530008160704770B506460024474D28780028C2 -:107540002BD13068DAF79CF921F000412246434BF9 -:10755000DAF768FD18D27068DAF792F921F0004185 -:1075600022463E4BDAF75EFD0ED296ED020ADFEDC3 -:10757000390AB4EE600AF1EE10FA05DB6868401CC7 -:1075800068601046A86004E0A868401CA860104627 -:1075900068606868052853DB27E002282BD1306833 -:1075A000DAF76EF921F0004122462C4BDAF73AFD6A -:1075B00016D27068DAF764F921F000412246274BB1 -:1075C000DAF730FD0CD296ED020ADFED220AB4EEB6 -:1075D000600AF1EE10FA03DB6868401C686001E0A5 -:1075E000104668606868052832DB01242046287050 -:1075F000104668602CE001282AD13068DAF740F99B -:1076000021F000410122154BDAF7F4FC12D9706821 -:10761000DAF736F921F000410122104BDAF7EAFCE3 -:1076200008D996ED020AF2EE020AB4EE600AF1EE13 -:1076300010FA03D5A868401CA86001E02046A860A5 -:10764000A868052804DB0224204628700020A860D2 -:10765000204670BD0100104160FD00200000E03FA9 -:107660000FB480B5142200210846DDF761F9022825 -:1076700001D1022005E0FFF7B5FA41480021017071 -:10768000012002BC5DF814FB80B51422002101200A -:10769000DDF74EF9032801D1032002BD384800214F -:1076A0000170012002BD10B5354C606894F90010DE -:1076B000002903D1FFF7A2FA20700DE0FFF7F0FADE -:1076C00040B2002808D0042804D06070012000F0E7 -:1076D00037F801E000202070012010BD10B5284CC3 -:1076E000DDF724F9A060D8F72FFF606000206070FC -:1076F000A0682449C0F8301300F54C70224941605D -:10770000224981600FF20D01C1600FF23D0101615C -:10771000012010BD1A48806890F82103002801D18B -:107720000020704708E080B51548002141700846E8 -:1077300000F006F8012002BD154890F900007047DE -:10774000134908707047000018B430220B7812FB00 -:10775000030301241C700B7812FB03035C700B788D -:1077600012FB030314249C700B7812FB0300044AE1 -:107770005278C2700878401C087011BCD3E7000032 -:1077800078FD00206176030889760308A776030850 -:1077900055FE00200FB480B5122200210846DDF707 -:1077A000C7F8022801D1022005E0FEF795FA41480A -:1077B00000210170012002BC5DF814FB80B512228B -:1077C00000210120DDF7B4F8032801D1032002BD18 -:1077D000384800210170012002BD10B5354C6068A9 -:1077E00094F90010002903D1FEF784FA20700DE00F -:1077F000FEF7D2FA40B2002808D0032804D0607007 -:10780000012000F037F801E000202070012010BDB9 -:1078100010B5284CDDF78AF8A060D8F795FE6060B7 -:1078200000206070A0682449C0F8E01200F53870AC -:1078300022494160224981600FF20D01C1600FF2BF -:107840003D010161012010BD1A48806890F8D10205 -:10785000002801D10020704708E080B515480021BC -:107860004170084600F006F8012002BD154890F965 -:1078700000007047134908707047000018B43022A8 -:107880000B7812FB030301241C700B7812FB03031B -:107890005C700B7812FB030312249C700B7812FBB4 -:1078A0000300044A5278C2700878401C087011BC6A -:1078B000D3E7000084FD002095770308BD77030817 -:1078C000DB77030856FE00200FB480B5102201219B -:1078D0000020DDF72DF8022801D1022002E0FEF79A -:1078E0001FFB012002BC5DF814FB80B510220121B2 -:1078F0000846DDF71DF8032801D1032002BD012051 -:1079000002BD30B58BB000A8DDF778F803A890EC85 -:10791000030AFEF70BFB0446324D2878A0420FD035 -:10792000012C05D1012000F03DF80120687006E02F -:10793000022C04D1012000F035F8022068702C7070 -:1079400001200BB030BD80B5DCF7F0FF2549486061 -:1079500000224A702449C0F8901200F5247023498F -:107960004160234981600FF21101C1600FF23D01B6 -:107970000161012002BD00001A48406890F88102B0 -:10798000002801D10020704708E080B5154800218B -:107990004170084600F006F8012002BD154890F934 -:1079A00000007047134908707047000018B4302277 -:1079B0000B7812FB030301241C700B7812FB0303EA -:1079C0005C700B7812FB030310249C700B7812FB85 -:1079D0000300044A5278C2700878401C087011BC39 -:1079E000D3E70000C87B0020C9780308EB780308C0 -:1079F00003790308FA7B00200901002806D500F06E -:107A00000F003D4A801800F8041C70473B4A81541F -:107A1000704710B5B0F1807F01D3012010BD384C04 -:107A20000002000A401E60600F214FF0FF30FFF798 -:107A3000E3FF0020A06007202060002010BD10B5EB -:107A4000304C2078401C207000F06AF82078012823 -:107A500004D16068002801D0DBF79BFB2078401E32 -:107A6000207010BD10B5DBF79EFB264C6078401CE3 -:107A7000607000F091F8244800684FF47A71B0FB10 -:107A8000F1F0FFF7C6FF002800D0FEE71F482049AD -:107A900001600E214FF0FF30FFF7AEFF6078401E0F -:107AA0006070C0B2002803D1BDE81040DBF775BBA1 -:107AB00010BD0000174C4FF400512046E1F746FF7F -:107AC00030BF4FF400512046E1F73EFFF3E70000DE -:107AD0001EF0040F0CBFEFF30880EFF3098000F0F5 -:107AE0001DB80D480168002905D5016841F0004125 -:107AF000016000F0B1B8FEE718ED00E000E400E03E -:107B000010E000E024380020A438002008ED00E058 -:107B100000000008001002402CED00E0E2F775BC08 -:107B200010B50948016A491C0162426A891A5CBFA2 -:107B3000012181710548046824B160688047246888 -:107B4000002CFAD110BD00BF24380020F07B0020AB -:107B500080B54FF44070E2F7BDFF3348016841F44F -:107B6000700101603148016841F0010101600021AC -:107B7000816001682E4A114001602E494160016810 -:107B800021F4802101600021C16000F02CF82A4816 -:107B90004FF00061016001BD2848416801F00C010F -:107BA000274A082913D10168036803F03F03B2FB99 -:107BB000F3F20168C1F3881151430268C2F3014234 -:107BC000521C5200B1FBF2F11E4A116101E01D4945 -:107BD0000A611C494068C0F30310405C0A6922FA3C -:107BE00000F0086170471548C16B41F08051C163D6 -:107BF000416841604168416041684160082101601D -:107C000011494FF4C0620A60416821F400014160EB -:107C10000E480F4901600F48016821F4404141F4CA -:107C2000804101607047000088ED00E000380240AC -:107C3000FFFFF6FE1030002408ED00E0043802409B -:107C40000024F40094380020003C024084380240B4 -:107C50004031004000700040019810F0040006BF61 -:107C6000EFF308800830EFF30980816901F1020128 -:107C7000816170470FB480B5072200210846DCF708 -:107C800057FE022801D1022004E09DF80800FCF70D -:107C900083F9012002BC5DF814FB80B507220021A6 -:107CA0000120DCF745FE032801D1032002BD01209D -:107CB00002BD10B582B000208DF80000314C00A943 -:107CC0006068FCF77FF9002806D0012000F03BF83F -:107CD0009DF8000020706070012016BD10B5294C81 -:107CE000DCF724FEA060D8F72FFC60600020207035 -:107CF000A0682549C0F8281100F594702349416017 -:107D0000234981600FF20D01C1600FF24101016151 -:107D1000012010BD014600201A4A926892F81921EC -:107D2000002A02D0002900D109E0704780B515482B -:107D300000210170084600F006F8012002BD154838 -:107D400090F90000704713490870704718B430224A -:107D50000B7812FB030301241C700B7812FB030346 -:107D60005C700B7812FB030307249C700B7812FBEA -:107D70000300044A1278C2700878401C087011BCD5 -:107D8000D4E70000907B0020757C03089B7C0308EF -:107D9000B37C0308F97B00200FB480B515220021C5 -:107DA0000846DCF7C5FD022801D1022002E0FFF7FA -:107DB000BBFB012002BC5DF814FB80B5152200213D -:107DC0000120DCF7B5FD032801D1032002BD01200D -:107DD00002BD10B531484068FFF7ACFB044664B201 -:107DE000002C05D0012000F037F8204600F037F8CD -:107DF000012010BD10B5294CDCF798FDA060D8F724 -:107E0000A3FB606000202070A0682549C0F85813CB -:107E100000F5567023494160234981600FF20D013E -:107E2000C1600FF241010161012010BD1B48806853 -:107E300090F84903002801D10020704708E080B580 -:107E4000164800210170084600F006F8012002BD26 -:107E5000164890F9000070471449087070470F49A0 -:107E60000870704718B430220B7812FB030301240A -:107E70001C700B7812FB03035C700B7812FB03037E -:107E800015249C700B7812FB0300044A1278C27010 -:107E90000878401C087011BCD1E700009CFD002050 -:107EA000997D0308BB7D0308D37D03085CFE002099 -:107EB0000FB480B5172200210846DCF739FD0228EF -:107EC00001D1022002E0FFF783FA012002BC5DF835 -:107ED00014FB80B5172200210120DCF729FD0328BF -:107EE00001D1032002BD012002BD10B53148406818 -:107EF000FFF774FA044664B2002C05D0012000F0AC -:107F000037F8204600F037F8012010BD10B5294C95 -:107F1000DCF70CFDA060D8F717FB60600020207034 -:107F2000A0682549C0F8A81300F56A70234941608C -:107F3000234981600FF20D01C1600FF2410101611F -:107F4000012010BD1B48806890F89903002801D1DA -:107F50000020704708E080B51648002101700846EF -:107F600000F006F8012002BD164890F900007047A5 -:107F70001449087070470F490870704718B43022D0 -:107F80000B7812FB030301241C700B7812FB030314 -:107F90005C700B7812FB030317249C700B7812FBA8 -:107FA0000300044A1278C2700878401C087011BCA3 -:107FB000D1E70000C0FD0020B17E0308D37E030896 -:107FC000EB7E030868FE00204BDF3CE02BE119E26A -:107FD00005E3F0E3D9E4C0E5A5E687E768E846E90C -:107FE00021EAF9EACFEBA1EC70ED3BEE03EFC6EF2F -:107FF00086F041F1F8F1AAF257F300F4A3F441F549 -:10800000DAF56DF6FBF684F706F884F8FBF86EF9FE -:10801000DAF942FAA4FA00FB58FBABFBF9FB42FC8D -:1080200087FCC8FC04FD3DFD72FDA3FDD1FDFCFDF8 -:1080300023FE48FE6AFE8AFEA8FEC3FEDCFEF3FEB7 -:1080400009FF1CFF2FFF40FF63019701D2011602B9 -:108050006302BC02200393031604AA04530512060C -:10806000EA06DE07F108260A800B020DB00E8D101D -:108070009B12DD145417011AE51CFD1F4823C1266D -:10808000642A2A2E0C320136FF39FD3DF241D445D7 -:108090009A493D4DB75001541A57FD59AA5C215FCA -:1080A000636171634E65FC667F68D9690D6B206CF6 -:1080B000146DEC6DAB6E546FE86F6B70DE704271D7 -:1080C0009B71E8712C72677210B582B0DBF78EF984 -:1080D000FFF7C8FCFEF7ABF81A4C4FF48060009035 -:1080E0002346194A642104F500501C3000F036F88C -:1080F0004FF4A050009004F58063144A4B2104F51E -:10810000005000F02BF84FF48060009004F5C0534D -:108110000F4A322104F50050383000F01FF84FF4B8 -:108120008060009004F5E0530A4A0A2104F50050EB -:10813000543000F013F8084801210170DBF70BF808 -:10814000002016BDEC3800209F4B03084362030853 -:1081500009D601083B620308FE7B0020F0B482B020 -:108160000025069C00262F46AC46A0E8E010E0C0A3 -:108170001C380C4D4174017C2D7802B029430174E8 -:10818000E118C908C90041F8506D4FF080734B6485 -:10819000054B0B64CA646FF002024A624160F0BC96 -:1081A000DBF7EFB8FF7B00204B31010843F63001CD -:1081B000C4F202014FF09F020A6040F20000C4F2D4 -:1081C00002004FF6FF73CAF6FF3303604FF6BF633A -:1081D000CFF6FF7300F5806003604FF6FF73CFF6B4 -:1081E000FF7300F58060036000F58060036000F5B8 -:1081F0008060036040F20F03C0F2000341F60040CC -:10820000C4F2020003604FF000020A600148804798 -:1082100001480047517B030895840308000100FFD3 -:108220000000000001FF000000FF0000000100FF4F -:108230000001000000000101000000010000000139 -:1082400000FF00FF00000000FF01000000FF000031 -:1082500000FF0001000100000000FFFF000000011E -:10826000000000FF80B5DCF761FB06498163064929 -:10827000C1630649016406494164064981640120DD -:1082800002BD0000E14B0108DD4B0108E94B01088C -:10829000ED4B0108F14B010810B50749794418313D -:1082A000064C7C44163404E0081D0A6851188847BF -:1082B0000146A142F8D110BD98000000E400000082 -:1082C000C75A0108CD5F01086F6001080000000077 -:1082D000000000000000000000000000000000009E -:1082E00000000000717B0108917C0108C77C010837 -:1082F000E77C010800000000D57F010800000000B5 -:1083000081800108EB7C0108717B0108917C0108E8 -:10831000C77C0108E77C0108000000006B7F0108B2 -:108320000000000081800108EB7C0108B9610108B0 -:10833000DB610108BF6201084D6301080000000015 -:10834000A163010800000000D76C0108016D01085D -:108350007F95FDFF14430000EC380020D84E00004C -:1083600094AF002000000000BDEDFFFF0200000000 -:108370000200000078B6FCFF5700000000AC0020AF -:1083800094030000A1EDFFFF0200000002000000C6 -:10839000B3B6FCFFD603000000000020EA3800005E -:1083A0005B494E564E5D616363655F7368696674D1 -:1083B000282564293A2025642025642025640000AE -:1083C0004EF68851CEF20001086840F47000086053 -:1083D0004FF00070E1EE100A704700000A5B494E52 -:1083E000564E5D414343454C5F4D474D5432203A14 -:1083F000202564000120C046002801D0FFF74CFF73 -:108400000020FFF761FE00F000F800F001B8000066 -:1084100007463846F0F73CFEFBE70000100000007E -:10842000080000000400000002000000010000003D -:1084300041522D25642C25642C25642C25640000D4 -:10844000474D2D494F46202564000000474D2D43E0 -:108450004620256400000000474D2D52463120255E -:1084600064000000474D2D52463220256400000074 -:1084700052030000EE020000EE02000000000000C7 -:10848000000000000000000047797243616C3D2548 -:1084900064000000C046C046FFF792FFFFF7AAFF46 -:1084A0004148532D453200004148532D45330000CB -:1084B0004148532D453400004148532D45310000BB -:1084C0005354302D3200000041522D534C500000C7 -:1084D00041522D535442000041432D524631000079 -:1084E0004149532D534C5000474D2D524631000009 -:1084F000474D2D5046310000474D2D50463200006B -:10850000474D2D4F00000000474D2D534B49500063 -:10851000890E830F7D10771147522D534C50000068 -:1085200047522D535442000047522D52463100000D -:108530004748532D453200004748532D453300002E -:108540004748532D453400004748532D453500001A -:108550004748532D453600004748532D4537000006 -:108560004748532D453800007F7F7F000000000002 -:1085700000000000FCF7D4BAFFF7AABAFCF7DABA99 -:10858000FCF7E2BAFCF7EABAFCF7F2BAFCF7FABA7F -:10859000DAF7AEBDFFF753BAFFF7FEBFFFF7FEBF36 -:1085A000FFF7FEBFFCF7CCBCFFF7FEBFFFF7FEBF37 -:1085B000FCF7CEBBFCF73DBCFCF763BCFFF7FEBF8E -:1085C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFDF -:1085D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFCF -:1085E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFBF -:1085F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFAF -:10860000FFF7FEBFFFF7FEBFFFF7FEBFE8F7DFBCD7 +:103CB0000030004000500060007000800070006024 +:103CC00000500040003000200010000000100020D4 +:103CD000003000400050006000700080C7718E63AB +:103CE00055551C47E438AB2A721C390E0000390EBA +:103CF000721CAB2AE4381C4755558E63C77100808F +:103D0000C7718E6355551C47E438AB2A721C390EB7 +:103D10000000390E721CAB2AE4381C4755558E63DF +:103D2000C77100805D74BA68175D7451D1452F3A30 +:103D30008C2EE9224617A30B0000A30B4617E9229D +:103D40008C2E2F3AD1457451175DBA685D7400808E +:103D50005575AB6A00605555AB4A00405535AB2AE6 +:103D600000205515AB0A0000AB0A55150020AB2A00 +:103D700055350040AB4A55550060AB6A557500801B +:103D80005575AB6A00605555AB4A00405535AB2AB6 +:103D900000205515AB0A0000AB0A55150020AB2AD0 +:103DA00055350040AB4A55550060AB6A55750080EB +:103DB000DB76B76D92646E5B495225490040DB3675 +:103DC000B72D92246E1B49122509000025094912BE +:103DD0006E1B9224B72DDB360040254949526E5B9D +:103DE0009264B76DDB760080007800700068006038 +:103DF00000580050004800400038003000280020E3 +:103E00000018001000080000000800100018002032 +:103E10000028003000380040004800500058006082 +:103E20000068007000780080007800700068006012 +:103E300000580050004800400038003000280020A2 +:103E400000180010000800000008001000180020F2 +:103E50000028003000380040004800500058006042 +:103E6000006800700078008043798772CA6B0D6526 +:103E7000515E9457D8501B4A5E43A23CE535282F2B +:103E80006C28AF21F31A3614790DBD060000BD066B +:103E9000790D3614F31AAF216C28282FE535A23C92 +:103EA0005E431B4AD8509457515E0D65CA6B8772AA +:103EB000437900809A793373CD6C666600609A59B5 +:103EC0003353CD4C664600409A393333CD2C6626A9 +:103ED00000209A193313CD0C660600006606CD0C3F +:103EE00033139A1900206626CD2C33339A390040BB +:103EF0006646CD4C33539A5900606666CD6C337379 +:103F00009A7900802F7A5D748C6EBA68E962175DC9 +:103F100046577451A34BD14500402F3A5D348C2E47 +:103F2000BA28E922171D46177411A30BD10500000A +:103F300090019001A400A400680068006800680077 +:103F4000460046002800280020002000140014002D +:103F500010001000100010000A000A000600060001 +:103F60000600060001001B00F000800100020D00A9 +:103F70005201B4001D003800B90181000900200081 +:103F800018000000E42F030850380308E432030847 +:103F90004C340308F43A03081C370308103B0308A9 +:103FA0004C3B0308BC3B030820380308303F0308A0 +:103FB0000F0003000B00280010B5DFF8FC4520625D +:103FC0000C220021201DDEF758F804F124002061A6 +:103FD00004F13C00606104F15400A06104F16C0044 +:103FE000E06110BD2DE9F0472DED068B86B00C4643 +:103FF0004FF0000ADFF8C055016869604168A960A8 +:104000008068E860D046404601900490039002909A +:10401000052205F10C01286900F05DFA052205F181 +:104020000801686900F057FA0522291DA86900F007 +:1040300052FA052301AA0321286900F061FAB0EEC3 +:10404000408A052304AA0321686900F059FAF0EEBA +:10405000408A052303AA0321A86900F051FAB0EEB3 +:10406000409A05220321286900F088FAF0EE080A38 +:10407000C0EE209A95ED02AAD5ED01AAF5EE40AA70 +:10408000F1EE10FA0FD1B5EE40AAF1EE10FA0AD116 +:1040900095ED030AB5EE400AF1EE10FA03D100F0F7 +:1040A00016FA4FF00108564695F8019095ED030A6F +:1040B0006AEEAA0A4AEE0A0A40EE000A10EE900AD8 +:1040C000DDF7ECFB41EC100BF4F772FF51EC100B39 +:1040D000ECF7D8F90090052200A9E86900F0FBF997 +:1040E0009DED000ADFEDA30AB4EE600AF1EE10FACE +:1040F00000F18580DFEDA00AB4EE600AF1EE10FA5F +:104100007DDA052302AA0321E86900F0F9F9F0EE4F +:104110000C0AB4EE600AF1EE10FA70D59FED970A22 +:10412000B4EE408AF1EE10FA69D59FED950AF4EEEF +:10413000409AF1EE10FA10D59FED920AF4EE409AF3 +:10414000F1EE10FA09DB6878FF2858D0FF2068707C +:104150004FF0FF3020700120C4E019EE900ADDF727 +:104160009DFB21F000413246DFF85034DDF768FF57 +:1041700011D2B0EE000AF4EE408AF1EE10FA17D434 +:10418000F4EE408AF1EE10FA39DAB4EE409AF1EE2C +:1041900010FA0EDB33E0052301AA1946286900F066 +:1041A000AFF9F7EE000AB4EE600AF1EE10FA26D588 +:1041B000B04695ED030ADDED000A80EE200A10EE10 +:1041C000100ADDF76BFB41EC100B00F0D7FA53EC53 +:1041D000102B4FF00040DFF8E813DDF797FB41ECC0 +:1041E000100B00F0F5FA51EC100BDDF76DFC0746F3 +:1041F000B8F1000F51D1EBF73DFF3D2803DB00F094 +:1042000066F930466EE0A868DDF748FB41EC110B1B +:10421000B0EE418AF0EE618A95ED010AB1EE400AF6 +:1042200010EE100ADDF73AFB41EC100BB0EE481A25 +:10423000F0EE681A00F070FB53EC102B4FF00040CA +:10424000DFF88013DDF762FB41EC100B00F0C0FAE1 +:1042500051EC100BDDF738FC060001D506F5B476FD +:1042600006F12D005A2190FBF1F8B8F1040F00D1AE +:10427000D046384600F03BF8002806D03A46314692 +:10428000404600F039F8002802D100F020F904E09F +:10429000A878404501D085F80280A878484502D129 +:1042A000B9F1FF0F1DD195F8201011F0060F01D0C4 +:1042B000012604E03A46314600F066F806463846E4 +:1042C000EBF7D8FE3D280CDA002E0AD0A8786978E2 +:1042D000814206D0687020704FF0010AFF2800D09C +:1042E0002870504606B0BDEC068BBDE8F0873C3028 +:1042F00079288041C00F704718B4AF4C237894F8E8 +:10430000204014F0060F01D018BC3DE02FD4984295 +:1043100008D05A1C541002EB9474A410A2EB84022F +:1043200090420ED15A224243283A002807D1B1F5D3 +:104330009D7F06DD02F5B472914202DA15E09142EA +:1043400013DB984208D0DA1C531002EB93739B10D6 +:10435000A2EB830290420AD15A224243283200281B +:1043600001D12E2903DA8A4201DA002000E001207F +:1043700012BC7047DD0CFB40A7493C416766E63F35 +:104380003E1B3041D7B409412DE9F04F95B00446AA +:104390000D461646884F97F8008010A80FF2282186 +:1043A0001422E0F79DFC4FF0000B0DF14009D9F805 +:1043B00004A03046EBF75EFE1099884204DB3046DD +:1043C000EBF758FE50452ADBD9F808B03046EBF73A +:1043D00051FE504507DB3046EBF74CFE584502DAFC +:1043E0004FF0010B1BE0D9F80C903046EBF742FE82 +:1043F000584507DB3046EBF73DFE484502DA4FF003 +:10440000020B0CE03046EBF735FE48450CDB30463E +:10441000EBF730FE1499814206DB4FF0030BB8F145 +:10442000000F47D4002C01D5002044E0444509D0BA +:1044300008F10100411000EB91718910A0EB81009F +:10444000844218D100A80FF294114022E0F748FCF2 +:104450004FEA0B10002C00A908D141588D420ADA0E +:1044600000A940184068A84205DA2CE0401850F82E +:104470002400854227DB444509D008F103004110A0 +:1044800000EB91718910A0EB8100844212D100A849 +:104490000FF288114022E0F723FC4FEA0B10002CAA +:1044A00000A90BD14158A94204DA00A94018C068FC +:1044B000854208DB012015B0BDE8F08F401850F8A8 +:1044C0002400A842F6DAFF20B8700020F3E73A484B +:1044D000FF21817070470388934201D3002303803A +:1044E00003885B1C03809BB2934201D300220280AD +:1044F000028800EB820009684160012070470000DB +:104500002DE9F0432DED028B81B004460D46164691 +:104510001F469FED288A4FF00008B4F9009000EE86 +:10452000105AF8EEC08A3A4600F028F880EE280AC1 +:1045300086ED000A05E0A7F101090FFA89F908F1F3 +:1045400001080FFA88F8A84511DA04EB890090ED0C +:10455000010AD6ED000A30EE600A00EE008AB9F1D9 +:10456000010FE8DBA9F101090FFA89F9E7E788EE05 +:10457000280A01B0BDEC028BBDE8F08330B49FED9A +:104580000D0A0023B0F900400EE024B2002C06D43E +:1045900000EB8405D5ED010A30EE200A641E24B23A +:1045A000002C00D5541E5B1C1BB28B42EDDB30BCD3 +:1045B0007047000000000000D4AE00200000104052 +:1045C000DCA54C40DCA54CC0000000001E00000033 +:1045D00028000000320000003C0000004A010000FA +:1045E0003C00000096000000F00000004F010000B9 +:1045F000410000009B000000F50000005401000095 +:1046000046000000A0000000FA0000005E0100006B +:1046100050000000AA000000040100001E0000007D +:1046200078000000D20000002C01000019000000FA +:1046300073000000CD0000002701000014000000FE +:104640006E000000C8000000220100000A00000007 +:1046500064000000BE00000018010000D0B52DED80 +:10466000048B82B041EC180B8DED008BDDE900234B +:10467000C3F30A5140F2FF74A14213D0002904BFD2 +:10468000190350EA113011D051EC180B002200230D +:10469000DDF7D6FC3DBF81F0004141EC180B08244A +:1046A000002407E0190350EA1130EDD002B051ECBC +:1046B000180B60E051EC180B274A284BDDF7C0FCC3 +:1046C0001CD29FED239B51EC190B53EC182BDDF7FB +:1046D000BBFA06460F4653EC182B51EC190BDDF7CD +:1046E0003FFA32463B46DDF711F9F4F769FC41EC3D +:1046F000100B51EC180B53EC102B1EE00122184B41 +:10470000DDF79EFC2ED29FED129B51EC190B53EC62 +:10471000182BDDF799FA06460F4653EC182B51EC8F +:10472000190BDDF71DFA32463B46DDF7EFF8F4F7DB +:1047300047FC84F0020453EC182BDDF745FB02B074 +:104740002246BDEC048BBDE8D04000F001B900BFAB +:10475000000000000000F03FCE3B7F669EA0E63FD9 +:104760000000F03FF8F754F9212102B001604FF04A +:10477000FF306FF00041BDEC048BD0BD80B551EC33 +:10478000100BFFF76BFF41EC100B01BD83B501214E +:1047900000A8FEF713FB401E012811D9002100A834 +:1047A000FEF70CFB60B10198DDE90023002847BF4C +:1047B0000020054900200549DDF7D2F9CDE90001C7 +:1047C000DDE9000103B000BD0000F0BF0000F03FD4 +:1047D00080B551EC100BFFF7D9FF41EC100B01BD78 +:1047E00038B50FB482B040F2FF759DED040B8DED2E +:1047F000000BDDE90001C3F30A51A9420BD011B14E +:104800004FF0FF340DE0190350EA11300CBF0024C3 +:104810006FF0010405E0190350EA113014BF0224BF +:1048200001249DED020B8DED000BDDE90001DDE9BA +:104830000023C3F30A51A94215D069B14FF0FF30EC +:10484000012C18DA002B1CD5DDE9020181F00041B2 +:10485000CDE90201082515E0190350EA1130EFD027 +:104860006FF00100ECE7190350EA113018BFDDE9E1 +:10487000020147D10120022C29D1DDE9040107B052 +:1048800030BD00250598002807D5DDE9040181F039 +:104890000041CDE9040185F00605DDE90401DDE90B +:1048A0000223DDF7CDFB04D2DDF78EFA41EC100BCD +:1048B0001EE0002C08D5DDE90201DDE90423DDF767 +:1048C00083FA41EC100B15E09FED0F0B12E08442D0 +:1048D0000CBF9FED0F0B9FED0C0B002B4CBF082561 +:1048E00000250599002948BF85F00605012801D15A +:1048F00085F002052A4607B0BDE8304051EC100BA8 +:1049000000F026B807B030BD000000000000000035 +:10491000000000000000F03F80B553EC112B51EC7B +:10492000100BFFF75DFF41EC100B01BDE75A0108CA +:10493000115B01083D5C0108F15C0108000000000A +:10494000455D01080000000045610108000000000D +:10495000D0B514462DED048B534A544BDDF758FB6C +:1049600041EC180B1DD89FED529B53EC182B51ECCA +:10497000190BDCF7CBFF00224F4BDDF7F1F80646B1 +:104980000F4653EC182B51EC190BDDF7E9F80246F2 +:104990000B4630463946DDF717FA41EC180B44F068 +:1049A000010451EC180B0022444BDDF749FB05D301 +:1049B00001224FF07953DDF72BFB51D853EC182B24 +:1049C000DCF7A4FF41EC190B53EC182BDCF79EFF2E +:1049D00006460F4653EC192B39483A49DCF796FF47 +:1049E000394A3A4BDDF7BCF853EC192BDCF78EFF54 +:1049F000374A384BDDF7B4F832463B46DCF786FFE2 +:104A000053EC182BDDF7ACF806460F4653EC192B88 +:104A100031483249DCF77AFF314A324BDDF7A0F8F2 +:104A200053EC192BDCF772FF2F4A304BDDF798F867 +:104A300053EC192BDCF76AFF2D4A2E4BDDF790F86B +:104A400053EC192BDCF762FF2B4B0022DDF788F8C3 +:104A500002460B4630463946DDF7B6F941EC180BF5 +:104A6000A00705D551EC180B81F0004141EC180B63 +:104A700014F007020BD00FF2880303EBC20251ECD3 +:104A8000180B53681268DDF76BF841EC180B200720 +:104A900005D551EC180B81F0004141EC180B51EC9D +:104AA000180BBDEC048BD0BD57CD9E5E1426D13FB4 +:104AB000AA4C58E87AB6FB3F0000F0BF000040BEA9 +:104AC000845D57134B57B03FB2934C19ED5EE43FF2 +:104AD000BEDE02B90240F83FDE39028FC7C0743F24 +:104AE0008AAB1283000CC83F24D7E508B6D8F03F44 +:104AF0000F34580E5895FD3F0000F03F00000000B5 +:104B0000000000000000000066732D3852C1E03F35 +:104B1000182D4454FB21F93F66732D3852C1F03FE4 +:104B2000182D4454FB21F93F66732D3852C10040C3 +:104B3000182D4454FB2109403FD038C6A6F104404B +:104B40001EF0040F0CBFEFF30880EFF3098000F0B4 +:104B500033B870471EF0040F0CBFEFF30880EFF37B +:104B6000098000F029B870471EF0040F0CBFEFF366 +:104B70000880EFF3098000F01FB870471EF0040FA3 +:104B80000CBFEFF30880EFF3098000F015B8704711 +:104B90001EF0040F0CBFEFF30880EFF3098000F064 +:104BA0000BB870471EF0040F0CBFEFF30880EFF353 +:104BB000098000F001B87047E5F737BC704786B050 +:104BC0004EE0BDF80500011D89B2DDF80D0000F0D2 +:104BD00085FADBF75AFCDFF8A044DFF8A054DFF8D1 +:104BE000A0142846E5F76EF9002810D12046441E8F +:104BF0000028F4D100212846E5F74FF90021DFF81D +:104C00008404E5F74AF90FF2AC40DBF786FA022E8E +:104C100001D1DEF7A2FCDDF80D00002804D0E0F79A +:104C2000A3F80020CDF80D0049F64044DFF85854B1 +:104C300002212846E5F77EF8002803D12046441ECD +:104C40000028F5D142F2107480212846E5F772F869 +:104C5000012803D12046441E0028F5D1DBF712FCC1 +:104C600001A9DFF8280400F05DFA9DF8070010F0B4 +:104C70000306A6D0022EA4D002D3032E59D0EFE70C +:104C8000DFF804048089C04600A8002101600222E8 +:104C90000DF10701DDF7EBF902220DF105010DF130 +:104CA0000200DDF7E4F9042100A800F017FABDF8CE +:104CB0000500001DE0F740F8CDF80D00BDF8050037 +:104CC000011D89B2DDF80D0000F04CFADBF7DDFBC9 +:104CD000DFF8A443DFF8AC53DFF8B4132846E5F758 +:104CE000F1F8002810D12046441E0028F4D10021FC +:104CF000DFF88803E5F7D1F800212846E5F7CDF87D +:104D00000FF2B830DBF709FADBF7BCFB002CA7D0B9 +:104D100001A9DFF8800300F049FA002803D00FF260 +:104D2000A430E5F704FEDFF870130820DCF7AEF8D6 +:104D300096E7D5488089C0460921DFF8600300F076 +:104D400011FADBF7A8FBD64C0221D648E4F705FEA2 +:104D5000002885D12046441E0028F5D10021C748EF +:104D6000E5F79BF80021C748E5F797F80FF25C30AC +:104D7000DBF7D3F974E7F8B5CB4C2078401C2070F2 +:104D8000DEF721FA6078401C6070DDF7F3FF607891 +:104D9000401E6070C0B2002801D1DEF70EFA01207B +:104DA000E5F794FE01285DD10120E5F79BFE002583 +:104DB000BE4E0121BE48E4F7D0FD002847D096F949 +:104DC000000000284AD028463070AB4EAD4F0FE0AF +:104DD0003046461E00280BD12946A848E5F75DF865 +:104DE00029463846E5F759F80FF2E820DBF795F940 +:104DF0003846E5F763F80028EAD10221A948E4F72C +:104E0000ACFD002808D02078012833D16068002844 +:104E100030D0DEF7CEF92DE0A049C87810F00300BD +:104E20000AD0012810D1B1F80100002804D0974819 +:104E300000F0BCF9054607E0964800F0B7F90546D2 +:104E400095490820DCF722F8DBF722FB06E0012079 +:104E50003070311D8D4800F0A9F90546002D01D0B4 +:104E6000E5F776FD2078012804D16068002801D09C +:104E7000DEF79FF92078401E2070F1BD10B58A4CF6 +:104E80002078401C2070DEF79EF96078401C60702E +:104E9000DDF770FF6078401E6070C0B2002801D15D +:104EA000DEF78BF90220E5F711FE002802D0022080 +:104EB000E5F718FE2078012804D16068002801D0A9 +:104EC000DEF777F92078401E207010BD10B5764CC3 +:104ED0002078401C2070DEF776F96078401C607006 +:104EE000DDF748FF6078401E6070C0B2002801D135 +:104EF000DEF763F90420E5F7E9FD00280BD0042074 +:104F0000E5F7F0FD012200210320DBF7C7FA624933 +:104F10001020DBF7BBFF2078012804D1606800284F +:104F200001D0DEF746F92078401E207010BD10B584 +:104F30005D4C2078401C2070DEF745F96078401CFD +:104F40006070DDF717FF6078401E6070C0B2002807 +:104F500001D1DEF732F94FF40060E5F7B7FD002824 +:104F600007D04FF40060E5F7BDFD4B492020DBF78B +:104F70008DFF2078012804D16068002801D0DEF779 +:104F800018F92078401E207010BD38B5464C2078A6 +:104F9000401C2070DEF717F96078401C6070DDF768 +:104FA000E9FE6078401E6070C0B2002801D1DEF7D3 +:104FB00004F94FF48040E5F7DFF900281DD0364DA5 +:104FC000EBF7AAFA00280CD00020EBF7AEFADBF7DB +:104FD000BBFA806EDBF77DF829460620DBF756FF2B +:104FE00003E029460220DBF751FF4FF48040E5F74C +:104FF000D8F94FF48000E5F775FD2078012804D139 +:105000006068002801D0DEF7D4F82078401E2070B8 +:1050100031BD10B5244C2078401C2070DEF7D3F849 +:105020006078401C6070DDF7A5FE6078401E6070FF +:10503000C0B2002801D1DEF7C0F84FF48050E5F788 +:105040009BF900280BD014494020DBF71FFF4FF4D9 +:105050008050E5F7A6F94FF40030E5F743FD2078DE +:10506000012804D16068002801D0DEF7A2F820787A +:10507000401E207010BD000080841E008864024025 +:1050800000080020106402400030014058660020F3 +:105090002000001040660020F0580020A87A002070 +:1050A000404B4C000004024024380020943800207B +:1050B000000002405478444D410000005278444DB5 +:1050C000410000005075744D61696C0052454144C7 +:1050D00059000000455854493000000038B50C46CE +:1050E0000E4D2968C90706D5296849084900296075 +:1050F0002968C907FCD4002201462846E4F7D8FEF7 +:1051000007492846E4F7F1FE214628464160C0469B +:1051100001212846BDE83440E4F7BFBE8864024060 +:105120000008002030B504460D480D46017881B0D6 +:10513000491C0170DEF747F8A06840B940212046BD +:10514000EBF7FAF9DEF73FF8A0680028F6D0294619 +:105150002046EBF731FA01B0BDE83040DEF7D6B8B3 +:105160002438002038B50C460E4D2968C90706D5ED +:1051700029684908490029602968C907FCD4002228 +:1051800001462846E4F794FE07492846E4F7ADFEB9 +:10519000214628464160C04601212846BDE83440EA +:1051A000E4F77BBE1064024020000010F0B50E4F03 +:1051B0000546387881B00E46401C01243870DEF771 +:1051C00002F8A868E968884204D231462846EBF71D +:1051D000D1F90024787808B9DDF7EFFFDEF796F80B +:1051E000204601B0F0BD00BF24380020E75A010876 +:1051F000ED5F01088F600108000000000000000062 +:10520000000000000000000000000000000000009E +:10521000F0B52DED048B8DB005460E46174600A85F +:105220000FF284413022DFF75BFDDFF838440A20BB +:10523000A0630720E063206405206064DFF8300489 +:10524000DFF82414CDE9000100AA4FF03330DFF875 +:105250001C14C2E90201DFF81804DFF81814C2E9CF +:1052600004014FF03330DFF81014C2E90601DFF813 +:105270000C14C2E90801DFF80814CDE90A010A207C +:1052800020662868142190FBF1F0E0663868022857 +:1052900001D1052023E03068102818D0B0F5807FB8 +:1052A00006D0B0F5806F08D0B0F5006F0AD012E0DC +:1052B0004FF480706066002011E04FF480606066FB +:1052C00002200CE04FF400606066032007E010202D +:1052D0006066042003E04FF400706066012002EB7A +:1052E000C000D0E90023E748E749DCF70FFB41ECB9 +:1052F000180B53EC182B0020E449DCF707FB41ECBA +:10530000100B84ED140B84ED120B53EC102BE048C2 +:10531000E049DCF7FBFAC4E916012022002120460F +:10532000DCF7ABFE9FEDDE9BA06BDCF701FC53ECE2 +:10533000192BDCF7EBFA53EC182BDCF7E7FAC4E98E +:105340000001E06BDCF7F4FB53EC192BDCF7DEFA21 +:1053500053EC182BDCF7DAFAC4E90201206CDCF715 +:10536000E7FB53EC192BDCF7D1FA53EC182BDCF7E5 +:10537000CDFAC4E90401606CDCF7DAFB53EC192BBD +:10538000DCF7C4FA53EC182BDCF7C0FAC4E90601C9 +:105390000020A06601206067A06704F17C00206700 +:1053A0000DB0BDEC048BF0BDAE48012141678167B3 +:1053B000704700002DE9F0432DED048B8BB00546BE +:1053C0009FEDB58B04A81821DCF7AAFB4FF000086D +:1053D0008DED000AF1EE601ACDED011AB1EE410A31 +:1053E0008DED020A9F4C1E2200A9206FF2F7BBFF31 +:1053F0002868022802D14FF0020901E04FF00309AA +:10540000206F616F00290AD0002800F025810088F4 +:10541000216E8842C0F22081404660671CE1A16F86 +:10542000002939D01E22216E09B2F2F7C5FF94ED92 +:10543000189AF8EEC90A80EE200A10EE100ADCF77E +:105440002DFAC4E908011E2219EE101A09B2206FC4 +:10545000F2F7D0FF94ED189AF8EEC90A80EE200A10 +:1054600010EE100ADCF71AFAC4E90A011E2219EE3E +:10547000101A09B2206FF2F7DBFFD4ED180AF8EE2C +:10548000E00A80EE200A10EE100ADCF707FAC4E901 +:105490000C014046A06745E01E224146F2F77CFF22 +:1054A00005461E22216E09B2206FF2F775FF0646EF +:1054B00094ED180AB8EEC09A95ED000AD6ED000AF0 +:1054C00030EE600A80EE090A10EE100ADCF7E6F909 +:1054D000D4E90823DCF744FBC4E9080195ED010A8F +:1054E000D6ED010A30EE600A80EE090A10EE100ACD +:1054F000DCF7D4F9D4E90A23DCF732FBC4E90A016A +:1055000095ED020AD6ED020A30EE600A80EE090A35 +:1055100010EE100ADCF7C2F9D4E90C23DCF720FB0B +:10552000C4E90C011822414604A8DCF7A6FD454653 +:1055300004AE40E01E22294609B2206FF2F72CFF8C +:1055400007463868DCF7AAF9D4E90823DCF77CFBC6 +:1055500041EC100B53EC102BDCF7D8F9DDE90423F8 +:10556000DCF7FEFACDE904017868DCF797F9D4E9B5 +:105570000A23DCF769FB41EC100B53EC102BDCF732 +:10558000C5F9D6E90223DCF7EBFAC6E90201B868EF +:10559000DCF784F9D4E90C23DCF756FB41EC100B63 +:1055A00053EC102BDCF7B2F9D6E90423DCF7D8FA78 +:1055B000C6E904016D1C206E8542BBDBDCF7B8FA3E +:1055C00041EC190BDDE9040153EC192BDCF7FCFB72 +:1055D000CDE90401D6E9020153EC192BDCF7F4FB09 +:1055E000C6E90201D6E9040153EC192BDCF7ECFB08 +:1055F000C6E9040145460FE006EBC50090ED009BAF +:1056000051EC180B53EC192BDCF71AFD03D2B0EE5A +:10561000498AF0EE698A6D1C4D45EDDBA56EE66E9C +:10562000D4E9120153EC182BDCF7F2FC0AD8AE4295 +:1056300001DA4FF001080020A06694ED140B84ED10 +:10564000120B09E0AE4205DA4FF0020894ED160B9A +:1056500084ED120B681CA06640460BB0BDEC048BB9 +:10566000BDE8F08300AC00209999C93F3333D33FA4 +:105670009A9999999999E93F3333F33F333303402A +:105680003333E33F1F85EB51B89E234000001440A5 +:105690007B14AE47E17A843F000000000000000068 +:1056A000000000000000E03F9A9999999999C93F3C +:1056B000333333333333E33F9A9999999999E93FD7 +:1056C000333333333333F33F333333333333034001 +:1056D000333333333333E33FCF490022CA630A64A1 +:1056E00001F148024A6201F1C4028A6201F5A07226 +:1056F000CA6201F5DE720A6301F50E724A6301F5B2 +:105700002D728A630B2802DA1E2048647047152820 +:1057100002DA192048647047432802DA14204864EA +:105720007047C92802DA0F20486470470A2048648D +:1057300070470000F0B52DED068B83B004460026BF +:10574000B54DE86B00286AD185ED000AC5ED010A68 +:1057500085ED021AB0EE610A85ED030AB0EE420A49 +:1057600085ED050AB0EE620A85ED040A3046029026 +:10577000019000901E222946E86A00F0DCF81E2203 +:10578000291DA86A00F0D7F81E2205F10801686AF1 +:1057900000F0D1F81E2205F10C01A86B00F0CBF847 +:1057A0001E2205F11001686B00F0C5F81E2205F1FC +:1057B0001401286B00F0BFF8696C286C81422ADA6A +:1057C0001E2300AA09B2E86A00F0CAF8B0EE408AC7 +:1057D0001E2301AA696C09B2A86A00F0C1F8F0EEB4 +:1057E000408A1E2302AA696C09B2686A00F0B8F800 +:1057F000DFED880AB4EE608AF1EE10FA0BD5F4EE14 +:10580000608AF1EE10FA06D5B4EE600AF1EE10FAF5 +:1058100001D50120E863286C401C286486E0AE6B4B +:105820006F6C1E22394609B2304600F0D7F8F0EE10 +:10583000408A1E22394609B2304600F0F5F8B0EE33 +:10584000409A1E22394609B2304600F012F9B81EBD +:1058500000EE900AB8EEE08A78EEC90A30EEC00A8F +:10586000C0EE088AC5ED068A6E6B1E22394609B263 +:10587000304600F0B3F8B0EE409A1E22394609B225 +:10588000304600F0D1F8F0EE409A1E22394609B2B7 +:10589000304600F0EEF879EE690A30EEC00A80EE8C +:1058A000089A85ED079A2E6B1E22394609B23046BA +:1058B00000F094F8F0EE409A1E22394609B23046C4 +:1058C00000F0B2F8B0EE40AA1E22394609B23046C6 +:1058D00000F0CFF879EECA0A30EEC00A80EE088AEE +:1058E00085ED088A9FED4DAB18EE900ADBF7D6FFE9 +:1058F00053EC1A2BDCF768FADCF7E6F8208019EE97 +:10590000100ADBF7CBFF53EC1A2BDCF75DFADCF760 +:10591000DBF8608018EE100ADBF7C0FF53EC1A2B9F +:10592000DCF752FADCF7D0F8A0800126304603B04D +:10593000BDEC068BF0BD0388934201D300230380A6 +:1059400003885B1C03809BB2934201D30022028038 +:10595000028800EB82000968416001207047000066 +:105960002DE9F0432DED028B81B004460D4616461D +:105970001F469FED2C8A4FF00008B4F9009000EE0E +:10598000105AF8EEC08A3A4600F028F880EE280A4D +:1059900086ED000A05E0A7F101090FFA89F908F17F +:1059A00001080FFA88F8A84511DA04EB890090ED98 +:1059B000010AD6ED000A30EE600A00EE008AB9F165 +:1059C000010FE8DBA9F101090FFA89F9E7E788EE91 +:1059D000280A01B0BDEC028BBDE8F08330B49FED26 +:1059E000110A0023B0F900400EE024B2002C06D4C6 +:1059F00000EB8405D5ED010A30EE200A641E24B2C6 +:105A0000002C00D5541E5B1C1BB28B42EDDB30BC5E +:105A1000704700006F12033BDCDF002089AD84FA81 +:105A20000A74313F000000002DE9F04104460D46A4 +:105A3000164694ED010A0027B4F9008014E00FFA2D +:105A400088F8B8F1000F07D404EB8800D0ED010A04 +:105A500000F03CF8A8F101080FFA88F8B8F1000F3F +:105A600001D5A6F101087F1C3FB2AF42E7DBBDE8DC +:105A7000F0812DE9F04104460D46164694ED010AE9 +:105A80000027B4F9008014E00FFA88F8B8F1000F8D +:105A900007D404EB8800D0ED010A00F00FF8A8F15C +:105AA00001080FFA88F8B8F1000F01D5A6F1010836 +:105AB0007F1C3FB2AF42E7DBBDE8F081B4EE600A85 +:105AC000F1EE10FA01D4B0EE600A7047F4EE400A2D +:105AD000F1EE10FA01D4B0EE600A70470FB480B551 +:105AE0000FF23420DAF719FB83480021817001217D +:105AF000C17001710021417181710170DAF793FA6F +:105B00000069000601D4012000E0012002BC5DF81C +:105B100014FB80B50FF20820DAF7FFFADAF783FA00 +:105B20000069000616D57448002181700121C170FA +:105B30000171002141718171417801290AD100214F +:105B400041700E220A210120DEF702FF032801D155 +:105B5000032002BD012002BD38B568488169497A39 +:105B6000C069407A4518DAF75EFA0069000631D557 +:105B7000614CA078002802D10120A07032BD60786D +:105B8000EDB2002D06D0012824D10120E0700020C4 +:105B900060701FE0002811D1E078012806D10E22A4 +:105BA0000A210120DEF7D4FE0020E0700E220A2137 +:105BB0000020DEF7CDFE0120607032BD94F90000B8 +:105BC000002802D0022803D004E000F005F801E02C +:105BD00000F034F8012032BD38B5474CE068B0F928 +:105BE00058502079012809D1512D07DA0020207161 +:105BF000012000F07EF8002000F06EF8B4F90820D3 +:105C0000954217DBA079401CA07140B2022813DB3B +:105C1000022020700020A07129460FF20C10DAF744 +:105C20007CFA78202081012000F063F8012000F048 +:105C300053F801E00020A071012032BD38B52E4C90 +:105C4000E068B0F95850502D16DA6079401C607148 +:105C500040B2022812DB00202070012000F049F839 +:105C6000002000F039F800206071502229460FF220 +:105C7000C400DAF752FA01E000206071012032BD61 +:105C800010B50FF2BC00DAF748FA1B4CDEF75EFEE7 +:105C90002061DAF759FCE060002020702069184983 +:105CA000C0F8401200F51070164941601649816035 +:105CB0000FF20D01C16015490161012010BD000006 +:105CC000014600200C4A126992F83122002A02D0C3 +:105CD000002900D109E070470D49012802D10120B7 +:105CE000087070470020087070470A4890F900005B +:105CF000704708490870704758AF00200000002026 +:105D0000DD5A0308135B0308595B0308114C0108B3 +:105D100058FE002057FE002053746172740000008A +:105D200053746F7000000000436C6F73652025642E +:105D3000202564004F70656E2025642025640000D6 +:105D4000496E6974000000008D48002141600161C6 +:105D500041618161C16101628160C1600170416224 +:105D60008162704730B52DED028B044694ED020A36 +:105D7000834DA868002803D185ED060A0120A8609C +:105D8000D5ED060A30EE608A85ED060A2068DBF75D +:105D900085FD21F0004100227A4BDCF751F921D238 +:105DA0006068DBF77BFD21F000410022754BDCF7DA +:105DB00047F917D294ED020ADFED6C0AB4EE600ADF +:105DC000F1EE10FA0EDB18EE100ADBF767FD21F09A +:105DD00000416D4A6D4BDCF733F903D26868401C13 +:105DE000686001E0002068606868062808DB2068B9 +:105DF00028616068686100206860A860012000E098 +:105E00000020BDEC028B30BD70B52DED028B064637 +:105E100000245B4D96ED000AD5ED040A30EE608A51 +:105E200096ED010AD5ED050A30EE600A10EE100A73 +:105E3000DBF734FD21F0004101224FF08043DCF715 +:105E4000E7F803D8FFF780FF03208BE0E86800281D +:105E500030D19FED470AB4EE408AF1EE10FA05DB2F +:105E6000286A401C28622046E8610FE09FED410A45 +:105E7000B4EE408AF1EE10FA05D5E869401CE861FD +:105E80002046286202E020462862E861E8690A2884 +:105E900006DB104628702046E8611046E86060E0A6 +:105EA000286A0A285DDB02202870204628621046F6 +:105EB000E86056E001282BD1686A401C68622978A6 +:105EC00001290AD19FED2C0AB4EE408AF1EE10FAB6 +:105ED0000DDBAA6A521CAA6209E09FED280AB4EE03 +:105EE000408AF1EE10FA02D5AA6A521CAA622A2848 +:105EF00005DB2046A86268620220E86031E0A86AFB +:105F000003282EDB0C460020A8626862E86028E0C7 +:105F10003068DBF7C3FC21F000412246194BDCF767 +:105F20008FF816D27068DBF7B9FC21F000412246E9 +:105F3000144BDCF785F80CD296ED020ADFED0B0A64 +:105F4000B4EE600AF1EE10FA03DB6868401C68608A +:105F500001E0104668606868062802DB1046686049 +:105F6000E8602046BDEC028B70BD000001001041CE +:105F70006766263F666626BF999919BF9A99193FA9 +:105F800020FC00200000E03F9A9999999999C93F17 +:105F9000854800210160416081607047F0B52DEDBA +:105FA0000E8B81B0B0EE408AF0EE608AB0EE419A7E +:105FB0000027B0EE680A10EE100ADBF76FFC41EC28 +:105FC0001D0BB0EE480A10EE100ADBF767FC41EC3F +:105FD0001E0B754E21F000413A46744BDCF730F849 +:105FE00018D251EC1D0B21F00041DCF729F811D239 +:105FF000B0EE490A10EE100ADBF750FC21F0004128 +:106000003A466A4BDCF71CF804D2104630607060E8 +:10601000B060C5E09FED66AB9FED67BB9FED68CBC1 +:106020003068DBF73BFC04460D4653EC1E2B51EC6D +:106030001C0BDBF76BFC53EC1B2BDBF767FC53EC07 +:106040001A2BDBF7C1FE22462B46DBF789FDEAF768 +:1060500019FA09EE900AC6ED009A7068DBF71EFC8B +:1060600004460D4653EC1D2B51EC1C0BDBF74EFC8C +:1060700053EC1B2BDBF74AFC53EC1A2BDBF7A4FE8B +:1060800022462B46DBF76CFDEAF7FCF90DEE100A11 +:1060900086ED01DAB068DBF701FC04460D46B0EE90 +:1060A000490A10EE100ADBF7F9FB53EC1C2BDBF767 +:1060B0002DFC53EC1B2BDBF729FC53EC1A2BDBF7E5 +:1060C00083FE22462B46DBF74BFDEAF7DBF909EEB0 +:1060D000100A86ED029A19EE900ADBF7DFFB21F039 +:1060E000004141EC1B0B1DEE100ADBF7D7FB41EC26 +:1060F000180B21F0004141EC1C0B19EE100ADBF7E4 +:10610000CDFB41EC1A0B53EC1B2B51EC1C0BDBF7BA +:1061100027FD53EC1A2B23F00043DBF721FDEAF7B0 +:10612000B1F900EE100ADFED280AB4EE600AF1EED4 +:1061300010FA2EDB51EC1A0B21F000410122234B07 +:10614000DBF766FF25D8BBEE090AF4EE409AF1EEC4 +:1061500010FA0BD551EC180B21F0004153EC1A2B1F +:1061600023F00043DBF76CFF00D201279FED180AF4 +:10617000F4EE409AF1EE10FA0BDB51EC180B21F023 +:10618000004153EC1A2B23F00043DBF759FF00D2F8 +:106190000227002F03D0002030607060B0603846C6 +:1061A00001B0BDEC0E8BF0BDCCFD00200000E03F47 +:1061B0000000000000408F400000000000004E4042 +:1061C000E6C1631ADCA54C4001004842000044408F +:1061D0000100C84110B582B000208DF800008A4C43 +:1061E00004F1100314220D2104F50670CDF7E8FB2D +:1061F00004F58A7314220D2104F50C70CDF7E0FB31 +:10620000EAF788F9002848D0D9F70DFFA060E5F734 +:1062100001FCE6F768FAA0680178002903D021782C +:1062200041F0010121700A21D9F760FFA068D9F778 +:1062300037FFA068C178002903D0217841F002011E +:1062400021704179002903D0217841F004012170A7 +:106250008179002903D0217841F00801217021784B +:106260000F2902D15521817500E08175002201219D +:106270000846DAF713F9E6F727FF3221A068DAF7C4 +:106280008BF8A068DAF74DF8DAF7FCF8DAF700F9DE +:10629000DAF75AF90021C16616BD002016BD80B597 +:1062A000FFF798FF5849486001BD0720CDF794FBE0 +:1062B000FBE784B0E4F7C2FB002801D0E4F759FB08 +:1062C000E4F72EFB002801D0E4F748FB3E20EAF774 +:1062D00041FF0646DDF74DF94B4C04F51275B0074A +:1062E0000FD56068C06EDAF7E8F8DDF79FF804F1C3 +:1062F0000C012846DDF793FA04F10C012846DDF77E +:10630000DFFAF0060AD50020DAF7CAF81020E6F71F +:10631000A1FD04F10C012846DDF7D2FAB0060CD538 +:1063200004F10C012846DDF78AFA0420E6F792FD15 +:1063300004F10C012846DDF7C3FA700703D5606845 +:10634000806EE6F7B5F804F10C012846DDF7DAFCBB +:1063500030071FD4BAE7BDF80100001DDEF7ECFCE2 +:10636000CDF8090002220DF10301DBF780FE0222C5 +:106370000DF10101DDF80900801CDBF778FE04F166 +:106380000C02294600A8DDF790FD00A904F50C7069 +:10639000E6F72CF900A904F5067000F037F800289C +:1063A00094D19DF8030010F00300D4D00128F1D15E +:1063B00004F10C02294600A8DDF7E6FEBDF8010055 +:1063C0000028E7D0DDF809009DF80310490718D52B +:1063D0000421ADF803100121ADF8011002220DF1E6 +:1063E0000301DBF744FE02220DF10101DDF8090093 +:1063F000801CDBF73CFE00A904F50C70E6F7F6F80C +:10640000C8E7DEF7B1FCC5E72864002030B581B0ED +:1064100004460D46DCF7D7FE0A48A16829B9407842 +:1064200008B9DCF7CAFE012009E00178491C0170B7 +:1064300029462046EAF7C0F8DCF768FF002001B0E3 +:1064400030BD00BF243800200FB400B595B0002047 +:10645000019000900D220146DEF77AFA022801D160 +:1064600002204AE0754A01201060BDF85A000190F0 +:106470009DF859000090012803D14FF480700090DE +:1064800015E0022803D14FF4007000900FE00328BC +:1064900003D14FF48060009009E0042803D14FF449 +:1064A0000060009003E0052801D11020009000A9B1 +:1064B00001A8FEF7ADFEB4208DF8350046208DF81A +:1064C000360001208DF8370000208DF808000320E9 +:1064D00003900DF111000DA92022DEF7F1FB0A2037 +:1064E0008DF810000020ADF8320002A8DEF7E2FAC5 +:1064F000002801D1022000E0012015B05DF814FB56 +:1065000000B593B0B4208DF8010046208DF802004C +:1065100001208DF803008DF82000032009900DF173 +:10652000290000A92022DEF7CBFB0A208DF82800E5 +:106530000020ADF84A0008A8DEF7BCFA002801D117 +:10654000032002E0FEF730FF012013B000BD30B59C +:1065500095B000A8DEF762FA0BA8EEF7D1FE374C33 +:10656000BDF83A002071204600A991EC030AFEF71D +:1065700021FF0546607A85420ED0022D05D101200B +:1065800000F03CF80120207206E0012D04D101202A +:1065900000F034F8022020726572012015B030BD81 +:1065A00080B5DEF7D3F92549C86000220A72244974 +:1065B000C0F8181200F50670224941602249816036 +:1065C0000FF20D01C1600FF23D010161012002BD1A +:1065D0001A48C06890F80902002801D100207047CD +:1065E00008E080B5154800210172084600F006F861 +:1065F000012002BD154890F900007047134908704A +:106600007047000018B430220B7812FB03030124FA +:106610001C700B7812FB03035C700B7812FB0303F6 +:106620000D249C700B7812FB0300044A127AC2708E +:106630000878401C087011BCD3E7000050FD002012 +:1066400049640308016503084F65030869FE0020DB +:106650000FB410B5A0B09DF889005849087001200A +:106660008DF88B00AA208DF889003C208DF88A00D7 +:1066700000208DF80000032001900DF1090022A9EF +:106680002022DEF71DFB0A208DF8080000A8DEF7A7 +:1066900011FA002805D10FF26C10D9F73EFD022047 +:1066A00014E00BA8EAF7C1FE454C54220021204615 +:1066B000DBF7E3FC00216165A16554220BA9DBF740 +:1066C000D6FC0FF25410D9F728FD012020B010BCE1 +:1066D0005DF814FB80B50A210320E6F79CF9032836 +:1066E00001D1032002BD0FF23C10D9F716FD0120A5 +:1066F00002BD80B5DEF72AF9304948603149C0F85B +:10670000001100F58070304941600FF26D01816029 +:106710000FF20D01C1600FF2B5010161012002BD50 +:1067200010B594B0254C606890F8F10000281BD09B +:106730002078002818D0012012901190204984B0B0 +:1067400068465422DEF7CCFA0FBCE7F701FB01469E +:10675000C9B22078814207DB0FF2D400D9F7DDFC03 +:1067600000F005F8012000E0002014B010BD13482F +:10677000002101700120704700B595B000A8EAF72C +:1067800054FE0F48416D491C4165012902D1009911 +:1067900081650FE033290DD300214165816D009A99 +:1067A000914207D1542200A9DBF761FC0FF294005B +:1067B000D9F7B3FC012015B000BD000018FE002081 +:1067C00074EB002051660308D566030810B50C462B +:1067D0003021227811FB020201231370227811FB71 +:1067E00002025370227811FB020206239370227872 +:1067F00011FB02000121C170FFF7B9FF2078401C96 +:10680000207010BD50443A205065646F4F70656E23 +:106810004661696C2053530050443A20534320533F +:106820005441000050443A2053432053544F000039 +:1068300050443A2044696666537465704F766572B9 +:106840002025640050443A20534320524553455478 +:10685000000000003C0A560A700A8B0AA60AC10A08 +:10686000DD0AF80A150B310B4E0B6B0B880BA50BD1 +:10687000C30BE10B000C1E0C3D0C5D0C7C0C9C0C46 +:10688000BD0CDD0CFE0C1F0D410D630D850DA80D1B +:10689000CB0DEE0D120E360E5A0E7F0EA40ECA0E42 +:1068A000EF0E160F3C0F630F8B0FB30FDB0F0310B0 +:1068B0002C1056108010AA10D41000112B11571153 +:1068C0008311B011DE110B12391268129712C71220 +:1068D000F712271359138A13BC13EF1322145514FC +:1068E0008914BE14F31429155F159515CD150416DA +:1068F0003D167616AF16E91624175F179B17D817A3 +:10690000151852189118CF180F194F199019D1193D +:10691000131A561A9A1ADE1A221B681BAE1BF51B95 +:106920003D1C851CCE1C181D621DAD1DF91D461E8B +:10693000941EE21E311F811FD11F23207520C82005 +:106940001C217121C7211D227422CD2226238023E0 +:10695000DA2336249324F1244F25AF250F26712600 +:10696000D32636279B2700286728CE283629A0293A +:106970000B2A762AE32A512BC02B302CA12C132D65 +:10698000862DFB2D712EE82E602FD92F5330CF305E +:106990004C31CA314A32CA324C33D0335434DA34EF +:1069A0006235EA35743600378D371B38AA383C39E2 +:1069B000CE39623AF83A8F3B273CC13C5D3DFA3D07 +:1069C000983E383FDA3F7E402341CA4172421C4321 +:1069D000C84376442545D64589463D47F447AC48EB +:1069E0006649224ADF4A9F4B614C244DEA4DB14E25 +:1069F0007B4F46501451E351B55289535E5436557E +:106A00001156ED56CB57AC588F59745A5C5B465CA7 +:106A1000325D215E125F0560FB60F361EE62EB6345 +:106A2000EB64ED65F266FA670469116A206B336CFA +:106A3000486D5F6E7A6F9770B871DB7201742A755A +:106A400056768577B778EC79247B5F7C9D7DDF7EF9 +:106A5000248000003D0A580A720A8D0AA80AC30A57 +:106A6000DF0AFB0A170B330B500B6D0B8A0BA70BBE +:106A7000C50BE30B020C210C400C5F0C7F0C9F0C30 +:106A8000BF0CE00C010D220D430D650D880DAA0D04 +:106A9000CD0DF10D140E380E5D0E820EA70ECC0E2C +:106AA000F20E180F3F0F660F8D0FB50FDD0F06109A +:106AB0002F1059108210AD10D71002112E115A113B +:106AC0008611B311E1110E123D126B129A12CA1205 +:106AD000FA122B135C138D13BF13F21325145914E0 +:106AE0008D14C114F6142C1562159915D0150816BD +:106AF00040167916B316ED16281763179F17DB1784 +:106B0000181856189418D318131953199419D5191D +:106B1000181A5A1A9E1AE21A271B6C1BB31BF91B70 +:106B2000411C891CD21C1C1D671DB21DFE1D4B1E65 +:106B3000981EE71E361F861FD61F28207A20CD20DC +:106B400021217621CC2122227A22D2222B238523B5 +:106B5000E0233C249924F6245525B52515267726CF +:106B6000D9263C27A12706286D28D4283D29A62907 +:106B7000112A7D2AE92A572BC62B362CA82C1A2D30 +:106B80008D2D022E782EEF2E672FE02F5B30D63022 +:106B90005331D2315132D2325433D8335C34E234AF +:106BA0006A35F2357D36083795372338B33844399E +:106BB000D7396B3A003B973B303CCA3C663D033EBD +:106BC000A23E423FE43F87402D41D3417C422643D1 +:106BD000D24380442F45E04593464847FE47B64898 +:106BE00071492D4AEB4AAA4B6C4C304DF54DBD4EC8 +:106BF000864F52502051EF51C15295536B5443551B +:106C00001D56FA56D857B9589C59825A695B535C3D +:106C1000405D2F5E205F136009610162FC62FA63D0 +:106C2000FA64FC65016709681369206A306B426C7D +:106C3000586D6F6E8A6FA870C871EB7212743B75D5 +:106C400067769677C878FD79367B717CB07DF17E6A +:106C500036807F817548002101608160C16041619B +:106C60000161C161016281614160704730B52DED04 +:106C7000028B044694ED020A6C4D6868002803D12B +:106C800085ED060A01206860D5ED060A30EE608ABF +:106C900085ED060A2068DAF701FE21F000410022A6 +:106CA000634BDBF7CDF921D26068DAF7F7FD21F00D +:106CB000004100225E4BDBF7C3F917D294ED020AC4 +:106CC000DFED570AB4EE600AF1EE10FA0EDB18EEB3 +:106CD000100ADAF7E3FD21F00041564A564BDBF784 +:106CE000AFF903D22868401C286001E0002028602A +:106CF0002868052808DB2068E861606828620020B1 +:106D000068602860012000E00020BDEC028B30BDEF +:106D100070B52DED028B06460024444D96ED000A19 +:106D2000D5ED070A30EE608A96ED010AD5ED080A26 +:106D300070EE608A686900283ED118EE900ADAF792 +:106D4000ADFD21F0004101224FF08043DBF760F9F7 +:106D500003D8FFF77FFF04205EE09FED320AB4EE18 +:106D6000408AF1EE10FA05DBE868401CE860204636 +:106D7000A8600FE09FED2C0AB4EE408AF1EE10FA05 +:106D800005D5A868401CA8602046E86002E02046BF +:106D9000E860A860A868112805DB14460020A860F8 +:106DA0001046686137E0E868112834DB02240020CF +:106DB000E860104668612EE001282CD118EE100A18 +:106DC000DAF76CFD21F000414FF033321B4BDBF75B +:106DD00037F917D218EE900ADAF760FD21F000417A +:106DE0002246174BDBF72CF90CD296ED020ADFEDA9 +:106DF0000C0AB4EE600AF1EE10FA03DB2869401CBD +:106E0000286101E0204628612869032803DB204629 +:106E10006861286103242046BDEC028B70BD000030 +:106E2000010010416766263F666626BF4CFC0020C5 +:106E30000000E03F9A9999999999C93F3333E33F0C +:106E40000000F03F0FB480B51A2200210846DDF79C +:106E50007FFD022801D102200EE01A22012100202C +:106E6000DDF776FD022801D1022005E01A20E5F7C2 +:106E700005FCFEF731FC012002BC5DF814FB80B577 +:106E80001A2200210120DDF763FD022801D1022032 +:106E900002BD1A2201210846DDF75AFD022801D160 +:106EA000022002BD012002BDF0B52DED028B8BB09A +:106EB0004A48846BA069E1684518002600A8DDF700 +:106EC000ADFD9FED478B0398DAF7E8FC53EC182BE8 +:106ED000DAF77AFFDAF7F8FD28800498DAF7DEFCB3 +:106EE00053EC182BDAF770FFDAF7EEFD688005989F +:106EF000DAF7D4FC53EC182BDAF766FFDAF7E4FD87 +:106F0000A8803C4F3878002809D1381D03A9D1EC5E +:106F1000031A00A991EC030AFEF70CFC0646012EA9 +:106F200002D10120387006E03878002803D1002013 +:106F3000B880F8803881B888E880F8882881388956 +:106F400068810120A0770BB0BDEC028BF0BD80B54D +:106F5000DDF7FCFC244908602449C0F8201400F245 +:106F6000204023494160244981600FF21101C16032 +:106F70000FF235010161012002BD00001A480068CE +:106F800090F81104002801D10020704705E080B579 +:106F9000002000F006F8012002BD184890F900001A +:106FA000704716490870704718B430220B7812FBEE +:106FB000030301241C700B7812FB03035C700B7835 +:106FC00012FB03031A249C700B7812FB03000022AF +:106FD000C2700878401C087011BCD8E7000000207F +:106FE00089AD84FA0A74313F3CFE0020456E0308E7 +:106FF0007F6E0308A8FD0020A96E030867FE00202D +:107000000FB480B50FF21010D9F787F811220921BB +:107010000020DDF79DFC022805D10FF21010D9F7F2 +:107020007CF8022000E0012002BC5DF814FB80B572 +:107030000FF20410D9F771F8112209210120DDF7B0 +:1070400087FC032805D10FF20410D9F766F8032056 +:1070500002BD012002BD01207047000010B50FF2F3 +:10706000F800D9F75AF8264CDDF770FC2060D9F704 +:107070006BFA606020682349C0F8B81200F52E70E2 +:1070800021494160214981600FF20D01C1600FF279 +:1070900039010161012010BD1948006890F8A9026A +:1070A000002801D10020704705E080B5002000F0E5 +:1070B00006F8012002BD174890F9000070471549F5 +:1070C000087070470000000018B430220B7812FBE3 +:1070D000030301241C700B7812FB03035C700B7814 +:1070E00012FB030311249C700B7812FB0300084A67 +:1070F0001278C2700878401C087011BCD5E70000F7 +:10710000F8FD0020017003082F7003085770030872 +:107110005AFE002059FE00205374617274204368A7 +:1071200065636B4C696768744C7578005374617261 +:1071300074204661696C0000436865636B4C696745 +:1071400068744C75782053746F70000053746F70BE +:10715000204661696C000000436865636B4C696799 +:1071600068744C757820496E697400008168C26843 +:1071700091420BD107E002681168891853685B18C7 +:10718000C36008320260C2689142F4D04A1C826037 +:10719000087870472DE9F04D88B000F1080103919F +:1071A00001684A08039B03EBC20204920022059285 +:1071B000069200EB810101F10806406800F0010130 +:1071C0000291400806EBC00001900024154601E042 +:1071D000AC4205D10198864202D108B0BDE8F08DDD +:1071E00000F077F8074617F0030803D100F071F8B4 +:1071F00000F10308381100900F2819D100F069F848 +:107200000F30009014E000F064F88246AC420DD1DB +:107210000198864208BFECF73DFB3468029800B144 +:107220004C44706805190836AC42F1D004F801AB43 +:10723000B8F10108E7D100980028C9D000F049F85A +:107240008046B81000F00300032804BF03A8FFF72E +:107250008DFF37462146AB4608EB002006E0801A3A +:10726000083F79683A6801EB020B59463A688A1A76 +:107270008242F4D3404200EB010A4FF0000805E0DF +:107280009DF81C0004F8010B08F101080098801C0F +:1072900080459DD0DA4507D157F804AB57F8040B69 +:1072A00000EB0A0BDA45F7D01AF8010B8DF81C0039 +:1072B000AC42E5D10198864208BFECF7EBFA34689E +:1072C000029800B14C44706805190836AC42F1D000 +:1072D000D6E703A84AE700000FB480B50FF21810F4 +:1072E000D8F71BFF0F2201210020DDF731FB022818 +:1072F00005D10FF21410D8F710FF022000E0012092 +:1073000002BC5DF814FB80B50FF20810D8F705FF3A +:107310000F2201210846DDF71BFB032805D10FF2E0 +:107320000410D8F7FAFE032002BD012002BD80B58B +:10733000012000F035F8002000F02BF8012002BDFC +:1073400080B50FF2EC00D8F7E8FEDDF7FFFA24492C +:1073500008602449C0F8681200F51A70224941609B +:10736000224981600FF20D01C1600FF23D01016100 +:10737000012002BD1A48006890F85902002801D186 +:107380000020704708E080B5002000F009F80120D7 +:1073900002BD174908707047164890F90000704701 +:1073A000144908707047000018B430220B7812FBA3 +:1073B000030301241C700B7812FB03035C700B7831 +:1073C00012FB03030F249C700B7812FB0300084A86 +:1073D0001278C2700878401C087011BCD3E7000016 +:1073E0002CFE0020D9720308077303082F730308CB +:1073F0005FFE00205EFE00205374617274204779A6 +:10740000726F2054656D7000537461727420466110 +:10741000696C00004779726F2054656D7020537459 +:107420006F70000053746F70204661696C0000003B +:107430004779726F2054656D7020496E6974000041 +:1074400052480021017041608160704770B5044668 +:1074500000254E4E307800282CD12068DAF71EFA2D +:1074600021F000412A464A4BDAF7EAFD19D260685A +:10747000DAF714FA21F000412A46454BDAF7E0FD2D +:107480000FD2A068DAF70AFA21F000410122414B3D +:10749000DAF7BEFD05D87068401C70602846B06001 +:1074A00004E0B068401CB060284670607068052831 +:1074B00062DB28E0032837D12068DAF7EFF921F002 +:1074C00000412A46324BDAF7BBFD17D26068DAF783 +:1074D000E5F921F000412A462D4BDAF7B1FD0DD236 +:1074E000A068DAF7DBF921F000410122294BDAF735 +:1074F0008FFD03D87068401C706001E02846706002 +:107500007068052840DB94ED020AB5EE400AF1EE02 +:1075100010FA03DD01252846307002E002252846D6 +:107520003070002070602FE0012801D002282BD19C +:107530002068DAF7B3F921F000410122144BDAF7A1 +:1075400067FD13D96068DAF7A9F921F0004101223B +:107550000F4BDAF75DFD09D9A068DAF79FF921F042 +:1075600000412A460B4BDAF76BFD03D2B068401C92 +:10757000B06001E01046B060B068052804DB032568 +:10758000284630700020B060284670BDD8FD00202D +:107590000000F83F000021404B480021017041608D +:1075A0008160704770B506460024474D2878002852 +:1075B0002BD13068DAF772F921F000412246434BB3 +:1075C000DAF73EFD18D27068DAF768F921F0004169 +:1075D00022463E4BDAF734FD0ED296ED020ADFED7D +:1075E000390AB4EE600AF1EE10FA05DB6868401C57 +:1075F00068601046A86004E0A868401CA8601046B7 +:1076000068606868052853DB27E002282BD13068C2 +:10761000DAF744F921F0004122462C4BDAF710FD4D +:1076200016D27068DAF73AF921F000412246274B6A +:10763000DAF706FD0CD296ED020ADFED220AB4EE6F +:10764000600AF1EE10FA03DB6868401C686001E034 +:10765000104668606868052832DB012420462870DF +:10766000104668602CE001282AD13068DAF716F954 +:1076700021F000410122154BDAF7CAFC12D97068DB +:10768000DAF70CF921F000410122104BDAF7C0FCC7 +:1076900008D996ED020AF2EE020AB4EE600AF1EEA3 +:1076A00010FA03D5A868401CA86001E02046A86035 +:1076B000A868052804DB0224204628700020A86062 +:1076C000204670BD0100104160FD00200000E03F39 +:1076D0000FB480B5142200210846DDF739F90228DD +:1076E00001D1022005E0FFF7B5FA41480021017001 +:1076F000012002BC5DF814FB80B51422002101209A +:10770000DDF726F9032801D1032002BD3848002106 +:107710000170012002BD10B5354C606894F900106D +:10772000002903D1FFF7A2FA20700DE0FFF7F0FA6D +:1077300040B2002808D0042804D06070012000F076 +:1077400037F801E000202070012010BD10B5284C52 +:10775000DDF7FCF8A060D8F7F7FE606000206070ED +:10776000A0682449C0F8301300F54C7022494160EC +:10777000224981600FF20D01C1600FF23D010161EC +:10778000012010BD1A48806890F82103002801D11B +:107790000020704708E080B5154800214170084678 +:1077A00000F006F8012002BD154890F9000070476E +:1077B000134908707047000018B430220B7812FB90 +:1077C000030301241C700B7812FB03035C700B781D +:1077D00012FB030314249C700B7812FB0300044A71 +:1077E0005278C2700878401C087011BCD3E70000C2 +:1077F00078FD0020D1760308F9760308177703088F +:1078000055FE00200FB480B5122200210846DDF796 +:107810009FF8022801D1022005E0FEF795FA4148C1 +:1078200000210170012002BC5DF814FB80B512221A +:1078300000210120DDF78CF8032801D1032002BDCF +:10784000384800210170012002BD10B5354C606838 +:1078500094F90010002903D1FEF784FA20700DE09E +:10786000FEF7D2FA40B2002808D0032804D0607096 +:10787000012000F037F801E000202070012010BD49 +:1078800010B5284CDDF762F8A060D8F75DFE6060A7 +:1078900000206070A0682449C0F8E01200F538703C +:1078A00022494160224981600FF20D01C1600FF24F +:1078B0003D010161012010BD1A48806890F8D10295 +:1078C000002801D10020704708E080B5154800214C +:1078D0004170084600F006F8012002BD154890F9F5 +:1078E00000007047134908707047000018B4302238 +:1078F0000B7812FB030301241C700B7812FB0303AB +:107900005C700B7812FB030312249C700B7812FB43 +:107910000300044A5278C2700878401C087011BCF9 +:10792000D3E7000084FD0020057803082D780308C4 +:107930004B78030856FE00200FB480B510220121B9 +:107940000020DDF705F8022801D1022002E0FEF751 +:107950001FFB012002BC5DF814FB80B51022012141 +:107960000846DCF7F5FF032801D1032002BD012002 +:1079700002BD30B58BB000A8DDF750F803A890EC3D +:10798000030AFEF70BFB0446324D2878A0420FD0C5 +:10799000012C05D1012000F03DF80120687006E0BF +:1079A000022C04D1012000F035F8022068702C7000 +:1079B00001200BB030BD80B5DCF7C8FF2549486019 +:1079C00000224A702449C0F8901200F5247023491F +:1079D0004160234981600FF21101C1600FF23D0146 +:1079E0000161012002BD00001A48406890F8810240 +:1079F000002801D10020704708E080B5154800211B +:107A00004170084600F006F8012002BD154890F9C3 +:107A100000007047134908707047000018B4302206 +:107A20000B7812FB030301241C700B7812FB030379 +:107A30005C700B7812FB030310249C700B7812FB14 +:107A40000300044A5278C2700878401C087011BCC8 +:107A5000D3E70000C87B0020397903085B7903086D +:107A600073790308FA7B00200901002806D500F08D +:107A70000F003D4A801800F8041C70473B4A8154AF +:107A8000704710B5B0F1807F01D3012010BD384C94 +:107A90000002000A401E60600F214FF0FF30FFF728 +:107AA000E3FF0020A06007202060002010BD10B57B +:107AB000304C2078401C207000F06AF820780128B3 +:107AC00004D16068002801D0DBF773FB2078401EEA +:107AD000207010BD10B5DBF776FB264C6078401C9B +:107AE000607000F091F8244800684FF47A71B0FBA0 +:107AF000F1F0FFF7C6FF002800D0FEE71F4820493D +:107B000001600E214FF0FF30FFF7AEFF6078401E9E +:107B10006070C0B2002803D1BDE81040DBF74DBB58 +:107B200010BD0000174C4FF400512046E1F71EFF36 +:107B300030BF4FF400512046E1F716FFF3E7000095 +:107B40001EF0040F0CBFEFF30880EFF3098000F084 +:107B50001DB80D480168002905D5016841F00041B4 +:107B6000016000F0B1B8FEE718ED00E000E400E0CD +:107B700010E000E024380020B838002008ED00E0D4 +:107B800000000008001002402CED00E0E2F74DBCC0 +:107B900010B50948016A491C0162426A891A5CBF32 +:107BA000012181710548046824B160688047246818 +:107BB000002CFAD110BD00BF24380020F07B00203B +:107BC00080B54FF44070E2F795FF3348016841F407 +:107BD000700101603148016841F00101016000213C +:107BE000816001682E4A114001602E4941600168A0 +:107BF00021F4802101600021C16000F02CF82A48A6 +:107C00004FF00061016001BD2848416801F00C019E +:107C1000274A082913D10168036803F03F03B2FB28 +:107C2000F3F20168C1F3881151430268C2F30142C3 +:107C3000521C5200B1FBF2F11E4A116101E01D49D4 +:107C40000A611C494068C0F30310405C0A6922FACB +:107C500000F0086170471548C16B41F08051C16365 +:107C600041684160416841604168416008210160AC +:107C700011494FF4C0620A60416821F4000141607B +:107C80000E480F4901600F48016821F4404141F45A +:107C9000804101607047000088ED00E0003802403C +:107CA000FFFFF6FE1030002408ED00E0043802402B +:107CB0000024F400A8380020003C02408438024030 +:107CC0004031004000700040019810F0040006BFF1 +:107CD000EFF308800830EFF30980816901F10201B8 +:107CE000816170470FB480B5072200210846DCF798 +:107CF0002FFE022801D1022004E09DF80800FCF7C5 +:107D00005BF9012002BC5DF814FB80B5072200215D +:107D10000120DCF71DFE032801D1032002BD012054 +:107D200002BD10B582B000208DF80000314C00A9D2 +:107D30006068FCF757F9002806D0012000F03BF8F6 +:107D40009DF8000020706070012016BD10B5294C10 +:107D5000DCF7FCFDA060D8F7F7FB60600020207026 +:107D6000A0682549C0F8281100F5947023494160A6 +:107D7000234981600FF20D01C1600FF241010161E1 +:107D8000012010BD014600201A4A926892F819217C +:107D9000002A02D0002900D109E0704780B51548BB +:107DA00000210170084600F006F8012002BD1548C8 +:107DB00090F90000704713490870704718B43022DA +:107DC0000B7812FB030301241C700B7812FB0303D6 +:107DD0005C700B7812FB030307249C700B7812FB7A +:107DE0000300044A1278C2700878401C087011BC65 +:107DF000D4E70000907B0020E57C03080B7D03089E +:107E0000237D0308F97B00200FB480B515220021E3 +:107E10000846DCF79DFD022801D1022002E0FFF7B1 +:107E2000BBFB012002BC5DF814FB80B515220021CC +:107E30000120DCF78DFD032801D1032002BD0120C4 +:107E400002BD10B531484068FFF7ACFB044664B290 +:107E5000002C05D0012000F037F8204600F037F85C +:107E6000012010BD10B5294CDCF770FDA060D8F7DB +:107E70006BFB606000202070A0682549C0F8581393 +:107E800000F5567023494160234981600FF20D01CE +:107E9000C1600FF241010161012010BD1B488068E3 +:107EA00090F84903002801D10020704708E080B510 +:107EB000164800210170084600F006F8012002BDB6 +:107EC000164890F9000070471449087070470F4930 +:107ED0000870704718B430220B7812FB030301249A +:107EE0001C700B7812FB03035C700B7812FB03030E +:107EF00015249C700B7812FB0300044A1278C270A0 +:107F00000878401C087011BCD1E700009CFD0020DF +:107F1000097E03082B7E0308437E03085CFE0020D5 +:107F20000FB480B5172200210846DCF711FD0228A6 +:107F300001D1022002E0FFF783FA012002BC5DF8C4 +:107F400014FB80B5172200210120DCF701FD032876 +:107F500001D1032002BD012002BD10B531484068A7 +:107F6000FFF774FA044664B2002C05D0012000F03B +:107F700037F8204600F037F8012010BD10B5294C25 +:107F8000DCF7E4FCA060D8F7DFFA60600020207026 +:107F9000A0682549C0F8A81300F56A70234941601C +:107FA000234981600FF20D01C1600FF241010161AF +:107FB000012010BD1B48806890F89903002801D16A +:107FC0000020704708E080B516480021017008467F +:107FD00000F006F8012002BD164890F90000704735 +:107FE0001449087070470F490870704718B4302260 +:107FF0000B7812FB030301241C700B7812FB0303A4 +:108000005C700B7812FB030317249C700B7812FB37 +:108010000300044A1278C2700878401C087011BC32 +:10802000D1E70000C0FD0020217F0308437F030843 +:108030005B7F030868FE00204BDF3CE02BE119E288 +:1080400005E3F0E3D9E4C0E5A5E687E768E846E99B +:1080500021EAF9EACFEBA1EC70ED3BEE03EFC6EFBE +:1080600086F041F1F8F1AAF257F300F4A3F441F5D8 +:10807000DAF56DF6FBF684F706F884F8FBF86EF98E +:10808000DAF942FAA4FA00FB58FBABFBF9FB42FC1D +:1080900087FCC8FC04FD3DFD72FDA3FDD1FDFCFD88 +:1080A00023FE48FE6AFE8AFEA8FEC3FEDCFEF3FE47 +:1080B00009FF1CFF2FFF40FF63019701D201160249 +:1080C0006302BC02200393031604AA04530512069C +:1080D000EA06DE07F108260A800B020DB00E8D10AD +:1080E0009B12DD145417011AE51CFD1F4823C126FD +:1080F000642A2A2E0C320136FF39FD3DF241D44567 +:108100009A493D4DB75001541A57FD59AA5C215F59 +:10811000636171634E65FC667F68D9690D6B206C85 +:10812000146DEC6DAB6E546FE86F6B70DE70427166 +:108130009B71E8712C72677210B582B0DBF766F93B +:10814000FFF7C8FCFEF7ABF81A4C4FF480600090C4 +:108150002346194A642104F500501C3000F036F81B +:108160004FF4A050009004F58063144A4B2104F5AD +:10817000005000F02BF84FF48060009004F5C053DD +:108180000F4A322104F50050383000F01FF84FF448 +:108190008060009004F5E0530A4A0A2104F500507B +:1081A000543000F013F8084801210170DAF7E3FFBA +:1081B000002016BDF0380020BF4B0308B36203084F +:1081C00029D60108AB620308FE7B0020F0B482B020 +:1081D0000025069C00262F46AC46A0E8E010E0C033 +:1081E0001C380C4D4174017C2D7802B02943017478 +:1081F000E118C908C90041F8506D4FF080734B6415 +:10820000054B0B64CA646FF002024A624160F0BC25 +:10821000DBF7C7B8FF7B00206B31010843F6300164 +:10822000C4F202014FF09F020A6040F20000C4F263 +:1082300002004FF6FF73CAF6FF3303604FF6BF63C9 +:10824000CFF6FF7300F5806003604FF6FF73CFF643 +:10825000FF7300F58060036000F58060036000F547 +:108260008060036040F20F03C0F2000341F600405B +:10827000C4F2020003604FF000020A600148804728 +:1082800001480047C17B0308E1840308000100FFA7 +:108290000000000001FF000000FF0000000100FFDF +:1082A00000010000000001010000000100000001C9 +:1082B00000FF00FF00000000FF01000000FF0000C1 +:1082C00000FF0001000100000000FFFF00000001AE +:1082D000000000FF80B5DCF739FB064981630649E1 +:1082E000C16306490164064941640649816401206D +:1082F00002BD0000014C0108FD4B0108094C0108BA +:108300000D4C0108114C010810B50749794418318A +:10831000064C7C44163404E0081D0A68511888474E +:108320000146A142F8D110BD74000000C000000059 +:10833000917B0108B17C0108E77C0108077D0108F9 +:1083400000000000F57F010800000000A180010886 +:108350000B7D0108917B0108B17C0108E77C0108D5 +:10836000077D0108000000008B7F0108000000006D +:10837000A18001080B7D0108D9610108FB6101089A +:10838000DF6201086D63010800000000C16301089D +:1083900000000000F76C0108216D01084F95FDFFFA +:1083A00010430000F0380020D84E000094AF0020A9 +:1083B00000000000E1EDFFFF0200000002000000ED +:1083C0002CB6FCFF5700000000AC00209403000016 +:1083D000C5EDFFFF020000000200000067B6FCFFD1 +:1083E000D603000000000020EE3800005B494E5626 +:1083F0004E5D616363655F736869667428256429EF +:108400003A20256420256420256400004EF688511A +:10841000CEF20001086840F4700008604FF0007070 +:10842000E1EE100A704700000A5B494E564E5D416E +:108430004343454C5F4D474D5432203A202564005C +:108440000120C046002801D0FFF75EFF0020FFF7A3 +:1084500073FE00F000F800F001B80000074638464F +:10846000F0F726FEFBE70000100000000800000007 +:1084700004000000020000000100000041522D2510 +:10848000642C25642C25642C25640000474D2D495F +:108490004F46202564000000474D2D4346202564AB +:1084A00000000000474D2D52463120256400000099 +:1084B000474D2D5246322025640000005203000033 +:1084C000EE020000EE0200000000000000000000CC +:1084D0000000000047797243616C3D256400000094 +:1084E000C046C046FFF792FFFFF7AAFF4148532D51 +:1084F000453200004148532D453300004148532D7B +:10850000453400004148532D453100005354302D6F +:108510003200000041522D534C50000041522D5367 +:108520005442000041432D52463100004149532D31 +:10853000534C5000474D2D5246310000474D2D50B1 +:1085400046310000474D2D5046320000474D2D4F1B +:1085500000000000474D2D534B495000890E830FFA +:108560007D10771147522D534C50000047522D5328 +:108570005442000047522D52463100004748532DC7 +:10858000453200004748532D453300004748532DDE +:10859000453400004748532D453500004748532DCA +:1085A000453600004748532D453700004748532DB6 +:1085B000453800007F7F7F000000000000000000C1 +:1085C000FCF7BEBAFFF7BCBAFCF7C4BAFCF7CCBAEA +:1085D000FCF7D4BAFCF7DCBAFCF7E4BADAF798BDDA +:1085E000FFF765BAFFF7FEBFFFF7FEBFFFF7FEBF5D +:1085F000FCF7CBBCFFF7FEBFFFF7FEBFFCF7BBBB32 +:10860000FCF73CBCFCF762BCFFF7FEBFFFF7FEBF08 :10861000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF8E -:10862000FFF7FEBFFCF7BABAFFF7FEBFFFF7FEBFCA -:10863000FFF7FEBFFFF7FEBFFCF754BCFCF7C4BC5E +:10862000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF7E +:10863000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF6E :10864000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF5E -:10865000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF4E +:10865000FFF7FEBFFFF7FEBFE8F7C9BCFFF7FEBF9D :10866000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF3E -:10867000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF2E -:10868000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF1E +:10867000FCF7A4BAFFF7FEBFFFF7FEBFFFF7FEBF90 +:10868000FFF7FEBFFCF753BCFCF7C3BCFFF7FEBF10 :10869000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF0E :1086A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFFE :1086B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFEE :1086C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFDE :1086D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFCE +:1086E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFBE +:1086F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFAE +:10870000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF9D +:10871000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF8D +:0C872000FFF7FEBFFFF7FEBFFFF7FEBF34 :00000001FF diff --git a/firmware/ssp_stm_hestia.fw.ihex b/firmware/ssp_stm_hestia.fw.ihex new file mode 100755 index 000000000000..f9eaed924306 --- /dev/null +++ b/firmware/ssp_stm_hestia.fw.ihex @@ -0,0 +1,21766 @@ +:1000000000200020450003087DA1020891A10208FC +:10001000A5A10208B9A10208CDA1020800000000B4 +:10002000000000000000000000000000E1A1020844 +:10003000F5A1020800000000114A000887A6000888 +:100040005D03030861030308650303089BA7020817 +:100050006D030308F7A802084DA40208DDA50208F5 +:1000600069A60208810303088503030889030308BE +:100070008D030308910303089503030899030308FC +:100080009D030308A1030308A5030308A9030308AC +:10009000AD030308B1030308B5030308B90303085C +:1000A000BD030308C1030308C5030308C90303080C +:1000B000CD030308D1030308D5030308D9030308BC +:1000C000DD030308E1030308E50303080DA20208AA +:1000D000ED030308F1030308F5030308F90303081C +:1000E00007A702085BA8020805040308090403081F +:1000F0000D04030811040308150403081904030878 +:100100001D04030821040308250403082904030827 +:100110002D040308310403083504030839040308D7 +:100120003D04030841040308450403084904030887 +:100130004D04030851040308550403085904030837 +:100140005D040308610403086504030869040308E7 +:100150006D04030871040308750403087904030897 +:100160007D04030881040308850403088904030847 +:100170008D040308910403089504030899040308F7 +:100180009D040308A104030838B5DFF8CC4C002017 +:10019000E06120626062A062E062A081DFF8BC0CD6 +:1001A000E063DFF8BC0C206460643220E0824FF42E +:1001B00096702083DFF8AC5C4FF42072002105F1CB +:1001C000400002F04BF84FF42072002105F530702A +:1001D00002F044F89022002105F5B86002F03EF8E4 +:1001E00040220021284602F039F840220021DFF8A1 +:1001F0003C0D02F033F840220021DFF8340D02F00C +:100200002DF840220021DFF82C0D02F027F84022C3 +:10021000002105F5A86002F021F84022002105F533 +:10022000B06002F01BF840220021DFF80C0D02F054 +:1002300015F840220021DFF8040D02F00FF8052226 +:100240000021204602F00AF805220021DFF8F00C18 +:1002500002F004F805220021DFF8D40D01F0FEFFC2 +:100260000020A0822063A0632061A0606063E0643E +:100270000220A07331BD80B50FF2100002F092F899 +:10028000DFF8D40B0021017301BD00004C54205352 +:10029000746F70007047DFF8C01B4FF47A725043E0 +:1002A000C86301460FF2040002F07CB84C5420539E +:1002B0005044202564000000DFF89C2B4FF47A7135 +:1002C00048431064014651640FF2040002F06AB81A +:1002D0004C5420575044202564000000DFF8781B60 +:1002E000C88201460FF2040002F05CB84C5420535F +:1002F0005220256400000000DFF85C1B08830146E3 +:100300000FF2040002F04EB84C5420534152202505 +:10031000640000000EB410B587B0DFF8184DBDF8CA +:100320006E0000281ED1DFF8100DD0E90023CDE9C2 +:100330000223D4E90001CDE90001DDE9022300F048 +:1003400088FFDFF8141BC96B4FF47A724243914265 +:1003500006D201460FF2280002F024F801200AE03C +:10036000002008E004A802F00DFB204604A90522A5 +:1003700002F0B8FB002007B010BC5DF810FB0000D5 +:100380004C542053544F5020436865636B696E672B +:1003900020256400DFF8C00A01210162C16100214B +:1003A0008162C1627047DFF8B00A01214162C16118 +:1003B0007047DFF8A40AC0697047DFF89C0A002183 +:1003C000C1610FF2080001F0EDBF00004C54205253 +:1003D000455345545F434D4452440000DFF8780ACA +:1003E000002101620FF2040001F0DCBF4C542052E6 +:1003F000455345545F504F5352455100DFF8580A5A +:10040000002141620FF2040001F0CCBF4C54205295 +:10041000455345545F504F4941434B00DFF8380A7C +:10042000012181620021C16201727047DFF8280A50 +:100430000121C16270472DE9FC4106460F469046F6 +:10044000DFF8E84ADFF81C5A20462946402202F02D +:1004500059FB85ED000B85ED021B85ED042B85F81E +:10046000296085F82A7085F82B80D4E904230020C0 +:10047000014602F083FB0ED1D4E9002302F07EFB9B +:1004800009D1D4E9022302F079FB04D120462946A0 +:10049000402202F037FB95ED020B8DED000BD5E904 +:1004A00000230FF20C0001F07DFFBDE8F381000096 +:1004B0004C54205550504F5320256620256600008F +:1004C00030B583B0DFF89049A06A012815D1DFF874 +:1004D000605A2846DFF88C19402202F013FB95ED94 +:1004E000020B8DED000BD5E900230FF2140001F093 +:1004F00059FF0020A06201203EBD00203EBD00004B +:100500004C54203173742025662C20256600000091 +:1005100030B583B0DFF84049A06A012815D1DFF873 +:10052000145A2846DFF83C19402202F0EBFA95ED08 +:10053000020B8DED000BD5E900230FF2140001F042 +:1005400031FF0020A06201203EBD0020A0623EBD20 +:100550004C5420326E642025662C20256600000055 +:100560000020DFF8F418CA6A012A01D1C86201200C +:1005700070470FB400B59DB0DDE92E2302F00EFBED +:10058000CDE90C01DDE92001DDE9302302F006FBB5 +:10059000CDE90E010CA984B06846402202F0B2FAFF +:1005A0000FBC00F05DFD53EC102B0020DFF81C1E8B +:1005B00002F0B4FB41EC100B1DB05DF814FB000021 +:1005C0000FB470B52DED048B9CB0DFF88C58687AB1 +:1005D000002801D1002043E00A2801DB0A2600E0C0 +:1005E000AE7A9FED998B002422E0DFF8781801EBBA +:1005F000801000F530710CA8402202F083FA24A983 +:1006000084B06846402202F07DFA0FBCFFF7B1FFCC +:10061000B0EE409AF0EE609A51EC190B53EC182BA7 +:1006200002F05AFC03D2B0EE498AF0EE698A641CEB +:10063000E4B22046B042D8DB288B02F073FC0246BD +:100640000B4651EC180B02F047FC01D2002007E0EA +:1006500053EC182B0FF2140001F0A4FE0120E86403 +:100660001CB0BDEC048B70BC5DF814FB4C542053E3 +:1006700041204F55542025660000000030B585B05C +:10068000DFF8E04794F969058DF8000004F269503D +:1006900090F901108DF8011090F902008DF8020018 +:1006A000B4F86C05ADF80300DFF88C59D5E900010A +:1006B000CDE90201DDE90223DDE9000100F0C9FD19 +:1006C000C4F87805DFF89007D5E90023C0E90023D6 +:1006D00005B030BD0FB42DE9F0412DED088B84B08D +:1006E000DFF87447DFF87C57A07A05EB80109DEDAA +:1006F000120B80EDA00B00F520709DED140B80ED2A +:10070000020B9DED160B80ED040B2099816394F88C +:100710000980B8F10A0F01DB4FF00A089FEDBF8B8B +:10072000B0EE489AF0EE689AB0EE48AAF0EE68AAE9 +:1007300000261DE005EB861753EC182BD7E9B00116 +:1007400002F0FEFB41EC180B07F5307753EC192B48 +:10075000D7E9020102F0F4FB41EC190B51EC1A0B42 +:10076000D7E9042302F0ECFB41EC1A0B761CF6B23D +:100770004645DFDB404602F0D5FB41EC1B0B51EC5C +:10078000180B53EC1B2B02F04FFC05F5A862C2E9D5 +:10079000000105F2405651EC190B53EC1B2B02F0F3 +:1007A00043FCC6E9020151EC1A0B53EC1B2B02F07F +:1007B0003BFCC6E9040195F969058DF8000005F2D6 +:1007C000695797F901008DF8010097F902008DF83B +:1007D0000200B5F86C05ADF80300DFF85C88D8E9D5 +:1007E0000001CDE90201DDE90223DDE9000100F0AD +:1007F00030FD0246C5F87825D8E90001C4E90001BA +:100800000192B87800907B7895F86925617A0FF2AB +:10081000142001F0C7FD96ED020B8DED000B05F5E0 +:10082000A860D0E900230FF2606001F0BBFD032057 +:10083000A0730FF2044001F0B5FD04B0BDEC088BCD +:10084000BDE8F0015DF814FB00000000006AF8400C +:100850000FB42DE9F0472DED088B86B0DFF8D047B7 +:10086000DFF8D4A7DAE90001CDE90401D4E90001F9 +:10087000CDE90201DDE9042300F0EBFCDFF8D855F7 +:10088000A97ADFF8E06506EB81129DED160B82ED8B +:10089000B00B02F530739DED188B83ED028B9DED4F +:1008A0001A9B83ED049B237882F8E93202F2E92354 +:1008B00067785F70A7789F7000B2C2F8F802481C92 +:1008C000A872C0B20A2801D10020A872687A00F18B +:1008D000010885F809805FFA88F8A8F1010002F0A4 +:1008E00017FB41EC1A0B06F2405953EC1A2BD9E9CD +:1008F000020102F013FA53EC182B02F021FB41EC39 +:10090000180B53EC1A2BD9E9040102F007FA53EC47 +:10091000192B02F015FB41EC190B404602F002FBCB +:1009200041EC1B0B53EC1A2B06F5A86041680068DC +:1009300002F0F4F9DDE9162302F002FB53EC1B2B65 +:1009400002F072FB06F5A862C2E9000151EC180B37 +:1009500053EC1B2B02F068FBC9E9020151EC190BA7 +:1009600053EC1B2B02F060FBC9E9040106F2695746 +:10097000B8F1010F0AD1207886F86905607878709F +:10098000A078B870B4F80300A6F86C0596F969056C +:100990008DF8000097F901008DF8010097F9020029 +:1009A0008DF80200B6F86C05ADF80300DAE9000135 +:1009B000CDE90201DDE90223DDE9000100F049FC97 +:1009C0000246C6F87825DAE90001C5E9000101927E +:1009D000B87800907B7896F86925697A0FF2440020 +:1009E00001F0E0FC99ED020B8DED000B06F5A8601F +:1009F000D0E900230FF2904001F0D4FC687A01287E +:100A000005D10120A8730FF28C4001F0CBFC06B099 +:100A1000BDEC088BBDE8F0075DF814FB000000009A +:100A2000000000004C542025642053502025643AD7 +:100A300025643A25642C2025640000000FB42DE9BC +:100A4000F0472DED0A8B86B0DFF8ECA5DAE900015E +:100A5000CDE90401DFF8E804D0E90023CDE9022361 +:100A6000DDE90423DDE9020100F0F3FB8046DFF855 +:100A7000E843A07A461E36B2002E01D50A3636B2B9 +:100A8000607A02F04FFA41EC180BF64D05EB861632 +:100A900053EC182B05F5A8604168006802F03EF998 +:100AA000D6E9B02302F07AF841EC190B06F530775D +:100AB00005F2405953EC182BD9E9020102F02EF946 +:100AC000D7E9022302F06AF841EC1A0B53EC182B19 +:100AD000D9E9040102F022F9D7E9042302F05EF813 +:100AE00041EC1B0B9FEDE0CBD6E9B023DDE918010B +:100AF00002F026FA53EC1C2B02F010F9C6E9B00103 +:100B0000D7E90223DDE91A0102F01AFA53EC1C2B93 +:100B100002F004F9C7E90201D7E90423DDE91C0169 +:100B200002F00EFA53EC1C2B02F0F8F8C7E90401AE +:100B3000C7F8388053EC1A2BD7E9020102F000FA0B +:100B400041EC1A0B51EC1B0BD7E9042302F0F8F926 +:100B500041EC1B0B51EC190BD6E9B02302F0F0F974 +:100B600053EC182B02F060FA05F5A862C2E9000107 +:100B700051EC1A0B53EC182B02F056FAC9E902019A +:100B800051EC1B0B53EC182B02F04EFAC9E904018F +:100B900095F969058DF8000005F2695696F901008E +:100BA0008DF8010096F902008DF80200B5F86C0589 +:100BB000ADF80300DAE90001CDE90201DDE9022325 +:100BC000DDE9000100F045FB0246C5F87825DAE9C9 +:100BD0000001C4E900010192B0780090737895F8A3 +:100BE0006925617A0FF2380001F0DCFB99ED020B08 +:100BF0008DED000B05F5A860D0E900230FF28820E9 +:100C000001F0D0FB0320A0730FF22C0001F0CAFB0F +:100C100006B0BDEC0A8BBDE8F0075DF814FB0000E0 +:100C20004C5420256420552D53502025643A2564CA +:100C30003A25642C202564004C5420415245412023 +:100C400053544159000000000FB42DE9F0472DED39 +:100C50000A8B86B09FED848BDDE91823DDE928013E +:100C600002F06EF953EC182B02F058F841EC190B16 +:100C7000DDE91A23DDE92A0102F062F953EC182BB1 +:100C800002F04CF841EC1A0BDDE91C23DDE92C01E4 +:100C900002F056F953EC182B02F040F841EC180B17 +:100CA000A74CDFF894A3DAE90001CDE90401D4E907 +:100CB0000001CDE90201DDE9042300F0CAFA664D26 +:100CC000A97ADFF8AC6C06EB811282EDB09B02F5DD +:100CD000307383ED02AB83ED048B237882F8E93225 +:100CE00002F2E92367785F70A7789F70B4F8033049 +:100CF000A2F8EC32C2F8F802481CA872C0B20A2866 +:100D000001D10020A872687A00F1010885F80980F5 +:100D10005FFA88F8A8F1010002F0FAF841EC1B0B29 +:100D200006F2405953EC1B2BD9E9020101F0F6FF02 +:100D300053EC1A2B02F004F941EC1A0B53EC1B2B69 +:100D4000D9E9040101F0EAFF53EC182B02F0F8F89E +:100D500041EC180B404602F0E5F841EC1C0B53EC5B +:100D60001B2B06F5A8604168006801F0D7FF53EC23 +:100D7000192B02F0E5F853EC1C2B02F055F906F59F +:100D8000A862C2E9000151EC1A0B53EC1C2B02F0D3 +:100D90004BF9C9E9020151EC180B53EC1C2B02F082 +:100DA00043F9C9E9040106F26957B8F1010F0AD104 +:100DB000207886F8690560787870A078B870B4F803 +:100DC0000300A6F86C0596F969058DF8000097F9FF +:100DD00001008DF8010097F902008DF80200B6F8C5 +:100DE0006C05ADF80300DAE90001CDE90201DDE9A7 +:100DF0000223DDE9000100F02CFA0246C6F878254E +:100E0000DAE90001C5E900010192B87800907B7829 +:100E100096F86925697A0FF2580001F0C3FA99ED46 +:100E2000020B8DED000B06F5A860D0E900230FF250 +:100E3000580001F0B7FA687A012805D10120A8739B +:100E40000FF2500001F0AEFA06B0BDEC0A8BBDE81F +:100E5000F0075DF814FB000090200120E0930400EF +:100E600060E31600A8C20020000000000000E03F80 +:100E70004C5420256420532D53502025643A25647A +:100E80003A25642C202564004C54202566202566D4 +:100E9000000000004C54204152454120494E0000C2 +:100EA0000FB410B584B0DFF8CC0A016B01EBC102BE +:100EB000DFF8BC3A03EBC20202F5B8639DED060B06 +:100EC00083ED000B9DED080B83ED020B08AC94ED58 +:100ED000021B83ED041B9DF8413082F8E93502F2D4 +:100EE000E9530DF1410464785C700DF14104A4787C +:100EF0009C70BDF84430A2F8EC3502F2EC5211AB14 +:100F0000DB685361C48A1483048B5483002901D1A4 +:100F10000121016302938DED000BDDE906230FF241 +:100F2000240001F03FFA1FBC5DF814FBA021012052 +:100F3000E02101202022012060220120A0220120A6 +:100F4000602801204C5420555341202566202566F9 +:100F5000202564000FB4F0B585B0DFF8184A4825A5 +:100F6000DFF80C6A206B05FB006000F5B8619DEDB1 +:100F70000A0B81ED000B9DED0C0B81ED020B0CAA11 +:100F800092ED020B81ED040B9DF8511080F8E915EC +:100F900000F2E9520DF151035B7853700DF15107E6 +:100FA000BF789770BDF95420A0F8EC258DF8041097 +:100FB0008DF805308DF80670ADF8072094F9000023 +:100FC0008DF80C0060788DF80D00A0788DF80E007B +:100FD000B4F80300ADF80F00DDE90323DDE90101FA +:100FE00000F037F9074600979DF906309DF9052076 +:100FF0009DF904100FF2440001F0D4F9206B05FBB9 +:101000000061C1F8007601F20061E28A8A80228BD9 +:10101000CA80022801D2401C20630220A0730FF274 +:10102000340001F0BFF905B0F0BC5DF814FB00001E +:101030006828012070280120582801204C54205392 +:101040005341312025643A25643A25642C202564D7 +:10105000000000004C542041524541204F5554009F +:101060000FB438B52DED048B8CB006AA08A90AA8D8 +:101070009DED140B00F06EF8DDE90A230020DFF887 +:10108000F81801F04BFE04460D46DDE90823DFF8B1 +:10109000EC08DFF8EC1801F041FE22462B4601F087 +:1010A0004FFF04460D46DDE90623DFF8D808DFF8D8 +:1010B000D81801F033FE22462B4601F041FF41ECE7 +:1010C000180B00AA02A904A89DED160B00F042F827 +:1010D000DDE904234FF03330DFF8B01801F01EFED5 +:1010E00004460D46DDE90223DFF8A408DFF8A41862 +:1010F00001F014FE22462B4601F022FF04460D4665 +:10110000DDE90023DFF87408DFF88C1801F006FE33 +:1011100022462B4601F014FF41EC190B53EC182B1F +:1011200051EC180B01F0FAFD04460D4653EC192B57 +:1011300051EC190B01F0F2FD22462B4601F000FFA5 +:1011400041EC100B02F094F80CB0BDEC048B31BCF8 +:101150005DF814FB70B52DED048BB0EE408AF0EE17 +:10116000608A04460D46164651EC180B53EC182BBA +:1011700001F014FD41EC190B53EC192B0020DFF8A2 +:101180001C1801F0CBFD41EC100B84ED008B85EDBC +:10119000000B0022DFF8043801F046FF02460B4640 +:1011A00051EC190B01F0FAFC0022DFF8F43701F0E2 +:1011B000B5FDC6E90001BDEC048B70BDDFF8B407D6 +:1011C000006A7047DFF8AC07406A704780B540227C +:1011D0000021DFF8D00701F041F840220021DFF8BC +:1011E000C80701F03BF8DFF8D40D0021417281728D +:1011F000016181820FF20C00BDE8024001F0D2B81B +:10120000000000004C542052455345545F41535058 +:1012100000000000DFF8A40D006B704780B5DFF818 +:10122000501701F5B06001F5A861402201F06AFC99 +:10123000DFF8880D0021016301BDC9B201EBC102D5 +:10124000DFF82C1701EBC20101F5B861482201F06B +:1012500059BC3FB581B04FF47A704EF66022DFF88A +:10126000603D9DF904109DF90540544303FB014185 +:101270009DF9064014FB0011BDF9074001FA84F105 +:101280009DF90C409DF90D506A4303FB04229DF922 +:101290000E3013FB0020BDF90F2000FA82F0441A33 +:1012A00042F20F721319934205D200240FF23C0050 +:1012B00001F078F807E0DFF80C2D944203DADFF84C +:1012C000082D1018441ADFF8040D844200DB044690 +:1012D000204601F01DFEDFF8F82CDFF8F83C01F0A5 +:1012E0001DFD05B0BDE8304002F042B841542D4C20 +:1012F0005420646966662054696D65205265736583 +:10130000740000002DE9F64383B08146BDF90F401B +:101310004EF66025DFF8A86C9DF90C009DF90D10C4 +:10132000694306FB00109DF90E104FF47A7211FB11 +:10133000020000FA84F10C98412808D15F18DFF808 +:10134000980C87420BD3DFF8940CC71907E0994239 +:1013500004D2DFF8740C4018C71A00E0CF1A3846E0 +:1013600001F0E0FD0022DFF8783C01F05DFE01F0C5 +:10137000FFFF80465FFA88F806FB1876304601F0DA +:10138000D1FD0022DFF85C3C01F04EFE01F0F0FFE1 +:10139000C0B28DF8008001468DF8011005FB106089 +:1013A00001F0C0FDDFF8282CDFF8283C01F0B6FC86 +:1013B00001F0DEFF8DF80200ADF80340484600A9B9 +:1013C000052201F08FFB05B0BDE8F08300408F409F +:1013D00010B50024DFF89C05C16C012907D1012458 +:1013E0000021C1640FF2540000F0DCFF23E0DFF8BD +:1013F0008005D0F87815D0F8B825914216D190F82C +:10140000691590F8A925914210D100F2A95100F276 +:10141000695042784B789A4208D18078897888421E +:1014200004D10FF6EC3000F0BDFF04E001240FF60C +:10143000E83000F0B7FF204610BD00004C542046B5 +:101440005500000000B58DB0DFF82805407A00286F +:101450000AD0DFF8941B84B06846402201F052FBAA +:101460000FBCFFF71DFD06E00FF6B4300DB05DF8C0 +:1014700004EB00F097BF0DB000BD00001CB5DFF815 +:10148000F444217B61732073401E05284DD8DFE8AA +:1014900000F0034C16222C4100A801F073FADFF88B +:1014A0004C0B00A9052201F01DFB616C216400209A +:1014B000E0720FF67830BDE81C4000F073BF00A862 +:1014C00001F060FADFF8240B00A9052201F00AFB05 +:1014D000A06BA06413BD00A801F054FADFF80C0B58 +:1014E00000A9052201F0FEFA13BD00202061A082B0 +:1014F00040220146DFF8B00400F0B0FE00A801F081 +:1015000041FADFF8E80A00A9052201F0EBFAA06B26 +:10151000A06413BD00A801F035FADFF8D00A00A9D5 +:10152000052201F0DFFAA06BA06413BD0CB400B576 +:1015300083B09DF939108DF800100DF1390191F942 +:1015400001108DF801100DF1390191F902108DF89B +:1015500002100021ADF8031000A9052201F0C2FA23 +:101560000EBC5DF80CFB00002DE9F84F2DED0A8B49 +:101570009CB082469FED558BDFF8F883B8F81000D9 +:10158000B8F81290814502D25FFA89F901E0C0B241 +:101590008146B8F91400461E00D50A36DFF8D0B3EC +:1015A0000BEB861797ED109B97ED12AB97ED14BBE5 +:1015B00001243CE0301A00D50A300BEB801505F110 +:1015C00040010CA8402201F09DFA07F1400184B0CF +:1015D0006846402201F096FA0FBCFEF7CAFFB0EE53 +:1015E00040CAF0EE60CA51EC180B53EC1C2B01F012 +:1015F00073FC03D2B0EE4C8AF0EE6C8A53EC1B2BDA +:10160000D5E9140101F09CFC41EC1B0B53EC192BA8 +:10161000D5E9100101F094FC41EC190B51EC1A0BC7 +:10162000D5E9122301F08CFC41EC1A0B641CE4B2E6 +:1016300020464845BEDB484601F074FC41EC1C0BDB +:1016400051EC1B0B53EC1C2B01F0EEFCCAE904011E +:1016500051EC190B53EC1C2B01F0E6FCCAE900011C +:1016600051EC1A0B53EC1C2B01F0DEFCCAE9020111 +:10167000B8F81000B8F8121088421ED207F14001E5 +:101680000CA8402201F03EFADFF8641984B06846E5 +:10169000402201F037FA0FBCFEF76BFFB0EE40CAF4 +:1016A000F0EE60CA51EC180B53EC1C2B01F014FC4B +:1016B00003D2B0EE4C8AF0EE6C8AB0EE480AF0EE3F +:1016C000680A1CB0BDEC0A8BBDE8F18F0000000079 +:1016D000000000000FB42DE9F0412DED068BA0B005 +:1016E0002CA984B06846402201F00CFA0FBCFEF72A +:1016F00067FFA04D68639E4E012812D100206863E9 +:1017000006F5A86184B06846402201F0FBF90FBCE1 +:10171000FFF720FCFFF75AFD0FF6201000F042FE05 +:1017200019E1B5F9144006EB841040302CA9402291 +:1017300001F0E8F9601CA88200B20A2801D100205B +:10174000A882288A0A2801DA401C2882688A401C5C +:101750006882314682B06846402201F0D3F90CBC61 +:101760000EA8FFF7E3FE288A0A2801DA002700E026 +:101770002F7D8D4CD4E900010022134601F0FEF9C3 +:101780002FD1D4E9020101F0F9F92AD1D4E90401F9 +:1017900001F0F4F925D106EB8716DFF8588896F9A1 +:1017A000690088F8000006F2690090F9011088F8D5 +:1017B000011090F9020088F80200B6F86C00A8F851 +:1017C0000300DFF82C0806F14001402201F09AF9ED +:1017D000204606F14001402201F094F90020A06368 +:1017E000B9E010A8FFF7C0FEB0EE408AF0EE608AC4 +:1017F000DFF80088288B400801F094FB53EC182B8D +:1018000001F06AFB28D206EB871696F9690088F882 +:10181000000006F2690090F9011088F8011090F9B3 +:10182000020088F80200B6F86C00A8F80300DFF8A0 +:10183000C00706F14001402201F064F9204606F19C +:101840004001402201F05EF90020A06368820FF29F +:10185000FC7000F0A7FD7EE0D8E90001CDE90001B1 +:10186000DDE90E23FFF7F5FC064631460FF2EC707A +:1018700000F098FD286C4FF47A71714388426AD267 +:101880006F8A3846042866DBA16B002916D19DEDCE +:10189000100B84ED000B9DED120B84ED020B9DED02 +:1018A000140B84ED040BA663214684B068464022E5 +:1018B00001F028F90FBCFEF7CBFF43E0401E01F01A +:1018C00027FB41EC190B384601F02CFB41EC1A0BBD +:1018D00051EC190BD4E9002301F020FADDE92C23A7 +:1018E00001F02EFB53EC1A2B01F09EFBC4E9000122 +:1018F00051EC190BD4E9022301F010FADDE92E2393 +:1019000001F01EFB53EC1A2B01F08EFBC4E902011F +:1019100051EC190BD4E9042301F000FADDE930237E +:1019200001F00EFB53EC1A2B01F07EFBC4E904011D +:10193000A663214684B06846402201F0E3F80FBC5C +:10194000FEF7C8FEA06B009053EC182B698A0FF2CB +:101950001C7000F027FD20B0BDEC068BBDE8F00147 +:101960005DF814FB7047DFF85406807B7047000079 +:10197000A8C200209020012000C05B409A9999994C +:101980009999FD3F5839B4C876BE9F3F33335640CE +:10199000AE47E17A14AEF73F9999993F00004E4067 +:1019A0000020AC40E8C70020602201200EB478B5CA +:1019B0002DED028B9EB00646DFF80046A06B08189E +:1019C000A06300A800F0DEFFDFF82C56284600A92F +:1019D000052201F087F8207B062800F2E782DFE885 +:1019E00010F0070012007400C1006A011402C00266 +:1019F000FFF7ECFB0120FFF741FD217B0FF2846034 +:101A000000F0D0FCD2E225A983B06846582201F04C +:101A100079F80EBC304680B2FEF77CFC002843D03B +:101A2000D5E90001CDE903014D200090E36BDDE92C +:101A300003010A46014601A8FFF764FCDFF8BC0574 +:101A400001A9052201F04EF8DFF8B41582B068460E +:101A5000402201F057F80CBC1CA8FFF767FDD5E940 +:101A60000001CDE90001DDE90023DDE91C01FFF7FC +:101A7000F0FB05463D2D07DB29460FF2186000F00C +:101A800091FCFEF787FC06E00120A06229460FF2D8 +:101A9000146000F087FC0220FFF7F0FC217B0FF2BE +:101AA000146000F07FFC81E2A06A012840F07E8291 +:101AB0000020A062DFF8481584B06846402201F09B +:101AC00021F80FBCFFF706FE70E2FEF7F9FC0028D4 +:101AD00034D00320FFF7D2FC0FF2E85000F062FC94 +:101AE000607A00281FD0DFF81C55294684B068466C +:101AF000402201F007F80FBCFEF762FD6063012889 +:101B000011D100206063DFF8E01484B06846402201 +:101B100000F0F8FF0FBCFFF71DFAFFF757FB0FF2BD +:101B2000B85000F03FFCDFF8D81484B0684640227B +:101B300000F0E8FF0FBCFFF7CDFD37E2FEF710FD28 +:101B4000002800F03382207A401C2072C0B20328A3 +:101B500080F243810120FFF791FC0FF2985000F0D2 +:101B600021FC23E2A06A012851D10020A062DFF805 +:101B70009064607A00281DD0314684B068464022C7 +:101B800000F0C0FF0FBCFEF71BFD6063012811D100 +:101B90000020606306F5A86184B06846402200F02A +:101BA000B1FF0FBCFFF7D6F9FFF710FB0FF25C5047 +:101BB00000F0F8FB314684B06846402200F0A2FFF6 +:101BC0000FBCFFF787FD31460CA8402200F09AFFBA +:101BD000DFF8301484B06846402200F093FF0FBC59 +:101BE000FEF7C7FCB0EE408AF0EE608AE08A01F0B2 +:101BF00099F953EC182B01F06FF908D20120FFF787 +:101C00003DFC53EC182B0FF2105000F0CBFBD5E944 +:101C10000001CDE90201DFF8D403D0E90023CDE9CA +:101C20000023DDE90223DDE90001FFF712FBA16BD0 +:101C3000A26C8E1A332E08D30120FFF71FFC314609 +:101C40000FF2EC4000F0AEFBB0E1216C4FF47A7281 +:101C50005043814280F0AA81DFF8A41382B0684625 +:101C6000402200F04FFF0CBC1CA8FFF75FFCD5E939 +:101C70000001CDE90001DDE90023DDE91C01FFF7EA +:101C8000E8FA05463D2D07DBFEF784FB29460FF2F7 +:101C9000B84000F087FB06E00120A06229460FF261 +:101CA000044000F07FFB0420FFF7E8FB0FF2A840A0 +:101CB00000F078FB7AE1FEF72BFC002800F0828030 +:101CC000D14E314684B06846402200F01BFF0FBC65 +:101CD000FEF776FC6063012818D100206063C249DA +:101CE00084B06846402200F00DFF0FBCFFF732F9C8 +:101CF000FFF76CFA0FF2704000F054FB607B052890 +:101D000040F054810120FFF7B9FB4FE1BD4D314652 +:101D10000CA8402200F0F6FE294684B06846402216 +:101D200000F0F0FE0FBCFEF724FCB0EE408AF0EEAF +:101D3000608AE08A01F0F6F802460B4651EC180B77 +:101D400001F0CAF82BD2607B052831460CD184B053 +:101D50006846402200F0D6FE0FBCFEF76FFE0FF281 +:101D6000144000F01FFB10E00CA8402200F0CAFE57 +:101D7000294684B06846402200F0C4FE0FBCFEF73E +:101D800063FF0FF2FC3000F00DFBFEF70CFB0520AB +:101D9000FFF774FB0FF2F03000F004FB06E10120C6 +:101DA000FFF76CFB53EC182B0FF2F03000F0FAFA4F +:101DB000934984B06846402200F0A4FE0FBCFFF7B0 +:101DC00089FCF3E0FEF7CCFB002800F0EF80207ADE +:101DD000401C2072C0B2032807DB0620FFF74EFB31 +:101DE0000FF2003000F0DEFAE0E0884820640320C3 +:101DF000FFF744FB217A0FF2B83000F0D3FA216CE0 +:101E00000FF2282000F0CEFAD0E0A06A012846D1D7 +:101E10000020A0627A4E607A00281DD0314684B03E +:101E20006846402200F06EFE0FBCFEF7C9FB6063FF +:101E3000012811D10020606306F5A86184B06846CE +:101E4000402200F05FFE0FBCFFF784F8FFF7BEF9F9 +:101E50000FF2743000F0A6FA31460CA8402200F0D0 +:101E600051FE684984B06846402200F04BFE0FBC2A +:101E7000FEF77FFBB0EE408AF0EE608AE08A01F068 +:101E800051F853EC182B01F027F808D20120FFF786 +:101E9000F5FA53EC182B0FF23C3000F083FAD5E939 +:101EA0000001CDE902015148D0E90023CDE900232A +:101EB000DDE90223DDE90001FFF7CBF9A16BA26C9C +:101EC0008E1A332E08D30120FFF7D8FA31460FF2CD +:101ED0001C3000F067FA69E0216C4FF47A725043CD +:101EE00081423BD2464E96F929008DF8700006F2E9 +:101EF000290090F901108DF8711090F902008DF809 +:101F00007200D5E90001CDE90001DDE90023DDE93A +:101F10001C01FFF79EF905463D2D07DBFEF73AFA57 +:101F200029460FF2E02000F03DFA06E00120A06211 +:101F300029460FF2E02000F035FA0420FFF79EFA60 +:101F4000E07A401CE072C0B203282FDB606C4100D5 +:101F500021640FF2D80000F025FA27E0FEF78EFB8F +:101F600024E0A06BA16C401A33280BD30120FFF7AB +:101F700085FA0FF2B42000F015FA0FF2C02000F03D +:101F800011FA13E0A06A01280BD10120FFF776FABD +:101F90000FF2B42000F006FA0FF2A02000F002FACF +:101FA00004E0607B042801D1FEF768FB207B1EB0B3 +:101FB000BDEC028B72BC5DF810FB0000902001208C +:101FC00080EE3600F1D8FFFF005C2605C0E40A056C +:101FD000FCA9F1D24D62503F015C260500A4D9FA5C +:101FE00040774B41004CED40E8C7002070280120AD +:101FF000A022012068280120582801206028012003 +:10200000A8C20020E021012020220120E09304004A +:102010004C542053410000004C542044490000001F +:102020004C54204E6F20504F530000004C542D57FD +:1020300050204348414E4745202564004C542053CE +:10204000617665205341554D000000004C542052EC +:10205000455345545F474150000000004C54204711 +:1020600041204D546D202564000000004C54205345 +:102070005020534741522025642C2025662C2025D2 +:10208000640000004C542D434B5F53544F502025A7 +:10209000640000004C5420524551504F532D4620AF +:1020A000256400004C54204E2D524551504F532072 +:1020B000256400004C542D4745545F315F504F5309 +:1020C000202564004C542D434B5F555345525F4DC2 +:1020D0004F564554000000004C54205353412D46A8 +:1020E000500000004C542D53535F50415553455FF1 +:1020F000535300004C542053535F475053204E4FCE +:1021000054204F4B20317374000000004C54205376 +:1021100053412D554D0000004C542D434B5F5354FB +:102120004F502D554D2D64697374202566000000B5 +:102130004C542D434B5F53544F502D554D2D7374BC +:1021400065702025640000004C5420524551504FCA +:10215000532D5320256400004C542D4745545F32C5 +:102160005F504F53000000004C54205353412D53F7 +:10217000500000004C54205544542053500000009F +:102180004C542053535000004C542D434B5F555337 +:1021900045525F4C454156494E4700004C542D4333 +:1021A0004845434B5F53544F502D535020256600F4 +:1021B0004C542D475053204E4F54204F4B20326EDD +:1021C00064202564000000004C54205353412D55D9 +:1021D0004C0000004C542D434B5F53544F502D5531 +:1021E0004C20646973742025660000004C542D4314 +:1021F0004B5F53544F5020554C207374657020250D +:10220000640000004C5420524551504F532D554C02 +:10221000202564004C54204E2D524551504F532DD3 +:10222000554C2025640000004C5420535320414756 +:1022300041494E2042592053544550004C542D439F +:102240004B5F53544F5000004C5420535320414790 +:1022500041494E20425920504F53000010B50446CA +:1022600010460A460146204601F0AEF8204610BD51 +:10227000BFF34F8FDFF8C407016801F4E061DFF8B6 +:10228000EC2711430160BFF34F8FFEE710B5DFF875 +:10229000E0474FF48E7200212046FFF7DFFF204613 +:1022A00010BDDFF8CC07704710B5FFF7EFFF04460D +:1022B00000231A461146084600F0C1FAC046C0463F +:1022C00001F0B6F8204600F018F801F004FB2046B3 +:1022D00000F022FA204600F014F8204600F01EF824 +:1022E00000F0E5F900206072A072E0722073012016 +:1022F00060730020E075012010BD0021C1710172E2 +:1023000031E010B50446DFF8380701F039F9DFF89D +:10231000640701F035F90120607110BD10B5044665 +:1023200001F099F90120A07110BD38B504460125CE +:1023300001F044FA012804D12846E0700020A07082 +:102340000AE0022804D10020E0702846A07003E0D3 +:102350000020E070A0700546284632BD80B501F02F +:10236000A7FB012002BD10B50446E07901F0CEFCC8 +:102370000121217010BD70B504460025E679E17198 +:10238000FFF7F1FF002807D02046FFF7BAFF2046ED +:10239000FFF7C4FF012503E0E6712046FFF7E3FFE6 +:1023A000284670BD0EB470B5C1B0054600A84FF404 +:1023B000807102F0DDFAFFF774FF044645AB2A4650 +:1023C0004FF4807100A802F0D7FA00A802F0F2FAE8 +:1023D000451C00A82818002100F8011CDFF89866A9 +:1023E0003078401C30707078F021084202D099207B +:1023F00002F0FCFA02F067FB7078401C7070207EDF +:102400002818FF2810DA207E002803D0207E00192B +:102410000A2101762A4600A9207E0019193002F00F +:1024200069FB207E2818207600A802F0BBFD70789A +:10243000F021084202D0992002F0D8FA7078401EAC +:102440007070C0B2002801D102F037FB03F095F99B +:1024500041B070BC5DF810FB0428DFF8E80503D834 +:10246000DFF8DC1501607047DFF80816016070477F +:10247000DFF8D41551F82000007F002807D0DFF8DE +:10248000FC0501784A1C0270032900DBF0E6704766 +:102490002DE9F84305460E4617464FF00208DFF8CF +:1024A000D8456078F021084202D0992002F09EFAC7 +:1024B00002F009FB6078401C60709DF80000401E2F +:1024C0008DF8000017F8019B2846FFF7C5FF00AB09 +:1024D0004A463946304601F031FD002810D0607878 +:1024E000F021084202D0992002F080FA6078401E64 +:1024F0006070C0B2002801D102F0DFFA01201FE0B5 +:102500005FFA88F8424629460FF27C50FFF74AFFEF +:102510004046A0F101080028D9D16078F021084296 +:1025200002D0992002F062FA6078401E6070C0B25A +:10253000002801D102F0C1FA2846FFF799FF0020D8 +:10254000BDE8F2832DE9F04704460D4616461F46C6 +:10255000DFF8F884089888F80000DFF81C9599F8EF +:102560000100F021084202D0992002F03FFA02F067 +:10257000AAFA99F80100401C89F801002046FFF7EB +:102580006BFF4FF0020A434632463946284601F0B7 +:1025900085FD002813D099F80100F021084202D0EF +:1025A000992002F023FA99F80100401E89F80100F1 +:1025B000C0B2002801D102F080FA012022E05FFAC7 +:1025C0008AFA524621460FF2CC40FFF7EBFE504606 +:1025D000A0F1010A0028D6D199F80100F0210842A3 +:1025E00002D0992002F002FA99F80100401E89F801 +:1025F0000100C0B2002801D102F05FFA2046FFF7C7 +:1026000037FF0020BDE8F0872DE9F84305460E4668 +:10261000174698464FF00209DFF85C446078F021D5 +:10262000084202D0992002F0E1F902F04CFA6078F9 +:10263000401C60702846FFF70FFF4246394630467F +:1026400001F024FE002810D06078F021084202D06A +:10265000992002F0CBF96078401E6070C0B200286B +:1026600001D102F02AFA01201FE05FFA89F94A46F7 +:1026700029460FF22C40FFF795FE4846A0F10109CC +:102680000028DAD16078F021084202D0992002F0C7 +:10269000ADF96078401E6070C0B2002801D102F030 +:1026A0000CFA2846FFF7E4FE0020BDE8F28303F0B1 +:1026B000DABDF8B5044602270025DFF88C630DE08B +:1026C00039464F1EC9B200290AD1002804D1206919 +:1026D0000121A9408843206102276D1C162D10DAC4 +:1026E00056F82500006E006880470128E8D121696E +:1026F0000122AA401143216156F8251001220A77D0 +:10270000E3E72069032803D0022801D0012802D181 +:1027100040F480502061F1BD01F0AEBE01F009BF70 +:1027200081B00022ADF80220ADF80020C079042865 +:1027300008D0062809D008280AD009280BD00A2872 +:102740000CD00EE04FF4C8600DE04FF448600AE092 +:102750004FF4C85007E04FF4FA5004E042F2107012 +:1027600001E041F27070ADF802200DE0BDF80020EC +:10277000521CADF80020BDF800208242F6DBBDF807 +:102780000220521CADF80220BDF802208A4203D27A +:102790000022ADF80020EEE701B07047417230B57D +:1027A00089B003F031FE0446FFF77BFD054600A823 +:1027B000242102F0DDF80020ADF8220001900A206B +:1027C0008DF8080000208DF809008DF80A00687A5D +:1027D00000280DD0002C18D000208DF80000052016 +:1027E00001900B208DF8080000A805F00BFD0CE00F +:1027F000002C0AD001208DF80000052001900B204C +:102800008DF8080000A805F0FDFC09B030BD01F00E +:10281000ACBE01F0B4BE01210846F8E7012108462C +:10282000F7E702210120F2E702210120F1E701F0A0 +:10283000B1BE10B50446FFF734FD447510BD2DE957 +:10284000F04782B00C4615462F46264680464FF488 +:102850007A714FF03C0C4FF4616918FB09F216FBDA +:102860000C22BA1801FB0232DFF8E4E19EF900A065 +:102870001AFB09F99EF901A01AFB0C9C9EF9029023 +:102880004CFA89FCBEF9039001FB0C919EF808C03C +:10289000BCF1000F22D144EA00012943194302D0C0 +:1028A00001218EF808108EF80000B8F1000F04D551 +:1028B0009EF8000018308EF800008EF801408EF867 +:1028C0000250AEF8033000933B4632469EF90010AA +:1028D0000FF2FC10FFF766FDBDE8F38791420DD3C0 +:1028E000A1EB020CACF2D17CDFF89491CC45DAD3A9 +:1028F0000FF2B81002B0BDE8F04753E5D3D2A2EB17 +:10290000010CACF2D179DFF878A1D145CBD3634685 +:102910000FF2A81002B0BDE8F04743E510B504007F +:102920002FD003F028FE4A49CA68002A00D0841A32 +:10293000B1F80320A218A1F8032012B2B2F57A7FF1 +:1029400006DBA2F57A72A1F803208A78521C8A70FD +:1029500091F902203C2A04DB3C3A8A704A78521CE6 +:102960004A7091F901203C2A04DB3C3A4A700A780B +:10297000521C0A7091F90020182A01DB00220A700B +:10298000C86010BD3249052200F0ACB8000000005C +:102990000FB410B52DED028B2E4C104600F0C2FA8C +:1029A0002D4A2E4B00F0BAF9206161619FED2C8B0E +:1029B000049800F0B7FA53EC182B00F0AFF9206040 +:1029C0006160059800F0AEFA53EC182B00F0A6F900 +:1029D000A060E1609DF81C00207604F118009DF8CD +:1029E0001D1041709DF81E1081709DF81F10C17060 +:1029F0009DF820100171BDF8210000EE100AB8EE1C +:102A0000400A10EE100A05F025FD174A1D4B00F094 +:102A100085F905F047FDC4F81D00BDF82300A4F8B2 +:102A200021009DF8250084F82300BDEC028B10BC2A +:102A30005DF814FB0749242200F054B80CED00E0C7 +:102A4000005400406C7A002008400020F628012045 +:102A50007026012068240120FCA9F1D24D62503F6C +:102A60008DEDB5A0F7C6B03E3BDF4F8D0400FA05F3 +:102A7000540701200058004070790020F5280120FB +:102A80005F4C2605976EA23F4957452025642025B7 +:102A900064000000495245202564202564000000A0 +:102AA00049524F45202564202564000041542D5390 +:102AB00065745453312025642025640041542D53FE +:102AC0006574545332202564202564202564000059 +:102AD00041542D536574542025643A25643A256485 +:102AE0002E25640062B38B0708D0521E11F8013BFB +:102AF00000F8013B00F024808B07F6D1830740F0FB +:102B0000208000BF103A07D330B4B1E83810103A33 +:102B1000A0E83810F9D230BC530724BFB1E8081040 +:102B2000A0E8081044BF51F8043B40F8043BD2072A +:102B300024BF31F8022B20F8022B44BF0B7803701E +:102B40007047083A07D3B1E80810083A40F8043B48 +:102B500040F804CBF7D25307E4E750F8041B61B107 +:102B600050F8042BD30744BFA9F101039A1800239E +:102B700042F8043B091FFAD1EFE7704790420CD1AD +:102B800041EA030C50EA4C0C07D0994205D14FF4AE +:102B9000001C1CEB410F38BF8942704770B44FF0E6 +:102BA000004591EA030F44BF6B4000F0D3B900BF6A +:102BB000841A71EB030604D26E40001BB141121956 +:102BC00073414FF4001C1CEB410F34BF7CEB4306F8 +:102BD00084E00C0DA4EB1356362E7DDC012E43DC75 +:102BE00045EAC32343EA525312BFD20292025B0862 +:102BF000240545EAC12141EA5051D2EBC020994158 +:102C000025D407D1B0FA80F610FA06F164D000207E +:102C1000203608E0B1FA81F6B140C6F1200220FA70 +:102C200002F21143B0404FEAF474B4EB465434F06E +:102C300001064FEA74040AD8D6F50016760D04F0A2 +:102C40000044F04061FA06F25040F1404840C00AAA +:102C500040EA415021F0004128BF5FEA500550F1A1 +:102C6000000044EBD12137E045EAC323DB0A45EA03 +:102C7000C121C90AB6F120050EDD42EA0242120C5A +:102C8000C5F1200603FA06F6EB4042EA06056D425E +:102C9000984161F100010DE062FA06F5F2405540FD +:102CA00063FA06FC82EA0C02F3405A406D429041FE +:102CB00061EB030111F4801F05D1641E620502D08F +:102CC0006D004041494121F48011430875F10043F2 +:102CD00050F1000041EB045170BC70471CEB410FF8 +:102CE00015D223F0004352EA43060BD04FEA4C0CB6 +:102CF000BCEB410F04D80C0D661E342EB7DDEBE79C +:102D0000801A994150EA410608BF0021E4E708BF54 +:102D10001CEB430F28BF6FF00001DDE7B0B581EA7F +:102D2000030C0CF0004C40F2FF7515EA11541DBF66 +:102D300015EA1357AC42AF4239E0E41923EA455390 +:102D400043F48013C90241F0004141EA505EC702DA +:102D50001100A7FB020200284FF00000EEFB01204B +:102D60004FF00001E3FB072118BF42F001024018B9 +:102D700000214941E3FB0E01A4F580640F0302D258 +:102D800052004041494154F101046CDD470872F1A1 +:102D9000004250F1000051EB0451A1F580115CBFDD +:102DA00041EA0C01B0BD4CEA05510020B0BD05EA76 +:102DB0001357AC4214BFAF4241E050EA410E1CBF72 +:102DC00052EA430E02E061460020B0BD24423C447A +:102DD0001BD15FEA070EF6D0090302BF01460020AF +:102DE000AEF1140EB1FA81F7AEEB070401FA07FE5B +:102DF0000C37C7F1200100FA07F7C8404EEA000E71 +:102E000023EA455343F48013A2E733F00043B3FAB7 +:102E100083F704BFB2FA82FE77440B3FE41BB7F19D +:102E2000200E2FBF02FA0EF3BB40C7F1200E22FA8C +:102E30000EFE38BF43EA0E03BA40641C82E750EA34 +:102E4000410E14BF52EA430E6FF000014FF4001719 +:102E500017EB430F8ABF194617EB410FB5E74CEA52 +:102E600005510020B0BDD4F10104B4F120070FDA00 +:102E7000C4F12007520828BF42F0010210FA07F5FA +:102E800001FA07F7E1BF2A43E0403843E1400FE091 +:102E9000352C98DCC7F1200452EA400220FA07F2F0 +:102EA00018BF42F0010231FA07F0A1400A430021A5 +:102EB00072F1004250F1000051EB0C01B0BD82688C +:102EC000521C8260426832B10268531C0360117068 +:102ED0004168491E416070474FF4001C1CEB410FD4 +:102EE00094BF1CEB430F09E041EA030C50EA4C0C81 +:102EF00052EA0C0C03D2994208BF9042704714BFAB +:102F00008B42824270470268531C03601170704705 +:102F1000010040F10980F446404200F005F851F00C +:102F200000416047010000BF09D0B0FA80F188403D +:102F3000C91CC1F58461090501EBD021400570472A +:102F400070B44FF0004591EA030C44BF6B40FFF7AB +:102F50002FBE00BF841A71EB030603D2001BB141E0 +:102F6000121973414FF4001C1CEB410F34BF7CEB72 +:102F7000430443E00C0DA4EB1356352E50DC45EA18 +:102F8000C323DB0A45EAC121C912B6F120050DDDD4 +:102F900063FA05F6EB4086EA0305124218BF45F0D6 +:102FA0000105C01851F100010CD213E062FA06F5D8 +:102FB000F2405540F3415A40B340F3405A40801824 +:102FC000594107D349085FEA30005FEA350528BF59 +:102FD00045F0010501F58011420875F1004250F1FC +:102FE000000041EB045170BC4FF4001C1CEB410F7E +:102FF00038BF70470020090D090570471CEB410FD1 +:1030000010D252EA43060BD0BCEB410F05D80C0D91 +:10301000AB43661E342EB5DD02E0AB438018594148 +:1030200070BC704770BC7047F0B540F2FF7581EA24 +:10303000030C0CF0004C15EA11541DBF15EA135790 +:10304000AC42AF42E5E0BC41C1F31301C3F313034B +:10305000801A994143F4801304D2641E4000494110 +:1030600080185941C90241EA5051B1FBF3F603FB04 +:103070001611A2FB0675D7EBC020A94102D2761E1D +:1030800080185941C90241EA5051B1FBF3FE03FBDC +:103090001E11A2FB0E75D7EBC020A94103D2AEF1E1 +:1030A000010E80185941890241EA9051760546EA9D +:1030B0008E2EB1FBF3F603FB1611A2FB0675D7EBC0 +:1030C0008020A94102D2761E80185941C90241EAE6 +:1030D00050514EEA060EB1FBF3F603FB1611A2FBAC +:1030E0000675D7EBC020A94102D2761E801859413F +:1030F000C90241EA5051B1FBF3F703FB1711A2FBE0 +:103100000735D3EBC020A94167F100070CBF00428F +:1031100047F0010766F3D5274FEA1E31B80814F5CA +:10312000806412DDBD0775F1004250EB0E5051EB8B +:10313000045111F5801F5CBF41EA0C01F0BD4CF059 +:103140007F6141F0E0410020F0BDBD076D0840EA1D +:103150000E5041F48011D4F10104B4F120060ADAD2 +:10316000C4F120060200E04001FA06F3E1401843F2 +:10317000B24015430EE0342C13DCC6F1200445EABE +:1031800040056D0820FA06F2154321FA06F0A14029 +:103190000D43002175F1004250F1000051EB0C018C +:1031A000F0BD00205FEA0C01F0BDCFB992185B4181 +:1031B000B3FA83F704BFB2FA82F6BF190B3FB7F137 +:1031C00020062FBF02FA06F3BB40C7F1200622FA01 +:1031D00006F638BF3343BA401CB1E419641E33E726 +:1031E0007F4231F00041B1FA81F404BFB0FA80F6B9 +:1031F000A4190B3CB4F120062FBF00FA06F1A14040 +:10320000C4F1200620FA06F638BF3143A0403C1B2B +:103210001AE7AC421ABF05EA1357AF4212E050EA70 +:1032200041061CBF52EA4306BFE750EA4107304659 +:1032300061461CBF41EA0551F0BD52EA430C08BF8C +:10324000C143F0BD00204FF4001616EB410F98BFAC +:1032500016EB430F08BF16EB410F24BFC14305E037 +:1032600016EB430F0CBF61464CEA0551F0BD000060 +:1032700051EC100B00B500F003F841EC100B00BD51 +:1032800040F2FF7C0B0D4DD0634566D230B421EA8D +:10329000035141F4801103F2FD3C5FEA5C0C01D361 +:1032A00000184941890041EA907180004FF44014B0 +:1032B0000023E202D50AB1F5100107D46D081DD232 +:1032C000091B641900184941491BF7D56D080AD23A +:1032D0000919641B00184941491BEFD56D08F7D344 +:1032E00001E0520817D0C01861419B1AAC41001888 +:1032F0004941801AA941F4D452080AD0C01AA14108 +:103300009B186C4100184941801AA941E9D4520820 +:10331000F4D15B1C6C4161084FEA330001EB0C51A6 +:1033200030BC704750EA0103FBD030B4B1FA81F3EE +:1033300011B9B0FA80F41B190B3BB3F120042FBF75 +:1033400000FA04F19940C3F1200420FA04F438BFD4 +:1033500021439840D3F101039DE76345E1D011F586 +:10336000801FDED850EA4101DBD0D94305F0E2B836 +:10337000F446400D40EAC120490006D200F014F89E +:10338000004248BF6FF00040604700F00DF84FF07A +:10339000004188428CBF084640426047400D40EAE9 +:1033A000C120490080F00D8040F00040490DA1F59A +:1033B0008061491C05D4D1F11F0154BFC840C0171A +:1033C00070474FF00000704762F30F2262F31F4214 +:1033D000401810F0030308D0C91A1FD3DB0748BFF9 +:1033E00000F8012D28BF20F8022D130030B4144638 +:1033F0001546103928BF20E93C00FAD8490728BFF4 +:1034000020E90C0048BF40F8042D890028BF20F8AF +:10341000022D48BF00F8012D30BC7047C91818BFF5 +:1034200000F8012DCB0728BF00F8012D70470000E0 +:1034300030B583B00121032005F0E7F8DFF8504CE8 +:10344000204605F07BF9DFF84C5C284605F076F95C +:1034500001208DF8040000208DF8050001208DF872 +:10346000060000208DF80700012128460183C04690 +:103470000120009000A9284605F0BCF90221284649 +:103480000183C0460220009000A9284605F0B2F949 +:1034900001208DF8040000208DF80500ADF806002D +:1034A0004FF48070009000A9284605F0A3F94FF46E +:1034B000807128464183C04601208DF80400002019 +:1034C0008DF80500ADF806004FF48050009000A97B +:1034D000204605F08FF94FF4805120464183C046C5 +:1034E00004220621284605F0D3F9042207212846A4 +:1034F00005F0CEF902208DF8040001208DF80500BA +:103500008DF8060000208DF807004020009000A9EB +:10351000284605F06FF98020009000A9284605F0A4 +:1035200069F904220A21284605F0B2F9092203218B +:10353000284605F0ADF902208DF8040001208DF831 +:1035400005008DF8060000208DF807004FF480601C +:10355000009000A9284605F04DF90820009000A928 +:10356000284605F047F9286820F0300040F01000A8 +:103570002860206820F0300040F01000206037BD47 +:103580001FB5DFF8144BA04230D101214FF40010D9 +:1035900005F046F80121022005F037F801214FF42B +:1035A000001005F05EF800214FF4001005F059F806 +:1035B0000020ADF804004BF6FF70ADF806004FF4A4 +:1035C0008060ADF80A004FF48040ADF80C000A208E +:1035D000ADF80800DFF8A40C009000A9204605F023 +:1035E0009AF90121204605F0F9F91FBDDFF8904C4A +:1035F000A0422FD101214FF4800005F011F80121E4 +:10360000022005F002F801214FF4800005F029F8AE +:1036100000214FF4800005F024F80020ADF80400EC +:103620004BF6FF70ADF806004FF48060ADF80A006D +:103630004FF48040ADF80C000A20ADF80800DFF828 +:103640003C0C009000A9204605F065F901212046B8 +:1036500005F0C4F91FBD2DE9F04192B001214FF4EE +:10366000805004F0E8FF0121084604F0CEFF01215C +:103670004FF4800004F0C9FFDFF8144A0522114618 +:10368000204605F005F905220721204605F000F93E +:1036900005220621204605F0FBF8052204212046DC +:1036A00005F0F6F802208DF8040001208DF80500E1 +:1036B0000020ADF806002020009000A9204605F06B +:1036C00099F88020009000A9204605F093F840204A +:1036D000009000A9204605F08DF81020009000A968 +:1036E000204605F087F8DFF89C4B204605F0D8F916 +:1036F000DFF8945B0020288068600120288100208A +:103700006881E8600720288200206880DFF8D06C9C +:10371000304605F035FADFF8CC7C384605F030FA53 +:103720004FF48060069000210D9103210E9100213D +:103730000F910A910890DFF8680D039008461090E9 +:10374000099007904FF400300C9008460B904FF012 +:10375000C068CDF80880402005900846049002A972 +:10376000304605F091FA00200B90CDF808800590C6 +:1037700005F11400049002A9384605F085FA0020EE +:1037800068802946204605F0BAF901220221204628 +:1037900005F0E4F901221146204605F0DFF9012188 +:1037A000204605F0CFF90021304605F094FA0021BB +:1037B000384605F090FA12B0BDE8F08130B589B016 +:1037C00001214FF0805004F02BFF012005F0ECFAAE +:1037D00001214FF4802004F018FF0F2005F094FC25 +:1037E0000446102005F090FC0546012004F00AFF75 +:1037F000002004F007FF21460F2005F078FC294641 +:10380000102005F074FC00214FF4802004F0FDFE30 +:10381000012004F095FE412004F044FF0028FAD076 +:103820004FF4807004F0D8FE012004F0E8FE05F0AB +:103830000EFB3F20069040F2FF10079000200590FD +:1038400005A805F0BBFA0020029002A905F020FBB4 +:1038500000208DF8070001208DF804008DF8050088 +:103860008DF8060001A9002005F08BFB4FF48000C5 +:1038700005F02AFD4FF48000039000208DF8100021 +:1038800008208DF8110001208DF8120003A805F022 +:10389000D9FC03208DF800000D208DF801000020D8 +:1038A0008DF8020001208DF8030000A805F019FD35 +:1038B000032005F0DAFB4FF4804005F090FC4FF454 +:1038C000800005F001FD01214FF4804005F04DFC22 +:1038D000012009B030BD10B586B00121084604F0C2 +:1038E00094FE01214FF4804004F0A5FE00208DF8E5 +:1038F00010008DF8130001200390DFF8944703A90E +:10390000204604F077FF0420039003A9204604F02A +:1039100071FF0021084605F01DFD0221002005F081 +:1039200019FD00208DF8080001208DF80A00019093 +:103930000C208DF8090001A805F084FC04200190FA +:103940000C208DF8090001A805F07CFC042005F08E +:10395000BBFC28208DF800000F208DF8010000200E +:103960008DF8020001208DF8030000A805F0B9FCD5 +:1039700006B010BD10B586B00121084604F045FE22 +:1039800001214FF4804004F056FE00208DF8100015 +:103990008DF813004FF40064039403A9DFF8F006D8 +:1039A00004F028FF0B21002005F0D4FC00208DF846 +:1039B000080001208DF80A0001940C208DF8090000 +:1039C00001A805F03FFC204605F07EFC28208DF87C +:1039D00000000F208DF8010000208DF8020001206A +:1039E0008DF8030000A805F07CFC06B010BD30B5D2 +:1039F0008DB0044601214FF4807004F01CFE00A835 +:103A000004F032FF0A20009003208DF8040000200B +:103A10008DF8070000A9DFF8780604F0EBFE05F04A +:103A2000ADFC02A805F0EFFC4FF48030039002A833 +:103A300005F0DBFC06A805F0CEFCDFF8C05C06A9AB +:103A4000284605F0A8FC072301222146284605F058 +:103A5000EBFC0121284605F02AFD0121284605F04E +:103A6000D8FC0DB030BD38B5DFF8904C204605F0DD +:103A700019FD4FF47A750221204605F02FFD00282C +:103A800003D12846451E0128F5DA2046BDE832401C +:103A900005F018BD80B50021DFF8600C05F0B9FC19 +:103AA00000214FF48070BDE8044004F0C4BD000064 +:103AB00038B5040039D0012005F076F9002005F072 +:103AC000EEFA4FF40055042005F06AFB012804D1FA +:103AD0002846451E80B20028F5D100EE104AB8EE07 +:103AE000400ADFED780A80EE800AF0EE000A20EE50 +:103AF000200ADFED750A80EE800ABDEEC00A10EEE6 +:103B0000100A401E80B205F0C0FA4FF4804005F064 +:103B100066FB4FF4800005F0D7FB012005F0BFFAEB +:103B2000DFF8D00C0121416031BD012005F03CF9E6 +:103B30000020BDE8324005F0B2BA000030B40146C2 +:103B400001200023DFF8B82B1C469460946814F021 +:103B50000C0FFBD10C460B2C55D8DFE804F0205499 +:103B6000545406192031383F464D946844F080047F +:103B70009460DFF8904B4FF4C0652560146824F022 +:103B800080741460DFF8004CDFF87C5B25603BE05C +:103B90000346DFF8F44BDFF8F45B256034E094680B +:103BA0009460DFF8604B4FF4C0652560146824F022 +:103BB00080741460DFF8D04BDFF8D45B256023E01D +:103BC0000223DFF8C44BDFF8CC5B25601CE0032345 +:103BD000DFF8B44BDFF8C05B256015E00423DFF8A5 +:103BE000A84BDFF8145C25600EE00523DFF8984B46 +:103BF000DFF8085C256007E00623DFF88C4BDFF870 +:103C0000005C256000E01846002B4AD003EBC3039C +:103C10000FF2B8041B1994689460146824F080743F +:103C20001460146824F0806414609C781D8844EA51 +:103C30008514DD786D086D1E44EA05441D7944EA5B +:103C400005645460DC881D7A2D0745EA8414DFF88A +:103C50000C5C2C60146844F0807414601468A40137 +:103C6000FCD55B7943F4C063DFF8984A236093681E +:103C7000936093689360052904D1916841F09001A5 +:103C8000916005E00A2903D1916841F48051916067 +:103C9000916841F002019160916801F00C010829DE +:103CA000FAD1DFF8E41A0968DFF8B42B914207D2A1 +:103CB000DFF8401C0A6822F4404242F480420A6065 +:103CC00030BC704700007A44000000472001100417 +:103CD0000F03020103F00010060F01020103C000F0 +:103CE00010080F01020103C00010060F01020103BA +:103CF000F00010060F01020103C80010040F0202B9 +:103D00000103A80010020F030201030016E70028B8 +:103D100000E0401EFDD170477CB50726DE49884291 +:103D20006BD101208DF804008DF805008DF8060098 +:103D300000208DF8070040200090DFF8D85B00A934 +:103D4000284604F057FD8020009000A9284604F082 +:103D500051FD402128464183C0460F20FFF7D7FF81 +:103D6000402128460183C0460F20FFF7D0FF304690 +:103D7000461E80B20028ECD18020009000A9284681 +:103D800004F038FD402128464183C0460520FFF756 +:103D9000BEFF802128460183C0460520FFF7B7FFFC +:103DA000402128460183C0460A20FFF7B0FF40218A +:103DB00028464183C0460520FFF7A9FF80212846F9 +:103DC0004183C0460520FFF7A2FF02208DF80400C2 +:103DD00001208DF805008DF8060000208DF8070001 +:103DE0004020009000A9284604F004FD80200090A7 +:103DF00000A9284604F0FEFC73BDDFF88414884255 +:103E00006AD101208DF804008DF805008DF80600B8 +:103E100000208DF807004FF480640094DFF8F45A16 +:103E200000A9284604F0E6FC0820009000A92846D6 +:103E300004F0E0FC214628464183C0460A20FFF7F3 +:103E400066FF214628460183C0460A20FFF75FFF30 +:103E50003046461E80B20028ECD10820009000A910 +:103E6000284604F0C7FC214628464183C046052069 +:103E7000FFF74DFF082128460183C0460520FFF7C4 +:103E800046FF214628460183C0460A20FFF73FFF30 +:103E9000214628464183C0460520FFF738FF082108 +:103EA00028464183C0460520FFF731FF02208DF8E8 +:103EB000040001208DF805008DF8060000208DF823 +:103EC0000700009400A9284604F094FC0820009004 +:103ED00000A9284604F08EFC73BD10B5DFF8384AFF +:103EE0000121206804F0B3FD206804F0E5FC20689F +:103EF000FFF746FB05E02068FFF70EFF2068FFF79D +:103F00003FFB4FF40031206804F0ACFD0028F2D1F3 +:103F100010BD30B40022838A008BDFF8FC4965684D +:103F200043EA00400840000255EA10206060084063 +:103F3000884200D10122104630BC70472DE9F84F6D +:103F400004460D4616464FF420491F78DFF8C8890D +:103F50004FF40031D8F8000004F084FD002808D0A8 +:103F60004846A0F101090028F2D1FFF7B6FF002072 +:103F70008CE0D8F8000001884FF6FF521140018014 +:103F80000121D8F8000004F035FD4FF4805AD146E5 +:103F90000020C8F80400D8F800B0DFF880195846AF +:103FA000FFF7B7FF002805D14846A0F10109002816 +:103FB000F1D163E0D14600222146584604F032FD9B +:103FC0000020C8F80400D8F80040DFF85419204653 +:103FD000FFF79FFF002805D14846A0F101090028FE +:103FE000F1D14BE03146C9B220460182C046D146EC +:103FF0000020C8F80400D8F80040DFF8281920464F +:10400000FFF787FF002805D14846A0F101090028E5 +:10401000F1D133E0012F15D1297820460182C04625 +:10402000D1460020C8F80400DFF8FC18D8F80000DA +:10403000FFF76FFF002823D14846A0F101090028AF +:10404000F2D11BE03846471EC0B2002818D015F840 +:10405000011BD8F800000182C046D1460020C8F8F4 +:104060000400DFF8C418D8F80000FFF752FF00285A +:10407000E8D14846A0F101090028F2D1002005E06E +:104080000121D8F8000004F0C1FC0120BDE8F28F46 +:104090000000024000040240005400402DE9F54FAA +:1040A00081B00D461E464FF420483778DFF8684847 +:1040B0004FF40031206804F0D5FC002808D04046B9 +:1040C000A0F101080028F3D1FFF707FF0020D3E09B +:1040D000206801884FF6FF521140018001212068BD +:1040E00004F088FC4FF48059C84600206060DFF877 +:1040F0002CA8D4F800B051465846FFF70AFF002814 +:1041000005D14046A0F101080028F2D191E000223B +:104110009DF80410584604F085FCC84600206060F5 +:10412000D4F800B0DFF8F8175846FFF7F2FE002881 +:1041300005D14046A0F101080028F1D179E0BDF891 +:104140000810C9B258460182C046C846DFF8DC17DD +:10415000206804F087FC002805D14046A0F1010842 +:104160000028F3D165E00121206804F043FCC84633 +:1041700000206060D4F800B051465846FFF7C9FEF1 +:10418000002805D14046A0F101080028F2D150E0F6 +:1041900001229DF80410584604F044FC022FC84642 +:1041A00039DADFF88C17206804F05CFC002805D1B0 +:1041B0004046A0F101080028F3D13AE00021206830 +:1041C00004F039FC2068018B012104F01FFCC84673 +:1041D000DFF86017206804F045FC002805D1404650 +:1041E000A0F101080028F3D123E02068008AC0B2C2 +:1041F00028703078401E3070C846206801888905D4 +:1042000005D54046A0F101080028F6D111E00121B2 +:1042100004F011FC2BE000206060DFF81C17206820 +:10422000FFF777FE002806D14046A0F101080028DC +:10423000F3D1002020E0012616E0012F0CD1012E41 +:104240000AD100263146206804F0F5FB2068818AF7 +:10425000018B012104F0DAFB2068818A490603D52D +:10426000008A05F8010B7F1EFFB2002FE5D1012166 +:10427000206804F0E0FB0120BDE8FE8F801A0600F4 +:104280000058004000300140442401202DE9F0474F +:1042900007460D4616464FF42048DFF87C464FF49B +:1042A0000031206804F0DEFB002808D04046A0F171 +:1042B00001080028F3D1FFF710FE00208DE02068F0 +:1042C00001884FF6FF52114001800121206804F05F +:1042D00091FB4FF48059C84600206060D4F800A0DC +:1042E000DFF838165046FFF714FE002805D1404687 +:1042F000A0F101080028F1D14CE0012239465046D6 +:1043000004F090FB022EC84636DADFF82416206847 +:1043100004F0A8FB002805D14046A0F101080028C0 +:10432000F3D137E00021206804F085FB2068018B81 +:10433000012104F06BFBC846DFF8F815206804F093 +:1043400091FB002805D14046A0F101080028F3D1D7 +:1043500020E02068008AC0B22870C8462068018822 +:10436000890505D54046A0F101080028F6D111E0E5 +:10437000012104F060FB2BE000206060DFF8B8153D +:104380002068FFF7C6FD002806D14046A0F10108CD +:104390000028F3D1002020E0012716E0012E0CD1E7 +:1043A000012F0AD100273946206804F044FB206819 +:1043B000818A018B012104F029FB2068818A49064A +:1043C00003D5008A05F8010B761EF6B2002EE5D162 +:1043D0000121206804F02FFB0120BDE8F0870000D8 +:1043E0008864024010640240DFF850050168082923 +:1043F00033D1DFF80C130A6842F080720A60426819 +:10440000B2F1806F03D10A6842F080620A600A68E4 +:104410009201FCD58A6842F002028A608A6802F042 +:104420000C02082AFAD14268B2F1806F02D10A6800 +:104430001201FCD5DFF850130968DFF824249142FB +:1044400007D2DFF8B0140A6822F4404242F48042F6 +:104450000A6000210160416070474168B1F1806FDE +:1044600009D1A7490A6842F080620A600A6812010D +:10447000FCD5002141607047DFF8C404016841F0B9 +:1044800080510160DFF86C0401688908890041F0FF +:1044900001010160DFF8AC040FF20901016070470F +:1044A0000C30014038B5DFF8A044208840F004000B +:1044B0002080FDF7F6FE807A012803D1012004F068 +:1044C00076FC02E0002004F072FCDFF880548021CA +:1044D000DFF87C0404F04CFB002818D172B6884841 +:1044E000DFF85814826802F00C020A60006800F0DD +:1044F00080604860286840F00400286030BF62B6E1 +:10450000286820F004002860FFF76EFF0CE0608848 +:1045100040F004006080286820F00400286030BF6C +:10452000286840F004002860608840F00400608043 +:1045300031BDDFF8100400680047DFF818140128C7 +:1045400006D010D3032809D005D3042809D00AE0E7 +:10455000DFF8C01307E0DFF8001404E0DFF8FC1315 +:1045600001E0DFF8FC130846704710B50C46FFF772 +:10457000E4FF214689B2BDE8104004F085B910B5CA +:104580000C46FFF7DAFF214689B2BDE8104004F07F +:104590007DB90000E0B500238DF8083001238DF8C7 +:1045A0000A30002A03D10C228DF8092002E00822EB +:1045B0008DF8092004283CD8DFE800F00315212AF3 +:1045C0002A004FF40060019028208DF800000F2091 +:1045D0008DF8010000208DF80200012921D1184634 +:1045E0008DF803001FE01846019010208DF8090097 +:1045F00006208DF800000E208DF80100EAE7022069 +:10460000019007208DF800000F208DF80100E1E7F0 +:104610000420019008208DF800000F208DF8010083 +:10462000D8E78DF8030001A804F00CFE00A804F000 +:1046300058FE07BD4FF40061C64804F01EB910B51E +:10464000044601214FF4802003F0DFFF21461020B3 +:1046500004F04DFD00214FF48020BDE8104003F030 +:10466000D4BF10B501214FF4802003F0CEFF1020FD +:1046700004F04AFD044600214FF4802003F0C5FFFA +:104680007B2004F00FF8002802D09BA0FDF78AFEE3 +:104690007A2004F007F8002802D098A0FDF782FEE7 +:1046A000792003F0FFFF002802D095A0FDF77AFEE5 +:1046B0007C2003F0F7FF002802D092A0FDF772FEE5 +:1046C0007D2003F0EFFF002802D08FA0FDF76AFEE7 +:1046D0007E2003F0E7FF002802D08CA0FDF762FEE9 +:1046E0007F2003F0DFFF002802D089A0FDF75AFEEB +:1046F00003F0EAFF2046C0B210BD000000200140D8 +:1047000000380240003C024000127A003EB50C46E0 +:1047100015460422014602A800F0ECF904222146C5 +:1047200001A800F0E7F90422294600A800F0E2F908 +:1047300002A9002004F0ACFB01A9002004F021FC38 +:1047400004F01AFC0446874A002300981946101A00 +:1047500063EB0101490241EAD051400204F0E8FE56 +:104760000090844205D2011B4FF0004004F0D9FCB8 +:1047700037BDA04207D2C4F50070009909184FF068 +:10478000004004F0CEFC37BD287A002080969800C7 +:104790000024F40000366E010048E8012DE9704362 +:1047A00084B004460D46164602A9002004F0BFFB63 +:1047B00001A9002004F035FC04F0DEFB0090694AFA +:1047C000A2FB00894FEA582848EAC958A2EB080022 +:1047D0000090042202A9204600F08CF9042201A9CD +:1047E000284600F087F9042200A9304600F082F93B +:1047F000BDE87F83EC270120005A620280F0FA02B4 +:1048000000BD010570B48C1E012C01DA0C34401E71 +:104810003C216425B0FBF5F5C5EB90054FF4C87657 +:10482000B0FBF6F6751940F26F1674430C26B4FB14 +:10483000F6F46419121940F26D1404FB00204A4A80 +:10484000101800EB400203EBC200039A01FB0020AA +:10485000049A01FB002070BC7047000084380240BD +:10486000018793031CB50C460168019141680091D2 +:104870008368C2680169491C406900F26C70FFF7E7 +:10488000C1FF2060002016BD10B58EB0374800680B +:10489000C405E40D01A9002004F049FB00A9002093 +:1048A00004F0BFFB9DF8040006909DF805000590FC +:1048B0009DF8060004909DF80100401E08909DF8A8 +:1048C000020007909DF803006430099002A904A833 +:1048D000FFF7C8FF4FF47A7010FB04F0400AC0F5F0 +:1048E0007A700390029A4FF47A73C117E3FB0201C6 +:1048F0000EB010BD00700040504F520050494E00A5 +:10490000424F520053465400495744005757440001 +:104910004C505700000402406C7A00200100030054 +:1049200082000700800007008400070004000010D8 +:10493000020000104000001002000300F4270120D4 +:1049400040380240EC2701201800024010ED00E042 +:10495000003001400000024000080240000C02400C +:104960000010024000CA9A3B7505F5FF2828004058 +:10497000002204F055BE000008B584B00023029365 +:1049800011B90093019302E00090481E019004AB1E +:1049900000A907487844183004F05CFE009909B17A +:1049A00000220A70002858BF029805B000BD00BF61 +:1049B0000FE5FFFF00F10103810704D010F8011B90 +:1049C00089B18107FAD10268B2F10131914311F046 +:1049D000803F04BF50F8042FF6E710F8011B11B117 +:1049E00010F8011BFBE7C01A7047000000B585B046 +:1049F00002460FF2140100A805F0F8FC00A800F030 +:104A000099FB05B000BD00004F4525640000000083 +:104A100030488168002904BF08B008E0EFF309823C +:104A2000A2F12802036882E8F84F83685A6000F018 +:104A30004BFD816859B14A6892E8F84F036002F172 +:104A4000280282F3098813F47F4F36D0704722483A +:104A500022490968401A80F308884FF08071C161CB +:104A60001F4981617FF0060E704701BC2046DFF8C8 +:104A700074E000BDFEE71C48006818490968401A48 +:104A8000203820F0070080F308884FF0000181F300 +:104A9000118862B600F00DF8FEE74FF0000181F3D7 +:104AA00011881249124A0A604FF0800181F311887F +:104AB00070470E490E4A0A6070474FF0000181F3BB +:104AC0001188704700BF4FF0800181F31188704753 +:104AD00000BF000070790020E01F002034030308AD +:104AE00035A70008754A00080000000804ED00E042 +:104AF0000000001010B50446FDF7F4FF204610BD7D +:104B0000EFF303807047BFF34F8FDFF86C06016847 +:104B100001F4E061DFF8642611430160BFF34F8FB9 +:104B2000FEE770B582B006460C462046FFF742FF0E +:104B30000546202D05D10422314600A8FFF7DAFFF3 +:104B400006E0102D16D10222314600A8FFF7D2FF51 +:104B5000002000E0401CA8420EDA015D7829F9D05F +:104B6000009A2B465B1E1B1ADA4002F00102303914 +:104B70008A42EFD0002076BD012076BDDFF8001616 +:104B8000016006207047A0F10060B0F53E3F01D8FB +:104B90000120704700207047F8B504460D460020FC +:104BA00000902068FFF7EFFF00281AD000A8FFF759 +:104BB000E5FF0646002700E07F1CB74211D20098AF +:104BC00050F8371000EBC700406840422268520896 +:104BD00010EB4200FFF7A5FF0028EDD02F60012069 +:104BE000F2BD0020F2BDF8B50C46DFF898150A6D4D +:104BF0004B6D002559082E465F1B062F11D3482701 +:104C000007FB01273F6C874200D20D46B84200D215 +:104C10000B46E918490837467E1C1F2FECD300E0ED +:104C20006D1C9D4211D2482707FB05210E6CB04236 +:104C3000F6D34E6C8642F3D34022204605F0F0FBBB +:104C4000002084F840000120F2BD40220FF20061F4 +:104C5000204605F0E5FB0020F2BDF0B591B004461A +:104C600000250EE032590FF2F45100A805F0BEFB0A +:104C700000A8FFF79FFE024600A9381D05F0D0FBF3 +:104C80006D1C05EBC500C600305900280BD0371944 +:104C900000A9FFF7A8FF0028E4D0402200A9381D92 +:104CA00005F0BEFBECE711B0F0BDF8B507460C46C9 +:104CB0001546002630460090002F1ED0002C09D14A +:104CC000F2BD06EBC600C00057F8041B49084900B6 +:104CD0004151761C0C2E0FD200A93846FFF75CFF1D +:104CE000002807D13868FFF74EFF002802D13F1D8A +:104CF000BC42F1D2BC42E4D23046F2BD70B5DFF81E +:104D000088140A460B68D21A1368DFF88044A3425D +:104D100001D0002070BDDFF86C44121D22650968C7 +:104D2000091F4822B1FBF2F1616510F1030F02D0B7 +:104D300010F1130F0AD1DFF85854A86805F0A6FB4C +:104D40000646A86805F0AEFB811905E005F0B8FB42 +:104D5000054605F0B7FB4119DFF83854A069286013 +:104D600005F14802A06AFFF7A0FF2846FFF775FF8C +:104D7000012070BD0EB430B5CCB0044600A84FF48D +:104D80009671FFF7F5FD00254FAB22464FF4967163 +:104D900000A8FFF7F1FD00A8FFF70CFE044609E0AC +:104DA000DFF8E013C86D421CCA6500A9695C05F014 +:104DB000F1FB6D1CA542F3D34CB030BC5DF810FB89 +:104DC00038B50024DFF8BC53E8650FF29840FFF7D0 +:104DD000D1FFDFF8C40301680FF2AC40FFF7CAFF50 +:104DE000A86C0090AB6B6A6B296B0FF2B440FFF7B5 +:104DF000C1FFE96C0FF2E040FFF7BCFF6A69A969E7 +:104E00000FF2E840FFF7B6FF0FF2F840FFF7B2FFEE +:104E100006E01018021D0FF20450FFF7ABFF641CF0 +:104E200004EBC400C200DB4811580029F1D10FF295 +:104E3000F840FFF79FFFA86D441E002505E0091804 +:104E4000BBA0FFF797FF641E6D1C3C2D09D2002C00 +:104E500000D53B24322000FB04F1D0480A5C002A34 +:104E6000EDD131BDCE48CF490A6802604A68426040 +:104E70008A688260CA68C2600A6902614A694261DE +:104E80000A7E8261097F8161C7490A7882614A6826 +:104E900042628A688262CA68C2620A6902634A69B7 +:104EA00042638A698263CA69C2638A6EC0F88820D5 +:104EB000BE4A9369C0F89830D368C0F88C30136943 +:104EC000C0F890305369C0F894300B6FC0F89C3034 +:104ED0004B6FC0F8A0308B6FC0F8A430C96FC0F81A +:104EE000A810B3490968C0F8AC10B2490B68C0F803 +:104EF000CC304B68C0F8D0308B68C0F8D430CB6869 +:104F0000C0F8D8300969C0F8DC105168C0F8E81062 +:104F10001168C0F8E410704770B506460C46994D0C +:104F20006FF01E01401A14D0083812D0001F05D0AF +:104F3000001F0ED008380CD0001F10D104F1200043 +:104F40002862EFF3148040F00200E862286AA86249 +:104F500005E004F120002862EFF31480E862EFF32B +:104F600008806862EFF305802863EFF300806863D0 +:104F7000FFF7C6FDA863EFF31080E863EFF311803D +:104F80002864EFF313806864F1EE100AA864EE64FD +:104F9000002004E054F8201045F82010401C082898 +:104FA000F8D370BD70B5774CA16D3C2901D30021B9 +:104FB000A165A56D3221794A01FB05260A46014605 +:104FC0003046FFF797FD002086F83100681CA06589 +:104FD00070BD70B5014674462046FFF79DFFFFF790 +:104FE00041FF2046FFF78AFE00F09AF8002832D1F0 +:104FF00000F034F805F06EFAF32005F0E5FA6E489B +:105000004FF00054002505E02178641C05F0C2FA39 +:1050100030466D1C461CB5F5C03FF5D3532105F055 +:10502000B9FA5221304605F0B5FA741C41212046E8 +:1050300005F0B0FA641C4D21204605F0ABFA5F483C +:10504000C046C04604F10D00FFF7BAFE05F04BFA6A +:105050005B4800F01FF8BDE8704054E510B505F05E +:1050600039FAF32005F0B0FA564C3820206002E0FF +:105070002068083020602068402807D2002105F011 +:1050800038FA0928F4D0FFF73EFDFCE7BDE81040F0 +:1050900005F029BA38B5044605F01CFAF32005F0EE +:1050A00093FA3D480168204605F058FA241DFF2177 +:1050B000204605F06FFA641C404D6979204605F0E2 +:1050C00069FA641CE978204605F064FA641C2979C1 +:1050D000204605F05FFA641C2978204605F05AFA4C +:1050E000641C6978204605F055FA641CA9782046AE +:1050F00005F050FAF521601C05F04CFABDE831408E +:1051000005F0F1B980B505F0E5F9F32005F05CFA9A +:10511000AA212D4805F03EFABDE8014005F0E3B9AB +:10512000002029490978F52900D1012070470000A5 +:1051300025730A0010B50446FFF73CFCC0B21428E2 +:1051400000DB1320024621462048FFF7D3FC4FF036 +:10515000AC30007810BD80B500F049F8BDE80140E2 +:10516000D1E480B5FFF7CEFF4FF4C83212490020DA +:10517000BDE8084002F003B80CED00E00400FA05B9 +:1051800040790020481A0120FC4F0508FECAFECADB +:105190007079002014E80020847A002034B00020C8 +:1051A0006C09012000ED00E020ED00E004E000E0EB +:1051B000A0ED00E034EF00E000000608E427012045 +:1051C000F4FF070888280120FFFF0708E8250120D1 +:1051D00010B500F01BF80FF270142046FFF7EAFB41 +:1051E000024621460020BDE8104001F0C8BF80B54E +:1051F00001214FF4802003F008FA012003F0D4FDD0 +:1052000094210F20BDE8044003F071BF80B5012157 +:105210004FF4802003F0F9F9012003F0C5FD0021CF +:105220000F20BDE8044003F062BF10B50024012147 +:105230004FF4802003F0E9F9012003F0B5FD0F20C1 +:1052400003F062FF942800D10124204610BD000025 +:105250004E6F2053796D626F6C00000030782530FE +:10526000387800000A0A0A0A3D3D204372617368DB +:105270002044756D7020496E666F726D6174696F40 +:105280006E203D3D0A0000004669726D77617265CF +:105290002056657273696F6E203A2025640A0000FB +:1052A0000A49505352203D20307825782C20415017 +:1052B0005352203D20307825782C207850535220AE +:1052C0003D20307825782C205046534352203D20F5 +:1052D000307825780A0000000A6661756C74206DCC +:1052E0006F6465203D203078257800000A50432007 +:1052F0003D20307825782C204C52203D20307825D8 +:10530000780A00000A3C43726173682043616C6C48 +:1053100020537461636B3E0A0000000030782578EA +:10532000202025730A0000000A0A3D3D20526563D3 +:10533000656E74204C6F67204D657373616765738C +:10534000203D3D0A00000000534E414D5900000031 +:105350000000000038B5FFF7B6FBDFF830068468C0 +:10536000DFF8280600210171FFF7A7FB002C2CD0E5 +:105370002068002829D0607C2168497CC0B2814225 +:1053800023D1256800E00D002968002903D04A7C5C +:10539000C0B28242F7D0FFF796FBDFF8F005006954 +:1053A000A04203D1DFF8E40521680161E0692168CA +:1053B0000160C861E56129682160002900D0CC61E5 +:1053C0002C6095F8410085F84000FFF776FB31BD71 +:1053D00010B5FFF778FBDFF8B8050468DFF8AC0517 +:1053E000006A201A012832DADFF8A005046A04E016 +:1053F000DFF898050462FFF760FBDFF89805007896 +:10540000C00722D5FFF75FFBDFF88805007880072B +:10541000EED5DFF88005007810F0FD00DFF8741598 +:105420000870FFF74AFBDFF86405006A8442FAD08F +:10543000DFF858050462DFF858050068401CDFF803 +:1054400050150860DFF844154862FFF73CFB10BDBB +:1054500038B504000020A071206A10F57A606062FF +:10546000E069002802D02000E1698847FFF725FBAA +:10547000E56809E0E868616A401A002801D5E86833 +:105480006062FFF71AFB2D68002D1AD0FFF71BFB97 +:105490002069002804D0687C2169497C884212D3A5 +:1054A000287C4007EDD5E868216A401A0128E1DA36 +:1054B000280000F09EF9FFF706FB287C0028D9D1D0 +:1054C00001E0FFF700FB31BD70B504000020607003 +:1054D0000120207004F0F4FF0078C0B2CD2802D083 +:1054E0007D20FFF783FAA06800280CD0A068406CEC +:1054F000002808D0A068406C01680800002802D08D +:10550000A0684068884794F8290000280BD0A0685C +:1055100094F8281080F84010DFF870040079002813 +:1055200001D0FFF717FFDFF870040078002823D0C0 +:10553000DFF868040068DFF85414096A401A00288C +:1055400004D5DFF854040021017015E0FFF7BBFA21 +:1055500005F0FEF80500FFF7B0FAA068002808D0B3 +:10556000A068406B2818DFF838140968401AA16851 +:105570004863DFF82C040560A068002808D0A06804 +:10558000007C002804D1A068006B401CA16808635F +:10559000206900282BD003E030682061FFF78DFAE6 +:1055A000FFF791FA2669002E27D0357CEDB2002D49 +:1055B00023D0680710D5F068216A411A012906DA5C +:1055C000300000F016F9307C002805D10FE0616A48 +:1055D000411A002900D56062EDB215F0FB001028D9 +:1055E000DAD1B06880684068007C0028D4D1FFF729 +:1055F0006AFA02E02000FFF72BFFA0790028F9D11A +:10560000DFF890030078C00701D5FFF7E1FE002026 +:1056100060712069002839D02069007C002805D0FD +:105620002069806880684068A06001E02069A0600F +:10563000A06890F84C00642802D08020FFF7D6F9CB +:10564000A068806A0078CD2802D07820FFF7CEF9D4 +:10565000A068406C002808D0A068406C4168080031 +:10566000002802D0A06840688847A06890F84000F1 +:1056700084F8280084F82900DFF810038068C06AE5 +:10568000401CDFF808138968C8620BE0002084F82A +:105690002900002084F828000020A060002020704D +:1056A000FFF70BFA200070BD80B505F07FF8DFF83A +:1056B000F4120978002806D0022810D009D3042853 +:1056C00015D010D314E0002902D0A320FFF78EF9E3 +:1056D00011E0002902D1A420FFF788F90BE0A620F1 +:1056E000FFF784F907E0A720FFF780F903E002E065 +:1056F000A820FFF77BF901BD10B505F057F80400AD +:10570000DFF8A0020078002802D0A020FFF76EF991 +:10571000002C05D0022C08D003D3032C09D00CE0B8 +:105720000EE0A420FFF762F90AE0A620FFF75EF979 +:1057300006E0A720FFF75AF902E0A820FFF756F984 +:1057400010BD80B505F032F8002805D0022808D039 +:1057500006D3032809D00CE0A320FFF747F90BE09C +:105760000AE0A620FFF742F906E0A720FFF73EF97E +:1057700002E0A820FFF73AF901BD80B5DFF80C027E +:105780000078002802D19720FFF730F9DFF8FC01FC +:105790000078401EDFF8F4110870C0B2002827D14D +:1057A000DFF8E8014068002822D0FFF78CF9DFF825 +:1057B000DC01406800280BD0DFF8D0010121017026 +:1057C000DFF8C801FFF769F9DFF8C00100210170B7 +:1057D000DFF8B8014078F021084202D09920FFF7A5 +:1057E00005F9DFF8A8014078002801D1FFF765F935 +:1057F00001BD10B5816800290CD0DFF89011096A4D +:10580000C16081680A684968002A00D051600A6056 +:1058100000218160017C11F003010174C9B20029EB +:1058200045D1DFF868110969002929D1DFF85C1139 +:105830000861DFF85801007800280CD1DFF84C012E +:1058400001210170DFF84401FFF727F9DFF83C017F +:105850000021017003E0DFF8340101214171DFF81C +:105860002C014078F021084202D09920FFF7BEF8C1 +:10587000DFF818014078002801D1FFF71EF916E083 +:10588000427C4B7CD2B29342D0D38142D1D04B7C6C +:10589000D2B29A420BD10300FFE71B68002BDED087 +:1058A0005C7CD2B2A242DAD18B42F6D1BEE710BD07 +:1058B00010B50400627C35480078401C33490870FC +:1058C000394800E008000168002903D04B7CD2B2BF +:1058D0009A42F7D32160E061046000290AD0CC61CC +:1058E000487CD2B2904202D194F8410000E00020FE +:1058F00084F84000207C002812D1FFF7E4F8200053 +:10590000FFF777FF21484078F021084202D0992024 +:10591000FFF76CF81D484078002801D1FFF7CDF85B +:10592000FFF72BFF10BD10B5184804781748007812 +:10593000401C164908701548FFF7AFF8134804706B +:1059400012484078F021084202D09920FFF74EF823 +:105950000E484078002801D1FFF7AFF810BD10B510 +:1059600004F02AFF09480121017004F0A9FD040098 +:105970006846C046021B203A012A03DBCD212000E5 +:10598000FCF76CFC09480121017010BD7079002002 +:10599000C82801201829012019290120E028012008 +:1059A000CC2801201A2901207C7900201C29012003 +:1059B000506002604160086070470A68F8E748601C +:1059C0000160704701684068F9E7F8B50600DFF844 +:1059D000F45802D505F15800F2BD05F15804002035 +:1059E000296F00E0096805F17002914204D00C466D +:1059F000A2689642F6D10120002840D1A86FD0F8C5 +:105A00008070182004F0FCFE0446A660002F05D02C +:105A1000B74203D2B6FBF7F0784300E03046E060CF +:105A2000002F02D0B74200D23E46266100202075EA +:105A3000DFF894683078401C30707078F0210842AC +:105A400002D09920FEF7D2FFFFF73DF87078401C96 +:105A5000707005F170012046FFF7AFFF7078F021FC +:105A6000084202D09920FEF7C1FF7078401E707086 +:105A7000C0B2002801D1FFF720F8FFF77EFE2046D4 +:105A8000F2BD38B5044694F91400002829D1DFF896 +:105A900038582878401C28706878F021084202D0D5 +:105AA0009920FEF7A3FFFFF70EF86878401C687096 +:105AB0002046FFF787FF204604F0BAFE6878F02101 +:105AC000084202D09920FEF791FF6878401E687066 +:105AD000C0B2002801D1FEF7F0FFBDE83140FFF76A +:105AE0004CBE31BDF8B5044608466FF00045FFF7DF +:105AF0006CFF064694F9050094F90410814214D114 +:105B0000C01C800004F07CFE074694F905000128C3 +:105B100007DB820021683846FEF7ECFF206804F0BE +:105B200087FE27606079C01C607194F90400411CF5 +:105B30002171216841F82060DFF89007864202D089 +:105B4000307D401C3075002008E0216851F820109D +:105B50008A68954201DB1546A160401C94F9041047 +:105B60008842F2DBF1BDF8B504466FF00046DFF87D +:105B7000542702F1580502F158004FF0FF33002777 +:105B800004E0664501DB664675467F1C94F904C057 +:105B900067450DDAD4F800C05CF827E0DEF808C0ED +:105BA000002BEED58C45ECD170463B465BB2ECE762 +:105BB000002B11D4BCF1010F0EDB06E0216801EBD4 +:105BC0008306766841F823605B1C94F904104E1E2E +:105BD000B342F3DB491E217102F15801884204D01F +:105BE000017D491E0175FFF74CFFA560F1BD10B4A2 +:105BF000C26A836B406C9C68002C02D56FF0004336 +:105C000000E01B698468002C02D56FF0004000E0C2 +:105C10000069984200DD1846D2685143884201DB92 +:105C2000012000E0002010BC704738B5DFF8941662 +:105C30008A6FD36E012490F90850AC402343D36699 +:105C400001F66C11FFF7B9FE012032BD10B5DFF887 +:105C50007416896FCA6E012390F90840A3409A43D5 +:105C6000CA66FFF7AFFE012010BD01207047F8B5EE +:105C7000044615461E4604F12400FFF733FF06EBE9 +:105C8000460004EB8007294607F13000FFF72AFFA2 +:105C900097F9340000903346627A94F908100FF2B5 +:105CA0003060FCF77FFBF1BDF8B5044615461E4693 +:105CB00004F12400FFF757FF06EB460004EB8007D2 +:105CC000294607F13000FFF74EFF97F934000090A6 +:105CD0003346627A94F908100FF20460FCF762FB15 +:105CE000F1BDC16A8A68012A09DB0969012906DA5E +:105CF000006D002801D50020704702207047002069 +:105D0000704701EB410200EB8201896B8A68012A2E +:105D100009DB0969012906DA006D002801D5002098 +:105D200070470220704700207047002900D5D8E74F +:105D3000E7E7012900DA012113460A4697E701291E +:105D400000DA012113460A46AEE7DFF87805C06A9B +:105D5000417A481E8041C00F704713464FF0FF3212 +:105D6000114684E713464FF0FF3211469CE780B599 +:105D7000DFF850050068417A002902D1006E4068C2 +:105D80008047012002BD80B5FFF760FFDFF83405D2 +:105D90000068417A002902D1006E806880470120A6 +:105DA00002BDB1F57A7F01DC4FF47A7113460A46E1 +:105DB0004FF4FA715BE7B1F57A7F01DC4FF47A7149 +:105DC00013460A464FF4FA716EE710B504460029EF +:105DD00022D5E06A816801291CDB0069012819DAF3 +:105DE00002212046FFF703FF002813D194F9540045 +:105DF00010F1010F04D1002084F85400012010BDDF +:105E0000002807D1012060774FF0FF3084F854005C +:105E1000022010BD002010BDBDE8104071E74FF01A +:105E2000FF3280F8542000E7C92900DAC821134660 +:105E30000A4642211BE7C92900DAC82113460A464F +:105E4000422131E710B50446002927D5E06A816870 +:105E5000012921DB006901281EDA03212046FFF712 +:105E6000C6FE002818D194F95400014611F1010F23 +:105E700004D1002084F85400012010BD002803D173 +:105E8000012084F8540010BD012905D14FF0FF30E6 +:105E900084F85400022010BD002010BDBDE8104061 +:105EA0002FE74FF0FF3280F85420DFF81824926F6C +:105EB000D2F88020C83252420265B6E6DFF80424E8 +:105EC000926FD2F88020C83252420265ADE6134686 +:105ED0004FF0FF321146CAE613464FF0FF3211462B +:105EE000E2E680B5FFF7A1FEFCF7DBF900210175C2 +:105EF000012002BD80B5FFF7A9FEFCF7D2F9002111 +:105F00000175012002BD292900DA282113460A461D +:105F10001421ACE6292900DA282113460A46142167 +:105F2000C2E610B50446002920D5E06A816801293F +:105F30001ADB0069012817DA02212046FFF757FE15 +:105F4000002811D194F9540010F1010F04D1002060 +:105F500084F85400012010BD002805D14FF0FF3017 +:105F600084F85400022010BD002010BDBDE8104090 +:105F7000C7E600002DE9F0410C46D24D55F82060EF +:105F8000307206F154070FF268313961152800F2BA +:105F90003081DFE810F016002600410059004D0066 +:105FA000650075008400B4009400A400C400D4000F +:105FB000E200EF00FB000901160123012301230188 +:105FC000320006F10800062141760A21817605F6A5 +:105FD0007411416040F2DC5181600FF23030386161 +:105FE00007E106F10800062141760A21817605F6CF +:105FF0005071416064218160FBE006F108000121DD +:1060000041760521817605F6BC71416005218160EC +:106010000FF2D8303861ECE006F108000C2141762F +:106020001021817605F6D071416010218160E0E099 +:1060300006F10800072141760B21817605F6C4712F +:1060400041600B218160D4E006F108000621417611 +:106050000A21817605F6E07141600A218160C8E07D +:1060600006F10800062141760A21817605F6EC71D9 +:1060700041604FF4FA7181600FF2E4203861B8E0BA +:1060800006F10800142141761821817605F58F511B +:106090004160182181600FF238303861A9E006F1C3 +:1060A0000800032141760721817605F590511431CE +:1060B0004160072181600FF2E020386199E006F12C +:1060C00008000A2141760E21817605F59051091DBF +:1060D00041600E2181600FF2A420386189E006F151 +:1060E0000800022141760621817605F590511C3188 +:1060F0004160062181600FF2BC20386179E006F131 +:106100000800052141760921817605F58851F8318D +:106110004160092181600FF22C20386169E006F1AD +:106120000800062141760A21817605F59051243137 +:1061300041600A2181600FF2F010386159E006F1E8 +:106140000800012141760521817605F59051303115 +:10615000416040F2866181604BE006F10800012158 +:1061600041760521817605F5C051B83141600521A0 +:1061700081603EE006F108000C2141761021817615 +:1061800005F5C65141601021816032E006F108003A +:10619000112141761521817605F5C051D03141603C +:1061A00041F66631816024E006F108001121417654 +:1061B0001521817605F550513831416015218160F6 +:1061C00017E006F10800042141760821817605F5E3 +:1061D000505150314160082181600AE006F1080009 +:1061E000012141760521817605F6B47141600521D2 +:1061F000816006F108000021017541758175017605 +:10620000C1600161417006F128080846C8F82800FD +:106210004FF0FF3086F854007880062206F15800CF +:10622000FCF71CF8002010E000EB400106EB8101B8 +:10623000002281F8342034314A7005F158024A6056 +:1062400006EB800100228A64401C0228ECDB00205F +:1062500086F8280088F8010005F15800C8F8040005 +:10626000FC60BDE8F08110B5164C04F0F1FAA067AF +:10627000002006E0682111FB00417C3144F8201029 +:10628000401C1628F6DB4FF0FF30206660660020C9 +:10629000A06605F065FD06F0C3FB07F054F807F0B3 +:1062A000E9FC07F0A6FF07F09FFF07F0FDFE08F0EE +:1062B000F5F808F01AFA08F038FDBDE8104007F0CC +:1062C0009DBF000008400020707900206040002041 +:1062D0004144202564202564202564202564000095 +:1062E000524D20256420256420256420256400006B +:1062F0006B5C00082B5C00086B5C00084D5C0008C0 +:10630000335D00083F5D00082B5D00084B5D000811 +:106310002B5C00084B5D00084D5C0008335D0008F5 +:106320003F5D00082B5D00086F5D00082B5C0008D6 +:106330006B5C0008875D00085B5D0008655D000818 +:106340002B5D00086B5C00081F5E00086B5C00089A +:106350004D5C0008A35D0008B75D0008CB5D000838 +:106360006B5C0008A35E00086B5C00084D5C0008D5 +:10637000295E0008375E0008455E00086B5C000877 +:10638000BD5E00086B5C00084D5C0008335D0008D2 +:106390003F5D00082B5D00086B5C0008E35E0008B1 +:1063A0006B5C0008F55E0008CF5E0008D95E00084F +:1063B0002B5D00086B5C00082B5C00086B5C000820 +:1063C0004D5C0008335D00083F5D00082B5D000850 +:1063D0006B5C00082B5C00086B5C00084D5C0008DF +:1063E000CF5E0008D95E00082B5D00086B5C0008DA +:1063F0002B5C00086B5C00084D5C0008075F000820 +:10640000155F0008235F0008DFF81C0D0078704757 +:106410002DE9F0418AB004F01BFA0446DFF80C5D68 +:106420002E6844E096F90800014607293ED00B3853 +:106430000A283BD3062939D006F10807B86C002892 +:1064400003D5D4F880100818B8644FF0FF313046F7 +:10645000FA6D926990478046B8F1010F04D197F820 +:106460004C00B96D09698847B8F1020F0BD1797EEC +:1064700038697A688018BA6D52699047002802D04E +:10648000304608F071FD00213046FA6D9269904760 +:10649000022801D10120B87501213046FA6D9269B8 +:1064A0009047022802D1304608F00AFE3668AE4214 +:1064B000B8D1D4E91C01002901D100280CD00A2050 +:1064C0008DF8080002208DF80000D4F88000ADF8A7 +:1064D000220000A801F096FE01200AB0BDE8F0817C +:1064E00030B585B004460D46CA208DF800002888D6 +:1064F000ADF801000220ADF80300BDF80100001D59 +:1065000004F07EF9CDF8090002220DF10301FEF737 +:10651000F1FA02222946DDF80900801CFEF7EAFAAA +:106520002A882146DDF80900001DFEF7E3FA002065 +:10653000288000A9DFF8E80D09F09EF805B030BD0D +:10654000C0F54060322801DA012070470020704712 +:1065500080B5FBF7A6FE407B002804D008F08AFC3B +:10656000DFF8C01D086001BD80B508F083FCDFF8CE +:10657000B81D086001BDDFF8B00D0068704718B4A1 +:1065800000F10C030422DFF8A01D5C7DDB68C0680D +:106590001818201818BCFEF7ADBA30B41488651C62 +:1065A0001580052565541488651C1580635413886F +:1065B0005C1C1480007A585430BC7047F8B50E4605 +:1065C00014461D4629884A1C2A8037220A552988E4 +:1065D0004A1C2A80027A0A5500F108077A7E7868F8 +:1065E000311828880019FEF785FA2888797E401826 +:1065F0002880787E796871184058DFF8281D09686E +:10660000401A0090042200A928880019FEF772FAA7 +:106610002888001D288080B2FFF792FF002803D051 +:1066200029462046FFF75CFFF1BD2DE9F041044605 +:106630000D4616461F46DDF8188008E043463A46E8 +:1066400029462046FFF7BAFF94F822002D18B542DC +:10665000F4DBBDE8F081F8B5044615461E46069FFA +:1066600000972269FFF7E1FF2069854206DA00976B +:1066700033462A4600212046FFF7D7FFF1BD00F13F +:1066800010018A688B7CD2188A600069824201D12D +:106690000020886000208873704770B582B000F1D8 +:1066A000140674684569002D07D500920B462246F2 +:1066B000B17B6118FFF7CFFF73BDAC4200920B4670 +:1066C0002246294602DAFFF7C6FF73BDFFF7ADFF8A +:1066D00073BD70B504460D461646FFF7DEFF012375 +:1066E000324629462046FFF758FFA069606170BD19 +:1066F0002DE9F84304460D46164604F0A9F88046F5 +:10670000FBF7CFFD81462046FFF739FF04F108076C +:10671000386C01284ADB99F80A00002822D0B87D9D +:10672000002800F07F8000207864B87E3A69F9681C +:106730008B1A834205D0002910D1BB689B1A834273 +:106740000CD13B7E002B06D000962B4682182046AB +:10675000FFF781FF02E04FF0FF30F8602046BDE810 +:10676000F2438CE7786CD8F88010401A78640128DE +:1067700015DA386C7864324629462046FFF78DFFDB +:10678000B87D002808D033462A4639692046FFF7ED +:1067900015FF2046FFF773FF3869F86042E0B87DC7 +:1067A00000283FD02046BDE8F24368E7B87D0028C6 +:1067B00038D094F9080099F80A10002920D0072849 +:1067C0000CD133462A4639692046FFF7F7FE7A781E +:1067D00094F908100FF25000FBF7E4FD94F908005B +:1067E00008281AD197F92C00012816DB386B80682D +:1067F000B0F57A7F0BD1B7F94E00012807DA11E026 +:10680000082804D1DFF8780D406800280AD1334603 +:106810002A4639692046FFF7D1FE2046FFF72FFFB1 +:106820003869F860BDE8F183415020537573202525 +:106830006420256400000000F8B504460D46DFF82A +:10684000EC68376805E02A4621463846FFF750FFD6 +:106850003F68B742F7D1F1BD2DE9F04104460D463E +:10686000DFF8206DF76907F10C0898F81510D8F8D3 +:106870000C00FA688018D8F8542052699047002814 +:106880000AD0012088F81200787A002804D02A461D +:1068900021463846FFF72CFFB66906F10C07797DD3 +:1068A000F868F26880187A6D52699047002809D01C +:1068B0000120B874707A002804D02A462146304658 +:1068C000FFF716FF0120BDE8F0810288D21C02808C +:1068D0000A80704780B50B889B1AADF80030BDF870 +:1068E0000030002B09D01018012100F8031C0222EF +:1068F00000A9801EFEF7FEF801BD0888C01E0880B2 +:1069000001BD2DE9F04FADF64C1D04460D4603F0D8 +:106910009FFF0746FBF7C5FC804610A840F608110C +:10692000FEF726F800208DF8020006A82821FEF7C1 +:106930001FF801A81421FEF71BF80020ADF8000095 +:106940000646D7E91C01002902D1002800F0748313 +:1069500098F9090009F060FB002800F06D8300A998 +:106960002846FFF7B2FFB0461CE0D7E91C014246BB +:1069700009F062FD00F0010011F0000101D10028D2 +:106980000ED008EB8800DFF8001C01EBC00292F982 +:106990000900012804D10DF1020110A8126A9047E4 +:1069A00008F10108B8F12B0FDFDB37461AE0288821 +:1069B000411C298099F8021001552888FFF7C0FD75 +:1069C00000280DD0BDF8002029462046FFF782FFA1 +:1069D00029462046FFF784FD00A92846FFF775FFEA +:1069E0007F1C7FB29DF80200874280F21D832988B8 +:1069F000481C288040F2211010FB07F010AA825C8E +:106A00000A5529884A1C2A8010AA00EB020898F827 +:106A1000010008552888411C298008F1010999F8CE +:106A20000110015599F8010003281ED0092800F033 +:106A300049810C2800F023811A2800F042821B288B +:106A400000F056811C2800F070821D2800F0638140 +:106A50001E2800F05A82252800F09982262800F08E +:106A6000D382282800F0AE82A1E798F8010003281D +:106A700005D12888411C298099F8021001552888E1 +:106A8000411C298099F80310015599F80300C0288A +:106A90000DD1B8F83020D8F8321028880019FEF748 +:106AA00029F82888B8F830100818288085E7711C64 +:106AB00000064ED401A808F1040252783254C9B23B +:106AC00098F806200A54491CC9B200220A544A1CEC +:106AD00008F20601D2B24B781354521CB8F80E30AB +:106AE000D2B21E0A1654521CD2B21354521C08F2CF +:106AF0000E03D2B29E781654521CD2B2DB781354D5 +:106B0000521CD2B298F812301354521CD2B298F8D8 +:106B100013301354521CD2B28B781354521CD2B27D +:106B2000C9781154511CC9B298F80A200A54491C5A +:106B3000C9B298F80B200A544E1CF6B2324601A98D +:106B400028880019FDF7D6FF288850FA86F028809B +:106B500033E7D8F8052006A8130C3354C9B2130A3A +:106B60000B54491CC9B20A54491CD8F80920C9B2AF +:106B7000130C0B54491CC9B2130A0B54491CC9B25B +:106B80000A54491CD8F80D20C9B2130C0B54491CE7 +:106B9000C9B2130A0B54491CC9B20A54491CD8F88B +:106BA0001120C9B2130C0B54491CC9B2130A0B545F +:106BB000491CC9B20A54491CD8F82720C9B2130C81 +:106BC0000B54491CC9B2130A0B54491CC9B20A54CC +:106BD0004A1C08F22701D2B20B791354521CD2B2CC +:106BE0004B791354521CCB88D2B21E0A1654521C35 +:106BF000D2B21354521CD2B2097A1154511CD8F893 +:106C00001520C9B2130C0B54491CC9B2130A0B54FA +:106C1000491CC9B20A54491CD8F81920C9B2130C2E +:106C20000B54491CC9B2130A0B54491CC9B20A546B +:106C3000491CD8F81D20C9B2130C0B54491CC9B209 +:106C4000130A0B54491CC9B20A54491CD8F8212014 +:106C5000C9B2130C0B54491CC9B2130A0B54491C7A +:106C6000C9B20A544E1CF6B2324606A92888001949 +:106C7000FDF740FF288850FA86F028809DE608F14D +:106C80000301B1F90300C0F3072242EA0020A1F892 +:106C90000300B1F90700C0F3072242EA0020A1F87F +:106CA0000700B1F90500C0F3072242EA0020A1F86D +:106CB0000500092228880019FDF71CFF28880930E3 +:106CC00028807AE62888034698F80110032909D11C +:106CD000022208F103011819FDF70CFF2888801C17 +:106CE00028806AE6401C288099F80200185564E65E +:106CF0002888411C298099F80210015598F8010054 +:106D000005287FF45AAE2888411C298008F1040127 +:106D10004978015551E608F1030998F80100012866 +:106D200040F0BF802888411C298099F80410015543 +:106D30004FF0000A9CE01B2010FB0A9BDBF80C20A4 +:106D4000DBF808100FF2F820FBF72CFBDBF818003B +:106D5000010221F0FF11000A00F0FF100843CBF8F8 +:106D600018004FEA3040CBF8180004220BF118014C +:106D700028880019FDF7BEFE2888001D2880DBF852 +:106D80000800010221F0FF11000A00F0FF10084383 +:106D9000CBF808004FEA3040CBF8080004220BF192 +:106DA000080128880019FDF7A5FE2888001D288005 +:106DB000DBF80C00010221F0FF11000A00F0FF10C7 +:106DC0000843CBF80C004FEA3040CBF80C0004220B +:106DD0000BF10C0128880019FDF78CFE2888001D96 +:106DE0002880DBF81000010221F0FF11000A00F0FA +:106DF000FF100843CBF810004FEA3040CBF81000EA +:106E000004220BF1100128880019FDF773FE288871 +:106E1000001D2880DBF81C00010221F0FF11000A90 +:106E200000F0FF100843CBF81C004FEA3040CBF8CD +:106E30001C0004220BF11C0128880019FDF75AFEE2 +:106E40002888001D2880BBF81600010A41EA0020AE +:106E5000ABF8160002220BF1160128880019FDF785 +:106E600049FE2888801C28800AF1010A5FFA8AFA04 +:106E700099F804008245FFF65EAFB8F81B21D8F8F8 +:106E80001D1128880019FDF735FE2888B8F81B1158 +:106E900008182880B8F81B110FF2B410FBF782FA1B +:106EA0008BE505287FF489AD2888411C298099F855 +:106EB000021001552888411C298099F803100155BA +:106EC0007BE508F1030198F80100032805D1288823 +:106ED000421C2A8098F80A200255D1F801000202CB +:106EE00022F0FF12000A00F0FF101043C1F8010069 +:106EF0004FEA3040C1F80100072228880019FDF749 +:106F0000F9FD2888C01D288057E508F1030108888D +:106F1000020A42EA00200880022228880019FDF7B0 +:106F2000E9FD2888801C288047E508F1030098F8CF +:106F3000011001297FF441AD99F80210012918D1FF +:106F400029884A1C2A8000780855B8F80420D8F807 +:106F5000061028880019FDF7CDFD2888B8F8041020 +:106F600008182880B8F804100FF2F800FBF71AFA96 +:106F700023E502297FF421AD29884A1C2A80027862 +:106F80000A5529884A1C2A80C079085515E52888A1 +:106F9000411C2980B9F8021001552888411C29801C +:106FA000B9F9021009120155B9F90220D8F80510F3 +:106FB00028880019FDF79EFD2888B9F902100818E5 +:106FC0002880FAE42888411C2980B9F8021001556C +:106FD0002888411C2980B9F9021009120155288816 +:106FE000411C298008F1040149780155B9F90220B2 +:106FF000D8F8061028880019FDF77CFD2888B9F913 +:10700000021008182880D8E408F103010888020A51 +:1070100042EA00200880022228880019FDF76AFD54 +:107020002888801C2880C8E4BDF800202946204616 +:10703000FFF750FC09F01EF80DF64C1DBDE8F08F6F +:107040004C54204E4D47202564202564000000004C +:107050004F4A483A20415442442073697A653A20A5 +:10706000256400004F4A483A204150445220736939 +:107070007A653A20256400002DE9F04105460E4668 +:10708000FBF70FF90746DFF804452078401C207015 +:107090006078F021084202D09920FDF7A7FCFDF7A7 +:1070A00012FD6078401C607097F81880B8F1000FEE +:1070B00026D03088404480B2FFF742FA002803D03F +:1070C00031462846FFF70CFA3088411C31800321F5 +:1070D00041553088411C318000F80580424607F157 +:1070E000190130884019FDF705FD30884044308093 +:1070F000FF22002107F11900FBF7B0F800203876D5 +:107100006078F021084202D09920FDF76FFC60788A +:10711000401E6070C0B2002801D1FDF7CEFCBDE872 +:10712000F041FEF72ABB0000142901207449002019 +:1071300038B504460D46FBF7B4F8817A002909D129 +:10714000417B002906D129884A1C2A8006220A553B +:107150000121417331BD38B504460D462888002809 +:107160000CD02046FFF788FF29462046FFF7E0FFB6 +:1071700029462046BDE83440FFF7B2B931BD14B509 +:1071800085B0049101A90022134614461CC10A21AE +:10719000ADF8001004218DF804108DF805000A46A2 +:1071A00005A90DF10600FDF7A5FC042204A90DF1C7 +:1071B0000A00FDF79FFC00A901A8FFF791F906B0AE +:1071C00010BD80B5FBF76DF84FF49671FBF7A8FA88 +:1071D00007208DF802000120ADF8000000A90DF194 +:1071E0000200FFF77DF901BDF8B50446FBF759F839 +:1071F000E44D296A496C8A6842F210739A4259D167 +:107200000969002956D1807A002853D0DC4E308895 +:107210000C30B0F5347F01DD002030800120FCF718 +:10722000E6FBFCF720FCADF802000320FCF7DFFBD7 +:10723000FCF719FCADF80000FCF72CFC37880222A3 +:107240000DF10201B8190830FDF754FCBF1C37805E +:10725000022200A9BFB2B8190830FDF74BFCBF1CD1 +:10726000378004222146BFB2B8190830FDF742FC2E +:10727000381D3080022280B2801900F108010620FA +:107280006B691B6E1B6A98473088801C3080022215 +:1072900080B2801900F1080106206B681B6E1B6A22 +:1072A00098473088801C308070680C30B0F5347F8F +:1072B00000D27060F1BD2DE9F041B14C606800284A +:1072C00028D0218888421FD003F09AFA05466668C4 +:1072D0002788A6EB07081FFA88F84246381900F1FC +:1072E00008012846FDF706FC3A4604F1080108EBC0 +:1072F0000500FDF7FFFB3246294604F10800FDF7C3 +:10730000F9FB284603F094FA626804F108010520AD +:10731000FFF735FF002060602080BDE8F0810000AD +:1073200018A40020B8280120BC2801202DE9F8432A +:1073300006460F469046FAF7B4FF81460025D6F878 +:107340000900041D30780146012967D00F2931D08A +:10735000802900F08F80812900F09680822900F03A +:107360009380852900F09080862900F08D808829FF +:1073700000F08A808A2900F08F808B2900F0A88095 +:107380008C2900F0B4808D2900F0C080DD2900F048 +:10739000CA80DF2900F0E080F02921D0F4292AD02A +:1073A000F62930D0F8294ED0F9293CD0FF2900F039 +:1073B000B28066E099F81600207099F8170000284E +:1073C00040F0C8804FF0FF30009003462A4642F25A +:1073D0001071082007F0A2FF012089F81700B9E01A +:1073E0000422DFF8741B2046FDF784FB0120FDF723 +:1073F00026F9012046E0042209F110012046FDF79C +:1074000079FB01203EE0032221462846DFF84C3B71 +:107410009B681B6E1B6A9847012033E0204609F0E9 +:1074200039F801202EE0B6F80120B6F80300C010AC +:10743000C0EB0011D6F8050000EB81112046FDF7E6 +:1074400059FB01201EE02846ADF8000001207179AB +:10745000012900D10320FCF7CAFAFCF704FBADF8C0 +:107460000000FCF717FB022200A92046FDF742FBB3 +:10747000012007E0D6F8050020702146284607F0D5 +:10748000F3FE2846BDE8F28329462170214600F02C +:107490007F0007F0E9FEF4E701202070DFF8BC0A66 +:1074A00046682F46307F002801D12846EAE7707AE7 +:1074B000002803D1306E4068804707462046316E71 +:1074C000C9698847002FDCD0306E80688047D8E7D4 +:1074D0000120B6F80310C1F3C101091D884040F036 +:1074E000020020702146012007F0BEFEC9E799F88E +:1074F0000000207099F80300607099F80500A070F2 +:1075000099F80600E07001202071BBE7204608F0E2 +:10751000D5FF0546B5E704F10802211D2046FDF719 +:107520003DF90120AEE77079DFF8301A51F820609C +:10753000707A00280CD0424639463046FFF7C9F829 +:10754000DFF81C1A082009F085F80120207001E0FE +:1075500028462070012095E77079DFF8001A51F86D +:107560002060306996F8221090FBF1F0401E0090E8 +:10757000042200A92046FDF7BDFA012082E70000A1 +:10758000A4EE002008400020ECBB00207079002011 +:10759000F0B593B00646FAF784FE054603F058F9B5 +:1075A000D6F809100C1D3178002208924FF0FF32F6 +:1075B000099217460A46A12A00F06081A22A00F02B +:1075C0007F81A42A00F08A81B12A00F0FF82B22ACA +:1075D00000F07884B82A00F09C81C12A00F0C481B0 +:1075E000CD2A00F0BF80CE2A00F0D480D02A39D036 +:1075F000D12A2FD0D22A3AD0D32A41D0D42A59D056 +:10760000D62A79D0D72A77D0D82A7DD0D92A7BD04C +:10761000DA2A00F08180DB2A00F01B81DC2A00F0EE +:107620001F81F12A00F08C80F22A00F0CB80F52A2D +:1076300000F0EA80F72A00F0FD80FA2A00F0818449 +:10764000FB2A00F07184FD2A00F0E980FE2A00F098 +:107650007A84D6E000212846FBF7A0F8FFF72BFE3E +:107660000120CFE00020FCF7EAFF0120CAE0012161 +:107670002846FBF793F8012009F03CF80120C1E00F +:107680000020A872E87D002840F05B8442F210746C +:1076900038460090034600222146082007F03EFEAF +:1076A0003B4601222146082007F0A0FE0120E87594 +:1076B00000F047BC0120A87200206873E87A002817 +:1076C00040F03F84E87D002811D042F210743B4620 +:1076D00000222146082007F089FE38460090034624 +:1076E00001222146082007F019FE0020E87501203C +:1076F00009F000F800F025BCD62901D1012000E0F6 +:107700000020E87201207DE0D92901D1012000E0AC +:1077100000202873012075E0DFF84008056AB5F9FC +:1077200056000128C0F20D840020A5F856003B4603 +:1077300002464FF47A71082007F058FE00F001BCB1 +:107740000021032980F2FD830A180B5D82F8843042 +:10775000022905D10A5D80F887200A5D80F888201B +:10776000491CEEE70026032E80F2EB83DFF8EC07DE +:10777000456805EB4605022204EB460105F1580079 +:10778000FDF7B8F9B5F95810DFF8D807FAF70AFE8F +:10779000761CE8E70026032E80F2D383DFF8BC07CF +:1077A000056805EB4605022204EB460105F1580089 +:1077B000FDF7A0F9B5F95810DFF8AC07FAF7F2FDBC +:1077C000761CE8E7297C090640F1BB832178090291 +:1077D00001F4E06162788918A0F88A10A1780902A2 +:1077E00001F4E061E2788918A0F88C1004212046A9 +:1077F000DFF86827D269126E92699047002840F03E +:10780000A083002013B0F0BD032221460120DFF841 +:107810004C379B681B6E1B6A98470120F2E71B22BE +:1078200021460720DFF834379B681B6E1B6A984798 +:107830000120E7E7DFF824078569286E8068804724 +:107840000028DED00122214605202B6E1B6A9847B6 +:10785000D7E7D6F80510DFF81407FAF7A3FDD0E74D +:10786000FDF75EFC002802D0FDF77BFCC9E7FDF7C1 +:10787000DCFC0028C5D0FDF7ABFCC2E794F9005052 +:107880000422611C08A8FDF735F9B6F801000628A6 +:1078900006DB0422611D09A8FDF72CF994F9097093 +:1078A000042D04D1DFF8B4060069A17A8172009733 +:1078B000099B00220899284607F030FD2070A0E7B8 +:1078C00094F900500422611C08A8FDF713F9002365 +:1078D0001A460899284607F089FD93E794F9005065 +:1078E0000422611C08A8FDF705F9B6F80100062876 +:1078F00006DB0422611D09A8FDF7FCF894F9097064 +:107900000097099B00220899284607F0B1FD2070D6 +:1079100077E720780146032906D01A2911D02529B6 +:1079200013D0282915D018E060788DF80A000128B6 +:1079300040F00783A0788DF80B00204600F018FC7B +:10794000FFE2204600F014FCFBE2204600F010FCB1 +:10795000F7E2204600F00CFCF3E294F9011040B28B +:1079600008F02AFCC0B24DE7207801460E3908D055 +:10797000091F03291CD9091F37D0491E00F09B801D +:107980000EE10E208DF8080060788DF80A00A178CD +:107990008DF80B10E2788DF80C200023ADF80D3037 +:1079A00052B249B240B2FAF74AFF00F0D8FBF7E012 +:1079B0008DF80800122802D161788DF80A1013287A +:1079C00002D161788DF80B10142802D161788DF8FE +:1079D0000C10152802D160788DF80A0062782178A1 +:1079E000DFF88C05FAF7DEFCDAE06078A1780904AC +:1079F00001EB0060E17800EB012021794018CDF81F +:107A00000A006079A179090401EB0060E17900EBDB +:107A10000120217A4018CDF80E00607AA17A09047D +:107A200001EB0060E17A00EB0120217B4018CDF8EA +:107A30001200607B8DF81600A07B8DF81700E07BAC +:107A40008DF81800207C8DF81900607C8DF81A00E4 +:107A5000A07CE17C11EB002000B20146ADF81B10C8 +:107A6000217D00EB0120617D4018ADF81D00A07D57 +:107A70008DF81F00DDF80A00002807D1DDF80E00A0 +:107A8000002803D1DDF81200002809D00DF10A0109 +:107A900084B068461622FBF725F80FBCFAF778FF8A +:107AA0000DF10A0184B068461622FBF71BF80FBCE3 +:107AB00000F082FB74E060788DF809001D283ED14B +:107AC000A0788DF81300A07801280ED1E0782179F4 +:107AD00011EB0021ADF80A1089B20A469DF8091091 +:107AE0000FF29440FAF75EFC5AE002280BD1E078DE +:107AF000217911EB0021ADF80C1089B20FF288400A +:107B0000FAF750FC4CE003280BD1E078217911EB17 +:107B10000021ADF8141089B20FF27840FAF742FC58 +:107B20003EE004283CD1E078217911EB0021ADF84A +:107B3000161089B20FF26840FAF734FC30E02628BC +:107B400009D1A0788DF80E00A078012828D1E0781E +:107B50008DF80D0024E01C2822D1A0788DF80D00AE +:107B6000A078012807D1E1788DF80A100FF23C4087 +:107B7000FAF718FC14E0022807D1E1788DF80B1011 +:107B80000FF23C40FAF70EFC0AE0032808D0052863 +:107B900006D1E1788DF80C100FF23840FAF702FCAC +:107BA00006208DF8280020780B900DF1310002A9F5 +:107BB0001822FAF797FF0B208DF830000020ADF85F +:107BC0004A000AA800F01EFBC0B21BE620782B2852 +:107BD00005DB0FF21440FAF7E5FB002012E640B295 +:107BE00007F095FD012840F03F81207801460329E8 +:107BF00024D0062961D0092927D00C2941D00D298C +:107C00004DD019297DD01A2964D01B2900F08E800F +:107C10001C2900F0C9801D2900F0A1801E2900F058 +:107C2000D080252900F0E980262900F0D880272976 +:107C300000F0EA80282900F00E8110E10322611C87 +:107C40000DF10A00FCF756FF0EE10722611C0DF151 +:107C50000A00FCF74FFFBDF80A00010A41EA0020C4 +:107C6000ADF80A00BDF80C00010A41EA0020ADF8A9 +:107C70000C00BDF80E00010A41EA0020ADF80E002C +:107C8000F2E00322611C0DF10A00FCF733FFBDF89E +:107C90000B00010A41EA0020ADF80B00E4E00322EA +:107CA000611C0DF10A00FCF725FFBDF80B00010A6D +:107CB00041EA0020ADF80B00D6E00122611C0DF175 +:107CC0000A00FCF717FF9DF80A100FF23830FAF798 +:107CD00069FBC9E00822611C0DF10A00FCF70AFFEC +:107CE000BDF80D00010A41EA0020ADF80D000023A7 +:107CF0009DF911209DF910109DF90F00FAF79FFDD5 +:107D0000B2E00622611C0DF10A00FCF7F3FEBDF89B +:107D10000A00010A41EA0020ADF80A00BDF80E0091 +:107D2000010A41EA0020ADF80E009DE00422611C2A +:107D30000DF10A00FCF7DEFEBDF80A00010A41EA77 +:107D40000020ADF80A00BDF80C00010A41EA00204D +:107D5000ADF80C000FF2B820FAF724FB84E00922FA +:107D6000611C0DF10A00FCF7C5FEBDF80A00010A0E +:107D700041EA0020ADF80A00BDF80C00010A41EA12 +:107D80000020ADF80C00BDF80E00010A41EA002009 +:107D9000ADF80E0000239DF912209DF911109DF9F8 +:107DA0001000FAF74CFD5FE060788DF80A00A078CB +:107DB0008DF80B00A27861780FF26020FAF7F2FAE2 +:107DC00052E00322611C0DF10A00FCF793FEBDF89E +:107DD0000B00010A41EA0020ADF80B0044E0052247 +:107DE000611C0DF10A00FCF785FEBDF80B00010ACD +:107DF00041EA0020ADF80B0036E00922611C0DF1CC +:107E00000A00FCF777FE2FE00A22611C0DF10A0040 +:107E1000FCF770FEBDF90A00C0F3072141EA00201B +:107E2000ADF80A00BDF90C00C0F3072141EA0020BB +:107E3000ADF80C00BDF90E00C0F3072141EA0020A7 +:107E4000ADF80E00BDF91000C0F3072141EA002093 +:107E5000ADF8100008E060788DF80A0004E08DF8B5 +:107E6000080060788DF8090020780146052906D1C0 +:107E7000404801210170687A00280DD161E018297D +:107E80000AD18DF8080060788DF80900A0788DF887 +:107E90000A00E0788DF80B0000208DF8280020788B +:107EA0000B900DF1310002A91822FAF71BFE0B20EE +:107EB0008DF830000020ADF84A000AA800F0A2F9C1 +:107EC000C0B29FE420782B2805DB0FF26010FAF790 +:107ED00069FA002096E4052804D1264800210170A3 +:107EE00001208FE41A280CD10522611C0DF10A0033 +:107EF000FCF700FEBDF80D00010A41EA0020ADF8D4 +:107F00000D0001208DF8280020780B900DF1310034 +:107F100002A91822FAF7E6FD0B208DF830000AA816 +:107F200000F070F9C0B26DE42078002802D0052876 +:107F300005D006E00FF21410FDF7FCF801E0FFF7A2 +:107F4000BAF901205EE404F10802211D2046FCF785 +:107F5000DDFB012056E40000847A00200840002068 +:107F60008C900020C4B60208D0B60208DCB6020825 +:107F7000E8B60208142901204C54205350202564EF +:107F80002C202564000000004C542057502025640C +:107F9000000000004C5420535220256400000000D3 +:107FA0004C54205341522025640000005B41504452 +:107FB000525D204E545F5357554E202564000000FB +:107FC0005B415044525D204E545F54575553202519 +:107FD000640000005B415044525D204E545F4241BA +:107FE00054434820256400004C6962726172792014 +:107FF00072616E6765206973206F7665722C20410F +:108000006464000050443A2053432025640000007B +:108010004C542053532041444400000041504452EA +:108020002041444420256420256400004C6962728C +:108030006172792072616E6765206973206F766561 +:10804000722C2052656D6F766500000041505F52C2 +:10805000455155455354000069487047F8B50C46E2 +:108060001646012500282BD106EB8600644901EB5A +:10807000C007F868E040C00708D52346FA683146D3 +:108080000FF2FC20FAF78EF90220F2BD4FF0FF301C +:10809000009003462A467968204607F03FF90028F9 +:1080A0000CD02346FA6831460FF2E420FAF77AF949 +:1080B000F8682946A1400843F8602CE00220F2BD90 +:1080C000012828D106EB86004D4901EBC007F8686E +:1080D000E040C00708D42346FA6831460FF2C020BA +:1080E000FAF760F9032516E04FF0FF332A46796866 +:1080F000204607F07BF9002807D02346FA6831466E +:108100000FF2AC20FAF74EF900E00325F8680121E0 +:10811000A1408843F8602846F2BD08F059B802B57E +:108120008AB00021ADF8221001910A218DF80810C3 +:1081300000218DF809108DF80A1005218DF8001026 +:10814000019004220AA90DF10900FCF7D3FC0020DC +:10815000ADF8220000A800F055F80BB000BD80B5C6 +:1081600009F060F80FF25820BDE80240FAF71AB99A +:1081700038B5447885780078032810D01A281AD1A9 +:10818000012C18D101200AF046FC012322461A21B5 +:108190000FF2382001B0BDE83040FAF703B9012CE6 +:1081A00009D1284609F049F829460FF23020BDE8E8 +:1081B0003440FAF7F7B831BD0FB480B5002805D1C7 +:1081C0000846002802D11046002804D00BF0E1F93F +:1081D000C046C04601E00BF0C5F901BC5DF814FBD8 +:1081E00000222B2809D200EB8003054800EBC300D6 +:1081F000C068C840C00700D5012210467047000083 +:10820000ECBB002030B585B00446012594F9000090 +:10821000062800F2A180DFE800F00428445F76978A +:108220009B0004F1090182B068461822FAF75AFC53 +:108230000CBC94F90810606840B207F002FC0228F8 +:108240000AD1606800B207F0E1FD002561680FF215 +:108250009810FAF7A7F885E0032840F0838061685A +:108260000FF28C10FAF79EF87CE060681A280AD1A9 +:1082700004F1090008F059F8637B227BE17A0FF2E0 +:108280007810FAF78FF894F90810606840B207F098 +:10829000D8FC032866D161680FF27410FAF782F8EF +:1082A00060E0618C00A807F0CBFD9DF90400022876 +:1082B0000AD1009800B207F0A9FD002500990FF23D +:1082C0005810FAF76FF84DE003284BD100990FF2E0 +:1082D0005010FAF767F845E00BF078FA02280AD157 +:1082E000606800B207F092FD002561680FF2381057 +:1082F000FAF758F836E0032834D161680FF23010ED +:10830000FAF750F82EE0606805280CD128460BF0EB +:1083100024FB02280DD0032824D161680FF220101D +:10832000FAF740F81EE002281CD10BF007FC0228E7 +:10833000F1D1606800B207F069FD002561680FF2B5 +:10834000F800FAF72FF80DE0204607F0DEFD09E00F +:10835000204607F089FF05E061680FF2EC00FAF7AC +:1083600021F80025284605B030BD012070470FB424 +:10837000022004B07047012070470020704770470A +:10838000534D4143202564202564202564000000CE +:10839000534D412025642025642025640000000001 +:1083A000534D52432025642025642025640000009D +:1083B000534D5220256420256420256400000000D0 +:1083C000504420536574535400000000415420521F +:1083D000492D256420256420256400005044205543 +:1083E000542D256400000000414C4F4620256400B8 +:1083F000414C4346202564004F4A4820454C2030DC +:10840000782578203078257820307825780000008D +:10841000524C434620256400504C4F4620256400B2 +:10842000504C43462025640050414F4620256400AF +:10843000504143462025640050504F46202564009B +:1084400050504346202564004558204C4D454C2053 +:10845000256400005FF0FF0C1CEAD05114BF614599 +:1084600006E0C110400721F0E04101F16051704782 +:1084700079B900F0004100020AD0B0FA80FC00FA9D +:108480000CF001F16051A1EB0C5101EBD021400542 +:10849000704741020CBF40F4E0016FF00001002082 +:1084A000704700004FEAF17CBCF1E04C2CBFBCF5FA +:1084B000001F11E05FEA4C0C34BFBCF17F5F2EE07F +:1084C0005FEA9C0C4FEA0C1C4FEA3C0CC10071F1B6 +:1084D00000414CEB50707047C90241EA5051C00254 +:1084E00018BF41F0010141F000414FEA6C50C0F16A +:1084F0000900212810D240EACC7CCCF1200C11FAE2 +:108500000CF070F10040CCF1200C21FA0CF00CF0D2 +:10851000004C40EB0C0070474FEACC7070474900AC +:1085200011F5001F04D84FEACC10FF30C00570478A +:10853000C81770471FB50BF061FB212101601FBDFB +:10854000DFF8AC1100220A700A70012802D004285A +:1085500003D07047012008707047052008707047ED +:1085600064490860704710B463494A6802F00C021D +:10857000082A13D10A680B6803F03F03604CB4FB70 +:10858000F3F30A68C2F388125A430B68C3F301433A +:108590005B1C5B00B2FBF3F2026001E0584A026030 +:1085A0004A6802F0F003574A1B099B5C046824FAEE +:1085B00003F343604C6804F4E054A40AA45CE34071 +:1085C0008360496801F46041490B895C426822FA82 +:1085D00001F1C16010BC7047484900F44072B2F527 +:1085E000407F06D10A6822F4F812474B03401A4331 +:1085F0000A608A6E000552EA105088667047434947 +:1086000008607047424908607047424A0029116873 +:1086100002D008431060704721EA000010607047E4 +:108620003D4A0029116802D008431060704721EAD2 +:10863000000010607047394A0029116802D00843D1 +:108640001060704721EA000010607047344A00292A +:10865000116802D008431060704721EA00001060E2 +:108660007047304A0029116802D0084310607047F3 +:1086700021EA0000106070472B4A0029116802D0DF +:1086800008431060704721EA000010607047274AD5 +:108690000029117802D008431070704721EA0000C9 +:1086A000107070474109114A012901D1116804E095 +:1086B000022901D1116F00E0516F00F01F0021FA73 +:1086C00000F000F0010070471948016841F0807126 +:1086D000016070470021174A1268024200D0012150 +:1086E000084670471449087070470000003802407F +:1086F00070380240800E4742043802400838024079 +:108700000024F4003C7A0020FFFCFF0F3C0E47429F +:10871000400E474230380240403802404438024060 +:108720001038024020380240243802400D38024000 +:10873000743802400C3802400E38024080B5274998 +:10874000884209D101210846FFF780FF002101205E +:10875000BDE80440FFF77ABF2149884209D10121D1 +:108760000220FFF773FF00210220BDE80440FFF75D +:108770006DBF1C49884209D101210420FFF766FF23 +:1087800000210420BDE80440FFF760BF164988427D +:1087900009D101210820FFF759FF00210820BDE879 +:1087A0000440FFF753BF1149884209D1012110202D +:1087B000FFF74CFF00211020BDE80440FFF746BF43 +:1087C0000B49884209D101218020FFF73FFF00219A +:1087D0008020BDE80440FFF739BF01BD0000024022 +:1087E0000004024000080240000C02400010024059 +:1087F000001C0240F0B4002232E0012393400C68D8 +:108800001C409C422BD154000325A540ED43066833 +:108810002E40066006680F79A7403E4306600E7939 +:10882000012E01D0022E11D186682E408660866806 +:108830004F79A7403E438660466826EA03034360BB +:1088400043688E799640B6B233434360C3682B4089 +:10885000C360C368CD7905FA04F42343C360521C96 +:10886000102ACAD3F0BC70474FF6FF710160002197 +:10887000017141718171C171704700220069084224 +:1088800000D0012210467047018370474183704732 +:1088900010B4CB1000EB830001F007018900036ADC +:1088A0000F248C40A3430362036A02FA01F11943C7 +:1088B000016210BC7047000080B5434988420BD16B +:1088C00001214FF40010FFF7CCFE00214FF40010FF +:1088D000BDE80440FFF7C5BE3C4988420BD10121E9 +:1088E0004FF48000FFF7BDFE00214FF48000BDE88B +:1088F0000440FFF7B6BE364988420BD101214FF440 +:108900000000FFF7AEFE00214FF40000BDE8044078 +:10891000FFF7A7BE01BD7FB504460D46A68800A897 +:10892000FFF721FE02992B48B1FBF0F04FF6C07221 +:1089300032400243A28022884FF6FE731A40228002 +:108940002A68254B9A420AD25200B1FBF2F10A463C +:1089500092B2042A00DA0421401C208421E0EB8832 +:108960004BF6FF76B34204D102EB4202B1FBF2F1C7 +:1089700006E019235A43B1FBF2F141F4804189B278 +:108980000A0502D141F0010189B241F4004180B2EF +:108990004FF4967250434FF47A7290FBF2F0401C01 +:1089A0002084A183208840F00100208020884FF699 +:1089B000F5310840A9880843698908432080A889BF +:1089C0002989084320817FBD0054004000580040A1 +:1089D000005C004040420F00A18601000029018890 +:1089E00003D041F00101018070474FF6FE72114043 +:1089F000018070470029018803D041F48071018013 +:108A000070474FF6FF6211400180704700290188CE +:108A100003D041F40071018070474FF6FF521140BE +:108A200001807047002A02D041F0010101E001F00D +:108A3000FE01018270470029018803D041F4806162 +:108A4000018070474FF6FF321140018070470029C6 +:108A5000018803D041F40041018070474904490C6A +:108A60000180704782B002460020034601930093C4 +:108A700000920A0F01920902090A019A002A03D002 +:108A8000009A1432009203E0090C009A1832009206 +:108A9000009A12680A4200D0012002B0704700001C +:108AA00080B5254988420BD101214FF48050FFF752 +:108AB000E3FD00214FF48050BDE80440FFF7DCBD2A +:108AC0001E4988420BD101214FF48040FFF7C9FDB8 +:108AD00000214FF48040BDE80440FFF7C2BD1849B3 +:108AE00088420BD101214FF40040FFF7BAFD00216D +:108AF0004FF40040BDE80440FFF7B3BD01BD02885C +:108B000002F441520B881A434B881A438B881A434C +:108B1000CB881A430B891A434B891A438B891A4312 +:108B2000CB891A430280828B4FF2FF731A408283F3 +:108B3000098A01827047000000300140003800407F +:108B4000003C00400029018803D041F04001018031 +:108B500070474FF6BF72114001807047002A82882B +:108B600002D011438180704722EA01018180704761 +:108B700000220089084200D0012210467047000000 +:108B8000016849084900016000210160416081607D +:108B9000C1600161212141616A49884203D16A486B +:108BA0003D21016070476949884204D166484FF40D +:108BB0007461016070476649884204D162484FF48D +:108BC0007411016070476349884204D15E484FF0D8 +:108BD0007461016070476049884203D15A485F4917 +:108BE000416070475E49884203D157485D49416002 +:108BF00070475D49884203D153485C4941607047E2 +:108C00005B49884204D150484FF03D514160704764 +:108C10005849884203D158483D210160704757495F +:108C2000884204D154484FF474610160704754493C +:108C3000884204D150484FF4741101607047514983 +:108C4000884204D14C484FF07461016070474E492E +:108C5000884203D148484149416070474B498842A6 +:108C600003D145483F49416070474949884203D193 +:108C700041483E49416070474649884203D13E48D9 +:108C80004FF03D51416070470268434B1A400B68FA +:108C90001A43CB681A434B691A438B691A43CB6951 +:108CA0001A430B6A1A434B6A1A438B6A1A434B6B7B +:108CB0001A438B6B1A4302604269D208CB6A53EAAB +:108CC000C2020B6B1A4342610A6942604A688260C1 +:108CD0008968C16070470029016803D041F0010133 +:108CE000016070474908490001607047002A01D0BF +:108CF00001617047C1607047006800F00100704773 +:108D000000221C4B984201D2244800E024488B00EA +:108D100001D5406800E0006808402249084200D0C0 +:108D2000012210467047134A904201D21B4800E0CE +:108D30001B481C4A0A40890001D5C2607047826006 +:108D40007047000010600240086002402860024046 +:108D50004060024058600240706002403D000020C8 +:108D600088600240400F0020A060024000003D20CB +:108D7000B860024010640240086402402864024067 +:108D800040640240586402407064024088640240BB +:108D9000A0640240B86402403F801CF000600240C2 +:108DA000006402407D0F7D0F024908607047024950 +:108DB0000860704720000E4224000E4270B5044641 +:108DC0000026DFF83854CA20E8615320E86100F03B +:108DD00018F8002811D0286820F040002860286882 +:108DE000216808432860A068A860A868616840EA14 +:108DF0000140A86000F024F80126FF20E861304619 +:108E000070BD81B000200090DFF8F40301684906CE +:108E100013D44FF0FF310160016801F04001009A66 +:108E2000521C0092009AB2F5803F01D00029F3D085 +:108E30000068800900F0010000E0012001B07047E7 +:108E4000DFF8BC03016821F080010160704781B048 +:108E500000200090DFF8A813CA20886153208861A1 +:108E6000086820F0A0000860086800F02000009A60 +:108E7000521C0092009AB2F5003F01D00028F3D0B6 +:108E80000868400900F00100FF228A6101B07047C4 +:108E9000F8B507460E460024DFF85C53002FA8689B +:108EA00004D140060AD42046F07007E0400603D5FE +:108EB000307800F0BEF901E02046F0703078002FE5 +:108EC00009D07178090241EA0040B1780843F1788D +:108ED00040EA01460FE000F0A1F90746707800F083 +:108EE0009DF9000240EA0747B07800F097F938434F +:108EF000F17840EA0146CA20686253206862FFF7B1 +:108F000080FF00280FD0DFF8FC0230402860FFF718 +:108F100097FFA868800605D4FFF799FF002802D0C4 +:108F2000012400E00124FF2068622046F2BD10B554 +:108F30000C46DFF8C4120968DFF8C82211400A0C99 +:108F400002F03F0323700B0A03F07F03637001F00C +:108F50007F01A17002F04001E17000280BD1207860 +:108F600000F067F92070607800F063F96070A07815 +:108F700000F05FF9A07010BDDFF88C12486A096834 +:108F8000704770B506460D460024002E06D168785D +:108F9000C10603D500F0EF000A306870002E05D03E +:108FA000687800F046F9A87800F043F9E878002ED8 +:108FB00009D06978090241EA0040A9780843297874 +:108FC00040EA41360FE000F029F90646687800F0E3 +:108FD00025F9000240EA0646A87800F01FF9304360 +:108FE000297840EA4136DFF82052CA20286253200F +:108FF0002862FFF706FF00280FD0DFF8100230408C +:109000002860FFF71DFF6868800605D4FFF71FFF83 +:10901000002802D0012400E00124FF20286220461D +:1090200070BD10B50C46DFF8E0110968DFF8DC21EF +:1090300011400A0CE2700A0A02F01F02627001F08D +:109040003F02A270490B01F00701217000280BD1EB +:10905000E07800F0EEF8E070607800F0EAF8607018 +:10906000A07800F0E6F8A07010BDDFF89011CA22D9 +:10907000CA615322CA610A68D208D2000A600A682B +:1090800010430860FF20C8617047DFF88411CA22CE +:109090000A6153220A610860FF200861704781B0AD +:1090A00000210091DFF85411CA22CA615322CA611B +:1090B0000028086804D040F480600860012012E0B5 +:1090C00020F480600860486800F00400009A521C98 +:1090D0000092009AB2F5803F01D00028F3D0486892 +:1090E000800800F00100FF22CA6101B0704781B022 +:1090F00000220092474A0092009A02EB8000009002 +:109100000098016001B0704781B000210091414991 +:109110000091009901EB800000900098006801B078 +:10912000704738B500242246344DCA23EB615323DF +:10913000EB616B681B0701D406E0521C6B681B07D0 +:1091400002D5B2F5805FF8D16A68120709D42A689F +:10915000D20606D408436862FFF779FE002800D0E3 +:109160000124FF20E861204632BD244ACA23D3618E +:109170005323D36100F0040320F004000029116898 +:1091800005D008431060906B1843906305E021EA16 +:1091900000001060906B98439063FF20D06170478F +:1091A0000021174A12681C4B1A40024200D00121CC +:1091B0000846704710B40021104A936B03F0040373 +:1091C0001468044003EAD0332343526802EA1010C3 +:1091D00002D0000400D00121084610BC70470849A5 +:1091E0000003000C40F080000A6802F0800262EA8E +:1091F0000000086070470000002800400828004078 +:109200000C2800407F7F7F00042800403FFFFF00C4 +:1092100014280040502800407F3F0100002101E059 +:10922000491C0A38C0B20A28FADA40EA0110C0B272 +:109230007047010901EB810200F00F0000EB4200D2 +:10924000C0B2704730B40168CB4321498279002A0B +:1092500027D00A4614682340136053680468A34368 +:1092600053600379CC18236805682B432360936807 +:109270000468A3439360D3680468A343D36043792D +:109280000568102B07D1916829439160D168006867 +:109290000843D0600AE051FA83F420682843206034 +:1092A00004E000790C1820681840206030BC70473A +:1092B0000021074A136803405269024202D0002B82 +:1092C00000D001210846704702490860704700003D +:1092D000003C0140143C0140194908431949086009 +:1092E000704770B403781A460121C478002C1DD051 +:1092F000144B1B6803F4E063C3F5E0631B0A447876 +:10930000C3F10405AC4085780F2646FA03F32B40E1 +:1093100023431B010C4C1355007842110B4B00F0FA +:109320001F0001FA00F043F8220006E05011084A3D +:1093300003F01F03994042F8201070BC70470000F2 +:109340000000FA050CED00E000E400E000E100E0C0 +:1093500080E100E030B401F00302920021F003014B +:10936000054BCC580F259540AC43CC50CC58904081 +:109370002043C85030BC70470838014080B50121F7 +:109380004FF48070FFF778F900214FF48070BDE84A +:109390000440FFF771B942684C4B1A400B7942EA1E +:1093A00003220B681A4342608268494B1A400B69DA +:1093B0001A43CB681A438B681A434B7942EA43023B +:1093C0008260C26A22F47002097D491EC9B242EA73 +:1093D0000151C162704700210160017141718160DA +:1093E000C16001610121017570473A490A683A4B31 +:1093F0001A4003681A4343681A4383681A43C068D3 +:109400001043086070470021016041608160C160C5 +:1094100070470029816803D041F0010181607047E5 +:10942000490849008160704770B407240A290BDBA2 +:10943000C568A1F10A0606EB4606B44025EA040415 +:10944000B3402343C36008E0056901EB4106B44023 +:1094500025EA0404B3402343036113461F24072B6A +:1094600009DA436B521E02EB82029440A3439140FF +:109470001943416314E00D2B09DA036BD21F02EB91 +:1094800082029440A34391401943016308E0C36AF8 +:109490000D3A02EB82029440A34391401943C1620A +:1094A00070BC7047816841F080418160704700293D +:1094B000816803D041F480618160704721F480614C +:1094C00081607047C06C80B270470000FFFEFFFCF7 +:1094D000FDF7FFC004230140E030FCFF00220068DC +:1094E000084200D0012210467047000013F0004CE3 +:1094F00003D55B42524263F100039CEA210C00F069 +:10950000178010B5644603D34942404261F100011F +:1095100000F00EF8640004D34942404261F10001BA +:10952000244203D55B42524263F1000310BD0000A8 +:109530001B4213D1094236D12AB18446B0FBF2F066 +:1095400002FB10C270470AF05FBBFCD3002200236D +:1095500070470B000200002100207047904271EB21 +:10956000030CF6D370B5B1FA81F4B3FA83F52C1B72 +:10957000A340C4F1200532FA05F63343A2405FF060 +:109580000046E64002E05B085FEA3202841A71EBB3 +:10959000030524BF204629467641F4D302000B0080 +:1095A0003000002170BD012ACFD970B5140C20D035 +:1095B000B1FA81F4B2FA82F5C4F120046419B4F16D +:1095C0002006D6D3B2405FF00044F440002502E00C +:1095D00052085FEA3303C61A71EB020E24BF30460D +:1095E000714664416D41F3D302000B002000290055 +:1095F00070BD0C46B1FBF2F102FB11452D0445EAAA +:109600001045B5FBF2F402FB145580B240EA054563 +:10961000B5FBF2F002FB105240EA044070BD0000BE +:1096200000B500BF130096469446103928BFA0E845 +:109630000C50FAD85FEA417C28BF0CC048BF40F804 +:10964000042BC90728BF20F8022B48BF00F8012BC4 +:1096500000BD00002DE9F04FA1B0824602AE00200F +:1096600017461D46029170620DF144080AE017F892 +:10967000011B0298D0470290002800F0DA82706A3D +:10968000401C7062387808B9706AD4E22528EED19F +:109690000020F06030617061B061F061306201E023 +:1096A00040F0010017F8011F2029F9D023290DD01F +:1096B0002B2904D02D2906D030290AD00CE040F007 +:1096C000020080B2EEE740F00400FAE740F0080044 +:1096D000F7E740F01000F4E72A290DD129680A1DA8 +:1096E0002A600968F162002904D5494240F004006B +:1096F000F16280B27F1C13E00021F1620BE0F16A9D +:109700006FF00043994205D001EB810302EB430166 +:109710003039F1627F1C3A78A2F130010A29EED388 +:1097200039782E2903D04FF0FF31B1621EE017F8CF +:10973000011F2A2906D129680A1D2A607F1C096891 +:10974000B16213E00021B1620BE0B16A6FF0004337 +:10975000994205D001EB810302EB43013039B1623C +:109760007F1C3A78A2F130010A29EED330860FF639 +:10977000604039780AF04AFA08B117F8010B8DF801 +:109780003A009DF83A00682802BF397868296220BB +:1097900005D06C2804BF38786C2803D171208DF86F +:1097A0003A007F1C11A8B0603978B1F1250029D0AA +:1097B0001C3800F0C080001F022840F2BC80133823 +:1097C00000F0E480093800F0B680801E00F0778158 +:1097D000401E00F02081401E022840F2AC80001F95 +:1097E00000F01981401F7BD0401E00F0CF80401E4A +:1097F00022D0C01E0BD0801E00F0C880C01E00F01A +:10980000C58064E1F068411CF160252169E12868A8 +:10981000011D29600068B26A7060002A02D5FBF75A +:10982000C9F807E000210AF0FDF900281ABF7168A5 +:10983000401AB06A306156E12868011D2960002194 +:109840000068CDE900014FF03C0E11A87060DDE921 +:10985000000111B908B9B26ACAB10206120FA0EB31 +:1098600002123032AEF10103D2B29E463A2AA8BFAC +:109870002732000903F8082040EA0170090908BFEF +:10988000002804D0726811AB73449A42E5D311A941 +:1098900071447160CEF13C00B16A3061884207DAF0 +:1098A000081AB0614FF6EF71308E084030861AE129 +:1098B000002940F1188196F8301001F014011029A8 +:1098C00040F01181F16AF268891AB269891AA1EB34 +:1098D000000EBEF1010FC0F20681C6F818E002E1E9 +:1098E0009DF83A00622818D0682806D06A280BD064 +:1098F0006C2819D0712807D016E02868011D29604E +:109900000068716A0180EEE02A68101D2860126804 +:10991000706AC117C2E90001E5E02868011D2960ED +:109920000068716A0170DEE02868011D2960006826 +:10993000716A0160D7E02868C01D20F00700286028 +:1099400000F108022A60D0E90023CDE90023002BB2 +:1099500004D5F068421CF2602D220DE0308E8207A3 +:1099600004D5F068421CF2602B2205E0C00705D543 +:10997000F068421CF260202200F80820F06811AA6A +:109980008018706000A800F0E3F9ACE09DF83A00A0 +:109990006C2808BF2A6811D0712808BF2A6802D035 +:1099A0002A686A280AD1D21D22F007022A601446CA +:1099B00004F108022A60D4E9002303E0131D2B60A0 +:1099C00000231268CDE90023682808BF92B207D0AF +:1099D000622808BFD2B203D0742818BF7A2802D1F7 +:1099E0000023CDE9002396F8300000075FD5DDE9BC +:1099F0000023002B08BF002A59D041F0200078280E +:109A000055D1F068302200F80820401C421CF2605A +:109A100000F808104BE09DF83A0062280CD0682846 +:109A200010D06A281AD06C2823D0712816D0742838 +:109A30001FD07A280CD01CE02868021D2A6090F9FB +:109A400000201AE02868021D2A60B0F9002014E006 +:109A50002868021D2A60002302680FE02868C01DE4 +:109A600020F00700286000F108022A60D0E90023F6 +:109A700004E02868021D2A600268D317CDE900239C +:109A8000002B04DAF068421CF2602D220DE0308ECB +:109A9000820704D5F068421CF2602B2205E0C00763 +:109AA00005D5F068421CF260202200F80820F0681A +:109AB00011AA8018706000A800F0C0F813E0F068E8 +:109AC000411CF16029680A1D2A60096809E0F068F4 +:109AD000421CF260252200F8082021B1F068421CE7 +:109AE000F26000F80810F06AF168401AB169401A93 +:109AF0003169401AF169401A7169401A316AA0EB64 +:109B0000010996F830007F1C400710D420208DF802 +:109B10004000002409E0012310AA00A9504600F0EB +:109B200040FC002840F08580641C4C45F3DBF46861 +:109B30000DF1440B0AE01BF8011B0298D04702907C +:109B4000002876D0706A401C7062641E002CF2D12E +:109B500030208DF840004FF0000BB46909E001237C +:109B600010AA00A9504600F01CFC002861D10BF19E +:109B7000010BA345F3DB3469D6F804B00AE01BF807 +:109B8000011B0298D0470290002852D0706A401CF6 +:109B90007062641E002CF2D130208DF840004FF02E +:109BA000000BF46909E0012310AA00A9504600F057 +:109BB000F8FB00283DD10BF1010BA345F3DB306925 +:109BC0007168746900EB010B09E01BF8011B029836 +:109BD000D047029068B3706A401C7062641E002C0B +:109BE000F3D130208DF840004FF0000B346A08E0CC +:109BF000012310AA00A9504600F0D3FBC8B90BF10D +:109C0000010BA345F4DB96F8300040077FF53AAD31 +:109C100020208DF84000002400E0641C4C45BFF675 +:109C200031AD012310AA00A9504600F0BAFB00286C +:109C3000F3D04FF0FF3021B0BDE8F08F2DE9FA47A7 +:109C4000064682B035690A466F2A08BF082705D044 +:109C500041F02000782814BF0A271027D6E9000118 +:109C60003C2480468946642A18BF692A05D1002908 +:109C700003DAD8F1000869EB4909B9F1000F08BF10 +:109C8000B8F1000F0CD1306B50B9082F3BD196F8CA +:109C90003800000737D530203B2485F83B0032E000 +:109CA000CDE90089FB17404649463A46FFF740FC9C +:109CB000B846A8FB0023DDE90089A8EB0202303298 +:109CC000A4F1010AD2B254463A2A03DB9DF80830C7 +:109CD000513B9A180AF8052080465FEA010908BF3F +:109CE000B8F1000F03D0F06861198842D8D3082F6B +:109CF00009D196F83800000705D5605D302802D0FC +:109D0000641E30206055C4F13C00B0616119F160FF +:109D1000316B884207DA081A30624FF6EF71308FE4 +:109D20000840308710E000290ED596F8381001F071 +:109D30001401102908D1716B7269891A326A891A63 +:109D4000081A0128A8BF306204B0BDE8F0870000FF +:109D50002DE9F24F04468EB0D4E90001CDE90201AD +:109D600004AE9DF8380040F02000009061280AD031 +:109D7000206B002848BF062004D404BF0098672841 +:109D800001D1012020636168C1F30A5040F2FF72E3 +:109D900090421CD1080304BF2068002809D1032089 +:109DA000A0619DF8380061381A2836D30FF234616B +:109DB00008E00320A0619DF8380061381A2829D3F3 +:109DC0000FF21861E0680322F8F78CFEB5E1012874 +:109DD00016DA204609F052FF012811DB0027002087 +:109DE0000099612920D1E168302201F8012B4A1C39 +:109DF000E2609DF83820612A0CBF782258220FE0DB +:109E0000626840F2FE3161F31E52471A62604FF001 +:109E1000FF30E5E70FF2C051D4E70FF2C451D1E7AC +:109E20000A706169891C616110B9002500277BE116 +:109E30000098612840F09680206B00284CBF2125B7 +:109E4000451CDDE902012DB26E1CD4E90089002217 +:109E50000023F9F741F83ABF89F00040CDE90280CC +:109E6000CDE902893F1F8DF810200DF1110801E0A6 +:109E700000F20708012E32DBDDE902010022002397 +:109E800009F01EFF2BD21C2102A809F031FFDDE9E9 +:109E90000201F9F76DFAF61F8146012E09DBF9F789 +:109EA00037F802460B46DDE90201F8F777FECDE907 +:109EB000020108F20700072105E009F00F0200F88F +:109EC000012D4FEA2919B9F1010F01DB491EF4D523 +:109ED000491E5CBF002200F8012DF9D5C8E70DF13D +:109EE0001100A8EB00010DF11106A942B8BF0D4603 +:109EF0002DB228002FD4884206DA04A941184978E7 +:109F00000829A8BF0F2100DA002104AA821800E066 +:109F10006D1E12F80139401E8B42F9D00F2904D171 +:109F200004A941184A78521C4A70002802D504AE90 +:109F30006D1C3F1D2DB2681E0DD481190A78303278 +:109F4000D2B23A2A03DB9DF838303A3B9A1801F82E +:109F50000129401EF2D5206B002840F1E580681EE3 +:109F60002063E1E0DDE9020100220023F8F7B4FFFD +:109F70003CBF81F00041CDE902013FB247F297506A +:109F800078434849DFF820B190FBF1F73FB2C7F1C1 +:109F900007069246012E19DBDDE90289F00707D595 +:109FA00052465B4640464946F8F7B8FE8046894629 +:109FB00076105046594652465B46F8F7AFFE824649 +:109FC0008B46002EEAD1CDE9028921E07642904607 +:109FD000DFF8D89012E0F00707D552465B464046BE +:109FE0004946F8F79BFE804689467610504659460A +:109FF00052465B46F8F792FE82468B46002EEAD127 +:10A00000DDE9020142464B46F9F70EF8CDE90201BF +:10A01000009866280CBF07F10A000620216B45183E +:10A02000142DA8BF132530208DF810000DF1110656 +:10A03000DFF87C90012D3DDBDDE90201F9F7AEF997 +:10A0400006F1080104220A23B0FBF3F303EB8306B5 +:10A05000A0EB4600303001F8010D0A20B3FBF0F010 +:10A0600000EB8006A3EB4603303301F8013D521E9E +:10A07000E9D1083D01F10806012DDBDBDDE9020134 +:10A08000F9F78CF9F8F74EFF02460B46DDE90201BD +:10A09000F8F784FD00224B46F8F740FECDE90201B7 +:10A0A000CAE700BFA0860100000024400000F03F86 +:10A0B00084D797410DF11100301A0DF1110602E01D +:10A0C000401E7F1E761C31783029F9D00099662910 +:10A0D00002D13FB2791C03E065290CBF01210021A8 +:10A0E000226B8D182DB2A842B8BF05462DB22900AB +:10A0F0001AD4814204DA885D3528A8BF392000DAF5 +:10A1000030208A19521E00E06D1E12F80139491ED6 +:10A110008342F9D0392802D1885D401C8855002936 +:10A1200002D5761E6D1C7F1C3FB29DF8381000973B +:10A130002BB23246204600F003F80FB0BDE8F08F96 +:10A140002DE9F043054685B01E46D5F83080894696 +:10A150001746012E02DA01260FF28C2749F0200063 +:10A16000BDF93040662808BF641C17D0672840F04E +:10A17000818014F1040FC0F28380444580F2808016 +:10A1800095F83800641C000702D44645B8BFB046B5 +:10A1900024B2B8EB040848BF4FF00008E868A9698A +:10A1A00024B2012C25DA30234A1C0B54B8F1010FDC +:10A1B00003DA95F83810090702D52E211154521CE4 +:10A1C000AA6118EB040FB8BFC8F1000424B26142C1 +:10A1D000A0446962B045B8BF464636B2EE61324629 +:10A1E000AB6939461818F8F77DFCA8EB0600A862A1 +:10A1F000C0E00818A64218DA32463946F8F772FC71 +:10A20000A9697118A961A01B6862B8F1010F03DA8E +:10A2100095F83800000705D5E8682E220A54E86949 +:10A22000401CE861C5F82880A4E022463946F8F7CA +:10A2300059FCA8692018361BB8F1010F03DA95F80C +:10A240003810090703D5E9682E224254401C36B263 +:10A25000A861B045B8BF4646EB6836B23246E11950 +:10A26000C018F8F73FFCA8693018A861A8EB0600F1 +:10A2700068627FE0B9F1610F16D14FF0700918E004 +:10A28000464504DA95F83810090758BFB046B8F1CA +:10A29000010848BF4FF00008B9F1670F14BF4FF035 +:10A2A00045094FF0650904E0B9F1410F08BF4FF0CF +:10A2B0005009A969E86817F8013B0B544A1CB8F12A +:10A2C000010F05DA95F83810090758BFAA6117D5AC +:10A2D0002E211154531CAB61B8F1010F10DB761E17 +:10A2E00036B2B045B8BF464636B23246394618187F +:10A2F000F8F7F8FBA8693018A861A8EB06006862B7 +:10A30000A869E9684718200007F8019B03D42B20AF +:10A3100007F8010B03E02D2107F8011B644200261A +:10A320000DF1080808E00A2200A809F06BFD019869 +:10A3300008F8010B761C009C21B20129F3DA022EE9 +:10A3400006DA49F02000652804BF302007F8010B29 +:10A350004EB9302007F8010B07E0761E02A8305CEA +:10A36000303007F8010B012EF7DAA869E9684018C8 +:10A37000381AE86195F8380000F0140010280DD163 +:10A380006869A9690818696A0818E9690818A96A52 +:10A390000818696B8842BCBF081A286205B0BDE87E +:10A3A000F083F8B504460D4616461F46002004E02B +:10A3B000E86A401CE8627F1E002047B116F8011BC6 +:10A3C000A868A047A8600028F2D14FF0FF30F2BD86 +:10A3D000686A6C747A4C00006E616E004E414E00EB +:10A3E000696E6600494E4600300000000CB41CB592 +:10A3F000044604A801900A46009401AB00A907484E +:10A4000078441830FFF726F9009900220A700028D6 +:10A410005CBF0098001B16BC5DF80CFBEB8AFFFFCD +:10A4200001B58B0718D1121F21D351F8043BA3F1BA +:10A43000013C2CEA030C1CF0803C04BF40F8043BB8 +:10A44000F1E79CFA8CFCBCFA8CF1C1F118018B404D +:10A45000CB4040F8043B13E0042A09D311F8013B38 +:10A46000521E00F8013B5BB18B07F7D1DBE7121DF1 +:10A470005AB111F8013B521E00F8013B03B1F8D16B +:10A4800011001CBF0022F8F7A3FF01BD002801D175 +:10A490000A48806890F84C10642901D0002000E040 +:10A4A000806A7047002801D10448806890F84C10F9 +:10A4B000642901D0002000E0406A704770790020D4 +:10A4C0000248704702480149401A704700000020C6 +:10A4D000002000204C48C168002903D54B49016089 +:10A4E0004B49016070474B48016841F000410160F1 +:10A4F000704770B50446002600290BD0012902D10F +:10A500004FF4807606E0022902D14FF4007601E094 +:10A510004FF4407600F082F809281ED13D4D28689E +:10A5200020F440702860286830432860286820F0B4 +:10A53000F8002860286844F0020108432860286871 +:10A5400040F48030286000F069F8296821F00201A9 +:10A550002960296821F0F801296070BD70B50446B2 +:10A560000D4600F05BF8092813D12A4E306820F41C +:10A5700040703060306840F400703060306840F007 +:10A5800001003060256000F049F831684908490051 +:10A59000316070BD70B505460E4600F03FF80928E1 +:10A5A00011D11C4C206820F440702060206820608D +:10A5B000206840F0010020602E7000F02FF8216824 +:10A5C00049084900216070BD13490860704709209F +:10A5D00011490A68D20301D5012070470A68D206E2 +:10A5E00001D5062070470A68D20501D502207047C0 +:10A5F0000A6812F0EF0F01D0072070470968890739 +:10A6000000D5082070470000043C02402301674544 +:10A61000AB89EFCD103C02400C3C024080B50920D4 +:10A620008DF80000FFF7D3FF8DF8000003E0FFF77F +:10A63000CEFF8DF800009DF800000128F7D09DF8AE +:10A64000000002BD0901002806D500F00F004C4AA9 +:10A65000801800F8041C70474A4A8154704710B5AE +:10A66000401EB0F1807F01D3012010BD464C6060D8 +:10A670000F214FF0FF30FFF7E5FF0020A06007201B +:10A680002060002010BD38B5404D2878401C28704F +:10A690003F4C2078401C2070FBF753F809F0BAFBC0 +:10A6A0002878411E2970002802D19820FAF79EF9D7 +:10A6B0002078012804D16068002801D0FAF7F9F960 +:10A6C0002078401E207031BD10B5314C6078F021EB +:10A6D000084202D09920FAF789F9FAF7F4F960787C +:10A6E000401C607009F0F0FB2A4800684FF47A7152 +:10A6F000B0FBF1F0FFF7B3FF002800D0FEE72648DB +:10A70000264901600E214FF0FF30FFF79BFF607874 +:10A71000F021084202D09920FAF768F96078401ECB +:10A720006070C0B2002803D1BDE81040FAF7C5B987 +:10A7300010BD000010B51A4C4FF400512046418363 +:10A74000C04630BF4FF400512046FEF79DF8F3E7B6 +:10A7500010B40F48006A0F4909684FF47A72B1FBD0 +:10A76000F2F1104A1368CB1A0F4C2468640102D529 +:10A7700012688B1A401C00FB013010BC70470000AF +:10A7800018ED00E000E400E010E000E01A290120EC +:10A7900070790020287A002008ED00E00000000811 +:10A7A0000010024018E000E004ED00E0EFF3058047 +:10A7B000002849F0E983704780B5EFF3108072B646 +:10A7C0000B49096851F47F01094A116080F3108830 +:10A7D0000848006810F4700F02D1A720FAF706F9B4 +:10A7E00005485FF00071016004480021016001BD6F +:10A7F00020ED00E088ED00E03CEF00E034EF00E009 +:10A8000010B5040010480078002805D10F4809F061 +:10A81000FAFB0D48012101700C4809F02AFC2000C8 +:10A820000AF0FAFA0400094809F057FC200010BDAC +:10A8300010B50400054809F01CFC20000AF046FC95 +:10A84000024809F04AFC10BD1D2901204C260120B8 +:10A8500000487047D0110120BFF34F8FDFF8B40CD0 +:10A86000006810F4E060DFF8B01C0843DFF8A41CB7 +:10A870000860BFF34F8FFEE700B583B00020ADF84E +:10A88000040000208DF8060000208DF8070001204C +:10A8900000900DF106037622D0210020F7F752FE3A +:10A8A000002801D1002044E076208DF804009DF8B6 +:10A8B000060050F020008DF80500022301AAD021E7 +:10A8C0000020F7F7E5FD002801D1002031E001204C +:10A8D00000900DF107034922D0210020F7F732FE46 +:10A8E000002801D1002024E049208DF804009DF8C3 +:10A8F000070050F001008DF80500022301AAD021C5 +:10A900000020F7F7C5FD002801D1002011E07620D6 +:10A910008DF804009DF806008DF80500022301AAB9 +:10A92000D0210020F7F7B4FD002801D1002000E07D +:10A9300001200EBD38B50400F7F7B3FC0500DFF8C1 +:10A94000080D0078401CDFF8001D0870DFF8F80CD7 +:10A950004078F021084202D09920FAF747F8FAF738 +:10A96000B2F8DFF8E40C4078401CDFF8DC1C4870DB +:10A97000210089B22800F7F7D3FEDFF8CC0C40782D +:10A98000F021084202D09920FAF730F8DFF8B80C2D +:10A990004078401EDFF8B01C4870C0B2002801D1DA +:10A9A000FAF78BF8FAF7E9FE31BD10B582B0002056 +:10A9B000ADF80000F7F775FC04006B208DF800007F +:10A9C00080208DF80100022300AAD0210020F7F793 +:10A9D0005FFD002801D1002094E064212000F7F7FA +:10A9E0009FFEFFF749FF002801D100208AE06B207D +:10A9F0008DF8000000208DF80100022300AAD0216C +:10AA00000020F7F745FD002801D100207AE0282139 +:10AA10002000F7F785FE19208DF8000004208DF83E +:10AA20000100022300AAD0210020F7F731FD002801 +:10AA300001D1002066E01A208DF8000003208DF877 +:10AA40000100022300AAD0210020F7F721FD0028F1 +:10AA500001D1002056E01B208DF8000008208DF861 +:10AA60000100022300AAD0210020F7F711FD0028E1 +:10AA700001D1002046E01D208DF8000003208DF854 +:10AA80000100022300AAD0210020F7F701FD0028D1 +:10AA900001D1002036E06A208DF8000000208DF8FA +:10AAA0000100022300AAD0210020F7F7F1FC0028C2 +:10AAB00001D1002026E06C208DF800003F208DF8A9 +:10AAC00001009DF80110DFF8540DF7F76BFC02232D +:10AAD00000AAD0210020F7F7DBFC002801D10020DC +:10AAE00010E06B208DF8000040208DF8010002235B +:10AAF00000AAD0210020F7F7CBFC002801D10020CC +:10AB000000E0012016BD0178407850EA012000B233 +:10AB1000704780B502200090DFF8043D6B22D02101 +:10AB20000020F7F70FFD002801D100205BE0012095 +:10AB30000090DFF8F03C1A22D0210020F7F702FD48 +:10AB4000002801D100204EE001200090DFF8D83C21 +:10AB50001B22D0210020F7F7F5FC002801D10020AE +:10AB600041E001200090DFF8C43C1C22D0210020ED +:10AB7000F7F7E8FC002801D1002034E00120009024 +:10AB8000DFF8AC3C1D22D0210020F7F7DBFC0028C9 +:10AB900001D1002027E001200090DFF8983C6A22D4 +:10ABA000D0210020F7F7CEFC002801D100201AE0C8 +:10ABB00001200090DFF8803C3822D0210020F7F7F8 +:10ABC000C1FC002801D100200DE001200090DFF839 +:10ABD0006C3C1922D0210020F7F7B4FC002801D1E9 +:10ABE000002000E0012002BD80B50020ADF800008B +:10ABF0001A208DF80000DFF8280C00798DF801008C +:10AC0000022300AAD0210020F7F742FC002801D13E +:10AC1000002090E01B208DF80000DFF8040C407944 +:10AC20008DF80100022300AAD0210020F7F730FCA4 +:10AC3000002801D100207EE01C208DF80000DFF804 +:10AC4000E00B80798DF80100022300AAD0210020BA +:10AC5000F7F71EFC002801D100206CE01D208DF8C4 +:10AC60000000DFF8BC0BC0798DF80100022300AAB8 +:10AC7000D0210020F7F70CFC002801D100205AE079 +:10AC80006A208DF80000DFF8980BC0788DF801007D +:10AC9000022300AAD0210020F7F7FAFB002801D1F7 +:10ACA000002048E019208DF80000DFF8740B807850 +:10ACB0008DF80100022300AAD0210020F7F7E8FB5D +:10ACC000002801D1002036E038208DF80000DFF8A0 +:10ACD000500B007A8DF80100022300AAD021002039 +:10ACE000F7F7D6FB002801D1002024E06B208DF877 +:10ACF0000000DFF82C0B00788DF80100022300AA79 +:10AD0000D0210020F7F7C4FB002801D1002012E079 +:10AD10006C208DF80000DFF8080B40788DF80100FA +:10AD2000022300AAD0210020F7F7B2FB002801D1AE +:10AD3000002000E0012002BD10B582B00020ADF877 +:10AD40000000DFF8DC0A0078400612D56B208DF891 +:10AD5000000000208DF80100022300AAD02100206D +:10AD6000F7F796FB002801D10020C9E03220FFF759 +:10AD7000E1FD6C208DF80000DFF8A40A407810F0A7 +:10AD8000F8008DF80100022300AAD0210020F7F777 +:10AD90007FFB002801D10020B2E06A208DF800007E +:10ADA00000208DF80100022300AAD0210020F7F72F +:10ADB0006FFB002801D10020A2E0002400E0641C09 +:10ADC000062C10DA14F113008DF8000000208DF825 +:10ADD0000100022300AAD0210020F7F759FB002828 +:10ADE000EDD100208CE019208DF8000000208DF8B6 +:10ADF0000100022300AAD0210020F7F749FB002818 +:10AE000001D100207CE01A208DF8000003208DF88D +:10AE100001004FF4FA642000FA281DD0B0F5FA7F43 +:10AE200013D0B0F57A7F09D0B0F5FA6F19D19DF83B +:10AE3000010050F018008DF8010016E09DF80100A7 +:10AE400050F010008DF801000FE09DF8010050F067 +:10AE500008008DF8010008E09DF801008DF8010060 +:10AE600003E09DF801008DF80100022300AAD02123 +:10AE70000020F7F70DFB002801D1002040E0FA2C5C +:10AE800014D0B4F5FA7F0DD0B4F57A7F06D0B4F5BE +:10AE9000FA6F0FD103208DF801000EE002208DF82B +:10AEA00001000AE001208DF8010006E000208DF885 +:10AEB000010002E000208DF801001B208DF8000049 +:10AEC0009DF80100C0008DF80100022300AAD021E6 +:10AED0000020F7F7DDFA002801D1002010E038202B +:10AEE0008DF8000000208DF80100022300AAD02177 +:10AEF0000020F7F7CDFA002801D1002000E0012062 +:10AF000016BD00B583B00020ADF8060000208DF816 +:10AF100004006B208DF8060001208DF80700022345 +:10AF20000DF10602D0210120F7F7B2FA002801D175 +:10AF3000002023E02820FFF7FDFC0120009001AB5A +:10AF40006C22D0210120F7F7FDFA002801D1002062 +:10AF500014E06C208DF806009DF8040010F0C0008D +:10AF60008DF8070002230DF10602D0210120F7F72A +:10AF70008FFA002801D1002000E001200EBD2DE94C +:10AF8000F04F85B004000D0016001F000020ADF842 +:10AF9000040002A80021002206C0083806208DF80F +:10AFA000060038208DF8040000208DF805000223EB +:10AFB00001AAD0210120F7F76BFA002802D15FF037 +:10AFC000FF3070E123208DF8040000208DF805008B +:10AFD000022301AAD0210120F7F75AFA002802D152 +:10AFE0005FF0FF305FE16A208DF8040000208DF8EB +:10AFF0000500022301AAD0210120F7F749FA002811 +:10B0000002D15FF0FF304EE16A208DF80400042089 +:10B010008DF80500022301AAD0210120F7F738FAA4 +:10B02000002802D15FF0FF303DE11A208DF80400C6 +:10B0300001208DF80500022301AAD0210120F7F795 +:10B0400027FA002802D15FF0FF302CE119208DF89B +:10B05000040000208DF80500022301AAD021012060 +:10B06000F7F716FA002802D15FF0FF301BE11B2032 +:10B070008DF804008DF80540022301AAD02101209B +:10B08000F7F706FA002802D15FF0FF300BE1FFB2BC +:10B09000002F0FD01C208DF804008DF805400223EE +:10B0A00001AAD0210120F7F7F3F9002802D15FF0BF +:10B0B000FF30F8E064B2002C02D0C820FFF73AFC61 +:10B0C0006A208DF8040044208DF80500022301AAAF +:10B0D000D0210120F7F7DCF9002802D15FF0FF3022 +:10B0E000E1E023208DF80400FFB2002F03D00820F8 +:10B0F0008DF8050002E070208DF80500022301AAFA +:10B10000D0210120F7F7C4F9002802D15FF0FF3009 +:10B11000C9E00A20FFF70EFC002408E0E4B200209A +:10B1200045F82400E4B2002046F82400641CE4B290 +:10B13000032CF3DB5FF00009B9F1320F6EDA0A205D +:10B14000FFF7F8FB0220009002AB7222D021012011 +:10B15000F7F7F8F9002802D15FF0FF30A3E002A86A +:10B16000FFF7D1FC9DF8061090FBF1F8B8F1070F3E +:10B1700002DA7FF0010096E000241AE05FFA8AFA12 +:10B1800055F82AB05FFA8AFA02A810EB4A00FFF7D6 +:10B19000BAFC0BFA80F05FFA8AFA45F82A001AF135 +:10B1A000010A5FFA8AFABAF1030FE7DB19F1010924 +:10B1B000641CE4B24445BFDAB9F1320FBCDA9DF841 +:10B1C0000600009002AB7422D0210120F7F7BAF9F3 +:10B1D000002802D15FF0FF3065E0FFB2002F1AD0E7 +:10B1E0005FF0000A5FFA8AFABAF1030FDEDA5FFA5B +:10B1F0008AFA56F82AB05FFA8AFA02A810EB4A00D7 +:10B20000FFF781FC0BFA80F05FFA8AFA46F82A0011 +:10B210001AF1010AE6E75FF0000AC2E723208DF881 +:10B22000040000208DF80500022301AAD02101208E +:10B23000F7F72EF9002802D15FF0FF3033E05FF01E +:10B24000000A0FE05FFA8AFA55F82A004FF47A7183 +:10B250004843322190FBF1F05FFA8AFA45F82A0060 +:10B260001AF1010A5FFA8AFABAF1030FEADBFFB2B8 +:10B27000002F17D05FF0000A0FE05FFA8AFA56F845 +:10B280002A004FF47A714843322190FBF1F05FFAC3 +:10B290008AFA46F82A001AF1010A5FFA8AFABAF124 +:10B2A000030FEADB012005B0BDE8F08F2DE9F04384 +:10B2B00089B004000D00160000275FF0010801A806 +:10B2C000002101605FF000090320009001AB0D2216 +:10B2D000D0210120F7F736F9002801D15FF0FF38BF +:10B2E0005FF0000905E005A8002140F8291019F1D8 +:10B2F0000109B9F1030F11DA01A819F800000028BB +:10B30000F1D001A819F80000DFF8681A11EB40002D +:10B3100030F8020C05A941F82900E8E75FF00009C0 +:10B320001FE002A850F82900DFF84C1A884207DA1B +:10B33000DFF8480AF7F736F8012010FA09F007435A +:10B3400002A850F82900DFF8381A884207DBDFF836 +:10B35000340AF7F727F8012010FA09F0074319F12A +:10B360000109B9F1030F2ADA55F8290056F8291016 +:10B37000401A0AF039F902A941F8290005A850F845 +:10B3800029000028CDD002A850F8290005A951F8BD +:10B39000291090FBF1F0B0F57A700AF025F924F845 +:10B3A000190034F91900B0F5FA7FD8DDDFF8D809B3 +:10B3B000F6F7F8FF012010FA09F00743CFE7B4F9D8 +:10B3C00004000090B4F90230B4F900203900DFF82D +:10B3D000BC09F6F7E7FF002F05D0DFF8B409F6F750 +:10B3E000E1FF7FF00208404640B209B0BDE8F083BB +:10B3F00038B505000020ADF800000020ADF80200CF +:10B40000F6F74FFF040038208DF8000000208DF87B +:10B410000100022300AAD0210020F7F739F8002804 +:10B4200001D1002074E000F01DFB002801D10020B4 +:10B430006EE01F208DF800004B208DF801000223E4 +:10B4400000AAD0210020F7F723F8002801D100201E +:10B450005EE01E208DF8000006208DF8010002231A +:10B4600000AAD0210020F7F713F8002801D100200E +:10B470004EE069208DF80000C0208DF80100022305 +:10B4800000AAD0210020F7F703F8002801D10020FE +:10B490003EE0012201210320F7F7C9F90020F7F768 +:10B4A000C8F938208DF8000040208DF801000223F3 +:10B4B00000AAD0210020F6F7EBFF002801D10020E0 +:10B4C00026E0012028702000407DC046012810D0D1 +:10B4D00001212000F7F724F9BDF80200401CADF867 +:10B4E0000200BDF802003228EDDBDFF8A808F6F70D +:10B4F00059FF012200210320F7F799F90020F7F7FF +:10B5000098F900F0A5FB002801D1002000E00120FF +:10B5100032BD00000CED00E00400FA0570B58EB0FD +:10B52000040000A80021002206C0083801250026DA +:10B530000BA80021002200230EC00C3808A800210F +:10B54000002200230EC00C3805A800210022002391 +:10B550000EC00C3802A80021002200230EC00C38B7 +:10B56000FFF7D7FA002801D1002058E0FFF7E4FBED +:10B57000002806D00126FFF7C4FC002805D10020D2 +:10B580004DE0FFF731FB002049E0012302AA08A9A2 +:10B590000020FFF7F4FC05006DB2012D04D0DFF8A8 +:10B5A000F007F6F7FFFE1CE0012305AA0BA97FF0C8 +:10B5B0001F00FFF7E4FC05006DB2012D04D0DFF899 +:10B5C000C807F6F7EFFE0CE005AA02A900A8FFF7EE +:10B5D0006DFE05006DB2012D03D0DFF8A007F6F770 +:10B5E000E1FE2670BDF800006070BDF90000001299 +:10B5F000A070BDF80200E070BDF9020000122071D9 +:10B60000BDF804006071BDF904000012A071E5717D +:10B61000FFF7EAFA002801D1002000E001200EB077 +:10B6200070BD80B5DFF870070078002809D1FFF7FA +:10B63000BCF9002801D1002004E0DFF85C070121FB +:10B640000170012002BD0000707900201CB50020AF +:10B650008DF806000020ADF80400F6F722FE040085 +:10B66000012000900DF106036B22D0210020F6F797 +:10B6700069FF002801D1002088E09DF806006021C4 +:10B68000084216D06B208DF804009DF8060010F0DB +:10B690009F008DF80500022301AAD0210020F6F7B3 +:10B6A000F7FE002801D1002070E014212000F7F7F8 +:10B6B00037F8012000900DF106036C22D021002004 +:10B6C000F6F740FF002801D100205FE06C208DF8E4 +:10B6D00004009DF8060010F0C7008DF80500022355 +:10B6E00001AAD0210020F6F7D3FE002801D10020C6 +:10B6F0004CE00A212000F7F713F81D208DF8040014 +:10B7000043208DF80500022301AAD0210020F6F77E +:10B71000BFFE002801D1002038E01C208DF8040075 +:10B7200000208DF80500022301AAD0210020F6F7A1 +:10B73000AFFE002801D1002028E020208DF8040071 +:10B7400080208DF80500022301AAD0210020F6F701 +:10B750009FFE002801D1002018E01F208DF8040072 +:10B7600080208DF80500022301AAD0210020F6F7E1 +:10B770008FFE002801D1002008E0DFF820060078C5 +:10B7800050F00100DFF814160870012016BD00B556 +:10B7900083B000208DF806000020ADF804000120E1 +:10B7A00000900DF106036C22D0210020F6F7CAFEAE +:10B7B000002801D1002030E06C208DF804009DF8B5 +:10B7C000060050F038008DF80500022301AAD021B0 +:10B7D0000020F6F75DFE002801D100201DE0DFF813 +:10B7E000BC05007880070FD46B208DF80400402042 +:10B7F0008DF80500022301AAD0210020F6F748FEAB +:10B80000002801D1002008E0DFF89005007810F052 +:10B81000FE00DFF88815087001200EBD1402030831 +:10B82000B0260120B4260120B5260120B62601202D +:10B83000B7260120B3260120B8260120B226012018 +:10B8400000B583B000208DF804000020ADF806009C +:10B850000120009001AB6C22D0210020F6F772FE8F +:10B86000002801D1002014E06C208DF806009DF81E +:10B87000040050F038008DF8070002230DF1060295 +:10B88000D0210020F6F704FE002801D1002000E0BE +:10B8900001200EBDF0B585B004000E0002A8002105 +:10B8A000002206C008380020ADF804000125F6F794 +:10B8B000F8FC0700DFF8E8040068401CDFF8E0143B +:10B8C00008600120009002AB6B22D0210020F6F727 +:10B8D00039FE002801D10020C2E09DF80800400692 +:10B8E0001AD56B208DF804009DF8080010F0BF00F9 +:10B8F0008DF80500022301AAD0210020F6F7C8FD2B +:10B90000002801D10020ABE014213800F6F708FF31 +:10B91000DFF89004F6F746FD0120009002AB6C22A0 +:10B92000D0210020F6F70EFE002801D1002097E07C +:10B930009DF80800382108421ED06C208DF80400C4 +:10B940009DF8080010F0C7008DF80500022301AA39 +:10B95000D0210020F6F79CFD002801D100207FE0D7 +:10B9600005213800F6F7DCFEDFF83C04F6F71AFD97 +:10B97000DFF8380401210160F6B2009602AB3B22E9 +:10B98000D0210020F6F7DEFD002805D1DFF82004E5 +:10B99000F6F708FD002063E09DF8090020709DF88F +:10B9A000080060709DF80B00A0709DF80A00E07020 +:10B9B0009DF80D0020719DF80C006071002000E0E2 +:10B9C000401C062806D2015DDFF8E823825C914224 +:10B9D000F6D00025EDB2012D18D1DFF8DC030068A8 +:10B9E000401CDFF8D4130860DFF8CC03006813288C +:10B9F00004D1DFF8C803F6F7D5FC0BE0DFF8B80395 +:10BA00000068142806D1FEF727FF03E0DFF8A8033B +:10BA10000021016006222100DFF89803F9F76AF897 +:10BA2000DFF87C030068C82190FBF1F201FB1200F3 +:10BA3000002814D1B4F904000090B4F90230B4F92C +:10BA40000020DA480168DFF87803F6F7ABFCD44849 +:10BA50000068DC49884202DBD148002101600120F6 +:10BA600005B0F0BD30B583B001240020ADF806006C +:10BA700000208DF80400F6F714FC0500012000906A +:10BA800001AB6B22D0210020F6F75CFD002801D12C +:10BA900000208BE09DF8040040061AD56B208DF83D +:10BAA00006009DF8040010F0BF008DF80700022387 +:10BAB0000DF10602D0210020F6F7EAFC002801D1A2 +:10BAC000002073E014212800F6F72AFEBE48F6F79E +:10BAD00069FC1D208DF8060008208DF80700022360 +:10BAE0000DF10602D0210020F6F7D2FC002801D18A +:10BAF00000205BE00120009001AB6C22D0210020EF +:10BB0000F6F720FD002801D100204FE06C208DF8D1 +:10BB100006009DF8040050F080008DF804009DF8A8 +:10BB2000040050F007008DF804009DF8040010F0A8 +:10BB3000C7008DF804009DF804008DF8070002236B +:10BB40000DF10602D0210020F6F7A2FC002801D159 +:10BB500000202BE00120009001AB6B22D0210020BF +:10BB6000F6F7F0FC002801D100201FE06B208DF8D3 +:10BB700006009DF8040010F0BF008DF804009DF849 +:10BB8000040050F020008DF804009DF804008DF8AA +:10BB9000070002230DF10602D0210020F6F778FC01 +:10BBA000002801D1002001E02000C0B23EBD80B5D8 +:10BBB0000020ADF80000FFF755FF002801D100205C +:10BBC00045E01F208DF800004B208DF80100022376 +:10BBD00000AAD0210020F6F75BFC002801D100204C +:10BBE00035E01E208DF8000006208DF801000223AC +:10BBF00000AAD0210020F6F74BFC002801D100203C +:10BC000025E069208DF80000C0208DF80100022396 +:10BC100000AAD0210020F6F73BFC002801D100202B +:10BC200015E0012201210320F6F701FE38208DF8EE +:10BC3000000040208DF80100022300AAD02100203E +:10BC4000F6F726FC002801D1002000E0012002BD0B +:10BC500080B50020ADF80000012200210320F6F796 +:10BC6000E6FD38208DF8000000208DF80100022349 +:10BC700000AAD0210020F6F70BFC002801D10020FB +:10BC800058E06B208DF8000000208DF801000223A1 +:10BC900000AAD0210020F6F7FBFB002801D10020EC +:10BCA00048E01D208DF8000000208DF801000223DF +:10BCB00000AAD0210020F6F7EBFB002801D10020DC +:10BCC00038E06C208DF8000034480078032803D158 +:10BCD00000208DF8010012E030480078022803D1DE +:10BCE00038208DF801000AE02C480078012803D1A3 +:10BCF00007208DF8010002E03F208DF801000223AB +:10BD000000AAD0210020F6F7C3FB002801D10020B3 +:10BD100010E069208DF8000000208DF8010002235A +:10BD200000AAD0210020F6F7B3FB002801D10020A3 +:10BD300000E0012002BD80B50178012905D1FFF79F +:10BD400057FB00280AD1002009E00178022905D11B +:10BD5000FFF7E4FB002801D1002000E0012002BD34 +:10BD600080B51A490020FAF705F919490B20FAF7AE +:10BD700001F901BDDCEA0208003E49009C0203080B +:10BD800001EFE700A40203089402030890010308EE +:10BD9000AC020308B4020308F2280120F3280120B2 +:10BDA000AC270120BC020308C40203080C280120B0 +:10BDB000CC020308DC270120782801205802030860 +:10BDC00068020308A1860100D4020308DC0003080E +:10BDD0000001030810B50024DFF8500C007800289B +:10BDE0000AD1FEF7E2FD002801D1002007E0DFF8CC +:10BDF0003C0C0121017000E001242000C0B210BD04 +:10BE00001CB500208DF806000020ADF80400F6F700 +:10BE100048FA0400012000900DF106036B22D021A6 +:10BE20000120F6F78FFB002801D1002068E09DF883 +:10BE300006006021084216D06B208DF804009DF8A2 +:10BE4000060010F09F008DF80500022301AAD02102 +:10BE50000120F6F71DFB002801D1002050E032211F +:10BE60002000F6F75DFC012000900DF106036C2226 +:10BE7000D0210120F6F766FB002801D100203FE029 +:10BE80006C208DF804009DF8060010F0F8008DF885 +:10BE90000500022301AAD0210120F6F7F9FA0028B3 +:10BEA00001D100202CE00A212000F6F739FC1B20EC +:10BEB0008DF8040008208DF80500022301AAD02186 +:10BEC0000120F6F7E5FA002801D1002018E01A2039 +:10BED0008DF8040003208DF80500022301AAD0216B +:10BEE0000120F6F7D5FA002801D1002008E0DFF89C +:10BEF000400B007850F00200DFF8341B087001207E +:10BF000016BD00B583B000208DF806000020ADF806 +:10BF10000400012000900DF106036C22D0210120C5 +:10BF2000F6F710FB002801D1002030E06C208DF8DE +:10BF300004009DF8060050F007008DF8050002236C +:10BF400001AAD0210120F6F7A3FA002801D1002090 +:10BF50001DE0DFF8DC0A0078C0070FD46B208DF8F5 +:10BF6000040040208DF80500022301AAD021012001 +:10BF7000F6F78EFA002801D1002008E0DFF8B00AB9 +:10BF8000007810F0FD00DFF8A81A087001200EBD3F +:10BF900000B583B000208DF804000020ADF8060045 +:10BFA0000120009001AB6C22D0210120F6F7CAFAE3 +:10BFB000002801D1002014E06C208DF806009DF8C7 +:10BFC000040050F007008DF8070002230DF106026F +:10BFD000D0210120F6F75CFA002801D1002000E012 +:10BFE00001200EBD7FB5040002A80021002206C07A +:10BFF000083800260020ADF80400F6F752F90500D5 +:10C000000120009002AB6B22D0210120F6F79AFAB2 +:10C01000002801D1002083E09DF80800400625D5C6 +:10C020006B208DF804009DF8080010F0BF008DF81B +:10C030000500022301AAD0210120F6F729FA0028E1 +:10C0400001D100206CE032212800F6F769FBDFF80F +:10C05000E409F6F7A7F9002603E0F6B20020305510 +:10C06000761CF6B2062EF8DB012059E00120009084 +:10C0700002AB6C22D0210120F6F764FA002801D12E +:10C0800000204DE09DF808000721084225D06C20D3 +:10C090008DF804009DF8080010F0F8008DF80500F8 +:10C0A000022301AAD0210120F6F7F2F9002801D1DC +:10C0B000002035E00A212800F6F732FBDFF8780986 +:10C0C000F6F770F9002603E0F6B200203055761C32 +:10C0D000F6B2062EF8DB012022E00620009002AB2B +:10C0E0004322D0210120F6F72DFA002805D1DFF8F0 +:10C0F0004C09F6F757F9002012E09DF8090020706E +:10C100009DF8080060709DF80B00A0709DF80A0073 +:10C11000E0709DF80D0020719DF80C006071012009 +:10C1200004B070BD2DE9F64FADF63C6D0500002062 +:10C13000ADF8080003A81421F8F71AFC002608A897 +:10C140000021002200230EC00C385FF0000940F6E9 +:10C150008C1068444FF49661F8F70AFCFFA8E030B1 +:10C160004FF49661F8F704FC0BA84FF49661F8F7CA +:10C17000FFFB5FF00008002700240020070000E01C +:10C180007F1C032F80F2BA806B208DF80800781C8A +:10C190008DF80900022302AAD0210120F6F778F9D0 +:10C1A000002801D1002099E13220FEF7C3FB6A206C +:10C1B0008DF8080044208DF80900022302AAD0213E +:10C1C0000120F6F765F9002801D1002086E101245D +:10C1D00009E019EB060608A850F8270019EB000043 +:10C1E00008A941F827002000441E012875DB232000 +:10C1F0008DF8080070208DF80900022302AAD021D2 +:10C200000120F6F745F9002801D1002066E14B2016 +:10C21000FEF790FB23208DF8080000208DF8090020 +:10C22000022302AAD0210120F6F732F9002801D119 +:10C23000002053E10220009003AB7222D0210120A4 +:10C24000F6F780F9002801D1002047E103A8FEF7A6 +:10C250005AFC00EE100AB8EEC00A10EE100AFCF705 +:10C26000F9F8DFF8DC27DFF8DC37F6F757FDF7F7EA +:10C270007FF88146B9F148000128B4DB5FF000087F +:10C280001DE003A8FEF73FFC18EB060140F68C12F8 +:10C290006A4422F811000DF10E00FEF734FC18EB91 +:10C2A0000601FFAAE03222F8110004A8FEF72BFCD9 +:10C2B00018EB06010BAA22F8110018F10108C84575 +:10C2C00087DA0620009003AB7422D0210120F6F714 +:10C2D00039F90028D5D1002000E123208DF808008D +:10C2E00000208DF80900022302AAD0210120F6F7D0 +:10C2F000CFF800287FF444AF0020EFE0002E01D0FB +:10C30000340000E001245FF0000800200021C5E9AE +:10C31000000100200021C5E9020100200021C5E93B +:10C32000040122E0D5E9000140F68C126A4432F99A +:10C330001820D31780185941C5E90001D5E9020139 +:10C34000FFAAE03232F91820D31780185941C5E905 +:10C350000201D5E904010BAA32F91820D31780187D +:10C360005941C5E9040118F10108B045DADBD5E906 +:10C3700000012200E317FDF7B9F8C5E90001D5E98E +:10C3800002012200E317FDF7B1F8C5E90201D5E982 +:10C3900004012200E317FDF7A9F8C5E904015FF0E5 +:10C3A0000008DDF83C0E00220023C0E90023DDF880 +:10C3B0003C0E00220023C0E90223DDF83C0E0022DF +:10C3C0000023C0E9042382E0DDF83C2ED2E900011D +:10C3D000CDE9000140F68C10684430F91800C1170F +:10C3E000D5E90023801A994140F68C126A4432F94B +:10C3F00018A05FEAEA7BD5E90023BAEB02027BEBE7 +:10C400000303A2FB00AB02FB01BB03FB00BBDDE9A6 +:10C41000000110EB0A0051EB0B01DDF83C2EC2E9E4 +:10C420000001DDF83C2ED2E90201CDE90001FFA8B0 +:10C43000E03030F91800C117D5E90223801A99417C +:10C44000FFAAE03232F918A05FEAEA7BD5E90223BD +:10C45000BAEB02027BEB0303A2FB00AB02FB01BBC6 +:10C4600003FB00BBDDE9000110EB0A0051EB0B01FF +:10C47000DDF83C2EC2E90201DDF83C2ED2E90401D0 +:10C48000CDE900010BA830F91800C117D5E9042344 +:10C49000801A99410BAA32F918A05FEAEA7BD5E924 +:10C4A0000423BAEB02027BEB0303A2FB00AB02FB0B +:10C4B00001BB03FB00BBDDE9000110EB0A0051EBFF +:10C4C0000B01DDF83C2EC2E9040118F10108B0456A +:10C4D000FFF67AAFDDF8400E066001200DF6446DE0 +:10C4E000BDE8F08F2DE9F04389B004000D0016007F +:10C4F00001275FF0000801A80021016003200090DF +:10C5000001AB0022D0210120F6F71CF8002801D150 +:10C510005FF0FF375FF0000907E04FFA89F905A8DF +:10C52000002140F8291019F101094FFA89F9B9F1F0 +:10C53000030F17DA4FFA89F901A819F8000000284B +:10C54000EBD04FFA89F901A819F80000DFF8F814C8 +:10C5500011EB400030F8020C4FFA89F905A941F8B7 +:10C560002900E0E75FF0000925E04FFA89F902A809 +:10C5700050F82900DFF8D414884208DADFF8D00434 +:10C58000F5F710FF012010FA09F050EA08084FFAF9 +:10C5900089F902A850F82900DFF8B814884208DBAE +:10C5A000DFF8B404F5F7FEFE012010FA09F050EAB6 +:10C5B000080819F101094FFA89F9B9F1030F3BDABB +:10C5C0004FFA89F955F829004FFA89F956F82910D8 +:10C5D000401A09F009F84FFA89F902A941F829002F +:10C5E0004FFA89F905A850F829000028BDD04FFA64 +:10C5F00089F902A850F829004FFA89F905A951F8DC +:10C60000291090FBF1F0B0F57A7008F0EDFF4FFAC9 +:10C6100089F924F819004FFA89F934F91900B0F5AD +:10C62000FA7FC6DDDFF83404F5F7BCFE012010FA0E +:10C6300009F050EA0808BCE74FFA88F8B8F1000F93 +:10C6400005D0DFF81C04F5F7ADFE7FF002073800D7 +:10C6500040B209B0BDE8F0832DE9F0479CB004007A +:10C660005FF0010801250CA81821F8F781F906A848 +:10C670001821F8F77DF902A80021016000A8002127 +:10C68000002206C008385FF0000A18A80021002226 +:10C6900000230EC00C3815A80021002200230EC074 +:10C6A0000C3812A80021002200230EC00C3803A869 +:10C6B0000021002200230EC00C380026DFF8A4035E +:10C6C000D0F80490FEF725FA002801D1002049E1B6 +:10C6D000FEF732FB80465FFA88F8B8F1010F0AD105 +:10C6E0005FF0010A02AA06A90CA8FFF71BFD0028AB +:10C6F00005D1002036E1FEF777FA002032E1FEF79F +:10C7000000FC002801D100202CE1002303AA15A978 +:10C710000020FEF734FC05006DB2012D03D0761C1D +:10C72000D148F5F73FFE002312AA18A97FF01F0099 +:10C73000FEF725FC05006DB2012D03D0B61CCB48D9 +:10C74000F5F730FE18AA15A900A8FFF7CBFE0500E3 +:10C750006DB2012D03D0361DC548F5F723FEDDE986 +:10C760000601002901D100280BD0DDE908010029CC +:10C7700001D1002805D0DDE90A01002905D10028F2 +:10C7800003D1BC48F5F70EFE083600273AE0FFB2A9 +:10C790000CA810EBC700D0E9002340F241100021A3 +:10C7A0008B420FDB01DC82420CD31036FFB20CA8A7 +:10C7B00010EBC702D2E900010200FFB23900AE4817 +:10C7C000F5F7F0FDFFB206A810EBC702D2E90001B1 +:10C7D000029AD317FCF78AFE002912DB02DCB0F5BF +:10C7E000C85F0ED34036FFB206A810EBC702D2E9ED +:10C7F0000001029990FBF1F2FFB239009F48F5F772 +:10C80000D1FD7F1CFFB2032FC1DB36B2002E1AD13F +:10C8100000220CE0D2B219EB4203D2B20CA810EB0A +:10C82000C206D6E900018000A3F85800521CD2B21B +:10C83000032AEFDBB9F95C30B9F95A20B9F958107D +:10C840008F48F5F7AFFD84F800A0BDF800006070D8 +:10C85000BDF900000012A070BDF80200E070BDF943 +:10C86000020000122071BDF804006071BDF90400DF +:10C870000012A071E5710298207202980012607295 +:10C8800002980014A07202980016E072DDE90C0113 +:10C890002073DDE90C0100B200126073DDE90C01C8 +:10C8A0000014A073DDE90C010016E073DDE90E0150 +:10C8B0002074DDE90E0100B200126074DDE90E01A2 +:10C8C0000014A074DDE90E010016E074DDE910012A +:10C8D0002075DDE9100100B200126075DDE910017C +:10C8E0000014A075DDE910010016E075DDE9060110 +:10C8F0002076DDE9060100B200126076DDE906016E +:10C900000014A076DDE906010016E076DDE90801F5 +:10C910002077DDE9080100B200126077DDE9080147 +:10C920000014A077DDE908010016E077DDE90A01CF +:10C9300084F82000DDE90A0100B2001284F8210029 +:10C94000DDE90A01001484F82200DDE90A0100167D +:10C9500084F82300FEF748F9002801D1002001E007 +:10C960004046C0B21CB0BDE8F08730B583B00400CB +:10C970000020ADF8040000203A494D68697A00298A +:10C9800007D1286E40688047F5F78BFC0A21F5F740 +:10C99000C7FE0220009001AB4122D0210120F5F713 +:10C9A000D1FD002801D1002017E09DF805009DF879 +:10C9B000041050EA0120032110FB01F04FF47A71BA +:10C9C00090FBF1F01530207000206070687A00282C +:10C9D00002D1286E8068804701203EBD80B5017875 +:10C9E000002905D1FFF738FE00280AD1002009E010 +:10C9F0000178012905D1FFF7B8FF002801D10020F7 +:10CA000000E0012002BD80B5C0B2062806D10800B2 +:10CA1000FFF7ABFF002801D1002000E0012002BD9C +:10CA200080B518490120F9F7A5FA01BDF2280120C7 +:10CA3000F3280120DC020308E4020308EC020308E7 +:10CA40002D211FF46C56C53FDCEC020830FD1300AD +:10CA5000FC02030879E2D10004030308F40203088E +:10CA60000C03030808400020140303081C030308F8 +:10CA70002403030878020308B00103082C0203080A +:10CA80004402030824010308DFF88005704730B52D +:10CA900083B00020ADF806008DF80400012000905E +:10CAA00001AB002218210220F5F74CFD04469DF849 +:10CAB000040048281FD131208DF806000DF106052D +:10CAC0000120687002230DF1060218211846F5F7BF +:10CAD000DFFC00280DD031208DF8060000206870A2 +:10CAE00002230DF1060218211846F5F7D1FC0028A3 +:10CAF00002D100203EBD002418220021DFF80C05E1 +:10CB0000F5F7ACFB20463EBD70B582B00020ADF815 +:10CB1000000008F072FD0446DFF8F4048168497AE9 +:10CB2000C268527A51180069407A0818012801DB5E +:10CB3000012076BDDFF8DC54687801281CD0322053 +:10CB40008DF8000000AE01207070022300AA1821A9 +:10CB50001846F5F79DFC00280CD031208DF8000018 +:10CB600001207070022300AA18211846F5F790FCE6 +:10CB7000002803D1002076BD01202870281D61699E +:10CB80008847012076BD38B50020ADF8000008F0D8 +:10CB900034FD0446DFF878048168497AC268527A25 +:10CBA00051180069407A0818022801DB012032BDC3 +:10CBB000DFF860542878012812D031208DF8000069 +:10CBC00000208DF80100022300AA18211846F5F76D +:10CBD0005FFC002801D1002032BD0020687001E018 +:10CBE00000202870281D21698847012032BD80B5AA +:10CBF0000020ADF8000031208DF8000000208DF8F5 +:10CC00000100022300AA18211846F5F741FC00286C +:10CC100001D1002002BD012002BD7CB504460020E8 +:10CC2000ADF806008DF804000120009001AB002251 +:10CC300018210220F5F786FC05469DF804004828D7 +:10CC400029D131208DF806000DF106061F207070E5 +:10CC500002230DF1060218211846F5F719FC0028E9 +:10CC600017D0032000902346602218210220F5F7F8 +:10CC700069FC00280DD031208DF80600002070706E +:10CC800002230DF1060218211846F5F701FC0028D1 +:10CC900002D1002076BD0025284676BD0021DE4A5F +:10CCA00002E00B5C8B54491C1B29FADBDB48C0F803 +:10CCB000D423012070472DE9F04387B004460D4688 +:10CCC00016461F464FF000084046ADF8040002A883 +:10CCD00041460A460B460EC04FF0050906C001202A +:10CCE000009002AB102218210220F5F72BFC9DF8D2 +:10CCF0000810C9070ED501280CD1082000900DF1AD +:10CD00000903112218210220F5F71CFC002807D185 +:10CD100040467BE04846A0F1010980B20028DED100 +:10CD2000BF489DF80810017002A90A7A4270CA79BA +:10CD300082704A78C2708A780271CA7842710A7920 +:10CD400082714A79C271897901720AE002A800EB06 +:10CD500048008178407810EB012024F8180008F191 +:10CD60000108B8F1030FF1DBA948D0F80C8008F1F5 +:10CD70000C0999F815202146D9F80C00D8F80C3088 +:10CD8000C018F7F7B7FE404602F0EEF899F8152004 +:10CD9000D9F80C00D8F80C1041182046F7F7AAFE75 +:10CDA000DFF8788205AA2146404608F07BFE98F914 +:10CDB000F4023860B8F8EE00288008F2EE004188EE +:10CDC00069808188A98081892180C1896180008AE8 +:10CDD000A08020882988401A308060886988401A9D +:10CDE0007080A088A988401AB08031208DF8040096 +:10CDF00001208DF80500022301AA18211846F5F735 +:10CE000047FB002801D1002000E0012007B0BDE869 +:10CE1000F08330B585B004460020ADF8040002A8C8 +:10CE200000210A460B460EC005250120009002ABEA +:10CE3000102218210220F5F785FB9DF80810C9077C +:10CE40000ED501280CD1082000900DF10903112204 +:10CE500018210220F5F776FB002806D1002029E0F2 +:10CE60002846451E80B20028DFD16D489DF8081085 +:10CE7000017002A90A7A4270487820708878607040 +:10CE8000C878A0700879E070487920719DF80E008C +:10CE9000607131208DF8040001208DF80500022317 +:10CEA00001AA18211846F5F7F3FA002801D100204D +:10CEB00000E0012005B030BD2DE9F0410446002519 +:10CEC000FDF7C6FC0746FFF7DFFD06465048D0F8E1 +:10CED0001080F86E40070BD406F1140306F10C0223 +:10CEE000B11D3046FFF7E7FE002801D1284651E08A +:10CEF00098F80A00012848D1494801782170417802 +:10CF00006170C178A1700179E170417921718179F5 +:10CF10006171C179A171007AE0714048818D2172FF +:10CF2000B0F92C100912617200F12C014A88A2722A +:10CF3000B1F902201212E2728A882273B1F9041048 +:10CF400009126173B0F8F410A173B0F9F41009126A +:10CF5000E173F43041882174B0F902100912617450 +:10CF60008188A174B0F904000012E074284620758D +:10CF70000FE006EB4500C18804F8151004EB4501ED +:10CF8000B0F90600001248706D1C032DF1DB7069CA +:10CF9000A0710120BDE8F081F8B504460025FDF739 +:10CFA00057FC0746FFF770FD0646F86E000705D5EB +:10CFB0002046FFF72EFF002826D109E006F11403D2 +:10CFC00006F10C02B11D3046FFF775FE002814D1A2 +:10CFD0002846F2BD36F8150004F8150004EB4500AC +:10CFE00036F915100912417006EB45018A898271E4 +:10CFF000B1F90C100912C1716D1C032DEADB182266 +:10D0000031460248F7F776FD0120F2BD40250120A8 +:10D0100008400020FC250120EC24012060D30020E2 +:10D02000D42601207CB504460020ADF806008DF81A +:10D030000400F5F736F905460120009001AB002207 +:10D0400018210220F5F77EFA9DF80410482932D104 +:10D0500031208DF806000DF106061F2070700223A6 +:10D060000DF1060218211846F5F712FA00281BD018 +:10D0700031208DF806000020707002230DF10602A9 +:10D0800018211846F5F704FA00280DD0012128468A +:10D09000F5F746FB0120009001AB31221821022058 +:10D0A000F5F750FA002801D1002076BD9DF8040064 +:10D0B0002070012076BDFF21217076BD2DE9F0435F +:10D0C00087B0044604A800210A460B460EC0084655 +:10D0D000ADF80C004FF00509F5F7E3F8054602201E +:10D0E000009004AB00221821F5F72CFA06469DF8B3 +:10D0F0001000482840F00B819DF81000207004AF0C +:10D100007878607031208DF80C000DF10C081F202C +:10D1100088F80100022303AA18211846F5F7B8F988 +:10D12000002800F0F5800320009004AB6022182155 +:10D130000220F5F707FA002800F0EA809DF81000B9 +:10D14000A0707878E070B878207131208DF80C00EC +:10D15000002088F80100022303AA18211846F5F7D9 +:10D1600097F9002800F0D4800120009004AB312210 +:10D1700018210220F5F7E6F9002800F0C9809DF893 +:10D180001000607531208DF80C00012088F8010036 +:10D19000022303AA18211846F5F77AF9002800F0AF +:10D1A000B7801E212846F5F7BBFA0120009004AB9A +:10D1B000102218210220F5F7C5F906469DF8100047 +:10D1C000C0070DD5012E0BD1082000900DF11103E1 +:10D1D000112218210220F5F7B5F9002806D160E0E8 +:10D1E0004846A0F1010980B20028DED1B87902904A +:10D1F0007879019038790090FB78BA7879780FF2D5 +:10D200006C10F5F7CFF8B878797811EB0020397900 +:10D21000FA7812EB0121BA797B7913EB02220346EB +:10D220001BB21B126371A071084600B20012E071BC +:10D230002172104600B200126072A2729DF81000B6 +:10D24000E072387A207331208DF80C00102088F8B5 +:10D250000100022303AA18211846F5F719F900283E +:10D2600056D01E212846F5F75BFA4FF0050901203C +:10D27000009004AB102218210220F5F763F906464E +:10D280009DF81000C0070ED5012E0CD1082000908B +:10D290000DF11103112218210220F5F753F900288E +:10D2A00007D1002035E04846A0F1010980B20028EE +:10D2B000DDD1B87902907879019038790090FB78C7 +:10D2C000BA7879780FF2C000F5F76CF8B878797809 +:10D2D00011EB00203979FA7812EB0121BA797B79C8 +:10D2E00013EB022203461BB21B126373A0730846A2 +:10D2F00000B20012E0732174104600B20012607494 +:10D30000A2749DF81000E074387A207500E00026C1 +:10D31000304607B0BDE8F08318B404460B4611460A +:10D320000020032C04D0042C05D0072C06D008E0E4 +:10D33000184614BC71E4184612BC73E6184612BCB9 +:10D34000ACE412BC704710B50FF25804214602201D +:10D35000F8F710FE0FF270010420F8F70BFE2146DB +:10D360000320BDE81040F8F705BE0000474D5331DB +:10D370002D25642C2025642C2025642C2025642C4C +:10D380002025642C20256400474D53322D25642C24 +:10D390002025642C2025642C2025642C2025642C39 +:10D3A000202564008FCA000809CB000887CB00083D +:10D3B000EFCB00080000000099CF0008000000003B +:10D3C000BDD0000819D300088FCA000809CB000897 +:10D3D00087CB0008EFCB000800000000B9CE0008A2 +:10D3E00000000000BDD0000819D3000810B5F4F704 +:10D3F00058FF04464FF480510020F5F708FA0A213F +:10D400002046F5F78DF9012010BD38B50022ADF8A2 +:10D410000020DFF8804C628A1346002902D01043B6 +:10D42000608202E022EA00006082608A002806D062 +:10D4300002280BD0042834D0062832D06AE080209D +:10D440008DF8000000208DF8010063E0580701D539 +:10D450000120E07381208DF8000000ADEB206870A2 +:10D46000022300AA72210920F5F712F8002801D141 +:10D47000002032BD687820738F208DF800002220B4 +:10D480006870022300AA72210920F5F701F800282C +:10D4900001D1002032BD80208DF800000B20687083 +:10D4A00038E0022B01D10120E07381208DF80000CB +:10D4B00000ADEB206870022300AA72210920F4F766 +:10D4C000E7FF002801D1002032BD687820738F204B +:10D4D0008DF8000022206870022300AA7221092022 +:10D4E000F4F7D6FF002801D1002032BD8E208DF840 +:10D4F000000006206870022300AA72210920F4F7B8 +:10D50000C7FF002801D1002032BD80208DF8000027 +:10D510002F206870022300AA72210920F4F7B8FFB7 +:10D52000002801D1002032BD012032BD10B582B0EB +:10D530000020ADF800000446FFF758FF002805D191 +:10D540000FF67030F4F72EFF00E0641C082C12D2A6 +:10D55000DFF8440B215C8DF800102018007A8DF85C +:10D560000100022300AA72210720F4F791FF00288E +:10D57000EBD1002016BDF6F7FDF9012016BD012004 +:10D58000704730B583B00020ADF804008DF8060078 +:10D59000DFF8084BE08080208DF8040001AD012009 +:10D5A0006870022301AA72210720F4F771FF002896 +:10D5B00001D100203EBD8C208DF804000020687051 +:10D5C0002070022301AA72210720F4F761FF0028CE +:10D5D00001D100203EBD0120A07001460420FFF7CC +:10D5E00014FF002801D100203EBD012000900DF164 +:10D5F0000603E52272210720F4F7A4FF002801D1D9 +:10D6000000203EBD01203EBD00B583B00020ADF836 +:10D6100006008DF8040080208DF8060001208DF8AA +:10D62000070002230DF1060272210720F4F730FFF4 +:10D63000002801D100200EBDDFF8600A00218170B2 +:10D640000420FFF7E2FE002801D100200EBD0120DA +:10D65000009001ABE52272210720F4F773FF002848 +:10D6600001D100200EBD01200EBD012070471CB568 +:10D6700004460020ADF806008DF80400012000905B +:10D6800001AB932272210720F4F75CFF00280ED033 +:10D690009DF80400800712D5022000900DF10603CA +:10D6A0009C2272210720F4F74DFF002801D10020B1 +:10D6B00016BD9DF8060020709DF8070060700120DF +:10D6C00016BD2DE9F04784B00446FDF7C1F80546C4 +:10D6D000F4F7E7FD06460020ADF80400ADF80800B9 +:10D6E0008DF80600012000900DF1060393227221AF +:10D6F0000720F4F727FF002801D1002011E29DF850 +:10D700000600800640F10C829DF80600800715D5C2 +:10D710000220009002AB9C2272210720F4F712FF36 +:10D72000002801D10020FCE102A841789DF80820E2 +:10D7300042EA0127114661704078A070DFF85C89E9 +:10D7400098F80300002803D0002088F80300D9E1EE +:10D7500098F8020000285CD098F80000002858D102 +:10D76000002030758C208DF804000DF10409332061 +:10D7700089F8010088F80000022301AA722107201D +:10D78000F4F786FE002801D10020CAE188208DF838 +:10D790000400002089F80100022301AA7221072059 +:10D7A000F4F776FE002801D10020BAE189208DF837 +:10D7B0000400002089F80100022301AA7221072039 +:10D7C000F4F766FE002801D10020AAE18A208DF836 +:10D7D0000400B5F88A0089F80100022301AA722129 +:10D7E0000720F4F755FE002801D1002099E18B2095 +:10D7F0008DF80400B5F88A00000A89F801000223B8 +:10D8000001AA72210720F4F743FE002801D100206D +:10D8100087E105F28A0ABAF80220B5F88A100FF6F5 +:10D82000A000F4F7BFFD39460FF6A400F4F7BAFDE7 +:10D8300098F80200002800F06581B5F88A00874258 +:10D8400052DB307D00284FD1012088F80100207084 +:10D850002078307588208DF804000DF10409BAF89D +:10D86000020089F80100022301AA72210720F4F7BF +:10D870000FFE002801D1002053E189208DF804001B +:10D88000BAF80200000A89F80100022301AA7221F5 +:10D890000720F4F7FDFD002801D1002041E18A2096 +:10D8A0008DF80400FF2489F80140022301AA7221A7 +:10D8B0000720F4F7EDFD002801D1002031E18B2095 +:10D8C0008DF8040089F80140022301AA7221072083 +:10D8D000F4F7DEFD002801D1002022E139460FF2E5 +:10D8E000FC70F4F75FFD0DE1BAF80200B84254DBBA +:10D8F000307D012851D1012088F8010000202070DE +:10D900002078307588208DF804000DF1040900207E +:10D9100089F80100022301AA72210720F4F7B8FD5B +:10D92000002801D10020FCE089208DF804000020AF +:10D9300089F80100022301AA72210720F4F7A8FD4B +:10D94000002801D10020ECE08A208DF80400B5F811 +:10D950008A0089F80100022301AA72210720F4F746 +:10D9600097FD002801D10020DBE08B208DF804001A +:10D97000B5F88A00000A89F80100022301AA722181 +:10D980000720F4F785FD002801D10020C9E03946C1 +:10D990000FF25070F4F706FDB4E0B5F88A00B84213 +:10D9A0005ADB307D002857D198F80400012853D164 +:10D9B000012088F8010000202070207830750020B8 +:10D9C00088F8040088208DF804000DF10409002077 +:10D9D00089F80100022301AA72210720F4F758FDFB +:10D9E000002801D100209CE089208DF8040000204F +:10D9F00089F80100022301AA72210720F4F748FDEB +:10DA0000002801D100208CE08A208DF80400B5F8B0 +:10DA10008A0089F80100022301AA72210720F4F785 +:10DA200037FD002801D100207BE08B208DF8040019 +:10DA3000B5F88A00000A89F80100022301AA7221C0 +:10DA40000720F4F725FD002801D1002069E00FF23E +:10DA50009C60F4F7A7FC55E0BAF80200874251DB5E +:10DA6000307D01284ED198F8040001284AD10020C9 +:10DA700088F8040088208DF804000DF10409BAF834 +:10DA8000020089F80100022301AA72210720F4F79D +:10DA9000FFFC002801D1002043E089208DF804001C +:10DAA000BAF80200000A89F80100022301AA7221D3 +:10DAB0000720F4F7EDFC002801D1002031E08A2096 +:10DAC0008DF80400FF2489F80140022301AA722185 +:10DAD0000720F4F7DDFC002801D1002021E08B2095 +:10DAE0008DF8040089F80140022301AA7221072061 +:10DAF000F4F7CEFC002801D1002012E00FF2F45020 +:10DB0000F4F750FC0120009002ABE52272210720BF +:10DB1000F4F718FD002801D1002002E0012000E008 +:10DB2000002004B0BDE8F08770B504460E46FCF74F +:10DB30008FFE05462078072819D16078FF2816D176 +:10DB40003146601CFFF793FDA078617841EA002020 +:10DB5000B5F88A10884202DB0120207005E0B5F894 +:10DB60008C10814201DB00202070012070BDDFF8A5 +:10DB70002C550020687131462046FFF7A2FD002891 +:10DB800009D0A878002806D06878002803D00020A3 +:10DB9000687001206871F6F74DFD0028E7D06879BC +:10DBA00070BD70B582B005460020ADF80000FCF7EE +:10DBB0004FFE0446DFF8E4040121017128786978FA +:10DBC00041EA0020A4F88A0004F28A06A878E978DD +:10DBD00041EA00207080B4F88A00002802D07088E2 +:10DBE000002804D17820A4F88A00002070808820C2 +:10DBF0008DF8000000AD70886870022300AA7221C1 +:10DC00000720F4F745FC002801D1002076BD8920CB +:10DC10008DF800007088000A6870022300AA722143 +:10DC20000720F4F735FC002801D1002076BD8A20BA +:10DC30008DF80000B4F88A006870022300AA7221EF +:10DC40000720F4F725FC002801D1002076BD8B20A9 +:10DC50008DF80000B4F88A00000A6870022300AA58 +:10DC600072210720F4F714FC002801D1002076BDB2 +:10DC7000012076BD80B50FF298410720F8F77AF9B8 +:10DC80000FF2B0410A20BDE80440F8F773B910B5AF +:10DC900082B00020ADF80000044600E0641C092CAE +:10DCA00012D2DFF8FC03215C8DF800102018007BF5 +:10DCB0008DF80100022300AA72210920F4F7E8FB85 +:10DCC0000028EBD1002016BD012016BD10B582B092 +:10DCD0000020ADF8000080208DF8000001208DF8B4 +:10DCE0000100022300AA72210920F4F7D1FB0028C9 +:10DCF00001D1002016BDDFF89C4301202074A073E1 +:10DD000001460220FFF781FB002801D1002016BD4B +:10DD100002206073012016BD80B50020ADF8000020 +:10DD200080208DF8000001208DF80100022300AA58 +:10DD300072210920F4F7ACFB002801D1002002BDBC +:10DD4000D448002181730220FFF75FFB002801D136 +:10DD5000002002BD012002BD01207047FEB504462F +:10DD60000020ADF8040002908DF80600012000901C +:10DD70000DF10603932272210920F4F7E3FB00283A +:10DD800044D09DF80600C00740F1C880C14D287CF2 +:10DD9000012803D0E87B002840F08C80022000900E +:10DDA00001AB942272210920F4F7CCFB00282DD07E +:10DDB0009DF80400A07101AE7078E071022000901F +:10DDC00001AB962272210920F4F7BCFB00281DD07C +:10DDD0009DF804002070707860700220009001AB04 +:10DDE000982272210920F4F7ADFB00280ED09DF88F +:10DDF0000400A0707078E0700220009001AB9A22BD +:10DE000072210920F4F79EFB002801D10020FEBDFD +:10DE10009DF80400207170786071287B2072687B07 +:10DE200060726078217841EA0020E178A27842EAC5 +:10DE300001216279237943EA0222E379A67946EA4D +:10DE4000032302AE009600F0BBF8002819D1287C0D +:10DE5000012830D1002028745B20287000206870D1 +:10DE60008520A8700020E870AE202871002068711D +:10DE70007020A8710120E871EB20287200206872E0 +:10DE800019E0002028742078287060786870A078E5 +:10DE9000A870E078E8702079287160796871A079BD +:10DEA000A871E079E871207A2872607A6872029825 +:10DEB000686137E036D02878207068786070A8787C +:10DEC000A070E878E0702879207168796071A8798D +:10DED000A071E879E071287A2072687A6072002077 +:10DEE000E8736078217841EA0020E178A27842EA7C +:10DEF00001216279237943EA0222E379A67946EA8D +:10DF000003232E7B277A2F736F7B647A6C7302ACAA +:10DF1000009400F055F82E736F7303E00FF2DC10DD +:10DF2000F4F740FA0120FEBD1CB504460020ADF810 +:10DF300006008DF804000120009001AB8F227221B1 +:10DF40000920F4F7FFFA002801D1002016BD9DF842 +:10DF5000040000F0FC008DF80400012C0AD0042C11 +:10DF600004D0102C1ED0402C21D025E040F0010020 +:10DF70008DF804008F208DF806009DF804008DF8C0 +:10DF8000070044489DF8041001F003014173022387 +:10DF90000DF1060272210920F4F77AFA00280DD15A +:10DFA000002016BD40F002008DF80400E2E740F0CA +:10DFB00003008DF80400DDE7002016BD012016BD2A +:10DFC0002DE9F04105460E46174670193818C01A5B +:10DFD0004FEA60080FFA88F8B8F1000F01D54FF04A +:10DFE00000082C48407B0FF22411445C012C42D1E4 +:10DFF000192B40DA1020FFF797FF002846D1A6EB37 +:10E000000802A7EB08010698A84507DA0368A5EB04 +:10E0100008054FF0640C0CFB05330360B04505DACE +:10E0200003684FF47A7505FB02320260B84504DAE2 +:10E0300002681C4B03FB012101600168002901D526 +:10E040000021016001684FF47A7291FBF2F10160E6 +:10E050004FF4B9625143016001EB8102510001604C +:10E060004FF4FC7291FBF2F1016091FBF4F101605D +:10E070000120BDE8F081102CC1D143F699208342E4 +:10E08000BDDB0120FFF750FF0028B8D00020F0E7EB +:10E0900000000000C07900202C7A00200428012014 +:10E0A000D879002052FEFFFF0FF2AC010920F7F7EC +:10E0B00061BF0000233E50505F4641494C000000C4 +:10E0C000233E55703D25642C4C6F3D2564000000B7 +:10E0D000233E50524157202564000000233E50311A +:10E0E00020256400233E503220256400233E5265E3 +:10E0F00054483100233E526554483200414C535F2E +:10E100004E6F7456616C6964000000000104104099 +:10E110002DD5000883D5000809D600086BD6000865 +:10E120000000000029DB0008A3DB0008000000005D +:10E13000000000007FD5000883D5000809D600083C +:10E140006BD60008000000006FD60008A3DB0008B3 +:10E1500000000000000000008FDC0008CDDC00089B +:10E1600019DD000859DD0008000000005DDD000831 +:10E1700000000000000000000000000000207047C8 +:10E18000012070470120704738B504460D46F4F76A +:10E1900088F80521F4F7C4FA0020104904E00A6861 +:10E1A0000255521C0A60401CA842F8DB012032BD17 +:10E1B0000120704701207047094802680A704A70C0 +:10E1C000511C01600120704706490A6802704270C4 +:10E1D000501C086001207047000000007C7A00207D +:10E1E00080280120842801200FF234010620F7F74F +:10E1F000C1BE0FF22C010520F7F7BCBE10B50FF21F +:10E20000200421461220F7F7B5FE21461320F7F728 +:10E21000B1FE21461420BDE81040F7F7ABBE000068 +:10E220007DE1000881E1000885E1000885E1000842 +:10E23000B5E1000889E10008B1E10008C9E1000882 +:10E24000B9E1000890484368DBB200F10A02E0211E +:10E250000820F4F71DB98C484368DBB200F10C02CA +:10E26000E0210820F4F714B9F0B4884B5C7800255D +:10E2700000E06D1CEDB28D420ED22E5C744008267B +:10E2800002E03C46E4B2761EF3D067002406F8D5DF +:10E290001C787C40E4B2F6E7944201D1012000E012 +:10E2A0000020F0BC7047CDE7FEB5044605260020EF +:10E2B0000090062301AAE0210820F4F7A5F90546FD +:10E2C000012D03D00FF2E810F4F76CF8012DEED118 +:10E2D0003046461E80B20028E9D001AEB278022155 +:10E2E00001A8FFF7C1FF002807D0727902210DF1C4 +:10E2F0000700FFF7B9FF002805D10FF2AC10F4F7C3 +:10E3000051F80020FEBD624871789DF8042041EA72 +:10E31000022141F2171251435E4A02EBA1314180C2 +:10E320000188491C01804268B0F90230D21842606D +:10E3300083683779F67847EA062640F6C4177E43A5 +:10E34000B61303FA86F68660534B1B6A5F7F002F75 +:10E3500019D009B292FBF1F2428096FBF1F1002252 +:10E3600042608260028042882270B0F9020000128E +:10E370006070A17009B20812E070B3F9560001286C +:10E3800003DB012002E00020FEBD002020712046BA +:10E39000F8F72AFF2846FEBD30B583B03A4C6368D3 +:10E3A000DBB204F10E02E0210820F4F771F800203E +:10E3B0000090032301AAE0210820F4F725F905467F +:10E3C000012D05D00FF2F000F3F7ECFF28463EBD1B +:10E3D00001ADAA78022101A8FFF746FF002801D16C +:10E3E00000203EBD6878617808402178884201D1DC +:10E3F00001203EBD00203EBD2548002141608160D6 +:10E40000018028E7012070477CB504460020207079 +:10E4100006251D484368DBB200F10E02E02108200A +:10E42000F4F736F800200090032301AAE021082029 +:10E43000F4F7EAF80646012E0ED02846451E0128BC +:10E4400008DBF3F72EFF1E21F4F76AF92846451E74 +:10E450000128DEDA002076BD9DF80620022101A801 +:10E46000FFF702FF002808D1F3F71BFF1E21F4F786 +:10E4700057F904A0F3F796FFE8E72670012076BD70 +:10E4800000000000435243004C7A0020887A0020AC +:10E49000A02701206CEEFFFF084000200FF22001B2 +:10E4A0000820F7F767BD000054482D52463200009F +:10E4B00054482D524631000054482D50463100003A +:10E4C00099E30008F9E3000805E4000800000000F3 +:10E4D000A7E20008A9E200080000000009E4000823 +:10E4E0000000000030B583B000208DF80600ADF8C4 +:10E4F00004000324012000900DF106030F228E2159 +:10E500001520F4F71FF8002805D1E4B221460FF2D8 +:10E51000E810F3F747FF9DF80600CA2804D020460C +:10E52000441EC0B20028E5D1E4B2002C01D1002085 +:10E530003EBD002501AC00E06D1CEDB20F2D0DDAE3 +:10E540008DF8045000206070022301AA8E2115204E +:10E55000F3F79EFF0028EFD100203EBD202500E00C +:10E560006D1CEDB2302D0DDA8DF804500020607076 +:10E57000022301AA8E211520F3F78AFF0028EFD18C +:10E5800000203EBD21208DF8040080206070022311 +:10E5900001AA8E211520F3F77BFF002801D100206E +:10E5A0003EBD0FF26810F3F7FDFE01203EBD10B531 +:10E5B00082B00020ADF80000F3F773FE044620207F +:10E5C0008DF8000000208DF80100022300AA8E21A2 +:10E5D0001520F3F75DFF002801D1002016BD64214E +:10E5E0002046F4F79DF8012016BD00B583B0002049 +:10E5F0008DF80400ADF806000120009001AB272241 +:10E600008E211520F3F79EFF002801D100200EBDBA +:10E610009DF8040001280FD10120009001AB2822B1 +:10E620008E211520F3F78EFF002805D10FF2E800A8 +:10E63000F3F7B8FE00200EBD20208DF80600002064 +:10E640008DF8070002230DF106028E211520F3F745 +:10E650001FFF002801D100200EBD01200EBD80B596 +:10E660000020ADF8000020208DF8000000208DF87B +:10E670000100022300AA8E211520F3F709FF0028CC +:10E6800001D1002002BD012002BD80B50020ADF8FF +:10E69000000021208DF8000001208DF801000223E8 +:10E6A00000AA8E211520F3F7F3FE002801D10020E7 +:10E6B00002BD012002BD1CB5044600208DF80400F7 +:10E6C0000120009001AB28228E211520F3F73AFF9C +:10E6D000002805D10FF24000F3F764FE002016BDBC +:10E6E0009DF804002070012016BD0FF234011520A2 +:10E6F000F7F740BC0000000055562D5741492072E5 +:10E70000657472793A2025640000000055562D503A +:10E71000524F42450000000055562D524600000061 +:10E72000E5E40008AFE50008EBE500085FE6000857 +:10E730008BE60008B7E600080000000000000000BB +:10E740000000000010B50024F3F7ABFD007CC0070B +:10E7500000D50124204610BD00B589B000A82421B1 +:10E76000F6F706F90020ADF822000A208DF808001F +:10E7700000208DF809008DF80A008DF800001F2098 +:10E78000019000A8F9F73EFD012009B000BD00B5D9 +:10E7900089B000A82421F6F7EBF80020ADF822009C +:10E7A0000A208DF8080000208DF809008DF80A0075 +:10E7B00001208DF800001F20019000A8F9F722FD2C +:10E7C000012009B000BD00B589B000A82421F6F7EA +:10E7D000CFF80020ADF822000A208DF808000020B4 +:10E7E0008DF809008DF80A0001208DF800001F2027 +:10E7F000019000A8F9F706FD012009B000BD012035 +:10E80000704710B50024F3F74CFD007CC00700D51D +:10E810000124204610BD00B589B000A82421F6F7D8 +:10E82000A7F80020ADF822000A208DF8080000208B +:10E830008DF809008DF80A008DF800002020019065 +:10E8400000A8F9F7DFFC012009B000BD00B589B0D0 +:10E8500000A82421F6F78CF80020ADF822000A2049 +:10E860008DF8080000208DF809008DF80A000120BD +:10E870008DF800002020019000A8F9F7C3FC0120CA +:10E8800009B000BD00B589B000A82421F6F770F8E2 +:10E890000020ADF822000A208DF8080000208DF835 +:10E8A00009008DF80A0001208DF800002020019059 +:10E8B00000A8F9F7A7FC012009B000BD01207047AE +:10E8C00010B50024F3F7EDFC007C800700D501248F +:10E8D000204610BD00B589B000A82421F6F748F8FD +:10E8E0000020ADF822000A208DF8080000208DF8E5 +:10E8F00009008DF80A008DF800002120019000A881 +:10E90000F9F780FC012009B000BD00B589B000A86E +:10E910002421F6F72DF80020ADF822000A208DF80A +:10E92000080000208DF809008DF80A0001208DF8FC +:10E9300000002120019000A8F9F764FC012009B033 +:10E9400000BD00B589B000A82421F6F711F8002019 +:10E95000ADF822000A208DF8080000208DF809008B +:10E960008DF80A0001208DF800002120019000A8F8 +:10E97000F9F748FC012009B000BD0120704710B52F +:10E980000024F3F78EFC007C00F00300032800D184 +:10E990000124204610BD00B589B000A82421F5F758 +:10E9A000E7FFC548017841F0020101700020ADF891 +:10E9B00022000A208DF8080001208DF809008DF84A +:10E9C0000A1000208DF800002220019000A8F9F71D +:10E9D00019FC012009B000BD00B589B000A82421B0 +:10E9E000F5F7C6FFB449087810F0FD00087014D19F +:10E9F0000020ADF822000A208DF8080001208DF8D3 +:10EA0000090000208DF80A0001208DF80000222066 +:10EA1000019000A8F9F7F6FB02E040B207F0CCFC49 +:10EA2000012009B000BD012070470120704710B5DA +:10EA30000024F3F736FC007C00F00700072800D123 +:10EA40000124204610BD00B589B000A82421F5F7A7 +:10EA50008FFF9949087840F001000870032805D11C +:10EA600040B207F0A9FC07F0C3FC12E00021ADF8AA +:10EA700022100A218DF8081000218DF809108DF858 +:10EA80000A0008468DF800002220019000A8F9F73E +:10EA9000B9FB012009B000BD00B589B000A8242150 +:10EAA000F5F766FF8449087810F0FE00087013D16E +:10EAB0000020ADF822000A208DF8080000208DF813 +:10EAC00009008DF80A0001208DF800002220019035 +:10EAD00000A8F9F797FB04E040B207F06DFC07F0DF +:10EAE0008CFC012009B000BD012070470120704757 +:10EAF00010B50024F3F7D5FB007CC00700D5012436 +:10EB0000204610BD00B589B000A82421F5F730FFDC +:10EB10000020ADF822000A208DF8080000208DF8B2 +:10EB200009008DF80A008DF800002320019000A84C +:10EB3000F9F768FB012009B000BD00B589B000A855 +:10EB40002421F5F715FF0020ADF822000A208DF8EA +:10EB5000080000208DF809008DF80A0001208DF8CA +:10EB600000002320019000A8F9F74CFB012009B018 +:10EB700000BD00B589B000A82421F5F7F9FE0020FA +:10EB8000ADF822000A208DF8080000208DF8090059 +:10EB90008DF80A0001208DF800002320019000A8C4 +:10EBA000F9F730FB012009B000BD012070470000DB +:10EBB00070B58AB006460D46F9F74EFA04460020B5 +:10EBC00000900422314600A8F5F794FF01A8242103 +:10EBD000F5F7CEFE009A29460FF29010F3F7E2FB0C +:10EBE00028460C3805283AD8DFE800F0030D121744 +:10EBF0002E091420C4F8DC0401200AB070BD1420D2 +:10EC0000C4F87C05F8E704F2DC4042218162F3E7B6 +:10EC100004F2DC4000990165EEE727480078C1075F +:10EC200012D50021ADF826100A218DF80C10002114 +:10EC30008DF80D108DF80E0001208DF804002220B3 +:10EC4000029001A8F9F7DEFA0099284640B200F0D8 +:10EC50000CF8009004F2DC4000998167CCE70FF2D9 +:10EC60001C10F3F79FFB0020C7E710B4134AD36BC7 +:10EC7000126C114C2478002C1AD00F2802D01028C6 +:10EC80000BD015E0507A002812D0906B80680028D5 +:10EC90000ED488420DDD08460BE0587A002807D0D4 +:10ECA000986B8068002803D4884202DD084600E0A3 +:10ECB000084610BC70470000F428012008400020DE +:10ECC00012B589B001460C39052928D8DFE801F0D2 +:10ECD000031D1F21211B1F240020ADF822000190DD +:10ECE0000A208DF8080005208DF800000194042208 +:10ECF00009A90DF10900F5F7FDFE00A8F9F782FA60 +:10ED000001200AB010BD2324E6E72024E4E72124F3 +:10ED1000E2E722240999FFF7A8FF0990DCE70FF248 +:10ED20006400F3F73FFB0020EBE780B50FF25C01D6 +:10ED30000C20F7F71FF90FF278011120F7F71AF9F5 +:10ED40000FF290010D20F7F715F90FF2AC010E202C +:10ED5000F7F710F90FF2C4010F20F7F70BF90FF2D4 +:10ED6000E0011020BDE80440F7F704B94D5232200D +:10ED700044523D25642C2564000000004D52322091 +:10ED8000534446004D5232205243460045E70008A6 +:10ED900059E700088FE70008C7E7000800000000F7 +:10EDA000FFE70008B1EB00080000000000000000D1 +:10EDB000F1EA000805EB00083BEB000873EB0008E4 +:10EDC00000000000ABEB0008B1EB00080000000001 +:10EDD0000000000003E8000817E800084DE80008FC +:10EDE00085E8000800000000BDE80008B1EB00085D +:10EDF0000000000000000000C1E80008D5E800089D +:10EE00000BE9000843E90008000000007BE9000866 +:10EE1000B1EB000800000000000000007FE90008DE +:10EE200097E90008D9E9000827EA00080000000077 +:10EE30002BEA0008B1EB0008000000000000000011 +:10EE40002FEA000847EA000899EA0008E9EA000802 +:10EE500000000000EDEA0008B1EB0008000000002F +:10EE60000000000080B5FBF7F3FCDFF8BC1708607A +:10EE7000012002BD80B5F5F707FDDFF8B017D1E935 +:10EE80000023801A02BDF8B50446A069E168451860 +:10EE9000B5F90000B5F90270B5F90460B4F858107E +:10EEA000411A2980B4F85A10791A6980B4F85C10B4 +:10EEB000711AA980B5F90010C913B1EBE03F13D066 +:10EEC000B4F95810C913B1EBE03F0DD00FF27870D0 +:10EED000F3F768FAB5F90000012802DBDFF8500704 +:10EEE00001E047F6FF702880B5F90210C913B1EBB5 +:10EEF000E73F13D0B4F95A10C913B1EBE73F0DD077 +:10EF00000FF25070F3F74EFAB5F90200012802DB58 +:10EF1000DFF81C0701E047F6FF706880B5F90410C0 +:10EF2000C913B1EBE63F13D0B4F95C10C913B1EBD0 +:10EF3000E63F0DD00FF22870F3F734FAB5F904006C +:10EF4000012802DBDFF8E80601E047F6FF70A88041 +:10EF500094F90800002804D1002000E0401C032898 +:10EF6000FCDBF1BD00000000FEB5044600A8002156 +:10EF70000A460B460EC0A069E1684518174694F989 +:10EF80000860052E80F09A80012E02D12046FFF7FE +:10EF90007AFF3046012802D9C01E40F08A80002E38 +:10EFA00001D14FF6FF77DFF880060068301890F83F +:10EFB0008400401E06285ED8DFE800F004101D29FA +:10EFC00036424F00B5F90200009000A8B5F90010D4 +:10EFD000791A4160B5F90410816056E0B5F9000076 +:10EFE000381A009000A8B5F90210791A4160B5F9F5 +:10EFF0000410816049E0B5F90200381A009000A8B9 +:10F00000B5F900104160B5F9041081603DE0B5F933 +:10F010000000381A009000A8B5F902104160B5F957 +:10F020000410791A816030E0B5F90200009000A860 +:10F03000B5F900104160B5F90410791A816024E037 +:10F04000B5F90000009000A8B5F90210791A4160E6 +:10F05000B5F90410791A816017E0B5F90200381A81 +:10F06000009000A8B5F90010791A4160B5F90410B4 +:10F07000791A816009E0B5F90000009000A8B5F99F +:10F0800002104160B5F904108160012E0AD10021FF +:10F0900006E050F8212002F30F0240F82120491C1D +:10F0A0000329F6DB0098288000A841686980806801 +:10F0B000A880002E02D12046FFF7E5FE0120FEBD0C +:10F0C00070B52DED028B82B08169C2688A1890F903 +:10F0D000081008460A2800F2BE80DFE800F0062B80 +:10F0E00099BCBC8BBCBC65A6B400B2F90240B2F9B5 +:10F0F0000450DFF8340500689FEDBB0AB2F9001038 +:10F1000000EE901AF8EEE00A60EE800AC0ED000A08 +:10F1100000EE904AF8EEE00A60EE800AC0ED010AC7 +:10F1200000EE905AF8EEE00A20EE800A001D80ED15 +:10F13000010A94E0B2F90240B2F90450DFF8E804A1 +:10F140000068061D9FEDC88BB2F9000000EE100AA2 +:10F15000B8EEC00A10EE100AF9F77CF953EC182B40 +:10F16000F3F7DCFDF9F79EF9B06000EE104AB8EE57 +:10F17000C00A10EE100AF9F76DF953EC182BF3F7EB +:10F18000CDFDF9F78FF9F06000EE105AB8EEC00A25 +:10F1900010EE100AF9F75EF953EC182BF3F7BEFDE9 +:10F1A000F9F780F930615AE00020ADF80200ADF8BF +:10F1B00000001088ADF802005088ADF80000DFF8BC +:10F1C00068040068061D9FEDD10ABDF9020000EE3B +:10F1D000900AF8EEE00A60EE800AC6ED120ABDF968 +:10F1E000000000EE900AF8EEE00A20EE800A86EDBC +:10F1F000130A34E000200190106801909DED010A8F +:10F20000BAEECA0ADFF82004006880ED0C0A26E096 +:10F21000DFF8140400681188A0F85A1000F25A00B0 +:10F22000518841809188818019E0DFF8FC030068F3 +:10F2300000F25A001188C180518801819188418172 +:10F24000D18881810BE0DFF8E003006892F90010BB +:10F2500080F8681003E00FF21440F3F7A3F80120E0 +:10F2600002B0BDEC028B70BD70B50D46DFF8C41363 +:10F2700051F820400026207F002801D1304670BD83 +:10F28000607A002803D0206E8068804706462846B2 +:10F29000216EC96988470546002E02D0206E40685D +:10F2A0008047284670BD9B0701D542F2107292FB41 +:10F2B000F1F190F8222051430069814201DA0120E6 +:10F2C000704700207047002901D48164C164002A7E +:10F2D00003D4910701D580F820207047002903D47A +:10F2E00000218164416181617047042815D101F1D9 +:10F2F0000C008A7A012A08D0072242750B228275F7 +:10F30000CD4ACA600B21416070471522427519220F +:10F310008275CA4ACA601921416070472DE9F243DB +:10F32000054614461946A846B8F1160F44D2A94618 +:10F33000C04850F829600227307F00283CD09DF952 +:10F340002020002A08D4D00706D513460A46009983 +:10F350003046FFF7A8FF44E03046FFF7B4FFA8F1BE +:10F360000C0006280DD22946C9B200A8326E926957 +:10F370009047B9F10C0F02D0B9F1110F01D114204F +:10F38000009031462846FFF7B0FF707A00281BD165 +:10F39000214649B23046726E1268904700280DD05F +:10F3A000306E40688047002804D139464F1EC9B2EC +:10F3B0000029F5D1002801D1002012E0214649B2F0 +:10F3C0003046726E52689047707A401C70722246C6 +:10F3D00052B200993046736E1B69984700F098F856 +:10F3E0000120BDE8F283000060F61C3AF8B50C4637 +:10F3F00015461946162806D28E4A52F82060022772 +:10F40000307F002801D10020F2BD3046FFF766FFB3 +:10F41000707A012817D1294649B23046726E926837 +:10F420009047002809D0306E80688047002804D1BA +:10F430003846471EC0B20028F5D1294649B23046A9 +:10F44000726ED2689047707A002801D0401E7072A8 +:10F450002A4652B221463046736E5B69984700F0E7 +:10F4600057F80120F2BD000089AD84FA0A74313FDB +:10F470002DE9F84304460D46164619462746162F31 +:10F480001DD26C4850F8248098F81C00002816D033 +:10F490009DF92020002A09D4D00707D513460A4633 +:10F4A0002946404601B0BDE8F043FCE606EB4600C5 +:10F4B00008EB8009D9F838008068002801D50020C1 +:10F4C00021E04046FFF7FFFE324652B2D9F838003D +:10F4D00081684046D8F864305B699847324652B23A +:10F4E00029464046D8F864301B699847A7F10C00BC +:10F4F000062805D229462046FFF7E2FB012002E05C +:10F5000000F006F80120BDE8F28300000AD7233C92 +:10F5100070B56FF000452C464948016804E08A68E0 +:10F52000A24200DA144609688142F8D1454E30788B +:10F53000401C30707078F021084202D09920F5F715 +:10F5400055FAF5F7C0FA7078401C7070AC4200D1E3 +:10F55000002435480168CC67D1F8802020468242DB +:10F560000BD0002801D0002A04D1C1F88000F2F7A6 +:10F57000F5FE02E0012006F083FF7078F0210842DA +:10F5800002D09920F5F732FA7078401E7070C0B240 +:10F59000002801D1F5F791FAF6F7EFF8012070BDD8 +:10F5A00038B50546274C2078401C20706078F02143 +:10F5B000084202D09920F5F719FAF5F784FA607835 +:10F5C000401C607018480068C0F880501C480168F2 +:10F5D00005E08A68B2FBF5F26A43CA6009688142B5 +:10F5E000F7D16078F021084202D09920F5F7FEF9B2 +:10F5F0006078401E6070C0B2002801D1F5F75DFA56 +:10F60000BDE83140F6F7B9B80D490A6808E013695A +:10F61000012B01DAD368136113691B1A1361126895 +:10F620008A42F4D17047000094280120102801205C +:10F630000080FFFF08400020CC4F0020242501203F +:10F64000784000207079002058206973206F76651B +:10F650007200000059206973206F76657200000007 +:10F660005A206973206F7665720000005543535429 +:10F67000282564294E53000038B504000D001448B5 +:10F680000078401C1249087012480078002802D007 +:10F69000A120F5F7ABF9F6F72FF8607E662802D0C7 +:10F6A0008220F5F7A3F9F5F70EFA05E038212000DE +:10F6B00006F0ECFEF5F707FAE06821698842F5D01C +:10F6C0002900200006F004FFF6F757F831BD00BF0F +:10F6D000707900201B2901204FF0FF31801E012886 +:10F6E00012D9C01E04280FD9801F05280CD908384C +:10F6F0000AD0801E042807D9401F03D0401E0F28BF +:10F7000002D902E0072100E001210846704780B5D8 +:10F7100001460020C91E18D0C91E16D0C91E14D01B +:10F72000C91E012911D90D3903290ED9091F05D088 +:10F73000491E0AD0C91F032907D902BD1D210FF296 +:10F740001000F2F72FFE012002BD012002BD0000D3 +:10F7500050443A204C4C53202564000038B50446F0 +:10F760004FF0FF35F8F778FC2A2C35D8DFE804F0A5 +:10F770002F34332F2F332F2F3333342F18331616C4 +:10F780002F343433342F2F2F182F332F332F2F1B99 +:10F790001E22262A2D33333333333100C8251BE094 +:10F7A0004FF47A7518E0D0F8DC5415E000F2DC4034 +:10F7B000856A11E000F2DC40056D0DE000F2DC40EE +:10F7C000856F09E0D0F87C5506E00A2504E0422563 +:10F7D00002E0052500E01425284632BD38B5DFF8E3 +:10F7E000FC49FBF735F8E06206F0DAFEF8F734FC86 +:10F7F0002063002512E0DFF8E8190161DFF8E41961 +:10F800004161DFF8E4298261DFF8E029C261DFF8B5 +:10F81000E02902624162406A80476D1C2B2D80F214 +:10F820000E81216B05EB8500C00000224254401878 +:10F8300042704FF0FF32426000220272C260427298 +:10F84000032D04D17431DFF8AC298A62E3E7022D7D +:10F8500003D1DFF8A4294A67DDE7002DCBD0042DC2 +:10F8600004D17431DFF894290A65D4E7052D04D159 +:10F870007431DFF88C298A67CDE7062D04D1DFF8D3 +:10F880008429C1F81421C6E7072D05D101F58A7135 +:10F89000DFF874298A62BEE7082D05D101F58A7167 +:10F8A000DFF868290A65B6E7092D05D101F58A71E7 +:10F8B000DFF85C298A67AEE70A2D9CD00B2D9AD021 +:10F8C000012D98D00C2D04D1DFF84829C1F804226D +:10F8D000A1E70D2D05D101F50171DFF83C298A6200 +:10F8E00099E70E2D05D101F50171DFF830290A6580 +:10F8F00091E70F2D05D101F50171DFF824298A6701 +:10F9000089E7102D04D1DFF81C29C1F8A42282E771 +:10F91000122D3FF470AF142D3FF46DAF132D3FF453 +:10F920006AAF162D3FF467AF152D04D1DFF8082A12 +:10F93000C1F86C236FE7172D05D101F55B71DFF876 +:10F94000FC290A6567E7182D05D101F55B71DFF821 +:10F95000F0298A675FE71A2D05D101F20C41DFF823 +:10F96000E4298A6257E71E2D05D101F2AC41DFF888 +:10F97000D8298A624FE7192D04D1DFF8D029C1F8C0 +:10F980000C2448E71F2D05D101F2AC41DFF8C02956 +:10F990000A6540E7202D05D101F2AC41DFF8B4291A +:10F9A0008A6738E7212D04D1DFF8AC29C1F84C254E +:10F9B00031E7222D05D101F24C51DFF8A0298A62EE +:10F9C00029E7232D05D101F24C51DFF894290A656E +:10F9D00021E71B2D05D101F20C41DFF888290A65CA +:10F9E00019E71C2D05D101F20C41DFF87C298A674B +:10F9F00011E71D2D04D1DFF87429C1F8AC240AE702 +:10FA0000262D04D1DFF86829C1F8142603E7272D35 +:10FA100005D101F21461DFF85C298A62FBE6292D29 +:10FA200005D101F21461DFF850298A67F3E62A2D27 +:10FA30007FF4E1AEDFF84429C1F8B426EBE60120FB +:10FA400032BD0CB42DE9FF470546884601244746E0 +:10FA50002E461A2E48D006EB86004FEAC008DFF883 +:10FA60007C970B2F20D1D9F8300008EB000A9AF8C8 +:10FA70000100002818D02846FFF72EFE012813DBCE +:10FA80002846FFF729FE9AF8011081420CDB284630 +:10FA900000F086F90446D9F8300040440021417056 +:10FAA0000FF6E400F2F77EFCD9F8300018F80010E9 +:10FAB000002947D108EB00014A78002A42D10022F0 +:10FAC00008F80020104648700CA983B06846182238 +:10FAD000F3F718F80EBC284600F07CF802282CD06A +:10FAE00003282FD103242DE00B2F16D1FFF7F4FDAF +:10FAF000012812DB2846FFF7EFFD06EB8601DFF851 +:10FB0000DC26126B02EBC1014978814205DB0FF65E +:10FB10008000F2F747FC022057E04046C0B202F0F6 +:10FB20006BF80CA983B068461822F2F7EBFF0EBC05 +:10FB3000284600F04FF8022801D1022045E00328B2 +:10FB400000D103240A2F0DD1DFF89096D9F83000A8 +:10FB500006EB86014FEAC10818F80010491C08F8A6 +:10FB6000001017E00B2F15D1DFF87096032E07D188 +:10FB7000D9F8300090F87900002801D101F09FFAFF +:10FB800006EB86004FEAC008D9F8300040444178BF +:10FB9000491C4170DFF84496D9F83000D9F82C1090 +:10FBA00006EB86024FEAC208D1E91C23CDE9022305 +:10FBB000C96E009108EB00014B7818F8002031461F +:10FBC0000FF2D870F2F7EEFB204604B0BDE8F00764 +:10FBD0005DF80CFB0EB42DE9F04183B0054601241D +:10FBE000C0B2FFF7BBFDDFF8F46505EB8501326BB2 +:10FBF00002EBC107786000203872F86009A984B070 +:10FC000068461822F2F77EFF0FBC3F69B84702280A +:10FC100001D1022011E0032801D103240CE0D6F821 +:10FC20002C80D8E91C67204600212A4606F060FD9A +:10FC300030433943C8E91C012046BDE8FE015DF8A8 +:10FC400010FB2DE9FF4704460D460126274607EB2A +:10FC500087004FEAC008DFF88495D9F830001A2FE2 +:10FC600057D008EB000A9AF80100022814DB20465E +:10FC7000FFF732FD01280FDB2046FFF72DFD9AF834 +:10FC80000110814208DB2046FFF726FD8AF80100BB +:10FC90000FF21C70F2F786FBD9F8300018F800104C +:10FCA000002904D108EB00025278002A60D02A46CD +:10FCB0000A2A09D1002903D0491E08F8001017E0CC +:10FCC000002108F8001013E00B2A11D108EB000105 +:10FCD0004A78002A02D0521E4A7001E000224A707F +:10FCE000032F05D190F87900002801D101F0F6F931 +:10FCF000D9F8300018F80010002939D14044407874 +:10FD0000002835D1204600F04BF8032830D10326D7 +:10FD10002EE018F80010002904D108EB00025278F8 +:10FD2000002A25D02A460A2A09D1002903D0491ED3 +:10FD300008F8001012E0002108F800100EE00B2A6D +:10FD40000CD108EB000A9AF80100002803D0401EED +:10FD50008AF8010002E000208AF801002846C0B2BB +:10FD600001F04AFF204600F01BF8032800D10326CB +:10FD7000D9F83000D9F82C10D1E91C23CDE90223A1 +:10FD8000C96E009108EB00014B7818F80020394645 +:10FD90000FF22460F2F706FB304604B0BDE8F087AE +:10FDA0002DE9F0410746012607EB8700C500DFF883 +:10FDB0002C44206B281840698047032800D1032673 +:10FDC000384640B200F080F9032800D10326206BAA +:10FDD000295C002917D128184178002913D14FF048 +:10FDE000FF31416000210172C160D4F82C80D8E954 +:10FDF0001C4501203A4606F07BFC24EA000025EA77 +:10FE00000101C8E91C013046BDE8F08138B504465F +:10FE100004EB8400C000DFF8C453296B0022425475 +:10FE20004018114641702046FFF7BAFFE86AD0E952 +:10FE30001C2321460FF29450F2F7B4FA012032BD90 +:10FE40002DE9F041B6B004460E46B6B201208DF859 +:10FE50006400DFF888531AA8E96A6C22F2F752FEB0 +:10FE600017951AA984B068466C22F2F74BFE0FBCB6 +:10FE700000F0DAF900270BE0032803D118970320DC +:10FE80008DF86400286B4044002101727F1C7FB212 +:10FE90002B2F2ADAEA6AD2E91C013A4600F0CCFAA2 +:10FEA00000F0010011F0000101D10028EED007EBB5 +:10FEB00087004FEAC008286B404441680029E5D418 +:10FEC000027A521C0272D2B2724389B28A42DDDBDC +:10FED000806980470228CFD1189702208DF86400EE +:10FEE000DDE91801C4E9000103E0DDE91801C4E916 +:10FEF000000136B0BDE8F08100210A3842F20772F5 +:10FF0000904200D20121084670472DE9F04383B0AA +:10FF1000044600200190042204F1090101A8F4F72D +:10FF2000E9FD6168DFF8B462376B282505FB0170D5 +:10FF30004068019A904204D10FF2A040F2F732FAE1 +:10FF400068E01046FFF7D8FF002809D16168019BDF +:10FF500005FB017042680FF29040F2F723FA59E076 +:10FF6000DFF81C743868D0F8008025E090F908901C +:10FF70006068316B05FB0010C06820FA09F0C0070B +:10FF800017D54FF0FF3000900346012201994846F3 +:10FF9000FFF7C4F940B200280BD1616801980090C6 +:10FFA000306B05FB010043684A460FF25040F2F700 +:10FFB000F9F94046D0F80080B842D7D13868D0F877 +:10FFC00000801FE090F90890C86820FA09F0C00787 +:10FFD00015D54FF0FF33012249684846FFF706FA6E +:10FFE00040B200280BD1616801980090306B05FB8E +:10FFF000010043684A460FF21C40F2F7D3F940462D +:020000021000EC +:10000000D0F800806168326B05FB0121B842D9D17C +:1000100001984860BDE8F7832DE9F8438146002444 +:1000200025466E4F21E005EB8500C600386B06EBD8 +:100030000008002088F80900FA6AD2E91C012A4663 +:1000400000F0FAF900F0010011F0000101D10028E0 +:100050000AD04846D8F81C108847002804D0386BCE +:100060003018012141720C466D1C2B2DDBDB204624 +:10007000BDE8F2835948C16AD1E91C23002B01D1A4 +:10008000002A0DD0002107E002EB8203026B02EB95 +:10009000C30200235372491C49B20A462B2AF3DBE0 +:1000A000704700B502464D48C36AD3E91C0100F011 +:1000B000C3F900F0010011F0000101D1002801D0C6 +:1000C000012000BD084600BD2DE9F047814601240E +:1000D00009EB8900C500414E306B2818C068002824 +:1000E00029D0DFF89C723868D0F8008003E0032440 +:1000F0004046D0F80080B8421DD090F908A0306B7F +:100100002818C168012202FA0AF2114021FA0AF104 +:1001100049B20129ECD14FF0FF330122416850462A +:10012000FFF764F90028E2D0524649460FF2FC205E +:10013000F2F738F9DCE72046BDE8F08710B58AB061 +:1001400004460020ADF8220001900A208DF8080036 +:1001500000208DF809008DF80A00ADF82200600734 +:1001600019D50520FFF79DFF002807D004208DF842 +:1001700000000520019000A8F8F744F80220FFF7DE +:1001800090FF002807D004208DF800000220019085 +:1001900000A8F8F737F8E0060CD50820FFF781FF34 +:1001A000002807D003208DF800000820019000A847 +:1001B000F8F728F80AB010BD02460020092A00D03E +:1001C000704780B5012902D106F048FB012002BD2D +:1001D00002492C22F2F796BC00000000E022012028 +:1001E0006F8300086B830008778300087B83000817 +:1001F0007F830008B50A01080F3B01085904010874 +:10020000F938010877E9020805FA020831370108D0 +:10021000AB6701088107010825E80208C9DB02086D +:1002200065F20208EBF802080FB41B980099016010 +:1002300001994160029981600399C160049901614B +:1002400005994161BDF85A100183BDF85C104183E6 +:10025000BDF85E1081830C99016213994162149973 +:10026000816204B0704700004168122903D1C17A4D +:10027000002000F0E0BF132903D1017B012000F032 +:10028000DABF142903D1417B022000F0D4BF152925 +:1002900002D1C07A00F0E0BF172945D1817A1B292D +:1002A00006D01C2930D01D290FD0262926D0704712 +:1002B000C17B012903D1B0F80B0003F057B9022923 +:1002C00032D1B0F80D0003F04FB9017D012903D1FF +:1002D000B0F80B0006F0A2BD022903D1B0F80D0062 +:1002E00006F090BD042903D1B0F8170006F0A2BDB6 +:1002F000032919D1B0F8150006F0A8BDC17B01296A +:1003000012D1807B06F0DBBE817B012902D1C07A4D +:1003100007F0DDB8022902D1007B07F0E2B8052919 +:1003200002D1407B07F0BDB870471649086070479E +:1003300014480068704700001DFB02084DFD0208CC +:1003400041F102088B27010881E502083DF502080A +:10035000658901086B140208DBEF02085B63010882 +:10036000C18A01080D3501081D730108A36D01083C +:10037000037001083BC9020841FC0208D5CA020803 +:100380007449002098280120414C20455800000065 +:10039000414C2045582D415400000000414C25643B +:1003A00020256420256420256420256C6C750000C0 +:1003B000524C204558000000524C256420256420F2 +:1003C000256420256420256C6C7500005445524D31 +:1003D00020256420256C6C75000000004558204CD9 +:1003E0004D435231202564004558204C4D43523234 +:1003F0002025642025642025640000004558204CF9 +:100400004D43523320256420256420256420256433 +:10041000000000004558204C4D43523420256420F4 +:10042000256420256420256400000000534D5241BE +:100430002025642025640000D2B2203A22BF21FA90 +:1004400002F0002170472032D141D0404840914015 +:10045000D14048407047000038B5F7F7FDFD04462D +:10046000104DFAF7F5F9286005F0C2F805F0C5F867 +:10047000686005F0FDF90C48C4F8B00004F1B00064 +:100480000A4941600A4981600A49C1600A4901611B +:10049000012032BD0349496889680847014840681E +:1004A00000680047382801206F8300086B8300082C +:1004B000778300087B8300087F8300082DE9F047DD +:1004C00086B0044601A81421F4F752FAF1F7E9FEC8 +:1004D00005464FF00209002601E0761C76B20A2E8E +:1004E00080F2A880022EF8D0032EF6D0062EF4D08B +:1004F000574850F8267007F10C08787A002805D183 +:10050000D8F85400406880470028E6D009F8046015 +:1005100009F101094FFA89F9304609285AD8DFE86C +:1005200000F0050A5959102059154D47C821284691 +:10053000F2F7F6F84EE04FF448712846F2F7F0F87B +:1005400048E032212846F2F7EBF843E007208DF827 +:100550000400FF208DF8050032212846F2F7E0F86C +:1005600038E03C212846F2F7DBF84FF0000ABAF1F8 +:10057000030F2FDA0020D8F8541009698847142196 +:100580002846F2F7CDF80120D8F8541009698847B9 +:1005900014212846F2F7C4F8BAF1020F05DA062151 +:1005A00001A8D8F85420526990470AF1010ADEE701 +:1005B0004FF416712846F2F7B3F80BE00020D8F894 +:1005C000541009698847012088F811003C21284609 +:1005D000F2F7A6F898F8151001A8D8F85420526937 +:1005E0009047002819D0D8F80C00F96800EB010AF0 +:1005F00098F8152001A95046F4F77CFA3846FEF722 +:10060000B3FC98F81520514609EB0400F4F772FA90 +:1006100098F9150081444FFA89F9787A00287FF417 +:100620005CAFD8F854008068804700287FF455AF4D +:10063000002009E0A9F10200ADF80000022200A9A3 +:100640002046F4F757FA002006B0BDE8F087000016 +:100650000840002038B505000C0094F84C006428D0 +:1006600002D08020F4F7C2F9F5F71EF8F4F72BFA60 +:10067000606928436061207C10F0F800082806D1EA +:10068000A0696169084202D02000F5F7B2F8074876 +:100690004078F021084202D09920F4F7A7F90348E6 +:1006A0004078002801D1F4F708FA31BD70790020B4 +:1006B0000FB480B5BDF80B0067494880022802DB03 +:1006C000801E088001E0002008800C229DF90A109D +:1006D0000020F7F7C3FC032801D1022000E001202D +:1006E00002BC5DF814FB5C480121418000210180BF +:1006F00001207047594908707047000030B58DB02F +:1007000002A8F7F70AFD544C2088401C208061881D +:1007100080B2884231D300202080054627E06068FF +:10072000D0F8EC01E840C00720D5284605F08AFF44 +:1007300000281BD400EB80009FED460ADDED0B0A7C +:1007400060EE800AFDEEE00A10EE901A00AA8152D7 +:10075000DDED0C0A20EE800ABDEEC00A10EE101A84 +:100760008218518000A94018012101716D1C172DBC +:10077000D5DBDDE9000105F073FF01200DB030BDD0 +:1007800080B5F7F769FC344948603549C0F8F01185 +:1007900000F5F87033494160334981600FF20D0173 +:1007A000C1600FF225010161012002BD10B50024D6 +:1007B0002A4890F90000002804D105F071FF0028B4 +:1007C00000D00124204610BDF8B504460D4640F285 +:1007D0002116287816FB004001210170287816FBAD +:1007E00000404170287816FB00400C218170287869 +:1007F00016FB0040194991F90010002902D002218E +:10080000C17001E00121C170287816FB0040012170 +:100810000171287816FB004008214171287816FBE9 +:1008200000400121C180287816FB0047002005F018 +:10083000D3FE3881287816FB0044002005F0D1FE55 +:1008400060812878401C28700C20BDE8F24005F03B +:10085000E1BE00000000C842747A0020FD2801209B +:10086000B1060108E7060108FD0601080FB410B53E +:10087000032200210846F7F7F1FB022801D10220EC +:100880001BE00FF23C00F1F78DFDDFF8804C0020FB +:100890006073608220629DF80C209DF80B109DF81B +:1008A0000A0007F0A5FB58220021DFF8640CF1F7DD +:1008B000D5FC00202074A073012010BC5DF814FB4F +:1008C00050443A2053746172745065646F2D303215 +:1008D000323500000120704730B58BB000A8F7F723 +:1008E0001CFC05210320F7F77BFC002802D1DFF870 +:1008F000240C0890DFF8144CA069C56F07F00DFBBD +:10090000207294F90800022806D1422D04D1142146 +:100910000320F7F704FC07E0012805D1142D03D1CB +:1009200042210320F7F7FBFB284680B2DDED081AD1 +:1009300000A991EC030A07F0C0F9E0692818E0610A +:1009400001200BB030BD10B5DFF8C04B94F90000AA +:1009500000283AD494F90A0094F90110814228D170 +:10096000217B0818A07240B23D2801DB3C38A07200 +:1009700094F90A100FF26C00F1F714FD0020E06109 +:10098000DFF8980B90F9010010F1010F01D101205F +:1009900010BD94F90110081AF2F7BAFA21F00041DB +:1009A000F2F7E6FC40B2012801DB012010BD002077 +:1009B00010BDDFF86C0B90F90120914203D0D4E90F +:1009C0000023C0E90023002010BDE069DFF8541BBC +:1009D000884205DB0FF21800F1F7E4FC012010BD9E +:1009E000002010BD50443A204E54202564000000E1 +:1009F00050443A204E6F54696D6500002DE9F8436C +:100A00000026DFF8084B07E07A19A27252B231468D +:100A10000FF26C00F1F7C6FC94F90A50002E21D4B5 +:100A20006078461B76B294F90C70002EECD53046F7 +:100A3000F2F76EFA21F0004102460B4690469946C5 +:100A40003846F2F765FA42464B46F2F745FAE3D2EA +:100A5000EA1BA272002652B231460FF23800F1F7BB +:100A6000A1FCD9E73C2D02DBA5F13C00A07294F972 +:100A70000A100FF23400BDE8F443F1F793BC000014 +:100A800050443A20636F6D70312025642C2025641A +:100A90000000000050443A20636F6D7032202564DE +:100AA0002C2025640000000050443A204355542077 +:100AB0002564000010B5DFF8544A0020A07301201F +:100AC0002072002060724FF0FF3020700F20E07223 +:100AD0001420207300206073608220626074A06222 +:100AE000E06228220146DFF8400AF1F7B7FBF7F78A +:100AF000B3FAA061DFF8341AC0F888108830DFF844 +:100B0000301A4160DFF82C1A81600FF28D21C1602C +:100B10000FF625210161012010BD10B582B04FF400 +:100B20006163C1EB0114A40013FB0043D3184FF41D +:100B30007A746343DFF8F0492360DFF8D0391B7C17 +:100B4000009313460A4601460FF20800F1F72AFC0B +:100B500013BD000050442042542025642025642009 +:100B600025642025640000002DE9F0412DED028B65 +:100B7000AAB0DFF89C69314684B068465822F1F784 +:100B8000C1FF0FBC00F07AFC10EE100AF7F762FC10 +:100B900041EC100B9FED7E8BDFF88C49656853ECC0 +:100BA000102B51EC180BF2F7B9F8F2F7E1FB15FA3C +:100BB00080F060604FF6FF75A84200D36560314653 +:100BC00084B068465822F1F79DFF0FBC00F00EFC80 +:100BD00010EE100AF7F73EFC41EC100BA76853EC3F +:100BE000102B51EC180BF2F799F8F2F7C1FB17FA3A +:100BF00080F0A060A84200D3A560002013900220DE +:100C00001290314684B068465822F1F77BFF0FBC42 +:100C100000F080FAA1894018A08180B2FF2801DB92 +:100C2000FF20A0810020139003201290314684B051 +:100C300068465822F1F766FF0FBC00F06BFA216995 +:100C400040182061A84200D325610020139006209F +:100C50001290314684B068465822F1F753FF0FBC1A +:100C600000F058FAA18A4018A08280B2FF2801DB68 +:100C7000FF20A0820020139007201290314684B0FC +:100C800068465822F1F73EFF0FBC00F043FAE18AB4 +:100C90004018E08280B2FF2801DBFF20E0820020C4 +:100CA000139008201290314684B068465822F1F71C +:100CB00029FF0FBC00F02EFAA1694018A061A842DC +:100CC00000D3A5610020139009201290314684B012 +:100CD00068465822F1F716FF0FBC00F01BFAE169D5 +:100CE0004018E061A84200D3E56114A807F019F9A3 +:100CF000DFF83C7DD7F828802398F7F7ABFB00227C +:100D0000DFF8103DF2F70AF8F2F732FB58FA80F0FC +:100D1000B862F96A491CF962B0FBF1F084F820006E +:100D20000020139001201290314684B0684658226A +:100D3000F1F7E8FE0FBC00F0EDF9616A401860625F +:100D4000A84200D36562F87B00F0CFFA2AB0BDEC70 +:100D5000028BBDE8F081DFF8D0078189002914D12A +:100D60000169002911D1818A00290ED1C18A002987 +:100D70000BD18169002908D1C169002905D1406AD8 +:100D8000401E8041C043C00F7047012070470000E3 +:100D900000000000000059402DE9F14FAAB00024E6 +:100DA00014A807F0BEF8DFF868A7204613900120CA +:100DB0001290514684B068465822F1F7A3FE0FBC4A +:100DC00000F0A8F905469DED230ADAED0F0A30EE92 +:100DD000600A10EE100AF7F73DFB2246DFF8343CBC +:100DE000F1F79CFFF2F7C4FA0646B6B2BDF89A00D6 +:100DF000BAF84A10471AFFB2DFF8348C9DF9A80000 +:100E000000284BD1002D02D157EA06001BD0012447 +:100E1000002D18D0DFF8309CD9F81000A84212D06D +:100E2000204607F0BEFD204607F069FED9F8100005 +:100E3000281AC8F82400C9F810503A4629460FF677 +:100E40001C40F1F7AFFADFF8009CC9F81050002001 +:100E5000C8F81C004FF0FF3088F80000DFF8C0260B +:100E6000D8E90001C2E90001C9E90001DFF8AC26B8 +:100E7000C2E9000198F80B0088F80A0098F80E0003 +:100E8000002846D0002088F80E0098F810000028AE +:100E90003FD0012088F8110004463AE000F0C7F97D +:100EA00000281CD000A8F1F76DFD404600A90522DE +:100EB000F1F718FE204688F80900DFF86426D8E923 +:100EC0000001C2E9000198F9023098F9012098F96F +:100ED00000100FF69430F1F765FAFFF78FFD00A8C8 +:100EE000F1F750FD404600A90522F1F7FBFDFFF7A1 +:100EF0002AFD00280DD0DFF82426D8E90001C2E938 +:100F0000000198F81000002802D0012088F8110094 +:100F100001249DF9A8B0BBF1010F0AD198F80E0089 +:100F20005946884205D000F04FFA9DF8A80088F88D +:100F30000E00BBF1010F69D1002D67D0DFF8089BCF +:100F400098F80F0098F81010084310D1012088F885 +:100F500010000522414609F10800F3F7CBFD98F88F +:100F6000022098F8011098F80000FFF7D6FD98F9D4 +:100F7000010099F90910401A411E222901D20120CD +:100F800005E010F1230F01DA012000E00020012824 +:100F900035D10020C8F82800C8F82C00FFF7DBFE88 +:100FA00000282CD028220021DFF87C05F1F756F923 +:100FB00098F80F00401C88F80F00C0B215280BD11C +:100FC0000FF6BC20F1F7EEF9012088F8110000209F +:100FD00088F80F00012412E098F81000401C88F8EF +:100FE000100098F8022098F8011098F80000FFF718 +:100FF00094FD0522414609F10800F3F77BFDFFF758 +:10100000B3FD582214A95046F3F774FD98F80D006B +:1010100001283CD1B8F81200002805D10FF6702045 +:10102000F1F7C0F9012428E0D8F82010814219D244 +:10103000002D02D157EA060000D00124DFF8089AFB +:1010400099F9020098F90220904216D0491CC8F87C +:1010500020100FF65020F1F7A5F9D8E90001C9E9F1 +:1010600000010AE0002088F80D00A8F81200C8F876 +:1010700020000FF64020F1F795F9BBF1010F06D1E2 +:1010800098F81000002802D0012088F811002046AE +:10109000012802D10021C8F81C10D8F8181091F8C6 +:1010A0007910002907D10021C8F81C10012801D1AE +:1010B00000F08AF9002420462BB0BDE8F08F10B56F +:1010C000DFF86C090021C161032205210020F6F739 +:1010D000C5FF044600F007F8204610BD0322052195 +:1010E0000120F6F7BBBF00B597B000A806F019FFC6 +:1010F000582200A9DFF83C09F3F7FCFC012017B0E7 +:1011000000BDDFF82C09406A7047DFF82409002190 +:10111000416270470FB410B596B000249DF9BC0031 +:1011200001280BD106F0F7FF1899884202D3441A20 +:10113000E4B272E08038441AE4B26EE000A806F02F +:10114000F0FE9DF9B800401E082866D8DFE800F0E0 +:101150002905111D2936424E5A00019819998842D5 +:1011600001D3441A59E0DFF8E4281018401A441C4F +:1011700053E002981A99884201D3441A4DE0DFF8EF +:10118000CC281018401A441C47E003981B99884249 +:1011900001D3441A41E0DFF8B4281018401A441C67 +:1011A0003BE000981899884201D3441A35E0DFF8F3 +:1011B0009C1808181899401A441C2EE004981C9991 +:1011C000884201D3441A28E0DFF880281018401A1A +:1011D000441C22E005981D99884201D3441A1CE062 +:1011E000DFF868281018401A441C16E006981E996B +:1011F000884201D3441A10E0DFF850281018401A32 +:10120000441C0AE007981F99884201D3441A04E05D +:10121000DFF838281018401A441C204616B010BCBD +:101220005DF814FBDFF80808012141727047DFF810 +:101230000008407A704706F087BE0146DFF8F027C5 +:10124000792902DB7820508200E05082012050731F +:101250000FF67400F1F7A6B810B5040001D101240F +:1012600002E0072C00DB062421460FF67000F1F7A0 +:1012700099F8641E052C2DD8DFE804F0030A111834 +:101280001F26DFF8AC073721C1723C21017321E032 +:10129000DFF89C071921C1721E2101731AE0DFF8E3 +:1012A00090070F21C1721421017313E0DFF880074A +:1012B0000A21C1720F2101730CE0DFF874070721C6 +:1012C000C1720C21017305E0DFF864070521C172CA +:1012D0000A210173DFF85807C17A8172BDE8104016 +:1012E000FFF78CBBDFF83007704700EB8001880008 +:1012F000421CDFF824078C4992B20B681B0E135472 +:10130000521C92B20B681B0C1354521C92B20B6805 +:101310001B0A1354521C92B20B681354521C92B203 +:101320004B681B0A1354521C92B24B681354521C44 +:1013300092B28B681B0A1354521C92B28B681354DE +:10134000521C92B28B891354521C92B20B691B0A25 +:101350001354521C92B20B691354521C92B28B8AD2 +:101360001354521C92B2CB8A1354521C92B28B6902 +:101370001B0A1354521C92B28B691354521C92B222 +:10138000CB691B0A1354521C92B2CB691354521CE2 +:1013900092B291F820301354521C92B24B6A1B0A3D +:1013A0001354521C92B2496A1154DFF88406511C3E +:1013B0008182704710B5DFF87846A18A0FF2287055 +:1013C000F0F7F0FFA08A10BD80B528220021564812 +:1013D000F0F744FFDFF858060021C1730121818234 +:1013E000002101748162C16201BD00000FB400B52B +:1013F00097B000A806F095FD9DED090ADDED210AE4 +:10140000B4EE600AF1EE10FA02DB30EE600A05E09D +:101410009FED411A71EE600A30EE800A10EE100A5C +:10142000F7F718F8DFF8F425DFF8F435F1F788FD61 +:10143000F7F738F8F7F70EF80022DFF8E835F1F79C +:101440006DFCF1F795FF00EE100AB8EEC00A10EE41 +:10145000100AF6F7FFFFDFF8C425DFF8CC35F1F707 +:101460005DFCDFF8C825DFF8E835F1F769FDF7F72F +:1014700019F800EE100A17B05DF814FB0FB400B5B0 +:1014800097B000A806F04DFD9DED0E0ADDED260A91 +:10149000B4EE600AF1EE10FA02DB30EE600A05E00D +:1014A0009FED1D1A71EE600A30EE800A10EE100AF0 +:1014B000F6F7D0FFDFF86425DFF86435F1F740FD7B +:1014C000F6F7F0FFF6F7C6FF0022DFF85835F1F720 +:1014D00025FCF1F74DFF00EE100AB8EEC00A10EE41 +:1014E000100AF6F7B7FFDFF83425DFF83C35F1F7DF +:1014F00015FCDFF83825DFF85835F1F721FDF6F750 +:10150000D1FF00EE100A17B05DF814FB4423012050 +:101510009C1E012000007A440024744948280120C0 +:101520004028012040771B001C2401206D08010881 +:10153000D5080108D90801082DE9F0472DED068BE3 +:10154000AAB006460D4614A806F0EBFC40F22114A2 +:10155000287814FB006001210170287814FB0060DA +:10156000DFF8CC74797B01290ED1032242702878F0 +:1015700014FB00600122C270012907D1788A00287B +:1015800004D10020787301E001214170287814FB18 +:10159000006003218170787C012820D1387C0028EC +:1015A0001DD0297814FB0161C0220A71DFF868148C +:1015B0000870287814FB0068FFF7FCFEA8F83000DC +:1015C000287814FB0064FFF78DFEC4F832002878F9 +:1015D000401C2870FFF7F8FE0020787415E20DF12A +:1015E0008C099FED868B9FED879BDFF84874002068 +:1015F000139001201290394684B068465822F1F7C2 +:1016000081FA0FBCFFF786FD0A28287814FB0060DA +:1016100080F0FC8000210171287814FB006898F8A4 +:1016200004A00846139002201290394684B0684600 +:101630005822F1F767FA0FBCFFF76CFD40EA0A0089 +:1016400088F80400287814FB006800201390032019 +:101650001290394684B068465822F1F753FA0FBC0D +:10166000FFF758FD88F80500287814FB0068002073 +:10167000139004201290394684B068465822F1F73E +:1016800041FA0FBCFFF746FD88F80600287814FBE6 +:1016900000680020139005201290394684B06846F7 +:1016A0005822F1F72FFA0FBCFFF734FD88F8070036 +:1016B000394684B068465822F1F724FA0FBCFFF788 +:1016C000DDFE10EE100AF6F7C5FE41EC100B28788F +:1016D00014FB006853EC102B51EC190BF1F71EFBB7 +:1016E000F1F746FEA8F80E00287814FB006823984E +:1016F000F6F7B0FE53EC182BF1F710FBF1F738FEBC +:1017000088F81000287814FB0060B9F80E104174B6 +:10171000394684B068465822F1F7F4F90FBCFFF758 +:1017200065FE10EE100AF6F795FE41EC1A0B2878CC +:1017300014FB006853EC1A2B51EC190BF1F7EEFA7D +:10174000F1F716FE88F81200287814FB0068D9F823 +:101750000800F6F77FFE53EC182BF1F7DFFAF1F7EC +:1017600007FE88F81300287814FB00680020139007 +:1017700006201290394684B068465822F1F7C2F923 +:101780000FBCFFF7C7FC88F80800287814FB006836 +:101790000020139007201290394684B068465822E2 +:1017A000F1F7B0F90FBCFFF7B5FC88F8090028780D +:1017B00014FB00680020139008201290394684B072 +:1017C00068465822F1F79EF90FBCFFF7A3FC88F892 +:1017D0000A00287814FB006400201390092012905E +:1017E000394684B068465822F1F78CF90FBCFFF7F0 +:1017F00091FCE0722878401C287004E10000000091 +:1018000000002440000000000000594080210171C8 +:10181000287814FB006800201390022012903946AB +:1018200084B068465822F1F76DF90FBCFFF772FCDF +:10183000C8F80500287814FB0068002013900320E6 +:101840001290394684B068465822F1F75BF90FBC14 +:10185000FFF760FCC8F80900287814FB0068002036 +:10186000139004201290394684B068465822F1F74C +:1018700049F90FBCFFF74EFCC8F80D00287814FB9F +:1018800000680020139005201290394684B0684605 +:101890005822F1F737F90FBCFFF73CFCC8F81100EC +:1018A000394684B068465822F1F72CF90FBCFFF78F +:1018B000E5FD10EE100AF6F7CDFD41EC100B28788F +:1018C00014FB006853EC102B51EC190BF1F726FABE +:1018D000F1F764FDC8F82700287814FB0068239806 +:1018E000F6F7B8FD53EC182BF1F718FAF1F740FDB5 +:1018F00088F82B00287814FB0060B9F80E1080F8E7 +:101900002C10394684B068465822F1F7FBF80FBC1A +:10191000FFF76CFD10EE100AF6F79CFD41EC1A0B78 +:10192000454A464B02F0CCF906D8454A454BF1F7FB +:10193000D3FA01D29FED47AB287814FB006853EC33 +:101940001A2B51EC180BF1F7E9F9F1F711FDA8F892 +:101950002D00287814FB0068D9F80800F6F77AFD06 +:1019600053EC182BF1F7DAF9F1F702FD88F82F00A4 +:10197000287814FB00680020139006201290394646 +:1019800084B068465822F1F7BDF80FBCFFF7C2FBE0 +:10199000C8F81500287814FB006800201390072071 +:1019A0001290394684B068465822F1F7ABF80FBC64 +:1019B000FFF7B0FBC8F81900287814FB0068002076 +:1019C000139008201290394684B068465822F1F7E7 +:1019D00099F80FBCFFF79EFBC8F81D00287814FB90 +:1019E00000640020139009201290394684B06846A4 +:1019F0005822F1F787F80FBCFFF78CFBC4F82100E1 +:101A00002878401C2870FFF76EFB2AB0BDEC068BCF +:101A1000BDE8F0870000244050FD00207B14AE4755 +:101A2000E17A743F00005940E17A843F2D431CEB7A +:101A3000442301209C1E0120B81E85EB51B89E3F17 +:101A40009A9999999999B93F2426012080969800EE +:101A5000E2361A3F9A9999999999B93F53746570EA +:101A60003D25642C2025640050443A54696D654E30 +:101A70006F7469202564202564202564000000001F +:101A800050442042542042462046554C4C00000011 +:101A900050443A20526571205065646F496E666FFC +:101AA0003100000050443A207574696D657220253C +:101AB0006400000050443A20526571205065646F04 +:101AC000496E666F3200000050443A2053746172D0 +:101AD00074204461746120256400000050443A2061 +:101AE000555420256400000050443A204241544C93 +:101AF000454E4754482025640000000010B5DFF82B +:101B0000444D40F2972200212046F0F7A7FBFF202A +:101B10002070E07284F85A02DFF8FC0D0021417059 +:101B200010BD70B501240B2831D1012918D1DFF87F +:101B3000141D511891F94E321D46DFF8E06D965D87 +:101B4000B54203DA581C81F84E0243E0002381F8C5 +:101B50004E321C4601460FF28000F0F723FC39E0BC +:101B6000022937D1DFF8DC1C511891F94E32012BD4 +:101B700003DB581E81F84E022CE0002381F84E3220 +:101B80001C4601460FF26000F0F70CFC22E00A2828 +:101B900020D1012908D1DFF8AC0C111801F24E2137 +:101BA0000879401C087115E0022913D1DFF8941C54 +:101BB000511801F24E2191F90430012B02DB581E1D +:101BC000087107E000230B711C4601460FF2180054 +:101BD000F0F7E8FB204670BD41542D414C2045589C +:101BE000202564202564000041542D524C20455886 +:101BF0002025642025640000DFF8481C81F8560287 +:101C000070470FB4F0B5ABB00124DFF80C5DE868A5 +:101C1000DFF8306C90F81014002957D190F81104B7 +:101C2000002853D10FF22C20F0F7BCFBB4208DF824 +:101C3000020046208DF8030020468DF804000020A5 +:101C40008DF82C0003200C900DF1350000A918220E +:101C5000F0F748FF0A208DF834000BA8F6F7D2FA07 +:101C6000002801D10220F0E014A806F05AF900A8DB +:101C7000F0F788FE9DF80000F0769DF901003077BE +:101C80009DF902107177BDF90320F2839DF90030B0 +:101C90004FF46167C0EB001C4FEA8C0017FB030098 +:101CA00040FA81F04FF47A7101FB0020C6F802007F +:101CB000C6F80D000020A861E8702870A870687050 +:101CC0002422014606F52670F0F7C8FA9DF8C27086 +:101CD0003846012825D19DF8C3000246202A0ED09F +:101CE000F17D4118F175C9B2202912DB091AF1758D +:101CF000C9B20FF27010F0F755FB0220A5E02046A4 +:101D000005E0F17D224682401143F175401C052813 +:101D1000F7DB307E21469DF9C420914008433076A0 +:101D200049E0811991F94E22002A44D191F95212C9 +:101D3000002940D102282ED100A8F0F723FE9DF9FA +:101D400000004FF461619DF90120C2EB02139A007B +:101D500011FB00209DF9021040FA81F04FF47A71D6 +:101D6000BDF9032001FB0020C6F88B02C6F88702EC +:101D700006F1250006F11B010522F0F7B3FE4FF432 +:101D80009660A6F81900DFF8680DC6F87F020020FB +:101D9000686128610FE003280DD19DF8C30086F823 +:101DA0002000BDF8C5004FF47A714843C6F8210001 +:101DB0000020C6F89302204600FA07F1B07D0843E0 +:101DC000B0753278002A0DD09DF8C300012804D1E7 +:101DD000824202D1002086F8590296F86102084337 +:101DE00086F861023A46214696F85602FFF799FEB8 +:101DF000002800D10224E86896F955120A9196F954 +:101E00005412099196F95312089196F952120791BA +:101E100096F95112069196F95012059196F94F12C2 +:101E2000049196F94E12039190F81114029190F8D2 +:101E300010040190B6F819000090337EF27DB17D58 +:101E40000FF23400F0F7AEFA20462BB0F0BC5DF88C +:101E500014FB000041542D52455631343033303498 +:101E60000000000041542D414C204578494E54203B +:101E7000256420256400000041542D414C20256438 +:101E80002025642025642025642C415420256420CD +:101E90002564202564256425642564202564256443 +:101EA00025642564000000002DE9F04194B0FEF7A0 +:101EB0003FFA06460124002E00F08680DFF88459A0 +:101EC00005F24E28B278022198F80800FFF729FEA3 +:101ED000002800D10324B07801282CD1F0780246E4 +:101EE00005F21607202A14D07978814209D3081AFE +:101EF0007870B878012196F9042091408843B87031 +:101F00000AE00FF25C10F0F74DFA00207870B8701C +:101F100002E000207870B870787800282AD1A87D77 +:101F2000012196F9022091408843A8750FF24410D0 +:101F3000F0F738FA1EE0401990F94E02002819D146 +:101F4000B078401990F95202002813D1B0780328D4 +:101F500009D105F219000021C17181600846C5F858 +:101F60009302A8F81600A87D012196F9022091405D +:101F70008843A875A87D002813D10FF20410F0F74C +:101F800011FAFFF7BBFD01208DF82C0003200C9007 +:101F90000A208DF834000BA8F6F734F9002829D16F +:101FA00025E0DFF87409C06890F87810002921D185 +:101FB000002180F8101480F81114FFF79FFD0FF234 +:101FC000D000F0F7EFF915E00FF2D800F0F7EAF9DA +:101FD000FFF794FD20468DF82C0003200C900A207A +:101FE0008DF834000BA8F6F70DF9002801D1032075 +:101FF00032E00324DFF82009C068DFF8485805F212 +:102000004E2805F2160798F907100A9198F906105C +:10201000099198F90510089198F90410079198F919 +:102020000310069198F90210059198F90110049196 +:1020300095F94E12039190F81114029190F8100442 +:102040000190B5F819000090BB787A78A97D0FF25D +:102050006000F0F7A7F9204614B0BDE8F081000059 +:1020600041542D524D204578494E54202564202559 +:102070006400000041542D524D2D494E5400000083 +:1020800041542D414C4C52454D4F564544000000A3 +:1020900041542D464F5243454452454D4F564544B9 +:1020A0000000000041542D524C204E756C6C000015 +:1020B00041542D524C202564202564202564202580 +:1020C000642C415420256420256420256425642542 +:1020D00064256420256425642564256400000000CF +:1020E0002DE9F04F89B003A8F0F74CFC01A805F0EA +:1020F00021FF0027B84638460290DFF848479DF890 +:102100000C00A0719DF80D00E0719DF80E0020728A +:10211000BDF80F00A4F80900A0794FF46161E279DD +:10212000C2EB02139A0011FB0020217A40184FF4F1 +:102130007A71B4F8092001FB0020C4F80200BDF850 +:102140000450EDB2BDF806A000F084FDD4F80D10E7 +:10215000D4F8020000F0E4FB060001D0C92E0CD335 +:10216000DFF8E097D9F80C00C26F31460FF23C401F +:10217000F0F718F9D9F80C00C66FA07D400722D5FA +:10218000DFF8C097D9F810003018C9F8100047F2EE +:102190003051884217D3D9F814104118C9F81410D7 +:1021A0000FF21840D4F87F228A4205D3F0F7FAF8EC +:1021B0003846C9F8100006E0F0F7F4F83846C9F8D8 +:1021C0001400C9F8100094F80B90A94500F08D8018 +:1021D00084F801A025703846C4F88302A07D40072A +:1021E00077D5D4F88712D4F8020000F099FB834623 +:1021F000D4F88F0244F62067BB4513D25844C4F884 +:102200008F0204EB8900D0F86B125944C0F86B12AE +:10221000E07A0019217B90F866228A4212D280F877 +:1022200066120FE083444046C4F88F021422014630 +:1022300004F26B20F0F712F80522414604F2662002 +:10224000F0F70CF8D4F88F22BA4234D34046D4F8D1 +:102250006F12D4F86B32994200D3012002210BE0B7 +:1022600004EB8303D3F86B3204EB8707D7F86B7268 +:10227000BB4200D20846491C0346C9B20F46052F8F +:10228000EEDB8DF81400181990F866028DF8150031 +:1022900005A905A800F0D6FB1422414604F26B20E4 +:1022A000EFF7DCFF0522414604F26620EFF7D6FF88 +:1022B0004046C4F88F0294F85702002809D05A46C5 +:1022C00004F10B0104F10B0000F0BCFB404684F864 +:1022D0005702D4F80200C4F88702404684F8590235 +:1022E00084F85EA20127B84628E0D4F883023018AB +:1022F000C4F8830294F85E125FFA8AFA514505D059 +:1023000084F801A084F85EA20127B846217B627898 +:10231000914213D12178894510D144F62067B84203 +:102320000BD3A07D400706D594F85702002802D1B0 +:10233000012084F85702C4F88372002794F86112D0 +:10234000002909D0002F07D10127C80700D5B846BA +:102350000FF27420F0F726F8A07D40070FD5D4F8CF +:102360000290D4F88B12484600F0DAFAD4F87F12C3 +:10237000884204D3012738460290C4F88B92002F7C +:1023800000F0D58000270DE00FF24820F0F70AF8A2 +:10239000002084F85D0204F12500A11D0522F0F75C +:1023A000A1FB7F1C032F80F2C280A07D3841C007B3 +:1023B000F7D594F8610240FA07F1C90701D4002863 +:1023C000EFD1002F03D0022F21D00ED3E9E7DFF8A1 +:1023D00074058068407A0028E3D1B8F1000FE0D09E +:1023E0000021012000F00FFADBE7E07D2841C00763 +:1023F000D7D560780028D4D094F859020028D0D1DD +:10240000012084F85902014600F0FDF9C9E702985D +:102410000028C6D0D4F80290D4F88712484600F0BD +:102420007FFAD4F88F1201EB000B44F6206083454D +:1024300006D35A4604F10B01204600F003FB09E0E5 +:10244000A9EB0B0103A800F07FFAA01D03A9052248 +:10245000F0F748FBB4F862020938F0F759FDDFF8ED +:102460002C2DDFF89037F0F759FCF0F781FF81460B +:102470001FFA89F994F85D22914506D049460FF676 +:102480008050EFF78FFF84F85D9294F85D1284F826 +:102490003210012084F858024FF0000A0FF67050F5 +:1024A000EFF780FF4FF009091BE00AF1010A09EB81 +:1024B000040000F22A018A78CB781B0203EB024267 +:1024C0000B79D21800924B7890F82A205FFA8AFA9A +:1024D00051460FF64850EFF765FF09F105091FFA5D +:1024E00089F9B4F8622210468145DEDBDFF85494A6 +:1024F000D9F80C1091F8111400293FF449AF94F960 +:1025000050120129FFF644AF94F85D1200293FF400 +:102510003BAF002A3FF438AF04F12A010120F4F761 +:102520002EFE0020C9F81000C9F8140030E7A07D85 +:1025300000072DD594F820002841C00728D594F82D +:102540006402002894F865021BD1A84215D0D4F883 +:1025500093023018C4F89302D4F82110884217D39C +:102560000321012000F04FF90020C4F8930201205C +:1025700084F8640284F865520AE00020C4F89302EB +:1025800006E0A84204D0002084F86402C4F8930254 +:1025900004F10B0021460B22F0F7A4FA002084F886 +:1025A0006102012009B0BDE8F08F000041542D43C5 +:1025B000757253543A2564202564000041542D431C +:1025C0007572543A2564000041542D434845434BED +:1025D0002025640041542D455820256420256400A1 +:1025E0002DE9FE4305460E4691464FF0000801A82E +:1025F00041460A4606C0DFF8A04B04F5167794F86A +:102600005802002807D0084684F8580278810FF64F +:102610002440EFF7C7FE7889002827D104F225006F +:1026200094F825104FF461624378C3EB031C4FEA22 +:102630008C0312FB0131807808184FF47A71228DD7 +:1026400001FB002004F1280101228A70CA701A22BD +:102650000A7104224A71020E8A71020CCA71020ABE +:102660000A7248727879887209207881B9F1000F6E +:1026700003D0B9F1020F2ED051D228788DF8040082 +:102680000DF10409687889F80100300C89F802001E +:10269000300A8DF8070089F80460052201A97889BD +:1026A00000192A30F2F726FA7889411D79812878B5 +:1026B000B8706878F8707879401C78714FF001082C +:1026C000009699F801309DF8042089B20FF6783011 +:1026D000EFF768FE23E07889001900F2270190F8EF +:1026E00027204B781B0203EB02428978511872189D +:1026F000110C80F8271078890019110A80F8281029 +:102700007889001980F8292079890819009290F8B1 +:10271000263090F825200FF64830EFF743FED4F826 +:102720000200C4F887020020C4F88F024046BDE8CA +:10273000FE83DFF8640A90F85812002904D00021C3 +:1027400080F858120120704700207047DFF8480ACF +:102750000021A0F862127047DFF83C1A01F22E0047 +:10276000B1F86222002A04D10022CA8511464180B4 +:1027700001717047DFF8200AB0F86202002802D029 +:10278000001F80B270470520704710B5624CF5F706 +:1027900063FCE060EFF785FDA060E068DFF8FC19FE +:1027A000C0F8201400F22040DFF8F4194160DFF88F +:1027B000F41981600FF20D01C1600FF29D010161FA +:1027C000012010BD00205449C96891F81114002956 +:1027D00013D00146DFF8C03900E0491CC9B20A46EF +:1027E000042A05DAD21892F94E22012AF5DB0120DB +:1027F000002801D10020704700E07047DFF89809F9 +:1028000090F95F027047DFF8902902F24E23587466 +:10281000002813D00846042805DA801890F94E02E3 +:1028200001280DDB03E092F94E02012808DB987BBA +:10283000012202FA01F1084398737047002098734F +:10284000704700004CF4002080B500210846FFF7D7 +:10285000DAFF012002BD00007CB5002340F2211206 +:102860000C7812FB0404012525700C7812FB04047B +:102870001A25A570DFF8204994F85C520B263542E2 +:1028800014D00B7812FB030301255D7094F85C32C1 +:10289000DD0603D503F0EF0384F85C320B7812FBFE +:1028A000030394F85C52DD70012313E0ED0611D5AB +:1028B0000B7812FB030303255D700B7812FB0303F7 +:1028C00001259D720B7812FB0303DD70002384F851 +:1028D00060322B46002B12D00B7812FB0303D4F886 +:1028E00002505D600B7812FB030325781D720B7894 +:1028F00012FB0300627842720878401C0870FFF7F0 +:10290000A3FF94F86002012804D104210120BDE84E +:102910007C4078E773BD0000F4230120807A00201A +:1029200010B40022884201D3421A08E00B1ADFF8E3 +:102930007848A34203D3DFF874281018421A1046CF +:1029400010BC7047F42301202DE9F0412DED028BDE +:1029500082B007460E463046F0F7E4FA41EC180B19 +:1029600053EC182BDFF84808DFF84818F0F7D6F9D1 +:10297000F0F7FEFC8DF800004FF4616853EC182B63 +:10298000DFF83408DFF83418F0F7C8F904460D46CC +:102990009DF8000018FB00F0F0F7BAFA02460B466B +:1029A00020462946F0F7FAF841EC180B53EC182BA7 +:1029B0004FF01130DFF80818F0F7B0F9F0F7D8FC55 +:1029C00004468DF801403C25E4B215FB04F0F0F715 +:1029D0009FFA02460B4651EC180BF0F7DFF8F0F7C0 +:1029E000C7FC8DF802009DF8001011FB08F114FBE4 +:1029F000051151FA80F04FF47A7101FB1060ADF8C7 +:102A00000300384600A90522F0F76CF802B0BDECCF +:102A1000028BBDE8F081DFF8801781F86002887DC5 +:102A2000C00709D591F86002012802D104210120D4 +:102A3000E9E6002081F860027047DFF85C170B229E +:102A4000F0F750B83CB40B461146DFF84C2702F2C1 +:102A50005A24E478002C04D0D57A92F85A22AA425B +:102A600003D0002202B030BCBAE5002C06D0AA4246 +:102A700004D10222184602B030BCB1E533BC704725 +:102A800070B52DED048BB0EE408AF0EE608A0446FE +:102A90000D46164651EC180B53EC182BF0F77EF848 +:102AA00041EC190B53EC192B0020DFF81817F0F745 +:102AB00035F941EC100B84ED008B85ED000B53ECE8 +:102AC000102B4FF01130DFF8F816F0F727F9024617 +:102AD0000B4651EC190BF0F761F80022DFF8E836ED +:102AE000F0F71CF9C6E90001BDEC048B70BD0000D5 +:102AF000804F12000FB438B52DED048B8CB014A8A4 +:102B00000268436843EC102B06AA08A90AA8FFF73D +:102B1000B7FFDDE90A230020DFF8B016F0F7FEF872 +:102B200004460D46DDE90823DFF86006DFF8A0164D +:102B3000F0F7F4F822462B46F0F702FA04460D4669 +:102B4000DDE90623DFF88C06DFF88C16F0F7E6F8EF +:102B500022462B46F0F7F4F941EC180B16A8026850 +:102B6000436843EC102B00AA02A904A8FFF788FFD2 +:102B7000DDE904234FF03330DFF86016F0F7CEF8CC +:102B800004460D46DDE90223DFF85406DFF854164B +:102B9000F0F7C4F822462B46F0F7D2F904460D466A +:102BA000DDE90023DFF8E405DFF83C16F0F7B6F8BE +:102BB00022462B46F0F7C4F941EC190B53EC182BC5 +:102BC00051EC180BF0F7AAF804460D4653EC192BFC +:102BD00051EC190BF0F7A2F822462B46F0F7B0F9AA +:102BE00041EC100BF0F744FB0CB0BDEC048B31BC96 +:102BF0005DF814FB9999C93F0FB410B58EB010A8B9 +:102C00000268436843EC102B19A80268436805ACBE +:102C100051EC100BEFF7C2FF2060616012A8026850 +:102C2000436843EC102B1BA80268436807AC51ECC7 +:102C3000100BEFF7B3FF2060616005A984B0684610 +:102C40002422EFF75FFF0FBCFFF754FF0EB010BC5C +:102C50005DF814FB2DE9F84F2DED068BB0B0DFEDDC +:102C6000E08A00259FEDDE8A00A8EFF78BFE0EA814 +:102C7000EFF7E0FE17A8FFF7E0FE14AF4FF47A700D +:102C80003C214FF461627B78BC7811FB04F412FBA9 +:102C90000343FC781B1900FB03F89DF9003013FB7C +:102CA00002F29DF9013013FB01219DF9022041FA46 +:102CB00082F1BDF9032000FB01261AA805F031F9C5 +:102CC000DFF828459DED290AB5EE400AF1EE10FA2D +:102CD00004DD0320E0702846A07001E02846E07083 +:102CE000F87ADFF8B49499F8BB12012940F03A81E0 +:102CF000012840F03781A069404500F0188109F5AE +:102D0000267105A82422EFF7FDFE0EA984B06846BF +:102D10002422EFF7F7FE0FBCFFF76EFFB0EE409AEC +:102D2000F0EE609AA1694046FFF7FAFD074651ECC4 +:102D3000190B2A46134600F0C3FF18D23846F0F7A5 +:102D4000F1F8DFF87424DFF87434EFF7E7FFDFF809 +:102D5000A024DFF8A034EFF7E1FF02460B4651EC68 +:102D6000190BF0F761F9F5F79DFB08EE900A9DED60 +:102D7000280AD4ED090A30EE600A84ED080AB5EE9F +:102D8000400AF1EE10FA01D52846206242F2107096 +:102D90008742C0F0998053EC192B2846DFF858146D +:102DA000EFF7BCFF41EC190B53EC192BDFF8DC03F8 +:102DB000DFF84814EFF7B2FF02460B4692469B46F7 +:102DC000206AF5F747FB52465B46F0F785F82AD2B2 +:102DD0009FED840AF4EE408AF1EE10FA0EDB0DF15D +:102DE0005500016800EE101ADFED7F0AB4EE600AAC +:102DF000F1EE10FA02DB0A20207014E0B3EE080AAC +:102E0000F4EE408AF1EE10FA03DB2078401D2070CA +:102E100009E0B3EE020AF4EE408AF1EE10FA02DBAA +:102E20002078C01C20700DF1550001680AEE101AC0 +:102E300094F900000690206AF5F70CFBCDE9040137 +:102E40008DED029B1AEE100AF5F704FBCDE90001A7 +:102E500018EE900AF5F7FEFA02460B460FF21840FC +:102E6000EFF7A0FA284620629DF85000312880F242 +:102E70001781B3EE080AB4EE408AF1EE10FA40F181 +:102E80000F819FEDC00A0DF15500016800EE901A08 +:102E9000F4EE400AF1EE10FA76DB9DF8500021289E +:102EA00080F210810DF15500016800EE101ADFED7F +:102EB0004E0AB4EE600AF1EE10FA63DB94F90000FA +:102EC00005285DDB0A25FDE00DF15500016800EEE7 +:102ED000101A00EE907AF8EE600A09F2B5209FED24 +:102EE000AA1A016801EE901AB4EE610AF1EE10FA26 +:102EF0000EDB0DF155010A6800EE102A016801EEA3 +:102F0000901A30EE610A80EE200A20EE018AABE7CB +:102F1000016800EE101A0DF15500016801EE901ADB +:102F200030EE610A80EE200A20EE018A9CE7E1691A +:102F30003046FFF7F5FCB0F57A7F1FD394F9000017 +:102F400000281BD09DED290AB5EE400AF1EE10FADB +:102F500014D0E661FF208DF850000DF15500294690 +:102F6000016081E7012809D109F526700EA9242204 +:102F7000EFF7C8FDC4F81880E66175E76078FBE0FC +:102F800003259FE002259DE0016800EE901AB3EE54 +:102F9000021AF4EE410AF1EE10FA0EDB016800EEBF +:102FA000901AF4EE400AF1EE10FA06D59DF85000A2 +:102FB000212880F28780022584E09FED750A016850 +:102FC00000EE901AF4EE400AF1EE10FA0EDB9DF8D6 +:102FD0005C00012801D0042874D1022572E000BFF2 +:102FE000000000000000104200004042016800EEB6 +:102FF000901A9FED681AF4EE410AF1EE10FA31DBF7 +:10300000016800EE901AF4EE400AF1EE10FA29D5AC +:103010009DF85C00012803D19DF85D10022901D0C4 +:10302000042805D19DF8500021284BDA012549E0FC +:103030009DED290AB5EE400AF1EE10FA42DD0DF1E0 +:103040005500016800EE101AB5EE400AF1EE10FAD4 +:1030500038DD6078002802D16FF0010532E06FF0B2 +:1030600002052FE09DED290AB5EE400AF1EE10FAB7 +:103070000BDD6078002802D16FF0020522E0E078D5 +:1030800003281FDB6FF002051CE0A078401CA07035 +:10309000C0B23C2816DB6FF001050020A07011E0E3 +:1030A0009DED290AB5EE400AF1EE10FA0ADD6078CE +:1030B000002802D16FF0020504E0E078032801DB6C +:1030C0006FF0020520782818207040B2002801D542 +:1030D0000020207094F900000A2804DB0A202070E8 +:1030E0000120607003E0002801D10020607094F995 +:1030F000040094F90010884230D018EE100AF5F759 +:10310000A9F941EC100B607800280DF15500016819 +:1031100008EE101A94F9000004908DED020B299826 +:103120000ED0F5F797F9CDE9000118EE100AF5F782 +:1031300091F902460B460FF25810EFF733F90DE004 +:10314000F5F788F9CDE9000118EE100AF5F782F9D4 +:1031500002460B460FF25810EFF724F909F52670D6 +:103160000EA92422EFF7CEFCC4F81880E661289857 +:10317000606220782071607830B0BDEC068BBDE8CD +:10318000F28F00000100104200007A449A99999948 +:10319000010040416766E6404CF40020031C010832 +:1031A000A91E0108E1200108A1780F05005C260591 +:1031B000B9791F962FA4923EFCA9F1D24D62503FDF +:1031C0001111913F00004E400020AC4000C05B4018 +:1031D0009999FD3F5839B4C876BE9F3F3333564066 +:1031E000AE47E17A14AEF73F9999993FF423012055 +:1031F000DFBC9A785634323F00408F409999C93FDE +:1032000041542D4346205742432025642025640025 +:1032100041542D54433A25640000000041542D4E82 +:103220006F256420543A256420413A256420443AAD +:103230002564000041542D436C65617242617463E2 +:10324000684461746100000041542D4241543220B1 +:1032500053503A256420256420256420256400000D +:1032600041542D424154342053503A256420256462 +:10327000202564202564000041542D50312025660E +:103280002025662025662025662025640000000094 +:1032900041542D503220473A256620503A25662069 +:1032A000443A25662056656869636C652D2564007F +:1032B00041542D503220473A256620503A25662049 +:1032C000443A2566204E6F747965742D256400009C +:1032D00080B5B248816891F83914002901D10020E5 +:1032E00002BD01218170EDF764F800280AD0EDF7E6 +:1032F00065FF01460FF2EC20EFF754F8EDF75DF8AB +:10330000012002BD002002BD0FB430B589B0A34C2E +:10331000A06890F83814002940D190F839040028AA +:103320003CD1ECF731FF002020706070A07060612C +:10333000BDF83240204600F019F9BDF83450284657 +:1033400000F012F90FF2B020EFF72CF82A462146D0 +:103350000FF2B020EFF726F801208DF83400AA20F4 +:103360008DF832003C208DF8330000208DF80000ED +:10337000032001900DF109000CA91822EFF7B2FB10 +:103380000A208DF8080000A8F4F73CFF002805D1BA +:103390000FF28020EFF706F8022000E0012009B0CC +:1033A00030BC5DF814FB00B589B0ECF764FF012078 +:1033B0008DF80000032001900A208DF8080000A875 +:1033C000F4F720FF002801D1032000E0012009B01C +:1033D00000BD70B504460D4640F22116287816FB54 +:1033E000004001210170EDF7E9FE01281AD128788B +:1033F00016FB004005214170287816FB00401B2178 +:1034000081700FF22420EEF7CDFF287816FB0040E4 +:103410000221C170287816FB00401E214171ECF793 +:10342000DDFF18E0EDF7CEFE012814D1287816FB59 +:10343000004001214170287816FB00401B2181705B +:103440000FF2F410EEF7AEFF287816FB00400121D2 +:10345000C170ECF7D3FF2878401C2870BDE870409D +:10346000ECF7ABBF70B59CB04D4E304604F059FD43 +:1034700030684A4CE168411A89B2002904D12269B6 +:10348000B6F84A309A4203D0E060B6F84A002061AC +:10349000A068D0F83C5431606068807AC046C0466D +:1034A000314683B068465822EFF72CFB0EBCADB214 +:1034B0002846EEF77BFA6061207801281CD113A81A +:1034C000EFF7B8FA17A80268436843EC122B15A867 +:1034D0000268436843EC112B13A80268436843EC6D +:1034E000102B9DF867209DF866109DF8650000F090 +:1034F0002FF80020207006E06078012803D100F04A +:1035000031F80020607001201CB070BD10B50FF2C2 +:103510003810EEF747FF214CEEF7C3FE6060F4F77A +:103520009BFDA060EEF7BDFE60600020E0602061C2 +:10353000A0681C49C0F8481400F248401A4941608C +:103540001A4981601A49C1601A490161012010BD00 +:1035500080B5D2B2C9B2C0B2ECF76DFFBDE8014090 +:10356000ECF75CBFECF762BFECF7A6BEECF793BEDE +:10357000ECF7B4BEECF7C0BE80B5EDF71FFE002837 +:1035800005D006488078002801D1012002BD002026 +:1035900002BD02480121017070470000A0250120F2 +:1035A000F41E012009330108A7330108653401081E +:1035B000D1320108D3330108EDF72CBEEDF72EBE52 +:1035C000C9B2EDF73ABEECF709BFECF763BEEDF711 +:1035D00039BF80B5EDF7FCFEC0B202BDEEF7C2B94F +:1035E000EEF7C1B94C5420436D6452656164795F54 +:1035F00053532025640000004C54205374617274AE +:10360000205353004C542053542025642C205754ED +:10361000202564004C54205065646F4F70656E46E1 +:1036200061696C20535300004C542052455155455C +:10363000535420504F5300004C542052455155458F +:1036400053542041434B00004C5420496E6953535E +:10365000000000000FB480B5082200210846F4F7EE +:10366000FDFC022801D1022004E06948002101701C +:103670004180012002BC5DF814FB65480021017007 +:103680000120704738B501240020ADF80000604DDE +:1036900095F90000002809D1204628700020A88054 +:1036A000A86805F069FA05F0DFFB29E0012829D1B7 +:1036B0006888401C68800DF10101A86805F080FC55 +:1036C000002815D0082200212046F4F7C7FC032863 +:1036D00000D1032408220B210020F4F7BFFC0228AC +:1036E00001D1022032BD0220287005F03BFE07E028 +:1036F000B5F90200962803DB0520287000F057F882 +:10370000204632BD0328FBD1A888401CA88000B207 +:10371000FB28F1DA00A9A86805F06AFA0028EFD0C2 +:1037200004202870204600F033F800F040F8E7E766 +:1037300010B5374CF4F790FCE060F7F789F8A0601B +:10374000E0683449C0F8501100F5A8703249416072 +:10375000324981600FF20D01C1600FF2C9010161B0 +:10376000012010BD01460020294AD26892F841216B +:10377000002A02D0012900D106E0704780B5002060 +:1037800000F006F8012002BD254890F900007047BE +:1037900023490870704780B5082200210846F4F7D5 +:1037A0005DFC022801D1022002BD012002BD80B5CE +:1037B000174800218180418008220120F4F74EFC47 +:1037C000032801D1032002BD012002BD38B5012428 +:1037D0000F4D95F90000022815D108220B21204633 +:1037E000F4F73CFC032800D10324FFF7D4FF0228A0 +:1037F00001D1022032BD032800D103240320287008 +:1038000002A0EEF7CFFD204632BD00005341490033 +:1038100090260120553601087B36010885360108BF +:103820000E29012018B440F221120B7812FB030379 +:1038300001241C700B7812FB03035C700B7812FBE5 +:10384000030308249C700B7812FB03000122C27052 +:103850000878401C087011BC90E700000FB480B5D8 +:103860007E4801210170052200210846F4F7F6FB8D +:10387000022801D102200DE0052207210020F4F7E3 +:10388000EDFB022801D1022004E000F0DFF805F092 +:1038900091FD012002BC5DF814FB38B5012405221E +:1038A00007212046F4F7DAFB032800D103246B4DEF +:1038B00095F90000032801D0012807D10522002135 +:1038C0000120F4F7CBFB032800D10324002028704B +:1038D00000F0BCF805F011FE204632BD80B5002096 +:1038E00000F03BF8022801D1022002BD032801D1DB +:1038F000032002BD012002BD10B5584CF4F7ACFB0B +:103900002061F6F7A5FFA060EEF7CBFCE060206930 +:103910005349C0F8D810D8305249416052498160AB +:103920000FF20D01C1600FF249110161012010BDBC +:1039300001460020494A126992F8C920002A02D0A3 +:10394000012900D102E07047002003E0474890F9C8 +:103950000000704745490870704770B582B0064650 +:1039600001253E4C94F90000012823D1A088401C79 +:10397000A08000B24C280BDB0020A0800220207029 +:10398000052200212846F4F769FB032800D103250E +:10399000012E59D1E068007D012807D1B4F9040057 +:1039A0001F2851DB6078401C60704DE0A078401CFF +:1039B000A07049E002281CD1012E0AD1E068007DE8 +:1039C000012803D16078401C607002E0A078401CA0 +:1039D000A07094F90100012836DB05220021084679 +:1039E000F4F73CFB022801D1022076BD03202070B1 +:1039F0002AE0032828D100208DF8000000A9A06843 +:103A000005F0FCFCC0B202280DD105220021284699 +:103A1000F4F724FB032800D103250120FFF79AFFC8 +:103A20000420207010E003280ED105220021284632 +:103A3000F4F714FB032800D1032500206070A07068 +:103A40000220207005F0B6FC284676BD0348002110 +:103A500081804170817070470000000010260120B5 +:103A60005D3801089B380108DD380108FF28012076 +:103A700010B50C4640F22111227811FB02020123FD +:103A80001370227811FB02025370227811FB02029C +:103A900005239370227811FB02000121C170FFF70A +:103AA00053FF2078401C207010BD00000FB480B57B +:103AB000022201210020F4F7D1FA022801D10220CC +:103AC0000EE0022207210020F4F7C8FA022801D1F3 +:103AD000022005E005F01CFD414800210170012095 +:103AE00002BC5DF814FB3E480021017001207047C4 +:103AF00000B58BB000A8F4F710FB03A890EC030A04 +:103B000005F03CFD3649087001200BB000BD10B532 +:103B1000334CF4F7A1FAA060EEF7C3FB6060A06835 +:103B20003049016630494166304981660FF21D0116 +:103B3000C1660FF269010167012010BD80B52848F8 +:103B40004068007D05F013FD012002BD00202449DE +:103B50008A6892F85120002A04D091F900100029B7 +:103B600000D0012070471E480021017001207047DD +:103B700010B50024012804D007D303280BD002D3AA +:103B800003E0012407E0022405E0032401460FF2CC +:103B90006000EEF707FC204610BD000038B50C466B +:103BA00040F22111227811FB0202012313702278C6 +:103BB00011FB02025370227811FB02020223937060 +:103BC000227811FB0205064890F90000FFF7D0FFAC +:103BD000E8702078401C2070BDE83140C3E7000049 +:103BE0001C270120AD3A0108E73A0108F13A010823 +:103BF0004C4D43505320312025640000014806F00D +:103C000079BB000000400020704700000278C9B274 +:103C10008A421AB11CBF10F8012FF9E718BF002023 +:103C200070470000C9B2830706D0521E22D310F895 +:103C3000013B9942F7D11FE0083A13D302F1040285 +:103C400041EA012141EA014150F8043B121F21BF22 +:103C50004B40A3F1013C2CEA030C1CF0803FF3D055 +:103C6000C9B2001F083210F8013B521E28BF91EA6A +:103C7000030FF8D818BF0120401E704730B44368C6 +:103C800003F0004201211B031B0B436004BF0368C8 +:103C9000002B08D10DE00368DD0F45EA44044460C1 +:103CA0005B000360491E4468E302F4D523031B0B49 +:103CB000436043681A434260084630BC70470000C6 +:103CC0004FF4001C1CEB410F94BF1CEB430F09E0A9 +:103CD00041EA030C50EA4C0C52EA0C0C03D28B4222 +:103CE00008BF8242704714BF99429042704700005B +:103CF00070B504460D466068C0F30A5040F2FF718B +:103D0000884207D16068000304BF2068002817D0EC +:103D1000022070BD20B92046FFF7B0FF012867DA06 +:103D2000012D0FDB40F2FF71091A8D420AD3606842 +:103D300000284CBF9FED2F0B9FED300B84ED000B47 +:103D4000012070BD4142A942616806DA6FF31E513D +:103D5000401941EA0050606041E0401E6368012262 +:103D6000451962F31F5305F1350001F0004163600E +:103D7000352803D361600020206070BD002215F15A +:103D80001F0F04DA2268236000202035606068423B +:103D900013D0521E25689241C0F12003D2439D40AA +:103DA00045EAD27225686668C54006FA03F32B43DC +:103DB0002360636823FA00F0606060680843606015 +:103DC000B2F1004F03D80DD12078C0070AD5206882 +:103DD000401C2060206828B96068401C60604FF07B +:103DE000FF3070BD6068884204BF20680028F6D1AB +:103DF000002070BD000000000000F0FF0000000087 +:103E00000000F07F91FBF2F303FB1211C0E90031D7 +:103E10007047000010B517480078002802D1A22092 +:103E2000F0F7E4FD1448006A401C13490862124987 +:103E3000496A401A002802D40F48012181710E48B6 +:103E400090F8280000280CD00B4890F82800401E5D +:103E5000094981F82800C0B2002802D10648012192 +:103E600001710648046802E0606880472468002CFD +:103E7000FAD110BD1A29012070790020D82801201C +:103E800080B54FF44070F5F727FA3348016841F4E4 +:103E9000700101603148016841F0010101600021B9 +:103EA000816001682E4A114001602E49416001681D +:103EB00021F4802101600021C16000F02DF82A4822 +:103EC0004FF00061016001BD2848416801F00C011C +:103ED000082914D10168026802F03F02244BB3FBA9 +:103EE000F2F20168C1F3881151430268C2F3014242 +:103EF000521C5200B1FBF2F11E4A116102E01D4951 +:103F00001B4A0A611B494068C0F30310405C0A6900 +:103F100022FA00F0086170471448C16B41F08051EB +:103F2000C163416841604168416041684160082166 +:103F3000016011494FF4C0620A60416821F4000138 +:103F400041600E480E4901600E48016821F440416D +:103F500041F480410160704788ED00E00038024084 +:103F6000FFFFF6FE1030002408ED00E004380240A8 +:103F70000024F400187A0020003C024084380240FB +:103F800040310040007000400021102806DB10384E +:103F900000F1604111F56441097806E00E2801D175 +:103FA000042007E00449001F415C802901DA022057 +:103FB00000E00120704700BF18ED00E080B55849CF +:103FC0000978491C564A1170017A491E0172C9B21A +:103FD000002901D106F09CF9F1F7CFFB01BD38B5FE +:103FE0000400504805680BE0287A002807D068686C +:103FF000A04204D1012028722800FFF7DFFFED68FE +:10400000002DF1D131BD38B50400474800780028B3 +:1040100002D0A120F0F7EAFCF1F76EFB41480568F9 +:1040200005E0A54202D1AF20F0F7E0FCED68002DDD +:10403000F7D13E483E490160142200212000EEF7EE +:104040000DF969202074F0F73EFD36480068E06005 +:104050003448046032484078F021084202D0992068 +:10406000F0F7C4FC2E484078002801D1F0F725FD78 +:1040700031BD38B504002C480078002802D0A120BA +:10408000F0F7B4FCF1F738FB207C692802D08520DA +:10409000F0F7ACFC22480078401C21490870207AD7 +:1040A000002804D11E4880686060012510E0606827 +:1040B0001B498968884209D01021200002F0E6F9E6 +:1040C000207A0028F8D1164880686060207A451C64 +:1040D0002572F1F752FB280032BD10B504001248DA +:1040E0000078002802D0A120F0F780FCF1F704FB53 +:1040F000207C692802D08520F0F778FC207A0028FF +:1041000002D19620F0F772FC606805498968884200 +:1041100002D09C20F0F76AFC2000FFF74FFF10BD93 +:1041200070790020D02801201B290120E8280120D7 +:10413000DF3F010800F5E0700268914203D3436855 +:104140009A18914202D380680028F5D17047DFF8B1 +:104150002007016899B94FF48031816004224FF43F +:10416000805141604FF0FF31C16001610421416124 +:10417000DFF80017C1F8BC21DFF8FC160160012050 +:10418000704701F1080313F0070305D001F108039C +:10419000C3F1080303F007035918D21A8161C26002 +:1041A00042F001034B60511828224A60DFF8C01624 +:1041B0000969C16170472DE9F84F044601F1080013 +:1041C00010F0070005D001F10800C0F1080000F070 +:1041D000070000EB010B02F1080010F0070005D00A +:1041E00002F10800C0F1080000F007008618A6EBF5 +:1041F0000B00A0EB030803EB0B0743F00300CBF825 +:104200000400B74228BF06F0A1F83079C00758BFB4 +:1042100006F09CF8B8F1100F38BF06F097F8A069C7 +:10422000864207D1E0684044E060A76140F00100A9 +:1042300078605AE16069864208D1A0684044A06075 +:10424000676140F001017960C0514EE1706800F093 +:104250000301012940F0AD80C0084FEAC0092028C1 +:104260003BD2D6F808A0F5680090AE4208BF06F031 +:104270006DF8564508BF06F069F870680099C008E7 +:10428000C000B0EBC10F18BF06F060F8009804EB57 +:10429000C00000F128018A4508D021698A45C0F094 +:1042A0008480DAF80C10B14240F07F80554506D189 +:1042B000009A2068012191408843206077E02830EF +:1042C000854205D0206985426FD3A868B0426CD181 +:1042D000CAF80C50C5F808A069E0F568D6F818A02F +:1042E000B5420CD0B0682169884223D3C168B1427D +:1042F00004BFA968B1421DD1C560A8601CE006F1E9 +:104300001400056835B906F110000568A5B101E093 +:104310000846056805F114010A68002A02BF05F184 +:1043200010010A68002AF3D12169884202D30021D2 +:10433000016001E006F00AF8BAF1000F37D0F06929 +:1043400004EB800000F5987001688E4209D1056089 +:10435000280014D1F26960680121914088436060AF +:1043600025E02069824508D3DAF81000B04214BF76 +:10437000CAF81450CAF8105001E005F0E7FFB5B1D3 +:104380002069854211D3C5F818A0316929B181424D +:1043900026BF29618D6105F0D9FF706938B12169A7 +:1043A000884202D36861856101E005F0CFFF4E4489 +:1043B000C84470684008400070604FEAD80548F073 +:1043C0000100786048F80780202D21D204EBC50059 +:1043D00000F12806B146B8F1100F38BF05F0B6FF5E +:1043E000206820FA05F1C90704D40121A940084337 +:1043F000206006E0B068216988422CBF814605F044 +:10440000A5FFB760C9F80C70C7F80890FE606CE0B3 +:104410005FEA182008BF002123D0B0F5803F28BFF5 +:104420001F211ED2A0F58071090C01F008018840FF +:10443000A0F58052120C02F004029040A0F58043D7 +:104440001B0CC1F10E0103F00203891AC91A98402E +:1044500001EBD030C11D28FA01F101F0010101EB9F +:104460004001F96100227A613A6104EB81006268DF +:1044700022FA01F300F59870DB0706D4012303FA52 +:1044800001F11143616007601CE01F2900680EBF45 +:1044900000214908C1F1190108FA01F100E01046B4 +:1044A0004268D208D200424510D0CA0F00EB820207 +:1044B00002F1100349001A68002AF0D121698B42E9 +:1044C00011D31F60B861FF60BF600EE02269816890 +:1044D000904228BF914206D3CF608760B960F860F0 +:1044E0000020B86101E005F031FF0BF10800BDE8E4 +:1044F000F28F2DE9F04F0546DFF87403006883B0B2 +:10450000884608B9FFF723FEDFF86403806800EBF4 +:1045100008012F31401E21EA0000804580F0A5816E +:10452000D5F8B81141B1D5F8B0218018824280F099 +:104530009C818142C0F0998105F00CFF00281EBFCC +:104540000446076814F1010F00F08F81D5F8B0011F +:104550003818C5F8B001D5F8B411814238BF01460A +:10456000C5F8B411A86968BB286908B1844200D2B3 +:104570002C61C5F8C041C5F8C4710020C5F8CC0154 +:104580002021BB48006868624FF0FF30286228464F +:1045900000F128020830D2609260491EF8D1B54877 +:1045A000854203D1A7F12802214625E055F8040CE5 +:1045B000C00805EBC000A0F108013819401AA0F1AD +:1045C000280219E005F5E071084600E08068B8B1FE +:1045D00042680368D2189442F8D1027B12070FD4C4 +:1045E000AA699A420CD3466833449A4208D2B91950 +:1045F0004160E868A9693A182846FFF7C2FD1FE143 +:104600002869844238BF2C610846391900E0806867 +:1046100080B102688A42FAD1017B09070AD404609A +:1046200043464168791841602846214603B0BDE8F9 +:10463000F04FC0E5AE6931462846FFF77BFD416883 +:104640000068081801902F3800F1080111F00701E7 +:1046500005D000F10801C1F1080101F0070101EBEB +:10466000000906F11000814538BFB14609F1080084 +:10467000009004F1080109F1180A4FF0000BA7F1AE +:10468000280011F0070105D004F10801C1F108016B +:1046900001F007010A19401AAA61E86040F001011F +:1046A000516080182821416071480069E8610098D4 +:1046B00010F0070018BF05F049FE1B20C9F80400E0 +:1046C00005F5E071B1E80C500098A0E80C50C5F871 +:1046D000C041C5F8C471C5F8CCB10098C5F8C8018F +:1046E000019800E08A460722CAF804200AF1040172 +:1046F0000A1D0BF1010B8242F4D3BBF1020FB8BFCC +:1047000005F024FEB14500F09B80A9EB060081195D +:104710004FEAD0094A68520852004A6040F001014D +:1047200071608051B9F1200F1FD205EBC90101F171 +:1047300028042746102838BF05F008FE286820FA0C +:1047400009F1C90705D4012101FA09F108432860DC +:1047500006E0A068296988422CBF074605F0F6FDEF +:10476000A660FE60B760F4606AE0010A08BF00223C +:1047700023D0B1F5803F28BF1F221ED2A1F5807241 +:10478000120C02F008029140A1F580531B0C03F0BB +:1047900004039940A1F58044240CC2F10E0204F0F8 +:1047A0000204D21A121BA14002EBD131CA1D20FA19 +:1047B00002F202F0010202EB4102F2610023736196 +:1047C000336105EB82016B6823FA02F401F59871FD +:1047D000E40705D401209040184368600E601CE097 +:1047E0001F2A09680EBF00225208C2F1190200FAFE +:1047F00002F200E019464B68DB08DB00834210D070 +:10480000D30F01EB830303F1100452002368002B44 +:10481000F0D12869844211D32660B161F660B66098 +:104820000EE02A698868914228BF904206D3C6608C +:104830008E60B060F1600020B06101E005F086FD9F +:10484000E868804511D2A0EB0800E86040F0010064 +:10485000A96908EB0102AA61506048F003004860B2 +:1048600003B001F10800BDE8F08F002000F02BBC80 +:10487000D025012078FB00206859883C2DE9F84FAD +:10488000044688460026C8F1000B5FEA182008BFDE +:10489000002123D0B0F5803F28BF1F211ED2A0F5F4 +:1048A0008071090C01F008018840A0F58052120CBB +:1048B00002F004029040A0F580431B0CC1F10E01F0 +:1048C00003F00203891AC91A984001EBD030C11DC8 +:1048D00028FA01F101F0010101EB400104EB810034 +:1048E000D0F8300130B31F290EBF00224A08C2F1B0 +:1048F000190208FA02F2002300E052004568ED08B0 +:10490000ED00A5EB08055D4503D206465FEA050B01 +:104910000CD045694FEAD27E00EB8E00002D006975 +:104920001CBF85422B460028E7D1184600283AD103 +:10493000002E3AD10120884040004142084361687E +:10494000084000F05F8141420840411E080B00F022 +:10495000100021FA00F2510901F00801CA40930841 +:1049600003F00403DA40550805F002050818EA4090 +:104970001818C2F3400E2844704422FA0EF10818A9 +:1049800004EB8000D0F830010DE008464168C9080A +:10499000C900A1EB080159453CBF8B460646016999 +:1049A0000029F2D140690028F0D1002E00F02A81C0 +:1049B000A068A0EB0800834580F02481206986422E +:1049C000C0F01E817068C00808EB0B09C00008EB3E +:1049D0000605484518BF05F0B9FCAE4280F01081CD +:1049E000F768D6F818A0B7420CD0B06821698842A1 +:1049F00023D3C168B14204BFB968B1421DD1C760B9 +:104A0000B8601CE006F11400076837B906F1100021 +:104A10000768A7B101E00846076807F114010A68B2 +:104A2000002A02BF07F110010A68002AF3D12169A8 +:104A3000884202D30021016001E005F087FCBAF151 +:104A4000000F38D0F06904EB800000F59870016821 +:104A50008E4209D10760380014D1F26960680121E3 +:104A600091408843606026E02069824508D3DAF8E7 +:104A70001000B04214BFCAF81470CAF8107001E0F8 +:104A800005F064FCBFB12069874212D3C7F818A0B3 +:104A9000306930B12169884226BF3861876105F0ED +:104AA00055FC706938B12169884202D37861876109 +:104AB00001E005F04BFCBBF1100F09D249F00300F7 +:104AC000706009EB0600416841F00101416096E029 +:104AD00048F0030070604BF0010068604BF805B0CF +:104AE0004FEADB0020281DD204EBC00101F12807AA +:104AF000216821FA00F2BB46D20705D4012202FA4E +:104B000000F00843206006E0B868216988422CBFA5 +:104B1000834605F01BFCBD60CBF80C50C5F808B00F +:104B2000EF606CE05FEA1B2008BF002123D0B0F5E6 +:104B3000803F28BF1F211ED2A0F58071090C01F013 +:104B400008018840A0F58052120C02F00402904047 +:104B5000A0F580431B0CC1F10E0103F00203891A7A +:104B6000C91A984001EBD030C11D2BFA01F101F0B8 +:104B7000010101EB4001E96100226A612A6104EB55 +:104B80008100626822FA01F300F59870DB0706D411 +:104B9000012303FA01F11143616005601CE01F2944 +:104BA00000680EBF00214908C1F119010BFA01F19B +:104BB00000E010464268D208D2005A4510D0CA0F11 +:104BC00000EB820202F1100349001A68002AF0D1BA +:104BD00021698B4211D31D60A861ED60AD600EE0CC +:104BE00022698168904228BF914206D3CD608560DA +:104BF000A960E8600020A86101E005F0A7FB07E1DB +:104C000005F0A4FB01E12DE9F84F044688466068F1 +:104C100041420840411E080B00F01000C1404A0903 +:104C200002F00802D1408B0803F00403D9404D087C +:104C300005F002051018E9401818C1F34006284491 +:104C40003018F140081804EB8000D0F830014168BA +:104C5000C908C9000646A1EB080A09E008464168F0 +:104C6000C908C900A1EB080151453CBF8A46064668 +:104C700001690029F2D140690028F0D120698642FB +:104C8000C0F0C1807068C00808EB0A09C00008EBDA +:104C9000060B484518BF05F059FB5E4580F0B38010 +:104CA000F768B569B7420CD0B0682169884223D350 +:104CB000C168B14204BFB968B1421DD1C760B860D4 +:104CC0001CE006F11400076837B906F11000076808 +:104CD000A7B101E00846076807F114010A68002A35 +:104CE00002BF07F110010A68002AF3D12169884246 +:104CF00002D30021016001E005F028FB002D34D033 +:104D0000F06904EB800000F5987001688E4209D1CB +:104D10000760380011D1F269606801219140884331 +:104D2000606022E02069854205D32869B04214BF43 +:104D30006F612F6101E005F009FBB7B1206987427F +:104D400011D3BD61306930B12169884226BF386115 +:104D5000876105F0FBFA706938B12169884202D396 +:104D60007861876101E005F0F1FABAF1100F09D21C +:104D700049F00300706009EB0600416841F0010151 +:104D800041603FE048F0030070604AF00100CBF85A +:104D900004004AF80BA0D4F808804FEAD805202D6B +:104DA00028BF05F0D3FAB8F1000F27D0D4F814903B +:104DB000009504EBC50000F128052F46B8F1100F4F +:104DC00038BF05F0C3FA2068009920FA01F1C9073D +:104DD00005D4009A012191400843206006E0A868AC +:104DE000216988422CBF074605F0B0FAC5F8089043 +:104DF000C7F80C90C9F80870C9F80C50C4F808A09E +:104E0000C4F814B004E005F0A1FA0020BDE8F28F68 +:104E100006F10800BDE8F28F2DE9F04F83B005469A +:104E2000C046C046DFF8B847F52D80F001810B2D54 +:104E300031BF102705F10B00C008C7002068FE082D +:104E4000F04010F0030F42D0C04300F0010086197B +:104E500004EBC60000F12808F700D8F8085068688D +:104E6000C008C000B84218BF05F070FAD5F8089025 +:104E7000454508BF05F06AFA4D4508BF05F066FADA +:104E80006868C008C000B84218BF05F05FFAC8459E +:104E900005D120680121B140884320600DE02069E0 +:104EA000814508D3D9F80C00A84204D1C8F808906D +:104EB000C9F80C8001E005F049FA47F0030068608A +:104EC00078190835416841F001014160F8E0A168B6 +:104ED000B94280F0BF80002800F0A180012505FACA +:104EE00006F149004A42B04011430840414208409F +:104EF000411E080B00F01000C1404A0902F00802F0 +:104F0000D1408B0803F00403D9404E0806F0020696 +:104F10001018F1401818C1F340083018404421FA25 +:104F200008F101EB000804EBC80000F128094FEA82 +:104F3000C80AD9F808607068C008C000504518BF9A +:104F400005F004FAD6F808B04E4508BF05F0FEF9A2 +:104F50005E4508BF05F0FAF97068C008C00050450A +:104F600018BF05F0F3F9D94505D1206805FA08F115 +:104F7000884320600DE02069834508D3DBF80C00EE +:104F8000B04204D1C9F808B0CBF80C9001E005F0AC +:104F9000DDF947F003007060AAEB0708B81901902B +:104FA00048F001014160019848F80080A7684FEA85 +:104FB000D70ABAF1200F28BF05F0C8F947B3CDF8DA +:104FC00000A004EBCA00D4F8149000F1280AD346DC +:104FD000102F38BF05F0BAF92068009920FA01F1C6 +:104FE000C90705D4009905FA01F10843206007E0DC +:104FF000DAF80800216988422CBF834605F0A6F93B +:10500000CAF80890CBF80C90C9F808B0C9F80CA001 +:10501000C4F8088006F108050198606150E06068F6 +:10502000C0B339462046FFF7EEFD050012D047E039 +:1050300015F1400F28BF4FF0FF370BD205F10B00E1 +:10504000C008C700606828B139462046FFF716FC43 +:10505000050035D1A168B9421CD3CA1B6069102A6A +:105060000AD339186161A26042F001034B605250CB +:1050700047F0030141600AE00022A260626141F052 +:105080000302426009184A6842F001024A6000F1D6 +:10509000080515E0E06887420DD2C01BA169E060F9 +:1050A0007A18A26140F00100506001F1080547F054 +:1050B0000300486004E039462046FFF71AFA054627 +:1050C000C046C046284603B0BDE8F08F00B970471F +:1050D0002DE9F047A0F10804C046C046DFF80055AE +:1050E00028698442C0F07582616801F00302012AD8 +:1050F00000F06F82CA084FEAC20808EB0409CA0729 +:1051000037D4226811F0030F00F0658251420C1968 +:1051100090448442C0F05D8269698C4200F0D8807E +:10512000D608202E70D2D4F80CA0A768544508BF2A +:1051300005F00CF9BC4208BF05F008F96068C0082A +:10514000C000B0EBC60F18BF05F000F905EBC600B4 +:1051500000F128018F4205D029698F4251D3F968A7 +:10516000A1424ED1BA453DD128680121B1408843C2 +:1051700028604C4580F02D82D9F80400C10740F129 +:105180002882810700F17A81A969894540F0B580BC +:10519000E868AC614044E86040F001016160696921 +:1051A0008C4202D100216961A960E969814280F0E5 +:1051B0001282DFF83004006808B9FEF7C8FFA96959 +:1051C000002900F00882E868292824BF2846FEF755 +:1051D000B1FFE869E968884280F0FD814FF0FF3057 +:1051E000E861F8E12830824506D02869824508D375 +:1051F000DAF80800A04204D1C7F80CA0CAF8087079 +:10520000B7E705F0A3F8B4E7E768A669A7420BD0B3 +:10521000A168814222D3C868A04204BFB868A042F6 +:105220001CD1CF60B9601BE004F114010F6837B9DD +:1052300004F110010F689FB101E011460F6807F1FA +:1052400014021368002B02BF07F110021368002B31 +:10525000F3D1814202D30020086001E005F076F826 +:10526000002E86D0E06905EB800000F5987001689B +:105270008C4209D10760380011D1E26968680121C8 +:1052800091408843686074E72869864205D3306995 +:10529000A04214BF7761376101E005F057F8002F95 +:1052A0003FF467AF28698742ABD3BE61216929B15A +:1052B000814226BF39618F6105F048F86069002896 +:1052C0003FF457AF296988429BD37861876150E7E3 +:1052D00099F8040000F0030003287FF44AAFC5F8F2 +:1052E0000880D9F8040040084000C9F8040048F0DC +:1052F0000100606048F804806DE16969894508D162 +:10530000A8686C614044A86040F0010161600051F0 +:1053100061E1C008C0004FEAD00A8044BAF1200F12 +:1053200036D2D9F80C70D9F80860B94508BF05F035 +:105330000DF8B14508BF05F009F8D9F80400C00818 +:10534000C000B0EBCA0F18BF05F000F805EBCA00AB +:1053500000F128018E4206D029698E42C0F081807A +:10536000F16849457DD1B74206D12868012101FA8B +:105370000AF18843286076E02830874205D0286902 +:1053800087426ED3B86848456BD1F760BE606AE06B +:10539000D9F80C70D9F818604F450DD0D9F808002D +:1053A0002969884223D3C168494504BFB968494582 +:1053B0001DD1C760B8601CE009F11400076837B957 +:1053C00009F110000768A7B101E00846076807F176 +:1053D00014010A68002A02BF07F110010A68002AB6 +:1053E000F3D12969884202D30021016001E004F071 +:1053F000ADFF002E37D0D9F81C0005EB800000F57A +:105400009870016889450AD10760380012D1D9F82F +:105410001C206868012191408843686023E0286966 +:10542000864205D33069484514BF7761376101E092 +:1054300004F08CFFBFB12869874212D3BE61D9F84E +:10544000101029B1814226BF39618F6104F07EFFBF +:10545000D9F8140038B12969884202D3786187618C +:1054600001E004F073FF48F00100606048F8048038 +:10547000686984420BD1C5F80880ACE04008400060 +:10548000C9F8040048F00100606048F804804FEA61 +:10549000D807202F22D205EBC70000F128094E467D +:1054A000B8F1100F38BF04F051FF286820FA07F157 +:1054B000C90704D40121B9400843286007E0D9F89E +:1054C0000800296988422CBF064604F03FFFC9F84E +:1054D0000840F460A660C4F80C907CE05FEA1820F5 +:1054E00008BF002123D0B0F5803F28BF1F211ED266 +:1054F000A0F58071090C01F008018840A0F58052E8 +:10550000120C02F004029040A0F580431B0CC1F184 +:105510000E0103F00203891AC91A984001EBD0303A +:10552000C11D28FA01F101F0010101EB4001E16127 +:1055300000226261226105EB81006A6822FA01F3B0 +:1055400000F59870DB0706D4012303FA01F111433B +:10555000696004601CE01F2900680EBF0021490833 +:10556000C1F1190108FA01F100E010464268D208C1 +:10557000D200424510D0CA0F00EB820202F11003A4 +:1055800049001A68002AF0D129698B4211D31C60A6 +:10559000A061E460A4600EE02A698168904228BF9F +:1055A000914206D3CC608460A160E0600020A061DD +:1055B00001E004F0CBFE286A401E28620BD1D5F82A +:1055C000C80100E080680028FCD14FF0FF3028625D +:1055D00001E004F0BBFEC046C046BDE8F087000015 +:1055E00078FB0020D0250120002848BF40427047AA +:1055F000182200210248ECF731BE01487047000034 +:105600005825012010B504464FF499620021ECF7AB +:1056100025FE40F24130208304F118014880888043 +:10562000002084F8F40204F53D70002181801021EF +:105630000181002141818181C1810846A4F836039E +:1056400004F2363001214180002181804FF0FF318A +:10565000C1800021018141818181C18101210182BB +:10566000418200218182C182018301214183002185 +:105670008183C18301840121418410BD00210B4637 +:1056800018E00A1882F8F53201EB410200EB420201 +:10569000D38013815381D3831384538401EB41025C +:1056A00000EB8202C2F8AC3302F56B725360936078 +:1056B000491C09B20129E4DB704738B504460322CE +:1056C00000A91046DFF854389B681B6E1B6A984788 +:1056D000002828D09DF80000A4F8F40004F27E35DC +:1056E0009DF80000A88004F1F40000A94A784280E7 +:1056F0004A78EA808A7882808878288142F2B76086 +:10570000A4F87E034FF4A960688010220FF61C01F4 +:1057100004F55770F4F784FE10220FF61C0104F212 +:105720006D30F4F77DFE31BDF0B583B00446002046 +:10573000C046014604F53D7569800626204611FBEA +:105740000641891D3246EDF7CDF9B5F9020010FB8F +:105750000640B0F90600E06004F10C00B5F9021053 +:1057600011FB0641B1F908104160B5F9021011FBB7 +:105770000641B1F90A108160B5F90200001990F8EC +:10578000F50284F8F40204F56870B5F9021001EB33 +:10579000410204EB820101F56B718CC98CC004F5E8 +:1057A000936204F5767104F12C0005F052F994F837 +:1057B000F4020190009401230022114604F5807048 +:1057C00005F092FB40F6C412B5F9020010FB06404A +:1057D00000F11E0104F1240005F0EAFF0020A8807A +:1057E000A4F85A030120FEBD7CB504460020C04643 +:1057F000014604F53D7569800626204611FB0641E9 +:10580000891D3246EDF76EF9B5F90200001990F8DE +:10581000F50284F8F40204F5936204F5767104F15C +:105820002C0005F016F994F8F4020190009401237D +:105830000022114604F5807005F056FB40F6C412B4 +:10584000B5F9020010FB064000F11E0104F124002E +:1058500005F0AEFF0020A4F85A03012076BD032214 +:1058600001461046DFF8B4369B681B6E1B6A18476A +:1058700080B5FFF7C2FEDFF8841608600FF2E90179 +:1058800001600FF215114160DFF8941681600FF28C +:105890001911C1600FF2350101610FF2610141611F +:1058A00001BD00200DE000EB4002DFF85C3603EBA9 +:1058B000420247F6FF7322F81130491C0329F2DB3C +:1058C000401C042801DA0021F8E7704780B5DFF8B2 +:1058D000300690F8F41280F8F5120188C1804188F2 +:1058E000018181884181818CC183C18C0184018DBA +:1058F0004184FFF7D6FF002002BD000010B5002450 +:10590000DFF8FC1591F8F5220270B1F906201212A9 +:105910004270CA88827001F20602B2F902301B128C +:10592000C37053880371B2F904301B12437193881A +:105930008371B2F918301B12C371138B0372B2F961 +:105940001A301B124372538B8372B2F91C301B1234 +:10595000C372928B02730846FFF7E6FE002800D060 +:105960000124204610BD000010B5DFF89445204604 +:10597000FFF748FE204600F0F6F9002802D1204645 +:10598000FFF77CFE2046FFF798FE2046FFF7CCFE8F +:10599000BDE8104085E7000080B5DFF8640500F041 +:1059A000EFF9BDE801407CE733B585B0144602A8A5 +:1059B00000210A4606C000A806C0BDF81400ADF8D4 +:1059C000080002A8BDF816104180BDF818108180AB +:1059D000FDEEC01A11EE900AADF8000000A8F0EE3E +:1059E000601AFDEEE11A11EE901A4180BDEEC10A77 +:1059F00010EE101A8180DFF8085500AA02A9284687 +:105A000000F050F895F9F402207005F53D709FED17 +:105A1000580AB0F9101000EE901AF8EEE00A60EEA5 +:105A2000800AC4ED030AB0F91A1000EE901AF8EEDD +:105A3000E00A20EE800A84ED020AB0F9200000EEB0 +:105A4000100AB8EEC00ADFED4B0A20EE200A84ED02 +:105A5000010A9FED490AB5F9EE0000EE900AF8EE52 +:105A6000E00A60EE800AC4ED040A05F2EE00B0F927 +:105A7000021000EE901AF8EEE00A60EE800AC4ED23 +:105A8000050AB0F9040000EE900AF8EEE00A20EEF4 +:105A9000800A84ED060A284600F072F9012007B05A +:105AA00030BD000030B589B00446DFF8585428787E +:105AB000ADF8040001A80B784380B1F90030C3F3BE +:105AC000072383808B78ADF80A30B1F90230C3F335 +:105AD000072303810879ADF80E00B1F90400C0F383 +:105AE0000720ADF810000020ADF812006878ADF87E +:105AF000140006A9104600F06DF99FEDB40A06A83F +:105B0000D0ED010A60EE800AFDEEE00A10EE901A78 +:105B1000A4F8301304F54C71DDED060A9FEDAC1AC4 +:105B200060EE810AFDEEE00A10EE902A4A80D0ED88 +:105B3000020A20EE800ABDEEC00A10EE100A88802C +:105B40002878012810D10020C046082100910123A7 +:105B50000246214601A800F011F8002804D00128CF +:105B600002D12046FFF740FE012009B030BD000001 +:105B70000000803C000080BC8FC2753DF0B593B042 +:105B800004460D4616461F460020ADF848000E900C +:105B90000F90ADF84000119042F2B7600DF14A014C +:105BA0000D910DF146010C910EA90B910DF13A01E9 +:105BB0000A9112A9099111A908910FA9079105F15C +:105BC000EC01069105F56871059105F59361049165 +:105BD00005F57671039105F12C01029102210191E5 +:105BE000D5F8D413009105F1F403B5F9FC22214650 +:105BF00004F054FFD5F8A003BDF83C100818A5F830 +:105C0000FA00D5F8A403BDF83E100818A5F8FC006A +:105C1000D5F8A803BDF840100818A5F8FE00B5F99E +:105C2000F602B04206D01898A5F8F802A5F8F66278 +:105C3000012096E0BDF93A00012801D1022090E050 +:105C4000B5F9F802012803DB401EA5F8F8027CE054 +:105C500005F12C0105F1240005F0B7FDBDF9381060 +:105C600001290BD101230022294605F5807005F09A +:105C7000C0FA002085F8F402042072E001280BD15C +:105C800001230022294605F5807005F0B2FA0020B4 +:105C900085F8F402202064E0B5F85A03401EA5F808 +:105CA0005A0300B2012850DA05F53D7005900495BD +:105CB0000120039000200290B5F9EC00019005F15D +:105CC0002C00009005F5807305F27E3205F26D31EF +:105CD00005F5577005F020F910F5004F01D180202F +:105CE0003FE001282FDB0624B5F9F60210FB045033 +:105CF000801D29462246ECF7F5FEB5F90000E86064 +:105D0000B5F902002861B5F904006861B5F9F60239 +:105D1000401995F8F41280F8F512B5F9F60210FB67 +:105D200004501E3005F124012246ECF7DBFEB5F9E4 +:105D3000F60200EB400105EB810000F56B7005F504 +:105D400068711CC91CC0A5F85A7305F1EE000090DB +:105D500040F2413305F1180229460FA805F04CFD29 +:105D6000002013B0F0BD002180F8F512C18000F2D0 +:105D7000060041808180018341838183084670470A +:105D800070B4B0F9061090F8F522664B1C78944276 +:105D900011D1B3F904408C420DD100F20604B3F9DD +:105DA0000650B4F90260B54205D1B3F90850B4F910 +:105DB0000440A54207D01A70998000F2060460885A +:105DC000D880A0881881002070BC7047000034C4BF +:105DD0000000344470B52DED068B0C46002109E01F +:105DE00030F91120B2F5006F03DDA2F5805220F8E2 +:105DF0001120491C0329F3DB03210DE00622424B4D +:105E000002FB013202EB450333F8063C22F8153061 +:105E10006D1C032DF2DB491E012901DB0025F8E78B +:105E20000021394B04E030F8112023F81120491CDF +:105E30000329F8DBDFED358A9FED340A9FED338AC5 +:105E4000002047F6FF7517E0C95E00EE901AF8EEE5 +:105E5000E00A70EEA88AB2F9021000EE901AF8EE8D +:105E6000E00A30EE800AB2F9041000EE901AF8EE63 +:105E7000E00A30EE888A401C04280EDA062202FB73 +:105E800000F1CA18CE5EAE42DED1B2F90260AE4277 +:105E9000DAD1B2F90460AE42D6D100EE900AB8EE83 +:105EA000E0AA9FED1B9B80EE0A0A10EE100AF2F7A3 +:105EB000D1FA53EC192BECF731FFF2F7F3FA20602B +:105EC00088EE8A0A10EE100AF2F7C4FA124A164B4C +:105ED000ECF724FFF2F7E6FA606088EE0A0A10EEAB +:105EE000100AF2F7B7FA53EC192BECF717FFF2F799 +:105EF000D9FAA060BDEC068B70BD00008C28012093 +:105F000060D30020D426012070250120000000006D +:105F100051FA42C879FF4F3F51FA42C80840002069 +:105F20005F580108E026012079FF4FBF41534148E7 +:105F3000494B4153454900005345433039393131CC +:105F40004E5346535400000038B50446F4F780FC25 +:105F500090F98450002C02D14FF0FF3032BD09225D +:105F600000212046ECF77AF96D1E062D36D8DFE8C1 +:105F700005F0040C131A21282F00012060704FF047 +:105F8000FF30E070012020722CE04FF0FF302070D5 +:105F900020710120207225E04FF0FF306070012059 +:105FA000E07020721EE04FF0FF302070012121715F +:105FB000207217E001206070E0704FF0FF30207217 +:105FC00010E0012020704FF0FF302071207209E0B6 +:105FD0004FF0FF306070E070207203E0012020700D +:105FE00020712072002032BD0FB42DE9FE4300A8BD +:105FF0000FF248411CC91CC000A805F085FD0646EB +:106000009DF82970DFF8C80307700069D0F85405BF +:10601000C11705220023F3F769FA0522A2FB004508 +:1060200002FB0155384600F040F8DFF8A803A0FB5A +:10603000048900FB05994046494605F0BFFC4046EF +:10604000494605F0CCFC4FF47A01304605F05EFD80 +:106050004FF48031304605F05BFD05F041FD05F061 +:1060600044FD05F047FD05F04AFD00A8FFF76CFF71 +:1060700000A806F026F9002804D001460FF2C83027 +:10608000ECF790F9214689B2012006F061F9012070 +:10609000BDE8FE035DF814FB80B500F026F8C821CA +:1060A000002006F055F9012002BD80B5C00710D5CB +:1060B000222200210846F1F7D1FF222201210020EF +:1060C000F1F7CCFF222202210020BDE80840F1F7C1 +:1060D000C5BF222200210846F1F7C0FF222201217C +:1060E0000020BDE80840F1F7B9BF80B522220021A9 +:1060F0000120F1F7B3FF222201210846F1F7AEFF9C +:10610000222202210120BDE80840F1F7A7BF0000CC +:106110002DE9F047A4B000200146CDE90A0120A8EE +:106120000A460B460EC01CA81021EEF721FC18A849 +:106130001021EEF71DFC13A81421EEF719FC08A896 +:1061400000210A4606C006A806C00FA81021EEF7D7 +:106150000FFC00200590ADF80E008DF80C000646EF +:106160000CA831460A460B460EC008468DF80D00B5 +:10617000F4F76EFB0490F6F787FC0746DFF850A2B1 +:10618000DAF81000D0F85405C11705223346F3F7AA +:10619000ADF90522A2FB004502FB015503A80190C1 +:1061A0000DF10E00009005AB0FAA06A908A805F096 +:1061B00090FF002842D1DAE90201864AA2FB048955 +:1061C00002FB059910EB080041EB0901CAE9020145 +:1061D0009AF80020D20727D54FF0000816E007EB09 +:1061E0004802B2F9062000EE102AB8EEC00ADFED30 +:1061F000760A20EE200ADFED750A20EE200A20AA9A +:1062000002EB880282ED000A08F10108B8F1030FE1 +:10621000E5DB7A690292CDE900010FAB20AA06A95D +:1062200008A805F0E7FB08E000220292CDE9000192 +:106230000FAB06A908A805F0DDFB761CF6B23046C8 +:106240009DF80C10002901D00528A7DB042803DBEA +:106250000FF20020ECF7A6F89AF80000C00743D52B +:106260000AA91CA805F02BFC4FF0000811E01CA89F +:1062700050F82800F2F7EEF802460B460020564987 +:10628000ECF74CFDEDF774F818A941F8280008F177 +:106290000108B8F1040FEADB102218A913A8EEF7E1 +:1062A00029FC78698DF85C004C48006C00F10C0406 +:1062B000627D13A9E368C0681818EEF71BFC012083 +:1062C000A0740AAA0DF10D010CA805F004FC0C2223 +:1062D0000CA904983C30EEF70DFC97ED050AB8EEDA +:1062E000C00A049880ED120A9AF80000800730D5A1 +:1062F0000AA91CA805F0E9FB4FF0000811E01CA852 +:1063000050F82800F2F7A6F802460B460020324962 +:10631000ECF704FDEDF72CF818A941F8280008F176 +:106320000108B8F1040FEADB102218A913A8EEF750 +:10633000E1FB00208DF85C002848C06B00F10C04E4 +:10634000627D13A9E368C0681818EEF7D3FB01203B +:10635000A074012024B0BDE8F08780B5F1F77CFE81 +:106360001B4908611E49C0F8601500F260501D49C4 +:1063700041601D4981600FF21501C1600FF2850176 +:106380000161012005F0A1FA012002BD1048006959 +:1063900090F85105002801D10020704705E080B534 +:1063A000002000F006F8012002BD104890F900001E +:1063B00070470E49087070470549087001460FF292 +:1063C0009C00EBF7EFBF00008FC2753D00008047D7 +:1063D0003826012040420F0080842E4108400020D2 +:1063E000E95F010899600108116101080229012093 +:1063F000222202210020F1F731BE222202210120B7 +:10640000F1F72CBE18B440F221120B7812FB0303F3 +:1064100001241C700B7812FB03035C700B7812FBD9 +:10642000030322249C700B7812FB03000022C2702D +:106430000878401C087011BCB1E7000001000000A2 +:106440000100000001000000444D5020494628256D +:1064500064290000444D50205246460052562066A2 +:106460006C6167202564000006F09EBD80B5F4F7DE +:10647000EFF9D0F88000F9F7C7F80348007802BDBB +:1064800001490870704700001529012030B585B01A +:1064900004000D00029401940C4880680390EEF70C +:1064A00012FB2068009000A820600098002802D00D +:1064B000009800A941600548806800A981600348F0 +:1064C00080680574EFF72FFA05B030BD70790020B1 +:1064D00038B5027EC3684469E3180469A34201D356 +:1064E00004691B1B534384680D781D55491C5B1CB4 +:1064F000521E002AF7D1C168491CC160012902D18E +:1065000003F006FF0DE025484078F021084202D054 +:106510009920EEF76BFA21484078002801D1EEF778 +:10652000CCFA31BD10B50400207E62694243A368F5 +:10653000D35C0B70521C491C401E0028F7D16069C7 +:10654000401C60612169884201D300206061E068DD +:10655000411EE1602169884211D110484078F02144 +:10656000084202D09920EEF741FA0C484078002802 +:1065700001D1EEF7A2FA200003F0CAFE0DE00748B1 +:106580004078F021084202D09920EEF72FFA034814 +:106590004078002801D1EEF790FA10BD7079002004 +:1065A00000BF10B44348002101800846424C0DE072 +:1065B00001EB810100EB80031B19C91800230B714B +:1065C000521C52B211460129F2DB401C142801DA98 +:1065D0000022F6E710BC704700EB80003649405EB1 +:1065E000704700EB800034494018B0F90200704752 +:1065F00010B54FF0FF3401460C2903D01C2903D1FC +:10660000002405E0012403E00FF2B400EBF7CAFE1A +:10661000204610BD38B504460125FFF7E9FF2046A6 +:106620000C2804D01C2805D100F03DF808E0FFF745 +:10663000B8FF05E021460FF29800EBF7B3FE002506 +:10664000284632BD10B54FF0FF34082801D1002490 +:1066500004E001460FF28800EBF7A4FE204610BDCF +:10666000F3B581B0134C25882E46701C152801DB2C +:106670000020FEBD00270DE007EB870106EB86003A +:106680000D4A8018081801AA89180522ECF72AFA81 +:106690007F1C7FB2012FEFDB681C20800120FEBD34 +:1066A000044800887047054800214180012101709D +:1066B00008467047F0280120E4190120EC780020FA +:1066C0004558205044524D4D204331202564000050 +:1066D0004558205044524D4D20433320256400003E +:1066E0004558205044524D4D20433220256400002F +:1066F000D2B2203A22BF00FA02F100207047524283 +:10670000D041D2F1200291404140D04090404140E0 +:10671000704700000FB480B506F050FCD248052148 +:10672000417600210176818302A91822ECF7EAF96B +:10673000092200210846F1F791FC022801D102202C +:1067400000E0012002BC5DF814FB48E110B5C64C26 +:1067500094F9190005280AD100F0E3F8002822D0A6 +:106760000420607606F02AFCBDE81040F8E004281A +:1067700019D100F0B7F8002808D0032020760520B2 +:10678000607606F01BFCBDE8104028E100F051F9EE +:10679000002808D0022020760520607606F00EFC46 +:1067A000BDE810401BE1012010BD80B5F1F754FC9D +:1067B000AD490862AD49C0F8781100F5BC70AC492C +:1067C0004160AC4981600FF21101C1600FF2950187 +:1067D0000161012002BD00000020A3490246CA76E3 +:1067E0000A6A92F86921002A0FD091F91820002A2C +:1067F00002D00220C876012091F91C20012A04D180 +:10680000C87E40F00400C8760120704796480021F9 +:106810000176C17601770120704710B58CB004462F +:1068200000A808F0B3FA0198A04204D3001BC0B23C +:1068300000EE100A04E08038001BC0B200EE100A1F +:10684000B8EE400ADDED070A20EE200A10EE100A2D +:10685000F1F700FE41EC100B0CB010BD8248012195 +:106860000177704778B4804A92F91B309C0717D59E +:1068700040F221140D7814FB050501262E700D78C9 +:1068800014FB05056E700D7814FB05050926AE7026 +:106890000D7814FB0504157EE5700C78641C0C70F3 +:1068A0005B071DD540F221140B7814FB030301256F +:1068B0001D700B7814FB030303255D700B7814FB2C +:1068C000030309259D700B7814FB03030125DD707C +:1068D0000B7814FB0300527E02710878401C08708C +:1068E00071BC93E730B58DB0002420468DF80000D0 +:1068F00001A8F1F712FC4FF47A705B4D00ABE98808 +:1069000000FB01F2A98841436D88684301AD95EC15 +:10691000030A06F095FB022800D1012420460DB0A1 +:1069200030BD30B58DB0002420468DF8000001A8A0 +:10693000F1F7F3FB4FF47A704B4D00ABE98800FBA5 +:1069400001F2A98841436D88684301AD95EC030AC3 +:1069500006F076FB012800D1012420460DB030BDA1 +:1069600030B59BB001240020ADF8220001900A2030 +:106970008DF8080000208DF809008DF80A003A4DC6 +:1069800095F91D00002827D1AA208DF826003C206B +:106990008DF8270020468DF8280000208DF8000093 +:1069A000032001900DF1090009A91822ECF79AF8CB +:1069B0000A208DF808000020ADF8220000A8F1F7A9 +:1069C00021FC002801D1022406E00FA808F0DEF91E +:1069D0001098A8762046687720461BB030BD30B5A9 +:1069E00089B00124204D95F91D0001281ED10020F9 +:1069F000ADF8220001900A208DF8080000208DF8E3 +:106A000009008DF80A0020468DF80000032001904F +:106A10000A208DF808000020ADF8220000A8F1F748 +:106A2000F1FB002800D1032400206877204609B03C +:106A300030BD38B52DED028B00240B4DA87EFFF73D +:106A4000ECFEB0EE408AF0EE608A287AECF76AFA43 +:106A500002460B4651EC180BFDF732F900D8012421 +:106A60002046BDEC028B32BD9C79002015670108E1 +:106A70004B6701084D67010870B5FCF79DFD0446A2 +:106A8000FBF757FE0546D74EFCF776FD002801D0F0 +:106A9000012018E096F90000A04205D20FF2C430A0 +:106AA000EBF780FC01200EE0EDB2002D0AD0FCF7E0 +:106AB0008EFDFCF781FD04460FF2B430EBF772FC5B +:106AC000012000E00020716891F88914002900D1AC +:106AD0000020347070BD0FB410B58AB0C14C0020D6 +:106AE00020700FF29830EBF75DFC606890F8881426 +:106AF000002944D190F88904002840D100208DF865 +:106B000000001B2001900DF109000CA91822EBF7E1 +:106B1000E9FF0A208DF8080000A8F1F773FB0028B0 +:106B200005D10FF26430EBF73DFC022028E0022093 +:106B30008DF832004FF49660ADF8350000208DF8E6 +:106B400033008DF834008DF800001A2001900DF10B +:106B500009000CA91822EBF7C5FF0A208DF80800E0 +:106B600000A8F1F74FFB002805D10FF22C30EBF70E +:106B700019FC022004E04FF49660FCF726FD01208A +:106B80000AB010BC5DF814FB00B589B00FF21830E4 +:106B9000EBF708FC01208DF800001B2001900A2073 +:106BA0008DF8080000A8F1F72DFB002801D1032083 +:106BB00014E001208DF800001A2001900A208DF8C1 +:106BC000080002208DF80B000020039000A8F1F7C8 +:106BD00019FB002801D1032000E0012009B000BD0D +:106BE0002DE9F0472DED028B92B004460D46FCF7DF +:106BF000C3FC40F22116297816FB014101220A70DC +:106C0000297816FB0141002840F09E80104648700C +:106C1000287816FB00401D218170287816FB004063 +:106C200000214171FCF7D5FC002805D0FCF7C4FC1D +:106C300081465FFA89F901E04FF00009287816FBD8 +:106C4000004080F807904FF0000868E0414600A837 +:106C5000FCF7B6FC1B2010FB08F7287816FB004059 +:106C600038189DF829104FF461620DF129035B7803 +:106C7000C3EB031C4FEA8C0312FB01310DF1290217 +:106C8000927851FA82F14FF47A72BDF92C3002FBFE +:106C90000131C0F81B109FED518B287816FB004086 +:106CA00007EB000ADDE9002351EC180BECF736F88E +:106CB000ECF774FBCAF80B00287816FB004007EBD2 +:106CC000000ADDE9022351EC180BECF727F8ECF78A +:106CD00065FBCAF80F00287816FB004007EB000A96 +:106CE00002A8D0E9022300204349ECF717F8ECF79B +:106CF00055FBCAF81300287816FB004038180BA97A +:106D00004969C0F81F10287816FB004038180BA9F5 +:106D1000498BA0F8191008F101085FFA88F8C845F6 +:106D200094DBFCF74BFC287816FB0047FBF722FDB1 +:106D3000A7F81B01287816FB0044FBF70DFDC4F8EB +:106D40001D01FBF703FD12E005204870287816FBB3 +:106D500000401D218170287816FB004011464171CA +:106D6000287816FB00400F218171FCF72CFC287855 +:106D7000401C287012B0BDEC028BBDE8F08710B546 +:106D800084B000A8FBF759FE1C4C204600A90B223A +:106D9000EBF7A8FE61782078FCF720FC012004B016 +:106DA00010BD80B50FF20810EBF7FCFA0FF20C10D3 +:106DB000EBF7F8FAF1F750F90A4948600A49C0F8C8 +:106DC000981400F2984009494160094981600949D5 +:106DD000C1600B490161012002BD000000000000FC +:106DE00080842E4130280120D76A0108896B010870 +:106DF0007F6D0108796A010800408F403427012027 +:106E0000E16B010810B5044621460FF2BC00EBF718 +:106E1000C9FA2046BDE81040FCF7A6BB10B50446F1 +:106E200021460FF2B000EBF7BDFA2046BDE8104056 +:106E3000FCF79CBB10B5044621460FF2A400EBF70B +:106E4000B1FA2046BDE81040FCF794BB10B50446EB +:106E500021460FF29C00EBF7A5FA2046BDE8104052 +:106E6000FCF786BB4C5420436D644C545300000027 +:106E70004C5420436D644154440000004C542D5345 +:106E800031343031313600004C54204F70656E2063 +:106E90006661696C000000004C54204154204F7022 +:106EA000656E206661696C004C542053544F50004D +:106EB0004C5420496E694C54530000004C542049F6 +:106EC00031343031313600004C54205365745754FE +:106ED000202564004C5420536574535420256400CD +:106EE0004C54205365745341522025640000000027 +:106EF0004C542053657453522025640080B50FF222 +:106F0000E810EBF74FFA73480021418001BD0FB440 +:106F100070B5704C002020709DF81250BDF81360C1 +:106F2000324629460FF2CC10EBF73CFA262200211C +:106F30000846F1F793F8022805D10FF2D410EBF7C9 +:106F400031FA02200FE0606890F8F015002909D1AD +:106F500090F8F105002805D1FFF7D0FF314628460B +:106F600007F0E4FF012070BC5DF814FB80B50FF260 +:106F7000B010EBF717FA57480021017008F00CF831 +:106F8000012002BD10B58EB000A800210A460B46B4 +:106F90000EC0F1F7C2F80398009000A80499416070 +:106FA000059981604B4C94F9001089B207F0D0FF2D +:106FB00000212170042804D006280CD0072814D002 +:106FC0001CE00FF26810EBF7EDF90420608001205F +:106FD00000F044F812E00FF25C10EBF7E3F9062042 +:106FE0006080012000F03AF808E00FF25410EBF74F +:106FF000D9F907206080012000F030F801200EB0A0 +:1070000010BD80B50FF24810EBF7CCF9F1F724F87A +:107010003049486000224A802F49C0F8001600F22B +:1070200000602E4941602E4981600FF21101C1605C +:107030000FF241010161012002BD000025484068B6 +:1070400090F8F015002905D190F8F105002801D13C +:1070500000207047234890F90000704721490870CC +:10706000704780B51B48002141800846FFF7F6FFB6 +:10707000012002BD70B504460D46164E71880FF210 +:10708000D800EBF78FF940F22110297810FB01416D +:1070900001220A70297810FB01414A70297810FBFF +:1070A000014126228A70297810FB01407188A0F8DE +:1070B00003102878401C2870BDE87040D1E710B557 +:1070C000044621460FF2A000EBF76CF9014804706A +:1070D00010BD0000182801200F6F01086D6F010816 +:1070E000856F0108F728012023415320494E495458 +:1070F00000000000234153205346442053545220A3 +:107100003A2025642C204455203A202564000000B4 +:10711000234153204641494C204143430000000095 +:107120002341532053544F5000000000234153206B +:10713000445400002341532041535F4E4D530000FF +:107140002341532041535F43414E43454C000000CF +:10715000234153204D4900002341532041504D53BA +:1071600047203A20256400002341532055535241C3 +:107170004354203A202564000FB400B589B0DFF8ED +:10718000980701210177406A90F8601400293AD1EC +:1071900090F86104002836D100208DF8000003200B +:1071A00001900DF109000AA91822EBF79BFC0A20B7 +:1071B0008DF8080000A8F1F725F8002821D000205C +:1071C0008DF82A00ADF82D008DF82B008DF82C00DD +:1071D0008DF800001A2001900DF109000AA918226B +:1071E000EBF780FC0A208DF8080000A8F1F70AF8F8 +:1071F000002806D01C2200210846F0F72FFF0228A5 +:1072000001D1022000E0012009B05DF814FB00B5B7 +:1072100089B01C2200210120F0F720FF022801D1B3 +:10722000022022E001208DF80000032001900A20B6 +:107230008DF8080000A8F0F7E5FF002801D1032031 +:1072400013E001208DF800001A2001900A208DF82B +:10725000080000208DF80B00039000A8F0F7D2FF83 +:10726000002801D1032000E0012009B000BD70B565 +:1072700086B0DFF8A846206800280DD1DFF8A066A8 +:107280003068002808D1204600F04BFE30462146E9 +:107290005822EBF737FC02E0204600F042FEDFF810 +:1072A000846606F10C000ECE0EC00C3E02A8FBF761 +:1072B000C4FB304602A90B22EBF714FCDFF858564A +:1072C000707868763178307B814204D029760FF26D +:1072D0006C60EBF767F800A8EBF754FB9DF8000033 +:1072E00028739DF8010068739DF80200A873BDF82B +:1072F0000300A5F80F00DFF82866E86C2168326803 +:10730000891A10FA81F0E86400F02AF93046214623 +:107310005822EBF7F7FB012006B070BD10B5DFF87F +:10732000F845F0F799FE6062002060750120A075B5 +:107330000320E0754FF4FA70A062DFF8EC05E0621C +:107340004EF6602020630FF20C60EBF72BF8002064 +:107350002077E06320646064A0642083E076A0630B +:1073600058220146DFF8B805EAF778FF58220021D5 +:10737000DFF8A805EAF772FFEAF793FF2062002022 +:10738000A0760120E0770020A077606ADFF89C15E6 +:10739000C0F8701400F27040DFF894154160DFF817 +:1073A000941581600FF20D01C1600FF2410101617E +:1073B000012010BD80B5DFF86005416A91F86114C5 +:1073C000002901D1002002BD90F91400012801D14B +:1073D000012001E000F09FF840B202BDDFF838055F +:1073E00000214163017501207047000070B5DFF88E +:1073F000283593F91420012A2BD15A6B002A20D06A +:1074000040F221140D7814FB050501262E700D782D +:1074100014FB05056E700D7814FB05051C26AE7077 +:107420000D7814FB05050126EE700D7814FB05059B +:10743000AA800D7814FB0500C0F806300878401CBF +:10744000087011460FF22450EAF7ACFFBDE8704017 +:10745000C4E7DA7F012A23D140F221140A7814FB11 +:107460000202012515700A7814FB020255700A7891 +:1074700014FB02021C2595700A7814FB02020225F7 +:10748000D5705A7F0B7814FB030082720878401C79 +:10749000087011460FF2EC40BDE87040EAF782BF79 +:1074A00070BD0146891E012903D9891E012905D90C +:1074B00008E0DFF8641401224A7503E0DFF858148D +:1074C00000224A7501460FF2D440EAF76BBFDFF89D +:1074D000481400EB80028A6201460FF2D840EAF7B6 +:1074E00061BF38B50446DFF8305441F2883010FBF4 +:1074F00004F0E862EBF716FD0022DFF83C34EBF70E +:107500000DFCEBF74BFF286321460FF2BC40BDE8B2 +:107510003440EAF747BF38B50024DFF8FC53686A07 +:1075200090F83814002903D190F83904002813D0BA +:107530000120E877FCF754F86877A97F002900D18B +:10754000A877A97F884209D00146012901D00229E4 +:1075500000D10124A87701E02046E877204632BD1B +:10756000F0B583B0002500A829460A4606C0DFF81A +:10757000A843E06B10F1100F01D21430E063E07EFD +:10758000002800F0C580022801D06BD30BE1217EDA +:10759000042934D1607D002813D1606C14306064FC +:1075A000E26A9042C0F0FF80E26B206B8242C0F042 +:1075B000FA800125002060640FF22040EAF7F2FE15 +:1075C000F1E010466064206A827AA37E1A430FD1EC +:1075D000E26B206B824204D301250FF21840EAF7D8 +:1075E000E1FE0FF22840EAF7DDFE0120A076DAE0A6 +:1075F000807A012840F0D7802846A076D3E002297F +:1076000001D0032915D1206C1430206442F211728C +:107610009042C0F0C880E26B206B904280F0C38043 +:1076200001250020206403460FF2F430EAF7BAFE89 +:10763000B9E0012940F0B780A06C00F11403A36405 +:107640004EF661208342C0F0AE80E26B206B904228 +:1076500080F0A98001250020E0760FF2E030EAF703 +:10766000A1FEA0E0217E022901D003290FD1E36C05 +:10767000A06A8342C0F09780E26B206B8242C0F028 +:10768000928001250FF2D030EAF78CFE8BE00429BE +:1076900028D1606C14306064627E002A13D142F2FB +:1076A00011729042C0F07F80E26B206B90427AD2E0 +:1076B00001250220E0760020606403460FF2B4301A +:1076C000EAF770FE6FE0E26B206B90426BD201250F +:1076D0000220E0760020606403460FF2B430EAF73F +:1076E00061FE60E001295ED1A06C00F11403A36487 +:1076F0004EF66120834256D3E26B206B904252D209 +:1077000001250020E0760FF2A430EAF74BFE4AE0B4 +:10771000217E022916D1206C14302064626441F26B +:10772000893290423FD3206BE26B90423BD20120E2 +:10773000E07628462064012502460FF28C30EAF7F5 +:1077400031FE30E0042916D1606C1430606422648C +:1077500041F28932904226D3206BE26B904222D2D2 +:107760000220E07628466064012502460FF2703060 +:10777000EAF718FE17E0032915D1206C14302064B5 +:10778000626441F2893290420DD3206BE26B9042E9 +:1077900009D20120E07628462064012502460FF236 +:1077A0005830EAF7FFFD207F012809D1002020771B +:1077B00001252846207601460FF25430EAF7F2FD03 +:1077C000012D40F0A780257E042D36D1A06B461CEC +:1077D000A663606B002809D1207B6070607BA0707D +:1077E000A07BE070002020710520606304208DF8EC +:1077F000000000A8042141708170617D012902D13F +:107800000121C17001E00021C170042101712670C5 +:10781000676B052200A93819EDF76CF9781D6063D4 +:10782000002E6DD0012020750020A063E26B294658 +:107830000FF2F020EAF7B6FD62E0022D01D0032D31 +:107840002ED1A06B461CA663606B002809D1207B5B +:107850006070607BA070A07BE0700020207105202C +:10786000606302208DF8000000A802214170817041 +:10787000C17001712670676B052200A93819EDF7F8 +:1078800039F9781D6063002E3AD001202075002060 +:10789000A063E26B29460FF2A820EAF783FD2FE0F0 +:1078A000012D2DD1A06B461CA663606B002809D169 +:1078B000207B6070607BA070A07BE0700020207156 +:1078C0000520606301208DF8000000A801214170AF +:1078D0008170C17001712670676B052200A938198B +:1078E000EDF708F9781D6063002E09D0012020759E +:1078F0000020A063E26B29460FF25C20EAF752FDFC +:107900000020E06320646064A064E0640FF26420FF +:10791000EAF748FDF7BD000040200120441E012089 +:10792000EC1D01208825012020BF0200797101088B +:107930000F7201086F7201080000E03F5B41504484 +:1079400052204C545D205472616E73204D6F6465FB +:10795000202564005B41504452204C545D20494E28 +:10796000495420303231372D330000005B41504400 +:1079700052204C545D2042756666657253697A6583 +:107980003A2564005B41504452204C545D205374AE +:107990006179496E666F3A25640000005B4150448E +:1079A00052204C545D20677073205374612025640D +:1079B0000000000041504452205365745F535755F6 +:1079C0004E2025640000000041504452205365744D +:1079D0005F54575553202564000000005B4150441C +:1079E00052204C545D205245512D563120256420A3 +:1079F000256400005B41504452204C545D205245A8 +:107A0000512D563220256420256400005B415044EE +:107A100052204C545D2041505F4E4F54534C500007 +:107A20005B41504452204C545D205245512D5633F9 +:107A30002025642025642025640000005B4150441B +:107A400052204C545D205245512D5634202564203F +:107A500025642025640000005B41504452204C54B2 +:107A60005D205245512D5731202564202564202565 +:107A7000640000005B41504452204C545D2052454C +:107A8000512D5732202564202564202564000000F4 +:107A90005B41504452204C545D205245512D573388 +:107AA0002025642025642025640000005B415044AB +:107AB00052204C545D205245512D573420256420CE +:107AC00025642025640000005B41504452204C5442 +:107AD0005D205245512D533120256420256400003E +:107AE0005B41504452204C545D205245512D53323D +:107AF00020256420256400005B41504452204C54F2 +:107B00005D205245512D533320256420256400000B +:107B10005B41504452204C545D2041504453542CFE +:107B2000202564005B41504452204C545D20566532 +:107B30006869636C653A20256420256400000000B4 +:107B40005B41504452204C545D2057616C6B3A208D +:107B500025642025640000005B41504452204C54B1 +:107B60005D2053746174696F6E6172793A20256487 +:107B7000202564005B41504452204C545D205265E6 +:107B800073657400DFF8E40B417A00EB810282ED4B +:107B9000090ADFF8DC2B02EB8103F0EE601AC3ED7B +:107BA000001A02EB810282ED101A827A102A01DAA1 +:107BB000521C8272491C4172C9B2102901D10021A4 +:107BC000417270472DE9F8432DED028B0024DFF858 +:107BD0009C5BA87A022801DA20466AE02646DFF894 +:107BE000909B01E00024761CA87A86425BDA687AD2 +:107BF000002803D10F274FF00E0805E0471EB7F10C +:107C0000010801D508F1100805EB870090ED090A7D +:107C100005EB8800D0ED090A30EE600A10EE100A7C +:107C2000F0F718FC21F00041F0F73CFC08EE100AD8 +:107C300009EB870090ED000A09EB8800D0ED000AFF +:107C400030EE600A10EE100AF0F704FC21F000415B +:107C5000F0F728FC08EE900A09EB870090ED100A77 +:107C600009EB8800D0ED100A30EE600A10EE100A21 +:107C7000F0F7F0FB21F00041F0F714FC00EE100AE1 +:107C8000DFEDB00AB4EE608AF1EE10FA09DAF4EE34 +:107C9000608AF1EE10FA04DAB4EE600AF1EE10FA3E +:107CA000A0DB641C9FE7E4B2042C01DB012000E0B0 +:107CB0000020BDEC028BBDE8F2832DE9F8432DEDE9 +:107CC000068B88B0B0EE408AF0EE608AB0EE419A42 +:107CD000F0EE619A0646DFF89C7A87ED000AB0EE76 +:107CE00068AA87ED01AAF0EE49AAC7ED02AA4FF0F3 +:107CF0000A08DFF8845AB5F90E0010FB08F0B5F950 +:107D00001010A0EB0109314689B2384608F0BAF9E3 +:107D1000DFF8584A201D07F0BAFC207910FB08F064 +:107D2000A17900EB01081FFA88F8B8F12A0F12D1E7 +:107D30000FFA89F9B9F1000F0DD5606E002807D14F +:107D400007F0C3F8012060660FF69820EAF72AFBD7 +:107D50000120A06623E0606E012807D107F0C1F87A +:107D6000002060660FF68820EAF71CFBA06EB8F1D1 +:107D7000280F0CDB002804D10C210FF68020EAF735 +:107D800011FB0120A0660C2007F08CF807E0012809 +:107D900003D10FF67C20EAF705FB0020A06694EDE6 +:107DA000040AF0EE480AB4EE600AF1EE10FA1ED1B1 +:107DB00094ED050AB4EE4A0AF1EE10FA17D194EDEB +:107DC000060AB4EE6A0AF1EE10FA10D1E06E401C19 +:107DD000E066152815D32069F0F73CFB02460B46F8 +:107DE0000FF63820EAF7DEFA0020E06609E0B0EE90 +:107DF000480A84ED040A84ED05AAC4ED06AA002011 +:107E0000E06697EC030AFFF7BDFE207A02283DD119 +:107E1000304680B2B0EE690A08F028FF314689B2D8 +:107E2000384606F01BFB284606F0B0FF28680128FC +:107E30000FD105F02BFC284606F0A8FF2C2229467E +:107E4000DFF84809ECF756FE0FF6DC10EAF7AAFA5D +:107E500028E0294684B068462C22EAF753FE0FBC7E +:107E600000F066F900F0E6FA00281BD0A889002887 +:107E700018D10FF6C010EAF795FA0120207206F02B +:107E80009BFF01202080022060800BE0012809D1A7 +:107E9000FFF798FE002805D00FF6A010EAF782FA47 +:107EA0000220207200F006F8002008B0BDEC068B1E +:107EB000BDE8F283DFF8B4080188002910D14188B9 +:107EC00000290DD1417B491C4173C9B2072923DB2D +:107ED00001210180016A098C4180002141737047B2 +:107EE000016A01F12002528D002A09D0032A02D131 +:107EF0000222028001E003220280098C4180704747 +:107F00000279042A04D104210180817941807047DB +:107F100001220280098C41807047DFF85008007A06 +:107F20007047002805D0DFF84418096A5822EAF79C +:107F3000E9BD7047002803D0DFF8301809680160F8 +:107F4000704700000100803F10B5002814D1DFF811 +:107F50002C4800EE101AB8EE400A84ED010A2046C3 +:107F600006F040FF6068F0F775FA02460B460FF620 +:107F7000D400EAF717FA24E0012814D1DFF8FC470F +:107F800000EE101AB8EE400A84ED000A204606F012 +:107F900029FF2068F0F75EFA02460B460FF6B400A0 +:107FA000EAF700FA0DE002280BD1DFF8D047218173 +:107FB000204606F017FFB4F908100FF6A800EAF7FC +:107FC000F1F90FF6B000EAF7EDF942F2247001463C +:107FD0000FF6B000EAF7E6F940F2D670DFF88C173A +:107FE000C88101460FF6AC00BDE81040EAF7DAB9E7 +:107FF0002DE9F0470746884691460FF67800EAF7E4 +:10800000D1F942F2247001460FF67800EAF7CAF976 +:1080100040F2D6700146DFF85447E1810FF6740054 +:10802000EAF7C0F9DFF85857582200212846EAF746 +:1080300015F9DFF85067582200213046EAF70EF9AB +:1080400058220021DFF84007EAF708F92662DFF836 +:108050002CA7582200210AF10C00EAF7FFF80C22A5 +:1080600000215046EAF7FAF82C220021DFF8080731 +:10807000EAF7F4F82C220021DFF81007EAF7EEF80F +:1080800000EE107AB8EE400A8AED010A00EE108A7E +:10809000B8EE400A8AED000AAAF808904B4642461C +:1080A00039460FF60400EAF77DF905F00FFA50465D +:1080B00006F098FE05F1200042F21071C18501869C +:1080C00000218162022028842C2229463046ECF7C8 +:1080D00011FD0120207200206072A072E06108F0A2 +:1080E00083FD0020E0720120207300202061606188 +:1080F000A061DFF8800600210160416081600846D0 +:10810000206007F063FA201D07F0C1FA00206066C6 +:10811000A066BDE8F08710B596B006F03FFE0446B5 +:1081200000A8FFF7FEFE0098001916B010BD000071 +:108130000FB42DE9F0412DED028B8AB0DFF84C86AB +:10814000D8F80400DFF83C66814206D1BDF856201D +:10815000B8F80E309A4200F097800C1A02D5DFF87A +:10816000700604199DED1C0AD8ED0A0A70EE608AAB +:10817000F5EE408AF1EE10FA03D59FEDAC0A78EEE9 +:10818000808A9DED1A0AD8ED080A30EE608AB5EEB5 +:10819000408AF1EE10FA03D59FEDA40A38EE008A6A +:1081A000BDF85600C0B29DED1B0A08F0E7FEB0EE28 +:1081B000401ADFF8B855287B012802D0022837D0B2 +:1081C00047E0DFF8C475089712A983B068462C22EF +:1081D000EAF798FC0EBC9FED961AF0EE480AB0EE56 +:1081E000680A204600F060F8E87A2018E872C0B209 +:1081F00006282EDBDFF88805089012A983B06846B0 +:108200002C22EAF77FFC0EBC9FED891AD7ED0E0AEF +:1082100097ED090A386800F047F8E87A401CE872E0 +:10822000582200213846EAF719F80220287310E096 +:10823000DFF84C05089012A983B068462C22EAF7B3 +:1082400061FC0EBCF0EE480AB0EE680A204600F071 +:108250002BF8BDF85600002809D158220021DFF87C +:108260002805E9F7FBFF0020E872012028732C2283 +:1082700012A94046ECF73EFCDFF8041529625822AB +:108280003046ECF737FC2E62BDF85800318C88423E +:1082900003D0DFF8EC14088430840AB0BDEC028B04 +:1082A000BDE8F0015DF814FB0EB4F0B52DED048BC4 +:1082B0008AB0B0EE409AB0EE608AF0EE418A1E9D20 +:1082C00005F12004BDF85A60A6852946B0EE680A7B +:1082D00000F0EAF8DFF89404C06900281AD194EDA0 +:1082E000010A30EE090A84ED010A00F02DFA84ED4E +:1082F000010A6685BDF8580020851A98606194EDE2 +:10830000060A30EE080A84ED060A00F011FA84ED40 +:10831000060A5BE0DFF8640407AA0AC80AC2036819 +:10832000136013A984B068462C22EAF7EBFB0FBC5C +:10833000B0EE680A00F054F9D4ED010A30EE800A7C +:1083400084ED010A00F000FA84ED010AF5EE408A9E +:10835000F1EE10FA0BDD032E03D106206085208597 +:1083600010E0042E0ED10820608520850AE0032E3F +:1083700003D107206085208504E0042E02D1092066 +:10838000608520859DED1A0AF6EE000A20EE200A8F +:1083900084ED050AA069F0F75DF806460F4618EE71 +:1083A000100AF0F757F80022DFF8E433EAF7B6FCDA +:1083B00032463B46EAF7C4FDF0F774F800EE100AC7 +:1083C00084ED060A00F0B4F984ED060A1C98F0F773 +:1083D00041F8DFF8C023DFF8C033EAF79FFCF0F77D +:1083E00061F800EE100A84ED070ADFED7C0AB4EEB6 +:1083F000600AF1EE10FA02DBDFF8D803E0611598AD +:108400006062608D002801D100206062002020623F +:1084100018986063BDF866002086BDF85C0028846B +:108420000AB0BDEC048BF0BC5DF810FB002474496D +:108430000000000080B506F0E3FC40F6B931884248 +:1084400001D3012002BD002002BD38B50D4605F163 +:108450001004A18F032912D1B5EE400AF1EE10FAF3 +:1084600006DD29694018286100F07AF9286131BDDC +:1084700061684018606000F073F9606031BD0429E4 +:1084800011D1B5EE400AF1EE10FA06DDA1684018F0 +:10849000A06000F065F9A06031BDE1684018E060BF +:1084A00000F05EF9E06031BDF8B52DED028B0546B8 +:1084B000B0EE408A0C4620682818206000F050F981 +:1084C000206018EE100AEFF7C5FF21F000410022EE +:1084D0001346FBF7F5FB44D2A84EB069092831D208 +:1084E000A24FF96900292DD108281CD1E168401854 +:1084F000E06000F035F9E0602146B0EE480AB0696E +:10850000FFF7A3FFE0682818E06000F029F9E060B9 +:108510002146B0EE480A2846FFF797FF00F04CF8D6 +:108520000120F8610AE0B4F84A00042803D1706918 +:108530002818706102E0306928183061B069281885 +:10854000B06136E0E0682818E06000F009F9E0600A +:108550002146B0EE480A2846BDEC028BBDE8F44047 +:1085600073E7B4F84A00032802D0042807D00DE0CE +:1085700060682818606000F0F3F860600CE0A068A4 +:108580002818A06000F0ECF8A06005E060682818EA +:10859000606000F0E5F86060784EB069092803D2A9 +:1085A000002801D000F00EF800F006F86F48002116 +:1085B000C161BDEC028BF1BD7048002101614161D8 +:1085C000816170476D486E494A6803699A184A602C +:1085D0008A68406980188860704700000100C841BF +:1085E0000FB438B52DED088BB0EE408ADFED6B8A05 +:1085F0009FED6A9ADDED159A19EE900AEFF72AFFC2 +:1086000041EC1A0B9FED66BBBDF83E00042853EC0D +:108610001A2B654824D16549EAF780FB53EC1B2BE4 +:10862000EAF78EFCEFF73EFF0BEE100AB5EE408A3C +:10863000F1EE10FA38D453EC1A2B5F485C49EAF794 +:108640006DFB04460D4618EE100AEFF703FF2246B5 +:108650002B46EAF763FBEFF725FF09EE100A23E04C +:108660005449EAF75BFB53EC1B2BEAF769FCEFF785 +:1086700019FF0BEE100AB5EE408AF1EE10FA13D492 +:1086800053EC1A2B4C484D49EAF748FB04460D467B +:1086900018EE100AEFF7DEFE22462B46EAF73EFB05 +:1086A000EFF700FF09EE100AF5EE409AF1EE10FA2E +:1086B00018D09DED0E0AB5EE400AF1EE10FA11D079 +:1086C00010EE100AEFF7C6FE00223D4BEAF726FB3C +:1086D00002460B4600203B49EAF7A6FCEFF7E2FE14 +:1086E00008EE900A3BEE090A10EE100AEFF7B2FE10 +:1086F000354A394BEAF712FB04460D461798EFF757 +:10870000A9FE22462B46EAF709FB04460D4618EE61 +:10871000900AEFF79FFE22462B46EAF7FFFAEFF7A3 +:10872000C1FE00EE100ABDEC088B31BC5DF814FBF5 +:10873000DFED260AB4EE600AF1EE10FA03DBDFED9E +:10874000270A30EE200A7047DFED200AB4EE600AF7 +:10875000F1EE10FA03DBDFED210A30EE200A70475C +:108760001B49884201D31E4908187047D4170120BD +:1087700074140120EC260120742301201C1901200F +:10878000E41C01203C1D0120941D0120A023012098 +:108790000000E03FB81E85EB51B8AE3F000000007E +:1087A0000000000000000C409A9999999999C93FDE +:1087B000CCCCEC3F9999B93FCDCCCCCCCCCCFC3FC8 +:1087C00000004E400000F03F7B14AE470124744986 +:1087D000819698000000C841E17A743F002474C972 +:1087E000806967FF50443A204250204F4E000000FD +:1087F00050443A204250204F4646000050443A2010 +:10880000494E545F53544550282564290000000008 +:1088100050443A2045584954205648005044204E70 +:1088200041432025660000005044202D3E204F4645 +:10883000520000005044202D3E2057005044202D6F +:108840003E20520050443A53657448656967687425 +:108850002025660050443A5365745765696768740B +:108860002025660050443A53657447656E6465720E +:10887000202564005044203A2031384645423134A6 +:10888000000000005B4D5F50445D205665723A2049 +:10889000256400005B5052495F50445D205665726C +:1088A0003A2025640000000050443A202564202529 +:1088B00064202564000000000FB400B58FB00120D3 +:1088C0008DF80400AA208DF802003C208DF80300EA +:1088D0000020ADF83A000A208DF820000DF12100AB +:1088E00000A91822EAF7FEF800208DF818000320EE +:1088F000079006A8EFF786FC01200FB05DF814FB87 +:1089000000B589B00020ADF822000A208DF80800DB +:1089100000208DF809008DF80A0001208DF8000074 +:108920000320019000A8EFF76DFC012009B000BD05 +:1089300038B52148046B00F037F8012810D1012028 +:108940008DF8000004F10C056A7D00A9E868E36871 +:10895000C018ECF7CFF80120A874002000F021F82F +:10896000012032BD80B5EFF777FB14490860144948 +:10897000C0F8E81400F2E8401249416012498160F1 +:108980000FF20D01C1600FF24D010161012002BD26 +:108990000A48006890F8D904002801D100207047E7 +:1089A00005E00A4908707047084800787047084891 +:1089B00090F900007047000008400020A82801201E +:1089C000B9880108018901083189010808290120B5 +:1089D0000729012018B440F221120B7812FB03037F +:1089E00001241C700B7812FB03035C700B7812FBE4 +:1089F00003031F249C700B7812FB03000022C2703B +:108A00000878401C087011BC08F04FBD0FB400B5C9 +:108A10008FB001208DF80400AA208DF802003C20C0 +:108A20008DF803000020ADF83A000A208DF82000F0 +:108A30000DF1210000A91822EAF754F800208DF862 +:108A400018000320079006A8EFF7DCFB01200FB009 +:108A50005DF814FB00B589B00020ADF822000A20B3 +:108A60008DF8080000208DF809008DF80A0001201B +:108A70008DF800000320019000A8EFF7C3FB012050 +:108A800009B000BD38B5002000902648446C00F0C5 +:108A900039F8012812D1F8F734FB009004F10C05E5 +:108AA0006A7D00A9E868E368C018ECF723F80120A4 +:108AB000A874002000F023F8F8F727FB012032BD4E +:108AC00080B5EFF7C9FA184908601849C0F8881549 +:108AD00000F2885016494160164981600FF20D017D +:108AE000C1600FF25D010161012002BD0E48006806 +:108AF00090F87905002801D1002070470BE00E495D +:108B0000087070470C480078704780B5002000F06E +:108B100006F8012002BD094890F900007047074996 +:108B20000870704708400020A42801200D8A010821 +:108B3000558A0108858A0108062901200529012096 +:108B400018B440F221120B7812FB030301241C70AD +:108B50000B7812FB03035C700B7812FB03032324D6 +:108B60009C700B7812FB03000022C2700878401C36 +:108B7000087011BCC9E7000038B50446DFF8E452BC +:108B80000020286505206865002028646864A864C2 +:108B9000E8649FEDB20B85ED040B85ED060B85EDCA +:108BA000080B85ED0A0B85ED0C0B85ED0E0B686649 +:108BB000A86605F16C00A8654FF4B6720021E9F7CC +:108BC0004DFB0C2200212846E9F748FB94ED020AF0 +:108BD000B1EE401A94ED010AF1EE400A94ED000A5C +:108BE00005F1440105F1400008F066FD012032BDA9 +:108BF0002DE9F04D2DED068B0E46DFF86872016809 +:108C0000396090ED010AB1EE400A87ED010A90ED5E +:108C1000020AB1EE400A87ED020A1E223946B86DFB +:108C200008F04FFF796D4A1EB86D3B6D934227DA0D +:108C30001E22591C09B208F06DFF10EE100AEFF762 +:108C400009FCC7E90A011E22386D411C09B2B86D42 +:108C500008F07EFF10EE100AEFF7FCFBC7E90C01ED +:108C60001E22386D411C09B2B86D08F08FFF10EE5E +:108C7000100AEFF7EFFBC7E90E01386D401C72E0F8 +:108C800023D11E2209B208F045FF10EE100AEFF7BB +:108C9000E1FBC7E90A011E22796D09B2B86D08F03F +:108CA00057FF10EE100AEFF7D5FBC7E90C011E22A3 +:108CB000796D09B2B86D08F069FF10EE100AEFF790 +:108CC000C9FBC7E90E01786D4DE01E2209B208F01C +:108CD00011FFF8651E220021B86D08F00BFF8046D9 +:108CE000C7F86080FC6D2068EFF7B4FB02460B46C6 +:108CF000D7E90A01E9F752FF82468B46D8F800000F +:108D0000EFF7A8FB52465B46EAF71AF9C7E90A01F2 +:108D10006068EFF79FFB02460B46D7E90C01E9F7C5 +:108D20003DFF82468B46D8F80400EFF793FB52468E +:108D30005B46EAF705F9C7E90C01A068EFF78AFB83 +:108D400002460B46D7E90E01E9F728FF04460D4617 +:108D5000D8F80800EFF77EFB22462B46EAF7F0F83A +:108D6000C7E90E01786DEAF7D3F841EC180BD7E9A3 +:108D70000A0153EC182BEAF757F941EC190B87ED70 +:108D8000049BD7E90C0153EC182BEAF74DF941ECA1 +:108D90001A0B87ED08ABD7E90E0153EC182BEAF755 +:108DA00043F941EC100B87ED060BEFF77BFB01EE6F +:108DB000100AB0EE418A51EC1A0BEFF773FB00EE8C +:108DC000900AB0EE481AB0EE608AF0EE418A51EC9B +:108DD000190BEFF767FB00EE100AB0EE681AF0EE21 +:108DE000480A07F14C0107F1480008F065FC386DAE +:108DF000401C38659FED190B87ED040B87ED080BC0 +:108E000087ED060B396CB86C00F017F804467C66E9 +:108E1000796CF86C00F011F8B86604F1280151295A +:108E200002D22830512802D30120307001E0002006 +:108E30003070BDEC068BBDE8F08D421AB52A04DB1C +:108E4000081A00F5B470424205E012F1B40F02DADC +:108E500000F5B470421A1046704700000000000090 +:108E600000000000A0F9002038B5DFF82C4594F888 +:108E70002000012801D1002032BD204609F02BFC42 +:108E8000204608F095FF0020E08309F027FCDFF87A +:108E90000C55E564002060651422014604F13000A1 +:108EA000E9F7DCF920220021DFF8F404E9F7D6F92C +:108EB00020220021DFF8EC04E9F7D0F90020A065BA +:108EC000024605E0D42101FB00510A718A71401C61 +:108ED0000128F7DB0120606400F011F8DFF8C80416 +:108EE000012180F83D10084609F074FB0020A064C1 +:108EF000207709F097FB012084F8200032BD70B480 +:108F000001460023DFF8902411E0D42504EB83040C +:108F1000A46805FB040401262671D66D05FB030039 +:108F2000807904EB8000006A3043D0655B1CDFF879 +:108F3000780400EB4114DFF864042579AB42E4DBEC +:108F400029465177237F1376002903D0DFF8503468 +:108F50005971D06470BC7047DFF83C144A6D01EB66 +:108F600082031863501C4865052803D3401E4865DA +:108F700000207047012070470020DFF81C140246D3 +:108F80008A654A6D002A0BD00B6B8B65521E4A65B1 +:108F900004E001EB8002536B1363401C0428F8DBF0 +:108FA000704738B50024DFF8F053287F09F046FBFE +:108FB00002E000F03CF8641C287E8442F9D331BD05 +:108FC00070B50C460025DFF8D063F17F4A1CF277BC +:108FD000332901DB2946F177B17F032915DB0168CD +:108FE00071624168B1628068F062284609F023FB33 +:108FF000307F401C3077317EC0B2884203D3284690 +:109000003077FFF7CEFFFFF7B7FFB07F411CB17796 +:10901000652801DB3220B077B06D002805D02070C4 +:1090200001250A2801D10A202070284670BD2DE9AB +:10903000F84300200146DFF864430BE0D42202FB32 +:1090400001421379002B04D0937902EB8302126A58 +:109050001043491C0129F1DB09F009FBCE4D09F051 +:109060002CFB28650020A86506463FE0D42202FBC1 +:1090700006F707EB040898F80400002835D03046BE +:1090800000F049F8D5F8509098F8060008EB8000F9 +:10909000006AD9F8001008421ED098F8060008EBC4 +:1090A0008000406B002806D098F8060008EB80008E +:1090B000406BFFF751FF98F80600401C88F8060047 +:1090C00098F80510C0B2884206D3B548395940F81F +:1090D0002610002088F80600D9F84000002804D0A7 +:1090E000D9F800100843C9F80000761C012EBDDB3A +:1090F000286D006809F0E3FAA86C411CA964B0F57A +:109100007A7F01D90020A864A648A5492022BDE89D +:10911000F843E9F7F7BCF8B59F4C256D00212964A9 +:10912000D4219E4A01FB00208179C1EBC10200EBF2 +:10913000820600EB8107386A022846D1B06C01280C +:1091400043D1306D022808D1686B032803DAF06D33 +:10915000401CF06501E00020F065306D042808D166 +:10916000686B052803DAF06D401CF06501E0002013 +:10917000F065306D082808D1686B082803DBF06DB6 +:10918000401CF06501E00020F065306D102808D12A +:10919000686B102803DBF06D401CF06501E00020D7 +:1091A000F065F06C142190FBF1F0F16D814206DA6C +:1091B0002868396A88432860386A286405E00020F6 +:1091C000F0652868396A08432860386A012861D147 +:1091D00096F84800C0075DD5F06C41071ED594EDA8 +:1091E0000B0AF9EE000AB4EE600AF1EE10FA09D5A6 +:1091F00040F22310A9699131814203D3E969913189 +:1092000081423DD20020F065F06D05283CDA2868E7 +:10921000396A88432860386A2864F1BD81070FD510 +:1092200094ED0B0AB5EE400AF1EE10FAEADDA869FA +:109230005A30B528E6D2E8695A30B52820D3E1E79C +:10924000C006E1D5E06AEFF705F921F000410122FF +:10925000564BFAF735FDD5D8606AEFF7FBF821F0E9 +:1092600000410022524BE9F737FECBD2A06AEFF75C +:10927000F1F821F0004100224D4BE9F72DFEC1D25B +:10928000F06D401CF065BFE70020F0652868396A82 +:1092900008432860F1BD000010B43F49CA68002AA5 +:1092A00004D14FF48062CA600A614A6191ED040AF8 +:1092B000B8EE400AD1ED0A0A20EE200ADFED350AA9 +:1092C00080EE200AD1ED010AF8EE600A30EE200AA5 +:1092D000BDEEC00A10EE102A91ED050AB8EE400A64 +:1092E000D1ED0B0A20EE200ADFED2A0A80EE200ADB +:1092F000D1ED020AF8EE600A30EE200ABDEEC00A97 +:1093000010EE103AB0F9024000EB440491ED030A6C +:10931000B8EE400AD1ED090A20EE200ADFED1D0A61 +:1093200080EE200AD1ED000AF8EE600A30EE200A45 +:10933000BDEEC00A10EE101AA180B0F9021000EBC9 +:109340004101CA80B0F9021000EB41010B81418854 +:10935000491C418009B21E2901DB1D2141800120E9 +:1093600010BC704710B5002006E0D4210B4A01FB69 +:10937000002100220A71401C0128F6DB064C002067 +:109380006064607709F050F90020E06584F82000FF +:1093900010BD0000C3F51C41681B0120EC760020C5 +:1093A000AC240120CC2401208C7800200000214036 +:1093B0000000F83F10B5554C002020606060A060B0 +:1093C0002062052060620020A061E061A062E0628E +:1093D00020636063A063E0636064A06404F14C00F8 +:1093E00020644FF4B6720021E8F738FF0C22002108 +:1093F00004F10C00BDE81040E8F730BF70B50C4632 +:10940000424DA96C4E1CAE6400F017F8002803D042 +:10941000686C401C686401E0002068640F2E0ADA62 +:10942000686C0B2803DB01202070022070BD002037 +:109430002070012070BD032070BD0021334A92EDE1 +:10944000000AB5EE400AF1EE10FA15D1D2ED010A8C +:10945000F5EE400AF1EE10FA0ED1D2ED020AF5EE69 +:10946000400AF1EE10FA07D10168116041685160BD +:109470008068906000207047D0ED000A30EEC00A8E +:1094800090ED011AD2ED011A31EE611AD0ED021AF7 +:1094900092ED022A71EEC21AB5EE400AF1EE10FA10 +:1094A00001DAB1EE400AB5EE002AB4EE420AF1EE5E +:1094B00010FA1AD5B5EE401AF1EE10FA01DAB1EE53 +:1094C000411AB5EE000AB4EE401AF1EE10FA0CD5CE +:1094D000F5EE401AF1EE10FA01DAF1EE611AF4EE4F +:1094E000401AF1EE10FA00D50121C2ED000A4368DE +:1094F000536080689060084670470448002101600E +:1095000041608160416481647047000014FF002065 +:1095100010B500F032FB00F098FB00240DE020466F +:109520009FED151ADFED140A9FED130A00F0B4FE4B +:109530002146052000F0BDFE641C1E2CEFDBDFF889 +:10954000540D00210170016341638163C1630164B3 +:1095500041648164052141710A210171002141703A +:109560008170C1620A2181710021C17010BDDFF8D4 +:10957000241DC87070470000000000002DE9F0476E +:109580002DED048BB0EE408AF0EE608AB0EE419A89 +:10959000DFF8244DE078012801D1002500E0052501 +:1095A00026781E2E09DA304600F076FE314628462F +:1095B00000F07FFE701C207027E0002616E0DFF828 +:1095C000FC1C01EB8602304692ED3D1AD2ED1F0ADB +:1095D00001EB860191ED010A00F05EFE3146DFF8F5 +:1095E000E00C3018407800F064FE761C1D2EE6DB9F +:1095F0001D20B0EE491AF0EE680AB0EE480A00F0FD +:109600004BFE1D21284600F054FEDFF8B89C032DC8 +:1096100008DA606B401C606348450BD3DFF8A80C88 +:10962000606307E0206B401C2063484502D3DFF8ED +:10963000980C206300F0B2FDB0EE408A00F076FD99 +:10964000F0EE408A00F010FBD4F830809FEDA09B34 +:109650004046E9F767FC53EC192BE9F75FFBE9F7A4 +:109660009DFE0646E76B3846E9F75CFC53EC192B88 +:10967000E9F754FBE9F792FE824620790A2802D0E6 +:10968000142846D05CE09FED940AB4EE408AF1EED7 +:1096900010FA0CD5F4EE408AF1EE10FA07D5032D3E +:1096A00005DA14202071780800F0F0FB48E0781CFF +:1096B000E063484502D3DFF8100CE063042D3FDB84 +:1096C00000F064FAE06A01283AD1B6F57A7F37D91A +:1096D00094ED090AB5EE400AF1EE10FA01DCB1EEA4 +:1096E000400ADFED7E0AB4EE600AF1EE10FA0DDA00 +:1096F00094ED0A0AB5EE400AF1EE10FA01DCB1EE83 +:10970000400AB4EE600AF1EE10FA19DB0020E062C4 +:1097100016E09FED710AB4EE408AF1EE10FA04DA19 +:10972000F4EE408AF1EE10FA02DB0A20207107E025 +:10973000A06B401CA063484502D3DFF88C0BA063EC +:1097400000206070607902280AD0C0F05B81042894 +:109750001BD074D3062800F00381C0F0E68051E1ED +:10976000032D0FDA606B012802D12079A07149E145 +:109770000A2840F047810420607100F0F5FB0020CA +:1097800020633FE1002060633CE1E06A012832D1C0 +:10979000207900F049F901282DD140F2E9308642C4 +:1097A00001D2002E22D1824502D2BAF1000F1DD182 +:1097B00094ED090AB5EE400AF1EE10FA01DCB1EEC3 +:1097C000400ADFED460AB4EE600AF1EE10FA10D559 +:1097D00094ED0A0AB5EE400AF1EE10FA01DCB1EEA2 +:1097E000400AB4EE600AF1EE10FA02D5A07860707B +:1097F00001E00020E062E06A002814D1B6F5C87FDD +:1098000001D8002E08D1A078002808D0BAF1FB0FAB +:1098100005D2BAF1000F02D0A078607003E0207981 +:1098200000F046F96070032060716078A07000203D +:1098300020636063A063E06300F01DFBE2E0042DA1 +:1098400017DBB8F1010F02D100F0FFF9DAE0B8F14F +:10985000060FC0F0D7800021404600F0D3FAA07870 +:10986000032802D10020E06262E000F0D9FCE0624F +:109870005EE00020206320790A2853D1E06B0A289B +:10988000C0F0C080002100F0BDFAA07800F0C8FC54 +:10989000E06294ED130AB5EE400AF1EE10FA02DD33 +:1098A000F0EE400A01E0F1EE400A9FEDB71AF4EE47 +:1098B000410AF1EE10FAC0F2A580D4ED140AF5EEDB +:1098C000400AF1EE10FA0BDDF0EE601A0AE000BF7C +:1098D00000000000000034409A99193F0000204227 +:1098E000F1EE601AF4EE411AF1EE10FAC0F28A803D +:1098F000F5EE400AF1EE10FA01DCF1EE600AB5EE89 +:10990000400AF1EE10FA01DCB1EE400AF4EE400A32 +:10991000F1EE10FA76D50520607100F096F900207E +:10992000A0636FE00020E0636CE0B8F1060F04D3A1 +:10993000022060710020606364E0A06B012805D103 +:10994000E06B00F0A3FA2079A0715BE0052859D301 +:10995000606B052856D3062060710020206351E01B +:10996000207914284ED1E06A01282DD140F2E93047 +:10997000864201D2002E22D1824502D2BAF1000FD6 +:109980001DD194ED090AB5EE400AF1EE10FA01DCA2 +:10999000B1EE400ADFEDB20AB4EE600AF1EE10FA61 +:1099A00010D594ED0A0AB5EE400AF1EE10FA01DC8A +:1099B000B1EE400AB4EE600AF1EE10FA02D5A078DA +:1099C000607001E00020E062E06A002811D140F2FE +:1099D0009110864201D2002E04D1824505D2BAF1FF +:1099E000000F02D0A078607003E0A07900F060F86A +:1099F0006070032060716078A07000202063606355 +:109A0000E063A0636078012801D1012008E002280A +:109A100001D1022004E0032801D1032000E000204E +:109A2000BDEC048BBDE8F08780B52DED048B0021E3 +:109A30000A2808D1DFF85C0890ED100A90ED118A31 +:109A4000D0ED128A11E0142808D1DFF8480890ED13 +:109A5000150A90ED168AD0ED178A06E09FED810A6F +:109A60009FED808ADFED7F8A032103291CDA9FEDB9 +:109A7000D59A00F035FCB4EE490AF1EE10FA11D592 +:109A8000B0EE480A00F02CFCB4EE490AF1EE10FAF0 +:109A900008D5B0EE680A00F023FCB4EE490AF1EEF6 +:109AA00010FA01D4012000E00020BDEC048B02BDBF +:109AB00000210A280AD1DFF8DC07D0ED100A90ED6A +:109AC000111AD0ED121A9FED670A13E014280AD17B +:109AD000DFF8C007D0ED150A90ED161AD0ED171A71 +:109AE0009FEDC50A06E0DFED5F0A9FED5E1ADFED30 +:109AF0005D1A032103293EDAB4EE600AF1EE10FA92 +:109B00000BD59FEDBE2AB4EE421AF1EE10FA04D541 +:109B1000F4EE421AF1EE10FA2AD4B4EE600AF1EE35 +:109B200010FA0BD59FEDB62AB4EE421AF1EE10FAF8 +:109B300004DBF4EE421AF1EE10FA0BDAB4EE600A2E +:109B4000F1EE10FA08D59FEDCF1AF4EE411AF1EEBE +:109B500010FA01DB01210EE0B4EE600AF1EE10FA1A +:109B600008D59FEDC90AF4EE401AF1EE10FA01D5BE +:109B7000022100E0032108467047DFF818070021A2 +:109B80008160C160016170470100C03F10B52DEDDB +:109B9000068BDFF8004794ED050AB5EE400AF1EEBA +:109BA00010FA13D194ED060AB5EE400AF1EE10FA60 +:109BB0000CD194ED070AB5EE400AF1EE10FA05D18A +:109BC000A0686061E068A0612069E06194ED028AAC +:109BD00094ED050A38EE400A00F0F6F8F0EE408AFF +:109BE00094ED039A94ED060A39EE400A00F0ECF881 +:109BF000F0EE409A94ED04AA94ED070A3AEE400A7A +:109C000000F0E2F8F0EE40AA94ED080A30EE280ADF +:109C100000F0DAF884ED080A94ED090A30EE290A1A +:109C200000F0D2F884ED090A94ED0A0A30EE2A0A0F +:109C300000F0CAF884ED0A0A84ED058A84ED069ADC +:109C400084ED07AABDEC068B10BDDFF848060021A5 +:109C500001624162816241618161C16170470000BE +:109C60000000204200000000F8B52DED048B84B008 +:109C70001D2100A800F000FB9DED000AB5EE400A92 +:109C8000F1EE10FA01DCB1EE400ADFEDAF0AB4EEFE +:109C9000600AF1EE10FA01D50020009000AE96EDBA +:109CA000010AB5EE400AF1EE10FA01DCB1EE400A0D +:109CB000B4EE600AF1EE10FA01D50020706096ED66 +:109CC000020AB5EE400AF1EE10FA01DCB1EE400AEC +:109CD000B4EE600AF1EE10FA01D50020B0609FEDFD +:109CE0009B8B9FED9C9BDFF8D075B868EEF7B2FBBD +:109CF00004460D460098EEF7ADFB53EC192BE9F73F +:109D00000DF80022DFF8D435E9F78EF953EC182B63 +:109D1000E9F704F822462B46E9F712F9EEF7C2FB01 +:109D200000EE100A87ED020A00F04EF887ED020AF5 +:109D3000F868EEF78FFB04460D467068EEF78AFB75 +:109D400053EC192BE8F7EAFF0022DFF89035E9F72A +:109D50006BF953EC182BE8F7E1FF22462B46E9F7A5 +:109D6000EFF8EEF79FFB00EE100A87ED030A00F014 +:109D70002BF887ED030A3869EEF76CFB04460D46B5 +:109D8000B068EEF767FB53EC192BE8F7C7FF00222A +:109D9000DFF84835E9F748F953EC182BE8F7BEFF30 +:109DA00022462B46E9F7CCF8EEF77CFB00EE100AD2 +:109DB00087ED040A00F008F887ED040A04B0BDEC52 +:109DC000048BF1BD9A99993EDFED640AB4EE600A06 +:109DD000F1EE10FA04DBDFED620A30EE200A704784 +:109DE000DFED600AB4EE600AF1EE10FA03D5DFEDA4 +:109DF000CD0A30EE200A70479A9999BECCCCCCBDE2 +:109E0000CDCCCC3D10B49FEDC80ADFEDC70A1F28AA +:109E100001D31E2000E0C0B20022DFF8A0440EE013 +:109E2000C2F11D03DBB204EB830393ED1E1A30EE87 +:109E3000010A93ED3C1A70EE810A521CD2B28242A2 +:109E400009DA002902D1C2F11D03EBE70129E7D1AC +:109E5000C2F11803E6E701EE100AB8EE411ADFF886 +:109E6000580480EE010A80ED130A80EE810A80ED2D +:109E7000140A10BC7047DFF8400400214165816579 +:109E8000C1657047CDCCCC3ECCCCCCBE30B49FEDC0 +:109E9000A60ADFEDA50A9FEDA41A1F2801D31D20F5 +:109EA00001E0401EC0B200210DE030EE210A02EBBD +:109EB0008302D2ED1E1A70EEA10AD2ED3C1A31EEE9 +:109EC000211A491C89B2DFF8CC4381422ADA227870 +:109ED0001E2A03DA521A531EDBB202E0C1F11D033F +:109EE000DBB2DFF8D82352F8235001EE905A02EB90 +:109EF000830555F8045C02EE105A71EEC22A9FEDFC +:109F0000C73AF4EE432AF1EE10FACEDBF5EE401A32 +:109F1000F1EE10FAC9DDB5EE402AF1EE10FAC4D523 +:109F20000B29C2DB01EE901AF8EE611A80EE210ACD +:109F300084ED150A80EEA10A84ED160A81EE210A4D +:109F400084ED170A30BC70470BD7233DF8C1631A64 +:109F5000DCA54C4000000000000034400100344308 +:109F60000000B4C3000034C3F0B4DFEDC92AB0EE82 +:109F7000620AB0EE622ADFED6C0A9FED6B1ADFED2C +:109F80006A1ACD4801781E2900DB1E21026B91421E +:109F900004D201EBD1725210D2B201E05208D2B217 +:109FA00000230DE0B1EE633AB4EE443AF1EE10FA5C +:109FB00005DB71EEA31AB7EE003A32EE032A5B1C02 +:109FC000DBB2934280F29F80CC1A641EE4B2254635 +:109FD0006E1EF6B2B94D55F8267003EE107A05EBF9 +:109FE0008407D7ED003A05EB860797ED004A73EE3C +:109FF000C43AF5EE403AF1EE10FA05EB8407D7EDDE +:10A00000003A02DD33EEC33A01E033EE633A05EB8A +:10A010008606D6ED1E3A97ED1E4AD6ED1E4A34EE60 +:10A02000644AB5EE404AF1EE10FA97ED1E4A02DDA1 +:10A0300074EE633A01E073EEC43A06F1780C9CEDDD +:10A040001E4A07F17806D6ED1E4A9CED1E5A74EEA4 +:10A05000C54AF5EE404AF1EE10FAD6ED1E4A02DD91 +:10A0600034EEC44A01E034EE644ADFED984AB4EEBF +:10A07000643AF1EE10FA09DBF4EE643AF1EE10FA0C +:10A0800004DBB4EE644AF1EE10FA3CDA55F82440F1 +:10A0900003EE104AB5EE403AF1EE10FA02DDF0EEB2 +:10A0A000433A01E0F1EE433A9FED894AF4EE443A37 +:10A0B000F1EE10FA05DB70EE830AB7EE003A30EEEF +:10A0C000030A97ED1E3AB5EE403AF1EE10FA02DDC2 +:10A0D000F0EE433A01E0F1EE433AF4EE443AF1EEA9 +:10A0E00010FA05DB31EE031AB7EE003A72EE832A5E +:10A0F000D6ED1E3AF5EE403AF1EE10FA7FF752AF88 +:10A10000B0EE633A50E780EE800A80ED100A81EEEF +:10A11000220A80ED110A81EE820A80ED120AF0BC5B +:10A12000704700000000B4430000000010B52DEDA2 +:10A13000028B9FED688A002426E0C4F11D00C0B2A6 +:10A140005E4901EB800202F1780393ED1E0AD2ED25 +:10A150001E0A51F8200001EE100A21EE011A00EE4D +:10A16000A01A00EE001A11EE100AEEF773F941EC96 +:10A17000100BE9F77DF851EC100BEEF793F900EEB8 +:10A18000100A38EE008A641C062CD6DBB1EE080AF1 +:10A1900088EE000ABDEC028B10BD000010B52DED5D +:10A1A000028B9FED4C8ADFED4B8A002428E0C4F13E +:10A1B0001D00C0B2414901EB800202F1780393ED2A +:10A1C0001E0AD2ED1E0A51F8200001EE100A21EEFF +:10A1D000011A00EEA01A00EE001A11EE100AEEF7B6 +:10A1E00039F941EC100BE9F743F851EC100BEEF79D +:10A1F00059F900EE100A38EE008A40EE008A641C1D +:10A20000062CD4DBB1EE080AC8EE000A88EE800AFC +:10A2100000EEE00ABDEC028B10BD00009A99993E59 +:10A220000121022812D19FED2C0A2348D0ED130AF8 +:10A23000F4EE400AF1EE10FA1CDBD0ED140AF4EE55 +:10A24000400AF1EE10FA15DB002113E0012811D1CC +:10A25000194890ED130AFEEE000AB4EE600AF1EE22 +:10A2600010FA07D590ED140AB4EE600AF1EE10FA78 +:10A2700000D5002108467047104A52F8213003608B +:10A2800002EB81018A6F4260D1F8F0108160704763 +:10A29000BD378635A81A0120C0B2084901EB8002FB +:10A2A00082ED000A01EB8000C0ED1E0A80ED3C1A31 +:10A2B0007047034A88547047A81A0120EC05012012 +:10A2C0008C24012041420F0040420F000100A040B9 +:10A2D000CDCC4C3D000000000100003F00408F400D +:10A2E000B5EE400AF1EE10FA03D5FFEE000A20EEBB +:10A2F000200A704704490968002900D10349034A2C +:10A30000801A411808007047DC2801200040002016 +:10A3100010B5040003E02068C068EBF76AFAEAF7BA +:10A32000D2FB20680028F6D107484078F021084287 +:10A3300002D09920EAF75AFB03484078002801D15F +:10A34000EAF7BBFB10BD00BF70790020012008F0C8 +:10A35000DDB900000749086808B1002070470648C9 +:10A36000C008C00008600549C908C900091A016091 +:10A37000704700BFEC28012007200020004000208B +:10A3800070B504460025DFF80867062015FB00407D +:10A3900000F080FB6D1C202DF7DB70BD00B970470D +:10A3A0002DE9F0434379027DDB43D243DBB243EA3C +:10A3B00002220A80437C427DDB43121DDBB243EA6A +:10A3C00002224A80C47C437A6634373BE4B244EAD2 +:10A3D00003238B80057B4478263D523CEDB245EA51 +:10A3E0000424CC800678057A203E6A35F6B246EA27 +:10A3F00005250D81877D8679FF43F643FFB247EA45 +:10A4000006264E8190F804C0877BACF1310CFF43E7 +:10A410005FFA8CFC4CEA07278F8190F812E090F8E5 +:10A4200010C0AEF17F0E6FEA0C0C5FFA8EFE4EEAA2 +:10A430000C2CA1F80EC090F80B8090F818E0A8F151 +:10A4400055080EF1370E5FFA88F848EA0E2EA1F88B +:10A4500010E0098890F81A8090F817905118591850 +:10A46000611869187118791861446FEA0909714413 +:10A470005FFA89F3C9B26FEA08088B420FD180787E +:10A480000CEB070146307144C0B2C9B2884206D114 +:10A49000A81860445FFA88F1C0B2814201D0002060 +:10A4A00000E00120BDE8F083F0B588B0002200ABE9 +:10A4B000002423F8124003234FF480449C4051F8B9 +:10A4C000225001269E406742AF4207DB641941F8E3 +:10A4D000224000AC34F91240A41B09E0A5420ADB7B +:10A4E0002C1B41F8224000AC34F9124006FA84F4E7 +:10A4F00000AD25F812405B1EDED500AB33F91230FB +:10A50000DB1D9BB20F2B01D3002043E0521C032A1A +:10A51000CDDB002202AB002443F8224005AB43F818 +:10A5200022400023062404FB020434F9135051F89E +:10A53000236002AC00AF54F8224006FB054402AE93 +:10A54000AD0346F8224005AE37F9137056F8226085 +:10A550002D1107FB056505AE5B1C46F82250032B49 +:10A56000E0DBC4F3C00303EB241302ACEB1844F8A4 +:10A57000223002AB53F82230C3F3402404EBA32370 +:10A5800002AC44F82230521C032AC3DB02A81CC8C8 +:10A590001CC1012008B0F0BD2DE9F14F80B20B467F +:10A5A000212819D2BDF9000000250121A9408842C7 +:10A5B00005D06D1C062DF8DBBDF9000060B9B3F9BC +:10A5C000000047F6FF7840451FBFB3F90200404541 +:10A5D000B3F90400404501D1002040E000244FF0D1 +:10A5E000000C27460126254606E081468E46CC44CF +:10A5F0007444DA4657446D1CBDF90000854226DAE2 +:10A6000036B2B54208BF76004DB933F90590B3F9BB +:10A6100002E0B3F904A0CC4674465746EBE70620A7 +:10A6200000FB05F1C85E40451EBF01EB030BBBF903 +:10A63000021041451CBFBBF904B0C345D5D1CC4481 +:10A640007444D7E74FEA6C0C64107F10761036B272 +:10A65000022EF7DAA2F800C0548097800120BDE8EE +:10A66000F28F30B5B0F90440B0F90250240485B03F +:10A67000240A14FA85F4ADF80040B0F90840B0F9A6 +:10A6800006502404240A14FA85F4ADF80240B0F907 +:10A690000C40B0F90A002404240A14FA80F0ADF842 +:10A6A00004000020188000AC31F8103034F910405C +:10A6B000803313FB04F302AC03EB830344F8203034 +:10A6C0001B1242F82030401C0328ECDB05B030BDE3 +:10A6D00030B5B0F90440B0F90250240485B0240A22 +:10A6E00014FA85F4ADF80040B0F90840B0F906500E +:10A6F0002404240A14FA85F4ADF80240B0F90C40A1 +:10A70000B0F90A002404240A14FA80F0ADF8040019 +:10A710000020188000AC31F8103034F9104080333C +:10A7200013FB04F30A24634302AC44F820301B12E9 +:10A7300042F82030401C0328ECDB05B030BD70B57A +:10A74000B0F90450B0F902602D0485B02D0A15FA55 +:10A7500086F5ADF80050B0F90850B0F90660099CD4 +:10A760002D042D0A15FA86F5ADF80250B0F90C50FB +:10A77000B0F90A002D042D0A15FA80F0ADF8040096 +:10A780000020208000AD31F8104035F910508034A1 +:10A7900014FB05F40A256C4302AD002A45F820405D +:10A7A00014BFA412241243F82040401C0328E9DB04 +:10A7B00005B070BD30B5B0F90440B0F902502404C2 +:10A7C00085B0240A14FA85F4ADF80040B0F90840C9 +:10A7D000B0F906502404240A14FA85F4ADF80240B6 +:10A7E000B0F90C40B0F90A502404240A14FA85F494 +:10A7F000ADF80440B0F90E0000EB8000C0F55C70CD +:10A80000C0101880002000AC31F8103034F910402E +:10A81000803313FB04F30A24634302AC44F8203072 +:10A820009B1242F82030401C0328ECDB05B030BD01 +:10A8300030B5B0F90440B0F90250240485B0240AC0 +:10A8400014FA85F4ADF80040B0F90840B0F90650AC +:10A850002404240A14FA85F4ADF80240B0F90C403F +:10A86000B0F90A002404240A14FA80F0ADF80400B8 +:10A870000020188011F8103000AC03F03F035B009B +:10A8800034F9104003F5807313FB04F30A24634387 +:10A8900002AC44F820301B1242F82030401C032840 +:10A8A000E8DB05B030BD30B586B004460D4600A8E3 +:10A8B0000FF2D8311822E8F725F9012CB8BF01248E +:10A8C00002DB042CA8BF032400A901EBC401284625 +:10A8D00008390822E8F706F906B030BDF0B580B2B5 +:10A8E00085B00C4615461E46042828BF002080F07F +:10A8F000AE8000B2002807D0002147F6FF7304EBBA +:10A900004102B2F906209A4200F0A080491C0329B6 +:10A91000F5DB03A9FFF7C7FF01276FF0050017FB61 +:10A92000006101F130002A310622E8F7DBF87F1CD4 +:10A93000082FF2DB0020002135F9112034F9113005 +:10A940009A42B4BF4FF0FF32012226F8112004EBE7 +:10A95000410335F91120B3F9063000AFD31A47F897 +:10A96000213044BF5B4247F8213000AB53F821301F +:10A9700003EB430347F82130C3F3400707EBA3037E +:10A9800000AF47F8213000AB53F821309842B8BFF0 +:10A99000184634F91130D21A00AB43F8212044BFD5 +:10A9A000524243F8212000AA52F821209042B8BF19 +:10A9B0001046491C0329BFDBBDF90C10401ABDF835 +:10A9C0000E1040FA01F1081848BF002004D4B0F579 +:10A9D000A07FC8BF4FF4A07000EB400101EB001155 +:10A9E00001EB4010C011401C00210022002706EBA3 +:10A9F000410C062317FB03C37F1CB3F9003002FA96 +:10AA000083F2082FF5DB13B2002B48BF5242BDF989 +:10AA100012705210012302FA87F203FA02F2BDF813 +:10AA200010309A1812B28242B8BF024600AF57F8EF +:10AA3000217034F911307A4336F91170D2117A430A +:10AA4000D21825F81120491C0329CEDB012005B0BE +:10AA5000F0BD70B50C461546FFF792FC2046FFF797 +:10AA60008FFC0B4E284600F015F8A81D00F012F8D8 +:10AA7000002000230021062202FB004222F81130B0 +:10AA8000491C0329F7DB401C0828F3DB70BD0000DC +:10AA90002C03030831460622E8F724B82DE9F04FCD +:10AAA000814695B208462DB28FB01946212D2DD280 +:10AAB00042F20F3842F2033A42F20C3EC14518BF4F +:10AAC000F14505D0D1451CBF42F2B66291450DD18A +:10AAD000B0F90030B0F90E2000260124B440A542A0 +:10AAE00016D0761C062EF8DB95B10FE042F2B86264 +:10AAF00091451FBF40F6BB32914542F2B762914586 +:10AB000004D1B0F90030B0F91020E5E70020BAE038 +:10AB10001E9E1E96012434800024249E2496348098 +:10AB20000026DDF884C04FF0000BACF800609B07F6 +:10AB3000229C2680239F3E80259EA6F800B044BF1D +:10AB40000123ACF80030530744BF012323801307CF +:10AB500002D50120388007E0B4F90030012B1CBF7A +:10AB6000B7F90030012B01D101208CE0209BC145B9 +:10AB700003D103AAFFF775FD25E0F14503D103AA30 +:10AB8000FFF7A6FD1FE0D1451CBF42F2B664A14508 +:10AB900006D1009303AB02F01002FFF7D0FD12E0E4 +:10ABA00042F2B86291451CBF40F6BB32914503D1D9 +:10ABB00003AAFFF7FFFD06E042F2B762914504BF2A +:10ABC00003AAFFF735FE189809A9FFF7E7FB3080C5 +:10ABD000012805D103A909A8FFF766FC002852D077 +:10ABE000DDF874A0002603A806A950F8260041F855 +:10ABF00026005AF82610401A03A941F8260000F54D +:10AC0000EA402F304EF65F21884202D3249801217A +:10AC10000180761C032EE6DB24981A9CB0F9000014 +:10AC2000012809D12046FFF7ABFB06A80EC8AAE809 +:10AC30000E000020019006E00398ADF8040004988F +:10AC4000ADF806000598ADF8080023461E982021AF +:10AC5000B0F9002001A807F063FD1B9C1C9BBDF907 +:10AC6000640001AA2146FFF739FE60B11E98234611 +:10AC7000B0F90020202101A807F052FD1F9A2146BB +:10AC80002846FFF789FC0FB0BDE8F08F28000000D0 +:10AC9000000003005000000000000200500001000E +:10ACA000FEFF02002DE9F04F93B004460D4690469A +:10ACB0000FA80FF6A4110B22E7F724FF0BA80FF63D +:10ACC000A4110E22E7F71EFF08A80FF6A8110B2209 +:10ACD000E7F718FF04A80FF6A8110E22E7F712FFF6 +:10ACE0000020ADF802000120ADF800004FF0080987 +:10ACF00000F0EFF8B9F10109FAD100260DF13C0995 +:10AD000016F8097057B100F0E4F8BDF80000381AE1 +:10AD1000543006F80900761C102EF1DB102E04DAF0 +:10AD200000F0D7F8701C06B2F8E700270BAE17F852 +:10AD300006A0BAF1000F0AD000F0CBF8BDF8000071 +:10AD4000AAEB00002A38B8557F1C102FEFDB102F1C +:10AD500000A804DA00F0BFF8781C07B2F7E700F0AB +:10AD6000BAF8BDF8001043F2EF20401AADF80E001B +:10AD700000F0AFF8BDF80010DFF80405401AADF898 +:10AD80000C0000F0A6F8BDF80010DFF8F804401A37 +:10AD9000ADF80A0000F09DF8BDF80000C0F57F573F +:10ADA00000F097F8BDF80010DFF8DC04401AADF8A9 +:10ADB000080000F08EF8BDF8001042F21F50A0EB22 +:10ADC000010A00F086F8BDF8001040F64120A0EB23 +:10ADD000010B00F07EF8BDF8001042F65F70401ADB +:10ADE000002111F80920002A04BF0B5D002B05D0BB +:10ADF0000B5D934266D1491C1029F2DB102902D168 +:10AE0000217C00295ED100218A5D002A04BF4B5DB0 +:10AE1000002B05D04B5D934254D1491C1029F3DB24 +:10AE2000102902D1297C00294CD1002108AA8A5C72 +:10AE3000002A04BF0B5D002B05D00B5D934241D16E +:10AE4000491C1029F2DB102902D1217C002939D1BB +:10AE5000002104AA8A5C002A04BF4B5D002B05D0A8 +:10AE60004B5D93422ED1491C1029F2DB102901D1F0 +:10AE7000297C39BBB8F90010BDF90E20914202BF00 +:10AE8000B8F90210BDF90C2091421BD1B8F9041099 +:10AE9000BDF90A209142A4BF3AB28A4212DBB8F946 +:10AEA0000610BDF908209142A4BF0FFA8AF28A4227 +:10AEB00008DBB8F908100FFA8BF29142A4BF00B278 +:10AEC000884202DADFF8C40300E0012013B0BDE8D5 +:10AED000F08F00A8FFE7B0F902108180B0F90020E0 +:10AEE000428051180180704770B50546049C059852 +:10AEF0002960C5F88C211E460246012321462846BA +:10AF000000F077F90020A5F88801A5F88A61A5F876 +:10AF1000F001A5F8F20170BD2DE9F04FD5B005465E +:10AF20000E4617461C462AA80FF26471A822E7F7BE +:10AF3000E9FD15A80FF600015422E7F7E3FD0EA87E +:10AF40000FF648011C22E7F7DDFDDFF840833A46A3 +:10AF500031462846FFF7A6FE404508BF404615D0BB +:10AF6000BDF97C01411E89B220293EBFB4F98A1186 +:10AF700089B2022909D2B4F9841189B211293EBFDC +:10AF8000B4F9861189B2032901D300202EE10021F2 +:10AF9000ADF818100591461E5E985E9000256098E9 +:10AFA000ADF8800136B26198ADF884014FF0060B20 +:10AFB0006298629034E00BFB0142491CB2F92431E3 +:10AFC00002F592729844B2F90230B2F90420994421 +:10AFD0009244B7F916209142EDDB629A00FB08F12A +:10AFE000C913118000FB09F1629AC913518000FB5B +:10AFF0000AF06299C0138880B4F98401B7F914107B +:10B0000088420BDBB4F98601022807DA0020A4F895 +:10B010008401B4F88601401CA4F88601761E36B27D +:10B02000002E00F1D980B4F986012368B4F98A11A1 +:10B030001C2212FB00F2002B03BF54232AAF13FB88 +:10B04000017353F8213002EB0308BDF98021B8F9F0 +:10B050000070B8F9049002B90021BDF9842102B949 +:10B060000020D4F88C311C2212FB00F2002B07A820 +:10B0700003BF54230DF1540C13FB01C153F82110ED +:10B0800051181C22E7F72EFD5E98ADF81C70ADF844 +:10B0900020901BFB06090020039004A8029004F5F1 +:10B0A000F870019005A8009004F5C873221D07A947 +:10B0B000484600F0F3F801281DD1B4F98A010128AF +:10B0C0000ADAB8F91810002906D4B4F9F0218A4236 +:10B0D000A4BF401CA4F88A01B4F98A0101280ADB44 +:10B0E000B8F91A10002906D4B4F9F0219142A4BF8E +:10B0F000401EA4F88A01B4F98611B4F98A012368C4 +:10B100001C2212FB01F25BB9B4F98431002B04BF9D +:10B1100000290EAF07D054212AAB11FB003001E00B +:10B1200053F820001718BDF9100001280FD1039023 +:10B1300004A8029004F5C470019005A8009004F1E1 +:10B14000C403221D3946484600F0A8F801287FF4C0 +:10B1500065AFB4F984016D1C1028B4BF401C1020E9 +:10B16000A4F8840104F592730122102105A807F0C8 +:10B17000D7FAB4F984010228A4BFB7F9161002293E +:10B1800005DA629805A90622E7F7ACFC34E74FF030 +:10B19000000AD146C846884219DA0146012007F064 +:10B1A00037FB0021B4F984219142BFF616AF1BFB97 +:10B1B0000142491CB2F9243102F592729844B2F965 +:10B1C0000230B2F904209944924409B2EAE701201E +:10B1D00007F01EFB0021FCE6B4F984010028B4F856 +:10B1E000860118BF401C6399087028B255B0BDE8AD +:10B1F000F08F2DE9F84F82468B4616463BB30AF195 +:10B20000C4070AF1040400254FF00608DFF8809017 +:10B2100015FB084000F03EF86D1C202DF8DB0024E3 +:10B2200014FB087000F036F8641C102CF8DB0027C3 +:10B2300008FB07A404F5927000F02CF804F5C87020 +:10B2400049464246E7F74EFC7F1C102FF0DB0AF51B +:10B25000C277012E03DA0020AAF884010DE0012054 +:10B26000AAF884010AF5927301221021584607F0CA +:10B2700057FA042EB4BF701E02207880BDE8F18F0B +:10B28000ED9EFFFFDEA5FFFF60E5FFFF0080FFFFF3 +:10B290002C03030849460622E7F724BC2DE9F043B6 +:10B2A00016460FF2045204468846D2E9000191B0D6 +:10B2B0009946CDE90001B8F90000012845DB1A9D47 +:10B2C00000202880BDF96C7097B93088218800F083 +:10B2D00087F8ADF800007088618800F081F8ADF85B +:10B2E0000200B088A18800F07BF8ADF8040001E00E +:10B2F000012F16D0B8F90400BDF900108142A1BF9A +:10B30000BDF902108142BDF90410814263DB47B9E7 +:10B31000B8F9001033460122204607F001FA012057 +:10B3200028800620B8F9001011FB006047F6FF7274 +:10B3300030F9063C934202BF801FB0F902309342BD +:10B3400004BFB0F90400904201D1002045E006A8F6 +:10B35000019004A8009008AB0AAA304607F007FA4B +:10B36000B8F900104FF0FF3304AA304600F05CF942 +:10B37000199D189C03A8019000950CABB8F900101A +:10B380002246304600F030F80746012304AA012186 +:10B39000204600F049F9B8F902104B460122204638 +:10B3A00007F0BEF90FB900240DE0BDF90C000290C2 +:10B3B0000CABB5F900000190009742464946304673 +:10B3C00000F064F80446B8F90010012304AA3046DE +:10B3D00000F02AF900E00024204611B0BDE8F08317 +:10B3E000401A00B207F04EBA2DE9F04190B016466F +:10B3F0001D46179F0446884608AB2A4607F06EFA9A +:10B400000021062300224B4303EB050C0DF1280E0F +:10B410003CF812C09E442EF812C0521C032AF3DBE3 +:10B42000491C0329EDDB169D042827D104AB06AA8D +:10B4300003210AA807F0A1FC08B302A8019008A8FC +:10B44000009004AB06AA03210AA807F0E7FCBDF9A7 +:10B4500008008010308002A80423B0F9021089107F +:10B4600071803246B0F904008010B08001970095D9 +:10B470004146204600F074F8042004E00020B0802B +:10B4800070803080288010B0BDE8F081F0B58FB0BA +:10B490000446084615461499BDF958201E4604294D +:10B4A0005BD1BDF95410B5F910308B42BCBFB5F972 +:10B4B0000E309942BFBFD202B5F9123013FB01F131 +:10B4C0008A424ADA05A9019107A9009109ABB5F9A9 +:10B4D00002100BAA07F04BF9B5F90A00BDF91410D8 +:10B4E0008142BFBFBDF916108142BDF918108142DB +:10B4F00033DA03A8019007A8009009ABB5F9001052 +:10B500000BAA204607F033F9BDF90E10BDF90C2047 +:10B51000BDF91000B5F90630BDF90C7001FA82F2E0 +:10B5200002FA80F2BB42BCBF8B42834215DAB5F906 +:10B530000800824211DB02A800900DABB5F90010A3 +:10B540003246204607F004FB38B1B5F90C00BDF9CE +:10B5500008108842B8BF012000DB00200FB0F0BD0A +:10B560002DE9F84F0B9F04468B461646042B3AD123 +:10B57000E05EF15EB6F90220B6F90030401AB4F987 +:10B580000210891AB4F90020D21A494302FB0211B1 +:10B5900000FB0018404607F0A9FC8146CA46012579 +:10B5A0005D4524DA062068430219B6F90430B2F981 +:10B5B0000410B2F90220005FC91AB6F90230D21A9B +:10B5C000B6F90030C01A524300FB002001FB010015 +:10B5D000804407F08BFC8145B8BF81465045D8BFF9 +:10B5E00082466D1CDCE74FF00008C246C146594652 +:10B5F000012007F00DF90146C0F3C00000EB211057 +:10B60000C8F380110A9C01EBE811484307F06EFC77 +:10B6100020808110C0F3400001FA80F02080A9EB67 +:10B620000A003880BDE8F18FF0B5002411E006264D +:10B63000002506FB040636F9157032F915C013FB18 +:10B640000C7707F30F0726F815706D1C032DF2DB3E +:10B65000641C8C42EBDBF0BD24587DDD6E59C83C88 +:10B66000094A0000AEB1E00F8B40603D5F4620F616 +:10B67000A700000041534148494B41534549000050 +:10B6800053454330393931314E534653540000004D +:10B690001000030010009000A003500040008F0431 +:10B6A0002C01F401030003008002FFFF14000600D8 +:10B6B0003000B00080044000900041032C01CC0118 +:10B6C000030003008002FFFF180008003000D000D4 +:10B6D000E0042800E00041032C01A4010300030062 +:10B6E0008002FFFF1000030010009000A003500034 +:10B6F00040008F042C01F40103000300FFFFE00170 +:10B70000140006003000400120085000F0008F04B3 +:10B71000A101180103000300FFFFE0011800080069 +:10B7200030008001C008300090018F04F40118013E +:10B7300003000300FFFFE001100003001000900071 +:10B74000A003500040008F042C01F401FF0003000F +:10B75000FFFFFFFF1400030030009000A003500023 +:10B7600040008F042C01F401FF000300FFFFFFFFE6 +:10B770001800030030009000A003500040008F0428 +:10B780002C01F401FF000300FFFFFFFF080002008F +:10B7900010009000A003500040008F042C01F40121 +:10B7A000FF000100FFFFFFFF00000000000000009D +:10B7B00030B5154604460622E7F794F9002D47BF39 +:10B7C0000020E080E580012030BD10B5002231F975 +:10B7D000123030F912401B1B48BF5B42B0F90640E3 +:10B7E000A34204DB0622E7F77DF9012010BD521CBD +:10B7F000032AECDB002010BD2DE9F0471F4682B084 +:10B80000804689469246012F25DB0A9D00243AF99D +:10B81000141001291FDB38F9140039F91420861A95 +:10B8200000AA384607F03EF8BDF9001070430F310A +:10B8300001290BDBBDF80010BDF800200F3140FAE4 +:10B8400001F10E32104100F00100401800F50041F6 +:10B85000B1F5803F01D3002005E025F81400641CF9 +:10B86000032CD4DB0120BDE8F6870000704780B5CB +:10B87000022808D0042806D0082804D0102802D0B6 +:10B880004FF4803104E04007411300EB91408113F5 +:10B89000882007F0B9FC002002BD80B5B0F5FA6F32 +:10B8A0000DD0B0F57A7F0AD0B0F5FA7F07D0FA282C +:10B8B00005D04FF07A71882007F005FC03E0C10342 +:10B8C000882007F000FC002002BD80B507F0DFFFF4 +:10B8D00008F068FE00280CD008F064FE59230FF22F +:10B8E00034220FF24821FFF7C1FFBDE8014008F004 +:10B8F00059BE09F0BFFB00280CD009F0BBFB5A234E +:10B900000FF210220FF22421FFF7B0FFBDE8014033 +:10B9100009F0B0BB09F03EFE00280CD009F03AFE59 +:10B920005B230FF2F0120FF20421FFF79FFFBDE837 +:10B93000014009F02FBE0AF0EBFA00280CD00AF003 +:10B94000E7FA5F230FF2CC120FF2E011FFF78EFF40 +:10B95000BDE801400AF0DCBA0AF088FD00280CD0EE +:10B960000AF084FD60230FF2AC120FF2C011FFF752 +:10B970007DFFBDE801400AF079BD0BF082FB002895 +:10B980000CD00BF07EFB61230FF288120FF29C119A +:10B99000FFF76CFFBDE801400BF073BB0220FFF71F +:10B9A00066FF4FF4FA70FFF778FF4FF000718820C0 +:10B9B00007F02FFCBDE8014007F0A4BF10B54FF41D +:10B9C0007A720023EDF792FD044607F081FB2046D2 +:10B9D00007F08FFB204607F0B1FB002010BD80B5BB +:10B9E0004FF47A720023EDF781FD07F094FB0020FD +:10B9F00002BD00002DE9F04784B00E4617469A4676 +:10BA0000DDF838804FF00009DDE90C45002803D04F +:10BA100022462B4607F0EBFC002E0ED0B6F90000B4 +:10BA2000009000A8B6F902104160B6F904108160D8 +:10BA300022462B46494607F0A5FC002F24D09FED57 +:10BA4000270AD7ED000A60EE800AFDEEE00ACDED90 +:10BA5000000A00A8D7ED010A60EE800AFDEEE00AB8 +:10BA6000C0ED010AD7ED020A20EE800ABDEEC00A41 +:10BA700080ED020A22462B4648F0200107F0D2FC56 +:10BA8000002801D04FF02009BAF1000F0DD0224656 +:10BA90002B460021504607F001FD002801D101206E +:10BAA00004E04FF02009002000E00020002802D030 +:10BAB00007F09EFD8146484604B0BDE8F08780B59A +:10BAC0000A4600A909F0FCFA02BD80B50A4600A9A1 +:10BAD00009F054FB02BD09F052BC00000000004216 +:10BAE00080B507F031FD002002BD80B507F01AFDDA +:10BAF000002002BD80B507F01BFD002002BD80B50F +:10BB000007F01CFD002002BD0BF033BE07F0DBBACE +:10BB100007F07ABB696E765F696E69745F696E76ED +:10BB2000656E73656E73655F61706900433A5C5062 +:10BB3000726F6A6563745C4E6F7465335F466972D9 +:10BB4000655C4E6F7465335F466972655C496E76FD +:10BB5000656E53656E73655C6D706C5C696E766561 +:10BB60006E73656E73655F6170692E63000000001F +:10BB700038B50C461546010A8DF8001000A948702A +:10BB800048782018B0F5807F02DD4FF0FF3032BDDD +:10BB900000AB02226D2168200BF0A6FF002802D026 +:10BBA0004FF0FF3032BD2B4622466F2168200BF04C +:10BBB0009BFF002802D04FF0FF3032BD002032BD85 +:10BBC00038B50C461546010A8DF8001000A94870DA +:10BBD00048782018B0F5807F02DD4FF0FF3032BD8D +:10BBE00000AB02226D2168200BF07EFF002802D0FE +:10BBF0004FF0FF3032BD2B4622466F2168200BF0FC +:10BC00008BFF002802D04FF0FF3032BD002032BD44 +:10BC10002DE9F04F93B005460E461446002E02D192 +:10BC20004FF0FF3065E00027A8460AE0B9F1010FA8 +:10BC300005DB4A4639460FF258700BF07CFF57443B +:10BC4000BFB2474544DA4FF0000907EB060BA8EBFB +:10BC50000700412802DB4FF0400A01E0A5EB070A8C +:10BC60005A46514689B23846FFF782FF002802D073 +:10BC70006FF001003DE002AA514689B23846FFF755 +:10BC80009FFF002802D06FF0020032E01FFA8AFA0C +:10BC9000524602A958460BF05BFF002804D009F178 +:10BCA000010964200BF04BFFA9F101000328CED35A +:10BCB000B9F1040FBADB9DF808000090BB5D524655 +:10BCC00039460FF2B0600BF036FF6FF0030010E062 +:10BCD000200A8DF804008DF8054001AB0222702186 +:10BCE00068200BF001FF002802D06FF0040000E094 +:10BCF000002013B0BDE8F08F90F90010012901DB9E +:10BD000000207047002901D50420704790F90110E8 +:10BD1000012901DB01207047002901D5052070476A +:10BD200090F90200012801DB02207047002801D5AC +:10BD3000062070470720704738B50446FFF7DCFF40 +:10BD40000546E01CFFF7D8FF45EAC005A01DFFF738 +:10BD5000D3FF45EA801080B232BD70B586B004468C +:10BD600005A80FF244610A68026004A80FF23C6162 +:10BD70000A68026003A80FF238610A68026002A82C +:10BD80000FF230610A68026004F0030005A9425C0A +:10BD90008DF8042001ADC4F3C102525C6A70C4F393 +:10BDA0008112515CA97004A9405C8DF8000000AEBE +:10BDB000C4F3C100405C7070C4F38110405CB0708B +:10BDC00001AA032140F22640FFF7D2FE002802D04C +:10BDD0004FF0FF304DE000AA032140F22A40FFF768 +:10BDE000C7FE002802D04FF0FF3042E0032203A933 +:10BDF00001A8E8F77FFE032202A900A8E8F77AFE6F +:10BE000060070BD59DF8040040F001008DF8040098 +:10BE10009DF8000040F001008DF80000A00607D555 +:10BE2000687840F001006870707840F00100707030 +:10BE3000E00507D5A87840F00100A870B07840F080 +:10BE40000100B07001AA032140F23F40FFF790FECD +:10BE5000002802D04FF0FF300BE000AA032140F28F +:10BE60003140FFF785FE002802D04FF0FF3000E0A0 +:10BE7000002006B070BD10B50446002238216820AD +:10BE80000BF020FE002824D10022232168200BF093 +:10BE900019FE00281DD100226A2168200BF012FE35 +:10BEA000002816D1002C17D00C226A2168200BF034 +:10BEB00009FE00280DD1C0226A2168200BF002FE85 +:10BEC000002806D10022232168200BF0FBFD00286A +:10BED00002D04FF0FF3010BD002010BD10B582B071 +:10BEE00004000CD0C0208DF80000C2208DF80100A5 +:10BEF000C4208DF80200C6208DF8030004E004225F +:10BF00008B2100A8E6F7AAF900AA042140F6C41084 +:10BF1000FFF72EFE2046401E8041C043C00FFFF7B2 +:10BF2000AAFF16BD10B582B004000CD020208DF8F9 +:10BF3000000028208DF8010030208DF80200382004 +:10BF40008DF8030004E00422A32100A8E6F786F997 +:10BF500000AA042140F6CA10FFF70AFE2046401E40 +:10BF60008041C043C00FFFF786FF16BD30B585B0D6 +:10BF700002A90FF2444238CA38C1052802D24FF054 +:10BF8000FF3021E0052190FBF1F0401E80B2014618 +:10BF9000090A8DF800108DF8010000AA022140F274 +:10BFA0001620FFF7E5FD002802D04FF0FF300BE030 +:10BFB00002AA0C2140F6ED10FFF7DAFD002802D0AE +:10BFC0004FF0FF3000E0002005B030BD80B5002804 +:10BFD00001D0022200E00022382168200BF072FD1F +:10BFE000002802D04FF0FF3002BD002002BD70B526 +:10BFF00084B0044625466D1EAD41ED43ED0F002093 +:10C000008DF8000000AEB2207070B820B070C22071 +:10C01000F07000AA04216820FFF7AAFDA3208DF884 +:10C020000000600606D5C0207070C820B070C22025 +:10C03000F07003E0A3207070B070F070200606D599 +:10C04000C4203071CC207071C620B07103E0A320F1 +:10C0500030717071B071A3208DF807008DF8080061 +:10C060008DF8090000AA0A2140F6D310FFF780FDE1 +:10C070000320044203D020208DF8000002E0D820E5 +:10C080008DF8000000AA012140F6E210FFF770FDD4 +:10C09000D8208DF8000000AA012140F60200FFF729 +:10C0A00067FD600703D50120FFF718FF02E00020BD +:10C0B000FFF714FFE00603D50120FFF733FF02E08E +:10C0C0000020FFF72FFF2846FFF7D5FE002004B021 +:10C0D00070BD2DE9F0418CB004460D46164600AB0C +:10C0E0000222722168200BF017FD002802D04FF0C9 +:10C0F000FF30E3E09DF800009DF8011041EA0028C0 +:10C10000139FB8F11C0F04D2002038704FF0FF309D +:10C11000D4E0B8F5007F19DD01AB02223A21682096 +:10C120000BF0FAFC002803D00FF298200BF003FD6F +:10C130009DF80400C00609D50120FFF79CFE0FF210 +:10C14000A0200BF0F8FC6FF00100B7E001AB1C225F +:10C15000742168200BF0E0FC002806D00FF2A0202C +:10C160000BF0E9FC4FF0FF30A8E01C2098FBF0F04A +:10C17000401E387001A89DF804104278120442EA6B +:10C180000161827841EA0221C2781143316001796C +:10C190004279120442EA0161827941EA02219DF862 +:10C1A0000B2011437160017A9DF80D20120442EAC0 +:10C1B00001619DF80E2041EA02219DF80F201143F4 +:10C1C000B160017B9DF81120120442EA01619DF8E3 +:10C1D000122041EA02219DF813201143F160017CF5 +:10C1E0009DF8152042EA012129809DF816109DF83E +:10C1F000172042EA012169809DF818109DF8192046 +:10C2000042EA0121A9809DF81A109DF81B2042EAFC +:10C2100001212180007E9DF81D1041EA00206080F0 +:10C220009DF81E009DF81F1041EA0020A08000200C +:10C2300032E000EB4001454A8B1893F9061093F960 +:10C24000052093F90430B4F9006013FB06F6B4F945 +:10C25000027012FB0766B4F9047011FB0766B5F9AA +:10C26000007013FB07F3B5F9027012FB0732B5F942 +:10C27000043011FB0321B6F5004F01DB47F6FF76D2 +:10C28000B1F5004F01DB47F6FF7108AA22F81060F4 +:10C290000AAA22F81010401C0328CADB00200AE07A +:10C2A00008A931F8101024F810100AA931F810105C +:10C2B00025F81010401C0328F2DB00200CB0BDE86C +:10C2C000F08138B5040002D14FF0FF3032BD1F4D70 +:10C2D0002878002801D0002032BD09222146281DDF +:10C2E000E8F708FC00AB02226B2168200BF014FC7D +:10C2F0009DF80000400604D500226B2168200BF059 +:10C30000E1FBC8234FF480620FF2381140F6613030 +:10C31000FFF77EFC002818D12046FFF70DFDFFF740 +:10C320001CFD002802D06FF0060032BD0020FFF790 +:10C330004DFE002802D06FF0070032BD01202870AA +:10C340000FF2D8000BF0F7FB002032BD5C7A002022 +:10C3500010B50C460021002800D0C4210846FFF784 +:10C3600046FE002805D12046FFF700FE002800D138 +:10C37000002010BD0A444D505F45525228256429C3 +:10C38000282564292825642928256429200A0000F5 +:10C390000A444D505F545249414C282564292825B0 +:10C3A0006429200A000000004CCD6C000CC92C0050 +:10C3B0003656760026466600FEF2ABC4AAF1DFDFF1 +:10C3C000BBAFDFDF0A5B444D505D204649464F203E +:10C3D000737461747573206572726F720A00000065 +:10C3E0000A5B444D505D202D204649464F206F7614 +:10C3F0006572666C6F77206572726F720A0000005A +:10C400000A5B444D505D202D204649464F20726501 +:10C410006164206572726F720A0000005B444D50C7 +:10C420005D4669726D77617265206C6F61646564E9 +:10C43000207375636365737366756C6C7921212154 +:10C44000210A00000000700000000024000000022B +:10C450000003000000650054FFEF0000FA80000BAD +:10C4600012820001200030C30E8C8CE914D54002EA +:10C4700013710F8E3883F8833000F883258EF8838C +:10C480003000F883FFFFFFFF0FFEA9D62400040051 +:10C490001A8279A10000003CFFFF0000001000009C +:10C4A00038836FA2003E03304000000000B2BAC2E1 +:10C4B0003E8000002000000000000000400000005E +:10C4C00060000000000C0000000C186E00000692D6 +:10C4D0000A16C0DF00000000000000020000000497 +:10C4E0000000000700000000FFFF0B2B00001657A4 +:10C4F000000003590000000000001DFA00026C1D3E +:10C5000000000000400000000000000000000000EB +:10C510000000000000000000001942B5000039A230 +:10C520000000B365D90E9FC91DCF4C343000000008 +:10C53000500000003BB67AE80064000000C800002C +:10C5400000000000000000000000000000000000EB +:10C5500000000000000000000000000000000000DB +:10C5600000000000000100000000000000000000CA +:10C5700000000000000010720000004000000000F9 +:10C580000000000005DC00000000000000000000CA +:10C590000000000000000000000002580000000041 +:10C5A000000000C8000000000000000000010000C2 +:10C5B0000002000000000000000000000000000079 +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000000000004B +:10C5F0000000100040000000000000060000B26AC9 +:10C60000000000000000000000000000000000002A +:10C61000000000000000000000000000000000001A +:10C6200000000000000000250000000016A000002F +:10C630000000100000001000002F0000000001F4B6 +:10C640000000100000280000FFFF4581FFFFFA7284 +:10C650000000000000000000004400050005BAC60C +:10C66000004778A200000001000000000000060062 +:10C67000000000140000254D002F706D000005AE75 +:10C68000000C02D0000000000000000000000000CC +:10C6900000000000001B000000000000000000007F +:10C6A000000000000064000000080000000000001E +:10C6B000000000000000000000000000000000007A +:10C6C000000000000000000000000000000000006A +:10C6D000000000000000000000000000000000005A +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C7000000000000001B000000000000000000000E +:10C71000000E000E00000AC70004000000000032F6 +:10C72000FFFFFF9C00000B2B000000020000000137 +:10C7300000000064FFE500000000000000000000B1 +:10C7400000000000000000010000000000010000E7 +:10C750000000000000018000000180000001800056 +:10C76000002426D300000000000000000006001096 +:10C770000096003C000000000000000000000000E7 +:10C78000000000000C0A4E68CDCF7709501667599B +:10C79000C619CE820000000000000000000000006A +:10C7A00000000000000000000000000017D7840017 +:10C7B000030000000000000000000000C7938F9DF0 +:10C7C0001E1B1C19000000000000000000000000FB +:10C7D00000000000000000000000000002031885B7 +:10C7E0000000400000000003000000030000000003 +:10C7F00000000000400000000000000000000000F9 +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000000000000018 +:10C820000000000000000000677DDF7E72902E5542 +:10C830004CF6E68800000000000000000000000048 +:10C8400000000000D8DCB4B8B0D8B9ABF3F8FAB344 +:10C85000B7BB8E9EAEF132F51BF1B4B8B08097F144 +:10C86000A9DFDFDFAADFDFDFF2AAC5CDC7A90CC9C8 +:10C870002C97F1A989264666B28999A92D557DB0D4 +:10C880008AA896365676F1BAA3B4B280C0B8A897F3 +:10C8900011B28398BAA3F0240844106418B2B9B452 +:10C8A0009883F1A329557DBAB5B1A38393F00028ED +:10C8B00050F5B2B6AA839328547CF1B9A382936150 +:10C8C000BAA2DADEDFDB819AB9AEF5606870F1DA20 +:10C8D000BAA2DFD9BAA2FAB9A38292DB31BAA2D93D +:10C8E000BAA2F8DFB9A3A3A3A3A3B8A2DFDFDFBA7C +:10C8F000A0DFDFDFD8F1B9A1B280C0B089A0C3C585 +:10C90000C7B181B497A011B590A1F0240844106478 +:10C9100018F19081A02D553DF2A5D0F8F9D1D9F8A4 +:10C92000F180A2C3C5C7D8F3A2DEF18290A42D5531 +:10C930007D8494F5A120D9F3A2F8D8F5A140D9F3CC +:10C94000A2F8D8F5A160D9F3A2F8D8F2B9A2F8F903 +:10C95000D1D9A6DEA5D0DEF41AD8F28696A109D1E7 +:10C96000DBF411D8F211D1DBF41CD8F219D1DBF4CD +:10C9700014D8F410D8F3A2F8F9D1DAF2A6F8F1A598 +:10C98000DED8F4A11616D8F1A5F8A1859509D9F13C +:10C99000A5DEF2A5D0DEA6F8D8F4A109D8F3A2F856 +:10C9A000F9D1F4D90819DA42F2A2DEF40BD8F1A5D4 +:10C9B000F8A1859519DAF407D8F2A6DEA5D0DED85D +:10C9C000F1B8AAB38DB4980D355DB2B6BAAF8C96F6 +:10C9D000198F9FA70E161EB49AB8AA872C547CBA3A +:10C9E000A4B08AB691325676B28494A4C808CDD841 +:10C9F000B8B4B0F19982A82D557D98A80E161EA244 +:10CA00002C547C92A4F02C5078F184A898C4CDFCCE +:10CA1000D80DDBA8FC2DF3D9BAA6F8DABAA6DED871 +:10CA2000BAB2B68696A6D0F3C841DAA6C8F8D8B08E +:10CA3000B4B882A892F52C548898F135D9F418D856 +:10CA4000F1A2D0F8F9A884D9C7DFF8F883C5DADFF6 +:10CA500069DF83C1D8F40114F1A8824EA884F311D0 +:10CA6000D182F5D992289788F109F41C1CD884A8A2 +:10CA7000F3C0F9D1D99782F129F40DD8F3F9F9D19E +:10CA8000D982F4C203D8DEDF1AD8F1A2FAF9A88459 +:10CA900098D9C7DFF8F8F883C7DADF69DFF883C30E +:10CAA000D8F40114F198A8822EA884F311D182F54C +:10CAB000D992509788F109F41CD884A8F3C0F8F9EA +:10CAC000D1D99782F149F40DD8F3F9F9D1D982F48B +:10CAD000C403D8DEDFD8F1AD8898CCA809F9D98293 +:10CAE00092A8F57CF1883ACF944A6E98DB6931DAE6 +:10CAF000ADF2DEF9D88795A8F221D1DAA5F9F417BD +:10CB0000D9F1AE8ED0C0C3AE82C684C3A88595C805 +:10CB1000A588F2C0F1F4010EF18E9EA8C63E56F52E +:10CB200054F18872F40115F19845856EF58E9E04D6 +:10CB300088F142985A8E9E068869F4011CF1981E6D +:10CB40001108D0F504F11E970202983625DBF9D9B9 +:10CB500085A5F3C1DA85A5F3DFD88595A8F309DAB1 +:10CB6000A5FAD88292A8F578F1881A849F26889829 +:10CB700021DAF41DF3D8879F39D1AFD9DFDFFBF974 +:10CB8000F40CF3D8FAD0F8DAF9F9D0DFD9F9D8F4FF +:10CB90000BD8F3879F39D1AFD9DFDFF41DF3D8FA73 +:10CBA000FCA869F9F9AFD0DADEFAD9F88F9FA8F1BD +:10CBB000CCF398DB45D9AFDFD0F8D8F18F9FA8CA66 +:10CBC000F38809DAAF8FCBF8D8F2AD978D0CD9A5E1 +:10CBD000DFF9BAA6F3FAF412F2D8950DD1D9BAA6B4 +:10CBE000F3FADAA5F2C1BAA6F3DFD8F1BAB2B68683 +:10CBF00096A6D0CAF349DAA6CBF8D8B0B4B8D8AD67 +:10CC000084F2C0DFF18FCBC3A8B2B68696C8C1CB81 +:10CC1000C3F3B0B48898A821DB718D9D71859521EF +:10CC2000D9ADF2FAD88597A828D9F408D8F28D2979 +:10CC3000DAF405D9F285A4C2F2D8A88D9401D1D92D +:10CC4000F411F2D88721D8F40AD8F28498A8C80140 +:10CC5000D1D9F411D8F3A4C8BBAFD0F2DEF8F8F8FC +:10CC6000F8F8F8F8F8D8F1D8B8B4B09786A8319B9E +:10CC7000069907AB9728889BF00C201440B0B4B8F5 +:10CC8000F0A88A9A285078B79BA82951792470591E +:10CC9000446938644831F1BBAB88002C547CF0B354 +:10CCA0008BB8A804285078F1B088B49726A8599872 +:10CCB000BBABB38B02264666B0B8F08A9CA829515C +:10CCC000798B2951798A2470598B2058718A44694B +:10CCD000388B3940688A6448318B30496088F1ACC0 +:10CCE000002C547CF08CA804285078F1889726A852 +:10CCF0005998AC8C02264666F0899CA82951792463 +:10CD00007059446938644831A98809205970AB11B9 +:10CD1000384069A8193148608CA83C415C207C00EF +:10CD2000F187981986A86E767EA999882D557DD8A9 +:10CD3000B1B5B9A3DFDFDFAED0DFAAD0DEF2ABF84A +:10CD4000F9D9B087C4AAF1DFDFBBAFDFDFB9D8B153 +:10CD5000F1A38EC6DFB084F2C8F8F9D9DED8938586 +:10CD6000F14AB183A308B5839A0810B79F10D8F190 +:10CD7000B0BAAEB08AC2B2B68E9EF1FBD9F41DD85D +:10CD8000F9D90CF1D8F8F8AD61D9AEFBD8F40CF1B3 +:10CD9000D8F8F8AD19D9AEFBDFD8F416F1D8F8AD54 +:10CDA0008D61D9F4F4ACF59C9C8DDF2BBAB6AEFA4C +:10CDB000F8F40BD8F1AED0F8AD51DAAEFAF8F1D8FC +:10CDC000B9B1B6A3839C08B9B1839AB5AAC0FD30A6 +:10CDD00083B79F10B58B93F20202D1ABDADED8F1A4 +:10CDE000B080BAABC0C3B284C1C3D8F3B9ACDED88B +:10CDF000B1B9F38BA391B609B4D9B9ACF8ABDEB035 +:10CE0000879CB9A3DDF1B38B8B8B8B8BB087A3A3EE +:10CE1000A3A3B080B490F2A3A3A3A3A3A3A3A3A3AB +:10CE2000A3F1B087B59AA3F39BA3A3DCBAACDFB997 +:10CE3000A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3D88D +:10CE4000F3B9ACF8F9D1D9F41BD8F3FAF9D1D9F484 +:10CE50001BD8F2B1B5B98CACF8F9D1D9C2D8F2F976 +:10CE6000D9DEF40913DAF2DDC6DCF43111D8F2AB05 +:10CE7000FA8B9BA349D9F40706DAF2B9ABDFFED8E7 +:10CE8000F1BBB3B7AAF9DAFFD9809AAA28B480987F +:10CE9000A720B79787A86688F07951F1902C870C66 +:10CEA000A781976293F071716085940129517990FF +:10CEB000A5F1284C6C870C95188578A38390284C95 +:10CEC0006C886CD8F3A28200F210A8921980A2F2AA +:10CED000D926D8F188A84DD948D896A83980D93C08 +:10CEE000D89580A839A68698D92CDA87A72CD8A8F7 +:10CEF000899519A980D938D8A88939A980DA3CD868 +:10CF0000A82EA83990D90CD8A8953198D90CD8A8B2 +:10CF100009D9FFD801DAFFD89539A9DA26FFD890C8 +:10CF2000A80D8999A810809821DA2ED88999A8315E +:10CF300080DA2ED8A886963180DA2ED8A88731805C +:10CF4000DA2ED8A88292F34180F1D92ED8A882F3A4 +:10CF50001980F1D92ED882ACF3C0A28022F1A62E7E +:10CF6000A72EA92298A829DAACDEFFD8A2F22AF1CE +:10CF7000A92E8292A8F23180A696F1D900F1F1F1A2 +:10CF8000AC8C9C0C30ACDED0DEFFD88C9CACD010CE +:10CF9000ACDE8092A2F24C82A8F1CAF235F19688FA +:10CFA000A6D900D8FF00000010B50024E5F77CF9F1 +:10CFB000002800D00124204610BD000038B5002014 +:10CFC0000246DFF8A44403E004EB80018A63401CBE +:10CFD0000928F9DB1046E066A066642020606060E6 +:10CFE000DFF88804A060B5EE000A84ED030A84ED42 +:10CFF000040A84ED050A84ED060A84ED070ADFF8C9 +:10D000007004206205206062A062104603E004EB19 +:10D0100080018A63401C0928F9DB10466067A0671D +:10D02000E06704F180057C2201462846E5F716F901 +:10D030000C22002104F12C00E5F710F9256731BD21 +:10D040002DE9F04106460F4690461C46DFF818547D +:10D0500085ED0B0AF0EE601AF1EE611AC5ED0C1ABF +:10D06000B1EE410A85ED0D0A0A2205F12C01286F67 +:10D0700000F004FA00F040F8022801D004280ED194 +:10D08000A86F401CA867142198FBF1F1884202DBCD +:10D090000020E8670CE0E86F401CE86708E008281B +:10D0A00001D0102804D1E86F401CE8670020A86771 +:10D0B000142096FBF0F0A96F814201DB0120686724 +:10D0C000142097FBF0F0E96F814201DB02206867D2 +:10D0D000686F012803D0022801D000206867696FBB +:10D0E000080005D021700021A967E967696701E0A0 +:10D0F00000212170BDE8F0812DE9F8432DED048B6E +:10D100009FED9F8AD84C002020666066E06E461C2A +:10D11000E666A76ED74D0A2F36DAD4F870900A2249 +:10D120000021484600F0C3F980460A220121484602 +:10D1300000F0BDF904EB870106EB860292008A63DA +:10D14000012F1FDB98ED000AD0ED000A30EE600AD7 +:10D15000D8ED010A90ED011A70EEC10A98ED021A9D +:10D16000D0ED021A31EE611A05EB870020EE000ABD +:10D1700000EEA00A01EE010A80ED060A8A6B496BF7 +:10D18000511AC163781CA0660A2E01DA03202867B1 +:10D19000A06E0A28C0F2DD80401EA0660A22114659 +:10D1A000206F04F0B7FC85ED040A0A221146206FB7 +:10D1B00004F0CEFC85ED050A0A221146206F04F02A +:10D1C000E5FC85ED060A002006E005EB8001D1EDC7 +:10D1D000070A38EE208A401C0928F6DBD5ED040A40 +:10D1E000B2EE041AC0EE818AD5ED050A80EE819A6E +:10D1F000F2EE040AC0EE209AE06E0A2805DBC5EDC7 +:10D20000018A85ED029AC5ED039A00260FE00A22F5 +:10D21000C6F1090109B2206F00F049F995ED031A32 +:10D22000D5ED020A95ED010A00F0ACF8761C0A2E45 +:10D23000EDDB606A216E88423ADAA06B297800291A +:10D2400008D1686601212970C5ED018A85ED029A31 +:10D25000C5ED039AA16A626E91420CDA69780029E1 +:10D260000BD1A86601216970C5ED018A85ED029A8E +:10D27000C5ED039A01E0002169702168AA6E821A47 +:10D28000914208D26A78002A05D00020A870E87080 +:10D29000012028674CE06A6E801A814246D22878C5 +:10D2A000002843D00020A870E870022028673FE0E3 +:10D2B000C5ED018A85ED029AC5ED039A002028701C +:10D2C0006870A878002801D10120A8709FED640A39 +:10D2D00028EE000AB5EE400AF1EE10FA03DC9FEDED +:10D2E000610A28EE000AD4ED020AB3EE041A60EED9 +:10D2F000810AF4EE400AF1EE10FA07D5E87800282A +:10D3000006D1A06BE8660120E87001E00020E8701B +:10D310006068A0F5FA70A16BEA6E891A884205D29E +:10D32000E878002802D00420286701E0032028675D +:10D3300000200CE004EB8001CA6B8A63082805DA40 +:10D3400005EB80010A6ACA614A6C0A64401C09281C +:10D35000F0DB286F012806D00DD3032807D004D3B3 +:10D36000042806D007E0022006E0042004E008209C +:10D3700002E0102000E00020BDEC048BBDE8F28349 +:10D3800000000000D0ED001A31EEC00A3A4981EDEC +:10D39000000AD0ED011A71EEE00AC1ED010AD0EDEC +:10D3A000021A31EEC11A81ED021AB5EE400AF1EE11 +:10D3B00010FA03D5B1EE400A81ED000AF5EE400AFD +:10D3C000F1EE10FA03D5B1EE600A81ED010AB5EE77 +:10D3D000401AF1EE10FA03D5B1EE410A81ED020ACE +:10D3E00091ED000A2048D0ED030AB4EE600AF1EE98 +:10D3F00010FA13D5D1ED010A90ED041AF4EE410AAA +:10D40000F1EE10FA0AD5D1ED020A90ED051AF4EE0C +:10D41000410AF1EE10FA01D5012200E00022D0ED20 +:10D42000060AB4EE600AF1EE10FA14D591ED010A85 +:10D43000D0ED070AB4EE600AF1EE10FA0BD591EDCB +:10D44000020AD0ED080AB4EE600AF1EE10FA02D535 +:10D45000416E491C4166016E51180166704700001B +:10D4600000007A4400007AC47008012000004041A6 +:10D470003333B33ECC000120C826012003889342F9 +:10D4800001D30023038003885B1C03809BB293427B +:10D4900001D300220280028802EB420300EB8300EA +:10D4A000001D91EC030A80EC030A01207047B0F9DB +:10D4B0000030591A09B2002901D511FA82F109B2D6 +:10D4C00001EB410200EB8200001D70472DE9F041A5 +:10D4D000DFF8B86B542200213046E4F7BFFEDFF8D6 +:10D4E000B04B0C2200212046E4F7B8FEDFF8A45B25 +:10D4F0001C22002105F11800E4F7B0FE1C220021D7 +:10D5000006F15400E4F7AAFE0020E0614FF47A72BD +:10D510000146DFF8840BE4F7A1FE4FF47A72002194 +:10D52000DFF8780BE4F79AFE002020626062DFF8F3 +:10D53000706B7064B064A062E062F0642063DFF836 +:10D54000647BB8616063A063E06301202064002015 +:10D55000306570654FF0FF306064A0640020E064C7 +:10D56000B065F861F065386230667066B0661C229E +:10D57000014605F13400E4F771FE0020F0667063A7 +:10D58000082201463046E4F769FE2C22002106F10C +:10D590000800E4F763FE42F21070308470840020CB +:10D5A0007061022030830020B06038800C22014678 +:10D5B0002846E4F753FEDFF8600C6860DFF85C0C87 +:10D5C00028604FF0FF302881002020732065B06371 +:10D5D000E0813C22014607F12400E4F73FFE0020F1 +:10D5E0003866306778807866F063B067706760652A +:10D5F00006F184082C2206F108014046E7F77AFA82 +:10D60000C4F858800020E065206638676066786757 +:10D61000B867E066A066A067606720670120A8651C +:10D6200068652865002068662866E8652822014646 +:10D63000DFF8EC0BE4F712FE0020F8670C2201463D +:10D6400004F11000E4F70AFE0C22002105F10C00A1 +:10D65000E4F704FE1022002107F10800E4F7FEFDC4 +:10D660001022002106F1B000E4F7F8FD0620A6F82C +:10D6700040000020F880C6F88000F067E067DFF81F +:10D68000A80DB8660020F866BDE8F08110B584B03A +:10D69000DFF8004A0C22214600A8E7F72BFAFFF733 +:10D6A00015FF0C2200A92046E7F724FA1FBD000051 +:10D6B0002DE9F84F2DED0C8B84B0002002908246AE +:10D6C0000446DFF8E05995ED1E8AD5ED078AC5EDD1 +:10D6D0001E8ADFF8CC69D6ED169AC5ED079ADFF8F9 +:10D6E000B07997ED139AB8EE490ADFEDDC0A80EEC7 +:10D6F00080AA86ED16AAD7F834B0786CABEB0000A0 +:10D70000FA30FA21B0FBF1F1FA2202FB11081FFAFC +:10D7100088F8B8F14C0F02DA386C012804D12046A1 +:10D72000F0630220A88091E1D6F85490B9F1040F7B +:10D7300030D3F4EE698AF1EE10FA2BD5F4EE4A9A62 +:10D74000F1EE10FA26D51AEE100AEAF783FE024629 +:10D750000B46CDE9002318EE900AEAF77BFEDFF8CE +:10D76000C82ADFF8C83AE5F7D9FADDE90023E5F77A +:10D77000B3FB0FD29FEDBA0AB4EE40AAF1EE10FA55 +:10D7800008DBC6ED169AC5ED078A85ED1E8A0320D3 +:10D79000A880B7E1D6ED11AAC6ED12AA96ED13BA8C +:10D7A00087ED0CBA404600EE100AB8EE400AD7EDFD +:10D7B000090AC0EE800A97ED0B1A81EE001A204686 +:10D7C0007064F064786C214621E0401C80B2FA2835 +:10D7D00000D12046DFF8C02802EB8002D2ED001A0B +:10D7E00071EEE01A96ED112A01EEA12A86ED112ABA +:10D7F000DFF8A82802EB8002D2ED001A71EEC11A00 +:10D8000096ED132A01EEA12A86ED132A491C89B24E +:10D810004145DADBD6ED110AC0EE80BAC6ED11BA89 +:10D82000D6ED130A80EE80CA86ED13CAD5ED1DCA67 +:10D83000C5ED1CCA97ED170AD7ED180A30EE60DA6D +:10D8400085ED1DDA404600F037FC012802D1204664 +:10D85000F063FBE0B9F1000F05D1B08F052802DBC2 +:10D8600004465046B087B9F1000F05D1F08F052866 +:10D8700002DB04195046F08719FA84F0002830D1F1 +:10D880009FEDC08B3CEE0B0A10EE100AEAF7E2FDAA +:10D8900053EC182BE5F742FA5246DFF8B43BE5F7B4 +:10D8A0001BFB16D33BEEAA0A10EE100AEAF7D2FDD4 +:10D8B00053EC182BE5F732FA5246DFF8983BE5F7C0 +:10D8C0000BFB06D3B3EE040AB4EE40DAF1EE10FA25 +:10D8D00007D5B08F401CB087C7F848B00620A88095 +:10D8E000B4E0B08F002802D004195046B08719FA6E +:10D8F00084F0002819D1B7EE000AB4EE40AAF1EE88 +:10D9000010FA02D50720A880A0E09FEDA00AB4EE8F +:10D9100040AAF1EE10FA05DBF08F401CF0870820DA +:10D92000A88093E05046F08703E0F08F041950463A +:10D93000F087B0EE6B1AF0EE4C0AB0EE4A0A4146A0 +:10D94000A4B2204600F074FC012808D1C6ED169A56 +:10D9500086ED13BAC5ED1DCAC6ED11AA76E09FED9E +:10D960008C0AB4EE40AAF1EE10FA02DBDFF8E80A06 +:10D97000B0655046B087B9F1000F0ED196ED160A8A +:10D9800086ED170A85ED080AC7ED0ABA85ED06CAC5 +:10D9900087ED19DA00F012FB4DE0B6EE008A48463A +:10D9A00000F00CFB012818D196ED160AF0EE000AE3 +:10D9B00020EE200A86ED160A4FF0010A6BEE880A67 +:10D9C000C6ED110A2CEE081A86ED131AC6ED120ADE +:10D9D00087ED0C1A85ED070A641C96ED160AD5ED45 +:10D9E000070A70EE200A60EE880AC6ED170A96ED67 +:10D9F000111AD6ED121A31EE211A21EE081A87ED0E +:10DA00000A1A96ED131AD7ED0C1A31EE211A21EEEF +:10DA1000081A85ED061AB4EE600AF1EE10FA02D487 +:10DA2000BAF1010F01D185ED080A3CEE8D0A20EE16 +:10DA3000080A87ED190A204680B200F0ABF800F022 +:10DA400067F8C7F848B0012002907865DFF8D00782 +:10DA50000299012906D10121018005E000007A44E4 +:10DA600001004040A9880180A4B2446080ED029A80 +:10DA7000A0F80C80718FC181716C0161F16C416102 +:10DA8000B16D8161B96AC161A9690162F16D4162DB +:10DA9000C7F844B00020F8647862F8623864102255 +:10DAA000014605F10800E4F7D9FB0C22002107F13B +:10DAB0001000E4F7D3FB0020E867F08A00281CD1AF +:10DAC000D6F8800000280DD0306DF168401AB6F805 +:10DAD0004010B0EB510F02DB002030830DE001203D +:10DAE00030830AE0B08FF18F11FA80F0032802DB57 +:10DAF0000120308301E002203083DFF82C09A86682 +:10DB00000020E866029804B0BDEC0C8BBDE8F28FF3 +:10DB100038B50025DFF888450120C4F8800000F002 +:10DB200069FCA060606DB4F84010884215D3206D88 +:10DB3000E060206E6062606EA062A06EE062E06DE8 +:10DB40002061606F2063A08EA082E08EE0820120C1 +:10DB5000E06705460020C4F88000284632BDDFF8A3 +:10DB60004005C168016500214165416102210183D1 +:10DB700000214163816A4166016B81670021C0F821 +:10DB800080107047000000000000E03F676616400C +:10DB90000100A0402DE9F14F2DED088B4FF0000C56 +:10DBA00060460146DFF8EC44DFF8F464BDF820205D +:10DBB000002A1ED0376D7A1E02F0070207F0070315 +:10DBC0009B5D9355D6F85480A8F101020723B2FB60 +:10DBD000F3F3C3EBC303D21A04EB82020723B8FBAF +:10DBE000F3F3C3EBC303A8EB030304EB83035B6B07 +:10DBF000536396ED178AB0EE040AB4EE408AF1EE54 +:10DC000010FA08D496ED1C0AF0EE080AB4EE600A89 +:10DC1000F1EE10FA02D50322B28601E00422B286A8 +:10DC2000376D07F0070EB6F834800EF80680082529 +:10DC3000724607E0042B01D10CF1010C521E00D5F5 +:10DC400008326D1E0ED09357032B01D1491C02E000 +:10DC5000042B00D1401C062DF0DB032BEAD1ACF1E4 +:10DC6000010CEBE7F28EDFF83C341A8080B281467B +:10DC700089B209EB010303EBD37A4FEA6A0A8A45BA +:10DC800009DBCA4504DA4FF0040CA6F836C013E0ED +:10DC9000BCF1000F04D54FF0030CA6F836C00BE022 +:10DCA000BCF1010F04DB4FF0040CA6F836C003E012 +:10DCB0001EF906C0A6F836C0B6F83690B9F1040FC2 +:10DCC00000D008464A450AD000203083F08A002858 +:10DCD0001DD1706D04281AD30120308317E0052B65 +:10DCE00010DB00EE100AB8EE400A00EE903AF8EEB3 +:10DCF000E00A80EE200AF6EE080AB4EE600AF1EEC1 +:10DD000010FA02D50120308301E002203083F0EECA +:10DD1000488AB7EE080AB4EE408AF1EE10FA02D54E +:10DD2000F7EE088A08E09FEDA20AB4EE408AF1EE11 +:10DD300010FA01DBF1EE028A6068EAF78BFB41EC36 +:10DD4000190B18EE900AEAF785FB41EC1A0B9FEDD0 +:10DD500099BBB8F1030F53EC1A2B2BD1DFF8F80A5B +:10DD6000DFF8F81AE4F7DAFFDFF8F42ADFF8F43A1C +:10DD7000E5F7E6F882468B4653EC1A2BDFF8E80A03 +:10DD8000DFF8E81AE4F7CAFF53EC1A2BE4F7C6FFF2 +:10DD900002460B4650465946E4F700FF53EC192B58 +:10DDA000E4F7BCFF53EC1B2BE4F7B8FFEAF77AFB70 +:10DDB000306628E0DFF8B80ADFF8B81AE4F7AEFFFB +:10DDC000DFF8B42ADFF8B43AE5F7BAF882468B46B2 +:10DDD00053EC1A2BDFF8A80ADFF8A81AE4F79EFF25 +:10DDE00053EC1A2BE4F79AFF52465B46E5F7A8F886 +:10DDF00053EC192BE4F792FF53EC1B2BE4F78EFF47 +:10DE0000EAF750FB3066B4F90800022807D196ED16 +:10DE1000180ADFEDA50A20EE200A86ED180A96ED15 +:10DE2000189A96ED190A70EE099AC6ED199A29EE1C +:10DE3000280ADFED9E0A20EE200A86ED1A0AD6F89F +:10DE400054800720B8FBF0F0C0EBC000A8EB000046 +:10DE500004EB800080ED0D0A0020F066B8F1070F9A +:10DE600020D208E004EB850090ED0D1A70EE810AD7 +:10DE7000C6ED1B0A6D1CD6ED1B0AADB2A845F1D24A +:10DE800001EE105AB8EE411AC0EE810AC6ED1B0A27 +:10DE900014E004EB800090ED0D1A70EE810AC6EDDF +:10DEA0001B0A6D1CD6ED1B0AADB228460728F0DB15 +:10DEB000B1EE0C1AC0EE810AC6ED1B0A10EE100A74 +:10DEC000EAF7C8FA41EC100B9FED79ABB9F1040FFA +:10DED00053EC102BDFF8600C0BD1DFF8601CE4F77B +:10DEE0001DFF53EC1A2BE5F72BF8EAF7DBFAB067C6 +:10DEF0000AE0DFF84C1CE4F711FF53EC1A2BE5F7AE +:10DF00001FF8EAF7CFFAB067B06FEAF7A3FADFF8C5 +:10DF1000342CDFF8343CE4F701FF82468B4620685E +:10DF2000EAF798FA52465B46E4F7F8FE04460D46D7 +:10DF300018EE100AEAF78EFA0022DFF8103CE4F738 +:10DF4000EDFE02460B460020DFF8041CE5F76CF8F6 +:10DF500022462B46E4F7E2FEEAF7A4FA00EE100AA6 +:10DF600086ED1E0AD6ED1D0A70EE800AC6ED1D0A6A +:10DF7000781C306508F101017165BDF82020002A88 +:10DF800011D01018306550187065BDF8200001EEF2 +:10DF9000100AB8EE411A41EE099AC6ED199A41EEFF +:10DFA000000AC6ED1D0ABDEC088BBDE8F18F00002C +:10DFB00001009040B8ED221C1818783FF8B52DEDFF +:10DFC000028B0027002857D0354E96ED168AF06D4B +:10DFD000EAF740FA4FF06632DFF8783BE4F79EFE4E +:10DFE00002460B4614461D4618EE100AEAF732FAAE +:10DFF00022462B46E4F770FF04D2708F022801DB23 +:10E00000012718E09FED7F0AB4EE408AF1EE10FA86 +:10E0100011D5244890ED050ADFED7B0AB4EE600AC5 +:10E02000F1EE10FA07DBDFED790AB4EE600AF1EEEB +:10E0300010FA00D50127012F1ED196ED1C0AF0EE33 +:10E04000000AB4EE600AF1EE10FA0AD59FED700AEC +:10E05000B4EE408AF1EE10FA03DB708F022800DB89 +:10E060000027104890ED1A0ADFED6A0AB4EE600A44 +:10E07000F1EE10FA00D500270A484069DFF8881D44 +:10E0800008603846BDEC028BF2BD00004418012048 +:10E0900074150120B4180120D8DC0020C0E0002055 +:10E0A000280B0120F41501201EC47E3F00007042A1 +:10E0B0000000000000000C40F8B52DED048B064672 +:10E0C0000024DFF8C07CDFF8C05CE88E03281DDA8E +:10E0D00095ED160ADFED4E0AB4EE600AF1EE10FA85 +:10E0E00014DB95ED110AF2EE040AB4EE600AF1EECB +:10E0F00010FA0BD595ED130ADFED4A0AB4EE600A6B +:10E10000F1EE10FA02D50420B880012495ED138AAF +:10E110009FEDB69BDFF89C0C90ED0C0A38EE000AE0 +:10E1200010EE100AEAF796F953EC192BE4F7F6FD16 +:10E130000022DFF8AC3CE4F7CFFE21D3D5ED118A05 +:10E1400095ED120A38EE800A10EE100AEAF782F90D +:10E1500053EC192BE4F7E2FD0022DFF89C3CE4F7D6 +:10E16000BBFE0DD3B3EE040AB4EE408AF1EE10FA12 +:10E1700006D4B1EE040AF4EE408AF1EE10FA02D5AC +:10E180000520B880012495ED160ADFEDA80AB4EE4B +:10E19000600AF1EE10FA29DB97ED040AD7ED050AC3 +:10E1A00080EE200ADFEDA20AB4EE600AF1EE10FA6A +:10E1B0001CDB00EE106AB8EE400AD7ED020AC0EE92 +:10E1C000800AB6EE001AF4EE410AF1EE10FA0DD50F +:10E1D000D7ED030A80EE800AF6EE000AB4EE600A7C +:10E1E000F1EE10FA02D51520B8800124102207F1B3 +:10E1F000080105F1B000E6F77DFC2046BDEC048B7C +:10E20000F2BD00009A99993F010020420000C842E7 +:10E2100001000040CDCC4C3F00003543000090424F +:10E22000CC23012000002042CDCCCCCCCCCCFC3F78 +:10E230002DE9F8432DED028B08EE101A0026DFF8C9 +:10E24000484B616D4018DFF86C5B02281AD394EDDF +:10E25000160ADFED780AB4EE600AF1EE10FA11DB6F +:10E2600095ED0C0AD4ED130A80EE200ADFED720A58 +:10E27000B4EE600AF1EE10FA04DBDFF8081B0922A5 +:10E280008A80012602281CD39FED6C0AD5ED0C0A6A +:10E2900094ED131AC0EE810AF4EE400AF1EE10FA82 +:10E2A0000FDBD4ED120A94ED111AC0EE810AF4EEE0 +:10E2B000400AF1EE10FA04DBDFF8C81A0A228A805D +:10E2C0000126002819D0DFF8BC7A686EEAF7C2F898 +:10E2D0004FF03332DFF8183CE4F720FD02460B46DE +:10E2E00090469946786FEAF7B5F842464B46E4F710 +:10E2F000F3FD02D20B20B880012694ED160ADFED63 +:10E30000500AB4EE600AF1EE10FA08DA94ED170A3A +:10E31000DFED4C0AB4EE600AF1EE10FA1CDB94ED6E +:10E32000130ADFED490AB4EE600AF1EE10FA0BD4DD +:10E3300094ED110ADFED450AB4EE600AF1EE10FA31 +:10E3400002D4608F022807DBE08E032804DBDFF8AD +:10E35000340A0C218180012695ED0A0ADFED3A0A84 +:10E36000B4EE600AF1EE10FA08D494ED1C0AF1EE56 +:10E37000040AB4EE600AF1EE10FA14D5A86EE96E44 +:10E380000818E4F7C5FD0022DFF8683BE4F7C6FC97 +:10E390000122DFF8643BF5F793FC04D8DFF8E409C9 +:10E3A0000D2181801646B8EEC80ADFF8500BD5ED76 +:10E3B000040AC0EE800AC0ED030AD5ED050AC0EEDE +:10E3C000800AC0ED040AD5ED060A80EE800A80EDD1 +:10E3D000050A0C2200F10C0104F1C000E6F78AFBEB +:10E3E0003046BDEC028BBDE8F28300000000000067 +:10E3F0000000E03F0020DFF890190A6D12F10A0FCB +:10E400000FD29FEDD10AD1ED190AF4EE400AF1EED8 +:10E4100010FA06DAD1ED1D0AF4EE400AF1EE10FA18 +:10E4200000DB01207047000000007A4401004040FA +:10E430003433333F010060400100A04001007041CF +:10E4400001009040010080400000C84300001643D6 +:10E4500000C06240000054400000A0402DE9F24F8F +:10E460000446002500F08BFCDFF8946A28467065AE +:10E47000F0653066DFF80C0929468180204600F0FF +:10E4800065F9DFF80479307B052805D10120306477 +:10E49000284630733887F081F06CBDF8001010FA10 +:10E4A00081F0F064D6F83480706C804501D1012091 +:10E4B0003064D6F8389009EB49004FEA800ADFF85B +:10E4C000440A21684AF800100AEB000B6068CBF898 +:10E4D0000400A068CBF80800BDF80010204600F04A +:10E4E000D3F9F8619BED020ADBED010ADFF8140AAB +:10E4F0005AF8000001EE100A21EE011A00EEA01AEF +:10E5000000EE001A11EE100AE9F7A4FF41EC100B1F +:10E51000E4F7AEFE51EC100BE9F7C4FF00EE100A71 +:10E52000D6F83CA0BAF1000F12D12846DFF8CC296A +:10E5300004E002EB810181ED060A401C80B2014635 +:10E540000729F6DBF1EE0C0A60EE200AC6ED070A99 +:10E55000DFF8A80900EB8900D0ED060A70EE600A2A +:10E5600096ED071A30EE811A86ED071A80ED060A3D +:10E57000DFF8940900EB880080ED001A96ED090A97 +:10E5800030EE010A86ED090ADFF8780900EB890010 +:10E5900090ED150A71EE400ADFF8701901EB880161 +:10E5A000C1ED000A80ED151A96ED0B0A30EE200A37 +:10E5B00086ED0B0A94EC031A86EC031AF06F01281F +:10E5C00006D101203064284630733887F08166E038 +:10E5D000306D401C3065317B012901D003292FD1DA +:10E5E000022822D2F98E04291FDA786D002856D12C +:10E5F00096ED080A9FED971AB4EE410AF1EE10FA73 +:10E6000004D5F4EE410AF1EE10FA0BDAB9EE0C1A69 +:10E61000B4EE410AF1EE10FA41DBF4EE410AF1EEFC +:10E6200010FA3CD50120306439E0272808D3398F0F +:10E63000002903D010FA81F04B2801D30120306467 +:10E6400096ED080A00F088FA307B012827D1388F30 +:10E65000002824D0F189002921D0032211FA80F06A +:10E660003D2801DB01203064F88E042800DB022203 +:10E67000788F824201D201203064B06EF066306F34 +:10E68000716F0818B16F0818B0662846B0677067D8 +:10E690003067FFF70DF805460020F0817887B06CF1 +:10E6A000A8EB000000F1FA04FA20B4FBF0F0FA2124 +:10E6B00001FB104BBBF1960F03D100F0A9FB012029 +:10E6C0007065BBF1640F03D100F0CCFB01207065D5 +:10E6D000F88A00280AD0BBF1320F0DD0BBF14B0FE6 +:10E6E0000DD1002038830120706508E0B88A002829 +:10E6F00005D0BBF17D0F02D1012038837065DFF8B2 +:10E700000C0850F82800306208F101007063FA2804 +:10E7100001D10020706309F10100B063072801D125 +:10E720000020B0630AF10100F063706D002808D08A +:10E7300007F184042C2207F108012046E6F7DAF9F4 +:10E74000B4652846BDE8F28F8096184BF8B50446AC +:10E75000DFF8A8572F6DDFF85C6696ED000AD4ED60 +:10E76000000A70EEC00A01EE107AB8EEC11A60EE2F +:10E77000810AF5EE400AF1EE10FA17D5D5ED170A29 +:10E7800030EE600A10EE100AE9F764FE21F0004155 +:10E79000DFF87C27DFF8A433F5F792FA02D8306F60 +:10E7A000401C30673068E865784228656F6D96EDEB +:10E7B000010AD4ED010A70EEC00A01EE107AB8EE3B +:10E7C000C11A60EE810AF5EE400AF1EE10FA16D594 +:10E7D000D5ED180A30EE600A10EE100AE9F73AFE9D +:10E7E00021F00041DFF82827D44BF5F769FA02D869 +:10E7F000706F401C70677068286678426865AF6DFE +:10E8000096ED020AD4ED020A70EEC00A01EE107A0B +:10E81000B8EEC11A60EE810AF5EE400AF1EE10FA88 +:10E8200016D5D5ED190A30EE600A10EE100AE9F798 +:10E8300011FE21F00041DFF8D826C04BF5F740FA71 +:10E8400002D8B06F401CB067B06868667842A865AF +:10E85000F1BD00000100E040F0164850FC18E93F0F +:10E860003411363CBD52DABFBBB88D06F016B83F46 +:10E870006891ED7C3F35CE3FB29DEFA7C64BC73FB9 +:10E880000DE02D90A0F8A13FDFF8283590ED000AAB +:10E89000D3ED000A30EE600AD0ED010A93ED011AC3 +:10E8A00070EEC10A90ED021AD3ED021A31EE611A30 +:10E8B000B5EE400AF1EE10FA02DDF0EE401A01E08A +:10E8C000F1EE401AF5EE400AF1EE10FA02DDB0EE7C +:10E8D000602A01E0B1EE602AB5EE401AF1EE10FABE +:10E8E00002DDF0EE412A01E0F1EE412A71EE821ADA +:10E8F00071EEA21AB5EE400AF1EE10FA02DDB0EEAA +:10E90000402A01E0B1EE402ADFF87824D2ED022A55 +:10E9100032EE822A82ED022AF5EE400AF1EE10FA7A +:10E9200002DDB0EE602A01E0B1EE602AD2ED032AEA +:10E9300032EE822A82ED032AB5EE401AF1EE10FA89 +:10E9400002DDB0EE412A01E0B1EE412AD2ED042A07 +:10E9500032EE822A82ED042A92ED052A32EE212A35 +:10E9600082ED052A93ED042AD0ED002A32EE222A08 +:10E9700083ED042A93ED052AD0ED012A32EE222AF6 +:10E9800083ED052A93ED062AD0ED022A32EE222AE3 +:10E9900083ED062AD86B002810D1002004E002EB9A +:10E9A0008303C3ED091A401C80B203460F2BF6DB2C +:10E9B000B2EE0E2A21EE822A82ED182A508802EB4E +:10E9C000800393ED092A31EEC22AD2ED182A32EEE5 +:10E9D000222A82ED182AC3ED091AF2EE0E1AC2EEAF +:10E9E000211ADFF8A433C3ED1C1ADFF8283593EDA4 +:10E9F000012A22EE202AD3ED002A62EE802AF5EECB +:10EA0000402AF1EE10FA0DD4B5EE402AF1EE10FADC +:10EA100008D493ED023A23EE013AB5EE403AF1EE16 +:10EA200010FA5AD593ED023A23EE013AF4EE422A57 +:10EA3000F1EE10FA0AD5F4EE432AF1EE10FA02D5FF +:10EA4000F0EE623A0CE0F0EE433A09E0B4EE432A0D +:10EA5000F1EE10FA02D5F0EE423A01E0F0EE433A60 +:10EA6000F5EE403AF1EE10FAF4EE422A15DDF1EE41 +:10EA700010FA0AD5F4EE432AF1EE10FA02D5B0EE00 +:10EA8000622A21E0B0EE432A1EE0B4EE432AF1EE02 +:10EA900010FA19D4B0EE432A16E0F1EE10FA0AD5B6 +:10EAA000F4EE432AF1EE10FA02D5B0EE622A09E044 +:10EAB000B0EE432A06E0B4EE432AF1EE10FA01D498 +:10EAC000B0EE432AB1EE422AD2ED1F2AF4EE422ADA +:10EAD000F1EE10FA01D582ED1F2A83ED000AC3ED95 +:10EAE000010A83ED021A92ED1A0AF4EE401AF1EED1 +:10EAF00010FA01D5C2ED1A1A92ED1B0AB4EE610AA2 +:10EB0000F1EE10FA01D5C2ED1B1A9FEDBC0AF4EE2E +:10EB1000401AF1EE10FA04D5536E13FA81F15166E2 +:10EB200001E000215166401C508080B20F2801D1C5 +:10EB300000205080506E70479A9999999999C93FD1 +:10EB40009999B93F7B14AE47E17A743F00004E407B +:10EB50000000F03F6666E63F70B52DED048BB0EE29 +:10EB6000408AF0EE608A9FEDA99A8748C18E0429F9 +:10EB700001DBB0EE009AB5EE408AF1EE10FA07DB49 +:10EB8000F5EE408AF1EE10FA02D5418F491C41871B +:10EB9000884E317B002907D0022900F07F8041D3C5 +:10EBA000032900F0A480E6E019EE100AE9F752FC10 +:10EBB00041EC100B53EC102B0020DFF85C13E4F752 +:10EBC000BFF941EC190B18EE100AE9F743FC0246B5 +:10EBD0000B4651EC190BF5F773F811D818EE900AA3 +:10EBE000E9F738FC02460B4651EC190BE4F774F9CF +:10EBF00006D2306D1028C0F0AF8000203065ABE049 +:10EC0000716BC24A52F8210000EE100AC349D1EDDF +:10EC1000010AB4EE600AF1EE10FA40F1AC8081ED29 +:10EC2000010AA8E0716BB94A52F8211000EE101ADF +:10EC3000BA49D1ED000AF4EE400AF1EE10FA01D51E +:10EC400081ED000AB7EE000AB4EE408AF1EE10FA48 +:10EC5000C0F29180F4EE408AF1EE10FA40F18B8020 +:10EC6000316D01870020306519EE100AE9F7F2FBDB +:10EC700002460B460020AA49E3F790FF02460B46E6 +:10EC800014461D4618EE900AE9F7E4FB22462B468F +:10EC9000E4F722F922D3022030736CE019EE100A57 +:10ECA000E9F7D8FB41EC100B00209D4953EC102BE9 +:10ECB000E3F774FF41EC190B18EE100AE9F7CAFBF1 +:10ECC00053EC192BF4F7FCFF55D818EE900AE9F72E +:10ECD000C1FB53EC192BE4F7FFF84CD2032030733F +:10ECE000706B8A4951F820008C49486043E0716B91 +:10ECF000864A52F8210000EE100A8849D1ED010A37 +:10ED0000B4EE600AF1EE10FA01D581ED010A9FED33 +:10ED1000770AB4EE408AF1EE10FA2CD5F4EE408A70 +:10ED2000F1EE10FA27DB306DF0810020306518EE2F +:10ED3000900AE9F78FFB02460B4614461D4619EE72 +:10ED4000100AE9F787FB0022734BE4F7F9F8224633 +:10ED50002B46E4F7C1F80CD2012030736F490868E4 +:10ED6000F06548683066706B684A52F820000860A9 +:10ED700001E000203073307BBDEC048B70BD604837 +:10ED8000007B7047F4150120280B0120002804D0D7 +:10ED90005B49896D2C22E3F7B5BE70476148416D30 +:10EDA000002904D1818FC08F10FA81F070470020B4 +:10EDB000704700007415012051490020C86359486C +:10EDC000002242610222028305220A73002141656A +:10EDD000C165C166C1620161C163416370470000E2 +:10EDE00000003E40002806D0444942684A6002685C +:10EDF0000A6000890881704700002440EC51383EC9 +:10EE00004948406E70470000902801200000000033 +:10EE100010B5444CA08E002802D00220208301E0CF +:10EE20000220208300206065E065E066E0622061EA +:10EE3000A082A086E063D4F88000012801D1FEF70B +:10EE40008EFE3948C188002905D0A4F84010002161 +:10EE5000C1800846E067E06F012802D10620A4F8CF +:10EE6000400010BD10B52F4CE08E002802D00020CD +:10EE7000208301E0022020830020E062206108223C +:10EE800001462046E3F7EAF90020E086E0822061AF +:10EE9000E063D4F88000012803D1BDE81040FEF7FC +:10EEA0005EBE10BD1F49B1F8402082420CD2CB8A11 +:10EEB000002B02D04B6D934204D2A1F840000020F9 +:10EEC000C86770471849C880704780B50C48012151 +:10EED000C167FFF7C7FFFFF79BFF0C20BDE80240AB +:10EEE000E0E707480021C16770470000FEFF7FBFD1 +:10EEF0003333D33F0000E03F00804B40B418012083 +:10EF00007415012044180120D8DC0020C0E0002046 +:10EF10009B999999F826012000001C40FC270120AC +:10EF200000001CC0280B0120F415012010B50C4670 +:10EF30000FF2F050E3F736FADFF8A4050480001D65 +:10EF400000F033F800F064F800F012FA012010BD70 +:10EF500030B583B004460D4600F05BF9214600F061 +:10EF60005AF9002D12D00FF2C850E3F71BFA00F047 +:10EF700050F900F03BF800F04CF900F03DF800A823 +:10EF800000F082F8DDE9000100F075F8DFF85405C3 +:10EF90008068BDE83E40004780B500F071F80FF290 +:10EFA000A050E3F7FFF9012002BD00210B4607E066 +:10EFB00001EB410292001350121853609360491CF8 +:10EFC0006429F5DB194604E000EB8102C2F8B03495 +:10EFD000491C3229F8DB194680F8781500F2785080 +:10EFE000418081808160C160016170470021C0F86B +:10EFF0008015C0F8841570470021C0F88815704747 +:10F00000002190F87805012800D1012108467047B9 +:10F0100030B583B000A800F069F8DFF8C844009864 +:10F020002060019D656000A800F085F8DFF8B80455 +:10F03000009901600199416000A800F0ABF8DFF889 +:10F04000AC04009901600199416000A800F0CDF87E +:10F05000DFF89C04009901600199416000A800F06C +:10F06000D1F8DFF8900400990160019941602068AF +:10F07000A060E56037BDDFF86C249060D160084780 +:10F08000DFF86004C0680047DFF85C14D1E90023B2 +:10F09000C0E900237047DFF85414D1E90023C0E928 +:10F0A00000237047DFF84814D1E90023C0E90023AA +:10F0B0007047DFF84014D1E90023C0E9002370470E +:10F0C0001CB5002400F0A5F8FFF79AFF002807D030 +:10F0D000082400A8FFF7D8FFDDE90001FFF7CBFF08 +:10F0E000204616BD0FF26440E3F75CB9DFF8081460 +:10F0F0000A46DFF808140B46C0E9002370471CB528 +:10F10000002400F0CFF800280FD00FF24C40E3F7B6 +:10F1100049F9012400F07DF8FFF76EFF00A8FFF722 +:10F12000BAFFDDE90001FFF7A6FF204616BD0FF28A +:10F130003440E3F737B9DFF8C8130A46DFF8C413E1 +:10F140000B46C0E9002370471CB500F0ABF800285F +:10F1500005D0012400F05DF8FFF74EFF14E0022413 +:10F1600000F010F900280FD00FF20440E3F71AF96D +:10F17000062400F04EF8FFF739FF00A8FFF792FFD2 +:10F18000DDE90001FFF777FF204616BD0FF2EC30F6 +:10F19000E3F708B9DC490A46DC490B46C0E900231D +:10F1A00070471CB500F000F9012808D1042400A81C +:10F1B000FFF77FFFDDE90001FFF75DFF0FE00228A9 +:10F1C0000CD1072400F025F8FFF710FF00A8FFF787 +:10F1D0005BFFDDE90001FFF74EFF00E0032420465E +:10F1E00016BD0FF2A430E3F7DDB8C9490A46C94994 +:10F1F0000B46C0E900237047002070470FF298309B +:10F20000E3F7D0B8C4490A46C4490B46C0E9002315 +:10F210007047C348704770B5044604F278550C2017 +:10F22000AA8800FB02420B681360AA8800FB024216 +:10F230004B685360AA8800FB02408A68826091EDA7 +:10F24000020AD1ED010A91ED001A688804EB8006EC +:10F2500021EE011A00EEA01A00EE001A11EE100ABB +:10F26000E9F7F8F841EC100BE4F702F851EC100B59 +:10F27000E9F718F9C6F8B004A888401CA880688887 +:10F28000401C6880A888642801DB0020A88068886A +:10F29000322804DB00206880012084F8780570BDE6 +:10F2A0000000000070B52DED028B00249FED888AD0 +:10F2B000DFED878A2546FFF7ACFF0646B6F87A05EC +:10F2C000322806D10FF2E020E3F76CF82046A6F8CA +:10F2D0007A053046FFF794FE002845D0204610E01E +:10F2E00006EB8001D1F8B01400EE101A38EE008A57 +:10F2F000DFED780AB4EE600AF1EE10FA00DB6D1C67 +:10F30000401C3228ECDB9FED740A88EE008A204610 +:10F310000AE006EB8001D1F8B01400EE101A30EECE +:10F32000480A40EE008A401C3228F2DBB6F87A0523 +:10F3300006EB8000D0F8B00400EE100AF3EE020AEB +:10F34000B4EE600AF1EE10FA0EDB9FED630A88EE70 +:10F35000800AF1EE040AB4EE600AF1EE10FA03DB63 +:10F36000ADB2032D00DB01242046BDEC028B70BD45 +:10F3700080B5FFF74EFFFFF739FEFFF74AFFBDE804 +:10F38000024039E610B50024FFF743FFD0F8881596 +:10F39000491CC0F88815B1F5FA7F03DD2146C0F895 +:10F3A00088150124204610BD38B50024FFF731FF31 +:10F3B00005469FED470ADFED460A9FED451ADFED52 +:10F3C000441A9FED432ADFED422A204610E00C212B +:10F3D00041434A1992ED003A30EE030A491991ED82 +:10F3E000013A70EE830A91ED023A31EE031A401CA5 +:10F3F0006428ECDB9FED393A80EE030AC0EE830A05 +:10F4000081EE031A204616E00C2141434A1992ED81 +:10F41000003A33EE403A43EE031A491991ED013AAE +:10F4200033EE603A03EE032A91ED023A33EE413AAD +:10F4300043EE032A401C6428E6DB9FED280A82EE97 +:10F44000800ADFED260AC1EEA00AB7EE001AF4EE3C +:10F45000410AF1EE10FA2DD5DFED200AC2EE200AA6 +:10F46000F4EE410AF1EE10FA24D5F7EE000AB4EEFC +:10F47000600AF1EE10FA1DD5D5F88005401CC5F8DC +:10F48000800500EB8001880042F2117188421DDB8B +:10F490002046C5F8800505F280504168491C41604E +:10F4A0000F480088814211DB0FF20810E2F77AFF63 +:10F4B00001240BE00FF20C10E2F774FF2046C5F8B0 +:10F4C000800505F5B060214641600224204632BD2A +:10F4D0000000000001006041000048420000C842F6 +:10F4E000F8C8002060260120BC270120C427012085 +:10F4F000CC270120D4270120C1F00108E5F0010844 +:10F50000FFF001082FF1010849F101088DF1010810 +:10F51000A3F10108E3F10108F9F10108FDF1010887 +:10F52000FCC800202341532041535F496E69740099 +:10F5300023415320555352494E505554000000006A +:10F540002341532041535F46696E200023415320DD +:10F5500053545F53530A00002341532044545F53D4 +:10F56000484B00002341532053545F5344530A0037 +:10F570002341532041535F54454E00002341532003 +:10F5800053545F534F530A002341532053545F4E4B +:10F590004D53530A000000002341532053545F4150 +:10F5A000534E4D4F530A00002341532041535F4FA8 +:10F5B000460000002341532041535F41425F4454C1 +:10F5C00000000000234153204343000010B5DFF842 +:10F5D000AC4A03220021201DE2F740FE0422002154 +:10F5E0002046E2F73BFE04220021DFF8940AE2F70E +:10F5F00035FE0822002104F11400E2F72FFE082254 +:10F60000002104F11C00E2F729FE0822002104F188 +:10F610002400E2F723FE201DE06324640020A060A4 +:10F62000E06220636064A064E06420656065A065BA +:10F63000E06520666066A066E066E0606063207456 +:10F640002087C8220146DFF8B80CE2F707FEC8227F +:10F650000021DFF8B00CE2F701FEC8220021DFF83C +:10F66000A80CE2F7FBFDC8220021DFF8A00CE2F7AE +:10F67000F5FDC8220021DFF8980CE2F7EFFDC82263 +:10F680000021DFF8900CBDE81040E2F7E7BD00284C +:10F6900005D0DFF8E819C96B0322E3F723BA7047F6 +:10F6A00070B584B0DFF8D4291378DFF8D449D57861 +:10F6B000E678B54218D12578AB4215D155786678F1 +:10F6C000B54211D19578A478A5420DD11479057869 +:10F6D000A54203D0042D07D0042C05D00C789679D0 +:10F6E000B4420DD0042D0BD1947802945478019437 +:10F6F0000093537B0A7801780FF20800E2F752FE7C +:10F700007FBD00004D5F50443A41435620256420A0 +:10F7100025642025642025642025642025640A00B2 +:10F7200010B5C8220121DFF8E40BE2F797FDDFF8FE +:10F730004C49C820E0820020A082A061C82201219B +:10F74000DFF8CC0BE2F78AFDC820E0830020A0831D +:10F750002062C8220121DFF8BC0BE2F77FFDC82040 +:10F76000E0840020A084A06210BD2DE9F841068845 +:10F7700044888588B0F806E000273846F0468DF8C2 +:10F780000280F446BCF18D0F03D34FF0010C81F8D9 +:10F7900000C0DB89032B04D0042B02D0D2B2012A93 +:10F7A00001D102460A70652E31D2744516DB097804 +:10F7B000AC4209DB01291FD0012721468D2921D226 +:10F7C000652C24D3384622E0012915D0022729468A +:10F7D0008D2917D2652D1AD3012018E0754508DA56 +:10F7E000042771468D290DD2BEF1650F0FD301207C +:10F7F0000DE00978012901D1042708E002272946F4 +:10F800008D2901D3022002E0652D00D301208DF85F +:10F8100000708DF801000098BDE8F2812DE9704379 +:10F820002DED108B82B0B0EE40AAB0EE608AF0EE03 +:10F83000418ADFF84868707A0146D6ED16AA96ED3F +:10F8400015BAD6ED14BA96ED13CAD6ED12CA96EDD6 +:10F85000111A28EEA8DA68EE08DA2AEE0AEADFF8CA +:10F86000A82ADFF8A03ADFF8984A357A002D40F050 +:10F87000AB8004EB810484ED00AA03EB810383EDEC +:10F88000008A02EB8101C1ED008A31EE0A0A86EDA1 +:10F89000110A3CEE888A86ED128A7CEE288AC6ED33 +:10F8A000138A3EEE2BAA86ED14AA3DEE8BBA86EDA6 +:10F8B00015BA7DEE2AAAC6ED16AA401C7072C0B217 +:10F8C000322840F07F8001203072002070729FED5E +:10F8D000B89B10EE100AE8F7BDFD53EC192BE3F7C7 +:10F8E0001DFAE8F7DFFD0BEE900AC6ED11BA18EE2F +:10F8F000100AE8F7AFFD53EC192BE3F70FFAE8F71E +:10F90000D1FD08EE100A86ED128A18EE900AE8F78B +:10F91000A1FD53EC192BE3F701FAE8F7C3FD08EE5C +:10F92000900AC6ED138A1AEE100AE8F793FD53EC1D +:10F93000192BE3F7F3F904460D462BEEAB0A10EE54 +:10F94000100AE8F787FD02460B4620462946E3F7F2 +:10F9500025F9E8F7A7FD30651BEE100AE8F77AFDF8 +:10F9600053EC192BE3F7DAF904460D4628EE080AA2 +:10F9700010EE100AE8F76EFD02460B4620462946B7 +:10F98000E3F70CF9E8F78EFD70651AEE900AE8F7D8 +:10F9900061FD53EC192BE3F7C1F904460D4628EE3F +:10F9A000A80A10EE100AE8F755FD02460B4620465D +:10F9B0002946E3F7F3F8E8F775FDB065C820B08293 +:10F9C000B083B0840020EDE08DED001A54F82100E2 +:10F9D0000EEE900A53F821000FEE100A52F82100A3 +:10F9E0000FEE900A9FED729B11EE100AE8F732FDC0 +:10F9F00004460D463AEE6E0A10EE100AE8F72AFDAC +:10FA000053EC192BE3F78AF922462B46E3F798FAD1 +:10FA1000E8F748FD0AEE100A86ED11AA1CEE900ADE +:10FA2000E8F718FD04460D4638EE4F0A10EE100AAE +:10FA3000E8F710FD53EC192BE3F770F922462B463B +:10FA4000E3F77EFAE8F72EFD08EE100A86ED128A3B +:10FA50001CEE100AE8F7FEFC04460D4638EEEF0AED +:10FA600010EE100AE8F7F6FC53EC192BE3F756F901 +:10FA700022462B46E3F764FAE8F714FD08EE900AF5 +:10FA8000C6ED138A1BEE900AE8F7E4FC804689462F +:10FA90009DED000ADDED000A20EE200A0AEE4A0A7A +:10FAA00010EE100AE8F7D6FC04460D460EEEEEEA1C +:10FAB0001EEE100AE8F7CEFC53EC192BE3F72EF9F3 +:10FAC00022462B46E3F73CFA42464B46E3F738FA28 +:10FAD000E8F7E8FC0AEE100A86ED14AA1BEE100AFD +:10FAE000E8F7B8FC804689462CEEAC0A08EE480AD6 +:10FAF00010EE100AE8F7AEFC04460D464FEE4FDA62 +:10FB00001DEE900AE8F7A6FC53EC192BE3F706F973 +:10FB100022462B46E3F714FA42464B46E3F710FA27 +:10FB2000E8F7C0FC08EE100A86ED158A1AEE900A76 +:10FB3000E8F790FC804689462CEE0C0A08EEE80AAD +:10FB400010EE100AE8F786FC04460D460FEEEFDAD9 +:10FB50001DEE100AE8F77EFC53EC192BE3F7DEF8F4 +:10FB600022462B46E3F7ECF942464B46E3F7E8F929 +:10FB7000E8F798FC00EE100A86ED160A6AEE0A0A0B +:10FB800048EE080A40EE000A10EE900AE8F762FC20 +:10FB900041EC100BE3F76CFB51EC100BE8F782FC27 +:10FBA000F065012002B0BDEC108BBDE87083000051 +:10FBB0007B14AE47E17A943FF8B5002425462646EB +:10FBC000DFF8B874797ADFF8380750F8212000EEB2 +:10FBD000102ADFF8302752F8213000EE903ADFF893 +:10FBE000283753F821C001EE10CAF0EE401AB0EEEB +:10FBF000602AF0EE412A97ED113AD7ED123A97EDCF +:10FC0000134AF0EE404AB0EE605AF0EE415AB0EEC0 +:10FC1000406AF0EE606AB0EE417A4FF0010C2CE0E1 +:10FC2000B4EE414AF1EE10FA04D5F4EE442AF1EEB6 +:10FC300010FA09D4B4EE441AF1EE10FA15D5B4EE68 +:10FC4000624AF1EE10FA10D5641C9FEDC02AF4EE62 +:10FC5000421AF1EE10FA08DB6D1C9FEDCA2AF4EE91 +:10FC6000421AF1EE10FA00DB761CF0EE401AB0EE0C +:10FC7000602AF0EE412A0CF1010CBCF1320F80F049 +:10FC8000A580491CC9B2322900D1002150F821E0D9 +:10FC900000EE10EA52F821E000EE90EA53F821E07D +:10FCA00001EE10EAF4EE404AF1EE10FA02D5F0EE61 +:10FCB000404A06E0B4EE460AF1EE10FA01D5B0EE85 +:10FCC000406AB4EE605AF1EE10FA02D5B0EE605A16 +:10FCD00006E0F4EE660AF1EE10FA01D5F0EE606A85 +:10FCE000F4EE415AF1EE10FA02D5F0EE415A06E078 +:10FCF000B4EE471AF1EE10FA01D5B0EE417A70EE8B +:10FD0000617AF5EE407AF1EE10FA01D571EEC07A23 +:10FD1000B4EE403AF1EE10FA04D5F4EE431AF1EEE7 +:10FD200010FA09D4B4EE430AF1EE10FA15D5B4EE88 +:10FD3000613AF1EE10FA10D5641CDFED841AF4EE8E +:10FD4000617AF1EE10FA08DB6D1CDFED8E1AF4EE2D +:10FD5000617AF1EE10FA00DB761C70EEC21AF5EE55 +:10FD6000401AF1EE10FA01D572EE601AF4EE603A24 +:10FD7000F1EE10FA04D5B4EE632AF1EE10FA09D4CC +:10FD8000F4EE630AF1EE10FA15D5F4EE423AF1EE14 +:10FD900010FA10D5641C9FED6D2AF4EE421AF1EEB4 +:10FDA00010FA08DB6D1C9FED772AF4EE421AF1EE93 +:10FDB00010FA00DB761C71EE621AF5EE401AF1EED5 +:10FDC00010FA7FF52DAF72EEC11A29E734EEC60A9C +:10FDD00087ED180A75EE660AC7ED190A35EEC71ADF +:10FDE00087ED1A1A20EE000A00EEA00A01EE010AC1 +:10FDF00010EE100AE8F72EFB41EC100BE3F738FA8F +:10FE000051EC100BE8F74EFBF866BC85FD853E868D +:10FE1000F1BD000010B501460020984C42290ED1DA +:10FE200094ED1B0ADFED8F0AB4EE600AF1EE10FAD2 +:10FE300005D5A18E142904DA491CA18601E00146EA +:10FE4000A186A18E142907DB607B012801D1FFF771 +:10FE500067FC012000216173207010BD38B50024BB +:10FE6000864D95ED170ADFED800AB4EE600AF1EEDB +:10FE700010FA08DA95ED1B0ADFED7C0AB4EE600A91 +:10FE8000F1EE10FA05DBA87B142807D2401CA873FA +:10FE900004E0A87B002801D0401EA873A87B00289E +:10FEA00005D00124687B002801D1FFF739FC6C7074 +:10FEB000204632BD38B50024704D95ED140AD5EDBD +:10FEC000150A30EE200AD5ED160A80EE800ADFED25 +:10FED000680AB4EE600AF1EE10FA17DBD5ED1A0AE3 +:10FEE0009FED641AF4EE410AF1EE10FA0EDBB2EE69 +:10FEF000041AF4EE410AF1EE10FA07D5002805D1F4 +:10FF0000E87B1E2816DA401CE87313E0DFED5A0A7E +:10FF1000B4EE600AF1EE10FA07DB002805D1E87BA9 +:10FF20001E2807DA401CE87304E0E87B002801D0B3 +:10FF3000401EE873E87B1F2805DB0124687B00284E +:10FF400001D1FFF7EDFBAC70204632BD9A99993E86 +:10FF5000DFF8241C0078042811D1487B00280ED13A +:10FF6000488EB0F5AF7F02DA401C48867047B0F586 +:10FF7000AF7F06DB012048730020488670470020D1 +:10FF8000488670470100003F0278042A0CD1DFF850 +:10FF9000E82B537B002B07D1528EB2F5AF7F03D2F3 +:10FFA00001220270002008707047DFF8CC2B138FFD +:10FFB000007804281DD10878002803D0022814D026 +:10FFC0000AD317E0180003D04C2801DA5B1E11E0B9 +:10FFD0004C280FDB4B230DE018464B2801DA5B1C45 +:10FFE00008E04C2806DB4B2304E0AF2B02D25B1C5D +:10FFF00000E000239BB21846322802DA0020087085 +:020000022000DC +:1000000006E0962802DA0120087001E0022008705C +:1000100013877047DFF8603B0078042812D1087816 +:1000200000280FD1587B01280CD1D88E42F22831FC +:10003000884207DA422A02D1C01CD88604E0401C5C +:10004000D88601E00020D886D88E42F22831884236 +:1000500006DB00205873D8860FF67830E2F7A2B995 +:10006000704700007F8CB93E010048430100F04119 +:10007000010080409A9939400100A0416417012095 +:100080007C2801202DE9F24F90B0054695ED021A2B +:10009000D5ED010A95ED000AFFF7C0FB002800F03E +:1000A0002B81DFF8D44A607A95492A6841F82020EC +:1000B00094496A6841F820209349AA6841F82020B1 +:1000C000401C6072C0B2322801D100206072FFF77C +:1000D00073FDBDF84000FFF79DFE0546FFF7BEFE2D +:1000E0000646FFF7E7FE07464FF00008C146012D20 +:1000F00004D14FF001084FF00209B5E057EA0600BD +:1001000040F09E8004A8FEF741FE94F80AA0DFF8B4 +:10011000FCB11AF80B008DF8000000F02BF90AF87A +:100120000B0004F1140201469DF8000000F0F4F801 +:1001300004AB2A4604F10B0104F11400FFF715FB90 +:10014000039094F80AA0DFF8C8B11AF80B008DF8F4 +:10015000000000F0ABF901460AF80B1004F11C0294 +:100160009DF8000000F0D8F804AB2A4604F10C0119 +:1001700004F11C00FFF7F9FA029094F80AA0DFF8E6 +:1001800094B11AF80B008DF8000000F055FB0AF846 +:100190000B0004F1240201469DF8000000F0BCF8B9 +:1001A00004AB2A4604F10D0104F12400FFF7DDFA47 +:1001B0000190A07A401CA072C0B2C82801D140466C +:1001C000A0729DF80400002832D09DF80C0004288D +:1001D0000CD19DF80810042908D19DF804100429B9 +:1001E00004D04FF004084FF0010921E09DF80410FD +:1001F000042904D14FF004089DF8059018E0012867 +:1002000009D19DF80820012A05D1012903D14FF019 +:100210000108C1460CE0012805D09DF8080001281E +:1002200001D0012902D14FF0010801E04FF002088E +:10023000607B002802D10021E1722173E07013E09D +:10024000607B012802D1042020740DE0A07ADFF841 +:10025000C4B000EB0B01643803D591F8640020743E +:1002600002E011F8640C207400208DF80000607B1F +:1002700001280CD146EA0500384308D104208DF846 +:100280000100B8F1040F0ED18DF800900BE0012EA3 +:1002900001D0012F03D1207C8DF8010003E08DF8FF +:1002A00001808DF800900DF10100FFF751FE00A9CB +:1002B0000DF10100FFF768FEBDF8402000A90DF127 +:1002C0000100FFF7A7FE00A90DF10100FFF76DFE89 +:1002D00000A90DF10100FFF7E3F99DF8010020717D +:1002E000012060719DF80000A071201DE06324646E +:1002F000DFF8DC082168016011B0BDE8F08F000074 +:10030000F40B0120BC0C0120840D01204C0E0120B7 +:10031000140F0120DC0F0120042913D8DFE801F0BD +:1003200003070B120F001188491C11800AE0518845 +:10033000491C518006E09188491C918002E0D188D7 +:10034000491CD180042813D8DFE800F003070B1202 +:100350000F001088401E108070475088401E50804B +:1003600070479088401E90807047D088401ED08093 +:1003700070470000DFF80008018E10293EDB828DF7 +:100380002F2A01DB0420704790ED160ADFED3E0AAC +:10039000B4EE600AF1EE10FA25DB212901DB04201E +:1003A0007047202A01DB01207047DFED380AB4EEE8 +:1003B000600AF1EE10FA10DB1D2A0CDB90ED150A35 +:1003C000DFED330AB4EE600AF1EE10FA01DB012032 +:1003D000704702207047022070471B2A01DB012072 +:1003E000704702207047DFED2B0AB4EE600AF1EE91 +:1003F00010FA01DB042070470120704790ED150AC8 +:10040000DFED250AB4EE600AF1EE10FA3ADB90ED6A +:10041000160ADFED220AB4EE600AF1EE10FA2BDBC9 +:10042000828D1B2A0EDBDFED1E0AB4EE600AF1EEB0 +:1004300010FA05DB222A01DB0120704702207047F9 +:1004400001207047172A15DBDFED160AB4EE600AAB +:10045000F1EE10FA01DB0220704790ED140ADFED97 +:10046000120AB4EE600AF1EE10FA01DB02207047C6 +:100470000120704702207047092901DB02207047E4 +:10048000022070470120704724622A3ED3DF1B3FC1 +:10049000E981EF3D90C2F53C37C5833D2E3AB93D29 +:1004A000170F1B3F431E193F75B04E3EDFF8C806BD +:1004B000818D90ED150A2029C0F21F81DFEDBD0A64 +:1004C000B4EE600AF1EE10FAC0F2FD802F2932DBA3 +:1004D000C18D162901DB04207047D0ED1A0A9FED6B +:1004E000B61AF4EE410AF1EE10FA0EDBDFEDB30AB4 +:1004F000B4EE600AF1EE10FA05DB142901DB0420EA +:1005000070470120704701207047D0ED180A9FED19 +:10051000AC1AF4EE410AF1EE10FA0ADBDFEDA90A9B +:10052000B4EE600AF1EE10FA01DB042070470120FE +:10053000704704207047D0ED180A9FEDA31AF4EE1F +:10054000410AF1EE10FA79DB90ED191ADFED9F1AEE +:10055000B4EE611AF1EE10FA19DB028E0F2A05DBF8 +:10056000242901DB042070470220704790ED140A13 +:10057000DFED970AB4EE600AF1EE10FA01DB01201C +:100580007047082A01DB04207047012070479FED67 +:10059000911AF4EE410AF1EE10FA27DB90ED141AED +:1005A000DFED8D1AB4EE611AF1EE10FA0ADB9FED61 +:1005B0008B0AF4EE400AF1EE10FA01DB04207047DA +:1005C000012070479FED861AB4EE410AF1EE10FA51 +:1005D0000ADB9FED840AF4EE400AF1EE10FA01DB2B +:1005E0000120704702207047012070479FED7E1A5E +:1005F000B4EE410AF1EE10FA01DB0420704790EDF1 +:10060000160A9FED7A1AB4EE410AF1EE10FA0ADBEF +:100610002C2906DB008E072801DB0420704701200F +:100620007047012070479FED720AF4EE400AF1EE28 +:1006300010FA01DB04207047012070479FED6D1A0E +:10064000B4EE410AF1EE10FA01DB042070479FED91 +:100650006A1AF4EE410AF1EE10FA01DB012070474C +:1006600090ED1A1ADFED651AB4EE611AF1EE10FA88 +:1006700001DB012070479FED621AB4EE410AF1EEF2 +:1006800010FA01DB042070479FED5E0AF4EE400A89 +:10069000F1EE10FA01DB0120704790ED190ADFED51 +:1006A0005A0AB4EE600AF1EE10FA01DB042070473A +:1006B000DFED560AB4EE600AF1EE10FA01DB01201C +:1006C000704704207047DFED520AB4EE600AF1EE85 +:1006D00010FA10DB2F2901DB0420704790ED140A7B +:1006E000DFED4C0AB4EE600AF1EE10FA01DB0120F6 +:1006F00070470420704701207047DFED470AB4EED1 +:10070000600AF1EE10FA2ADB172926DB90ED160AB3 +:10071000DFED420AB4EE600AF1EE10FA01DB0220CE +:10072000704790ED140ADFED3E0AB4EE600AF1EE78 +:1007300010FA01DB02207047192901DB0120704704 +:1007400090ED1A0ADFED370AB4EE600AF1EE10FA06 +:1007500001DB012070470220704702207047DFED67 +:10076000320AB4EE600AF1EE10FA20DB90ED180ABE +:10077000DFED2E0AB4EE600AF1EE10FA15DB90ED13 +:10078000190ADFED2B0AB4EE600AF1EE10FA0ADB6B +:10079000DFED280AB4EE600AF1EE10FA01DB012069 +:1007A00070470420704701207047042070470120E3 +:1007B000704700BFCA8AE13BB58C1F4012A53D3D82 +:1007C000A7B2503FD9D04D3D15053A3FDB56DD3F2E +:1007D000F33C383D7179823F91DAD43EE5D549400A +:1007E000AEDB203E42F01440910F3A3D6687F83C64 +:1007F00060CB4B3F6631B13CF0C6163F50701E4097 +:10080000CD04433C4089BF3E8770C43ED89DBE3E68 +:100810007864AC3B3A24353BB6A1823D99BA1B3F84 +:10082000172D503EEC531D40371A403CC5210B3F5D +:10083000A43B983F446F9F3FCF48C18D2329C0F20E +:10084000C0802F2930DB332901DB0420704790ED75 +:100850001A0ADFEDBD0AB4EE600AF1EE10FA11DB00 +:10086000018E08290CDB90ED180ADFEDB80AB4EE12 +:10087000600AF1EE10FA01DB012070470420704796 +:100880000120704790ED180ADFEDB10AB4EE600A5E +:10089000F1EE10FA06DB008E0D2801DB0420704714 +:1008A000012070470420704790ED190AD0ED180A16 +:1008B0009FEDA81AF4EE410AF1EE10FA42DB9FED2B +:1008C000A61AB4EE410AF1EE10FA11DB018E0F29DF +:1008D00001DB0420704790ED140ADFEDA00AB4EEAE +:1008E000600AF1EE10FA01DB012070470420704726 +:1008F00090ED140A9FED9A1AF4EE410AF1EE10FA07 +:1009000015DBDFED980AB4EE600AF1EE10FA0CDBAD +:1009100090ED1A0ADFED940AB4EE600AF1EE10FAD7 +:1009200001DB012070470420704701207047DFED94 +:100930008F0AB4EE600AF1EE10FA01DB0420704772 +:10094000012070479FED8A1AB4EE410AF1EE10FAC9 +:1009500031DB90ED1A1ADFED871AB4EE611AF1EE71 +:1009600010FA06DB008E092801DB04207047012005 +:1009700070479FED821AB4EE410AF1EE10FA01DBE6 +:10098000042070479FED7E1AF4EE410AF1EE10FA52 +:1009900001DB01207047808D2A2801DB042070478D +:1009A000DFED780AB4EE600AF1EE10FA01DB042004 +:1009B000704701207047282901DB0420704701207F +:1009C000704790ED150ADFED700AB4EE600AF1EEA3 +:1009D00010FA5CDBD0ED1B0A9FED6C1AF4EE410AB5 +:1009E000F1EE10FA2FDB17292BDB90ED140AD0ED76 +:1009F000160A9FED671AF4EE410AF1EE10FA15DBC4 +:100A0000DFED640AB4EE600AF1EE10FA0CDB90ED53 +:100A1000180ADFED610AB4EE600AF1EE10FA01DBAC +:100A2000012070470220704702207047DFED5B0A0B +:100A3000B4EE600AF1EE10FA01DB022070470120EB +:100A40007047022070479FED561AF4EE410AF1EE0E +:100A500010FA1ADB818D19290CDB90ED160ADFEDF7 +:100A6000510AB4EE600AF1EE10FA01DB0220704781 +:100A700001207047DFED4C0AB4EE600AF1EE10FA87 +:100A800001DB022070470120704704207047DFED32 +:100A9000470AB4EE600AF1EE10FA53DBD0ED180A03 +:100AA0009FED431AF4EE410AF1EE10FA1EDB9FEDC2 +:100AB000411AB4EE410AF1EE10FA15DB90ED1B0A73 +:100AC0009FED3D1AB4EE410AF1EE10FA01DB012070 +:100AD00070479FED3A0AF4EE400AF1EE10FA01DB9E +:100AE000012070470420704701207047DFED340A71 +:100AF000B4EE600AF1EE10FA17DB90ED190ADFEDA3 +:100B0000310AB4EE600AF1EE10FA01DB04207047FE +:100B100090ED140ADFED2C0AB4EE600AF1EE10FA43 +:100B200001DB012070470420704790ED160ADFEDCD +:100B3000270AB4EE600AF1EE10FA01DB04207047D8 +:100B400001207047012070478BC71F4036054D407C +:100B5000F9A78E3F55A85A3FDB56DD3F3886403D0A +:100B60007179823F9E48D83E79977440753E3C3DEE +:100B70003BAEAE3E350D1F406417012082742D3F01 +:100B8000A43C173F9BAEE73EB6A1823D878C6F40E9 +:100B900099BA1B3F6F69453ECC9E2A408DBA663E8E +:100BA0008C5044409948D13E81B6953D7313B53B76 +:100BB00063D5083FDCF93E3DCDED2540D064833F51 +:100BC00021CB023CD274E63EDF57E53B7B6A753DA4 +:100BD0007C2801205B4D5F50443A4143565D204CD8 +:100BE0006F636B204F66660038B5DFF8B047502260 +:100BF000002104F13000E1F731FB50220021E1F740 +:100C00002DFBDFF89C575022002105F12800E1F769 +:100C100025FB50220021DFF88C07E1F71FFB502253 +:100C20000021DFF88407E1F719FB50220021DFF8EB +:100C30007C07E1F713FB0020207060702071607169 +:100C4000A070E070A07120816081DFF86407C4F8B3 +:100C500080009FEDC80B84ED040B84ED060B84ED42 +:100C6000080B84ED0A0B0020A86731BD2DE9F84F71 +:100C70002DED048B84B0B0EE408ADFF82047218947 +:100C800000EB010BA4F808B0618945186581A079D3 +:100C9000192803DA401CA07184ED208A9FEDB20A66 +:100CA000B4EE408AF1EE10FAC0F21781D4ED200ABA +:100CB000F4EE400AF1EE10FAC0F20F81A079192883 +:100CC000C0F20B811FFA8BFBBBF1C30FC0F2058191 +:100CD00094F800A05646DFF8CC7607EB860080ED4E +:100CE000008A84ED208A94F80190B9F1000F04D1B4 +:100CF00087ED148A87ED158A52E0D7ED168A9FEDAD +:100D00009B9B97ED140A28EE800A10EE100AE7F775 +:100D1000A1FBCDE9020118EE900AE7F79BFB024622 +:100D20000B4651EC190BE1F739FFCDE9000118EE44 +:100D3000100AE7F78FFBDDE90023E1F7EFFFDDE9BC +:100D40000223E2F7FDF8E7F7ADFB08EE100A87EDA6 +:100D5000148AD7ED178A97ED150A28EE800A10EE4F +:100D6000100AE7F777FBCDE9020118EE900AE7F7E2 +:100D700071FB02460B4651EC190BE1F70FFFCDE971 +:100D8000000118EE100AE7F765FBDDE90023E1F743 +:100D9000C5FFDDE90223E2F7D3F8E7F783FB7865C7 +:100DA000ADB2B5F57A7F13DDA078DFF800167A6D65 +:100DB00041F82020401CA070C0B2142801D10020AE +:100DC000A070E078142801DA401CE07000206081F7 +:100DD0004D46142D30D106F10108B8F1140F01D1A0 +:100DE0004FF0000857F8280008EE100AE7F732FB2A +:100DF00002460B46D4E90401E1F7D0FEC4E9040140 +:100E000028EE080A10EE100AE7F724FB02460B460C +:100E1000D4E90601E1F7C2FEC4E90601DFF888055E +:100E200050F82800E7F716FB02460B46D4E9080104 +:100E3000E1F7B4FEC4E9080157F8260008EE100AED +:100E4000E7F708FBD4E90423E2F77AF8C4E90401E0 +:100E500028EE080A10EE100AE7F7FCFAD4E9062398 +:100E6000E2F76EF8C4E9060152464946384600F0FA +:100E7000ADF9DFF8340500EB860080ED000A10EED6 +:100E8000100AE7F7E7FAD4E90823E2F759F841EC4A +:100E9000180B84ED088B04EB8600796D0163DFF895 +:100EA000000520F816B0142D02DA09F10100607077 +:100EB0006078E2F737F802460B4651EC180BE2F780 +:100EC000B3F8C4E90A010AF101002070C0B2142885 +:100ED00001D1002020700020208104B0BDEC048BE3 +:100EE000BDE8F18F80B5DFF8B4048078411E00D5ED +:100EF0001431801F00D51430DFF8B02402EB8101DB +:100F000091ED000A02EB8000D0ED000A30EE600A9D +:100F100010EE100AE7F79EFA21F00041E7F7C2FA57 +:100F200000EE100A01BD80B5DFF870048078411E24 +:100F300000D51431801F00D51430DFF86C2402EB8B +:100F4000810191ED000A02EB8000D0ED000A30EE45 +:100F5000600A10EE100AE7F77DFA21F00041E7F78A +:100F6000A1FA00EE100A01BD0100FA4300000000E2 +:100F70000000F03F00000000000000002DE9F843F1 +:100F80002DED0A8BB0EE409A814688460024254616 +:100F9000DFEDBA8A9FEDB98ADFEDB89A5FFA89F979 +:100FA000B9F1040F04D19FEDB6AADFEDB6AA03E0B4 +:100FB0009FEDB5AADFEDB5AADFF8E06370781428DD +:100FC00040F0FE80F0780728C0F2FA80B5EE409A33 +:100FD000F1EE10FA40F3F480FFF784FFB0EE40BA70 +:100FE000FFF7A1FFF0EE40BADFF8B473B4EE4BAAFE +:100FF000F1EE10FA32D596ED0ACB1AEE900AE7F729 +:1010000029FA53EC1C2B23F00043E1F765FF25D2AE +:1010100051EC1C0B21F00041DFF89823DFF89833E6 +:10102000E1F75AFF1AD29FED9A0AF4EE40BAF1EEB8 +:1010300010FA13D597ED1E0AB5EE400AF1EE10FA3C +:1010400001D1224602E0F86FA8EB00024B4671780E +:101050003078401E00F01EF9044602E02046B867D2 +:10106000F867002C00F0A68097ED1E0AB5EE400A46 +:10107000F1EE10FA04D1C7F87C804FF07E50B867CB +:10108000284604E037F811104D19ADB2401C80B26B +:1010900001461429F6DB2846E1F744FFDFF81C235C +:1010A000DFF81C33E1F73AFEE7F7FCF909EE900AA6 +:1010B00019EE100AE7F7CEF9C24AC34BE1F72EFE4C +:1010C000E7F7F0F900EE100A29EE809A3078411E19 +:1010D00000D514317278801A00D5143006EB8101E6 +:1010E00091ED0C0A06EB8000D0ED0C0A30EE600AA0 +:1010F000FFEE000A20EE200A10EE100AE7F7AAF928 +:10110000B24AB34BE1F790FFE7F7CCF909EE900A4A +:10111000F4EE499AF1EE10FA02DBDFED589A11E095 +:1011200029EE090A09EEE90A10EE100AE7F792F92A +:1011300041EC100BE2F79CF851EC100BE7F7B2F919 +:1011400008EE900A307989EEA80A07EB800181ED5C +:101150000A0A401C3071C0B2142801D1002030713D +:101160007079142801DA401C7071002006E007EB4A +:10117000800191ED0A0A38EE008A401C71790A4616 +:1011800080B29042F3D3B2EE040A28EE000A00EED9 +:10119000901AF8EE600A80EE200A10EE100AE7F7C7 +:1011A00059F98C4A8C4BE1F7B9FDE7F77BF909EE69 +:1011B000900A02E0284630717071B0EE690A01E0D1 +:1011C0009FED2E0ABDEC0A8BBDE8F18338B52DEDFD +:1011D000048B9FED2A8A9FED290ADFED280ADFEDB7 +:1011E000278A00231AE0142C00DB143C01EE103A8D +:1011F000B8EEC11A31EE088A50F8244001EE904A48 +:1012000030EE210A41EE210A13FB03F401EE104AED +:10121000B8EEC11A71EE288A5B1CDBB20C46A34201 +:1012200005DA141B1C19641CDDD51434DEE701EE4D +:10123000101AB8EE419A69EE200A48EE400A10EE04 +:10124000900AE7F707F904460D4629EE280A08EE4A +:10125000480A10EE100AE7F7FDF8604A604BE1F724 +:101260006FFE02460B4620462946E1F7DDFEE7F712 +:1012700019F900EE100ABDEC048B31BD000000002E +:10128000CDCC4C3EA69B443B8FC2753D6F12033BB9 +:101290000BD7A33C2DE9F24F2DED028B044691466E +:1012A0004FF00008002C01D5143402E0142C00DBB0 +:1012B000143C45462E46042B02D19FED348A01E0B2 +:1012C0009FED338A2F460EE09FED320AF4EE408AFE +:1012D000F1EE10FA06DBF4EE488AF1EE10FA01D5D1 +:1012E000761CB6B27F1C9DF80800FFB23946421E3C +:1012F000914236DA201A0818401C01D5143002E059 +:10130000142800DB1438411C142900DB1439234A4B +:1013100002EB810191ED0C0A02EB8000D0ED0C0A8A +:1013200070EE608A9FED1C0AF4EE408AF1EE10FA2E +:10133000CAD518EE900AE7F78DF802460B4692469A +:101340009B4618EE100AE7F785F84246254BE1F771 +:10135000E5FC52465B46E1F7BFFDB5D26D1CADB270 +:10136000C0E7B9F1090F01D20E2000E00A20B04217 +:1013700002D24FF0010803E0A84201D24FF0020868 +:101380004046BDEC028BBDE8F28F00008FC2F53CF9 +:101390008FC2753C7012033B6F1203BBF013012028 +:1013A000F41401202C780020A01F0120F01F012040 +:1013B00000407E447B14AE47E17A843FFCA9F1D221 +:1013C0004D62503F0492B06F2711913FB81E85EBDC +:1013D00051B8BE3F9A9999999999B93F8DEDB5A0A9 +:1013E000F7C6B03E0000F0BF0FB480B52022002148 +:1013F0000846E6F733FE022801D1022005E006F098 +:10140000D9FB304800210170012002BC5DF814FBBB +:1014100080B5202200210120E6F720FE022801D11C +:10142000022002BD274800210170012002BD70B5D5 +:101430008CB02548446BA069E168451800A8E6F720 +:101440006CFE204E3078012801D100200BE000A86E +:1014500090EC030A06F0BAFB012803D128700120A2 +:10146000A077307001200CB070BD80B5E6F7F4FDB8 +:10147000164908601649C0F8101500F210501549B9 +:101480004160154981600FF21101C1600FF25101F5 +:101490000161012002BD00000C48006890F80105C0 +:1014A000002801D10020704705E080B5002000F041 +:1014B00006F8012002BD094890F90000704707496D +:1014C000087070470429012008400020A02801204E +:1014D000E9130208111402082F140208032901203D +:1014E00018B440F221120B7812FB030301241C7084 +:1014F0000B7812FB03035C700B7812FB03032024B0 +:101500009C700B7812FB03000022C2700878401C0C +:10151000087011BCC9E7000010B5DFF8F8440020DE +:10152000206001F0D6F8606105206060012010BDE8 +:10153000DFF8E004002101600120704770B52DED57 +:10154000048B84B00C46002103910291019100911B +:10155000DFF8C054012C07D1296090ED008AD0ED4E +:10156000018A90ED029A7BE069684A1E68692B68DF +:1015700093421DDA1E22591C09B200F0CBFA85ED08 +:10158000020A1E222868411C09B2686900F0E0FACC +:1015900085ED040A1E222868411C09B2686900F022 +:1015A000F5FA85ED030A2868401C00EE100A49E0B0 +:1015B00018D11E2209B200F0ADFA85ED020A1E22F2 +:1015C000696809B2686900F0C3FA85ED040A1E2251 +:1015D000696809B2686900F0D9FA85ED030A95EDEA +:1015E000010A2FE01E2209B200F084FA06461E22EC +:1015F0000021686900F07EFA95ED020AD6ED000A36 +:1016000030EE600AD0ED000A30EE200A85ED020AC5 +:1016100095ED040AD6ED010A30EE600AD0ED010A1C +:1016200030EE200A85ED040A95ED030AD6ED020A94 +:1016300030EE600AD0ED020A30EE200A85ED030A92 +:1016400095ED010AB8EEC00AD5ED020A80EE808A57 +:10165000D5ED040AC0EE808AD5ED030A80EE809AAB +:10166000B0EE491AF0EE680AB0EE480A01A903A8E4 +:1016700000F022F80022B0EE491AF0EE680AB0EE4F +:10168000480A00A902A800F0BCF82868401C28609D +:1016900001F013F8039981610199C1610299016216 +:1016A00000994162022C02D0012101F00EF80120C4 +:1016B00004B0BDEC048B70BD38B52DED068B04462F +:1016C0000D46B0EE40AAF0EE608AB0EE418AB5EE6B +:1016D000408AF1EE10FA40D5F1EE480A00F01EFB08 +:1016E0009FEDBF9B10EE100AE6F7B4FE53EC192BEA +:1016F000E1F714FBE6F7D6FE00EE100A00F02AF937 +:10170000BDEEC00A84ED000A2AEE0A0A08EE080AB5 +:1017100010EE100AE6F79EFE41EC100BE1F7A8FD73 +:1017200051EC100BE6F7BEFE00EE900AB1EE680A2F +:1017300000F0F4FA10EE100AE6F78CFE53EC192BC9 +:10174000E1F7ECFAE6F7AEFE00EE100A00F002F95F +:10175000BDEEC00A85ED000A50E0B5EE408AF1EE1C +:1017600010FA4BDDF0EE480AB1EE4A0A00F0D6FA64 +:101770009FED9B9B10EE100AE6F76CFE53EC192BC5 +:10178000E1F7CCFA0022984BE1F7DAFBE6F78AFEA4 +:1017900000EE100A00F0DEF8BDEEC00A84ED000A8B +:1017A0002AEE0A0A08EE080A10EE100AE6F752FEC0 +:1017B00041EC100BE1F75CFD51EC100BE6F772FE0B +:1017C00000EE900AB1EE680A00F0A8FA10EE100AD6 +:1017D000E6F740FE53EC192BE1F7A0FA0022834B09 +:1017E000E1F7AEFBE6F75EFE00EE100A00F0B2F89D +:1017F000B1EE400ABDEEC00A85ED000ABDEC068BD5 +:1018000031BD38B52DED048B04460D46F0EE408A0F +:10181000B0EE609AB0EE418AB5EE409AF1EE10FA61 +:1018200018D5F1EE490A00F079FA10EE100AE6F741 +:1018300011FE6F4A784BE1F771FAE6F733FE00EEDE +:10184000100A00F087F8B1EE400ABDEEC00A84ED40 +:10185000000A20E0B5EE409AF1EE10FA1BDBB1EE83 +:10186000680A00F05BFA10EE100AE6F7F3FD604A32 +:10187000694BE1F753FA00225C4BE1F761FBE6F7B5 +:1018800011FE00EE100A00F065F8B1EE400ABDEE60 +:10189000C00A84ED000AB5EE408AF1EE10FA28D5B0 +:1018A00028EEA80A09EE090A10EE100AE6F7D2FDA2 +:1018B00041EC100BE1F7DCFC51EC100BE6F7F2FD0C +:1018C00000EE900AB0EE480A00F028FA10EE100A76 +:1018D000E6F7C0FD464A504BE1F720FAE6F7E2FD95 +:1018E00000EE100A00F036F8BDEEC00A85ED000AE1 +:1018F0002CE0B5EE408AF1EE10FA27DD28EEA80ABA +:1019000009EE090A10EE100AE6F7A4FD41EC100BEF +:10191000E1F7AEFC51EC100BE6F7C4FD00EE900AC7 +:10192000B0EE480A00F0FAF910EE100AE6F792FD60 +:101930002F4A394BE1F7F2F9E6F7B4FD00EE100A51 +:1019400000F008F8BDEEC00A85ED000ABDEC048B7E +:1019500031BD0000DFED270A9FED271AB4EE410AE2 +:10196000F1EE10FA09DBB4EE600AF1EE10FA04D5DC +:10197000DFED220A30EE200A7047B4EE600AF1EE85 +:1019800010FA0BDBDFED1E0AB4EE600AF1EE10FA7E +:1019900004D5DFED1C0A30EE200A7047DFED1A0A8D +:1019A000DFED1A1AB4EE610AF1EE10FA09DBB4EEBB +:1019B000600AF1EE10FA04D5DFED150A30EE200AC8 +:1019C0007047B4EE600AF1EE10FA08DBDFED130A9F +:1019D000B4EE600AF1EE10FA01D530EE010A70475C +:1019E000E6C1631ADCA54C4000806640008066C0FA +:1019F000E6C1631AFFFF06C4000034C4000034448B +:101A0000FFFF33C30000B443010007440100344327 +:101A10000000B4C3B8250120DCA54C4001003444CB +:101A2000E54A12689FEDBC0A038800EB4303B3F953 +:101A3000043000EE903AF8EEE00A92ED001AB8EEAB +:101A4000411A70EEC10A92ED031AB8EE411AC0EEC7 +:101A5000810A60EE800AC1ED000AD2ED010AF8EEBB +:101A6000600A038800EB4303B3F9063001EE103A35 +:101A7000B8EEC11A70EEC10A92ED041AB8EE411A1E +:101A8000C0EE810A60EE800AC1ED010AD2ED020AC1 +:101A9000F8EE600A038800EB4300B0F9080001EE9D +:101AA000100AB8EEC11A70EEC10A92ED051AB8EE2E +:101AB000411AC0EE810A20EE800A81ED020A01205F +:101AC00070470388934201D30023038003885B1C83 +:101AD00003809BB2934201D300220280028802EB72 +:101AE000420300EB8300001D91EC030A80EC030A23 +:101AF00001207047B0F90030591A09B2002901D508 +:101B000011FA82F109B201EB410200EB8200001DE3 +:101B10007047000070B49FEDB80A0023B0F9004090 +:101B200010E024B2250008D405EB450600EB86053D +:101B3000D5ED010A30EE200A641E24B2002C00D537 +:101B4000541E5B1C1BB28B42EBDB70BC7047000069 +:101B500070B49FEDA90A0023B0F9004010E024B250 +:101B6000250008D405EB450600EB8605D5ED020AF5 +:101B700030EE200A641E24B2002C00D5541E5B1CDB +:101B80001BB28B42EBDB70BC7047000070B49FED62 +:101B90009A0A0023B0F9004010E024B2250008D4CE +:101BA00005EB450600EB8605D5ED030A30EE200A6D +:101BB000641E24B2002C00D5541E5B1C1BB28B4249 +:101BC000EBDB70BC7047000010B52DED068BADF55A +:101BD000FB6D00A80FF2282140F2D472E0F792FFCB +:101BE0009FED768B9FED779B00ACB5EE400AF1EE52 +:101BF00010FA48DB9FED75ABDFED760AB4EE600AB4 +:101C0000F1EE10FA1AD510EE100AE6F723FC53ECA9 +:101C1000192BE1F783F853EC182BE1F791F9E1F771 +:101C2000A7FB54F82000E1F773F953EC1A2BE1F706 +:101C300075F8E6F737FC00EE100A68E0F7EE000AE8 +:101C400080EE800A10EE100AE6F704FC53EC192B24 +:101C5000E1F764F853EC182BE1F772F9E1F788FB30 +:101C600054F82000E1F754F953EC1A2BE1F756F839 +:101C700002460B465B485849E0F790FFE6F712FC36 +:101C800000EE100A43E0FFEE000AB4EE600AF1EE47 +:101C900010FA1CDBB1EE400A10EE100AE6F7DAFB90 +:101CA00053EC192BE1F73AF853EC182BE1F748F90C +:101CB000E1F75EFB54F82000E1F72AF90022474BD8 +:101CC000E1F72CF8E6F7EEFB00EE100A1FE080EEDD +:101CD000800A10EE100AE6F7BDFB53EC192BE1F772 +:101CE0001DF853EC182BE1F72BF9E1F741FB54F801 +:101CF0002000E1F70DF90022394BE1F70FF8394ADE +:101D00003E4BE1F71DF9E6F7CDFB00EE100A0DF5AD +:101D1000FB6DBDEC068B10BDC3F51C4180B5B0EE6C +:101D2000401AF5EE400AF1EE10FA04DD81EE200AC9 +:101D3000BDE8014048E7F5EE400AF1EE10FA24D57F +:101D400081EE200AB5EE401AF1EE10FA0EDBFFF735 +:101D50003BFF10EE100AE6F77DFB224A224BE1F72B +:101D6000EFF8E6F79FFB00EE100A01BDFFF72CFF2E +:101D700010EE100AE6F76EFB1A4A1C4BE1F7E0F88A +:101D8000E6F790FB00EE100A01BDB5EE401AF1EE49 +:101D900010FA02DD9FED160A01BDB5EE401AF1EE14 +:101DA00010FA02D59FED130A01BD9FED130A01BD84 +:101DB0000149086070470000C028012000000000B1 +:101DC0000000E03F0000000000407F4000000000F5 +:101DD0000000503F0100803FFB21F93F000050BF51 +:101DE0000000503F182D4454FB210940FB2109C03D +:101DF000DB0FC93FDB0FC9BF00000000FB21F9BFAB +:101E000000000000020000000400000006000000C6 +:101E1000080000000A0000000C0000000E00000096 +:101E20001000000012000000140000001700000065 +:101E3000190000001B0000001D0000001F00000032 +:101E40002100000023000000250000002700000002 +:101E5000290000002B0000002D0000002F000000D2 +:101E600031000000330000003500000037000000A2 +:101E7000390000003B0000003D0000003F00000072 +:101E80004100000043000000460000004800000040 +:101E90004A0000004C0000004E000000500000000E +:101EA00052000000540000005600000058000000DE +:101EB0005A0000005C0000005E00000060000000AE +:101EC000620000006400000066000000680000007E +:101ED0006A0000006C0000006E000000700000004E +:101EE000720000007400000076000000780000001E +:101EF0007A0000007C0000007E00000080000000EE +:101F000082000000840000008600000088000000BD +:101F10008A0000008C0000008E000000900000008D +:101F2000920000009400000096000000980000005D +:101F30009A0000009C0000009E000000A00000002D +:101F4000A2000000A4000000A6000000A8000000FD +:101F5000AA000000AC000000AE000000B0000000CD +:101F6000B2000000B4000000B6000000B80000009D +:101F7000BA000000BC000000BE000000C00000006D +:101F8000C2000000C4000000C6000000C80000003D +:101F9000CA000000CC000000CE000000D00000000D +:101FA000D2000000D4000000D6000000D8000000DD +:101FB000DA000000DC000000DE000000E0000000AD +:101FC000E2000000E4000000E6000000E70000007E +:101FD000E9000000EB000000ED000000EF00000051 +:101FE000F1000000F3000000F5000000F700000021 +:101FF000F9000000FB000000FD000000FF000000F1 +:1020000001010000030100000401000006010000BE +:10201000080100000A0100000C0100000E01000090 +:102020001001000012010000140100001601000060 +:1020300018010000190100001B0100001D01000033 +:102040001F01000021010000230100002501000004 +:1020500027010000290100002A0100002C010000D6 +:102060002E010000300100003201000034010000A8 +:102070003601000038010000390100003B0100007A +:102080003D0100003F01000041010000430100004C +:102090004501000046010000480100004A0100001F +:1020A0004C0100004E0100005001000051010000F1 +:1020B00053010000550100005701000059010000C4 +:1020C0005B0100005C0100005E0100006001000097 +:1020D000620100006401000065010000670100006A +:1020E000690100006B0100006D0100006E0100003D +:1020F0007001000072010000740100007601000010 +:1021000077010000790100007B0100007D010000E3 +:102110007F010000800100008201000084010000B6 +:102120008601000087010000890100008B0100008A +:102130008D0100008E01000090010000920100005E +:102140009401000095010000970100009901000032 +:102150009B0100009C0100009E010000A001000006 +:10216000A2010000A3010000A5010000A7010000DA +:10217000A8010000AA010000AC010000AE010000AF +:10218000AF010000B1010000B3010000B401000084 +:10219000B6010000B8010000B9010000BB01000059 +:1021A000BD010000BF010000C0010000C20100002D +:1021B000C4010000C5010000C7010000C901000002 +:1021C000CA010000CC010000CE010000CF010000D8 +:1021D000D1010000D3010000D4010000D6010000AD +:1021E000D7010000D9010000DB010000DC01000084 +:1021F000DE010000E0010000E1010000E301000059 +:10220000E5010000E6010000E8010000E90100002E +:10221000EB010000ED010000EE010000F001000004 +:10222000F1010000F3010000F5010000F6010000DB +:10223000F8010000F9010000FB010000FD010000B1 +:10224000FE01000000020000010200000302000085 +:10225000040200000602000008020000090200005B +:102260000B0200000C0200000E0200000F02000032 +:102270001102000013020000140200001602000008 +:1022800017020000190200001A0200001C020000E0 +:102290001D0200001F0200002002000022020000B8 +:1022A0002302000025020000260200002802000090 +:1022B000290200002B0200002C0200002E02000068 +:1022C0002F02000031020000320200003402000040 +:1022D0003502000037020000380200003A02000018 +:1022E0003B0200003D0200003E02000040020000F0 +:1022F00041020000430200004402000046020000C8 +:1023000047020000480200004A0200004B020000A1 +:102310004D0200004E020000500200005102000079 +:102320005302000054020000550200005702000052 +:10233000580200005A0200005B0200005C0200002C +:102340005E0200005F020000610200006202000005 +:1023500064020000650200006602000068020000DE +:10236000690200006A0200006C0200006D020000B9 +:102370006F02000070020000710200007302000092 +:10238000740200007502000077020000780200006D +:102390007A0200007B0200007C0200007E02000046 +:1023A0007F02000080020000820200008302000021 +:1023B00084020000860200008702000088020000FC +:1023C0008A0200008B0200008C0200008E020000D6 +:1023D0008F020000900200009202000093020000B1 +:1023E000940200009602000097020000980200008C +:1023F000990200009B0200009C0200009D02000068 +:102400009F020000A0020000A1020000A202000042 +:10241000A4020000A5020000A6020000A80200001D +:10242000A9020000AA020000AB020000AD020000F9 +:10243000AE020000AF020000B0020000B2020000D5 +:10244000B3020000B4020000B5020000B7020000B1 +:10245000B8020000B9020000BA020000BC0200008D +:10246000BD020000BE020000BF020000C102000069 +:10247000C2020000C3020000C4020000C502000046 +:10248000C7020000C8020000C9020000CA02000022 +:10249000CB020000CD020000CE020000CF020000FF +:1024A000D0020000D1020000D3020000D4020000DC +:1024B000D5020000D6020000D7020000D8020000BA +:1024C000DA020000DB020000DC020000DD02000096 +:1024D000DE020000E0020000E1020000E202000073 +:1024E000E3020000E4020000E5020000E602000052 +:1024F000E8020000E9020000EA020000EB0200002E +:10250000EC020000ED020000EE020000F00200000C +:10251000F1020000F2020000F3020000F4020000E9 +:10252000F5020000F6020000F7020000F8020000C9 +:10253000FA020000FB020000FC020000FD020000A5 +:10254000FE020000FF020000000300000103000083 +:10255000020300000303000005030000060300005F +:102560000703000008030000090300000A0300003D +:102570000B0300000C0300000D0300000E0300001D +:102580000F030000100300001103000013030000FC +:1025900014030000150300001603000017030000D9 +:1025A00018030000190300001A0300001B030000B9 +:1025B0001C0300001D0300001E0300001F03000099 +:1025C0002003000021030000220300002303000079 +:1025D0002403000010B500F081F805F013FCFEF7AD +:1025E0009BFF454C4422002104F10C00DFF736FE2E +:1025F0000A2200212046DFF731FE0A2200213F484F +:10260000DFF72CFE0C22002104F15400DFF726FE38 +:102610003B4C4FF4B67200212046DFF71FFE1E2010 +:10262000208010BD05F0EEBB80B505F01FFCBDE8B5 +:102630000140FEF77DBF3148F6F72EBE10B42F489B +:102640002D491CC81CC10C380021418010BC7047AA +:1026500010B50446FFF7E4F92088401C2080B4F947 +:10266000021080B2884200DB2180012010BD38B505 +:10267000214C256D04F154012046FFF7E9FF1E228D +:1026800004F154011E48FFF71CFA012104F1540023 +:10269000FEF754FFA80705D5002104F1540005F00A +:1026A000E7FB04E0012104F1540005F0E1FB002107 +:1026B00004F10C00BDE8344007E0124870470E49B1 +:1026C000CA6822EA0000C8607047026811430160CE +:1026D00070470B4870470C49086070470A4800680B +:1026E00000210160416081604FF48061C16001613F +:1026F0004161012101767047081B012070270120EC +:1027000080040120141B0120C428012080B5C0468C +:10271000C046024A11001820ABBEFBE726000200AB +:102720002DE9F841174680461D46012FA8BFB94242 +:102730001BDB481E04B2062609E0E11B16FB045011 +:1027400006FB01510622E0F7CDF9601E04B2BC423F +:10275000F3DA06E016FB07F1481941440622E0F7D8 +:10276000C1F97F1E3FB2002FF4D5BDE8F1812DE9FC +:10277000F043079D089E002430F8147023F814706D +:1027800030F8147022F81470012716E04FF0060E8E +:1027900000EB440C0EFB07FE33F914903EF90C805D +:1027A000C845B8BF23F814803EF90CC032F914E0D4 +:1027B000E645B8BF22F814C07F1C8F42E6DB33F930 +:1027C00014C032F914704FEA6C0C0CEB670725F853 +:1027D000147012F81470FF0703D413F81470FF0775 +:1027E00004D535F814707F1C25F8147032F8147075 +:1027F00033F814C0A7EB0C073FB2002F48BF47F6D1 +:10280000FF7726F81470641C032CB5DBBDE8F08359 +:1028100000220F23520040008842A4BF401A521CDD +:102820005B1EF7D110B27047012808DB002100B20F +:10283000B0F5804FBCBF4000491CF8DB0AE008B986 +:102840000F2070470021154A01E04000491C00B2EA +:102850009042FADA08B27047012807DB0021B0F194 +:10286000804FBCBF4000491CF9DB09E008B91F20BC +:102870007047002101E04000491C10F1804FFADA56 +:1028800008B270470649884208BF47F6FF7002D079 +:10289000002848BF404200B27047000000C0FFFF60 +:1028A0000080FFFF70B504460D461646FFF7BCFFDB +:1028B00030802846FFF7B8FFB6F9003004FA03F27B +:1028C00005FA00F1181A09B212B29142BCBF5210B7 +:1028D000401E30801046BDE8704099E72DE9F84F62 +:1028E0008846CEB081461646B8F1210F80F22C8181 +:1028F0000120FFF78DFF0022002394461746062192 +:102900000FE001FB07FE7F1C3EF90940CE4414FB9B +:1029100000CCBEF9024014FB0033BEF9044014FBA6 +:1029200000224745EDDB4FEAEC30ADF80000D8134C +:10293000ADF80200D013ADF80400002014E001FB54 +:1029400000F202EB0903B3F9047032F90920B3F97C +:10295000023012FB02F213FB032217FB07220EAB1D +:10296000D21223F81020401C4045E8DB00221EA8AC +:1029700015E001FB02F7BDF8004037F809301B1BDA +:102980003B521EABFB184F44BDF802507C88641BC1 +:102990005C80BF88BDF804403F1B9F80521C4245AD +:1029A000E7DB02AF002205ACBA607A6002922262D5 +:1029B00022610592E2606260A261A260E2616261EE +:1029C00050E001FB02F3DDF814C033F909E01D5EAD +:1029D000D4F810A01EFB05CECDF814E00DF1780E52 +:1029E00003EB090C9E44BCF90250BEF902B015FB82 +:1029F0000BAAC4F810A0BCF904C0D4F820A0BEF9FA +:102A000004B01CFB0BAAC4F820A033F900A0D4F832 +:102A10000CB015FB0AB5E5606560A5691CFB0A559D +:102A2000A561A560E569BEF902A01CFB0A5CC4F8BB +:102A30001CC0C4F814C00DF1380C3CF91250DDF87C +:102A400008C01B5E13FB05C302937B68BEF902C07E +:102A50001CFB05337B60BB68BEF904C01CFB05335F +:102A6000BB60521C4245ACDB20250298401002900E +:102A70004FF0000A78684FEA6008B868C7F8048029 +:102A80004FEA6009C7F808904FF0000B0C2005A929 +:102A900000FB0A1050F82B00FFF7DEFEA842B8BF7B +:102AA00005460BF1010BBBF1030FEFDB0AF1010A45 +:102AB000BAF1030FE8DB4FF0000A57F82A00FFF7DE +:102AC000CBFEA842B8BF05460AF1010ABAF1030FCE +:102AD000F3DB6068A8408014F080F0887080A06804 +:102AE000A8408014B081B089B0806069A84080148B +:102AF000F081F08970810598A840801430802069A9 +:102B0000A84080143081206AA84080143082029846 +:102B10004E99A8408014088008FA05F04E99801458 +:102B2000488009FA05F04E9980148880B6F90000B3 +:102B30000628A4BFB6F90800062805DBB6F9100080 +:102B40000628A8BF042000DA00204FB0BDE8F08FAF +:102B50002DE9F04F804693B08946B2F910A0B2F942 +:102B60000800B2F90A101C9D1F4610FB0AF301FB76 +:102B70001131109110ABB2F900E0B2F90C101AFB50 +:102B80000EF401FB114159601EFB00F4B2F9021072 +:102B900001FB114199604FF0000C109C012153F88A +:102BA0002160B442BCBF34468C46491C0329F6DB85 +:102BB000012CC0F2A3800FFA8CFC4FF400640BA927 +:102BC00003AE05ABBCF1000F55D1ADF82C00508918 +:102BD000C880B2F902004042ADF814005089488024 +:102BE000108A08810221B2F90C0000F0B7F8002821 +:102BF00057D000F0B9F83C80BDF90C008010788007 +:102C0000B6F902008010B88002A9B7F90030B7F910 +:102C10000220B7F9040013FB03F312FB023210FB8E +:102C2000002000F07BF90002B7F9001000144143C6 +:102C3000C9123980B7F902104143C9127980B7F936 +:102C4000041010FB01F0C012B880B7F900C0B8F949 +:102C50000000B7F90230B8F90210B7F904201CFBE4 +:102C600000F013FB0100B8F9041012FB010E7446CA +:102C7000704601215DE0BCF1010F1DD1ADF82CA023 +:102C800090894880B2F90A004042ADF8140090895A +:102C9000C880108808810221B2F9020000F05EF8B5 +:102CA00000282BD000F060F8B6F9020080103880C0 +:102CB0007C80BDF90C00A5E7BCF1020F1ED1ADF878 +:102CC0002CE050884880B2F90C004042ADF8140066 +:102CD000D088C880108908810221B2F90A0000F06A +:102CE0003DF858B100F040F8BDF90C008010388074 +:102CF000B6F9020080107880BC8085E700202AE0C9 +:102D0000062606FB01FA0AEB08063AF908A0B6F90E +:102D100002B0B6F904601CFB0AFA13FB0BAA12FB03 +:102D200006A6B645B8BFB6468642D8BF3046341967 +:102D3000491C4945E4DBAEEB0000C012288049463F +:102D40000120FFF765FDE11210FB01F040000014C7 +:102D50004042F880012013B0BDE8F08F4042588017 +:102D600007AB09AA0BA808E003A8019005A80090EA +:102D700007AB09AA02210BA850E02DE9F84F8046C5 +:102D800091469A4600250C46062618E03AF915C0E9 +:102D900039F91530021412FB0CFC4FEAEC3CC0F37D +:102DA0004E0013FB02C210FB03F002EBE03008EB15 +:102DB0004502400088527F1CA74205DB6D1CA542DE +:102DC00029DA2F4606FB058B3BF917006A1EC00364 +:102DD00012B206FB07F10BE001EB080C3BF91230D5 +:102DE0003CF912C013FB0CF3521EA0EB830012B28D +:102DF000002AF1D5BD42C9D1012801DA00200BE03B +:102E000000A900F08BF8011429F81510C0F34E004A +:102E10002AF81500CFE70120BDE8F28F2DE9F04731 +:102E2000DDF820E0099E4FF0000C8846062526E0DC +:102E300005FB0C0936F914A039F9149019FB0A772F +:102E4000641E24B2002CF3D53EF91C4032F91C90CC +:102E500033F91CA0E403A4EB87073C1414FB0AFA23 +:102E60004FEAEA3AC7F34E0719FB04A417FB09F728 +:102E700004EBE7377F0026F81C700CF1010CC44509 +:102E800029DA0027ACF10104DBE700EB410C15FB6C +:102E900004CC36F914E0BCF900C01CFB0EFCA7EB17 +:102EA0008C07641C24B2A8F1010CA445EDDA33F9B7 +:102EB00011E032F911C03C1414FB0EFE4FEAEE3E55 +:102EC000C7F34E071CFB04EE17FB0CF70EEBE737BE +:102ED0007F0026F81170491E09B2002904D436F982 +:102EE0001170FF034C1CDDE7BDE8F08710B5002131 +:102EF0000022002801D5002010BD1023840F5200AD +:102F000004EB81018000521C914226BF891A521C99 +:102F1000521E5B1EF2D1D003001410BD38B5054619 +:102F20000C46012D04DA002020804FF0804032BD95 +:102F3000FFF792FC208005FA00F1C0F11E0020800E +:102F4000C20758BF491000044014401C2080481696 +:102F500010380FF2240200B232F9103002EB4000B8 +:102F6000C9014088181A490C10FB01F0C0EBC330AE +:102F700021884000084132BDFF7F2E7CAE787675F7 +:102F80007D72BA6F296DC26A8368666669648962F8 +:102F9000C260135F7A5DF55B825A2159CF578B5619 +:102FA00055552C540F53FC51F450F64F014F144E0D +:102FB000304D534C7E4BAF4AE74925496848B247EC +:102FC00000475446AD450A456B44D1433B43A842B4 +:102FD00019428E41064182400040000010B5DFF8E2 +:102FE00060484822014604F54570E1F783FDD4F8B6 +:102FF0005003606304F554704168C4F8841080681D +:10300000C4F8D400032802D1012005F065FA00209D +:1030100010BD80B54822DFF83818E1F76BFD0020BD +:1030200002BD80B50C220146DFF82808E1F762FDF9 +:10303000002002BD80B50C22DFF81818E1F75AFD18 +:10304000002002BD10B5DFF810484FF4A672002131 +:1030500004F50870DFF702F94FF4087200212046EA +:10306000DFF7FCF800F0C7FB4DF294034822DFF8CD +:10307000EC17DFF8EC0705F08AFA04464CF25133FE +:103080000C22DFF8E017DFF8E00705F080FA2043B4 +:1030900010BD0023002A01D14FF48032426201F0BA +:1030A0000302032A00D1012301F01802182A00D1DB +:1030B000012301F0C002C02A00D10123002B00D05F +:1030C0008821016070470A460146DFF88C07E0E777 +:1030D000DFF86C1788624FF47A7290FBF2F2CA62E2 +:1030E0008A6C002A04D1DFF8842792FBF0F0886410 +:1030F0007047DFF84C17886778314FF47A7290FB8D +:10310000F2F24A600A6A002A04D1DFF8602792FBD3 +:10311000F0F008627047DFF82817C1F8C800C8311E +:103120004FF47A7290FBF2F24A600A6A002A04D1E4 +:10313000DFF8382792FBF0F008627047DFF81817C5 +:10314000C1F860014FF47A7290FBF2F0C1F86401AB +:103150007047DFF80407D0F8D000001200F001003B +:103160007047DFF8F406006B001200F001007047B2 +:10317000DFF8E406D0F88000001200F0010070478C +:1031800030B400200146DFF8D02602F130031C6D78 +:10319000E40501D5D3E91601146BE40508D5D3E99C +:1031A0000245A94204DC01DBA04201D220462946A7 +:1031B00002F1D003D2F8D040E40508D5D3E90245A6 +:1031C000A94204DC01DBA04201D2204629461C6D45 +:1031D000E40508D5D3E91645A94204DC01DBA04289 +:1031E00001D220462946D2F85031DB050AD502F536 +:1031F000A874D4E90223994204DC01DB904201D295 +:103200001046194630BC70470A460146DFF8600692 +:103210003FE70A460146DFF85C063AE770B584B03E +:1032200004460D46B4F90400C003009000AEB4F9A2 +:103230000600C0037060B4F90800C003B06004F178 +:103240000C0300AA606A4100206880B204F0A2FA70 +:1032500000982968A0EB6100009070686968A0EB95 +:1032600061007060B068A968A0EB6100B06004F113 +:10327000180300AA606A4100206880B204F08AFA4C +:10328000206B40F0200020637FBDDFF8CC15C1F833 +:103290008400C1F85403704738B50C46002818D094 +:1032A000DFF8B435D10702D50168C3F834139107AC +:1032B00003D503F54D7145684D60510703D503F5FE +:1032C0004D718068886003F54D7103F15000FFF780 +:1032D000A5FF2046FFF7D9FF002210210846BDE8D0 +:1032E000384005F089B9F8B504460D46DFF8686541 +:1032F000002C12D006F557770C222146384604F0F0 +:1033000027FC002809D00C2221463846E1F7F2FBC1 +:1033100006F557713046FFF781FF756306F54B746C +:103320006562D6F80801002802D0C6F82C0303E035 +:103330004FF4D810C6F82C0300220421084605F0EB +:103340005BF901206060F1BDDFF80C15D1F83003A6 +:10335000012801D1012000E000200022C1F8302323 +:10336000704710B50C46002804D00C22DFF8E41496 +:10337000E1F7C0FB002C04D0DFF8DC04D0F82C030C +:10338000206010BDF8B514461D46DFF8CC6406F188 +:10339000540702688B0610D4A6F85420416879803F +:1033A0008068B880F86A40F08000F86206F54D71D8 +:1033B00006F15000FFF732FF0DE07A614268BA6112 +:1033C0008068F861F86A40F02000F86201F00300BC +:1033D0003863C6F85403F86A40F4A070F862D6E97E +:1033E0002201C6E92401C6E922450020F2BD70B5DC +:1033F00014461D46DFF8606406220146301DE1F7E1 +:1034000079FB306B40F4E0703063D6E90E01C6E919 +:103410001001C6E90E4506F557713046FFF7FEFE6E +:10342000002070BDFEB514461D46DFF82C6406F181 +:10343000A4078A0617D400F0B8F900A800F0A8F98C +:103440000098A6F8A40000A8416879808068B88038 +:1034500006F5457106F1A000FFF7E0FEF86A40F0BE +:103460008000F8620EE002687A614268BA618068A2 +:10347000F861F86A40F02000F86201F00300386358 +:10348000C6F85803D6E93601C6E93801C6E936451B +:10349000F86A40F4A070F8620020FEBD2DE9F04308 +:1034A00085B006460F4614461D46DFF8AC8308F586 +:1034B000A079F80409D500A9304604F0E2FA1022F8 +:1034C00000A94846E1F716FB04E0102231464846C1 +:1034D000E1F710FBC8E95645D8F8500107F4385118 +:1034E00041F4E0710843C8F85001D8F8500110F4D5 +:1034F000406F04D022462B46304604F0FBFED8F83D +:10350000500100050AD500A80FF270311022DFF734 +:10351000F9FA22462B4600A804F000FF002005B06F +:10352000BDE8F083DFF830030021C0F88010704759 +:10353000DFF824030021C0F8D0107047DFF818032B +:103540000021C0F850117047DFF80C03002101631F +:1035500070472DE9F04300231C4600E0641CDFF8AF +:10356000F852D5F82062B4420DDA0C2707FB045557 +:10357000D5F824620746BE4203D0D5F828528D42C2 +:10358000ECD1162032E0142E2EDA1C46002E01D18A +:103590001BE0641CB44207DA04EB440705EB870721 +:1035A000D7F828728F42F4DBB4420ED00BE00C2720 +:1035B00007FB065707F5097C07F50677B7E80043D0 +:1035C000ACE80043761EB442F1DB0C2707FB045441 +:1035D000C4F8240204F5097041608260D5F8200225 +:1035E000401CC5F8200200E00C231846BDE8F0831B +:1035F000F8B50025DFF8604294F83000400600D5A9 +:10360000022594F88000400601D545F0010594F8A4 +:10361000D000400601D545F0040594F8200140068D +:1036200001D545F0080594F85001C00601D545F0D4 +:10363000100594F89801400601D545F020050026B4 +:10364000374611E007EB470004EB8001D1F82C026C +:10365000054208D02046D1F824128847002802D01D +:10366000002E00D106467F1CD4F820028742E9DBF9 +:1036700000F002F83046F2BD10B47748016B4A06FC +:1036800002D541F01001016300F130010A6D5306CB +:1036900002D542F010020A65D0F8D020530603D5B7 +:1036A00042F01002C0F8D02000F1D002136D5C0689 +:1036B00002D543F010031365D0F850315C0603D5F2 +:1036C00043F01003C0F85031036B23F04003036351 +:1036D0000B6D23F040030B65D0F8D01021F04001B2 +:1036E000C0F8D010116D21F040011165D0F85011D3 +:1036F00021F04001C0F8501100F5A870816C21F054 +:103700004001816410BC704738B50C46154600284E +:1037100003D00C225849E1F7EDF9002D04D04E48B2 +:10372000D0E92223C5E90023002C03D04A48D0F871 +:103730008400207031BD70B50C461546464E0C22F3 +:1037400006F1B801E1F7D6F9002D03D0D6E936012C +:10375000C5E90001002C09D0D6F86803002802D082 +:103760000020207070BDD6F8D400207070BD3A489B +:10377000406B70473848D0F86813002901D000200A +:103780007047D0F8D40070473348D0F884007047B1 +:10379000002107E0304A02EB8102D2F8C42140F850 +:1037A0002120491C0329F5DB704718B4002106E0ED +:1037B00003EB810250F82130C2F8B831491C264B86 +:1037C0000329F5DBD3F81812012907D103F5E272BA +:1037D000014603F5E87018BC04F05EB8002106E06D +:1037E00003EB810250F82140C2F8C441491C03296F +:1037F000F6DB11BC704710B500200246104C04E007 +:1038000004EB8001C1F8F421401C0928F8DB2422D4 +:10381000002104F5E870DEF721FD00200AE004EB4A +:1038200000114FF07E52C1F8F4214FF08042C1F8F0 +:10383000D021401C0328F2DBBDE8104002E000006C +:10384000A8E4002004480021C0F8181270470000C6 +:10385000BCE7002004E80020A8E4002013300208A0 +:10386000DD2F0208353002082330020840420F00E5 +:10387000F8E4002048E5002010E5002000000040AA +:10388000000000000000000000000000704780B54C +:1038900004F072FE04F0C4FE00280CD004F0C0FE58 +:1038A00023230FF28C020FF29801FFF7EFFFBDE820 +:1038B000014004F0B5BEFFF7C5FB00280CD0FFF7B0 +:1038C000C1FB26230FF268020FF27401FFF7DEFF3F +:1038D000BDE80140FFF7B6BB04F0EFFD00280CD0B7 +:1038E00004F0EBFD28230FF248020FF25401FFF71A +:1038F000CDFFBDE8014004F0E0BD012004F085FEED +:10390000002002BD80B504F0A1FE00280CD004F018 +:103910009DFE47230FF264020FF22401FFF7B6FF6A +:10392000BDE8014004F092BE002002BD000000008E +:10393000696E765F696E69745F6D706C000000007F +:10394000433A5C50726F6A6563745C4E6F746533A2 +:103950005F466972655C4E6F7465335F4669726578 +:103960005C496E76656E53656E73655C6D6C6C69F3 +:1039700074655C6D706C2E6300000000696E765F8C +:1039800073746172745F6D706C00000070470000AA +:1039900000B510EE100AE4F75DFD0022DFF8443CAC +:1039A000DFF7BCF904F068FEDFF8F42BC2E914017C +:1039B00000BDDFF8EC2BD2E912017047DFF8E01B05 +:1039C000D0E90E23C1E91223012088657047C107A1 +:1039D0000CD5DFF8501C4FF040420A6770314A6046 +:1039E0008A604FF08042CA600A614A6181070ED541 +:1039F000DFF8301C4FF04042C1F8182101F58C71FE +:103A00004A608A604FF08042CA600A614A6140079A +:103A10000ED5DFF8101C4FF04042C1F8C02101F56F +:103A2000E070426082604FF08042C2600261426199 +:103A3000704700000021401000D0491C0128FADA2C +:103A4000481C70472DE9F14F88B000200146CDE9B0 +:103A500004010898806F002801D10846BEE0FFF7F6 +:103A6000E9FF81464FF000088BE000EBC802D2E985 +:103A700000014A4604F03EFE04460D46089800EB5D +:103A8000C80002900246D2E906014A4604F032FE1E +:103A900006460F46A4FB042304FB053305FB043351 +:103AA000A4FB020104FB031105FB0211CDE9060191 +:103AB000029AD2E912014A4604F01CFECDE9000147 +:103AC000A6FB062306FB073307FB06330320A0FBF8 +:103AD00002AB00FB03BBDDE90001B0EB0A0061EBC8 +:103AE0000B01DDE90623A4FB02AB04FB03BB05FBD2 +:103AF00002BB4FEA4B0B4BEADA7B10EB4A0A41EB75 +:103B00000B0BA4FB040104FB051105FB0411301A87 +:103B100067EB0101A4FB002304FB013305FB003329 +:103B20000320A0FB026700FB0377DDE906013618DE +:103B30004F41029AD2E90C014A4604F0DBFD321AE9 +:103B400067EB0103A4FB020104FB031105FB021157 +:103B5000890041EA9071BAEB80006BEB010100290A +:103B600004DC00DB02D2404261EB4101DDE90423C9 +:103B70008B4204DC01DB824201D2CDE9040108F171 +:103B80000108B8F1030F0898FFF66FAF806F08992E +:103B9000C96F884210D000EE100AB8EEC00A04F0D7 +:103BA000BBFDF7EE000A80EE800A089880ED200A3F +:103BB00008980146896FC167DDE9040104F0BAFD88 +:103BC00000EE100A0898D0ED200A20EE200A10EE30 +:103BD000100A09B0BDE8F04F04F0DEBD09B0BDE841 +:103BE000F08F2DE9F04F85B0814600200146CDE9E8 +:103BF0000201D9F87800002801D1084679E0FFF7E2 +:103C000019FF00904FF0000849E009EBC802D2E923 +:103C10000001009A04F06EFD04460D46A4FB046703 +:103C200004FB057705FB047709EBC8000190024609 +:103C3000D2E90601009A04F05DFD801BB941A4FBA6 +:103C4000002304FB013305FB00330320A0FB02AB80 +:103C500000FB03BBA4FB060104FB071105FB0611D7 +:103C60001AEB00044BEB0105019AD2E90C01009A12 +:103C700004F040FD201A65EB0101002904DC00DBA3 +:103C800002D2404261EB4101DDE902238B4204DCB8 +:103C900001DB824201D2CDE9020108F10108B8F14D +:103CA000030FB2DBD9F87800D9F87C1088420FD026 +:103CB00000EE100AB8EEC00A04F02EFDF7EE000A7E +:103CC00080EE800A89ED200AD9F87800C9F87C00D6 +:103CD000DDE9020104F02EFD00EE100AD9ED200A04 +:103CE00020EE200A10EE100A05B0BDE8F04F04F0F7 +:103CF00053BD05B0BDE8F08F10B40121026BD205B1 +:103D000013D5DFF82029D2F888301468A3420CDBE1 +:103D1000D0F88000C00505D5D2F8D8015168884296 +:103D200003DB0521084610BC70470020FBE72DE9A6 +:103D3000F04184B00446002600ADDFF8E87812E0D8 +:103D400007EBC602D2E9040107F50872926AF2F79E +:103D5000CFFC07EB8602D2F894201204D317801808 +:103D600045F82600761C032EEADBA822002107F185 +:103D70001000DEF773FA0120FFF729FE68680028BB +:103D800001D4014600E04142009A002A00D5524287 +:103D9000914201DA104602E0002800D54042A968AD +:103DA000002901D40A4600E04A42824204DB00298D +:103DB00001D4084600E04842B4F90620110001D4BD +:103DC0000B4600E04B42B4F904C06646BCF1000F5C +:103DD00001D4B64601E0C6F1000E734504DABCF129 +:103DE000000F06D5764204E0002A01D40E4600E01A +:103DF0004E42B4F908100A0001D4134600E05342C1 +:103E0000B34204DB002901D4164600E05642616A41 +:103E100003F045FA616A300403F041FAB0F5201F5F +:103E200003DD052087F820024BE0DFF87467F16AB4 +:103E30006A68501A01D4034600E08B1AD6F828C0ED +:103E4000DDF800E0BEEB0C0E01D4F04603E0DDF837 +:103E50000080ACEB0808434508DABEF1000F01D43E +:103E6000704606E00098ACEB000002E0002800D5A8 +:103E7000881A316BAA68531A01D49C4601E0A1EB61 +:103E8000020C844504DB002B01D4184600E0881A9C +:103E9000616A03F004FA8046022004F05BFA07F539 +:103EA0000870C06A804506DA032100A8FFF71BFAF4 +:103EB0002046FFF783FD0098B0626868F062A8684A +:103EC0003063BDE8FF812DE9FE4186460E4600279E +:103ED0001CE0D317A2FB004502FB015503FB005574 +:103EE000204629460CEB4C0306EBC30303EBC70843 +:103EF000D8E9004524184D4103EBC703C3E9004549 +:103F00000CF1010CBCF1040FE3DB7F1CB06F032F3D +:103F10001BDA06EB870101F16003002802D13EF9AC +:103F2000170058623EF917005A6A821A00A840F832 +:103F30002720086E904200DA0A66D868824200DACA +:103F4000DA60012000218C46DCE7401CB0670120CC +:103F5000C6F8A000BDE8F7812DE9F0410446002530 +:103F6000069E05E006EB850054F82510C1666D1C21 +:103F7000032DF7DB06F17807C7E90623B06F0028A9 +:103F800014D0002510E006EB850854F82500D8F879 +:103F90008410401AF1F728FBD8F86010814200DA4B +:103FA0000146C8F860106D1C032DECDBB06F401C9F +:103FB000B0670120B862BDE8F08110B4002108E0CC +:103FC00000EB810202F16003DC685C62002313668F +:103FD000491C0329F4DB00F17801D1E90623C1E98A +:103FE0000823002282671046886210BC704730B4F4 +:103FF000D0E92423D0E92645101B63EB050130BC32 +:104000007047016E426E8A4200DA0A46816E914222 +:1040100000DA114608467047016EC26E891A426E78 +:10402000036FD21A8A4200DB1146826E406F101A6B +:10403000884200DB01460846704710B5DFF8E445CA +:104040001022002104F51670DEF708F91022002175 +:1040500004F51E70DEF702F91022002104F51A7033 +:10406000DEF7FCF81022002104F52270BDE81040B4 +:10407000DEF7F4B810B5DFF8AC45A822002104F152 +:104080001000DEF7EBF8A822002104F5B070DEF78F +:10409000E5F80520BDE8104099E4D0B4DFF88425A8 +:1040A00002F51E739C68002C02D1C2E99E0108E053 +:1040B000D2E99E678F4204DC01DB864201D2C2E96D +:1040C0009E01601C9860D0BC7047D0B4DFF85425C6 +:1040D00002F522739C68002C02D1C2E9A20108E01B +:1040E000D2E9A2678F4204DC01DB864201D2C2E939 +:1040F000A201601C9860D0BC7047D0B4DFF82425C2 +:1041000002F516739C68002C02D1C2E9960108E002 +:10411000D2E99667B94204DC01DBB04201D2C2E9C0 +:104120009601601C9860D0BC7047D0B4DFF8F424CE +:1041300002F51A739C68002C02D1C2E99A0108E0CA +:10414000D2E99A67B94204DC01DBB04201D2C2E98C +:104150009A01601C9860D0BC7047F8B507460124EE +:10416000DFF8C05405F11000FFF756FFDFF83064A8 +:10417000316C814203DAFFF77DFF0020F2BD384643 +:10418000FFF7BAFD070001D10220F2BD78071ED566 +:1041900005F5B070FFF756FC000D40EA0130091537 +:1041A000C5E98401D5E98401D6E904238B4205DC05 +:1041B00001DB824202D20024FFF7B7FFA8220021D0 +:1041C00005F5B070DEF74AF80420FFF700FCF807A9 +:1041D00011D505F11000FFF735FC05F50472C2E9B1 +:1041E0000601D6E906238B4205DC01DB824202D2BE +:1041F0000024FFF782FF2046F2BD1FB5044694F865 +:10420000300000F0C000C02804D1DFF82014201DC9 +:10421000FFF759FE94F8800000F0C000C02805D1D7 +:10422000DFF80C1404F15400FFF74DFED4F8D00071 +:1042300000F0C001C0290BD1002001AA032818DA20 +:1042400004EB4001B1F9A41042F82010401CF5E73E +:1042500000F06000602814D1002001AA07E004EB00 +:104260008001D1F8B810891342F82010401C0328AF +:10427000F5DBDFF8C0030090D4E9362301A8FFF78F +:104280006BFE1FBDF8B50446002004F12C077968C9 +:10429000CA0540F1278101F05001402900D10120D9 +:1042A00097F8541001F05001402900D1012094F8F2 +:1042B000D01001F05001402900D10120DFF86453F3 +:1042C000002809D0FFF7D6FE0020C5F8180285F8AF +:1042D00020022046FFF772FBE06AD5F840128142C7 +:1042E0001ED0C5F84002AE4E716B0A2806DA4800AF +:1042F0002860B06B401CC5F8440203E02960B06B35 +:10430000C5F84402D5F84402C0F11000C5F84802CF +:104310004FF48040C5F84C021920B16B88403064DE +:10432000386DD5F85012814210D0C5F850029C4E1D +:10433000716B0A2806DA48006860B06B401CC5F84B +:10434000540203E06960B06BC5F854022046FFF7E1 +:1043500054FF95F82002062800F2C480DFE800F040 +:1043600004122C3574A4B100D5F81802411CC5F80C +:1043700018120A28C0F2B680FFF77CFE012085F8EB +:104380002002AFE0D5F8B000012840F0AB80204615 +:10439000FFF7E3FE002803D1052085F8200204E0A2 +:1043A000012802D1022085F8200205F1B800FFF7AC +:1043B00004FEFFF742FE95E0032085F82002204628 +:1043C000FFF7B5FCFFF756FE8CE02046FFF7C5FE71 +:1043D000002857D0012840F08580D4F8D000C005CF +:1043E00023D504F02BFA00281FD105F1B807384671 +:1043F000FFF707FEC117C5E98201694ED6E9020140 +:10440000D5E98223994206DC01DB904203D20520E4 +:1044100085F820020FE03846FFF7E9FDD6E90823CA +:10442000994208DB01DC904205D3042085F8200284 +:104430002046FFF77CFCD5E98401FFF746FED5E96D +:104440008A01FFF72AFE4DE0D4F8D000C00514D54C +:1044500004F0F4F9002810D105F1B800FFF7D1FD00 +:10446000C117C5E982014E48D0E90223D5E982018E +:104470008B4207DB01DC824204D32046FFF76DFE4E +:10448000002803D1052085F820022BE0012829D13E +:104490002046FFF74CFCD5E98401FFF716FED5E96D +:1044A0008A01FFF7FAFD1DE0062085F820020120B1 +:1044B00003F050FFFFF7DEFD05F1B800FFF77DFDCB +:1044C00010E02046FFF749FE012803D1022085F8BD +:1044D000200207E0002805D1FFF7CCFD05F1B80068 +:1044E000FFF76BFD0020F2BD0021401000D0491CF9 +:1044F0000128FADA2A4801224B1C9A404263491CDF +:104500008163192202FA01F10164704738B5454C04 +:104510004FF4267200212046DDF7A0FE204D6022D8 +:1045200000212846DDF79AFE0720FFF750FA45F6EE +:10453000C0500021C5E906011E20C5E90201642022 +:10454000C5E904013C48C5E908010120C4F81C0282 +:104550001920FFF7C9FF0020C4F840029FED320A7E +:10456000FFF716FA0020A86532BD10B52D4C4FF4A8 +:10457000267200212046DDF771FE0720FFF727FA9B +:104580000120C4F81C0284F820020022032104F058 +:1045900033F8072264212948BDE81040FEF7D9BF4F +:1045A000C81B012010B5FFF7B1FF040009D040F28D +:1045B00025330FF294020FF2A801FFF7E7F9204626 +:1045C00010BD1F4804F034F8040009D04FF44A73BA +:1045D0000FF274020FF28801FFF7D8F9204610BDE0 +:1045E000002010BD65CDCD41F8B50026154FB96D41 +:1045F000012915D1016BC90512D5D0E90E45FFF788 +:10460000D8F9201A65EB0101002909DB00DC07D38A +:10461000D7E91423994203DC01DB904200D2012642 +:104620003046F2BD08F700200000964418F700203D +:1046300068F80020C0F700200008AF2F854202086C +:104640006B450208C81B0120696E765F656E61626A +:104650006C655F666173745F6E6F6D6F74000000F0 +:10466000433A5C50726F6A6563745C4E6F74653375 +:104670005F466972655C4E6F7465335F466972654B +:104680005C496E76656E53656E73655C6D706C5CCF +:10469000666173745F6E6F5F6D6F74696F6E2E63AA +:1046A0000000000070B52DED028B98B005460E4657 +:1046B00008EE102A1C4695ED020AF8EEC00A95EDA8 +:1046C000010AB8EEC01A95ED000AB8EEC00A20EE55 +:1046D000000A01EE010A00EEA00A04F01DF8F0EE57 +:1046E000408A18EE900AE3F7B5FE21F0004101225E +:1046F000DFF8A839EFF7E4FA00F2B9809FEDD70AA6 +:10470000D6ED000AF8EEE00A60EE800ACDED040A6C +:1047100004A8D6ED010AF8EEE00A60EE800AC0EDCA +:10472000010AD6ED020AF8EEE00A60EE800AC0ED5A +:10473000020AD6ED030AF8EEE00A20EE800A80EDC8 +:10474000030A0020089008A895ED000AB8EEC00AF8 +:1047500080EE280A80ED010A95ED010AB8EEC00A44 +:1047600080EE280A80ED020A95ED020AB8EEC00A32 +:1047700080EE280A80ED030A14AA08A904A802F012 +:1047800038FE10A904A802F052FF00AA10A914A82C +:1047900002F02FFE00AD95ED010AD5ED020A20EEE4 +:1047A000A01A00EE001ADFEDAE1AB4EE611AF1EEB7 +:1047B00010FA02D59FEDAB1A15E0DFEDAB1AB4EE9F +:1047C000611AF1EE10FA02D59FEDA81A0BE0DFEDA9 +:1047D000A81AB4EE611AF1EE10FA02D59FEDA51AEF +:1047E00001E0B6EE001AF8EEC81A9FEDA32AC1EE5A +:1047F000821A21EE811A00200C900CA860EE810A2A +:10480000C0ED010A20EE410A80ED020A0021C160DC +:1048100000AA04A902F0EDFD00AA04A900A802F074 +:1048200051FE00A802F0C9FE9FEDDA0ADDED000A94 +:1048300060EE800AFDEEE00AC4ED000AD5ED010A43 +:1048400060EE800AFDEEE00AC4ED010AD5ED020A31 +:1048500060EE800AFDEEE00AC4ED020AD5ED030A1F +:1048600020EE800ABDEEC00A84ED030A04E01022A7 +:1048700031462046E0F73EF918B0BDEC028B70BD22 +:1048800030B52DED048B81B004460D4694ED020A3F +:10489000F8EEC00A94ED010AB8EEC01A94ED000AD1 +:1048A000B8EEC00A20EE000A01EE010A00EEA00AEE +:1048B00003F032FF9FEDB88AB4EE480AF1EE10FA29 +:1048C0003CD4D4ED020AF8EEE00A80EE809AB7EE0E +:1048D000000A30EE490AB5EE400AF1EE10FA01DCAA +:1048E0009FEDAE0AF6EE009A20EE290A03F014FFBF +:1048F000F0EE408AB7EE000A39EE000AB5EE400A43 +:10490000F1EE10FA01DC9FEDA50A20EE290A03F072 +:1049100003FFB0EE409A94ED010AF8EEC00A94ED60 +:10492000000AB8EEC00A20EE000A00EEA00A03F06A +:10493000F3FEB4EE480AF1EE10FA07D54FF08040CE +:10494000286000206860A860E86027E0DFED910A39 +:1049500029EE201ABDEEC11A85ED001A94ED011A58 +:10496000B8EEC11A81EE001A21EE281A61EE200A73 +:10497000FDEEE00AC5ED010AD4ED000AF8EEE00A0A +:1049800080EE800A20EE280ADFED850A20EE200A5C +:10499000BDEEC00A85ED020A0020E86001B0BDEC62 +:1049A000048B30BD38B504460D4694ED030AF8EE8D +:1049B000C00A94ED020AB8EEC01A94ED010AF8EEAE +:1049C000C01A94ED000AB8EEC00A20EE000A01EE0B +:1049D000A10A01EE010A00EEA00AB5EE400AF1EECE +:1049E00010FA07D84FF08040286000206860A86067 +:1049F000E86031BD03F090FEF7EE000A80EE800A19 +:104A0000DFED640A20EE200AD4ED000AF8EEE00A99 +:104A100060EE800AFDEEE00AC5ED000AD4ED010A61 +:104A2000F8EEE00A60EE800AFDEEE00AC5ED010A4C +:104A3000D4ED020AF8EEE00A60EE800AFDEEE00A2C +:104A4000C5ED020AD4ED030AF8EEE00A20EE800A72 +:104A5000BDEEC00A85ED030A31BD000000008030C4 +:104A600017B75139A69BC43B0AD7233CCDCCCC3DCC +:104A7000CDCC4C3E9A99993E0014CD4770B588B084 +:104A8000054695F83000400640F18180A86900286D +:104A900000D54042B0F5803F0DDAE969002900D524 +:104AA0004942B1F5803F06DA296A002900D549421A +:104AB000B1F5803F67DBDFF8E815DFF8E8458842AD +:104AC0000BDAE869002800D54042884205DA286AF6 +:104AD000002800D54042884202DB0320A06301E0A9 +:104AE0000220A063A86A616B81421ED0606395EDCD +:104AF0000A0AB8EEC00ADFEDA00A80EE200ADFED58 +:104B00009F0A20EE200A10EE100AE3F7A3FCDFF85C +:104B10009825DFF89835DEF701F90022DFF89035A7 +:104B2000DEF782FADEF724FC20630020049004AE56 +:104B3000216BA86902F0B3FB7060216BE86902F099 +:104B4000AEFBB060216B286A02F0A9FBF06000AAFE +:104B500004A9204602F0A9FB00988001009000A85B +:104B6000416889014160816889018160C16889016A +:104B7000C160224600A9204602F0FAFB21462046E9 +:104B8000FFF710FF03E0DFF81C050021816308B088 +:104B900070BD00000000804E0100803F000000005A +:104BA000000080CE70B52DED048B8EB0044694F8D5 +:104BB0005001400640F1DC80DFF8E854D4F84001B1 +:104BC0002968401A00D54042D4F86411DFF8E42483 +:104BD0005143814202DA0320A86301E00220A86366 +:104BE000D4F85001810505D5294604F5A070FFF7DA +:104BF000D9FEBDE0800407D54FF08040A8640020B6 +:104C0000E8642865686597E0002103A8FEF7A9FB22 +:104C10000C2205F13C0103A802F09AFF002805D1FF +:104C2000D4F86001A96D884200F0868000AB03AA29 +:104C3000616A206880B202F0ADFD00AE96ED020A16 +:104C4000F8EEC00A96ED010AB8EEC01A9DED000A12 +:104C5000B8EEC00A20EE000A01EE010A00EEA00A3A +:104C600003F05AFDB0EE408A9FED450A28EE000A97 +:104C7000DFED440A80EE200AD4ED580AF8EEE00A8F +:104C800020EE200ADFED400AC0EE208AB0EE680A6E +:104C900003F0DCFDB0EE409AB0EE680A03F0D9FDF7 +:104CA000F0EE000AB4EE608AF1EE10FA07D54FF08C +:104CB0008040A8640020E8642865686533E0DFED83 +:104CC000CB0A29EE201ABDEEC11A85ED121A20EE8C +:104CD000200ADDED000AF8EEE00A60EE200AC0EEE0 +:104CE000880AF1EE600AFDEEE00AC5ED130AD6ED82 +:104CF000010AF8EEE00A60EE200AC0EE880AF1EE42 +:104D0000600AFDEEE00AC5ED140AD6ED020AF8EEDF +:104D1000E00A20EE200A80EE080AB1EE400ABDEE5D +:104D2000C00A85ED150A0C2203A905F13C00DFF746 +:104D3000E1FED4F86001A86504F5A07406AA05F1A7 +:104D40004801204602F0B1FA0AAA06A905F15C0062 +:104D500002F0ABFA05F15C01204602F01CFB06AA4A +:104D60000AA9284602F0A1FA294606A8FFF71AFE6A +:104D70000EB0BDEC048B70BD002474490000004EE1 +:104D8000DB0F49400000344B0024F4492DE9F04F7B +:104D900093B00746012407F13005286DC14E00F09D +:104DA0005001402904D0F16E002912D0400610D5E0 +:104DB00006F1100107F16800FFF762FDD7F8500116 +:104DC000C00519D506F15C0107F5A07002F0E3FA01 +:104DD00012E0D7F8500100F05002402A03D0002919 +:104DE00015D0400613D506F15C0107F5A07002F05E +:104DF000D2FA286DC0050AD500A9304602F0CBFAD8 +:104E000006F1200200A906F1100002F04EFA386BFC +:104E1000C005384602D5FFF731FE01E0FFF7C2FEBC +:104E200006F11002314606F1200002F03EFA95F834 +:104E30005000400640F1D580386BD7F85011084338 +:104E4000C00540F1BA8004AA07F1680106F110001C +:104E500002F0B0FAD5F840A04FEAEA7BE86BC11740 +:104E6000AA6BD317A2FB028902FB039903FB0299E9 +:104E7000A0FB002300FB013301FB003318EB020011 +:104E800049EB0301AAFB0A230AFB0B330BFB0A3392 +:104E90008018594102292FDB02DCB0F1804F2BD35F +:104EA00007A803F01DFB07A8D0F808A04FEAEA7B8B +:104EB0004068C117079AD317A2FB028902FB039926 +:104EC00003FB0299A0FB002300FB013301FB00332D +:104ED00018EB020049EB0301AAFB0A230AFB0B3380 +:104EE0000BFB0A3380185941022905DB02DCB0F1C3 +:104EF000804F01D30420B063B06B042804D1002498 +:104F00004FF49661316722E0022801D003280BD1CB +:104F1000A96C41F2883291FBF2F4012C00DA0124F1 +:104F2000316F012913DB0FE0012801D000280ED1D9 +:104F3000A96C41F2883291FBF2F1012900DA214695 +:104F40004C00316F012902DB091B3167A4000328E3 +:104F500000D0A4005848444300200A900AAD2146DE +:104F60000598800202F09BF968602146049840424F +:104F7000800202F094F9A86000200D900EAA06F1BC +:104F800010010AA802F091F906F110020EA906F12B +:104F9000100002F0EDF906F1100106F11000FFF724 +:104FA00001FD00A9304602F0F6F906F1200200A941 +:104FB00006F1100002F079F913E006F11003AA6C73 +:104FC00006F1100107F16800FFF76CFB00A93046FD +:104FD00002F0E1F906F1200200A906F1100002F04A +:104FE00064F9002013B0BDE8F08F00000000804E8F +:104FF00038B50446206BC0050AD404F13000006DBA +:10500000C00505D4D4F85001C00501D4002032BD3C +:10501000244DD4F8500100F4A060B0F5A06F09D180 +:10502000102204F5A07105F11000DFF763FD0120E7 +:10503000E86604E02046FFF7A9FE0020E86604F1D8 +:105040003000D0E9022305F1100003F053F90020ED +:1050500032BD10B5134C742200212046DDF7FEF856 +:105060004FF08040206120602062E063E065002016 +:10507000206710BD80B5FFF7ECFF002805D10FF2C7 +:105080001100BDE8024003F0D3BA02BD00000000E9 +:105090001322C8210948FEF75CBA00000000D04086 +:1050A00001006400A4100120112D4454FB2189400B +:1050B0000080664071981C00A69BC400F14F020856 +:1050C00038B50446DFF8E05468680870D5E9020195 +:1050D000C2E90001686A9FED600A296A002920D4AC +:1050E00000EE900AF8EEE00A60EE800AC4ED000AD5 +:1050F000D5ED0A0AF8EEE00A60EE800AC4ED010A76 +:10510000D5ED0B0AF8EEE00A60EE800AC4ED020A63 +:10511000D5ED080AF8EEE00A20EE800A84ED030AD5 +:1051200026E0404200EE900AF8EEE00A60EE800AC7 +:10513000C4ED000AA86A404200EE900AF8EEE00AC8 +:1051400060EE800AC4ED010AE86A404200EE900A6F +:10515000F8EEE00A60EE800AC4ED020A286A4042D6 +:1051600000EE900AF8EEE00A20EE800A84ED030AD1 +:1051700003F0D6F984ED040AE86B32BD70B588B04F +:105180000446164604A8FEF7BFFADFF81C54D5E91A +:105190000201C5E90401C6E9000100A803F020F9F5 +:1051A00000A841689FED2C0A009A002A20D400EE46 +:1051B000901AF8EEE00A60EE800AC4ED000AD0ED25 +:1051C000020AF8EEE00A60EE800AC4ED010AD0EDB2 +:1051D000030AF8EEE00A60EE800AC4ED020ADDED93 +:1051E000000AF8EEE00A20EE800A84ED030A26E0C9 +:1051F000494200EE901AF8EEE00A60EE800AC4ED33 +:10520000000A8168494200EE901AF8EEE00A60EE6A +:10521000800AC4ED010AC068404200EE900AF8EE30 +:10522000E00A60EE800AC4ED020A0098404200EEF7 +:10523000900AF8EEE00A20EE800A84ED030A0020CE +:105240002061686B801100F00100296C891101F068 +:105250000101084308B070BD0000803010B58AB06D +:10526000044600A9DFF8440302F0F6F99FEDBD0AF9 +:10527000DDED000AF8EEE00A60EE800AC4ED000AF7 +:1052800000A8D0ED010AF8EEE00A60EE800AC4ED55 +:10529000010AD0ED020AF8EEE00A60EE800AC4EDE1 +:1052A000020AD0ED030AF8EEE00A60EE800AC4EDCF +:1052B000030AD0ED040AF8EEE00A60EE800AC4EDBD +:1052C000040AD0ED050AF8EEE00A60EE800AC4EDAB +:1052D000050AD0ED060AF8EEE00A60EE800AC4ED99 +:1052E000060AD0ED070AF8EEE00A60EE800AC4ED87 +:1052F000070AD0ED080AF8EEE00A20EE800A84EDF5 +:10530000080A0AB010BD000010B52DED028B8AB05E +:10531000044600A8FFF7A2FF9FED1F8ADDED000AFB +:105320009DED030AB1EE400A03F096FA20EE080A5A +:1053300084ED000ADDED080A9DED070AB1EE400A92 +:1053400003F08AFA20EE080A84ED010A9DED060AB0 +:1053500003F0BAFA20EE080A84ED020A94ED000A7E +:10536000B5EE400AF1EE10FA05D5DFED0C0A30EE8D +:10537000200A84ED000A0AB0BDEC028B10BDD0B546 +:10538000894C63680B70D4E90267C2E90067FFF7D4 +:10539000BBFFE06BD0BD0000E12E65420000B443CE +:1053A0002DE9FF41044600254FF47A787E4E06F140 +:1053B0000802311D06F1200003F035F804F12C023B +:1053C0005068306304F13800816C716304F1CC07DC +:1053D0007968B16304F1D8018B6F33645268D305E7 +:1053E00001D5D4F82C80836C5FEAC35C05D5D0F876 +:1053F00044C0C44501DAE0460125D7F804C05FEA9D +:10540000CC5E05D5D4F8CCE0C64501DAF0460225DD +:10541000896F5FEAC15E04D5D4F864E1C64500DA5D +:1054200003255FEAC15E07D50CEA030E5FEACE5E94 +:105430000BD44FF0FF3508E003EA020E0CEA0E0E23 +:105440005FEACE5E01D44FF0FF35002D05D0022D6E +:105450001BD00ED3032D24D02FE002F04000401EBD +:105460008041C043C00FF063D4E90E01C6E90201D8 +:1054700025E003F04001491E8941C943C90FF1638A +:10548000D0E91423C6E9022319E00CF04000401EC5 +:105490008041C043C00FF063D4E93601C6E9020180 +:1054A0000DE001F04000401E8041C043C00FF0639A +:1054B000D4E95601C6E9020101E00020F06306F1DB +:1054C000180200A901A8FEF736F99DF90000306026 +:1054D00000240DE040060AD501A850F8240000EE93 +:1054E000100ABAEEC80A06EB840080ED320A641C8A +:1054F000032C2CDA387900F0500040280CD101A898 +:1055000050F8240000EE100AB8EEC00A2C2000FB70 +:105510000460443002F084F9786800F0C001C029CA +:10552000D8D101A850F8240000EE100AB8EEC00A45 +:105530002C2000FB0460443002F087F9DFED190AEB +:1055400020EE200A06EB840080ED320ACFE700202F +:1055500004B0BDE8F08137224FF461711448FDF7C3 +:10556000F8BF00000000803038B50F4CD822002171 +:105570002046DCF773FE002508E004F1D8012C205A +:1055800000FB0540443002F03CF96D1C032DF4DBB8 +:10559000002032BD80B5FFF7E7FF0648BDE80240B6 +:1055A00003F046B800008037007600202076002007 +:1055B000A1530208575502082DE9F0412DED048B47 +:1055C00084B004460F4690461D46DFF864693C22CD +:1055D00006F10C01304603F0A7F9502206F15801FC +:1055E00006F1480003F0A0F90C22414606F13C0008 +:1055F000DFF780FA1022394606F19800DFF77AFAD1 +:105600009FEDA39AD6F85C01401CC6F85C01072800 +:1056100002DB0620C6F85C01D6F85C01C0F1060783 +:1056200022E000AA06EB071000F14801284601F02D +:10563000E0FE00AA07EB470006EB800104F1B8008A +:1056400001F0AAFDF0EE409A19EE900AE2F702FF8F +:1056500021F0004153EC182B23F00043DDF73CFC14 +:1056600001D2B0EE699A7F1C19EE100AE2F7F2FE41 +:1056700041EC180B062FD4DBB0EE480AF0EE680AB6 +:1056800004B0BDEC048BBDE8F08100002DE9F04FC3 +:105690002DED0A8B81B0B0EE409AF0EE609A0C4688 +:1056A000914600259FED76ABB0EE4A8AF0EE6A8A0D +:1056B000406B002800D40125DFF87468482206F109 +:1056C000C80106F1C00003F02FF906F1B80888ED13 +:1056D000149B00270CE053EC182B06EBC700D0F806 +:1056E000C410D0F8C000DDF72BFC41EC180B7F1C78 +:1056F0000A2FF0DB51EC180B0022DFF83838DDF709 +:1057000093FC41EC1B0B88ED16BB322C2FDBC82021 +:10571000C6F854014846DDF7FBFB41EC1A0B9FED40 +:105720005ACB51EC190B0022DFF80C38DDF77CFC6A +:1057300053EC1A2BDDF7F2FA53EC1C2BDDF774FC5B +:1057400041EC180BB4F57A7F44DB51EC190B0022C5 +:10575000DFF8E837DDF768FC53EC1A2BDDF7DEFAEB +:1057600053EC1C2BDDF760FC41EC180B32E0D6F853 +:10577000540141F2883199FBF1F101EB8101401AAA +:10578000C6F8540102D50020C6F8540151EC190B9B +:105790000022DFF8AC37DDF747FC82468B464846EF +:1057A000DDF7B6FB52465B46DDF7B8FA0022DFF8BC +:1057B000D037DDF739FC41EC180BD6F8540100283E +:1057C00008D106F5AA70C068012803D1B0EE4A8A54 +:1057D000F0EE6A8A06F5AA704068002803D0B0EEA1 +:1057E000498AF0EE698ADFF85C07814503D1B0EEA3 +:1057F000498AF0EE698A53EC182B00200146DDF748 +:10580000BDF901D088ED18BBD8E91801D8E91623F5 +:10581000DDF7C4F921F00041DFF82C27DFF82C3741 +:10582000EEF74EFA22D8D6E92E2300200146DDF706 +:10583000A5F91BD1012D19D1C820C6F8540151EC8E +:10584000190B0022DFF80837DDF7EEFB04460D46A2 +:105850004846DDF75DFB22462B46DDF75FFA002266 +:10586000DFF81C37DDF7E0FB41EC180BB0EE480A1F +:10587000F0EE680A01B0BDEC0A8BBDE8F08F0000C5 +:105880000000000000000000000000000088B3409D +:10589000002474492DE9F04F2DED0A8BB1B0044678 +:1058A00019A800210A460B460EC0DFF8845605F5FC +:1058B000AC76706C00051FD5D4F8500100051BD4E0 +:1058C00020A80FF2D8611022DDF71CF9D4E93623A5 +:1058D00005F59A7002F00EFDD4E9362320A802F0F7 +:1058E0001DFD1022002105F1A800DCF7B7FC4FF0E8 +:1058F0008040C5F8A80062E208460DE005EB800193 +:1059000091ED2A0AB8EEC00A20EE090A12A901EBAD +:10591000800181ED000A401C9FEDE69A0428EDDB32 +:1059200006A802F05DFD9DED060AB8EEC00A20EE65 +:10593000090A8DED1C0A06A81CA990ED010AB8EE13 +:10594000C00A20EE090A81ED010A90ED020AB8EEC4 +:10595000C00A20EE090A81ED020A90ED030AB8EEB2 +:10596000C00A20EE090A81ED030A02A802F038FD00 +:1059700002AFF968786801F08CFC80460299B8683B +:1059800001F087FCA8EB00001690F968B86801F0F8 +:1059900080FC81460DF158080299786801F079FC85 +:1059A0004844C8F80400F868014601F072FC074654 +:1059B0000299084601F06DFCC019A0F18040C8F8BA +:1059C000080012AB16AA1CA92046FFF7F5FDB0EEA1 +:1059D000408AF0EE608A9FEDB3AB002723E004EB32 +:1059E00087008069DDF794FA41EC1B0B9FEDAFCB8C +:1059F00053EC1B2B51EC1C0BDDF790F902460B46C8 +:105A000051EC1B0BDDF78AF902460B4651EC1C0BDF +:105A1000DDF784F902460B4651EC1A0BDDF790FADC +:105A200041EC1A0B7F1C032FD9DB51EC1A0BE2F768 +:105A300039FD00EE100A02F06FFE10EE100AE2F7D8 +:105A400009FD96ED08AB53EC1A2BDDF7A7F841ECF6 +:105A50001B0B86ED0ABBDFF8FC24DFF8FC34DDF716 +:105A60005DF941EC1C0B86ED0CCB51EC1A0B53ECA1 +:105A70001C2BDDF765FAC6E9080151EC1B0B53EC52 +:105A80001C2BDDF74BF9D6E90E23DDF759FADFF8C9 +:105A9000CC24DFF8CC34DDF741F941EC100B86ED76 +:105AA0000E0B0027DFF8BC84DFF8BC24DFF8BC3421 +:105AB000DDF712FA1FD2D8F80800002806D101201D +:105AC000C8F80800D4E90E01C8E90001D8F80800B8 +:105AD000012813D1D4E90E23D8E90001101A63EB91 +:105AE0000101DFF88C243B46994207DB01DC904240 +:105AF00004D3012702E03846C8F808004FF0000838 +:105B000002F09CFE38430ED0D5F8580100280AD187 +:105B1000D4F8D400022806DA2046FEF765FD0128F5 +:105B200001D14FF0010804F1180001F0A5FB810933 +:105B30003269DFF81004824200DB0246B0EE480A08 +:105B4000F0EE680A2046FFF7A1FD05F1A80787EDF2 +:105B5000040B53EC102BD7E91E01DDF7DFF8C7E982 +:105B6000040128A902A801F077FD05F59A7906AA93 +:105B700002A9484601F099FB494602A801F00BFC36 +:105B8000002218E002EB420C9C440DF1A00E5EF8DE +:105B90002CC00DF1180E0EEB830EDEF804E0CEFBE8 +:105BA0000C015B1C032BEDDB19AB800F40EA81007D +:105BB00043F82200521C032A03DA00200146034660 +:105BC000F0E70DF16409D5F85801002802D0002053 +:105BD000C9F80800D9F808B0CBF1000000EE100AAF +:105BE000B8EEC00A20EE098AB0EE480A02F02EFE96 +:105BF0008DED0E0A0DF1380A0020CAF80400CAF82B +:105C00000800B0EE480A02F024FE8AED030A30696B +:105C100041F2883190FBF1F000EE100AB8EEC00AB4 +:105C2000DFEDC20A01EE10BAB8EEC11A81EE201AF9 +:105C300081EE001AF0EE001A81EE211ABDEEC11AB3 +:105C400011EE100A400001EE100AB8EEC11A61EE22 +:105C5000200A20EE800ABDEEC00A89ED020AB8EEE5 +:105C6000C00A20EE098AB0EE480A02F0EFFD8DED81 +:105C70000A0A0DF128090020C9F80400C9F8080033 +:105C8000B0EE480A02F0E5FD89ED030A24AA0EA948 +:105C900012A801F0AEFB0EAA0AA924A801F0A9FBE4 +:105CA000002019E0000000000000000000000000DB +:105CB0000000F03E000080305AF8201000EE101A6C +:105CC00012A901EB800181ED000ABEEEC10A05EBCD +:105CD000800181ED2A0A401C0428EDDBD5F858012B +:105CE000002803D097ED040B86ED060BD6E90623BA +:105CF0004FF033309F49DDF711F8CDE90001D7E9C6 +:105D000004239D489D49DDF709F8DDE90023DDF70F +:105D100017F941EC100B87ED040B86ED060BB8F17B +:105D2000000F03D0D5F8580100283FD09FED958B88 +:105D300053EC102B51EC180BDCF7F0FFE2F7B2FB41 +:105D400000EE100A02F082FD8DED0A0A0020C9F86B +:105D50000400C9F80800D7E9042351EC180BDCF75C +:105D6000DDFFE2F79FFB00EE100A02F072FD89ED05 +:105D7000030A0EAA0AA912A801F03BFB0EA801F023 +:105D8000C2FB00200AE00AEB800191ED000ABEEEA2 +:105D9000C10A05EB800181ED2A0A401C0428F2DBD0 +:105DA000D4E9362305F1A80002F0B8FAD5F8580175 +:105DB000002804D000217160401EC5F8580131B0A0 +:105DC000BDEC0A8BBDE8F08FF8B50446584800F5E5 +:105DD000AC75D4F8501101F41061B1F5106F0BD10E +:105DE000102204F5A07100F59A70DEF783FED4F856 +:105DF000500168640020F2BD04F1C8010A7AD2069D +:105E000004D40322C0F8582100226A608A68D205AF +:105E10000AD5D4F85021D2050CD4226BD20503D573 +:105E2000D4F88020D20505D40321C0F858110020F1 +:105E30006860F2BD6A69002A0DD0D1E90423D1E976 +:105E40000667901B63EB07014FF47A720023E3F7B8 +:105E50004DFB286115E0D4F8C81044F62062914249 +:105E600001DB29610DE0EB68C918E960914205DAB0 +:105E7000D0F85801002801D10020F2BD296100208E +:105E8000E8602046FFF706FDD4F850016864002062 +:105E9000F2BD000010B5264C4FF4D472002120460C +:105EA000DCF7DCF94FF08040C4F83401C4F8A800F6 +:105EB0000022134604F1A80002F030FA4FF47A7081 +:105EC000C4F8540100204FF08041C4E948019FED1F +:105ED0002F0B84ED5C0B04F5B87080ED020B80EDA8 +:105EE000040B80ED060B80ED080B0021016310BD53 +:105EF0000F49C1F86001002070470D49C1F86C01DD +:105F00000020704704224FF416712248FDF721BB90 +:105F100080B5FFF7BFFF0020FFF7EAFF0020FFF783 +:105F2000ECFF1D48BDE8024002F082BBE1023747AA +:105F30004001012000002440000059400000394089 +:105F400000C0624040420F001383C0CAA145B63F63 +:105F500000007940989999999999B93FCDCCCCCCCA +:105F6000CCCCEC3FB02701207B14AE47E17A843FD4 +:105F7000012F68593333E33F9A9999999999D93FF9 +:105F80000088B340000000000000E03F0000000077 +:105F900000000000C95D0208055F02080000004023 +:105FA00000000000000000000000000080B5B822E2 +:105FB0000146DFF8F004DEF79DFD002002BD80B54C +:105FC000B822DFF8E014DEF795FD002002BDF0B541 +:105FD00085B0044600A902A8FDF7C3F901A802F0A4 +:105FE000B1F902283FD0D4F808010099461ADFF829 +:105FF000B44494F8B000002848D0002E46D0F717DB +:10600000029D2268D317A2FB060102FB071103FBC6 +:106010000611000C40EA01404019029002ADD5F88B +:1060200004C06268D317A2FB060102FB071103FB41 +:106030000611000C40EA014060446860D5F808C0D1 +:10604000A068C117A0FB062300FB073301FB063342 +:10605000120C42EA034202EB0C00A860032102A8E2 +:10606000FDF741F912E0606B03280FD1FDF76CF9E1 +:1060700000280BD0DFF82C440C2202A904F10C00FC +:10608000DEF738FD0098A06100F003F8002005B0AD +:10609000F0BD2DE9F04F87B0DFF808048069DFF824 +:1060A0000864B168884200DAB060F168814200DAC1 +:1060B000F060F168B268891A3269914201DA002011 +:1060C000BBE14FEA204A4FEAEA7B7068401C7060EF +:1060D000AAFB0A010AFB0B110BFB0A11CDE9020115 +:1060E000AAFB00230AFB01330BFB0033CDE900239D +:1060F000D6E90E0110EB0A0041EB0B01C6E90E01D7 +:10610000D6E90C01DDE9022380185941C6E90C01EA +:10611000D6E91C01DDE9002380185941C6E91C01BC +:10612000DFF88003D0E92A23DDE90001AAFB00455E +:106130000AFB01550BFB0055101943EB0501DFF875 +:106140006423C2E92A01002746E0DFF8580300EB88 +:10615000870E00EBC70CDCE90C01DEF80C20D3172E +:10616000A2FB0A4502FB0B5513FB0A5500196941B6 +:10617000CCE90C010CF1300CDCE90A01DDE9024547 +:10618000DEF80C20D317A2FB048902FB059903FB60 +:10619000049910EB080041EB0901CCE90A01DCE9A4 +:1061A0001023DEF80C00C11710185941CCE910017A +:1061B000DCE91889DDE90001DEF80C20D317A2FB29 +:1061C000004502FB015503FB005518EB040049EBA9 +:1061D0000501CCE918017F1C032FB6DB7068B0F510 +:1061E0007A7FC0F2968000EBC00009300A2190FB54 +:1061F000F1F070608A464FF0000B0924D6E90E01D9 +:10620000A4FB002304FB013312F1090043F1000158 +:1062100052465B46E3F76AF9C6E90E01D6E90C017E +:10622000A4FB002304FB013312F1090043F1000138 +:1062300052465B46E3F75AF9C6E90C01D6E91C0160 +:10624000A4FB002304FB013312F1090043F1000118 +:1062500052465B46E3F74AF9C6E91C019148D0E98A +:106260002A23A4FB020104FB0311093041F10001C0 +:1062700052465B46E3F73AF98A4AC2E92A015F4689 +:1062800045E0884800EBC708D8E90C01A4FB0023CF +:1062900004FB013312F1090043F1000152465B4651 +:1062A000E3F724F9C8E90C0108F13008D8E90A013C +:1062B000A4FB002304FB013312F1090043F10001A8 +:1062C00052465B46E3F712F9C8E90A01D8E9100122 +:1062D000A4FB002304FB013312F1090043F1000188 +:1062E00052465B46E3F702F9C8E91001D8E9180104 +:1062F000A4FB002304FB013312F1090043F1000168 +:1063000052465B46E3F7F2F8C8E918017F1C032FF9 +:10631000B7DBD6E90C01A0FB002300FB013301FB36 +:1063200000330320A0FB024500FB0355CDE90245E5 +:10633000D6E90E01D6E91C23A2FB004502FB01555C +:1063400003FB0055AD0045EA94757068C117554AC6 +:10635000D2E92A89A8FB002308FB013309FB00339B +:10636000CDE90423002761E0DDE90201B0EB840000 +:10637000A941DDE9042380185941CDE9000101D18B +:10638000002852D0474800EBC70000F1300CD0E99C +:106390000C23D6E90C01A0FB02AB00FB03BB01FB05 +:1063A00002BBD6E90E23DCE90A01A0FB028900FB4F +:1063B000039901FB0299BAEB08026BEB0903032076 +:1063C000A0FB02AB00FB03BBDCE91023D6E91C01F8 +:1063D000A0FB028900FB039901FB0299BAEB080AB2 +:1063E0006BEB090B7268D317DCE91801A0FB02897B +:1063F00000FB039901FB02991AEB08004BEB090122 +:10640000DDE9022380185941B0EB8400A941DDE9A0 +:10641000042380185941401E61F10001DDE9002389 +:10642000E3F764F81F4941F827007F1C032F9BDB2B +:106430001C48012180F8B010002007B0BDE8F08FA3 +:1064400010B5184CB82200212046DBF707FF17488B +:1064500020624FF4AA0060624FF4A020A0620020E6 +:1064600010BD082296211248FDF773B880B5FFF7DA +:10647000E7FF40F2D163B8220E490F4802F087F8D7 +:10648000002801D0012002BD0C4802F0D1F80028FC +:1064900001D0012002BD0348012180F8B110002085 +:1064A00002BD000018110120301101200000D8FFAA +:1064B000CF5F0208BF5F0208AD5F02086364020895 +:1064C000704700200AE0DFF8101C01EB8001DFF8C4 +:1064D0000C2C0A62DFF8FC2BCA62401C0328F2DB9A +:1064E000704700201BE0DFF8F01B01EB800191ED0D +:1064F0002D0AD1ED080AF4EE400AF1EE10FA01D5AA +:1065000081ED080A01F12002D2ED030AB4EE600A1F +:10651000F1EE10FA02D5D1F8B410D160401C032876 +:10652000E1DB7047FEB5B0F9542012040092B0F9D7 +:106530005620130400AA5360B0F958402404946014 +:10654000DFF8945B009E6F6EF61B0096AE6E9B1B91 +:106550005360EB6EE31A93600B46416F006D80B29F +:1065600001F018F9F7BDF0B58DB003A9002213466C +:1065700014461CC1DFF8604BD4F89410012902D1F5 +:106580001146C4F8941006A9FFF7CCFF09A801F042 +:10659000FFFE06980999A0EBA130069009A806A96C +:1065A0004A684368A2EBA3324A608A688068A2EB1B +:1065B000A0308860602204F5587104F5577002F02D +:1065C000B3F90C2206A904F55D70DEF793FA00A872 +:1065D00001F086FF602204F5737104F5727002F019 +:1065E000A3F90C2200A904F57870DEF783FA0022E3 +:1065F00000A838E004F234439D686D1C9D6002EBF6 +:10660000420304EB83050923039ED5F85C7397FBD3 +:10661000F3F7BE19039602EB420604EB86064F68B9 +:10662000D6F860C39CFBF3FC67444F6006F55876D0 +:106630008F68D6F804C09CFBF3FC67448F60009918 +:10664000D5F8C85395FBF3F5691800914168F56ECC +:1066500095FBF3F5691841608168356F95FBF3F39D +:1066600059188160521C03A9092AC3DB039A002A26 +:1066700000D5524203924A68002A01D552424A602C +:106680008A68002A01D552428A60009A002A00D501 +:10669000524200924268002A01D55242426082680A +:1066A000002A01D5524282600022039B009DAB422A +:1066B00000DA01224B684568AB4200DA521C896857 +:1066C0008068814200DA521C04F234439868092839 +:1066D00000DB521C042A0FD194F83404014603282D +:1066E00008D35A6804F16400FCF7D6FD012001F0DC +:1066F000EFFE01E0FCF7C9FD0DB0F0BD2DE9F04162 +:106700000446DFF8D459002085F8340405F23446F5 +:106710007060074605F1080825E005EB870090ED5D +:10672000330AD8ED0D0AB4EE600AF1EE10FA19DB67 +:10673000D8E912230020DFF8AC19DCF701FC21F0C6 +:106740000041DFF8A429DFF8A439DCF7C5FB09D242 +:1067500095F83404401C85F8340470680121B94070 +:10676000084370607F1C032FD7DB95F834040028A2 +:1067700015D0002709E004EBC70041680068DCF78A +:10678000F7FD05EB870148667F1C032FF3DB002034 +:10679000B060A868042802DA95F83404A86095F877 +:1067A000340403281DD198ED010ADFEDBD0AB4EED3 +:1067B000600AF1EE10FA14D5D8E912230020DFF8B0 +:1067C0002419DCF7BDFB21F00041DFF81C29DFF8BC +:1067D0001C39DCF781FB04D2A868032801D104200E +:1067E000A86098ED020ADFEDAF0AB4EE600AF1EEA0 +:1067F00010FA1DD598ED010ADFEDAB0AB4EE600A80 +:10680000F1EE10FA14D5D8E912230020DFF8D418DD +:10681000DCF796FB21F00041DFF8D428DFF8D4380C +:10682000DCF75AFB04D2A868042801D10520A8602F +:10683000BDE8F0812DE9F0410446DFF89C78D7F8F7 +:10684000B404012850D107F1E005F7EE000AB7EED5 +:10685000000A07F5E471284602F06CF807F15002CF +:1068600007F5D471284602F06FFA06003DD078682B +:10687000401C7860616F0C46D7E91401DCF778FDA5 +:10688000214600F00CFD00EE100ABAEEC80A10EE28 +:10689000100AE1F7DFFDC7E9140107F5D07407F12D +:1068A0005008D4E90201DCF763FDC8F80800D4E918 +:1068B0000401DCF75DFDC8F80C00D4E90601DCF743 +:1068C00057FDC8F81000D7E968010122DFF8283821 +:1068D000EDF7F6F909D89FED750AF0EE400A294662 +:1068E000284602F027F800E000263046BDE8F08197 +:1068F00090ED030AD0ED040AF4EE400AF1EE10FA2E +:106900001BD590ED051AB4EE401AF1EE10FA14D52D +:106910000021016490ED040AD0ED050AB4EE600A8E +:10692000F1EE10FA04DB0121416402218164704719 +:1069300002214164012181647047B4EE600AF1EEE6 +:1069400010FA1BD590ED050AB4EE600AF1EE10FACC +:1069500014D50121016490ED030AD0ED050AB4EECF +:10696000600AF1EE10FA04DB002141640221816427 +:106970007047022141640021816470470221016453 +:1069800090ED030AB4EE600AF1EE10FA04DB002188 +:1069900041640121816470470121416400218164C7 +:1069A00070470021C1640B4606E01A4640F82120DA +:1069B00000EB81025362491C0329F6DB0121416788 +:1069C00019468167704710B5044604F1540014213C +:1069D00041600A21C160002101772046FFF7E1FFF5 +:1069E0000020606510BD000030B52DED028B87B032 +:1069F00003A9FFF797FD9FEDB18B002418E003A8D2 +:106A000050F8240000EE100ABAEEC80A00A800EB05 +:106A1000840080ED000A20EE000A10EE100AE1F773 +:106A200019FD53EC182BDCF78BFA41EC180B641CA6 +:106A3000032CE4DBB0EE480AF0EE680ADCF718FC41 +:106A4000B0EE408AF0EE608A002419E000EB840585 +:106A500000A850F82400E1F7FDFC53EC182BDCF7FC +:106A6000E3FAE1F71FFD00EE100AD5F8400400EE4E +:106A7000900A30EE200A05F2404080ED000A641CC6 +:106A8000DFF85406032CE1DBD0F89414491CC0F85D +:106A900094140121C0F8BC1407B0BDEC028B30BDCA +:106AA000AF47E13D00007A43BD74933CCDCCCC3E72 +:106AB00038B50446002004F13C0507E0B1EE400A79 +:106AC00081ED030A002144F82010401C032838DA25 +:106AD00095ED050AB8EEC00A04EB8001D1ED000A7D +:106AE00080EE800AF0EE400AF5EE400AF1EE10FA70 +:106AF00002DBB0EE601A01E0B1EE601AD1ED061AC9 +:106B0000F5EE401AF1EE10FA01DAF1EE611A31EE0B +:106B1000611A81ED0C1AC1ED060AD4ED0F0ABFEE21 +:106B2000001A30EE811AD1ED091A01EE210A80EE29 +:106B3000200A81ED090AB5EE400AF1EE10FABDDB3C +:106B4000BEE72046FFF7D4FE2869B0F57A7F01DA68 +:106B5000401C2861686894F87010052900F2838051 +:106B6000DFE801F0030E192C6C4004F170000121E4 +:106B70004160816000202861084684F8700031BDC2 +:106B800004F17000C16801296DD1022184F87010F0 +:106B90000021816031BD04EB800090ED030AD5ED4A +:106BA0000A0AB4EE600AF1EE10FA12DAD5ED0B0A19 +:106BB000F4EE400AF1EE10FA4BDB2BE004EB800020 +:106BC00090ED030AD5ED0A0AB4EE600AF1EE10FA70 +:106BD00049DB042084F8700004F17000002141605A +:106BE000816031BD04EB800095ED0B0AD0ED030A06 +:106BF000B4EE600AF1EE10FA0CDA90ED0C0ADFED5B +:106C0000330AB4EE600AF1EE10FA0CD52869696A0D +:106C1000884228DB032084F8700004F17000012111 +:106C20004160816031BD042084F87000002028613B +:106C300004F1700000214160816031BD95ED0C0AC6 +:106C400004EB8000D0ED030AB4EE600AF1EE10FA16 +:106C500009DB052084F870000020286104F1700031 +:106C600001214160816031BD10B52DED028B08EE30 +:106C7000100ADFF86444B8EEC80ADFED120A20EE0D +:106C8000200ADFED110A80EE200A10EE100AE1F76B +:106C9000E1FB41EC100B02F0E5FB53EC102B002064 +:106CA000DFF85814DCF73AF8DCF762FBC4F884002C +:106CB00084ED208ABDEC028B10BD000000000000B6 +:106CC00000000000368D27400024F449CCCC4CBD98 +:106CD0002DE9F0472DED028B90B0044602A800216B +:106CE0000A460B460EC004F13006B06CDFF8E853DC +:106CF00044F62061884206DBD5F88010884212D025 +:106D0000FFF7B2FF0FE0D5F858238018C5F85803F5 +:106D10008842C0F26781B16C814201D0FFF7A4FFC5 +:106D20000020C5F85803206BC5F8C0042046FFF7C3 +:106D30005BFED5F89404D5F89014884206DB05F57F +:106D40008860FFF7B5FE0020C5F89404D5F8B804B4 +:106D5000012802D12046FFF706FCD5F8B40401282B +:106D600040F0408102A801F0E9FB02A8D0ED020A40 +:106D700090ED011A9DED020ADDED021A20EE210AC6 +:106D800001EE010A00EEA00A01F0C6FC85ED030A3F +:106D9000BEEE410A10EE100AADF8000000A8002176 +:106DA0004180818005F52C773946FDF78CF808A8DD +:106DB00001F016FB296F089800F071FA81460DF179 +:106DC0002008696FD8F8040000F069FA8246A96FBC +:106DD000D8F8080000F063FA0AEB090100EB01099A +:106DE000E96FD8F80C0000F05AFA00EB09081022FD +:106DF00008A905F17000DDF77DFE4FF000091CE0E9 +:106E000004EB490A716CBAF95400000400F047FA27 +:106E100000EE100A0CA800EB890080ED000ABAEE23 +:106E2000C80A05EB890080ED050A05A8BAF95410D7 +:106E3000090440F8291009F10109B9F1030FDFDB5A +:106E400005A905F5E47001F014FED5F828032968BA +:106E50008842C0F2C78094ED428ABAEEC88A95EDA6 +:106E6000360AB5EE400AF1EE10FA0BD038EE400AC1 +:106E700010EE100AE1F7EEFA21F00041E1F712FB03 +:106E8000C5F8DC0085ED368AA868032804D9001F00 +:106E90000AD0401E0FD014E09948A8634FF07E50EE +:106EA000E863C82028640CE09648A8639648E86325 +:106EB0006420286405E09548A8639548E86332207B +:106EC00028643846FCF78DFE01F034FC00EE100A11 +:106ED000DFED800A80EE200A85ED040AA822002159 +:106EE00005F52C70DBF7BAF9D5F88400404549DA8E +:106EF00095ED040AB5EE400AF1EE10FA42DDD5ED4B +:106F00000E0AB4EE600AF1EE10FA3BD56868296CFF +:106F1000884205DA2046FFF78DFC002810D161E099 +:106F200095ED2C0ADFED6E0AB4EE600AF1EE10FA70 +:106F300006DB2046FFF77EFC002853D00020686067 +:106F4000002005E005EB80014A69C1F8B420401C2F +:106F50000328F7DBFFF7C5FA4FF000090BE005EB5C +:106F6000890090ED080AD0ED0B0A30EE600A80ED42 +:106F7000330A09F10109B9F1030FF0DB05F5D4700B +:106F8000FFF7BCFB00200CE005EB800191ED260A29 +:106F9000D1ED050A30EE600AB0EEC00A81ED290A93 +:106FA000401C0328F0DB95ED290AD5ED2A0A30EEC6 +:106FB000200AD5ED2B0A30EE200A85ED2C0A4FF081 +:106FC000000906E005EB89004169C0F8981009F155 +:106FD0000109B9F1030FF5DBE822002105F5E470A2 +:106FE000DBF73CF9002010B0BDEC028BBDE8F08768 +:106FF00010B5394C4FF49B6200212046DBF72EF987 +:10700000102020604FF080402067FFF75AFA04F507 +:107010008860FFF7D8FC2068C4F890044FF08440E3 +:10702000C4F87C041E20C4F89C043A48C4F8A804A0 +:107030003948C4F8A4043948C4F8AC041920FDF751 +:1070400053FA002010BD012240F252313448FCF7BF +:1070500080BA10B5204C4FF49B6201462046DDF704 +:1070600049FD0120C4F89400002010BD80B51A49E4 +:107070000022C1F894204FF49B62DDF73BFD002015 +:1070800002BD10B5FFF7B4FF040009D04FF4377309 +:107090000FF29C020FF2BC01FFF712FA204610BD5E +:1070A000204801F0C5FA040009D040F2DF230FF2B6 +:1070B00080020FF2A001FFF703FA204610BD42F252 +:1070C00026034FF49B6218491848BDE8104001F0B0 +:1070D0005EBA000000401C4688CE002000401CC65E +:1070E000CDCC4C3D0000F0BF9A9999999999B93F40 +:1070F0009CC420B07268913F0070A7400000D0414E +:107100000080BB44000096439A99993F000070426A +:107110003333B33FCDCCCC3ECDCC4C3F3333333F78 +:10712000D16C0208477002086D70020853700208A3 +:10713000696E765F656E61626C655F696E5F7573BF +:10714000655F6175746F5F63616C696272617469B8 +:107150006F6E0000433A5C50726F6A6563745C4EF8 +:107160006F7465335F466972655C4E6F7465335F3B +:10717000466972655C496E76656E53656E73655CD3 +:107180006D706C5C616363656C5F6175746F5F6388 +:10719000616C2E630000000010B590B01446002210 +:1071A000009200AA90ED010AB8EEC00AD1ED020AE1 +:1071B000F8EEE00A20EE200AD0ED020AF8EEE00A2E +:1071C00091ED011AB8EEC11A00EEC10A82ED010A72 +:1071D00090ED020AB8EEC00AD1ED000AF8EEE00A1E +:1071E00020EE200AD0ED000AF8EEE00A91ED021A36 +:1071F000B8EEC11A00EEC10A82ED020A90ED000A53 +:10720000B8EEC00AD1ED010AF8EEE00A20EE200A3D +:10721000D0ED010AF8EEE00A91ED001AB8EEC11ABD +:1072200000EEC10A8DED030A0CAA00A9204600F069 +:10723000E0F804A9204600F0FAF908AA04A90CA86D +:1072400000F0D7F808A890ED020AB5EE400AF1EE7A +:1072500010FA09D1D0ED010AF5EE400AF1EE10FA6C +:1072600002D19FED530A05E0D0ED010A01F0F4FAD6 +:10727000B1EE400A10B010BD00210A4605E050F8FA +:1072800022305B1303FB0311521C032AF7DB084671 +:10729000704781FB0001400F40EAC100704781FB4D +:1072A0000001800F40EA810070472DE9F04104465B +:1072B0000D46164629682068FFF7F1FF0746696802 +:1072C0006068FFF7ECFF8046A968A068FFF7E7FF5A +:1072D000A7EB08010F1AE968E068FFF7E0FF381A2A +:1072E000306069682068FFF7DAFF07462968606840 +:1072F000FFF7D5FF8046E968A068FFF7D0FF08EBED +:1073000007014718A968E068FFF7C9FF381A7060DD +:10731000A9682068FFF7C3FF0746E9686068FFF7C0 +:10732000BEFF80462968A068FFF7B9FFA7EB0801F8 +:1073300047186968E068FFF7B2FFC019B060E968F4 +:107340002068FFF7ACFF0746A9686068FFF7A7FF52 +:1073500080466968A068FFF7A2FF08EB07010F1AD3 +:107360002968E068FFF79BFFC019F060BDE8F08175 +:1073700010B403680C68E318136043684C68E318A2 +:10738000536083688C68E3189360C068C968081804 +:10739000D06010BC704702680A60426852424A607E +:1073A000826852428A60C0684042C86070470000EC +:1073B0000000000030B591B0044615460020009052 +:1073C0000C2201A8DDF796FB0CAA00A92046FFF7C6 +:1073D0006CFF08A92046FFF7DEFF04AA08A90CA845 +:1073E000FFF763FF0C2205A92846DDF783FB11B0E8 +:1073F00030BD90ED000AD1ED000A20EE200AD0ED5C +:10740000010A91ED011A00EEC10AD0ED020A91EDD8 +:10741000021A00EEC10AD0ED030A91ED031A00EE44 +:10742000C10A82ED000A90ED000AD1ED010A20EEBA +:10743000200AD0ED010A91ED001A00EE810AD0ED8C +:10744000020A91ED031A00EE810AD0ED030A91EDD4 +:10745000021A00EEC10A82ED010A90ED000AD1ED98 +:10746000020A20EE200AD0ED010A91ED031A00EE87 +:10747000C10AD0ED020A91ED001A00EE810AD0EDAA +:10748000030A91ED011A00EE810A82ED020A90EDE5 +:10749000000AD1ED030A20EE200AD0ED010A91ED99 +:1074A000021A00EE810AD0ED020A91ED011A00EEF7 +:1074B000C10AD0ED030A91ED001A00EE810A82EDB7 +:1074C000030A704790ED000AD1ED000A30EE200A61 +:1074D00082ED000A90ED010AD1ED010A30EE200A9A +:1074E00082ED010A90ED020AD1ED020A30EE200A87 +:1074F00082ED020A90ED030AD1ED030A30EE200A74 +:1075000082ED030A704790ED030AD0ED020A90ED78 +:10751000011AD0ED001A21EEA12A01EE012A00EE97 +:10752000A02A00EE002AB0EE000AB4EE402AF1EEE6 +:1075300010FA3AD5B6EE000A22EE000A60EE020A10 +:10754000B7EE081A00EEC21A61EE020A20EE201A07 +:10755000B7EE082A01EE602A62EE200A20EE201A19 +:10756000B7EE082A01EE602A62EE200A20EE200A19 +:10757000B7EE081A00EE601A21EE202A21EE820AE8 +:1075800080ED000A90ED010A20EE020A80ED010A6A +:1075900090ED020A20EE020A80ED020A90ED030A45 +:1075A00020EE020A80ED030A70474FF07E51016021 +:1075B000002141608160C160704710B50446D4ED80 +:1075C000030A94ED021AD4ED011A94ED000A20EE9C +:1075D000000A01EEA10A01EE010A00EEA00A01F084 +:1075E0009BF8B5EE400AF1EE10FA18D0D4ED000A7F +:1075F000C0EE800AC4ED000AD4ED010AC0EE800A94 +:10760000C4ED010AD4ED020AC0EE800AC4ED020AFC +:10761000D4ED030A80EE800A84ED030A10BD4FF01A +:107620007E50206000206060A060E06010BD0268B5 +:107630000A6090ED010AB1EE400A81ED010A90ED79 +:10764000020AB1EE400A81ED020A90ED030AB1EEA2 +:10765000400A81ED030A704770B505460C4668681C +:107660000146FFF716FE064629680846FFF711FE99 +:107670008019A0F180402060A9686868FFF709FEC2 +:1076800006462968E868FFF704FE301A6060E9687A +:107690006868FFF7FEFD06462968A868FFF7F9FD50 +:1076A0008019A060A9686868FFF7F3FD064629689D +:1076B000E868FFF7EEFD8019E060A8680146FFF773 +:1076C000E8FD064628680146FFF7E3FD8019A0F1B2 +:1076D00080402061E968A868FFF7DBFD064629685D +:1076E0006868FFF7D6FD301A6061E9686868FFF7DF +:1076F000D0FD06462968A868FFF7CBFD301AA061C7 +:10770000E968A868FFF7C5FD064629686868FFF7BD +:10771000C0FD8019E061E8680146FFF7BAFD064642 +:1077200028680146FFF7B5FD8019A0F1804020626E +:1077300070BD90F90010012901DB0020704700297D +:1077400001D50420704790F90110012901DB0120C7 +:107750007047002901D50520704790F902000128E3 +:1077600001DB02207047002801D506207047072062 +:10777000704738B50446FFF7DCFF0546E01CFFF70D +:10778000D8FF45EAC005A01DFFF7D3FF45EA8010EA +:1077900080B232BD2DE9F04107460C4615461E4623 +:1077A000780702D54FF0FF3000E00120B84608F01E +:1077B000030255F822205043FFF771FD3060B806F0 +:1077C00002D54FF0FF3000E0012021464FEA680269 +:1077D00002F00C0252595043FFF761FD7060F8054A +:1077E00002D54FF0FF3000E0012021464FEA281279 +:1077F00002F00C0252595043FFF751FDB060BDE852 +:10780000F08110B400220260426005E000EB8203C8 +:1078100051F822401C61521C052AF7DB10BC70474E +:1078200080ED090A80ED0A0AD0ED060AB7EE001ACB +:1078300070EE810A90ED071A70EE810A80EE200A40 +:1078400080ED000A80ED010A704780ED090A90ED95 +:10785000010AD0ED000AD0ED061A90ED091A01EEEA +:10786000E01AD0ED071A01EEC01A90ED042AF0EEEE +:10787000411A42EE201AD0ED050A40EE801AC0ED02 +:107880000A1A90ED080A21EE800A80ED0A0A0168C2 +:10789000416080ED001A70472DE9F84304460D461B +:1078A0001646002711E055F8291009EB4900C019C8 +:1078B00054F82000FFF7F3FC804409F10109B9F105 +:1078C000030FF0DB46F827807F1C032F03DA4FF00D +:1078D0000008C146F3E7BDE8F183F1B582B00128A5 +:1078E00001DA0020FEBD00A902A800F055F8044608 +:1078F00000250098012806DB0146024602EBD17103 +:107900004910A0EB4105401B00900298A0F1804770 +:1079100006463946FFF7C3FCA6EB6006022C23DBC4 +:107920007810A0F1C0413846FFF7B9FC014638464F +:10793000FFF7B5FC471039463046FFF7B0FCA6EB21 +:107940006006032C10D17810A0F1C0413846FFF733 +:10795000A6FC01463846FFF7A2FC471039463046E0 +:10796000FFF79DFCA6EB6006002D04D027493046AA +:10797000FFF795FC06460098012802DB40100641FF +:1079800007E010F1010F04D121493046FFF787FCD1 +:1079900006463046FEBD000070B504460D46206820 +:1079A0001C49884205DB401020604FF0FF30286002 +:1079B0001AE0194EB04215DA204600F039F8286076 +:1079C00020681649884205DB401020602868401E68 +:1079D000286009E0B04207DA400020602868401CB7 +:1079E000286001E00020286020680D4909180D4A30 +:1079F000914201D3032070BD0B4908180B498842FE +:107A000001D3022070BD012070BD0000CD3C412D8E +:107A10009A79825AFD0BB958FE855C2CFC0BB9583B +:107A2000666666C6CDCCCC0C0AD7A3C015AE47019E +:107A300000210268002A01D108467047130C1B047C +:107A400002D1102112040260026812F07F4F02D1AD +:107A5000083112020260026812F0704F02D1091D53 +:107A600012010260026812F0404F02D1891C92009C +:107A700002600268002A02D5491E520802600846C8 +:107A80007047F8B504460D4620680146FFF707FC2D +:107A9000064661680846FFF702FC0746A0680146F3 +:107AA000FFF7FDFBC6F18041C91B081AFFF715FF60 +:107AB0002860206868606068A860A068E8600020AE +:107AC000F2BD000080B58DF800108DF80120022372 +:107AD00000AAD0210020DAF7DBFC012801D1002028 +:107AE00002BD4FF0FF3002BD38B51446094D297074 +:107AF0001946681CDCF7FEFF631CDBB22A46D02166 +:107B00000020DAF7C5FC012801D1002032BD4FF07A +:107B1000FF3032BDE020012080B5D2B200920A468B +:107B2000D0210020DAF70EFD012801D1002002BD8E +:107B30004FF0FF3002BD0EB4002003B0704780B597 +:107B4000DAF7AFFB6421DAF7EBFD002002BD00009D +:107B50000300002013F0030F09D0521E22BF13F8B8 +:107B6000010B11F801CBB0EB0C00F3D07047121FE2 +:107B700022BF53F8040B51F804CB6045F7D0121D17 +:107B80000AD200BA9CFA8CFCB0EB0C0038BF6FF044 +:107B9000000088BF01207047521E22BF13F8010B5E +:107BA00011F801CBB0EB0C00F6D0521C08BF104608 +:107BB000704700009248002141608160C16001610E +:107BC00041618161017001214170704770B52DEDF7 +:107BD000068BF0EE608AB0EE419A0024884D28783A +:107BE000012800F004816878002852D12E69002E07 +:107BF00000F0A280D5ED010A30EE600A10EE100A06 +:107C0000E0F728FC21F00041E0F74CFC09EE900A77 +:107C1000B0EE680AD5ED020A30EE600A10EE100AE6 +:107C2000E0F718FC21F00041E0F73CFC0AEE100AF6 +:107C3000B0EE490AD5ED030A30EE600A10EE100AE4 +:107C4000E0F708FC21F00041E0F72CFC00EE100A00 +:107C5000DFED690AF4EE609AF1EE10FA16D5B4EE93 +:107C600060AAF1EE10FA11D5B4EE600AF1EE10FA46 +:107C70000CD5701C28610728C0F2B98020466860C6 +:107C8000A860E860286101206870B0E020462861A3 +:107C9000ADE06869002846D1286900284CD0D5EDB0 +:107CA000010A30EE600A10EE100AE0F7D3FB21F073 +:107CB0000041E0F7F7FB09EE900AB0EE680AD5ED57 +:107CC000020A30EE600A10EE100AE0F7C3FB21F062 +:107CD0000041E0F7E7FB0AEE100AB0EE490AD5EDE5 +:107CE000030A30EE600A10EE100AE0F7B3FB21F051 +:107CF0000041E0F7D7FB00EE100ADFED400AF4EE9A +:107D0000609AF1EE10FA09DAB4EE60AAF1EE10FA18 +:107D100004DAB4EE600AF1EE10FA68DB0120686163 +:107D20002046286163E0012861D12E69322E02DAF3 +:107D3000701C28615BE00DD185ED010AB0EE680A88 +:107D400085ED020AB0EE490A85ED030A2869401C58 +:107D500028614CE0AE69322E44DAD5ED010A30EEEE +:107D6000600A10EE100AE0F775FB21F00041E0F721 +:107D700099FB09EE900AB0EE680AD5ED020A30EEE2 +:107D8000600A10EE100AE0F765FB21F00041E0F711 +:107D900089FB0AEE100AB0EE490AD5ED030A30EE6F +:107DA000600A10EE100AE0F755FB21F00041E0F701 +:107DB00079FB00EE100A701CA861DFED100AF4EEEA +:107DC000609AF1EE10FA09DAB4EE60AAF1EE10FA58 +:107DD00004DAB4EE600AF1EE10FA08DB0120287034 +:107DE000044604E0204628616861A8616870204666 +:107DF000BDEC068B70BD00006666A63F6766A63FB9 +:107E00000825012010B5DFF8DC44FAF762FC606653 +:107E10000020024603E004EB8001CA62401C0928EE +:107E2000F9DB10462066E065FAF747FCA0664FF4E0 +:107E3000FA7020606060DFF8B004A0609FED0A0A6D +:107E400084ED030A84ED040A84ED050AB5EE000A08 +:107E500084ED060A84ED070ADFF89004206207200B +:107E60006062A06210BD00009A99193F704700003F +:107E7000F8B52DED048B0C469FED3D8ADFF8646468 +:107E800000207065B065306E401C3066DFF86054CD +:107E9000012C02D1002068672867F06D0A2839DAC2 +:107EA0001E220021706EF9F725FEC5F88C001E22F7 +:107EB0000121706EF9F71EFEF16D06EB8102336E43 +:107EC00003EB8307BB00D362012921DBD5F88C309B +:107ED00093ED000AD0ED000A30EE600AD3ED010AFE +:107EE00090ED011A70EEC10A93ED021AD0ED021A5C +:107EF00031EE611A05EB810020EE000A00EEA00AC7 +:107F000001EE010A80ED050AD36A926A9A1A826329 +:107F1000481CF065316E0A2902DA0320C5F8880092 +:107F2000F06D0A28C0F23781401EF065706E0A2994 +:107F300020D11E220A21F9F7EDFD85ED030A1E224C +:107F40000A21706EF9F704FE85ED040A1E220A214B +:107F5000706EF9F71BFE85ED050A0020092844DA4A +:107F600005EB800191ED060A38EE008A401CF5E72A +:107F7000000000001E220A21F9F7BCFDD5F88C1084 +:107F800095ED030AD0ED000A30EE600AD1ED000A4B +:107F900030EE200A85ED030A95ED040AD0ED010AC2 +:107FA00030EE600AD1ED010A30EE200A85ED040AB8 +:107FB00095ED050AD0ED020A30EE600AD1ED020A15 +:107FC00030EE200A85ED050AF06D05EB800090ED9E +:107FD000050AD0ED040A30EE200AD0ED030A30EE97 +:107FE000200AF0EE080A20EE208A95ED030AF2EE50 +:107FF000040AC0EE208A95ED040A80EE209A95EDE1 +:10800000050AC0EE209A306E0A2805D1C5ED008A17 +:1080100085ED019AC5ED029A00270FE01E22C7F1F7 +:10802000090109B2706EF9F765FD95ED021AD5EDFB +:10803000010A95ED000A00F0FBF87F1C0A2FEDDB2A +:10804000F06A716A726D914249DAA96F002908D10C +:1080500028660121A967C5ED008A85ED019AC5ED65 +:10806000029AB16AB26D91420CDAE96F00290BD124 +:1080700068660121E967C5ED008A85ED019AC5EDC5 +:10808000029A01E00021E967296E411A29673268E6 +:108090006B6EC31A9A420CD2EB6F012B09D10020F0 +:1080A000C5F88000C5F8840068670120C5F888001D +:1080B00060E08A420CD2A96F012909D10020C5F8DD +:1080C0008000C5F8840068670220C5F8880051E088 +:1080D000A96E401A68670320C5F888004AE0C5ED1C +:1080E000008A85ED019AC5ED029A0021A967E9672A +:1080F0002967D5F88010002903D1A8660121C5F8A9 +:108100008010A96E411A69679FED740A28EE000A73 +:10811000B5EE400AF1EE10FA03DC9FED710A28EE8D +:10812000000AD6ED020AB3EE041A60EE810AF4EEFC +:10813000400AF1EE10FA08D5D5F88410002907D1CD +:10814000E8660121C5F8841002E00021C5F884101A +:108150007168A1F5FA71EA6E801A814207D2D5F8EA +:108160008400012803D10420C5F8880002E0032020 +:10817000C5F8880000200CE006EB80010A6BCA629B +:10818000082805DA05EB8001CA698A610A6CCA63AE +:10819000401C0928F0DBD5F88800012806D044D31C +:1081A000032822D011D304282FD03EE0B06E012145 +:1081B000C162296F016302214163002C35D1BDECFE +:1081C000048BBDE8F440FAF780BAB06E0121C162B9 +:1081D000296F016304214163002C26D10221BDECEB +:1081E000048BBDE8F440FAF770BAB06E0121C162A9 +:1081F000696F016308214163002C16D10221BDEC97 +:10820000048BBDE8F440FAF760BAB06E0121C16298 +:10821000696F016310214163002C06D10221BDEC7E +:10822000048BBDE8F440FAF750BABDEC048BF1BD05 +:10823000D0ED001A31EEC00AD0ED011A71EEE00A5D +:10824000D0ED021A31EEC11AB5EE400AF1EE10FA85 +:1082500001D5B1EE400AF5EE400AF1EE10FA01D573 +:10826000F1EE600AB5EE401AF1EE10FA01D5B1EE6A +:10827000411A1C48D0ED031AB4EE610AF1EE10FA6F +:108280000FD5D0ED041AF4EE610AF1EE10FA08D51C +:10829000D0ED051AB4EE611AF1EE10FA01D5012104 +:1082A00000E00021D0ED061AB4EE610AF1EE10FAFA +:1082B00010D590ED070AF4EE400AF1EE10FA09D558 +:1082C00090ED080AB4EE401AF1EE10FA02D5826D74 +:1082D000521C8265426D89184165704700007A44DE +:1082E00000007AC484130120000040413333B33EC0 +:1082F0007012012070B514461D46DFF82C6206F19D +:1083000048014A6F42F002024A671022014606F114 +:108310001000DCF7EFFBC6E9124570BD70B51446DE +:108320001D46DFF8046206F14001CA6F42F0010207 +:10833000CA671022014606F17000DCF7DBFBC6E9D4 +:10834000104570BDDFF8E011D1F8A820026091F867 +:10835000A4007047DFF8D01101F1A40291F8A43015 +:10836000984208D1022803D15068401C50607047E1 +:108370000020506070470023536081F8A40001285A +:1083800001D1012000E002201A46032100F034B997 +:1083900070B50446644DE9686868FEF77AFF0646E2 +:1083A0002968A868FEF775FF301A2060E968A86898 +:1083B000FEF76FFF064629686868FEF76AFF8019B6 +:1083C0006060E8680146FEF764FF064629680846D3 +:1083D000FEF75FFF8019A0F18040A060002070BD13 +:1083E00080B510225149DCF785FB002002BD38B56D +:1083F00004464D4D95F8BC0010F0030F0CD02A46F2 +:1084000005F1100105F17000FEF74FFFD5F8BC0033 +:1084100020F00300C5F8BC00102229462046DCF7F6 +:1084200069FB002032BD38B50C461546FFF7DFFF6B +:10843000FAF7A6FEC5E90001FAF78BFE002803D083 +:10844000FBF798F9206031BDFAF78BFE002803D0C6 +:10845000FBF78DF9206031BDFAF78AFE002803D0C2 +:10846000FBF792F9206031BD0020206031BD2E491C +:10847000C1F8C0000020704780B507224FF4487152 +:108480002B48FBF766F8002002BD10B5264CD02221 +:1084900000212046D9F7E2FE4FF080406066A066DA +:1084A000E06620672061206020622063C4F88000BD +:1084B0002048C4F8C400002010BD80B5FFF7E5FFD8 +:1084C000002804D11C48BDE8024000F0B1B802BD4C +:1084D0001549C1F8940070471349C1F8B0007047BE +:1084E00010B584B0040018D000221146FBF70CF937 +:1084F00000A8FFF74DFF20680099A0EBA130206095 +:1085000000A861684268A1EBA2316160A16880683F +:10851000A1EBA030A060002000E0162004B010BD48 +:10852000014890ED310A7047580A0120680A01207D +:108530006F840208DB0F49407984020810B584B0CB +:10854000040016D000A8FFF7CBFF002811D10020AF +:108550000BE000A951F8201000EE101ABAEEC80A7C +:1085600004EB800181ED000A401C0328F1DB0020B0 +:1085700000E0162004B010BD10B51E4C4FF4CC72B4 +:1085800000212046D9F76AFE0C20606010BD70B44F +:10859000002500E06D1C174C2668B54209DA05EB92 +:1085A000450604EB8604D4F8B040A342F2D116206D +:1085B0001EE0142E01DB16201AE00C2505FB0646F2 +:1085C000C6F8B030236805FB0343C3F8A82023682E +:1085D00004EB83039860206804EB80008165606889 +:1085E00002F10C01081860602068401C2060002027 +:1085F00070BC7047E8020120002A05D1074A1368C1 +:1086000023EA0101084310607047044A11680028FA +:1086100001D000201060084670470000E4280120C7 +:1086200080B5542200211348D9F718FE002002BD5E +:1086300010490A68142A01DB1620704701EB8202F8 +:1086400050600868401C08600020704738B500245E +:10865000254609E000EB850040688047002802D0ED +:10866000002C00D104466D1C024801688D42F1DBEC +:10867000204632BD4C1F0120F446490006D200F0CE +:1086800011F809420DD5C8174108604700F00AF8F3 +:1086900007D04942404271F1000102D400205FF04E +:1086A000004160474A0DA2F580621E3A0ADC524240 +:1086B000202A18DA890241F0004141EA5050002195 +:1086C000D0407047D2F1200210D4890241F000411D +:1086D00041EA5051C002D04061FA02F35840D14003 +:1086E00080EA01007047002000217047D017010088 +:1086F00070470000D2B2203A22BF41FA02F0C917F7 +:1087000070472032D141D04048409140D14048404C +:108710009140114170470000B5EEC00AF1EE10FA29 +:1087200002D4B1EEC00A70476FF0004C00EE10CAE0 +:10873000DFF700BF002940F10B80F4464942404278 +:1087400071F1000100F00AF850F0004060470000AD +:1087500050EA010200F00E80094200BF0BD1B0FACE +:1087600080F18840C1F19D01C905020672F1004205 +:1087700041EB10207047B1FA81F241409040C2F1C4 +:10878000200261FA02F181EA000018BF40F0010006 +:1087900002F19D01E8E70000C0F3C7517F392CD4F6 +:1087A00020290DDAC1F11F0C41004FEAC11141F03F +:1087B000004121FA0CF0894128BF4042C94370476B +:1087C000D1F13F0C1CD441004FEAC11141F00041EE +:1087D00061FA0CF021FA0CF180EA0100094244BF71 +:1087E0004FF00041002004D34942404271F10001A2 +:1087F000704701D5401E491E704700200021704778 +:1088000009424FF0004158BFC943002070470000A3 +:1088100080B500F00DF8B5EE400AF1EE10FA02D086 +:108820000548406C02BD012002BD0348C06C704782 +:10883000014890ED160A7047281C012010B5FFF77B +:10884000E7FF0446FFF7F1FF204310BD012000F0D1 +:1088500013BE002000F010BE10EE101A10EE902A89 +:10886000B0EEC00AC80F49005200F0EEE00A28BF7F +:108870000C3011F1807F38BF12F1807F0CD28A4218 +:1088800038BF80F00400124214D034BF80EE800A5A +:1088900080EE200A00F0A6BE11F1807F08BF80F0B4 +:1088A000040098BF12F1807F08D88A4214BF0022CA +:1088B0004FF07E5200EE102A00F094BE6FF000419F +:1088C00000EE101A7047000010EE101A4FF07E5C98 +:1088D00001EE90CAC80F31F0004122D000EE101A0C +:1088E000B1F17E5F13D871EEC00ADFF838C031EE07 +:1088F000801A61EE200AF1EEE00A614586BF80F041 +:10890000040080EE800A80EE200A00F06BBE490071 +:1089100011F1807F9CBF6FF0004100EE101A5FF6EE +:1089200009AE7047F404353F10B5044600F0ACFEC4 +:10893000204610BD2DE9F0432DED048B06468946F7 +:10894000B0EE408A10EE900ADFF784FD41EC190B7F +:1089500018EE100ADFF77EFD41EC180B53EC182BD4 +:10896000D6E93001DAF7DAF904460D4653EC192B53 +:10897000D9E93001DAF7D2F922462B46DAF7E0FAE4 +:10898000C6E93001002734E051EC180B06EBC702B2 +:1089900053681268DAF7C2F904460D4651EC190B18 +:1089A00009EBC70253681268DAF7B8F922462B467A +:1089B000DAF7C6FA06EBC702C2E9000106EBC70800 +:1089C00051EC180BD8E92423DAF7A8F904460D4630 +:1089D00053EC192B09EBC700D0F89410D0F8900095 +:1089E000DAF79CF922462B46DAF7AAFAC8E92401FD +:1089F0007F1C062FC8DB002718E006EBC70851ECE8 +:108A0000180BD8E91223DAF789F904460D4653EC1E +:108A1000192B09EBC700C16C806CDAF77FF922468D +:108A20002B46DAF78DFAC8E912017F1C092FE4DB27 +:108A3000002718E006EBC70851EC180BD8E90C2307 +:108A4000DAF76CF904460D4653EC192B09EBC70015 +:108A5000416B006BDAF762F922462B46DAF770FABF +:108A6000C8E90C017F1C032FE4DBBDEC048BBDE8DF +:108A7000F08370B52DED108B88B005460C4620684C +:108A8000DAF746FACDE900016068DAF741FA41EC1D +:108A9000180B00AE86ED028BA068DAF739FA41ECCC +:108AA000190B86ED049BD5E930230020DFF8AC19C3 +:108AB000DAF746FAC5E93001D5E90C23DDE9000112 +:108AC000DAF73EFAC5E90C01D5E90E2351EC180B93 +:108AD000DAF736FAC5E90E01D5E9102351EC190B86 +:108AE000DAF72EFAC5E91001DDE90023DDE900011E +:108AF000DAF714F941EC1A0B53EC1A2BD5E9000103 +:108B0000DAF71EFAC5E90001DDE9002351EC180B84 +:108B1000DAF704F941EC1F0B53EC1F2BD5E90201E6 +:108B2000DAF70EFAC5E90201DDE9002351EC190B71 +:108B3000DAF7F4F841EC1B0B53EC1B2BD5E90401DD +:108B4000DAF7FEF9C5E9040153EC182B51EC180BC8 +:108B5000DAF7E4F841EC1C0B53EC1C2BD5E90601C9 +:108B6000DAF7EEF9C5E9060153EC182B51EC190BB5 +:108B7000DAF7D4F841EC1D0B53EC1D2BD5E90801B5 +:108B8000DAF7DEF9C5E9080153EC192B51EC190BA2 +:108B9000DAF7C4F8CDE90601DDE90623D5E90A01D3 +:108BA000DAF7CEF9C5E90A0153EC1A2BDDE9000129 +:108BB000DAF7B4F841EC1E0B53EC1E2BD5E9120189 +:108BC000DAF7BEF9C5E9120153EC1F2B51EC180B73 +:108BD000DAF7A4F8D5E91423DAF7B2F9C5E91401F4 +:108BE00053EC1B2B51EC190BDAF798F8D5E9162347 +:108BF000DAF7A6F9C5E9160153EC1F2BDDE90001F0 +:108C0000DAF78CF8D5E91823DAF79AF9C5E91801EB +:108C100053EC1C2B51EC180BDAF780F841EC1F0BCE +:108C200053EC1F2BD5E91A01DAF78AF9C5E91A01C5 +:108C300053EC1D2B51EC190BDAF770F8D5E91C2316 +:108C4000DAF77EF9C5E91C0153EC1B2BDDE90001C5 +:108C5000DAF764F8D5E91E23DAF772F9C5E91E01DF +:108C600053EC1D2B51EC180BDAF758F8D5E92023FB +:108C7000DAF766F9C5E92001DDE9062351EC190BA5 +:108C8000DAF74CF841EC1B0B53EC1B2BD5E9220116 +:108C9000DAF756F9C5E9220153EC1E2BDDE9000194 +:108CA000DAF73CF8D5E92423DAF74AF9C5E92401D3 +:108CB00053EC1F2B51EC180BDAF730F8D5E92623CB +:108CC000DAF73EF9C5E9260153EC1B2B51EC190BE1 +:108CD000DAF724F8D5E92823DAF732F9C5E92801CB +:108CE00053EC1A2B51EC180BDAF718F853EC182B3D +:108CF000DAF714F8D5E92A23DAF722F9C5E92A01C7 +:108D000053EC1A2B51EC190BDAF708F853EC192B2A +:108D1000DAF704F8D5E92C23DAF712F9C5E92C01C2 +:108D200053EC1C2B51EC190BD9F7F8FF53EC192B12 +:108D3000D9F7F4FFD5E92E23DAF702F9C5E92E01B8 +:108D400008B0BDEC108B70BD2DE9F04F2DED108BF0 +:108D50008DB080460C46914698ED0CEB98ED308B2B +:108D600098ED000B8DED000B53EC182BDDE90001A5 +:108D7000D9F7D4FF06460F4653EC1E2B51EC1E0BC1 +:108D8000D9F7CCFF02460B4630463946D9F706FFE5 +:108D9000CDE9040198ED0EFB98ED060B8DED020B6D +:108DA00053EC182BDDE90201D9F7B8FF06460F4650 +:108DB00053EC1F2B51EC1F0BD9F7B0FF02460B46AB +:108DC00030463946D9F7EAFECDE9080198ED109B07 +:108DD00098ED0AAB53EC182B51EC1A0BD9F79EFF08 +:108DE00006460F4653EC192B51EC190BD9F796FF99 +:108DF00002460B4630463946D9F7D0FECDE906018A +:108E000053EC182BD8E90201D9F788FF06460F4624 +:108E100053EC1E2B51EC1F0BD9F780FF02460B467B +:108E200030463946D9F7BAFE41EC1B0B53EC182BF0 +:108E3000D8E90401D9F772FF06460F4653EC1E2B02 +:108E400051EC190BD9F76AFF02460B4630463946FA +:108E5000D9F7A4FE41EC1C0B53EC182BD8E9080100 +:108E6000D9F75CFF06460F4653EC1F2B51EC190B4C +:108E7000D9F754FF02460B4630463946D9F78EFEE5 +:108E800041EC1D0B53EC182BD8E91201D9F746FF22 +:108E900006460F4653EC1E2BDDE90001D9F73EFFD5 +:108EA00002460B4630463946D9F778FE06460F464D +:108EB00053EC182BD8E91401D9F730FF32463B4662 +:108EC000DAF73EF806460F4653EC1E2BDDE90201A9 +:108ED000D9F724FF02460B4630463946D9F75EFEE5 +:108EE00006460F4653EC182BD8E91601D9F716FFA2 +:108EF00032463B46DAF724F806460F4653EC1E2B63 +:108F000051EC1A0BD9F70AFF02460B463046394698 +:108F1000D9F744FE0022DFF84835D9F7FFFE41ECCF +:108F20001E0B53EC182BD8E91801D9F7F7FE0646AB +:108F30000F4653EC1F2BDDE90001D9F7EFFE024687 +:108F40000B4630463946D9F729FE06460F4653EC04 +:108F5000182BD8E91A01D9F7E1FE32463B46D9F77A +:108F6000EFFF06460F4653EC1F2BDDE90201D9F750 +:108F7000D5FE02460B4630463946D9F70FFE064667 +:108F80000F4653EC182BD8E91C01D9F7C7FE32461F +:108F90003B46D9F7D5FF06460F4653EC1F2B51EC45 +:108FA0001A0BD9F7BBFE02460B4630463946D9F7B5 +:108FB000F5FD0022DFF8A834D9F7B0FE41EC1F0B15 +:108FC00053EC182BD8E91E01D9F7A8FE06460F4628 +:108FD00053EC192BDDE90001D9F7A0FE02460B4640 +:108FE00030463946D9F7DAFD06460F4653EC182BC2 +:108FF000D8E92001D9F792FE32463B46D9F7A0FFC7 +:1090000006460F4653EC192BDDE90201D9F786FE1F +:1090100002460B4630463946D9F7C0FD06460F4694 +:1090200053EC182BD8E92201D9F778FE32463B469B +:10903000D9F786FF06460F4653EC192B51EC1A0B55 +:10904000D9F76CFE02460B4630463946D9F7A6FDE5 +:109050000022DFF80C34D9F761FE41EC190BDDE991 +:109060000423DDE90801D9F759FECDE90201DDE964 +:10907000082351EC1C0BD9F751FECDE90001DDE9C5 +:10908000062351EC1B0BD9F749FECDE90A019FEDF0 +:10909000F18BDDE90A2351EC1B0BD9F73FFE0646A5 +:1090A0000F4653EC1B2B51EC180BD9F737FE53EC42 +:1090B0001C2BD9F733FE53EC1D2BD9F72FFE02469C +:1090C0000B4630463946D9F769FD06460F46DDE9BD +:1090D000002351EC1C0BD9F721FE32463B46D9F751 +:1090E0002FFF06460F46DDE9042351EC1D0BD9F78F +:1090F00015FE53EC1D2BD9F711FE32463B46D9F72E +:109100001FFF06460F46DDE90223DDE90601D9F718 +:1091100005FE02460B4630463946D9F73FFD41EC85 +:109120001A0B53EC1A2B00200146D9F727FD00F04B +:109130008B81DDE9082351EC190BD9F7EFFD0646C9 +:109140000F4653EC1D2B51EC1F0BD9F7E7FD0246E0 +:109150000B4630463946D9F721FD53EC1C2BD9F785 +:10916000DDFD06460F4653EC1D2B51EC1D0BD9F7C8 +:10917000D5FD53EC1E2BD9F7D1FD32463B46D9F72E +:10918000DFFE06460F46DDE90823DDE90601D9F7D3 +:10919000C5FD53EC1E2BD9F7C1FD02460B463046E8 +:1091A0003946D9F7FBFC06460F46DDE90A2351ECA8 +:1091B0001F0BD9F7B3FD32463B46D9F7C1FE064631 +:1091C0000F4653EC1B2B51EC1D0BD9F7A7FD53ECAD +:1091D000192BD9F7A3FD02460B4630463946D9F77D +:1091E000DDFCC4E90001DDE9042351EC190BD9F7DA +:1091F00095FD06460F4653EC1C2B51EC1E0BD9F780 +:109200008DFD02460B4630463946D9F7C7FC53EC74 +:109210001D2BD9F783FD06460F4653EC1C2B51EC52 +:109220001C0BD9F77BFD53EC1F2BD9F777FD32468A +:109230003B46D9F785FE06460F46DDE90423DDE906 +:109240000601D9F76BFD53EC1F2BD9F767FD0246DA +:109250000B4630463946D9F7A1FC06460F46DDE9F4 +:109260000A2351EC1E0BD9F759FD32463B46D9F77C +:1092700067FE06460F4653EC1B2B51EC1C0BD9F72F +:109280004DFD53EC192BD9F749FD02460B463046EC +:109290003946D9F783FCC4E90201DDE9042351EC26 +:1092A0001F0BD9F73BFD06460F4653EC1B2B51EC29 +:1092B0001E0BD9F733FD02460B4630463946D9F727 +:1092C0006DFC53EC1D2BD9F729FD06460F4653ECD8 +:1092D0001B2B51EC1B0BD9F721FD53EC192BD9F7A4 +:1092E0001DFD32463B46D9F72BFE06460F46DDE90B +:1092F000022351EC190BD9F711FD02460B463046FB +:109300003946D9F74BFC06460F46DDE9002351EC00 +:109310001E0BD9F703FD32463B46D9F711FE064630 +:109320000F4653EC1B2B51EC1C0BD9F7F7FC53ECFD +:109330001F2BD9F7F3FC02460B4630463946D9F7C6 +:109340002DFCC4E90401D4E9000153EC1A2BD9F730 +:109350006BFEC4E90001D4E9020153EC1A2BD9F7E2 +:1093600063FEC4E90201D4E9040153EC1A2BD9F7D6 +:109370005BFE41EC190B84ED049B94ED02AB94ED84 +:1093800000BB53EC1B2B51EC1B0BD9F7C7FC04465D +:109390000D4653EC1A2B51EC1A0BD9F7BFFC2246A1 +:1093A0002B46D9F7CDFD04460D4653EC192B51EC55 +:1093B000190BD9F7B3FC22462B46D9F7C1FD044659 +:1093C0000D46D8E90023D8E90601D9F7B9FDD8E957 +:1093D0000A23D9F7B5FD82468B4653EC1B2BD8E9FF +:1093E0000C01D9F79BFC06460F4653EC1A2BD8E923 +:1093F0000E01D9F793FC32463B46D9F7A1FD06464C +:109400000F4653EC192BD8E91001D9F787FC3246E7 +:109410003B46D9F795FD53EC182BD9F77FFC024654 +:109420000B4650465946D9F7B9FBD8E93023D9F74E +:10943000FBFD22462B46D9F783FD41EC100BD9F7F3 +:1094400017FF89ED000B01200DB0BDEC108BBDE8BE +:10945000F08F00BF00000000000000400000F03F5F +:109460000000E03F80B5012251EC100B00F048F9FC +:1094700041EC100B01BD0000DFED4A0A10B560EEB3 +:10948000200AB0EEE01ADFED481AB4EE611A82B09D +:109490000446F1EE10FA29D5F5EE400AF1EE10FA85 +:1094A000ACBFB6EE001ABEEE001A70EE810AFDEEF9 +:1094B000E00A10EE900AA8B1FAEEC90A9FED3B1A35 +:1094C00000EEC10A9FED3A1A00EEC10A9FED391A6B +:1094D00000EEC10A9FED381A00EEC10A9FED371A5F +:1094E00000EEC10A00F00300041921E08DED000A2E +:1094F0000098C0F3C750FF2808D088B900984002F0 +:109500000ED1E00748D5B7EE000A45E000984002CA +:1095100046D1EAF773FB212101609FED290A13BDB3 +:109520008DED000A00A800F017FB04199DED000A5C +:10953000DFED240AB4EE600AF1EE10FA0BDBDFED8A +:10954000220AB4EE600AF1EE10FA04D5E00723D542 +:10955000B7EE000A20E060EE000AE0070ED59FEDAE +:109560001B0A9FED1B1A00EE801ADFED1A1A41EE5E +:10957000201AB7EE000A01EEA00A0DE0DFED161A80 +:109580009FED162A00EEA12ADFED151A20EE201A13 +:1095900042EE201A01EE210AA00748BFB1EE400AB0 +:1095A00013BD000083F9223F0000004F0000C946B0 +:1095B00000A0FD400020A23A000034330030C22E4B +:1095C000FFFFFF7FFEFF7FB9000080399349B2BAE9 +:1095D00036A02A3DDFFFFFBE6E8C4CB94283083CAB +:1095E000A1AA2ABE1AA210EE101ADFF860C0F2EC8F +:1095F000060A614509DB00EE803A70EE800A83EED0 +:10960000200A40F0020010EE101A21F0004CDCF1AC +:10961000665C0BD860EE000A20EE203A03EE010AE9 +:1096200001EEA02A42EE202A80EE220A400810F025 +:10963000020F18BFB1EE400A02EB8002D2ED000A21 +:1096400030EE200A28BFB1EE400A7047A430893EB0 +:10965000D7B3DD3F6AD5033F2B94A93DB82A593FC4 +:109660000000803F000080BF00000000920A063F1B +:10967000DB0FC93F920A863FDB0FC93F920A0640C3 +:10968000DB0F4940368D274081423ABF531898423C +:10969000D9F728BA8018990707D0521E24BF13F8AB +:1096A000011D00F8011DF6D8704781071CD1103A42 +:1096B00007D330B433E93210103A20E93210F9D22E +:1096C00030BC1032121F24BF53F8041D40F8041D93 +:1096D000F8D838BF121D521E24BF13F8011D00F820 +:1096E000011DF8D8704700BF083A07D333E90210CC +:1096F000083A40F804CD40F8041DF7D20832EAE7F2 +:10970000F8B52DED048B154641EC180B82B053ECE7 +:10971000182BC448C449D9F701FBC44AC44B41ECD7 +:10972000190B21F00041D9F7D7FB80F0F38051EC01 +:10973000190B00220023EAF7C3FA53EC192B99BF47 +:109740000020BC490020BC49D9F7FAFBD9F710FE2C +:10975000040051D0D9F7DCFB0022B84BD9F7DEFA70 +:1097600041EC190B53EC192B4FF0A040B449D9F739 +:10977000D5FA02460B4651EC180BD9F70FFA0646FC +:109780000F4653EC192B4FF0C040AE49D9F7C6FA3B +:1097900002460B4630463946D9F700FA06460F46D0 +:1097A00053EC192B4FF00050A749D9F7B7FA0246EE +:1097B0000B4630463946D9F7F1F906460F4653ECC9 +:1097C000192B0020A149D9F7A9FA02460B463046C9 +:1097D0003946D9F7E3F906460F4653EC192B4FF0FB +:1097E00000509B49D9F79AFA02460B463046394653 +:1097F000D9F7D4F941EC180B04F00300451951ECEA +:10980000180B6FF00102944BEAF75AFA0BD80022BA +:109810004FF07953D9F760FB05D2E80740F18E810C +:109820009FED8E8B8AE153EC182BD9F777FA41EC38 +:10983000190BE80731D553EC192B8A488A49D9F717 +:109840006DFA8A4A8A4BD9F77BFB53EC192BD9F76F +:1098500065FA884A884BD9F773FB53EC192BD9F773 +:109860005DFA864A864BD9F76BFB53EC192BD9F777 +:1098700055FA844A844BD9F763FB53EC192BD9F77B +:109880004DFA824B6FF05102D9F75AFB53EC192B6A +:10989000D9F744FA0022624B37E053EC182B51EC15 +:1098A000190BD9F73BFA06460F4653EC192B914892 +:1098B0009149D9F733FA914A914BD9F741FB53ECCF +:1098C000192BD9F72BFA8F4A8F4BD9F739FB53EC69 +:1098D000192BD9F723FA8D4A8D4BD9F731FB53EC6D +:1098E000192BD9F71BFA8B4A8B4BD9F729FB53EC71 +:1098F000192BD9F713FA894A564BD9F721FB32466F +:109900003B46D9F70BFA53EC182BD9F719FB41EC6E +:10991000180B13E18DED008BDDE90001DDE900237B +:10992000C3F30A5140F2FF72914213D0002904BFE1 +:10993000190350EA11301CD1E80748BF9FED478B4F +:10994000A80740F1038151EC180B81F0004141EC74 +:10995000180BFBE0190350EA113040F0F780EAF7EA +:109960004DF92121016002B04FF0FF306FF000414E +:10997000EFE08DED008B00A800F064F945199DED36 +:10998000008B354B51EC180B6FF00102EAF798F998 +:109990000BD800224FF07953D9F79EFA05D2E80789 +:1099A00040F1CC809FED2D8BC8E053EC182BD9F7FC +:1099B000B5F941EC190BE8076AD553EC192B294886 +:1099C0002949D9F7ABF9294A294BD9F7B9FA53EC08 +:1099D000192BD9F7A3F9274A274BD9F7B1FA53EC3A +:1099E000192BD9F79BF9254A254BD9F7A9FA53EC3E +:1099F000192BD9F793F9234A234BD9F7A1FA53EC42 +:109A0000192BD9F78BF9214B6FF05102D9F798FA3E +:109A100053EC192BD9F782F90022014B8AE000BFE1 +:109A20000000F03F83C8C96D305FE43F0000A0FF35 +:109A3000FFFFDF410000E03F0000E0BF0000303EDC +:109A4000FB21B941B410114026A6513E5C14D33C11 +:109A50009A833B3B5555C5BFFFFF3FBE000000004A +:109A60000000F03F09260A1039BA213E3BA861C622 +:109A7000F97D92BE63AC30909F01FA3EF6FB511621 +:109A80006CC156BFB10255555555A53FFFFFDFBF0D +:109A900053EC182B51EC190BD9F740F906460F4639 +:109AA00053EC192B13481449D9F738F9134A144BBE +:109AB000D9F746FA53EC192BD9F730F9114A124B62 +:109AC000D9F73EFA53EC192BD9F728F90F4A104B66 +:109AD000D9F736FA53EC192BD9F720F90D4A0E4B6A +:109AE000D9F72EFA53EC192BD9F718F90B4A0C4B6E +:109AF00018E000BFB08F2FC310D8E53D8F0C73A1C5 +:109B0000E1E55ABE4DADE44FE31DC73E3EE3B51956 +:109B1000A0012ABFFAF010111111813F425555558D +:109B20005555C5BFD9F70CFA32463B46D9F7F6F87A +:109B300053EC182BD9F704FA41EC180BA80705D5FC +:109B400051EC180B81F0004141EC180B02B051ECC4 +:109B5000180BBDEC048BF4BD10B52DED028B044643 +:109B600082B094ED008A9FED2D0A28EE000AB5EE32 +:109B7000400A8DED000AF1EE10FAACBFF6EE000AD5 +:109B8000FEEE000A30EE200A8DED000A002100A84A +:109B900000F00CF99DED000AB5EE400AF1EE10FA66 +:109BA00017D0DFED1F0A20EE200ADFED1E0A00EEBF +:109BB000608ADFED1D0A00EE608ADFED1C0A00EE10 +:109BC000608ADFED1B0A00EE608ADFED1A0A00EE04 +:109BD000608A84ED008ADFED180A9DED000AB4EE7C +:109BE000600AF1EE10FA06D4DFED140AB4EE600A52 +:109BF000F1EE10FA05DBDFED120A00F0FFF88DED53 +:109C0000000A9DED000ABDEEC00A02B010EE100A77 +:109C100000F00300BDEC028B10BD000083F9223F71 +:109C2000000080380000C94600A0FD400020A23A94 +:109C3000000034330030C22E000000CF0100004F7E +:109C40000000004FD0B52DED048B044682B094ED9A +:109C5000008B4748474953EC182BD9F75FF8CDE9FB +:109C6000000100220023EAF72BF8DDE9002399BF69 +:109C70000020414900204149D9F762F9CDE90001AE +:109C8000002100A800F058F9DDE9002300200021A0 +:109C9000D8F774FF4ED03A49D9F740F841EC190B88 +:109CA00053EC192B4FF0A0403649D9F737F802464C +:109CB0000B4651EC180BD8F771FF06460F4653ECD4 +:109CC000192B4FF0C0403049D9F728F802460B460F +:109CD00030463946D8F762FF06460F4653EC192B3B +:109CE0004FF000502949D9F719F802460B46304683 +:109CF0003946D8F753FF06460F4653EC192B002080 +:109D00002349D9F70BF802460B4630463946D8F7B7 +:109D100045FF06460F4653EC192B4FF000501D49E6 +:109D2000D8F7FCFF02460B4630463946D8F736FFD7 +:109D300041EC180B84ED008BDDE90001164A174B4E +:109D4000D9F7CAF804D3164A164BE9F7B9FF05D874 +:109D50000022154B00F030F9CDE90001DDE90001EA +:109D6000D9F706FB02B000F00300BDEC048BD0BDB8 +:109D700083C8C96D305FE43F0000E03F0000E0BFF2 +:109D80000000303EFB21B941B410114026A6513EDF +:109D90005C14D33C9A833B3B0000C0FFFFFFDFC154 +:109DA0000100C0FFFFFFDF410000E0410268C2F395 +:109DB000C752FF2A06D10068400201D10120704736 +:109DC0000220704703685B0016D0C2F19602521A57 +:109DD000012A11DB182A04DB016801F0004101604F +:109DE00007E0012191400268491E11404A4002608B +:109DF00011B14FF0FF3070470020704710EE100A8D +:109E000010EE901AA4464FF0FF034FEA410103EA17 +:109E1000D0540A0E1CBF94EA030F92EA030F55D0E8 +:109E2000B1EB400F2ED24FEAC11141F0004100F0DA +:109E300000434FEA002040F000404FEA90008908BC +:109E400064EB0204401A38BF01EB400018BF54F124 +:109E5000000407D0D1EB400038BF081818BFB4F198 +:109E60000104F7D140002CD0B0FA80F100FA01F0E3 +:109E7000521A0EDB43EA102000EBC25000EE100A2B +:109E80006446704708BF00F0004000EE100A6446C8 +:109E9000704743EA102000EE100A02F17F024FEAF9 +:109EA000C25100EE901AF1EE100A20F4F851E1EEE2 +:109EB000101A20EE200AE1EE100A10EE100A644695 +:109EC0007047184600EE100A6446704709421CBFEE +:109ED00094EA030F92EA030F1CD04FF0984201EE70 +:109EE000102A60EE810AB1EB400FCBD2244208BFAA +:109EF00020EE010A10EE901A03EAD152A2F11902E3 +:109F00004FEA012191D110EE100A03EAD054A4F1D6 +:109F100019048CE74FF0807212EB400F2CBF6FF0EA +:109F2000004011F1807F644618BF6FF0004000EEE2 +:109F3000100ADEF4FFAA70474268C2F30A5240F2E8 +:109F4000FF739A4209D14168090304BF00680028E1 +:109F500001D1012070470220704743685B0004BFB5 +:109F60000368002B25D040F233439A1A521A012A73 +:109F70001FDB352A06DB416801F00041416000210A +:109F8000016013E0012102F01F039940491E92066F +:109F900007D5426811404A404260026811430022DE +:109FA00002E0026811404A40026011B14FF0FF30F8 +:109FB000704700207047000070B540F2FF7601F056 +:109FC000004C5B0006EA11545D0D1ABFB442B54265 +:109FD00078E0B3EB410F08BF82424BD2C3F3530387 +:109FE00043F48013C1F3130141F48011641B0B3C53 +:109FF00013D9C90241EA5051B1FBF3FE03FB1E1114 +:10A00000A2FB0EE6DEEBC020B14101D2801859411F +:10A0100050EA010653D00B3CEBD80B34C4F12006B8 +:10A02000A14020FA06F6A0403143B1FBF3FE03FB4A +:10A030001E11A2FB0EE6B0EB0E00B14101D280185A +:10A04000594102BF0146203D0020C1B3B1FA81F35E +:10A050009940C3F1200220FA02F211439840ED1A10 +:10A060000A3509DBC00A40EA41504CEAD12101EB34 +:10A07000055170BD23D070BDD5F10B05B5F120029F +:10A080000DDAC5F120020300E84001FA02F6E940CA +:10A09000934073F10043704151EB0C0170BD402DB2 +:10A0A0000DDC430821FA02F0C2F1200511FA05F691 +:10A0B000334373F1004370415CF1000170BD6146B0 +:10A0C000002070BD53EA020E1ABFB442B54237E019 +:10A0D000B3EB410F08BF8242CCD25B08B3FA83F5E1 +:10A0E00004BFB2FA82F6AD190B3DB5F1200624BFCC +:10A0F00002FA06F305E0AB40C5F1200622FA06F6A7 +:10A100003343AA40D5F1010524427FF46BAF31F00F +:10A110000041B1FA81F404BFB0FA80F6A4190B3CF7 +:10A12000B4F1200624BF00FA06F105E0A140C4F115 +:10A13000200620FA06F63143A040D4F1010455E789 +:10A140004FF4001515EB410F2CBF6FF00041EB42AF +:10A1500018BF6FF00041BDE87040DEF4EBA9704716 +:10A16000BFF34F8FDFF8A008016801F4E061DFF86A +:10A170009C2811430160BFF34F8FFEE71EF0040FD0 +:10A180000CBFEFF30880EFF3098000F03DB8704793 +:10A190001EF0040F0CBFEFF30880EFF3098000F00E +:10A1A00033B8FEE71EF0040F0CBFEFF30880EFF3A7 +:10A1B000098000F029B870471EF0040F0CBFEFF3C0 +:10A1C0000880EFF3098000F01FB870471EF0040FFD +:10A1D0000CBFEFF30880EFF3098000F015B870476B +:10A1E0001EF0040F0CBFEFF30880EFF3098000F0BE +:10A1F0000BB870471EF0040F0CBFEFF30880EFF3AD +:10A20000098000F001B87047DAF7E3BE70472DE926 +:10A21000F04186B059E02646D8F7FDFAD8F741F864 +:10A220000521D8F77DFA0FF62800D8F7BBF8D8F744 +:10A23000F5FADFF8DC173846DEF762FD00281AD1A0 +:10A240003046461E0028F4D16D1EE4D50021384664 +:10A25000DEF741FD0021DFF8BC07DEF73CFDBDF86D +:10A260000330BDF801209DF800100FF2EC70D8F714 +:10A2700099F8FFF775FFB8F1020F01D1DCF768F923 +:10A28000DDF80900002804D0E0F7D2FA0020CDF86C +:10A29000090049F64044DFF8805702212846DEF7DE +:10A2A00067FC002803D12046441E0028F5D142F265 +:10A2B000107680212846DEF75BFC012803D130466A +:10A2C000461E0028F5D1D8F7A6FA00A9DFF84C07FA +:10A2D00000F0E2FB9DF8030010F0030808D0B8F18D +:10A2E000020F05D015D3B8F1030F00F08780ECE71B +:10A2F000BDF80100011D89B2DDF8090000F0FAFB8C +:10A30000DFF81C4726460125D8F788FADFF81477CE +:10A310008FE7DFF804078089C04604A800210160A8 +:10A3200002220DF10301DAF7E5FB02220DF1010132 +:10A330000DF11200DAF7DEFB042104A800F0DAFBCD +:10A34000BDF80100001DE0F75BFACDF80900BDF88B +:10A350000100011D89B2DDF8090000F0EFFBDFF814 +:10A36000C04626460125D8F759FADFF8A8760DE051 +:10A370002646D8F750FAD7F794FF0521D8F7D0F939 +:10A380000FF2E460D8F70EF8D8F748FADFF898161D +:10A390003846DEF7B5FC00281AD13046461E0028A4 +:10A3A000F4D16D1EE4D50021DFF87806DEF793FCCA +:10A3B00000213846DEF78FFCBDF80330BDF80120E0 +:10A3C0009DF800100FF2A860D7F7ECFFFFF7C8FE6A +:10A3D000D8F721FA002E3FF478AF00A9DFF84C0639 +:10A3E00000F0D0FB002803D00FF29460DAF7A2FE51 +:10A3F000DFF83C160820E6F72DF966E7DFF81806C7 +:10A400008089C0460921DFF82C0600F097FBD8F7B9 +:10A410000BFADFF824660221DFF82006DEF72DFABA +:10A4200000287FF452AF3046461E0028F3D10021A9 +:10A43000DFF8F005DEF74FFC0021DFF8D805DEF786 +:10A440004AFC0FF24460D7F7ADFF3EE72DE9F0413B +:10A45000DFF8EC452078401C2070DFF8E8552878BC +:10A46000401C2870DBF76DF96878F021084202D0B3 +:10A470009920DAF7BBFADAF726FB6878401C687097 +:10A48000D9F7B2FF6878F021084202D09920DAF7B4 +:10A49000ADFA6878401E6870C0B2002801D1DAF7C2 +:10A4A0000CFB0120DEF704FF012840F08280012030 +:10A4B000DEF70AFF0026DFF890750121DFF88C0532 +:10A4C000DEF7DBF9002868D0387800282ED0304637 +:10A4D0003870DFF84C75DFF83C854046DEF70CFC41 +:10A4E000002823D03846471E0028F6D13146DFF831 +:10A4F0003405DEF7F0FB31464046DEF7ECFB0FF2A9 +:10A500009050D7F74FFFD8F78CF92078411E217073 +:10A51000002802D19820DAF769FA2878012858D162 +:10A520006868002855D0DAF7C4FA52E00221DFF853 +:10A530000C05DEF7A2F9002810D02078411E21700A +:10A54000002802D19820DAF751FA2878012840D162 +:10A55000686800283DD0DAF7ACFA3AE0DFF8D414A6 +:10A56000C87810F003000BD0012813D1B1F8010016 +:10A57000002805D0DFF8A40400F004FB064609E03B +:10A58000DFF8A80400F0FEFA0646DFF8A41408205D +:10A59000E6F760F8D8F745F907E001203870391D73 +:10A5A000DFF8780400F0EEFA0646002E01D0DAF764 +:10A5B000D2FD2078411E2170002802D19820DAF7C0 +:10A5C00015FA2878012804D16868002801D0DAF744 +:10A5D00070FA2878401E2870BDE8F08138B5DFF8A1 +:10A5E00060442078401C2070DFF858542878401CC4 +:10A5F0002870DBF7A6F86878F021084202D099208D +:10A60000DAF7F4F9DAF75FFA6878401C6870D9F77E +:10A61000EBFE6878F021084202D09920DAF7E6F9DB +:10A620006878401E6870C0B2002801D1DAF745FA98 +:10A630000220DEF73DFE002802D00220DEF744FEB5 +:10A640002078411E2170002802D19820DAF7CEF937 +:10A650002878012804D16868002801D0DAF729FA9F +:10A660002878401E287031BD38B5DFF8D4432078F3 +:10A67000401C2070DFF8CC532878401C2870DBF792 +:10A6800060F86878F021084202D09920DAF7AEF934 +:10A69000DAF719FA6878401C6870D9F7A5FE68786F +:10A6A000F021084202D09920DAF7A0F96878401E1C +:10A6B0006870C0B2002801D1DAF7FFF90420DEF794 +:10A6C000F7FD00280BD00420DEF7FEFD012200215B +:10A6D0000320D8F7ACF8D6491020E5F7BBFF207867 +:10A6E000411E2170002802D19820DAF77FF92878DE +:10A6F000012804D16868002801D0DAF7DAF928784F +:10A70000401E287031BD38B5CD4C2078401C2070DB +:10A71000CC4D2878401C2870DBF713F86878F021BE +:10A72000084202D09920DAF761F9DAF7CCF96878B3 +:10A73000401C6870D9F758FE6878F021084202D0B2 +:10A740009920DAF753F96878401E6870C0B2002883 +:10A7500001D1DAF7B2F94FF40060DEF7A9FD002865 +:10A7600007D04FF40060DEF7AFFDB1492020E5F7D8 +:10A7700071FF2078411E2170002802D19820DAF75D +:10A7800035F92878012804D16868002801D0DAF763 +:10A7900090F92878401E287031BD70B5A84C2078FB +:10A7A000401C2070A74D2878401C2870DAF7C9FF9C +:10A7B0006878F021084202D09920DAF717F9DAF721 +:10A7C00082F96878401C6870D9F70EFE6878F0212D +:10A7D000084202D09920DAF709F96878401E6870BB +:10A7E000C0B2002801D1DAF768F94FF48040DEF7F3 +:10A7F000E1FC00281DD08E4EEBF738FE00280CD06F +:10A800000020EBF73DFEE0F723F8C06FD7F7A6FD79 +:10A8100031460620E5F71EFF03E031460220E5F74A +:10A8200019FF4FF48040DEF7DAFC4FF48000DEF7CA +:10A830004BFD2078411E2170002802D19820DAF7C4 +:10A84000D5F82878012804D16868002801D0DAF703 +:10A8500030F92878401E287070BD38B5784C2078C3 +:10A86000401C2070774D2878401C2870DAF769FF6B +:10A870006878F021084202D09920DAF7B7F8DAF7C1 +:10A8800022F96878401C6870D9F7AEFD6878F0212D +:10A89000084202D09920DAF7A9F86878401E68705B +:10A8A000C0B2002801D1DAF708F94FF48050DEF782 +:10A8B00081FC00280BD05E494020E5F7CBFE4FF429 +:10A8C0008050DEF78CFC4FF40030DEF7FDFC207882 +:10A8D000411E2170002802D19820DAF787F82878E5 +:10A8E000012804D16868002801D0DAF7E2F8287856 +:10A8F000401E287031BDF0B585B0514C2078401C09 +:10A900002070504D2878401C2870DAF71AFF02207A +:10A91000DDF7E0FE002862D000210220DDF7B7FE5F +:10A920000220DDF7DFFE0020DDF71AFE00A900207F +:10A93000DEF7FDFA0120DEF737FA01214FF480201F +:10A94000DDF763FE0F20DEF7DFFB06461020DEF7A3 +:10A95000DBFB07460120DDF755FE0020DDF752FE48 +:10A9600031460F20DEF7C3FB39461020DEF7BFFB70 +:10A9700000214FF48020DDF748FE0120DDF7E0FDE7 +:10A9800001214FF08050DDF74BFE4FF48070DDF772 +:10A9900023FE3F20029040F2FF1003900020019020 +:10A9A00001A8DEF70BFA00A90020DEF771FA0120FA +:10A9B000DDF725FEDEF74BFA0320DEF756FB4FF4FA +:10A9C0008040DEF70CFC4FF48000DEF77DFC0121B7 +:10A9D0004FF48040DEF7C9FB0220DDF783FE2078CC +:10A9E000411E2170002802D19820D9F7FFFF287856 +:10A9F000012804D16868002801D0DAF75AF82878CD +:10AA0000401E287005B0F0BD0CED00E00400FA0512 +:10AA100000080020106402400030014018A400200B +:10AA200080841E008864024020000010FCA30020E7 +:10AA30008C90002058240120404B4C000004024020 +:10AA40001A29012070790020047A002000000240B9 +:10AA500054785265747279005478444D41202564CD +:10AA600020256420256400005278526574727900B4 +:10AA70005278444D4120256420256420256400003F +:10AA80005075744D61696C00524541445900000095 +:10AA9000455854493000000038B504000D001348F3 +:10AAA0000078401C1149087011480078002802D035 +:10AAB000A120D9F79BFFDAF71FFE607E662802D03F +:10AAC0008220D9F793FFD9F7FEFF05E0402120004F +:10AAD000EBF7DCFCD9F7F7FFE0680028F6D0290097 +:10AAE0002000EBF71FFDDAF748FE31BD707900203A +:10AAF0001B29012038B50C460E4D2968C90706D51B +:10AB000029684908490029602968C907FCD400223E +:10AB100001462846DEF7EAF807492846DEF703F93A +:10AB2000214628464160C04601212846BDE8344000 +:10AB3000DEF7D1B8886402400008002038B50C4622 +:10AB40000E4D2968C90706D52968490849002960BA +:10AB50002968C907FCD4002201462846DEF7C6F85A +:10AB600007492846DEF7DFF8214628464160C046FF +:10AB700001212846BDE83440DEF7ADB8106402403C +:10AB80002000001070B504000D000126607E6628CC +:10AB900002D08220D9F72AFFDAF786FD1148007823 +:10ABA000401C10490870D9F78EFFE068216988427F +:10ABB00004D229002000EBF78BFC002609484078DE +:10ABC000F021084202D09920D9F710FF05484078BB +:10ABD000002801D1D9F771FFDAF7CFFD3000C0B2FC +:10ABE00070BD00BF7079002030B40168DFF86C28B8 +:10ABF00011614368536184689461C068D061012524 +:10AC000095620825D5628B4201DA13615161A04239 +:10AC100001DA9061D4614FF0FF30106300201073AF +:10AC20001062506230BC704710B5DFF830084FF04A +:10AC3000FF3101630021017301624162416381635D +:10AC4000DFF820484FF496622046D7F707FB4FF411 +:10AC50009662002104F59660D7F700FB4FF461720D +:10AC6000002104F6E440D7F7F9FA4FF461720021AD +:10AC700004F51660BDE81040D7F7F0BA70B52DEDB9 +:10AC80000A8BB0EE618AF0EE428AB0EE629A00243E +:10AC9000F0EE609AB5EE400AF1EE10FA0AD1F5EE48 +:10ACA000409AF1EE10FA05D1B5EE401AF1EE10FA25 +:10ACB00000F02B81DFF8A45785ED000AC5ED019A5D +:10ACC000B0EE41AA85ED02AADFF89C67B0EE480A13 +:10ACD00010EE100ADDF7BEFB21F000412246DFF83E +:10ACE0008C37D8F7F9F802D21046306007E0B0EEA2 +:10ACF000480ADFED880A20EE200A86ED000AF0EE11 +:10AD000068AA1AEE900ADDF7A5FB21F00041224661 +:10AD1000DFF85837D8F7E0F802D21046706005E047 +:10AD20009FED7C0A2AEE800A86ED010A19EE100AD0 +:10AD3000DDF790FB21F000412246DFF83037D8F7ED +:10AD4000CBF802D21046B06005E09FED720A29EE02 +:10AD5000000A86ED020A95ED00BA2BEE0B0A09EE09 +:10AD6000A90A0AEE0A0A10EE100ADDF773FB41EC9D +:10AD7000100BD8F77DFA51EC100BDDF793FB0AEEC0 +:10AD8000900A9FED65CB8BEE2A0A10EE100ADDF7D4 +:10AD900061FB41EC100B00F013FC53EC102B51EC59 +:10ADA0001C0BD7F7BBFFDDF77DFB08EE100A89EE21 +:10ADB000AA0A10EE100ADDF74DFB41EC100B00F073 +:10ADC000FFFB53EC102B51EC1C0BD7F7A7FFDDF763 +:10ADD00069FB08EE900A8AEE2A0A10EE100ADDF7E7 +:10ADE00039FB41EC100B00F0EBFB53EC102B51EC5A +:10ADF0001C0BD7F793FFDDF755FB0AEE100A19EE8F +:10AE0000900ADDF727FB41EC110BB0EE419AF0EE12 +:10AE1000619AB1EE4B0A10EE100ADDF71BFB41EC14 +:10AE2000100BB0EE491AF0EE691A00F041FC53EC39 +:10AE3000102B4FF00050DFF83816D7F76FFFDDF713 +:10AE400031FB09EE100AF0EE491AB0EE4A1AF0EEA4 +:10AE5000680AB0EE480A00F037FAF0EE6A1A95EC8C +:10AE6000030A00F04AFA96EC030A00F060FA2E6B2F +:10AE70003146012000F072FADFF8E80500EB8600A9 +:10AE800000F6106080ED000A95ED040AB8EEC00AE5 +:10AE9000B4EE40AAF1EE10FA22DB95ED050AB8EE09 +:10AEA000C00AB4EE4A0AF1EE10FA19DB95ED060A73 +:10AEB000B8EEC00AB4EE409AF1EE10FA10DB95ED50 +:10AEC000070AB8EEC00AB4EE490AF1EE10FA07DB41 +:10AED0000FF2A850D7F766FA286A401C286201E0F2 +:10AEE00020462862286AA96A88420EDB204628622A +:10AEF00000F096F9012808D10FF29050D7F752FAD6 +:10AF000000F004F9012800D101242046BDEC0A8B91 +:10AF100070BD0000E12E654200000020DCA54C4021 +:10AF200070B52DED0A8B0024DFF8305585ED000A51 +:10AF3000B0EE60AA85ED01AAF0EE419AC5ED029A45 +:10AF400095ED00BA2BEE0B0A0AEE0A0A09EEA90AE1 +:10AF500010EE100ADDF77EFA41EC100BD8F788F9F5 +:10AF600051EC100BDDF79EFA09EE100A9FEDA5CB10 +:10AF70008BEE090A10EE100ADDF76CFA41EC100BAB +:10AF800000F01EFB53EC102B51EC1C0BD7F7C6FE48 +:10AF9000DDF788FA08EE100A8AEE090A10EE100AA8 +:10AFA000DDF758FA41EC100B00F00AFB53EC102BC4 +:10AFB00051EC1C0BD7F7B2FEDDF774FA08EE900ADD +:10AFC00089EE890A10EE100ADDF744FA41EC100B05 +:10AFD00000F0F6FA53EC102B51EC1C0BD7F79EFE49 +:10AFE000DDF760FA09EE900A1AEE100ADDF732FA80 +:10AFF00041EC110BB0EE41AAF0EE61AAB1EE4B0AA2 +:10B0000010EE100ADDF726FA41EC100BB0EE4A1AEA +:10B01000F0EE6A1A00F04CFB53EC102B4FF000508E +:10B02000DFF84C14D7F77AFEDDF73CFA0AEE100A87 +:10B03000F0EE4A1AB0EE691AF0EE680AB0EE480A6D +:10B0400000F042F9F0EE491A95EC030A00F055F9C8 +:10B050002E6B287B002801D1032E52DB31460120C4 +:10B0600000F07CF9DFF8FC0300EB860000F61060CE +:10B0700080ED000A9FED650AB4EE409AF1EE10FAF9 +:10B080003FD49FED630AB4EE409AF1EE10FA38DA3D +:10B0900028691E3800EE100AB8EEC00AF4EE409A95 +:10B0A000F1EE10FA20DB68691E3000EE100AB8EEEF +:10B0B000C00AB4EE690AF1EE10FA15DBA8691E3871 +:10B0C00000EE100AB8EEC00AB4EE40AAF1EE10FA93 +:10B0D0000ADBE8691E3000EE100AB8EEC00AB4EED2 +:10B0E0004A0AF1EE10FA03DA686A401C686201E06D +:10B0F00020466862686AE96A884202DB0224FFF738 +:10B1000093FD2046BDEC0A8B70BD0000F8B52DED17 +:10B11000028B84B0002400A821460A460B460EC0CC +:10B12000DFF83803017B012901D1182101E0016B0F +:10B13000491EDFF830C31AE000AD4FF4967707FBE5 +:10B1400003C707EB8607D7F8607900EE107ADFEDCA +:10B15000310A05EB830797ED001A00EE201A05EB84 +:10B16000830585ED001A5B1C032BE5DB521C8A422C +:10B170000ADA036B9B1A4B334B2593FBF5F54B26F1 +:10B1800006FB15362346EFE700AD95ED018A9FEDEE +:10B19000220AB4EE408AF1EE10FA16D50098DDF7D7 +:10B1A00059F921F000412246DFF8C832D7F794FE62 +:10B1B0000BD2A868DDF74EF921F000412246DFF8F6 +:10B1C000B432D7F789FE00D201249FED140ADDEDD9 +:10B1D000000A95ED021A70EEC10AF4EE400AF1EE93 +:10B1E00010FA00DB0124DDED000A70EEC80AF4EE6F +:10B1F000400AF1EE10FA00DB0124204604B0BDEC59 +:10B20000028BF2BD00000020DCA54C4041ABDB40CE +:10B2100074FA4B410AD7A33C00008CC20100704273 +:10B2200010B400208D49096B01F14B024B231C46E1 +:10B2300092FBF4F403FB14224A311C4691FBF4F414 +:10B2400003FB1411874B03EB8204D4F8604900EE32 +:10B25000104AB5EE400AF1EE10FA33D103EB820248 +:10B26000D2F88C4A00EE104AB5EE400AF1EE10FA20 +:10B2700028D1D2F8B82B00EE102AB5EE400AF1EE34 +:10B2800010FA1FD103EB8102D2F8602900EE102AD8 +:10B29000B5EE400AF1EE10FA14D103EB8101D1F8BA +:10B2A0008C2A00EE102AB5EE400AF1EE10FA09D110 +:10B2B000D1F8B81B00EE101AB5EE400AF1EE10FA04 +:10B2C00000D1012010BC70476448016B491C016328 +:10B2D0004B2903DB012202734B390163006B614987 +:10B2E00001EB800282ED000A01EB8000C0ED4B0A09 +:10B2F00080ED961AC0EDE11A70475848006B594925 +:10B3000001EB800202F2B04282ED000A01EB800004 +:10B3100000F2DC51B0EE602A81ED002A00F20871E3 +:10B3200081ED001A00F63400C0ED001A70474B485A +:10B33000006B4C4901EB800202F6601282ED000ABC +:10B3400001EB800000F68C21F0EE601AC1ED001ACE +:10B3500000F6B83080ED001A7047000030B49FED61 +:10B36000400ADFED3F0A00223E4D12E08B1A1BB26D +:10B37000002B00D54B331BB24FF4967404FB0054E2 +:10B3800004EB8303D3F8B03401EE103A30EE010A37 +:10B39000521C032AEADBB0EE081A80EE010A0022F2 +:10B3A00014E08B1A1BB2002B01D54B331BB24FF4A8 +:10B3B000967404FB005404EB8303D3F8B03401EE1D +:10B3C000103A31EE401A41EE010A521C032AE8DB22 +:10B3D000B0EE080A80EE800A30BC704738B52DED1B +:10B3E000048BF0EE608AB0EE419A1C4CA06B451CB9 +:10B3F000A56310EE100ADDF72DF821F000410122BF +:10B400001D4BE8F75DFC19D9B0EE680A10EE100A82 +:10B41000DDF720F821F000410122174BE8F750FC3E +:10B420000CD9B0EE490A10EE100ADDF713F821F03E +:10B4300000410122104BE8F743FC02D8606B401C2E +:10B440006063022D05D100206063FFF7EDFB022051 +:10B4500000E00020BDEC048B32BD0000642101201F +:10B46000000000007C910020942701200000E03FB4 +:10B47000DCA54CC0000034400000F03F23534C2DAD +:10B480003E2054696C7420696E00000023534C2DDB +:10B490003E206465746563742073746F70200000CF +:10B4A000D0B52DED048B82B041EC180B8DED008BE7 +:10B4B000DDE90023C3F30A5140F2FF72914213D039 +:10B4C000002904BF190350EA113011D051EC180BB8 +:10B4D00000220023D7F700FD3DBF81F0004141EC81 +:10B4E000180B0824002407E0190350EA1130EDD0AE +:10B4F00002B051EC180B60E051EC180B274A284BB6 +:10B50000D7F7EAFC1CD29FED239B51EC190B53ECAF +:10B51000182BD7F743FB06460F4653EC182B51EC7C +:10B52000190BD7F70DFD32463B46D7F7F7FBD7F798 +:10B53000A7FE41EC100B51EC180B53EC102B1EE046 +:10B540000122184BD7F7C8FC2ED29FED129B51EC6D +:10B55000190B53EC182BD7F721FB06460F4653EC7B +:10B56000182B51EC190BD7F7EBFC32463B46D7F7BB +:10B57000D5FBD7F785FE84F0020453EC182BD7F7E0 +:10B5800053FD02B02246BDEC048BBDE8D04000F074 +:10B59000B3B800BF000000000000F03FCE3B7F6664 +:10B5A0009EA0E63F0000F03FE8F728FB2121016064 +:10B5B00002B04FF0FF306FF00041BDEC048BD0BD06 +:10B5C00080B551EC100BFFF76BFF41EC100B01BD88 +:10B5D00038B50FB4DDE9020100F086F90546DDE972 +:10B5E000000100F081F9012DB8BF012830DA01987F +:10B5F000002807D5DDE9000181F00041CDE9000117 +:10B60000082400E000240398002807D5DDE90201A2 +:10B6100081F00041CDE9020184F00604DDE9020178 +:10B62000DDE90023D7F758FC04D2D7F7FDFC41EC45 +:10B63000100B29E0002D08D5DDE90001DDE902232A +:10B64000D7F7F2FC41EC100B20E09FED150B1DE04D +:10B65000022808BFDDE9000120D0022D08BFDDE986 +:10B6600002011BD085420CBF9FED0F0B9FED0C0B11 +:10B67000019900294CBF082400240399002948BFE0 +:10B6800084F00604012801D184F00204224605B0AA +:10B69000BDE8304051EC100B00F02EB805B030BDC5 +:10B6A0000000000000000000000000000000F03F6B +:10B6B00080B553EC112B51EC100BFFF789FF41ECD7 +:10B6C000100B01BD47797243616C3D256400000099 +:10B6D00041434343616C3D256400000044554D5097 +:10B6E000534554202564000050443A205365742586 +:10B6F0006420256400000000D0B514462DED048BB5 +:10B70000534A544BE8F7DCFA41EC180B1DD89FED77 +:10B71000529B53EC182B51EC190BD7F7FFFA002270 +:10B720004F4BD7F70DFC06460F4653EC182B51EC48 +:10B73000190BD7F705FC02460B4630463946D7F7BA +:10B7400073FC41EC180B44F0010451EC180B00227F +:10B75000444BD7F7C1FB05D301224FF07953E8F7EB +:10B76000AFFA51D853EC182BD7F7D8FA41EC190B94 +:10B7700053EC182BD7F7D2FA06460F4653EC192B89 +:10B7800039483A49D7F7CAFA394A3A4BD7F7D8FB7A +:10B7900053EC192BD7F7C2FA374A384BD7F7D0FBFF +:10B7A00032463B46D7F7BAFA53EC182BD7F7C8FB0B +:10B7B00006460F4653EC192B31483249D7F7AEFAFB +:10B7C000314A324BD7F7BCFB53EC192BD7F7A6FA0B +:10B7D0002F4A304BD7F7B4FB53EC192BD7F79EFA0F +:10B7E0002D4A2E4BD7F7ACFB53EC192BD7F796FA13 +:10B7F0002B4B0022D7F7A4FB02460B4630463946B6 +:10B80000D7F712FC41EC180BA00705D551EC180B2B +:10B8100081F0004141EC180B14F007020BD00FF23D +:10B82000880303EBC20251EC180B53681268D7F778 +:10B8300087FB41EC180B200705D551EC180B81F064 +:10B84000004141EC180B51EC180BBDEC048BD0BD42 +:10B8500057CD9E5E1426D13FAA4C58E87AB6FB3FDE +:10B860000000F0BF000040BE845D57134B57B03F4F +:10B87000B2934C19ED5EE43FBEDE02B90240F83FE0 +:10B88000DE39028FC7C0743F8AAB1283000CC83FF9 +:10B8900024D7E508B6D8F03F0F34580E5895FD3F31 +:10B8A0000000F03F00000000000000000000000069 +:10B8B00066732D3852C1E03F182D4454FB21F93FE7 +:10B8C00066732D3852C1F03F182D4454FB21F93FC7 +:10B8D00066732D3852C10040182D4454FB21094095 +:10B8E0003FD038C6A6F1044003B4DDE90023C3F31A +:10B8F0000A5140F2FF72914206D001B10CE01903E7 +:10B9000050EA113006D00BE0190350EA113014BF91 +:10B910000220012002B070474FF0FF3002B07047A4 +:10B920006FF0010002B0704710B5DFF8D845206213 +:10B930000C220021201DD6F791FC04F12400206187 +:10B9400004F13C00606104F15400A06104F16C005A +:10B95000E06100202070FF206070A07010BD00002A +:10B960002DE9F0472DED068B86B00C464FF0000A0E +:10B97000DFF89055016869604168A9608068E860F7 +:10B98000D04640460190049003900290052205F1B4 +:10B990000C01286900F047FA052205F108016869E1 +:10B9A00000F041FA0522291DA86900F03CFA0523A0 +:10B9B00001AA0321286900F04BFAB0EE408A052362 +:10B9C00004AA0321686900F043FAF0EE408A0523D7 +:10B9D00003AA0321A86900F03BFAB0EE409A0522C1 +:10B9E0000321286900F070FAF0EE080AC0EE209AF0 +:10B9F00095ED02AAD5ED01AAF5EE40AAF1EE10FAF6 +:10BA00000FD1B5EE40AAF1EE10FA0AD195ED030A76 +:10BA1000B5EE400AF1EE10FA03D100F000FA4FF053 +:10BA20000108564695F8019095ED030A6AEEAA0AB8 +:10BA30004AEE0A0A40EE000A10EE900ADCF70AFD10 +:10BA400041EC100BD7F714FC51EC100BDCF72AFD7E +:10BA50000090052200A9E86900F0E5F99DED000AD3 +:10BA6000DFEDA30AB4EE600AF1EE10FA00F1858072 +:10BA7000DFEDA00AB4EE600AF1EE10FA7DDA0523DC +:10BA800002AA0321E86900F0E3F9F0EE0C0AB4EE33 +:10BA9000600AF1EE10FA70D59FED970AB4EE408A75 +:10BAA000F1EE10FA69D59FED950AF4EE409AF1EEA9 +:10BAB00010FA10D59FED920AF4EE409AF1EE10FACA +:10BAC00009DB6878FF2858D0FF2068704FF0FF30FE +:10BAD00020700120C3E019EE900ADCF7BBFC21F0D6 +:10BAE00000413246DFF82034D7F7F6F911D2B0EE34 +:10BAF000000AF4EE408AF1EE10FA17D4F4EE408A10 +:10BB0000F1EE10FA39DAB4EE409AF1EE10FA0EDBEB +:10BB100033E0052301AA1946286900F099F9F7EEE8 +:10BB2000000AB4EE600AF1EE10FA26D5B04695EDA3 +:10BB3000030ADDED000A80EE200A10EE100ADCF7A1 +:10BB400089FC41EC100BFFF73BFD53EC102B4FF041 +:10BB50000040DFF8B813D7F7E1F841EC100B00F024 +:10BB600019FA51EC100BD7F703FC0746B8F1000F98 +:10BB700050D1E9F739FD3D2803DB00F050F930469C +:10BB80006DE0A868DCF766FC41EC110BB0EE418A71 +:10BB9000F0EE618A95ED010AB1EE400A10EE100A4E +:10BBA000DCF758FC41EC100BB0EE481AF0EE681AC6 +:10BBB000FFF77EFD53EC102B4FF00040D449D7F730 +:10BBC000ADF841EC100B00F0E5F951EC100BD7F794 +:10BBD000CFFB060001D506F5B47606F12D005A21FB +:10BBE00090FBF1F8B8F1040F00D1D046384600F0D0 +:10BBF0003BF8002806D03A463146404600F039F876 +:10BC0000002802D100F00BF904E0A878404501D0EB +:10BC100085F80280A878484502D1B9F1FF0F1DD1FF +:10BC200095F8201011F0060F01D0012604E03A46E5 +:10BC3000314600F067F806463846E9F7D5FC3D285E +:10BC40000CDA002E0AD0A8786978814206D0687094 +:10BC500020704FF0010AFF2800D02870504606B02F +:10BC6000BDEC068BBDE8F0873C3079288041C00FE1 +:10BC7000704718B4A34C237894F8204014F0060FB2 +:10BC800001D018BC3EE02FD4984208D05A1C541062 +:10BC900002EB9474A410A2EB840290420ED15A22BB +:10BCA0004243283A002807D1B1F59D7F06DD02F511 +:10BCB000B472914202DA15E0914213DB984208D047 +:10BCC000DA1C531002EB93739B10A2EB8302904299 +:10BCD0000AD15A2242432832002801D12E2903DA00 +:10BCE0008A4201DA002000E0012012BC7047000007 +:10BCF000DD0CFB40A7493C416766E63F3E1B3041F7 +:10BD0000D7B409412DE9F04391B004460D46914660 +:10BD10007C4E96F8008000274846E9F765FC00282D +:10BD200004D44846E9F760FC1E2822DB4846E9F7C0 +:10BD30005BFC1E2806DB4846E9F756FC282801DA9A +:10BD4000012716E04846E9F74FFC282806DB48465D +:10BD5000E9F74AFC322801DA02270AE04846E9F707 +:10BD600043FC32280ADB4846E9F73EFC3D2805DA69 +:10BD70000327B8F1000F45D4002C01D5002042E084 +:10BD8000444509D008F10100411000EB9171891080 +:10BD9000A0EB8100844217D100A80FF27811402255 +:10BDA000D6F7B0FE3801002C00A908D141588D42C9 +:10BDB0000ADA00A940184068A84205DA2BE04018CA +:10BDC00050F82400854226DB444509D008F10300E1 +:10BDD000411000EB91718910A0EB8100844211D1D8 +:10BDE00000A80FF270114022D6F78CFE3801002C0B +:10BDF00000A90BD14158A94204DA00A94018C06833 +:10BE0000854208DB012011B0BDE8F083401850F8EE +:10BE10002400A842F6DAFF20B0700020F3E739488A +:10BE2000FF21817070470388934201D30023038070 +:10BE300003885B1C03809BB2934201D300220280E3 +:10BE4000028800EB82000968416001207047000011 +:10BE50002DE9F8432DED028B04460D4616461F468C +:10BE60009FED278A4FF00008B4F9009000EE105AB9 +:10BE7000F8EEC08A3A4600F027F880EE280A86EDF0 +:10BE8000000A05E0A7F101090FFA89F908F1010894 +:10BE90000FFA88F8A84511DA04EB890090ED010A41 +:10BEA000D6ED000A30EE600A00EE008AB9F1010F0B +:10BEB000E8DBA9F101090FFA89F9E7E788EE280A1A +:10BEC000BDEC028BBDE8F18330B49FED0D0A002379 +:10BED000B0F900400EE024B2250006D400EB850541 +:10BEE000D5ED010A30EE200A641E24B2002C00D5E4 +:10BEF000541E5B1C1BB28B42EDDB30BC7047000054 +:10BF0000000000000013012000001040DCA54C40A0 +:10BF1000DCA54CC04A0100003C0000009600000077 +:10BF2000F00000004F010000410000009B000000F5 +:10BF3000F50000005401000046000000A0000000D1 +:10BF4000FA0000005E01000050000000AA0000009E +:10BF5000040100001E00000078000000D200000074 +:10BF60002C0100001900000073000000CD0000004B +:10BF700027010000140000006E000000C80000004F +:10BF8000220100000A00000064000000BE00000062 +:10BF90001801000000B583B001218DED000B00A851 +:10BFA000FDF7CAFF401E012811D9002100A8FDF7A6 +:10BFB000C3FF60B10198DDE90023002847BF0020DE +:10BFC000054900200549D6F7BBFFCDE900019DEDED +:10BFD000000B03B000BD00000000F0BF0000F03F08 +:10BFE0002DE9F0412DED048B8CB006460F469046AE +:10BFF00000A80FF2BC513022D6F784FDDFF864456B +:10C000000A20206207206062A0620520E062DFF85B +:10C010005805DFF85815CDE9000100A84FF033327C +:10C02000DFF84C35C0E90223DFF83C25DFF8443562 +:10C03000C0E904234FF03332DFF83C35C0E9062372 +:10C04000DFF83835C0E90823DFF83435C0E90A23C2 +:10C05000DFF830550A2129653168142291FBF2F18D +:10C06000E965D8F80010022901D1052123E03968DB +:10C07000102918D0B1F5807F06D0B1F5806F08D0B7 +:10C08000B1F5006F0AD012E04FF4807121630021F6 +:10C0900011E04FF48061216302210CE04FF4006154 +:10C0A0002163032107E010212163042103E04FF401 +:10C0B00000712163012100EBC100D0E90023DFF80A +:10C0C000C804DFF8C814D6F729FE41EC180B53EC6E +:10C0D000182B0020DFF8B814D6F720FE41EC100B27 +:10C0E00085ED0A0B85ED080B53EC102BDFF8A4044B +:10C0F000DFF8A414D6F712FEC5E90C0120220021B6 +:10C100002046D6F7ABF89FED319B206AD6F700FFAB +:10C1100053EC192BD6F702FE53EC182BD6F7FEFD85 +:10C12000C4E90001606AD6F7F3FE53EC192BD6F789 +:10C13000F5FD53EC182BD6F7F1FDC4E90201A06A16 +:10C14000D6F7E6FE53EC192BD6F7E8FD53EC182B87 +:10C15000D6F7E4FDC4E90401E06AD6F7D9FE53EC52 +:10C16000192BD6F7DBFD53EC182BD6F7D7FDC4E916 +:10C1700006010020A86501206866A86604F1340065 +:10C1800028660020287068650146C5E90E019FED0C +:10C19000110B85ED100B85ED120B0CB0BDEC048B73 +:10C1A000BDE8F081DFF8DC030121416681669FED87 +:10C1B000090B80ED100B80ED120B00210170416521 +:10C1C0000A460B46C0E90E2370470000000000003D +:10C1D0000000E03F2D431CEBE2361A3F2DE9F84FFB +:10C1E0002DED068B8AB005464FF000089FEDDB9BD6 +:10C1F000B0EE498AF0EE698A04A81821D8F7B8FB96 +:10C20000C1468DED010AF0EE601AF1EE611ACDED36 +:10C21000021AB1EE410A8DED030ADA4C1E2201A981 +:10C22000206EF5F74EFC2868022802D1022000900B +:10C2300001E003200090206E616E00290CD00028E0 +:10C2400000F085810088216D8842C0F280814046DF +:10C25000606684ED0E9B7AE1A16E002939D01E2222 +:10C26000216D09B2F5F756FC94ED149AF8EEC90A5F +:10C2700080EE200A10EE100ADCF7ECF8C4E90201A7 +:10C280001E2219EE101A09B2206EF5F761FC94ED2A +:10C29000149AF8EEC90A80EE200A10EE100ADCF7B4 +:10C2A000D9F8C4E904011E2219EE101A09B2206E51 +:10C2B000F5F76CFCD4ED140AF8EEE00A80EE200AE3 +:10C2C00010EE100ADCF7C6F8C4E906014046A06685 +:10C2D00045E01E224146F5F70DFC05461E22216D64 +:10C2E00009B2206EF5F706FC064694ED140AB8EE86 +:10C2F000C09A95ED000AD6ED000A30EE600A80EE95 +:10C30000090A10EE100ADCF7A5F8D4E90223D6F7E3 +:10C3100017FEC4E9020195ED010AD6ED010A30EEDF +:10C32000600A80EE090A10EE100ADCF793F8D4E9EF +:10C330000423D6F705FEC4E9040195ED020AD6ED03 +:10C34000020A30EE600A80EE090A10EE100ADCF7ED +:10C3500081F8D4E90623D6F7F3FDC4E906011822D3 +:10C36000414604A8D5F77AFF454604AE40E01E22B8 +:10C37000294609B2206EF5F7BDFB07463868DCF7A1 +:10C3800069F8D4E90223D6F709FC41EC100B53EC11 +:10C39000102BD6F7C3FCDDE90423D6F7D1FDCDE998 +:10C3A00004017868DCF756F8D4E90423D6F7F6FBE5 +:10C3B00041EC100B53EC102BD6F7B0FCD6E902235E +:10C3C000D6F7BEFDC6E90201B868DCF743F8D4E948 +:10C3D0000623D6F7E3FB41EC100B53EC102BD6F7FA +:10C3E0009DFCD6E90423D6F7ABFDC6E904016D1C1C +:10C3F000206D8542BBDBD6F78BFD41EC190BDDE9E7 +:10C40000040153EC192BD6F70FFECDE90401D6E950 +:10C41000020153EC192BD6F707FE41EC1A0B86EDFF +:10C4200002ABD6E9040153EC192BD6F7FDFD41EC24 +:10C43000190B86ED049BDDE9040153EC1A2BD6F7AA +:10C440007FFD564A564BD6F747FD07D294ED100BA9 +:10C450008DED040B94ED120B86ED020B9DED040B9C +:10C4600084ED100B96ED02AB84ED12ABD4E90E0116 +:10C470004FF066324B4BD6F751FC82468B46DDE9D6 +:10C48000042351EC1A0BD6F75BFD02460B4651EC28 +:10C49000190BD6F7C9FD344A434BD6F73FFC024689 +:10C4A0000B4650465946D6F74BFD41EC100B84ED38 +:10C4B0000E0B01223D4BE7F703FC06D8904620788F +:10C4C000012802D1606D401C60654D460FE006EB0F +:10C4D000C50090ED009B51EC180B53EC192BD6F7CF +:10C4E000FBFC03D2B0EE498AF0EE698A6D1C00981D +:10C4F0008542ECDBD4E9080153EC182BE7F7E0FBAD +:10C5000002D9606D10280FDBE06DA16D884204DA5E +:10C510004846207060654FF001090020A06594ED49 +:10C520000A0B84ED080B12E0B8F1000F0FD1A06DDB +:10C53000E16D814209DA01212170494661654FF0C0 +:10C54000020994ED0C0B84ED080B401CA0654846D5 +:10C550000AB0BDEC068BBDE8F28F00BF0000000002 +:10C5600000000000607400209A9999999999C93F38 +:10C570003333D33F9999E93F3333F33F33330340A8 +:10C580003333E33FC07700201F85EB51B89E234033 +:10C59000000014407B14AE47E17A843F2E431CEB2D +:10C5A000E2362A3F6666EE3F9999A93F0000344083 +:10C5B0009A9999999999C93F333333333333E33F88 +:10C5C0009A9999999999E93F333333333333F33F48 +:10C5D0003333333333330340333333333333E33F92 +:10C5E0000FB400B587B0272200210846DBF736FDDF +:10C5F000022805D10FF2F430D5F7D4FE02202AE04C +:10C60000272201210020DBF729FD022805D10FF2A6 +:10C61000E830D5F7C7FE02201DE0BDF922000090EA +:10C6200000A8BDF924104160BDF926108160BDF954 +:10C63000280003909DF82A0004909DF82B00059097 +:10C64000DFF894030121417000218170C17000A8BE +:10C65000FEF7CAFA012007B05DF814FB10B58AB0E6 +:10C66000272200210120DBF7F9FC032805D10FF276 +:10C670009830D5F797FE032039E02722012108469C +:10C68000DBF7ECFC022805D10FF26C30D5F78AFEFF +:10C6900002202CE0D04C94F90300012823D1002083 +:10C6A000A07000F04AFA00A82421D8F761F901200F +:10C6B0008DF800002A2001900A208DF80800002043 +:10C6C000ADF822008DF80900ADF80A008DF80C00D5 +:10C6D00000A8DBF797FD002805D10FF23C30D5F715 +:10C6E00061FE002003E00020A070E07001200AB08D +:10C6F00010BD30B59DB012A8DBF70FFD0025B64C7C +:10C7000094F90100012803D0042801D0052806D19E +:10C7100012A890EC030AFEF703FC05460AE0022883 +:10C7200008D115A8D0EC031A12A890EC030AFEF762 +:10C73000A5FA0546002D35D094F90100854230D088 +:10C740002570012000F028F9012D02D10120A070F0 +:10C7500027E0022D25D10020A07094F903000128C4 +:10C760001FD100F0EAF900A82421D8F701F901202F +:10C770008DF800002A2001900A208DF80800002082 +:10C78000ADF822008DF80900ADF80A008DF80C0014 +:10C7900000A8DBF737FD002800F0C2800020E07021 +:10C7A000A060657094F9030094F9021001292DD15D +:10C7B00000282BD1606890F89006002801D0002056 +:10C7C000B9E000A82421D8F7D3F800208DF80000A4 +:10C7D0002A2001900A208DF808000020ADF82200E0 +:10C7E0008DF80900ADF80A008DF80C0000A8DBF701 +:10C7F00009FD002805D10FF23820D5F7D3FD002020 +:10C8000099E00120E0700020A06093E0012840F052 +:10C810009180A068401CA06005283ADA15A890EC29 +:10C82000030AFEF7DBFD01282BD104206070207085 +:10C83000012000F0B1F80020A07094F90300012855 +:10C8400027D100F07AF900A82421D8F791F8012027 +:10C850008DF800002A2001900A208DF808000020A1 +:10C86000ADF822008DF80900ADF80A008DF80C0033 +:10C8700000A8DBF7C7FC002852D00020E070A060C1 +:10C8800007E0022805D1052060702070012000F02B +:10C8900083F800F04EF9012825D1032020700120F3 +:10C8A00000F07AF80020A07000F047F900A82421D9 +:10C8B000D8F75EF801208DF800002A2001900A20A8 +:10C8C0008DF808000020ADF822008DF80900ADF8C1 +:10C8D0000A008DF80C0000A8DBF794FC00281FD09C +:10C8E0000020E070A060A068FB2823DB09A82421B9 +:10C8F000D8F73EF801208DF824002A200A900A205B +:10C900008DF82C000020ADF846008DF82D00ADF814 +:10C910002E008DF8300009A8DBF774FC002805D143 +:10C920000FF2F400D5F73EFD002004E00020E07097 +:10C93000A070A06001201DB030BD80B5DBF78CFB7E +:10C940002549486000220A702449C0F8281600F2E0 +:10C95000286023494160234981600FF21101C160C1 +:10C960000FF23D010161012002BD00001A4840683C +:10C9700090F81906002801D10020704708E080B522 +:10C98000154800210170084600F006F8012002BD9C +:10C99000154890F90000704713490870704700006F +:10C9A00018B440F221120B7812FB030301241C700F +:10C9B0000B7812FB03035C700B7812FB0303272434 +:10C9C0009C700B7812FB0300034A1278C27008783F +:10C9D000401C087011BCD2E764270120E1C50208A1 +:10C9E0005DC60208F3C602081129012053532041F5 +:10C9F0004343206661696C005353204759524F20CE +:10CA00006661696C000000005353204143433220AB +:10CA10006661696C00000000444F55424C4554412A +:10CA20005020436C6F7365206661696C00000000E4 +:10CA3000444F55424C45544150204F70656E20661E +:10CA400061696C000FB480B52A2200210846DBF72B +:10CA500005FB022805D10FF23810D5F7A3FC022000 +:10CA600002E000F0A3F8012002BC5DF814FB80B5E1 +:10CA70002A2200210120DBF7F1FA032805D10FF269 +:10CA80001C10D5F78FFC032002BD012002BD10B59C +:10CA90008CB000A8DBF741FB00A890EC030A00F083 +:10CAA000ABF80446012C0ED100F080F83348047036 +:10CAB000416891F89016002901D0012141700120B0 +:10CAC00000F034F803E0022C01D100F06FF80120EF +:10CAD0000CB010BD80B5DBF7BFFA28494860284983 +:10CAE000C0F8A01600F2A060264941602649816086 +:10CAF0000FF20D01C1600FF24D010161012002BD75 +:10CB00001E48406890F89106002801D10020704727 +:10CB100008E080B5194800210170084600F006F8C9 +:10CB2000012002BD194890F90000704717490870AC +:10CB30007047124890F90100704710480021417079 +:10CB40007047000018B440F221120B7812FB030367 +:10CB500001241C700B7812FB03035C700B7812FB32 +:10CB600003032A249C700B7812FB0300034A1278FB +:10CB7000C2700878401C087011BCCAE72828012040 +:10CB800045CA02086FCA02088FCA0208FC280120A1 +:10CB9000445420414343206661696C004454204161 +:10CBA000434332206661696C00000000DFF8140422 +:10CBB0000021016041608160C1600161416181616A +:10CBC000C161016241628162C1620846024610E0B1 +:10CBD000DFF8F41341F8202001EB80018A620A6536 +:10CBE000DFF8E81341F8202001EB80018A620A6532 +:10CBF000401C0A28ECDB70472DE9F8432DED028B31 +:10CC00004FF00009DFF8BC4320680A2806DB0A3829 +:10CC100020606068002801D1012060602568DFF88D +:10CC2000A86306EB850080ED000A06EB8507F0EEB1 +:10CC3000601AC7ED0A1A87ED141A606828430DD1EF +:10CC4000691C2160DFF884034A4640F8212000EB8C +:10CC500081001146816201650846A6E1691E00D582 +:10CC60000A31DFF8680306EB850292ED000A06EB55 +:10CC70008102D2ED000A30EE600A00EB850282EDFF +:10CC8000000A00EB850806EB810197ED0A0AD1ED59 +:10CC90000A0A30EE600A88ED0A0A97ED140AD1ED0F +:10CCA000140A30EE600A88ED140AA168002952D1F6 +:10CCB00050F82500DBF7CEFB21F000414FF0333276 +:10CCC000DFF80C33D6F708F93AD2D8F82800DBF7AA +:10CCD000C1FB21F000414FF03332BD4BD6F7FCF8D9 +:10CCE0002ED2D8F85000DBF7B5FB21F000414A46C0 +:10CCF000B84BD6F7F1F823D206EB850090ED000A89 +:10CD0000DFEDAC0AB4EE600AF1EE10FA18DBB86A97 +:10CD1000DBF7A0FB21F000414A464FF08043D6F7F5 +:10CD2000DBF80DD2386DDBF795FB21F000414A4668 +:10CD3000A94BD6F7D1F803D2E068401CE06001E0CF +:10CD40004846E060E0680428C0F2FA800120A06054 +:10CD500048462062F4E0012940F0A380216A0129BD +:10CD600001DB491C21622169002924D150F82500EA +:10CD700000EE100ADFED900AB4EE600AF1EE10FA50 +:10CD800009DB4FF0FF302061A069401CA061206AE0 +:10CD9000401C206236E0DFED890AB4EE600AF1EE55 +:10CDA00010FA2FD501202061A069401CA061206AE3 +:10CDB000401C206226E0012911D100EB850090ED96 +:10CDC000000ADFED7D0AB4EE600AF1EE10FA19DB1D +:10CDD0004FF0FF302061A069401CA06112E011F10A +:10CDE000010F0FD100EB850090ED000ADFED730A13 +:10CDF000B4EE600AF1EE10FA04D501202061A069BA +:10CE0000401CA0616069002827D198ED140AF7EE54 +:10CE1000000AB4EE600AF1EE10FA0CDB4FF0FF30BE +:10CE20006061E069401CE061206A002840F0888071 +:10CE30000120206284E0DFED620AB4EE600AF1EEC8 +:10CE400010FA7DD501206061E069401CE061206A34 +:10CE5000002875D10120206272E001280FD198EDE1 +:10CE6000140AF7EE000AB4EE600AF1EE10FA67DB7E +:10CE70004FF0FF306061E069401CE06160E010F15C +:10CE8000010F5DD198ED140ADFED4D0AB4EE600A92 +:10CE9000F1EE10FA54D501206061E069401CE061B8 +:10CEA0004EE002294CD1216A481C206294ED090A07 +:10CEB00006EB8501D1ED000A30EE200A84ED090A67 +:10CEC000D4ED0A0A97ED0A1A70EE810AC4ED0A0A37 +:10CED00094ED0B1AD7ED141A31EE211A84ED0B1ACA +:10CEE0000A282DD1F2EE041A80EE210AC0EEA10A22 +:10CEF00081EE218AB2EE081AB4EE410AF1EE10FA80 +:10CF00001ED59FED2C1AB4EE410AF1EE10FA17DB94 +:10CF100010EE900ADBF79EFA21F000414A462F4BB3 +:10CF2000D5F7DAFF0CD218EE100ADBF793FA21F0EE +:10CF300000414A462A4BD5F7CFFF01D24FF00109F5 +:10CF4000216AB42923DAA069042802DAE269042AF2 +:10CF50001DDB03281BDB1F290ADB00202062A061E8 +:10CF6000E0610220A06000206062A062E06218E040 +:10CF70000FF27000D5F716FAA069042801DB801EB5 +:10CF8000A061E06904280CDB801EE06109E0B4299F +:10CF900007DB0020A060E06020616061A061E061CB +:10CFA00020622068401C20604846BDEC028BBDE832 +:10CFB000F28300000100A0409A99193F999919BF86 +:10CFC000FEFF7FBF1423012074160120EC16012000 +:10CFD0003333E33F0000F03F0000144000000840FE +:10CFE00000001840445450206661696C202564009C +:10CFF000CF490022CA630A6401F148024A6201F182 +:10D00000C4028A6201F5A072CA6201F5DE720A6387 +:10D0100001F50E724A6301F52D728A630B2802DA5C +:10D020001E2048647047152802DA192048647047AA +:10D03000432802DA142048647047C92802DA0F2016 +:10D04000486470470A20486470470000F8B52DED29 +:10D05000068B84B004460026B54DE86B00286CD1E1 +:10D0600085ED000AB0EE603A85ED013A85ED021AD1 +:10D07000B0EE610A85ED030AB0EE420A85ED050ABD +:10D08000B0EE620A85ED040A3046029001900090ED +:10D090001E222946E86A00F0DAF81E22291DA86A35 +:10D0A00000F0D5F81E2205F10801686A00F0CFF8FB +:10D0B0001E2205F10C01A86B00F0C9F81E2205F133 +:10D0C0001001686B00F0C3F81E2205F11401286BF3 +:10D0D00000F0BDF8696C286C81422ADA1E2300AA90 +:10D0E00009B2E86A00F0C8F8B0EE408A1E2301AA2F +:10D0F000696C09B2A86A00F0BFF8F0EE408A1E23FE +:10D1000002AA696C09B2686A00F0B6F8DFED860A17 +:10D11000B4EE608AF1EE10FA0BD5F4EE608AF1EE0F +:10D1200010FA06D5B4EE600AF1EE10FA01D501202E +:10D13000E863286C401C286484E0AE6B6F6C1E2290 +:10D14000394609B2304600F0D3F8F0EE408A1E228C +:10D15000394609B2304600F0F1F8B0EE409A1E228E +:10D16000394609B2304600F00EF9B81E00EE900ABA +:10D17000B8EEE08A78EEC90A30EEC00AC0EE088A3E +:10D18000C5ED068A6E6B1E22394609B2304600F0A4 +:10D19000AFF8B0EE409A1E22394609B2304600F090 +:10D1A000CDF8F0EE409A1E22394609B2304600F022 +:10D1B000EAF879EE690A30EEC00A80EE089A85ED49 +:10D1C000079A2E6B1E22394609B2304600F090F8BD +:10D1D000F0EE409A1E22394609B2304600F0AEF811 +:10D1E000B0EE40AA1E22394609B2304600F0CBF814 +:10D1F00079EECA0A30EEC00A80EE088A85ED088A08 +:10D2000018EE900ADBF726F94A4A4B4BD5F70CFF8C +:10D21000D6F7AEF8208019EE100ADBF71BF9454A65 +:10D22000454BD5F701FFD6F7A3F8608018EE100A3A +:10D23000DBF710F93F4A404BD5F7F6FED6F798F8E2 +:10D24000A0800126304604B0BDEC068BF2BD0388F9 +:10D25000934201D30023038003885B1C03809BB2AD +:10D26000934201D300220280028800EB8200096809 +:10D2700041600120704700002DE9F8432DED028B3D +:10D2800004460D4616461F469FED288A4FF00008BB +:10D29000B4F9009000EE105AF8EEC08A3A4600F059 +:10D2A00027F880EE280A86ED000A05E0A7F10109BB +:10D2B0000FFA89F908F101080FFA88F8A84511DA80 +:10D2C00004EB890090ED010AD6ED000A30EE600A09 +:10D2D00000EE008AB9F1010FE8DBA9F101090FFAAC +:10D2E00089F9E7E788EE280ABDEC028BBDE8F183F7 +:10D2F00030B49FED0E0A0023B0F900400EE024B2D6 +:10D30000250006D400EB8505D5ED010A30EE200A94 +:10D31000641E24B2002C00D5541E5B1C1BB28B4231 +:10D32000EDDB30BC704700006F12033B00000000D3 +:10D3300074EB002089AD84FA0A74313F2DE9F04185 +:10D3400004460D46164694ED010A0027B4F9008004 +:10D3500014E00FFA88F84046002807D404EB800058 +:10D36000D0ED010A00F03CF8A8F101080FFA88F8A6 +:10D37000B8F1000F01D5A6F101087F1C3FB2AF4202 +:10D38000E7DBBDE8F0812DE9F04104460D46164685 +:10D3900094ED010A0027B4F9008014E00FFA88F830 +:10D3A0004046002807D404EB8000D0ED010A00F0CD +:10D3B0000FF8A8F101080FFA88F8B8F1000F01D5AD +:10D3C000A6F101087F1C3FB2AF42E7DBBDE8F08168 +:10D3D000B4EE600AF1EE10FA01D4B0EE600A7047C4 +:10D3E000F4EE400AF1EE10FA01D4B0EE600A704794 +:10D3F0000020024609E0D04941F8202001EB8001DD +:10D40000C1F8F020C1F8E021401C3C28F3DBCB48F8 +:10D410001146016041608160704700002DE9F84FBE +:10D420002DED0A8B86B000208DF80800C34C2068D3 +:10D430003C2806DB3C3820606068002801D10120D0 +:10D4400060602568DFF8F09209EB850080ED000A46 +:10D4500009EB8506F0EE601AC6ED3C1A86ED781AE7 +:10D4600059F82500DAF7F6FF21F000410022B64B0B +:10D47000D5F732FD0AD359F82500DAF7EBFF21F092 +:10D4800000410122AE4BE6F71BFC02D8002049F810 +:10D490002500D6F8F000DAF7DDFF21F00041002288 +:10D4A000A84BD5F719FD0AD3D6F8F000DAF7D2FF6A +:10D4B00021F000410122A54BE6F702FC02D8002032 +:10D4C000C6F8F000D6F8E001DAF7C4FF21F0004119 +:10D4D00000229D4BD5F700FD0AD3D6F8E001DAF71C +:10D4E000B9FF21F000410122984BE6F7E9FB02D891 +:10D4F0000020C6F8E00159F82500DAF7ABFF21F06B +:10D50000004100221346D5F739FB19D1D6F8F000B7 +:10D51000DAF7A0FF21F0004100221346D5F72EFBD9 +:10D520000ED1D6F8E001DAF795FF21F00041002294 +:10D530001346D5F723FB03D1A068401CA06001E08F +:10D540001046A060A0680528C0F2ED809FED808A9B +:10D550009FED7F9ADFED7E8A164610460490039079 +:10D56000DFED7B9A9FED7ABA00E0761C372E80F2D1 +:10D5700089806768002F01D1B24602E0701900F17E +:10D58000010ABAF13C0F01DBAAF13C0A59F82A0062 +:10D5900000EE100AF4EE409AF1EE10FA02D5F0EE29 +:10D5A000409A049609EB8A0898ED780AB4EE40BADE +:10D5B000F1EE10FA02D5B0EE40BA03969FED65ABDE +:10D5C0009FED66CB18EE100ADAF744FFCDE90001B3 +:10D5D00059F82A00DAF73EFF53EC1C2BD5F79EFBD7 +:10D5E00053EC1A2BD5F79AFB00225E4BD5F71CFDA6 +:10D5F000DDE90023D5F7A4FCDAF754FF08EE100AA2 +:10D6000019EE100ADAF726FF82468B46D8F8F000AA +:10D61000DAF720FF53EC1C2BD5F780FB53EC1A2BC9 +:10D62000D5F77CFB00224F4BD5F7FEFC52465B46FC +:10D63000D5F786FCDAF736FF09EE100A18EE900AE5 +:10D64000DAF708FF82468B46D8F8E001DAF702FFE6 +:10D6500053EC1C2BD5F762FB53EC1A2BD5F75EFB72 +:10D660000022404BD5F7E0FC52465B46D5F768FCFC +:10D67000DAF718FF08EE900A002F7FF476AFAE427B +:10D680007FF473AF18EE100ADAF7E4FE41EC1A0BE0 +:10D6900021F000410122374BE6F712FB43D851EC51 +:10D6A0001A0B21F0004100222F4BD5F715FC3AD27E +:10D6B00019EE100ADAF7CEFE41EC190B21F0004109 +:10D6C00001222A4BE6F7FCFA2DD851EC190B21F078 +:10D6D00000410022264BD5F7FFFB24D218EE900A1A +:10D6E000DAF7B8FE41EC190B21F000410122214B81 +:10D6F000E6F7E6FA17D851EC190B21F000410022A9 +:10D700001D4BD5F7E9FB0ED203980499401AE7F7B1 +:10D710006BFF142807DAB5EE408AF1EE10FA02DD4D +:10D7200001208DF80800681C20609DF8080006B0F4 +:10D73000BDEC0A8BBDE8F28F7CF1002004270120AC +:10D74000000022400000E03F0000F03F00002440C5 +:10D75000000000000000000000003440E6C1631A31 +:10D76000DCA54C4000408F4000005E40000034408B +:10D7700000805B4000003E400040604070B52DEDF1 +:10D78000028B82B00C46154608EE103A9C4E0021E2 +:10D79000F1604FF47A7148433C2190FBF1F0D5F7EA +:10D7A000B7FB41EC100BFEF7F5FB51EC100BD5F776 +:10D7B000DFFD30617461B56106F12C00F06106F1A6 +:10D7C0003C00306206F14C007062B8EEC80ADFED32 +:10D7D0008A0A80EE200A86ED0A0A10EE100ADAF7AD +:10D7E00039FECDE90001B369726931690FF2182081 +:10D7F000D4F7D8FD02B0BDEC028B70BD38B52DED6D +:10D80000028B84B000247E4D016829604168696004 +:10D810008068A8602046029001900090032229466B +:10D82000E86900F07DF80322291D286A00F078F8E5 +:10D83000032205F10801686A00F072F895ED020A0A +:10D84000D5ED010A95ED001A21EE011A00EEA01A9D +:10D8500000EE001A11EE100ADAF7FCFD41EC100B95 +:10D86000D5F706FD51EC100BDAF71CFE00EE100A9E +:10D87000D5ED020A80EE800A10EE100ADAF7EAFD12 +:10D8800041EC100BFDF79CFE53EC102B4FF00040C9 +:10D890005C49D5F743FA41EC100BFEF77BFB51ECEA +:10D8A000100BD5F765FD696988422DDBA9698142B6 +:10D8B0002ADB032300AA1946E86900F045F8B0EE18 +:10D8C000408A032301AA1946286A00F03DF8F0EEC9 +:10D8D000408A032302AA1946686A00F035F8D5ED9C +:10D8E0000A0AB4EE608AF1EE10FA0DD5F4EE608A01 +:10D8F000F1EE10FA08D5B4EE600AF1EE10FA03D595 +:10D90000E868401CE86001E02046E860E8682969B2 +:10D91000884200DB0124204604B0BDEC028B32BDFE +:10D920000388934201D30023038003885B1C038098 +:10D930009BB2934201D300220280028800EB820056 +:10D9400009684160012070472DE9F8432DED028BF5 +:10D9500004460D4616461F469FED288A4FF00008E4 +:10D96000B4F9009000EE105AF8EEC08A3A4600F082 +:10D9700027F880EE280A86ED000A05E0A7F10109E4 +:10D980000FFA89F908F101080FFA88F8A84511DAA9 +:10D9900004EB890090ED010AD6ED000A30EE600A32 +:10D9A00000EE008AB9F1010FE8DBA9F101090FFAD5 +:10D9B00089F9E7E788EE280ABDEC028BBDE8F18320 +:10D9C00030B49FED0E0A0023B0F900400EE024B2FF +:10D9D000250006D400EB8505D5ED010A30EE200ABE +:10D9E000641E24B2002C00D5541E5B1C1BB28B425B +:10D9F000EDDB30BC7047000000401C46000000001A +:10DA0000881C0120DCA54C4053504120696E69748C +:10DA10003A2025642C2025642C2025642C202566A2 +:10DA2000000000000FB480B50FF23420D4F7BAFC28 +:10DA30008348002181700121C17001710021417171 +:10DA400081710170D4F72DFC007C000601D4012007 +:10DA500000E0012002BC5DF814FB80B50FF2082045 +:10DA6000D4F7A0FCD4F71DFC007C000616D5744842 +:10DA7000002181700121C17001710021417181710A +:10DA8000417801290AD1002141700E220A2101208A +:10DA9000DAF7E4FA032801D1032002BD012002BD18 +:10DAA00038B568488169497AC069407A4518D4F721 +:10DAB000F8FB007C000631D5614CA078002802D12B +:10DAC0000120A07032BD6078EDB2002D06D0012893 +:10DAD00024D10120E070002060701FE0002811D1E7 +:10DAE000E078012806D10E220A210120DAF7B6FAE1 +:10DAF0000020E0700E220A210020DAF7AFFA0120A0 +:10DB0000607032BD94F90000002802D0022803D0D2 +:10DB100004E000F005F801E000F034F8012032BD27 +:10DB200038B5474CE06890F968502079012809D150 +:10DB3000512D07DA00202071012000F07EF800202E +:10DB400000F06EF8B4F90820954217DBA079401C6C +:10DB5000A07140B2022813DB022020700020A071C7 +:10DB600029460FF20C10D4F71DFC782020810120EB +:10DB700000F063F8012000F053F801E00020A071EC +:10DB8000012032BD38B52E4CE06890F96850502D18 +:10DB900016DA6079401C607140B2022812DB002066 +:10DBA0002070012000F049F8002000F039F8002032 +:10DBB0006071502229460FF2C400D4F7F3FB01E054 +:10DBC00000206071012032BD10B50FF2BC00D4F707 +:10DBD000E9FB1B4CDAF740FA2061DCF739FEE06024 +:10DBE0000020207020691849C0F8401200F510701C +:10DBF00016494160164981600FF20D01C160154957 +:10DC00000161012010BD0000014600200C4A12698C +:10DC100092F83122002A02D0002900D109E0704791 +:10DC20000D49012802D101200870704700200870BA +:10DC300070470A4890F9000070470849087070471B +:10DC4000F07900200840002025DA02085BDA02089B +:10DC5000A1DA02087F830008FA280120F9280120B0 +:10DC6000537461727400000053746F700000000000 +:10DC7000436C6F7365202564202564004F70656ECA +:10DC80002025642025640000496E697400000000AE +:10DC9000834800210160416081607047F8B52DED37 +:10DCA0000C8BB0EE408AF0EE608AB0EE419A00270D +:10DCB000B0EE680A10EE100ADAF7CCFB41EC1A0B52 +:10DCC000B0EE480A10EE100ADAF7C4FB41EC1C0B68 +:10DCD000734E21F000413A46724BD5F7FDF818D249 +:10DCE00051EC1A0B21F00041D5F7F6F811D2B0EE45 +:10DCF000490A10EE100ADAF7ADFB21F000413A466E +:10DD0000684BD5F7E9F804D2104630607060B06017 +:10DD1000C3E09FED65BB9FED66DB3068DAF79AFBE9 +:10DD200004460D4653EC1C2B51EC1D0BD4F7F6FFAB +:10DD300053EC1B2BD4F7F2FF3A465F4BD5F774F93F +:10DD400022462B46D5F7FCF8DAF7ACFB09EE900A31 +:10DD5000C6ED009A7068DAF77DFB04460D4653EC79 +:10DD60001A2B51EC1D0BD4F7D9FF53EC1B2BD4F716 +:10DD7000D5FF3A46504BD5F757F922462B46D5F7F3 +:10DD8000DFF8DAF78FFB0AEE100A86ED01AAB06819 +:10DD9000DAF760FB04460D46B0EE490A10EE100AB1 +:10DDA000DAF758FB53EC1D2BD4F7B8FF53EC1B2BC1 +:10DDB000D4F7B4FF3A46404BD5F736F922462B4606 +:10DDC000D5F7BEF8DAF76EFB09EE100A86ED029A77 +:10DDD00019EE900ADAF73EFB21F0004141EC1B0BF3 +:10DDE0001AEE100ADAF736FB41EC180B21F000416D +:10DDF00041EC1C0B19EE100ADAF72CFB41EC1A0B64 +:10DE000053EC1B2B51EC1C0BD5F79AF853EC1A2B47 +:10DE100023F00043D5F794F8DAF744FB00EE100A3C +:10DE2000DFED260AB4EE600AF1EE10FA2EDB51ECBB +:10DE30001A0B21F000410122214BE5F741FF25D8C3 +:10DE4000BBEE090AF4EE409AF1EE10FA0BD551EC54 +:10DE5000180B21F0004153EC1A2B23F00043D5F7A7 +:10DE60003BF800D201279FED170AF4EE409AF1EE3D +:10DE700010FA0BDB51EC180B21F0004153EC1A2B7C +:10DE800023F00043D5F728F800D20227002F03D053 +:10DE9000002030607060B0603846BDEC0C8BF2BD85 +:10DEA0007C2701200000E03F0000000000004E4001 +:10DEB000E6C1631ADCA54C4000408F400100484297 +:10DEC000000044400100C84110B582B000208DF828 +:10DED0000000894C04F1100314220D2104F5067092 +:10DEE00000F00CF904F58A7314220D2104F50D706D +:10DEF00000F004F9E8F7B8FA002849D0D4F7D1F9CE +:10DF0000A060E0F7AFFFE1F769FCA06801780029A5 +:10DF100003D0217841F0010121700A21D4F72BFAB6 +:10DF2000A068D4F702FAA068C178002903D021784C +:10DF300041F0020121704179002903D0217841F09C +:10DF4000040121708179002903D0217841F0080172 +:10DF5000217021780F2902D15521817500E081754A +:10DF6000002201210846D4F762FCE2F797FA322139 +:10DF7000A068D4F7D5FBA068D4F79BFBD4F74BFC83 +:10DF8000D4F74FFCDCF764FC0021C0F8801016BD0C +:10DF9000002016BD80B5FFF797FF5749486001BDC7 +:10DFA00080B5072000F0F6F8FBE77FB5D6F759FB00 +:10DFB000002801D0D9F705F93E2000F0F5F8064613 +:10DFC000D8F7D2FA4C4C04F51475B00710D5606838 +:10DFD000D0F88000D4F7A2FCD8F71AFA04F10C01AB +:10DFE0002846D8F729FC04F10C012846D8F789FC0B +:10DFF000F0060AD50020D4F71CFC1020E2F79EF8AA +:10E0000004F10C012846D8F77CFCB0060CD504F1CD +:10E010000C012846D8F720FC0420E2F78FF804F121 +:10E020000C012846D8F76DFC700703D56068C06FF7 +:10E03000E1F7B6FA04F10C012846D9F78CF830075D +:10E040001FD4B9E7BDF80100001DDCF7D9FBCDF8FE +:10E05000090002220DF10301D6F74CFD02220DF159 +:10E060000101DDF80900801CD6F744FD04F10C0223 +:10E07000294600A8D9F75AF900A904F50D70E1F76F +:10E08000FBFA00A904F5067000F0D0F8002893D13F +:10E090009DF8030010F00300D4D00128F1D104F161 +:10E0A0000C02294600A8D9F773FABDF80100002830 +:10E0B000E7D0DDF809009DF80310490718D50421C1 +:10E0C000ADF803100121ADF8011002220DF103019A +:10E0D000D6F710FD02220DF10101DDF80900801CC8 +:10E0E000D6F708FD00A904F50D70E1F7C5FAC8E7F9 +:10E0F000DCF79EFBC5E70000E4A100202DE9F0411C +:10E1000004000D0016001F00D6F7DDFC1F48D0F8F4 +:10E11000008006E0A04502D1AC20D6F767FCD8F815 +:10E120000480B8F1000FF5D119484078F021084279 +:10E1300002D09920D6F75AFC15484078002801D122 +:10E14000D6F7BBFCD7F7B0FA1C2200212000D4F789 +:10E1500085F8A7602661257666206076D6F7B3FC41 +:10E160000A48006860600948046009484078F02166 +:10E17000084202D09920D6F739FC0548407800289B +:10E1800001D1D6F79AFCBDE8F0810000D428012027 +:10E190007079002010B50446D4F783F8072C01D11C +:10E1A000D4F7BCFA012010BD10B504001D4800785A +:10E1B000002802D0A120D6F719FCD7F79DFA1A48FB +:10E1C0000078401C18490870D6F77DFC1648806816 +:10E1D0004069204209D114488068846112488068EF +:10E1E000082101741048D6F758FC0F48806844692C +:10E1F0000D488068002141610B480078401E0A49A3 +:10E20000087009484078F021084202D09920D6F7DA +:10E21000EDFB05484078002801D1D6F74EFC2000E0 +:10E2200010BD00BF1B2901207079002038B5040003 +:10E230000D00607E662802D08220D6F7D7FBD7F784 +:10E2400033FAD6F740FCE06800280FD10E4840783A +:10E25000F021084202D09920D6F7C8FB0A4840783E +:10E26000002801D1D6F729FC01200BE006480078F0 +:10E27000401C0549087029002000E8F753F9D7F73A +:10E280007CFA002032BD00BF7079002038B50C4602 +:10E29000754D0C2200212846D3F7E0FF18220021FB +:10E2A00005F12400D3F7DAFF1422002105F10C0058 +:10E2B000D3F7D4FF0020E8632C840FF2C410D4F706 +:10E2C00071F8012032BD000070B5674C84ED000A82 +:10E2D000F0EE601AC4ED011A84ED021A0C25634EAB +:10E2E000E06B05FB006080EC030A1822002104F1BA +:10E2F0002400D3F7B3FF00201AE005FB00F18A19D0 +:10E30000D2ED000A30EE200A84ED090A891994ED55 +:10E310000A0AD1ED010A30EE200A84ED0A0A94EDD2 +:10E320000B0AD1ED020A30EE200A84ED0B0A401CE4 +:10E3300094ED090A6428E0DBDFED4A0A80EE200A4A +:10E3400084ED090AD4ED0A0A9FED461AC0EE810A4F +:10E35000C4ED0A0A94ED0B1ADFED421A81EE211A80 +:10E3600084ED0B1A002020E005FB00F18A19D2EDA4 +:10E37000001A71EEC01A01EEA12A84ED0C2A891947 +:10E38000D1ED011A71EEE01A94ED0D2A01EEA12AE9 +:10E3900084ED0D2AD1ED021A71EEC11A94ED0E2A08 +:10E3A00001EEA12A84ED0E2A401C94ED0C2A64286B +:10E3B000DADB9FED2C0A82EE000A84ED0C0AD4ED24 +:10E3C0000D0A9FED281AC0EE810AC4ED0D0A94EDE6 +:10E3D0000E1ADFED241A81EE211A84ED0E1AF7EEE3 +:10E3E000001AB4EE610AF1EE10FA2FD5B7EE000A6A +:10E3F000F4EE400AF1EE10FA28D5B4EE401AF1EE30 +:10E4000010FA23D56069401C606100EB40114800A0 +:10E410004EF65B2188421CD300206061208B411C9A +:10E42000218389B20FF26400D3F7BCFF208B218CCB +:10E4300088420ED3E06900280BD10FF26400D3F7B5 +:10E44000B1FF0120E0610020208302E00020606134 +:10E450002083E06B401CE063652801DB0020E06363 +:10E46000E06970BD0000C8422421012028D80020A6 +:10E4700080B50FF23C00D3F795FF012002BD0000EC +:10E4800023232320414D5F494E4954002323232059 +:10E49000414D202564202A20314D696E0000000086 +:10E4A00023232320414D5F41425F4454000000007C +:10E4B00023232320414D5F46494E000080B50FF2D3 +:10E4C0009010D3F76FFF5D4800214180017001BDBE +:10E4D0000FB438B59DF81240BDF813502A462146B6 +:10E4E0000FF27810D3F75EFF1E2200210846D9F7FD +:10E4F000B5FD022805D10FF28410D3F753FF022097 +:10E5000010E04E48406890F8B014002909D190F806 +:10E51000B104002805D1FFF7D1FF29462046FFF7B7 +:10E52000B5FE012032BC5DF814FB80B50FF25C1023 +:10E53000D3F738FFFFF79CFF40480021017001200E +:10E5400002BD30B58BB000A8D9F7E7FD00A890EC6C +:10E55000030AFFF7B9FE0446012C0ED1374D95F999 +:10E560000000002809D1012028700FF22C10D3F7E9 +:10E5700019FF6C80012000F02FF801200BB030BD96 +:10E5800080B50FF22810D3F70DFFD9F765FD2B49A1 +:10E59000486000224A802A49C0F8C01400F2C040F6 +:10E5A00028494160284981600FF20D01C1600FF2D6 +:10E5B00041010161012002BD2048406890F8B0147B +:10E5C000002905D190F8B104002801D1002070473E +:10E5D0001E4890F9000070471C490870704780B5CC +:10E5E0001648002141800846FFF7F6FF012002BDD2 +:10E5F00070B504460D46114E71880FF2BC00D3F77A +:10E60000D1FE40F22110297810FB014101220A704D +:10E61000297810FB01414A70297810FB01411E2224 +:10E620008A70297810FB01407188A0F803102878BF +:10E63000401C2870BDE87040D1E700002028012070 +:10E64000D1E402082BE5020843E50208FB2801207B +:10E6500023232320434720494E49540023232320CA +:10E6600043472053464420535452203A2025642CDB +:10E67000204455203A202564000000002323234332 +:10E6800047204641494C2041434300002323234374 +:10E69000472053544F5000002323232043475F411A +:10E6A000424E4F524D414C2044540000232323201E +:10E6B0004347204D490000002323232043472041A6 +:10E6C000504D5347203A2025640000000FB400B598 +:10E6D00091B00020019000900D220146D9F7BEFCB8 +:10E6E000022801D102204AE0754A01201060BDF8DD +:10E6F0004B0001909DF84A000090012803D14FF48F +:10E700008070009015E0022803D14FF40070009053 +:10E710000FE0032803D14FF48060009009E0042843 +:10E7200003D14FF40060009003E0052801D11020D0 +:10E73000009000A901A8FDF753FCAA208DF82E0037 +:10E740003C208DF82F0001208DF8300000208DF83E +:10E750000800032003900DF111000BA91822D4F733 +:10E76000C1F90A208DF810000020ADF82A0002A897 +:10E77000D9F748FD002801D1022000E0012011B0A6 +:10E780005DF814FB00B58FB0AA208DF802003C2084 +:10E790008DF8030001208DF804008DF81800032087 +:10E7A00007900DF1210000A91822D4F79BF90A2047 +:10E7B0008DF820000020ADF83A0006A8D9F722FD18 +:10E7C000002801D1032002E0FDF7ECFC01200FB08E +:10E7D00000BD30B597B000A8D9F79FFC0BA8F0F7A3 +:10E7E000D5FA374CBDF83A002071204600A991ECCB +:10E7F000030AFDF7F3FC0546607A85420ED0022D30 +:10E8000005D1012000F03CF80120207206E0012D26 +:10E8100004D1012000F034F802202072657201203A +:10E8200017B030BD80B5D9F717FC2549C860002264 +:10E830000A722449C0F8181200F506702249416096 +:10E84000224981600FF20D01C1600FF23D010161AB +:10E85000012002BD1A48C06890F80902002801D1C1 +:10E860000020704708E080B5154800210172084675 +:10E8700000F006F8012002BD154890F9000070472D +:10E88000134908707047000018B440F221120B7849 +:10E8900012FB030301241C700B7812FB03035C7052 +:10E8A0000B7812FB03030D249C700B7812FB030002 +:10E8B000034A127AC2700878401C087011BCD2E773 +:10E8C00080260120CDE6020885E70208D3E702088A +:10E8D0000D2901200FB410B5A0B09DF88A00584949 +:10E8E000087001208DF88C00AA208DF88A003C2049 +:10E8F0008DF88B0000208DF80000032001900DF1B1 +:10E90000090022A91822D4F7EDF80A208DF8080092 +:10E9100000A8D9F777FC002805D10FF27010D3F7C3 +:10E9200041FD022014E009A8E9F7FBFA454C582202 +:10E9300000212046D3F792FC0021E1652166582290 +:10E9400009A9D6F7D7F80FF25810D3F72BFD0120FD +:10E9500020B010BC5DF814FB80B50A210320E1F75C +:10E9600070F9032801D1032002BD0FF24010D3F744 +:10E9700019FD012002BD80B5D9F76EFB31498865CC +:10E980003149C0F8001100F58070304941600FF244 +:10E990006D0181600FF20D01C1600FF2B5010161DF +:10E9A000012002BD10B594B02649886D90F8F100A1 +:10E9B00000281BD0224C2078002817D0012013906B +:10E9C000129084B068465822D4F79CF80FBCE2F746 +:10E9D000A1FBC0B22178884208DB01460FF2D800C3 +:10E9E000D3F7E0FC00F005F8012000E0002014B0AF +:10E9F00010BD1348002101700120704700B597B089 +:10EA000000A8E9F78EFA0F48C16D491CC1650129BC +:10EA100002D1009901660FE033290DD30021C165B1 +:10EA2000016E009A914207D1582200A9D6F762F8E8 +:10EA30000FF29800D3F7B6FC012017B000BD00001C +:10EA40001229012080190120D5E8020859E902089D +:10EA500010B50C4640F22111227811FB020201236D +:10EA60001370227811FB02025370227811FB02020C +:10EA700006239370227811FB02000121C170FFF779 +:10EA8000B8FF2078401C207010BD000050443A2090 +:10EA90005065646F4F70656E4661696C205353001A +:10EAA00050443A20534320535441000050443A20EC +:10EAB00053432053544F000050443A204469666643 +:10EAC000537465704F7665722025640050443A2077 +:10EAD0005343205245534554000000003C0A560A57 +:10EAE000700A8B0AA60AC10ADD0AF80A150B310B57 +:10EAF0004E0B6B0B880BA50BC30BE10B000C1E0C14 +:10EB00003D0C5D0C7C0C9C0CBD0CDD0CFE0C1F0D3B +:10EB1000410D630D850DA80DCB0DEE0D120E360EB9 +:10EB20005A0E7F0EA40ECA0EEF0E160F3C0F630F87 +:10EB30008B0FB30FDB0F03102C1056108010AA1090 +:10EB4000D41000112B1157118311B011DE110B12CB +:10EB5000391268129712C712F712271359138A1322 +:10EB6000BC13EF13221455148914BE14F314291581 +:10EB70005F159515CD1504163D167616AF16E916D8 +:10EB800024175F179B17D817151852189118CF180C +:10EB90000F194F199019D119131A561A9A1ADE1A09 +:10EBA000221B681BAE1BF51B3D1C851CCE1C181DB3 +:10EBB000621DAD1DF91D461E941EE21E311F811FF0 +:10EBC000D11F23207520C8201C217121C7211D229F +:10EBD0007422CD2226238023DA2336249324F124A1 +:10EBE0004F25AF250F267126D32636279B270028D1 +:10EBF0006728CE283629A0290B2A762AE32A512B0A +:10EC0000C02B302CA12C132D862DFB2D712EE82E20 +:10EC1000602FD92F5330CF304C31CA314A32CA32EB +:10EC20004C33D0335434DA346235EA357436003735 +:10EC30008D371B38AA383C39CE39623AF83A8F3BC7 +:10EC4000273CC13C5D3DFA3D983E383FDA3F7E406F +:10EC50002341CA4172421C43C84376442545D645E8 +:10EC600089463D47F447AC486649224ADF4A9F4BF4 +:10EC7000614C244DEA4DB14E7B4F46501451E35147 +:10EC8000B55289535E5436551156ED56CB57AC5894 +:10EC90008F59745A5C5B465C325D215E125F056081 +:10ECA000FB60F361EE62EB63EB64ED65F266FA67BD +:10ECB0000469116A206B336C486D5F6E7A6F9770D0 +:10ECC000B871DB7201742A7556768577B778EC795E +:10ECD000247B5F7C9D7DDF7E248000003D0A580AF6 +:10ECE000720A8D0AA80AC30ADF0AFB0A170B330B44 +:10ECF000500B6D0B8A0BA70BC50BE30B020C210C01 +:10ED0000400C5F0C7F0C9F0CBF0CE00C010D220D22 +:10ED1000430D650D880DAA0DCD0DF10D140E380EA5 +:10ED20005D0E820EA70ECC0EF20E180F3F0F660F6F +:10ED30008D0FB50FDD0F06102F1059108210AD107A +:10ED4000D71002112E115A118611B311E1110E12B2 +:10ED50003D126B129A12CA12FA122B135C138D1306 +:10ED6000BF13F213251459148D14C114F6142C1565 +:10ED700062159915D015081640167916B316ED16BA +:10ED8000281763179F17DB17181856189418D318ED +:10ED9000131953199419D519181A5A1A9E1AE21AE6 +:10EDA000271B6C1BB31BF91B411C891CD21C1C1D8F +:10EDB000671DB21DFE1D4B1E981EE71E361F861FC7 +:10EDC000D61F28207A20CD2021217621CC21222275 +:10EDD0007A22D2222B238523E0233C249924F62473 +:10EDE0005525B52515267726D9263C27A12706289F +:10EDF0006D28D4283D29A629112A7D2AE92A572BD6 +:10EE0000C62B362CA82C1A2D8D2D022E782EEF2EE7 +:10EE1000672FE02F5B30D6305331D2315132D232AE +:10EE20005433D8335C34E2346A35F2357D360837F2 +:10EE300095372338B3384439D7396B3A003B973B81 +:10EE4000303CCA3C663D033EA23E423FE43F874021 +:10EE50002D41D3417C422643D24380442F45E04597 +:10EE600093464847FE47B64871492D4AEB4AAA4B9C +:10EE70006C4C304DF54DBD4E864F52502051EF51E8 +:10EE8000C15295536B5443551D56FA56D857B9582D +:10EE90009C59825A695B535C405D2F5E205F136012 +:10EEA00009610162FC62FA63FA64FC650167096842 +:10EEB0001369206A306B426C586D6F6E8A6FA87050 +:10EEC000C871EB7212743B7567769677C878FD79D6 +:10EED000367B717CB07DF17E36807F810FB480B54A +:10EEE000212200210846D9F7B9F8022801D10220D1 +:10EEF0000EE0212201210020D9F7B0F8022801D12B +:10EF0000022005E02120E0F729FCFEF771F801203E +:10EF100002BC5DF814FB80B5212200210120D9F745 +:10EF20009DF8022801D1022002BD212201210846BC +:10EF3000D9F794F8022801D1022002BD012002BDB8 +:10EF4000F0B58BB04948846BA069E168451800268C +:10EF500000A8D9F7E2F80398D9F77CFA444A454B60 +:10EF6000D4F762F8D4F704FA28800498D9F772FA33 +:10EF70003F4A404BD4F758F8D4F7FAF9688005981F +:10EF8000D9F768FA3A4A3B4BD4F74EF8D4F7F0F980 +:10EF9000A880394F3878002809D1381D03A9D1EC51 +:10EFA000031A00A991EC030AFEF750F80646012E59 +:10EFB00002D10120387006E03878002803D1002003 +:10EFC000B880F8803881B888E880F8882881388946 +:10EFD00068810120A0770BB0F0BD80B5D9F73CF86F +:10EFE000264908602649C0F8381500F238502549EE +:10EFF0004160254981600FF21101C1600FF23501B6 +:10F000000161012002BD00001C48006890F829053C +:10F01000002801D10020704705E080B5002000F0F5 +:10F0200006F8012002BD194890F900007047174901 +:10F030000870704718B440F221120B7812FB0303DA +:10F0400001241C700B7812FB03035C700B7812FB1D +:10F05000030321249C700B7812FB03000022C27072 +:10F060000878401C087011BCD7E700000840002059 +:10F0700089AD84FA0A74313F40270120AC28012071 +:10F08000DDEE020817EF020841EF0208092901200E +:10F090000FB480B5182208210020D8F7DFFF02281E +:10F0A00001D102200CE03C48002101709DF80910BC +:10F0B00041609DF80A1081609DF80B10C16001202D +:10F0C00002BC5DF814FB80B53348002101701822A2 +:10F0D00008210120D8F7C2FF032801D1032002BD77 +:10F0E000012002BD10B52C4C2078012801D1002050 +:10F0F00010BD642061684143E268012A0FD10129F3 +:10F100001CDAA1684843002818D4012000F041F817 +:10F11000012020700FF2D000D3F744F90EE001294E +:10F1200003DAA1684843002808D5012000F031F82F +:10F13000012020700FF2B800D3F734F9012010BD80 +:10F1400080B5D8F789FF154908601549C0F8D01374 +:10F1500000F5747013494160134981600FF20D018D +:10F16000C1600FF24D010161012002BD0B48006832 +:10F1700090F8C103002801D10020704705E080B558 +:10F18000002000F006F8012002BD084890F90000B8 +:10F190007047064908707047A0260120B428012056 +:10F1A00091F00208C7F00208E5F0020813290120D7 +:10F1B00018B440F221120B7812FB030301241C70D7 +:10F1C0000B7812FB03035C700B7812FB030318240B +:10F1D0009C700B7812FB03000122C2700878401C5F +:10F1E000087011BCCBE7000054656D7020496E00BB +:10F1F00054656D70204F7574000000000FB480B529 +:10F200000FF21810D3F7CEF80F2201210020D8F703 +:10F2100025FF022805D10FF21410D3F7C3F80220FE +:10F2200000E0012002BC5DF814FB80B50FF208106D +:10F23000D3F7B8F80F2201210846D8F70FFF0328AB +:10F2400005D10FF20410D3F7ADF8032002BD012061 +:10F2500002BD80B5012000F035F8002000F02BF849 +:10F26000012002BD80B50FF2EC00D3F79BF8D8F770 +:10F27000F3FE244908602449C0F8681200F51A70AA +:10F2800022494160224981600FF20D01C1600FF2F5 +:10F290003D010161012002BD1A48006890F8590241 +:10F2A000002801D10020704708E080B5002000F060 +:10F2B00009F8012002BD174908707047164890F9F7 +:10F2C00000007047144908707047000018B440F2FD +:10F2D00021120B7812FB030301241C700B7812FB24 +:10F2E00003035C700B7812FB03030F249C700B78F4 +:10F2F00012FB0300074A1278C2700878401C08709D +:10F3000011BCD2E79C280120FDF102082BF2020873 +:10F3100053F202080129012000290120537461726F +:10F3200074204779726F2054656D70005374617258 +:10F3300074204661696C00004779726F2054656DD6 +:10F34000702053746F70000053746F7020466169B1 +:10F350006C0000004779726F2054656D7020496E13 +:10F36000697400005248002101704160816070475B +:10F3700070B5044600254E4E307800282CD1206808 +:10F38000D9F768F821F000412A464A4BD3F7A4FD8B +:10F3900019D26068D9F75EF821F000412A46454B42 +:10F3A000D3F79AFD0FD2A068D9F754F821F00041A5 +:10F3B0000122414BE4F784FC05D87068401C706062 +:10F3C0002846B06004E0B068401CB0602846706019 +:10F3D0007068052862DB28E0032837D12068D9F758 +:10F3E00039F821F000412A46324BD3F775FD17D288 +:10F3F0006068D9F72FF821F000412A462D4BD3F74A +:10F400006BFD0DD2A068D9F725F821F0004101224B +:10F41000294BE4F755FC03D87068401C706001E08C +:10F42000284670607068052840DB94ED020AB5EE4E +:10F43000400AF1EE10FA03DD01252846307002E0A3 +:10F44000022528463070002070602FE0012801D08E +:10F4500002282BD12068D8F7FDFF21F000410122BE +:10F46000144BE4F72DFC13D96068D8F7F3FF21F0B3 +:10F47000004101220F4BE4F723FC09D9A068D8F71B +:10F48000E9FF21F000412A460B4BD3F725FD03D2BB +:10F49000B068401CB06001E01046B060B06805285C +:10F4A00004DB0325284630700020B060284670BD7C +:10F4B000882701200000F83F000021400FB480B5EC +:10F4C000192200210846D8F7C9FD022801D10220DF +:10F4D0000DE0BDF80E309DF90D209DF90C10BDF822 +:10F4E0000A00FEF74BF93F4800214170012002BCA1 +:10F4F0005DF814FB80B5192200210120D8F7AEFD7C +:10F50000032801D1032002BD012002BD38B500242B +:10F51000344D95F90100002803D16868FEF76EF9B3 +:10F52000044664B2002C07D0012000F039F82046D0 +:10F5300000F039F801206870012032BD10B5294C67 +:10F54000D8F78AFDA060DBF783F9606000202070A7 +:10F55000A0682549C0F8F81300F57E702349416082 +:10F56000234981600FF20D01C1600FF24101016179 +:10F57000012010BD1B48806890F8E903002801D1E4 +:10F580000020704708E080B5164800210170084649 +:10F5900000F006F8012002BD164890F900007047FF +:10F5A0001449087070470F490870704718B440F24A +:10F5B00021120B7812FB030301241C700B7812FB41 +:10F5C00003035C700B7812FB030319249C700B7807 +:10F5D00012FB0300034A1278C2700878401C0870BE +:10F5E00011BCD0E758270120BDF40208F5F4020849 +:10F5F0000DF50208102901202DE9F84F04000D0037 +:10F6000016001F00DDF82880DDF82C90DDF830A012 +:10F6100039480078002802D1A520D5F7E7F9D6F7B8 +:10F620006BF83648D0F80CB006E0A34502D1AA200A +:10F63000D5F7DCF9DBF800B0BBF1000FF5D15022B3 +:10F6400000212000D2F70AFE642084F84C00667482 +:10F65000207C2B4909780843207484F841A0002DB0 +:10F6600000D02562C4F82880C4F824904A46CD21F1 +:10F670004046D2F7F3FD19EB08085FEAD8085FEAC5 +:10F68000C808B8F150080020C8F800005FF080708A +:10F69000C8F844001B48C8F84000C8F84C707FF018 +:10F6A0000200C8F824001848C8F82C001748C8F809 +:10F6B00030001748C8F834001648C8F80400164847 +:10F6C000C8F808001548C8F80C001548C8F810001C +:10F6D0001448C8F814001448C8F818001348C8F8AB +:10F6E0001C001348C8F82000C4F804802000D6F796 +:10F6F000DFF8BDE8F18F00BF1C29012070790020E0 +:10F70000172901206B4A00080100CCCC0200CCCCA8 +:10F710000300CCCC0400CCCC0500CCCC0600CCCC77 +:10F720000700CCCC0800CCCC0900CCCC0A00CCCC57 +:10F730000B00CCCC4B4800210170416081607047C8 +:10F7400070B506460024474D287800282BD1306834 +:10F75000D8F780FE21F000412246434BD3F7BCFB93 +:10F7600018D27068D8F776FE21F0004122463E4B51 +:10F77000D3F7B2FB0ED296ED020ADFED390AB4EEF2 +:10F78000600AF1EE10FA05DB6868401C68601046FC +:10F79000A86004E0A868401CA8601046686068681B +:10F7A000052853DB27E002282BD13068D8F752FE1A +:10F7B00021F0004122462C4BD3F78EFB16D2706805 +:10F7C000D8F748FE21F000412246274BD3F784FBAF +:10F7D0000CD296ED020ADFED220AB4EE600AF1EED9 +:10F7E00010FA03DB6868401C686001E0104668603E +:10F7F0006868052832DB01242046287010466860BE +:10F800002CE001282AD13068D8F724FE21F00041ED +:10F810000122154BE4F754FA12D97068D8F71AFE92 +:10F8200021F000410122104BE4F74AFA08D996ED85 +:10F83000020AF2EE020AB4EE600AF1EE10FA03D503 +:10F84000A868401CA86001E02046A860A8680528B8 +:10F8500004DB0224204628700020A860204670BDEA +:10F8600001001041BC2601200000E03F0FB480B52C +:10F87000102201210020D8F7F1FB022801D102203B +:10F8800002E0FEF705FA012002BC5DF814FB80B52A +:10F89000102201210846D8F7E1FB032801D10320FB +:10F8A00002BD012002BD30B58BB000A8D8F735FCF1 +:10F8B00003A890EC030AFEF7F1F90446324D2878CC +:10F8C000A0420FD0012C05D1012000F03DF801200D +:10F8D000687006E0022C04D1012000F035F8022007 +:10F8E00068702C7001200BB030BD80B5D8F7B4FB28 +:10F8F0002549486000224A702449C0F8901200F55A +:10F90000247023494160234981600FF21101C160D5 +:10F910000FF23D010161012002BD00001A4840685C +:10F9200090F88102002801D10020704708E080B5DE +:10F93000154800214170084600F006F8012002BD7C +:10F94000154890F90000704713490870704700008F +:10F9500018B440F221120B7812FB030301241C702F +:10F960000B7812FB03035C700B7812FB030310246B +:10F970009C700B7812FB0300034A5278C27008781F +:10F98000401C087011BCD2E7502801206DF8020815 +:10F990008FF80208A7F802080A2901200FB480B5E1 +:10F9A000072200210846D8F759FB022801D102207E +:10F9B00004E09DF80800FBF7B7FF012002BC5DF8EA +:10F9C00014FB80B5072200210120D8F747FB03284C +:10F9D00001D1032002BD012002BD10B582B000207C +:10F9E0008DF80000314C00A96068FBF7B9FF0028D2 +:10F9F00006D0012000F03BF89DF8000020706070F8 +:10FA0000012016BD10B5294CD8F726FBA060DAF707 +:10FA10001FFF606000202070A0682549C0F82811F1 +:10FA200000F5947023494160234981600FF20D0174 +:10FA3000C1600FF241010161012010BD01460020AB +:10FA40001A4A926892F81921002A02D0002900D19E +:10FA500009E0704780B5154800210170084600F0A4 +:10FA600006F8012002BD154890F9000070471349BF +:10FA70000870704718B440F221120B7812FB030390 +:10FA800001241C700B7812FB03035C700B7812FBD3 +:10FA9000030307249C700B7812FB0300034A1278BF +:10FAA000C2700878401C087011BCD3E710270120F1 +:10FAB0009DF90208C3F90208DBF90208F8280120C1 +:10FAC0000FB480B5152200210846D8F7C7FA0228DE +:10FAD00001D1022002E0FFF72DFE012002BC5DF8FB +:10FAE00014FB80B5152200210120D8F7B7FA0328AE +:10FAF00001D1032002BD012002BD10B5314840688C +:10FB0000FFF71EFE044664B2002C05D0012000F071 +:10FB100037F8204600F037F8012010BD10B5294C09 +:10FB2000D8F79AFAA060DAF793FE606000202070A0 +:10FB3000A0682549C0F8581300F556702349416064 +:10FB4000234981600FF20D01C1600FF24101016193 +:10FB5000012010BD1B48806890F84903002801D19E +:10FB60000020704708E080B5164800210170084663 +:10FB700000F006F8012002BD164890F90000704719 +:10FB80001449087070470F490870704718B440F264 +:10FB900021120B7812FB030301241C700B7812FB5B +:10FBA00003035C700B7812FB030315249C700B7825 +:10FBB00012FB0300034A1278C2700878401C0870D8 +:10FBC00011BCD0E728270120C1FA0208E3FA020895 +:10FBD000FBFA0208FE2801200FB480B5292201217A +:10FBE0000020D8F73BFA022801D1022002E0FDF7FD +:10FBF000FFFB012002BC5DF814FB80B52922012126 +:10FC00000846D8F72BFA032801D1032002BD0120B2 +:10FC100002BD00B58BB000A8D8F77FFA03A890EC1E +:10FC2000030AFDF7FBFB012807D12B4801210170D6 +:10FC3000084600F031F8FDF7DBFB01200BB000BDFA +:10FC400080B5D8F709FA254908602549C0F8781623 +:10FC500000F2786023494160234981600FF20D0171 +:10FC6000C1600FF23D010161012002BD1B48006827 +:10FC700090F86906002801D10020704708E080B59F +:10FC8000154800210170084600F006F8012002BD69 +:10FC9000164890F90000704714490870704700003A +:10FCA00018B440F221120B7812FB030301241C70DC +:10FCB0000B7812FB03035C700B7812FB03032924FF +:10FCC0009C700B7812FB0300034A1278C27008780C +:10FCD000401C087011BCD2E70C290120B02801207B +:10FCE000D9FB0208FBFB020813FC02080B290120C8 +:10FCF0000FB480B5172200210846D8F7AFF90228C3 +:10FD000001D1022002E0FFF72DFB012002BC5DF8CB +:10FD100014FB80B5172200210120D8F79FF9032892 +:10FD200001D1032002BD012002BD10B53148406859 +:10FD3000FFF71EFB044664B2002C05D0012000F042 +:10FD400037F8204600F037F8012010BD10B5294CD7 +:10FD5000D8F782F9A060DAF77BFD606000202070A0 +:10FD6000A0682549C0F8A81300F56A7023494160CE +:10FD7000234981600FF20D01C1600FF24101016161 +:10FD8000012010BD1B48806890F89903002801D11C +:10FD90000020704708E080B5164800210170084631 +:10FDA00000F006F8012002BD164890F900007047E7 +:10FDB0001449087070470F490870704718B440F232 +:10FDC00021120B7812FB030301241C700B7812FB29 +:10FDD00003035C700B7812FB030317249C700B78F1 +:10FDE00012FB0300034A1278C2700878401C0870A6 +:10FDF00011BCD0E74C270120F1FC020813FD0208DA +:10FE00002BFD02080F290120816807E002681168B4 +:10FE1000536889185B18C36008320260C268914257 +:10FE2000F4D04A1C8260087870472DE9FF4D00F13C +:10FE30000801009100270168009A490802EBC101FE +:10FE40000191B8460021029103910168490800EB35 +:10FE5000C101406800F0010501F10804400804EB0D +:10FE6000C00631E000A8FFF7CFFF4FFA80FA0AE0A2 +:10FE700000980168081800990290496808180390D2 +:10FE8000009808300090029803998842F0D0401CF6 +:10FE9000029010F801BD47450CD1B44208BFEAF703 +:10FEA00055FA276805B14F44606800EB070808342D +:10FEB0004745F2D007F801BBBAF1000F0AD51AF195 +:10FEC000010AE8D14745CDD1B442CBD1304604B088 +:10FED000BDE8F08DBAF1010AD5D5F3E710B584B0CD +:10FEE000D5F73DFDDAF7F0FBFEF754F81B4C022086 +:10FEF00002904FF4806001900094194B64220FF23D +:10FF0000700104F5B0505030FFF776FB02200290EC +:10FF10004FF48050019004F580600090114B4B220B +:10FF20000FF2580104F5B050FFF766FB0220029073 +:10FF30004FF40070019004F5A05000900A4B0A2283 +:10FF40000FF2440104F5B550FFF756FB07480121B5 +:10FF50000170D4F790FD002004B010BD8C7A002011 +:10FF60000FA20208ABDF0208A1DF02081629012058 +:10FF7000534820436F6D5461736B00005348204D0C +:10FF800061696E5461736B00506F7765724D616E7D +:10FF900061676572205461736B000000787878782F +:10FFA0003030303130303130313131313131313147 +:10FFB0003131313130307831787878780000000094 +:10FFC00078787878313031317878787878787878CE +:10FFD00078787878787878787878787878787878A1 +:10FFE0000000000031313131313031787878787863 +:10FFF0007878787878787878787878787878787881 +:020000023000CC +:10000000787878780000000030313030303131318C +:10001000317878787830303000000000313131307C +:1000200031787878787878787878783000000000BF +:1000300031313131317878787878787878787878A3 +:100040000000000043F63001C4F202014FF09F02AD +:100050000A6040F20000C4F202004FF6FF73CAF6D5 +:10006000FF3303604FF6BF63CFF6FF7300F5806088 +:1000700003604FF6FF73CFF6FF7300F580600360F7 +:1000800000F58060036000F58060036040F20F03BC +:10009000C0F2000341F60040C4F2020003604FF0DA +:1000A00000020A600148804701480047813E01087C +:1000B0008902030810B5074979441831064C7C447D +:1000C000163404E00A68081D511888470146A14209 +:1000D000F8D110BD74000000B800000023B600087D +:1000E0004DB600088FB7000841B8000800000000B6 +:1000F00095B800080000000037BD000800000000AF +:1001000023B60008AFBB000851BC00080000000087 +:1001100000000000000000000000000000000000DF +:1001200000000000D5BD000801BE000803BF0008A4 +:1001300091BF000800000000E5BF000800000000BB +:10014000DDC9000807CA0008132AFDFF94AE0000AD +:100150008C7A002000000000D3FCFFFF02000000AA +:1001600002000000400300000200000000400020E8 +:1001700004000000B7FCFFFF0200000002000000C6 +:10018000260300004202000008400020823A0000DE +:100190005B494E564E5D616363655F736869667463 +:1001A000282564293A202564202564202564000040 +:1001B000475943616C4552522042696173205B2567 +:1001C000645D203A20256C64000000004EF68851E2 +:1001D000CEF20001086840F4700008604FF0007033 +:1001E000E1EE100A704700000120C046002801D04F +:1001F000FFF760FF0020C046C046FFF76FFE00F02B +:1002000000F800F001B8000007463846F2F77EFA21 +:10021000FBE700000A5B494E564E5D414343454CA7 +:100220005F4D474D5432203A2025640047594361C1 +:100230006C45525220524D53205B25645D203A207C +:10024000256C640047797243616C3D20256420254C +:100250006420256400000000414343204461746130 +:100260002053616D6500000041522D25642C2564EA +:100270002C25642C25640000475943616C4552527B +:1002800020524D5320300000C046C046FFF79EFF6D +:10029000FFF7AAFF4148532D453200004148532D36 +:1002A000453300004148532D453400004148532D4B +:1002B000453100005354302D3200000041522D537F +:1002C0004C50000041522D535442000041432D52E6 +:1002D000463100004149532D534C500047522D5395 +:1002E0004C50000047522D535442000047522D52AB +:1002F000463100004748532D453200004748532DF2 +:10030000453300004748532D453400004748532DDE +:10031000453500004748532D453600004748532DCA +:10032000453700004748532D45380000FF7FFF7FC9 +:10033000FF7F000000000000F9F720BFF9F728BF99 +:10034000F9F730BFF9F738BFF9F740BFF9F748BF01 +:10035000F9F750BFD4F75CBBDAF795B9FFF7FEBFEA +:10036000FFF7FEBFFFF7FEBFFAF717BAFFF7FEBFB2 +:10037000FAF7C1BAFAF76AB8FAF730B9FAF774B906 +:10038000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA1 +:10039000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF91 +:1003A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF81 +:1003B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF71 +:1003C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF61 +:1003D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF51 +:1003E000FFF7FEBFFFF7FEBFF9F710BFFFF7FEBF35 +:1003F000FFF7FEBFFFF7FEBFFFF7FEBFFAF783B9B7 +:10040000FAF72BBAFFF7FEBFFFF7FEBFFFF7FEBFFD +:10041000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF10 +:10042000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF00 +:10043000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF0 +:10044000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFE0 +:10045000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD0 +:10046000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC0 +:10047000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB0 +:10048000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA0 +:10049000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF90 +:1004A000FFF7FEBFFC009000077840002078400076 +:1004B0002081008100810081008100810081008114 +:1004C0000081008100810081008100810081008124 +:1004D0000081008100FA000774490020744900205F +:1004E0008100810081008100810081008100810004 +:1004F00081008100810081008100810081008100F4 +:1005000081008100810081008100810081008100E3 +:1005100081008100810081008100810081008100D3 +:1005200081008100810081008100810081008100C3 +:1005300081008100810081008100810081008100B3 +:1005400081008100810081008100810081008100A3 +:100550008100810081008100810081008100810093 +:100560008100810081008100810081008100810083 +:100570008100810081008100810081008100810073 +:10058000810081008100810081008100A600000AB5 +:10059000FD000007FD000007FD000005FC00000253 +:1005A0008100810081008100B30010400000803F85 +:1005B000FFCAA3BFF986F43EFBB54A3DFB0000022B +:1005C000E6000001FD000002ED000047F10000011F +:1005D000FD000010E9000001FD0000C8FD0000045E +:1005E0008100D800102D431CEBE2361A3F2D431C2E +:1005F000EBE2361A3F14ED000001FD000001A500FA +:10060000FD66043FCDCC4C3FE4000001FD0000013D +:10061000FD000001E9000001FD000002E50000010D +:10062000FD000001AD00049CFF020804FD0004C0B1 +:10063000FF020804FD0004E4FF020804FD000408B2 +:1006400000030802FD00041C00030802FD00043042 +:1006500000030802D8000040E1000005E9000002A4 +:10066000F600088083848586878D8F80FD000701D2 +:10067000FF0000FFFF0022F900010101FD000078EA +:10068000EE000003EC001501020304060708090050 +:1006900024F40080838D88898A8B8001FFFD00010E +:1006A000FFFFFB0010010203040102030406070818 +:1006B00009071F000002FD0007609C7866805DEF5F +:1006C000C8FC000001FD000001FD000001FC00026B +:1006D000540040FA000001FB0000FFFD0009010486 +:1006E00001010CBDD60031FFFFFFFFFFFFFFFFFF41 +:1006F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:10070000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:10071000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:10072000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10073000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10074000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10075000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10076000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10077000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10078000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10079000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:1007A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:1007B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:1007C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1007D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1007E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1007F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:10080000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:10081000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:10082000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10083000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10084000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10085000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10086000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10087000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10088000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10089000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:1008A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:1008B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:1008C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1008D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1008E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1008F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:10090000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:10091000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:10092000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:10093000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10094000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10095000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10096000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10097000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10098000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10099000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:1009A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:1009B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:1009C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1009D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1009E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1009F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:100A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:100A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:100A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:100A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:100A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:100A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:100A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:100A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:100A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:100A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:100AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:100AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:100AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:100AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:100AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:100AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:100B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:100B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:100B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:100B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:100B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:100B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:100B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:100B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:100B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:100B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:100BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:100BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:100BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:100BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:100BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:100BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:100C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:100C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:100C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:100C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:100C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:100C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:100C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:100C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:100C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:100C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:100CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:100CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:100CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:100CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:100CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:100CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:100D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:100D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:100D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:100D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:100D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:100D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:100D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:100D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:100D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:100D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:100DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:100DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:100DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:100DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:100DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:100DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:100E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:100E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:100E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:100E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:100E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:100E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:100E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:100E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:100E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:100E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:100EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:100EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:100EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:100ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:100EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:100EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:100F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:100F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:100F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:100F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:100F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:100F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:100F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:100F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:100F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:100F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:100FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:100FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:100FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:100FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:100FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:100FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:10100000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:10101000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:10102000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10103000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10104000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10105000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10106000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10107000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10108000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10109000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:1010A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:1010B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:1010C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1010D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1010E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1010F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:10110000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:10111000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:10112000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10113000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10114000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10115000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10116000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10117000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10118000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10119000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:1011A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:1011B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:1011C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1011D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1011E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1011F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:10120000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:10121000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:10122000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10123000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10124000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10125000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10126000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10127000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10128000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10129000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:1012A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:1012B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:1012C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1012D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1012E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1012F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:10130000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:10131000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:10132000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10133000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10134000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10135000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10136000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10137000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10138000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10139000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:1013A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:1013B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:1013C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1013D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1013E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1013F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:10140000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:10141000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:10142000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10143000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10144000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10145000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10146000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10147000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10148000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10149000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:1014A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:1014B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:1014C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1014D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1014E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1014F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:10150000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:10151000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10152000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10153000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10154000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10155000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10156000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10157000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10158000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10159000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:1015A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:1015B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:1015C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1015D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1015E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1015F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:10160000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:10161000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10162000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10163000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10164000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10165000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10166000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10167000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10168000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10169000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:1016A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:1016B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1016C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1016D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1016E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1016F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:10170000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:10171000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10172000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10173000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10174000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10175000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10176000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10177000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10178000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10179000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:1017A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:1017B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1017C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1017D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1017E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1017F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:10180000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:10181000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10182000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10183000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10184000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10185000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10186000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10187000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10188000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10189000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:1018A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:1018B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1018C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1018D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1018E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1018F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:10190000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:10191000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:10192000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10193000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10194000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10195000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10196000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10197000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10198000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10199000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:1019A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:1019B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1019C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1019D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1019E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1019F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:101A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:101A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:101A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:101A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:101A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:101A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:101A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:101A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:101A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:101A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:101AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:101AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:101AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:101AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:101AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:101AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:101B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:101B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:101B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:101B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:101B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:101B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:101B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:101B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:101B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:101B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:101BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:101BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:101BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:101BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:101BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:101BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:101C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:101C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:101C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:101C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:101C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:101C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:101C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:101C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:101C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:101C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:101CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:101CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:101CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:101CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:101CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:101CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:101D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:101D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:101D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:101D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:101D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:101D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:101D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:101D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:101D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:101D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:101DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:101DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:101DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:101DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:101DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:101DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:101E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:101E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:101E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:101E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:101E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:101E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:101E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:101E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:101E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:101E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:101EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:101EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:101EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:101ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:101EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:101EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:101F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:101F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:101F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:101F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:101F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:101F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:101F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:101F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:101F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:101F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:101FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:101FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:101FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:101FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:101FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:101FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:10200000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:10201000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10202000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10203000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10204000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10205000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10206000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10207000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10208000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10209000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:1020A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:1020B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1020C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1020D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1020E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1020F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:10210000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:10211000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10212000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10213000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10214000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10215000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10216000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10217000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10218000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10219000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:1021A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:1021B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1021C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1021D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1021E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1021F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:10220000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:10221000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10222000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10223000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10224000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10225000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10226000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10227000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10228000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10229000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:1022A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:1022B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1022C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1022D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1022E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1022F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:10230000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:10231000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10232000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10233000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10234000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10235000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10236000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10237000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10238000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10239000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:1023A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:1023B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1023C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1023D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1023E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1023F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:10240000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:10241000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10242000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10243000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10244000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10245000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10246000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10247000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10248000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10249000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:1024A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:1024B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1024C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1024D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1024E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1024F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:10250000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10251000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10252000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10253000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10254000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10255000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10256000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10257000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10258000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10259000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:1025A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:1025B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1025C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1025D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1025E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1025F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:10260000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10261000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10262000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10263000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10264000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10265000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10266000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10267000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10268000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10269000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:1026A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1026B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1026C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1026D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1026E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1026F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:10270000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10271000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10272000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10273000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10274000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10275000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10276000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10277000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10278000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10279000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:1027A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1027B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1027C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1027D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1027E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1027F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:10280000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10281000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10282000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10283000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10284000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10285000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10286000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10287000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10288000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10289000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:1028A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1028B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1028C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1028D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1028E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1028F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:10290000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:10291000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10292000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10293000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10294000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10295000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10296000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10297000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10298000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10299000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:1029A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1029B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1029C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1029D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1029E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1029F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:102A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:102A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:102A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:102A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:102A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:102A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:102A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:102A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:102A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:102A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:102AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:102AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:102AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:102AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:102AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:102AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:102B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:102B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:102B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:102B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:102B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:102B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:102B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:102B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:102B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:102B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:102BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:102BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:102BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:102BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:102BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:102BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:102C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:102C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:102C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:102C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:102C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:102C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:102C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:102C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:102C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:102C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:102CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:102CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:102CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:102CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:102CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:102CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:102D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:102D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:102D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:102D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:102D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:102D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:102D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:102D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:102D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:102D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:102DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:102DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:102DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:102DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:102DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:102DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:102E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:102E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:102E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:102E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:102E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:102E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:102E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:102E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:102E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:102E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:102EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:102EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:102EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:102ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:102EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:102EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:102F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:102F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:102F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:102F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:102F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:102F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:102F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:102F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:102F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:102F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:102FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:102FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:102FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:102FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:102FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:102FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:10300000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10301000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10302000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10303000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10304000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10305000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10306000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10307000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10308000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10309000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:1030A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1030B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1030C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1030D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1030E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1030F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:10310000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10311000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10312000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10313000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10314000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10315000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10316000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10317000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10318000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10319000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:1031A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1031B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1031C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1031D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1031E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1031F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:10320000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10321000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10322000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10323000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10324000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10325000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10326000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10327000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10328000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10329000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:1032A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1032B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1032C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1032D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1032E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1032F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:10330000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10331000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10332000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10333000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10334000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10335000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10336000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10337000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10338000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10339000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:1033A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1033B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1033C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1033D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1033E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1033F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:10340000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10341000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10342000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10343000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10344000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10345000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10346000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10347000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10348000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10349000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:1034A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1034B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1034C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1034D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1034E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1034F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:10350000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10351000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10352000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10353000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10354000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10355000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10356000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10357000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10358000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10359000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:1035A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1035B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1035C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1035D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1035E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1035F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10360000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10361000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10362000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10363000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10364000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10365000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10366000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10367000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10368000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10369000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1036A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1036B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1036C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1036D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1036E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1036F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10370000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10371000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10372000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10373000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10374000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10375000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10376000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10377000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10378000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10379000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1037A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1037B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1037C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1037D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1037E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1037F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10380000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10381000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10382000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10383000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10384000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10385000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10386000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10387000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10388000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10389000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1038A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1038B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1038C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1038D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1038E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1038F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10390000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10391000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10392000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10393000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10394000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10395000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10396000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10397000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10398000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10399000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1039A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1039B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1039C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1039D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1039E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1039F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:103A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:103A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:103A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:103A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:103A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:103A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:103A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:103A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:103A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:103A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:103AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:103AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:103AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:103AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:103AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:103AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:103B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:103B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:103B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:103B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:103B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:103B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:103B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:103B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:103B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:103B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:103BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:103BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:103BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:103BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:103BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:103BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:103C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:103C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:103C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:103C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:103C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:103C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:103C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:103C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:103C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:103C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:103CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:103CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:103CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:103CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:103CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:103CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:103D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:103D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:103D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:103D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:103D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:103D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:103D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:103D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:103D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:103D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:103DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:103DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:103DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:103DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:103DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:103DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:103E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:103E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:103E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:103E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:103E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:103E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:103E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:103E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:103E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:103E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:103EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:103EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:103EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:103ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:103EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:103EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:103F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:103F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:103F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:103F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:103F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:103F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:103F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:103F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:103F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:103F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:103FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:103FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:103FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:103FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:103FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:103FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:10400000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10401000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10402000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10403000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10404000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10405000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10406000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10407000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10408000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10409000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1040A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1040B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1040C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1040D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1040E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1040F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10410000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10411000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10412000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10413000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10414000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10415000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10416000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10417000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10418000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10419000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1041A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1041B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1041C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1041D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1041E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1041F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10420000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10421000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10422000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10423000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10424000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10425000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10426000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10427000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10428000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10429000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1042A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1042B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1042C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1042D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1042E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1042F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10430000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10431000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10432000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10433000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10434000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10435000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10436000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10437000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10438000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10439000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1043A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1043B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1043C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1043D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1043E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1043F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10440000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10441000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10442000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10443000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10444000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10445000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10446000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10447000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10448000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10449000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1044A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1044B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1044C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1044D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1044E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1044F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10450000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10451000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10452000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10453000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10454000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10455000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10456000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10457000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10458000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10459000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1045A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1045B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1045C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1045D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1045E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1045F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10460000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10461000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10462000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10463000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10464000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10465000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10466000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10467000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10468000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10469000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1046A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1046B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1046C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1046D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1046E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1046F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10470000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10471000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10472000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10473000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10474000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10475000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10476000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10477000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10478000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10479000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1047A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1047B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1047C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1047D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1047E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1047F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10480000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10481000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10482000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10483000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10484000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10485000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10486000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10487000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10488000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10489000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1048A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1048B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1048C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1048D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1048E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1048F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10490000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10491000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10492000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10493000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10494000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10495000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10496000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10497000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10498000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10499000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1049A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1049B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1049C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1049D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1049E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1049F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:104A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:104A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:104A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:104A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:104A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:104A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:104A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:104A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:104A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:104A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:104AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:104AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:104AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:104AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:104AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:104AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:104B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:104B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:104B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:104B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:104B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:104B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:104B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:104B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:104B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:104B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:104BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:104BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:104BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:104BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:104BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:104BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:104C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:104C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:104C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:104C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:104C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:104C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:104C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:104C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:104C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:104C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:104CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:104CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:104CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:104CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:104CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:104CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:104D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:104D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:104D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:104D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:104D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:104D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:104D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:104D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:104D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:104D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:104DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:104DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:104DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:104DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:104DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:104DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:104E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:104E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:104E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:104E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:104E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:104E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:104E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:104E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:104E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:104E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:104EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:104EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:104EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:104ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:104EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:104EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:104F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:104F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:104F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:104F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:104F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:104F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:104F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:104F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:104F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:104F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:104FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:104FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:104FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:104FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:104FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:104FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:10500000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10501000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10502000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10503000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10504000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10505000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10506000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10507000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10508000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:10509000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1050A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1050B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1050C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1050D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1050E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:1050F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10510000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10511000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10512000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10513000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10514000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10515000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10516000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10517000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10518000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:10519000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1051A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1051B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1051C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1051D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1051E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:1051F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10520000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10521000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10522000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10523000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10524000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10525000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10526000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10527000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10528000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:10529000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1052A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1052B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1052C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1052D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1052E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:1052F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10530000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10531000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10532000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10533000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10534000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10535000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10536000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10537000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10538000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:10539000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1053A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1053B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1053C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1053D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1053E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:1053F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10540000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10541000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10542000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10543000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10544000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10545000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10546000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10547000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10548000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:10549000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1054A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1054B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1054C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1054D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1054E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:1054F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10550000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10551000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10552000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10553000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10554000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10555000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10556000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10557000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10558000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:10559000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1055A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1055B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1055C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1055D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1055E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:1055F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10560000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10561000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10562000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10563000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10564000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10565000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10566000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10567000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10568000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:10569000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1056A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1056B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1056C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1056D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1056E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:1056F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10570000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10571000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10572000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10573000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10574000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10575000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10576000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10577000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10578000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:10579000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1057A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1057B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1057C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1057D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1057E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:1057F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10580000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10581000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10582000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10583000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10584000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10585000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10586000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10587000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10588000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:10589000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1058A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1058B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1058C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1058D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1058E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:1058F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10590000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10591000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10592000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10593000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10594000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10595000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10596000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10597000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10598000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:10599000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1059A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1059B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1059C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1059D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1059E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:1059F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:105A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:105A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:105A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:105A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:105A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:105A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:105A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:105A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:105A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:105A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:105AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:105AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:105AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:105AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:105AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:105AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:105B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:105B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:105B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:105B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:105B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:105B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:105B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:105B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:105B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:105B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:105BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:105BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:105BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:105BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:105BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:105BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:105C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:105C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:105C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:105C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:105C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:105C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:105C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:105C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:105C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:105C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:105CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:105CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:105CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:105CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:105CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:105CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:105D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:105D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:105D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:105D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:105D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:105D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:105D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:105D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:105D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:105D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:105DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:105DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:105DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:105DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:105DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:105DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:105E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:105E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:105E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:105E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:105E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:105E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:105E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:105E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:105E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:105E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:105EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:105EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:105EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:105ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:105EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:105EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:105F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:105F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:105F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:105F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:105F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:105F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:105F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:105F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:105F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:105F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:105FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:105FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:105FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:105FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:105FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:105FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:10600000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10601000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10602000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10603000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10604000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10605000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10606000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10607000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:10608000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:10609000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1060A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1060B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1060C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1060D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:1060E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:1060F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10610000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10611000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10612000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10613000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10614000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10615000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10616000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10617000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:10618000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:10619000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1061A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1061B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1061C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1061D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:1061E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:1061F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10620000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10621000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10622000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10623000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10624000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10625000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10626000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10627000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:10628000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:10629000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1062A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1062B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1062C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1062D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:1062E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:1062F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10630000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10631000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10632000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10633000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10634000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10635000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10636000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10637000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:10638000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:10639000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1063A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1063B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1063C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1063D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:1063E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:1063F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10640000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10641000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10642000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10643000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10644000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10645000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10646000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10647000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:10648000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:10649000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1064A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1064B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1064C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1064D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:1064E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:1064F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10650000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10651000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10652000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10653000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10654000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10655000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10656000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10657000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:10658000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:10659000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1065A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1065B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1065C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1065D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:1065E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:1065F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10660000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10661000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10662000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10663000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10664000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10665000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10666000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10667000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:10668000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:10669000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1066A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1066B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1066C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1066D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:1066E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:1066F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10670000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10671000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10672000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10673000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10674000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10675000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10676000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10677000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:10678000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:10679000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1067A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1067B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1067C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1067D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:1067E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:1067F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10680000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10681000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10682000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10683000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10684000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10685000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10686000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10687000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:10688000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:10689000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1068A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1068B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1068C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1068D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:1068E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:1068F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10690000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10691000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10692000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10693000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10694000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10695000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10696000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10697000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:10698000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:10699000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1069A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1069B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1069C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1069D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:1069E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:1069F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:106A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:106A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:106A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:106A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:106A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:106A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:106A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:106A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:106A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:106A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:106AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:106AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:106AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:106AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:106AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:106AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:106B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:106B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:106B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:106B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:106B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:106B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:106B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:106B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:106B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:106B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:106BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:106BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:106BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:106BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:106BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:106BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:106C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:106C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:106C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:106C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:106C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:106C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:106C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:106C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:106C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:106C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:106CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:106CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:106CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:106CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:106CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:106CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:106D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:106D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:106D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:106D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:106D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:106D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:106D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:106D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:106D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:106D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:106DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:106DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:106DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:106DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:106DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:106DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:106E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:106E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:106E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:106E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:106E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:106E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:106E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:106E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:106E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:106E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:106EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:106EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:106EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:106ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:106EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:106EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:106F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:106F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:106F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:106F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:106F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:106F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:106F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:106F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:106F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:106F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:106FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:106FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:106FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:106FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:106FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:106FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:10700000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10701000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10702000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10703000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10704000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10705000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10706000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:10707000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:10708000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:10709000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1070A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1070B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1070C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:1070D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:1070E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:1070F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10710000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10711000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10712000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10713000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10714000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10715000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10716000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:10717000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:10718000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:10719000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1071A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1071B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1071C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:1071D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:1071E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:1071F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10720000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10721000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10722000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10723000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10724000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10725000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10726000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:10727000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:10728000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:10729000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1072A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1072B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1072C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:1072D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:1072E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:1072F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10730000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10731000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10732000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10733000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10734000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10735000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10736000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:10737000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:10738000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:10739000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1073A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1073B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1073C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:1073D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:1073E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:1073F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10740000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10741000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10742000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10743000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10744000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10745000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10746000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:10747000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:10748000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:10749000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1074A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1074B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1074C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:1074D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:1074E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:1074F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10750000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10751000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10752000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10753000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10754000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10755000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10756000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:10757000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:10758000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:10759000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1075A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1075B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1075C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:1075D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:1075E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:1075F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10760000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10761000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10762000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10763000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10764000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10765000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10766000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:10767000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:10768000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:10769000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1076A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1076B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1076C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:1076D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:1076E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:1076F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10770000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10771000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10772000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10773000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10774000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10775000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10776000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:10777000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:10778000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:10779000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1077A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1077B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1077C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:1077D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:1077E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:1077F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10780000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10781000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10782000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10783000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10784000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10785000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10786000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:10787000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:10788000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:10789000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1078A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1078B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1078C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:1078D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:1078E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:1078F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10790000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10791000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10792000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10793000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10794000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10795000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10796000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:10797000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:10798000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:10799000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1079A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1079B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1079C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:1079D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:1079E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:1079F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:107A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:107A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:107A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:107A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:107A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:107A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:107A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:107A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:107A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:107A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:107AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:107AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:107AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:107AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:107AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:107AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:107B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:107B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:107B2000FECAFECA53746179696E6753656E7369E4 +:107B30006E675F53535F496E697469616C697A65FA +:107B40000000000000000000000000000000000035 +:107B50000000000000000000000000000000000025 +:107B60000000000089010008760200085374617962 +:107B7000696E6753656E73696E675F53535F5374C5 +:107B80006F70000000000000000000000000000016 +:107B900000000000000000000000000000000000E5 +:107BA0000000000000000000000000007702000854 +:107BB0009402000853746179696E6753656E736946 +:107BC0006E675F53657453746179696E6753656E50 +:107BD00073696E67436865636B696E6754696D6549 +:107BE0000000000000000000000000000000000095 +:107BF00000000000950200089602000853746179A5 +:107C0000696E6753656E73696E675F53657455730C +:107C1000657253746F70436865636B696E6754690E +:107C20006D65000000000000000000000000000082 +:107C300000000000000000000000000097020008A3 +:107C4000B802000853746179696E6753656E736991 +:107C50006E675F536574557365724D6F76654368E3 +:107C600065636B696E6754696D6500000000000014 +:107C70000000000000000000000000000000000004 +:107C800000000000B9020008DC02000853746179AA +:107C9000696E6753656E73696E675F53657455737C +:107CA000657253746179696E6752616469757300B6 +:107CB00000000000000000000000000000000000C4 +:107CC000000000000000000000000000DD020008CD +:107CD000F802000853746179696E6753656E7369C1 +:107CE0006E675F5365745573657253746179696E1D +:107CF000674172656152616469757300000000003C +:107D00000000000000000000000000000000000073 +:107D100000000000F90200081403000853746179A0 +:107D2000696E6753656E73696E675F436865636B01 +:107D30005573657253746F7054696D65000000006F +:107D40000000000000000000000000000000000033 +:107D50000000000000000000000000001503000803 +:107D60009403000853746179696E6753656E736993 +:107D70006E675F5265717565737443757272656E77 +:107D800074506F730000000000000000000000004D +:107D900000000000000000000000000000000000E3 +:107DA0000000000095030008A603000853746179E1 +:107DB000696E6753656E73696E675F53656E645075 +:107DC0004F4941636B436F6D6D616E64000000004D +:107DD00000000000000000000000000000000000A3 +:107DE000000000000000000000000000A7030008E1 +:107DF000B203000853746179696E6753656E7369E5 +:107E00006E675F436865636B436F6D6D616E64544D +:107E10006F43414552656164790000000000000035 +:107E20000000000000000000000000000000000052 +:107E300000000000B3030008BA030008537461791E +:107E4000696E6753656E73696E675F5265736574BB +:107E5000436F6D6D616E645265616479466C6167F4 +:107E60000000000000000000000000000000000012 +:107E7000000000000000000000000000BB0300083C +:107E8000DC03000853746179696E6753656E73692A +:107E90006E675F5265736574526571756573745072 +:107EA0006F73466C61670000000000000000000076 +:107EB00000000000000000000000000000000000C2 +:107EC00000000000DD030008FC0300085374617922 +:107ED000696E6753656E73696E675F52657365742B +:107EE000506F6941636B436F6D6D616E64466C6189 +:107EF000670000000000000000000000000000001B +:107F0000000000000000000000000000FD03000869 +:107F10001C04000853746179696E6753656E736958 +:107F20006E675F536574506F736974696F6E4172E9 +:107F300072697665466C6167000000000000000011 +:107F40000000000000000000000000000000000031 +:107F5000000000001D0400082C040008537461791F +:107F6000696E6753656E73696E675F536574506FB2 +:107F7000736974696F6E49734E6F74526561647989 +:107F8000466C616700000000000000000000000077 +:107F90000000000000000000000000002D040008A8 +:107FA0003604000853746179696E6753656E7369AE +:107FB0006E675F53657443757272656E74506F734C +:107FC0006974696F6E00000000000000000000008E +:107FD00000000000000000000000000000000000A1 +:107FE0000000000037040008C004000853746179E1 +:107FF000696E6753656E73696E675F436865636B2F +:108000004669727374506F736974696F6E417272EE +:10801000697665000000000000000000000000001C +:10802000000000000000000000000000C104000883 +:108030001005000853746179696E6753656E736942 +:108040006E675F436865636B5365636F6E64506F03 +:10805000736974696F6E4172726976650000000021 +:108060000000000000000000000000000000000010 +:1080700000000000110500086005000853746179D4 +:10808000696E6753656E73696E675F436865636B9E +:10809000506F736974696F6E49734E6F7452656186 +:1080A00064790000000000000000000000000000F3 +:1080B0000000000000000000000000006105000852 +:1080C0007205000853746179696E6753656E736950 +:1080D0006E675F436865636B557365724D6F766954 +:1080E0006E6744697374616E636500000000000090 +:1080F0000000000000000000000000000000000080 +:108100000000000073050008C00500085374617981 +:10811000696E6753656E73696E675F436865636B0D +:108120005573657247657474696E674F75745261F3 +:108130006E67650000000000000000000000000005 +:10814000000000000000000000000000C105000861 +:108150007C06000853746179696E6753656E7369B4 +:108160006E675F55706461746553746179696E6799 +:10817000506F7300000000000000000000000000CD +:1081800000000000000000000000000000000000EF +:10819000000000007D060008D406000853746179D1 +:1081A000696E6753656E73696E675F55706461745D +:1081B0006553746179696E67506F73427953746562 +:1081C000700000000000000000000000000000003F +:1081D000000000000000000000000000D5060008BC +:1081E0005008000853746179696E6753656E73694E +:1081F0006E675F5361766553746179696E67506F1E +:1082000073427953746570000000000000000000A4 +:10821000000000000000000000000000000000005E +:1082200000000000510800083C0A000853746179FE +:10823000696E6753656E73696E675F5570646174CC +:108240006553746179696E67506F73320000000086 +:10825000000000000000000000000000000000001E +:108260000000000000000000000000003D0A0008BF +:10827000480C000853746179696E6753656E7369C1 +:108280006E675F5361766553746179696E67506F8D +:10829000730000000000000000000000000000006B +:1082A00000000000000000000000000000000000CE +:1082B00000000000490C0008A00E0008537461790A +:1082C000696E6753656E73696E675F55706461743C +:1082D0006553746179696E674172656100000000E1 +:1082E000000000000000000000000000000000008E +:1082F000000000000000000000000000A10E0008C7 +:10830000540F000853746179696E6753656E736921 +:108310006E675F5361766553746179696E67417208 +:108320006561000000000000000000000000000087 +:10833000000000000000000000000000000000003D +:1083400000000000550F00086010000853746179A8 +:10835000696E6753656E73696E675F475053324B42 +:10836000696C6F6D657465720000000000000000AC +:1083700000000000000000000000000000000000FD +:108380000000000000000000000000006110000874 +:108390005411000853746179696E6753656E73698F +:1083A0006E675F646567326465676D696E73656388 +:1083B00000000000000000000000000000000000BD +:1083C00000000000000000000000000000000000AD +:1083D0000000000055110008BC11000853746179B9 +:1083E000696E6753656E73696E675F49734368654D +:1083F000636B5265717565737443757272656E74E3 +:10840000506F73000000000000000000000000003A +:10841000000000000000000000000000BD11000886 +:10842000C411000853746179696E6753656E73698E +:108430006E675F4973436865636B53656E64506F25 +:108440006941636B436F6D6D616E640000000000F5 +:10845000000000000000000000000000000000001C +:1084600000000000C5110008CC11000853746179A8 +:10847000696E6753656E73696E675F526573657485 +:1084800041766753746179696E67506F73000000BD +:1084900000000000000000000000000000000000DC +:1084A000000000000000000000000000CD110008E6 +:1084B0001412000853746179696E6753656E7369AD +:1084C0006E675F4765744E756D53746179696E6749 +:1084D0004172656100000000000000000000000023 +:1084E000000000000000000000000000000000008C +:1084F00000000000151200081C1200085374617976 +:10850000696E6753656E73696E675F5265736574F4 +:108510004E756D53746179696E67417265610000D3 +:10852000000000000000000000000000000000004B +:108530000000000000000000000000001D12000804 +:108540003A12000853746179696E6753656E7369F6 +:108550006E675F47657453746179696E67417265D0 +:1085600061496E666F00000000000000000000001E +:1085700000000000000000000000000000000000FB +:10858000000000003B120008521200085374617989 +:10859000696E6753656E73696E675F436F6D707563 +:1085A000746554696D65446966666572656E636578 +:1085B00000000000000000000000000000000000BB +:1085C000000000000000000000000000531200083E +:1085D0000413000853746179696E6753656E73699B +:1085E0006E675F436F6D707570746554696D65007B +:1085F000000000000000000000000000000000007B +:10860000000000000000000000000000000000006A +:108610000000000005130008D013000853746179AE +:10862000696E6753656E73696E675F436865636BF8 +:10863000446966666572656E6365417453746179F9 +:10864000696E67506F7300000000000000000000BA +:10865000000000000000000000000000D11300082E +:108660004414000853746179696E6753656E7369C9 +:108670006E675F466F7263656453617665537461BC +:1086800079696E67417265610000000000000000BA +:1086900000000000000000000000000000000000DA +:1086A00000000000451400087C1400085374617930 +:1086B000696E6753656E73696E675F536574537453 +:1086C0006179696E6753746174757300000000000E +:1086D000000000000000000000000000000000009A +:1086E0000000000000000000000000007D140008F1 +:1086F0002C15000853746179696E6753656E736950 +:108700006E675F506F736974696F6E54696D65321F +:1087100053797374656D54696D6500000000000045 +:108720000000000000000000000000000000000049 +:10873000000000002D1500086815000853746179C9 +:10874000696E6753656E73696E675F436F6D7075B1 +:1087500074654D6178474144697374616E63650067 +:108760000000000000000000000000000000000009 +:108770000000000000000000000000006915000873 +:10878000D416000853746179696E6753656E736916 +:108790006E675F436865636B55736572476F4172BF +:1087A0006F756E6400000000000000000000000013 +:1087B00000000000000000000000000000000000B9 +:1087C00000000000D5160008641900085374617990 +:1087D000696E6753656E73696E675F536574437541 +:1087E0007241637469766974795479706500000028 +:1087F0000000000000000000000000000000000079 +:1088000000000000000000000000000065190008E2 +:108810006619000853746179696E6753656E7369F0 +:108820006E675F47657453746179696E67417265FD +:1088300061496E4F757453746174650000000000E7 +:108840000000000000000000000000000000000028 +:108850000000000067190008AC1900085374617922 +:10886000696E6753656E73696E675F53535F4D61E1 +:10887000696E000000000000000000000000000021 +:1088800000000000000000000000000000000000E8 +:10889000000000000000000000000000AD1900080A +:1088A0005C2200086D656D736574000000000000B7 +:1088B00000000000000000000000000000000000B8 +:1088C00000000000000000000000000000000000A8 +:1088D0000000000000000000000000000000000098 +:1088E000000000005D220008702200084E56494337 +:1088F0005F53797374656D52657365740000000091 +:108900000000000000000000000000000000000067 +:108910000000000000000000000000000000000057 +:1089200000000000000000000000000071220008AC +:108930008C22000853485F48415F496E6974696141 +:108940006C697A6553656E736F7248756248414C05 +:108950000000000000000000000000000000000017 +:108960000000000000000000000000000000000007 +:10897000000000008D220008A222000853485F4832 +:10898000415F47657453656E736F72487562484105 +:108990004C506F696E7465720000000000000000AA +:1089A00000000000000000000000000000000000C7 +:1089B000000000000000000000000000A3220008EA +:1089C000A822000853485F48415F496E6974696195 +:1089D0006C697A6553656E736F724875620000004A +:1089E0000000000000000000000000000000000087 +:1089F0000000000000000000000000000000000077 +:108A000000000000A9220008FA22000853485F482D +:108A1000415F496E697469616C697A6553797374F1 +:108A2000656D436C6F636B00000000000000000088 +:108A30000000000000000000000000000000000036 +:108A4000000000000000000000000000FB22000801 +:108A50000223000853485F48415F496E69746961A9 +:108A60006C697A654932435F4D61737465720000C9 +:108A700000000000000000000000000000000000F6 +:108A800000000000000000000000000000000000E6 +:108A900000000000032300081C23000853485F481F +:108AA000415F496E697469616C697A654932435FF7 +:108AB000536C6176650000000000000000000000BB +:108AC00000000000000000000000000000000000A6 +:108AD0000000000000000000000000001D2300084E +:108AE0002A23000853485F48415F496E69746961F1 +:108AF0006C697A65525443000000000000000000D9 +:108B00000000000000000000000000000000000065 +:108B10000000000000000000000000000000000055 +:108B2000000000002B2300085C23000853485F4826 +:108B3000415F536574525443000000000000000080 +:108B40000000000000000000000000000000000025 +:108B50000000000000000000000000000000000015 +:108B60000000000000000000000000005D2300087D +:108B70006623000853485F48415F53657453797317 +:108B800074656D436C6F636B0000000000000000B3 +:108B900000000000000000000000000000000000D5 +:108BA00000000000000000000000000000000000C5 +:108BB00000000000672300087623000853485F4840 +:108BC000415F4368616E676544796D616E696346B4 +:108BD00072657175656E6379000000000000000029 +:108BE0000000000000000000000000000000000085 +:108BF00000000000000000000000000077230008D3 +:108C0000A423000853485F48415F4465627567507C +:108C100072696E7466000000000000000000000031 +:108C20000000000000000000000000000000000044 +:108C30000000000000000000000000000000000034 +:108C400000000000A52300085824000853485F488E +:108C5000415F53656C6563745F49324300000000F7 +:108C60000000000000000000000000000000000004 +:108C700000000000000000000000000000000000F4 +:108C8000000000000000000000000000592400085F +:108C90007024000873616E6974795F636865636B43 +:108CA00000000000000000000000000000000000C4 +:108CB00000000000000000000000000000000000B4 +:108CC00000000000000000000000000000000000A4 +:108CD00000000000712400089024000853485F48F9 +:108CE000415F4932435F4D61737465725F577269CA +:108CF000746500000000000000000000000000009B +:108D00000000000000000000000000000000000063 +:108D10000000000000000000000000009124000896 +:108D20004425000853485F48415F4932435F4D6125 +:108D3000737465725F52656164000000000000009A +:108D40000000000000000000000000000000000023 +:108D50000000000000000000000000000000000013 +:108D600000000000452500080826000853485F4819 +:108D7000415F4932435F4D61737465725F52656153 +:108D8000645F4F6E6C79000000000000000000007E +:108D900000000000000000000000000000000000D3 +:108DA000000000000000000000000000092600088C +:108DB000AE26000853485F48415F53656E736F727B +:108DC0004472697665725F496E6974000000000044 +:108DD0000000000000000000000000000000000093 +:108DE0000000000000000000000000000000000083 +:108DF00000000000AF260008B226000853485F4874 +:108E0000415F436865636B53656E736F7243616E58 +:108E10004265576F726B696E6700000000000000CA +:108E20000000000000000000000000000000000042 +:108E3000000000000000000000000000B326000851 +:108E40001827000853485F48415F496E697469619B +:108E50006C697A654C6F77506F7765724D6F64659A +:108E60000000000000000000000000000000000002 +:108E700000000000000000000000000000000000F2 +:108E800000000000192700081C27000853485F480D +:108E9000415F456E7465724C6F77506F7765724DA8 +:108EA0006F6465000000000000000000000000008A +:108EB00000000000000000000000000000000000B2 +:108EC0000000000000000000000000001D27000856 +:108ED0002027000853485F48415F44656C61795F13 +:108EE0006D730000000000000000000000000000A2 +:108EF0000000000000000000000000000000000072 +:108F00000000000000000000000000000000000061 +:108F100000000000212700089C27000853485F48F4 +:108F2000415F5365744150536C656570537461744F +:108F30007573000000000000000000000000000049 +:108F40000000000000000000000000000000000021 +:108F50000000000000000000000000009D27000845 +:108F60009E27000853485F48415F446F536C656516 +:108F70007057616B655461736B0000000000000066 +:108F800000000000000000000000000000000000E1 +:108F900000000000000000000000000000000000D1 +:108FA000000000009F2700080E28000853485F4873 +:108FB000415F5365745F4770696F50696E000000D0 +:108FC00000000000000000000000000000000000A1 +:108FD0000000000000000000000000000000000091 +:108FE0000000000000000000000000000F28000842 +:108FF0001228000853485F48415F436C6561725F07 +:109000004770696F50696E000000000000000000AA +:109010000000000000000000000000000000000050 +:109020000000000000000000000000000000000040 +:1090300000000000132800081628000853485F4865 +:10904000415F53657445787465726E616C494E5426 +:1090500031000000000000000000000000000000DF +:109060000000000000000000000000000000000000 +:1090700000000000000000000000000017280008A9 +:109080001C28000853485F48415F436C6561724586 +:10909000787465726E616C494E54310000000000B6 +:1090A00000000000000000000000000000000000C0 +:1090B00000000000000000000000000000000000B0 +:1090C000000000001D2800082228000853485F48BF +:1090D000415F53657445787465726E616C494E5496 +:1090E000320000000000000000000000000000004E +:1090F0000000000000000000000000000000000070 +:10910000000000000000000000000000232800080C +:109110002828000853485F48415F436C65617245E9 +:10912000787465726E616C494E5432000000000024 +:10913000000000000000000000000000000000002F +:10914000000000000000000000000000000000001F +:1091500000000000292800082E28000853485F4816 +:10916000415F45787465726E616C5F494E545F4330 +:109170006F6E6669670000000000000000000000DC +:1091800000000000000000000000000000000000DF +:109190000000000000000000000000002F28000870 +:1091A0003228000853485F48415F53657441636348 +:1091B000656C65726F6D65746572494E5453746168 +:1091C0007475730000000000000000000000000043 +:1091D000000000000000000000000000000000008F +:1091E00000000000332800083E28000853485F486C +:1091F000415F53657453797374656D54696D65008F +:10920000000000000000000000000000000000005E +:10921000000000000000000000000000000000004E +:109220000000000000000000000000003F280008CF +:109230001C29000853485F48415F417070656E64A7 +:1092400053797374656D54696D655469636B00007F +:10925000000000000000000000000000000000000E +:1092600000000000000000000000000000000000FE +:10927000000000001D2900088429000853485F48A9 +:10928000415F47657453797374656D54696D65000A +:1092900000000000000000000000000000000000CE +:1092A00000000000000000000000000000000000BE +:1092B00000000000000000000000000085290008F8 +:1092C0009029000853485F48415F53657453797390 +:1092D00074656D506F736974696F6E0000000000F3 +:1092E000000000000000000000000000000000007E +:1092F000000000000000000000000000000000006E +:109300000000000091290008342A000853485F48F3 +:10931000415F47657453797374656D506F736974F9 +:10932000696F6E00000000000000000000000000F7 +:10933000000000000000000000000000000000002D +:10934000000000000000000000000000352A0008B6 +:10935000E42A00085F5F6961725F756E616C69671E +:109360006E65645F5F5F61656162695F6D656D63B6 +:109370007079000000000000000000000000000004 +:1093800000000000000000000000000000000000DD +:1093900000000000E52A0008042B00085F5F6961F7 +:1093A000725F756E616C69676E65645F5F5F616552 +:1093B0006162695F6D656D6370793800000000005F +:1093C000000000000000000000000000000000009D +:1093D000000000000000000000000000052B000855 +:1093E000052B00085F5F6961725F756E616C69676C +:1093F0006E65645F5F5F61656162695F6D656D6326 +:10940000707934000000000000000000000000003F +:10941000000000000000000000000000000000004C +:1094200000000000052B00085A2B00085F5F6961EF +:10943000725F7A65726F5F696E6974330000000055 +:10944000000000000000000000000000000000001C +:10945000000000000000000000000000000000000C +:109460000000000000000000000000005B2B00086E +:109470007C2B00085F5F61656162695F6364636D97 +:109480007065710000000000000000000000000096 +:1094900000000000000000000000000000000000CC +:1094A00000000000000000000000000000000000BC +:1094B000000000007D2B00089C2B00085F5F6165A9 +:1094C0006162695F64737562000000000000000063 +:1094D000000000000000000000000000000000008C +:1094E000000000000000000000000000000000007C +:1094F0000000000000000000000000009D2B00089C +:10950000B02B00085F5F6961725F64737562000071 +:10951000000000000000000000000000000000004B +:10952000000000000000000000000000000000003B +:10953000000000000000000000000000000000002B +:1095400000000000B12B0008C22B00085F5F6961BA +:10955000725F64737562537461727400000000007E +:1095600000000000000000000000000000000000FB +:1095700000000000000000000000000000000000EB +:10958000000000000000000000000000C32B0008E5 +:109590001C2D00085F5F61656162695F646D756CB9 +:1095A00000000000000000000000000000000000BB +:1095B00000000000000000000000000000000000AB +:1095C000000000000000000000000000000000009B +:1095D000000000001D2D0008BE2E00085F534E50F5 +:1095E000726F7574000000000000000000000000B1 +:1095F000000000000000000000000000000000006B +:10960000000000000000000000000000000000005A +:10961000000000000000000000000000BF2E000855 +:10962000D82E00085F5F61656162695F6364636D86 +:10963000706C6500000000000000000000000000E9 +:10964000000000000000000000000000000000001A +:10965000000000000000000000000000000000000A +:1096600000000000D92E0008062F00085F5350723A +:109670006F75740000000000000000000000000092 +:1096800000000000000000000000000000000000DA +:1096900000000000000000000000000000000000CA +:1096A000000000000000000000000000072F00087C +:1096B000102F00085F5F61656162695F6932640055 +:1096C000000000000000000000000000000000009A +:1096D000000000000000000000000000000000008A +:1096E000000000000000000000000000000000007A +:1096F00000000000112F0008242F00085F5F616543 +:109700006162695F7569326400000000000000005A +:109710000000000000000000000000000000000049 +:109720000000000000000000000000000000000039 +:10973000000000000000000000000000252F0008CD +:10974000282F00085F5F6961725F756932640000ED +:109750000000000000000000000000000000000009 +:1097600000000000000000000000000000000000F9 +:1097700000000000000000000000000000000000E9 +:1097800000000000292F0008402F00085F5F61657E +:109790006162695F646164640000000000000000B1 +:1097A00000000000000000000000000000000000B9 +:1097B00000000000000000000000000000000000A9 +:1097C000000000000000000000000000412F000821 +:1097D000542F00085F5F6961725F64616464000018 +:1097E0000000000000000000000000000000000079 +:1097F0000000000000000000000000000000000069 +:109800000000000000000000000000000000000058 +:1098100000000000552F0008283000085F5F6165D8 +:109820006162695F64646976000000000000000006 +:109830000000000000000000000000000000000028 +:109840000000000000000000000000000000000018 +:1098500000000000000000000000000029300008A7 +:10986000703200085F5F6961725F7666705F737166 +:109870007274000000000000000000000000000002 +:1098800000000000000000000000000000000000D8 +:1098900000000000000000000000000000000000C8 +:1098A0000000000071320008713200085F5F6961DA +:1098B000725F7666705F737172746C0000000000F6 +:1098C0000000000000000000000000000000000098 +:1098D0000000000000000000000000000000000088 +:1098E00000000000000000000000000071320008CD +:1098F00080320008737172746C0000000000000078 +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:109920000000000000000000000000000000000037 +:109930000000000081320008813200085F5F696129 +:10994000725F73717274000000000000000000007C +:109950000000000000000000000000000000000007 +:1099600000000000000000000000000000000000F7 +:10997000000000000000000000000000813200082C +:109980008132000873717274000000000000000052 +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B00000000000000000000000000000000000A7 +:1099C0000000000081320008703300085F5F6165AD +:1099D0006162695F6432697A000000000000000083 +:1099E0000000000000000000000000000000000077 +:1099F0000000000000000000000000000000000067 +:109A000000000000000000000000000071330008AA +:109A10009C3300085F5F61656162695F64327569EC +:109A20007A000000000000000000000000000000BC +:109A30000000000000000000000000000000000026 +:109A40000000000000000000000000000000000016 +:109A5000000000009D330008A83300085F5F6961C3 +:109A6000725F643275697A00000000000000000037 +:109A700000000000000000000000000000000000E6 +:109A800000000000000000000000000000000000D6 +:109A9000000000000000000000000000A9330008E2 +:109AA000C83300085F5F6961725F4D656D736574EF +:109AB00000000000000000000000000000000000A6 +:109AC0000000000000000000000000000000000096 +:109AD0000000000000000000000000000000000086 +:109AE00000000000C9330008C93300085F5F6165EA +:109AF0006162695F6D656D73657400000000000050 +:109B00000000000000000000000000000000000055 +:109B10000000000000000000000000000000000045 +:109B2000000000000000000000000000C933000831 +:109B3000D03300085F5F6961725F4D656D73657456 +:109B40005F776F72640000000000000000000000FA +:109B50000000000000000000000000000000000005 +:109B600000000000000000000000000000000000F5 +:109B700000000000D1330008303400084D43555F29 +:109B8000496E697469616C697A654750494F000094 +:109B900000000000000000000000000000000000C5 +:109BA00000000000000000000000000000000000B5 +:109BB0000000000000000000000000003134000838 +:109BC000803500084D43555F496E697469616C6961 +:109BD0007A65434F4D5F53656E736F7200000000EE +:109BE0000000000000000000000000000000000075 +:109BF0000000000000000000000000000000000065 +:109C00000000000081350008563600084D43555FBE +:109C1000496E697469616C697A65434F4D5F415063 +:109C20000000000000000000000000000000000034 +:109C30000000000000000000000000000000000024 +:109C4000000000000000000000000000573600087F +:109C5000BC3700084D43555F496E697469616C6992 +:109C60007A6552544300000000000000000000002C +:109C700000000000000000000000000000000000E4 +:109C800000000000000000000000000000000000D4 +:109C900000000000BD370008D63800084D43555F6E +:109CA000496E697469616C697A6545585449000068 +:109CB00000000000000000000000000000000000A4 +:109CC0000000000000000000000000000000000094 +:109CD000000000000000000000000000D73800086D +:109CE000743900084D43555F496E697469616C6948 +:109CF0007A655F476573747572654558544900000D +:109D00000000000000000000000000000000000053 +:109D10000000000000000000000000000000000043 +:109D20000000000075390008EE3900084D43555F0A +:109D3000496E697469616C697A655F4144430000EA +:109D40000000000000000000000000000000000013 +:109D50000000000000000000000000000000000003 +:109D6000000000000000000000000000EF390008C3 +:109D7000663A00084D43555F4144435F5265616454 +:109D800000000000000000000000000000000000D3 +:109D900000000000000000000000000000000000C3 +:109DA00000000000000000000000000000000000B3 +:109DB00000000000673A0008943A00084D43555FE0 +:109DC0004144435F436C6F73650000000000000076 +:109DD0000000000000000000000000000000000083 +:109DE0000000000000000000000000000000000073 +:109DF000000000000000000000000000953A00088C +:109E0000B03A00084D43555F536574525443000007 +:109E10000000000000000000000000000000000042 +:109E20000000000000000000000000000000000032 +:109E30000000000000000000000000000000000022 +:109E400000000000B13A00083C3B00084D43555F5C +:109E50004368616E676544796D616E6963467265DA +:109E60007175656E6379000000000000000000005D +:109E700000000000000000000000000000000000E2 +:109E80000000000000000000000000003D3B000852 +:109E90000C3D00084D43555F5365745379737465E9 +:109EA0006D436C6F636B0000000000000000000059 +:109EB00000000000000000000000000000000000A2 +:109EC0000000000000000000000000000000000092 +:109ED000000000000D3D00080E3D00084932435FC0 +:109EE00044656C6179000000000000000000000083 +:109EF0000000000000000000000000000000000062 +:109F00000000000000000000000000000000000051 +:109F10000000000000000000000000000F3D0008ED +:109F2000183D00084932435F70726F766964655F5F +:109F300065787472615F636C6F636B73000000001F +:109F40000000000000000000000000000000000011 +:109F50000000000000000000000000000000000001 +:109F600000000000193D0008DA3E00084932435F56 +:109F700054494D454F55545F5573657243616C6C40 +:109F80006261636B00000000000000000000000040 +:109F900000000000000000000000000000000000C1 +:109FA000000000000000000000000000DB3E000890 +:109FB000123F00084932435F53756D4576656E74F4 +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE0000000000000000000000000000000000071 +:109FF00000000000133F00083C3F00084D43555F40 +:10A00000434F4D5F53656E736F725F57726974652E +:10A010000000000000000000000000000000000040 +:10A020000000000000000000000000000000000030 +:10A030000000000000000000000000003D3F00089C +:10A040009C4000084D43555F434F4D5F53656E7311 +:10A050006F725F5265616400000000000000000044 +:10A0600000000000000000000000000000000000F0 +:10A0700000000000000000000000000000000000E0 +:10A08000000000009D4000088C4200084D43555FD1 +:10A09000434F4D5F53656E736F725F526561645FCE +:10A0A0004F6E6C790000000000000000000000000E +:10A0B00000000000000000000000000000000000A0 +:10A0C0000000000000000000000000008D420008B9 +:10A0D000E84300084D43555F526573746F726553D2 +:10A0E000797374656D46726F6D4C6F77506F7765DD +:10A0F00072000000000000000000000000000000EE +:10A10000000000000000000000000000000000004F +:10A1100000000000E9430008784400084D43555F03 +:10A12000496E697469616C697A654C6F77506F77B5 +:10A1300065724D6F646500000000000000000000C3 +:10A14000000000000000000000000000000000000F +:10A15000000000000000000000000000794400083A +:10A16000A44400084D43555F53746F704C6F775093 +:10A170006F7765724D6F646500000000000000009D +:10A1800000000000000000000000000000000000CF +:10A1900000000000000000000000000000000000BF +:10A1A00000000000A5440008324500084D43555FFB +:10A1B000456E7465724C6F77506F7765724D6F6442 +:10A1C000650000000000000000000000000000002A +:10A1D000000000000000000000000000000000007F +:10A1E00000000000000000000000000033450008EF +:10A1F0003A4500084D43555F5365745F4770696F7A +:10A20000506F7274000000000000000000000000A9 +:10A21000000000000000000000000000000000003E +:10A22000000000000000000000000000000000002E +:10A23000000000003B4500086A4500084D43555F9B +:10A240005365745F4770696F50696E0000000000CD +:10A2500000000000000000000000000000000000FE +:10A2600000000000000000000000000000000000EE +:10A270000000000000000000000000006B45000826 +:10A280007E4500084D43555F436C6561725F4770C2 +:10A29000696F50696E0000000000000000000000BF +:10A2A00000000000000000000000000000000000AE +:10A2B000000000000000000000000000000000009E +:10A2C000000000007F450008944500084D43555F9D +:10A2D00045787465726E616C5F494E545F436F6E72 +:10A2E0006669670000000000000000000000000038 +:10A2F000000000000000000000000000000000005E +:10A30000000000000000000000000000954500086B +:10A31000344600084D43555F436865636B50726F68 +:10A320007879494E54494F000000000000000000B9 +:10A33000000000000000000000000000000000001D +:10A34000000000000000000000000000000000000D +:10A3500000000000354600083E4600084D43555FAA +:10A3600041637469766174650000000000000000BC +:10A3700000000000000000000000000000000000DD +:10A3800000000000000000000000000000000000CD +:10A390000000000000000000000000003F46000830 +:10A3A000624600084D43555F436865636B526573B1 +:10A3B00065740000000000000000000000000000C4 +:10A3C000000000000000000000000000000000008D +:10A3D000000000000000000000000000000000007D +:10A3E00000000000634600080C4700084D43555F1D +:10A3F00053657452544354696D65000000000000B9 +:10A40000000000000000000000000000000000004C +:10A41000000000000000000000000000000000003C +:10A420000000000000000000000000000D470008D0 +:10A430009C4700084D43555F476574525443546927 +:10A440006D6500000000000000000000000000003A +:10A4500000000000000000000000000000000000FC +:10A4600000000000000000000000000000000000EC +:10A47000000000009D470008044800086D6B7469E7 +:10A480006D650000000000000000000000000000FA +:10A4900000000000000000000000000000000000BC +:10A4A00000000000000000000000000000000000AC +:10A4B0000000000000000000000000000548000847 +:10A4C000644800087274635F746D5F746F5F7469D1 +:10A4D0006D650000000000000000000000000000AA +:10A4E000000000000000000000000000000000006C +:10A4F000000000000000000000000000000000005C +:10A500000000000065480008884800084D43555F7A +:10A5100047657454696D655374616D700000000087 +:10A52000000000000000000000000000000000002B +:10A53000000000000000000000000000000000001B +:10A540000000000000000000000000008948000832 +:10A55000704900085F5F61656162695F6D656D6389 +:10A560006C723400000000000000000000000000D9 +:10A5700000000000000000000000000000000000DB +:10A5800000000000000000000000000000000000CB +:10A5900000000000714900087849000876736E7069 +:10A5A00072696E7466000000000000000000000088 +:10A5B000000000000000000000000000000000009B +:10A5C000000000000000000000000000000000008B +:10A5D00000000000000000000000000079490008B1 +:10A5E000B44900087374726C656E000000000000CE +:10A5F000000000000000000000000000000000005B +:10A60000000000000000000000000000000000004A +:10A61000000000000000000000000000000000003A +:10A6200000000000B5490008EC4900084F535F45A1 +:10A6300072726F7200000000000000000000000055 +:10A64000000000000000000000000000000000000A +:10A6500000000000000000000000000000000000FA +:10A66000000000000000000000000000ED490008AC +:10A67000104A00084F535F457863657074696F6EC8 +:10A6800000000000000000000000000000000000CA +:10A6900000000000000000000000000000000000BA +:10A6A00000000000000000000000000000000000AA +:10A6B00000000000114A0008114A000850656E644D +:10A6C00053565F48616E646C6572000000000000C4 +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000000000006A +:10A6F000000000000000000000000000114A0008F7 +:10A700006A4A00084F535F53746172745461736BEB +:10A710000000000000000000000000000000000039 +:10A720000000000000000000000000000000000029 +:10A730000000000000000000000000000000000019 +:10A74000000000006B4A0008744A00084F535F5431 +:10A7500061736B456E6473556E657870656374657F +:10A76000646C7900000000000000000000000000A0 +:10A7700000000000000000000000000000000000D9 +:10A78000000000000000000000000000754A000802 +:10A79000764A00084F535F537461727441534D0001 +:10A7A00000000000000000000000000000000000A9 +:10A7B0000000000000000000000000000000000099 +:10A7C0000000000000000000000000000000000089 +:10A7D00000000000774A00089A4A00084F535F5370 +:10A7E000776974636800000000000000000000004A +:10A7F0000000000000000000000000000000000059 +:10A800000000000000000000000000000000000048 +:10A810000000000000000000000000009B4A00084B +:10A82000A84A00084F535F537769746368416674A0 +:10A8300065724953525F436F727465784D344600B8 +:10A840000000000000000000000000000000000008 +:10A8500000000000000000000000000000000000F8 +:10A8600000000000A94A0008B24A00084F535F5395 +:10A87000776974636846726F6D496E7400000000FA +:10A8800000000000000000000000000000000000C8 +:10A8900000000000000000000000000000000000B8 +:10A8A000000000000000000000000000B34A0008A3 +:10A8B000BA4A00084F535F456E61626C65496E7419 +:10A8C0000000000000000000000000000000000088 +:10A8D0000000000000000000000000000000000078 +:10A8E0000000000000000000000000000000000068 +:10A8F00000000000BB4A0008C64A00084F535F44EE +:10A90000697361626C65496E7400000000000000AC +:10A910000000000000000000000000000000000037 +:10A920000000000000000000000000000000000027 +:10A93000000000000000000000000000C74A0008FE +:10A94000F44A00086D656D63707900000000000036 +:10A9500000000000000000000000000000000000F7 +:10A9600000000000000000000000000000000000E7 +:10A9700000000000000000000000000000000000D7 +:10A9800000000000F54A0008004B00085F5F6765A3 +:10A99000745F785053520000000000000000000077 +:10A9A00000000000000000000000000000000000A7 +:10A9B0000000000000000000000000000000000097 +:10A9C000000000000000000000000000014B000833 +:10A9D000064B00084E5649435F53797374656D52B8 +:10A9E00065736574000000000000000000000000B6 +:10A9F0000000000000000000000000000000000057 +:10AA00000000000000000000000000000000000046 +:10AA100000000000074B0008224B00085F5F4973ED +:10AA20004D617463686564426974730000000000DE +:10AA30000000000000000000000000000000000016 +:10AA40000000000000000000000000000000000006 +:10AA5000000000000000000000000000234B000880 +:10AA60007C4B00085F5F4765744272616E636849A2 +:10AA70006E737472756374696F6E5061747465720D +:10AA80006E00000000000000000000000000000058 +:10AA900000000000000000000000000000000000B6 +:10AAA000000000007D4B0008864B00085F5F436894 +:10AAB00065636B436F64655661696C6452616E6770 +:10AAC0006500000000000000000000000000000021 +:10AAD0000000000000000000000000000000000076 +:10AAE000000000000000000000000000874B00088C +:10AAF000984B00085F5F4973507265764272616ED1 +:10AB00006368496E737472756374696F6E000000D8 +:10AB10000000000000000000000000000000000035 +:10AB20000000000000000000000000000000000025 +:10AB300000000000994B0008E64B00085F5F436F80 +:10AB40006E7665727441646472546F53796D626F8E +:10AB50006C00000000000000000000000000000089 +:10AB600000000000000000000000000000000000E5 +:10AB7000000000000000000000000000E74B00089B +:10AB80005A4C00085F5F46696C6C53796D626F6C5C +:10AB90004E616D6500000000000000000000000034 +:10ABA00000000000000000000000000000000000A5 +:10ABB0000000000000000000000000000000000095 +:10ABC000000000005B4C0008AA4C00085F5F47656E +:10ABD0007443616C6C537461636B496E666F000003 +:10ABE0000000000000000000000000000000000065 +:10ABF0000000000000000000000000000000000055 +:10AC0000000000000000000000000000AB4C000845 +:10AC1000FC4C00085F5F4D616B654661756C744369 +:10AC2000616C6C537461636B496E666F0000000069 +:10AC30000000000000000000000000000000000014 +:10AC40000000000000000000000000000000000004 +:10AC500000000000FD4C0008744D00085F5F577253 +:10AC60006974654D756C7469427974650000000003 +:10AC700000000000000000000000000000000000D4 +:10AC800000000000000000000000000000000000C4 +:10AC9000000000000000000000000000754D0008EA +:10ACA000C04D00085F5F577269746543616C6C53F7 +:10ACB0007461636B496E666F000000000000000065 +:10ACC0000000000000000000000000000000000084 +:10ACD0000000000000000000000000000000000074 +:10ACE00000000000C14D0008644E00085F5F536122 +:10ACF00076654661756C7450657269436F6E7465F4 +:10AD00007874000000000000000000000000000057 +:10AD10000000000000000000000000000000000033 +:10AD2000000000000000000000000000654E000868 +:10AD3000184F00085F5F536176654661756C744318 +:10AD40006F7265436F6E74657874000000000000D8 +:10AD500000000000000000000000000000000000F3 +:10AD600000000000000000000000000000000000E3 +:10AD700000000000194F0008A44F000843726173DF +:10AD8000685F44756D705F536176655F4C6F6700F7 +:10AD900000000000000000000000000000000000B3 +:10ADA00000000000000000000000000000000000A3 +:10ADB000000000000000000000000000A54F000897 +:10ADC000D24F000843726173685F44756D705F53C2 +:10ADD000746F72655F50726F63657373000000007B +:10ADE0000000000000000000000000000000000063 +:10ADF0000000000000000000000000000000000053 +:10AE000000000000D34F00085C50000843726173DB +:10AE1000685F44756D705F464C4153485F455241D1 +:10AE2000534500000000000000000000000000008A +:10AE30000000000000000000000000000000000012 +:10AE40000000000000000000000000005D5000084D +:10AE50009450000843726173685F44756D705F536E +:10AE600065745F464C414700000000000000000090 +:10AE700000000000000000000000000000000000D2 +:10AE800000000000000000000000000000000000C2 +:10AE900000000000955000080451000843726173DF +:10AEA000685F44756D705F436C6561725F464C41CD +:10AEB000470000000000000000000000000000004B +:10AEC0000000000000000000000000000000000082 +:10AED0000000000000000000000000000551000814 +:10AEE0002051000843726173685F44756D705F4361 +:10AEF0006865636B5F464C4147000000000000003E +:10AF00000000000000000000000000000000000041 +:10AF10000000000000000000000000000000000031 +:10AF20000000000021510008345100084372617391 +:10AF3000685F44756D705F457863657074696F6EA6 +:10AF40005F47656E657261746F72000000000000FB +:10AF500000000000000000000000000000000000F1 +:10AF60000000000000000000000000003551000853 +:10AF70005651000843726173685F44756D705F4598 +:10AF80007863657074696F6E5F47656E6572617432 +:10AF90006F7232000000000000000000000000009E +:10AFA00000000000000000000000000000000000A1 +:10AFB000000000005751000862510008437261739D +:10AFC000685F44756D705F53544152545F50524FE7 +:10AFD0004345535300000000000000000000000043 +:10AFE0000000000000000000000000000000000061 +:10AFF0000000000000000000000000006351000895 +:10B00000D051000843726173685F44756D705F448E +:10B01000554D4D595F50524F43455353000000006A +:10B020000000000000000000000000000000000020 +:10B030000000000000000000000000000000000010 +:10B0400000000000D1510008EE5100084372617306 +:10B05000685F44756D705F456E61626C65426163E7 +:10B060006B5570526567697374657200000000006B +:10B0700000000000000000000000000000000000D0 +:10B08000000000000000000000000000EF51000878 +:10B090000C52000843726173685F44756D705F44C1 +:10B0A000697361626C654261636B55705265676973 +:10B0B00073746572000000000000000000000000D2 +:10B0C0000000000000000000000000000000000080 +:10B0D000000000000D5200082A52000843726173FC +:10B0E000685F44756D705F436865636B4261636B55 +:10B0F0005570526567697374657200000000000046 +:10B10000000000000000000000000000000000003F +:10B110000000000000000000000000002B520008AA +:10B12000545300085F4F535F446F525200000000B9 +:10B13000000000000000000000000000000000000F +:10B1400000000000000000000000000000000000FF +:10B1500000000000000000000000000000000000EF +:10B160000000000055530008D05300085F54696385 +:10B170006B537465700000000000000000000000C8 +:10B1800000000000000000000000000000000000BF +:10B1900000000000000000000000000000000000AF +:10B1A000000000000000000000000000D153000873 +:10B1B000505400085F436865636B44656C61797344 +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E000000000000000000000000000000000005F +:10B1F0000000000051540008C85400084F535F433A +:10B2000068616E67655461736B5F5646500000005D +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000000000001E +:10B23000000000000000000000000000C9540008E9 +:10B24000A85600084F535F41737365727449535297 +:10B250004F725461736B000000000000000000009A +:10B2600000000000000000000000000000000000DE +:10B2700000000000000000000000000000000000CE +:10B2800000000000A9560008F85600084F535F411F +:10B2900073736572745461736B4D6F646500000065 +:10B2A000000000000000000000000000000000009E +:10B2B000000000000000000000000000000000008E +:10B2C000000000000000000000000000F956000827 +:10B2D000425700084F535F41737365727443505572 +:10B2E000496E4953524D6F64650000000000000034 +:10B2F000000000000000000000000000000000004E +:10B30000000000000000000000000000000000003D +:10B3100000000000435700087A5700084F535F4C65 +:10B3200065617665526567696F6E00000000000018 +:10B33000000000000000000000000000000000000D +:10B3400000000000000000000000000000000000FD +:10B350000000000000000000000000007B57000813 +:10B36000F25700084F535F4D616B655461736B5228 +:10B37000656164790000000000000000000000002A +:10B3800000000000000000000000000000000000BD +:10B3900000000000000000000000000000000000AD +:10B3A00000000000F3570008B05800084F535F49F1 +:10B3B0006E736572745461736B00000000000000CE +:10B3C000000000000000000000000000000000007D +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000B15800084C +:10B3F000265900084F535F44656163746976617430 +:10B400006564000000000000000000000000000073 +:10B41000000000000000000000000000000000002C +:10B42000000000000000000000000000000000001C +:10B4300000000000275900085E5900084F535F497B +:10B440006E69744B65726E5F5646500000000000D6 +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B470000000000000000000000000005F5900080C +:10B48000B05900085F5F6C6973745F6164640000A9 +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B000000000000000000000000000000000008C +:10B4C00000000000B1590008BA5900086C69737493 +:10B4D0005F616464000000000000000000000000E4 +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000000000004C +:10B50000000000000000000000000000BB5900081F +:10B51000BE5900085F5F6C6973745F64656C0000FE +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B5400000000000000000000000000000000000FB +:10B5500000000000BF590008C45900086C697374EA +:10B560005F64656C00000000000000000000000047 +:10B5700000000000000000000000000000000000CB +:10B5800000000000000000000000000000000000BB +:10B59000000000000000000000000000C559000885 +:10B5A000CA59000866696E645F667265715F636C94 +:10B5B00069656E74000000000000000000000000DB +:10B5C000000000000000000000000000000000007B +:10B5D000000000000000000000000000000000006B +:10B5E00000000000CB590008825A000864656C5FB7 +:10B5F000667265715F636C69656E740000000000BF +:10B60000000000000000000000000000000000003A +:10B61000000000000000000000000000000000002A +:10B62000000000000000000000000000835A000835 +:10B63000E45A00086164645F667265715F636C69F7 +:10B64000656E7400000000000000000000000000B3 +:10B6500000000000000000000000000000000000EA +:10B6600000000000000000000000000000000000DA +:10B6700000000000E55A0008665B000872656D6F07 +:10B6800076655F667265715F636C69656E740000F4 +:10B6900000000000000000000000000000000000AA +:10B6A000000000000000000000000000000000009A +:10B6B000000000000000000000000000675B0008C0 +:10B6C000EE5B000873686F756C645F736B69700084 +:10B6D000000000000000000000000000000000006A +:10B6E000000000000000000000000000000000005A +:10B6F000000000000000000000000000000000004A +:10B7000000000000EF5B00082A5C000861667465B9 +:10B71000725F6F70656E5F64656661756C74000062 +:10B720000000000000000000000000000000000019 +:10B730000000000000000000000000000000000009 +:10B740000000000000000000000000002B5C00086A +:10B750004C5C000861667465725F636C6F73655F53 +:10B7600064656661756C74000000000000000000F4 +:10B7700000000000000000000000000000000000C9 +:10B7800000000000000000000000000000000000B9 +:10B79000000000004D5C00086A5C00086E756C6C6F +:10B7A0005F6F7065726174696F6E00000000000069 +:10B7B0000000000000000000000000000000000089 +:10B7C0000000000000000000000000000000000079 +:10B7D0000000000000000000000000006B5C00089A +:10B7E0006E5C0008646F5F6164645F726174650021 +:10B7F0000000000000000000000000000000000049 +:10B800000000000000000000000000000000000038 +:10B810000000000000000000000000000000000028 +:10B82000000000006F5C0008A85C0008646F5F7295 +:10B83000656D6F76655F72617465000000000000E1 +:10B8400000000000000000000000000000000000F8 +:10B8500000000000000000000000000000000000E8 +:10B86000000000000000000000000000A95C0008CB +:10B87000E25C00085F73656C6563745F73616D7093 +:10B880006C696E670000000000000000000000000E +:10B8900000000000000000000000000000000000A8 +:10B8A0000000000000000000000000000000000098 +:10B8B00000000000E35C0008025D00085F73656C37 +:10B8C0006563745F73656E64696E670000000000F5 +:10B8D0000000000000000000000000000000000068 +:10B8E0000000000000000000000000000000000058 +:10B8F000000000000000000000000000035D0008E0 +:10B900002A5D000873656C6563745F6465666175C4 +:10B910006C74000000000000000000000000000047 +:10B920000000000000000000000000000000000017 +:10B930000000000000000000000000000000000007 +:10B94000000000002B5D0008325D00086164645F48 +:10B95000726174655F64656661756C7400000000F7 +:10B9600000000000000000000000000000000000D7 +:10B9700000000000000000000000000000000000C7 +:10B98000000000000000000000000000335D00081F +:10B990003E5D000872656D6F76655F726174655F0C +:10B9A00064656661756C74000000000000000000B2 +:10B9B0000000000000000000000000000000000087 +:10B9C0000000000000000000000000000000000077 +:10B9D000000000003F5D00084A5D00086265666F78 +:10B9E00072655F6F70656E5F636C6F73655F6163D7 +:10B9F00063000000000000000000000000000000E4 +:10BA00000000000000000000000000000000000036 +:10BA10000000000000000000000000004B5D000876 +:10BA20005A5D00086164645F726174655F6163639D +:10BA30005F696E740000000000000000000000005C +:10BA400000000000000000000000000000000000F6 +:10BA500000000000000000000000000000000000E6 +:10BA6000000000005B5D0008645D000872656D6F9A +:10BA700076655F726174655F6163635F696E7400B0 +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000000000000A6 +:10BAA000000000000000000000000000655D0008CC +:10BAB0006E5D00086265666F72655F6F70656E5FD0 +:10BAC0006163745F696E7400000000000000000094 +:10BAD0000000000000000000000000000000000066 +:10BAE0000000000000000000000000000000000056 +:10BAF000000000006F5D0008865D000861667465E7 +:10BB0000725F636C6F73655F6163745F696E74000D +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000000000000015 +:10BB3000000000000000000000000000875D000819 +:10BB4000A25D00086164645F726174655F74656D15 +:10BB50007000000000000000000000000000000075 +:10BB600000000000000000000000000000000000D5 +:10BB700000000000000000000000000000000000C5 +:10BB800000000000A35D0008B65D000872656D6FDF +:10BB900076655F726174655F74656D7000000000AA +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000000000000085 +:10BBC000000000000000000000000000B75D000859 +:10BBD000CA5D000873656C6563745F74656D7000A1 +:10BBE0000000000000000000000000000000000055 +:10BBF0000000000000000000000000000000000045 +:10BC00000000000000000000000000000000000034 +:10BC100000000000CB5D00081E5E000861667465D0 +:10BC2000725F6F70656E5F74656D7000000000007C +:10BC30000000000000000000000000000000000004 +:10BC400000000000000000000000000000000000F4 +:10BC50000000000000000000000000001F5E00085F +:10BC6000285E00086164645F726174655F6261727E +:10BC70006F00000000000000000000000000000055 +:10BC800000000000000000000000000000000000B4 +:10BC900000000000000000000000000000000000A4 +:10BCA00000000000295E0008365E000872656D6FB6 +:10BCB00076655F726174655F6261726F000000009B +:10BCC0000000000000000000000000000000000074 +:10BCD0000000000000000000000000000000000064 +:10BCE000000000000000000000000000375E0008B7 +:10BCF000445E000873656C6563745F6261726F0017 +:10BD00000000000000000000000000000000000033 +:10BD10000000000000000000000000000000000023 +:10BD20000000000000000000000000000000000013 +:10BD300000000000455E0008A25E000861667465B0 +:10BD4000725F6F70656E5F6261726F00000000006D +:10BD500000000000000000000000000000000000E3 +:10BD600000000000000000000000000000000000D3 +:10BD7000000000000000000000000000A35E0008BA +:10BD8000BC5E000861667465725F6F70656E5F6CA3 +:10BD900069676874000000000000000000000000F7 +:10BDA0000000000000000000000000000000000093 +:10BDB0000000000000000000000000000000000083 +:10BDC00000000000BD5E0008CE5E00086164645F94 +:10BDD000726174655F70726F787900000000000016 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000000000000043 +:10BE0000000000000000000000000000CF5E0008FD +:10BE1000D85E000872656D6F76655F726174655FEC +:10BE200070726F78790000000000000000000000D0 +:10BE30000000000000000000000000000000000002 +:10BE400000000000000000000000000000000000F2 +:10BE500000000000D95E0008E25E000861667465BB +:10BE6000725F6F70656E5F70726F787900000000AE +:10BE700000000000000000000000000000000000C2 +:10BE800000000000000000000000000000000000B2 +:10BE9000000000000000000000000000E35E000859 +:10BEA000F45E000861667465725F636C6F73655F52 +:10BEB00070726F7879000000000000000000000040 +:10BEC0000000000000000000000000000000000072 +:10BED0000000000000000000000000000000000062 +:10BEE00000000000F55E0008065F00086164645F02 +:10BEF000726174655F75760000000000000000004C +:10BF00000000000000000000000000000000000031 +:10BF10000000000000000000000000000000000021 +:10BF2000000000000000000000000000075F0008A3 +:10BF3000145F000872656D6F76655F726174655F8E +:10BF40007576000000000000000000000000000006 +:10BF500000000000000000000000000000000000E1 +:10BF600000000000000000000000000000000000D1 +:10BF700000000000155F0008225F000873656C6513 +:10BF800063745F7576000000000000000000000090 +:10BF900000000000000000000000000000000000A1 +:10BFA0000000000000000000000000000000000091 +:10BFB000000000000000000000000000235F0008F7 +:10BFC000745F000872656769737465725F73656E8C +:10BFD000736F72000000000000000000000000000D +:10BFE0000000000000000000000000000000000051 +:10BFF0000000000000000000000000000000000041 +:10C0000000000000755F00086662000853485F5337 +:10C01000435F4472697665725F46756E6374696FDB +:10C020006E5F496E697400000000000000000000AF +:10C030000000000000000000000000000000000000 +:10C04000000000000000000000000000676200081F +:10C050000864000853485F5353504E4D5F47657462 +:10C06000476C616E63655669657753746174757367 +:10C0700000000000000000000000000000000000C0 +:10C0800000000000000000000000000000000000B0 +:10C0900000000000096400081064000853485F5362 +:10C0A000455F47657453656E736F727300000000DF +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000000000000070 +:10C0D00000000000000000000000000011640008E3 +:10C0E000E06400087369676E616C5F6576656E7405 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C11000000000000000000000000000000000001F +:10C1200000000000E16400084065000874785F6268 +:10C1300075666665725F6F766572666C6F77000014 +:10C1400000000000000000000000000000000000EF +:10C1500000000000000000000000000000000000DF +:10C160000000000000000000000000004165000821 +:10C17000506500087374616D705F61705F73796EF4 +:10C18000635F74696D657374616D70000000000019 +:10C19000000000000000000000000000000000009F +:10C1A000000000000000000000000000000000008F +:10C1B0000000000051650008686500087374616D37 +:10C1C000705F74696D657374616D700000000000CC +:10C1D000000000000000000000000000000000005F +:10C1E000000000000000000000000000000000004F +:10C1F0000000000000000000000000006965000869 +:10C20000766500086765745F63757272656E745F4A +:10C2100074696D657374616D70000000000000004A +:10C22000000000000000000000000000000000000E +:10C2300000000000000000000000000000000000FE +:10C2400000000000776500087E6500086170706579 +:10C250006E645F74696D657374616D7000000000D9 +:10C2600000000000000000000000000000000000CE +:10C2700000000000000000000000000000000000BE +:10C280000000000000000000000000007F650008C2 +:10C290009A650008617070656E645F6D6574615FBA +:10C2A00064617461000000000000000000000000F4 +:10C2B000000000000000000000000000000000007E +:10C2C000000000000000000000000000000000006E +:10C2D000000000009B650008BC6500086170706587 +:10C2E0006E645F6279706173735F64617461000092 +:10C2F000000000000000000000000000000000003E +:10C30000000000000000000000000000000000002D +:10C31000000000000000000000000000BD650008F3 +:10C320002A660008617070656E645F62797061737F +:10C33000735F646174615F73657269616C000000B2 +:10C3400000000000000000000000000000000000ED +:10C3500000000000000000000000000000000000DD +:10C36000000000002B6600085666000861707065CA +:10C370006E645F6279706173735F646174615F7230 +:10C380006F756E64000000000000000000000000F7 +:10C39000000000000000000000000000000000009D +:10C3A00000000000000000000000000057660008C8 +:10C3B0007E66000870726F636565645F746F5F6EA0 +:10C3C000657874000000000000000000000000001C +:10C3D000000000000000000000000000000000005D +:10C3E000000000000000000000000000000000004D +:10C3F000000000007F6600089A6600087061636BA9 +:10C400005F62617463685F646174610000000000D2 +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000000000000C +:10C430000000000000000000000000009B660008F3 +:10C44000D2660008666C7573685F62617463685FCA +:10C450006461746100000000000000000000000042 +:10C4600000000000000000000000000000000000CC +:10C4700000000000000000000000000000000000BC +:10C4800000000000D3660008F0660008636F6C6C63 +:10C490006563745F73656E736F725F64617461006E +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000000000007C +:10C4C000000000000000000000000000F16600080D +:10C4D00038680008636F6C6C6563745F62797061C3 +:10C4E00073735F646174610000000000000000006D +:10C4F000000000000000000000000000000000003C +:10C50000000000000000000000000000000000002B +:10C5100000000000396800085868000853485F4868 +:10C52000415F55706461746550726F78696D6974AC +:10C530007953656E736F72494E54446174610000A3 +:10C5400000000000000000000000000000000000EB +:10C550000000000000000000000000005968000812 +:10C56000CA680008696E697469616C697A655F6C94 +:10C5700069625F6865616465720000000000000028 +:10C5800000000000000000000000000000000000AB +:10C59000000000000000000000000000000000009B +:10C5A00000000000CB680008D4680008696E73655D +:10C5B00072745F6C69625F68656164657200000037 +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000D568000806 +:10C5F00002690008636F6C6C6563745F6C696272DA +:10C600006172795F646174610000000000000000E5 +:10C61000000000000000000000000000000000001A +:10C62000000000000000000000000000000000000A +:10C63000000000000369000878700008636F6C6CEC +:10C640006563745F64656275675F6461746100004F +:10C6500000000000000000000000000000000000DA +:10C6600000000000000000000000000000000000CA +:10C6700000000000000000000000000079700008C9 +:10C6800030710008636865636B5F74696D655F7323 +:10C69000796E630000000000000000000000000050 +:10C6A000000000000000000000000000000000008A +:10C6B000000000000000000000000000000000007A +:10C6C000000000003171000856710008666C757337 +:10C6D000685F74785F6275666665720000000000CE +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C700000000000000000000000000005771000859 +:10C710007E71000873656E645F6269675F72656150 +:10C72000647900000000000000000000000000002C +:10C7300000000000000000000000000000000000F9 +:10C7400000000000000000000000000000000000E9 +:10C75000000000007F710008C271000873656E64FC +:10C760005F72657365745F7369676E616C0000006A +:10C7700000000000000000000000000000000000B9 +:10C7800000000000000000000000000000000000A9 +:10C79000000000000000000000000000C37100085D +:10C7A000E87100086761746865725F74656D705F39 +:10C7B0006C6F6773000000000000000000000000C4 +:10C7C0000000000000000000000000000000000069 +:10C7D0000000000000000000000000000000000059 +:10C7E00000000000E9710008B672000873656E640D +:10C7F0005F74656D705F6C6F677300000000000010 +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000000000000018 +:10C82000000000000000000000000000B7720008D7 +:10C830002C73000870726F636573735F777269742D +:10C84000655F636F6D6D616E640000000000000045 +:10C8500000000000000000000000000000000000D8 +:10C8600000000000000000000000000000000000C8 +:10C87000000000002D7300089075000870726F634F +:10C880006573735F726561645F636F6D6D616E6424 +:10C890000000000000000000000000000000000098 +:10C8A0000000000000000000000000000000000088 +:10C8B000000000000000000000000000917500086A +:10C8C0005880000853485F4C4D5F436F6D6D6F6E2D +:10C8D00046756E6374696F6E5F4765744C6962720A +:10C8E0006172794D6574686F64416E6456617269F6 +:10C8F00061626C65496E666F5461626C6500000030 +:10C9000000000000598000085C80000853485F4C1C +:10C910004D5F53656E736F724D616E616765720036 +:10C920000000000000000000000000000000000007 +:10C9300000000000000000000000000000000000F7 +:10C940000000000000000000000000005D80000802 +:10C950001A81000853485F4C4D5F436F6D6D6F6ED9 +:10C9600046756E6374696F6E5F4765744375727266 +:10C97000656E7453656E736F72446174610000007C +:10C9800000000000000000000000000000000000A7 +:10C99000000000001B8100081E81000853485F4C06 +:10C9A0004D5F436F6D6D6F6E46756E6374696F6E2C +:10C9B0005F4368616E67654C69627261727952614A +:10C9C000746500000000000000000000000000008E +:10C9D0000000000000000000000000001F810008AF +:10C9E0005E81000853485F4C4D5F436F6D6D6F6E05 +:10C9F00046756E6374696F6E5F4E6F7469667953C6 +:10CA0000797374656D54696D65536574546F5065C1 +:10CA1000646F4D6574657200000000000000000046 +:10CA2000000000005F8100087081000853485F4CDF +:10CA30004D5F436F6D6D6F6E46756E6374696F6E9B +:10CA40005F5265717565737443757272656E744972 +:10CA50006E666F0000000000000000000000000093 +:10CA600000000000000000000000000071810008CC +:10CA7000B881000853485F4C4D5F436F6D6D6F6E1A +:10CA800046756E6374696F6E5F4E6F746966795335 +:10CA9000797374656D506F736974696F6E0000000F +:10CAA0000000000000000000000000000000000086 +:10CAB00000000000B9810008E081000853485F4C85 +:10CAC0004D5F436F6D6D6F6E46756E6374696F6E0B +:10CAD0005F436865636B4C69627261727953656E1E +:10CAE000736F724F6E000000000000000000000035 +:10CAF000000000000000000000000000E1810008CC +:10CB00000482000853485F4C4D5F45786563757437 +:10CB1000654C6962726172790000000000000000DB +:10CB20000000000000000000000000000000000005 +:10CB300000000000000000000000000000000000F5 +:10CB400000000000058200086A83000853485F4C1B +:10CB50004D5F456D70747946756E6374696F6E00D4 +:10CB600000000000000000000000000000000000C5 +:10CB700000000000000000000000000000000000B5 +:10CB80000000000000000000000000006B830008AF +:10CB90006E83000853485F4C4D5F456D7074795F3C +:10CBA00054656D706C6174655F53746172745F4637 +:10CBB000756E6374696F6E00000000000000000075 +:10CBC0000000000000000000000000000000000065 +:10CBD000000000006F8300087683000853485F4C14 +:10CBE0004D5F456D7074795F54656D706C617465EF +:10CBF0005F50726F636573735F46756E6374696FC0 +:10CC00006E000000000000000000000000000000B6 +:10CC10000000000000000000000000007783000812 +:10CC20007A83000853485F4C4D5F456D7074795F9F +:10CC300054656D706C6174655F436865636B5F46D6 +:10CC4000756E6374696F6E000000000000000000E4 +:10CC500000000000000000000000000000000000D4 +:10CC6000000000007B8300087E83000853485F4C6F +:10CC70004D5F456D7074795F54656D706C6174655E +:10CC80005F417070656E644D53475F46756E6374A7 +:10CC9000696F6E000000000000000000000000004E +:10CCA0000000000000000000000000007F8300087A +:10CCB000548400085F5F61656162695F6632640089 +:10CCC0000000000000000000000000000000000064 +:10CCD0000000000000000000000000000000000054 +:10CCE0000000000000000000000000000000000044 +:10CCF0000000000055840008A48400085F5F61659F +:10CD00006162695F6432660000000000000000009C +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000000000000003 +:10CD3000000000000000000000000000A5840008C2 +:10CD4000348500085F5F6961725F65646F6D000024 +:10CD500000000000000000000000000000000000D3 +:10CD600000000000000000000000000000000000C3 +:10CD700000000000000000000000000000000000B3 +:10CD80000000000035850008408500085243435FDD +:10CD90004C5345436F6E6669670000000000000059 +:10CDA0000000000000000000000000000000000083 +:10CDB0000000000000000000000000000000000073 +:10CDC0000000000000000000000000004185000895 +:10CDD000608500085243435F4C5349436D64000033 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE00000000000000000000000000000000000022 +:10CE10000000000061850008668500085243435FFA +:10CE2000476574436C6F636B7346726571000000F5 +:10CE300000000000000000000000000000000000F2 +:10CE400000000000000000000000000000000000E2 +:10CE500000000000000000000000000067850008DE +:10CE6000D88500085243435F525443434C4B436FB1 +:10CE70006E6669670000000000000000000000000E +:10CE800000000000000000000000000000000000A2 +:10CE90000000000000000000000000000000000092 +:10CEA00000000000D9850008FE8500085243435F5A +:10CEB000525443434C4B436D64000000000000009B +:10CEC0000000000000000000000000000000000062 +:10CED0000000000000000000000000000000000052 +:10CEE000000000000000000000000000FF850008B6 +:10CEF000048600085243435F4261636B757052655C +:10CF0000736574436D6400000000000000000000C1 +:10CF10000000000000000000000000000000000011 +:10CF20000000000000000000000000000000000001 +:10CF300000000000058600080A8600085243435F8F +:10CF400041484231506572697068436C6F636B434E +:10CF50006D64000000000000000000000000000000 +:10CF600000000000000000000000000000000000C1 +:10CF70000000000000000000000000000B86000818 +:10CF8000208600085243435F415042315065726928 +:10CF90007068436C6F636B436D64000000000000B9 +:10CFA0000000000000000000000000000000000081 +:10CFB0000000000000000000000000000000000071 +:10CFC0000000000021860008368600085243435FB7 +:10CFD00041504232506572697068436C6F636B43B5 +:10CFE0006D64000000000000000000000000000070 +:10CFF0000000000000000000000000000000000031 +:10D00000000000000000000000000000378600085B +:10D010004C8600085243435F414842315065726973 +:10D0200070685265736574436D6400000000000011 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000000000000000000000000000E0 +:10D05000000000004D860008628600085243435FCE +:10D06000415042315065726970685265736574430E +:10D070006D640000000000000000000000000000DF +:10D0800000000000000000000000000000000000A0 +:10D09000000000000000000000000000638600089F +:10D0A000788600085243435F4150423250657269AE +:10D0B00070685265736574436D6400000000000081 +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E00000000000798600088E8600085243435FE6 +:10D0F0004954436F6E66696700000000000000003D +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000000000000F +:10D120000000000000000000000000008F860008E2 +:10D13000A48600085243435F476574466C61675399 +:10D1400074617475730000000000000000000000AE +:10D1500000000000000000000000000000000000CF +:10D1600000000000000000000000000000000000BF +:10D1700000000000A5860008C88600085243435FEF +:10D18000436C656172466C6167000000000000003E +:10D19000000000000000000000000000000000008F +:10D1A000000000000000000000000000000000007F +:10D1B000000000000000000000000000C986000818 +:10D1C000D48600085243435F4765744954537461E1 +:10D1D00074757300000000000000000000000000F3 +:10D1E000000000000000000000000000000000003F +:10D1F000000000000000000000000000000000002F +:10D2000000000000D5860008E48600085243435F12 +:10D21000436C656172495450656E64696E6742691A +:10D22000740000000000000000000000000000008A +:10D2300000000000000000000000000000000000EE +:10D24000000000000000000000000000E58600086B +:10D250003C8700084750494F5F4465496E69740038 +:10D2600000000000000000000000000000000000BE +:10D2700000000000000000000000000000000000AE +:10D28000000000000000000000000000000000009E +:10D29000000000003D870008F48700084750494F10 +:10D2A0005F496E697400000000000000000000008B +:10D2B000000000000000000000000000000000006E +:10D2C000000000000000000000000000000000005E +:10D2D000000000000000000000000000F5870008CA +:10D2E000688800084750494F5F53747275637449EA +:10D2F0006E697400000000000000000000000000E3 +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D3200000000000698800087A8800084750494FCB +:10D330005F52656164496E707574446174614269DD +:10D340007400000000000000000000000000000069 +:10D3500000000000000000000000000000000000CD +:10D360000000000000000000000000007B880008B2 +:10D37000888800084750494F5F5365744269747349 +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A000000000000000000000000000000000007D +:10D3B00000000000898800088C8800084750494F09 +:10D3C0005F52657365744269747300000000000069 +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000000000003D +:10D3F0000000000000000000000000008D88000810 +:10D40000908800084750494F5F50696E4146436F0E +:10D410006E66696700000000000000000000000068 +:10D4200000000000000000000000000000000000FC +:10D4300000000000000000000000000000000000EC +:10D440000000000091880008B88800084932435F56 +:10D450004465496E6974000000000000000000008F +:10D4600000000000000000000000000000000000BC +:10D4700000000000000000000000000000000000AC +:10D48000000000000000000000000000B988000853 +:10D49000168900084932435F496E69740000000034 +:10D4A000000000000000000000000000000000007C +:10D4B000000000000000000000000000000000006C +:10D4C000000000000000000000000000000000005C +:10D4D0000000000017890008DC8900084932435F1A +:10D4E000436D640000000000000000000000000028 +:10D4F000000000000000000000000000000000002C +:10D50000000000000000000000000000000000001B +:10D51000000000000000000000000000DD8900089D +:10D52000F48900084932435F47656E65726174652E +:10D53000535441525400000000000000000000005D +:10D5400000000000000000000000000000000000DB +:10D5500000000000000000000000000000000000CB +:10D5600000000000F58900080C8A00084932435F7A +:10D5700047656E657261746553544F50000000003A +:10D58000000000000000000000000000000000009B +:10D59000000000000000000000000000000000008B +:10D5A0000000000000000000000000000D8A0008DC +:10D5B000248A00084932435F53656E643762697498 +:10D5C0004164647265737300000000000000000095 +:10D5D000000000000000000000000000000000004B +:10D5E000000000000000000000000000000000003B +:10D5F00000000000258A0008368A00084932435F8F +:10D6000041636B6E6F776C65646765436F6E6669C7 +:10D6100067000000000000000000000000000000A3 +:10D6200000000000000000000000000000000000FA +:10D63000000000000000000000000000378A000821 +:10D640004E8A00084932435F536F66747761726592 +:10D650005265736574436D640000000000000000B3 +:10D6600000000000000000000000000000000000BA +:10D6700000000000000000000000000000000000AA +:10D68000000000004F8A0008648A00084932435FA6 +:10D69000476574466C61675374617475730000006C +:10D6A000000000000000000000000000000000007A +:10D6B000000000000000000000000000000000006A +:10D6C000000000000000000000000000658A000863 +:10D6D000A08A00085350495F4932535F4465496E40 +:10D6E000697400000000000000000000000000005D +:10D6F000000000000000000000000000000000002A +:10D700000000000000000000000000000000000019 +:10D7100000000000A18A0008FE8A00085350495FFB +:10D72000496E697400000000000000000000000065 +:10D7300000000000000000000000000000000000E9 +:10D7400000000000000000000000000000000000D9 +:10D75000000000000000000000000000FF8A000838 +:10D76000448B00085350495F436D64000000000083 +:10D7700000000000000000000000000000000000A9 +:10D780000000000000000000000000000000000099 +:10D790000000000000000000000000000000000089 +:10D7A00000000000458B00085C8B00085350495F67 +:10D7B0004932535F444D41436D6400000000000056 +:10D7C0000000000000000000000000000000000059 +:10D7D0000000000000000000000000000000000049 +:10D7E0000000000000000000000000005D8B000849 +:10D7F000708B00085350495F4932535F4765744648 +:10D800006C61675374617475730000000000000060 +:10D810000000000000000000000000000000000008 +:10D8200000000000000000000000000000000000F8 +:10D8300000000000718B0008808B0008444D415FA0 +:10D840004465496E6974000000000000000000009B +:10D8500000000000000000000000000000000000C8 +:10D8600000000000000000000000000000000000B8 +:10D87000000000000000000000000000818B000894 +:10D88000888C0008444D415F496E697400000000B7 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B0000000000000000000000000000000000068 +:10D8C00000000000898C0008D68C0008444D415FA0 +:10D8D000436D640000000000000000000000000034 +:10D8E0000000000000000000000000000000000038 +:10D8F0000000000000000000000000000000000028 +:10D90000000000000000000000000000D78C0008AC +:10D91000EC8C0008444D415F4D656D6F7279546128 +:10D9200072676574436F6E666967000000000000EF +:10D9300000000000000000000000000000000000E7 +:10D9400000000000000000000000000000000000D7 +:10D9500000000000ED8C0008F88C0008444D415F89 +:10D96000476574436D6453746174757300000000FF +:10D9700000000000000000000000000000000000A7 +:10D980000000000000000000000000000000000097 +:10D99000000000000000000000000000F98C0008FA +:10D9A000008D0008444D415F476574466C616753C4 +:10D9B0007461747573000000000000000000000036 +:10D9C0000000000000000000000000000000000057 +:10D9D0000000000000000000000000000000000047 +:10D9E00000000000018D0008268D0008444D415FB5 +:10D9F000436C656172466C616700000000000000C6 +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000000000000006 +:10DA2000000000000000000000000000278D00083A +:10DA3000A88D00085057525F4261636B7570416357 +:10DA400063657373436D6400000000000000000014 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000000000000000000000000000B6 +:10DA700000000000A98D0008AE8D00085057525FCD +:10DA8000466C617368506F776572446F776E436D53 +:10DA90006400000000000000000000000000000022 +:10DAA0000000000000000000000000000000000076 +:10DAB000000000000000000000000000AF8D000822 +:10DAC000BC8D00085254435F496E69740000000029 +:10DAD0000000000000000000000000000000000046 +:10DAE0000000000000000000000000000000000036 +:10DAF0000000000000000000000000000000000026 +:10DB000000000000BD8D0008028E00085254435FE3 +:10DB1000456E746572496E69744D6F6465000000EE +:10DB200000000000000000000000000000000000F5 +:10DB300000000000000000000000000000000000E5 +:10DB4000000000000000000000000000038E00083C +:10DB5000408E00085254435F45786974496E697479 +:10DB60004D6F646500000000000000000000000030 +:10DB700000000000000000000000000000000000A5 +:10DB80000000000000000000000000000000000095 +:10DB900000000000418E00084E8E00085254435F82 +:10DBA00057616974466F7253796E6368726F0000D3 +:10DBB0000000000000000000000000000000000065 +:10DBC0000000000000000000000000000000000055 +:10DBD0000000000000000000000000004F8E000860 +:10DBE000908E00085254435F53657454696D65000C +:10DBF0000000000000000000000000000000000025 +:10DC00000000000000000000000000000000000014 +:10DC10000000000000000000000000000000000004 +:10DC200000000000918E00082E8F00085254435FC0 +:10DC300047657454696D6500000000000000000035 +:10DC400000000000000000000000000000000000D4 +:10DC500000000000000000000000000000000000C4 +:10DC60000000000000000000000000002F8F0008EE +:10DC7000788F00085254435F47657453756253654B +:10DC8000636F6E64000000000000000000000000F0 +:10DC90000000000000000000000000000000000084 +:10DCA0000000000000000000000000000000000074 +:10DCB00000000000798F0008828F00085254435FF3 +:10DCC00053657444617465000000000000000000AA +:10DCD0000000000000000000000000000000000044 +:10DCE0000000000000000000000000000000000034 +:10DCF000000000000000000000000000838F00080A +:10DD0000229000085254435F476574446174650073 +:10DD10000000000000000000000000000000000003 +:10DD200000000000000000000000000000000000F3 +:10DD300000000000000000000000000000000000E3 +:10DD400000000000239000086A9000085254435FCE +:10DD500057616B655570436C6F636B436F6E66699B +:10DD6000670000000000000000000000000000004C +:10DD700000000000000000000000000000000000A3 +:10DD80000000000000000000000000006B90000890 +:10DD90008A9000085254435F53657457616B655510 +:10DDA00070436F756E746572000000000000000023 +:10DDB0000000000000000000000000000000000063 +:10DDC0000000000000000000000000000000000053 +:10DDD000000000008B9000089E9000085254435FA2 +:10DDE00057616B655570436D6400000000000000D2 +:10DDF0000000000000000000000000000000000023 +:10DE00000000000000000000000000000000000012 +:10DE10000000000000000000000000009F900008CB +:10DE2000EE9000085254435F577269746542616313 +:10DE30006B7570526567697374657200000000004D +:10DE400000000000000000000000000000000000D2 +:10DE500000000000000000000000000000000000C2 +:10DE600000000000EF900008089100085254435F42 +:10DE7000526561644261636B757052656769737462 +:10DE800065720000000000000000000000000000BB +:10DE90000000000000000000000000000000000082 +:10DEA00000000000000000000000000009910008D0 +:10DEB000229100085254435F53796E6368726F5326 +:10DEC00068696674436F6E66696700000000000051 +:10DED0000000000000000000000000000000000042 +:10DEE0000000000000000000000000000000000032 +:10DEF00000000000239100086A9100085254435F1B +:10DF00004954436F6E66696700000000000000001E +:10DF10000000000000000000000000000000000001 +:10DF200000000000000000000000000000000000F1 +:10DF30000000000000000000000000006B910008DD +:10DF4000A09100085254435F476574466C61675363 +:10DF50007461747573000000000000000000000090 +:10DF600000000000000000000000000000000000B1 +:10DF700000000000000000000000000000000000A1 +:10DF800000000000A1910008B49100085254435FC2 +:10DF90004765744954537461747573000000000040 +:10DFA0000000000000000000000000000000000071 +:10DFB0000000000000000000000000000000000061 +:10DFC000000000000000000000000000B591000803 +:10DFD000DE9100085254435F436C656172495450AE +:10DFE000656E64696E67426974000000000000009D +:10DFF0000000000000000000000000000000000021 +:10E000000000000000000000000000000000000010 +:10E0100000000000DF9100081C9200085254435F8A +:10E0200042797465546F426364320000000000005E +:10E0300000000000000000000000000000000000E0 +:10E0400000000000000000000000000000000000D0 +:10E050000000000000000000000000001D92000809 +:10E06000329200085254435F42636432546F4279E3 +:10E0700074650000000000000000000000000000C7 +:10E080000000000000000000000000000000000090 +:10E090000000000000000000000000000000000080 +:10E0A000000000003392000844920008455854498B +:10E0B0005F496E697400000000000000000000006D +:10E0C0000000000000000000000000000000000050 +:10E0D0000000000000000000000000000000000040 +:10E0E0000000000000000000000000004592000851 +:10E0F000B0920008455854495F47657449545374B9 +:10E100006174757300000000000000000000000052 +:10E1100000000000000000000000000000000000FF +:10E1200000000000000000000000000000000000EF +:10E1300000000000B1920008C892000845585449F8 +:10E140005F436C656172495450656E64696E6742E5 +:10E1500069740000000000000000000000000000E2 +:10E1600000000000000000000000000000000000AF +:10E17000000000000000000000000000C99200083C +:10E18000D89200084E5649435F5072696F726974A5 +:10E190007947726F7570436F6E66696700000000A3 +:10E1A000000000000000000000000000000000006F +:10E1B000000000000000000000000000000000005F +:10E1C00000000000D9920008E29200084E56494330 +:10E1D0005F496E697400000000000000000000004C +:10E1E000000000000000000000000000000000002F +:10E1F000000000000000000000000000000000001F +:10E20000000000000000000000000000E392000891 +:10E21000549300085359534346475F455854494C5B +:10E22000696E65436F6E666967000000000000005C +:10E2300000000000000000000000000000000000DE +:10E2400000000000000000000000000000000000CE +:10E2500000000000559300087C9300084144435F90 +:10E260004465496E69740000000000000000000071 +:10E27000000000000000000000000000000000009E +:10E28000000000000000000000000000000000008E +:10E290000000000000000000000000007D93000866 +:10E2A000969300084144435F496E69740000000082 +:10E2B000000000000000000000000000000000005E +:10E2C000000000000000000000000000000000004E +:10E2D000000000000000000000000000000000003E +:10E2E0000000000097930008D69300084144435F64 +:10E2F000537472756374496E697400000000000005 +:10E30000000000000000000000000000000000000D +:10E3100000000000000000000000000000000000FD +:10E32000000000000000000000000000D79300087B +:10E33000EA9300084144435F436F6D6D6F6E496E11 +:10E3400069740000000000000000000000000000F0 +:10E3500000000000000000000000000000000000BD +:10E3600000000000000000000000000000000000AD +:10E3700000000000EB930008069400084144435F4E +:10E38000436F6D6D6F6E537472756374496E69740B +:10E39000000000000000000000000000000000007D +:10E3A000000000000000000000000000000000006D +:10E3B00000000000000000000000000007940008BA +:10E3C000129400084144435F436D64000000000064 +:10E3D000000000000000000000000000000000003D +:10E3E000000000000000000000000000000000002D +:10E3F000000000000000000000000000000000001D +:10E400000000000013940008289400084144435F72 +:10E41000526567756C61724368616E6E656C436FBF +:10E420006E66696700000000000000000000000048 +:10E4300000000000000000000000000000000000DC +:10E440000000000000000000000000002994000807 +:10E45000A49400084144435F536F6674776172650A +:10E460005374617274436F6E760000000000000008 +:10E47000000000000000000000000000000000009C +:10E48000000000000000000000000000000000008C +:10E4900000000000A5940008AE9400084144435FCA +:10E4A000454F434F6E45616368526567756C617295 +:10E4B0004368616E6E656C436D640000000000008F +:10E4C000000000000000000000000000000000004C +:10E4D000000000000000000000000000AF940008F1 +:10E4E000C49400084144435F476574436F6E76658A +:10E4F0007273696F6E56616C7565000000000000F4 +:10E50000000000000000000000000000000000000B +:10E5100000000000000000000000000000000000FB +:10E5200000000000C5940008DC9400084144435FEB +:10E53000476574466C6167537461747573000000BD +:10E5400000000000000000000000000000000000CB +:10E5500000000000000000000000000000000000BB +:10E56000000000000000000000000000DD94000832 +:10E57000EC9400085F5F61656162695F6C64697655 +:10E580006D6F64000000000000000000000000004B +:10E59000000000000000000000000000000000007B +:10E5A000000000000000000000000000000000006B +:10E5B00000000000ED940008309500085F5F616581 +:10E5C0006162695F756C6469766D6F64000000005C +:10E5D000000000000000000000000000000000003B +:10E5E000000000000000000000000000000000002B +:10E5F000000000000000000000000000319500084D +:10E60000209600085F5F6961725F4D656D73657488 +:10E61000345F776F726400000000000000000000AB +:10E6200000000000000000000000000000000000EA +:10E6300000000000000000000000000000000000DA +:10E640000000000021960008219600085F5F6961C4 +:10E65000725F4D656D736574385F776F726400002B +:10E6600000000000000000000000000000000000AA +:10E67000000000000000000000000000000000009A +:10E6800000000000000000000000000021960008CB +:10E6900024960008456E7465723800000000000082 +:10E6A000000000000000000000000000000000006A +:10E6B000000000000000000000000000000000005A +:10E6C000000000000000000000000000000000004A +:10E6D0000000000025960008549600085F507269FB +:10E6E0006E746646756C6C0000000000000000004F +:10E6F000000000000000000000000000000000001A +:10E700000000000000000000000000000000000009 +:10E710000000000000000000000000005596000806 +:10E720003C9C00085F4C69746F6246756C6C00001D +:10E7300000000000000000000000000000000000D9 +:10E7400000000000000000000000000000000000C9 +:10E7500000000000000000000000000000000000B9 +:10E76000000000003D9C0008509D00085F4C647450 +:10E770006F6246756C6C0000000000000000000035 +:10E780000000000000000000000000000000000089 +:10E790000000000000000000000000000000000079 +:10E7A000000000000000000000000000519D000873 +:10E7B00040A100085F47656E6C6446756C6C000094 +:10E7C0000000000000000000000000000000000049 +:10E7D0000000000000000000000000000000000039 +:10E7E0000000000000000000000000000000000029 +:10E7F0000000000041A10008A2A300085F5075744A +:10E80000636861727346756C6C0000000000000064 +:10E8100000000000000000000000000000000000F8 +:10E8200000000000000000000000000000000000E8 +:10E83000000000000000000000000000A3A300088A +:10E84000ECA30008737072696E746600000000002B +:10E8500000000000000000000000000000000000B8 +:10E8600000000000000000000000000000000000A8 +:10E870000000000000000000000000000000000098 +:10E8800000000000EDA3000820A400085F5F69619C +:10E89000725F756E616C69676E65645F7374726ECA +:10E8A000637079000000000000000000000000001C +:10E8B0000000000000000000000000000000000058 +:10E8C00000000000000000000000000021A400087B +:10E8D0008CA400084F535F476574537461636B42A7 +:10E8E00061736500000000000000000000000000EF +:10E8F0000000000000000000000000000000000018 +:10E900000000000000000000000000000000000007 +:10E91000000000008DA40008A4A400084F535F4726 +:10E920006574537461636B53697A6500000000007D +:10E9300000000000000000000000000000000000D7 +:10E9400000000000000000000000000000000000C7 +:10E95000000000000000000000000000A5A4000866 +:10E96000C0A400084F535F476574537973537461B3 +:10E97000636B42617365000000000000000000004E +:10E980000000000000000000000000000000000087 +:10E990000000000000000000000000000000000077 +:10E9A00000000000C1A40008C4A400084F535F4742 +:10E9B0006574537973537461636B53697A650000AE +:10E9C0000000000000000000000000000000000047 +:10E9D0000000000000000000000000000000000037 +:10E9E000000000000000000000000000C5A40008B6 +:10E9F000D4A40008464C4153485F556E6C6F636B5E +:10EA00000000000000000000000000000000000006 +:10EA100000000000000000000000000000000000F6 +:10EA200000000000000000000000000000000000E6 +:10EA300000000000D5A40008E6A40008464C41539D +:10EA4000485F4C6F636B0000000000000000000096 +:10EA500000000000000000000000000000000000B6 +:10EA600000000000000000000000000000000000A6 +:10EA7000000000000000000000000000E7A4000803 +:10EA8000F2A40008464C4153485F457261736553D8 +:10EA90006563746F72000000000000000000000059 +:10EAA0000000000000000000000000000000000066 +:10EAB0000000000000000000000000000000000056 +:10EAC00000000000F3A400085CA50008464C415378 +:10EAD000485F50726F6772616D576F72640000001B +:10EAE0000000000000000000000000000000000026 +:10EAF0000000000000000000000000000000000016 +:10EB00000000000000000000000000005DA50008FB +:10EB100094A50008464C4153485F50726F6772617C +:10EB20006D427974650000000000000000000000E4 +:10EB300000000000000000000000000000000000D5 +:10EB400000000000000000000000000000000000C5 +:10EB50000000000095A50008C8A50008464C4153D8 +:10EB6000485F436C656172466C616700000000009D +:10EB70000000000000000000000000000000000095 +:10EB80000000000000000000000000000000000085 +:10EB9000000000000000000000000000C9A50008FF +:10EBA000CEA50008464C4153485F476574537461D5 +:10EBB00074757300000000000000000000000000F9 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE00000000000CFA500081CA60008464C4153B9 +:10EBF000485F57616974466F724C6173744F7065FA +:10EC0000726174696F6E0000000000000000000077 +:10EC100000000000000000000000000000000000F4 +:10EC20000000000000000000000000001DA6000819 +:10EC300044A600084E5649435F5365745072696F8D +:10EC400072697479000000000000000000000000FC +:10EC500000000000000000000000000000000000B4 +:10EC600000000000000000000000000000000000A4 +:10EC70000000000045A600085EA600085379735402 +:10EC800069636B5F436F6E66696700000000000098 +:10EC90000000000000000000000000000000000074 +:10ECA0000000000000000000000000000000000064 +:10ECB0000000000000000000000000005FA6000847 +:10ECC00086A600085379735469636B5F48616E646C +:10ECD0006C657200000000000000000000000000F1 +:10ECE0000000000000000000000000000000000024 +:10ECF0000000000000000000000000000000000014 +:10ED00000000000087A60008C8A600084F535F490E +:10ED10006E69744857000000000000000000000009 +:10ED200000000000000000000000000000000000E3 +:10ED300000000000000000000000000000000000D3 +:10ED4000000000000000000000000000C9A600084C +:10ED500034A700084F535F49646C65000000000051 +:10ED600000000000000000000000000000000000A3 +:10ED70000000000000000000000000000000000093 +:10ED80000000000000000000000000000000000083 +:10ED90000000000035A7000850A700084F535F4748 +:10EDA000657454696D655F4379636C657300000039 +:10EDB0000000000000000000000000000000000053 +:10EDC0000000000000000000000000000000000043 +:10EDD00000000000000000000000000051A7000833 +:10EDE000ACA700084F535F47657443505553746197 +:10EDF000746500000000000000000000000000003A +:10EE00000000000000000000000000000000000002 +:10EE100000000000000000000000000000000000F2 +:10EE200000000000ADA70008B8A700084F535F49D5 +:10EE30006E69744D6F646500000000000000000002 +:10EE400000000000000000000000000000000000C2 +:10EE500000000000000000000000000000000000B2 +:10EE6000000000000000000000000000B9A700083A +:10EE700000A800084F535F6D616C6C6F6300000069 +:10EE80000000000000000000000000000000000082 +:10EE90000000000000000000000000000000000072 +:10EEA0000000000000000000000000000000000062 +:10EEB0000000000001A8000830A800084F535F665A +:10EEC0007265650000000000000000000000000006 +:10EED0000000000000000000000000000000000032 +:10EEE0000000000000000000000000000000000022 +:10EEF00000000000000000000000000031A8000831 +:10EF000050A8000853485F47657453656E736F726D +:10EF1000487562506F696E746572000000000000F1 +:10EF200000000000000000000000000000000000E1 +:10EF300000000000000000000000000000000000D1 +:10EF40000000000051A8000858A800084E56494388 +:10EF50005F53797374656D526573657400000000CA +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000000000000091 +:10EF800000000000000000000000000059A8000878 +:10EF900078A800084D5055363530305F7365745F82 +:10EFA000363558585F6779726F5F636F6E66696751 +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000000000000000000000000000041 +:10EFD0000000000079A8000834A900084D505536FB +:10EFE00035303053656C665465737454696D655380 +:10EFF000657474696E670000000000000000000086 +:10F000000000000000000000000000000000000000 +:10F0100000000000000000000000000035A900080A +:10F02000AAA900084D5055363530305F44657669E1 +:10F0300063655F50726F62650000000000000000B1 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000ABA9000806AB00086D70753603 +:10F070003530305F626967385F746F5F696E743115 +:10F08000360000000000000000000000000000004A +:10F090000000000000000000000000000000000070 +:10F0A00000000000000000000000000007AB0008A6 +:10F0B00012AB00086D7075363530305F6261636B7E +:10F0C00075705F7265676973746572000000000097 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F0000000000013AB0008E8AB00086D70753627 +:10F100003530305F7265636F7665725F726567690F +:10F110007374657200000000000000000000000031 +:10F1200000000000000000000000000000000000DF +:10F13000000000000000000000000000E9AB000833 +:10F1400038AD00086D7075363530305F7365745FAB +:10F15000726567697374657200000000000000004A +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F180000000000039AD000802AF0008696E765F2C +:10F19000706F7765725F75705F73656C665F7465BD +:10F1A0007374000000000000000000000000000078 +:10F1B000000000000000000000000000000000004F +:10F1C00000000000000000000000000003AF000885 +:10F1D0007EAF0008696E765F646F5F74657374005C +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F2000000000000000000000000000000000000FE +:10F21000000000007FAF0008ACB20008696E765FA6 +:10F22000636865636B5F363530305F616363656C5F +:10F230005F68775F73656C665F7465737400000068 +:10F2400000000000000000000000000000000000BE +:10F25000000000000000000000000000ADB2000847 +:10F26000F0B30008616363656C5F696E7465727208 +:10F270007570745F73656C665F746573740000000D +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A00000000000F1B300081CB50008616363654D +:10F2B0006C5F68775F73656C66746573745F6E6F9F +:10F2C000726D616C00000000000000000000000092 +:10F2D000000000000000000000000000000000002E +:10F2E0000000000000000000000000001DB5000844 +:10F2F00022B60008416363656C5F4D50553635306A +:10F30000305F50726F626500000000000000000076 +:10F3100000000000000000000000000000000000ED +:10F3200000000000000000000000000000000000DD +:10F330000000000023B600084CB600084163636576 +:10F340006C5F4D5055363530305F4F70656E000044 +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F370000000000000000000000000004DB6000882 +:10F380008EB70008416363656C5F4D50553635306C +:10F39000305F436C6F7365000000000000000000E8 +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000008FB7000840B800084163636583 +:10F3D0006C5F4D5055363530305F536C656570004D +:10F3E000000000000000000000000000000000001D +:10F3F000000000000000000000000000000000000D +:10F4000000000000000000000000000041B80008FB +:10F4100094B80008416363656C5F4D5055363530D4 +:10F42000305F5265616400000000000000000000D1 +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F450000000000095B8000864BA000841636365C5 +:10F460006C5F4D5055363530305F496E745F536573 +:10F470007474696E67000000000000000000000066 +:10F48000000000000000000000000000000000007C +:10F4900000000000000000000000000065BA000845 +:10F4A000AEBB0008416363656C5F4D505536353027 +:10F4B000305F496E74000000000000000000000092 +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E00000000000AFBB000850BC0008416363652A +:10F4F0006C5F4D5055363530305F436C6F73655FD0 +:10F50000496E7400000000000000000000000000D0 +:10F5100000000000000000000000000000000000EB +:10F5200000000000000000000000000051BC0008C6 +:10F5300036BD0008416363656C5F4D50553635300C +:10F54000305F53656C6674657374000000000000E2 +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F570000000000037BD000860BD000841636365FE +:10F580006C5F66756E6374696F6E5F696E69740037 +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B00000000000000000000000000061BD000825 +:10F5C000D4BD00084779726F73636F70655F4D50EB +:10F5D00055363530305F50726F62650000000000B4 +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000D5BD000800BE00084779726FF9 +:10F6100073636F70655F4D5055363530305F4F7096 +:10F62000656E000000000000000000000000000007 +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000001BE0008F3 +:10F6500002BF00084779726F73636F70655F4D502A +:10F6600055363530305F436C6F7365000000000025 +:10F67000000000000000000000000000000000008A +:10F68000000000000000000000000000000000007A +:10F690000000000003BF000890BF00084779726FA8 +:10F6A00073636F70655F4D5055363530305F536C06 +:10F6B0006565700000000000000000000000000010 +:10F6C000000000000000000000000000000000003A +:10F6D00000000000000000000000000091BF0008D2 +:10F6E000E4BF00084779726F73636F70655F4D50B8 +:10F6F00055363530305F526561640000000000000F +:10F7000000000000000000000000000000000000F9 +:10F7100000000000000000000000000000000000E9 +:10F7200000000000E5BF000824C100086D707536B8 +:10F730003530305F73656C66746573745F72756EB7 +:10F7400000000000000000000000000000000000B9 +:10F7500000000000000000000000000000000000A9 +:10F7600000000000000000000000000025C10008AB +:10F77000E4C40008696E765F636865636B5F363565 +:10F7800030305F6779726F5F68775F73656C665F53 +:10F7900074657374000000000000000000000000A9 +:10F7A0000000000000000000000000000000000059 +:10F7B00000000000E5C4000858C600084779726FD1 +:10F7C00073636F70655F4D5055363530305F5365EC +:10F7D0006C66746573745F4E6F726D616C000000CF +:10F7E0000000000000000000000000000000000019 +:10F7F00000000000000000000000000059C60008E2 +:10F800006AC900084779726F73636F70655F4D5006 +:10F8100055363530305F53656C66746573745F4779 +:10F82000657454656D706572617475726500000071 +:10F8300000000000000000000000000000000000C8 +:10F84000000000006BC90008DCC900084779726F2E +:10F8500073636F70655F4D5055363530305F53655B +:10F860006C66746573740000000000000000000006 +:10F870000000000000000000000000000000000088 +:10F88000000000000000000000000000DDC90008CA +:10F8900006CA00084779726F73636F70655F4D50D9 +:10F8A00055363530305F496F63746C0000000000DE +:10F8B0000000000000000000000000000000000048 +:10F8C0000000000000000000000000000000000038 +:10F8D0000000000007CA000820CA00084779726FBC +:10F8E0005F66756E6374696F6E5F696E6974000040 +:10F8F0000000000000000000000000000000000008 +:10F9000000000000000000000000000000000000F7 +:10F9100000000000000000000000000021CA0008F4 +:10F9200088CA000847656F4D61676E657469635FDB +:10F930004765744D616744617461506F696E7465A9 +:10F940007200000000000000000000000000000045 +:10F9500000000000000000000000000000000000A7 +:10F960000000000089CA00088ECA000847656F4D74 +:10F9700061676E657469635F414B30393931315F5E +:10F9800050726F626500000000000000000000007F +:10F990000000000000000000000000000000000067 +:10F9A0000000000000000000000000008FCA0008F6 +:10F9B00008CB000847656F4D61676E657469635FCA +:10F9C000414B30393931315F4F70656E00000000B6 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F0000000000009CB000886CB000847656F4D6A +:10FA000061676E657469635F414B30393931315FCD +:10FA1000436C6F73650000000000000000000000F0 +:10FA200000000000000000000000000000000000D6 +:10FA300000000000000000000000000087CB00086C +:10FA4000EECB000847656F4D61676E657469635F53 +:10FA5000414B30393931315F536C656570000000BE +:10FA60000000000000000000000000000000000096 +:10FA70000000000000000000000000000000000086 +:10FA800000000000EFCB00081ACC000847656F4D5E +:10FA900061676E657469635F414B30393931315F3D +:10FAA000526561645F4675736500000000000000E8 +:10FAB0000000000000000000000000000000000046 +:10FAC0000000000000000000000000001BCC000847 +:10FAD0009CCC000847656F4D61676E657469635F14 +:10FAE000414B30393931315F5365745F5044436C59 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000000000000000000000000000F5 +:10FB1000000000009DCC0008B6CC000847656F4D82 +:10FB200061676E657469635F414B30393931315FAC +:10FB300043616C63756C6174655F4461746100005E +:10FB400000000000000000000000000000000000B5 +:10FB5000000000000000000000000000B7CC00081A +:10FB600012CE000847656F4D61676E657469635F0B +:10FB7000414B30393931315F526561645F506F7785 +:10FB800065724E6F697365000000000000000000A0 +:10FB90000000000000000000000000000000000065 +:10FBA0000000000013CE0008B8CE000847656F4D76 +:10FBB00061676E657469635F414B30393931315F1C +:10FBC000526561645F43616C00000000000000004A +:10FBD0000000000000000000000000000000000025 +:10FBE000000000000000000000000000B9CE000886 +:10FBF00098CF000847656F4D61676E657469635FF4 +:10FC0000414B30393931315F526561640000000089 +:10FC100000000000000000000000000000000000E4 +:10FC200000000000000000000000000000000000D4 +:10FC30000000000099CF000824D0000847656F4DF0 +:10FC400061676E657469635F414B30393931315F8B +:10FC500053656C66546573745F436865636B5F439B +:10FC600074726C0000000000000000000000000042 +:10FC700000000000000000000000000025D0000887 +:10FC8000BCD0000847656F4D61676E657469635F3E +:10FC9000414B30393931315F53656C66546573744B +:10FCA0000000000000000000000000000000000054 +:10FCB0000000000000000000000000000000000044 +:10FCC00000000000BDD0000818D3000847656F4D44 +:10FCD00061676E657469635F414B30393931315FFB +:10FCE000496F63746C000000000000000000000019 +:10FCF0000000000000000000000000000000000004 +:10FD000000000000000000000000000019D30008FF +:10FD100046D3000847656F5F66756E6374696F6EE2 +:10FD20005F696E69740000000000000000000000C0 +:10FD300000000000000000000000000000000000C3 +:10FD400000000000000000000000000000000000B3 +:10FD50000000000047D30008ECD30008546D643362 +:10FD60003738325F496E69740000000000000000FF +:10FD70000000000000000000000000000000000083 +:10FD80000000000000000000000000000000000073 +:10FD9000000000000000000000000000EDD300089B +:10FDA0000AD40008746D64333738325F7365745F4A +:10FDB0006F705F6D6F646500000000000000000060 +:10FDC0000000000000000000000000000000000033 +:10FDD0000000000000000000000000000000000023 +:10FDE000000000000BD400082CD5000850726F787A +:10FDF000696D6974795F546D64333738325F50725E +:10FE00006F626500000000000000000000000000BC +:10FE100000000000000000000000000000000000E2 +:10FE20000000000000000000000000002DD50008C8 +:10FE30007ED5000850726F78696D6974795F546D72 +:10FE400064333738325F50726F62655F526177009A +:10FE500000000000000000000000000000000000A2 +:10FE60000000000000000000000000000000000092 +:10FE7000000000007FD5000882D5000850726F781E +:10FE8000696D6974795F546D64333738325F4F70D0 +:10FE9000656E00000000000000000000000000008F +:10FEA0000000000000000000000000000000000052 +:10FEB00000000000000000000000000083D50008E2 +:10FEC00008D6000850726F78696D6974795F546D57 +:10FED00064333738325F436C6F7365000000000095 +:10FEE0000000000000000000000000000000000012 +:10FEF0000000000000000000000000000000000002 +:10FF00000000000009D600086AD6000850726F7819 +:10FF1000696D6974795F546D64333738325F536C3F +:10FF20006565700000000000000000000000000097 +:10FF300000000000000000000000000000000000C1 +:10FF40000000000000000000000000006BD6000868 +:10FF50006ED6000850726F78696D6974795F546D60 +:10FF600064333738325F526561645F5261770000F5 +:10FF70000000000000000000000000000000000081 +:10FF80000000000000000000000000000000000071 +:10FF9000000000006FD60008C2D600085F5F5072F4 +:10FFA0006F78696D6974795F546D64333738325F87 +:10FFB00052656164000000000000000000000000C5 +:10FFC0000000000000000000000000000000000031 +:10FFD000000000000000000000000000C3D6000880 +:10FFE00028DB000850726F78696D6974795F546D11 +:10FFF00064333738325F52656164000000000000EE +:020000024000BC +:1000000000000000000000000000000000000000F0 +:1000100000000000000000000000000000000000E0 +:100020000000000029DB0008A2DB000850726F7896 +:10003000696D6974795F546D64333738325F577214 +:100040006974654F6666736574416E645468726561 +:1000500073686F6C64000000000000000000000086 +:10006000000000000000000000000000A3DB00080A +:1000700074DC000850726F78695F66756E6374692E +:100080006F6E5F696E697400000000000000000080 +:100090000000000000000000000000000000000060 +:1000A0000000000000000000000000000000000050 +:1000B0000000000075DC00088EDC00084C696768F1 +:1000C000745F546D64333738325F416D6269656EB9 +:1000D000745F50726F626500000000000000000055 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000008FDC00088D +:10010000CCDC00084C696768745F546D6433373821 +:10011000325F416D6269656E745F4F70656E00009D +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:1001400000000000CDDC000818DD00084C6967687D +:10015000745F546D64333738325F416D6269656E28 +:10016000745F436C6F7365000000000000000000C6 +:10017000000000000000000000000000000000007F +:1001800000000000000000000000000019DD000871 +:1001900058DD00084C696768745F546D6433373804 +:1001A000325F416D6269656E745F536C65657000A6 +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D0000000000059DD00085CDD00084C6967681C +:1001E000745F546D64333738325F416D6269656E98 +:1001F000745F5265616400000000000000000000B0 +:1002000000000000000000000000000000000000EE +:100210000000000000000000000000005DDD00089C +:1002200028DF0008746D64333738325F7365745F9C +:10023000616C735F6761696E000000000000000080 +:1002400000000000000000000000000000000000AE +:10025000000000000000000000000000000000009E +:100260000000000029DF0008C0DF00084C69676853 +:10027000745F636F6D70757465466F724C75785FEF +:10028000546D643337383200000000000000000075 +:10029000000000000000000000000000000000005E +:1002A000000000000000000000000000C1DF0008A6 +:1002B000A8E000084C696768745F416D6269656E0B +:1002C000745F66756E6374696F6E5F696E697400E2 +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F00000000000A9E000087CE1000842756C6B7A +:1003000053656E736F725F50726F6265000000001C +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:100330000000000000000000000000007DE1000857 +:1003400080E1000842756C6B53656E736F725F4F8E +:1003500070656E000000000000000000000000005A +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:100380000000000081E1000884E1000842756C6B08 +:1003900053656E736F725F436C6F7365000000008E +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C00000000000000000000000000085E10008BF +:1003D00088E1000842756C6B53656E736F725F52F3 +:1003E00065616400000000000000000000000000E3 +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:100410000000000089E10008B0E1000842756C6B43 +:1004200053656E736F725F577269746500000000E8 +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:10045000000000000000000000000000B1E1000802 +:10046000B4E1000842756C6B53656E736F725F4D3B +:1004700065617375726500000000000000000000F7 +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A00000000000B5E10008B8E1000842756C6B7F +:1004B00053656E736F725F496F63746C0000000068 +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000000000001C +:1004E000000000000000000000000000B9E100086A +:1004F000C8E1000842756C6B53656E736F725F5391 +:10050000656C6674657374000000000000000000F4 +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:1005300000000000C9E10008E8E1000847657374A5 +:100540007572655F66756E6374696F6E5F696E69FB +:10055000745F42756C6B000000000000000000003A +:10056000000000000000000000000000000000008B +:10057000000000000000000000000000E9E10008A9 +:10058000F2E100084261726F5F66756E6374696FB5 +:100590006E5F696E69745F42756C6B0000000000ED +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C00000000000F3E10008FCE1000853656E73D1 +:1005D0006F725F42696F5F696E69745F42756C6BC1 +:1005E000000000000000000000000000000000000B +:1005F00000000000000000000000000000000000FB +:10060000000000000000000000000000FDE1000804 +:1006100044E2000873687463315F726561645F6807 +:10062000706D5F6173796E63000000000000000070 +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:100650000000000045E2000856E200087368746379 +:10066000315F7265736574000000000000000000D7 +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:1006900000000000000000000000000057E2000819 +:1006A00068E2000873687463315F636865636B5F59 +:1006B0006372630000000000000000000000000002 +:1006C000000000000000000000000000000000002A +:1006D000000000000000000000000000000000001A +:1006E0000000000069E20008A6E200087368746375 +:1006F000315F4D6561737572650000000000000098 +:1007000000000000000000000000000000000000E9 +:1007100000000000000000000000000000000000D9 +:10072000000000000000000000000000A7E2000838 +:10073000A8E2000873687463315F52656164000069 +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:1007700000000000A9E2000898E3000873687463B1 +:10078000315F50726F6265000000000000000000E1 +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B00000000000000000000000000099E30008B5 +:1007C000F8E3000873687463315F4F70656E000072 +:1007D0000000000000000000000000000000000019 +:1007E0000000000000000000000000000000000009 +:1007F00000000000000000000000000000000000F9 +:1008000000000000F9E3000804E400087368746362 +:10081000315F436C6F736500000000000000000052 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:1008400000000000000000000000000005E40008B7 +:1008500008E4000873687463315F53656C667465FF +:1008600073740000000000000000000000000000A1 +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:100890000000000009E400089CE4000854656D7045 +:1008A0005F66756E6374696F6E5F696E6974000070 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D0000000000000000000000000009DE400088F +:1008E000E4E40008555653656E736F725F555649C0 +:1008F0005332355F50726F626500000000000000E7 +:1009000000000000000000000000000000000000E7 +:1009100000000000000000000000000000000000D7 +:1009200000000000E5E40008AEE5000855565365F8 +:100930006E736F725F5556495332355F4F70656EF7 +:1009400000000000000000000000000000000000A7 +:100950000000000000000000000000000000000097 +:10096000000000000000000000000000AFE50008EB +:10097000EAE50008555653656E736F725F55564928 +:100980005332355F436C6F73650000000000000058 +:100990000000000000000000000000000000000057 +:1009A0000000000000000000000000000000000047 +:1009B00000000000EBE500085EE6000855565365B0 +:1009C0006E736F725F5556495332355F536C656570 +:1009D00070000000000000000000000000000000A7 +:1009E0000000000000000000000000000000000007 +:1009F0000000000000000000000000005FE60008AA +:100A00008AE60008555653656E736F725F555649F6 +:100A10005332355F4D6561737572650000000000EB +:100A200000000000000000000000000000000000C6 +:100A300000000000000000000000000000000000B6 +:100A4000000000008BE60008B6E600085556536526 +:100A50006E736F725F5556495332355F52656164EC +:100A60000000000000000000000000000000000086 +:100A70000000000000000000000000000000000076 +:100A8000000000000000000000000000B7E60008C1 +:100A9000EAE6000855565F66756E6374696F6E5FAF +:100AA000696E697400000000000000000000000092 +:100AB0000000000000000000000000000000000036 +:100AC0000000000000000000000000000000000026 +:100AD00000000000EBE6000844E70008537465706E +:100AE0004465746563746F725F50726F6265000075 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000000000000E5 +:100B100000000000000000000000000045E70008A1 +:100B200058E70008537465704465746563746F72A8 +:100B30005F4F70656E0000000000000000000000C4 +:100B400000000000000000000000000000000000A5 +:100B50000000000000000000000000000000000095 +:100B60000000000059E700088EE700085374657024 +:100B70004465746563746F725F436C6F73650000E6 +:100B80000000000000000000000000000000000065 +:100B90000000000000000000000000000000000055 +:100BA0000000000000000000000000008FE70008C7 +:100BB000C6E70008537465704465746563746F72AA +:100BC0005F536C65657000000000000000000000CD +:100BD0000000000000000000000000000000000015 +:100BE0000000000000000000000000000000000005 +:100BF00000000000C7E70008FEE7000853746570B6 +:100C00004465746563746F725F52656164000000CF +:100C100000000000000000000000000000000000D4 +:100C200000000000000000000000000000000000C4 +:100C3000000000000000000000000000FFE70008C6 +:100C400002E800085369676E69666963616E744DF6 +:100C50006F74696F6E5F50726F6265000000000014 +:100C60000000000000000000000000000000000084 +:100C70000000000000000000000000000000000074 +:100C80000000000003E8000816E800085369676EDA +:100C900069666963616E744D6F74696F6E5F4F70E2 +:100CA000656E000000000000000000000000000071 +:100CB0000000000000000000000000000000000034 +:100CC00000000000000000000000000017E800081D +:100CD0004CE800085369676E69666963616E744D1C +:100CE0006F74696F6E5F436C6F7365000000000086 +:100CF00000000000000000000000000000000000F4 +:100D000000000000000000000000000000000000E3 +:100D1000000000004DE8000884E800085369676E91 +:100D200069666963616E744D6F74696F6E5F536C51 +:100D30006565700000000000000000000000000079 +:100D400000000000000000000000000000000000A3 +:100D500000000000000000000000000085E800081E +:100D6000BCE800085369676E69666963616E744D1B +:100D70006F74696F6E5F526561640000000000006F +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA00000000000BDE80008C0E80008556E63615F +:100DB0006C6962726174654779726F5F50726F62BD +:100DC00065000000000000000000000000000000BE +:100DD0000000000000000000000000000000000013 +:100DE000000000000000000000000000C1E8000852 +:100DF000D4E80008556E63616C696272617465477E +:100E000079726F5F4F70656E000000000000000097 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E300000000000D5E800080AE90008556E63616B +:100E40006C6962726174654779726F5F436C6F732E +:100E5000650000000000000000000000000000002D +:100E60000000000000000000000000000000000082 +:100E70000000000000000000000000000BE9000876 +:100E800042E90008556E63616C696272617465477E +:100E900079726F5F536C65657000000000000000A0 +:100EA0000000000000000000000000000000000042 +:100EB0000000000000000000000000000000000032 +:100EC0000000000043E900087AE90008556E6361FC +:100ED0006C6962726174654779726F5F52656164B3 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F00000000000000000000000000007BE9000875 +:100F10007EE9000847616D65526F746174696F6E98 +:100F2000566563746F725F50726F626500000000F7 +:100F300000000000000000000000000000000000B1 +:100F400000000000000000000000000000000000A1 +:100F5000000000007FE9000896E9000847616D6520 +:100F6000526F746174696F6E566563746F725F4F10 +:100F700070656E000000000000000000000000002E +:100F80000000000000000000000000000000000061 +:100F900000000000000000000000000097E90008C9 +:100FA000D8E9000847616D65526F746174696F6EAE +:100FB000566563746F725F436C6F73650000000069 +:100FC0000000000000000000000000000000000021 +:100FD0000000000000000000000000000000000011 +:100FE00000000000D9E9000826EA000847616D65A5 +:100FF000526F746174696F6E566563746F725F537C +:101000006C6565700000000000000000000000003A +:1010100000000000000000000000000000000000D0 +:1010200000000000000000000000000027EA0008A7 +:101030002AEA000847616D65526F746174696F6ECA +:10104000566563746F725F52656164000000000052 +:101050000000000000000000000000000000000090 +:101060000000000000000000000000000000000080 +:10107000000000002BEA00082EEA0008526F74619D +:1010800074696F6E566563746F725F50726F6265DC +:101090000000000000000000000000000000000050 +:1010A0000000000000000000000000000000000040 +:1010B0000000000000000000000000002FEA00080F +:1010C00046EA0008526F746174696F6E5665637406 +:1010D0006F725F4F70656E0000000000000000003E +:1010E0000000000000000000000000000000000000 +:1010F00000000000000000000000000000000000F0 +:101100000000000047EA000898EA0008526F746186 +:1011100074696F6E566563746F725F436C6F73654D +:1011200000000000000000000000000000000000BF +:1011300000000000000000000000000000000000AF +:1011400000000000000000000000000099EA000814 +:10115000E8EA0008526F746174696F6E56656374D3 +:101160006F725F536C656570000000000000000046 +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:1011900000000000E9EA0008ECEA0008526F746100 +:1011A00074696F6E566563746F725F526561640037 +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000000000001F +:1011D000000000000000000000000000EDEA000830 +:1011E000F0EA000853746570436F756E7465725F42 +:1011F00050726F62650000000000000000000000F7 +:1012000000000000000000000000000000000000DE +:1012100000000000000000000000000000000000CE +:1012200000000000F1EA000804EB00085374657048 +:10123000436F756E7465725F4F70656E00000000DD +:10124000000000000000000000000000000000009E +:10125000000000000000000000000000000000008E +:1012600000000000000000000000000005EB000886 +:101270003AEB000853746570436F756E7465725F66 +:10128000436C6F7365000000000000000000000068 +:10129000000000000000000000000000000000004E +:1012A000000000000000000000000000000000003E +:1012B000000000003BEB000872EB000853746570FF +:1012C000436F756E7465725F536C656570000000E6 +:1012D000000000000000000000000000000000000E +:1012E00000000000000000000000000000000000FE +:1012F00000000000000000000000000073EB000888 +:10130000AAEB000853746570436F756E7465725F65 +:101310005265616400000000000000000000000051 +:1013200000000000000000000000000000000000BD +:1013300000000000000000000000000000000000AD +:1013400000000000ABEB0008B0EB00084D52325F2C +:1013500053656E736F725F5365744461746152615B +:1013600074650000000000000000000000000000A4 +:10137000000000000000000000000000000000006D +:10138000000000000000000000000000B1EB0008B9 +:101390006AEC0008476574526F746174696F6E5629 +:1013A0006563746F72526174650000000000000094 +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D000000000006BEC0008C0EC00084D52325FCA +:1013E00053656E736F725F4368616E6765446174C5 +:1013F0006152617465000000000000000000000000 +:1014000000000000000000000000000000000000DC +:10141000000000000000000000000000C1EC000817 +:101420002AED00084D52325F53656E736F725F662E +:10143000756E6374696F6E5F696E69740000000099 +:10144000000000000000000000000000000000009C +:10145000000000000000000000000000000000008C +:10146000000000002BED000864EE000853485F53B5 +:10147000455F496E697469616C697A6553656E731D +:101480006F724D616E6167657200000000000000C0 +:10149000000000000000000000000000000000004C +:1014A00000000000000000000000000065EE0008E1 +:1014B00074EE00086765745F74696D657374616DBF +:1014C00070000000000000000000000000000000AC +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F0000000000075EE000886EE00086170706C58 +:10150000795F63616C5F64617461000000000000DA +:1015100000000000000000000000000000000000CB +:1015200000000000000000000000000000000000BB +:1015300000000000000000000000000087EE00082E +:1015400068EF000853485F53455F41786973436F04 +:101550006E76657274657200000000000000000085 +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:101580000000000069EF0008C0F0000853485F53F6 +:10159000455F556E6974436F6E766572746572004F +:1015A000000000000000000000000000000000003B +:1015B000000000000000000000000000000000002B +:1015C000000000000000000000000000C1F0000862 +:1015D00068F2000853485F53455F53656C66546575 +:1015E0007374000000000000000000000000000014 +:1015F00000000000000000000000000000000000EB +:1016000000000000000000000000000000000000DA +:101610000000000069F20008A6F2000863616C6334 +:10162000756C6174655F62617463685F6F70746923 +:101630006F6E73000000000000000000000000005A +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000A7F20008E9 +:10166000C6F200087570646174655F6261746368D6 +:101670005F6F7074696F6E730000000000000000FF +:10168000000000000000000000000000000000005A +:10169000000000000000000000000000000000004A +:1016A00000000000C7F20008DCF2000872657365F4 +:1016B000745F62617463685F6F7074696F6E7300EA +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000000000000A +:1016E000000000000000000000000000DDF2000823 +:1016F000EAF2000873656C6563745F64696D656E1A +:1017000073696F6E5F6D6F6465000000000000001C +:1017100000000000000000000000000000000000C9 +:1017200000000000000000000000000000000000B9 +:1017300000000000EBF200081CF3000853485F5360 +:10174000455F41646453656E736F72000000000072 +:101750000000000000000000000000000000000089 +:101760000000000000000000000000000000000079 +:101770000000000000000000000000001DF3000851 +:10178000ECF3000853485F53455F52656D6F766513 +:1017900053656E736F7200000000000000000000CF +:1017A0000000000000000000000000000000000039 +:1017B0000000000000000000000000000000000029 +:1017C00000000000EDF3000870F4000853485F4487 +:1017D000505F4368616E676553656E736F725261E7 +:1017E0007465000000000000000000000000000020 +:1017F00000000000000000000000000000000000E9 +:1018000000000000000000000000000071F400086B +:1018100010F5000853485F44505F5570646174616F +:1018200053656E736F72496E666F000000000000B2 +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:101850000000000011F50008A0F500087570646133 +:1018600074655F73616D706C696E675F72617465DA +:101870000000000000000000000000000000000068 +:101880000000000000000000000000000000000058 +:10189000000000000000000000000000A1F50008AA +:1018A00008F60008696E635F667265715F636C6954 +:1018B000656E74730000000000000000000000006E +:1018C0000000000000000000000000000000000018 +:1018D0000000000000000000000000000000000008 +:1018E0000000000009F6000878F600084F535F502A +:1018F00075744D61696C000000000000000000007C +:1019000000000000000000000000000000000000D7 +:1019100000000000000000000000000000000000C7 +:1019200000000000000000000000000079F6000840 +:10193000D8F6000853485F4C4D5F4765744C6962A8 +:10194000726172795265664D6178436F756E74008D +:101950000000000000000000000000000000000087 +:101960000000000000000000000000000000000077 +:1019700000000000D9F600080EF7000853485F4C3D +:101980004D5F49734C6962726172795573696E6714 +:101990004D6F7265496E666F000000000000000028 +:1019A0000000000000000000000000000000000037 +:1019B0000000000000000000000000000FF7000819 +:1019C0005CF7000853485F4C4D5F4765744C696293 +:1019D00072617279526174650000000000000000BD +:1019E00000000000000000000000000000000000F7 +:1019F00000000000000000000000000000000000E7 +:101A0000000000005DF70008DCF7000853485F4C59 +:101A10004D5F496E697469616C697A654C6962727F +:101A20006172794D616E61676572000000000000AF +:101A300000000000000000000000000000000000A6 +:101A4000000000000000000000000000DDF70008BA +:101A500042FA000853485F4C4D5F4164644C696230 +:101A600072617279000000000000000000000000B8 +:101A70000000000000000000000000000000000066 +:101A80000000000000000000000000000000000056 +:101A90000000000043FA0008D4FB000853485F4CE4 +:101AA0004D5F53746172744C6962726172790000A7 +:101AB0000000000000000000000000000000000026 +:101AC0000000000000000000000000000000000016 +:101AD000000000000000000000000000D5FB00082E +:101AE00042FC000853485F4C4D5F52656D6F766550 +:101AF0004C69627261727900000000000000000011 +:101B000000000000000000000000000000000000D5 +:101B100000000000000000000000000000000000C5 +:101B20000000000043FC0008A0FD000853485F4C83 +:101B30004D5F53746F704C6962726172790000007E +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000000000000085 +:101B6000000000000000000000000000A1FD0008CF +:101B70000CFE000853485F4C4D5F5465726D696EF2 +:101B80006174654C69627261727900000000000046 +:101B90000000000000000000000000000000000045 +:101BA0000000000000000000000000000000000035 +:101BB000000000000DFE000840FE000853485F4C86 +:101BC0004D5F50726F636573734C696272617279B5 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000000000000F5 +:101BF00000000000000000000000000041FE00089E +:101C0000F8FE000853485F4C4D5F56616C69646193 +:101C100074655F4C6962726172795261746500002B +:101C200000000000000000000000000000000000B4 +:101C300000000000000000000000000000000000A4 +:101C400000000000F9FE00080AFF000853485F4C3E +:101C50004D5F4368616E67654C696272617279526B +:101C6000617465000000000000000000000000003A +:101C70000000000000000000000000000000000064 +:101C80000000000000000000000000000BFF000842 +:101C90001800010853485F4C4D5F5365744C6962EE +:101CA00072617279427566546F5472616E736665C3 +:101CB00072000000000000000000000000000000B2 +:101CC0000000000000000000000000000000000014 +:101CD00000000000190001087400010853485F4C1F +:101CE0004D5F496E697469616C697A654C696272AD +:101CF000617279427566546F5472616E7366657273 +:101D000000000000000000000000000000000000D3 +:101D10000000000000000000000000007500010845 +:101D2000A200010853485F4C4D5F4765744C6962DF +:101D3000726172794F6E53746174757300000000A4 +:101D40000000000000000000000000000000000093 +:101D50000000000000000000000000000000000083 +:101D600000000000A3000108C800010853485F4CB0 +:101D70004D5F52656D6F7665416C6C41646465645E +:101D800053656E736F724F6E4C6962726172790047 +:101D90000000000000000000000000000000000043 +:101DA000000000000000000000000000C900010861 +:101DB0003C01010853485F4C4D5F47657453656EA5 +:101DC000736F72496E746572727570744F63637568 +:101DD00072656400000000000000000000000000C8 +:101DE00000000000000000000000000000000000F3 +:101DF000000000003D010108B801010853485F4C94 +:101E00004D5F5365745F47657456616C75655365C6 +:101E100072766963650000000000000000000000A9 +:101E200000000000000000000000000000000000B2 +:101E3000000000000000000000000000B9010108DF +:101E4000D001010853485F4C4D5F4765744375727C +:101E500072656E7453656E736F72446174610000D5 +:101E60000000000000000000000000000000000072 +:101E70000000000000000000000000000000000062 +:101E800000000000D10101082802010853485F4CFE +:101E90004D5F436F707943757272656E7453656EF2 +:101EA000736F724461746100000000000000000064 +:101EB0000000000000000000000000000000000022 +:101EC00000000000000000000000000029020108DE +:101ED0006802010853485F4C4D5F5365744C69625A +:101EE0007261727950726F706572747900000000CF +:101EF00000000000000000000000000000000000E2 +:101F000000000000000000000000000000000000D1 +:101F100000000000690201082A03010853485F4CD1 +:101F20004D5F5365745F4164646974696F6E616C81 +:101F300044617461466F724C696272617279526574 +:101F40006D6F7665000000000000000000000000DA +:101F50000000000000000000000000002B0301084A +:101F60003003010853485F4C4D5F4765744164641A +:101F70006974696F6E616C44617461466F724C691B +:101F8000627261727952656D6F76650000000000C3 +:101F90000000000000000000000000000000000041 +:101FA0000000000031030108380401085F5F61652B +:101FB0006162695F6C6C73720000000000000000D9 +:101FC0000000000000000000000000000000000011 +:101FD0000000000000000000000000000000000001 +:101FE00000000000000000000000000039040108AB +:101FF0005804010853485F4C4D5F54656D706C6127 +:1020000074655F4D6574686F64496E697469616C6D +:10201000697A655F4F7269656E746174696F6E434A +:10202000616C630000000000000000000000000080 +:1020300000000000590401089404010853485F4C53 +:102040004D5F476574474D4F6666736574446174B0 +:10205000610000000000000000000000000000001F +:102060000000000000000000000000000000000070 +:1020700000000000000000000000000095040108BE +:102080009C04010853485F4C4D5F496E6974696157 +:102090006C697A65474D4C696200000000000000E1 +:1020A0000000000000000000000000000000000030 +:1020B0000000000000000000000000000000000020 +:1020C000000000009D040108BC04010853485F5350 +:1020D000544D5F47657453656E736F7244617461EC +:1020E000466F7253656E736F7248756253656C66A6 +:1020F0005465737400000000000000000000000040 +:10210000000000000000000000000000BD04010805 +:10211000540601084F535F5369676E616C457665DD +:102120006E740000000000000000000000000000CD +:10213000000000000000000000000000000000009F +:10214000000000000000000000000000000000008F +:102150000000000055060108B006010853485F4C16 +:102160004D5F54656D706C6174655F53746172741A +:102170005F456E7669726F6E6D656E7453656E73D2 +:102180006F7200000000000000000000000000006E +:10219000000000000000000000000000B10601087F +:1021A000E606010853485F4C4D5F54656D706C61E5 +:1021B00074655F53746F705F456E7669726F6E6D94 +:1021C000656E7453656E736F72000000000000004E +:1021D00000000000000000000000000000000000FF +:1021E00000000000E7060108F406010853485F4CB0 +:1021F0004D5F456E7669726F6D656E7453656E7373 +:102200006F725F5365744C6F6767696E6753746173 +:102210007475730000000000000000000000000062 +:10222000000000000000000000000000F5060108AA +:10223000FC06010853485F4C4D5F54656D706C613E +:1022400074655F50726F636573735F456E76697214 +:102250006F6E6D656E7453656E736F720000000073 +:10226000000000000000000000000000000000006E +:1022700000000000FD0601088007010853485F4C7C +:102280004D5F54656D706C6174655F4D6574686F0A +:1022900064496E697469616C697A655F456E7669D7 +:1022A000726F6E6D656E7453656E736F72000000B1 +:1022B000000000000000000000000000810701088D +:1022C000AC07010853485F4C4D5F54656D706C61FD +:1022D00074655F436865636B5F456E7669726F6EA8 +:1022E0006D656E7453656E736F72000000000000C0 +:1022F00000000000000000000000000000000000DE +:1023000000000000AD070108C807010853485F4CF2 +:102310004D5F456E7669726F6E6D656E7453656E56 +:10232000736F725F417070656E644C696272617246 +:10233000794D53470000000000000000000000003D +:10234000000000000000000000000000C9070108B4 +:102350006C08010853485F4C4D5F54656D706C61AB +:1023600074655F53746172745F5065646F00000040 +:10237000000000000000000000000000000000005D +:10238000000000000000000000000000000000004D +:10239000000000006D080108D408010853485F4C94 +:1023A0004D5F54656D706C6174655F53746F705FE1 +:1023B0005065646F00000000000000000000000095 +:1023C000000000000000000000000000000000000D +:1023D000000000000000000000000000D508010817 +:1023E000D808010853485F4C4D5F54656D706C61AF +:1023F00074655F50726F636573735F5065646F00DF +:1024000000000000000000000000000000000000CC +:1024100000000000000000000000000000000000BC +:1024200000000000D90801084609010853485F4C24 +:102430004D5F5065646F6D657465725F4368656379 +:102440006B55706461746554696D6500000000002F +:10245000000000000000000000000000000000007C +:102460000000000000000000000000004709010813 +:10247000FC09010853485F4C4D5F5065646F6D6502 +:102480007465725F436F6D707574655570646174C7 +:102490006554696D65000000000000000000000048 +:1024A000000000000000000000000000000000002C +:1024B00000000000FD090108B40A010853485F4C00 +:1024C0004D5F54656D706C6174655F4D6574686FC8 +:1024D00064496E697469616C697A655F5065646F9F +:1024E00000000000000000000000000000000000EC +:1024F000000000000000000000000000B50A010814 +:102500001A0B010853485F4C4D5F5065646F6D6551 +:102510007465725F536176654261746368696E6762 +:1025200054696D650000000000000000000000001C +:10253000000000000000000000000000000000009B +:10254000000000001B0B0108680B010853485F4C9A +:102550004D5F5065646F6D657465725F536176653C +:102560004261746368696E674461746100000000D1 +:10257000000000000000000000000000000000005B +:10258000000000000000000000000000690B0108CE +:10259000560D010853485F4C4D5F5065646F6D6583 +:1025A0007465725F436865636B426174636841720E +:1025B00072617900000000000000000000000000CF +:1025C000000000000000000000000000000000000B +:1025D00000000000570D0108980D010853485F4C9A +:1025E0004D5F436865636B5065646F6D65746572BC +:1025F00042756600000000000000000000000000BE +:1026000000000000000000000000000000000000CA +:10261000000000000000000000000000990D01080B +:10262000BE10010853485F4C4D5F5065646F6D6587 +:102630007465725F41646445787465726E616C4D57 +:102640006F64650000000000000000000000000052 +:10265000000000000000000000000000000000007A +:1026600000000000BF100108DC10010853485F4C57 +:102670004D5F5065646F6D657465725F52656D6F17 +:10268000766545787465726E616C4D6F64650000A7 +:10269000000000000000000000000000000000003A +:1026A000000000000000000000000000DD10010834 +:1026B000E610010853485F4C4D5F557064617465C6 +:1026C0005065646F6D6574657244617461000000EB +:1026D00000000000000000000000000000000000FA +:1026E00000000000000000000000000000000000EA +:1026F00000000000E71001080211010853485F4C78 +:102700004D5F5065646F6D657465725F47657444B5 +:1027100069666656616C7565000000000000000087 +:1027200000000000000000000000000000000000A9 +:10273000000000000000000000000000031101087C +:102740000A11010853485F4C4D5F5065646F6D6519 +:102750007465725F52657365744469666656616C30 +:10276000756500000000000000000000000000008F +:102770000000000000000000000000000000000059 +:10278000000000000B1101081411010853485F4CB0 +:102790004D5F4765744469666653746570436F7531 +:1027A0006E74000000000000000000000000000047 +:1027B0000000000000000000000000000000000019 +:1027C00000000000000000000000000015110108DA +:1027D0002412010853485F4C4D5F5065646F6D656E +:1027E0007465725F53657453797374656D54696D64 +:1027F000654E6F74690000000000000000000000DA +:1028000000000000000000000000000000000000C8 +:1028100000000000251201082E12010853485F4CE9 +:102820004D5F5065646F6D657465725F4368656385 +:102830006B53797374656D54696D654E6F7469007F +:102840000000000000000000000000000000000088 +:102850000000000000000000000000002F1201082E +:102860003612010853485F4C4D5F5065646F6D65CB +:102870007465725F53657455736572496E666F0057 +:102880000000000000000000000000000000000048 +:102890000000000000000000000000000000000038 +:1028A00000000000371201083A12010853485F4C3B +:1028B0004D5F5065646F6D657465725F53657453E9 +:1028C000746570496E666F5265717565737400004A +:1028D00000000000000000000000000000000000F8 +:1028E0000000000000000000000000003B12010892 +:1028F0005812010853485F4C4D5F5065646F6D6519 +:102900007465725F536574496E666F557064617467 +:102910006554696D650000000000000000000000C3 +:1029200000000000000000000000000000000000A7 +:102930000000000059120108E412010853485F4CDE +:102940004D5F5065646F6D657465725F4765744275 +:102950006174636844617461427566666572000003 +:102960000000000000000000000000000000000067 +:10297000000000000000000000000000E512010857 +:10298000EA12010853485F4C4D5F5065646F6D65F6 +:102990007465725F4D616B65426174636844617414 +:1029A00061000000000000000000000000000000C6 +:1029B0000000000000000000000000000000000017 +:1029C00000000000EB120108B413010853485F4CEB +:1029D0004D5F5065646F6D657465725F47657442E5 +:1029E00061746368446174614C656E67746800006B +:1029F00000000000000000000000000000000000D7 +:102A0000000000000000000000000000B5130108F5 +:102A1000C813010853485F4C4D5F5065646F6D6586 +:102A20007465725F436C656172426174636844618E +:102A300074610000000000000000000000000000C1 +:102A40000000000000000000000000000000000086 +:102A500000000000C9130108EC13010853485F4C43 +:102A60004D5F47657444696666546F74616C436179 +:102A70006C6F72696500000000000000000000003B +:102A80000000000000000000000000000000000046 +:102A9000000000000000000000000000ED1301082D +:102AA0007C14010853485F4C4D5F47657444696668 +:102AB00066546F74616C44697374616E6365000081 +:102AC0000000000000000000000000000000000006 +:102AD00000000000000000000000000000000000F6 +:102AE000000000007D1401083815010853485F4CB0 +:102AF0004D5F5065646F6D657465725F41707065A0 +:102B00006E644C6962726172794D53470000000037 +:102B100000000000000000000000000000000000B5 +:102B2000000000000000000000000000391501084E +:102B3000FC1A010853485F4C4D5F496E6974696126 +:102B40006C697A65416374697669747954726163FA +:102B50006B65720000000000000000000000000033 +:102B60000000000000000000000000000000000065 +:102B700000000000FD1A0108221B010853485F4CA9 +:102B80004D5F5570646174654163746976697479E9 +:102B9000547261636B65724D616E616765720000AE +:102BA0000000000000000000000000000000000025 +:102BB000000000000000000000000000231B0108CE +:102BC000F81B010853485F4C4D5F41637469766997 +:102BD0007479547261636B65725F536574436F6E91 +:102BE00074726F6C4D6F646500000000000000009F +:102BF00000000000000000000000000000000000D5 +:102C000000000000F91B0108021C010853485F4C3A +:102C10004D5F54656D706C6174655F53746172745F +:102C20005F4163746976697479547261636B65722C +:102C30000000000000000000000000000000000094 +:102C4000000000000000000000000000031C01085C +:102C5000A81E010853485F4C4D5F54656D706C6150 +:102C600074655F53746F705F4163746976697479DA +:102C7000547261636B657200000000000000000088 +:102C80000000000000000000000000000000000044 +:102C900000000000A91E0108E020010853485F4C15 +:102CA0004D5F54656D706C6174655F50726F6365E4 +:102CB00073735F4163746976697479547261636B8D +:102CC000657200000000000000000000000000002D +:102CD000000000000000000000000000E1200108EA +:102CE000E025010853485F4C4D5F41637469766984 +:102CF0007479547261636B65725F42617463686971 +:102D00006E67416374697669747944617461000027 +:102D100000000000000000000000000000000000B3 +:102D200000000000E12501083227010853485F4CEC +:102D30004D5F4163746976697479547261636B6540 +:102D4000725F436865636B42617463684461746178 +:102D5000526561647900000000000000000000007E +:102D60000000000000000000000000003327010800 +:102D70004C27010853485F4C4D5F41637469766985 +:102D80007479547261636B65725F436C6561724202 +:102D90006174636844617461000000000000000019 +:102DA0000000000000000000000000000000000023 +:102DB000000000004D2701085827010853485F4CC8 +:102DC0004D5F4163746976697479547261636B65B0 +:102DD000725F4765744261746368446174614275EF +:102DE0006666657200000000000000000000000040 +:102DF000000000000000000000000000592701084A +:102E00007427010853485F4C4D5F416374697669CC +:102E10007479547261636B65725F47657442617463 +:102E20006368446174614C656E67746800000000FB +:102E30000000000000000000000000000000000092 +:102E400000000000752701088A27010853485F4CDD +:102E50004D5F54656D706C6174655F4D6574686F2E +:102E600064496E697469616C697A655F416374690C +:102E700076697479547261636B65720000000000BA +:102E80000000000000000000000000008B27010887 +:102E9000C427010853485F4C4D5F436865636B412D +:102EA00063746976697479547261636B6572427593 +:102EB00066000000000000000000000000000000AC +:102EC0000000000000000000000000000000000002 +:102ED00000000000C5270108FC27010853485F4C8B +:102EE0004D5F4765744163746976697479547261A2 +:102EF000636B65725265636F676E697A6564000023 +:102F000000000000000000000000000000000000C1 +:102F1000000000000000000000000000FD27010884 +:102F20000628010853485F4C4D5F53657441637434 +:102F30006976697479547261636B65725265636F07 +:102F4000676E697A65640000000000000000000000 +:102F50000000000000000000000000000000000071 +:102F600000000000072801084828010853485F4C6A +:102F70004D5F5570646174654163746976697479F5 +:102F8000547261636B6572446174610000000000FB +:102F90000000000000000000000000000000000031 +:102FA00000000000000000000000000049280108A7 +:102FB0005828010853485F4C4D5F41637469766936 +:102FC0007479547261636B65725F417070656E6491 +:102FD0004C6962726172794D534700000000000035 +:102FE00000000000000000000000000000000000E1 +:102FF00000000000592801082029010853485F4CAF +:103000004D5F43616C63756C61746554696D6544B3 +:1030100075726174696F6E000000000000000000AE +:1030200000000000000000000000000000000000A0 +:10303000000000000000000000000000212901083D +:103040004829010853485F4C4D5F43616C63756CC0 +:103050006174656455544374696D6546726F6D544F +:10306000696D657374616D70000000000000000000 +:103070000000000000000000000000000000000050 +:103080000000000049290108162A010853485F4C36 +:103090004D5F5265717565737443757272656E74B8 +:1030A0004163746976697479547261636B657249BE +:1030B0006E666F00000000000000000000000000CD +:1030C000000000000000000000000000172A0108B6 +:1030D0003A2A010853485F4C4D5F41637469766931 +:1030E0007479547261636B65725F4765744375727E +:1030F00072656E744461746100000000000000009D +:1031000000000000000000000000000000000000BF +:10311000000000003B2A0108442A010853485F4C84 +:103120004D5F4163746976697479547261636B654C +:10313000725F53656C6563744261746368696E673E +:103140004D6F6465000000000000000000000000FA +:10315000000000000000000000000000452A0108F7 +:10316000802A010853485F4C4D5F6465673264658F +:10317000676D696E73656300000000000000000069 +:10318000000000000000000000000000000000003F +:10319000000000000000000000000000000000002F +:1031A00000000000812A0108F42A010853485F4CFE +:1031B0004D5F475053324B696C6F6D65746572009B +:1031C00000000000000000000000000000000000FF +:1031D00000000000000000000000000000000000EF +:1031E000000000000000000000000000F52A0108B7 +:1031F000F82B010853485F4C4D5F43616C63756C5D +:103200006174654D6F76696E6744697374616E634E +:103210006500000000000000000000000000000049 +:10322000000000000000000000000000000000009E +:1032300000000000F92B0108542C010853485F4C92 +:103240004D5F436865636B56656869636C654D6F78 +:10325000646557697468506F736974696F6E44610F +:103260007461000000000000000000000000000089 +:10327000000000000000000000000000552C0108C4 +:10328000D032010853485F4C4D5F54656D706C61DE +:1032900074655F436865636B5F53746179696E67DA +:1032A00053656E73696E6700000000000000000047 +:1032B000000000000000000000000000000000000E +:1032C00000000000D13201080833010853485F4C68 +:1032D0004D5F54656D706C6174655F537461727499 +:1032E0005F53746179696E6753656E73696E6700C9 +:1032F00000000000000000000000000000000000CE +:103300000000000000000000000000000933010878 +:10331000A633010853485F4C4D5F54656D706C6176 +:1033200074655F53746F705F53746179696E67532E +:10333000656E73696E670000000000000000000009 +:10334000000000000000000000000000000000007D +:1033500000000000A7330108D233010853485F4C36 +:103360004D5F54656D706C6174655F417070656E22 +:10337000644D53475F53746179696E6753656E732B +:10338000696E6700000000000000000000000000FF +:10339000000000000000000000000000D33301081E +:1033A0006434010853485F4C4D5F54656D706C6127 +:1033B00074655F50726F636573735F53746179698D +:1033C0006E6753656E73696E670000000000000051 +:1033D00000000000000000000000000000000000ED +:1033E00000000000653401080C35010853485F4CAB +:1033F0004D5F54656D706C6174655F4D6574686F89 +:1034000064496E697469616C697A655F5374617946 +:10341000696E6753656E73696E6700000000000097 +:103420000000000000000000000000000D35010851 +:103430005035010853485F4C4D5F53746179696E94 +:103440006753656E73696E675F5365744375727217 +:10345000656E74506F736974696F6E0000000000D0 +:10346000000000000000000000000000000000005C +:1034700000000000513501086435010853485F4CD5 +:103480004D5F53746179696E6753656E73696E67DA +:103490005F536574506F736974696F6E49734E6FD3 +:1034A000745265616479466C616700000000000039 +:1034B0000000000000000000000000006535010869 +:1034C0006835010853485F4C4D5F53746179696EEC +:1034D0006753656E73696E675F5365745573657284 +:1034E0005761697454696D650000000000000000B8 +:1034F00000000000000000000000000000000000CC +:1035000000000000693501086C35010853485F4C24 +:103510004D5F53746179696E6753656E73696E6749 +:103520005F5365745573657253746F7054696D653C +:10353000000000000000000000000000000000008B +:103540000000000000000000000000006D350108D0 +:103550007035010853485F4C4D5F53746179696E53 +:103560006753656E73696E675F53657453746179F1 +:10357000696E6752616469757300000000000000A5 +:10358000000000000000000000000000000000003B +:1035900000000000713501087435010853485F4C84 +:1035A0004D5F53746179696E6753656E73696E67B9 +:1035B0005F53657453746179696E674172656152D6 +:1035C00061646975730000000000000000000000E5 +:1035D0000000000000000000000000007535010838 +:1035E0007835010853485F4C4D5F53746179696EBB +:1035F0006753656E73696E675F436865636B526599 +:103600007175657374506F736974696F6E496E6616 +:103610006F0000000000000000000000000000003B +:1036200000000000793501089235010853485F4CCD +:103630004D5F53746179696E6753656E73696E6728 +:103640005F53657453797374656D506F73697469F2 +:103650006F6E4E6F746900000000000000000000F3 +:103660000000000000000000000000009335010889 +:10367000B835010853485F4C4D5F53746179696EEA +:103680006753656E73696E675F4765744E756D53FA +:10369000746179696E674172656100000000000025 +:1036A000000000000000000000000000000000001A +:1036B00000000000B9350108BC35010853485F4CD3 +:1036C0004D5F53746179696E6753656E73696E6798 +:1036D0005F526573657453746179696E6741726591 +:1036E0006100000000000000000000000000000079 +:1036F000000000000000000000000000BD350108CF +:10370000C035010853485F4C4D5F53746179696E51 +:103710006753656E73696E675F476574537461794B +:10372000696E6741726561496E666F000000000056 +:103730000000000000000000000000000000000089 +:1037400000000000C1350108C635010853485F4C30 +:103750004D5F53746179696E6753656E73696E6707 +:103760005F526573657452657175657374506F73DC +:10377000466C6167000000000000000000000000CF +:10378000000000000000000000000000C735010834 +:10379000CA35010853485F4C4D5F53746179696EB7 +:1037A0006753656E73696E675F53657442617463D6 +:1037B00068696E67506572696F6400000000000000 +:1037C00000000000000000000000000000000000F9 +:1037D00000000000CB350108CE35010853485F4C8E +:1037E0004D5F53746179696E6753656E73696E6777 +:1037F0005F5361766553746179696E674172656183 +:10380000496E666F0000000000000000000000002C +:10381000000000000000000000000000CF3501089B +:10382000D235010853485F4C4D5F53746179696E1E +:103830006753656E73696E675F436865636B537446 +:103840006179696E67417265614469666665726532 +:103850006E63650000000000000000000000000032 +:1038600000000000D3350108DC35010853485F4CE7 +:103870004D5F53746179696E6753656E73696E67E6 +:103880005F536574437572416374697669747954E2 +:1038900079706500000000000000000000000000DA +:1038A000000000000000000000000000DD350108FD +:1038B000E035010853485F4C4D5F53746179696E80 +:1038C0006753656E73696E675F476574537461799A +:1038D000696E6741726561496E4F757453746174A6 +:1038E0006500000000000000000000000000000073 +:1038F00000000000E13501085436010853485F4CD0 +:103900004D5F54656D706C6174655F537461727462 +:103910005F536D6172745F416C65727400000000EA +:103920000000000000000000000000000000000097 +:1039300000000000000000000000000055360108F3 +:103940007A36010853485F4C4D5F54656D706C6169 +:1039500074655F53746F705F536D6172745F416C17 +:10396000657274000000000000000000000000000C +:103970000000000000000000000000000000000047 +:10398000000000007B3601088436010853485F4C74 +:103990004D5F54656D706C6174655F50726F6365E7 +:1039A00073735F536D6172745F416C657274000074 +:1039B0000000000000000000000000000000000007 +:1039C0000000000000000000000000008536010833 +:1039D0003037010853485F4C4D5F54656D706C6122 +:1039E00074655F4D6574686F64496E697469616C74 +:1039F000697A655F536D6172745F416C65727400C2 +:103A000000000000000000000000000000000000B6 +:103A100000000000313701086437010853485F4C4B +:103A20004D5F436865636B536D617274416C657281 +:103A300074427566000000000000000000000000F5 +:103A40000000000000000000000000000000000076 +:103A500000000000000000000000000065370108C1 +:103A60007C37010853485F4C4D5F55706461746545 +:103A7000536D617274416C657274446174610000CD +:103A80000000000000000000000000000000000036 +:103A90000000000000000000000000000000000026 +:103AA000000000007D3701088837010853485F4C4B +:103AB0004D5F476574536D617274416C65727452E9 +:103AC00065636F676E697A6564000000000000003E +:103AD00000000000000000000000000000000000E6 +:103AE000000000000000000000000000893701080D +:103AF0009037010853485F4C4D5F536574536D61B7 +:103B00007274416C6572745265636F676E697A6531 +:103B10006400000000000000000000000000000041 +:103B20000000000000000000000000000000000095 +:103B300000000000913701089637010853485F4C98 +:103B40004D5F5374617274546F4465746563744D52 +:103B50006F76656D656E74466F72536D61727441F8 +:103B60006C6572740000000000000000000000009E +:103B7000000000000000000000000000973701086E +:103B8000AE37010853485F4C4D5F53746F70546FEC +:103B90004465746563744D6F76656D656E74466FCC +:103BA00072536D617274416C6572740000000000A4 +:103BB0000000000000000000000000000000000005 +:103BC00000000000AF370108CC37010853485F4CB4 +:103BD0004D5F50726F63657373536D617274416CA6 +:103BE0006572744166746572416363496E744F63B4 +:103BF00063757265640000000000000000000000B2 +:103C0000000000000000000000000000CD370108A7 +:103C10002438010853485F4C4D5F536D6172744105 +:103C20006C6572745F417070656E644C696272613C +:103C300072794D53470000000000000000000000B2 +:103C40000000000000000000000000000000000074 +:103C500000000000253801085C38010853485F4C1B +:103C60004D5F54656D706C6174655F5374617274FF +:103C70005F476C616E636556696577000000000000 +:103C80000000000000000000000000000000000034 +:103C90000000000000000000000000005D38010886 +:103CA0009A38010853485F4C4D5F54656D706C61E4 +:103CB00074655F53746F705F476C616E63655669BE +:103CC0006577000000000000000000000000000018 +:103CD00000000000000000000000000000000000E4 +:103CE000000000009B380108DC38010853485F4C95 +:103CF0004D5F54656D706C6174655F50726F636584 +:103D000073735F476C616E63655669657700000089 +:103D100000000000000000000000000000000000A3 +:103D2000000000000000000000000000DD38010875 +:103D3000F838010853485F4C4D5F54656D706C61F5 +:103D400074655F4D6574686F64496E697469616C10 +:103D5000697A655F476C616E6365566965770000D7 +:103D60000000000000000000000000000000000053 +:103D700000000000F93801083039010853485F4C51 +:103D80004D5F436865636B476C616E63655669653B +:103D9000774275660000000000000000000000008F +:103DA0000000000000000000000000000000000013 +:103DB0000000000000000000000000003139010890 +:103DC0004839010853485F4C4D5F55706461746514 +:103DD000476C616E63655669657744617461000084 +:103DE00000000000000000000000000000000000D3 +:103DF00000000000000000000000000000000000C3 +:103E000000000000493901084C39010853485F4C53 +:103E10004D5F476574476C616E636556696577529F +:103E200065636F676E697A656400000000000000DA +:103E30000000000000000000000000000000000082 +:103E40000000000000000000000000004D390108E3 +:103E50005439010853485F4C4D5F536574476C619A +:103E60006E6365566965775265636F676E697A65DB +:103E700064000000000000000000000000000000DE +:103E80000000000000000000000000000000000032 +:103E900000000000553901085A39010853485F4CA9 +:103EA0004D5F50726F63657373476C616E636556E7 +:103EB00069657700000000000000000000000000BD +:103EC00000000000000000000000000000000000F2 +:103ED0000000000000000000000000005B39010845 +:103EE0004C3A010853485F4C4D5F496E69746961F3 +:103EF0006C697A65476C616E636556696577000029 +:103F000000000000000000000000000000000000B1 +:103F100000000000000000000000000000000000A1 +:103F2000000000004D3A0108703A010853485F4C08 +:103F30004D5F476C616E6365566965775F41707070 +:103F4000656E644C6962726172794D53470000007E +:103F50000000000000000000000000000000000061 +:103F6000000000000000000000000000713A01089D +:103F7000AC3A010853485F4C4D5F54656D706C61FD +:103F800074655F53746172745F43616C6C506F73DE +:103F900065536572766963650000000000000000EB +:103FA0000000000000000000000000000000000011 +:103FB00000000000AD3A0108E63A010853485F4CA2 +:103FC0004D5F54656D706C6174655F53746F705FA5 +:103FD00043616C6C506F73655365727669636500FD +:103FE00000000000000000000000000000000000D1 +:103FF000000000000000000000000000E73A010897 +:10400000F03A010853485F4C4D5F54656D706C6128 +:1040100074655F50726F636573735F43616C6C505E +:104020006F73655365727669636500000000000078 +:104030000000000000000000000000000000000080 +:1040400000000000F13A01080E3B010853485F4CA4 +:104050004D5F54656D706C6174655F4D6574686F1C +:1040600064496E697469616C697A655F43616C6CFF +:10407000506F7365536572766963650000000000D8 +:104080000000000000000000000000000F3B0108DD +:104090003C3B010853485F4C4D5F43616C6C506F73 +:1040A0007365536572766963655F47657453656EC2 +:1040B000736F72496E746572727570744F63637555 +:1040C00072656400000000000000000000000000B5 +:1040D000000000003D3B01084C3B010853485F4C89 +:1040E0004D5F436865636B43616C6C506F736553E0 +:1040F0006572766963654275660000000000000025 +:1041000000000000000000000000000000000000AF +:104110000000000000000000000000004D3B01080E +:10412000663B010853485F4C4D5F55706461746590 +:1041300043616C6C506F7365536572766963654457 +:104140006174610000000000000000000000000039 +:10415000000000000000000000000000000000005F +:1041600000000000673B0108703B010853485F4CAA +:104170004D5F43616C6C506F736553657276696314 +:1041800065446174615F436F6E76657274457665F0 +:104190006E7456616C756500000000000000000040 +:1041A000000000000000000000000000713B01085A +:1041B0009C3B010853485F4C4D5F43616C6C506FF2 +:1041C0007365536572766963655F417070656E648F +:1041D0004C6962726172794D534700000000000023 +:1041E00000000000000000000000000000000000CF +:1041F000000000009D3B0108FC3B01085F5F61651A +:104200006162695F6572726E6F5F61646472000003 +:10421000000000000000000000000000000000009E +:10422000000000000000000000000000000000008E +:10423000000000000000000000000000FD3B01083D +:10424000083C01085F5F61656162695F6C64697663 +:10425000300000000000000000000000000000002E +:10426000000000000000000000000000000000004E +:10427000000000000000000000000000000000003E +:1042800000000000093C01080C3C010873747263D3 +:104290006872000000000000000000000000000044 +:1042A000000000000000000000000000000000000E +:1042B00000000000000000000000000000000000FE +:1042C0000000000000000000000000000D3C01089C +:1042D0000D3C01085F5F6961725F537472636872BD +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000000000000000000000000000AD +:10431000000000000D3C0108243C01086D656D6340 +:1043200068720000000000000000000000000000B3 +:10433000000000000000000000000000000000007D +:10434000000000000000000000000000000000006D +:10435000000000000000000000000000253C0108F3 +:10436000253C01085F5F6961725F4D656D6368722E +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:10439000000000000000000000000000000000001D +:1043A00000000000253C01087C3C01085F5F69615A +:1043B000725F446E6F726D0000000000000000002C +:1043C00000000000000000000000000000000000ED +:1043D00000000000000000000000000000000000DD +:1043E0000000000000000000000000007D3C01080B +:1043F000C03C01085F5F61656162695F636472630D +:104400006D706C65000000000000000000000000FE +:10441000000000000000000000000000000000009C +:10442000000000000000000000000000000000008C +:1044300000000000C13C0108F03C01085F5F6961B9 +:10444000725F447363616C6500000000000000004F +:10445000000000000000000000000000000000005C +:10446000000000000000000000000000000000004C +:10447000000000000000000000000000F13C010806 +:10448000043E01086469760000000000000000009E +:10449000000000000000000000000000000000001C +:1044A000000000000000000000000000000000000C +:1044B00000000000000000000000000000000000FC +:1044C00000000000053E0108143E01084F535F54F0 +:1044D00049434B5F48616E646C650000000000005A +:1044E00000000000000000000000000000000000CC +:1044F00000000000000000000000000000000000BC +:10450000000000000000000000000000153E01084F +:10451000803E010853797374656D496E69740000BB +:10452000000000000000000000000000000000008B +:10453000000000000000000000000000000000007B +:10454000000000000000000000000000000000006B +:1045500000000000813E0108C83E010853797374D1 +:10456000656D436F7265436C6F636B557064617406 +:1045700065000000000000000000000000000000D6 +:10458000000000000000000000000000000000002B +:10459000000000000000000000000000C93E01080B +:1045A000183F0108536574537973436C6F636B0054 +:1045B00000000000000000000000000000000000FB +:1045C00000000000000000000000000000000000EB +:1045D00000000000000000000000000000000000DB +:1045E00000000000193F0108883F01084F535F4158 +:1045F000524D5F495352436865636B5072696F0057 +:1046000000000000000000000000000000000000AA +:10461000000000000000000000000000000000009A +:10462000000000000000000000000000893F0108B9 +:10463000BC3F01085F556E75736500000000000007 +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:10466000000000000000000000000000000000004A +:1046700000000000BD3F0108DE3F01085F4F535FAF +:104680005253656D615F4F6E5465726D696E6174F2 +:1046900065000000000000000000000000000000B5 +:1046A000000000000000000000000000000000000A +:1046B000000000000000000000000000DF3F0108D3 +:1046C000064001084F535F4372656174655253653C +:1046D0006D6100000000000000000000000000000C +:1046E00000000000000000000000000000000000CA +:1046F00000000000000000000000000000000000BA +:104700000000000007400108724001084F535F5548 +:1047100073650000000000000000000000000000C1 +:104720000000000000000000000000000000000089 +:104730000000000000000000000000000000000079 +:1047400000000000000000000000000073400108AD +:10475000DA4001084F535F556E7573650000000025 +:104760000000000000000000000000000000000049 +:104770000000000000000000000000000000000039 +:104780000000000000000000000000000000000029 +:1047900000000000DB400108344101087365676DCB +:1047A000656E745F686F6C64696E6700000000007E +:1047B00000000000000000000000000000000000F9 +:1047C00000000000000000000000000000000000E9 +:1047D000000000000000000000000000354101085A +:1047E0004E410108696E69745F6D706172616D732D +:1047F00000000000000000000000000000000000B9 +:1048000000000000000000000000000000000000A8 +:104810000000000000000000000000000000000098 +:10482000000000004F41010882410108696E69746F +:104830005F746F70000000000000000000000000C6 +:104840000000000000000000000000000000000068 +:104850000000000000000000000000000000000058 +:10486000000000000000000000000000834101087B +:10487000B641010870726570656E645F616C6C6F43 +:1048800063000000000000000000000000000000C5 +:104890000000000000000000000000000000000018 +:1048A0000000000000000000000000000000000008 +:1048B00000000000B7410108F24401087379735FFA +:1048C000616C6C6F630000000000000000000000DD +:1048D00000000000000000000000000000000000D8 +:1048E00000000000000000000000000000000000C8 +:1048F000000000000000000000000000F344010878 +:104900007C480108746D616C6C6F635F6C617267E9 +:104910006500000000000000000000000000000032 +:104920000000000000000000000000000000000087 +:104930000000000000000000000000000000000077 +:10494000000000007D480108064C0108746D616C90 +:104950006C6F635F736D616C6C00000000000000A1 +:104960000000000000000000000000000000000047 +:104970000000000000000000000000000000000037 +:10498000000000000000000000000000074C0108CB +:10499000184E01085F5F6961725F646C6D616C6CD9 +:1049A0006F63000000000000000000000000000035 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000000000000000000000000000E7 +:1049D00000000000194E0108CC5001085F5F6961BA +:1049E000725F646C66726565000000000000000084 +:1049F00000000000000000000000000000000000B7 +:104A000000000000000000000000000000000000A6 +:104A1000000000000000000000000000CD50010870 +:104A2000E85501086162730000000000000000000A +:104A30000000000000000000000000000000000076 +:104A40000000000000000000000000000000000066 +:104A50000000000000000000000000000000000056 +:104A600000000000E9550108F055010853485F4C6B +:104A70004D5F496E697469616C697A65474D4C692F +:104A8000627261727944617461000000000000008C +:104A90000000000000000000000000000000000016 +:104AA000000000000000000000000000F1550108B7 +:104AB000FA55010853485F4C4D5F476574474D4CAC +:104AC000696272617279506F696E7465720000007C +:104AD00000000000000000000000000000000000D6 +:104AE00000000000000000000000000000000000C6 +:104AF00000000000FB55010804560108496E697466 +:104B0000414B303939313150524D530000000000D3 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000000000000085 +:104B30000000000000000000000000000556010811 +:104B40007C56010853657444656661756C745052F7 +:104B50004D530000000000000000000000000000B5 +:104B60000000000000000000000000000000000045 +:104B70000000000000000000000000000000000035 +:104B8000000000007D560108BA56010852656164B4 +:104B9000414B303939313146555345524F4D000064 +:104BA0000000000000000000000000000000000005 +:104BB00000000000000000000000000000000000F5 +:104BC000000000000000000000000000BB560108CB +:104BD00028570108496E6974414B30393931315FCA +:104BE0004D656173757265000000000000000000F3 +:104BF00000000000000000000000000000000000B5 +:104C000000000000000000000000000000000000A4 +:104C10000000000029570108E8570108537769741C +:104C20006368466F726D6174696F6E00000000000A +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000000000000064 +:104C5000000000000000000000000000E95701080B +:104C60005E58010853485F474D5F4765744F66665D +:104C7000736574446174610000000000000000006E +:104C80000000000000000000000000000000000024 +:104C90000000000000000000000000000000000014 +:104CA000000000005F5801087058010853485F4732 +:104CB0004D5F496E697469616C697A65474D4C69ED +:104CC00062726172790000000000000000000000C4 +:104CD00000000000000000000000000000000000D4 +:104CE00000000000000000000000000071580108F2 +:104CF000A2580108696E697469616C697A655F67B9 +:104D00005F6172724163634275666665720000009E +:104D10000000000000000000000000000000000093 +:104D20000000000000000000000000000000000083 +:104D300000000000A3580108CC58010853485F4701 +:104D40004D5F53657443616C6962726174696F6E23 +:104D5000506172616D65746572730000000000003F +:104D60000000000000000000000000000000000043 +:104D7000000000000000000000000000CD58010805 +:104D8000FC58010853485F474D5F47657443616CA9 +:104D90006962726174696F6E506172616D6574658C +:104DA000727300000000000000000000000000001E +:104DB00000000000000000000000000000000000F3 +:104DC00000000000FD5801086859010853485F477A +:104DD0004D5F496E697469616C697A65426561729B +:104DE000696E6743616C63756C6174696F6E000016 +:104DF00000000000000000000000000000000000B3 +:104E000000000000000000000000000069590108D7 +:104E10009859010853485F474D5F46696E616C6958 +:104E20007A6542656172696E6743616C63756C6136 +:104E300074696F6E000000000000000000000000B8 +:104E40000000000000000000000000000000000062 +:104E50000000000099590108A859010853485F470C +:104E60004D5F4D6561737572654F706572617469F0 +:104E70006F6E000000000000000000000000000055 +:104E80000000000000000000000000000000000022 +:104E9000000000000000000000000000A959010807 +:104EA000A45A010853485F474D5F4D6561737572A1 +:104EB00065526F7574696E650000000000000000A7 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 +:104EE00000000000A55A01087C5B01084765744D6D +:104EF00061676E65746963566563746F7200000064 +:104F000000000000000000000000000000000000A1 +:104F10000000000000000000000000000000000091 +:104F20000000000000000000000000007D5B0108A0 +:104F3000665D01084C6F6164506172616D657465F6 +:104F4000727300000000000000000000000000007C +:104F50000000000000000000000000000000000051 +:104F60000000000000000000000000000000000041 +:104F700000000000675D0108805D01085365745002 +:104F80006172616D6574657273000000000000005D +:104F90000000000000000000000000000000000011 +:104FA0000000000000000000000000000000000001 +:104FB000000000000000000000000000815D01080A +:104FC000D45D010847657441636356656300000062 +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF00000000000000000000000000000000000B1 +:1050000000000000D55D0108485F010853485F4C6F +:105010004D5F6765745F4D6F756E74696E674D6146 +:1050200074726978000000000000000000000000B9 +:105030000000000000000000000000000000000070 +:10504000000000000000000000000000495F0108AF +:10505000E85F010853485F4C4D5F54656D706C61AB +:1050600074655F53746172745F526F746174696FB9 +:105070006E566563746F720000000000000000004F +:105080000000000000000000000000000000000020 +:1050900000000000E95F01089860010853485F4C78 +:1050A0004D5F54656D706C6174655F53746F705FB4 +:1050B000526F746174696F6E566563746F7200002D +:1050C00000000000000000000000000000000000E0 +:1050D00000000000000000000000000099600108CE +:1050E000AA60010853485F4C4D5F436865636B5F7E +:1050F000576869636853656E736F7253686F756C38 +:105100006442654F6E0000000000000000000000D7 +:10511000000000000000000000000000000000008F +:1051200000000000AB600108EA60010853485F4CD2 +:105130004D5F436865636B5F576869636853656E6D +:10514000736F7253686F756C6442654F66660000DA +:10515000000000000000000000000000000000004F +:10516000000000000000000000000000EB600108EB +:105170001061010853485F4C4D5F54656D706C6160 +:1051800074655F50726F636573735F526F7461749F +:10519000696F6E566563746F720000000000000056 +:1051A00000000000000000000000000000000000FF +:1051B00000000000116101085A63010853485F4C68 +:1051C0004D5F54656D706C6174655F4D6574686F9B +:1051D00064496E697469616C697A655F526F746164 +:1051E00074696F6E566563746F7200000000000092 +:1051F0000000000000000000000000005B630108E8 +:105200008C63010853485F4C4D5F436865636B5284 +:105210006F746174696F6E566563746F7242756600 +:10522000000000000000000000000000000000007E +:10523000000000000000000000000000000000006E +:10524000000000008D6301089E63010853485F4C15 +:105250004D5F557064617465526F746174696F6EEF +:10526000566563746F724461746100000000000051 +:10527000000000000000000000000000000000002E +:105280000000000000000000000000009F63010813 +:10529000AA63010853485F4C4D5F476574526F74B1 +:1052A0006174696F6E566563746F725265636F6780 +:1052B0006E697A65640000000000000000000000D4 +:1052C00000000000000000000000000000000000DE +:1052D00000000000AB630108B263010853485F4C53 +:1052E0004D5F536574526F746174696F6E56656378 +:1052F000746F725265636F676E697A65640000004F +:10530000000000000000000000000000000000009D +:10531000000000000000000000000000B36301086E +:10532000B863010853485F4C4D5F536574526F7406 +:105330006174696F6E566563746F72466C61670065 +:10534000000000000000000000000000000000005D +:10535000000000000000000000000000000000004D +:1053600000000000B9630108F063010853485F4C76 +:105370004D5F4F6E5F47656F4D61676E6574696322 +:10538000000000000000000000000000000000001D +:10539000000000000000000000000000000000000D +:1053A000000000000000000000000000F1630108A0 +:1053B000FA63010853485F4C4D5F4F66665F47656F +:1053C0006F4D61676E657469630000000000000046 +:1053D00000000000000000000000000000000000CD +:1053E00000000000000000000000000000000000BD +:1053F00000000000FB6301080464010853485F4C8F +:105400004D5F526F746174696F6E566563746F722D +:105410005F417070656E644C6962726172794D5360 +:105420004700000000000000000000000000000035 +:1054300000000000000000000000000005640108FA +:105440006864010853485F534D5F496E6974696130 +:105450006C697A6553656E736F72487562000000FF +:10546000000000000000000000000000000000003C +:10547000000000000000000000000000000000002C +:1054800000000000696401086C64010853485F5320 +:105490004D5F476574537461747573466F725365DD +:1054A0006E736F72526174654368616E6765000068 +:1054B00000000000000000000000000000000000EC +:1054C0000000000000000000000000006D64010802 +:1054D0008064010853485F534D5F53657453746192 +:1054E000747573466F7253656E736F725261746533 +:1054F0004368616E67650000000000000000000066 +:10550000000000000000000000000000000000009B +:1055100000000000816401088C6401084F535F445F +:105520006561637469766174655000000000000075 +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:105550000000000000000000000000008D64010851 +:10556000D06401085F5075744D61696C00000000E3 +:10557000000000000000000000000000000000002B +:10558000000000000000000000000000000000001B +:10559000000000000000000000000000000000000B +:1055A00000000000D1640108246501085F476574AC +:1055B0004D61696C00000000000000000000000068 +:1055C00000000000000000000000000000000000DB +:1055D00000000000000000000000000000000000CB +:1055E0000000000000000000000000002565010828 +:1055F000A065010853485F5044524D4D5F496E69A4 +:105600007469616C697A654D617373446174614D4D +:10561000616E61676572000000000000000000001C +:10562000000000000000000000000000000000007A +:1056300000000000A1650108A265010853485F5001 +:1056400044524D4D5F496E697469616C697A654574 +:105650006E7669726F6E6D656E74000000000000FA +:10566000000000000000000000000000000000003A +:10567000000000000000000000000000A365010819 +:10568000D865010853485F5044524D4D5F456E76D2 +:1056900069726F6E6D656E745F47657454656D7089 +:1056A0006572617475726500000000000000000002 +:1056B00000000000000000000000000000000000EA +:1056C00000000000D9650108E265010853485F50F9 +:1056D00044524D4D5F456E7669726F6E6D656E74A6 +:1056E0005F47657448756D696469747900000000EE +:1056F00000000000000000000000000000000000AA +:10570000000000000000000000000000E365010848 +:10571000F065010853485F5044524D4D5F436F6E32 +:10572000766572745F4C4D4C696272617279546F28 +:105730005044524D4D4C6962726172790000000014 +:105740000000000000000000000000000000000059 +:1057500000000000F16501081466010853485F501D +:1057600044524D4D5F526566726573684D61737347 +:1057700044617461000000000000000000000000AF +:105780000000000000000000000000000000000019 +:105790000000000000000000000000001566010885 +:1057A0004466010853485F5044524D4D5F4765744D +:1057B00053656E736F72436F6E7465787444617471 +:1057C00061496E6465780000000000000000000080 +:1057D00000000000000000000000000000000000C9 +:1057E00000000000456601086066010853485F50EC +:1057F00044524D4D5F417070656E64456E766972BE +:105800006F6E6D656E74446174610000000000008D +:105810000000000000000000000000000000000088 +:1058200000000000000000000000000061660108A8 +:10583000A066010853485F5044524D4D5F47657460 +:1058400043757272656E74456E7669726F6E6D65C2 +:105850006E74436E74000000000000000000000041 +:105860000000000000000000000000000000000038 +:1058700000000000A1660108A666010853485F50B9 +:1058800044524D4D5F526566726573685044524490 +:1058900061746100000000000000000000000000D2 +:1058A00000000000000000000000000000000000F8 +:1058B000000000000000000000000000A7660108D2 +:1058C000F06601085F5F61656162695F6C6C736CB3 +:1058D00000000000000000000000000000000000C8 +:1058E00000000000000000000000000000000000B8 +:1058F00000000000000000000000000000000000A8 +:1059000000000000F16601081467010853485F4C6D +:105910004D5F54656D706C6174655F537461727432 +:105920005F47656F46656E63696E67000000000043 +:105930000000000000000000000000000000000067 +:1059400000000000000000000000000015670108D2 +:105950004A67010853485F4C4D5F54656D706C6138 +:1059600074655F53746F705F47656F46656E6369FA +:105970006E67000000000000000000000000000052 +:105980000000000000000000000000000000000017 +:10599000000000004B6701084C67010853485F4C4A +:1059A0004D5F54656D706C6174655F50726F6365B7 +:1059B00073735F47656F46656E63696E67000000CD +:1059C00000000000000000000000000000000000D7 +:1059D0000000000000000000000000004D6701080A +:1059E000AA67010853485F4C4D5F54656D706C6148 +:1059F00074655F4D6574686F64496E697469616C44 +:105A0000697A655F47656F46656E63696E6700001A +:105A10000000000000000000000000000000000086 +:105A200000000000AB670108D867010853485F4CCD +:105A30004D5F436865636B47656F46656E63696E6E +:105A400067427566000000000000000000000000D2 +:105A50000000000000000000000000000000000046 +:105A6000000000000000000000000000D9670108ED +:105A70000C68010853485F4C4D5F55706461746554 +:105A800047656F46656E63696E67446174610000C7 +:105A90000000000000000000000000000000000006 +:105AA00000000000000000000000000000000000F6 +:105AB000000000000D6801081A68010853485F4C97 +:105AC0004D5F4765744469666653746570436F75CE +:105AD0006E74466F7247656F46656E63696E6700E8 +:105AE00000000000000000000000000000000000B6 +:105AF0000000000000000000000000001B6801081A +:105B00005C68010853485F4C4D5F47656F46656EA2 +:105B100063696E675F5365745F47657456616C7542 +:105B2000655365727669636500000000000000003F +:105B30000000000000000000000000000000000065 +:105B4000000000005D6801086468010853485F4C6C +:105B50004D5F47656F46656E63696E675F41707044 +:105B6000656E644C6962726172794D534700000042 +:105B70000000000000000000000000000000000025 +:105B8000000000000000000000000000656801083F +:105B9000E468010853485F4C4D5F47656F46656E8A +:105BA00063696E675F4465746563745F4D6F7665A6 +:105BB0004475726174696F6E00000000000000009F +:105BC00000000000000000000000000000000000D5 +:105BD00000000000E56801082269010853485F4C95 +:105BE0004D5F47656F46656E63696E675F446574B8 +:105BF0006563745F4E6F4D6F7665000000000000B6 +:105C00000000000000000000000000000000000094 +:105C100000000000000000000000000023690108EF +:105C20006069010853485F4C4D5F47656F46656E7C +:105C300063696E675F53746172745F5065646F6D02 +:105C400065746572000000000000000000000000A4 +:105C50000000000000000000000000000000000044 +:105C60000000000061690108DE69010853485F4CCB +:105C70004D5F47656F46656E63696E675F53746F0E +:105C8000705F5065646F6D657465720000000000A0 +:105C90000000000000000000000000000000000004 +:105CA000000000000000000000000000DF690108A3 +:105CB000326A010853485F4C4D5F47656F46656E19 +:105CC00063696E675F4465746563745F4D6F766585 +:105CD00044697374616E6365000000000000000099 +:105CE00000000000000000000000000000000000B4 +:105CF00000000000336A0108786A010853485F4CCD +:105D00004D5F54656D706C6174655F436865636B6E +:105D10005F4C69666554696D657353657276696336 +:105D2000650000000000000000000000000000000E +:105D3000000000000000000000000000796A010877 +:105D4000D66A010853485F4C4D5F54656D706C61B5 +:105D500074655F53746172745F4C69666554696DF4 +:105D6000657353657276696365000000000000008A +:105D70000000000000000000000000000000000023 +:105D800000000000D76A0108886B010853485F4C87 +:105D90004D5F54656D706C6174655F53746F705FB7 +:105DA0004C69666554696D657353657276696365A0 +:105DB00000000000000000000000000000000000E3 +:105DC000000000000000000000000000896B0108D6 +:105DD000E06B010853485F4C4D5F54656D706C611A +:105DE00074655F417070656E644D53475F4C6966C2 +:105DF0006554696D6573536572766963650000006B +:105E00000000000000000000000000000000000092 +:105E100000000000E16B01087E6D010853485F4CF3 +:105E20004D5F54656D706C6174655F50726F636532 +:105E300073735F4C69666554696D657353657276FB +:105E40006963650000000000000000000000000021 +:105E50000000000000000000000000007F6D01084D +:105E6000A26D010853485F4C4D5F54656D706C61C5 +:105E700074655F4D6574686F64496E697469616CBF +:105E8000697A655F4C69666554696D6573536572BF +:105E9000766963650000000000000000000000005B +:105EA00000000000A36D0108046E010853485F4C18 +:105EB0004D5F4C69666554696D65735365727669AB +:105EC00063655F536574557365725761697454698E +:105ED0006D650000000000000000000000000000F0 +:105EE000000000000000000000000000056E010836 +:105EF0001C6E010853485F4C4D5F4C6966655469E0 +:105F00006D6573536572766963655F536574557328 +:105F1000657253746F7054696D6500000000000075 +:105F20000000000000000000000000000000000071 +:105F3000000000001D6E0108346E010853485F4CDC +:105F40004D5F4C69666554696D657353657276691A +:105F500063655F53657453746179696E67417265F7 +:105F60006152616469757300000000000000000068 +:105F7000000000000000000000000000356E010875 +:105F80004C6E010853485F4C4D5F4C69666554691F +:105F90006D6573536572766963655F536574537499 +:105FA0006179696E67526164697573000000000071 +:105FB00000000000000000000000000000000000E1 +:105FC000000000004D6E0108FC6E010853485F4C54 +:105FD0004D5F496E697469616C697A6541626E6F83 +:105FE000726D616C53686F636B000000000000000D +:105FF00000000000000000000000000000000000A1 +:10600000000000000000000000000000FD6E01081C +:106010000E6F010853485F4C4D5F54656D706C61A5 +:1060200074655F53746172745F41626E6F726D610B +:106030006C53686F636B00000000000000000000FC +:106040000000000000000000000000000000000050 +:10605000000000000F6F01086C6F010853485F4C8F +:106060004D5F54656D706C6174655F53746F705FE4 +:1060700041626E6F726D616C53686F636B000000FC +:106080000000000000000000000000000000000010 +:106090000000000000000000000000006D6F01081B +:1060A000846F010853485F4C4D5F54656D706C619F +:1060B00074655F50726F636573735F41626E6F7278 +:1060C0006D616C53686F636B00000000000000009E +:1060D00000000000000000000000000000000000C0 +:1060E00000000000856F01080270010853485F4CF2 +:1060F0004D5F54656D706C6174655F4D6574686F5C +:1061000064496E697469616C697A655F41626E6F3A +:10611000726D616C53686F636B00000000000000DB +:1061200000000000000000000000000003700108F3 +:106130003C70010853485F4C4D5F436865636B4199 +:10614000626E6F726D616C53686F636B427566004F +:10615000000000000000000000000000000000003F +:10616000000000000000000000000000000000002F +:10617000000000003D7001085470010853485F4C56 +:106180004D5F47657441626E6F726D616C53686FED +:10619000636B5265636F676E697A65640000000027 +:1061A00000000000000000000000000000000000EF +:1061B0000000000000000000000000005570010811 +:1061C0005C70010853485F4C4D5F53657441626ECB +:1061D0006F726D616C53686F636B5265636F676E4E +:1061E000697A656400000000000000000000000003 +:1061F000000000000000000000000000000000009F +:10620000000000005D7001086270010853485F4C97 +:106210004D5F55706461746541626E6F726D616C43 +:1062200053686F636B4461746100000000000000FC +:10623000000000000000000000000000000000005E +:106240000000000000000000000000006370010872 +:106250007470010853485F4C4D5F41626E6F726D00 +:10626000616C53686F636B5F417070656E644C69FD +:1062700062726172794D5347000000000000000017 +:10628000000000000000000000000000000000000E +:106290000000000075700108BE70010853485F4C93 +:1062A0004D5F41626E6F726D616C53686F636B5FBF +:1062B00053657455736572416374696F6E000000B5 +:1062C00000000000000000000000000000000000CE +:1062D000000000000000000000000000BF70010886 +:1062E0007871010853485F4C4D5F54656D706C6167 +:1062F00074655F53746172745F4170647200000072 +:10630000000000000000000000000000000000008D +:10631000000000000000000000000000000000007D +:1063200000000000797101080E72010853485F4CAB +:106330004D5F54656D706C6174655F53746F705F11 +:1063400041706472000000000000000000000000C6 +:10635000000000000000000000000000000000003D +:106360000000000000000000000000000F720108A3 +:106370006E72010853485F4C4D5F54656D706C61DF +:1063800074655F50726F636573735F417064720010 +:1063900000000000000000000000000000000000FD +:1063A00000000000000000000000000000000000ED +:1063B000000000006F7201081C73010853485F4C15 +:1063C0004D5F54656D706C6174655F4D6574686F89 +:1063D00064496E697469616C697A655F4170647261 +:1063E00000000000000000000000000000000000AD +:1063F0000000000000000000000000001D73010804 +:10640000B473010853485F4C4D5F436865636B414B +:106410007064724275660000000000000000000019 +:10642000000000000000000000000000000000006C +:10643000000000000000000000000000000000005C +:1064400000000000B5730108DC73010853485F4C7D +:106450004D5F55706461746541706472446174612C +:10646000000000000000000000000000000000002C +:10647000000000000000000000000000000000001C +:10648000000000000000000000000000DD730108B3 +:10649000EC73010853485F4C4D5F417064725F417B +:1064A0007070656E644C6962726172794D53470019 +:1064B00000000000000000000000000000000000DC +:1064C00000000000000000000000000000000000CC +:1064D00000000000ED730108A274010853485F4CEE +:1064E0004D5F415044525F5365744750535374613C +:1064F0007475730000000000000000000000000040 +:10650000000000000000000000000000000000008B +:10651000000000000000000000000000A37401085B +:10652000CE74010853485F4C4D5F415044525F5355 +:1065300065745374657057616B6555704E756D6207 +:106540006572000000000000000000000000000074 +:10655000000000000000000000000000000000003B +:1065600000000000CF740108E274010853485F4C3A +:106570004D5F415044525F53657454696D65576176 +:106580006B6555705365636F6E640000000000001A +:1065900000000000000000000000000000000000FB +:1065A000000000000000000000000000E37401088B +:1065B0001675010853485F4C4D5F415044525F438C +:1065C0006865636B53746179696E6753656E73694F +:1065D0006E674F7065726174696F6E000000000035 +:1065E00000000000000000000000000000000000AB +:1065F00000000000177501086075010853485F4CE2 +:106600004D5F415044525F436865636B4C6F6361FB +:1066100074696F6E526571756573740000000000D7 +:10662000000000000000000000000000000000006A +:10663000000000000000000000000000617501087B +:10664000847B01084D5F5065646F6D657465725F92 +:106650004D616B654465766963654D6F74696F6EF6 +:1066600042756666657200000000000000000000D0 +:10667000000000000000000000000000000000001A +:1066800000000000857B0108C47B01084D5F506558 +:10669000646F6D657465725F436865636B446576AE +:1066A0006963654D6F766500000000000000000022 +:1066B00000000000000000000000000000000000DA +:1066C000000000000000000000000000C57B010881 +:1066D000BA7C01084D5F5065646F6D657465725FCB +:1066E00044657465637453746570000000000000B5 +:1066F000000000000000000000000000000000009A +:106700000000000000000000000000000000000089 +:1067100000000000BB7C0108B47E01084D5F50659D +:10672000646F6D657465725F5365744163746976F7 +:10673000697479537461747573000000000000007F +:106740000000000000000000000000000000000049 +:10675000000000000000000000000000B57E0108FD +:106760001A7F01084D5F5065646F6D657465725FD7 +:1067700047657453616D706C696E675374617465BD +:106780000000000000000000000000000000000009 +:1067900000000000000000000000000000000000F9 +:1067A000000000001B7F0108227F01084D5F50653B +:1067B000646F6D657465725F476574537465704985 +:1067C0006E666F0000000000000000000000000086 +:1067D00000000000000000000000000000000000B9 +:1067E000000000000000000000000000237F0108FE +:1067F000347F01084D5F5065646F6D657465725F2D +:106800004765744163746976697479496E666F008F +:106810000000000000000000000000000000000078 +:106820000000000000000000000000000000000068 +:1068300000000000357F0108487F01084D5F50656A +:10684000646F6D657465725F5365745573657249E5 +:106850006E666F5F53696E676C6500000000000034 +:106860000000000000000000000000000000000028 +:10687000000000000000000000000000497F010847 +:10688000F07F01084D5F5065646F6D657465725FE0 +:10689000496E697400000000000000000000000064 +:1068A00000000000000000000000000000000000E8 +:1068B00000000000000000000000000000000000D8 +:1068C00000000000F17F0108168101084D5F50654E +:1068D000646F6D657465725F476574537465704964 +:1068E0006E666F466F725350656E000000000000C8 +:1068F0000000000000000000000000000000000098 +:1069000000000000000000000000000017810108E6 +:10691000308101084D5F5065646F6D657465725F0D +:10692000536574436F726553746570496E666F3258 +:1069300053746570496E666F00000000000000002F +:106940000000000000000000000000000000000047 +:106950000000000031810108A88201084D5F5065E8 +:10696000646F6D657465725F75706461746553748E +:106970006570496E666F00000000000000000000B6 +:106980000000000000000000000000000000000007 +:10699000000000000000000000000000A9820108C3 +:1069A000348401084D5F5065646F6D657465725F76 +:1069B000436865636B44657669636553746F700003 +:1069C00000000000000000000000000000000000C7 +:1069D00000000000000000000000000000000000B7 +:1069E00000000000358401084A8401085570646184 +:1069F00074655570446E5374657044657461696C58 +:106A00000000000000000000000000000000000086 +:106A10000000000000000000000000000000000076 +:106A20000000000000000000000000004B8401088E +:106A3000A88401084D5F5065646F6D657465725F71 +:106A4000636F6D70757465537465704465746169C6 +:106A50006C000000000000000000000000000000CA +:106A60000000000000000000000000000000000026 +:106A700000000000A9840108B88501084D5F506539 +:106A8000646F6D657465725F72657365745265736A +:106A90006572766564537465700000000000000044 +:106AA00000000000000000000000000000000000E6 +:106AB000000000000000000000000000B98501088F +:106AC000C48501084D5F5065646F6D657465725FC4 +:106AD000757064617465526576657273656455702E +:106AE000646E0000000000000000000000000000D4 +:106AF0000000000000000000000000000000000096 +:106B000000000000C5850108E08501084D5F506563 +:106B1000646F6D657465725F636F6D7075746543E6 +:106B2000616C6F726965345570646E00000000001E +:106B30000000000000000000000000000000000055 +:106B4000000000000000000000000000E1850108D6 +:106B5000308701084D5F5065646F6D657465725FC5 +:106B6000636865636B44697374616E63654F7665D2 +:106B700072466C6F7700000000000000000000000B +:106B80000000000000000000000000000000000005 +:106B90000000000031870108488701084D5F5065FB +:106BA000646F6D657465725F636865636B43616C88 +:106BB0006F7269654F766572466C6F7700000000F2 +:106BC00000000000000000000000000000000000C5 +:106BD00000000000000000000000000049870108DC +:106BE000608701084D5F5065646F6D657465725F05 +:106BF000636865636B537465704F766572466C6F3E +:106C0000770000000000000000000000000000000D +:106C10000000000000000000000000000000000074 +:106C20000000000061870108B888010853485F4CE4 +:106C30004D5F54656D706C6174655F5374617274FF +:106C40005F537465704465746563746F720000000F +:106C50000000000000000000000000000000000034 +:106C6000000000000000000000000000B9880108DA +:106C70000089010853485F4C4D5F54656D706C612D +:106C800074655F53746F705F5374657044657465A9 +:106C900063746F720000000000000000000000003C +:106CA00000000000000000000000000000000000E4 +:106CB00000000000018901083089010853485F4C39 +:106CC0004D5F54656D706C6174655F50726F636584 +:106CD00073735F537465704465746563746F720099 +:106CE00000000000000000000000000000000000A4 +:106CF00000000000000000000000000031890108D1 +:106D00006489010853485F4C4D5F54656D706C6138 +:106D100074655F4D6574686F64496E697469616C10 +:106D2000697A655F537465704465746563746F72E6 +:106D30000000000000000000000000000000000053 +:106D400000000000658901089089010853485F4CE4 +:106D50004D5F436865636B53746570446574656328 +:106D6000746F7242756600000000000000000000B1 +:106D70000000000000000000000000000000000013 +:106D800000000000000000000000000091890108E0 +:106D9000A289010853485F4C4D5F53657453746575 +:106DA000704576656E740000000000000000000071 +:106DB00000000000000000000000000000000000D3 +:106DC00000000000000000000000000000000000C3 +:106DD00000000000A3890108A889010853485F4CFE +:106DE0004D5F476574537465704576656E74000039 +:106DF0000000000000000000000000000000000093 +:106E00000000000000000000000000000000000082 +:106E1000000000000000000000000000A989010837 +:106E2000AE89010853485F4C4D5F476574537465E4 +:106E3000704465746563746F725265636F676E69E1 +:106E40007A656400000000000000000000000000FF +:106E50000000000000000000000000000000000032 +:106E600000000000AF890108D489010853485F4C35 +:106E70004D5F537465704465746563746F725F41F0 +:106E80007070656E644C6962726172794D5347002F +:106E900000000000000000000000000000000000F2 +:106EA000000000000000000000000000D58901087B +:106EB0000C8A010853485F4C4D5F54656D706C61DE +:106EC00074655F53746172745F53746570436F755A +:106ED0006E746572000000000000000000000000F9 +:106EE00000000000000000000000000000000000A2 +:106EF000000000000D8A0108548A010853485F4CC5 +:106F00004D5F54656D706C6174655F53746F705F35 +:106F100053746570436F756E7465720000000000F5 +:106F20000000000000000000000000000000000061 +:106F3000000000000000000000000000558A010869 +:106F4000848A010853485F4C4D5F54656D706C61D5 +:106F500074655F50726F636573735F5374657043DC +:106F60006F756E7465720000000000000000000084 +:106F70000000000000000000000000000000000011 +:106F800000000000858A0108C08A010853485F4C50 +:106F90004D5F54656D706C6174655F4D6574686FAD +:106FA00064496E697469616C697A655F5374657070 +:106FB000436F756E746572000000000000000000F1 +:106FC000000000000000000000000000C18A01086D +:106FD000EC8A010853485F4C4D5F436865636B530F +:106FE000746570436F756E7465724275660000005B +:106FF0000000000000000000000000000000000091 +:107000000000000000000000000000000000000080 +:1070100000000000ED8A0108FE8A010853485F4C19 +:107020004D5F53657453746570436F756E7465720C +:107030004576656E7400000000000000000000004E +:107040000000000000000000000000000000000040 +:10705000000000000000000000000000FF8A01089E +:10706000048B010853485F4C4D5F4765745374654A +:1070700070436F756E7465724576656E74000000BE +:107080000000000000000000000000000000000000 +:1070900000000000000000000000000000000000F0 +:1070A00000000000058B01080A8B010853485F4C63 +:1070B0004D5F55706461746553746570436F756E90 +:1070C00074657244617461000000000000000000FB +:1070D00000000000000000000000000000000000B0 +:1070E0000000000000000000000000000B8B010801 +:1070F000168B010853485F4C4D5F476574537465A8 +:1071000070436F756E7465725265636F676E697AEE +:1071100065640000000000000000000000000000A6 +:10712000000000000000000000000000000000005F +:1071300000000000178B01081E8B010853485F4CAC +:107140004D5F53657453746570436F756E746572EB +:107150005265636F676E697A656400000000000025 +:10716000000000000000000000000000000000001F +:107170000000000000000000000000001F8B01085C +:10718000408B010853485F4C4D5F53746570436FEB +:10719000756E7465725F417070656E644C69627281 +:1071A0006172794D534700000000000000000000AC +:1071B00000000000000000000000000000000000CF +:1071C00000000000418B0108788B01084D445F49A5 +:1071D0006E69740000000000000000000000000064 +:1071E000000000000000000000000000000000009F +:1071F000000000000000000000000000000000008F +:10720000000000000000000000000000798B010871 +:10721000F08B01084D445F53656E736F7243686174 +:107220006E676564000000000000000000000000C0 +:10723000000000000000000000000000000000004E +:10724000000000000000000000000000000000003E +:1072500000000000F18B01083A8E01084D445F47A1 +:10726000657444656C7461416E676C650000000074 +:10727000000000000000000000000000000000000E +:1072800000000000000000000000000000000000FE +:107290000000000000000000000000003B8E01081C +:1072A000688E01084D525F496E697469616C697A34 +:1072B000654D6F74696F6E4D616E61676572000038 +:1072C00000000000000000000000000000000000BE +:1072D00000000000000000000000000000000000AE +:1072E00000000000698E0108FE8E010853656C6580 +:1072F00063745363656E6172696F00000000000083 +:10730000000000000000000000000000000000007D +:10731000000000000000000000000000000000006D +:10732000000000000000000000000000FF8E0108C7 +:10733000588F0108416464324D6F74696F6E4576F1 +:10734000656E7451756575650000000000000000F1 +:10735000000000000000000000000000000000002D +:10736000000000000000000000000000000000001D +:1073700000000000598F0108788F01085365744D93 +:107380006F74696F6E4576656E7446726F6D517578 +:1073900065756500000000000000000000000000AE +:1073A00000000000000000000000000000000000DD +:1073B000000000000000000000000000798F0108BC +:1073C000A28F01084D6F74696F6E5265636F676EAF +:1073D0006974696F6E456E67696E65546872656140 +:1073E0006400000000000000000000000000000039 +:1073F000000000000000000000000000000000008D +:1074000000000000A38F0108C08F01084D525F47A4 +:1074100065744D6F74696F6E5363656E6172696FE9 +:1074200049640000000000000000000000000000AF +:10743000000000000000000000000000000000004C +:10744000000000000000000000000000C18F0108E3 +:107450002E9001084D525F4D616E6167654D6F74EE +:10746000696F6E5363656E6172696F0000000000A2 +:10747000000000000000000000000000000000000C +:1074800000000000000000000000000000000000FC +:10749000000000002F900108169101084D525F5026 +:1074A00072696D69746976655374617475734D6141 +:1074B0006E616765720000000000000000000000BF +:1074C00000000000000000000000000000000000BC +:1074D00000000000000000000000000017910108FB +:1074E00098920108476574526177416363446174FF +:1074F000610000000000000000000000000000002B +:10750000000000000000000000000000000000007B +:10751000000000000000000000000000000000006B +:107520000000000099920108649301084D525F46E3 +:10753000696E616C697A654D6F74696F6E4D616ECD +:10754000616765720000000000000000000000009C +:10755000000000000000000000000000000000002B +:10756000000000000000000000000000659301081A +:10757000B493010847565F496E697400000000002B +:1075800000000000000000000000000000000000FB +:1075900000000000000000000000000000000000EB +:1075A00000000000000000000000000000000000DB +:1075B00000000000B5930108FC93010847565F5393 +:1075C000656E736F724368616E67656400000000EA +:1075D00000000000000000000000000000000000AB +:1075E000000000000000000000000000000000009B +:1075F000000000000000000000000000FD930108F2 +:107600003A94010847565F4465746563744D6F761C +:10761000656D656E74000000000000000000000051 +:10762000000000000000000000000000000000005A +:10763000000000000000000000000000000000004A +:10764000000000003B940108FA94010847565F4689 +:10765000696E616C00000000000000000000000086 +:10766000000000000000000000000000000000001A +:10767000000000000000000000000000000000000A +:10768000000000000000000000000000FB94010862 +:1076900010950108534D43616C6C506F73655265D2 +:1076A000636F675F696E697469616C697A6543616C +:1076B0006C6C506F73655265636F6700000000006B +:1076C00000000000000000000000000000000000BA +:1076D00000000000119501086E950108534D4361AB +:1076E0006C6C506F73655265636F675F7365745040 +:1076F000726F78696D69747956616C756500000008 +:107700000000000000000000000000000000000079 +:107710000000000000000000000000006F9501085C +:107720007C950108534D43616C6C506F73655265D5 +:10773000636F675F63616C6C506F73655265636FF5 +:10774000676E697A657200000000000000000000AA +:107750000000000000000000000000000000000029 +:10776000000000007D950108289A0108534D4361EF +:107770006C6C506F73655265636F675F63686563B8 +:107780006B43616C6C506F73655F72657665727385 +:107790006500000000000000000000000000000084 +:1077A000000000000000000000000000299A01080D +:1077B000B09A0108534D43616C6C506F736552650C +:1077C000636F675F636865636B43616C6C506F7375 +:1077D0006500000000000000000000000000000044 +:1077E0000000000000000000000000000000000099 +:1077F00000000000B19A01087A9B0108534D4361D3 +:107800006C6C506F73655265636F675F726573650B +:1078100074526F74617465416E670000000000006F +:107820000000000000000000000000000000000058 +:107830000000000000000000000000007B9B010829 +:107840008C9B0108534D43616C6C506F736552659E +:10785000636F675F636F6D707574654D6F74696F8B +:107860006E416E676C6500000000000000000000C3 +:107870000000000000000000000000000000000008 +:10788000000000008D9B01084A9C0108534D436194 +:107890006C6C506F73655265636F675F726573657B +:1078A000744D6F74696F6E416E676C650000000007 +:1078B00000000000000000000000000000000000C8 +:1078C0000000000000000000000000004B9C0108C8 +:1078D000689C0108534D43616C6C506F7365526531 +:1078E000636F675F636F6D70757465526F746174F9 +:1078F00065416E676C65000000000000000000003C +:107900000000000000000000000000000000000077 +:1079100000000000699C0108C89D0108534D4361A7 +:107920006C6C506F73655265636F675F706932701E +:1079300069000000000000000000000000000000DE +:107940000000000000000000000000000000000037 +:10795000000000000000000000000000C99D0108B8 +:10796000049E0108534D43616C6C506F7365526502 +:10797000636F675F636F6D707574654779726F4190 +:1079800076675F50726F78696D6974794F666600CB +:1079900000000000000000000000000000000000E7 +:1079A00000000000059E0108769E0108534D4361CA +:1079B0006C6C506F73655265636F675F726573655A +:1079C000744779726F4176675F4465766963655382 +:1079D000746F700000000000000000000000000054 +:1079E000000000000000000000000000779E010879 +:1079F0008C9E0108534D43616C6C506F73655265EA +:107A0000636F675F636F6D707574654779726F41FF +:107A100076675F44657669636553746F7000000034 +:107A20000000000000000000000000000000000056 +:107A3000000000008D9E0108689F0108534D4361BE +:107A40006C6C506F73655265636F675F636F6D70C9 +:107A50007574654779726F4176675F50726F7869A8 +:107A60006D6974794F6E0000000000000000000096 +:107A7000000000000000000000000000699F0108F5 +:107A80002CA10108534D43616C6C506F73655265B6 +:107A9000636F675F636F6D707574654D65616E5F71 +:107AA0006779726F00000000000000000000000015 +:107AB00000000000000000000000000000000000C6 +:107AC000000000002DA101089CA10108534D436155 +:107AD0006C6C506F73655265636F675F636F6D7039 +:107AE0007574655661725F6779726F0000000000FF +:107AF0000000000000000000000000000000000086 +:107B00000000000000000000000000009DA101082E +:107B100020A20108534D43616C6C506F7365526530 +:107B2000636F675F636865636B52657665727365E3 +:107B30004D6F74696F6E00000000000000000000CF +:107B40000000000000000000000000000000000035 +:107B50000000000021A2010878A20108534D4361F2 +:107B60006C6C506F73655265636F675F67657447D0 +:107B700079726F4275666665720000000000000051 +:107B800000000000000000000000000000000000F5 +:107B900000000000000000000000000079A20108C1 +:107BA00098A20108534D43616C6C506F7365526528 +:107BB000636F675F7365744779726F427566666558 +:107BC0007200000000000000000000000000000043 +:107BD00000000000000000000000000000000000A5 +:107BE0000000000099A20108B2A20108534D4361B0 +:107BF0006C6C506F73655265636F675F736574502B +:107C0000726F7842756666657200000000000000C1 +:107C10000000000000000000000000000000000064 +:107C2000000000000000000000000000B3A20108F6 +:107C3000E0A20108534D43616C6C506F736552654F +:107C4000636F675F61627300000000000000000066 +:107C50000000000000000000000000000000000024 +:107C60000000000000000000000000000000000014 +:107C700000000000E1A20108F4A201085F5F696151 +:107C8000725F646C69625F7065727468726561646A +:107C90005F61636365737300000000000000000013 +:107CA00000000000000000000000000000000000D4 +:107CB000000000000000000000000000F5A2010824 +:107CC00010A301084F535F436C656172576169747B +:107CD0004F626A0000000000000000000000000089 +:107CE0000000000000000000000000000000000094 +:107CF0000000000000000000000000000000000084 +:107D00000000000011A301084CA3010861626F721A +:107D100074000000000000000000000000000000EF +:107D20000000000000000000000000000000000053 +:107D30000000000000000000000000000000000043 +:107D40000000000000000000000000004DA301083A +:107D500054A301085F5F646174615F4765744D659A +:107D60006D4368756E6B00000000000000000000AD +:107D70000000000000000000000000000000000003 +:107D800000000000000000000000000000000000F3 +:107D90000000000055A3010880A30108414B534394 +:107DA0005F496E69744465636F6D70000000000088 +:107DB00000000000000000000000000000000000C3 +:107DC00000000000000000000000000000000000B3 +:107DD00000000000000000000000000081A3010876 +:107DE0009CA30108436865636B44697374436F6DBA +:107DF00070656E0000000000000000000000000040 +:107E00000000000000000000000000000000000072 +:107E10000000000000000000000000000000000062 +:107E2000000000009DA30108A8A40108457865632F +:107E300044697374436F6D70656E0000000000004C +:107E40000000000000000000000000000000000032 +:107E50000000000000000000000000000000000022 +:107E6000000000000000000000000000A9A40108BC +:107E700098A5010843616C6341766572616765008E +:107E800000000000000000000000000000000000F2 +:107E900000000000000000000000000000000000E2 +:107EA00000000000000000000000000000000000D2 +:107EB0000000000099A5010862A6010853656E73D1 +:107EC00065436F72726563745F383937350000003F +:107ED00000000000000000000000000000000000A2 +:107EE0000000000000000000000000000000000092 +:107EF00000000000000000000000000063A6010870 +:107F0000D0A6010853656E7365436F727265637422 +:107F10005F38393732000000000000000000000028 +:107F20000000000000000000000000000000000051 +:107F30000000000000000000000000000000000041 +:107F400000000000D1A601083EA7010853656E732A +:107F500065436F72726563745F38393633000000B1 +:107F60000000000000000000000000000000000011 +:107F70000000000000000000000000000000000001 +:107F80000000000000000000000000003FA7010802 +:107F9000B4A7010853656E7365436F7272656374AD +:107FA0005F3039393132000000000000000000006D +:107FB00000000000000000000000000000000000C1 +:107FC00000000000000000000000000000000000B1 +:107FD00000000000B5A7010830A8010853656E73C2 +:107FE00065436F72726563745F30393931310000F7 +:107FF0000000000000000000000000000000000081 +:108000000000000000000000000000000000000070 +:1080100000000000000000000000000031A801087E +:10802000A6A801084E53465F476574436F6E64000F +:108030000000000000000000000000000000000040 +:108040000000000000000000000000000000000030 +:108050000000000000000000000000000000000020 +:1080600000000000A7A80108DCA80108414B534309 +:108070005F4E5346000000000000000000000000BA +:1080800000000000000000000000000000000000F0 +:1080900000000000000000000000000000000000E0 +:1080A000000000000000000000000000DDA8010842 +:1080B00052AA0108414B53435F496E69744465639A +:1080C0006F6D705F4E53460000000000000000001E +:1080D00000000000000000000000000000000000A0 +:1080E0000000000000000000000000000000000090 +:1080F0000000000053AA01089CAA0108414B534309 +:108100005F4465636F6D7053335F4E5346000000EC +:10811000000000000000000000000000000000005F +:10812000000000000000000000000000000000004F +:108130000000000000000000000000009DAA0108EF +:10814000A4AC010853335F43657274696669636167 +:1081500074696F6E00000000000000000000000065 +:10816000000000000000000000000000000000000F +:1081700000000000000000000000000000000000FF +:1081800000000000A5AC0108D6AE0108746D706651 +:10819000756E633200000000000000000000000067 +:1081A00000000000000000000000000000000000CF +:1081B00000000000000000000000000000000000BF +:1081C000000000000000000000000000D7AE010821 +:1081D000E8AE01087A7A414B53435F496E697448AF +:1081E000444F4550726F6350726D735333000000FB +:1081F000000000000000000000000000000000007F +:10820000000000000000000000000000000000006E +:1082100000000000E9AE010818AF01087A7A414B6E +:1082200053435F48444F4550726F636573735333D4 +:10823000000000000000000000000000000000003E +:10824000000000000000000000000000000000002E +:1082500000000000000000000000000019AF01084D +:10826000F2B10108414B53435F53657448444F4595 +:108270004C6576656C000000000000000000000006 +:1082800000000000000000000000000000000000EE +:1082900000000000000000000000000000000000DE +:1082A00000000000F3B101089CB2010848444F45AA +:1082B00000000000000000000000000000000000BE +:1082C00000000000000000000000000000000000AE +:1082D000000000000000000000000000000000009E +:1082E0000000000000000000000000009DB2010836 +:1082F000E8B301084669744F6E5370686572650093 +:10830000000000000000000000000000000000006D +:10831000000000000000000000000000000000005D +:10832000000000000000000000000000000000004D +:1083300000000000E9B301088CB4010848446563FB +:108340006973696F6E00000000000000000000000B +:10835000000000000000000000000000000000001D +:10836000000000000000000000000000000000000D +:108370000000000000000000000000008DB40108B3 +:1083800060B5010847657452616469757300000047 +:1083900000000000000000000000000000000000DD +:1083A00000000000000000000000000000000000CD +:1083B00000000000000000000000000000000000BD +:1083C0000000000061B5010828B60108416464534B +:1083D000756242756666657200000000000000006C +:1083E000000000000000000000000000000000008D +:1083F000000000000000000000000000000000007D +:1084000000000000000000000000000029B6010884 +:10841000B0B70108414B53435F496E697448466CDD +:108420007563436865636B00000000000000000096 +:10843000000000000000000000000000000000003C +:10844000000000000000000000000000000000002C +:1084500000000000B1B70108CAB70108414B5343FF +:108460005F48466C7563436865636B0000000000FD +:1084700000000000000000000000000000000000FC +:1084800000000000000000000000000000000000EC +:10849000000000000000000000000000CBB7010851 +:1084A000F8B70108414B53435F564E6F726D0000A1 +:1084B00000000000000000000000000000000000BC +:1084C00000000000000000000000000000000000AC +:1084D000000000000000000000000000000000009C +:1084E00000000000F9B701086CB801085F5F707206 +:1084F000696E745F726573756C745F6C6F636174C1 +:10850000696F6E0000000000000000000000000025 +:10851000000000000000000000000000000000005B +:108520000000000000000000000000006DB801081D +:108530006EB80108696E765F7365745F6163636529 +:108540006C5F66756C6C5F7363616C655F72616EA6 +:10855000676500000000000000000000000000004F +:10856000000000000000000000000000000000000B +:10857000000000006FB801089AB80108696E765FC4 +:108580007365745F6779726F5F66756C6C5F736338 +:10859000616C655F72616E6765000000000000003D +:1085A00000000000000000000000000000000000CB +:1085B0000000000000000000000000009BB801085F +:1085C000CAB80108696E765F696E69745F696E7614 +:1085D000656E73656E73655F617069000000000011 +:1085E000000000000000000000000000000000008B +:1085F000000000000000000000000000000000007B +:1086000000000000CBB80108BCB90108696E765FB4 +:108610007365745F6779726F5F616363656C5F64D4 +:108620006174615F72617465730000000000000096 +:10863000000000000000000000000000000000003A +:10864000000000000000000000000000BDB90108AB +:10865000DEB90108696E765F7365745F636F6D7074 +:108660006173735F646174615F72617465000000BF +:1086700000000000000000000000000000000000FA +:1086800000000000000000000000000000000000EA +:1086900000000000DFB90108F4B90108696E765FD7 +:1086A0007365745F6669666F5F6461746100000082 +:1086B00000000000000000000000000000000000BA +:1086C00000000000000000000000000000000000AA +:1086D000000000000000000000000000F5B90108E3 +:1086E000BEBA0108696E765F6765745F395F61784D +:1086F000697300000000000000000000000000009E +:108700000000000000000000000000000000000069 +:108710000000000000000000000000000000000059 +:1087200000000000BFBA0108CABA0108696E765F8E +:108730006765745F365F617869735F67616D650057 +:108740000000000000000000000000000000000029 +:108750000000000000000000000000000000000019 +:10876000000000000000000000000000CBBA01087B +:10877000D6BA0108696E765F6765745F65756C656A +:10878000725F395F617869730000000000000000CB +:1087900000000000000000000000000000000000D9 +:1087A00000000000000000000000000000000000C9 +:1087B00000000000D7BA0108E0BA0108696E765FD0 +:1087C0006779726F5F7475726E65645F6F6666005D +:1087D0000000000000000000000000000000000099 +:1087E0000000000000000000000000000000000089 +:1087F000000000000000000000000000E1BA0108D5 +:10880000EABA0108696E765F616363656C5F7475CF +:10881000726E65645F6F6666000000000000000015 +:108820000000000000000000000000000000000048 +:108830000000000000000000000000000000000038 +:1088400000000000EBBA0108F4BA0108696E765F17 +:10885000636F6D706173735F7475726E65645F6F63 +:10886000666600000000000000000000000000003C +:1088700000000000000000000000000000000000F8 +:10888000000000000000000000000000F5BA010830 +:10889000FEBA0108696E765F6C70715F7475726EF6 +:1088A00065645F6F66660000000000000000000065 +:1088B00000000000000000000000000000000000B8 +:1088C00000000000000000000000000000000000A8 +:1088D00000000000FFBA010808BB0108696E765F5E +:1088E0007365745F6D61747269785F746F5F7363D1 +:1088F000616C6172000000000000000000000000D8 +:108900000000000000000000000000000000000067 +:1089100000000000000000000000000009BB01088A +:108920000CBB0108696E765F7365745F6779726F5F +:108930005F6F7269656E745F776974685F73636196 +:108940006C65000000000000000000000000000056 +:108950000000000000000000000000000000000017 +:10896000000000000DBB010810BB0108696E765FB6 +:108970007365745F616363656C5F6F7269656E7464 +:108980005F776974685F7363616C65000000000065 +:1089900000000000000000000000000000000000D7 +:1089A00000000000000000000000000011BB0108F2 +:1089B00070BB01086D70755F77726974655F6D6576 +:1089C0006D0000000000000000000000000000003A +:1089D0000000000000000000000000000000000097 +:1089E0000000000000000000000000000000000087 +:1089F0000000000071BB0108C0BB01086D70755F0D +:108A0000726561645F6D656D00000000000000002C +:108A10000000000000000000000000000000000056 +:108A20000000000000000000000000000000000046 +:108A3000000000000000000000000000C1BB0108B1 +:108A400010BC01086D70755F6C6F61645F66697260 +:108A50006D776172650000000000000000000000FA +:108A60000000000000000000000000000000000006 +:108A700000000000000000000000000000000000F6 +:108A80000000000011BC0108F8BC0108646D705FB3 +:108A9000726F775F325F7363616C65000000000086 +:108AA00000000000000000000000000000000000C6 +:108AB00000000000000000000000000000000000B6 +:108AC000000000000000000000000000F9BC0108E8 +:108AD00038BD0108646D705F6F7269656E74617492 +:108AE000696F6E5F6D61747269785F746F5F7363D5 +:108AF000616C6172000000000000000000000000D6 +:108B00000000000000000000000000000000000065 +:108B10000000000039BD01085ABD0108646D705F96 +:108B20007365745F6F7269656E746174696F6E00EE +:108B30000000000000000000000000000000000035 +:108B40000000000000000000000000000000000025 +:108B50000000000000000000000000005BBD0108F4 +:108B600076BE0108646D705F72657365745F6669D7 +:108B7000666F000000000000000000000000000020 +:108B800000000000000000000000000000000000E5 +:108B900000000000000000000000000000000000D5 +:108BA0000000000077BE0108DCBE0108646D705F44 +:108BB000656E61626C655F6C705F717561740000F9 +:108BC00000000000000000000000000000000000A5 +:108BD0000000000000000000000000000000000095 +:108BE000000000000000000000000000DDBE0108E1 +:108BF00024BF0108646D705F656E61626C655F36ED +:108C0000785F6C705F717561740000000000000097 +:108C10000000000000000000000000000000000054 +:108C20000000000000000000000000000000000044 +:108C30000000000025BF01086CBF0108646D705F73 +:108C40007365745F6669666F5F72617465000000CA +:108C50000000000000000000000000000000000014 +:108C60000000000000000000000000000000000004 +:108C70000000000000000000000000006DBF0108BF +:108C8000CCBF0108646D705F7365745F7374617449 +:108C9000650000000000000000000000000000006F +:108CA00000000000000000000000000000000000C4 +:108CB00000000000000000000000000000000000B4 +:108CC00000000000CDBF0108EEBF0108646D705FB9 +:108CD000656E61626C655F666561747572650000E2 +:108CE0000000000000000000000000000000000084 +:108CF0000000000000000000000000000000000074 +:108D0000000000000000000000000000EFBF0108AC +:108D1000D2C00108696E765F646D705F72656164D0 +:108D20005F6669666F000000000000000000000040 +:108D30000000000000000000000000000000000033 +:108D40000000000000000000000000000000000023 +:108D500000000000D3C00108C2C20108696E765F3E +:108D6000646D705F696E69740000000000000000AF +:108D700000000000000000000000000000000000F3 +:108D800000000000000000000000000000000000E3 +:108D9000000000000000000000000000C3C2010845 +:108DA00050C30108696E765F646D705F656E6162C5 +:108DB0006C655F6C70710000000000000000000036 +:108DC00000000000000000000000000000000000A3 +:108DD0000000000000000000000000000000000093 +:108DE0000000000051C30108A8CF010853485F509C +:108DF0004D5F496E697469616C697A6553656E731C +:108E00006F72487562000000000000000000000062 +:108E10000000000000000000000000000000000052 +:108E2000000000000000000000000000A9CF0108C1 +:108E3000BCCF010847464D5F496E697400000000D1 +:108E40000000000000000000000000000000000022 +:108E50000000000000000000000000000000000012 +:108E60000000000000000000000000000000000002 +:108E700000000000BDCF010840D0010847464D5F0B +:108E800053656E736F724368616E676564000000BE +:108E900000000000000000000000000000000000D2 +:108EA00000000000000000000000000000000000C2 +:108EB00000000000000000000000000041D0010898 +:108EC000F8D0010847464D5F4D6F7665446574657F +:108ED00063740000000000000000000000000000BB +:108EE0000000000000000000000000000000000082 +:108EF0000000000000000000000000000000000072 +:108F000000000000F9D0010884D3010847464D5FF6 +:108F1000476574566172526573756C740000000089 +:108F20000000000000000000000000000000000041 +:108F30000000000000000000000000000000000031 +:108F400000000000000000000000000085D30108C0 +:108F50007CD4010847464D5F53746F636B58797A30 +:108F60004461746100000000000000000000000087 +:108F700000000000000000000000000000000000F1 +:108F800000000000000000000000000000000000E1 +:108F9000000000007DD40108AED4010847464D5FB3 +:108FA0005069636B58797A44617461000000000075 +:108FB00000000000000000000000000000000000B1 +:108FC00000000000000000000000000000000000A1 +:108FD000000000000000000000000000AFD4010805 +:108FE000CCD401085052495F5065646F6D6574655B +:108FF000725F496E6974000000000000000000000C +:109000000000000000000000000000000000000060 +:109010000000000000000000000000000000000050 +:1090200000000000CDD401088CD601085052495FE1 +:109030005065646F6D657465725F52657365740029 +:109040000000000000000000000000000000000020 +:109050000000000000000000000000000000000010 +:109060000000000000000000000000008DD6010894 +:10907000B0D601085052495F5065646F6D657465E4 +:10908000725F416E616C797A65537465700000009F +:1090900000000000000000000000000000000000D0 +:1090A00000000000000000000000000000000000C0 +:1090B00000000000B1D6010810DB01085052495FE2 +:1090C0005065646F6D657465725F466C7573685347 +:1090D00074657044617461546F45787465726E6133 +:1090E0006C00000000000000000000000000000014 +:1090F00000000000000000000000000011DB01087B +:109100005EDB01085052495F5065646F6D657465A0 +:10911000725F556E646F5374657044617461546F0F +:1091200045787465726E616C0000000000000000FC +:10913000000000000000000000000000000000002F +:10914000000000005FDB010894DB01085052495F1A +:109150005065646F6D657465725F557064617465A8 +:1091600053746570496E666F0000000000000000D7 +:1091700000000000000000000000000000000000EF +:1091800000000000000000000000000095DB010866 +:10919000BCDF01085052495F5065646F6D657465AE +:1091A000725F436865636B4D69737365645374657F +:1091B000700000000000000000000000000000003F +:1091C000000000000000000000000000000000009F +:1091D00000000000BDDF0108B8E001085052495FFF +:1091E0005065646F6D657465725F465F4368656363 +:1091F0006B53656E736F72446174615F3100000080 +:10920000000000000000000000000000000000005E +:10921000000000000000000000000000B9E00108AC +:1092200030E201085052495F5065646F6D657465A6 +:10923000725F465F436865636B53656E736F72441C +:109240006174615F32000000000000000000000057 +:10925000000000000000000000000000000000000E +:109260000000000031E20108F4E301085052495FB8 +:109270005065646F6D657465725F4F766572666C7C +:109280006F775F5761726E696E67000000000000C3 +:1092900000000000000000000000000000000000CE +:1092A000000000000000000000000000F5E30108DD +:1092B0005CE401085052495F5065646F6D657465E8 +:1092C000725F4465746563745374657000000000D8 +:1092D000000000000000000000000000000000008E +:1092E000000000000000000000000000000000007E +:1092F000000000005DE401084CE7010863616C6355 +:109300005365617263685065616B506F696E74007C +:10931000000000000000000000000000000000004D +:10932000000000000000000000000000000000003D +:109330000000000000000000000000004DE70108F0 +:1093400088E801085052495F5065646F6D65746527 +:10935000725F436865636B53656E736F72526177BA +:10936000446174614D6F76656D656E740000000038 +:1093700000000000000000000000000000000000ED +:109380000000000089E8010858EB01085052495FCD +:109390005065646F6D657465725F52756E5374616C +:1093A00074654D616368696E65000000000000002F +:1093B00000000000000000000000000000000000AD +:1093C00000000000000000000000000059EB010850 +:1093D0007EED01085052495F5065646F6D6574659C +:1093E000725F476574446574656374537465705344 +:1093F00074617465000000000000000000000000BF +:10940000000000000000000000000000000000005C +:10941000000000007FED01088CED01085052495F0B +:109420005065646F6D657465725F476574537465EC +:1094300070496E666F000000000000000000000030 +:10944000000000000000000000000000000000001C +:109450000000000000000000000000008DED010889 +:109460009CED01085052495F5065646F6D657465ED +:10947000725F47657453746570496E666F466F72AC +:109480005350656E00000000000000000000000066 +:1094900000000000000000000000000000000000CC +:1094A000000000009DED0108B8ED01085052495F31 +:1094B0005065646F6D657465725F456E746572505A +:1094C00061757365000000000000000000000000EE +:1094D000000000000000000000000000000000008C +:1094E000000000000000000000000000B9ED0108CD +:1094F000E4ED01085052495F5065646F6D65746515 +:10950000725F53657455736572496E666F00000033 +:10951000000000000000000000000000000000004B +:10952000000000000000000000000000000000003B +:1095300000000000E5ED010800EE01085052495F0F +:109540005065646F6D657465725F4765744E6F4DED +:109550006F766554696D6500000000000000000032 +:1095600000000000000000000000000000000000FB +:1095700000000000000000000000000001EE0108F3 +:1095800010EE01085052495F5065646F6D65746557 +:10959000725F536574496E7465726E616C53746565 +:1095A0007053746174757353746F70000000000021 +:1095B00000000000000000000000000000000000AB +:1095C0000000000011EE010864EE01085052495FEE +:1095D0005065646F6D657465725F5365744578742A +:1095E00065726E616C5374657053746174757353F6 +:1095F000746F700000000000000000000000000018 +:1096000000000000000000000000000065EE0108FE +:10961000A4EE01085052495F5065646F6D65746532 +:10962000725F5365744669727374537465705570D4 +:1096300064617465436F6E646974696F6E000000E5 +:10964000000000000000000000000000000000001A +:1096500000000000A5EE0108CAEE01085052495F63 +:109660005065646F6D657465725F427950617373A4 +:109670004D6F64654F6E00000000000000000000A8 +:1096800000000000000000000000000000000000DA +:10969000000000000000000000000000CBEE010808 +:1096A000E2EE01085052495F5065646F6D65746564 +:1096B000725F4279506173734D6F64654F666600E7 +:1096C000000000000000000000000000000000009A +:1096D000000000000000000000000000000000008A +:1096E00000000000E3EE01082CEF010841535F4940 +:1096F0006E6974000000000000000000000000001F +:109700000000000000000000000000000000000059 +:109710000000000000000000000000000000000049 +:109720000000000000000000000000002DEF010814 +:1097300050EF010841535F5265636F676E697A6548 +:109740000000000000000000000000000000000019 +:109750000000000000000000000000000000000009 +:1097600000000000000000000000000000000000F9 +:109770000000000051EF010898EF010841535F46D7 +:10978000696E000000000000000000000000000002 +:1097900000000000000000000000000000000000C9 +:1097A00000000000000000000000000000000000B9 +:1097B00000000000000000000000000099EF010818 +:1097C000AAEF01086D41535F5344435F496E6974CA +:1097D00069616C697A654461746100000000000091 +:1097E0000000000000000000000000000000000079 +:1097F0000000000000000000000000000000000069 +:1098000000000000ABEF0108ECEF01086D41535F71 +:109810005344435F52657365744E6F4D6F76655464 +:10982000696D65720000000000000000000000008B +:109830000000000000000000000000000000000028 +:10984000000000000000000000000000EDEF010833 +:10985000F8EF01086D41535F5344435F52657365F0 +:109860007454656E53656354696D65720000000041 +:1098700000000000000000000000000000000000E8 +:1098800000000000000000000000000000000000D8 +:1098900000000000F9EF010800F001086D41535F7E +:1098A0005344435F436865636B42756646756C6CF1 +:1098B00000000000000000000000000000000000A8 +:1098C0000000000000000000000000000000000098 +:1098D00000000000000000000000000001F001088E +:1098E00010F001086D41535F53544D5F496E697428 +:1098F00069616C697A6500000000000000000000EA +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:109920000000000011F0010876F001086D41535F5E +:1099300053544D5F536574537461746500000000A7 +:109940000000000000000000000000000000000017 +:109950000000000000000000000000000000000007 +:1099600000000000000000000000000077F0010887 +:1099700080F001086D41535F53544D5F46696E6935 +:1099800073680000000000000000000000000000FC +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B0000000000081F0010888F001086D41535F4C +:1099C00053544D5F47657453686F636B44657465AA +:1099D00063745374617465000000000000000000AF +:1099E0000000000000000000000000000000000077 +:1099F00000000000000000000000000089F00108E5 +:109A000096F001086D41535F53544D5F47657453A1 +:109A1000686F636B4F6363757265645374617465DB +:109A20000000000000000000000000000000000036 +:109A30000000000000000000000000000000000026 +:109A40000000000097F00108A4F001086D41535F89 +:109A500053544D5F4765744E6F4D6F76656D656EFF +:109A60007453656E73696E675374617465000000AA +:109A700000000000000000000000000000000000E6 +:109A8000000000000000000000000000A5F0010838 +:109A9000B2F001086D41535F53544D5F4765744EFA +:109AA0006F4D6F76656D656E744F63637572656437 +:109AB00053746174650000000000000000000000A5 +:109AC0000000000000000000000000000000000096 +:109AD00000000000B3F00108C0F001086D41535FC1 +:109AE000537461727453746174655F5265636F6718 +:109AF0006E697A65000000000000000000000000B0 +:109B00000000000000000000000000000000000055 +:109B1000000000000000000000000000C1F001088B +:109B2000E4F001086D41535F5374617274537461C2 +:109B300074655F5072696E745374617465000000DF +:109B40000000000000000000000000000000000015 +:109B50000000000000000000000000000000000005 +:109B600000000000E5F00108ECF001086D41535FD2 +:109B7000537461727453746174655F476574496EA0 +:109B80007374616E63650000000000000000000057 +:109B900000000000000000000000000000000000C5 +:109BA000000000000000000000000000EDF00108CF +:109BB000FEF001086D41535F53686F636B44657439 +:109BC00065637453746174655F5265636F676E6932 +:109BD0007A650000000000000000000000000000A6 +:109BE0000000000000000000000000000000000075 +:109BF00000000000FFF001082EF101086D41535FE5 +:109C000053686F636B446574656374537461746502 +:109C10005F5072696E7453746174650000000000D7 +:109C20000000000000000000000000000000000034 +:109C30000000000000000000000000002FF10108FB +:109C400036F101086D41535F53686F636B4465746F +:109C500065637453746174655F476574496E7374AA +:109C6000616E63650000000000000000000000005D +:109C700000000000000000000000000000000000E4 +:109C80000000000037F1010848F101086D41535F01 +:109C900053686F636B4F636375726564537461746B +:109CA000655F5265636F676E697A6500000000004A +:109CB00000000000000000000000000000000000A4 +:109CC00000000000000000000000000049F1010851 +:109CD0008CF101086D41535F53686F636B4F636391 +:109CE0007572656453746174655F5072696E745304 +:109CF00074617465000000000000000000000000B6 +:109D00000000000000000000000000000000000053 +:109D1000000000008DF1010894F101086D41535FCE +:109D200053686F636B4F63637572656453746174DA +:109D3000655F476574496E7374616E63650000000A +:109D40000000000000000000000000000000000013 +:109D500000000000000000000000000095F1010874 +:109D6000A2F101086D41535F4E6F4D6F76656D65D1 +:109D70006E7453656E73696E6753746174655F5278 +:109D800065636F676E697A6500000000000000007F +:109D900000000000000000000000000000000000C3 +:109DA00000000000A3F10108E2F101086D41535FDA +:109DB0004E6F4D6F76656D656E7453656E73696E2B +:109DC0006753746174655F5072696E745374617423 +:109DD000650000000000000000000000000000001E +:109DE000000000000000000000000000E3F1010896 +:109DF000EAF101086D41535F4E6F4D6F76656D65F9 +:109E00006E7453656E73696E6753746174655F47F2 +:109E10006574496E7374616E636500000000000034 +:109E20000000000000000000000000000000000032 +:109E300000000000EBF10108F8F101086D41535FEB +:109E40004E6F4D6F76656D656E744F6363757265A9 +:109E50006453746174655F5265636F676E697A6598 +:109E600000000000000000000000000000000000F2 +:109E7000000000000000000000000000F9F10108EF +:109E8000FCF101086D41535F4E6F4D6F76656D6556 +:109E90006E744F63637572656453746174655F506B +:109EA00072696E74537461746500000000000000F4 +:109EB00000000000000000000000000000000000A2 +:109EC00000000000FDF1010804F201086D41535F3C +:109ED0004E6F4D6F76656D656E744F636375726519 +:109EE0006453746174655F476574496E7374616E21 +:109EF000636500000000000000000000000000009A +:109F000000000000000000000000000005F2010851 +:109F100012F201086D41535F5344435F476574413A +:109F200063634461746100000000000000000000F1 +:109F30000000000000000000000000000000000021 +:109F40000000000000000000000000000000000011 +:109F50000000000013F2010816F201086D41535F82 +:109F60005344435F707574446174610000000000E5 +:109F700000000000000000000000000000000000E1 +:109F800000000000000000000000000000000000D1 +:109F900000000000000000000000000017F20108AF +:109FA000A4F201086D41535F45524D5F44657465ED +:109FB000637453686F636B000000000000000000D2 +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE00000000000A5F2010870F301086D41535F05 +:109FF00045524D5F496E697469616C697A6500000C +:10A000000000000000000000000000000000000050 +:10A010000000000000000000000000000000000040 +:10A0200000000000000000000000000071F30108C3 +:10A0300084F301086D41535F45524D5F436865638A +:10A040006B54656E536563416674657253686F63E4 +:10A050006B00000000000000000000000000000095 +:10A0600000000000000000000000000000000000F0 +:10A070000000000085F30108A8F301086D41535F5B +:10A0800045524D5F4E6F4D6F76656D656E744465DC +:10A0900074656374696F6E000000000000000000CA +:10A0A00000000000000000000000000000000000B0 +:10A0B000000000000000000000000000A9F30108FB +:10A0C000CCF5010841637469766974795F566568F7 +:10A0D00069636C655F496E697400000000000000F0 +:10A0E0000000000000000000000000000000000070 +:10A0F0000000000000000000000000000000000060 +:10A1000000000000CDF501088EF601084163746976 +:10A11000766974795F56656869636C655F476574D5 +:10A1200056656869636C65496E666F0000000000E3 +:10A13000000000000000000000000000000000001F +:10A140000000000000000000000000008FF6010881 +:10A15000A0F6010841637469766974795F56656891 +:10A1600069636C655F44656275674D7367000000E5 +:10A1700000000000000000000000000000000000DF +:10A1800000000000000000000000000000000000CF +:10A1900000000000A1F6010820F70108416374697E +:10A1A000766974795F56656869636C655F5374613D +:10A1B00074654275666665725265737365740000F6 +:10A1C000000000000000000000000000000000008F +:10A1D00000000000000000000000000021F701085E +:10A1E0006AF7010841637469766974795F56656836 +:10A1F00069636C655F66696E644672657175656EEC +:10A20000744163746976697479000000000000008D +:10A21000000000000000000000000000000000003E +:10A22000000000006BF701081CF801084163746925 +:10A23000766974795F56656869636C655F4D6561C1 +:10A240006E000000000000000000000000000000A0 +:10A2500000000000000000000000000000000000FE +:10A260000000000000000000000000001DF80108D0 +:10A27000B8FB010841637469766974795F56656853 +:10A2800069636C655F466561747572654578747263 +:10A29000616374696F6E0000000000000000000040 +:10A2A00000000000000000000000000000000000AE +:10A2B00000000000B9FB010814FE01084163746945 +:10A2C000766974795F56656869636C655F44657427 +:10A2D0006563745F4E6F4D6F76650000000000008F +:10A2E000000000000000000000000000000000006E +:10A2F00000000000000000000000000015FE010842 +:10A300005CFE010841637469766974795F5665681B +:10A3100069636C655F4465746563745F5368616B02 +:10A32000696E674D6F74696F6E0000000000000079 +:10A33000000000000000000000000000000000001D +:10A34000000000005DFE0108B4FE0108416374696D +:10A35000766974795F56656869636C655F44657496 +:10A360006563745F566962726174696F6E000000A4 +:10A3700000000000000000000000000000000000DD +:10A38000000000000000000000000000B5FE010811 +:10A3900050FF010841637469766974795F56656896 +:10A3A00069636C655F4374726C56656869636C655C +:10A3B0004C6F636B00000000000000000000000014 +:10A3C000000000000000000000000000000000008D +:10A3D0000000000051FF010888FF01084163746913 +:10A3E000766974795F56656869636C655F52656408 +:10A3F00075636553746174654572726F7200000015 +:10A40000000000000000000000000000000000004C +:10A4100000000000000000000000000089FF0108AB +:10A42000AAFF010841637469766974795F566568AB +:10A4300069636C655F436F6E666964656E63655FD3 +:10A440004465636973696F6E0000000000000000DE +:10A4500000000000000000000000000000000000FC +:10A4600000000000ABFF010814000208416374699A +:10A47000766974795F56656869636C655F54757257 +:10A480006E6F666656656869636C654C6F636B00DA +:10A4900000000000000000000000000000000000BC +:10A4A000000000000000000000000000150002088D +:10A4B0008400020841637469766974795F5665683F +:10A4C00069636C655F446574656374000000000037 +:10A4D000000000000000000000000000000000007C +:10A4E000000000000000000000000000000000006C +:10A4F0000000000085000208180302084163746927 +:10A50000766974795F56656869636C655F557064D8 +:10A510006174655F5374617465496E666F00000015 +:10A52000000000000000000000000000000000002B +:10A5300000000000000000000000000019030208F5 +:10A540007403020841637469766974795F566568BB +:10A5500069636C655F72756E436C6173736966697C +:10A56000616374696F6E5F3133313231307631003F +:10A5700000000000000000000000000000000000DB +:10A580000000000075030208AC040208416374690E +:10A59000766974795F56656869636C655F72756E1C +:10A5A000436C617373696669616374696F6E5F316F +:10A5B00033313231367632000000000000000000F6 +:10A5C000000000000000000000000000AD040208D0 +:10A5D0003808020841637469766974795F56656862 +:10A5E00069636C655F72756E436C617373696669EC +:10A5F000616374696F6E5F313331323136763300A7 +:10A60000000000000000000000000000000000004A +:10A610000000000039080208E80B02085052495FA8 +:10A620005065646F6D657465725F5570646E5265D8 +:10A63000636F676E697A65725F496E6974000000C6 +:10A64000000000000000000000000000000000000A +:10A65000000000000000000000000000E90B0208FC +:10A660006C0C02085052495F5065646F6D657465EB +:10A67000725F5570646E44617461436F6C6C6563A6 +:10A680007400000000000000000000000000000056 +:10A6900000000000000000000000000000000000BA +:10A6A000000000006D0C0208E40E020843686563B8 +:10A6B0006B507265737375726553656E736F724418 +:10A6C0006966666572656E636500000000000000E3 +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000E50E02086D +:10A6F000260F0208436865636B536C6F7065416E8B +:10A70000676C65446966666572656E636500000026 +:10A710000000000000000000000000000000000039 +:10A720000000000000000000000000000000000029 +:10A7300000000000270F02087C0F02085052495FFA +:10A740005065646F6D657465725F64657465726D84 +:10A75000696E655570446E00000000000000000046 +:10A7600000000000000000000000000000000000E9 +:10A770000000000000000000000000007D0F020843 +:10A78000CC1102085052495F5065646F6D65746565 +:10A79000725F636F6D70757465536C6F7065416E39 +:10A7A000676C650000000000000000000000000071 +:10A7B0000000000000000000000000000000000099 +:10A7C00000000000CD110208941202085052495FA7 +:10A7D0005065646F6D657465725F636865636B5522 +:10A7E00070446E446972656374696F6E6279566114 +:10A7F0006C000000000000000000000000000000ED +:10A800000000000000000000000000009512020897 +:10A81000E813020853485F4C4D5F54656D706C61DE +:10A8200074655F53746172745F5369676E696669BA +:10A8300063616E744D6F74696F6E000000000000FC +:10A840000000000000000000000000000000000008 +:10A8500000000000E91302081014020853485F4C7E +:10A860004D5F54656D706C6174655F53746F705F9C +:10A870005369676E69666963616E744D6F74696F61 +:10A880006E0000000000000000000000000000005A +:10A890000000000000000000000000001114020889 +:10A8A0002E14020853485F4C4D5F54656D706C6107 +:10A8B00074655F50726F636573735F5369676E6928 +:10A8C000666963616E744D6F74696F6E000000009D +:10A8D0000000000000000000000000000000000078 +:10A8E000000000002F1402086A14020853485F4C4D +:10A8F0004D5F54656D706C6174655F4D6574686F14 +:10A9000064496E697469616C697A655F5369676EE1 +:10A9100069666963616E744D6F74696F6E000000E3 +:10A920000000000000000000000000006B1402089E +:10A930009814020853485F4C4D5F436865636B533E +:10A9400069676E69666963616E744D6F74696F6E75 +:10A9500042756600000000000000000000000000DA +:10A9600000000000000000000000000000000000E7 +:10A970000000000099140208AA14020853485F4C12 +:10A980004D5F5570646174655369676E696669638C +:10A99000616E744D6F74696F6E4461746100000084 +:10A9A00000000000000000000000000000000000A7 +:10A9B000000000000000000000000000AB140208CE +:10A9C000B614020853485F4C4D5F4765745369677E +:10A9D0006E69666963616E744D6F74696F6E5265FE +:10A9E000636F676E697A6564000000000000000014 +:10A9F0000000000000000000000000000000000057 +:10AA000000000000B7140208BE14020853485F4C4F +:10AA10004D5F5365745369676E69666963616E74EF +:10AA20004D6F74696F6E5265636F676E697A6564A6 +:10AA30000000000000000000000000000000000016 +:10AA4000000000000000000000000000BF14020829 +:10AA5000E014020853485F4C4D5F5369676E6966A6 +:10AA60006963616E744D6F74696F6E5F417070657C +:10AA70006E644C6962726172794D53470000000048 +:10AA800000000000000000000000000000000000C6 +:10AA900000000000E11402081815020841747469EE +:10AAA00074756465496E697469616C697A650000E2 +:10AAB0000000000000000000000000000000000096 +:10AAC0000000000000000000000000000000000086 +:10AAD000000000000000000000000000191502083E +:10AAE00030150208417474697475646546696E6155 +:10AAF0006C697A65000000000000000000000000A2 +:10AB00000000000000000000000000000000000045 +:10AB10000000000000000000000000000000000035 +:10AB200000000000311502083C15020841747469E8 +:10AB300074756465446574656374696F6E000000C4 +:10AB40000000000000000000000000000000000005 +:10AB500000000000000000000000000000000000F5 +:10AB60000000000000000000000000003D15020889 +:10AB7000B8160208476574416E676C65735F486F6D +:10AB800072697A6F6E74616C000000000000000052 +:10AB900000000000000000000000000000000000B5 +:10ABA00000000000000000000000000000000000A5 +:10ABB00000000000B9160208021802084765744137 +:10ABC0006E676C65735F566572746963616C0000D3 +:10ABD0000000000000000000000000000000000075 +:10ABE0000000000000000000000000000000000065 +:10ABF0000000000000000000000000000318020830 +:10AC0000541902084D6F643138305F4174746974AF +:10AC100075646500000000000000000000000000F6 +:10AC20000000000000000000000000000000000024 +:10AC30000000000000000000000000000000000014 +:10AC40000000000055190208201A0208436F6E76B2 +:10AC500065727453656E736F72556E69740000008F +:10AC600000000000000000000000000000000000E4 +:10AC700000000000000000000000000000000000D4 +:10AC8000000000000000000000000000211A02087F +:10AC9000C21A020853746F636B58797A4461746105 +:10ACA00000000000000000000000000000000000A4 +:10ACB0000000000000000000000000000000000094 +:10ACC0000000000000000000000000000000000084 +:10ACD00000000000C31A0208F41A02085069636BEE +:10ACE00058797A446174610000000000000000009F +:10ACF0000000000000000000000000000000000054 +:10AD00000000000000000000000000000000000043 +:10AD1000000000000000000000000000F51A02081A +:10AD2000141B020847657453756D4F665800000088 +:10AD30000000000000000000000000000000000013 +:10AD40000000000000000000000000000000000003 +:10AD500000000000000000000000000000000000F3 +:10AD600000000000151B0208501B020847657453C1 +:10AD7000756D4F66590000000000000000000000E3 +:10AD800000000000000000000000000000000000C3 +:10AD900000000000000000000000000000000000B3 +:10ADA000000000000000000000000000511B02082D +:10ADB0008C1B020847657453756D4F665A0000007E +:10ADC0000000000000000000000000000000000083 +:10ADD0000000000000000000000000000000000073 +:10ADE0000000000000000000000000000000000063 +:10ADF000000000008D1B0208C81B02086661746118 +:10AE00006E000000000000000000000000000000D4 +:10AE10000000000000000000000000000000000032 +:10AE20000000000000000000000000000000000022 +:10AE3000000000000000000000000000C91B020824 +:10AE40001C1D0208666174616E3200000000000083 +:10AE500000000000000000000000000000000000F2 +:10AE600000000000000000000000000000000000E2 +:10AE700000000000000000000000000000000000D2 +:10AE8000000000001D1D0208B01D02085365744D2E +:10AE90007265506172616D506F696E746572446164 +:10AEA000746150726F630000000000000000000039 +:10AEB0000000000000000000000000000000000092 +:10AEC000000000000000000000000000B11D0208AA +:10AED000D4250208496E697469616C697A6550729B +:10AEE000696D6974697665456E67696E6500000015 +:10AEF0000000000000000000000000000000000052 +:10AF00000000000000000000000000000000000041 +:10AF100000000000D525020824260208496E697445 +:10AF20005072696D697469766573000000000000F5 +:10AF30000000000000000000000000000000000011 +:10AF40000000000000000000000000000000000001 +:10AF5000000000000000000000000000252602089C +:10AF60002826020846696E616C697A655072696DBF +:10AF70006974697665456E67696E6500000000005A +:10AF800000000000000000000000000000000000C1 +:10AF900000000000000000000000000000000000B1 +:10AFA000000000002926020836260208476574536F +:10AFB000656E736F724461746100000000000000F0 +:10AFC0000000000000000000000000000000000081 +:10AFD0000000000000000000000000000000000071 +:10AFE00000000000000000000000000037260208FA +:10AFF0003C260208436F707953656E736F7244612B +:10B00000746100000000000000000000000000006B +:10B010000000000000000000000000000000000030 +:10B020000000000000000000000000000000000020 +:10B03000000000003D260208502602085069636B9C +:10B04000416363446174610000000000000000007F +:10B0500000000000000000000000000000000000F0 +:10B0600000000000000000000000000000000000E0 +:10B07000000000000000000000000000512602084F +:10B080006E260208457865637574654D6F74696F47 +:10B090006E456E67696E65000000000000000000EC +:10B0A00000000000000000000000000000000000A0 +:10B0B0000000000000000000000000000000000090 +:10B0C000000000006F260208BA2602084765745087 +:10B0D00072696D6974697665537461747573000083 +:10B0E0000000000000000000000000000000000060 +:10B0F0000000000000000000000000000000000050 +:10B10000000000000000000000000000BB26020854 +:10B11000BE260208436C6561725072696D6974697C +:10B1200076655374617475730000000000000000C0 +:10B13000000000000000000000000000000000000F +:10B1400000000000000000000000000000000000FF +:10B1500000000000BF260208CA260208536574508A +:10B1600072696D69746976655374617475730000F2 +:10B1700000000000000000000000000000000000CF +:10B1800000000000000000000000000000000000BF +:10B19000000000000000000000000000CB260208B4 +:10B1A000D226020847657441636344617461417249 +:10B1B000726179506F696E74657200000000000062 +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E00000000000D3260208D62602085365744DDD +:10B1F0007265506172616D506F696E7465720000A6 +:10B20000000000000000000000000000000000003E +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000D726020817 +:10B23000DC2602084765744D6F74696F6E456E6752 +:10B24000696E65506172616D657465720000000021 +:10B2500000000000000000000000000000000000EE +:10B2600000000000000000000000000000000000DE +:10B2700000000000DD2602080C2702085F5F6578E9 +:10B2800069740000000000000000000000000000E1 +:10B2900000000000000000000000000000000000AE +:10B2A000000000000000000000000000000000009E +:10B2B0000000000000000000000000000D27020850 +:10B2C00020270208414B53435F6275666665720032 +:10B2D000000000000000000000000000000000006E +:10B2E000000000000000000000000000000000005E +:10B2F000000000000000000000000000000000004E +:10B3000000000000212702086E270208414B53432A +:10B310005F766563746F7243616C630000000000C8 +:10B32000000000000000000000000000000000001D +:10B33000000000000000000000000000000000000D +:10B340000000000000000000000000006F2702085D +:10B3500010280208414B53435F6469763136000080 +:10B3600000000000000000000000000000000000DD +:10B3700000000000000000000000000000000000CD +:10B3800000000000000000000000000000000000BD +:10B39000000000001128020828280208414B5343EE +:10B3A0005F6E6F726D31360000000000000000001B +:10B3B000000000000000000000000000000000008D +:10B3C000000000000000000000000000000000007D +:10B3D0000000000000000000000000002928020812 +:10B3E00058280208414B53435F6E6F726D33320031 +:10B3F000000000000000000000000000000000004D +:10B40000000000000000000000000000000000003C +:10B41000000000000000000000000000000000002C +:10B42000000000005928020884280208414B5343B9 +:10B430005F61627331360000000000000000000010 +:10B4400000000000000000000000000000000000FC +:10B4500000000000000000000000000000000000EC +:10B460000000000000000000000000008528020825 +:10B47000A4280208414B53435F6469763136660065 +:10B4800000000000000000000000000000000000BC +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B00000000000A5280208DC280208414B534385 +:10B4C0005F676574436F65666600000000000000FA +:10B4D000000000000000000000000000000000006C +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000DD2802083D +:10B50000502B0208414B53435F6669744F6E506C79 +:10B51000616E6500000000000000000000000000F7 +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B5400000000000512B02087A2D0208414B5343A2 +:10B550005F63686F6C44630000000000000000003F +:10B5600000000000000000000000000000000000DB +:10B5700000000000000000000000000000000000CB +:10B580000000000000000000000000007B2D020809 +:10B590001C2E0208414B53435F63686F6C536C0071 +:10B5A000000000000000000000000000000000009B +:10B5B000000000000000000000000000000000008B +:10B5C000000000000000000000000000000000007B +:10B5D000000000001D2E0208EC2E0208414B5343D0 +:10B5E0005F737172743332000000000000000000CD +:10B5F000000000000000000000000000000000004B +:10B60000000000000000000000000000000000003A +:10B61000000000000000000000000000ED2E020805 +:10B620001C2F0208414B53435F696E76537172744D +:10B63000000000000000000000000000000000000A +:10B6400000000000000000000000000000000000FA +:10B6500000000000000000000000000000000000EA +:10B66000000000001D2F0208DC2F0208696E765FC3 +:10B6700064625F6C6F61645F66756E6300000000FA +:10B6800000000000000000000000000000000000BA +:10B6900000000000000000000000000000000000AA +:10B6A000000000000000000000000000DD2F020884 +:10B6B00012300208696E765F64625F736176655F5F +:10B6C00066756E63000000000000000000000000CE +:10B6D000000000000000000000000000000000006A +:10B6E000000000000000000000000000000000005A +:10B6F000000000001330020822300208696E765FF5 +:10B7000064625F6C6F61645F6D706C5F66756E63C1 +:10B710000000000000000000000000000000000029 +:10B720000000000000000000000000000000000019 +:10B7300000000000000000000000000023300208AC +:10B7400034300208696E765F64625F736176655FAC +:10B750006D706C5F66756E63000000000000000095 +:10B7600000000000000000000000000000000000D9 +:10B7700000000000000000000000000000000000C9 +:10B78000000000003530020844300208696E765F20 +:10B79000696E69745F646174615F6275696C646528 +:10B7A0007200000000000000000000000000000027 +:10B7B0000000000000000000000000000000000089 +:10B7C00000000000000000000000000045300208FA +:10B7D000923002087365745F73656E736F725F6F8A +:10B7E0007269656E746174696F6E5F616E645F73B8 +:10B7F00063616C65000000000000000000000000B4 +:10B800000000000000000000000000000000000038 +:10B810000000000093300208C6300208696E765FAF +:10B820007365745F6779726F5F6F7269656E74615B +:10B8300074696F6E5F616E645F7363616C65000055 +:10B8400000000000000000000000000000000000F8 +:10B85000000000000000000000000000C7300208E7 +:10B86000D0300208696E765F7365745F6779726FB6 +:10B870005F73616D706C655F7261746500000000DC +:10B8800000000000000000000000000000000000B8 +:10B8900000000000000000000000000000000000A8 +:10B8A00000000000D1300208F2300208696E765FB5 +:10B8B0007365745F616363656C5F73616D706C6504 +:10B8C0005F7261746500000000000000000000006D +:10B8D0000000000000000000000000000000000068 +:10B8E000000000000000000000000000F33002082B +:10B8F00016310208696E765F7365745F636F6D70F1 +:10B900006173735F73616D706C655F726174650004 +:10B910000000000000000000000000000000000027 +:10B920000000000000000000000000000000000017 +:10B9300000000000173102083C310208696E765F92 +:10B940007365745F717561745F73616D706C655F51 +:10B95000726174650000000000000000000000003B +:10B9600000000000000000000000000000000000D7 +:10B970000000000000000000000000003D3102084F +:10B9800052310208696E765F6765745F636F6D7030 +:10B990006173735F6F6E0000000000000000000024 +:10B9A0000000000000000000000000000000000097 +:10B9B0000000000000000000000000000000000087 +:10B9C000000000005331020862310208696E765FA0 +:10B9D0006765745F6779726F5F6F6E0000000000CB +:10B9E0000000000000000000000000000000000057 +:10B9F0000000000000000000000000000000000047 +:10BA00000000000000000000000000006331020898 +:10BA100070310208696E765F6765745F61636365A4 +:10BA20006C5F6F6E0000000000000000000000006E +:10BA30000000000000000000000000000000000006 +:10BA400000000000000000000000000000000000F6 +:10BA5000000000007131020880310208696E765FD3 +:10BA60006765745F6C6173745F74696D657374612D +:10BA70006D700000000000000000000000000000E9 +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000081310208EA +:10BAA00008320208696E765F7365745F616363656F +:10BAB0006C5F6F7269656E746174696F6E5F616EE1 +:10BAC000645F7363616C65000000000000000000AB +:10BAD0000000000000000000000000000000000066 +:10BAE000000000000932020812320208696E765F17 +:10BAF0007365745F636F6D706173735F6F72696597 +:10BB00006E746174696F6E5F616E645F7363616CA4 +:10BB100065000000000000000000000000000000C0 +:10BB200000000000000000000000000013320208C6 +:10BB30001C320208696E765F6170706C795F6361B8 +:10BB40006C6962726174696F6E0000000000000031 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB7000000000001D3202088A320208696E765FFA +:10BB80007365745F616363656C5F61636375726144 +:10BB900063790000000000000000000000000000C9 +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000008B320208BE +:10BBC00098320208696E765F7365745F61636365BE +:10BBD0006C5F626961735F6D61736B0000000000F0 +:10BBE0000000000000000000000000000000000055 +:10BBF0000000000000000000000000000000000045 +:10BC00000000000099320208E6320208696E765F91 +:10BC10007365745F6D706C5F6779726F5F62696185 +:10BC200073000000000000000000000000000000A1 +:10BC30000000000000000000000000000000000004 +:10BC4000000000000000000000000000E7320208D1 +:10BC500048330208696E765F6765745F6779726F53 +:10BC60005F626961735F74635F73657400000000F5 +:10BC700000000000000000000000000000000000C4 +:10BC800000000000000000000000000000000000B4 +:10BC9000000000004933020862330208696E765FD3 +:10BCA0006765745F6D706C5F6779726F5F62696101 +:10BCB0007300000000000000000000000000000011 +:10BCC0000000000000000000000000000000000074 +:10BCD00000000000000000000000000063330208C4 +:10BCE00084330208696E765F6275696C645F6163B4 +:10BCF00063656C0000000000000000000000000010 +:10BD00000000000000000000000000000000000033 +:10BD10000000000000000000000000000000000023 +:10BD20000000000085330208EE330208696E765F7A +:10BD30006275696C645F6779726F000000000000D3 +:10BD400000000000000000000000000000000000F3 +:10BD500000000000000000000000000000000000E3 +:10BD6000000000000000000000000000EF330208A7 +:10BD700024340208696E765F6275696C645F636F74 +:10BD80006D7061737300000000000000000000008F +:10BD900000000000000000000000000000000000A3 +:10BDA0000000000000000000000000000000000093 +:10BDB00000000000253402089C340208696E765F9A +:10BDC0006275696C645F7175617400000000000049 +:10BDD0000000000000000000000000000000000063 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000009D34020868 +:10BE000024350208696E765F616363656C5F7761F4 +:10BE1000735F7475726E65645F6F66660000000024 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE4000000000002535020830350208696E765F73 +:10BE5000636F6D706173735F7761735F7475726E1A +:10BE600065645F6F6666000000000000000000006F +:10BE700000000000000000000000000000000000C2 +:10BE80000000000000000000000000003135020842 +:10BE90003C350208696E765F7175617465726E6912 +:10BEA0006F6E5F73656E736F725F7761735F7475CA +:10BEB000726E65645F6F666600000000000000003F +:10BEC0000000000000000000000000000000000072 +:10BED000000000003D35020848350208696E765FB3 +:10BEE0006779726F5F7761735F7475726E65645F97 +:10BEF0006F66660000000000000000000000000007 +:10BF00000000000000000000000000000000000031 +:10BF10000000000000000000000000004935020899 +:10BF200052350208696E765F72656769737465726F +:10BF30005F646174615F63620000000000000000E4 +:10BF400000000000000000000000000000000000F1 +:10BF500000000000000000000000000000000000E1 +:10BF60000000000053350208F0350208696E765F64 +:10BF7000657865637574655F6F6E5F646174610099 +:10BF800000000000000000000000000000000000B1 +:10BF900000000000000000000000000000000000A1 +:10BFA000000000000000000000000000F135020861 +:10BFB00078360208696E765F7365745F636F6E74BE +:10BFC0006967756F757300000000000000000000D5 +:10BFD0000000000000000000000000000000000061 +:10BFE0000000000000000000000000000000000051 +:10BFF000000000007936020808370208696E765F93 +:10C000006765745F616363656C5F736574000000EE +:10C010000000000000000000000000000000000020 +:10C020000000000000000000000000000000000010 +:10C0300000000000000000000000000009370208B6 +:10C0400036370208696E765F6765745F636F6D707F +:10C050006173735F736574000000000000000000EE +:10C0600000000000000000000000000000000000D0 +:10C0700000000000000000000000000000000000C0 +:10C0800000000000373702086E370208696E765FDD +:10C090006765745F6779726F5F616363757261630F +:10C0A0007900000000000000000000000000000017 +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000006F370208C0 +:10C0D00074370208696E765F6765745F6D61675FCC +:10C0E0006163637572616379000000000000000005 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C11000000000007537020888370208696E765FF4 +:10C120006765745F616363656C5F616363757261AA +:10C130006379000000000000000000000000000023 +:10C1400000000000000000000000000000000000EF +:10C150000000000000000000000000008937020815 +:10C1600090370208696E765F6765745F636F6D7004 +:10C170006173735F736F66745F69726F6E5F6F7503 +:10C18000747075745F6461746100000000000000E9 +:10C19000000000000000000000000000000000009F +:10C1A0000000000091370208AA370208696E765F26 +:10C1B0007365745F636F6D706173735F736F6674C3 +:10C1C0005F69726F6E5F696E7075745F64617461D0 +:10C1D000000000000000000000000000000000005F +:10C1E000000000000000000000000000AB37020863 +:10C1F000F6370208696E765F72657365745F636F08 +:10C200006D706173735F736F66745F69726F6E5F79 +:10C210006D61747269780000000000000000000089 +:10C22000000000000000000000000000000000000E +:10C2300000000000F737020844380208696E765F94 +:10C2400064697361626C655F636F6D706173735F66 +:10C25000736F66745F69726F6E5F6D617472697817 +:10C2600000000000000000000000000000000000CE +:10C270000000000000000000000000004538020837 +:10C280008C3802085F5F7072696E745F72657375D7 +:10C290006C745F6C6F636174696F6E000000000006 +:10C2A000000000000000000000000000000000008E +:10C2B000000000000000000000000000000000007E +:10C2C000000000008D3802088E380208696E765F23 +:10C2D000696E69745F6D706C000000000000000002 +:10C2E000000000000000000000000000000000004E +:10C2F000000000000000000000000000000000003E +:10C300000000000000000000000000008F3802085C +:10C3100004390208696E765F73746172745F6D70C0 +:10C320006C000000000000000000000000000000A1 +:10C3300000000000000000000000000000000000FD +:10C3400000000000000000000000000000000000ED +:10C3500000000000053902088C3902085F5F707226 +:10C36000696E745F726573756C745F6C6F63617412 +:10C37000696F6E0000000000000000000000000077 +:10C3800000000000000000000000000000000000AD +:10C390000000000000000000000000008D390208CD +:10C3A00090390208666173745F6E6F6D6F745F73AE +:10C3B00065745F6779726F5F63616C6962726174E3 +:10C3C000696F6E5F636F6E666964656E63655F6CEF +:10C3D0006576656C5F74696D655F746872657368B6 +:10C3E0006F6C640091390208B23902086661737497 +:10C3F0005F6E6F6D6F745F6765745F6779726F5F93 +:10C40000626961735F7570646174655F74696D659D +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000B339020816 +:10C43000BC390208666173745F6E6F6D6F745F73F1 +:10C4400065745F6779726F5F626961735F7570644D +:10C450006174655F74696D65000000000000000094 +:10C4600000000000000000000000000000000000CC +:10C4700000000000BD390208CE390208696E765FFF +:10C48000696E69745F6D61786D696E00000000000F +:10C49000000000000000000000000000000000009C +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000CF3902086A +:10C4C000343A02086765745F7468655F706F7765FA +:10C4D000725F76616C75650000000000000000006E +:10C4E000000000000000000000000000000000004C +:10C4F000000000000000000000000000000000003C +:10C5000000000000353A0208443A0208696E765F7E +:10C51000666173745F6E6F6D6F745F706172616D71 +:10C52000657465720000000000000000000000005B +:10C5300000000000000000000000000000000000FB +:10C54000000000000000000000000000453A020862 +:10C55000E23B0208696E765F666173745F6E6F6DB1 +:10C560006F745F706172616D657465725F33726460 +:10C5700000000000000000000000000000000000BB +:10C5800000000000000000000000000000000000AB +:10C5900000000000E33B0208F83C0208696E765F89 +:10C5A00069665F656E6F7567685F646174610000DE +:10C5B000000000000000000000000000000000007B +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000F93C02081C +:10C5E0002E3D0208696E765F666173745F6E6F6DD3 +:10C5F0006F745F7365745F6779726F5F626961738F +:10C60000000000000000000000000000000000002A +:10C61000000000000000000000000000000000001A +:10C62000000000002F3D0208C63E0208696E765FDA +:10C63000666173745F6E6F6D6F745F73746F726534 +:10C640005F646174610000000000000000000000F1 +:10C6500000000000000000000000000000000000DA +:10C66000000000000000000000000000C73E0208BB +:10C67000583F0208696E765F666173745F6E6F6D16 +:10C680006F745F73746F72655F646174615F636F11 +:10C690006D70617373000000000000000000000076 +:10C6A000000000000000000000000000000000008A +:10C6B00000000000593F0208BA3F0208696E765F29 +:10C6C000666173745F6E6F6D6F745F7265736574AE +:10C6D0005F646174615F636F6D706173730000000C +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000BB3F020836 +:10C70000EE3F0208696E765F666173745F6E6F6DEF +:10C710006F745F6765745F74696D655F656C617088 +:10C720007300000000000000000000000000000096 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000EF3F020802400208696E765FB9 +:10C75000666173745F6E6F6D6F745F706172616D2F +:10C76000657465725F636F6D7061737300000000C4 +:10C7700000000000000000000000000000000000B9 +:10C78000000000000000000000000000034002085C +:10C7900018400208696E765F6D61785F6368616E4C +:10C7A00067650000000000000000000000000000BD +:10C7B0000000000000000000000000000000000079 +:10C7C0000000000000000000000000000000000069 +:10C7D00000000000194002083A400208696E765FC6 +:10C7E00072657365745F6D696E5F6D61785F67799F +:10C7F000726F5F616363656C5F7374617469737496 +:10C8000069637300000000000000000000000000E9 +:10C810000000000000000000000000003B40020893 +:10C8200074400208696E765F72657365745F70614B +:10C83000636B657400000000000000000000000051 +:10C8400000000000000000000000000000000000E8 +:10C8500000000000000000000000000000000000D8 +:10C8600000000000754002089A400208696E765F79 +:10C870007265636F72645F6D61785F6D6F6D656E19 +:10C88000745F696E5F6E6F5F6D6F74696F6E5F6707 +:10C8900079726F000000000000000000000000003E +:10C8A0000000000000000000000000009B400208A3 +:10C8B000CA400208696E765F7265636F72645F6D6D +:10C8C00061785F6D6F6D656E745F696E5F6E6F5FCF +:10C8D0006D6F74696F6E5F616363656C000000006B +:10C8E0000000000000000000000000000000000048 +:10C8F00000000000CB400208FA400208696E765F33 +:10C900007265636F72645F6D696E5F6D6F6D656E8A +:10C91000745F696E5F6D6F74696F6E5F6779726F58 +:10C920000000000000000000000000000000000007 +:10C93000000000000000000000000000FB400208B2 +:10C940002A410208696E765F7265636F72645F6D7B +:10C95000696E5F6D6F6D656E745F696E5F6D6F742C +:10C96000696F6E5F616363656C000000000000002A +:10C9700000000000000000000000000000000000B7 +:10C98000000000002B4102085A410208696E765FE0 +:10C990006465746563745F6D6F74696F6E5F6279EF +:10C9A0005F6779726F5F616363656C000000000010 +:10C9B0000000000000000000000000000000000077 +:10C9C0000000000000000000000000005B410208C1 +:10C9D000FA410208696E765F73656E736F725F6409 +:10C9E0006174615F70726570726F6365737300006C +:10C9F0000000000000000000000000000000000037 +:10CA00000000000000000000000000000000000026 +:10CA100000000000FB41020884420208696E765F54 +:10CA200067656E65726174655F666173745F6E6F72 +:10CA30006D6F7400000000000000000000000000A6 +:10CA400000000000000000000000000000000000E6 +:10CA50000000000000000000000000008542020805 +:10CA6000E8440208696E765F7365745F64656661A9 +:10CA7000756C745F6E756D6265725F6F665F736112 +:10CA80006D706C6573000000000000000000000085 +:10CA90000000000000000000000000000000000096 +:10CAA00000000000E94402080C450208696E765F48 +:10CAB000696E69745F666173745F6E6F6D6F740029 +:10CAC0000000000000000000000000000000000066 +:10CAD0000000000000000000000000000000000056 +:10CAE0000000000000000000000000000D450208EA +:10CAF0006A450208696E765F73746172745F66617D +:10CB000073745F6E6F6D6F740000000000000000B2 +:10CB10000000000000000000000000000000000015 +:10CB20000000000000000000000000000000000005 +:10CB3000000000006B450208A4450208696E765F9C +:10CB4000656E61626C655F666173745F6E6F6D6F59 +:10CB50007400000000000000000000000000000061 +:10CB600000000000000000000000000000000000C5 +:10CB7000000000000000000000000000A5450208C1 +:10CB8000E8450208666173745F6E6F6D6F745F676E +:10CB900065745F6779726F5F63616C6962726174FB +:10CBA000696F6E5F636F6E666964656E63655F6C07 +:10CBB0006576656C000000000000000000000000C9 +:10CBC00000000000E9450208A446020861636365AD +:10CBD0006C5F667573696F6E0000000000000000F6 +:10CBE0000000000000000000000000000000000045 +:10CBF0000000000000000000000000000000000035 +:10CC0000000000000000000000000000A54602082F +:10CC100080480208696E765F636F6D707574655F3A +:10CC2000717561745F66726F6D5F616363656C00DF +:10CC300000000000000000000000000000000000F4 +:10CC400000000000000000000000000000000000E4 +:10CC50000000000081480208A4490208696E765F5E +:10CC60006E6F726D616C697A655F717561740000D9 +:10CC700000000000000000000000000000000000B4 +:10CC800000000000000000000000000000000000A4 +:10CC9000000000000000000000000000A54902089C +:10CCA0007C4A0208696E765F67656E6572617465BD +:10CCB0005F6779726F5F7175617465726E696F6EAF +:10CCC0000000000000000000000000000000000064 +:10CCD0000000000000000000000000000000000054 +:10CCE000000000007D4A0208A44B0208696E765FCE +:10CCF00070726F636573735F646D705F717561747B +:10CD000065726E696F6E0000000000000000000098 +:10CD10000000000000000000000000000000000013 +:10CD2000000000000000000000000000A54B020809 +:10CD30008C4D0208696E765F67656E657261746519 +:10CD40005F616363656C5F6779726F5F7175617452 +:10CD500065726E696F6E0000000000000000000048 +:10CD600000000000000000000000000000000000C3 +:10CD7000000000008D4D0208F04F0208696E765FDA +:10CD800067656E65726174655F7175617465726EF9 +:10CD9000696F6E000000000000000000000000004D +:10CDA0000000000000000000000000000000000083 +:10CDB000000000000000000000000000F14F020829 +:10CDC00052500208696E765F696E69745F717561B1 +:10CDD0007465726E696F6E00000000000000000054 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE0000000000005350020874500208696E765FFB +:10CE1000656E61626C655F7175617465726E696F74 +:10CE20006E00000000000000000000000000000094 +:10CE300000000000000000000000000000000000F2 +:10CE40000000000000000000000000007550020813 +:10CE500090500208696E765F73746172745F7175C9 +:10CE6000617465726E696F6E000000000000000062 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000000000A2 +:10CE90000000000091500208C0500208696E765FE1 +:10CEA0006765745F73656E736F725F747970655FC9 +:10CEB000726F746174696F6E5F766563746F720010 +:10CEC0000000000000000000000000000000000062 +:10CED000000000000000000000000000C150020837 +:10CEE0007C510208696E765F6765745F73656E7367 +:10CEF0006F725F747970655F726F746174696F6E61 +:10CF00005F766563746F725F365F61786973000086 +:10CF10000000000000000000000000000000000011 +:10CF2000000000007D5102085C520208696E765FC5 +:10CF30006765745F726F746174696F6E00000000E2 +:10CF400000000000000000000000000000000000E1 +:10CF500000000000000000000000000000000000D1 +:10CF60000000000000000000000000005D52020808 +:10CF700008530208676F6F676C655F6F7269656E53 +:10CF8000746174696F6E0000000000000000000012 +:10CF90000000000000000000000000000000000091 +:10CFA0000000000000000000000000000000000081 +:10CFB00000000000095302087E530208696E765F84 +:10CFC0006765745F73656E736F725F747970655FA8 +:10CFD0006F7269656E746174696F6E0000000000A5 +:10CFE0000000000000000000000000000000000041 +:10CFF0000000000000000000000000007F53020855 +:10D00000A0530208696E765F67656E65726174652C +:10D010005F68616C5F6F75747075747300000000F9 +:10D020000000000000000000000000000000000000 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000A153020856550208696E765F81 +:10D0500073746172745F68616C5F6F7574707574FE +:10D06000730000000000000000000000000000004D +:10D0700000000000000000000000000000000000B0 +:10D0800000000000000000000000000057550208EA +:10D0900068550208696E765F696E69745F68616CD5 +:10D0A0005F6F7574707574730000000000000000FD +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D000000000006955020894550208696E765FE9 +:10D0E000656E61626C655F68616C5F6F75747075A9 +:10D0F0007473000000000000000000000000000049 +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000955502081B +:10D12000B8550208696E765F66696E645F73796EE2 +:10D130006368726F6E697A65645F636F6D70617347 +:10D14000735F616E676C6500000000000000000006 +:10D1500000000000000000000000000000000000CF +:10D1600000000000B95502088C560208696E765F0F +:10D1700066696C7465725F636F7272656374696F00 +:10D180006E5F616E676C65000000000000000000CB +:10D19000000000000000000000000000000000008F +:10D1A0000000000000000000000000008D56020892 +:10D1B00094580208696E765F706572666F726D5F73 +:10D1C00039785F667573696F6E00000000000000BB +:10D1D000000000000000000000000000000000004F +:10D1E000000000000000000000000000000000003F +:10D1F0000000000095580208C85D0208696E765F5D +:10D2000070726F636573735F39785F73656E736F88 +:10D21000725F667573696F6E5F6362000000000085 +:10D2200000000000000000000000000000000000FE +:10D23000000000000000000000000000C95D0208BE +:10D24000945E0208696E765F696E69745F39785F13 +:10D25000667573696F6E000000000000000000003A +:10D2600000000000000000000000000000000000BE +:10D2700000000000000000000000000000000000AE +:10D2800000000000955E0208F05E0208696E765F9D +:10D2900039785F667573696F6E5F656E61626C6524 +:10D2A0005F6A69747465725F726564756374696FCF +:10D2B0006E00000000000000000000000000000000 +:10D2C000000000000000000000000000F15E020805 +:10D2D000FA5E0208696E765F39785F667573696F0A +:10D2E0006E5F7573655F74696D657374616D70737E +:10D2F000000000000000000000000000000000002E +:10D30000000000000000000000000000000000001D +:10D3100000000000FB5E0208045F0208696E765F91 +:10D3200073746172745F39785F73656E736F725F67 +:10D33000667573696F6E0000000000000000000059 +:10D3400000000000000000000000000000000000DD +:10D35000000000000000000000000000055F02085F +:10D36000105F0208696E765F656E61626C655F3999 +:10D37000785F73656E736F725F667573696F6E0049 +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A00000000000115F0208AC5F0208696E765F42 +:10D3B000666173745F6774635F6C6F616400000023 +:10D3C000000000000000000000000000000000005D +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000AD5F020827 +:10D3F000BE5F0208696E765F666173745F6774630F +:10D400005F73746F72650000000000000000000090 +:10D41000000000000000000000000000000000000C +:10D4200000000000000000000000000000000000FC +:10D4300000000000BF5F0208CE5F0208696E765FE1 +:10D44000666173745F6774635F646174615F636274 +:10D4500000000000000000000000000000000000CC +:10D4600000000000000000000000000000000000BC +:10D47000000000000000000000000000CF5F020874 +:10D4800092600208696E765F666173745F677463A9 +:10D490005F636F6D707574655F736C6F70650000AE +:10D4A000000000000000000000000000000000007C +:10D4B000000000000000000000000000000000006C +:10D4C000000000009360020840640208696E765F05 +:10D4D000696E69745F666173745F6779726F5F7498 +:10D4E00073000000000000000000000000000000C9 +:10D4F000000000000000000000000000000000002C +:10D50000000000000000000000000000416402086C +:10D5100062640208696E765F73746172745F66613B +:10D5200073745F6779726F5F7463000000000000BE +:10D5300000000000000000000000000000000000EB +:10D5400000000000000000000000000000000000DB +:10D5500000000000636402086C640208696E765F74 +:10D56000656E61626C655F666173745F6779726F27 +:10D570005F74630000000000000000000000000075 +:10D58000000000000000000000000000000000009B +:10D590000000000000000000000000006D640208B0 +:10D5A000C06402085F5F7072696E745F7265737544 +:10D5B0006C745F6C6F636174696F6E0000000000D3 +:10D5C000000000000000000000000000000000005B +:10D5D000000000000000000000000000000000004B +:10D5E00000000000C1640208C2640208696E765F30 +:10D5F000696E69745F616363656C5F6D61786D69A5 +:10D600006E000000000000000000000000000000AC +:10D61000000000000000000000000000000000000A +:10D62000000000000000000000000000C3640208C9 +:10D63000E2640208696E765F7265636F72645F67A9 +:10D640006F6F645F616363656C5F6D61786D696E58 +:10D6500000000000000000000000000000000000CA +:10D6600000000000000000000000000000000000BA +:10D6700000000000E364020824650208696E765F1A +:10D680006765745F63757272656E745F63616C6900 +:10D690006272617465645F616363656C00000000C1 +:10D6A000000000000000000000000000000000007A +:10D6B00000000000000000000000000025650208D6 +:10D6C00066650208696E765F636865636B5F707597 +:10D6D000736800000000000000000000000000006F +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000000000000000000002A +:10D700000000000067650208FC660208696E765F2B +:10D71000636865636B5F636F7665726167655F738E +:10D7200065745F6269617300000000000000000022 +:10D7300000000000000000000000000000000000E9 +:10D74000000000000000000000000000FD6602086C +:10D7500034680208696E765F636F6D62696E655F3B +:10D76000646174615F63616C63756C6174655F6251 +:10D77000696173000000000000000000000000006C +:10D780000000000000000000000000000000000099 +:10D790000000000035680208F0680208696E765FD4 +:10D7A000736F72745F6F726465725F345F540000F0 +:10D7B0000000000000000000000000000000000069 +:10D7C0000000000000000000000000000000000059 +:10D7D000000000000000000000000000F1680208E6 +:10D7E000A2690208696E765F696E69745F63686535 +:10D7F000636B5F73616D706C655F62616C616E63BA +:10D8000065000000000000000000000000000000B3 +:10D810000000000000000000000000000000000008 +:10D8200000000000A3690208C6690208696E765FFD +:10D83000696E69745F636865636B5F73616D706C5B +:10D84000655F62616C616E63655F706172616D6579 +:10D85000746572000000000000000000000000007D +:10D86000000000000000000000000000C76902087E +:10D87000E8690208696E765F6164645F616363658D +:10D880006C5F626C6F636B5F6461746100000000C9 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B00000000000E9690208B06A0208696E765F3C +:10D8C000636865636B5F73616D706C655F62616CEB +:10D8D000616E6365000000000000000000000000B1 +:10D8E0000000000000000000000000000000000038 +:10D8F000000000000000000000000000B16A020803 +:10D90000686C02087365745F73616D706C655F723B +:10D9100061746500000000000000000000000000CD +:10D9200000000000000000000000000000000000F7 +:10D9300000000000000000000000000000000000E7 +:10D9400000000000696C0208D06C0208696E765F06 +:10D950006175746F5F63616C696272617465000008 +:10D9600000000000000000000000000000000000B7 +:10D9700000000000000000000000000000000000A7 +:10D98000000000000000000000000000D16C020850 +:10D99000F06F0208696E765F696E69745F696E5F29 +:10D9A0007573655F6175746F5F63616C69627261E5 +:10D9B00074696F6E000000000000000000000000AD +:10D9C0000000000000000000000000000000000057 +:10D9D00000000000F16F020846700208696E765F71 +:10D9E00073746172745F696E5F7573655F6175747E +:10D9F0006F5F63616C6962726174696F6E000000D1 +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000004770020845 +:10DA200052700208696E765F64625F6C6F61645F5A +:10DA300066756E630000000000000000000000003A +:10DA400000000000000000000000000000000000D6 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000537002086C700208696E765F57 +:10DA700064625F736176655F66756E6300000000C7 +:10DA80000000000000000000000000000000000096 +:10DA90000000000000000000000000000000000086 +:10DAA0000000000000000000000000006D7002088F +:10DAB00082700208696E765F656E61626C655F698F +:10DAC0006E5F7573655F6175746F5F63616C6962CA +:10DAD000726174696F6E00000000000000000000B9 +:10DAE0000000000000000000000000000000000036 +:10DAF000000000008370020898710208696E765F6A +:10DB0000636F6D706173735F616E676C65000000B9 +:10DB10000000000000000000000000000000000005 +:10DB200000000000000000000000000000000000F5 +:10DB300000000000000000000000000099710208D1 +:10DB400078720208696E765F6765745F6779726FD5 +:10DB50005F73756D5F6F665F737172000000000028 +:10DB600000000000000000000000000000000000B5 +:10DB700000000000000000000000000000000000A5 +:10DB8000000000007972020892720208696E765FE6 +:10DB90007132395F6D756C74000000000000000088 +:10DBA0000000000000000000000000000000000075 +:10DBB0000000000000000000000000000000000065 +:10DBC0000000000000000000000000009372020846 +:10DBD0009E720208696E765F7133305F6D756C748A +:10DBE0000000000000000000000000000000000035 +:10DBF0000000000000000000000000000000000025 +:10DC00000000000000000000000000000000000014 +:10DC1000000000009F720208AA720208696E765F17 +:10DC2000715F6D756C740000000000000000000062 +:10DC300000000000000000000000000000000000E4 +:10DC400000000000000000000000000000000000D4 +:10DC5000000000000000000000000000AB7202089D +:10DC600070730208696E765F715F61646400000022 +:10DC700000000000000000000000000000000000A4 +:10DC80000000000000000000000000000000000094 +:10DC90000000000000000000000000000000000084 +:10DCA000000000007173020896730208696E765FC7 +:10DCB000715F696E766572740000000000000000FC +:10DCC0000000000000000000000000000000000054 +:10DCD0000000000000000000000000000000000044 +:10DCE0000000000000000000000000009773020820 +:10DCF000B4730208696E765F715F726F74617465E8 +:10DD00000000000000000000000000000000000013 +:10DD10000000000000000000000000000000000003 +:10DD200000000000000000000000000000000000F3 +:10DD300000000000B5730208F2730208696E765F96 +:10DD4000715F6D756C7466000000000000000000DB +:10DD500000000000000000000000000000000000C3 +:10DD600000000000000000000000000000000000B3 +:10DD7000000000000000000000000000F373020833 +:10DD8000C4740208696E765F715F61646466000046 +:10DD90000000000000000000000000000000000083 +:10DDA0000000000000000000000000000000000073 +:10DDB0000000000000000000000000000000000063 +:10DDC00000000000C574020806750208696E765FDF +:10DDD000715F6E6F726D616C697A6566000000003C +:10DDE0000000000000000000000000000000000033 +:10DDF0000000000000000000000000000000000023 +:10DE0000000000000000000000000000077502088C +:10DE1000BA750208696E765F715F6E6F726D34005D +:10DE200000000000000000000000000000000000F2 +:10DE300000000000000000000000000000000000E2 +:10DE400000000000000000000000000000000000D2 +:10DE500000000000BB7502082E760208696E765F2E +:10DE6000715F696E766572746600000000000000E4 +:10DE700000000000000000000000000000000000A2 +:10DE80000000000000000000000000000000000092 +:10DE90000000000000000000000000002F760208D3 +:10DEA00058760208696E765F7175617465726E6985 +:10DEB0006F6E5F746F5F726F746174696F6E000074 +:10DEC0000000000000000000000000000000000052 +:10DED0000000000000000000000000000000000042 +:10DEE000000000005976020832770208696E765FFA +:10DEF000726F775F325F7363616C650000000000D2 +:10DF00000000000000000000000000000000000011 +:10DF10000000000000000000000000000000000001 +:10DF2000000000000000000000000000337702083D +:10DF300072770208696E765F6F7269656E746174DC +:10DF4000696F6E5F6D61747269785F746F5F736320 +:10DF5000616C617200000000000000000000000021 +:10DF600000000000000000000000000000000000B1 +:10DF7000000000007377020894770208696E765FEC +:10DF8000636F6E766572745F746F5F626F64795FE2 +:10DF9000776974685F7363616C650000000000005E +:10DFA0000000000000000000000000000000000071 +:10DFB000000000000000000000000000957702084B +:10DFC00002780208696E765F696E69745F626971D2 +:10DFD0007561645F66696C74657200000000000022 +:10DFE0000000000000000000000000000000000031 +:10DFF0000000000000000000000000000000000021 +:10E00000000000000378020820780208696E765F3D +:10E0100063616C635F73746174655F746F5F6D617E +:10E020007463685F6F7574707574000000000000A1 +:10E0300000000000000000000000000000000000E0 +:10E04000000000000000000000000000217802082D +:10E050004A780208696E765F6269717561645F660D +:10E06000696C7465725F70726F6365737300000032 +:10E0700000000000000000000000000000000000A0 +:10E080000000000000000000000000000000000090 +:10E09000000000004B780208987802086D6C4D6112 +:10E0A00074726978566563746F724D756C74000094 +:10E0B0000000000000000000000000000000000060 +:10E0C0000000000000000000000000000000000050 +:10E0D0000000000000000000000000009978020825 +:10E0E000DA780208696E765F666173745F737172C5 +:10E0F00074000000000000000000000000000000AC +:10E10000000000000000000000000000000000000F +:10E1100000000000000000000000000000000000FF +:10E1200000000000DB7802089879020874657374B7 +:10E130005F6C696D6974735F616E645F7363616C5A +:10E14000650000000000000000000000000000006A +:10E1500000000000000000000000000000000000BF +:10E160000000000000000000000000009979020893 +:10E17000307A02086765745F686967686573745F01 +:10E180006269745F706F736974696F6E000000007C +:10E19000000000000000000000000000000000007F +:10E1A000000000000000000000000000000000006F +:10E1B00000000000317A0208827A0208696E765FF8 +:10E1C000636F6D707574655F7363616C61725F70AE +:10E1D00061727400000000000000000000000000F8 +:10E1E000000000000000000000000000000000002F +:10E1F000000000000000000000000000837A020818 +:10E20000C47A0208494F454D5F5772697465536976 +:10E210006E676C655265670000000000000000003A +:10E2200000000000000000000000000000000000EE +:10E2300000000000000000000000000000000000DE +:10E2400000000000C57A0208E87A0208494F454DEF +:10E250005F57726974655265670000000000000036 +:10E2600000000000000000000000000000000000AE +:10E27000000000000000000000000000000000009E +:10E28000000000000000000000000000E97A020821 +:10E29000187B0208494F454D5F52656164526567BE +:10E2A000000000000000000000000000000000006E +:10E2B000000000000000000000000000000000005E +:10E2C000000000000000000000000000000000004E +:10E2D00000000000197B0208367B0208494F454DBB +:10E2E0005F5072696E74660000000000000000005C +:10E2F000000000000000000000000000000000001E +:10E30000000000000000000000000000000000000D +:10E31000000000000000000000000000377B020841 +:10E320003E7B0208494F454D5F44656C61794D73F2 +:10E3300000000000000000000000000000000000DD +:10E3400000000000000000000000000000000000CD +:10E3500000000000000000000000000000000000BD +:10E36000000000003F7B0208507B02085F5F69618C +:10E37000725F756E616C69676E65645F6D656D6314 +:10E380006D700000000000000000000000000000B0 +:10E39000000000000000000000000000000000007D +:10E3A000000000000000000000000000517B020897 +:10E3B000B47B020853464D6F74696F6E5F496E6996 +:10E3C00074000000000000000000000000000000D9 +:10E3D000000000000000000000000000000000003D +:10E3E000000000000000000000000000000000002D +:10E3F00000000000B57B0208CC7B02084465746510 +:10E40000637453464D6F74696F6E00000000000026 +:10E4100000000000000000000000000000000000FC +:10E4200000000000000000000000000000000000EC +:10E43000000000000000000000000000CD7B02088A +:10E44000047E02084E6F4D6F7665496E697469747B +:10E4500069616C697A65000000000000000000003E +:10E4600000000000000000000000000000000000AC +:10E47000000000000000000000000000000000009C +:10E4800000000000057E02086C7E02084E6F4D6F92 +:10E49000766546696E616C697A650000000000006F +:10E4A000000000000000000000000000000000006C +:10E4B000000000000000000000000000000000005C +:10E4C0000000000000000000000000006D7E020857 +:10E4D000707E02084E6F4D6F766544657465637497 +:10E4E000696F6E00000000000000000000000000E6 +:10E4F000000000000000000000000000000000001C +:10E50000000000000000000000000000000000000B +:10E5100000000000717E02083082020847657456D0 +:10E520006172526573756C74000000000000000099 +:10E5300000000000000000000000000000000000DB +:10E5400000000000000000000000000000000000CB +:10E5500000000000000000000000000031820208FE +:10E56000F4820208696E765F73746F72655F67612B +:10E570006D696E675F7175617465726E696F6E004B +:10E58000000000000000000000000000000000008B +:10E59000000000000000000000000000000000007B +:10E5A00000000000F58202081C830208696E765F95 +:10E5B0007365745F636F6D706173735F636F7272A5 +:10E5C000656374696F6E00000000000000000000C9 +:10E5D000000000000000000000000000000000003B +:10E5E0000000000000000000000000001D83020881 +:10E5F00044830208696E765F6765745F6D6F746946 +:10E600006F6E5F73746174650000000000000000AD +:10E6100000000000000000000000000000000000FA +:10E6200000000000000000000000000000000000EA +:10E63000000000004583020854830208696E765F7B +:10E640007365745F6D6F74696F6E5F737461746509 +:10E6500000000000000000000000000000000000BA +:10E6600000000000000000000000000000000000AA +:10E6700000000000000000000000000055830208B8 +:10E6800090830208696E765F6765745F6772617672 +:10E690006974790000000000000000000000000024 +:10E6A000000000000000000000000000000000006A +:10E6B000000000000000000000000000000000005A +:10E6C0000000000091830208E0830208696E765F13 +:10E6D0006765745F36617869735F717561746572BF +:10E6E0006E696F6E00000000000000000000000076 +:10E6F000000000000000000000000000000000001A +:10E70000000000000000000000000000E18302089B +:10E71000EE830208696E765F6765745F7175617478 +:10E7200065726E696F6E000000000000000000005E +:10E7300000000000000000000000000000000000D9 +:10E7400000000000000000000000000000000000C9 +:10E7500000000000EF83020826840208696E765FDD +:10E760006765745F7175617465726E696F6E5F73F2 +:10E7700065740000000000000000000000000000C0 +:10E780000000000000000000000000000000000089 +:10E7900000000000000000000000000027840208C4 +:10E7A0006E840208696E765F67656E657261746576 +:10E7B0005F726573756C74730000000000000000E8 +:10E7C0000000000000000000000000000000000049 +:10E7D0000000000000000000000000000000000039 +:10E7E000000000006F84020878840208696E765F7A +:10E7F00073746172745F726573756C74735F686F44 +:10E800006C64657200000000000000000000000061 +:10E8100000000000000000000000000000000000F8 +:10E8200000000000000000000000000079840208E1 +:10E830008A840208696E765F696E69745F726573B7 +:10E84000756C74735F686F6C646572000000000023 +:10E8500000000000000000000000000000000000B8 +:10E8600000000000000000000000000000000000A8 +:10E87000000000008B840208BA840208696E765F8B +:10E88000656E61626C655F726573756C74735F68E9 +:10E890006F6C646572000000000000000000000062 +:10E8A0000000000000000000000000000000000068 +:10E8B000000000000000000000000000BB8402080F +:10E8C000D0840208696E765F7365745F6163636507 +:10E8D0006C5F626961735F666F756E640000000053 +:10E8E0000000000000000000000000000000000028 +:10E8F0000000000000000000000000000000000018 +:10E9000000000000D1840208D8840208696E765F96 +:10E910007365745F636F6D706173735F6269617358 +:10E920005F666F756E64000000000000000000006C +:10E9300000000000000000000000000000000000D7 +:10E94000000000000000000000000000D984020860 +:10E95000E0840208696E765F6765745F6C696E6556 +:10E9600061725F616363656C00000000000000007D +:10E970000000000000000000000000000000000097 +:10E980000000000000000000000000000000000087 +:10E9900000000000E184020820850208696E765FAD +:10E9A0006765745F68656164696E675F636F6E66F3 +:10E9B0006964656E63655F696E74657276616C002B +:10E9C0000000000000000000000000000000000047 +:10E9D0000000000000000000000000002185020887 +:10E9E0003C850208696E765F6765745F6C696E6569 +:10E9F00061725F616363656C5F666C6F6174000078 +:10EA00000000000000000000000000000000000006 +:10EA100000000000000000000000000000000000F6 +:10EA2000000000003D85020878850208696E765F67 +:10EA3000696E69745F73746F726167655F6D616E33 +:10EA40006167657200000000000000000000000027 +:10EA500000000000000000000000000000000000B6 +:10EA6000000000000000000000000000798502089E +:10EA70008E850208696E765F726567697374657268 +:10EA80005F6C6F61645F73746F72650000000000FB +:10EA90000000000000000000000000000000000076 +:10EAA0000000000000000000000000000000000066 +:10EAB000000000008F850208F8850208696E765F05 +:10EAC0007365745F6D6573736167650000000000B6 +:10EAD0000000000000000000000000000000000036 +:10EAE0000000000000000000000000000000000026 +:10EAF000000000000000000000000000F98502088E +:10EB00000A860208696E765F6765745F6D65737368 +:10EB10006167655F6C6576656C5F300000000000C2 +:10EB200000000000000000000000000000000000E5 +:10EB300000000000000000000000000000000000D5 +:10EB4000000000000B86020820860208696E765FCE +:10EB5000696E69745F73746172745F6D616E616711 +:10EB600065720000000000000000000000000000CE +:10EB70000000000000000000000000000000000095 +:10EB800000000000000000000000000021860208D4 +:10EB900030860208696E765F7265676973746572A4 +:10EBA0005F6D706C5F73746172745F6E6F746966B1 +:10EBB00069636174696F6E0000000000000000006E +:10EBC0000000000000000000000000000000000045 +:10EBD00000000000318602084C860208696E765FEC +:10EBE000657865637574655F6D706C5F7374617271 +:10EBF000745F6E6F74696669636174696F6E00003B +:10EC00000000000000000000000000000000000004 +:10EC10000000000000000000000000004D86020817 +:10EC2000788602085F5F61656162695F64326C7A51 +:10EC300000000000000000000000000000000000D4 +:10EC400000000000000000000000000000000000C4 +:10EC500000000000000000000000000000000000B4 +:10EC60000000000079860208A48602085F5F6961DF +:10EC7000725F6432756C7A000000000000000000D2 +:10EC80000000000000000000000000000000000084 +:10EC90000000000000000000000000000000000074 +:10ECA000000000000000000000000000A58602082F +:10ECB000F48602085F5F61656162695F6C6173720F +:10ECC0000000000000000000000000000000000044 +:10ECD0000000000000000000000000000000000034 +:10ECE0000000000000000000000000000000000024 +:10ECF00000000000F586020818870208737172741C +:10ED0000660000000000000000000000000000009D +:10ED100000000000000000000000000000000000F3 +:10ED200000000000000000000000000000000000E3 +:10ED30000000000000000000000000001987020829 +:10ED4000198702085F73717274660000000000008A +:10ED500000000000000000000000000000000000B3 +:10ED600000000000000000000000000000000000A3 +:10ED70000000000000000000000000000000000093 +:10ED80000000000019870208348702085F5F616590 +:10ED90006162695F6C3266000000000000000000E4 +:10EDA0000000000000000000000000000000000063 +:10EDB0000000000000000000000000000000000053 +:10EDC000000000000000000000000000358702087D +:10EDD000508702085F5F61656162695F756C3266CA +:10EDE0000000000000000000000000000000000023 +:10EDF0000000000000000000000000000000000013 +:10EE00000000000000000000000000000000000002 +:10EE100000000000518702085C8702085F5F69619B +:10EE2000725F756C32660000000000000000000098 +:10EE300000000000000000000000000000000000D2 +:10EE400000000000000000000000000000000000C2 +:10EE50000000000000000000000000005D870208C4 +:10EE6000988702085F5F61656162695F66326C7AEC +:10EE70000000000000000000000000000000000092 +:10EE80000000000000000000000000000000000082 +:10EE90000000000000000000000000000000000072 +:10EEA000000000009987020810880208696E765FEA +:10EEB0006D61675F646973747572625F6765745FC3 +:10EEC0006465746563745F737461747573000000C6 +:10EED0000000000000000000000000000000000032 +:10EEE000000000000000000000000000118802087F +:10EEF0002A880208696E765F6D61675F6469737462 +:10EF00007572625F6765745F64726F705F68656178 +:10EF100064696E675F61636375726163795F73745F +:10EF20006174757300000000000000000000000024 +:10EF3000000000002B88020830880208696E765FA6 +:10EF40006D61675F646973747572625F6765745F32 +:10EF5000766563746F725F72616469757300000037 +:10EF600000000000000000000000000000000000A1 +:10EF700000000000000000000000000031880208CE +:10EF80003C880208696E765F6765745F6D61676EC5 +:10EF9000657469635F64697374757262616E6365D9 +:10EFA0005F737461746500000000000000000000E1 +:10EFB0000000000000000000000000000000000051 +:10EFC000000000003D8802084C880208636F7366E9 +:10EFD0000000000000000000000000000000000031 +:10EFE0000000000000000000000000000000000021 +:10EFF0000000000000000000000000000000000011 +:10F000000000000000000000000000004D88020821 +:10F010005288020873696E6600000000000000005C +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F050000000000053880208588802086174616E3D +:10F060003266000000000000000000000000000008 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000005988020885 +:10F0A000598802085F6174616E32660000000000DA +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000059880208C88802086173696E30 +:10F0F00066000000000000000000000000000000AA +:10F1000000000000000000000000000000000000FF +:10F1100000000000000000000000000000000000EF +:10F12000000000000000000000000000C988020884 +:10F13000C98802085F6173696E6600000000000004 +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F1700000000000C9880208288902086D656D6DCD +:10F180006F76650000000000000000000000000035 +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B0000000000000000000000000002989020893 +:10F1C00034890208696E765F636F6D62696E655F90 +:10F1D000636F6D706173735F646174610000000040 +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F200000000000035890208728A0208696E765F84 +:10F210007365745F7465726D730000000000000018 +:10F2200000000000000000000000000000000000DE +:10F2300000000000000000000000000000000000CE +:10F24000000000000000000000000000738A0208B7 +:10F25000488D0208696E765F636F6D707574655FC7 +:10F2600062696173000000000000000000000000FF +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F2900000000000498D0208649402085F5F696104 +:10F2A000725F7666705F636F73000000000000009D +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000659402082B +:10F2E000789402085F5F6961725F4653696E00003F +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000000000FD +:10F3100000000000000000000000000000000000ED +:10F320000000000079940208E49502085F5F6961BB +:10F33000725F786174616E6600000000000000007A +:10F3400000000000000000000000000000000000BD +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000E595020819 +:10F37000889602085F5F6961725F756E616C69678C +:10F380006E65645F5F5F61656162695F6D656D6D2C +:10F390006F766538000000000000000000000000EB +:10F3A000000000000000000000000000000000005D +:10F3B0000000000089960208899602085F5F696173 +:10F3C000725F756E616C69676E65645F5F5F6165D2 +:10F3D0006162695F6D656D6D6F76650000000000AC +:10F3E000000000000000000000000000000000001D +:10F3F00000000000000000000000000089960208E4 +:10F40000899602085F5F6961725F756E616C6967FA +:10F410006E65645F5F5F61656162695F6D656D6D9B +:10F420006F7665340000000000000000000000005E +:10F4300000000000000000000000000000000000CC +:10F440000000000089960208009702085F5F69616A +:10F45000725F53696E0000000000000000000000B1 +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F4800000000000000000000000000001970208DA +:10F49000589B02085F5F6961725F46517561640045 +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D00000000000599B0208449C02085F5F6961BC +:10F4E000725F5175616400000000000000000000C0 +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000000000000FB +:10F51000000000000000000000000000459C020800 +:10F52000AC9D02085F5F6961725F4644696E74005A +:10F5300000000000000000000000000000000000CB +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F5600000000000AD9D0208FC9D02085F5F69611C +:10F57000725F7666705F666D6F6466000000000003 +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000FD9D0208B7 +:10F5B000049E0208666D6F64660000000000000093 +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F00000000000059E0208389F02085F5F6961F5 +:10F60000725F44696E74000000000000000000009A +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F63000000000000000000000000000399F0208E8 +:10F64000B89F02085F5F6961725F666D6F646C00EE +:10F6500000000000000000000000000000000000AA +:10F66000000000000000000000000000000000009A +:10F67000000000000000000000000000000000008A +:10F6800000000000B99F0208B99F0208666D6F6410 +:10F690006C000000000000000000000000000000FE +:10F6A000000000000000000000000000000000005A +:10F6B000000000000000000000000000000000004A +:10F6C000000000000000000000000000B99F0208D8 +:10F6D000B99F0208666D6F64000000000000000022 +:10F6E000000000000000000000000000000000001A +:10F6F000000000000000000000000000000000000A +:10F7000000000000000000000000000000000000F9 +:10F7100000000000B99F0208B99F02085F5F69619D +:10F72000725F666D6F640000000000000000000062 +:10F7300000000000000000000000000000000000C9 +:10F7400000000000000000000000000000000000B9 +:10F75000000000000000000000000000B99F020847 +:10F7600060A102084E5649435F53797374656D5228 +:10F7700065736574000000000000000000000000D8 +:10F780000000000000000000000000000000000079 +:10F790000000000000000000000000000000000069 +:10F7A0000000000061A102087CA102084E4D495FE3 +:10F7B00048616E646C65720000000000000000008B +:10F7C0000000000000000000000000000000000039 +:10F7D0000000000000000000000000000000000029 +:10F7E0000000000000000000000000007DA10208F1 +:10F7F00090A10208486172644661756C745F48614B +:10F800006E646C65720000000000000000000000E3 +:10F8100000000000000000000000000000000000E8 +:10F8200000000000000000000000000000000000D8 +:10F830000000000091A10208A4A102084D656D4DD1 +:10F84000616E6167655F48616E646C65720000009F +:10F8500000000000000000000000000000000000A8 +:10F860000000000000000000000000000000000098 +:10F87000000000000000000000000000A5A1020838 +:10F88000B8A102084275734661756C745F48616E79 +:10F89000646C6572000000000000000000000000C1 +:10F8A0000000000000000000000000000000000058 +:10F8B0000000000000000000000000000000000048 +:10F8C00000000000B9A10208CCA1020855736167CD +:10F8D000654661756C745F48616E646C65720000AA +:10F8E0000000000000000000000000000000000018 +:10F8F0000000000000000000000000000000000008 +:10F90000000000000000000000000000CDA102087F +:10F91000E0A102085356435F48616E646C65720053 +:10F9200000000000000000000000000000000000D7 +:10F9300000000000000000000000000000000000C7 +:10F9400000000000000000000000000000000000B7 +:10F9500000000000E1A10208F4A1020844656275FC +:10F96000674D6F6E5F48616E646C657200000000E9 +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F99000000000000000000000000000F5A10208C7 +:10F9A00008A2020843726173685F44756D705F68F6 +:10F9B000616E646C65725F6300000000000000000F +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000009A202080CA20208535049318D +:10F9F0005F49525148616E646C65720000000000FE +:10FA000000000000000000000000000000000000F6 +:10FA100000000000000000000000000000000000E6 +:10FA20000000000000000000000000000DA202081D +:10FA30000EA2020853485F53656E736F72436F6D79 +:10FA40005461736B00000000000000000000000023 +:10FA500000000000000000000000000000000000A6 +:10FA60000000000000000000000000000000000096 +:10FA7000000000000FA202084CA402084558544997 +:10FA8000305F49525148616E646C6572000000003D +:10FA90000000000000000000000000000000000066 +:10FAA0000000000000000000000000000000000056 +:10FAB0000000000000000000000000004DA402084B +:10FAC000DCA5020845585449315F49525148616EDE +:10FAD000646C65720000000000000000000000007F +:10FAE0000000000000000000000000000000000016 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000DDA5020868A602084558544917 +:10FB1000325F49525148616E646C657200000000AA +:10FB200000000000000000000000000000000000D5 +:10FB300000000000000000000000000000000000C5 +:10FB400000000000000000000000000069A602089C +:10FB500006A702084558544931355F31305F495294 +:10FB60005148616E646C6572000000000000000086 +:10FB70000000000000000000000000000000000085 +:10FB80000000000000000000000000000000000075 +:10FB90000000000007A702089AA702085254435F1A +:10FBA000574B55505F49525148616E646C65720005 +:10FBB0000000000000000000000000000000000045 +:10FBC0000000000000000000000000000000000035 +:10FBD0000000000000000000000000009BA70208D9 +:10FBE0005AA802085254435F416C61726D5F4952DA +:10FBF0005148616E646C65720000000000000000F6 +:10FC000000000000000000000000000000000000F4 +:10FC100000000000000000000000000000000000E4 +:10FC2000000000005BA80208F6A802085243435FE8 +:10FC300049525148616E646C65720000000000001A +:10FC400000000000000000000000000000000000B4 +:10FC500000000000000000000000000000000000A4 +:10FC6000000000000000000000000000F7A80208EB +:10FC700098AA02084F535F4765744D61696C000094 +:10FC80000000000000000000000000000000000074 +:10FC90000000000000000000000000000000000064 +:10FCA0000000000000000000000000000000000054 +:10FCB0000000000099AA0208F4AA02087072657098 +:10FCC0006172655F74785F646D6100000000000020 +:10FCD0000000000000000000000000000000000024 +:10FCE0000000000000000000000000000000000014 +:10FCF000000000000000000000000000F5AA02085B +:10FD00003CAB0208707265706172655F72785F6407 +:10FD10006D61000000000000000000000000000015 +:10FD200000000000000000000000000000000000D3 +:10FD300000000000000000000000000000000000C3 +:10FD4000000000003DAB020884AB02084F535F5037 +:10FD500075744D61696C436F6E64000000000000B3 +:10FD60000000000000000000000000000000000093 +:10FD70000000000000000000000000000000000083 +:10FD800000000000000000000000000085AB020839 +:10FD9000E8AB02085374616E644C616E6473636116 +:10FDA00070655F496E69740000000000000000008B +:10FDB0000000000000000000000000000000000043 +:10FDC0000000000000000000000000000000000033 +:10FDD00000000000E9AB020828AC0208496E697413 +:10FDE00056617200000000000000000000000000EA +:10FDF0000000000000000000000000000000000003 +:10FE000000000000000000000000000000000000F2 +:10FE100000000000000000000000000029AC020803 +:10FE20007CAC0208436865636B496E5F5374616E16 +:10FE3000644C616E647363617065000000000000D3 +:10FE400000000000000000000000000000000000B2 +:10FE500000000000000000000000000000000000A2 +:10FE6000000000007DAC020820AF02084368656313 +:10FE70006B4F75745F5374616E644C616E64736331 +:10FE8000617065000000000000000000000000003C +:10FE90000000000000000000000000000000000062 +:10FEA00000000000000000000000000021AF020878 +:10FEB0000CB102084465746563744779726F4D6FC5 +:10FEC0007665546F4C616E64736361706500000009 +:10FED0000000000000000000000000000000000022 +:10FEE0000000000000000000000000000000000012 +:10FEF000000000000DB1020820B2020844657465DC +:10FF000063744779726F53746F70000000000000D3 +:10FF100000000000000000000000000000000000E1 +:10FF200000000000000000000000000000000000D1 +:10FF300000000000000000000000000021B20208E4 +:10FF4000C8B20208534C5F53746F636B416E676CA9 +:10FF500065446174610000000000000000000000C2 +:10FF60000000000000000000000000000000000091 +:10FF70000000000000000000000000000000000081 +:10FF800000000000C9B20208FAB20208534C5F53E5 +:10FF9000746F636B4163634461746100000000002F +:10FFA0000000000000000000000000000000000051 +:10FFB0000000000000000000000000000000000041 +:10FFC000000000000000000000000000FBB202087A +:10FFD0002EB30208534C5F53746F636B4779726F93 +:10FFE0004461746100000000000000000000000097 +:10FFF0000000000000000000000000000000000001 +:020000025000AC +:1000000000000000000000000000000000000000F0 +:10001000000000002FB302085CB302084765745665 +:1000200061725F5374616E644C616E64736361707E +:10003000655F4163630000000000000000000000F5 +:1000400000000000000000000000000000000000B0 +:100050000000000000000000000000005DB3020886 +:10006000DCB30208446574656374537461626C6543 +:10007000537461746500000000000000000000007F +:100080000000000000000000000000000000000070 +:100090000000000000000000000000000000000060 +:1000A00000000000DDB30208A0B402086173696EAD +:1000B0000000000000000000000000000000000040 +:1000C0000000000000000000000000000000000030 +:1000D0000000000000000000000000000000000020 +:1000E000000000000000000000000000A1B40208B1 +:1000F000C0B502085F5F6961725F7666705F6173A9 +:10010000696E000000000000000000000000000018 +:1001100000000000000000000000000000000000DF +:1001200000000000000000000000000000000000CF +:1001300000000000C1B50208D0B502086174616E0C +:10014000320000000000000000000000000000007D +:10015000000000000000000000000000000000009F +:10016000000000000000000000000000000000008F +:10017000000000000000000000000000D1B50208EF +:10018000B0B602085F5F6961725F7666705F617426 +:10019000616E32000000000000000000000000005E +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C00000000000B1B60208F8B602085F5F69617E +:1001D000725F4174616E00000000000000000000CA +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000000000000FF +:10020000000000000000000000000000F9B6020835 +:10021000E8B802085F5F6961725F447465737400D7 +:1002200000000000000000000000000000000000CE +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:1002500000000000E9B8020828B9020841525F49CD +:100260006E69740000000000000000000000000043 +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:1002900000000000000000000000000029B9020872 +:1002A00060B9020841525F53656E736F72436861B3 +:1002B0006E676564000000000000000000000000A0 +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E0000000000061B9020868BC02086973546923 +:1002F0006C74416E676C6541636365707461626CB8 +:100300006500000000000000000000000000000088 +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000069BC02089E +:1003300072BC020869734F7269656E746174696F8B +:100340006E416E676C6541636365707461626C6574 +:10035000000000000000000000000000000000009D +:10036000000000000000000000000000000000008D +:100370000000000073BC020804BD020869735072DB +:100380006F706F73616C4F7269656E746174696FC1 +:100390006E416E676C6541636365707461626C6524 +:1003A000000000000000000000000000000000004D +:1003B00000000000000000000000000005BD020871 +:1003C0001EBE0208636C65617250726F706F73615C +:1003D0006C000000000000000000000000000000B1 +:1003E000000000000000000000000000000000000D +:1003F00000000000000000000000000000000000FD +:10040000000000001FBE020826BE020841525F53D2 +:10041000746F636B446174610000000000000000B1 +:1004200000000000000000000000000000000000CC +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000027BE0208BD +:1004500050BE020841525F47657456617200000049 +:10046000000000000000000000000000000000008C +:10047000000000000000000000000000000000007C +:10048000000000000000000000000000000000006C +:100490000000000051BE0208C8BE020841525F477A +:1004A000657453756D00000000000000000000003E +:1004B000000000000000000000000000000000003C +:1004C000000000000000000000000000000000002C +:1004D000000000000000000000000000C9BE02088B +:1004E00094BF02085F5F6961725F7666705F726FCA +:1004F000756E6400000000000000000000000000B5 +:1005000000000000000000000000000000000000EB +:1005100000000000000000000000000000000000DB +:100520000000000095BF0208E0BF0208496E697430 +:100530005368616B65457800000000000000000012 +:1005400000000000000000000000000000000000AB +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000E1BF0208E1 +:10057000A4C1020846696E616C5368616B65000036 +:10058000000000000000000000000000000000006B +:10059000000000000000000000000000000000005B +:1005A000000000000000000000000000000000004B +:1005B00000000000A5C10208DCC1020844657465A2 +:1005C00063745368616B6500000000000000000068 +:1005D000000000000000000000000000000000001B +:1005E000000000000000000000000000000000000B +:1005F000000000000000000000000000DDC1020853 +:10060000E0C5020853485F4C4D5F54656D706C61E6 +:1006100074655F53746172745F5374616E644C618E +:100620006E647363617065000000000000000000EC +:1006300000000000000000000000000000000000BA +:1006400000000000E1C502085CC6020853485F4C88 +:100650004D5F54656D706C6174655F53746F705F4E +:100660005374616E644C616E647363617065000005 +:10067000000000000000000000000000000000007A +:100680000000000000000000000000005DC602083D +:10069000F2C6020853485F4C4D5F54656D706C6143 +:1006A00074655F50726F636573735F5374616E64DA +:1006B0004C616E64736361706500000000000000AF +:1006C000000000000000000000000000000000002A +:1006D00000000000F3C602083AC9020853485F4C04 +:1006E0004D5F54656D706C6174655F4D6574686FC6 +:1006F00064496E697469616C697A655F5374616E8F +:10070000644C616E647363617065000000000000FA +:100710000000000000000000000000003BC90208CB +:100720006CC9020853485F4C4D5F436865636B5367 +:1007300074616E644C616E6473636170654275666A +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:10076000000000006DC902087EC9020853485F4CB2 +:100770004D5F5570646174655374616E644C616E55 +:10078000647363617065446174610000000000007F +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000007FC90208F7 +:1007B00090C9020853485F4C4D5F4765745374619C +:1007C0006E644C616E6473636170655265636F67DC +:1007D0006E697A65640000000000000000000000FF +:1007E0000000000000000000000000000000000009 +:1007F0000000000091C9020898C9020853485F4CE4 +:100800004D5F5365745374616E644C616E647363C1 +:100810006170655265636F676E697A656400000098 +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000099C902084C +:10084000A0C9020853485F4C4D5F5374616E644CFD +:10085000616E6473636170655F417070656E644C56 +:100860006962726172794D53470000000000000018 +:100870000000000000000000000000000000000078 +:1008800000000000A1C9020844CA020853485F4C96 +:100890004D5F54656D706C6174655F537461727403 +:1008A0005F446F75626C6554617000000000000069 +:1008B0000000000000000000000000000000000038 +:1008C00000000000000000000000000045CA02080F +:1008D0006ECA020853485F4C4D5F54656D706C6181 +:1008E00074655F53746F705F446F75626C655461BB +:1008F0007000000000000000000000000000000088 +:1009000000000000000000000000000000000000E7 +:10091000000000006FCA02088ECA020853485F4CEC +:100920004D5F54656D706C6174655F50726F636587 +:1009300073735F446F75626C6554617000000000F2 +:1009400000000000000000000000000000000000A7 +:100950000000000000000000000000008FCA020834 +:10096000D4CA020853485F4C4D5F54656D706C618A +:1009700074655F4D6574686F64496E697469616C14 +:10098000697A655F446F75626C6554617000000040 +:100990000000000000000000000000000000000057 +:1009A00000000000D5CA020800CB020853485F4C83 +:1009B0004D5F436865636B446F75626C655461702D +:1009C000427566000000000000000000000000000A +:1009D0000000000000000000000000000000000017 +:1009E00000000000000000000000000001CB020831 +:1009F00012CB020853485F4C4D5F557064617465BB +:100A0000446F75626C6554617044617461000000EC +:100A100000000000000000000000000000000000D6 +:100A200000000000000000000000000000000000C6 +:100A30000000000013CB020824CB020853485F4C8F +:100A40004D5F476574446F75626C655461705265A3 +:100A5000636F676E697A6564000000000000000043 +:100A60000000000000000000000000000000000086 +:100A700000000000000000000000000025CB02087C +:100A80002CCB020853485F4C4D5F536574446F751F +:100A9000626C655461705265636F676E697A6564F4 +:100AA0000000000000000000000000000000000046 +:100AB0000000000000000000000000000000000036 +:100AC000000000002DCB020832CB020853485F4CD7 +:100AD0004D5F476574446F75626C655461705F4922 +:100AE0006E7465726E616C4D6F646500000000008D +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000033CB0208DD +:100B10003ACB020853485F4C4D5F5265736574448D +:100B20006F75626C655461705F496E7465726E6159 +:100B30006C4D6F64650000000000000000000000C4 +:100B400000000000000000000000000000000000A5 +:100B5000000000003BCB020844CB020853485F4C26 +:100B60004D5F446F75626C655461705F4170706574 +:100B70006E644C6962726172794D534700000000E7 +:100B80000000000000000000000000000000000065 +:100B900000000000000000000000000045CB02083B +:100BA000ACCB0208446F75626C655461705F496E2E +:100BB0006974000000000000000000000000000058 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE00000000000ADCB0208F8CB02086465746514 +:100BF00063745F446F75626C65546170000000003F +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C2000000000000000000000000000F9CB0208F6 +:100C3000F0CF020855434779726F5F496E697400BF +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C60000000000000000000000000000000000084 +:100C700000000000F1CF02084CD002084465746502 +:100C8000637455434779726F5F4269617300000076 +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB0000000000000000000000000004DD002080D +:100CC0004ED2020855434779726F5F53746F636B5E +:100CD000446174610000000000000000000000009A +:100CE0000000000000000000000000000000000004 +:100CF00000000000000000000000000000000000F4 +:100D0000000000004FD2020878D20208554347790C +:100D1000726F5F476574566172000000000000004A +:100D200000000000000000000000000000000000C3 +:100D300000000000000000000000000000000000B3 +:100D400000000000000000000000000079D202084E +:100D5000F0D2020855434779726F5F476574537547 +:100D60006D00000000000000000000000000000016 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D900000000000F1D202083CD302085543477915 +:100DA000726F5F4D617800000000000000000000DD +:100DB0000000000000000000000000000000000033 +:100DC0000000000000000000000000000000000023 +:100DD0000000000000000000000000003DD30208F9 +:100DE00086D3020855434779726F5F4D696E0000E4 +:100DF00000000000000000000000000000000000F3 +:100E000000000000000000000000000000000000E2 +:100E100000000000000000000000000000000000D2 +:100E20000000000087D30208D0D302086D696E006D +:100E300000000000000000000000000000000000B2 +:100E400000000000000000000000000000000000A2 +:100E50000000000000000000000000000000000092 +:100E6000000000000000000000000000D1D30208D4 +:100E7000E0D302086D61780000000000000000006F +:100E80000000000000000000000000000000000062 +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB00000000000E1D30208F0D3020852504D6F49 +:100EC00074696F6E5F496E69740000000000000075 +:100ED0000000000000000000000000000000000012 +:100EE0000000000000000000000000000000000002 +:100EF000000000000000000000000000F1D3020824 +:100F00001CD4020844657465637452504D6F746953 +:100F10006F6E0000000000000000000000000000F4 +:100F200000000000000000000000000000000000C1 +:100F300000000000000000000000000000000000B1 +:100F4000000000001DD402087CD702085350416CF9 +:100F50006572745F496E6974000000000000000053 +:100F60000000000000000000000000000000000081 +:100F70000000000000000000000000000000000071 +:100F80000000000000000000000000007DD7020803 +:100F9000FCD702085350416C6572745F64657465D8 +:100FA0006374696F6E000000000000000000000024 +:100FB0000000000000000000000000000000000031 +:100FC0000000000000000000000000000000000021 +:100FD00000000000FDD7020820D902085350416CE0 +:100FE0006572745F53746F636B44617461000000D9 +:100FF00000000000000000000000000000000000F1 +:1010000000000000000000000000000000000000E0 +:1010100000000000000000000000000021D90208CC +:1010200048D902085350416C6572745F4765745625 +:1010300061720000000000000000000000000000DD +:1010400000000000000000000000000000000000A0 +:101050000000000000000000000000000000000090 +:101060000000000049D90208C0D902085350416C61 +:101070006572745F47657453756D00000000000071 +:101080000000000000000000000000000000000060 +:101090000000000000000000000000000000000050 +:1010A000000000000000000000000000C1D902089C +:1010B00024DA020853485F4C4D5F54656D706C61D3 +:1010C00074655F53746172745F43616C63466C69ED +:1010D00070436F76657200000000000000000000A1 +:1010E0000000000000000000000000000000000000 +:1010F0000000000025DA02085ADA020853485F4C63 +:101100004D5F54656D706C6174655F53746F705F93 +:1011100043616C63466C6970436F766572000000D2 +:1011200000000000000000000000000000000000BF +:101130000000000000000000000000005BDA020870 +:10114000A0DA020853485F4C4D5F54656D706C61C6 +:1011500074655F50726F636573735F43616C634660 +:101160006C6970436F76657200000000000000003B +:10117000000000000000000000000000000000006F +:1011800000000000A1DA020820DB020853485F4C8F +:101190004D5F50726F63657373496E49646C65533C +:1011A000746174757300000000000000000000000E +:1011B000000000000000000000000000000000002F +:1011C00000000000000000000000000021DB020819 +:1011D00084DB020853485F4C4D5F50726F63657348 +:1011E00073496E436F766572696E67537461747587 +:1011F000730000000000000000000000000000007C +:1012000000000000000000000000000000000000DE +:101210000000000085DB0208C8DB020853485F4C71 +:101220004D5F54656D706C6174655F4D6574686F7A +:1012300064496E697469616C697A655F43616C6366 +:10124000466C6970436F7665720000000000000014 +:10125000000000000000000000000000C9DB0208E0 +:1012600008DC020853485F4C4D5F436865636B437D +:10127000616C63466C6970436F7665724275660097 +:10128000000000000000000000000000000000005E +:10129000000000000000000000000000000000004E +:1012A0000000000009DC020820DC020853485F4C03 +:1012B0004D5F5365744576656E74547970650000B2 +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E00000000000000000000000000021DC0208F7 +:1012F00032DC020853485F4C4D5F47657443616CB4 +:1013000063466C6970436F7665725265636F676E92 +:10131000697A656400000000000000000000000021 +:1013200000000000000000000000000000000000BD +:101330000000000033DC02083ADC020853485F4C2E +:101340004D5F53657443616C63466C6970436F769F +:1013500065725265636F676E697A656400000000AC +:10136000000000000000000000000000000000007D +:101370000000000000000000000000003BDC02084C +:1013800090DC0208507574446F776E5F496E697423 +:10139000000000000000000000000000000000004D +:1013A000000000000000000000000000000000003D +:1013B000000000000000000000000000000000002D +:1013C0000000000091DC02089CDC020844657465A2 +:1013D0006374507574446F776E0000000000000065 +:1013E00000000000000000000000000000000000FD +:1013F00000000000000000000000000000000000ED +:101400000000000000000000000000009DDC020859 +:10141000C8DE020853485F496E69745F526F757485 +:10142000696E650000000000000000000000000080 +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:1014500000000000C9DE020894DF020853485379F7 +:101460007374656D496E697400000000000000002F +:10147000000000000000000000000000000000006C +:10148000000000000000000000000000000000005C +:1014900000000000000000000000000095DF0208CE +:1014A000A0DF020853485F506F7765724D616E612F +:1014B0006765725461736B0000000000000000005B +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000A1DF0208AADF020853485F5392 +:1014F000656E736F724D61696E5461736B000000AD +:1015000000000000000000000000000000000000DB +:1015100000000000000000000000000000000000CB +:10152000000000000000000000000000ABDF020827 +:10153000FCE002084F535F4372656174654D4200E1 +:10154000000000000000000000000000000000009B +:10155000000000000000000000000000000000008B +:10156000000000000000000000000000000000007B +:1015700000000000FDE0020894E1020853485F50BB +:10158000435F456E7465724C6F77506F7765724D2F +:101590006F64650000000000000000000000000013 +:1015A000000000000000000000000000000000003B +:1015B00000000000000000000000000095E10208AB +:1015C000A8E102084F535F576169744576656E74F0 +:1015D000000000000000000000000000000000000B +:1015E00000000000000000000000000000000000FB +:1015F00000000000000000000000000000000000EB +:1016000000000000A9E102082CE202084F535F47E6 +:1016100065744D61696C436F6E64000000000000EA +:1016200000000000000000000000000000000000BA +:1016300000000000000000000000000000000000AA +:101640000000000000000000000000002DE2020881 +:101650008CE20208414D5F496E697469616C697A78 +:1016600065436F726500000000000000000000008C +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:10169000000000008DE20208C8E20208414D5F50E0 +:1016A000726F63657373436F726500000000000022 +:1016B000000000000000000000000000000000002A +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000C9E2020855 +:1016E00070E40208414D5F46696E616C697A65413C +:1016F000706472436F72650000000000000000001B +:1017000000000000000000000000000000000000D9 +:1017100000000000000000000000000000000000C9 +:101720000000000071E40208BCE4020853485F4C6A +:101730004D5F496E697469616C697A654361726570 +:10174000476976657200000000000000000000009C +:101750000000000000000000000000000000000089 +:10176000000000000000000000000000BDE40208CE +:10177000D0E4020853485F4C4D5F54656D706C6156 +:1017800074655F53746172745F4361726547697613 +:101790006572000000000000000000000000000072 +:1017A0000000000000000000000000000000000039 +:1017B00000000000D1E402082AE5020853485F4C0B +:1017C0004D5F54656D706C6174655F53746F705FCD +:1017D0004361726547697665720000000000000091 +:1017E00000000000000000000000000000000000F9 +:1017F0000000000000000000000000002BE50208CF +:1018000042E5020853485F4C4D5F54656D706C6152 +:1018100074655F50726F636573735F436172654790 +:101820006976657200000000000000000000000002 +:1018300000000000000000000000000000000000A8 +:101840000000000043E5020880E5020853485F4CB1 +:101850004D5F54656D706C6174655F4D6574686F44 +:1018600064496E697469616C697A655F4361726528 +:10187000476976657200000000000000000000006B +:1018800000000000000000000000000081E50208E8 +:10189000B8E5020853485F4C4D5F436865636B438E +:1018A00061726547697665724275660000000000E6 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D00000000000B9E50208D0E5020853485F4C5B +:1018E0004D5F4765744361726547697665725265FD +:1018F000636F676E697A6564000000000000000095 +:1019000000000000000000000000000000000000D7 +:10191000000000000000000000000000D1E5020807 +:10192000D8E5020853485F4C4D5F536574436172BC +:101930006547697665725265636F676E697A65643B +:101940000000000000000000000000000000000097 +:101950000000000000000000000000000000000087 +:1019600000000000D9E50208DEE5020853485F4C9C +:101970004D5F557064617465436172654769766552 +:10198000724461746100000000000000000000006B +:101990000000000000000000000000000000000047 +:1019A000000000000000000000000000DFE5020869 +:1019B000F0E5020853485F4C4D5F4361726547692B +:1019C0007665725F417070656E644C6962726172B7 +:1019D000794D5347000000000000000000000000A7 +:1019E00000000000000000000000000000000000F7 +:1019F00000000000F1E50208CCE6020853485F4C05 +:101A00004D5F54656D706C6174655F537461727481 +:101A10005F5368616B65000000000000000000007B +:101A200000000000000000000000000000000000B6 +:101A3000000000000000000000000000CDE60208E9 +:101A400084E7020853485F4C4D5F54656D706C61CC +:101A500074655F53746F705F5368616B650000005D +:101A60000000000000000000000000000000000076 +:101A70000000000000000000000000000000000066 +:101A80000000000085E70208D2E7020853485F4CD7 +:101A90004D5F54656D706C6174655F50726F636506 +:101AA00073735F5368616B65000000000000000005 +:101AB0000000000000000000000000000000000026 +:101AC000000000000000000000000000D3E7020852 +:101AD00024E8020853485F4C4D5F54656D706C619B +:101AE00074655F4D6574686F64496E697469616C93 +:101AF000697A655F5368616B650000000000000053 +:101B000000000000000000000000000000000000D5 +:101B10000000000025E8020854E8020853485F4C22 +:101B20004D5F436865636B5368616B654275660022 +:101B300000000000000000000000000000000000A5 +:101B40000000000000000000000000000000000095 +:101B500000000000000000000000000055E802083E +:101B600066E8020853485F4C4D5F557064617465C8 +:101B70005368616B654461746100000000000000FF +:101B80000000000000000000000000000000000055 +:101B90000000000000000000000000000000000045 +:101BA0000000000067E8020878E8020853485F4C2C +:101BB0004D5F4765745368616B655265636F676E0F +:101BC000697A656400000000000000000000000069 +:101BD0000000000000000000000000000000000005 +:101BE00000000000000000000000000079E802088A +:101BF00080E8020853485F4C4D5F53657453686139 +:101C00006B655265636F676E697A656400000000FA +:101C100000000000000000000000000000000000C4 +:101C200000000000000000000000000000000000B4 +:101C30000000000081E8020888E8020853485F4C71 +:101C40004D5F5368616B655F417070656E644C6990 +:101C500062726172794D534700000000000000007D +:101C60000000000000000000000000000000000074 +:101C700000000000000000000000000089E80208E9 +:101C8000D4E8020853485F4C4D5F54656D706C6139 +:101C900074655F53746172745F53746570436F75DC +:101CA0006E74416C6572740000000000000000005A +:101CB0000000000000000000000000000000000024 +:101CC00000000000D5E8020858E9020853485F4CBC +:101CD0004D5F54656D706C6174655F53746F705FB8 +:101CE00053746570436F756E74416C657274000057 +:101CF00000000000000000000000000000000000E4 +:101D000000000000000000000000000059E9020887 +:101D100076E9020853485F4C4D5F54656D706C6105 +:101D200074655F4D6574686F64496E697469616C50 +:101D3000697A655F53746570436F756E74416C6545 +:101D400072740000000000000000000000000000AD +:101D50000000000077E90208A4E9020853485F4C3C +:101D60004D5F436865636B53746570436F756E7444 +:101D7000416C65727442756600000000000000004E +:101D80000000000000000000000000000000000053 +:101D9000000000000000000000000000A5E90208AB +:101DA000F2E9020853485F4C4D5F557064617465F9 +:101DB00053746570436F756E74416C6572744461E1 +:101DC000746100000000000000000000000000003E +:101DD0000000000000000000000000000000000003 +:101DE00000000000F3E90208FCE9020853485F4CD8 +:101DF0004D5F54656D706C6174655F50726F6365A3 +:101E000073735F53746570436F756E74416C657264 +:101E1000740000000000000000000000000000004E +:101E2000000000000000000000000000FDE90208C2 +:101E300050EA020853485F4C4D5F53746570436F1E +:101E4000756E74416C6572745F417070656E644C40 +:101E50006962726172794D53470000000000000012 +:101E60000000000000000000000000000000000072 +:101E70000000000051EA0208DCEE020853485F4C03 +:101E80004D5F54656D706C6174655F5374617274FD +:101E90005F556E63616C6962726174654779726FD8 +:101EA0000000000000000000000000000000000032 +:101EB000000000000000000000000000DDEE02084D +:101EC00016EF020853485F4C4D5F54656D706C61AE +:101ED00074655F53746F705F556E63616C69627295 +:101EE0006174654779726F00000000000000000017 +:101EF00000000000000000000000000000000000E2 +:101F00000000000017EF020840EF020853485F4C42 +:101F10004D5F54656D706C6174655F50726F636581 +:101F200073735F556E63616C696272617465477942 +:101F3000726F0000000000000000000000000000C0 +:101F400000000000000000000000000041EF020857 +:101F5000DAEF020853485F4C4D5F54656D706C6159 +:101F600074655F4D6574686F64496E697469616C0E +:101F7000697A655F556E63616C6962726174654709 +:101F800079726F00000000000000000000000000F7 +:101F900000000000DBEF020808F0020853485F4C25 +:101FA0004D5F436865636B556E63616C6962726116 +:101FB00074654779726F427566000000000000008A +:101FC0000000000000000000000000000000000011 +:101FD00000000000000000000000000009F00208FE +:101FE0001AF0020853485F4C4D5F55706461746588 +:101FF000556E63616C6962726174654779726F4492 +:10200000617461000000000000000000000000009A +:1020100000000000000000000000000000000000C0 +:10202000000000001BF0020826F0020853485F4C35 +:102030004D5F476574556E63616C6962726174656A +:102040004779726F5265636F676E697A65640000E5 +:102050000000000000000000000000000000000080 +:1020600000000000000000000000000027F002084F +:102070002EF0020853485F4C4D5F536574556E63F4 +:10208000616C6962726174654779726F5265636FE2 +:10209000676E697A656400000000000000000000BF +:1020A0000000000000000000000000000000000030 +:1020B000000000002FF0020834F0020853485F4C83 +:1020C0004D5F556E63616C696272617465477972C8 +:1020D0006F5F417070656E644C6962726172794DB8 +:1020E0005347000000000000000000000000000056 +:1020F00000000000000000000000000035F00208B1 +:1021000090F0020853485F4C4D5F54656D706C61F0 +:1021100074655F53746172745F54656D706572614C +:1021200074757265416C65727400000000000000F7 +:10213000000000000000000000000000000000009F +:102140000000000091F00208C6F0020853485F4CFE +:102150004D5F54656D706C6174655F53746F705F33 +:1021600054656D7065726174757265416C657274E9 +:10217000000000000000000000000000000000005F +:10218000000000000000000000000000C7F002088E +:10219000E4F0020853485F4C4D5F54656D706C610C +:1021A00074655F50726F636573735F54656D7065BE +:1021B000726174757265416C657274000000000094 +:1021C000000000000000000000000000000000000F +:1021D00000000000E5F0020840F1020853485F4C9F +:1021E0004D5F54656D706C6174655F4D6574686FAB +:1021F00064496E697469616C697A655F54656D7074 +:1022000065726174757265416C65727400000000DE +:1022100000000000000000000000000041F1020882 +:102220006CF1020853485F4C4D5F436865636B5423 +:10223000656D7065726174757265416C657274422A +:1022400075660000000000000000000000000000B3 +:10225000000000000000000000000000000000007E +:10226000000000006DF102087EF1020853485F4C47 +:102270004D5F55706461746554656D70657261740D +:10228000757265416C657274446174610000000090 +:10229000000000000000000000000000000000003E +:1022A0000000000000000000000000007FF10208B4 +:1022B0008AF1020853485F4C4D5F47657454656D61 +:1022C0007065726174757265416C65727452656394 +:1022D0006F676E697A65640000000000000000000E +:1022E00000000000000000000000000000000000EE +:1022F000000000008BF1020892F1020853485F4C85 +:102300004D5F53657454656D706572617475726567 +:10231000416C6572745265636F676E697A656400BB +:1023200000000000000000000000000000000000AD +:1023300000000000000000000000000093F102080F +:10234000B0F1020853485F4C4D5F54656D70657283 +:102350006174757265416C6572745F417070656E11 +:10236000644C6962726172794D534700000000004D +:10237000000000000000000000000000000000005D +:1023800000000000B1F10208FCF1020853485F4C64 +:102390004D5F54656D706C6174655F5374617274E8 +:1023A0005F4779726F54656D70657261747572659F +:1023B000000000000000000000000000000000001D +:1023C000000000000000000000000000FDF1020815 +:1023D0002AF2020853485F4C4D5F54656D706C6182 +:1023E00074655F53746F705F4779726F54656D7079 +:1023F00065726174757265000000000000000000E5 +:1024000000000000000000000000000000000000CC +:10241000000000002BF2020852F2020853485F4C01 +:102420004D5F54656D706C6174655F50726F63656C +:1024300073735F4779726F54656D706572617475FF +:1024400072650000000000000000000000000000B5 +:1024500000000000000000000000000053F202082D +:1024600064F2020853485F4C4D5F54656D706C61B7 +:1024700074655F4D6574686F64496E697469616CF9 +:10248000697A655F4779726F54656D7065726174C2 +:1024900075726500000000000000000000000000F0 +:1024A0000000000065F2020898F2020853485F4CF1 +:1024B0004D5F436865636B4779726F54656D7065F6 +:1024C000726174757265427566000000000000005C +:1024D00000000000000000000000000000000000FC +:1024E00000000000000000000000000099F2020857 +:1024F000AAF2020853485F4C4D5F557064617465E1 +:102500004779726F54656D70657261747572654458 +:102510006174610000000000000000000000000085 +:1025200000000000000000000000000000000000AB +:1025300000000000ABF20208B6F2020853485F4CFC +:102540004D5F5365744779726F54656D7065726144 +:1025500074757265000000000000000000000000BB +:10256000000000000000000000000000000000006B +:10257000000000000000000000000000B7F20208A8 +:10258000BCF2020853485F4C4D5F4765744779724F +:102590006F54656D70657261747572655265636FB5 +:1025A000676E697A656400000000000000000000AA +:1025B000000000000000000000000000000000001B +:1025C00000000000BDF20208C4F2020853485F4C4C +:1025D0004D5F5365744779726F54656D70657261B4 +:1025E000747572655265636F676E697A6564000021 +:1025F00000000000000000000000000000000000DB +:10260000000000000000000000000000C5F2020809 +:10261000CCF2020853485F4C4D5F4779726F5465A6 +:102620006D70657261747572655F417070656E641E +:102630004C6962726172794D5347000000000000DE +:10264000000000000000000000000000000000008A +:1026500000000000CDF2020864F30208534D53411C +:10266000525F496E69740000000000000000000025 +:10267000000000000000000000000000000000005A +:10268000000000000000000000000000000000004A +:1026900000000000000000000000000065F30208D8 +:1026A00070F30208534D5341525F6465746563745F +:1026B000696F6E00000000000000000000000000D4 +:1026C000000000000000000000000000000000000A +:1026D00000000000000000000000000000000000FA +:1026E0000000000071F30208BCF4020853485F4C7C +:1026F0004D5F54656D706C6174655F537461727485 +:102700005F5350416C6572740000000000000000CF +:1027100000000000000000000000000000000000B9 +:10272000000000000000000000000000BDF40208EE +:10273000F4F4020853485F4C4D5F54656D706C6152 +:1027400074655F53746F705F5350416C65727400B1 +:102750000000000000000000000000000000000079 +:102760000000000000000000000000000000000069 +:1027700000000000F5F402080CF5020853485F4C15 +:102780004D5F54656D706C6174655F50726F636509 +:1027900073735F5350416C65727400000000000059 +:1027A0000000000000000000000000000000000029 +:1027B0000000000000000000000000000DF502080D +:1027C0003CF5020853485F4C4D5F54656D706C6179 +:1027D00074655F4D6574686F64496E697469616C96 +:1027E000697A655F5350416C6572740000000000A7 +:1027F00000000000000000000000000000000000D9 +:10280000000000003DF5020874F5020853485F4CD3 +:102810004D5F436865636B5350416C6572744275DC +:102820006600000000000000000000000000000042 +:102830000000000000000000000000000000000098 +:1028400000000000000000000000000075F5020814 +:1028500086F5020853485F4C4D5F5570646174659E +:102860005350416C65727444617461000000000053 +:102870000000000000000000000000000000000058 +:102880000000000000000000000000000000000048 +:102890000000000087F5020898F5020853485F4CD5 +:1028A0004D5F4765745350416C6572745265636F38 +:1028B000676E697A65640000000000000000000097 +:1028C0000000000000000000000000000000000008 +:1028D00000000000000000000000000099F5020860 +:1028E000A0F5020853485F4C4D5F53657453504147 +:1028F0006C6572745265636F676E697A6564000017 +:1029000000000000000000000000000000000000C7 +:1029100000000000000000000000000000000000B7 +:1029200000000000A1F50208A6F5020853485F4C1C +:102930004D5F5365745350416C6572745479706582 +:102940000000000000000000000000000000000087 +:102950000000000000000000000000000000000077 +:10296000000000000000000000000000A7F50208C1 +:10297000ACF5020853485F4C4D5F5350416C657293 +:10298000745F417070656E644C6962726172794DFA +:10299000534700000000000000000000000000009D +:1029A0000000000000000000000000000000000027 +:1029B00000000000ADF50208F8F502084F535F4330 +:1029C00072656174655461736B5F44500000000070 +:1029D00000000000000000000000000000000000F7 +:1029E00000000000000000000000000000000000E7 +:1029F000000000000000000000000000F9F50208DF +:102A000034F70208466C6174436865636B5F496E16 +:102A100069740000000000000000000000000000D9 +:102A200000000000000000000000000000000000A6 +:102A30000000000000000000000000000000000096 +:102A40000000000035F7020840F70208466C617488 +:102A5000436865636B5F646574656374696F6E007A +:102A60000000000000000000000000000000000066 +:102A70000000000000000000000000000000000056 +:102A800000000000000000000000000041F7020804 +:102A90006CF8020853485F4C4D5F54656D706C6173 +:102AA00074655F53746172745F507574446F776EB0 +:102AB0000000000000000000000000000000000016 +:102AC0000000000000000000000000000000000006 +:102AD000000000006DF802088EF8020853485F4CB1 +:102AE0004D5F54656D706C6174655F53746F705F9A +:102AF000507574446F776E00000000000000000005 +:102B000000000000000000000000000000000000C5 +:102B10000000000000000000000000008FF8020824 +:102B2000A6F8020853485F4C4D5F54656D706C61A8 +:102B300074655F50726F636573735F507574446F33 +:102B4000776E0000000000000000000000000000A0 +:102B50000000000000000000000000000000000075 +:102B600000000000A7F80208EAF8020853485F4C8A +:102B70004D5F54656D706C6174655F4D6574686F11 +:102B800064496E697469616C697A655F50757444F3 +:102B90006F776E00000000000000000000000000E1 +:102BA000000000000000000000000000EBF8020838 +:102BB0001CF9020853485F4C4D5F436865636B50D6 +:102BC0007574446F776E4275660000000000000067 +:102BD00000000000000000000000000000000000F5 +:102BE00000000000000000000000000000000000E5 +:102BF000000000001DF902082EF9020853485F4C3E +:102C00004D5F557064617465507574446F776E44A0 +:102C1000617461000000000000000000000000007E +:102C200000000000000000000000000000000000A4 +:102C30000000000000000000000000002FF9020862 +:102C400040F9020853485F4C4D5F476574507574F6 +:102C5000446F776E5265636F676E697A65640000D2 +:102C60000000000000000000000000000000000064 +:102C70000000000000000000000000000000000054 +:102C80000000000041F9020848F9020853485F4C6F +:102C90004D5F536574507574446F776E5265636F02 +:102CA000676E697A656400000000000000000000A3 +:102CB0000000000000000000000000000000000014 +:102CC00000000000000000000000000049F90208B8 +:102CD00050F9020853485F4C4D5F507574446F774C +:102CE0006E5F417070656E644C6962726172794D9D +:102CF000534700000000000000000000000000003A +:102D000000000000000000000000000000000000C3 +:102D10000000000051F902089CF9020853485F4C7A +:102D20004D5F54656D706C6174655F53746172744E +:102D30005F4175746F526F746174696F6E0000004B +:102D40000000000000000000000000000000000083 +:102D50000000000000000000000000009DF90208D3 +:102D6000C2F9020853485F4C4D5F54656D706C6149 +:102D700074655F53746F705F4175746F526F7461E7 +:102D800074696F6E00000000000000000000000089 +:102D90000000000000000000000000000000000033 +:102DA00000000000C3F90208DAF9020853485F4C3A +:102DB0004D5F54656D706C6174655F50726F6365D3 +:102DC00073735F4175746F526F746174696F6E00D5 +:102DD00000000000000000000000000000000000F3 +:102DE000000000000000000000000000DBF9020805 +:102DF00004FA020853485F4C4D5F54656D706C6176 +:102E000074655F4D6574686F64496E697469616C5F +:102E1000697A655F4175746F526F746174696F6E22 +:102E200000000000000000000000000000000000A2 +:102E30000000000005FA02083CFA020853485F4C03 +:102E40004D5F436865636B4175746F526F74617455 +:102E5000696F6E427566000000000000000000000F +:102E60000000000000000000000000000000000062 +:102E70000000000000000000000000003DFA020811 +:102E800054FA020853485F4C4D5F55706461746595 +:102E90004175746F526F746174696F6E44617461CF +:102EA0000000000000000000000000000000000022 +:102EB0000000000000000000000000000000000012 +:102EC0000000000055FA020866FA020853485F4CF9 +:102ED0004D5F4765744175746F526F746174696FAB +:102EE0006E5265636F676E697A656400000000006A +:102EF00000000000000000000000000000000000D2 +:102F000000000000000000000000000067FA020856 +:102F10006EFA020853485F4C4D5F536574417574F7 +:102F20006F526F746174696F6E5265636F676E691B +:102F30007A6564000000000000000000000000004E +:102F40000000000000000000000000000000000081 +:102F5000000000006FFA020874FA020853485F4C40 +:102F60004D5F4175746F526F746174696F6E5F412C +:102F70007070656E644C6962726172794D5347007E +:102F80000000000000000000000000000000000041 +:102F900000000000000000000000000075FA0208B8 +:102FA000C0FA020853485F4C4D5F54656D706C6108 +:102FB00074655F53746172745F466C6174436865D5 +:102FC000636B000000000000000000000000000033 +:102FD00000000000000000000000000000000000F1 +:102FE00000000000C1FA0208E2FA020853485F4CF0 +:102FF0004D5F54656D706C6174655F53746F705F85 +:10300000466C6174436865636B000000000000005B +:1030100000000000000000000000000000000000B0 +:10302000000000000000000000000000E3FA0208B9 +:10303000FAFA020853485F4C4D5F54656D706C613D +:1030400074655F50726F636573735F466C61744340 +:103050006865636B000000000000000000000000D5 +:103060000000000000000000000000000000000060 +:1030700000000000FBFA02081CFB020853485F4CEA +:103080004D5F54656D706C6174655F4D6574686FFC +:1030900064496E697469616C697A655F466C6174D4 +:1030A000436865636B000000000000000000000042 +:1030B0000000000000000000000000001DFB0208EE +:1030C00054FB020853485F4C4D5F436865636B4691 +:1030D0006C6174436865636B4275660000000000B4 +:1030E00000000000000000000000000000000000E0 +:1030F00000000000000000000000000000000000D0 +:103100000000000055FB020866FB020853485F4CB4 +:103110004D5F557064617465466C617443686563A6 +:103120006B446174610000000000000000000000BA +:10313000000000000000000000000000000000008F +:1031400000000000000000000000000067FB020813 +:1031500078FB020853485F4C4D5F476574466C61CD +:1031600074436865636B5265636F676E697A656403 +:10317000000000000000000000000000000000004F +:10318000000000000000000000000000000000003F +:103190000000000079FB020880FB020853485F4CE6 +:1031A0004D5F536574466C6174436865636B52652B +:1031B000636F676E697A65640000000000000000BC +:1031C00000000000000000000000000000000000FF +:1031D00000000000000000000000000081FB020869 +:1031E00086FB020853485F4C4D5F536574466C6123 +:1031F00074436865636B54797065000000000000DB +:1032000000000000000000000000000000000000BE +:1032100000000000000000000000000000000000AE +:103220000000000087FB02088CFB020853485F4C3B +:103230004D5F466C6174436865636B5F4170706598 +:103240006E644C6962726172794D534700000000F0 +:10325000000000000000000000000000000000006E +:103260000000000000000000000000008DFB0208CC +:10327000D8FB020853485F4C4D5F54656D706C611C +:1032800074655F53746172745F52504D6F74696FEF +:103290006E000000000000000000000000000000C0 +:1032A000000000000000000000000000000000001E +:1032B00000000000D9FB0208FAFB020853485F4CEB +:1032C0004D5F54656D706C6174655F53746F705FB2 +:1032D00052504D6F74696F6E0000000000000000D6 +:1032E00000000000000000000000000000000000DE +:1032F000000000000000000000000000FBFB0208CE +:1033000012FC020853485F4C4D5F54656D706C6150 +:1033100074655F50726F636573735F52504D6F7465 +:10332000696F6E0000000000000000000000000057 +:10333000000000000000000000000000000000008D +:103340000000000013FC020840FC020853485F4CD8 +:103350004D5F54656D706C6174655F4D6574686F29 +:1033600064496E697469616C697A655F52504D6F2A +:1033700074696F6E00000000000000000000000093 +:1033800000000000000000000000000041FC0208F6 +:103390006CFC020853485F4C4D5F436865636B5299 +:1033A000504D6F74696F6E4275660000000000003A +:1033B000000000000000000000000000000000000D +:1033C00000000000000000000000000000000000FD +:1033D000000000006DFC02087EFC020853485F4CB0 +:1033E0004D5F55706461746552504D6F74696F6EB6 +:1033F0004461746100000000000000000000000053 +:1034000000000000000000000000000000000000BC +:103410000000000000000000000000007FFC020827 +:1034200090FC020853485F4C4D5F47657452504D05 +:103430006F74696F6E5265636F676E697A65640059 +:10344000000000000000000000000000000000007C +:10345000000000000000000000000000000000006C +:103460000000000091FC020898FC020853485F4CE1 +:103470004D5F53657452504D6F74696F6E52656342 +:103480006F676E697A65640000000000000000004C +:10349000000000000000000000000000000000002C +:1034A00000000000000000000000000099FC02087D +:1034B000A0FC020853485F4C4D5F52504D6F746939 +:1034C0006F6E5F417070656E644C69627261727993 +:1034D0004D53470000000000000000000000000005 +:1034E00000000000000000000000000000000000DC +:1034F00000000000A1FC0208F0FC020853485F4CE9 +:103500004D5F54656D706C6174655F537461727466 +:103510005F534D53415200000000000000000000C6 +:10352000000000000000000000000000000000009B +:10353000000000000000000000000000F1FC020894 +:1035400012FD020853485F4C4D5F54656D706C610D +:1035500074655F53746F705F534D534152000000A8 +:10356000000000000000000000000000000000005B +:10357000000000000000000000000000000000004B +:103580000000000013FD02082AFD020853485F4CAA +:103590004D5F54656D706C6174655F50726F6365EB +:1035A00073735F534D534152000000000000000050 +:1035B000000000000000000000000000000000000B +:1035C0000000000000000000000000002BFD0208C9 +:1035D0004CFD020853485F4C4D5F54656D706C6143 +:1035E00074655F4D6574686F64496E697469616C78 +:1035F000697A655F534D534152000000000000009E +:1036000000000000000000000000000000000000BA +:10361000000000004DFD020884FD020853485F4C85 +:103620004D5F436865636B534D534152427566006D +:10363000000000000000000000000000000000008A +:10364000000000000000000000000000000000007A +:1036500000000000000000000000000085FD0208DE +:1036600096FD020853485F4C4D5F55706461746568 +:10367000534D53415244617461000000000000004A +:10368000000000000000000000000000000000003A +:10369000000000000000000000000000000000002A +:1036A0000000000097FD0208A8FD020853485F4C87 +:1036B0004D5F476574534D5341525265636F676E5A +:1036C000697A65640000000000000000000000004E +:1036D00000000000000000000000000000000000EA +:1036E000000000000000000000000000A9FD02082A +:1036F000B0FD020853485F4C4D5F536574534D5302 +:1037000041525265636F676E697A6564000000001C +:1037100000000000000000000000000000000000A9 +:103720000000000000000000000000000000000099 +:1037300000000000B1FD0208B6FD020853485F4CCE +:103740004D5F536574534D53415254797065000079 +:103750000000000000000000000000000000000069 +:103760000000000000000000000000000000000059 +:10377000000000000000000000000000B7FD02088B +:10378000BCFD020853485F4C4D5F534D5341525F9F +:10379000417070656E644C6962726172794D534715 +:1037A0000000000000000000000000000000000019 +:1037B0000000000000000000000000000000000009 +:1037C00000000000BDFD020808FE0208496E5374A7 +:1037D0007265616D5F526561640000000000000069 +:1037E00000000000000000000000000000000000D9 +:1037F00000000000000000000000000000000000C9 +:1038000000000000000000000000000009FE0208A7 +:103810002AFE02085F5F6961725F7061636B6269B3 +:1038200074735F696E69743300000000000000006B +:103830000000000000000000000000000000000088 +:103840000000000000000000000000000000000078 +:10385000000000002BFE0208DCFE02086D61696EAC +:103860000000000000000000000000000000000058 +:103870000000000000000000000000000000000048 +:103880000000000000000000000000000000000038 +:10389000000000000000000000000000DDFE020843 +:1038A0004400030852657365745F48616E646C651B +:1038B0007200000000000000000000000000000096 +:1038C00000000000000000000000000000000000F8 +:1038D00000000000000000000000000000000000E8 +:1038E0000000000045000308B40003085F5F696141 +:1038F000725F646174615F696E6974330000000017 +:1039000000000000000000000000000000000000B7 +:1039100000000000000000000000000000000000A7 +:10392000000000000000000000000000B5000308D7 +:10393000CC0103085F5F6961725F696E69745F76CD +:1039400066700000000000000000000000000000A1 +:103950000000000000000000000000000000000067 +:103960000000000000000000000000000000000057 +:1039700000000000CD010308E80103085F5F636DEC +:1039800061696E00000000000000000000000000FF +:103990000000000000000000000000000000000027 +:1039A0000000000000000000000000000000000017 +:1039B000000000000000000000000000E901030812 +:1039C000F40103085F63616C6C5F6D61696E0000F8 +:1039D00000000000000000000000000000000000E7 +:1039E00000000000000000000000000000000000D7 +:1039F00000000000000000000000000000000000C7 +:103A000000000000F5010308FE0103085F6D616915 +:103A10006E00000000000000000000000000000038 +:103A20000000000000000000000000000000000096 +:103A30000000000000000000000000000000000086 +:103A4000000000000000000000000000FF0103086B +:103A5000020203086578697400000000000000009D +:103A60000000000000000000000000000000000056 +:103A70000000000000000000000000000000000046 +:103A80000000000000000000000000000000000036 +:103A90000000000003020308080203085F6578695C +:103AA00074000000000000000000000000000000A2 +:103AB0000000000000000000000000000000000006 +:103AC00000000000000000000000000000000000F6 +:103AD00000000000000000000000000009020308D0 +:103AE000880203085F5F6961725F70726F6772615D +:103AF0006D5F7374617274000000000000000000CC +:103B000000000000000000000000000000000000B5 +:103B100000000000000000000000000000000000A5 +:103B200000000000890203085C030308575744475C +:103B30005F49525148616E646C657200000000007C +:103B40000000000000000000000000000000000075 +:103B50000000000000000000000000000000000065 +:103B60000000000000000000000000005D030308EA +:103B7000600303085056445F49525148616E646CBB +:103B8000657200000000000000000000000000005E +:103B90000000000000000000000000000000000025 +:103BA0000000000000000000000000000000000015 +:103BB00000000000610303086403030854414D50F2 +:103BC0005F5354414D505F49525148616E646C657A +:103BD0007200000000000000000000000000000073 +:103BE00000000000000000000000000000000000D5 +:103BF0000000000000000000000000006503030852 +:103C00006C030308464C4153485F49525148616E6A +:103C1000646C6572000000000000000000000000FD +:103C20000000000000000000000000000000000094 +:103C30000000000000000000000000000000000084 +:103C4000000000006D030308800303084558544931 +:103C5000335F49525148616E646C65720000000028 +:103C60000000000000000000000000000000000054 +:103C70000000000000000000000000000000000044 +:103C800000000000000000000000000081030308A5 +:103C90008403030845585449345F49525148616EC2 +:103CA000646C65720000000000000000000000006D +:103CB0000000000000000000000000000000000004 +:103CC00000000000000000000000000000000000F4 +:103CD000000000008503030888030308444D4131B8 +:103CE0005F53747265616D305F49525148616E6413 +:103CF0006C65720000000000000000000000000081 +:103D000000000000000000000000000000000000B3 +:103D1000000000000000000000000000890303080C +:103D20008C030308444D41315F53747265616D31FA +:103D30005F49525148616E646C657200000000007A +:103D40000000000000000000000000000000000073 +:103D50000000000000000000000000000000000063 +:103D6000000000008D03030890030308444D413117 +:103D70005F53747265616D325F49525148616E6480 +:103D80006C657200000000000000000000000000F0 +:103D90000000000000000000000000000000000023 +:103DA0000000000000000000000000009103030874 +:103DB00094030308444D41315F53747265616D3360 +:103DC0005F49525148616E646C65720000000000EA +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000000000D3 +:103DF000000000009503030898030308444D413177 +:103E00005F53747265616D345F49525148616E64ED +:103E10006C6572000000000000000000000000005F +:103E20000000000000000000000000000000000092 +:103E300000000000000000000000000099030308DB +:103E40009C030308444D41315F53747265616D35C5 +:103E50005F49525148616E646C6572000000000059 +:103E60000000000000000000000000000000000052 +:103E70000000000000000000000000000000000042 +:103E8000000000009D030308A0030308444D4131D6 +:103E90005F53747265616D365F49525148616E645B +:103EA0006C657200000000000000000000000000CF +:103EB0000000000000000000000000000000000002 +:103EC000000000000000000000000000A103030843 +:103ED000A40303084144435F49525148616E646C36 +:103EE00065720000000000000000000000000000FB +:103EF00000000000000000000000000000000000C2 +:103F000000000000000000000000000000000000B1 +:103F100000000000A5030308A803030843414E3135 +:103F20005F54585F49525148616E646C657200007D +:103F30000000000000000000000000000000000081 +:103F40000000000000000000000000000000000071 +:103F5000000000000000000000000000A9030308AA +:103F6000AC03030843414E315F5258305F49525110 +:103F700048616E646C657200000000000000000083 +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA00000000000AD030308B003030843414E3195 +:103FB0005F5258315F49525148616E646C657200BE +:103FC00000000000000000000000000000000000F1 +:103FD00000000000000000000000000000000000E1 +:103FE000000000000000000000000000B103030812 +:103FF000B403030843414E315F5343455F49525177 +:1040000048616E646C6572000000000000000000F2 +:1040100000000000000000000000000000000000A0 +:104020000000000000000000000000000000000090 +:1040300000000000B5030308B803030845585449BD +:10404000395F355F49525148616E646C657200009A +:104050000000000000000000000000000000000060 +:104060000000000000000000000000000000000050 +:10407000000000000000000000000000B903030879 +:10408000BC03030854494D315F42524B5F54494DC4 +:10409000395F49525148616E646C657200000000DE +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C00000000000BD030308C003030854494D313C +:1040D0005F55505F54494D31305F49525148616ED0 +:1040E000646C657200000000000000000000000029 +:1040F00000000000000000000000000000000000C0 +:10410000000000000000000000000000C1030308E0 +:10411000C403030854494D315F5452475F434F4D28 +:104120005F54494D31315F49525148616E646C654D +:10413000720000000000000000000000000000000D +:10414000000000000000000000000000000000006F +:1041500000000000C5030308C803030854494D319B +:104160005F43435F49525148616E646C6572000061 +:10417000000000000000000000000000000000003F +:10418000000000000000000000000000000000002F +:10419000000000000000000000000000C903030848 +:1041A000CC03030854494D325F49525148616E6453 +:1041B0006C657200000000000000000000000000BC +:1041C00000000000000000000000000000000000EF +:1041D00000000000000000000000000000000000DF +:1041E00000000000CD030308D003030854494D33F9 +:1041F0005F49525148616E646C65720000000000B6 +:1042000000000000000000000000000000000000AE +:10421000000000000000000000000000000000009E +:10422000000000000000000000000000D1030308AF +:10423000D403030854494D345F49525148616E64B8 +:104240006C6572000000000000000000000000002B +:10425000000000000000000000000000000000005E +:10426000000000000000000000000000000000004E +:1042700000000000D5030308D80303084932433186 +:104280005F45565F49525148616E646C657200002B +:10429000000000000000000000000000000000001E +:1042A000000000000000000000000000000000000E +:1042B000000000000000000000000000D903030817 +:1042C000DC030308493243315F45525F495251488C +:1042D000616E646C65720000000000000000000068 +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000DD030308E003030849324332E4 +:104310005F45565F49525148616E646C657200009A +:10432000000000000000000000000000000000008D +:10433000000000000000000000000000000000007D +:10434000000000000000000000000000E10303087E +:10435000E4030308493243325F45525F49525148F2 +:10436000616E646C657200000000000000000000D7 +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:1043900000000000E5030308EC0303085350493212 +:1043A0005F49525148616E646C6572000000000004 +:1043B00000000000000000000000000000000000FD +:1043C00000000000000000000000000000000000ED +:1043D000000000000000000000000000ED030308E2 +:1043E000F00303085553415254315F49525148611B +:1043F0006E646C65720000000000000000000000A8 +:1044000000000000000000000000000000000000AC +:10441000000000000000000000000000000000009C +:1044200000000000F1030308F40303085553415250 +:1044300054325F49525148616E646C6572000000ED +:10444000000000000000000000000000000000006C +:10445000000000000000000000000000000000005C +:10446000000000000000000000000000F503030849 +:10447000F80303085553415254335F495251486180 +:104480006E646C6572000000000000000000000017 +:10449000000000000000000000000000000000001C +:1044A000000000000000000000000000000000000C +:1044B00000000000F9030308040403084F54475F99 +:1044C00046535F574B55505F49525148616E646C7B +:1044D0006572000000000000000000000000000005 +:1044E00000000000000000000000000000000000CC +:1044F00000000000000000000000000005040308A8 +:104500000804030854494D385F42524B5F54494DEB +:1045100031325F49525148616E646C65720000002F +:10452000000000000000000000000000000000008B +:10453000000000000000000000000000000000007B +:1045400000000000090403080C04030854494D3816 +:104550005F55505F54494D31335F49525148616E48 +:10456000646C6572000000000000000000000000A4 +:10457000000000000000000000000000000000003B +:104580000000000000000000000000000D0403080F +:104590001004030854494D385F5452475F434F4D50 +:1045A0005F54494D31345F49525148616E646C65C6 +:1045B0007200000000000000000000000000000089 +:1045C00000000000000000000000000000000000EB +:1045D00000000000110403081404030854494D3876 +:1045E0005F43435F49525148616E646C65720000DD +:1045F00000000000000000000000000000000000BB +:1046000000000000000000000000000000000000AA +:104610000000000000000000000000001504030876 +:1046200018040308444D41315F53747265616D375E +:104630005F49525148616E646C6572000000000071 +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:1046600000000000190403081C04030846534D43CE +:104670005F49525148616E646C6572000000000031 +:10468000000000000000000000000000000000002A +:10469000000000000000000000000000000000001A +:1046A0000000000000000000000000001D040308DE +:1046B000200403085344494F5F49525148616E64D6 +:1046C0006C657200000000000000000000000000A7 +:1046D00000000000000000000000000000000000DA +:1046E00000000000000000000000000000000000CA +:1046F00000000000210403082404030854494D3538 +:104700005F49525148616E646C65720000000000A0 +:104710000000000000000000000000000000000099 +:104720000000000000000000000000000000000089 +:104730000000000000000000000000002504030845 +:1047400028040308535049335F49525148616E644D +:104750006C65720000000000000000000000000016 +:104760000000000000000000000000000000000049 +:104770000000000000000000000000000000000039 +:1047800000000000290403082C040308554152547A +:10479000345F49525148616E646C657200000000DC +:1047A0000000000000000000000000000000000009 +:1047B00000000000000000000000000000000000F9 +:1047C0000000000000000000000000002D040308AD +:1047D0003004030855415254355F49525148616EC7 +:1047E000646C657200000000000000000000000022 +:1047F00000000000000000000000000000000000B9 +:1048000000000000000000000000000000000000A8 +:1048100000000000310403083404030854494D36F5 +:104820005F4441435F49525148616E646C65720058 +:104830000000000000000000000000000000000078 +:104840000000000000000000000000000000000068 +:104850000000000000000000000000003504030814 +:104860003804030854494D375F49525148616E641A +:104870006C657200000000000000000000000000F5 +:104880000000000000000000000000000000000028 +:104890000000000000000000000000000000000018 +:1048A00000000000390403083C040308444D413271 +:1048B0005F53747265616D305F49525148616E6437 +:1048C0006C657200000000000000000000000000A5 +:1048D00000000000000000000000000000000000D8 +:1048E0000000000000000000000000003D0403087C +:1048F00040040308444D41325F53747265616D3169 +:104900005F49525148616E646C657200000000009E +:104910000000000000000000000000000000000097 +:104920000000000000000000000000000000000087 +:10493000000000004104030844040308444D4132D0 +:104940005F53747265616D325F49525148616E64A4 +:104950006C65720000000000000000000000000014 +:104960000000000000000000000000000000000047 +:1049700000000000000000000000000045040308E3 +:1049800048040308444D41325F53747265616D33CE +:104990005F49525148616E646C657200000000000E +:1049A0000000000000000000000000000000000007 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000490403084C040308444D413230 +:1049D0005F53747265616D345F49525148616E6412 +:1049E0006C65720000000000000000000000000084 +:1049F00000000000000000000000000000000000B7 +:104A00000000000000000000000000004D0403084A +:104A1000500403084554485F49525148616E646C24 +:104A200065720000000000000000000000000000AF +:104A30000000000000000000000000000000000076 +:104A40000000000000000000000000000000000066 +:104A50000000000051040308540403084554485F53 +:104A6000574B55505F49525148616E646C657200F6 +:104A70000000000000000000000000000000000036 +:104A80000000000000000000000000000000000026 +:104A900000000000000000000000000055040308B2 +:104AA0005804030843414E325F54585F49525148FD +:104AB000616E646C65720000000000000000000080 +:104AC00000000000000000000000000000000000E6 +:104AD00000000000000000000000000000000000D6 +:104AE00000000000590403085C04030843414E32EF +:104AF0005F5258305F49525148616E646C65720074 +:104B000000000000000000000000000000000000A5 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000005D04030819 +:104B30006004030843414E325F5258315F4952517D +:104B400048616E646C6572000000000000000000A7 +:104B50000000000000000000000000000000000055 +:104B60000000000000000000000000000000000045 +:104B700000000000610403086404030843414E324E +:104B80005F5343455F49525148616E646C657200E2 +:104B90000000000000000000000000000000000015 +:104BA0000000000000000000000000000000000005 +:104BB0000000000000000000000000006504030881 +:104BC000680403084F54475F46535F495251486198 +:104BD0006E646C65720000000000000000000000C0 +:104BE00000000000000000000000000000000000C5 +:104BF00000000000000000000000000000000000B5 +:104C000000000000690403086C040308444D4132AD +:104C10005F53747265616D355F49525148616E64CE +:104C20006C65720000000000000000000000000041 +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000006D040308E8 +:104C500070040308444D41325F53747265616D36D0 +:104C60005F49525148616E646C657200000000003B +:104C70000000000000000000000000000000000034 +:104C80000000000000000000000000000000000024 +:104C9000000000007104030874040308444D41320D +:104CA0005F53747265616D375F49525148616E643C +:104CB0006C657200000000000000000000000000B1 +:104CC00000000000000000000000000000000000E4 +:104CD0000000000000000000000000007504030850 +:104CE000780403085553415254365F495251486184 +:104CF0006E646C657200000000000000000000009F +:104D000000000000000000000000000000000000A3 +:104D10000000000000000000000000000000000093 +:104D200000000000790403087C040308493243337F +:104D30005F45565F49525148616E646C6572000070 +:104D40000000000000000000000000000000000063 +:104D50000000000000000000000000000000000053 +:104D60000000000000000000000000007D040308B7 +:104D700080040308493243335F45525F495251482A +:104D8000616E646C657200000000000000000000AD +:104D90000000000000000000000000000000000013 +:104DA0000000000000000000000000000000000003 +:104DB0000000000081040308840403084F54475F87 +:104DC00048535F4550315F4F55545F4952514861D8 +:104DD0006E646C65720000000000000000000000BE +:104DE00000000000000000000000000000000000C3 +:104DF000000000000000000000000000850403081F +:104E0000880403084F54475F48535F4550315F495A +:104E10004E5F49525148616E646C6572000000003B +:104E20000000000000000000000000000000000082 +:104E30000000000000000000000000000000000072 +:104E400000000000890403088C0403084F54475FE6 +:104E500048535F574B55505F49525148616E646CDF +:104E6000657200000000000000000000000000006B +:104E70000000000000000000000000000000000032 +:104E80000000000000000000000000008D04030886 +:104E9000900403084F54475F48535F49525148619B +:104EA0006E646C65720000000000000000000000ED +:104EB00000000000000000000000000000000000F2 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000910403089404030844434D4972 +:104EE0005F49525148616E646C65720000000000B9 +:104EF00000000000000000000000000000000000B2 +:104F000000000000000000000000000000000000A1 +:104F100000000000000000000000000095040308ED +:104F200098040308435259505F49525148616E64D6 +:104F30006C6572000000000000000000000000002E +:104F40000000000000000000000000000000000061 +:104F50000000000000000000000000000000000051 +:104F600000000000990403089C04030848415348CA +:104F70005F524E475F49525148616E646C657200E2 +:104F80000000000000000000000000000000000021 +:104F90000000000000000000000000000000000011 +:104FA0000000000000000000000000009D04030855 +:104FB000A00403084650555F49525148616E646C25 +:104FC000657200000000000000000000000000000A +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF00000000000A104030888020308DCD40100BB +:00000001FF diff --git a/firmware/ssp_stm_maxim_patek.fw.ihex b/firmware/ssp_stm_maxim_patek.fw.ihex new file mode 100644 index 000000000000..4efba2376608 --- /dev/null +++ b/firmware/ssp_stm_maxim_patek.fw.ihex @@ -0,0 +1,13204 @@ +:1000000000200020F1300308B9CC0208CDCC020852 +:10001000E1CC0208F5CC020809CD0208000000007E +:100020000000000000000000000000001DCD0208DC +:1000300031CD02080000000069AE000877C2000858 +:10004000793303087D33030881330308D7D20208CC +:100050008933030833D4020889CF020819D1020872 +:10006000A5D102089D330308A1330308A533030873 +:10007000A9330308AD330308B1330308B5330308CC +:10008000B9330308BD330308C1330308C53303087C +:10009000C9330308CD330308D1330308D53303082C +:1000A000D9330308DD330308E1330308E5330308DC +:1000B000E9330308ED330308F1330308F53303088C +:1000C000F9330308FD3303080134030849CD02085E +:1000D000093403080D3403081134030815340308E8 +:1000E00043D2020897D302082134030825340308B9 +:1000F000293403082D340308313403083534030848 +:10010000393403083D3403084134030845340308F7 +:10011000493403084D3403085134030855340308A7 +:10012000593403085D340308613403086534030857 +:10013000693403086D340308713403087534030807 +:10014000793403087D3403088134030885340308B7 +:10015000893403088D340308913403089534030867 +:10016000993403089D340308A1340308A534030817 +:10017000A9340308AD340308B1340308B5340308C7 +:10018000B9340308BD3403084843704700E000BF9A +:1001900010FB01F0704710FB01F000F5006000015A +:1001A0000014704730B5144681EA0002D50F83B0C1 +:1001B000002844BFC043401C002944BFC943491C18 +:1001C00000AB01AA00F017F800980199C4F12002D1 +:1001D000E0409140084300900198E04002D100982F +:1001E000002802D56FF0004000902DB20098002D3D +:1001F00018BF40423EBD2DE9F0474FEA104A0F0CB0 +:1002000004460D461646984639465046FFF7BCFF51 +:100210008146A1B23846FFF7B7FF09EB10474FEA16 +:100220000049A9B25046FFF7AFFF09EB004A07EBC0 +:100230001047CA4538BF7F1CA9B2A0B2FFF7A4FF80 +:100240005044504538BF7F1C3760C8F80000BDE8F7 +:10025000F08700285CBF182100F0D4BBDFF8200A2B +:10026000704710B504461046FFF791FF4100204645 +:10027000BDE8104002F0CEB870B5044616460D46F3 +:1002800000F017F84100204602F0C4F8B542C8BF9C +:100290003546002608E000F00BF800FA86F04FF42F +:1002A000805124F81010761C36B2AE42F3DB70BDDC +:1002B000294630466BE700220280B1F90420524201 +:1002C00042804A8882808A88C280002202818A5EB7 +:1002D00052424281B1F90220524282810988C18191 +:1002E000002101827047F8B500F0B2F900F096F9EC +:1002F00000F018F800F01BF800F00EF8206000265F +:10030000216855F8260001F039F804EB8601761CC7 +:100310004860032EF4DBF1BD014618224FF08070D7 +:1003200001F070BE0746A868182201463AE7B919DD +:10033000401800F180708CE7F8B50D460446296836 +:10034000FFF7EBFF0646002705EB87001822406801 +:100350003146FFF727FF44F827007F1C032FF3DB0C +:10036000F1BD2DE9F04F04460D4689B0296801F032 +:1003700004F808901822696800F077FE07901822A8 +:10038000A96800F06FFE06901822E968E068FFF7A0 +:1003900009FF05901822296800F067FE696800F0DF +:1003A000EBFF04901822A968E068FFF7FBFE0390BA +:1003B0001822E96800F056FE02901822296800F021 +:1003C00051FE69688046E06800F0D8FF019018226D +:1003D000A9682068FFF7E6FE00901822E96800F09F +:1003E00044FE29680746E06800F0C8FF8146696856 +:1003F000A06800F0C3FF8246A968606800F0BEFFF5 +:100400008346E96800F0B9FF0899079A891A069AA5 +:10041000891A059A891A21600499039A8919891AF7 +:10042000029A511861600199009A41445118C91B00 +:10043000A160A9EB0A0159444018E06009B0BDE889 +:10044000F08F2DE9F04780460868061348680713C7 +:1004500088680413C868051300F06FF800F07CF892 +:1004600000F067F80AEB0901A1EB000900F05EF863 +:10047000A9EB0000A8F8000021B200F0B5F900F0E7 +:1004800067F848444000A8F8020029B200F0ACF92F +:1004900000F05AF8A9EB00004000A8F8040021B2CF +:1004A00000F0A2F900F054F8A9EB00004000A8F811 +:1004B000060000F042F800F04FF800F03AF8A9EB1F +:1004C0000A0100EB010900F031F8A9EB0000A8F8DF +:1004D000080000F0D3FD00F033F848444000A8F8CD +:1004E0000A0029B200F080F900F02EF848444000DC +:1004F000A8F80C0000F0C2FD00F022F8A9EB000003 +:100500004000A8F80E0000F018F8064639B200F0D6 +:100510006BF9074621B200F0B2FDF11B0E1A00F094 +:1005200005F88019A8F81000BDE8F08729B228B2B4 +:1005300031E6824621B220B22DE631B230B22AE64F +:10054000814639B230B226E6814621B230B222E687 +:10055000814629B230B21EE6814639B238B21AE677 +:10056000F8B500F075F800F059F8FFF7DBFE01462A +:10057000E868BA19561AFFF7D7FE301A206000F063 +:100580005EF800F060F880194000606000F053F8F9 +:10059000A96800F059F8301A4000A06000F04FF848 +:1005A00000F051F8301A4000E06000F03CF80646D8 +:1005B0006868FFF7B9FEFFF7B5FE0146E868F21B71 +:1005C0008E18FFF7B1FE301A206100F030F869682C +:1005D00000F03AF880194000606100F02CF8A9683A +:1005E00000F032F880194000A06100F020F869683E +:1005F00000F02AF8301A4000E06100F014F80646D6 +:100600006868FFF791FEFFF78DFE0146E868F21B70 +:10061000551AFFF789FE40192062F1BD6968064648 +:1006200018220846BEE5182228680146BAE51822B5 +:10063000E968A868B6E51822E9686868B2E5182292 +:10064000A9686868AEE5E968064628681822A9E541 +:100650000D460446286818220146A3E5F0B50E466B +:1006600083B00446308831890818318A081800049C +:10067000811401F58060ADF8000000ADB6F900000E +:10068000BDF90070401000F58060401A68804FF09E +:10069000010CB6F90820521002F58062521AAA80A5 +:1006A000B6F910305B1003F58063591AE980002316 +:1006B00035F91CE07745BCBF634677460CF1010C69 +:1006C000BCF1040FF4DB2BB1022B31D018D3032B78 +:1006D00052D070E0BDF9000000F075F9ADF80000EF +:1006E00000F084F800F086F86880B188B08900F0E6 +:1006F00084F8A880F1887088411A09B2384637E03A +:1007000000B200F060F9688000F070F800F072F854 +:10071000ADF80000002805D5B5F902004042688018 +:1007200000F057F800F05CF8A880B188B0891CE0B0 +:1007300010B200F048F90146A9804FF4806000F043 +:100740007AF90746B089B18800F057F8ADF8000093 +:10075000002805D5B5F904004042A88000F039F81A +:1007600000F03EF86880F1897089091809B238B242 +:10077000FFF711FDE8801EE008B200F024F9E880E0 +:1007800000F034F807467088F18800F036F8ADF8CC +:100790000000002805D5B5F906004042E88000F0C9 +:1007A00018F8B089B18800F01DF86880F189708967 +:1007B00000F018F8A880042100A800F05CF80020E0 +:1007C00035F91010090344F82010401C0428F7DB09 +:1007D000F7BD7F42BDF900004042ADF80000704710 +:1007E0007088F188091809B238B2D4E401464FF490 +:1007F000806020E107467089F189411A09B23846C4 +:10080000C9E4F8B504460D46182201F0A3FB0646DC +:10081000022E02DA00F010F80CE0002708E054F88D +:1008200027001822314601F0EDFB44F827007F1C19 +:10083000AF42F4DB3046F2BDA900204601F004BE11 +:10084000F8B504460D460C2201F084FB0646022E44 +:1008500002DAFFF7F1FF0CE0002708E054F8270068 +:100860000C22314601F0CEFB44F827007F1CAF423A +:10087000F4DB3046F2BDF8B504460D4600F023F82F +:100880000646022E04DA6900204601F0C3FD0BE0A3 +:10089000002707E034F91700314600F0CCF824F8BF +:1008A00017007F1CAF42F5DB3046F2BD416849427C +:1008B0004160816849428160C1684942C1607047B6 +:1008C000182201F047BBF8B504460D460026002764 +:1008D00003E000F00BF886197F1CAF42F9DB3046CD +:1008E000FFF7B7FC001300F30F00F2BD34F9170057 +:1008F0000146FFF74BBC2DE9F04104460D469046FA +:100900000027002603E000F023F8C719761C4645AF +:10091000F9DB38130FF2E8110FF2A4620FF228038B +:10092000B0F5004F04DB00F0FDF847F6FF7008E07B +:1009300010F5004F04DA00F0F5F8DFF8800600E06B +:1009400000B2BDE8F0810000566563446F7400009A +:1009500035F9161034F91600FFF718BCF8B504463F +:100960000D46B4F90200B5F904101646FFF70EFC67 +:100970000746B5F90210B4F90400FFF707FC381A6E +:1009800000133080B5F90010B4F90400FFF7FEFB46 +:10099000B5F904100746B4F90000FFF7F7FB381A61 +:1009A00000137080B5F90210B4F90000FFF7EEFBF8 +:1009B000B5F900100746B4F90200FFF7E7FB381A53 +:1009C0000013B080F1BD10B5002848BF42F6415178 +:1009D00016D4002100220D2380B2840B44EA820247 +:1009E00049004C00641C92B28000A4B2A24202DB17 +:1009F000121B92B2491C1C46631EA4B2002CEBD100 +:100A000008B210BD10B5C1F1200149100022002329 +:100A1000C1F11F01840F44EA830352005400800097 +:100A2000641CA34224BF1B1B521C0C46611E002CDD +:100A3000F0D1104610BD10B5044699B90FF230033D +:100A40000FF27C520FF2440100F06CF8012C02DB33 +:100A500047F6FF7010BD002C02D5DFF8600510BD11 +:100A6000002010BD200390FBF1F000F0F8BA000068 +:100A700053617475726174696E6746697865645014 +:100A80006F696E74446976696465000044697669CB +:100A90006465206279207A65726F20282573203A78 +:100AA0003A202573290D0A0010B5044699B90FF2B2 +:100AB00030030FF20C520FF2480100F033F8012C12 +:100AC00002DB6FF0004010BD002C02D54FF000405B +:100AD00010BD002010BD200390FBF1F010BD000000 +:100AE0004669786564506F696E74457874656E64A4 +:100AF0006564526573756C74446976696465000059 +:100B0000464D5F4D4154485F4552525F48414E4407 +:100B10004C454420282573203A3A202573290D0A94 +:100B200000000000002001F0A3BCF0B5002848BF81 +:100B3000404200210FF22C020FF230030FF2A80402 +:100B400033F9116032F9115000B206402E4134F9E8 +:100B50001660370000D03BE0491C09B20429EFDBE6 +:100B60000020F0BD0C000800040000000070000F21 +:100B7000F0000F00F0B5002848BF404200210FF2FE +:100B800058020FF22C030FF2600453F8216032F97F +:100B9000115006402E4136B234F91660370000D0AD +:100BA00016E0491C09B20829EFDB0020F0BD000067 +:100BB000000000700000000F0000F00000000F00B7 +:100BC00000F00000000F0000F00000000F00000027 +:100BD000A81900B2F0BD00001C001800140010009D +:100BE0000C000800040000000000010002000200E8 +:100BF00003000300030003000400040004000400D9 +:100C000004000400040004002DE9F8430446012C0C +:100C100032DBFFF78AFFC0F10E052DB2012DAFBF09 +:100C200004FA05F0684200B244FA00F0C0F58044CE +:100C300026464FF000080027DFF8349436B27EB124 +:100C400039F917103046FFF7A1FAA8EB000821B2D6 +:100C50003046FFF79BFA8613781C07B20E2FEDDBA8 +:100C6000C5F1020040F6173100B2FFF78FFA00EB32 +:100C7000284000F30F0001E0DFF84003BDE8F283F5 +:100C8000334F500B7CB50546EC0F4DF2B820854232 +:100C900002DB6FF0004076BDDFF8D803854201DA51 +:100CA000002076BD14B9AE05B60D05E0E843451C3D +:100CB000A805800D401EC64331B230B2FFF766FA78 +:100CC00036B206FB00F10913401040F2AA2200EBF5 +:100CD00006304A4300EB223071430913AA225143E4 +:100CE00000EB213000F1807303F500600001C5F3D3 +:100CF0008521001449B364B10FF2500050F821105F +:100D00001E221846FFF74EFA00F50060000100149D +:100D100076BD35290FDB72B60FF23010DFF858437D +:100D20000FF2341300F009FC40F2044000F00FFC15 +:100D300000F008FCFEE70FF23C1353F8211002B05C +:100D4000BDE870400C22FFF72DBA76BD00000040D0 +:100D50003DDFD731F965D126EC403B1E36568B1767 +:100D600037185612B9C3470EBF1C1F0B5255A9089E +:100D700064DCBE0670E14005E26417041AB62F0376 +:100D8000D1467B0202C1EE01935081015C152C011A +:100D900089B4E9008202B600D7BF8D0000656E00FD +:100DA000B0F9550029F542008D253400A49C280097 +:100DB000E9A01F00E2A11800062F1300B6F00E00F4 +:100DC000B0A20B00CE0F0900AA0E0700087F050095 +:100DD000CC47040068550300A39802009E0502005A +:100DE0001F930100F439010081F400006CBE000083 +:100DF0004D9400007F730000F35900000D46000081 +:100E00008E3600007D2A000017210000C519000061 +:100E100012140000A10F00002C0C00007B09000040 +:100E200062070000C00500007A0400007D03000096 +:100E3000B70200001E020000A601000048010000E9 +:100E400000010000C70000009B00000074656D7089 +:100E5000203C2035330000004669786564506F6996 +:100E60006E745131324578706F6E656E7469616C65 +:100E700000000000001000008B140000611A000048 +:100E8000DF2100007E2B0000D8370000B5470000AE +:100E9000135C00003A760000CE970000EBC2000021 +:100EA00048FA00005E410100A59C0100D911020032 +:100EB00056A8020092690300B061040046A0050034 +:100EC000593907009C4609000FE90B00124B0F002F +:100ED0000DA31300DC361900356020004492290070 +:100EE000F1603500218A4400AD015800AE00710068 +:100EF00029199100544FBA00033AEF004D2C3301E9 +:100F0000026B8A015871FA010D498A02A1FB420362 +:100F1000A923300474A76005ACA8E7060BB8DD0868 +:100F20007560620B44229E0EB7FEC41256BC19189F +:100F3000F218F21EAA2CBC279F5405339614834145 +:100F4000577E1E5446D6026C2DE9F04104460D46EC +:100F500017464FF40060FFF7E8FD00268046A05FCB +:100F6000FFF7E3FDA95FA8EB000000B2421812B240 +:100F70003B469342BCBF781A00B2DA4202DA7842AA +:100F8000401A00B2B0B100FA81F2002A03D557002E +:100F900008BF521C524293420CDB411829800126A3 +:100FA000B4F90010002846BF404241FA00F001FAAF +:100FB00000F020803046BDE8F08100000080FFFF97 +:100FC000433A5C5F525645524D415F444154415C47 +:100FD0004749545C73656E736F722D6875625C610E +:100FE0006C67735C7372635C636F72655C4669788F +:100FF0006564506F696E744D6174682E6300000003 +:101000002DE9FE4FBDF93090BDF934A080468B46E6 +:10101000002600E0761C56451FDA002716E009FB83 +:10102000074038F910100AFB04603BF91000FFF785 +:10103000AEF84519641C4C45F1DB019805F50062DA +:101040000AFB0761121320F811207F1CBDF908006C +:101050008742DFDA00250024EDE7BDE8F78F00F3D3 +:101060000F0010BDA068FFF79DB86068FFF79AB841 +:1010700004860020D46FFFFFE820012029B220B2AF +:10108000FFF789B82DE9F04F9A460027554685B0FD +:10109000804689461446002D05D5680012BF684277 +:1010A000681C404200E028462646002E05D5710007 +:1010B00012BF7142711C494200E0314688421BDA7E +:1010C00021465046FFF7B7FC00282146504630D550 +:1010D000FFF7B1FC834621465046FFF7ACFC1BEB03 +:1010E000000F2146504603D1FFF7A5FC401C01E04C +:1010F000FFF7A1FC40421EE0012751462046FFF7C2 +:101100009AFC00285146204613D5FFF794FC8346ED +:1011100051462046FFF78FFC1BEB000F514620463F +:1011200003D1FFF788FC401C01E0FFF784FC444238 +:1011300002E0FFF780FC044624B20FF200100FF229 +:101140003C12B4F5805F09D1DFF81C15039100F162 +:101150003C0A02F13C0BDFF8140522E0002C02D41B +:10116000211210290FDB72B60FF25010DFF8004584 +:101170000FF2701300F0E1F940F2AC5000F0E7F923 +:1011800000F0E0F9FEE7C9B202EB810B0FF2681242 +:1011900052F82120039200EB810A0FF29C1050F8C4 +:1011A0002100029021462046FEF7F0FF00F5006086 +:1011B0000013ADF80400BDF90410BBF90000FEF700 +:1011C000E5FF00902146BBF90200FEF7DFFF009922 +:1011D00040180399081800F500604FEA203BBDF95C +:1011E0000410BAF90000FEF7D1FF00902146BAF9C9 +:1011F0000200FEF7CBFF009940180299081800F58D +:1012000000600013002F19BFA9F800B0A8F8000073 +:10121000A8F800B0A9F80000002E04D5B8F9000025 +:101220004042A8F80000002D04D5B9F90000404262 +:10123000A9F8000005B0BDE8F08F000041FF0410E0 +:10124000CEFD32107AFC871056FBF4106DFA68114F +:10125000C4F9D1115AF9201229F94B1228F94B126D +:101260004EF91F1292F9CA11EAF952114EFABB1047 +:10127000B9FA0E1025FB510F8FFB8A0E0BF80000F8 +:1012800051F8F7FFD7F8D5FF91F98EFF70FA1FFFDD +:1012900062FB88FE58FCCFFD45FDFFFC21FE24FCCF +:1012A000E4FE49FB8CFF77FA1700B7F988000DF9C7 +:1012B000E1007CF8250106F85701AAF774616E5425 +:1012C00068657461203E3D20302026262028746108 +:1012D0006E5468657461203E3E203829203C2031E0 +:1012E0003600000053696E65416E64436F73467249 +:1012F0006F6D5665630000000700000139050001AD +:101300002A280001699200012772010144ED0201BF +:10131000A6170501EAEE0701815B0B01BC350F0141 +:10132000B24C13011C6D1701EB661B010F111F015D +:101330006D4B22015CFF24019EFFFFFFD9E7FFFFF9 +:10134000F292FFFFCFEFFEFF0D09FEFFC203FDFF8C +:10135000B917FCFF4684FBFF4085FBFF874AFCFF73 +:101360004EF3FDFFFD8C0000D9140400387B08000B +:101370005FA70D00307B1300064620681822FEF799 +:1013800011BFF0B583B0054610F5004F08D1DFF866 +:10139000AC590124680006BF681C45426D4202E05A +:1013A0000028F6D400242DB246F289418D4203DB99 +:1013B00046F288402D1A08E043F245218D4204DBB5 +:1013C00046F28840451B84F001042DB241F62310FB +:1013D0008542A4BF43F24420451B2DB26F120D2F4E +:1013E0000FD372B60FF25C00DFF884420FF26C0389 +:1013F00000F0A3F840F24F6000F0A9F800F0A2F866 +:10140000FEE70FF2680000EB87062946B6F90200F6 +:10141000FEF7BCFE0FF2880151F827104718294645 +:101420002846FEF7B3FEB6F900108011484307EBDB +:10143000A01000F500600001001404B1404200B2A9 +:10144000FEBD0000696478203C2031332026262030 +:10145000696478203E3D20300000000046697865D0 +:1014600064506F696E7453696E65000081FF0610E9 +:1014700083FE45108BFDC1109DFC7311BDFB531203 +:10148000EDFA561332FA6F148EF98D1504F9A11680 +:1014900096F8981745F8621813F8EA1801F81F191A +:1014A000F8FEFFFFA1BDFFFF6CC4FEFF5DACFCFFBB +:1014B000142BF9FFA21CF4FFDC8BEDFFC8B8E5FF8D +:1014C000D81CDDFFB36CD4FF6997CCFFF5C2C6FF13 +:1014D0001046C4FF649FC6FF566ACFFF9A51E0FFD3 +:1014E00000F5C8502230B0F5004FA4BFDFF86C19EA +:1014F000081800B245E7F8B50446B0F5805F02DB96 +:1015000041F62210F2BDDFF85819884202DADFF8FE +:101510005409F2BD2546032628B2FFF732FF0746DD +:1015200028B2FFF7DDFF0146381B00B2FFF783FA50 +:101530002D1A761EF0D128B2F2BD0FF238120190AA +:10154000C821704721460FF2AC2001F04DBE00903B +:10155000204601F05BBE2DE9F04F0B4683B04FF003 +:10156000FF35002B54BF01242C46002858BF01250D +:10157000002650EA030108BF002071D0002B04D5DB +:10158000590006BF591C4B425B42002803D541005D +:1015900008BF401C4042834207DA01461822184621 +:1015A00000F030FD0746012604E01822194600F03D +:1015B00029FD07463815DFF8B8800FF2B8090FF299 +:1015C000CC0A10282CDB0F200FF2DC010C2212FBBE +:1015D00000100090182239463846FEF7E3FD0099C6 +:1015E0000968FFF7CBFE8346009841681822384609 +:1015F000FEF7D8FD0099DFF8DC2A896858440818FE +:1016000000F22B11914219D372B60FF25C100190C7 +:10161000534640F20C7000F0F1F800F0E5F8FEE7F8 +:101620000028D1D572B60FF2B4100190534640F2A3 +:10163000037000F0E3F800F0D7F8FEE716B1DFF82A +:101640002C18081A002C08D5002D59BFDFF81818DF +:10165000081ADFF8841A081802E0002D48BF40423B +:10166000BDE8FE8F000000005CFF2401307B13000A +:10167000E82001204153534552543A202573282530 +:101680006429202D205B25735D0000004669786584 +:1016900064506F696E7441726354616E325072654A +:1016A0006369736500000000BC05F8FFBA320001F1 +:1016B000BFFFFFFF9C6FE8FFB6230201C4EFFFFFEF +:1016C00002EAD9FFC0C10501A1B5FFFF1C09CDFF8A +:1016D00081910A012B42FFFFE335C2FFC4F50F01E0 +:1016E000F495FEFFA3A8B9FF65481501A7C1FDFF4A +:1016F0001E6BB3FFFDF01901E1E2FCFF6160AFFF7B +:1017000044751D01EE1EFCFFA14FADFF89811F0135 +:10171000EB9CFBFFA0EFACFFCDE91F01A180FBFF1D +:10172000ADF0ADFF83A51E01EFE6FBFF6404B0FF43 +:1017300026C81B01DEE3FCFFD6E2B2FFDF7817010B +:101740004B82FEFF6A4DB6FF9DEA1101A0C4000066 +:10175000FF0FBAFF7A550B0144A60300C200BEFF7B +:10176000C7F10301411D070028202828284E5450A6 +:1017700052454349534529282828666D5F666C6F9A +:1017800061745F742928332E31343135393236355E +:1017900066202F20322E30662929202A2028666DC7 +:1017A0005F666C6F61745F74292831554C203C3C36 +:1017B00020323429202929202B2033303029203E83 +:1017C0002074686574612920262620287468657451 +:1017D00061203E202D33303029000000696E6465A1 +:1017E00078203E3D2030000041460FF2080001F015 +:1017F000FBBC000025730D0A0000000000904A4663 +:10180000C821404601F002BD10B504461822214609 +:10181000FEF7C8FCD0F1807048BF0020FEF719FD2C +:1018200001462046BDE8104095E62DE9FF4F81B006 +:10183000BDF93C90BDF938A0002600E0761C4E456D +:1018400022DA019FDDF80C80002413E000F04CF850 +:10185000009940180BEB490B6D1C2DB25545F5DB7B +:1018600000F50060001328F8160007EB4A0708EBA4 +:101870004908641CBDF9100024B28442DEDADDF8A8 +:1018800008B000200025E8E7FFF7D4BC2DE9FF4FA2 +:1018900081B0BDF93C90BDF938A0002600E0761C6F +:1018A0004E451FDA019FDDF80C80002410E000F0A7 +:1018B0001BF8009940180BEB490B6D1C2DB25545D8 +:1018C000F5DB48F8260007EB4A0708EB8908641C9B +:1018D000BDF9100024B28442E1DADDF808B000203E +:1018E0000025EBE7FFF7A6BC009037F915103BF990 +:1018F0001600FEF74BBC2DE9FF4F81B0BDF93C80CF +:10190000BDF938B0002600E0761C464526DA039F74 +:10191000002418E0009039F914103AF91600FEF787 +:1019200035FC0099401809EB4B090AEB480A6D1C7D +:101930002DB25D45EEDB00F50060001327F81600C0 +:1019400007EB4807641CBDF910008442DCDADDF8BF +:101950000490DDF808A000200025E9E7FFF76ABC45 +:101960002DE9FF4F81B0BDF93C90BDF938A00026AC +:1019700000E0761C4E4525DA019FDDF80C8000243E +:1019800016E00090182257F825105BF82600FEF7A5 +:1019900009FC009940180BEB890B6D1C2DB25545C5 +:1019A000EFDB48F8260007EB8A0708EB8908641C80 +:1019B000BDF9100024B28442DBDADDF808B0002063 +:1019C0000025EBE7FFF736BC2DE9F34F95B0002576 +:1019D000144650E0159910FB04F001EB400939F969 +:1019E0001530002B41D038F9152000A90DF1020067 +:1019F000FFF748FBAA4638F91A10BDF90200FEF7B6 +:101A0000C5FB39F91A1000F046F8584400F500609B +:101A10000BA9001321F81A0039F91A10BDF90200B8 +:101A2000FEF7B4FB38F91A1000F035F8ABEB000004 +:101A300000F5006001A9001321F81A000AF1010A5B +:101A4000A245D8DB0BA800EB45013A4608EB450060 +:101A500001F0FEFB01A800EB45013A4609EB450009 +:101A600001F0F6FB002029F81500761E36B230464C +:101A70008542AFDB6D1CA5420ADA159804FB05F11F +:101A800000EB4108BDF85800461E601B4700EDE71B +:101A900017B0BDE8F08F8346BDF90000FEF776BBB6 +:101AA0002DE9F84FBDF92890884692469B4604469A +:101AB000002511E034F9171038F91700FEF766FB1E +:101AC00086197F1C4F45F5DB06F5006000132AF8E8 +:101AD000150004EB49046D1C2DB25D4502DA0026A9 +:101AE0000027EFE7BDE8F18F2DE9F44FBDF928801D +:101AF000BDF92C908A469B46044600270FE054F817 +:101B000026105AF82600FFF739FC4519761C464581 +:101B1000F5DB009804EB890440F827507F1C3FB2A6 +:101B20005F4502DA00250026F1E7BDE8F18F2DE9D7 +:101B3000FD4FBDF930908846002502E008EB4908CA +:101B40006D1CBDF93400854223DA009F019C0026FC +:101B500016E037F91B1038F91B00FEF717FB82441B +:101B60000BF1010BCB45F4DB0AF50060001324F800 +:101B7000150007EB4907BDF9340004EB4004761C5F +:101B8000BDF9080036B28642D8DA4FF0000AD346D3 +:101B9000E8E7BDE8F78FF0B5BDF91440002511E086 +:101BA00030F8167031F816C0A7EB0C0722F8167043 +:101BB000761CA642F4DB00EB440001EB440102EB8F +:101BC00044026D1C2DB29D42B8BF0026F1DBF0BD72 +:101BD0002DE9FA4F83B08146924600269B460BE0E2 +:101BE00000F09FF828F8160008EB4B08641C24B29C +:101BF0005445F5DB761C36B25E4537DA039D002787 +:101C000013E038F9171035F91600FEF7C4FA38F862 +:101C10001610081A28F8160008EB4B08641C24B2AA +:101C20005445EEDB05EB4B057F1CB74206DA35F970 +:101C300016000028F6D0C8460024F0E70398BDF847 +:101C4000101016FB016130F91150C84665B900F05B +:101C50006DF80FF2F463FFF770FC40F66700FFF7D2 +:101C600076FCFFF76FFCFEE70024C0E7FFF7E2BA5F +:101C70002DE9FA4F83B08146BDF81000461E934609 +:101C800036B21F460BE000F04CF828F8160008EBBF +:101C90004708641C24B25C45F5DB761E36B2002E84 +:101CA0003DD40398711C794300EB410A701C05B2C6 +:101CB00013E038F915103AF91600FEF76CFA38F807 +:101CC0001610081A28F8160008EB4708641C24B2FE +:101CD0005C45EEDB0AEB470A6D1CBD4206DA3AF9B9 +:101CE00016000028F6D0C8460024F0E70398BDF897 +:101CF000101016FB016130F91150C846002D0CD1AF +:101D000000F014F80FF25C63FFF717FC40F6870051 +:101D1000FFF71DFCFFF716FCFEE70024BAE7FFF70C +:101D200089BA38F916002946FEF785BE72B60FF259 +:101D30002860DFF8A8437047000000000180FFFF23 +:101D40002DE9FD4F0C9E0D9F884600253EE0029830 +:101D500030F91510B8F90000FEF719FA834601248E +:101D600007EB850906EB850A0AEB440038F91410E5 +:101D700030F9020CFEF70BFA8344019830F9141085 +:101D800009EB440030F9020CFEF701FA641CABEBDE +:101D9000000B022CE8DB0BF500600099001300F348 +:101DA0000F0021F8150036F82500AAF8020037F8D0 +:101DB0002500A9F80200009830F8150027F8250042 +:101DC000029830F8150026F825006D1CBDF9380082 +:101DD0008542BCDBBDE8F78F2DE9F04104460D4696 +:101DE00003F5006001011646091448BF0021288848 +:101DF000371AB5F90200FEF7CAF92979C1F10C01C9 +:101E00004AB200F50060002A46BF494288400841B6 +:101E100047F6FF78B0F5004FA8BF404639B200B290 +:101E2000FEF7B5F900F50060B5F90010001300FAEF +:101E300081F0B0F5004FA8BF404604DADFF8A012E9 +:101E40008842B8BF084628809DF91810B5F90000EF +:101E5000012908BF301A2080BDE8F081789BFFFF80 +:101E600001F0FFFFDEE6FFFF6C3F2403B61F920187 +:101E7000F0B500220FE001FB04F300EB430336F959 +:101E8000145033F8127026F8147023F81250641CA2 +:101E90009442F0DB521C8A4205DA01FB02F300EBAC +:101EA00043060024F4E7F0BD2DE9F041BDF91840E8 +:101EB000002500E06D1C9D4218DA002602E020F8A3 +:101EC000028B761CA642F5DA32F916E031F915C01C +:101ED000B0F900800EFA8CF7002F47BFC7F1000C55 +:101EE00048FA0CF8F44408FA0CF8E8E7BDE8F08189 +:101EF000F0B5002400E0641C944211DA002502E0F1 +:101F000020F8026B6D1C2DB29D42F4DA31F9147089 +:101F1000B0F90060002F46BF7F423E41BE40EFE770 +:101F2000F0BDF0B5002400E0641C24B2944210DA45 +:101F3000002502E020F8026B6D1C9D42F4DA31F9B5 +:101F40001570B0F90060002F46BF7F423E41BE4091 +:101F5000F0E7F0BD2DE9F043002583B080468946C7 +:101F6000144600272E460DE000AB01AA0846FEF7F6 +:101F700042F900993846CF1901994D19874238BF67 +:101F80006D1C761C4E4506DA58F826100029EBD554 +:101F9000C843411CE8E7C4F1200127FA04F005FA20 +:101FA00001F141EA000635FA04F725D03846FEF77C +:101FB000E1FD0546E80748BF6D1CC5F1200226FA81 +:101FC00005F007FA02F220211043FEF71BFD01463F +:101FD00055FA84F0203800044214012A08DB6FF01F +:101FE000004020FA02F399420AD201FA02F007E017 +:101FF000504221FA00F003E021463046FEF702FD90 +:10200000BDE8FE837CB5134681EA0002D40F0022AE +:10201000002944BFC943491C002844BFC043401C99 +:102020001D46212D0EDB72B60FF25C302B4C0FF2E9 +:102030004433FFF782FA40F6C810FFF788FAFFF73B +:1020400081FAFEE70FF2483656F82550C3F1200614 +:10205000054000FA03F3354108208D4224BF42F0C9 +:1020600001026D1A6D00002B48BF45F001055B00B1 +:1020700052008D4224BF42F001026D1A6D00002B08 +:1020800048BF45F001055B0052008D4224BF42F07D +:1020900001026D1A6D00002B48BF45F001055B0081 +:1020A00052008D4224BF42F001026D1A6D00002BD8 +:1020B00048BF45F001055B005200401ECDD1B2F192 +:1020C000004F28BF6FF000420CB1504276BD104661 +:1020D00076BD00000D22920194C0DBFCE8200120B7 +:1020E0000180FFFFF0B50023C55E4E1B04D57700CD +:1020F00006BF751C6E426E1A012502E0CE1B2B46F0 +:102100006D1C95421DDA30F91570B1EB070E09D53B +:102110005FEA4E0412BFA7EB010C0EF1010CCCF1EB +:10212000000C00E0F44636B2B445E9DABEF1000F27 +:10213000E4D55FEA4E0312BF7E1A0EF101035E4240 +:10214000DDE718B2F0BD10B561B10268012305E00A +:1021500050F82340A242B8BF22465B1C8B42F7DBFB +:10216000104610BD002010BD10B569B1B0F90020B7 +:10217000012305E030F91340A242B8BF22465B1CA0 +:102180008B42F7DB104610BD002010BD2DE9FB4F40 +:10219000804692461AFB0AF041000027404600F0B4 +:1021A00039F9DDF830900D9C00251FE019F9160073 +:1021B00047FA80FB38F81B00009009EB46010198B4 +:1021C00091F9011047FA81F130F91110029830F9B4 +:1021D0001600FDF7E0FF0099401828F81B00761C58 +:1021E000A642E3DB57FA8AF7BFB26D1CEDB2554544 +:1021F00038BF0026F4D3BDE8F78F2DE9F74F82B042 +:1022000098460026934600E0761C464536DA039F42 +:102210000298002405E0002027F81600019F00988E +:10222000641C5C45F0DA30F9141007EB480200EB4F +:102230004B00019200900029EDD037F91600FEF70F +:10224000FAFB27F81600DDF80090DDF804A0651C05 +:102250009DF81000EDB28542E0D237F9161039F939 +:102260001400FDF798FF3AF81610081A2AF816001D +:1022700009EB4B090AEB480A6D1CE9E7FEF7DABFE8 +:102280002DE9F74F82B0814600269846009202E081 +:1022900009EB4809761C0098864222DA029F039CCB +:1022A000002515E037F91B1039F91B00FDF76FFF0A +:1022B00082440BF1010BC345F4DB0AF50060001307 +:1022C00024F8160007EB4807009804EB40046D1C47 +:1022D0009DF810002DB28542DADA4FF0000AD3469D +:1022E000E9E7FEF7A7BF2DE9F047089CDDF824A039 +:1022F0000A9E0B9D884614FB02F100EB410000EBA7 +:102300004309002709E072004146484600F0A0FF5B +:1023100009EB440908EB45087F1CFFB25745F2D38F +:10232000BDE8F08710B51446FDF731FF00F50060F9 +:1023300000138442B8BF204603DB61428842B8BF25 +:10234000084600B210BD0000547269736F6C766568 +:10235000557070657200000074656D7020213D201D +:1023600030000000547269736F6C76654C6F77654E +:10237000720000004669786564506F696E74446944 +:10238000766964653332000071203C3D20333200B1 +:102390000000000000000080000000C0000000E01D +:1023A000000000F0000000F8000000FC000000FE4B +:1023B000000000FF000080FF0000C0FF0000E0FF01 +:1023C0000000F0FF0000F8FF0000FCFF0000FEFF2F +:1023D0000000FFFF0080FFFF00C0FFFF00E0FFFFE5 +:1023E00000F0FFFF00F8FFFF00FCFFFF00FEFFFF13 +:1023F00000FFFFFF80FFFFFFC0FFFFFFE0FFFFFFC9 +:10240000F0FFFFFFF8FFFFFFFCFFFFFFFEFFFFFFF6 +:10241000FFFFFFFF002200F067BF10B450F8041B5D +:1024200081B102681218001D50F8043BDC0744BF5C +:10243000A9F10104E31852F8044B43F8044B091FB7 +:10244000F9D1EBE710BC7047002200F085BF50F8CF +:10245000041B61B150F8042BD30744BFA9F1010359 +:102460009A18002342F8043B091FFAD1EFE770479E +:102470000CB480B5084601F023F8002002BC5DF8DA +:102480000CFBDFF8740B0178491C0170704701F0F8 +:1024900070BD000010B52DED028B84B000A90022A4 +:1024A000134614461CC102284FD19FEDBE8ADFF8A7 +:1024B0001C4B94ED060AB8EEC00A20EE080A10EE96 +:1024C000100A01F071FEDFF8082BDFF8303B01F055 +:1024D00093FE41EC100B01F0B3FF51EC100B01F037 +:1024E000D5FF4042009094ED070AB8EEC00A20EEF6 +:1024F000080A10EE100A01F057FEDFF8D42ADFF8C0 +:10250000FC3A01F079FE41EC100B01F099FF51EC1F +:10251000100B01F0BBFF019094ED080AB8EEC00A61 +:1025200020EE080A10EE100A01F03EFEDFF8A02AA5 +:10253000DFF8C83A01F060FE41EC100B01F080FFBB +:1025400051EC100B01F0A2FF029000A802F0E5F997 +:10255000002004B0BDEC028B10BD80B54022DFF836 +:102560006C0A02F0B9FC0220BDE8024092E70000CC +:1025700070B52DED028B86B004460D46DFF8546A27 +:10258000306A844238D196F83000800634D59FED09 +:10259000858A95ED040AB8EEC00A20EE080A10EE0E +:1025A000100A01F001FECDE9040195ED030AB8EE31 +:1025B000C00A20EE080A10EE100A01F0F5FDCDE980 +:1025C000020195ED020AB8EEC00A20EE080A10EEEC +:1025D000100A01F0E9FDCDE90001D5E9000102F0A2 +:1025E00083FC0022DFF8183A02F0AAFC02460B46F0 +:1025F0000FF66C2000F064FF706A844238D196F8C0 +:102600003000800634D59FEDA68A95ED040AB8EE19 +:10261000C00A20EE080A10EE100A01F0C5FDCDE94F +:10262000040195ED030AB8EEC00A20EE080A10EE88 +:10263000100A01F0B9FDCDE9020195ED020AB8EEEC +:10264000C00A20EE080A10EE100A01F0ADFDCDE937 +:102650000001D5E9000102F047FC0022DFF8A039B3 +:1026600002F06EFC02460B460FF60C2000F028FF2D +:10267000B06A844238D196F83000800634D59FED98 +:10268000498A95ED040AB8EEC00A20EE080A10EE59 +:10269000100A01F089FDCDE9040195ED030AB8EEB9 +:1026A000C00A20EE080A10EE100A01F07DFDCDE907 +:1026B000020195ED020AB8EEC00A20EE080A10EEFB +:1026C000100A01F071FDCDE90001D5E9000102F029 +:1026D0000BFC0022DFF8283902F032FC02460B46E0 +:1026E0000FF6AC1000F0ECFE06B0BDEC028B70BD36 +:1026F00010B52DED048B88B00C46DFF8D808012109 +:1027000041709FED280AD4ED020AF8EEE00A20EEAF +:10271000808A80ED018AD4ED030AF8EEE00A60EECB +:10272000808AC0ED028AD4ED040AF8EEE00A60EE79 +:10273000800AC0ED030A94ED051AB8EEC11A21EE25 +:10274000009A80ED049A90F83000800726D510EEAC +:10275000900A01F029FDCDE9060118EE900A01F07A +:1027600023FDCDE9040118EE100A01F01DFDCDE9AD +:10277000020119EE100A01F017FDCDE90001D4E9BC +:10278000000102F0B1FB0022DFF8743802F0D8FB40 +:1027900002460B460FF6101000F092FE08B0BDEC9A +:1027A000048B10BD0000803338B52DED028B86B050 +:1027B0000C46DFF82058286BC00434D59FEDB58A4D +:1027C00094ED040AB8EEC00A20EE080A10EE100AD2 +:1027D00001F0EAFCCDE9040194ED030AB8EEC00A69 +:1027E00020EE080A10EE100A01F0DEFCCDE902012D +:1027F00094ED020AB8EEC00A20EE080A10EE100AA4 +:1028000001F0D2FCCDE90001D4E9000102F06CFB3B +:102810000022DFF8EC3702F093FB02460B460FF67E +:10282000A40000F04DFE95F83000400634D59FED31 +:10283000998A94ED040AB8EEC00A20EE080A10EE58 +:10284000100A01F0B1FCCDE9040194ED030AB8EEE1 +:10285000C00A20EE080A10EE100A01F0A5FCCDE92E +:10286000020194ED020AB8EEC00A20EE080A10EE4A +:10287000100A01F099FCCDE90001D4E9000102F051 +:1028800033FB0022DFF8783702F05AFB02460B4692 +:102890000FF6480000F014FE06B0BDEC028B31BD0F +:1028A0000000803938B52DED028B86B00C46DFF87C +:1028B0002457286B800434D59FEDAF8A94ED040A29 +:1028C000B8EEC00A20EE080A10EE100A01F06CFC07 +:1028D000CDE9040194ED030AB8EEC00A20EE080A1F +:1028E00010EE100A01F060FCCDE9020194ED020A3D +:1028F000B8EEC00A20EE080A10EE100A01F054FCEF +:10290000CDE90001D4E9000102F0EEFA0022DFF87F +:10291000F03602F015FB02460B460FF2D87000F0BD +:10292000CFFD95F83000400634D59FED938A94EDA5 +:10293000040AB8EEC00A20EE080A10EE100A01F0F0 +:1029400033FCCDE9040194ED030AB8EEC00A20EE91 +:10295000080A10EE100A01F027FCCDE9020194EDFF +:10296000020AB8EEC00A20EE080A10EE100A01F0C2 +:102970001BFCCDE90001D4E9000102F0B5FA002208 +:10298000DFF87C3602F0DCFA02460B460FF27C7070 +:1029900000F096FD06B0BDEC028B31BD38B52DEDD3 +:1029A000028B86B00C46DFF82C56286B400434D5D9 +:1029B0009FED388A94ED040AB8EEC00A20EE080AAA +:1029C00010EE100A01F0F0FBCDE9040194ED030ACA +:1029D000B8EEC00A20EE080A10EE100A01F0E4FB7F +:1029E000CDE9020194ED020AB8EEC00A20EE080A11 +:1029F00010EE100A01F0D8FBCDE90001D4E9000186 +:102A000002F072FA0022DFF8F83502F099FA024675 +:102A10000B460FF2107000F053FD95F830004006A1 +:102A200034D59FED1C8A94ED040AB8EEC00A20EE5E +:102A3000080A10EE100A01F0B7FBCDE9040194ED8D +:102A4000030AB8EEC00A20EE080A10EE100A01F0E0 +:102A5000ABFBCDE9020194ED020AB8EEC00A20EE0C +:102A6000080A10EE100A01F09FFBCDE90001D4E93D +:102A7000000102F039FA0022DFF8843502F060FA32 +:102A800002460B460FF2B46000F01AFD06B0BDEC32 +:102A9000028B31BD0000803338B50446012904D0D3 +:102AA00063D3032923D045D35FE0DFF8285595F899 +:102AB0003000000708D5E0680090A36862682168CC +:102AC0000FF2906000F0FCFCE86A00EBD071491056 +:102AD000B0EB41004FD12146686902F065FF002844 +:102AE00049D00FF28C60BDE8324000F0E9BCDFF85D +:102AF000E45495F83000000708D5E0680090A3681A +:102B0000626821680FF2706000F0DAFCE86A411038 +:102B100000EB91718910B0EB81002CD12146A8699E +:102B200002F042FF002826D00FF26860BDE8324074 +:102B300000F0C6BCDFF89C5495F83000000708D5BB +:102B4000E0680090A368626821680FF2506000F0AE +:102B5000B7FC2146E86902F027FF00280BD00FF2EE +:102B60005860BDE8324000F0ABBC0FF25460BDE8E5 +:102B7000324000F0A5BC31BD0000803980B5C007EF +:102B800010D522220021084603F03AFB222201211F +:102B9000002003F035FB222202210020BDE808407E +:102BA00003F02EBB22220021084603F029FB22223B +:102BB00001210020BDE8084003F022BB80B522229D +:102BC0000021012003F01CFB22220121084603F012 +:102BD00017FB222202210120BDE8084003F010BBB0 +:102BE0000FB438B59DF81100DFF8E8432070FFF707 +:102BF000C5FFDFF810540020E86205F5827002F08E +:102C000006FD04F1140105F58A7002F026FD04F1B9 +:102C1000180105F5027002F020FD04F11C012846A0 +:102C200002F01BFD04F1200105F53F7002F0E2FD0A +:102C300004F1240105F5477002F0DCFD04F12801E0 +:102C400005F54F7002F0D6FD05F1F40105F557705A +:102C500002F0D0FD05F1F80105F55F7002F0CAFD44 +:102C600005F1FC0105F5677002F0C4FD05F5807102 +:102C700005F56F7002F0BEFD002801D1012004E0CF +:102C80000FF2505000F01CFC022032BC5DF814FB27 +:102C900080B5FFF793FF012002BD0000F8B52DEDD0 +:102CA000028B9CB00EA81021FFF7CEFB17A81021B5 +:102CB000FFF7CAFB12A81421FFF7C6FB00A80021EA +:102CC0000A4606C0C44C2768666803F095FC0546B2 +:102CD00004F04EF9B869F9684118B069F2688018D3 +:102CE000B1F900200792B1F902200892B1F904105D +:102CF0000991B0F90010B6F95820C2EB4101491012 +:102D00000B91B0F902104942B6F95A20C2EB4101C9 +:102D100049100C91B0F904004042B6F95C10C1EBC7 +:102D2000400040100D904FF47A7604F0DAF97043C9 +:102D30000690012106A8FFF7AFFE04F0D2F9704318 +:102D40000A9002210AA8FFF7A7FEA24E3078C0071A +:102D50000BD5B5F906000390B5F908000490B5F954 +:102D60000A0005906869706305E007980390089869 +:102D7000049009980590A8690290032102A8FFF722 +:102D80008BFE02F077FE0128FBD103F009F8012841 +:102D9000FBD13078C00760D5707800285DD096ED03 +:102DA000040AB5EE400AF1EE10FA15D5B1EE400A6C +:102DB00086ED040A96ED010AB1EE400A86ED010A9D +:102DC00096ED020AB1EE400A86ED020A96ED030A7C +:102DD000B1EE400A86ED030A9FED808B706801F02A +:102DE000E3F953EC182B02F0ABF801F04FFB0E9017 +:102DF0000EAFB06801F0D8F953EC182B02F0A0F830 +:102E000001F044FB7860F06801F0CEF953EC182B28 +:102E100002F096F801F03AFBB860306901F0C4F9AD +:102E200053EC182B02F08CF801F030FBF860102204 +:102E30000EA912A802F050F868698DF85800206CAD +:102E400000F10C056A7D12A9EB68C068181802F041 +:102E500043F80120A87400207070307880077CD57A +:102E6000082100A805F0D9FE9FED5E0A00A881792F +:102E70009DF8072042EA012109B200EE901AF8EE0F +:102E8000E00A60EE800A9DF80010427842EA0121D3 +:102E900009B201EE101AB8EEC11A21EE001A8178BB +:102EA000C27842EA012109B201EE901AF8EEE11A65 +:102EB00061EE801A00799DF8051041EA002000B209 +:102EC00002EE100AB8EEC22A22EE000AB5EE400A5F +:102ED000F1EE10FA07D5F1EE600AB1EE411AF1EE0B +:102EE000611AB1EE400A9FED402A60EE820AFDEEC3 +:102EF000E00ACDED0E0ADFED440A21EE201ABDEE08 +:102F0000C11A0EAF87ED011A61EE821AFDEEE11AC9 +:102F1000C7ED021A20EE200ABDEEC00A87ED030AB3 +:102F20000E98179017A880ED011AC0ED021A80EDD7 +:102F3000030A102217A912A801F0CEFF00208DF875 +:102F40005800E06B00F10C04627D12A9E368C068D0 +:102F5000181801F0C1FF0120A07401201CB0BDECC5 +:102F6000028BF2BD80B503F049F920490860204981 +:102F7000C0F8601500F260501E494160234981602D +:102F80000FF20D01C1600FF2A1010161012002BD2C +:102F90001648006890F85105002801D100207047BC +:102FA00005E080B5002000F006F8012002BD1848B9 +:102FB00090F900007047164908707047054908707D +:102FC00001460FF2182000F07BBA00007C3401208B +:102FD00078DED299783601200840002000000000F9 +:102FE00080842E4100000038002474C9903C0120E8 +:102FF000E12B0008912C0008A4800020570E233FED +:103000000000703ED8740020002474499D2C0008F4 +:10301000F93C012022220221002003F0F1B82222F3 +:103020000221012003F0ECB818B440F221120B7811 +:1030300012FB030301241C700B7812FB03035C706A +:103040000B7812FB030322249C700B7812FB030005 +:103050000022C2700878401C087011BCA1E7000073 +:10306000412C252E36662C252E34662C252E3466D2 +:103070002C252E34660000004D2C252E36662C257E +:103080002E34662C252E34662C252E346600000046 +:10309000472C252E36662C252E34662C252E34669C +:1030A0002C252E3466000000512C252E36662C254A +:1030B0002E34662C252E34662C252E34662C252E97 +:1030C0003466000053412C252E36662C252E36669C +:1030D0002C252E36662C252E3666000052412C25D6 +:1030E0002E36662C252E36662C252E36662C252E61 +:1030F00036660000534D2C252E36662C252E36665E +:103100002C252E36662C252E36660000524D2C2599 +:103110002E36662C252E36662C252E36662C252E30 +:103120003666000053472C252E36662C252E366633 +:103130002C252E36662C252E3666000052472C256F +:103140002E36662C252E36662C252E36662C252E00 +:10315000366600004163630925386409252B356410 +:1031600009252B356409252B35640D0A0000000064 +:103170004143435F4B4F00004D61670925386409A7 +:10318000252B356409252B356409252B35640D0A5B +:10319000000000004D41475F4B4F00004779720926 +:1031A00025386409252B356409252B356409252B21 +:1031B00035640D0A000000004759524F5F4B4F0025 +:1031C000414C473A20426164206D657373616765C5 +:1031D0000000000052563A20532046005256206606 +:1031E0006C616720256400000EB400B582B003A9AD +:1031F0000091024600AB0121034878440A3005F0F3 +:103200001BFD06BC5DF810FB1701030008B400B5F8 +:1032100084B005AB03930023029311B9009301938B +:1032200002E00090481E019003AB00A907487844D3 +:103230001A3005F001FD009909B100220A7000283A +:1032400058BF029804B05DF808FB00BF7B00000087 +:1032500062B38B0708D0521E11F8013B00F8013B06 +:1032600000F024808B07F6D1830740F0208000BF58 +:10327000103A07D330B4B1E83810103AA0E838104B +:10328000F9D230BC530724BFB1E80810A0E80810F9 +:1032900044BF51F8043B40F8043BD20724BF31F847 +:1032A000022B20F8022B44BF0B7803707047083ABA +:1032B00007D3B1E80810083A40F8043B40F804CBC3 +:1032C000F7D25307E4E78268521C8260426832B149 +:1032D0000268531C036011704168491E41607047C9 +:1032E00062F30F2262F31F42401810F0030308D06C +:1032F000C91A1FD3DB0748BF00F8012D28BF20F8EB +:10330000022D130030B414461546103928BF20E9A9 +:103310003C00FAD8490728BF20E90C0048BF40F814 +:10332000042D890028BF20F8022D48BF00F8012D88 +:1033300030BC7047C91818BF00F8012DCB0728BF53 +:1033400000F8012D70470268531C0360117070472C +:1033500062F30F2262F31F4200B500BF13009646CE +:103360009446103928BFA0E80C50FAD85FEA417C97 +:1033700028BF0CC048BF40F8042BC90728BF20F85D +:10338000022B48BF00F8012B00BD0000BFF34F8F98 +:10339000DFF81C07016801F4E061DFF844271143FE +:1033A0000160BFF34F8FFEE710B5DFF838474FF4E9 +:1033B0008E720021204606F00AFB204610BDDFF881 +:1033C0002407704710B5FFF7EFFF044600231A46A5 +:1033D0001146084600F06EFAC046C04606F002FBF1 +:1033E000204600F018F806F054FD204600F0CFF912 +:1033F000204600F014F8204600F01EF800F092F984 +:1034000000206072A072E0722073012060730020BF +:10341000E075012010BD0021C171017231E010B5CD +:103420000446DFF8900606F089FBDFF8BC0606F0DC +:1034300085FB0120607110BD10B5044606F0E9FB64 +:103440000120A07110BD38B50446012506F094FC9A +:10345000012804D12846E0700020A0700AE002286C +:1034600004D10020E0702846A07003E00020E07046 +:10347000A0700546284632BD80B506F0F7FD012054 +:1034800002BD10B50446E07906F01EFF012121704F +:1034900010BD70B504460025E679E171FFF7F1FF34 +:1034A000002807D02046FFF7BAFF2046FFF7C4FFE9 +:1034B000012503E0E6712046FFF7E3FF284670BDD3 +:1034C0000EB470B5C1B0054600A84FF48071FEF788 +:1034D000BBFFFFF774FF044645AB2A464FF48071EB +:1034E00000A807F075FC00A807F090FC451C00A898 +:1034F0002818002100F8011CDFF8F0653078401C26 +:1035000030707078F021084202D0992007F09AFCC0 +:1035100007F005FD7078401C7070207E2818FF2889 +:1035200010DA207E002803D0207E00190A210176BF +:103530002A4600A9207E0019193001F0CDFC207E1A +:103540002818207600A807F053FF7078F021084271 +:1035500002D0992007F076FC7078401E7070C0B2DF +:10356000002801D107F0D5FC00F003FD41B070BC8C +:103570005DF810FB0428DFF8400503D8DFF83415A8 +:1035800001607047DFF8601501607047DFF82C15A7 +:1035900051F82000007F002807D0DFF8540501789B +:1035A0004A1C0270032900DBF0E670472DE9F8435E +:1035B00005460E4617464FF00208DFF830456078A2 +:1035C000F021084202D0992007F03CFC07F0A7FC4C +:1035D0006078401C60709DF80000401E8DF800006F +:1035E00017F8019B2846FFF7C5FF00AB4A4639464E +:1035F000304606F081FF002810D06078F0210842A4 +:1036000002D0992007F01EFC6078401E6070C0B2A6 +:10361000002801D107F07DFC01201FE05FFA88F847 +:10362000424629460FF2D440FFF74AFF4046A0F138 +:1036300001080028D9D16078F021084202D09920F1 +:1036400007F000FC6078401E6070C0B2002801D115 +:1036500007F05FFC2846FFF799FF0020BDE8F283E2 +:103660002DE9F04704460D4616461F46DFF8508404 +:10367000089888F80000DFF8749499F80100F021A8 +:10368000084202D0992007F0DDFB07F048FC99F8CA +:103690000100401C89F801002046FFF76BFF4FF046 +:1036A000020A434632463946284606F0D5FF00282E +:1036B00013D099F80100F021084202D0992007F0B8 +:1036C000C1FB99F80100401E89F80100C0B2002832 +:1036D00001D107F01EFC012022E05FFA8AFA52466F +:1036E00021460FF22440FFF7EBFE5046A0F1010AFD +:1036F0000028D6D199F80100F021084202D0992083 +:1037000007F0A0FB99F80100401E89F80100C0B243 +:10371000002801D107F0FDFB2046FFF737FF00200E +:10372000BDE8F08708F058BCF8B50446022700252C +:10373000DFF888630DE039464F1EC9B200290AD16F +:10374000002804D120690121A94088432061022773 +:103750006D1C172D10DA56F82500006E00688047A2 +:103760000128E8D121690122AA401143216156F8BC +:10377000251001220A77E3E72069032803D00228F5 +:1037800001D0012802D140F480502061F1BD07F042 +:10379000A7B807F002B981B00022ADF80220ADF859 +:1037A0000020C079042808D0062809D008280AD0AB +:1037B00009280BD00A280CD00EE04FF4C8600DE0A9 +:1037C0004FF448600AE04FF4C85007E04FF4FA5055 +:1037D00004E042F2107001E041F27070ADF8022096 +:1037E0000DE0BDF80020521CADF80020BDF800200F +:1037F0008242F6DBBDF80220521CADF80220BDF873 +:1038000002208A4203D20022ADF80020EEE701B088 +:103810007047417230B589B003F0AEFB0446FFF744 +:10382000CEFD054600A82421FEF70EFE0020ADF8CF +:10383000220001900A208DF8080000208DF8090070 +:103840008DF80A00687A00280DD0002C18D00020CE +:103850008DF80000052001900B208DF8080000A8CD +:1038600002F0A2FD0CE0002C0AD001208DF800002F +:10387000052001900B208DF8080000A802F094FDAF +:1038800009B030BD07F0A5B807F0ADB80121084672 +:10389000F8E701210846F7E702210120F2E70221BB +:1038A0000120F1E707F0AAB810B50446FFF787FD3D +:1038B000447510BD2DE9F04782B00C4615462F46E1 +:1038C000264680464FF47A714FF03C0C4FF4616904 +:1038D00018FB09F216FB0C22BA1801FB0232DFF8C2 +:1038E000E4E19EF900A01AFB09F99EF901A01AFB78 +:1038F0000C9C9EF902904CFA89FCBEF9039001FBE6 +:103900000C919EF808C0BCF1000F22D144EA0001DE +:103910002943194302D001218EF808108EF80000C7 +:10392000B8F1000F04D59EF8000018308EF80000A2 +:103930008EF801408EF80250AEF8033000933B46FB +:1039400032469EF900100FF2F010FFF7B9FDBDE806 +:10395000F38791420DD3A1EB020CACF2D17CDFF8DE +:103960009491CC45DAD30FF2AC1002B0BDE8F04729 +:10397000A6E5D3D2A2EB010CACF2D179DFF874A1A9 +:10398000D145CBD363460FF29C1002B0BDE8F0479F +:1039900096E510B504002FD003F0A3FB4949CA688F +:1039A000002A00D0841AB1F80320A218A1F803203D +:1039B00012B2B2F57A7F06DBA2F57A72A1F8032083 +:1039C0008A78521C8A7091F902203C2A04DB3C3A26 +:1039D0008A704A78521C4A7091F901203C2A04DB13 +:1039E0003C3A4A700A78521C0A7091F90020182A51 +:1039F00001DB00220A70C86010BD32490522FFF7C2 +:103A000027BC00000FB410B52DED028B2E4C1046D4 +:103A100008F0B0FB2D4A2E4B01F092FA2061616153 +:103A20009FED2C8B049808F0A5FB53EC182B01F0AC +:103A300087FA20606160059808F09CFB53EC182B16 +:103A400001F07EFAA060E1609DF81C00207604F190 +:103A500018009DF81D1041709DF81E1081709DF892 +:103A60001F10C1709DF820100171BDF8210000EEFB +:103A7000100AB8EE400A10EE100A00F095FB174A43 +:103A80001D4B01F05DFA08F083FBC4F81D00BDF882 +:103A90002300A4F821009DF8250084F82300BDEC44 +:103AA000028B10BC5DF814FB07492422FFF7D0BB42 +:103AB0000CED00E0005400402C870020084000205E +:103AC000EB3C0120683A012068380120FCA9F1D2C2 +:103AD0004D62503F8DEDB5A0F7C6B03E3BDF4F8D38 +:103AE0000400FA05B00F012000580040A480002017 +:103AF000EA3C01205F4C2605976EA23F49574520BE +:103B000025642025640000004952452025642025B5 +:103B10006400000041542D536574545331202564D2 +:103B20002025640041542D5365745453322025647C +:103B3000202564202564000041542D5365745420D1 +:103B400025643A25643A25642E25640038B507F0CB +:103B5000E6F9DFF830068468DFF8280600210171F5 +:103B600007F0D7F9002C2CD02068002829D0607CE1 +:103B70002168497CC0B2814223D1256800E00D0054 +:103B80002968002903D04A7CC0B28242F7D007F0EE +:103B9000C6F9DFF8F0050069A04203D1DFF8E405BB +:103BA00021680161E06921680160C861E5612968F7 +:103BB0002160002900D0CC612C6095F8410085F887 +:103BC000400007F0A6F931BD10B507F0A8F9DFF8FD +:103BD000B8050468DFF8AC05006A201A012832DA5B +:103BE000DFF8A005046A04E0DFF89805046207F036 +:103BF00090F9DFF898050078C00722D507F08FF913 +:103C0000DFF8880500788007EED5DFF880050078BA +:103C100010F0FD00DFF87415087007F07AF9DFF88E +:103C20006405006A8442FAD0DFF858050462DFF8C0 +:103C300058050068401CDFF850150860DFF844158F +:103C4000486207F06CF910BD38B504000020A0717F +:103C5000206A10F57A606062E069002802D02000D6 +:103C6000E169884707F055F9E56809E0E868616AA5 +:103C7000401A002801D5E868606207F04AF92D680B +:103C8000002D1AD007F04BF92069002804D0687C79 +:103C90002169497C884212D3287C4007EDD5E86829 +:103CA000216A401A0128E1DA280000F09EF907F0A5 +:103CB00036F9287C0028D9D101E007F030F931BD70 +:103CC00070B50400002060700120207008F0A8FA90 +:103CD0000078C0B2CD2802D07D2007F0B3F8A068EC +:103CE00000280CD0A068406C002808D0A068406C68 +:103CF00001680800002802D0A0684068884794F84E +:103D0000290000280BD0A06894F8281080F84010F3 +:103D1000DFF870040079002801D0FFF717FFDFF803 +:103D200070040078002823D0DFF868040068DFF80A +:103D30005414096A401A002804D5DFF854040021FD +:103D4000017015E007F0EBF808F0FAFA050007F04B +:103D5000E0F8A068002808D0A068406B2818DFF8B9 +:103D600038140968401AA1684863DFF82C0405601C +:103D7000A068002808D0A068007C002804D1A068B2 +:103D8000006B401CA1680863206900282BD003E069 +:103D90003068206107F0BDF807F0C1F82669002EF1 +:103DA00027D0357CEDB2002D23D0680710D5F06800 +:103DB000216A411A012906DA300000F016F9307C38 +:103DC000002805D10FE0616A411A002900D5606220 +:103DD000EDB215F0FB001028DAD1B06880684068B9 +:103DE000007C0028D4D107F09AF802E02000FFF709 +:103DF0002BFFA0790028F9D1DFF890030078C007E5 +:103E000001D5FFF7E1FE002060712069002839D05C +:103E10002069007C002805D020698068806840689F +:103E2000A06001E02069A060A06890F84C006428C0 +:103E300002D0802007F006F8A068806A0078CD28BC +:103E400002D0782006F0FEFFA068406C002808D061 +:103E5000A068406C41680800002802D0A068406853 +:103E60008847A06890F8400084F8280084F829006A +:103E7000DFF810038068C06A401CDFF80813896807 +:103E8000C8620BE0002084F82900002084F8280094 +:103E90000020A0600020207007F03BF8200070BDDB +:103EA00080B508F07BFADFF8F4120978002806D014 +:103EB000022810D009D3042815D010D314E000290B +:103EC00002D0A32006F0BEFF11E0002902D1A420F9 +:103ED00006F0B8FF0BE0A62006F0B4FF07E0A7202D +:103EE00006F0B0FF03E002E0A82006F0ABFF01BD42 +:103EF00010B508F053FA0400DFF8A002007800289B +:103F000002D0A02006F09EFF002C05D0022C08D085 +:103F100003D3032C09D00CE00EE0A42006F092FF9E +:103F20000AE0A62006F08EFF06E0A72006F08AFF32 +:103F300002E0A82006F086FF10BD80B508F02EFA3A +:103F4000002805D0022808D006D3032809D00CE0A9 +:103F5000A32006F077FF0BE00AE0A62006F072FF30 +:103F600006E0A72006F06EFF02E0A82006F06AFF38 +:103F700001BD80B5DFF80C020078002802D197203F +:103F800006F060FFDFF8FC010078401EDFF8F41156 +:103F90000870C0B2002827D1DFF8E8014068002887 +:103FA00022D006F0BCFFDFF8DC01406800280BD00F +:103FB000DFF8D00101210170DFF8C80106F099FF98 +:103FC000DFF8C00100210170DFF8B8014078F0216E +:103FD000084202D0992006F035FFDFF8A8014078AA +:103FE000002801D106F095FF01BD10B581680029B8 +:103FF0000CD0DFF89011096AC16081680A684968CD +:10400000002A00D051600A6000218160017C11F01B +:1040100003010174C9B2002945D1DFF868110969AB +:10402000002929D1DFF85C110861DFF85801007818 +:1040300000280CD1DFF84C0101210170DFF84401A8 +:1040400006F057FFDFF83C010021017003E0DFF8C4 +:10405000340101214171DFF82C014078F021084240 +:1040600002D0992006F0EEFEDFF818014078002813 +:1040700001D106F04EFF16E0427C4B7CD2B2934257 +:10408000D0D38142D1D04B7CD2B29A420BD1030023 +:10409000FFE71B68002BDED05C7CD2B2A242DAD1F3 +:1040A0008B42F6D1BEE710BD10B50400627C3548E6 +:1040B0000078401C33490870394800E00800016866 +:1040C000002903D04B7CD2B29A42F7D32160E06141 +:1040D000046000290AD0CC61487CD2B2904202D15F +:1040E00094F8410000E0002084F84000207C002883 +:1040F00012D106F014FF2000FFF777FF2148407827 +:10410000F021084202D0992006F09CFE1D4840781C +:10411000002801D106F0FDFEFFF72BFF10BD10B502 +:104120001848047817480078401C1649087015484C +:1041300006F0DFFE1348047012484078F021084270 +:1041400002D0992006F07EFE0E484078002801D16A +:1041500006F0DFFE10BD10B508F026F90948012170 +:10416000017008F05DF804006846C046021B203A62 +:10417000012A03DBCD21200005F029FC094801219B +:10418000017010BDA4800020C03C01200F3D012023 +:10419000103D0120D83C0120C43C0120113D0120EC +:1041A000B0800020133D01205FF0FF0C1CEAD051CD +:1041B00014BF614506E0C110400721F0E04101F164 +:1041C0006051704779B900F0004100020AD0B0FA9E +:1041D00080FC00FA0CF001F16051A1EB0C5101EBF5 +:1041E000D0214005704741020CBF40F4E0016FF060 +:1041F0000001002070470000F0B540F2FF7581EA31 +:10420000030C0CF0004C15EA11541DBF15EA1357AE +:10421000AC42AF42E5E0BC41C1F31301C3F3130369 +:10422000801A994143F4801304D2641E400049412E +:1042300080185941C90241EA5051B1FBF3F603FB22 +:104240001611A2FB0675D7EBC020A94102D2761E3B +:1042500080185941C90241EA5051B1FBF3FE03FBFA +:104260001E11A2FB0E75D7EBC020A94103D2AEF1FF +:10427000010E80185941890241EA9051760546EABB +:104280008E2EB1FBF3F603FB1611A2FB0675D7EBDE +:104290008020A94102D2761E80185941C90241EA04 +:1042A00050514EEA060EB1FBF3F603FB1611A2FBCA +:1042B0000675D7EBC020A94102D2761E801859415D +:1042C000C90241EA5051B1FBF3F703FB1711A2FBFE +:1042D0000735D3EBC020A94167F100070CBF0042AE +:1042E00047F0010766F3D5274FEA1E31B80814F5E9 +:1042F000806412DDBD0775F1004250EB0E5051EBAA +:10430000045111F5801F5CBF41EA0C01F0BD4CF077 +:104310007F6141F0E0410020F0BDBD076D0840EA3B +:104320000E5041F48011D4F10104B4F120060ADAF0 +:10433000C4F120060200E04001FA06F3E140184310 +:10434000B24015430EE0342C13DCC6F1200445EADC +:1043500040056D0820FA06F2154321FA06F0A14047 +:104360000D43002175F1004250F1000051EB0C01AA +:10437000F0BD00205FEA0C01F0BDCFB992185B419F +:10438000B3FA83F704BFB2FA82F6BF190B3FB7F155 +:1043900020062FBF02FA06F3BB40C7F1200622FA1F +:1043A00006F638BF3343BA401CB1E419641E33E744 +:1043B0007F4231F00041B1FA81F404BFB0FA80F6D7 +:1043C000A4190B3CB4F120062FBF00FA06F1A1405E +:1043D000C4F1200620FA06F638BF3143A0403C1B4A +:1043E0001AE7AC421ABF05EA1357AF4212E050EA8F +:1043F00041061CBF52EA4306BFE750EA4107304678 +:1044000061461CBF41EA0551F0BD52EA430C08BFAA +:10441000C143F0BD00204FF4001616EB410F98BFCA +:1044200016EB430F08BF16EB410F24BFC14305E055 +:1044300016EB430F0CBF61464CEA0551F0BD00007E +:1044400000B583B001218DED000B00A807F0D0FF6F +:10445000401E012811D9002100A807F0C9FF60B152 +:104460000198DDE90023002847BF0020054900200E +:10447000054907F0FDFFCDE900019DED000B03B0FC +:1044800000BD00000000F0BF0000F03FF446400D0A +:1044900040EAC120490006D200F014F8004248BFAB +:1044A0006FF00040604700F00DF84FF00041884287 +:1044B0008CBF084640426047400D40EAC120490099 +:1044C00080F00D8040F00040490DA1F58061491C4D +:1044D00005D4D1F11F0154BFC840C01770474FF039 +:1044E0000000704770B50546FEF769FF0646DFF825 +:1044F00058492078401C20706078F021084202D092 +:10450000992006F09FFC06F00AFD6078401C607060 +:10451000294689B23046FFF73EF96078F02108421B +:1045200002D0992006F08EFC6078401E6070C0B208 +:10453000002801D106F0EDFCBDE87040FFF719BD81 +:1045400030B583B004460020ADF806008DF80400B5 +:104550000146012008F012F805460120009001AB49 +:104560000022B021FFF77CF8002801D100203EBDD9 +:1045700000208DF806009DF8040000F0E7002043BD +:1045800040F007008DF8070002230DF10602B0216C +:104590000120FFF70BF8002801D100203EBD28467E +:1045A0003EBD10B584B00C4601A800210A4606C0E5 +:1045B0000620009001AB2422B0210120FFF750F823 +:1045C000002801D100200EE001A8417821709DF85B +:1045D00004106170C178A1708178E1704179217116 +:1045E00000796071012004B010BD30B583B00024A3 +:1045F0002046ADF804000146012007F0BFFFDFF8B8 +:104600004C58012000902B462246B021FFF728F895 +:10461000002832D0012000906B1C0246B021FFF729 +:104620001FF8002829D001200090AB1C0222B021E5 +:10463000FFF716F8002820D001200090EB1C032281 +:10464000B021FFF70DF8002817D00221012007F054 +:1046500095FF054600E0641C062C10DA04F11300F7 +:104660008DF8040000208DF80500022301AAB02176 +:104670000120FEF79BFF0028EDD100203EBD28461B +:104680003EBD70B582B00020ADF8000001460120AB +:1046900007F074FF044600208DF80000DFF8AC57E7 +:1046A00000AE28787070022300AAB0210120FEF726 +:1046B0007DFF002801D1002076BD01208DF800008B +:1046C00068787070022300AAB0210120FEF76EFF07 +:1046D000002801D1002076BD02208DF80000A878C6 +:1046E0007070022300AAB0210120FEF75FFF0028AE +:1046F00001D1002076BD03208DF80000E8787070AD +:10470000022300AAB0210120FEF750FF002801D1AA +:10471000002076BD204676BD70B582B004460020EC +:10472000ADF800000146012007F028FF05460020F3 +:104730008DF8000000AE1F207070022300AAB02187 +:104740000120FEF733FF002821D002208DF8000061 +:10475000DFF8F806807800F0F00040F00400707098 +:10476000022300AAB0210120FEF720FF00280ED06E +:1047700001208DF80000A00140F01C0070700223A1 +:1047800000AAB0210120FEF711FF002801D100206E +:1047900076BD002C02D06420FFF7A4FE6420FFF752 +:1047A000A1FE284676BD2DE9F043ADF5197D0446FE +:1047B0000D46164667A8C821FDF746FE35A8C82154 +:1047C000FDF742FE03A8C821FDF73EFE01A8002127 +:1047D0000A4606C00F4618E001A89DF8041042786A +:1047E00042EA012167AA22F817108178C27842EACA +:1047F000012135AA22F8171000799DF8091041EA25 +:10480000002003A921F817007F1C642F13DA012070 +:10481000FFF768FE012007F0C5FEC007F7D50620A8 +:10482000009001AB2422B0210120FEF719FF0028DF +:10483000D2D100206DE00020014621606160A160BE +:1048400014E067AA32F9102001EBC201216061680F +:1048500035AA32F9102001EBC2016160A16803AAF8 +:1048600032F9102001EBC201A160401C21686428CC +:10487000E7DB642091FBF0F020606068642190FB2E +:10488000F1F06060A06890FBF1F0A060002738466E +:104890000146C5E90001C5E90201C5E9040133E0AB +:1048A000D4F8008067A830F917C04FEAA80008EBD9 +:1048B0005070ACEBE000D5E900234043C11710185D +:1048C0005941C5E90001D4F804E04FEAAE000EEB0F +:1048D0005070ACEBE000D5E902234043C11710183B +:1048E0005941C5E90201D4F808904FEAA90009EB43 +:1048F0005070ACEBE000D5E904234043C117101819 +:104900005941C5E904017F1C642FC9DB6420306074 +:1049100001200DF5197DBDE8F08370B586B0DFF894 +:104920003015496801AA00231C4618C21A46ADF882 +:10493000002002685242ADF8042001AA43685B429D +:104940005380806840429080BDF9040000128DF8C9 +:104950000C0003ACBDF804006070B2F90200031251 +:10496000A370E070B2F90400031223718DF81100F6 +:10497000002006E001EB400332F81050A3F8585035 +:10498000401C0328F6DB0221012007F0F7FD054655 +:10499000002600E0761C062E10DA06F113008DF8D2 +:1049A0000000305D8DF80100022300AAB021012033 +:1049B000FEF7FCFD0028EDD1002000E0284606B0FF +:1049C00070BD00002DE9F8432DED028B814688462D +:1049D00001241068D8F80010401A811000EB5170C3 +:1049E000C5105068D8F80410401A811000EB5170BF +:1049F000C6109068D8F80810401A811000EB51706A +:104A0000C710B5F5166F01DB204600E0002007F067 +:104A1000B1FB2246DFF83C3408F06EFA20D2704237 +:104A2000B0F5166F01DB104600E0002007F0A2FB96 +:104A30002246DFF8203408F05FFA11D2B7F5166F7E +:104A400001DB104600E0002007F094FB2246DFF86F +:104A5000043408F051FA03D24046FFF75EFF37E016 +:104A6000B5F5166F01DB104600E0002007F082FB71 +:104A70002246DFF8E03308F03FFA03D30FF2044098 +:104A8000FEF71EFD7042B0F5166F01DB204600E018 +:104A9000002007F06FFB2246DFF8B83308F02CFA4D +:104AA00003D30FF2EC30FEF70BFDB7F5166F01DB09 +:104AB000204600E0002007F05DFB2246E54B08F0B1 +:104AC0001BFA03D30FF2D430FEF7FAFC4FF0FF3499 +:104AD0009FED988B284608F026FA07F041FB00224C +:104AE000DD4BFFF789FB53EC182B00F029FAFFF799 +:104AF000CDFCA9F80000304608F015FA07F030FBAD +:104B00000022D54BFFF778FB53EC182B00F018FA76 +:104B1000FFF7BCFCA9F80200384608F004FA07F0D9 +:104B20001FFB0022CC4BFFF767FB53EC182B00F068 +:104B300007FAFFF7ABFCA9F804002046BDEC028B96 +:104B4000BDE8F28330B597B004460CA800210A46B0 +:104B50000B460EC001A80EC010A81821FDF774FC6A +:104B600006A81821FDF770FC00A80021016004A828 +:104B70000A4606C0FFF739FD002801D10020ABE04E +:104B80000020FFF7C9FD002801D10020A4E000AA01 +:104B900006A901A8FFF707FE002801D100209BE02D +:104BA0000120FFF7B9FD002801D1002094E000AA00 +:104BB00010A90CA8FFF7F7FD002801D100208BE019 +:104BC0000CAA01A904A8FFF7FDFE0546012D03D09C +:104BD0000FF2D420FEF774FC00202070BDF8100006 +:104BE0006070BDF910000012A07004A84188E17047 +:104BF000B0F902100912217181886171B0F90400C5 +:104C00000012A071E5710098207200980012607285 +:104C100000980014A07200980016E07201982073AA +:104C200001980012607301980014A0730198001697 +:104C3000E07301A8416821744168091261744168F8 +:104C40000914A17441680916E174816821758168AD +:104C50000912617581680914A17580680016E075F4 +:104C6000DDE906012076DDE9060100B2001260767A +:104C7000DDE906010014A076DDE906010016E07604 +:104C800006AAD2E902012077D2E9020100B200129D +:104C90006077D2E902010014A077D2E90201001680 +:104CA000E077D2E9040184F82000D2E9040100B2DF +:104CB000001284F82100D2E90401001484F82200D3 +:104CC000D2E90401001684F82300FFF7DAFC00287B +:104CD00001D1002000E0012017B030BD30B583B015 +:104CE00004460020ADF8040059484568687A002859 +:104CF00007D1286E40688047FEF761FB0A21FEF766 +:104D00004AFD0120009001AB3622B021FEF7A8FC3D +:104D1000002801D100203EBD9DF804002070002035 +:104D20006070687A002802D1286E80688047012070 +:104D30003EBD00000000000000408F4080B50178BB +:104D4000002905D1FFF7FEFE002805D0012002BD95 +:104D5000FFF7C4FF0028F9D1002002BD30B583B0B1 +:104D60000020ADF806008DF804000146012007F090 +:104D700005FC0446012007F0EFFB002801D10020CC +:104D80003EBD0120009001AB0022B021FEF768FC7F +:104D9000002801D100203EBD0DF106059DF804005C +:104DA00000F00700072812D000208DF806009DF8BB +:104DB000040040F00700687002230DF10602B021E4 +:104DC0000120FEF7F3FB002801D100203EBD0120A9 +:104DD0008DF806002220687002230DF10602B02132 +:104DE0000120FEF7E3FB002801D100203EBD022098 +:104DF0008DF806000520687002230DF10602B0212F +:104E00000120FEF7D3FB002801D100203EBD204643 +:104E10003EBD1820FFF794BB80B50020FFF790FB44 +:104E2000002801D1002002BD012002BD01207047F1 +:104E300080B5242201460948FFF7B3FB002801D1C1 +:104E4000002002BD012002BDA4800020783C01208A +:104E500008400020004CCD40004CDD40781C012073 +:104E600080B5062806D10846FFF738FF002801D193 +:104E7000002002BD012002BD0FF23801012006F022 +:104E80003BBF000078206661696C6564000000002B +:104E900079206661696C6564000000007A206661B3 +:104EA000696C656400000000636865636B2066617F +:104EB000696C00005D4D0008134E0008194E000893 +:104EC0002D4E000800000000314E000800000000D8 +:104ED0003D4D0008614E000810B504002000FEF7AB +:104EE000B7F9200010BD0000094240F10B80F446E4 +:104EF0004942404271F1000100F004F851F00041D4 +:104F00006047000008BF07F035B902460846B0FA0E +:104F100080F150408A40C1F12001C8415040C91E73 +:104F200001F58461090501EBD021400540EAD2205A +:104F3000520572F1004250F1000041F1000170474A +:104F4000B0B581EA030C0CF0004C40F2FF7515EA95 +:104F500011541DBF15EA1357AC42AF4239E0E419B2 +:104F600023EA455343F48013C90241F0004141EA6A +:104F7000505EC7021100A7FB020200284FF000009C +:104F8000EEFB01204FF00001E3FB072118BF42F0C8 +:104F90000102401800214941E3FB0E01A4F58064A1 +:104FA0000F0302D252004041494154F101046CDD2B +:104FB000470872F1004250F1000051EB0451A1F595 +:104FC00080115CBF41EA0C01B0BD4CEA05510020E4 +:104FD000B0BD05EA1357AC4214BFAF4241E050EAFE +:104FE000410E1CBF52EA430E02E061460020B0BDF4 +:104FF00024423C441BD15FEA070EF6D0090302BFEE +:1050000001460020AEF1140EB1FA81F7AEEB0704B1 +:1050100001FA07FE0C37C7F1200100FA07F7C84074 +:105020004EEA000E23EA455343F48013A2E733F01F +:105030000043B3FA83F704BFB2FA82FE77440B3F12 +:10504000E41BB7F1200E2FBF02FA0EF3BB40C7F1ED +:10505000200E22FA0EFE38BF43EA0E03BA40641C4B +:1050600082E750EA410E14BF52EA430E6FF000018E +:105070004FF4001717EB430F8ABF194617EB410F88 +:10508000B5E74CEA05510020B0BDD4F10104B4F1FC +:1050900020070FDAC4F12007520828BF42F00102AE +:1050A00010FA07F501FA07F7E1BF2A43E040384359 +:1050B000E1400FE0352C98DCC7F1200452EA4002B1 +:1050C00020FA07F218BF42F0010231FA07F0A140BE +:1050D0000A43002172F1004250F1000051EB0C0133 +:1050E000B0BD00000020704710B500220DE010F8A0 +:1050F000014B84EA12231C0683EA14731C0384EA1E +:10510000022282EA43125A4092B20B46591E9BB2C7 +:10511000002BECD1104610BD0021DFF8402902EB36 +:10512000C103984201D108467047491C09B20829B9 +:10513000F5DB0FE00021DFF8242952F831302BB1E4 +:1051400093F90030984201D108467047491C09B2D2 +:105150000829F2DB4FF0FF3070470021DFF800290B +:1051600052F831302BB193F90030984201D1084602 +:105170007047491C09B22129F2DBEBE710B5044660 +:1051800094F900000828BCBF94F9010002280ADA4B +:1051900094F908000728BFBF94F90900072894F97B +:1051A0000A00072802DB4FF0FF3010BDE06A48B16B +:1051B0006221FFF799FFE16AB1F86210814214BFE2 +:1051C0000020012094F9001059B9216CDFF89828CB +:1051D00091421CBFDFF89428914202D06FF00F007B +:1051E00010BD08B1002010BD6FF0060010BDFEB567 +:1051F00000240021DFF86C280B019D56854220D148 +:1052000000259E180EE0DFF8541801EBC0008188DD +:10521000CA0705D441F0010181800120B840044350 +:105220006D1C2DB23089854210DAA81990F90A70E8 +:105230003846FFF77FFF10F1010FE4D14FF0FF3048 +:10524000FEBD491C09B22129D6DB0EE06CB1DFF8A6 +:105250002008406CC168080007D00020009002942C +:105260000220ADF8040000A888470020FEBDC01A47 +:1052700000B51040012908D1C2F35E016FF0004370 +:105280005940084218BF60EA02000199029A81FB66 +:10529000000110F5006041F10001C2F1180207F0B1 +:1052A00047FE002906DB02DCB0F1004F02D36FF0AD +:1052B000004000BD4FF0FF334FF00042994203DC45 +:1052C00001DB904200D2104600BD00002DE9FC47F2 +:1052D000894680469A4689F8082000251446D8F861 +:1052E000000000682918002691F9081009EB8507CD +:1052F000062946D8DFE801F00428272B2A2E2D00A6 +:105300000C2C18BF182C3CD1FE606D1C032DE6DB65 +:10531000DAF800100A98002906D5D8F804100029F8 +:1053200002D40168491C0160D8F80430CAF8003082 +:105330000268DFF8040A406C0168484607F009FE7D +:105340000020BDE8F6870126002104E001260121A6 +:1053500001E00126022108EB810C0C2C07D0182C4F +:105360000FD1182200F010F8F86036B9CDE70C2202 +:1053700000F00AF8F860002EC7D0F8684042F860E4 +:10538000C3E74FF0FF30DCE700EB850101928A694B +:105390000092CB68426890F90110DCF8080066E7DB +:1053A0002DE9F04104460D46164662213046FFF7CE +:1053B0009BFEA6F86200DFF8B87696F96000DFF889 +:1053C0009C8620B101281AD0032830D047E0FFF78F +:1053D000B1FE84461CF1010F41D008EBCC000179ED +:1053E000490701D500F03DF8002006EB800107EBEE +:1053F000800289691162401C0328F6DB2FE0FFF769 +:1054000099FE84461CF1010F29D008EBCC000179EC +:10541000490701D500F025F8002006EB800107EBD5 +:10542000800289699163401C0328F6DB17E00220A3 +:10543000FFF780FE84461CF1010F10D008EBCC0072 +:105440000179490701D500F00CF8002006EB800136 +:1054500007EB80028969D162401C0328F6DBBDE8B6 +:10546000F081224658F83C40246B2B4631462047B9 +:10547000F0B5DFF8FC15DFF8844A87B0D1E906679C +:105480000C9D012804D021D3032811D008D31DE09E +:1054900016F010061AD000F01BF8B1F902200EE049 +:1054A00016F0040612D000F013F8B1F9042006E05B +:1054B00016F008060AD000F00BF8B1F9062004EB4C +:1054C000C20054F83220526800A9904707B0F0BDDE +:1054D0002868029068680390A8680490CDE90023CA +:1054E00070472DE9F04190B004460D46164601A9DB +:1054F00000A808F0FFFF304609F063FE70680490D2 +:10550000B0680590F06806903068079000980890A1 +:10551000079800280AD50499494204914042059908 +:10552000079049420591069949420691CDE9024505 +:10553000DFF83C85DFF8C479D8E9060110F00100F6 +:1055400012D00DAB0CAA0EA9304609F02BFDCDE907 +:105550000A450020FFF701FE024607EBC20057F89C +:10556000322052680AA99047D8E9060110F00200DB +:1055700004D00120FFF7F1FD00F017F8D8E906018B +:1055800010F0805004D01C20FFF7E7FD00F00DF86C +:10559000D8E9060110F0005004D01D20FFF7DDFD12 +:1055A00000F003F810B0BDE8F081024607EBC2003E +:1055B00057F83220526802A910477FB5DFF8B0646F +:1055C00004460D46D6E9060110F0200001F0000166 +:1055D0001BD0106800B101208DF8080070569DF9AD +:1055E000081088420ED00520FFF7B7FDCDE9004531 +:1055F0000246DFF8083903EBC20053F83220526844 +:1056000000A990479DF8080030707FBD704738B5FD +:105610000446DFF85C540020C5E906000022402162 +:10562000DFF83804FDF794FEDFF8340400224FF46D +:105630008471FDF78DFE6C64606801001CBFA16879 +:10564000002902D0A864A068E864A2686168DFF855 +:10565000B00809F048FE002032BD70B5AAB00400C1 +:105660000E4614BF002E6FF013006DD094F90000A9 +:10567000FFF760FD10F1010F04D0002030606FF0E3 +:105680000B0061E02046FFF779FD10F1010F08BF24 +:105690006FF00D0058D010F1100F08BF6FF00F0021 +:1056A00052D010F1070F0CBF002501250020DFF8B4 +:1056B000AC1351F8302032B1401C00B20828F8DB9E +:1056C0006FF0120040E010F1010FF9D041F83040C6 +:1056D00001EBC000002181803060615641B900F0CB +:1056E00053F80EBF41F008014FF6F7721140818068 +:1056F000226B8188002A12BF41F004014FF6FB7231 +:105700001140818000F022F827A894F9001000F0E1 +:1057100041F8DFF8F00709F08BFDDFF8EC0709F03E +:105720008BFDE06A294609F0F7FE00F04CF800F026 +:105730003DF800F042F800F021F800F019F800F010 +:1057400011F800F009F800202AB070BD4FF6FE7283 +:105750008188114081807047D4F8EC00279000A820 +:1057600009F028BF2A4604F1D80122A8FDF780BD20 +:105770002A4604F1CC011FA8FDF77ABD2A4604F1A0 +:10578000C0011CA8FDF774BD226C8188DFF8D832F7 +:105790009A42704719B1022905D002D370470121FE +:1057A00002E0022100E00321017170470C250C2268 +:1057B00004F19C0113A8FDF75BBD182204F1A801B8 +:1057C00016A8FDF755BD002000A901EB8001626A13 +:1057D0000A61A26ACA6104EB8002401C526B4A60F3 +:1057E0000328F1DB606C0090242204F178010AA800 +:1057F000FDF73EBD2DE9F04105000E4614BF002E19 +:105800006FF013000AD095F90000FFF7A6FC10F125 +:10581000010F04D0002030606FF008007FE095F9A0 +:1058200000002128BCBF95F90810042919DA95F960 +:1058300009100629BCBF95F90A10022911DA696816 +:1058400079B10B2884BFA0F10E0103290CD9C91F1F +:105850000AD0891E012907D9C91E05D0891E04292D +:1058600002D96FF011005AE000247D4FA04657F88E +:10587000381021B1641C24B2212CF7DB02E018F1AE +:10588000010F04D1002030606FF0120047E0FFF7F5 +:10589000AEFC10F1010F04D1002030606FF00C005D +:1058A0003DE0734A95F90030D2E9060113B3012BAC +:1058B00037D0022B47D0032B4CD0042B53D0052BD1 +:1058C00057D0062B5ED0072B5FD0082B60D00A2B59 +:1058D00061D00B2B62D00E2B32D00F2B37D0102B78 +:1058E0003ED01C2B20D01D2B21D01F2B22D0202BB3 +:1058F00023D056E040F00100C2E9060147F83850D5 +:1059000007EBC8000021818030600020DFF8FC1523 +:1059100009F08AFCDFF8F00509F08EFC0020BDE8F4 +:10592000F08140F00200E7E740F08050E4E740F00B +:105930000050E1E740F00040DEE741F00101DBE725 +:1059400040F48040D8E7948040F00400D4E740F46D +:105950000040D1E740F00800C2E90601D480CDE75D +:1059600040F48030C8E740F01000C2E906015480DE +:10597000C4E740F02000C2E90601DFF8940509F011 +:105980005FFCBBE740F04000B6E740F08000B3E7C3 +:1059900040F48070B0E740F48060ADE740F4006010 +:1059A000AAE76FF00200BAE72DE9F04B04465FEA80 +:1059B000010808BF6FF013004DD024B1FFF7ACFB16 +:1059C00010F1010F02D16FF0140044E02079C007FC +:1059D00040D5274DA86C6FF007094F468047B5F9B1 +:1059E00008106889082907DA401C491C80B22981FF +:1059F000082808BF00200027688114266889CF4B3B +:105A000070431022C450C0184146001DFDF720FC11 +:105A1000B5F90E10288ACB46082908DA401C491C23 +:105A200080B2E981082808BF00204FF0000B2882CF +:105A30001022288ADFF8DC3470434146C450C01875 +:105A4000001DFDF705FCE86C80474846874218BFFB +:105A5000834500D00020BDE8F08B000038360120DF +:105A6000CC100120947E00205C8F0200B81E05003F +:105A7000688300202DE9F04CAF4CA06CA3B08047A8 +:105A80001422AE4809E089B1491E2181591CA18127 +:105A900089B2082904BF0021A181A389B4F90810A3 +:105AA00002FB03F52E58002EEDD011B9E06C8047B3 +:105AB00039E129181AA8FDF7CBFB2089401E208167 +:105AC000A089401C80B2082808BF0020A081E06C9B +:105AD00080471A98DFF8245400680FF2005790F9B5 +:105AE0000000DFF834640FF25C4A0FF23C4B28B13F +:105AF000022800F0E680C0F0AC8011E100F040F92F +:105B000058B172B60FF2544001905B4640F64C100B +:105B100000F040F900F027F9FEE7182202A904F18D +:105B20006000FDF795FB1A980079000704D5A08A5C +:105B3000401CA082C007E0D5D4E9060110F48030F3 +:105B400010D01020FFF709FB074617F1010F09D00D +:105B500000F011F90C2204F1200111A8FDF778FBE7 +:105B600000F0F6F800F0B0F909F03DFDD4E90601C7 +:105B700011F0010301D10028BFD51FA808F09DFC3A +:105B80000028BAD0002602A800EB86001822C168BF +:105B9000DFF88803FAF706FB00F500600AA9001396 +:105BA00021F81600761C032EEDDB1FAB0AAA00A914 +:105BB00008A80AF006F9D4E9060111F0010121D084 +:105BC00018208DF85800DDE90201CDE91401DFF855 +:105BD0005063BDF900000103182200F0C9F81790C6 +:105BE00000AF1822B7F9020000F0C1F8189018228F +:105BF000B7F9040000F0BBF819902020FFF7ADFAC8 +:105C000000F09EF8D4E9060110F0004020D00C20EE +:105C10008DF8580049F6E146DDE90201CDE91401AD +:105C20000C22BDF9201000F0A3F808AF17900C2249 +:105C3000B7F9021000F09CF818900C22B7F9041084 +:105C400000F096F819901F20FFF787FA00F078F817 +:105C500066E004F15400009004F150030C2202A904 +:105C60001AA8FFF733FB58B172B60FF278300190E3 +:105C70005B4640F69C1000F08DF800F074F8FEE7EB +:105C8000182202A904F17800FDF7E2FAD4E906012E +:105C900010F4804010D00E20FFF75FFA074617F18E +:105CA000010F42D000F067F80C2204F1380111A86E +:105CB000FDF7CEFA00F04CF800F006F909F0E6FC2A +:105CC0002EE000F05DF858B172B60FF298300190F6 +:105CD0005B4640F6B71000F05DF800F044F8FEE7D0 +:105CE000182202A904F19000FDF7B2FAD4E90601E6 +:105CF00010F4004010D00F20FFF72FFA074617F1DD +:105D0000010F12D000F037F80C2204F12C0111A879 +:105D1000FDF79EFA00F01CF800F0D6F809F0DFFC61 +:105D2000B4F9080020B9012003E06FF0140000E08E +:105D3000002023B0BDE8F08C68830020081F0120FC +:105D4000074655F83720526814A905EBC7001047DD +:105D5000DDE90201CDE90C0155F8372052680CA9A4 +:105D600005EBC700104731463846FDF73DBA010341 +:105D70003046FAF717BA0C2205A90EA8FDF778BA33 +:105D800004F15400009004F15003182202A91AA84B +:105D9000FFF79CBA00905246C8213046FDF736BA4C +:105DA0002DE9F0435F4CA06C8DB080471422594818 +:105DB00009E089B1491EE181591C618289B2082933 +:105DC00004BF00216182638AB4F90E1002FB03F55F +:105DD0002E58002EEDD011B9E06C80476EE02918E6 +:105DE00008A8FDF735FAE089401EE081608A401C72 +:105DF00080B2082808BF00206082E06C80470898C5 +:105E00000FF2D8150068444E90F900000FF23419D3 +:105E10000FF2CC280FF2E42718B102283BD01AD396 +:105E200049E000F060F840B172B6019740F60820F2 +:105E300000F052F800F04CF8FEE7089800790007EF +:105E400004D5E08A401CE082C00734D500F03CF85D +:105E500009F09FFC2FE004F15C00009004F158036E +:105E60000C2202A908A8FFF731FA78B172B60FF236 +:105E70000C300190434640F6162000904A46C82157 +:105E80003046FDF7C3F900F023F8FEE700F01CF8F8 +:105E900009F099FC0FE000F026F840B172B60197C6 +:105EA00040F61E2000F018F800F012F8FEE700F0AF +:105EB0000BF809F0A0FCB4F90E0008B9012000E0CD +:105EC00000200DB0BDE8F083DDE9020105AA7047AE +:105ED00031462846FDF788B9009043464A46C82116 +:105EE0003046FDF793B904F15C00009004F15803CB +:105EF000182202A908A8FFF7E9B90000CC10012078 +:105F00000D560008A153000871540008E35400081E +:105F1000BB550008A81F0120E8200120EF1B1A0034 +:105F20008014CE0968830020464D5F446F466F722F +:105F30006567726F756E6450726F63657373696EB7 +:105F4000670000004153534552543A2025732825D9 +:105F50006429202D205B25735D000000436F6E7661 +:105F600065727453656E736F724461746128266440 +:105F70006174612C202650726F636573736564448D +:105F80006174612C2032342C20265F73656E736F30 +:105F9000724C617374466F726567726F756E64548C +:105FA000696D655374616D702C20265F73656E7327 +:105FB0006F724C617374466F726567726F756E6451 +:105FC00054696D655374616D70457874656E73695D +:105FD0006F6E29203D3D20300000000025730D0A22 +:105FE00000000000436F6E7665727453656E736FC8 +:105FF00072446174612826646174612C2026507299 +:106000006F636573736564446174612C2031322C55 +:1060100020265F73656E736F724C617374466F7286 +:106020006567726F756E6454696D655374616D70E8 +:106030002C20265F73656E736F724C617374466FAC +:10604000726567726F756E6454696D655374616DC6 +:1060500070457874656E73696F6E29203D3D203000 +:1060600000000000436F6E7665727453656E736F47 +:1060700072446174612826646174612C2650726FC9 +:10608000636573736564446174612C2032342C2021 +:10609000265F73656E736F724C617374466F7265C1 +:1060A00067726F756E6454696D655374616D702CA1 +:1060B00020265F73656E736F724C617374466F72E6 +:1060C0006567726F756E6454696D655374616D7048 +:1060D000457874656E73696F6E29203D3D203000F0 +:1060E000464D5F446F4261636B67726F756E6450BB +:1060F000726F63657373696E67000000436F6E763D +:1061000065727453656E736F72446174612826649E +:106110006174612C202650726F63657373656444EB +:106120006174612C2032342C20265F73656E736F8E +:10613000724C6173744261636B67726F756E645405 +:10614000696D655374616D702C20265F73656E7385 +:106150006F724C6173744261636B67726F756E64CA +:1061600054696D655374616D70457874656E7369BB +:106170006F6E29203D3D203000000000436F6E7699 +:1061800065727453656E736F72446174612826641E +:106190006174612C202650726F636573736564446B +:1061A0006174612C2031322C20265F73656E736F11 +:1061B000724C6173744261636B67726F756E645485 +:1061C000696D655374616D702C20265F73656E7305 +:1061D0006F724C6173744261636B67726F756E644A +:1061E00054696D655374616D70457874656E73693B +:1061F0006F6E29203D3D2030000000006948704747 +:10620000F8B50C461646012500282BD106EB860072 +:10621000644901EBC007F868E040C00708D5234691 +:10622000FA6831460FF2FC20FDF74AF90220F2BD70 +:106230004FF0FF30009003462A46796820460AF066 +:1062400014FB00280CD02346FA6831460FF2E420F4 +:10625000FDF736F9F8682946A1400843F8602CE0BC +:106260000220F2BD012828D106EB86004D4901EB42 +:10627000C007F868E040C00708D42346FA683146F2 +:106280000FF2C020FDF71CF9032516E04FF0FF3395 +:106290002A46796820460AF081FB002807D0234669 +:1062A000FA6831460FF2AC20FDF70AF900E0032549 +:1062B000F8680121A1408843F8602846F2BD0BF040 +:1062C00069BA02B58AB00021ADF8221001910A2105 +:1062D0008DF8081000218DF809108DF80A1005219D +:1062E0008DF80010019004220AA90DF10900FEF7B3 +:1062F000F3FD0020ADF8220000A800F055F80BB027 +:1063000000BD80B50CF054F80FF25820BDE80240F3 +:10631000FDF7D6B838B5447885780078032810D0D2 +:106320001A281AD1012C18D101200DF034FC0123B8 +:1063300022461A210FF2382001B0BDE83040FDF7A7 +:10634000BFB8012C09D128460CF03DF829460FF2C0 +:106350003020BDE83440FDF7B3B831BD0FB480B58F +:10636000002805D10846002802D11046002804D094 +:106370000EF0CFF9C046C04601E00EF0B3F901BC03 +:106380005DF814FB00222D2809D200EB800305489C +:1063900000EBC300C068C840C00700D5012210460A +:1063A00070470000B8C8002030B585B0044601250C +:1063B00094F90000062800F2A180DFE800F004282C +:1063C000445F76979B0004F1090182B06846182269 +:1063D000FCF73EFF0CBC94F90810606840B20AF06C +:1063E00012FE02280AD1606800B20AF0F1FF00250F +:1063F00061680FF29810FDF763F885E0032840F01C +:10640000838061680FF28C10FDF75AF87CE06068B9 +:106410001A280AD104F109000BF06BFA637B227B86 +:10642000E17A0FF27810FDF74BF894F908106068E4 +:1064300040B20AF0E8FE032866D161680FF27410DA +:10644000FDF73EF860E0618C00A80AF0DBFF9DF9E3 +:10645000040002280AD1009800B20AF0B9FF002512 +:1064600000990FF25810FDF72BF84DE003284BD19F +:1064700000990FF25010FDF723F845E00EF066FA90 +:1064800002280AD1606800B20AF0A2FF0025616804 +:106490000FF23810FDF714F836E0032834D16168A4 +:1064A0000FF23010FDF70CF82EE0606805280CD1D3 +:1064B00028460EF024FB02280DD0032824D1616861 +:1064C0000FF22010FCF7FCFF1EE002281CD10EF09A +:1064D00007FC0228F1D1606800B20AF079FF0025BC +:1064E00061680FF2F800FCF7EBFF0DE020460AF0C0 +:1064F000EEFF09E020460BF09BF905E061680FF222 +:10650000EC00FCF7DDFF0025284605B030BD01207A +:1065100070470FB4022004B070470120704700207C +:1065200070477047534D4143202564202564202542 +:1065300064000000534D412025642025642025641B +:1065400000000000534D524320256420256420257F +:1065500064000000534D52202564202564202564EA +:1065600000000000504420536574535400000000A4 +:1065700041542052492D25642025642025640000C3 +:1065800050442055542D256400000000414C4F46D6 +:1065900020256400414C4346202564004F4A482092 +:1065A000454C2030782578203078257820307825A3 +:1065B00078000000524C434620256400504C4F4662 +:1065C00020256400504C43462025640050414F462E +:1065D00020256400504143462025640050504F461A +:1065E0002025640050504346202564004558204C27 +:1065F0004D454C2025640000DFF89405704730B508 +:1066000083B00020ADF806008DF804000120009052 +:1066100001AB002218210220FDF722F804469DF864 +:10662000040048281FD131208DF806000DF1060521 +:106630000120687002230DF1060218211846FCF7AC +:10664000B5FF00280DD031208DF8060000206870BD +:1066500002230DF1060218211846FCF7A7FF0028B7 +:1066600002D100203EBD00241C220021DFF82005BD +:1066700003F0ADF920463EBD70B582B00020ADF804 +:1066800000000EF092FB0446DFF808058168497AA5 +:10669000C268527A51180069407A0818012801DB53 +:1066A000012076BDDFF8F054687801281CD0322034 +:1066B0008DF8000000AE01207070022300AA18219E +:1066C0001846FCF773FF00280CD031208DF800002D +:1066D00001207070022300AA18211846FCF766FFFB +:1066E000002803D1002076BD01202870281D616993 +:1066F0008847012076BD38B50020ADF800000EF0C7 +:1067000054FB0446DFF88C048168497AC268527AE7 +:1067100051180069407A0818022801DB012032BDB7 +:10672000DFF874542878012812D031208DF8000049 +:1067300000208DF80100022300AA18211846FCF75A +:1067400035FF002801D1002032BD0020687001E033 +:1067500000202870281D21698847012032BD80B59E +:106760000020ADF8000031208DF8000000208DF8E9 +:106770000100022300AA18211846FCF717FF002881 +:1067800001D1002002BD012002BD7CB504460020DD +:10679000ADF806008DF804000120009001AB002246 +:1067A00018210220FCF75CFF05469DF804004828EC +:1067B00029D131208DF806000DF106061F207070DA +:1067C00002230DF1060218211846FCF7EFFE0028FF +:1067D00017D0032000902346602218210220FCF7E6 +:1067E0003FFF00280DD031208DF80600002070708A +:1067F00002230DF1060218211846FCF7D7FE0028E7 +:1068000002D1002076BD0025284676BD0021E34A4E +:1068100002E00B5C8B54491C1B29FADBE048C0F8F2 +:106820001424012070472DE9F04387B004460D463B +:1068300016461F464FF000084046ADF8040002A877 +:1068400041460A460B460EC04FF0050906C001201E +:10685000009002AB102218210220FCF701FF9DF8E6 +:106860000810C9070ED501280CD1082000900DF1A1 +:106870000903112218210220FCF7F2FE002807D19B +:1068800040467EE04846A0F1010980B20028DED1F2 +:10689000C4489DF80810017002A90A7A4270CA79AA +:1068A00082704A78C2708A780271CA7842710A7915 +:1068B00082714A79C271897901720AE002A800EBFB +:1068C00048008178407810EB012024F8180008F186 +:1068D0000108B8F1030FF1DBAE48D0F80C8008F1E5 +:1068E0000C0999F815202146D9F80C00D8F80C307D +:1068F000C018FEF7F1FA404609F00AFE99F8152093 +:10690000D9F80C00D8F80C1041182046FEF7E4FA2C +:10691000DFF88C8205AA214640460EF0F1FCB8F95A +:106920000803404490F905033860B8F8FC0028805B +:1069300008F1FC00418869808188A98081892180D3 +:10694000C1896180008AA08020882988401A30800F +:1069500060886988401A7080A088A988401AB08031 +:1069600031208DF8040001208DF80500022301AAD2 +:1069700018211846FCF71AFE002801D1002000E07B +:10698000012007B0BDE8F08330B585B00446002093 +:10699000ADF8040002A800210A460B460EC00525EA +:1069A0000120009002AB102218210220FCF758FEB3 +:1069B0009DF80810C9070ED501280CD108200090B9 +:1069C0000DF10903112218210220FCF749FE0028CD +:1069D00006D1002029E02846451E80B20028DFD1DC +:1069E00070489DF80810017002A90A7A4270487830 +:1069F000207088786070C878A0700879E070487955 +:106A000020719DF80E00607131208DF80400012086 +:106A10008DF80500022301AA18211846FCF7C6FDCF +:106A2000002801D1002000E0012005B030BD2DE993 +:106A3000F0410446002500F09BFA0746FFF7DCFD15 +:106A400006465448D0F81080F86E40070BD406F183 +:106A5000140306F10C02B11D3046FFF7E4FE0028D6 +:106A600001D1284652E098F80A00012849D14D4842 +:106A70000178217041786170C178A1700179E1706D +:106A80004179217181796171C179A171007AE071D7 +:106A90004348418F2172B0F93A100912617200F235 +:106AA0003A014A88A272B1F902201212E2728A886F +:106AB0002273B1F9041009126173B0F80211A173C5 +:106AC000B0F902110912E17300F202104188217439 +:106AD000B0F90210091261748188A174B0F9040040 +:106AE0000012E074284620750FE006EB4500C188CF +:106AF00004F8151004EB4501B0F9060000124870C7 +:106B00006D1C032DF1DB7069A0710120BDE8F081DF +:106B1000F8B50446002500F02BFA0746FFF76CFD98 +:106B20000646F86E000705D52046FFF72DFF002822 +:106B30002CD109E006F1140306F10C02B11D304618 +:106B4000FFF771FE002814D12846F2BD36F8150073 +:106B500004F8150004EB450036F9151009124170D0 +:106B600006EB45018A898271B1F90C100912C171D5 +:106B70006D1C032DEADB00F0B4FA4FF47A71484340 +:106B8000B0611C2231460248FEF7A6F90120F2BD91 +:106B900008390120084000201C3A0120EC3801206F +:106BA000A0DB0020E03A01207CB504460020ADF8CF +:106BB00006008DF80400FCF702FC05460120009059 +:106BC00001AB002218210220FCF74AFD9DF80410B9 +:106BD000482932D131208DF806000DF106061F201C +:106BE000707002230DF1060218211846FCF7DEFC36 +:106BF00000281BD031208DF8060000207070022381 +:106C00000DF1060218211846FCF7D0FC00280DD023 +:106C100001212846FCF7BFFD0120009001AB312285 +:106C200018210220FCF71CFD002801D1002076BDB0 +:106C30009DF804002070012076BDFF21217076BDF3 +:106C40002DE9F04387B0044604A800210A460B460C +:106C50000EC00846ADF80C004FF00509FCF7AFFB7D +:106C600005460220009004AB00221821FCF7F8FC36 +:106C700006469DF81000482840F00B819DF8100052 +:106C8000207004AF7878607031208DF80C000DF121 +:106C90000C081F2088F80100022303AA18211846B7 +:106CA000FCF784FC002800F0F5800320009004AB82 +:106CB000602218210220FCF7D3FC002800F0EA80B3 +:106CC0009DF81000A0707878E070B87820713120BD +:106CD0008DF80C00002088F80100022303AA182177 +:106CE0001846FCF763FC002800F0D48001200090D7 +:106CF00004AB312218210220FCF7B2FC002800F07E +:106D0000C9809DF81000607531208DF80C000120BD +:106D100088F80100022303AA18211846FCF746FC54 +:106D2000002800F0B7801E212846FCF734FD012022 +:106D3000009004AB102218210220FCF791FC0646BB +:106D40009DF81000C0070DD5012E0BD10820009032 +:106D50000DF11103112218210220FCF781FC0028FB +:106D600006D160E04846A0F1010980B20028DED1DA +:106D7000B87902907879019038790090FB78BA78E8 +:106D800079780FF26C10FCF79BFBB878797811EBEF +:106D900000203979FA7812EB0121BA797B7913EB6B +:106DA000022203461BB21B126371A071084600B297 +:106DB0000012E0712172104600B200126072A272DD +:106DC0009DF81000E072387A207331208DF80C00A5 +:106DD000102088F80100022303AA18211846FCF7A6 +:106DE000E5FB002856D01E212846FCF7D4FC4FF0C6 +:106DF00005090120009004AB102218210220FCF7A5 +:106E00002FFC06469DF81000C0070ED5012E0CD1B0 +:106E1000082000900DF11103112218210220FCF727 +:106E20001FFC002807D1002035E04846A0F10109E9 +:106E300080B20028DDD1B879029078790190387954 +:106E40000090FB78BA7879780FF2C000FCF738FB35 +:106E5000B878797811EB00203979FA7812EB0121B2 +:106E6000BA797B7913EB022203461BB21B126373C0 +:106E7000A073084600B20012E0732174104600B2FD +:106E800000126074A2749DF81000E074387A2075C6 +:106E900000E00026304607B0BDE8F08318B4044691 +:106EA0000B4611460020032C04D0042C05D0072CDF +:106EB00006D008E0184614BC67E4184612BC73E616 +:106EC000184612BCA2E412BC704710B50FF2580469 +:106ED0002146022004F010FF0FF27001042004F09C +:106EE0000BFF21460320BDE8104004F005BF000061 +:106EF000474D53312D25642C2025642C2025642CEE +:106F00002025642C2025642C20256400474D533215 +:106F10002D25642C2025642C2025642C2025642C10 +:106F20002025642C20256400FF6500087966000890 +:106F3000F76600085F67000800000000116B00089A +:106F400000000000416C00089D6E0008FF6500080D +:106F500079660008F76600085F6700080000000017 +:106F60002F6A000800000000416C00089D6E0008B8 +:106F700000487047681E0120DFF8500E0078704707 +:106F80002DE9F0418AB0FFF7F3FF0446DFF8405ED9 +:106F90002E6842E096F9080007283DD00B283BDA1E +:106FA000062839D006F10807B86C002803D5D4F8B4 +:106FB00080100818B8644FF0FF313046FA6D9269BE +:106FC00090478046B8F1010F04D197F84C00B96D95 +:106FD00009698847B8F1020F0BD1797E38697A6860 +:106FE0008018BA6D52699047002802D0304609F0E7 +:106FF0008FFA00213046FA6D92699047022801D13C +:107000000120B87501213046FA6D92699047022837 +:1070100002D1304609F020FB3668AE42BAD1D4E93D +:107020001C01002901D100280CD00A208DF808008D +:1070300002208DF80000D4F88000ADF8220000A8EE +:10704000FFF7B2F901200AB0BDE8F08130B585B094 +:1070500004460D46CA208DF800002888ADF80100CE +:107060000220ADF80300BDF80100001D0EF0C2FBC8 +:10707000CDF8090002220DF10301FDF72DFF0222D8 +:107080002946DDF80900801CFDF726FF2A882146E5 +:10709000DDF80900001DFDF71FFF0020288000A972 +:1070A000DFF8300D0EF0CEFB05B030BDC0F540600E +:1070B000322801DA012070470020704780B5FCF7C4 +:1070C0007EF9407B002804D009F0A8F9DFF8081DFC +:1070D000086001BD80B509F0A1F9DFF8001D086066 +:1070E00001BDDFF8F80C0068704718B400F10C031C +:1070F0000422DFF8E81C5C7DDB68C06818182018E3 +:1071000018BCFDF7E9BE30B41488651C1580052550 +:1071100065541488651C1580635413885C1C1480A6 +:10712000007A585430BC70472DE9F04182B00446D3 +:107130000F4615461E463088411C31803721415587 +:107140003088411C3180217A415504F1080898F8B3 +:107150001920D8F80400391830884019FDF7BCFE12 +:10716000308898F819104018308098F81900D8F82D +:10717000041079184058DFF8601C0968401A009024 +:10718000042200A930884019FDF7A6FE3088001DB2 +:10719000308080B2FFF78AFF002803D031462846AE +:1071A000FFF754FF94F90800162808D1D8F810000A +:1071B000D8F80410415C0FF20C00FCF781F9BDE82F +:1071C000F38100002323205368616B652025640050 +:1071D0002DE9F04104460D4616461F46DDF818809D +:1071E00008E043463A4629462046FFF79DFF94F8BB +:1071F00022002D18B542F4DBBDE8F081F8B5044655 +:1072000015461E46069F00972269FFF7E1FF206999 +:10721000854206DA009733462A4600212046FFF7CA +:10722000D7FFF1BD00F110018A688B7CD2188A600B +:107230000069824201D10020886000208873704775 +:1072400070B582B000F1140674684569002D07D549 +:1072500000920B462246B17B6118FFF7CFFF73BD4A +:10726000AC4200920B462246294602DAFFF7C6FFDF +:1072700073BDFFF7ADFF73BD70B504460D461646EE +:10728000FFF7DEFF0123324629462046FFF73BFF8A +:10729000A069606170BD2DE9F84304460D461646AD +:1072A000FFF766FE8046FCF78AF881462046FFF726 +:1072B0001CFF04F10807386C012849DB99F80A0023 +:1072C000002821D0B87D002868D000207864B87EDE +:1072D0003A69F9688B1A834205D0002910D1BB683E +:1072E0009B1A83420CD13B7E002B06D000962B4686 +:1072F00082182046FFF782FF02E04FF0FF30F8606F +:107300002046BDE8F2438DE7786CD8F88010401A2B +:107310007864012815DA386C7864324629462046AC +:10732000FFF78EFFB87D002808D033462A4639691A +:107330002046FFF7F9FE2046FFF774FF3869F86032 +:107340002CE0B87D002829D02046BDE8F24369E74B +:10735000B87D002822D099F80A00002813D094F9AB +:107360000800072801D0162813D133462A46396968 +:107370002046FFF7D9FE7A7894F908100FF2200022 +:10738000FCF79EF805E033462A4639692046FFF7A8 +:10739000CBFE2046FFF746FF3869F860BDE8F18371 +:1073A000415020537573202564202564000000009F +:1073B0002DE9F04104460D46DFF8146A37681BE0FA +:1073C00097F90800062811D107F1080898F8191054 +:1073D000D8F81000D8F804208018D8F8582052693E +:1073E0009047002802D0012088F816002A4621463E +:1073F0003846FFF750FF3F68B742E1D1BDE8F08162 +:10740000F8B504460D46DFF8240CC6690FF23400C7 +:10741000FCF756F806F10C07797DF868F2688018D9 +:107420007A6D52699047002809D00120B874707AAB +:10743000002804D02A4621463046FFF72CFF0120C1 +:10744000F2BD00003D3E5055500000000288D21CA5 +:1074500002800A80704780B50B889B1AADF8003017 +:10746000BDF80030002B09D01018012100F8031CD2 +:10747000022200A9801EFDF72FFD01BD0888C01E55 +:10748000088001BD2DE9F04FADF64C1D04460D46B8 +:10749000FFF76EFD0746FBF792FF804610A840F607 +:1074A0000811FAF7D1FF00208DF8020006A8282164 +:1074B000FAF7CAFF01A81421FAF7C6FF0020ADF8B9 +:1074C00000000646D7E91C01002902D1002800F07F +:1074D000748398F909000AF081F8002800F06D83A0 +:1074E00000A92846FFF7B2FFB0461CE0D7E91C010F +:1074F00042460EF0D7F900F0010011F0000101D171 +:1075000000280ED008EB8800DFF8241B01EBC00236 +:1075100092F90900012804D10DF1020110A8126AA4 +:10752000904708F10108B8F12D0FDFDB37461AE06C +:107530002888411C298099F8021001552888FFF7F6 +:10754000B5FD00280DD0BDF8002029462046FFF7E4 +:1075500082FF29462046FFF779FD00A92846FFF75C +:1075600075FF7F1C7FB29DF80200874280F21D8369 +:107570002988481C288040F2211010FB07F010AA2F +:10758000825C0A5529884A1C2A8010AA00EB02084E +:1075900098F8010008552888411C298008F1010944 +:1075A00099F80110015599F8010003281ED0092807 +:1075B00000F049810C2800F023811A2800F0428253 +:1075C0001B2800F056811C2800F070821D2800F056 +:1075D00063811E2800F05A82252800F0998226280F +:1075E00000F0D382282800F0AE82A1E798F80100CD +:1075F000032805D12888411C298099F802100155DB +:107600002888411C298099F80310015599F8030036 +:10761000C0280DD1B8F83020D8F8321028880019C9 +:10762000FDF75AFC2888B8F830100818288085E73C +:10763000711C00064ED401A808F10402527832549D +:10764000C9B298F806200A54491CC9B200220A544B +:107650004A1C08F20601D2B24B781354521CB8F8F7 +:107660000E30D2B21E0A1654521CD2B21354521CFF +:1076700008F20E03D2B29E781654521CD2B2DB78B6 +:107680001354521CD2B298F812301354521CD2B276 +:1076900098F813301354521CD2B28B781354521CE6 +:1076A000D2B2C9781154511CC9B298F80A200A54B0 +:1076B000491CC9B298F80B200A544E1CF6B2324647 +:1076C00001A928880019FDF707FC288850FA86F0E0 +:1076D000288033E7D8F8052006A8130C3354C9B224 +:1076E000130A0B54491CC9B20A54491CD8F8092082 +:1076F000C9B2130C0B54491CC9B2130A0B54491CD0 +:10770000C9B20A54491CD8F80D20C9B2130C0B5445 +:10771000491CC9B2130A0B54491CC9B20A54491C6A +:10772000D8F81120C9B2130C0B54491CC9B2130A62 +:107730000B54491CC9B20A54491CD8F82720C9B2B5 +:10774000130C0B54491CC9B2130A0B54491CC9B27F +:107750000A544A1C08F22701D2B20B791354521C66 +:10776000D2B24B791354521CCB88D2B21E0A165493 +:10777000521CD2B21354521CD2B2097A1154511C69 +:10778000D8F81520C9B2130C0B54491CC9B2130AFE +:107790000B54491CC9B20A54491CD8F81920C9B263 +:1077A000130C0B54491CC9B2130A0B54491CC9B21F +:1077B0000A54491CD8F81D20C9B2130C0B54491C9B +:1077C000C9B2130A0B54491CC9B20A54491CD8F84F +:1077D0002120C9B2130C0B54491CC9B2130A0B5413 +:1077E000491CC9B20A544E1CF6B2324606A9288872 +:1077F0000019FDF771FB288850FA86F028809DE675 +:1078000008F10301B1F90300C0F3072242EA0020A6 +:10781000A1F80300B1F90700C0F3072242EA0020F3 +:10782000A1F80700B1F90500C0F3072242EA0020E1 +:10783000A1F80500092228880019FDF74DFB2888CA +:10784000093028807AE62888034698F80110032931 +:1078500009D1022208F103011819FDF73DFB288820 +:10786000801C28806AE6401C288099F80200185580 +:1078700064E62888411C298099F80210015598F87F +:10788000010005287FF45AAE2888411C298008F1A0 +:1078900004014978015551E608F1030998F80100FF +:1078A000012840F0BF802888411C298099F80410E5 +:1078B00001554FF0000A9CE01B2010FB0A9BDBF8EF +:1078C0000C20DBF808100FF2FC20FBF7F9FDDBF8C9 +:1078D0001800010221F0FF11000A00F0FF10084318 +:1078E000CBF818004FEA3040CBF8180004220BF117 +:1078F000180128880019FDF7EFFA2888001D288054 +:10790000DBF80800010221F0FF11000A00F0FF106F +:107910000843CBF808004FEA3040CBF808000422B7 +:107920000BF1080128880019FDF7D6FA2888001DF8 +:107930002880DBF80C00010221F0FF11000A00F0A2 +:10794000FF100843CBF80C004FEA3040CBF80C0096 +:1079500004220BF10C0128880019FDF7BDFA2888D4 +:10796000001D2880DBF81000010221F0FF11000A41 +:1079700000F0FF100843CBF810004FEA3040CBF87E +:10798000100004220BF1100128880019FDF7A4FA59 +:107990002888001D2880DBF81C00010221F0FF115F +:1079A000000A00F0FF100843CBF81C004FEA3040FB +:1079B000CBF81C0004220BF11C0128880019FDF7EC +:1079C0008BFA2888001D2880BBF81600010A41EABE +:1079D0000020ABF8160002220BF1160128880019CE +:1079E000FDF77AFA2888801C28800AF1010A5FFADC +:1079F0008AFA99F804008245FFF65EAFB8F81B21B9 +:107A0000D8F81D1128880019FDF766FA2888B8F8FB +:107A10001B1108182880B8F81B110FF2B810FBF7DB +:107A20004FFD8BE505287FF489AD2888411C29800E +:107A300099F8021001552888411C298099F80310F3 +:107A400001557BE508F1030198F80100032805D1F1 +:107A50002888421C2A8098F80A200255D1F8010093 +:107A6000020222F0FF12000A00F0FF101043C1F8DA +:107A700001004FEA3040C1F80100072228880019B0 +:107A8000FDF72AFA2888C01D288057E508F1030170 +:107A90000888020A42EA0020088002222888001989 +:107AA000FDF71AFA2888801C288047E508F10300B2 +:107AB00098F8011001297FF441AD99F802100129CD +:107AC00018D129884A1C2A8000780855B8F8042063 +:107AD000D8F8061028880019FDF7FEF92888B8F8AC +:107AE000041008182880B8F804100FF2FC00FBF707 +:107AF000E7FC23E502297FF421AD29884A1C2A806E +:107B000002780A5529884A1C2A80C079085515E54B +:107B10002888411C2980B9F8021001552888411C89 +:107B20002980B9F9021009120155B9F90220D8F8D3 +:107B3000051028880019FDF7CFF92888B9F9021037 +:107B400008182880FAE42888411C2980B9F8021016 +:107B500001552888411C2980B9F9021009120155E4 +:107B60002888411C298008F1040149780155B9F998 +:107B70000220D8F8061028880019FDF7ADF92888EA +:107B8000B9F9021008182880D8E408F10301088820 +:107B9000020A42EA00200880022228880019FDF724 +:107BA0009BF92888801C2880C8E4BDF8002029465D +:107BB0002046FFF750FC09F03FFD0DF64C1DBDE8D7 +:107BC000F08F00004C54204E4D4720256420256442 +:107BD000000000004F4A483A204154424420736953 +:107BE0007A653A20256400004F4A483A20415044C3 +:107BF000522073697A653A20256400002DE9F0412E +:107C000005460E46FBF7DBFB0746DFF8C44D207840 +:107C1000401C20706078F021084202D0992003F0C7 +:107C200011F903F07CF96078401C607097F81880B7 +:107C3000B8F1000F26D03088404480B2FFF736FA02 +:107C4000002803D031462846FFF700FA3088411C4F +:107C50003180032141553088411C318000F8058076 +:107C6000424607F1190130884019FDF735F930888F +:107C700040443080FF22002107F1190001F0A7FEE7 +:107C8000002038766078F021084202D0992003F075 +:107C9000D9F86078401E6070C0B2002801D103F0AE +:107CA00038F9BDE8F041FCF764B938B504460D4633 +:107CB000FBF785FB817A002909D1417B002906D198 +:107CC00029884A1C2A8006220A550121417331BDA8 +:107CD00038B504460D46288800280CD02046FFF70A +:107CE0008DFF29462046FFF7E0FF29462046BDE8E4 +:107CF0003440FFF7ABB931BD14B585B0049101A98B +:107D00000022134614461CC10A21ADF800100421BC +:107D10008DF804108DF805000A4605A90DF106003E +:107D2000FDF7DAF8042204A90DF10A00FDF7D4F8F2 +:107D300000A901A8FFF78AF906B010BD80B5FBF7CE +:107D40003EFB4FF49671FBF726FD07208DF80200ED +:107D50000120ADF8000000A90DF10200FFF776F94F +:107D600001BD2DE9F041DFF86C4C6068002828D097 +:107D7000218888421FD00DF03DFD054666682788A2 +:107D8000A6EB07081FFA88F84246381900F10801E7 +:107D90002846FDF7A1F83A4604F1080108EB050072 +:107DA000FDF79AF83246294604F10800FDF794F8E9 +:107DB00028460DF037FD626804F108010520FFF741 +:107DC0009BFF002060602080BDE8F081B83A012070 +:107DD000E0490020E4B00020B03C0120B43C012088 +:107DE00080B5FFF7C5F8062180F884108430417013 +:107DF00007218170C170017101BD2DE9FC4105466B +:107E00000F469046FBF7DBFA0026D5F809100C1D4B +:107E10002A78114601295BD00F2932D0352936D076 +:107E2000802900F08180812900F08880822900F07B +:107E30008580852900F08280862900F07F8088294E +:107E40007CD08A2900F082808B2900F09B808C29CD +:107E500000F0A7808D2900F0AF80DD2900F0B98007 +:107E6000DF2900F0CF80F02914D0F4291DD0F629A5 +:107E700023D0F82941D0F9292FD0FF2900F0A18083 +:107E800059E0807D2070FFF7ABFF012054E0012016 +:107E9000207051E00422DFF8401B2046FDF71CF85B +:107EA000012002F0FBFD012046E0042200F1100158 +:107EB0002046FDF711F801203EE00322214630461E +:107EC000DFF8183B9B681B6E1B6A9847012033E064 +:107ED00020460DF015FD01202EE0B5F80120B5F883 +:107EE0000300C010C0EB0011D5F8050000EB8111B4 +:107EF0002046FCF7F1FF01201EE03046ADF80400FB +:107F000001206979012900D1032002F04EF802F026 +:107F100088F8ADF8040002F09BF8022201A920467F +:107F2000FCF7DAFF012007E0D5F8050020702146B4 +:107F3000304608F03EFC3046BDE8F6813046207001 +:107F4000214602F07F0008F034FCF4E701202070A5 +:107F5000DFF8880A45683746287F002801D1304677 +:107F6000EAE7687A002803D1286E40688047074610 +:107F70002046296EC9698847002FDCD0286E8068AA +:107F80008047D8E70120B5F80310C1F3C101091DEE +:107F9000884040F0020020702146012008F009FCD2 +:107FA000C9E701782170C17861704179A170807949 +:107FB000E07001202071BFE720460DF0B5FC0646B9 +:107FC000B9E704F10802211D204602F017FE012046 +:107FD000B2E76879DFF8041A51F82050687A00286F +:107FE0000CD0424639462846FFF746F9DFF8F0192B +:107FF00008200DF05BFD0120207001E0304620706C +:10800000012099E76879DFF8D41951F820502869E0 +:1080100095F8221090FBF1F0401E0090042200A978 +:108020002046FCF759FF012086E7000008400020A9 +:10803000B8C80020F0B593B00646FBF7C0F9054676 +:10804000FEF796FFD6F809100C1D31780022089231 +:108050004FF0FF32099217460A46A12A00F05A81D2 +:10806000A22A00F07981A42A00F08481B12A00F0CC +:10807000F982B22A00F06A84B82A00F09681C12AF7 +:1080800000F0BE81CD2A00F08280CE2A00F0AC80C4 +:10809000CF2A00F09E80D02A38D0D12A2ED0D22AE2 +:1080A00039D0D32A40D0D42A42D0D62A4DD0D72A8C +:1080B0004BD0D82A51D0D92A4FD0DB2A00F01581D5 +:1080C000DC2A00F01981F12A4FD0F22A00F0A480B6 +:1080D000F32A00F0E880F52A00F0C080F72A00F0CB +:1080E000D380FA2A00F06984FB2A00F05984FD2A23 +:1080F00000F0BF80FE2A00F06284ACE00021284638 +:10810000FBF787FBFFF72DFE0120A5E0002002F022 +:10811000C5FC0120A0E001212846FBF77AFB0120E5 +:108120000DF014FD012097E00020A872012093E0DB +:108130000120A87200206873E87A002840F03D848E +:1081400001200DF003FD00F038BCD62901D101203B +:1081500000E00020E87201207EE0D92901D1012051 +:1081600000E000202873012076E00021032980F23E +:1081700024840A180B5D82F88430022905D10A5D37 +:1081800080F887200A5D80F88820491CEEE70025EA +:10819000DFF8507816E0DFF84408466806EB45063D +:1081A000022204EB450106F15800FCF795FEB6F9F2 +:1081B0005800811007EB85004160DFF82C08FBF7C1 +:1081C0007FF96D1C032DE6DB381DFCF7A6FB0120B3 +:1081D00042E02078DFF8141808700146DFF8100834 +:1081E000FBF76EF9012037E00025032D80F2E583CF +:1081F000DFF8E807066806EB4506022204EB4501B6 +:1082000006F15800FCF768FEB6F95810DFF8E407ED +:10821000FBF756F96D1CE8E7297C090640F1CD8390 +:108220002178090201F4E06162788918A0F88A10C7 +:10823000A178090201F4E061E2788918A0F88C10B5 +:1082400004212046DFF89427D269126E9269904784 +:10825000002840F0B283002013B0F0BD0322214675 +:108260000120DFF878379B681B6E1B6A9847012056 +:10827000F2E71B2221460720DFF860379B681B6E60 +:108280001B6A98470120E7E7DFF850078669306EE0 +:10829000806880470028DED0012221460520336E09 +:1082A0001B6A9847D7E7217880F88E1090F88E00E7 +:1082B000002806D04FF480510020FBF7E3FA01209C +:1082C000CAE7DFF81807C169497A826A527A5118F9 +:1082D0008069407A4018C0B2002840F06E834FF4A5 +:1082E00080510020FBF7D0FA67E3D6F80510DFF8DD +:1082F0000807FBF7E5F8AEE703F038F9002802D0ED +:1083000003F055F9A7E703F0B6F90028A3D003F06E +:1083100085F9A0E794F900500422611C08A8FCF735 +:10832000DBFDB6F80100062806DB0422611D09A862 +:10833000FCF7D2FD94F90970042D04D1DFF89C06F6 +:108340000069A17A81720097099B0022089928464A +:1083500008F08BFA20707EE794F900500422611C2B +:1083600008A8FCF7B9FD00231A460899284608F02A +:1083700015FB71E794F900500422611C08A8FCF772 +:10838000ABFDB6F80100062806DB0422611D09A832 +:10839000FCF7A2FD94F909700097099B0022089947 +:1083A000284608F069FB207055E72078014603292C +:1083B00006D01A2911D0252913D0282915D018E064 +:1083C00060788DF80A00012840F0F782A0788DF8D7 +:1083D0000B002046FDF79EFFEFE22046FDF79AFFD7 +:1083E000EBE22046FDF796FFE7E22046FDF792FF1D +:1083F000E3E294F9011040B209F0C0F9C0B22BE7F2 +:10840000207801460E3908D0091F03291CD9091FFD +:1084100037D0491E00F09B800EE10E208DF8080039 +:1084200060788DF80A00A1788DF80B10E2788DF84D +:108430000C200023ADF80D3052B249B240B2FBF728 +:1084400039FAFDF75EFFF7E08DF80800122802D137 +:1084500061788DF80A10132802D161788DF80B101D +:10846000142802D161788DF80C10152802D160789B +:108470008DF80A0062782178DFF88005FBF720F894 +:10848000DAE06078A178090401EB0060E17800EBA4 +:10849000012021794018CDF80A006079A1790904FA +:1084A00001EB0060E17900EB0120217A4018CDF862 +:1084B0000E00607AA17A090401EB0060E17A00EB1A +:1084C0000120217B4018CDF81200607B8DF816004A +:1084D000A07B8DF81700E07B8DF81800207C8DF8CC +:1084E0001900607C8DF81A00A07CE17C11EB002063 +:1084F00000B20146ADF81B10217D00EB0120617D2B +:108500004018ADF81D00A07D8DF81F00DDF80A00B1 +:10851000002807D1DDF80E00002803D1DDF8120095 +:10852000002809D00DF10A0184B068461622FAF736 +:108530008FFE0FBCFBF766FA0DF10A0184B06846A6 +:108540001622FAF785FE0FBCFDF708FF74E060788D +:108550008DF809001D283ED1A0788DF81300A07871 +:1085600001280ED1E078217911EB0021ADF80A1035 +:1085700089B20A469DF809100FF28440FAF7A0FF6D +:108580005AE002280BD1E078217911EB0021ADF8F7 +:108590000C1089B20FF27840FAF792FF4CE00328F2 +:1085A0000BD1E078217911EB0021ADF8141089B2DC +:1085B0000FF26840FAF784FF3EE004283CD1E078EF +:1085C000217911EB0021ADF8161089B20FF2584055 +:1085D000FAF776FF30E0262809D1A0788DF80E0052 +:1085E000A078012828D1E0788DF80D0024E01C281F +:1085F00022D1A0788DF80D00A078012807D1E1786C +:108600008DF80A100FF22C40FAF75AFF14E00228F6 +:1086100007D1E1788DF80B100FF22C40FAF750FFDC +:108620000AE0032808D0052806D1E1788DF80C105F +:108630000FF22840FAF744FF06208DF82800207832 +:108640000B900DF1310002A91822FAF701FE0B2060 +:108650008DF830000020ADF84A000AA8FDF7A4FE0E +:10866000C0B2F9E594F9000008F021FB012840F0C0 +:108670003F8120780146032924D0062961D00929A9 +:1086800027D00C2941D00D294DD019297DD01A2988 +:1086900064D01B2900F08E801C2900F0C9801D29A0 +:1086A00000F0A1801E2900F0D080252900F0E9808B +:1086B000262900F0D880272900F0EA80282900F038 +:1086C0000E8110E10322611C0DF10A00FCF704FC8D +:1086D0000EE10722611C0DF10A00FCF7FDFBBDF85D +:1086E0000A00010A41EA0020ADF80A00BDF80C00BA +:1086F000010A41EA0020ADF80C00BDF80E00010AA5 +:1087000041EA0020ADF80E00F2E00322611C0DF1F9 +:108710000A00FCF7E1FBBDF80B00010A41EA00206A +:10872000ADF80B00E4E00322611C0DF10A00FCF738 +:10873000D3FBBDF80B00010A41EA0020ADF80B00A5 +:10874000D6E00122611C0DF10A00FCF7C5FB9DF883 +:108750000A100FF21C30FAF7B3FEC9E00822611CC0 +:108760000DF10A00FCF7B8FBBDF80D00010A41EA63 +:108770000020ADF80D0000239DF911209DF9101087 +:108780009DF90F00FBF796F8B2E00622611C0DF18F +:108790000A00FCF7A1FBBDF80A00010A41EA00202B +:1087A000ADF80A00BDF80E00010A41EA0020ADF85C +:1087B0000E009DE00422611C0DF10A00FCF78CFB09 +:1087C000BDF80A00010A41EA0020ADF80A00BDF830 +:1087D0000C00010A41EA0020ADF80C000FF29C20C9 +:1087E000FAF76EFE84E00922611C0DF10A00FCF725 +:1087F00073FBBDF80A00010A41EA0020ADF80A0047 +:10880000BDF80C00010A41EA0020ADF80C00BDF8EB +:108810000E00010A41EA0020ADF80E0000239DF988 +:1088200012209DF911109DF91000FBF743F85FE04D +:1088300060788DF80A00A0788DF80B00A278617836 +:108840000FF24420FAF73CFE52E00322611C0DF1C6 +:108850000A00FCF741FBBDF80B00010A41EA0020C9 +:10886000ADF80B0044E00522611C0DF10A00FCF795 +:1088700033FBBDF80B00010A41EA0020ADF80B0004 +:1088800036E00922611C0DF10A00FCF725FB2FE000 +:108890000A22611C0DF10A00FCF71EFBBDF90A005B +:1088A000C0F3072141EA0020ADF80A00BDF90C0031 +:1088B000C0F3072141EA0020ADF80C00BDF90E001D +:1088C000C0F3072141EA0020ADF80E00BDF9100009 +:1088D000C0F3072141EA0020ADF8100008E06078FD +:1088E0008DF80A0004E08DF8080060788DF8090022 +:1088F00020780146052906D13A4801210170687A9D +:1089000000280DD159E018290AD18DF808006078A7 +:108910008DF80900A0788DF80A00E0788DF80B003A +:1089200000208DF8280020780B900DF1310002A96D +:108930001822FAF78DFC0B208DF830000020ADF8DE +:108940004A000AA8FDF730FDC0B285E4207805286A +:1089500004D124480021017001207DE41A280CD1A3 +:108960000522611C0DF10A00FCF7B6FABDF80D00F6 +:10897000010A41EA0020ADF80D0001208DF8280021 +:1089800020780B900DF1310002A91822FAF760FC53 +:108990000B208DF830000AA8FDF706FDC0B25BE49D +:1089A0002078002802D0052805D006E00FF2E80064 +:1089B00002F0E6FD01E0FFF7D4F901204CE404F1F8 +:1089C0000802211D204602F0D1F8012044E40000F5 +:1089D000A480002038F800205487002008400020A0 +:1089E000589D0020B83A012060310308E83C01207E +:1089F00070310308803103088C3103089831030873 +:108A00004C542053502025642C2025640000000085 +:108A10004C54205750202564000000004C54205333 +:108A200052202564000000004C5420534152202560 +:108A3000640000005B415044525D204E545F535728 +:108A4000554E2025640000005B415044525D204E8D +:108A5000545F545755532025640000005B41504437 +:108A6000525D204E545F424154434820256400002B +:108A700050443A2053432025640000004C542053B6 +:108A8000532041444400000041504452204144449A +:108A9000202564202564000041505F524551554512 +:108AA00053540000FEB504460D4601A800210A46B5 +:108AB00006C00221104603F061FD06460820009022 +:108AC00001AB0022B0211046FAF7CAFD002801D1FF +:108AD0000020FEBD01A80179427942EA0121827994 +:108AE000C37943EA02229DF80430477847EA03231A +:108AF000877890F803C04CEA0727A782E182228397 +:108B000063839DF804102970417869708178A97099 +:108B1000C178E97001792971417969718179A97107 +:108B2000C079E8713046FEBD7CB50020ADF8040088 +:108B30008DF80600FAF743FC05460221002003F0F9 +:108B40001DFD0446012000900DF106031C22B021FA +:108B50000020FAF785FD002801D1002076BD1D20F8 +:108B60008DF8040001AE00207070022301AAB0212C +:108B7000FAF71CFD002801D1002076BD1C208DF8DD +:108B8000040007207070022301AAB0210020FAF728 +:108B90000DFD002801D1002076BD0A212846FAF7F4 +:108BA000FAFD1D208DF804007070022301AAB02187 +:108BB0000020FAF7FBFC002801D1002076BD2046FA +:108BC00076BD1CB50020ADF806008DF8040002212A +:108BD00003F0D4FC04460120009001AB1C22B0211C +:108BE0000020FAF73DFD002801D1002016BD1C2011 +:108BF0008DF806009DF8040000F0FE008DF80700D7 +:108C000002230DF10602B0210020FAF7CFFC002864 +:108C100001D1002016BD204616BD80B500220146B8 +:108C20000448FFF73FFF002801D1002002BD0120CA +:108C300002BD0000BC1401202DE9F04FA1B0824616 +:108C400002AE002017461D46029170620DF14408E5 +:108C50000AE017F8011B0298D0470290002800F0A4 +:108C6000DA82706A401C7062387808B9706AD4E29F +:108C70002528EED10020F06030617061B061F061B4 +:108C8000306201E040F0010017F8011F2029F9D0FF +:108C900023290DD02B2904D02D2906D030290AD024 +:108CA0000CE040F0020080B2EEE740F00400FAE78A +:108CB00040F00800F7E740F01000F4E72A290DD152 +:108CC00029680A1D2A600968F162002904D5494211 +:108CD00040F00400F16280B27F1C13E00021F162D9 +:108CE0000BE0F16A6FF00043994205D001EB81037C +:108CF00002EB43013039F1627F1C3A78A2F1300176 +:108D00000A29EED339782E2903D04FF0FF31B16212 +:108D10001EE017F8011F2A2906D129680A1D2A60BA +:108D20007F1C0968B16213E00021B1620BE0B16AF7 +:108D30006FF00043994205D001EB810302EB430140 +:108D40003039B1627F1C3A78A2F130010A29EED3A2 +:108D500030860FF6604039780CF0AEFF08B117F896 +:108D6000010B8DF83A009DF83A00682802BF397867 +:108D70006829622005D06C2804BF38786C2803D19C +:108D800071208DF83A007F1C11A8B0603978B1F1DC +:108D9000250029D01C3800F0C080001F022840F2B6 +:108DA000BC80133800F0E480093800F0B680801EE3 +:108DB00000F07781401E00F02081401E022840F222 +:108DC000AC80001F00F01981401F7BD0401E00F0D6 +:108DD000CF80401E22D0C01E0BD0801E00F0C88065 +:108DE000C01E00F0C58064E1F068411CF1602521DF +:108DF00069E12868011D29600068B26A7060002A74 +:108E000002D502F003F807E000210CF061FF002812 +:108E10001ABF7168401AB06A306156E12868011DB6 +:108E2000296000210068CDE900014FF03C0E11A837 +:108E30007060DDE9000111B908B9B26ACAB1020671 +:108E4000120FA0EB02123032AEF10103D2B29E46F5 +:108E50003A2AA8BF2732000903F8082040EA017027 +:108E6000090908BF002804D0726811AB73449A4204 +:108E7000E5D311A971447160CEF13C00B16A306153 +:108E8000884207DA081AB0614FF6EF71308E084059 +:108E900030861AE1002940F1188196F8301001F06F +:108EA0001401102940F01181F16AF268891AB2693F +:108EB000891AA1EB000EBEF1010FC0F20681C6F8BF +:108EC00018E002E19DF83A00622818D0682806D020 +:108ED0006A280BD06C2819D0712807D016E02868B2 +:108EE000011D29600068716A0180EEE02A68101D8A +:108EF00028601268706AC117C2E90001E5E02868BD +:108F0000011D29600068716A0170DEE02868011D9A +:108F100029600068716A0160D7E02868C01D20F0F0 +:108F20000700286000F108022A60D0E90023CDE99B +:108F30000023002B04D5F068421CF2602D220DE0C6 +:108F4000308E820704D5F068421CF2602B2205E0C7 +:108F5000C00705D5F068421CF260202200F8082006 +:108F6000F06811AA8018706000A800F0E3F9ACE086 +:108F70009DF83A006C2808BF2A6811D0712808BFF4 +:108F80002A6802D02A686A280AD1D21D22F0070274 +:108F90002A60144604F108022A60D4E9002303E0A1 +:108FA000131D2B6000231268CDE90023682808BF39 +:108FB00092B207D0622808BFD2B203D0742818BF7B +:108FC0007A2802D10023CDE9002396F8300000076B +:108FD0005FD5DDE90023002B08BF002A59D041F0FE +:108FE0002000782855D1F068302200F80820401C75 +:108FF000421CF26000F808104BE09DF83A0062282D +:109000000CD0682810D06A281AD06C2823D0712878 +:1090100016D074281FD07A280CD01CE02868021DB6 +:109020002A6090F900201AE02868021D2A60B0F931 +:10903000002014E02868021D2A60002302680FE067 +:109040002868C01D20F00700286000F108022A608F +:10905000D0E9002304E02868021D2A600268D317C3 +:10906000CDE90023002B04DAF068421CF2602D22C7 +:109070000DE0308E820704D5F068421CF2602B228E +:1090800005E0C00705D5F068421CF260202200F818 +:109090000820F06811AA8018706000A800F0C0F8DD +:1090A00013E0F068411CF16029680A1D2A60096814 +:1090B00009E0F068421CF260252200F8082021B186 +:1090C000F068421CF26000F80810F06AF168401A7B +:1090D000B169401A3169401AF169401A7169401A40 +:1090E000316AA0EB010996F830007F1C400710D4CC +:1090F00020208DF84000002409E0012310AA00A9D7 +:10910000504600F040FC002840F08580641C4C452F +:10911000F3DBF4680DF1440B0AE01BF8011B029825 +:10912000D0470290002876D0706A401C7062641E9E +:10913000002CF2D130208DF840004FF0000BB469C4 +:1091400009E0012310AA00A9504600F01CFC0028E9 +:1091500061D10BF1010BA345F3DB3469D6F804B000 +:109160000AE01BF8011B0298D0470290002852D059 +:10917000706A401C7062641E002CF2D130208DF8A1 +:1091800040004FF0000BF46909E0012310AA00A988 +:10919000504600F0F8FB00283DD10BF1010BA34530 +:1091A000F3DB30697168746900EB010B09E01BF8AF +:1091B000011B0298D047029068B3706A401C70622D +:1091C000641E002CF3D130208DF840004FF0000BCE +:1091D000346A08E0012310AA00A9504600F0D3FB2E +:1091E000C8B90BF1010BA345F4DB96F8300040073A +:1091F0007FF53AAD20208DF84000002400E0641C8B +:109200004C45BFF631AD012310AA00A9504600F02D +:10921000BAFB0028F3D04FF0FF3021B0BDE8F08F4B +:109220002DE9FA47064682B035690A466F2A08BF1B +:10923000082705D041F02000782814BF0A271027FE +:10924000D6E900013C2480468946642A18BF692A71 +:1092500005D1002903DAD8F1000869EB4909B9F111 +:10926000000F08BFB8F1000F0CD1306B50B9082FB8 +:109270003BD196F83800000737D530203B2485F8DD +:109280003B0032E0CDE90089FB17404649463A46AB +:109290000CF04AFDB846A8FB0023DDE90089A8EBE5 +:1092A00002023032A4F1010AD2B254463A2A03DB58 +:1092B0009DF80830513B9A180AF8052080465FEA6D +:1092C000010908BFB8F1000F03D0F06861198842A6 +:1092D000D8D3082F09D196F83800000705D5605D6E +:1092E000302802D0641E30206055C4F13C00B061CB +:1092F0006119F160316B884207DA081A30624FF663 +:10930000EF71308F0840308710E000290ED596F8B5 +:10931000381001F01401102908D1716B7269891A93 +:10932000326A891A081A0128A8BF306204B0BDE861 +:10933000F08700002DE9F24F04468EB0D4E9000119 +:10934000CDE9020104AE9DF8380040F02000009005 +:1093500061280AD0206B002848BF062004D404BF2F +:109360000098672801D1012020636168C1F30A5089 +:1093700040F2FF7290421CD1080304BF206800280D +:1093800009D10320A0619DF8380061381A2836D32E +:109390000FF2346108E00320A0619DF838006138C5 +:1093A0001A2829D30FF21861E0680322F9F750FF59 +:1093B000B5E1012816DA20460CF02DFD012811DB5D +:1093C000002700200099612920D1E168302201F8AE +:1093D000012B4A1CE2609DF83820612A0CBF7822DC +:1093E00058220FE0626840F2FE3161F31E52471AC4 +:1093F00062604FF0FF30E5E70FF2C051D4E70FF2A3 +:10940000C451D1E70A706169891C616110B90025F6 +:1094100000277BE10098612840F09680206B0028AF +:109420004CBF2125451CDDE902012DB26E1CD4E99B +:1094300000890022002303F05FFD3ABF89F000405D +:10944000CDE90280CDE902893F1F8DF810200DF192 +:10945000110801E000F20708012E32DBDDE902010C +:10946000002200230CF0F8FC2BD21C2102A80CF0E7 +:109470000BFDDDE90201FBF709F8F61F8146012E1D +:1094800009DB02F06DFE02460B46DDE902010CF03D +:1094900085FDCDE9020108F20700072105E009F08A +:1094A0000F0200F8012D4FEA2919B9F1010F01DB74 +:1094B000491EF4D5491E5CBF002200F8012DF9D5E4 +:1094C000C8E70DF11100A8EB00010DF11106A9424A +:1094D000B8BF0D462DB228002FD4884206DA04A961 +:1094E000411849780829A8BF0F2100DA002104AAF1 +:1094F000821800E06D1E12F80139401E8B42F9D02F +:109500000F2904D104A941184A78521C4A70002836 +:1095100002D504AE6D1C3F1D2DB2681E0DD48119FD +:109520000A783032D2B23A2A03DB9DF838303A3B1F +:109530009A1801F80129401EF2D5206B002840F14D +:10954000E580681E2063E1E0DDE9020100220023DE +:1095500003F0D2FC3CBF81F00041CDE902013FB2F3 +:1095600047F2975078434849DFF820B190FBF1F774 +:109570003FB2C7F107069246012E19DBDDE90289E9 +:10958000F00707D552465B4640464946FBF7D8FCF4 +:109590008046894676105046594652465B46FBF750 +:1095A000CFFC82468B46002EEAD1CDE9028921E02C +:1095B00076429046DFF8D89012E0F00707D5524681 +:1095C0005B4640464946FBF7BBFC80468946761021 +:1095D0005046594652465B46FBF7B2FC82468B46E4 +:1095E000002EEAD1DDE9020142464B46FAF704FEBD +:1095F000CDE90201009866280CBF07F10A00062099 +:10960000216B4518142DA8BF132530208DF81000AC +:109610000DF11106DFF87C90012D3DDBDDE9020143 +:10962000FAF74AFF06F1080104220A23B0FBF3F31C +:1096300003EB8306A0EB4600303001F8010D0A2051 +:10964000B3FBF0F000EB8006A3EB4603303301F8E8 +:10965000013D521EE9D1083D01F10806012DDBDB79 +:10966000DDE90201FAF728FF02F084FD02460B460D +:10967000DDE902010CF092FC00224B46FBF760FC96 +:10968000CDE90201CAE700BFA08601000000244026 +:109690000000F03F84D797410DF11100301A0DF111 +:1096A000110602E0401E7F1E761C31783029F9D069 +:1096B0000099662902D13FB2791C03E065290CBFED +:1096C00001210021226B8D182DB2A842B8BF05469A +:1096D0002DB229001AD4814204DA885D3528A8BF4A +:1096E000392000DA30208A19521E00E06D1E12F86F +:1096F0000139491E8342F9D0392802D1885D401CC6 +:109700008855002902D5761E6D1C7F1C3FB29DF83E +:10971000381000972BB23246204600F003F80FB005 +:10972000BDE8F08F2DE9F043054685B01E46D5F81B +:10973000308089461746012E02DA01260FF28C2767 +:1097400049F02000BDF93040662808BF641C17D0DE +:10975000672840F0818014F1040FC0F283804445F3 +:1097600080F2808095F83800641C000702D44645DA +:10977000B8BFB04624B2B8EB040848BF4FF00008A9 +:10978000E868A96924B2012C25DA30234A1C0B545D +:10979000B8F1010F03DA95F83810090702D52E2128 +:1097A0001154521CAA6118EB040FB8BFC8F1000491 +:1097B00024B26142A0446962B045B8BF464636B2A1 +:1097C000EE613246AB6939461818F9F741FDA8EB4E +:1097D0000600A862C0E00818A64218DA32463946E8 +:1097E000F9F736FDA9697118A961A01B6862B8F183 +:1097F000010F03DA95F83800000705D5E8682E2236 +:109800000A54E869401CE861C5F82880A4E02246B3 +:109810003946F9F71DFDA8692018361BB8F1010F6C +:1098200003DA95F83810090703D5E9682E22425467 +:10983000401C36B2A861B045B8BF4646EB6836B2A8 +:109840003246E119C018F9F703FDA8693018A8617C +:10985000A8EB060068627FE0B9F1610F16D14FF006 +:10986000700918E0464504DA95F83810090758BF22 +:10987000B046B8F1010848BF4FF00008B9F1670FD2 +:1098800014BF4FF045094FF0650904E0B9F1410FED +:1098900008BF4FF05009A969E86817F8013B0B545D +:1098A0004A1CB8F1010F05DA95F83810090758BFBE +:1098B000AA6117D52E211154531CAB61B8F1010FC9 +:1098C00010DB761E36B2B045B8BF464636B23246D9 +:1098D00039461818F9F7BCFCA8693018A861A8EB3C +:1098E00006006862A869E9684718200007F8019B2C +:1098F00003D42B2007F8010B03E02D2107F8011BEF +:10990000644200260DF1080808E00A2200A80CF0C5 +:1099100005FC019808F8010B761C009C21B2012976 +:10992000F3DA022E06DA49F02000652804BF302061 +:1099300007F8010B4EB9302007F8010B07E0761E3F +:1099400002A8305C303007F8010B012EF7DAA86965 +:10995000E9684018381AE86195F8380000F01400FA +:1099600010280DD16869A9690818696A0818E96999 +:109970000818A96A0818696B8842BCBF081A2862CF +:1099800005B0BDE8F083F8B504460D4616461F46FF +:10999000002004E0E86A401CE8627F1E002047B116 +:1099A00016F8011BA868A047A8600028F2D14FF064 +:1099B000FF30F2BD686A6C747A4C00006E616E0014 +:1099C0004E414E00696E6600494E4600300010B5AB +:1099D000040010000A0001002000F9F781FC2000BB +:1099E00010BD000030B583B0012103200CF003FC52 +:1099F000DFF8584C20460CF097FCDFF8545C284602 +:109A00000CF092FC01208DF8040000208DF8050078 +:109A100001208DF8060000208DF80700012128465E +:109A20000183C0460120009000A928460CF0D8FC14 +:109A3000022128460183C0460220009000A9284642 +:109A40000CF0CEFC01208DF8040000208DF80500FC +:109A5000ADF806004FF48070009000A928460CF085 +:109A6000BFFC4FF4807128464183C04601208DF829 +:109A7000040000208DF8050001208DF8060000206C +:109A80008DF807004FF48050009000A920460CF09C +:109A9000A7FC4FF4805120464183C0460422062192 +:109AA00028460CF0EBFC0422072128460CF0E6FCCB +:109AB00002208DF8040001208DF805008DF80600C5 +:109AC00000208DF807004020009000A928460CF0E7 +:109AD00087FC8020009000A928460CF081FC04221D +:109AE0000A2128460CF0CAFC0922032128460CF062 +:109AF000C5FC02208DF8040001208DF805008DF8CA +:109B0000060000208DF807004FF48060009000A947 +:109B100028460CF065FC0820009000A928460CF0AF +:109B20005FFC286820F0300040F0100028602068BA +:109B300020F0300040F01000206037BD1FB5DFF886 +:109B4000144BA04230D101214FF400100CF05EFB09 +:109B5000012102200CF04FFB01214FF400100CF00A +:109B600076FB00214FF400100CF071FB0020ADF8E3 +:109B700004004BF6FF70ADF806004FF48060ADF8BE +:109B80000A004FF48040ADF80C000A20ADF8080040 +:109B9000DFF8A40C009000A920460CF0B2FC0121D3 +:109BA00020460CF011FD1FBDDFF8904CA0422FD1D4 +:109BB00001214FF480000CF029FB012102200CF060 +:109BC0001AFB01214FF480000CF041FB00214FF4FF +:109BD00080000CF03CFB0020ADF804004BF6FF7059 +:109BE000ADF806004FF48060ADF80A004FF48040F5 +:109BF000ADF80C000A20ADF80800DFF83C0C00902E +:109C000000A920460CF07DFC012120460CF0DCFC74 +:109C10001FBD2DE9F04192B001214FF480500CF0AE +:109C200000FB012108460CF0E6FA01214FF4800008 +:109C30000CF0E1FADFF8144A0522114620460CF038 +:109C40001DFC0522072120460CF018FC05220621E8 +:109C500020460CF013FC0522042120460CF00EFCDB +:109C600002208DF8040001208DF805000020ADF8D9 +:109C700006002020009000A920460CF0B1FB8020B7 +:109C8000009000A920460CF0ABFB4020009000A9FA +:109C900020460CF0A5FB1020009000A920460CF0F7 +:109CA0009FFBDFF89C4B20460CF0F0FCDFF8945B48 +:109CB0000020288068600120288100206881E860F9 +:109CC0000720288200206880DFF87C6B30460CF08B +:109CD0004DFDDFF8787B38460CF048FD4FF480608E +:109CE000069000210D9103210E9100210F910A9100 +:109CF0000890DFF8140C0390084610900990079024 +:109D00004FF400300C9008460B904FF0C068CDF82F +:109D10000880402005900846049002A930460CF0C7 +:109D2000A9FD00200B90CDF80880059005F11400E6 +:109D3000049002A938460CF09DFD00206880294659 +:109D400020460CF0D2FC0122022120460CF0FCFC43 +:109D50000122114620460CF0F7FC012120460CF0B0 +:109D6000E7FC002130460CF0ACFD002138460CF039 +:109D7000A8FD12B0BDE8F08130B589B001214FF0E7 +:109D800080500CF043FA01200CF004FE01214FF446 +:109D900080200CF030FA0F200CF0ACFF04461020AD +:109DA0000CF0A8FF054601200CF022FA00200CF070 +:109DB0001FFA21460F200CF090FF294610200CF0CE +:109DC0008CFF00214FF480200CF015FA01200CF0DC +:109DD000ADF941200CF05CFA0028FAD04FF4807005 +:109DE0000CF0F0F901200CF000FA0CF026FE3F20F8 +:109DF000069040F2FF1007900020059005A80CF097 +:109E0000D3FD0020029002A90CF038FE00208DF84E +:109E1000070001208DF804008DF805008DF806007C +:109E200001A900200CF0A3FE4FF480000DF042F8D1 +:109E30004FF48000039000208DF8100008208DF86A +:109E4000110001208DF8120003A80CF0F1FF03208F +:109E50008DF800000D208DF8010000208DF8020023 +:109E600001208DF8030000A80DF031F803200CF05C +:109E7000F2FE4FF480400CF0A8FF4FF480000DF08C +:109E800019F801214FF480400CF065FF012009B062 +:109E900030BD10B586B0012108460CF0ACF90121A7 +:109EA0004FF480400CF0BDF900208DF810008DF8C3 +:109EB000130001200390DFF8944703A920460CF01B +:109EC0008FFA0420039003A920460CF089FA0021A0 +:109ED00008460DF035F8022100200DF031F8002081 +:109EE0008DF8080001208DF80A0001900C208DF8F3 +:109EF000090001A80CF09CFF042001900C208DF8B3 +:109F0000090001A80CF094FF04200CF0D3FF2820D6 +:109F10008DF800000F208DF8010000208DF8020060 +:109F200001208DF8030000A80CF0D1FF06B010BD91 +:109F300010B586B0012108460CF05DF901214FF4FF +:109F400080400CF06EF900208DF810008DF81300A1 +:109F50004FF40064039403A9DFF8F0060CF040FA14 +:109F60000B2100200CF0ECFF00208DF808000120F0 +:109F70008DF80A0001940C208DF8090001A80CF05E +:109F800057FF20460CF096FF28208DF800000F2088 +:109F90008DF8010000208DF8020001208DF80300EB +:109FA00000A80CF094FF06B010BD30B58DB004468B +:109FB00001214FF480700CF034F900A80CF04AFA3B +:109FC0000A20009003208DF8040000208DF807007F +:109FD00000A9DFF878060CF003FA0CF0C5FF02A820 +:109FE0000DF007F84FF48030039002A80CF0F3FF57 +:109FF00006A80CF0E6FFDFF8645B06A928460CF023 +:10A00000C0FF07230122214628460DF003F8012155 +:10A0100028460DF042F8012128460CF0F0FF0DB063 +:10A0200030BD38B5DFF8344B20460DF031F84FF431 +:10A030007A75022120460DF047F8002803D1284602 +:10A04000451E0128F5DA2046BDE832400DF030B853 +:10A0500080B50021DFF8040B0CF0D1FF00214FF494 +:10A060008070BDE804400CF0DCB8000038B5040096 +:10A0700039D001200CF08EFC00200CF006FE4FF4CD +:10A08000005504200CF082FE012804D12846451E0C +:10A0900080B20028F5D100EE104AB8EE400ADFED9C +:10A0A000780A80EE800AF0EE000A20EE200ADFED4A +:10A0B000750A80EE800ABDEEC00A10EE100A401E3E +:10A0C00080B20CF0D8FD4FF480400CF07EFE4FF4CF +:10A0D00080000CF0EFFE01200CF0D7FDDFF8740BD0 +:10A0E0000121416031BD01200CF054FC0020BDE88D +:10A0F00032400CF0CABD000030B4014601200023FC +:10A10000DFF85C2A1C469460946814F00C0FFBD1B5 +:10A110000C460B2C55D8DFE804F020545454061993 +:10A120002031383F464D946844F080049460DFF855 +:10A13000344A4FF4C0652560146824F080741460BC +:10A14000DFF8A44ADFF8205A25603BE00346DFF839 +:10A15000984ADFF8985A256034E094689460DFF8F4 +:10A16000044A4FF4C0652560146824F080741460BC +:10A17000DFF8744ADFF8785A256023E00223DFF81D +:10A18000684ADFF8705A25601CE00323DFF8584A5C +:10A19000DFF8645A256015E00423DFF84C4ADFF845 +:10A1A000B85A25600EE00523DFF83C4ADFF8AC5AC8 +:10A1B000256007E00623DFF8304ADFF8A45A25605F +:10A1C00000E01846002B4AD003EBC3030FF2B8049B +:10A1D0001B1994689460146824F0807414601468E7 +:10A1E00024F0806414609C781D8844EA8514DD782E +:10A1F0006D086D1E44EA05441D7944EA0564546007 +:10A20000DC881D7A2D0745EA8414DFF8B05A2C60EB +:10A21000146844F0807414601468A401FCD55B7960 +:10A2200043F4C063DFF83C4923609368936093680C +:10A230009360052904D1916841F09001916005E097 +:10A240000A2903D1916841F480519160916841F0ED +:10A2500002019160916801F00C010829FAD1DFF840 +:10A2600088190968DFF8582A914207D2DFF8E41A02 +:10A270000A6822F4404242F480420A6030BC7047CF +:10A2800000007A4400000047200110040F0302017F +:10A2900003F00010060F01020103C00010080F01B7 +:10A2A000020103C00010060F01020103F0001006B6 +:10A2B0000F01020103C80010040F02020103A800ED +:10A2C00010020F030201030016E7002800E0401E01 +:10A2D000FDD170477CB50726DE4988426BD101204D +:10A2E0008DF804008DF805008DF8060000208DF82B +:10A2F000070040200090DFF87C5A00A928460CF0A7 +:10A300006FF88020009000A928460CF069F84021E1 +:10A3100028464183C0460F20FFF7D7FF402128463B +:10A320000183C0460F20FFF7D0FF3046461E80B2A3 +:10A330000028ECD18020009000A928460CF050F8AD +:10A34000402128464183C0460520FFF7BEFF8021FB +:10A3500028460183C0460520FFF7B7FF4021284665 +:10A360000183C0460A20FFF7B0FF40212846418301 +:10A37000C0460520FFF7A9FF802128464183C0463B +:10A380000520FFF7A2FF02208DF8040001208DF8C0 +:10A3900005008DF8060000208DF807004020009091 +:10A3A00000A928460CF01CF88020009000A928463F +:10A3B0000CF016F873BDDFF8841488426AD10120CE +:10A3C0008DF804008DF805008DF8060000208DF84A +:10A3D00007004FF480640094DFF8985900A92846DC +:10A3E0000BF0FEFF0820009000A928460BF0F8FFB4 +:10A3F000214628464183C0460A20FFF766FF2146D2 +:10A4000028460183C0460A20FFF75FFF3046461EFC +:10A4100080B20028ECD10820009000A928460BF05B +:10A42000DFFF214628464183C0460520FFF74DFF48 +:10A43000082128460183C0460520FFF746FF214634 +:10A4400028460183C0460A20FFF73FFF21462846E1 +:10A450004183C0460520FFF738FF08212846418385 +:10A46000C0460520FFF731FF02208DF804000120CF +:10A470008DF805008DF8060000208DF80700009487 +:10A4800000A928460BF0ACFF0820009000A9284640 +:10A490000BF0A6FF73BD10B5DFF8DC480121206882 +:10A4A0000CF0CBF820680BF0FDFF2068FFF746FBAF +:10A4B00005E02068FFF70EFF2068FFF73FFB4FF431 +:10A4C000003120680CF0C4F80028F2D110BD30B47F +:10A4D0000022838A008BDFF8A048656843EA0040C9 +:10A4E0000840000255EA102060600840884200D110 +:10A4F0000122104630BC70472DE9F84F04460D4646 +:10A5000016464FF420491F78DFF86C884FF400316D +:10A51000D8F800000CF09CF8002808D04846A0F1BC +:10A5200001090028F2D1FFF7B6FF00208CE0D8F82F +:10A53000000001884FF6FF52114001800121D8F838 +:10A5400000000CF04DF84FF4805AD1460020C8F8B6 +:10A550000400D8F800B0DFF824185846FFF7B7FF1A +:10A56000002805D14846A0F101090028F1D163E097 +:10A57000D1460022214658460CF04AF80020C8F87F +:10A580000400D8F80040DFF8F8172046FFF79FFFD7 +:10A59000002805D14846A0F101090028F1D14BE07F +:10A5A0003146C9B220460182C046D1460020C8F8D3 +:10A5B0000400D8F80040DFF8CC172046FFF787FFEB +:10A5C000002805D14846A0F101090028F1D133E067 +:10A5D000012F15D1297820460182C046D14600209E +:10A5E000C8F80400DFF8A017D8F80000FFF76FFFE5 +:10A5F000002823D14846A0F101090028F2D11BE030 +:10A600003846471EC0B2002818D015F8011BD8F8EC +:10A6100000000182C046D1460020C8F80400DFF8DF +:10A620006817D8F80000FFF752FF0028E8D1484625 +:10A63000A0F101090028F2D1002005E00121D8F89D +:10A6400000000BF0D9FF0120BDE8F28F00000240AE +:10A6500000040240005400402DE9F54F81B00D4642 +:10A660001E464FF420483778DFF80C474FF400318E +:10A6700020680BF0EDFF002808D04046A0F101084B +:10A680000028F3D1FFF707FF0020D3E020680188FE +:10A690004FF6FF5211400180012120680BF0A0FF0E +:10A6A0004FF48059C84600206060DFF8D0A6D4F887 +:10A6B00000B051465846FFF70AFF002805D1404632 +:10A6C000A0F101080028F2D191E000229DF80410C9 +:10A6D00058460BF09DFFC84600206060D4F800B0DB +:10A6E000DFF89C165846FFF7F2FE002805D14046D9 +:10A6F000A0F101080028F1D179E0BDF80810C9B235 +:10A7000058460182C046C846DFF8801620680BF024 +:10A710009FFF002805D14046A0F101080028F3D191 +:10A7200065E0012120680BF05BFFC84600206060F7 +:10A73000D4F800B051465846FFF7C9FE002805D1AD +:10A740004046A0F101080028F2D150E001229DF816 +:10A75000041058460BF05CFF022FC84639DADFF8C8 +:10A76000301620680BF074FF002805D14046A0F198 +:10A7700001080028F3D13AE0002120680BF051FFD6 +:10A780002068018B01210BF037FFC846DFF8041663 +:10A7900020680BF05DFF002805D14046A0F10108BC +:10A7A0000028F3D123E02068008AC0B228703078F6 +:10A7B000401E3070C84620680188890505D540468E +:10A7C000A0F101080028F6D111E001210BF029FFCA +:10A7D0002BE000206060DFF8C0152068FFF777FEEF +:10A7E000002806D14046A0F101080028F3D100203E +:10A7F00020E0012616E0012F0CD1012E0AD10026FF +:10A80000314620680BF00DFF2068818A018B012101 +:10A810000BF0F2FE2068818A490603D5008A05F80C +:10A82000010B7F1EFFB2002FE5D1012120680BF044 +:10A83000F8FE0120BDE8FE8F801A06000058004097 +:10A840000030014044380120886402401064024016 +:10A85000DFF848050168082933D1DFF804130A68D6 +:10A8600042F080720A604268B2F1806F03D10A68D8 +:10A8700042F080620A600A689201FCD58A6842F060 +:10A8800002028A608A6802F00C02082AFAD1426841 +:10A89000B2F1806F02D10A681201FCD5DFF84813CB +:10A8A0000968DFF81C24914207D2DFF8A8140A686F +:10A8B00022F4404242F480420A600021016041607B +:10A8C00070474168B1F1806F09D1A5490A6842F02B +:10A8D00080620A600A681201FCD50021416070475D +:10A8E000DFF8BC04016841F080510160DFF86404C6 +:10A8F00001688908890041F001010160DFF8A404C2 +:10A900000FF20901016070470C30014038B5DFF8E3 +:10A910009844208840F004002080F8F750FD807AA9 +:10A92000012803D101200CF038F802E000200CF0DF +:10A9300034F8DFF878548021DFF874040BF00EFF50 +:10A94000002818D172B68648DFF85014826802F0E9 +:10A950000C020A60006800F080604860286840F0DF +:10A960000400286030BF62B6286820F00400286028 +:10A97000FFF76EFF0CE0608840F0040060802868FC +:10A9800020F00400286030BF286840F004002860F0 +:10A99000608840F00400608031BDDFF80804006882 +:10A9A0000047DFF81014012806D010D3032809D07F +:10A9B00005D3042809D00AE0DFF8B81307E0DFF870 +:10A9C000F81304E0DFF8F41301E0DFF8F4130846AD +:10A9D000704710B50C46FFF7E4FF214689B2BDE889 +:10A9E00010400BF047BD10B50C46FFF7DAFF2146CB +:10A9F00089B2BDE810400BF03FBD0000E0B5002378 +:10AA00008DF8083001238DF80A30002A03D10C227A +:10AA10008DF8092002E008228DF8092004283CD88E +:10AA2000DFE800F00315212A2A004FF400600190AE +:10AA300028208DF800000F208DF8010000208DF8EF +:10AA40000200012921D118468DF803001FE01846A5 +:10AA5000019010208DF8090006208DF800000E20CE +:10AA60008DF80100EAE70220019007208DF8000030 +:10AA70000F208DF80100E1E70420019008208DF8F7 +:10AA800000000F208DF80100D8E78DF8030001A821 +:10AA90000CF0CEF900A80CF01AFA07BD10B5044668 +:10AAA00001214FF480200BF0A6FB214610200CF072 +:10AAB00014F900214FF48020BDE810400BF09BBB3F +:10AAC00010B501214FF480200BF095FB10200CF005 +:10AAD00011F9044600214FF480200BF08CFB7B2001 +:10AAE0000BF0D6FB002802D09BA0F8F7E9FC7A20F7 +:10AAF0000BF0CEFB002802D098A0F8F7E1FC7920FB +:10AB00000BF0C6FB002802D095A0F8F7D9FC7C20FA +:10AB10000BF0BEFB002802D092A0F8F7D1FC7D20FC +:10AB20000BF0B6FB002802D08FA0F8F7C9FC7E20FE +:10AB30000BF0AEFB002802D08CA0F8F7C1FC7F2000 +:10AB40000BF0A6FB002802D089A0F8F7B9FC0BF0A7 +:10AB5000B1FB2046C0B210BD000000000020014043 +:10AB600000380240003C024000127A003EB50C461C +:10AB700015460422014602A8FAF7AEF9042221463E +:10AB800001A8FAF7A9F90422294600A8FAF7A4F9BE +:10AB900002A900200BF072FF01A900200BF0E7FFD3 +:10ABA0000BF0E0FF0446874A002300981946101A6C +:10ABB00063EB0101490241EAD05140020BF0B4F8C5 +:10ABC0000090844205D2011B4FF000400CF09FF82A +:10ABD00037BDA04207D2C4F50070009909184FF0A4 +:10ABE00000400CF094F837BDF08600208096980065 +:10ABF0000024F40000366E010048E8012DE970439E +:10AC000084B004460D46164602A900200BF085FFCD +:10AC100001A900200BF0FBFF0BF0A4FF0090694A94 +:10AC2000A2FB00894FEA582848EAC958A2EB08005D +:10AC30000090042202A92046FAF74EF9042201A945 +:10AC40002846FAF749F9042200A93046FAF744F9F0 +:10AC5000BDE87F83D43B0120005A620280F0FA02F3 +:10AC600000BD010570B48C1E012C01DA0C34401EAD +:10AC70003C216425B0FBF5F5C5EB90054FF4C87693 +:10AC8000B0FBF6F6751940F26F1674430C26B4FB50 +:10AC9000F6F46419121940F26D1404FB00204A4ABC +:10ACA000101800EB400203EBC200039A01FB0020E6 +:10ACB000049A01FB002070BC7047000084380240F9 +:10ACC000018793031CB50C4601680191416800910E +:10ACD0008368C2680169491C406900F26C70FFF723 +:10ACE000C1FF2060002016BD10B58EB03748006847 +:10ACF000C405E40D01A900200BF00FFF00A90020FE +:10AD00000BF085FF9DF8040006909DF80500059066 +:10AD10009DF8060004909DF80100401E08909DF8E3 +:10AD2000020007909DF803006430099002A904A86E +:10AD3000FFF7C8FF4FF47A7010FB04F0400AC0F52B +:10AD40007A700390029A4FF47A73C117E3FB020101 +:10AD50000EB010BD00700040504F520050494E00E0 +:10AD6000424F52005346540049574400575744003D +:10AD70004C505700000402402C87002001000300C3 +:10AD80008200070080000700840007000400001014 +:10AD9000020000104000001002000300DC3B012014 +:10ADA00040380240D43B01201800024010ED00E082 +:10ADB000003001400000024000080240000C024048 +:10ADC0000010024000CA9A3B7505F5FF2828004094 +:10ADD00008B584B00023029311B90093019302E0F7 +:10ADE0000090481E019004AB00A907487844183031 +:10ADF000FDF722FF009909B100220A70002858BF10 +:10AE0000029805B000BD00BFBF84FFFF00F1010341 +:10AE1000810704D010F8011B89B18107FAD10268BB +:10AE2000B2F10131914311F0803F04BF50F8042F7B +:10AE3000F6E710F8011B11B110F8011BFBE7C01A6F +:10AE40007047000000B585B002460FF2140100A85B +:10AE50000CF042F900A800F093FB05B000BD000023 +:10AE60004F4525640000000030488168002904BF78 +:10AE700008B008E0EFF30982A2F12802036882E833 +:10AE8000F84F83685A60F8F71BFF816859B14A6828 +:10AE900092E8F84F036002F1280282F3098813F464 +:10AEA0007F4F36D07047224822490968401A80F304 +:10AEB00008884FF08071C1611F4981617FF0060EE3 +:10AEC000704701BC2046DFF874E000BDFEE71C4877 +:10AED000006818490968401A203820F0070080F3FC +:10AEE00008884FF0000181F3118862B600F00DF878 +:10AEF000FEE74FF0000181F311881249124A0A60FF +:10AF00004FF0800181F3118870470E490E4A0A60A4 +:10AF100070474FF0000181F31188704700BF4FF078 +:10AF2000800181F31188704700BF0000A4800020D9 +:10AF3000E01F00205033030825C30008CDAE0008F1 +:10AF40000000000804ED00E000000010EFF30380B3 +:10AF50007047BFF34F8FDFF86C06016801F4E061C2 +:10AF6000DFF8642611430160BFF34F8FFEE770B531 +:10AF700082B006460C462046FFF748FF0546202DC6 +:10AF800005D10422314600A8F9F7A6FF06E0102DEE +:10AF900016D10222314600A8F9F79EFF002000E0FA +:10AFA000401CA8420EDA015D7829F9D0009A2B46A0 +:10AFB0005B1E1B1ADA4002F0010230398A42EFD0E0 +:10AFC000002076BD012076BDDFF800160160062066 +:10AFD0007047A0F10060B0F53E3F01D801207047F6 +:10AFE00000207047F8B504460D4600200090206808 +:10AFF000FFF7EFFF00281AD000A8FFF7E5FF06468D +:10B00000002700E07F1CB74211D2009850F837109B +:10B0100000EBC700406840422268520810EB420033 +:10B02000FFF7A5FF0028EDD02F600120F2BD002022 +:10B03000F2BDF8B50C46DFF898150A6D4B6D00258A +:10B0400059082E465F1B062F11D3482707FB0127FF +:10B050003F6C874200D20D46B84200D20B46E91839 +:10B06000490837467E1C1F2FECD300E06D1C9D4223 +:10B0700011D2482707FB05210E6CB042F6D34E6C67 +:10B080008642F3D3402220460CF040F8002084F89A +:10B0900040000120F2BD40220FF2006120460CF07A +:10B0A00035F80020F2BDF0B591B0044600250EE061 +:10B0B00032590FF2F45100A80CF00EF800A8FFF777 +:10B0C000A5FE024600A9381D0CF020F86D1C05EB0A +:10B0D000C500C600305900280BD0371900A9FFF76A +:10B0E000A8FF0028E4D0402200A9381D0CF00EF87B +:10B0F000ECE711B0F0BDF8B507460C461546002642 +:10B1000030460090002F1ED0002C09D1F2BD06EB76 +:10B11000C600C00057F8041B490849004151761C7D +:10B120000C2E0FD200A93846FFF75CFF002807D18C +:10B130003868FFF74EFF002802D13F1DBC42F1D214 +:10B14000BC42E4D23046F2BD70B5DFF888140A463E +:10B150000B68D21A1368DFF88044A34201D00020A4 +:10B1600070BDDFF86C44121D22650968091F482272 +:10B17000B1FBF2F1616510F1030F02D010F1130F72 +:10B180000AD1DFF85854A8680BF0F6FF0646A86805 +:10B190000BF0FEFF811905E001F042F8054601F0D1 +:10B1A00041F84119DFF83854A069286005F14802D8 +:10B1B000A06AFFF7A0FF2846FFF775FF012070BDCA +:10B1C0000EB430B5CCB0044600A84FF49671F7F732 +:10B1D0003BF900254FAB22464FF4967100A8FFF7CC +:10B1E000F7FD00A8FFF712FE044609E0DFF8E013C0 +:10B1F000C86D421CCA6500A9695C0CF037F86D1C6B +:10B20000A542F3D34CB030BC5DF810FB38B5002438 +:10B21000DFF8BC53E8650FF29840FFF7D1FFDFF885 +:10B22000C40301680FF2AC40FFF7CAFFA86C00909E +:10B23000AB6B6A6B296B0FF2B440FFF7C1FFE96C8F +:10B240000FF2E040FFF7BCFF6A69A9690FF2E8401E +:10B25000FFF7B6FF0FF2F840FFF7B2FF06E0101855 +:10B26000021D0FF20450FFF7ABFF641C04EBC40097 +:10B27000C200DB4811580029F1D10FF2F840FFF766 +:10B280009FFFA86D441E002505E00918BBA0FFF72D +:10B2900097FF641E6D1C3C2D09D2002C00D53B2469 +:10B2A000322000FB04F1D0480A5C002AEDD131BD08 +:10B2B000CE48CF490A6802604A6842608A68826064 +:10B2C000CA68C2600A6902614A6942610A7E826193 +:10B2D000097F8161C7490A7882614A6842628A6847 +:10B2E0008262CA68C2620A6902634A6942638A6901 +:10B2F0008263CA69C2638A6EC0F88820BE4A9369B5 +:10B30000C0F89830D368C0F88C301369C0F890301A +:10B310005369C0F894300B6FC0F89C304B6FC0F885 +:10B32000A0308B6FC0F8A430C96FC0F8A810B34923 +:10B330000968C0F8AC10B2490B68C0F8CC304B6853 +:10B34000C0F8D0308B68C0F8D430CB68C0F8D830A3 +:10B350000969C0F8DC105168C0F8E8101168C0F83D +:10B36000E410704770B506460C46994D6FF01E010B +:10B37000401A14D0083812D0001F05D0001F0ED07C +:10B3800008380CD0001F10D104F120002862EFF320 +:10B39000148040F00200E862286AA86205E004F127 +:10B3A00020002862EFF31480E862EFF308806862FF +:10B3B000EFF305802863EFF300806863FFF7C6FDB5 +:10B3C000A863EFF31080E863EFF311802864EFF3D4 +:10B3D00013806864F1EE100AA864EE64002004E0B3 +:10B3E00054F8201045F82010401C0828F8D370BDF0 +:10B3F00070B5774CA16D3C2901D30021A165A56DE5 +:10B400003221794A01FB05260A4601463046F9F702 +:10B4100063FD002086F83100681CA06570BD70B522 +:10B42000014674462046FFF79DFFFFF741FF204687 +:10B43000FFF78AFE00F09AF8002832D100F034F8C5 +:10B440000BF0B4FEF3200BF02BFF6E484FF00054CE +:10B45000002505E02178641C0BF008FF30466D1CC8 +:10B46000461CB5F5C03FF5D353210BF0FFFE52212A +:10B4700030460BF0FBFE741C412120460BF0F6FE1B +:10B48000641C4D2120460BF0F1FE5F48C046C046CB +:10B4900004F10D00FFF7BAFE0BF091FE5B4800F0DF +:10B4A0001FF8BDE8704054E510B50BF07FFEF320A7 +:10B4B0000BF0F6FE564C3820206002E02068083081 +:10B4C00020602068402807D200210BF07EFE09286A +:10B4D000F4D0FFF73EFDFCE7BDE810400BF06FBE77 +:10B4E00038B504460BF062FEF3200BF0D9FE3D4860 +:10B4F000016820460BF09EFE241DFF2120460BF024 +:10B50000B5FE641C404D697920460BF0AFFE641C0B +:10B51000E97820460BF0AAFE641C297920460BF03E +:10B52000A5FE641C297820460BF0A0FE641C6978F7 +:10B5300020460BF09BFE641CA97820460BF096FE7B +:10B54000F521601C0BF092FEBDE831400BF037BED8 +:10B5500080B50BF02BFEF3200BF0A2FEAA212D48A4 +:10B560000BF084FEBDE801400BF029BE0020294904 +:10B570000978F52900D101207047000025730A00E1 +:10B5800010B50446FFF742FCC0B2142800DB1320BC +:10B59000024621462048F9F79FFC4FF0AC30007876 +:10B5A00010BD80B500F049F8BDE80140D1E480B598 +:10B5B000FFF7CEFF4FF4C83212490020BDE8084023 +:10B5C000FCF79ABB0CED00E00400FA055886002059 +:10B5D000D82A0120FC4F0508FECAFECAA48000201C +:10B5E000A8F100205487002000BD0020D0130120C6 +:10B5F00000ED00E020ED00E004E000E0A0ED00E060 +:10B6000034EF00E000000608CC3B0120F4FF0708FF +:10B61000743C0120FFFF0708083A012010B500F034 +:10B620001BF80FF270142046FFF7F0FB024621468C +:10B630000020BDE81040FCF75FBB80B501214FF44E +:10B6400080200AF0D8FD01200BF0A4F994210F20EE +:10B65000BDE804400BF041BB80B501214FF48020D0 +:10B660000AF0C9FD01200BF095F900210F20BDE87B +:10B6700004400BF032BB10B5002401214FF48020B0 +:10B680000AF0B9FD01200BF085F90F200BF032FB19 +:10B69000942800D10124204610BD00004E6F205395 +:10B6A000796D626F6C0000003078253038780000CA +:10B6B0000A0A0A0A3D3D2043726173682044756D91 +:10B6C0007020496E666F726D6174696F6E203D3DCA +:10B6D0000A0000004669726D7761726520566572D6 +:10B6E00073696F6E203A2025640A00000A4950539E +:10B6F00052203D20307825782C2041505352203D57 +:10B7000020307825782C2078505352203D203078F6 +:10B7100025782C205046534352203D203078257800 +:10B720000A0000000A6661756C74206D6F64652004 +:10B730003D203078257800000A5043203D203078A5 +:10B7400025782C204C52203D20307825780A0000A6 +:10B750000A3C43726173682043616C6C20537461CE +:10B76000636B3E0A000000003078257820202573A6 +:10B770000A0000000A0A3D3D20526563656E742090 +:10B780004C6F67204D65737361676573203D3D0A9B +:10B7900000000000534E414D590000000000000021 +:10B7A000506002604160086070470A68F8E74860CE +:10B7B0000160704701684068F9E7F8B50600DFF8F6 +:10B7C000785802D505F15C00F2BD05F15C0400205B +:10B7D000696F00E0096805F17402914204D00C46DB +:10B7E000A2689642F6D10120002840D1E86FD0F837 +:10B7F0008070182009F0FEFF0446A660002F05D0D7 +:10B80000B74203D2B6FBF7F0784300E03046E06081 +:10B81000002F02D0B74200D23E462661002020759C +:10B82000DFF818683078401C30707078F0210842DA +:10B8300002D09920FFF706FBFFF771FB7078401CE0 +:10B84000707005F174012046FFF7AFFF7078F021AA +:10B85000084202D09920FFF7F5FA7078401E707008 +:10B86000C0B2002801D1FFF754FBF8F782FB204655 +:10B87000F2BD38B5044694F91400002829D1DFF848 +:10B88000BC572878401C28706878F021084202D004 +:10B890009920FFF7D7FAFFF742FB6878401C6870E1 +:10B8A0002046FFF787FF204609F0BCFF6878F021AB +:10B8B000084202D09920FFF7C5FA6878401E6870E8 +:10B8C000C0B2002801D1FFF724FBBDE83140F8F7F2 +:10B8D00050BB31BDF8B5044608466FF00045FFF790 +:10B8E0006CFF064694F9050094F90410814214D1C6 +:10B8F000C01C800009F07EFF074694F9050001286E +:10B9000007DB820021683846F9F7E6FA206809F07B +:10B9100089FF27606079C01C607194F90400411CA4 +:10B920002171216841F82060DFF81407864202D0B7 +:10B93000307D401C3075002008E0216851F820104F +:10B940008A68954201DB1546A160401C94F90410F9 +:10B950008842F2DBF1BDF8B504466FF00046DFF82F +:10B96000D82602F15C0502F15C004FF0FF3300279E +:10B9700004E0664501DB664675467F1C94F904C009 +:10B9800067450DDAD4F800C05CF827E0DEF808C09F +:10B99000002BEED58C45ECD170463B465BB2ECE714 +:10B9A000002B11D4BCF1010F0EDB06E0216801EB86 +:10B9B0008306766841F823605B1C94F904104E1EE0 +:10B9C000B342F3DB491E217102F15C01884204D0CD +:10B9D000017D491E0175FFF74CFFA560F1BD10B454 +:10B9E000C26A836B406C9C68002C02D56FF00043E8 +:10B9F00000E01B698468002C02D56FF0004000E075 +:10BA00000069984200DD1846D2685143884201DB44 +:10BA1000012000E0002010BC704738B5DFF8181690 +:10BA2000CA6FD36E012490F90850AC402343D3660B +:10BA300001F6D811FFF7B9FE012032BD10B5DFF8CD +:10BA4000F815C96FCA6E012390F90840A3409A43C4 +:10BA5000CA66FFF7AFFE012010BD01207047F8B5A0 +:10BA6000044615461E4604F12400FFF733FF06EB9B +:10BA7000460004EB8007294607F13000FFF72AFF54 +:10BA800097F9340000903346627A94F908100FF267 +:10BA9000B450F7F715FDF1BDF8B5044615461E463E +:10BAA00004F12400FFF757FF06EB460004EB800784 +:10BAB000294607F13000FFF74EFF97F93400009058 +:10BAC0003346627A94F908100FF28850F7F7F8FCC1 +:10BAD000F1BDC16A8A68012A09DB0969012906DA10 +:10BAE000006D002801D5002070470220704700201B +:10BAF000704701EB410200EB8201896B8A68012AE1 +:10BB000009DB0969012906DA006D002801D500204A +:10BB100070470220704700207047002900D5D8E701 +:10BB2000E7E7012900DA012113460A4697E70129D0 +:10BB300000DA012113460A46AEE7DFF8FC04C06ACA +:10BB4000417A481E8041C00F704713464FF0FF32C4 +:10BB5000114684E713464FF0FF3211469CE780B54B +:10BB6000DFF8D4040068417A002902D1006E4068F1 +:10BB70008047012002BD80B5FFF760FFDFF8B80401 +:10BB80000068417A002902D1006E80688047012058 +:10BB900002BDB1F57A7F01DC4FF47A7113460A4693 +:10BBA0004FF4FA715BE7B1F57A7F01DC4FF47A71FB +:10BBB00013460A464FF4FA716EE710B504460029A1 +:10BBC00022D5E06A816801291CDB0069012819DAA5 +:10BBD00002212046FFF703FF002813D194F95400F7 +:10BBE00010F1010F04D1002084F85400012010BD91 +:10BBF000002807D1012060774FF0FF3084F854000F +:10BC0000022010BD002010BDBDE8104071E74FF0CC +:10BC1000FF3280F8542000E7C92900DAC821134612 +:10BC20000A4642211BE7C92900DAC82113460A4601 +:10BC3000422131E710B50446002927D5E06A816822 +:10BC4000012921DB006901281EDA03212046FFF7C4 +:10BC5000C6FE002818D194F95400014611F1010FD5 +:10BC600004D1002084F85400012010BD002803D125 +:10BC7000012084F8540010BD012905D14FF0FF3098 +:10BC800084F85400022010BD002010BDBDE8104013 +:10BC90002FE74FF0FF3280F85420DFF89C23D26F5B +:10BCA000D2F88020C83252420265B6E6DFF8882317 +:10BCB000D26FD2F88020C83252420265ADE61346F8 +:10BCC0004FF0FF321146CAE613464FF0FF321146DD +:10BCD000E2E680B5FFF7A1FEF7F771FB00210175E1 +:10BCE000012002BD80B5FFF7A9FEF7F768FB002130 +:10BCF0000175012002BD00002DE9F0410C46CE4D3A +:10BD000055F82060307206F154070FF2583139614E +:10BD1000162800F22781DFE810F017002700330013 +:10BD20004D0040005A006B007B00AB008B009B0075 +:10BD3000BB00CB00D900E600F20000010D011A01A2 +:10BD40001A011A011A011A0106F1080006214176AA +:10BD50000A21817605F6E011416040F2DC518160F4 +:10BD60000FF21C303861FDE006F108000621417633 +:10BD70000A21817605F6BC71416064218160F1E0A1 +:10BD800006F108000C2141761021817605F58051DD +:10BD90003431416010218160E4E006F108000721A0 +:10BDA00041760B21817605F58051283141600B21C8 +:10BDB0008160D7E006F10800062141760A218176EC +:10BDC00005F58051443141600A218160CAE006F1E5 +:10BDD0000800062141760A21817605F5805150310F +:10BDE00041604FF4FA7181600FF2E8203861B9E0E8 +:10BDF00006F10800262141762A21817605F5905129 +:10BE0000443141602A2181600FF238303861A9E065 +:10BE100006F10800032141760721817605F590514E +:10BE20008C314160072181600FF2E020386199E098 +:10BE300006F108000C2141761021817605F590511C +:10BE40007C314160102181600FF2A420386189E0CB +:10BE500006F10800022141760621817605F5905110 +:10BE600094314160062181600FF2BC20386179E095 +:10BE700006F10800052141760921817605F59051EA +:10BE800070314160092181600FF22C20386169E036 +:10BE900006F10800062141760A21817605F59051C8 +:10BEA0009C3141600A2181600FF2F010386159E045 +:10BEB00006F10800012141760521817605F59051B2 +:10BEC000A831416040F2866181604BE006F10800D4 +:10BED000012141760521817605F5C851383141604F +:10BEE000052181603EE006F108000C214176102119 +:10BEF000817605F5CA5141601021816032E006F17A +:10BF00000800112141761521817605F5C85150317F +:10BF1000416041F66631816024E006F1080011219C +:10BF200041761521817605F55051B83141601521D2 +:10BF3000816017E006F1080004214176082181762E +:10BF400005F5C85130314160082181600AE006F1F1 +:10BF50000800012141760521817605F58151416076 +:10BF60000521816006F10800002101754175817588 +:10BF70000176C1600161417006F128080846C8F8E1 +:10BF800028004FF0FF3086F854007880062206F132 +:10BF90005800FDF71CFD002010E000EB400106EB0F +:10BFA0008101002281F8342034314A7005F15C02AD +:10BFB0004A6006EB800100228A64401C0228ECDB08 +:10BFC000002086F8280088F8010005F15C00C8F818 +:10BFD0000400FC60BDE8F08110B5174CFAF7C8FF0B +:10BFE000E067002006E0682111FB0041803144F841 +:10BFF0002010401C1728F6DB4FF0FF306066A0666B +:10C000000020E06600F00DFFF8F736FFFAF75DFF5D +:10C010000BF0F6FD0CF056FD0CF0B9F80CF072FBCD +:10C020000CF0BCFD0DF003F90CF0C2FD0CF0D1FDDD +:10C03000BDE810400CF0B7BD08400020A4800020EF +:10C04000644000204144202564202564202564208C +:10C0500025640000524D202564202564202564209D +:10C06000256400005BBA00081BBA00085BBA000830 +:10C070003DBA000823BB00082FBB00081BBB00080B +:10C080003BBB00081BBA00083BBB00083DBA0008D8 +:10C0900023BB00082FBB00081BBB00085FBB0008C8 +:10C0A0001BBA00085BBA000877BB00084BBB00084E +:10C0B00055BB00081BBB00085BBA00080FBC00089A +:10C0C0005BBA00083DBA000893BB0008A7BB000894 +:10C0D000BBBB00085BBA000893BC00085BBA000851 +:10C0E0003DBA000819BC000827BC000835BC000890 +:10C0F0005BBA0008ADBC00085BBA00083DBA000896 +:10C1000023BB00082FBB00081BBB00085BBA00085C +:10C11000D3BC00085BBA0008E5BC0008BFBC00083F +:10C12000C9BC00081BBB00085BBA00081BBA0008AA +:10C130005BBA00083DBA000823BB00082FBB00080B +:10C140001BBB00085BBA00081BBA00085BBA0008FA +:10C150003DBA000823BB00082FBB00081BBB00082A +:10C16000010040F10980F446404200F005F851F02A +:10C1700000416047010000BF09D0B0FA80F188405B +:10C18000C91CC1F58461090501EBD0214005704748 +:10C190004FEAF17CBCF1E04C2CBFBCF5001F11E074 +:10C1A0005FEA4C0C34BFBCF17F5F2EE05FEA9C0C71 +:10C1B0004FEA0C1C4FEA3C0CC10071F100414CEB02 +:10C1C00050707047C90241EA5051C00218BF41F097 +:10C1D000010141F000414FEA6C50C0F109002128F3 +:10C1E00010D240EACC7CCCF1200C11FA0CF070F1AA +:10C1F0000040CCF1200C21FA0CF00CF0004C40EB8C +:10C200000C0070474FEACC707047490011F5001FD1 +:10C2100004D84FEACC10FF30C0057047C8177047EC +:10C220000248704702480149401A70470000002048 +:10C23000002000200901002806D500F00F004C4A1C +:10C24000801800F8041C70474A4A8154704710B5A2 +:10C25000401EB0F1807F01D3012010BD464C6060CC +:10C260000F214FF0FF30FFF7E5FF0020A06007200F +:10C270002060002010BD38B5404D2878401C287043 +:10C280003F4C2078401C2070F7F757FE0DF06CF8FB +:10C290002878411E2970002802D19820FEF7D2FD8F +:10C2A0002078012804D16068002801D0FEF72DFE17 +:10C2B0002078401E207031BD10B5314C6078F021DF +:10C2C000084202D09920FEF7BDFDFEF728FE6078F7 +:10C2D000401C60700DF0A2F82A4800684FF47A7193 +:10C2E000B0FBF1F0FFF7B3FF002800D0FEE72648CF +:10C2F000264901600E214FF0FF30FFF79BFF607869 +:10C30000F021084202D09920FEF79CFD6078401E83 +:10C310006070C0B2002803D1BDE81040FEF7F9BD3F +:10C3200010BD000010B51A4C4FF400512046418357 +:10C33000C04630BF4FF4005120460AF09BF8F3E7A7 +:10C3400010B40F48006A0F4909684FF47A72B1FBC4 +:10C35000F2F1104A1368CB1A0F4C2468640102D51D +:10C3600012688B1A401C00FB013010BC70470000A3 +:10C3700018ED00E000E400E010E000E0113D0120D5 +:10C38000A4800020F086002008ED00E000000008F6 +:10C390000010024018E000E004ED00E0EFF305803B +:10C3A00000284DF09B80704780B5EFF3108072B687 +:10C3B0000B49096851F47F01094A116080F3108824 +:10C3C0000848006810F4700F02D1A720FEF73AFD6C +:10C3D00005485FF00071016004480021016001BD63 +:10C3E00020ED00E088ED00E03CEF00E034EF00E0FD +:10C3F0004268C2F30A5240F2FF739A4209D141687F +:10C40000090304BF0068002801D101207047022001 +:10C41000704743685B0004BF0368002B25D040F2DF +:10C4200033439A1A521A012A1FDB352A06DB416868 +:10C4300001F0004141600021016013E0012102F0A0 +:10C440001F039940491E920607D5426811404A4091 +:10C45000426002681143002202E0026811404A4033 +:10C46000026011B14FF0FF307047002070470000AC +:10C4700070B44FF0004591EA030C44BF6B4009F0E3 +:10C4800097BD00BF841A71EB030603D2001BB141B4 +:10C49000121973414FF4001C1CEB410F34BF7CEBAD +:10C4A000430443E00C0DA4EB1356352E50DC45EA53 +:10C4B000C323DB0A45EAC121C912B6F120050DDD0F +:10C4C00063FA05F6EB4086EA0305124218BF45F011 +:10C4D0000105C01851F100010CD213E062FA06F513 +:10C4E000F2405540F3415A40B340F3405A4080185F +:10C4F000594107D349085FEA30005FEA350528BF94 +:10C5000045F0010501F58011420875F1004250F136 +:10C51000000041EB045170BC4FF4001C1CEB410FB8 +:10C5200038BF70470020090D090570471CEB410F0B +:10C5300010D252EA43060BD0BCEB410F05D80C0DCC +:10C54000AB43661E342EB5DD02E0AB438018594183 +:10C5500070BC704770BC704700B583B000218DF887 +:10C5600004100121009101AB2022B021F7F778F8E7 +:10C57000002801D100200EBD01200EBD80B5002293 +:10C58000ADF8002022228DF800208DF80110022342 +:10C5900000AAB021F7F70AF8002801D1002002BD57 +:10C5A000012002BD00B583B000218DF804100121E7 +:10C5B000009101AB2322B021F7F752F8002801D1F6 +:10C5C00000200EBD9DF804000EBD30B583B00446BA +:10C5D0000020ADF806008DF804000146FFF7CEFFFD +:10C5E00005460120009001AB0022B0211046F7F76C +:10C5F00037F8002801D100203EBD00208DF806004C +:10C600009DF8040000F09F00204340F007008DF8E3 +:10C61000070002230DF10602B0210020F6F7C6FF45 +:10C62000002801D100203EBD28463EBD10B584B093 +:10C630000C4601A800210A4606C00620009001AB66 +:10C640002A22B0210020F7F70BF8002801D10020A2 +:10C650000EE001A8417821709DF804106170C17846 +:10C66000A1708178E17041792171007960710120B8 +:10C6700004B010BD7CB500A800210A4606C0012107 +:10C680001046FFF77BFF044600208DF80000DFF81E +:10C690006455032229460DF10100F8F71DFC04231F +:10C6A00000AAB0210020F6F781FF002801D1002068 +:10C6B00076BD03208DF800000246E91C0DF1010053 +:10C6C000F8F70AFC042300AAB0210020F6F76EFF59 +:10C6D000002801D1002076BD06208DF8000003223D +:10C6E000A91D0DF10100F8F7F7FB042300AAB02102 +:10C6F0000020F6F75BFF002801D1002076BD09205D +:10C700008DF80000042205F109010DF10100F8F790 +:10C71000E3FB052300AAB0210020F6F747FF00281D +:10C7200001D1002076BD0F208DF8000000AE687B9F +:10C730007070022300AAB0210020F6F737FF00280E +:10C7400001D1002076BD17208DF80000A87B707005 +:10C75000022300AAB0210020F6F728FF002801D10B +:10C76000002076BD204676BD38B500210846FFF78B +:10C7700005FF0446DFF88054012000902B4600227C +:10C78000B0211046F6F76CFF002801D1002032BD21 +:10C79000012000906B1C0422B0210020F6F760FFFE +:10C7A000002801D1002032BD01200090AB1C0522E1 +:10C7B000B0210020F6F754FF002801D1002032BD3F +:10C7C00001200090EB1C0622B0210020F6F748FF64 +:10C7D000002801D1002032BD204632BD70B582B0A4 +:10C7E0000020ADF800000146FFF7C8FE0446002017 +:10C7F0008DF80000DFF8005400AE28787070022336 +:10C8000000AAB0210020F6F7D1FE002801D10020B7 +:10C8100076BD04208DF8000068787070022300AAAD +:10C82000B0210020F6F7C2FE002801D1002076BD1D +:10C8300005208DF80000A8787070022300AAB021AE +:10C840000020F6F7B3FE002801D1002076BD0620B7 +:10C850008DF80000E8787070022300AAB021002053 +:10C86000F6F7A4FE002801D1002076BD204676BD53 +:10C8700038B50020ADF8000005460221FFF77EFE26 +:10C8800000AC00E06D1C032D0EDA05F119008DF8E7 +:10C89000000000206070022300AAB021F6F786FE97 +:10C8A0000028EFD1002032BD00210846FFF766FEC8 +:10C8B000054600208DF8000067206070022300AA62 +:10C8C000B0210020F6F772FE002801D1002032BD11 +:10C8D00004208DF80000C7206070022300AAB02158 +:10C8E0000020F6F763FE002801D1002032BD0520AC +:10C8F0008DF80000C048807800F0F00040F0110092 +:10C900006070022300AAB0210020F6F74FFE002835 +:10C9100001D1002032BD284632BD70B582B0044638 +:10C920000020ADF800000646002903D1002C0CD0F1 +:10C9300030260AE0012903D1002C06D0282604E085 +:10C94000022902D1002C00D018260146FFF716FE5E +:10C95000054604208DF80000A748407800F0C70085 +:10C96000304340F0C0008DF80100022300AAB0213E +:10C970000020F6F71BFE002801D1002076BD002C18 +:10C9800002D0C820F7F7AEFD284676BD30B5ADF52C +:10C99000197D044667A8C821F5F756FD35A8C821BA +:10C9A000F5F752FD03A8C821F5F74EFD01A80021B7 +:10C9B0000A4606C00D461AE001A89DF80410427808 +:10C9C00042EA012167AA22F815109DF806109DF889 +:10C9D000072042EA012135AA22F8151000799DF8B6 +:10C9E000091041EA002003A921F815006D1C642DEF +:10C9F00013DA0120F7F776FD0020FFF7D3FD40079B +:10CA0000F7D50620009001AB2A22B0210020F6F7CE +:10CA100027FE0028D0D100202AE0002528462060EB +:10CA20006060A06014E067A931F9151000FA81F088 +:10CA30002060606835A931F9151000FA81F0606056 +:10CA4000A06803A931F9151000FA81F0A0606D1CEF +:10CA50002068642DE7DB642190FBF1F020606068C2 +:10CA600090FBF1F06060A06890FBF1F0A060012005 +:10CA70000DF5197D30BDF8B5044610680B68C01A75 +:10CA80000F2390FBF3F550684B68C01A0F2390FBFF +:10CA9000F3F690688968401A194690FBF1F70FF297 +:10CAA0009C30F6F70DFD002D00D56D422580002E3F +:10CAB00000D576426680002F00D57F42A780B4F96A +:10CAC00004000090B4F90230B4F9002000210FF204 +:10CAD0008030F6F7F5FC0120F2BD30B583B00020C0 +:10CAE000ADF806008DF8040005460146FFF746FD47 +:10CAF00004462846FFF730FD002802D128463EBDF7 +:10CB00006D1C032D08DA294649B20020FFF705FF06 +:10CB10000028F5D100203EBD0120009001AB00228D +:10CB2000B0211046F6F79CFD002801D100203EBD43 +:10CB30000DF106059DF8040000F00700072812D04B +:10CB400000208DF806009DF8040040F00700687092 +:10CB500002230DF10602B0210020F6F727FD002880 +:10CB600001D100203EBD04208DF80600C72068706A +:10CB700002230DF10602B0210020F6F717FD002870 +:10CB800001D100203EBD05208DF8060033206870DD +:10CB900002230DF10602B0210020F6F707FD002860 +:10CBA00001D100203EBD20463EBD10B50024F6F761 +:10CBB00006FC007CC00700D50124204610BD602083 +:10CBC00003E580B50020FFF700FD002801D100201B +:10CBD00002BD012002BD0120704780B52A22014616 +:10CBE0000648FFF723FD002801D1002002BD0120E7 +:10CBF00002BD0000F4860020EC3B0120D01B012088 +:10CC00001CB500A800210A4606C001220320F6F741 +:10CC100049FE01210020FFF7B1FC0B208DF8000038 +:10CC200000208DF80100022300AAB021F6F7BEFC17 +:10CC3000002801D1002016BD6020FFF7C6FC044685 +:10CC40000FF22820F6F73CFC204616BD70B582B0E6 +:10CC500004460020ADF80000F6F7B1FB05460FF2E0 +:10CC60001C20F6F72DFC012211460320F6F71AFED0 +:10CC70000020F6F719FEFFF7FDFC4020FFF7A5FCAA +:10CC80000646012020702846407DC046012810D06D +:10CC900001212846F6F77FFDBDF80000401CADF8E5 +:10CCA0000000BDF800003228EDDB0FF2E410F6F7CB +:10CCB00007FC012200210320F6F7F4FD0020F6F71F +:10CCC000F3FDFFF79DFF002801D1002076BD30461F +:10CCD00076BD70B58CB0044608A800210A460B4604 +:10CCE0000EC005A80EC002A80EC000A806C00E46C1 +:10CCF000FFF73AFD002801D130466BE0FFF7B8FDA1 +:10CD000000280BD06020FFF760FC0546314608463E +:10CD1000FFF703FE002803D130465BE0304659E0C0 +:10CD200005A8FFF733FE002809D1304652E008A8D5 +:10CD300002A951F8261040F82610761CF6B2032EF0 +:10CD40000FDA314649B20120FFF7E7FD002801D193 +:10CD500000203FE002A8FFF719FE0028E7D10020DD +:10CD600038E008AA05A900A8FFF785FE0646012EAF +:10CD700003D00FF22810F6F7A3FB01202070BDF8B6 +:10CD800000006070BDF900000012A07000A841888A +:10CD9000E170B0F902100912217181886171B0F956 +:10CDA00004000012A071E671002601E0761CF6B2C4 +:10CDB000032E08DA314649B20020FFF7AEFD002805 +:10CDC000F4D1002006E0FFF709FD002801D1002082 +:10CDD00000E028460CB070BD80B50178012905D16E +:10CDE000FFF734FF002808D0012002BD0178022996 +:10CDF000FAD1FFF76EFF0028F6D1002002BD10B572 +:10CE0000FFF738FC4020FFF7E0FB04460122114603 +:10CE10000320F6F747FD0FF29000F6F751FB20468E +:10CE200010BD80B50FF288010020FEF765FF0FF2FC +:10CE3000A4010B20BDE80440FEF75EBF4143432040 +:10CE400073656C662073756363657373000000001F +:10CE500041434320726174696F3A2025642C202578 +:10CE6000642C2025642C20256400000041434320CD +:10CE7000436C6F73655F496E74000000414343204B +:10CE8000496E742073656C667465737400000000ED +:10CE9000414343205354302D3200000063686563E2 +:10CEA0006B206661696C000041434320496E740049 +:10CEB000DBCA0008BFCB0008C3CB0008D7CB0008F3 +:10CEC00000000000DBCB000800000000D9CD000806 +:10CED00000000000ABCB0008FFCD000801CC00082B +:10CEE0000000000000000000000000000000000042 +:10CEF00000000000000000004FF4001C1CEB410F7C +:10CF000094BF1CEB430F09E041EA030C50EA4C0CC0 +:10CF100052EA0C0C03D2994208BF9042704714BFEA +:10CF20008B4282427047002848BF40427047000051 +:10CF3000D2B2203A22BF41FA02F0C917704720321C +:10CF4000D141D04048409140D140484091401141AA +:10CF500070477FB50D46044616461946002D44BF5E +:10CF6000E843451C02AB03AA2846F3F744F900AB9B +:10CF700001AA31462846F3F73EF9009803990818AC +:10CF800003990090884202D20198401C01900298B7 +:10CF900080300290802806D20098401C009002D178 +:10CFA0000198401C019000990298090641EA10205E +:10CFB000029001990098090641EA1020009001981A +:10CFC000000A02D10098002807D54FF0FF306FF01B +:10CFD0000041C4E90001002004E001460298C4E9D0 +:10CFE0000001012004B070BD10FB01F0704710FB80 +:10CFF00001F000F500600001001470472DE9F843CE +:10D00000DFF8084CDFF8085CE067C4F880200020F7 +:10D0100005EB4001CC228A82EB224A83E5220A8476 +:10D0200005EB80014FF0C072CA65401CDFF8E42BAD +:10D030004A64A7228A660328EADB4FF00608DFF875 +:10D04000D86B002700224146301DF6F749F93A46D1 +:10D05000414605F12800F6F743F93A46414606F104 +:10D060000C00F6F73DF93A46414606F12800F6F77E +:10D0700037F93A46122106F11400F6F731F941F674 +:10D080009910F08068854FF4805140F6CC40F081D3 +:10D090007185394608FB0162491CD0820329F9DBFE +:10D0A000102610220FF2D801281DF6F7D1F8E889D2 +:10D0B0008000E8814FF00C09288A800028823A46D7 +:10D0C000688A80006882494605F15000F6F708F941 +:10D0D00040F2471028866F703A46314604F15800F6 +:10D0E000F6F7FEF83A46314604F16800F6F7F8F82C +:10D0F0004FF08076A666A6653A468021DFF81C0BC5 +:10D10000F6F726F93A46242104F11C00F6F7E8F870 +:10D11000E66104F55C70DFF8083BDFF8082BDFF808 +:10D12000081B0CF0F5F93A46414605F13400F6F7D4 +:10D13000D7F83A46494605F17400F6F7D1F83A4671 +:10D14000414605F13C00F6F7CBF8DFF8E04A3A46F5 +:10D150002C212046F6F7FCF84FF0F050E06142F247 +:10D160008210208441F29910A084DFF8C40AA062E2 +:10D17000DFF8C00AC5F88000BDE8F1432CE00000EC +:10D180009901990199012800CC004500450045000E +:10D19000DFF8A40AC16B00291EBF006C40F2012118 +:10D1A000084201D0002070470120704770B5154635 +:10D1B0000C46DFF8886A0246002130460CF0D8F9A8 +:10D1C0002246022130460CF0D3F92A463046BDE80B +:10D1D000704001210CF0CCB980B5012000F008F8B6 +:10D1E000DFF8540A816B41F00201816301F098BDC0 +:10D1F0002DE9F84FDFF8144ADFF83C5A002668B1F1 +:10D2000000220C2105F13800F6F7A2F8286C40F056 +:10D210000100286404F55C700CF08AF9DFF8207ACC +:10D22000002244213846F6F793F8052038704FF471 +:10D230008050DFF8E479DFF8D899B881BE80A9F88A +:10D2400028603E853246F42104F18400F6F780F828 +:10D250003246102104F16800F6F77AF801226A706C +:10D260003A70C5E91266C4E91066C4E91266C5E9F8 +:10D270001466C7E916664FF080783246C4F86880B5 +:10D280002E70AA7022706270A270E270BA80A9F843 +:10D2900028204FF4006307EB4200521C038783866B +:10D2A0000386022AF7DB01222271C7E91866C7E963 +:10D2B0001A66C5E91666C4E91466C5E91866C5E9C3 +:10D2C0001A66C5E91C66C5E91E66C7E91C66002228 +:10D2D0004FF02009AB836271A2712272AA7162724F +:10D2E000EA716A71E271EA702A712A726A72AA722C +:10D2F000A272EA72E272494604F5BC70F6F728F8A9 +:10D300004FF0400A3246514604F5CC70F6F720F84B +:10D310004FF0300B3246594604F5EC70F6F718F82A +:10D320003246514604F50270F6F712F83246594675 +:10D3300004F51270F6F70CF80422114604F51E707D +:10D34000F2F79AFF0322114604F52670F2F794FFD4 +:10D350003246082104F52B70F5F7FAFF4FF0060A64 +:10D360003246514604F52D70F5F7F2FF3246494634 +:10D3700004F52F70F5F7ECFF3246514604F537708F +:10D38000F5F7E6FF3246494604F53970F5F7E0FF58 +:10D390003246494604F54170F5F7DAFF32460C2172 +:10D3A00007F14400F5F7D4FFDFF870A80AF1800B0D +:10D3B000324638215846F5F7CBFFCAF88080CBF8C3 +:10D3C00010803246494604F54970F5F7C1FF3246F0 +:10D3D000494604F55170F5F7BBFF32460C2104F5C0 +:10D3E0005970F5F7B5FF3046C5F88000E8830FF2B5 +:10D3F000680105E095F83820920701D4052808DA7D +:10D4000031F9102005EB40039A8104EB40035242AE +:10D410009A81401C0828EDDB0FF24C01002031F905 +:10D42000102005EB4003401C1A8452421A85042840 +:10D43000F5DB00200FF2380131F9102005EB400335 +:10D440001A8607EB40035242401C9A870328F3DBFD +:10D45000A667BDE8F18F0000050005000500050086 +:10D4600006000100010001000300030003000300A7 +:10D470000100010001000000DFF89017DFF8B80795 +:10D48000D1E91423B2F1F04263F10003002B06DB73 +:10D4900001DC032A03D3816B41F002018163816BBC +:10D4A00041F002018163016C41F002010164C16B32 +:10D4B00041F00401C1637047DFF87C07016C41F063 +:10D4C00008010164816B41F002018163C16B41F08D +:10D4D0000601C163704770B5DFF85C57044695F9E3 +:10D4E000020078B974B1EE6B0EB900F00DF8A86BBC +:10D4F00040F00300A863286C40F02000286446F048 +:10D500000400E863AC7070BD10B50020DFF80C17A4 +:10D51000DFF8F836DFF8F82603EB800302EB80042F +:10D520005B6B636702EB4002DFF80C3703EB4003F1 +:10D53000DB8A938601EB001303EB4003401CB3F836 +:10D540005A3093870328E3DB10BD38B50446DFF873 +:10D550009459216818222846F2F724FE616818229F +:10D560002846F2F71FFEA1682846BDE83840182279 +:10D57000F2F718BE00B583B00146062200A8F5F701 +:10D5800067FE002000A931F91020512ABCBF5122AA +:10D5900021F8102031F81020DFF8743603EB400337 +:10D5A000401C9A820328EEDB07BD01460C22DFF8FF +:10D5B0003809F5F74DBE2DE9F843DFF8544601462A +:10D5C0000C2204F14400F5F743FE00250FF250064B +:10D5D000DFF818990FF2940804EB8507DFF81019AB +:10D5E000786C884207DB43464A46314600F0E4FD4A +:10D5F000DFF8000978646D1C032DEDDB606C00F52D +:10D600008060C0122084A06C00F58060C01260842D +:10D61000E06C00F58060C012A084BDE8F1830000DA +:10D62000496E707574206779726F73636F706520CF +:10D630006E6F69736520746F6F206C61726765200F +:10D640002D2073657474696E6720746F206D617826 +:10D65000696D756D206F66203364707320282573A3 +:10D66000203A3A202573290D0A0000004779726F8D +:10D67000436F6D7041435F5365744779726F736395 +:10D680006F70654E6F697365460000002DE9FC41BF +:10D6900004469088B2F906600D46C0F58051508866 +:10D6A000C0F5805009B200B2FFF7A1FCDFF8688531 +:10D6B0000246D8E91601002904BF0028C8E916452A +:10D6C000D8E91601DFF87075231A97F9080040F6BB +:10D6D00086718A4202DB40B9012005E040F6333111 +:10D6E0008A4202DA08B100203872002000903246E7 +:10D6F00008F1280101A8F4F76FFBBDF904006FF0F1 +:10D700000101A0F266628A42A8BF012004DAA0F2F9 +:10D710006620884201DA0020F872C8E91645BDE8A3 +:10D72000F381B2F90000DFF8101591F9092040F6F5 +:10D730008673984202DB42B9012005E040F633339C +:10D74000984202DA0AB1002048727047B2F900002C +:10D75000DFF8E41491F90A2040F68673984202DB60 +:10D7600042B9012005E040F63333984202DA0AB1AB +:10D770000020887270472DE9F0478AB08246BDF9D3 +:10D78000500099460C469046DFF8643D41F622175A +:10D7900000280CD5191A08D5A3EB4001B94212BFD5 +:10D7A000381800F5C85021300DE0181A0BE0391A6E +:10D7B00008D5A7EB4001994212BF181841F6231172 +:10D7C000401A00E0381A00B2F3F7DBFD47F6FF77A6 +:10D7D0000128C0F28B8000F2555109B240F6555035 +:10D7E000F3F729F90546B5F5805FB8BF4FF48055CA +:10D7F000BDF948003A462946F4F794FD0646BDF9BE +:10D800004C003A462946F4F78DFD0746002000906B +:10D810005346DFF804543246291D02A8F4F7DCFA17 +:10D82000BDF908008642B8BF0646019600F06AF8C6 +:10D83000079001960020009000234FF4805200F0E2 +:10D840005BF80890019700F05DF80590019700F0F3 +:10D8500064F800F051F8069001964FF48050009063 +:10D86000002302464FF400510CF06FF9039001962B +:10D8700000F053F84FF4005110460CF066F900F038 +:10D88000FDF80FF2F01705F1340207A938460CF045 +:10D89000A7F900F0F4F805F1380203A938460CF0B6 +:10D8A0009FF900F0ECF805F1500205A90FF24000D5 +:10D8B0000CF096F9DFF88003B0F91C70EE8EB5F924 +:10D8C00034003946FFF793FB8019208039466C8F6E +:10D8D000B5F93800FFF78BFB0019A8F80000B5F880 +:10D8E0005200A9F800000AB0BDE8F0873D467FE786 +:10D8F000FB0F04000400FB0F4FF440514FF40050A5 +:10D900000CF023B94FF480500090024600234FF4EE +:10D9100040514FF400500CF018B90020009003461D +:10D920004FF48052704770B58CB004460D461346D4 +:10D93000002604AA05A909A801F07CF8A0B12A468E +:10D9400001A902A801F0C8F870B105AA02A907A8A8 +:10D9500002F060F90FF21800009007AB02AA05A9C7 +:10D96000204602F09CF9012630460CB070BD000044 +:10D970000000000000100000F0B587B014461D46FE +:10D980000846FFF731FBA54ED6F8B410012928DB75 +:10D99000884226DA9D4F386B002803D5410008BF26 +:10D9A000401C4042DFF8301D88421ADA97F909001E +:10D9B000B8B934F9101003AA090342F8201000AADC +:10D9C00035F91010090342F82010401C0328F0DB41 +:10D9D00003A907F11C00FFF7A6FF0020F862C6F8B4 +:10D9E000B40007B0F0BD10B586B00C460021009120 +:10D9F00003462246DFF8E41C02A8F4F7EDF9BDF96E +:10DA00000800A042B8BF2046ADF8080000F03BF87F +:10DA10004FF48050009001464FF400600CF095F8F0 +:10DA2000039000F030F8002000904FF480514FF444 +:10DA300000600CF08AF800F021F8774C0FF2340007 +:10DA400004F1300203A90CF0CBF87B48B4F9322082 +:10DA500090F9031040F667639A4202DB39B901215D +:10DA600004E0B2F5006F02DA09B10021C17006B01E +:10DA700010BD0000CC0C33032800D70F0490022007 +:10DA80000090012370470023BDF9080001904FF476 +:10DA9000005270472DE9F04D074603F5006086B04F +:10DAA00000015A4C94F905B00192001402900091C3 +:10DAB0000DF10E0304AA03A93846FFF75CFEBDF979 +:10DAC0000C0094F9081094F90B2042B9BDF910200C +:10DAD000B2F5006F07DA31B90120207204E029B1F4 +:10DAE0000021217202E009B1BDF9100040F6676A19 +:10DAF00094F90510504502DB39B9012004E0B0F576 +:10DB0000006F02DA09B100206071BDF90E1094F9BE +:10DB10000600514502DB38B9012004E0B1F5006F81 +:10DB200002DA08B10020A071434D94F90900B5F95B +:10DB30001C10514504DB48B901206072607105E09A +:10DB4000B1F5006F02DA08B10020607294F90800A4 +:10DB500000281EBF95F9080000280120E071002070 +:10DB600094F905C0DFF8B0E00021BCF1000F07D048 +:10DB7000D4E91423D61943EBE7780022034606E0E4 +:10DB8000DEE918230026D219804643EBE773CEE97D +:10DB90001823C4E9146894F9092012B1002203463D +:10DBA00004E0D5E91623D21943EBE773C5E9162340 +:10DBB000DEE91863DFF8242C834204DB01DC9642A3 +:10DBC00001D3012605E0DEE91A010026C01941EB68 +:10DBD000E771CEE91A012671BDF90C1095F906001E +:10DBE000514502DB38B9012004E0B1F5006F02DADB +:10DBF00008B10020A871E34504D05FEA0C0002D010 +:10DC0000012000E0002006B0BDE8F08D58E50020BE +:10DC10006C240120C0CA0100E0270120181B01204C +:10DC200007ED0008E3EB0008F5E70008A037012046 +:10DC300008AC2C00B81E0500E8230120C8E800202D +:10DC4000F83301202DE9F04F8046DFF8946BDFF8C0 +:10DC5000947B0D460020F16B38708FB093469A4646 +:10DC6000080008D0D6E91449189AD317A21849EB2E +:10DC70000303C6E91423C20748BF80F001008207EE +:10DC80000BD5D6E916490023DFF85C2B994504DB58 +:10DC900001DC944201D380F0020042070BD5D6E9A3 +:10DCA0001E490023DFF8442B994504DB01DC944234 +:10DCB00001D380F0040002070BD5D6E914490023F4 +:10DCC000DFF8282B994504DB01DC944201D380F076 +:10DCD0000800F06300295DD000285BD1FFF788FAC7 +:10DCE000B06B96F84010DFF8084BCDF82CA0400838 +:10DCF00000F0010001F00101084380F0010040B292 +:10DD00000E9007F114000D9004F168000C90C6E924 +:10DD100012850FF29070099004F537700890C4E9ED +:10DD20001085B7F93000DFF8D0810790CDF828B022 +:10DD300007F16800069004F51E7307F14400059092 +:10DD4000424604F10C00049004F5BC7106F10C008D +:10DD50000390381D029004F53970019004F5267087 +:10DD6000009004F11C000DF05BF8DFF8685D296895 +:10DD7000C20710D4C80605D5012302220FF27C1178 +:10DD800000F01AFAF06B40F00100F063306C40F4E0 +:10DD900000703064A2E0387096F8402096F83800A1 +:10DDA00002F0010200F0010082F0010210421CD0DA +:10DDB000002007EB800204EB8003526F5A6308EBEC +:10DDC000001307EB400203EB4003B2F83CC0A3F89A +:10DDD0005AC006EB4003B2F93420DA8204EB400368 +:10DDE0005242401CDA820328E3DB96F84000C00769 +:10DDF00007D5C80605D5012302220FF2741100F0E1 +:10DE0000DBF996F84000800708D52878C00605D5CC +:10DE1000012302220FF28C1100F0CEF996F8400097 +:10DE2000000708D52878C00605D5012302220FF285 +:10DE3000B81100F0C1F996F84000C00608D528785E +:10DE4000C00605D5012302220FF2E41100F0B4F957 +:10DE500096F84000800608D52878C00605D501232D +:10DE600002220FF2142100F0A7F996F840004006B4 +:10DE700008D52878C00605D5012302220FF23C21DF +:10DE800000F09AF996F84000000608D52878C006F8 +:10DE900005D5012302220FF2742100F08DF9306CB8 +:10DEA000C00508D52878C00605D5012302220FF247 +:10DEB000A42100F081F90C2106F13800F4F7AAFA48 +:10DEC000B6F91C0040F60101884207DB306C40F0D7 +:10DED00040003064F06B40F00200F0630FB0BDE82A +:10DEE000F08F0000EF1B1A00C824012078EE000814 +:10DEF000176A0D00166A0D00181B01205245534584 +:10DF000054204641494C202D2053656E736F72207A +:10DF10006461746120656974686572206572726FEE +:10DF20006E656F7573206F7220616E6F6D616C6FBF +:10DF3000757320656E6F75676820746F20636175F7 +:10DF4000736520612062616420696E697469616C27 +:10DF500020737461746520284D49643A253038581F +:10DF60002C204749643A25303258290D0A00000018 +:10DF70005354415254494E47205448452047595222 +:10DF80004F2D434F4D5041535320284D49643A255E +:10DF90003038582C204749643A25303258290D0A28 +:10DFA000000000004779726F636F6D7061737320BA +:10DFB000726573657474696E672064756520746F2B +:10DFC000206D61672063616C6962726174696F6E54 +:10DFD00020284D49643A253038582C204749643A66 +:10DFE00025303258290D0A004779726F636F6D70C2 +:10DFF00061737320726573657474696E67206475EC +:10E000006520746F206779726F2063616C6962723A +:10E010006174696F6E20284D49643A253038582C58 +:10E02000204749643A25303258290D0A0000000083 +:10E030004779726F636F6D7061737320726573657A +:10E040007474696E672064756520746F20747572CE +:10E050006E696E67206F6E20746865206779726FD5 +:10E0600020284D49643A253038582C204749643AD5 +:10E0700025303258290D0A004779726F636F6D7031 +:10E0800061737320726573657474696E672064755B +:10E090006520746F206779726F2073617475726187 +:10E0A00074696F6E20284D49643A253038582C2009 +:10E0B0004749643A25303258290D0A004779726F72 +:10E0C000636F6D7061737320726573657474696ECC +:10E0D00067206173206C61737420726573657420AE +:10E0E00077617320696E20616E20616E6F6D616C67 +:10E0F0007920284D49643A253038582C2047496406 +:10E100003A25303258290D0A000000004779726F15 +:10E11000636F6D7061737320726573657474696E7B +:10E12000672064756520746F2072657363616C6924 +:10E130006E67206661696C75726520284D49643A86 +:10E14000253038582C204749643A25303258290D5B +:10E150000A0000004779726F636F6D7061737320FE +:10E16000726573657474696E672064756520746F79 +:10E170002061206779726F2064656C746120746916 +:10E180006D657374616D702067726561746572206E +:10E190007468616E2031207365636F6E6420284D52 +:10E1A00049643A253038582C204749643A253032A2 +:10E1B00058290D0A000000000020F4F759B92DE994 +:10E1C000F8470EB4D4B0824600201A90ADF8700023 +:10E1D0001B9003215698F2F773FBDFF82C1C884242 +:10E1E000ACBF01200020DFF8288CDFF80456DFF8F0 +:10E1F000F04588F8010095F90000002840F03481CE +:10E2000005F5BC701D90DFF8047C95F90500A8B9F0 +:10E210008022394634A8F5F72BF8242205F11C0199 +:10E220002BA8F5F725F81D99202223A8F5F720F84B +:10E23000102205F168011FA8F5F71AF895F90410E6 +:10E24000002001B9012095F9091009B140F0020040 +:10E2500095F9081009B140F0040095F90A1009B1C8 +:10E2600040F0080095F90B1009B140F0100094F946 +:10E27000031009B140F0200094F9041009B140F0F6 +:10E28000400094F9051009B140F4807095F906102A +:10E2900009B140F4007095F9071009B140F48060AD +:10E2A000199005F52F711BA817901E910DF16A00AA +:10E2B000169018940DF16E0015901CA814901AA8D1 +:10E2C000139005F52B7295F90300DFF81895629EFF +:10E2D00012900FF2D010119005F16800109005F126 +:10E2E0000C000F9004F128000E9004F120000D9016 +:10E2F00005F541700C9009F114000B9005F51E70A6 +:10E300000A9005F50270099005F5CC700890079702 +:10E31000DDE96001CDE9040155981E9B1D9902902D +:10E32000069605F549700090CDF804A005F11C0093 +:10E330000CF032FF400702D500F0D3FCAEE095F9B7 +:10E3400002000E9005F52D7395F901000D9005F171 +:10E350001C0195F90A000C9005F168000B9005F17D +:10E360000C000A9008F13C00099004F1300008907C +:10E3700009F12000079005F52670069005F512704A +:10E38000059005F5EC7004900397029656981D9A37 +:10E3900001901E98009005F184000DF0CBF8BDF9B6 +:10E3A0006E103046FFF71FFB2B6BBDF97020BDF9D7 +:10E3B00068103046FFF76EFBA8B1802234A93846BA +:10E3C000F4F756FF24222BA905F11C00F4F750FFA7 +:10E3D0001D98202223A9F4F74BFF10221FA905F155 +:10E3E0006800F4F745FF304600F07AF9559ABDF918 +:10E3F0006C10BDF96A005346FFF7BEFA95F90500A7 +:10E4000040B15498BDF9682000905346DDE96001A1 +:10E41000C046C046D5E914010023DFF8F829994227 +:10E4200012DC01DB90420FD218223146DFF8E809F6 +:10E43000F1F7B8FE10F1807048BF00200146A86FC8 +:10E440001822F1F7AFFE0EE01822314643F63010E5 +:10E45000F1F7A8FEA96F4018DFF8C019A867884235 +:10E4600002DBDFF8BC09A867102205F11C0105F1E9 +:10E470005800F4F7FDFEE96F08000FD0D5E910232E +:10E48000DDE96060834209DC01DBB24206D2D4E9F7 +:10E490001223C5E91223D5F88000884758B0BDE89B +:10E4A000F08700000000000000100000DFF8741981 +:10E4B000D1E91223C0E90023704780B51022DFF8AC +:10E4C0006819F4F7C5FEDFF86409C16B00291EBFA7 +:10E4D000006C40F20121084201D0002002BD012061 +:10E4E00002BDDFF84819897901707047000000000B +:10E4F000DEE6FFFFF0B589B004460D4603A8002113 +:10E50000DFF80869DFF81C79016003AB3088718897 +:10E51000ADF80C0007F11C0203A84180B18881808E +:10E5200002A9708AADF81400B08AADF81600B08C5C +:10E53000ADF81C0007F10C00009001A801F094FD5B +:10E54000B86F18220146F1F72DFE01994018D6F850 +:10E55000B4100818F1F77DFE019001AE7068F1F774 +:10E5600078FE7060019820607068286009B0F0BD86 +:10E57000F8B504460D4616469D4F009622462B469A +:10E58000012107F55C700AF0F8FFFEF701FE88B97B +:10E59000DFF8A428314607F15800FFF7C4F948B165 +:10E5A000C7E91245F96F080004D0D7F88000BDE82C +:10E5B000F4400847F1BD10B582B0144602460B4640 +:10E5C00000940221DFF874080AF0D7FFDFF8400852 +:10E5D0002168416461688164A168C16413BDF0B5BC +:10E5E00004468BB00D4616461846FEF774FF7D486C +:10E5F0003168026D5118019101AF7168426D806DF3 +:10E60000511879602246B168794E4018B8602B469F +:10E6100001A80090002106F55C700AF0AEFFC0076B +:10E6200031D4DFF8080890F83C0000072BD4D6E975 +:10E630001001221A65EB0103002B24DC02DBB2F18E +:10E64000807F20D20198716B00EBA1000490796863 +:10E65000B36B04A801EBA3014160B968F76B01EB50 +:10E66000A701816007A804A901F030FC07A906F101 +:10E670005800F1F776FEF16F080004D0C6E91245A4 +:10E68000D6F8800088470BB0F0BD38B50446DFF8F7 +:10E69000B057122204F1580105F10800F4F7E8FD23 +:10E6A000032104F19400F3F75FFD68840C22DFF886 +:10E6B000805704F1700105F16800F4F7C9FD0020EE +:10E6C00005EB80018A6E012ABCBFA7228A66401C26 +:10E6D0000328F5DB31BD0000A01A4F01942401206E +:10E6E0002DE9F04304468DB000204FF006080021CC +:10E6F000DFF8183703EB001303AA02EB400233F8EC +:10E70000113008FB0122491C13800329F0DB401C57 +:10E710000328ECDB0323032208A903A8F3F7B0FDC9 +:10E72000002500AE08A808FB050030F91500F2F737 +:10E730004AF9000346F825002D4856F8251000EB4D +:10E740004500B0F90C00002846BF404241FA00F0F5 +:10E7500001FA00F046F825006D1C032DE2DB0321D1 +:10E7600000A8F3F7F0FCDFF8A8961D4FDFF8D416E9 +:10E7700097F90560D9E91C8500EB400088420FDB62 +:10E78000B86B88B9FC6B0CB9FEF7BEFE0120B8630C +:10E79000386C40F40060386444F00400F86303E02F +:10E7A000DFF8A416884203DB9EB10020787110E0E8 +:10E7B0007EB918EB040845EBE4750021DFF88C0600 +:10E7C0008D4206DB01DC804503D301207871884649 +:10E7D0000025C9E91C850DB0BDE8F083CECC4C0006 +:10E7E000E82301206C2401200100000134333300B0 +:10E7F00058E500202DE9F44FDFF8286604460D4661 +:10E80000D6E9100196B04FF0000A002904BF002895 +:10E81000C6E91045D6E91001201A14900020DFF84F +:10E820000C7697F90820014622B1D7E9188900F043 +:10E83000F2F800E00023C7E9182397F909202AB16C +:10E84000149AD7E91A8900F0E7F800E00023C7E935 +:10E850001A2397F90AB0BBF1000F04D0D7E91C893D +:10E8600000F0D9F801E000220346C7E91C23D7E9EC +:10E870001889DFF8DC25814505DB01DC904502D3F2 +:10E880000122327007E030708145DFF8C82504DBD3 +:10E8900001DC904501D3012200E00022B27297F919 +:10E8A0000B202AB91498D7E91E23C1171018594113 +:10E8B000C7E91E01002905DC02DBB0F1807F01D22F +:10E8C000012000E00020D7E91823F0725345DFF85B +:10E8D0007C0500F0A7F8B070D7E91A23DFF87805B7 +:10E8E000534500F09FF8F070B0787070FEF750FC60 +:10E8F000002800F08D80D7F880001499091844F2A0 +:10E900008A10C7F880108142A8BF4FF0010A96F91B +:10E91000093096F9050018B15A1E9241D20F00E055 +:10E9200000220D9152B296F90710DFF80805DFF8C2 +:10E93000E0E49EF801E00B91129200F1A80C96F928 +:10E940000B1096F90A200A9111928CF808B08CF8F5 +:10E9500009E08CF80A30C0E92A4596F9061096F9C4 +:10E9600004C0B7F91E2009911092BCF10103DFF831 +:10E97000EC14DFF8BCC496F90020DCF880C00791E5 +:10E980009B41DFF8BC1406910F92DB0F169905919D +:10E9900006F55972149904915BB206F10C010391CA +:10E9A0000E9207F10C010291089306F5397101915D +:10E9B0000090CDF84CC0CDF830A006F11C0306F154 +:10E9C000680206F5BC7180300CF0B5FA400703D53B +:10E9D00017B0BDE8F04F84E1C6E91045BAF1000F69 +:10E9E00003D00020C7F88000F88306F11C00B0E8CF +:10E9F0008C1006F15801A1E88C10F16F080007D0C7 +:10EA0000C6E91245D6F8800017B0BDE8F04F0847B8 +:10EA100017B0BDE8F08F149AD31718EB020249EB38 +:10EA20000303704704DB01DC824201D301207047FD +:10EA3000002070472DE9F04186B00546884617460C +:10EA40000FF28844ABB972B60FF2B040DFF8105441 +:10EA50000FF290420190234640F6A4000090C82196 +:10EA60002846F4F7D3FB29460FF29C40F4F7BCFB91 +:10EA7000FEE7B3E8061002A8A0E80610032102A8EA +:10EA8000F1F7DEFE06463E600027DFF8A40300EB48 +:10EA900087000C22C06D3146F3F7B4FA00F5006030 +:10EAA000001325F8170002A850F8270028F81700CF +:10EAB0007F1C032FE9DB022EA8BF012007DA2346C3 +:10EAC0000FF2B4320FF24841FFF776FB002006B098 +:10EAD000BDE8F081A836012070B586B004460D4629 +:10EAE000B2B972B60FF21440DFF874430FF27843F4 +:10EAF0000FF2F0320190C82140F6C200009020468B +:10EB0000F4F784FB21460FF20040F4F76DFBFEE7BB +:10EB10004ACA02A84AC0032102A8F1F772FE0146C0 +:10EB20001822DFF84003F1F73DFBDFF83C13884281 +:10EB3000AEBF47F6FF7100F500610913298000217F +:10EB400002AA52F8212002F50062121324F81120C3 +:10EB5000491C0329F4DB0128ACBF0120002006B0CA +:10EB600070BD2DE9FE4304460D4616461A460A9826 +:10EB70000B9900230DF1040950F823C051F82370BC +:10EB8000674407F500673F1429F813705B1C032BDB +:10EB9000F2DB002000903346DFF8748208F10C01AC +:10EBA000A01DF3F719F9002739F91720002A04D519 +:10EBB000500006BF501C4242524200200090334693 +:10EBC000062000FB078000F1140112B204EB47009D +:10EBD000F3F702F97F1C032FE6DBE0882880BDE80D +:10EBE000F7832DE9F0438BB080468946164604AA88 +:10EBF00007A909A8FFF71EFF00286FD0324603A916 +:10EC000005A8FFF769FF002868D00499854AA1F597 +:10EC1000A0314FF48050B1F5703F0AD8116B002934 +:10EC200003D54B0008BF491C4942904B9942B8BFDD +:10EC300000207E4EB083D6E91201002904BF0028CF +:10EC4000C6E91289D6E91201A8EB0007129C02F16D +:10EC50003400019000943A46BDF90C3078480DF12B +:10EC60000E01FFF77EFFBDF90E0043F66761884293 +:10EC70000EDBB06B60B9F56B0DB9FEF745FC0120FA +:10EC8000B063306C40F48060306445F00400F063A1 +:10EC900041F60101BDF90C008842ACBF0120002003 +:10ECA000307109A8FEF766FC009707AB05AA40463D +:10ECB0004946FEF7C7FFF06B00281EBF306C40F2DC +:10ECC0000121084208D1CDE9008904990297234621 +:10ECD00005AA07A8FFF773FAC6E912890BB0BDE8C9 +:10ECE000F08380B50020FEF783FA5048816B41F035 +:10ECF00002018163016C41F080010164C16B41F04C +:10ED00000401C16301BD80B50020FEF771FA4748D8 +:10ED1000816B41F002018163016C41F480710164F7 +:10ED2000C16B41F00C01C16301BD414BD0B101F594 +:10ED300000600001001403D5410008BF401C4042A0 +:10ED400000B2CD28A8BFCC2002DA0328B8BF032028 +:10ED50008000D881188258821068186550685865FC +:10ED6000906807E04FF48A70D8811882588200209A +:10ED70001865586598657047002B18BF012B0AD09D +:10ED800011682B4801F500610913018690F9011003 +:10ED900019B901214170FEF76FBB7047FEB52349D9 +:10EDA000234C91F840101D460646C90701D4012E98 +:10EDB0001BD11168236D676DC91A009100A95368B2 +:10EDC000DB1B4B60A76D9368DB1B8B602968FFF72B +:10EDD000ACFF032100A8F1F773FD2549884204DB4D +:10EDE000012E02D1FEF768FBF7BD032E09D168683A +:10EDF000012806DB1F49C4F880008842B8BFC4F868 +:10EE00008010F7BD00000000413F2403181B0120C3 +:10EE1000E02701200100000A000080FFB61F9201D8 +:10EE2000B51F920158E50020B0E50020E82301203D +:10EE30006C240120181B012024280120C8E8002090 +:10EE4000A0370120290FAB006766160001000005FE +:10EE50000100001E0100000301004000F833012002 +:10EE6000E8200120EF1B1A0001F0FF07989A6601C5 +:10EE700019571600AE470100433A5C5F525645529F +:10EE80004D415F444154415C4749545C73656E7326 +:10EE90006F722D6875625C616C67735C7372635C22 +:10EEA00061747469747564655C4779726F436F6DE2 +:10EEB00070617373416E6F6D616C79436F6D7045F6 +:10EEC0006E73656D626C652E630000004765744D5E +:10EED00061676E65746F6D657465724461746141DC +:10EEE000734E54004153534552543A2025732825FC +:10EEF0006429202D205B25735D000000646174612E +:10EF000020213D203000000025730D0A0000000084 +:10EF10004D61676E65746963206669656C64206E17 +:10EF20006F726D20697320612074696E79206E752F +:10EF30006D6265722E20204E6F74207573696E6746 +:10EF4000206D61676E65746F6D65746572206D65A7 +:10EF500061737572656D656E7420282573203A3A69 +:10EF6000202573290D0A0000476574416363656CB1 +:10EF700065726F6D657465724461746141734E545E +:10EF80000000000018220846F1F70CB98246F96823 +:10EF900038681822F1F706B90746A8681822014612 +:10EFA000F1F700B92DE9F04F074683B00C4615463E +:10EFB000F968B8681E46FFF7ECFF83467968FFF7EB +:10EFC000E7FF00EB0B083868FFF7E8FF7968834636 +:10EFD000FFF7D8FF00F0DDF800F0D5F88146B968FA +:10EFE0007868FFF7D6FFFFF7D1FF00EB0A0100F0CA +:10EFF000E3F80199009A5944891A00F0BBF800F02F +:10F00000D5F820608048804503DB4FF4B4202860A9 +:10F0100006E07E48DFF8F8B1804503DAC5F800B0B5 +:10F0200000208FE03868FFF7B9FF80467868FFF767 +:10F03000B5FF009000F0AEF8019000F0A5F8814611 +:10F04000B9687868FFF7A5FFFFF7A0FFAAEB0001FA +:10F0500000F0A7F80099019AA8EB0101511800F0FF +:10F0600089F800F0A3F820601822F968B868F1F771 +:10F0700099F879688046FFF78BFF00EB080100F0F4 +:10F080009BF8F2F7C1FB00F091F8286000F076F8E9 +:10F0900080467868FFF782FF00F07BF800F073F895 +:10F0A0008146F9687868FFF774FF8246B968FFF710 +:10F0B0006FFFAAEB000100F074F80199009AA8EB29 +:10F0C0000101891A4944F2F746FA00F06FF83060FE +:10F0D00000F054F880467868FFF760FF8146B86812 +:10F0E000FFF75CFF8246F868FFF758FFA8EB0902BC +:10F0F0002968A2EB0A02801848BFC1F53421B1F596 +:10F10000342FA8BFA1F5B4113E488142B8BF01F524 +:10F11000B411296001F5B421B1F5342F03D9216868 +:10F1200001F53421216031685945B8BF01F534211A +:10F13000B1F5B42FA8BFA1F534213160814202DAC4 +:10F1400001F5B41030602068C0F5B4102060286864 +:10F15000404228603068404230602068002848BF44 +:10F1600000F5B410B0F5B41FA8BFA0F5B41020602E +:10F17000BDE8F78FA1EB0901F2F7EDB91822386865 +:10F180000146F1F70FB800901822F8680146F1F730 +:10F1900009B801901822B8680146F1F703B8ABEB43 +:10F1A000000118224FF07E40F0F7FCBF18221449EE +:10F1B000F0F7F8BF00EB0B0118224FF00070F0F7EA +:10F1C000F1BF38B504462068E168124D411A00F0DD +:10F1D00025F8206018226068A168411A00F01FF825 +:10F1E00060600D4DA16800F019F861684018A060DA +:10F1F0001822E16800F013F821680818E06031BDBA +:10F20000BA94030000C0F4FF78BE7F00894180FFFC +:10F210000060FAFFF304B500E6096A0118222846E7 +:10F22000F0F7C0BF70477047DFF880090160704792 +:10F23000DFF87C1948637047DFF87819C8607047B9 +:10F24000DFF868194860704770B5DFF868490FF259 +:10F250000161002204F110000CF04CFADFF858595B +:10F26000A96804F110000CF0ABFA00210FF2A550D0 +:10F270000CF0EEFBDFF84449201D0CF021FC0022CD +:10F280000FF2F1010FF23160FDF7B8FEDFF83069DF +:10F29000696832682068FDF789FF05F10800FEF70C +:10F2A00084F9201DFEF787F9301DFEF74EF9204640 +:10F2B000BDE87040FFF7E9B938B5DFF8FC480FF258 +:10F2C000496104F1A805002228460CF013FAA16850 +:10F2D00028460CF075FA04F51E70BDE834400FF2B4 +:10F2E00061610CF056BD70B5DFF8C4380D0003D075 +:10F2F00014001CBFD9631A6472B64FF00051DFF8D6 +:10F30000C4680A780C7882F0050254400C700C78BE +:10F310000D78754362402D030A7062B629680FF6B6 +:10F32000EC02126821F47021914216D029680FF680 +:10F33000E002126821F4702191420ED0DFF88808B3 +:10F340000078C00613D5BDE8704001234FF40022B9 +:10F350000FF68C010020F3F78BB8986300F020FBC8 +:10F3600000F046FBFFF770FFBDE87040A4E770BDFA +:10F370000000000008461146DFF83428936B1A009D +:10F380001CBF00221847704738B5DFF824580446E0 +:10F39000E86B8047DFF8343805EB841140224431B4 +:10F3A00003EB8410F3F754FF286CBDE832400047AC +:10F3B00070B5DFF8FC670446F06B9AB080476422B2 +:10F3C00014FB026000F5A27100A8F3F741FF06EB01 +:10F3D000C400D0E90445306C8047736B180003D03B +:10F3E00000AA2046294698471AB070BD2DE9F0477B +:10F3F000DFF8BC47E06B8047256B206C8047002D11 +:10F4000000F08880002615F4D05F03D0284600F075 +:10F4100094FB0646A80704D50020FFF7B5FF46F089 +:10F420000206DFF8A877E8070ED50120FFF7ACFF4A +:10F4300097F97C3007F1640207F1700107F1400091 +:10F44000FFF79AFC46F00106680704D50220FFF793 +:10F450009BFF46F00406280727D50320FFF794FFFB +:10F46000280620D597F9BC0007F1C00807F1F0097C +:10F4700007F1E40A012804BF97F9FC00032805D12D +:10F4800053464A4641460120FFF788FC97F9FC00A5 +:10F4900053464A464146FFF781FC97F9FC004A462D +:10F4A00041460CF084FB46F00806A80604D500206F +:10F4B000FFF77EFF46F02006E80604D50120FFF79F +:10F4C00077FF46F01006680604D50220FFF770FFAC +:10F4D00046F04006280604D50320FFF769FF46F0F2 +:10F4E0008006E8050DD5E06B804704F54E702EC808 +:10F4F0002EC4103C206C8047A068C046C04646F42D +:10F500008076E06B8047206BB0432063206CBDE8C1 +:10F51000F0470047BDE8F087F0B5A9B004460126E2 +:10F52000002719B900A800F042F800AC214619A83C +:10F530000CF056FDDFF8785694F9601005F535703B +:10F54000642289B1022913D002D3032906D00EE028 +:10F550002146F3F78DFE4FF4C06709E02146F3F72B +:10F5600087FE4FF4805703E04FF4006700E0002669 +:10F57000E86B8047286B3843400A4002286396B105 +:10F58000402294F9600005EB801019A94430F3F78C +:10F590005FFE94F96030DFF83406402219A900EBD1 +:10F5A0008310F3F755FE286C804729B0F0BD642125 +:10F5B000F2F74ABF90F9A010A422012904D011D378 +:10F5C00003290AD004D370470146DFF8F40507E0A9 +:10F5D0000146DFF8FC05F3F73BBE0146DFF8DC052A +:10F5E000F3F746BE7047B0B588B0044605200D4617 +:10F5F00017468DF80400FFF7F9FE3A46DFF8C0150C +:10F6000002A800F017FA02A800902246DFF8A475BD +:10F610002B4607F110000CF0E1F802A8B0E80C103E +:10F6200005A9A1E80C109DF80400DFF898150FF269 +:10F63000DC52484300030168126821F470219142B2 +:10F6400015D000680FF2C851096820F47020884274 +:10F650000DD0DFF874050078C00615D501234FF4EE +:10F6600000220FF27C510020F2F702FF0CE005AA05 +:10F6700020462946FEF77CFFF968080004D005A85B +:10F6800000F09DF80120884708B0B0BDF0B587B004 +:10F6900004460D461646FFF7A9FE3246DFF8301540 +:10F6A00000F0A3F801A800902246DFF808652B4679 +:10F6B00006F110000CF0CCF801A88CC804A9204673 +:10F6C0008CC104AA2946FEF776FFF168080004D031 +:10F6D00004A800F074F80220884707B0F0BD2DE9B7 +:10F6E000F043164687B089463168DFF8D074044687 +:10F6F00001F500613A69002009138A42A6BFFA6940 +:10F700009142012071687A6901F5006109138A420A +:10F71000A3BF3A6A91420021012141EA0008B06882 +:10F72000B96900F5006000138142A3BF796A88427D +:10F7300000250125FFF75AFE3246394604A800F09D +:10F7400079F9DFF8886404AA06F1800101A800F0C5 +:10F7500060F945EA080301AA20464946FEF73FFF43 +:10F7600004AA06F1C00101A800F053F901AA20463D +:10F7700049460CF0C1F9DFF83C04C168080005D027 +:10F7800001A8009022464B460320884707B0BDE8F9 +:10F79000F08370B588B000F02AF83246DFF8201404 +:10F7A00000F023F800F00AF8DFF828040CF016F84F +:10F7B00001A81CC804A91CC108B070BD01A8009014 +:10F7C00022462B467047F0B585B000F010F8DFF800 +:10F7D000E8733246391D00F008F8FFF7EFFF07F134 +:10F7E000A8000CF035F805B0F0BD01A822E10446F0 +:10F7F0000D4616468FE17FB5FFF7F9FF3246DFF879 +:10F80000BC13FFF7F2FFFFF7D9FFDFF8CC030CF0D2 +:10F81000B7FB7FBD10B586B000A80CF0C9F902A8EF +:10F820000CF0CCF9DDE9000102AAFDF72FFFDFF8AB +:10F8300084038468200004D0DDE90001052302AAC6 +:10F84000A047BDF80800DFF87013088006B010BDAF +:10F8500030B589B0DFF85C4302A904F110000CF068 +:10F8600067F805A904F110000CF066F800A904F18E +:10F8700010000CF058F8DDE9000102AA0CF087F93D +:10F88000DDE9000102AAFDF74CFFDDE9000105AA50 +:10F89000FDF75CFF6568280004D0DDE90001052361 +:10F8A00002AAA8472468200004D0DDE9000105234E +:10F8B00005AAA04709B030BD30B589B000208DF849 +:10F8C0000400009002A8FEF7F1FD04A8FEF7F5FD84 +:10F8D00001A8FEF706FEB54C2568280004D0DDE936 +:10F8E0000201042304AAA847646820000AD09DF9F5 +:10F8F000040008B14FF0807000900123DDE902019F +:10F9000000AAA04709B030BD30B5AB4C8BB004F1B4 +:10F91000A80502A928460CF006F804A928460CF010 +:10F9200007F807A928460CF007F8B4F90000009082 +:10F93000DDE9022304F51E700CF02DFA0BB030BD8A +:10F9400000B5D5B03BAA00A9A3480CF0D4F96422B5 +:10F950003BA922A8F3F78CFC01208DF8E9000021D7 +:10F960000020289028A84160816002208DF8E800DE +:10F970003BA912A80CF034FB22A902A80CF030FB22 +:10F9800012A9032000F074F802A9022000F070F818 +:10F99000DDE900013BAB032200F090F855B000BD5B +:10F9A000F8B58A4C4FF48076002231462046F3F7B2 +:10F9B000CFFC7F4D0022314605F14400F3F7C8FC2F +:10F9C00000204FF0807100220C26564304EB801774 +:10F9D000F71947F8221005EB80174437F61946F857 +:10F9E0002210521C032AEFDB401C0428EBDBF1BD84 +:10F9F00070B56F4C10250026002229462046F3F7EB +:10FA0000A7FC3246294604F54E70BDE87040F3F776 +:10FA10009FBC30B583B000F022F82846F2F764F8B6 +:10FA20002068296B08182060696B6068081860609E +:10FA3000A96B10E030B583B000F011F805F1280093 +:10FA4000F2F752F82068E96C08182060296D6068A8 +:10FA500008186060696DA0680818A06037BD04468A +:10FA600003200D4601900090114603232246704763 +:10FA7000F8B504460D46002634B1022C08D005D353 +:10FA8000032C08BF082604E0022602E0012600E05D +:10FA90000426474FF86B8047386B10F4F05F08D1AD +:10FAA00030433863402207EB841029464430F3F793 +:10FAB000CFFBFFE7386CBDE8F24000472DE9F84383 +:10FAC0000446884616469946002736B1022E08D0CD +:10FAD00005D3032E08BF802704E0202702E010276B +:10FAE00000E04027324DE86B8047286B10F4F05F50 +:10FAF0000DD138432863642216FB0250494600F5B5 +:10FB0000A270F3F7A5FB05EBC600C0E90448286C1A +:10FB1000BDE8F243004710B5254C206B40050BD5DE +:10FB2000FFF7CAFBE06B8047206B20F48060206306 +:10FB3000206CBDE81040004710BD30B591B00446C0 +:10FB40000025FFF781FB200548BF4FF4006529D44D +:10FB5000A0050CD51D4890F97C3000F1640200F13D +:10FB600070014030FFF708F94FF400751AE0E00427 +:10FB700018D51A4C214600A80CF032FA0122214671 +:10FB800015480CF017FA9DF93C0009AB0CAA00A926 +:10FB9000FFF704F99DF93C000CAA00A90CF007F846 +:10FBA0004FF48055284611B030BD0000603C012064 +:10FBB00008790020D0030120E0FD0020C41D0120B1 +:10FBC000201D0120DACC0200A8360120D41101202A +:10FBD000E4FD002088FE002058000120DC7B00208E +:10FBE0000D0A556E6B6E6F776E204572726F7221C3 +:10FBF0000D0A20284D49643A253038582C204749B1 +:10FC0000643A25303258290D0A00000013640010B0 +:10FC10003364001030B5044687B00846154602A983 +:10FC2000002200230CC100A90CC14FF48051218097 +:10FC300011466180A18030F8112002AB23F8112019 +:10FC400000AB35F8112023F81120491C0329F2DB01 +:10FC50000321F0F738FE05281EDB03212846F0F7C4 +:10FC600032FE052818DB00F0A8F8032100A8F0F701 +:10FC700002FE032200A902A8F0F73DFE054604AAF1 +:10FC800000A902A8F0F76AFE00F093F82080002097 +:10FC90006080A580012000E0002007B030BD10B5D5 +:10FCA00086B004460898009001A800F006F801A963 +:10FCB0002046F0F7D3FC06B010BD2DE9F04399B013 +:10FCC0000446209800270DF110080DF1180931F8AD +:10FCD00017500AAE26F8175008AE32F8175029F818 +:10FCE000175033F8175026F8175030F8175028F8E7 +:10FCF00017507F1C032FEADB032108A8F0F7BBFD98 +:10FD000000F057F803210AA8F0F7B5FD032106A873 +:10FD1000F0F7B1FD02AA04A908A8F0F71FFE00F051 +:10FD20004CF80CAA02A904A8F0F718FE0020062738 +:10FD30000CAD02AE13AB07FB00F138F81020CA522D +:10FD400013AA00F02CF8F6DB02AA06A90AA8F0F71D +:10FD500005FE00F032F80CAA02A906A8F0F7FEFD95 +:10FD600000200EAB07FB00F139F81020CA520EAA92 +:10FD700000F015F8F6DB03210EA8F2F779F803205E +:10FD800001900090032322460EA913A8F1F74DFD20 +:10FD900003212046F2F76CF819B0BDE8F08389180A +:10FDA00036F810204A8035F810208A80401C03283D +:10FDB0007047032104A8F0F75EBD032102A8F0F705 +:10FDC0005ABD70B586B004460D461646194600A8C1 +:10FDD000F0F737FB0020062200A902FB00118988FA +:10FDE00025F81010401C0328F6DB002036F8101010 +:10FDF00035F81020891A24F81010401C0328F5DB70 +:10FE000006B070BD2DE9F44F0D468CB0044628684D +:10FE1000984600F057F88146696800F01FF90646D9 +:10FE2000A96800F01BF90746A968686800F017F98F +:10FE30006968824618220846F0F7B4F9834600F054 +:10FE400040F809F18071029102A9AA68B21A4A60C9 +:10FE500000F180706A68D2198A600323AA68921937 +:10FE600005920BF1807206922A68AAEB02020792B1 +:10FE70006A68BA1A8A61224629680A9051440120A8 +:10FE8000019009910320009002A80C99F1F768FDF8 +:10FE9000206800F09DF820601822606800F099F852 +:10FEA00060601822A06800F094F8A06040102168FB +:10FEB00049102160616849106160A0600DB0BDE823 +:10FEC000F08FA86818220146F0F76CB9FEB50D4610 +:10FED00004461646286800F013F84010009000AF62 +:10FEE000686800F00DF8401078601822A86800F0EB +:10FEF00008F84010B86000A92046F0F7F4F9F7BD03 +:10FF000018223146F0F74EB92DE9F04792B0044679 +:10FF10000D4616461A460CA8002100230F468AC03B +:10FF20001A9F7B100CA906A8FFF76CFF7B103246C6 +:10FF300006A903A8FFF766FF3B46324603A900A8BF +:10FF4000FFF760FF3B462A4600A90FA8FFF75AFFBC +:10FF500006980099DFF80C5108180399890001EB05 +:10FF600040000F99091800F02FF809900DF10008D2 +:10FF70000DF1180AD8F80410DAF804000DF10C0994 +:10FF80000818D9F804100FAF890001EB4000796818 +:10FF9000091809AE00F018F870601822DAF80800A5 +:10FFA000D8F808100818D9F80810890001EB4000AB +:10FFB000B968091800F009F8B06009A92046F0F7FF +:10FFC00092F912B0BDE8F08718222846F0F7EAB897 +:10FFD00018224146F0F7E6B830B50D4683B00FF26F +:10FFE0001C4104460CC900A80CC0B5F9000000284B +:10FFF00003D5410008BF401C4042B5F90410002958 +:020000021000EC +:1000000003D54A0008BF491C49420818B0F5006FE3 +:1000100006DA4FF48050ADF800000020ADF8020081 +:10002000224600A92846F0F799FC03212046F0F764 +:1000300022FCA21D21462846F0F790FC0321A01DBA +:10004000F0F719FC04F10C02A11D2046F0F786FC24 +:10005000032104F10C00F0F70EFC37BD28681822CC +:10006000F0F7A0B8AAAA2A00F0B5A3B004460D463E +:1000700017461946122216A8F3F7EAF87968386885 +:10008000BA68FB6801F50061090109144F42ADF837 +:100090006C70ADF81C7002F5006203F5006300F5AA +:1000A000006012131B130DF16C0C07AF0013C2F1AB +:1000B000000E5E42ACF80200ACF80430ACF806E08A +:1000C000ACF808E0ACF80A60ACF80C00ACF80E1024 +:1000D000ACF81060ACF81220ACF814E0ACF81600E4 +:1000E000F880BB81A7F812E0A7F802E03E81F88112 +:1000F000B982BE80F8827A8103200190A7F810E0CF +:1001000004200090032302AA07A91BA8F1F78DFB86 +:1001100028990323032216A8F1F703FF00F069F9D9 +:1001200007AA02A916A8F1F780FB122207A902A8C4 +:10013000F3F79EF8032102A8F1F79AFE00F059F9AF +:100140000DAA07A902A8F1F7A1FB11990D9A15981C +:100150009142B8BF11462060296023B0F0BD2DE95F +:10016000FF4FA7B00FF29C210CC908A80CC035990D +:10017000062202A8F3F76CF83699062204A8F3F7D2 +:1001800067F8FFF71AFEFFF714FE02AA04A906A8F3 +:10019000FFF740FD002800F0FA80BDF9DC00800088 +:1001A000B0F52E7FC8BF4FF42E70BDF9181000298E +:1001B00003D54A0008BF491C49428142C0F2E7808A +:1001C00008A8009006AB04AA02A922A8FFF767FDC1 +:1001D000DDF8E4A0002400251CAE1FAF0DF10808D7 +:1001E0000DF11009389830F9151038F91500F0F7AD +:1001F0005BFC834647F825B03AF9151039F915002C +:10020000F0F752FC46F82500002805D5410012BF42 +:100210004142411C494200E001468C4207DA002875 +:1002200004D5410008BF401C444200E00446BBF135 +:10023000000F08D55FEA4B0012BFCBF100000BF1B5 +:100240000100404200E0584684420CDABBF1000F46 +:1002500008D55FEA4B0012BFCBF100040BF101009F +:10026000444200E05C466D1C032DBBDB2046F0F7EA +:1002700081FCA0F10D04012C0EDB002557F82500B0 +:10028000204128F8150056F82500204129F81500CE +:100290006D1C032DF2DB00E0002402A90AA8F0F790 +:1002A0000AF804A90DF13A00F0F705F80322062137 +:1002B0000AA8F1F789FB032203210DF13A00EFF7B9 +:1002C000DBFF03231A460AA90DF13A00F1F780FC7F +:1002D00012220DF13A010AA8F2F7BAFF03210AA887 +:1002E000F1F7C6FD00F085F813AA0AA90DF13A004E +:1002F000F1F7CCFA012600270C2513A805FB07000F +:10030000B846009013A800EB870905FB0890A7F1F9 +:10031000010BD0F800A010E013A905FB0BF001EBD6 +:1003200088011822415850F80900EFF73BFFAAEB6B +:10033000000AABF101000FFA80FBBBF1000FEBD517 +:1003400047450BD1BAF1010F01DA00261BE05046F8 +:10035000EFF77FFF009941F827000DE01822009881 +:1003600050F827105046F1F74DFE009941F828004B +:1003700005FB08910020086008F101000FFA80F8E1 +:10038000B8F1030FBEDB7F1C032FB6DB0EB90020D4 +:100390002CE03A9800210022279B00FB01F603EB9A +:1003A000460313AE05FB016656F8226006F50066AB +:1003B000361323F81260521C032AEDDB491C032973 +:1003C000E9DB0025289820F815406042299921F89A +:1003D00015006D1C032DF5DB3498062206A9F2F7F3 +:1003E00037FF22A83CC82A9901203CC12BB0BDE8A8 +:1003F000F08F03200190009003467047000000102A +:1004000000000000000000000010000080B5F6F7BA +:10041000AFFDDFF814180860012002BD80B5FAF7BF +:1004200063FCDFF80818D1E90023801A02BDF8B593 +:100430000446A069E1684518B5F90000B5F90270F5 +:10044000B5F90460B4F85810411A2980B4F85A106C +:10045000791A6980B4F85C10711AA980B5F9001096 +:10046000C913B1EBE03F13D0B4F95810C913B1EB85 +:10047000E03F0DD00FF2D070F3F722F8B5F900008D +:10048000012802DBDFF8A80701E047F6FF702880AB +:10049000B5F90210C913B1EBE73F13D0B4F95A1004 +:1004A000C913B1EBE73F0DD00FF2A870F3F708F8CE +:1004B000B5F90200012802DBDFF8740701E047F616 +:1004C000FF706880B5F90410C913B1EBE63F13D093 +:1004D000B4F95C10C913B1EBE63F0DD00FF2807098 +:1004E000F2F7EEFFB5F90400012802DBDFF8400760 +:1004F00001E047F6FF70A88094F90800002804D1B5 +:10050000002000E0401C0328FCDBF1BD00000000DF +:100510003EB500A90022134614461CC18169C26879 +:10052000891890F90820052A80F093801446012C40 +:1005300002D9E41E40F08980002A01D14FF6FF73F2 +:10054000DFF8E4462468141994F88440641E062CED +:100550005ED8DFE804F004101D2936424F00B1F9DF +:100560000240009400ACB1F900505B1B6360B1F92C +:100570000430A36056E0B1F900401C1B009400ACAD +:10058000B1F902505B1B6360B1F90430A36049E02C +:10059000B1F902401B1B009300ACB1F9003063605D +:1005A000B1F90430A3603DE0B1F900401C1B009498 +:1005B00000ACB1F902506560B1F904505B1BA36057 +:1005C00030E0B1F90240009400ACB1F90050656030 +:1005D000B1F904505B1BA36024E0B1F90040009422 +:1005E00000ACB1F902505D1B6560B1F904505B1BB2 +:1005F000A36017E0B1F902401C1B009400ACB1F9F4 +:1006000000505D1B6560B1F904505B1BA36009E0FD +:10061000B1F90030009300ACB1F902306360B1F978 +:100620000430A360012A0AD1002306E054F82350C5 +:1006300005F30F0544F823505B1C032BF6DB009BEE +:100640000B8063684B80A3688B80002A01D1FFF781 +:10065000EEFE01203EBD000070B52DED028B82B094 +:100660008169C2688A1890F9081008460A2800F2C1 +:100670009780DFE800F0062B73959565959595803A +:100680008E00B2F90240B2F90450DFF89C05006810 +:100690009FEDBF0AB2F9001000EE901AF8EEE00AE2 +:1006A00060EE800AC0ED000A00EE904AF8EEE00A23 +:1006B00060EE800AC0ED010A00EE905AF8EEE00A02 +:1006C00020EE800A001D80ED010A6DE0B2F90240C3 +:1006D000B2F90450DFF850050068061D9FEDAD8BA0 +:1006E000B2F9000000EE100AB8EEC00A10EE100ACF +:1006F000F3F75AFD53EC182BF4F722FCFBF748FDF7 +:10070000B06000EE104AB8EEC00A10EE100AF3F71F +:100710004BFD53EC182BF4F713FCFBF739FDF0609D +:1007200000EE105AB8EEC00A10EE100AF3F73CFDC6 +:1007300053EC182BF4F704FCFBF72AFD306133E08F +:1007400000200090106800909DED000ABAEECA0AE1 +:10075000DFF8D404006880ED0C0A25E0DFF8C80457 +:1007600000681188A0F85A1000F25A0051884180A0 +:100770009188818018E0DFF8B004006800F25A0028 +:100780001188C1805188018191884181D1888181FE +:100790000AE0DFF894040068118880F8681003E02C +:1007A0000FF2C840F2F78CFE012002B0BDEC028BC4 +:1007B00070BD70B50D46DFF87C1451F8204000265E +:1007C000207F002801D1304670BD607A002803D018 +:1007D000206E8068804706462846216EC969884792 +:1007E0000546002E02D0206E40688047284670BD26 +:1007F0009B0701D542F2107292FBF1F190F8222092 +:1008000051430069814201DA01207047002070479E +:10081000002901D48164C164002A03D4910701D561 +:1008200080F820207047002903D4002181644161B1 +:1008300081617047042817D101F10C008A7A012ADE +:1008400009D0072242750B228275DFF8EC23CA60BB +:100850000B21416070471522427519228275DFF81D +:10086000DC23CA601921416070472DE9F2438AB048 +:100870000546144619460020ADF8220001900A20D2 +:100880008DF8080000208DF809008DF80A00A946AF +:10089000B9F1170F45D22E46DFF8980350F82670AD +:1008A0004FF00208387F00283BD09DF94820002AED +:1008B00008D4D00706D513460A460A993846FFF7EA +:1008C00097FF61E03846FFF7A3FFA9F10C00062867 +:1008D0000BD22946C9B20AA83A6E926990470C2EEB +:1008E00001D0112E01D114200A9039462846FFF775 +:1008F000A1FF787A00281CD1214649B238467A6E89 +:100900001268904700280ED0386E40688047002853 +:1009100005D14146A1F10108C9B20029F4D100284E +:1009200001D1002030E0214649B238467A6E526843 +:100930009047787A401C7872224652B20A9938461B +:100940007B6E1B69984700F0E4F8072E0CD1002C51 +:100950000AD100208DF80000112001900A208DF8A6 +:10096000080000A8F5F720FD162E0CD1002C0AD1A6 +:1009700000208DF800002C2001900A208DF808003E +:1009800000A8F5F711FD01200BB0BDE8F0830000D1 +:1009900033712B3A90D87D684B10333F2DE9F041ED +:1009A0008AB005460E46144619460020ADF82200CE +:1009B00001900A208DF8080000208DF809008DF8BC +:1009C0000A00172D07D29B4850F825704FF00208F7 +:1009D000387F002801D100204BE03846FFF723FF85 +:1009E000787A012818D1214649B238467A6E926841 +:1009F000904700280AD0386E80688047002805D1CB +:100A00004046A0F10108C0B20028F4D1214649B205 +:100A100038467A6ED2689047787A002801D0401E16 +:100A20007872224652B2314638467B6E5B699847EF +:100A300000F06FF8072D0CD1002C0AD101208DF8A1 +:100A40000000112001900A208DF8080000A8F5F799 +:100A5000ABFC162D0CD1002C0AD101208DF8000022 +:100A60002C2001900A208DF8080000A8F5F79CFCC6 +:100A700001200AB0BDE8F0812DE9F84304460D4697 +:100A8000164619462746172F1DD26A4850F824806B +:100A900098F81C00002816D09DF92020002A09D4BF +:100AA000D00707D513460A462946404601B0BDE89F +:100AB000F0439DE606EB460008EB8009D9F83800C4 +:100AC0008068002801D5002021E04046FFF7A0FE05 +:100AD000324652B2D9F8380081684046D8F86430BE +:100AE0005B699847324652B229464046D8F864308E +:100AF0001B699847A7F10C00062805D22946204615 +:100B000008F05CFB012002E000F003F80120BDE8E2 +:100B1000F28370B56FF000452C464948016804E047 +:100B20008A68A24200DA144609688142F8D1454E2B +:100B30003078401C30707078F021084202D0992043 +:100B4000FAF780F9FAF7EBF97078401C7070AC4254 +:100B500000D1002434480168CC67D1F880202046B9 +:100B600082420BD0002801D0002A04D1C1F88000B5 +:100B7000F2F782FC02E001200BF082FA7078F0219B +:100B8000084202D09920FAF75DF97078401E707023 +:100B9000C0B2002801D1FAF7BCF9F3F7EAF9012055 +:100BA00070BD38B50546274C2078401C2070607811 +:100BB000F021084202D09920FAF744F9FAF7AFF988 +:100BC0006078401C607018480068C0F880501C486D +:100BD000016805E08A68B2FBF5F26A43CA600968F9 +:100BE0008142F7D16078F021084202D09920FAF7CB +:100BF00029F96078401E6070C0B2002801D1FAF770 +:100C000088F9BDE83140F3F7B4B90D490A6808E046 +:100C10001369012B01DAD368136113691B1A13617D +:100C200012688A42F4D17047843C0120F03B0120D5 +:100C30000080FFFF08400020305000204039012094 +:100C40007C400020A480002058206973206F7665C6 +:100C50007200000059206973206F766572000000F1 +:100C60005A206973206F7665720000005543535413 +:100C7000282564294E5300004FF0FF31801E0128C3 +:100C800012D9C01E04280FD9801F06280CD9083895 +:100C90000AD0801E042807D9401F03D0401E112807 +:100CA00002D902E0072100E001210846704780B523 +:100CB00001460020C91E18D0C91E16D0C91E14D066 +:100CC000C91E012911D90D3903290ED9091F05D0D3 +:100CD000491E0AD0C91F032907D902BD1D210FF2E1 +:100CE0001000F2F7EDFB012002BD012002BD000063 +:100CF00050443A204C4C53202564000038B504463B +:100D00004FF0FF35F5F77AFA2C2C36D8DFE804F0EF +:100D100030353430303430303434353019341717FE +:100D20003030353435303030193034303430301CD8 +:100D30001F23272B2E343434343432343400C82566 +:100D40001BE04FF47A7518E0D0F8DC5415E000F29F +:100D5000DC40856A11E000F2DC40056D0DE000F238 +:100D6000DC40856F09E0D0F87C5506E00A2504E0F8 +:100D7000422502E0052500E01425284632BD38B59D +:100D8000DFF81C4AF6F7F4F8E0620BF07FF9F5F7AC +:100D900035FA2063002512E0DFF8081A0161DFF858 +:100DA000081A4161DFF8042A8261DFF8042AC2616F +:100DB000DFF8002A02624162406A80476D1C2D2DD7 +:100DC00080F21F81216B05EB8500C0000022425498 +:100DD000401842704FF0FF32426000220272C2603F +:100DE0004272032D04D17431DFF8CC298A62E3E723 +:100DF000022D03D1DFF8C4294A67DDE7002DCBD0EF +:100E0000042D04D17431DFF8B8290A65D4E7052D23 +:100E100004D17431DFF8AC298A67CDE7062D04D1FF +:100E2000DFF8A429C1F81421C6E7072D05D101F583 +:100E30008A71DFF898298A62BEE7082D05D101F58D +:100E40008A71DFF88C290A65B6E7092D05D101F50D +:100E50008A71DFF880298A67AEE70A2D9CD00B2DB6 +:100E60009AD0012D98D00C2D04D1DFF86C29C1F84F +:100E70000422A1E70D2D05D101F50171DFF85C29F0 +:100E80008A6299E70E2D05D101F50171DFF850292D +:100E90000A6591E70F2D05D101F50171DFF84429AD +:100EA0008A6789E7102D04D1DFF83C29C1F8A42214 +:100EB00082E7112D04D1DFF83429C1F8CC227BE779 +:100EC000122D3FF469AF142D3FF466AF132D3FF49C +:100ED00063AF162D3FF460AF2B2D3FF45DAF152DA2 +:100EE00004D1DFF8142AC1F86C2365E7172D05D16A +:100EF00001F55B71DFF80C2A0A655DE7182D05D155 +:100F000001F55B71DFF8002A8A6755E71A2D05D1D4 +:100F100001F20C41DFF8F4298A624DE71E2D05D15C +:100F200001F2AC41DFF8E8298A6245E7192D04D1C6 +:100F3000DFF8E029C1F80C243EE71F2D05D101F2AE +:100F4000AC41DFF8D4290A6536E7202D05D101F23E +:100F5000AC41DFF8C8298A672EE7212D04D1DFF8DC +:100F6000C029C1F84C2527E7222D05D101F24C51AB +:100F7000DFF8B0298A621FE7232D05D101F24C5119 +:100F8000DFF8A4290A6517E71B2D05D101F20C41F2 +:100F9000DFF898290A650FE71C2D05D101F20C41F5 +:100FA000DFF88C298A6707E71D2D04D1DFF8842933 +:100FB000C1F8AC2400E7262D04D1DFF87C29C1F864 +:100FC0001426F9E6272D05D101F21461DFF86C290A +:100FD0008A62F1E6292D05D101F21461DFF860295A +:100FE0008A67E9E62A2D04D1DFF85829C1F8B4262A +:100FF000E2E62C2D7FF4D0AEDFF84C29C1F80427AF +:10100000DAE6012032BD0CB42DE9FF4705468846DB +:10101000012447462E461A2E48D006EB86004FEA9A +:10102000C008DFF87C970B2F20D1D9F8300008EBEF +:10103000000A9AF80100002818D02846FFF71CFE85 +:10104000012813DB2846FFF717FE9AF801108142AA +:101050000CDB284600F086F90446D9F830004044FD +:10106000002141700FF6EC00F2F72AFAD9F83000AF +:1010700018F80010002947D108EB00014A78002A2F +:1010800042D1002208F80020104648700CA983B015 +:1010900068461822F2F7ECF80EBC284600F07CF8FF +:1010A00002282CD003282FD103242DE00B2F16D19A +:1010B000FFF7E2FD012812DB2846FFF7DDFD06EB16 +:1010C0008601DFF8DC26126B02EBC1014978814210 +:1010D00005DB0FF68800F2F7F3F9022057E04046EF +:1010E000C0B201F049FE0CA983B068461822F2F79D +:1010F000BFF80EBC284600F04FF8022801D10220AC +:1011000045E0032800D103240A2F0DD1DFF8909683 +:10111000D9F8300006EB86014FEAC10818F8001034 +:10112000491C08F8001017E00B2F15D1DFF8709656 +:10113000032E07D1D9F8300090F87900002801D1AA +:1011400001F083F806EB86004FEAC008D9F83000BA +:1011500040444178491C4170DFF84496D9F830008A +:10116000D9F82C1006EB86024FEAC208D1E91C23FD +:10117000CDE90223C96E009108EB00014B7818F805 +:10118000002031460FF2E070F2F79AF9204604B0E1 +:10119000BDE8F0075DF80CFB0EB42DE9F04183B01B +:1011A00005460124C0B2FFF7A9FDDFF8F46505EBA1 +:1011B0008501326B02EBC107786000203872F8605D +:1011C00009A984B068461822F2F752F80FBC3F69AB +:1011D000B847022801D1022011E0032801D10324DD +:1011E0000CE0D6F82C80D8E91C67204600212A465E +:1011F0000AF0F0FF30433943C8E91C012046BDE83E +:10120000FE015DF810FB2DE9FF4704460D4601265F +:10121000274607EB87004FEAC008DFF88495D9F826 +:1012200030001A2F57D008EB000A9AF80100022864 +:1012300014DB2046FFF720FD01280FDB2046FFF7D7 +:101240001BFD9AF80110814208DB2046FFF714FDD0 +:101250008AF801000FF22470F2F732F9D9F8300061 +:1012600018F80010002904D108EB00025278002A77 +:1012700060D02A460A2A09D1002903D0491E08F85D +:10128000001017E0002108F8001013E00B2A11D11C +:1012900008EB00014A78002A02D0521E4A7001E091 +:1012A00000224A70032F05D190F87900002801D15F +:1012B00000F0DAFFD9F8300018F80010002939D111 +:1012C00040444078002835D1204600F04BF80328F0 +:1012D00030D103262EE018F80010002904D108EBC5 +:1012E00000025278002A25D02A460A2A09D100296C +:1012F00003D0491E08F8001012E0002108F8001081 +:101300000EE00B2A0CD108EB000A9AF80100002825 +:1013100003D0401E8AF8010002E000208AF8010094 +:101320002846C0B201F028FD204600F01BF8032833 +:1013300000D10326D9F83000D9F82C10D1E91C23AC +:10134000CDE90223C96E009108EB00014B7818F833 +:10135000002039460FF22C60F2F7B2F8304604B0A4 +:10136000BDE8F0872DE9F0410746012607EB87002D +:10137000C500DFF82C44206B2818406980470328FB +:1013800000D10326384640B200F080F9032800D18E +:101390000326206B295C002917D1281841780029E1 +:1013A00013D14FF0FF31416000210172C160D4F8C8 +:1013B0002C80D8E91C4501203A460AF00BFF24EAAC +:1013C000000025EA0101C8E91C013046BDE8F081B2 +:1013D00038B5044604EB8400C000DFF8C453296B21 +:1013E000002242544018114641702046FFF7BAFFD0 +:1013F000E86AD0E91C2321460FF29C50F2F760F80E +:10140000012032BD2DE9F041B6B004460E46B6B219 +:1014100001208DF86400DFF888531AA8E96A6C226D +:10142000F1F726FF17951AA984B068466C22F1F7E8 +:101430001FFF0FBC00F0DCF900270BE0032803D1ED +:10144000189703208DF86400286B40440021017236 +:101450007F1C7FB22D2F2ADAEA6AD2E91C013A46B4 +:1014600004F020FA00F0010011F0000101D1002881 +:10147000EED007EB87004FEAC008286B4044416874 +:101480000029E5D4027A521C0272D2B2724389B2A8 +:101490008A42DDDB806980470228CFD1189702207D +:1014A0008DF86400DDE91801C4E9000103E0DDE91D +:1014B0001801C4E9000136B0BDE8F08100210A3806 +:1014C00042F20772904200D20121084670472DE98E +:1014D000F04383B0044600200190042204F1090186 +:1014E00001A8F3F7F9FC6168DFF8B462376B2825CF +:1014F00005FB01704068019A904204D10FF2A840A8 +:10150000F1F7DEFF68E01046FFF7D8FF002809D1A9 +:101510006168019B05FB017042680FF29840F1F78A +:10152000CFFF59E0DFF824743868D0F8008025E058 +:1015300090F908906068316B05FB0010C06820FAD4 +:1015400009F0C00717D54FF0FF3000900346012285 +:1015500001994846FFF789F940B200280BD161682C +:1015600001980090306B05FB010043684A460FF27A +:101570005840F1F7A5FF4046D0F80080B842D7D1D7 +:101580003868D0F800801FE090F90890C86820FA09 +:1015900009F0C00715D54FF0FF33012249684846CE +:1015A000FFF7FCF940B200280BD161680198009068 +:1015B000306B05FB010043684A460FF22440F1F707 +:1015C0007FFF4046D0F800806168326B05FB012147 +:1015D000B842D9D101984860BDE8F7832DE9F843B6 +:1015E0008146002425466E4F21E005EB8500C600AC +:1015F000386B06EB0008002088F80900FA6AD2E987 +:101600001C012A4604F04EF900F0010011F000011F +:1016100001D100280AD04846D8F81C108847002875 +:1016200004D0386B3018012141720C466D1C2D2DF1 +:10163000DBDB2046BDE8F2835948C16AD1E91C23AF +:10164000002B01D1002A0DD0002107E002EB82031C +:10165000026B02EBC30200235372491C49B20A46D3 +:101660002D2AF3DB704700B502464D48C36AD3E923 +:101670001C0104F017F900F0010011F0000101D184 +:10168000002801D0012000BD084600BD2DE9F0472B +:101690008146012409EB8900C500414E306B2818B2 +:1016A000C068002829D0DFF8A4723868D0F800801C +:1016B00003E003244046D0F80080B8421DD090F9E2 +:1016C00008A0306B2818C168012202FA0AF2114002 +:1016D00021FA0AF149B20129ECD14FF0FF3301227E +:1016E00041685046FFF75AF90028E2D05246494671 +:1016F0000FF20430F1F7E4FEDCE72046BDE8F087A6 +:1017000010B58AB004460020ADF8220001900A20EE +:101710008DF8080000208DF809008DF80A00ADF85A +:101720002200600719D50520FFF79DFF002807D08C +:1017300004208DF800000520019000A8F4F734FE85 +:101740000220FFF790FF002807D004208DF800004A +:101750000220019000A8F4F727FEE0060CD508202F +:10176000FFF781FF002807D003208DF80000082034 +:10177000019000A8F4F718FE0AB010BD0246002040 +:10178000092A00D0704780B5012902D10AF0D8FD9E +:10179000012002BD02492C22F1F76ABD00000000C1 +:1017A000B0360120136500080F6500081B650008AE +:1017B0001F65000823650008551C0108B34C01088B +:1017C000C55801089B4A0108AF1603086D2A030893 +:1017D000B14801088FC20108D95B01085D150308F3 +:1017E000B10603085D20030823280308751D0308BC +:1017F0000FB41B98009901600199416002998160C2 +:101800000399C1600499016105994161BDF85A10BD +:101810000183BDF85C104183BDF85E1081830C9993 +:101820000162139941621499816204B0704700000B +:101830004168122903D1C17A002000F0C2BD1329EA +:1018400003D1017B012000F0BCBD142903D1417BF1 +:10185000022000F0B6BD152902D1C07A00F0C2BD49 +:10186000172945D1817A1B2906D01C2930D01D2982 +:101870000FD0262926D07047C17B012903D1B0F8AB +:101880000B0002F033BF022932D1B0F80D0002F094 +:101890002BBF017D012903D1B0F80B000BF030B84C +:1018A000022903D1B0F80D000BF01EB8042903D1B2 +:1018B000B0F817000BF030B8032919D1B0F81500B3 +:1018C0000BF036B8C17B012912D1807B0BF069B9CE +:1018D000817B012902D1C07A0BF06BBB022902D1B6 +:1018E000007B0BF070BB052902D1407B0BF04BBB9A +:1018F0007047174908607047852B03081448006833 +:1019000070470000B52D0308391F03080B39010883 +:10191000B91203087524030851E401085729030884 +:10192000DF1A0308652F0008C9E501088D46010884 +:1019300001CE010887C80108E7CA010823F402089C +:10194000A92C0308BDF502082F230308E049002055 +:10195000883C0120414C204558000000414C204566 +:10196000582D415400000000414C2564202564207E +:10197000256420256420256C6C750000524C2045A0 +:1019800058000000524C2564202564202564202541 +:101990006420256C6C7500005445524D2025642050 +:1019A000256C6C75000000004558204C4D435231A9 +:1019B000202564004558204C4D4352322025642098 +:1019C00025642025640000004558204C4D435233C7 +:1019D0002025642025642025642025640000000063 +:1019E0004558204C4D435234202564202564202541 +:1019F0006420256400000000534D524120256420DE +:101A0000256400000FB410B5032200210846F4F746 +:101A1000F7FB022801D102201CE00FF24000F1F791 +:101A20004FFDDFF8744C00206073608220629DF8E7 +:101A30000C209DF80B109DF80A000CF04BF8582272 +:101A40000021DFF8580CF7F7C2FF00202063207454 +:101A5000A073012010BC5DF814FB000050443A2034 +:101A600053746172745065646F2D303632362D3187 +:101A7000000000000120704730B58BB000A8F4F7DB +:101A80001EFC05210320F4F77DFC002802D1DFF8BD +:101A9000100C0890DFF8004CA069C56F0BF0AFFF89 +:101AA000207294F90800022806D1422D04D1142195 +:101AB0000320F4F706FC07E0012805D1142D03D11B +:101AC00042210320F4F7FDFB284680B2DDED081A21 +:101AD00000A991EC030A0BF062FEE0692818E061AE +:101AE00001200BB030BD10B5DFF8AC4B94F900000D +:101AF00000283AD494F90A0094F90110814228D1BF +:101B0000217B0818A07240B23D2801DB3C38A0724E +:101B100094F90A100FF26C00F1F7D2FC0020E0619A +:101B2000DFF8840B90F9010010F1010F01D10120C1 +:101B300010BD94F90110081AFAF712FB21F00041C8 +:101B4000F2F7A4FC40B2012801DB012010BD002007 +:101B500010BDDFF8580B90F90120914203D0D4E971 +:101B60000023C0E90023002010BDE069DFF8401B1E +:101B7000884205DB0FF21800F1F7A2FC012010BD2E +:101B8000002010BD50443A204E542025640000002F +:101B900050443A204E6F54696D6500002DE9F843BA +:101BA0000026DFF8F44A07E07A19A27252B23146F1 +:101BB0000FF26C00F1F784FC94F90A50002E21D446 +:101BC0006078461B76B294F90C70002EECD5304646 +:101BD000FAF7C6FA21F0004102460B4690469946B4 +:101BE0003846FAF7BDFA42464B46FBF785F9E3D291 +:101BF000EA1BA272002652B231460FF23800F1F70A +:101C00005FFCD9E73C2D02DBA5F13C00A07294F902 +:101C10000A100FF23400BDE8F443F1F751BC0000A4 +:101C200050443A20636F6D70312025642C20256468 +:101C30000000000050443A20636F6D70322025642C +:101C40002C2025640000000050443A2043555420C5 +:101C50002564000010B5DFF8404A0020A073012081 +:101C60002072002060724FF0FF3020700F20E07271 +:101C70001420207300206073608220626074A06270 +:101C8000E06228220146DFF82C0AF7F7A0FEF4F7FD +:101C9000B5FAA061DFF8201AC0F888108830DFF8A4 +:101CA0001C1A4160DFF8181A81600FF28D21C160A3 +:101CB0000FF611210161012010BD10B582B04FF463 +:101CC0006163C1EB0114A40013FB0043D3184FF46C +:101CD0007A746343DFF8DC492360DFF8BC391B7C8E +:101CE000009313460A4601460FF20800F1F7E8FB9D +:101CF00013BD000050442042542025642025642058 +:101D000025642025640000002DE9F0412DED028BB3 +:101D1000AAB0DFF88869314684B068465822F1F7E6 +:101D2000A7FA0FBC00F070FC10EE100AF2F73CFAB4 +:101D300041EC100B9FED7E8BDFF87849656853EC22 +:101D4000102B51EC180BF3F7FBF8F2F79FFB15FA89 +:101D500080F060604FF6FF75A84200D365603146A1 +:101D600084B068465822F1F783FA0FBC00F004FCF7 +:101D700010EE100AF2F718FA41EC100BA76853ECBA +:101D8000102B51EC180BF3F7DBF8F2F77FFB17FA87 +:101D900080F0A060A84200D3A5600020139002202C +:101DA0001290314684B068465822F1F761FA0FBCB0 +:101DB00000F076FAA1894018A08180B2FF2801DBEB +:101DC000FF20A0810020139003201290314684B0A0 +:101DD00068465822F1F74CFA0FBC00F061FA21690D +:101DE00040182061A84200D32561002013900620EE +:101DF0001290314684B068465822F1F739FA0FBC88 +:101E000000F04EFAA18A4018A08280B2FF2801DBC0 +:101E1000FF20A0820020139007201290314684B04A +:101E200068465822F1F724FA0FBC00F039FAE18A2B +:101E30004018E08280B2FF2801DBFF20E082002012 +:101E4000139008201290314684B068465822F1F76A +:101E50000FFA0FBC00F024FAA1694018A061A84253 +:101E600000D3A5610020139009201290314684B060 +:101E700068465822F1F7FCF90FBC00F011FAE1694D +:101E80004018E061A84200D3E56114A80BF0BBFD47 +:101E9000DFF8287DD7F828802398F2F785F900220B +:101EA000DFF8FC3CF3F74CF8F2F7F0FA58FA80F060 +:101EB000B862F96A491CF962B0FBF1F084F82000BD +:101EC0000020139001201290314684B068465822B9 +:101ED000F1F7CEF90FBC00F0E3F9616A40186062D7 +:101EE000A84200D36562F87B00F0C5FA2AB0BDECC9 +:101EF000028BBDE8F081DFF8BC078189002914D18D +:101F00000169002911D1818A00290ED1C18A0029D5 +:101F10000BD18169002908D1C169002905D1406A26 +:101F2000401E8041C043C00F704701207047000031 +:101F300000000000000059402DE9F04FABB0814691 +:101F4000002414A80BF05FFDDFF8505720461390D3 +:101F500001201290294684B068465822F1F788F98A +:101F60000FBC00F09DF906469DED230AD5ED0F0A42 +:101F700030EE600A10EE100AF2F716F92246DFF88A +:101F8000203CF2F7DDFFF2F781FA0746BFB2BDF859 +:101F90009A00B5F84A10A0EB010A5FFA8AFADFF856 +:101FA0001C8CD8F8240014990818D8F83010401A5E +:101FB000C8F82400B9F1000F36D1002805D001205F +:101FC0000CF065FA01200CF01EFB002E02D15AEA3B +:101FD000070000D001240020C8F81C004FF0FF309B +:101FE00088F80000DFF8C426D8E90001C2E9000142 +:101FF000DFF8E02BC2E90001DFF8AC26C2E90001FE +:1020000098F80B0088F80A0098F80E00002846D0CF +:10201000002088F80E0098F8100000283FD001201A +:1020200088F8110004463AE000F0C7F900281CD0F7 +:1020300000A8F1F7E2FC404600A90522F1F708F9F3 +:10204000204688F80900DFF86426D8E90001C2E9D3 +:10205000000198F9023098F9012098F900100FF664 +:102060008830F1F72DFAFFF799FD00A8F1F7C5FCCC +:10207000404600A90522F1F7EBF8FFF734FD0028F0 +:102080000DD0DFF82426D8E90001C2E9000198F854 +:102090001000002802D0012088F811000124CB464E +:1020A000BBF1010F08D198F80E004946884203D0D1 +:1020B00000F050FA88F80E90BBF1010F69D1002EA4 +:1020C00067D0DFF8109B98F80F0098F810100843BD +:1020D00010D1012088F810000522414609F10800BE +:1020E000F2F7FAFE98F8022098F8011098F800002C +:1020F000FFF7E3FD98F9010099F90910401A411E14 +:10210000222901D2012005E010F1230F01DA01207C +:1021100000E00020012835D10020C8F82800C8F8C8 +:102120002C00FFF7E8FE00282CD028220021DFF841 +:102130008405F7F74CFC98F80F00401C88F80F0056 +:10214000C0B215280BD10FF6B820F1F7B9F901206C +:1021500088F81100002088F80F00012412E098F898 +:102160001000401C88F8100098F8022098F8011020 +:1021700098F80000FFF7A1FD0522414609F108008B +:10218000F2F7AAFEFFF7C0FD582214A92846F2F77D +:10219000A3FE98F80D0001283CD1B8F812000028E1 +:1021A00005D10FF66C20F1F78BF9012428E0D8F85F +:1021B0002010814219D2002E02D15AEA070000D025 +:1021C0000124DFF8109A99F9020098F90220904250 +:1021D00016D0491CC8F820100FF64820F1F770F906 +:1021E000D8E90001C9E900010AE0002088F80D00E3 +:1021F000A8F81200C8F820000FF63820F1F760F9AF +:10220000BBF1010F06D198F81000002802D0012080 +:1022100088F811002046012802D10021C8F81C10BE +:10222000D8F8181091F87910002907D10021C8F8C2 +:102230001C10012801D100F08DF900241498C8F871 +:10224000300020462BB0BDE8F08F10B5DFF86C09E8 +:102250000021C161032205210020F3F7D1FF0446CC +:1022600000F007F8204610BD032205210120F3F7F6 +:10227000C7BF00B597B000A80BF0C5FB582200A956 +:10228000DFF83C09F2F728FE012017B000BDDFF8A7 +:102290002C09406A7047DFF8240900214162704729 +:1022A0000FB410B596B000249DF9BC0001280BD1E5 +:1022B0000BF0A3FC1899884202D3441AE4B272E0EE +:1022C0008038441AE4B26EE000A80BF09CFB9DF944 +:1022D000B800401E082866D8DFE800F02905111D67 +:1022E0002936424E5A0001981999884201D3441A5E +:1022F00059E0DFF8E4281018401A441C53E0029813 +:102300001A99884201D3441A4DE0DFF8CC281018FE +:10231000401A441C47E003981B99884201D3441A91 +:1023200041E0DFF8B4281018401A441C3BE0009844 +:102330001899884201D3441A35E0DFF89C18081830 +:102340001899401A441C2EE004981C99884201D325 +:10235000441A28E0DFF880281018401A441C22E0B4 +:1023600005981D99884201D3441A1CE0DFF86828BB +:102370001018401A441C16E006981E99884201D392 +:10238000441A10E0DFF850281018401A441C0AE0E4 +:1023900007981F99884201D3441A04E0DFF83828CF +:1023A0001018401A441C204616B010BC5DF814FBEF +:1023B000DFF80808012141727047DFF80008407A11 +:1023C00070470BF033BB0146DFF8F027792902DBB9 +:1023D0007820508200E05082012050730FF6680090 +:1023E000F1F76EB810B5040001D1012402E0072C0A +:1023F00000DB062421460FF66400F1F761F8641E45 +:10240000052C2DD8DFE804F0030A11181F26DFF889 +:10241000AC073721C1723C21017321E0DFF89C0732 +:102420001921C1721E2101731AE0DFF890070F21F4 +:10243000C1721421017313E0DFF880070A21C17211 +:102440000F2101730CE0DFF874070721C1720C2122 +:10245000017305E0DFF864070521C1720A210173E9 +:10246000DFF85807C17A8172BDE81040FFF796BBCC +:10247000DFF83007704700EB80018800421CDFF86E +:1024800024078C4992B20B681B0E1354521C92B253 +:102490000B681B0C1354521C92B20B681B0A13548A +:1024A000521C92B20B681354521C92B24B681B0A16 +:1024B0001354521C92B24B681354521C92B28B6844 +:1024C0001B0A1354521C92B28B681354521C92B2C2 +:1024D0008B891354521C92B20B691B0A1354521C61 +:1024E00092B20B691354521C92B28B8A1354521C31 +:1024F00092B2CB8A1354521C92B28B691B0A1354AA +:10250000521C92B28B691354521C92B2CB691B0AB3 +:102510001354521C92B2CB691354521C92B291F8CC +:1025200020301354521C92B24B6A1B0A1354521C93 +:1025300092B2496A1154DFF88406511C81827047B7 +:1025400010B5DFF87846A18A0FF21C70F0F7B8FFDB +:10255000A08A10BD80B5282200215648F7F737FA27 +:10256000DFF858060021C173012181820021017426 +:102570008162C16201BD00000FB400B597B000A830 +:102580000BF041FA9DED090ADDED210AB4EE600A77 +:10259000F1EE10FA02DB30EE600A05E09FED411A21 +:1025A00071EE600A30EE800A10EE100AF1F7FCFDC1 +:1025B000DFF8F425DFF8F435F9F75AFFF9F7E8FD0D +:1025C000F1F7F2FD0022DFF8E835F2F7B9FCF1F798 +:1025D0005DFF00EE100AB8EEC00A10EE100AF1F727 +:1025E000E3FDDFF8C425DFF8CC35F2F7A9FCDFF80E +:1025F000C825DFF8E835F9F73BFFF9F7C9FD00EE2C +:10260000100A17B05DF814FB0FB400B597B000A81E +:102610000BF0F9F99DED0E0ADDED260AB4EE600A25 +:10262000F1EE10FA02DB30EE600A05E09FED1D1AB4 +:1026300071EE600A30EE800A10EE100AF1F7B4FD78 +:10264000DFF86425DFF86435F9F712FFF9F7A0FD2C +:10265000F1F7AAFD0022DFF85835F2F771FCF1F727 +:1026600015FF00EE100AB8EEC00A10EE100AF1F7DE +:102670009BFDDFF83425DFF83C35F2F761FCDFF82D +:102680003825DFF85835F9F7F3FEF9F781FD00EE4C +:10269000100A17B05DF814FBE43601206C310120FC +:1026A00000007A4400247449303C0120283C012079 +:1026B00040771B001C380120051A0108751A010813 +:1026C000791A01082DE9F0472DED068BAAB00646D0 +:1026D0000D4614A80BF097F940F22114287814FB4A +:1026E000006001210170287814FB0060DFF8CC74D1 +:1026F000797B01290ED103224270287814FB0060F7 +:102700000122C270012907D1788A002804D1002053 +:10271000787301E001214170287814FB00600321E7 +:102720008170787C012820D1387C00281DD0297840 +:1027300014FB0161C0220A71DFF868140870287860 +:1027400014FB0068FFF7FCFEA8F83000287814FBA3 +:102750000064FFF78DFEC4F832002878401C287012 +:10276000FFF7F8FE0020787415E20DF18C099FED5B +:10277000868B9FED879BDFF8487400201390012023 +:102780001290394684B068465822F0F771FD0FBCAC +:10279000FFF786FD0A28287814FB006080F0FC8093 +:1027A00000210171287814FB006898F804A00846FD +:1027B000139002201290394684B068465822F0F7F0 +:1027C00057FD0FBCFFF76CFD40EA0A0088F80400D3 +:1027D000287814FB006800201390032012903946DB +:1027E00084B068465822F0F743FD0FBCFFF758FD50 +:1027F00088F80500287814FB006800201390042056 +:102800001290394684B068465822F0F731FD0FBC6B +:10281000FFF746FD88F80600287814FB00680020C2 +:10282000139005201290394684B068465822F0F77C +:102830001FFD0FBCFFF734FD88F80700394684B050 +:1028400068465822F0F714FD0FBCFFF7DDFE10EECE +:10285000100AF1F7A9FC41EC100B287814FB006872 +:1028600053EC102B51EC190BF2F76AFBF1F70EFE4B +:10287000A8F80E00287814FB00682398F1F794FC60 +:1028800053EC182BF2F75CFBF1F700FE88F8100010 +:10289000287814FB0060B9F80E104174394684B0F2 +:1028A00068465822F0F7E4FC0FBCFFF765FE10EE17 +:1028B000100AF1F779FC41EC1A0B287814FB006838 +:1028C00053EC1A2B51EC190BF2F73AFBF1F7DEFD42 +:1028D00088F81200287814FB0068D9F80800F1F78E +:1028E00063FC53EC182BF2F72BFBF1F7CFFD88F8C4 +:1028F0001300287814FB0068002013900620129023 +:10290000394684B068465822F0F7B2FC0FBCFFF796 +:10291000C7FC88F80800287814FB00680020139092 +:1029200007201290394684B068465822F0F7A0FC80 +:102930000FBCFFF7B5FC88F80900287814FB006885 +:102940000020139008201290394684B0684658221F +:10295000F0F78EFC0FBCFFF7A3FC88F80A0028787C +:1029600014FB00640020139009201290394684B0B3 +:1029700068465822F0F77CFC0FBCFFF791FCE07230 +:102980002878401C287004E100000000000024406A +:10299000000000000000594080210171287814FBDC +:1029A00000680020139002201290394684B06846D7 +:1029B0005822F0F75DFC0FBCFFF772FCC8F8050069 +:1029C000287814FB006800201390032012903946E9 +:1029D00084B068465822F0F74BFC0FBCFFF760FC50 +:1029E000C8F80900287814FB006800201390042020 +:1029F0001290394684B068465822F0F739FC0FBC73 +:102A0000FFF74EFCC8F80D00287814FB0068002082 +:102A1000139005201290394684B068465822F0F78A +:102A200027FC0FBCFFF73CFCC8F81100394684B006 +:102A300068465822F0F71CFC0FBCFFF7E5FD10EECE +:102A4000100AF1F7B1FB41EC100B287814FB006879 +:102A500053EC102B51EC190BF2F772FAF1F72CFD35 +:102A6000C8F82700287814FB00682398F1F79CFB2E +:102A700053EC182BF2F764FAF1F708FD88F82B00F5 +:102A8000287814FB0060B9F80E1080F82C10394635 +:102A900084B068465822F0F7EBFB0FBCFFF76CFDE3 +:102AA00010EE100AF1F780FB41EC1A0B454A464B39 +:102AB00003F0D2F906D8454A454BFAF71DFA01D280 +:102AC0009FED47AB287814FB006853EC1A2B51ECB0 +:102AD000180BF2F735FAF1F7D9FCA8F82D00287891 +:102AE00014FB0068D9F80800F1F75EFB53EC182BD3 +:102AF000F2F726FAF1F7CAFC88F82F00287814FBC1 +:102B000000680020139006201290394684B0684671 +:102B10005822F0F7ADFB0FBCFFF7C2FBC8F8150059 +:102B2000287814FB00680020139007201290394683 +:102B300084B068465822F0F79BFB0FBCFFF7B0FB50 +:102B4000C8F81900287814FB0068002013900820AA +:102B50001290394684B068465822F0F789FB0FBCC2 +:102B6000FFF79EFBC8F81D00287814FB00640020C6 +:102B7000139009201290394684B068465822F0F725 +:102B800077FB0FBCFFF78CFBC4F821002878401CB2 +:102B90002870FFF76EFB2AB0BDEC068BBDE8F0870E +:102BA00000002440600901207B14AE47E17A743FA5 +:102BB00000005940E17A843F2D431CEBE4360120AC +:102BC0006C310120B81E85EB51B89E3F9A999999B6 +:102BD0009999B93F783A012080969800E2361A3FD9 +:102BE0009A9999999999B93F50443A54696D654EAB +:102BF0006F7469202564202564202564000000008E +:102C000050442042542042462046554C4C0000007F +:102C100050443A20526571205065646F496E666F6A +:102C20003100000050443A207574696D65722025AA +:102C30006400000050443A20526571205065646F72 +:102C4000496E666F3200000050443A20537461723E +:102C500074204461746120256400000050443A20CF +:102C6000555420256400000050443A204241544C01 +:102C7000454E4754482025640000000010B5DFF899 +:102C8000444D40F2972200212046F6F7A0FEFF2097 +:102C90002070E07284F85A02DFF8FC0D00214170C8 +:102CA00010BD70B501240B2831D1012918D1DFF8EE +:102CB000141D511891F94E321D46DFF8E06D965DF6 +:102CC000B54203DA581C81F84E0243E0002381F834 +:102CD0004E321C4601460FF28000F0F7F1FB39E05E +:102CE000022937D1DFF8DC1C511891F94E32012B43 +:102CF00003DB581E81F84E022CE0002381F84E328F +:102D00001C4601460FF26000F0F7DAFB22E00A28C9 +:102D100020D1012908D1DFF8AC0C111801F24E21A5 +:102D20000879401C087115E0022913D1DFF8941CC2 +:102D3000511801F24E2191F90430012B02DB581E8B +:102D4000087107E000230B711C4601460FF21800C2 +:102D5000F0F7B6FB204670BD41542D414C2045583C +:102D6000202564202564000041542D524C204558F4 +:102D70002025642025640000DFF8481C81F85602F5 +:102D800070470FB4F0B5ABB00124DFF80C5DE86814 +:102D9000DFF8306C90F81014002957D190F8110426 +:102DA000002853D10FF22C20F0F78AFBB4208DF8C5 +:102DB000020046208DF8030020468DF80400002014 +:102DC0008DF82C0003200C900DF1350000A918227D +:102DD000F0F73EFA0A208DF834000BA8F3F7E4FA76 +:102DE000002801D10220F0E014A80AF00CFE00A88F +:102DF000F0F703FE9DF80000F0769DF901003077B2 +:102E00009DF902107177BDF90320F2839DF900301E +:102E10004FF46167C0EB001C4FEA8C0017FB030006 +:102E200040FA81F04FF47A7101FB0020C6F80200ED +:102E3000C6F80D000020A861E8702870A8706870BE +:102E40002422014606F52670F6F7C1FD9DF8C270F2 +:102E50003846012825D19DF8C3000246202A0ED00D +:102E6000F17D4118F175C9B2202912DB091AF175FB +:102E7000C9B20FF27010F0F723FB0220A5E0204644 +:102E800005E0F17D224682401143F175401C052882 +:102E9000F7DB307E21469DF9C4209140084330760F +:102EA00049E0811991F94E22002A44D191F9521238 +:102EB000002940D102282ED100A8F0F79EFD9DF9EF +:102EC00000004FF461619DF90120C2EB02139A00EA +:102ED00011FB00209DF9021040FA81F04FF47A7145 +:102EE000BDF9032001FB0020C6F88B02C6F887025B +:102EF00006F1250006F11B010522F0F7A9F94FF4B0 +:102F00009660A6F81900DFF8680DC6F87F02002069 +:102F1000686128610FE003280DD19DF8C30086F891 +:102F20002000BDF8C5004FF47A714843C6F821006F +:102F30000020C6F89302204600FA07F1B07D08434E +:102F4000B0753278002A0DD09DF8C300012804D155 +:102F5000824202D1002086F8590296F861020843A5 +:102F600086F861023A46214696F85602FFF799FE26 +:102F7000002800D10224E86896F955120A9196F9C2 +:102F80005412099196F95312089196F95212079129 +:102F900096F95112069196F95012059196F94F1231 +:102FA000049196F94E12039190F81114029190F841 +:102FB00010040190B6F819000090337EF27DB17DC7 +:102FC0000FF23400F0F77CFA20462BB0F0BC5DF82D +:102FD00014FB000041542D52455631343033303407 +:102FE0000000000041542D414C204578494E5420AA +:102FF000256420256400000041542D414C202564A7 +:103000002025642025642025642C4154202564203B +:1030100025642025642564256425642025642564B1 +:1030200025642564000000002DE9F04194B0FEF70E +:1030300065FC06460124002E00F08680DFF88459E6 +:1030400005F24E28B278022198F80800FFF729FE11 +:10305000002800D10324B07801282CD1F078024652 +:1030600005F21607202A14D07978814209D3081A6C +:103070007870B878012196F9042091408843B8709F +:103080000AE00FF25C10F0F71BFA00207870B870BD +:1030900002E000207870B870787800282AD1A87DE6 +:1030A000012196F9022091408843A8750FF244103F +:1030B000F0F706FA1EE0401990F94E02002819D1E7 +:1030C000B078401990F95202002813D1B078032843 +:1030D00009D105F219000021C17181600846C5F8C7 +:1030E0009302A8F81600A87D012196F902209140CC +:1030F0008843A875A87D002813D10FF20410F0F7BB +:10310000DFF9FFF7BBFD01208DF82C0003200C90A8 +:103110000A208DF834000BA8F3F746F9002829D1CE +:1031200025E0DFF87409C06890F87810002921D1F3 +:10313000002180F8101480F81114FFF79FFD0FF2A2 +:10314000D000F0F7BDF915E00FF2D800F0F7B8F9AC +:10315000FFF794FD20468DF82C0003200C900A20E8 +:103160008DF834000BA8F3F71FF9002801D10320D4 +:1031700032E00324DFF82009C068DFF8485805F280 +:103180004E2805F2160798F907100A9198F90610CB +:10319000099198F90510089198F90410079198F988 +:1031A0000310069198F90210059198F90110049105 +:1031B00095F94E12039190F81114029190F81004B1 +:1031C0000190B5F819000090BB787A78A97D0FF2CC +:1031D0006000F0F775F9204614B0BDE8F0810000FA +:1031E00041542D524D204578494E542025642025C8 +:1031F0006400000041542D524D2D494E54000000F2 +:1032000041542D414C4C52454D4F56454400000011 +:1032100041542D464F5243454452454D4F56454427 +:103220000000000041542D524C204E756C6C000083 +:1032300041542D524C2025642025642025642025EE +:10324000642C4154202564202564202564256425B0 +:10325000642564202564256425642564000000003D +:103260002DE9F04F89B003A8F0F7C7FB01A80AF0D9 +:10327000D3FB0027B84638460290DFF848479DF850 +:103280000C00A0719DF80D00E0719DF80E002072F9 +:10329000BDF80F00A4F80900A0794FF46161E2794C +:1032A000C2EB02139A0011FB0020217A40184FF460 +:1032B0007A71B4F8092001FB0020C4F80200BDF8BF +:1032C0000450EDB2BDF806A000F084FDD4F80D1056 +:1032D000D4F8020000F0E4FB060001D0C92E0CD3A4 +:1032E000DFF8E097D9F80C00C26F31460FF23C408E +:1032F000F0F7E6F8D9F80C00C66FA07D400722D59C +:10330000DFF8C097D9F810003018C9F8100047F25C +:103310003051884217D3D9F814104118C9F8141045 +:103320000FF21840D4F87F228A4205D3F0F7C8F88C +:103330003846C9F8100006E0F0F7C2F83846C9F878 +:103340001400C9F8100094F80B90A94500F08D8086 +:1033500084F801A025703846C4F88302A07D400798 +:1033600077D5D4F88712D4F8020000F099FB834691 +:10337000D4F88F0244F62067BB4513D25844C4F8F2 +:103380008F0204EB8900D0F86B125944C0F86B121D +:10339000E07A0019217B90F866228A4212D280F8E6 +:1033A00066120FE083444046C4F88F02142201469F +:1033B00004F26B20F6F70BFB0522414604F266206F +:1033C000F6F705FBD4F88F22BA4234D34046D4F83E +:1033D0006F12D4F86B32994200D3012002210BE026 +:1033E00004EB8303D3F86B3204EB8707D7F86B72D7 +:1033F000BB4200D20846491C0346C9B20F46052FFE +:10340000EEDB8DF81400181990F866028DF815009F +:1034100005A905A800F0D6FB1422414604F26B2052 +:10342000F6F7D5FA0522414604F26620F6F7CFFA00 +:103430004046C4F88F0294F85702002809D05A4633 +:1034400004F10B0104F10B0000F0BCFB404684F8D2 +:103450005702D4F80200C4F88702404684F85902A3 +:1034600084F85EA20127B84628E0D4F88302301819 +:10347000C4F8830294F85E125FFA8AFA514505D0C7 +:1034800084F801A084F85EA20127B846217B627807 +:10349000914213D12178894510D144F62067B84272 +:1034A0000BD3A07D400706D594F85702002802D11F +:1034B000012084F85702C4F88372002794F861123F +:1034C000002909D0002F07D10127C80700D5B84629 +:1034D0000FF27420EFF7F4FFA07D40070FD5D4F86A +:1034E0000290D4F88B12484600F0DAFAD4F87F1232 +:1034F000884204D3012738460290C4F88B92002FEB +:1035000000F0D58000270DE00FF24820EFF7D8FF3C +:10351000002084F85D0204F12500A11D0522EFF7CB +:1035200097FE7F1C032F80F2C280A07D3841C00728 +:10353000F7D594F8610240FA07F1C90701D40028D1 +:10354000EFD1002F03D0022F21D00ED3E9E7DFF80F +:1035500074058068407A0028E3D1B8F1000FE0D00C +:103560000021012000F00FFADBE7E07D2841C007D1 +:10357000D7D560780028D4D094F859020028D0D14B +:10358000012084F85902014600F0FDF9C9E70298CC +:103590000028C6D0D4F80290D4F88712484600F02C +:1035A0007FFAD4F88F1201EB000B44F620608345BC +:1035B00006D35A4604F10B01204600F003FB09E054 +:1035C000A9EB0B0103A800F07FFAA01D03A90522B7 +:1035D000EFF73EFEB4F862020938F8F7C1FDDFF8F4 +:1035E0002C2DDFF89037F1F7ABFCF0F74FFF814659 +:1035F0001FFA89F994F85D22914506D049460FF6E5 +:103600008050EFF75DFF84F85D9294F85D1284F8C6 +:103610003210012084F858024FF0000A0FF6705063 +:10362000EFF74EFF4FF009091BE00AF1010A09EB21 +:10363000040000F22A018A78CB781B0203EB0242D5 +:103640000B79D21800924B7890F82A205FFA8AFA08 +:1036500051460FF64850EFF733FF09F105091FFAFD +:1036600089F9B4F8622210468145DEDBDFF8549414 +:10367000D9F80C1091F8111400293FF449AF94F9CE +:1036800050120129FFF644AF94F85D1200293FF46F +:103690003BAF002A3FF438AF04F12A010120F4F7D0 +:1036A0002BFB0020C9F81000C9F8140030E7A07DFA +:1036B00000072DD594F820002841C00728D594F89C +:1036C0006402002894F865021BD1A84215D0D4F8F2 +:1036D00093023018C4F89302D4F82110884217D30B +:1036E0000321012000F04FF90020C4F893020120CB +:1036F00084F8640284F865520AE00020C4F893025A +:1037000006E0A84204D0002084F86402C4F89302C2 +:1037100004F10B0021460B22EFF79AFD002084F8FC +:103720006102012009B0BDE8F08F000041542D4333 +:10373000757253543A2564202564000041542D438A +:103740007572543A2564000041542D434845434B5B +:103750002025640041542D4558202564202564000F +:103760002DE9FE4305460E4691464FF0000801A89C +:1037700041460A4606C0DFF8A04B04F5167794F8D8 +:103780005802002807D0084684F8580278810FF6BE +:103790002440EFF795FE7889002827D104F2250010 +:1037A00094F825104FF461624378C3EB031C4FEA91 +:1037B0008C0312FB0131807808184FF47A71228D46 +:1037C00001FB002004F1280101228A70CA701A222C +:1037D0000A7104224A71020E8A71020CCA71020A2D +:1037E0000A7248727879887209207881B9F1000FDD +:1037F00003D0B9F1020F2ED051D228788DF80400F1 +:103800000DF10409687889F80100300C89F802008C +:10381000300A8DF8070089F80460052201A978892B +:1038200000192A30F1F758FB7889411D79812878F1 +:10383000B8706878F8707879401C78714FF001089A +:10384000009699F801309DF8042089B20FF678307F +:10385000EFF736FE23E07889001900F2270190F88F +:1038600027204B781B0203EB02428978511872180B +:10387000110C80F8271078890019110A80F8281097 +:103880007889001980F8292079890819009290F820 +:10389000263090F825200FF64830EFF711FED4F8C7 +:1038A0000200C4F887020020C4F88F024046BDE839 +:1038B000FE83DFF8640A90F85812002904D0002132 +:1038C00080F858120120704700207047DFF8480A3E +:1038D0000021A0F862127047DFF83C1A01F22E00B6 +:1038E000B1F86222002A04D10022CA851146418023 +:1038F00001717047DFF8200AB0F86202002802D098 +:10390000001F80B270470520704710B5624CF2F777 +:1039100075FCE060EFF753FDA060E068DFF8FC198C +:10392000C0F8201400F22040DFF8F4194160DFF8FD +:10393000F41981600FF20D01C1600FF29D01016168 +:10394000012010BD00205449C96891F811140029C4 +:1039500013D00146DFF8C03900E0491CC9B20A465D +:10396000042A05DAD21892F94E22012AF5DB012049 +:10397000002801D10020704700E07047DFF8980967 +:1039800090F95F027047DFF8902902F24E235874D5 +:10399000002813D00846042805DA801890F94E0252 +:1039A00001280DDB03E092F94E02012808DB987B29 +:1039B000012202FA01F108439873704700209873BE +:1039C00070470000A000012080B500210846FFF7E5 +:1039D000DAFF012002BD00007CB5002340F2211275 +:1039E0000C7812FB0404012525700C7812FB0404EA +:1039F0001A25A570DFF8204994F85C520B26354251 +:103A000014D00B7812FB030301255D7094F85C322F +:103A1000DD0603D503F0EF0384F85C320B7812FB6C +:103A2000030394F85C52DD70012313E0ED0611D519 +:103A30000B7812FB030303255D700B7812FB030365 +:103A400001259D720B7812FB0303DD70002384F8BF +:103A500060322B46002B12D00B7812FB0303D4F8F4 +:103A600002505D600B7812FB030325781D720B7802 +:103A700012FB0300627842720878401C0870FFF75E +:103A8000A3FF94F86002012804D104210120BDE8BD +:103A90007C4078E773BD0000F43701205087002098 +:103AA00010B40022884201D3421A08E00B1ADFF852 +:103AB0007848A34203D3DFF874281018421A10463E +:103AC00010BC7047F43701202DE9F0412DED028B39 +:103AD00082B007460E463046F8F74CFB41EC180B17 +:103AE00053EC182BDFF84808DFF84818F1F728FAEC +:103AF000F0F7CCFC8DF800004FF4616853EC182B04 +:103B0000DFF83408DFF83418F1F71AFA04460D46E6 +:103B10009DF8000018FB00F0F8F722FB02460B4668 +:103B20002046294602F03AFA41EC180B53EC182BC8 +:103B30004FF01130DFF80818F1F702FAF0F7A6FCA1 +:103B400004468DF801403C25E4B215FB04F0F8F77B +:103B500007FB02460B4651EC180B02F01FFAF0F778 +:103B600095FC8DF802009DF8001011FB08F114FB84 +:103B7000051151FA80F04FF47A7101FB1060ADF835 +:103B80000300384600A90522EFF762FB02B0BDEC46 +:103B9000028BBDE8F081DFF8801781F86002887D34 +:103BA000C00709D591F86002012802D10421012043 +:103BB000E9E6002081F860027047DFF85C170B220D +:103BC000EFF746BB3CB40B461146DFF84C2702F238 +:103BD0005A24E478002C04D0D57A92F85A22AA42CA +:103BE00003D0002202B030BCBAE5002C06D0AA42B5 +:103BF00004D10222184602B030BCB1E533BC704794 +:103C000070B52DED048BB0EE408AF0EE608A04466C +:103C10000D46164651EC180B53EC182B02F0BEF96A +:103C200041EC190B53EC192B0020DFF81817F1F7B2 +:103C300087F941EC100B84ED008B85ED000B53EC04 +:103C4000102B4FF01130DFF8F816F1F779F9024632 +:103C50000B4651EC190B02F0A1F90022DFF8E8360F +:103C6000F1F76EF9C6E90001BDEC048B70BD0000F0 +:103C7000804F12000FB438B52DED048B8CB014A812 +:103C80000268436843EC102B06AA08A90AA8FFF7AC +:103C9000B7FFDDE90A230020DFF8B016F1F750F98D +:103CA00004460D46DDE90823DFF86006DFF8A016BC +:103CB000F1F746F922462B46F8F7DAFB04460D46A3 +:103CC000DDE90623DFF88C06DFF88C16F1F738F90A +:103CD00022462B46F8F7CCFB41EC180B16A80268DD +:103CE000436843EC102B00AA02A904A8FFF788FF41 +:103CF000DDE904234FF03330DFF86016F1F720F9E7 +:103D000004460D46DDE90223DFF85406DFF85416B9 +:103D1000F1F716F922462B46F8F7AAFB04460D46A2 +:103D2000DDE90023DFF8E405DFF83C16F1F708F9D8 +:103D300022462B46F8F79CFB41EC190B53EC182B51 +:103D400051EC180BF1F7FCF804460D4653EC192B17 +:103D500051EC190BF1F7F4F822462B46F8F788FBE3 +:103D600041EC100B0AF08CFC0CB0BDEC048B31BCA8 +:103D70005DF814FB9999C93F0FB410B58EB010A827 +:103D80000268436843EC102B19A80268436805AC2D +:103D900051EC100B02F002F92060616012A8026879 +:103DA000436843EC102B1BA80268436807AC51EC36 +:103DB000100B02F0F3F82060616005A984B068463A +:103DC0002422EFF755FA0FBCFFF754FF0EB010BCDA +:103DD0005DF814FB2DE9F84F2DED068BB0B0DFED4B +:103DE000E08A00259FEDDE8A00A8EFF706FE0EA808 +:103DF000EFF75AFE17A8FFF7E0FE14AF4FF47A7002 +:103E00003C214FF461627B78BC7811FB04F412FB17 +:103E10000343FC781B1900FB03F89DF9003013FBEA +:103E200002F29DF9013013FB01219DF9022041FAB4 +:103E300082F1BDF9032000FB01261AA809F0E3FD79 +:103E4000DFF828459DED290AB5EE400AF1EE10FA9B +:103E500004DD0320E0702846A07001E02846E070F1 +:103E6000F87ADFF8B49499F8BB12012940F03A814E +:103E7000012840F03781A069404500F0188109F51C +:103E8000267105A82422EFF7F3F90EA984B068463D +:103E90002422EFF7EDF90FBCFFF76EFFB0EE409A6A +:103EA000F0EE609AA1694046FFF7FAFD074651EC33 +:103EB000190B2A46134601F0CFFF18D23846F8F7FF +:103EC00059F9DFF87424DFF87434F1F739F8DFF8C2 +:103ED000A024DFF8A034F1F733F802460B4651EC8A +:103EE000190BF0F789F9F8F753F908EE900A9DEDF0 +:103EF000280AD4ED090A30EE600A84ED080AB5EE0E +:103F0000400AF1EE10FA01D52846206242F2107004 +:103F10008742C0F0998053EC192B2846DFF85814DB +:103F2000F1F70EF841EC190B53EC192BDFF8DC0319 +:103F3000DFF84814F1F704F802460B4692469B4618 +:103F4000206AF0F731F952465B46F8F7D5FF2AD2DE +:103F50009FED840AF4EE408AF1EE10FA0EDB0DF1CB +:103F60005500016800EE101ADFED7F0AB4EE600A1A +:103F7000F1EE10FA02DB0A20207014E0B3EE080A1A +:103F8000F4EE408AF1EE10FA03DB2078401D207039 +:103F900009E0B3EE020AF4EE408AF1EE10FA02DB19 +:103FA0002078C01C20700DF1550001680AEE101A2F +:103FB00094F900000690206AF0F7F6F8CDE90401C4 +:103FC0008DED029B1AEE100AF0F7EEF8CDE9000134 +:103FD00018EE900AF0F7E8F802460B460FF2184088 +:103FE000EFF76EFA284620629DF85000312880F2E3 +:103FF0001781B3EE080AB4EE408AF1EE10FA40F1F0 +:104000000F819FEDC00A0DF15500016800EE901A76 +:10401000F4EE400AF1EE10FA76DB9DF8500021280C +:1040200080F210810DF15500016800EE101ADFEDED +:104030004E0AB4EE600AF1EE10FA63DB94F9000068 +:1040400005285DDB0A25FDE00DF15500016800EE55 +:10405000101A00EE907AF8EE600A09F2B5209FED92 +:10406000AA1A016801EE901AB4EE610AF1EE10FA94 +:104070000EDB0DF155010A6800EE102A016801EE11 +:10408000901A30EE610A80EE200A20EE018AABE73A +:10409000016800EE101A0DF15500016801EE901A4A +:1040A00030EE610A80EE200A20EE018A9CE7E16989 +:1040B0003046FFF7F5FCB0F57A7F1FD394F9000086 +:1040C00000281BD09DED290AB5EE400AF1EE10FA4A +:1040D00014D0E661FF208DF850000DF155002946FF +:1040E000016081E7012809D109F526700EA9242273 +:1040F000EFF7BEF8C4F81880E66175E76078FBE07A +:1041000003259FE002259DE0016800EE901AB3EEC2 +:10411000021AF4EE410AF1EE10FA0EDB016800EE2D +:10412000901AF4EE400AF1EE10FA06D59DF8500010 +:10413000212880F28780022584E09FED750A0168BE +:1041400000EE901AF4EE400AF1EE10FA0EDB9DF844 +:104150005C00012801D0042874D1022572E000BF60 +:10416000000000000000104200004042016800EE24 +:10417000901A9FED681AF4EE410AF1EE10FA31DB65 +:10418000016800EE901AF4EE400AF1EE10FA29D51B +:104190009DF85C00012803D19DF85D10022901D033 +:1041A000042805D19DF8500021284BDA012549E06B +:1041B0009DED290AB5EE400AF1EE10FA42DD0DF14F +:1041C0005500016800EE101AB5EE400AF1EE10FA43 +:1041D00038DD6078002802D16FF0010532E06FF021 +:1041E00002052FE09DED290AB5EE400AF1EE10FA26 +:1041F0000BDD6078002802D16FF0020522E0E07844 +:1042000003281FDB6FF002051CE0A078401CA070A3 +:10421000C0B23C2816DB6FF001050020A07011E051 +:104220009DED290AB5EE400AF1EE10FA0ADD60783C +:10423000002802D16FF0020504E0E078032801DBDA +:104240006FF0020520782818207040B2002801D5B0 +:104250000020207094F900000A2804DB0A20207056 +:104260000120607003E0002801D10020607094F903 +:10427000040094F90010884230D018EE100AEFF7CD +:1042800093FF41EC100B607800280DF15500016898 +:1042900008EE101A94F9000004908DED020B299895 +:1042A0000ED0EFF781FFCDE9000118EE100AEFF70D +:1042B0007BFF02460B460FF25810EFF701F90DE0B5 +:1042C000EFF772FFCDE9000118EE100AEFF76CFF6F +:1042D00002460B460FF25810EFF7F2F809F5267078 +:1042E0000EA92422EEF7C4FFC4F81880E6612898CE +:1042F000606220782071607830B0BDEC068BBDE83C +:10430000F28F00000100104200007A449A999999B6 +:10431000010040416766E640A0000120832D0108AE +:104320002930010861320108A1780F05005C2605DB +:10433000B9791F962FA4923EFCA9F1D24D62503F4D +:104340001111913F00004E400020AC4000C05B4086 +:104350009999FD3F5839B4C876BE9F3F33335640D4 +:10436000AE47E17A14AEF73F9999993FF4370120AF +:10437000DFBC9A785634323F00408F409999C93F4C +:1043800041542D4346205742432025642025640094 +:1043900041542D54433A25640000000041542D4EF1 +:1043A0006F256420543A256420413A256420443A1C +:1043B0002564000041542D436C6561724261746351 +:1043C000684461746100000041542D424154322020 +:1043D00053503A256420256420256420256400007C +:1043E00041542D424154342053503A2564202564D1 +:1043F000202564202564000041542D50312025667D +:104400002025662025662025662025640000000002 +:1044100041542D503220473A256620503A256620D7 +:10442000443A25662056656869636C652D256400ED +:1044300041542D503220473A256620503A256620B7 +:10444000443A2566204E6F747965742D256400000A +:1044500080B5B248816891F83914002901D1002053 +:1044600002BD012181700AF0A0FA00280AD00BF0E9 +:10447000A1F901460FF2EC20EFF722F80AF099FAC1 +:10448000012002BD002002BD0FB430B589B0A34C9D +:10449000A06890F83814002940D190F83904002819 +:1044A0003CD10AF06DF9002020706070A07060614E +:1044B000BDF83240204600F019F9BDF834502846C6 +:1044C00000F012F90FF2B020EEF7FAFF2A4621466B +:1044D0000FF2B020EEF7F4FF01208DF83400AA208F +:1044E0008DF832003C208DF8330000208DF800005C +:1044F000032001900DF109000CA91822EEF7A8FE87 +:104500000A208DF8080000A8F1F74EFF002805D119 +:104510000FF28020EEF7D4FF022000E0012009B066 +:1045200030BC5DF814FB00B589B00AF0A0F9012099 +:104530008DF80000032001900A208DF8080000A8E3 +:10454000F1F732FF002801D1032000E0012009B07B +:1045500000BD70B504460D4640F22116287816FBC2 +:104560000040012101700BF025F901281AD12878AB +:1045700016FB004005214170287816FB00401B21E6 +:1045800081700FF22420EEF79BFF287816FB004085 +:104590000221C170287816FB00401E2141710AF0EB +:1045A00019FA18E00BF00AF9012814D1287816FB43 +:1045B000004001214170287816FB00401B218170CA +:1045C0000FF2F410EEF77CFF287816FB0040012173 +:1045D000C1700AF00FFA2878401C2870BDE87040BE +:1045E0000AF0E7B970B59CB04D4E304609F00BFAB1 +:1045F00030684A4CE168411A89B2002904D1226925 +:10460000B6F84A309A4203D0E060B6F84A0020611A +:10461000A068D0F83C5431606068807AC046C046DB +:10462000314683B068465822EEF722FE0EBCADB28A +:1046300028460BF0B7FC6061207801281CD113A834 +:10464000EFF732FA17A80268436843EC122B15A85B +:104650000268436843EC112B13A80268436843ECDB +:10466000102B9DF867209DF866109DF8650000F0FE +:104670002FF80020207006E06078012803D100F0B8 +:1046800031F80020607001201CB070BD10B50FF231 +:104690003810EEF715FF214CEEF791FE6060F1F750 +:1046A000ADFDA060EEF78BFE60600020E060206151 +:1046B000A0681C49C0F8481400F248401A494160FB +:1046C0001A4981601A49C1601A490161012010BD6F +:1046D00080B5D2B2C9B2C0B20AF0A9F9BDE80140B2 +:1046E0000AF098B90AF09EB90AF0E2B80AF0CFB819 +:1046F0000AF0F0B80AF0FCB880B50BF05BF80028BF +:1047000005D006488078002801D1012002BD002094 +:1047100002BD02480121017070470000C03901202C +:10472000C43101208944010827450108E5450108F5 +:1047300051440108534501080BF068B80BF06AB802 +:10474000C9B20BF076B80AF045B90AF09FB80BF081 +:1047500075B980B50BF038F9C0B202BD0BF0FEBBE5 +:104760000BF0FDBB4C5420436D6452656164795F6E +:1047700053532025640000004C542053746172741C +:10478000205353004C542053542025642C2057545C +:10479000202564004C54205065646F4F70656E4650 +:1047A00061696C20535300004C54205245515545CB +:1047B000535420504F5300004C54205245515545FE +:1047C00053542041434B00004C5420496E695353CD +:1047D000000000000FB480B5082200210846F1F760 +:1047E0000FFD022801D1022004E069480021017078 +:1047F0004180012002BC5DF814FB65480021017076 +:104800000120704738B501240020ADF80000604D4C +:1048100095F90000002809D1204628700020A880C2 +:10482000A8680CF017F80CF08DF929E0012829D1BF +:104830006888401C68800DF10101A8680CF02EFA10 +:10484000002815D0082200212046F1F7D9FC0328C2 +:1048500000D1032408220B210020F1F7D1FC02280B +:1048600001D1022032BD022028700CF0E9FB07E0E4 +:10487000B5F90200962803DB0520287000F057F8F0 +:10488000204632BD0328FBD1A888401CA88000B276 +:10489000FB28F1DA00A9A8680CF018F80028EFD07E +:1048A00004202870204600F033F800F040F8E7E7D5 +:1048B00010B5374CF1F7A2FCE060F2F759FBA060AD +:1048C000E0683449C0F8501100F5A87032494160E1 +:1048D000324981600FF20D01C1600FF2C90101611F +:1048E000012010BD01460020294AD26892F84121DA +:1048F000002A02D0012900D106E0704780B50020CF +:1049000000F006F8012002BD254890F9000070472C +:1049100023490870704780B5082200210846F1F746 +:104920006FFC022801D1022002BD012002BD80B52A +:10493000174800218180418008220120F1F760FCA6 +:10494000032801D1032002BD012002BD38B5012496 +:104950000F4D95F90000022815D108220B212046A1 +:10496000F1F74EFC032800D10324FFF7D4FF0228FF +:1049700001D1022032BD032800D103240320287076 +:1049800002A0EEF79DFD204632BD000053414900D4 +:10499000983A0120D5470108FB470108054801085E +:1049A000063D012018B440F221120B7812FB0303DC +:1049B00001241C700B7812FB03035C700B7812FB54 +:1049C000030308249C700B7812FB03000122C270C1 +:1049D0000878401C087011BC90E700000FB480B547 +:1049E000874801210170052200210846F1F708FCE3 +:1049F000022801D1022016E0052209210020F1F74A +:104A0000FFFB022801D102200DE005220721002032 +:104A1000F1F7F6FB022801D1022004E000F0E8F8EB +:104A20000CF036FB012002BC5DF814FB38B5012404 +:104A3000052209212046F1F7E3FB032800D10324D6 +:104A4000052207210120F1F7DBFB032800D1032415 +:104A50006B4D95F90000032801D0012807D10522EC +:104A600000210120F1F7CCFB032800D10324002012 +:104A7000287000F0BDF80CF0AEFB204632BD80B5CA +:104A8000002000F03CF8022801D1022002BD0328DA +:104A900001D1032002BD012002BD10B5584CF1F731 +:104AA000ADFB2061F2F764FAA060EEF788FCE060ED +:104AB00020695449C0F8D810D8305349416053494F +:104AC00081600FF21101C1600FF2491101610120F3 +:104AD00010BD000001460020494A126992F8C92021 +:104AE000002A02D0012900D102E07047002003E033 +:104AF000474890F90000704745490870704770B505 +:104B000082B0064601253E4C94F90000012823D1CD +:104B1000A088401CA08000B24C280BDB0020A080A5 +:104B200002202070052200212846F1F769FB0328A6 +:104B300000D10325012E59D1E068007D012807D15D +:104B4000B4F904001F2851DB6078401C60704DE010 +:104B5000A078401CA07049E002281CD1012E0AD187 +:104B6000E068007D012803D16078401C607002E09D +:104B7000A078401CA07094F90100012836DB0522C2 +:104B800000210846F1F73CFB022801D1022076BD46 +:104B9000032020702AE0032828D100208DF800008F +:104BA00000A9A0680CF098FAC0B202280DD1052225 +:104BB00000212846F1F724FB032800D1032501201A +:104BC000FFF79AFF0420207010E003280ED1052281 +:104BD00000212846F1F714FB032800D1032500200B +:104BE0006070A070022020700CF052FA284676BD4A +:104BF00003480021818041708170704700000000EF +:104C0000303A0120DD4901082D4A01087F4A010898 +:104C1000F63C012010B50C4640F22111227811FB20 +:104C2000020201231370227811FB020253702278D2 +:104C300011FB020205239370227811FB020001216F +:104C4000C170FFF753FF2078401C207010BD00009A +:104C50000FB480B5022201210020F1F7D1FA022819 +:104C600001D102200EE0022207210020F1F7C8FA4C +:104C7000022801D1022005E00CF0B8FA41480021D9 +:104C80000170012002BC5DF814FB3E480021017058 +:104C90000120704700B58BB000A8F1F710FB03A806 +:104CA00090EC030A0CF0D8FA3649087001200BB0DA +:104CB00000BD10B5334CF1F7A1FAA060EEF77FFB11 +:104CC0006060A068304901663049416630498166BC +:104CD0000FF21D01C1660FF269010167012010BDCD +:104CE00080B528484068007D0CF0AFFA012002BD75 +:104CF000002024498A6892F85120002A04D091F9B2 +:104D00000010002900D0012070471E4800210170CA +:104D10000120704710B50024012804D007D30328D0 +:104D20000BD002D303E0012407E0022405E00324B2 +:104D300001460FF26000EEF7C3FB204610BD0000F5 +:104D400038B50C4640F22111227811FB02020123F2 +:104D50001370227811FB02025370227811FB0202B9 +:104D600002239370227811FB0205064890F9000097 +:104D7000FFF7D0FFE8702078401C2070BDE831407C +:104D8000C3E70000283B0120514C01088B4C01086F +:104D9000954C01084C4D43505320312025640000B0 +:104DA000182200210248F4F712BE014870470000A3 +:104DB00078390120DFF8E8090078012801D10020C6 +:104DC00070470120704710B504464FF4A1620021DE +:104DD000F4F7FDFD40F24130208404F120014880C9 +:104DE0008880002084F8040304F541700021C1800C +:104DF0001021418100218181C18101820846A4F8EE +:104E0000480304F5527001214180002181804FF058 +:104E1000FF31C1800021018141818181C181012156 +:104E2000018281840021C184018541850121818520 +:104E30000021C185018641860121818610BD0021A6 +:104E40000B4617E00A1882F8053301EB410200EB2C +:104E50004202D38013815381D3841385538501EBA0 +:104E6000410200EB8202C2F8E03302F5787253602F +:104E70009360491C0229E5DB704738B504460322DC +:104E800000A91046DFF81C399B681B6E1B6A984707 +:104E9000002828D09DF80000A4F8020104F56D75E3 +:104EA0009DF80000A88004F2021000A94A78428010 +:104EB0004A78EA808A7882808878288142F2B760CE +:104EC000A4F8B4034FF4A960688010220FF6E4013F +:104ED00004F2923002F01AF910220FF6E40104F203 +:104EE000A33002F013F931BDF0B583B00446FFF7EB +:104EF00061FF014604F54175A9800626204611FB95 +:104F00000641891D3246EEF7A3F9B5F9040010FBFE +:104F10000640B0F90600606104F11400B5F9041010 +:104F200011FB0641B1F908104160B5F9041011FBFD +:104F30000641B1F90A108160B5F90400001990F832 +:104F4000050384F8040304F57570B5F9041001EB4A +:104F5000410204EB820101F578718CC98CC004F523 +:104F60009B6204F5836104F13A000DF09AFB94F81A +:104F700004030190009401230022114604F5887077 +:104F80000DF0DAFD40F6C412B5F9040010FB06403E +:104F900000F1260104F132000EF032FA0020E88020 +:104FA000A4F890030120FEBD7CB50446FFF702FF84 +:104FB000014604F54175A9800626204611FB0641ED +:104FC000891D3246EEF744F9B5F90400001990F84E +:104FD000050384F8040304F59B6204F5836104F17E +:104FE0003A000DF05EFB94F8040301900094012355 +:104FF0000022114604F588700DF09EFD40F6C412A3 +:10500000B5F9040010FB064000F1260104F132005E +:105010000EF0F6F90020A4F89003012076BD0322DB +:1050200001461046DFF87C379B681B6E1B6A1847E9 +:1050300080B5FFF7BAFEDFF8481708600FF2851158 +:1050400001600FF2B1114160DFF85C1781600FF26F +:10505000B511C1600FF2350101610FF29901416193 +:1050600001BD00200DE000EB4002DFF8203703EB2C +:10507000420247F6FF7322F81130491C0329F2DB84 +:10508000401C042801DA0021F8E7704780B5DFF8FA +:10509000F406B0F90813091890F8042381F80523E1 +:1050A0000621B0F9082312FB01020388D380B0F96E +:1050B000082312FB010243881381B0F9082312FB75 +:1050C000010283885381B0F9082312FB0102438E49 +:1050D000D384B0F9082312FB0102838E1385B0F943 +:1050E000082312FB0101C08E4885FFF7BAFF00209C +:1050F00002BD000010B50024DFF88816B1F90823BE +:10510000521892F8052302700622B1F9083313FBF6 +:105110000213B3F906301B124370B1F9083313FBC5 +:105120000213DB888370B1F9083313FB0213B3F960 +:1051300008301B12C370B1F9083313FB02131B892B +:105140000371B1F9083313FB0213B3F90A301B12D0 +:105150004371B1F9083313FB02135B898371B1F911 +:10516000083313FB0213B3F926301B12C371B1F9D4 +:10517000083313FB0213DB8C0372B1F9083313FB02 +:105180000213B3F928301B124372B1F9083313FB31 +:1051900002131B8D8372B1F9083313FB0213B3F9A9 +:1051A0002A301B12C372B1F9083313FB0212528D5D +:1051B00002730846FFF798FE002800D0012420461D +:1051C00010BD000010B5DFF8BC452046FFF7FBFD21 +:1051D000204600F00AFA002802D12046FFF72FFEF1 +:1051E0002046FFF74AFE2046FFF77EFEBDE810404E +:1051F00037E7000080B5DFF88C0500F003FABDE862 +:1052000001402EE733B585B0144602A800210A46B6 +:1052100006C000A806C0BDF81400ADF8080002A83A +:10522000BDF816104180BDF818108180FDEEC01A3F +:1052300011EE900AADF8000000A8F0EE601AFDEE45 +:10524000E11A11EE901A4180BDEEC10A10EE101A5B +:105250008180DFF8305500AA02A9284600F050F8F6 +:1052600095F90403207005F541709FED580AB0F9D7 +:10527000121000EE901AF8EEE00A60EE800AC4ED1B +:10528000030AB0F91C1000EE901AF8EEE00A20EEC6 +:10529000800A84ED020AB0F9220000EE100AB8EE8E +:1052A000C00ADFED4B0A20EE200A84ED010A9FEDD3 +:1052B000490AB5F9FC0000EE900AF8EEE00A60EE4B +:1052C000800AC4ED040A05F1FC00B0F9021000EEFA +:1052D000901AF8EEE00A60EE800AC4ED050AB0F913 +:1052E000040000EE900AF8EEE00A20EE800A84ED59 +:1052F000060A284600F086F9012007B030BD0000FC +:1053000030B589B00446DFF880542878ADF8040041 +:1053100001A80B784380B1F90030C3F307238380E1 +:105320008B78ADF80A30B1F90230C3F3072303815B +:105330000879ADF80E00B1F90400C0F30720ADF80C +:1053400010000020ADF812006878ADF8140006A92E +:10535000104600F081F99FEDBE0A06A8D0ED010AC3 +:1053600060EE800AFDEEE00A10EE901AA4F84213F7 +:1053700004F24231DDED060A9FEDB61A60EE810AB5 +:10538000FDEEE00A10EE902A4A80D0ED020A20EEEF +:10539000800ABDEEC00A10EE100A88802878012825 +:1053A00010D1FFF707FD0821009101230246214695 +:1053B00001A800F011F8002804D0012802D12046ED +:1053C000FFF7F2FD012009B030BD00000000803C75 +:1053D000000080BC8FC2753DF0B593B004460D4609 +:1053E00016461F460020ADF848000E900F90ADF80D +:1053F0004000119042F2B7600DF14A010D910DF19C +:1054000046010C910EA90B910DF13A010A9112A9D6 +:10541000099111A908910FA9079105F1FA010691C7 +:1054200005F57571059105F59B61049105F583619D +:10543000039105F13A01029102210191D5F814146A +:10544000009105F58173B5F90E2321460DF04EF953 +:10545000D5F8D403BDF83C100818A5F80801D5F814 +:10546000D803BDF83E100818A5F80A01D5F8DC03EA +:10547000BDF840100818A5F80C01B5F90803B042B2 +:1054800006D01898A5F80A03A5F808630120AAE039 +:10549000BDF93A00012801D10220A4E0B5F90A03C0 +:1054A000012803DB401EA5F80A0390E005F13A014C +:1054B00005F132000DF0B1FFBDF93810012915D109 +:1054C00001230022294605F588700DF0BAFC0FF281 +:1054D0000030EDF7F5FF002085F80403B5F9080367 +:1054E0004019002180F8051304207CE0012815D123 +:1054F00001230022294605F588700DF0A2FC0FF269 +:10550000E020EDF7DDFF002085F80403B5F908037E +:105510004019002180F80513202064E0B5F89003BD +:10552000401EA5F8900300B2012850DA05F541703D +:10553000059004950120039000200290B5F9FA002F +:10554000019005F13A00009005F5887305F56D723C +:1055500005F2A33105F292300DF006FB10F5004F75 +:1055600001D180203FE001282FDB0624B5F9080394 +:1055700010FB0450801D29462246EDF769FEB5F95F +:1055800000006861B5F90200A861B5F90400E8619E +:10559000B5F90803401995F8041380F80513B5F917 +:1055A000080310FB0450263005F132012246EDF7C6 +:1055B0004FFEB5F9080300EB400105EB810000F553 +:1055C000787005F575711CC91CC0A5F8907305F1BC +:1055D000FC00009040F2413305F1200229460FA85B +:1055E0000DF032FF002013B0F0BD002180F805134C +:1055F000C18000F206004180818001844184818461 +:105600000846704770B4B0F9061090F80523674B50 +:105610001C78944211D1B3F904408C420DD100F2B0 +:105620000604B3F90650B4F90260B54205D1B3F9E6 +:105630000850B4F90440A54207D01A70998000F2CE +:1056400006046088D880A0881881002070BC70474C +:10565000000034C40000344470B52DED068B0C46B8 +:10566000002109E030F91120B2F5006F03DDA2F549 +:10567000805220F81120491C0329F3DB03210DE09F +:105680000622424B02FB013202EB450333F8063C93 +:1056900022F815306D1C032DF2DB491E012901DBB8 +:1056A0000025F8E70021394B04E030F8112023F8F9 +:1056B0001120491C0329F8DBDFED358A9FED340A00 +:1056C0009FED338A002047F6FF7517E0C95E00EEB4 +:1056D000901AF8EEE00A70EEA88AB2F9021000EE15 +:1056E000901AF8EEE00A30EE800AB2F9041000EEEB +:1056F000901AF8EEE00A30EE888A401C04280EDA90 +:10570000062202FB00F1CA18CE5EAE42DED1B2F92B +:105710000260AE42DAD1B2F90460AE42D6D100EEF8 +:10572000900AB8EEE0AA9FED1B9B80EE0A0A10EEED +:10573000100AEEF739FD53EC192BEFF701FCF6F7E1 +:1057400027FD206088EE8A0A10EE100AEEF72CFD85 +:10575000124A174BEFF7F4FBF6F71AFD606088EE7C +:105760000A0A10EE100AEEF71FFD53EC192BEFF7A3 +:10577000E7FBF6F70DFDA060BDEC068B70BD0000E9 +:105780007C3C0120A0DB0020E03A01209039012080 +:105790000000000051FA42C879FF4F3F51FA42C859 +:1057A000E83C0120084000201F500108EC3A01208D +:1057B00079FF4FBF41534148494B41534549000090 +:1057C00053454330393931314E534653540000006C +:1057D000444154415F4F564552464C4F57200000BC +:1057E00048464C55435F5F4F564552464C4F5720F5 +:1057F0000000000010B5040010480078002805D112 +:105800000F480DF080FE0D48012101700C480DF08D +:10581000B0FE20000EF080FD040009480DF0DDFE12 +:10582000200010BD10B5040005480DF0A2FE2000B8 +:105830000EF0CCFE02480DF0D0FE10BD143D01204C +:10584000443A012038B504000D0014480078401C8B +:105850001249087012480078002802D0A120F5F7FC +:10586000F1FAEEF745FB607E662802D08220F5F75C +:10587000E9FAF5F754FB05E0382120000FF034F980 +:10588000F5F74DFBE06821698842F5D0290020003A +:105890000FF04CF9EEF76DFB31BD00BFA480002086 +:1058A000123D0120D2B2203A22BF21FA02F000219B +:1058B00070472032D141D04048409140D1404840CB +:1058C0007047000038B5F0F799FC0446104DF1F729 +:1058D0004FFB2860FFF764FAFFF767FA6860FFF78D +:1058E000A7FB0C48C4F8B00004F1B0000A494160BD +:1058F0000A4981600A49C1600A490161012032BD3B +:1059000003494968896808470148406800680047BA +:10591000203C0120136500080F6500081B65000886 +:105920001F650008236500082DE9F04786B004468E +:1059300001A81421ECF788FDEDF741FD05464FF075 +:105940000208002601E0761C76B20A2E80F29E80C4 +:10595000022EF8D0032EF6D0062EF4D0524850F87E +:105960002670787A002806D107F10C00406D406857 +:1059700080470028E7D008F8046008F101084FFAD2 +:1059800088F8304609284FD8DFE800F0050A4E4E67 +:1059900010204E154E49C8212846EDF7FCFE43E085 +:1059A0004FF448712846EDF7F6FE3DE032212846D7 +:1059B000EDF7F1FE38E007208DF80400FF208DF8A8 +:1059C000050032212846EDF7E6FE2DE03C21284671 +:1059D000EDF7E1FE4FF0000A07F10C09BAF1030FF1 +:1059E00022DA0020D9F85410096988471421284682 +:1059F000EDF7D1FE0120D9F8541009698847142128 +:105A00002846EDF7C8FEBAF1020F05DA062101A813 +:105A1000D9F85420526990470AF1010ADEE74FF4A1 +:105A200016712846EDF7B7FE07F10C0999F8151025 +:105A300001A8D9F8542052699047002819D0D9F804 +:105A40000C00F96800EB010A99F8152001A95046ED +:105A5000EFF742FA3846FAF75BFD99F81520514600 +:105A600008EB0400EFF738FA99F9150080444FFA73 +:105A700088F8787A00287FF466AFD9F854008068F7 +:105A8000804700287FF45FAF002009E0A8F1020002 +:105A9000ADF80000022200A92046EFF71DFA002011 +:105AA00006B0BDE8F08700000840002038B50500CA +:105AB0000C0094F84C00642802D08020F5F7C2F95D +:105AC000EEF7EEF9F5F72BFA606928436061207C68 +:105AD00010F0F800082806D1A0696169084202D0D8 +:105AE0002000EEF782FA07484078F021084202D001 +:105AF0009920F5F7A7F903484078002801D1F5F778 +:105B000008FA31BDA48000200FB480B5BDF80B00A9 +:105B100064494880022802DB801E088001E00020E2 +:105B200008800C229DF90A100020F0F769FB032879 +:105B300001D1022000E0012002BC5DF814FB5948AD +:105B400001214180002101800120704756490870E1 +:105B50007047000030B58DB002A8F0F7B0FB514C93 +:105B60002088401C2080618880B2884231D3002088 +:105B70002080054627E06068D0F8EC01E840C007C7 +:105B800020D5284606F0D4FA00281BD400EB80006C +:105B90009FED430ADDED0B0A60EE800AFDEEE00AA0 +:105BA00010EE901A00AA8152DDED0C0A20EE800A58 +:105BB000BDEEC00A10EE101A8218518000A94018DC +:105BC000012101716D1C182DD5DBDDE9000106F006 +:105BD000B8FA01200DB030BD80B5F0F70FFB3149A8 +:105BE00048603249C0F8F01100F5F8703049416062 +:105BF000304981600FF20D01C1600FF22501016192 +:105C0000012002BD10B50024274890F900000028AB +:105C100004D106F0B6FA002800D00124204610BDB9 +:105C2000F8B504460D4640F22116287816FB0040D0 +:105C300001210170287816FB00404170287816FB7E +:105C400000400C218170287816FB0040164991F91C +:105C50000010002902D00221C17001E00121C170B1 +:105C6000287816FB004001210171287816FB0040BE +:105C7000C180287816FB0047002006F023FA3881FF +:105C8000287816FB0044002006F021FA608128786D +:105C9000401C28700C20BDE8F24006F031BA00002C +:105CA0000000C84234870020F43C0120095B010851 +:105CB0003F5B0108555B01080278C9B28A421AB1FC +:105CC0001CBF10F8012FF9E718BF00207047000033 +:105CD000C9B2830706D0521E22D310F8013B994265 +:105CE000F7D11FE0083A13D302F1040241EA01217F +:105CF00041EA014150F8043B121F21BF4B40A3F180 +:105D0000013C2CEA030C1CF0803FF3D0C9B2001F09 +:105D1000083210F8013B521E28BF91EA030FF8D851 +:105D200018BF0120401E70471B4213D1094236D1D3 +:105D30002AB18446B0FBF2F002FB10C270470EF0AD +:105D40005DBFFCD30022002370470B00020000213E +:105D500000207047904271EB030CF6D370B5B1FA96 +:105D600081F4B3FA83F52C1BA340C4F1200532FA69 +:105D700005F63343A2405FF00046E64002E05B08D0 +:105D80005FEA3202841A71EB030524BF20462946DC +:105D90007641F4D302000B003000002170BD012ACF +:105DA000CFD970B5140C20D0B1FA81F4B2FA82F5D3 +:105DB000C4F120046419B4F12006D6D3B2405FF0D8 +:105DC0000044F440002502E052085FEA3303C61A9B +:105DD00071EB020E24BF3046714664416D41F3D32E +:105DE00002000B002000290070BD0C46B1FBF2F14F +:105DF00002FB11452D0445EA1045B5FBF2F402FB08 +:105E0000145580B240EA0545B5FBF2F002FB105292 +:105E100040EA044070BD30B4436803F00042012101 +:105E20001B031B0B436004BF0368002B08D10DE06C +:105E30000368DD0F45EA440444605B000360491ECB +:105E40004468E302F4D523031B0B436043681A4301 +:105E50004260084630BC70474FF4001C1CEB410FF9 +:105E600094BF1CEB430F09E041EA030C50EA4C0CD1 +:105E700052EA0C0C03D28B4208BF8242704714BF17 +:105E8000994290427047000070B504460D46606824 +:105E9000C0F30A5040F2FF71884207D160680003E6 +:105EA00004BF2068002817D0022070BD20B920460A +:105EB000FFF7B1FF012867DA012D0FDB40F2FF7118 +:105EC000091A8D420AD3606800284CBF9FED2F0B42 +:105ED0009FED300B84ED000B012070BD4142A942C3 +:105EE000616806DA6FF31E51401941EA00506060A4 +:105EF00041E0401E63680122451962F31F5305F11A +:105F0000350001F000416360352803D36160002053 +:105F1000206070BD002215F11F0F04DA2268236093 +:105F2000002020356060684213D0521E25689241DF +:105F3000C0F12003D2439D4045EAD27225686668CD +:105F4000C54006FA03F32B432360636823FA00F08D +:105F50006060606808436060B2F1004F03D80DD103 +:105F60002078C0070AD52068401C2060206828B926 +:105F70006068401C60604FF0FF3070BD6068884210 +:105F800004BF20680028F6D1002070BD000000008A +:105F90000000F0FF000000000000F07F70B44FF040 +:105FA000004591EA030F44BF6B40F6F76BBA00BFA0 +:105FB000841A71EB030604D26E40001BB141121922 +:105FC00073414FF4001C1CEB410F34BF7CEB4306C4 +:105FD00084E00C0DA4EB1356362E7DDC012E43DC41 +:105FE00045EAC32343EA525312BFD20292025B082E +:105FF000240545EAC12141EA5051D2EBC020994124 +:1060000025D407D1B0FA80F610FA06F164D000204A +:10601000203608E0B1FA81F6B140C6F1200220FA3C +:1060200002F21143B0404FEAF474B4EB465434F03A +:1060300001064FEA74040AD8D6F50016760D04F06E +:106040000044F04061FA06F25040F1404840C00A76 +:1060500040EA415021F0004128BF5FEA500550F16D +:10606000000044EBD12137E045EAC323DB0A45EACF +:10607000C121C90AB6F120050EDD42EA0242120C26 +:10608000C5F1200603FA06F6EB4042EA06056D422A +:10609000984161F100010DE062FA06F5F2405540C9 +:1060A00063FA06FC82EA0C02F3405A406D429041CA +:1060B00061EB030111F4801F05D1641E620502D05B +:1060C0006D004041494121F48011430875F10043BE +:1060D00050F1000041EB045170BC70471CEB410FC4 +:1060E00015D223F0004352EA43060BD04FEA4C0C82 +:1060F000BCEB410F04D80C0D661E342EB7DDEBE768 +:10610000801A994150EA410608BF0021E4E708BF20 +:106110001CEB430F28BF6FF00001DDE791FBF2F3AA +:1061200003FB1211C0E9003170470000DFF8AC1129 +:1061300000220A700A70012802D0042803D0704798 +:106140000120087070470520087070476449086096 +:10615000704710B463494A6802F00C02082A13D150 +:106160000A680B6803F03F03604CB4FBF3F30A6862 +:10617000C2F388125A430B68C3F301435B1C5B00F4 +:10618000B2FBF3F2026001E0584A02604A6802F092 +:10619000F003574A1B099B5C046824FA03F343602D +:1061A0004C6804F4E054A40AA45CE34083604968AA +:1061B00001F46041490B895C426822FA01F1C16037 +:1061C00010BC7047484900F44072B2F5407F06D1D8 +:1061D0000A6822F4F812474B03401A430A608A6E99 +:1061E000000552EA105088667047434908607047BE +:1061F000424908607047424A0029116802D00843AA +:106200001060704721EA0000106070473D4A002985 +:10621000116802D008431060704721EA0000106046 +:106220007047394A0029116802D00843106070474E +:1062300021EA000010607047344A0029116802D03A +:1062400008431060704721EA000010607047304A30 +:106250000029116802D008431060704721EA00004D +:10626000106070472B4A0029116802D00843106063 +:10627000704721EA000010607047274A0029117812 +:1062800002D008431070704721EA00001070704778 +:106290004109114A012901D1116804E0022901D103 +:1062A000116F00E0516F00F01F0021FA00F000F0C4 +:1062B000010070471948016841F080710160704722 +:1062C0000021174A1268024200D001210846704797 +:1062D00014490870704700000038024070380240CE +:1062E000800E474204380240083802400024F4007F +:1062F00004870020FFFCFF0F3C0E4742400E474240 +:1063000030380240403802404438024010380240E1 +:1063100020380240243802400D38024074380240D0 +:106320000C3802400E38024080B52749884209D116 +:1063300001210846FFF780FF00210120BDE804404D +:10634000FFF77ABF2149884209D101210220FFF7D6 +:1063500073FF00210220BDE80440FFF76DBF1C4918 +:10636000884209D101210420FFF766FF00210420A3 +:10637000BDE80440FFF760BF1649884209D10121FA +:106380000820FFF759FF00210820BDE80440FFF76F +:1063900053BF1149884209D101211020FFF74CFF5A +:1063A00000211020BDE80440FFF746BF0B4988429A +:1063B00009D101218020FFF73FFF00218020BDE8A7 +:1063C0000440FFF739BF01BD000002400004024055 +:1063D00000080240000C024000100240001C024075 +:1063E000F0B4002232E0012393400C681C409C4230 +:1063F0002BD154000325A540ED4306682E400660CE +:1064000006680F79A7403E4306600E79012E01D041 +:10641000022E11D186682E40866086684F79A7408B +:106420003E438660466826EA0303436043688E79EC +:106430009640B6B233434360C3682B40C360C36821 +:10644000CD7905FA04F42343C360521C102ACAD341 +:10645000F0BC70474FF6FF7101600021017141717E +:106460008171C171704700220069084200D0012289 +:1064700010467047018370474183704710B4CB10BA +:1064800000EB830001F007018900036A0F248C40B0 +:10649000A3430362036A02FA01F11943016210BCCB +:1064A0007047000080B5434988420BD101214FF469 +:1064B0000010FFF7CCFE00214FF40010BDE80440AF +:1064C000FFF7C5BE3C4988420BD101214FF4800043 +:1064D000FFF7BDFE00214FF48000BDE80440FFF748 +:1064E000B6BE364988420BD101214FF40000FFF7B8 +:1064F000AEFE00214FF40000BDE80440FFF7A7BE48 +:1065000001BD7FB504460D46A68800A8FFF721FE11 +:1065100002992B48B1FBF0F04FF6C07232400243B3 +:10652000A28022884FF6FE731A4022802A68254BEB +:106530009A420AD25200B1FBF2F10A4692B2042A00 +:1065400000DA0421401C208421E0EB884BF6FF7622 +:10655000B34204D102EB4202B1FBF2F106E019238F +:106560005A43B1FBF2F141F4804189B20A0502D1EC +:1065700041F0010189B241F4004180B24FF49672BA +:1065800050434FF47A7290FBF2F0401C2084A183B8 +:10659000208840F00100208020884FF6F531084027 +:1065A000A9880843698908432080A8892989084364 +:1065B00020817FBD0054004000580040005C004036 +:1065C00040420F00A18601000029018803D041F05C +:1065D0000101018070474FF6FE7211400180704743 +:1065E0000029018803D041F48071018070474FF683 +:1065F000FF621140018070470029018803D041F4F7 +:106600000071018070474FF6FF52114001807047C2 +:10661000002A02D041F0010101E001F0FE010182F7 +:1066200070470029018803D041F4806101807047E0 +:106630004FF6FF321140018070470029018803D0D6 +:1066400041F40041018070474904490C01807047C2 +:1066500082B00246002003460193009300920A0F85 +:1066600001920902090A019A002A03D0009A143201 +:10667000009203E0090C009A18320092009A126806 +:106680000A4200D0012002B07047000080B52549C1 +:1066900088420BD101214FF48050FFF7E3FD002128 +:1066A0004FF48050BDE80440FFF7DCBD1E4988422E +:1066B0000BD101214FF48040FFF7C9FD00214FF4B9 +:1066C0008040BDE80440FFF7C2BD184988420BD1A5 +:1066D00001214FF40040FFF7BAFD00214FF40040C4 +:1066E000BDE80440FFF7B3BD01BD028802F441528A +:1066F0000B881A434B881A438B881A43CB881A435A +:106700000B891A434B891A438B891A43CB891A4345 +:106710000280828B4FF2FF731A408283098A0182C2 +:10672000704700000030014000380040003C00404D +:106730000029018803D041F04001018070474FF6E5 +:10674000BF72114001807047002A828802D0114335 +:106750008180704722EA0101818070470022008910 +:10676000084200D001221046704700000168490825 +:10677000490001600021016041608160C1600161E8 +:10678000212141616A49884203D16A483D21016063 +:1067900070476949884204D166484FF474610160CA +:1067A00070476649884204D162484FF47411016011 +:1067B00070476349884204D15E484FF074610160BC +:1067C00070476049884203D15A485F494160704729 +:1067D0005E49884203D157485D49416070475D4931 +:1067E000884203D153485C49416070475B49884205 +:1067F00004D150484FF03D5141607047584988429C +:1068000003D158483D21016070475749884204D15F +:1068100054484FF47461016070475449884204D170 +:1068200050484FF47411016070475149884204D1B7 +:106830004C484FF07461016070474E49884203D163 +:1068400048484149416070474B49884203D1454817 +:106850003F49416070474949884203D141483E4918 +:10686000416070474649884203D13E484FF03D5150 +:10687000416070470268434B1A400B681A43CB686B +:106880001A434B691A438B691A43CB691A430B6A43 +:106890001A434B6A1A438B6A1A434B6B1A438B6B2E +:1068A0001A4302604269D208CB6A53EAC2020B6BF8 +:1068B0001A4342610A6942604A6882608968C1601D +:1068C00070470029016803D041F001010160704761 +:1068D0004908490001607047002A01D001617047F2 +:1068E000C1607047006800F00100704700221C4B37 +:1068F000984201D2244800E024488B0001D540682A +:1069000000E0006808402249084200D001221046F9 +:106910007047134A904201D21B4800E01B481C4AB2 +:106920000A40890001D5C26070478260704700004C +:10693000106002400860024028600240406002404F +:1069400058600240706002403D00002088600240B4 +:10695000400F0020A060024000003D20B8600240CF +:10696000106402400864024028640240406402400F +:10697000586402407064024088640240A06402408F +:10698000B86402403F801CF0006002400064024096 +:106990007D0F7D0F0249086070470249086070470B +:1069A00020000E4224000E4270B504460026DFF897 +:1069B0003854CA20E8615320E86100F018F8002834 +:1069C00011D0286820F0400028602868216808431A +:1069D0002860A068A860A868616840EA0140A860D3 +:1069E00000F024F80126FF20E861304670BD81B038 +:1069F00000200090DFF8F4030168490613D44FF03B +:106A0000FF310160016801F04001009A521C0092C0 +:106A1000009AB2F5803F01D00029F3D000688009C8 +:106A200000F0010000E0012001B07047DFF8BC0376 +:106A3000016821F080010160704781B00020009062 +:106A4000DFF8A813CA20886153208861086820F005 +:106A5000A0000860086800F02000009A521C009214 +:106A6000009AB2F5003F01D00028F3D00868400931 +:106A700000F00100FF228A6101B07047F8B50746B7 +:106A80000E460024DFF85C53002FA86804D14006AE +:106A90000AD42046F07007E0400603D5307800F0B5 +:106AA000BEF901E02046F0703078002F09D07178EF +:106AB000090241EA0040B1780843F17840EA014612 +:106AC0000FE000F0A1F90746707800F09DF9000290 +:106AD00040EA0747B07800F097F93843F17840EA88 +:106AE0000146CA20686253206862FFF780FF0028D1 +:106AF0000FD0DFF8FC0230402860FFF797FFA8684E +:106B0000800605D4FFF799FF002802D0012400E099 +:106B10000124FF2068622046F2BD10B50C46DFF864 +:106B2000C4120968DFF8C82211400A0C02F03F03C2 +:106B300023700B0A03F07F03637001F07F01A170E3 +:106B400002F04001E17000280BD1207800F067F9D5 +:106B50002070607800F063F96070A07800F05FF951 +:106B6000A07010BDDFF88C12486A0968704770B5D4 +:106B700006460D460024002E06D16878C10603D5CE +:106B800000F0EF000A306870002E05D0687800F041 +:106B900046F9A87800F043F9E878002E09D0697822 +:106BA000090241EA0040A9780843297840EA4136C1 +:106BB0000FE000F029F90646687800F025F9000298 +:106BC00040EA0646A87800F01FF93043297840EAE9 +:106BD0004136DFF82052CA20286253202862FFF78E +:106BE00006FF00280FD0DFF8100230402860FFF7C2 +:106BF0001DFF6868800605D4FFF71FFF002802D03C +:106C0000012400E00124FF202862204670BD10B559 +:106C10000C46DFF8E0110968DFF8DC2111400A0CAE +:106C2000E2700A0A02F01F02627001F03F02A270D5 +:106C3000490B01F00701217000280BD1E07800F02A +:106C4000EEF8E070607800F0EAF86070A07800F08C +:106C5000E6F8A07010BDDFF89011CA22CA61532275 +:106C6000CA610A68D208D2000A600A681043086044 +:106C7000FF20C8617047DFF88411CA220A615322DD +:106C80000A610860FF200861704781B0002100910F +:106C9000DFF85411CA22CA615322CA610028086869 +:106CA00004D040F480600860012012E020F480608D +:106CB0000860486800F00400009A521C0092009A94 +:106CC000B2F5803F01D00028F3D04868800800F07A +:106CD0000100FF22CA6101B0704781B0002200921A +:106CE000474A0092009A02EB8000009000980160F1 +:106CF00001B0704781B00021009141490091009995 +:106D000001EB800000900098006801B0704738B532 +:106D100000242246344DCA23EB615323EB616B6898 +:106D20001B0701D406E0521C6B681B0702D5B2F5A5 +:106D3000805FF8D16A68120709D42A68D20606D49F +:106D400008436862FFF779FE002800D00124FF2085 +:106D5000E861204632BD244ACA23D3615323D3615C +:106D600000F0040320F004000029116805D0084356 +:106D70001060906B1843906305E021EA00001060FA +:106D8000906B98439063FF20D06170470021174AB1 +:106D900012681C4B1A40024200D00121084670477D +:106DA00010B40021104A936B03F0040314680440EC +:106DB00003EAD0332343526802EA101002D00004E1 +:106DC00000D00121084610BC704708490003000CA0 +:106DD00040F080000A6802F0800262EA0000086069 +:106DE0007047000000280040082800400C280040A0 +:106DF0007F7F7F00042800403FFFFF0014280040F1 +:106E0000502800407F3F0100002101E0491C0A3862 +:106E1000C0B20A28FADA40EA0110C0B2704701098C +:106E200001EB810200F00F0000EB4200C0B270479E +:106E300030B40168CB4321498279002A27D00A4621 +:106E400014682340136053680468A34353600379B4 +:106E5000CC18236805682B43236093680468A34318 +:106E60009360D3680468A343D36043790568102B0B +:106E700007D1916829439160D16800680843D060C8 +:106E80000AE051FA83F420682843206004E0007986 +:106E90000C1820681840206030BC70470021074A59 +:106EA000136803405269024202D0002B00D0012136 +:106EB000084670470249086070470000003C0140E6 +:106EC000143C01401949084319490860704770B4DF +:106ED00003781A460121C478002C1DD0144B1B687E +:106EE00003F4E063C3F5E0631B0A4478C3F10405CF +:106EF000AC4085780F2646FA03F32B4023431B0151 +:106F00000C4C1355007842110B4B00F01F0001FA96 +:106F100000F043F8220006E05011084A03F01F0376 +:106F2000994042F8201070BC704700000000FA053C +:106F30000CED00E000E400E000E100E080E100E0B2 +:106F400030B401F00302920021F00301054BCC584C +:106F50000F259540AC43CC50CC5890402043C850AE +:106F600030BC70470838014080B501214FF4807073 +:106F7000FFF778F900214FF48070BDE80440FFF777 +:106F800071B942684C4B1A400B7942EA03220B68F4 +:106F90001A4342608268494B1A400B691A43CB6816 +:106FA0001A438B681A434B7942EA43028260C26AF1 +:106FB00022F47002097D491EC9B242EA0151C16240 +:106FC000704700210160017141718160C160016100 +:106FD0000121017570473A490A683A4B1A40036823 +:106FE0001A4343681A4383681A43C0681043086011 +:106FF00070470021016041608160C16070470029D5 +:10700000816803D041F0010181607047490849005F +:107010008160704770B407240A290BDBC568A1F1B1 +:107020000A0606EB4606B44025EA0404B3402343AF +:10703000C36008E0056901EB4106B44025EA040499 +:10704000B3402343036113461F24072B09DA436B24 +:10705000521E02EB82029440A343914019434163C4 +:1070600014E00D2B09DA036BD21F02EB820294406D +:10707000A34391401943016308E0C36A0D3A02EB50 +:1070800082029440A34391401943C16270BC70478F +:10709000816841F08041816070470029816803D098 +:1070A00041F480618160704721F4806181607047A4 +:1070B000C06C80B270470000FFFEFFFCFDF7FFC010 +:1070C00004230140E030FCFF00220068084200D0A9 +:1070D00001221046704700000CB41CB5044604A8F9 +:1070E00001900A46009401AB00A907487844183083 +:1070F000F1F7A2FD009900220A7000285CBF0098F9 +:10710000001B16BC5DF80CFB3FC2FEFF01B58B07F0 +:1071100018D1121F21D351F8043BA3F1013C2CEAF2 +:10712000030C1CF0803C04BF40F8043BF1E79CFAE0 +:107130008CFCBCFA8CF1C1F118018B40CB4040F8BB +:10714000043B13E0042A09D311F8013B521E00F856 +:10715000013B5BB18B07F7D1DBE7121D5AB111F888 +:10716000013B521E00F8013B03B1F8D111001CBFD6 +:107170000022ECF7B9F801BD002801D10A48806867 +:1071800090F84C10642901D0002000E0806A70471C +:10719000002801D10448806890F84C10642901D07F +:1071A000002000E0406A7047A48000204C48C1687D +:1071B000002903D54B4901604B49016070474B489A +:1071C000016841F000410160704770B50446002637 +:1071D00000290BD0012902D14FF4807606E0022964 +:1071E00002D14FF4007601E04FF4407600F082F8CF +:1071F00009281ED13D4D286820F440702860286879 +:1072000030432860286820F0F8002860286844F09F +:10721000020108432860286840F48030286000F0AC +:1072200069F8296821F002012960296821F0F80134 +:10723000296070BD70B504460D4600F05BF8092862 +:1072400013D12A4E306820F440703060306840F42A +:1072500000703060306840F001003060256000F060 +:1072600049F8316849084900316070BD70B505467C +:107270000E4600F03FF8092811D11C4C206820F47C +:107280004070206020682060206840F0010020608D +:107290002E7000F02FF8216849084900216070BD68 +:1072A000134908607047092011490A68D20301D5C3 +:1072B000012070470A68D20601D5062070470A6887 +:1072C000D20501D5022070470A6812F0EF0F01D0F5 +:1072D000072070470968890700D50820704700001B +:1072E000043C024023016745AB89EFCD103C0240CE +:1072F0000C3C024080B509208DF80000FFF7D3FF59 +:107300008DF8000003E0FFF7CEFF8DF800009DF838 +:1073100000000128F7D09DF8000002BD2DE9F843D8 +:1073200004460D4616461F46DFF8600DD0F818805B +:10733000D8F80C90169A12B2002148460DF05FFC66 +:107340000D9A12B2022148460DF059FC0E9A12B263 +:10735000042148460DF053FC0F9A12B2062148460C +:107360000DF04DFC109A12B2082148460DF047FC72 +:10737000119A12B20A2148460DF041FC129A12B23B +:107380000C2148460DF03BFC139A12B20E214846E0 +:107390000DF035FC149A12B2102148460DF02FFC66 +:1073A000159A12B2122148460DF029FC224612B25B +:1073B000142148460DF023FC2A4612B216214846F5 +:1073C0000DF01DFC324612B2182148460DF017FC94 +:1073D0003A4612B21A2148460DF011FC089A12B230 +:1073E0001C2148460DF00BFC099A12B21E2148469A +:1073F0000DF005FC0A9A12B2202148460DF0FFFB61 +:107400000B9A12B2222148460DF0F9FB0C9A12B2E7 +:10741000242148460DF0F3FB012088F81D00BDE84B +:10742000F18300B583B00020ADF806008DF80400AC +:107430000120009001AB02229A210620ECF710F9FE +:10744000002829D09DF8040000F00700022801D090 +:1074500000280AD1EFF78CFD90F88E00002804D1A7 +:107460004FF480510020ECF70FFA9DF8040007213B +:10747000084213D102208DF806009DF8040040F068 +:1074800080008DF8070002230DF106029A210620E4 +:10749000ECF78CF8002801D100200EBD01200EBDB4 +:1074A00000B583B00020ADF806008DF8040001207F +:1074B000009001AB02229A210620ECF7D1F80028B7 +:1074C00001D100200EBD9DF8040000F007009DF8DA +:1074D0000410072211422CD0052801D0042814D111 +:1074E00001208DF8060092208DF807000FF2780039 +:1074F000EBF7E6FF02230DF106029A210620ECF7D6 +:1075000055F8002801D100200EBD02208DF806009C +:107510009DF8040000F07F008DF8070002230DF1B4 +:1075200006029A210620ECF741F8002801D100203C +:107530000EBD0120009001AB00229A210620ECF73D +:107540008FF8002801D100200EBD0120009001AB72 +:1075500044229A210620ECF783F8002801D100206C +:107560000EBD01200EBD00003D3E53494E5445392D +:107570003200000030B583B004460020ADF80600AC +:107580008DF804000546002C07D1DFF8EC0C416BA8 +:10759000491C41630121C16306E0012C04D1DFF8DD +:1075A000D80C816B491C81630120009001AB022241 +:1075B0009A210620ECF754F8002862D09DF80400C8 +:1075C00000F0070007285CD8DFE800F00D5B085BDF +:1075D0000A04060C012506E0022504E0042502E069 +:1075E000052500E0062545FA04F0C0074BD46807DE +:1075F00004D5002C10D0012C06D042E0A80705D5F8 +:10760000002C11D0022C3CD1072412E0E80705D54C +:10761000012C0BD0022C34D104240AE0002C03D01E +:10762000022C05D002D32CE0052402E0062400E061 +:10763000022401208DF806000DF106051020687067 +:107640009DF8040000F0DF008DF8040002230DF126 +:1076500006029A210620EBF7A9FF002811D002208C +:107660008DF806009DF8040000F0F80020436870D3 +:1076700002230DF106029A210620EBF797FF00285E +:1076800001D100203EBD01203EBD00007CB5054675 +:107690000020ADF806008DF8040006460446002DD3 +:1076A0000BD1DFF8D40B416B491E416301D5214654 +:1076B0004163406B012880F27980012D0AD1DFF807 +:1076C000B80B816B491E816301D521468163806BB4 +:1076D00001286BDA0120009001AB02229A210620DA +:1076E000EBF7BEFF00285FD09DF8040000F0070014 +:1076F000072859D8DFE800F00D5808580A04060C8E +:10770000012606E0022604E0042602E0052600E049 +:10771000062646FA05F0C00748D570070DD5002D9E +:1077200002D0022D02D03FD2022406E0F00701D59C +:10773000052402E0B00700D506242046052801D024 +:10774000042809D112208DF807009DF8040040F0AC +:1077500020008DF8040008E010208DF807009DF847 +:10776000040000F0DF008DF8040001208DF8060011 +:1077700002230DF106029A210620EBF717FF0028DD +:1077800012D002208DF806009DF8040000F0F800E9 +:1077900020438DF8070002230DF106029A210620EE +:1077A000EBF704FF002801D1002076BD012076BD53 +:1077B0007CB50FF29400EBF783FE0020ADF80600D5 +:1077C0008DF804000646EFF7D3FB0446DFF8A85A0D +:1077D0000120686300E0761C0F2E13DA7019007C1C +:1077E0008DF80600701990F820008DF8070002232C +:1077F0000DF106029A210720EBF7D8FE0028EAD106 +:10780000002076BD0020FFF741FF002801D10020B5 +:1078100076BDFFF706FE002801D1002076BD0120CD +:10782000009001AB00229A210720EBF719FF0028F6 +:1078300001D1002076BD7820A4F88A005020A4F859 +:107840008C00012076BD00003D3E505250000000EB +:1078500010B582B00FF21C10EBF732FE0020ADF82D +:1078600000004FF48051ECF70DF8DFF80C0A816B43 +:10787000012906DB416B491C416301210164084673 +:1078800016BD0020FFF776FE002801D1002016BDAE +:1078900003208DF8000000ACA0206070022300AA35 +:1078A0009A210720EBF782FE002801D1002016BDA7 +:1078B00004208DF800005C206070022300AA9A2149 +:1078C0000720EBF773FE002801D1002016BD6320CE +:1078D0008DF800007F206070022300AA9A21072003 +:1078E000EBF764FE002801D1002016BD64208DF85E +:1078F00000000B206070022300AA9A210720EBF7FA +:1079000055FE002801D1002016BD67208DF800002B +:107910003C206070022300AA9A210720EBF746FE64 +:10792000002801D1002016BD68208DF8000000203D +:107930006070022300AA9A210720EBF737FE002887 +:1079400001D1002016BD69208DF800001420607060 +:10795000022300AA9A210720EBF728FE002801D174 +:10796000002016BDFFF79CFD002801D1002016BDA8 +:10797000012016BD3D3E50524F00000080B50FF66D +:107980009050EBF79DFD0020FFF780FE002801D10D +:10799000002002BDFFF745FD002801D1002002BDF7 +:1079A000012002BD80B50020FFF770FE002801D144 +:1079B000002002BDFFF735FD002801D1002002BDE7 +:1079C000012002BD30B583B004460020ADF80400AC +:1079D000DFF8D85CA86B002839D10120009001ABFA +:1079E00054229A210720EBF73BFE00281DD09DF87A +:1079F0000400C0F30210C01D0221009101AB9DF8EC +:107A00000410C1F30211C91D821000EB5270C010A6 +:107A1000A1EBC000C0B2400000F14402D2B29A21F2 +:107A20000720EBF71DFE002801D100203EBD9DF888 +:107A30000400000200F4E0609DF80510084340F2E5 +:107A4000FF31401A00B2002800D500202886B5F981 +:107A5000300020700012607001203EBDF0B583B090 +:107A600004460F46EFF784FA0646EBF7A8FC0546F6 +:107A700000200190B6F88C20B6F88A100FF69840D6 +:107A8000EBF71EFD3946601CFFF79CFFDFF81C0C6E +:107A9000406C44F62061884202DB00206070A070D8 +:107AA000B6F88A00A178627842EA0121884201DAB8 +:107AB000012000E00020207020782875287D002813 +:107AC000A078617841EA002104D00FF65C40EBF722 +:107AD000F7FC03E00FF65840EBF7F2FC01200090B2 +:107AE00001AB02469A210620EBF7BAFD002819D017 +:107AF0009DF80400000617D50FF63C40EBF7E0FCBC +:107B000001208DF806009DF8040000F07F008DF83C +:107B1000070002230DF106029A210620EBF746FD2D +:107B2000002801D10020FEBD0120FEBD70B582B04D +:107B30000020ADF80000EFF71BFA044604F28A06B5 +:107B4000B4F88A00002802D07088002808D10FF607 +:107B5000F430EBF7B5FC7820A4F88A005020708050 +:107B6000B4F88A0000F2FF35ADB2708800F2FF343D +:107B7000A4B25A208DF8000000AE2846000A7070AA +:107B8000022300AA9A210720EBF710FD002801D15B +:107B9000002076BD5B208DF800007570022300AADE +:107BA0009A210720EBF702FD002801D1002076BDC5 +:107BB0005C208DF800002046000A7070022300AAA5 +:107BC0009A210720EBF7F2FC002801D1002076BDB6 +:107BD0005D208DF800007470022300AA9A2107200E +:107BE000EBF7E4FC002801D1002076BDDFF8BC0AE9 +:107BF000B0F930100FF65430EBF762FC012076BD7F +:107C000080B50FF6C4310720F4F776F80FF6DC31B3 +:107C10000A20BDE80440F4F76FB81CB50020ADF8A9 +:107C200006008DF804000FF63830EBF749FC00240D +:107C300000E0641C0A2C14DADFF86C0A205C8DF872 +:107C40000600DFF8680A205C8DF8070002230DF1BA +:107C500006029A210620EBF7A9FC0028E9D10020B2 +:107C600016BDF2F765F90120FFF710FD002801D1DC +:107C7000002016BDFFF7D5FB002801D1002016BD5E +:107C80000120009001AB00229A210620EBF7E8FCCE +:107C9000002801D1002016BD012016BD38B50020F6 +:107CA000ADF800000FF6C020EBF70AFC4FF480514E +:107CB0000020EBF7E7FD0120FFF75CFC002801D175 +:107CC000002032BD03208DF80000DFF8E04900AD50 +:107CD000A0786870022300AA9A210620EBF766FCC0 +:107CE000002801D1002032BD04208DF800003C2086 +:107CF0006870022300AA9A210620EBF757FC00289F +:107D000001D1002032BD63208DF80000642068702E +:107D1000022300AA9A210620EBF748FC002801D193 +:107D2000002032BD64208DF8000009206870022315 +:107D300000AA9A210620EBF739FC002801D1002087 +:107D400032BD67208DF8000024206870022300AA4D +:107D50009A210620EBF72AFC002801D1002032BD31 +:107D600068208DF8000000206870022300AA9A2184 +:107D70000720EBF71BFC002801D1002032BD692051 +:107D80008DF8000000206870022300AA9A210720C5 +:107D9000EBF70CFC002801D1002032BDFFF780FB7F +:107DA000002801D1002032BD0120A07332BD10B5E2 +:107DB0000FF6BC10EBF784FB0120FFF767FC0028EF +:107DC00003D0FFF72EFB002801D1002010BDDFF803 +:107DD000DC48606B012807DBA06B002804D1FFF7AB +:107DE00037FD606B401E6063012010BD80B501202F +:107DF000FFF74CFC002801D1002002BDFFF711FB6A +:107E0000002801D1002002BD012002BD2DE9F0476C +:107E10008CB000200290EFF7ABF8054601200090EF +:107E200002AB54229A210620EBF71AFC002800F03E +:107E30008F809DF8080000F00F06032E00DB02265D +:107E4000C0F302100830801B9DF80810C1F3021126 +:107E50000831891B821000EB5270C010A1EBC007E3 +:107E6000FFB24FF000080DF1080A0EE09DF808007F +:107E7000000200F4E0609AF801100843A0F2FF301D +:107E800003A941F8280008F10108B04562DA08EBBF +:107E90000704A01004EB5070C010A4EBC0004FEA20 +:107EA00040090220009002AB09F11402D2B29A21DB +:107EB0000620EBF7D5FB00284AD09DF80800000209 +:107EC00000F4E0609AF801100843A0F2FF3009A91D +:107ED00041F828000220009002AB09F12402D2B23E +:107EE0009A210620EBF7BCFB002831D09DF8080052 +:107EF000000200F4E0609AF801100843A0F2FF309D +:107F000007A941F828000220009002AB09F13402D1 +:107F1000D2B29A210620EBF7A3FB002818D09DF8D7 +:107F20000800000200F4E0609AF801100843A0F293 +:107F3000FF3005A941F828000220009002AB09F1AA +:107F40004402D2B29A210620EBF78AFB00288DD199 +:107F5000002056E0002E4FD003A8019005A8009005 +:107F600007AB09AA31460DF10A0000F04DF8C24CEA +:107F7000BDF80A002086606B012826DBE06B012833 +:107F800023D1206C002820D1EBF719FA007D0128BD +:107F90000BD1B4F93000B5F88C10884205DADFF85F +:107FA00010172020FDF782FD0FE0EBF708FA007DA7 +:107FB00000280AD1B5F88A00B4F93010884204DAF2 +:107FC000DFF8EC162020FDF771FD00202064A07B77 +:107FD00000280AD007980090099B059A0399DFF8BA +:107FE000D4060CF09BFF0020A073009607AB09AAF3 +:107FF00005A903A80DF013F824488169487F0022E1 +:108000004A770CB0BDE8F0872DE9F04105460C46F3 +:108010000026DDF8188014E058F8260000EE100A5B +:10802000B8EEC00A10EE100AECF7BEF80022DFF836 +:10803000C836ECF785FFECF729FA1938C019288003 +:10804000761CB5F90070A642E6DB002F01D50020B2 +:108050002880B5F9000090FBF4F028800120BDE8ED +:10806000F08180B5052802D1084600F002F8012011 +:1080700002BD80B50278DFF834168A7001780FF2FD +:10808000F860EBF71DFA012002BD00000840002057 +:108090007CB504460020ADF80400FFF7FFFDEBF7C8 +:1080A0008EF90A21EBF777FB0120009001AB5422F7 +:1080B0009A210620EBF7D4FA002801D1002076BDE2 +:1080C0009DF80400C0F30210C01D9DF80410C1F318 +:1080D0000211C91D821000EB5270C010A1EBC0004C +:1080E000C0B245000220009001AB05F11402D2B2EB +:1080F0009A210620EBF7B4FA002801D1002076BDC2 +:108100009DF80400207001AE70786070022000902D +:1081100001AB05F12402D2B29A210620EBF7A0FAB6 +:10812000002801D1002076BD9DF80400A070707871 +:10813000E0700220009001AB05F13402D2B29A2126 +:108140000620EBF78DFA002801D1002076BD9DF8BE +:1081500004002071707860710220009001AB05F17D +:108160004402D2B29A210620EBF77AFA002801D114 +:10817000002076BD9DF80400A0717078E0710FF2C8 +:108180000860EBF79DF9FFF712FE012076BD0FF2B4 +:1081900080610620F3F7B0BD1CB50020ADF80600E5 +:1081A0008DF804000FF2EC50EBF78AF9002400E0A0 +:1081B000641CDFF84805032C12DA211809798DF8C0 +:1081C00006102018007A8DF8070002230DF1060230 +:1081D0009A210920EBF7EAF90028E9D1002016BD21 +:1081E000012101700220FFF751FA002801D100207F +:1081F00016BDFFF716F9002801D1002016BD012099 +:10820000009001AB00229A210920EBF729FA0028FF +:1082100001D1002016BD012016BD80B50FF27C50A3 +:10822000EBF74EF90220FFF7A5F9002801D1002055 +:1082300002BDFFF735F9002801D1002002BD012061 +:1082400002BD80B50FF26050EBF73AF9DFF85C043D +:10825000406B012801DB012002BD0220FFF716FA66 +:10826000002801D1002002BDFFF7DBF8002801D172 +:10827000002002BD012002BD3C85002080B5022007 +:10828000FFF704FA002801D1002002BDFFF7C9F86A +:10829000002801D1002002BD012002BD2DE9F04FD0 +:1082A0008BB0044606A800210A460B460EC00846BD +:1082B000ADF8100009900A20009006AB08229A2120 +:1082C0000920EBF7CDF9002800F0468106A8C17916 +:1082D000DFF8D853002902D18279002A04D08279AC +:1082E000FF2906D13F2A04D1297BC171697B8171A5 +:1082F00001E029736A73417821709DF8181061704C +:10830000C178A1708178E170417921710179617141 +:10831000C179A1718179E171417A2172007A60722B +:108320000120009006AB05229A210920EBF798F96D +:10833000002800F011819DF8180000F00300A072E1 +:108340000020E0726078000200F47C50217841EA5D +:108350000006E078000200F47C50A17841EA000AAF +:108360006079000200F47C50217941EA0007E0794D +:10837000000200F47C50A1790843ADF81200607A45 +:10838000000200F47C50217A41EA0008E07A000201 +:1083900000F47C50A17A51EA0009D34618D10A2092 +:1083A0009AFBF0F0AAEB000A1FFA8AFABBF1790FE8 +:1083B00065DB05208DF8100061208DF81100022387 +:1083C00004AA9A210620EBF7F1F8002857D1C3E060 +:1083D000B9F1010F3AD143F69A10864203DA834588 +:1083E00001DA87420EDB05208DF8100062208DF83F +:1083F0001100022304AA9A210620EBF7D7F80028DF +:1084000012D1A9E0BBF1140F0EDA05208DF810008F +:1084100060208DF81100022304AA9A210620EBF7B0 +:10842000C5F8002800F09880ABF11400062804D2AB +:108430000AF1020A1FFA8AFA21E0ABF11A000528B4 +:108440001DD20AF1010A1FFA8AFA18E0B9F1020FE7 +:1084500015D140F63330864211DA83450FDA874270 +:108460000DDA05208DF8100061208DF8110002232F +:1084700004AA9A210620EBF799F800286CD0504600 +:10848000000AE07084F802A009A8039005A80290F1 +:10849000CDF80490CDF80080BDF812303A46514630 +:1084A000304600F05BF805986864014644F62060A9 +:1084B00081422BDBEA6B012A28D10FF2F420EAF784 +:1084C000FFFF0020E8630120009006AB02469A21DE +:1084D0000620EBF7C5F800283ED001208DF81000EB +:1084E0009DF8180000F0FD008DF81100022304AA89 +:1084F0009A210620EBF75AF800282DD06C4920204D +:10850000FDF7D4FA01200BB0BDE8F08F8142F9DA13 +:10851000E86B0028F6D10FF2A420EAF7D1FF012082 +:10852000E863A86B0028EDD10120009006AB44223F +:108530009A210620EBF794F800280DD001208DF841 +:10854000100092208DF81100022304AA9A2106201F +:10855000EBF72CF80028D5D10020D4E72DE9F04125 +:108560002DED048B0646884617469FED538BB0EEE3 +:10857000489AF0EE689A00240B9DADB2042D49DABA +:108580009FED4F8B08E053EC182B00204E49ECF781 +:10859000D7FC41EC180B641CAC42F4DB032D08D172 +:1085A00053EC182B00204FF08041ECF7C9FC41EC54 +:1085B000180B3046F3F7DEFD53EC182BECF7C0FC3C +:1085C000424A434BECF7BCFC04460D464046F3F7E9 +:1085D000D1FD53EC182BECF7B3FC3E4A3E4BECF7C5 +:1085E000AFFC22462B46F3F743FF04460D463846C0 +:1085F000F3F7C0FD53EC182BECF7A2FC374A384BCD +:10860000ECF79EFC02460B4620462946FDF7C6FCC9 +:1086100041EC180B18FA86F6002E0FD03846F3F707 +:10862000A9FD04460D463046F3F79AFD02460B4677 +:1086300020462946EBF7E0FD41EC190B53EC192BD2 +:1086400000202849ECF77CFC0022274BF3F710FFB1 +:108650000122264BFDF700FC02D841F6583009E014 +:108660000022234BF4F748FC02D240F6FC0001E064 +:10867000EBF70CFF0D99086051EC180B01221D4B14 +:10868000FDF7EAFB01D81E4808E000221346F4F784 +:1086900033FC01D2104601E0EBF7F8FE0C990860BC +:1086A000BDEC048BBDE8F081148700203C850020E0 +:1086B000589D00201D73010800000000000000000C +:1086C000000000000000F03F000010401361C3D321 +:1086D0002B6589BF5C2041F163CCDD3F24B9FC8769 +:1086E000F4DBA73F8089CC400094A1400058BB40F8 +:1086F00000F8A14065CDCD410000D03F208700208B +:1087000000CA9A3B0FF22C110920F3F7F5BA0000CA +:108710003D3E5052430000003D3E55703D25642CC7 +:108720004C6F3D25640000003D3E50312025640023 +:108730003D3E5032202564003D3E494E5445313285 +:10874000000000003D3E5054483D30003D3E7379EE +:108750006E5F50726F78446174613D256400000063 +:108760003D3E4745500000003D3E47454F0000005C +:108770003D3E4745430000003D3E474520435520D0 +:1087800025782025780000003D3E47452053454C84 +:10879000460000003D3E4C49475000003D3E4C49DC +:1087A000476F70656E0000003D3E4C494743000036 +:1087B0003D3E4C75783E3D25640000003D3E4C75C5 +:1087C000783C3D2564000000B1770108517801082C +:1087D0007D790108A5790108000000005D7A010893 +:1087E0002D7B01080000000000000000B1770108A7 +:1087F000517801087D790108A57901080000000081 +:10880000C57901082D7B0108000000000000000070 +:108810001B7C01089D7C0108AF7D0108ED7D0108EE +:10882000000000000D7E010800000000918001089A +:1088300063800108998101081B82010843820108B5 +:108840007D820108000000009D82010800000000F8 +:1088500000000000000000007CB500242046ADF8B8 +:108860000400EAF7ACFD054620208DF8040001AEB7 +:1088700020467070022301AABA210520EAF796FE6D +:10888000002801D1204676BD01212846EAF783FF62 +:10889000641C0120009001AB2122BA210520EAF7D7 +:1088A000DFFE002801D1002076BDA4B2B4F5FA7F26 +:1088B00005DD0FF21C20EAF703FE002076BD9DF8CF +:1088C00004000006E0D420208DF80400022070701F +:1088D000034601AABA210520EAF768FE002801D163 +:1088E000002076BD012076BD1CB504460020ADF801 +:1088F00004000120009001AB0F22BA210520EAF705 +:10890000AFFE002801D1002016BD9DF80400BD284F +:1089100034D100F035F8002801D1002016BD032025 +:1089200001E0401E40B2002807D40FF2BC1151F8FC +:1089300030108C4201D20028F3D120208DF80400A1 +:1089400001ACA4206070022301AABA210520EAF735 +:108950002DFE002801D1002016BD10208DF8040046 +:108960007F206070022301AABA210520EAF71EFECB +:10897000002801D1002016BD012016BD002016BD23 +:1089800080B50020ADF8000020208DF80000002008 +:108990008DF80100022300AABA210520EAF706FE9D +:1089A000002805D10FF23010EAF78AFD002002BD41 +:1089B000012002BD80B58F20FFF796FF002801D16E +:1089C000002002BD012002BD80B5FFF745FF002851 +:1089D00005D10FF20C10EAF773FD002002BD012053 +:1089E00002BD80B5FFF7E6FF002801D1002002BDDF +:1089F000012002BD80B5FFF7C3FF002801D1002090 +:108A000002BD012002BD01207047012070471FB543 +:108A1000044601A800210A460B460EC00120009022 +:108A200001AB0F22BA210520EAF71AFE002821D057 +:108A30009DF80400BD281DD10520009001ABA8229F +:108A4000BA21EAF70DFE002801D1002013E09DF8BD +:108A50000400207001A8417861708178A170002124 +:108A6000E170C178217100796071E01C00F006F8B6 +:108A7000012000E0002004B010BD00004178007823 +:108A800040EA01204FF4F07190FBF1F000EE100A83 +:108A9000B8EEC00ADFED070A30EE200ABDEEC00ACC +:108AA00010EE100A80B204490870000A48700120D4 +:108AB0007047000000002A42E43C0120012070477A +:108AC000012070470FF240010520F3F715B90000AF +:108AD00042522D524600000042522D4346000000F3 +:108AE00042522D5046000000280000007000000097 +:108AF00050000000600000008F00000050000000E7 +:108B0000E803000010000000C9890108E38901089A +:108B1000F5890108078A01080B8A01080F8A0108F4 +:108B200000000000BD8A0108C18A010800207047CA +:108B300001207047012070470120704738B5044676 +:108B40000D46EAF73CFC0521EAF725FE0020104916 +:108B500004E00A680255521C0A60401CA842F8DB77 +:108B6000012032BD0120704701207047094802688A +:108B70000A704A70511C01600120704706490A685A +:108B800002704270501C0860012070470000000015 +:108B90004C8700206C3C0120703C01200FF240010A +:108BA0000820F3F7A9B80FF25C011620F3F7A4B878 +:108BB00010B50FF22C0421461220F3F79DF8214640 +:108BC0001320F3F799F821461420BDE81040F3F77D +:108BD00093B80FF20C011520F3F78EB800000000D7 +:108BE0002D8B0108358B0108398B0108398B010861 +:108BF000698B01083D8B0108658B01087D8B01089D +:108C00006D8B0108318B0108358B0108398B010808 +:108C1000398B0108698B01083D8B0108658B0108C0 +:108C20007D8B01086D8B010810B50024EAF7C7FBA6 +:108C3000007CC00700D50124204610BD00B589B0D6 +:108C400000A82421E9F700FC0020ADF822000A204A +:108C50008DF8080000208DF809008DF80A008DF8C5 +:108C600000001F20019000A8EDF79EFB012009B035 +:108C700000BD00B589B000A82421E9F7E5FB00207C +:108C8000ADF822000A208DF8080000208DF80900B8 +:108C90008DF80A0001208DF800001F20019000A827 +:108CA000EDF782FB012009B000BD00B589B000A836 +:108CB0002421E9F7C9FB0020ADF822000A208DF835 +:108CC000080000208DF809008DF80A0001208DF8B9 +:108CD00000001F20019000A8EDF766FB012009B0FD +:108CE00000BD0120704710B50024EAF768FB007C46 +:108CF000C00700D50124204610BD00B589B000A8EA +:108D00002421E9F7A1FB0020ADF822000A208DF80C +:108D1000080000208DF809008DF80A008DF8000089 +:108D20002020019000A8EDF73FFB012009B000BD15 +:108D300000B589B000A82421E9F786FB0020ADF832 +:108D400022000A208DF8080000208DF809008DF817 +:108D50000A0001208DF800002020019000A8EDF706 +:108D600023FB012009B000BD00B589B000A8242173 +:108D7000E9F76AFB0020ADF822000A208DF8080010 +:108D800000208DF809008DF80A0001208DF8000000 +:108D90002020019000A8EDF707FB012009B000BDDD +:108DA0000120704710B50024EAF709FB007C80071A +:108DB00000D50124204610BD00B589B000A82421AB +:108DC000E9F742FB0020ADF822000A208DF80800E8 +:108DD00000208DF809008DF80A008DF80000212090 +:108DE000019000A8EDF7E0FA012009B000BD00B540 +:108DF00089B000A82421E9F727FB0020ADF8220064 +:108E00000A208DF8080000208DF809008DF80A006E +:108E100001208DF800002120019000A8EDF7C4FA90 +:108E2000012009B000BD00B589B000A82421E9F7F0 +:108E30000BFB0020ADF822000A208DF8080000206E +:108E40008DF809008DF80A0001208DF8000021201E +:108E5000019000A8EDF7A8FA012009B000BD01209B +:108E6000704710B50024EAF7AAFA007C00F003006E +:108E7000032800D10124204610BD00B589B000A808 +:108E80002421E9F7E1FADFF82C03017841F002012F +:108E900001700020ADF822000A208DF808000120A2 +:108EA0008DF809008DF80A1000208DF800002220AE +:108EB000019000A8EDF778FAEFF736FE012009B02F +:108EC00000BD00B589B000A82421E9F7BDFADFF89C +:108ED000E412087810F0FD00087014D10020ADF8FD +:108EE00022000A208DF8080001208DF809000020DA +:108EF0008DF80A0001208DF800002220019000A8C2 +:108F0000EDF752FA02E040B2EAF758F8EFF759FEEF +:108F1000012009B000BD012070470120704710B545 +:108F20000024EAF74CFA007C00F00700072800D183 +:108F30000124204610BD00B589B000A82421E9F71E +:108F400083FA9C49087840F001000870032805D195 +:108F500040B2EAF733F8EAF75DF812E00021ADF825 +:108F600022100A218DF8081000218DF809108DF8C3 +:108F70000A0008468DF800002220019000A8EDF7B5 +:108F800013FA012009B000BD00B589B000A8242162 +:108F9000E9F75AFA8749087810F0FE00087013D1F3 +:108FA0000020ADF822000A208DF8080000208DF87E +:108FB00009008DF80A0001208DF8000022200190A0 +:108FC00000A8EDF7F1F904E040B2E9F7F7FFEAF79E +:108FD00026F8012009B000BD01207047012070472C +:108FE00010B50024EAF7EBF9007CC00700D5012496 +:108FF000204610BD00B589B000A82421E9F724FA65 +:109000000020ADF822000A208DF8080000208DF81D +:1090100009008DF80A008DF800002320019000A8B7 +:10902000EDF7C2F9012009B000BD00B589B000A874 +:109030002421E9F709FA0020ADF822000A208DF872 +:10904000080000208DF809008DF80A0001208DF835 +:1090500000002320019000A8EDF7A6F9012009B037 +:1090600000BD00B589B000A82421E9F7EDF9002082 +:10907000ADF822000A208DF8080000208DF80900C4 +:109080008DF80A0001208DF800002320019000A82F +:10909000EDF78AF9012009B000BD012070470000FA +:1090A00070B58AB006460D46EDF7A8F804460020D4 +:1090B00000900422314600A8EBF70EFF01A82421FE +:1090C000E9F7C2F9009A29460FF2A410EAF7F8F975 +:1090D00028460C38092840D8DFE800F0050F14199D +:1090E000300B3F3F3F3B1420C4F8DC0401200AB0A2 +:1090F00070BD1420C4F87C05F8E704F2DC4042217E +:109100008162F3E704F2DC4000990165EEE729484B +:109110000078C10712D50021ADF826100A218DF87C +:109120000C1000218DF80D108DF80E0001208DF827 +:1091300004002220029001A8EDF736F90099284694 +:1091400040B200F010F8009004F2DC400099816712 +:10915000CCE71420C4F8BC06C8E70FF22410EAF7E5 +:10916000AFF90020C3E710B4134AD36B126C114C53 +:109170002478002C1AD00F2802D010280BD015E02C +:10918000507A002812D0906B806800280ED4884254 +:109190000DDD08460BE0587A002807D0986B8068F0 +:1091A000002803D4884202DD084600E0084610BCCF +:1091B00070470000E93C01200840002012B589B04A +:1091C00001460C3909292CD8DFE801F0051F2123BD +:1091D000231D2B2B2B291F240020ADF822000190EA +:1091E0000A208DF8080005208DF800000194042263 +:1091F00009A90DF10900EBF76FFE00A8EDF7D4F80F +:1092000001200AB010BD2324E6E72024E4E721244E +:10921000E2E722240999FFF7A6FF0990DCE72B2457 +:10922000DAE70FF26400EAF74BF90020E9E780B5CE +:109230000FF25C010C20F2F75FFD0FF278011120B4 +:10924000F2F75AFD0FF290010D20F2F755FD0FF2E3 +:10925000AC010E20F2F750FD0FF2C4010F20F2F71F +:109260004BFD0FF2E0011020BDE80440F2F744BDD1 +:109270004D52322044523D25642C256400000000EC +:109280004D523220534446004D5232205243460044 +:10929000298C01083D8C0108738C0108AB8C0108F6 +:1092A00000000000E38C0108A1900108000000000C +:1092B00000000000E18F0108F58F01082B900108E4 +:1092C00063900108000000009B900108A190010834 +:1092D0000000000000000000E78C0108FB8C010882 +:1092E000318D0108698D010800000000A18D010881 +:1092F000A19001080000000000000000A58D0108F9 +:10930000B98D0108EF8D0108278E010800000000CB +:109310005F8E0108A190010800000000000000001D +:10932000638E01087B8E0108C38E0108178F010828 +:10933000000000001B8F0108A19001080000000040 +:10934000000000001F8F0108378F0108898F010876 +:10935000D98F010800000000DD8F0108A1900108ED +:10936000000000000000000010B517480078002839 +:1093700002D1A220F1F766FD1448006A401C13498F +:1093800008621249496A401A002802D40F48012194 +:1093900081710E4890F8280000280CD00B4890F8F6 +:1093A0002800401E094981F82800C0B2002802D1D7 +:1093B0000648012101710648046802E060688047A0 +:1093C0002468002CFAD110BD113D0120A48000209A +:1093D000D03C012080B54FF44070FDF773FD334859 +:1093E000016841F4700101603148016841F00101F8 +:1093F00001600021816001682E4A114001602E4900 +:109400004160016821F4802101600021C16000F009 +:109410002DF82A484FF00061016001BD28484168DD +:1094200001F00C01082914D10168026802F03F0222 +:10943000244BB3FBF2F20168C1F388115143026877 +:10944000C2F30142521C5200B1FBF2F11E4A1161FB +:1094500002E01D491B4A0A611B494068C0F3031022 +:10946000405C0A6922FA00F0086170471448C16B39 +:1094700041F08051C1634168416041684160416889 +:1094800041600821016011494FF4C0620A604168DF +:1094900021F4000141600E480E4901600E48016848 +:1094A00021F4404141F480410160704788ED00E0C3 +:1094B00000380240FFFFF6FE1030002408ED00E007 +:1094C000043802400024F400E0860020003C024002 +:1094D00084380240403100400070004000211028D4 +:1094E00006DB103800F1604111F56441097806E0AF +:1094F0000E2801D1042007E00449001F415C8029A7 +:1095000001DA022000E00120704700BF18ED00E002 +:10951000F8B50D46044616461F464FF48871E8F725 +:1095200093FF04F1EC00C4F8EC5046608760F1BD95 +:109530002DE9FE43044604F1EC06D4F8EC8077688C +:10954000B56804F1D8090C22494600A8E9F790FE55 +:109550004FF488712046E8F777FFC4F8EC80776015 +:10956000B5600C2200A94846E9F782FEBDE8F78302 +:1095700000EB8100C0F8D82070472DE9F04F8C46F1 +:1095800093B0064619460CEB06030093104648229A +:1095900093F8E4301CFB0262182414FB03230593A8 +:1095A000002401230293019406EB8C030122D3F8DB +:1095B000D840001B61EBE471D6E93E45002D08BFA1 +:1095C000002C08D1441E61F10005C6E93E4506F1B4 +:1095D000F803C3E90245D6E93E45041BC6E93E014E +:1095E00061EB0505002D0DDA6B0043EAD4736700CB +:1095F000002B08BF002F02D1641C45F10005644216 +:1096000065EB45054FF0000906F1E407D14B4D45E8 +:1096100007DB01DC9C4204D33869010018BF804796 +:1096200059E11C9B059CB3E82041A4E82041059B1F +:10963000C3E904010098009990F8E400401C81F807 +:10964000E400C0B2032822DB009981F8E49002FA1A +:109650000CF3F9781943F97097F90410B9B93A7114 +:10966000F96821B9F87800F0010038710FE0C846B8 +:10967000F97802FA08F3194202D187F8049006E05B +:1096800008F101035FFA83F8B8F1030FF1DBBCF1D5 +:10969000000F06D106F1F80006F1F801007C401C2D +:1096A000087497F90400002856D0BCF1000F06F1A9 +:1096B000F8004BD1007C0228C0F2488196F8E40003 +:1096C000411E4EBF0220401EC0B2182111FB006493 +:1096D000411E4EBF0220401EC0B2182111FB006582 +:1096E000411E4CBF0220401EC0B2182111FB006871 +:1096F000D4E90421D8E90401A2EB000ABAF1807F81 +:1097000004DD3869010018BF8047CA46CDF800A0C3 +:1097100043462A4621460FA8F6F7F6FBBD68280007 +:1097200008D006F1F8000FAA4369D4E90401A8475C +:109730000120019006F1F80106F1F80281F810907D +:10974000D4E90401C2E902010120FCE090F9110012 +:1097500000281CBFF868002800F0F88006F1F80027 +:109760009146D0E9024509EB060090F8E400411E5D +:109770004CBF0223431EDBB2581C0328ACBF4FF082 +:10978000000E5FFA80FE48204FF0000800FB096CD5 +:109790000EF101000328ACBF4FF0000A0EF1010AE0 +:1097A0005FFA8AFA182010FB0ACBDBE90401A94210 +:1097B00004DB01DCA04201D3534607E008F10100BD +:1097C0005FFA80F8D646B8F1020FE1DB03A809F88A +:1097D000003004A809F800E0182010FB0ECEDEE9E6 +:1097E0000401A94204DC01DBA04201D2012000E017 +:1097F00000200240182010FB03C3D3E90401A94252 +:1098000004DB01DCA04201D3012000E0002002992A +:10981000084009F101090290B9F1030FA3DB029896 +:1098200040B2002818BF002A96D096F8E400411EE6 +:109830004CBF0220401EC0B2182111FB00610C2257 +:1098400006A8E9F705FD4FF0010904A8182119F849 +:1098500000E0482010FB096011FB0E0E03A9CDF8B3 +:1098600014E019F80130182111FB03020292DEE91D +:109870000401231AD2E90401A0EB040B1BEB03083B +:1098800004D100F06BF80FF2F80121E018224146F4 +:109890001846E8F7B7FBC0F1807A182241465846CF +:1098A000E8F7B0FBC0F1807B1AF1010FA8BF1BF1F4 +:1098B000010F04DA00F052F80FF24C1108E02648CC +:1098C0008245B8BF834508DB00F048F80FF27411F9 +:1098D0000020E8F7CDFD002039E04FF000080598A2 +:1098E00050F8280018225146E6F75CFC009006A9C3 +:1098F0000C22029812FB09110191182250F828003D +:109900005946E6F74FFC00994118019840F8281095 +:1099100008F10108B8F1030FE1DB09F101005FFA7A +:1099200080F9B9F1030F90DB06F1F8000CAB406948 +:10993000019009AA06A8009029462046FC68A04785 +:1099400002200190002006F1F8014874019813B03C +:10995000BDE8F08F01000001020000010FF20803D2 +:109960000FF2640270470000526B3453796E6368E3 +:10997000726F6E697A65725F5365744461746100D9 +:109980004454206F76657220696E74657276616CDE +:10999000206973207A65726F20205468697320698A +:1099A00073206E6F7420737570706F7365642074AC +:1099B0006F2068617070656E20282573203A3A2008 +:1099C0002573290D0A000000433A5C5F5256455248 +:1099D0004D415F444154415C4749545C73656E732B +:1099E0006F722D6875625C616C67735C7372635C27 +:1099F000636F72655C526B3453796E6368726F6E1D +:109A0000697A65722E630000736F6D65686F7720E9 +:109A1000696E746572706F6C6174696F6E20666FC9 +:109A2000756E642061206E65676174697665207764 +:109A300065696768742120282573203A3A202573C8 +:109A4000290D0A00736F6D65686F7720696E746504 +:109A500072706F6C6174696F6E20666F756E6420D2 +:109A60006120776569676874206F66206D6F726525 +:109A7000207468616E206F6E6520282573203A3A45 +:109A8000202573290D0A000010FB01F000F500608D +:109A90000001001470472DE9FE4F0C4690464042ED +:109AA0001E460FF2E035CB4F0FF278320FF2343909 +:109AB0000FF29431102E0CDB72B60FF2943002903C +:109AC0000191862000F03BF839462846E9F78CFBE7 +:109AD000FEE7012E0CDA72B60FF2B030029001915F +:109AE0008A2000F02CF839462846E9F77DFBFEE78E +:109AF000B9490FF2C03A0FF2E03B5A1E12B251F8C8 +:109B00002210451A002734F9171041B94B465A461E +:109B100051460020E8F7ACFC38F9170003E038F9AB +:109B20001700E6F7C1FF0C220146E6F73BFB7F1C5E +:109B3000A5EB6005B742E6DB2846BDE8FE8F009046 +:109B40004B46C8213846E9F761BBF0B583B01C46E7 +:109B5000BDF924306FF001071646BB4210DBBDF99A +:109B60002020A2F500651A1ABA4204DA032D07DB99 +:109B70004FF480502FE05A1A032A03DB032DF7DB42 +:109B80001F2028E0012914DA72B60FF2D030914C70 +:109B90000FF294330FF2AC320190C821CD20009027 +:109BA0002046E9F733FB21460FF2D820E9F71CFBEA +:109BB000FEE7181A4FF47E6100B2FFF765FF16FB4F +:109BC00000F0001361424CBF20418840032DACBF20 +:109BD000C0F580501F30BDE8FE4000B2E7F714B872 +:109BE0002DE9F24FA6B00021ADF80A100121BDF910 +:109BF000C060019191461D460096334603AA49462E +:109C0000E7F7FEF90024B2460DF1480803AF0AE079 +:109C100037F8140029F8140037F91400E6F7F4FFB8 +:109C200048F82400641C5445F2DB701EADF80000B7 +:109C300000246A4F14E05BF82120694B121A4BF89C +:109C40002120BDF900C053F82C309A184BF8212080 +:109C5000BA42B8BF4BF82170491C5145EBDB641C7C +:109C600024B2AC420ADA269814FB0AF100EB810B0D +:109C7000F1B25846E8F767FA0021EEE700241CAF7E +:109C800019E00090019858F82B1050F82B00081894 +:109C9000E6F7F8FF0099401847F824000BF1010B94 +:109CA00057F82400D345ECDB00B2E6F7ADFF08A976 +:109CB00041F82400641CAC420ADA26980AFB04F13D +:109CC00000EB81000190002047F824008346E7E77D +:109CD000002011E0269A58F820100AFB040352F8DD +:109CE0002320511808AA52F82420891A48F8201075 +:109CF000641CAC42EEDB401C5045B8BF0024F8DBCE +:109D0000751E2DB2F1B212A8E8F71DFA002109E084 +:109D1000334B58F8212053F82530121A9A1848F876 +:109D20002120491C5145F3DB0020ADF80800002537 +:109D30000DE058F82500E6F7A5FF29F8150039F8D9 +:109D40001510BDF808000818ADF808006D1C554541 +:109D5000EFDBBDF90800002803D5410008BF401C17 +:109D6000404203280BDA4FF4805090FBFAF00025B4 +:109D70005545BCBF29F815006D1CF9DB27E0002014 +:109D8000ADF80A000A220DF10A0102A8E7F7DCF893 +:109D9000BDF908104FF48050E6F74DFE0646002549 +:109DA00002E029F815006D1C554510DA39F9150047 +:109DB0003146FFF769FE29F81500BDF90A100029A0 +:109DC00047BF49420841BDF80A108840E9E727B07B +:109DD000BDE8F08FE8200120A83103080080FFFFD4 +:109DE000848500204D756C74697661726174654775 +:109DF0006175737369616E4C6F674C696B656C69F3 +:109E0000686F6F6457697468436F6E7374616E74C2 +:109E1000446961676F6E616C436F76617269616EF0 +:109E2000636500004153534552543A202573282559 +:109E30006429202D205B25735D2C204D53473A2546 +:109E40002E3130307300000028213129000000003D +:109E500077687920646F20796F7520686176652056 +:109E60006120636F76617269616E6365206D6174F4 +:109E7000726978206F7665722073697A6520313651 +:109E80003F3F3F0025730D0A0000000077687920EE +:109E9000646F20796F75206861766520736F6D65DA +:109EA0007468696E67206F66206F72646572203017 +:109EB0003F3F3F00464D5F4D4154485F4552525F22 +:109EC00048414E444C454420282573203A3A2025E9 +:109ED00073290D0A00000000433A5C5F5256455258 +:109EE0004D415F444154415C4749545C73656E7316 +:109EF0006F722D6875625C616C67735C7372635C12 +:109F0000636F6E746578745C636C617373696669A2 +:109F10006572735C48696464656E4D61726B6F76DF +:109F20004D6F64656C2E6300556E69766172696170 +:109F3000746552616D704C696B656C69686F6F64B4 +:109F4000000000004153534552543A202573282500 +:109F50006429202D205B25735D000000616C706812 +:109F600061203E203000000010FB01F0704710FB24 +:109F700001F000F500600001001470472DE9F04F7A +:109F8000054685B091460E2010FB095004900C2028 +:109F900010FB095003900A2010FB0950029005EBBA +:109FA0008900019005EB4900DDF8408000904FF0FA +:109FB000040A98F900004FF0000B10B398F909005B +:109FC00098F9021031B100281CBF98F90800002848 +:109FD0000DD005E0002804BF98F90A00002806D03B +:109FE00000F099F800F0A2F8019800F0A0F80298AB +:109FF000002200F09DF8039800F099F8049800F012 +:10A0000096F8C9EBC90005EB4004062010FB09F0E7 +:10A0100005EB400609EB890005EB400798F90400C1 +:10A0200040B100225146381DE9F75AF900F069F8AD +:10A0300000F062F898F90500C8B100F067F800F088 +:10A040006FF8019800F06DF85A465146381DE9F74F +:10A0500047F900F056F800F04FF805EBC90000F0A2 +:10A0600060F809EB490005EB400000F05AF898F958 +:10A07000070000281CBF98F90100002810D000F04C +:10A080004AF800F053F8019800F051F898F90400EC +:10A0900030B900F03BF800F043F8019800F041F8C7 +:10A0A00098F9030078B100F036F800F03FF8019815 +:10A0B00000F03DF8029800F03AF8039800F037F805 +:10A0C000049800F034F898F9060090B1082402983A +:10A0D00000222146E9F704F903985A462146E9F798 +:10A0E000FFF804985A46214605B0BDE8F04FE9F75D +:10A0F000F7B805B0BDE8F08F5A465146201DE9F784 +:10A10000EFB85A465146301DE9F7EAB800225146E9 +:10A11000281DE9F7E5B8002251462846E9F7E0B8DE +:10A1200000985A465146001DE9F7DAB800985A4699 +:10A130005146E9F7D5B8F8B50446089890F90000FB +:10A140001546A0B106260027002231462046E9F731 +:10A15000C7F83A46314604EB4500E9F7C1F83A46FC +:10A16000314604EB8500BDE8F840E9F7B9B8F1BD28 +:10A1700030B591B0199C04F00105012DACBF01254B +:10A1800000258DF8345004F00805012DACBF0125E1 +:10A1900000258DF8355004F00405012DACBF0125D4 +:10A1A00000258DF83B5004F01005012DACBF0125B2 +:10A1B00000258DF8365004F00205012DACBF0125B5 +:10A1C00000258DF8375004F02005012DACBF012586 +:10A1D00000258DF8385004F04005012DACBF012555 +:10A1E00000258DF8395004F08005012DACBF012504 +:10A1F00000258DF83A5004F48075012DACBF01257F +:10A2000000258DF83D5004F40075012DACBF0125EB +:10A21000002504F480648DF83C50012CACBF01246F +:10A2200000248DF83E4077A400F039F8DFF8F04CB8 +:10A2300009940424089408240794189C0694179CF5 +:10A240000594169C049400240394159C0294002405 +:10A250000194149C00940BF016FA11B030BD10B5A7 +:10A260008EB0149C8DF8344067A400F018F8DFF825 +:10A27000B44C09940324089408240794139C06946E +:10A28000129C0594119C0494002403940294109C45 +:10A290000194002400940BF0F6F90EB010BD0C945C +:10A2A0005AA40B940DAC0A9470472DE9F04704466C +:10A2B0000D46914603F1807788B0182239464FF059 +:10A2C0008070E7F79FFE8046002605EB860A18227D +:10A2D000DAF804003946E5F765FF04A901EB8601C9 +:10A2E000182248604146DAF80400E5F75BFF00A950 +:10A2F00001EB8601761C4860032EE6DB4FF080758B +:10A3000004950095012704A8182250F82710084644 +:10A31000E5F748FF0499081A0490182200A850F89D +:10A3200027000146E5F73EFF0099081A7F1C0090C0 +:10A33000042FE8DB0498E5F78CFF04900098E5F71C +:10A3400088FF009004A92046E6F70BF800A904F165 +:10A350001000E6F706F894F9310050B194F9300096 +:10A3600038B9D4E9080110EB090041EBE971C4E9FF +:10A37000080194F93000002840D094F932000028F8 +:10A380003CD1D4E90801002929DB02DCB0F1807F4F +:10A3900025D32046E6F78AFA214604F11000E5F7B6 +:10A3A000E0FF4FF00009002704EB87001822406906 +:10A3B0000146E5F7F7FE7F1C09EBA009032FF3DB4D +:10A3C000DFF8D00D484442F6FD41884207DB1822F1 +:10A3D0004FF08061E5F7E6FE616B40186063102680 +:10A3E0000027002231462046E8F7B2FF3A463146C0 +:10A3F00004F11000E8F7ACFF2560256108B0BDE866 +:10A40000F08700000000000047797200670000003C +:10A410002DE9F04F87B0044610988846C16800695E +:10A4200000F5006001F50061071393469A460E138C +:10A4300038B2E7F755F8814638B2E6F7A2FF119D2A +:10A44000074659462846E5F7FCFF30B2E7F748F8DB +:10A450004946FFF78CFDADF80C0030B2E6F791FFEE +:10A4600003AE4946FFF783FD7080B78001A8002145 +:10A470004180878003200090ADF80490032322469A +:10A4800003A92846E7F70CFB00F0D4F8424601A9DF +:10A490002846E7F705FB00F0D8F851462846E7F7CD +:10A4A000FFFA002005A904EB400231F81010D1801A +:10A4B000401C0328F6DB07B0BDE8F08F2DE9F84F0C +:10A4C0008EB00446D06800F500600513106900F5F1 +:10A4D000006006130F4628B2E7F702F8ADF8120045 +:10A4E00028B2E6F74EFFADF8100030B2E6F7F8FFFD +:10A4F000054630B2E6F745FF06460822042120460D +:10A50000E5F7AFFEDDF868A0032203215046E5F72A +:10A51000A8FE39465046E5F794FF00F09BF8ADF8E9 +:10A5200030000CAFBDF9100000F096F87880BE80C6 +:10A5300000F08BF80CA900F07AF800200DF1140857 +:10A5400000F06CF8DDF86C9005A94846E5F7B3FE1D +:10A550000320019000900223189807AA4946E7F7C4 +:10A5600064F900F06BF8002200F078F8BDF91000F3 +:10A5700000F072F84042ADF828000AAF00F06AF827 +:10A58000788005AA0020B8800AA900F053F800F0EE +:10A590004EF800F069F8BDF81C00E0800DF11C0BCE +:10A5A0003146BBF80200E082BDF91200FFF7DFFC84 +:10A5B0004042ADF828003146BDF91000FFF7D7FC46 +:10A5C00040427880BD8000F040F80AA900F02FF8E2 +:10A5D00000F04AF8BDF81C00208105AABBF8020073 +:10A5E000208300F027F80E9900F021F8002000F0F9 +:10A5F00015F805A94846E5F75EFE03200190009096 +:10A600000223199807AA4946E7F70FF900F016F850 +:10A61000022200F023F80FB0BDE8F08F38F81010D8 +:10A62000490028F81010401C0328F7DB70475046FB +:10A63000E7F736BA032000900346704703200390E3 +:10A6400002900023022001907047032000900346EF +:10A6500005AA7047BDF91200294688E40820009039 +:10A6600007A92046E7F73FBE032000900223189871 +:10A6700007AA05A9E7F714BA2DE9F04704468AB0FE +:10A680000D4698461046E5F7E4FD8146242100A8D2 +:10A69000E7F7DAFE0026062700A9002007FB061AC6 +:10A6A00004EB061101EB4001B1F85A102AF8101022 +:10A6B000401C0328F4DB55F82600182200F077FA36 +:10A6C00038F91610002946BF49420841884000F574 +:10A6D00000600AEB46010013761C4882032EDBDB88 +:10A6E0000322062100A8E7F76FF90021002000AB44 +:10A6F00007FB013304EB011233F8103002EB400288 +:10A70000401CA2F85A300328F1DB491C0329EDDB79 +:10A710000AB0BDE8F08770B588B004464FF080708D +:10A7200000900D4600A8002141600291C16095F99A +:10A730004000012829DB95F84110081A40B2002892 +:10A7400044BF2978081885F84100002618E095F9DB +:10A7500041000C2110FB0150011D04A8E5F7C3FDC9 +:10A7600004A900A8E5F7FDFD95F8410095F9001052 +:10A77000401C40B28842A8BF002085F84100761CEA +:10A7800095F94010F0B28842E1DB00A92046E5F7D8 +:10A79000D3FD002085F8400085F841003C21281DAC +:10A7A000E7F752FE08B070BD10B504460C2294F9CC +:10A7B000410010FB0240001DE8F74AFD94F84000FC +:10A7C00094F90010401C40B28842A8BF084684F8A3 +:10A7D000400094F84100401C40B28842A8BF0020CD +:10A7E00084F8410010BD2DE9F0418AB080460D4645 +:10A7F000002007A935F91020002A03D5530008BF0F +:10A80000521C5242120141F82020B5F920309A42E0 +:10A81000B4BF0022D21A41F82020401C0328E9DBF3 +:10A820004E688C680C2221463046E5F7BBFC0012CE +:10A83000049004AF07980C222146E5F7B3FC001200 +:10A8400078600C2207983146E5F7ACFC0012B8603E +:10A8500002AA002057F82010B1F5004FA4BF47F618 +:10A86000FF7147F8201057F8201022F81010401CF4 +:10A870000328EFDB012001900323032000904246D0 +:10A8800002A905F10800E7F701F8002058F82010A8 +:10A89000090248F82010EA698A42C8BF0A4648F807 +:10A8A0002020401C0328F1DB03214046E7F74BFC46 +:10A8B000002148F82100491C0329FADBB5F92400DE +:10A8C000B5F906108142B4BF0021091A09B2084641 +:10A8D000FFF74AFBB5F922100C22E5F763FCA96AE1 +:10A8E0008142C8BF0146002058F820208A1848F845 +:10A8F0002020401C0328F7DB0AB0BDE8F0812DE9D9 +:10A90000F34FBBB09246489847101C4604A800215C +:10A91000009700220B460EC04898E5F79AFC814646 +:10A92000202111A8E7F790FD9DF930B1BBF1000F90 +:10A9300014BF4FF400614FF4805118223846E5F7F8 +:10A9400031FC00F58051C0F5805009B200B2E6F745 +:10A9500072F8070048BF002739463846FFF704FB66 +:10A96000C0F18070E5F775FC019004A8499D294667 +:10A97000E5F7E2FC00260AEB860018224169009800 +:10A98000E5F710FC0AA9801041F82600761C032E7A +:10A99000F1DB002004A90AAA51F8201052F8202067 +:10A9A000511804AA42F82010401C0328F2DB9DF93C +:10A9B00050014B9E002804A9304607D0FFF7F4FE53 +:10A9C00004A8002100220B460EC005E0FFF7ECFEB4 +:10A9D000314604A8FFF79FFE04A92846E5F783FC4B +:10A9E000B5E80E100DA8103DA0E80E102846E5F7BA +:10A9F0005DFF294632A8E5F7B3FD242232A921A83C +:10AA0000E8F736FC38032A904FF0807700982B97B0 +:10AA100080102F90309031902C972D972E972021D9 +:10AA200019A8E7F711FD202119A8E7F70DFD00256A +:10AA30000FF6644819AE08EB4500182290F90100A2 +:10AA40005AF8201021A850F82500E5F7ABFB18F9BB +:10AA5000151056F82120801846F821006D1C112D84 +:10AA6000E9DB002004A951F8201046F82010401C12 +:10AA70000328F7DB00205AF8201056F82020511840 +:10AA80004AF82010401C0328F5DBF068CAF80C00D7 +:10AA90000020529D5AF82010002903D54A0008BF13 +:10AAA000491C494255F82020891845F82010401CBF +:10AAB0000328EFDB4A9907A8FFF795FE4FF0000A3D +:10AAC00011AE489954F82A001822E5F76BFB009064 +:10AAD000182207A8494650F82A00E5F763FB0099B9 +:10AAE000401846F82A000AF1010ABAF1030FE8DB20 +:10AAF0009DF93C0110B14FF070500AE0BBF1000F1E +:10AB000018BF4FF0206004D19DF9380118B14FF003 +:10AB10007060F06000E0F760F168DFF8F40A182276 +:10AB2000E5F740FBF060014601981822E5F73AFB93 +:10AB3000F060014618224846E5F734FBF060182221 +:10AB4000206900F034F830611822606900F02FF8B5 +:10AB5000800070611822A06900F029F88000B061BF +:10AB60001822E06900F023F88000F0619DF954019B +:10AB700010B1306940003061569B489A3B980DA94E +:10AB8000FFF793FB00200021024607C50820039031 +:10AB900043464798029021AA4698019011A9112096 +:10ABA00000903C980AF075FF3DB0BDE8F08F494633 +:10ABB000E5F7F8BA10B5002352F8234041F82340D6 +:10ABC0005B1C042BF8DB0021002340F82130491CDA +:10ABD0000329FADB032102EB81035B6840F8213093 +:10ABE000491C0829F7DB10BD2DE9F045B3B0044638 +:10ABF0000D4616460BA80FF644211C22E8F738FB39 +:10AC0000214607A8E5F76FFB07A93046E5F7A9FB42 +:10AC1000002D52D0002000AA54F82010C1F5006188 +:10AC2000091322F81010401C0328F5DB00A902A824 +:10AC3000E5F741FB002002A9062202FB001131F8D2 +:10AC4000102002F5805221F81020401C0328F2DB6E +:10AC5000122202A90BA8E8F70BFB0822082112A870 +:10AC6000E5F7FFFA00260FF6542812A8002700EB9C +:10AC7000061A08EB870105EB0610B1F9021030F94E +:10AC800011100BA830F91700FFF771F938F92710E8 +:10AC90003AF8112080182AF811007F1C0E2FE8D3F3 +:10ACA000761C082EE1DB0822082112A8E6F78CFEAC +:10ACB000802212A92846E8F7CBFA002020606060C5 +:10ACC000A06033B0BDE8F0852DE9F04387B0884639 +:10ACD0009DF93C10DDF838E0044600205FFA81FC65 +:10ACE0000DF10C0905AF0DE047F8205032F91C506A +:10ACF0002E0349F820600CF1010C00AE26F810502C +:10AD0000401CC0B28D1CAC450EDA0CEB8C0533F93F +:10AD100015502D0347F820503EF91C60002E46BF09 +:10AD200076423541B540DFE7002501AE57F82510E2 +:10AD300059F825001822E7F765F946F825006D1C3B +:10AD4000022DF3DB4FF00009002756F827001822E8 +:10AD50000146E5F727FA7F1C8144022FF5DB4846C0 +:10AD6000E5F777FA0013B0F5004FA8BF47F6FF707C +:10AD7000A8F8000024B1022100A8E5F7A4FD208076 +:10AD800007B0BDE8F083F0B585B004469DF9280012 +:10AD90000D4616461F46F0B10021002004EB0112BB +:10ADA000002322F8103081420ED136F910C035F957 +:10ADB0001030BCF1000F46BFCCF1000C43FA0CF38D +:10ADC00003FA0CF322F81030401C0528E8DB491C7C +:10ADD000052916DAE1E7082208212046E5F74CFAB2 +:10ADE000002036F9102035F91010002A46BF5242D3 +:10ADF0001141914004EB001222F81010401C082869 +:10AE0000EFDB00F091F83A460C20009031462046E6 +:10AE10000AF00CFF00280CBF0420012005B0F0BD93 +:10AE20002DE9FA4F87B0DDF854A0DDF858B09DF950 +:10AE30008080149904469146CDF800805B465246C6 +:10AE40004846FFF7A0FF1F981A9D1D9E1E9F049065 +:10AE5000082106910196811DBDF9640003900591BA +:10AE600000953B461C9802905A4651464846F5F7D5 +:10AE700076F948B100F058F85A460C200090514637 +:10AE800048460AF0D3FE08B9002045E01398179908 +:10AE9000189A002351F823C040F823C000EB830E1A +:10AEA00052F823C0CEF814C05B1C032BF2DB002148 +:10AEB000C1600022DFF85C170161B8F1000F14BF18 +:10AEC000182124212046E8F743FA07980022202180 +:10AED000E8F73EFA089804220421E5F7CDF90322A9 +:10AEE00012981146E5F7C8F91B981C9A00902B465A +:10AEF00031463846F4F7D3FE0FCF0FC4B5F904003E +:10AF0000103F103CE6F7F7FA00036061224607980D +:10AF10003946FFF74FFE012009B0BDE8F08F000071 +:10AF20007D9F010837A101080020039002900823AB +:10AF30000120019070472DE9F04104460D46164668 +:10AF4000984692B00027424631462846FFF732FE27 +:10AF50009DF99CC0189819991A9B1C9ABCF1000F76 +:10AF600004D00A331431FFF787FB2EE02B9F109794 +:10AF70009DF9A8700F979DF9A4700E97BDF9A07068 +:10AF80000D97269F0C97259F0B979DF990700A9718 +:10AF90009DF98C7009979DF9887008979DF98470C8 +:10AFA00007979DF9807006971F9F05971E9F04972E +:10AFB0001D9F0397029200930B461B9A0192014634 +:10AFC0002A462046FFF79BFC0746324600212846CA +:10AFD000FFF70AFE002056F8201048F82010401C09 +:10AFE0000428F8DB384612B0BDE8F0812DE9F047BF +:10AFF0008046894692461F4620215046E7F724FAAC +:10B00000BDF928C00899099A002000239E4602E055 +:10B01000E3180EF1010EE6450FDA0CFB00E438F9F7 +:10B02000144039F91E5014FB05F432F91E50002D5E +:10B0300046BF6D422C41AC40EAE731F91050AE46B4 +:10B04000BEF1000F3DD5002F3DD04FF0FF3405F18C +:10B05000200624FA06F61E401E35DC0F06FA05F51A +:10B0600057F8206024B2002C14BF741BAC1947F8A9 +:10B070002040002C05D5650012BF6542651C6D425D +:10B0800000E025466D0014D55AF82050002C07D555 +:10B090006C1E4AF8204057F8204004F1804406E036 +:10B0A0006C1C4AF8204057F82040A4F1804447F82F +:10B0B00020405AF82040CEF1000E43FA0EF31B193F +:10B0C00005E0AB4003E0CEF1000E43FA0EF34AF880 +:10B0D0002030401C082898DBBDE8F0872DE9F041BE +:10B0E00084B00446BDF940000A9E02900D460E98B9 +:10B0F000019019460D980B9B009090460C98324693 +:10B10000FFF774FF0F9F3A4641463046FFF76CFD4C +:10B1100004213846E5F775FB032055F8201056F852 +:10B120002020511845F82010401C0828F5DB00208D +:10B1300057F8201044F82010401C0428F8DB0320A6 +:10B1400055F8201004EB8002401C51600828F7DB02 +:10B150002069DFF8C4148842B8BFDFF8C01405DBEB +:10B16000DFF8BC14884203DBDFF8B814081820614C +:10B170006069DFF8B414884203DBDFF8B004606173 +:10B1800004E0DFF8AC148842B8BF6161BDE8FF811C +:10B190000000000004D3FFFF2DE9FB4FACB01446C4 +:10B1A000399E4FF00609062231460BA8E8F750F801 +:10B1B0003A9D4A4629460DF13200E8F749F83146F2 +:10B1C0001AA8F4F709FF294615A8F4F705FF499FC7 +:10B1D000DDF820812D9A27A803903B4622A80290F3 +:10B1E000414615A801901AA800904198FFF766F90A +:10B1F000012204212046E5F734F822A801903B46BD +:10B200002D980090424610A90BA8FFF701F930884D +:10B21000BDF82C10401AADF824000BAF7088798867 +:10B220000DF1240A401AAAF8020007AAB088B988CA +:10B23000401A00F013F9BDF81C0020800DF11C0B22 +:10B2400007AABBF802006080F9882888401AADF888 +:10B25000240039896888401AAAF80200BDF836101F +:10B26000A888401AAAF8040009A9FFF7E3F915A86D +:10B27000E6F716FCBDF81C00A080BBF80200E080D9 +:10B28000BDF840103088401AADF8240010A871882D +:10B2900042888088891AAAF8021007AAB188081A79 +:10B2A00000F0DCF8BDF81C00ADF838000322BBF854 +:10B2B0000200ADF83A000BA93046E5F71CFB002868 +:10B2C00007D5B4F9000040422080B4F902004042A2 +:10B2D000608003220DF132012846E5F70CFB0028BF +:10B2E00007D5B4F904004042A08034F90900404277 +:10B2F000E0800C2243991FA8E7F7AAFF002600254B +:10B3000012A800EB86071AA800EB460000F09BF895 +:10B3100030F91600FEF72BFE27F815006D1C022DE4 +:10B32000EEDB761C032EEADB00F093F8022003909C +:10B33000029001900420449E00900023002212A954 +:10B340003046E6F7D0FF0027002512A800EB870A59 +:10B3500015A800EB470000F076F800EB470030F945 +:10B360000900FEF704FE2AF815006D1C022DECDB27 +:10B370007F1C032FE8DB00F06CF8022003900290A2 +:10B380000190022304200090022212A93046E6F721 +:10B39000AAFFDDF8149104231A4649463046E6F721 +:10B3A000C0FD429D469F0020019000974B994F9809 +:10B3B0002B460EAAFFF788FC0020019000972B4631 +:10B3C0004C992246FFF780FC0220019000974D998E +:10B3D0004E982B462246FFF777FC5198DDF800A1E6 +:10B3E000DDF81CB1059004973F9B419ACDF80C9075 +:10B3F000CDF808B00194009629465046FEF7B8FEF5 +:10B400000646F0071BD504200690CDF81480CDF831 +:10B410001090CDF80CB0CDF808A0234638983F9A8C +:10B420002D9901902E9800902C98FFF757FE04203C +:10B43000009008234A4659465046E6F735FD304607 +:10B440002FB0BDE8F08F09FB0500B0F900101FA870 +:10B4500070470222032112A8E6F7B6BAAAF8040040 +:10B4600009A90320009003461AA8E6F719BB2DE9A5 +:10B47000FC47044608469046002604F1F00723B135 +:10B48000002084F8F00078704CE00C2597F901E07A +:10B4900094F8F0C00FF2F819DFF898A10FF2C81273 +:10B4A0000FF2B4130FF2D811BEF1000F1BD0BCF194 +:10B4B000140F09DB72B640F2947000F035F8514673 +:10B4C0004846E7F791FEFEE70C2215FB0C41E7F733 +:10B4D000BFFE94F8F0002A46414615FB0040E7F70E +:10B4E000B7FE012612E0BCF1140F09DB72B640F280 +:10B4F0009F7000F019F851464846E7F775FEFEE7E1 +:10B500000C22414615FB0C40E7F7A2FE94F8F00030 +:10B51000401CC0B2142802DB01210020797084F89D +:10B52000F0003046BDE8F68701910090C8215046F2 +:10B53000E7F76CBE2DE9F04F8DB089469DF98C1070 +:10B540009B464B1E92469B41DB0F179A5BB207A9A5 +:10B55000FFF78DFF002858D000200AEB800107AAD2 +:10B56000496952F8202002EBA10101F5006109139D +:10B570002BF81010401C0328EFDB1B9F082203212F +:10B580003846E4F76EFE00202B4A07EB001101EB72 +:10B590004001401C4A810328F7DB1D9800210AABBB +:10B5A00030F91120120343F82120491C0329F7DB4D +:10B5B0001A9C1E9D209E9DF98800DDF864800490F1 +:10B5C00043461F980390029501960AA800903A46B8 +:10B5D0001C992046FEF743FE032006905B46219807 +:10B5E0000590049503960294002001904246169817 +:10B5F000009051464846FFF771FD03200090082354 +:10B600002A4631462046E6F74FFC0DB0BDE8F08FE4 +:10B61000D1770400AE47010095C0DBFCD57E48061B +:10B620006C3F24032B81B7F96BC67B016AC67B0193 +:10B63000963984FEE820012000F0FFFF00000000A2 +:10B6400000000000000000000000000000000010EA +:10B650000010001000100010427566666572477990 +:10B66000726F4D65617300004153534552543A2047 +:10B67000257328256429202D205B25735D0000009B +:10B6800070446174612D3E696478203C2032300042 +:10B6900025730D0A000000000000000100020100F7 +:10B6A0000101010202000201020203030404050574 +:10B6B000060607070005010602070000000000005B +:10B6C0000000010000000200010000000100010074 +:10B6D000010002000200000002000100020002005E +:10B6E0000300030004000400050005000600060036 +:10B6F0000700070000F5E07359609A60CC21C18310 +:10B700004FF0C071C1603221A0F8C011598070B5EE +:10B710000446002084F83400002104F134000025A0 +:10B720004170012181700020C4E90E00C4E91000BD +:10B73000208202460C212046E7F70AFE04F5E07657 +:10B74000B4F9C011B6F9022004F582700AF010FCB9 +:10B75000B6F90220B4F9C01104F148000AF0FBFB6D +:10B760000A262A46314604F12A00E7F7B9FD2A469F +:10B77000314604F12000BDE87040E7F7E9BD38B577 +:10B78000012180F8341004990C88448200F21204DC +:10B790004D8865808988A180C0E90E230DE038B509 +:10B7A00000F118040121617704990D8805834D8803 +:10B7B00065808988A180C4E90823BDE83240C2E0E1 +:10B7C00010B504461822E1604FF4C021E068E4F7A8 +:10B7D000E9FC00F500600013E08310BD2DE9FF4196 +:10B7E0000A9F804614461D46A7B972B60FF24C2038 +:10B7F000154C0FF204230FF22C220190C821932044 +:10B8000000902046E7F702FD21460FF23C20E7F7C3 +:10B81000EBFCFEE7002657F826100C481822E4F748 +:10B82000C1FC00F5006002A9001321F81600761C87 +:10B83000032EF0DB02A8009022462B464046FFF77D +:10B840009EFFBDE8FF810000E8200120EF1B1A00E9 +:10B850002DE9F047064686B0B6F910000E9C002789 +:10B8600090469A460A280EDA401C3082002056F88C +:10B87000201054F8202001EBA22146F82010401C93 +:10B880000328F4DB4CE00ED100200A2256F82010E9 +:10B8900091FBF2F1890246F82010401C0328F5DBE9 +:10B8A000308A401C308200250DF10C0954F8250027 +:10B8B00056F825300C226021C01AE4F773FC49F8D1 +:10B8C00025006D1C032DF1DB002059F82010002904 +:10B8D00003D54A0008BF491C4942B1F5004FA8BF33 +:10B8E0000127401C0328F0DB57B1002059F8201035 +:10B8F00046F82010002149F82010401C0328F5DBF1 +:10B90000002001AA59F8201022F81010401C03282A +:10B91000F8DB01A80090424653463046FFF73FFF50 +:10B9200006B0BDE8F087D0E91023C1E900237047D5 +:10B930000B4600F12A0102E00B4600F120010A2229 +:10B940001846E7F785BC30B5044604F21E0587B0FB +:10B9500095F9160000281CBF95F91700002848D05B +:10B9600095F91800059004F1300304F112000490D9 +:10B9700004F12E02B4F91E00039004F12C0104F12D +:10B980001800029004F58270019004F132000090DA +:10B9900004F12A000AF01EFB95F91800059004F145 +:10B9A000260304F11200049004F12402B4F91E00ED +:10B9B000039004F1220104F11800029004F1480000 +:10B9C000019004F12800009004F120000AF002FB2D +:10B9D0000020A8752876D4E90E01C4E91001D4F836 +:10B9E000C411080005D0D4F8C80107B0BDE8304044 +:10B9F000084707B030BD0000416363656C4D616767 +:10BA00004D6F74696F6E436F6E746578745F5365C4 +:10BA100074416363656C65726F6D657465724461D2 +:10BA2000746146004153534552543A2025732825EA +:10BA30006429202D205B25735D0000006461746122 +:10BA400020213D203000000025730D0A0000000079 +:10BA500010B5020008BF0FF24D00834A834C1063FB +:10BA6000516320460AF0C9FB00F009F80420A4F84D +:10BA70009800042104F198004180818010BD80B5B8 +:10BA8000794800220121C0E90A22017042708270C7 +:10BA9000C2700A21001DE6F7D7FCBDE802407348DA +:10BAA0000AF0B8BB704710B56F4B14881C825488DD +:10BAB0005C8292889A8201225A70BDE8104081E02F +:10BAC000002150F82130694A02EB410203F58063FE +:10BAD000DB12A2F89830B2F99830042BB8BF0423D7 +:10BAE00004DBB3F54D7F03DB40F23333A2F898302B +:10BAF000491C0329E5DB7047F0B585B004460D46C7 +:10BB0000A2B972B60FF2CC10594C0FF278130FF2A3 +:10BB1000AC120190C821852000902046E7F776FB03 +:10BB200021460FF2BC10E7F75FFBFEE74E4EDFF851 +:10BB300044C10020F07002A952F8207096F9033039 +:10BB40006745A8BF43F6FF7303DA17F1806F04DA85 +:10BB5000494B21F81030012304E007F500673F133B +:10BB600021F81070401CF3700328E5DB032102A8C4 +:10BB7000E4F7A9FE40F229418842A4BF0120F070F9 +:10BB800002AA20462946FFF78EFF05B0F0BD70B52A +:10BB90000023354C32F8135004EB43065B1C35830D +:10BBA000052BF7DB0122A270BDE870400AE066E7D2 +:10BBB0002D49D1E90A23C0E9002370470A222F4901 +:10BBC000E7F746BB7FB5284E044696F901000D46BF +:10BBD00000281CBF96F90200002844D0D6E90A01CB +:10BBE000002904BF0028C6E90A45D6E90A01201A3F +:10BBF00065EB01010023224A994206DB01DC9042F9 +:10BC000003D301224FF08070327001904FF48560B1 +:10BC1000F2560392009006F1100396F90320029267 +:10BC200006F10801114A301D0AF010FBB6F90400B4 +:10BC3000B6F9181010FB01F000F500600013B08099 +:10BC4000C6E90A45708B316BF080F08B7081308CC7 +:10BC5000B081002070703070080004D0706B04B0A8 +:10BC6000BDE8704008477FBD2086002048200120A5 +:10BC7000E820012001F0FF0300C0FFFF2486002020 +:10BC800001000001416363656C4D61674779726F24 +:10BC90004D6F74696F6E436F6E746578745F536532 +:10BCA0007443616C696272617465644779726F7321 +:10BCB000636F7065446174614600000041535345F1 +:10BCC00052543A20257328256429202D205B2573A2 +:10BCD0005D0000006461746120213D20300000009F +:10BCE00025730D0A000000000B4600F13A01062200 +:10BCF0001846E7F7ADBA70B504460D4616466421FE +:10BD00003046E6F7A1FB04F1300006F11801B0F966 +:10BD1000082012038A61B0F90A201203B261B0F957 +:10BD20000C2012034A60B0F90E2012038A6006F15B +:10BD3000600190F9112012B10220487002E0012246 +:10BD40004A704274032086F86000D4E90C01C5E90A +:10BD5000000170BD0021017000220B46C0E90223E2 +:10BD600001214170114601618170C0E90C2380F806 +:10BD7000411080F8401000EB810300225A6100233B +:10BD800000EB4102491C1384D38453870329F2DB5F +:10BD900070474164DEE72DE9F04F064695B000207C +:10BDA00086F840009046BDF97810305640F6AF72E4 +:10BDB0009946914205DB012738B9C6E902897770B7 +:10BDC00003E0002708B10120707096F902000028F6 +:10BDD0007CD030691F2873DB02A831464822E7F780 +:10BDE00047FA00A93046FFF77FFF0020ADF840007A +:10BDF00002A901EB8001069A496991FBF2F102AABE +:10BE000002EB40024942518702AA02EB4002BDF810 +:10BE10004010D28C511802AA02EB4002401C128C36 +:10BE2000891AADF840100328E2DBCDE90E89DDE97F +:10BE30000EAB002402A800EB440000A9408F31F8AB +:10BE40001410401A05B2D6E90C01AAEB0001182221 +:10BE50002803E6F7D7F896F94110C1B1002D04D5B3 +:10BE6000690006BF691C4D426D424249096801F5EF +:10BE7000006109010914A9421EDA002803D5410016 +:10BE800008BF401C40423C490968884214DAC6E9B0 +:10BE90000CAB06220DF1420106F13A00E7F7D8F9A2 +:10BEA000BDF840003087012086F84000716C080022 +:10BEB00006D00020884703E0601C04B2032CB9DBE5 +:10BEC0000020B07001207070C6E90289377096F9C1 +:10BED000400015B0BDE8F08F90F9001001B970472F +:10BEE000F0B590F90210002942D1059990F901406E +:10BEF00094B10024046100EB84060025756100EB19 +:10BF0000440531F81460EE8431F814602E84641C0A +:10BF1000032CF0DB00244470002400EB840631F98C +:10BF20001450776907FA85F7776100EB4406B6F994 +:10BF30002670AF42B8BFF58431F91450B6F92070BD +:10BF4000BD42B8BF3584641C032CE6DB0169491C83 +:10BF50000161C8290AD0D0E90245121BAB41002576 +:10BF6000064CAB4204DB01DCA24201D3012181700B +:10BF7000F0BD00004C330308483303080100000102 +:10BF800010B584B006990C6804F500642413ADF86C +:10BF900004404C6804F500642413ADF80640896839 +:10BFA00001F500610913ADF8081001A90091FFF730 +:10BFB00093FF1FBD9AB98A6902F500621213428786 +:10BFC000CA6902F50062121382870A6A02F50062EA +:10BFD0001213C287096B01F50061091301877047CD +:10BFE00030B50D4699B00446286800F1807006907F +:10BFF00006A8696801F180710161A96801F1807189 +:10C000000E91E96841602969416169698160E96867 +:10C01000C16029690D916969816102A805F1240156 +:10C02000E4F761F902A90FA8E4F79AFA0320019056 +:10C0300000900323224606A90FA8E5F791FC0C22E5 +:10C0400005F1180104F13000E7F712F995F86100E5 +:10C0500084F83C000C2205F1300104F12400E7F7DC +:10C0600007F919B030BD00000AF0D6B980B5EAF77B +:10C070007FFFD0F88000F4F7C8FD0348007802BDC8 +:10C0800001490870704700000C3D012000BF10B44A +:10C090004148002101800846404C0DE001EB810140 +:10C0A00000EB80031B19C91800230B71521C52B2FC +:10C0B00011460129F2DB401C142801DA0022F6E7C0 +:10C0C00010BC704700EB80003449405E704700EBC5 +:10C0D000800032494018B0F90200704710B54FF0A7 +:10C0E000FF3401460C2903D01C2903D1002405E0AC +:10C0F000012403E00FF2AC00E7F7E2F9204610BD9F +:10C1000038B504460125FFF7E9FF20460C2804D086 +:10C110001C2805D100F038F808E0FFF7B8FF05E06B +:10C1200021460FF29000E7F7CBF90025284632BDF3 +:10C1300080B501460FF28C00E7F7C2F94FF0FF30EF +:10C1400002BDF3B581B0144C25882E46701C15280D +:10C1500001DB0020FEBD00270DE007EB870106EBA9 +:10C1600086000E4A8018081801AA89180522E7F7E8 +:10C170006FF87F1C7FB2012FEFDB681C208001204D +:10C18000FEBD054800887047054800214180012117 +:10C190000170084670470000E63C0120742A012027 +:10C1A000B47800204558205044524D4D2043312052 +:10C1B000256400004558205044524D4D2043332003 +:10C1C000256400004558205044524D4D20433220F4 +:10C1D00025640000D2B2203A22BF00FA02F100200A +:10C1E00070475242D041D2F1200291404140D040AC +:10C1F00090404140704700000FB480B50AF016F936 +:10C20000D2480521417600210176818302A91822B6 +:10C21000E7F72EF8092200210846E9F7F1FF022886 +:10C2200001D1022000E0012002BC5DF814FB48E1CE +:10C2300010B5C64C94F9190005280AD100F0E3F8AE +:10C24000002822D0042060760AF0F0F8BDE8104003 +:10C25000F8E0042819D100F0B7F8002808D003202E +:10C260002076052060760AF0E1F8BDE8104028E16C +:10C2700000F051F9002808D00220207605206076D1 +:10C280000AF0D4F8BDE810401BE1012010BD80B5D4 +:10C29000E9F7B4FFAD490862AD49C0F8781100F57F +:10C2A000BC70AC494160AC4981600FF21101C160C2 +:10C2B0000FF295010161012002BD00000020A34999 +:10C2C0000246CA760A6A92F86921002A0FD091F9CB +:10C2D0001820002A02D00220C876012091F91C20E3 +:10C2E000012A04D1C87E40F00400C87601207047BE +:10C2F000964800210176C17601770120704710B57C +:10C300008CB0044600A80BF079FF0198A04204D33A +:10C31000001BC0B200EE100A04E08038001BC0B25F +:10C3200000EE100AB8EE400ADDED070A20EE200A02 +:10C3300010EE100AE7F738FF41EC100B0CB010BDFF +:10C34000824801210177704778B4804A92F91B3006 +:10C350009C0717D540F221140D7814FB0505012622 +:10C360002E700D7814FB05056E700D7814FB050515 +:10C370000926AE700D7814FB0504157EE5700C7867 +:10C38000641C0C705B071DD540F221140B7814FB64 +:10C39000030301251D700B7814FB030303255D7057 +:10C3A0000B7814FB030309259D700B7814FB030322 +:10C3B0000125DD700B7814FB0300527E02710878B2 +:10C3C000401C087071BC93E730B58DB00024204646 +:10C3D0008DF8000001A8E9F772FF4FF47A705B4D09 +:10C3E00000ABE98800FB01F2A98841436D886843EE +:10C3F00001AD95EC030A0AF05BF8022800D1012494 +:10C4000020460DB030BD30B58DB0002420468DF8EB +:10C41000000001A8E9F753FF4FF47A704B4D00ABD1 +:10C42000E98800FB01F2A98841436D88684301ADAA +:10C4300095EC030A0AF03CF8012800D101242046BB +:10C440000DB030BD30B59BB001240020ADF8220006 +:10C4500001900A208DF8080000208DF809008DF861 +:10C460000A003A4D95F91D00002827D1AA208DF821 +:10C4700026003C208DF8270020468DF8280000205B +:10C480008DF80000032001900DF1090009A9182280 +:10C49000E6F7DEFE0A208DF808000020ADF8220045 +:10C4A00000A8E9F781FF002801D1022406E00FA8C7 +:10C4B0000BF0A4FE1098A8762046687720461BB0A3 +:10C4C00030BD30B589B00124204D95F91D000128FB +:10C4D0001ED10020ADF8220001900A208DF808003E +:10C4E00000208DF809008DF80A0020468DF8000024 +:10C4F000032001900A208DF808000020ADF82200EA +:10C5000000A8E9F751FF002800D103240020687734 +:10C51000204609B030BD38B52DED028B00240B4DFF +:10C52000A87EFFF7ECFEB0EE408AF0EE608A287A33 +:10C53000EFF720FE02460B4651EC180BF9F78CFC86 +:10C5400000D801242046BDEC028B32BD448300207C +:10C55000F9C101082FC2010831C2010870B5F8F70E +:10C56000EBF80446F7F7A5F90546D74EF8F7C4F8F7 +:10C57000002801D0012018E096F90000A04205D261 +:10C580000FF2C430E6F79CFF01200EE0EDB2002D63 +:10C590000AD0F8F7DCF8F8F7CFF804460FF2B43019 +:10C5A000E6F78EFF012000E00020716891F8891401 +:10C5B000002900D10020347070BD0FB410B58AB0CE +:10C5C000C14C002020700FF29830E6F779FF6068C8 +:10C5D00090F88814002944D190F88904002840D1AB +:10C5E00000208DF800001B2001900DF109000CA91E +:10C5F0001822E6F72DFE0A208DF8080000A8E9F7BA +:10C60000D3FE002805D10FF26430E6F759FF02206F +:10C6100028E002208DF832004FF49660ADF8350026 +:10C6200000208DF833008DF834008DF800001A20BA +:10C6300001900DF109000CA91822E6F709FE0A2065 +:10C640008DF8080000A8E9F7AFFE002805D10FF229 +:10C650002C30E6F735FF022004E04FF49660F8F73F +:10C6600074F801200AB010BC5DF814FB00B589B065 +:10C670000FF21830E6F724FF01208DF800001B2090 +:10C6800001900A208DF8080000A8E9F78DFE002827 +:10C6900001D1032014E001208DF800001A20019040 +:10C6A0000A208DF8080002208DF80B00002003906E +:10C6B00000A8E9F779FE002801D1032000E001205D +:10C6C00009B000BD2DE9F0472DED028B92B0044674 +:10C6D0000D46F8F711F840F22116297816FB0141B2 +:10C6E00001220A70297816FB0141002840F09E8043 +:10C6F00010464870287816FB00401D21817028786C +:10C7000016FB004000214171F8F723F8002805D0FE +:10C71000F8F712F881465FFA89F901E04FF0000955 +:10C72000287816FB004080F807904FF0000868E07A +:10C73000414600A8F8F704F81B2010FB08F72878FA +:10C7400016FB004038189DF829104FF461620DF176 +:10C7500029035B78C3EB031C4FEA8C0312FB013106 +:10C760000DF12902927851FA82F14FF47A72BDF9F3 +:10C770002C3002FB0131C0F81B109FED518B287843 +:10C7800016FB004007EB000ADDE9002351EC180B13 +:10C79000E8F7D6FBE7F790FECAF80B00287816FBFF +:10C7A000004007EB000ADDE9022351EC180BE8F723 +:10C7B000C7FBE7F781FECAF80F00287816FB004098 +:10C7C00007EB000A02A8D0E9022300204349E8F75A +:10C7D000B7FBE7F771FECAF81300287816FB004094 +:10C7E00038180BA94969C0F81F10287816FB0040BB +:10C7F00038180BA9498BA0F8191008F101085FFA45 +:10C8000088F8C84594DBF7F799FF287816FB0047AE +:10C81000F7F770F8A7F81B01287816FB0044F7F724 +:10C820005BF8C4F81D01F7F751F812E005204870D5 +:10C83000287816FB00401D218170287816FB0040E7 +:10C8400011464171287816FB00400F218171F7F7DE +:10C850007AFF2878401C287012B0BDEC028BBDE82E +:10C86000F08710B584B000A8F7F7A7F91C4C204654 +:10C8700000A90B22E6F7ECFC61782078F7F76EFF51 +:10C88000012004B010BD80B50FF20810E6F718FEC5 +:10C890000FF20C10E6F714FEE9F7B0FC0A49486005 +:10C8A0000A49C0F8981400F29840094941600949C2 +:10C8B00081600949C1600B490161012002BD00008E +:10C8C0000000000080842E41183C0120BBC50108F7 +:10C8D0006DC6010863C801085DC5010800408F40AE +:10C8E000403B0120C5C6010810B5044621460FF2A1 +:10C8F000BC00E6F7E5FD2046BDE81040F7F7F4BEC2 +:10C9000010B5044621460FF2B000E6F7D9FD2046E7 +:10C91000BDE81040F7F7EABE10B5044621460FF215 +:10C92000A400E6F7CDFD2046BDE81040F7F7E2BED3 +:10C9300010B5044621460FF29C00E6F7C1FD2046E3 +:10C94000BDE81040F7F7D4BE4C5420436D644C54FE +:10C95000530000004C5420436D64415444000000D7 +:10C960004C542D5331343031313600004C54204F6B +:10C9700070656E206661696C000000004C542041B7 +:10C9800054204F70656E206661696C004C542053D2 +:10C99000544F50004C5420496E694C5453000000D1 +:10C9A0004C54204931343031313600004C5420533E +:10C9B00065745754202564004C54205365745354B7 +:10C9C000202564004C542053657453415220256443 +:10C9D000000000004C54205365745352202564001D +:10C9E00080B50FF2E810E6F76BFD73480021418037 +:10C9F00001BD0FB470B5704C002020709DF812502E +:10CA0000BDF81360324629460FF2CC10E6F758FD08 +:10CA1000262200210846E9F7F3FB022805D10FF290 +:10CA2000D410E6F74DFD02200FE0606890F8F01595 +:10CA3000002909D190F8F105002805D1FFF7D0FFB2 +:10CA4000314628460BF0AAFC012070BC5DF814FBAF +:10CA500080B50FF2B010E6F733FD574800210170A2 +:10CA60000BF0D2FC012002BD10B58EB000A8002151 +:10CA70000A460B460EC0E9F722FC0398009000A876 +:10CA800004994160059981604B4C94F9001089B27A +:10CA90000BF096FC00212170042804D006280CD04D +:10CAA000072814D01CE00FF26810E6F709FD0420F7 +:10CAB0006080012000F044F812E00FF25C10E6F70D +:10CAC000FFFC06206080012000F03AF808E00FF239 +:10CAD0005410E6F7F5FC07206080012000F030F8E4 +:10CAE00001200EB010BD80B50FF24810E6F7E8FC4B +:10CAF000E9F784FB3049486000224A802F49C0F89A +:10CB0000001600F200602E4941602E4981600FF24C +:10CB10001101C1600FF241010161012002BD00005D +:10CB20002548406890F8F015002905D190F8F105E6 +:10CB3000002801D100207047234890F90000704779 +:10CB400021490870704780B51B4800214180084684 +:10CB5000FFF7F6FF012002BD70B504460D46164EE4 +:10CB600071880FF2D800E6F7ABFC40F2211029786B +:10CB700010FB014101220A70297810FB01414A7023 +:10CB8000297810FB014126228A70297810FB014088 +:10CB90007188A0F803102878401C2870BDE8704008 +:10CBA000D1E710B5044621460FF2A000E6F788FC55 +:10CBB0000148047010BD0000F83B0120F3C90108D2 +:10CBC00051CA010869CA0108EC3C012023415320E5 +:10CBD000494E49540000000023415320534644204D +:10CBE000535452203A2025642C204455203A2025C5 +:10CBF00064000000234153204641494C20414343F7 +:10CC0000000000002341532053544F500000000007 +:10CC100023415320445400002341532041535F4E8D +:10CC20004D5300002341532041535F43414E434540 +:10CC30004C000000234153204D4900002341532064 +:10CC400041504D5347203A20256400002341532092 +:10CC5000555352414354203A202564000FB400B587 +:10CC600089B0DFF8980701210177406A90F86014D5 +:10CC700000293AD190F86104002836D100208DF8BF +:10CC80000000032001900DF109000AA91822E6F71F +:10CC9000DFFA0A208DF8080000A8E9F785FB0028D4 +:10CCA00021D000208DF82A00ADF82D008DF82B0042 +:10CCB0008DF82C008DF800001A2001900DF109006C +:10CCC0000AA91822E6F7C4FA0A208DF8080000A87D +:10CCD000E9F76AFB002806D01C2200210846E9F784 +:10CCE0008FFA022801D1022000E0012009B05DF88E +:10CCF00014FB00B589B01C2200210120E9F780FA5D +:10CD0000022801D1022022E001208DF8000003203A +:10CD100001900A208DF8080000A8E9F745FB0028DB +:10CD200001D1032013E001208DF800001A200190AA +:10CD30000A208DF8080000208DF80B00039000A851 +:10CD4000E9F732FB002801D1032000E0012009B0FF +:10CD500000BD70B586B0DFF8A846206800280DD168 +:10CD6000DFF8A0663068002808D1204600F04BFEAE +:10CD7000304621465822E6F77BFA02E0204600F0D2 +:10CD800042FEDFF8846606F10C000ECE0EC00C3EAB +:10CD900002A8F6F712FF304602A90B22E6F758FA6E +:10CDA000DFF85856707868763178307B814204D04D +:10CDB00029760FF26C60E6F783FB00A8E6F71DFE0C +:10CDC0009DF8000028739DF8010068739DF802002B +:10CDD000A873BDF80300A5F80F00DFF82866E86C1B +:10CDE00021683268891A10FA81F0E86400F02AF9A3 +:10CDF000304621465822E6F73BFA012006B070BDC6 +:10CE000010B5DFF8F845E9F7F9F9606200206075C0 +:10CE10000120A0750320E0754FF4FA70A062DFF8DE +:10CE2000EC05E0624EF6602020630FF20C60E6F73E +:10CE300047FB00202077E06320646064A0642083C7 +:10CE4000E076A06358220146DFF8B805ECF7BFFD95 +:10CE500058220021DFF8A805ECF7B9FDE6F7AFFA94 +:10CE600020620020A0760120E0770020A077606A91 +:10CE7000DFF89C15C0F8701400F27040DFF89415CC +:10CE80004160DFF8941581600FF20D01C1600FF26F +:10CE900041010161012010BD80B5DFF86005416AE4 +:10CEA00091F86114002901D1002002BD90F914000D +:10CEB000012801D1012001E000F09FF840B202BD3D +:10CEC000DFF838050021416301750120704700003B +:10CED00070B5DFF8283593F91420012A2BD15A6B4D +:10CEE000002A20D040F221140D7814FB05050126FC +:10CEF0002E700D7814FB05056E700D7814FB05057A +:10CF00001C26AE700D7814FB05050126EE700D7819 +:10CF100014FB0505AA800D7814FB0500C0F8063047 +:10CF20000878401C087011460FF22450E6F7C8FA42 +:10CF3000BDE87040C4E7DA7F012A23D140F2211412 +:10CF40000A7814FB0202012515700A7814FB02020C +:10CF500055700A7814FB02021C2595700A7814FBA0 +:10CF600002020225D5705A7F0B7814FB03008272EF +:10CF70000878401C087011460FF2EC40BDE8704084 +:10CF8000E6F79EBA70BD0146891E012903D9891EA4 +:10CF9000012905D908E0DFF8641401224A7503E08D +:10CFA000DFF8581400224A7501460FF2D440E6F724 +:10CFB00087BADFF8481400EB80028A6201460FF25C +:10CFC000D840E6F77DBA38B50446DFF8305441F270 +:10CFD000883010FB04F0E862EFF7CCF80022DFF8AD +:10CFE0003C34E7F7ADFFE7F767FA286321460FF215 +:10CFF000BC40BDE83440E6F763BA38B50024DFF83A +:10D00000FC53686A90F83814002903D190F8390469 +:10D01000002813D00120E877F7F7A2FB6877A97FF3 +:10D02000002900D1A877A97F884209D001460129AB +:10D0300001D0022900D10124A87701E02046E87739 +:10D04000204632BDF0B583B0002500A829460A4627 +:10D0500006C0DFF8A843E06B10F1100F01D21430C6 +:10D06000E063E07E002800F0C580022801D06BD389 +:10D070000BE1217E042934D1607D002813D1606C3E +:10D0800014306064E26A9042C0F0FF80E26B206B73 +:10D090008242C0F0FA800125002060640FF2204037 +:10D0A000E6F70EFAF1E010466064206A827AA37E09 +:10D0B0001A430FD1E26B206B824204D301250FF299 +:10D0C0001840E6F7FDF90FF22840E6F7F9F90120DC +:10D0D000A076DAE0807A012840F0D7802846A07652 +:10D0E000D3E0022901D0032915D1206C143020642B +:10D0F00042F211729042C0F0C880E26B206B904205 +:10D1000080F0C38001250020206403460FF2F43034 +:10D11000E6F7D6F9B9E0012940F0B780A06C00F13C +:10D120001403A3644EF661208342C0F0AE80E26B2C +:10D13000206B904280F0A98001250020E0760FF25C +:10D14000E030E6F7BDF9A0E0217E022901D00329F5 +:10D150000FD1E36CA06A8342C0F09780E26B206B32 +:10D160008242C0F0928001250FF2D030E6F7A8F994 +:10D170008BE0042928D1606C14306064627E002A40 +:10D1800013D142F211729042C0F07F80E26B206BAB +:10D1900090427AD201250220E076002060640346A6 +:10D1A0000FF2B430E6F78CF96FE0E26B206B90423F +:10D1B0006BD201250220E0760020606403460FF266 +:10D1C000B430E6F77DF960E001295ED1A06C00F192 +:10D1D0001403A3644EF66120834256D3E26B206BA6 +:10D1E000904252D201250020E0760FF2A430E6F7FB +:10D1F00067F94AE0217E022916D1206C14302064A0 +:10D20000626441F2893290423FD3206BE26B9042DC +:10D210003BD20120E07628462064012502460FF229 +:10D220008C30E6F74DF930E0042916D1606C1430EB +:10D230006064226441F28932904226D3206BE26B13 +:10D24000904222D20220E076284660640125024600 +:10D250000FF27030E6F734F917E0032915D1206C8E +:10D2600014302064626441F2893290420DD3206B05 +:10D27000E26B904209D20120E07628462064012525 +:10D2800002460FF25830E6F71BF9207F012809D13A +:10D290000020207701252846207601460FF25430E1 +:10D2A000E6F70EF9012D40F0A780257E042D36D13A +:10D2B000A06B461CA663606B002809D1207B6070C0 +:10D2C000607BA070A07BE07000202071052060636F +:10D2D00004208DF8000000A8042141708170617D58 +:10D2E000012902D10121C17001E00021C170042196 +:10D2F00001712670676B052200A93819E7F7ECFD6C +:10D30000781D6063002E6DD0012020750020A06381 +:10D31000E26B29460FF2F020E6F7D2F862E0022D28 +:10D3200001D0032D2ED1A06B461CA663606B002894 +:10D3300009D1207B6070607BA070A07BE070002032 +:10D3400020710520606302208DF8000000A80221F2 +:10D3500041708170C17001712670676B052200A950 +:10D360003819E7F7B9FD781D6063002E3AD0012027 +:10D3700020750020A063E26B29460FF2A820E6F793 +:10D380009FF82FE0012D2DD1A06B461CA663606B8A +:10D39000002809D1207B6070607BA070A07BE070CA +:10D3A000002020710520606301208DF8000000A896 +:10D3B000012141708170C17001712670676B052277 +:10D3C00000A93819E7F788FD781D6063002E09D0A1 +:10D3D000012020750020A063E26B29460FF25C203B +:10D3E000E6F76EF80020E06320646064A064E06407 +:10D3F0000FF26420E6F764F8F7BD00001033012057 +:10D4000014310120BC300120A839012020BF0200C6 +:10D410005DCC0108F3CC010853CD01080000E03FCA +:10D420005B41504452204C545D205472616E732015 +:10D430004D6F6465202564005B41504452204C547C +:10D440005D20494E495420303231372D33000000E1 +:10D450005B41504452204C545D20427566666572B3 +:10D4600053697A653A2564005B41504452204C541C +:10D470005D2053746179496E666F3A25640000003F +:10D480005B41504452204C545D20677073205374AC +:10D49000612025640000000041504452205365740F +:10D4A0005F5357554E202564000000004150445200 +:10D4B000205365745F5457555320256400000000C5 +:10D4C0005B41504452204C545D205245512D563101 +:10D4D00020256420256400005B41504452204C54B8 +:10D4E0005D205245512D56322025642025640000D0 +:10D4F0005B41504452204C545D2041505F4E4F548C +:10D50000534C50005B41504452204C545D205245D6 +:10D51000512D563320256420256420256400000009 +:10D520005B41504452204C545D205245512D56349D +:10D530002025642025642025640000005B415044C0 +:10D5400052204C545D205245512D573120256420E6 +:10D5500025642025640000005B41504452204C5457 +:10D560005D205245512D5732202564202564202509 +:10D57000640000005B41504452204C545D205245F1 +:10D58000512D573320256420256420256400000098 +:10D590005B41504452204C545D205245512D57342C +:10D5A0002025642025642025640000005B41504450 +:10D5B00052204C545D205245512D5331202564207A +:10D5C000256400005B41504452204C545D2052457C +:10D5D000512D533220256420256400005B415044C6 +:10D5E00052204C545D205245512D53332025642048 +:10D5F000256400005B41504452204C545D20415052 +:10D600004453542C202564005B41504452204C5418 +:10D610005D2056656869636C653A20256420256441 +:10D62000000000005B41504452204C545D20576183 +:10D630006C6B3A2025642025640000005B41504457 +:10D6400052204C545D2053746174696F6E6172791D +:10D650003A202564202564005B41504452204C54FC +:10D660005D20526573657400DFF8E40B417A00EBCE +:10D67000810282ED090ADFF8DC2B02EB8103F0EE78 +:10D68000601AC3ED001A02EB810282ED101A827A51 +:10D69000102A01DA521C8272491C4172C9B2102947 +:10D6A00001D10021417270472DE9F8432DED028B25 +:10D6B0000024DFF89C5BA87A022801DA20466AE0A1 +:10D6C0002646DFF8909B01E00024761CA87A86426B +:10D6D0005BDA687A002803D10F274FF00E0805E0C7 +:10D6E000471EB7F1010801D508F1100805EB8700C6 +:10D6F00090ED090A05EB8800D0ED090A30EE600ACA +:10D7000010EE100AE6F750FD21F00041EEF740FD63 +:10D7100008EE100A09EB870090ED000A09EB88007B +:10D72000D0ED000A30EE600A10EE100AE6F73CFD7C +:10D7300021F00041EEF72CFD08EE900A09EB87007E +:10D7400090ED100A09EB8800D0ED100A30EE600A67 +:10D7500010EE100AE6F728FD21F00041EEF718FD63 +:10D7600000EE100ADFEDB00AB4EE608AF1EE10FAB6 +:10D7700009DAF4EE608AF1EE10FA04DAB4EE600A27 +:10D78000F1EE10FAA0DB641C9FE7E4B2042C01DB8D +:10D79000012000E00020BDEC028BBDE8F2832DE902 +:10D7A000F8432DED068B88B0B0EE408AF0EE608A2B +:10D7B000B0EE419AF0EE619A0646DFF89C7A87ED6A +:10D7C000000AB0EE68AA87ED01AAF0EE49AAC7EDFB +:10D7D00002AA4FF00A08DFF8845AB5F90E0010FBD0 +:10D7E00008F0B5F91010A0EB0109314689B23846AE +:10D7F0000BF080FEDFF8584A201D0BF080F92079ED +:10D8000010FB08F0A17900EB01081FFA88F8B8F1C5 +:10D810002A0F12D10FFA89F9B9F1000F0DD5606EF8 +:10D82000002807D10AF089FD012060660FF69820D4 +:10D83000E5F746FE0120A06623E0606E012807D1CF +:10D840000AF087FD002060660FF68820E5F738FEB5 +:10D85000A06EB8F1280F0CDB002804D10C210FF6C4 +:10D860008020E5F72DFE0120A0660C200AF052FD75 +:10D8700007E0012803D10FF67C20E5F721FE002008 +:10D88000A06694ED040AF0EE480AB4EE600AF1EEE8 +:10D8900010FA1ED194ED050AB4EE4A0AF1EE10FA20 +:10D8A00017D194ED060AB4EE6A0AF1EE10FA10D11F +:10D8B000E06E401CE066152815D32069E6F774FC7D +:10D8C00002460B460FF63820E5F7FAFD0020E06629 +:10D8D00009E0B0EE480A84ED040A84ED05AAC4ED1F +:10D8E00006AA0020E06697EC030AFFF7BDFE207A47 +:10D8F00002283DD1304680B2B0EE690A0CF0EEFB52 +:10D90000314689B2384609F0E1FF28460AF076FC34 +:10D91000286801280FD109F0F1F828460AF06EFCBA +:10D920002C222946DFF84809E7F7D6FA0FF6DC1073 +:10D93000E5F7C6FD28E0294684B068462C22E5F7C5 +:10D9400097FC0FBC00F066F900F0E6FA00281BD047 +:10D95000A889002818D10FF6C010E5F7B1FD012005 +:10D9600020720AF061FC01202080022060800BE020 +:10D97000012809D1FFF798FE002805D00FF6A01066 +:10D98000E5F79EFD0220207200F006F8002008B0A6 +:10D99000BDEC068BBDE8F283DFF8B40801880029EE +:10D9A00010D1418800290DD1417B491C4173C9B276 +:10D9B000072923DB01210180016A098C41800021B4 +:10D9C00041737047016A01F12002528D002A09D08B +:10D9D000032A02D10222028001E003220280098C84 +:10D9E000418070470279042A04D1042101808179A1 +:10D9F0004180704701220280098C41807047DFF826 +:10DA00005008007A7047002805D0DFF84418096AEA +:10DA10005822E5F72DBC7047002803D0DFF83018F6 +:10DA200009680160704700000100803F10B50028C0 +:10DA300014D1DFF82C4800EE101AB8EE400A84ED3D +:10DA4000010A20460AF006FC6068E6F7ADFB0246D4 +:10DA50000B460FF6D400E5F733FD24E0012814D17E +:10DA6000DFF8FC4700EE101AB8EE400A84ED000A19 +:10DA700020460AF0EFFB2068E6F796FB02460B46CD +:10DA80000FF6B400E5F71CFD0DE002280BD1DFF81E +:10DA9000D047218120460AF0DDFBB4F908100FF6CB +:10DAA000A800E5F70DFD0FF6B000E5F709FD42F21D +:10DAB000247001460FF6B000E5F702FD40F2D67083 +:10DAC000DFF88C17C88101460FF6AC00BDE81040A6 +:10DAD000E5F7F6BC2DE9F0470746884691460FF674 +:10DAE0007800E5F7EDFC42F2247001460FF678006D +:10DAF000E5F7E6FC40F2D6700146DFF85447E181D5 +:10DB00000FF67400E5F7DCFCDFF8585758220021C7 +:10DB10002846EBF75CFFDFF85067582200213046BB +:10DB2000EBF755FF58220021DFF84007EBF74FFFD6 +:10DB30002662DFF82CA7582200210AF10C00EBF72F +:10DB400046FF0C2200215046EBF741FF2C2200211A +:10DB5000DFF80807EBF73BFF2C220021DFF8100766 +:10DB6000EBF735FF00EE107AB8EE400A8AED010AB5 +:10DB700000EE108AB8EE400A8AED000AAAF8089072 +:10DB80004B46424639460FF60400E5F799FC08F08B +:10DB9000D5FE50460AF05EFB05F1200042F21071FE +:10DBA000C185018600218162022028842C22294619 +:10DBB0003046E7F791F90120207200206072A072D0 +:10DBC000E0610CF049FA0020E0720120207300208F +:10DBD00020616061A061DFF8800600210160416082 +:10DBE0008160084620600AF029FF201D0AF087FFA7 +:10DBF00000206066A066BDE8F08710B596B00AF018 +:10DC000005FB044600A8FFF7FEFE0098001916B0B9 +:10DC100010BD00000FB42DE9F0412DED028B8AB04C +:10DC2000DFF84C86D8F80400DFF83C66814206D164 +:10DC3000BDF85620B8F80E309A4200F097800C1AC2 +:10DC400002D5DFF8700604199DED1C0AD8ED0A0A0A +:10DC500070EE608AF5EE408AF1EE10FA03D59FED82 +:10DC6000AC0A78EE808A9DED1A0AD8ED080A30EEEB +:10DC7000608AB5EE408AF1EE10FA03D59FEDA40A52 +:10DC800038EE008ABDF85600C0B29DED1B0A0CF0BC +:10DC9000ADFBB0EE401ADFF8B855287B012802D062 +:10DCA000022837D047E0DFF8C475089712A983B07F +:10DCB00068462C22E5F7DCFA0EBC9FED961AF0EED2 +:10DCC000480AB0EE680A204600F060F8E87A2018AA +:10DCD000E872C0B206282EDBDFF88805089012A98A +:10DCE00083B068462C22E5F7C3FA0EBC9FED891A73 +:10DCF000D7ED0E0A97ED090A386800F047F8E87A80 +:10DD0000401CE872582200213846EBF760FE0220E2 +:10DD1000287310E0DFF84C05089012A983B068461C +:10DD20002C22E5F7A5FA0EBCF0EE480AB0EE680A20 +:10DD3000204600F02BF8BDF85600002809D15822E3 +:10DD40000021DFF82805EBF742FE0020E8720120F1 +:10DD500028732C2212A94046E7F7BEF8DFF8041515 +:10DD6000296258223046E7F7B7F82E62BDF858000E +:10DD7000318C884203D0DFF8EC14088430840AB078 +:10DD8000BDEC028BBDE8F0015DF814FB0EB4F0B5FC +:10DD90002DED048B8AB0B0EE409AB0EE608AF0EEC2 +:10DDA000418A1E9D05F12004BDF85A60A6852946CA +:10DDB000B0EE680A00F0EAF8DFF89404C0690028C1 +:10DDC0001AD194ED010A30EE090A84ED010A00F03F +:10DDD0002DFA84ED010A6685BDF8580020851A9851 +:10DDE000606194ED060A30EE080A84ED060A00F040 +:10DDF00011FA84ED060A5BE0DFF8640407AA0AC89A +:10DE00000AC20368136013A984B068462C22E5F7A0 +:10DE10002FFA0FBCB0EE680A00F054F9D4ED010AF5 +:10DE200030EE800A84ED010A00F000FA84ED010A68 +:10DE3000F5EE408AF1EE10FA0BDD032E03D1062039 +:10DE40006085208510E0042E0ED108206085208595 +:10DE50000AE0032E03D107206085208504E0042E0C +:10DE600002D10920608520859DED1A0AF6EE000A90 +:10DE700020EE200A84ED050AA069E6F795F906462A +:10DE80000F4618EE100AE6F78FF90022DFF8E433A8 +:10DE9000E7F756F832463B46EEF7EAFAEEF778F93E +:10DEA00000EE100A84ED060A00F0B4F984ED060ACB +:10DEB0001C98E6F779F9DFF8C023DFF8C033E7F7FD +:10DEC0003FF8EEF765F900EE100A84ED070ADFED82 +:10DED0007C0AB4EE600AF1EE10FA02DBDFF8D80338 +:10DEE000E06115986062608D002801D100206062B9 +:10DEF0000020206218986063BDF866002086BDF897 +:10DF00005C0028840AB0BDEC048BF0BC5DF810FB0B +:10DF1000002474490000000080B50AF0A9F940F619 +:10DF2000B931884201D3012002BD002002BD38B5BD +:10DF30000D4605F11004A18F032912D1B5EE400A58 +:10DF4000F1EE10FA06DD29694018286100F07AF92F +:10DF5000286131BD61684018606000F073F960604D +:10DF600031BD042911D1B5EE400AF1EE10FA06DDFB +:10DF7000A1684018A06000F065F9A06031BDE168BB +:10DF80004018E06000F05EF9E06031BDF8B52DEDBD +:10DF9000028B0546B0EE408A0C46206828182060A7 +:10DFA00000F050F9206018EE100AE6F7FDF821F0B5 +:10DFB000004100221346F7F74FFF44D2A84EB06944 +:10DFC000092831D2A24FF96900292DD108281CD186 +:10DFD000E1684018E06000F035F9E0602146B0EEFD +:10DFE000480AB069FFF7A3FFE0682818E06000F076 +:10DFF00029F9E0602146B0EE480A2846FFF797FF6E +:10E0000000F04CF80120F8610AE0B4F84A00042856 +:10E0100003D170692818706102E0306928183061F6 +:10E02000B0692818B06136E0E0682818E06000F0B8 +:10E0300009F9E0602146B0EE480A2846BDEC028BA3 +:10E04000BDE8F44073E7B4F84A00032802D004287E +:10E0500007D00DE060682818606000F0F3F8606099 +:10E060000CE0A0682818A06000F0ECF8A06005E0C3 +:10E0700060682818606000F0E5F86060784EB0696C +:10E08000092803D2002801D000F00EF800F006F8AD +:10E090006F480021C161BDEC028BF1BD70480021C9 +:10E0A00001614161816170476D486E494A68036949 +:10E0B0009A184A608A684069801888607047000032 +:10E0C0000100C8410FB438B52DED088BB0EE408A81 +:10E0D000DFED6B8A9FED6A9ADDED159A19EE900AD5 +:10E0E000E6F762F841EC1A0B9FED66BBBDF83E0007 +:10E0F000042853EC1A2B654824D16549E6F720FF24 +:10E1000053EC1B2BEEF7B4F9EEF742F80BEE100AC6 +:10E11000B5EE408AF1EE10FA38D453EC1A2B5F4872 +:10E120005C49E6F70DFF04460D4618EE100AE6F7C7 +:10E130003BF822462B46E6F703FFEEF729F809EEF7 +:10E14000100A23E05449E6F7FBFE53EC1B2BEEF7D5 +:10E150008FF9EEF71DF80BEE100AB5EE408AF1EEDE +:10E1600010FA13D453EC1A2B4C484D49E6F7E8FE4D +:10E1700004460D4618EE100AE6F716F822462B461E +:10E18000E6F7DEFEEEF704F809EE100AF5EE409A27 +:10E19000F1EE10FA18D09DED0E0AB5EE400AF1EE40 +:10E1A00010FA11D010EE100AE5F7FEFF00223D4BE9 +:10E1B000E6F7C6FE02460B4600203B49E6F71CF890 +:10E1C000EDF7E6FF08EE900A3BEE090A10EE100AA2 +:10E1D000E5F7EAFF354A394BE6F7B2FE04460D464D +:10E1E0001798E5F7E1FF22462B46E6F7A9FE04461D +:10E1F0000D4618EE900AE5F7D7FF22462B46E6F7C4 +:10E200009FFEEDF7C5FF00EE100ABDEC088B31BC98 +:10E210005DF814FBDFED260AB4EE600AF1EE10FAA9 +:10E2200003DBDFED270A30EE200A7047DFED200A1E +:10E23000B4EE600AF1EE10FA03DBDFED210A30EEF6 +:10E24000200A70471B49884201D31E4908187047AD +:10E25000C8280120F0240120F83A01204837012085 +:10E2600084230120B42F01200C30012064300120D0 +:10E27000743701200000E03FB81E85EB51B8AE3F77 +:10E28000000000000000000000000C409A999999DD +:10E290009999C93FCCCCEC3F9999B93FCDCCCCCC26 +:10E2A000CCCCFC3F00004E400000F03F7B14AE475A +:10E2B00001247449819698000000C841E17A743FB6 +:10E2C000002474C9806967FF50443A204250204FAF +:10E2D0004E00000050443A204250204F4646000075 +:10E2E00050443A20494E545F5354455028256429E0 +:10E2F0000000000050443A20455849542056480038 +:10E300005044204E41432025660000005044202DFB +:10E310003E204F46520000005044202D3E20570022 +:10E320005044202D3E20520050443A5365744865B5 +:10E33000696768742025660050443A5365745765D0 +:10E34000696768742025660050443A5365744765D0 +:10E350006E646572202564005044203A20313846AE +:10E3600045423134000000005B4D5F50445D205653 +:10E3700065723A20256400005B5052495F50445D4D +:10E38000205665723A2025640000000050443A206F +:10E390002564202564202564000000000FB400B52A +:10E3A0008FB001208DF80400AA208DF802003C20D7 +:10E3B0008DF803000020ADF83A000A208DF8200007 +:10E3C0000DF1210000A91822E4F742FF00208DF88A +:10E3D00018000320079006A8E7F7E6FF01200FB01A +:10E3E0005DF814FB00B589B00020ADF822000A20CA +:10E3F0008DF8080000208DF809008DF80A00012032 +:10E400008DF800000320019000A8E7F7CDFF012060 +:10E4100009B000BD38B52748046B00F03BF801286F +:10E4200014D101208DF800000FF2DC00E5F748F868 +:10E4300004F10C056A7D00A9E868E368C018E6F7F6 +:10E440004BFD0120A874002000F021F8012032BD0E +:10E4500080B5E7F7D3FE184908601849C0F8E814FA +:10E4600000F2E84016494160164981600FF20D0143 +:10E47000C1600FF25D010161012002BD0E4800681C +:10E4800090F8D904002801D1002070470BE00E4914 +:10E49000087070470C480078704780B5002000F085 +:10E4A00006F8012002BD094890F9000070470749AD +:10E4B00008707047084000209C3C01209DE3010843 +:10E4C000E5E3010815E40108FF3C0120FE3C0120C2 +:10E4D00018B440F221120B7812FB030301241C70C4 +:10E4E0000B7812FB03035C700B7812FB03031F24F1 +:10E4F0009C700B7812FB03000022C2700878401C4D +:10E50000087011BCC9E7000053442D45000000000D +:10E510000FB400B58FB001208DF80400AA208DF84B +:10E5200002003C208DF803000020ADF83A000A20DC +:10E530008DF820000DF1210000A91822E4F788FED3 +:10E5400000208DF818000320079006A8E7F72CFF9D +:10E55000F3F7A1FE01200FB05DF814FB00B589B000 +:10E560000020ADF822000A208DF8080000208DF868 +:10E5700009008DF80A0001208DF8000003200190A9 +:10E5800000A8E7F711FF012009B000BD38B5002051 +:10E5900000902648446C00F039F8012812D1F3F7B6 +:10E5A00076FE009004F10C056A7D00A9E868E36836 +:10E5B000C018E6F791FC0120A874002000F023F8B1 +:10E5C000F3F769FE012032BD80B5E7F717FE184961 +:10E5D00008601849C0F8881500F288501649416053 +:10E5E000164981600FF20D01C1600FF25D010161FA +:10E5F000012002BD0E48006890F87905002801D17D +:10E60000002070470BE00E49087070470C480078F6 +:10E61000704780B5002000F006F8012002BD0948CF +:10E6200090F90000704707490870704708400020C3 +:10E63000983C012011E501085DE501088DE5010820 +:10E64000FD3C0120FC3C012018B440F221120B7863 +:10E6500012FB030301241C700B7812FB03035C7094 +:10E660000B7812FB030323249C700B7812FB03002E +:10E670000022C2700878401C087011BCC9E7000075 +:10E6800051EC100B00B500F003F841EC100B00BD8D +:10E6900040F2FF7C0B0D4DD0634566D230B421EAC9 +:10E6A000035141F4801103F2FD3C5FEA5C0C01D39D +:10E6B00000184941890041EA907180004FF44014EC +:10E6C0000023E202D50AB1F5100107D46D081DD26E +:10E6D000091B641900184941491BF7D56D080AD276 +:10E6E0000919641B00184941491BEFD56D08F7D380 +:10E6F00001E0520817D0C01861419B1AAC410018C4 +:10E700004941801AA941F4D452080AD0C01AA14143 +:10E710009B186C4100184941801AA941E9D452085C +:10E72000F4D15B1C6C4161084FEA330001EB0C51E2 +:10E7300030BC704750EA0103FBD030B4B1FA81F32A +:10E7400011B9B0FA80F41B190B3BB3F120042FBFB1 +:10E7500000FA04F19940C3F1200420FA04F438BF10 +:10E7600021439840D3F101039DE76345E1D011F5C2 +:10E77000801FDED850EA4101DBD0D9430CF06CB8E1 +:10E7800038B5DFF8CC4C0020E06120626062A06206 +:10E79000E062A081DFF8BC0CE063DFF8BC0C206411 +:10E7A00060643220E0824FF496702083DFF8AC5C26 +:10E7B0004FF42072002105F14000EBF708F94FF407 +:10E7C0002072002105F53070EBF701F9902200214D +:10E7D00005F5B860EBF7FBF8402200212846EBF77F +:10E7E000F6F840220021DFF83C0DEBF7F0F840226C +:10E7F0000021DFF8340DEBF7EAF840220021DFF8C2 +:10E800002C0DEBF7E4F84022002105F5A860EBF7AA +:10E81000DEF84022002105F5B060EBF7D8F8402281 +:10E820000021DFF80C0DEBF7D2F840220021DFF8D1 +:10E83000040DEBF7CCF8052200212046EBF7C7F8D2 +:10E8400005220021DFF8F00CEBF7C1F805220021CA +:10E85000DFF8D40DEBF7BBF80020A0822063A063A3 +:10E860002061A0606063E0640220A07331BD80B5C8 +:10E870000FF21000E4F724FEDFF8D40B002101733F +:10E8800001BD00004C542053746F70007047DFF8D6 +:10E89000C01B4FF47A725043C86301460FF2040064 +:10E8A000E4F70EBE4C542053504420256400000071 +:10E8B000DFF89C2B4FF47A71484310640146516491 +:10E8C0000FF20400E4F7FCBD4C54205750442025BF +:10E8D00064000000DFF8781BC88201460FF20400D4 +:10E8E000E4F7EEBD4C542053522025640000000094 +:10E8F000DFF85C1B088301460FF20400E4F7E0BD7B +:10E900004C54205341522025640000000EB410B531 +:10E9100087B0DFF8184DBDF86E0000281ED1DFF873 +:10E92000100DD0E90023CDE90223D4E90001CDE99F +:10E930000001DDE9022300F088FFDFF8141BC96B3A +:10E940004FF47A724243914206D201460FF22800F8 +:10E95000E4F7B6FD01200AE0002008E004A8E5F78E +:10E960004CF8204604A90522E4F772FC002007B009 +:10E9700010BC5DF810FB00004C542053544F502045 +:10E98000436865636B696E6720256400DFF8C00A21 +:10E9900001210162C16100218162C1627047DFF81B +:10E9A000B00A01214162C1617047DFF8A40AC06961 +:10E9B0007047DFF89C0A0021C1610FF20800E4F7FC +:10E9C0007FBD00004C542052455345545F434D4495 +:10E9D00052440000DFF8780A002101620FF20400BF +:10E9E000E4F76EBD4C542052455345545F504F538D +:10E9F00052455100DFF8580A002141620FF204002D +:10EA0000E4F75EBD4C542052455345545F504F4986 +:10EA100041434B00DFF8380A012181620021C162C5 +:10EA200001727047DFF8280A0121C16270472DE9A1 +:10EA3000FC4106460F469046DFF8E84ADFF81C5ACC +:10EA4000204629464022E4F713FC85ED000B85EDB6 +:10EA5000021B85ED042B85F8296085F82A7085F85E +:10EA60002B80D4E90423002001460BF0FBFE0ED1DD +:10EA7000D4E900230BF0F6FE09D1D4E902230BF010 +:10EA8000F1FE04D1204629464022E4F7F1FB95ED42 +:10EA9000020B8DED000BD5E900230FF20C00E4F71B +:10EAA0000FFDBDE8F38100004C54205550504F53EA +:10EAB000202566202566000030B583B0DFF8904938 +:10EAC000A06A012815D1DFF8605A2846DFF88C19B2 +:10EAD0004022E4F7CDFB95ED020B8DED000BD5E95F +:10EAE00000230FF21400E4F7EBFC0020A0620120E9 +:10EAF0003EBD00203EBD00004C54203173742025E3 +:10EB0000662C20256600000030B583B0DFF8404950 +:10EB1000A06A012815D1DFF8145A2846DFF83C19FD +:10EB20004022E4F7A5FB95ED020B8DED000BD5E936 +:10EB300000230FF21400E4F7C3FC0020A0620120C0 +:10EB40003EBD0020A0623EBD4C5420326E642025A4 +:10EB5000662C2025660000000020DFF8F418CA6A41 +:10EB6000012A01D1C862012070470FB400B59DB0E1 +:10EB7000DDE92E23F7F712FACDE90C01DDE92001DA +:10EB8000DDE93023F7F70AFACDE90E010CA984B0CC +:10EB900068464022E4F76CFB0FBC00F05DFD53ECCF +:10EBA000102B0020DFF81C1EE6F7CAF941EC100B11 +:10EBB0001DB05DF814FB00000FB470B52DED048B93 +:10EBC0009CB0DFF88C58687A002801D1002043E01F +:10EBD0000A2801DB0A2600E0AE7A9FED998B00241B +:10EBE00022E0DFF8781801EB801000F530710CA8F6 +:10EBF0004022E4F73DFB24A984B068464022E4F7B4 +:10EC000037FB0FBCFFF7B1FFB0EE409AF0EE609A11 +:10EC100051EC190B53EC182BEEF76EF903D2B0EE52 +:10EC2000498AF0EE698A641CE4B22046B042D8DB1F +:10EC3000288BEDF79FFA02460B4651EC180BEEF7C6 +:10EC40005BF901D2002007E053EC182B0FF21400FF +:10EC5000E4F736FC0120E8641CB0BDEC048B70BC0A +:10EC60005DF814FB4C54205341204F555420256629 +:10EC70000000000030B585B0DFF8E04794F9690581 +:10EC80008DF8000004F2695090F901108DF8011020 +:10EC900090F902008DF80200B4F86C05ADF803009D +:10ECA000DFF88C59D5E90001CDE90201DDE9022345 +:10ECB000DDE9000100F0C9FDC4F87805DFF8900730 +:10ECC000D5E90023C0E9002305B030BD0FB42DE91C +:10ECD000F0412DED088B84B0DFF87447DFF87C57E6 +:10ECE000A07A05EB80109DED120B80EDA00B00F5D6 +:10ECF00020709DED140B80ED020B9DED160B80ED49 +:10ED0000040B2099816394F80980B8F10A0F01DBA4 +:10ED10004FF00A089FEDBF8BB0EE489AF0EE689A6C +:10ED2000B0EE48AAF0EE68AA00261DE005EB8617B3 +:10ED300053EC182BD7E9B001EDF79AFB41EC180B17 +:10ED400007F5307753EC192BD7E90201EDF790FB6B +:10ED500041EC190B51EC1A0BD7E90423EDF788FBB2 +:10ED600041EC1A0B761CF6B24645DFDB4046EDF768 +:10ED700001FA41EC1B0B51EC180B53EC1B2BE5F784 +:10ED80003BFA05F5A862C2E9000105F2405651ECD4 +:10ED9000190B53EC1B2BE5F72FFAC6E9020151ECD6 +:10EDA0001A0B53EC1B2BE5F727FAC6E9040195F97A +:10EDB00069058DF8000005F2695797F901008DF893 +:10EDC000010097F902008DF80200B5F86C05ADF866 +:10EDD0000300DFF85C88D8E90001CDE90201DDE934 +:10EDE0000223DDE9000100F030FD0246C5F8782578 +:10EDF000D8E90001C4E900010192B87800907B785D +:10EE000095F86925617A0FF21420E4F759FB96ED25 +:10EE1000020B8DED000B05F5A860D0E900230FF281 +:10EE20006060E4F74DFB0320A0730FF20440E4F7A9 +:10EE300047FB04B0BDEC088BBDE8F0015DF814FBA6 +:10EE400000000000006AF8400FB42DE9F0472DEDF6 +:10EE5000088B86B0DFF8D047DFF8D4A7DAE90001E5 +:10EE6000CDE90401D4E90001CDE90201DDE9042383 +:10EE700000F0EBFCDFF8D855A97ADFF8E06506EB87 +:10EE800081129DED160B82EDB00B02F530739DEDF6 +:10EE9000188B83ED028B9DED1A9B83ED049B2378E9 +:10EEA00082F8E93202F2E92367785F70A7789F70F1 +:10EEB00000B2C2F8F802481CA872C0B20A2801D1F8 +:10EEC0000020A872687A00F1010885F809805FFACD +:10EED00088F8A8F10100EDF743F941EC1A0B06F2AE +:10EEE000405953EC1A2BD9E90201E6F729F853EC03 +:10EEF000182BEDF7BDFA41EC180B53EC1A2BD9E99E +:10EF00000401E6F71DF853EC192BEDF7B1FA41ECCB +:10EF1000190B4046EDF72EF941EC1B0B53EC1A2B65 +:10EF200006F5A86041680068E6F70AF8DDE91623EF +:10EF3000EDF79EFA53EC1B2BE5F75EF906F5A86298 +:10EF4000C2E9000151EC180B53EC1B2BE5F754F907 +:10EF5000C9E9020151EC190B53EC1B2BE5F74CF9F5 +:10EF6000C9E9040106F26957B8F1010F0AD1207806 +:10EF700086F8690560787870A078B870B4F80300F6 +:10EF8000A6F86C0596F969058DF8000097F901005F +:10EF90008DF8010097F902008DF80200B6F86C05B3 +:10EFA000ADF80300DAE90001CDE90201DDE9022351 +:10EFB000DDE9000100F049FC0246C6F87825DAE9EF +:10EFC0000001C5E900010192B87800907B7896F8BD +:10EFD0006925697A0FF24400E4F772FA99ED020BA1 +:10EFE0008DED000B06F5A860D0E900230FF29040EC +:10EFF000E4F766FA687A012805D10120A8730FF2B8 +:10F000008C40E4F75DFA06B0BDEC088BBDE8F00774 +:10F010005DF814FB00000000000000004C542025A7 +:10F02000642053502025643A25643A25642C202519 +:10F03000640000000FB42DE9F0472DED0A8B86B077 +:10F04000DFF8ECA5DAE90001CDE90401DFF8E80416 +:10F05000D0E90023CDE90223DDE90423DDE9020143 +:10F0600000F0F3FB8046DFF8E843A07A461E36B294 +:10F07000002E01D50A3636B2607AEDF77BF841EC06 +:10F08000180BF64D05EB861653EC182B05F5A8600A +:10F0900041680068E5F754FFD6E9B023F6F77EFF34 +:10F0A00041EC190B06F5307705F2405953EC182B5B +:10F0B000D9E90201E5F744FFD7E90223F6F76EFF2D +:10F0C00041EC1A0B53EC182BD9E90401E5F738FF92 +:10F0D000D7E90423F6F762FF41EC1B0B9FEDE0CB71 +:10F0E000D6E9B023DDE91801EDF7C2F953EC1C2B8A +:10F0F000E5F726FFC6E9B001D7E90223DDE91A01E9 +:10F10000EDF7B6F953EC1C2BE5F71AFFC7E902013E +:10F11000D7E90423DDE91C01EDF7AAF953EC1C2B18 +:10F12000E5F70EFFC7E90401C7F8388053EC1A2B46 +:10F13000D7E90201EDF79CF941EC1A0B51EC1B0BDE +:10F14000D7E90423EDF794F941EC1B0B51EC190BB3 +:10F15000D6E9B023EDF78CF953EC182BE5F74CF812 +:10F1600005F5A862C2E9000151EC1A0B53EC182B0B +:10F17000E5F742F8C9E9020151EC1B0B53EC182BDF +:10F18000E5F73AF8C9E9040195F969058DF8000039 +:10F1900005F2695696F901008DF8010096F9020012 +:10F1A0008DF80200B5F86C05ADF80300DAE900014E +:10F1B000CDE90201DDE90223DDE9000100F045FBB4 +:10F1C0000246C5F87825DAE90001C4E90001019298 +:10F1D000B0780090737895F86925617A0FF238005D +:10F1E000E4F76EF999ED020B8DED000B05F5A860C3 +:10F1F000D0E900230FF28820E4F762F90320A0731E +:10F200000FF22C00E4F75CF906B0BDEC0A8BBDE808 +:10F21000F0075DF814FB00004C5420256420552DA8 +:10F2200053502025643A25643A25642C2025640037 +:10F230004C54204152454120535441590000000094 +:10F240000FB42DE9F0472DED0A8B86B09FED848B2E +:10F25000DDE91823DDE92801EDF70AF953EC182B55 +:10F26000E5F76EFE41EC190BDDE91A23DDE92A0111 +:10F27000EDF7FEF853EC182BE5F762FE41EC1A0BA4 +:10F28000DDE91C23DDE92C01EDF7F2F853EC182B36 +:10F29000E5F756FE41EC180BA74CDFF894A3DAE92A +:10F2A0000001CDE90401D4E90001CDE90201DDE965 +:10F2B000042300F0CAFA664DA97ADFF8AC6C06EBBD +:10F2C000811282EDB09B02F5307383ED02AB83EDCA +:10F2D000048B237882F8E93202F2E92367785F70C1 +:10F2E000A7789F70B4F80330A2F8EC32C2F8F802A5 +:10F2F000481CA872C0B20A2801D10020A872687AFE +:10F3000000F1010885F809805FFA88F8A8F101008A +:10F31000ECF726FF41EC1B0B06F2405953EC1B2B7C +:10F32000D9E90201E5F70CFE53EC1A2BEDF7A0F832 +:10F3300041EC1A0B53EC1B2BD9E90401E5F700FE55 +:10F3400053EC182BEDF794F841EC180B4046ECF712 +:10F3500011FF41EC1C0B53EC1B2B06F5A860416818 +:10F360000068E5F7EDFD53EC192BEDF781F853EC50 +:10F370001C2BE4F741FF06F5A862C2E9000151EC3D +:10F380001A0B53EC1C2BE4F737FFC9E9020151ECCF +:10F39000180B53EC1C2BE4F72FFFC9E9040106F20C +:10F3A0006957B8F1010F0AD1207886F869056078AD +:10F3B0007870A078B870B4F80300A6F86C0596F9D8 +:10F3C00069058DF8000097F901008DF8010097F9A3 +:10F3D00002008DF80200B6F86C05ADF80300DAE91A +:10F3E0000001CDE90201DDE90223DDE9000100F0C1 +:10F3F0002CFA0246C6F87825DAE90001C5E90001D1 +:10F400000192B87800907B7896F86925697A0FF2B6 +:10F410005800E4F755F899ED020B8DED000B06F559 +:10F42000A860D0E900230FF25800E4F749F8687AA1 +:10F43000012805D10120A8730FF25000E4F740F82D +:10F4400006B0BDEC0A8BBDE8F0075DF814FB0000C8 +:10F4500060330120E093040060E31600C0CF002079 +:10F46000000000000000E03F4C5420256420532D94 +:10F4700053502025643A25643A25642C20256400E5 +:10F480004C54202566202566000000004C54204185 +:10F4900052454120494E00000FB410B584B0DFF84A +:10F4A000CC0A016B01EBC102DFF8BC3A03EBC202EC +:10F4B00002F5B8639DED060B83ED000B9DED080B87 +:10F4C00083ED020B08AC94ED021B83ED041B9DF849 +:10F4D000413082F8E93502F2E9530DF141046478D4 +:10F4E0005C700DF14104A4789C70BDF84430A2F822 +:10F4F000EC3502F2EC5211ABDB685361C48A148321 +:10F50000048B5483002901D10121016302938DED05 +:10F51000000BDDE906230FF22400E3F7D1FF1FBC47 +:10F520005DF814FBF83401203835012078350120CE +:10F53000B8350120F8350120483C01204C542055B5 +:10F540005341202566202566202564000FB4F0B5C0 +:10F5500085B0DFF8184A4825DFF80C6A206B05FBF8 +:10F56000006000F5B8619DED0A0B81ED000B9DED8B +:10F570000C0B81ED020B0CAA92ED020B81ED040B3A +:10F580009DF8511080F8E91500F2E9520DF1510390 +:10F590005B7853700DF15107BF789770BDF9542017 +:10F5A000A0F8EC258DF804108DF805308DF8067064 +:10F5B000ADF8072094F900008DF80C0060788DF804 +:10F5C0000D00A0788DF80E00B4F80300ADF80F0020 +:10F5D000DDE90323DDE9010100F037F90746009773 +:10F5E0009DF906309DF905209DF904100FF24400A5 +:10F5F000E3F766FF206B05FB0061C1F8007601F2BE +:10F600000061E28A8A80228BCA80022801D2401CD3 +:10F6100020630220A0730FF23400E3F751FF05B01E +:10F62000F0BC5DF814FB0000503C0120583C012068 +:10F63000403C01204C5420535341312025643A254D +:10F64000643A25642C202564000000004C542041BD +:10F65000524541204F5554000FB438B52DED048B61 +:10F660008CB006AA08A90AA89DED140B00F06EF84C +:10F67000DDE90A230020DFF8F818E5F761FC04460D +:10F680000D46DDE90823DFF8EC08DFF8EC18E5F7B4 +:10F6900057FC22462B46ECF7EBFE04460D46DDE90F +:10F6A0000623DFF8D808DFF8D818E5F749FC22462A +:10F6B0002B46ECF7DDFE41EC180B00AA02A904A8CA +:10F6C0009DED160B00F042F8DDE904234FF03330D6 +:10F6D000DFF8B018E5F734FC04460D46DDE90223F7 +:10F6E000DFF8A408DFF8A418E5F72AFC22462B4629 +:10F6F000ECF7BEFE04460D46DDE90023DFF8740892 +:10F70000DFF88C18E5F71CFC22462B46ECF7B0FE20 +:10F7100041EC190B53EC182B51EC180BE5F710FCCE +:10F7200004460D4653EC192B51EC190BE5F708FC78 +:10F7300022462B46ECF79CFE41EC100BFEF7A0FF97 +:10F740000CB0BDEC048B31BC5DF814FB70B52DED35 +:10F75000048BB0EE408AF0EE608A04460D461646F1 +:10F7600051EC180B53EC182BF6F718FC41EC190B65 +:10F7700053EC192B0020DFF81C18E5F7E1FB41ECF6 +:10F78000100B84ED008B85ED000B0022DFF80438B0 +:10F79000E4F732FD02460B4651EC190BF6F7FEFB7F +:10F7A0000022DFF8F437E5F7CBFBC6E90001BDEC3A +:10F7B000048B70BDDFF8B407006A7047DFF8AC0750 +:10F7C000406A704780B540220021DFF8D007EAF791 +:10F7D000FEF840220021DFF8C807EAF7F8F8DFF862 +:10F7E000D40D002141728172016181820FF20C00FF +:10F7F000BDE80240E3F764BE000000004C54205214 +:10F80000455345545F41535000000000DFF8A40DFC +:10F81000006B704780B5DFF8501701F5B06001F557 +:10F82000A8614022E3F724FDDFF8880D0021016381 +:10F8300001BDC9B201EBC102DFF82C1701EBC20117 +:10F8400001F5B8614822E3F713BD3FB581B04FF42D +:10F850007A704EF66022DFF8603D9DF904109DF944 +:10F860000540544303FB01419DF9064014FB001180 +:10F87000BDF9074001FA84F19DF90C409DF90D5046 +:10F880006A4303FB04229DF90E3013FB0020BDF9EF +:10F890000F2000FA82F0441A42F20F7213199342B9 +:10F8A00005D200240FF23C00E3F70AFE07E0DFF880 +:10F8B0000C2D944203DADFF8082D1018441ADFF8F3 +:10F8C000040D844200DB04462046ECF749FCDFF8D7 +:10F8D000F82CDFF8F83CE5F733FB05B0BDE8304025 +:10F8E000E4F7D4BD41542D4C54206469666620541D +:10F8F000696D652052657365740000002DE9F6435B +:10F9000083B08146BDF90F404EF66025DFF8A86C44 +:10F910009DF90C009DF90D10694306FB00109DF93F +:10F920000E104FF47A7211FB020000FA84F10C9869 +:10F93000412808D15F18DFF8980C87420BD3DFF815 +:10F94000940CC71907E0994204D2DFF8740C4018F0 +:10F95000C71A00E0CF1A3846ECF70CFC0022DFF89B +:10F96000783CE4F749FCE4F791FD80465FFA88F8BB +:10F9700006FB18763046ECF7FDFB0022DFF85C3C16 +:10F98000E4F73AFCE4F782FDC0B28DF8008001464E +:10F990008DF8011005FB1060ECF7ECFBDFF8282C6C +:10F9A000DFF8283CE5F7CCFAE4F770FD8DF80200AB +:10F9B000ADF80340484600A90522E3F749FC05B02D +:10F9C000BDE8F08300408F4010B50024DFF89C05AF +:10F9D000C16C012907D101240021C1640FF2540038 +:10F9E000E3F76EFD23E0DFF88005D0F87815D0F856 +:10F9F000B825914216D190F8691590F8A925914241 +:10FA000010D100F2A95100F2695042784B789A4225 +:10FA100008D180788978884204D10FF6EC30E3F77A +:10FA20004FFD04E001240FF6E830E3F749FD2046DE +:10FA300010BD00004C5420465500000000B58DB0AC +:10FA4000DFF82805407A00280AD0DFF8941B84B03C +:10FA500068464022E3F70CFC0FBCFFF71DFD06E0F3 +:10FA60000FF6B4300DB05DF804EBE3F729BD0DB02F +:10FA700000BD00001CB5DFF8F444217B61732073E6 +:10FA8000401E05284DD8DFE800F0034C16222C411B +:10FA900000A8E3F7B2FFDFF84C0B00A90522E3F75B +:10FAA000D7FB616C21640020E0720FF67830BDE86E +:10FAB0001C40E3F705BD00A8E3F79FFFDFF8240B28 +:10FAC00000A90522E3F7C4FBA06BA06413BD00A846 +:10FAD000E3F793FFDFF80C0B00A90522E3F7B8FB6F +:10FAE00013BD00202061A08240220146DFF8B0044F +:10FAF000E9F76DFF00A8E3F780FFDFF8E80A00A947 +:10FB00000522E3F7A5FBA06BA06413BD00A8E3F7F3 +:10FB100074FFDFF8D00A00A90522E3F799FBA06B78 +:10FB2000A06413BD0CB400B583B09DF939108DF8F5 +:10FB300000100DF1390191F901108DF801100DF14E +:10FB4000390191F902108DF802100021ADF803106F +:10FB500000A90522E3F77CFB0EBC5DF80CFB00005E +:10FB60002DE9F84F2DED0A8B9CB082469FED558B09 +:10FB7000DFF8F883B8F81000B8F81290814502D287 +:10FB80005FFA89F901E0C0B28146B8F91400461E57 +:10FB900000D50A36DFF8D0B30BEB861797ED109B34 +:10FBA00097ED12AB97ED14BB01243CE0301A00D561 +:10FBB0000A300BEB801505F140010CA84022E3F759 +:10FBC00057FB07F1400184B068464022E3F750FB41 +:10FBD0000FBCFEF7CAFFB0EE40CAF0EE60CA51ECAF +:10FBE000180B53EC1C2BEDF787F903D2B0EE4C8ABF +:10FBF000F0EE6C8A53EC1B2BD5E91401ECF738FCC2 +:10FC000041EC1B0B53EC192BD5E91001ECF730FC40 +:10FC100041EC190B51EC1A0BD5E91223ECF728FC37 +:10FC200041EC1A0B641CE4B220464845BEDB484652 +:10FC3000ECF7A0FA41EC1C0B51EC1B0B53EC1C2B0A +:10FC4000E4F7DAFACAE9040151EC190B53EC1C2B66 +:10FC5000E4F7D2FACAE9000151EC1A0B53EC1C2B61 +:10FC6000E4F7CAFACAE90201B8F81000B8F81210AD +:10FC700088421ED207F140010CA84022E3F7F8FAAF +:10FC8000DFF8641984B068464022E3F7F1FA0FBC4C +:10FC9000FEF76BFFB0EE40CAF0EE60CA51EC180BF5 +:10FCA00053EC1C2BEDF728F903D2B0EE4C8AF0EEA2 +:10FCB0006C8AB0EE480AF0EE680A1CB0BDEC0A8B04 +:10FCC000BDE8F18F00000000000000000FB42DE936 +:10FCD000F0412DED068BA0B02CA984B068464022DF +:10FCE000E3F7C6FA0FBCFEF767FFA04D68639E4EB0 +:10FCF000012812D10020686306F5A86184B0684627 +:10FD00004022E3F7B5FA0FBCFFF720FCFFF75AFDDE +:10FD10000FF62010E3F7D4FB19E1B5F9144006EB18 +:10FD2000841040302CA94022E3F7A2FA601CA8827C +:10FD300000B20A2801D10020A882288A0A2801DA04 +:10FD4000401C2882688A401C6882314682B068461E +:10FD50004022E3F78DFA0CBC0EA8FFF7E3FE288AD9 +:10FD60000A2801DA002700E02F7D8D4CD4E900013C +:10FD7000002213460AF076FD2FD1D4E902010AF0E1 +:10FD800071FD2AD1D4E904010AF06CFD25D106EBFE +:10FD90008716DFF8588896F9690088F8000006F29F +:10FDA000690090F9011088F8011090F9020088F8B4 +:10FDB0000200B6F86C00A8F80300DFF82C0806F182 +:10FDC00040014022E3F754FA204606F14001402268 +:10FDD000E3F74EFA0020A063B9E010A8FFF7C0FED9 +:10FDE000B0EE408AF0EE608ADFF80088288B400889 +:10FDF000ECF7C0F953EC182BEDF77EF828D206EBA0 +:10FE0000871696F9690088F8000006F2690090F9F3 +:10FE1000011088F8011090F9020088F80200B6F885 +:10FE20006C00A8F80300DFF8C00706F1400140228B +:10FE3000E3F71EFA204606F140014022E3F718FAE4 +:10FE40000020A06368820FF2FC70E3F739FB7EE0CC +:10FE5000D8E90001CDE90001DDE90E23FFF7F5FC4B +:10FE6000064631460FF2EC70E3F72AFB286C4FF49C +:10FE70007A71714388426AD26F8A3846042866DBF9 +:10FE8000A16B002916D19DED100B84ED000B9DEDAB +:10FE9000120B84ED020B9DED140B84ED040BA66395 +:10FEA000214684B068464022E3F7E2F90FBCFEF732 +:10FEB000CBFF43E0401EECF753F941EC190B3846F9 +:10FEC000ECF758F941EC1A0B51EC190BD4E900236B +:10FED000E5F736F8DDE92C23ECF7CAFA53EC1A2BD8 +:10FEE000E4F78AF9C4E9000151EC190BD4E90223C3 +:10FEF000E5F726F8DDE92E23ECF7BAFA53EC1A2BD6 +:10FF0000E4F77AF9C4E9020151EC190BD4E90423AE +:10FF1000E5F716F8DDE93023ECF7AAFA53EC1A2BD3 +:10FF2000E4F76AF9C4E90401A663214684B068468F +:10FF30004022E3F79DF90FBCFEF7C8FEA06B0090CE +:10FF400053EC182B698A0FF21C70E3F7B9FA20B052 +:10FF5000BDEC068BBDE8F0015DF814FB7047DFF8DF +:10FF60005406807B70470000C0CF00206033012022 +:10FF700000C05B409A9999999999FD3F5839B4C846 +:10FF800076BE9F3F33335640AE47E17A14AEF73F1B +:10FF90009999993F00004E400020AC4000D50020C8 +:10FFA000B83501200EB478B52DED028B9EB0064613 +:10FFB000DFF80046A06B0818A06300A8E3F71DFD5A +:10FFC000DFF82C56284600A90522E3F741F9207BEB +:10FFD000062800F2E782DFE810F007001200740044 +:10FFE000C1006A011402C002FFF7ECFB0120FFF719 +:10FFF00041FD217B0FF28460E3F762FAD2E225A98A +:020000022000DC +:1000000083B068465822E3F733F90EBC304680B21D +:10001000FEF77CFC002843D0D5E90001CDE90301BF +:100020004D200090E36BDDE903010A46014601A87B +:10003000FFF764FCDFF8BC0501A90522E3F708F926 +:10004000DFF8B41582B068464022E3F711F90CBC22 +:100050001CA8FFF767FDD5E90001CDE90001DDE946 +:100060000023DDE91C01FFF7F0FB05463D2D07DB12 +:1000700029460FF21860E3F723FAFEF787FC06E043 +:100080000120A06229460FF21460E3F719FA02205A +:10009000FFF7F0FC217B0FF21460E3F711FA81E225 +:1000A000A06A012840F07E820020A062DFF8481597 +:1000B00084B068464022E3F7DBF80FBCFFF706FE8A +:1000C00070E2FEF7F9FC002834D00320FFF7D2FCE1 +:1000D0000FF2E850E3F7F4F9607A00281FD0DFF858 +:1000E0001C55294684B068464022E3F7C1F80FBC8E +:1000F000FEF762FD6063012811D100206063DFF824 +:10010000E01484B068464022E3F7B2F80FBCFFF772 +:100110001DFAFFF757FB0FF2B850E3F7D1F9DFF8FC +:10012000D81484B068464022E3F7A2F80FBCFFF76A +:10013000CDFD37E2FEF710FD002800F03382207A73 +:10014000401C2072C0B2032880F243810120FFF7D7 +:1001500091FC0FF29850E3F7B3F923E2A06A01286B +:1001600051D10020A062DFF89064607A00281DD091 +:10017000314684B068464022E3F77AF80FBCFEF7B8 +:100180001BFD6063012811D10020606306F5A861A2 +:1001900084B068464022E3F76BF80FBCFFF7D6F94E +:1001A000FFF710FB0FF25C50E3F78AF9314684B099 +:1001B00068464022E3F75CF80FBCFFF787FD314645 +:1001C0000CA84022E3F754F8DFF8301484B06846F6 +:1001D0004022E3F74DF80FBCFEF7C7FCB0EE408AB3 +:1001E000F0EE608AE08AEBF7C5FF53EC182BECF7D2 +:1001F00083FE08D20120FFF73DFC53EC182B0FF2D1 +:100200001050E3F75DF9D5E90001CDE90201DFF80F +:10021000D403D0E90023CDE90023DDE90223DDE9A1 +:100220000001FFF712FBA16BA26C8E1A332E08D3CC +:100230000120FFF71FFC31460FF2EC40E3F740F9D5 +:10024000B0E1216C4FF47A725043814280F0AA8170 +:10025000DFF8A41382B068464022E3F709F80CBC2B +:100260001CA8FFF75FFCD5E90001CDE90001DDE93D +:100270000023DDE91C01FFF7E8FA05463D2D07DB09 +:10028000FEF784FB29460FF2B840E3F719F906E0C0 +:100290000120A06229460FF20440E3F711F904207F +:1002A000FFF7E8FB0FF2A840E3F70AF97AE1FEF75F +:1002B0002BFC002800F08280D14E314684B0684685 +:1002C0004022E2F7D5FF0FBCFEF776FC6063012801 +:1002D00018D100206063C24984B068464022E2F72A +:1002E000C7FF0FBCFFF732F9FFF76CFA0FF270404F +:1002F000E3F7E6F8607B052840F054810120FFF722 +:10030000B9FB4FE1BD4D31460CA84022E2F7B0FFEA +:10031000294684B068464022E2F7AAFF0FBCFEF7E8 +:1003200024FCB0EE408AF0EE608AE08AEBF722FF10 +:1003300002460B4651EC180BECF7DEFD2BD2607B2E +:10034000052831460CD184B068464022E2F790FF80 +:100350000FBCFEF76FFE0FF21440E3F7B1F810E0A8 +:100360000CA84022E2F784FF294684B06846402268 +:10037000E2F77EFF0FBCFEF763FF0FF2FC30E3F7FE +:100380009FF8FEF70CFB0520FFF774FB0FF2F0302F +:10039000E3F796F806E10120FFF76CFB53EC182B0E +:1003A0000FF2F030E3F78CF8934984B068464022AE +:1003B000E2F75EFF0FBCFFF789FCF3E0FEF7CCFB32 +:1003C000002800F0EF80207A401C2072C0B2032881 +:1003D00007DB0620FFF74EFB0FF20030E3F770F863 +:1003E000E0E0884820640320FFF744FB217A0FF205 +:1003F000B830E3F765F8216C0FF22820E3F760F8D6 +:10040000D0E0A06A012846D10020A0627A4E607A2E +:1004100000281DD0314684B068464022E2F728FF0C +:100420000FBCFEF7C9FB6063012811D10020606397 +:1004300006F5A86184B068464022E2F719FF0FBCB8 +:10044000FFF784F8FFF7BEF90FF27430E3F738F8DE +:1004500031460CA84022E2F70BFF684984B0684699 +:100460004022E2F705FF0FBCFEF77FFBB0EE408AAB +:10047000F0EE608AE08AEBF77DFE53EC182BECF788 +:100480003BFD08D20120FFF7F5FA53EC182B0FF2D1 +:100490003C30E3F715F8D5E90001CDE902015148F8 +:1004A000D0E90023CDE90023DDE90223DDE90001E5 +:1004B000FFF7CBF9A16BA26C8E1A332E08D3012063 +:1004C000FFF7D8FA31460FF21C30E2F7F9FF69E086 +:1004D000216C4FF47A72504381423BD2464E96F9DA +:1004E00029008DF8700006F2290090F901108DF8AE +:1004F000711090F902008DF87200D5E90001CDE984 +:100500000001DDE90023DDE91C01FFF79EF9054646 +:100510003D2D07DBFEF73AFA29460FF2E020E2F71D +:10052000CFFF06E00120A06229460FF2E020E2F7AB +:10053000C7FF0420FFF79EFAE07A401CE072C0B2C9 +:1005400003282FDB606C410021640FF2D800E2F732 +:10055000B7FF27E0FEF78EFB24E0A06BA16C401AEA +:1005600033280BD30120FFF785FA0FF2B420E2F70E +:10057000A7FF0FF2C020E2F7A3FF13E0A06A012853 +:100580000BD10120FFF776FA0FF2B420E2F798FFC3 +:100590000FF2A020E2F794FF04E0607B042801D171 +:1005A000FEF768FB207B1EB0BDEC028B72BC5DF8D1 +:1005B00010FB00006033012080EE3600F1D8FFFF11 +:1005C000005C2605C0E40A05FCA9F1D24D62503F4B +:1005D000015C260500A4D9FA40774B41004CED4060 +:1005E00000D50020583C0120F8350120503C012066 +:1005F000403C0120483C0120C0CF0020383501207C +:1006000078350120E09304004C5420534100000051 +:100610004C542044490000004C54204E6F20504F51 +:10062000530000004C542D5750204348414E47453D +:10063000202564004C542053617665205341554D6C +:10064000000000004C542052455345545F47415030 +:10065000000000004C54204741204D546D2025647B +:10066000000000004C542053502053474152202595 +:10067000642C2025662C2025640000004C542D435A +:100680004B5F53544F502025640000004C542052BF +:100690004551504F532D4620256400004C54204EA8 +:1006A0002D524551504F5320256400004C542D4786 +:1006B00045545F315F504F53202564004C542D4307 +:1006C0004B5F555345525F4D4F5645540000000057 +:1006D0004C54205353412D46500000004C542D5390 +:1006E000535F50415553455F535300004C542053C2 +:1006F000535F475053204E4F54204F4B203173745B +:10070000000000004C54205353412D554D00000073 +:100710004C542D434B5F53544F502D554D2D646910 +:1007200073742025660000004C542D434B5F5354D6 +:100730004F502D554D2D73746570202564000000B9 +:100740004C5420524551504F532D532025640000E6 +:100750004C542D4745545F325F504F53000000000A +:100760004C54205353412D53500000004C542055FD +:1007700044542053500000004C5420535350000068 +:100780004C542D434B5F555345525F4C45415649A0 +:100790004E4700004C542D434845434B5F53544F44 +:1007A000502D5350202566004C542D475053204E59 +:1007B0004F54204F4B20326E64202564000000000F +:1007C0004C54205353412D554C0000004C542D43A4 +:1007D0004B5F53544F502D554C2064697374202542 +:1007E000660000004C542D434B5F53544F5020552E +:1007F0004C20737465702025640000004C54205216 +:100800004551504F532D554C202564004C54204EDB +:100810002D524551504F532D554C2025640000005A +:100820004C5420535320414741494E2042592053B4 +:10083000544550004C542D434B5F53544F500000CF +:100840004C5420535320414741494E204259205097 +:100850004F53000038B50446DFF8E4520020286505 +:1008600005206865002028646864A864E8649FED3A +:10087000B20B85ED040B85ED060B85ED080B85EDC0 +:100880000A0B85ED0C0B85ED0E0B6866A86605F16D +:100890006C00A8654FF4B6720021E9F798F80C22B5 +:1008A00000212846E9F793F894ED020AB1EE401AC8 +:1008B00094ED010AF1EE400A94ED000A05F14401BD +:1008C00005F140000AF0AEF8012032BD2DE9F04DEF +:1008D0002DED068B0E46DFF868720168396090EDE9 +:1008E000010AB1EE400A87ED010A90ED020AB1EE6D +:1008F000400A87ED020A1E223946B86D0AF097FABF +:10090000796D4A1EB86D3B6D934227DA1E22591C41 +:1009100009B20AF0B5FA10EE100AE3F745FCC7E990 +:100920000A011E22386D411C09B2B86D0AF0C6FAE0 +:1009300010EE100AE3F738FCC7E90C011E22386DEF +:10094000411C09B2B86D0AF0D7FA10EE100AE3F7AD +:100950002BFCC7E90E01386D401C72E023D11E222A +:1009600009B20AF08DFA10EE100AE3F71DFCC7E990 +:100970000A011E22796D09B2B86D0AF09FFA10EED5 +:10098000100AE3F711FCC7E90C011E22796D09B2C8 +:10099000B86D0AF0B1FA10EE100AE3F705FCC7E9EA +:1009A0000E01786D4DE01E2209B20AF059FAF86581 +:1009B0001E220021B86D0AF053FA8046C7F8608005 +:1009C000FC6D2068E3F7F0FB02460B46D7E90A010D +:1009D000F5F7E4FA82468B46D8F80000E3F7E4FB2B +:1009E00052465B46EBF744FDC7E90A016068E3F74E +:1009F000DBFB02460B46D7E90C01F5F7CFFA82463E +:100A00008B46D8F80400E3F7CFFB52465B46EBF782 +:100A10002FFDC7E90C01A068E3F7C6FB02460B46B1 +:100A2000D7E90E01F5F7BAFA04460D46D8F80800E2 +:100A3000E3F7BAFB22462B46EBF71AFDC7E90E0196 +:100A4000786DEBF78DFB41EC180BD7E90A0153ECFD +:100A5000182BE3F7D1FB41EC190B87ED049BD7E989 +:100A60000C0153EC182BE3F7C7FB41EC1A0B87ED95 +:100A700008ABD7E90E0153EC182BE3F7BDFB41ECB3 +:100A8000100B87ED060BEBF783FB01EE100AB0EEBF +:100A9000418A51EC1A0BEBF77BFB00EE900AB0EEAB +:100AA000481AB0EE608AF0EE418A51EC190BEBF770 +:100AB0006FFB00EE100AB0EE681AF0EE480A07F17C +:100AC0004C0107F1480009F0ADFF386D401C386556 +:100AD0009FED190B87ED040B87ED080B87ED060BD7 +:100AE000396CB86C00F017F804467C66796CF86CC9 +:100AF00000F011F8B86604F12801512902D228301B +:100B0000512802D30120307001E000203070BDEC8C +:100B1000068BBDE8F08D421AB52A04DB081A00F5F1 +:100B2000B470424205E012F1B40F02DA00F5B4707D +:100B3000421A10467047000000000000000000004C +:100B4000B005012038B5DFF82C4594F820000128C5 +:100B500001D1002032BD20460AF073FF20460AF082 +:100B6000DDFA0020E0830AF06FFFDFF80C55E56442 +:100B7000002060651422014604F13000E8F727FFE9 +:100B800020220021DFF8F404E8F721FF20220021D1 +:100B9000DFF8EC04E8F71BFF0020A065024605E043 +:100BA000D42101FB00510A718A71401C0128F7DB36 +:100BB0000120606400F011F8DFF8C804012180F81A +:100BC0003D1008460AF0BCFE0020A06420770AF021 +:100BD000DFFE012084F8200032BD70B401460023FE +:100BE000DFF8902411E0D42504EB8304A46805FB0E +:100BF000040401262671D66D05FB0300807904EB01 +:100C00008000006A3043D0655B1CDFF8780400EB9D +:100C10004114DFF864042579AB42E4DB29465177BF +:100C2000237F1376002903D0DFF850345971D06444 +:100C300070BC7047DFF83C144A6D01EB8203186307 +:100C4000501C4865052803D3401E486500207047A6 +:100C5000012070470020DFF81C1402468A654A6DA7 +:100C6000002A0BD00B6B8B65521E4A6504E001EB2A +:100C70008002536B1363401C0428F8DB704738B5BF +:100C80000024DFF8F053287F0AF08EFE02E000F027 +:100C90003CF8641C287E8442F9D331BD70B50C4603 +:100CA0000025DFF8D063F17F4A1CF277332901DB9E +:100CB0002946F177B17F032915DB0168716241682C +:100CC000B1628068F06228460AF06BFE307F401CFB +:100CD0003077317EC0B2884203D328463077FFF7A1 +:100CE000CEFFFFF7B7FFB07F411CB177652801DB6E +:100CF0003220B077B06D002805D0207001250A2879 +:100D000001D10A202070284670BD2DE9F84300204B +:100D10000146DFF864430BE0D42202FB0142137961 +:100D2000002B04D0937902EB8302126A1043491C12 +:100D30000129F1DB0AF051FECE4D0AF074FE286560 +:100D40000020A86506463FE0D42202FB06F707EB29 +:100D5000040898F80400002835D0304600F049F81F +:100D6000D5F8509098F8060008EB8000006AD9F892 +:100D7000001008421ED098F8060008EB8000406B77 +:100D8000002806D098F8060008EB8000406BFFF7BB +:100D900051FF98F80600401C88F8060098F80510E6 +:100DA000C0B2884206D3B548395940F82610002011 +:100DB00088F80600D9F84000002804D0D9F80010BF +:100DC0000843C9F80000761C012EBDDB286D0068C1 +:100DD0000AF02BFEA86C411CA964B0F57A7F01D9FA +:100DE0000020A864A648A5492022BDE8F843E2F700 +:100DF0003FBAF8B59F4C256D00212964D4219E4A45 +:100E000001FB00208179C1EBC10200EB820600EBFF +:100E10008107386A022846D1B06C012843D1306D71 +:100E2000022808D1686B032803DAF06D401CF065D6 +:100E300001E00020F065306D042808D1686B0528BA +:100E400003DAF06D401CF06501E00020F065306DC4 +:100E5000082808D1686B082803DBF06D401CF0659A +:100E600001E00020F065306D102808D1686B102873 +:100E700003DBF06D401CF06501E00020F065F06CD4 +:100E8000142190FBF1F0F16D814206DA2868396A8D +:100E900088432860386A286405E00020F0652868E7 +:100EA000396A08432860386A012861D196F84800F9 +:100EB000C0075DD5F06C41071ED594ED0B0AF9EE25 +:100EC000000AB4EE600AF1EE10FA09D540F22310E0 +:100ED000A9699131814203D3E969913181423DD2BF +:100EE0000020F065F06D05283CDA2868396A8843EF +:100EF0002860386A2864F1BD81070FD594ED0B0A8C +:100F0000B5EE400AF1EE10FAEADDA8695A30B528CC +:100F1000E6D2E8695A30B52820D3E1E7C006E1D52A +:100F2000E06AE3F741F921F000410122564BF4F762 +:100F300093FFD5D8606AE3F737F921F0004100222A +:100F4000524BEBF7D9FFCBD2A06AE3F72DF921F092 +:100F5000004100224D4BEBF7CFFFC1D2F06D401C9A +:100F6000F065BFE70020F0652868396A084328600B +:100F7000F1BD000010B43F49CA68002A04D14FF403 +:100F80008062CA600A614A6191ED040AB8EE400AC3 +:100F9000D1ED0A0A20EE200ADFED350A80EE200AA4 +:100FA000D1ED010AF8EE600A30EE200ABDEEC00A6B +:100FB00010EE102A91ED050AB8EE400AD1ED0B0AA9 +:100FC00020EE200ADFED2A0A80EE200AD1ED020A87 +:100FD000F8EE600A30EE200ABDEEC00A10EE103ABC +:100FE000B0F9024000EB440491ED030AB8EE400A68 +:100FF000D1ED090A20EE200ADFED1D0A80EE200A5D +:10100000D1ED000AF8EE600A30EE200ABDEEC00A0B +:1010100010EE101AA180B0F9021000EB4101CA8055 +:10102000B0F9021000EB41010B814188491C41805D +:1010300009B21E2901DB1D214180012010BC70472F +:1010400010B5002006E0D4210B4A01FB002100224C +:101050000A71401C0128F6DB064C002060646077B2 +:101060000AF098FC0020E06584F8200010BD000024 +:10107000C3F51C41F82E012070820020AC380120FD +:10108000CC380120DC840020000021400000F83F23 +:1010900010B5554C002020606060A06020620520E3 +:1010A00060620020A061E061A062E0622063606392 +:1010B000A063E0636064A06404F14C0020644FF41A +:1010C000B6720021E8F783FC0C22002104F10C0029 +:1010D000BDE81040E8F77BBC70B50C46424DA96CEA +:1010E0004E1CAE6400F017F8002803D0686C401C5A +:1010F000686401E0002068640F2E0ADA686C0B282F +:1011000003DB01202070022070BD00202070012030 +:1011100070BD032070BD0021334A92ED000AB5EE88 +:10112000400AF1EE10FA15D1D2ED010AF5EE400AAF +:10113000F1EE10FA0ED1D2ED020AF5EE400AF1EE10 +:1011400010FA07D1016811604168516080689060B1 +:1011500000207047D0ED000A30EEC00A90ED011A71 +:10116000D2ED011A31EE611AD0ED021A92ED022A87 +:1011700071EEC21AB5EE400AF1EE10FA01DAB1EEE4 +:10118000400AB5EE002AB4EE420AF1EE10FA1AD582 +:10119000B5EE401AF1EE10FA01DAB1EE411AB5EEF1 +:1011A000000AB4EE401AF1EE10FA0CD5F5EE401A32 +:1011B000F1EE10FA01DAF1EE611AF4EE401AF1EEF6 +:1011C00010FA00D50121C2ED000A4368536080681F +:1011D00090600846704704480021016041608160CA +:1011E0004164816470470000240B012010B500F0B9 +:1011F00032FB00F098FB00240DE020469FED151A0D +:10120000DFED140A9FED130A00F0B4FE214605201D +:1012100000F0BDFE641C1E2CEFDBDFF8540D002136 +:101220000170016341638163C1630164416481644E +:10123000052141710A210171002141708170C16253 +:101240000A2181710021C17010BDDFF8241DC87012 +:1012500070470000000000002DE9F0472DED048BE1 +:10126000B0EE408AF0EE608AB0EE419ADFF8244D8D +:10127000E078012801D1002500E0052526781E2E02 +:1012800009DA304600F076FE3146284600F07FFE4F +:10129000701C207027E0002616E0DFF8FC1C01EB34 +:1012A0008602304692ED3D1AD2ED1F0A01EB86010F +:1012B00091ED010A00F05EFE3146DFF8E00C3018D7 +:1012C000407800F064FE761C1D2EE6DB1D20B0EE9B +:1012D000491AF0EE680AB0EE480A00F04BFE1D21F4 +:1012E000284600F054FEDFF8B89C032D08DA606B46 +:1012F000401C606348450BD3DFF8A80C606307E02F +:10130000206B401C2063484502D3DFF8980C206313 +:1013100000F0B2FDB0EE408A00F076FDF0EE408ABB +:1013200000F010FBD4F830809FEDA09B4046EAF718 +:1013300021FF53EC192BE3F703FEE3F7BDF8064654 +:10134000E76B3846EAF716FF53EC192BE3F7F8FD85 +:10135000E3F7B2F8824620790A2802D0142846D052 +:101360005CE09FED940AB4EE408AF1EE10FA0CD5E1 +:10137000F4EE408AF1EE10FA07D5032D05DA1420B9 +:101380002071780800F0F0FB48E0781CE0634845E5 +:1013900002D3DFF8100CE063042D3FDB00F064FAA9 +:1013A000E06A01283AD1B6F57A7F37D994ED090A77 +:1013B000B5EE400AF1EE10FA01DCB1EE400ADFEDC5 +:1013C0007E0AB4EE600AF1EE10FA0DDA94ED0A0A24 +:1013D000B5EE400AF1EE10FA01DCB1EE400AB4EECF +:1013E000600AF1EE10FA19DB0020E06216E09FEDD2 +:1013F000710AB4EE408AF1EE10FA04DAF4EE408A93 +:10140000F1EE10FA02DB0A20207107E0A06B401C0D +:10141000A063484502D3DFF88C0BA0630020607006 +:10142000607902280AD0C0F05B8104281BD074D3F5 +:10143000062800F00381C0F0E68051E1032D0FDAA9 +:10144000606B012802D12079A07149E10A2840F09F +:1014500047810420607100F0F5FB002020633FE12C +:10146000002060633CE1E06A012832D1207900F07D +:1014700049F901282DD140F2E930864201D2002EEF +:1014800022D1824502D2BAF1000F1DD194ED090A92 +:10149000B5EE400AF1EE10FA01DCB1EE400ADFEDE4 +:1014A000460AB4EE600AF1EE10FA10D594ED0A0A7D +:1014B000B5EE400AF1EE10FA01DCB1EE400AB4EEEE +:1014C000600AF1EE10FA02D5A078607001E0002009 +:1014D000E062E06A002814D1B6F5C87F01D8002E7A +:1014E00008D1A078002808D0BAF1FB0F05D2BAF1D4 +:1014F000000F02D0A078607003E0207900F046F978 +:101500006070032060716078A070002020636063C9 +:10151000A063E06300F01DFBE2E0042D17DBB8F1EF +:10152000010F02D100F0FFF9DAE0B8F1060FC0F0C8 +:10153000D7800021404600F0D3FAA078032802D1DA +:101540000020E06262E000F0D9FCE0625EE0002092 +:10155000206320790A2853D1E06B0A28C0F0C080AC +:10156000002100F0BDFAA07800F0C8FCE06294ED24 +:10157000130AB5EE400AF1EE10FA02DDF0EE400A71 +:1015800001E0F1EE400A9FEDB71AF4EE410AF1EEE8 +:1015900010FAC0F2A580D4ED140AF5EE400AF1EE7F +:1015A00010FA0BDDF0EE601A0AE000BF0000000048 +:1015B000000034409A99193F00002042F1EE601A71 +:1015C000F4EE411AF1EE10FAC0F28A80F5EE400A0C +:1015D000F1EE10FA01DCF1EE600AB5EE400AF1EE30 +:1015E00010FA01DCB1EE400AF4EE400AF1EE10FA16 +:1015F00076D50520607100F096F90020A0636FE0B9 +:101600000020E0636CE0B8F1060F04D302206071A3 +:101610000020606364E0A06B012805D1E06B00F05E +:10162000A3FA2079A0715BE0052859D3606B0528E7 +:1016300056D3062060710020206351E020791428E1 +:101640004ED1E06A01282DD140F2E930864201D224 +:10165000002E22D1824502D2BAF1000F1DD194EDA5 +:10166000090AB5EE400AF1EE10FA01DCB1EE400ACB +:10167000DFEDB20AB4EE600AF1EE10FA10D594ED87 +:101680000A0AB5EE400AF1EE10FA01DCB1EE400AAA +:10169000B4EE600AF1EE10FA02D5A078607001E0B5 +:1016A0000020E062E06A002811D140F291108642E9 +:1016B00001D2002E04D1824505D2BAF1000F02D02A +:1016C000A078607003E0A07900F060F860700320FB +:1016D00060716078A070002020636063E063A063A5 +:1016E0006078012801D1012008E0022801D1022000 +:1016F00004E0032801D1032000E00020BDEC048BAE +:10170000BDE8F08780B52DED048B00210A2808D1B3 +:10171000DFF85C0890ED100A90ED118AD0ED128A86 +:1017200011E0142808D1DFF8480890ED150A90ED73 +:10173000168AD0ED178A06E09FED810A9FED808A18 +:10174000DFED7F8A032103291CDA9FEDD59A00F093 +:1017500035FCB4EE490AF1EE10FA11D5B0EE480AA4 +:1017600000F02CFCB4EE490AF1EE10FA08D5B0EE08 +:10177000680A00F023FCB4EE490AF1EE10FA01D435 +:10178000012000E00020BDEC048B02BD00210A28EE +:101790000AD1DFF8DC07D0ED100A90ED111AD0ED78 +:1017A000121A9FED670A13E014280AD1DFF8C00768 +:1017B000D0ED150A90ED161AD0ED171A9FEDC50A57 +:1017C00006E0DFED5F0A9FED5E1ADFED5D1A032193 +:1017D00003293EDAB4EE600AF1EE10FA0BD59FED64 +:1017E000BE2AB4EE421AF1EE10FA04D5F4EE421A13 +:1017F000F1EE10FA2AD4B4EE600AF1EE10FA0BD52D +:101800009FEDB62AB4EE421AF1EE10FA04DBF4EEC4 +:10181000421AF1EE10FA0BDAB4EE600AF1EE10FAA9 +:1018200008D59FEDCF1AF4EE411AF1EE10FA01DB64 +:1018300001210EE0B4EE600AF1EE10FA08D59FED3A +:10184000C90AF4EE401AF1EE10FA01D5022100E0C7 +:10185000032108467047DFF8180700218160C16046 +:10186000016170470100C03F10B52DED068BDFF818 +:10187000004794ED050AB5EE400AF1EE10FA13D1D7 +:1018800094ED060AB5EE400AF1EE10FA0CD194ED93 +:10189000070AB5EE400AF1EE10FA05D1A0686061C2 +:1018A000E068A0612069E06194ED028A94ED050A88 +:1018B00038EE400A00F0F6F8F0EE408A94ED039A14 +:1018C00094ED060A39EE400A00F0ECF8F0EE409A8A +:1018D00094ED04AA94ED070A3AEE400A00F0E2F80B +:1018E000F0EE40AA94ED080A30EE280A00F0DAF88B +:1018F00084ED080A94ED090A30EE290A00F0D2F8C6 +:1019000084ED090A94ED0A0A30EE2A0A00F0CAF8BA +:1019100084ED0A0A84ED058A84ED069A84ED07AA0F +:10192000BDEC068B10BDDFF8480600210162416264 +:10193000816241618161C161704700000000204205 +:1019400000000000F8B52DED048B84B01D2100A827 +:1019500000F000FB9DED000AB5EE400AF1EE10FA32 +:1019600001DCB1EE400ADFEDAF0AB4EE600AF1EE41 +:1019700010FA01D50020009000AE96ED010AB5EEF8 +:10198000400AF1EE10FA01DCB1EE400AB4EE600A52 +:10199000F1EE10FA01D50020706096ED020AB5EE66 +:1019A000400AF1EE10FA01DCB1EE400AB4EE600A32 +:1019B000F1EE10FA01D50020B0609FED9B8B9FEDFA +:1019C0009C9BDFF8D075B868E2F7EEFB04460D4645 +:1019D0000098E2F7E9FB53EC192BE3F7B1FA002288 +:1019E000DFF8D435E2F708FC53EC182BE3F7A8FA3C +:1019F00022462B46EAF73CFDEAF7CAFB00EE100A46 +:101A000087ED020A00F04EF887ED020AF868E2F767 +:101A1000CBFB04460D467068E2F7C6FB53EC192B6E +:101A2000E3F78EFA0022DFF89035E2F7E5FB53EC9E +:101A3000182BE3F785FA22462B46EAF719FDEAF759 +:101A4000A7FB00EE100A87ED030A00F02BF887EDE4 +:101A5000030A3869E2F7A8FB04460D46B068E2F7CE +:101A6000A3FB53EC192BE3F76BFA0022DFF84835A0 +:101A7000E2F7C2FB53EC182BE3F762FA22462B463F +:101A8000EAF7F6FCEAF784FB00EE100A87ED040A99 +:101A900000F008F887ED040A04B0BDEC048BF1BD3A +:101AA0009A99993EDFED640AB4EE600AF1EE10FAFD +:101AB00004DBDFED620A30EE200A7047DFED600ADA +:101AC000B4EE600AF1EE10FA03D5DFEDCD0A30EE88 +:101AD000200A70479A9999BECCCCCCBDCDCCCC3DD8 +:101AE00010B49FEDC80ADFEDC70A1F2801D31E20DE +:101AF00000E0C0B20022DFF8A0440EE0C2F11D03F6 +:101B0000DBB204EB830393ED1E1A30EE010A93ED72 +:101B10003C1A70EE810A521CD2B2824209DA0029C4 +:101B200002D1C2F11D03EBE70129E7D1C2F118038D +:101B3000E6E701EE100AB8EE411ADFF8580480EE2D +:101B4000010A80ED130A80EE810A80ED140A10BCB0 +:101B50007047DFF84004002141658165C165704729 +:101B6000CDCCCC3ECCCCCCBE30B49FEDA60ADFEDC4 +:101B7000A50A9FEDA41A1F2801D31D2001E0401ED5 +:101B8000C0B200210DE030EE210A02EB8302D2ED5B +:101B90001E1A70EEA10AD2ED3C1A31EE211A491C30 +:101BA00089B2DFF8CC4381422ADA22781E2A03DA8E +:101BB000521A531EDBB202E0C1F11D03DBB2DFF8A3 +:101BC000D82352F8235001EE905A02EB830555F8C2 +:101BD000045C02EE105A71EEC22A9FEDC73AF4EE91 +:101BE000432AF1EE10FACEDBF5EE401AF1EE10FAD0 +:101BF000C9DDB5EE402AF1EE10FAC4D50B29C2DBDF +:101C000001EE901AF8EE611A80EE210A84ED150AB1 +:101C100080EEA10A84ED160A81EE210A84ED170AEE +:101C200030BC70470BD7233DF8C1631ADCA54C408C +:101C30000000000000003440010034430000B4C341 +:101C4000000034C3F0B4DFEDC92AB0EE620AB0EE92 +:101C5000622ADFED6C0A9FED6B1ADFED6A1ACD4840 +:101C600001781E2900DB1E21026B914204D201EB98 +:101C7000D1725210D2B201E05208D2B200230DE06C +:101C8000B1EE633AB4EE443AF1EE10FA05DB71EED0 +:101C9000A31AB7EE003A32EE032A5B1CDBB2934282 +:101CA00080F29F80CC1A641EE4B225466E1EF6B206 +:101CB000B94D55F8267003EE107A05EB8407D7ED81 +:101CC000003A05EB860797ED004A73EEC43AF5EE4D +:101CD000403AF1EE10FA05EB8407D7ED003A02DD49 +:101CE00033EEC33A01E033EE633A05EB8606D6EDF8 +:101CF0001E3A97ED1E4AD6ED1E4A34EE644AB5EE02 +:101D0000404AF1EE10FA97ED1E4A02DD74EE633A96 +:101D100001E073EEC43A06F1780C9CED1E4A07F11F +:101D20007806D6ED1E4A9CED1E5A74EEC54AF5EEB5 +:101D3000404AF1EE10FAD6ED1E4A02DD34EEC44AF6 +:101D400001E034EE644ADFED984AB4EE643AF1EE15 +:101D500010FA09DBF4EE643AF1EE10FA04DBB4EEAB +:101D6000644AF1EE10FA3CDA55F8244003EE104ACA +:101D7000B5EE403AF1EE10FA02DDF0EE433A01E042 +:101D8000F1EE433A9FED894AF4EE443AF1EE10FA4F +:101D900005DB70EE830AB7EE003A30EE030A97EDEA +:101DA0001E3AB5EE403AF1EE10FA02DDF0EE433A9B +:101DB00001E0F1EE433AF4EE443AF1EE10FA05DBBD +:101DC00031EE031AB7EE003A72EE832AD6ED1E3AD0 +:101DD000F5EE403AF1EE10FA7FF752AFB0EE633A0B +:101DE00050E780EE800A80ED100A81EE220A80ED35 +:101DF000110A81EE820A80ED120AF0BC70470000E1 +:101E00000000B4430000000010B52DED028B9FEDE3 +:101E1000688A002426E0C4F11D00C0B25E4901EBCF +:101E2000800202F1780393ED1E0AD2ED1E0A51F8EA +:101E3000200001EE100A21EE011A00EEA01A00EEB9 +:101E4000001A11EE100AE2F7AFF941EC100BFCF7A3 +:101E500017FC51EC100BEAF79BF900EE100A38EE74 +:101E6000008A641C062CD6DBB1EE080A88EE000A54 +:101E7000BDEC028B10BD000010B52DED028B9FED67 +:101E80004C8ADFED4B8A002428E0C4F11D00C0B26B +:101E9000414901EB800202F1780393ED1E0AD2ED75 +:101EA0001E0A51F8200001EE100A21EE011A00EE80 +:101EB000A01A00EE001A11EE100AE2F775F941ECD3 +:101EC000100BFCF7DDFB51EC100BEAF761F900EEAB +:101ED000100A38EE008A40EE008A641C062CD4DB1F +:101EE000B1EE080AC8EE000A88EE800A00EEE00AA9 +:101EF000BDEC028B10BD00009A99993E0121022889 +:101F000012D19FED2C0A2348D0ED130AF4EE400ABB +:101F1000F1EE10FA1CDBD0ED140AF4EE400AF1EEFB +:101F200010FA15DB002113E0012811D1194890EDBA +:101F3000130AFEEE000AB4EE600AF1EE10FA07D5BD +:101F400090ED140AB4EE600AF1EE10FA00D500210B +:101F500008467047104A52F82130036002EB8101B5 +:101F60008A6F4260D1F8F01081607047BD378635C6 +:101F7000382E0120C0B2084901EB800282ED000A30 +:101F800001EB8000C0ED1E0A80ED3C1A7047034A49 +:101F900088547047382E0120480E01208C380120CB +:101FA00041420F0040420F000100A040CDCC4C3D0B +:101FB000000000000100003F00408F40B5EE400AE5 +:101FC000F1EE10FA03D5FFEE000A20EE200A70476A +:101FD00070B504460025DFF80867062015FB0040B1 +:101FE00000F080FB6D1C202DF7DB70BD00B9704741 +:101FF0002DE9F0434379027DDB43D243DBB243EA70 +:1020000002220A80437C427DDB43121DDBB243EA9D +:1020100002224A80C47C437A6634373BE4B244EA05 +:1020200003238B80057B4478263D523CEDB245EA84 +:102030000424CC800678057A203E6A35F6B246EA5A +:1020400005250D81877D8679FF43F643FFB247EA78 +:1020500006264E8190F804C0877BACF1310CFF431B +:102060005FFA8CFC4CEA07278F8190F812E090F819 +:1020700010C0AEF17F0E6FEA0C0C5FFA8EFE4EEAD6 +:102080000C2CA1F80EC090F80B8090F818E0A8F185 +:1020900055080EF1370E5FFA88F848EA0E2EA1F8BF +:1020A00010E0098890F81A8090F817905118591884 +:1020B000611869187118791861446FEA0909714447 +:1020C0005FFA89F3C9B26FEA08088B420FD18078B2 +:1020D0000CEB070146307144C0B2C9B2884206D148 +:1020E000A81860445FFA88F1C0B2814201D0002094 +:1020F00000E00120BDE8F083F0B588B0002200AB1D +:10210000002423F8124003234FF480449C4051F8EC +:10211000225001269E406742AF4207DB641941F816 +:10212000224000AC34F91240A41B09E0A5420ADBAE +:102130002C1B41F8224000AC34F9124006FA84F41A +:1021400000AD25F812405B1EDED500AB33F912302E +:10215000DB1D9BB20F2B01D3002043E0521C032A4E +:10216000CDDB002202AB002443F8224005AB43F84C +:1021700022400023062404FB020434F9135051F8D2 +:10218000236002AC00AF54F8224006FB054402AEC7 +:10219000AD0346F8224005AE37F9137056F82260B9 +:1021A0002D1107FB056505AE5B1C46F82250032B7D +:1021B000E0DBC4F3C00303EB241302ACEB1844F8D8 +:1021C000223002AB53F82230C3F3402404EBA323A4 +:1021D00002AC44F82230521C032AC3DB02A81CC8FC +:1021E0001CC1012008B0F0BD2DE9F14F80B20B46B3 +:1021F000212819D2BDF9000000250121A9408842FB +:1022000005D06D1C062DF8DBBDF9000060B9B3F9EF +:10221000000047F6FF7840451FBFB3F90200404574 +:10222000B3F90400404501D1002040E000244FF004 +:10223000000C27460126254606E081468E46CC4402 +:102240007444DA4657446D1CBDF90000854226DA15 +:1022500036B2B54208BF76004DB933F90590B3F9EF +:1022600002E0B3F904A0CC4674465746EBE70620DB +:1022700000FB05F1C85E40451EBF01EB030BBBF937 +:10228000021041451CBFBBF904B0C345D5D1CC44B5 +:102290007444D7E74FEA6C0C64107F10761036B2A6 +:1022A000022EF7DAA2F800C0548097800120BDE822 +:1022B000F28F30B5B0F90440B0F90250240485B073 +:1022C000240A14FA85F4ADF80040B0F90840B0F9DA +:1022D00006502404240A14FA85F4ADF80240B0F93B +:1022E0000C40B0F90A002404240A14FA80F0ADF876 +:1022F00004000020188000AC31F8103034F9104090 +:10230000803313FB04F302AC03EB830344F8203067 +:102310001B1242F82030401C0328ECDB05B030BD16 +:1023200030B5B0F90440B0F90250240485B0240A55 +:1023300014FA85F4ADF80040B0F90840B0F9065041 +:102340002404240A14FA85F4ADF80240B0F90C40D4 +:10235000B0F90A002404240A14FA80F0ADF804004D +:102360000020188000AC31F8103034F91040803370 +:1023700013FB04F30A24634302AC44F820301B121D +:1023800042F82030401C0328ECDB05B030BD70B5AE +:10239000B0F90450B0F902602D0485B02D0A15FA89 +:1023A00086F5ADF80050B0F90850B0F90660099C08 +:1023B0002D042D0A15FA86F5ADF80250B0F90C502F +:1023C000B0F90A002D042D0A15FA80F0ADF80400CA +:1023D0000020208000AD31F8104035F910508034D5 +:1023E00014FB05F40A256C4302AD002A45F8204091 +:1023F00014BFA412241243F82040401C0328E9DB38 +:1024000005B070BD30B5B0F90440B0F902502404F5 +:1024100085B0240A14FA85F4ADF80040B0F90840FC +:10242000B0F906502404240A14FA85F4ADF80240E9 +:10243000B0F90C40B0F90A502404240A14FA85F4C7 +:10244000ADF80440B0F90E0000EB8000C0F55C7000 +:10245000C0101880002000AC31F8103034F9104062 +:10246000803313FB04F30A24634302AC44F82030A6 +:102470009B1242F82030401C0328ECDB05B030BD35 +:1024800030B5B0F90440B0F90250240485B0240AF4 +:1024900014FA85F4ADF80040B0F90840B0F90650E0 +:1024A0002404240A14FA85F4ADF80240B0F90C4073 +:1024B000B0F90A002404240A14FA80F0ADF80400EC +:1024C0000020188011F8103000AC03F03F035B00CF +:1024D00034F9104003F5807313FB04F30A246343BB +:1024E00002AC44F820301B1242F82030401C032874 +:1024F000E8DB05B030BD30B586B004460D4600A817 +:102500000FF2D8311822E0F7B3FE012CB8BF012436 +:1025100002DB042CA8BF032400A901EBC401284658 +:1025200008390822E0F794FE06B030BDF0B580B25D +:1025300085B00C4615461E46042828BF002080F0B2 +:10254000AE8000B2002807D0002147F6FF7304EBED +:102550004102B2F906209A4200F0A080491C0329EA +:10256000F5DB03A9FFF7C7FF01276FF0050017FB95 +:10257000006101F130002A310622E0F769FE7F1C7C +:10258000082FF2DB0020002135F9112034F9113039 +:102590009A42B4BF4FF0FF32012226F8112004EB1B +:1025A000410335F91120B3F9063000AFD31A47F8CB +:1025B000213044BF5B4247F8213000AB53F8213053 +:1025C00003EB430347F82130C3F3400707EBA303B2 +:1025D00000AF47F8213000AB53F821309842B8BF24 +:1025E000184634F91130D21A00AB43F8212044BF09 +:1025F000524243F8212000AA52F821209042B8BF4D +:102600001046491C0329BFDBBDF90C10401ABDF868 +:102610000E1040FA01F1081848BF002004D4B0F5AC +:10262000A07FC8BF4FF4A07000EB400101EB001188 +:1026300001EB4010C011401C00210022002706EBD6 +:10264000410C062317FB03C37F1CB3F9003002FAC9 +:1026500083F2082FF5DB13B2002B48BF5242BDF9BD +:1026600012705210012302FA87F203FA02F2BDF847 +:1026700010309A1812B28242B8BF024600AF57F823 +:10268000217034F911307A4336F91170D2117A433E +:10269000D21825F81120491C0329CEDB012005B0F2 +:1026A000F0BD70B50C461546FFF792FC2046FFF7CB +:1026B0008FFC0B4E284600F015F8A81D00F012F80C +:1026C000002000230021062202FB004222F81130E4 +:1026D000491C0329F7DB401C0828F3DB70BD000010 +:1026E0004033030831460622E0F7B2BD2DE9F04F32 +:1026F000814695B208462DB28FB01946212D2DD2B4 +:1027000042F20F3842F2033A42F20C3EC14518BF82 +:10271000F14505D0D1451CBF42F2B66291450DD1BD +:10272000B0F90030B0F90E2000260124B440A542D3 +:1027300016D0761C062EF8DB95B10FE042F2B86297 +:1027400091451FBF40F6BB32914542F2B7629145B9 +:1027500004D1B0F90030B0F91020E5E70020BAE06C +:102760001E9E1E96012434800024249E24963480CC +:102770000026DDF884C04FF0000BACF800609B072A +:10278000229C2680239F3E80259EA6F800B044BF51 +:102790000123ACF80030530744BF01232380130703 +:1027A00002D50120388007E0B4F90030012B1CBFAE +:1027B000B7F90030012B01D101208CE0209BC145ED +:1027C00003D103AAFFF775FD25E0F14503D103AA64 +:1027D000FFF7A6FD1FE0D1451CBF42F2B664A1453C +:1027E00006D1009303AB02F01002FFF7D0FD12E018 +:1027F00042F2B86291451CBF40F6BB32914503D10D +:1028000003AAFFF7FFFD06E042F2B762914504BF5D +:1028100003AAFFF735FE189809A9FFF7E7FB3080F8 +:10282000012805D103A909A8FFF766FC002852D0AA +:10283000DDF874A0002603A806A950F8260041F888 +:1028400026005AF82610401A03A941F8260000F580 +:10285000EA402F304EF65F21884202D324980121AE +:102860000180761C032EE6DB24981A9CB0F9000048 +:10287000012809D12046FFF7ABFB06A80EC8AAE83D +:102880000E000020019006E00398ADF804000498C3 +:10289000ADF806000598ADF8080023461E982021E3 +:1028A000B0F9002001A809F0E7F81B9C1C9BBDF9BA +:1028B000640001AA2146FFF739FE60B11E98234645 +:1028C000B0F90020202101A809F0D6F81F9A21466E +:1028D0002846FFF789FC0FB0BDE8F08F2800000004 +:1028E0000000030050000000000002005000010042 +:1028F000FEFF02002DE9F04F93B004460D469046CE +:102900000FA80FF6A4110B22E0F7B2FC0BA80FF6EC +:10291000A4110E22E0F7ACFC08A80FF6A8110B22B8 +:10292000E0F7A6FC04A80FF6A8110E22E0F7A0FC21 +:102930000020ADF802000120ADF800004FF00809BA +:1029400000F0EFF8B9F10109FAD100260DF13C09C8 +:1029500016F8097057B100F0E4F8BDF80000381A15 +:10296000543006F80900761C102EF1DB102E04DA24 +:1029700000F0D7F8701C06B2F8E700270BAE17F886 +:1029800006A0BAF1000F0AD000F0CBF8BDF80000A5 +:10299000AAEB00002A38B8557F1C102FEFDB102F50 +:1029A00000A804DA00F0BFF8781C07B2F7E700F0DF +:1029B000BAF8BDF8001043F2EF20401AADF80E004F +:1029C00000F0AFF8BDF80010DFF80405401AADF8CC +:1029D0000C0000F0A6F8BDF80010DFF8F804401A6B +:1029E000ADF80A0000F09DF8BDF80000C0F57F5773 +:1029F00000F097F8BDF80010DFF8DC04401AADF8DD +:102A0000080000F08EF8BDF8001042F21F50A0EB55 +:102A1000010A00F086F8BDF8001040F64120A0EB56 +:102A2000010B00F07EF8BDF8001042F65F70401A0E +:102A3000002111F80920002A04BF0B5D002B05D0EE +:102A40000B5D934266D1491C1029F2DB102902D19B +:102A5000217C00295ED100218A5D002A04BF4B5DE4 +:102A6000002B05D04B5D934254D1491C1029F3DB58 +:102A7000102902D1297C00294CD1002108AA8A5CA6 +:102A8000002A04BF0B5D002B05D00B5D934241D1A2 +:102A9000491C1029F2DB102902D1217C002939D1EF +:102AA000002104AA8A5C002A04BF4B5D002B05D0DC +:102AB0004B5D93422ED1491C1029F2DB102901D124 +:102AC000297C39BBB8F90010BDF90E20914202BF34 +:102AD000B8F90210BDF90C2091421BD1B8F90410CD +:102AE000BDF90A209142A4BF3AB28A4212DBB8F97A +:102AF0000610BDF908209142A4BF0FFA8AF28A425B +:102B000008DBB8F908100FFA8BF29142A4BF00B2AB +:102B1000884202DADFF8C40300E0012013B0BDE808 +:102B2000F08F00A8FFE7B0F902108180B0F9002013 +:102B3000428051180180704770B50546049C059885 +:102B40002960C5F88C211E460246012321462846ED +:102B500000F077F90020A5F88801A5F88A61A5F8AA +:102B6000F001A5F8F20170BD2DE9F04FD5B0054692 +:102B70000E4617461C462AA80FF26471A822E0F7F9 +:102B800077FB15A80FF600015422E0F771FB0EA8A1 +:102B90000FF648011C22E0F76BFBDFF840833A4652 +:102BA00031462846FFF7A6FE404508BF404615D0EF +:102BB000BDF97C01411E89B220293EBFB4F98A11BA +:102BC00089B2022909D2B4F9841189B211293EBF10 +:102BD000B4F9861189B2032901D300202EE1002126 +:102BE000ADF818100591461E5E985E90002560981D +:102BF000ADF8800136B26198ADF884014FF0060B54 +:102C00006298629034E00BFB0142491CB2F9243116 +:102C100002F592729844B2F90230B2F90420994454 +:102C20009244B7F916209142EDDB629A00FB08F15D +:102C3000C913118000FB09F1629AC913518000FB8E +:102C40000AF06299C0138880B4F98401B7F91410AE +:102C500088420BDBB4F98601022807DA0020A4F8C9 +:102C60008401B4F88601401CA4F88601761E36B2B1 +:102C7000002E00F1D980B4F986012368B4F98A11D5 +:102C80001C2212FB00F2002B03BF54232AAF13FBBC +:102C9000017353F8213002EB0308BDF98021B8F924 +:102CA0000070B8F9049002B90021BDF9842102B97D +:102CB0000020D4F88C311C2212FB00F2002B07A854 +:102CC00003BF54230DF1540C13FB01C153F8211021 +:102CD00051181C22E0F7BCFA5E98ADF81C70ADF8F4 +:102CE00020901BFB06090020039004A8029004F525 +:102CF000F870019005A8009004F5C873221D07A97B +:102D0000484600F0F3F801281DD1B4F98A010128E2 +:102D10000ADAB8F91810002906D4B4F9F0218A4269 +:102D2000A4BF401CA4F88A01B4F98A0101280ADB77 +:102D3000B8F91A10002906D4B4F9F0219142A4BFC1 +:102D4000401EA4F88A01B4F98611B4F98A012368F7 +:102D50001C2212FB01F25BB9B4F98431002B04BFD1 +:102D600000290EAF07D054212AAB11FB003001E03F +:102D700053F820001718BDF9100001280FD1039057 +:102D800004A8029004F5C470019005A8009004F115 +:102D9000C403221D3946484600F0A8F801287FF4F4 +:102DA00065AFB4F984016D1C1028B4BF401C10201D +:102DB000A4F8840104F592730122102105A808F0FB +:102DC0005BFEB4F984010228A4BFB7F916100229EA +:102DD00005DA629805A90622E0F73AFA34E74FF0DF +:102DE000000AD146C846884219DA0146012008F097 +:102DF000BBFE0021B4F984219142BFF616AF1BFB44 +:102E00000142491CB2F9243102F592729844B2F998 +:102E10000230B2F904209944924409B2EAE7012051 +:102E200008F0A2FE0021FCE6B4F984010028B4F801 +:102E3000860118BF401C6399087028B255B0BDE8E0 +:102E4000F08F2DE9F84F82468B4616463BB30AF1C8 +:102E5000C4070AF1040400254FF00608DFF880904B +:102E600015FB084000F03EF86D1C202DF8DB002417 +:102E700014FB087000F036F8641C102CF8DB0027F7 +:102E800008FB07A404F5927000F02CF804F5C87054 +:102E900049464246E0F7DCF97F1C102FF0DB0AF5CB +:102EA000C277012E03DA0020AAF884010DE0012088 +:102EB000AAF884010AF5927301221021584608F0FD +:102EC000DBFD042EB4BF701E02207880BDE8F18FB8 +:102ED000ED9EFFFFDEA5FFFF60E5FFFF0080FFFF27 +:102EE0004033030849460622E0F7B2B92DE9F04322 +:102EF00016460FF2045204468846D2E9000191B00A +:102F00009946CDE90001B8F90000012845DB1A9D7A +:102F100000202880BDF96C7097B93088218800F0B6 +:102F200087F8ADF800007088618800F081F8ADF88E +:102F30000200B088A18800F07BF8ADF8040001E041 +:102F4000012F16D0B8F90400BDF900108142A1BFCD +:102F5000BDF902108142BDF90410814263DB47B91B +:102F6000B8F9001033460122204608F085FD012003 +:102F700028800620B8F9001011FB006047F6FF72A8 +:102F800030F9063C934202BF801FB0F902309342F1 +:102F900004BFB0F90400904201D1002045E006A82A +:102FA000019004A8009008AB0AAA304608F08BFDF7 +:102FB000B8F900104FF0FF3304AA304600F05CF976 +:102FC000199D189C03A8019000950CABB8F900104E +:102FD0002246304600F030F80746012304AA0121BA +:102FE000204600F049F9B8F902104B46012220466C +:102FF00008F042FD0FB900240DE0BDF90C0002906D +:103000000CABB5F9000001900097424649463046A6 +:1030100000F064F80446B8F90010012304AA304611 +:1030200000F02AF900E00024204611B0BDE8F0834A +:10303000401A00B208F0D2BD2DE9F04190B016461A +:103040001D46179F0446884608AB2A4608F0F2FD45 +:103050000021062300224B4303EB050C0DF1280E43 +:103060003CF812C09E442EF812C0521C032AF3DB17 +:10307000491C0329EDDB169D042827D104AB06AAC1 +:1030800003210AA809F025F808B302A8019008A8AE +:10309000009004AB06AA03210AA809F06BF8BDF959 +:1030A00008008010308002A80423B0F902108910B3 +:1030B00071803246B0F904008010B080019700950D +:1030C0004146204600F074F8042004E00020B0805F +:1030D00070803080288010B0BDE8F081F0B58FB0EE +:1030E0000446084615461499BDF958201E46042981 +:1030F0005BD1BDF95410B5F910308B42BCBFB5F9A6 +:103100000E309942BFBFD202B5F9123013FB01F164 +:103110008A424ADA05A9019107A9009109ABB5F9DC +:1031200002100BAA08F0CFFCB5F90A00BDF9141083 +:103130008142BFBFBDF916108142BDF9181081420E +:1031400033DA03A8019007A8009009ABB5F9001085 +:103150000BAA204608F0B7FCBDF90E10BDF90C20F3 +:10316000BDF91000B5F90630BDF90C7001FA82F214 +:1031700002FA80F2BB42BCBF8B42834215DAB5F93A +:103180000800824211DB02A800900DABB5F90010D7 +:103190003246204608F088FE38B1B5F90C00BDF97A +:1031A00008108842B8BF012000DB00200FB0F0BD3E +:1031B0002DE9F84F0B9F04468B461646042B3AD157 +:1031C000E05EF15EB6F90220B6F90030401AB4F9BB +:1031D0000210891AB4F90020D21A494302FB0211E5 +:1031E00000FB0018404609F02DF88146CA4601252B +:1031F0005D4524DA062068430219B6F90430B2F9B5 +:103200000410B2F90220005FC91AB6F90230D21ACE +:10321000B6F90030C01A524300FB002001FB010048 +:10322000804409F00FF88145B8BF81465045D8BFAA +:1032300082466D1CDCE74FF00008C246C146594685 +:10324000012008F091FC0146C0F3C00000EB211002 +:10325000C8F380110A9C01EBE811484308F0F2FF23 +:1032600020808110C0F3400001FA80F02080A9EB9B +:103270000A003880BDE8F18FF0B5002411E0062681 +:10328000002506FB040636F9157032F915C013FB4C +:103290000C7707F30F0726F815706D1C032DF2DB72 +:1032A000641C8C42EBDBF0BD24587DDD6E59C83CBC +:1032B000094A0000AEB1E00F8B40603D5F4620F64A +:1032C000A700000041534148494B41534549000084 +:1032D00053454330393931314E5346535400000081 +:1032E0001000030010009000A003500040008F0465 +:1032F0002C01F401030003008002FFFF140006000C +:103300003000B00080044000900041032C01CC014B +:10331000030003008002FFFF180008003000D00007 +:10332000E0042800E00041032C01A4010300030095 +:103330008002FFFF1000030010009000A003500067 +:1033400040008F042C01F40103000300FFFFE001A3 +:10335000140006003000400120085000F0008F04E7 +:10336000A101180103000300FFFFE001180008009D +:1033700030008001C008300090018F04F401180172 +:1033800003000300FFFFE0011000030010009000A5 +:10339000A003500040008F042C01F401FF00030043 +:1033A000FFFFFFFF1400030030009000A003500057 +:1033B00040008F042C01F401FF000300FFFFFFFF1A +:1033C0001800030030009000A003500040008F045C +:1033D0002C01F401FF000300FFFFFFFF08000200C3 +:1033E00010009000A003500040008F042C01F40155 +:1033F000FF000100FFFFFFFF0000000000000000D1 +:1034000030B5154604460622DFF722FF002D47BFE0 +:103410000020E080E580012030BD10B5002231F9A8 +:10342000123030F912401B1B48BF5B42B0F9064016 +:10343000A34204DB0622DFF70BFF012010BD521C64 +:10344000032AECDB002010BD2DE9F0471F4682B0B7 +:10345000804689469246012F25DB0A9D00243AF9D1 +:10346000141001291FDB38F9140039F91420861AC9 +:1034700000AA384608F0C2FBBDF9001070430F31B6 +:1034800001290BDBBDF80010BDF800200F3140FA18 +:1034900001F10E32104100F00100401800F500412A +:1034A000B1F5803F01D3002005E025F81400641C2D +:1034B000032CD4DB0120BDE8F687000080B5584915 +:1034C0000978491C564A1170017A491E0172C9B225 +:1034D000002901D108F02EFFE0F74BFD01BD38B502 +:1034E0000400504805680BE0287A002807D0686877 +:1034F000A04204D1012028722800FFF7DFFFED6809 +:10350000002DF1D131BD38B50400474800780028BE +:1035100002D0A120E7F796FCE0F7EAFC41480568F5 +:1035200005E0A54202D1AF20E7F78CFCED68002D45 +:10353000F7D13E483E490160142200212000E6F701 +:1035400046FA69202074E7F7EAFC36480068E06034 +:103550003448046032484078F021084202D0992073 +:10356000E7F770FC2E484078002801D1E7F7D1FC3E +:1035700031BD38B504002C480078002802D0A120C5 +:10358000E7F760FCE0F7B4FC207C692802D08520D6 +:10359000E7F758FC22480078401C21490870207A3F +:1035A000002804D11E4880686060012510E0606832 +:1035B0001B498968884209D01021200001F094FA43 +:1035C000207A0028F8D1164880686060207A451C6F +:1035D0002572E0F7CEFC280032BD10B50400124879 +:1035E0000078002802D0A120E7F72CFCE0F780FC4F +:1035F000207C692802D08520E7F724FC207A002867 +:1036000002D19620E7F71EFC606805498968884268 +:1036100002D09C20E7F716FC2000FFF74FFF10BDFB +:10362000A4800020C83C0120123D0120DC3C012088 +:10363000DF34020800F5E0700268914203D343686A +:103640009A18914202D380680028F5D17047DFF8BC +:103650002007016899B94FF48031816004224FF44A +:10366000805141604FF0FF31C1600161042141612F +:10367000DFF80017C1F8BC21DFF8FC16016001205B +:10368000704701F1080313F0070305D001F10803A7 +:10369000C3F1080303F007035918D21A8161C2600D +:1036A00042F001034B60511828224A60DFF8C0162F +:1036B0000969C16170472DE9F84F044601F108001E +:1036C00010F0070005D001F10800C0F1080000F07B +:1036D000070000EB010B02F1080010F0070005D015 +:1036E00002F10800C0F1080000F007008618A6EB00 +:1036F0000B00A0EB030803EB0B0743F00300CBF830 +:103700000400B74228BF08F033FE3079C00758BF25 +:1037100008F02EFEB8F1100F38BF08F029FEA0699E +:10372000864207D1E0684044E060A76140F00100B4 +:1037300078605AE16069864208D1A0684044A06080 +:10374000676140F001017960C0514EE1706800F09E +:103750000301012940F0AD80C0084FEAC0092028CC +:103760003BD2D6F808A0F5680090AE4208BF08F03A +:10377000FFFD564508BF08F0FBFD70680099C008C2 +:10378000C000B0EBC10F18BF08F0F2FD009804EBC9 +:10379000C00000F128018A4508D021698A45C0F09F +:1037A0008480DAF80C10B14240F07F80554506D194 +:1037B000009A2068012191408843206077E02830FA +:1037C000854205D0206985426FD3A868B0426CD18C +:1037D000CAF80C50C5F808A069E0F568D6F818A03A +:1037E000B5420CD0B0682169884223D3C168B14288 +:1037F00004BFA968B1421DD1C560A8601CE006F1F4 +:103800001400056835B906F110000568A5B101E09E +:103810000846056805F114010A68002A02BF05F18F +:1038200010010A68002AF3D12169884202D30021DD +:10383000016001E008F09CFDBAF1000F37D0F0699B +:1038400004EB800000F5987001688E4209D1056094 +:10385000280014D1F26960680121914088436060BA +:1038600025E02069824508D3DAF81000B04214BF81 +:10387000CAF81450CAF8105001E008F079FDB5B14B +:103880002069854211D3C5F818A0316929B1814258 +:1038900026BF29618D6108F06BFD706938B121691F +:1038A000884202D36861856101E008F061FD4E4401 +:1038B000C84470684008400070604FEAD80548F07E +:1038C0000100786048F80780202D21D204EBC50064 +:1038D00000F12806B146B8F1100F38BF08F048FDD6 +:1038E000206820FA05F1C90704D40121A940084342 +:1038F000206006E0B068216988422CBF814608F04C +:1039000037FDB760C9F80C70C7F80890FE606CE02E +:103910005FEA182008BF002123D0B0F5803F28BF00 +:103920001F211ED2A0F58071090C01F0080188400A +:10393000A0F58052120C02F004029040A0F58043E2 +:103940001B0CC1F10E0103F00203891AC91A984039 +:1039500001EBD030C11D28FA01F101F0010101EBAA +:103960004001F96100227A613A6104EB81006268EA +:1039700022FA01F300F59870DB0706D4012303FA5D +:1039800001F11143616007601CE01F2900680EBF50 +:1039900000214908C1F1190108FA01F100E01046BF +:1039A0004268D208D200424510D0CA0F00EB820212 +:1039B00002F1100349001A68002AF0D121698B42F4 +:1039C00011D31F60B861FF60BF600EE0226981689B +:1039D000904228BF914206D3CF608760B960F860FB +:1039E0000020B86101E008F0C3FC0BF10800BDE85D +:1039F000F28F2DE9F04F0546DFF87403006883B0BD +:103A0000884608B9FFF723FEDFF86403806800EBFF +:103A100008012F31401E21EA0000804580F0A58179 +:103A2000D5F8B81141B1D5F8B0218018824280F0A4 +:103A30009C818142C0F0998108F09EFC00281EBF45 +:103A40000446076814F1010F00F08F81D5F8B0012A +:103A50003818C5F8B001D5F8B411814238BF014615 +:103A6000C5F8B411A86968BB286908B1844200D2BE +:103A70002C61C5F8C041C5F8C4710020C5F8CC015F +:103A80002021BB48006868624FF0FF30286228465A +:103A900000F128020830D2609260491EF8D1B54882 +:103AA000854203D1A7F12802214625E055F8040CF0 +:103AB000C00805EBC000A0F108013819401AA0F1B8 +:103AC000280219E005F5E071084600E08068B8B109 +:103AD00042680368D2189442F8D1027B12070FD4CF +:103AE000AA699A420CD3466833449A4208D2B9195B +:103AF0004160E868A9693A182846FFF7C2FD1FE14E +:103B00002869844238BF2C610846391900E0806872 +:103B100080B102688A42FAD1017B09070AD40460A5 +:103B200043464168791841602846214603B0BDE804 +:103B3000F04FC0E5AE6931462846FFF77BFD41688E +:103B40000068081801902F3800F1080111F00701F2 +:103B500005D000F10801C1F1080101F0070101EBF6 +:103B6000000906F11000814538BFB14609F108008F +:103B7000009004F1080109F1180A4FF0000BA7F1B9 +:103B8000280011F0070105D004F10801C1F1080176 +:103B900001F007010A19401AAA61E86040F001012A +:103BA000516080182821416071480069E8610098DF +:103BB00010F0070018BF08F0DBFB1B20C9F8040059 +:103BC00005F5E071B1E80C500098A0E80C50C5F87C +:103BD000C041C5F8C471C5F8CCB10098C5F8C8019A +:103BE000019800E08A460722CAF804200AF104017D +:103BF0000A1D0BF1010B8242F4D3BBF1020FB8BFD7 +:103C000008F0B6FBB14500F09B80A9EB06008119D6 +:103C10004FEAD0094A68520852004A6040F0010158 +:103C200071608051B9F1200F1FD205EBC90101F17C +:103C300028042746102838BF08F09AFB286820FA85 +:103C400009F1C90705D4012101FA09F108432860E7 +:103C500006E0A068296988422CBF074608F088FB67 +:103C6000A660FE60B760F4606AE0010A08BF002247 +:103C700023D0B1F5803F28BF1F221ED2A1F580724C +:103C8000120C02F008029140A1F580531B0C03F0C6 +:103C900004039940A1F58044240CC2F10E0204F003 +:103CA0000204D21A121BA14002EBD131CA1D20FA24 +:103CB00002F202F0010202EB4102F26100237361A1 +:103CC000336105EB82016B6823FA02F401F5987108 +:103CD000E40705D401209040184368600E601CE0A2 +:103CE0001F2A09680EBF00225208C2F1190200FA09 +:103CF00002F200E019464B68DB08DB00834210D07B +:103D0000D30F01EB830303F1100452002368002B4F +:103D1000F0D12869844211D32660B161F660B660A3 +:103D20000EE02A698868914228BF904206D3C66097 +:103D30008E60B060F1600020B06101E008F018FB17 +:103D4000E868804511D2A0EB0800E86040F001006F +:103D5000A96908EB0102AA61506048F003004860BD +:103D600003B001F10800BDE8F08F002000F02BBC8B +:103D7000F0390120880701206859883C2DE9F84F67 +:103D8000044688460026C8F1000B5FEA182008BFE9 +:103D9000002123D0B0F5803F28BF1F211ED2A0F5FF +:103DA0008071090C01F008018840A0F58052120CC6 +:103DB00002F004029040A0F580431B0CC1F10E01FB +:103DC00003F00203891AC91A984001EBD030C11DD3 +:103DD00028FA01F101F0010101EB400104EB81003F +:103DE000D0F8300130B31F290EBF00224A08C2F1BB +:103DF000190208FA02F2002300E052004568ED08BB +:103E0000ED00A5EB08055D4503D206465FEA050B0C +:103E10000CD045694FEAD27E00EB8E00002D006980 +:103E20001CBF85422B460028E7D1184600283AD10E +:103E3000002E3AD101208840400041420843616889 +:103E4000084000F05F8141420840411E080B00F02D +:103E5000100021FA00F2510901F00801CA4093084C +:103E600003F00403DA40550805F002050818EA409B +:103E70001818C2F3400E2844704422FA0EF10818B4 +:103E800004EB8000D0F830010DE008464168C90815 +:103E9000C900A1EB080159453CBF8B4606460169A4 +:103EA0000029F2D140690028F0D1002E00F02A81CB +:103EB000A068A0EB0800834580F024812069864239 +:103EC000C0F01E817068C00808EB0B09C00008EB49 +:103ED0000605484518BF08F04BFAAE4280F0108145 +:103EE000F768D6F818A0B7420CD0B06821698842AC +:103EF00023D3C168B14204BFB968B1421DD1C760C4 +:103F0000B8601CE006F11400076837B906F110002C +:103F10000768A7B101E00846076807F114010A68BD +:103F2000002A02BF07F110010A68002AF3D12169B3 +:103F3000884202D30021016001E008F019FABAF1C9 +:103F4000000F38D0F06904EB800000F5987001682C +:103F50008E4209D10760380014D1F26960680121EE +:103F600091408843606026E02069824508D3DAF8F2 +:103F70001000B04214BFCAF81470CAF8107001E003 +:103F800008F0F6F9BFB12069874212D3C7F818A02C +:103F9000306930B12169884226BF3861876108F0F5 +:103FA000E7F9706938B12169884202D37861876185 +:103FB00001E008F0DDF9BBF1100F09D249F0030070 +:103FC000706009EB0600416841F00101416096E034 +:103FD00048F0030070604BF0010068604BF805B0DA +:103FE0004FEADB0020281DD204EBC00101F12807B5 +:103FF000216821FA00F2BB46D20705D4012202FA59 +:1040000000F00843206006E0B868216988422CBFB0 +:10401000834608F0ADF9BD60CBF80C50C5F808B088 +:10402000EF606CE05FEA1B2008BF002123D0B0F5F1 +:10403000803F28BF1F211ED2A0F58071090C01F01E +:1040400008018840A0F58052120C02F00402904052 +:10405000A0F580431B0CC1F10E0103F00203891A85 +:10406000C91A984001EBD030C11D2BFA01F101F0C3 +:10407000010101EB4001E96100226A612A6104EB60 +:104080008100626822FA01F300F59870DB0706D41C +:10409000012303FA01F11143616005601CE01F294F +:1040A00000680EBF00214908C1F119010BFA01F1A6 +:1040B00000E010464268D208D2005A4510D0CA0F1C +:1040C00000EB820202F1100349001A68002AF0D1C5 +:1040D00021698B4211D31D60A861ED60AD600EE0D7 +:1040E00022698168904228BF914206D3CD608560E5 +:1040F000A960E8600020A86101E008F039F907E153 +:1041000008F036F901E12DE9F84F04468846606869 +:1041100041420840411E080B00F01000C1404A090E +:1041200002F00802D1408B0803F00403D9404D0887 +:1041300005F002051018E9401818C1F3400628449C +:104140003018F140081804EB8000D0F830014168C5 +:10415000C908C9000646A1EB080A09E008464168FB +:10416000C908C900A1EB080151453CBF8A46064673 +:1041700001690029F2D140690028F0D12069864206 +:10418000C0F0C1807068C00808EB0A09C00008EBE5 +:10419000060B484518BF08F0EBF85E4580F0B38089 +:1041A000F768B569B7420CD0B0682169884223D35B +:1041B000C168B14204BFB968B1421DD1C760B860DF +:1041C0001CE006F11400076837B906F11000076813 +:1041D000A7B101E00846076807F114010A68002A40 +:1041E00002BF07F110010A68002AF3D12169884251 +:1041F00002D30021016001E008F0BAF8002D34D0AC +:10420000F06904EB800000F5987001688E4209D1D6 +:104210000760380011D1F26960680121914088433C +:10422000606022E02069854205D32869B04214BF4E +:104230006F612F6101E008F09BF8B7B120698742F8 +:1042400011D3BD61306930B12169884226BF386120 +:10425000876108F08DF8706938B12169884202D30E +:104260007861876101E008F083F8BAF1100F09D294 +:1042700049F00300706009EB0600416841F001015C +:1042800041603FE048F0030070604AF00100CBF865 +:1042900004004AF80BA0D4F808804FEAD805202D76 +:1042A00028BF08F065F8B8F1000F27D0D4F81490B3 +:1042B000009504EBC50000F128052F46B8F1100F5A +:1042C00038BF08F055F82068009920FA01F1C907B5 +:1042D00005D4009A012191400843206006E0A868B7 +:1042E000216988422CBF074608F042F8C5F80890BB +:1042F000C7F80C90C9F80870C9F80C50C4F808A0A9 +:10430000C4F814B004E008F033F80020BDE8F28FE0 +:1043100006F10800BDE8F28F2DE9F04F83B00546A5 +:10432000C046C046DFF8B847F52D80F001810B2D5F +:1043300031BF102705F10B00C008C7002068FE0838 +:10434000F04010F0030F42D0C04300F00100861986 +:1043500004EBC60000F12808F700D8F80850686898 +:10436000C008C000B84218BF08F002F8D5F808909D +:10437000454508BF07F0FCFF4D4508BF07F0F8FFB3 +:104380006868C008C000B84218BF07F0F1FFC84510 +:1043900005D120680121B140884320600DE02069EB +:1043A000814508D3D9F80C00A84204D1C8F8089078 +:1043B000C9F80C8001E007F0DBFF47F003006860FC +:1043C00078190835416841F001014160F8E0A168C1 +:1043D000B94280F0BF80002800F0A180012505FAD5 +:1043E00006F149004A42B0401143084041420840AA +:1043F000411E080B00F01000C1404A0902F00802FB +:10440000D1408B0803F00403D9404E0806F00206A1 +:104410001018F1401818C1F340083018404421FA30 +:1044200008F101EB000804EBC80000F128094FEA8D +:10443000C80AD9F808607068C008C000504518BFA5 +:1044400007F096FFD6F808B04E4508BF07F090FF7A +:104450005E4508BF07F08CFF7068C008C00050457B +:1044600018BF07F085FFD94505D1206805FA08F186 +:10447000884320600DE02069834508D3DBF80C00F9 +:10448000B04204D1C9F808B0CBF80C9001E007F0B5 +:104490006FFF47F003007060AAEB0708B81901909E +:1044A00048F001014160019848F80080A7684FEA90 +:1044B000D70ABAF1200F28BF07F05AFF47B3CDF84B +:1044C00000A004EBCA00D4F8149000F1280AD346E7 +:1044D000102F38BF07F04CFF2068009920FA01F137 +:1044E000C90705D4009905FA01F10843206007E0E7 +:1044F000DAF80800216988422CBF834607F038FFAC +:10450000CAF80890CBF80C90C9F808B0C9F80CA00C +:10451000C4F8088006F108050198606150E0606801 +:10452000C0B339462046FFF7EEFD050012D047E044 +:1045300015F1400F28BF4FF0FF370BD205F10B00EC +:10454000C008C700606828B139462046FFF716FC4E +:10455000050035D1A168B9421CD3CA1B6069102A75 +:104560000AD339186161A26042F001034B605250D6 +:1045700047F0030141600AE00022A260626141F05D +:104580000302426009184A6842F001024A6000F1E1 +:10459000080515E0E06887420DD2C01BA169E06004 +:1045A0007A18A26140F00100506001F1080547F05F +:1045B0000300486004E039462046FFF71AFA054632 +:1045C000C046C046284603B0BDE8F08F00B970472A +:1045D0002DE9F047A0F10804C046C046DFF80055B9 +:1045E00028698442C0F07582616801F00302012AE3 +:1045F00000F06F82CA084FEAC20808EB0409CA0734 +:1046000037D4226811F0030F00F0658251420C1973 +:1046100090448442C0F05D8269698C4200F0D88089 +:10462000D608202E70D2D4F80CA0A768544508BF35 +:1046300007F09EFEBC4208BF07F09AFE6068C00803 +:10464000C000B0EBC60F18BF07F092FE05EBC60026 +:1046500000F128018F4205D029698F4251D3F968B2 +:10466000A1424ED1BA453DD128680121B1408843CD +:1046700028604C4580F02D82D9F80400C10740F134 +:104680002882810700F17A81A969894540F0B580C7 +:10469000E868AC614044E86040F00101616069692C +:1046A0008C4202D100216961A960E969814280F0F0 +:1046B0001282DFF83004006808B9FEF7C8FFA96964 +:1046C000002900F00882E868292824BF2846FEF760 +:1046D000B1FFE869E968884280F0FD814FF0FF3062 +:1046E000E861F8E12830824506D02869824508D380 +:1046F000DAF80800A04204D1C7F80CA0CAF8087084 +:10470000B7E707F035FEB4E7E768A669A7420BD024 +:10471000A168814222D3C868A04204BFB868A04201 +:104720001CD1CF60B9601BE004F114010F6837B9E8 +:1047300004F110010F689FB101E011460F6807F105 +:1047400014021368002B02BF07F110021368002B3C +:10475000F3D1814202D30020086001E007F008FE97 +:10476000002E86D0E06905EB800000F598700168A6 +:104770008C4209D10760380011D1E26968680121D3 +:1047800091408843686074E72869864205D33069A0 +:10479000A04214BF7761376101E007F0E9FD002F07 +:1047A0003FF467AF28698742ABD3BE61216929B165 +:1047B000814226BF39618F6107F0DAFD6069002808 +:1047C0003FF457AF296988429BD37861876150E7EE +:1047D00099F8040000F0030003287FF44AAFC5F8FD +:1047E0000880D9F8040040084000C9F8040048F0E7 +:1047F0000100606048F804806DE16969894508D16D +:10480000A8686C614044A86040F0010161600051FB +:1048100061E1C008C0004FEAD00A8044BAF1200F1D +:1048200036D2D9F80C70D9F80860B94508BF07F03E +:104830009FFDB14508BF07F09BFDD9F80400C008F3 +:10484000C000B0EBCA0F18BF07F092FD05EBCA001D +:1048500000F128018E4206D029698E42C0F0818085 +:10486000F16849457DD1B74206D12868012101FA96 +:104870000AF18843286076E02830874205D028690D +:1048800087426ED3B86848456BD1F760BE606AE076 +:10489000D9F80C70D9F818604F450DD0D9F8080038 +:1048A0002969884223D3C168494504BFB96849458D +:1048B0001DD1C760B8601CE009F11400076837B962 +:1048C00009F110000768A7B101E00846076807F181 +:1048D00014010A68002A02BF07F110010A68002AC1 +:1048E000F3D12969884202D30021016001E007F079 +:1048F0003FFD002E37D0D9F81C0005EB800000F5F5 +:104900009870016889450AD10760380012D1D9F83A +:104910001C206868012191408843686023E0286971 +:10492000864205D33069484514BF7761376101E09D +:1049300007F01EFDBFB12869874212D3BE61D9F8C6 +:10494000101029B1814226BF39618F6107F010FD37 +:10495000D9F8140038B12969884202D37861876197 +:1049600001E007F005FD48F00100606048F80480B0 +:10497000686984420BD1C5F80880ACE0400840006B +:10498000C9F8040048F00100606048F804804FEA6C +:10499000D807202F22D205EBC70000F128094E4688 +:1049A000B8F1100F38BF07F0E3FC286820FA07F1D0 +:1049B000C90704D40121B9400843286007E0D9F8A9 +:1049C0000800296988422CBF064607F0D1FCC9F8C7 +:1049D0000840F460A660C4F80C907CE05FEA182000 +:1049E00008BF002123D0B0F5803F28BF1F211ED271 +:1049F000A0F58071090C01F008018840A0F58052F3 +:104A0000120C02F004029040A0F580431B0CC1F18F +:104A10000E0103F00203891AC91A984001EBD03045 +:104A2000C11D28FA01F101F0010101EB4001E16132 +:104A300000226261226105EB81006A6822FA01F3BB +:104A400000F59870DB0706D4012303FA01F1114346 +:104A5000696004601CE01F2900680EBF002149083E +:104A6000C1F1190108FA01F100E010464268D208CC +:104A7000D200424510D0CA0F00EB820202F11003AF +:104A800049001A68002AF0D129698B4211D31C60B1 +:104A9000A061E460A4600EE02A698168904228BFAA +:104AA000914206D3CC608460A160E0600020A061E8 +:104AB00001E007F05DFC286A401E28620BD1D5F8A2 +:104AC000C80100E080680028FCD14FF0FF30286268 +:104AD00001E007F04DFCC046C046BDE8F08700008D +:104AE00088070120F039012030B585B004000D00A1 +:104AF000029401940C4880680390E6F710FA20684D +:104B0000009000A820600098002802D0009800A91A +:104B100041600548806800A9816003488068057489 +:104B2000DFF7FDFA05B030BDA480002038B5027E65 +:104B3000C3684469E3180469A34201D304691B1BD9 +:104B4000534384680D781D55491C5B1C521E002A76 +:104B5000F7D1C168491CC160012902D107F0EAFB05 +:104B60000DE025484078F021084202D09920E6F770 +:104B700069F921484078002801D1E6F7CAF931BD2A +:104B800010B50400207E62694243A368D35C0B70B9 +:104B9000521C491C401E0028F7D16069401C60610E +:104BA0002169884201D300206061E068411EE16014 +:104BB0002169884211D110484078F021084202D082 +:104BC0009920E6F73FF90C484078002801D1E6F734 +:104BD000A0F9200007F0AEFB0DE007484078F02177 +:104BE000084202D09920E6F72DF9034840780028C2 +:104BF00001D1E6F78EF910BDA4800020704704B5FE +:104C00000B46022200A91818E0F766F901BD000062 +:104C10000A18414004D4504002D54FF0004070477C +:104C200010467047421A414004D5504002D54FF01B +:104C300000407047104670470021002804D1202012 +:104C40007047091DC9B2000110F0704FF9D000285B +:104C500003D4491CC9B24000F9E7084670472DE962 +:104C6000F84304468846B8F1000F4CD0002C01D41C +:104C7000A14601E0C4F10009B8F1000F01D4454696 +:104C800001E0C8F1000500261127280D00050ED00F +:104C9000680C401CB9FBF0F64A46A5FB0601400C27 +:104CA00040EAC130101A814601E02D093F1F15F07E +:104CB0000F0F01D1042FF8DAB9F1000F1BD0002F2C +:104CC00019D44846FFF7B8FF874200DC384609FA96 +:104CD00000F93F1AB9FBF5F000FA07F18E194FF011 +:104CE000FF31F940C94308420DD105FB10904FEA4E +:104CF00040097F1EE0E7701C400898EA040106D5D1 +:104D000010F1004F02D14FF0004000E04042BDE8FA +:104D1000F28330B581FB0045204629462F22E8F773 +:104D200007F9002D0FDC00DB0DD2C0430DD1641E4E +:104D300065F1000520462946000C40EA0140C4F315 +:104D4000C031081830BD0028F4D04FF0004030BD0D +:104D500010B50446FFF75CFF10F1004F06D1012C9F +:104D600002DB6FF0004010BD4FF0004010BD70B48A +:104D70000246D20F00D040420021030D1B0502D095 +:104D80004FF0804303E04FF4802300E09B089842FB +:104D9000FCD30C4604E0000419464FF48043641C25 +:104DA000022C08DB814200D2491C002A1AD0494259 +:104DB00018E029469B08002B07D04D085E18B0422A +:104DC000F7D3401AC01A5919F4E7002CE7D10B04A5 +:104DD000B0F5803FDFD3401A0004A0F5004003F592 +:104DE0000041DAE7084670BC7047002205E040F851 +:104DF000221000EB82031961521C036A9A42F6DB0F +:104E000070472DE9F84F0C4615461E46376A4FF09D +:104E10000008DDF8289099FBF7F107FB119A46F896 +:104E20002A00C34612E0A9EB0B00381890FBF7F1FB +:104E300007FB110056F8201054F82B00FFF769FF0C +:104E40004146FFF785FF80460BF1010BBB45EADBCE +:104E5000012413E0A9EB0400381890FBF7F107FBDD +:104E6000110006EB8000016955F824004042FFF76D +:104E700050FF4146FFF76CFF8046641CBC42E9DBF3 +:104E800006EB8A00C0F810804046BDE8F28F70B58E +:104E900004460D012068401C2060E1682846FFF7A9 +:104EA000C1FE06462068022808DB01043046FFF7F1 +:104EB000D6FE0146E068FFF7ABFE00E02846E06062 +:104EC000206802280CDBE1682846FFF7ABFE0146AC +:104ED0003046FFF71EFF0146A068FFF799FE00E08D +:104EE0000020A0602068022805DB401E0104A068A5 +:104EF000FFF7B5FE00E000206061FFF738FF20619A +:104F00000011206170BD002101604FF480514160AB +:104F100000218160C16001614161704770B5044644 +:104F20000020024620E0DFF89C1641F82020DFF840 +:104F3000981641F82020DFF8941641F82020DFF879 +:104F4000901641F82020DFF88C1641F82020DFF879 +:104F5000881641F82020DFF8841641F82020DFF879 +:104F6000801641F82020401C1828DCDB10460EE09B +:104F7000DFF8701641F8202001EB80018A600A6199 +:104F80008A610A628A620A638A630A64401C022890 +:104F9000EEDBDFF8545610462864064609E000218F +:104FA00006EBC60005EB800000F59C70FFF71DFFC7 +:104FB000761C032EF3DB002609E0002106EBC60079 +:104FC00005EB800000F5DA70FFF70FFF761C042E6A +:104FD000F3DB4FF48030A86541F69910E8650020B6 +:104FE000A8642846FFF78FFF0020E86428656863FF +:104FF0004FF0FF30E86228630020A863E863E866AA +:10500000A86668666864A86D2866FF202867AC6794 +:1050100001206865032068670020A86270BD2DE943 +:10502000FF4F8FB00024DFF8C05566E001202865EF +:105030000020E863686B052801DB0020E8644FF07E +:10504000FF30E862286300206863E86A10F1010F0E +:105050004AD0AF6F002F44D0D5F83CE0BEF1C80F66 +:105060003FDAEF6C2E2F02DA2F6D002F39D170440A +:10507000374690FBF7F706FB1708D5F84090DFF8A6 +:105080006475DFF840A55AF828A047F829A007EB77 +:105090008907DFF834A55AF828A0C7F808A0DFF878 +:1050A0002CA55AF828A0C7F810A0DFF824A55AF8B4 +:1050B00028A0C7F818A051F82810396252F8281013 +:1050C000B96253F828103963DFF8141551F8281025 +:1050D000B963C7F840E009F1010129640EF101014B +:1050E000E963686B401C68630CF10100314690FB7A +:1050F000F1F106FB1100A863641C1C98844280F245 +:1051000031820F9850F8240080010F9941F8240053 +:10511000109850F824008001109941F8240011984B +:1051200050F824008001119941F82400129850F899 +:1051300024008201129840F82420686D002841D094 +:10514000686F411E69670128D6DA0F9850F824105D +:1051500047F6015081420EDB109B53F82430834206 +:1051600009DB119B53F82430834204DB824202DBCB +:105170006420E867C0E7E86F421EEA670128BBDAEF +:10518000A961109850F82400E861119850F82400A3 +:105190002862129850F82400686205F19000FFF729 +:1051A00024FEE96905F1B400FFF71FFE296A05F145 +:1051B000D800FFF71AFE696A05F1FC00FFF715FE3B +:1051C0000020686505F5D27605F5D67AA86B0090C3 +:1051D00005F5DA73524631460F9850F82400FFF770 +:1051E00010FEA969FFF71EFD8146A86B009005F52A +:1051F000EC7352463146109850F82400FFF701FE38 +:10520000E969FFF70FFD8046A86B009005F5FE7376 +:1052100052463146119850F82400FFF7F2FD296AF2 +:10522000FFF700FD0746A86B009005F5087352468E +:105230003146129850F82400FFF7E3FD696AFFF742 +:10524000F1FC019005F5907605F5967AA86B009033 +:1052500005F59C7352463146A8EB0900FFF7D1FDD6 +:105260006866A86B009005F5AE735246314601980A +:10527000381AFFF7C6FDA86607EB080048440199F5 +:105280000818A96B009105F5C073524631464610C7 +:1052900000EB96708010FFF7B4FDE8661826A86A48 +:1052A000002879D105F1800A05F1880BA86B0090E0 +:1052B00005F190035A4651460F9850F82400FFF725 +:1052C000A0FDA861A86B009005F1B4035A465146B1 +:1052D000109850F82400FFF794FDE861A86B009047 +:1052E00005F1D8035A465146119850F82400FFF7AB +:1052F00088FD2862A86B009005F1FC035A465146D0 +:10530000129850F82400FFF77CFD6862A86C411CDD +:10531000A96450282ADA47F601500F9A52F824203F +:10532000824210DB109A52F8242082420BDB119A41 +:1053300052F82420824206DB129A52F8242082423C +:1053400001DB481EA864A86C292803DBE96E284607 +:10535000FFF79DFDA86B401C314690FBF1F106FB69 +:105360001100A8634FF480302866C5E60120A862CA +:105370004FF480212869FFF7CCFC286640F2DD510C +:10538000884203DB40F2DC50286605E0B0F5E17F9F +:1053900002DA4FF4E1702866E86E296E81420CDA79 +:1053A000EA6A12F1010F08D1A86B1730314690FB61 +:1053B000F1F106FB1100E86211E088420FDAE86AB9 +:1053C00010F1010F0BD0286B10F1010F07D1A86B62 +:1053D000401C314690FBF1F106FB11002863E86A9E +:1053E00010F1010F36D1E86C401CE86405F1800A29 +:1053F00005F1880BA86B009005F190035A465146C1 +:105400000F9850F82400FFF7FCFCA861A86B0090EF +:1054100005F1B4035A465146109850F82400FFF79E +:10542000F0FCE861A86B009005F1D8035A4651469C +:10543000119850F82400FFF7E4FC2862A86B009054 +:1054400005F1FC035A465146129850F82400FFF724 +:10545000D8FC6862D5F838C030469CFBF0F006FBFB +:1054600010C058496A6E41F820205749AA6E41F889 +:1054700020205649EA6E41F8202055492A6E41F80D +:105480002020544941F82090534A42F82080534B41 +:1054900043F82070524FDDF804E047F820E0E86A56 +:1054A00010F1010F3FF4D1AD2F6B17F1010F3FF455 +:1054B000CCADBC457FF4C9ADAF6F002F3FF4B8ADA4 +:1054C000D5F83CE0BEF1C80FBFF6B2ADD5F84C80C0 +:1054D000B8F12E0F03DA2F6D002F7FF4A9AD00EB8A +:1054E0000E09304699FBF0F006FB109AD5F840B053 +:1054F0003C4F344850F82A0047F82B00CDF8009074 +:1055000007EB8B07304850F82A00B860CDF80090C0 +:105510002E4850F82A003861CDF800902C4850F8F9 +:105520002A00B861CDF8009051F82A003862CDF811 +:10553000009052F82A00B862CDF8009053F82A0083 +:105540003863274850F82A00B863CEF10000386469 +:105550000BF101002864B8F12E0FFFF667AD0020B3 +:10556000286565E5286C012827DBAC6F210022D077 +:105570001C4F0E90786C0D90F86B0C90786B0B9024 +:10558000F86A0A90786A0990F86908907869079033 +:10559000F868069078680590386C0490B86B0390B2 +:1055A000386B0290B86A0190386A0090BB693A691A +:1055B000B9683868A04700202864002013B0BDE80F +:1055C000F08F0000382B0120982B0120F82B0120B0 +:1055D000582C0120B82C0120182D0120782D0120F5 +:1055E000D82D0120B0330120507C002010FB01F0A9 +:1055F000704710FB01F000F50060000100147047D7 +:1056000070B5FFE792B004460D461646402102A849 +:10561000DCF71AFF0195009623460FF21002402195 +:1056200002A8DDF7F3FD12B070BD000025732573ED +:105630002573000070B5E5E77FB50E4614461D469C +:1056400001466A0000A8DDF703FE01232A4600A9EF +:105650003046DCF7D2FD002000A902E021F810203E +:10566000401CA84209DA34F9103031F91020002B1F +:1056700046BF5B421A419A40F0E7294600A8DBF793 +:1056800022F904B070BD2DE9FB4FADF5087D9046C1 +:105690009B9C14FB04F007900FA8079900EB4100B6 +:1056A0000590949800281CBF9598002812D072B6D7 +:1056B0000FF24430CD4C0FF25C33CD4A0190C8213B +:1056C000662000902046DDF7A1FD2146C948DDF7A0 +:1056D0008BFDFEE74FF4F27100F0D8F99C9DA09984 +:1056E0009F980FF25432019400954346FFF788FFCC +:1056F0000094989A99992B464046DCF7D5FBA099DF +:105700009F98019400954346B6A2FFF779FF019553 +:105710000094889A8A9823464146DCF708FA07984D +:10572000810000F0B3F915FB04F7780006900246FB +:1057300088990FA8DDF78CFD889BA0999F9801940C +:105740000095A9A2FFF75CFF01200190999BA09909 +:105750009F980FF2F0220095FFF76CFF15FB05F004 +:10576000400008909598D0B100270AE00FA957FA99 +:1057700084F200F5006005FB0272001321F81200AC +:105780007F1CAF4212DA999830F91710959850F8AB +:105790002700002946BF494208418840E6E7089AA9 +:1057A00094990FA800EB4700DDF752FD2819C0B20D +:1057B00000900195A0999F980FF298220FABFFF7E8 +:1057C0001FFF2819ADF812002A46BDF912100FA8C4 +:1057D000DCF7FAF8A0999F980FF2802200F052F9B6 +:1057E0009A9F999904A803902B4609A802903A46DB +:1057F000012001900C2000900FA800F017FA08B9C2 +:105800000420EBE09DF8100098B123462A4609A930 +:105810004046DCF76DFB88982B46224609A9DCF749 +:1058200080FB959828B994982B462A4609A9DCF75D +:105830005FFB012001900095A0999F980FF22C2208 +:1058400009ABFFF7F7FEA0999F980FF2302200F006 +:1058500019F988982B4622460FA9DCF7B9F9294691 +:105860000FA8DCF705FB88982B4622460FA9DCF72A +:10587000FFF9DDF858A2BAF1000F1CBFBDF95C02B8 +:1058800000280BD0999A2B460FA95046FFF7D4FE5B +:10589000BDF95C128142B8BF0020B2DB29460FA8D7 +:1058A000DCF7E6FA089A89980FA9DDF7D1FC06998A +:1058B00000F0ECF80195009488998A9823460FAA85 +:1058C000DCF719F8069A88980FA9DDF7C1FCDDF816 +:1058D00074C2BCF1000F09D09E980290CDF804A0CC +:1058E0000097899B88982A462146E0470798400000 +:1058F0000290014600F0CAF8059822462146DAF7E0 +:10590000BBFC01940095234688980FAA4146DBF71B +:105910008CFF00942346059A0FA91046DCF73BF94B +:105920000194009405998A9823460FAADCF7FFF8A2 +:1059300002990598DCF76EFD959890B3002700E07A +:105940007F1CA74235DA4FF0000814E0294638B230 +:10595000FFF74CFE889A0BF500614044090132F9CB +:1059600010000914FFF745FE059907EB0A0221F81C +:10597000120008F10108A845E2DA21460FFA88F082 +:10598000FFF734FE8246999830F91810959850F830 +:105990002800002946BF494240FA01FB00FA01FBFA +:1059A000D4E701940095059A889994982B46DCF7E2 +:1059B000BEF8BDF9121022460FA8DCF705F8029ACE +:1059C0008A980FA9DDF744FC8A9BA0999F980FF253 +:1059D0008C4201940094FFF713FE01200DF50B7D1E +:1059E000BDE8F08F4800000046000000E8200120DC +:1059F0003C5E0208545E02082128737172745220C2 +:105A000026262072766563556E7363616C65642922 +:105A1000000000004B616C6D616E46696C746572CC +:105A20005F5570646174654D6561737572656D6510 +:105A30006E744D6F64656C0048756E7363616C6560 +:105A4000640000006F6273436F765363616C65524C +:105A500076656300467371727452000073717274DC +:105A60005370726552657363616C65005363616C5A +:105A7000654368616E67657300000000737172743E +:105A800053000000019500950FABB9E50FA8DCF7B6 +:105A9000DBBC2DE9F44FADF5087D8046959C894629 +:105AA0001E4621B220B2FFF7A1FD04A9929D00F08D +:105AB000B1F90FF2B03301EB40000290172D0BDB70 +:105AC00072B60FF2C0300190C82140F20F1000F002 +:105AD000AFF900F0A9F9FEE70C2C0BDB72B60FF260 +:105AE000B8300190C8214FF4887000F0A1F900F09F +:105AF0009BF9FEE704FB04F7B90004A8DCF7A4FC5B +:105B0000DDF84CA2DDF850B2889868B3002006E0BA +:105B100001F500617DAA091322F81010401CA8426B +:105B200019DA16F910203AF91230889A52F8202022 +:105B300006EB400191F901103BF9111001FA83FCC9 +:105B4000BCF1000F47BFCCF1000142FA01F1C918C6 +:105B500002FA01F1DCE7019500967DABE2B2414625 +:105B600004A8DCF713FB04E07A00414604A8DDF743 +:105B70006FFB002508E0029A01F50061091328185F +:105B800022F810106D1CEDB2A54239D23AF815007A +:105B9000C0F11A0000B2411E1E2923D2012101FAD0 +:105BA00000F059F8251088421CDA081ADAF7E2FFEB +:105BB00004A90C3801EB4501002206E0B1F90030E0 +:105BC00003410B8001EB4401521CD3B2A342F5D335 +:105BD0003AF81510091A2AF815103BF81510401854 +:105BE0002BF8150021B22846FFF700FD3AF91520E1 +:105BF00059F82510002A46BF524211419140BAE798 +:105C0000610000F0FBF87A0004A94046DDF720FBB4 +:105C100000F0F9F85A460C2000905146404600F03A +:105C200005F800280CBF04200120E3E02DE9FE4F19 +:105C3000804682B09A464FF40060DAF776FF109FF4 +:105C400001902FB1BDF9100041003846DCF7E2FBAE +:105C5000119D0DB1002028704FF0000911E030F9BE +:105C60001120521020F81120491C5145F7DB27B1B3 +:105C700037F81900301827F8190009F101000FFA58 +:105C800080F9D14580F2B2801AFB09F008EB4000A0 +:105C900000EB49000090B0F90010002903D54A003C +:105CA00008BF491C4942002208EB490B02E021468B +:105CB0001846521C12B213464B451CDA1AFB03F36A +:105CC0000BEB4303B3F90040002C08D5660012BF6C +:105CD000C4F1000E04F1010ECEF1000E00E0A64664 +:105CE00009B27145E5DA002CE1D5600012BF6142CE +:105CF000601C4142DCE7B0F90000DAF716FF044609 +:105D00000098B0F90000DAF710FF0199091BC0F103 +:105D100001000EB200B28642B8BF0646029A32F9BE +:105D20001920C4F10D01B318BDF938401BB29C42D3 +:105D300003DABDF83840A41A26B2BDF93840E34270 +:105D400003DA23465B429B1A1EB28642A4BF09B205 +:105D5000B1420ADA00200FF254130FF2B0120FF220 +:105D60007411DCF785FB002041E0002E85D006FA97 +:105D700082F0002803D5410008BF401C4042844205 +:105D8000FFF67BAF0DB101202870C6F1000C029820 +:105D9000029930F81900301821F819000398039976 +:105DA00030F81900801B21F81900002104E0ABF83D +:105DB00000300BEB4A0B491CBDF9103009B2994277 +:105DC00007DABBF90030002E4CBF43FA0CF3B340A6 +:105DD000EDE79DF83C0000287FF449AF5146484666 +:105DE000FFF704FC08EB400000213EE7012005B06E +:105DF000BDE8F08F0DF5097DBDE8F08F22B209B244 +:105E000004A8DBF7E1BD00200390029023B201203B +:105E1000019070470FF23C07DFF808A00FF21C0258 +:105E200070470000E820012051463846DDF7DCB914 +:105E300000905046DDF7EAB9000000004153534599 +:105E400052543A20257328256429202D205B257380 +:105E50005D00000025730D0A00000000706F737470 +:105E6000500000004B616C6D616E46696C74657228 +:105E70005F55706461746550726F636573734D6FC5 +:105E800064656C0073746D5F6C656E677468203C4C +:105E90003D202832322900006E756D73746174657F +:105EA00073203C3D20283131290000004B616C6D8E +:105EB000616E46696C7465725F52657363616C658F +:105EC000436F76617269616E63654D617472697862 +:105ED000000000004B616C6D616E2046696C74655A +:105EE0007220636F76617269616E6365207265739B +:105EF00063616C696E67206661696C656420282542 +:105F000073203A3A202573290D0A0000433A5C5F5A +:105F1000525645524D415F444154415C4749545C9F +:105F200073656E736F722D6875625C616C67735C0C +:105F30007372635C636F72655C4B616C6D616E461E +:105F4000696C7465722E630010FB01F000F500604F +:105F500000010014704770B500F034F800F02DF81F +:105F60003146204606F01EFA004E0FE088860020DB +:105F700070B500F027F800F020F83146204606F012 +:105F800037FA014E02E000BFA086002006F11000A3 +:105F90000CC804F1AC0106EB85000CC18168042239 +:105FA00004F1B800DDF754F956F8251004F1B400F7 +:105FB000BDE870400422DDF74BB90546BC21204600 +:105FC000DCF742BA0E460446114602220FF21820B0 +:105FD000DCF788B82DE9F44F8EB08146199C9DF905 +:105FE00074A0CDF808A004F1880005901A4604F1C9 +:105FF0009400049004F17C0604F1A400039004F1E1 +:10600000800704F1AC000A9004F1A00B1C980190E9 +:1060100000944846189B06F03AFADDF86880BDF90E +:106020006C50BAF1000F2BD00020059A38F81010F0 +:1060300022F820100021049A22F82010059A38F83E +:10604000101002EB800251800021049A02EB8002C2 +:10605000518000F0B3F8E8DBA4F8AA5000F0AAF8E9 +:1060600000F0BBF800F0A1F800F0B0F800EB400041 +:1060700078604FF48050ABF800000020ABF80200CD +:10608000294640F29910FFF75FFFB4F9AA104B1BA5 +:1060900004D55A0006BF591C4B426B1A984202DBCA +:1060A000BAF1000F12D0A5F1450010F1020FB8BFF0 +:1060B000452500F07FF800F090F800F076F800F049 +:1060C00085F800EB40007860A4F8AA500320029005 +:1060D00043460498019004F1B4020598009004F13D +:1060E000B80108A8DBF72CFE002008A931F9102020 +:1060F000002A03D5530008BF521C524221F8102039 +:10610000039A38F9103032F91020B3EB020C08D59D +:106110005FEA4C0406BF0CF10102C2F1000CA2EBD5 +:10612000030C31F81020624421F81020401C032891 +:10613000DCDBB6F9000006AC032300F030F8386869 +:1061400006A9F3F7A8FC0B900323B6F9020000F0B0 +:1061500026F8786806A9F3F79EFC0C90012302202C +:1061600000905A460A980BA9F3F73AFDBBF90200D2 +:1061700040F66761884203DB002000F01FF8FCDB7B +:10618000B9F90010BBF90000FFF7DEFEA9F8000026 +:106190000E99BBF8020008800FB0BDE8F08FA08018 +:1061A0006080ADF8180008AA70477080B6F900004A +:1061B000DAF72ABD4FF4C0512846C5E6039A38F8ED +:1061C000101022F81010401C0328704700EB40000C +:1061D0003860B6F90200DAF717BD30804FF4C051CD +:1061E000E80000B2B0E600003200640010FB01F0ED +:1061F00000F5006000010014704710B50446A021AE +:10620000DCF722F900F019F84FF4F040E081A082A9 +:10621000608310BD10B50446042104F11E00DCF7B4 +:10622000F9F800F00AF800200021062212FB0042D3 +:10623000401C91810328F8DB10BD0822024904F1BB +:106240002200DDF705B800003C8700202DE9F14F62 +:1062500014468AB0B4F89E00884600F00F01ADF8ED +:106260000010401C04F222010391A4F89E00261D98 +:106270009DF95C001F4604F21E054FF480594FF053 +:10628000060A00284CD0002000210AFB0042918120 +:1062900004EB8002401CC2F88C100328F5DB60215F +:1062A00004F12A00DCF7B6F8B4F99800B4F99A10B2 +:1062B0008842B8BF0846B4F99C108842B8BF084667 +:1062C000800300140628B8BF06202080800060806C +:1062D0004FF48060B4F90010FFF788FF20804FF47E +:1062E0008060B4F90210FFF781FF6080B4F900000C +:1062F000012803DA0120208004206080B4F9000026 +:10630000DAF782FC00EB40003060B4F90200DAF703 +:106310007BFC00EB40007060A5F8009000206880D6 +:1063200000200DF1200B04EB800204EB401303F27C +:106330002A03BDF800E037F9101052F88CCF33F97A +:106340001EE00CFA81FCACEB0E0CC2F800C0BDF8EC +:10635000002023F812104FEA2C112BF81010401CCB +:106360000328E0DB0027012000900AFB074000F132 +:106370000C01159B3BF9172004A800EB4700DBF745 +:106380002BFD7F1C032FEEDBBDF9500000214242A4 +:106390000AFB0143B3F90CC06045D8BF8446A3F89B +:1063A0000CC0B3F90C709742B8BF9A81491C0329FD +:1063B000EEDBB4F9000001AF032300F027F83068EA +:1063C00001A9F3F768FB06900323B4F9020000F07B +:1063D0001DF8706801A9F3F75EFB07900123022006 +:1063E00000902A46039806A9F3F7FAFB9DF9580096 +:1063F00018B1A5F80290002028806888A8F800004D +:106400000A99288808800BB0BDE8F08FB8807880A2 +:10641000ADF8040004AA704710B50024DCF7D2FFE1 +:10642000002800D00124204610BD000038B500200F +:106430000246DFF8A44403E004EB80018A63401CB9 +:106440000928F9DB1046E066A066642020606060E1 +:10645000DFF88804A060B5EE000A84ED030A84ED3D +:10646000040A84ED050A84ED060A84ED070ADFF8C4 +:106470007004206205206062A062104603E004EB15 +:1064800080018A63401C0928F9DB10466067A06719 +:10649000E06704F180057C2201462846E3F797FA7D +:1064A0000C22002104F12C00E3F791FA256731BD9D +:1064B0002DE9F04106460F4690461C46DFF8185479 +:1064C00085ED0B0AF0EE601AF1EE611AC5ED0C1ABB +:1064D000B1EE410A85ED0D0A0A2205F12C01286F63 +:1064E00000F004FA00F040F8022801D004280ED190 +:1064F000A86F401CA867142198FBF1F1884202DBC9 +:106500000020E8670CE0E86F401CE86708E0082816 +:1065100001D0102804D1E86F401CE8670020A8676C +:10652000142096FBF0F0A96F814201DB012068671F +:10653000142097FBF0F0E96F814201DB02206867CD +:10654000686F012803D0022801D000206867696FB6 +:10655000080005D021700021A967E967696701E09B +:1065600000212170BDE8F0812DE9F8432DED048B69 +:106570009FED9F8AD84C002020666066E06E461C26 +:10658000E666A76ED74D0A2F36DAD4F870900A2245 +:106590000021484600F0C3F980460A2201214846FE +:1065A00000F0BDF904EB870106EB860292008A63D6 +:1065B000012F1FDB98ED000AD0ED000A30EE600AD3 +:1065C000D8ED010A90ED011A70EEC10A98ED021A99 +:1065D000D0ED021A31EE611A05EB870020EE000AB9 +:1065E00000EEA00A01EE010A80ED060A8A6B496BF3 +:1065F000511AC163781CA0660A2E01DA03202867AD +:10660000A06E0A28C0F2DD80401EA0660A22114654 +:10661000206F04F035FC85ED040A0A221146206F34 +:1066200004F04CFC85ED050A0A221146206F04F0A7 +:1066300063FC85ED060A002006E005EB8001D1ED44 +:10664000070A38EE208A401C0928F6DBD5ED040A3B +:10665000B2EE041AC0EE818AD5ED050A80EE819A69 +:10666000F2EE040AC0EE209AE06E0A2805DBC5EDC2 +:10667000018A85ED029AC5ED039A00260FE00A22F1 +:10668000C6F1090109B2206F00F049F995ED031A2E +:10669000D5ED020A95ED010A00F0ACF8761C0A2E41 +:1066A000EDDB606A216E88423ADAA06B2978002916 +:1066B00008D1686601212970C5ED018A85ED029A2D +:1066C000C5ED039AA16A626E91420CDA69780029DD +:1066D0000BD1A86601216970C5ED018A85ED029A8A +:1066E000C5ED039A01E0002169702168AA6E821A43 +:1066F000914208D26A78002A05D00020A870E8707C +:10670000012028674CE06A6E801A814246D22878C0 +:10671000002843D00020A870E870022028673FE0DE +:10672000C5ED018A85ED029AC5ED039A0020287017 +:106730006870A878002801D10120A8709FED640A34 +:1067400028EE000AB5EE400AF1EE10FA03DC9FEDE8 +:10675000610A28EE000AD4ED020AB3EE041A60EED4 +:10676000810AF4EE400AF1EE10FA07D5E878002825 +:1067700006D1A06BE8660120E87001E00020E87017 +:106780006068A0F5FA70A16BEA6E891A884205D29A +:10679000E878002802D00420286701E00320286759 +:1067A00000200CE004EB8001CA6B8A63082805DA3C +:1067B00005EB80010A6ACA614A6C0A64401C092818 +:1067C000F0DB286F012806D00DD3032807D004D3AF +:1067D000042806D007E0022006E0042004E0082098 +:1067E00002E0102000E00020BDEC048BBDE8F28345 +:1067F00000000000D0ED001A31EEC00A3A4981EDE8 +:10680000000AD0ED011A71EEE00AC1ED010AD0EDE7 +:10681000021A31EEC11A81ED021AB5EE400AF1EE0C +:1068200010FA03D5B1EE400A81ED000AF5EE400AF8 +:10683000F1EE10FA03D5B1EE600A81ED010AB5EE72 +:10684000401AF1EE10FA03D5B1EE410A81ED020AC9 +:1068500091ED000A2048D0ED030AB4EE600AF1EE93 +:1068600010FA13D5D1ED010A90ED041AF4EE410AA5 +:10687000F1EE10FA0AD5D1ED020A90ED051AF4EE08 +:10688000410AF1EE10FA01D5012200E00022D0ED1C +:10689000060AB4EE600AF1EE10FA14D591ED010A81 +:1068A000D0ED070AB4EE600AF1EE10FA0BD591EDC7 +:1068B000020AD0ED080AB4EE600AF1EE10FA02D531 +:1068C000416E491C4166016E511801667047000017 +:1068D00000007A4400007AC4D41201200000404134 +:1068E0003333B33E5C030120D43A01200388934242 +:1068F00001D30023038003885B1C03809BB2934277 +:1069000001D300220280028802EB420300EB8300E5 +:10691000001D91EC030A80EC030A01207047B0F9D6 +:106920000030591A09B2002901D511FA82F109B2D1 +:1069300001EB410200EB8200001D70472DE9F041A0 +:10694000DFF8B86B542200213046E3F740F8DFF857 +:10695000B04B0C2200212046E3F739F8DFF8A45BA6 +:106960001C22002105F11800E3F731F81C22002158 +:1069700006F15400E3F72BF80020E0614FF47A723F +:106980000146DFF8840BE3F722F84FF47A72002116 +:10699000DFF8780BE3F71BF8002020626062DFF875 +:1069A000706B7064B064A062E062F0642063DFF832 +:1069B000647BB8616063A063E06301202064002011 +:1069C000306570654FF0FF306064A0640020E064C3 +:1069D000B065F861F065386230667066B0661C229A +:1069E000014605F13400E2F7F2FF0020F066706323 +:1069F000082201463046E2F7EAFF2C22002106F188 +:106A00000800E2F7E4FF42F2107030847084002046 +:106A10007061022030830020B06038800C22014673 +:106A20002846E2F7D4FFDFF8600C6860DFF85C0C02 +:106A300028604FF0FF302881002020732065B0636C +:106A4000E0813C22014607F12400E2F7C0FF00206C +:106A50003866306778807866F063B0677067606525 +:106A600006F184082C2206F108014046DEF734FACC +:106A7000C4F858800020E065206638676066786753 +:106A8000B867E066A066A067606720670120A86518 +:106A900068652865002068662866E8652822014642 +:106AA000DFF8EC0BE2F793FF0020F8670C220146B9 +:106AB00004F11000E2F78BFF0C22002105F10C001D +:106AC000E2F785FF1022002107F10800E2F77FFFBF +:106AD0001022002106F1B000E2F779FF0620A6F8A7 +:106AE00040000020F880C6F88000F067E067DFF81B +:106AF000A80DB8660020F866BDE8F08110B584B036 +:106B0000DFF8004A0C22214600A8DEF7E5F9FFF77E +:106B100015FF0C2200A92046DEF7DEF91FBD00009C +:106B20002DE9F84F2DED0C8B84B0002002908246A9 +:106B30000446DFF8E05995ED1E8AD5ED078AC5EDCC +:106B40001E8ADFF8CC69D6ED169AC5ED079ADFF8F4 +:106B5000B07997ED139AB8EE490ADFEDDC0A80EEC2 +:106B600080AA86ED16AAD7F834B0786CABEB00009B +:106B7000FA30FA21B0FBF1F1FA2202FB11081FFAF8 +:106B800088F8B8F14C0F02DA386C012804D120469D +:106B9000F0630220A88091E1D6F85490B9F1040F77 +:106BA00030D3F4EE698AF1EE10FA2BD5F4EE4A9A5E +:106BB000F1EE10FA26D51AEE100ADDF7F5FA0246C4 +:106BC0000B46CDE9002318EE900ADDF7EDFADFF869 +:106BD000C82ADFF8C83ADEF7B3F9DDE90023E6F7A3 +:106BE0008BF90FD29FEDBA0AB4EE40AAF1EE10FA7B +:106BF00008DBC6ED169AC5ED078A85ED1E8A0320CF +:106C0000A880B7E1D6ED11AAC6ED12AA96ED13BA87 +:106C100087ED0CBA404600EE100AB8EE400AD7EDF8 +:106C2000090AC0EE800A97ED0B1A81EE001A204681 +:106C30007064F064786C214621E0401C80B2FA2830 +:106C400000D12046DFF8C02802EB8002D2ED001A06 +:106C500071EEE01A96ED112A01EEA12A86ED112AB5 +:106C6000DFF8A82802EB8002D2ED001A71EEC11AFB +:106C700096ED132A01EEA12A86ED132A491C89B24A +:106C80004145DADBD6ED110AC0EE80BAC6ED11BA85 +:106C9000D6ED130A80EE80CA86ED13CAD5ED1DCA63 +:106CA000C5ED1CCA97ED170AD7ED180A30EE60DA69 +:106CB00085ED1DDA404600F037FC012802D1204660 +:106CC000F063FBE0B9F1000F05D1B08F052802DBBE +:106CD00004465046B087B9F1000F05D1F08F052862 +:106CE00002DB04195046F08719FA84F0002830D1ED +:106CF0009FEDC08B3CEE0B0A10EE100ADDF754FA44 +:106D000053EC182BDEF71CF95246DFF8B43BE6F7DC +:106D1000F3F816D33BEEAA0A10EE100ADDF744FA98 +:106D200053EC182BDEF70CF95246DFF8983BE6F7E8 +:106D3000E3F806D3B3EE040AB4EE40DAF1EE10FA4B +:106D400007D5B08F401CB087C7F848B00620A88090 +:106D5000B4E0B08F002802D004195046B08719FA69 +:106D600084F0002819D1B7EE000AB4EE40AAF1EE83 +:106D700010FA02D50720A880A0E09FEDA00AB4EE8B +:106D800040AAF1EE10FA05DBF08F401CF0870820D6 +:106D9000A88093E05046F08703E0F08F0419504636 +:106DA000F087B0EE6B1AF0EE4C0AB0EE4A0A41469C +:106DB000A4B2204600F074FC012808D1C6ED169A52 +:106DC00086ED13BAC5ED1DCAC6ED11AA76E09FED9A +:106DD0008C0AB4EE40AAF1EE10FA02DBDFF8E80A02 +:106DE000B0655046B087B9F1000F0ED196ED160A86 +:106DF00086ED170A85ED080AC7ED0ABA85ED06CAC1 +:106E000087ED19DA00F012FB4DE0B6EE008A484635 +:106E100000F00CFB012818D196ED160AF0EE000ADE +:106E200020EE200A86ED160A4FF0010A6BEE880A62 +:106E3000C6ED110A2CEE081A86ED131AC6ED120AD9 +:106E400087ED0C1A85ED070A641C96ED160AD5ED40 +:106E5000070A70EE200A60EE880AC6ED170A96ED62 +:106E6000111AD6ED121A31EE211A21EE081A87ED09 +:106E70000A1A96ED131AD7ED0C1A31EE211A21EEEB +:106E8000081A85ED061AB4EE600AF1EE10FA02D483 +:106E9000BAF1010F01D185ED080A3CEE8D0A20EE12 +:106EA000080A87ED190A204680B200F0ABF800F01E +:106EB00067F8C7F848B0012002907865DFF8D0077E +:106EC0000299012906D10121018005E000007A44E0 +:106ED00001004040A9880180A4B2446080ED029A7C +:106EE000A0F80C80718FC181716C0161F16C4161FE +:106EF000B16D8161B96AC161A9690162F16D4162D7 +:106F0000C7F844B00020F8647862F8623864102250 +:106F1000014605F10800E2F75AFD0C22002107F1B5 +:106F20001000E2F754FD0020E867F08A00281CD129 +:106F3000D6F8800000280DD0306DF168401AB6F800 +:106F40004010B0EB510F02DB002030830DE0012038 +:106F500030830AE0B08FF18F11FA80F0032802DB52 +:106F60000120308301E002203083DFF82C09A8667D +:106F70000020E866029804B0BDEC0C8BBDE8F28FEF +:106F800038B50025DFF888450120C4F8800000F0FE +:106F900069FCA060606DB4F84010884215D3206D84 +:106FA000E060206E6062606EA062A06EE062E06DE4 +:106FB0002061606F2063A08EA082E08EE0820120BD +:106FC000E06705460020C4F88000284632BDDFF89F +:106FD0004005C168016500214165416102210183CD +:106FE00000214163816A4166016B81670021C0F81D +:106FF00080107047000000000000E03F6766164008 +:107000000100A0402DE9F14F2DED088B4FF0000C51 +:1070100060460146DFF8EC44DFF8F464BDF8202058 +:10702000002A1ED0376D7A1E02F0070207F0070310 +:107030009B5D9355D6F85480A8F101020723B2FB5B +:10704000F3F3C3EBC303D21A04EB82020723B8FBAA +:10705000F3F3C3EBC303A8EB030304EB83035B6B02 +:10706000536396ED178AB0EE040AB4EE408AF1EE4F +:1070700010FA08D496ED1C0AF0EE080AB4EE600A85 +:10708000F1EE10FA02D50322B28601E00422B286A4 +:10709000376D07F0070EB6F834800EF80680082525 +:1070A000724607E0042B01D10CF1010C521E00D5F1 +:1070B00008326D1E0ED09357032B01D1491C02E0FC +:1070C000042B00D1401C062DF0DB032BEAD1ACF1E0 +:1070D000010CEBE7F28EDFF83C341A8080B2814677 +:1070E00089B209EB010303EBD37A4FEA6A0A8A45B6 +:1070F00009DBCA4504DA4FF0040CA6F836C013E0E9 +:10710000BCF1000F04D54FF0030CA6F836C00BE01D +:10711000BCF1010F04DB4FF0040CA6F836C003E00D +:107120001EF906C0A6F836C0B6F83690B9F1040FBD +:1071300000D008464A450AD000203083F08A002853 +:107140001DD1706D04281AD30120308317E0052B60 +:1071500010DB00EE100AB8EE400A00EE903AF8EEAE +:10716000E00A80EE200AF6EE080AB4EE600AF1EEBC +:1071700010FA02D50120308301E002203083F0EEC6 +:10718000488AB7EE080AB4EE408AF1EE10FA02D54A +:10719000F7EE088A08E09FEDA20AB4EE408AF1EE0D +:1071A00010FA01DBF1EE028A6068DCF7FDFF41ECCA +:1071B000190B18EE900ADCF7F7FF41EC1A0B9FED64 +:1071C00099BBB8F1030F53EC1A2B2BD1DFF8F80A57 +:1071D000DFF8F81ADDF7B4FEDFF8F42ADFF8F43A46 +:1071E000E5F746F982468B4653EC1A2BDFF8E80A9E +:1071F000DFF8E81ADDF7A4FE53EC1A2BDDF7A0FE4A +:1072000002460B4650465946EEF7C8FE53EC192B82 +:10721000DDF796FE53EC1B2BDDF792FEE4F7B8FF8B +:10722000306628E0DFF8B80ADFF8B81ADDF788FE24 +:10723000DFF8B42ADFF8B43AE5F71AF982468B464C +:1072400053EC1A2BDFF8A80ADFF8A81ADDF778FE4E +:1072500053EC1A2BDDF774FE52465B46E5F708F94E +:1072600053EC192BDDF76CFE53EC1B2BDDF768FE9E +:10727000E4F78EFF3066B4F90800022807D196EDD6 +:10728000180ADFEDA50A20EE200A86ED180A96ED11 +:10729000189A96ED190A70EE099AC6ED199A29EE18 +:1072A000280ADFED9E0A20EE200A86ED1A0AD6F89B +:1072B00054800720B8FBF0F0C0EBC000A8EB000042 +:1072C00004EB800080ED0D0A0020F066B8F1070F96 +:1072D00020D208E004EB850090ED0D1A70EE810AD3 +:1072E000C6ED1B0A6D1CD6ED1B0AADB2A845F1D246 +:1072F00001EE105AB8EE411AC0EE810AC6ED1B0A23 +:1073000014E004EB800090ED0D1A70EE810AC6EDDA +:107310001B0A6D1CD6ED1B0AADB228460728F0DB10 +:10732000B1EE0C1AC0EE810AC6ED1B0A10EE100A6F +:10733000DCF73AFF41EC100B9FED79ABB9F1040F8C +:1073400053EC102BDFF8600C0BD1DFF8601CDDF77D +:10735000F7FD53EC1A2BE5F78BF8E4F719FFB0674C +:107360000AE0DFF84C1CDDF7EBFD53EC1A2BE5F7D8 +:107370007FF8E4F70DFFB067B06FDCF715FFDFF8BB +:10738000342CDFF8343CDDF7DBFD82468B46206889 +:10739000DCF70AFF52465B46DDF7D2FD04460D4698 +:1073A00018EE100ADCF700FF0022DFF8103CDDF7D2 +:1073B000C7FD02460B460020DFF8041CDCF71CFF6B +:1073C00022462B46DDF7BCFDE4F7E2FE00EE100A94 +:1073D00086ED1E0AD6ED1D0A70EE800AC6ED1D0A66 +:1073E000781C306508F101017165BDF82020002A84 +:1073F00011D01018306550187065BDF8200001EEEE +:10740000100AB8EE411A41EE099AC6ED199A41EEFA +:10741000000AC6ED1D0ABDEC088BBDE8F18F000027 +:1074200001009040B8ED221C1818783FF8B52DEDFA +:10743000028B0027002857D0354E96ED168AF06D46 +:10744000DCF7B2FE4FF06632DFF8783BDDF778FD0F +:1074500002460B4614461D4618EE100ADCF7A4FE41 +:1074600022462B46E5F748FD04D2708F022801DB47 +:10747000012718E09FED7F0AB4EE408AF1EE10FA82 +:1074800011D5244890ED050ADFED7B0AB4EE600AC1 +:10749000F1EE10FA07DBDFED790AB4EE600AF1EEE7 +:1074A00010FA00D50127012F1ED196ED1C0AF0EE2F +:1074B000000AB4EE600AF1EE10FA0AD59FED700AE8 +:1074C000B4EE408AF1EE10FA03DB708F022800DB85 +:1074D0000027104890ED1A0ADFED6A0AB4EE600A40 +:1074E000F1EE10FA00D500270A484069DFF8881D40 +:1074F00008603846BDEC028BF2BD0000382901203F +:10750000F0250120A8290120D8E90020C0ED0020A5 +:107510009C150120702601201EC47E3F0000704291 +:107520000000000000000C40F8B52DED048B06466D +:107530000024DFF8C07CDFF8C05CE88E03281DDA89 +:1075400095ED160ADFED4E0AB4EE600AF1EE10FA80 +:1075500014DB95ED110AF2EE040AB4EE600AF1EEC6 +:1075600010FA0BD595ED130ADFED4A0AB4EE600A66 +:10757000F1EE10FA02D50420B880012495ED138AAB +:107580009FEDB69BDFF89C0C90ED0C0A38EE000ADC +:1075900010EE100ADCF708FE53EC192BDDF7D0FCD7 +:1075A0000022DFF8AC3CE5F7A7FC21D3D5ED118A2A +:1075B00095ED120A38EE800A10EE100ADCF7F4FDA1 +:1075C00053EC192BDDF7BCFC0022DFF89C3CE5F7FF +:1075D00093FC0DD3B3EE040AB4EE408AF1EE10FA38 +:1075E00006D4B1EE040AF4EE408AF1EE10FA02D5A8 +:1075F0000520B880012495ED160ADFEDA80AB4EE47 +:10760000600AF1EE10FA29DB97ED040AD7ED050ABE +:1076100080EE200ADFEDA20AB4EE600AF1EE10FA65 +:107620001CDB00EE106AB8EE400AD7ED020AC0EE8D +:10763000800AB6EE001AF4EE410AF1EE10FA0DD50A +:10764000D7ED030A80EE800AF6EE000AB4EE600A77 +:10765000F1EE10FA02D51520B8800124102207F1AE +:10766000080105F1B000DDF737FC2046BDEC048BC6 +:10767000F2BD00009A99993F010020420000C842E3 +:1076800001000040CDCC4C3F00003543000090424B +:10769000CC37012000002042CDCCCCCCCCCCFC3F60 +:1076A0002DE9F8432DED028B08EE101A0026DFF8C5 +:1076B000484B616D4018DFF86C5B02281AD394EDDB +:1076C000160ADFED780AB4EE600AF1EE10FA11DB6B +:1076D00095ED0C0AD4ED130A80EE200ADFED720A54 +:1076E000B4EE600AF1EE10FA04DBDFF8081B0922A1 +:1076F0008A80012602281CD39FED6C0AD5ED0C0A66 +:1077000094ED131AC0EE810AF4EE400AF1EE10FA7D +:107710000FDBD4ED120A94ED111AC0EE810AF4EEDB +:10772000400AF1EE10FA04DBDFF8C81A0A228A8058 +:107730000126002819D0DFF8BC7A686EDCF734FD2A +:107740004FF03332DFF8183CDDF7FAFB02460B4608 +:1077500090469946786FDCF727FD42464B46E5F7A1 +:10776000CBFB02D20B20B880012694ED160ADFED88 +:10777000500AB4EE600AF1EE10FA08DA94ED170A36 +:10778000DFED4C0AB4EE600AF1EE10FA1CDB94ED6A +:10779000130ADFED490AB4EE600AF1EE10FA0BD4D9 +:1077A00094ED110ADFED450AB4EE600AF1EE10FA2D +:1077B00002D4608F022807DBE08E032804DBDFF8A9 +:1077C000340A0C218180012695ED0A0ADFED3A0A80 +:1077D000B4EE600AF1EE10FA08D494ED1C0AF1EE52 +:1077E000040AB4EE600AF1EE10FA14D5A86EE96E40 +:1077F0000818E4F7B5FC0022DFF8683BDDF7A0FBD2 +:107800000122DFF8643BEEF727FB04D8DFF8E40938 +:107810000D2181801646B8EEC80ADFF8500BD5ED71 +:10782000040AC0EE800AC0ED030AD5ED050AC0EED9 +:10783000800AC0ED040AD5ED060A80EE800A80EDCC +:10784000050A0C2200F10C0104F1C000DDF744FB35 +:107850003046BDEC028BBDE8F28300000000000062 +:107860000000E03F0020DFF890190A6D12F10A0FC6 +:107870000FD29FEDD10AD1ED190AF4EE400AF1EED4 +:1078800010FA06DAD1ED1D0AF4EE400AF1EE10FA14 +:1078900000DB01207047000000007A4401004040F6 +:1078A0003433333F010060400100A04001007041CB +:1078B00001009040010080400000C84300001643D2 +:1078C00000C06240000054400000A0402DE9F24F8B +:1078D0000446002500F08BFCDFF8946A28467065AA +:1078E000F0653066DFF80C0929468180204600F0FB +:1078F00065F9DFF80479307B052805D10120306473 +:10790000284630733887F081F06CBDF8001010FA0B +:1079100081F0F064D6F83480706C804501D101208C +:107920003064D6F8389009EB49004FEA800ADFF856 +:10793000440A21684AF800100AEB000B6068CBF893 +:107940000400A068CBF80800BDF80010204600F045 +:10795000D3F9F8619BED020ADBED010ADFF8140AA6 +:107960005AF8000001EE100A21EE011A00EEA01AEA +:1079700000EE001A11EE100ADCF716FC41EC100BB9 +:10798000F6F77EFE51EC100BE4F702FC00EE100A55 +:10799000D6F83CA0BAF1000F12D12846DFF8CC2966 +:1079A00004E002EB810181ED060A401C80B2014631 +:1079B0000729F6DBF1EE0C0A60EE200AC6ED070A95 +:1079C000DFF8A80900EB8900D0ED060A70EE600A26 +:1079D00096ED071A30EE811A86ED071A80ED060A39 +:1079E000DFF8940900EB880080ED001A96ED090A93 +:1079F00030EE010A86ED090ADFF8780900EB89000C +:107A000090ED150A71EE400ADFF8701901EB88015C +:107A1000C1ED000A80ED151A96ED0B0A30EE200A32 +:107A200086ED0B0A94EC031A86EC031AF06F01281A +:107A300006D101203064284630733887F08166E033 +:107A4000306D401C3065317B012901D003292FD1D5 +:107A5000022822D2F98E04291FDA786D002856D127 +:107A600096ED080A9FED971AB4EE410AF1EE10FA6E +:107A700004D5F4EE410AF1EE10FA0BDAB9EE0C1A65 +:107A8000B4EE410AF1EE10FA41DBF4EE410AF1EEF8 +:107A900010FA3CD50120306439E0272808D3398F0B +:107AA000002903D010FA81F04B2801D30120306463 +:107AB00096ED080A00F088FA307B012827D1388F2C +:107AC000002824D0F189002921D0032211FA80F066 +:107AD0003D2801DB01203064F88E042800DB0222FF +:107AE000788F824201D201203064B06EF066306F30 +:107AF000716F0818B16F0818B0662846B0677067D4 +:107B00003067FFF70DF805460020F0817887B06CEC +:107B1000A8EB000000F1FA04FA20B4FBF0F0FA211F +:107B200001FB104BBBF1960F03D100F0A9FB012024 +:107B30007065BBF1640F03D100F0CCFB01207065D0 +:107B4000F88A00280AD0BBF1320F0DD0BBF14B0FE1 +:107B50000DD1002038830120706508E0B88A002824 +:107B600005D0BBF17D0F02D1012038837065DFF8AD +:107B70000C0850F82800306208F101007063FA2800 +:107B800001D10020706309F10100B063072801D121 +:107B90000020B0630AF10100F063706D002808D086 +:107BA00007F184042C2207F108012046DDF794F93F +:107BB000B4652846BDE8F28F8096184BF8B50446A8 +:107BC000DFF8A8572F6DDFF85C6696ED000AD4ED5C +:107BD000000A70EEC00A01EE107AB8EEC11A60EE2B +:107BE000810AF5EE400AF1EE10FA17D5D5ED170A25 +:107BF00030EE600A10EE100ADCF7D6FA21F00041F0 +:107C0000DFF87C27DFF8A433EEF726F902D8306FCF +:107C1000401C30673068E865784228656F6D96EDE6 +:107C2000010AD4ED010A70EEC00A01EE107AB8EE36 +:107C3000C11A60EE810AF5EE400AF1EE10FA16D58F +:107C4000D5ED180A30EE600A10EE100ADCF7ACFA37 +:107C500021F00041DFF82827D44BEEF7FDF802D8D9 +:107C6000706F401C70677068286678426865AF6DF9 +:107C700096ED020AD4ED020A70EEC00A01EE107A07 +:107C8000B8EEC11A60EE810AF5EE400AF1EE10FA84 +:107C900016D5D5ED190A30EE600A10EE100ADCF7A1 +:107CA00083FA21F00041DFF8D826C04BEEF7D4F874 +:107CB00002D8B06F401CB067B06868667842A865AB +:107CC000F1BD00000100E040F0164850FC18E93F0B +:107CD0003411363CBD52DABFBBB88D06F016B83F42 +:107CE0006891ED7C3F35CE3FB29DEFA7C64BC73FB5 +:107CF0000DE02D90A0F8A13FDFF8283590ED000AA7 +:107D0000D3ED000A30EE600AD0ED010A93ED011ABE +:107D100070EEC10A90ED021AD3ED021A31EE611A2B +:107D2000B5EE400AF1EE10FA02DDF0EE401A01E085 +:107D3000F1EE401AF5EE400AF1EE10FA02DDB0EE77 +:107D4000602A01E0B1EE602AB5EE401AF1EE10FAB9 +:107D500002DDF0EE412A01E0F1EE412A71EE821AD5 +:107D600071EEA21AB5EE400AF1EE10FA02DDB0EEA5 +:107D7000402A01E0B1EE402ADFF87824D2ED022A51 +:107D800032EE822A82ED022AF5EE400AF1EE10FA76 +:107D900002DDB0EE602A01E0B1EE602AD2ED032AE6 +:107DA00032EE822A82ED032AB5EE401AF1EE10FA85 +:107DB00002DDB0EE412A01E0B1EE412AD2ED042A03 +:107DC00032EE822A82ED042A92ED052A32EE212A31 +:107DD00082ED052A93ED042AD0ED002A32EE222A04 +:107DE00083ED042A93ED052AD0ED012A32EE222AF2 +:107DF00083ED052A93ED062AD0ED022A32EE222ADF +:107E000083ED062AD86B002810D1002004E002EB95 +:107E10008303C3ED091A401C80B203460F2BF6DB27 +:107E2000B2EE0E2A21EE822A82ED182A508802EB49 +:107E3000800393ED092A31EEC22AD2ED182A32EEE0 +:107E4000222A82ED182AC3ED091AF2EE0E1AC2EEAA +:107E5000211ADFF8A433C3ED1C1ADFF8283593ED9F +:107E6000012A22EE202AD3ED002A62EE802AF5EEC6 +:107E7000402AF1EE10FA0DD4B5EE402AF1EE10FAD8 +:107E800008D493ED023A23EE013AB5EE403AF1EE12 +:107E900010FA5AD593ED023A23EE013AF4EE422A53 +:107EA000F1EE10FA0AD5F4EE432AF1EE10FA02D5FB +:107EB000F0EE623A0CE0F0EE433A09E0B4EE432A09 +:107EC000F1EE10FA02D5F0EE423A01E0F0EE433A5C +:107ED000F5EE403AF1EE10FAF4EE422A15DDF1EE3D +:107EE00010FA0AD5F4EE432AF1EE10FA02D5B0EEFC +:107EF000622A21E0B0EE432A1EE0B4EE432AF1EEFE +:107F000010FA19D4B0EE432A16E0F1EE10FA0AD5B1 +:107F1000F4EE432AF1EE10FA02D5B0EE622A09E03F +:107F2000B0EE432A06E0B4EE432AF1EE10FA01D493 +:107F3000B0EE432AB1EE422AD2ED1F2AF4EE422AD5 +:107F4000F1EE10FA01D582ED1F2A83ED000AC3ED90 +:107F5000010A83ED021A92ED1A0AF4EE401AF1EECC +:107F600010FA01D5C2ED1A1A92ED1B0AB4EE610A9D +:107F7000F1EE10FA01D5C2ED1B1A9FEDBC0AF4EE2A +:107F8000401AF1EE10FA04D5536E13FA81F15166DE +:107F900001E000215166401C508080B20F2801D1C1 +:107FA00000205080506E70479A9999999999C93FCD +:107FB0009999B93F7B14AE47E17A743F00004E4077 +:107FC0000000F03F6666E63F70B52DED048BB0EE25 +:107FD000408AF0EE608A9FEDA99A8748C18E0429F5 +:107FE00001DBB0EE009AB5EE408AF1EE10FA07DB45 +:107FF000F5EE408AF1EE10FA02D5418F491C418717 +:10800000884E317B002907D0022900F07F8041D3C0 +:10801000032900F0A480E6E019EE100ADCF7C4F8AA +:1080200041EC100B53EC102B0020DFF85C13E4F74D +:108030001FFA41EC190B18EE100ADCF7B5F80246EE +:108040000B4651EC190BEDF707FF11D818EE900A0B +:10805000DCF7AAF802460B4651EC190BE4F74CFF8B +:1080600006D2306D1028C0F0AF8000203065ABE044 +:10807000716BC24A52F8210000EE100AC349D1EDDB +:10808000010AB4EE600AF1EE10FA40F1AC8081ED25 +:10809000010AA8E0716BB94A52F8211000EE101ADB +:1080A000BA49D1ED000AF4EE400AF1EE10FA01D51A +:1080B00081ED000AB7EE000AB4EE408AF1EE10FA44 +:1080C000C0F29180F4EE408AF1EE10FA40F18B801C +:1080D000316D01870020306519EE100ADCF764F875 +:1080E00002460B460020AA49EDF758FF02460B4610 +:1080F00014461D4618EE900ADCF756F822462B4629 +:10810000E4F7FAFE22D3022030736CE019EE100A75 +:10811000DCF74AF841EC100B00209D4953EC102B82 +:10812000EDF73CFF41EC190B18EE100ADCF73CF8B8 +:1081300053EC192BEDF790FE55D818EE900ADCF7AA +:1081400033F853EC192BE4F7D7FE4CD203203073ED +:10815000706B8A4951F820008C49486043E0716B8C +:10816000864A52F8210000EE100A8849D1ED010A32 +:10817000B4EE600AF1EE10FA01D581ED010A9FED2F +:10818000770AB4EE408AF1EE10FA2CD5F4EE408A6C +:10819000F1EE10FA27DB306DF0810020306518EE2B +:1081A000900ADCF701F802460B4614461D4619EE0C +:1081B000100ADBF7F9FF0022734BE4F759F9224666 +:1081C0002B46E4F799FE0CD2012030736F49086802 +:1081D000F06548683066706B684A52F820000860A5 +:1081E00001E000203073307BBDEC048B70BD604833 +:1081F000007B7047702601209C150120002804D0C8 +:108200005B49896D2C22DBF733B870476148416DBB +:10821000002904D1818FC08F10FA81F070470020AF +:1082200070470000F025012051490020C8635948DB +:10823000002242610222028305220A730021416565 +:10824000C165C166C1620161C163416370470000DD +:1082500000003E40002806D0444942684A60026857 +:108260000A6000890881704700002440EC51383EC4 +:108270004948406E70470000803C0120000000002B +:1082800010B5444CA08E002802D00220208301E0CB +:108290000220208300206065E065E066E0622061E6 +:1082A000A082A086E063D4F88000012801D1FEF707 +:1082B0008EFE3948C188002905D0A4F8401000215D +:1082C000C1800846E067E06F012802D10620A4F8CB +:1082D000400010BD10B52F4CE08E002802D00020C9 +:1082E000208301E0022020830020E0622061082238 +:1082F00001462046E1F76BFB0020E086E08220612A +:10830000E063D4F88000012803D1BDE81040FEF7F7 +:108310005EBE10BD1F49B1F8402082420CD2CB8A0C +:10832000002B02D04B6D934204D2A1F840000020F4 +:10833000C86770471849C880704780B50C4801214C +:10834000C167FFF7C7FFFFF79BFF0C20BDE80240A6 +:10835000E0E707480021C16770470000FEFF7FBFCC +:108360003333D33F0000E03F00804B40A829012079 +:10837000F025012038290120D8E90020C0ED002097 +:108380009B999999043B012000001C40E43B01208B +:1083900000001CC09C1501207026012010B50C4661 +:1083A0000FF2F050DBF78CF8DFF8A4050480001D15 +:1083B00000F033F800F064F800F012FA012010BD6C +:1083C00030B583B004460D4600F05BF9214600F05D +:1083D0005AF9002D12D00FF2C850DBF771F800F0F7 +:1083E00050F900F03BF800F04CF900F03DF800A81F +:1083F00000F082F8DDE9000100F075F8DFF85405BF +:108400008068BDE83E40004780B500F071F80FF28B +:10841000A050DBF755F8012002BD00210B4607E014 +:1084200001EB410292001350121853609360491CF3 +:108430006429F5DB194604E000EB8102C2F8B03490 +:10844000491C3229F8DB194680F8781500F278507B +:10845000418081808160C160016170470021C0F866 +:108460008015C0F8841570470021C0F88815704742 +:10847000002190F87805012800D1012108467047B5 +:1084800030B583B000A800F069F8DFF8C844009860 +:108490002060019D656000A800F085F8DFF8B80451 +:1084A000009901600199416000A800F0ABF8DFF885 +:1084B000AC04009901600199416000A800F0CDF87A +:1084C000DFF89C04009901600199416000A800F068 +:1084D000D1F8DFF8900400990160019941602068AB +:1084E000A060E56037BDDFF86C249060D16008477C +:1084F000DFF86004C0680047DFF85C14D1E90023AE +:10850000C0E900237047DFF85414D1E90023C0E923 +:1085100000237047DFF84814D1E90023C0E90023A5 +:108520007047DFF84014D1E90023C0E90023704709 +:108530001CB5002400F0A5F8FFF79AFF002807D02B +:10854000082400A8FFF7D8FFDDE90001FFF7CBFF03 +:10855000204616BD0FF26440DAF7B2BFDFF8081408 +:108560000A46DFF808140B46C0E9002370471CB523 +:10857000002400F0CFF800280FD00FF24C40DAF7BB +:108580009FFF012400F07DF8FFF76EFF00A8FFF7C2 +:10859000BAFFDDE90001FFF7A6FF204616BD0FF286 +:1085A0003440DAF78DBFDFF8C8130A46DFF8C4138A +:1085B0000B46C0E9002370471CB500F0ABF800285B +:1085C00005D0012400F05DF8FFF74EFF14E002240F +:1085D00000F010F900280FD00FF20440DAF770FF16 +:1085E000062400F04EF8FFF739FF00A8FFF792FFCE +:1085F000DDE90001FFF777FF204616BD0FF2EC30F2 +:10860000DAF75EBFDC490A46DC490B46C0E90023C5 +:1086100070471CB500F000F9012808D1042400A817 +:10862000FFF77FFFDDE90001FFF75DFF0FE00228A4 +:108630000CD1072400F025F8FFF710FF00A8FFF782 +:108640005BFFDDE90001FFF74EFF00E00324204659 +:1086500016BD0FF2A430DAF733BFC9490A46C9493B +:108660000B46C0E900237047002070470FF2983096 +:10867000DAF726BFC4490A46C4490B46C0E90023BD +:108680007047C348704770B5044604F278550C2013 +:10869000AA8800FB02420B681360AA8800FB024212 +:1086A0004B685360AA8800FB02408A68826091EDA3 +:1086B000020AD1ED010A91ED001A688804EB8006E8 +:1086C00021EE011A00EEA01A00EE001A11EE100AB7 +:1086D000DBF76AFD41EC100BF5F7D2FF51EC100B04 +:1086E000E3F756FDC6F8B004A888401CA880688847 +:1086F000401C6880A888642801DB0020A880688866 +:10870000322804DB00206880012084F8780570BDE1 +:108710000000000070B52DED028B00249FED888ACB +:10872000DFED878A2546FFF7ACFF0646B6F87A05E7 +:10873000322806D10FF2E020DAF7C2FE2046A6F872 +:108740007A053046FFF794FE002845D0204610E019 +:1087500006EB8001D1F8B01400EE101A38EE008A52 +:10876000DFED780AB4EE600AF1EE10FA00DB6D1C62 +:10877000401C3228ECDB9FED740A88EE008A20460C +:108780000AE006EB8001D1F8B01400EE101A30EECA +:10879000480A40EE008A401C3228F2DBB6F87A051F +:1087A00006EB8000D0F8B00400EE100AF3EE020AE7 +:1087B000B4EE600AF1EE10FA0EDB9FED630A88EE6C +:1087C000800AF1EE040AB4EE600AF1EE10FA03DB5F +:1087D000ADB2032D00DB01242046BDEC028B70BD41 +:1087E00080B5FFF74EFFFFF739FEFFF74AFFBDE800 +:1087F000024039E610B50024FFF743FFD0F8881592 +:10880000491CC0F88815B1F5FA7F03DD2146C0F890 +:1088100088150124204610BD38B50024FFF731FF2C +:1088200005469FED470ADFED460A9FED451ADFED4D +:10883000441A9FED432ADFED422A204610E00C2126 +:1088400041434A1992ED003A30EE030A491991ED7D +:10885000013A70EE830A91ED023A31EE031A401CA0 +:108860006428ECDB9FED393A80EE030AC0EE830A00 +:1088700081EE031A204616E00C2141434A1992ED7D +:10888000003A33EE403A43EE031A491991ED013AAA +:1088900033EE603A03EE032A91ED023A33EE413AA9 +:1088A00043EE032A401C6428E6DB9FED280A82EE93 +:1088B000800ADFED260AC1EEA00AB7EE001AF4EE38 +:1088C000410AF1EE10FA2DD5DFED200AC2EE200AA2 +:1088D000F4EE410AF1EE10FA24D5F7EE000AB4EEF8 +:1088E000600AF1EE10FA1DD5D5F88005401CC5F8D8 +:1088F000800500EB8001880042F2117188421DDB87 +:108900002046C5F8800505F280504168491C416049 +:108910000F480088814211DB0FF20810DAF7D0FD12 +:1089200001240BE00FF20C10DAF7CAFD2046C5F85F +:10893000800505F5B060214641600224204632BD25 +:108940000000000001006041000048420000C842F1 +:1089500010D60020583A0120AC3B0120B43B012046 +:10896000BC3B0120C43B012031850208558502082B +:108970006F8502089F850208B9850208FD850208F7 +:108980001386020853860208698602086D8602086B +:1089900014D600202341532041535F496E6974006F +:1089A00023415320555352494E5055540000000066 +:1089B0002341532041535F46696E200023415320D9 +:1089C00053545F53530A00002341532044545F53D0 +:1089D000484B00002341532053545F5344530A0033 +:1089E0002341532041535F54454E000023415320FF +:1089F00053545F534F530A002341532053545F4E47 +:108A00004D53530A000000002341532053545F414B +:108A1000534E4D4F530A00002341532041535F4FA3 +:108A2000460000002341532041535F41425F4454BC +:108A300000000000234153204343000010B5DFF83D +:108A4000AC4A03220021201DE0F7C1FF04220021CF +:108A50002046E0F7BCFF04220021DFF8940AE0F78B +:108A6000B6FF0822002104F11400E0F7B0FF08224D +:108A7000002104F11C00E0F7AAFF0822002104F104 +:108A80002400E0F7A4FF201DE06324640020A06020 +:108A9000E06220636064A064E06420656065A065B6 +:108AA000E06520666066A066E066E0606063207452 +:108AB0002087C8220146DFF8B80CE0F788FFC822FB +:108AC0000021DFF8B00CE0F782FFC8220021DFF8B8 +:108AD000A80CE0F77CFFC8220021DFF8A00CE0F72B +:108AE00076FFC8220021DFF8980CE0F770FFC8225B +:108AF0000021DFF8900CBDE81040E0F768BF0028C7 +:108B000005D0DFF8E819C96B0322DAF7A1BB70477B +:108B100070B584B0DFF8D4291378DFF8D449D5785C +:108B2000E678B54218D12578AB4215D155786678EC +:108B3000B54211D19578A478A5420DD11479057864 +:108B4000A54203D0042D07D0042C05D00C789679CB +:108B5000B4420DD0042D0BD1947802945478019432 +:108B60000093537B0A7801780FF20800DAF7A8FC2B +:108B70007FBD00004D5F50443A414356202564209C +:108B800025642025642025642025642025640A00AE +:108B900010B5C8220121DFF8E40BE0F718FFDFF879 +:108BA0004C49C820E0820020A082A061C822012197 +:108BB000DFF8CC0BE0F70BFFC820E0830020A08398 +:108BC0002062C8220121DFF8BC0BE0F700FFC820BB +:108BD000E0840020A084A06210BD2DE9F841068841 +:108BE00044888588B0F806E000273846F0468DF8BE +:108BF0000280F446BCF18D0F03D34FF0010C81F8D5 +:108C000000C0DB89032B04D0042B02D0D2B2012A8E +:108C100001D102460A70652E31D2744516DB0978FF +:108C2000AC4209DB01291FD0012721468D2921D221 +:108C3000652C24D3384622E0012915D00227294685 +:108C40008D2917D2652D1AD3012018E0754508DA51 +:108C5000042771468D290DD2BEF1650F0FD3012077 +:108C60000DE00978012901D1042708E002272946EF +:108C70008D2901D3022002E0652D00D301208DF85B +:108C800000708DF801000098BDE8F2812DE9704375 +:108C90002DED108B82B0B0EE40AAB0EE608AF0EEFF +:108CA000418ADFF84868707A0146D6ED16AA96ED3B +:108CB00015BAD6ED14BA96ED13CAD6ED12CA96EDD2 +:108CC000111A28EEA8DA68EE08DA2AEE0AEADFF8C6 +:108CD000A82ADFF8A03ADFF8984A357A002D40F04C +:108CE000AB8004EB810484ED00AA03EB810383EDE8 +:108CF000008A02EB8101C1ED008A31EE0A0A86ED9D +:108D0000110A3CEE888A86ED128A7CEE288AC6ED2E +:108D1000138A3EEE2BAA86ED14AA3DEE8BBA86EDA1 +:108D200015BA7DEE2AAAC6ED16AA401C7072C0B212 +:108D3000322840F07F8001203072002070729FED59 +:108D4000B89B10EE100ADBF72FFA53EC192BDCF767 +:108D5000F7F8E3F71DFA0BEE900AC6ED11BA18EE1C +:108D6000100ADBF721FA53EC192BDCF7E9F8E3F7EB +:108D70000FFA08EE100A86ED128A18EE900ADBF759 +:108D800013FA53EC192BDCF7DBF8E3F701FA08EEE2 +:108D9000900AC6ED138A1AEE100ADBF705FA53ECB7 +:108DA000192BDCF7CDF804460D462BEEAB0A10EE7E +:108DB000100ADBF7F9F902460B4620462946EDF783 +:108DC000EDF8E3F7E5F930651BEE100ADBF7ECF997 +:108DD00053EC192BDCF7B4F804460D4628EE080ACC +:108DE00010EE100ADBF7E0F902460B462046294652 +:108DF000EDF7D4F8E3F7CCF970651AEE900ADBF7DB +:108E0000D3F953EC192BDCF79BF804460D4628EEFA +:108E1000A80A10EE100ADBF7C7F902460B462046F7 +:108E20002946EDF7BBF8E3F7B3F9B065C820B08287 +:108E3000B083B0840020EDE08DED001A54F82100DD +:108E40000EEE900A53F821000FEE100A52F821009E +:108E50000FEE900A9FED729B11EE100ADBF7A4F95A +:108E600004460D463AEE6E0A10EE100ADBF79CF946 +:108E700053EC192BDCF764F822462B46E3F7F8FA9B +:108E8000E3F786F90AEE100A86ED11AA1CEE900AA5 +:108E9000DBF78AF904460D4638EE4F0A10EE100A49 +:108EA000DBF782F953EC192BDCF74AF822462B4604 +:108EB000E3F7DEFAE3F76CF908EE100A86ED128AA2 +:108EC0001CEE100ADBF770F904460D4638EEEF0A87 +:108ED00010EE100ADBF768F953EC192BDCF730F8C9 +:108EE00022462B46E3F7C4FAE3F752F908EE900A5C +:108EF000C6ED138A1BEE900ADBF756F980468946C9 +:108F00009DED000ADDED000A20EE200A0AEE4A0A75 +:108F100010EE100ADBF748F904460D460EEEEEEAB5 +:108F20001EEE100ADBF740F953EC192BDCF708F8BA +:108F300022462B46E3F79CFA42464B46E3F798FA63 +:108F4000E3F726F90AEE100A86ED14AA1BEE100AC2 +:108F5000DBF72AF9804689462CEEAC0A08EE480A6F +:108F600010EE100ADBF720F904460D464FEE4FDAFB +:108F70001DEE900ADBF718F953EC192BDBF7E0FF35 +:108F800022462B46E3F774FA42464B46E3F770FA63 +:108F9000E3F7FEF808EE100A86ED158A1AEE900A3D +:108FA000DBF702F9804689462CEE0C0A08EEE80A47 +:108FB00010EE100ADBF7F8F804460D460FEEEFDA74 +:108FC0001DEE100ADBF7F0F853EC192BDBF7B8FFB6 +:108FD00022462B46E3F74CFA42464B46E3F748FA63 +:108FE000E3F7D6F800EE100A86ED160A6AEE0A0AD2 +:108FF00048EE080A40EE000A10EE900ADBF7D4F8BB +:1090000041EC100BF5F73CFB51EC100BE3F7C0F80B +:10901000F065012002B0BDEC108BBDE8708300004C +:109020007B14AE47E17A943FF8B5002425462646E6 +:10903000DFF8B874797ADFF8380750F8212000EEAD +:10904000102ADFF8302752F8213000EE903ADFF88E +:10905000283753F821C001EE10CAF0EE401AB0EEE6 +:10906000602AF0EE412A97ED113AD7ED123A97EDCA +:10907000134AF0EE404AB0EE605AF0EE415AB0EEBC +:10908000406AF0EE606AB0EE417A4FF0010C2CE0DD +:10909000B4EE414AF1EE10FA04D5F4EE442AF1EEB2 +:1090A00010FA09D4B4EE441AF1EE10FA15D5B4EE64 +:1090B000624AF1EE10FA10D5641C9FEDC02AF4EE5E +:1090C000421AF1EE10FA08DB6D1C9FEDCA2AF4EE8D +:1090D000421AF1EE10FA00DB761CF0EE401AB0EE08 +:1090E000602AF0EE412A0CF1010CBCF1320F80F045 +:1090F000A580491CC9B2322900D1002150F821E0D5 +:1091000000EE10EA52F821E000EE90EA53F821E078 +:1091100001EE10EAF4EE404AF1EE10FA02D5F0EE5C +:10912000404A06E0B4EE460AF1EE10FA01D5B0EE80 +:10913000406AB4EE605AF1EE10FA02D5B0EE605A11 +:1091400006E0F4EE660AF1EE10FA01D5F0EE606A80 +:10915000F4EE415AF1EE10FA02D5F0EE415A06E073 +:10916000B4EE471AF1EE10FA01D5B0EE417A70EE86 +:10917000617AF5EE407AF1EE10FA01D571EEC07A1F +:10918000B4EE403AF1EE10FA04D5F4EE431AF1EEE3 +:1091900010FA09D4B4EE430AF1EE10FA15D5B4EE84 +:1091A000613AF1EE10FA10D5641CDFED841AF4EE8A +:1091B000617AF1EE10FA08DB6D1CDFED8E1AF4EE29 +:1091C000617AF1EE10FA00DB761C70EEC21AF5EE51 +:1091D000401AF1EE10FA01D572EE601AF4EE603A20 +:1091E000F1EE10FA04D5B4EE632AF1EE10FA09D4C8 +:1091F000F4EE630AF1EE10FA15D5F4EE423AF1EE10 +:1092000010FA10D5641C9FED6D2AF4EE421AF1EEAF +:1092100010FA08DB6D1C9FED772AF4EE421AF1EE8E +:1092200010FA00DB761C71EE621AF5EE401AF1EED0 +:1092300010FA7FF52DAF72EEC11A29E734EEC60A97 +:1092400087ED180A75EE660AC7ED190A35EEC71ADA +:1092500087ED1A1A20EE000A00EEA00A01EE010ABC +:1092600010EE100ADAF7A0FF41EC100BF5F708FA40 +:1092700051EC100BE2F78CFFF866BC85FD853E864D +:10928000F1BD000010B501460020984C42290ED1D6 +:1092900094ED1B0ADFED8F0AB4EE600AF1EE10FACE +:1092A00005D5A18E142904DA491CA18601E00146E6 +:1092B000A186A18E142907DB607B012801D1FFF76D +:1092C00067FC012000216173207010BD38B50024B7 +:1092D000864D95ED170ADFED800AB4EE600AF1EED7 +:1092E00010FA08DA95ED1B0ADFED7C0AB4EE600A8D +:1092F000F1EE10FA05DBA87B142807D2401CA873F6 +:1093000004E0A87B002801D0401EA873A87B002899 +:1093100005D00124687B002801D1FFF739FC6C706F +:10932000204632BD38B50024704D95ED140AD5EDB8 +:10933000150A30EE200AD5ED160A80EE800ADFED20 +:10934000680AB4EE600AF1EE10FA17DBD5ED1A0ADE +:109350009FED641AF4EE410AF1EE10FA0EDBB2EE64 +:10936000041AF4EE410AF1EE10FA07D5002805D1EF +:10937000E87B1E2816DA401CE87313E0DFED5A0A7A +:10938000B4EE600AF1EE10FA07DB002805D1E87BA5 +:109390001E2807DA401CE87304E0E87B002801D0AF +:1093A000401EE873E87B1F2805DB0124687B00284A +:1093B00001D1FFF7EDFBAC70204632BD9A99993E82 +:1093C000DFF8241C0078042811D1487B00280ED136 +:1093D000488EB0F5AF7F02DA401C48867047B0F582 +:1093E000AF7F06DB012048730020488670470020CD +:1093F000488670470100003F0278042A0CD1DFF84C +:10940000E82B537B002B07D1528EB2F5AF7F03D2EE +:1094100001220270002008707047DFF8CC2B138FF8 +:10942000007804281DD10878002803D0022814D021 +:109430000AD317E0180003D04C2801DA5B1E11E0B4 +:109440004C280FDB4B230DE018464B2801DA5B1C40 +:1094500008E04C2806DB4B2304E0AF2B02D25B1C58 +:1094600000E000239BB21846322802DA0020087080 +:1094700006E0962802DA0120087001E00220087058 +:1094800013877047DFF8603B0078042812D1087812 +:1094900000280FD1587B01280CD1D88E42F22831F8 +:1094A000884207DA422A02D1C01CD88604E0401C58 +:1094B000D88601E00020D886D88E42F22831884232 +:1094C00006DB00205873D8860FF67830D9F7F8BF3E +:1094D000704700007F8CB93E010048430100F04115 +:1094E000010080409A9939400100A041582801208C +:1094F000683C01202DE9F24F90B0054695ED021A27 +:10950000D5ED010A95ED000AFFF7C0FB002800F039 +:109510002B81DFF8D44A607A95492A6841F82020E7 +:1095200094496A6841F820209349AA6841F82020AC +:10953000401C6072C0B2322801D100206072FFF777 +:1095400073FDBDF84000FFF79DFE0546FFF7BEFE28 +:109550000646FFF7E7FE07464FF00008C146012D1B +:1095600004D14FF001084FF00209B5E057EA0600B8 +:1095700040F09E8004A8FEF741FE94F80AA0DFF8B0 +:10958000FCB11AF80B008DF8000000F02BF90AF876 +:109590000B0004F1140201469DF8000000F0F4F8FD +:1095A00004AB2A4604F10B0104F11400FFF715FB8C +:1095B000039094F80AA0DFF8C8B11AF80B008DF8F0 +:1095C000000000F0ABF901460AF80B1004F11C0290 +:1095D0009DF8000000F0D8F804AB2A4604F10C0115 +:1095E00004F11C00FFF7F9FA029094F80AA0DFF8E2 +:1095F00094B11AF80B008DF8000000F055FB0AF842 +:109600000B0004F1240201469DF8000000F0BCF8B4 +:1096100004AB2A4604F10D0104F12400FFF7DDFA42 +:109620000190A07A401CA072C0B2C82801D1404667 +:10963000A0729DF80400002832D09DF80C00042888 +:109640000CD19DF80810042908D19DF804100429B4 +:1096500004D04FF004084FF0010921E09DF80410F8 +:10966000042904D14FF004089DF8059018E0012862 +:1096700009D19DF80820012A05D1012903D14FF015 +:109680000108C1460CE0012805D09DF8080001281A +:1096900001D0012902D14FF0010801E04FF002088A +:1096A000607B002802D10021E1722173E07013E099 +:1096B000607B012802D1042020740DE0A07ADFF83D +:1096C000C4B000EB0B01643803D591F8640020743A +:1096D00002E011F8640C207400208DF80000607B1B +:1096E00001280CD146EA0500384308D104208DF842 +:1096F0000100B8F1040F0ED18DF800900BE0012E9F +:1097000001D0012F03D1207C8DF8010003E08DF8FA +:1097100001808DF800900DF10100FFF751FE00A9C6 +:109720000DF10100FFF768FEBDF8402000A90DF122 +:109730000100FFF7A7FE00A90DF10100FFF76DFE84 +:1097400000A90DF10100FFF7E3F99DF80100207178 +:10975000012060719DF80000A071201DE063246469 +:10976000DFF8DC082168016011B0BDE8F08F00006F +:109770006816012030170120F8170120C0180120B9 +:1097800088190120501A0120042913D8DFE801F0BC +:1097900003070B120F001188491C11800AE0518841 +:1097A000491C518006E09188491C918002E0D188D3 +:1097B000491CD180042813D8DFE800F003070B12FE +:1097C0000F001088401E108070475088401E508047 +:1097D00070479088401E90807047D088401ED0808F +:1097E00070470000DFF80008018E10293EDB828DF3 +:1097F0002F2A01DB0420704790ED160ADFED3E0AA8 +:10980000B4EE600AF1EE10FA25DB212901DB042019 +:109810007047202A01DB01207047DFED380AB4EEE3 +:10982000600AF1EE10FA10DB1D2A0CDB90ED150A30 +:10983000DFED330AB4EE600AF1EE10FA01DB01202D +:10984000704702207047022070471B2A01DB01206D +:10985000704702207047DFED2B0AB4EE600AF1EE8C +:1098600010FA01DB042070470120704790ED150AC3 +:10987000DFED250AB4EE600AF1EE10FA3ADB90ED66 +:10988000160ADFED220AB4EE600AF1EE10FA2BDBC5 +:10989000828D1B2A0EDBDFED1E0AB4EE600AF1EEAC +:1098A00010FA05DB222A01DB0120704702207047F5 +:1098B00001207047172A15DBDFED160AB4EE600AA7 +:1098C000F1EE10FA01DB0220704790ED140ADFED93 +:1098D000120AB4EE600AF1EE10FA01DB02207047C2 +:1098E0000120704702207047092901DB02207047E0 +:1098F000022070470120704724622A3ED3DF1B3FBD +:10990000E981EF3D90C2F53C37C5833D2E3AB93D24 +:10991000170F1B3F431E193F75B04E3EDFF8C806B8 +:10992000818D90ED150A2029C0F21F81DFEDBD0A5F +:10993000B4EE600AF1EE10FAC0F2FD802F2932DB9E +:10994000C18D162901DB04207047D0ED1A0A9FED66 +:10995000B61AF4EE410AF1EE10FA0EDBDFEDB30AAF +:10996000B4EE600AF1EE10FA05DB142901DB0420E5 +:1099700070470120704701207047D0ED180A9FED15 +:10998000AC1AF4EE410AF1EE10FA0ADBDFEDA90A97 +:10999000B4EE600AF1EE10FA01DB042070470120FA +:1099A000704704207047D0ED180A9FEDA31AF4EE1B +:1099B000410AF1EE10FA79DB90ED191ADFED9F1AEA +:1099C000B4EE611AF1EE10FA19DB028E0F2A05DBF4 +:1099D000242901DB042070470220704790ED140A0F +:1099E000DFED970AB4EE600AF1EE10FA01DB012018 +:1099F0007047082A01DB04207047012070479FED63 +:109A0000911AF4EE410AF1EE10FA27DB90ED141AE8 +:109A1000DFED8D1AB4EE611AF1EE10FA0ADB9FED5C +:109A20008B0AF4EE400AF1EE10FA01DB04207047D5 +:109A3000012070479FED861AB4EE410AF1EE10FA4C +:109A40000ADB9FED840AF4EE400AF1EE10FA01DB26 +:109A50000120704702207047012070479FED7E1A59 +:109A6000B4EE410AF1EE10FA01DB0420704790EDEC +:109A7000160A9FED7A1AB4EE410AF1EE10FA0ADBEB +:109A80002C2906DB008E072801DB0420704701200B +:109A90007047012070479FED720AF4EE400AF1EE24 +:109AA00010FA01DB04207047012070479FED6D1A0A +:109AB000B4EE410AF1EE10FA01DB042070479FED8D +:109AC0006A1AF4EE410AF1EE10FA01DB0120704748 +:109AD00090ED1A1ADFED651AB4EE611AF1EE10FA84 +:109AE00001DB012070479FED621AB4EE410AF1EEEE +:109AF00010FA01DB042070479FED5E0AF4EE400A85 +:109B0000F1EE10FA01DB0120704790ED190ADFED4C +:109B10005A0AB4EE600AF1EE10FA01DB0420704735 +:109B2000DFED560AB4EE600AF1EE10FA01DB012017 +:109B3000704704207047DFED520AB4EE600AF1EE80 +:109B400010FA10DB2F2901DB0420704790ED140A76 +:109B5000DFED4C0AB4EE600AF1EE10FA01DB0120F1 +:109B600070470420704701207047DFED470AB4EECC +:109B7000600AF1EE10FA2ADB172926DB90ED160AAF +:109B8000DFED420AB4EE600AF1EE10FA01DB0220CA +:109B9000704790ED140ADFED3E0AB4EE600AF1EE74 +:109BA00010FA01DB02207047192901DB0120704700 +:109BB00090ED1A0ADFED370AB4EE600AF1EE10FA02 +:109BC00001DB012070470220704702207047DFED63 +:109BD000320AB4EE600AF1EE10FA20DB90ED180ABA +:109BE000DFED2E0AB4EE600AF1EE10FA15DB90ED0F +:109BF000190ADFED2B0AB4EE600AF1EE10FA0ADB67 +:109C0000DFED280AB4EE600AF1EE10FA01DB012064 +:109C100070470420704701207047042070470120DE +:109C2000704700BFCA8AE13BB58C1F4012A53D3D7D +:109C3000A7B2503FD9D04D3D15053A3FDB56DD3F29 +:109C4000F33C383D7179823F91DAD43EE5D5494005 +:109C5000AEDB203E42F01440910F3A3D6687F83C5F +:109C600060CB4B3F6631B13CF0C6163F50701E4092 +:109C7000CD04433C4089BF3E8770C43ED89DBE3E64 +:109C80007864AC3B3A24353BB6A1823D99BA1B3F80 +:109C9000172D503EEC531D40371A403CC5210B3F59 +:109CA000A43B983F446F9F3FCF48C18D2329C0F20A +:109CB000C0802F2930DB332901DB0420704790ED71 +:109CC0001A0ADFEDBD0AB4EE600AF1EE10FA11DBFC +:109CD000018E08290CDB90ED180ADFEDB80AB4EE0E +:109CE000600AF1EE10FA01DB012070470420704792 +:109CF0000120704790ED180ADFEDB10AB4EE600A5A +:109D0000F1EE10FA06DB008E0D2801DB042070470F +:109D1000012070470420704790ED190AD0ED180A11 +:109D20009FEDA81AF4EE410AF1EE10FA42DB9FED26 +:109D3000A61AB4EE410AF1EE10FA11DB018E0F29DA +:109D400001DB0420704790ED140ADFEDA00AB4EEA9 +:109D5000600AF1EE10FA01DB012070470420704721 +:109D600090ED140A9FED9A1AF4EE410AF1EE10FA02 +:109D700015DBDFED980AB4EE600AF1EE10FA0CDBA9 +:109D800090ED1A0ADFED940AB4EE600AF1EE10FAD3 +:109D900001DB012070470420704701207047DFED90 +:109DA0008F0AB4EE600AF1EE10FA01DB042070476E +:109DB000012070479FED8A1AB4EE410AF1EE10FAC5 +:109DC00031DB90ED1A1ADFED871AB4EE611AF1EE6D +:109DD00010FA06DB008E092801DB04207047012001 +:109DE00070479FED821AB4EE410AF1EE10FA01DBE2 +:109DF000042070479FED7E1AF4EE410AF1EE10FA4E +:109E000001DB01207047808D2A2801DB0420704788 +:109E1000DFED780AB4EE600AF1EE10FA01DB0420FF +:109E2000704701207047282901DB0420704701207A +:109E3000704790ED150ADFED700AB4EE600AF1EE9E +:109E400010FA5CDBD0ED1B0A9FED6C1AF4EE410AB0 +:109E5000F1EE10FA2FDB17292BDB90ED140AD0ED71 +:109E6000160A9FED671AF4EE410AF1EE10FA15DBBF +:109E7000DFED640AB4EE600AF1EE10FA0CDB90ED4F +:109E8000180ADFED610AB4EE600AF1EE10FA01DBA8 +:109E9000012070470220704702207047DFED5B0A07 +:109EA000B4EE600AF1EE10FA01DB022070470120E7 +:109EB0007047022070479FED561AF4EE410AF1EE0A +:109EC00010FA1ADB818D19290CDB90ED160ADFEDF3 +:109ED000510AB4EE600AF1EE10FA01DB022070477D +:109EE00001207047DFED4C0AB4EE600AF1EE10FA83 +:109EF00001DB022070470120704704207047DFED2E +:109F0000470AB4EE600AF1EE10FA53DBD0ED180AFE +:109F10009FED431AF4EE410AF1EE10FA1EDB9FEDBD +:109F2000411AB4EE410AF1EE10FA15DB90ED1B0A6E +:109F30009FED3D1AB4EE410AF1EE10FA01DB01206B +:109F400070479FED3A0AF4EE400AF1EE10FA01DB99 +:109F5000012070470420704701207047DFED340A6C +:109F6000B4EE600AF1EE10FA17DB90ED190ADFED9E +:109F7000310AB4EE600AF1EE10FA01DB04207047FA +:109F800090ED140ADFED2C0AB4EE600AF1EE10FA3F +:109F900001DB012070470420704790ED160ADFEDC9 +:109FA000270AB4EE600AF1EE10FA01DB04207047D4 +:109FB00001207047012070478BC71F4036054D4078 +:109FC000F9A78E3F55A85A3FDB56DD3F3886403D06 +:109FD0007179823F9E48D83E79977440753E3C3DEA +:109FE0003BAEAE3E350D1F405828012082742D3FF8 +:109FF000A43C173F9BAEE73EB6A1823D878C6F40E5 +:10A0000099BA1B3F6F69453ECC9E2A408DBA663E89 +:10A010008C5044409948D13E81B6953D7313B53B71 +:10A0200063D5083FDCF93E3DCDED2540D064833F4C +:10A0300021CB023CD274E63EDF57E53B7B6A753D9F +:10A04000683C01205B4D5F50443A4143565D204CD3 +:10A050006F636B204F66660038B5DFF8B04750225B +:10A06000002104F13000DFF7B2FC50220021DFF7BD +:10A07000AEFCDFF89C575022002105F12800DFF7E5 +:10A08000A6FC50220021DFF88C07DFF7A0FC50224D +:10A090000021DFF88407DFF79AFC50220021DFF867 +:10A0A0007C07DFF794FC00202070607020716071E5 +:10A0B000A070E070A07120816081DFF86407C4F8AF +:10A0C00080009FEDC80B84ED040B84ED060B84ED3E +:10A0D000080B84ED0A0B0020A86731BD2DE9F84F6D +:10A0E0002DED048B84B0B0EE408ADFF82047218943 +:10A0F00000EB010BA4F808B0618945186581A079CF +:10A10000192803DA401CA07184ED208A9FEDB20A61 +:10A11000B4EE408AF1EE10FAC0F21781D4ED200AB5 +:10A12000F4EE400AF1EE10FAC0F20F81A07919287E +:10A13000C0F20B811FFA8BFBBBF1C30FC0F205818C +:10A1400094F800A05646DFF8CC7607EB860080ED49 +:10A15000008A84ED208A94F80190B9F1000F04D1AF +:10A1600087ED148A87ED158A52E0D7ED168A9FEDA8 +:10A170009B9B97ED140A28EE800A10EE100ADAF77E +:10A1800013F8CDE9020118EE900ADAF70DF802464D +:10A190000B4651EC190BEBF701FFCDE9000118EE6E +:10A1A000100ADAF701F8DDE90023DAF7C9FEDDE984 +:10A1B0000223E2F75DF9E1F7EBFF08EE100A87ED05 +:10A1C000148AD7ED178A97ED150A28EE800A10EE4B +:10A1D000100AD9F7E9FFCDE9020118EE900AD9F784 +:10A1E000E3FF02460B4651EC190BEBF7D7FECDE926 +:10A1F000000118EE100AD9F7D7FFDDE90023DAF7DE +:10A200009FFEDDE90223E2F733F9E1F7C1FF78654C +:10A21000ADB2B5F57A7F13DDA078DFF800167A6D60 +:10A2200041F82020401CA070C0B2142801D10020A9 +:10A23000A070E078142801DA401CE07000206081F2 +:10A240004D46142D30D106F10108B8F1140F01D19B +:10A250004FF0000857F8280008EE100AD9F7A4FFBD +:10A2600002460B46D4E90401EBF798FEC4E9040169 +:10A2700028EE080A10EE100AD9F796FF02460B46A0 +:10A28000D4E90601EBF78AFEC4E90601DFF8880588 +:10A2900050F82800D9F788FF02460B46D4E9080198 +:10A2A000EBF77CFEC4E9080157F8260008EE100A17 +:10A2B000D9F77AFFD4E90423E2F7DAF8C4E9040114 +:10A2C00028EE080A10EE100AD9F76EFFD4E906232B +:10A2D000E2F7CEF8C4E9060152464946384600F096 +:10A2E000ADF9DFF8340500EB860080ED000A10EED2 +:10A2F000100AD9F759FFD4E90823E2F7B9F841EC7D +:10A30000180B84ED088B04EB8600796D0163DFF890 +:10A31000000520F816B0142D02DA09F10100607072 +:10A320006078E1F727FF02460B4651EC180BD9F78E +:10A3300063FFC4E90A010AF101002070C0B21428C9 +:10A3400001D1002020700020208104B0BDEC048BDE +:10A35000BDE8F18F80B5DFF8B4048078411E00D5E8 +:10A360001431801F00D51430DFF8B02402EB8101D6 +:10A3700091ED000A02EB8000D0ED000A30EE600A99 +:10A3800010EE100AD9F710FF21F00041E1F700FFAD +:10A3900000EE100A01BD80B5DFF870048078411E20 +:10A3A00000D51431801F00D51430DFF86C2402EB87 +:10A3B000810191ED000A02EB8000D0ED000A30EE41 +:10A3C000600A10EE100AD9F7EFFE21F00041E1F724 +:10A3D000DFFE00EE100A01BD0100FA43000000009C +:10A3E0000000F03F00000000000000002DE9F843ED +:10A3F0002DED0A8BB0EE409A814688460024254612 +:10A40000DFEDBA8A9FEDB98ADFEDB89A5FFA89F974 +:10A41000B9F1040F04D19FEDB6AADFEDB6AA03E0AF +:10A420009FEDB5AADFEDB5AADFF8E06370781428D8 +:10A4300040F0FE80F0780728C0F2FA80B5EE409A2E +:10A44000F1EE10FA40F3F480FFF784FFB0EE40BA6B +:10A45000FFF7A1FFF0EE40BADFF8B473B4EE4BAAF9 +:10A46000F1EE10FA32D596ED0ACB1AEE900AD9F732 +:10A470009BFE53EC1C2B23F00043E2F73DFD25D25D +:10A4800051EC1C0B21F00041DFF89823DFF89833E2 +:10A49000E2F732FD1AD29FED9A0AF4EE40BAF1EEDD +:10A4A00010FA13D597ED1E0AB5EE400AF1EE10FA38 +:10A4B00001D1224602E0F86FA8EB00024B4671780A +:10A4C0003078401E00F01EF9044602E02046B867CE +:10A4D000F867002C00F0A68097ED1E0AB5EE400A42 +:10A4E000F1EE10FA04D1C7F87C804FF07E50B867C7 +:10A4F000284604E037F811104D19ADB2401C80B267 +:10A5000001461429F6DB2846E1F734FEDFF81C2368 +:10A51000DFF81C33DAF714FDE1F73AFE09EE900A92 +:10A5200019EE100AD9F740FEC24AC34BDAF708FD0C +:10A53000E1F72EFE00EE100A29EE809A3078411ED7 +:10A5400000D514317278801A00D5143006EB8101E1 +:10A5500091ED0C0A06EB8000D0ED0C0A30EE600A9B +:10A56000FFEE000A20EE200A10EE100AD9F71CFEBA +:10A57000B24AB34BD9F740FEE1F70AFE09EE900A62 +:10A58000F4EE499AF1EE10FA02DBDFED589A11E091 +:10A5900029EE090A09EEE90A10EE100AD9F704FEBD +:10A5A00041EC100BF4F76CF851EC100BE1F7F0FDF7 +:10A5B00008EE900A307989EEA80A07EB800181ED58 +:10A5C0000A0A401C3071C0B2142801D10020307139 +:10A5D0007079142801DA401C7071002006E007EB46 +:10A5E000800191ED0A0A38EE008A401C71790A4612 +:10A5F00080B29042F3D3B2EE040A28EE000A00EED5 +:10A60000901AF8EE600A80EE200A10EE100AD9F7D0 +:10A61000CBFD8C4A8C4BDAF793FCE1F7B9FD09EEE0 +:10A62000900A02E0284630717071B0EE690A01E0CC +:10A630009FED2E0ABDEC0A8BBDE8F18338B52DEDF8 +:10A64000048B9FED2A8A9FED290ADFED280ADFEDB2 +:10A65000278A00231AE0142C00DB143C01EE103A88 +:10A66000B8EEC11A31EE088A50F8244001EE904A43 +:10A6700030EE210A41EE210A13FB03F401EE104AE9 +:10A68000B8EEC11A71EE288A5B1CDBB20C46A342FD +:10A6900005DA141B1C19641CDDD51434DEE701EE49 +:10A6A000101AB8EE419A69EE200A48EE400A10EE00 +:10A6B000900AD9F779FD04460D4629EE280A08EEDE +:10A6C000480A10EE100AD9F76FFD604A604BE1F7B7 +:10A6D000CFFE02460B4620462946D9F78DFDE1F70D +:10A6E00057FD00EE100ABDEC048B31BD00000000E8 +:10A6F000CDCC4C3EA69B443B8FC2753D6F12033BB5 +:10A700000BD7A33C2DE9F24F2DED028B0446914669 +:10A710004FF00008002C01D5143402E0142C00DBAB +:10A72000143C45462E46042B02D19FED348A01E0AD +:10A730009FED338A2F460EE09FED320AF4EE408AF9 +:10A74000F1EE10FA06DBF4EE488AF1EE10FA01D5CC +:10A75000761CB6B27F1C9DF80800FFB23946421E37 +:10A76000914236DA201A0818401C01D5143002E054 +:10A77000142800DB1438411C142900DB1439234A47 +:10A7800002EB810191ED0C0A02EB8000D0ED0C0A86 +:10A7900070EE608A9FED1C0AF4EE408AF1EE10FA2A +:10A7A000CAD518EE900AD9F7FFFC02460B4692462E +:10A7B0009B4618EE100AD9F7F7FC4246254BDAF70C +:10A7C000BFFB52465B46E2F797FBB5D26D1CADB2BC +:10A7D000C0E7B9F1090F01D20E2000E00A20B04213 +:10A7E00002D24FF0010803E0A84201D24FF0020864 +:10A7F0004046BDEC028BBDE8F28F00008FC2F53CF5 +:10A800008FC2753C7012033B6F1203BB0023012003 +:10A81000702501207C84002070320120C03201208C +:10A8200000407E447B14AE47E17A843FFCA9F1D21C +:10A830004D62503F0492B06F2711913FB81E85EBD7 +:10A8400051B8BE3F9A9999999999B93F8DEDB5A0A4 +:10A85000F7C6B03E0000F0BF1FB501F04FFF212149 +:10A8600001601FBD90420CD141EA030C50EA4C0C30 +:10A8700007D0994205D14FF4001C1CEB410F38BFA3 +:10A880008942704710B5DFF8F8440020206001F0DD +:10A89000D6F8606105206060012010BDDFF8E0049B +:10A8A000002101600120704770B52DED048B84B04C +:10A8B0000C4600210391029101910091DFF8C054F0 +:10A8C000012C07D1296090ED008AD0ED018A90ED2E +:10A8D000029A7BE069684A1E68692B6893421DDA18 +:10A8E0001E22591C09B200F0CBFA85ED020A1E2285 +:10A8F0002868411C09B2686900F0E0FA85ED040A95 +:10A900001E222868411C09B2686900F0F5FA85ED3D +:10A91000030A2868401C00EE100A49E018D11E22E4 +:10A9200009B200F0ADFA85ED020A1E22696809B28B +:10A93000686900F0C3FA85ED040A1E22696809B24D +:10A94000686900F0D9FA85ED030A95ED010A2FE058 +:10A950001E2209B200F084FA06461E220021686910 +:10A9600000F07EFA95ED020AD6ED000A30EE600A9C +:10A97000D0ED000A30EE200A85ED020A95ED040ABA +:10A98000D6ED010A30EE600AD0ED010A30EE200A61 +:10A9900085ED040A95ED030AD6ED020A30EE600A51 +:10A9A000D0ED020A30EE200A85ED030A95ED010A8A +:10A9B000B8EEC00AD5ED020A80EE808AD5ED040A11 +:10A9C000C0EE808AD5ED030A80EE809AB0EE491A77 +:10A9D000F0EE680AB0EE480A01A903A800F022F8D8 +:10A9E0000022B0EE491AF0EE680AB0EE480A00A95B +:10A9F00002A800F0BCF82868401C286001F013F899 +:10AA0000039981610199C1610299016200994162D2 +:10AA1000022C02D0012101F00EF8012004B0BDEC9F +:10AA2000048B70BD38B52DED068B04460D46B0EE97 +:10AA300040AAF0EE608AB0EE418AB5EE408AF1EEAF +:10AA400010FA40D5F1EE480A00F01EFB9FEDBF9BC7 +:10AA500010EE100AD9F7A8FB53EC192BDAF770FAAD +:10AA6000E1F796FB00EE100A00F02AF9BDEEC00AED +:10AA700084ED000A2AEE0A0A08EE080A10EE100A0F +:10AA8000D9F792FB41EC100BF3F7FAFD51EC100BE8 +:10AA9000E1F77EFB00EE900AB1EE680A00F0F4FAEE +:10AAA00010EE100AD9F780FB53EC192BDAF748FAAD +:10AAB000E1F76EFB00EE100A00F002F9BDEEC00AED +:10AAC00085ED000A50E0B5EE408AF1EE10FA4BDD5C +:10AAD000F0EE480AB1EE4A0A00F0D6FA9FED9B9BD1 +:10AAE00010EE100AD9F760FB53EC192BDAF728FAAD +:10AAF0000022984BE1F7BCFCE1F74AFB00EE100A9C +:10AB000000F0DEF8BDEEC00A84ED000A2AEE0A0A63 +:10AB100008EE080A10EE100AD9F746FB41EC100BBC +:10AB2000F3F7AEFD51EC100BE1F732FB00EE900AAB +:10AB3000B1EE680A00F0A8FA10EE100AD9F734FB5B +:10AB400053EC192BDAF7FCF90022834BE1F790FC68 +:10AB5000E1F71EFB00EE100A00F0B2F8B1EE400A79 +:10AB6000BDEEC00A85ED000ABDEC068B31BD38B5DF +:10AB70002DED048B04460D46F0EE408AB0EE609A4F +:10AB8000B0EE418AB5EE409AF1EE10FA18D5F1EE2A +:10AB9000490A00F079FA10EE100AD9F705FB6F4A5E +:10ABA000784BDAF7CDF9E1F7F3FA00EE100A00F08E +:10ABB00087F8B1EE400ABDEEC00A84ED000A20E03D +:10ABC000B5EE409AF1EE10FA1BDBB1EE680A00F028 +:10ABD0005BFA10EE100AD9F7E7FA604A694BDAF728 +:10ABE000AFF900225C4BE1F743FCE1F7D1FA00EE4C +:10ABF000100A00F065F8B1EE400ABDEEC00A84ED1F +:10AC0000000AB5EE408AF1EE10FA28D528EEA80A1F +:10AC100009EE090A10EE100AD9F7C6FA41EC100B3A +:10AC2000F3F72EFD51EC100BE1F7B2FA00EE900AAB +:10AC3000B0EE480A00F028FA10EE100AD9F7B4FA7C +:10AC4000464A504BDAF77CF9E1F7A2FA00EE100A17 +:10AC500000F036F8BDEEC00A85ED000A2CE0B5EE36 +:10AC6000408AF1EE10FA27DD28EEA80A09EE090A5B +:10AC700010EE100AD9F798FA41EC100BF3F700FD2B +:10AC800051EC100BE1F784FA00EE900AB0EE480A9E +:10AC900000F0FAF910EE100AD9F786FA2F4A394B6C +:10ACA000DAF74EF9E1F774FA00EE100A00F008F84E +:10ACB000BDEEC00A85ED000ABDEC048B31BD00007D +:10ACC000DFED270A9FED271AB4EE410AF1EE10FAE4 +:10ACD00009DBB4EE600AF1EE10FA04D5DFED220ACA +:10ACE00030EE200A7047B4EE600AF1EE10FA0BDB8A +:10ACF000DFED1E0AB4EE600AF1EE10FA04D5DFEDC6 +:10AD00001C0A30EE200A7047DFED1A0ADFED1A1A2E +:10AD1000B4EE610AF1EE10FA09DBB4EE600AF1EE6E +:10AD200010FA04D5DFED150A30EE200A7047B4EEB4 +:10AD3000600AF1EE10FA08DBDFED130AB4EE600AE8 +:10AD4000F1EE10FA01D530EE010A7047E6C1631A40 +:10AD5000DCA54C4000806640008066C0E6C1631AF6 +:10AD6000FFFF06C4000034C400003444FFFF33C3B7 +:10AD70000000B44301000744010034430000B4C3A1 +:10AD8000D8390120DCA54C4001003444E54A126862 +:10AD90009FEDBC0A038800EB4303B3F9043000EED7 +:10ADA000903AF8EEE00A92ED001AB8EE411A70EE11 +:10ADB000C10A92ED031AB8EE411AC0EE810A60EEA4 +:10ADC000800AC1ED000AD2ED010AF8EE600A03889C +:10ADD00000EB4303B3F9063001EE103AB8EEC11AA6 +:10ADE00070EEC10A92ED041AB8EE411AC0EE810A63 +:10ADF00060EE800AC1ED010AD2ED020AF8EE600AA7 +:10AE0000038800EB4300B0F9080001EE100AB8EE29 +:10AE1000C11A70EEC10A92ED051AB8EE411AC0EEE1 +:10AE2000810A20EE800A81ED020A01207047038822 +:10AE3000934201D30023038003885B1C03809BB2F1 +:10AE4000934201D300220280028802EB420300EB0E +:10AE50008300001D91EC030A80EC030A0120704777 +:10AE6000B0F90030591A09B2002901D511FA82F15E +:10AE700009B201EB410200EB8200001D70470000A7 +:10AE800070B49FEDB80A0023B0F9004010E024B27E +:10AE9000250008D405EB450600EB8605D5ED010A33 +:10AEA00030EE200A641E24B2002C00D5541E5B1C18 +:10AEB0001BB28B42EBDB70BC7047000070B49FED9F +:10AEC000A90A0023B0F9004010E024B2250008D4FC +:10AED00005EB450600EB8605D5ED020A30EE200AAB +:10AEE000641E24B2002C00D5541E5B1C1BB28B4286 +:10AEF000EBDB70BC7047000070B49FED9A0A002332 +:10AF0000B0F9004010E024B2250008D405EB450656 +:10AF100000EB8605D5ED030A30EE200A641E24B24C +:10AF2000002C00D5541E5B1C1BB28B42EBDB70BCAB +:10AF30007047000010B52DED068BADF5FB6D00A838 +:10AF40000FF2282140F2D472D8F792F99FED768B58 +:10AF50009FED779B00ACB5EE400AF1EE10FA48DBAE +:10AF60009FED75ABDFED760AB4EE600AF1EE10FAF4 +:10AF70001AD510EE100AD9F717F953EC192BD9F797 +:10AF8000DFFF53EC182BE1F773FAD9F77FFA54F887 +:10AF90002000E1F7E5F853EC1A2BD9F7D1FFE1F7E0 +:10AFA000F7F800EE100A68E0F7EE000A80EE800A7B +:10AFB00010EE100AD9F7F8F853EC192BD9F7C0FFA7 +:10AFC00053EC182BE1F754FAD9F760FA54F8200043 +:10AFD000E1F7C6F853EC1A2BD9F7B2FF02460B463D +:10AFE0005B485849EAF7DAFFE1F7D2F800EE100AB9 +:10AFF00043E0FFEE000AB4EE600AF1EE10FA1CDB4B +:10B00000B1EE400A10EE100AD9F7CEF853EC192B26 +:10B01000D9F796FF53EC182BE1F72AFAD9F736FA4D +:10B0200054F82000E1F79CF80022474BD9F788FF3D +:10B03000E1F7AEF800EE100A1FE080EE800A10EE95 +:10B04000100AD9F7B1F853EC192BD9F779FF53EC63 +:10B05000182BE1F70DFAD9F719FA54F82000E1F7A7 +:10B060007FF80022394BD9F76BFF394A3E4BE1F7A5 +:10B07000FFF9E1F78DF800EE100A0DF5FB6DBDEC60 +:10B08000068B10BDC3F51C4180B5B0EE401AF5EE3D +:10B09000400AF1EE10FA04DD81EE200ABDE801401D +:10B0A00048E7F5EE400AF1EE10FA24D581EE200AC9 +:10B0B000B5EE401AF1EE10FA0EDBFFF73BFF10EE93 +:10B0C000100AD9F771F8224A224BE1F7D1F9E1F7DA +:10B0D0005FF800EE100A01BDFFF72CFF10EE100A1A +:10B0E000D9F762F81A4A1C4BE1F7C2F9E1F750F8B8 +:10B0F00000EE100A01BDB5EE401AF1EE10FA02DDC5 +:10B100009FED160A01BDB5EE401AF1EE10FA02D518 +:10B110009FED130A01BD9FED130A01BD01490860AF +:10B1200070470000B83C0120000000000000E03F34 +:10B130000000000000407F40000000000000503F81 +:10B140000100803FFB21F93F000050BF0000503F4D +:10B15000182D4454FB210940FB2109C0DB0FC93FD6 +:10B16000DB0FC9BF00000000FB21F9BF0000000099 +:10B1700002000000040000000600000008000000BB +:10B180000A0000000C0000000E000000100000008B +:10B190001200000014000000170000001900000059 +:10B1A0001B0000001D0000001F0000002100000027 +:10B1B00023000000250000002700000029000000F7 +:10B1C0002B0000002D0000002F00000031000000C7 +:10B1D0003300000035000000370000003900000097 +:10B1E0003B0000003D0000003F0000004100000067 +:10B1F0004300000046000000480000004A00000034 +:10B200004C0000004E000000500000005200000002 +:10B210005400000056000000580000005A000000D2 +:10B220005C0000005E0000006000000062000000A2 +:10B230006400000066000000680000006A00000072 +:10B240006C0000006E000000700000007200000042 +:10B250007400000076000000780000007A00000012 +:10B260007C0000007E0000008000000082000000E2 +:10B270008400000086000000880000008A000000B2 +:10B280008C0000008E000000900000009200000082 +:10B290009400000096000000980000009A00000052 +:10B2A0009C0000009E000000A0000000A200000022 +:10B2B000A4000000A6000000A8000000AA000000F2 +:10B2C000AC000000AE000000B0000000B2000000C2 +:10B2D000B4000000B6000000B8000000BA00000092 +:10B2E000BC000000BE000000C0000000C200000062 +:10B2F000C4000000C6000000C8000000CA00000032 +:10B30000CC000000CE000000D0000000D200000001 +:10B31000D4000000D6000000D8000000DA000000D1 +:10B32000DC000000DE000000E0000000E2000000A1 +:10B33000E4000000E6000000E7000000E900000073 +:10B34000EB000000ED000000EF000000F100000045 +:10B35000F3000000F5000000F7000000F900000015 +:10B36000FB000000FD000000FF00000001010000E4 +:10B3700003010000040100000601000008010000B4 +:10B380000A0100000C0100000E0100001001000085 +:10B390001201000014010000160100001801000055 +:10B3A000190100001B0100001D0100001F01000029 +:10B3B00021010000230100002501000027010000F9 +:10B3C000290100002A0100002C0100002E010000CC +:10B3D000300100003201000034010000360100009D +:10B3E00038010000390100003B0100003D01000070 +:10B3F0003F01000041010000430100004501000041 +:10B4000046010000480100004A0100004C01000014 +:10B410004E010000500100005101000053010000E6 +:10B420005501000057010000590100005B010000B8 +:10B430005C0100005E01000060010000620100008C +:10B44000640100006501000067010000690100005F +:10B450006B0100006D0100006E0100007001000032 +:10B460007201000074010000760100007701000005 +:10B47000790100007B0100007D0100007F010000D8 +:10B4800080010000820100008401000086010000AC +:10B4900087010000890100008B0100008D01000080 +:10B4A0008E01000090010000920100009401000054 +:10B4B0009501000097010000990100009B01000028 +:10B4C0009C0100009E010000A0010000A2010000FC +:10B4D000A3010000A5010000A7010000A8010000D1 +:10B4E000AA010000AC010000AE010000AF010000A5 +:10B4F000B1010000B3010000B4010000B60100007A +:10B50000B8010000B9010000BB010000BD0100004E +:10B51000BF010000C0010000C2010000C401000022 +:10B52000C5010000C7010000C9010000CA010000F8 +:10B53000CC010000CE010000CF010000D1010000CD +:10B54000D3010000D4010000D6010000D7010000A3 +:10B55000D9010000DB010000DC010000DE01000079 +:10B56000E0010000E1010000E3010000E50100004E +:10B57000E6010000E8010000E9010000EB01000025 +:10B58000ED010000EE010000F0010000F1010000FB +:10B59000F3010000F5010000F6010000F8010000D1 +:10B5A000F9010000FB010000FD010000FE010000A8 +:10B5B000000200000102000003020000040200007B +:10B5C0000602000008020000090200000B02000051 +:10B5D0000C0200000E0200000F0200001102000029 +:10B5E00013020000140200001602000017020000FF +:10B5F000190200001A0200001C0200001D020000D7 +:10B600001F020000200200002202000023020000AE +:10B610002502000026020000280200002902000086 +:10B620002B0200002C0200002E0200002F0200005E +:10B630003102000032020000340200003502000036 +:10B6400037020000380200003A0200003B0200000E +:10B650003D0200003E0200004002000041020000E6 +:10B6600043020000440200004602000047020000BE +:10B67000480200004A0200004B0200004D02000098 +:10B680004E02000050020000510200005302000070 +:10B69000540200005502000057020000580200004A +:10B6A0005A0200005B0200005C0200005E02000023 +:10B6B0005F020000610200006202000064020000FC +:10B6C00065020000660200006802000069020000D6 +:10B6D0006A0200006C0200006D0200006F020000B0 +:10B6E000700200007102000073020000740200008A +:10B6F0007502000077020000780200007A02000064 +:10B700007B0200007C0200007E0200007F0200003D +:10B710008002000082020000830200008402000018 +:10B720008602000087020000880200008A020000F2 +:10B730008B0200008C0200008E0200008F020000CD +:10B7400090020000920200009302000094020000A8 +:10B750009602000097020000980200009902000083 +:10B760009B0200009C0200009D0200009F0200005E +:10B77000A0020000A1020000A2020000A40200003A +:10B78000A5020000A6020000A8020000A902000015 +:10B79000AA020000AB020000AD020000AE020000F1 +:10B7A000AF020000B0020000B2020000B3020000CD +:10B7B000B4020000B5020000B7020000B8020000A9 +:10B7C000B9020000BA020000BC020000BD02000085 +:10B7D000BE020000BF020000C1020000C202000061 +:10B7E000C3020000C4020000C5020000C70200003E +:10B7F000C8020000C9020000CA020000CB0200001B +:10B80000CD020000CE020000CF020000D0020000F6 +:10B81000D1020000D3020000D4020000D5020000D3 +:10B82000D6020000D7020000D8020000DA020000B1 +:10B83000DB020000DC020000DD020000DE0200008E +:10B84000E0020000E1020000E2020000E30200006A +:10B85000E4020000E5020000E6020000E802000049 +:10B86000E9020000EA020000EB020000EC02000026 +:10B87000ED020000EE020000F0020000F102000004 +:10B88000F2020000F3020000F4020000F5020000E2 +:10B89000F6020000F7020000F8020000FA020000C1 +:10B8A000FB020000FC020000FD020000FE0200009E +:10B8B000FF0200000003000001030000020300007B +:10B8C0000303000005030000060300000703000057 +:10B8D00008030000090300000A0300000B03000036 +:10B8E0000C0300000D0300000E0300000F03000016 +:10B8F00010030000110300001303000014030000F4 +:10B9000015030000160300001703000018030000D1 +:10B91000190300001A0300001B0300001C030000B1 +:10B920001D0300001E0300001F0300002003000091 +:10B930002103000022030000230300002403000071 +:10B9400010B500F081F800F0DFFEFEF79BFF454CDC +:10B950004422002104F10C00DEF739F80A2200210C +:10B960002046DEF734F80A2200213F48DEF72FF8A0 +:10B970000C22002104F15400DEF729F83B4C4FF46F +:10B98000B67200212046DEF722F81E20208010BD6E +:10B9900000F0BABE80B500F0EBFEBDE80140FEF756 +:10B9A0007DBF3148F5F7E6BA10B42F482D491CC8C1 +:10B9B0001CC10C380021418010BC704710B50446F2 +:10B9C000FFF7E4F92088401C2080B4F9021080B20F +:10B9D000884200DB2180012010BD38B5214C256D47 +:10B9E00004F154012046FFF7E9FF1E2204F154013F +:10B9F0001E48FFF71CFA012104F15400FEF754FF22 +:10BA0000A80705D5002104F1540000F0B3FE04E0BE +:10BA1000012104F1540000F0ADFE002104F10C00FE +:10BA2000BDE8344007E0124870470E49CA6822EA70 +:10BA30000000C860704702681143016070470B48FE +:10BA400070470C49086070470A480068002101608F +:10BA5000416081604FF48061C160016141610121F9 +:10BA600001767047982E01207C3B0120DC0C0120E0 +:10BA7000A42E0120BC3C01202DE9F8411746804648 +:10BA80001D46012FA8BFB9421BDB481E04B2062683 +:10BA900009E0E11B16FB045006FB01510622D7F713 +:10BAA000D7FB601E04B2BC42F3DA06E016FB07F1D6 +:10BAB000481941440622D7F7CBFB7F1E3FB2002F27 +:10BAC000F4D5BDE8F1812DE9F043079D089E0024DF +:10BAD00030F8147023F8147030F8147022F81470D1 +:10BAE000012716E04FF0060E00EB440C0EFB07FE9C +:10BAF00033F914903EF90C80C845B8BF23F8148080 +:10BB00003EF90CC032F914E0E645B8BF22F814C083 +:10BB10007F1C8F42E6DB33F914C032F914704FEA10 +:10BB20006C0C0CEB670725F8147012F81470FF0703 +:10BB300003D413F81470FF0704D535F814707F1C74 +:10BB400025F8147032F8147033F814C0A7EB0C0702 +:10BB50003FB2002F48BF47F6FF7726F81470641CE9 +:10BB6000032CB5DBBDE8F08300220F235200400018 +:10BB70008842A4BF401A521C5B1EF7D110B2704716 +:10BB8000012808DB002100B2B0F5804FBCBF4000A7 +:10BB9000491CF8DB0AE008B90F2070470021154A5C +:10BBA00001E04000491C00B29042FADA08B2704746 +:10BBB000012807DB0021B0F1804FBCBF4000491CC9 +:10BBC000F9DB09E008B91F207047002101E04000BF +:10BBD000491C10F1804FFADA08B2704706498842D2 +:10BBE00008BF47F6FF7002D0002848BF404200B2AD +:10BBF0007047000000C0FFFF0080FFFF70B50446E3 +:10BC00000D461646FFF7BCFF30802846FFF7B8FF09 +:10BC1000B6F9003004FA03F205FA00F1181A09B275 +:10BC200012B29142BCBF5210401E30801046BDE897 +:10BC3000704099E72DE9F84F8846CEB08146164608 +:10BC4000B8F1210F80F22C810120FFF78DFF002237 +:10BC500000239446174606210FE001FB07FE7F1CD8 +:10BC60003EF90940CE4414FB00CCBEF9024014FB5F +:10BC70000033BEF9044014FB00224745EDDB4FEAD8 +:10BC8000EC30ADF80000D813ADF80200D013ADF8D9 +:10BC90000400002014E001FB00F202EB0903B3F9F9 +:10BCA000047032F90920B3F9023012FB02F213FBDF +:10BCB000032217FB07220EABD21223F81020401CE0 +:10BCC0004045E8DB00221EA815E001FB02F7BDF8A5 +:10BCD000004037F809301B1B3B521EABFB184F448A +:10BCE000BDF802507C88641B5C80BF88BDF80440AE +:10BCF0003F1B9F80521C4245E7DB02AF002205AC90 +:10BD0000BA607A600292226222610592E260626009 +:10BD1000A261A260E261626150E001FB02F3DDF822 +:10BD200014C033F909E01D5ED4F810A01EFB05CE47 +:10BD3000CDF814E00DF1780E03EB090C9E44BCF92C +:10BD40000250BEF902B015FB0BAAC4F810A0BCF952 +:10BD500004C0D4F820A0BEF904B01CFB0BAAC4F8A0 +:10BD600020A033F900A0D4F80CB015FB0AB5E560AB +:10BD70006560A5691CFB0A55A561A560E569BEF96A +:10BD800002A01CFB0A5CC4F81CC0C4F814C00DF16E +:10BD9000380C3CF91250DDF808C01B5E13FB05C3DC +:10BDA00002937B68BEF902C01CFB05337B60BB6855 +:10BDB000BEF904C01CFB0533BB60521C4245ACDB22 +:10BDC00020250298401002904FF0000A78684FEA50 +:10BDD0006008B868C7F804804FEA6009C7F808909F +:10BDE0004FF0000B0C2005A900FB0A1050F82B00A7 +:10BDF000FFF7DEFEA842B8BF05460BF1010BBBF111 +:10BE0000030FEFDB0AF1010ABAF1030FE8DB4FF091 +:10BE1000000A57F82A00FFF7CBFEA842B8BF054634 +:10BE20000AF1010ABAF1030FF3DB6068A84080143D +:10BE3000F080F0887080A068A8408014B081B0893C +:10BE4000B0806069A8408014F081F0897081059805 +:10BE5000A840801430802069A84080143081206A76 +:10BE6000A8408014308202984E99A840801408801F +:10BE700008FA05F04E998014488009FA05F04E99A9 +:10BE800080148880B6F900000628A4BFB6F908001F +:10BE9000062805DBB6F910000628A8BF042000DA42 +:10BEA00000204FB0BDE8F08F2DE9F04F804693B0F1 +:10BEB0008946B2F910A0B2F90800B2F90A101C9D27 +:10BEC0001F4610FB0AF301FB1131109110ABB2F9C0 +:10BED00000E0B2F90C101AFB0EF401FB114159609D +:10BEE0001EFB00F4B2F9021001FB114199604FF002 +:10BEF000000C109C012153F82160B442BCBF3446B1 +:10BF00008C46491C0329F6DB012CC0F2A3800FFAF2 +:10BF10008CFC4FF400640BA903AE05ABBCF1000F21 +:10BF200055D1ADF82C005089C880B2F902004042CA +:10BF3000ADF8140050894880108A08810221B2F9B6 +:10BF40000C0000F0B7F8002857D000F0B9F83C809A +:10BF5000BDF90C0080107880B6F902008010B8801E +:10BF600002A9B7F90030B7F90220B7F9040013FBB2 +:10BF700003F312FB023210FB002000F07BF90002F9 +:10BF8000B7F9001000144143C9123980B7F9021003 +:10BF90004143C9127980B7F9041010FB01F0C012B7 +:10BFA000B880B7F900C0B8F90000B7F90230B8F9A5 +:10BFB0000210B7F904201CFB00F013FB0100B8F9D4 +:10BFC000041012FB010E7446704601215DE0BCF1C5 +:10BFD000010F1DD1ADF82CA090894880B2F90A005C +:10BFE0004042ADF814009089C88010880881022171 +:10BFF000B2F9020000F05EF800282BD000F060F8E3 +:10C00000B6F90200801038807C80BDF90C00A5E7ED +:10C01000BCF1020F1ED1ADF82CE050884880B2F977 +:10C020000C004042ADF81400D088C8801089088107 +:10C030000221B2F90A0000F03DF858B100F040F8D2 +:10C04000BDF90C0080103880B6F9020080107880AD +:10C05000BC8085E700202AE0062606FB01FA0AEBF1 +:10C0600008063AF908A0B6F902B0B6F904601CFB5C +:10C070000AFA13FB0BAA12FB06A6B645B8BFB646D2 +:10C080008642D8BF30463419491C4945E4DBAEEB43 +:10C090000000C012288049460120FFF765FDE1122B +:10C0A00010FB01F0400000144042F880012013B062 +:10C0B000BDE8F08F4042588007AB09AA0BA808E002 +:10C0C00003A8019005A8009007AB09AA02210BA8BC +:10C0D00050E02DE9F84F804691469A4600250C46DF +:10C0E000062618E03AF915C039F91530021412FB8A +:10C0F0000CFC4FEAEC3CC0F34E0013FB02C210FBF9 +:10C1000003F002EBE03008EB4502400088527F1C50 +:10C11000A74205DB6D1CA54229DA2F4606FB058BDD +:10C120003BF917006A1EC00312B206FB07F10BE0D1 +:10C1300001EB080C3BF912303CF912C013FB0CF375 +:10C14000521EA0EB830012B2002AF1D5BD42C9D124 +:10C15000012801DA00200BE000A900F08BF801149F +:10C1600029F81510C0F34E002AF81500CFE701207A +:10C17000BDE8F28F2DE9F047DDF820E0099E4FF091 +:10C18000000C8846062526E005FB0C0936F914A0AC +:10C1900039F9149019FB0A77641E24B2002CF3D5E8 +:10C1A0003EF91C4032F91C9033F91CA0E403A4EBC7 +:10C1B00087073C1414FB0AFA4FEAEA3AC7F34E0722 +:10C1C00019FB04A417FB09F704EBE7377F0026F8F7 +:10C1D0001C700CF1010CC44529DA0027ACF10104F4 +:10C1E000DBE700EB410C15FB04CC36F914E0BCF99D +:10C1F00000C01CFB0EFCA7EB8C07641C24B2A8F14A +:10C20000010CA445EDDA33F911E032F911C03C1408 +:10C2100014FB0EFE4FEAEE3EC7F34E071CFB04EE86 +:10C2200017FB0CF70EEBE7377F0026F81170491E5D +:10C2300009B2002904D436F91170FF034C1CDDE764 +:10C24000BDE8F08710B500210022002801D50020AC +:10C2500010BD1023840F520004EB81018000521C9A +:10C26000914226BF891A521C521E5B1EF2D1D00386 +:10C27000001410BD38B505460C46012D04DA002027 +:10C2800020804FF0804032BDFFF792FC208005FAFD +:10C2900000F1C0F11E002080C20758BF4910000401 +:10C2A0004014401C2080481610380FF2240200B2BF +:10C2B00032F9103002EB4000C9014088181A490CCD +:10C2C00010FB01F0C0EBC33021884000084132BDB3 +:10C2D000FF7F2E7CAE7876757D72BA6F296DC26A4B +:10C2E0008368666669648962C260135F7A5DF55B24 +:10C2F000825A2159CF578B5655552C540F53FC5108 +:10C30000F450F64F014F144E304D534C7E4BAF4A14 +:10C31000E74925496848B24700475446AD450A45B4 +:10C320006B44D1433B43A84219428E4106418240AF +:10C330000040000010B5040003E02068C068D7F793 +:10C3400054FEDEF7ECFD20680028F6D1074840785F +:10C35000F021084202D09920DEF774FD03484078AE +:10C36000002801D1DEF7D5FD10BD00BFA48000205C +:10C37000012000F041BC00000749086808B1002016 +:10C3800070470648C008C00008600549C908C900D0 +:10C39000091A0160704700BFE03C0120072000201F +:10C3A000004000202DE9F04100F06BF800F064F847 +:10C3B000DFF80C830826082208F1300104F1500050 +:10C3C000D6F756FF32460FF2103104F15800D6F777 +:10C3D0004FFF32460FF2083104F16000D6F748FFF4 +:10C3E0004B2000F03EF8B16A00F041F8316A24E0D9 +:10C3F0002DE9F04100F045F800F03EF8DFF8C0828A +:10C400000826082208F1380104F15000D6F730FF61 +:10C4100032460FF2D42104F15800D6F729FF3246F4 +:10C420000FF2CC2104F16000D6F722FF252000F0A6 +:10C4300018F8B16900F01BF831693A4604F1680058 +:10C44000D6F706FFB1683A4604F17000D6F700FF50 +:10C4500058F825103A4604F17400BDE8F041D6F7CB +:10C46000F7BE08EB8506A4F87800042770473A4623 +:10C4700004F16C00D6F7ECBE05467C212046D5F7CA +:10C48000E3BF044602220FF27020D5F72BBE2DE940 +:10C49000FF4F91B003211E9CDDF87CA004F13C000D +:10C4A0000A9004F1240604F14000099004F13007D9 +:10C4B00004F14C00069004F10C0504F150000D90BD +:10C4C00004F1440804F158000C9004F1480904F107 +:10C4D00060000B905046D4F7F6F9ADF80C009DF9CA +:10C4E000800000285CD000203AF8101026F82010B8 +:10C4F00006EB8002002127F820103AF81010518036 +:10C5000007EB80020021401C51800328ECDB0A99D4 +:10C51000BDF80C00088000200999088040F2722BB9 +:10C520000A99BDF80C004880002009994880B4F9A8 +:10C5300078002080B4F87810C9006180D021A180F3 +:10C54000A4F806B02181A4F80AB0D4F75DFB00EB93 +:10C5500040002860B4F90200D4F756FB00EB40001D +:10C560006860D020D4F750FBA8605846D4F74CFB45 +:10C57000E860D020D4F748FB28615846D4F744FB44 +:10C58000686100214FF48050A8F80000A8F802105C +:10C59000A9F80000A9F80210069A118006994880AF +:10C5A0000320029001970096534604F1680204F1BB +:10C5B0006C010EA8D5F7C4FB0120029003AB0998CB +:10C5C000019004F174020A98009004F170010DF1D9 +:10C5D0000E00D5F7B5FBB4F9040004AE012300F05A +:10C5E00073F80DF10E02A86800F073F8079007AF1A +:10C5F000B4F9060000F068F80123E8680DF10E02B6 +:10C6000000F067F878600123022000904A460C98F9 +:10C6100007A9EDF7E5FAB9F90200B0F5CD7F03DB24 +:10C6200028480790002012E0B4F9000000F04CF810 +:10C63000032328680EAA00F04CF807900323B4F9EE +:10C64000020000F041F80EAA686800F042F8786035 +:10C6500001230220009042460D9807A9EDF7C0FA89 +:10C66000B4F9080000F030F80123286903AA00F0AB +:10C6700030F807900123B4F90A0000F025F803AA66 +:10C68000686900F026F87860022000900123069A7D +:10C690000B9807A9EDF7A4FA1199B8F800000880E3 +:10C6A0001399B9F8020008801299B8F802000880BE +:10C6B000069814990088088015B0BDE8F08F000036 +:10C6C000C48500200080FFFFB0807080ADF81000AE +:10C6D000704704A9EDF7DFB9000800082800D70F5C +:10C6E000660E99012800D70F000800082800D70F10 +:10C6F000660E99019901660E32006400014800F04F +:10C7000085BA00000040002010B5DFF8DC44FFF7D8 +:10C7100096F960660020024603E004EB8001CA62DD +:10C72000401C0928F9DB10462066E065FFF77BF91D +:10C73000A0664FF4FA7020606060DFF8B004A0607B +:10C740009FED0A0A84ED030A84ED040A84ED050ACC +:10C75000B5EE000A84ED060A84ED070ADFF89004BE +:10C76000206207206062A06210BD00009A99193F04 +:10C7700070470000F8B52DED048B0C469FED3D8A07 +:10C78000DFF8646400207065B065306E401C306670 +:10C79000DFF86054012C02D1002068672867F06D33 +:10C7A0000A2839DA1E220021706EFEF759FBC5F8FF +:10C7B0008C001E220121706EFEF752FBF16D06EB1C +:10C7C0008102336E03EB8307BB00D362012921DBB7 +:10C7D000D5F88C3093ED000AD0ED000A30EE600AF7 +:10C7E000D3ED010A90ED011A70EEC10A93ED021A21 +:10C7F000D0ED021A31EE611A05EB810020EE000A3D +:10C8000000EEA00A01EE010A80ED050AD36A926AE1 +:10C810009A1A8263481CF065316E0A2902DA0320F5 +:10C82000C5F88800F06D0A28C0F23781401EF06517 +:10C83000706E0A2920D11E220A21FEF721FB85ED08 +:10C84000030A1E220A21706EFEF738FB85ED040AEA +:10C850001E220A21706EFEF74FFB85ED050A0020AF +:10C86000092844DA05EB800191ED060A38EE008ACA +:10C87000401CF5E7000000001E220A21FEF7F0FA36 +:10C88000D5F88C1095ED030AD0ED000A30EE600A61 +:10C89000D1ED000A30EE200A85ED030A95ED040A79 +:10C8A000D0ED010A30EE600AD1ED010A30EE200A27 +:10C8B00085ED040A95ED050AD0ED020A30EE600A16 +:10C8C000D1ED020A30EE200A85ED050AF06D05EB88 +:10C8D000800090ED050AD0ED040A30EE200AD0ED7C +:10C8E000030A30EE200AF0EE080A20EE208A95EDC9 +:10C8F000030AF2EE040AC0EE208A95ED040A80EEE7 +:10C90000209A95ED050AC0EE209A306E0A2805D1CE +:10C91000C5ED008A85ED019AC5ED029A00270FE06A +:10C920001E22C7F1090109B2706EFEF799FA95ED62 +:10C93000021AD5ED010A95ED000A00F0FBF87F1C04 +:10C940000A2FEDDBF06A716A726D914249DAA96FC4 +:10C95000002908D128660121A967C5ED008A85ED67 +:10C96000019AC5ED029AB16AB26D91420CDAE96F93 +:10C9700000290BD168660121E967C5ED008A85EDC4 +:10C98000019AC5ED029A01E00021E967296E411A7A +:10C99000296732686B6EC31A9A420CD2EB6F012B77 +:10C9A00009D10020C5F88000C5F88400686701201F +:10C9B000C5F8880060E08A420CD2A96F012909D12C +:10C9C0000020C5F88000C5F8840068670220C5F81B +:10C9D000880051E0A96E401A68670320C5F88800F6 +:10C9E0004AE0C5ED008A85ED019AC5ED029A002165 +:10C9F000A967E9672967D5F88010002903D1A866DF +:10CA00000121C5F88010A96E411A69679FED740A6B +:10CA100028EE000AB5EE400AF1EE10FA03DC9FEDB5 +:10CA2000710A28EE000AD6ED020AB3EE041A60EE8F +:10CA3000810AF4EE400AF1EE10FA08D5D5F8841018 +:10CA4000002907D1E8660121C5F8841002E0002121 +:10CA5000C5F884107168A1F5FA71EA6E801A8142F6 +:10CA600007D2D5F88400012803D10420C5F8880036 +:10CA700002E00320C5F8880000200CE006EB8001EE +:10CA80000A6BCA62082805DA05EB8001CA698A6167 +:10CA90000A6CCA63401C0928F0DBD5F8880001281D +:10CAA00006D044D3032822D011D304282FD03EE04F +:10CAB000B06E0121C162296F016302214163002C24 +:10CAC00035D1BDEC048BBDE8F440FEF7B4BFB06EC9 +:10CAD0000121C162296F016304214163002C26D129 +:10CAE0000221BDEC048BBDE8F440FEF7A4BFB06E9C +:10CAF0000121C162696F016308214163002C16D1D5 +:10CB00000221BDEC048BBDE8F440FEF794BFB06E8B +:10CB10000121C162696F016310214163002C06D1BC +:10CB20000221BDEC048BBDE8F440FEF784BFBDECF0 +:10CB3000048BF1BDD0ED001A31EEC00AD0ED011A20 +:10CB400071EEE00AD0ED021A31EEC11AB5EE400ADC +:10CB5000F1EE10FA01D5B1EE400AF5EE400AF1EE21 +:10CB600010FA01D5F1EE600AB5EE401AF1EE10FAB6 +:10CB700001D5B1EE411A1C48D0ED031AB4EE610A9A +:10CB8000F1EE10FA0FD5D0ED041AF4EE610AF1EED1 +:10CB900010FA08D5D0ED051AB4EE611AF1EE10FACC +:10CBA00001D5012100E00021D0ED061AB4EE610AA2 +:10CBB000F1EE10FA10D590ED070AF4EE400AF1EE0E +:10CBC00010FA09D590ED080AB4EE401AF1EE10FA09 +:10CBD00002D5826D521C8265426D8918416570478D +:10CBE00000007A4400007AC49422012000004041F1 +:10CBF0003333B33E8021012080B500F015F8024A9E +:10CC000011001820ABBEFBE72600020004490968AA +:10CC1000002900D10349034A801A411808007047CF +:10CC2000D43C01200040002080B500F033F8020021 +:10CC30000023DB431068984204D011000220ABBEF1 +:10CC4000002010605068984204D0111D0220ABBE35 +:10CC50000020506001BD000010B584B0040000F059 +:10CC600019F8A100421810680021C94388420DD16B +:10CC700007A00090002C01D1002000E004200190CA +:10CC80000320029069460120ABBE106004B010BDC5 +:10CC90003A7474000048704744870020BFF34F8FF8 +:10CCA000DFF8A008016801F4E061DFF89C28114377 +:10CCB0000160BFF34F8FFEE71EF0040F0CBFEFF3D0 +:10CCC0000880EFF3098000F03DB870471EF0040FB4 +:10CCD0000CBFEFF30880EFF3098000F033B8FEE7F4 +:10CCE0001EF0040F0CBFEFF30880EFF3098000F093 +:10CCF00029B870471EF0040F0CBFEFF30880EFF364 +:10CD0000098000F01FB870471EF0040F0CBFEFF34E +:10CD10000880EFF3098000F015B870471EF0040F8B +:10CD20000CBFEFF30880EFF3098000F00BB87047F9 +:10CD30001EF0040F0CBFEFF30880EFF3098000F042 +:10CD400001B87047DEF76BBB70472DE9F04186B044 +:10CD500059E02646D6F79AFDD6F731FB0521D6F7DE +:10CD60001AFD0FF62800D6F7ABFBD6F792FDDFF8D9 +:10CD7000DC173846E9F7BAFD00281AD13046461EBE +:10CD80000028F4D16D1EE4D500213846E9F799FD5D +:10CD90000021DFF8BC07E9F794FDBDF80330BDF8CA +:10CDA00001209DF800100FF2EC70D6F789FBFFF719 +:10CDB00075FFB8F1020F01D1DAF780F9DDF809004B +:10CDC000002804D0E8F72EFD0020CDF8090049F630 +:10CDD0004044DFF8805702212846E9F7BFFC0028CD +:10CDE00003D12046441E0028F5D142F2107680215E +:10CDF0002846E9F7B3FC012803D13046461E002837 +:10CE0000F5D1D6F743FD00A9DFF84C0700F0E2FBAF +:10CE10009DF8030010F0030808D0B8F1020F05D008 +:10CE200015D3B8F1030F00F08780ECE7BDF80100DF +:10CE3000011D89B2DDF8090000F0FAFBDFF81C479C +:10CE400026460125D6F725FDDFF814778FE7DFF8B2 +:10CE500004078089C04604A80021016002220DF168 +:10CE60000301D8F739F802220DF101010DF112008A +:10CE7000D8F732F8042104A800F0DAFBBDF801006D +:10CE8000001DE8F7B7FCCDF80900BDF80100011D51 +:10CE900089B2DDF8090000F0EFFBDFF8C046264656 +:10CEA0000125D6F7F6FCDFF8A8760DE02646D6F782 +:10CEB000EDFCD6F784FA0521D6F76DFC0FF2E4609D +:10CEC000D6F7FEFAD6F7E5FCDFF898163846E9F70C +:10CED0000DFD00281AD13046461E0028F4D16D1EE3 +:10CEE000E4D50021DFF87806E9F7EBFC00213846AD +:10CEF000E9F7E7FCBDF80330BDF801209DF800100C +:10CF00000FF2A860D6F7DCFAFFF7C8FED6F7BEFC32 +:10CF1000002E3FF478AF00A9DFF84C0600F0D0FBFC +:10CF2000002803D00FF29460DEF72AFBDFF83C16EE +:10CF30000820E8F7BBFD66E7DFF818068089C046E1 +:10CF40000921DFF82C0600F097FBD6F7A8FCDFF8E4 +:10CF500024660221DFF82006E9F785FA00287FF42D +:10CF600052AF3046461E0028F3D10021DFF8F0050D +:10CF7000E9F7A7FC0021DFF8D805E9F7A2FC0FF2DA +:10CF80004460D6F79DFA3EE72DE9F041DFF8EC4525 +:10CF90002078401C2070DFF8E8552878401C287065 +:10CFA000D6F7CBFF6878F021084202D09920DDF750 +:10CFB00049FFDDF7B4FF6878401C6870DDF748FC76 +:10CFC0006878F021084202D09920DDF73BFF6878AD +:10CFD000401E6870C0B2002801D1DDF79AFF012021 +:10CFE000E9F75CFF012840F082800120E9F762FF49 +:10CFF0000026DFF890750121DFF88C05E9F733FA98 +:10D00000002868D0387800282ED030463870DFF8F5 +:10D010004C75DFF83C854046E9F764FC002823D0D6 +:10D020003846471E0028F6D13146DFF83405E9F7C7 +:10D0300048FC31464046E9F744FC0FF29050D6F7E1 +:10D040003FFAD6F729FC2078411E2170002802D132 +:10D050009820DDF7F7FE2878012858D16868002865 +:10D0600055D0DDF752FF52E00221DFF80C05E9F759 +:10D07000FAF9002810D02078411E2170002802D132 +:10D080009820DDF7DFFE2878012840D16868002865 +:10D090003DD0DDF73AFF3AE0DFF8D414C87810F05D +:10D0A00003000BD0012813D1B1F80100002805D0EE +:10D0B000DFF8A40400F004FB064609E0DFF8A8044A +:10D0C00000F0FEFA0646DFF8A4140820E8F7EEFCAC +:10D0D000D6F7E2FB07E001203870391DDFF878044D +:10D0E00000F0EEFA0646002E01D0DEF75AFA20785C +:10D0F000411E2170002802D19820DDF7A3FE287878 +:10D10000012804D16868002801D0DDF7FEFE2878E8 +:10D11000401E2870BDE8F08138B5DFF86044207803 +:10D12000401C2070DFF858542878401C2870D6F72F +:10D1300004FF6878F021084202D09920DDF782FED2 +:10D14000DDF7EDFE6878401C6870DDF781FB6878DC +:10D15000F021084202D09920DDF774FE6878401E65 +:10D160006870C0B2002801D1DDF7D3FE0220E9F7D4 +:10D1700095FE002802D00220E9F79CFE2078411E8F +:10D180002170002802D19820DDF75CFE2878012864 +:10D1900004D16868002801D0DDF7B7FE2878401E6A +:10D1A000287031BD38B5DFF8D4432078401C20709A +:10D1B000DFF8CC532878401C2870D6F7BEFE68787C +:10D1C000F021084202D09920DDF73CFEDDF7A7FEF2 +:10D1D0006878401C6870DDF73BFB6878F0210842F6 +:10D1E00002D09920DDF72EFE6878401E6870C0B22C +:10D1F000002801D1DDF78DFE0420E9F74FFE00285D +:10D200000BD00420E9F756FE012200210320D6F7B7 +:10D2100049FBD6491020E8F749FC2078411E2170CF +:10D22000002802D19820DDF70DFE2878012804D1CE +:10D230006868002801D0DDF768FE2878401E287055 +:10D2400031BD38B5CD4C2078401C2070CC4D2878AD +:10D25000401C2870D6F771FE6878F021084202D091 +:10D260009920DDF7EFFDDDF75AFE6878401C687005 +:10D27000DDF7EEFA6878F021084202D09920DDF758 +:10D28000E1FD6878401E6870C0B2002801D1DDF76A +:10D2900040FE4FF40060E9F701FE002807D04FF48C +:10D2A0000060E9F707FEB1492020E8F7FFFB20788E +:10D2B000411E2170002802D19820DDF7C3FD287897 +:10D2C000012804D16868002801D0DDF71EFE287807 +:10D2D000401E287031BD70B5A84C2078401C2070CD +:10D2E000A74D2878401C2870D6F727FE6878F021D3 +:10D2F000084202D09920DDF7A5FDDDF710FE687821 +:10D30000401C6870DDF7A4FA6878F021084202D06A +:10D310009920DDF797FD6878401E6870C0B200283C +:10D3200001D1DDF7F6FD4FF48040E9F739FD002823 +:10D330001DD08E4EEEF79AFE00280CD00020EEF79E +:10D340009FFED9F715FEC06FD6F796F83146062036 +:10D35000E8F7ACFB03E031460220E8F7A7FB4FF407 +:10D360008040E9F732FD4FF48000E9F7A3FD207813 +:10D37000411E2170002802D19820DDF763FD287836 +:10D38000012804D16868002801D0DDF7BEFD2878A7 +:10D39000401E287070BD38B5784C2078401C207035 +:10D3A000774D2878401C2870D6F7C7FD6878F021A3 +:10D3B000084202D09920DDF745FDDDF7B0FD687821 +:10D3C000401C6870DDF744FA6878F021084202D00A +:10D3D0009920DDF737FD6878401E6870C0B20028DC +:10D3E00001D1DDF796FD4FF48050E9F7D9FC002814 +:10D3F0000BD05E494020E8F759FB4FF48050E9F725 +:10D40000E4FC4FF40030E9F755FD2078411E21700F +:10D41000002802D19820DDF715FD2878012804D1D5 +:10D420006868002801D0DDF770FD2878401E28705C +:10D4300031BDF0B585B0514C2078401C2070504D66 +:10D440002878401C2870D6F778FD0220E8F738FFCE +:10D45000002862D000210220E8F70FFF0220E8F741 +:10D4600037FF0020E8F772FE00A90020E9F755FB1E +:10D470000120E9F78FFA01214FF48020E8F7BBFE85 +:10D480000F20E9F737FC06461020E9F733FC074682 +:10D490000120E8F7ADFE0020E8F7AAFE31460F2094 +:10D4A000E9F71BFC39461020E9F717FC00214FF47F +:10D4B0008020E8F7A0FE0120E8F738FE01214FF0B8 +:10D4C0008050E8F7A3FE4FF48070E8F77BFE3F2022 +:10D4D000029040F2FF1003900020019001A8E9F7AC +:10D4E00063FA00A90020E9F7C9FA0120E8F77DFEF8 +:10D4F000E9F7A3FA0320E9F7AEFB4FF48040E9F720 +:10D5000064FC4FF48000E9F7D5FC01214FF4804022 +:10D51000E9F721FC0220E8F7DBFE2078411E2170AC +:10D52000002802D19820DDF78DFC2878012804D14D +:10D530006868002801D0DDF7E8FC2878401E2870D4 +:10D5400005B0F0BD0CED00E00400FA050008002075 +:10D550001064024000300140E4B0002080841E00CE +:10D560008864024020000010C8B00020589D0020B0 +:10D5700058380120404B4C0000040240113D01206E +:10D58000A4800020CC860020000002405478526520 +:10D59000747279005478444D41202564202564201C +:10D5A0002564000052785265747279005278444DB7 +:10D5B0004120256420256420256400005075744DA9 +:10D5C00061696C0052454144590000004558544976 +:10D5D0003000000038B504000D0013480078401CEE +:10D5E0001149087011480078002802D0A120DDF709 +:10D5F00029FCD6F77DFC607E662802D08220DDF70C +:10D6000021FCDDF78CFC05E040212000F7F76CFAE7 +:10D61000DDF785FCE0680028F6D029002000F7F748 +:10D62000AFFAD6F7A6FC31BDA4800020123D012040 +:10D6300038B50C460E4D2968C90706D52968490832 +:10D64000490029602968C907FCD400220146284600 +:10D65000E9F742F907492846E9F75BF921462846E8 +:10D660004160C04601212846BDE83440E9F729B9A8 +:10D67000886402400008002038B50C460E4D296829 +:10D68000C90706D529684908490029602968C907DA +:10D69000FCD4002201462846E9F71EF9074928462E +:10D6A000E9F737F9214628464160C046012128465E +:10D6B000BDE83440E9F705B91064024020000010CD +:10D6C00070B504000D000126607E662802D082201D +:10D6D000DDF7B8FBD6F7E4FB11480078401C104991 +:10D6E0000870DDF71CFCE0682169884204D229003B +:10D6F0002000F7F71BFA002609484078F02108427D +:10D7000002D09920DDF79EFB05484078002801D122 +:10D71000DDF7FFFBD6F72DFC3000C0B270BD00BFB7 +:10D72000A480002030B40168DFF86C2811614368E0 +:10D73000536184689461C068D061012595620825B1 +:10D74000D5628B4201DA13615161A04201DA906126 +:10D75000D4614FF0FF3010630020107310625062EC +:10D7600030BC704710B5DFF830084FF0FF3101636F +:10D77000002101730162416241638163DFF8204847 +:10D780004FF496622046DCF722F94FF496620021AE +:10D7900004F59660DCF71BF94FF46172002104F682 +:10D7A000E440DCF714F94FF46172002104F51660CF +:10D7B000BDE81040DCF70BB970B52DED0A8BB0EE6B +:10D7C000618AF0EE428AB0EE629A0024F0EE609A2E +:10D7D000B5EE400AF1EE10FA0AD1F5EE409AF1EEFC +:10D7E00010FA05D1B5EE401AF1EE10FA00F02B81D7 +:10D7F000DFF8A45785ED000AC5ED019AB0EE41AA05 +:10D8000085ED02AADFF89C67B0EE480A10EE100A18 +:10D81000D6F7CAFC21F000412246DFF88C37DFF74B +:10D820006BFB02D21046306007E0B0EE480ADFED35 +:10D83000880A20EE200A86ED000AF0EE68AA1AEEA9 +:10D84000900AD6F7B1FC21F000412246DFF85837A4 +:10D85000DFF752FB02D21046706005E09FED7C0AB4 +:10D860002AEE800A86ED010A19EE100AD6F79CFC12 +:10D8700021F000412246DFF83037DFF73DFB02D2CE +:10D880001046B06005E09FED720A29EE000A86EDB1 +:10D89000020A95ED00BA2BEE0B0A09EEA90A0AEE70 +:10D8A0000A0A10EE100AD6F77FFC41EC100BF0F7D5 +:10D8B000E7FE51EC100BDEF76BFC0AEE900A9FEDD1 +:10D8C00065CB8BEE2A0A10EE100AD6F76DFC41EC00 +:10D8D000100B00F013FC53EC102B51EC1C0BD7F782 +:10D8E0002FFBDEF755FC08EE100A89EEAA0A10EEAF +:10D8F000100AD6F759FC41EC100B00F0FFFB53EC7B +:10D90000102B51EC1C0BD7F71BFBDEF741FC08EE8C +:10D91000900A8AEE2A0A10EE100AD6F745FC41EC6E +:10D92000100B00F0EBFB53EC102B51EC1C0BD7F75A +:10D9300007FBDEF72DFC0AEE100A19EE900AD6F767 +:10D9400033FC41EC110BB0EE419AF0EE619AB1EE6E +:10D950004B0A10EE100AD6F727FC41EC100BB0EE84 +:10D96000491AF0EE691A00F041FC53EC102B4FF00D +:10D970000050DFF83816D7F7E3FADEF709FC09EEB6 +:10D98000100AF0EE491AB0EE4A1AF0EE680AB0EE4C +:10D99000480A00F037FAF0EE6A1A95EC030A00F034 +:10D9A0004AFA96EC030A00F060FA2E6B3146012029 +:10D9B00000F072FADFF8E80500EB860000F6106070 +:10D9C00080ED000A95ED040AB8EEC00AB4EE40AA54 +:10D9D000F1EE10FA22DB95ED050AB8EEC00AB4EEBE +:10D9E0004A0AF1EE10FA19DB95ED060AB8EEC00A04 +:10D9F000B4EE409AF1EE10FA10DB95ED070AB8EE9E +:10DA0000C00AB4EE490AF1EE10FA07DB0FF2A85093 +:10DA1000D5F756FD286A401C286201E0204628629E +:10DA2000286AA96A88420EDB2046286200F096F92F +:10DA3000012808D10FF29050D5F742FD00F004F90B +:10DA4000012800D101242046BDEC0A8B70BD0000E6 +:10DA5000E12E654200000020DCA54C4070B52DEDA4 +:10DA60000A8B0024DFF8305585ED000AB0EE60AA7D +:10DA700085ED01AAF0EE419AC5ED029A95ED00BA46 +:10DA80002BEE0B0A0AEE0A0A09EEA90A10EE100A9A +:10DA9000D6F78AFB41EC100BF0F7F2FD51EC100BBE +:10DAA000DEF776FB09EE100A9FEDA5CB8BEE090A97 +:10DAB00010EE100AD6F778FB41EC100B00F01EFBBD +:10DAC00053EC102B51EC1C0BD7F73AFADEF760FB46 +:10DAD00008EE100A8AEE090A10EE100AD6F764FB67 +:10DAE00041EC100B00F00AFB53EC102B51EC1C0B1B +:10DAF000D7F726FADEF74CFB08EE900A89EE890A82 +:10DB000010EE100AD6F750FB41EC100B00F0F6FABD +:10DB100053EC102B51EC1C0BD7F712FADEF738FB45 +:10DB200009EE900A1AEE100AD6F73EFB41EC110BF3 +:10DB3000B0EE41AAF0EE61AAB1EE4B0A10EE100A67 +:10DB4000D6F732FB41EC100BB0EE4A1AF0EE6A1A2F +:10DB500000F04CFB53EC102B4FF00050DFF84C144E +:10DB6000D7F7EEF9DEF714FB0AEE100AF0EE4A1AC8 +:10DB7000B0EE691AF0EE680AB0EE480A00F042F919 +:10DB8000F0EE491A95EC030A00F055F92E6B287B4C +:10DB9000002801D1032E52DB3146012000F07CF930 +:10DBA000DFF8FC0300EB860000F6106080ED000A51 +:10DBB0009FED650AB4EE409AF1EE10FA3FD49FED66 +:10DBC000630AB4EE409AF1EE10FA38DA28691E388A +:10DBD00000EE100AB8EEC00AF4EE409AF1EE10FA28 +:10DBE00020DB68691E3000EE100AB8EEC00AB4EE01 +:10DBF000690AF1EE10FA15DBA8691E3800EE100A6A +:10DC0000B8EEC00AB4EE40AAF1EE10FA0ADBE869F9 +:10DC10001E3000EE100AB8EEC00AB4EE4A0AF1EE69 +:10DC200010FA03DA686A401C686201E02046686204 +:10DC3000686AE96A884202DB0224FFF793FD204606 +:10DC4000BDEC0A8B70BD0000F8B52DED028B84B0E1 +:10DC5000002400A821460A460B460EC0DFF8380310 +:10DC6000017B012901D1182101E0016B491EDFF878 +:10DC700030C31AE000AD4FF4967707FB03C707EBFC +:10DC80008607D7F8607900EE107ADFED310A05EBF0 +:10DC9000830797ED001A00EE201A05EB830585ED4A +:10DCA000001A5B1C032BE5DB521C8A420ADA036B69 +:10DCB0009B1A4B334B2593FBF5F54B2606FB15368C +:10DCC0002346EFE700AD95ED018A9FED220AB4EE01 +:10DCD000408AF1EE10FA16D50098D6F765FA21F0D1 +:10DCE00000412246DFF8C832DFF706F90BD2A868F8 +:10DCF000D6F75AFA21F000412246DFF8B432DFF7B6 +:10DD0000FBF800D201249FED140ADDED000A95ED29 +:10DD1000021A70EEC10AF4EE400AF1EE10FA00DBCE +:10DD20000124DDED000A70EEC80AF4EE400AF1EEBF +:10DD300010FA00DB0124204604B0BDEC028BF2BDDA +:10DD400000000020DCA54C4041ABDB4074FA4B41A5 +:10DD50000AD7A33C00008CC20100704210B400201E +:10DD60008D49096B01F14B024B231C4692FBF4F4E5 +:10DD700003FB14224A311C4691FBF4F403FB1411FB +:10DD8000874B03EB8204D4F8604900EE104AB5EEED +:10DD9000400AF1EE10FA33D103EB8202D2F88C4A3A +:10DDA00000EE104AB5EE400AF1EE10FA28D1D2F892 +:10DDB000B82B00EE102AB5EE400AF1EE10FA1FD192 +:10DDC00003EB8102D2F8602900EE102AB5EE400A7A +:10DDD000F1EE10FA14D103EB8101D1F88C2A00EE98 +:10DDE000102AB5EE400AF1EE10FA09D1D1F8B81BAD +:10DDF00000EE101AB5EE400AF1EE10FA00D1012043 +:10DE000010BC70476448016B491C01634B2903DB5C +:10DE1000012202734B390163006B614901EB8002FF +:10DE200082ED000A01EB8000C0ED4B0A80ED961AEE +:10DE3000C0EDE11A70475848006B594901EB800268 +:10DE400002F2B04282ED000A01EB800000F2DC51E8 +:10DE5000B0EE602A81ED002A00F2087181ED001A0F +:10DE600000F63400C0ED001A70474B48006B4C4977 +:10DE700001EB800202F6601282ED000A01EB8000E5 +:10DE800000F68C21F0EE601AC1ED001A00F6B830F1 +:10DE900080ED001A7047000030B49FED400ADFEDBE +:10DEA0003F0A00223E4D12E08B1A1BB2002B00D518 +:10DEB0004B331BB24FF4967404FB005404EB830302 +:10DEC000D3F8B03401EE103A30EE010A521C032AA6 +:10DED000EADBB0EE081A80EE010A002214E08B1A89 +:10DEE0001BB2002B01D54B331BB24FF4967404FBCD +:10DEF000005404EB8303D3F8B03401EE103A31EE52 +:10DF0000401A41EE010A521C032AE8DBB0EE080A6F +:10DF100080EE800A30BC704738B52DED048BF0EEF2 +:10DF2000608AB0EE419A1C4CA06B451CA56310EEB4 +:10DF3000100AD6F739F921F0004101221D4BE7F70D +:10DF40008BFF19D9B0EE680A10EE100AD6F72CF93B +:10DF500021F000410122174BE7F77EFF0CD9B0EE0C +:10DF6000490A10EE100AD6F71FF921F000410122EC +:10DF7000104BE7F771FF02D8606B401C6063022D05 +:10DF800005D100206063FFF7EDFB022000E00020D8 +:10DF9000BDEC048B32BD0000BC3401200000000049 +:10DFA000489E0020A03B01200000E03FDCA54CC0C3 +:10DFB000000034400000F03F23534C2D3E205469B4 +:10DFC0006C7420696E00000023534C2D3E20646564 +:10DFD000746563742073746F70200000D0B52DEDEC +:10DFE000048B82B041EC180B8DED008BDDE9002332 +:10DFF000C3F30A5140F2FF72914213D0002904BFCB +:10E00000190350EA113011D051EC180B00220023F3 +:10E01000DEF772FF3DBF81F0004141EC180B082490 +:10E02000002407E0190350EA1130EDD002B051ECA2 +:10E03000180B60E051EC180B274A284BDEF75CFF09 +:10E040001CD29FED239B51EC190B53EC182BE7F7D7 +:10E05000A5FF06460F4653EC182B51EC190BDEF7C3 +:10E0600007FA32463B46D6F76BFFF0F711FB41EC5F +:10E07000100B51EC180B53EC102B1EE00122184B27 +:10E08000DEF73AFF2ED29FED129B51EC190B53ECA9 +:10E09000182BE7F783FF06460F4653EC182B51EC7D +:10E0A000190BDEF7E5F932463B46D6F749FFF0F7A4 +:10E0B000EFFA84F0020453EC182BD6F79DF802B067 +:10E0C0002246BDEC048BBDE8D04000F099B800BFFB +:10E0D000000000000000F03FCE3B7F669EA0E63FC0 +:10E0E0000000F03FFEF70AFB2121016002B04FF073 +:10E0F000FF306FF00041BDEC048BD0BD80B551EC1A +:10E10000100BFFF76BFF41EC100B01BD38B50FB4DE +:10E11000DDE9020100F06CF90546DDE9000100F0DF +:10E1200067F9012DB8BF012830DA0198002807D51A +:10E13000DDE9000181F00041CDE90001082400E0A3 +:10E1400000240398002807D5DDE9020181F0004191 +:10E15000CDE9020184F00604DDE90201DDE90023D6 +:10E16000DEF7CAFE04D2D6F747F841EC100B29E0DF +:10E17000002D08D5DDE90001DDE90223D6F73CF8E2 +:10E1800041EC100B20E09FED150B1DE0022808BFAD +:10E19000DDE9000120D0022D08BFDDE902011BD01E +:10E1A00085420CBF9FED0F0B9FED0C0B01990029D1 +:10E1B0004CBF082400240399002948BF84F00604BA +:10E1C000012801D184F00204224605B0BDE83040A8 +:10E1D00051EC100B00F014B805B030BD0000000089 +:10E1E00000000000000000000000F03F80B553EC8C +:10E1F000112B51EC100BFFF789FF41EC100B01BD07 +:10E20000D0B514462DED048B534A544BE7F724FE4A +:10E2100041EC180B1DD89FED529B53EC182B51EC81 +:10E22000190BD6F78DFE00224F4BDEF721F906467B +:10E230000F4653EC182B51EC190BDEF719F9024677 +:10E240000B4630463946D5F7D7FF41EC180B44F062 +:10E25000010451EC180B0022444BDEF74DFE05D3B0 +:10E2600001224FF07953E7F7F7FD51D853EC182B03 +:10E27000D6F766FE41EC190B53EC182BD6F760FE6F +:10E2800006460F4653EC192B39483A49D6F758FE43 +:10E29000394A3A4BDEF7ECF853EC192BD6F750FE1F +:10E2A000374A384BDEF7E4F832463B46D6F748FEAD +:10E2B00053EC182BDEF7DCF806460F4653EC192B0F +:10E2C00031483249D6F73CFE314A324BDEF7D0F8BE +:10E2D00053EC192BD6F734FE2F4A304BDEF7C8F833 +:10E2E00053EC192BD6F72CFE2D4A2E4BDEF7C0F837 +:10E2F00053EC192BD6F724FE2B4B0022DEF7B8F88F +:10E3000002460B4630463946D5F776FF41EC180BEE +:10E31000A00705D551EC180B81F0004141EC180B1A +:10E3200014F007020BD00FF2880303EBC20251EC8A +:10E33000180B53681268DEF79BF841EC180B2007A6 +:10E3400005D551EC180B81F0004141EC180B51EC54 +:10E35000180BBDEC048BD0BD57CD9E5E1426D13F6B +:10E36000AA4C58E87AB6FB3F0000F0BF000040BE60 +:10E37000845D57134B57B03FB2934C19ED5EE43FA9 +:10E38000BEDE02B90240F83FDE39028FC7C0743FDB +:10E390008AAB1283000CC83F24D7E508B6D8F03FFB +:10E3A0000F34580E5895FD3F0000F03F000000006C +:10E3B000000000000000000066732D3852C1E03FED +:10E3C000182D4454FB21F93F66732D3852C1F03F9C +:10E3D000182D4454FB21F93F66732D3852C100407B +:10E3E000182D4454FB2109403FD038C6A6F1044003 +:10E3F00003B4DDE90023C3F30A5140F2FF729142F6 +:10E4000006D001B10CE0190350EA113006D00BE040 +:10E41000190350EA113014BF0220012002B07047E6 +:10E420004FF0FF3002B070476FF0010002B070474C +:10E4300010B5DFF8D84520620C220021201DDBF743 +:10E44000C6FA04F12400206104F13C00606104F18B +:10E450005400A06104F16C00E06100202070FF20F6 +:10E460006070A07010BD00002DE9F0472DED068B07 +:10E4700086B00C464FF0000ADFF8905501686960DD +:10E480004168A9608068E860D046404601900490E9 +:10E4900003900290052205F10C01286900F047FA6B +:10E4A000052205F10801686900F041FA0522291DDD +:10E4B000A86900F03CFA052301AA0321286900F0AD +:10E4C0004BFAB0EE408A052304AA0321686900F0E4 +:10E4D00043FAF0EE408A052303AA0321A86900F05D +:10E4E0003BFAB0EE409A05220321286900F070FA49 +:10E4F000F0EE080AC0EE209A95ED02AAD5ED01AA29 +:10E50000F5EE40AAF1EE10FA0FD1B5EE40AAF1EE09 +:10E5100010FA0AD195ED030AB5EE400AF1EE10FAB1 +:10E5200003D100F000FA4FF00108564695F801902B +:10E5300095ED030A6AEEAA0A4AEE0A0A40EE000ABC +:10E5400010EE900AD5F730FE41EC100BF0F798F87A +:10E5500051EC100BDDF71CFE0090052200A9E869C4 +:10E5600000F0E5F99DED000ADFEDA30AB4EE600AC4 +:10E57000F1EE10FA00F18580DFEDA00AB4EE600A3A +:10E58000F1EE10FA7DDA052302AA0321E86900F012 +:10E59000E3F9F0EE0C0AB4EE600AF1EE10FA70D571 +:10E5A0009FED970AB4EE408AF1EE10FA69D59FED1F +:10E5B000950AF4EE409AF1EE10FA10D59FED920A0A +:10E5C000F4EE409AF1EE10FA09DB6878FF2858D093 +:10E5D000FF2068704FF0FF3020700120C3E019EE7B +:10E5E000900AD5F7E1FD21F000413246DFF82034F2 +:10E5F000DEF782FC11D2B0EE000AF4EE408AF1EEB2 +:10E6000010FA17D4F4EE408AF1EE10FA39DAB4EECB +:10E61000409AF1EE10FA0EDB33E0052301AA194609 +:10E62000286900F099F9F7EE000AB4EE600AF1EEFD +:10E6300010FA26D5B04695ED030ADDED000A80EE0E +:10E64000200A10EE100AD5F7AFFD41EC100BFFF7D2 +:10E6500055FD53EC102B4FF00040DFF8B813D6F700 +:10E660006FFC41EC100BD5F7EBFE51EC100BD5F71E +:10E670000DFF0746B8F1000F50D1DEF754FC3D28DE +:10E6800003DB00F050F930466DE0A868D5F78CFD4B +:10E6900041EC110BB0EE418AF0EE618A95ED010A72 +:10E6A000B1EE400A10EE100AD5F77EFD41EC100BDA +:10E6B000B0EE481AF0EE681AFFF798FD53EC102BF5 +:10E6C0004FF00040D449D6F73BFC41EC100BD5F796 +:10E6D000B7FE51EC100BD5F7D9FE060001D506F5B3 +:10E6E000B47606F12D005A2190FBF1F8B8F1040F31 +:10E6F00000D1D046384600F03BF8002806D03A4614 +:10E700003146404600F039F8002802D100F00BF9FC +:10E7100004E0A878404501D085F80280A8784845F3 +:10E7200002D1B9F1FF0F1DD195F8201011F0060F9D +:10E7300001D0012604E03A46314600F067F806466B +:10E740003846DEF7F0FB3D280CDA002E0AD0A87818 +:10E750006978814206D0687020704FF0010AFF2866 +:10E7600000D02870504606B0BDEC068BBDE8F0879F +:10E770003C3079288041C00F704718B4A34C2378EF +:10E7800094F8204014F0060F01D018BC3EE02FD4BE +:10E79000984208D05A1C541002EB9474A410A2EBB7 +:10E7A000840290420ED15A224243283A002807D1CF +:10E7B000B1F59D7F06DD02F5B472914202DA15E0F3 +:10E7C000914213DB984208D0DA1C531002EB93738A +:10E7D0009B10A2EB830290420AD15A224243283274 +:10E7E000002801D12E2903DA8A4201DA002000E054 +:10E7F000012012BC70470000DD0CFB40A7493C41E2 +:10E800006766E63F3E1B3041D7B409412DE9F0432E +:10E8100091B004460D4691467C4E96F80080002744 +:10E820004846DEF780FB002804D44846DEF77BFB31 +:10E830001E2822DB4846DEF776FB1E2806DB48460C +:10E84000DEF771FB282801DA012716E04846DEF7DB +:10E850006AFB282806DB4846DEF765FB322801DA2A +:10E8600002270AE04846DEF75EFB32280ADB48460C +:10E87000DEF759FB3D2805DA0327B8F1000F45D430 +:10E88000002C01D5002042E0444509D008F10100E8 +:10E89000411000EB91718910A0EB8100844217D1E7 +:10E8A00000A80FF278114022D4F7E2FC3801002CC6 +:10E8B00000A908D141588D420ADA00A940184068E1 +:10E8C000A84205DA2BE0401850F82400854226DBE8 +:10E8D000444509D008F10300411000EB9171891003 +:10E8E000A0EB8100844211D100A80FF270114022E8 +:10E8F000D4F7BEFC3801002C00A90BD14158A94225 +:10E9000004DA00A94018C068854208DB012011B074 +:10E91000BDE8F083401850F82400A842F6DAFF2042 +:10E92000B0700020F3E73948FF21817070470388F9 +:10E93000934201D30023038003885B1C03809BB2B6 +:10E94000934201D300220280028800EB8200096812 +:10E9500041600120704700002DE9F8432DED028B46 +:10E9600004460D4616461F469FED278A4FF00008C5 +:10E97000B4F9009000EE105AF8EEC08A3A4600F062 +:10E9800027F880EE280A86ED000A05E0A7F10109C4 +:10E990000FFA89F908F101080FFA88F8A84511DA89 +:10E9A00004EB890090ED010AD6ED000A30EE600A12 +:10E9B00000EE008AB9F1010FE8DBA9F101090FFAB5 +:10E9C00089F9E7E788EE280ABDEC028BBDE8F18300 +:10E9D00030B49FED0D0A0023B0F900400EE024B2E0 +:10E9E000250006D400EB8505D5ED010A30EE200A9E +:10E9F000641E24B2002C00D5541E5B1C1BB28B423B +:10EA0000EDDB30BC70470000000000001022012048 +:10EA100000001040DCA54C40DCA54CC04A010000C1 +:10EA20003C00000096000000F00000004F010000D4 +:10EA3000410000009B000000F500000054010000B0 +:10EA400046000000A0000000FA0000005E01000087 +:10EA500050000000AA000000040100001E00000099 +:10EA600078000000D20000002C0100001900000016 +:10EA700073000000CD00000027010000140000001A +:10EA80006E000000C8000000220100000A00000023 +:10EA900064000000BE000000180100004163632014 +:10EAA0004D41583231313034000000004D61672053 +:10EAB000484D4335393833004779726F204D4158FE +:10EAC00032313130340000002DE9F0412DED048B5E +:10EAD0008CB006460F46904600A80FF2BC5130227B +:10EAE000D4F7C6FBDFF864450A2020620720606285 +:10EAF000A0620520E062DFF85805DFF85815CDE97F +:10EB0000000100A84FF03332DFF84C35C0E9022392 +:10EB1000DFF83C25DFF84435C0E904234FF03332F9 +:10EB2000DFF83C35C0E90623DFF83835C0E90823B3 +:10EB3000DFF83435C0E90A23DFF830550A212965AA +:10EB40003168142291FBF2F1E965D8F8001002292E +:10EB500001D1052123E03968102918D0B1F5807F53 +:10EB600006D0B1F5806F08D0B1F5006F0AD012E081 +:10EB70004FF480712163002111E04FF48061216323 +:10EB800002210CE04FF400612163032107E0102112 +:10EB90002163042103E04FF400712163012100EBA4 +:10EBA000C100D0E90023DFF8C804DFF8C814D6F7A5 +:10EBB000C7F941EC180B53EC182B0020DFF8B81400 +:10EBC000D6F7BEF941EC100B85ED0A0B85ED080B6D +:10EBD00053EC102BDFF8A404DFF8A414D6F7B0F937 +:10EBE000C5E90C01202200212046DAF7F0FE9FED56 +:10EBF000319B206ADDF7B4FA53EC192BD6F7A0F954 +:10EC000053EC182BD6F79CF9C4E90001606ADDF7D4 +:10EC1000A7FA53EC192BD6F793F953EC182BD6F728 +:10EC20008FF9C4E90201A06ADDF79AFA53EC192BB7 +:10EC3000D6F786F953EC182BD6F782F9C4E904010C +:10EC4000E06ADDF78DFA53EC192BD6F779F953EC1E +:10EC5000182BD6F775F9C4E906010020A865012034 +:10EC60006866A86604F1340028660020287068658C +:10EC70000146C5E90E019FED110B85ED100B85EDE9 +:10EC8000120B0CB0BDEC048BBDE8F081DFF8DC03A7 +:10EC90000121416681669FED090B80ED100B80ED2F +:10ECA000120B0021017041650A460B46C0E90E2394 +:10ECB00070470000000000000000E03F2D431CEB07 +:10ECC000E2361A3F2DE9F84F2DED068B8AB0054646 +:10ECD0004FF000089FEDDB9BB0EE498AF0EE698AA9 +:10ECE00004A81821D3F7B0FBC1468DED010AF0EE60 +:10ECF000601AF1EE611ACDED021AB1EE410A8DED06 +:10ED0000030ADA4C1E2201A9206EFCF790F828684D +:10ED1000022802D10220009001E003200090206E22 +:10ED2000616E00290CD0002800F085810088216DDB +:10ED30008842C0F280814046606684ED0E9B7AE195 +:10ED4000A16E002939D01E22216D09B2FCF798F876 +:10ED500094ED149AF8EEC90A80EE200A10EE100A1B +:10ED6000D5F722FAC4E902011E2219EE101A09B2DF +:10ED7000206EFCF7A3F894ED149AF8EEC90A80EE21 +:10ED8000200A10EE100AD5F70FFAC4E904011E227A +:10ED900019EE101A09B2206EFCF7AEF8D4ED140A81 +:10EDA000F8EEE00A80EE200A10EE100AD5F7FCF922 +:10EDB000C4E906014046A06645E01E224146FCF734 +:10EDC0004FF805461E22216D09B2206EFCF748F867 +:10EDD000064694ED140AB8EEC09A95ED000AD6EDF9 +:10EDE000000A30EE600A80EE090A10EE100AD5F72C +:10EDF000DBF9D4E90223DDF73BFBC4E9020195ED21 +:10EE0000010AD6ED010A30EE600A80EE090A10EE22 +:10EE1000100AD5F7C9F9D4E90423DDF729FBC4E9C1 +:10EE2000040195ED020AD6ED020A30EE600A80EE8A +:10EE3000090A10EE100AD5F7B7F9D4E90623DDF771 +:10EE400017FBC4E906011822414604A8DAF7BFFD02 +:10EE5000454604AE40E01E22294609B2206EFBF76B +:10EE6000FFFF07463868D5F79FF9D4E90223E7F793 +:10EE700095F841EC100B53EC102BD6F761F8DDE957 +:10EE80000423DDF7F5FACDE904017868D5F78CF9AC +:10EE9000D4E90423E7F782F841EC100B53EC102B74 +:10EEA000D6F74EF8D6E90223DDF7E2FAC6E9020109 +:10EEB000B868D5F779F9D4E90623E7F76FF841EC9C +:10EEC000100B53EC102BD6F73BF8D6E90423DDF7F3 +:10EED000CFFAC6E904016D1C206D8542BBDBDDF76E +:10EEE0003FF941EC190BDDE9040153EC192BD5F77F +:10EEF00083F9CDE90401D6E9020153EC192BD5F7CA +:10EF00007BF941EC1A0B86ED02ABD6E9040153EC18 +:10EF1000192BD5F771F941EC190B86ED049BDDE94E +:10EF2000040153EC1A2BDDF7A3FA564A564BDDF7D2 +:10EF3000E3FF07D294ED100B8DED040B94ED120B53 +:10EF400086ED020B9DED040B84ED100B96ED02ABEC +:10EF500084ED12ABD4E90E014FF066324B4BD5F77E +:10EF6000EFFF82468B46DDE9042351EC1A0BDDF7F7 +:10EF70007FFA02460B4651EC190BD5F73DF9344A9E +:10EF8000434BD5F7DDFF02460B4650465946DDF7A9 +:10EF90006FFA41EC100B84ED0E0B01223D4BE6F7AE +:10EFA0005BFF06D890462078012802D1606D401C96 +:10EFB00060654D460FE006EBC50090ED009B51ECFF +:10EFC000180B53EC192BDDF797FF03D2B0EE498AEB +:10EFD000F0EE698A6D1C00988542ECDBD4E90801EB +:10EFE00053EC182BE6F738FF02D9606D10280FDBC1 +:10EFF000E06DA16D884204DA4846207060654FF0EC +:10F0000001090020A06594ED0A0B84ED080B12E0C5 +:10F01000B8F1000F0FD1A06DE16D814209DA012135 +:10F020002170494661654FF0020994ED0C0B84EDA7 +:10F03000080B401CA06548460AB0BDEC068BBDE835 +:10F04000F28F00BF0000000000000000D080002010 +:10F050009A9999999999C93F3333D33F9999E93F3F +:10F060003333F33F333303403333E33F1084002023 +:10F070001F85EB51B89E2340000014407B14AE471F +:10F08000E17A843F2E431CEBE2362A3F6666EE3F70 +:10F090009999A93F000034409A9999999999C93F43 +:10F0A000333333333333E33F9A9999999999E93F4D +:10F0B000333333333333F33F333333333333034077 +:10F0C000333333333333E33F0FB400B587B02722F4 +:10F0D00000210846D7F794F8022805D10FF2F43042 +:10F0E000D4F7EEF902202AE0272201210020D7F7E9 +:10F0F00087F8022805D10FF2E830D4F7E1F90220B1 +:10F100001DE0BDF92200009000A8BDF92410416067 +:10F11000BDF926108160BDF9280003909DF82A00F2 +:10F1200004909DF82B000590DFF8940301214170B5 +:10F1300000218170C17000A8FEF7F4FA012007B029 +:10F140005DF814FB10B58AB0272200210120D7F703 +:10F1500057F8032805D10FF29830D4F7B1F90320FE +:10F1600039E0272201210846D7F74AF8022805D1BD +:10F170000FF26C30D4F7A4F902202CE0D04C94F9B3 +:10F180000300012823D10020A07000F04AFA00A853 +:10F190002421D3F759F901208DF800002A2001908D +:10F1A0000A208DF808000020ADF822008DF8090033 +:10F1B000ADF80A008DF80C0000A8D7F7F5F8002884 +:10F1C00005D10FF23C30D4F77BF9002003E000209A +:10F1D000A070E07001200AB010BD30B59DB012A83B +:10F1E000D7F76DF80025B64C94F90100012803D03B +:10F1F000042801D0052806D112A890EC030AFEF7D6 +:10F200002DFC05460AE0022808D115A8D0EC031A07 +:10F2100012A890EC030AFEF7CFFA0546002D35D070 +:10F2200094F90100854230D02570012000F028F9C2 +:10F23000012D02D10120A07027E0022D25D1002050 +:10F24000A07094F9030001281FD100F0EAF900A88A +:10F250002421D3F7F9F801208DF800002A2001902D +:10F260000A208DF808000020ADF822008DF8090072 +:10F27000ADF80A008DF80C0000A8D7F795F8002823 +:10F2800000F0C2800020E070A060657094F9030077 +:10F2900094F9021001292DD100282BD1606890F833 +:10F2A0009006002801D00020B9E000A82421D3F75F +:10F2B000CBF800208DF800002A2001900A208DF85C +:10F2C00008000020ADF822008DF80900ADF80A0012 +:10F2D0008DF80C0000A8D7F767F8002805D10FF2C9 +:10F2E0003820D4F7EDF8002099E00120E0700020EC +:10F2F000A06093E0012840F09180A068401CA060CD +:10F3000005283ADA15A890EC030AFEF705FE012855 +:10F310002BD1042060702070012000F0B1F8002093 +:10F32000A07094F90300012827D100F07AF900A811 +:10F330002421D3F789F801208DF800002A200190BC +:10F340000A208DF808000020ADF822008DF8090091 +:10F35000ADF80A008DF80C0000A8D7F725F80028B2 +:10F3600052D00020E070A06007E0022805D10520FF +:10F3700060702070012000F083F800F04EF9012841 +:10F3800025D103202070012000F07AF80020A07021 +:10F3900000F047F900A82421D3F756F801208DF892 +:10F3A00000002A2001900A208DF808000020ADF806 +:10F3B00022008DF80900ADF80A008DF80C0000A8B5 +:10F3C000D6F7F2FF00281FD00020E070A060A068F0 +:10F3D000FB2823DB09A82421D3F736F801208DF878 +:10F3E00024002A200A900A208DF82C000020ADF875 +:10F3F00046008DF82D00ADF82E008DF8300009A8DC +:10F40000D6F7D2FF002805D10FF2F400D4F758F850 +:10F41000002004E00020E070A070A06001201DB07A +:10F4200030BD80B5D6F7EAFE2549486000220A7053 +:10F430002449C0F8281600F2286023494160234976 +:10F4400081600FF21101C1600FF23D0101610120E5 +:10F4500002BD00001A48406890F81906002801D142 +:10F460000020704708E080B515480021017008466B +:10F4700000F006F8012002BD154890F90000704721 +:10F48000134908707047000018B440F221120B783D +:10F4900012FB030301241C700B7812FB03035C7046 +:10F4A0000B7812FB030327249C700B7812FB0300DC +:10F4B000034A1278C2700878401C087011BCD2E769 +:10F4C000703B0120C9F0020845F10208DBF1020897 +:10F4D000093D0120535320414343206661696C007C +:10F4E0005353204759524F206661696C0000000059 +:10F4F00053532041434332206661696C0000000091 +:10F50000444F55424C4554415020436C6F73652025 +:10F510006661696C00000000444F55424C455441FF +:10F5200050204F70656E206661696C000FB480B525 +:10F530002A2200210846D6F763FE022805D10FF2E1 +:10F540003810D3F7BDFF022002E000F0A3F801203D +:10F5500002BC5DF814FB80B52A2200210120D6F7F9 +:10F560004FFE032805D10FF21C10D3F7A9FF03208B +:10F5700002BD012002BD10B58CB000A8D6F79FFED9 +:10F5800000A890EC030A00F0ABF80446012C0ED161 +:10F5900000F080F833480470416891F89016002913 +:10F5A00001D001214170012000F034F803E0022C69 +:10F5B00001D100F06FF801200CB010BD80B5D6F776 +:10F5C0001DFE284948602849C0F8A01600F2A06036 +:10F5D00026494160264981600FF20D01C1600FF29A +:10F5E0004D010161012002BD1E48406890F891065E +:10F5F000002801D10020704708E080B5194800219B +:10F600000170084600F006F8012002BD194890F983 +:10F6100000007047174908707047124890F90100C0 +:10F6200070471048002141707047000018B440F244 +:10F6300021120B7812FB030301241C700B7812FBC0 +:10F6400003035C700B7812FB03032A249C700B7875 +:10F6500012FB0300034A1278C2700878401C08703D +:10F6600011BCCAE7103C01202DF5020857F502082D +:10F6700077F50208F33C01204454204143432066BF +:10F6800061696C0044542041434332206661696CD7 +:10F6900000000000DFF81404002101604160816077 +:10F6A000C160016141618161C16101624162816248 +:10F6B000C1620846024610E0DFF8F41341F820204A +:10F6C00001EB80018A620A65DFF8E81341F8202027 +:10F6D00001EB80018A620A65401C0A28ECDB704756 +:10F6E0002DE9F8432DED028B4FF00009DFF8BC4304 +:10F6F00020680A2806DB0A3820606068002801D1EB +:10F70000012060602568DFF8A86306EB850080EDC6 +:10F71000000A06EB8507F0EE601AC7ED0A1A87EDBE +:10F72000141A606828430DD1691C2160DFF8840336 +:10F730004A4640F8212000EB8100114681620165B4 +:10F740000846A6E1691E00D50A31DFF8680306EB1A +:10F75000850292ED000A06EB8102D2ED000A30EE3E +:10F76000600A00EB850282ED000A00EB850806EBDB +:10F77000810197ED0A0AD1ED0A0A30EE600A88EDA0 +:10F780000A0A97ED140AD1ED140A30EE600A88EDEA +:10F79000140AA168002952D150F82500D4F704FDBD +:10F7A00021F000414FF03332DFF80C33DDF7A4FBDA +:10F7B0003AD2D8F82800D4F7F7FC21F000414FF0F6 +:10F7C0003332BD4BDDF798FB2ED2D8F85000D4F77A +:10F7D000EBFC21F000414A46B84BDDF78DFB23D20C +:10F7E00006EB850090ED000ADFEDAC0AB4EE600A8E +:10F7F000F1EE10FA18DBB86AD4F7D6FC21F000411C +:10F800004A464FF08043DDF777FB0DD2386DD4F7D1 +:10F81000CBFC21F000414A46A94BDDF76DFB03D23A +:10F82000E068401CE06001E04846E060E0680428D1 +:10F83000C0F2FA800120A06048462062F4E001296D +:10F8400040F0A380216A012901DB491C2162216962 +:10F85000002924D150F8250000EE100ADFED900AAF +:10F86000B4EE600AF1EE10FA09DB4FF0FF302061D0 +:10F87000A069401CA061206A401C206236E0DFEDD8 +:10F88000890AB4EE600AF1EE10FA2FD5012020614A +:10F89000A069401CA061206A401C206226E001296A +:10F8A00011D100EB850090ED000ADFED7D0AB4EE8A +:10F8B000600AF1EE10FA19DB4FF0FF302061A06909 +:10F8C000401CA06112E011F1010F0FD100EB850087 +:10F8D00090ED000ADFED730AB4EE600AF1EE10FA63 +:10F8E00004D501202061A069401CA0616069002846 +:10F8F00027D198ED140AF7EE000AB4EE600AF1EE93 +:10F9000010FA0CDB4FF0FF306061E069401CE061F1 +:10F91000206A002840F088800120206284E0DFED2A +:10F92000620AB4EE600AF1EE10FA7DD50120606142 +:10F93000E069401CE061206A002875D10120206246 +:10F9400072E001280FD198ED140AF7EE000AB4EE28 +:10F95000600AF1EE10FA67DB4FF0FF306061E0699A +:10F96000401CE06160E010F1010F5DD198ED140AD8 +:10F97000DFED4D0AB4EE600AF1EE10FA54D5012025 +:10F980006061E069401CE0614EE002294CD1216ACF +:10F99000481C206294ED090A06EB8501D1ED000AAE +:10F9A00030EE200A84ED090AD4ED0A0A97ED0A1A0E +:10F9B00070EE810AC4ED0A0A94ED0B1AD7ED141A01 +:10F9C00031EE211A84ED0B1A0A282DD1F2EE041A19 +:10F9D00080EE210AC0EEA10A81EE218AB2EE081A59 +:10F9E000B4EE410AF1EE10FA1ED59FED2C1AB4EEDA +:10F9F000410AF1EE10FA17DB10EE900AD4F7D4FBAF +:10FA000021F000414A462F4BDDF776FA0CD218EE72 +:10FA1000100AD4F7C9FB21F000414A462A4BDDF712 +:10FA20006BFA01D24FF00109216AB42923DAA069E7 +:10FA3000042802DAE269042A1DDB03281BDB1F29E4 +:10FA40000ADB00202062A061E0610220A0600020AB +:10FA50006062A062E06218E00FF27000D3F730FD40 +:10FA6000A069042801DB801EA061E06904280CDB8A +:10FA7000801EE06109E0B42907DB0020A060E0609F +:10FA800020616061A061E06120622068401C20600C +:10FA90004846BDEC028BBDE8F28300000100A040A7 +:10FAA0009A99193F999919BFFEFF7FBF1837012016 +:10FAB000F0260120682701203333E33F0000F03FA8 +:10FAC000000014400000084000001840445450203A +:10FAD0006661696C20256400CF490022CA630A640C +:10FAE00001F148024A6201F1C4028A6201F5A07282 +:10FAF000CA6201F5DE720A6301F50E724A6301F50E +:10FB00002D728A630B2802DA1E204864704715287C +:10FB100002DA192048647047432802DA1420486446 +:10FB20007047C92802DA0F20486470470A204864E9 +:10FB300070470000F8B52DED068B84B00446002612 +:10FB4000B54DE86B00286CD185ED000AB0EE603A47 +:10FB500085ED013A85ED021AB0EE610A85ED030AE2 +:10FB6000B0EE420A85ED050AB0EE620A85ED040AA0 +:10FB700030460290019000901E222946E86A00F06B +:10FB8000DAF81E22291DA86A00F0D5F81E2205F118 +:10FB90000801686A00F0CFF81E2205F10C01A86B7D +:10FBA00000F0C9F81E2205F11001686B00F0C3F8DF +:10FBB0001E2205F11401286B00F0BDF8696C286C59 +:10FBC00081422ADA1E2300AA09B2E86A00F0C8F8C6 +:10FBD000B0EE408A1E2301AA696C09B2A86A00F03F +:10FBE000BFF8F0EE408A1E2302AA696C09B2686A67 +:10FBF00000F0B6F8DFED860AB4EE608AF1EE10FA96 +:10FC00000BD5F4EE608AF1EE10FA06D5B4EE600A78 +:10FC1000F1EE10FA01D50120E863286C401C28643D +:10FC200084E0AE6B6F6C1E22394609B2304600F09C +:10FC3000D3F8F0EE408A1E22394609B2304600F071 +:10FC4000F1F8B0EE409A1E22394609B2304600F073 +:10FC50000EF9B81E00EE900AB8EEE08A78EEC90AF6 +:10FC600030EEC00AC0EE088AC5ED068A6E6B1E2211 +:10FC7000394609B2304600F0AFF8B0EE409A1E2285 +:10FC8000394609B2304600F0CDF8F0EE409A1E2217 +:10FC9000394609B2304600F0EAF879EE690A30EEEA +:10FCA000C00A80EE089A85ED079A2E6B1E2239460F +:10FCB00009B2304600F090F8F0EE409A1E22394624 +:10FCC00009B2304600F0AEF8B0EE40AA1E22394626 +:10FCD00009B2304600F0CBF879EECA0A30EEC00A1D +:10FCE00080EE088A85ED088A18EE900AD4F75CFA4F +:10FCF0004A4A4B4BD4F780FAD4F7C8FB208019EE60 +:10FD0000100AD4F751FA454A454BD4F775FAD4F79F +:10FD1000BDFB608018EE100AD4F746FA3F4A404B0C +:10FD2000D4F76AFAD4F7B2FBA0800126304604B0BB +:10FD3000BDEC068BF2BD0388934201D30023038000 +:10FD400003885B1C03809BB2934201D30022028094 +:10FD5000028800EB820009684160012070470000C2 +:10FD60002DE9F8432DED028B04460D4616461F463D +:10FD70009FED288A4FF00008B4F9009000EE105A69 +:10FD8000F8EEC08A3A4600F027F880EE280A86EDA1 +:10FD9000000A05E0A7F101090FFA89F908F1010845 +:10FDA0000FFA88F8A84511DA04EB890090ED010AF2 +:10FDB000D6ED000A30EE600A00EE008AB9F1010FBC +:10FDC000E8DBA9F101090FFA89F9E7E788EE280ACB +:10FDD000BDEC028BBDE8F18330B49FED0E0A002329 +:10FDE000B0F900400EE024B2250006D400EB8505F2 +:10FDF000D5ED010A30EE200A641E24B2002C00D595 +:10FE0000541E5B1C1BB28B42EDDB30BC7047000004 +:10FE10006F12033B0000000008F5002090D87D68B9 +:10FE20004B10333F2DE9F04104460D46164694ED44 +:10FE3000010A0027B4F9008014E00FFA88F8404660 +:10FE4000002807D404EB8000D0ED010A00F03CF854 +:10FE5000A8F101080FFA88F8B8F1000F01D5A6F152 +:10FE600001087F1C3FB2AF42E7DBBDE8F0812DE91E +:10FE7000F04104460D46164694ED010A0027B4F9F8 +:10FE8000008014E00FFA88F84046002807D404EBFD +:10FE90008000D0ED010A00F00FF8A8F101080FFA78 +:10FEA00088F8B8F1000F01D5A6F101087F1C3FB218 +:10FEB000AF42E7DBBDE8F081B4EE600AF1EE10FA84 +:10FEC00001D4B0EE600A7047F4EE400AF1EE10FA89 +:10FED00001D4B0EE600A70470020024609E0D04924 +:10FEE00041F8202001EB8001C1F8F020C1F8E021A9 +:10FEF000401C3C28F3DBCB48114601604160816027 +:10FF0000704700002DE9F84F2DED0A8B86B00020D8 +:10FF10008DF80800C34C20683C2806DB3C38206084 +:10FF20006068002801D1012060602568DFF8F09248 +:10FF300009EB850080ED000A09EB8506F0EE601AFA +:10FF4000C6ED3C1A86ED781A59F82500D4F72CF93D +:10FF500021F000410022B64BDCF7CEFF0AD359F85E +:10FF60002500D4F721F921F000410122AE4BE5F73D +:10FF700073FF02D8002049F82500D6F8F000D4F726 +:10FF800013F921F000410022A84BDCF7B5FF0AD39A +:10FF9000D6F8F000D4F708F921F000410122A54B72 +:10FFA000E5F75AFF02D80020C6F8F000D6F8E001C5 +:10FFB000D4F7FAF821F0004100229D4BDCF79CFFBA +:10FFC0000AD3D6F8E001D4F7EFF821F0004101227E +:10FFD000984BE5F741FF02D80020C6F8E00159F838 +:10FFE0002500D4F7E1F821F0004100221346FAF78A +:10FFF00039FC19D1D6F8F000D4F7D6F821F0004139 +:020000023000CC +:1000000000221346FAF72EFC0ED1D6F8E001D4F701 +:10001000CBF821F0004100221346FAF723FC03D16C +:10002000A068401CA06001E01046A060A068052800 +:10003000C0F2ED809FED808A9FED7F9ADFED7E8A92 +:100040001646104604900390DFED7B9A9FED7ABA36 +:1000500000E0761C372E80F289806768002F01D17E +:10006000B24602E0701900F1010ABAF13C0F01DB5F +:10007000AAF13C0A59F82A0000EE100AF4EE409A60 +:10008000F1EE10FA02D5F0EE409A049609EB8A08D8 +:1000900098ED780AB4EE40BAF1EE10FA02D5B0EE5F +:1000A00040BA03969FED65AB9FED66CB18EE100A44 +:1000B000D4F77AF8CDE9000159F82A00D4F774F89A +:1000C00053EC1C2BD4F73CFF53EC1A2BD4F738FF1E +:1000D00000225E4BD4F790F8DDE90023DCF7C8F985 +:1000E000DCF756F808EE100A19EE100AD4F75CF89F +:1000F00082468B46D8F8F000D4F756F853EC1C2B08 +:10010000D4F71EFF53EC1A2BD4F71AFF00224F4BE3 +:10011000D4F772F852465B46DCF7AAF9DCF738F8F8 +:1001200009EE100A18EE900AD4F73EF882468B4684 +:10013000D8F8E001D4F738F853EC1C2BD4F700FFC3 +:1001400053EC1A2BD4F7FCFE0022404BD4F754F8A2 +:1001500052465B46DCF78CF9DCF71AF808EE900A99 +:10016000002F7FF476AFAE427FF473AF18EE100A23 +:10017000D4F71AF841EC1A0B21F000410122374B59 +:10018000E5F76AFE43D851EC1A0B21F0004100223A +:100190002F4BDCF7B1FE3AD219EE100AD4F704F86F +:1001A00041EC190B21F0004101222A4BE5F754FEE6 +:1001B0002DD851EC190B21F000410022264BDCF721 +:1001C0009BFE24D218EE900AD3F7EEFF41EC190BF8 +:1001D00021F000410122214BE5F73EFE17D851ECFA +:1001E000190B21F0004100221D4BDCF785FE0ED2D9 +:1001F00003980499401ADCF796FE142807DAB5EE46 +:10020000408AF1EE10FA02DD01208DF80800681C2A +:1002100020609DF8080006B0BDEC0A8BBDE8F28FA7 +:1002200010FB0020103B0120000022400000E03FB6 +:100230000000F03F0000244000000000000000002B +:1002400000003440E6C1631ADCA54C4000408F40FA +:1002500000005E400000344000805B4000003E40F3 +:100260000040604070B52DED028B82B00C46154603 +:1002700008EE103A9C4E0021F1604FF47A71484329 +:100280003C2190FBF1F0DBF76BFF41EC100BD4F756 +:10029000D7F851EC100BD4F7F9F830617461B561FF +:1002A00006F12C00F06106F13C00306206F14C00D2 +:1002B0007062B8EEC80ADFED8A0A80EE200A86ED89 +:1002C0000A0A10EE100AD3F76FFFCDE90001B369F7 +:1002D000726931690FF21820D3F7F2F802B0BDEC61 +:1002E000028B70BD38B52DED028B84B000247E4D9D +:1002F00001682960416869608068A86020460290B2 +:100300000190009003222946E86900F07DF803225D +:10031000291D286A00F078F8032205F10801686AAF +:1003200000F072F895ED020AD5ED010A95ED001A7C +:1003300021EE011A00EEA01A00EE001A11EE100ACA +:10034000D3F732FF41EC100BEEF79AF951EC100B9A +:10035000DBF71EFF00EE100AD5ED020A80EE800AE0 +:1003600010EE100AD3F720FF41EC100BFDF7C6FE8C +:1003700053EC102B4FF000405C49D4F7E1FD41EC09 +:10038000100BD4F75DF851EC100BD4F77FF86969C6 +:1003900088422DDBA96981422ADB032300AA194682 +:1003A000E86900F045F8B0EE408A032301AA194637 +:1003B000286A00F03DF8F0EE408A032302AA1946AD +:1003C000686A00F035F8D5ED0A0AB4EE608AF1EEFD +:1003D00010FA0DD5F4EE608AF1EE10FA08D5B4EEFD +:1003E000600AF1EE10FA03D5E868401CE86001E00D +:1003F0002046E860E8682969884200DB012420463D +:1004000004B0BDEC028B32BD0388934201D30023BC +:10041000038003885B1C03809BB2934201D30022BC +:100420000280028800EB8200096841600120704769 +:100430002DE9F8432DED028B04460D4616461F4666 +:100440009FED288A4FF00008B4F9009000EE105A92 +:10045000F8EEC08A3A4600F027F880EE280A86EDCA +:10046000000A05E0A7F101090FFA89F908F101086E +:100470000FFA88F8A84511DA04EB890090ED010A1B +:10048000D6ED000A30EE600A00EE008AB9F1010FE5 +:10049000E8DBA9F101090FFA89F9E7E788EE280AF4 +:1004A000BDEC028BBDE8F18330B49FED0E0A002352 +:1004B000B0F900400EE024B2250006D400EB85051B +:1004C000D5ED010A30EE200A641E24B2002C00D5BE +:1004D000541E5B1C1BB28B42EDDB30BC704700002E +:1004E00000401C4600000000582F0120DCA54C40B5 +:1004F00053504120696E69743A2025642C2025648C +:100500002C2025642C202566000000000FB480B547 +:100510000FF23420D2F7D4FF8348002181700121EB +:10052000C17001710021417181710170D2F747FFE3 +:10053000007C000601D4012000E0012002BC5DF82F +:1005400014FB80B50FF20820D2F7BAFFD2F737FFBD +:10055000007C000616D57448002181700121C1700D +:100560000171002141718171417801290AD1002175 +:1005700041700E220A210120D5F742FE032801D145 +:10058000032002BD012002BD38B568488169497A5F +:10059000C069407A4518D2F712FF007C000631D5B9 +:1005A000614CA078002802D10120A07032BD607893 +:1005B000EDB2002D06D0012824D10120E0700020EA +:1005C00060701FE0002811D1E078012806D10E22CA +:1005D0000A210120D5F714FE0020E0700E220A2126 +:1005E0000020D5F70DFE0120607032BD94F90000A7 +:1005F000002802D0022803D004E000F005F801E052 +:1006000000F034F8012032BD38B5474CE06890F96D +:1006100068502079012809D1512D07DA0020207176 +:10062000012000F07EF8002000F06EF8B4F90820F8 +:10063000954217DBA079401CA07140B2022813DB61 +:10064000022020700020A07129460FF20C10D2F772 +:1006500037FF78202081012000F063F8012000F0AE +:1006600053F801E00020A071012032BD38B52E4CB6 +:10067000E06890F96850502D16DA6079401C60717E +:1006800040B2022812DB00202070012000F049F85F +:10069000002000F039F800206071502229460FF246 +:1006A000C400D2F70DFF01E000206071012032BDCF +:1006B00010B50FF2BC00D2F703FF1B4CD5F79EFD1F +:1006C0002061D6F755FCE0600020207020691849B1 +:1006D000C0F8401200F5107016494160164981605B +:1006E0000FF20D01C16015490161012010BD00002C +:1006F000014600200C4A126992F83122002A02D0E9 +:10070000002900D109E070470D49012802D10120DC +:10071000087070470020087070470A4890F9000080 +:100720007047084908707047B886002008400020CC +:100730000D05030843050308890503082365000820 +:10074000EF3C0120EE3C0120537461727400000004 +:1007500053746F7000000000436C6F736520256454 +:10076000202564004F70656E2025642025640000FC +:10077000496E697400000000924800214160816068 +:10078000C160016141618161017001214170704767 +:1007900070B52DED068BF0EE608AB0EE419A002424 +:1007A000884D2878012800F004816878002852D10B +:1007B0002E69002E00F0A280D5ED010A30EE600A0D +:1007C00010EE100AD3F7F0FC21F00041DBF7E0FC5B +:1007D00009EE900AB0EE680AD5ED020A30EE600A22 +:1007E00010EE100AD3F7E0FC21F00041DBF7D0FC5B +:1007F0000AEE100AB0EE490AD5ED030A30EE600A9F +:1008000010EE100AD3F7D0FC21F00041DBF7C0FC5A +:1008100000EE100ADFED690AF4EE609AF1EE10FACC +:1008200016D5B4EE60AAF1EE10FA11D5B4EE600A56 +:10083000F1EE10FA0CD5701C28610728C0F2B980BF +:1008400020466860A860E860286101206870B0E018 +:1008500020462861ADE06869002846D12869002853 +:100860004CD0D5ED010A30EE600A10EE100AD3F735 +:100870009BFC21F00041DBF78BFC09EE900AB0EE07 +:10088000680AD5ED020A30EE600A10EE100AD3F7BE +:100890008BFC21F00041DBF77BFC0AEE100AB0EE86 +:1008A000490AD5ED030A30EE600A10EE100AD3F7BC +:1008B0007BFC21F00041DBF76BFC00EE100ADFED62 +:1008C000400AF4EE609AF1EE10FA09DAB4EE60AA8A +:1008D000F1EE10FA04DAB4EE600AF1EE10FA68DB19 +:1008E000012068612046286163E0012861D12E69FA +:1008F000322E02DA701C28615BE00DD185ED010A11 +:10090000B0EE680A85ED020AB0EE490A85ED030AE9 +:100910002869401C28614CE0AE69322E44DAD5EDDE +:10092000010A30EE600A10EE100AD3F73DFC21F008 +:100930000041DBF72DFC09EE900AB0EE680AD5ED18 +:10094000020A30EE600A10EE100AD3F72DFC21F0F7 +:100950000041DBF71DFC0AEE100AB0EE490AD5EDA6 +:10096000030A30EE600A10EE100AD3F71DFC21F0E6 +:100970000041DBF70DFC00EE100A701CA861DFEDF2 +:10098000100AF4EE609AF1EE10FA09DAB4EE60AAF9 +:10099000F1EE10FA04DAB4EE600AF1EE10FA08DBB8 +:1009A00001202870044604E0204628616861A8619F +:1009B00068702046BDEC068B70BD00006666A63FE1 +:1009C0006766A63F24390120834800210160416009 +:1009D00081607047F8B52DED0C8BB0EE408AF0EEDB +:1009E000608AB0EE419A0027B0EE680A10EE100A55 +:1009F000D3F7DAFB41EC1A0BB0EE480A10EE100AFE +:100A0000D3F7D2FB41EC1C0B734E21F000413A4668 +:100A1000724BDCF771FA18D251EC1A0B21F000413D +:100A2000DCF76AFA11D2B0EE490A10EE100AD3F7D9 +:100A3000BBFB21F000413A46684BDCF75DFA04D27B +:100A4000104630607060B060C3E09FED65BB9FED05 +:100A500066DB3068D3F7A8FB04460D4653EC1C2B2D +:100A600051EC1D0BD4F76CFA53EC1B2BD4F768FA3E +:100A70003A465F4BD3F7C0FB22462B46DBF7F8FC28 +:100A8000DBF786FB09EE900AC6ED009A7068D3F793 +:100A90008BFB04460D4653EC1A2B51EC1D0BD4F77F +:100AA0004FFA53EC1B2BD4F74BFA3A46504BD3F783 +:100AB000A3FB22462B46DBF7DBFCDBF769FB0AEEE8 +:100AC000100A86ED01AAB068D3F76EFB04460D4606 +:100AD000B0EE490A10EE100AD3F766FB53EC1D2B5B +:100AE000D4F72EFA53EC1B2BD4F72AFA3A46404B94 +:100AF000D3F782FB22462B46DBF7BAFCDBF748FB39 +:100B000009EE100A86ED029A19EE900AD3F74CFB13 +:100B100021F0004141EC1B0B1AEE100AD3F744FB05 +:100B200041EC180B21F0004141EC1C0B19EE100AAE +:100B3000D3F73AFB41EC1A0B53EC1B2B51EC1C0B7B +:100B4000DBF796FC53EC1A2B23F00043DBF790FC09 +:100B5000DBF71EFB00EE100ADFED260AB4EE600A9A +:100B6000F1EE10FA2EDB51EC1A0B21F000410122BC +:100B7000214BE5F771F925D8BBEE090AF4EE409A4E +:100B8000F1EE10FA0BD551EC180B21F0004153ECAB +:100B90001A2B23F00043DCF7AFF900D201279FEDB9 +:100BA000170AF4EE409AF1EE10FA0BDB51EC180B39 +:100BB00021F0004153EC1A2B23F00043DCF79CF9A1 +:100BC00000D20227002F03D0002030607060B06098 +:100BD0003846BDEC0C8BF2BD883B01200000E03FA5 +:100BE0000000000000004E40E6C1631ADCA54C4046 +:100BF00000408F4001004842000044400100C841CD +:100C000010B582B000208DF80000894C04F110036B +:100C100014220D2104F5067000F00CF904F58A7316 +:100C200014220D2104F50D7000F004F9EBF71CFA05 +:100C3000002849D0D2F7C3FBA060DFF7E7FBE0F75D +:100C40009EF8A0680178002903D0217841F00101C5 +:100C500021700A21D2F71DFCA068D2F7F4FBA0682E +:100C6000C178002903D0217841F002012170417937 +:100C7000002903D0217841F00401217081790029F5 +:100C800003D0217841F00801217021780F2902D189 +:100C90005521817500E08175002201210846D2F7B7 +:100CA00001FEE4F731FE3221A068D2F774FDA0689E +:100CB000D2F73AFDD2F7EAFDD2F7EEFDD6F758F9B2 +:100CC0000021C0F8801016BD002016BD80B5FFF7CA +:100CD00097FF5749486001BD80B5072000F0F6F83E +:100CE000FBE77FB5D9F7ECFE002801D0D7F726F84F +:100CF0003E2000F0F5F80646D6F7ECF94C4C04F52A +:100D00001475B00710D56068D0F88000D2F741FEA6 +:100D1000D6F736F904F10C012846D6F749FB04F161 +:100D20000C012846D6F7AEFBF0060AD50020D2F714 +:100D3000BBFD1020E0F7E4FC04F10C012846D6F7D7 +:100D4000A1FBB0060CD504F10C012846D6F758FBE0 +:100D50000420E0F7D5FC04F10C012846D6F792FBFD +:100D6000700703D56068C06FDFF71BFF04F10C014B +:100D70002846D6F7ADFF30071FD4B9E7BDF801000C +:100D8000001DE4F737FDCDF8090002220DF1030143 +:100D9000D4F7A2F802220DF10101DDF80900801C50 +:100DA000D4F79AF804F10C02294600A8D7F725F8E1 +:100DB00000A904F50D70E4F745FD00A904F50670DF +:100DC00000F0D0F8002893D19DF8030010F0030044 +:100DD000D4D00128F1D104F10C02294600A8D7F79C +:100DE00029F9BDF801000028E7D0DDF809009DF8D9 +:100DF0000310490718D50421ADF803100121ADF8FF +:100E0000011002220DF10301D4F766F802220DF160 +:100E10000101DDF80900801CD4F75EF800A904F593 +:100E20000D70E4F70FFDC8E7E4F7FCFCC5E7000030 +:100E3000B0AE00202DE9F04104000D0016001F00A7 +:100E4000DAF76DF81F48D0F8008006E0A04502D11F +:100E5000AC20D9F7F7FFD8F80480B8F1000FF5D12E +:100E600019484078F021084202D09920D9F7EAFFCA +:100E700015484078002801D1DAF74BF8D3F710F87D +:100E80001C2200212000D8F7A2FDA760266125764C +:100E900066206076DAF743F80A480068606009481F +:100EA000046009484078F021084202D09920D9F71F +:100EB000C9FF05484078002801D1DAF72AF8BDE8D3 +:100EC000F0810000CC3C0120A480002010B5044635 +:100ED000D2F775FA072C01D1D2F75BFC012010BDC7 +:100EE00010B504001D480078002802D0A120D9F7D1 +:100EF000A9FFD2F7FDFF1A480078401C1849087076 +:100F0000DAF70DF8164880684069204209D1144884 +:100F10008068846112488068082101741048D9F7FC +:100F2000E8FF0F48806844690D48806800214161EE +:100F30000B480078401E0A49087009484078F021A3 +:100F4000084202D09920D9F77DFF05484078002853 +:100F500001D1D9F7DEFF200010BD00BF123D0120F6 +:100F6000A480002038B504000D00607E662802D001 +:100F70008220D9F767FFD2F793FFD9F7D0FFE06857 +:100F800000280FD10E484078F021084202D0992065 +:100F9000D9F758FF0A484078002801D1D9F7B9FF9E +:100FA00001200BE006480078401C05490870290024 +:100FB0002000F3F7E5FDD2F7DCFF002032BD00BFD3 +:100FC000A480002038B50C46754D0C22002128461F +:100FD000D8F7FDFC1822002105F12400D8F7F7FC12 +:100FE0001422002105F10C00D8F7F1FC0020E86381 +:100FF0002C840FF2C410D2F763FA012032BD000036 +:1010000070B5674C84ED000AF0EE601AC4ED011A69 +:1010100084ED021A0C25634EE06B05FB006080EC4A +:10102000030A1822002104F12400D8F7D0FC002084 +:101030001AE005FB00F18A19D2ED000A30EE200A11 +:1010400084ED090A891994ED0A0AD1ED010A30EEFE +:10105000200A84ED0A0A94ED0B0AD1ED020A30EE63 +:10106000200A84ED0B0A401C94ED090A6428E0DB99 +:10107000DFED4A0A80EE200A84ED090AD4ED0A0A5F +:101080009FED461AC0EE810AC4ED0A0A94ED0B1AD0 +:10109000DFED421A81EE211A84ED0B1A002020E0C8 +:1010A00005FB00F18A19D2ED001A71EEC01A01EEAB +:1010B000A12A84ED0C2A8919D1ED011A71EEE01AEA +:1010C00094ED0D2A01EEA12A84ED0D2AD1ED021A2C +:1010D00071EEC11A94ED0E2A01EEA12A84ED0E2ABA +:1010E000401C94ED0C2A6428DADB9FED2C0A82EE7A +:1010F000000A84ED0C0AD4ED0D0A9FED281AC0EE0B +:10110000810AC4ED0D0A94ED0E1ADFED241A81EE6A +:10111000211A84ED0E1AF7EE001AB4EE610AF1EE10 +:1011200010FA2FD5B7EE000AF4EE400AF1EE10FAED +:1011300028D5B4EE401AF1EE10FA23D56069401CB0 +:10114000606100EB401148004EF65B2188421CD3E1 +:1011500000206061208B411C218389B20FF2640062 +:10116000D2F7AEF9208B218C88420ED3E06900289B +:101170000BD10FF26400D2F7A3F90120E061002047 +:10118000208302E0002060612083E06B401CE0636C +:10119000652801DB0020E063E06970BD0000C84203 +:1011A0003C340120A8E0002080B50FF23C00D2F7CB +:1011B00087F9012002BD000023232320414D5F4910 +:1011C0004E49540023232320414D202564202A200A +:1011D000314D696E0000000023232320414D5F4103 +:1011E000425F44540000000023232320414D5F460A +:1011F000494E000080B50FF29010D2F761F95D48BA +:1012000000214180017001BD0FB438B59DF8124036 +:10121000BDF813502A4621460FF27810D2F750F944 +:101220001E2200210846D4F7EBFF022805D10FF259 +:101230008410D2F745F9022010E04E48406890F83B +:10124000B014002909D190F8B104002805D1FFF7A6 +:10125000D1FF29462046FFF7B5FE012032BC5DF8DC +:1012600014FB80B50FF25C10D2F72AF9FFF79CFF50 +:10127000404800210170012002BD30B58BB000A8AC +:10128000D5F71DF800A890EC030AFFF7B9FE044655 +:10129000012C0ED1374D95F90000002809D101200D +:1012A00028700FF22C10D2F70BF96C80012000F09F +:1012B0002FF801200BB030BD80B50FF22810D2F707 +:1012C000FFF8D4F79BFF2B49486000224A802A4947 +:1012D000C0F8C01400F2C04028494160284981602C +:1012E0000FF20D01C1600FF241010161012002BD49 +:1012F0002048406890F8B014002905D190F8B10456 +:10130000002801D1002070471E4890F90000704766 +:101310001C490870704780B5164800214180084676 +:10132000FFF7F6FF012002BD70B504460D46114ED1 +:1013300071880FF2BC00D2F7C3F840F2211029786F +:1013400010FB014101220A70297810FB01414A700B +:10135000297810FB01411E228A70297810FB014078 +:101360007188A0F803102878401C2870BDE87040F0 +:10137000D1E70000003C01200912030863120308B2 +:101380007B120308F03C01202323232043472049FC +:101390004E495400232323204347205346442053DF +:1013A0005452203A2025642C204455203A202564AC +:1013B000000000002323234347204641494C20419D +:1013C0004343000023232343472053544F5000003E +:1013D0002323232043475F41424E4F524D414C202F +:1013E00044540000232323204347204D490000009C +:1013F0002323232043472041504D5347203A2025A3 +:10140000640000000FB400B591B00020019000907E +:101410000D220146D4F7F4FE022801D102204AE051 +:10142000754A01201060BDF84B0001909DF84A00FC +:101430000090012803D14FF48070009015E002283D +:1014400003D14FF4007000900FE0032803D14FF454 +:101450008060009009E0042803D14FF40060009000 +:1014600003E0052801D11020009000A901A8FDF794 +:101470002BFBAA208DF82E003C208DF82F00012098 +:101480008DF8300000208DF80800032003900DF146 +:1014900011000BA91822D1F7DBFE0A208DF81000ED +:1014A0000020ADF82A0002A8D4F77EFF002801D161 +:1014B000022000E0012011B05DF814FB00B58FB0F0 +:1014C000AA208DF802003C208DF8030001208DF841 +:1014D00004008DF81800032007900DF1210000A9E9 +:1014E0001822D1F7B5FE0A208DF820000020ADF8B3 +:1014F0003A0006A8D4F758FF002801D1032002E0E3 +:10150000FDF7C4FB01200FB000BD30B597B000A8B7 +:10151000D4F7D5FE0BA8F6F771FE374CBDF83A00AC +:101520002071204600A991EC030AFDF7CBFB05468C +:10153000607A85420ED0022D05D1012000F03CF8E2 +:101540000120207206E0012D04D1012000F034F8C2 +:10155000022020726572012017B030BD80B5D4F72B +:101560004DFE2549C86000220A722449C0F81812AD +:1015700000F5067022494160224981600FF20D0199 +:10158000C1600FF23D010161012002BD1A48C0682F +:1015900090F80902002801D10020704708E080B5CA +:1015A000154800210172084600F006F8012002BD2E +:1015B000154890F900007047134908707047000003 +:1015C00018B440F221120B7812FB030301241C70A3 +:1015D0000B7812FB03035C700B7812FB03030D24E2 +:1015E0009C700B7812FB0300034A127AC2700878D1 +:1015F000401C087011BCD2E7883A0120051403088A +:10160000BD1403080B150308043D01200FB410B5E9 +:10161000A0B09DF88A005849087001208DF88C0010 +:10162000AA208DF88A003C208DF88B0000208DF8D0 +:101630000000032001900DF1090022A91822D1F722 +:1016400007FE0A208DF8080000A8D4F7ADFE002898 +:1016500005D10FF27010D1F733FF022014E009A872 +:10166000ECF7D1F9454C582200212046D8F7AFF9C4 +:101670000021E1652166582209A9D3F72DFC0FF25C +:101680005810D1F71DFF012020B010BC5DF814FBED +:1016900080B50A210320DFF7B6FD032801D103201E +:1016A00002BD0FF24010D1F70BFF012002BD80B543 +:1016B000D4F7A4FD314988653149C0F8001100F51F +:1016C0008070304941600FF26D0181600FF20D01B1 +:1016D000C1600FF2B5010161012002BD10B594B0E7 +:1016E0002649886D90F8F10000281BD0224C207804 +:1016F000002817D001201390129084B06846582219 +:10170000D1F7B6FD0FBCE0F7CBFDC0B2217888421F +:1017100008DB01460FF2D800D1F7D2FE00F005F841 +:10172000012000E0002014B010BD1348002101701A +:101730000120704700B597B000A8ECF764F90F4896 +:10174000C16D491CC165012902D1009901660FE0F4 +:1017500033290DD30021C165016E009A914207D152 +:10176000582200A9D3F7B8FB0FF29800D1F7A8FED2 +:10177000012017B000BD00000A3D0120102A012001 +:101780000D1603089116030810B50C4640F22111FE +:10179000227811FB020201231370227811FB02024E +:1017A0005370227811FB020206239370227811FBFA +:1017B00002000121C170FFF7B8FF2078401C2070A3 +:1017C00010BD000050443A205065646F4F70656E44 +:1017D0004661696C2053530050443A2053432053D0 +:1017E0005441000050443A2053432053544F0000CA +:1017F00050443A2044696666537465704F7665724A +:101800002025640050443A20534320524553455408 +:1018100000000000816807E00268116853688918B9 +:101820005B18C36008320260C2689142F4D04A1C5F +:1018300082600878704738B504460D46A068E168B4 +:10184000884212D120686168884208BFFAF790FD8B +:101850002068227C016802B14944A16042685218A4 +:10186000E260083020609142ECD0A068401CA0608B +:1018700000F8015D31BD2DE9F04589B000F10801A6 +:1018800005910168059A490802EBC1010691002102 +:10189000079108910168490800EBC10108310091E6 +:1018A000017901F001018DF810104068009940089D +:1018B00001EBC000019000200290039088E005A891 +:1018C000FFF7A8FF044614F0030503D105A8FFF7AE +:1018D000A1FFC51C26090F2E1BD105A8FFF79AFFF3 +:1018E00000F10F0615E005980168081805990790A2 +:1018F00049680818089005980830059007980899D5 +:101900008842F0D0401C079010F8011D00A8FFF796 +:1019100092FF6D1EF2D1002E55D005A8FFF77AFF79 +:101920000546A00800F00300032804BF05A8FFF740 +:1019300071FF009C0299DDF80C8005EB002008E0A7 +:10194000083C801A54F8041C54F8082C01EB0208D7 +:10195000414654F8082C8A1A8242F1D34042471873 +:101960000025B61C2FD0474507D154F8047B54F806 +:10197000040B00EB07084745F7D00298039917F8C6 +:1019800001AB884217D100980199884208BFFAF745 +:10199000EFFC009800689DF81010029009B14844CF +:1019A0000290009902984968009A09180832039138 +:1019B00000928842E7D00298401C02906D1C00F80B +:1019C00001ADB542CFD10298039988427FF477AF39 +:1019D0000198009981427FF472AF09B0BDE8F085AB +:1019E0000FB480B5212200210846D4F709FC022853 +:1019F00001D102200EE0212201210020D4F700FCB9 +:101A0000022801D1022005E02120DFF777F9FEF757 +:101A100063F8012002BC5DF814FB80B5212200218F +:101A20000120D4F7EDFB022801D1022002BD2122C2 +:101A300001210846D4F7E4FB022801D1022002BDAF +:101A4000012002BDF0B58BB04948846BA069E16804 +:101A50004518002600A8D4F732FC0398D2F7A4FB5F +:101A6000444A454BD2F7C8FBD2F710FD28800498B2 +:101A7000D2F79AFB3F4A404BD2F7BEFBD2F706FDA6 +:101A800068800598D2F790FB3A4A3B4BD2F7B4FBFB +:101A9000D2F7FCFCA880394F3878002809D1381DCE +:101AA00003A9D1EC031A00A991EC030AFEF742F84E +:101AB0000646012E02D10120387006E03878002851 +:101AC00003D10020B880F8803881B888E880F88891 +:101AD0002881388968810120A0770BB0F0BD80B5DE +:101AE000D4F78CFB264908602649C0F8381500F267 +:101AF000385025494160254981600FF21101C160CC +:101B00000FF235010161012002BD00001C48006890 +:101B100090F82905002801D10020704705E080B524 +:101B2000002000F006F8012002BD194890F90000DD +:101B3000704717490870704718B440F221120B78AB +:101B400012FB030301241C700B7812FB03035C706F +:101B50000B7812FB030321249C700B7812FB03000B +:101B60000022C2700878401C087011BCD7E7000042 +:101B70000840002090D87D684B10333F4C3B01203B +:101B8000A03C0120E11903081B1A0308451A0308A9 +:101B9000003D01205C4800218160C16041604161DD +:101BA000816101617047000038B52DED028B002482 +:101BB000B0EE418AF0EE601A20EE000A01EEA10AB2 +:101BC00008EE080A10EE100AD2F7EEFA41EC100BFC +:101BD000ECF756FD51EC100BDAF7DAFA00EE100ACA +:101BE000494D2878002801D0022860D128690128B1 +:101BF00001DB401C2861A868002828D19FED3E0A1F +:101C0000B4EE408AF1EE10FA0DDB4FF0FF30A86021 +:101C1000E868401CE8602869401C286185ED050AD9 +:101C20003A48A86132E09FED350AB4EE408AF1EE01 +:101C300010FA2BD50120A860E868401CE8602869EC +:101C4000401C28613248A861324868611EE00128C2 +:101C50000DD195ED050AB4EE408AF1EE10FA15DBD0 +:101C60004FF0FF30A860E868401CE8600EE010F11B +:101C7000010F0BD195ED060AB4EE480AF1EE10FA09 +:101C800004DB0120A860E868401CE86028691F2880 +:101C900001DBFFF77FFFE868032824DB28691F28A2 +:101CA00021DA012420462870FFF774FF1BE0012889 +:101CB00019D1DFED130AB4EE600AF1EE10FA0ADB77 +:101CC000DFED100AB4EE600AF1EE10FA03D5686891 +:101CD000401C686001E02046686068680B2802DBF1 +:101CE000022420462870002C01D000206860204685 +:101CF000BDEC028B32BD000000008C41FFFF8BC1A8 +:101D0000DE0CFB40A6493C415C3901200000F0C0DC +:101D100000008CC10000F0400FB480B50FF2141029 +:101D2000D1F7CEFB112209210020D4F769FA02284D +:101D300005D10FF21410D1F7C3FB022000E00120FF +:101D400002BC5DF814FB80B50FF20810D1F7B8FBA8 +:101D5000112209210120D4F753FA032805D10FF2EB +:101D60000810D1F7ADFB032002BD012002BD012008 +:101D70007047000010B50FF2FC00D1F7A1FB274C13 +:101D8000D4F73CFA2060D5F7F3F860602068244966 +:101D9000C0F8B81200F52E702249416022498160D6 +:101DA0000FF21101C1600FF23D010161012010BD70 +:101DB000000000001948006890F8A902002801D12D +:101DC0000020704705E080B5002000F006F80120F3 +:101DD00002BD174890F90000704715490870704718 +:101DE0000000000018B440F221120B7812FB03032C +:101DF00001241C700B7812FB03035C700B7812FB40 +:101E0000030311249C700B7812FB0300074A12781D +:101E1000C2700878401C087011BCD4E7083C01204F +:101E2000191D0308471D03086F1D0308F23C01201C +:101E3000F13C0120537461727420436865636B4CFC +:101E4000696768744C7578005374617274204661D8 +:101E5000696C0000436865636B4C696768744C7516 +:101E6000782053746F70000053746F70204661695E +:101E70006C000000436865636B4C696768744C755F +:101E80007820496E697400000FB480B518220821CB +:101E90000020D4F7B5F9022801D102200CE03C481B +:101EA000002101709DF8091041609DF80A108160C1 +:101EB0009DF80B10C160012002BC5DF814FB80B5D9 +:101EC000334800210170182208210120D4F798F925 +:101ED000032801D1032002BD012002BD10B52C4C06 +:101EE0002078012801D1002010BD642061684143A1 +:101EF000E268012A0FD101291CDAA16848430028B1 +:101F000018D4012000F041F8012020700FF2D00019 +:101F1000D1F7D6FA0EE0012903DAA1684843002878 +:101F200008D5012000F031F8012020700FF2B80030 +:101F3000D1F7C6FA012010BD80B5D4F75FF9154975 +:101F400008601549C0F8D01300F57470134941605A +:101F5000134981600FF20D01C1600FF24D01016163 +:101F6000012002BD0B48006890F8C103002801D190 +:101F70000020704705E080B5002000F006F8012041 +:101F800002BD084890F90000704706490870704784 +:101F9000A83A0120AC3C0120891E0308BF1E03089B +:101FA000DD1E03080B3D012018B440F221120B780E +:101FB00012FB030301241C700B7812FB03035C70FB +:101FC0000B7812FB030318249C700B7812FB0300A0 +:101FD0000122C2700878401C087011BCCBE70000D9 +:101FE00054656D7020496E0054656D70204F757496 +:101FF000000000000FB480B50FF21810D1F760FA9E +:102000000F2201210020D4F7FBF8022805D10FF29E +:102010001410D1F755FA022000E0012002BC5DF84F +:1020200014FB80B50FF20810D1F74AFA0F220121F4 +:102030000846D4F7E5F8032805D10FF20410D1F7CC +:102040003FFA032002BD012002BD80B5012000F04F +:1020500035F8002000F02BF8012002BD80B50FF20A +:10206000EC00D1F72DFAD4F7C9F8244908602449C7 +:10207000C0F8681200F51A70224941602249816057 +:102080000FF20D01C1600FF23D010161012002BD9F +:102090001A48006890F85902002801D100207047C2 +:1020A00008E080B5002000F009F8012002BD1749C2 +:1020B00008707047164890F900007047144908707E +:1020C0007047000018B440F221120B7812FB030392 +:1020D00001241C700B7812FB03035C700B7812FB5D +:1020E00003030F249C700B7812FB0300074A12783D +:1020F000C2700878401C087011BCD2E78C3C0120EB +:10210000F51F0308232003084B200308F83C012097 +:10211000F73C01205374617274204779726F205428 +:10212000656D70005374617274204661696C0000C3 +:102130004779726F2054656D702053746F70000082 +:1021400053746F70204661696C0000004779726FAC +:102150002054656D7020496E69740000524800215A +:10216000017041608160704770B5044600254E4E95 +:10217000307800282CD12068D2F716F821F00041E1 +:102180002A464A4BDAF7B8FE19D26068D2F70CF843 +:1021900021F000412A46454BDAF7AEFE0FD2A06887 +:1021A000D2F702F821F000410122414BE3F754FE3F +:1021B00005D87068401C70602846B06004E0B068C4 +:1021C000401CB060284670607068052862DB28E01B +:1021D000032837D12068D1F7E7FF21F000412A46D4 +:1021E000324BDAF789FE17D26068D1F7DDFF21F0B4 +:1021F00000412A462D4BDAF77FFE0DD2A068D1F7B9 +:10220000D3FF21F000410122294BE3F725FE03D83B +:102210007068401C706001E0284670607068052896 +:1022200040DB94ED020AB5EE400AF1EE10FA03DD50 +:1022300001252846307002E0022528463070002033 +:1022400070602FE0012801D002282BD12068D1F73F +:10225000ABFF21F000410122144BE3F7FDFD13D940 +:102260006068D1F7A1FF21F0004101220F4BE3F795 +:10227000F3FD09D9A068D1F797FF21F000412A4664 +:102280000B4BDAF739FE03D2B068401CB06001E0B6 +:102290001046B060B068052804DB0325284630707E +:1022A0000020B060284670BD943B01200000F83F3C +:1022B000000021400FB480B52C2200210846D3F73E +:1022C0009FFF022801D1022006E00FF20C10D1F787 +:1022D000F7F8FFF75FFC012002BC5DF814FB80B546 +:1022E0002C2200210120D3F78BFF022801D10220EC +:1022F00002BD012002BD30B58BB02348846DA069BA +:10230000E168451800A8D3F7DAFF00A890EC030AAB +:10231000FFF74AFC002807D0287001460FF2C400DE +:10232000D1F7CEF80120A07701200BB030BD80B5E9 +:10233000D3F764FF154908601549C0F8F01600F29C +:10234000F06014494160144981600FF21101C160CD +:102350000FF24D010161012002BD00000B48006831 +:1023600090F8E106002801D10020704705E080B513 +:10237000002000F006F8012002BD084890F9000096 +:10238000704706490870704708400020A83C0120AB +:10239000B5220308DF220308F7220308053D0120C8 +:1023A00018B440F221120B7812FB030301241C70B5 +:1023B0000B7812FB03035C700B7812FB03032C24D5 +:1023C0009C700B7812FB03000022C2700878401C3E +:1023D000087011BCCBE70000414444205368616B96 +:1023E000650000005368616B652053656E736F7202 +:1023F000202564000FB480B5192200210846D3F7C8 +:10240000FFFE022801D102200DE0BDF80E309DF93B +:102410000D209DF90C10BDF80A00FDF723FF3F4881 +:1024200000214170012002BC5DF814FB80B5192227 +:1024300000210120D3F7E4FE032801D1032002BDCF +:10244000012002BD38B50024344D95F90100002863 +:1024500003D16868FDF746FF044664B2002C07D03C +:10246000012000F039F8204600F039F801206870AA +:10247000012032BD10B5294CD3F7C0FEA060D4F7BF +:1024800077FD606000202070A0682549C0F8F8132F +:1024900000F57E7023494160234981600FF20D01F0 +:1024A000C1600FF241010161012010BD1B4880682D +:1024B00090F8E903002801D10020704708E080B5BA +:1024C000164800210170084600F006F8012002BD00 +:1024D000164890F9000070471449087070470F497A +:1024E0000870704718B440F221120B7812FB0303F6 +:1024F00001241C700B7812FB03035C700B7812FB39 +:10250000030319249C700B7812FB0300034A127812 +:10251000C2700878401C087011BCD0E7643B0120F1 +:10252000F52303082D24030845240308083D012052 +:102530002DE9F84F04000D0016001F00DDF828807B +:10254000DDF82C90DDF830A039480078002802D161 +:10255000A520D8F777FCD1F7CBFC3648D0F80CB0E3 +:1025600006E0A34502D1AA20D8F76CFCDBF800B046 +:10257000BBF1000FF5D1502200212000D7F727FA38 +:10258000642084F84C006674207C2B490978084349 +:10259000207484F841A0002D00D02562C4F8288062 +:1025A000C4F824904A46CD214046D7F710FA19EBDB +:1025B00008085FEAD8085FEAC808B8F150080020A8 +:1025C000C8F800005FF08070C8F844001B48C8F8E5 +:1025D0004000C8F84C707FF00200C8F8240018488A +:1025E000C8F82C001748C8F830001748C8F834005D +:1025F0001648C8F804001648C8F808001548C8F876 +:102600000C001548C8F810001448C8F81400144805 +:10261000C8F818001348C8F81C001348C8F8200070 +:10262000C4F804802000D1F73FFDBDE8F18F00BF62 +:10263000133D0120A48000200E3D0120C3AE000800 +:102640000100CCCC0200CCCC0300CCCC0400CCCC20 +:102650000500CCCC0600CCCC0700CCCC0800CCCC00 +:102660000900CCCC0A00CCCC0B00CCCC4B480021D0 +:10267000017041608160704770B506460024474D87 +:10268000287800282BD13068D1F78EFD21F0004149 +:102690002246434BDAF730FC18D27068D1F784FD3C +:1026A00021F0004122463E4BDAF726FC0ED296ED91 +:1026B000020ADFED390AB4EE600AF1EE10FA05DB2A +:1026C0006868401C68601046A86004E0A868401C68 +:1026D000A860104668606868052853DB27E0022878 +:1026E0002BD13068D1F760FD21F0004122462C4B00 +:1026F000DAF702FC16D27068D1F756FD21F00041DE +:102700002246274BDAF7F8FB0CD296ED020ADFEDF2 +:10271000220AB4EE600AF1EE10FA03DB6868401C8E +:10272000686001E0104668606868052832DB0124B3 +:1027300020462870104668602CE001282AD13068B5 +:10274000D1F732FD21F000410122154BE3F784FB64 +:1027500012D97068D1F728FD21F000410122104BF9 +:10276000E3F77AFB08D996ED020AF2EE020AB4EE1C +:10277000600AF1EE10FA03D5A868401CA86001E0D9 +:102780002046A860A868052804DB0224204628709B +:102790000020A860204670BD01001041C83A012009 +:1027A0000000E03F0FB480B5102201210020D3F7D4 +:1027B00027FD022801D1022002E0FEF705F90120E1 +:1027C00002BC5DF814FB80B5102201210846D3F746 +:1027D00017FD032801D1032002BD012002BD30B541 +:1027E0008BB000A8D3F76BFD03A890EC030AFEF7AB +:1027F000F1F80446324D2878A0420FD0012C05D1C3 +:10280000012000F03DF80120687006E0022C04D1A0 +:10281000012000F035F8022068702C7001200BB008 +:1028200030BD80B5D3F7EAFC2549486000224A70E4 +:102830002449C0F8901200F52470234941602349CF +:1028400081600FF21101C1600FF23D0101610120B1 +:1028500002BD00001A48406890F88102002801D1AA +:102860000020704708E080B51548002141700846F7 +:1028700000F006F8012002BD154890F900007047ED +:10288000134908707047000018B440F221120B7809 +:1028900012FB030301241C700B7812FB03035C7012 +:1028A0000B7812FB030310249C700B7812FB0300BF +:1028B000034A5278C2700878401C087011BCD2E7F5 +:1028C000383C0120A5270308C7270308DF27030892 +:1028D000013D01200FB480B5202200210846D3F726 +:1028E0008FFC022801D1022005E0FDF745FF3048AA +:1028F00000210170012002BC5DF814FB80B520228C +:1029000000210120D3F77CFC022801D1022002BD66 +:10291000274800210170012002BD70B58CB0254808 +:10292000446BA069E168451800A8D3F7C8FC204EA5 +:102930003078012801D100200BE000A890EC030AB8 +:10294000FDF726FF012803D128700120A077307001 +:1029500001200CB070BD80B5D3F750FC164908605B +:102960001649C0F8101500F210501549416015497C +:1029700081600FF21101C1600FF25101016101206C +:1029800002BD00000C48006890F80105002801D144 +:102990000020704705E080B5002000F006F8012017 +:1029A00002BD094890F90000704707490870704758 +:1029B000FB3C012008400020943C0120D52803085E +:1029C000FD2803081B290308FA3C012018B440F233 +:1029D00021120B7812FB030301241C700B7812FBED +:1029E00003035C700B7812FB030320249C700B78AC +:1029F00012FB03000022C2700878401C087011BC52 +:102A0000C9E700000FB480B5072200210846D3F7BC +:102A1000F7FB022801D1022004E09DF80800FBF733 +:102A200007FD012002BC5DF814FB80B507220021E0 +:102A30000120D3F7E5FB032801D1032002BD0120CB +:102A400002BD10B582B000208DF80000314C00A905 +:102A50006068FBF709FD002806D0012000F03BF874 +:102A60009DF8000020706070012016BD10B5294C43 +:102A7000D3F7C4FBA060D4F77BFA6060002020701D +:102A8000A0682549C0F8281100F5947023494160D9 +:102A9000234981600FF20D01C1600FF24101016114 +:102AA000012010BD014600201A4A926892F81921AF +:102AB000002A02D0002900D109E0704780B51548EE +:102AC00000210170084600F006F8012002BD1548FB +:102AD00090F90000704713490870704718B440F22D +:102AE00021120B7812FB030301241C700B7812FBDC +:102AF00003035C700B7812FB030307249C700B78B4 +:102B000012FB0300034A1278C2700878401C087058 +:102B100011BCD3E71C3B0120052A03082B2A03081C +:102B2000432A0308ED3C01200FB480B51522002193 +:102B30000846D3F765FB022801D1022002E0FFF727 +:102B400095FD012002BC5DF814FB80B51522002123 +:102B50000120D3F755FB032801D1032002BD01203A +:102B600002BD10B531484068FFF786FD044664B2E7 +:102B7000002C05D0012000F037F8204600F037F88F +:102B8000012010BD10B5294CD3F738FBA060D4F755 +:102B9000EFF9606000202070A0682549C0F8581344 +:102BA00000F5567023494160234981600FF20D0101 +:102BB000C1600FF241010161012010BD1B48806816 +:102BC00090F84903002801D10020704708E080B543 +:102BD000164800210170084600F006F8012002BDE9 +:102BE000164890F9000070471449087070470F4963 +:102BF0000870704718B440F221120B7812FB0303DF +:102C000001241C700B7812FB03035C700B7812FB21 +:102C1000030315249C700B7812FB0300034A1278FF +:102C2000C2700878401C087011BCD0E7343B01200A +:102C3000292B03084B2B0308632B0308F53C0120C9 +:102C40000FB480B5292201210020D3F7D9FA022838 +:102C500001D1022002E0FDF73FF9012002BC5DF83E +:102C600014FB80B5292201210846D3F7C9FA0328AD +:102C700001D1032002BD012002BD00B58BB000A828 +:102C8000D3F71DFB03A890EC030AFDF73BF90128DD +:102C900007D12B4801210170084600F031F8FDF7FB +:102CA0001BF901200BB000BD80B5D3F7A7FA254969 +:102CB00008602549C0F8781600F278602349416021 +:102CC000234981600FF20D01C1600FF23D010161E6 +:102CD000012002BD1B48006890F86906002801D158 +:102CE0000020704708E080B51548002101700846B3 +:102CF00000F006F8012002BD164890F90000704768 +:102D0000144908707047000018B440F221120B7883 +:102D100012FB030301241C700B7812FB03035C708D +:102D20000B7812FB030329249C700B7812FB030021 +:102D3000034A1278C2700878401C087011BCD2E7B0 +:102D4000033D0120A43C0120412C0308632C03080F +:102D50007B2C0308023D01200FB480B5172200210F +:102D60000846D3F74DFA022801D1022002E0FFF70E +:102D7000F5F9012002BC5DF814FB80B51722002193 +:102D80000120D3F73DFA032801D1032002BD012021 +:102D900002BD10B531484068FFF7E6F9044664B259 +:102DA000002C05D0012000F037F8204600F037F85D +:102DB000012010BD10B5294CD3F720FAA060D4F73C +:102DC000D7F8606000202070A0682549C0F8A813DB +:102DD00000F56A7023494160234981600FF20D01BB +:102DE000C1600FF241010161012010BD1B488068E4 +:102DF00090F89903002801D10020704708E080B5C1 +:102E0000164800210170084600F006F8012002BDB6 +:102E1000164890F9000070471449087070470F4930 +:102E20000870704718B440F221120B7812FB0303AC +:102E300001241C700B7812FB03035C700B7812FBEF +:102E4000030317249C700B7812FB0300034A1278CB +:102E5000C2700878401C087011BCD0E7583B0120B4 +:102E6000592D03087B2D0308932D0308073D0120EE +:102E700010B584B0D1F76FF9D9F71EFAFDF726FF28 +:102E80001B4C022002904FF4806001900094194B7B +:102E900064220FF2700104F5B0505030FFF748FB88 +:102EA000022002904FF48050019004F58060009061 +:102EB000114B4B220FF2580104F5B050FFF738FBCD +:102EC000022002904FF40070019004F5A050009091 +:102ED0000A4B0A220FF2440104F5B550FFF728FB14 +:102EE000074801210170D7F7F2FF002004B010BDA0 +:102EF000588700204BCD0208E30C0308D90C0308C7 +:102F00000D3D0120534820436F6D5461736B0000E9 +:102F10005348204D61696E5461736B00506F776543 +:102F2000724D616E61676572205461736B000000C1 +:102F3000F8B50C00154612D1012818BF10F1010F89 +:102F40000BD1284E326D42B1002030653146012050 +:102F500000F04AF810F1010F3FD00020F2BD012827 +:102F60001CBFBDE8F84000F03FB8512D14D31D4EF2 +:102F7000326D42B1002030653146012000F034F856 +:102F800010F1010F29D02A462146012000F02CF82B +:102F900010F1010F24D120E02F46124E07B3316DFE +:102FA00000208919326D502A0BD214F8013B0A2BEC +:102FB00008BF012001F8013B521C32657F1EF1D190 +:102FC00070B1326D002AE9D0002030653146012011 +:102FD00000F00AF810F1010FE0D14FF0FF30F2BD20 +:102FE0002846F2BD1C32012080B5002901D1002005 +:102FF00002BD012801D0022802D100F004F802BD70 +:1030000000F011F802BD30B583B00C0015000120AE +:10301000F9F722FE00900194029569460520ABBEA7 +:10302000281A03B030BD10B584B013000090019190 +:1030300002930122040069460520ABBE181A210044 +:10304000C046C04604B010BD787878783030303152 +:103050003030313031313131313131313131313163 +:103060003030783178787878000000007878787897 +:1030700031303131787878787878787878787878ED +:1030800078787878787878787878787800000000A0 +:1030900031313131313031787878787878787878A2 +:1030A00078787878787878787878787878787878A0 +:1030B00000000000303130303031313131787878F3 +:1030C000783030300000000031313130317878789C +:1030D00078787878787878300000000031313131B4 +:1030E0003178787878787878787878780000000087 +:1030F00043F63001C4F202014FF09F020A6040F231 +:103100000000C4F202004FF6FF73CAF6FF330360FB +:103110004FF6BF63CFF6FF7300F5806003604FF694 +:10312000FF73CFF6FF7300F58060036000F58060E9 +:10313000036000F58060036040F20F03C0F20003FB +:1031400041F60040C4F2020003604FF000020A6042 +:103150000148804701480047D593010835330308EB +:103160006D6178696D2043616C3D2564000000004D +:103170004D616720466F6C64657220256400000015 +:1031800041434343616C3D256400000044554D506C +:10319000534554202564000050443A20536574255B +:1031A0006420256400000000B40E0000681D0000CB +:1031B0001C2C0000D03A0000844900003858000060 +:1031C000EC660000A0750000548400000893000025 +:1031D000BCA1000070B0000024BF0000D8CD0000EA +:1031E0008CDC000040EB00000D0FF3F00010E5F167 +:1031F000830F7DF00010FAF0B40F4CF0001098F03F +:10320000D90F27F000104DF0340ECCF1001097F3D9 +:103210000D0FF3F00010E5F110B5044682B014F183 +:10322000010F0AD08DF80000012200A90120FFF74C +:103230007FFE012801D1204616BD4FF0FF3016BD9C +:1032400010B5074979441831064C7C44163404E023 +:103250000A68081D511888470146A142F8D110BDDF +:103260000800000044000000E7F1FCFFC0B50000CA +:103270005887002000000000A3F1FCFF04000000BC +:10328000400200000040002000000000EBE5FFFFCE +:1032900002000000020000002C02000038040000C0 +:1032A00008400020504700000D0FF3F00010E5F13A +:1032B000830F7DF00010FAF0B40F4CF0001098F07E +:1032C000D90F27F000104DF04EF68851CEF20001D4 +:1032D000086840F4700008604FF00070E1EE100ADA +:1032E000704700000120C046002801D0FFF7A8FF6A +:1032F0000020C046C046FFF7BBFD00F000F800F01C +:1033000001B80000074600F004F83846F9F774FCED +:10331000FBE7002200214FF0FF30FFF709BE38B570 +:1033200004460D462846FFF777FFA84218BF002441 +:10333000204632BDC046C046FFF7C6FFFFF7D2FFAA +:10334000FF7FFF7FFF7F000024010000B90D000018 +:1033500000000000F9F7B0BCF9F7B8BCF9F7C0BC41 +:10336000F9F7C8BCF9F7D0BCF9F7D8BCF9F7E0BC5D +:10337000D7F77ABDD8F77FBFFFF7FEBFFFF7FEBFD5 +:10338000FFF7FEBFF9F7A7BFFFF7FEBFFAF751B887 +:10339000F9F7FABDF9F7C0BEF9F704BFFFF7FEBFB2 +:1033A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF51 +:1033B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF41 +:1033C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF31 +:1033D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF21 +:1033E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF11 +:1033F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF01 +:10340000FFF7FEBFF9F7A0BCFFF7FEBFFFF7FEBF57 +:10341000FFF7FEBFFFF7FEBFF9F713BFF9F7BBBF1A +:10342000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD0 +:10343000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC0 +:10344000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB0 +:10345000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA0 +:10346000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF90 +:10347000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF80 +:10348000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF70 +:10349000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF60 +:1034A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF50 +:1034B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF40 +:1034C00000000000F262000120027C40002004F2B3 +:1034D000FF0001F5FF11F9FF21FDFF3103FDFF4161 +:1034E00004FDFF5105FDFF6106FDFF7107FDCA4B9D +:1034F000082002E049002004FDFF6409F5FF10F9EF +:10350000FF20FDFF3003FDFF4004FDFF5005FDFFE0 +:103510006006FDFF7007FDFF8008FDFF9009FDFFBD +:10352000A00AFDFFB00BFDFFC00CFDFFD00DFDFF9D +:10353000E00EFDFFF00FFDFF0011FDFF1012FDFF7B +:103540002013FDFF3014FDFF4015FDFF5016FDFF59 +:103550006017FDFF7018FDFF8019FDFF901AFDFF39 +:10356000A01BFDFFB01CFDFFC01DFDFFD01EFDFF19 +:10357000E01FFDFFF020FDFF0022FDFF1023FDFFF7 +:103580002024FDFF3025FDFF4026FDFF5027FDFFD5 +:103590006028FDFF7029FD5FDF2910030201000094 +:1035A000FF01BC01010406F729831D130420069FB7 +:1035B0008B00006174FFFF1860065B250008BC05E6 +:1035C0000200043001B81E053043E803042102FC68 +:1035D0000212B8EA02085A2AF21E0110F1040F83FF +:1035E0004F0104F12702600AC6100000832400087E +:1035F0008F2400087A3514B303052883CB2A04608E +:1036000006C23901003EC6FEFF1C7001EF1B1A0402 +:10361000F50314F65A9C14F11B2453E19C59F1064E +:10362000F47001285C0F041300402D73C063F46034 +:10363000020000800204F103F4F286ACF44300209F +:10364000A11204041A71D0F305000263F20E0220E5 +:10365000F20E03202116F309F126201977F0040653 +:1036600000A927000803E3120E04F309A52820157A +:1036700092F00109009D2920F37D010001F007FF70 +:1036800025F2000827F200080001F5FF11F5D7F830 +:10369000FA15101F52FF01F10F28520106F3059988 +:1036A000192092030C43F503042130F311EC075C5D +:1036B000F21202A8F13B241EE0640743C055082122 +:1036C000A4F004116771FFFF1A3A3CF33903002498 +:1036D00043BA9E042180F4027F753D0000242D2012 +:1036E000065403E550000801FA720F1041427210AF +:1036F00010813421105A022BD20330D204307205CB +:1037000030411252061011386201A4A110D22010CB +:10371000D21F10D20110D21C10D21D10D20710D20D +:103720000810C30900A0C31500C0D21120D2172071 +:10373000D21E20D21820D21A10520A10510FD300D4 +:103740000B10D20C10F18408F215402721EC52071F +:10375000043DDA09F3FF020001F55111F50A74F690 +:10376000060193F2024728F20A10444FC800F803FA +:10377000F16C03F2030515920706F121052D88036C +:10378000FD8B8C0360062D431CEBE2361A3F08F6D6 +:103790000614A0F24A0184F0060B6666663FCDCCA3 +:1037A0004C3F24F20E0188F90788A120600610061C +:1037B000F03C6409802412F01D0401020304595AEC +:1037C0005B5C5D636465676869001005A05C440428 +:1037D00077044F7F0B903C0014446103103FE9F4E1 +:1037E000FFFF6CEEFFFFD2E9FFFF40E6FFFF55E36E +:1037F000FFFFDEE0FFFFBBDEFFFFD8DCFFFF29DBC2 +:10380000FFFFA2D9FFFF3ED8FFFFF6D6FFFFC6D5C8 +:10381000FFFFACD4FFFFA3D3FFFF0C320308140457 +:103820001208041210041003FC310308040812F8F3 +:103830000812000812EC0812F40412E80412F00452 +:103840001C0ED70F28002800D70F660E9901040020 +:10385000FB0F3C05FC16202055150010CD0CAB0AC3 +:10386000250900081C076606D1055505EC0492439E +:10387000033801A5BA019C134830841108526C0822 +:1038800052900812B408255852C80852DC0812ACED +:10389000A812B40412A80483B032A412BC0C12C43F +:1038A0000412B80412C00471B4153F2540F2017827 +:1038B00083FD040709259C7015060708090024F4F8 +:1038C000002424240606066060400700440004012A +:1038D000206124210855C34924A4090205001002CF +:1038E000610000540040BA2002CC0C3303A49EFFB8 +:0C38F000C90A00060104010114DDD60025 +:00000001FF diff --git a/firmware/ssp_stm_patek.fw.ihex b/firmware/ssp_stm_patek.fw.ihex new file mode 100644 index 000000000000..434b496103d7 --- /dev/null +++ b/firmware/ssp_stm_patek.fw.ihex @@ -0,0 +1,12604 @@ +:1000000000200020950C0308DDA80208F1A80208D2 +:1000100005A9020819A902082DA90208000000007C +:1000200000000000000000000000000041A90208DC +:1000300055A90208000000000948000873A2000842 +:10004000610F0308650F0308690F0308FBAE020880 +:10005000710F030857B00208ADAB02083DAD0208AE +:10006000C9AD0208850F0308890F03088D0F030827 +:10007000910F0308950F0308990F03089D0F0308BC +:10008000A10F0308A50F0308A90F0308AD0F03086C +:10009000B10F0308B50F0308B90F0308BD0F03081C +:1000A000C10F0308C50F0308C90F0308CD0F0308CC +:1000B000D10F0308D50F0308D90F0308DD0F03087C +:1000C000E10F0308E50F0308E90F03086DA9020813 +:1000D000F10F0308F50F0308F90F0308FD0F0308DC +:1000E00067AE0208BBAF0208091003080D10030831 +:1000F0001110030815100308191003081D10030838 +:100100002110030825100308291003082D100308E7 +:100110003110030835100308391003083D10030897 +:100120004110030845100308491003084D10030847 +:100130005110030855100308591003085D100308F7 +:100140006110030865100308691003086D100308A7 +:100150007110030875100308791003087D10030857 +:100160008110030885100308891003088D10030807 +:100170009110030895100308991003089D100308B7 +:10018000A1100308A510030838B5DFF8CC4C0020F7 +:10019000E06120626062A062E062A081DFF8BC0CD6 +:1001A000E063DFF8BC0C206460643220E0824FF42E +:1001B00096702083DFF8AC5C4FF42072002105F1CB +:1001C000400002F04BF84FF42072002105F530702A +:1001D00002F044F89022002105F5B86002F03EF8E4 +:1001E00040220021284602F039F840220021DFF8A1 +:1001F0003C0D02F033F840220021DFF8340D02F00C +:100200002DF840220021DFF82C0D02F027F84022C3 +:10021000002105F5A86002F021F84022002105F533 +:10022000B06002F01BF840220021DFF80C0D02F054 +:1002300015F840220021DFF8040D02F00FF8052226 +:100240000021204602F00AF805220021DFF8F00C18 +:1002500002F004F805220021DFF8D40D01F0FEFFC2 +:100260000020A0822063A0632061A0606063E0643E +:100270000220A07331BD80B50FF2100002F092F899 +:10028000DFF8D40B0021017301BD00004C54205352 +:10029000746F70007047DFF8C01B4FF47A725043E0 +:1002A000C86301460FF2040002F07CB84C5420539E +:1002B0005044202564000000DFF89C2B4FF47A7135 +:1002C00048431064014651640FF2040002F06AB81A +:1002D0004C5420575044202564000000DFF8781B60 +:1002E000C88201460FF2040002F05CB84C5420535F +:1002F0005220256400000000DFF85C1B08830146E3 +:100300000FF2040002F04EB84C5420534152202505 +:10031000640000000EB410B587B0DFF8184DBDF8CA +:100320006E0000281ED1DFF8100DD0E90023CDE9C2 +:100330000223D4E90001CDE90001DDE9022300F048 +:1003400088FFDFF8141BC96B4FF47A724243914265 +:1003500006D201460FF2280002F024F801200AE03C +:10036000002008E004A802F0BAFA204604A90522F9 +:1003700002F05EFB002007B010BC5DF810FB00002F +:100380004C542053544F5020436865636B696E672B +:1003900020256400DFF8C00A01210162C16100214B +:1003A0008162C1627047DFF8B00A01214162C16118 +:1003B0007047DFF8A40AC0697047DFF89C0A002183 +:1003C000C1610FF2080001F0EDBF00004C54205253 +:1003D000455345545F434D4452440000DFF8780ACA +:1003E000002101620FF2040001F0DCBF4C542052E6 +:1003F000455345545F504F5352455100DFF8580A5A +:10040000002141620FF2040001F0CCBF4C54205295 +:10041000455345545F504F4941434B00DFF8380A7C +:10042000012181620021C16201727047DFF8280A50 +:100430000121C16270472DE9FC4106460F469046F6 +:10044000DFF8E84ADFF81C5A20462946402202F02D +:10045000FFFA85ED000B85ED021B85ED042B85F879 +:10046000296085F82A7085F82B80D4E904230020C0 +:10047000014602F029FB0ED1D4E9002302F024FB4F +:1004800009D1D4E9022302F01FFB04D120462946FA +:10049000402202F0DDFA95ED020B8DED000BD5E95F +:1004A00000230FF20C0001F07DFFBDE8F381000096 +:1004B0004C54205550504F5320256620256600008F +:1004C00030B583B0DFF89049A06A012815D1DFF874 +:1004D000605A2846DFF88C19402202F0B9FA95EDEF +:1004E000020B8DED000BD5E900230FF2140001F093 +:1004F00059FF0020A06201203EBD00203EBD00004B +:100500004C54203173742025662C20256600000091 +:1005100030B583B0DFF84049A06A012815D1DFF873 +:10052000145A2846DFF83C19402202F091FA95ED62 +:10053000020B8DED000BD5E900230FF2140001F042 +:1005400031FF0020A06201203EBD0020A0623EBD20 +:100550004C5420326E642025662C20256600000055 +:100560000020DFF8F418CA6A012A01D1C86201200C +:1005700070470FB400B59DB0DDE92E2302F0B4FA48 +:10058000CDE90C01DDE92001DDE9302302F0ACFA10 +:10059000CDE90E010CA984B06846402202F058FA59 +:1005A0000FBC00F05DFD53EC102B0020DFF81C1E8B +:1005B00002F05AFB41EC100B1DB05DF814FB00007B +:1005C0000FB470B52DED048B9CB0DFF88C58687AB1 +:1005D000002801D1002043E00A2801DB0A2600E0C0 +:1005E000AE7A9FED998B002422E0DFF8781801EBBA +:1005F000801000F530710CA8402202F029FA24A9DD +:1006000084B06846402202F023FA0FBCFFF7B1FF26 +:10061000B0EE409AF0EE609A51EC190B53EC182BA7 +:1006200002F000FC03D2B0EE498AF0EE698A641C45 +:10063000E4B22046B042D8DB288B02F019FC024617 +:100640000B4651EC180B02F0EDFB01D2002007E045 +:1006500053EC182B0FF2140001F0A4FE0120E86403 +:100660001CB0BDEC048B70BC5DF814FB4C542053E3 +:1006700041204F55542025660000000030B585B05C +:10068000DFF8E04794F969058DF8000004F269503D +:1006900090F901108DF8011090F902008DF8020018 +:1006A000B4F86C05ADF80300DFF88C59D5E900010A +:1006B000CDE90201DDE90223DDE9000100F0C9FD19 +:1006C000C4F87805DFF89007D5E90023C0E90023D6 +:1006D00005B030BD0FB42DE9F0412DED088B84B08D +:1006E000DFF87447DFF87C57A07A05EB80109DEDAA +:1006F000120B80EDA00B00F520709DED140B80ED2A +:10070000020B9DED160B80ED040B2099816394F88C +:100710000980B8F10A0F01DB4FF00A089FEDBF8B8B +:10072000B0EE489AF0EE689AB0EE48AAF0EE68AAE9 +:1007300000261DE005EB861753EC182BD7E9B00116 +:1007400002F0A4FB41EC180B07F5307753EC192BA2 +:10075000D7E9020102F09AFB41EC190B51EC1A0B9C +:10076000D7E9042302F092FB41EC1A0B761CF6B297 +:100770004645DFDB404602F07BFB41EC1B0B51ECB6 +:10078000180B53EC1B2B02F0F5FB05F5A862C2E930 +:10079000000105F2405651EC190B53EC1B2B02F0F3 +:1007A000E9FBC6E9020151EC1A0B53EC1B2B02F0DA +:1007B000E1FBC6E9040195F969058DF8000005F231 +:1007C000695797F901008DF8010097F902008DF83B +:1007D0000200B5F86C05ADF80300DFF85C88D8E9D5 +:1007E0000001CDE90201DDE90223DDE9000100F0AD +:1007F00030FD0246C5F87825D8E90001C4E90001BA +:100800000192B87800907B7895F86925617A0FF2AB +:10081000142001F0C7FD96ED020B8DED000B05F5E0 +:10082000A860D0E900230FF2606001F0BBFD032057 +:10083000A0730FF2044001F0B5FD04B0BDEC088BCD +:10084000BDE8F0015DF814FB00000000006AF8400C +:100850000FB42DE9F0472DED088B86B0DFF8D047B7 +:10086000DFF8D4A7DAE90001CDE90401D4E90001F9 +:10087000CDE90201DDE9042300F0EBFCDFF8D855F7 +:10088000A97ADFF8E06506EB81129DED160B82ED8B +:10089000B00B02F530739DED188B83ED028B9DED4F +:1008A0001A9B83ED049B237882F8E93202F2E92354 +:1008B00067785F70A7789F7000B2C2F8F802481C92 +:1008C000A872C0B20A2801D10020A872687A00F18B +:1008D000010885F809805FFA88F8A8F1010002F0A4 +:1008E000BDFA41EC1A0B06F2405953EC1A2BD9E928 +:1008F000020102F0B9F953EC182B02F0C7FA41ECEF +:10090000180B53EC1A2BD9E9040102F0ADF953ECA2 +:10091000192B02F0BBFA41EC190B404602F0A8FA81 +:1009200041EC1B0B53EC1A2B06F5A86041680068DC +:1009300002F09AF9DDE9162302F0A8FA53EC1B2B1A +:1009400002F018FB06F5A862C2E9000151EC180B91 +:1009500053EC1B2B02F00EFBC9E9020151EC190B01 +:1009600053EC1B2B02F006FBC9E9040106F26957A0 +:10097000B8F1010F0AD1207886F86905607878709F +:10098000A078B870B4F80300A6F86C0596F969056C +:100990008DF8000097F901008DF8010097F9020029 +:1009A0008DF80200B6F86C05ADF80300DAE9000135 +:1009B000CDE90201DDE90223DDE9000100F049FC97 +:1009C0000246C6F87825DAE90001C5E9000101927E +:1009D000B87800907B7896F86925697A0FF2440020 +:1009E00001F0E0FC99ED020B8DED000B06F5A8601F +:1009F000D0E900230FF2904001F0D4FC687A01287E +:100A000005D10120A8730FF28C4001F0CBFC06B099 +:100A1000BDEC088BBDE8F0075DF814FB000000009A +:100A2000000000004C542025642053502025643AD7 +:100A300025643A25642C2025640000000FB42DE9BC +:100A4000F0472DED0A8B86B0DFF8ECA5DAE900015E +:100A5000CDE90401DFF8E804D0E90023CDE9022361 +:100A6000DDE90423DDE9020100F0F3FB8046DFF855 +:100A7000E843A07A461E36B2002E01D50A3636B2B9 +:100A8000607A02F0F5F941EC180BF64D05EB86168D +:100A900053EC182B05F5A8604168006802F0E4F8F3 +:100AA000D6E9B02302F020F841EC190B06F53077B7 +:100AB00005F2405953EC182BD9E9020102F0D4F8A1 +:100AC000D7E9022302F010F841EC1A0B53EC182B73 +:100AD000D9E9040102F0C8F8D7E9042302F004F8C8 +:100AE00041EC1B0B9FEDE0CBD6E9B023DDE918010B +:100AF00002F0CCF953EC1C2B02F0B6F8C6E9B001B9 +:100B0000D7E90223DDE91A0102F0C0F953EC1C2BEE +:100B100002F0AAF8C7E90201D7E90423DDE91C01C4 +:100B200002F0B4F953EC1C2B02F09EF8C7E9040163 +:100B3000C7F8388053EC1A2BD7E9020102F0A6F966 +:100B400041EC1A0B51EC1B0BD7E9042302F09EF980 +:100B500041EC1B0B51EC190BD6E9B02302F096F9CE +:100B600053EC182B02F006FA05F5A862C2E9000161 +:100B700051EC1A0B53EC182B02F0FCF9C9E90201F5 +:100B800051EC1B0B53EC182B02F0F4F9C9E90401EA +:100B900095F969058DF8000005F2695696F901008E +:100BA0008DF8010096F902008DF80200B5F86C0589 +:100BB000ADF80300DAE90001CDE90201DDE9022325 +:100BC000DDE9000100F045FB0246C5F87825DAE9C9 +:100BD0000001C4E900010192B0780090737895F8A3 +:100BE0006925617A0FF2380001F0DCFB99ED020B08 +:100BF0008DED000B05F5A860D0E900230FF28820E9 +:100C000001F0D0FB0320A0730FF22C0001F0CAFB0F +:100C100006B0BDEC0A8BBDE8F0075DF814FB0000E0 +:100C20004C5420256420552D53502025643A2564CA +:100C30003A25642C202564004C5420415245412023 +:100C400053544159000000000FB42DE9F0472DED39 +:100C50000A8B86B09FED848BDDE91823DDE928013E +:100C600002F014F953EC182B01F0FEFF41EC190BC4 +:100C7000DDE91A23DDE92A0102F008F953EC182B0B +:100C800001F0F2FF41EC1A0BDDE91C23DDE92C0138 +:100C900002F0FCF853EC182B01F0E6FF41EC180BC6 +:100CA000A74CDFF894A3DAE90001CDE90401D4E907 +:100CB0000001CDE90201DDE9042300F0CAFA664D26 +:100CC000A97ADFF8AC6C06EB811282EDB09B02F5DD +:100CD000307383ED02AB83ED048B237882F8E93225 +:100CE00002F2E92367785F70A7789F70B4F8033049 +:100CF000A2F8EC32C2F8F802481CA872C0B20A2866 +:100D000001D10020A872687A00F1010885F80980F5 +:100D10005FFA88F8A8F1010002F0A0F841EC1B0B83 +:100D200006F2405953EC1B2BD9E9020101F09CFF5C +:100D300053EC1A2B02F0AAF841EC1A0B53EC1B2BC4 +:100D4000D9E9040101F090FF53EC182B02F09EF852 +:100D500041EC180B404602F08BF841EC1C0B53ECB5 +:100D60001B2B06F5A8604168006801F07DFF53EC7D +:100D7000192B02F08BF853EC1C2B02F0FBF806F554 +:100D8000A862C2E9000151EC1A0B53EC1C2B02F0D3 +:100D9000F1F8C9E9020151EC180B53EC1C2B02F0DD +:100DA000E9F8C9E9040106F26957B8F1010F0AD15F +:100DB000207886F8690560787870A078B870B4F803 +:100DC0000300A6F86C0596F969058DF8000097F9FF +:100DD00001008DF8010097F902008DF80200B6F8C5 +:100DE0006C05ADF80300DAE90001CDE90201DDE9A7 +:100DF0000223DDE9000100F02CFA0246C6F878254E +:100E0000DAE90001C5E900010192B87800907B7829 +:100E100096F86925697A0FF2580001F0C3FA99ED46 +:100E2000020B8DED000B06F5A860D0E900230FF250 +:100E3000580001F0B7FA687A012805D10120A8739B +:100E40000FF2500001F0AEFA06B0BDEC0A8BBDE81F +:100E5000F0075DF814FB000010260120E093040069 +:100E600060E3160028C50020000000000000E03FFD +:100E70004C5420256420532D53502025643A25647A +:100E80003A25642C202564004C54202566202566D4 +:100E9000000000004C54204152454120494E0000C2 +:100EA0000FB410B584B0DFF8CC0A016B01EBC102BE +:100EB000DFF8BC3A03EBC20202F5B8639DED060B06 +:100EC00083ED000B9DED080B83ED020B08AC94ED58 +:100ED000021B83ED041B9DF8413082F8E93502F2D4 +:100EE000E9530DF1410464785C700DF14104A4787C +:100EF0009C70BDF84430A2F8EC3502F2EC5211AB14 +:100F0000DB685361C48A1483048B5483002901D1A4 +:100F10000121016302938DED000BDDE906230FF241 +:100F2000240001F03FFA1FBC5DF814FB6827012084 +:100F3000A8270120E827012028280120682801206F +:100F4000182E01204C54205553412025662025663B +:100F5000202564000FB4F0B585B0DFF8184A4825A5 +:100F6000DFF80C6A206B05FB006000F5B8619DEDB1 +:100F70000A0B81ED000B9DED0C0B81ED020B0CAA11 +:100F800092ED020B81ED040B9DF8511080F8E915EC +:100F900000F2E9520DF151035B7853700DF15107E6 +:100FA000BF789770BDF95420A0F8EC258DF8041097 +:100FB0008DF805308DF80670ADF8072094F9000023 +:100FC0008DF80C0060788DF80D00A0788DF80E007B +:100FD000B4F80300ADF80F00DDE90323DDE90101FA +:100FE00000F037F9074600979DF906309DF9052076 +:100FF0009DF904100FF2440001F0D4F9206B05FBB9 +:101000000061C1F8007601F20061E28A8A80228BD9 +:10101000CA80022801D2401C20630220A0730FF274 +:10102000340001F0BFF905B0F0BC5DF814FB00001E +:10103000202E0120282E0120102E01204C54205358 +:101040005341312025643A25643A25642C202564D7 +:10105000000000004C542041524541204F5554009F +:101060000FB438B52DED048B8CB006AA08A90AA8D8 +:101070009DED140B00F06EF8DDE90A230020DFF887 +:10108000F81801F0F1FD04460D46DDE90823DFF80C +:10109000EC08DFF8EC1801F0E7FD22462B4601F0E2 +:1010A000F5FE04460D46DDE90623DFF8D808DFF833 +:1010B000D81801F0D9FD22462B4601F0E7FE41EC9D +:1010C000180B00AA02A904A89DED160B00F042F827 +:1010D000DDE904234FF03330DFF8B01801F0C4FD30 +:1010E00004460D46DDE90223DFF8A408DFF8A41862 +:1010F00001F0BAFD22462B4601F0C8FE04460D461B +:10110000DDE90023DFF87408DFF88C1801F0ACFD8E +:1011100022462B4601F0BAFE41EC190B53EC182B7A +:1011200051EC180B01F0A0FD04460D4653EC192BB1 +:1011300051EC190B01F098FD22462B4601F0A6FE5A +:1011400041EC100B02F03AF80CB0BDEC048B31BC52 +:101150005DF814FB70B52DED048BB0EE408AF0EE17 +:10116000608A04460D46164651EC180B53EC182BBA +:1011700001F0BAFC41EC190B53EC192B0020DFF8FD +:101180001C1801F071FD41EC100B84ED008B85ED16 +:10119000000B0022DFF8043801F0ECFE02460B469B +:1011A00051EC190B01F0A0FC0022DFF8F43701F03C +:1011B0005BFDC6E90001BDEC048B70BDDFF8B40730 +:1011C000006A7047DFF8AC07406A704780B540227C +:1011D0000021DFF8D00701F041F840220021DFF8BC +:1011E000C80701F03BF8DFF8D40D0021417281728D +:1011F000016181820FF20C00BDE8024001F0D2B81B +:10120000000000004C542052455345545F41535058 +:1012100000000000DFF8A40D006B704780B5DFF818 +:10122000501701F5B06001F5A861402201F010FCF3 +:10123000DFF8880D0021016301BDC9B201EBC102D5 +:10124000DFF82C1701EBC20101F5B861482201F06B +:10125000FFBB3FB581B04FF47A704EF66022DFF8E5 +:10126000603D9DF904109DF90540544303FB014185 +:101270009DF9064014FB0011BDF9074001FA84F105 +:101280009DF90C409DF90D506A4303FB04229DF922 +:101290000E3013FB0020BDF90F2000FA82F0441A33 +:1012A00042F20F721319934205D200240FF23C0050 +:1012B00001F078F807E0DFF80C2D944203DADFF84C +:1012C000082D1018441ADFF8040D844200DB044690 +:1012D000204601F0C3FDDFF8F82CDFF8F83C01F000 +:1012E000C3FC05B0BDE8304001F0E8BF41542D4CCF +:1012F0005420646966662054696D65205265736583 +:10130000740000002DE9F64383B08146BDF90F401B +:101310004EF66025DFF8A86C9DF90C009DF90D10C4 +:10132000694306FB00109DF90E104FF47A7211FB11 +:10133000020000FA84F10C98412808D15F18DFF808 +:10134000980C87420BD3DFF8940CC71907E0994239 +:1013500004D2DFF8740C4018C71A00E0CF1A3846E0 +:1013600001F086FD0022DFF8783C01F003FE01F079 +:10137000A5FF80465FFA88F806FB1876304601F034 +:1013800077FD0022DFF85C3C01F0F4FD01F096FFF0 +:10139000C0B28DF8008001468DF8011005FB106089 +:1013A00001F066FDDFF8282CDFF8283C01F05CFC3A +:1013B00001F084FF8DF80200ADF80340484600A913 +:1013C000052201F035FB05B0BDE8F08300408F40F9 +:1013D00010B50024DFF89C05C16C012907D1012458 +:1013E0000021C1640FF2540000F0DCFF23E0DFF8BD +:1013F0008005D0F87815D0F8B825914216D190F82C +:10140000691590F8A925914210D100F2A95100F276 +:10141000695042784B789A4208D18078897888421E +:1014200004D10FF6EC3000F0BDFF04E001240FF60C +:10143000E83000F0B7FF204610BD00004C542046B5 +:101440005500000000B58DB0DFF82805407A00286F +:101450000AD0DFF8941B84B06846402201F0F8FA05 +:101460000FBCFFF71DFD06E00FF6B4300DB05DF8C0 +:1014700004EB00F097BF0DB000BD00001CB5DFF815 +:10148000F444217B61732073401E05284DD8DFE8AA +:1014900000F0034C16222C4100A801F020FADFF8DE +:1014A0004C0B00A9052201F0C3FA616C21640020F5 +:1014B000E0720FF67830BDE81C4000F073BF00A862 +:1014C00001F00DFADFF8240B00A9052201F0B0FAB3 +:1014D000A06BA06413BD00A801F001FADFF80C0BAB +:1014E00000A9052201F0A4FA13BD00202061A0820A +:1014F00040220146DFF8B00400F0B0FE00A801F081 +:10150000EEF9DFF8E80A00A9052201F091FAA06BD4 +:10151000A06413BD00A801F0E2F9DFF8D00A00A929 +:10152000052201F085FAA06BA06413BD0CB400B5D0 +:1015300083B09DF939108DF800100DF1390191F942 +:1015400001108DF801100DF1390191F902108DF89B +:1015500002100021ADF8031000A9052201F068FA7D +:101560000EBC5DF80CFB00002DE9F84F2DED0A8B49 +:101570009CB082469FED558BDFF8F883B8F81000D9 +:10158000B8F81290814502D25FFA89F901E0C0B241 +:101590008146B8F91400461E00D50A36DFF8D0B3EC +:1015A0000BEB861797ED109B97ED12AB97ED14BBE5 +:1015B00001243CE0301A00D50A300BEB801505F110 +:1015C00040010CA8402201F043FA07F1400184B029 +:1015D0006846402201F03CFA0FBCFEF7CAFFB0EEAD +:1015E00040CAF0EE60CA51EC180B53EC1C2B01F012 +:1015F00019FC03D2B0EE4C8AF0EE6C8A53EC1B2B34 +:10160000D5E9140101F042FC41EC1B0B53EC192B02 +:10161000D5E9100101F03AFC41EC190B51EC1A0B21 +:10162000D5E9122301F032FC41EC1A0B641CE4B240 +:1016300020464845BEDB484601F01AFC41EC1C0B35 +:1016400051EC1B0B53EC1C2B01F094FCCAE9040178 +:1016500051EC190B53EC1C2B01F08CFCCAE9000176 +:1016600051EC1A0B53EC1C2B01F084FCCAE902016B +:10167000B8F81000B8F8121088421ED207F14001E5 +:101680000CA8402201F0E4F9DFF8641984B0684640 +:10169000402201F0DDF90FBCFEF76BFFB0EE40CA4F +:1016A000F0EE60CA51EC180B53EC1C2B01F0BAFBA6 +:1016B00003D2B0EE4C8AF0EE6C8AB0EE480AF0EE3F +:1016C000680A1CB0BDEC0A8BBDE8F18F0000000079 +:1016D000000000000FB42DE9F0412DED068BA0B005 +:1016E0002CA984B06846402201F0B2F90FBCFEF785 +:1016F00067FFA04D68639E4E012812D100206863E9 +:1017000006F5A86184B06846402201F0A1F90FBC3B +:10171000FFF720FCFFF75AFD0FF6201000F042FE05 +:1017200019E1B5F9144006EB841040302CA9402291 +:1017300001F08EF9601CA88200B20A2801D10020B5 +:10174000A882288A0A2801DA401C2882688A401C5C +:101750006882314682B06846402201F079F90CBCBB +:101760000EA8FFF7E3FE288A0A2801DA002700E026 +:101770002F7D8D4CD4E900010022134601F0A4F91D +:101780002FD1D4E9020101F09FF92AD1D4E9040153 +:1017900001F09AF925D106EB8716DFF8588896F9FB +:1017A000690088F8000006F2690090F9011088F8D5 +:1017B000011090F9020088F80200B6F86C00A8F851 +:1017C0000300DFF82C0806F14001402201F040F947 +:1017D000204606F14001402201F03AF90020A063C2 +:1017E000B9E010A8FFF7C0FEB0EE408AF0EE608AC4 +:1017F000DFF80088288B400801F03AFB53EC182BE7 +:1018000001F010FB28D206EB871696F9690088F8DC +:10181000000006F2690090F9011088F8011090F9B3 +:10182000020088F80200B6F86C00A8F80300DFF8A0 +:10183000C00706F14001402201F00AF9204606F1F6 +:101840004001402201F004F90020A06368820FF2F9 +:10185000FC7000F0A7FD7EE0D8E90001CDE90001B1 +:10186000DDE90E23FFF7F5FC064631460FF2EC707A +:1018700000F098FD286C4FF47A71714388426AD267 +:101880006F8A3846042866DBA16B002916D19DEDCE +:10189000100B84ED000B9DED120B84ED020B9DED02 +:1018A000140B84ED040BA663214684B068464022E5 +:1018B00001F0CEF80FBCFEF7CBFF43E0401E01F075 +:1018C000CDFA41EC190B384601F0D2FA41EC1A0B73 +:1018D00051EC190BD4E9002301F0C6F9DDE92C2302 +:1018E00001F0D4FA53EC1A2B01F044FBC4E90001D7 +:1018F00051EC190BD4E9022301F0B6F9DDE92E23EE +:1019000001F0C4FA53EC1A2B01F034FBC4E90201D4 +:1019100051EC190BD4E9042301F0A6F9DDE93023D9 +:1019200001F0B4FA53EC1A2B01F024FBC4E90401D2 +:10193000A663214684B06846402201F089F80FBCB6 +:10194000FEF7C8FEA06B009053EC182B698A0FF2CB +:101950001C7000F027FD20B0BDEC068BBDE8F00147 +:101960005DF814FB7047DFF85406807B7047000079 +:1019700028C500201026012000C05B409A99999943 +:101980009999FD3F5839B4C876BE9F3F33335640CE +:10199000AE47E17A14AEF73F9999993F00004E4067 +:1019A0000020AC4068CA0020282801200EB478B579 +:1019B0002DED028B9EB00646DFF80046A06B08189E +:1019C000A06300A800F08BFFDFF82C56284600A982 +:1019D000052201F02DF8207B062800F2E782DFE8DF +:1019E00010F0070012007400C1006A011402C00266 +:1019F000FFF7ECFB0120FFF741FD217B0FF2846034 +:101A000000F0D0FCD2E225A983B06846582201F04C +:101A10001FF80EBC304680B2FEF77CFC002843D095 +:101A2000D5E90001CDE903014D200090E36BDDE92C +:101A300003010A46014601A8FFF764FCDFF8BC0574 +:101A400001A9052200F0F4FFDFF8B41582B0684662 +:101A5000402200F0FDFF0CBC1CA8FFF767FDD5E994 +:101A60000001CDE90001DDE90023DDE91C01FFF7FC +:101A7000F0FB05463D2D07DB29460FF2186000F00C +:101A800091FCFEF787FC06E00120A06229460FF2D8 +:101A9000146000F087FC0220FFF7F0FC217B0FF2BE +:101AA000146000F07FFC81E2A06A012840F07E8291 +:101AB0000020A062DFF8481584B06846402200F09C +:101AC000C7FF0FBCFFF706FE70E2FEF7F9FC002827 +:101AD00034D00320FFF7D2FC0FF2E85000F062FC94 +:101AE000607A00281FD0DFF81C55294684B068466C +:101AF000402200F0ADFF0FBCFEF762FD60630128DD +:101B000011D100206063DFF8E01484B06846402201 +:101B100000F09EFF0FBCFFF71DFAFFF757FB0FF217 +:101B2000B85000F03FFCDFF8D81484B0684640227B +:101B300000F08EFF0FBCFFF7CDFD37E2FEF710FD82 +:101B4000002800F03382207A401C2072C0B20328A3 +:101B500080F243810120FFF791FC0FF2985000F0D2 +:101B600021FC23E2A06A012851D10020A062DFF805 +:101B70009064607A00281DD0314684B068464022C7 +:101B800000F066FF0FBCFEF71BFD6063012811D15A +:101B90000020606306F5A86184B06846402200F02A +:101BA00057FF0FBCFFF7D6F9FFF710FB0FF25C50A1 +:101BB00000F0F8FB314684B06846402200F048FF50 +:101BC0000FBCFFF787FD31460CA8402200F040FF14 +:101BD000DFF8301484B06846402200F039FF0FBCB3 +:101BE000FEF7C7FCB0EE408AF0EE608AE08A01F0B2 +:101BF0003FF953EC182B01F015F908D20120FFF73B +:101C00003DFC53EC182B0FF2105000F0CBFBD5E944 +:101C10000001CDE90201DFF8D403D0E90023CDE9CA +:101C20000023DDE90223DDE90001FFF712FBA16BD0 +:101C3000A26C8E1A332E08D30120FFF71FFC314609 +:101C40000FF2EC4000F0AEFBB0E1216C4FF47A7281 +:101C50005043814280F0AA81DFF8A41382B0684625 +:101C6000402200F0F5FE0CBC1CA8FFF75FFCD5E994 +:101C70000001CDE90001DDE90023DDE91C01FFF7EA +:101C8000E8FA05463D2D07DBFEF784FB29460FF2F7 +:101C9000B84000F087FB06E00120A06229460FF261 +:101CA000044000F07FFB0420FFF7E8FB0FF2A840A0 +:101CB00000F078FB7AE1FEF72BFC002800F0828030 +:101CC000D14E314684B06846402200F0C1FE0FBCC0 +:101CD000FEF776FC6063012818D100206063C249DA +:101CE00084B06846402200F0B3FE0FBCFFF732F923 +:101CF000FFF76CFA0FF2704000F054FB607B052890 +:101D000040F054810120FFF7B9FB4FE1BD4D314652 +:101D10000CA8402200F09CFE294684B06846402270 +:101D200000F096FE0FBCFEF724FCB0EE408AF0EE09 +:101D3000608AE08A01F09CF802460B4651EC180BD1 +:101D400001F070F82BD2607B052831460CD184B0AD +:101D50006846402200F07CFE0FBCFEF76FFE0FF2DB +:101D6000144000F01FFB10E00CA8402200F070FEB1 +:101D7000294684B06846402200F06AFE0FBCFEF798 +:101D800063FF0FF2FC3000F00DFBFEF70CFB0520AB +:101D9000FFF774FB0FF2F03000F004FB06E10120C6 +:101DA000FFF76CFB53EC182B0FF2F03000F0FAFA4F +:101DB000934984B06846402200F04AFE0FBCFFF70A +:101DC00089FCF3E0FEF7CCFB002800F0EF80207ADE +:101DD000401C2072C0B2032807DB0620FFF74EFB31 +:101DE0000FF2003000F0DEFAE0E0884820640320C3 +:101DF000FFF744FB217A0FF2B83000F0D3FA216CE0 +:101E00000FF2282000F0CEFAD0E0A06A012846D1D7 +:101E10000020A0627A4E607A00281DD0314684B03E +:101E20006846402200F014FE0FBCFEF7C9FB606359 +:101E3000012811D10020606306F5A86184B06846CE +:101E4000402200F005FE0FBCFFF784F8FFF7BEF953 +:101E50000FF2743000F0A6FA31460CA8402200F0D0 +:101E6000F7FD684984B06846402200F0F1FD0FBCE0 +:101E7000FEF77FFBB0EE408AF0EE608AE08A00F069 +:101E8000F7FF53EC182B00F0CDFF08D20120FFF72D +:101E9000F5FA53EC182B0FF23C3000F083FAD5E939 +:101EA0000001CDE902015148D0E90023CDE900232A +:101EB000DDE90223DDE90001FFF7CBF9A16BA26C9C +:101EC0008E1A332E08D30120FFF7D8FA31460FF2CD +:101ED0001C3000F067FA69E0216C4FF47A725043CD +:101EE00081423BD2464E96F929008DF8700006F2E9 +:101EF000290090F901108DF8711090F902008DF809 +:101F00007200D5E90001CDE90001DDE90023DDE93A +:101F10001C01FFF79EF905463D2D07DBFEF73AFA57 +:101F200029460FF2E02000F03DFA06E00120A06211 +:101F300029460FF2E02000F035FA0420FFF79EFA60 +:101F4000E07A401CE072C0B203282FDB606C4100D5 +:101F500021640FF2D80000F025FA27E0FEF78EFB8F +:101F600024E0A06BA16C401A33280BD30120FFF7AB +:101F700085FA0FF2B42000F015FA0FF2C02000F03D +:101F800011FA13E0A06A01280BD10120FFF776FABD +:101F90000FF2B42000F006FA0FF2A02000F002FACF +:101FA00004E0607B042801D1FEF768FB207B1EB0B3 +:101FB000BDEC028B72BC5DF810FB00001026012006 +:101FC00080EE3600F1D8FFFF005C2605C0E40A056C +:101FD000FCA9F1D24D62503F015C260500A4D9FA5C +:101FE00040774B41004CED4068CA0020282E01206C +:101FF00068280120202E0120102E0120182E0120FB +:1020000028C50020A8270120E8270120E09304002C +:102010004C542053410000004C542044490000001F +:102020004C54204E6F20504F530000004C542D57FD +:1020300050204348414E4745202564004C542053CE +:10204000617665205341554D000000004C542052EC +:10205000455345545F474150000000004C54204711 +:1020600041204D546D202564000000004C54205345 +:102070005020534741522025642C2025662C2025D2 +:10208000640000004C542D434B5F53544F502025A7 +:10209000640000004C5420524551504F532D4620AF +:1020A000256400004C54204E2D524551504F532072 +:1020B000256400004C542D4745545F315F504F5309 +:1020C000202564004C542D434B5F555345525F4DC2 +:1020D0004F564554000000004C54205353412D46A8 +:1020E000500000004C542D53535F50415553455FF1 +:1020F000535300004C542053535F475053204E4FCE +:1021000054204F4B20317374000000004C54205376 +:1021100053412D554D0000004C542D434B5F5354FB +:102120004F502D554D2D64697374202566000000B5 +:102130004C542D434B5F53544F502D554D2D7374BC +:1021400065702025640000004C5420524551504FCA +:10215000532D5320256400004C542D4745545F32C5 +:102160005F504F53000000004C54205353412D53F7 +:10217000500000004C54205544542053500000009F +:102180004C542053535000004C542D434B5F555337 +:1021900045525F4C454156494E4700004C542D4333 +:1021A0004845434B5F53544F502D535020256600F4 +:1021B0004C542D475053204E4F54204F4B20326EDD +:1021C00064202564000000004C54205353412D55D9 +:1021D0004C0000004C542D434B5F53544F502D5531 +:1021E0004C20646973742025660000004C542D4314 +:1021F0004B5F53544F5020554C207374657020250D +:10220000640000004C5420524551504F532D554C02 +:10221000202564004C54204E2D524551504F532DD3 +:10222000554C2025640000004C5420535320414756 +:1022300041494E2042592053544550004C542D439F +:102240004B5F53544F5000004C5420535320414790 +:1022500041494E20425920504F53000010B50446CA +:1022600010460A460146204601F054F8204610BDAB +:10227000BFF34F8FDFF81C07016801F4E061DFF85E +:10228000442711430160BFF34F8FFEE710B5DFF81D +:1022900038474FF48E7200212046FFF7DFFF2046BB +:1022A00010BDDFF82407704710B5FFF7EFFF0446B5 +:1022B00000231A461146084600F06EFAC046C04692 +:1022C00001F05CF8204600F018F801F0AEFA204664 +:1022D00000F0CFF9204600F014F8204600F01EF878 +:1022E00000F092F900206072A072E0722073012069 +:1022F00060730020E075012010BD0021C1710172E2 +:1023000031E010B50446DFF8900601F0E3F8DFF89D +:10231000BC0601F0DFF80120607110BD10B5044665 +:1023200001F043F90120A07110BD38B50446012524 +:1023300001F0EEF9012804D12846E0700020A070D9 +:102340000AE0022804D10020E0702846A07003E0D3 +:102350000020E070A0700546284632BD80B501F02F +:1023600051FB012002BD10B50446E07901F078FC74 +:102370000121217010BD70B504460025E679E17198 +:10238000FFF7F1FF002807D02046FFF7BAFF2046ED +:10239000FFF7C4FF012503E0E6712046FFF7E3FFE6 +:1023A000284670BD0EB470B5C1B0054600A84FF404 +:1023B000807102F0D9F9FFF774FF044645AB2A4655 +:1023C0004FF4807100A802F0D3F900A802F0EEF9F2 +:1023D000451C00A82818002100F8011CDFF8F06552 +:1023E0003078401C30707078F021084202D099207B +:1023F00002F0F8F902F063FA7078401C7070207EE9 +:102400002818FF2810DA207E002803D0207E00192B +:102410000A2101762A4600A9207E0019193002F00F +:1024200065FA207E2818207600A802F0B7FC7078A4 +:10243000F021084202D0992002F0D4F97078401EB1 +:102440007070C0B2002801D102F033FA03F091F8A5 +:1024500041B070BC5DF810FB0428DFF8400503D8DC +:10246000DFF8341501607047DFF8601501607047D0 +:10247000DFF82C1551F82000007F002807D0DFF886 +:10248000540501784A1C0270032900DBF0E670470E +:102490002DE9F84305460E4617464FF00208DFF8CF +:1024A00030456078F021084202D0992002F09AF974 +:1024B00002F005FA6078401C60709DF80000401E34 +:1024C0008DF8000017F8019B2846FFF7C5FF00AB09 +:1024D0004A463946304601F0DBFC002810D06078CF +:1024E000F021084202D0992002F07CF96078401E69 +:1024F0006070C0B2002801D102F0DBF901201FE0BA +:102500005FFA88F8424629460FF2D440FFF74AFFA7 +:102510004046A0F101080028D9D16078F021084296 +:1025200002D0992002F05EF96078401E6070C0B25F +:10253000002801D102F0BDF92846FFF799FF0020DD +:10254000BDE8F2832DE9F04704460D4616461F46C6 +:10255000DFF85084089888F80000DFF8749499F840 +:102560000100F021084202D0992002F03BF902F06C +:10257000A6F999F80100401C89F801002046FFF7F0 +:102580006BFF4FF0020A434632463946284601F0B7 +:102590002FFD002813D099F80100F021084202D045 +:1025A000992002F01FF999F80100401E89F80100F6 +:1025B000C0B2002801D102F07CF9012022E05FFACC +:1025C0008AFA524621460FF22440FFF7EBFE5046AE +:1025D000A0F1010A0028D6D199F80100F0210842A3 +:1025E00002D0992002F0FEF899F80100401E89F807 +:1025F0000100C0B2002801D102F05BF92046FFF7CC +:1026000037FF0020BDE8F08703F0FDBCF8B50446B5 +:1026100002270025DFF888630DE039464F1EC9B256 +:1026200000290AD1002804D120690121A94088434A +:10263000206102276D1C162D10DA56F82500006E59 +:10264000006880470128E8D121690122AA4011438E +:10265000216156F8251001220A77E3E72069032853 +:1026600003D0022801D0012802D140F4805020611B +:10267000F1BD01F001BE01F05CBE81B00022ADF8F9 +:102680000220ADF80020C079042808D0062809D01F +:1026900008280AD009280BD00A280CD00EE04FF4E5 +:1026A000C8600DE04FF448600AE04FF4C85007E0FE +:1026B0004FF4FA5004E042F2107001E041F2707001 +:1026C000ADF802200DE0BDF80020521CADF800204E +:1026D000BDF800208242F6DBBDF80220521CADF8A6 +:1026E0000220BDF802208A4203D20022ADF8002069 +:1026F000EEE701B07047417230B589B003F046FD96 +:102700000446FFF7CEFD054600A8242102F02CF870 +:102710000020ADF8220001900A208DF8080000206A +:102720008DF809008DF80A00687A00280DD0002C79 +:1027300018D000208DF80000052001900B208DF8A6 +:10274000080000A805F054FB0CE0002C0AD0012082 +:102750008DF80000052001900B208DF8080000A8DE +:1027600005F046FB09B030BD01F0FFBD01F007BE2A +:1027700001210846F8E701210846F7E70221012078 +:10278000F2E702210120F1E701F004BE10B5044692 +:10279000FFF787FD447510BD2DE9F04782B00C4668 +:1027A00015462F46264680464FF47A714FF03C0C72 +:1027B0004FF4616918FB09F216FB0C22BA1801FBF1 +:1027C0000232DFF8E4E19EF900A01AFB09F99EF954 +:1027D00001A01AFB0C9C9EF902904CFA89FCBEF9F0 +:1027E000039001FB0C919EF808C0BCF1000F22D1B0 +:1027F00044EA00012943194302D001218EF8081050 +:102800008EF80000B8F1000F04D59EF800001830D3 +:102810008EF800008EF801408EF80250AEF80330BA +:1028200000933B4632469EF900100FF2F010FFF77E +:10283000B9FDBDE8F38791420DD3A1EB020CACF2D8 +:10284000D17CDFF89491CC45DAD30FF2AC1002B012 +:10285000BDE8F047A6E5D3D2A2EB010CACF2D179EA +:10286000DFF874A1D145CBD363460FF29C1002B0C0 +:10287000BDE8F04796E510B504002FD003F03BFD0E +:102880004949CA68002A00D0841AB1F80320A21866 +:10289000A1F8032012B2B2F57A7F06DBA2F57A72B4 +:1028A000A1F803208A78521C8A7091F902203C2AF0 +:1028B00004DB3C3A8A704A78521C4A7091F9012034 +:1028C0003C2A04DB3C3A4A700A78521C0A7091F99F +:1028D0000020182A01DB00220A70C86010BD3249AE +:1028E000052200F0A5B800000FB410B52DED028B45 +:1028F0002E4C104600F0BCFA2D4A2E4B00F0B4F9D5 +:10290000206161619FED2C8B049800F0B1FA53ECCB +:10291000182B00F0A9F920606160059800F0A8FA72 +:1029200053EC182B00F0A0F9A060E1609DF81C00AA +:10293000207604F118009DF81D1041709DF81E10BE +:1029400081709DF81F10C1709DF820100171BDF8B5 +:10295000210000EE100AB8EE400A10EE100A05F051 +:102960006FFB174A1D4B00F07FF905F091FBC4F88F +:102970001D00BDF82300A4F821009DF8250084F86F +:102980002300BDEC028B10BC5DF814FB0749242228 +:1029900000F04EB80CED00E000540040CC7C00206C +:1029A00008400020B42E0120382C0120302A0120BC +:1029B000FCA9F1D24D62503F8DEDB5A0F7C6B03EF7 +:1029C0003BDF4F8D0400FA05D40901200058004078 +:1029D000087C0020B32E01205F4C2605976EA23F95 +:1029E00049574520256420256400000049524520B0 +:1029F000256420256400000041542D536574545310 +:102A0000312025642025640041542D5365745453AE +:102A100032202564202564202564000041542D5374 +:102A20006574542025643A25643A25642E25640093 +:102A300062B38B0708D0521E11F8013B00F8013B2E +:102A400000F024808B07F6D1830740F0208000BF80 +:102A5000103A07D330B4B1E83810103AA0E8381073 +:102A6000F9D230BC530724BFB1E80810A0E8081021 +:102A700044BF51F8043B40F8043BD20724BF31F86F +:102A8000022B20F8022B44BF0B7803707047083AE2 +:102A900007D3B1E80810083A40F8043B40F804CBEB +:102AA000F7D25307E4E750F8041B61B150F8042B48 +:102AB000D30744BFA9F101039A18002342F8043B4D +:102AC000091FFAD1EFE7704790420CD141EA030C9D +:102AD00050EA4C0C07D0994205D14FF4001C1CEB76 +:102AE000410F38BF8942704770B44FF0004591EAFA +:102AF000030F44BF6B4000F0D3B900BF841A71EBE1 +:102B0000030604D26E40001BB141121973414FF409 +:102B1000001C1CEB410F34BF7CEB430684E00C0D22 +:102B2000A4EB1356362E7DDC012E43DC45EAC3238D +:102B300043EA525312BFD20292025B08240545EACF +:102B4000C12141EA5051D2EBC020994125D407D18F +:102B5000B0FA80F610FA06F164D00020203608E0C2 +:102B6000B1FA81F6B140C6F1200220FA02F2114317 +:102B7000B0404FEAF474B4EB465434F001064FEA27 +:102B800074040AD8D6F50016760D04F00044F0401F +:102B900061FA06F25040F1404840C00A40EA415014 +:102BA00021F0004128BF5FEA500550F1000044EBDE +:102BB000D12137E045EAC323DB0A45EAC121C90A2E +:102BC000B6F120050EDD42EA0242120CC5F12006E4 +:102BD00003FA06F6EB4042EA06056D42984161F1C0 +:102BE00000010DE062FA06F5F240554063FA06FC7A +:102BF00082EA0C02F3405A406D42904161EB0301BE +:102C000011F4801F05D1641E620502D06D004041A1 +:102C1000494121F48011430875F1004350F100004F +:102C200041EB045170BC70471CEB410F15D223F0EF +:102C3000004352EA43060BD04FEA4C0CBCEB410F69 +:102C400004D80C0D661E342EB7DDEBE7801A9941CF +:102C500050EA410608BF0021E4E708BF1CEB430F20 +:102C600028BF6FF00001DDE7B0B581EA030C0CF07E +:102C7000004C40F2FF7515EA11541DBF15EA1357B9 +:102C8000AC42AF4239E0E41923EA455343F48013E0 +:102C9000C90241F0004141EA505EC7021100A7FBA2 +:102CA000020200284FF00000EEFB01204FF000016F +:102CB000E3FB072118BF42F00102401800214941FF +:102CC000E3FB0E01A4F580640F0302D252004041E1 +:102CD000494154F101046CDD470872F1004250F1A2 +:102CE000000051EB0451A1F580115CBF41EA0C01D9 +:102CF000B0BD4CEA05510020B0BD05EA1357AC4207 +:102D000014BFAF4241E050EA410E1CBF52EA430EED +:102D100002E061460020B0BD24423C441BD15FEA82 +:102D2000070EF6D0090302BF01460020AEF1140ED3 +:102D3000B1FA81F7AEEB070401FA07FE0C37C7F1D1 +:102D4000200100FA07F7C8404EEA000E23EA455377 +:102D500043F48013A2E733F00043B3FA83F704BFD0 +:102D6000B2FA82FE77440B3FE41BB7F1200E2FBF6F +:102D700002FA0EF3BB40C7F1200E22FA0EFE38BF56 +:102D800043EA0E03BA40641C82E750EA410E14BFC6 +:102D900052EA430E6FF000014FF4001717EB430F98 +:102DA0008ABF194617EB410FB5E74CEA05510020E1 +:102DB000B0BDD4F10104B4F120070FDAC4F120074B +:102DC000520828BF42F0010210FA07F501FA07F78E +:102DD000E1BF2A43E0403843E1400FE0352C98DC66 +:102DE000C7F1200452EA400220FA07F218BF42F06D +:102DF000010231FA07F0A1400A43002172F10042BA +:102E000050F1000051EB0C01B0BD8268521C826091 +:102E1000426832B10268531C036011704168491E58 +:102E2000416070474FF4001C1CEB410F94BF1CEB3A +:102E3000430F09E041EA030C50EA4C0C52EA0C0C37 +:102E400003D2994208BF9042704714BF8B4282421E +:102E500070470268531C036011707047010040F115 +:102E60000980F446404200F005F851F00041604707 +:102E7000010000BF09D0B0FA80F18840C91CC1F53B +:102E80008461090501EBD0214005704770B44FF013 +:102E9000004591EA030C44BF6B40FFF72FBE00BF13 +:102EA000841A71EB030603D2001BB141121973415E +:102EB0004FF4001C1CEB410F34BF7CEB430443E098 +:102EC0000C0DA4EB1356352E50DC45EAC323DB0A68 +:102ED00045EAC121C912B6F120050DDD63FA05F6F8 +:102EE000EB4086EA0305124218BF45F00105C01801 +:102EF00051F100010CD213E062FA06F5F2405540A0 +:102F0000F3415A40B340F3405A408018594107D327 +:102F100049085FEA30005FEA350528BF45F0010542 +:102F200001F58011420875F1004250F1000041EBBB +:102F3000045170BC4FF4001C1CEB410F38BF7047AC +:102F40000020090D090570471CEB410F10D252EA11 +:102F500043060BD0BCEB410F05D80C0DAB43661EEE +:102F6000342EB5DD02E0AB438018594170BC704788 +:102F700070BC7047F0B540F2FF7581EA030C0CF0AD +:102F8000004C15EA11541DBF15EA1357AC42AF426D +:102F9000E5E0BC41C1F31301C3F31303801A994167 +:102FA00043F4801304D2641E400049418018594103 +:102FB000C90241EA5051B1FBF3F603FB1611A2FB23 +:102FC0000675D7EBC020A94102D2761E8018594160 +:102FD000C90241EA5051B1FBF3FE03FB1E11A2FBF3 +:102FE0000E75D7EBC020A94103D2AEF1010E8018B7 +:102FF0005941890241EA9051760546EA8E2EB1FB8D +:10300000F3F603FB1611A2FB0675D7EB8020A9414E +:1030100002D2761E80185941C90241EA50514EEA47 +:10302000060EB1FBF3F603FB1611A2FB0675D7EBF8 +:10303000C020A94102D2761E80185941C90241EA36 +:103040005051B1FBF3F703FB1711A2FB0735D3EB8C +:10305000C020A94167F100070CBF004247F00107FB +:1030600066F3D5274FEA1E31B80814F5806412DDE7 +:10307000BD0775F1004250EB0E5051EB045111F5B4 +:10308000801F5CBF41EA0C01F0BD4CF07F6141F054 +:10309000E0410020F0BDBD076D0840EA0E5041F44C +:1030A0008011D4F10104B4F120060ADAC4F120063B +:1030B0000200E04001FA06F3E1401843B240154334 +:1030C0000EE0342C13DCC6F1200445EA40056D08FF +:1030D00020FA06F2154321FA06F0A1400D43002123 +:1030E00075F1004250F1000051EB0C01F0BD0020E1 +:1030F0005FEA0C01F0BDCFB992185B41B3FA83F7D8 +:1031000004BFB2FA82F6BF190B3FB7F120062FBFFA +:1031100002FA06F3BB40C7F1200622FA06F638BFD2 +:103120003343BA401CB1E419641E33E77F4231F0E7 +:103130000041B1FA81F404BFB0FA80F6A4190B3C47 +:10314000B4F120062FBF00FA06F1A140C4F1200619 +:1031500020FA06F638BF3143A0403C1B1AE7AC42C8 +:103160001ABF05EA1357AF4212E050EA41061CBFEE +:1031700052EA4306BFE750EA4107304661461CBFAA +:1031800041EA0551F0BD52EA430C08BFC143F0BD0E +:1031900000204FF4001616EB410F98BF16EB430FBB +:1031A00008BF16EB410F24BFC14305E016EB430FE8 +:1031B0000CBF61464CEA0551F0BD000051EC100B0C +:1031C00000B500F003F841EC100B00BD40F2FF7CAD +:1031D0000B0D4DD0634566D230B421EA035141F462 +:1031E000801103F2FD3C5FEA5C0C01D300184941F9 +:1031F000890041EA907180004FF440140023E202FC +:10320000D50AB1F5100107D46D081DD2091B641948 +:1032100000184941491BF7D56D080AD20919641BEA +:1032200000184941491BEFD56D08F7D301E052085A +:1032300017D0C01861419B1AAC4100184941801A4F +:10324000A941F4D452080AD0C01AA1419B186C417C +:1032500000184941801AA941E9D45208F4D15B1CF5 +:103260006C4161084FEA330001EB0C5130BC7047F0 +:1032700050EA0103FBD030B4B1FA81F311B9B0FACE +:1032800080F41B190B3BB3F120042FBF00FA04F1AB +:103290009940C3F1200420FA04F438BF2143984038 +:1032A000D3F101039DE76345E1D011F5801FDED81E +:1032B00050EA4101DBD0D94304F032BFF446400D5F +:1032C00040EAC120490006D200F014F8004248BF8D +:1032D0006FF00040604700F00DF84FF00041884269 +:1032E0008CBF084640426047400D40EAC12049007B +:1032F00080F00D8040F00040490DA1F58061491C2F +:1033000005D4D1F11F0154BFC840C01770474FF01A +:103310000000704762F30F2262F31F42401810F062 +:10332000030308D0C91A1FD3DB0748BF00F8012DDB +:1033300028BF20F8022D130030B41446154610396A +:1033400028BF20E93C00FAD8490728BF20E90C0033 +:1033500048BF40F8042D890028BF20F8022D48BF3F +:1033600000F8012D30BC7047C91818BF00F8012DB6 +:10337000CB0728BF00F8012D7047000030B583B09F +:103380000121032004F037FFDFF8584C204604F0F9 +:10339000CBFFDFF8545C284604F0C6FF01208DF80F +:1033A000040000208DF8050001208DF806000020A3 +:1033B0008DF80700012128460183C04601200090B6 +:1033C00000A9284605F00CF8022128460183C046D2 +:1033D0000220009000A9284605F002F801208DF88F +:1033E000040000208DF80500ADF806004FF4807051 +:1033F000009000A9284604F0F3FF4FF4807128469E +:103400004183C04601208DF8040000208DF805009E +:1034100001208DF8060000208DF807004FF4805041 +:10342000009000A9204604F0DBFF4FF480512046B5 +:103430004183C04604220621284605F01FF80422D5 +:103440000721284605F01AF802208DF80400012013 +:103450008DF805008DF8060000208DF8070040204B +:10346000009000A9284604F0BBFF8020009000A92E +:10347000284604F0B5FF04220A21284604F0FEFF86 +:1034800009220321284604F0F9FF02208DF80400E8 +:1034900001208DF805008DF8060000208DF807004A +:1034A0004FF48060009000A9284604F099FF08209E +:1034B000009000A9284604F093FF286820F030000F +:1034C00040F010002860206820F0300040F010002C +:1034D000206037BD1FB5DFF8144BA04230D1012169 +:1034E0004FF4001004F092FE0121022004F083FE4C +:1034F00001214FF4001004F0AAFE00214FF4001047 +:1035000004F0A5FE0020ADF804004BF6FF70ADF806 +:1035100006004FF48060ADF80A004FF48040ADF82B +:103520000C000A20ADF80800DFF8A40C009000A9F8 +:10353000204604F0E6FF0121204605F045F81FBDB6 +:10354000DFF8904CA0422FD101214FF4800004F00D +:103550005DFE0121022004F04EFE01214FF48000A7 +:1035600004F075FE00214FF4800004F070FE00208E +:10357000ADF804004BF6FF70ADF806004FF4806024 +:10358000ADF80A004FF48040ADF80C000A20ADF809 +:103590000800DFF83C0C009000A9204604F0B1FFC1 +:1035A0000121204605F010F81FBD2DE9F04192B031 +:1035B00001214FF4805004F034FE0121084604F04C +:1035C0001AFE01214FF4800004F015FEDFF8144AC2 +:1035D00005221146204604F051FF0522072120460E +:1035E00004F04CFF05220621204604F047FF052287 +:1035F0000421204604F042FF02208DF8040001203F +:103600008DF805000020ADF806002020009000A9EC +:10361000204604F0E5FE8020009000A9204604F03A +:10362000DFFE4020009000A9204604F0D9FE1020C3 +:10363000009000A9204604F0D3FEDFF89C4B204602 +:1036400005F024F8DFF8945B0020288068600120F2 +:10365000288100206881E860072028820020688097 +:10366000DFF87C6B304605F081F8DFF8787B384670 +:1036700005F07CF84FF48060069000210D91032145 +:103680000E9100210F910A910890DFF8140C03901D +:1036900008461090099007904FF400300C900846AF +:1036A0000B904FF0C068CDF8088040200590084688 +:1036B000049002A9304605F0DDF800200B90CDF80B +:1036C0000880059005F11400049002A9384605F021 +:1036D000D1F8002068802946204605F006F801222E +:1036E0000221204605F030F801221146204605F05F +:1036F0002BF80121204605F01BF80021304605F08B +:10370000E0F80021384605F0DCF812B0BDE8F081A1 +:1037100030B589B001214FF0805004F077FD0120D1 +:1037200005F038F901214FF4802004F064FD0F20EA +:1037300005F0E0FA0446102005F0DCFA0546012009 +:1037400004F056FD002004F053FD21460F2005F043 +:10375000C4FA2946102005F0C0FA00214FF4802059 +:1037600004F049FD012004F0E1FC412004F090FD4B +:103770000028FAD04FF4807004F024FD012004F0FA +:1037800034FD05F05AF93F20069040F2FF100790F3 +:103790000020059005A805F007F90020029002A975 +:1037A00005F06CF900208DF8070001208DF8040069 +:1037B0008DF805008DF8060001A9002005F0D7F965 +:1037C0004FF4800005F076FB4FF48000039000205A +:1037D0008DF8100008208DF8110001208DF81200DE +:1037E00003A805F025FB03208DF800000D208DF8BF +:1037F000010000208DF8020001208DF8030000A8D0 +:1038000005F065FB032005F026FA4FF4804005F033 +:10381000DCFA4FF4800005F04DFB01214FF48040AD +:1038200005F099FA012009B030BD10B586B001212C +:10383000084604F0E0FC01214FF4804004F0F1FC64 +:1038400000208DF810008DF8130001200390DFF8A0 +:10385000944703A9204604F0C3FD0420039003A964 +:10386000204604F0BDFD0021084605F069FB022159 +:10387000002005F065FB00208DF8080001208DF880 +:103880000A0001900C208DF8090001A805F0D0FA7B +:10389000042001900C208DF8090001A805F0C8FA59 +:1038A000042005F007FB28208DF800000F208DF87C +:1038B000010000208DF8020001208DF8030000A80F +:1038C00005F005FB06B010BD10B586B00121084615 +:1038D00004F091FC01214FF4804004F0A2FC002090 +:1038E0008DF810008DF813004FF40064039403A9C1 +:1038F000DFF8F00604F074FD0B21002005F020FB3A +:1039000000208DF8080001208DF80A0001940C2099 +:103910008DF8090001A805F08BFA204605F0CAFAD7 +:1039200028208DF800000F208DF8010000208DF870 +:10393000020001208DF8030000A805F0C8FA06B0C7 +:1039400010BD30B58DB0044601214FF4807004F0F5 +:1039500068FC00A804F07EFD0A20009003208DF88A +:10396000040000208DF8070000A9DFF8780604F0B5 +:1039700037FD05F0F9FA02A805F03BFB4FF4803063 +:10398000039002A805F027FB06A805F01AFBDFF854 +:10399000645B06A9284605F0F4FA072301222146B4 +:1039A000284605F037FB0121284605F076FB01216A +:1039B000284605F024FB0DB030BD38B5DFF8344B98 +:1039C000204605F065FB4FF47A750221204605F08C +:1039D0007BFB002803D12846451E0128F5DA204646 +:1039E000BDE8324005F064BB80B50021DFF8040B70 +:1039F00005F005FB00214FF48070BDE8044004F0A1 +:103A000010BC000038B5040039D0012004F0C2FF1A +:103A1000002005F03AF94FF40055042005F0B6F9FE +:103A2000012804D12846451E80B20028F5D100EEB9 +:103A3000104AB8EE400ADFED780A80EE800AF0EE18 +:103A4000000A20EE200ADFED750A80EE800ABDEE46 +:103A5000C00A10EE100A401E80B205F00CF94FF4B7 +:103A6000804005F0B2F94FF4800005F023FA012000 +:103A700005F00BF9DFF8740B0121416031BD012025 +:103A800004F088FF0020BDE8324005F0FEB80000D9 +:103A900030B4014601200023DFF85C2A1C46946004 +:103AA000946814F00C0FFBD10C460B2C55D8DFE8B2 +:103AB00004F02054545406192031383F464D946880 +:103AC00044F080049460DFF8344A4FF4C065256008 +:103AD000146824F080741460DFF8A44ADFF8205AD8 +:103AE00025603BE00346DFF8984ADFF8985A2560E6 +:103AF00034E094689460DFF8044A4FF4C0652560B0 +:103B0000146824F080741460DFF8744ADFF8785A7F +:103B1000256023E00223DFF8684ADFF8705A256049 +:103B20001CE00323DFF8584ADFF8645A256015E0EB +:103B30000423DFF84C4ADFF8B85A25600EE005236D +:103B4000DFF83C4ADFF8AC5A256007E00623DFF8CF +:103B5000304ADFF8A45A256000E01846002B4AD00E +:103B600003EBC3030FF2B8041B1994689460146844 +:103B700024F080741460146824F0806414609C78CD +:103B80001D8844EA8514DD786D086D1E44EA0544FD +:103B90001D7944EA05645460DC881D7A2D0745EAE6 +:103BA0008414DFF8B05A2C60146844F080741460F8 +:103BB0001468A401FCD55B7943F4C063DFF83C4989 +:103BC00023609368936093689360052904D191689A +:103BD00041F09001916005E00A2903D1916841F418 +:103BE00080519160916841F002019160916801F00B +:103BF0000C010829FAD1DFF888190968DFF8582A7A +:103C0000914207D2DFF8E41A0A6822F4404242F4F3 +:103C100080420A6030BC704700007A4400000047D0 +:103C2000200110040F03020103F00010060F01022F +:103C30000103C00010080F01020103C00010060FAD +:103C400001020103F00010060F01020103C8001079 +:103C5000040F02020103A80010020F030201030077 +:103C600016E7002800E0401EFDD170477CB507260E +:103C7000DE4988426BD101208DF804008DF80500E3 +:103C80008DF8060000208DF8070040200090DFF836 +:103C90007C5A00A9284604F0A3FB8020009000A9CC +:103CA000284604F09DFB402128464183C0460F2052 +:103CB000FFF7D7FF402128460183C0460F20FFF7BA +:103CC000D0FF3046461E80B20028ECD18020009004 +:103CD00000A9284604F084FB402128464183C046C1 +:103CE0000520FFF7BEFF802128460183C04605203E +:103CF000FFF7B7FF402128460183C0460A20FFF79F +:103D0000B0FF402128464183C0460520FFF7A9FFA8 +:103D1000802128464183C0460520FFF7A2FF0220EC +:103D20008DF8040001208DF805008DF806000020B4 +:103D30008DF807004020009000A9284604F050FBB1 +:103D40008020009000A9284604F04AFB73BDDFF8EC +:103D5000841488426AD101208DF804008DF8050092 +:103D60008DF8060000208DF807004FF48064009461 +:103D7000DFF8985900A9284604F032FB082000908B +:103D800000A9284604F02CFB214628464183C04662 +:103D90000A20FFF766FF214628460183C0460A2015 +:103DA000FFF75FFF3046461E80B20028ECD10820A6 +:103DB000009000A9284604F013FB214628464183C1 +:103DC000C0460520FFF74DFF082128460183C04665 +:103DD0000520FFF746FF214628460183C0460A20FA +:103DE000FFF73FFF214628464183C0460520FFF7E5 +:103DF00038FF082128464183C0460520FFF731FFE0 +:103E000002208DF8040001208DF805008DF80600D1 +:103E100000208DF80700009400A9284604F0E0FA7D +:103E20000820009000A9284604F0DAFA73BD10B506 +:103E3000DFF8DC480121206804F0FFFB206804F073 +:103E400031FB2068FFF746FB05E02068FFF70EFF17 +:103E50002068FFF73FFB4FF40031206804F0F8FBC7 +:103E60000028F2D110BD30B40022838A008BDFF825 +:103E7000A048656843EA00400840000255EA102067 +:103E800060600840884200D10122104630BC704773 +:103E90002DE9F84F04460D4616464FF420491F7889 +:103EA000DFF86C884FF40031D8F8000004F0D0FB44 +:103EB000002808D04846A0F101090028F2D1FFF7F8 +:103EC000B6FF00208CE0D8F8000001884FF6FF52C2 +:103ED000114001800121D8F8000004F081FB4FF46B +:103EE000805AD1460020C8F80400D8F800B0DFF8A6 +:103EF00024185846FFF7B7FF002805D14846A0F11F +:103F000001090028F1D163E0D1460022214658463C +:103F100004F07EFB0020C8F80400D8F80040DFF869 +:103F2000F8172046FFF79FFF002805D14846A0F16B +:103F300001090028F1D14BE03146C9B22046018287 +:103F4000C046D1460020C8F80400D8F80040DFF889 +:103F5000CC172046FFF787FF002805D14846A0F17F +:103F600001090028F1D133E0012F15D1297820462D +:103F70000182C046D1460020C8F80400DFF8A0172F +:103F8000D8F80000FFF76FFF002823D14846A0F1C2 +:103F900001090028F2D11BE03846471EC0B20028B4 +:103FA00018D015F8011BD8F800000182C046D14690 +:103FB0000020C8F80400DFF86817D8F80000FFF701 +:103FC00052FF0028E8D14846A0F101090028F2D1AB +:103FD000002005E00121D8F8000004F00DFB0120CD +:103FE000BDE8F28F0000024000040240005400408F +:103FF0002DE9F54F81B00D461E464FF42048377825 +:10400000DFF80C474FF40031206804F021FB002852 +:1040100008D04046A0F101080028F3D1FFF707FFC0 +:104020000020D3E0206801884FF6FF521140018044 +:104030000121206804F0D4FA4FF48059C8460020CA +:104040006060DFF8D0A6D4F800B051465846FFF7BC +:104050000AFF002805D14046A0F101080028F2D14E +:1040600091E000229DF80410584604F0D1FAC846A9 +:1040700000206060D4F800B0DFF89C165846FFF7C7 +:10408000F2FE002805D14046A0F101080028F1D138 +:1040900079E0BDF80810C9B258460182C046C8464A +:1040A000DFF88016206804F0D3FA002805D14046D6 +:1040B000A0F101080028F3D165E00121206804F097 +:1040C0008FFAC84600206060D4F800B051465846C8 +:1040D000FFF7C9FE002805D14046A0F101080028DD +:1040E000F2D150E001229DF80410584604F090FAF5 +:1040F000022FC84639DADFF83016206804F0A8FA33 +:10410000002805D14046A0F101080028F3D13AE08B +:104110000021206804F085FA2068018B012104F059 +:104120006BFAC846DFF80416206804F091FA0028FC +:1041300005D14046A0F101080028F3D123E0206812 +:10414000008AC0B228703078401E3070C84620689F +:104150000188890505D54046A0F101080028F6D15F +:1041600011E0012104F05DFA2BE000206060DFF82F +:10417000C0152068FFF777FE002806D14046A0F161 +:1041800001080028F3D1002020E0012616E0012FCD +:104190000CD1012E0AD100263146206804F041FAE4 +:1041A0002068818A018B012104F026FA2068818A27 +:1041B000490603D5008A05F8010B7F1EFFB2002FC8 +:1041C000E5D10121206804F02CFA0120BDE8FE8F22 +:1041D000801A060000580040003001400C2A0120DF +:1041E0008864024010640240DFF84805016808292D +:1041F00033D1DFF804130A6842F080720A60426823 +:10420000B2F1806F03D10A6842F080620A600A68E6 +:104210009201FCD58A6842F002028A608A6802F044 +:104220000C02082AFAD14268B2F1806F02D10A6802 +:104230001201FCD5DFF848130968DFF81C2491420D +:1042400007D2DFF8A8140A6822F4404242F4804200 +:104250000A6000210160416070474168B1F1806FE0 +:1042600009D1A5490A6842F080620A600A68120111 +:10427000FCD5002141607047DFF8BC04016841F0C3 +:1042800080510160DFF8640401688908890041F009 +:1042900001010160DFF8A4040FF209010160704719 +:1042A0000C30014038B5DFF89844208840F0040015 +:1042B0002080FDF7F6FF807A012803D1012004F069 +:1042C0006CFB02E0002004F068FBDFF878548021EA +:1042D000DFF8740404F042FA002818D172B6864858 +:1042E000DFF85014826802F00C020A60006800F0E7 +:1042F00080604860286840F00400286030BF62B6E3 +:10430000286820F004002860FFF76EFF0CE060884A +:1043100040F004006080286820F00400286030BF6E +:10432000286840F004002860608840F00400608045 +:1043300031BDDFF8080400680047DFF810140128D9 +:1043400006D010D3032809D005D3042809D00AE0E9 +:10435000DFF8B81307E0DFF8F81304E0DFF8F41330 +:1043600001E0DFF8F4130846704710B50C46FFF77C +:10437000E4FF214689B2BDE8104004F07BB810B5D7 +:104380000C46FFF7DAFF214689B2BDE8104004F081 +:1043900073B80000E0B500238DF8083001238DF8D4 +:1043A0000A30002A03D10C228DF8092002E00822ED +:1043B0008DF8092004283CD8DFE800F00315212AF5 +:1043C0002A004FF40060019028208DF800000F2093 +:1043D0008DF8010000208DF80200012921D1184636 +:1043E0008DF803001FE01846019010208DF8090099 +:1043F00006208DF800000E208DF80100EAE702206B +:10440000019007208DF800000F208DF80100E1E7F2 +:104410000420019008208DF800000F208DF8010085 +:10442000D8E78DF8030001A804F002FD00A804F00D +:104430004EFD07BD10B5044601214FF4802003F066 +:10444000DAFE2146102004F048FC00214FF48020C1 +:10445000BDE8104003F0CFBE10B501214FF480201D +:1044600003F0C9FE102004F045FC044600214FF47F +:10447000802003F0C0FE7B2003F00AFF002802D05A +:104480009BA0FDF78FFF7A2003F002FF002802D0E7 +:1044900098A0FDF787FF792003F0FAFE002802D0EC +:1044A00095A0FDF77FFF7C2003F0F2FE002802D0EC +:1044B00092A0FDF777FF7D2003F0EAFE002802D0EE +:1044C0008FA0FDF76FFF7E2003F0E2FE002802D0F0 +:1044D0008CA0FDF767FF7F2003F0DAFE002802D0F2 +:1044E00089A0FDF75FFF03F0E5FE2046C0B210BDD6 +:1044F000000000000020014000380240003C024063 +:1045000000127A003EB50C4615460422014602A868 +:1045100000F0ECF90422214601A800F0E7F904229A +:10452000294600A800F0E2F902A9002004F0A6FA4A +:1045300001A9002004F01BFB04F014FB0446874A89 +:10454000002300981946101A63EB0101490241EA61 +:10455000D051400204F0E2FD0090844205D2011BDC +:104560004FF0004004F0D3FB37BDA04207D2C4F5A2 +:104570000070009909184FF0004004F0C8FB37BDE7 +:10458000907C0020809698000024F40000366E0194 +:104590000048E8012DE9704384B004460D461646F4 +:1045A00002A9002004F0B9FA01A9002004F02FFBB1 +:1045B00004F0D8FA0090694AA2FB00894FEA582813 +:1045C00048EAC958A2EB08000090042202A920463C +:1045D00000F08CF9042201A9284600F087F9042292 +:1045E00000A9304600F082F9BDE87F83A42D0120A8 +:1045F000005A620280F0FA0200BD010570B48C1E00 +:10460000012C01DA0C34401E3C216425B0FBF5F589 +:10461000C5EB90054FF4C876B0FBF6F6751940F27D +:104620006F1674430C26B4FBF6F46419121940F2A9 +:104630006D1404FB00204A4A101800EB400203EB03 +:10464000C200039A01FB0020049A01FB002070BC09 +:104650007047000084380240018793031CB50C4664 +:1046600001680191416800918368C2680169491C31 +:10467000406900F26C70FFF7C1FF2060002016BD9A +:1046800010B58EB037480068C405E40D01A90020BC +:1046900004F043FA00A9002004F0B9FA9DF80400E0 +:1046A00006909DF8050005909DF8060004909DF881 +:1046B0000100401E08909DF8020007909DF803003D +:1046C0006430099002A904A8FFF7C8FF4FF47A707C +:1046D00010FB04F0400AC0F57A700390029A4FF480 +:1046E0007A73C117E3FB02010EB010BD00700040E9 +:1046F000504F520050494E00424F52005346540012 +:1047000049574400575744004C505700000402409A +:10471000CC7C00200100030082000700800007001D +:104720008400070004000010020000104000001088 +:1047300002000300AC2D012040380240A42D0120CE +:104740001800024010ED00E000300140000002407F +:1047500000080240000C02400010024000CA9A3BD0 +:104760007505F5FF28280040002204F04FBD000029 +:1047700008B584B00023029311B90093019302E0BD +:104780000090481E019004AB00A9074878441830F7 +:1047900004F056FD009909B100220A70002858BFA4 +:1047A000029805B000BD00BF63E6FFFF00F1010302 +:1047B000810704D010F8011B89B18107FAD1026882 +:1047C000B2F10131914311F0803F04BF50F8042F42 +:1047D000F6E710F8011B11B110F8011BFBE7C01A36 +:1047E0007047000000B585B002460FF2140100A822 +:1047F00005F0F2FB00A800F099FB05B000BD000039 +:104800004F4525640000000030488168002904BF3E +:1048100008B008E0EFF30982A2F12802036882E8F9 +:10482000F84F83685A6000F04BFD816859B14A68BF +:1048300092E8F84F036002F1280282F3098813F42A +:104840007F4F36D07047224822490968401A80F3CA +:1048500008884FF08071C1611F4981617FF0060EA9 +:10486000704701BC2046DFF874E000BDFEE71C483D +:10487000006818490968401A203820F0070080F3C2 +:1048800008884FF0000181F3118862B600F00DF83E +:10489000FEE74FF0000181F311881249124A0A60C5 +:1048A0004FF0800181F3118870470E490E4A0A606B +:1048B00070474FF0000181F31188704700BF4FF03F +:1048C000800181F31188704700BF0000087C002040 +:1048D000E01F0020380F030821A300086D480008DE +:1048E0000000000804ED00E00000001010B50446D0 +:1048F000FEF79EF8204610BDEFF303807047BFF32C +:104900004F8FDFF86C06016801F4E061DFF8642680 +:1049100011430160BFF34F8FFEE770B582B00646CA +:104920000C462046FFF742FF0546202D05D1042204 +:10493000314600A8FFF7DAFF06E0102D16D102225B +:10494000314600A8FFF7D2FF002000E0401CA8423B +:104950000EDA015D7829F9D0009A2B465B1E1B1AEE +:10496000DA4002F0010230398A42EFD0002076BDF1 +:10497000012076BDDFF80016016006207047A0F127 +:104980000060B0F53E3F01D801207047002070471D +:10499000F8B504460D46002000902068FFF7EFFFB1 +:1049A00000281AD000A8FFF7E5FF0646002700E020 +:1049B0007F1CB74211D2009850F8371000EBC700A7 +:1049C000406840422268520810EB4200FFF7A5FF02 +:1049D0000028EDD02F600120F2BD0020F2BDF8B517 +:1049E0000C46DFF898150A6D4B6D002559082E46C8 +:1049F0005F1B062F11D3482707FB01273F6C874217 +:104A000000D20D46B84200D20B46E9184908374695 +:104A10007E1C1F2FECD300E06D1C9D4211D2482755 +:104A200007FB05210E6CB042F6D34E6C8642F3D3E1 +:104A30004022204605F0EAFA002084F840000120D8 +:104A4000F2BD40220FF20061204605F0DFFA00209F +:104A5000F2BDF0B591B0044600250EE032590FF2D8 +:104A6000F45100A805F0B8FA00A8FFF79FFE02462F +:104A700000A9381D05F0CAFA6D1C05EBC500C6007B +:104A8000305900280BD0371900A9FFF7A8FF0028DC +:104A9000E4D0402200A9381D05F0B8FAECE711B0C7 +:104AA000F0BDF8B507460C46154600263046009086 +:104AB000002F1ED0002C09D1F2BD06EBC600C000AD +:104AC00057F8041B490849004151761C0C2E0FD29F +:104AD00000A93846FFF75CFF002807D13868FFF7C8 +:104AE0004EFF002802D13F1DBC42F1D2BC42E4D2AD +:104AF0003046F2BD70B5DFF888140A460B68D21A4A +:104B00001368DFF88044A34201D0002070BDDFF8B5 +:104B10006C44121D22650968091F4822B1FBF2F19D +:104B2000616510F1030F02D010F1130F0AD1DFF805 +:104B30005854A86805F0A0FA0646A86805F0A8FA37 +:104B4000811905E005F0B2FA054605F0B1FA411900 +:104B5000DFF83854A069286005F14802A06AFFF721 +:104B6000A0FF2846FFF775FF012070BD0EB430B5D9 +:104B7000CCB0044600A84FF49671FFF7F5FD002570 +:104B80004FAB22464FF4967100A8FFF7F1FD00A845 +:104B9000FFF70CFE044609E0DFF8E013C86D421C85 +:104BA000CA6500A9695C05F0EBFA6D1CA542F3D358 +:104BB0004CB030BC5DF810FB38B50024DFF8BC53B6 +:104BC000E8650FF29840FFF7D1FFDFF8C4030168F2 +:104BD0000FF2AC40FFF7CAFFA86C0090AB6B6A6B9A +:104BE000296B0FF2B440FFF7C1FFE96C0FF2E04010 +:104BF000FFF7BCFF6A69A9690FF2E840FFF7B6FF4B +:104C00000FF2F840FFF7B2FF06E01018021D0FF296 +:104C10000450FFF7ABFF641C04EBC400C200DB4888 +:104C200011580029F1D10FF2F840FFF79FFFA86D4E +:104C3000441E002505E00918BBA0FFF797FF641E7E +:104C40006D1C3C2D09D2002C00D53B24322000FBEA +:104C500004F1D0480A5C002AEDD131BDCE48CF49DD +:104C60000A6802604A6842608A688260CA68C260F4 +:104C70000A6902614A6942610A7E8261097F816133 +:104C8000C7490A7882614A6842628A688262CA6851 +:104C9000C2620A6902634A6942638A698263CA69B5 +:104CA000C2638A6EC0F88820BE4A9369C0F8983003 +:104CB000D368C0F88C301369C0F890305369C0F8DD +:104CC00094300B6FC0F89C304B6FC0F8A0308B6FE6 +:104CD000C0F8A430C96FC0F8A810B3490968C0F87B +:104CE000AC10B2490B68C0F8CC304B68C0F8D0307B +:104CF0008B68C0F8D430CB68C0F8D8300969C0F8E8 +:104D0000DC105168C0F8E8101168C0F8E410704772 +:104D100070B506460C46994D6FF01E01401A14D02E +:104D2000083812D0001F05D0001F0ED008380CD054 +:104D3000001F10D104F120002862EFF3148040F02E +:104D40000200E862286AA86205E004F120002862F7 +:104D5000EFF31480E862EFF308806862EFF30580F8 +:104D60002863EFF300806863FFF7C6FDA863EFF3E5 +:104D70001080E863EFF311802864EFF31380686418 +:104D8000F1EE100AA864EE64002004E054F820104C +:104D900045F82010401C0828F8D370BD70B5774C3A +:104DA000A16D3C2901D30021A165A56D3221794A6D +:104DB00001FB05260A4601463046FFF797FD002015 +:104DC00086F83100681CA06570BD70B50146744658 +:104DD0002046FFF79DFFFFF741FF2046FFF78AFEC1 +:104DE00000F09AF8002832D100F034F805F068F9A4 +:104DF000F32005F0DFF96E484FF00054002505E080 +:104E00002178641C05F0BCF930466D1C461CB5F5D4 +:104E1000C03FF5D3532105F0B3F95221304605F0D8 +:104E2000AFF9741C4121204605F0AAF9641C4D21FC +:104E3000204605F0A5F95F48C046C04604F10D00C4 +:104E4000FFF7BAFE05F045F95B4800F01FF8BDE832 +:104E5000704054E510B505F033F9F32005F0AAF9D8 +:104E6000564C3820206002E020680830206020681E +:104E7000402807D2002105F032F90928F4D0FFF7C5 +:104E80003EFDFCE7BDE8104005F023B938B5044607 +:104E900005F016F9F32005F08DF93D48016820462C +:104EA00005F052F9241DFF21204605F069F9641C24 +:104EB000404D6979204605F063F9641CE978204685 +:104EC00005F05EF9641C2979204605F059F9641C47 +:104ED0002978204605F054F9641C6978204605F0CD +:104EE0004FF9641CA978204605F04AF9F521601CA9 +:104EF00005F046F9BDE8314005F0EBB880B505F0A6 +:104F0000DFF8F32005F056F9AA212D4805F038F90D +:104F1000BDE8014005F0DDB8002029490978F529F0 +:104F200000D101207047000025730A0010B5044627 +:104F3000FFF73CFCC0B2142800DB132002462146D8 +:104F40002048FFF7D3FC4FF0AC30007810BD80B59F +:104F500000F049F8BDE80140D1E480B5FFF7CEFF8D +:104F60004FF4C83212490020BDE8084001F0B0BF3C +:104F70000CED00E00400FA05D87B0020C81C0120DD +:104F8000FC4F0508FECAFECA087C002094EA0020F7 +:104F9000E47C002090B20020EC0B012000ED00E04A +:104FA00020ED00E004E000E0A0ED00E034EF00E0E0 +:104FB000000006089C2D0120F4FF0708442E012064 +:104FC000FFFF0708B02B012010B500F01BF80FF20F +:104FD00070142046FFF7EAFB024621460020BDE898 +:104FE000104001F075BF80B501214FF4802003F01F +:104FF00002F9012003F0CEFC94210F20BDE804400B +:1050000003F06BBE80B501214FF4802003F0F3F86C +:10501000012003F0BFFC00210F20BDE8044003F095 +:105020005CBE10B5002401214FF4802003F0E3F8AA +:10503000012003F0AFFC0F2003F05CFE942800D1A8 +:105040000124204610BD00004E6F2053796D626F21 +:105050006C00000030782530387800000A0A0A0A0F +:105060003D3D2043726173682044756D7020496E28 +:10507000666F726D6174696F6E203D3D0A000000BD +:105080004669726D776172652056657273696F6EDD +:10509000203A2025640A00000A49505352203D203E +:1050A000307825782C2041505352203D20307825EF +:1050B000782C2078505352203D20307825782C20B1 +:1050C0005046534352203D20307825780A00000096 +:1050D0000A6661756C74206D6F6465203D203078C0 +:1050E000257800000A5043203D20307825782C2078 +:1050F0004C52203D20307825780A00000A3C43724B +:105100006173682043616C6C20537461636B3E0A69 +:105110000000000030782578202025730A00000068 +:105120000A0A3D3D20526563656E74204C6F67200E +:105130004D65737361676573203D3D0A0000000093 +:10514000534E414D590000000000000038B5FFF7F4 +:10515000B6FBDFF830068468DFF82806002101710D +:10516000FFF7A7FB002C2CD02068002829D0607CFA +:105170002168497CC0B2814223D1256800E00D003E +:105180002968002903D04A7CC0B28242F7D0FFF7D9 +:1051900096FBDFF8F0050069A04203D1DFF8E405D3 +:1051A00021680161E06921680160C861E5612968E1 +:1051B0002160002900D0CC612C6095F8410085F871 +:1051C0004000FFF776FB31BD10B5FFF778FBDFF845 +:1051D000B8050468DFF8AC05006A201A012832DA45 +:1051E000DFF8A005046A04E0DFF898050462FFF721 +:1051F00060FBDFF898050078C00722D5FFF75FFB5A +:10520000DFF8880500788007EED5DFF880050078A4 +:1052100010F0FD00DFF874150870FFF74AFBDFF8A7 +:105220006405006A8442FAD0DFF858050462DFF8AA +:1052300058050068401CDFF850150860DFF8441579 +:105240004862FFF73CFB10BD38B504000020A07198 +:10525000206A10F57A606062E069002802D02000C0 +:10526000E1698847FFF725FBE56809E0E868616ABE +:10527000401A002801D5E8686062FFF71AFB2D6824 +:10528000002D1AD0FFF71BFB2069002804D0687C92 +:105290002169497C884212D3287C4007EDD5E86813 +:1052A000216A401A0128E1DA280000F09EF9FFF790 +:1052B00006FB287C0028D9D101E0FFF700FB31BDB7 +:1052C00070B50400002060700120207004F0EEFE34 +:1052D0000078C0B2CD2802D07D20FFF783FAA06805 +:1052E00000280CD0A068406C002808D0A068406C52 +:1052F00001680800002802D0A0684068884794F838 +:10530000290000280BD0A06894F8281080F84010DD +:10531000DFF870040079002801D0FFF717FFDFF8ED +:1053200070040078002823D0DFF868040068DFF8F4 +:105330005414096A401A002804D5DFF854040021E7 +:10534000017015E0FFF7BBFA04F0F8FF0500FFF766 +:10535000B0FAA068002808D0A068406B2818DFF8D1 +:1053600038140968401AA1684863DFF82C04056006 +:10537000A068002808D0A068007C002804D1A0689C +:10538000006B401CA1680863206900282BD003E053 +:1053900030682061FFF78DFAFFF791FA2669002E39 +:1053A00027D0357CEDB2002D23D0680710D5F068EA +:1053B000216A411A012906DA300000F016F9307C22 +:1053C000002805D10FE0616A411A002900D560620A +:1053D000EDB215F0FB001028DAD1B06880684068A3 +:1053E000007C0028D4D1FFF76AFA02E02000FFF722 +:1053F0002BFFA0790028F9D1DFF890030078C007CF +:1054000001D5FFF7E1FE002060712069002839D046 +:105410002069007C002805D0206980688068406889 +:10542000A06001E02069A060A06890F84C006428AA +:1054300002D08020FFF7D6F9A068806A0078CD28D6 +:1054400002D07820FFF7CEF9A068406C002808D081 +:10545000A068406C41680800002802D0A06840683D +:105460008847A06890F8400084F8280084F8290054 +:10547000DFF810038068C06A401CDFF808138968F1 +:10548000C8620BE0002084F82900002084F828007E +:105490000020A06000202070FFF70BFA200070BDF4 +:1054A00080B504F079FFDFF8F4120978002806D0FF +:1054B000022810D009D3042815D010D314E00029F5 +:1054C00002D0A320FFF78EF911E0002902D1A42019 +:1054D000FFF788F90BE0A620FFF784F907E0A72083 +:1054E000FFF780F903E002E0A820FFF77BF901BD98 +:1054F00010B504F051FF0400DFF8A0020078002886 +:1055000002D0A020FFF76EF9002C05D0022C08D0A5 +:1055100003D3032C09D00CE00EE0A420FFF762F9BE +:105520000AE0A620FFF75EF906E0A720FFF75AF988 +:1055300002E0A820FFF756F910BD80B504F02CFF5B +:10554000002805D0022808D006D3032809D00CE093 +:10555000A320FFF747F90BE00AE0A620FFF742F986 +:1055600006E0A720FFF73EF902E0A820FFF73AF98E +:1055700001BD80B5DFF80C020078002802D1972029 +:10558000FFF730F9DFF8FC010078401EDFF8F41176 +:105590000870C0B2002827D1DFF8E8014068002871 +:1055A00022D0FFF78CF9DFF8DC01406800280BD02F +:1055B000DFF8D00101210170DFF8C801FFF769F9B8 +:1055C000DFF8C00100210170DFF8B8014078F02158 +:1055D000084202D09920FFF705F9DFF8A8014078CA +:1055E000002801D1FFF765F901BD10B581680029D8 +:1055F0000CD0DFF89011096AC16081680A684968B7 +:10560000002A00D051600A6000218160017C11F005 +:1056100003010174C9B2002945D1DFF86811096995 +:10562000002929D1DFF85C110861DFF85801007802 +:1056300000280CD1DFF84C0101210170DFF8440192 +:10564000FFF727F9DFF83C010021017003E0DFF8E4 +:10565000340101214171DFF82C014078F02108422A +:1056600002D09920FFF7BEF8DFF818014078002833 +:1056700001D1FFF71EF916E0427C4B7CD2B2934277 +:10568000D0D38142D1D04B7CD2B29A420BD103000D +:10569000FFE71B68002BDED05C7CD2B2A242DAD1DD +:1056A0008B42F6D1BEE710BD10B50400627C3548D0 +:1056B0000078401C33490870394800E00800016850 +:1056C000002903D04B7CD2B29A42F7D32160E0612B +:1056D000046000290AD0CC61487CD2B2904202D149 +:1056E00094F8410000E0002084F84000207C00286D +:1056F00012D1FFF7E4F82000FFF777FF2148407848 +:10570000F021084202D09920FFF76CF81D4840783C +:10571000002801D1FFF7CDF8FFF72BFF10BD10B522 +:105720001848047817480078401C16490870154836 +:10573000FFF7AFF81348047012484078F021084290 +:1057400002D09920FFF74EF80E484078002801D18A +:10575000FFF7AFF810BD10B504F024FE0948012191 +:10576000017004F0A3FC04006846C046021B203A06 +:10577000012A03DBCD212000FCF770FD094801213F +:10578000017010BD087C0020842E0120D82E01203D +:10579000D92E01209C2E0120882E0120DA2E0120F6 +:1057A000147C0020DC2E0120506002604160086003 +:1057B00070470A68F8E74860016070470168406810 +:1057C000F9E7F8B50600DFF89C5802D505F1580056 +:1057D000F2BD05F158040020296F00E0096805F1C9 +:1057E0007002914204D00C46A2689642F6D1012084 +:1057F000002840D1A86FD0F88070182004F0F6FD82 +:105800000446A660002F05D0B74203D2B6FBF7F0DE +:10581000784300E03046E060002F02D0B74200D26B +:105820003E46266100202075DFF83C683078401C39 +:1058300030707078F021084202D09920FEF7D2FF34 +:10584000FFF73DF87078401C707005F1700120463C +:10585000FFF7AFFF7078F021084202D09920FEF7E1 +:10586000C1FF7078401E7070C0B2002801D1FFF7F0 +:1058700020F8FFF77EFE2046F2BD38B5044694F9C5 +:105880001400002829D1DFF8E0572878401C287040 +:105890006878F021084202D09920FEF7A3FFFFF7B5 +:1058A0000EF86878401C68702046FFF787FF204696 +:1058B00004F0B4FD6878F021084202D09920FEF788 +:1058C00091FF6878401E6870C0B2002801D1FEF7D1 +:1058D000F0FFBDE83140FFF74CBE31BDF8B50446DE +:1058E00008466FF00045FFF76CFF064694F9050087 +:1058F00094F90410814214D1C01C800004F076FD9C +:10590000074694F90500012807DB82002168384624 +:10591000FEF7ECFF206804F081FD27606079C01C71 +:10592000607194F90400411C2171216841F82060E4 +:10593000DFF83807864202D0307D401C30750020E9 +:1059400008E0216851F820108A68954201DB15466D +:10595000A160401C94F904108842F2DBF1BDF8B557 +:1059600004466FF00046DFF8FC2602F1580502F10C +:1059700058004FF0FF33002704E0664501DB664620 +:1059800075467F1C94F904C067450DDAD4F800C051 +:105990005CF827E0DEF808C0002BEED58C45ECD192 +:1059A00070463B465BB2ECE7002B11D4BCF1010F13 +:1059B0000EDB06E0216801EB8306766841F8236080 +:1059C0005B1C94F904104E1EB342F3DB491E217197 +:1059D00002F15801884204D0017D491E0175FFF78C +:1059E0004CFFA560F1BD10B4C26A836B406C9C682B +:1059F000002C02D56FF0004300E01B698468002C86 +:105A000002D56FF0004000E00069984200DD1846C2 +:105A1000D2685143884201DB012000E0002010BC25 +:105A2000704738B5DFF83C168A6FD36E012490F9C1 +:105A30000850AC402343D36601F66C11FFF7B9FE62 +:105A4000012032BD10B5DFF81C16896FCA6E012324 +:105A500090F90840A3409A43CA66FFF7AFFE0120C1 +:105A600010BD01207047F8B5044615461E4604F1E6 +:105A70002400FFF733FF06EB460004EB80072946BE +:105A800007F13000FFF72AFF97F934000090334602 +:105A9000627A94F908100FF2D850FCF783FCF1BD3C +:105AA000F8B5044615461E4604F12400FFF757FFDB +:105AB00006EB460004EB8007294607F13000FFF7AC +:105AC0004EFF97F9340000903346627A94F908103B +:105AD0000FF2AC50FCF766FCF1BDC16A8A68012A7E +:105AE00009DB0969012906DA006D002801D50020CB +:105AF0007047022070470020704701EB410200EB25 +:105B00008201896B8A68012A09DB0969012906DAA1 +:105B1000006D002801D5002070470220704700204A +:105B20007047002900D5D8E7E7E7012900DA01210D +:105B300013460A4697E7012900DA012113460A466F +:105B4000AEE7DFF82005C06A417A481E8041C00FE9 +:105B5000704713464FF0FF32114684E713464FF06B +:105B6000FF3211469CE780B5DFF8F8040068417AFF +:105B7000002902D1006E40688047012002BD80B537 +:105B8000FFF760FFDFF8DC040068417A002902D1EA +:105B9000006E80688047012002BDB1F57A7F01DC8C +:105BA0004FF47A7113460A464FF4FA715BE7B1F588 +:105BB0007A7F01DC4FF47A7113460A464FF4FA718A +:105BC0006EE710B50446002922D5E06A81680129F4 +:105BD0001CDB0069012819DA02212046FFF703FFC8 +:105BE000002813D194F9540010F1010F04D10020C2 +:105BF00084F85400012010BD002807D101206077EF +:105C00004FF0FF3084F85400022010BD002010BD7A +:105C1000BDE8104071E74FF0FF3280F8542000E7F4 +:105C2000C92900DAC82113460A4642211BE7C929BF +:105C300000DAC82113460A46422131E710B504466E +:105C4000002927D5E06A8168012921DB0069012844 +:105C50001EDA03212046FFF7C6FE002818D194F96A +:105C60005400014611F1010F04D1002084F85400C2 +:105C7000012010BD002803D1012084F8540010BD7C +:105C8000012905D14FF0FF3084F85400022010BDE7 +:105C9000002010BDBDE810402FE74FF0FF3280F824 +:105CA0005420DFF8C023926FD2F88020C8325242CD +:105CB0000265B6E6DFF8AC23926FD2F88020C832D6 +:105CC00052420265ADE613464FF0FF321146CAE676 +:105CD00013464FF0FF321146E2E680B5FFF7A1FE12 +:105CE000FCF7DFFA00210175012002BD80B5FFF746 +:105CF000A9FEFCF7D6FA00210175012002BD38B5D6 +:105D0000D848C469856A687A002802D1607A002878 +:105D100002D0206E40688047687A002804D1617AFA +:105D2000481E8041C00F32BD002032BD000000007F +:105D30002DE9F0410C46CB4D55F82060307206F14C +:105D400054070FF24C313961152800F22281DFE847 +:105D500010F01600260032004A003E005600660091 +:105D60007600A50085009500B500C500D300E000D1 +:105D7000ED00FB000801150115011501150106F1E3 +:105D80000800062141760A21817605F674114160EA +:105D900040F2DC5181600FF214303861F9E006F115 +:105DA0000800062141760A21817605F6507141608E +:105DB00064218160EDE006F108000C21417610219C +:105DC000817605F6C871416010218160E1E006F13D +:105DD0000800072141760B21817605F6BC714160F0 +:105DE0000B218160D5E006F10800062141760A21E9 +:105DF000817605F6D87141600A218160C9E006F11B +:105E00000800062141760A21817605F6E471416099 +:105E10004FF4FA7181600FF2E8203861B9E006F1C1 +:105E20000800262141762A21817605F58851D8314E +:105E300041602A2181600FF238303861A9E006F113 +:105E40000800032141760721817605F591514160D3 +:105E5000072181600FF2E02038619AE006F1080026 +:105E60000C2141761021817605F590511031416069 +:105E7000102181600FF2A42038618AE006F1080049 +:105E8000022141760621817605F590512831416045 +:105E9000062181600FF2BC2038617AE006F108002B +:105EA000052141760921817605F59051091D416052 +:105EB000092181600FF22C2038616AE006F10800A8 +:105EC000062141760A21817605F5905130314160F5 +:105ED0000A2181600FF2F01038615AE006F10800E3 +:105EE000012141760521817605F590513C314160D3 +:105EF00040F2866181604CE006F1080001214176A4 +:105F00000521817605F5C051CC31416005218160C4 +:105F10003FE006F108000C2141761021817605F55D +:105F2000C051D43141601021816032E006F1080097 +:105F3000112141761521817605F5C051E43141608A +:105F400041F66631816024E006F1080011214176B6 +:105F50001521817605F550514C3141601521816044 +:105F600017E006F10800042141760821817605F545 +:105F7000C051C4314160082181600AE006F1080087 +:105F8000012141760521817605F6B4714160052134 +:105F9000816006F108000021017541758175017667 +:105FA000C1600161417006F128080846C8F8280060 +:105FB0004FF0FF3086F854007880062206F1580032 +:105FC000FCF74CF9002010E000EB400106EB8101EA +:105FD000002281F8342034314A7005F158024A60B9 +:105FE00006EB800100228A64401C0228ECDB0020C2 +:105FF00086F8280088F8010005F15800C8F8040068 +:10600000FC60BDE8F08110B5164C04F017FAA067EB +:10601000002006E0682111FB00417C3144F820108B +:10602000401C1628F6DB4FF0FF302066606600202B +:10603000A06605F089FC06F085FA06F010FF07F06F +:10604000D3FB08F033FB07F096FE08F04FF908F099 +:1060500097FB08F0C2FE08F098FBBDE8104008F07E +:10606000A5BB000008400020087C00206040002004 +:1060700041442025642025642025642025640000F7 +:10608000524D2025642025642025642025640000CD +:10609000635A0008235A0008635A0008455A00084A +:1060A0002B5B0008375B0008235B0008435B00089C +:1060B000235A0008435B0008455A00082B5B000880 +:1060C000375B0008235B0008675B0008235A000861 +:1060D000635A00087F5B0008535B00085D5B0008A3 +:1060E000235B0008635A0008175C0008635A000825 +:1060F000455A00089B5B0008AF5B0008C35B0008C3 +:10610000635A00089B5C0008635A0008455A00085F +:10611000215C00082F5C00083D5C0008635A000801 +:10612000B55C0008635A0008455A00082B5B00085C +:10613000375B0008235B0008635A0008DB5C00083B +:10614000635A0008ED5C0008C75C0008D15C0008D9 +:10615000235B0008635A0008235A0008635A0008AA +:10616000455A00082B5B0008375B0008235B0008DA +:10617000635A0008235A0008FF5C0008455A0008CB +:106180002B5B0008375B0008235B0008DFF8140E68 +:10619000007870472DE9F0418AB004F04FF90446C9 +:1061A000DFF8045E2E6842E096F9080007283DD02B +:1061B0000B283BDA062839D006F10807B86C00280E +:1061C00003D5D4F880100818B8644FF0FF3130467A +:1061D000FA6D926990478046B8F1010F04D197F8A3 +:1061E0004C00B96D09698847B8F1020F0BD1797E6F +:1061F00038697A688018BA6D52699047002802D0D1 +:10620000304608F009FF00213046FA6D9269904748 +:10621000022801D10120B87501213046FA6D92693A +:106220009047022802D1304608F0A2FF3668AE42FD +:10623000BAD1D4E91C01002901D100280CD00A20D0 +:106240008DF8080002208DF80000D4F88000ADF829 +:10625000220000A801F0CCFD01200AB0BDE8F081C9 +:1062600030B585B004460D46CA208DF80000288858 +:10627000ADF801000220ADF80300BDF80100001DDB +:1062800004F0B4F8CDF8090002220DF10301FEF785 +:106290002DFB02222946DDF80900801CFEF726FBB3 +:1062A0002A882146DDF80900001DFEF71FFB0020AB +:1062B000288000A9DFF8F40C09F04CFA05B030BDD5 +:1062C000C0F54060322801DA012070470020704795 +:1062D00080B5FBF7E6FF407B002804D008F022FEE3 +:1062E000DFF8CC1C086001BD80B508F01BFEDFF8AC +:1062F000C41C086001BDDFF8BC0C0068704718B40E +:1063000000F10C030422DFF8AC1C5C7DDB68C06884 +:106310001818201818BCFEF7E9BA30B41488651CA8 +:106320001580052565541488651C158063541388F1 +:106330005C1C1480007A585430BC7047F8B50E4687 +:1063400014461D4629884A1C2A8037220A55298866 +:106350004A1C2A80027A0A5500F108077A7E78687A +:10636000311828880019FEF7C1FA2888797E40186C +:106370002880787E796871184058DFF8341C0968E5 +:10638000401A0090042200A928880019FEF7AEFAEE +:106390002888001D288080B2FFF792FF002803D0D4 +:1063A00029462046FFF75CFFF1BD2DE9F041044688 +:1063B0000D4616461F46DDF8188008E043463A466B +:1063C00029462046FFF7BAFF94F822002D18B5425F +:1063D000F4DBBDE8F081F8B5044615461E46069F7D +:1063E00000972269FFF7E1FF2069854206DA0097EE +:1063F00033462A4600212046FFF7D7FFF1BD00F1C2 +:1064000010018A688B7CD2188A600069824201D1AF +:106410000020886000208873704770B582B000F15A +:10642000140674684569002D07D500920B46224674 +:10643000B17B6118FFF7CFFF73BDAC4200920B46F2 +:106440002246294602DAFFF7C6FF73BDFFF7ADFF0C +:1064500073BD70B504460D461646FFF7DEFF0123F7 +:10646000324629462046FFF758FFA069606170BD9B +:106470002DE9F84304460D46164603F0DFFF80463B +:10648000FBF70FFF81462046FFF739FF04F10807AD +:10649000386C012849DB99F80A00002821D0B87D22 +:1064A000002866D000207864B87E3A69F9688B1AB3 +:1064B000834205D0002910D1BB689B1A83420CD1BE +:1064C0003B7E002B06D000962B4682182046FFF715 +:1064D00082FF02E04FF0FF30F8602046BDE8F24353 +:1064E0008DE7786CD8F88010401A7864012815DAA6 +:1064F000386C7864324629462046FFF78EFFB87D17 +:10650000002808D033462A4639692046FFF716FF8F +:106510002046FFF774FF3869F8602AE0B87D00284C +:1065200027D02046BDE8F24369E7B87D002820D097 +:1065300099F80A00002811D094F90800072813D10F +:1065400033462A4639692046FFF7F8FE7A7894F9EF +:1065500008100FF22400FBF725FF05E033462A461A +:1065600039692046FFF7EAFE2046FFF748FF386901 +:10657000F860BDE8F1830000415020537573202579 +:1065800064202564000000002DE9F04104460D461A +:10659000DFF8146A37681BE097F90800062811D164 +:1065A00007F1080898F81910D8F81000D8F8042056 +:1065B0008018D8F8582052699047002802D001204E +:1065C00088F816002A4621463846FFF751FF3F68F3 +:1065D000B742E1D1BDE8F081F8B504460D46DFF8D9 +:1065E000240CC6690FF23400FBF7DCFE06F10C0741 +:1065F000797DF868F26880187A6D526990470028B2 +:1066000009D00120B874707A002804D02A462146A7 +:106610003046FFF72DFF0120F2BD00003D3E5055F2 +:10662000500000000288D21C02800A80704780B5AA +:106630000B889B1AADF80030BDF80030002B09D054 +:106640001018012100F8031C022200A9801EFEF789 +:106650004DF901BD0888C01E088001BD2DE9F04F2D +:10666000ADF64C1D04460D4603F0E8FE0746FBF769 +:1066700018FE804610A840F60811FEF775F80020B5 +:106680008DF8020006A82821FEF76EF801A8142153 +:10669000FEF76AF80020ADF800000646D7E91C01B5 +:1066A000002902D1002800F0748398F9090009F04C +:1066B0002BFD002800F06D8300A92846FFF7B2FFEC +:1066C000B0461CE0D7E91C01424609F02FFF00F05C +:1066D000010011F0000101D100280ED008EB880064 +:1066E000DFF8241B01EBC00292F90900012804D154 +:1066F0000DF1020110A8126A904708F10108B8F1E3 +:106700002C0FDFDB37461AE02888411C298099F8D6 +:10671000021001552888FFF7D3FD00280DD0BDF8E1 +:10672000002029462046FFF782FF29462046FFF732 +:1067300097FD00A92846FFF775FF7F1C7FB29DF8E3 +:106740000200874280F21D832988481C288040F27D +:10675000211010FB07F010AA825C0A5529884A1CF8 +:106760002A8010AA00EB020898F801000855288832 +:10677000411C298008F1010999F80110015599F887 +:10678000010003281ED0092800F049810C2800F0E0 +:1067900023811A2800F042821B2800F056811C2811 +:1067A00000F070821D2800F063811E2800F05A82DC +:1067B000252800F09982262800F0D382282800F0AE +:1067C000AE82A1E798F80100032805D12888411C72 +:1067D000298099F8021001552888411C298099F8D0 +:1067E0000310015599F80300C0280DD1B8F83020E6 +:1067F000D8F8321028880019FEF778F82888B8F8F9 +:1068000030100818288085E7711C00064ED401A8B6 +:1068100008F1040252783254C9B298F806200A549A +:10682000491CC9B200220A544A1C08F20601D2B21D +:106830004B781354521CB8F80E30D2B21E0A1654BC +:10684000521CD2B21354521C08F20E03D2B29E78DC +:106850001654521CD2B2DB781354521CD2B298F8A0 +:1068600012301354521CD2B298F813301354521CE5 +:10687000D2B28B781354521CD2B2C9781154511C25 +:10688000C9B298F80A200A54491CC9B298F80B20DA +:106890000A544E1CF6B2324601A928880019FEF7A8 +:1068A00025F8288850FA86F0288033E7D8F80520A4 +:1068B00006A8130C3354C9B2130A0B54491CC9B2AD +:1068C0000A54491CD8F80920C9B2130C0B54491CAE +:1068D000C9B2130A0B54491CC9B20A54491CD8F84E +:1068E0000D20C9B2130C0B54491CC9B2130A0B5426 +:1068F000491CC9B20A54491CD8F81120C9B2130C5A +:106900000B54491CC9B2130A0B54491CC9B20A548E +:10691000491CD8F82720C9B2130C0B54491CC9B222 +:10692000130A0B54491CC9B20A544A1C08F2270125 +:10693000D2B20B791354521CD2B24B791354521C5D +:10694000CB88D2B21E0A1654521CD2B21354521C17 +:10695000D2B2097A1154511CD8F81520C9B2130CBF +:106960000B54491CC9B2130A0B54491CC9B20A542E +:10697000491CD8F81920C9B2130C0B54491CC9B2D0 +:10698000130A0B54491CC9B20A54491CD8F81D20DB +:10699000C9B2130C0B54491CC9B2130A0B54491C3D +:1069A000C9B20A54491CD8F82120C9B2130C0B549F +:1069B000491CC9B2130A0B54491CC9B20A544E1CD3 +:1069C000F6B2324606A928880019FDF78FFF2888FD +:1069D00050FA86F028809DE608F10301B1F9030022 +:1069E000C0F3072242EA0020A1F80300B1F9070032 +:1069F000C0F3072242EA0020A1F80700B1F9050020 +:106A0000C0F3072242EA0020A1F8050009222888E5 +:106A10000019FDF76BFF2888093028807AE628885E +:106A2000034698F80110032909D1022208F1030155 +:106A30001819FDF75BFF2888801C28806AE6401C37 +:106A4000288099F80200185564E62888411C29809E +:106A500099F80210015598F8010005287FF45AAE04 +:106A60002888411C298008F104014978015551E624 +:106A700008F1030998F80100012840F0BF80288838 +:106A8000411C298099F8041001554FF0000A9CE040 +:106A90001B2010FB0A9BDBF80C20DBF808100FF220 +:106AA000FC20FBF77FFCDBF81800010221F0FF114E +:106AB000000A00F0FF100843CBF818004FEA3040FE +:106AC000CBF8180004220BF1180128880019FDF7F3 +:106AD0000DFF2888001D2880DBF80800010221F046 +:106AE000FF11000A00F0FF100843CBF808004FEA3E +:106AF0003040CBF8080004220BF108012888001967 +:106B0000FDF7F4FE2888001D2880DBF80C00010248 +:106B100021F0FF11000A00F0FF100843CBF80C0031 +:106B20004FEA3040CBF80C0004220BF10C0128880E +:106B30000019FDF7DBFE2888001D2880DBF8100017 +:106B4000010221F0FF11000A00F0FF100843CBF80A +:106B500010004FEA3040CBF8100004220BF1100176 +:106B600028880019FDF7C2FE2888001D2880DBF860 +:106B70001C00010221F0FF11000A00F0FF10084381 +:106B8000CBF81C004FEA3040CBF81C0004220BF17C +:106B90001C0128880019FDF7A9FE2888001D2880FF +:106BA000BBF81600010A41EA0020ABF816000222E9 +:106BB0000BF1160128880019FDF798FE2888801C23 +:106BC00028800AF1010A5FFA8AFA99F804008245DE +:106BD000FFF65EAFB8F81B21D8F81D112888001900 +:106BE000FDF784FE2888B8F81B1108182880B8F82B +:106BF0001B110FF2B810FBF7D5FB8BE505287FF4CE +:106C000089AD2888411C298099F8021001552888EF +:106C1000411C298099F8031001557BE508F1030117 +:106C200098F80100032805D12888421C2A8098F88A +:106C30000A200255D1F80100020222F0FF12000AD8 +:106C400000F0FF101043C1F801004FEA3040C1F8D6 +:106C50000100072228880019FDF748FE2888C01D7A +:106C6000288057E508F103010888020A42EA00205B +:106C70000880022228880019FDF738FE2888801C29 +:106C8000288047E508F1030098F8011001297FF4F6 +:106C900041AD99F80210012918D129884A1C2A808F +:106CA00000780855B8F80420D8F80610288800198C +:106CB000FDF71CFE2888B8F8041008182880B8F8DA +:106CC00004100FF2FC00FBF76DFB23E502297FF4B3 +:106CD00021AD29884A1C2A8002780A5529884A1C35 +:106CE0002A80C079085515E52888411C2980B9F803 +:106CF000021001552888411C2980B9F90210091297 +:106D00000155B9F90220D8F8051028880019FDF7B7 +:106D1000EDFD2888B9F9021008182880FAE42888BF +:106D2000411C2980B9F8021001552888411C29808E +:106D3000B9F90210091201552888411C298008F16F +:106D4000040149780155B9F90220D8F806102888BD +:106D50000019FDF7CBFD2888B9F902100818288022 +:106D6000D8E408F103010888020A42EA00200880FA +:106D7000022228880019FDF7B9FD2888801C288088 +:106D8000C8E4BDF8002029462046FFF750FC09F072 +:106D9000E9F90DF64C1DBDE8F08F00004C54204E73 +:106DA0004D47202564202564000000004F4A483AE2 +:106DB00020415442442073697A653A2025640000DA +:106DC0004F4A483A20415044522073697A653A202C +:106DD000256400002DE9F04105460E46FBF761FAF7 +:106DE0000746DFF8944D2078401C20706078F02131 +:106DF000084202D09920FDF7F5FCFDF760FD6078B0 +:106E0000401C607097F81880B8F1000F26D03088C9 +:106E1000404480B2FFF754FA002803D03146284698 +:106E2000FFF71EFA3088411C31800321415530881C +:106E3000411C318000F80580424607F11901308875 +:106E40004019FDF753FD308840443080FF22002177 +:106E500007F11900FBF702FA002038766078F0217C +:106E6000084202D09920FDF7BDFC6078401E60709A +:106E7000C0B2002801D1FDF71CFDBDE8F041FEF7CE +:106E800078BB38B504460D46FBF70BFA817A00292A +:106E900009D1417B002906D129884A1C2A80062273 +:106EA0000A550121417331BD38B504460D46288885 +:106EB00000280CD02046FFF78DFF29462046FFF71B +:106EC000E0FF29462046BDE83440FFF7C9B931BD8F +:106ED00014B585B0049101A90022134614461CC1C3 +:106EE0000A21ADF8001004218DF804108DF805007A +:106EF0000A4605A90DF10600FDF7F8FC042204A9D5 +:106F00000DF10A00FDF7F2FC00A901A8FFF7A8F9AE +:106F100006B010BD80B5FBF7C4F94FF49671FBF7CE +:106F2000ACFB07208DF802000120ADF8000000A99D +:106F30000DF10200FFF794F901BD2DE9F041DFF8F2 +:106F40003C4C6068002828D0218888421FD003F07C +:106F50004DFA054666682788A6EB07081FFA88F8E9 +:106F60004246381900F108012846FDF7BFFC3A46B1 +:106F700004F1080108EB0500FDF7B8FC324629468C +:106F800004F10800FDF7B2FC284603F047FA6268F6 +:106F900004F108010520FFF79BFF002060602080BE +:106FA000BDE8F081D42E01207449002074A6002091 +:106FB000742E0120782E012080B503F03FFA0621BF +:106FC00080F884108430417007218170C170017194 +:106FD00001BD2DE9FC4105460F469046FBF761F9DE +:106FE0000026D5F809100C1D2A78114601295BD01E +:106FF0000F2932D0352936D0802900F081808129AF +:1070000000F08880822900F08580852900F0828048 +:10701000862900F07F8088297CD08A2900F0828030 +:107020008B2900F09B808C2900F0A7808D2900F02F +:10703000AF80DD2900F0B980DF2900F0CF80F02992 +:1070400014D0F4291DD0F62923D0F82941D0F929EC +:107050002FD0FF2900F0A18059E0807D2070FFF73C +:10706000ABFF012054E00120207051E00422DFF842 +:10707000101B2046FDF73AFC0120FDF7DBF901204B +:1070800046E0042200F110012046FDF72FFC01200C +:107090003EE0032221463046DFF8E83A9B681B6E4B +:1070A0001B6A9847012033E0204609F06DFA012061 +:1070B0002EE0B5F80120B5F80300C010C0EB0011B8 +:1070C000D5F8050000EB81112046FDF70FFC0120EB +:1070D0001EE03046ADF8040001206979012900D195 +:1070E0000320FCF72EFCFCF768FCADF80400FCF76D +:1070F0007BFC022201A92046FDF7F8FB012007E0F6 +:10710000D5F8050020702146304608F0DEF83046FC +:10711000BDE8F68130462070214602F07F0008F07D +:10712000D4F8F4E701202070DFF8580A45683746A4 +:10713000287F002801D13046EAE7687A002803D189 +:10714000286E4068804707462046296EC9698847EF +:10715000002FDCD0286E80688047D8E70120B5F882 +:107160000310C1F3C101091D884040F002002070E6 +:107170002146012008F0A9F8C9E701782170C178FB +:1071800061704179A1708079E07001202071BFE7C2 +:10719000204609F00DFA0646B9E704F10802211D60 +:1071A0002046FDF7F7F90120B2E76879DFF8D41936 +:1071B00051F82050687A00280CD0424639462846BB +:1071C000FFF747F9DFF8C019082009F0B3FA0120EA +:1071D000207001E030462070012099E76879DFF8DF +:1071E000A41951F82050286995F8221090FBF1F06D +:1071F000401E0090042200A92046FDF777FB0120E5 +:1072000086E700000840002048BE0020F0B593B09B +:107210000646FBF746F8054603F010F9D6F80910C4 +:107220000C1D3178002208924FF0FF320992174668 +:107230000A46A12A00F04281A22A00F06181A42A14 +:1072400000F06C81B12A00F0E182B22A00F0528491 +:10725000B82A00F07E81C12A00F0A681CD2A00F074 +:107260007F80CE2A00F09480D02A38D0D12A2ED028 +:10727000D22A39D0D32A40D0D42A42D0D62A4DD0CF +:10728000D72A4BD0D82A51D0D92A4FD0DB2A00F0A8 +:107290000081DC2A00F00481F12A4FD0F22A00F0AC +:1072A0008F80F32A00F0D380F52A00F0AB80F72A14 +:1072B00000F0BE80FA2A00F05484FB2A00F04484D7 +:1072C000FD2A00F0AA80FE2A00F04D8497E00021FC +:1072D0002846FBF710FAFFF730FE012090E000206F +:1072E000FDF7A8F801208BE001212846FBF703FAFF +:1072F000012009F06FFA012082E00020A87201202D +:107300007EE00120A87200206873E87A002840F02F +:107310002884012009F05EFA00F023BCD62901D1AF +:10732000012000E00020E872012069E0D92901D1A4 +:10733000012000E000202873012061E000210329E2 +:1073400080F20F840A180B5D82F88430022905D17F +:107350000A5D80F887200A5D80F88820491CEEE7E6 +:107360000025032D80F2FD83DFF81808466806EB40 +:107370004506022204EB450106F15800FDF7B6FA76 +:10738000B6F95810DFF80408FBF70CF86D1CE8E7B5 +:107390000025032D80F2E583DFF8E807066806EB99 +:1073A0004506022204EB450106F15800FDF79EFA5E +:1073B000B6F95810DFF8D807FAF7F4FF6D1CE8E7C4 +:1073C000297C090640F1CD832178090201F4E061AE +:1073D00062788918A0F88A10A178090201F4E061A6 +:1073E000E2788918A0F88C1004212046DFF8942751 +:1073F000D269126E92699047002840F0B283002053 +:1074000013B0F0BD032221460120DFF878379B68D6 +:107410001B6E1B6A98470120F2E71B2221460720BA +:10742000DFF860379B681B6E1B6A98470120E7E70F +:10743000DFF850078669306E806880470028DED00C +:10744000012221460520336E1B6A9847D7E7217831 +:1074500080F88E1090F88E00002806D04FF48051EE +:107460000020FBF781F90120CAE7DFF81807C1699E +:10747000497A826A527A51188069407A4018C0B2BB +:10748000002840F06E834FF480510020FBF76EF926 +:1074900067E3D6F80510DFF8FC06FAF783FFAEE7DE +:1074A000FDF73AFD002802D0FDF757FDA7E7FDF7ED +:1074B000B8FD0028A3D0FDF787FDA0E794F90050A0 +:1074C0000422611C08A8FDF711FAB6F8010006288D +:1074D00006DB0422611D09A8FDF708FA94F909707A +:1074E000042D04D1DFF89C060069A17A817200970F +:1074F000099B00220899284607F043FF20707EE789 +:1075000094F900500422611C08A8FDF7EFF900234C +:107510001A460899284607F0BDFF71E794F9005014 +:107520000422611C08A8FDF7E1F9B6F8010006285D +:1075300006DB0422611D09A8FDF7D8F994F909704A +:107540000097099B00220899284608F002F820704D +:1075500055E720780146032906D01A2911D025299C +:1075600013D0282915D018E060788DF80A0001287A +:1075700040F0F782A0788DF80B00204600F0EEFB7B +:10758000EFE2204600F0EAFBEBE2204600F0E6FBEB +:10759000E7E2204600F0E2FBE3E294F9011040B29A +:1075A00008F082FEC0B22BE7207801460E3908D0E1 +:1075B000091F03291CD9091F37D0491E00F09B80E1 +:1075C0000EE10E208DF8080060788DF80A00A17891 +:1075D0008DF80B10E2788DF80C200023ADF80D30FB +:1075E00052B249B240B2FBF7D7F800F0AEFBF7E079 +:1075F0008DF80800122802D161788DF80A1013283E +:1076000002D161788DF80B10142802D161788DF8C1 +:107610000C10152802D160788DF80A006278217864 +:10762000DFF87405FAF7BEFEDAE06078A1780904A5 +:1076300001EB0060E17800EB012021794018CDF8E2 +:107640000A006079A179090401EB0060E17900EB9F +:107650000120217A4018CDF80E00607AA17A090441 +:1076600001EB0060E17A00EB0120217B4018CDF8AE +:107670001200607B8DF81600A07B8DF81700E07B70 +:107680008DF81800207C8DF81900607C8DF81A00A8 +:10769000A07CE17C11EB002000B20146ADF81B108C +:1076A000217D00EB0120617D4018ADF81D00A07D1B +:1076B0008DF81F00DDF80A00002807D1DDF80E0064 +:1076C000002803D1DDF81200002809D00DF10A01CD +:1076D00084B068461622FBF7ABF90FBCFBF704F940 +:1076E0000DF10A0184B068461622FBF7A1F90FBC20 +:1076F00000F058FB74E060788DF809001D283ED139 +:10770000A0788DF81300A07801280ED1E0782179B7 +:1077100011EB0021ADF80A1089B20A469DF8091054 +:107720000FF27C40FAF73EFE5AE002280BD1E078D7 +:10773000217911EB0021ADF80C1089B20FF27040E5 +:10774000FAF730FE4CE003280BD1E078217911EBF9 +:107750000021ADF8141089B20FF26040FAF722FE52 +:107760003EE004283CD1E078217911EB0021ADF80E +:10777000161089B20FF25040FAF714FE30E02628B6 +:1077800009D1A0788DF80E00A078012828D1E078E2 +:107790008DF80D0024E01C2822D1A0788DF80D0072 +:1077A000A078012807D1E1788DF80A100FF2244063 +:1077B000FAF7F8FD14E0022807D1E1788DF80B10F4 +:1077C0000FF22440FAF7EEFD0AE0032808D005285E +:1077D00006D1E1788DF80C100FF22040FAF7E2FDA7 +:1077E00006208DF8280020780B900DF1310002A9B9 +:1077F0001822FBF71DF90B208DF830000020ADF8A2 +:107800004A000AA800F0F4FAC0B2F9E594F90000C1 +:1078100007F0EBFF012840F03F8120780146032963 +:1078200024D0062961D0092927D00C2941D00D295F +:107830004DD019297DD01A2964D01B2900F08E80E3 +:107840001C2900F0C9801D2900F0A1801E2900F02C +:10785000D080252900F0E980262900F0D88027294A +:1078600000F0EA80282900F00E8110E10322611C5B +:107870000DF10A00FDF73AF80EE10722611C0DF147 +:107880000A00FDF733F8BDF80A00010A41EA0020BA +:10789000ADF80A00BDF80C00010A41EA0020ADF87D +:1078A0000C00BDF80E00010A41EA0020ADF80E0000 +:1078B000F2E00322611C0DF10A00FDF717F8BDF894 +:1078C0000B00010A41EA0020ADF80B00E4E00322BE +:1078D000611C0DF10A00FDF709F8BDF80B00010A63 +:1078E00041EA0020ADF80B00D6E00122611C0DF149 +:1078F0000A00FCF7FBFF9DF80A100FF21430FAF7AC +:1079000051FDC9E00822611C0DF10A00FCF7EEFFF1 +:10791000BDF80D00010A41EA0020ADF80D0000237A +:107920009DF911209DF910109DF90F00FAF734FF11 +:10793000B2E00622611C0DF10A00FCF7D7FFBDF88A +:107940000A00010A41EA0020ADF80A00BDF80E0065 +:10795000010A41EA0020ADF80E009DE00422611CFE +:107960000DF10A00FCF7C2FFBDF80A00010A41EA66 +:107970000020ADF80A00BDF80C00010A41EA002021 +:10798000ADF80C000FF29420FAF70CFD84E0092208 +:10799000611C0DF10A00FCF7A9FFBDF80A00010AFD +:1079A00041EA0020ADF80A00BDF80C00010A41EAE6 +:1079B0000020ADF80C00BDF80E00010A41EA0020DD +:1079C000ADF80E0000239DF912209DF911109DF9CC +:1079D0001000FAF7E1FE5FE060788DF80A00A07809 +:1079E0008DF80B00A27861780FF23C20FAF7DAFCF0 +:1079F00052E00322611C0DF10A00FCF777FFBDF88D +:107A00000B00010A41EA0020ADF80B0044E005221A +:107A1000611C0DF10A00FCF769FFBDF80B00010ABB +:107A200041EA0020ADF80B0036E00922611C0DF19F +:107A30000A00FCF75BFF2FE00A22611C0DF10A002F +:107A4000FCF754FFBDF90A00C0F3072141EA00200A +:107A5000ADF80A00BDF90C00C0F3072141EA00208F +:107A6000ADF80C00BDF90E00C0F3072141EA00207B +:107A7000ADF80E00BDF91000C0F3072141EA002067 +:107A8000ADF8100008E060788DF80A0004E08DF889 +:107A9000080060788DF8090020780146052906D194 +:107AA0003E4801210170687A00280DD159E018295B +:107AB0000AD18DF8080060788DF80900A0788DF85B +:107AC0000A00E0788DF80B0000208DF8280020785F +:107AD0000B900DF1310002A91822FAF7A9FF0B2033 +:107AE0008DF830000020ADF84A000AA800F080F9B7 +:107AF000C0B285E42078052804D12848002101700F +:107B000001207DE41A280CD10522611C0DF10A0028 +:107B1000FCF7ECFEBDF80D00010A41EA0020ADF8CB +:107B20000D0001208DF8280020780B900DF1310018 +:107B300002A91822FAF77CFF0B208DF830000AA862 +:107B400000F056F9C0B25BE42078002802D0052886 +:107B500005D006E00FF2E000FDF7E8F901E0FFF7DD +:107B6000ECF901204CE404F10802211D2046FCF749 +:107B7000C9FC012044E40000087C002024F100201E +:107B8000E47C002008400020E892002024BE020887 +:107B900030BE02083CBE020848BE0208D42E0120B6 +:107BA0004C542053502025642C20256400000000F4 +:107BB0004C54205750202564000000004C542053A2 +:107BC00052202564000000004C54205341522025CF +:107BD000640000005B415044525D204E545F535797 +:107BE000554E2025640000005B415044525D204EFC +:107BF000545F545755532025640000005B415044A6 +:107C0000525D204E545F4241544348202564000099 +:107C100050443A2053432025640000004C54205324 +:107C20005320414444000000415044522041444408 +:107C3000202564202564000041505F524551554580 +:107C40005354000069487047F8B50C4616460125A4 +:107C500000282BD106EB8600644901EBC007F868C9 +:107C6000E040C00708D52346FA6831460FF2FC20F1 +:107C7000FAF798FB0220F2BD4FF0FF300090034668 +:107C80002A467968204607F07CFB00280CD0234662 +:107C9000FA6831460FF2E420FAF784FBF8682946C7 +:107CA000A1400843F8602CE00220F2BD012828D151 +:107CB00006EB86004D4901EBC007F868E040C007BD +:107CC00008D42346FA6831460FF2C020FAF76AFB5F +:107CD000032516E04FF0FF332A467968204607F067 +:107CE000D9FB002807D02346FA6831460FF2AC20B2 +:107CF000FAF758FB00E00325F8680121A14088430A +:107D0000F8602846F2BD08F0DBBA02B58AB000215F +:107D1000ADF8221001910A218DF8081000218DF88C +:107D200009108DF80A1005218DF800100190042229 +:107D30000AA90DF10900FCF7D9FD0020ADF82200D9 +:107D400000A800F055F80BB000BD80B509F0CCFAE2 +:107D50000FF25820BDE80240FAF724BB38B544784A +:107D600085780078032810D01A281AD1012C18D150 +:107D700001200AF0ACFE012322461A210FF238201E +:107D800001B0BDE83040FAF70DBB012C09D12846FF +:107D900009F0B5FA29460FF23020BDE83440FAF771 +:107DA00001BB31BD0FB480B5002805D108460028BD +:107DB00002D11046002804D00BF047FCC046C04654 +:107DC00001E00BF02BFC01BC5DF814FB00222C2819 +:107DD00009D200EB8003054800EBC300C068C8402F +:107DE000C00700D5012210467047000048BE0020A1 +:107DF00030B585B00446012594F90000062800F24C +:107E0000A180DFE800F00428445F76979B0004F12E +:107E1000090182B068461822FAF70AFE0CBC94F9F0 +:107E20000810606840B207F084FE02280AD160683A +:107E300000B208F063F8002561680FF29810FAF7B5 +:107E4000B1FA85E0032840F0838061680FF28C105E +:107E5000FAF7A8FA7CE060681A280AD104F1090050 +:107E600008F0DDFA637B227BE17A0FF27810FAF7F3 +:107E700099FA94F90810606840B207F05AFF032895 +:107E800066D161680FF27410FAF78CFA60E0618CC9 +:107E900000A808F04DF89DF9040002280AD10098C6 +:107EA00000B208F02BF8002500990FF25810FAF7ED +:107EB00079FA4DE003284BD100990FF25010FAF7F0 +:107EC00071FA45E00BF0DEFC02280AD1606800B2CE +:107ED00008F014F8002561680FF23810FAF762FA1A +:107EE00036E0032834D161680FF23010FAF75AFAFD +:107EF0002EE0606805280CD128460BF09CFD022876 +:107F00000DD0032824D161680FF22010FAF74AFA45 +:107F10001EE002281CD10BF07FFE0228F1D1606820 +:107F200000B207F0EBFF002561680FF2F800FAF7E6 +:107F300039FA0DE0204608F060F809E0204608F024 +:107F40000DFA05E061680FF2EC00FAF72BFA002554 +:107F5000284605B030BD012070470FB4022004B0A0 +:107F6000704701207047002070477047534D4143D0 +:107F7000202564202564202564000000534D412005 +:107F8000256420256420256400000000534D5243E1 +:107F9000202564202564202564000000534D5220D4 +:107FA00025642025642025640000000050442053EF +:107FB000657453540000000041542052492D25643B +:107FC000202564202564000050442055542D25644C +:107FD00000000000414C4F4620256400414C4346C0 +:107FE000202564004F4A4820454C203078257820D1 +:107FF000307825782030782578000000524C4346B0 +:1080000020256400504C4F4620256400504C4346C8 +:108010002025640050414F462025640050414346CE +:108020002025640050504F462025640050504346A0 +:10803000202564004558204C4D454C202564000007 +:108040005FF0FF0C1CEAD05114BF614506E0C1107F +:10805000400721F0E04101F16051704779B900F02B +:10806000004100020AD0B0FA80FC00FA0CF001F1E5 +:108070006051A1EB0C5101EBD0214005704741024A +:108080000CBF40F4E0016FF00001002070470000D9 +:108090004FEAF17CBCF1E04C2CBFBCF5001F11E0B5 +:1080A0005FEA4C0C34BFBCF17F5F2EE05FEA9C0CB2 +:1080B0004FEA0C1C4FEA3C0CC10071F100414CEB43 +:1080C00050707047C90241EA5051C00218BF41F0D8 +:1080D000010141F000414FEA6C50C0F10900212834 +:1080E00010D240EACC7CCCF1200C11FA0CF070F1EB +:1080F0000040CCF1200C21FA0CF00CF0004C40EBCD +:108100000C0070474FEACC707047490011F5001F12 +:1081100004D84FEACC10FF30C0057047C81770472D +:108120001FB50BF0D9FD212101601FBDDFF8AC1197 +:1081300000220A700A70012802D0042803D0704778 +:108140000120087070470520087070476449086076 +:10815000704710B463494A6802F00C02082A13D130 +:108160000A680B6803F03F03604CB4FBF3F30A6842 +:10817000C2F388125A430B68C3F301435B1C5B00D4 +:10818000B2FBF3F2026001E0584A02604A6802F072 +:10819000F003574A1B099B5C046824FA03F343600D +:1081A0004C6804F4E054A40AA45CE340836049688A +:1081B00001F46041490B895C426822FA01F1C16017 +:1081C00010BC7047484900F44072B2F5407F06D1B8 +:1081D0000A6822F4F812474B03401A430A608A6E79 +:1081E000000552EA1050886670474349086070479E +:1081F000424908607047424A0029116802D008438A +:108200001060704721EA0000106070473D4A002965 +:10821000116802D008431060704721EA0000106026 +:108220007047394A0029116802D00843106070472E +:1082300021EA000010607047344A0029116802D01A +:1082400008431060704721EA000010607047304A10 +:108250000029116802D008431060704721EA00002D +:10826000106070472B4A0029116802D00843106043 +:10827000704721EA000010607047274A00291178F2 +:1082800002D008431070704721EA00001070704758 +:108290004109114A012901D1116804E0022901D1E3 +:1082A000116F00E0516F00F01F0021FA00F000F0A4 +:1082B000010070471948016841F080710160704702 +:1082C0000021174A1268024200D001210846704777 +:1082D00014490870704700000038024070380240AE +:1082E000800E474204380240083802400024F4005F +:1082F000947C0020FFFCFF0F3C0E4742400E47429B +:1083000030380240403802404438024010380240C1 +:1083100020380240243802400D38024074380240B0 +:108320000C3802400E38024080B52749884209D1F6 +:1083300001210846FFF780FF00210120BDE804402D +:10834000FFF77ABF2149884209D101210220FFF7B6 +:1083500073FF00210220BDE80440FFF76DBF1C49F8 +:10836000884209D101210420FFF766FF0021042083 +:10837000BDE80440FFF760BF1649884209D10121DA +:108380000820FFF759FF00210820BDE80440FFF74F +:1083900053BF1149884209D101211020FFF74CFF3A +:1083A00000211020BDE80440FFF746BF0B4988427A +:1083B00009D101218020FFF73FFF00218020BDE887 +:1083C0000440FFF739BF01BD000002400004024035 +:1083D00000080240000C024000100240001C024055 +:1083E000F0B4002232E0012393400C681C409C4210 +:1083F0002BD154000325A540ED4306682E400660AE +:1084000006680F79A7403E4306600E79012E01D021 +:10841000022E11D186682E40866086684F79A7406B +:108420003E438660466826EA0303436043688E79CC +:108430009640B6B233434360C3682B40C360C36801 +:10844000CD7905FA04F42343C360521C102ACAD321 +:10845000F0BC70474FF6FF7101600021017141715E +:108460008171C171704700220069084200D0012269 +:1084700010467047018370474183704710B4CB109A +:1084800000EB830001F007018900036A0F248C4090 +:10849000A3430362036A02FA01F11943016210BCAB +:1084A0007047000080B5434988420BD101214FF449 +:1084B0000010FFF7CCFE00214FF40010BDE804408F +:1084C000FFF7C5BE3C4988420BD101214FF4800023 +:1084D000FFF7BDFE00214FF48000BDE80440FFF728 +:1084E000B6BE364988420BD101214FF40000FFF798 +:1084F000AEFE00214FF40000BDE80440FFF7A7BE28 +:1085000001BD7FB504460D46A68800A8FFF721FEF1 +:1085100002992B48B1FBF0F04FF6C0723240024393 +:10852000A28022884FF6FE731A4022802A68254BCB +:108530009A420AD25200B1FBF2F10A4692B2042AE0 +:1085400000DA0421401C208421E0EB884BF6FF7602 +:10855000B34204D102EB4202B1FBF2F106E019236F +:108560005A43B1FBF2F141F4804189B20A0502D1CC +:1085700041F0010189B241F4004180B24FF496729A +:1085800050434FF47A7290FBF2F0401C2084A18398 +:10859000208840F00100208020884FF6F531084007 +:1085A000A9880843698908432080A8892989084344 +:1085B00020817FBD0054004000580040005C004016 +:1085C00040420F00A18601000029018803D041F03C +:1085D0000101018070474FF6FE7211400180704723 +:1085E0000029018803D041F48071018070474FF663 +:1085F000FF621140018070470029018803D041F4D7 +:108600000071018070474FF6FF52114001807047A2 +:10861000002A02D041F0010101E001F0FE010182D7 +:1086200070470029018803D041F4806101807047C0 +:108630004FF6FF321140018070470029018803D0B6 +:1086400041F40041018070474904490C01807047A2 +:1086500082B00246002003460193009300920A0F65 +:1086600001920902090A019A002A03D0009A1432E1 +:10867000009203E0090C009A18320092009A1268E6 +:108680000A4200D0012002B07047000080B52549A1 +:1086900088420BD101214FF48050FFF7E3FD002108 +:1086A0004FF48050BDE80440FFF7DCBD1E4988420E +:1086B0000BD101214FF48040FFF7C9FD00214FF499 +:1086C0008040BDE80440FFF7C2BD184988420BD185 +:1086D00001214FF40040FFF7BAFD00214FF40040A4 +:1086E000BDE80440FFF7B3BD01BD028802F441526A +:1086F0000B881A434B881A438B881A43CB881A433A +:108700000B891A434B891A438B891A43CB891A4325 +:108710000280828B4FF2FF731A408283098A0182A2 +:10872000704700000030014000380040003C00402D +:108730000029018803D041F04001018070474FF6C5 +:10874000BF72114001807047002A828802D0114315 +:108750008180704722EA01018180704700220089F0 +:10876000084200D001221046704700000168490805 +:10877000490001600021016041608160C1600161C8 +:10878000212141616A49884203D16A483D21016043 +:1087900070476949884204D166484FF474610160AA +:1087A00070476649884204D162484FF474110160F1 +:1087B00070476349884204D15E484FF0746101609C +:1087C00070476049884203D15A485F494160704709 +:1087D0005E49884203D157485D49416070475D4911 +:1087E000884203D153485C49416070475B498842E5 +:1087F00004D150484FF03D5141607047584988427C +:1088000003D158483D21016070475749884204D13F +:1088100054484FF47461016070475449884204D150 +:1088200050484FF47411016070475149884204D197 +:108830004C484FF07461016070474E49884203D143 +:1088400048484149416070474B49884203D14548F7 +:108850003F49416070474949884203D141483E49F8 +:10886000416070474649884203D13E484FF03D5130 +:10887000416070470268434B1A400B681A43CB684B +:108880001A434B691A438B691A43CB691A430B6A23 +:108890001A434B6A1A438B6A1A434B6B1A438B6B0E +:1088A0001A4302604269D208CB6A53EAC2020B6BD8 +:1088B0001A4342610A6942604A6882608968C160FD +:1088C00070470029016803D041F001010160704741 +:1088D0004908490001607047002A01D001617047D2 +:1088E000C1607047006800F00100704700221C4B17 +:1088F000984201D2244800E024488B0001D540680A +:1089000000E0006808402249084200D001221046D9 +:108910007047134A904201D21B4800E01B481C4A92 +:108920000A40890001D5C26070478260704700002C +:10893000106002400860024028600240406002402F +:1089400058600240706002403D0000208860024094 +:10895000400F0020A060024000003D20B8600240AF +:1089600010640240086402402864024040640240EF +:10897000586402407064024088640240A06402406F +:10898000B86402403F801CF0006002400064024076 +:108990007D0F7D0F024908607047024908607047EB +:1089A00020000E4224000E4270B504460026DFF877 +:1089B0003854CA20E8615320E86100F018F8002814 +:1089C00011D0286820F040002860286821680843FA +:1089D0002860A068A860A868616840EA0140A860B3 +:1089E00000F024F80126FF20E861304670BD81B018 +:1089F00000200090DFF8F4030168490613D44FF01B +:108A0000FF310160016801F04001009A521C0092A0 +:108A1000009AB2F5803F01D00029F3D000688009A8 +:108A200000F0010000E0012001B07047DFF8BC0356 +:108A3000016821F080010160704781B00020009042 +:108A4000DFF8A813CA20886153208861086820F0E5 +:108A5000A0000860086800F02000009A521C0092F4 +:108A6000009AB2F5003F01D00028F3D00868400911 +:108A700000F00100FF228A6101B07047F8B5074697 +:108A80000E460024DFF85C53002FA86804D140068E +:108A90000AD42046F07007E0400603D5307800F095 +:108AA000BEF901E02046F0703078002F09D07178CF +:108AB000090241EA0040B1780843F17840EA0146F2 +:108AC0000FE000F0A1F90746707800F09DF9000270 +:108AD00040EA0747B07800F097F93843F17840EA68 +:108AE0000146CA20686253206862FFF780FF0028B1 +:108AF0000FD0DFF8FC0230402860FFF797FFA8682E +:108B0000800605D4FFF799FF002802D0012400E079 +:108B10000124FF2068622046F2BD10B50C46DFF844 +:108B2000C4120968DFF8C82211400A0C02F03F03A2 +:108B300023700B0A03F07F03637001F07F01A170C3 +:108B400002F04001E17000280BD1207800F067F9B5 +:108B50002070607800F063F96070A07800F05FF931 +:108B6000A07010BDDFF88C12486A0968704770B5B4 +:108B700006460D460024002E06D16878C10603D5AE +:108B800000F0EF000A306870002E05D0687800F021 +:108B900046F9A87800F043F9E878002E09D0697802 +:108BA000090241EA0040A9780843297840EA4136A1 +:108BB0000FE000F029F90646687800F025F9000278 +:108BC00040EA0646A87800F01FF93043297840EAC9 +:108BD0004136DFF82052CA20286253202862FFF76E +:108BE00006FF00280FD0DFF8100230402860FFF7A2 +:108BF0001DFF6868800605D4FFF71FFF002802D01C +:108C0000012400E00124FF202862204670BD10B539 +:108C10000C46DFF8E0110968DFF8DC2111400A0C8E +:108C2000E2700A0A02F01F02627001F03F02A270B5 +:108C3000490B01F00701217000280BD1E07800F00A +:108C4000EEF8E070607800F0EAF86070A07800F06C +:108C5000E6F8A07010BDDFF89011CA22CA61532255 +:108C6000CA610A68D208D2000A600A681043086024 +:108C7000FF20C8617047DFF88411CA220A615322BD +:108C80000A610860FF200861704781B000210091EF +:108C9000DFF85411CA22CA615322CA610028086849 +:108CA00004D040F480600860012012E020F480606D +:108CB0000860486800F00400009A521C0092009A74 +:108CC000B2F5803F01D00028F3D04868800800F05A +:108CD0000100FF22CA6101B0704781B000220092FA +:108CE000474A0092009A02EB8000009000980160D1 +:108CF00001B0704781B00021009141490091009975 +:108D000001EB800000900098006801B0704738B512 +:108D100000242246344DCA23EB615323EB616B6878 +:108D20001B0701D406E0521C6B681B0702D5B2F585 +:108D3000805FF8D16A68120709D42A68D20606D47F +:108D400008436862FFF779FE002800D00124FF2065 +:108D5000E861204632BD244ACA23D3615323D3613C +:108D600000F0040320F004000029116805D0084336 +:108D70001060906B1843906305E021EA00001060DA +:108D8000906B98439063FF20D06170470021174A91 +:108D900012681C4B1A40024200D00121084670475D +:108DA00010B40021104A936B03F0040314680440CC +:108DB00003EAD0332343526802EA101002D00004C1 +:108DC00000D00121084610BC704708490003000C80 +:108DD00040F080000A6802F0800262EA0000086049 +:108DE0007047000000280040082800400C28004080 +:108DF0007F7F7F00042800403FFFFF0014280040D1 +:108E0000502800407F3F0100002101E0491C0A3842 +:108E1000C0B20A28FADA40EA0110C0B2704701096C +:108E200001EB810200F00F0000EB4200C0B270477E +:108E300030B40168CB4321498279002A27D00A4601 +:108E400014682340136053680468A3435360037994 +:108E5000CC18236805682B43236093680468A343F8 +:108E60009360D3680468A343D36043790568102BEB +:108E700007D1916829439160D16800680843D060A8 +:108E80000AE051FA83F420682843206004E0007966 +:108E90000C1820681840206030BC70470021074A39 +:108EA000136803405269024202D0002B00D0012116 +:108EB000084670470249086070470000003C0140C6 +:108EC000143C01401949084319490860704770B4BF +:108ED00003781A460121C478002C1DD0144B1B685E +:108EE00003F4E063C3F5E0631B0A4478C3F10405AF +:108EF000AC4085780F2646FA03F32B4023431B0131 +:108F00000C4C1355007842110B4B00F01F0001FA76 +:108F100000F043F8220006E05011084A03F01F0356 +:108F2000994042F8201070BC704700000000FA051C +:108F30000CED00E000E400E000E100E080E100E092 +:108F400030B401F00302920021F00301054BCC582C +:108F50000F259540AC43CC50CC5890402043C8508E +:108F600030BC70470838014080B501214FF4807053 +:108F7000FFF778F900214FF48070BDE80440FFF757 +:108F800071B942684C4B1A400B7942EA03220B68D4 +:108F90001A4342608268494B1A400B691A43CB68F6 +:108FA0001A438B681A434B7942EA43028260C26AD1 +:108FB00022F47002097D491EC9B242EA0151C16220 +:108FC000704700210160017141718160C1600161E0 +:108FD0000121017570473A490A683A4B1A40036803 +:108FE0001A4343681A4383681A43C06810430860F1 +:108FF00070470021016041608160C16070470029B5 +:10900000816803D041F0010181607047490849003F +:109010008160704770B407240A290BDBC568A1F191 +:109020000A0606EB4606B44025EA0404B34023438F +:10903000C36008E0056901EB4106B44025EA040479 +:10904000B3402343036113461F24072B09DA436B04 +:10905000521E02EB82029440A343914019434163A4 +:1090600014E00D2B09DA036BD21F02EB820294404D +:10907000A34391401943016308E0C36A0D3A02EB30 +:1090800082029440A34391401943C16270BC70476F +:10909000816841F08041816070470029816803D078 +:1090A00041F480618160704721F480618160704784 +:1090B000C06C80B270470000FFFEFFFCFDF7FFC0F0 +:1090C00004230140E030FCFF00220068084200D089 +:1090D000012210467047000013F0004C03D55B429C +:1090E000524263F100039CEA210C00F0178010B596 +:1090F000644603D34942404261F1000100F00EF89A +:10910000640004D34942404261F10001244203D586 +:109110005B42524263F1000310BD00001B4213D1B9 +:10912000094236D12AB18446B0FBF2F002FB10C2EC +:1091300070470AF0D7BDFCD30022002370470B0014 +:109140000200002100207047904271EB030CF6D31F +:1091500070B5B1FA81F4B3FA83F52C1BA340C4F1C6 +:10916000200532FA05F63343A2405FF00046E640A0 +:1091700002E05B085FEA3202841A71EB030524BF48 +:10918000204629467641F4D302000B00300000212E +:1091900070BD012ACFD970B5140C20D0B1FA81F47A +:1091A000B2FA82F5C4F120046419B4F12006D6D3D2 +:1091B000B2405FF00044F440002502E052085FEA4C +:1091C0003303C61A71EB020E24BF30467146644168 +:1091D0006D41F3D302000B002000290070BD0C4646 +:1091E000B1FBF2F102FB11452D0445EA1045B5FB38 +:1091F000F2F402FB145580B240EA0545B5FBF2F0EB +:1092000002FB105240EA044070BD000000B500BFF0 +:10921000130096469446103928BFA0E80C50FAD89F +:109220005FEA417C28BF0CC048BF40F8042BC90747 +:1092300028BF20F8022B48BF00F8012B00BD00001A +:109240002DE9F04FA1B0824602AE002017461D4620 +:10925000029170620DF144080AE017F8011B0298B0 +:10926000D0470290002800F0DA82706A401C7062D9 +:10927000387808B9706AD4E22528EED10020F06071 +:1092800030617061B061F061306201E040F0010076 +:1092900017F8011F2029F9D023290DD02B2904D03C +:1092A0002D2906D030290AD00CE040F0020080B20F +:1092B000EEE740F00400FAE740F00800F7E740F07E +:1092C0001000F4E72A290DD129680A1D2A600968CF +:1092D000F162002904D5494240F00400F16280B2F5 +:1092E0007F1C13E00021F1620BE0F16A6FF0004394 +:1092F000994205D001EB810302EB43013039F16261 +:109300007F1C3A78A2F130010A29EED339782E2950 +:1093100003D04FF0FF31B1621EE017F8011F2A2978 +:1093200006D129680A1D2A607F1C0968B16213E012 +:109330000021B1620BE0B16A6FF00043994205D0A1 +:1093400001EB810302EB43013039B1627F1C3A78B3 +:10935000A2F130010A29EED330860FF66040397849 +:109360000AF0C2FC08B117F8010B8DF83A009DF81D +:109370003A00682802BF39786829622005D06C2835 +:1093800004BF38786C2803D171208DF83A007F1C17 +:1093900011A8B0603978B1F1250029D01C3800F04F +:1093A000C080001F022840F2BC80133800F0E48027 +:1093B000093800F0B680801E00F07781401E00F072 +:1093C0002081401E022840F2AC80001F00F019816D +:1093D000401F7BD0401E00F0CF80401E22D0C01E18 +:1093E0000BD0801E00F0C880C01E00F0C58064E174 +:1093F000F068411CF160252169E12868011D2960A0 +:109400000068B26A7060002A02D5FBF7CFF907E066 +:1094100000210AF075FC00281ABF7168401AB06A72 +:10942000306156E12868011D296000210068CDE9FE +:1094300000014FF03C0E11A87060DDE9000111B988 +:1094400008B9B26ACAB10206120FA0EB021230329A +:10945000AEF10103D2B29E463A2AA8BF27320009D4 +:1094600003F8082040EA0170090908BF002804D069 +:10947000726811AB73449A42E5D311A971447160CB +:10948000CEF13C00B16A3061884207DA081AB06157 +:109490004FF6EF71308E084030861AE1002940F116 +:1094A000188196F8301001F01401102940F0118154 +:1094B000F16AF268891AB269891AA1EB000EBEF14D +:1094C000010FC0F20681C6F818E002E19DF83A00EB +:1094D000622818D0682806D06A280BD06C2819D0CA +:1094E000712807D016E02868011D29600068716A9C +:1094F0000180EEE02A68101D28601268706AC117AA +:10950000C2E90001E5E02868011D29600068716A70 +:109510000170DEE02868011D29600068716A016041 +:10952000D7E02868C01D20F00700286000F108027D +:109530002A60D0E90023CDE90023002B04D5F06890 +:10954000421CF2602D220DE0308E820704D5F068B7 +:10955000421CF2602B2205E0C00705D5F068421CD2 +:10956000F260202200F80820F06811AA80187060CC +:1095700000A800F0E3F9ACE09DF83A006C2808BFC1 +:109580002A6811D0712808BF2A6802D02A686A2880 +:109590000AD1D21D22F007022A60144604F1080203 +:1095A0002A60D4E9002303E0131D2B600023126816 +:1095B000CDE90023682808BF92B207D0622808BF0F +:1095C000D2B203D0742818BF7A2802D10023CDE983 +:1095D000002396F8300000075FD5DDE90023002B5B +:1095E00008BF002A59D041F02000782855D1F068F2 +:1095F000302200F80820401C421CF26000F80810DD +:109600004BE09DF83A0062280CD0682810D06A28F8 +:109610001AD06C2823D0712816D074281FD07A282D +:109620000CD01CE02868021D2A6090F900201AE086 +:109630002868021D2A60B0F9002014E02868021D85 +:109640002A60002302680FE02868C01D20F0070090 +:10965000286000F108022A60D0E9002304E02868AD +:10966000021D2A600268D317CDE90023002B04DA1B +:10967000F068421CF2602D220DE0308E820704D586 +:10968000F068421CF2602B2205E0C00705D5F068A7 +:10969000421CF260202200F80820F06811AA80180D +:1096A000706000A800F0C0F813E0F068411CF160A1 +:1096B00029680A1D2A60096809E0F068421CF26006 +:1096C000252200F8082021B1F068421CF26000F861 +:1096D0000810F06AF168401AB169401A3169401AFD +:1096E000F169401A7169401A316AA0EB010996F8D4 +:1096F00030007F1C400710D420208DF8400000244B +:1097000009E0012310AA00A9504600F040FC0028FF +:1097100040F08580641C4C45F3DBF4680DF1440B8C +:109720000AE01BF8011B0298D0470290002876D06F +:10973000706A401C7062641E002CF2D130208DF8DB +:1097400040004FF0000BB46909E0012310AA00A902 +:10975000504600F01CFC002861D10BF1010BA34521 +:10976000F3DB3469D6F804B00AE01BF8011B029859 +:10977000D0470290002852D0706A401C7062641E6C +:10978000002CF2D130208DF840004FF0000BF4692E +:1097900009E0012310AA00A9504600F0F8FB0028B8 +:1097A0003DD10BF1010BA345F3DB3069716874699E +:1097B00000EB010B09E01BF8011B0298D047029057 +:1097C00068B3706A401C7062641E002CF3D13020B4 +:1097D0008DF840004FF0000B346A08E0012310AA16 +:1097E00000A9504600F0D3FBC8B90BF1010BA3450B +:1097F000F4DB96F8300040077FF53AAD20208DF875 +:109800004000002400E0641C4C45BFF631AD01234C +:1098100010AA00A9504600F0BAFB0028F3D04FF080 +:10982000FF3021B0BDE8F08F2DE9FA47064682B03F +:1098300035690A466F2A08BF082705D041F0200085 +:10984000782814BF0A271027D6E900013C24804657 +:109850008946642A18BF692A05D1002903DAD8F19C +:10986000000869EB4909B9F1000F08BFB8F1000F12 +:109870000CD1306B50B9082F3BD196F83800000757 +:1098800037D530203B2485F83B0032E0CDE9008914 +:10989000FB17404649463A46FFF740FCB846A8FB4E +:1098A0000023DDE90089A8EB02023032A4F1010AAD +:1098B000D2B254463A2A03DB9DF80830513B9A183D +:1098C0000AF8052080465FEA010908BFB8F1000FD9 +:1098D00003D0F06861198842D8D3082F09D196F8CF +:1098E0003800000705D5605D302802D0641E3020A6 +:1098F0006055C4F13C00B0616119F160316B884280 +:1099000007DA081A30624FF6EF71308F084030875F +:1099100010E000290ED596F8381001F01401102936 +:1099200008D1716B7269891A326A891A081A01287A +:10993000A8BF306204B0BDE8F08700002DE9F24F07 +:1099400004468EB0D4E90001CDE9020104AE9DF8D1 +:10995000380040F02000009061280AD0206B0028D9 +:1099600048BF062004D404BF0098672801D1012015 +:1099700020636168C1F30A5040F2FF7290421CD12B +:10998000080304BF2068002809D10320A0619DF8C6 +:10999000380061381A2836D30FF2346108E003200A +:1099A000A0619DF8380061381A2829D30FF2186198 +:1099B000E0680322F9F73CF8B5E1012816DA204601 +:1099C0000AF0CAF9012811DB00270020009961295B +:1099D00020D1E168302201F8012B4A1CE2609DF899 +:1099E0003820612A0CBF782258220FE0626840F2CA +:1099F000FE3161F31E52471A62604FF0FF30E5E717 +:109A00000FF2C051D4E70FF2C451D1E70A70616977 +:109A1000891C616110B9002500277BE1009861284D +:109A200040F09680206B00284CBF2125451CDDE9C5 +:109A300002012DB26E1CD4E9008900220023F9F73F +:109A4000F1F93ABF89F00040CDE90280CDE9028901 +:109A50003F1F8DF810200DF1110801E000F20708FA +:109A6000012E32DBDDE90201002200230AF096F923 +:109A70002BD21C2102A80AF0A9F9DDE90201F9F7AD +:109A80001DFCF61F8146012E09DBF9F7E7F90246B6 +:109A90000B46DDE90201F9F727F8CDE9020108F2EA +:109AA0000700072105E009F00F0200F8012D4FEA39 +:109AB0002919B9F1010F01DB491EF4D5491E5CBF1C +:109AC000002200F8012DF9D5C8E70DF11100A8EB2F +:109AD00000010DF11106A942B8BF0D462DB22800B4 +:109AE0002FD4884206DA04A9411849780829A8BF6A +:109AF0000F2100DA002104AA821800E06D1E12F87E +:109B00000139401E8B42F9D00F2904D104A9411814 +:109B10004A78521C4A70002802D504AE6D1C3F1DC5 +:109B20002DB2681E0DD481190A783032D2B23A2A89 +:109B300003DB9DF838303A3B9A1801F80129401EA2 +:109B4000F2D5206B002840F1E580681E2063E1E03B +:109B5000DDE9020100220023F9F764F93CBF81F03E +:109B60000041CDE902013FB247F29750784348499E +:109B7000DFF820B190FBF1F73FB2C7F1070692463C +:109B8000012E19DBDDE90289F00707D552465B4655 +:109B900040464946F9F768F88046894676105046AF +:109BA000594652465B46F9F75FF882468B46002ECF +:109BB000EAD1CDE9028921E076429046DFF8D890DB +:109BC00012E0F00707D552465B4640464946F9F792 +:109BD0004BF88046894676105046594652465B46B9 +:109BE000F9F742F882468B46002EEAD1DDE9020100 +:109BF00042464B46F9F7BEF9CDE9020100986628C6 +:109C00000CBF07F10A000620216B4518142DA8BFD0 +:109C1000132530208DF810000DF11106DFF87C902F +:109C2000012D3DDBDDE90201F9F75EFB06F10801DC +:109C300004220A23B0FBF3F303EB8306A0EB4600F8 +:109C4000303001F8010D0A20B3FBF0F000EB800684 +:109C5000A3EB4603303301F8013D521EE9D1083D24 +:109C600001F10806012DDBDBDDE90201F9F73CFB20 +:109C7000F9F7FEF802460B46DDE90201F8F734FF7A +:109C800000224B46F8F7F0FFCDE90201CAE700BF1A +:109C9000A0860100000024400000F03F84D79741D7 +:109CA0000DF11100301A0DF1110602E0401E7F1E69 +:109CB000761C31783029F9D00099662902D13FB25B +:109CC000791C03E065290CBF01210021226B8D184E +:109CD0002DB2A842B8BF05462DB229001AD4814240 +:109CE00004DA885D3528A8BF392000DA30208A19C7 +:109CF000521E00E06D1E12F80139491E8342F9D050 +:109D0000392802D1885D401C8855002902D5761E6D +:109D10006D1C7F1C3FB29DF8381000972BB2324665 +:109D2000204600F003F80FB0BDE8F08F2DE9F043B6 +:109D3000054685B01E46D5F8308089461746012E67 +:109D400002DA01260FF28C2749F02000BDF93040DD +:109D5000662808BF641C17D0672840F0818014F182 +:109D6000040FC0F28380444580F2808095F838006B +:109D7000641C000702D44645B8BFB04624B2B8EB15 +:109D8000040848BF4FF00008E868A96924B2012C14 +:109D900025DA30234A1C0B54B8F1010F03DA95F889 +:109DA0003810090702D52E211154521CAA6118EB54 +:109DB000040FB8BFC8F1000424B26142A044696234 +:109DC000B045B8BF464636B2EE613246AB69394659 +:109DD0001818F8F72DFEA8EB0600A862C0E00818D6 +:109DE000A64218DA32463946F8F722FEA9697118F8 +:109DF000A961A01B6862B8F1010F03DA95F8380079 +:109E0000000705D5E8682E220A54E869401CE8617D +:109E1000C5F82880A4E022463946F8F709FEA8696B +:109E20002018361BB8F1010F03DA95F8381009072E +:109E300003D5E9682E224254401C36B2A861B045D1 +:109E4000B8BF4646EB6836B23246E119C018F8F79B +:109E5000EFFDA8693018A861A8EB060068627FE0F2 +:109E6000B9F1610F16D14FF0700918E0464504DAD8 +:109E700095F83810090758BFB046B8F1010848BF37 +:109E80004FF00008B9F1670F14BF4FF045094FF0CC +:109E9000650904E0B9F1410F08BF4FF05009A96905 +:109EA000E86817F8013B0B544A1CB8F1010F05DABA +:109EB00095F83810090758BFAA6117D52E211154FB +:109EC000531CAB61B8F1010F10DB761E36B2B04502 +:109ED000B8BF464636B2324639461818F8F7A8FDDC +:109EE000A8693018A861A8EB06006862A869E9684B +:109EF0004718200007F8019B03D42B2007F8010B1B +:109F000003E02D2107F8011B644200260DF108082B +:109F100008E00A2200A809F0E3FF019808F8010B05 +:109F2000761C009C21B20129F3DA022E06DA49F0F0 +:109F30002000652804BF302007F8010B4EB93020FF +:109F400007F8010B07E0761E02A8305C303007F8F6 +:109F5000010B012EF7DAA869E9684018381AE861A0 +:109F600095F8380000F0140010280DD16869A9692F +:109F70000818696A0818E9690818A96A0818696B55 +:109F80008842BCBF081A286205B0BDE8F083F8B566 +:109F900004460D4616461F46002004E0E86A401CB1 +:109FA000E8627F1E002047B116F8011BA868A04791 +:109FB000A8600028F2D14FF0FF30F2BD686A6C74DF +:109FC0007A4C00006E616E004E414E00696E660074 +:109FD000494E4600300000000CB41CB5044604A8ED +:109FE00001900A46009401AB00A907487844183054 +:109FF000FFF726F9009900220A7000285CBF00983C +:10A00000001B16BC5DF80CFB4B8EFFFF01B58B07E8 +:10A0100018D1121F21D351F8043BA3F1013C2CEAC3 +:10A02000030C1CF0803C04BF40F8043BF1E79CFAB1 +:10A030008CFCBCFA8CF1C1F118018B40CB4040F88C +:10A04000043B13E0042A09D311F8013B521E00F827 +:10A05000013B5BB18B07F7D1DBE7121D5AB111F859 +:10A06000013B521E00F8013B03B1F8D111001CBFA7 +:10A070000022F9F753F901BD002801D10A48806890 +:10A0800090F84C10642901D0002000E0806A7047ED +:10A09000002801D10448806890F84C10642901D050 +:10A0A000002000E0406A7047087C002002487047AA +:10A0B00002480149401A704700000020002000209B +:10A0C0004C48C168002903D54B4901604B490160E8 +:10A0D00070474B48016841F000410160704770B51E +:10A0E0000446002600290BD0012902D14FF48076C6 +:10A0F00006E0022902D14FF4007601E04FF44076E9 +:10A1000000F082F809281ED13D4D286820F44070E7 +:10A110002860286830432860286820F0F80028600C +:10A12000286844F0020108432860286840F4803021 +:10A13000286000F069F8296821F002012960296887 +:10A1400021F0F801296070BD70B504460D4600F09D +:10A150005BF8092813D12A4E306820F44070306033 +:10A16000306840F400703060306840F001003060CA +:10A17000256000F049F8316849084900316070BD38 +:10A1800070B505460E4600F03FF8092811D11C4C69 +:10A19000206820F44070206020682060206840F033 +:10A1A000010020602E7000F02FF821684908490056 +:10A1B000216070BD134908607047092011490A6881 +:10A1C000D20301D5012070470A68D20601D50620C6 +:10A1D00070470A68D20501D5022070470A6812F05C +:10A1E000EF0F01D0072070470968890700D50820C4 +:10A1F00070470000043C024023016745AB89EFCD66 +:10A20000103C02400C3C024080B509208DF8000053 +:10A21000FFF7D3FF8DF8000003E0FFF7CEFF8DF8C6 +:10A2200000009DF800000128F7D09DF8000002BD55 +:10A230000901002806D500F00F004C4A801800F8EC +:10A24000041C70474A4A8154704710B5401EB0F153 +:10A25000807F01D3012010BD464C60600F214FF07C +:10A26000FF30FFF7E5FF0020A060072020600020FE +:10A2700010BD38B5404D2878401C28703F4C2078E0 +:10A28000401C2070FBF759F909F032FE2878411E76 +:10A290002970002802D19820FAF7A4FA2078012822 +:10A2A00004D16068002801D0FAF7FFFA2078401E38 +:10A2B000207031BD10B5314C6078F021084202D0D9 +:10A2C0009920FAF78FFAFAF7FAFA6078401C607072 +:10A2D00009F068FE2A4800684FF47A71B0FBF1F08B +:10A2E000FFF7B3FF002800D0FEE7264826490160AB +:10A2F0000E214FF0FF30FFF79BFF6078F0210842FE +:10A3000002D09920FAF76EFA6078401E6070C0B2F1 +:10A31000002803D1BDE81040FAF7CBBA10BD000009 +:10A3200010B51A4C4FF4005120464183C04630BF4F +:10A330004FF400512046FEF79DF8F3E710B40F48A4 +:10A34000006A0F4909684FF47A72B1FBF2F1104AC2 +:10A350001368CB1A0F4C2468640102D512688B1A5B +:10A36000401C00FB013010BC7047000018ED00E0FD +:10A3700000E400E010E000E0DA2E0120087C00207C +:10A38000907C002008ED00E0000000080010024072 +:10A3900018E000E004ED00E0EFF30580002849F04C +:10A3A0006186704780B5EFF3108072B60B4909687B +:10A3B00051F47F01094A116080F310880848006851 +:10A3C00010F4700F02D1A720FAF70CFA05485FF0DD +:10A3D0000071016004480021016001BD20ED00E032 +:10A3E00088ED00E03CEF00E034EF00E010B5040041 +:10A3F00010480078002805D10F4809F072FE0D487A +:10A40000012101700C4809F0A2FE20000AF072FD43 +:10A410000400094809F0CFFE200010BD10B504006B +:10A42000054809F094FE20000AF0BEFE024809F03B +:10A43000C2FE10BDDD2E0120142C01200048704703 +:10A4400050140120BFF34F8FDFF8B40C006810F4F4 +:10A45000E060DFF8B01C0843DFF8A41C0860BFF31D +:10A460004F8FFEE700B583B00020ADF80400002058 +:10A470008DF8060000208DF80700012000900DF1F6 +:10A4800006037622D0210020F8F75CF8002801D1DD +:10A49000002044E076208DF804009DF8060050F07E +:10A4A00020008DF80500022301AAD0210020F7F733 +:10A4B000EFFF002801D1002031E0012000900DF1D4 +:10A4C00007034922D0210020F8F73CF8002801D1E9 +:10A4D000002024E049208DF804009DF8070050F08A +:10A4E00001008DF80500022301AAD0210020F7F712 +:10A4F000CFFF002801D1002011E076208DF8040064 +:10A500009DF806008DF80500022301AAD021002045 +:10A51000F7F7BEFF002801D1002000E001200EBDAA +:10A5200038B50400F7F7BDFE0500DFF8040D00782C +:10A53000401CDFF8FC1C0870DFF8F40C4078F021B8 +:10A54000084202D09920FAF74DF9FAF7B8F9DFF886 +:10A55000E00C4078401CDFF8D81C4870210089B21C +:10A560002800F8F78AF8DFF8C80C4078F021084294 +:10A5700002D09920FAF736F9DFF8B40C4078401E83 +:10A58000DFF8AC1C4870C0B2002801D1FAF791F98D +:10A59000FAF7EFFF31BD10B582B00020ADF8000032 +:10A5A000F7F77FFE04006B208DF8000080208DF807 +:10A5B0000100022300AAD0210020F7F769FF00283C +:10A5C00001D1002094E064212000F8F756F8FFF74D +:10A5D00049FF002801D100208AE06B208DF800009F +:10A5E00000208DF80100022300AAD0210020F7F7F7 +:10A5F0004FFF002801D100207AE028212000F8F741 +:10A600003CF819208DF8000004208DF80100022389 +:10A6100000AAD0210020F7F73BFF002801D100203D +:10A6200066E01A208DF8000003208DF80100022357 +:10A6300000AAD0210020F7F72BFF002801D100202D +:10A6400056E01B208DF8000008208DF80100022341 +:10A6500000AAD0210020F7F71BFF002801D100201D +:10A6600046E01D208DF8000003208DF80100022334 +:10A6700000AAD0210020F7F70BFF002801D100200D +:10A6800036E06A208DF8000000208DF801000223DA +:10A6900000AAD0210020F7F7FBFE002801D10020FE +:10A6A00026E06C208DF800003F208DF801009DF819 +:10A6B0000110DFF8500DF7F775FE022300AAD02134 +:10A6C0000020F7F7E5FE002801D1002010E06B2004 +:10A6D0008DF8000040208DF80100022300AAD0214F +:10A6E0000020F7F7D5FE002801D1002000E001206E +:10A6F00016BD0178407850EA012000B2704780B55D +:10A7000002200090DFF8003D6B22D0210020F7F7F7 +:10A7100019FF002801D100205BE001200090DFF844 +:10A72000EC3C1A22D0210020F7F70CFF002801D1C1 +:10A7300000204EE001200090DFF8D43C1B22D02105 +:10A740000020F7F7FFFE002801D1002041E00120A2 +:10A750000090DFF8C03C1C22D0210020F7F7F2FE69 +:10A76000002801D1002034E001200090DFF8A83C4F +:10A770001D22D0210020F7F7E5FE002801D100209E +:10A7800027E001200090DFF8943C6A22D0210020CD +:10A79000F7F7D8FE002801D100201AE00120009030 +:10A7A000DFF87C3C3822D0210020F7F7CBFE0028D0 +:10A7B00001D100200DE001200090DFF8683C192253 +:10A7C000D0210020F7F7BEFE002801D1002000E0D4 +:10A7D000012002BD80B50020ADF800001A208DF8E0 +:10A7E0000000DFF8240C00798DF80100022300AA94 +:10A7F000D0210020F7F74CFE002801D1002090E086 +:10A800001B208DF80000DFF8000C40798DF8010066 +:10A81000022300AAD0210020F7F73AFE002801D138 +:10A8200000207EE01C208DF80000DFF8DC0B807932 +:10A830008DF80100022300AAD0210020F7F728FE9E +:10A84000002801D100206CE01D208DF80000DFF809 +:10A85000B80BC0798DF80100022300AAD021002096 +:10A86000F7F716FE002801D100205AE06A208DF883 +:10A870000000DFF8940BC0788DF80100022300AAD5 +:10A88000D0210020F7F704FE002801D1002048E085 +:10A8900019208DF80000DFF8700B80788DF801002A +:10A8A000022300AAD0210020F7F7F2FD002801D1F1 +:10A8B000002036E038208DF80000DFF84C0B007ADD +:10A8C0008DF80100022300AAD0210020F7F7E0FD57 +:10A8D000002801D1002024E06B208DF80000DFF873 +:10A8E000280B00788DF80100022300AAD021002057 +:10A8F000F7F7CEFD002801D1002012E06C208DF882 +:10A900000000DFF8040B40788DF80100022300AA54 +:10A91000D0210020F7F7BCFD002801D1002000E085 +:10A92000012002BD10B582B00020ADF80000DFF8B4 +:10A93000D80A0078400612D56B208DF80000002060 +:10A940008DF80100022300AAD0210020F7F7A0FD16 +:10A95000002801D10020C9E03220FFF7E1FD6C2082 +:10A960008DF80000DFF8A00A407810F0F8008DF8AC +:10A970000100022300AAD0210020F7F789FD00285A +:10A9800001D10020B2E06A208DF8000000208DF88F +:10A990000100022300AAD0210020F7F779FD00284A +:10A9A00001D10020A2E0002400E0641C062C10DA93 +:10A9B00014F113008DF8000000208DF8010002232F +:10A9C00000AAD0210020F7F763FD0028EDD1002078 +:10A9D0008CE019208DF8000000208DF80100022382 +:10A9E00000AAD0210020F7F753FD002801D1002054 +:10A9F0007CE01A208DF8000003208DF801004FF450 +:10AA0000FA642000FA281DD0B0F5FA7F13D0B0F513 +:10AA10007A7F09D0B0F5FA6F19D19DF8010050F096 +:10AA200018008DF8010016E09DF8010050F01000AC +:10AA30008DF801000FE09DF8010050F008008DF83E +:10AA4000010008E09DF801008DF8010003E09DF889 +:10AA500001008DF80100022300AAD0210020F7F7A1 +:10AA600017FD002801D1002040E0FA2C14D0B4F5E5 +:10AA7000FA7F0DD0B4F57A7F06D0B4F5FA6F0FD116 +:10AA800003208DF801000EE002208DF801000AE09D +:10AA900001208DF8010006E000208DF8010002E0A1 +:10AAA00000208DF801001B208DF800009DF80100AA +:10AAB000C0008DF80100022300AAD0210020F7F782 +:10AAC000E7FC002801D1002010E038208DF80000BC +:10AAD00000208DF80100022300AAD0210020F7F702 +:10AAE000D7FC002801D1002000E0012016BD00B5F0 +:10AAF00083B00020ADF8060000208DF804006B2024 +:10AB00008DF8060001208DF8070002230DF10602E2 +:10AB1000D0210120F7F7BCFC002801D1002023E060 +:10AB20002820FFF7FDFC0120009001AB6C22D02112 +:10AB30000120F7F707FD002801D1002014E06C2068 +:10AB40008DF806009DF8040010F0C0008DF8070095 +:10AB500002230DF10602D0210120F7F799FC00280D +:10AB600001D1002000E001200EBD2DE9F04F85B09D +:10AB700004000D0016001F000020ADF8040002A81C +:10AB80000021002206C0083806208DF80600382073 +:10AB90008DF8040000208DF80500022301AAD021C1 +:10ABA0000120F7F775FC002802D15FF0FF3070E15B +:10ABB00023208DF8040000208DF80500022301AA4F +:10ABC000D0210120F7F764FC002802D15FF0FF30AC +:10ABD0005FE16A208DF8040000208DF80500022353 +:10ABE00001AAD0210120F7F753FC002802D15FF021 +:10ABF000FF304EE16A208DF8040004208DF8050036 +:10AC0000022301AAD0210120F7F742FC002802D13B +:10AC10005FF0FF303DE11A208DF8040001208DF82F +:10AC20000500022301AAD0210120F7F731FC0028FA +:10AC300002D15FF0FF302CE119208DF804000020D4 +:10AC40008DF80500022301AAD0210120F7F720FC8E +:10AC5000002802D15FF0FF301BE11B208DF80400BB +:10AC60008DF80540022301AAD0210120F7F710FC3E +:10AC7000002802D15FF0FF300BE1FFB2002F0FD0B0 +:10AC80001C208DF804008DF80540022301AAD02174 +:10AC90000120F7F7FDFB002802D15FF0FF30F8E05C +:10ACA00064B2002C02D0C820FFF73AFC6A208DF86D +:10ACB000040044208DF80500022301AAD0210120C0 +:10ACC000F7F7E6FB002802D15FF0FF30E1E0232038 +:10ACD0008DF80400FFB2002F03D008208DF8050086 +:10ACE00002E070208DF80500022301AAD021012086 +:10ACF000F7F7CEFB002802D15FF0FF30C9E00A2051 +:10AD0000FFF70EFC002408E0E4B2002045F8240020 +:10AD1000E4B2002046F82400641CE4B2032CF3DB08 +:10AD20005FF00009B9F1320F6EDA0A20FFF7F8FB85 +:10AD30000220009002AB7222D0210120F7F702FC22 +:10AD4000002802D15FF0FF30A3E002A8FFF7D1FC9A +:10AD50009DF8061090FBF1F8B8F1070F02DA7FF0CA +:10AD6000010096E000241AE05FFA8AFA55F82AB04A +:10AD70005FFA8AFA02A810EB4A00FFF7BAFC0BFA56 +:10AD800080F05FFA8AFA45F82A001AF1010A5FFAA0 +:10AD90008AFABAF1030FE7DB19F10109641CE4B286 +:10ADA0004445BFDAB9F1320FBCDA9DF806000090D5 +:10ADB00002AB7422D0210120F7F7C4FB002802D196 +:10ADC0005FF0FF3065E0FFB2002F1AD05FF0000A9D +:10ADD0005FFA8AFABAF1030FDEDA5FFA8AFA56F8F6 +:10ADE0002AB05FFA8AFA02A810EB4A00FFF781FC4A +:10ADF0000BFA80F05FFA8AFA46F82A001AF1010A83 +:10AE0000E6E75FF0000AC2E723208DF80400002087 +:10AE10008DF80500022301AAD0210120F7F738FBA5 +:10AE2000002802D15FF0FF3033E05FF0000A0FE04E +:10AE30005FFA8AFA55F82A004FF47A7148433221B2 +:10AE400090FBF1F05FFA8AFA45F82A001AF1010A3C +:10AE50005FFA8AFABAF1030FEADBFFB2002F17D0CC +:10AE60005FF0000A0FE05FFA8AFA56F82A004FF402 +:10AE70007A714843322190FBF1F05FFA8AFA46F882 +:10AE80002A001AF1010A5FFA8AFABAF1030FEADB23 +:10AE9000012005B0BDE8F08F2DE9F04389B0040032 +:10AEA0000D00160000275FF0010801A800210160D5 +:10AEB0005FF000090320009001AB0D22D02101209A +:10AEC000F7F740FB002801D15FF0FF385FF0000981 +:10AED00005E005A8002140F8291019F10109B9F190 +:10AEE000030F11DA01A819F800000028F1D001A819 +:10AEF00019F80000DFF8641A11EB400030F8020C7A +:10AF000005A941F82900E8E75FF000091FE002A861 +:10AF100050F82900DFF8481A884207DADFF8440AB7 +:10AF2000F7F740FA012010FA09F0074302A850F899 +:10AF30002900DFF8341A884207DBDFF8300AF7F718 +:10AF400031FA012010FA09F0074319F10109B9F1AA +:10AF5000030F2ADA55F8290056F82910401A0AF08A +:10AF6000B1FB02A941F8290005A850F829000028E2 +:10AF7000CDD002A850F8290005A951F8291090FB5E +:10AF8000F1F0B0F57A700AF09DFB24F8190034F95D +:10AF90001900B0F5FA7FD8DDDFF8D409F7F702FA27 +:10AFA000012010FA09F00743CFE7B4F9040000903C +:10AFB000B4F90230B4F900203900DFF8B809F7F726 +:10AFC000F1F9002F05D0DFF8B009F7F7EBF97FF0C2 +:10AFD0000208404640B209B0BDE8F08338B505002C +:10AFE0000020ADF800000020ADF80200F7F759F995 +:10AFF000040038208DF8000000208DF801000223A5 +:10B0000000AAD0210020F7F743FA002801D1002040 +:10B0100074E000F01BFB002801D100206EE01F202F +:10B020008DF800004B208DF80100022300AAD021EA +:10B030000020F7F72DFA002801D100205EE01E2045 +:10B040008DF8000006208DF80100022300AAD0210F +:10B050000020F7F71DFA002801D100204EE06920FA +:10B060008DF80000C0208DF80100022300AAD02135 +:10B070000020F7F70DFA002801D100203EE0012260 +:10B0800001210320F7F780FB0020F7F77FFB382032 +:10B090008DF8000040208DF80100022300AAD02185 +:10B0A0000020F7F7F5F9002801D1002026E0012063 +:10B0B00028702000407DC046012810D001212000CA +:10B0C000F7F7DBFABDF80200401CADF80200BDF84E +:10B0D00002003228EDDBDFF8A408F7F763F901225C +:10B0E00000210320F7F750FB0020F7F74FFB00F09B +:10B0F000A3FB002801D1002000E0012032BD0000A8 +:10B100000CED00E00400FA0570B58EB0040000A854 +:10B110000021002206C00838012500260BA80021C6 +:10B12000002200230EC00C3808A8002100220023B2 +:10B130000EC00C3805A80021002200230EC00C38D8 +:10B1400002A80021002200230EC00C38FFF7D7FA16 +:10B15000002801D1002056E0FFF7E4FB002806D0CC +:10B160000126FFF7C4FC002803D100204BE000209B +:10B1700049E0012302AA08A90020FFF7F6FC050018 +:10B180006DB2012D04D0DFF8F007F7F70BF91CE0E2 +:10B19000012305AA0BA97FF01F00FFF7E6FC0500BD +:10B1A0006DB2012D04D0DFF8C807F7F7FBF80CE00B +:10B1B00005AA02A900A8FFF76FFE05006DB2012DD8 +:10B1C00003D0DFF8A007F7F7EDF82670BDF8000010 +:10B1D0006070BDF900000012A070BDF80200E070C0 +:10B1E000BDF9020000122071BDF804006071BDF9C4 +:10B1F00004000012A071E571FFF7ECFA002801D1FC +:10B20000002000E001200EB070BD80B5DFF87007AF +:10B210000078002809D1FFF7BEF9002801D10020ED +:10B2200004E0DFF85C0701210170012002BD00008D +:10B23000087C00201CB500208DF806000020ADF829 +:10B240000400F7F72EF80400012000900DF106032A +:10B250006B22D0210020F7F775F9002801D10020DA +:10B2600088E09DF806006021084216D06B208DF81A +:10B2700004009DF8060010F09F008DF805000223E1 +:10B2800001AAD0210020F7F703F9002801D10020FE +:10B2900070E014212000F7F7F0F9012000900DF183 +:10B2A00006036C22D0210020F7F74CF9002801D1C9 +:10B2B00000205FE06C208DF804009DF8060010F07F +:10B2C000C7008DF80500022301AAD0210020F7F75E +:10B2D000DFF8002801D100204CE00A212000F7F718 +:10B2E000CCF91D208DF8040043208DF805000223C1 +:10B2F00001AAD0210020F7F7CBF8002801D10020C7 +:10B3000038E01C208DF8040000208DF80500022391 +:10B3100001AAD0210020F7F7BBF8002801D10020B6 +:10B3200028E020208DF8040080208DF805000223FD +:10B3300001AAD0210020F7F7ABF8002801D10020A6 +:10B3400018E01F208DF8040080208DF805000223EE +:10B3500001AAD0210020F7F79BF8002801D1002096 +:10B3600008E0DFF82006007850F00100DFF814163E +:10B370000870012016BD00B583B000208DF80600CE +:10B380000020ADF80400012000900DF106036C22AE +:10B39000D0210020F7F7D6F8002801D1002030E0B6 +:10B3A0006C208DF804009DF8060050F038008DF8F0 +:10B3B0000500022301AAD0210020F7F769F8002830 +:10B3C00001D100201DE0DFF8BC05007880070FD414 +:10B3D0006B208DF8040040208DF80500022301AA9F +:10B3E000D0210020F7F754F8002801D1002008E010 +:10B3F000DFF89005007810F0FE00DFF8881508707F +:10B4000001200EBD480E0308782C01207C2C012061 +:10B410007D2C01207E2C01207F2C01207B2C012003 +:10B42000802C01207A2C012000B583B000208DF8FB +:10B4300004000020ADF806000120009001AB6C2252 +:10B44000D0210020F7F77EF8002801D1002014E079 +:10B450006C208DF806009DF8040050F038008DF83F +:10B46000070002230DF10602D0210020F7F710F8A3 +:10B47000002801D1002000E001200EBDF0B585B00C +:10B4800004000E0002A80021002206C00838002097 +:10B49000ADF804000125F6F704FF0700DFF8E80423 +:10B4A0000068401CDFF8E01408600120009002AB47 +:10B4B0006B22D0210020F7F745F8002801D10020A9 +:10B4C000C2E09DF8080040061AD56B208DF80400F4 +:10B4D0009DF8080010F0BF008DF80500022301AAB6 +:10B4E000D0210020F6F7D4FF002801D10020ABE0E6 +:10B4F00014213800F7F7C1F8DFF89004F6F752FF8F +:10B500000120009002AB6C22D0210020F7F71AF83E +:10B51000002801D1002097E09DF80800382108425A +:10B520001ED06C208DF804009DF8080010F0C700B4 +:10B530008DF80500022301AAD0210020F6F7A8FF0C +:10B54000002801D100207FE005213800F7F795F8A9 +:10B55000DFF83C04F6F726FFDFF83804012101602C +:10B56000F6B2009602AB3B22D0210020F6F7EAFFAC +:10B57000002805D1DFF82004F6F714FF002063E06F +:10B580009DF8090020709DF8080060709DF80B0080 +:10B59000A0709DF80A00E0709DF80D0020719DF8E4 +:10B5A0000C006071002000E0401C062806D2015DFE +:10B5B000DFF8E823825C9142F6D00025EDB2012D40 +:10B5C00018D1DFF8DC030068401CDFF8D4130860F2 +:10B5D000DFF8CC030068132804D1DFF8C803F6F7BE +:10B5E000E1FE0BE0DFF8B8030068142806D1FEF78F +:10B5F00029FF03E0DFF8A8030021016006222100F3 +:10B60000DFF89803F9F772F9DFF87C030068C821C6 +:10B6100090FBF1F201FB1200002814D1B4F90400F0 +:10B620000090B4F90230B4F90020DA480168DFF87C +:10B630007803F6F7B7FED4480068DC49884202DB9D +:10B64000D14800210160012005B0F0BD30B583B0C4 +:10B6500001240020ADF8060000208DF80400F6F764 +:10B6600020FE05000120009001AB6B22D0210020BC +:10B67000F6F768FF002801D100208BE09DF8040058 +:10B6800040061AD56B208DF806009DF8040010F0D6 +:10B69000BF008DF8070002230DF10602D021002023 +:10B6A000F6F7F6FE002801D1002073E014212800EF +:10B6B000F6F7E3FFBE48F6F775FE1D208DF806008D +:10B6C00008208DF8070002230DF10602D02100208A +:10B6D000F6F7DEFE002801D100205BE0012000909B +:10B6E00001AB6C22D0210020F6F72CFF002801D1FD +:10B6F00000204FE06C208DF806009DF8040050F00B +:10B7000080008DF804009DF8040050F007008DF8CB +:10B7100004009DF8040010F0C7008DF804009DF8A7 +:10B7200004008DF8070002230DF10602D02100204D +:10B73000F6F7AEFE002801D100202BE0012000909A +:10B7400001AB6B22D0210020F6F7FCFE002801D1CE +:10B7500000201FE06B208DF806009DF8040010F01B +:10B76000BF008DF804009DF8040050F020008DF813 +:10B7700004009DF804008DF8070002230DF1060275 +:10B78000D0210020F6F784FE002801D1002001E03E +:10B790002000C0B23EBD80B50020ADF80000FFF72C +:10B7A00055FF002801D1002045E01F208DF8000042 +:10B7B0004B208DF80100022300AAD0210020F6F7CB +:10B7C00067FE002801D1002035E01E208DF8000022 +:10B7D00006208DF80100022300AAD0210020F6F7F0 +:10B7E00057FE002801D1002025E069208DF80000D7 +:10B7F000C0208DF80100022300AAD0210020F6F716 +:10B8000047FE002801D1002015E00122012103207C +:10B81000F6F7BAFF38208DF8000040208DF80100BF +:10B82000022300AAD0210020F6F732FE002801D121 +:10B83000002000E0012002BD80B50020ADF800002E +:10B84000012200210320F6F79FFF38208DF8000029 +:10B8500000208DF80100022300AAD0210020F6F775 +:10B8600017FE002801D1002058E06B208DF8000061 +:10B8700000208DF80100022300AAD0210020F6F755 +:10B8800007FE002801D1002048E01D208DF80000AF +:10B8900000208DF80100022300AAD0210020F6F735 +:10B8A000F7FD002801D1002038E06C208DF8000061 +:10B8B00034480078032803D100208DF8010012E0FD +:10B8C00030480078022803D138208DF801000AE0C2 +:10B8D0002C480078012803D107208DF8010002E0F0 +:10B8E0003F208DF80100022300AAD0210020F6F7A6 +:10B8F000CFFD002801D1002010E069208DF8000064 +:10B9000000208DF80100022300AAD0210020F6F7C4 +:10B91000BFFD002801D1002000E0012002BD80B55C +:10B920000178012905D1FFF759FB00280AD1002031 +:10B9300009E00178022905D1FFF7E6FB002801D1D3 +:10B94000002000E0012002BD80B51A490020FAF76E +:10B95000EFF919490B20FAF7EBF901BD8CF4020855 +:10B96000003E4900A00E030801EFE700A80E0308FF +:10B97000980E0308E00D0308B00E0308B80E030884 +:10B98000B02E0120B12E0120BC2D0120C00E0308D5 +:10B99000C80E0308302E0120D00E0308942D01207C +:10B9A000342E0120600E0308700E0308A1860100EA +:10B9B000D80E03082C0D0308500D030810B5002401 +:10B9C000DFF88C0B007800280AD1FEF7E4FD002890 +:10B9D00001D1002007E0DFF8780B0121017000E0C1 +:10B9E00001242000C0B210BD1CB500208DF8060057 +:10B9F0000020ADF80400F6F754FC0400012000908C +:10BA00000DF106036B22D0210120F6F79BFD0028E3 +:10BA100001D1002068E09DF806006021084216D0A0 +:10BA20006B208DF804009DF8060010F09F008DF843 +:10BA30000500022301AAD0210120F6F729FD0028E4 +:10BA400001D1002050E032212000F6F716FE01203F +:10BA500000900DF106036C22D0210120F6F772FD53 +:10BA6000002801D100203FE06C208DF804009DF8F3 +:10BA7000060010F0F8008DF80500022301AAD0217D +:10BA80000120F6F705FD002801D100202CE00A2155 +:10BA90002000F6F7F2FD1B208DF8040008208DF839 +:10BAA0000500022301AAD0210120F6F7F1FC0028AD +:10BAB00001D1002018E01A208DF8040003208DF831 +:10BAC0000500022301AAD0210120F6F7E1FC00289D +:10BAD00001D1002008E0DFF87C0A007850F0020075 +:10BAE000DFF8701A0870012016BD00B583B0002081 +:10BAF0008DF806000020ADF80400012000900DF143 +:10BB000006036C22D0210120F6F71CFD002801D18C +:10BB1000002030E06C208DF804009DF8060050F005 +:10BB200007008DF80500022301AAD0210120F6F7B5 +:10BB3000AFFC002801D100201DE0DFF8180A0078D2 +:10BB4000C0070FD46B208DF8040040208DF805004D +:10BB5000022301AAD0210120F6F79AFC002801D186 +:10BB6000002008E0DFF8EC09007810F0FD00DFF8B5 +:10BB7000E419087001200EBD00B583B000208DF8D7 +:10BB800004000020ADF806000120009001AB6C22FB +:10BB9000D0210120F6F7D6FC002801D1002014E0C6 +:10BBA0006C208DF806009DF8040050F007008DF819 +:10BBB000070002230DF10602D0210120F6F768FCF0 +:10BBC000002801D1002000E001200EBD7FB5040057 +:10BBD00002A80021002206C0083800260020ADF887 +:10BBE0000400F6F75EFB05000120009002AB6B221B +:10BBF000D0210120F6F7A6FC002801D1002083E027 +:10BC00009DF80800400625D56B208DF804009DF8AE +:10BC1000080010F0BF008DF80500022301AAD02112 +:10BC20000120F6F735FC002801D100206CE032211C +:10BC30002800F6F722FDDFF82009F6F7B3FB00260F +:10BC400003E0F6B200203055761CF6B2062EF8DB83 +:10BC5000012059E00120009002AB6C22D02101208C +:10BC6000F6F770FC002801D100204DE09DF8080097 +:10BC70000721084225D06C208DF804009DF80800AB +:10BC800010F0F8008DF80500022301AAD021012050 +:10BC9000F6F7FEFB002801D1002035E00A2128003C +:10BCA000F6F7EBFCDFF8B408F6F77CFB002603E0C0 +:10BCB000F6B200203055761CF6B2062EF8DB0120D5 +:10BCC00022E00620009002AB4322D0210120F6F7AB +:10BCD00039FC002805D1DFF88808F6F763FB00205F +:10BCE00012E09DF8090020709DF8080060709DF832 +:10BCF0000B00A0709DF80A00E0709DF80D00207107 +:10BD00009DF80C006071012004B070BD2DE9F64F64 +:10BD1000ADF63C6D05000020ADF8080003A8142125 +:10BD2000F8F722FD002608A80021002200230EC0FB +:10BD30000C385FF0000940F68C1068444FF49661AF +:10BD4000F8F712FDFFA8E0304FF49661F8F70CFD0C +:10BD50000BA84FF49661F8F707FD5FF00008002785 +:10BD600000240020070000E07F1C032F80F2BA802F +:10BD70006B208DF80800781C8DF80900022302AAB8 +:10BD8000D0210120F6F784FB002801D1002099E1A1 +:10BD90003220FEF7C5FB6A208DF8080044208DF89C +:10BDA0000900022302AAD0210120F6F771FB002826 +:10BDB00001D1002086E1012409E019EB060608A85C +:10BDC00050F8270019EB000008A941F827002000CF +:10BDD000441E012875DB23208DF8080070208DF8A3 +:10BDE0000900022302AAD0210120F6F751FB002806 +:10BDF00001D1002066E14B20FEF792FB23208DF855 +:10BE0000080000208DF80900022302AAD021012099 +:10BE1000F6F73EFB002801D1002053E102200090FC +:10BE200003AB7222D0210120F6F78CFB002801D150 +:10BE3000002047E103A8FEF75CFC00EE100AB8EE14 +:10BE4000C00A10EE100AFCF7FBF8DFF81827DFF83D +:10BE50001837F6F709FFF7F731FA8146B9F14800CC +:10BE60000128B4DB5FF000081DE003A8FEF741FCE9 +:10BE700018EB060140F68C126A4422F811000DF10D +:10BE80000E00FEF736FC18EB0601FFAAE03222F89E +:10BE9000110004A8FEF72DFC18EB06010BAA22F8EE +:10BEA000110018F10108C84587DA0620009003AB9D +:10BEB0007422D0210120F6F745FB0028D5D10020BF +:10BEC00000E123208DF8080000208DF809000223EE +:10BED00002AAD0210120F6F7DBFA00287FF444AF54 +:10BEE0000020EFE0002E01D0340000E001245FF0DC +:10BEF000000800200021C5E9000100200021C5E95B +:10BF0000020100200021C5E9040122E0D5E9000179 +:10BF100040F68C126A4432F91820D3178018594120 +:10BF2000C5E90001D5E90201FFAAE03232F9182083 +:10BF3000D31780185941C5E90201D5E904010BAABC +:10BF400032F91820D31780185941C5E9040118F1B6 +:10BF50000108B045DADBD5E900012200E317FDF75F +:10BF6000BBF8C5E90001D5E902012200E317FDF79E +:10BF7000B3F8C5E90201D5E904012200E317FDF792 +:10BF8000ABF8C5E904015FF00008DDF83C0E0022C3 +:10BF90000023C0E90023DDF83C0E00220023C0E9A5 +:10BFA0000223DDF83C0E00220023C0E9042382E0D6 +:10BFB000DDF83C2ED2E90001CDE9000140F68C10FD +:10BFC000684430F91800C117D5E90023801A994157 +:10BFD00040F68C126A4432F918A05FEAEA7BD5E990 +:10BFE0000023BAEB02027BEB0303A2FB00AB02FBD4 +:10BFF00001BB03FB00BBDDE9000110EB0A0051EBC4 +:10C000000B01DDF83C2EC2E90001DDF83C2ED2E93F +:10C010000201CDE90001FFA8E03030F91800C11796 +:10C02000D5E90223801A9941FFAAE03232F918A01B +:10C030005FEAEA7BD5E90223BAEB02027BEB03035A +:10C04000A2FB00AB02FB01BB03FB00BBDDE900016F +:10C0500010EB0A0051EB0B01DDF83C2EC2E90201A6 +:10C06000DDF83C2ED2E90401CDE900010BA830F93E +:10C070001800C117D5E90423801A99410BAA32F997 +:10C0800018A05FEAEA7BD5E90423BAEB02027BEB56 +:10C090000303A2FB00AB02FB01BB03FB00BBDDE91A +:10C0A000000110EB0A0051EB0B01DDF83C2EC2E958 +:10C0B000040118F10108B045FFF67AAFDDF8400E33 +:10C0C000066001200DF6446DBDE8F08F2DE9F043C8 +:10C0D00089B004000D00160001275FF0000801A8D8 +:10C0E000002101600320009001AB0022D02101203B +:10C0F000F6F728FA002801D15FF0FF375FF000095A +:10C1000007E04FFA89F905A8002140F8291019F134 +:10C1100001094FFA89F9B9F1030F17DA4FFA89F9D2 +:10C1200001A819F800000028EBD04FFA89F901A8FE +:10C1300019F80000DFF8341411EB400030F8020C5D +:10C140004FFA89F905A941F82900E0E75FF00009F5 +:10C1500025E04FFA89F902A850F82900DFF81014F9 +:10C16000884208DADFF80C04F6F71CF9012010FA0F +:10C1700009F050EA08084FFA89F902A850F8290096 +:10C18000DFF8F413884208DBDFF8F003F6F70AF96A +:10C19000012010FA09F050EA080819F101094FFAD4 +:10C1A00089F9B9F1030F3ADA4FFA89F955F82900FC +:10C1B0004FFA89F956F82910401A09F083FA4FFA14 +:10C1C00089F902A941F829004FFA89F905A850F820 +:10C1D00029000028BDD04FFA89F902A850F829009B +:10C1E0004FFA89F905A951F8291090FBF1F0B0F543 +:10C1F0007A7009F067FA4FFA89F924F819004FFAB2 +:10C2000089F934F91900B0F5FA7FC6DDDC48F6F794 +:10C21000C9F8012010FA09F050EA0808BDE74FFA02 +:10C2200088F8B8F1000F04D0D648F6F7BBF87FF0D5 +:10C230000207380040B209B0BDE8F0832DE9F043B1 +:10C240009DB00400012501260CA81821F8F78CFAEE +:10C2500006A81821F8F788FA02A80021016000A8B2 +:10C260000021002206C00838002718A8002100225B +:10C2700000230EC00C3815A80021002200230EC098 +:10C280000C3812A80021002200230EC00C3803A88D +:10C290000021002200230EC00C38BB48D0F80480D7 +:10C2A000FEF72DFA002801D10020EDE0FEF73AFB61 +:10C2B0000500EDB2012D09D1012702AA06A90CA89B +:10C2C000FFF724FD002803D10020DDE00020DBE0A3 +:10C2D000FEF70DFC002801D10020D5E0002303AAC1 +:10C2E00015A90020FEF741FC060076B2012E02D00F +:10C2F000A648F6F757F8002312AA18A97FF01F00E6 +:10C30000FEF733FC060076B2012E02D0A048F6F705 +:10C3100049F818AA15A900A8FFF7D8FE060076B2BA +:10C32000012E02D09B48F6F73DF85FF0000918E0B7 +:10C330005FFA89F918EB49025FFA89F90CA810EB4A +:10C34000C903D3E900018000A2F858005FFA89F917 +:10C3500018EB4900B0F958108F48F6F723F819F197 +:10C3600001095FFA89F9B9F1030FE1DB2770BDF824 +:10C3700000006070BDF900000012A070BDF802005E +:10C38000E070BDF9020000122071BDF80400607178 +:10C39000BDF904000012A071E671029820720298A3 +:10C3A0000012607202980014A07202980016E072E7 +:10C3B000DDE90C012073DDE90C0100B200126073AD +:10C3C000DDE90C010014A073DDE90C010016E07337 +:10C3D000DDE90E012074DDE90E0100B20012607487 +:10C3E000DDE90E010014A074DDE90E010016E07411 +:10C3F000DDE910012075DDE9100100B20012607561 +:10C40000DDE910010014A075DDE910010016E075EA +:10C41000DDE906012076DDE9060100B20012607652 +:10C42000DDE906010014A076DDE906010016E076DC +:10C43000DDE908012077DDE9080100B2001260772C +:10C44000DDE908010014A077DDE908010016E077B6 +:10C45000DDE90A0184F82000DDE90A0100B20012DA +:10C4600084F82100DDE90A01001484F82200DDE9E6 +:10C470000A01001684F82300FEF7ACF9002801D168 +:10C48000002001E02800C0B21DB0BDE8F08330B547 +:10C4900083B004000020ADF8040000203A494D6844 +:10C4A000697A002907D1286E40688047F5F7F9FEC0 +:10C4B0000A21F6F7E2F80220009001AB4122D021D8 +:10C4C0000120F6F73FF8002801D1002017E09DF881 +:10C4D00005009DF8041050EA0120032110FB01F033 +:10C4E0004FF47A7190FBF1F01530207000206070ED +:10C4F000687A002802D1286E8068804701203EBDFE +:10C5000080B50178002905D1FFF798FE00280AD1EF +:10C51000002009E00178012905D1FFF7B8FF0028C4 +:10C5200001D1002000E0012002BD80B5C0B2062884 +:10C5300006D10800FFF7ABFF002801D1002000E082 +:10C54000012002BD80B515490120F9F7F1FB01BDBD +:10C55000B02E0120B12E0120E00E0308E80E0308E2 +:10C56000F00E03082D211FF46C56C53F8CF602080F +:10C5700030FD1300000F030879E2D100080F030813 +:10C58000F80E0308100F030808400020180F0308D6 +:10C59000200F0308280F0308800E0308740D0308FA +:10C5A000DFF88005704730B583B00020ADF8060095 +:10C5B0008DF804000120009001AB00221821022018 +:10C5C000F5F7C0FF04469DF8040048281FD131202C +:10C5D0008DF806000DF106050120687002230DF1AB +:10C5E000060218211846F5F753FF00280DD0312018 +:10C5F0008DF806000020687002230DF10602182154 +:10C600001846F5F745FF002802D100203EBD002462 +:10C6100018220021DFF80C05F5F720FE20463EBD6C +:10C6200070B582B00020ADF8000009F054F804465F +:10C63000DFF8F4048168497AC268527A51180069B7 +:10C64000407A0818012801DB012076BDDFF8DC54B0 +:10C65000687801281CD032208DF8000000AE01203F +:10C660007070022300AA18211846F5F711FF002860 +:10C670000CD031208DF8000001207070022300AA38 +:10C6800018211846F5F704FF002803D1002076BDD5 +:10C6900001202870281D61698847012076BD38B5C2 +:10C6A0000020ADF8000009F016F80446DFF8780421 +:10C6B0008168497AC268527A51180069407A08182C +:10C6C000022801DB012032BDDFF860542878012800 +:10C6D00012D031208DF8000000208DF801000223D7 +:10C6E00000AA18211846F5F7D3FE002801D1002032 +:10C6F00032BD0020687001E000202870281D2169EB +:10C700008847012032BD80B50020ADF800003120FF +:10C710008DF8000000208DF80100022300AA1821E6 +:10C720001846F5F7B5FE002801D1002002BD012012 +:10C7300002BD7CB504460020ADF806008DF804006B +:10C740000120009001AB002218210220F5F7FAFE2B +:10C7500005469DF80400482829D131208DF80600AF +:10C760000DF106061F20707002230DF1060218213C +:10C770001846F5F78DFE002817D0032000902346B9 +:10C78000602218210220F5F7DDFE00280DD03120AF +:10C790008DF806000020707002230DF106021821AA +:10C7A0001846F5F775FE002802D1002076BD002559 +:10C7B000284676BD0021DE4A02E00B5C8B54491C02 +:10C7C0001B29FADBDB48C0F8D423012070472DE990 +:10C7D000F04387B004460D4616461F464FF000084A +:10C7E0004046ADF8040002A841460A460B460EC07A +:10C7F0004FF0050906C00120009002AB102218215D +:10C800000220F5F79FFE9DF80810C9070ED50128F4 +:10C810000CD1082000900DF10903112218210220EB +:10C82000F5F790FE002807D140467BE04846A0F18E +:10C83000010980B20028DED1BF489DF808100170C0 +:10C8400002A90A7A4270CA7982704A78C2708A78DC +:10C850000271CA7842710A7982714A79C271897902 +:10C8600001720AE002A800EB48008178407810EBE2 +:10C87000012024F8180008F10108B8F1030FF1DBDA +:10C88000A948D0F80C8008F10C0999F81520214628 +:10C89000D9F80C00D8F80C30C018F8F727F8404643 +:10C8A00002F0BAFB99F81520D9F80C00D8F80C1052 +:10C8B00041182046F8F71AF8DFF8788205AA2146D1 +:10C8C000404609F05DF998F9F4023860B8F8EE00D6 +:10C8D000288008F2EE00418869808188A9808189DA +:10C8E0002180C1896180008AA08020882988401A1F +:10C8F000308060886988401A7080A088A988401AB2 +:10C90000B08031208DF8040001208DF8050002234D +:10C9100001AA18211846F5F7BBFD002801D1002017 +:10C9200000E0012007B0BDE8F08330B585B00446D3 +:10C930000020ADF8040002A800210A460B460EC0F4 +:10C9400005250120009002AB102218210220F5F7E6 +:10C95000F9FD9DF80810C9070ED501280CD1082053 +:10C9600000900DF10903112218210220F5F7EAFDCC +:10C97000002806D1002029E02846451E80B2002864 +:10C98000DFD16D489DF80810017002A90A7A427043 +:10C990004878207088786070C878A0700879E07056 +:10C9A000487920719DF80E00607131208DF80400E7 +:10C9B00001208DF80500022301AA18211846F5F779 +:10C9C00067FD002801D1002000E0012005B030BD46 +:10C9D0002DE9F04104460025FDF730FD0746FFF73D +:10C9E000DFFD06465048D0F81080F86E40070BD4A3 +:10C9F00006F1140306F10C02B11D3046FFF7E7FE05 +:10CA0000002801D1284651E098F80A00012848D1B1 +:10CA100049480178217041786170C178A17001792D +:10CA2000E1704179217181796171C179A171007AD7 +:10CA3000E0714048818D2172B0F92C1009126172A9 +:10CA400000F12C014A88A272B1F902201212E2729E +:10CA50008A882273B1F9041009126173B0F8F410D6 +:10CA6000A173B0F9F4100912E173F4304188217414 +:10CA7000B0F90210091261748188A174B0F9040040 +:10CA80000012E074284620750FE006EB4500C188CF +:10CA900004F8151004EB4501B0F9060000124870C7 +:10CAA0006D1C032DF1DB7069A0710120BDE8F081E0 +:10CAB000F8B504460025FDF7C1FC0746FFF770FDF9 +:10CAC0000646F86E000705D52046FFF72EFF002822 +:10CAD00026D109E006F1140306F10C02B11D30461F +:10CAE000FFF775FE002814D12846F2BD36F8150070 +:10CAF00004F8150004EB450036F9151009124170D1 +:10CB000006EB45018A898271B1F90C100912C171D5 +:10CB10006D1C032DEADB182231460248F7F7E6FECA +:10CB20000120F2BD082B012008400020C42B012069 +:10CB3000B42A0120E0D500209C2C01207CB50446BD +:10CB40000020ADF806008DF80400F5F7AAFB0546B5 +:10CB50000120009001AB002218210220F5F7F2FC21 +:10CB60009DF80410482932D131208DF806000DF1CE +:10CB700006061F20707002230DF1060218211846C8 +:10CB8000F5F786FC00281BD031208DF80600002028 +:10CB9000707002230DF1060218211846F5F778FC93 +:10CBA00000280DD001212846F5F767FD01200090EF +:10CBB00001AB312218210220F5F7C4FC002801D175 +:10CBC000002076BD9DF804002070012076BDFF2175 +:10CBD000217076BD2DE9F04387B0044604A80021FA +:10CBE0000A460B460EC00846ADF80C004FF005098A +:10CBF000F5F757FB05460220009004AB00221821F0 +:10CC0000F5F7A0FC06469DF81000482840F00B817F +:10CC10009DF81000207004AF7878607031208DF896 +:10CC20000C000DF10C081F2088F80100022303AA54 +:10CC300018211846F5F72CFC002800F0F580032099 +:10CC4000009004AB602218210220F5F77BFC00283D +:10CC500000F0EA809DF81000A0707878E070B87855 +:10CC6000207131208DF80C00002088F8010002238B +:10CC700003AA18211846F5F70BFC002800F0D48011 +:10CC80000120009004AB312218210220F5F75AFC54 +:10CC9000002800F0C9809DF81000607531208DF8E3 +:10CCA0000C00012088F80100022303AA182118466D +:10CCB000F5F7EEFB002800F0B7801E212846F5F7B7 +:10CCC000DCFC0120009004AB102218210220F5F7B3 +:10CCD00039FC06469DF81000C0070DD5012E0BD17A +:10CCE000082000900DF11103112218210220F5F700 +:10CCF00029FC002806D160E04846A0F1010980B275 +:10CD00000028DED1B87902907879019038790090C6 +:10CD1000FB78BA7879780FF26C10F5F743FBB878A6 +:10CD2000797811EB00203979FA7812EB0121BA7980 +:10CD30007B7913EB022203461BB21B126371A071B5 +:10CD4000084600B20012E0712172104600B20012D3 +:10CD50006072A2729DF81000E072387A2073312060 +:10CD60008DF80C00102088F80100022303AA182176 +:10CD70001846F5F78DFB002856D01E212846F5F7FA +:10CD80007CFC4FF005090120009004AB1022182113 +:10CD90000220F5F7D7FB06469DF81000C0070ED518 +:10CDA000012E0CD1082000900DF111031122182141 +:10CDB0000220F5F7C7FB002807D1002035E04846E0 +:10CDC000A0F1010980B20028DDD1B879029078790C +:10CDD000019038790090FB78BA7879780FF2C0002A +:10CDE000F5F7E0FAB878797811EB00203979FA781C +:10CDF00012EB0121BA797B7913EB022203461BB2B5 +:10CE00001B126373A073084600B20012E073217412 +:10CE1000104600B200126074A2749DF81000E07415 +:10CE2000387A207500E00026304607B0BDE8F08370 +:10CE300018B404460B4611460020032C04D0042CE1 +:10CE400005D0072C06D008E0184614BC71E418463B +:10CE500012BC73E6184612BCACE412BC704710B5A5 +:10CE60000FF2580421460220F8F762FF0FF270011A +:10CE70000420F8F75DFF21460320BDE81040F8F7D5 +:10CE800057BF0000474D53312D25642C2025642CBD +:10CE90002025642C2025642C2025642C202564006A +:10CEA000474D53322D25642C2025642C2025642CDD +:10CEB0002025642C2025642C20256400A7C50008AB +:10CEC00021C600089FC6000807C700080000000030 +:10CED000B1CA000800000000D5CB000831CE000820 +:10CEE000A7C5000821C600089FC6000807C700089C +:10CEF00000000000D1C9000800000000D5CB0008E8 +:10CF000031CE00082DE9F84304460D4616461F466B +:10CF1000DFF8600DD0F81880D8F80C90169A12B28D +:10CF20000021484609F07EF80D9A12B202214846C7 +:10CF300009F078F80E9A12B20421484609F072F806 +:10CF40000F9A12B20621484609F06CF8109A12B2F4 +:10CF50000821484609F066F8119A12B20A2148469B +:10CF600009F060F8129A12B20C21484609F05AF8FA +:10CF7000139A12B20E21484609F054F8149A12B2CC +:10CF80001021484609F04EF8159A12B2122148466F +:10CF900009F048F8224612B21421484609F042F836 +:10CFA0002A4612B21621484609F03CF8324612B21F +:10CFB0001821484609F036F83A4612B21A21484676 +:10CFC00009F030F8089A12B21C21484609F02AF8F4 +:10CFD000099A12B21E21484609F024F80A9A12B2A0 +:10CFE0002021484609F01EF80B9A12B22221484629 +:10CFF00009F018F80C9A12B22421484609F012F8E8 +:10D00000012088F81D00BDE8F18300B583B0002041 +:10D01000ADF806008DF804000120009001AB02225B +:10D020009A210620F5F78EFA002829D09DF80400F1 +:10D0300000F00700022801D000280AD1FDF7FEF910 +:10D0400090F88E00002804D14FF480510020F5F7AD +:10D050008DFB9DF804000721084213D102208DF8B2 +:10D0600006009DF8040040F080008DF807000223C0 +:10D070000DF106029A210620F5F70AFA002801D1DF +:10D0800000200EBD01200EBD00B583B00020ADF81C +:10D0900006008DF804000120009001AB02229A21C5 +:10D0A0000620F5F74FFA002801D100200EBD9DF8AB +:10D0B000040000F007009DF80410072211422CD054 +:10D0C000052801D0042814D101208DF806009220F3 +:10D0D0008DF807000FF27800F5F764F902230DF1DF +:10D0E00006029A210620F5F7D3F9002801D1002085 +:10D0F0000EBD02208DF806009DF8040000F07F00B0 +:10D100008DF8070002230DF106029A210620F5F79B +:10D11000BFF9002801D100200EBD0120009001AB15 +:10D1200000229A210620F5F70DFA002801D10020EF +:10D130000EBD0120009001AB44229A210620F5F794 +:10D1400001FA002801D100200EBD01200EBD000013 +:10D150003D3E53494E5445393200000030B583B04E +:10D1600004460020ADF806008DF804000546002CAA +:10D1700007D1DFF8EC0C416B491C41630121C1630D +:10D1800006E0012C04D1DFF8D80C816B491C8163C7 +:10D190000120009001AB02229A210620F5F7D2F976 +:10D1A000002862D09DF8040000F0070007285CD832 +:10D1B000DFE800F00D5B085B0A04060C012506E0C1 +:10D1C000022504E0042502E0052500E0062545FAD5 +:10D1D00004F0C0074BD4680704D5002C10D0012CF4 +:10D1E00006D042E0A80705D5002C11D0022C3CD176 +:10D1F000072412E0E80705D5012C0BD0022C34D10E +:10D2000004240AE0002C03D0022C05D002D32CE029 +:10D21000052402E0062400E0022401208DF8060027 +:10D220000DF10605102068709DF8040000F0DF0085 +:10D230008DF8040002230DF106029A210620F5F76D +:10D2400027F9002811D002208DF806009DF804006F +:10D2500000F0F8002043687002230DF106029A21C5 +:10D260000620F5F715F9002801D100203EBD012068 +:10D270003EBD00007CB505460020ADF806008DF8E7 +:10D28000040006460446002D0BD1DFF8D40B416B99 +:10D29000491E416301D521464163406B012880F25C +:10D2A0007980012D0AD1DFF8B80B816B491E8163AB +:10D2B00001D521468163806B01286BDA0120009043 +:10D2C00001AB02229A210620F5F73CF900285FD035 +:10D2D0009DF8040000F00700072859D8DFE800F0A7 +:10D2E0000D5808580A04060C012606E0022604E040 +:10D2F000042602E0052600E0062646FA05F0C007EF +:10D3000048D570070DD5002D02D0022D02D03FD296 +:10D31000022406E0F00701D5052402E0B00700D59D +:10D3200006242046052801D0042809D112208DF8B2 +:10D3300007009DF8040040F020008DF8040008E08C +:10D3400010208DF807009DF8040000F0DF008DF834 +:10D35000040001208DF8060002230DF106029A2137 +:10D360000620F5F795F8002812D002208DF8060067 +:10D370009DF8040000F0F80020438DF80700022318 +:10D380000DF106029A210620F5F782F8002801D156 +:10D39000002076BD012076BD7CB50FF29400F5F734 +:10D3A00001F80020ADF806008DF804000646FDF7F0 +:10D3B00045F80446DFF8A85A0120686300E0761CAF +:10D3C0000F2E13DA7019007C8DF80600701990F892 +:10D3D00020008DF8070002230DF106029A21072094 +:10D3E000F5F756F80028EAD1002076BD0020FFF7B7 +:10D3F00041FF002801D1002076BDFFF706FE00287E +:10D4000001D1002076BD0120009001AB00229A21BD +:10D410000720F5F797F8002801D1002076BD782085 +:10D42000A4F88A005020A4F88C00012076BD0000EA +:10D430003D3E50525000000010B582B00FF21C105B +:10D44000F4F7B0FF0020ADF800004FF48051F5F77D +:10D450008BF9DFF80C0A816B012906DB416B491C53 +:10D46000416301210164084616BD0020FFF776FEE6 +:10D47000002801D1002016BD03208DF8000000AC6B +:10D48000A0206070022300AA9A210720F5F700F877 +:10D49000002801D1002016BD04208DF800005C207A +:10D4A0006070022300AA9A210720F4F7F1FF0028F8 +:10D4B00001D1002016BD63208DF800007F20607030 +:10D4C000022300AA9A210720F4F7E2FF002801D1E5 +:10D4D000002016BD64208DF800000B206070022330 +:10D4E00000AA9A210720F4F7D3FF002801D10020D9 +:10D4F00016BD67208DF800003C206070022300AA52 +:10D500009A210720F4F7C4FF002801D1002016BD9E +:10D5100068208DF8000000206070022300AA9A2184 +:10D520000720F4F7B5FF002801D1002016BD6920BF +:10D530008DF8000014206070022300AA9A210720B1 +:10D54000F4F7A6FF002801D1002016BDFFF79CFDCF +:10D55000002801D1002016BD012016BD3D3E5052CD +:10D560004F00000080B50FF69050F4F71BFF00202D +:10D57000FFF780FE002801D1002002BDFFF745FD26 +:10D58000002801D1002002BD012002BD80B500208D +:10D59000FFF770FE002801D1002002BDFFF735FD26 +:10D5A000002801D1002002BD012002BD30B583B0AA +:10D5B00004460020ADF80400DFF8D85CA86B002812 +:10D5C00039D10120009001AB54229A210720F4F7B1 +:10D5D000B9FF00281DD09DF80400C0F30210C01D43 +:10D5E0000221009101AB9DF80410C1F30211C91D85 +:10D5F000821000EB5270C010A1EBC000C0B240001E +:10D6000000F14402D2B29A210720F4F79BFF0028D0 +:10D6100001D100203EBD9DF80400000200F4E0604E +:10D620009DF80510084340F2FF31401A00B200286F +:10D6300000D500202886B5F93000207000126070F7 +:10D6400001203EBDF0B583B004460F46FCF7F6FE60 +:10D650000646F4F726FE054600200190B6F88C2019 +:10D66000B6F88A100FF69840F4F79CFE3946601C15 +:10D67000FFF79CFFDFF81C0C406C44F620618842E9 +:10D6800002DB00206070A070B6F88A00A178627892 +:10D6900042EA0121884201DA012000E000202070E6 +:10D6A00020782875287D0028A078617841EA00213B +:10D6B00004D00FF65C40F4F775FE03E00FF6584017 +:10D6C000F4F770FE0120009001AB02469A2106207B +:10D6D000F4F738FF002819D09DF80400000617D58C +:10D6E0000FF63C40F4F75EFE01208DF806009DF831 +:10D6F000040000F07F008DF8070002230DF1060200 +:10D700009A210620F4F7C4FE002801D10020FEBDB6 +:10D710000120FEBD70B582B00020ADF80000FCF71E +:10D720008DFE044604F28A06B4F88A00002802D06E +:10D730007088002808D10FF6F430F4F733FE782013 +:10D74000A4F88A0050207080B4F88A0000F2FF35F7 +:10D75000ADB2708800F2FF34A4B25A208DF80000F8 +:10D7600000AE2846000A7070022300AA9A21072002 +:10D77000F4F78EFE002801D1002076BD5B208DF8E5 +:10D7800000007570022300AA9A210720F4F780FE9A +:10D79000002801D1002076BD5C208DF800002046D5 +:10D7A000000A7070022300AA9A210720F4F770FE85 +:10D7B000002801D1002076BD5D208DF80000747036 +:10D7C000022300AA9A210720F4F762FE002801D163 +:10D7D000002076BDDFF8BC0AB0F930100FF65430E7 +:10D7E000F4F7E0FD012076BD80B50FF6C4310720C7 +:10D7F000F8F79EFA0FF6DC310A20BDE80440F8F78E +:10D8000097BA1CB50020ADF806008DF804000FF69D +:10D810003830F4F7C7FD002400E0641C0A2C14DA49 +:10D82000DFF86C0A205C8DF80600DFF8680A205CDF +:10D830008DF8070002230DF106029A210620F4F765 +:10D8400027FE0028E9D1002016BDF6F73DF801209B +:10D85000FFF710FD002801D1002016BDFFF7D5FB12 +:10D86000002801D1002016BD0120009001AB00224C +:10D870009A210620F4F766FE002801D1002016BD8B +:10D88000012016BD38B50020ADF800000FF6C0200D +:10D89000F4F788FD4FF480510020F4F765FF012074 +:10D8A000FFF75CFC002801D1002032BD03208DF879 +:10D8B0000000DFF8E04900ADA0786870022300AAFC +:10D8C0009A210620F4F7E4FD002801D1002032BDA2 +:10D8D00004208DF800003C206870022300AA9A21E1 +:10D8E0000620F4F7D5FD002801D1002032BD6320C9 +:10D8F0008DF8000064206870022300AA9A21062097 +:10D90000F4F7C6FD002801D1002032BD64208DF857 +:10D91000000009206870022300AA9A210620F4F76B +:10D92000B7FD002801D1002032BD67208DF800002E +:10D9300024206870022300AA9A210620F4F7A8FD8B +:10D94000002801D1002032BD68208DF800000020A1 +:10D950006870022300AA9A210720F4F799FD002895 +:10D9600001D1002032BD69208DF8000000206870D0 +:10D97000022300AA9A210720F4F78AFD002801D18A +:10D98000002032BDFFF780FB002801D1002032BD0E +:10D990000120A07332BD10B50FF6BC10F4F702FDE4 +:10D9A0000120FFF767FC002803D0FFF72EFB0028BB +:10D9B00001D1002010BDDFF8DC48606B012807DBD7 +:10D9C000A06B002804D1FFF737FD606B401E606339 +:10D9D000012010BD80B50120FFF74CFC002801D1CB +:10D9E000002002BDFFF711FB002801D1002002BD7D +:10D9F000012002BD2DE9F0478CB000200290FCF719 +:10DA00001DFD05460120009002AB54229A210620FC +:10DA1000F4F798FD002800F08F809DF8080000F0D2 +:10DA20000F06032E00DB0226C0F302100830801B15 +:10DA30009DF80810C1F302110831891B821000EB18 +:10DA40005270C010A1EBC007FFB24FF000080DF1FB +:10DA5000080A0EE09DF80800000200F4E0609AF861 +:10DA600001100843A0F2FF3003A941F8280008F193 +:10DA70000108B04562DA08EB0704A01004EB50700F +:10DA8000C010A4EBC0004FEA40090220009002AB96 +:10DA900009F11402D2B29A210620F4F753FD0028AE +:10DAA0004AD09DF80800000200F4E0609AF80110E6 +:10DAB0000843A0F2FF3009A941F828000220009095 +:10DAC00002AB09F12402D2B29A210620F4F73AFD02 +:10DAD000002831D09DF80800000200F4E0609AF8B8 +:10DAE00001100843A0F2FF3007A941F828000220E6 +:10DAF000009002AB09F13402D2B29A210620F4F769 +:10DB000021FD002818D09DF80800000200F4E06014 +:10DB10009AF801100843A0F2FF3005A941F8280047 +:10DB20000220009002AB09F14402D2B29A210620F1 +:10DB3000F4F708FD00288DD1002056E0002E4FD0CC +:10DB400003A8019005A8009007AB09AA31460DF182 +:10DB50000A0000F04DF8C24CBDF80A002086606B48 +:10DB6000012826DBE06B012823D1206C002820D17E +:10DB7000F4F797FB007D01280BD1B4F93000B5F81C +:10DB80008C10884205DADFF81017202002F0D2FD51 +:10DB90000FE0F4F786FB007D00280AD1B5F88A0073 +:10DBA000B4F93010884204DADFF8EC16202002F0D5 +:10DBB000C1FD00202064A07B00280AD007980090B7 +:10DBC000099B059A0399DFF8D40608F0B9FB0020F9 +:10DBD000A073009607AB09AA05A903A808F031FCB9 +:10DBE00024488169487F00224A770CB0BDE8F0875D +:10DBF0002DE9F04105460C460026DDF8188014E0BA +:10DC000058F8260000EE100AB8EEC00A10EE100A0E +:10DC1000FAF716FA0022DFF8C836F5F725F8F5F717 +:10DC20004DFB1938C0192880761CB5F90070A64242 +:10DC3000E6DB002F01D500202880B5F9000090FB1D +:10DC4000F4F028800120BDE8F08180B5052802D1DC +:10DC5000084600F002F8012002BD80B50278DFF826 +:10DC600034168A7001780FF2F860F4F79BFB0120FC +:10DC700002BD0000084000207CB504460020ADF83D +:10DC80000400FFF7FFFDF4F70CFB0A21F4F7F5FCA5 +:10DC90000120009001AB54229A210620F4F752FC97 +:10DCA000002801D1002076BD9DF80400C0F30210C9 +:10DCB000C01D9DF80410C1F30211C91D821000EBB4 +:10DCC0005270C010A1EBC000C0B24500022000900D +:10DCD00001AB05F11402D2B29A210620F4F732FC0E +:10DCE000002801D1002076BD9DF80400207001AE0F +:10DCF000707860700220009001AB05F12402D2B26E +:10DD00009A210620F4F71EFC002801D1002076BDE0 +:10DD10009DF80400A0707078E0700220009001ABC4 +:10DD200005F13402D2B29A210620F4F70BFC002848 +:10DD300001D1002076BD9DF80400207170786071DB +:10DD40000220009001AB05F14402D2B29A210620D4 +:10DD5000F4F7F8FB002801D1002076BD9DF80400FF +:10DD6000A0717078E0710FF20860F4F71BFBFFF709 +:10DD700012FE012076BD0FF280610620F7F7D8BFB2 +:10DD80001CB50020ADF806008DF804000FF2EC5031 +:10DD9000F4F708FB002400E0641CDFF84805032CBE +:10DDA00012DA211809798DF806102018007A8DF8FA +:10DDB000070002230DF106029A210920F4F768FBFF +:10DDC0000028E9D1002016BD012101700220FFF7D3 +:10DDD00051FA002801D1002016BDFFF716F90028DE +:10DDE00001D1002016BD0120009001AB00229A2134 +:10DDF0000920F4F7A7FB002801D1002016BD01205F +:10DE000016BD80B50FF27C50F4F7CCFA0220FFF774 +:10DE1000A5F9002801D1002002BDFFF735F900283F +:10DE200001D1002002BD012002BD80B50FF260507B +:10DE3000F4F7B8FADFF85C04406B012801DB01203D +:10DE400002BD0220FFF716FA002801D1002002BD12 +:10DE5000FFF7DBF8002801D1002002BD012002BD40 +:10DE6000907B002080B50220FFF704FA002801D142 +:10DE7000002002BDFFF7C9F8002801D1002002BD33 +:10DE8000012002BD2DE9F04F8BB0044606A8002109 +:10DE90000A460B460EC00846ADF8100009900A204D +:10DEA000009006AB08229A210920F4F74BFB0028CA +:10DEB00000F0468106A8C179DFF8D853002902D1C5 +:10DEC0008279002A04D08279FF2906D13F2A04D121 +:10DED000297BC171697B817101E029736A73417883 +:10DEE00021709DF818106170C178A1708178E1707F +:10DEF0004179217101796171C179A1718179E171F2 +:10DF0000417A2172007A60720120009006AB0522EE +:10DF10009A210920F4F716FB002800F011819DF8E2 +:10DF2000180000F00300A0720020E0726078000288 +:10DF300000F47C50217841EA0006E078000200F409 +:10DF40007C50A17841EA000A6079000200F47C501C +:10DF5000217941EA0007E079000200F47C50A179C0 +:10DF60000843ADF81200607A000200F47C50217A78 +:10DF700041EA0008E07A000200F47C50A17A51EAFC +:10DF80000009D34618D10A209AFBF0F0AAEB000A48 +:10DF90001FFA8AFABBF1790F65DB05208DF81000B6 +:10DFA00061208DF81100022304AA9A210620F4F7BB +:10DFB0006FFA002857D1C3E0B9F1010F3AD143F607 +:10DFC0009A10864203DA834501DA87420EDB052088 +:10DFD0008DF8100062208DF81100022304AA9A2106 +:10DFE0000620F4F755FA002812D1A9E0BBF1140F6E +:10DFF0000EDA05208DF8100060208DF81100022344 +:10E0000004AA9A210620F4F743FA002800F0988029 +:10E01000ABF11400062804D20AF1020A1FFA8AFAA8 +:10E0200021E0ABF11A0005281DD20AF1010A1FFAFE +:10E030008AFA18E0B9F1020F15D140F63330864262 +:10E0400011DA83450FDA87420DDA05208DF81000CA +:10E0500061208DF81100022304AA9A210620F4F70A +:10E0600017FA00286CD05046000AE07084F802A02D +:10E0700009A8039005A80290CDF80490CDF800807F +:10E08000BDF812303A465146304600F05BF805982C +:10E090006864014644F6206081422BDBEA6B012A6A +:10E0A00028D10FF2F420F4F77DF90020E863012075 +:10E0B000009006AB02469A210620F4F743FA0028A6 +:10E0C0003ED001208DF810009DF8180000F0FD00F2 +:10E0D0008DF81100022304AA9A210620F4F7D8F93A +:10E0E00000282DD06C49202002F024FB01200BB029 +:10E0F000BDE8F08F8142F9DAE86B0028F6D10FF223 +:10E10000A420F4F74FF90120E863A86B0028EDD1B3 +:10E110000120009006AB44229A210620F4F712FA5F +:10E1200000280DD001208DF8100092208DF81100EC +:10E13000022304AA9A210620F4F7AAF90028D5D1CF +:10E140000020D4E72DE9F0412DED048B06468846EA +:10E1500017469FED538BB0EE489AF0EE689A002474 +:10E160000B9DADB2042D49DA9FED4F8B08E053ECC7 +:10E17000182B00204E49F4F777FD41EC180B641C76 +:10E18000AC42F4DB032D08D153EC182B00204FF0E8 +:10E190008041F4F769FD41EC180B3046F4F768FE56 +:10E1A00053EC182BF4F760FD424A434BF4F75CFD47 +:10E1B00004460D464046F4F75BFE53EC182BF4F78B +:10E1C00053FD3E4A3E4BF4F74FFD22462B46F4F7F3 +:10E1D0005DFE04460D463846F4F74AFE53EC182B14 +:10E1E000F4F742FD374A384BF4F73EFD02460B4642 +:10E1F00020462946F4F778FC41EC180B18FA86F60D +:10E20000002E0FD03846F4F733FE04460D46304654 +:10E21000F4F724FE02460B4620462946F4F7AAFEF0 +:10E2200041EC190B53EC192B00202849F4F71CFD85 +:10E230000022274BF4F72AFE0122264B05F0AEFD03 +:10E2400002D841F6583009E00022234BF4F7EAFDEA +:10E2500002D240F6FC0001E0F5F730F80D990860B5 +:10E2600051EC180B01221D4B05F098FD01D81E48FA +:10E2700008E000221346F4F7D5FD01D2104601E074 +:10E28000F5F71CF80C990860BDEC048BBDE8F08133 +:10E29000B47C0020907B0020E892002005CF00088D +:10E2A0000000000000000000000000000000F03F3F +:10E2B000000010401361C3D32B6589BF5C2041F17E +:10E2C00063CCDD3F24B9FC87F4DBA73F8089CC40D9 +:10E2D0000094A1400058BB4000F8A14065CDCD415D +:10E2E0000000D03FC07C002000CA9A3B0FF22C11E6 +:10E2F0000920F7F71DBD00003D3E505243000000CD +:10E300003D3E55703D25642C4C6F3D25640000005A +:10E310003D3E5031202564003D3E503220256400B2 +:10E320003D3E494E54453132000000003D3E5054C0 +:10E33000483D30003D3E73796E5F50726F784461A6 +:10E3400074613D25640000003D3E474550000000DB +:10E350003D3E47454F0000003D3E4745430000001D +:10E360003D3E474520435520257820257800000074 +:10E370003D3E47452053454C460000003D3E4C493C +:10E38000475000003D3E4C49476F70656E000000ED +:10E390003D3E4C49474300003D3E4C75783E3D258F +:10E3A000640000003D3E4C75783C3D256400000053 +:10E3B00099D3000839D4000865D500088DD5000828 +:10E3C0000000000045D6000815D700080000000036 +:10E3D0000000000099D3000839D4000865D5000872 +:10E3E0008DD5000800000000ADD5000815D7000845 +:10E3F000000000000000000003D8000885D80008D5 +:10E4000097D90008D5D9000800000000F5D9000808 +:10E410000000000079DC00084BDC000881DD00080A +:10E4200003DE00082BDE000865DE000800000000A7 +:10E4300085DE000800000000000000000000000071 +:10E440007CB500242046ADF80400F3F72AFF05460A +:10E4500020208DF8040001AE20467070022301AA2E +:10E46000BA210520F4F714F8002801D1204676BD22 +:10E4700001212846F4F701F9641C0120009001AB4A +:10E480002122BA210520F4F75DF8002801D10020EF +:10E4900076BDA4B2B4F5FA7F05DD0FF21C20F3F7C8 +:10E4A00081FF002076BD9DF804000006E0D4202006 +:10E4B0008DF8040002207070034601AABA210520DD +:10E4C000F3F7E6FF002801D1002076BD012076BDDC +:10E4D0001CB504460020ADF804000120009001ABFB +:10E4E0000F22BA210520F4F72DF8002801D10020D1 +:10E4F00016BD9DF80400BD2834D100F035F8002881 +:10E5000001D1002016BD032001E0401E40B20028CA +:10E5100007D40FF2BC1151F830108C4201D2002800 +:10E52000F3D120208DF8040001ACA42060700223F8 +:10E5300001AABA210520F3F7ABFF002801D1002082 +:10E5400016BD10208DF804007F206070022301AA00 +:10E55000BA210520F3F79CFF002801D1002016BD49 +:10E56000012016BD002016BD80B50020ADF80000CA +:10E5700020208DF8000000208DF80100022300AA61 +:10E58000BA210520F3F784FF002805D10FF23010DF +:10E59000F3F708FF002002BD012002BD80B58F20E7 +:10E5A000FFF796FF002801D1002002BD012002BD27 +:10E5B00080B5FFF745FF002805D10FF20C10F3F7E7 +:10E5C000F1FE002002BD012002BD80B5FFF7E6FF8D +:10E5D000002801D1002002BD012002BD80B5FFF757 +:10E5E000C3FF002801D1002002BD012002BD01208F +:10E5F0007047012070471FB5044601A800210A4654 +:10E600000B460EC00120009001AB0F22BA2105205D +:10E61000F3F798FF002821D09DF80400BD281DD1F4 +:10E620000520009001ABA822BA21F3F78BFF002848 +:10E6300001D1002013E09DF80400207001A841786A +:10E6400061708178A1700021E170C1782171007939 +:10E650006071E01C00F006F8012000E0002004B02A +:10E6600010BD00004178007840EA01204FF4F071BD +:10E6700090FBF1F000EE100AB8EEC00ADFED070AD9 +:10E6800030EE200ABDEEC00A10EE100A80B2044936 +:10E690000870000A487001207047000000002A42FC +:10E6A000AC2E012001207047012070470FF240017D +:10E6B0000520F7F73DBB000042522D5246000000F6 +:10E6C00042522D434600000042522D5046000000A9 +:10E6D00028000000700000005000000060000000F2 +:10E6E0008F00000050000000E80300001000000050 +:10E6F000B1E50008CBE50008DDE50008EFE500081E +:10E70000F3E50008F7E5000800000000A5E60008B2 +:10E71000A9E60008002070470120704701207047DB +:10E7200038B504460D46F3F7BCFD0521F3F7A5FF08 +:10E730000020104904E00A680255521C0A60401C7F +:10E74000A842F8DB012032BD01207047012070474C +:10E75000094802680A704A70511C01600120704724 +:10E7600006490A6802704270501C08600120704718 +:10E7700000000000DC7C00203C2E0120402E012007 +:10E780000FF234010820F7F7D3BA10B50FF22804BE +:10E7900021461220F7F7CCFA21461320F7F7C8FAE2 +:10E7A00021461420BDE81040F7F7C2BA0FF2080165 +:10E7B0001520F7F7BDBA000015E7000819E70008B3 +:10E7C0001DE700081DE700084DE7000821E70008E5 +:10E7D00049E7000861E7000851E7000810B5002488 +:10E7E000F3F75FFD007CC00700D50124204610BD73 +:10E7F00000B589B000A82421F5F7B6FF0020ADF8D8 +:10E8000022000A208DF8080000208DF809008DF8FC +:10E810000A008DF800001F20019000A8F9F7E8FA1F +:10E82000012009B000BD00B589B000A82421F5F78A +:10E830009BFF0020ADF822000A208DF80800002080 +:10E840008DF809008DF80A0001208DF800001F20C6 +:10E85000019000A8F9F7CCFA012009B000BD00B57D +:10E8600089B000A82421F5F77FFF0020ADF8220031 +:10E870000A208DF8080000208DF809008DF80A00A4 +:10E8800001208DF800001F20019000A8F9F7B0FAD0 +:10E89000012009B000BD0120704710B50024F3F736 +:10E8A00000FD007CC00700D50124204610BD00B546 +:10E8B00089B000A82421F5F757FF0020ADF8220009 +:10E8C0000A208DF8080000208DF809008DF80A0054 +:10E8D0008DF800002020019000A8F9F789FA0120A6 +:10E8E00009B000BD00B589B000A82421F5F73CFFB0 +:10E8F0000020ADF822000A208DF8080000208DF8D5 +:10E9000009008DF80A0001208DF8000020200190F8 +:10E9100000A8F9F76DFA012009B000BD00B589B073 +:10E9200000A82421F5F720FF0020ADF822000A20DE +:10E930008DF8080000208DF809008DF80A000120EC +:10E940008DF800002020019000A8F9F751FA01206D +:10E9500009B000BD0120704710B50024F3F7A1FCF9 +:10E96000007C800700D50124204610BD00B589B089 +:10E9700000A82421F5F7F8FE0020ADF822000A20B7 +:10E980008DF8080000208DF809008DF80A008DF838 +:10E9900000002120019000A8F9F72AFA012009B00F +:10E9A00000BD00B589B000A82421F5F7DDFE0020E8 +:10E9B000ADF822000A208DF8080000208DF809002B +:10E9C0008DF80A0001208DF800002120019000A898 +:10E9D000F9F70EFA012009B000BD00B589B000A812 +:10E9E0002421F5F7C1FE0020ADF822000A208DF8A1 +:10E9F000080000208DF809008DF80A0001208DF82C +:10EA000000002120019000A8F9F7F2F9012009B0D7 +:10EA100000BD0120704710B50024F3F742FC007CD4 +:10EA200000F00300032800D10124204610BD00B5EA +:10EA300089B000A82421F5F797FEDFF824030178B8 +:10EA400041F0020101700020ADF822000A208DF88B +:10EA5000080001208DF809008DF80A1000208DF8BB +:10EA600000002220019000A8F9F7C2F9012009B0A6 +:10EA700000BD00B589B000A82421F5F775FEDFF8C8 +:10EA8000E012087810F0FD00087014D10020ADF8F5 +:10EA900022000A208DF8080001208DF809000020CE +:10EAA0008DF80A0001208DF800002220019000A8B6 +:10EAB000F9F79EF902E040B208F0E2F9012009B04E +:10EAC00000BD012070470120704710B50024F3F706 +:10EAD000E8FB007C00F00700072800D10124204655 +:10EAE00010BD00B589B000A82421F5F73DFE9C4972 +:10EAF000087840F001000870032805D140B208F002 +:10EB0000BFF908F0D9F912E00021ADF822100A216E +:10EB10008DF8081000218DF809108DF80A000846BC +:10EB20008DF800002220019000A8F9F761F901207A +:10EB300009B000BD00B589B000A82421F5F714FE86 +:10EB40008749087810F0FE00087013D10020ADF856 +:10EB500022000A208DF8080000208DF809008DF8A9 +:10EB60000A0001208DF800002220019000A8F9F78A +:10EB70003FF904E040B208F083F908F0A2F901205F +:10EB800009B000BD012070470120704710B5002476 +:10EB9000F3F787FB007CC00700D50124204610BD99 +:10EBA00000B589B000A82421F5F7DEFD0020ADF8FE +:10EBB00022000A208DF8080000208DF809008DF849 +:10EBC0000A008DF800002320019000A8F9F710F941 +:10EBD000012009B000BD00B589B000A82421F5F7D7 +:10EBE000C3FD0020ADF822000A208DF808000020A7 +:10EBF0008DF809008DF80A0001208DF8000023200F +:10EC0000019000A8F9F7F4F8012009B000BD00B5A3 +:10EC100089B000A82421F5F7A7FD0020ADF8220057 +:10EC20000A208DF8080000208DF809008DF80A00F0 +:10EC300001208DF800002320019000A8F9F7D8F8F2 +:10EC4000012009B000BD01207047000070B58AB0F6 +:10EC500006460D46F8F7F6FF044600200090042211 +:10EC6000314600A8F5F742FE01A82421F5F77CFD06 +:10EC7000009A29460FF2A410F3F794FB28460C38AB +:10EC8000092840D8DFE800F0050F1419300B3F3F8A +:10EC90003F3B1420C4F8DC0401200AB070BD1420EE +:10ECA000C4F87C05F8E704F2DC4042218162F3E716 +:10ECB00004F2DC4000990165EEE729480078C107BD +:10ECC00012D50021ADF826100A218DF80C10002174 +:10ECD0008DF80D108DF80E0001208DF80400222013 +:10ECE000029001A8F9F784F80099284640B200F094 +:10ECF00010F8009004F2DC4000998167CCE7142002 +:10ED0000C4F8BC06C8E70FF22410F3F74BFB002051 +:10ED1000C3E710B4134AD36B126C114C2478002C47 +:10ED20001AD00F2802D010280BD015E0507A0028F6 +:10ED300012D0906B806800280ED488420DDD084602 +:10ED40000BE0587A002807D0986B8068002803D41D +:10ED5000884202DD084600E0084610BC704700000B +:10ED6000B22E01200840002012B589B001460C39AE +:10ED700009292CD8DFE801F0051F2123231D2B2BA7 +:10ED80002B291F240020ADF8220001900A208DF8C5 +:10ED9000080005208DF800000194042209A90DF156 +:10EDA0000900F5F7A3FD00A8F9F722F801200AB041 +:10EDB00010BD2324E6E72024E4E72124E2E722240F +:10EDC0000999FFF7A6FF0990DCE72B24DAE70FF299 +:10EDD0006400F3F7E7FA0020E9E780B50FF25C0181 +:10EDE0000C20F6F7A5FF0FF278011120F6F7A0FF2F +:10EDF0000FF290010D20F6F79BFF0FF2AC010E20F1 +:10EE0000F6F796FF0FF2C4010F20F6F791FF0FF20D +:10EE1000E0011020BDE80440F6F78ABF4D523220D1 +:10EE200044523D25642C2564000000004D523220E0 +:10EE3000534446004D52322052434600DDE700085D +:10EE4000F1E7000827E800085FE80008000000007C +:10EE500097E800084DEC00080000000000000000EA +:10EE60008DEB0008A1EB0008D7EB00080FEC0008C1 +:10EE70000000000047EC00084DEC00080000000016 +:10EE8000000000009BE80008AFE80008E5E8000883 +:10EE90001DE900080000000055E900084DEC0008DD +:10EEA000000000000000000059E900086DE90008BA +:10EEB000A3E90008DBE900080000000013EA0008ED +:10EEC0004DEC0008000000000000000017EA0008F8 +:10EED0002FEA000873EA0008C3EA000800000000F7 +:10EEE000C7EA00084DEC0008000000000000000028 +:10EEF000CBEA0008E3EA000835EB000885EB0008E0 +:10EF00000000000089EB00084DEC00080000000044 +:10EF10000000000080B5FBF791FADFF8E817086001 +:10EF2000012002BD80B5F5F7ABFBDFF8DC17D1E9B6 +:10EF30000023801A02BDF8B50446A069E1684518AF +:10EF4000B5F90000B5F90270B5F90460B4F85810CD +:10EF5000411A2980B4F85A10791A6980B4F85C1003 +:10EF6000711AA980B5F90010C913B1EBE03F13D0B5 +:10EF7000B4F95810C913B1EBE03F0DD00FF2A470F3 +:10EF8000F3F710FAB5F90000012802DBDFF87C077F +:10EF900001E047F6FF702880B5F90210C913B1EB04 +:10EFA000E73F13D0B4F95A10C913B1EBE73F0DD0C6 +:10EFB0000FF27C70F3F7F6F9B5F90200012802DBD5 +:10EFC000DFF8480701E047F6FF706880B5F90410E4 +:10EFD000C913B1EBE63F13D0B4F95C10C913B1EB20 +:10EFE000E63F0DD00FF25470F3F7DCF9B5F90400E9 +:10EFF000012802DBDFF8140701E047F6FF70A88064 +:10F0000094F90800002804D1002000E0401C0328E7 +:10F01000FCDBF1BD00000000FEB5044600A80021A5 +:10F020000A460B460EC0A069E1684518174694F9D8 +:10F030000860052E80F09A80012E02D12046FFF74D +:10F040007AFF3046012802D9C01E40F08A80002E87 +:10F0500001D14FF6FF77DFF8AC060068301890F862 +:10F060008400401E06285ED8DFE800F004101D2949 +:10F0700036424F00B5F90200009000A8B5F9001023 +:10F08000791A4160B5F90410816056E0B5F90000C5 +:10F09000381A009000A8B5F90210791A4160B5F944 +:10F0A0000410816049E0B5F90200381A009000A808 +:10F0B000B5F900104160B5F9041081603DE0B5F983 +:10F0C0000000381A009000A8B5F902104160B5F9A7 +:10F0D0000410791A816030E0B5F90200009000A8B0 +:10F0E000B5F900104160B5F90410791A816024E087 +:10F0F000B5F90000009000A8B5F90210791A416036 +:10F10000B5F90410791A816017E0B5F90200381AD0 +:10F11000009000A8B5F90010791A4160B5F9041003 +:10F12000791A816009E0B5F90000009000A8B5F9EE +:10F1300002104160B5F904108160012E0AD100214E +:10F1400006E050F8212002F30F0240F82120491C6C +:10F150000329F6DB0098288000A841686980806850 +:10F16000A880002E02D12046FFF7E5FE0120FEBD5B +:10F1700070B52DED028B82B08169C2688A1890F952 +:10F18000081008460A2800F29780DFE800F0062BF6 +:10F1900073959565959595808E00B2F90240B2F908 +:10F1A0000450DFF8600500689FEDB70AB2F900105F +:10F1B00000EE901AF8EEE00A60EE800AC0ED000A58 +:10F1C00000EE904AF8EEE00A60EE800AC0ED010A17 +:10F1D00000EE905AF8EEE00A20EE800A001D80ED65 +:10F1E000010A6DE0B2F90240B2F90450DFF81405EB +:10F1F0000068061D9FEDA58BB2F9000000EE100A15 +:10F20000B8EEC00A10EE100AF8F71AFF53EC182BEC +:10F21000F3F72AFDF8F73CFFB06000EE104AB8EEB5 +:10F22000C00A10EE100AF8F70BFF53EC182BF3F797 +:10F230001BFDF8F72DFFF06000EE105AB8EEC00A83 +:10F2400010EE100AF8F7FCFE53EC182BF3F70CFD48 +:10F25000F8F71EFF306133E0002000901068009046 +:10F260009DED000ABAEECA0ADFF89804006880ED46 +:10F270000C0A25E0DFF88C0400681188A0F85A1009 +:10F2800000F25A00518841809188818018E0DFF8AF +:10F290007404006800F25A001188C180518801810D +:10F2A00091884181D18881810AE0DFF858040068A3 +:10F2B000118880F8681003E00FF28C40F3F772F8C1 +:10F2C000012002B0BDEC028B70BD70B50D46DFF8B9 +:10F2D000401451F820400026207F002801D13046FC +:10F2E00070BD607A002803D0206E80688047064693 +:10F2F0002846216EC96988470546002E02D0206E37 +:10F3000040688047284670BD9B0701D542F21072C5 +:10F3100092FBF1F190F8222051430069814201DA19 +:10F320000120704700207047002901D48164C16426 +:10F33000002A03D4910701D580F8202070470029C6 +:10F3400003D400218164416181617047042817D191 +:10F3500001F10C008A7A012A09D0072242750B229A +:10F360008275DFF8B023CA600B2141607047152217 +:10F37000427519228275DFF8A023CA601921416005 +:10F3800070472DE9F2438AB005461446194600201D +:10F39000ADF8220001900A208DF8080000208DF8B9 +:10F3A00009008DF80A00A946B9F1160F44D22E467D +:10F3B000D74850F826704FF00208387F00283BD01D +:10F3C0009DF94820002A08D4D00706D513460A46DE +:10F3D0000A993846FFF798FF52E03846FFF7A4FF36 +:10F3E000A9F10C0006280BD22946C9B20AA83A6E28 +:10F3F000926990470C2E01D0112E01D114200A9051 +:10F4000039462846FFF7A2FF787A00281CD121460A +:10F4100049B238467A6E1268904700280ED0386E8E +:10F4200040688047002805D14146A1F10108C9B2D2 +:10F430000029F4D1002801D1002021E0214649B261 +:10F4400038467A6E52689047787A401C7872224625 +:10F4500052B20A9938467B6E1B69984700F0C6F88D +:10F46000072E0CD1002C0AD100208DF800001120AD +:10F4700001900A208DF8080000A8F8F7B9FC0120D7 +:10F480000BB0BDE8F083000060F61C3A89AD84FA49 +:10F490000A74313F2DE9F0418AB006460C46154604 +:10F4A00019460020ADF8220001900A208DF80800CE +:10F4B00000208DF809008DF80A00162E07D2944816 +:10F4C00050F826704FF00208387F002801D1002044 +:10F4D0003CE03846FFF733FF787A012818D12946F7 +:10F4E00049B238467A6E9268904700280AD0386E42 +:10F4F00080688047002805D14046A0F10108C0B2CD +:10F500000028F4D1294649B238467A6ED26890472D +:10F51000787A002801D0401E78722A4652B22146DD +:10F5200038467B6E5B69984700F060F8072E0CD177 +:10F53000002D0AD101208DF80000112001900A2031 +:10F540008DF8080000A8F8F753FC01200AB0BDE8C8 +:10F55000F0812DE9F84304460D4616461946274624 +:10F56000162F1DD26A4850F8248098F81C000028F5 +:10F5700016D09DF92020002A09D4D00707D51346BC +:10F580000A462946404601B0BDE8F043BCE606EB1A +:10F59000460008EB8009D9F838008068002801D5BA +:10F5A000002021E04046FFF7BFFE324652B2D9F8B4 +:10F5B000380081684046D8F864305B699847324625 +:10F5C00052B229464046D8F864301B699847A7F1E3 +:10F5D0000C00062805D229462046FFF7C5FB01206E +:10F5E00002E000F003F80120BDE8F28370B56FF08F +:10F5F00000452C464948016804E08A68A24200DAC6 +:10F60000144609688142F8D1454E3078401C30706C +:10F610007078F021084202D09920F5F7E3F8F5F769 +:10F620004EF97078401C7070AC4200D1002435480F +:10F630000168CC67D1F88020204682420BD0002898 +:10F6400001D0002A04D1C1F88000F2F787FE02E061 +:10F65000012007F079FC7078F021084202D099204F +:10F66000F5F7C0F87078401E7070C0B2002801D164 +:10F67000F5F71FF9F5F77DFF012070BD38B5054698 +:10F68000274C2078401C20706078F021084202D07E +:10F690009920F5F7A7F8F5F712F96078401C60702B +:10F6A00018480068C0F880501C48016805E08A6866 +:10F6B000B2FBF5F26A43CA6009688142F7D160780B +:10F6C000F021084202D09920F5F78CF86078401EAE +:10F6D0006070C0B2002801D1F5F7EBF8BDE8314009 +:10F6E000F5F747BF0D490A6808E01369012B01DAF5 +:10F6F000D368136113691B1A136112688A42F4D12B +:10F7000070470000502E0120C02D01200080FFFF17 +:10F7100008400020C44F0020EC2A0120784000203F +:10F72000087C002058206973206F76657200000005 +:10F7300059206973206F7665720000005A20697342 +:10F74000206F7665720000005543535428256429C4 +:10F750004E53000038B504000D0014480078401CDA +:10F760001249087012480078002802D0A120F5F74D +:10F7700039F8F5F7BDFE607E662802D08220F5F7E5 +:10F7800031F8F5F79CF805E03821200007F0E2FB9E +:10F79000F5F795F8E06821698842F5D02900200046 +:10F7A00007F0FAFBF5F7E5FE31BD00BF087C00204D +:10F7B000DB2E01204FF0FF31801E012812D9C01E20 +:10F7C00004280FD9801F06280CD908380AD0801EBB +:10F7D000042807D9401F03D0401E102802D902E098 +:10F7E000072100E001210846704780B5014600204E +:10F7F000C91E18D0C91E16D0C91E14D0C91E012991 +:10F8000011D90D3903290ED9091F05D0491E0AD077 +:10F81000C91F032907D902BD1D210FF21000F2F7FD +:10F82000C1FD012002BD012002BD000050443A206C +:10F830004C4C53202564000038B504464FF0FF358A +:10F84000F8F700FA2B2C35D8DFE804F02F34332FEB +:10F850002F332F2F3333342F183316162F2F3433E3 +:10F86000342F2F2F182F332F332F2F1B1E22262AF2 +:10F870002D33333333333133C8251BE04FF47A75DE +:10F8800018E0D0F8DC5415E000F2DC40856A11E0A5 +:10F8900000F2DC40056D0DE000F2DC40856F09E010 +:10F8A000D0F87C5506E00A2504E0422502E0052553 +:10F8B00000E01425284632BD38B5DFF8104AFAF7C3 +:10F8C000BDFDE06207F0D0FBF8F7BCF9206300252E +:10F8D00012E0DFF8FC190161DFF8F8194161DFF887 +:10F8E000F8298261DFF8F429C261DFF8F4290262A5 +:10F8F0004162406A80476D1C2C2D80F21881216B7B +:10F9000005EB8500C00000224254401842704FF0C1 +:10F91000FF32426000220272C2604272032D04D1A3 +:10F920007431DFF8C0298A62E3E7022D03D1DFF8E2 +:10F93000B8294A67DDE7002DCBD0042D04D17431FE +:10F94000DFF8A8290A65D4E7052D04D17431DFF862 +:10F95000A0298A67CDE7062D04D1DFF89829C1F8E0 +:10F960001421C6E7072D05D101F58A71DFF8882932 +:10F970008A62BEE7082D05D101F58A71DFF87C297E +:10F980000A65B6E7092D05D101F58A71DFF87029FE +:10F990008A67AEE70A2D9CD00B2D9AD0012D98D006 +:10F9A0000C2D04D1DFF85C29C1F80422A1E70D2D4C +:10F9B00005D101F50171DFF850298A6299E70E2D12 +:10F9C00005D101F50171DFF844290A6591E70F2D92 +:10F9D00005D101F50171DFF838298A6789E7102D13 +:10F9E00004D1DFF83029C1F8A42282E7112D04D117 +:10F9F000DFF82429C1F8CC227BE7122D3FF469AF50 +:10FA0000142D3FF466AF132D3FF463AF162D3FF472 +:10FA100060AF2B2D3FF45DAF152D04D1DFF80C2A1C +:10FA2000C1F86C2365E7172D05D101F55B71DFF88F +:10FA3000002A0A655DE7182D05D101F55B71DFF835 +:10FA4000F4298A6755E71A2D05D101F20C41DFF838 +:10FA5000E8298A624DE71E2D05D101F2AC41DFF89D +:10FA6000DC298A6245E7192D04D1DFF8D429C1F8D1 +:10FA70000C243EE71F2D05D101F2AC41DFF8C4296B +:10FA80000A6536E7202D05D101F2AC41DFF8B8292F +:10FA90008A672EE7212D04D1DFF8B029C1F84C2563 +:10FAA00027E7222D05D101F24C51DFF8A4298A6203 +:10FAB0001FE7232D05D101F24C51DFF898290A6583 +:10FAC00017E71B2D05D101F20C41DFF88C290A65DF +:10FAD0000FE71C2D05D101F20C41DFF880298A6760 +:10FAE00007E71D2D04D1DFF87829C1F8AC2400E721 +:10FAF000262D04D1DFF86C29C1F81426F9E6272D4C +:10FB000005D101F21461DFF860298A62F1E6292D3E +:10FB100005D101F21461DFF854298A67E9E62A2D3C +:10FB20007FF4D7AEDFF84829C1F8B426E1E601201A +:10FB300032BD0CB42DE9FF470546884601244746EF +:10FB40002E461A2E48D006EB86004FEAC008DFF892 +:10FB50007C970B2F20D1D9F8300008EB000A9AF8D7 +:10FB60000100002818D02846FFF724FE012813DBE7 +:10FB70002846FFF71FFE9AF8011081420CDB284649 +:10FB800000F086F90446D9F8300040440021417065 +:10FB90000FF6E800F2F706FCD9F8300018F800106C +:10FBA000002947D108EB00014A78002A42D10022FF +:10FBB00008F80020104648700CA983B06846182247 +:10FBC000F2F746FF0EBC284600F07CF802282CD045 +:10FBD00003282FD103242DE00B2F16D1FFF7EAFDC8 +:10FBE000012812DB2846FFF7E5FD06EB8601DFF86A +:10FBF000DC26126B02EBC1014978814205DB0FF66E +:10FC00008400F2F7CFFB022057E04046C0B202F07A +:10FC10004FF80CA983B068461822F2F719FF0EBC02 +:10FC2000284600F04FF8022801D1022045E00328C1 +:10FC300000D103240A2F0DD1DFF89096D9F83000B7 +:10FC400006EB86014FEAC10818F80010491C08F8B5 +:10FC5000001017E00B2F15D1DFF87096032E07D197 +:10FC6000D9F8300090F87900002801D101F088FA25 +:10FC700006EB86004FEAC008D9F8300040444178CE +:10FC8000491C4170DFF84496D9F83000D9F82C109F +:10FC900006EB86024FEAC208D1E91C23CDE9022314 +:10FCA000C96E009108EB00014B7818F8002031462E +:10FCB0000FF2DC70F2F776FB204604B0BDE8F007E7 +:10FCC0005DF80CFB0EB42DE9F04183B0054601242C +:10FCD000C0B2FFF7B1FDDFF8F46505EB8501326BCB +:10FCE00002EBC107786000203872F86009A984B07F +:10FCF00068461822F2F7ACFE0FBC3F69B8470228ED +:10FD000001D1022011E0032801D103240CE0D6F830 +:10FD10002C80D8E91C67204600212A4607F048FAC3 +:10FD200030433943C8E91C012046BDE8FE015DF8B7 +:10FD300010FB2DE9FF4704460D460126274607EB39 +:10FD400087004FEAC008DFF88495D9F830001A2FF1 +:10FD500057D008EB000A9AF80100022814DB20466D +:10FD6000FFF728FD01280FDB2046FFF723FD9AF857 +:10FD70000110814208DB2046FFF71CFD8AF80100D4 +:10FD80000FF22070F2F70EFBD9F8300018F80010CF +:10FD9000002904D108EB00025278002A60D02A46DC +:10FDA0000A2A09D1002903D0491E08F8001017E0DB +:10FDB000002108F8001013E00B2A11D108EB000114 +:10FDC0004A78002A02D0521E4A7001E000224A708E +:10FDD000032F05D190F87900002801D101F0DFF957 +:10FDE000D9F8300018F80010002939D14044407883 +:10FDF000002835D1204600F04BF8032830D10326E7 +:10FE00002EE018F80010002904D108EB0002527807 +:10FE1000002A25D02A460A2A09D1002903D0491EE2 +:10FE200008F8001012E0002108F800100EE00B2A7C +:10FE30000CD108EB000A9AF80100002803D0401EFC +:10FE40008AF8010002E000208AF801002846C0B2CA +:10FE500001F02EFF204600F01BF8032800D10326F6 +:10FE6000D9F83000D9F82C10D1E91C23CDE90223B0 +:10FE7000C96E009108EB00014B7818F80020394654 +:10FE80000FF22860F2F78EFA304604B0BDE8F08732 +:10FE90002DE9F0410746012607EB8700C500DFF892 +:10FEA0002C44206B281840698047032800D1032682 +:10FEB000384640B200F080F9032800D10326206BB9 +:10FEC000295C002917D128184178002913D14FF057 +:10FED000FF31416000210172C160D4F82C80D8E963 +:10FEE0001C4501203A4607F063F924EA000025EAA0 +:10FEF0000101C8E91C013046BDE8F08138B504466F +:10FF000004EB8400C000DFF8C453296B0022425484 +:10FF10004018114641702046FFF7BAFFE86AD0E961 +:10FF20001C2321460FF29850F2F73CFA012032BD13 +:10FF30002DE9F041B6B004460E46B6B201208DF868 +:10FF40006400DFF888531AA8E96A6C22F2F780FD92 +:10FF500017951AA984B068466C22F2F779FD0FBC98 +:10FF600000F0DCF900270BE0032803D118970320E9 +:10FF70008DF86400286B4044002101727F1C7FB221 +:10FF80002C2F2ADAEA6AD2E91C013A4600F0CEFAAE +:10FF900000F0010011F0000101D10028EED007EBC4 +:10FFA00087004FEAC008286B404441680029E5D427 +:10FFB000027A521C0272D2B2724389B28A42DDDBEB +:10FFC000806980470228CFD1189702208DF86400FD +:10FFD000DDE91801C4E9000103E0DDE91801C4E925 +:10FFE000000136B0BDE8F08100210A3842F2077204 +:10FFF000904200D20121084670472DE9F04383B0BA +:020000021000EC +:10000000044600200190042204F1090101A8F4F73C +:100010006DFC6168DFF8B462376B282505FB017061 +:100020004068019A904204D10FF2A440F2F7BAF965 +:1000300068E01046FFF7D8FF002809D16168019BEE +:1000400005FB017042680FF29440F2F7ABF959E0FA +:10005000DFF820743868D0F8008025E090F9089027 +:100060006068316B05FB0010C06820FA09F0C0071A +:1000700017D54FF0FF300090034601220199484602 +:10008000FFF77FF940B200280BD16168019800901A +:10009000306B05FB010043684A460FF25440F2F70B +:1000A00081F94046D0F80080B842D7D13868D0F8FE +:1000B00000801FE090F90890C86820FA09F0C00796 +:1000C00015D54FF0FF33012249684846FFF7E2F9A2 +:1000D00040B200280BD1616801980090306B05FB9D +:1000E000010043684A460FF22040F2F75BF94046B0 +:1000F000D0F800806168326B05FB0121B842D9D18C +:1001000001984860BDE8F7832DE9F8438146002453 +:1001100025466E4F21E005EB8500C600386B06EBE7 +:100120000008002088F80900FA6AD2E91C012A4672 +:1001300000F0FCF900F0010011F0000101D10028ED +:100140000AD04846D8F81C108847002804D0386BDD +:100150003018012141720C466D1C2C2DDBDB204632 +:10016000BDE8F2835948C16AD1E91C23002B01D1B3 +:10017000002A0DD0002107E002EB8203026B02EBA4 +:10018000C30200235372491C49B20A462C2AF3DBEE +:10019000704700B502464D48C36AD3E91C0100F020 +:1001A000C5F900F0010011F0000101D1002801D0D3 +:1001B000012000BD084600BD2DE9F047814601241D +:1001C00009EB8900C500414E306B2818C068002833 +:1001D00029D0DFF8A0723868D0F8008003E003244B +:1001E0004046D0F80080B8421DD090F908A0306B8E +:1001F0002818C168012202FA0AF2114021FA0AF114 +:1002000049B20129ECD14FF0FF3301224168504639 +:10021000FFF740F90028E2D0524649460FF200307D +:10022000F2F7C0F8DCE72046BDE8F08710B58AB0E9 +:1002300004460020ADF8220001900A208DF8080045 +:1002400000208DF809008DF80A00ADF82200600743 +:1002500019D50520FFF79DFF002807D004208DF851 +:1002600000000520019000A8F7F7C2FD0220FFF76B +:1002700090FF002807D004208DF800000220019094 +:1002800000A8F7F7B5FDE0060CD50820FFF781FFC1 +:10029000002807D003208DF800000820019000A856 +:1002A000F7F7A6FD0AB010BD02460020092A00D0CB +:1002B000704780B5012902D107F030F8012002BD56 +:1002C00002492C22F2F7C4BB00000000A82801203C +:1002D0005B7F0008577F0008637F0008677F000886 +:1002E0006B7F0008890B0108EB3B01084D050108F5 +:1002F000D339010827F3020855060308E937010836 +:100300006B72010861080108D5F1020829E30208AF +:1003100085FD02080B0403089DFA02080FB41B9820 +:100320000099016001994160029981600399C1605F +:100330000499016105994161BDF85A100183BDF826 +:100340005C104183BDF85E1081830C9901621399A2 +:1003500041621499816204B070470000416812291B +:1003600003D1C17A002000F0C8BF132903D1017B5B +:10037000012000F0C2BF142903D1417B022000F00C +:10038000BCBF152902D1C07A00F0C8BF172945D1DA +:10039000817A1B2906D01C2930D01D290FD026298F +:1003A00026D07047C17B012903D1B0F80B0003F0C0 +:1003B00039B9022932D1B0F80D0003F031B9017D0D +:1003C000012903D1B0F80B0007F088BA022903D144 +:1003D000B0F80D0007F076BA042903D1B0F8170081 +:1003E00007F088BA032919D1B0F8150007F08EBAC2 +:1003F000C17B012912D1807B07F0C1BB817B012920 +:1004000002D1C07A07F0C3BD022902D1007B07F0F8 +:10041000C8BD052902D1407B07F0A3BD704716492E +:100420000860704714480068704700006D070308B3 +:100430009D09030861FC02084328010831EF020806 +:100440005D0003082D9401083F0503088BF902089D +:10045000236E0108A1950108C5350108DD7D01085D +:1004600063780108C37A01089BD002089108030849 +:1004700035D2020874490020542E0120414C2045F9 +:1004800058000000414C2045582D41540000000008 +:10049000414C256420256420256420256420256C9A +:1004A0006C750000524C204558000000524C2564E9 +:1004B00020256420256420256420256C6C750000AF +:1004C0005445524D20256420256C6C7500000000B9 +:1004D0004558204C4D435231202564004558204C4E +:1004E0004D435232202564202564202564000000FD +:1004F0004558204C4D435233202564202564202547 +:1005000064202564000000004558204C4D435234BF +:100510002025642025642025642025640000000037 +:10052000534D52412025642025640000D2B2203A68 +:1005300022BF21FA02F0002170472032D141D04081 +:1005400048409140D14048407047000038B5F7F727 +:1005500079FB0446104DF9F771FF286005F0B6F8F5 +:1005600005F0B9F8686005F0F1F90C48C4F8B0007E +:1005700004F1B0000A4941600A4981600A49C1603A +:100580000A490161012032BD034949688968084769 +:100590000148406800680047F02D01205B7F00089B +:1005A000577F0008637F0008677F00086B7F0008A3 +:1005B0002DE9F04786B0044601A81421F4F7D4F8D9 +:1005C000F1F76FFE05464FF00208002601E0761CA9 +:1005D00076B20A2E80F29E80022EF8D0032EF6D03C +:1005E000062EF4D0524850F82670787A002806D1AA +:1005F00007F10C00406D406880470028E7D008F8FC +:10060000046008F101084FFA88F8304609284FD8ED +:10061000DFE800F0050A4E4E10204E154E49C82165 +:100620002846F2F72AF843E04FF448712846F2F7DB +:1006300024F83DE032212846F2F71FF838E0072081 +:100640008DF80400FF208DF8050032212846F2F7CE +:1006500014F82DE03C212846F2F70FF84FF0000A7D +:1006600007F10C09BAF1030F22DA0020D9F854106F +:100670000969884714212846F1F7FFFF0120D9F8BE +:1006800054100969884714212846F1F7F6FFBAF19A +:10069000020F05DA062101A8D9F8542052699047C3 +:1006A0000AF1010ADEE74FF416712846F1F7E5FF7B +:1006B00007F10C0999F8151001A8D9F854205269CE +:1006C0009047002819D0D9F80C00F96800EB010A0E +:1006D00099F8152001A95046F4F708F93846FEF7B5 +:1006E0009BFC99F81520514608EB0400F4F7FEF83E +:1006F00099F9150080444FFA88F8787A00287FF439 +:1007000066AFD9F854008068804700287FF45FAF57 +:10071000002009E0A8F10200ADF80000022200A9C3 +:100720002046F4F7E3F8002006B0BDE8F0870000AB +:100730000840002038B505000C0094F84C006428EF +:1007400002D08020F4F74EF8F4F7AAFEF4F7B7F8D9 +:10075000606928436061207C10F0F800082806D109 +:10076000A0696169084202D02000F4F73EFF074803 +:100770004078F021084202D09920F4F733F803487A +:100780004078002801D1F4F794F831BD087C0020AE +:100790000FB480B5BDF80B0064494880022802DB25 +:1007A000801E088001E0002008800C229DF90A10BC +:1007B0000020F7F749FA032801D1022000E00120C8 +:1007C00002BC5DF814FB59480121418000210180E1 +:1007D00001207047564908707047000030B58DB051 +:1007E00002A8F7F790FA514C2088401C20806188BD +:1007F00080B2884231D300202080054627E060681F +:10080000D0F8EC01E840C00720D5284606F07EFC71 +:1008100000281BD400EB80009FED430ADDED0B0A9E +:1008200060EE800AFDEEE00A10EE901A00AA8152F6 +:10083000DDED0C0A20EE800ABDEEC00A10EE101AA3 +:100840008218518000A94018012101716D1C172DDB +:10085000D5DBDDE9000106F062FC01200DB030BD02 +:1008600080B5F7F7EFF9314948603249C0F8F01127 +:1008700000F5F87030494160304981600FF20D0198 +:10088000C1600FF225010161012002BD10B50024F5 +:10089000274890F90000002804D106F060FC0028E9 +:1008A00000D00124204610BDF8B504460D4640F2A4 +:1008B0002116287816FB004001210170287816FBCC +:1008C00000404170287816FB00400C218170287888 +:1008D00016FB0040164991F90010002902D00221B0 +:1008E000C17001E00121C170287816FB0040012190 +:1008F0000171287816FB0040C180287816FB00475C +:10090000002006F0CDFB3881287816FB004400203B +:1009100006F0CBFB60812878401C28700C20BDE8D5 +:10092000F24006F0DBBB00000000C842D47C00208F +:10093000BD2E012091070108C7070108DD07010846 +:100940000FB410B5032200210846F7F77DF90228FD +:1009500001D102201BE00FF23C00F1F723FDDFF88C +:10096000704C00206073608220629DF80C209DF81E +:100970000B109DF80A0008F09BF858220021DFF8C0 +:10098000540CF1F76BFC00202074A073012010BC04 +:100990005DF814FB50443A205374617274506564DE +:1009A0006F2D3032323500000120704730B58BB0EA +:1009B00000A8F7F7A8F905210320F7F707FA0028A0 +:1009C00002D1DFF8140C0890DFF8044CA069C56F61 +:1009D00008F003F8207294F90800022806D1422D8D +:1009E00004D114210320F7F790F907E0012805D17D +:1009F000142D03D142210320F7F787F9284680B24E +:100A0000DDED081A00A991EC030A07F0B6FEE069D3 +:100A10002818E06101200BB030BD10B5DFF8B04BF5 +:100A200094F9000000283AD494F90A0094F90110CE +:100A3000814228D1217B0818A07240B23D2801DBF9 +:100A40003C38A07294F90A100FF26C00F1F7AAFC7E +:100A50000020E061DFF8880B90F9010010F1010F30 +:100A600001D1012010BD94F90110081AF2F7F6F92E +:100A700021F00041F2F722FC40B2012801DB012005 +:100A800010BD002010BDDFF85C0B90F901209142F1 +:100A900003D0D4E90023C0E90023002010BDE069A1 +:100AA000DFF8441B884205DB0FF21800F1F77AFCEF +:100AB000012010BD002010BD50443A204E54202586 +:100AC0006400000050443A204E6F54696D65000088 +:100AD0002DE9F8430026DFF8F84A07E07A19A272F8 +:100AE00052B231460FF26C00F1F75CFC94F90A50F7 +:100AF000002E21D46078461B76B294F90C70002E3B +:100B0000ECD53046F2F7AAF921F0004102460B4637 +:100B1000904699463846F2F7A1F942464B46F2F71D +:100B200081F9E3D2EA1BA272002652B231460FF2DB +:100B30003800F1F737FCD9E73C2D02DBA5F13C008A +:100B4000A07294F90A100FF23400BDE8F443F1F7F3 +:100B500029BC000050443A20636F6D703120256439 +:100B60002C2025640000000050443A20636F6D7013 +:100B7000322025642C2025640000000050443A20D7 +:100B8000435554202564000010B5DFF8444A002086 +:100B9000A07301202072002060724FF0FF3020709F +:100BA0000F20E072142020730020607360822062A6 +:100BB0006074A062E06228220146DFF8300AF1F793 +:100BC0004DFBF7F73FF8A061DFF8241AC0F8881052 +:100BD0008830DFF8201A4160DFF81C1A81600FF2BC +:100BE0008D21C1600FF615210161012010BD10B5E6 +:100BF00082B04FF46163C1EB0114A40013FB004306 +:100C0000D3184FF47A746343DFF8E0492360DFF8C8 +:100C1000C0391B7C009313460A4601460FF20800B8 +:100C2000F1F7C0FB13BD000050442042542025645E +:100C30002025642025642025640000002DE9F04172 +:100C40002DED028BAAB0DFF88C69314684B068467E +:100C50005822F1F7FDFE0FBC00F072FC10EE100AF6 +:100C6000F7F7EEF941EC100B9FED7E8BDFF87C4936 +:100C7000656853EC102B51EC180BF1F7F5FFF2F708 +:100C80001DFB15FA80F060604FF6FF75A84200D397 +:100C90006560314684B068465822F1F7D9FE0FBC32 +:100CA00000F006FC10EE100AF7F7CAF941EC100B41 +:100CB000A76853EC102B51EC180BF1F7D5FFF2F7A6 +:100CC000FDFA17FA80F0A060A84200D3A5600020CA +:100CD000139002201290314684B068465822F1F7F2 +:100CE000B7FE0FBC00F078FAA1894018A08180B24D +:100CF000FF2801DBFF20A081002013900320129029 +:100D0000314684B068465822F1F7A2FE0FBC00F0CD +:100D100063FA216940182061A84200D325610020B0 +:100D2000139006201290314684B068465822F1F79D +:100D30008FFE0FBC00F050FAA18A4018A08280B24A +:100D4000FF2801DBFF20A0820020139007201290D3 +:100D5000314684B068465822F1F77AFE0FBC00F0A5 +:100D60003BFAE18A4018E08280B2FF2801DBFF20D5 +:100D7000E0820020139008201290314684B068462B +:100D80005822F1F765FE0FBC00F026FAA169401861 +:100D9000A061A84200D3A561002013900920129001 +:100DA000314684B068465822F1F752FE0FBC00F07D +:100DB00013FAE1694018E061A84200D3E56114A884 +:100DC00007F00FFEDFF82C7DD7F828802398F7F77F +:100DD00037F90022DFF8003DF1F746FFF2F76EFA2F +:100DE00058FA80F0B862F96A491CF962B0FBF1F078 +:100DF00084F820000020139001201290314684B026 +:100E000068465822F1F724FE0FBC00F0E5F9616A4C +:100E100040186062A84200D36562F87B00F0C7FA10 +:100E20002AB0BDEC028BBDE8F081DFF8C0078189F4 +:100E3000002914D10169002911D1818A00290ED11C +:100E4000C18A00290BD18169002908D1C169002913 +:100E500005D1406A401E8041C043C00F7047012049 +:100E60007047000000000000000059402DE9F04FDD +:100E7000ABB08246002414A807F0B3FDDFF8545746 +:100E80002046139001201290294684B068465822CB +:100E9000F1F7DEFD0FBC00F09FF906469DED230A39 +:100EA000D5ED0F0A30EE600A10EE100AF7F7C8F819 +:100EB0002246DFF8243CF1F7D7FEF2F7FFF90746A8 +:100EC000BFB2BDF89A00B5F84A10401AC0B20090FF +:100ED000DFF8208CBAF1000F44D1002E01D1384345 +:100EE00015D00124002E12D0DFF8209CD9F8100074 +:100EF000B0420CD0204608F0B8FA204608F06FFB4C +:100F0000D9F81000301AC8F82400C9F81060DFF8CA +:100F1000FC9BC9F810600020C8F81C004FF0FF309F +:100F200088F80000DFF8BC26D8E90001C2E900011A +:100F3000C9E90001DFF8A826C2E9000198F80B0012 +:100F400088F80A0098F80E00002846D0002088F89B +:100F50000E0098F8100000283FD0012088F81100FA +:100F600004463AE000F0C5F900281CD001A8F1F7CA +:100F7000B6FC404601A90522F1F75AFD204688F843 +:100F80000900DFF86026D8E90001C2E9000198F9FC +:100F9000023098F9012098F900100FF68430F1F72B +:100FA00001FAFFF795FD01A8F1F799FC404601A968 +:100FB0000522F1F73DFDFFF730FD00280DD0DFF8E9 +:100FC0002026D8E90001C2E9000198F810000028A5 +:100FD00002D0012088F811000124D346BBF1010F93 +:100FE00008D198F80E005146884203D000F04EFA1E +:100FF00088F80EA0BBF1010F69D1002E67D0DFF891 +:101000000C9B98F80F0098F81010084310D101209D +:1010100088F810000522414609F10800F3F766FC44 +:1010200098F8022098F8011098F80000FFF7DFFD0B +:1010300098F9010099F90910401A411E222901D29C +:10104000012005E010F1230F01DA012000E000206B +:10105000012835D10020C8F82800C8F82C00FFF777 +:10106000E4FE00282CD028220021DFF88005F1F7CB +:10107000F5F898F80F00401C88F80F00C0B215284A +:101080000BD10FF6B420F1F78DF9012088F811008B +:10109000002088F80F00012412E098F81000401C8E +:1010A00088F8100098F8022098F8011098F80000CD +:1010B000FFF79DFD0522414609F10800F3F716FCF4 +:1010C000FFF7BCFD582214A92846F3F70FFC98F847 +:1010D0000D0001283CD1B8F81200002805D10FF608 +:1010E0006820F1F75FF9012428E0D8F82010814248 +:1010F00019D2002E02D10098384300D00124DFF825 +:101100000C9A99F9020098F90220904216D0491CD5 +:10111000C8F820100FF64420F1F744F9D8E900018F +:10112000C9E900010AE0002088F80D00A8F81200C3 +:10113000C8F820000FF63420F1F734F9BBF1010FA5 +:1011400006D198F81000002802D0012088F811007C +:101150002046012802D10021C8F81C10D8F8181028 +:1011600091F87910002907D10021C8F81C10012836 +:1011700001D100F08BF9002420462BB0BDE8F08FA0 +:1011800010B5DFF870090021C1610322052100209C +:10119000F6F75AFD044600F007F8204610BD03227A +:1011A00005210120F6F750BD00B597B000A807F063 +:1011B00018FC582200A9DFF84009F3F797FB01203B +:1011C00017B000BDDFF82C09406A7047DFF824092A +:1011D00000214162704700000FB410B596B00024A2 +:1011E0009DF9BC0001280BD107F0F5FC1899884245 +:1011F00002D3441AE4B272E08038441AE4B26EE0DA +:1012000000A807F0EEFB9DF9B800401E082866D83C +:10121000DFE800F02905111D2936424E5A000198D9 +:101220001999884201D3441A59E0DFF8E4281018CC +:10123000401A441C53E002981A99884201D3441A78 +:101240004DE0DFF8CC281018401A441C47E0039802 +:101250001B99884201D3441A41E0DFF8B4281018E2 +:10126000401A441C3BE000981899884201D3441A64 +:1012700035E0DFF89C1808181899401A441C2EE035 +:1012800004981C99884201D3441A28E0DFF880288A +:101290001018401A441C22E005981D99884201D379 +:1012A000441A1CE0DFF868281018401A441C16E0A5 +:1012B00006981E99884201D3441A10E0DFF850289E +:1012C0001018401A441C0AE007981F99884201D35D +:1012D000441A04E0DFF838281018401A441C20464D +:1012E00016B010BC5DF814FBDFF80808012141724C +:1012F0007047DFF80008407A704707F085BB014669 +:10130000DFF8F027792902DB7820508200E0508254 +:10131000012050730FF66800F1F744B810B50400CF +:1013200001D1012402E0072C00DB062421460FF640 +:101330006400F1F737F8641E052C2DD8DFE804F0BF +:10134000030A11181F26DFF8AC073721C1723C21B0 +:10135000017321E0DFF89C071921C1721E2101737E +:101360001AE0DFF890070F21C1721421017313E016 +:10137000DFF880070A21C1720F2101730CE0DFF84A +:1013800074070721C1720C21017305E0DFF86407BF +:101390000521C1720A210173DFF85807C17A8172F1 +:1013A000BDE81040FFF794BBDFF83007704700EB53 +:1013B00080018800421CDFF824078C4992B20B6838 +:1013C0001B0E1354521C92B20B681B0C1354521C6C +:1013D00092B20B681B0A1354521C92B20B6813543E +:1013E000521C92B24B681B0A1354521C92B24B68A7 +:1013F0001354521C92B28B681B0A1354521C92B2A3 +:101400008B681354521C92B28B891354521C92B2A3 +:101410000B691B0A1354521C92B20B691354521CD1 +:1014200092B28B8A1354521C92B2CB8A1354521C20 +:1014300092B28B691B0A1354521C92B28B691354DB +:10144000521C92B2CB691B0A1354521C92B2CB6944 +:101450001354521C92B291F820301354521C92B281 +:101460004B6A1B0A1354521C92B2496A1154DFF89A +:101470008406511C8182704710B5DFF87846A18A36 +:101480000FF21C70F0F78EFFA08A10BD80B52822E5 +:1014900000215648F0F7E2FEDFF858060021C1733C +:1014A00001218182002101748162C16201BD0000BD +:1014B0000FB400B597B000A807F093FA9DED090AA4 +:1014C000DDED210AB4EE600AF1EE10FA02DB30EE37 +:1014D000600A05E09FED411A71EE600A30EE800A65 +:1014E00010EE100AF6F7ACFDDFF8F425DFF8F4355E +:1014F000F1F7CCFCF6F7CCFDF6F7A2FD0022DFF801 +:10150000E835F1F7B1FBF1F7D9FE00EE100AB8EEBD +:10151000C00A10EE100AF6F793FDDFF8C425DFF8D5 +:10152000CC35F1F7A1FBDFF8C825DFF8E835F1F796 +:10153000ADFCF6F7ADFD00EE100A17B05DF814FB38 +:101540000FB400B597B000A807F04BFA9DED0E0A56 +:10155000DDED260AB4EE600AF1EE10FA02DB30EEA1 +:10156000600A05E09FED1D1A71EE600A30EE800AF8 +:1015700010EE100AF6F764FDDFF86425DFF8643535 +:10158000F1F784FCF6F784FDF6F75AFD0022DFF848 +:101590005835F1F769FBF1F791FE00EE100AB8EE4D +:1015A000C00A10EE100AF6F74BFDDFF83425DFF81D +:1015B0003C35F1F759FBDFF83825DFF85835F1F7FE +:1015C00065FCF6F765FD00EE100A17B05DF814FB38 +:1015D0000C2901201C24012000007A4400247449B5 +:1015E000002E0120F82D012040771B00E429012066 +:1015F00041090108A9090108AD0901082DE9F047D1 +:101600002DED068BAAB006460D4614A807F0E9F9A1 +:1016100040F22114287814FB006001210170287821 +:1016200014FB0060DFF8CC74797B01290ED1032212 +:101630004270287814FB00600122C270012907D192 +:10164000788A002804D10020787301E001214170DC +:10165000287814FB006003218170787C012820D158 +:10166000387C00281DD0297814FB0161C0220A7142 +:10167000DFF868140870287814FB0068FFF7FCFE98 +:10168000A8F83000287814FB0064FFF78DFEC4F83A +:1016900032002878401C2870FFF7F8FE002078748C +:1016A00015E20DF18C099FED868B9FED879BDFF88E +:1016B00048740020139001201290394684B0684687 +:1016C0005822F1F7C5F90FBCFFF786FD0A282878E4 +:1016D00014FB006080F0FC8000210171287814FB6D +:1016E000006898F804A0084613900220129039462A +:1016F00084B068465822F1F7ABF90FBCFFF76CFDD8 +:1017000040EA0A0088F80400287814FB00680020EA +:10171000139003201290394684B068465822F1F79E +:1017200097F90FBCFFF758FD88F80500287814FBDF +:1017300000680020139004201290394684B0684657 +:101740005822F1F785F90FBCFFF746FD88F806002F +:10175000287814FB00680020139005201290394669 +:1017600084B068465822F1F773F90FBCFFF734FDD7 +:1017700088F80700394684B068465822F1F768F9BE +:101780000FBCFFF7DDFE10EE100AF6F759FC41EC36 +:10179000100B287814FB006853EC102B51EC190B3C +:1017A000F1F762FAF1F78AFDA8F80E00287814FB29 +:1017B00000682398F6F744FC53EC182BF1F754FA21 +:1017C000F1F77CFD88F81000287814FB0060B9F868 +:1017D0000E104174394684B068465822F1F738F942 +:1017E0000FBCFFF765FE10EE100AF6F729FC41EC7E +:1017F0001A0B287814FB006853EC1A2B51EC190BC8 +:10180000F1F732FAF1F75AFD88F81200287814FB44 +:101810000068D9F80800F6F713FC53EC182BF1F721 +:1018200023FAF1F74BFD88F81300287814FB0068C1 +:101830000020139006201290394684B06846582242 +:10184000F1F706F90FBCFFF7C7FC88F80800287805 +:1018500014FB00680020139007201290394684B0D2 +:1018600068465822F1F7F4F80FBCFFF7B5FC88F88A +:101870000900287814FB00680020139008201290BB +:10188000394684B068465822F1F7E2F80FBCFFF7FA +:10189000A3FC88F80A00287814FB00640020139049 +:1018A00009201290394684B068465822F1F7D0F8E2 +:1018B0000FBCFFF791FCE0722878401C287004E10F +:1018C000000000000000244000000000000059401B +:1018D00080210171287814FB0068002013900220F9 +:1018E0001290394684B068465822F1F7B1F80FBC1F +:1018F000FFF772FCC8F80500287814FB0068002088 +:10190000139003201290394684B068465822F1F7AC +:101910009FF80FBCFFF760FCC8F80900287814FB9B +:1019200000680020139004201290394684B0684665 +:101930005822F1F78DF80FBCFFF74EFCC8F80D00E8 +:10194000287814FB00680020139005201290394677 +:1019500084B068465822F1F77BF80FBCFFF73CFCD7 +:10196000C8F81100394684B068465822F1F770F87B +:101970000FBCFFF7E5FD10EE100AF6F761FB41EC36 +:10198000100B287814FB006853EC102B51EC190B4A +:10199000F1F76AF9F1F7A8FCC8F82700287814FBDA +:1019A00000682398F6F74CFB53EC182BF1F75CF921 +:1019B000F1F784FC88F82B00287814FB0060B9F854 +:1019C0000E1080F82C10394684B068465822F1F782 +:1019D0003FF80FBCFFF76CFD10EE100AF6F730FB76 +:1019E00041EC1A0B454A464B02F0D8F906D8454A55 +:1019F000454BF1F717FA01D29FED47AB287814FB5E +:101A0000006853EC1A2B51EC180BF1F72DF9F1F794 +:101A100055FCA8F82D00287814FB0068D9F80800B8 +:101A2000F6F70EFB53EC182BF1F71EF9F1F746FC15 +:101A300088F82F00287814FB0068002013900620F7 +:101A40001290394684B068465822F1F701F80FBC6D +:101A5000FFF7C2FBC8F81500287814FB00680020C7 +:101A6000139007201290394684B068465822F0F748 +:101A7000EFFF0FBCFFF7B0FBC8F81900287814FB84 +:101A800000680020139008201290394684B0684600 +:101A90005822F0F7DDFF0FBCFFF79EFBC8F81D00D2 +:101AA000287814FB00640020139009201290394616 +:101AB00084B068465822F0F7CBFF0FBCFFF78CFBD1 +:101AC000C4F821002878401C2870FFF76DFB2AB06D +:101AD000BDEC068BBDE8F08700002440D0FF00205D +:101AE0007B14AE47E17A743F00005940E17A843FAD +:101AF0002D431CEB0C2901201C240120B81E85EB72 +:101B000051B89E3F9A9999999999B93FEC2B012028 +:101B100080969800E2361A3F9A9999999999B93F17 +:101B200050443A54696D654E6F74692025642025D0 +:101B300064202564000000005044204254204246A6 +:101B40002046554C4C00000050443A20526571200C +:101B50005065646F496E666F3100000050443A2052 +:101B60007574696D657220256400000050443A2048 +:101B7000526571205065646F496E666F32000000D7 +:101B800050443A205374617274204461746120257A +:101B90006400000050443A205554202564000000A1 +:101BA00050443A204241544C454E47544820256405 +:101BB0000000000010B5DFF8444D40F297220021EC +:101BC0002046F0F74BFBFF202070E07284F85A02A9 +:101BD000DFF8FC0D0021417010BD70B501240B2809 +:101BE00031D1012918D1DFF8141D511891F94E3265 +:101BF0001D46DFF8E06D965DB54203DA581C81F8AA +:101C00004E0243E0002381F84E321C4601460FF29B +:101C10008000F0F7C7FB39E0022937D1DFF8DC1C80 +:101C2000511891F94E32012B03DB581E81F84E02F8 +:101C30002CE0002381F84E321C4601460FF2600072 +:101C4000F0F7B0FB22E00A2820D1012908D1DFF803 +:101C5000AC0C111801F24E210879401C087115E0F6 +:101C6000022913D1DFF8941C511801F24E2191F989 +:101C70000430012B02DB581E087107E000230B71B2 +:101C80001C4601460FF21800F0F78CFB204670BD91 +:101C900041542D414C2045582025642025640000E6 +:101CA00041542D524C2045582025642025640000C5 +:101CB000DFF8481C81F8560270470FB4F0B5ABB09E +:101CC0000124DFF80C5DE868DFF8306C90F8101440 +:101CD000002957D190F81104002853D10FF22C207D +:101CE000F0F760FBB4208DF8020046208DF8030069 +:101CF00020468DF8040000208DF82C0003200C9065 +:101D00000DF1350000A91822F0F792FE0A208DF897 +:101D100034000BA8F6F76CF8002801D10220F0E09F +:101D200014A806F05EFE00A8F0F7D9FD9DF80000AB +:101D3000F0769DF9010030779DF902107177BDF9B9 +:101D40000320F2839DF900304FF46167C0EB001C63 +:101D50004FEA8C0017FB030040FA81F04FF47A71D0 +:101D600001FB0020C6F80200C6F80D000020A861A3 +:101D7000E8702870A87068702422014606F5267065 +:101D8000F0F76CFA9DF8C2703846012825D19DF80D +:101D9000C3000246202A0ED0F17D4118F175C9B268 +:101DA000202912DB091AF175C9B20FF27010F0F791 +:101DB000F9FA0220A5E0204605E0F17D22468240A6 +:101DC0001143F175401C0528F7DB307E21469DF953 +:101DD000C42091400843307649E0811991F94E22A0 +:101DE000002A44D191F95212002940D102282ED163 +:101DF00000A8F0F774FD9DF900004FF461619DF9B2 +:101E00000120C2EB02139A0011FB00209DF9021081 +:101E100040FA81F04FF47A71BDF9032001FB0020F4 +:101E2000C6F88B02C6F8870206F1250006F11B01F1 +:101E30000522F0F7FDFD4FF49660A6F81900DFF8D3 +:101E4000680DC6F87F020020686128610FE0032852 +:101E50000DD19DF8C30086F82000BDF8C5004FF4F1 +:101E60007A714843C6F821000020C6F89302204644 +:101E700000FA07F1B07D0843B0753278002A0DD022 +:101E80009DF8C300012804D1824202D1002086F8C7 +:101E9000590296F86102084386F861023A462146E3 +:101EA00096F85602FFF799FE002800D10224E86850 +:101EB00096F955120A9196F95412099196F953120E +:101EC000089196F95212079196F95112069196F9D6 +:101ED0005012059196F94F12049196F94E12039102 +:101EE00090F81114029190F810040190B6F81900BE +:101EF0000090337EF27DB17D0FF23400F0F752FA9C +:101F000020462BB0F0BC5DF814FB000041542D526C +:101F100045563134303330340000000041542D41F7 +:101F20004C204578494E542025642025640000004B +:101F300041542D414C202564202564202564202512 +:101F4000642C4154202564202564202564256425C3 +:101F50006425642025642564256425640000000050 +:101F60002DE9F04194B0FEF75DFA06460124002EFB +:101F700000F08680DFF8845905F24E28B2780221FD +:101F800098F80800FFF729FE002800D10324B07854 +:101F900001282CD1F078024605F21607202A14D029 +:101FA0007978814209D3081A7870B878012196F9B6 +:101FB000042091408843B8700AE00FF25C10F0F7FB +:101FC000F1F900207870B87002E000207870B870E5 +:101FD000787800282AD1A87D012196F90220914025 +:101FE0008843A8750FF24410F0F7DCF91EE04019A1 +:101FF00090F94E02002819D1B078401990F9520298 +:10200000002813D1B078032809D105F21900002166 +:10201000C17181600846C5F89302A8F81600A87D32 +:10202000012196F9022091408843A875A87D0028D7 +:1020300013D10FF20410F0F7B5F9FFF7BBFD012043 +:102040008DF82C0003200C900A208DF834000BA88A +:10205000F5F7CEFE002829D125E0DFF87409C06825 +:1020600090F87810002921D1002180F8101480F810 +:102070001114FFF79FFD0FF2D000F0F793F915E070 +:102080000FF2D800F0F78EF9FFF794FD20468DF897 +:102090002C0003200C900A208DF834000BA8F5F7D3 +:1020A000A7FE002801D1032032E00324DFF8200935 +:1020B000C068DFF8485805F24E2805F2160798F96F +:1020C00007100A9198F90610099198F905100891DE +:1020D00098F90410079198F90310069198F90210E5 +:1020E000059198F90110049195F94E12039190F819 +:1020F0001114029190F810040190B5F819000090A5 +:10210000BB787A78A97D0FF26000F0F74BF9204692 +:1021100014B0BDE8F081000041542D524D204578A7 +:10212000494E5420256420256400000041542D525E +:102130004D2D494E5400000041542D414C4C524508 +:102140004D4F56454400000041542D464F524345E3 +:102150004452454D4F5645440000000041542D5215 +:102160004C204E756C6C000041542D524C2025645F +:102170002025642025642025642C415420256420DA +:102180002564202564256425642564202564256450 +:1021900025642564000000002DE9F04F89B003A8F4 +:1021A000F0F79DFB01A806F025FC0027B84638464D +:1021B0000290DFF848479DF80C00A0719DF80D00D3 +:1021C000E0719DF80E002072BDF80F00A4F8090020 +:1021D000A0794FF46161E279C2EB02139A0011FB1E +:1021E0000020217A40184FF47A71B4F8092001FBDD +:1021F0000020C4F80200BDF80450EDB2BDF806A0FE +:1022000000F084FDD4F80D10D4F8020000F0E4FBD7 +:10221000060001D0C92E0CD3DFF8E097D9F80C00E6 +:10222000C26F31460FF23C40F0F7BCF8D9F80C0011 +:10223000C66FA07D400722D5DFF8C097D9F81000FF +:102240003018C9F8100047F23051884217D3D9F836 +:1022500014104118C9F814100FF21840D4F87F2256 +:102260008A4205D3F0F79EF83846C9F8100006E018 +:10227000F0F798F83846C9F81400C9F8100094F837 +:102280000B90A94500F08D8084F801A02570384698 +:10229000C4F88302A07D400777D5D4F88712D4F81C +:1022A000020000F099FB8346D4F88F0244F62067C1 +:1022B000BB4513D25844C4F88F0204EB8900D0F810 +:1022C0006B125944C0F86B12E07A0019217B90F828 +:1022D00066228A4212D280F866120FE0834440469A +:1022E000C4F88F021422014604F26B20EFF7B6FF08 +:1022F0000522414604F26620EFF7B0FFD4F88F22A2 +:10230000BA4234D34046D4F86F12D4F86B329942B3 +:1023100000D3012002210BE004EB8303D3F86B32DE +:1023200004EB8707D7F86B72BB4200D20846491C02 +:102330000346C9B20F46052FEEDB8DF814001819BD +:1023400090F866028DF8150005A905A800F0D6FBE7 +:102350001422414604F26B20EFF780FF052241462C +:1023600004F26620EFF77AFF4046C4F88F0294F833 +:102370005702002809D05A4604F10B0104F10B0062 +:1023800000F0BCFB404684F85702D4F80200C4F8C1 +:102390008702404684F8590284F85EA20127B846B5 +:1023A00028E0D4F883023018C4F8830294F85E124F +:1023B0005FFA8AFA514505D084F801A084F85EA23C +:1023C0000127B846217B6278914213D12178894553 +:1023D00010D144F62067B8420BD3A07D400706D544 +:1023E00094F85702002802D1012084F85702C4F85B +:1023F0008372002794F86112002909D0002F07D1B9 +:102400000127C80700D5B8460FF27420EFF7CAFFBE +:10241000A07D40070FD5D4F80290D4F88B1248461F +:1024200000F0DAFAD4F87F12884204D30127384644 +:102430000290C4F88B92002F00F0D58000270DE0A9 +:102440000FF24820EFF7AEFF002084F85D0204F1A0 +:102450002500A11D0522F0F7EBFA7F1C032F80F267 +:10246000C280A07D3841C007F7D594F8610240FAD8 +:1024700007F1C90701D40028EFD1002F03D0022FA4 +:1024800021D00ED3E9E7DFF874058068407A002890 +:10249000E3D1B8F1000FE0D00021012000F00FFAE5 +:1024A000DBE7E07D2841C007D7D560780028D4D08D +:1024B00094F859020028D0D1012084F8590201462D +:1024C00000F0FDF9C9E702980028C6D0D4F80290C0 +:1024D000D4F88712484600F07FFAD4F88F1201EB47 +:1024E000000B44F62060834506D35A4604F10B01E5 +:1024F000204600F003FB09E0A9EB0B0103A800F064 +:102500007FFAA01D03A90522F0F792FAB4F862023F +:102510000938F0F7A3FCDFF82C2DDFF89037F0F73F +:10252000A3FBF0F7CBFE81461FFA89F994F85D22F0 +:10253000914506D049460FF68050EFF733FF84F8F7 +:102540005D9294F85D1284F83210012084F85802EC +:102550004FF0000A0FF67050EFF724FF4FF0090913 +:102560001BE00AF1010A09EB040000F22A018A7853 +:10257000CB781B0203EB02420B79D21800924B7806 +:1025800090F82A205FFA8AFA51460FF64850EFF782 +:1025900009FF09F105091FFA89F9B4F8622210460A +:1025A0008145DEDBDFF85494D9F80C1091F8111452 +:1025B00000293FF449AF94F950120129FFF644AFC6 +:1025C00094F85D1200293FF43BAF002A3FF438AF86 +:1025D00004F12A010120F4F77BFC0020C9F8100067 +:1025E000C9F8140030E7A07D00072DD594F820002D +:1025F0002841C00728D594F86402002894F86502A1 +:102600001BD1A84215D0D4F893023018C4F8930215 +:10261000D4F82110884217D30321012000F04FF98C +:102620000020C4F89302012084F8640284F8655203 +:102630000AE00020C4F8930206E0A84204D000207B +:1026400084F86402C4F8930204F10B0021460B22C3 +:10265000F0F7EEF9002084F86102012009B0BDE82E +:10266000F08F000041542D43757253543A25642075 +:102670002564000041542D437572543A25640000CE +:1026800041542D434845434B2025640041542D457A +:1026900058202564202564002DE9FE4305460E469A +:1026A00091464FF0000801A841460A4606C0DFF8EF +:1026B000A04B04F5167794F85802002807D0084676 +:1026C00084F8580278810FF62440EFF76BFE788982 +:1026D000002827D104F2250094F825104FF46162F8 +:1026E0004378C3EB031C4FEA8C0312FB0131807863 +:1026F00008184FF47A71228D01FB002004F12801A3 +:1027000001228A70CA701A220A7104224A71020ECA +:102710008A71020CCA71020A0A7248727879887248 +:1027200009207881B9F1000F03D0B9F1020F2ED042 +:1027300051D228788DF804000DF10409687889F8E1 +:102740000100300C89F80200300A8DF8070089F882 +:102750000460052201A9788900192A30F2F7C6F829 +:102760007889411D79812878B8706878F87078790F +:10277000401C78714FF00108009699F801309DF8DF +:10278000042089B20FF67830EFF70CFE23E0788949 +:10279000001900F2270190F827204B781B0203EB69 +:1027A0000242897851187218110C80F82710788924 +:1027B0000019110A80F828107889001980F829205A +:1027C00079890819009290F8263090F825200FF6A4 +:1027D0004830EFF7E7FDD4F80200C4F88702002084 +:1027E000C4F88F024046BDE8FE83DFF8640A90F823 +:1027F0005812002904D0002180F858120120704797 +:1028000000207047DFF8480A0021A0F862127047E4 +:10281000DFF83C1A01F22E00B1F86222002A04D13E +:102820000022CA851146418001717047DFF8200AF5 +:10283000B0F86202002802D0001F80B27047052065 +:10284000704710B5624CF5F7FDF9E060EFF729FD30 +:10285000A060E068DFF8FC19C0F8201400F2204006 +:10286000DFF8F4194160DFF8F41981600FF20D010F +:10287000C1600FF29D010161012010BD002054498B +:10288000C96891F81114002913D00146DFF8C03946 +:1028900000E0491CC9B20A46042A05DAD21892F9A6 +:1028A0004E22012AF5DB0120002801D100207047CB +:1028B00000E07047DFF8980990F95F027047DFF891 +:1028C000902902F24E235874002813D00846042899 +:1028D00005DA801890F94E0201280DDB03E092F929 +:1028E0004E02012808DB987B012202FA01F108431D +:1028F000987370470020987370470000CCF6002052 +:1029000080B500210846FFF7DAFF012002BD000074 +:102910007CB5002340F221120C7812FB040401253F +:1029200025700C7812FB04041A25A570DFF82049E5 +:1029300094F85C520B26354214D00B7812FB03033B +:1029400001255D7094F85C32DD0603D503F0EF03DA +:1029500084F85C320B7812FB030394F85C52DD7050 +:10296000012313E0ED0611D50B7812FB03030325B9 +:102970005D700B7812FB030301259D720B7812FB2F +:102980000303DD70002384F860322B46002B12D045 +:102990000B7812FB0303D4F802505D600B7812FB36 +:1029A000030325781D720B7812FB030062784272D4 +:1029B0000878401C0870FFF7A3FF94F86002012814 +:1029C00004D104210120BDE87C4078E773BD0000FC +:1029D000BC290120E07C002010B40022884201D3F1 +:1029E000421A08E00B1ADFF87848A34203D3DFF855 +:1029F00074281018421A104610BC7047BC290120D8 +:102A00002DE9F0412DED028B82B007460E4630468F +:102A1000F0F72EFA41EC180B53EC182BDFF84808AE +:102A2000DFF84818F0F720F9F0F748FC8DF80000BF +:102A30004FF4616853EC182BDFF83408DFF83418D2 +:102A4000F0F712F904460D469DF8000018FB00F05F +:102A5000F0F704FA02460B4620462946F0F744F800 +:102A600041EC180B53EC182B4FF01130DFF808181D +:102A7000F0F7FAF8F0F722FC04468DF801403C2507 +:102A8000E4B215FB04F0F0F7E9F902460B4651EC0D +:102A9000180BF0F729F8F0F711FC8DF802009DF8FB +:102AA000001011FB08F114FB051151FA80F04FF4EE +:102AB0007A7101FB1060ADF80300384600A90522C9 +:102AC000EFF7B6FF02B0BDEC028BBDE8F081DFF896 +:102AD000801781F86002887DC00709D591F86002EF +:102AE000012802D104210120E9E6002081F86002DA +:102AF0007047DFF85C170B22EFF79ABF3CB40B4628 +:102B00001146DFF84C2702F25A24E478002C04D056 +:102B1000D57A92F85A22AA4203D0002202B030BCE1 +:102B2000BAE5002C06D0AA4204D10222184602B00F +:102B300030BCB1E533BC704770B52DED048BB0EE01 +:102B4000408AF0EE608A04460D46164651EC180B9A +:102B500053EC182BEFF7C8FF41EC190B53EC192B72 +:102B60000020DFF81817F0F77FF841EC100B84ED28 +:102B7000008B85ED000B53EC102B4FF01130DFF87C +:102B8000F816F0F771F802460B4651EC190BEFF707 +:102B9000ABFF0022DFF8E836F0F766F8C6E900017F +:102BA000BDEC048B70BD0000804F12000FB438B52F +:102BB0002DED048B8CB014A80268436843EC102BF5 +:102BC00006AA08A90AA8FFF7B7FFDDE90A23002033 +:102BD000DFF8B016F0F748F804460D46DDE90823A3 +:102BE000DFF86006DFF8A016F0F73EF822462B4625 +:102BF000F0F74CF904460D46DDE90623DFF88C06B4 +:102C0000DFF88C16F0F730F822462B46F0F73EF945 +:102C100041EC180B16A80268436843EC102B00AA7D +:102C200002A904A8FFF788FFDDE904234FF0333041 +:102C3000DFF86016F0F718F804460D46DDE90223C8 +:102C4000DFF85406DFF85416F0F70EF822462B464C +:102C5000F0F71CF904460D46DDE90023DFF8E40532 +:102C6000DFF83C16F0F700F822462B46F0F70EF995 +:102C700041EC190B53EC182B51EC180BEFF7F4FF48 +:102C800004460D4653EC192B51EC190BEFF7ECFFF2 +:102C900022462B46F0F7FAF841EC100BF0F78EFACB +:102CA0000CB0BDEC048B31BC5DF814FB9999C93FA5 +:102CB0000FB410B58EB010A80268436843EC102B17 +:102CC00019A80268436805AC51EC100BEFF70CFF34 +:102CD0002060616012A80268436843EC102B1BA8B7 +:102CE0000268436807AC51EC100BEFF7FDFE206063 +:102CF000616005A984B068462422EFF7A9FE0FBCE5 +:102D0000FFF754FF0EB010BC5DF814FB2DE9F84F2F +:102D10002DED068BB0B0DFEDE08A00259FEDDE8A59 +:102D200000A8EFF7DCFD0EA8EFF730FE17A8FFF7BD +:102D3000E0FE14AF4FF47A703C214FF461627B786F +:102D4000BC7811FB04F412FB0343FC781B1900FB55 +:102D500003F89DF9003013FB02F29DF9013013FBDB +:102D600001219DF9022041FA82F1BDF9032000FB07 +:102D700001261AA805F035FEDFF828459DED290A41 +:102D8000B5EE400AF1EE10FA04DD0320E0702846AB +:102D9000A07001E02846E070F87ADFF8B49499F862 +:102DA000BB12012940F03A81012840F03781A06927 +:102DB000404500F0188109F5267105A82422EFF797 +:102DC00047FE0EA984B068462422EFF741FE0FBCEF +:102DD000FFF76EFFB0EE409AF0EE609AA1694046B0 +:102DE000FFF7FAFD074651EC190B2A46134600F08F +:102DF000D5FF18D23846F0F73BF8DFF87424DFF837 +:102E00007434EFF731FFDFF8A024DFF8A034EFF7D8 +:102E10002BFF02460B4651EC190BF0F7ABF8F5F718 +:102E200037F908EE900A9DED280AD4ED090A30EE34 +:102E3000600A84ED080AB5EE400AF1EE10FA01D5F9 +:102E40002846206242F210708742C0F0998053EC0D +:102E5000192B2846DFF85814EFF706FF41EC190B41 +:102E600053EC192BDFF8DC03DFF84814EFF7FCFE16 +:102E700002460B4692469B46206AF5F7E1F8524619 +:102E80005B46EFF7CFFF2AD29FED840AF4EE408A2B +:102E9000F1EE10FA0EDB0DF15500016800EE101A8C +:102EA000DFED7F0AB4EE600AF1EE10FA02DB0A20D1 +:102EB000207014E0B3EE080AF4EE408AF1EE10FA46 +:102EC00003DB2078401D207009E0B3EE020AF4EE27 +:102ED000408AF1EE10FA02DB2078C01C20700DF160 +:102EE000550001680AEE101A94F900000690206A55 +:102EF000F5F7A6F8CDE904018DED029B1AEE100A54 +:102F0000F5F79EF8CDE9000118EE900AF5F798F86C +:102F100002460B460FF21840EFF744FA28462062AB +:102F20009DF85000312880F21781B3EE080AB4EE04 +:102F3000408AF1EE10FA40F10F819FEDC00A0DF1C9 +:102F40005500016800EE901AF4EE400AF1EE10FA16 +:102F500076DB9DF85000212880F210810DF155009C +:102F6000016800EE101ADFED4E0AB4EE600AF1EED1 +:102F700010FA63DB94F9000005285DDB0A25FDE00B +:102F80000DF15500016800EE101A00EE907AF8EE8F +:102F9000600A09F2B5209FEDAA1A016801EE901AA5 +:102FA000B4EE610AF1EE10FA0EDB0DF155010A687C +:102FB00000EE102A016801EE901A30EE610A80EEF0 +:102FC000200A20EE018AABE7016800EE101A0DF12D +:102FD0005500016801EE901A30EE610A80EE200A79 +:102FE00020EE018A9CE7E1693046FFF7F5FCB0F579 +:102FF0007A7F1FD394F9000000281BD09DED290A89 +:10300000B5EE400AF1EE10FA14D0E661FF208DF81B +:1030100050000DF155002946016081E7012809D1D2 +:1030200009F526700EA92422EFF712FDC4F81880C6 +:10303000E66175E76078FBE003259FE002259DE0EF +:10304000016800EE901AB3EE021AF4EE410AF1EEB6 +:1030500010FA0EDB016800EE901AF4EE400AF1EE71 +:1030600010FA06D59DF85000212880F287800225AD +:1030700084E09FED750A016800EE901AF4EE400AB4 +:10308000F1EE10FA0EDB9DF85C00012801D0042857 +:1030900074D1022572E000BF000000000000104261 +:1030A00000004042016800EE901A9FED681AF4EEAD +:1030B000410AF1EE10FA31DB016800EE901AF4EEED +:1030C000400AF1EE10FA29D59DF85C00012803D1E1 +:1030D0009DF85D10022901D0042805D19DF850000B +:1030E00021284BDA012549E09DED290AB5EE400A79 +:1030F000F1EE10FA42DD0DF15500016800EE101AF4 +:10310000B5EE400AF1EE10FA38DD6078002802D101 +:103110006FF0010532E06FF002052FE09DED290A06 +:10312000B5EE400AF1EE10FA0BDD6078002802D10E +:103130006FF0020522E0E07803281FDB6FF0020544 +:103140001CE0A078401CA070C0B23C2816DB6FF0D9 +:1031500001050020A07011E09DED290AB5EE400A9E +:10316000F1EE10FA0ADD6078002802D16FF0020556 +:1031700004E0E078032801DB6FF0020520782818CE +:10318000207040B2002801D50020207094F9000082 +:103190000A2804DB0A2020700120607003E0002868 +:1031A00001D10020607094F9040094F90010884265 +:1031B00030D018EE100AF4F743FF41EC100B6078A2 +:1031C00000280DF15500016808EE101A94F900006E +:1031D00004908DED020B29980ED0F4F731FFCDE964 +:1031E000000118EE100AF4F72BFF02460B460FF20F +:1031F0005810EFF7D7F80DE0F4F722FFCDE9000102 +:1032000018EE100AF4F71CFF02460B460FF2581096 +:10321000EFF7C8F809F526700EA92422EFF718FC7D +:10322000C4F81880E6612898606220782071607880 +:1032300030B0BDEC068BBDE8F28F000001001042FB +:1032400000007A449A999999010040416766E640E6 +:10325000CCF60020BB1C0108611F01089921010860 +:10326000A1780F05005C2605B9791F962FA4923E20 +:10327000FCA9F1D24D62503F1111913F00004E4028 +:103280000020AC4000C05B409999FD3F5839B4C85C +:1032900076BE9F3F33335640AE47E17A14AEF73FD8 +:1032A0009999993FBC290120DFBC9A785634323F66 +:1032B00000408F409999C93F41542D4346205742C1 +:1032C000432025642025640041542D54433A25644D +:1032D0000000000041542D4E6F256420543A2564AF +:1032E00020413A256420443A2564000041542D438E +:1032F0006C656172426174636844617461000000CE +:1033000041542D424154322053503A2564202564C3 +:10331000202564202564000041542D42415434206E +:1033200053503A256420256420256420256400003C +:1033300041542D5031202566202566202566202504 +:10334000662025640000000041542D503220473A89 +:10335000256620503A256620443A25662056656841 +:1033600069636C652D25640041542D503220473A25 +:10337000256620503A256620443A2566204E6F7413 +:103380007965742D2564000080B5B248816891F894 +:103390003914002901D1002002BD01218170EDF70F +:1033A00008F800280AD0EDF709FF01460FF2EC20DB +:1033B000EEF7F8FFEDF701F8012002BD002002BD95 +:1033C0000FB430B589B0A34CA06890F83814002928 +:1033D00040D190F8390400283CD1ECF7D5FE00200C +:1033E00020706070A0706061BDF83240204600F02F +:1033F00019F9BDF83450284600F012F90FF2B02048 +:10340000EEF7D0FF2A4621460FF2B020EEF7CAFFB2 +:1034100001208DF83400AA208DF832003C208DF870 +:10342000330000208DF80000032001900DF1090009 +:103430000CA91822EFF7FCFA0A208DF8080000A862 +:10344000F4F7D6FC002805D10FF28020EEF7AAFF92 +:10345000022000E0012009B030BC5DF814FB00B58B +:1034600089B0ECF708FF01208DF8000003200190DF +:103470000A208DF8080000A8F4F7BAFC002801D152 +:10348000032000E0012009B000BD70B504460D46E0 +:1034900040F22116287816FB004001210170EDF75B +:1034A0008DFE01281AD1287816FB004005214170B5 +:1034B000287816FB00401B2181700FF22420EEF7C4 +:1034C00071FF287816FB00400221C170287816FB96 +:1034D00000401E214171ECF781FF18E0EDF772FE0C +:1034E000012814D1287816FB00400121417028786A +:1034F00016FB00401B2181700FF2F410EEF752FF13 +:10350000287816FB00400121C170ECF777FF28787E +:10351000401C2870BDE87040ECF74FBF70B59CB000 +:103520004D4E304605F05DFA30684A4CE168411A6C +:1035300089B2002904D12269B6F84A309A4203D0F0 +:10354000E060B6F84A002061A068D0F83C543160D1 +:103550006068807AC046C046314683B068465822CB +:10356000EFF776FA0EBCADB22846EEF71FFA6061AF +:10357000207801281CD113A8EFF708FA17A80268D1 +:10358000436843EC122B15A80268436843EC112BE7 +:1035900013A80268436843EC102B9DF867209DF840 +:1035A00066109DF8650000F02FF80020207006E0FE +:1035B0006078012803D100F031F80020607001200C +:1035C0001CB070BD10B50FF23810EEF7EBFE214CB9 +:1035D000EEF767FE6060F4F735FBA060EEF761FE82 +:1035E00060600020E0602061A0681C49C0F84814B9 +:1035F00000F248401A4941601A4981601A49C16085 +:103600001A490161012010BD80B5D2B2C9B2C0B261 +:10361000ECF711FFBDE80140ECF700BFECF706BF87 +:10362000ECF74ABEECF737BEECF758BEECF764BED9 +:1036300080B5EDF7C3FD002805D006488078002846 +:1036400001D1012002BD002002BD0248012101700C +:1036500070470000682B012074240120C133010849 +:103660005F3401081D350108893301088B340108D6 +:10367000EDF7D0BDEDF7D2BDC9B2EDF7DEBDECF789 +:10368000ADBEECF707BEEDF7DDBE80B5EDF7A0FEF1 +:10369000C0B202BDEEF766B9EEF765B94C542043EF +:1036A0006D6452656164795F5353202564000000A6 +:1036B0004C54205374617274205353004C54205363 +:1036C000542025642C205754202564004C5420504D +:1036D00065646F4F70656E4661696C2053530000DE +:1036E0004C54205245515545535420504F530000DF +:1036F0004C5420524551554553542041434B0000F2 +:103700004C5420496E695353000000000FB480B53B +:10371000082200210846F4F797FA022801D1022076 +:1037200004E06948002101704180012002BC5DF87D +:1037300014FB6548002101700120704738B5012451 +:103740000020ADF80000604D95F90000002809D177 +:10375000204628700020A880A86805F07DFF06F0AC +:10376000F3F829E0012829D16888401C68800DF110 +:103770000101A86806F094F9002815D0082200215C +:103780002046F4F761FA032800D1032408220B2114 +:103790000020F4F759FA022801D1022032BD02209C +:1037A000287006F04FFB07E0B5F90200962803DB0E +:1037B0000520287000F057F8204632BD0328FBD1C1 +:1037C000A888401CA88000B2FB28F1DA00A9A868EC +:1037D00005F07EFF0028EFD004202870204600F07E +:1037E00033F800F040F8E7E710B5374CF4F72AFA61 +:1037F000E060F6F723FEA060E0683449C0F850119D +:1038000000F5A87032494160324981600FF20D0124 +:10381000C1600FF2C9010161012010BD0146002005 +:10382000294AD26892F84121002A02D0012900D108 +:1038300006E0704780B5002000F006F8012002BDC8 +:10384000254890F90000704723490870704780B5FB +:10385000082200210846F4F7F7F9022801D10220D6 +:1038600002BD012002BD80B5174800218180418042 +:1038700008220120F4F7E8F9032801D1032002BD52 +:10388000012002BD38B501240F4D95F90000022832 +:1038900015D108220B212046F4F7D6F9032800D1D0 +:1038A0000324FFF7D4FF022801D1022032BD0328F0 +:1038B00000D103240320287002A0EEF773FD2046F8 +:1038C00032BD000053414900582C01200D3701083A +:1038D000333701083D370108CE2E012018B440F2DD +:1038E00021120B7812FB030301241C700B7812FBCE +:1038F00003035C700B7812FB030308249C700B78A5 +:1039000012FB03000122C2700878401C087011BC31 +:1039100090E700000FB480B58748012101700522AF +:1039200000210846F4F790F9022801D1022016E0A0 +:10393000052209210020F4F787F9022801D102208D +:103940000DE0052207210020F4F77EF9022801D1BD +:10395000022004E000F0E8F806F09CFA012002BC26 +:103960005DF814FB38B50124052209212046F4F73F +:103970006BF9032800D10324052207210120F4F765 +:1039800063F9032800D103246B4D95F90000032847 +:1039900001D0012807D1052200210120F4F754F9B4 +:1039A000032800D103240020287000F0BDF806F0A1 +:1039B00014FB204632BD80B5002000F03CF8022800 +:1039C00001D1022002BD032801D1032002BD012044 +:1039D00002BD10B5584CF4F735F92061F6F72EFD0D +:1039E000A060EEF75EFCE06020695449C0F8D81092 +:1039F000D83053494160534981600FF21101C160D1 +:103A00000FF249110161012010BD000001460020A4 +:103A1000494A126992F8C920002A02D0012900D12E +:103A200002E07047002003E0474890F9000070472B +:103A300045490870704770B582B0064601253E4C76 +:103A400094F90000012823D1A088401CA08000B276 +:103A50004C280BDB0020A0800220207005220021D2 +:103A60002846F4F7F1F8032800D10325012E59D197 +:103A7000E068007D012807D1B4F904001F2851DB5C +:103A80006078401C60704DE0A078401CA07049E058 +:103A900002281CD1012E0AD1E068007D012803D143 +:103AA0006078401C607002E0A078401CA07094F91F +:103AB0000100012836DB052200210846F4F7C4F88E +:103AC000022801D1022076BD032020702AE00328BD +:103AD00028D100208DF8000000A9A06806F0FEF9AA +:103AE000C0B202280DD1052200212846F4F7ACF817 +:103AF000032800D103250120FFF79AFF042020703E +:103B000010E003280ED1052200212846F4F79CF886 +:103B1000032800D1032500206070A07002202070CF +:103B200006F0B8F9284676BD03480021818041702F +:103B30008170704700000000D82B01201539010862 +:103B400065390108B7390108BF2E012010B50C46B0 +:103B500040F22111227811FB020201231370227816 +:103B600011FB02025370227811FB020205239370AD +:103B7000227811FB02000121C170FFF753FF20786A +:103B8000401C207010BD00000FB480B5022201213E +:103B90000020F4F759F8022801D102200EE0022299 +:103BA00007210020F4F750F8022801D1022005E097 +:103BB00006F01EFA414800210170012002BC5DF8A8 +:103BC00014FB3E48002101700120704700B58BB006 +:103BD00000A8F4F798F803A890EC030A06F03EFA60 +:103BE0003649087001200BB000BD10B5334CF4F716 +:103BF00029F8A060EEF755FB6060A06830490166C7 +:103C000030494166304981660FF21D01C1660FF2ED +:103C100069010167012010BD80B528484068007D1A +:103C200006F015FA012002BD002024498A6892F8A6 +:103C30005120002A04D091F90010002900D0012061 +:103C400070471E48002101700120704710B5002404 +:103C5000012804D007D303280BD002D303E00124AA +:103C600007E0022405E0032401460FF26000EEF7AE +:103C700099FB204610BD000038B50C4640F22111DA +:103C8000227811FB020201231370227811FB020239 +:103C90005370227811FB020202239370227811FBE9 +:103CA0000205064890F90000FFF7D0FFE870207881 +:103CB000401C2070BDE83140C3E70000E42C012027 +:103CC000893B0108C33B0108CD3B01084C4D4350E3 +:103CD0005320312025640000014807F07BB8000024 +:103CE00000400020704700000278C9B28A421AB131 +:103CF0001CBF10F8012FF9E718BF00207047000023 +:103D0000C9B2830706D0521E22D310F8013B994254 +:103D1000F7D11FE0083A13D302F1040241EA01216E +:103D200041EA014150F8043B121F21BF4B40A3F16F +:103D3000013C2CEA030C1CF0803FF3D0C9B2001FF9 +:103D4000083210F8013B521E28BF91EA030FF8D841 +:103D500018BF0120401E704730B4436803F0004292 +:103D600001211B031B0B436004BF0368002B08D118 +:103D70000DE00368DD0F45EA440444605B00036026 +:103D8000491E4468E302F4D523031B0B43604368D8 +:103D90001A434260084630BC704700004FF4001CD4 +:103DA0001CEB410F94BF1CEB430F09E041EA030CED +:103DB00050EA4C0C52EA0C0C03D28B4208BF8242F0 +:103DC000704714BF994290427047000070B5044696 +:103DD0000D466068C0F30A5040F2FF71884207D177 +:103DE0006068000304BF2068002817D0022070BD5F +:103DF00020B92046FFF7B0FF012867DA012D0FDB5D +:103E000040F2FF71091A8D420AD3606800284CBF46 +:103E10009FED2F0B9FED300B84ED000B012070BD4B +:103E20004142A942616806DA6FF31E51401941EA26 +:103E30000050606041E0401E63680122451962F352 +:103E40001F5305F1350001F000416360352803D3AD +:103E500061600020206070BD002215F11F0F04DAA0 +:103E600022682360002020356060684213D0521E13 +:103E700025689241C0F12003D2439D4045EAD272A9 +:103E800025686668C54006FA03F32B432360636820 +:103E900023FA00F06060606808436060B2F1004F90 +:103EA00003D80DD12078C0070AD52068401C2060B7 +:103EB000206828B96068401C60604FF0FF3070BD1A +:103EC0006068884204BF20680028F6D1002070BDD9 +:103ED000000000000000F0FF000000000000F07F84 +:103EE00091FBF2F303FB1211C0E9003170470000AF +:103EF00010B517480078002802D1A220F0F772FC14 +:103F00001448006A401C134908621249496A401A61 +:103F1000002802D40F48012181710E4890F8280032 +:103F200000280CD00B4890F82800401E094981F861 +:103F30002800C0B2002802D10648012101710648BC +:103F4000046802E0606880472468002CFAD110BD44 +:103F5000DA2E0120087C0020942E012080B54FF439 +:103F60004070F4F7AFFF3348016841F4700101601D +:103F70003148016841F00101016000218160016860 +:103F80002E4A114001602E494160016821F48021D0 +:103F900001600021C16000F02DF82A484FF0006157 +:103FA000016001BD2848416801F00C01082914D1C5 +:103FB0000168026802F03F02244BB3FBF2F2016891 +:103FC000C1F3881151430268C2F30142521C5200EE +:103FD000B1FBF2F11E4A116102E01D491B4A0A6160 +:103FE0001B494068C0F30310405C0A6922FA00F0E4 +:103FF000086170471448C16B41F08051C16341684A +:104000004160416841604168416008210160114997 +:104010004FF4C0620A60416821F4000141600E481B +:104020000E4901600E48016821F4404141F480418D +:104030000160704788ED00E000380240FFFFF6FEA7 +:104040001030002408ED00E0043802400024F400A1 +:10405000807C0020003C0240843802404031004017 +:10406000007000400021102806DB103800F160418C +:1040700011F56441097806E00E2801D1042007E01B +:104080000449001F415C802901DA022000E0012080 +:10409000704700BF18ED00E080B558490978491C09 +:1040A000564A1170017A491E0172C9B2002901D124 +:1040B00006F09EFEF1F75DFA01BD38B504005048E8 +:1040C00005680BE0287A002807D06868A04204D170 +:1040D000012028722800FFF7DFFFED68002DF1D1E5 +:1040E00031BD38B5040047480078002802D0A1202F +:1040F000F0F778FBF1F7FCF94148056805E0A542C7 +:1041000002D1AF20F0F76EFBED68002DF7D13E48ED +:104110003E490160142200212000EEF79FF869203B +:104120002074F0F7CCFB36480068E0603448046047 +:1041300032484078F021084202D09920F0F752FB33 +:104140002E484078002801D1F0F7B3FB31BD38B5D7 +:1041500004002C480078002802D0A120F0F742FB90 +:10416000F1F7C6F9207C692802D08520F0F73AFBE8 +:1041700022480078401C21490870207A002804D188 +:104180001E4880686060012510E060681B498968EE +:10419000884209D01021200002F0DCFE207A00289D +:1041A000F8D1164880686060207A451C2572F1F7C6 +:1041B000E0F9280032BD10B504001248007800284C +:1041C00002D0A120F0F70EFBF1F792F9207C6928CC +:1041D00002D08520F0F706FB207A002802D1962035 +:1041E000F0F700FB606805498968884202D09C208E +:1041F000F0F7F8FA2000FFF74FFF10BD087C002011 +:104200008C2E0120DB2E0120A42E0120BB400108B2 +:1042100000F5E0700268914203D343689A18914216 +:1042200002D380680028F5D17047DFF820070168C5 +:1042300099B94FF48031816004224FF4805141607C +:104240004FF0FF31C160016104214161DFF80017C7 +:10425000C1F8BC21DFF8FC1601600120704701F1B4 +:10426000080313F0070305D001F10803C3F10803A5 +:1042700003F007035918D21A8161C26042F00103AA +:104280004B60511828224A60DFF8C0160969C161E5 +:1042900070472DE9F84F044601F1080010F00700BF +:1042A00005D001F10800C0F1080000F0070000EBA4 +:1042B000010B02F1080010F0070005D002F1080020 +:1042C000C0F1080000F007008618A6EB0B00A0EB79 +:1042D000030803EB0B0743F00300CBF80400B742DD +:1042E00028BF06F0A3FD3079C00758BF06F09EFD39 +:1042F000B8F1100F38BF06F099FDA069864207D1CA +:10430000E0684044E060A76140F0010078605AE155 +:104310006069864208D1A0684044A060676140F0AF +:1043200001017960C0514EE1706800F0030101297C +:1043300040F0AD80C0084FEAC00920283BD2D6F833 +:1043400008A0F5680090AE4208BF06F06FFD564524 +:1043500008BF06F06BFD70680099C008C000B0EBA4 +:10436000C10F18BF06F062FD009804EBC00000F119 +:1043700028018A4508D021698A45C0F08480DAF88E +:104380000C10B14240F07F80554506D1009A20685C +:10439000012191408843206077E02830854205D094 +:1043A000206985426FD3A868B0426CD1CAF80C501E +:1043B000C5F808A069E0F568D6F818A0B5420CD099 +:1043C000B0682169884223D3C168B14204BFA9689B +:1043D000B1421DD1C560A8601CE006F1140005685B +:1043E00035B906F110000568A5B101E00846056879 +:1043F00005F114010A68002A02BF05F110010A68DC +:10440000002AF3D12169884202D30021016001E032 +:1044100006F00CFDBAF1000F37D0F06904EB800014 +:1044200000F5987001688E4209D10560280014D10A +:10443000F2696068012191408843606025E020694D +:10444000824508D3DAF81000B04214BFCAF81450FD +:10445000CAF8105001E006F0E9FCB5B120698542C8 +:1044600011D3C5F818A0316929B1814226BF29614D +:104470008D6106F0DBFC706938B12169884202D396 +:104480006861856101E006F0D1FC4E44C844706863 +:104490004008400070604FEAD80548F0010078609D +:1044A00048F80780202D21D204EBC50000F1280632 +:1044B000B146B8F1100F38BF06F0B8FC206820FAFA +:1044C00005F1C90704D40121A9400843206006E092 +:1044D000B068216988422CBF814606F0A7FCB7600E +:1044E000C9F80C70C7F80890FE606CE05FEA18200D +:1044F00008BF002123D0B0F5803F28BF1F211ED266 +:10450000A0F58071090C01F008018840A0F58052E7 +:10451000120C02F004029040A0F580431B0CC1F184 +:104520000E0103F00203891AC91A984001EBD0303A +:10453000C11D28FA01F101F0010101EB4001F9610F +:1045400000227A613A6104EB8100626822FA01F389 +:1045500000F59870DB0706D4012303FA01F111433B +:10456000616007601CE01F2900680EBF0021490838 +:10457000C1F1190108FA01F100E010464268D208C1 +:10458000D200424510D0CA0F00EB820202F11003A4 +:1045900049001A68002AF0D121698B4211D31F60AB +:1045A000B861FF60BF600EE022698168904228BF59 +:1045B000914206D3CF608760B960F8600020B8618F +:1045C00001E006F033FC0BF10800BDE8F28F2DE9A5 +:1045D000F04F0546DFF87403006883B0884608B9D9 +:1045E000FFF723FEDFF86403806800EB08012F313A +:1045F000401E21EA0000804580F0A581D5F8B81161 +:1046000041B1D5F8B0218018824280F09C8181426E +:10461000C0F0998106F00EFC00281EBF0446076812 +:1046200014F1010F00F08F81D5F8B0013818C5F8EA +:10463000B001D5F8B411814238BF0146C5F8B411B4 +:10464000A86968BB286908B1844200D22C61C5F80A +:10465000C041C5F8C4710020C5F8CC012021BB4879 +:10466000006868624FF0FF302862284600F1280297 +:104670000830D2609260491EF8D1B548854203D116 +:10468000A7F12802214625E055F8040CC00805EBE7 +:10469000C000A0F108013819401AA0F1280219E061 +:1046A00005F5E071084600E08068B8B1426803682B +:1046B000D2189442F8D1027B12070FD4AA699A4209 +:1046C0000CD3466833449A4208D2B9194160E8686D +:1046D000A9693A182846FFF7C2FD1FE128698442FC +:1046E00038BF2C610846391900E0806880B1026843 +:1046F0008A42FAD1017B09070AD404604346416823 +:10470000791841602846214603B0BDE8F04FC0E566 +:10471000AE6931462846FFF77BFD416800680818FE +:1047200001902F3800F1080111F0070105D000F1C8 +:104730000801C1F1080101F0070101EB000906F1D0 +:104740001000814538BFB14609F10800009004F11E +:10475000080109F1180A4FF0000BA7F1280011F029 +:10476000070105D004F10801C1F1080101F00701BA +:104770000A19401AAA61E86040F0010151608018EE +:104780002821416071480069E861009810F0070035 +:1047900018BF06F04BFB1B20C9F8040005F5E071BB +:1047A000B1E80C500098A0E80C50C5F8C041C5F81D +:1047B000C471C5F8CCB10098C5F8C801019800E0F3 +:1047C0008A460722CAF804200AF104010A1D0BF1E7 +:1047D000010B8242F4D3BBF1020FB8BF06F026FBF7 +:1047E000B14500F09B80A9EB060081194FEAD00982 +:1047F0004A68520852004A6040F0010171608051DD +:10480000B9F1200F1FD205EBC90101F12804274699 +:10481000102838BF06F00AFB286820FA09F1C907FA +:1048200005D4012101FA09F10843286006E0A068D7 +:10483000296988422CBF074606F0F8FAA660FE6098 +:10484000B760F4606AE0010A08BF002223D0B1F526 +:10485000803F28BF1F221ED2A1F58072120C02F0E9 +:1048600008029140A1F580531B0C03F0040399400A +:10487000A1F58044240CC2F10E0204F00204D21A05 +:10488000121BA14002EBD131CA1D20FA02F202F044 +:10489000010202EB4102F26100237361336105EB17 +:1048A00082016B6823FA02F401F59871E40705D4DC +:1048B00001209040184368600E601CE01F2A0968C0 +:1048C0000EBF00225208C2F1190200FA02F200E003 +:1048D00019464B68DB08DB00834210D0D30F01EB95 +:1048E000830303F1100452002368002BF0D12869E0 +:1048F000844211D32660B161F660B6600EE02A6989 +:104900008868914228BF904206D3C6608E60B0602E +:10491000F1600020B06101E006F088FAE8688045A7 +:1049200011D2A0EB0800E86040F00100A96908EB93 +:104930000102AA61506048F00300486003B001F131 +:104940000800BDE8F08F002000F02BBC982B012060 +:10495000F8FD00206859883C2DE9F84F0446884648 +:104960000026C8F1000B5FEA182008BF002123D001 +:10497000B0F5803F28BF1F211ED2A0F58071090C21 +:1049800001F008018840A0F58052120C02F00402E8 +:104990009040A0F580431B0CC1F10E0103F002030F +:1049A000891AC91A984001EBD030C11D28FA01F1CB +:1049B00001F0010101EB400104EB8100D0F830016E +:1049C00030B31F290EBF00224A08C2F1190208FAAB +:1049D00002F2002300E052004568ED08ED00A5EB6F +:1049E00008055D4503D206465FEA050B0CD0456914 +:1049F0004FEAD27E00EB8E00002D00691CBF85427D +:104A00002B460028E7D1184600283AD1002E3AD18B +:104A1000012088404000414208436168084000F09E +:104A20005F8141420840411E080B00F0100021FA4E +:104A300000F2510901F00801CA40930803F0040391 +:104A4000DA40550805F002050818EA401818C2F3C4 +:104A5000400E2844704422FA0EF1081804EB80003E +:104A6000D0F830010DE008464168C908C900A1EB43 +:104A7000080159453CBF8B46064601690029F2D121 +:104A800040690028F0D1002E00F02A81A068A0EB38 +:104A90000800834580F0248120698642C0F01E8191 +:104AA0007068C00808EB0B09C00008EB0605484514 +:104AB00018BF06F0BBF9AE4280F01081F768D6F857 +:104AC00018A0B7420CD0B0682169884223D3C168CE +:104AD000B14204BFB968B1421DD1C760B8601CE0E3 +:104AE00006F11400076837B906F110000768A7B18E +:104AF00001E00846076807F114010A68002A02BFAE +:104B000007F110010A68002AF3D12169884202D313 +:104B10000021016001E006F089F9BAF1000F38D0F8 +:104B2000F06904EB800000F5987001688E4209D1AD +:104B30000760380014D1F269606801219140884310 +:104B4000606026E02069824508D3DAF81000B042A0 +:104B500014BFCAF81470CAF8107001E006F066F9C4 +:104B6000BFB12069874212D3C7F818A0306930B1AD +:104B70002169884226BF3861876106F057F970695C +:104B800038B12169884202D37861876101E006F07B +:104B90004DF9BBF1100F09D249F00300706009EB29 +:104BA0000600416841F00101416096E048F00300D1 +:104BB00070604BF0010068604BF805B04FEADB0015 +:104BC00020281DD204EBC00101F12807216821FA39 +:104BD00000F2BB46D20705D4012202FA00F00843D6 +:104BE000206006E0B868216988422CBF834606F041 +:104BF0001DF9BD60CBF80C50C5F808B0EF606CE053 +:104C00005FEA1B2008BF002123D0B0F5803F28BFFA +:104C10001F211ED2A0F58071090C01F00801884007 +:104C2000A0F58052120C02F004029040A0F58043DF +:104C30001B0CC1F10E0103F00203891AC91A984036 +:104C400001EBD030C11D2BFA01F101F0010101EBA4 +:104C50004001E96100226A612A6104EB8100626817 +:104C600022FA01F300F59870DB0706D4012303FA5A +:104C700001F11143616005601CE01F2900680EBF4F +:104C800000214908C1F119010BFA01F100E01046B9 +:104C90004268D208D2005A4510D0CA0F00EB8202F7 +:104CA00002F1100349001A68002AF0D121698B42F1 +:104CB00011D31D60A861ED60AD600EE022698168CE +:104CC000904228BF914206D3CD608560A960E8601C +:104CD0000020A86101E006F0A9F807E106F0A6F8B7 +:104CE00001E12DE9F84F04468846606841420840DA +:104CF000411E080B00F01000C1404A0902F00802F2 +:104D0000D1408B0803F00403D9404D0805F002059B +:104D10001018E9401818C1F3400628443018F14033 +:104D2000081804EB8000D0F830014168C908C900B8 +:104D30000646A1EB080A09E008464168C908C9000F +:104D4000A1EB080151453CBF8A460646016900298E +:104D5000F2D140690028F0D120698642C0F0C180BC +:104D60007068C00808EB0A09C00008EB060B48454C +:104D700018BF06F05BF85E4580F0B380F768B56950 +:104D8000B7420CD0B0682169884223D3C168B142D0 +:104D900004BFB968B1421DD1C760B8601CE006F11C +:104DA0001400076837B906F110000768A7B101E0E1 +:104DB0000846076807F114010A68002A02BF07F1D4 +:104DC00010010A68002AF3D12169884202D3002128 +:104DD000016001E006F02AF8002D34D0F06904EB00 +:104DE000800000F5987001688E4209D10760380094 +:104DF00011D1F2696068012191408843606022E02E +:104E00002069854205D32869B04214BF6F612F61C4 +:104E100001E006F00BF8B7B12069874211D3BD61FC +:104E2000306930B12169884226BF3861876105F059 +:104E3000FDFF706938B12169884202D378618761CA +:104E400001E005F0F3FFBAF1100F09D249F00300B9 +:104E5000706009EB0600416841F0010141603FE0EC +:104E600048F0030070604AF00100CBF804004AF8F3 +:104E70000BA0D4F808804FEAD805202D28BF05F0F4 +:104E8000D5FFB8F1000F27D0D4F81490009504EBAB +:104E9000C50000F128052F46B8F1100F38BF05F006 +:104EA000C5FF2068009920FA01F1C90705D4009ACE +:104EB000012191400843206006E0A86821698842EA +:104EC0002CBF074605F0B2FFC5F80890C7F80C9054 +:104ED000C9F80870C9F80C50C4F808A0C4F814B098 +:104EE00004E005F0A3FF0020BDE8F28F06F1080002 +:104EF000BDE8F28F2DE9F04F83B00546C046C046AD +:104F0000DFF8B847F52D80F001810B2D31BF102758 +:104F100005F10B00C008C7002068FE08F04010F043 +:104F2000030F42D0C04300F00100861904EBC60015 +:104F300000F12808F700D8F808506868C008C000D9 +:104F4000B84218BF05F072FFD5F80890454508BF74 +:104F500005F06CFF4D4508BF05F068FF6868C008A4 +:104F6000C000B84218BF05F061FFC84505D12068F0 +:104F70000121B140884320600DE02069814508D3BC +:104F8000D9F80C00A84204D1C8F80890C9F80C80E0 +:104F900001E005F04BFF47F0030068607819083521 +:104FA000416841F001014160F8E0A168B94280F038 +:104FB000BF80002800F0A180012505FA06F1490014 +:104FC0004A42B0401143084041420840411E080B8C +:104FD00000F01000C1404A0902F00802D1408B08DD +:104FE00003F00403D9404E0806F002061018F14001 +:104FF0001818C1F340083018404421FA08F101EBB9 +:10500000000804EBC80000F128094FEAC80AD9F8E3 +:1050100008607068C008C000504518BF05F006FF62 +:10502000D6F808B04E4508BF05F000FF5E4508BF42 +:1050300005F0FCFE7068C008C000504518BF05F0C0 +:10504000F5FED94505D1206805FA08F188432060AE +:105050000DE02069834508D3DBF80C00B04204D191 +:10506000C9F808B0CBF80C9001E005F0DFFE47F07E +:1050700003007060AAEB0708B819019048F001011D +:105080004160019848F80080A7684FEAD70ABAF152 +:10509000200F28BF05F0CAFE47B3CDF800A004EBEF +:1050A000CA00D4F8149000F1280AD346102F38BF54 +:1050B00005F0BCFE2068009920FA01F1C90705D46B +:1050C000009905FA01F10843206007E0DAF80800CA +:1050D000216988422CBF834605F0A8FECAF80890D3 +:1050E000CBF80C90C9F808B0C9F80CA0C4F8088037 +:1050F00006F108050198606150E06068C0B3394668 +:105100002046FFF7EEFD050012D047E015F1400FF5 +:1051100028BF4FF0FF370BD205F10B00C008C700C6 +:10512000606828B139462046FFF716FC050035D1E6 +:10513000A168B9421CD3CA1B6069102A0AD3391866 +:105140006161A26042F001034B60525047F00301DD +:1051500041600AE00022A260626141F00302426005 +:1051600009184A6842F001024A6000F1080515E09A +:10517000E06887420DD2C01BA169E0607A18A26185 +:1051800040F00100506001F1080547F0030048605D +:1051900004E039462046FFF71AFA0546C046C046E5 +:1051A000284603B0BDE8F08F00B970472DE9F047FD +:1051B000A0F10804C046C046DFF8005528698442C3 +:1051C000C0F07582616801F00302012A00F06F826D +:1051D000CA084FEAC20808EB0409CA0737D4226894 +:1051E00011F0030F00F0658251420C199044844283 +:1051F000C0F05D8269698C4200F0D880D608202E0C +:1052000070D2D4F80CA0A768544508BF05F00EFE74 +:10521000BC4208BF05F00AFE6068C008C000B0EBE1 +:10522000C60F18BF05F002FE05EBC60000F128010D +:105230008F4205D029698F4251D3F968A1424ED1DE +:10524000BA453DD128680121B140884328604C45CA +:1052500080F02D82D9F80400C10740F1288281072F +:1052600000F17A81A969894540F0B580E868AC61B0 +:105270004044E86040F00101616069698C4202D1FC +:1052800000216961A960E969814280F01282DFF83A +:105290003004006808B9FEF7C8FFA969002900F0CA +:1052A0000882E868292824BF2846FEF7B1FFE8698C +:1052B000E968884280F0FD814FF0FF30E861F8E155 +:1052C0002830824506D02869824508D3DAF80800DC +:1052D000A04204D1C7F80CA0CAF80870B7E705F0DF +:1052E000A5FDB4E7E768A669A7420BD0A168814293 +:1052F00022D3C868A04204BFB868A0421CD1CF60C6 +:10530000B9601BE004F114010F6837B904F1100112 +:105310000F689FB101E011460F6807F1140213688E +:10532000002B02BF07F110021368002BF3D181425A +:1053300002D30020086001E005F078FD002E86D041 +:10534000E06905EB800000F5987001688C4209D196 +:105350000760380011D1E2696868012191408843F3 +:10536000686074E72869864205D33069A04214BF9B +:105370007761376101E005F059FD002F3FF467AF19 +:1053800028698742ABD3BE61216929B1814226BF1A +:1053900039618F6105F04AFD606900283FF457AF1D +:1053A000296988429BD37861876150E799F80400A6 +:1053B00000F0030003287FF44AAFC5F80880D9F84D +:1053C000040040084000C9F8040048F00100606093 +:1053D00048F804806DE16969894508D1A8686C6165 +:1053E0004044A86040F001016160005161E1C008E3 +:1053F000C0004FEAD00A8044BAF1200F36D2D9F863 +:105400000C70D9F80860B94508BF05F00FFDB1452B +:1054100008BF05F00BFDD9F80400C008C000B0EBD0 +:10542000CA0F18BF05F002FD05EBCA0000F1280104 +:105430008E4206D029698E42C0F08180F1684945CC +:105440007DD1B74206D12868012101FA0AF18843CB +:10545000286076E02830874205D0286987426ED3DD +:10546000B86848456BD1F760BE606AE0D9F80C7047 +:10547000D9F818604F450DD0D9F80800296988423D +:1054800023D3C168494504BFB96849451DD1C760E8 +:10549000B8601CE009F11400076837B909F1100081 +:1054A0000768A7B101E00846076807F114010A6818 +:1054B000002A02BF07F110010A68002AF3D1296906 +:1054C000884202D30021016001E005F0AFFC002E0C +:1054D00037D0D9F81C0005EB800000F59870016802 +:1054E00089450AD10760380012D1D9F81C206868B4 +:1054F000012191408843686023E02869864205D3F2 +:105500003069484514BF7761376101E005F08EFCD2 +:10551000BFB12869874212D3BE61D9F8101029B1F2 +:10552000814226BF39618F6105F080FCD9F81400F3 +:1055300038B12969884202D37861876101E005F0BA +:1055400075FC48F00100606048F804806869844296 +:105550000BD1C5F80880ACE040084000C9F8040051 +:1055600048F00100606048F804804FEAD807202F17 +:1055700022D205EBC70000F128094E46B8F1100F02 +:1055800038BF05F053FC286820FA07F1C90704D496 +:105590000121B9400843286007E0D9F808002969CB +:1055A00088422CBF064605F041FCC9F80840F4606B +:1055B000A660C4F80C907CE05FEA182008BF0021C8 +:1055C00023D0B0F5803F28BF1F211ED2A0F58071E7 +:1055D000090C01F008018840A0F58052120C02F07D +:1055E00004029040A0F580431B0CC1F10E0103F0B2 +:1055F0000203891AC91A984001EBD030C11D28FA5C +:1056000001F101F0010101EB4001E1610022626161 +:10561000226105EB81006A6822FA01F300F59870B7 +:10562000DB0706D4012303FA01F11143696004602A +:105630001CE01F2900680EBF00214908C1F11901B3 +:1056400008FA01F100E010464268D208D200424553 +:1056500010D0CA0F00EB820202F1100349001A6851 +:10566000002AF0D129698B4211D31C60A061E4604B +:10567000A4600EE02A698168904228BF914206D357 +:10568000CC608460A160E0600020A06101E005F0D2 +:10569000CDFB286A401E28620BD1D5F8C80100E076 +:1056A00080680028FCD14FF0FF30286201E005F04F +:1056B000BDFBC046C046BDE8F0870000F8FD0020F5 +:1056C000982B0120002848BF404270471822002133 +:1056D0000248ECF7C3BD014870470000202B0120B1 +:1056E00010B504464FF499620021ECF7B7FD40F283 +:1056F0004130208304F1180148808880002084F81C +:10570000F40204F53D700021818010210181002107 +:1057100041818181C1810846A4F8360304F2363004 +:1057200001214180002181804FF0FF31C1800021A3 +:10573000018141818181C181012101824182002158 +:105740008182C18201830121418300218183C18340 +:1057500001840121418410BD00210B4618E00A1884 +:1057600082F8F53201EB410200EB4202D380138153 +:105770005381D3831384538401EB410200EB8202F3 +:10578000C2F8AC3302F56B7253609360491C09B2E6 +:105790000129E4DB704738B50446032200A910460E +:1057A000DFF854389B681B6E1B6A9847002828D086 +:1057B0009DF80000A4F8F40004F27E359DF8000086 +:1057C000A88004F1F40000A94A7842804A78EA806F +:1057D0008A7882808878288142F2B760A4F87E03B4 +:1057E0004FF4A960688010220FF61C0104F5577071 +:1057F000F4F70CFC10220FF61C0104F26D30F4F7E4 +:1058000005FC31BDF0B583B004460020C04601461A +:1058100004F53D7569800626204611FB0641891D69 +:105820003246EDF705F9B5F9020010FB0640B0F974 +:105830000600E06004F10C00B5F9021011FB06410E +:10584000B1F908104160B5F9021011FB0641B1F938 +:105850000A108160B5F90200001990F8F50284F889 +:10586000F40204F56870B5F9021001EB410204EB93 +:10587000820101F56B718CC98CC004F5936204F54B +:10588000767104F12C0005F054FE94F8F4020190B6 +:10589000009401230022114604F5807006F094F86C +:1058A00040F6C412B5F9020010FB064000F11E01DB +:1058B00004F1240006F0ECFC0020A880A4F85A03B0 +:1058C0000120FEBD7CB504460020C046014604F51B +:1058D0003D7569800626204611FB0641891D32462A +:1058E000EDF7A6F8B5F90200001990F8F50284F872 +:1058F000F40204F5936204F5767104F12C0005F0CE +:1059000018FE94F8F402019000940123002211463D +:1059100004F5807006F058F840F6C412B5F902009C +:1059200010FB064000F11E0104F1240006F0B0FC5B +:105930000020A4F85A03012076BD03220146104638 +:10594000DFF8B4369B681B6E1B6A184780B5FFF7FB +:10595000C2FEDFF8841608600FF2E90101600FF261 +:1059600015114160DFF8941681600FF21911C160C2 +:105970000FF2350101610FF26101416101BD0020AB +:105980000DE000EB4002DFF85C3603EB420247F625 +:10599000FF7322F81130491C0329F2DB401C042854 +:1059A00001DA0021F8E7704780B5DFF8300690F89B +:1059B000F41280F8F5120188C18041880181818844 +:1059C0004181818CC183C18C0184018D4184FFF7A9 +:1059D000D6FF002002BD000010B50024DFF8FC1542 +:1059E00091F8F5220270B1F9062012124270CA88AD +:1059F000827001F20602B2F902301B12C3705388A2 +:105A00000371B2F904301B12437193888371B2F9A8 +:105A100018301B12C371138B0372B2F91A301B12A8 +:105A20004372538B8372B2F91C301B12C372928B78 +:105A300002730846FFF7E6FE002800D00124204646 +:105A400010BD000010B5DFF894452046FFF748FE72 +:105A5000204600F0F6F9002802D12046FFF77CFE30 +:105A60002046FFF798FE2046FFF7CCFEBDE8104029 +:105A700085E7000080B5DFF8640500F0EFF9BDE8C8 +:105A800001407CE733B585B0144602A800210A46E0 +:105A900006C000A806C0BDF81400ADF8080002A8B2 +:105AA000BDF816104180BDF818108180FDEEC01AB7 +:105AB00011EE900AADF8000000A8F0EE601AFDEEBD +:105AC000E11A11EE901A4180BDEEC10A10EE101AD3 +:105AD0008180DFF8085500AA02A9284600F050F896 +:105AE00095F9F402207005F53D709FED580AB0F964 +:105AF000101000EE901AF8EEE00A60EE800AC4ED95 +:105B0000030AB0F91A1000EE901AF8EEE00A20EE3F +:105B1000800A84ED020AB0F9200000EE100AB8EE07 +:105B2000C00ADFED4B0A20EE200A84ED010A9FED4A +:105B3000490AB5F9EE0000EE900AF8EEE00A60EED0 +:105B4000800AC4ED040A05F2EE00B0F9021000EE7E +:105B5000901AF8EEE00A60EE800AC4ED050AB0F98A +:105B6000040000EE900AF8EEE00A20EE800A84EDD0 +:105B7000060A284600F072F9012007B030BD000087 +:105B800030B589B00446DFF858542878ADF80400E1 +:105B900001A80B784380B1F90030C3F30723838059 +:105BA0008B78ADF80A30B1F90230C3F307230381D3 +:105BB0000879ADF80E00B1F90400C0F30720ADF884 +:105BC00010000020ADF812006878ADF8140006A9A6 +:105BD000104600F06DF99FEDB40A06A8D0ED010A59 +:105BE00060EE800AFDEEE00A10EE901AA4F8301381 +:105BF00004F54C71DDED060A9FEDAC1A60EE810AEA +:105C0000FDEEE00A10EE902A4A80D0ED020A20EE66 +:105C1000800ABDEEC00A10EE100A8880287801289C +:105C200010D10020C04608210091012302462146E0 +:105C300001A800F011F8002804D0012802D1204664 +:105C4000FFF740FE012009B030BD00000000803C9D +:105C5000000080BC8FC2753DF0B593B004460D4680 +:105C600016461F460020ADF848000E900F90ADF884 +:105C70004000119042F2B7600DF14A010D910DF113 +:105C800046010C910EA90B910DF13A010A9112A94E +:105C9000099111A908910FA9079105F1EC0106914D +:105CA00005F56871059105F59361049105F5767127 +:105CB000039105F12C01029102210191D5F8D41331 +:105CC000009105F1F403B5F9FC22214605F056FCDC +:105CD000D5F8A003BDF83C100818A5F8FA00D5F8CF +:105CE000A403BDF83E100818A5F8FC00D5F8A803D9 +:105CF000BDF840100818A5F8FE00B5F9F602B0424C +:105D000006D01898A5F8F802A5F8F662012096E0EA +:105D1000BDF93A00012801D1022090E0B5F9F8025E +:105D2000012803DB401EA5F8F8027CE005F12C01F8 +:105D300005F1240006F0B9FABDF9381001290BD19C +:105D400001230022294605F5807005F0C2FF0020DE +:105D500085F8F402042072E001280BD1012300220F +:105D6000294605F5807005F0B4FF002085F8F4029F +:105D7000202064E0B5F85A03401EA5F85A0300B28B +:105D8000012850DA05F53D70059004950120039037 +:105D900000200290B5F9EC00019005F12C00009074 +:105DA00005F5807305F27E3205F26D3105F5577009 +:105DB00005F022FE10F5004F01D180203FE00128C0 +:105DC0002FDB0624B5F9F60210FB0450801D29468E +:105DD0002246ECF72DFEB5F90000E860B5F90200A7 +:105DE0002861B5F904006861B5F9F602401995F823 +:105DF000F41280F8F512B5F9F60210FB04501E30CB +:105E000005F124012246ECF713FEB5F9F60200EB8A +:105E1000400105EB810000F56B7005F568711CC948 +:105E20001CC0A5F85A7305F1EE00009040F2413312 +:105E300005F1180229460FA806F04EFA002013B00B +:105E4000F0BD002180F8F512C18000F2060041800B +:105E500081800183418381830846704770B4B0F923 +:105E6000061090F8F522664B1C78944211D1B3F9D4 +:105E700004408C420DD100F20604B3F90650B4F987 +:105E80000260B54205D1B3F90850B4F90440A54207 +:105E900007D01A70998000F206046088D880A08824 +:105EA0001881002070BC7047000034C400003444E6 +:105EB00070B52DED068B0C46002109E030F911205C +:105EC000B2F5006F03DDA2F5805220F81120491CC5 +:105ED0000329F3DB03210DE00622424B02FB0132D2 +:105EE00002EB450333F8063C22F815306D1C032DF8 +:105EF000F2DB491E012901DB0025F8E70021394BBF +:105F000004E030F8112023F81120491C0329F8DBA4 +:105F1000DFED358A9FED340A9FED338A002047F686 +:105F2000FF7517E0C95E00EE901AF8EEE00A70EE19 +:105F3000A88AB2F9021000EE901AF8EEE00A30EEEC +:105F4000800AB2F9041000EE901AF8EEE00A30EE82 +:105F5000888A401C04280EDA062202FB00F1CA18C7 +:105F6000CE5EAE42DED1B2F90260AE42DAD1B2F913 +:105F70000460AE42D6D100EE900AB8EEE0AA9FEDE2 +:105F80001B9B80EE0A0A10EE100AF2F759F853EC48 +:105F9000192BECF769FEF2F77BF8206088EE8A0A8D +:105FA00010EE100AF2F74CF8124A164BECF75CFEB2 +:105FB000F2F76EF8606088EE0A0A10EE100AF2F747 +:105FC0003FF853EC192BECF74FFEF2F761F8A060A5 +:105FD000BDEC068B70BD0000482E0120E0D50020EE +:105FE0009C2C0120382B01200000000051FA42C8EF +:105FF00079FF4F3F51FA42C8084000203B59010841 +:10600000A82C012079FF4FBF41534148494B4153D0 +:106010004549000053454330393931314E534653D9 +:106020005400000004B50B46022200A91818EEF730 +:106030005DFC01BD0A18414004D4504002D54FF028 +:106040000040704710467047421A414004D5504006 +:1060500002D54FF0004070471046704700210028DD +:1060600004D120207047091DC9B2000110F0704F03 +:10607000F9D0002803D4491CC9B24000F9E708460A +:1060800070472DE9F84304468846B8F1000F4CD01C +:10609000002C01D4A14601E0C4F10009B8F1000FC1 +:1060A00001D4454601E0C8F1000500261127280D5E +:1060B00000050ED0680C401CB9FBF0F64A46A5FB63 +:1060C0000601400C40EAC130101A814601E02D095A +:1060D0003F1F15F00F0F01D1042FF8DAB9F1000FAF +:1060E0001BD0002F19D44846FFF7B8FF874200DCC9 +:1060F000384609FA00F93F1AB9FBF5F000FA07F142 +:106100008E194FF0FF31F940C94308420DD105FB0C +:1061100010904FEA40097F1EE0E7701C400898EAA3 +:10612000040106D510F1004F02D14FF0004000E00D +:106130004042BDE8F28330B581FB00452046294648 +:106140002F2206F003F9002D0FDC00DB0DD2C04337 +:106150000DD1641E65F1000520462946000C40EA79 +:106160000140C4F3C031081830BD0028F4D04FF00E +:10617000004030BD10B50446FFF75CFF10F1004F42 +:1061800006D1012C02DB6FF0004010BD4FF0004043 +:1061900010BD70B40246D20F00D040420021030D62 +:1061A0001B0502D04FF0804303E04FF4802300E052 +:1061B0009B089842FCD30C4604E0000419464FF4B7 +:1061C0008043641C022C08DB814200D2491C002A57 +:1061D0001AD0494218E029469B08002B07D04D08E9 +:1061E0005E18B042F7D3401AC01A5919F4E7002CD0 +:1061F000E7D10B04B0F5803FDFD3401A0004A0F5CF +:10620000004003F50041DAE7084670BC7047002201 +:1062100005E040F8221000EB82031961521C036A6A +:106220009A42F6DB70472DE9F84F0C4615461E469C +:10623000376A4FF00008DDF8289099FBF7F107FB6B +:10624000119A46F82A00C34612E0A9EB0B00381851 +:1062500090FBF7F107FB110056F8201054F82B00C3 +:10626000FFF769FF4146FFF785FF80460BF1010B01 +:10627000BB45EADB012413E0A9EB0400381890FBCE +:10628000F7F107FB110006EB8000016955F82400C7 +:106290004042FFF750FF4146FFF76CFF8046641C09 +:1062A000BC42E9DB06EB8A00C0F810804046BDE83E +:1062B000F28F70B504460D012068401C2060E16833 +:1062C0002846FFF7C1FE06462068022808DB0104C5 +:1062D0003046FFF7D6FE0146E068FFF7ABFE00E070 +:1062E0002846E060206802280CDBE1682846FFF7BA +:1062F000ABFE01463046FFF71EFF0146A068FFF7E0 +:1063000099FE00E00020A0602068022805DB401E06 +:106310000104A068FFF7B5FE00E000206061FFF710 +:1063200038FF20610011206170BD002101604FF431 +:106330008051416000218160C1600161416170470D +:1063400070B504460020024620E0DFF89C1641F8B4 +:106350002020DFF8981641F82020DFF8941641F845 +:106360002020DFF8901641F82020DFF88C1641F845 +:106370002020DFF8881641F82020DFF8841641F845 +:106380002020DFF8801641F82020401C1828DCDB94 +:1063900010460EE0DFF8701641F8202001EB800176 +:1063A0008A600A618A610A628A620A638A630A648D +:1063B000401C0228EEDBDFF85456104628640646DF +:1063C00009E0002106EBC60005EB800000F59C709B +:1063D000FFF71DFF761C032EF3DB002609E00021EA +:1063E00006EBC60005EB800000F5DA70FFF70FFF43 +:1063F000761C042EF3DB4FF48030A86541F699102B +:10640000E8650020A8642846FFF78FFF0020E864B5 +:10641000286568634FF0FF30E86228630020A863B6 +:10642000E863E866A86668666864A86D2866FF2069 +:106430002867AC6701206865032068670020A862B0 +:1064400070BD2DE9FF4F8FB00024DFF8C05566E026 +:10645000012028650020E863686B052801DB002027 +:10646000E8644FF0FF30E862286300206863E86A60 +:1064700010F1010F4AD0AF6F002F44D0D5F83CE0A7 +:10648000BEF1C80F3FDAEF6C2E2F02DA2F6D002F0E +:1064900039D17044374690FBF7F706FB1708D5F85B +:1064A0004090DFF86475DFF840A55AF828A047F857 +:1064B00029A007EB8907DFF834A55AF828A0C7F808 +:1064C00008A0DFF82CA55AF828A0C7F810A0DFF81C +:1064D00024A55AF828A0C7F818A051F82810396246 +:1064E00052F82810B96253F828103963DFF81415F0 +:1064F00051F82810B963C7F840E009F10101296497 +:106500000EF10101E963686B401C68630CF1010046 +:10651000314690FBF1F106FB1100A863641C1C9846 +:10652000844280F231820F9850F8240080010F9944 +:1065300041F82400109850F824008001109941F887 +:106540002400119850F824008001119941F824008A +:10655000129850F824008201129840F82420686DA7 +:10656000002841D0686F411E69670128D6DA0F986C +:1065700050F8241047F6015081420EDB109B53F86F +:106580002430834209DB119B53F82430834204DB1F +:10659000824202DB6420E867C0E7E86F421EEA67D8 +:1065A0000128BBDAA961109850F82400E86111981D +:1065B00050F824002862129850F82400686205F10F +:1065C0009000FFF724FEE96905F1B400FFF71FFE14 +:1065D000296A05F1D800FFF71AFE696A05F1FC0087 +:1065E000FFF715FE0020686505F5D27605F5D67A29 +:1065F000A86B009005F5DA73524631460F9850F8B3 +:106600002400FFF710FEA969FFF71EFD8146A86B65 +:10661000009005F5EC7352463146109850F824006E +:10662000FFF701FEE969FFF70FFD8046A86B0090B8 +:1066300005F5FE7352463146119850F82400FFF7D5 +:10664000F2FD296AFFF700FD0746A86B009005F5EB +:10665000087352463146129850F82400FFF7E3FDC4 +:10666000696AFFF7F1FC019005F5907605F5967AD9 +:10667000A86B009005F59C7352463146A8EB0900C3 +:10668000FFF7D1FD6866A86B009005F5AE73524622 +:1066900031460198381AFFF7C6FDA86607EB0800D7 +:1066A000484401990818A96B009105F5C07352463A +:1066B0003146461000EB96708010FFF7B4FDE86697 +:1066C0001826A86A002879D105F1800A05F1880BFF +:1066D000A86B009005F190035A4651460F9850F868 +:1066E0002400FFF7A0FDA861A86B009005F1B4039A +:1066F0005A465146109850F82400FFF794FDE8617F +:10670000A86B009005F1D8035A465146119850F8ED +:106710002400FFF788FD2862A86B009005F1FC03B8 +:106720005A465146129850F82400FFF77CFD6862E3 +:10673000A86C411CA96450282ADA47F601500F9A28 +:1067400052F82420824210DB109A52F82420824210 +:106750000BDB119A52F82420824206DB129A52F87F +:106760002420824201DB481EA864A86C292803DB90 +:10677000E96E2846FFF79DFDA86B401C314690FB53 +:10678000F1F106FB1100A8634FF480302866C5E6DE +:106790000120A8624FF480212869FFF7CCFC28660D +:1067A00040F2DD51884203DB40F2DC50286605E010 +:1067B000B0F5E17F02DA4FF4E1702866E86E296EE9 +:1067C00081420CDAEA6A12F1010F08D1A86B173086 +:1067D000314690FBF1F106FB1100E86211E08842BE +:1067E0000FDAE86A10F1010F0BD0286B10F1010FDE +:1067F00007D1A86B401C314690FBF1F106FB11005C +:106800002863E86A10F1010F36D1E86C401CE86497 +:1068100005F1800A05F1880BA86B009005F1900343 +:106820005A4651460F9850F82400FFF7FCFCA86127 +:10683000A86B009005F1B4035A465146109850F8E1 +:106840002400FFF7F0FCE861A86B009005F1D80385 +:106850005A465146119850F82400FFF7E4FC28628C +:10686000A86B009005F1FC035A465146129850F867 +:106870002400FFF7D8FC6862D5F838C030469CFB8E +:10688000F0F006FB10C058496A6E41F820205749C5 +:10689000AA6E41F820205649EA6E41F82020554959 +:1068A0002A6E41F82020544941F82090534A42F87A +:1068B0002080534B43F82070524FDDF804E047F836 +:1068C00020E0E86A10F1010F3FF4D1AD2F6B17F112 +:1068D000010F3FF4CCADBC457FF4C9ADAF6F002FC5 +:1068E0003FF4B8ADD5F83CE0BEF1C80FBFF6B2AD8D +:1068F000D5F84C80B8F12E0F03DA2F6D002F7FF4FE +:10690000A9AD00EB0E09304699FBF0F006FB109A9A +:10691000D5F840B03C4F344850F82A0047F82B00D7 +:10692000CDF8009007EB8B07304850F82A00B8608C +:10693000CDF800902E4850F82A003861CDF800902C +:106940002C4850F82A00B861CDF8009051F82A0080 +:106950003862CDF8009052F82A00B862CDF8009065 +:1069600053F82A003863274850F82A00B863CEF15C +:10697000000038640BF101002864B8F12E0FFFF617 +:1069800067AD0020286565E5286C012827DBAC6F22 +:10699000210022D01C4F0E90786C0D90F86B0C905B +:1069A000786B0B90F86A0A90786A0990F8690890F9 +:1069B00078690790F868069078680590386C0490BC +:1069C000B86B0390386B0290B86A0190386A0090F7 +:1069D000BB693A69B9683868A0470020286400207C +:1069E00013B0BDE8F08F0000281D0120881D012094 +:1069F000E81D0120481E0120A81E0120081F0120BB +:106A0000681F0120C81F0120602601206C7400202F +:106A100038B50446F3F712FD90F98450002C02D1EA +:106A20004FF0FF3032BD092200212046EBF716FC63 +:106A30006D1E062D36D8DFE805F0040C131A212848 +:106A40002F00012060704FF0FF30E07001202072B5 +:106A50002CE04FF0FF30207020710120207225E0E3 +:106A60004FF0FF3060700120E07020721EE04FF0A8 +:106A7000FF30207001212171207217E00120607029 +:106A8000E0704FF0FF30207210E0012020704FF0D6 +:106A9000FF302071207209E04FF0FF306070E0702D +:106AA000207203E00120207020712072002032BD8E +:106AB0000FB42DE9FE4300A80FF248411CC91CC0C9 +:106AC00000A805F0A3FD06469DF82970DFF8C8036D +:106AD00007700069D0F85405C11705220023F2F7AA +:106AE000FBFA0522A2FB004502FB0155384600F0E7 +:106AF00040F8DFF8A803A0FB048900FB0599404695 +:106B0000494605F0DDFC4046494605F0EAFC4FF4F5 +:106B10007A01304605F07CFD4FF48031304605F0B7 +:106B200079FD05F05FFD05F062FD05F065FD05F0FE +:106B300068FD00A8FFF76CFF00A806F044F90028E4 +:106B400004D001460FF2C830EBF72CFC214689B285 +:106B5000012006F07FF90120BDE8FE035DF814FB7B +:106B600080B500F026F8C821002006F073F9012056 +:106B700002BD80B5C00710D5222200210846F1F7DA +:106B800063F8222201210020F1F75EF8222202217F +:106B90000020BDE80840F1F757B82222002108463E +:106BA000F1F752F8222201210020BDE80840F1F758 +:106BB0004BB880B5222200210120F1F745F82222AE +:106BC00001210846F1F740F8222202210120BDE808 +:106BD0000840F1F739B800002DE9F047A4B00020D3 +:106BE0000146CDE90A0120A80A460B460EC01CA8A2 +:106BF0001021EDF7B9FD18A81021EDF7B5FD13A888 +:106C00001421EDF7B1FD08A800210A4606C006A828 +:106C100006C00FA81021EDF7A7FD00200590ADF8E4 +:106C20000E008DF80C0006460CA831460A460B46AD +:106C30000EC008468DF80D00F3F700FC0490F5F740 +:106C4000AFFC0746DFF850A2DAF81000D0F8540580 +:106C5000C11705223346F2F73FFA0522A2FB004591 +:106C600002FB015503A801900DF10E00009005AB49 +:106C70000FAA06A908A805F0AEFF002842D1DAE95C +:106C80000201864AA2FB048902FB059910EB080069 +:106C900041EB0901CAE902019AF80020D20727D581 +:106CA0004FF0000816E007EB4802B2F9062000EEAC +:106CB000102AB8EEC00ADFED760A20EE200ADFEDDA +:106CC000750A20EE200A20AA02EB880282ED000A53 +:106CD00008F10108B8F1030FE5DB7A690292CDE90A +:106CE00000010FAB20AA06A908A805F005FC08E0E2 +:106CF00000220292CDE900010FAB06A908A805F019 +:106D0000FBFB761CF6B230469DF80C10002901D032 +:106D10000528A7DB042803DB0FF20020EBF742FB7A +:106D20009AF80000C00743D50AA91CA805F049FC41 +:106D30004FF0000811E01CA850F82800F1F780F986 +:106D400002460B4600205649EBF78EFFECF7B6FAE9 +:106D500018A941F8280008F10108B8F1040FEADB8E +:106D6000102218A913A8EDF7C1FD78698DF85C0011 +:106D70004C48006C00F10C04627D13A9E368C06804 +:106D80001818EDF7B3FD0120A0740AAA0DF10D014A +:106D90000CA805F022FC0C220CA904983C30EDF75D +:106DA000A5FD97ED050AB8EEC00A049880ED120A19 +:106DB0009AF80000800730D50AA91CA805F007FC46 +:106DC0004FF0000811E01CA850F82800F1F738F93E +:106DD00002460B4600203249EBF746FFECF76EFA0D +:106DE00018A941F8280008F10108B8F1040FEADBFE +:106DF000102218A913A8EDF779FD00208DF85C008A +:106E00002848C06B00F10C04627D13A9E368C068D8 +:106E10001818EDF76BFD0120A074012024B0BDE827 +:106E2000F08780B5F0F70EFF1B4908611E49C0F8D6 +:106E3000601500F260501D4941601D4981600FF2EC +:106E40001501C1600FF285010161012005F0BFFA53 +:106E5000012002BD1048006990F85105002801D1B9 +:106E60000020704705E080B5002000F006F8012002 +:106E700002BD104890F9000070470E490870704735 +:106E80000549087001460FF29C00EBF78BBA000031 +:106E90008FC2753D00008047002C012040420F004A +:106EA00080842E4108400020B16A0108616B01080E +:106EB000D96B0108C22E0120222202210020F0F706 +:106EC000C3BE222202210120F0F7BEBE18B440F258 +:106ED00021120B7812FB030301241C700B7812FBA8 +:106EE00003035C700B7812FB030322249C700B7865 +:106EF00012FB03000022C2700878401C087011BC0D +:106F0000B1E70000010000000100000001000000E6 +:106F1000444D50204946282564290000444D502006 +:106F200052464600525620666C6167202564000078 +:106F300006F0BCBD80B5F3F781FAD0F88000F8F711 +:106F4000D1FB0348007802BD01490870704700007A +:106F5000D52E012030B585B004000D0002940194B7 +:106F60000C4880680390EDF7AAFC2068009000A808 +:106F700020600098002802D0009800A941600548D0 +:106F8000806800A98160034880680574EEF7C7FB3C +:106F900005B030BD087C002038B5027EC368446966 +:106FA000E3180469A34201D304691B1B534384689B +:106FB0000D781D55491C5B1C521E002AF7D1C16873 +:106FC000491CC160012902D103F012FF0DE02548E0 +:106FD0004078F021084202D09920EDF703FC2148C7 +:106FE0004078002801D1EDF764FC31BD10B50400F4 +:106FF000207E62694243A368D35C0B70521C491C1B +:10700000401E0028F7D16069401C606121698842F8 +:1070100001D300206061E068411EE160216988427F +:1070200011D110484078F021084202D09920EDF7A4 +:10703000D9FB0C484078002801D1EDF73AFC20003C +:1070400003F0D6FE0DE007484078F021084202D058 +:107050009920EDF7C7FB03484078002801D1EDF7F0 +:1070600028FC10BD087C002000BF10B4414800215E +:1070700001800846404C0DE001EB810100EB8003EC +:107080001B19C91800230B71521C52B21146012959 +:10709000F2DB401C142801DA0022F6E710BC70472E +:1070A00000EB80003449405E704700EB80003249BD +:1070B0004018B0F90200704710B54FF0FF34014698 +:1070C0000C2903D01C2903D1002405E0012403E08E +:1070D0000FF2AC00EBF766F9204610BD38B5044658 +:1070E0000125FFF7E9FF20460C2804D01C2805D114 +:1070F00000F038F808E0FFF7B8FF05E021460FF28E +:107100009000EBF74FF90025284632BD80B50146C7 +:107110000FF28C00EBF746F94FF0FF3002BDF3B5EC +:1071200081B0144C25882E46701C152801DB0020E8 +:10713000FEBD00270DE007EB870106EB86000E4A37 +:107140008018081801AA89180522EBF771FC7F1C2A +:107150007FB2012FEFDB681C20800120FEBD0548B7 +:1071600000887047054800214180012101700846D0 +:1071700070470000AE2E0120641C01203C7B0020E3 +:107180004558205044524D4D204331202564000085 +:107190004558205044524D4D204333202564000073 +:1071A0004558205044524D4D204332202564000064 +:1071B000D2B2203A22BF00FA02F1002070475242B8 +:1071C000D041D2F1200291404140D0409040414016 +:1071D000704700000FB480B506F072FCD24805215C +:1071E000417600210176818302A91822EBF730FC59 +:1071F000092200210846F0F727FD022801D10220CC +:1072000000E0012002BC5DF814FB48E110B5C64C5B +:1072100094F9190005280AD100F0E3F8002822D0DB +:107220000420607606F04CFCBDE81040F8E004282D +:1072300019D100F0B7F8002808D0032020760520E7 +:10724000607606F03DFCBDE8104028E100F051F901 +:10725000002808D0022020760520607606F030FC59 +:10726000BDE810401BE1012010BD80B5F0F7EAFC3D +:10727000AD490862AD49C0F8781100F5BC70AC4961 +:107280004160AC4981600FF21101C1600FF29501BC +:107290000161012002BD00000020A3490246CA7618 +:1072A0000A6A92F86921002A0FD091F91820002A61 +:1072B00002D00220C876012091F91C20012A04D1B5 +:1072C000C87E40F00400C87601207047964800212F +:1072D0000176C17601770120704710B58CB0044665 +:1072E00000A808F0D5FA0198A04204D3001BC0B250 +:1072F00000EE100A04E08038001BC0B200EE100A55 +:10730000B8EE400ADDED070A20EE200A10EE100A62 +:10731000F0F796FE41EC100B0CB010BD8248012135 +:107320000177704778B4804A92F91B309C0717D5D3 +:1073300040F221140D7814FB050501262E700D78FE +:1073400014FB05056E700D7814FB05050926AE705B +:107350000D7814FB0504157EE5700C78641C0C7028 +:107360005B071DD540F221140B7814FB03030125A4 +:107370001D700B7814FB030303255D700B7814FB61 +:10738000030309259D700B7814FB03030125DD70B1 +:107390000B7814FB0300527E02710878401C0870C1 +:1073A00071BC93E730B58DB0002420468DF8000005 +:1073B00001A8F0F7A8FC4FF47A705B4D00ABE988A8 +:1073C00000FB01F2A98841436D88684301AD95EC4B +:1073D000030A06F0B7FB022800D1012420460DB0B5 +:1073E00030BD30B58DB0002420468DF8000001A8D6 +:1073F000F0F789FC4FF47A704B4D00ABE98800FB45 +:1074000001F2A98841436D88684301AD95EC030AF8 +:1074100006F098FB012800D1012420460DB030BDB4 +:1074200030B59BB001240020ADF8220001900A2065 +:107430008DF8080000208DF809008DF80A003A4DFB +:1074400095F91D00002827D1AA208DF826003C20A0 +:107450008DF8270020468DF8280000208DF80000C8 +:10746000032001900DF1090009A91822EBF7E0FAB9 +:107470000A208DF808000020ADF8220000A8F0F7DF +:10748000B7FC002801D1022406E00FA808F000FA9A +:107490001098A8762046687720461BB030BD30B5DE +:1074A00089B00124204D95F91D0001281ED100202E +:1074B000ADF8220001900A208DF8080000208DF818 +:1074C00009008DF80A0020468DF800000320019085 +:1074D0000A208DF808000020ADF8220000A8F0F77F +:1074E00087FC002800D1032400206877204609B0DB +:1074F00030BD38B52DED028B00240B4DA87EFFF773 +:10750000ECFEB0EE408AF0EE608A287AEBF7B0FC31 +:1075100002460B4651EC180BFCF740FC00D8012446 +:107520002046BDEC028B32BD347C0020D5710108B1 +:107530000B7201080D72010870B5FCF799F804464A +:10754000FBF753F90546D74EFCF772F8002801D037 +:10755000012018E096F90000A04205D20FF2C430D5 +:10756000EAF720FF01200EE0EDB2002D0AD0FCF773 +:107570008AF8FCF77DF804460FF2B430EAF712FF00 +:10758000012000E00020716891F88914002900D1E1 +:107590000020347070BD0FB410B58AB0C14C00200B +:1075A00020700FF29830EAF7FDFE606890F88814BA +:1075B000002944D190F88904002840D100208DF89A +:1075C00000001B2001900DF109000CA91822EBF717 +:1075D0002FFA0A208DF8080000A8F0F709FC00280F +:1075E00005D10FF26430EAF7DDFE022028E0022028 +:1075F0008DF832004FF49660ADF8350000208DF81C +:1076000033008DF834008DF800001A2001900DF140 +:1076100009000CA91822EBF70BFA0A208DF80800D4 +:1076200000A8F0F7E5FB002805D10FF22C30EAF7AF +:10763000B9FE022004E04FF49660FCF722F8012026 +:107640000AB010BC5DF814FB00B589B00FF2183019 +:10765000EAF7A8FE01208DF800001B2001900A2007 +:107660008DF8080000A8F0F7C3FB002801D1032023 +:1076700014E001208DF800001A2001900A208DF8F6 +:10768000080002208DF80B000020039000A8F0F7FE +:10769000AFFB002801D1032000E0012009B000BDAC +:1076A0002DE9F0472DED028B92B004460D46FBF715 +:1076B000BFFF40F22116297816FB014101220A7012 +:1076C000297816FB0141002840F09E801046487042 +:1076D000287816FB00401D218170287816FB004099 +:1076E00000214171FBF7D1FF002805D0FBF7C0FF57 +:1076F00081465FFA89F901E04FF00009287816FB0E +:10770000004080F807904FF0000868E0414600A86C +:10771000FBF7B2FF1B2010FB08F7287816FB004090 +:1077200038189DF829104FF461620DF129035B7838 +:10773000C3EB031C4FEA8C0312FB01310DF129024C +:10774000927851FA82F14FF47A72BDF92C3002FB33 +:107750000131C0F81B109FED518B287816FB0040BB +:1077600007EB000ADDE9002351EC180BEBF77CFA7C +:10777000EBF7BAFDCAF80B00287816FB004007EBC0 +:10778000000ADDE9022351EC180BEBF76DFAEBF779 +:10779000ABFDCAF80F00287816FB004007EB000A83 +:1077A00002A8D0E9022300204349EBF75DFAEBF78A +:1077B0009BFDCAF81300287816FB004038180BA967 +:1077C0004969C0F81F10287816FB004038180BA92B +:1077D000498BA0F8191008F101085FFA88F8C8452C +:1077E00094DBFBF747FF287816FB0047FBF71EF8F2 +:1077F000A7F81B01287816FB0044FBF709F8C4F82A +:107800001D01FAF7FFFF12E005204870287816FBEB +:1078100000401D218170287816FB004011464171FF +:10782000287816FB00400F218171FBF728FF28788C +:10783000401C287012B0BDEC028BBDE8F08710B57B +:1078400084B000A8FBF755F91C4C204600A90B2278 +:10785000EBF7EEF861782078FBF71CFF012004B00D +:1078600010BD80B50FF20810EAF79CFD0FF20C1066 +:10787000EAF798FDF0F7E6F90A4948600A49C0F8C6 +:10788000981400F29840094941600949816009490A +:10789000C1600B490161012002BD00000000000031 +:1078A00080842E41E82D0120977501084976010852 +:1078B0003F7801083975010800408F40FC2C0120F9 +:1078C000A176010810B5044621460FF2BC00EAF784 +:1078D00069FD2046BDE81040FBF7A2BE10B5044686 +:1078E00021460FF2B000EAF75DFD2046BDE81040EA +:1078F000FBF798BE10B5044621460FF2A400EAF744 +:1079000051FD2046BDE81040FBF790BE10B504467F +:1079100021460FF29C00EAF745FD2046BDE81040E5 +:10792000FBF782BE4C5420436D644C54530000005E +:107930004C5420436D644154440000004C542D537A +:1079400031343031313600004C54204F70656E2098 +:107950006661696C000000004C54204154204F7057 +:10796000656E206661696C004C542053544F500082 +:107970004C5420496E694C54530000004C5420492B +:1079800031343031313600004C5420536574575433 +:10799000202564004C542053657453542025640002 +:1079A0004C5420536574534152202564000000005C +:1079B0004C542053657453522025640080B50FF257 +:1079C000E810EAF7EFFC73480021418001BD0FB4D5 +:1079D00070B5704C002020709DF81250BDF81360F7 +:1079E000324629460FF2CC10EAF7DCFC26220021B1 +:1079F0000846F0F729F9022805D10FF2D410EAF76A +:107A0000D1FC02200FE0606890F8F015002909D140 +:107A100090F8F105002805D1FFF7D0FF3146284640 +:107A200008F006F8012070BC5DF814FB80B50FF279 +:107A3000B010EAF7B7FC57480021017008F02EF8A3 +:107A4000012002BD10B58EB000A800210A460B46E9 +:107A50000EC0F0F758F90398009000A8049941600F +:107A6000059981604B4C94F9001089B207F0F2FF40 +:107A700000212170042804D006280CD0072814D037 +:107A80001CE00FF26810EAF78DFC042060800120F2 +:107A900000F044F812E00FF25C10EAF783FC0620D5 +:107AA0006080012000F03AF808E00FF25410EAF785 +:107AB00079FC07206080012000F030F801200EB032 +:107AC00010BD80B50FF24810EAF76CFCF0F7BAF879 +:107AD0003049486000224A802F49C0F8001600F261 +:107AE00000602E4941602E4981600FF21101C16092 +:107AF0000FF241010161012002BD000025484068EC +:107B000090F8F015002905D190F8F105002801D171 +:107B100000207047234890F9000070472149087001 +:107B2000704780B51B48002141800846FFF7F6FFEB +:107B3000012002BD70B504460D46164E71880FF245 +:107B4000D800EAF72FFC40F22110297810FB014100 +:107B500001220A70297810FB01414A70297810FB34 +:107B6000014126228A70297810FB01407188A0F813 +:107B700003102878401C2870BDE87040D1E710B58C +:107B8000044621460FF2A000EAF70CFC01480470FD +:107B900010BD0000C82D0120CF7901082D7A010801 +:107BA000457A0108B52E012023415320494E4954FE +:107BB00000000000234153205346442053545220D8 +:107BC0003A2025642C204455203A202564000000EA +:107BD000234153204641494C2041434300000000CB +:107BE0002341532053544F500000000023415320A1 +:107BF000445400002341532041535F4E4D53000035 +:107C00002341532041535F43414E43454C00000004 +:107C1000234153204D4900002341532041504D53EF +:107C200047203A20256400002341532055535241F8 +:107C30004354203A202564000FB400B589B0DFF822 +:107C4000980701210177406A90F8601400293AD121 +:107C500090F86104002836D100208DF80000032040 +:107C600001900DF109000AA91822EAF7E1FE0A20A5 +:107C70008DF8080000A8F0F7BBF8002821D00020FC +:107C80008DF82A00ADF82D008DF82B008DF82C0012 +:107C90008DF800001A2001900DF109000AA91822A0 +:107CA000EAF7C6FE0A208DF8080000A8F0F7A0F851 +:107CB000002806D01C2200210846EFF7C5FF022845 +:107CC00001D1022000E0012009B05DF814FB00B5ED +:107CD00089B01C2200210120EFF7B6FF022801D154 +:107CE000022022E001208DF80000032001900A20EC +:107CF0008DF8080000A8F0F77BF8002801D10320D8 +:107D000013E001208DF800001A2001900A208DF860 +:107D1000080000208DF80B00039000A8F0F768F829 +:107D2000002801D1032000E0012009B000BD70B59A +:107D300086B0DFF8A846206800280DD1DFF8A066DD +:107D40003068002808D1204600F04BFE304621461E +:107D50005822EAF77DFE02E0204600F042FEDFF8FE +:107D6000846606F10C000ECE0EC00C3E02A8FAF797 +:107D7000C0FE304602A90B22EAF75AFEDFF8585639 +:107D8000707868763178307B814204D029760FF2A2 +:107D90006C60EAF707FB00A8EAF7A1FD9DF8000078 +:107DA00028739DF8010068739DF80200A873BDF860 +:107DB0000300A5F80F00DFF82866E86C2168326838 +:107DC000891A10FA81F0E86400F02AF93046214659 +:107DD0005822EAF73DFE012006B070BD10B5DFF86D +:107DE000F845EFF72FFF6062002060750120A07555 +:107DF0000320E0754FF4FA70A062DFF8EC05E06252 +:107E00004EF6602020630FF20C60EAF7CBFA0020F8 +:107E10002077E06320646064A0642083E076A06340 +:107E200058220146DFF8B805EAF718FA582200216F +:107E3000DFF8A805EAF712FAEAF733FA2062002021 +:107E4000A0760120E0770020A077606ADFF89C151B +:107E5000C0F8701400F27040DFF894154160DFF84C +:107E6000941581600FF20D01C1600FF241010161B3 +:107E7000012010BD80B5DFF86005416A91F86114FA +:107E8000002901D1002002BD90F91400012801D180 +:107E9000012001E000F09FF840B202BDDFF8380594 +:107EA00000214163017501207047000070B5DFF8C3 +:107EB000283593F91420012A2BD15A6B002A20D09F +:107EC00040F221140D7814FB050501262E700D7863 +:107ED00014FB05056E700D7814FB05051C26AE70AD +:107EE0000D7814FB05050126EE700D7814FB0505D1 +:107EF000AA800D7814FB0500C0F806300878401CF5 +:107F0000087011460FF22450EAF74CFABDE87040B1 +:107F1000C4E7DA7F012A23D140F221140A7814FB46 +:107F20000202012515700A7814FB020255700A78C6 +:107F300014FB02021C2595700A7814FB020202252C +:107F4000D5705A7F0B7814FB030082720878401CAE +:107F5000087011460FF2EC40BDE87040EAF722BA13 +:107F600070BD0146891E012903D9891E012905D941 +:107F700008E0DFF8641401224A7503E0DFF85814C2 +:107F800000224A7501460FF2D440EAF70BBADFF837 +:107F9000481400EB80028A6201460FF2D840EAF7EB +:107FA00001BA38B50446DFF8305441F2883010FB8E +:107FB00004F0E862EAF75CFF0022DFF83C34EAF7FD +:107FC00053FEEBF791F9286321460FF2BC40BDE860 +:107FD0003440EAF7E7B938B50024DFF8FC53686AA3 +:107FE00090F83814002903D190F83904002813D0F0 +:107FF0000120E877FBF750FB6877A97F002900D1C3 +:10800000A877A97F884209D00146012901D0022919 +:1080100000D10124A87701E02046E877204632BD50 +:10802000F0B583B0002500A829460A4606C0DFF84F +:10803000A843E06B10F1100F01D21430E063E07E32 +:10804000002800F0C580022801D06BD30BE1217E0F +:10805000042934D1607D002813D1606C1430606431 +:10806000E26A9042C0F0FF80E26B206B8242C0F077 +:10807000FA800125002060640FF22040EAF792F9AF +:10808000F1E010466064206A827AA37E1A430FD121 +:10809000E26B206B824204D301250FF21840EAF70D +:1080A00081F90FF22840EAF77DF90120A076DAE0A5 +:1080B000807A012840F0D7802846A076D3E00229B4 +:1080C00001D0032915D1206C1430206442F21172C2 +:1080D0009042C0F0C880E26B206B904280F0C38079 +:1080E00001250020206403460FF2F430EAF75AF924 +:1080F000B9E0012940F0B780A06C00F11403A3643B +:108100004EF661208342C0F0AE80E26B206B90425D +:1081100080F0A98001250020E0760FF2E030EAF738 +:1081200041F9A0E0217E022901D003290FD1E36C9F +:10813000A06A8342C0F09780E26B206B8242C0F05D +:10814000928001250FF2D030EAF72CF98BE0042958 +:1081500028D1606C14306064627E002A13D142F230 +:1081600011729042C0F07F80E26B206B90427AD215 +:1081700001250220E0760020606403460FF2B4304F +:10818000EAF710F96FE0E26B206B90426BD20125A9 +:108190000220E0760020606403460FF2B430EAF774 +:1081A00001F960E001295ED1A06C00F11403A36421 +:1081B0004EF66120834256D3E26B206B904252D23E +:1081C00001250020E0760FF2A430EAF7EBF84AE050 +:1081D000217E022916D1206C14302064626441F2A1 +:1081E000893290423FD3206BE26B90423BD2012018 +:1081F000E07628462064012502460FF28C30EAF72B +:10820000D1F830E0042916D1606C14306064226427 +:1082100041F28932904226D3206BE26B904222D207 +:108220000220E07628466064012502460FF2703095 +:10823000EAF7B8F817E0032915D1206C1430206450 +:10824000626441F2893290420DD3206BE26B90421E +:1082500009D20120E07628462064012502460FF26B +:108260005830EAF79FF8207F012809D100202077B5 +:1082700001252846207601460FF25430EAF792F89D +:10828000012D40F0A780257E042D36D1A06B461C21 +:10829000A663606B002809D1207B6070607BA070B2 +:1082A000A07BE070002020710520606304208DF821 +:1082B000000000A8042141708170617D012902D174 +:1082C0000121C17001E00021C170042101712670FB +:1082D000676B052200A93819ECF708FB781D60636D +:1082E000002E6DD0012020750020A063E26B29468E +:1082F0000FF2F020EAF756F862E0022D01D0032DCC +:108300002ED1A06B461CA663606B002809D1207B90 +:108310006070607BA070A07BE07000202071052061 +:10832000606302208DF8000000A802214170817076 +:10833000C17001712670676B052200A93819ECF72E +:10834000D5FA781D6063002E3AD0012020750020F8 +:10835000A063E26B29460FF2A820EAF723F82FE08A +:10836000012D2DD1A06B461CA663606B002809D19E +:10837000207B6070607BA070A07BE070002020718B +:108380000520606301208DF8000000A801214170E4 +:108390008170C17001712670676B052200A93819C0 +:1083A000ECF7A4FA781D6063002E09D00120207537 +:1083B0000020A063E26B29460FF25C20E9F7F2FF90 +:1083C0000020E06320646064A064E0640FF2642035 +:1083D000E9F7E8FFF7BD0000C0250120C423012014 +:1083E0006C230120502B012020BF0200397C0108A2 +:1083F000CF7C01082F7D01080000E03F5B41504425 +:1084000052204C545D205472616E73204D6F646530 +:10841000202564005B41504452204C545D20494E5D +:10842000495420303231372D330000005B41504435 +:1084300052204C545D2042756666657253697A65B8 +:108440003A2564005B41504452204C545D205374E3 +:108450006179496E666F3A25640000005B415044C3 +:1084600052204C545D206770732053746120256442 +:108470000000000041504452205365745F5357552B +:108480004E20256400000000415044522053657482 +:108490005F54575553202564000000005B41504451 +:1084A00052204C545D205245512D563120256420D8 +:1084B000256400005B41504452204C545D205245DD +:1084C000512D563220256420256400005B41504424 +:1084D00052204C545D2041505F4E4F54534C50003D +:1084E0005B41504452204C545D205245512D56332F +:1084F0002025642025642025640000005B41504451 +:1085000052204C545D205245512D56342025642074 +:1085100025642025640000005B41504452204C54E7 +:108520005D205245512D573120256420256420259A +:10853000640000005B41504452204C545D20524581 +:10854000512D573220256420256420256400000029 +:108550005B41504452204C545D205245512D5733BD +:108560002025642025642025640000005B415044E0 +:1085700052204C545D205245512D57342025642003 +:1085800025642025640000005B41504452204C5477 +:108590005D205245512D5331202564202564000073 +:1085A0005B41504452204C545D205245512D533272 +:1085B00020256420256400005B41504452204C5427 +:1085C0005D205245512D5333202564202564000041 +:1085D0005B41504452204C545D2041504453542C34 +:1085E000202564005B41504452204C545D20566568 +:1085F0006869636C653A20256420256400000000EA +:108600005B41504452204C545D2057616C6B3A20C2 +:1086100025642025640000005B41504452204C54E6 +:108620005D2053746174696F6E6172793A202564BC +:10863000202564005B41504452204C545D2052651B +:1086400073657400DFF8E40B417A00EB810282ED80 +:10865000090ADFF8DC2B02EB8103F0EE601AC3EDB0 +:10866000001A02EB810282ED101A827A102A01DAD6 +:10867000521C8272491C4172C9B2102901D10021D9 +:10868000417270472DE9F8432DED028B0024DFF88D +:108690009C5BA87A022801DA20466AE02646DFF8C9 +:1086A000909B01E00024761CA87A86425BDA687A07 +:1086B000002803D10F274FF00E0805E0471EB7F141 +:1086C000010801D508F1100805EB870090ED090AB3 +:1086D00005EB8800D0ED090A30EE600A10EE100AB2 +:1086E000EFF7AEFC21F00041EFF7D2FC08EE100AE4 +:1086F00009EB870090ED000A09EB8800D0ED000A35 +:1087000030EE600A10EE100AEFF79AFC21F00041FB +:10871000EFF7BEFC08EE900A09EB870090ED100A17 +:1087200009EB8800D0ED100A30EE600A10EE100A56 +:10873000EFF786FC21F00041EFF7AAFC00EE100AEB +:10874000DFEDB00AB4EE608AF1EE10FA09DAF4EE69 +:10875000608AF1EE10FA04DAB4EE600AF1EE10FA73 +:10876000A0DB641C9FE7E4B2042C01DB012000E0E5 +:108770000020BDEC028BBDE8F2832DE9F8432DED1E +:10878000068B88B0B0EE408AF0EE608AB0EE419A77 +:10879000F0EE619A0646DFF89C7A87ED000AB0EEAB +:1087A00068AA87ED01AAF0EE49AAC7ED02AA4FF028 +:1087B0000A08DFF8845AB5F90E0010FB08F0B5F985 +:1087C0001010A0EB0109314689B2384608F0DCF9F7 +:1087D000DFF8584A201D07F0DCFC207910FB08F078 +:1087E000A17900EB01081FFA88F8B8F12A0F12D11D +:1087F0000FFA89F9B9F1000F0DD5606E002807D185 +:1088000007F0E5F8012060660FF69820E9F7CAFD49 +:108810000120A06623E0606E012807D107F0E3F88D +:10882000002060660FF68820E9F7BCFDA06EB8F165 +:10883000280F0CDB002804D10C210FF68020E9F76B +:10884000B1FD0120A0660C2007F0AEF807E001287A +:1088500003D10FF67C20E9F7A5FD0020A06694ED7A +:10886000040AF0EE480AB4EE600AF1EE10FA1ED1E6 +:1088700094ED050AB4EE4A0AF1EE10FA17D194ED20 +:10888000060AB4EE6A0AF1EE10FA10D1E06E401C4E +:10889000E066152815D32069EFF7D2FB02460B4698 +:1088A0000FF63820E9F77EFD0020E06609E0B0EE23 +:1088B000480A84ED040A84ED05AAC4ED06AA002046 +:1088C000E06697EC030AFFF7BDFE207A02283DD14F +:1088D000304680B2B0EE690A08F04AFF314689B2EC +:1088E000384606F03DFB284606F0D2FF28680128EE +:1088F0000FD105F04DFC284606F0CAFF2C22294670 +:10890000DFF84809EBF7F2FF0FF6DC10E9F74AFD54 +:1089100028E0294684B068462C22EAF799F80FBC73 +:1089200000F066F900F0E6FA00281BD0A8890028BC +:1089300018D10FF6C010E9F735FD0120207206F0BE +:10894000BDFF01202080022060800BE0012809D1BA +:10895000FFF798FE002805D00FF6A010E9F722FDDA +:108960000220207200F006F8002008B0BDEC068B53 +:10897000BDE8F283DFF8B4080188002910D14188EE +:1089800000290DD1417B491C4173C9B2072923DB62 +:1089900001210180016A098C4180002141737047E7 +:1089A000016A01F12002528D002A09D0032A02D166 +:1089B0000222028001E003220280098C418070477C +:1089C0000279042A04D10421018081794180704711 +:1089D00001220280098C41807047DFF85008007A3C +:1089E0007047002805D0DFF84418096A5822EAF7D2 +:1089F0002FB87047002803D0DFF8301809680160ED +:108A0000704700000100803F10B5002814D1DFF846 +:108A10002C4800EE101AB8EE400A84ED010A2046F8 +:108A200006F062FF6068EFF70BFB02460B460FF69D +:108A3000D400E9F7B7FC24E0012814D1DFF8FC47A3 +:108A400000EE101AB8EE400A84ED000A204606F047 +:108A50004BFF2068EFF7F4FA02460B460FF6B4001E +:108A6000E9F7A0FC0DE002280BD1DFF8D047218107 +:108A7000204606F039FFB4F908100FF6A800E9F710 +:108A800091FC0FF6B000E9F78DFC42F2247001462C +:108A90000FF6B000E9F786FC40F2D670DFF88C17CD +:108AA000C88101460FF6AC00BDE81040E9F77ABC7A +:108AB0002DE9F0470746884691460FF67800E9F71A +:108AC00071FC42F2247001460FF67800E9F76AFC67 +:108AD00040F2D6700146DFF85447E1810FF674008A +:108AE000E9F760FCDFF85857582200212846E9F7DB +:108AF000B5FBDFF85067582200213046E9F7AEFB9E +:108B000058220021DFF84007E9F7A8FB2662DFF8CA +:108B10002CA7582200210AF10C00E9F79FFB0C2238 +:108B200000215046E9F79AFB2C220021DFF80807C4 +:108B3000E9F794FB2C220021DFF81007E9F78EFB00 +:108B400000EE107AB8EE400A8AED010A00EE108AB3 +:108B5000B8EE400A8AED000AAAF808904B46424651 +:108B600039460FF60400E9F71DFC05F031FA5046CE +:108B700006F0BAFE05F1200042F21071C1850186AF +:108B800000218162022028842C2229463046EBF7FE +:108B9000ADFE0120207200206072A072E06108F03A +:108BA000A5FD0020E072012020730020206160619B +:108BB000A061DFF880060021016041608160084605 +:108BC000206007F085FA201D07F0E3FA00206066B8 +:108BD000A066BDE8F08710B596B006F061FE0446C9 +:108BE00000A8FFF7FEFE0098001916B010BD0000A7 +:108BF0000FB42DE9F0412DED028B8AB0DFF84C86E1 +:108C0000D8F80400DFF83C66814206D1BDF8562052 +:108C1000B8F80E309A4200F097800C1A02D5DFF8AF +:108C2000700604199DED1C0AD8ED0A0A70EE608AE0 +:108C3000F5EE408AF1EE10FA03D59FEDAC0A78EE1E +:108C4000808A9DED1A0AD8ED080A30EE608AB5EEEA +:108C5000408AF1EE10FA03D59FEDA40A38EE008A9F +:108C6000BDF85600C0B29DED1B0A08F009FFB0EE3A +:108C7000401ADFF8B855287B012802D0022837D0E7 +:108C800047E0DFF8C475089712A983B068462C2224 +:108C9000E9F7DEFE0EBC9FED961AF0EE480AB0EE44 +:108CA000680A204600F060F8E87A2018E872C0B23E +:108CB00006282EDBDFF88805089012A983B06846E5 +:108CC0002C22E9F7C5FE0EBC9FED891AD7ED0E0ADE +:108CD00097ED090A386800F047F8E87A401CE87216 +:108CE000582200213846E9F7B9FA0220287310E02B +:108CF000DFF84C05089012A983B068462C22E9F7EA +:108D0000A7FE0EBCF0EE480AB0EE680A204600F05E +:108D10002BF8BDF85600002809D158220021DFF8B1 +:108D20002805E9F79BFA0020E872012028732C221D +:108D300012A94046EBF7DAFDDFF804152962582244 +:108D40003046EBF7D3FD2E62BDF85800318C8842D7 +:108D500003D0DFF8EC14088430840AB0BDEC028B39 +:108D6000BDE8F0015DF814FB0EB4F0B52DED048BF9 +:108D70008AB0B0EE409AB0EE608AF0EE418A1E9D55 +:108D800005F12004BDF85A60A6852946B0EE680AB0 +:108D900000F0EAF8DFF89404C06900281AD194EDD5 +:108DA000010A30EE090A84ED010A00F02DFA84ED83 +:108DB000010A6685BDF8580020851A98606194ED17 +:108DC000060A30EE080A84ED060A00F011FA84ED76 +:108DD000060A5BE0DFF8640407AA0AC80AC203684F +:108DE000136013A984B068462C22E9F731FE0FBC4A +:108DF000B0EE680A00F054F9D4ED010A30EE800AB2 +:108E000084ED010A00F000FA84ED010AF5EE408AD3 +:108E1000F1EE10FA0BDD032E03D1062060852085CC +:108E200010E0042E0ED10820608520850AE0032E74 +:108E300003D107206085208504E0042E02D109209B +:108E4000608520859DED1A0AF6EE000A20EE200AC4 +:108E500084ED050AA069EFF7F3F806460F4618EE11 +:108E6000100AEFF7EDF80022DFF8E433E9F7FCFE33 +:108E700032463B46EAF70AF8EFF70AF900EE100A25 +:108E800084ED060A00F0B4F984ED060A1C98EFF7A9 +:108E9000D7F8DFF8C023DFF8C033E9F7E5FEEFF7D6 +:108EA000F7F800EE100A84ED070ADFED7C0AB4EE55 +:108EB000600AF1EE10FA02DBDFF8D803E0611598E2 +:108EC0006062608D002801D1002060620020206275 +:108ED00018986063BDF866002086BDF85C002884A1 +:108EE0000AB0BDEC048BF0BC5DF810FB00247449A3 +:108EF0000000000080B506F005FD40F6B93188425B +:108F000001D3012002BD002002BD38B50D4605F198 +:108F10001004A18F032912D1B5EE400AF1EE10FA28 +:108F200006DD29694018286100F07AF9286131BD11 +:108F300061684018606000F073F9606031BD042919 +:108F400011D1B5EE400AF1EE10FA06DDA168401825 +:108F5000A06000F065F9A06031BDE1684018E060F4 +:108F600000F05EF9E06031BDF8B52DED028B0546ED +:108F7000B0EE408A0C4620682818206000F050F9B6 +:108F8000206018EE100AEFF75BF821F00041002294 +:108F90001346FAF703FF44D2A84EB069092831D22C +:108FA000A24FF96900292DD108281CD1E168401889 +:108FB000E06000F035F9E0602146B0EE480AB069A3 +:108FC000FFF7A3FFE0682818E06000F029F9E060EF +:108FD0002146B0EE480A2846FFF797FF00F04CF80C +:108FE0000120F8610AE0B4F84A00042803D170694E +:108FF0002818706102E0306928183061B0692818BB +:10900000B06136E0E0682818E06000F009F9E0603F +:109010002146B0EE480A2846BDEC028BBDE8F4407C +:1090200073E7B4F84A00032802D0042807D00DE003 +:1090300060682818606000F0F3F860600CE0A068D9 +:109040002818A06000F0ECF8A06005E0606828181F +:10905000606000F0E5F86060784EB069092803D2DE +:10906000002801D000F00EF800F006F86F4800214B +:10907000C161BDEC028BF1BD70480021016141610D +:10908000816170476D486E494A6803699A184A6061 +:109090008A68406980188860704700000100C841F4 +:1090A0000FB438B52DED088BB0EE408ADFED6B8A3A +:1090B0009FED6A9ADDED159A19EE900AEEF7C0FF62 +:1090C00041EC1A0B9FED66BBBDF83E00042853EC43 +:1090D0001A2B654824D16549E9F7C6FD53EC1B2BD3 +:1090E000E9F7D4FEEEF7D4FF0BEE100AB5EE408A96 +:1090F000F1EE10FA38D453EC1A2B5F485C49E9F7CB +:10910000B3FD04460D4618EE100AEEF799FF22460D +:109110002B46E9F7A9FDEEF7BBFF09EE100A23E0A5 +:109120005449E9F7A1FD53EC1B2BE9F7AFFEEEF72D +:10913000AFFF0BEE100AB5EE408AF1EE10FA13D431 +:1091400053EC1A2B4C484D49E9F78EFD04460D4669 +:1091500018EE100AEEF774FF22462B46E9F784FD5D +:10916000EEF796FF09EE100AF5EE409AF1EE10FACE +:1091700018D09DED0E0AB5EE400AF1EE10FA11D0AE +:1091800010EE100AEEF75CFF00223D4BE9F76CFD94 +:1091900002460B4600203B49E9F7ECFEEEF778FF6C +:1091A00008EE900A3BEE090A10EE100AEEF748FFAF +:1091B000354A394BE9F758FD04460D461798EEF746 +:1091C0003FFF22462B46E9F74FFD04460D4618EEB9 +:1091D000900AEEF735FF22462B46E9F745FDEEF7FC +:1091E00057FF00EE100ABDEC088B31BC5DF814FB94 +:1091F000DFED260AB4EE600AF1EE10FA03DBDFEDD4 +:10920000270A30EE200A7047DFED200AB4EE600A2C +:10921000F1EE10FA03DBDFED210A30EE200A704791 +:109220001B49884201D31E4908187047541A01206F +:10923000F4160120B42C01203C2901209C1B0120A4 +:1092400064220120BC22012014230120682901206E +:109250000000E03FB81E85EB51B8AE3F00000000B3 +:109260000000000000000C409A9999999999C93F13 +:10927000CCCCEC3F9999B93FCDCCCCCCCCCCFC3FFD +:1092800000004E400000F03F7B14AE4701247449BB +:10929000819698000000C841E17A743F002474C9A7 +:1092A000806967FF50443A204250204F4E00000032 +:1092B00050443A204250204F4646000050443A2045 +:1092C000494E545F5354455028256429000000003E +:1092D00050443A2045584954205648005044204EA6 +:1092E00041432025660000005044202D3E204F467B +:1092F000520000005044202D3E2057005044202DA5 +:109300003E20520050443A5365744865696768745A +:109310002025660050443A53657457656967687440 +:109320002025660050443A53657447656E64657243 +:10933000202564005044203A2031384645423134DB +:10934000000000005B4D5F50445D205665723A207E +:10935000256400005B5052495F50445D20566572A1 +:109360003A2025640000000050443A20256420255E +:1093700064202564000000000FB400B58FB0012008 +:109380008DF80400AA208DF802003C208DF803001F +:109390000020ADF83A000A208DF820000DF12100E0 +:1093A00000A91822E9F744FB00208DF818000320DB +:1093B000079006A8EEF71CFD01200FB05DF814FB26 +:1093C00000B589B00020ADF822000A208DF8080011 +:1093D00000208DF809008DF80A0001208DF80000AA +:1093E0000320019000A8EEF703FD012009B000BDA5 +:1093F00038B52748046B00F03BF8012814D1012050 +:109400008DF800000FF2DC00E8F7CCFF04F10C054A +:109410006A7D00A9E868E368C018EBF767FA0120E5 +:10942000A874002000F021F8012032BD80B5EEF7CD +:1094300009FC184908601849C0F8E81400F2E8402F +:1094400016494160164981600FF20D01C1600FF2AB +:109450005D010161012002BD0E48006890F8D90449 +:10946000002801D1002070470BE00E4908707047BA +:109470000C480078704780B5002000F006F8012005 +:1094800002BD094890F9000070470749087070470D +:1094900008400020642E012079930108C19301083F +:1094A000F1930108C82E0120C72E012018B440F204 +:1094B00021120B7812FB030301241C700B7812FBA2 +:1094C00003035C700B7812FB03031F249C700B7862 +:1094D00012FB03000022C2700878401C087011BC07 +:1094E000C9E7000053442D45000000000FB400B54B +:1094F0008FB001208DF80400AA208DF802003C20D6 +:109500008DF803000020ADF83A000A208DF8200005 +:109510000DF1210000A91822E9F78AFA00208DF840 +:1095200018000320079006A8EEF762FC01200FB098 +:109530005DF814FB00B589B00020ADF822000A20C8 +:109540008DF8080000208DF809008DF80A00012030 +:109550008DF800000320019000A8EEF749FC0120DF +:1095600009B000BD38B5002000902648446C00F0DA +:1095700039F8012812D1F7F725FE009004F10C0507 +:109580006A7D00A9E868E368C018EBF7AFF901202D +:10959000A874002000F023F8F7F718FE012032BD70 +:1095A00080B5EEF74FFB184908601849C0F88815D8 +:1095B00000F2885016494160164981600FF20D0192 +:1095C000C1600FF25D010161012002BD0E4800681B +:1095D00090F87905002801D1002070470BE00E4972 +:1095E000087070470C480078704780B5002000F084 +:1095F00006F8012002BD094890F9000070470749AC +:109600000870704708400020602E0120ED9401088A +:109610003595010865950108C62E0120C52E01204B +:1096200018B440F221120B7812FB030301241C70C2 +:109630000B7812FB03035C700B7812FB03032324EB +:109640009C700B7812FB03000022C2700878401C4B +:10965000087011BCC9E7000038B50446DFF8E452D1 +:109660000020286505206865002028646864A864D7 +:10967000E8649FEDB20B85ED040B85ED060B85EDDF +:10968000080B85ED0A0B85ED0C0B85ED0E0B68665E +:10969000A86605F16C00A8654FF4B6720021E8F7E2 +:1096A000DDFD0C2200212846E8F7D8FD94ED020AE2 +:1096B000B1EE401A94ED010AF1EE400A94ED000A71 +:1096C00005F1440105F1400008F0E0FC012032BD45 +:1096D0002DE9F04D2DED068B0E46DFF8687201681E +:1096E000396090ED010AB1EE400A87ED010A90ED74 +:1096F000020AB1EE400A87ED020A1E223946B86D11 +:1097000008F0C9FE796D4A1EB86D3B6D934227DAA9 +:109710001E22591C09B208F0E7FE10EE100AEEF7FF +:109720008FFCC7E90A011E22386D411C09B2B86DD1 +:1097300008F0F8FE10EE100AEEF782FCC7E90C0103 +:109740001E22386D411C09B2B86D08F009FF10EEF9 +:10975000100AEEF775FCC7E90E01386D401C72E087 +:1097600023D11E2209B208F0BFFE10EE100AEEF758 +:1097700067FCC7E90A011E22796D09B2B86D08F0CD +:10978000D1FE10EE100AEEF75BFCC7E90C011E22B9 +:10979000796D09B2B86D08F0E3FE10EE100AEEF72D +:1097A0004FFCC7E90E01786D4DE01E2209B208F0AA +:1097B0008BFEF8651E220021B86D08F085FE8046FC +:1097C000C7F86080FC6D2068EEF73AFC02460B4655 +:1097D000D7E90A01E9F788F982468B46D8F80000F4 +:1097E000EEF72EFC52465B46E9F750FBC7E90A014B +:1097F0006068EEF725FC02460B46D7E90C01E9F755 +:1098000073F982468B46D8F80400EEF719FC5246ED +:109810005B46E9F73BFBC7E90C01A068EEF710FCDB +:1098200002460B46D7E90E01E9F75EF904460D46FC +:10983000D8F80800EEF704FC22462B46E9F726FB91 +:10984000C7E90E01786DE9F709FB41EC180BD7E980 +:109850000A0153EC182BE9F78DFB41EC190B87ED4E +:10986000049BD7E90C0153EC182BE9F783FB41EC7F +:109870001A0B87ED08ABD7E90E0153EC182BE9F76B +:1098800079FB41EC100B87ED060BEEF701FC01EEC6 +:10989000100AB0EE418A51EC1A0BEEF7F9FB00EE1C +:1098A000900AB0EE481AB0EE608AF0EE418A51ECB0 +:1098B000190BEEF7EDFB00EE100AB0EE681AF0EEB1 +:1098C000480A07F14C0107F1480008F0DFFB386D4A +:1098D000401C38659FED190B87ED040B87ED080BD5 +:1098E00087ED060B396CB86C00F017F804467C66FF +:1098F000796CF86C00F011F8B86604F12801512970 +:1099000002D22830512802D30120307001E000201B +:109910003070BDEC068BBDE8F08D421AB52A04DB31 +:10992000081A00F5B470424205E012F1B40F02DAF1 +:1099300000F5B470421A10467047000000000000A5 +:109940000000000020FC002038B5DFF82C4594F81A +:109950002000012801D1002032BD204609F0A5FBDE +:10996000204608F00FFF0020E08309F0A1FBDFF89C +:109970000C55E564002060651422014604F13000B6 +:10998000E8F76CFC20220021DFF8F404E8F766FC1D +:1099900020220021DFF8EC04E8F760FC0020A0653D +:1099A000024605E0D42101FB00510A718A71401C76 +:1099B0000128F7DB0120606400F011F8DFF8C8042B +:1099C000012180F83D10084609F0EEFA0020A0645D +:1099D000207709F011FB012084F8200032BD70B41B +:1099E00001460023DFF8902411E0D42504EB830422 +:1099F000A46805FB040401262671D66D05FB03004F +:109A0000807904EB8000006A3043D0655B1CDFF88E +:109A1000780400EB4114DFF864042579AB42E4DB01 +:109A200029465177237F1376002903D0DFF850347D +:109A30005971D06470BC7047DFF83C144A6D01EB7B +:109A400082031863501C4865052803D3401E4865EF +:109A500000207047012070470020DFF81C140246E8 +:109A60008A654A6D002A0BD00B6B8B65521E4A65C6 +:109A700004E001EB8002536B1363401C0428F8DB05 +:109A8000704738B50024DFF8F053287F09F0C0FA9A +:109A900002E000F03CF8641C287E8442F9D331BD1A +:109AA00070B50C460025DFF8D063F17F4A1CF277D1 +:109AB000332901DB2946F177B17F032915DB0168E2 +:109AC00071624168B1628068F062284609F09DFACF +:109AD000307F401C3077317EC0B2884203D32846A5 +:109AE0003077FFF7CEFFFFF7B7FFB07F411CB177AC +:109AF000652801DB3220B077B06D002805D02070DA +:109B000001250A2801D10A202070284670BD2DE9C0 +:109B1000F84300200146DFF864430BE0D42202FB47 +:109B200001421379002B04D0937902EB8302126A6D +:109B30001043491C0129F1DB09F083FACE4D09F0ED +:109B4000A6FA28650020A86506463FE0D42202FB5D +:109B500006F707EB040898F80400002835D03046D3 +:109B600000F049F8D5F8509098F8060008EB80000E +:109B7000006AD9F8001008421ED098F8060008EBD9 +:109B80008000406B002806D098F8060008EB8000A3 +:109B9000406BFFF751FF98F80600401C88F806005C +:109BA00098F80510C0B2884206D3B548395940F834 +:109BB0002610002088F80600D9F84000002804D0BC +:109BC000D9F800100843C9F80000761C012EBDDB4F +:109BD000286D006809F05DFAA86C411CA964B0F515 +:109BE0007A7F01D90020A864A648A5492022BDE8B3 +:109BF000F843E8F72DBFF8B59F4C256D0021296487 +:109C0000D4219E4A01FB00208179C1EBC10200EB07 +:109C1000820600EB8107386A022846D1B06C012821 +:109C200043D1306D022808D1686B032803DAF06D48 +:109C3000401CF06501E00020F065306D042808D17B +:109C4000686B052803DAF06D401CF06501E0002028 +:109C5000F065306D082808D1686B082803DBF06DCB +:109C6000401CF06501E00020F065306D102808D13F +:109C7000686B102803DBF06D401CF06501E00020EC +:109C8000F065F06C142190FBF1F0F16D814206DA81 +:109C90002868396A88432860386A286405E000200B +:109CA000F0652868396A08432860386A012861D15C +:109CB00096F84800C0075DD5F06C41071ED594EDBD +:109CC0000B0AF9EE000AB4EE600AF1EE10FA09D5BB +:109CD00040F22310A9699131814203D3E96991319E +:109CE00081423DD20020F065F06D05283CDA2868FD +:109CF000396A88432860386A2864F1BD81070FD526 +:109D000094ED0B0AB5EE400AF1EE10FAEADDA8690F +:109D10005A30B528E6D2E8695A30B52820D3E1E7B1 +:109D2000C006E1D5E06AEEF78BF921F0004101228F +:109D3000564BFAF733F8D5D8606AEEF781F921F07F +:109D400000410022524BE9F76DF8CBD2A06AEEF742 +:109D500077F921F0004100224D4BE9F763F8C1D2B9 +:109D6000F06D401CF065BFE70020F0652868396A97 +:109D700008432860F1BD000010B43F49CA68002ABA +:109D800004D14FF48062CA600A614A6191ED040A0D +:109D9000B8EE400AD1ED0A0A20EE200ADFED350ABE +:109DA00080EE200AD1ED010AF8EE600A30EE200ABA +:109DB000BDEEC00A10EE102A91ED050AB8EE400A79 +:109DC000D1ED0B0A20EE200ADFED2A0A80EE200AF0 +:109DD000D1ED020AF8EE600A30EE200ABDEEC00AAC +:109DE00010EE103AB0F9024000EB440491ED030A82 +:109DF000B8EE400AD1ED090A20EE200ADFED1D0A77 +:109E000080EE200AD1ED000AF8EE600A30EE200A5A +:109E1000BDEEC00A10EE101AA180B0F9021000EBDE +:109E20004101CA80B0F9021000EB41010B81418869 +:109E3000491C418009B21E2901DB1D2141800120FE +:109E400010BC704710B5002006E0D4210B4A01FB7E +:109E5000002100220A71401C0128F6DB064C00207C +:109E60006064607709F0CAF80020E06584F820009B +:109E700010BD0000C3F51C41E82001203C79002002 +:109E8000742A0120942A0120DC7A0020000021405D +:109E90000000F83F10B5554C002020606060A060C5 +:109EA0002062052060620020A061E061A062E062A3 +:109EB00020636063A063E0636064A06404F14C000D +:109EC00020644FF4B6720021E8F7C8F90C22002193 +:109ED00004F10C00BDE81040E8F7C0B970B50C46BD +:109EE000424DA96C4E1CAE6400F017F8002803D058 +:109EF000686C401C686401E0002068640F2E0ADA78 +:109F0000686C0B2803DB01202070022070BD00204C +:109F10002070012070BD032070BD0021334A92EDF6 +:109F2000000AB5EE400AF1EE10FA15D1D2ED010AA1 +:109F3000F5EE400AF1EE10FA0ED1D2ED020AF5EE7E +:109F4000400AF1EE10FA07D10168116041685160D2 +:109F50008068906000207047D0ED000A30EEC00AA3 +:109F600090ED011AD2ED011A31EE611AD0ED021A0C +:109F700092ED022A71EEC21AB5EE400AF1EE10FA25 +:109F800001DAB1EE400AB5EE002AB4EE420AF1EE73 +:109F900010FA1AD5B5EE401AF1EE10FA01DAB1EE68 +:109FA000411AB5EE000AB4EE401AF1EE10FA0CD5E3 +:109FB000F5EE401AF1EE10FA01DAF1EE611AF4EE64 +:109FC000401AF1EE10FA00D50121C2ED000A4368F3 +:109FD0005360806890600846704704480021016023 +:109FE00041608160416481647047000094010120F8 +:109FF00010B500F032FB00F098FB00240DE0204685 +:10A000009FED151ADFED140A9FED130A00F0B4FE60 +:10A010002146052000F0BDFE641C1E2CEFDBDFF89E +:10A02000540D00210170016341638163C1630164C8 +:10A0300041648164052141710A210171002141704F +:10A040008170C1620A2181710021C17010BDDFF8E9 +:10A05000241DC87070470000000000002DE9F04783 +:10A060002DED048BB0EE408AF0EE608AB0EE419A9E +:10A07000DFF8244DE078012801D1002500E0052516 +:10A0800026781E2E09DA304600F076FE3146284644 +:10A0900000F07FFE701C207027E0002616E0DFF83D +:10A0A000FC1C01EB8602304692ED3D1AD2ED1F0AF0 +:10A0B00001EB860191ED010A00F05EFE3146DFF80A +:10A0C000E00C3018407800F064FE761C1D2EE6DBB4 +:10A0D0001D20B0EE491AF0EE680AB0EE480A00F012 +:10A0E0004BFE1D21284600F054FEDFF8B89C032DDE +:10A0F00008DA606B401C606348450BD3DFF8A80C9E +:10A10000606307E0206B401C2063484502D3DFF802 +:10A11000980C206300F0B2FDB0EE408A00F076FDAE +:10A12000F0EE408A00F010FBD4F830809FEDA09B49 +:10A130004046E8F79DFE53EC192BE8F795FDE9F74B +:10A14000D3F80646E76B3846E8F792FE53EC192B36 +:10A15000E8F78AFDE9F7C8F8824620790A2802D094 +:10A16000142846D05CE09FED940AB4EE408AF1EEEC +:10A1700010FA0CD5F4EE408AF1EE10FA07D5032D53 +:10A1800005DA14202071780800F0F0FB48E0781C14 +:10A19000E063484502D3DFF8100CE063042D3FDB99 +:10A1A00000F064FAE06A01283AD1B6F57A7F37D92F +:10A1B00094ED090AB5EE400AF1EE10FA01DCB1EEB9 +:10A1C000400ADFED7E0AB4EE600AF1EE10FA0DDA15 +:10A1D00094ED0A0AB5EE400AF1EE10FA01DCB1EE98 +:10A1E000400AB4EE600AF1EE10FA19DB0020E062DA +:10A1F00016E09FED710AB4EE408AF1EE10FA04DA2F +:10A20000F4EE408AF1EE10FA02DB0A20207107E03A +:10A21000A06B401CA063484502D3DFF88C0BA06301 +:10A2200000206070607902280AD0C0F05B810428A9 +:10A230001BD074D3062800F00381C0F0E68051E102 +:10A24000032D0FDA606B012802D12079A07149E15A +:10A250000A2840F047810420607100F0F5FB0020DF +:10A2600020633FE1002060633CE1E06A012832D1D5 +:10A27000207900F049F901282DD140F2E9308642D9 +:10A2800001D2002E22D1824502D2BAF1000F1DD197 +:10A2900094ED090AB5EE400AF1EE10FA01DCB1EED8 +:10A2A000400ADFED460AB4EE600AF1EE10FA10D56E +:10A2B00094ED0A0AB5EE400AF1EE10FA01DCB1EEB7 +:10A2C000400AB4EE600AF1EE10FA02D5A078607090 +:10A2D00001E00020E062E06A002814D1B6F5C87FF2 +:10A2E00001D8002E08D1A078002808D0BAF1FB0FC1 +:10A2F00005D2BAF1000F02D0A078607003E0207997 +:10A3000000F046F96070032060716078A070002052 +:10A3100020636063A063E06300F01DFBE2E0042DB6 +:10A3200017DBB8F1010F02D100F0FFF9DAE0B8F164 +:10A33000060FC0F0D7800021404600F0D3FAA07885 +:10A34000032802D10020E06262E000F0D9FCE06264 +:10A350005EE00020206320790A2853D1E06B0A28B0 +:10A36000C0F0C080002100F0BDFAA07800F0C8FC69 +:10A37000E06294ED130AB5EE400AF1EE10FA02DD48 +:10A38000F0EE400A01E0F1EE400A9FEDB71AF4EE5C +:10A39000410AF1EE10FAC0F2A580D4ED140AF5EEF0 +:10A3A000400AF1EE10FA0BDDF0EE601A0AE000BF91 +:10A3B00000000000000034409A99193F000020423C +:10A3C000F1EE601AF4EE411AF1EE10FAC0F28A8052 +:10A3D000F5EE400AF1EE10FA01DCF1EE600AB5EE9E +:10A3E000400AF1EE10FA01DCB1EE400AF4EE400A48 +:10A3F000F1EE10FA76D50520607100F096F9002094 +:10A40000A0636FE00020E0636CE0B8F1060F04D3B6 +:10A41000022060710020606364E0A06B012805D118 +:10A42000E06B00F0A3FA2079A0715BE0052859D316 +:10A43000606B052856D3062060710020206351E030 +:10A44000207914284ED1E06A01282DD140F2E9305C +:10A45000864201D2002E22D1824502D2BAF1000FEB +:10A460001DD194ED090AB5EE400AF1EE10FA01DCB7 +:10A47000B1EE400ADFEDB20AB4EE600AF1EE10FA76 +:10A4800010D594ED0A0AB5EE400AF1EE10FA01DC9F +:10A49000B1EE400AB4EE600AF1EE10FA02D5A078EF +:10A4A000607001E00020E062E06A002811D140F213 +:10A4B0009110864201D2002E04D1824505D2BAF114 +:10A4C000000F02D0A078607003E0A07900F060F87F +:10A4D0006070032060716078A0700020206360636A +:10A4E000E063A0636078012801D1012008E0022820 +:10A4F00001D1022004E0032801D1032000E0002064 +:10A50000BDEC048BBDE8F08780B52DED048B0021F8 +:10A510000A2808D1DFF85C0890ED100A90ED118A46 +:10A52000D0ED128A11E0142808D1DFF8480890ED28 +:10A53000150A90ED168AD0ED178A06E09FED810A84 +:10A540009FED808ADFED7F8A032103291CDA9FEDCE +:10A55000D59A00F035FCB4EE490AF1EE10FA11D5A7 +:10A56000B0EE480A00F02CFCB4EE490AF1EE10FA05 +:10A5700008D5B0EE680A00F023FCB4EE490AF1EE0B +:10A5800010FA01D4012000E00020BDEC048B02BDD4 +:10A5900000210A280AD1DFF8DC07D0ED100A90ED7F +:10A5A000111AD0ED121A9FED670A13E014280AD190 +:10A5B000DFF8C007D0ED150A90ED161AD0ED171A86 +:10A5C0009FEDC50A06E0DFED5F0A9FED5E1ADFED45 +:10A5D0005D1A032103293EDAB4EE600AF1EE10FAA7 +:10A5E0000BD59FEDBE2AB4EE421AF1EE10FA04D557 +:10A5F000F4EE421AF1EE10FA2AD4B4EE600AF1EE4B +:10A6000010FA0BD59FEDB62AB4EE421AF1EE10FA0D +:10A6100004DBF4EE421AF1EE10FA0BDAB4EE600A43 +:10A62000F1EE10FA08D59FEDCF1AF4EE411AF1EED3 +:10A6300010FA01DB01210EE0B4EE600AF1EE10FA2F +:10A6400008D59FEDC90AF4EE401AF1EE10FA01D5D3 +:10A65000022100E0032108467047DFF818070021B7 +:10A660008160C160016170470100C03F10B52DEDF0 +:10A67000068BDFF8004794ED050AB5EE400AF1EECF +:10A6800010FA13D194ED060AB5EE400AF1EE10FA75 +:10A690000CD194ED070AB5EE400AF1EE10FA05D19F +:10A6A000A0686061E068A0612069E06194ED028AC1 +:10A6B00094ED050A38EE400A00F0F6F8F0EE408A14 +:10A6C00094ED039A94ED060A39EE400A00F0ECF896 +:10A6D000F0EE409A94ED04AA94ED070A3AEE400A8F +:10A6E00000F0E2F8F0EE40AA94ED080A30EE280AF5 +:10A6F00000F0DAF884ED080A94ED090A30EE290A30 +:10A7000000F0D2F884ED090A94ED0A0A30EE2A0A24 +:10A7100000F0CAF884ED0A0A84ED058A84ED069AF1 +:10A7200084ED07AABDEC068B10BDDFF848060021BA +:10A7300001624162816241618161C16170470000D3 +:10A740000000204200000000F8B52DED048B84B01D +:10A750001D2100A800F000FB9DED000AB5EE400AA7 +:10A76000F1EE10FA01DCB1EE400ADFEDAF0AB4EE13 +:10A77000600AF1EE10FA01D50020009000AE96EDCF +:10A78000010AB5EE400AF1EE10FA01DCB1EE400A22 +:10A79000B4EE600AF1EE10FA01D50020706096ED7B +:10A7A000020AB5EE400AF1EE10FA01DCB1EE400A01 +:10A7B000B4EE600AF1EE10FA01D50020B0609FED12 +:10A7C0009B8B9FED9C9BDFF8D075B868EDF738FC4C +:10A7D00004460D460098EDF733FC53EC192BE8F7CF +:10A7E00043FA0022DFF8D435E8F7C4FB53EC182B0A +:10A7F000E8F73AFA22462B46E8F748FBEDF748FC23 +:10A8000000EE100A87ED020A00F04EF887ED020A0A +:10A81000F868EDF715FC04460D467068EDF710FC7E +:10A8200053EC192BE8F720FA0022DFF89035E8F70F +:10A83000A1FB53EC182BE8F717FA22462B46E8F752 +:10A8400025FBEDF725FC00EE100A87ED030A00F06A +:10A850002BF887ED030A3869EDF7F2FB04460D4645 +:10A86000B068EDF7EDFB53EC192BE8F7FDF900228A +:10A87000DFF84835E8F77EFB53EC182BE8F7F4F9DE +:10A8800022462B46E8F702FBEDF702FC00EE100A29 +:10A8900087ED040A00F008F887ED040A04B0BDEC67 +:10A8A000048BF1BD9A99993EDFED640AB4EE600A1B +:10A8B000F1EE10FA04DBDFED620A30EE200A704799 +:10A8C000DFED600AB4EE600AF1EE10FA03D5DFEDB9 +:10A8D000CD0A30EE200A70479A9999BECCCCCCBDF7 +:10A8E000CDCCCC3D10B49FEDC80ADFEDC70A1F28C0 +:10A8F00001D31E2000E0C0B20022DFF8A0440EE029 +:10A90000C2F11D03DBB204EB830393ED1E1A30EE9C +:10A91000010A93ED3C1A70EE810A521CD2B28242B7 +:10A9200009DA002902D1C2F11D03EBE70129E7D1C1 +:10A93000C2F11803E6E701EE100AB8EE411ADFF89B +:10A94000580480EE010A80ED130A80EE810A80ED42 +:10A95000140A10BC7047DFF840040021416581658E +:10A96000C1657047CDCCCC3ECCCCCCBE30B49FEDD5 +:10A97000A60ADFEDA50A9FEDA41A1F2801D31D200A +:10A9800001E0401EC0B200210DE030EE210A02EBD2 +:10A990008302D2ED1E1A70EEA10AD2ED3C1A31EEFE +:10A9A000211A491C89B2DFF8CC4381422ADA227885 +:10A9B0001E2A03DA521A531EDBB202E0C1F11D0354 +:10A9C000DBB2DFF8D82352F8235001EE905A02EBA5 +:10A9D000830555F8045C02EE105A71EEC22A9FED11 +:10A9E000C73AF4EE432AF1EE10FACEDBF5EE401A48 +:10A9F000F1EE10FAC9DDB5EE402AF1EE10FAC4D539 +:10AA00000B29C2DB01EE901AF8EE611A80EE210AE2 +:10AA100084ED150A80EEA10A84ED160A81EE210A62 +:10AA200084ED170A30BC70470BD7233DF8C1631A79 +:10AA3000DCA54C400000000000003440010034431D +:10AA40000000B4C3000034C3F0B4DFEDC92AB0EE97 +:10AA5000620AB0EE622ADFED6C0A9FED6B1ADFED41 +:10AA60006A1ACD4801781E2900DB1E21026B914233 +:10AA700004D201EBD1725210D2B201E05208D2B22C +:10AA800000230DE0B1EE633AB4EE443AF1EE10FA71 +:10AA900005DB71EEA31AB7EE003A32EE032A5B1C17 +:10AAA000DBB2934280F29F80CC1A641EE4B225464A +:10AAB0006E1EF6B2B94D55F8267003EE107A05EB0E +:10AAC0008407D7ED003A05EB860797ED004A73EE51 +:10AAD000C43AF5EE403AF1EE10FA05EB8407D7EDF3 +:10AAE000003A02DD33EEC33A01E033EE633A05EBA0 +:10AAF0008606D6ED1E3A97ED1E4AD6ED1E4A34EE76 +:10AB0000644AB5EE404AF1EE10FA97ED1E4A02DDB6 +:10AB100074EE633A01E073EEC43A06F1780C9CEDF2 +:10AB20001E4A07F17806D6ED1E4A9CED1E5A74EEB9 +:10AB3000C54AF5EE404AF1EE10FAD6ED1E4A02DDA6 +:10AB400034EEC44A01E034EE644ADFED984AB4EED4 +:10AB5000643AF1EE10FA09DBF4EE643AF1EE10FA21 +:10AB600004DBB4EE644AF1EE10FA3CDA55F8244006 +:10AB700003EE104AB5EE403AF1EE10FA02DDF0EEC7 +:10AB8000433A01E0F1EE433A9FED894AF4EE443A4C +:10AB9000F1EE10FA05DB70EE830AB7EE003A30EE04 +:10ABA000030A97ED1E3AB5EE403AF1EE10FA02DDD7 +:10ABB000F0EE433A01E0F1EE433AF4EE443AF1EEBE +:10ABC00010FA05DB31EE031AB7EE003A72EE832A73 +:10ABD000D6ED1E3AF5EE403AF1EE10FA7FF752AF9D +:10ABE000B0EE633A50E780EE800A80ED100A81EE05 +:10ABF000220A80ED110A81EE820A80ED120AF0BC71 +:10AC0000704700000000B4430000000010B52DEDB7 +:10AC1000028B9FED688A002426E0C4F11D00C0B2BB +:10AC20005E4901EB800202F1780393ED1E0AD2ED3A +:10AC30001E0A51F8200001EE100A21EE011A00EE62 +:10AC4000A01A00EE001A11EE100AEDF7F9F941EC26 +:10AC5000100BE8F7B3FA51EC100BEDF719FA00EE10 +:10AC6000100A38EE008A641C062CD6DBB1EE080A06 +:10AC700088EE000ABDEC028B10BD000010B52DED72 +:10AC8000028B9FED4C8ADFED4B8A002428E0C4F153 +:10AC90001D00C0B2414901EB800202F1780393ED3F +:10ACA0001E0AD2ED1E0A51F8200001EE100A21EE14 +:10ACB000011A00EEA01A00EE001A11EE100AEDF7CC +:10ACC000BFF941EC100BE8F779FA51EC100BEDF7F6 +:10ACD000DFF900EE100A38EE008A40EE008A641CAC +:10ACE000062CD4DBB1EE080AC8EE000A88EE800A12 +:10ACF00000EEE00ABDEC028B10BD00009A99993E6F +:10AD00000121022812D19FED2C0A2348D0ED130A0D +:10AD1000F4EE400AF1EE10FA1CDBD0ED140AF4EE6A +:10AD2000400AF1EE10FA15DB002113E0012811D1E1 +:10AD3000194890ED130AFEEE000AB4EE600AF1EE37 +:10AD400010FA07D590ED140AB4EE600AF1EE10FA8D +:10AD500000D5002108467047104A52F821300360A0 +:10AD600002EB81018A6F4260D1F8F0108160704778 +:10AD7000BD37863528200120C0B2084901EB80028A +:10AD800082ED000A01EB8000C0ED1E0A80ED3C1A46 +:10AD90007047034A88547047282001206C0801201E +:10ADA000542A012041420F0040420F000100A04000 +:10ADB000CDCC4C3D000000000100003F00408F4022 +:10ADC000B5EE400AF1EE10FA03D5FFEE000A20EED0 +:10ADD000200A704704490968002900D10349034A41 +:10ADE000801A411808007047982E0120004000206A +:10ADF00010B5040003E02068C068EAF7F6FBE9F745 +:10AE00005EFD20680028F6D107484078F02108420E +:10AE100002D09920E9F7E6FC03484078002801D1E8 +:10AE2000E9F747FD10BD00BF087C0020012008F0B5 +:10AE300057B900000749086808B100207047064864 +:10AE4000C008C00008600549C908C900091A0160A6 +:10AE5000704700BFA82E01200720002000400020DE +:10AE600070B504460025DFF80867062015FB004092 +:10AE700000F080FB6D1C202DF7DB70BD00B9704722 +:10AE80002DE9F0434379027DDB43D243DBB243EA51 +:10AE900002220A80437C427DDB43121DDBB243EA7F +:10AEA00002224A80C47C437A6634373BE4B244EAE7 +:10AEB00003238B80057B4478263D523CEDB245EA66 +:10AEC0000424CC800678057A203E6A35F6B246EA3C +:10AED00005250D81877D8679FF43F643FFB247EA5A +:10AEE00006264E8190F804C0877BACF1310CFF43FD +:10AEF0005FFA8CFC4CEA07278F8190F812E090F8FB +:10AF000010C0AEF17F0E6FEA0C0C5FFA8EFE4EEAB7 +:10AF10000C2CA1F80EC090F80B8090F818E0A8F166 +:10AF200055080EF1370E5FFA88F848EA0E2EA1F8A0 +:10AF300010E0098890F81A8090F817905118591865 +:10AF4000611869187118791861446FEA0909714428 +:10AF50005FFA89F3C9B26FEA08088B420FD1807893 +:10AF60000CEB070146307144C0B2C9B2884206D129 +:10AF7000A81860445FFA88F1C0B2814201D0002075 +:10AF800000E00120BDE8F083F0B588B0002200ABFE +:10AF9000002423F8124003234FF480449C4051F8CE +:10AFA000225001269E406742AF4207DB641941F8F8 +:10AFB000224000AC34F91240A41B09E0A5420ADB90 +:10AFC0002C1B41F8224000AC34F9124006FA84F4FC +:10AFD00000AD25F812405B1EDED500AB33F9123010 +:10AFE000DB1D9BB20F2B01D3002043E0521C032A30 +:10AFF000CDDB002202AB002443F8224005AB43F82E +:10B0000022400023062404FB020434F9135051F8B3 +:10B01000236002AC00AF54F8224006FB054402AEA8 +:10B02000AD0346F8224005AE37F9137056F822609A +:10B030002D1107FB056505AE5B1C46F82250032B5E +:10B04000E0DBC4F3C00303EB241302ACEB1844F8B9 +:10B05000223002AB53F82230C3F3402404EBA32385 +:10B0600002AC44F82230521C032AC3DB02A81CC8DD +:10B070001CC1012008B0F0BD2DE9F14F80B20B4694 +:10B08000212819D2BDF9000000250121A9408842DC +:10B0900005D06D1C062DF8DBBDF9000060B9B3F9D1 +:10B0A000000047F6FF7840451FBFB3F90200404556 +:10B0B000B3F90400404501D1002040E000244FF0E6 +:10B0C000000C27460126254606E081468E46CC44E4 +:10B0D0007444DA4657446D1CBDF90000854226DAF7 +:10B0E00036B2B54208BF76004DB933F90590B3F9D1 +:10B0F00002E0B3F904A0CC4674465746EBE70620BD +:10B1000000FB05F1C85E40451EBF01EB030BBBF918 +:10B11000021041451CBFBBF904B0C345D5D1CC4496 +:10B120007444D7E74FEA6C0C64107F10761036B287 +:10B13000022EF7DAA2F800C0548097800120BDE803 +:10B14000F28F30B5B0F90440B0F90250240485B054 +:10B15000240A14FA85F4ADF80040B0F90840B0F9BB +:10B1600006502404240A14FA85F4ADF80240B0F91C +:10B170000C40B0F90A002404240A14FA80F0ADF857 +:10B1800004000020188000AC31F8103034F9104071 +:10B19000803313FB04F302AC03EB830344F8203049 +:10B1A0001B1242F82030401C0328ECDB05B030BDF8 +:10B1B00030B5B0F90440B0F90250240485B0240A37 +:10B1C00014FA85F4ADF80040B0F90840B0F9065023 +:10B1D0002404240A14FA85F4ADF80240B0F90C40B6 +:10B1E000B0F90A002404240A14FA80F0ADF804002F +:10B1F0000020188000AC31F8103034F91040803352 +:10B2000013FB04F30A24634302AC44F820301B12FE +:10B2100042F82030401C0328ECDB05B030BD70B58F +:10B22000B0F90450B0F902602D0485B02D0A15FA6A +:10B2300086F5ADF80050B0F90850B0F90660099CE9 +:10B240002D042D0A15FA86F5ADF80250B0F90C5010 +:10B25000B0F90A002D042D0A15FA80F0ADF80400AB +:10B260000020208000AD31F8104035F910508034B6 +:10B2700014FB05F40A256C4302AD002A45F8204072 +:10B2800014BFA412241243F82040401C0328E9DB19 +:10B2900005B070BD30B5B0F90440B0F902502404D7 +:10B2A00085B0240A14FA85F4ADF80040B0F90840DE +:10B2B000B0F906502404240A14FA85F4ADF80240CB +:10B2C000B0F90C40B0F90A502404240A14FA85F4A9 +:10B2D000ADF80440B0F90E0000EB8000C0F55C70E2 +:10B2E000C0101880002000AC31F8103034F9104044 +:10B2F000803313FB04F30A24634302AC44F8203088 +:10B300009B1242F82030401C0328ECDB05B030BD16 +:10B3100030B5B0F90440B0F90250240485B0240AD5 +:10B3200014FA85F4ADF80040B0F90840B0F90650C1 +:10B330002404240A14FA85F4ADF80240B0F90C4054 +:10B34000B0F90A002404240A14FA80F0ADF80400CD +:10B350000020188011F8103000AC03F03F035B00B0 +:10B3600034F9104003F5807313FB04F30A2463439C +:10B3700002AC44F820301B1242F82030401C032855 +:10B38000E8DB05B030BD30B586B004460D4600A8F8 +:10B390000FF2D8311822E7F75BFB012CB8BF01246C +:10B3A00002DB042CA8BF032400A901EBC40128463A +:10B3B00008390822E7F73CFB06B030BDF0B580B293 +:10B3C00085B00C4615461E46042828BF002080F094 +:10B3D000AE8000B2002807D0002147F6FF7304EBCF +:10B3E0004102B2F906209A4200F0A080491C0329CC +:10B3F000F5DB03A9FFF7C7FF01276FF0050017FB77 +:10B40000006101F130002A310622E7F711FB7F1CB1 +:10B41000082FF2DB0020002135F9112034F911301A +:10B420009A42B4BF4FF0FF32012226F8112004EBFC +:10B43000410335F91120B3F9063000AFD31A47F8AC +:10B44000213044BF5B4247F8213000AB53F8213034 +:10B4500003EB430347F82130C3F3400707EBA30393 +:10B4600000AF47F8213000AB53F821309842B8BF05 +:10B47000184634F91130D21A00AB43F8212044BFEA +:10B48000524243F8212000AA52F821209042B8BF2E +:10B490001046491C0329BFDBBDF90C10401ABDF84A +:10B4A0000E1040FA01F1081848BF002004D4B0F58E +:10B4B000A07FC8BF4FF4A07000EB400101EB00116A +:10B4C00001EB4010C011401C00210022002706EBB8 +:10B4D000410C062317FB03C37F1CB3F9003002FAAB +:10B4E00083F2082FF5DB13B2002B48BF5242BDF99F +:10B4F00012705210012302FA87F203FA02F2BDF829 +:10B5000010309A1812B28242B8BF024600AF57F804 +:10B51000217034F911307A4336F91170D2117A431F +:10B52000D21825F81120491C0329CEDB012005B0D3 +:10B53000F0BD70B50C461546FFF792FC2046FFF7AC +:10B540008FFC0B4E284600F015F8A81D00F012F8ED +:10B55000002000230021062202FB004222F81130C5 +:10B56000491C0329F7DB401C0828F3DB70BD0000F1 +:10B57000300F030831460622E7F75ABA2DE9F04F9B +:10B58000814695B208462DB28FB01946212D2DD295 +:10B5900042F20F3842F2033A42F20C3EC14518BF64 +:10B5A000F14505D0D1451CBF42F2B66291450DD19F +:10B5B000B0F90030B0F90E2000260124B440A542B5 +:10B5C00016D0761C062EF8DB95B10FE042F2B86279 +:10B5D00091451FBF40F6BB32914542F2B76291459B +:10B5E00004D1B0F90030B0F91020E5E70020BAE04E +:10B5F0001E9E1E96012434800024249E24963480AE +:10B600000026DDF884C04FF0000BACF800609B070B +:10B61000229C2680239F3E80259EA6F800B044BF32 +:10B620000123ACF80030530744BF012323801307E4 +:10B6300002D50120388007E0B4F90030012B1CBF8F +:10B64000B7F90030012B01D101208CE0209BC145CE +:10B6500003D103AAFFF775FD25E0F14503D103AA45 +:10B66000FFF7A6FD1FE0D1451CBF42F2B664A1451D +:10B6700006D1009303AB02F01002FFF7D0FD12E0F9 +:10B6800042F2B86291451CBF40F6BB32914503D1EE +:10B6900003AAFFF7FFFD06E042F2B762914504BF3F +:10B6A00003AAFFF735FE189809A9FFF7E7FB3080DA +:10B6B000012805D103A909A8FFF766FC002852D08C +:10B6C000DDF874A0002603A806A950F8260041F86A +:10B6D00026005AF82610401A03A941F8260000F562 +:10B6E000EA402F304EF65F21884202D32498012190 +:10B6F0000180761C032EE6DB24981A9CB0F900002A +:10B70000012809D12046FFF7ABFB06A80EC8AAE81E +:10B710000E000020019006E00398ADF804000498A4 +:10B72000ADF806000598ADF8080023461E982021C4 +:10B73000B0F9002001A807F0DDFC1B9C1C9BBDF9A3 +:10B74000640001AA2146FFF739FE60B11E98234626 +:10B75000B0F90020202101A807F0CCFC1F9A214657 +:10B760002846FFF789FC0FB0BDE8F08F28000000E5 +:10B770000000030050000000000002005000010023 +:10B78000FEFF02002DE9F04F93B004460D469046AF +:10B790000FA80FF6A4110B22E7F75AF90BA80FF622 +:10B7A000A4110E22E7F754F908A80FF6A8110B22EE +:10B7B000E7F74EF904A80FF6A8110E22E7F748F9AB +:10B7C0000020ADF802000120ADF800004FF008099C +:10B7D00000F0EFF8B9F10109FAD100260DF13C09AA +:10B7E00016F8097057B100F0E4F8BDF80000381AF7 +:10B7F000543006F80900761C102EF1DB102E04DA06 +:10B8000000F0D7F8701C06B2F8E700270BAE17F867 +:10B8100006A0BAF1000F0AD000F0CBF8BDF8000086 +:10B82000AAEB00002A38B8557F1C102FEFDB102F31 +:10B8300000A804DA00F0BFF8781C07B2F7E700F0C0 +:10B84000BAF8BDF8001043F2EF20401AADF80E0030 +:10B8500000F0AFF8BDF80010DFF80405401AADF8AD +:10B860000C0000F0A6F8BDF80010DFF8F804401A4C +:10B87000ADF80A0000F09DF8BDF80000C0F57F5754 +:10B8800000F097F8BDF80010DFF8DC04401AADF8BE +:10B89000080000F08EF8BDF8001042F21F50A0EB37 +:10B8A000010A00F086F8BDF8001040F64120A0EB38 +:10B8B000010B00F07EF8BDF8001042F65F70401AF0 +:10B8C000002111F80920002A04BF0B5D002B05D0D0 +:10B8D0000B5D934266D1491C1029F2DB102902D17D +:10B8E000217C00295ED100218A5D002A04BF4B5DC6 +:10B8F000002B05D04B5D934254D1491C1029F3DB3A +:10B90000102902D1297C00294CD1002108AA8A5C87 +:10B91000002A04BF0B5D002B05D00B5D934241D183 +:10B92000491C1029F2DB102902D1217C002939D1D0 +:10B93000002104AA8A5C002A04BF4B5D002B05D0BD +:10B940004B5D93422ED1491C1029F2DB102901D105 +:10B95000297C39BBB8F90010BDF90E20914202BF15 +:10B96000B8F90210BDF90C2091421BD1B8F90410AE +:10B97000BDF90A209142A4BF3AB28A4212DBB8F95B +:10B980000610BDF908209142A4BF0FFA8AF28A423C +:10B9900008DBB8F908100FFA8BF29142A4BF00B28D +:10B9A000884202DADFF8C40300E0012013B0BDE8EA +:10B9B000F08F00A8FFE7B0F902108180B0F90020F5 +:10B9C000428051180180704770B50546049C059867 +:10B9D0002960C5F88C211E460246012321462846CF +:10B9E00000F077F90020A5F88801A5F88A61A5F88C +:10B9F000F001A5F8F20170BD2DE9F04FD5B0054674 +:10BA00000E4617461C462AA80FF26471A822E7F7D3 +:10BA10001FF815A80FF600015422E7F719F80EA831 +:10BA20000FF648011C22E7F713F8DFF840833A4687 +:10BA300031462846FFF7A6FE404508BF404615D0D0 +:10BA4000BDF97C01411E89B220293EBFB4F98A119B +:10BA500089B2022909D2B4F9841189B211293EBFF1 +:10BA6000B4F9861189B2032901D300202EE1002107 +:10BA7000ADF818100591461E5E985E9000256098FE +:10BA8000ADF8800136B26198ADF884014FF0060B35 +:10BA90006298629034E00BFB0142491CB2F92431F8 +:10BAA00002F592729844B2F90230B2F90420994436 +:10BAB0009244B7F916209142EDDB629A00FB08F13F +:10BAC000C913118000FB09F1629AC913518000FB70 +:10BAD0000AF06299C0138880B4F98401B7F9141090 +:10BAE00088420BDBB4F98601022807DA0020A4F8AB +:10BAF0008401B4F88601401CA4F88601761E36B293 +:10BB0000002E00F1D980B4F986012368B4F98A11B6 +:10BB10001C2212FB00F2002B03BF54232AAF13FB9D +:10BB2000017353F8213002EB0308BDF98021B8F905 +:10BB30000070B8F9049002B90021BDF9842102B95E +:10BB40000020D4F88C311C2212FB00F2002B07A835 +:10BB500003BF54230DF1540C13FB01C153F8211002 +:10BB600051181C22E6F764FF5E98ADF81C70ADF822 +:10BB700020901BFB06090020039004A8029004F506 +:10BB8000F870019005A8009004F5C873221D07A95C +:10BB9000484600F0F3F801281DD1B4F98A010128C4 +:10BBA0000ADAB8F91810002906D4B4F9F0218A424B +:10BBB000A4BF401CA4F88A01B4F98A0101280ADB59 +:10BBC000B8F91A10002906D4B4F9F0219142A4BFA3 +:10BBD000401EA4F88A01B4F98611B4F98A012368D9 +:10BBE0001C2212FB01F25BB9B4F98431002B04BFB3 +:10BBF00000290EAF07D054212AAB11FB003001E021 +:10BC000053F820001718BDF9100001280FD1039038 +:10BC100004A8029004F5C470019005A8009004F1F6 +:10BC2000C403221D3946484600F0A8F801287FF4D5 +:10BC300065AFB4F984016D1C1028B4BF401C1020FE +:10BC4000A4F8840104F592730122102105A807F0DD +:10BC500051FAB4F984010228A4BFB7F916100229D9 +:10BC600005DA629805A90622E6F7E2FE34E74FF00E +:10BC7000000AD146C846884219DA0146012007F079 +:10BC8000B1FA0021B4F984219142BFF616AF1BFB33 +:10BC90000142491CB2F9243102F592729844B2F97A +:10BCA0000230B2F904209944924409B2EAE7012033 +:10BCB00007F098FA0021FCE6B4F984010028B4F8F2 +:10BCC000860118BF401C6399087028B255B0BDE8C2 +:10BCD000F08F2DE9F84F82468B4616463BB30AF1AA +:10BCE000C4070AF1040400254FF00608DFF880902D +:10BCF00015FB084000F03EF86D1C202DF8DB0024F9 +:10BD000014FB087000F036F8641C102CF8DB0027D8 +:10BD100008FB07A404F5927000F02CF804F5C87035 +:10BD200049464246E6F784FE7F1C102FF0DB0AF5F9 +:10BD3000C277012E03DA0020AAF884010DE0012069 +:10BD4000AAF884010AF5927301221021584607F0DF +:10BD5000D1F9042EB4BF701E02207880BDE8F18FA7 +:10BD6000ED9EFFFFDEA5FFFF60E5FFFF0080FFFF08 +:10BD7000300F030849460622E6F75ABE2DE9F04384 +:10BD800016460FF2045204468846D2E9000191B0EB +:10BD90009946CDE90001B8F90000012845DB1A9D5C +:10BDA00000202880BDF96C7097B93088218800F098 +:10BDB00087F8ADF800007088618800F081F8ADF870 +:10BDC0000200B088A18800F07BF8ADF8040001E023 +:10BDD000012F16D0B8F90400BDF900108142A1BFAF +:10BDE000BDF902108142BDF90410814263DB47B9FD +:10BDF000B8F9001033460122204607F07BF90120F4 +:10BE000028800620B8F9001011FB006047F6FF7289 +:10BE100030F9063C934202BF801FB0F902309342D2 +:10BE200004BFB0F90400904201D1002045E006A80B +:10BE3000019004A8009008AB0AAA304607F081F9E7 +:10BE4000B8F900104FF0FF3304AA304600F05CF957 +:10BE5000199D189C03A8019000950CABB8F900102F +:10BE60002246304600F030F80746012304AA01219B +:10BE7000204600F049F9B8F902104B46012220464D +:10BE800007F038F90FB900240DE0BDF90C0002905D +:10BE90000CABB5F900000190009742464946304688 +:10BEA00000F064F80446B8F90010012304AA3046F3 +:10BEB00000F02AF900E00024204611B0BDE8F0832C +:10BEC000401A00B207F0C8B92DE9F04190B016460B +:10BED0001D46179F0446884608AB2A4607F0E8F936 +:10BEE0000021062300224B4303EB050C0DF1280E25 +:10BEF0003CF812C09E442EF812C0521C032AF3DBF9 +:10BF0000491C0329EDDB169D042827D104AB06AAA2 +:10BF100003210AA807F01BFC08B302A8019008A897 +:10BF2000009004AB06AA03210AA807F061FCBDF942 +:10BF300008008010308002A80423B0F90210891094 +:10BF400071803246B0F904008010B08001970095EE +:10BF50004146204600F074F8042004E00020B08040 +:10BF600070803080288010B0BDE8F081F0B58FB0CF +:10BF70000446084615461499BDF958201E46042962 +:10BF80005BD1BDF95410B5F910308B42BCBFB5F987 +:10BF90000E309942BFBFD202B5F9123013FB01F146 +:10BFA0008A424ADA05A9019107A9009109ABB5F9BE +:10BFB00002100BAA07F0C5F8B5F90A00BDF9141074 +:10BFC0008142BFBFBDF916108142BDF918108142F0 +:10BFD00033DA03A8019007A8009009ABB5F9001067 +:10BFE0000BAA204607F0ADF8BDF90E10BDF90C20E4 +:10BFF000BDF91000B5F90630BDF90C7001FA82F2F6 +:10C0000002FA80F2BB42BCBF8B42834215DAB5F91B +:10C010000800824211DB02A800900DABB5F90010B8 +:10C020003246204607F07EFA38B1B5F90C00BDF96A +:10C0300008108842B8BF012000DB00200FB0F0BD1F +:10C040002DE9F84F0B9F04468B461646042B3AD138 +:10C05000E05EF15EB6F90220B6F90030401AB4F99C +:10C060000210891AB4F90020D21A494302FB0211C6 +:10C0700000FB0018404607F023FC8146CA46012514 +:10C080005D4524DA062068430219B6F90430B2F996 +:10C090000410B2F90220005FC91AB6F90230D21AB0 +:10C0A000B6F90030C01A524300FB002001FB01002A +:10C0B000804407F005FC8145B8BF81465045D8BF94 +:10C0C00082466D1CDCE74FF00008C246C146594667 +:10C0D000012007F087F80146C0F3C00000EB2110F3 +:10C0E000C8F380110A9C01EBE811484307F0E8FB14 +:10C0F00020808110C0F3400001FA80F02080A9EB7D +:10C100000A003880BDE8F18FF0B5002411E0062662 +:10C11000002506FB040636F9157032F915C013FB2D +:10C120000C7707F30F0726F815706D1C032DF2DB53 +:10C13000641C8C42EBDBF0BD24587DDD6E59C83C9D +:10C14000094A0000AEB1E00F8B40603D5F4620F62B +:10C15000A700000041534148494B41534549000065 +:10C1600053454330393931314E5346535400000062 +:10C170001000030010009000A003500040008F0446 +:10C180002C01F401030003008002FFFF14000600ED +:10C190003000B00080044000900041032C01CC012D +:10C1A000030003008002FFFF180008003000D000E9 +:10C1B000E0042800E00041032C01A4010300030077 +:10C1C0008002FFFF1000030010009000A003500049 +:10C1D00040008F042C01F40103000300FFFFE00185 +:10C1E000140006003000400120085000F0008F04C9 +:10C1F000A101180103000300FFFFE001180008007F +:10C2000030008001C008300090018F04F401180153 +:10C2100003000300FFFFE001100003001000900086 +:10C22000A003500040008F042C01F401FF00030024 +:10C23000FFFFFFFF1400030030009000A003500038 +:10C2400040008F042C01F401FF000300FFFFFFFFFB +:10C250001800030030009000A003500040008F043D +:10C260002C01F401FF000300FFFFFFFF08000200A4 +:10C2700010009000A003500040008F042C01F40136 +:10C28000FF000100FFFFFFFF0000000000000000B2 +:10C2900030B5154604460622E6F7CAFB002D47BF17 +:10C2A0000020E080E580012030BD10B5002231F98A +:10C2B000123030F912401B1B48BF5B42B0F90640F8 +:10C2C000A34204DB0622E6F7B3FB012010BD521C9B +:10C2D000032AECDB002010BD2DE9F0471F4682B099 +:10C2E000804689469246012F25DB0A9D00243AF9B3 +:10C2F000141001291FDB38F9140039F91420861AAB +:10C3000000AA384606F0B8FFBDF9001070430F319F +:10C3100001290BDBBDF80010BDF800200F3140FAF9 +:10C3200001F10E32104100F00100401800F500410B +:10C33000B1F5803F01D3002005E025F81400641C0E +:10C34000032CD4DB0120BDE8F6870000D2B2203AEE +:10C3500022BF41FA02F0C91770472032D141D040C4 +:10C3600048409140D1404840914011417047000001 +:10C37000704780B5022808D0042806D0082804D0C9 +:10C38000102802D04FF4803104E04007411300EB45 +:10C3900091408113882007F021FC002002BD80B568 +:10C3A000B0F5FA6F0DD0B0F57A7F0AD0B0F5FA7F0C +:10C3B00007D0FA2805D04FF07A71882007F06DFB7E +:10C3C00003E0C103882007F068FB002002BD80B5B0 +:10C3D00007F047FF08F0D0FD00280CD008F0CCFD96 +:10C3E00059230FF234220FF24821FFF7C1FFBDE8B5 +:10C3F000014008F0C1BD09F027FB00280CD009F06E +:10C4000023FB5A230FF210220FF22421FFF7B0FF73 +:10C41000BDE8014009F018BB09F0A6FD00280CD0CA +:10C4200009F0A2FD5B230FF2F0120FF20421FFF7D7 +:10C430009FFFBDE8014009F097BD0AF053FA0028BC +:10C440000CD00AF04FFA5F230FF2CC120FF2E0117A +:10C45000FFF78EFFBDE801400AF044BA0AF0F0FC95 +:10C4600000280CD00AF0ECFC60230FF2AC120FF2A3 +:10C47000C011FFF77DFFBDE801400AF0E1BC0BF001 +:10C48000EAFA00280CD00BF0E6FA61230FF28812CA +:10C490000FF29C11FFF76CFFBDE801400BF0DBBA17 +:10C4A0000220FFF766FF4FF4FA70FFF778FF4FF0B6 +:10C4B0000071882007F097FBBDE8014007F00CBF32 +:10C4C00010B54FF47A720023ECF706FE044607F02D +:10C4D000E9FA204607F0F7FA204607F019FB00209A +:10C4E00010BD80B54FF47A720023ECF7F5FD07F02C +:10C4F000FCFA002002BD00002DE9F04784B00E4692 +:10C5000017469A46DDF838804FF00009DDE90C4502 +:10C51000002803D022462B4607F053FC002E0ED0F5 +:10C52000B6F90000009000A8B6F902104160B6F913 +:10C530000410816022462B46494607F00DFC002F6F +:10C5400024D09FED270AD7ED000A60EE800AFDEEA9 +:10C55000E00ACDED000A00A8D7ED010A60EE800ADE +:10C56000FDEEE00AC0ED010AD7ED020A20EE800AD6 +:10C57000BDEEC00A80ED020A22462B4648F020019B +:10C5800007F03AFC002801D04FF02009BAF1000F63 +:10C590000DD022462B460021504607F069FC0028AA +:10C5A00001D1012004E04FF02009002000E000202C +:10C5B000002802D007F006FD8146484604B0BDE8D9 +:10C5C000F08780B50A4600A909F064FA02BD80B57B +:10C5D0000A4600A909F0BCFA02BD09F0BABB000086 +:10C5E0000000004280B507F099FC002002BD80B534 +:10C5F00007F082FC002002BD80B507F083FC00201C +:10C6000002BD80B507F084FC002002BD0BF09BBD8D +:10C6100007F043BA07F0E2BA696E765F696E697433 +:10C620005F696E76656E73656E73655F61706900D4 +:10C63000433A5C50726F6A6563745C4E6F74653325 +:10C640005F466972655C4E6F7465335F46697265FB +:10C650005C496E76656E53656E73655C6D706C5C7F +:10C66000696E76656E73656E73655F6170692E6362 +:10C670000000000038B50C461546010A8DF8001080 +:10C6800000A9487048782018B0F5807F02DD4FF08F +:10C69000FF3032BD00AB02226D2168200BF00EFF8F +:10C6A000002802D04FF0FF3032BD2B4622466F21CA +:10C6B00068200BF003FF002802D04FF0FF3032BD9E +:10C6C000002032BD38B50C461546010A8DF8001021 +:10C6D00000A9487048782018B0F5807F02DD4FF03F +:10C6E000FF3032BD00AB02226D2168200BF0E6FE68 +:10C6F000002802D04FF0FF3032BD2B4622466F217A +:10C7000068200BF0F3FE002802D04FF0FF3032BD5E +:10C71000002032BD2DE9F04F93B005460E46144679 +:10C72000002E02D14FF0FF3065E00027A8460AE056 +:10C73000B9F1010F05DB4A4639460FF258700BF08C +:10C74000E4FE5744BFB2474544DA4FF0000907EB17 +:10C75000060BA8EB0700412802DB4FF0400A01E07E +:10C76000A5EB070A5A46514689B23846FFF782FFC1 +:10C77000002802D06FF001003DE002AA514689B2C4 +:10C780003846FFF79FFF002802D06FF0020032E02A +:10C790001FFA8AFA524602A958460BF0C3FE002837 +:10C7A00004D009F1010964200BF0B3FEA9F10100E6 +:10C7B0000328CED3B9F1040FBADB9DF8080000902E +:10C7C000BB5D524639460FF2B0600BF09EFE6FF033 +:10C7D000030010E0200A8DF804008DF8054001AB3D +:10C7E0000222702168200BF069FE002802D06FF051 +:10C7F000040000E0002013B0BDE8F08F90F90010B5 +:10C80000012901DB00207047002901D50420704771 +:10C8100090F90110012901DB01207047002901D5A1 +:10C820000520704790F90200012801DB02207047C3 +:10C83000002801D5062070470720704738B5044608 +:10C84000FFF7DCFF0546E01CFFF7D8FF45EAC0050F +:10C85000A01DFFF7D3FF45EA801080B232BD70B54E +:10C8600086B0044605A80FF244610A68026004A875 +:10C870000FF23C610A68026003A80FF238610A688F +:10C88000026002A80FF230610A68026004F003003F +:10C8900005A9425C8DF8042001ADC4F3C102525CCD +:10C8A0006A70C4F38112515CA97004A9405C8DF8D0 +:10C8B000000000AEC4F3C100405C7070C4F381108E +:10C8C000405CB07001AA032140F22640FFF7D2FE7F +:10C8D000002802D04FF0FF304DE000AA032140F2C3 +:10C8E0002A40FFF7C7FE002802D04FF0FF3042E099 +:10C8F000032203A901A8E7F7F9FF032202A900A870 +:10C90000E7F7F4FF60070BD59DF8040040F0010045 +:10C910008DF804009DF8000040F001008DF8000043 +:10C92000A00607D5687840F001006870707840F084 +:10C9300001007070E00507D5A87840F00100A870EC +:10C94000B07840F00100B07001AA032140F23F40EE +:10C95000FFF790FE002802D04FF0FF300BE000AA56 +:10C96000032140F23140FFF785FE002802D04FF04E +:10C97000FF3000E0002006B070BD10B50446002274 +:10C98000382168200BF088FD002824D100222321C3 +:10C9900068200BF081FD00281DD100226A2168204B +:10C9A0000BF07AFD002816D1002C17D00C226A213A +:10C9B00068200BF071FD00280DD1C0226A2168208B +:10C9C0000BF06AFD002806D10022232168200BF01D +:10C9D00063FD002802D04FF0FF3010BD002010BDD5 +:10C9E00010B582B004000CD0C0208DF80000C22029 +:10C9F0008DF80100C4208DF80200C6208DF80300D8 +:10CA000004E004228B2100A8E5F728FC00AA0421F9 +:10CA100040F6C410FFF72EFE2046401E8041C04362 +:10CA2000C00FFFF7AAFF16BD10B582B004000CD0EE +:10CA300020208DF8000028208DF8010030208DF88E +:10CA4000020038208DF8030004E00422A32100A88E +:10CA5000E5F704FC00AA042140F6CA10FFF70AFE1D +:10CA60002046401E8041C043C00FFFF786FF16BD21 +:10CA700030B585B002A90FF2444238CA38C1052842 +:10CA800002D24FF0FF3021E0052190FBF1F0401E73 +:10CA900080B20146090A8DF800108DF8010000AA45 +:10CAA000022140F21620FFF7E5FD002802D04FF0EA +:10CAB000FF300BE002AA0C2140F6ED10FFF7DAFD83 +:10CAC000002802D04FF0FF3000E0002005B030BD5C +:10CAD00080B5002801D0022200E000223821682021 +:10CAE0000BF0DAFC002802D04FF0FF3002BD00202E +:10CAF00002BD70B584B0044625466D1EAD41ED43C0 +:10CB0000ED0F00208DF8000000AEB2207070B8204C +:10CB1000B070C220F07000AA04216820FFF7AAFDBF +:10CB2000A3208DF80000600606D5C0207070C820D4 +:10CB3000B070C220F07003E0A3207070B070F0708D +:10CB4000200606D5C4203071CC207071C620B0718B +:10CB500003E0A32030717071B071A3208DF807003D +:10CB60008DF808008DF8090000AA0A2140F6D310BC +:10CB7000FFF780FD0320044203D020208DF8000041 +:10CB800002E0D8208DF8000000AA012140F6E21052 +:10CB9000FFF770FDD8208DF8000000AA012140F6B3 +:10CBA0000200FFF767FD600703D50120FFF718FFBC +:10CBB00002E00020FFF714FFE00603D50120FFF795 +:10CBC00033FF02E00020FFF72FFF2846FFF7D5FED6 +:10CBD000002004B070BD2DE9F0418CB004460D4634 +:10CBE000164600AB0222722168200BF07FFC002861 +:10CBF00002D04FF0FF30E3E09DF800009DF80110F7 +:10CC000041EA0028139FB8F11C0F04D200203870AD +:10CC10004FF0FF30D4E0B8F5007F19DD01AB022200 +:10CC20003A2168200BF062FC002803D00FF2982014 +:10CC30000BF06BFC9DF80400C00609D50120FFF73E +:10CC40009CFE0FF2A0200BF060FC6FF00100B7E03B +:10CC500001AB1C22742168200BF048FC002806D090 +:10CC60000FF2A0200BF051FC4FF0FF30A8E01C2089 +:10CC700098FBF0F0401E387001A89DF8041042782F +:10CC8000120442EA0161827841EA0221C27811432A +:10CC9000316001794279120442EA0161827941EA04 +:10CCA00002219DF80B2011437160017A9DF80D203F +:10CCB000120442EA01619DF80E2041EA02219DF82A +:10CCC0000F201143B160017B9DF81120120442EA4C +:10CCD00001619DF8122041EA02219DF813201143C1 +:10CCE000F160017C9DF8152042EA012129809DF820 +:10CCF00016109DF8172042EA012169809DF818104E +:10CD00009DF8192042EA0121A9809DF81A109DF88A +:10CD10001B2042EA01212180007E9DF81D1041EA7E +:10CD2000002060809DF81E009DF81F1041EA002041 +:10CD3000A080002032E000EB4001454A8B1893F9B7 +:10CD4000061093F9052093F90430B4F9006013FB41 +:10CD500006F6B4F9027012FB0766B4F9047011FB11 +:10CD60000766B5F9007013FB07F3B5F9027012FB03 +:10CD70000732B5F9043011FB0321B6F5004F01DB92 +:10CD800047F6FF76B1F5004F01DB47F6FF7108AAC1 +:10CD900022F810600AAA22F81010401C0328CADBEF +:10CDA00000200AE008A931F8101024F810100AA990 +:10CDB00031F8101025F81010401C0328F2DB002079 +:10CDC0000CB0BDE8F08138B5040002D14FF0FF305F +:10CDD00032BD1F4D2878002801D0002032BD092225 +:10CDE0002146281DE7F782FD00AB02226B21682057 +:10CDF0000BF07CFB9DF80000400604D500226B215F +:10CE000068200BF049FBC8234FF480620FF2381101 +:10CE100040F66130FFF77EFC002818D12046FFF76E +:10CE20000DFDFFF71CFD002802D06FF0060032BD9B +:10CE30000020FFF74DFE002802D06FF0070032BD42 +:10CE4000012028700FF2D8000BF05FFB002032BDEC +:10CE5000A47C002010B50C460021002800D0C4217D +:10CE60000846FFF746FE002805D12046FFF700FEE2 +:10CE7000002800D1002010BD0A444D505F45525299 +:10CE8000282564292825642928256429282564293A +:10CE9000200A00000A444D505F545249414C282555 +:10CEA000642928256429200A000000004CCD6C006C +:10CEB0000CC92C003656760026466600FEF2ABC43E +:10CEC000AAF1DFDFBBAFDFDF0A5B444D505D2046D8 +:10CED00049464F20737461747573206572726F7266 +:10CEE0000A0000000A5B444D505D202D2046494653 +:10CEF0004F206F766572666C6F77206572726F7205 +:10CF00000A0000000A5B444D505D202D2046494632 +:10CF10004F2072656164206572726F720A000000B2 +:10CF20005B444D505D4669726D77617265206C6F30 +:10CF300061646564207375636365737366756C6C97 +:10CF400079212121210A0000000070000000002446 +:10CF5000000000020003000000650054FFEF000025 +:10CF6000FA80000B12820001200030C30E8C8CE985 +:10CF700014D5400213710F8E3883F8833000F88384 +:10CF8000258EF8833000F883FFFFFFFF0FFEA9D640 +:10CF9000240004001A8279A10000003CFFFF000079 +:10CFA0000010000038836FA2003E033040000000F4 +:10CFB00000B2BAC23E800000200000000000000065 +:10CFC0004000000060000000000C0000000C186E23 +:10CFD000000006920A16C0DF0000000000000002F8 +:10CFE000000000040000000700000000FFFF0B2B02 +:10CFF00000001657000003590000000000001DFA51 +:10D0000000026C1D00000000400000000000000055 +:10D01000000000000000000000000000001942B500 +:10D02000000039A20000B365D90E9FC91DCF4C3452 +:10D0300030000000500000003BB67AE800640000B9 +:10D0400000C8000000000000000000000000000018 +:10D0500000000000000000000000000000000000D0 +:10D0600000000000000000000001000000000000BF +:10D0700000000000000000000000107200000040EE +:10D08000000000000000000005DC000000000000BF +:10D090000000000000000000000000000000025836 +:10D0A00000000000000000C80000000000000000B8 +:10D0B000000100000002000000000000000000006D +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E0000000000000000000000000000000000040 +:10D0F00000000000000010004000000000000006DA +:10D100000000B26A00000000000000000000000003 +:10D11000000000000000000000000000000000000F +:10D1200000000000000000000000002500000000DA +:10D1300016A000000000100000001000002F0000EA +:10D14000000001F40000100000280000FFFF4581EE +:10D15000FFFFFA720000000000000000004400051C +:10D160000005BAC6004778A20000000100000000D8 +:10D1700000000600000000140000254D002F706D17 +:10D18000000005AE000C02D000000000000000000E +:10D190000000000000000000001B00000000000074 +:10D1A0000000000000000000006400000008000013 +:10D1B000000000000000000000000000000000006F +:10D1C000000000000000000000000000000000005F +:10D1D000000000000000000000000000000000004F +:10D1E000000000000000000000000000000000003F +:10D1F000000000000000000000000000000000002F +:10D200000000000000000000001B00000000000003 +:10D2100000000000000E000E00000AC7000400001D +:10D2200000000032FFFFFF9C00000B2B00000002FB +:10D230000000000100000064FFE5000000000000A5 +:10D2400000000000000000000000000100000000DD +:10D2500000010000000000000001800000018000CB +:10D2600000018000002426D3000000000000000020 +:10D27000000600100096003C0000000000000000C6 +:10D2800000000000000000000C0A4E68CDCF7709B6 +:10D2900050166759C619CE82000000000000000039 +:10D2A000000000000000000000000000000000007E +:10D2B00017D78400030000000000000000000000F9 +:10D2C000C7938F9D1E1B1C1900000000000000006A +:10D2D000000000000000000000000000000000004E +:10D2E0000203188500004000000000030000000356 +:10D2F00000000000000000004000000000000000EE +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D32000000000000000000000000000677DDF7EBC +:10D3300072902E554CF6E6880000000000000000B8 +:10D340000000000000000000D8DCB4B8B0D8B9ABD1 +:10D35000F3F8FAB3B7BB8E9EAEF132F51BF1B4B859 +:10D36000B08097F1A9DFDFDFAADFDFDFF2AAC5CD4A +:10D37000C7A90CC92C97F1A989264666B28999A933 +:10D380002D557DB08AA896365676F1BAA3B4B280F0 +:10D39000C0B8A89711B28398BAA3F02408441064C7 +:10D3A00018B2B9B49883F1A329557DBAB5B1A38356 +:10D3B00093F0002850F5B2B6AA839328547CF1B9B3 +:10D3C000A3829361BAA2DADEDFDB819AB9AEF5609F +:10D3D0006870F1DABAA2DFD9BAA2FAB9A38292DBF5 +:10D3E00031BAA2D9BAA2F8DFB9A3A3A3A3A3B8A262 +:10D3F000DFDFDFBAA0DFDFDFD8F1B9A1B280C0B0D4 +:10D4000089A0C3C5C7B181B497A011B590A1F0247C +:10D410000844106418F19081A02D553DF2A5D0F874 +:10D42000F9D1D9F8F180A2C3C5C7D8F3A2DEF18241 +:10D4300090A42D557D8494F5A120D9F3A2F8D8F5B8 +:10D44000A140D9F3A2F8D8F5A160D9F3A2F8D8F297 +:10D45000B9A2F8F9D1D9A6DEA5D0DEF41AD8F286A1 +:10D4600096A109D1DBF411D8F211D1DBF41CD8F26A +:10D4700019D1DBF414D8F410D8F3A2F8F9D1DAF208 +:10D48000A6F8F1A5DED8F4A11616D8F1A5F8A18565 +:10D490009509D9F1A5DEF2A5D0DEA6F8D8F4A10948 +:10D4A000D8F3A2F8F9D1F4D90819DA42F2A2DEF4DD +:10D4B0000BD8F1A5F8A1859519DAF407D8F2A6DE04 +:10D4C000A5D0DED8F1B8AAB38DB4980D355DB2B64B +:10D4D000BAAF8C96198F9FA70E161EB49AB8AA875A +:10D4E0002C547CBAA4B08AB691325676B28494A4F5 +:10D4F000C808CDD8B8B4B0F19982A82D557D98A8A8 +:10D500000E161EA22C547C92A4F02C5078F184A804 +:10D5100098C4CDFCD80DDBA8FC2DF3D9BAA6F8DA57 +:10D52000BAA6DED8BAB2B68696A6D0F3C841DAA6B5 +:10D53000C8F8D8B0B4B882A892F52C548898F135C0 +:10D54000D9F418D8F1A2D0F8F9A884D9C7DFF8F82F +:10D5500083C5DADF69DF83C1D8F40114F1A8824EF4 +:10D56000A884F311D182F5D992289788F109F41C87 +:10D570001CD884A8F3C0F9D1D99782F129F40DD829 +:10D58000F3F9F9D1D982F4C203D8DEDF1AD8F1A2B7 +:10D59000FAF9A88498D9C7DFF8F8F883C7DADF6901 +:10D5A000DFF883C3D8F40114F198A8822EA884F37D +:10D5B00011D182F5D992509788F109F41CD884A82A +:10D5C000F3C0F8F9D1D99782F149F40DD8F3F9F9FC +:10D5D000D1D982F4C403D8DEDFD8F1AD8898CCA8C5 +:10D5E00009F9D98292A8F57CF1883ACF944A6E98CD +:10D5F000DB6931DAADF2DEF9D88795A8F221D1DA0C +:10D60000A5F9F417D9F1AE8ED0C0C3AE82C684C3DB +:10D61000A88595C8A588F2C0F1F4010EF18E9EA8E8 +:10D62000C63E56F554F18872F40115F19845856EA1 +:10D63000F58E9E0488F142985A8E9E068869F40100 +:10D640001CF1981E1108D0F504F11E9702029836BD +:10D6500025DBF9D985A5F3C1DA85A5F3DFD8859552 +:10D66000A8F309DAA5FAD88292A8F578F1881A8485 +:10D670009F26889821DAF41DF3D8879F39D1AFD936 +:10D68000DFDFFBF9F40CF3D8FAD0F8DAF9F9D0DFE0 +:10D69000D9F9D8F40BD8F3879F39D1AFD9DFDFF4AC +:10D6A0001DF3D8FAFCA869F9F9AFD0DADEFAD9F897 +:10D6B0008F9FA8F1CCF398DB45D9AFDFD0F8D8F134 +:10D6C0008F9FA8CAF38809DAAF8FCBF8D8F2AD974D +:10D6D0008D0CD9A5DFF9BAA6F3FAF412F2D8950D9C +:10D6E000D1D9BAA6F3FADAA5F2C1BAA6F3DFD8F116 +:10D6F000BAB2B68696A6D0CAF349DAA6CBF8D8B0A5 +:10D70000B4B8D8AD84F2C0DFF18FCBC3A8B2B6866F +:10D7100096C8C1CBC3F3B0B48898A821DB718D9DA6 +:10D7200071859521D9ADF2FAD88597A828D9F40842 +:10D73000D8F28D29DAF405D9F285A4C2F2D8A88DE1 +:10D740009401D1D9F411F2D88721D8F40AD8F284FF +:10D7500098A8C801D1D9F411D8F3A4C8BBAFD0F2AE +:10D76000DEF8F8F8F8F8F8F8F8D8F1D8B8B4B097C7 +:10D7700086A8319B069907AB9728889BF00C20144C +:10D7800040B0B4B8F0A88A9A285078B79BA829511D +:10D7900079247059446938644831F1BBAB88002C56 +:10D7A000547CF0B38BB8A804285078F1B088B497B3 +:10D7B00026A85998BBABB38B02264666B0B8F08A50 +:10D7C0009CA82951798B2951798A2470598B20582A +:10D7D000718A4469388B3940688A6448318B304992 +:10D7E0006088F1AC002C547CF08CA804285078F1AF +:10D7F000889726A85998AC8C02264666F0899CA882 +:10D80000295179247059446938644831A98809201C +:10D810005970AB11384069A8193148608CA83C4157 +:10D820005C207C00F187981986A86E767EA999887D +:10D830002D557DD8B1B5B9A3DFDFDFAED0DFAAD0DB +:10D84000DEF2ABF8F9D9B087C4AAF1DFDFBBAFDFF6 +:10D85000DFB9D8B1F1A38EC6DFB084F2C8F8F9D928 +:10D86000DED89385F14AB183A308B5839A0810B72F +:10D870009F10D8F1B0BAAEB08AC2B2B68E9EF1FB9C +:10D88000D9F41DD8F9D90CF1D8F8F8AD61D9AEFBAF +:10D89000D8F40CF1D8F8F8AD19D9AEFBDFD8F416EE +:10D8A000F1D8F8AD8D61D9F4F4ACF59C9C8DDF2BEB +:10D8B000BAB6AEFAF8F40BD8F1AED0F8AD51DAAE94 +:10D8C000FAF8F1D8B9B1B6A3839C08B9B1839AB577 +:10D8D000AAC0FD3083B79F10B58B93F20202D1AB83 +:10D8E000DADED8F1B080BAABC0C3B284C1C3D8F31A +:10D8F000B9ACDED8B1B9F38BA391B609B4D9B9AC40 +:10D90000F8ABDEB0879CB9A3DDF1B38B8B8B8B8B2F +:10D91000B087A3A3A3A3B080B490F2A3A3A3A3A3AF +:10D92000A3A3A3A3A3F1B087B59AA3F39BA3A3DCFE +:10D93000BAACDFB9A3A3A3A3A3A3A3A3A3A3A3A345 +:10D94000A3A3A3D8F3B9ACF8F9D1D9F41BD8F3FA4F +:10D95000F9D1D9F41BD8F2B1B5B98CACF8F9D1D959 +:10D96000C2D8F2F9D9DEF40913DAF2DDC6DCF431FB +:10D9700011D8F2ABFA8B9BA349D9F40706DAF2B9B6 +:10D98000ABDFFED8F1BBB3B7AAF9DAFFD9809AAA08 +:10D9900028B48098A720B79787A86688F07951F1B6 +:10D9A000902C870CA781976293F071716085940128 +:10D9B00029517990A5F1284C6C870C95188578A38E +:10D9C0008390284C6C886CD8F3A28200F210A89245 +:10D9D0001980A2F2D926D8F188A84DD948D896A89E +:10D9E0003980D93CD89580A839A68698D92CDA8771 +:10D9F000A72CD8A8899519A980D938D8A88939A978 +:10DA000080DA3CD8A82EA83990D90CD8A89531989E +:10DA1000D90CD8A809D9FFD801DAFFD89539A9DAE5 +:10DA200026FFD890A80D8999A810809821DA2ED8C1 +:10DA30008999A83180DA2ED8A886963180DA2ED836 +:10DA4000A8873180DA2ED8A88292F34180F1D92EAE +:10DA5000D8A882F31980F1D92ED882ACF3C0A28065 +:10DA600022F1A62EA72EA92298A829DAACDEFFD88B +:10DA7000A2F22AF1A92E8292A8F23180A696F1D9BB +:10DA800000F1F1F1AC8C9C0C30ACDED0DEFFD88C18 +:10DA90009CACD010ACDE8092A2F24C82A8F1CAF20B +:10DAA00035F19688A6D900D8FF00000010B50024F3 +:10DAB000E4F7FAFB002800D00124204610BD000046 +:10DAC00038B500200246DFF8A44403E004EB8001EF +:10DAD0008A63401C0928F9DB1046E066A0666420D2 +:10DAE00020606060DFF88804A060B5EE000A84ED75 +:10DAF000030A84ED040A84ED050A84ED060A84ED28 +:10DB0000070ADFF87004206205206062A0621046F8 +:10DB100003E004EB80018A63401C0928F9DB10460E +:10DB20006067A067E06704F180057C220146284613 +:10DB3000E4F794FB0C22002104F12C00E4F78EFBA7 +:10DB4000256731BD2DE9F04106460F4690461C463B +:10DB5000DFF8185485ED0B0AF0EE601AF1EE611A49 +:10DB6000C5ED0C1AB1EE410A85ED0D0A0A2205F148 +:10DB70002C01286F00F004FA00F040F8022801D0D0 +:10DB800004280ED1A86F401CA867142198FBF1F15E +:10DB9000884202DB0020E8670CE0E86F401CE86781 +:10DBA00008E0082801D0102804D1E86F401CE8677D +:10DBB0000020A867142096FBF0F0A96F814201DBDA +:10DBC00001206867142097FBF0F0E96F814201DBC8 +:10DBD00002206867686F012803D0022801D0002066 +:10DBE0006867696F080005D021700021A967E9679F +:10DBF000696701E000212170BDE8F0812DE9F8435B +:10DC00002DED048B9FED9F8AD84C00202066606626 +:10DC1000E06E461CE666A76ED74D0A2F36DAD4F8BA +:10DC200070900A220021484600F0C3F980460A227B +:10DC30000121484600F0BDF904EB870106EB86029E +:10DC400092008A63012F1FDB98ED000AD0ED000AD5 +:10DC500030EE600AD8ED010A90ED011A70EEC10AAB +:10DC600098ED021AD0ED021A31EE611A05EB870029 +:10DC700020EE000A00EEA00A01EE010A80ED060A7D +:10DC80008A6B496B511AC163781CA0660A2E01DAAF +:10DC900003202867A06E0A28C0F2DD80401EA0661F +:10DCA0000A221146206F04F01FFC85ED040A0A22A7 +:10DCB0001146206F04F036FC85ED050A0A22114654 +:10DCC000206F04F04DFC85ED060A002006E005EB10 +:10DCD0008001D1ED070A38EE208A401C0928F6DBC6 +:10DCE000D5ED040AB2EE041AC0EE818AD5ED050A1C +:10DCF00080EE819AF2EE040AC0EE209AE06E0A28C5 +:10DD000005DBC5ED018A85ED029AC5ED039A002673 +:10DD10000FE00A22C6F1090109B2206F00F049F9AB +:10DD200095ED031AD5ED020A95ED010A00F0ACF865 +:10DD3000761C0A2EEDDB606A216E88423ADAA06B0F +:10DD40002978002908D1686601212970C5ED018A6A +:10DD500085ED029AC5ED039AA16A626E91420CDAD2 +:10DD6000697800290BD1A86601216970C5ED018A87 +:10DD700085ED029AC5ED039A01E0002169702168E2 +:10DD8000AA6E821A914208D26A78002A05D0002031 +:10DD9000A870E870012028674CE06A6E801A814202 +:10DDA00046D22878002843D00020A870E8700220CE +:10DDB00028673FE0C5ED018A85ED029AC5ED039A1B +:10DDC000002028706870A878002801D10120A87070 +:10DDD0009FED640A28EE000AB5EE400AF1EE10FA53 +:10DDE00003DC9FED610A28EE000AD4ED020AB3EECF +:10DDF000041A60EE810AF4EE400AF1EE10FA07D53B +:10DE0000E878002806D1A06BE8660120E87001E000 +:10DE10000020E8706068A0F5FA70A16BEA6E891ABC +:10DE2000884205D2E878002802D00420286701E063 +:10DE30000320286700200CE004EB8001CA6B8A6392 +:10DE4000082805DA05EB80010A6ACA614A6C0A648F +:10DE5000401C0928F0DB286F012806D00DD30328C9 +:10DE600007D004D3042806D007E0022006E00420EF +:10DE700004E0082002E0102000E00020BDEC048B4C +:10DE8000BDE8F28300000000D0ED001A31EEC00AB8 +:10DE90003A4981ED000AD0ED011A71EEE00AC1EDB8 +:10DEA000010AD0ED021A31EEC11A81ED021AB5EE67 +:10DEB000400AF1EE10FA03D5B1EE400A81ED000AF6 +:10DEC000F5EE400AF1EE10FA03D5B1EE600A81EDED +:10DED000010AB5EE401AF1EE10FA03D5B1EE410A8F +:10DEE00081ED020A91ED000A2048D0ED030AB4EE5C +:10DEF000600AF1EE10FA13D5D1ED010A90ED041A83 +:10DF0000F4EE410AF1EE10FA0AD5D1ED020A90EDD5 +:10DF1000051AF4EE410AF1EE10FA01D5012200E0F3 +:10DF20000022D0ED060AB4EE600AF1EE10FA14D524 +:10DF300091ED010AD0ED070AB4EE600AF1EE10FA95 +:10DF40000BD591ED020AD0ED080AB4EE600AF1EEAD +:10DF500010FA02D5416E491C4166016E51180166E6 +:10DF60007047000000007A4400007AC4F00A0120E3 +:10DF7000000040413333B33E4C030120902C01207C +:10DF80000388934201D30023038003885B1C038032 +:10DF90009BB2934201D300220280028802EB42032B +:10DFA00000EB8300001D91EC030A80EC030A0120C2 +:10DFB0007047B0F90030591A09B2002901D511FA99 +:10DFC00082F109B201EB410200EB8200001D7047B3 +:10DFD0002DE9F041DFF8B86B542200213046E4F718 +:10DFE0003DF9DFF8B04B0C2200212046E4F736F96A +:10DFF000DFF8A45B1C22002105F11800E4F72EF9DC +:10E000001C22002106F15400E4F728F90020E06109 +:10E010004FF47A720146DFF8840BE4F71FF94FF4EE +:10E020007A720021DFF8780BE4F718F900202062FB +:10E030006062DFF8706B7064B064A062E062F064EC +:10E040002063DFF8647BB8616063A063E063012054 +:10E0500020640020306570654FF0FF306064A0647C +:10E060000020E064B065F861F06538623066706683 +:10E07000B0661C22014605F13400E4F7EFF80020F9 +:10E08000F0667063082201463046E4F7E7F82C2278 +:10E09000002106F10800E4F7E1F842F21070308444 +:10E0A000708400207061022030830020B0603880CE +:10E0B0000C2201462846E4F7D1F8DFF8600C6860CE +:10E0C000DFF85C0C28604FF0FF30288100202073BF +:10E0D0002065B063E0813C22014607F12400E4F7AB +:10E0E000BDF800203866306778807866F063B067E6 +:10E0F0007067606506F184082C2206F1080140462D +:10E10000E6F7F4FBC4F858800020E0652066386725 +:10E1100060667867B867E066A066A067606720679A +:10E120000120A86568652865002068662866E8659E +:10E1300028220146DFF8EC0BE4F790F80020F8679E +:10E140000C22014604F11000E4F788F80C220021AB +:10E1500005F10C00E4F782F81022002107F1080015 +:10E16000E4F77CF81022002106F1B000E4F776F81D +:10E170000620A6F840000020F880C6F88000F0676E +:10E18000E067DFF8A80DB8660020F866BDE8F0810A +:10E1900010B584B0DFF8004A0C22214600A8E6F74B +:10E1A000A5FBFFF715FF0C2200A92046E6F79EFB12 +:10E1B0001FBD00002DE9F84F2DED0C8B84B0002021 +:10E1C000029082460446DFF8E05995ED1E8AD5EDAF +:10E1D000078AC5ED1E8ADFF8CC69D6ED169AC5ED23 +:10E1E000079ADFF8B07997ED139AB8EE490ADFED98 +:10E1F000DC0A80EE80AA86ED16AAD7F834B0786CD7 +:10E20000ABEB0000FA30FA21B0FBF1F1FA2202FB8D +:10E2100011081FFA88F8B8F14C0F02DA386C01289F +:10E2200004D12046F0630220A88091E1D6F85490F2 +:10E23000B9F1040F30D3F4EE698AF1EE10FA2BD560 +:10E24000F4EE4A9AF1EE10FA26D51AEE100AE9F722 +:10E25000F7FE02460B46CDE9002318EE900AE9F7D7 +:10E26000EFFEDFF8C82ADFF8C83AE4F7FDFCDDE985 +:10E270000023E4F7D7FD0FD29FEDBA0AB4EE40AA0F +:10E28000F1EE10FA08DBC6ED169AC5ED078A85EDAA +:10E290001E8A0320A880B7E1D6ED11AAC6ED12AA06 +:10E2A00096ED13BA87ED0CBA404600EE100AB8EEB0 +:10E2B000400AD7ED090AC0EE800A97ED0B1A81EEED +:10E2C000001A20467064F064786C214621E0401CFE +:10E2D00080B2FA2800D12046DFF8C02802EB800285 +:10E2E000D2ED001A71EEE01A96ED112A01EEA12A84 +:10E2F00086ED112ADFF8A82802EB8002D2ED001A81 +:10E3000071EEC11A96ED132A01EEA12A86ED132AA9 +:10E31000491C89B24145DADBD6ED110AC0EE80BA5C +:10E32000C6ED11BAD6ED130A80EE80CA86ED13CA87 +:10E33000D5ED1DCAC5ED1CCA97ED170AD7ED180A11 +:10E3400030EE60DA85ED1DDA404600F037FC01283A +:10E3500002D12046F063FBE0B9F1000F05D1B08F88 +:10E36000052802DB04465046B087B9F1000F05D1FD +:10E37000F08F052802DB04195046F08719FA84F063 +:10E38000002830D19FEDC08B3CEE0B0A10EE100A36 +:10E39000E9F756FE53EC182BE4F766FC5246DFF81B +:10E3A000B43BE4F73FFD16D33BEEAA0A10EE100A89 +:10E3B000E9F746FE53EC182BE4F756FC5246DFF81B +:10E3C000983BE4F72FFD06D3B3EE040AB4EE40DA2F +:10E3D000F1EE10FA07D5B08F401CB087C7F848B0EF +:10E3E0000620A880B4E0B08F002802D0041950465F +:10E3F000B08719FA84F0002819D1B7EE000AB4EEFC +:10E4000040AAF1EE10FA02D50720A880A0E09FED07 +:10E41000A00AB4EE40AAF1EE10FA05DBF08F401C22 +:10E42000F0870820A88093E05046F08703E0F08F43 +:10E4300004195046F087B0EE6B1AF0EE4C0AB0EEBD +:10E440004A0A4146A4B2204600F074FC012808D1D3 +:10E45000C6ED169A86ED13BAC5ED1DCAC6ED11AA12 +:10E4600076E09FED8C0AB4EE40AAF1EE10FA02DBE2 +:10E47000DFF8E80AB0655046B087B9F1000F0ED159 +:10E4800096ED160A86ED170A85ED080AC7ED0ABA59 +:10E4900085ED06CA87ED19DA00F012FB4DE0B6EE05 +:10E4A000008A484600F00CFB012818D196ED160AA8 +:10E4B000F0EE000A20EE200A86ED160A4FF0010A5F +:10E4C0006BEE880AC6ED110A2CEE081A86ED131AB7 +:10E4D000C6ED120A87ED0C1A85ED070A641C96ED4D +:10E4E000160AD5ED070A70EE200A60EE880AC6ED1E +:10E4F000170A96ED111AD6ED121A31EE211A21EEF5 +:10E50000081A87ED0A1A96ED131AD7ED0C1A31EE98 +:10E51000211A21EE081A85ED061AB4EE600AF1EE12 +:10E5200010FA02D4BAF1010F01D185ED080A3CEED0 +:10E530008D0A20EE080A87ED190A204680B200F005 +:10E54000ABF800F067F8C7F848B001200290786592 +:10E55000DFF8D0070299012906D10121018005E0E9 +:10E5600000007A4401004040A9880180A4B24460C0 +:10E5700080ED029AA0F80C80718FC181716C0161ED +:10E58000F16C4161B16D8161B96AC161A9690162D2 +:10E59000F16D4162C7F844B00020F8647862F86217 +:10E5A00038641022014605F10800E3F757FE0C22FB +:10E5B000002107F11000E3F751FE0020E867F08A20 +:10E5C00000281CD1D6F8800000280DD0306DF168ED +:10E5D000401AB6F84010B0EB510F02DB0020308338 +:10E5E0000DE0012030830AE0B08FF18F11FA80F046 +:10E5F000032802DB0120308301E002203083DFF8B2 +:10E600002C09A8660020E866029804B0BDEC0C8BCB +:10E61000BDE8F28F38B50025DFF888450120C4F841 +:10E62000800000F069FCA060606DB4F84010884282 +:10E6300015D3206DE060206E6062606EA062A06EF7 +:10E64000E062E06D2061606F2063A08EA082E08EAA +:10E65000E0820120E06705460020C4F880002846DB +:10E6600032BDDFF84005C1680165002141654161A7 +:10E670000221018300214163816A4166016B816748 +:10E680000021C0F880107047000000000000E03F4B +:10E69000676616400100A0402DE9F14F2DED088B73 +:10E6A0004FF0000C60460146DFF8EC44DFF8F464FC +:10E6B000BDF82020002A1ED0376D7A1E02F0070216 +:10E6C00007F007039B5D9355D6F85480A8F101022B +:10E6D0000723B2FBF3F3C3EBC303D21A04EB8202AA +:10E6E0000723B8FBF3F3C3EBC303A8EB030304EB6B +:10E6F00083035B6B536396ED178AB0EE040AB4EEA6 +:10E70000408AF1EE10FA08D496ED1C0AF0EE080AE1 +:10E71000B4EE600AF1EE10FA02D50322B28601E0EF +:10E720000422B286376D07F0070EB6F834800EF873 +:10E7300006800825724607E0042B01D10CF1010C7C +:10E74000521E00D508326D1E0ED09357032B01D1F7 +:10E75000491C02E0042B00D1401C062DF0DB032BEA +:10E76000EAD1ACF1010CEBE7F28EDFF83C341A8011 +:10E7700080B2814689B209EB010303EBD37A4FEAF9 +:10E780006A0A8A4509DBCA4504DA4FF0040CA6F888 +:10E7900036C013E0BCF1000F04D54FF0030CA6F80F +:10E7A00036C00BE0BCF1010F04DB4FF0040CA6F8FF +:10E7B00036C003E01EF906C0A6F836C0B6F836909B +:10E7C000B9F1040F00D008464A450AD00020308332 +:10E7D000F08A00281DD1706D04281AD301203083DF +:10E7E00017E0052B10DB00EE100AB8EE400A00EE31 +:10E7F000903AF8EEE00A80EE200AF6EE080AB4EE4F +:10E80000600AF1EE10FA02D50120308301E0022007 +:10E810003083F0EE488AB7EE080AB4EE408AF1EE93 +:10E8200010FA02D5F7EE088A08E09FEDA20AB4EECE +:10E83000408AF1EE10FA01DBF1EE028A6068E9F736 +:10E84000FFFB41EC190B18EE900AE9F7F9FB41ECDC +:10E850001A0B9FED99BBB8F1030F53EC1A2B2BD178 +:10E86000DFF8F80ADFF8F81AE4F7FEF9DFF8F42A1F +:10E87000DFF8F43AE4F70AFB82468B4653EC1A2B96 +:10E88000DFF8E80ADFF8E81AE4F7EEF953EC1A2BA0 +:10E89000E4F7EAF902460B4650465946E4F724F9F4 +:10E8A00053EC192BE4F7E0F953EC1B2BE4F7DCF9FC +:10E8B000E9F7EEFB306628E0DFF8B80ADFF8B81AAF +:10E8C000E4F7D2F9DFF8B42ADFF8B43AE4F7DEFA75 +:10E8D00082468B4653EC1A2BDFF8A80ADFF8A81AF9 +:10E8E000E4F7C2F953EC1A2BE4F7BEF952465B4643 +:10E8F000E4F7CCFA53EC192BE4F7B6F953EC1B2BE5 +:10E90000E4F7B2F9E9F7C4FB3066B4F9080002286D +:10E9100007D196ED180ADFEDA50A20EE200A86ED54 +:10E92000180A96ED189A96ED190A70EE099AC6ED36 +:10E93000199A29EE280ADFED9E0A20EE200A86EDBC +:10E940001A0AD6F854800720B8FBF0F0C0EBC000DC +:10E95000A8EB000004EB800080ED0D0A0020F066BB +:10E96000B8F1070F20D208E004EB850090ED0D1AF6 +:10E9700070EE810AC6ED1B0A6D1CD6ED1B0AADB206 +:10E98000A845F1D201EE105AB8EE411AC0EE810A44 +:10E99000C6ED1B0A14E004EB800090ED0D1A70EE3A +:10E9A000810AC6ED1B0A6D1CD6ED1B0AADB22846C6 +:10E9B0000728F0DBB1EE0C1AC0EE810AC6ED1B0A87 +:10E9C00010EE100AE9F73CFB41EC100B9FED79AB20 +:10E9D000B9F1040F53EC102BDFF8600C0BD1DFF80A +:10E9E000601CE4F741F953EC1A2BE4F74FFAE9F70E +:10E9F0004FFBB0670AE0DFF84C1CE4F735F953EC45 +:10EA00001A2BE4F743FAE9F743FBB067B06FE9F775 +:10EA100017FBDFF8342CDFF8343CE4F725F98246A5 +:10EA20008B462068E9F70CFB52465B46E4F71CF97D +:10EA300004460D4618EE100AE9F702FB0022DFF843 +:10EA4000103CE4F711F902460B460020DFF8041CE5 +:10EA5000E4F790FA22462B46E4F706F9E9F718FBAB +:10EA600000EE100A86ED1E0AD6ED1D0A70EE800A31 +:10EA7000C6ED1D0A781C306508F101017165BDF80D +:10EA80002020002A11D01018306550187065BDF88C +:10EA9000200001EE100AB8EE411A41EE099AC6EDC7 +:10EAA000199A41EE000AC6ED1D0ABDEC088BBDE8BF +:10EAB000F18F000001009040B8ED221C1818783F3B +:10EAC000F8B52DED028B0027002857D0354E96ED76 +:10EAD000168AF06DE9F7B4FA4FF06632DFF8783B4A +:10EAE000E4F7C2F802460B4614461D4618EE100A1B +:10EAF000E9F7A6FA22462B46E4F794F904D2708F80 +:10EB0000022801DB012718E09FED7F0AB4EE408A5E +:10EB1000F1EE10FA11D5244890ED050ADFED7B0ADD +:10EB2000B4EE600AF1EE10FA07DBDFED790AB4EE1D +:10EB3000600AF1EE10FA00D50127012F1ED196EDE3 +:10EB40001C0AF0EE000AB4EE600AF1EE10FA0AD5E3 +:10EB50009FED700AB4EE408AF1EE10FA03DB708F7D +:10EB6000022800DB0027104890ED1A0ADFED6A0A40 +:10EB7000B4EE600AF1EE10FA00D500270A484069A9 +:10EB8000DFF8881D08603846BDEC028BF2BD00003E +:10EB9000C41A0120F4170120341B012058DF002083 +:10EBA00040E30020A80D0120741801201EC47E3F00 +:10EBB000000070420000000000000C40F8B52DED90 +:10EBC000048B06460024DFF8C07CDFF8C05CE88ECA +:10EBD00003281DDA95ED160ADFED4E0AB4EE600A41 +:10EBE000F1EE10FA14DB95ED110AF2EE040AB4EE20 +:10EBF000600AF1EE10FA0BD595ED130ADFED4A0A23 +:10EC0000B4EE600AF1EE10FA02D50420B8800124B7 +:10EC100095ED138A9FEDB69BDFF89C0C90ED0C0AE6 +:10EC200038EE000A10EE100AE9F70AFA53EC192B35 +:10EC3000E4F71AF80022DFF8AC3CE4F7F3F821D34C +:10EC4000D5ED118A95ED120A38EE800A10EE100A01 +:10EC5000E9F7F6F953EC192BE4F706F80022DFF890 +:10EC60009C3CE4F7DFF80DD3B3EE040AB4EE408A1F +:10EC7000F1EE10FA06D4B1EE040AF4EE408AF1EE99 +:10EC800010FA02D50520B880012495ED160ADFEDB3 +:10EC9000A80AB4EE600AF1EE10FA29DB97ED040A37 +:10ECA000D7ED050A80EE200ADFEDA20AB4EE600A75 +:10ECB000F1EE10FA1CDB00EE106AB8EE400AD7ED58 +:10ECC000020AC0EE800AB6EE001AF4EE410AF1EE36 +:10ECD00010FA0DD5D7ED030A80EE800AF6EE000A91 +:10ECE000B4EE600AF1EE10FA02D51520B8800124C6 +:10ECF000102207F1080105F1B000E5F7F7FD204605 +:10ED0000BDEC048BF2BD00009A99993F01002042AE +:10ED10000000C84201000040CDCC4C3F000035430C +:10ED2000000090429429012000002042CDCCCCCCA0 +:10ED3000CCCCFC3F2DE9F8432DED028B08EE101AE8 +:10ED40000026DFF8484B616D4018DFF86C5B022845 +:10ED50001AD394ED160ADFED780AB4EE600AF1EEEC +:10ED600010FA11DB95ED0C0AD4ED130A80EE200A9F +:10ED7000DFED720AB4EE600AF1EE10FA04DBDFF8A0 +:10ED8000081B09228A80012602281CD39FED6C0AE9 +:10ED9000D5ED0C0A94ED131AC0EE810AF4EE400A88 +:10EDA000F1EE10FA0FDBD4ED120A94ED111AC0EE59 +:10EDB000810AF4EE400AF1EE10FA04DBDFF8C81A1B +:10EDC0000A228A800126002819D0DFF8BC7A686EF2 +:10EDD000E9F736F94FF03332DFF8183CE3F744FF38 +:10EDE00002460B4690469946786FE9F729F9424664 +:10EDF0004B46E4F717F802D20B20B880012694EDB9 +:10EE0000160ADFED500AB4EE600AF1EE10FA08DAE5 +:10EE100094ED170ADFED4C0AB4EE600AF1EE10FA39 +:10EE20001CDB94ED130ADFED490AB4EE600AF1EE43 +:10EE300010FA0BD494ED110ADFED450AB4EE600A26 +:10EE4000F1EE10FA02D4608F022807DBE08E03286F +:10EE500004DBDFF8340A0C218180012695ED0A0AD3 +:10EE6000DFED3A0AB4EE600AF1EE10FA08D494ED40 +:10EE70001C0AF1EE040AB4EE600AF1EE10FA14D5A1 +:10EE8000A86EE96E0818E3F7E9FF0022DFF8683B97 +:10EE9000E3F7EAFE0122DFF8643BF4F77FFF04D8D2 +:10EEA000DFF8E4090D2181801646B8EEC80ADFF8C4 +:10EEB000500BD5ED040AC0EE800AC0ED030AD5ED73 +:10EEC000050AC0EE800AC0ED040AD5ED060A80EE00 +:10EED000800A80ED050A0C2200F10C0104F1C0004B +:10EEE000E5F704FD3046BDEC028BBDE8F28300007F +:10EEF000000000000000E03F0020DFF890190A6DDC +:10EF000012F10A0F0FD29FEDD10AD1ED190AF4EEDA +:10EF1000400AF1EE10FA06DAD1ED1D0AF4EE400ACD +:10EF2000F1EE10FA00DB01207047000000007A4487 +:10EF3000010040403433333F010060400100A040F5 +:10EF40000100704101009040010080400000C84372 +:10EF50000000164300C06240000054400000A04082 +:10EF60002DE9F24F0446002500F08BFCDFF8946A8F +:10EF700028467065F0653066DFF80C092946818007 +:10EF8000204600F065F9DFF80479307B052805D1CB +:10EF900001203064284630733887F081F06CBDF86A +:10EFA000001010FA81F0F064D6F83480706C80455F +:10EFB00001D101203064D6F8389009EB49004FEABE +:10EFC000800ADFF8440A21684AF800100AEB000BB7 +:10EFD0006068CBF80400A068CBF80800BDF800100A +:10EFE000204600F0D3F9F8619BED020ADBED010A3F +:10EFF000DFF8140A5AF8000001EE100A21EE011A97 +:10F0000000EEA01A00EE001A11EE100AE9F718F847 +:10F0100041EC100BE4F7D2F851EC100BE9F738F89B +:10F0200000EE100AD6F83CA0BAF1000F12D1284623 +:10F03000DFF8CC2904E002EB810181ED060A401CD7 +:10F0400080B201460729F6DBF1EE0C0A60EE200AD9 +:10F05000C6ED070ADFF8A80900EB8900D0ED060A23 +:10F0600070EE600A96ED071A30EE811A86ED071AE7 +:10F0700080ED060ADFF8940900EB880080ED001AA5 +:10F0800096ED090A30EE010A86ED090ADFF87809E3 +:10F0900000EB890090ED150A71EE400ADFF8701957 +:10F0A00001EB8801C1ED000A80ED151A96ED0B0AFF +:10F0B00030EE200A86ED0B0A94EC031A86EC031A54 +:10F0C000F06F012806D1012030642846307338875C +:10F0D000F08166E0306D401C3065317B012901D044 +:10F0E00003292FD1022822D2F98E04291FDA786D44 +:10F0F000002856D196ED080A9FED971AB4EE410A02 +:10F10000F1EE10FA04D5F4EE410AF1EE10FA0BDA42 +:10F11000B9EE0C1AB4EE410AF1EE10FA41DBF4EE4E +:10F12000410AF1EE10FA3CD50120306439E027287D +:10F1300008D3398F002903D010FA81F04B2801D36E +:10F140000120306496ED080A00F088FA307B01282F +:10F1500027D1388F002824D0F189002921D003221B +:10F1600011FA80F03D2801DB01203064F88E04287C +:10F1700000DB0222788F824201D201203064B06E1F +:10F18000F066306F716F0818B16F0818B0662846C6 +:10F19000B06770673067FFF70DF805460020F08113 +:10F1A0007887B06CA8EB000000F1FA04FA20B4FBF9 +:10F1B000F0F0FA2101FB104BBBF1960F03D100F0E8 +:10F1C000A9FB01207065BBF1640F03D100F0CCFBFB +:10F1D00001207065F88A00280AD0BBF1320F0DD0EB +:10F1E000BBF14B0F0DD1002038830120706508E082 +:10F1F000B88A002805D0BBF17D0F02D101203883E9 +:10F200007065DFF80C0850F82800306208F1010042 +:10F210007063FA2801D10020706309F10100B06326 +:10F22000072801D10020B0630AF10100F063706D7E +:10F23000002808D007F184042C2207F10801204699 +:10F24000E5F754FBB4652846BDE8F28F8096184B6D +:10F25000F8B50446DFF8A8572F6DDFF85C6696ED29 +:10F26000000AD4ED000A70EEC00A01EE107AB8EE82 +:10F27000C11A60EE810AF5EE400AF1EE10FA17D5D8 +:10F28000D5ED170A30EE600A10EE100AE8F7D8FE46 +:10F2900021F00041DFF87C27DFF8A433F4F77EFD8E +:10F2A00002D8306F401C30673068E86578422865C6 +:10F2B0006F6D96ED010AD4ED010A70EEC00A01EE01 +:10F2C000107AB8EEC11A60EE810AF5EE400AF1EE4E +:10F2D00010FA16D5D5ED180A30EE600A10EE100AB5 +:10F2E000E8F7AEFE21F00041DFF82827D44BF4F711 +:10F2F00055FD02D8706F401C7067706828667842B0 +:10F300006865AF6D96ED020AD4ED020A70EEC00A90 +:10F3100001EE107AB8EEC11A60EE810AF5EE400AED +:10F32000F1EE10FA16D5D5ED190A30EE600A10EE9E +:10F33000100AE8F785FE21F00041DFF8D826C04B1F +:10F34000F4F72CFD02D8B06F401CB067B068686657 +:10F350007842A865F1BD00000100E040F016485079 +:10F36000FC18E93F3411363CBD52DABFBBB88D06FC +:10F37000F016B83F6891ED7C3F35CE3FB29DEFA7C8 +:10F38000C64BC73F0DE02D90A0F8A13FDFF8283510 +:10F3900090ED000AD3ED000A30EE600AD0ED010ACC +:10F3A00093ED011A70EEC10A90ED021AD3ED021A24 +:10F3B00031EE611AB5EE400AF1EE10FA02DDF0EE20 +:10F3C000401A01E0F1EE401AF5EE400AF1EE10FAB3 +:10F3D00002DDB0EE602A01E0B1EE602AB5EE401A1F +:10F3E000F1EE10FA02DDF0EE412A01E0F1EE412AE1 +:10F3F00071EE821A71EEA21AB5EE400AF1EE10FA21 +:10F4000002DDB0EE402A01E0B1EE402ADFF87824B8 +:10F41000D2ED022A32EE822A82ED022AF5EE400A6D +:10F42000F1EE10FA02DDB0EE602A01E0B1EE602AE2 +:10F43000D2ED032A32EE822A82ED032AB5EE401A7B +:10F44000F1EE10FA02DDB0EE412A01E0B1EE412A00 +:10F45000D2ED042A32EE822A82ED042A92ED052AA8 +:10F4600032EE212A82ED052A93ED042AD0ED002AFE +:10F4700032EE222A83ED042A93ED052AD0ED012AEB +:10F4800032EE222A83ED052A93ED062AD0ED022AD8 +:10F4900032EE222A83ED062AD86B002810D10020F4 +:10F4A00004E002EB8303C3ED091A401C80B203465B +:10F4B0000F2BF6DBB2EE0E2A21EE822A82ED182AFD +:10F4C000508802EB800393ED092A31EEC22AD2ED77 +:10F4D000182A32EE222A82ED182AC3ED091AF2EE1A +:10F4E0000E1AC2EE211ADFF8A433C3ED1C1ADFF89E +:10F4F000283593ED012A22EE202AD3ED002A62EE70 +:10F50000802AF5EE402AF1EE10FA0DD4B5EE402A2D +:10F51000F1EE10FA08D493ED023A23EE013AB5EE7B +:10F52000403AF1EE10FA5AD593ED023A23EE013A41 +:10F53000F4EE422AF1EE10FA0AD5F4EE432AF1EE87 +:10F5400010FA02D5F0EE623A0CE0F0EE433A09E030 +:10F55000B4EE432AF1EE10FA02D5F0EE423A01E0A1 +:10F56000F0EE433AF5EE403AF1EE10FAF4EE422AAC +:10F5700015DDF1EE10FA0AD5F4EE432AF1EE10FA99 +:10F5800002D5B0EE622A21E0B0EE432A1EE0B4EECE +:10F59000432AF1EE10FA19D4B0EE432A16E0F1EE48 +:10F5A00010FA0AD5F4EE432AF1EE10FA02D5B0EEC5 +:10F5B000622A09E0B0EE432A06E0B4EE432AF1EEF7 +:10F5C00010FA01D4B0EE432AB1EE422AD2ED1F2A3E +:10F5D000F4EE422AF1EE10FA01D582ED1F2A83EDF6 +:10F5E000000AC3ED010A83ED021A92ED1A0AF4EE45 +:10F5F000401AF1EE10FA01D5C2ED1A1A92ED1B0A6B +:10F60000B4EE610AF1EE10FA01D5C2ED1B1A9FEDBE +:10F61000BC0AF4EE401AF1EE10FA04D5536E13FA58 +:10F6200081F1516601E000215166401C508080B29A +:10F630000F2801D100205080506E70479A999999F7 +:10F640009999C93F9999B93F7B14AE47E17A743FC4 +:10F6500000004E400000F03F6666E63F70B52DEDBD +:10F66000048BB0EE408AF0EE608A9FEDA99A87483D +:10F67000C18E042901DBB0EE009AB5EE408AF1EEAE +:10F6800010FA07DBF5EE408AF1EE10FA02D5418F51 +:10F69000491C4187884E317B002907D0022900F0A0 +:10F6A0007F8041D3032900F0A480E6E019EE100A20 +:10F6B000E8F7C6FC41EC100B53EC102B0020DFF8F0 +:10F6C0005C13E3F7E3FB41EC190B18EE100AE8F7C3 +:10F6D000B7FC02460B4651EC190BF4F75FFB11D84F +:10F6E00018EE900AE8F7ACFC02460B4651EC190BF9 +:10F6F000E3F798FB06D2306D1028C0F0AF800020F1 +:10F700003065ABE0716BC24A52F8210000EE100A7E +:10F71000C349D1ED010AB4EE600AF1EE10FA40F1EE +:10F72000AC8081ED010AA8E0716BB94A52F8211052 +:10F7300000EE101ABA49D1ED000AF4EE400AF1EEDB +:10F7400010FA01D581ED000AB7EE000AB4EE408A46 +:10F75000F1EE10FAC0F29180F4EE408AF1EE10FA68 +:10F7600040F18B80316D01870020306519EE100A61 +:10F77000E8F766FC02460B460020AA49E3F7B4F915 +:10F7800002460B4614461D4618EE900AE8F758FC50 +:10F7900022462B46E3F746FB22D3022030736CE06F +:10F7A00019EE100AE8F74CFC41EC100B00209D49C3 +:10F7B00053EC102BE3F798F941EC190B18EE100AF3 +:10F7C000E8F73EFC53EC192BF4F7E8FA55D818EE9D +:10F7D000900AE8F735FC53EC192BE3F723FB4CD2E6 +:10F7E00003203073706B8A4951F820008C494860BF +:10F7F00043E0716B864A52F8210000EE100A8849F6 +:10F80000D1ED010AB4EE600AF1EE10FA01D581EDF6 +:10F81000010A9FED770AB4EE408AF1EE10FA2CD57A +:10F82000F4EE408AF1EE10FA27DB306DF081002013 +:10F83000306518EE900AE8F703FC02460B461446C2 +:10F840001D4619EE100AE8F7FBFB0022734BE3F7A5 +:10F850001DFB22462B46E3F7E5FA0CD2012030735C +:10F860006F490868F06548683066706B684A52F8FE +:10F870002000086001E000203073307BBDEC048B79 +:10F8800070BD6048007B704774180120A80D0120EE +:10F89000002804D05B49896D2C22E3F7D9B8704762 +:10F8A0006148416D002904D1818FC08F10FA81F029 +:10F8B0007047002070470000F417012051490020D4 +:10F8C000C8635948002242610222028305220A735A +:10F8D00000214165C165C166C1620161C1634163C7 +:10F8E0007047000000003E40002806D044494268AE +:10F8F0004A6002680A60008908817047000024405D +:10F90000EC51383E4948406E704700004C2E0120B3 +:10F910000000000010B5444CA08E002802D0022048 +:10F92000208301E00220208300206065E065E0661E +:10F93000E0622061A082A086E063D4F88000012804 +:10F9400001D1FEF78EFE3948C188002905D0A4F800 +:10F9500040100021C1800846E067E06F012802D115 +:10F960000620A4F8400010BD10B52F4CE08E0028F2 +:10F9700002D00020208301E0022020830020E062EA +:10F980002061082201462046E2F768FC0020E0865C +:10F99000E0822061E063D4F88000012803D1BDE853 +:10F9A0001040FEF75EBE10BD1F49B1F840208242F4 +:10F9B0000CD2CB8A002B02D04B6D934204D2A1F81B +:10F9C00040000020C86770471849C880704780B55C +:10F9D0000C480121C167FFF7C7FFFFF79BFF0C2011 +:10F9E000BDE80240E0E707480021C167704700001A +:10F9F000FEFF7FBF3333D33F0000E03F00804B402A +:10FA0000341B0120F4170120C41A012058DF002004 +:10FA100040E300209B999999C02C012000001C40D4 +:10FA2000B42D012000001CC0A80D01207418012075 +:10FA300010B50C460FF2F050E2F7B4FCDFF8A40565 +:10FA40000480001D00F033F800F064F800F012FAB2 +:10FA5000012010BD30B583B004460D4600F05BF9BF +:10FA6000214600F05AF9002D12D00FF2C850E2F7EB +:10FA700099FC00F050F900F03BF800F04CF900F070 +:10FA80003DF800A800F082F8DDE9000100F075F80B +:10FA9000DFF854058068BDE83E40004780B500F0BF +:10FAA00071F80FF2A050E2F77DFC012002BD0021A9 +:10FAB0000B4607E001EB410292001350121853600D +:10FAC0009360491C6429F5DB194604E000EB8102D0 +:10FAD000C2F8B034491C3229F8DB194680F8781591 +:10FAE00000F27850418081808160C160016170477F +:10FAF0000021C0F88015C0F8841570470021C0F8B7 +:10FB000088157047002190F87805012800D101215F +:10FB10000846704730B583B000A800F069F8DFF8F8 +:10FB2000C84400982060019D656000A800F085F839 +:10FB3000DFF8B804009901600199416000A800F065 +:10FB4000ABF8DFF8AC04009901600199416000A8AE +:10FB500000F0CDF8DFF89C04009901600199416044 +:10FB600000A800F0D1F8DFF8900400990160019935 +:10FB700041602068A060E56037BDDFF86C249060CC +:10FB8000D1600847DFF86004C0680047DFF85C1404 +:10FB9000D1E90023C0E900237047DFF85414D1E90C +:10FBA0000023C0E900237047DFF84814D1E900239F +:10FBB000C0E900237047DFF84014D1E90023C0E911 +:10FBC000002370471CB5002400F0A5F8FFF79AFF4A +:10FBD000002807D0082400A8FFF7D8FFDDE90001BE +:10FBE000FFF7CBFF204616BD0FF26440E2F7DABB09 +:10FBF000DFF808140A46DFF808140B46C0E90023B2 +:10FC000070471CB5002400F0CFF800280FD00FF289 +:10FC10004C40E2F7C7FB012400F07DF8FFF76EFFD0 +:10FC200000A8FFF7BAFFDDE90001FFF7A6FF2046B5 +:10FC300016BD0FF23440E2F7B5BBDFF8C8130A4631 +:10FC4000DFF8C4130B46C0E9002370471CB500F071 +:10FC5000ABF8002805D0012400F05DF8FFF74EFF57 +:10FC600014E0022400F010F900280FD00FF2044035 +:10FC7000E2F798FB062400F04EF8FFF739FF00A8E2 +:10FC8000FFF792FFDDE90001FFF777FF204616BD81 +:10FC90000FF2EC30E2F786BBDC490A46DC490B4642 +:10FCA000C0E9002370471CB500F000F9012808D115 +:10FCB000042400A8FFF77FFFDDE90001FFF75DFFE7 +:10FCC0000FE002280CD1072400F025F8FFF710FF01 +:10FCD00000A8FFF75BFFDDE90001FFF74EFF00E042 +:10FCE0000324204616BD0FF2A430E2F75BBBC949DE +:10FCF0000A46C9490B46C0E90023704700207047F7 +:10FD00000FF29830E2F74EBBC4490A46C4490B468D +:10FD1000C0E900237047C348704770B5044604F239 +:10FD200078550C20AA8800FB02420B681360AA8851 +:10FD300000FB02424B685360AA8800FB02408A68BD +:10FD4000826091ED020AD1ED010A91ED001A6888F6 +:10FD500004EB800621EE011A00EEA01A00EE001A54 +:10FD600011EE100AE8F76CF941EC100BE3F726FAF4 +:10FD700051EC100BE8F78CF9C6F8B004A888401CC9 +:10FD8000A8806888401C6880A888642801DB00205F +:10FD9000A8806888322804DB00206880012084F86D +:10FDA000780570BD0000000070B52DED028B0024B9 +:10FDB0009FED888ADFED878A2546FFF7ACFF064670 +:10FDC000B6F87A05322806D10FF2E020E2F7EAFA17 +:10FDD0002046A6F87A053046FFF794FE002845D065 +:10FDE000204610E006EB8001D1F8B01400EE101AA6 +:10FDF00038EE008ADFED780AB4EE600AF1EE10FA10 +:10FE000000DB6D1C401C3228ECDB9FED740A88EE91 +:10FE1000008A20460AE006EB8001D1F8B01400EE1B +:10FE2000101A30EE480A40EE008A401C3228F2DBFD +:10FE3000B6F87A0506EB8000D0F8B00400EE100AA0 +:10FE4000F3EE020AB4EE600AF1EE10FA0EDB9FED5B +:10FE5000630A88EE800AF1EE040AB4EE600AF1EE5D +:10FE600010FA03DBADB2032D00DB01242046BDEC0C +:10FE7000028B70BD80B5FFF74EFFFFF739FEFFF72D +:10FE80004AFFBDE8024039E610B50024FFF743FF02 +:10FE9000D0F88815491CC0F88815B1F5FA7F03DD44 +:10FEA0002146C0F888150124204610BD38B500242D +:10FEB000FFF731FF05469FED470ADFED460A9FED4C +:10FEC000451ADFED441A9FED432ADFED422A204612 +:10FED00010E00C2141434A1992ED003A30EE030A3A +:10FEE000491991ED013A70EE830A91ED023A31EE33 +:10FEF000031A401C6428ECDB9FED393A80EE030ABC +:10FF0000C0EE830A81EE031A204616E00C2141431D +:10FF10004A1992ED003A33EE403A43EE031A49197A +:10FF200091ED013A33EE603A03EE032A91ED023A85 +:10FF300033EE413A43EE032A401C6428E6DB9FED92 +:10FF4000280A82EE800ADFED260AC1EEA00AB7EE8B +:10FF5000001AF4EE410AF1EE10FA2DD5DFED200A79 +:10FF6000C2EE200AF4EE410AF1EE10FA24D5F7EEC3 +:10FF7000000AB4EE600AF1EE10FA1DD5D5F880053E +:10FF8000401CC5F8800500EB8001880042F2117129 +:10FF900088421DDB2046C5F8800505F28050416887 +:10FFA000491C41600F480088814211DB0FF20810A4 +:10FFB000E2F7F8F901240BE00FF20C10E2F7F2F986 +:10FFC0002046C5F8800505F5B06021464160022451 +:10FFD000204632BD000000000100604100004842A0 +:10FFE0000000C84278CB0020282C0120742D01206D +:10FFF0007C2D0120842D01208C2D0120C5FB0108C2 +:020000022000DC +:10000000E9FB010803FC010833FC01084DFC010871 +:1000100091FC0108A7FC0108E7FC0108FDFC0108B0 +:1000200001FD01087CCB00202341532041535F494F +:100030006E69740023415320555352494E50555414 +:10004000000000002341532041535F46696E2000A9 +:100050002341532053545F53530A0000234153203C +:1000600044545F53484B00002341532053545F5383 +:1000700044530A002341532041535F54454E00002E +:100080002341532053545F534F530A0023415320BD +:1000900053545F4E4D53530A000000002341532038 +:1000A00053545F41534E4D4F530A00002341532098 +:1000B00041535F4F460000002341532041535F41AD +:1000C000425F44540000000023415320434300009A +:1000D00010B5DFF8AC4A03220021201DE2F7BEF87C +:1000E000042200212046E2F7B9F804220021DFF8BB +:1000F000940AE2F7B3F80822002104F11400E2F7B1 +:10010000ADF80822002104F11C00E2F7A7F808224C +:10011000002104F12400E2F7A1F8201DE06324642B +:100120000020A060E06220636064A064E064206559 +:100130006065A065E06520666066A066E066E060D8 +:10014000606320742087C8220146DFF8B80CE2F70C +:1001500085F8C8220021DFF8B00CE2F77FF8C8224A +:100160000021DFF8A80CE2F779F8C8220021DFF8B7 +:10017000A00CE2F773F8C8220021DFF8980CE2F730 +:100180006DF8C8220021DFF8900CBDE81040E2F7BE +:1001900065B8002805D0DFF8E819C96B0322E2F73B +:1001A00047BC704770B584B0DFF8D4291378DFF806 +:1001B000D449D578E678B54218D12578AB4215D127 +:1001C00055786678B54211D19578A478A5420DD1BD +:1001D00014790578A54203D0042D07D0042C05D04E +:1001E0000C789679B4420DD0042D0BD194780294FA +:1001F000547801940093537B0A7801780FF2080039 +:10020000E2F7D0F87FBD00004D5F50443A414356BD +:100210002025642025642025642025642025642071 +:1002200025640A0010B5C8220121DFF8E40BE2F7CB +:1002300015F8DFF84C49C820E0820020A082A061B8 +:10024000C8220121DFF8CC0BE2F708F8C820E083D0 +:100250000020A0832062C8220121DFF8BC0BE1F757 +:10026000FDFFC820E0840020A084A06210BD2DE91D +:10027000F841068844888588B0F806E000273846AB +:10028000F0468DF80280F446BCF18D0F03D34FF099 +:10029000010C81F800C0DB89032B04D0042B02D0B1 +:1002A000D2B2012A01D102460A70652E31D27445BC +:1002B00016DB0978AC4209DB01291FD00127214652 +:1002C0008D2921D2652C24D3384622E0012915D06E +:1002D000022729468D2917D2652D1AD3012018E04F +:1002E000754508DA042771468D290DD2BEF1650FD8 +:1002F0000FD301200DE00978012901D1042708E07E +:10030000022729468D2901D3022002E0652D00D362 +:1003100001208DF800708DF801000098BDE8F28191 +:100320002DE970432DED108B82B0B0EE40AAB0EEF7 +:10033000608AF0EE418ADFF84868707A0146D6EDAF +:1003400016AA96ED15BAD6ED14BA96ED13CAD6EDE7 +:1003500012CA96ED111A28EEA8DA68EE08DA2AEE2B +:100360000AEADFF8A82ADFF8A03ADFF8984A357AD7 +:10037000002D40F0AB8004EB810484ED00AA03EB78 +:10038000810383ED008A02EB8101C1ED008A31EE29 +:100390000A0A86ED110A3CEE888A86ED128A7CEE06 +:1003A000288AC6ED138A3EEE2BAA86ED14AA3DEEEE +:1003B0008BBA86ED15BA7DEE2AAAC6ED16AA401CA8 +:1003C0007072C0B2322840F07F800120307200206D +:1003D00070729FEDB89B10EE100AE7F731FE53ECF8 +:1003E000192BE2F741FCE7F753FE0BEE900AC6ED3E +:1003F00011BA18EE100AE7F723FE53EC192BE2F7B7 +:1004000033FCE7F745FE08EE100A86ED128A18EE77 +:10041000900AE7F715FE53EC192BE2F725FCE7F7F6 +:1004200037FE08EE900AC6ED138A1AEE100AE7F7B7 +:1004300007FE53EC192BE2F717FC04460D462BEE92 +:10044000AB0A10EE100AE7F7FBFD02460B4620460A +:100450002946E2F749FBE7F71BFE30651BEE100A61 +:10046000E7F7EEFD53EC192BE2F7FEFB04460D46D1 +:1004700028EE080A10EE100AE7F7E2FD02460B46E6 +:1004800020462946E2F730FBE7F702FE70651AEED8 +:10049000900AE7F7D5FD53EC192BE2F7E5FB04468C +:1004A0000D4628EEA80A10EE100AE7F7C9FD02462D +:1004B0000B4620462946E2F717FBE7F7E9FDB06552 +:1004C000C820B082B083B0840020EDE08DED001A2A +:1004D00054F821000EEE900A53F821000FEE100A96 +:1004E00052F821000FEE900A9FED729B11EE100A58 +:1004F000E7F7A6FD04460D463AEE6E0A10EE100A26 +:10050000E7F79EFD53EC192BE2F7AEFB22462B4694 +:10051000E2F7BCFCE7F7BCFD0AEE100A86ED11AA73 +:100520001CEE900AE7F78CFD04460D4638EE4F0AA4 +:1005300010EE100AE7F784FD53EC192BE2F794FB59 +:1005400022462B46E2F7A2FCE7F7A2FD08EE100ACE +:1005500086ED128A1CEE100AE7F772FD04460D467E +:1005600038EEEF0A10EE100AE7F76AFD53EC192B8C +:10057000E2F77AFB22462B46E2F788FCE7F788FD94 +:1005800008EE900AC6ED138A1BEE900AE7F758FDB5 +:10059000804689469DED000ADDED000A20EE200A26 +:1005A0000AEE4A0A10EE100AE7F74AFD04460D4625 +:1005B0000EEEEEEA1EEE100AE7F742FD53EC192BA1 +:1005C000E2F752FB22462B46E2F760FC42464B46DE +:1005D000E2F75CFCE7F75CFD0AEE100A86ED14AA70 +:1005E0001BEE100AE7F72CFD804689462CEEAC0A7C +:1005F00008EE480A10EE100AE7F722FD04460D4601 +:100600004FEE4FDA1DEE900AE7F71AFD53EC192B67 +:10061000E2F72AFB22462B46E2F738FC42464B46DD +:10062000E2F734FCE7F734FD08EE100A86ED158A90 +:100630001AEE900AE7F704FD804689462CEE0C0A74 +:1006400008EEE80A10EE100AE7F7FAFC04460D4639 +:100650000FEEEFDA1DEE100AE7F7F2FC53EC192B60 +:10066000E2F702FB22462B46E2F710FC42464B46DD +:10067000E2F70CFCE7F70CFD00EE100A86ED160A17 +:100680006AEE0A0A48EE080A40EE000A10EE900AE6 +:10069000E7F7D6FC41EC100BE2F790FD51EC100BA4 +:1006A000E7F7F6FCF065012002B0BDEC108BBDE869 +:1006B000708300007B14AE47E17A943FF8B50024C4 +:1006C00025462646DFF8B874797ADFF8380750F8FF +:1006D000212000EE102ADFF8302752F8213000EEFA +:1006E000903ADFF8283753F821C001EE10CAF0EE37 +:1006F000401AB0EE602AF0EE412A97ED113AD7ED9C +:10070000123A97ED134AF0EE404AB0EE605AF0EE1E +:10071000415AB0EE406AF0EE606AB0EE417A4FF0B6 +:10072000010C2CE0B4EE414AF1EE10FA04D5F4EEDF +:10073000442AF1EE10FA09D4B4EE441AF1EE10FA9C +:1007400015D5B4EE624AF1EE10FA10D5641C9FED97 +:10075000C02AF4EE421AF1EE10FA08DB6D1C9FED90 +:10076000CA2AF4EE421AF1EE10FA00DB761CF0EE23 +:10077000401AB0EE602AF0EE412A0CF1010CBCF1F7 +:10078000320F80F0A580491CC9B2322900D1002166 +:1007900050F821E000EE10EA52F821E000EE90EA75 +:1007A00053F821E001EE10EAF4EE404AF1EE10FABF +:1007B00002D5F0EE404A06E0B4EE460AF1EE10FA39 +:1007C00001D5B0EE406AB4EE605AF1EE10FA02D5EF +:1007D000B0EE605A06E0F4EE660AF1EE10FA01D5CA +:1007E000F0EE606AF4EE415AF1EE10FA02D5F0EE46 +:1007F000415A06E0B4EE471AF1EE10FA01D5B0EE18 +:10080000417A70EE617AF5EE407AF1EE10FA01D598 +:1008100071EEC07AB4EE403AF1EE10FA04D5F4EE7F +:10082000431AF1EE10FA09D4B4EE430AF1EE10FACD +:1008300015D5B4EE613AF1EE10FA10D5641CDFED77 +:10084000841AF4EE617AF1EE10FA08DB6D1CDFED2C +:100850008E1AF4EE617AF1EE10FA00DB761C70EE7F +:10086000C21AF5EE401AF1EE10FA01D572EE601AD6 +:10087000F4EE603AF1EE10FA04D5B4EE632AF1EE2C +:1008800010FA09D4F4EE630AF1EE10FA15D5F4EE7D +:10089000423AF1EE10FA10D5641C9FED6D2AF4EE89 +:1008A000421AF1EE10FA08DB6D1C9FED772AF4EE88 +:1008B000421AF1EE10FA00DB761C71EE621AF5EEC8 +:1008C000401AF1EE10FA7FF52DAF72EEC11A29E74A +:1008D00034EEC60A87ED180A75EE660AC7ED190AE6 +:1008E00035EEC71A87ED1A1A20EE000A00EEA00AAC +:1008F00001EE010A10EE100AE7F7A2FB41EC100B23 +:10090000E2F75CFC51EC100BE7F7C2FBF866BC8524 +:10091000FD853E86F1BD000010B501460020984CD3 +:1009200042290ED194ED1B0ADFED8F0AB4EE600A66 +:10093000F1EE10FA05D5A18E142904DA491CA1861E +:1009400001E00146A186A18E142907DB607B012806 +:1009500001D1FFF767FC012000216173207010BDF9 +:1009600038B50024864D95ED170ADFED800AB4EE08 +:10097000600AF1EE10FA08DA95ED1B0ADFED7C0A49 +:10098000B4EE600AF1EE10FA05DBA87B142807D25A +:10099000401CA87304E0A87B002801D0401EA87367 +:1009A000A87B002805D00124687B002801D1FFF72F +:1009B00039FC6C70204632BD38B50024704D95ED81 +:1009C000140AD5ED150A30EE200AD5ED160A80EE90 +:1009D000800ADFED680AB4EE600AF1EE10FA17DB68 +:1009E000D5ED1A0A9FED641AF4EE410AF1EE10FA01 +:1009F0000EDBB2EE041AF4EE410AF1EE10FA07D55E +:100A0000002805D1E87B1E2816DA401CE87313E0A5 +:100A1000DFED5A0AB4EE600AF1EE10FA07DB0028A7 +:100A200005D1E87B1E2807DA401CE87304E0E87B68 +:100A3000002801D0401EE873E87B1F2805DB012455 +:100A4000687B002801D1FFF7EDFBAC70204632BD7A +:100A50009A99993EDFF8241C0078042811D1487B2C +:100A600000280ED1488EB0F5AF7F02DA401C4886D0 +:100A70007047B0F5AF7F06DB012048730020488641 +:100A800070470020488670470100003F0278042A22 +:100A90000CD1DFF8E82B537B002B07D1528EB2F537 +:100AA000AF7F03D201220270002008707047DFF888 +:100AB000CC2B138F007804281DD10878002803D090 +:100AC000022814D00AD317E0180003D04C2801DA0A +:100AD0005B1E11E04C280FDB4B230DE018464B2822 +:100AE00001DA5B1C08E04C2806DB4B2304E0AF2B4B +:100AF00002D25B1C00E000239BB21846322802DAC7 +:100B00000020087006E0962802DA0120087001E053 +:100B10000220087013877047DFF8603B00780428D4 +:100B200012D1087800280FD1587B01280CD1D88E1B +:100B300042F22831884207DA422A02D1C01CD88604 +:100B400004E0401CD88601E00020D886D88E42F20E +:100B50002831884206DB00205873D8860FF678309B +:100B6000E1F720BC704700007F8CB93E010048438C +:100B70000100F041010080409A9939400100A041F4 +:100B8000E4190120382E01202DE9F24F90B00546DE +:100B900095ED021AD5ED010A95ED000AFFF7C0FBAD +:100BA000002800F02B81DFF8D44A607A95492A6842 +:100BB00041F8202094496A6841F820209349AA68A6 +:100BC00041F82020401C6072C0B2322801D10020C0 +:100BD0006072FFF773FDBDF84000FFF79DFE05460C +:100BE000FFF7BEFE0646FFF7E7FE07464FF0000898 +:100BF000C146012D04D14FF001084FF00209B5E0C4 +:100C000057EA060040F09E8004A8FEF741FE94F8E3 +:100C10000AA0DFF8FCB11AF80B008DF8000000F014 +:100C20002BF90AF80B0004F1140201469DF80000AC +:100C300000F0F4F804AB2A4604F10B0104F11400AF +:100C4000FFF715FB039094F80AA0DFF8C8B11AF873 +:100C50000B008DF8000000F0ABF901460AF80B100C +:100C600004F11C029DF8000000F0D8F804AB2A46FD +:100C700004F10C0104F11C00FFF7F9FA029094F85A +:100C80000AA0DFF894B11AF80B008DF8000000F00C +:100C900055FB0AF80B0004F1240201469DF8000000 +:100CA00000F0BCF804AB2A4604F10D0104F1240065 +:100CB000FFF7DDFA0190A07A401CA072C0B2C828EC +:100CC00001D14046A0729DF80400002832D09DF862 +:100CD0000C0004280CD19DF80810042908D19DF8B7 +:100CE0000410042904D04FF004084FF0010921E05A +:100CF0009DF80410042904D14FF004089DF80590D4 +:100D000018E0012809D19DF80820012A05D1012900 +:100D100003D14FF00108C1460CE0012805D09DF831 +:100D20000800012801D0012902D14FF0010801E09B +:100D30004FF00208607B002802D10021E17221738C +:100D4000E07013E0607B012802D1042020740DE0E4 +:100D5000A07ADFF8C4B000EB0B01643803D591F83A +:100D60006400207402E011F8640C207400208DF8F7 +:100D70000000607B01280CD146EA0500384308D109 +:100D800004208DF80100B8F1040F0ED18DF8009009 +:100D90000BE0012E01D0012F03D1207C8DF8010042 +:100DA00003E08DF801808DF800900DF10100FFF750 +:100DB00051FE00A90DF10100FFF768FEBDF84020CB +:100DC00000A90DF10100FFF7A7FE00A90DF1010038 +:100DD000FFF76DFE00A90DF10100FFF7E3F99DF8A3 +:100DE00001002071012060719DF80000A071201D9C +:100DF000E0632464DFF8DC082168016011B0BDE81D +:100E0000F08F0000740E01203C0F0120041001201F +:100E1000CC100120941101205C120120042913D868 +:100E2000DFE801F003070B120F001188491C118045 +:100E30000AE05188491C518006E09188491C918044 +:100E400002E0D188491CD180042813D8DFE800F0E3 +:100E500003070B120F001088401E10807047508847 +:100E6000401E508070479088401E90807047D08808 +:100E7000401ED08070470000DFF80008018E102966 +:100E80003EDB828D2F2A01DB0420704790ED160A8D +:100E9000DFED3E0AB4EE600AF1EE10FA25DB2129FF +:100EA00001DB04207047202A01DB01207047DFEDC1 +:100EB000380AB4EE600AF1EE10FA10DB1D2A0CDBE2 +:100EC00090ED150ADFED330AB4EE600AF1EE10FA88 +:100ED00001DB0120704702207047022070471B2A67 +:100EE00001DB0120704702207047DFED2B0AB4EED2 +:100EF000600AF1EE10FA01DB042070470120704710 +:100F000090ED150ADFED250AB4EE600AF1EE10FA55 +:100F10003ADB90ED160ADFED220AB4EE600AF1EE3C +:100F200010FA2BDB828D1B2A0EDBDFED1E0AB4EEDE +:100F3000600AF1EE10FA05DB222A01DB012070477E +:100F40000220704701207047172A15DBDFED160AD3 +:100F5000B4EE600AF1EE10FA01DB0220704790ED6A +:100F6000140ADFED120AB4EE600AF1EE10FA01DBAA +:100F7000022070470120704702207047092901DBD9 +:100F800002207047022070470120704724622A3EE9 +:100F9000D3DF1B3FE981EF3D90C2F53C37C5833D70 +:100FA0002E3AB93D170F1B3F431E193F75B04E3EF9 +:100FB000DFF8C806818D90ED150A2029C0F21F8147 +:100FC000DFEDBD0AB4EE600AF1EE10FAC0F2FD806A +:100FD0002F2932DBC18D162901DB04207047D0EDAB +:100FE0001A0A9FEDB61AF4EE410AF1EE10FA0EDB82 +:100FF000DFEDB30AB4EE600AF1EE10FA05DB142956 +:1010000001DB042070470120704701207047D0EDBC +:10101000180A9FEDAC1AF4EE410AF1EE10FA0ADB61 +:10102000DFEDA90AB4EE600AF1EE10FA01DB04204C +:1010300070470120704704207047D0ED180A9FEDDB +:10104000A31AF4EE410AF1EE10FA79DB90ED191AC9 +:10105000DFED9F1AB4EE611AF1EE10FA19DB028E81 +:101060000F2A05DB242901DB04207047022070478A +:1010700090ED140ADFED970AB4EE600AF1EE10FA73 +:1010800001DB01207047082A01DB042070470120A2 +:1010900070479FED911AF4EE410AF1EE10FA27DB4A +:1010A00090ED141ADFED8D1AB4EE611AF1EE10FA1C +:1010B0000ADB9FED8B0AF4EE400AF1EE10FA01DB39 +:1010C00004207047012070479FED861AB4EE410A54 +:1010D000F1EE10FA0ADB9FED840AF4EE400AF1EE1D +:1010E00010FA01DB01207047022070470120704791 +:1010F0009FED7E1AB4EE410AF1EE10FA01DB0420F6 +:10110000704790ED160A9FED7A1AB4EE410AF1EE9F +:1011100010FA0ADB2C2906DB008E072801DB0420ED +:10112000704701207047012070479FED720AF4EE6E +:10113000400AF1EE10FA01DB0420704701207047ED +:101140009FED6D1AB4EE410AF1EE10FA01DB0420B6 +:1011500070479FED6A1AF4EE410AF1EE10FA01DBD6 +:101160000120704790ED1A1ADFED651AB4EE611A8E +:10117000F1EE10FA01DB012070479FED621AB4EE28 +:10118000410AF1EE10FA01DB042070479FED5E0A80 +:10119000F4EE400AF1EE10FA01DB0120704790ED09 +:1011A000190ADFED5A0AB4EE600AF1EE10FA01DB1B +:1011B00004207047DFED560AB4EE600AF1EE10FA33 +:1011C00001DB0120704704207047DFED520AB4EEC6 +:1011D000600AF1EE10FA10DB2F2901DB04207047C2 +:1011E00090ED140ADFED4C0AB4EE600AF1EE10FA4D +:1011F00001DB012070470420704701207047DFEDBC +:10120000470AB4EE600AF1EE10FA2ADB172926DB52 +:1012100090ED160ADFED420AB4EE600AF1EE10FA24 +:1012200001DB0220704790ED140ADFED3E0AB4EEB8 +:10123000600AF1EE10FA01DB02207047192901DB88 +:101240000120704790ED1A0ADFED370AB4EE600A0C +:10125000F1EE10FA01DB01207047022070470220F6 +:101260007047DFED320AB4EE600AF1EE10FA20DBCF +:1012700090ED180ADFED2E0AB4EE600AF1EE10FAD6 +:1012800015DB90ED190ADFED2B0AB4EE600AF1EEE2 +:1012900010FA0ADBDFED280AB4EE600AF1EE10FA6C +:1012A00001DB0120704704207047012070470420B3 +:1012B00070470120704700BFCA8AE13BB58C1F40D0 +:1012C00012A53D3DA7B2503FD9D04D3D15053A3F3F +:1012D000DB56DD3FF33C383D7179823F91DAD43EF5 +:1012E000E5D54940AEDB203E42F01440910F3A3D37 +:1012F0006687F83C60CB4B3F6631B13CF0C6163F89 +:1013000050701E40CD04433C4089BF3E8770C43EB0 +:10131000D89DBE3E7864AC3B3A24353BB6A1823DB5 +:1013200099BA1B3F172D503EEC531D40371A403CD5 +:10133000C5210B3FA43B983F446F9F3FCF48C18DD1 +:101340002329C0F2C0802F2930DB332901DB0420A0 +:10135000704790ED1A0ADFEDBD0AB4EE600AF1EEB7 +:1013600010FA11DB018E08290CDB90ED180ADFED75 +:10137000B80AB4EE600AF1EE10FA01DB0120704702 +:10138000042070470120704790ED180ADFEDB10A84 +:10139000B4EE600AF1EE10FA06DB008E0D2801DBD8 +:1013A00004207047012070470420704790ED190A0F +:1013B000D0ED180A9FEDA81AF4EE410AF1EE10FAEA +:1013C00042DB9FEDA61AB4EE410AF1EE10FA11DBF2 +:1013D000018E0F2901DB0420704790ED140ADFED28 +:1013E000A00AB4EE600AF1EE10FA01DB01207047AA +:1013F0000420704790ED140A9FED9A1AF4EE410A0A +:10140000F1EE10FA15DBDFED980AB4EE600AF1EEAA +:1014100010FA0CDB90ED1A0ADFED940AB4EE600AC4 +:10142000F1EE10FA01DB0120704704207047012023 +:101430007047DFED8F0AB4EE600AF1EE10FA01DBBF +:1014400004207047012070479FED8A1AB4EE410ACC +:10145000F1EE10FA31DB90ED1A1ADFED871AB4EED7 +:10146000611AF1EE10FA06DB008E092801DB042078 +:101470007047012070479FED821AB4EE410AF1EEE9 +:1014800010FA01DB042070479FED7E1AF4EE410A4A +:10149000F1EE10FA01DB01207047808D2A2801DB74 +:1014A00004207047DFED780AB4EE600AF1EE10FA1E +:1014B00001DB0420704701207047282901DB04204C +:1014C00070470120704790ED150ADFED700AB4EE09 +:1014D000600AF1EE10FA5CDBD0ED1B0A9FED6C1A8E +:1014E000F4EE410AF1EE10FA2FDB17292BDB90ED19 +:1014F000140AD0ED160A9FED671AF4EE410AF1EED8 +:1015000010FA15DBDFED640AB4EE600AF1EE10FAB2 +:101510000CDB90ED180ADFED610AB4EE600AF1EE23 +:1015200010FA01DB0120704702207047022070474B +:10153000DFED5B0AB4EE600AF1EE10FA01DB022087 +:10154000704701207047022070479FED561AF4EE55 +:10155000410AF1EE10FA1ADB818D19290CDB90EDAE +:10156000160ADFED510AB4EE600AF1EE10FA01DB63 +:101570000220704701207047DFED4C0AB4EE600A8C +:10158000F1EE10FA01DB02207047012070470420C1 +:101590007047DFED470AB4EE600AF1EE10FA53DB54 +:1015A000D0ED180A9FED431AF4EE410AF1EE10FA5D +:1015B0001EDB9FED411AB4EE410AF1EE10FA15DB85 +:1015C00090ED1B0A9FED3D1AB4EE410AF1EE10FAC0 +:1015D00001DB012070479FED3A0AF4EE400AF1EE7C +:1015E00010FA01DB0120704704207047012070478A +:1015F000DFED340AB4EE600AF1EE10FA17DB90ED7D +:10160000190ADFED310AB4EE600AF1EE10FA01DBDF +:101610000420704790ED140ADFED2C0AB4EE600A46 +:10162000F1EE10FA01DB012070470420704790EDC5 +:10163000160ADFED270AB4EE600AF1EE10FA01DBBC +:101640000420704701207047012070478BC71F405E +:1016500036054D40F9A78E3F55A85A3FDB56DD3F72 +:101660003886403D7179823F9E48D83E79977440D4 +:10167000753E3C3D3BAEAE3E350D1F40E4190120AA +:1016800082742D3FA43C173F9BAEE73EB6A1823D3E +:10169000878C6F4099BA1B3F6F69453ECC9E2A40AC +:1016A0008DBA663E8C5044409948D13E81B6953DF6 +:1016B0007313B53B63D5083FDCF93E3DCDED2540C6 +:1016C000D064833F21CB023CD274E63EDF57E53B3A +:1016D0007B6A753D382E01205B4D5F50443A414393 +:1016E000565D204C6F636B204F66660038B5DFF89F +:1016F000B0475022002104F13000E0F7AFFD502246 +:101700000021E0F7ABFDDFF89C575022002105F1E6 +:101710002800E0F7A3FD50220021DFF88C07E0F756 +:101720009DFD50220021DFF88407E0F797FD50224D +:101730000021DFF87C07E0F791FD00202070607049 +:1017400020716071A070E070A07120816081DFF86D +:101750006407C4F880009FEDC80B84ED040B84ED92 +:10176000060B84ED080B84ED0A0B0020A86731BD41 +:101770002DE9F84F2DED048B84B0B0EE408ADFF8F0 +:101780002047218900EB010BA4F808B061894518B6 +:101790006581A079192803DA401CA07184ED208AA4 +:1017A0009FEDB20AB4EE408AF1EE10FAC0F2178152 +:1017B000D4ED200AF4EE400AF1EE10FAC0F20F81E7 +:1017C000A0791928C0F20B811FFA8BFBBBF1C30F64 +:1017D000C0F2058194F800A05646DFF8CC7607EBFE +:1017E000860080ED008A84ED208A94F80190B9F19A +:1017F000000F04D187ED148A87ED158A52E0D7EDEA +:10180000168A9FED9B9B97ED140A28EE800A10EE36 +:10181000100AE6F715FCCDE9020118EE900AE6F78A +:101820000FFC02460B4651EC190BE1F75DF9CDE9CF +:10183000000118EE100AE6F703FCDDE90023E1F7EA +:1018400013FADDE90223E1F721FBE6F721FC08EEBC +:10185000100A87ED148AD7ED178A97ED150A28EE3E +:10186000800A10EE100AE6F7EBFBCDE9020118EE54 +:10187000900AE6F7E5FB02460B4651EC190BE1F73F +:1018800033F9CDE9000118EE100AE6F7D9FBDDE9DE +:101890000023E1F7E9F9DDE90223E1F7F7FAE6F7DA +:1018A000F7FB7865ADB2B5F57A7F13DDA078DFF888 +:1018B00000167A6D41F82020401CA070C0B2142898 +:1018C00001D10020A070E078142801DA401CE070FB +:1018D000002060814D46142D30D106F10108B8F189 +:1018E000140F01D14FF0000857F8280008EE100A35 +:1018F000E6F7A6FB02460B46D4E90401E1F7F4F84B +:10190000C4E9040128EE080A10EE100AE6F798FB75 +:1019100002460B46D4E90601E1F7E6F8C4E9060100 +:10192000DFF8880550F82800E6F78AFB02460B46E8 +:10193000D4E90801E1F7D8F8C4E9080157F826000E +:1019400008EE100AE6F77CFBD4E90423E1F79EFADF +:10195000C4E9040128EE080A10EE100AE6F770FB4D +:10196000D4E90623E1F792FAC4E906015246494652 +:10197000384600F0ADF9DFF8340500EB860080ED65 +:10198000000A10EE100AE6F75BFBD4E90823E1F742 +:101990007DFA41EC180B84ED088B04EB8600796D21 +:1019A0000163DFF8000520F816B0142D02DA09F102 +:1019B000010060706078E1F75BFA02460B4651EC7B +:1019C000180BE1F7D7FAC4E90A010AF10100207007 +:1019D000C0B2142801D1002020700020208104B062 +:1019E000BDEC048BBDE8F18F80B5DFF8B4048078DE +:1019F000411E00D51431801F00D51430DFF8B0240B +:101A000002EB810191ED000A02EB8000D0ED000AAB +:101A100030EE600A10EE100AE6F712FB21F00041EA +:101A2000E6F736FB00EE100A01BD80B5DFF8700462 +:101A30008078411E00D51431801F00D51430DFF8A6 +:101A40006C2402EB810191ED000A02EB8000D0EDE5 +:101A5000000A30EE600A10EE100AE6F7F1FA21F003 +:101A60000041E6F715FB00EE100A01BD0100FA4344 +:101A7000000000000000F03F000000000000000037 +:101A80002DE9F8432DED0A8BB0EE409A8146884649 +:101A900000242546DFEDBA8A9FEDB98ADFEDB89ABA +:101AA0005FFA89F9B9F1040F04D19FEDB6AADFED11 +:101AB000B6AA03E09FEDB5AADFEDB5AADFF8E063B3 +:101AC0007078142840F0FE80F0780728C0F2FA8081 +:101AD000B5EE409AF1EE10FA40F3F480FFF784FF80 +:101AE000B0EE40BAFFF7A1FFF0EE40BADFF8B473F2 +:101AF000B4EE4BAAF1EE10FA32D596ED0ACB1AEEFF +:101B0000900AE6F79DFA53EC1C2B23F00043E1F713 +:101B100089F925D251EC1C0B21F00041DFF8982304 +:101B2000DFF89833E1F77EF91AD29FED9A0AF4EEC6 +:101B300040BAF1EE10FA13D597ED1E0AB5EE400A41 +:101B4000F1EE10FA01D1224602E0F86FA8EB000294 +:101B50004B4671783078401E00F01EF9044602E0D2 +:101B60002046B867F867002C00F0A68097ED1E0AA3 +:101B7000B5EE400AF1EE10FA04D1C7F87C804FF0C0 +:101B80007E50B867284604E037F811104D19ADB201 +:101B9000401C80B201461429F6DB2846E1F768F9BB +:101BA000DFF81C23DFF81C33E1F75EF8E6F770FA84 +:101BB00009EE900A19EE100AE6F742FAC24AC34B40 +:101BC000E1F752F8E6F764FA00EE100A29EE809A7F +:101BD0003078411E00D514317278801A00D5143047 +:101BE00006EB810191ED0C0A06EB8000D0ED0C0AAA +:101BF00030EE600AFFEE000A20EE200A10EE100A16 +:101C0000E6F71EFAB24AB34BE1F7B4F9E6F740FA49 +:101C100009EE900AF4EE499AF1EE10FA02DBDFEDDC +:101C2000589A11E029EE090A09EEE90A10EE100AA5 +:101C3000E6F706FA41EC100BE1F7C0FA51EC100B95 +:101C4000E6F726FA08EE900A307989EEA80A07EB43 +:101C5000800181ED0A0A401C3071C0B2142801D104 +:101C6000002030717079142801DA401C7071002056 +:101C700006E007EB800191ED0A0A38EE008A401C6D +:101C800071790A4680B29042F3D3B2EE040A28EE8C +:101C9000000A00EE901AF8EE600A80EE200A10EEBC +:101CA000100AE6F7CDF98C4A8C4BE0F7DDFFE6F73A +:101CB000EFF909EE900A02E0284630717071B0EE3B +:101CC000690A01E09FED2E0ABDEC0A8BBDE8F183A5 +:101CD00038B52DED048B9FED2A8A9FED290ADFEDA3 +:101CE000280ADFED278A00231AE0142C00DB143CBD +:101CF00001EE103AB8EEC11A31EE088A50F82440CD +:101D000001EE904A30EE210A41EE210A13FB03F462 +:101D100001EE104AB8EEC11A71EE288A5B1CDBB2E4 +:101D20000C46A34205DA141B1C19641CDDD51434BF +:101D3000DEE701EE101AB8EE419A69EE200A48EE8D +:101D4000400A10EE900AE6F77BF904460D4629EEAC +:101D5000280A08EE480A10EE100AE6F771F9604A00 +:101D6000604BE1F793F802460B4620462946E1F71F +:101D700001F9E6F78DF900EE100ABDEC048B31BDD8 +:101D800000000000CDCC4C3EA69B443B8FC2753D6D +:101D90006F12033B0BD7A33C2DE9F24F2DED028BC5 +:101DA000044691464FF00008002C01D5143402E09F +:101DB000142C00DB143C45462E46042B02D19FED2B +:101DC000348A01E09FED338A2F460EE09FED320A00 +:101DD000F4EE408AF1EE10FA06DBF4EE488AF1EEFA +:101DE00010FA01D5761CB6B27F1C9DF80800FFB230 +:101DF0003946421E914236DA201A0818401C01D595 +:101E0000143002E0142800DB1438411C142900DBD4 +:101E10001439234A02EB810191ED0C0A02EB800098 +:101E2000D0ED0C0A70EE608A9FED1C0AF4EE408A39 +:101E3000F1EE10FACAD518EE900AE6F701F902465B +:101E40000B4692469B4618EE100AE6F7F9F8424612 +:101E5000254BE0F709FF52465B46E0F7E3FFB5D2BA +:101E60006D1CADB2C0E7B9F1090F01D20E2000E040 +:101E70000A20B04202D24FF0010803E0A84201D28A +:101E80004FF002084046BDEC028BBDE8F28F000027 +:101E90008FC2F53C8FC2753C7012033B6F1203BBBF +:101EA00070160120741701207C7A00202025012063 +:101EB0007025012000407E447B14AE47E17A843FC8 +:101EC000FCA9F1D24D62503F0492B06F2711913FAF +:101ED000B81E85EB51B8BE3F9A9999999999B93F27 +:101EE0008DEDB5A0F7C6B03E0000F0BF10B5DFF82D +:101EF000F8440020206001F0D6F8606105206060A1 +:101F0000012010BDDFF8E0040021016001207047CE +:101F100070B52DED048B84B00C4600210391029125 +:101F200001910091DFF8C054012C07D1296090ED98 +:101F3000008AD0ED018A90ED029A7BE069684A1E22 +:101F400068692B6893421DDA1E22591C09B200F001 +:101F5000CBFA85ED020A1E222868411C09B2686985 +:101F600000F0E0FA85ED040A1E222868411C09B23F +:101F7000686900F0F5FA85ED030A2868401C00EE58 +:101F8000100A49E018D11E2209B200F0ADFA85ED21 +:101F9000020A1E22696809B2686900F0C3FA85ED79 +:101FA000040A1E22696809B2686900F0D9FA85ED51 +:101FB000030A95ED010A2FE01E2209B200F084FA0F +:101FC00006461E220021686900F07EFA95ED020A9D +:101FD000D6ED000A30EE600AD0ED000A30EE200A9D +:101FE00085ED020A95ED040AD6ED010A30EE600A8D +:101FF000D0ED010A30EE200A85ED040A95ED030AC2 +:10200000D6ED020A30EE600AD0ED020A30EE200A68 +:1020100085ED030A95ED010AB8EEC00AD5ED020A76 +:1020200080EE808AD5ED040AC0EE808AD5ED030AE1 +:1020300080EE809AB0EE491AF0EE680AB0EE480AD7 +:1020400001A903A800F022F80022B0EE491AF0EE30 +:10205000680AB0EE480A00A902A800F0BCF8286897 +:10206000401C286001F013F8039981610199C16156 +:102070000299016200994162022C02D0012101F013 +:102080000EF8012004B0BDEC048B70BD38B52DED09 +:10209000068B04460D46B0EE40AAF0EE608AB0EE24 +:1020A000418AB5EE408AF1EE10FA40D5F1EE480AC9 +:1020B00000F01EFB9FEDBF9B10EE100AE5F7C0FF7E +:1020C00053EC192BE0F7D0FDE5F7E2FF00EE100A24 +:1020D00000F02AF9BDEEC00A84ED000A2AEE0A0AD1 +:1020E00008EE080A10EE100AE5F7AAFF41EC100B03 +:1020F000E1F764F851EC100BE5F7CAFF00EE900A27 +:10210000B1EE680A00F0F4FA10EE100AE5F798FF55 +:1021100053EC192BE0F7A8FDE5F7BAFF00EE100A23 +:1021200000F002F9BDEEC00A85ED000A50E0B5EE00 +:10213000408AF1EE10FA4BDDF0EE480AB1EE4A0AA1 +:1021400000F0D6FA9FED9B9B10EE100AE5F778FFA2 +:1021500053EC192BE0F788FD0022984BE0F796FE30 +:10216000E5F796FF00EE100A00F0DEF8BDEEC00ABB +:1021700084ED000A2AEE0A0A08EE080A10EE100A98 +:10218000E5F75EFF41EC100BE1F718F851EC100B8E +:10219000E5F77EFF00EE900AB1EE680A00F0A8FABB +:1021A00010EE100AE5F74CFF53EC192BE0F75CFD3D +:1021B0000022834BE0F76AFEE5F76AFF00EE100AA3 +:1021C00000F0B2F8B1EE400ABDEEC00A85ED000A9B +:1021D000BDEC068B31BD38B52DED048B04460D46A4 +:1021E000F0EE408AB0EE609AB0EE418AB5EE409AC9 +:1021F000F1EE10FA18D5F1EE490A00F079FA10EE76 +:10220000100AE5F71DFF6F4A784BE0F72DFDE5F763 +:102210003FFF00EE100A00F087F8B1EE400ABDEE75 +:10222000C00A84ED000A20E0B5EE409AF1EE10FA03 +:102230001BDBB1EE680A00F05BFA10EE100AE5F75E +:10224000FFFE604A694BE0F70FFD00225C4BE0F7B0 +:102250001DFEE5F71DFF00EE100A00F065F8B1EE77 +:10226000400ABDEEC00A84ED000AB5EE408AF1EEE8 +:1022700010FA28D528EEA80A09EE090A10EE100A6D +:10228000E5F7DEFE41EC100BE0F798FF51EC100B88 +:10229000E5F7FEFE00EE900AB0EE480A00F028FADC +:1022A00010EE100AE5F7CCFE464A504BE0F7DCFC96 +:1022B000E5F7EEFE00EE100A00F036F8BDEEC00ABB +:1022C00085ED000A2CE0B5EE408AF1EE10FA27DD2C +:1022D00028EEA80A09EE090A10EE100AE5F7B0FE8A +:1022E00041EC100BE0F76AFF51EC100BE5F7D0FE64 +:1022F00000EE900AB0EE480A00F0FAF910EE100A6B +:10230000E5F79EFE2F4A394BE0F7AEFCE5F7C0FE3D +:1023100000EE100A00F008F8BDEEC00A85ED000AD4 +:10232000BDEC048B31BD0000DFED270A9FED271ABD +:10233000B4EE410AF1EE10FA09DBB4EE600AF1EEF8 +:1023400010FA04D5DFED220A30EE200A7047B4EE11 +:10235000600AF1EE10FA0BDBDFED1E0AB4EE600A44 +:10236000F1EE10FA04D5DFED1C0A30EE200A7047BA +:10237000DFED1A0ADFED1A1AB4EE610AF1EE10FA77 +:1023800009DBB4EE600AF1EE10FA04D5DFED150AB0 +:1023900030EE200A7047B4EE600AF1EE10FA08DB66 +:1023A000DFED130AB4EE600AF1EE10FA01D530EE5B +:1023B000010A7047E6C1631ADCA54C400080664004 +:1023C000008066C0E6C1631AFFFF06C4000034C483 +:1023D00000003444FFFF33C30000B443010007444E +:1023E000010034430000B4C3802B0120DCA54C4025 +:1023F00001003444E54A12689FEDBC0A038800EBF3 +:102400004303B3F9043000EE903AF8EEE00A92ED9F +:10241000001AB8EE411A70EEC10A92ED031AB8EE36 +:10242000411AC0EE810A60EE800AC1ED000AD2EDC9 +:10243000010AF8EE600A038800EB4303B3F90630A3 +:1024400001EE103AB8EEC11A70EEC10A92ED041A0C +:10245000B8EE411AC0EE810A60EE800AC1ED010AB1 +:10246000D2ED020AF8EE600A038800EB4300B0F9EF +:10247000080001EE100AB8EEC11A70EEC10A92ED22 +:10248000051AB8EE411AC0EE810A20EE800A81EDED +:10249000020A012070470388934201D3002303807E +:1024A00003885B1C03809BB2934201D3002202800D +:1024B000028802EB420300EB8300001D91EC030A4B +:1024C00080EC030A01207047B0F90030591A09B2B4 +:1024D000002901D511FA82F109B201EB410200EBAA +:1024E0008200001D7047000070B49FEDB80A002301 +:1024F000B0F9004010E024B2250008D405EB4506F1 +:1025000000EB8605D5ED010A30EE200A641E24B2E8 +:10251000002C00D5541E5B1C1BB28B42EBDB70BC45 +:102520007047000070B49FEDA90A0023B0F9004085 +:1025300010E024B2250008D405EB450600EB860523 +:10254000D5ED020A30EE200A641E24B2002C00D51C +:10255000541E5B1C1BB28B42EBDB70BC704700004F +:1025600070B49FED9A0A0023B0F9004010E024B245 +:10257000250008D405EB450600EB8605D5ED030ADA +:1025800030EE200A641E24B2002C00D5541E5B1CC1 +:102590001BB28B42EBDB70BC7047000010B52DED19 +:1025A000068BADF5FB6D00A80FF2282140F2D47226 +:1025B000E0F74EFA9FED768B9FED779B00ACB5EE82 +:1025C000400AF1EE10FA48DB9FED75ABDFED760ABD +:1025D000B4EE600AF1EE10FA1AD510EE100AE5F723 +:1025E0002FFD53EC192BE0F73FFB53EC182BE0F7D2 +:1025F0004DFCE0F763FE54F82000E0F72FFC53ECAD +:102600001A2BE0F731FBE5F743FD00EE100A68E016 +:10261000F7EE000A80EE800A10EE100AE5F710FDD2 +:1026200053EC192BE0F720FB53EC182BE0F72EFCB2 +:10263000E0F744FE54F82000E0F710FC53EC1A2BAE +:10264000E0F712FB02460B465B485849E0F74CFAAC +:10265000E5F71EFD00EE100A43E0FFEE000AB4EEBF +:10266000600AF1EE10FA1CDBB1EE400A10EE100A1F +:10267000E5F7E6FC53EC192BE0F7F6FA53EC182BD0 +:10268000E0F704FCE0F71AFE54F82000E0F7E6FB60 +:102690000022474BE0F7E8FAE5F7FAFC00EE100AF3 +:1026A0001FE080EE800A10EE100AE5F7C9FC53EC3B +:1026B000192BE0F7D9FA53EC182BE0F7E7FBE0F71A +:1026C000FDFD54F82000E0F7C9FB0022394BE0F78C +:1026D000CBFA394A3E4BE0F7D9FBE5F7D9FC00EEDF +:1026E000100A0DF5FB6DBDEC068B10BDC3F51C414A +:1026F00080B5B0EE401AF5EE400AF1EE10FA04DDB6 +:1027000081EE200ABDE8014048E7F5EE400AF1EE0F +:1027100010FA24D581EE200AB5EE401AF1EE10FA37 +:102720000EDBFFF73BFF10EE100AE5F789FC224AAB +:10273000224BE0F7ABFBE5F7ABFC00EE100A01BD66 +:10274000FFF72CFF10EE100AE5F77AFC1A4A1C4B33 +:10275000E0F79CFBE5F79CFC00EE100A01BDB5EE2E +:10276000401AF1EE10FA02DD9FED160A01BDB5EE3A +:10277000401AF1EE10FA02D59FED130A01BD9FED4C +:10278000130A01BD01490860704700007C2E01203A +:10279000000000000000E03F0000000000407F401B +:1027A000000000000000503F0100803FFB21F93F86 +:1027B000000050BF0000503F182D4454FB21094039 +:1027C000FB2109C0DB0FC93FDB0FC9BF00000000C0 +:1027D000FB21F9BF0000000002000000040000001F +:1027E00006000000080000000A0000000C000000C5 +:1027F0000E00000010000000120000001400000095 +:1028000017000000190000001B0000001D00000060 +:102810001F00000021000000230000002500000030 +:1028200027000000290000002B0000002D00000000 +:102830002F000000310000003300000035000000D0 +:1028400037000000390000003B0000003D000000A0 +:102850003F0000004100000043000000460000006F +:10286000480000004A0000004C0000004E0000003C +:10287000500000005200000054000000560000000C +:10288000580000005A0000005C0000005E000000DC +:1028900060000000620000006400000066000000AC +:1028A000680000006A0000006C0000006E0000007C +:1028B000700000007200000074000000760000004C +:1028C000780000007A0000007C0000007E0000001C +:1028D00080000000820000008400000086000000EC +:1028E000880000008A0000008C0000008E000000BC +:1028F000900000009200000094000000960000008C +:10290000980000009A0000009C0000009E0000005B +:10291000A0000000A2000000A4000000A60000002B +:10292000A8000000AA000000AC000000AE000000FB +:10293000B0000000B2000000B4000000B6000000CB +:10294000B8000000BA000000BC000000BE0000009B +:10295000C0000000C2000000C4000000C60000006B +:10296000C8000000CA000000CC000000CE0000003B +:10297000D0000000D2000000D4000000D60000000B +:10298000D8000000DA000000DC000000DE000000DB +:10299000E0000000E2000000E4000000E6000000AB +:1029A000E7000000E9000000EB000000ED0000007F +:1029B000EF000000F1000000F3000000F50000004F +:1029C000F7000000F9000000FB000000FD0000001F +:1029D000FF000000010100000301000004010000ED +:1029E00006010000080100000A0100000C010000BF +:1029F0000E0100001001000012010000140100008F +:102A00001601000018010000190100001B01000060 +:102A10001D0100001F010000210100002301000032 +:102A20002501000027010000290100002A01000003 +:102A30002C0100002E0100003001000032010000D6 +:102A400034010000360100003801000039010000A7 +:102A50003B0100003D0100003F010000410100007A +:102A6000430100004501000046010000480100004C +:102A70004A0100004C0100004E010000500100001E +:102A800051010000530100005501000057010000F2 +:102A9000590100005B0100005C0100005E010000C4 +:102AA0006001000062010000640100006501000097 +:102AB00067010000690100006B0100006D0100006A +:102AC0006E0100007001000072010000740100003E +:102AD0007601000077010000790100007B01000011 +:102AE0007D0100007F0100008001000082010000E4 +:102AF00084010000860100008701000089010000B8 +:102B00008B0100008D0100008E010000900100008B +:102B1000920100009401000095010000970100005F +:102B2000990100009B0100009C0100009E01000033 +:102B3000A0010000A2010000A3010000A501000007 +:102B4000A7010000A8010000AA010000AC010000DC +:102B5000AE010000AF010000B1010000B3010000B0 +:102B6000B4010000B6010000B8010000B901000086 +:102B7000BB010000BD010000BF010000C00100005A +:102B8000C2010000C4010000C5010000C70100002F +:102B9000C9010000CA010000CC010000CE01000004 +:102BA000CF010000D1010000D3010000D4010000DA +:102BB000D6010000D7010000D9010000DB010000B0 +:102BC000DC010000DE010000E0010000E101000086 +:102BD000E3010000E5010000E6010000E80100005B +:102BE000E9010000EB010000ED010000EE01000032 +:102BF000F0010000F1010000F3010000F501000008 +:102C0000F6010000F8010000F9010000FB010000DE +:102C1000FD010000FE0100000002000001020000B2 +:102C20000302000004020000060200000802000087 +:102C3000090200000B0200000C0200000E0200005E +:102C40000F02000011020000130200001402000035 +:102C50001602000017020000190200001A0200000C +:102C60001C0200001D0200001F02000020020000E4 +:102C700022020000230200002502000026020000BC +:102C800028020000290200002B0200002C02000094 +:102C90002E0200002F02000031020000320200006C +:102CA0003402000035020000370200003802000044 +:102CB0003A0200003B0200003D0200003E0200001C +:102CC00040020000410200004302000044020000F4 +:102CD0004602000047020000480200004A020000CD +:102CE0004B0200004D0200004E02000050020000A6 +:102CF000510200005302000054020000550200007F +:102D000057020000580200005A0200005B02000057 +:102D10005C0200005E0200005F0200006102000031 +:102D2000620200006402000065020000660200000A +:102D300068020000690200006A0200006C020000E4 +:102D40006D0200006F0200007002000071020000BE +:102D50007302000074020000750200007702000098 +:102D6000780200007A0200007B0200007C02000072 +:102D70007E0200007F02000080020000820200004C +:102D80008302000084020000860200008702000027 +:102D9000880200008A0200008B0200008C02000002 +:102DA0008E0200008F0200009002000092020000DC +:102DB00093020000940200009602000097020000B7 +:102DC00098020000990200009B0200009C02000093 +:102DD0009D0200009F020000A0020000A10200006E +:102DE000A2020000A4020000A5020000A60200004A +:102DF000A8020000A9020000AA020000AB02000025 +:102E0000AD020000AE020000AF020000B002000000 +:102E1000B2020000B3020000B4020000B5020000DC +:102E2000B7020000B8020000B9020000BA020000B8 +:102E3000BC020000BD020000BE020000BF02000094 +:102E4000C1020000C2020000C3020000C402000070 +:102E5000C5020000C7020000C8020000C90200004D +:102E6000CA020000CB020000CD020000CE0200002A +:102E7000CF020000D0020000D1020000D302000007 +:102E8000D4020000D5020000D6020000D7020000E4 +:102E9000D8020000DA020000DB020000DC020000C1 +:102EA000DD020000DE020000E0020000E10200009E +:102EB000E2020000E3020000E4020000E50200007C +:102EC000E6020000E8020000E9020000EA02000059 +:102ED000EB020000EC020000ED020000EE02000038 +:102EE000F0020000F1020000F2020000F302000014 +:102EF000F4020000F5020000F6020000F7020000F4 +:102F0000F8020000FA020000FB020000FC020000D0 +:102F1000FD020000FE020000FF02000000030000AE +:102F2000010300000203000003030000050300008A +:102F30000603000007030000080300000903000067 +:102F40000A0300000B0300000C0300000D03000047 +:102F50000E0300000F030000100300001103000027 +:102F60001303000014030000150300001603000003 +:102F70001703000018030000190300001A030000E3 +:102F80001B0300001C0300001D0300001E030000C3 +:102F90001F030000200300002103000022030000A3 +:102FA000230300002403000010B500F081F805F0B1 +:102FB000EBFAFEF79BFF454C4422002104F10C0084 +:102FC000DFF74CF90A2200212046DFF747F90A22F1 +:102FD00000213F48DFF742F90C22002104F15400A0 +:102FE000DFF73CF93B4C4FF4B67200212046DFF787 +:102FF00035F91E20208010BD05F0C6BA80B505F059 +:10300000F7FABDE80140FEF77DBF3148F6F7B4BEE0 +:1030100010B42F482D491CC81CC10C380021418018 +:1030200010BC704710B50446FFF7E4F92088401C37 +:103030002080B4F9021080B2884200DB2180012098 +:1030400010BD38B5214C256D04F154012046FFF721 +:10305000E9FF1E2204F154011E48FFF71CFA01216A +:1030600004F15400FEF754FFA80705D5002104F130 +:10307000540005F0BFFA04E0012104F1540005F00A +:10308000B9FA002104F10C00BDE8344007E0124811 +:1030900070470E49CA6822EA0000C860704702689B +:1030A0001143016070470B4870470C490860704736 +:1030B0000A48006800210160416081604FF480612E +:1030C000C1600161416101210176704788200120C2 +:1030D000382D01200007012094200120802E01209E +:1030E00080B5C046C046024A11001820ABBEFBE7BF +:1030F000260002002DE9F841174680461D46012FA3 +:10310000A8BFB9421BDB481E04B2062609E0E11B3A +:1031100016FB045006FB01510622DFF789FC601EF6 +:1031200004B2BC42F3DA06E016FB07F14819414449 +:103130000622DFF77DFC7F1E3FB2002FF4D5BDE8ED +:10314000F1812DE9F043079D089E002430F81470AA +:1031500023F8147030F8147022F81470012716E068 +:103160004FF0060E00EB440C0EFB07FE33F91490F3 +:103170003EF90C80C845B8BF23F814803EF90CC056 +:1031800032F914E0E645B8BF22F814C07F1C8F4224 +:10319000E6DB33F914C032F914704FEA6C0C0CEB17 +:1031A000670725F8147012F81470FF0703D413F89A +:1031B0001470FF0704D535F814707F1C25F81470BF +:1031C00032F8147033F814C0A7EB0C073FB2002F8D +:1031D00048BF47F6FF7726F81470641C032CB5DB54 +:1031E000BDE8F08300220F23520040008842A4BFB4 +:1031F000401A521C5B1EF7D110B27047012808DB41 +:10320000002100B2B0F5804FBCBF4000491CF8DB84 +:103210000AE008B90F2070470021154A01E040007C +:10322000491C00B29042FADA08B27047012807DB65 +:103230000021B0F1804FBCBF4000491CF9DB09E020 +:1032400008B91F207047002101E04000491C10F11F +:10325000804FFADA08B270470649884208BF47F63D +:10326000FF7002D0002848BF404200B27047000003 +:1032700000C0FFFF0080FFFF70B504460D461646F4 +:10328000FFF7BCFF30802846FFF7B8FFB6F90030E3 +:1032900004FA03F205FA00F1181A09B212B29142C7 +:1032A000BCBF5210401E30801046BDE8704099E708 +:1032B0002DE9F84F8846CEB081461646B8F1210F69 +:1032C00080F22C810120FFF78DFF0022002394461D +:1032D000174606210FE001FB07FE7F1C3EF909405F +:1032E000CE4414FB00CCBEF9024014FB0033BEF9FF +:1032F000044014FB00224745EDDB4FEAEC30ADF80B +:103300000000D813ADF80200D013ADF8040000207F +:1033100014E001FB00F202EB0903B3F9047032F987 +:103320000920B3F9023012FB02F213FB032217FB50 +:1033300007220EABD21223F81020401C4045E8DBD8 +:1033400000221EA815E001FB02F7BDF8004037F887 +:1033500009301B1B3B521EABFB184F44BDF80250FB +:103360007C88641B5C80BF88BDF804403F1B9F8045 +:10337000521C4245E7DB02AF002205ACBA607A601E +:103380000292226222610592E2606260A261A26002 +:10339000E261626150E001FB02F3DDF814C033F931 +:1033A00009E01D5ED4F810A01EFB05CECDF814E098 +:1033B0000DF1780E03EB090C9E44BCF90250BEF9E6 +:1033C00002B015FB0BAAC4F810A0BCF904C0D4F8D5 +:1033D00020A0BEF904B01CFB0BAAC4F820A033F94E +:1033E00000A0D4F80CB015FB0AB5E5606560A569CE +:1033F0001CFB0A55A561A560E569BEF902A01CFB8E +:103400000A5CC4F81CC0C4F814C00DF1380C3CF9B7 +:103410001250DDF808C01B5E13FB05C302937B68E6 +:10342000BEF902C01CFB05337B60BB68BEF904C05B +:103430001CFB0533BB60521C4245ACDB20250298C7 +:10344000401002904FF0000A78684FEA6008B868B0 +:10345000C7F804804FEA6009C7F808904FF0000BE6 +:103460000C2005A900FB0A1050F82B00FFF7DEFE28 +:10347000A842B8BF05460BF1010BBBF1030FEFDB10 +:103480000AF1010ABAF1030FE8DB4FF0000A57F81E +:103490002A00FFF7CBFEA842B8BF05460AF1010A91 +:1034A000BAF1030FF3DB6068A8408014F080F08865 +:1034B0007080A068A8408014B081B089B080606935 +:1034C000A8408014F081F08970810598A84080148C +:1034D00030802069A84080143081206AA840801480 +:1034E000308202984E99A8408014088008FA05F0AE +:1034F0004E998014488009FA05F04E99801488800E +:10350000B6F900000628A4BFB6F90800062805DBB6 +:10351000B6F910000628A8BF042000DA00204FB03A +:10352000BDE8F08F2DE9F04F804693B08946B2F99F +:1035300010A0B2F90800B2F90A101C9D1F4610FB3A +:103540000AF301FB1131109110ABB2F900E0B2F9AE +:103550000C101AFB0EF401FB114159601EFB00F424 +:10356000B2F9021001FB114199604FF0000C109C60 +:10357000012153F82160B442BCBF34468C46491C3B +:103580000329F6DB012CC0F2A3800FFA8CFC4FF468 +:1035900000640BA903AE05ABBCF1000F55D1ADF82B +:1035A0002C005089C880B2F902004042ADF81400E6 +:1035B00050894880108A08810221B2F90C0000F07D +:1035C000B7F8002857D000F0B9F83C80BDF90C00DE +:1035D00080107880B6F902008010B88002A9B7F98F +:1035E0000030B7F90220B7F9040013FB03F312FB14 +:1035F000023210FB002000F07BF90002B7F9001046 +:1036000000144143C9123980B7F902104143C9126D +:103610007980B7F9041010FB01F0C012B880B7F937 +:1036200000C0B8F90000B7F90230B8F90210B7F9D4 +:1036300004201CFB00F013FB0100B8F9041012FB7E +:10364000010E7446704601215DE0BCF1010F1DD1F1 +:10365000ADF82CA090894880B2F90A004042ADF83C +:1036600014009089C880108808810221B2F90200F4 +:1036700000F05EF800282BD000F060F8B6F90200E8 +:10368000801038807C80BDF90C00A5E7BCF1020FEA +:103690001ED1ADF82CE050884880B2F90C004042B1 +:1036A000ADF81400D088C880108908810221B2F9D1 +:1036B0000A0000F03DF858B100F040F8BDF90C00E8 +:1036C00080103880B6F9020080107880BC8085E7D1 +:1036D00000202AE0062606FB01FA0AEB08063AF962 +:1036E00008A0B6F902B0B6F904601CFB0AFA13FB95 +:1036F0000BAA12FB06A6B645B8BFB6468642D8BF8F +:1037000030463419491C4945E4DBAEEB0000C012D9 +:10371000288049460120FFF765FDE11210FB01F00A +:10372000400000144042F880012013B0BDE8F08F43 +:103730004042588007AB09AA0BA808E003A80190F3 +:1037400005A8009007AB09AA02210BA850E02DE9BB +:10375000F84F804691469A4600250C46062618E00A +:103760003AF915C039F91530021412FB0CFC4FEA76 +:10377000EC3CC0F34E0013FB02C210FB03F002EB63 +:10378000E03008EB4502400088527F1CA74205DB71 +:103790006D1CA54229DA2F4606FB058B3BF9170065 +:1037A0006A1EC00312B206FB07F10BE001EB080C26 +:1037B0003BF912303CF912C013FB0CF3521EA0EB84 +:1037C000830012B2002AF1D5BD42C9D1012801DA25 +:1037D00000200BE000A900F08BF8011429F8151067 +:1037E000C0F34E002AF81500CFE70120BDE8F28FA4 +:1037F0002DE9F047DDF820E0099E4FF0000C8846E7 +:10380000062526E005FB0C0936F914A039F91490B9 +:1038100019FB0A77641E24B2002CF3D53EF91C4034 +:1038200032F91C9033F91CA0E403A4EB87073C1485 +:1038300014FB0AFA4FEAEA3AC7F34E0719FB04A44D +:1038400017FB09F704EBE7377F0026F81C700CF133 +:10385000010CC44529DA0027ACF10104DBE700EBD9 +:10386000410C15FB04CC36F914E0BCF900C01CFB7C +:103870000EFCA7EB8C07641C24B2A8F1010CA44534 +:10388000EDDA33F911E032F911C03C1414FB0EFEED +:103890004FEAEE3EC7F34E071CFB04EE17FB0CF796 +:1038A0000EEBE7377F0026F81170491E09B2002998 +:1038B00004D436F91170FF034C1CDDE7BDE8F08736 +:1038C00010B500210022002801D5002010BD1023D2 +:1038D000840F520004EB81018000521C914226BFEC +:1038E000891A521C521E5B1EF2D1D003001410BD67 +:1038F00038B505460C46012D04DA002020804FF033 +:10390000804032BDFFF792FC208005FA00F1C0F143 +:103910001E002080C20758BF491000044014401CFC +:103920002080481610380FF2240200B232F910300D +:1039300002EB4000C9014088181A490C10FB01F045 +:10394000C0EBC33021884000084132BDFF7F2E7C90 +:10395000AE7876757D72BA6F296DC26A83686666C5 +:1039600069648962C260135F7A5DF55B825A21598E +:10397000CF578B5655552C540F53FC51F450F64FDE +:10398000014F144E304D534C7E4BAF4AE749254909 +:103990006848B24700475446AD450A456B44D14399 +:1039A0003B43A84219428E4106418240004000003C +:1039B00010B5DFF860484822014604F54570E0F78D +:1039C00095FFD4F85003606304F554704168C4F85F +:1039D00084108068C4F8D400032802D1012005F0C7 +:1039E0003DF9002010BD80B54822DFF83818E0F717 +:1039F0007DFF002002BD80B50C220146DFF82808BB +:103A0000E0F774FF002002BD80B50C22DFF8181823 +:103A1000E0F76CFF002002BD10B5DFF810484FF44E +:103A2000A672002104F50870DEF718FC4FF4087246 +:103A300000212046DEF712FC00F0C7FB4DF2940394 +:103A40004822DFF8EC17DFF8EC0705F062F90446CE +:103A50004CF251330C22DFF8E017DFF8E00705F0F5 +:103A600058F9204310BD0023002A01D14FF48032C1 +:103A7000426201F00302032A00D1012301F018027F +:103A8000182A00D1012301F0C002C02A00D101236D +:103A9000002B00D08821016070470A460146DFF8FC +:103AA0008C07E0E7DFF86C1788624FF47A7290FBBE +:103AB000F2F2CA628A6C002A04D1DFF8842792FBF2 +:103AC000F0F088647047DFF84C17886778314FF45E +:103AD0007A7290FBF2F24A600A6A002A04D1DFF897 +:103AE000602792FBF0F008627047DFF82817C1F8F2 +:103AF000C800C8314FF47A7290FBF2F24A600A6A49 +:103B0000002A04D1DFF8382792FBF0F008627047F2 +:103B1000DFF81817C1F860014FF47A7290FBF2F0E9 +:103B2000C1F864017047DFF80407D0F8D000001234 +:103B300000F001007047DFF8F406006B001200F09F +:103B400001007047DFF8E406D0F88000001200F0B2 +:103B50000100704730B400200146DFF8D02602F1A2 +:103B600030031C6DE40501D5D3E91601146BE4059F +:103B700008D5D3E90245A94204DC01DBA04201D209 +:103B80002046294602F1D003D2F8D040E40508D5FA +:103B9000D3E90245A94204DC01DBA04201D2204660 +:103BA00029461C6DE40508D5D3E91645A94204DC75 +:103BB00001DBA04201D220462946D2F85031DB0574 +:103BC0000AD502F5A874D4E90223994204DC01DB8A +:103BD000904201D21046194630BC70470A46014651 +:103BE000DFF860063FE70A460146DFF85C063AE781 +:103BF00070B584B004460D46B4F90400C0030090CB +:103C000000AEB4F90600C0037060B4F90800C00348 +:103C1000B06004F10C0300AA606A4100206880B221 +:103C200004F0A2FA00982968A0EB61000090706887 +:103C30006968A0EB61007060B068A968A0EB6100E2 +:103C4000B06004F1180300AA606A4100206880B2E5 +:103C500004F08AFA206B40F0200020637FBDDFF87B +:103C6000CC15C1F88400C1F85403704738B50C4630 +:103C7000002818D0DFF8B435D10702D50168C3F8A1 +:103C80003413910703D503F54D7145684D60510715 +:103C900003D503F54D718068886003F54D7103F11C +:103CA0005000FFF7A5FF2046FFF7D9FF00221021A3 +:103CB0000846BDE8384005F061B8F8B504460D4641 +:103CC000DFF86865002C12D006F557770C222146E4 +:103CD000384604F027FC002809D00C22214638463B +:103CE000E0F704FE06F557713046FFF781FF756374 +:103CF00006F54B746562D6F80801002802D0C6F8B4 +:103D00002C0303E04FF4D810C6F82C030022042142 +:103D1000084605F033F801206060F1BDDFF80C15AE +:103D2000D1F83003012801D1012000E00020002259 +:103D3000C1F83023704710B50C46002804D00C227F +:103D4000DFF8E414E0F7D2FD002C04D0DFF8DC0447 +:103D5000D0F82C03206010BDF8B514461D46DFF8DE +:103D6000CC6406F1540702688B0610D4A6F85420E0 +:103D7000416879808068B880F86A40F08000F86215 +:103D800006F54D7106F15000FFF732FF0DE07A6144 +:103D90004268BA618068F861F86A40F02000F86211 +:103DA00001F003003863C6F85403F86A40F4A070C9 +:103DB000F862D6E92201C6E92401C6E922450020BD +:103DC000F2BD70B514461D46DFF860640622014658 +:103DD000301DE0F78BFD306B40F4E0703063D6E9C6 +:103DE0000E01C6E91001C6E90E4506F557713046C9 +:103DF000FFF7FEFE002070BDFEB514461D46DFF83D +:103E00002C6406F1A4078A0617D400F0B8F900A8BC +:103E100000F0A8F90098A6F8A40000A841687980ED +:103E20008068B88006F5457106F1A000FFF7E0FE56 +:103E3000F86A40F08000F8620EE002687A61426839 +:103E4000BA618068F861F86A40F02000F86201F019 +:103E500003003863C6F85803D6E93601C6E93801CD +:103E6000C6E93645F86A40F4A070F8620020FEBD4D +:103E70002DE9F04385B006460F4614461D46DFF88F +:103E8000AC8308F5A079F80409D500A9304604F000 +:103E9000E2FA102200A94846E0F728FD04E01022CB +:103EA00031464846E0F722FDC8E95645D8F85001AA +:103EB00007F4385141F4E0710843C8F85001D8F8CC +:103EC000500110F4406F04D022462B46304604F0D7 +:103ED000D3FDD8F8500100050AD500A80FF27031C3 +:103EE0001022DEF7B5FD22462B4600A804F0D8FDCF +:103EF000002005B0BDE8F083DFF830030021C0F8F2 +:103F000080107047DFF824030021C0F8D0107047FC +:103F1000DFF818030021C0F850117047DFF80C03D8 +:103F20000021016370472DE9F04300231C4600E0A7 +:103F3000641CDFF8F852D5F82062B4420DDA0C2781 +:103F400007FB0455D5F824620746BE4203D0D5F8D6 +:103F500028528D42ECD1162032E0142E2EDA1C4667 +:103F6000002E01D11BE0641CB44207DA04EB4407C5 +:103F700005EB8707D7F828728F42F4DBB4420ED0E6 +:103F80000BE00C2707FB065707F5097C07F50677BA +:103F9000B7E80043ACE80043761EB442F1DB0C27DF +:103FA00007FB0454C4F8240204F5097041608260E0 +:103FB000D5F82002401CC5F8200200E00C2318466A +:103FC000BDE8F083F8B50025DFF8604294F83000D2 +:103FD000400600D5022594F88000400601D545F042 +:103FE000010594F8D000400601D545F0040594F889 +:103FF0002001400601D545F0080594F85001C0069F +:1040000001D545F0100594F89801400601D545F01A +:1040100020050026374611E007EB470004EB80013E +:10402000D1F82C02054208D02046D1F82412884746 +:10403000002802D0002E00D106467F1CD4F82002B2 +:104040008742E9DB00F002F83046F2BD10B4774851 +:10405000016B4A0602D541F01001016300F1300105 +:104060000A6D530602D542F010020A65D0F8D0203E +:10407000530603D542F01002C0F8D02000F1D00260 +:10408000136D5C0602D543F010031365D0F8503170 +:104090005C0603D543F01003C0F85031036B23F0E6 +:1040A000400303630B6D23F040030B65D0F8D01081 +:1040B00021F04001C0F8D010116D21F040011165D0 +:1040C000D0F8501121F04001C0F8501100F5A8704F +:1040D000816C21F04001816410BC704738B50C46FA +:1040E0001546002803D00C225849E0F7FFFB002DAD +:1040F00004D04E48D0E92223C5E90023002C03D088 +:104100004A48D0F88400207031BD70B50C46154681 +:10411000464E0C2206F1B801E0F7E8FB002D03D073 +:10412000D6E93601C5E90001002C09D0D6F86803AC +:10413000002802D00020207070BDD6F8D400207076 +:1041400070BD3A48406B70473848D0F86813002972 +:1041500001D000207047D0F8D40070473348D0F821 +:1041600084007047002107E0304A02EB8102D2F858 +:10417000C42140F82120491C0329F5DB704718B4FD +:10418000002106E003EB810250F82130C2F8B8317B +:10419000491C264B0329F5DBD3F81812012907D156 +:1041A00003F5E272014603F5E87018BC04F05EB84E +:1041B000002106E003EB810250F82140C2F8C4411F +:1041C000491C0329F6DB11BC704710B500200246DC +:1041D000104C04E004EB8001C1F8F421401C0928D4 +:1041E000F8DB2422002104F5E870DEF737F8002020 +:1041F0000AE004EB00114FF07E52C1F8F4214FF0B9 +:104200008042C1F8D021401C0328F2DBBDE81040F9 +:1042100002E0000028E7002004480021C0F818123E +:10422000704700003CEA002084EA002028E70020D4 +:10423000E7390208B1390208093A0208F7390208D9 +:1042400040420F0078E70020C8E7002090E70020F8 +:10425000000000400000000000000000000000001E +:10426000704780B504F04AFD04F09CFD00280CD096 +:1042700004F098FD23230FF28C020FF29801FFF750 +:10428000EFFFBDE8014004F08DBDFFF7C5FB00283E +:104290000CD0FFF7C1FB26230FF268020FF2740166 +:1042A000FFF7DEFFBDE80140FFF7B6BB04F0C7FC37 +:1042B00000280CD004F0C3FC28230FF248020FF2B0 +:1042C0005401FFF7CDFFBDE8014004F0B8BC012068 +:1042D00004F05DFD002002BD80B504F079FD0028EA +:1042E0000CD004F075FD47230FF264020FF2240195 +:1042F000FFF7B6FFBDE8014004F06ABD002002BD33 +:1043000000000000696E765F696E69745F6D706CA5 +:1043100000000000433A5C50726F6A6563745C4E43 +:104320006F7465335F466972655C4E6F7465335FA9 +:10433000466972655C496E76656E53656E73655C41 +:104340006D6C6C6974655C6D706C2E6300000000B0 +:10435000696E765F73746172745F6D706C000000DB +:104360007047000000B510EE100AE3F769FE002266 +:10437000DFF8443CDEF778FC04F040FDDFF8F42B76 +:10438000C2E9140100BDDFF8EC2BD2E9120170473D +:10439000DFF8E01BD0E90E23C1E912230120886574 +:1043A0007047C1070CD5DFF8501C4FF040420A6738 +:1043B00070314A608A604FF08042CA600A614A6187 +:1043C00081070ED5DFF8301C4FF04042C1F81821AC +:1043D00001F58C714A608A604FF08042CA600A61C0 +:1043E0004A6140070ED5DFF8101C4FF04042C1F87B +:1043F000C02101F5E070426082604FF08042C260EF +:1044000002614261704700000021401000D0491C49 +:104410000128FADA481C70472DE9F14F88B00020D6 +:104420000146CDE904010898806F002801D10846B3 +:10443000BEE0FFF7E9FF81464FF000088BE000EB9C +:10444000C802D2E900014A46F7F780FF04460D464C +:10445000089800EBC80002900246D2E906014A46DD +:10446000F7F774FF06460F46A4FB042304FB05334D +:1044700005FB0433A4FB020104FB031105FB02113D +:10448000CDE90601029AD2E912014A46F7F75EFF2A +:10449000CDE90001A6FB062306FB073307FB063325 +:1044A0000320A0FB02AB00FB03BBDDE90001B0EB86 +:1044B0000A0061EB0B01DDE90623A4FB02AB04FB60 +:1044C00003BB05FB02BB4FEA4B0B4BEADA7B10EB5D +:1044D0004A0A41EB0B0BA4FB040104FB051105FB8D +:1044E0000411301A67EB0101A4FB002304FB013324 +:1044F00005FB00330320A0FB026700FB0377DDE927 +:10450000060136184F41029AD2E90C014A46F7F7E4 +:104510001DFF321A67EB0103A4FB020104FB031128 +:1045200005FB0211890041EA9071BAEB80006BEB48 +:104530000101002904DC00DB02D2404261EB4101B1 +:10454000DDE904238B4204DC01DB824201D2CDE9A8 +:10455000040108F10108B8F1030F0898FFF66FAFE6 +:10456000806F0899C96F884210D000EE100AB8EE2B +:10457000C00A04F081FCF7EE000A80EE800A089879 +:1045800080ED200A08980146896FC167DDE90401C2 +:1045900004F080FC00EE100A0898D0ED200A20EE0E +:1045A000200A10EE100A09B0BDE8F04F04F0A4BCD8 +:1045B00009B0BDE8F08F2DE9F04F85B081460020AD +:1045C0000146CDE90201D9F87800002801D108465A +:1045D00079E0FFF719FF00904FF0000849E009EB80 +:1045E000C802D2E90001009AF7F7B0FE04460D4672 +:1045F000A4FB046704FB057705FB047709EBC800FF +:1046000001900246D2E90601009AF7F79FFE801B4F +:10461000B941A4FB002304FB013305FB0033032055 +:10462000A0FB02AB00FB03BBA4FB060104FB0711CC +:1046300005FB06111AEB00044BEB0105019AD2E9C8 +:104640000C01009AF7F782FE201A65EB01010029A0 +:1046500004DC00DB02D2404261EB4101DDE90223D0 +:104660008B4204DC01DB824201D2CDE9020108F178 +:104670000108B8F1030FB2DBD9F87800D9F87C1043 +:1046800088420FD000EE100AB8EEC00A04F0F4FB26 +:10469000F7EE000A80EE800A89ED200AD9F878004A +:1046A000C9F87C00DDE9020104F0F4FB00EE100A19 +:1046B000D9ED200A20EE200A10EE100A05B0BDE860 +:1046C000F04F04F019BC05B0BDE8F08F10B4012123 +:1046D000026BD20513D5DFF82029D2F88830146890 +:1046E000A3420CDBD0F88000C00505D5D2F8D80174 +:1046F0005168884203DB0521084610BC7047002042 +:10470000FBE72DE9F04184B00446002600ADDFF858 +:10471000E87812E007EBC602D2E9040107F5087257 +:10472000926AF2F745FD07EB8602D2F89420120454 +:10473000D317801845F82600761C032EEADBA82242 +:10474000002107F11000DDF789FD0120FFF729FEA8 +:104750006868002801D4014600E04142009A002A1E +:1047600000D55242914201DA104602E0002800D5FD +:104770004042A968002901D40A4600E04A42824228 +:1047800004DB002901D4084600E04842B4F90620C1 +:10479000110001D40B4600E04B42B4F904C0664658 +:1047A000BCF1000F01D4B64601E0C6F1000E73451E +:1047B00004DABCF1000F06D5764204E0002A01D4E9 +:1047C0000E4600E04E42B4F908100A0001D4134628 +:1047D00000E05342B34204DB002901D4164600E056 +:1047E0005642616A03F045FA616A300403F041FA07 +:1047F000B0F5201F03DD052087F820024BE0DFF82D +:104800007467F16A6A68501A01D4034600E08B1A93 +:10481000D6F828C0DDF800E0BEEB0C0E01D4F0465F +:1048200003E0DDF80080ACEB0808434508DABEF190 +:10483000000F01D4704606E00098ACEB000002E0E7 +:10484000002800D5881A316BAA68531A01D49C46F7 +:1048500001E0A1EB020C844504DB002B01D41846D7 +:1048600000E0881A616A03F004FA8046022004F02E +:1048700033F907F50870C06A804506DA032100A8FD +:10488000FFF71BFA2046FFF783FD0098B0626868C7 +:10489000F062A8683063BDE8FF812DE9FE418646DD +:1048A0000E4600271CE0D317A2FB004502FB015572 +:1048B00003FB0055204629460CEB4C0306EBC303D3 +:1048C00003EBC708D8E9004524184D4103EBC703A3 +:1048D000C3E900450CF1010CBCF1040FE3DB7F1CC4 +:1048E000B06F032F1BDA06EB870101F1600300288C +:1048F00002D13EF9170058623EF917005A6A821A2F +:1049000000A840F82720086E904200DA0A66D868AE +:10491000824200DADA60012000218C46DCE7401C8C +:10492000B0670120C6F8A000BDE8F7812DE9F0418D +:1049300004460025069E05E006EB850054F8251088 +:10494000C1666D1C032DF7DB06F17807C7E9062366 +:10495000B06F002814D0002510E006EB850854F84D +:104960002500D8F88410401AF0F7ACFED8F8601093 +:10497000814200DA0146C8F860106D1C032DECDBA3 +:10498000B06F401CB0670120B862BDE8F08110B480 +:10499000002108E000EB810202F16003DC685C6248 +:1049A00000231366491C0329F4DB00F17801D1E9E7 +:1049B0000623C1E90823002282671046886210BCE2 +:1049C000704730B4D0E92423D0E92645101B63EBAF +:1049D000050130BC7047016E426E8A4200DA0A4619 +:1049E000816E914200DA114608467047016EC26E30 +:1049F000891A426E036FD21A8A4200DB1146826E18 +:104A0000406F101A884200DB01460846704710B517 +:104A1000DFF8E4451022002104F51670DDF71EFCD6 +:104A20001022002104F51E70DDF718FC1022002171 +:104A300004F51A70DDF712FC1022002104F5227033 +:104A4000BDE81040DDF70ABC10B5DFF8AC45A82280 +:104A5000002104F11000DDF701FCA822002104F57B +:104A6000B070DDF7FBFB0520BDE8104099E4D0B441 +:104A7000DFF8842502F51E739C68002C02D1C2E980 +:104A80009E0108E0D2E99E678F4204DC01DB86428A +:104A900001D2C2E99E01601C9860D0BC7047D0B4BE +:104AA000DFF8542502F522739C68002C02D1C2E97C +:104AB000A20108E0D2E9A2678F4204DC01DB864252 +:104AC00001D2C2E9A201601C9860D0BC7047D0B48A +:104AD000DFF8242502F516739C68002C02D1C2E988 +:104AE000960108E0D2E99667B94204DC01DBB042E6 +:104AF00001D2C2E99601601C9860D0BC7047D0B466 +:104B0000DFF8F42402F51A739C68002C02D1C2E984 +:104B10009A0108E0D2E99A67B94204DC01DBB042AD +:104B200001D2C2E99A01601C9860D0BC7047F8B508 +:104B300007460124DFF8C05405F11000FFF756FFC7 +:104B4000DFF83064316C814203DAFFF77DFF00202B +:104B5000F2BD3846FFF7BAFD070001D10220F2BDD1 +:104B600078071ED505F5B070FFF756FC000D40EA3A +:104B700001300915C5E98401D5E98401D6E904238A +:104B80008B4205DC01DB824202D20024FFF7B7FF33 +:104B9000A822002105F5B070DDF760FB0420FFF7C7 +:104BA00000FCF80711D505F11000FFF735FC05F5FD +:104BB0000472C2E90601D6E906238B4205DC01DB5B +:104BC000824202D20024FFF782FF2046F2BD1FB5C9 +:104BD000044694F8300000F0C000C02804D1DFF88B +:104BE0002014201DFFF759FE94F8800000F0C0004B +:104BF000C02805D1DFF80C1404F15400FFF74DFE76 +:104C0000D4F8D00000F0C001C0290BD1002001AAC7 +:104C1000032818DA04EB4001B1F9A41042F820107F +:104C2000401CF5E700F06000602814D1002001AAC4 +:104C300007E004EB8001D1F8B810891342F8201086 +:104C4000401C0328F5DBDFF8C0030090D4E93623CD +:104C500001A8FFF76BFE1FBDF8B50446002004F164 +:104C60002C077968CA0540F1278101F050014029DD +:104C700000D1012097F8541001F05001402900D1D3 +:104C8000012094F8D01001F05001402900D10120FA +:104C9000DFF86453002809D0FFF7D6FE0020C5F8DE +:104CA000180285F820022046FFF772FBE06AD5F86B +:104CB000401281421ED0C5F84002AE4E716B0A28E8 +:104CC00006DA48002860B06B401CC5F8440203E0D7 +:104CD0002960B06BC5F84402D5F84402C0F1100059 +:104CE000C5F848024FF48040C5F84C021920B16B5A +:104CF00088403064386DD5F85012814210D0C5F824 +:104D000050029C4E716B0A2806DA48006860B06B4E +:104D1000401CC5F8540203E06960B06BC5F854024A +:104D20002046FFF754FF95F82002062800F2C480C1 +:104D3000DFE800F004122C3574A4B100D5F8180295 +:104D4000411CC5F818120A28C0F2B680FFF77CFE95 +:104D5000012085F82002AFE0D5F8B000012840F02E +:104D6000AB802046FFF7E3FE002803D1052085F83D +:104D7000200204E0012802D1022085F8200205F17A +:104D8000B800FFF704FEFFF742FE95E0032085F828 +:104D900020022046FFF7B5FCFFF756FE8CE02046C8 +:104DA000FFF7C5FE002857D0012840F08580D4F8D1 +:104DB000D000C00523D504F0F1F800281FD105F17B +:104DC000B8073846FFF707FEC117C5E98201694EEB +:104DD000D6E90201D5E98223994206DC01DB904243 +:104DE00003D2052085F820020FE03846FFF7E9FDE1 +:104DF000D6E90823994208DB01DC904205D3042060 +:104E000085F820022046FFF77CFCD5E98401FFF7F6 +:104E100046FED5E98A01FFF72AFE4DE0D4F8D0001E +:104E2000C00514D504F0BAF8002810D105F1B80077 +:104E3000FFF7D1FDC117C5E982014E48D0E9022331 +:104E4000D5E982018B4207DB01DC824204D3204694 +:104E5000FFF76DFE002803D1052085F820022BE026 +:104E6000012829D12046FFF74CFCD5E98401FFF742 +:104E700016FED5E98A01FFF7FAFD1DE0062085F848 +:104E80002002012003F028FEFFF7DEFD05F1B80047 +:104E9000FFF77DFD10E02046FFF749FE012803D112 +:104EA000022085F8200207E0002805D1FFF7CCFD9D +:104EB00005F1B800FFF76BFD0020F2BD00214010A6 +:104EC00000D0491C0128FADA2A4801224B1C9A40DA +:104ED0004263491C8163192202FA01F1016470479F +:104EE00038B5454C4FF4267200212046DDF7B6F95F +:104EF000204D602200212846DDF7B0F90720FFF79A +:104F000050FA45F6C0500021C5E906011E20C5E94A +:104F100002016420C5E904013C48C5E908010120FB +:104F2000C4F81C021920FFF7C9FF0020C4F8400292 +:104F30009FED320AFFF716FA0020A86532BD10B5C2 +:104F40002D4C4FF4267200212046DDF787F907200B +:104F5000FFF727FA0120C4F81C0284F8200200227F +:104F6000032103F00BFF072264212948BDE810400C +:104F7000FEF7D9BF4821012010B5FFF7B1FF0400AB +:104F800009D040F225330FF294020FF2A801FFF787 +:104F9000E7F9204610BD1F4803F00CFF040009D0BC +:104FA0004FF44A730FF274020FF28801FFF7D8F939 +:104FB000204610BD002010BD65CDCD41F8B50026BE +:104FC000154FB96D012915D1016BC90512D5D0E96D +:104FD0000E45FFF7D8F9201A65EB0101002909DB1E +:104FE00000DC07D3D7E91423994203DC01DB9042AC +:104FF00000D201263046F2BD88F900200000964418 +:1050000098F90020E8FA002040FA00200008AF2FAD +:10501000594C02083F4F020848210120696E765F13 +:10502000656E61626C655F666173745F6E6F6D6FF4 +:1050300074000000433A5C50726F6A6563745C4EA2 +:105040006F7465335F466972655C4E6F7465335F7C +:10505000466972655C496E76656E53656E73655C14 +:105060006D706C5C666173745F6E6F5F6D6F746999 +:105070006F6E2E630000000070B52DED028B98B0AE +:1050800005460E4608EE102A1C4695ED020AF8EE7B +:10509000C00A95ED010AB8EEC01A95ED000AB8EE07 +:1050A000C00A20EE000A01EE010A00EEA00A03F099 +:1050B000E3FEF0EE408A18EE900AE2F7C1FF21F01D +:1050C00000410122DFF8A839EEF768FE00F2B9804E +:1050D0009FEDD70AD6ED000AF8EEE00A60EE800AEE +:1050E000CDED040A04A8D6ED010AF8EEE00A60EE60 +:1050F000800AC0ED010AD6ED020AF8EEE00A60EE81 +:10510000800AC0ED020AD6ED030AF8EEE00A20EEAE +:10511000800A80ED030A0020089008A895ED000A97 +:10512000B8EEC00A80EE280A80ED010A95ED010A6A +:10513000B8EEC00A80EE280A80ED020A95ED020A58 +:10514000B8EEC00A80EE280A80ED030A14AA08A966 +:1051500004A802F038FE10A904A802F052FF00AA29 +:1051600010A914A802F02FFE00AD95ED010AD5EDAF +:10517000020A20EEA01A00EE001ADFEDAE1AB4EE1D +:10518000611AF1EE10FA02D59FEDAB1A15E0DFEDD2 +:10519000AB1AB4EE611AF1EE10FA02D59FEDA81A1F +:1051A0000BE0DFEDA81AB4EE611AF1EE10FA02D5A9 +:1051B0009FEDA51A01E0B6EE001AF8EEC81A9FEDB1 +:1051C000A32AC1EE821A21EE811A00200C900CA8AD +:1051D00060EE810AC0ED010A20EE410A80ED020A6C +:1051E0000021C16000AA04A902F0EDFD00AA04A9F3 +:1051F00000A802F051FE00A802F0C9FE9FEDDA0AF5 +:10520000DDED000A60EE800AFDEEE00AC4ED000A62 +:10521000D5ED010A60EE800AFDEEE00AC4ED010A58 +:10522000D5ED020A60EE800AFDEEE00AC4ED020A46 +:10523000D5ED030A20EE800ABDEEC00A84ED030A14 +:1052400004E0102231462046DFF750FB18B0BDECD9 +:10525000028B70BD30B52DED048B81B004460D4638 +:1052600094ED020AF8EEC00A94ED010AB8EEC01AF5 +:1052700094ED000AB8EEC00A20EE000A01EE010A21 +:1052800000EEA00A03F0F8FD9FEDB88AB4EE480ADC +:10529000F1EE10FA3CD4D4ED020AF8EEE00A80EE0A +:1052A000809AB7EE000A30EE490AB5EE400AF1EEF8 +:1052B00010FA01DC9FEDAE0AF6EE009A20EE290A04 +:1052C00003F0DAFDF0EE408AB7EE000A39EE000A8C +:1052D000B5EE400AF1EE10FA01DC9FEDA50A20EED2 +:1052E000290A03F0C9FDB0EE409A94ED010AF8EEE8 +:1052F000C00A94ED000AB8EEC00A20EE000A00EEE3 +:10530000A00A03F0B9FDB4EE480AF1EE10FA07D591 +:105310004FF08040286000206860A860E86027E0C7 +:10532000DFED910A29EE201ABDEEC11A85ED001AB3 +:1053300094ED011AB8EEC11A81EE001A21EE281A76 +:1053400061EE200AFDEEE00AC5ED010AD4ED000A87 +:10535000F8EEE00A80EE800A20EE280ADFED850AEA +:1053600020EE200ABDEEC00A85ED020A0020E860AA +:1053700001B0BDEC048B30BD38B504460D4694ED4C +:10538000030AF8EEC00A94ED020AB8EEC01A94EDD2 +:10539000010AF8EEC01A94ED000AB8EEC00A20EE39 +:1053A000000A01EEA10A01EE010A00EEA00AB5EE24 +:1053B000400AF1EE10FA07D84FF080402860002034 +:1053C0006860A860E86031BD03F056FDF7EE000AA2 +:1053D00080EE800ADFED640A20EE200AD4ED000A98 +:1053E000F8EEE00A60EE800AFDEEE00AC5ED000A84 +:1053F000D4ED010AF8EEE00A60EE800AFDEEE00A64 +:10540000C5ED010AD4ED020AF8EEE00A60EE800A6A +:10541000FDEEE00AC5ED020AD4ED030AF8EEE00A5B +:1054200020EE800ABDEEC00A85ED030A31BD000002 +:105430000000803017B75139A69BC43B0AD7233CE4 +:10544000CDCCCC3DCDCC4C3E9A99993E0014CD4765 +:1054500070B588B0054695F83000400640F181806F +:10546000A869002800D54042B0F5803F0DDAE9690F +:10547000002900D54942B1F5803F06DA296A0029A2 +:1054800000D54942B1F5803F67DBDFF8E815DFF86A +:10549000E84588420BDAE869002800D54042884296 +:1054A00005DA286A002800D54042884202DB032042 +:1054B000A06301E00220A063A86A616B81421ED054 +:1054C000606395ED0A0AB8EEC00ADFEDA00A80EE2F +:1054D000200ADFED9F0A20EE200A10EE100AE2F704 +:1054E000AFFDDFF89825DFF89835DDF7BDFB00222A +:1054F000DFF89035DDF73EFDDDF7E0FE20630020AC +:10550000049004AE216BA86902F0B3FB7060216BBC +:10551000E86902F0AEFBB060216B286A02F0A9FBDB +:10552000F06000AA04A9204602F0A9FB00988001BF +:10553000009000A84168890141608168890181600B +:10554000C1688901C160224600A9204602F0FAFB29 +:1055500021462046FFF710FF03E0DFF81C0500217D +:10556000816308B070BD00000000804E0100803FE4 +:1055700000000000000080CE70B52DED048B8EB0D1 +:10558000044694F85001400640F1DC80DFF8E8540E +:10559000D4F840012968401A00D54042D4F864117B +:1055A000DFF8E4245143814202DA0320A86301E0DA +:1055B0000220A863D4F85001810505D5294604F5D9 +:1055C000A070FFF7D9FEBDE0800407D54FF0804002 +:1055D000A8640020E8642865686597E0002103A8B6 +:1055E000FEF7A9FB0C2205F13C0103A802F09AFF8B +:1055F000002805D1D4F86001A96D884200F08680AA +:1056000000AB03AA616A206880B202F0ADFD00AE73 +:1056100096ED020AF8EEC00A96ED010AB8EEC01A3D +:105620009DED000AB8EEC00A20EE000A01EE010A64 +:1056300000EEA00A03F020FCB0EE408A9FED450A80 +:1056400028EE000ADFED440A80EE200AD4ED580A65 +:10565000F8EEE00A20EE200ADFED400AC0EE208AD4 +:10566000B0EE680A03F0A2FCB0EE409AB0EE680A11 +:1056700003F09FFCF0EE000AB4EE608AF1EE10FA3F +:1056800007D54FF08040A8640020E864286568656D +:1056900033E0DFEDCB0A29EE201ABDEEC11A85ED0D +:1056A000121A20EE200ADDED000AF8EEE00A60EEA4 +:1056B000200AC0EE880AF1EE600AFDEEE00AC5EDB0 +:1056C000130AD6ED010AF8EEE00A60EE200AC0EEF9 +:1056D000880AF1EE600AFDEEE00AC5ED140AD6ED87 +:1056E000020AF8EEE00A20EE200A80EE080AB1EE87 +:1056F000400ABDEEC00A85ED150A0C2203A905F18A +:105700003C00DFF7F3F8D4F86001A86504F5A07455 +:1057100006AA05F14801204602F0B1FA0AAA06A934 +:1057200005F15C0002F0ABFA05F15C01204602F0E5 +:105730001CFB06AA0AA9284602F0A1FA294606A8D7 +:10574000FFF71AFE0EB0BDEC048B70BD0024744947 +:105750000000004EDB0F49400000344B0024F449A8 +:105760002DE9F04F93B00746012407F13005286D6D +:10577000C14E00F05001402904D0F16E002912D032 +:10578000400610D506F1100107F16800FFF762FD31 +:10579000D7F85001C00519D506F15C0107F5A070D6 +:1057A00002F0E3FA12E0D7F8500100F05002402A6C +:1057B00003D0002915D0400613D506F15C0107F58A +:1057C000A07002F0D2FA286DC0050AD500A93046B3 +:1057D00002F0CBFA06F1200200A906F1100002F057 +:1057E0004EFA386BC005384602D5FFF731FE01E0AE +:1057F000FFF7C2FE06F11002314606F1200002F06A +:105800003EFA95F85000400640F1D580386BD7F845 +:1058100050110843C00540F1BA8004AA07F168019D +:1058200006F1100002F0B0FAD5F840A04FEAEA7B8A +:10583000E86BC117AA6BD317A2FB028902FB03997D +:1058400003FB0299A0FB002300FB013301FB0033A3 +:1058500018EB020049EB0301AAFB0A230AFB0B33F6 +:105860000BFB0A338018594102292FDB02DCB0F10F +:10587000804F2BD307A803F0F5F907A8D0F808A0AC +:105880004FEAEA7B4068C117079AD317A2FB028947 +:1058900002FB039903FB0299A0FB002300FB0133E9 +:1058A00001FB003318EB020049EB0301AAFB0A23BA +:1058B0000AFB0B330BFB0A3380185941022905DB25 +:1058C00002DCB0F1804F01D30420B063B06B042838 +:1058D00004D100244FF49661316722E0022801D000 +:1058E00003280BD1A96C41F2883291FBF2F4012C10 +:1058F00000DA0124316F012913DB0FE0012801D008 +:1059000000280ED1A96C41F2883291FBF2F10129F5 +:1059100000DA21464C00316F012902DB091B316797 +:10592000A400032800D0A4005848444300200A9053 +:105930000AAD21460598800202F09BF96860214675 +:1059400004984042800202F094F9A86000200D9073 +:105950000EAA06F110010AA802F091F906F1100250 +:105960000EA906F1100002F0EDF906F1100106F1A2 +:105970001000FFF701FD00A9304602F0F6F906F12C +:10598000200200A906F1100002F079F913E006F1F7 +:105990001003AA6C06F1100107F16800FFF76CFB19 +:1059A00000A9304602F0E1F906F1200200A906F153 +:1059B000100002F064F9002013B0BDE8F08F000081 +:1059C0000000804E38B50446206BC0050AD404F1AF +:1059D0003000006DC00505D4D4F85001C00501D4D5 +:1059E000002032BD244DD4F8500100F4A060B0F581 +:1059F000A06F09D1102204F5A07105F11000DEF7A7 +:105A000075FF0120E86604E02046FFF7A9FE0020AC +:105A1000E86604F13000D0E9022305F1100003F03C +:105A20002BF8002032BD10B5134C74220021204603 +:105A3000DCF714FC4FF08040206120602062E063BE +:105A4000E0650020206710BD80B5FFF7ECFF00285F +:105A500005D10FF21100BDE8024003F0ABB902BD61 +:105A6000000000001322C8210948FEF75CBA0000BC +:105A70000000D0400100640024130120112D445483 +:105A8000FB2189400080664071981C00A69BC400E1 +:105A9000C559020838B50446DFF8E0546868087054 +:105AA000D5E90201C2E90001686A9FED600A296A2E +:105AB000002920D400EE900AF8EEE00A60EE800A99 +:105AC000C4ED000AD5ED0A0AF8EEE00A60EE800A9D +:105AD000C4ED010AD5ED0B0AF8EEE00A60EE800A8B +:105AE000C4ED020AD5ED080AF8EEE00A20EE800ABD +:105AF00084ED030A26E0404200EE900AF8EEE00A48 +:105B000060EE800AC4ED000AA86A404200EE900AE6 +:105B1000F8EEE00A60EE800AC4ED010AE86A40424D +:105B200000EE900AF8EEE00A60EE800AC4ED020A88 +:105B3000286A404200EE900AF8EEE00A20EE800A61 +:105B400084ED030A03F0AEF884ED040AE86B32BD7D +:105B500070B588B00446164604A8FEF7BFFADFF811 +:105B60001C54D5E90201C5E90401C6E9000100A8F9 +:105B700002F0F8FF00A841689FED2C0A009A002A65 +:105B800020D400EE901AF8EEE00A60EE800AC4ED30 +:105B9000000AD0ED020AF8EEE00A60EE800AC4EDD9 +:105BA000010AD0ED030AF8EEE00A60EE800AC4EDC7 +:105BB000020ADDED000AF8EEE00A20EE800A84ED2C +:105BC000030A26E0494200EE901AF8EEE00A60EE81 +:105BD000800AC4ED000A8168494200EE901AF8EE8E +:105BE000E00A60EE800AC4ED010AC068404200EE9F +:105BF000900AF8EEE00A60EE800AC4ED020A00980E +:105C0000404200EE900AF8EEE00A20EE800A84EDB1 +:105C1000030A00202061686B801100F00100296CEC +:105C2000891101F00101084308B070BD0000803007 +:105C300010B58AB0044600A9DFF8440302F0F6F973 +:105C40009FEDBD0ADDED000AF8EEE00A60EE800A85 +:105C5000C4ED000A00A8D0ED010AF8EEE00A60EEFB +:105C6000800AC4ED010AD0ED020AF8EEE00A60EE07 +:105C7000800AC4ED020AD0ED030AF8EEE00A60EEF5 +:105C8000800AC4ED030AD0ED040AF8EEE00A60EEE3 +:105C9000800AC4ED040AD0ED050AF8EEE00A60EED1 +:105CA000800AC4ED050AD0ED060AF8EEE00A60EEBF +:105CB000800AC4ED060AD0ED070AF8EEE00A60EEAD +:105CC000800AC4ED070AD0ED080AF8EEE00A20EEDB +:105CD000800A84ED080A0AB010BD000010B52DED51 +:105CE000028B8AB0044600A8FFF7A2FF9FED1F8A2F +:105CF000DDED000A9DED030AB1EE400A03F05CF908 +:105D000020EE080A84ED000ADDED080A9DED070A81 +:105D1000B1EE400A03F050F920EE080A84ED010AC2 +:105D20009DED060A03F080F920EE080A84ED020AD0 +:105D300094ED000AB5EE400AF1EE10FA05D5DFED5C +:105D40000C0A30EE200A84ED000A0AB0BDEC028B8A +:105D500010BDD0B5894C63680B70D4E90267C2E905 +:105D60000067FFF7BBFFE06BD0BD0000E12E65428E +:105D70000000B4432DE9FF41044600254FF47A7832 +:105D80007E4E06F10802311D06F1200002F00DFFE3 +:105D900004F12C025068306304F13800816C7163A7 +:105DA00004F1CC077968B16304F1D8018B6F3364D7 +:105DB0005268D30501D5D4F82C80836C5FEAC35CAC +:105DC00005D5D0F844C0C44501DAE0460125D7F82E +:105DD00004C05FEACC5E05D5D4F8CCE0C64501DA54 +:105DE000F0460225896F5FEAC15E04D5D4F864E10C +:105DF000C64500DA03255FEAC15E07D50CEA030E4B +:105E00005FEACE5E0BD44FF0FF3508E003EA020EE6 +:105E10000CEA0E0E5FEACE5E01D44FF0FF35002D86 +:105E200005D0022D1BD00ED3032D24D02FE002F07D +:105E30004000401E8041C043C00FF063D4E90E0112 +:105E4000C6E9020125E003F04001491E8941C9432A +:105E5000C90FF163D0E91423C6E9022319E00CF05D +:105E60004000401E8041C043C00FF063D4E93601BA +:105E7000C6E902010DE001F04000401E8041C04330 +:105E8000C00FF063D4E95601C6E9020101E0002029 +:105E9000F06306F1180200A901A8FEF736F99DF992 +:105EA0000000306000240DE040060AD501A850F83B +:105EB000240000EE100ABAEEC80A06EB840080ED5A +:105EC000320A641C032C2CDA387900F05000402888 +:105ED0000CD101A850F8240000EE100AB8EEC00A58 +:105EE0002C2000FB0460443002F084F9786800F054 +:105EF000C001C029D8D101A850F8240000EE100A32 +:105F0000B8EEC00A2C2000FB0460443002F087F990 +:105F1000DFED190A20EE200A06EB840080ED320A3C +:105F2000CFE7002004B0BDE8F08137224FF4617163 +:105F30001448FDF7F8BF00000000803038B50F4C62 +:105F4000D82200212046DCF789F9002508E004F179 +:105F5000D8012C2000FB0540443002F03CF96D1CB8 +:105F6000032DF4DB002032BD80B5FFF7E7FF0648C4 +:105F7000BDE8024002F01EBF0000803750780020CC +:105F800070780020755D02082B5F02082DE9F04152 +:105F90002DED048B84B004460F4690461D46DFF875 +:105FA00064693C2206F10C01304603F06DF8502282 +:105FB00006F1580106F1480003F066F80C2241464C +:105FC00006F13C00DEF792FC1022394606F19800FB +:105FD000DEF78CFC9FEDA39AD6F85C01401CC6F856 +:105FE0005C01072802DB0620C6F85C01D6F85C01DC +:105FF000C0F1060722E000AA06EB071000F14801F5 +:10600000284601F0E0FE00AA07EB470006EB8001FE +:1060100004F1B80001F0AAFDF0EE409A19EE900AE2 +:10602000E2F70EF821F0004153EC182B23F0004367 +:10603000DCF7F8FE01D2B0EE699A7F1C19EE100A67 +:10604000E1F7FEFF41EC180B062FD4DBB0EE480A57 +:10605000F0EE680A04B0BDEC048BBDE8F0810000EE +:106060002DE9F04F2DED0A8B81B0B0EE409AF0EEA5 +:10607000609A0C46914600259FED76ABB0EE4A8AB9 +:10608000F0EE6A8A406B002800D40125DFF87468BE +:10609000482206F1C80106F1C00002F0F5FF06F142 +:1060A000B80888ED149B00270CE053EC182B06EB86 +:1060B000C700D0F8C410D0F8C000DCF7E7FE41EC10 +:1060C000180B7F1C0A2FF0DB51EC180B0022DFF8B5 +:1060D0003838DCF74FFF41EC1B0B88ED16BB322C38 +:1060E0002FDBC820C6F854014846DCF7B7FE41EC68 +:1060F0001A0B9FED5ACB51EC190B0022DFF80C382C +:10610000DCF738FF53EC1A2BDCF7AEFD53EC1C2BFD +:10611000DCF730FF41EC180BB4F57A7F44DB51EC2F +:10612000190B0022DFF8E837DCF724FF53EC1A2BB9 +:10613000DCF79AFD53EC1C2BDCF71CFF41EC180B31 +:1061400032E0D6F8540141F2883199FBF1F101EBCC +:106150008101401AC6F8540102D50020C6F8540146 +:1061600051EC190B0022DFF8AC37DCF703FF824655 +:106170008B464846DCF772FE52465B46DCF774FD00 +:106180000022DFF8D037DCF7F5FE41EC180BD6F82B +:106190005401002808D106F5AA70C068012803D16F +:1061A000B0EE4A8AF0EE6A8A06F5AA7040680028C6 +:1061B00003D0B0EE498AF0EE698ADFF85C078145CA +:1061C00003D1B0EE498AF0EE698A53EC182B002017 +:1061D0000146DCF779FC01D088ED18BBD8E918013D +:1061E000D8E91623DCF780FC21F00041DFF82C27EA +:1061F000DFF82C37EDF7D2FD22D8D6E92E23002088 +:106200000146DCF761FC1BD1012D19D1C820C6F86D +:10621000540151EC190B0022DFF80837DCF7AAFE15 +:1062200004460D464846DCF719FE22462B46DCF7AD +:106230001BFD0022DFF81C37DCF79CFE41EC180B3D +:10624000B0EE480AF0EE680A01B0BDEC0A8BBDE87A +:10625000F08F0000000000000000000000000000BF +:106260000088B340002474492DE9F04F2DED0A8BCE +:10627000B1B0044619A800210A460B460EC0DFF84B +:10628000845605F5AC76706C00051FD5D4F8500126 +:1062900000051BD420A80FF2D8611022DCF7D8FB30 +:1062A000D4E9362305F59A7002F0E6FBD4E93623EB +:1062B00020A802F0F5FB1022002105F1A800DBF771 +:1062C000CDFF4FF08040C5F8A80062E208460DE01F +:1062D00005EB800191ED2A0AB8EEC00A20EE090A0A +:1062E00012A901EB800181ED000A401C9FEDE69AA6 +:1062F0000428EDDB06A802F035FC9DED060AB8EE99 +:10630000C00A20EE090A8DED1C0A06A81CA990ED12 +:10631000010AB8EEC00A20EE090A81ED010A90EDEB +:10632000020AB8EEC00A20EE090A81ED020A90EDD9 +:10633000030AB8EEC00A20EE090A81ED030A02A89A +:1063400002F010FC02AFF968786801F08CFC80461E +:106350000299B86801F087FCA8EB00001690F96874 +:10636000B86801F080FC81460DF158080299786800 +:1063700001F079FC4844C8F80400F868014601F0CF +:1063800072FC07460299084601F06DFCC019A0F1A5 +:106390008040C8F8080012AB16AA1CA92046FFF7D7 +:1063A000F5FDB0EE408AF0EE608A9FEDB3AB0027BA +:1063B00023E004EB87008069DCF750FD41EC1B0B08 +:1063C0009FEDAFCB53EC1B2B51EC1C0BDCF74CFCC3 +:1063D00002460B4651EC1B0BDCF746FC02460B4613 +:1063E00051EC1C0BDCF740FC02460B4651EC1A0B3F +:1063F000DCF74CFD41EC1A0B7F1C032FD9DB51EC71 +:106400001A0BE1F745FE00EE100A02F035FD10EE22 +:10641000100AE1F715FE96ED08AB53EC1A2BDCF7EA +:1064200063FB41EC1B0B86ED0ABBDFF8FC24DFF8B5 +:10643000FC34DCF719FC41EC1C0B86ED0CCB51EC69 +:106440001A0B53EC1C2BDCF721FDC6E9080151ECBB +:106450001B0B53EC1C2BDCF707FCD6E90E23DCF7F7 +:1064600015FDDFF8CC24DFF8CC34DCF7FDFB41EC84 +:10647000100B86ED0E0B0027DFF8BC84DFF8BC2480 +:10648000DFF8BC34DCF7CEFC1FD2D8F808000028B7 +:1064900006D10120C8F80800D4E90E01C8E90001BE +:1064A000D8F80800012813D1D4E90E23D8E9000157 +:1064B000101A63EB0101DFF88C243B46994207DB9D +:1064C00001DC904204D3012702E03846C8F80800F6 +:1064D0004FF0000802F062FD38430ED0D5F85801A5 +:1064E00000280AD1D4F8D400022806DA2046FEF7A4 +:1064F00065FD012801D14FF0010804F1180001F0F9 +:10650000A5FB81093269DFF81004824200DB0246F4 +:10651000B0EE480AF0EE680A2046FFF7A1FD05F14B +:10652000A80787ED040B53EC102BD7E91E01DCF70D +:106530009BFBC7E9040128A902A801F077FD05F536 +:106540009A7906AA02A9484601F099FB494602A891 +:1065500001F00BFC002218E002EB420C9C440DF110 +:10656000A00E5EF82CC00DF1180E0EEB830EDEF8B7 +:1065700004E0CEFB0C015B1C032BEDDB19AB800FA1 +:1065800040EA810043F82200521C032A03DA00206B +:1065900001460346F0E70DF16409D5F858010028DB +:1065A00002D00020C9F80800D9F808B0CBF10000EB +:1065B00000EE100AB8EEC00A20EE098AB0EE480AD2 +:1065C00002F0F4FC8DED0E0A0DF1380A0020CAF835 +:1065D0000400CAF80800B0EE480A02F0EAFC8AEDAE +:1065E000030A306941F2883190FBF1F000EE100AA5 +:1065F000B8EEC00ADFEDC20A01EE10BAB8EEC11A59 +:1066000081EE201A81EE001AF0EE001A81EE211AB6 +:10661000BDEEC11A11EE100A400001EE100AB8EEEC +:10662000C11A61EE200A20EE800ABDEEC00A89ED93 +:10663000020AB8EEC00A20EE098AB0EE480A02F05B +:10664000B5FC8DED0A0A0DF128090020C9F80400F7 +:10665000C9F80800B0EE480A02F0ABFC89ED030A65 +:1066600024AA0EA912A801F0AEFB0EAA0AA924A81A +:1066700001F0A9FB002019E000000000000000006C +:10668000000000000000F03E000080305AF82010AA +:1066900000EE101A12A901EB800181ED000ABEEE96 +:1066A000C10A05EB800181ED2A0A401C0428EDDBBC +:1066B000D5F85801002803D097ED040B86ED060BA2 +:1066C000D6E906234FF033309F49DCF7CDFACDE908 +:1066D0000001D7E904239D489D49DCF7C5FADDE9AF +:1066E0000023DCF7D3FB41EC100B87ED040B86EDA8 +:1066F000060BB8F1000F03D0D5F8580100283FD0A1 +:106700009FED958B53EC102B51EC180BDCF7ACFA8A +:10671000E1F7BEFC00EE100A02F048FC8DED0A0A1B +:106720000020C9F80400C9F80800D7E9042351EC97 +:10673000180BDCF799FAE1F7ABFC00EE100A02F057 +:1067400038FC89ED030A0EAA0AA912A801F03BFB46 +:106750000EA801F0C2FB00200AE00AEB800191EDD7 +:10676000000ABEEEC10A05EB800181ED2A0A401C39 +:106770000428F2DBD4E9362305F1A80002F090F9F1 +:10678000D5F85801002804D000217160401EC5F8DA +:10679000580131B0BDEC0A8BBDE8F08FF8B5044666 +:1067A000584800F5AC75D4F8501101F41061B1F5FA +:1067B000106F0BD1102204F5A07100F59A70DEF76E +:1067C00095F8D4F8500168640020F2BD04F1C801C6 +:1067D0000A7AD20604D40322C0F8582100226A6043 +:1067E0008A68D2050AD5D4F85021D2050CD4226B80 +:1067F000D20503D5D4F88020D20505D40321C0F8F2 +:10680000581100206860F2BD6A69002A0DD0D1E9F4 +:106810000423D1E90667901B63EB07014FF47A72FA +:106820000023E2F759FC286115E0D4F8C81044F6BB +:106830002062914201DB29610DE0EB68C918E96033 +:10684000914205DAD0F85801002801D10020F2BDAC +:1068500029610020E8602046FFF706FDD4F85001CA +:1068600068640020F2BD000010B5264C4FF4D472CD +:1068700000212046DBF7F2FC4FF08040C4F83401E1 +:10688000C4F8A8000022134604F1A80002F008F999 +:106890004FF47A70C4F8540100204FF08041C4E9ED +:1068A00048019FED2F0B84ED5C0B04F5B87080ED73 +:1068B000020B80ED040B80ED060B80ED080B002130 +:1068C000016310BD0F49C1F86001002070470D49F8 +:1068D000C1F86C010020704704224FF41671224861 +:1068E000FDF721BB80B5FFF7BFFF0020FFF7EAFFF0 +:1068F0000020FFF7ECFF1D48BDE8024002F05ABA45 +:10690000E1023747C0030120000024400000594045 +:106910000000394000C0624040420F001383C0CAEB +:10692000A145B63F00007940989999999999B93F46 +:10693000CDCCCCCCCCCCEC3F682D01207B14AE4729 +:10694000E17A843F012F68593333E33F9A9999994B +:106950009999D93F0088B340000000000000E03F53 +:1069600000000000000000009D670208D9680208CE +:1069700000000040000000000000000000000000D7 +:1069800080B5B8220146DFF8F004DDF7AFFF002044 +:1069900002BD80B5B822DFF8E014DDF7A7FF0020C4 +:1069A00002BDF0B585B0044600A902A8FDF7C3F901 +:1069B00001A802F089F802283FD0D4F80801009914 +:1069C000461ADFF8B44494F8B000002848D0002EEE +:1069D00046D0F717029D2268D317A2FB060102FBDF +:1069E000071103FB0611000C40EA01404019029018 +:1069F00002ADD5F804C06268D317A2FB060102FB02 +:106A0000071103FB0611000C40EA01406044686076 +:106A1000D5F808C0A068C117A0FB062300FB073308 +:106A200001FB0633120C42EA034202EB0C00A860A1 +:106A3000032102A8FDF741F912E0606B03280FD192 +:106A4000FDF76CF900280BD0DFF82C440C2202A9CA +:106A500004F10C00DDF74AFF0098A06100F003F894 +:106A6000002005B0F0BD2DE9F04F87B0DFF8080435 +:106A70008069DFF80864B168884200DAB060F168C4 +:106A8000814200DAF060F168B268891A3269914295 +:106A900001DA0020BBE14FEA204A4FEAEA7B706846 +:106AA000401C7060AAFB0A010AFB0B110BFB0A11C8 +:106AB000CDE90201AAFB00230AFB01330BFB0033E3 +:106AC000CDE90023D6E90E0110EB0A0041EB0B01E2 +:106AD000C6E90E01D6E90C01DDE90223801859410F +:106AE000C6E90C01D6E91C01DDE9002380185941F3 +:106AF000C6E91C01DFF88003D0E92A23DDE90001A3 +:106B0000AAFB00450AFB01550BFB0055101943EB8E +:106B10000501DFF86423C2E92A01002746E0DFF817 +:106B2000580300EB870E00EBC70CDCE90C01DEF824 +:106B30000C20D317A2FB0A4502FB0B5513FB0A5589 +:106B400000196941CCE90C010CF1300CDCE90A01B7 +:106B5000DDE90245DEF80C20D317A2FB048902FB15 +:106B6000059903FB049910EB080041EB0901CCE9FE +:106B70000A01DCE91023DEF80C00C1171018594196 +:106B8000CCE91001DCE91889DDE90001DEF80C2010 +:106B9000D317A2FB004502FB015503FB005518EB80 +:106BA000040049EB0501CCE918017F1C032FB6DB7B +:106BB0007068B0F57A7FC0F2968000EBC0000930B3 +:106BC0000A2190FBF1F070608A464FF0000B092417 +:106BD000D6E90E01A4FB002304FB013312F10900E6 +:106BE00043F1000152465B46E2F776FAC6E90E0130 +:106BF000D6E90C01A4FB002304FB013312F10900C8 +:106C000043F1000152465B46E2F766FAC6E90C0121 +:106C1000D6E91C01A4FB002304FB013312F1090097 +:106C200043F1000152465B46E2F756FAC6E91C0101 +:106C30009148D0E92A23A4FB020104FB0311093087 +:106C400041F1000152465B46E2F746FA8A4AC2E940 +:106C50002A015F4645E0884800EBC708D8E90C01E7 +:106C6000A4FB002304FB013312F1090043F10001EE +:106C700052465B46E2F730FAC8E90C0108F13008E9 +:106C8000D8E90A01A4FB002304FB013312F1090037 +:106C900043F1000152465B46E2F71EFAC8E90A01D9 +:106CA000D8E91001A4FB002304FB013312F1090011 +:106CB00043F1000152465B46E2F70EFAC8E91001C3 +:106CC000D8E91801A4FB002304FB013312F10900E9 +:106CD00043F1000152465B46E2F7FEF9C8E91801AC +:106CE0007F1C032FB7DBD6E90C01A0FB002300FBC0 +:106CF000013301FB00330320A0FB024500FB0355D9 +:106D0000CDE90245D6E90E01D6E91C23A2FB0045D8 +:106D100002FB015503FB0055AD0045EA9475706810 +:106D2000C117554AD2E92A89A8FB002308FB013381 +:106D300009FB0033CDE90423002761E0DDE902010E +:106D4000B0EB8400A941DDE9042380185941CDE965 +:106D5000000101D1002852D0474800EBC70000F1E4 +:106D6000300CD0E90C23D6E90C01A0FB02AB00FBF0 +:106D700003BB01FB02BBD6E90E23DCE90A01A0FB41 +:106D8000028900FB039901FB0299BAEB08026BEB45 +:106D900009030320A0FB02AB00FB03BBDCE91023CB +:106DA000D6E91C01A0FB028900FB039901FB0299B3 +:106DB000BAEB080A6BEB090B7268D317DCE9180110 +:106DC000A0FB028900FB039901FB02991AEB080062 +:106DD0004BEB0901DDE9022380185941B0EB840037 +:106DE000A941DDE9042380185941401E61F10001E9 +:106DF000DDE90023E2F770F91F4941F827007F1C05 +:106E0000032F9BDB1C48012180F8B010002007B045 +:106E1000BDE8F08F10B5184CB82200212046DBF7F2 +:106E20001DFA174820624FF4AA0060624FF4A020B8 +:106E3000A062002010BD082296211248FDF773B809 +:106E400080B5FFF7E7FF40F2D163B8220E490F4843 +:106E500001F05FFF002801D0012002BD0C4801F0C5 +:106E6000A9FF002801D0012002BD0348012180F8BC +:106E7000B110002002BD000098130120B0130120C2 +:106E80000000D8FFA369020893690208816902081B +:106E9000376E0208704700200AE0DFF8101C01EB93 +:106EA0008001DFF80C2C0A62DFF8FC2BCA62401C60 +:106EB0000328F2DB704700201BE0DFF8F01B01EB3A +:106EC000800191ED2D0AD1ED080AF4EE400AF1EEB1 +:106ED00010FA01D581ED080A01F12002D2ED030A72 +:106EE000B4EE600AF1EE10FA02D5D1F8B410D16018 +:106EF000401C0328E1DB7047FEB5B0F954201204B2 +:106F00000092B0F95620130400AA5360B0F958401B +:106F100024049460DFF8945B009E6F6EF61B00966D +:106F2000AE6E9B1B5360EB6EE31A93600B46416F92 +:106F3000006D80B201F018F9F7BDF0B58DB003A96E +:106F40000022134614461CC1DFF8604BD4F894109D +:106F5000012902D11146C4F8941006A9FFF7CCFF0D +:106F600009A801F0D7FD06980999A0EBA130069079 +:106F700009A806A94A684368A2EBA3324A608A6856 +:106F80008068A2EBA0308860602204F5587104F597 +:106F9000577002F079F80C2206A904F55D70DDF750 +:106FA000A5FC00A801F05EFE602204F5737104F5F3 +:106FB000727002F069F80C2200A904F57870DDF710 +:106FC00095FC002200A838E004F234439D686D1C53 +:106FD0009D6002EB420304EB83050923039ED5F871 +:106FE0005C7397FBF3F7BE19039602EB420604EBC2 +:106FF00086064F68D6F860C39CFBF3FC67444F607D +:1070000006F558768F68D6F804C09CFBF3FC6744FD +:107010008F600099D5F8C85395FBF3F56918009176 +:107020004168F56E95FBF3F5691841608168356F2D +:1070300095FBF3F359188160521C03A9092AC3DB9D +:10704000039A002A00D5524203924A68002A01D5C9 +:1070500052424A608A68002A01D552428A60009AE8 +:10706000002A00D5524200924268002A01D55242BD +:1070700042608268002A01D5524282600022039B4E +:10708000009DAB4200DA01224B684568AB4200DA52 +:10709000521C89688068814200DA521C04F2344331 +:1070A0009868092800DB521C042A0FD194F8340494 +:1070B0000146032808D35A6804F16400FCF7D6FDA2 +:1070C000012001F0C7FD01E0FCF7C9FD0DB0F0BDE6 +:1070D0002DE9F0410446DFF8D459002085F8340446 +:1070E00005F234467060074605F1080825E005EB17 +:1070F000870090ED330AD8ED0D0AB4EE600AF1EE88 +:1071000010FA19DBD8E912230020DFF8AC19DBF7FD +:10711000BDFE21F00041DFF8A429DFF8A439DBF738 +:1071200081FE09D295F83404401C85F83404706857 +:107130000121B940084370607F1C032FD7DB95F80D +:107140003404002815D0002709E004EBC70041688B +:107150000068DCF7B3F805EB870148667F1C032F56 +:10716000F3DB0020B060A868042802DA95F8340444 +:10717000A86095F8340403281DD198ED010ADFEDCD +:10718000BD0AB4EE600AF1EE10FA14D5D8E9122364 +:107190000020DFF82419DBF779FE21F00041DFF849 +:1071A0001C29DFF81C39DBF73DFE04D2A868032850 +:1071B00001D10420A86098ED020ADFEDAF0AB4EE19 +:1071C000600AF1EE10FA1DD598ED010ADFEDAB0A69 +:1071D000B4EE600AF1EE10FA14D5D8E912230020BB +:1071E000DFF8D418DBF752FE21F00041DFF8D42895 +:1071F000DFF8D438DBF716FE04D2A868042801D1E2 +:107200000520A860BDE8F0812DE9F0410446DFF8D3 +:107210009C78D7F8B404012850D107F1E005F7EEC7 +:10722000000AB7EE000A07F5E471284601F032FFC4 +:1072300007F1500207F5D471284602F035F906002F +:107240003DD07868401C7860616F0C46D7E9140126 +:10725000DCF734F8214600F00CFD00EE100ABAEE1F +:10726000C80A10EE100AE0F7EBFEC7E9140107F5B3 +:10727000D07407F15008D4E90201DCF71FF8C8F810 +:107280000800D4E90401DCF719F8C8F80C00D4E9C7 +:107290000601DCF713F8C8F81000D7E968010122ED +:1072A000DFF82838ECF77AFD09D89FED750AF0EE83 +:1072B000400A2946284601F0EDFE00E0002630464F +:1072C000BDE8F08190ED030AD0ED040AF4EE400A27 +:1072D000F1EE10FA1BD590ED051AB4EE401AF1EE5E +:1072E00010FA14D50021016490ED040AD0ED050ACE +:1072F000B4EE600AF1EE10FA04DB012141640221D0 +:107300008164704702214164012181647047B4EEB9 +:10731000600AF1EE10FA1BD590ED050AB4EE600A92 +:10732000F1EE10FA14D50121016490ED030AD0EDBD +:10733000050AB4EE600AF1EE10FA04DB00214164A4 +:1073400002218164704702214164002181647047F9 +:107350000221016490ED030AB4EE600AF1EE10FA26 +:1073600004DB0021416401218164704701214164F3 +:107370000021816470470021C1640B4606E01A4673 +:1073800040F8212000EB81025362491C0329F6DBFF +:107390000121416719468167704710B5044604F121 +:1073A0005400142141600A21C16000210177204668 +:1073B000FFF7E1FF0020606510BD000030B52DED46 +:1073C000028B87B003A9FFF797FD9FEDB18B0024D7 +:1073D00018E003A850F8240000EE100ABAEEC80A1C +:1073E00000A800EB840080ED000A20EE000A10EEF9 +:1073F000100AE0F725FE53EC182BDBF747FD41ECB4 +:10740000180B641C032CE4DBB0EE480AF0EE680AAB +:10741000DBF7D4FEB0EE408AF0EE608A002419E07B +:1074200000EB840500A850F82400E0F709FE53ECB7 +:10743000182BDBF79FFDE0F72BFE00EE100AD5F8C6 +:10744000400400EE900A30EE200A05F2404080ED44 +:10745000000A641CDFF85406032CE1DBD0F8941416 +:10746000491CC0F894140121C0F8BC1407B0BDEC4D +:10747000028B30BDAF47E13D00007A43BD74933CC1 +:10748000CDCCCC3E38B50446002004F13C0507E0E5 +:10749000B1EE400A81ED030A002144F82010401C9F +:1074A000032838DA95ED050AB8EEC00A04EB80012E +:1074B000D1ED000A80EE800AF0EE400AF5EE400AB7 +:1074C000F1EE10FA02DBB0EE601A01E0B1EE601AE4 +:1074D000D1ED061AF5EE401AF1EE10FA01DAF1EEEE +:1074E000611A31EE611A81ED0C1AC1ED060AD4ED74 +:1074F0000F0ABFEE001A30EE811AD1ED091A01EE23 +:10750000210A80EE200A81ED090AB5EE400AF1EE6B +:1075100010FABDDBBEE72046FFF7D4FE2869B0F5C0 +:107520007A7F01DA401C2861686894F87010052998 +:1075300000F28380DFE801F0030E192C6C4004F1A7 +:10754000700001214160816000202861084684F8B4 +:10755000700031BD04F17000C16801296DD10221B4 +:1075600084F870100021816031BD04EB800090ED43 +:10757000030AD5ED0A0AB4EE600AF1EE10FA12DA47 +:10758000D5ED0B0AF4EE400AF1EE10FA4BDB2BE0DE +:1075900004EB800090ED030AD5ED0A0AB4EE600A10 +:1075A000F1EE10FA49DB042084F8700004F1700059 +:1075B00000214160816031BD04EB800095ED0B0A34 +:1075C000D0ED030AB4EE600AF1EE10FA0CDA90ED99 +:1075D0000C0ADFED330AB4EE600AF1EE10FA0CD5B6 +:1075E0002869696A884228DB032084F8700004F166 +:1075F000700001214160816031BD042084F8700079 +:107600000020286104F1700000214160816031BDDB +:1076100095ED0C0A04EB8000D0ED030AB4EE600A8D +:10762000F1EE10FA09DB052084F8700000202861D3 +:1076300004F1700001214160816031BD10B52DED74 +:10764000028B08EE100ADFF86444B8EEC80ADFEDDA +:10765000120A20EE200ADFED110A80EE200A10EE59 +:10766000100AE0F7EDFC41EC100B02F0ABFA53EC22 +:10767000102B0020DFF85814DBF7F6FADBF71EFEBC +:10768000C4F8840084ED208ABDEC028B10BD00009C +:107690000000000000000000368D27400024F4495F +:1076A000CCCC4CBD2DE9F0472DED028B90B00446BB +:1076B00002A800210A460B460EC004F13006B06C49 +:1076C000DFF8E85344F62061884206DBD5F88010E5 +:1076D000884212D0FFF7B2FF0FE0D5F85823801888 +:1076E000C5F858038842C0F26781B16C814201D06D +:1076F000FFF7A4FF0020C5F85803206BC5F8C004AD +:107700002046FFF75BFED5F89404D5F89014884224 +:1077100006DB05F58860FFF7B5FE0020C5F8940488 +:10772000D5F8B804012802D12046FFF706FCD5F8A9 +:10773000B404012840F0408102A801F0C1FA02A877 +:10774000D0ED020A90ED011A9DED020ADDED021A5C +:1077500020EE210A01EE010A00EEA00A01F08CFBE6 +:1077600085ED030ABEEE410A10EE100AADF80000E6 +:1077700000A800214180818005F52C773946FDF76E +:107780008CF808A801F0EEF9296F089800F071FA5A +:1077900081460DF12008696FD8F8040000F069FAFD +:1077A0008246A96FD8F8080000F063FA0AEB0901D5 +:1077B00000EB0109E96FD8F80C0000F05AFA00EB71 +:1077C0000908102208A905F17000DDF78FF84FF0C5 +:1077D00000091CE004EB490A716CBAF9540000047A +:1077E00000F047FA00EE100A0CA800EB890080EDCB +:1077F000000ABAEEC80A05EB890080ED050A05A863 +:10780000BAF95410090440F8291009F10109B9F135 +:10781000030FDFDB05A905F5E47001F0DAFCD5F80C +:10782000280329688842C0F2C78094ED428ABAEEE4 +:10783000C88A95ED360AB5EE400AF1EE10FA0BD083 +:1078400038EE400A10EE100AE0F7FAFB21F0004192 +:10785000E0F71EFCC5F8DC0085ED368AA868032831 +:1078600004D9001F0AD0401E0FD014E09948A86325 +:107870004FF07E50E863C82028640CE09648A86367 +:107880009648E8636420286405E09548A863954815 +:10789000E863322028643846FCF78DFE01F0FAFADE +:1078A00000EE100ADFED800A80EE200A85ED040A62 +:1078B000A822002105F52C70DAF7D0FCD5F8840059 +:1078C000404549DA95ED040AB5EE400AF1EE10FAAA +:1078D00042DDD5ED0E0AB4EE600AF1EE10FA3BD5AA +:1078E0006868296C884205DA2046FFF78DFC00287D +:1078F00010D161E095ED2C0ADFED6E0AB4EE600A5E +:10790000F1EE10FA06DB2046FFF77EFC002853D08C +:1079100000206860002005E005EB80014A69C1F89D +:10792000B420401C0328F7DBFFF7C5FA4FF000092D +:107930000BE005EB890090ED080AD0ED0B0A30EE64 +:10794000600A80ED330A09F10109B9F1030FF0DB98 +:1079500005F5D470FFF7BCFB00200CE005EB8001BF +:1079600091ED260AD1ED050A30EE600AB0EEC00AAC +:1079700081ED290A401C0328F0DB95ED290AD5ED9D +:107980002A0A30EE200AD5ED2B0A30EE200A85EDCA +:107990002C0A4FF0000906E005EB89004169C0F8A8 +:1079A000981009F10109B9F1030FF5DBE822002174 +:1079B00005F5E470DAF752FC002010B0BDEC028B44 +:1079C000BDE8F08710B5394C4FF49B62002120468A +:1079D000DAF744FC102020604FF080402067FFF76A +:1079E0005AFA04F58860FFF7D8FC2068C4F89004C0 +:1079F0004FF08440C4F87C041E20C4F89C043A482C +:107A0000C4F8A8043948C4F8A4043948C4F8AC043C +:107A10001920FDF753FA002010BD012240F2523127 +:107A20003448FCF780BA10B5204C4FF49B620146F5 +:107A30002046DCF75BFF0120C4F89400002010BD55 +:107A400080B51A490022C1F894204FF49B62DCF7FC +:107A50004DFF002002BD10B5FFF7B4FF040009D0B0 +:107A60004FF437730FF29C020FF2BC01FFF712FACA +:107A7000204610BD204801F09DF9040009D040F2D5 +:107A8000DF230FF280020FF2A001FFF703FA204676 +:107A900010BD42F226034FF49B6218491848BDE816 +:107AA000104001F036B9000000401C4608D100200B +:107AB00000401CC6CDCC4C3D0000F0BF9A9999996E +:107AC0009999B93F9CC420B07268913F0070A7405B +:107AD0000000D0410080BB44000096439A99993F32 +:107AE000000070423333B33FCDCCCC3ECDCC4C3FC5 +:107AF0003333333FA57602081B7A0208417A020825 +:107B0000277A0208696E765F656E61626C655F69EF +:107B10006E5F7573655F6175746F5F63616C6962D9 +:107B2000726174696F6E0000433A5C50726F6A65EF +:107B300063745C4E6F7465335F466972655C4E6F4B +:107B40007465335F466972655C496E76656E536530 +:107B50006E73655C6D706C5C616363656C5F6175B1 +:107B6000746F5F63616C2E630000000010B590B00D +:107B700014460022009200AA90ED010AB8EEC00A55 +:107B8000D1ED020AF8EEE00A20EE200AD0ED020A5A +:107B9000F8EEE00A91ED011AB8EEC11A00EEC10A42 +:107BA00082ED010A90ED020AB8EEC00AD1ED000A9A +:107BB000F8EEE00A20EE200AD0ED000AF8EEE00A26 +:107BC00091ED021AB8EEC11A00EEC10A82ED020A66 +:107BD00090ED000AB8EEC00AD1ED010AF8EEE00A15 +:107BE00020EE200AD0ED010AF8EEE00A91ED001A2D +:107BF000B8EEC11A00EEC10A8DED030A0CAA00A965 +:107C0000204600F0E0F804A9204600F0FAF908AA9E +:107C100004A90CA800F0D7F808A890ED020AB5EE68 +:107C2000400AF1EE10FA09D1D0ED010AF5EE400A52 +:107C3000F1EE10FA02D19FED530A05E0D0ED010AF2 +:107C400001F0BAF9B1EE400A10B010BD00210A46A9 +:107C500005E050F822305B1303FB0311521C032A8A +:107C6000F7DB0846704781FB0001400F40EAC10086 +:107C7000704781FB0001800F40EA810070472DE9C9 +:107C8000F04104460D46164629682068FFF7F1FFCB +:107C9000074669686068FFF7ECFF8046A968A0683E +:107CA000FFF7E7FFA7EB08010F1AE968E068FFF7A5 +:107CB000E0FF381A306069682068FFF7DAFF07468E +:107CC00029686068FFF7D5FF8046E968A068FFF77C +:107CD000D0FF08EB07014718A968E068FFF7C9FF64 +:107CE000381A7060A9682068FFF7C3FF0746E96883 +:107CF0006068FFF7BEFF80462968A068FFF7B9FFFC +:107D0000A7EB080147186968E068FFF7B2FFC019E0 +:107D1000B060E9682068FFF7ACFF0746A9686068B3 +:107D2000FFF7A7FF80466968A068FFF7A2FF08EB8E +:107D300007010F1A2968E068FFF79BFFC019F06080 +:107D4000BDE8F08110B403680C68E3181360436861 +:107D50004C68E318536083688C68E3189360C068CC +:107D6000C9680818D06010BC704702680A60426891 +:107D700052424A60826852428A60C0684042C8608B +:107D8000704700000000000030B591B00446154671 +:107D9000002000900C2201A8DCF7A8FD0CAA00A985 +:107DA0002046FFF76CFF08A92046FFF7DEFF04AA74 +:107DB00008A90CA8FFF763FF0C2205A92846DCF7E9 +:107DC00095FD11B030BD90ED000AD1ED000A20EE16 +:107DD000200AD0ED010A91ED011A00EEC10AD0EDA2 +:107DE000020A91ED021A00EEC10AD0ED030A91EDEC +:107DF000031A00EEC10A82ED000A90ED000AD1EDEF +:107E0000010A20EE200AD0ED010A91ED001A00EEE1 +:107E1000810AD0ED020A91ED031A00EE810AD0ED3D +:107E2000030A91ED021A00EEC10A82ED010A90EDFB +:107E3000000AD1ED020A20EE200AD0ED010A91EDF0 +:107E4000031A00EEC10AD0ED020A91ED001A00EE0D +:107E5000810AD0ED030A91ED011A00EE810A82ED4C +:107E6000020A90ED000AD1ED030A20EE200AD0EDBF +:107E7000010A91ED021A00EE810AD0ED020A91ED9D +:107E8000011A00EEC10AD0ED030A91ED001A00EECE +:107E9000810A82ED030A704790ED000AD1ED000AD5 +:107EA00030EE200A82ED000A90ED010AD1ED010AC0 +:107EB00030EE200A82ED010A90ED020AD1ED020AAD +:107EC00030EE200A82ED020A90ED030AD1ED030A9A +:107ED00030EE200A82ED030A704790ED030AD0EDE0 +:107EE000020A90ED011AD0ED001A21EEA12A01EE4E +:107EF000012A00EEA02A00EE002AB0EE000AB4EE3D +:107F0000402AF1EE10FA3AD5B6EE000A22EE000A47 +:107F100060EE020AB7EE081A00EEC21A61EE020A1B +:107F200020EE201AB7EE082A01EE602A62EE200A3F +:107F300020EE201AB7EE082A01EE602A62EE200A2F +:107F400020EE200AB7EE081A00EE601A21EE202A71 +:107F500021EE820A80ED000A90ED010A20EE020A6D +:107F600080ED010A90ED020A20EE020A80ED020A7D +:107F700090ED030A20EE020A80ED030A70474FF0ED +:107F80007E510160002141608160C160704710B581 +:107F90000446D4ED030A94ED021AD4ED011A94EDCF +:107FA000000A20EE000A01EEA10A01EE010A00EE2D +:107FB000A00A00F061FFB5EE400AF1EE10FA18D009 +:107FC000D4ED000AC0EE800AC4ED000AD4ED010A27 +:107FD000C0EE800AC4ED010AD4ED020AC0EE800AA8 +:107FE000C4ED020AD4ED030A80EE800A84ED030A90 +:107FF00010BD4FF07E50206000206060A060E06007 +:1080000010BD02680A6090ED010AB1EE400A81EDF0 +:10801000010A90ED020AB1EE400A81ED020A90EDEC +:10802000030AB1EE400A81ED030A704770B50546B8 +:108030000C4668680146FFF716FE064629680846A2 +:10804000FFF711FE8019A0F180402060A9686868E0 +:10805000FFF709FE06462968E868FFF704FE301AB4 +:108060006060E9686868FFF7FEFD06462968A86851 +:10807000FFF7F9FD8019A060A9686868FFF7F3FDB4 +:1080800006462968E868FFF7EEFD8019E060A868F9 +:108090000146FFF7E8FD064628680146FFF7E3FDC5 +:1080A0008019A0F180402061E968A868FFF7DBFD36 +:1080B000064629686868FFF7D6FD301A6061E968EE +:1080C0006868FFF7D0FD06462968A868FFF7CBFD72 +:1080D000301AA061E968A868FFF7C5FD064629685F +:1080E0006868FFF7C0FD8019E061E8680146FFF7A6 +:1080F000BAFD064628680146FFF7B5FD8019A0F1D4 +:108100008040206270BD90F90010012901DB002041 +:108110007047002901D50420704790F9011001290A +:1081200001DB01207047002901D50520704790F937 +:108130000200012801DB02207047002801D506203B +:1081400070470720704738B50446FFF7DCFF054647 +:10815000E01CFFF7D8FF45EAC005A01DFFF7D3FFDD +:1081600045EA801080B232BD2DE9F04107460C4649 +:1081700015461E46780702D54FF0FF3000E001207B +:10818000B84608F0030255F822205043FFF771FD6E +:108190003060B80602D54FF0FF3000E001202146E4 +:1081A0004FEA680202F00C0252595043FFF761FD9A +:1081B0007060F80502D54FF0FF3000E00120214645 +:1081C0004FEA281202F00C0252595043FFF751FDBA +:1081D000B060BDE8F08110B400220260426005E0AA +:1081E00000EB820351F822401C61521C052AF7DB88 +:1081F00010BC704780ED090A80ED0A0AD0ED060A2E +:10820000B7EE001A70EE810A90ED071A70EE810A3F +:1082100080EE200A80ED000A80ED010A704780EDB3 +:10822000090A90ED010AD0ED000AD0ED061A90ED92 +:10823000091A01EEE01AD0ED071A01EEC01A90ED0E +:10824000042AF0EE411A42EE201AD0ED050A40EE63 +:10825000801AC0ED0A1A90ED080A21EE800A80ED1E +:108260000A0A0168416080ED001A70472DE9F84361 +:1082700004460D461646002711E055F8291009EB73 +:108280004900C01954F82000FFF7F3FC804409F1BD +:108290000109B9F1030FF0DB46F827807F1C032F9B +:1082A00003DA4FF00008C146F3E7BDE8F183F1B50A +:1082B00082B0012801DA0020FEBD00A902A800F06A +:1082C00055F8044600250098012806DB01460246C1 +:1082D00002EBD1714910A0EB4105401B00900298C0 +:1082E000A0F1804706463946FFF7C3FCA6EB6006BF +:1082F000022C23DB7810A0F1C0413846FFF7B9FC0F +:1083000001463846FFF7B5FC471039463046FFF7BF +:10831000B0FCA6EB6006032C10D17810A0F1C04190 +:108320003846FFF7A6FC01463846FFF7A2FC471087 +:1083300039463046FFF79DFCA6EB6006002D04D0C1 +:1083400027493046FFF795FC06460098012802DBD6 +:108350004010064107E010F1010F04D121493046D9 +:10836000FFF787FC06463046FEBD000070B50446A8 +:108370000D4620681C49884205DB401020604FF004 +:10838000FF3028601AE0194EB04215DA204600F09E +:1083900039F8286020681649884205DB40102060C3 +:1083A0002868401E286009E0B04207DA40002060DB +:1083B0002868401C286001E00020286020680D49E2 +:1083C00009180D4A914201D3032070BD0B490818CA +:1083D0000B49884201D3022070BD012070BD00000E +:1083E000CD3C412D9A79825AFD0BB958FE855C2C03 +:1083F000FC0BB958666666C6CDCCCC0C0AD7A3C0B8 +:1084000015AE470100210268002A01D108467047D5 +:10841000130C1B0402D1102112040260026812F036 +:108420007F4F02D1083112020260026812F0704FD1 +:1084300002D1091D12010260026812F0404F02D100 +:10844000891C920002600268002A02D5491E520867 +:10845000026008467047F8B504460D46206801469C +:10846000FFF707FC064661680846FFF702FC07466F +:10847000A0680146FFF7FDFBC6F18041C91B081A41 +:10848000FFF715FF2860206868606068A860A06832 +:10849000E8600020F2BD000080B58DF800108DF876 +:1084A0000120022300AAD0210020D9F7F1FF0128E2 +:1084B00001D1002002BD4FF0FF3002BD38B5144697 +:1084C000094D29701946681CDCF710FA631CDBB2F1 +:1084D0002A46D0210020D9F7DBFF012801D1002056 +:1084E00032BD4FF0FF3032BDA826012080B5D2B298 +:1084F00000920A46D0210020DAF724F8012801D1A1 +:10850000002002BD4FF0FF3002BD0EB4002003B0CA +:10851000704780B5D9F7C5FE6421DAF7AEF80020C0 +:1085200002BD00000300002013F0030F09D0521E0B +:1085300022BF13F8010B11F801CBB0EB0C00F3D004 +:108540007047121F22BF53F8040B51F804CB60454B +:10855000F7D0121D0AD200BA9CFA8CFCB0EB0C00CA +:1085600038BF6FF0000088BF01207047521E22BF45 +:1085700013F8010B11F801CBB0EB0C00F6D0521C34 +:1085800008BF10467047000010B5DFF8DC44FAF76A +:108590008AFD60660020024603E004EB8001CA62A7 +:1085A000401C0928F9DB10462066E065FAF76FFDEC +:1085B000A0664FF4FA7020606060DFF8B004A0603D +:1085C0009FED0A0A84ED030A84ED040A84ED050A8E +:1085D000B5EE000A84ED060A84ED070ADFF8900480 +:1085E000206207206062A06210BD00009A99193FC6 +:1085F00070470000F8B52DED048B0C469FED3D8AC9 +:10860000DFF8646400207065B065306E401C306631 +:10861000DFF86054012C02D1002068672867F06DF4 +:108620000A2839DA1E220021706EF9F74DFFC5F8CD +:108630008C001E220121706EF9F746FFF16D06EBEA +:108640008102336E03EB8307BB00D362012921DB78 +:10865000D5F88C3093ED000AD0ED000A30EE600AB8 +:10866000D3ED010A90ED011A70EEC10A93ED021AE2 +:10867000D0ED021A31EE611A05EB810020EE000AFE +:1086800000EEA00A01EE010A80ED050AD36A926AA3 +:108690009A1A8263481CF065316E0A2902DA0320B7 +:1086A000C5F88800F06D0A28C0F23781401EF065D9 +:1086B000706E0A2920D11E220A21F9F715FF85EDD7 +:1086C000030A1E220A21706EF9F72CFF85ED040AB9 +:1086D0001E220A21706EF9F743FF85ED050A00207E +:1086E000092844DA05EB800191ED060A38EE008A8C +:1086F000401CF5E7000000001E220A21F9F7E4FE05 +:10870000D5F88C1095ED030AD0ED000A30EE600A22 +:10871000D1ED000A30EE200A85ED030A95ED040A3A +:10872000D0ED010A30EE600AD1ED010A30EE200AE8 +:1087300085ED040A95ED050AD0ED020A30EE600AD7 +:10874000D1ED020A30EE200A85ED050AF06D05EB49 +:10875000800090ED050AD0ED040A30EE200AD0ED3D +:10876000030A30EE200AF0EE080A20EE208A95ED8A +:10877000030AF2EE040AC0EE208A95ED040A80EEA8 +:10878000209A95ED050AC0EE209A306E0A2805D190 +:10879000C5ED008A85ED019AC5ED029A00270FE02C +:1087A0001E22C7F1090109B2706EF9F78DFE95ED31 +:1087B000021AD5ED010A95ED000A00F0FBF87F1CC6 +:1087C0000A2FEDDBF06A716A726D914249DAA96F86 +:1087D000002908D128660121A967C5ED008A85ED29 +:1087E000019AC5ED029AB16AB26D91420CDAE96F55 +:1087F00000290BD168660121E967C5ED008A85ED86 +:10880000019AC5ED029A01E00021E967296E411A3B +:10881000296732686B6EC31A9A420CD2EB6F012B38 +:1088200009D10020C5F88000C5F8840068670120E0 +:10883000C5F8880060E08A420CD2A96F012909D1ED +:108840000020C5F88000C5F8840068670220C5F8DC +:10885000880051E0A96E401A68670320C5F88800B7 +:108860004AE0C5ED008A85ED019AC5ED029A002126 +:10887000A967E9672967D5F88010002903D1A866A0 +:108880000121C5F88010A96E411A69679FED740A2D +:1088900028EE000AB5EE400AF1EE10FA03DC9FED77 +:1088A000710A28EE000AD6ED020AB3EE041A60EE51 +:1088B000810AF4EE400AF1EE10FA08D5D5F88410DA +:1088C000002907D1E8660121C5F8841002E00021E3 +:1088D000C5F884107168A1F5FA71EA6E801A8142B8 +:1088E00007D2D5F88400012803D10420C5F88800F8 +:1088F00002E00320C5F8880000200CE006EB8001B0 +:108900000A6BCA62082805DA05EB8001CA698A6128 +:108910000A6CCA63401C0928F0DBD5F888000128DE +:1089200006D044D3032822D011D304282FD03EE010 +:10893000B06E0121C162296F016302214163002CE5 +:1089400035D1BDEC048BBDE8F440FAF7A8BBB06E9E +:108950000121C162296F016304214163002C26D1EA +:108960000221BDEC048BBDE8F440FAF798BBB06E71 +:108970000121C162696F016308214163002C16D196 +:108980000221BDEC048BBDE8F440FAF788BBB06E61 +:108990000121C162696F016310214163002C06D17E +:1089A0000221BDEC048BBDE8F440FAF778BBBDECC6 +:1089B000048BF1BDD0ED001A31EEC00AD0ED011AE2 +:1089C00071EEE00AD0ED021A31EEC11AB5EE400A9E +:1089D000F1EE10FA01D5B1EE400AF5EE400AF1EEE3 +:1089E00010FA01D5F1EE600AB5EE401AF1EE10FA78 +:1089F00001D5B1EE411A1C48D0ED031AB4EE610A5C +:108A0000F1EE10FA0FD5D0ED041AF4EE610AF1EE92 +:108A100010FA08D5D0ED051AB4EE611AF1EE10FA8D +:108A200001D5012100E00021D0ED061AB4EE610A63 +:108A3000F1EE10FA10D590ED070AF4EE400AF1EECF +:108A400010FA09D590ED080AB4EE401AF1EE10FACA +:108A500002D5826D521C8265426D8918416570474E +:108A600000007A4400007AC404160120000040414E +:108A70003333B33EF014012070B514461D46DFF8C1 +:108A80002C6206F148014A6F42F002024A67102246 +:108A9000014606F11000DBF729FFC6E9124570BD5B +:108AA00070B514461D46DFF8046206F14001CA6F36 +:108AB00042F00102CA671022014606F17000DBF79E +:108AC00015FFC6E9104570BDDFF8E011D1F8A82008 +:108AD000026091F8A4007047DFF8D01101F1A40200 +:108AE00091F8A430984208D1022803D15068401C64 +:108AF000506070470020506070470023536081F839 +:108B0000A400012801D1012000E002201A4603211F +:108B100000F034B970B50446644DE9686868FFF741 +:108B2000A2F806462968A868FFF79DF8301A206069 +:108B3000E968A868FFF797F8064629686868FFF7AC +:108B400092F880196060E8680146FFF78CF80646E5 +:108B500029680846FFF787F88019A0F18040A060D7 +:108B6000002070BD80B510225149DBF7BFFE002008 +:108B700002BD38B504464D4D95F8BC0010F0030F0A +:108B80000CD02A4605F1100105F17000FFF777F8C7 +:108B9000D5F8BC0020F00300C5F8BC00102229461F +:108BA0002046DBF7A3FE002032BD38B50C46154643 +:108BB000FFF7DFFFFAF7CEFFC5E90001FAF7B3FFD1 +:108BC000002803D0FBF7C0FA206031BDFAF7B3FFED +:108BD000002803D0FBF7B5FA206031BDFAF7B2FFE9 +:108BE000002803D0FBF7BAFA206031BD00202060D6 +:108BF00031BD2E49C1F8C0000020704780B5072262 +:108C00004FF448712B48FBF78EF9002002BD10B5D8 +:108C1000264CD02200212046D9F720FB4FF080407F +:108C20006066A066E06620672061206020622063A5 +:108C3000C4F880002048C4F8C400002010BD80B5EE +:108C4000FFF7E5FF002804D11C48BDE8024000F012 +:108C5000B1B802BD1549C1F8940070471349C1F875 +:108C6000B000704710B584B0040018D0002211463F +:108C7000FBF734FA00A8FFF74DFF20680099A0EB3E +:108C8000A130206000A861684268A1EBA231616058 +:108C9000A1688068A1EBA030A060002000E0162051 +:108CA00004B010BD014890ED310A7047D80C012086 +:108CB000E80C0120F38B0208DB0F4940FD8B020812 +:108CC00010B584B0040016D000A8FFF7CBFF002831 +:108CD00011D100200BE000A951F8201000EE101A6D +:108CE000BAEEC80A04EB800181ED000A401C03289B +:108CF000F1DB002000E0162004B010BD10B51E4CC2 +:108D00004FF4CC7200212046D9F7A8FA0C206060FD +:108D100010BD70B4002500E06D1C174C2668B542EC +:108D200009DA05EB450604EB8604D4F8B040A3420B +:108D3000F2D116201EE0142E01DB16201AE00C25BD +:108D400005FB0646C6F8B030236805FB0343C3F8AD +:108D5000A820236804EB83039860206804EB80005C +:108D60008165606802F10C01081860602068401C91 +:108D70002060002070BC704768050120002A05D1E2 +:108D8000074A136823EA0101084310607047044A48 +:108D90001168002801D000201060084670470000CC +:108DA000A02E012080B5542200211348D9F756FA8D +:108DB000002002BD10490A68142A01DB1620704702 +:108DC00001EB820250600868401C08600020704778 +:108DD00038B50024254609E000EB8500406880474F +:108DE000002802D0002C00D104466D1C0248016806 +:108DF0008D42F1DB204632BDCC240120F4464900EF +:108E000006D200F011F809420DD5C8174108604795 +:108E100000F00AF807D04942404271F1000102D443 +:108E200000205FF0004160474A0DA2F580621E3AC3 +:108E30000ADC5242202A18DA890241F0004141EA54 +:108E400050500021D0407047D2F1200210D4890246 +:108E500041F0004141EA5051C002D04061FA02F3B2 +:108E60005840D14080EA010070470020002170473F +:108E7000D017010070470000B5EEC00AF1EE10FAFD +:108E800002D4B1EEC00A70476FF0004C00EE10CA79 +:108E9000DFF746B9002940F10B80F44649424042D1 +:108EA00071F1000100F00AF850F000406047000046 +:108EB00050EA010200F00E80094200BF0BD1B0FA67 +:108EC00080F18840C1F19D01C905020672F100429E +:108ED00041EB10207047B1FA81F241409040C2F15D +:108EE000200261FA02F181EA000018BF40F001009F +:108EF00002F19D01E8E70000C0F3C7517F392CD48F +:108F000020290DDAC1F11F0C41004FEAC11141F0D7 +:108F1000004121FA0CF0894128BF4042C943704703 +:108F2000D1F13F0C1CD441004FEAC11141F0004186 +:108F300061FA0CF021FA0CF180EA0100094244BF09 +:108F40004FF00041002004D34942404271F100013A +:108F5000704701D5401E491E704700200021704710 +:108F600009424FF0004158BFC9430020704700003C +:108F700080B500F00DF8B5EE400AF1EE10FA02D01F +:108F80000548406C02BD012002BD0348C06C70471B +:108F9000014890ED160A7047A821012010B5FFF78F +:108FA000E7FF0446FFF7F1FF204310BD012000F06A +:108FB00013BE002000F010BE10EE101A10EE902A22 +:108FC000B0EEC00AC80F49005200F0EEE00A28BF18 +:108FD0000C3011F1807F38BF12F1807F0CD28A42B1 +:108FE00038BF80F00400124214D034BF80EE800AF3 +:108FF00080EE200A00F0A6BE11F1807F08BF80F04D +:10900000040098BF12F1807F08D88A4214BF002262 +:109010004FF07E5200EE102A00F094BE6FF0004137 +:1090200000EE101A7047000010EE101A4FF07E5C30 +:1090300001EE90CAC80F31F0004122D000EE101AA4 +:10904000B1F17E5F13D871EEC00ADFF838C031EE9F +:10905000801A61EE200AF1EEE00A614586BF80F0D9 +:10906000040080EE800A80EE200A00F06BBE49000A +:1090700011F1807F9CBF6FF0004100EE101A5FF687 +:109080004FA87047F404353F10B5044600F0ACFE1D +:10909000204610BD2DE9F0432DED048B0646894690 +:1090A000B0EE408A10EE900ADEF7CAFF41EC190BD1 +:1090B00018EE100ADEF7C4FF41EC180B53EC182B26 +:1090C000D6E93001D9F7D0FD04460D4653EC192BF3 +:1090D000D9E93001D9F7C8FD22462B46D9F7D6FE8B +:1090E000C6E93001002734E051EC180B06EBC7024B +:1090F00053681268D9F7B8FD04460D4651EC190BB8 +:1091000009EBC70253681268D9F7AEFD22462B4619 +:10911000D9F7BCFE06EBC702C2E9000106EBC7089F +:1091200051EC180BD8E92423D9F79EFD04460D46CF +:1091300053EC192B09EBC700D0F89410D0F890002D +:10914000D9F792FD22462B46D9F7A0FEC8E92401A3 +:109150007F1C062FC8DB002718E006EBC70851EC80 +:10916000180BD8E91223D9F77FFD04460D4653ECBE +:10917000192B09EBC700C16C806CD9F775FD22462D +:109180002B46D9F783FEC8E912017F1C092FE4DBC7 +:10919000002718E006EBC70851EC180BD8E90C23A0 +:1091A000D9F762FD04460D4653EC192B09EBC700B5 +:1091B000416B006BD9F758FD22462B46D9F766FE66 +:1091C000C8E90C017F1C032FE4DBBDEC048BBDE878 +:1091D000F08370B52DED108B88B005460C462068E5 +:1091E000D9F73CFECDE900016068D9F737FE41ECC4 +:1091F000180B00AE86ED028BA068D9F72FFE41EC6C +:10920000190B86ED049BD5E930230020DFF8AC195B +:10921000D9F73CFEC5E93001D5E90C23DDE90001B1 +:10922000D9F734FEC5E90C01D5E90E2351EC180B32 +:10923000D9F72CFEC5E90E01D5E9102351EC190B25 +:10924000D9F724FEC5E91001DDE90023DDE90001BD +:10925000D9F70AFD41EC1A0B53EC1A2BD5E90001A2 +:10926000D9F714FEC5E90001DDE9002351EC180B24 +:10927000D9F7FAFC41EC1F0B53EC1F2BD5E9020187 +:10928000D9F704FEC5E90201DDE9002351EC190B11 +:10929000D9F7EAFC41EC1B0B53EC1B2BD5E904017D +:1092A000D9F7F4FDC5E9040153EC182B51EC180B68 +:1092B000D9F7DAFC41EC1C0B53EC1C2BD5E9060169 +:1092C000D9F7E4FDC5E9060153EC182B51EC190B55 +:1092D000D9F7CAFC41EC1D0B53EC1D2BD5E9080155 +:1092E000D9F7D4FDC5E9080153EC192B51EC190B42 +:1092F000D9F7BAFCCDE90601DDE90623D5E90A0173 +:10930000D9F7C4FDC5E90A0153EC1A2BDDE90001C8 +:10931000D9F7AAFC41EC1E0B53EC1E2BD5E9120128 +:10932000D9F7B4FDC5E9120153EC1F2B51EC180B12 +:10933000D9F79AFCD5E91423D9F7A8FDC5E914019A +:1093400053EC1B2B51EC190BD9F78EFCD5E91623E6 +:10935000D9F79CFDC5E9160153EC1F2BDDE900018F +:10936000D9F782FCD5E91823D9F790FDC5E9180192 +:1093700053EC1C2B51EC180BD9F776FC41EC1F0B6E +:1093800053EC1F2BD5E91A01D9F780FDC5E91A0165 +:1093900053EC1D2B51EC190BD9F766FCD5E91C23B6 +:1093A000D9F774FDC5E91C0153EC1B2BDDE9000165 +:1093B000D9F75AFCD5E91E23D9F768FDC5E91E0186 +:1093C00053EC1D2B51EC180BD9F74EFCD5E920239B +:1093D000D9F75CFDC5E92001DDE9062351EC190B45 +:1093E000D9F742FC41EC1B0B53EC1B2BD5E92201B6 +:1093F000D9F74CFDC5E9220153EC1E2BDDE9000134 +:10940000D9F732FCD5E92423D9F740FDC5E9240179 +:1094100053EC1F2B51EC180BD9F726FCD5E926236A +:10942000D9F734FDC5E9260153EC1B2B51EC190B80 +:10943000D9F71AFCD5E92823D9F728FDC5E9280171 +:1094400053EC1A2B51EC180BD9F70EFC53EC182BDC +:10945000D9F70AFCD5E92A23D9F718FDC5E92A016D +:1094600053EC1A2B51EC190BD9F7FEFB53EC192BCB +:10947000D9F7FAFBD5E92C23D9F708FDC5E92C016A +:1094800053EC1C2B51EC190BD9F7EEFB53EC192BB9 +:10949000D9F7EAFBD5E92E23D9F7F8FCC5E92E0167 +:1094A00008B0BDEC108B70BD2DE9F04F2DED108B89 +:1094B0008DB080460C46914698ED0CEB98ED308BC4 +:1094C00098ED000B8DED000B53EC182BDDE900013E +:1094D000D9F7CAFB06460F4653EC1E2B51EC1E0B68 +:1094E000D9F7C2FB02460B4630463946D9F7FCFA9B +:1094F000CDE9040198ED0EFB98ED060B8DED020B06 +:1095000053EC182BDDE90201D9F7AEFB06460F46F6 +:1095100053EC1F2B51EC1F0BD9F7A6FB02460B4651 +:1095200030463946D9F7E0FACDE9080198ED109BAD +:1095300098ED0AAB53EC182B51EC1A0BD9F794FBAE +:1095400006460F4653EC192B51EC190BD9F78CFB3F +:1095500002460B4630463946D9F7C6FACDE9060130 +:1095600053EC182BD8E90201D9F77EFB06460F46CB +:1095700053EC1E2B51EC1F0BD9F776FB02460B4622 +:1095800030463946D9F7B0FA41EC1B0B53EC182B97 +:10959000D8E90401D9F768FB06460F4653EC1E2BA9 +:1095A00051EC190BD9F760FB02460B4630463946A1 +:1095B000D9F79AFA41EC1C0B53EC182BD8E90801A7 +:1095C000D9F752FB06460F4653EC1F2B51EC190BF3 +:1095D000D9F74AFB02460B4630463946D9F784FA9A +:1095E00041EC1D0B53EC182BD8E91201D9F73CFBC9 +:1095F00006460F4653EC1E2BDDE90001D9F734FB7C +:1096000002460B4630463946D9F76EFA06460F46F3 +:1096100053EC182BD8E91401D9F726FB32463B4608 +:10962000D9F734FC06460F4653EC1E2BDDE9020148 +:10963000D9F71AFB02460B4630463946D9F754FA99 +:1096400006460F4653EC182BD8E91601D9F70CFB48 +:1096500032463B46D9F71AFC06460F4653EC1E2B02 +:1096600051EC1A0BD9F700FB02460B46304639463F +:10967000D9F73AFA0022DFF84835D9F7F5FA41EC84 +:109680001E0B53EC182BD8E91801D9F7EDFA064652 +:109690000F4653EC1F2BDDE90001D9F7E5FA02462E +:1096A0000B4630463946D9F71FFA06460F4653ECAB +:1096B000182BD8E91A01D9F7D7FA32463B46D9F721 +:1096C000E5FB06460F4653EC1F2BDDE90201D9F7F7 +:1096D000CBFA02460B4630463946D9F705FA06461C +:1096E0000F4653EC182BD8E91C01D9F7BDFA3246C6 +:1096F0003B46D9F7CBFB06460F4653EC1F2B51ECEC +:109700001A0BD9F7B1FA02460B4630463946D9F75B +:10971000EBF90022DFF8A834D9F7A6FA41EC1F0BC9 +:1097200053EC182BD8E91E01D9F79EFA06460F46CE +:1097300053EC192BDDE90001D9F796FA02460B46E6 +:1097400030463946D9F7D0F906460F4653EC182B68 +:10975000D8E92001D9F788FA32463B46D9F796FB7B +:1097600006460F4653EC192BDDE90201D9F77CFAC6 +:1097700002460B4630463946D9F7B6F906460F463B +:1097800053EC182BD8E92201D9F76EFA32463B4642 +:10979000D9F77CFB06460F4653EC192B51EC1A0BFC +:1097A000D9F762FA02460B4630463946D9F79CF99A +:1097B0000022DFF80C34D9F757FA41EC190BDDE938 +:1097C0000423DDE90801D9F74FFACDE90201DDE90B +:1097D000082351EC1C0BD9F747FACDE90001DDE96C +:1097E000062351EC1B0BD9F73FFACDE90A019FED97 +:1097F000F18BDDE90A2351EC1B0BD9F735FA06464C +:109800000F4653EC1B2B51EC180BD9F72DFA53ECE8 +:109810001C2BD9F729FA53EC1D2BD9F725FA024650 +:109820000B4630463946D9F75FF906460F46DDE963 +:10983000002351EC1C0BD9F717FA32463B46D9F7F7 +:1098400025FB06460F46DDE9042351EC1D0BD9F735 +:109850000BFA53EC1D2BD9F707FA32463B46D9F7E2 +:1098600015FB06460F46DDE90223DDE90601D9F7BF +:10987000FBF902460B4630463946D9F735F941EC3B +:109880001A0B53EC1A2B00200146D9F71DF900F0F2 +:109890008B81DDE9082351EC190BD9F7E5F9064670 +:1098A0000F4653EC1D2B51EC1F0BD9F7DDF9024687 +:1098B0000B4630463946D9F717F953EC1C2BD9F72C +:1098C000D3F906460F4653EC1D2B51EC1D0BD9F76F +:1098D000CBF953EC1E2BD9F7C7F932463B46D9F7E3 +:1098E000D5FA06460F46DDE90823DDE90601D9F77A +:1098F000BBF953EC1E2BD9F7B7F902460B4630469D +:109900003946D9F7F1F806460F46DDE90A2351EC4E +:109910001F0BD9F7A9F932463B46D9F7B7FA0646E5 +:109920000F4653EC1B2B51EC1D0BD9F79DF953EC53 +:10993000192BD9F799F902460B4630463946D9F723 +:10994000D3F8C4E90001DDE9042351EC190BD9F780 +:109950008BF906460F4653EC1C2B51EC1E0BD9F726 +:1099600083F902460B4630463946D9F7BDF853EC29 +:109970001D2BD9F779F906460F4653EC1C2B51ECF9 +:109980001C0BD9F771F953EC1F2BD9F76DF932463F +:109990003B46D9F77BFA06460F46DDE90423DDE9AD +:1099A0000601D9F761F953EC1F2BD9F75DF902468F +:1099B0000B4630463946D9F797F806460F46DDE99B +:1099C0000A2351EC1E0BD9F74FF932463B46D9F723 +:1099D0005DFA06460F4653EC1B2B51EC1C0BD9F7D6 +:1099E00043F953EC192BD9F73FF902460B463046A1 +:1099F0003946D9F779F8C4E90201DDE9042351ECCD +:109A00001F0BD9F731F906460F4653EC1B2B51ECCF +:109A10001E0BD9F729F902460B4630463946D9F7CD +:109A200063F853EC1D2BD9F71FF906460F4653EC8C +:109A30001B2B51EC1B0BD9F717F953EC192BD9F74A +:109A400013F932463B46D9F721FA06460F46DDE9BF +:109A5000022351EC190BD9F707F902460B463046A1 +:109A60003946D9F741F806460F46DDE9002351ECA7 +:109A70001E0BD9F7F9F832463B46D9F707FA0646E6 +:109A80000F4653EC1B2B51EC1C0BD9F7EDF853ECA4 +:109A90001F2BD9F7E9F802460B4630463946D9F76D +:109AA00023F8C4E90401D4E9000153EC1A2BD9F7D7 +:109AB00061FAC4E90001D4E9020153EC1A2BD9F789 +:109AC00059FAC4E90201D4E9040153EC1A2BD9F77D +:109AD00051FA41EC190B84ED049B94ED02AB94ED2B +:109AE00000BB53EC1B2B51EC1B0BD9F7BDF8044604 +:109AF0000D4653EC1A2B51EC1A0BD9F7B5F8224648 +:109B00002B46D9F7C3F904460D4653EC192B51ECFB +:109B1000190BD9F7A9F822462B46D9F7B7F904460D +:109B20000D46D8E90023D8E90601D9F7AFF9D8E9FD +:109B30000A23D9F7ABF982468B4653EC1B2BD8E9A5 +:109B40000C01D9F791F806460F4653EC1A2BD8E9C9 +:109B50000E01D9F789F832463B46D9F797F9064600 +:109B60000F4653EC192BD8E91001D9F77DF832468E +:109B70003B46D9F78BF953EC182BD9F775F8024609 +:109B80000B4650465946D8F7AFFFD8E93023D9F7EE +:109B9000F1F922462B46D9F779F941EC100BD9F7A8 +:109BA0000DFB89ED000B01200DB0BDEC108BBDE865 +:109BB000F08F00BF00000000000000400000F03FF8 +:109BC0000000E03F80B5012251EC100B00F048F995 +:109BD00041EC100B01BD0000DFED4A0A10B560EE4C +:109BE000200AB0EEE01ADFED481AB4EE611A82B036 +:109BF0000446F1EE10FA29D5F5EE400AF1EE10FA1E +:109C0000ACBFB6EE001ABEEE001A70EE810AFDEE91 +:109C1000E00A10EE900AA8B1FAEEC90A9FED3B1ACD +:109C200000EEC10A9FED3A1A00EEC10A9FED391A03 +:109C300000EEC10A9FED381A00EEC10A9FED371AF7 +:109C400000EEC10A00F00300041921E08DED000AC6 +:109C50000098C0F3C750FF2808D088B90098400288 +:109C60000ED1E00748D5B7EE000A45E00098400263 +:109C700046D1EAF731F8212101609FED290A13BD91 +:109C80008DED000A00A800F017FB04199DED000AF5 +:109C9000DFED240AB4EE600AF1EE10FA0BDBDFED23 +:109CA000220AB4EE600AF1EE10FA04D5E00723D5DB +:109CB000B7EE000A20E060EE000AE0070ED59FED47 +:109CC0001B0A9FED1B1A00EE801ADFED1A1A41EEF7 +:109CD000201AB7EE000A01EEA00A0DE0DFED161A19 +:109CE0009FED162A00EEA12ADFED151A20EE201AAC +:109CF00042EE201A01EE210AA00748BFB1EE400A49 +:109D000013BD000083F9223F0000004F0000C94648 +:109D100000A0FD400020A23A000034330030C22EE3 +:109D2000FFFFFF7FFEFF7FB9000080399349B2BA81 +:109D300036A02A3DDFFFFFBE6E8C4CB94283083C43 +:109D4000A1AA2ABE1AA210EE101ADFF860C0F2EC27 +:109D5000060A614509DB00EE803A70EE800A83EE68 +:109D6000200A40F0020010EE101A21F0004CDCF145 +:109D7000665C0BD860EE000A20EE203A03EE010A82 +:109D800001EEA02A42EE202A80EE220A400810F0BE +:109D9000020F18BFB1EE400A02EB8002D2ED000ABA +:109DA00030EE200A28BFB1EE400A7047A430893E49 +:109DB000D7B3DD3F6AD5033F2B94A93DB82A593F5D +:109DC0000000803F000080BF00000000920A063FB4 +:109DD000DB0FC93F920A863FDB0FC93F920A06405C +:109DE000DB0F4940368D274081423ABF53189842D5 +:109DF000D8F71EBE8018990707D0521E24BF13F84B +:109E0000011D00F8011DF6D8704781071CD1103ADA +:109E100007D330B433E93210103A20E93210F9D2C6 +:109E200030BC1032121F24BF53F8041D40F8041D2B +:109E3000F8D838BF121D521E24BF13F8011D00F8B8 +:109E4000011DF8D8704700BF083A07D333E9021064 +:109E5000083A40F804CD40F8041DF7D20832EAE78A +:109E6000F8B52DED048B154641EC180B82B053EC80 +:109E7000182BC448C449D8F7F7FEC44AC44B41EC78 +:109E8000190B21F00041D8F7CDFF80F0F38051ECA1 +:109E9000190B00220023E9F781FF53EC192B99BF1E +:109EA0000020BC490020BC49D8F7F0FFD9F706FADA +:109EB000040051D0D8F7D2FF0022B84BD8F7D4FE17 +:109EC00041EC190B53EC192B4FF0A040B449D8F7D3 +:109ED000CBFE02460B4651EC180BD8F705FE0646A2 +:109EE0000F4653EC192B4FF0C040AE49D8F7BCFEDB +:109EF00002460B4630463946D8F7F6FD06460F4671 +:109F000053EC192B4FF00050A749D8F7ADFE02468D +:109F10000B4630463946D8F7E7FD06460F4653EC68 +:109F2000192B0020A149D8F79FFE02460B46304668 +:109F30003946D8F7D9FD06460F4653EC192B4FF09A +:109F400000509B49D8F790FE02460B4630463946F2 +:109F5000D8F7CAFD41EC180B04F00300451951EC89 +:109F6000180B6FF00102944BE9F718FF0BD8002291 +:109F70004FF07953D8F756FF05D2E80740F18E81AC +:109F80009FED8E8B8AE153EC182BD8F76DFE41ECD8 +:109F9000190BE80731D553EC192B8A488A49D8F7B1 +:109FA00063FE8A4A8A4BD8F771FF53EC192BD8F716 +:109FB0005BFE884A884BD8F769FF53EC192BD8F71A +:109FC00053FE864A864BD8F761FF53EC192BD8F71E +:109FD0004BFE844A844BD8F759FF53EC192BD8F722 +:109FE00043FE824B6FF05102D8F750FF53EC192B10 +:109FF000D8F73AFE0022624B37E053EC182B51ECB5 +:10A00000190BD8F731FE06460F4653EC192B914831 +:10A010009149D8F729FE914A914BD8F737FF53EC75 +:10A02000192BD8F721FE8F4A8F4BD8F72FFF53EC0F +:10A03000192BD8F719FE8D4A8D4BD8F727FF53EC13 +:10A04000192BD8F711FE8B4A8B4BD8F71FFF53EC17 +:10A05000192BD8F709FE894A564BD8F717FF324615 +:10A060003B46D8F701FE53EC182BD8F70FFF41EC15 +:10A07000180B13E18DED008BDDE90001DDE9002314 +:10A08000C3F30A5140F2FF72914213D0002904BF7A +:10A09000190350EA11301CD1E80748BF9FED478BE8 +:10A0A000A80740F1038151EC180B81F0004141EC0D +:10A0B000180BFBE0190350EA113040F0F780E9F784 +:10A0C0000BFE2121016002B04FF0FF306FF0004124 +:10A0D000EFE08DED008B00A800F064F945199DEDCF +:10A0E000008B354B51EC180B6FF00102E9F756FE6F +:10A0F0000BD800224FF07953D8F794FE05D2E80729 +:10A1000040F1CC809FED2D8BC8E053EC182BD8F795 +:10A11000ABFD41EC190BE8076AD553EC192B294824 +:10A120002949D8F7A1FD294A294BD8F7AFFE53ECAE +:10A13000192BD8F799FD274A274BD8F7A7FE53ECE0 +:10A14000192BD8F791FD254A254BD8F79FFE53ECE4 +:10A15000192BD8F789FD234A234BD8F797FE53ECE8 +:10A16000192BD8F781FD214B6FF05102D8F78EFEE5 +:10A1700053EC192BD8F778FD0022014B8AE000BF81 +:10A180000000F03F83C8C96D305FE43F0000A0FFCE +:10A19000FFFFDF410000E03F0000E0BF0000303E75 +:10A1A000FB21B941B410114026A6513E5C14D33CAA +:10A1B0009A833B3B5555C5BFFFFF3FBE00000000E3 +:10A1C0000000F03F09260A1039BA213E3BA861C6BB +:10A1D000F97D92BE63AC30909F01FA3EF6FB5116BA +:10A1E0006CC156BFB10255555555A53FFFFFDFBFA6 +:10A1F00053EC182B51EC190BD8F736FD06460F46D9 +:10A2000053EC192B13481449D8F72EFD134A144B5D +:10A21000D8F73CFE53EC192BD8F726FD114A124B08 +:10A22000D8F734FE53EC192BD8F71EFD0F4A104B0C +:10A23000D8F72CFE53EC192BD8F716FD0D4A0E4B10 +:10A24000D8F724FE53EC192BD8F70EFD0B4A0C4B14 +:10A2500018E000BFB08F2FC310D8E53D8F0C73A15D +:10A26000E1E55ABE4DADE44FE31DC73E3EE3B519EF +:10A27000A0012ABFFAF010111111813F4255555526 +:10A280005555C5BFD8F702FE32463B46D8F7ECFC21 +:10A2900053EC182BD8F7FAFD41EC180BA80705D59D +:10A2A00051EC180B81F0004141EC180B02B051EC5D +:10A2B000180BBDEC048BF4BD10B52DED028B0446DC +:10A2C00082B094ED008A9FED2D0A28EE000AB5EECB +:10A2D000400A8DED000AF1EE10FAACBFF6EE000A6E +:10A2E000FEEE000A30EE200A8DED000A002100A8E3 +:10A2F00000F00CF99DED000AB5EE400AF1EE10FAFF +:10A3000017D0DFED1F0A20EE200ADFED1E0A00EE57 +:10A31000608ADFED1D0A00EE608ADFED1C0A00EEA8 +:10A32000608ADFED1B0A00EE608ADFED1A0A00EE9C +:10A33000608A84ED008ADFED180A9DED000AB4EE14 +:10A34000600AF1EE10FA06D4DFED140AB4EE600AEA +:10A35000F1EE10FA05DBDFED120A00F0FFF88DEDEB +:10A36000000A9DED000ABDEEC00A02B010EE100A10 +:10A3700000F00300BDEC028B10BD000083F9223F0A +:10A38000000080380000C94600A0FD400020A23A2D +:10A39000000034330030C22E000000CF0100004F17 +:10A3A0000000004FD0B52DED048B044682B094ED33 +:10A3B000008B4748474953EC182BD8F755FCCDE99B +:10A3C000000100220023E9F7E9FCDDE9002399BF41 +:10A3D0000020414900204149D8F758FDCDE900014E +:10A3E000002100A800F058F9DDE900230020002139 +:10A3F000D8F76AFB4ED03A49D8F736FC41EC190B36 +:10A4000053EC192B4FF0A0403649D8F72DFC0246EB +:10A410000B4651EC180BD8F767FB06460F4653EC7A +:10A42000192B4FF0C0403049D8F71EFC02460B46AE +:10A4300030463946D8F758FB06460F4653EC192BE1 +:10A440004FF000502949D8F70FFC02460B46304622 +:10A450003946D8F749FB06460F4653EC192B002026 +:10A460002349D8F701FC02460B4630463946D8F757 +:10A470003BFB06460F4653EC192B4FF000501D498D +:10A48000D8F7F2FB02460B4630463946D8F72CFB8C +:10A4900041EC180B84ED008BDDE90001164A174BE7 +:10A4A000D8F7C0FC04D3164A164BE9F777FC05D859 +:10A4B0000022154B00F030F9CDE90001DDE9000183 +:10A4C000D8F7FCFE02B000F00300BDEC048BD0BD59 +:10A4D00083C8C96D305FE43F0000E03F0000E0BF8B +:10A4E0000000303EFB21B941B410114026A6513E78 +:10A4F0005C14D33C9A833B3B0000C0FFFFFFDFC1ED +:10A500000100C0FFFFFFDF410000E0410268C2F32D +:10A51000C752FF2A06D10068400201D101207047CE +:10A520000220704703685B0016D0C2F19602521AEF +:10A53000012A11DB182A04DB016801F000410160E7 +:10A5400007E0012191400268491E11404A40026023 +:10A5500011B14FF0FF3070470020704710EE100A25 +:10A5600010EE901AA4464FF0FF034FEA410103EAB0 +:10A57000D0540A0E1CBF94EA030F92EA030F55D081 +:10A58000B1EB400F2ED24FEAC11141F0004100F073 +:10A5900000434FEA002040F000404FEA9000890855 +:10A5A00064EB0204401A38BF01EB400018BF54F1BD +:10A5B000000407D0D1EB400038BF081818BFB4F131 +:10A5C0000104F7D140002CD0B0FA80F100FA01F07C +:10A5D000521A0EDB43EA102000EBC25000EE100AC4 +:10A5E0006446704708BF00F0004000EE100A644661 +:10A5F000704743EA102000EE100A02F17F024FEA92 +:10A60000C25100EE901AF1EE100A20F4F851E1EE7A +:10A61000101A20EE200AE1EE100A10EE100A64462D +:10A620007047184600EE100A6446704709421CBF86 +:10A6300094EA030F92EA030F1CD04FF0984201EE08 +:10A64000102A60EE810AB1EB400FCBD2244208BF42 +:10A6500020EE010A10EE901A03EAD152A2F119027B +:10A660004FEA012191D110EE100A03EAD054A4F16F +:10A6700019048CE74FF0807212EB400F2CBF6FF083 +:10A68000004011F1807F644618BF6FF0004000EE7B +:10A69000100ADDF445AD70474268C2F30A5240F239 +:10A6A000FF739A4209D14168090304BF006800287A +:10A6B00001D1012070470220704743685B0004BF4E +:10A6C0000368002B25D040F233439A1A521A012A0C +:10A6D0001FDB352A06DB416801F0004141600021A3 +:10A6E000016013E0012102F01F039940491E920608 +:10A6F00007D5426811404A40426002681143002277 +:10A7000002E0026811404A40026011B14FF0FF3090 +:10A71000704700207047000070B540F2FF7601F0EE +:10A72000004C5B0006EA11545D0D1ABFB442B542FD +:10A7300078E0B3EB410F08BF82424BD2C3F353031F +:10A7400043F48013C1F3130141F48011641B0B3CEB +:10A7500013D9C90241EA5051B1FBF3FE03FB1E11AC +:10A76000A2FB0EE6DEEBC020B14101D280185941B8 +:10A7700050EA010653D00B3CEBD80B34C4F1200651 +:10A78000A14020FA06F6A0403143B1FBF3FE03FBE3 +:10A790001E11A2FB0EE6B0EB0E00B14101D28018F3 +:10A7A000594102BF0146203D0020C1B3B1FA81F3F7 +:10A7B0009940C3F1200220FA02F211439840ED1AA9 +:10A7C0000A3509DBC00A40EA41504CEAD12101EBCD +:10A7D000055170BD23D070BDD5F10B05B5F1200238 +:10A7E0000DDAC5F120020300E84001FA02F6E94063 +:10A7F000934073F10043704151EB0C0170BD402D4B +:10A800000DDC430821FA02F0C2F1200511FA05F629 +:10A81000334373F1004370415CF1000170BD614648 +:10A82000002070BD53EA020E1ABFB442B54237E0B1 +:10A83000B3EB410F08BF8242CCD25B08B3FA83F579 +:10A8400004BFB2FA82F6AD190B3DB5F1200624BF64 +:10A8500002FA06F305E0AB40C5F1200622FA06F63F +:10A860003343AA40D5F1010524427FF46BAF31F0A8 +:10A870000041B1FA81F404BFB0FA80F6A4190B3C90 +:10A88000B4F1200624BF00FA06F105E0A140C4F1AE +:10A89000200620FA06F63143A040D4F1010455E722 +:10A8A0004FF4001515EB410F2CBF6FF00041EB4248 +:10A8B00018BF6FF00041BDE87040DDF431AC704767 +:10A8C000BFF34F8FDFF8A008016801F4E061DFF803 +:10A8D0009C2811430160BFF34F8FFEE71EF0040F69 +:10A8E0000CBFEFF30880EFF3098000F03DB870472C +:10A8F0001EF0040F0CBFEFF30880EFF3098000F0A7 +:10A9000033B8FEE71EF0040F0CBFEFF30880EFF33F +:10A91000098000F029B870471EF0040F0CBFEFF358 +:10A920000880EFF3098000F01FB870471EF0040F95 +:10A930000CBFEFF30880EFF3098000F015B8704703 +:10A940001EF0040F0CBFEFF30880EFF3098000F056 +:10A950000BB870471EF0040F0CBFEFF30880EFF345 +:10A96000098000F001B87047DAF72FBA70472DE977 +:10A97000F04186B059E02646D7F7FAFED7F791FCAA +:10A980000521D7F77AFE0FF62800D7F70BFDD7F78A +:10A99000F2FEDFF8DC173846DDF7A8FF00281AD1F1 +:10A9A0003046461E0028F4D16D1EE4D500213846FD +:10A9B000DDF787FF0021DFF8BC07DDF782FFBDF878 +:10A9C0000330BDF801209DF800100FF2EC70D7F7AE +:10A9D000E9FCFFF775FFB8F1020F01D1DBF778FC56 +:10A9E000DDF80900002804D0DFF718FD0020CDF8BD +:10A9F000090049F64044DFF8805702212846DDF778 +:10AA0000ADFE002803D12046441E0028F5D142F2B5 +:10AA1000107680212846DDF7A1FE012803D13046BB +:10AA2000461E0028F5D1D7F7A3FE00A9DFF84C0792 +:10AA300000F0E2FB9DF8030010F0030808D0B8F125 +:10AA4000020F05D015D3B8F1030F00F08780ECE7B3 +:10AA5000BDF80100011D89B2DDF8090000F0FAFB24 +:10AA6000DFF81C4726460125D7F785FEDFF8147767 +:10AA70008FE7DFF804078089C04604A80021016041 +:10AA800002220DF10301D9F731FF02220DF101017C +:10AA90000DF11200D9F72AFF042104A800F0DAFB17 +:10AAA000BDF80100001DDFF7A1FCCDF80900BDF8DD +:10AAB0000100011D89B2DDF8090000F0EFFBDFF8AD +:10AAC000C04626460125D7F756FEDFF8A8760DE0EA +:10AAD0002646D7F74DFED7F7E4FB0521D7F7CDFD86 +:10AAE0000FF2E460D7F75EFCD7F745FEDFF8981663 +:10AAF0003846DDF7FBFE00281AD13046461E0028F6 +:10AB0000F4D16D1EE4D50021DFF87806DDF7D9FE1B +:10AB100000213846DDF7D5FEBDF80330BDF8012031 +:10AB20009DF800100FF2A860D7F73CFCFFF7C8FEB5 +:10AB3000D7F71EFE002E3FF478AF00A9DFF84C06D1 +:10AB400000F0D0FB002803D00FF29460DAF7EEF9A2 +:10AB5000DFF83C160820E5F7EDFD66E7DFF818069C +:10AB60008089C0460921DFF82C0600F097FBD7F753 +:10AB700008FEDFF824660221DFF82006DDF773FC0B +:10AB800000287FF452AF3046461E0028F3D1002142 +:10AB9000DFF8F005DDF795FE0021DFF8D805DDF7D9 +:10ABA00090FE0FF24460D7F7FDFB3EE72DE9F04140 +:10ABB000DFF8EC452078401C2070DFF8E855287855 +:10ABC000401C2870DAF7B9FC6878F021084202D0FE +:10ABD0009920D9F707FED9F772FE6878401C687093 +:10ABE000D9F702FB6878F021084202D09920D9F702 +:10ABF000F9FD6878401E6870C0B2002801D1D9F70D +:10AC000058FE0120DEF74AF9012840F08280012039 +:10AC1000DEF750F90026DFF890750121DFF88C058A +:10AC2000DDF721FC002868D0387800282ED0304687 +:10AC30003870DFF84C75DFF83C854046DDF752FE92 +:10AC4000002823D03846471E0028F6D13146DFF8C9 +:10AC50003405DDF736FE31464046DDF732FE0FF2B1 +:10AC60009050D7F79FFBD7F789FD2078411E2170C0 +:10AC7000002802D19820D9F7B5FD2878012858D1AD +:10AC80006868002855D0D9F710FE52E00221DFF89D +:10AC90000C05DDF7E8FB002810D02078411E21705C +:10ACA000002802D19820D9F79DFD2878012840D1AD +:10ACB000686800283DD0D9F7F8FD3AE0DFF8D414F1 +:10ACC000C87810F003000BD0012813D1B1F80100AF +:10ACD000002805D0DFF8A40400F004FB064609E0D4 +:10ACE000DFF8A80400F0FEFA0646DFF8A4140820F6 +:10ACF000E5F720FDD7F742FD07E001203870391D48 +:10AD0000DFF8780400F0EEFA0646002E01D0DAF7FC +:10AD10001EF92078411E2170002802D19820D9F711 +:10AD200061FD2878012804D16868002801D0D9F78E +:10AD3000BCFD2878401E2870BDE8F08138B5DFF8EA +:10AD400060442078401C2070DFF858542878401C5C +:10AD50002870DAF7F2FB6878F021084202D09920D7 +:10AD6000D9F740FDD9F7ABFD6878401C6870D9F77A +:10AD70003BFA6878F021084202D09920D9F732FDD9 +:10AD80006878401E6870C0B2002801D1D9F791FDE3 +:10AD90000220DEF783F8002802D00220DEF78AF8CE +:10ADA0002078411E2170002802D19820D9F71AFD81 +:10ADB0002878012804D16868002801D0D9F775FDEA +:10ADC0002878401E287031BD38B5DFF8D44320788C +:10ADD000401C2070DFF8CC532878401C2870DAF72C +:10ADE000ACFB6878F021084202D09920D9F7FAFC30 +:10ADF000D9F765FD6878401C6870D9F7F5F968786F +:10AE0000F021084202D09920D9F7ECFC6878401E66 +:10AE10006870C0B2002801D1D9F74BFD0420DEF7DD +:10AE20003DF800280BD00420DEF744F80122002171 +:10AE30000320D7F7A9FCD6491020E5F77BFC207842 +:10AE4000411E2170002802D19820D9F7CBFC287828 +:10AE5000012804D16868002801D0D9F726FD287898 +:10AE6000401E287031BD38B5CD4C2078401C207074 +:10AE7000CC4D2878401C2870DAF75FFB6878F02109 +:10AE8000084202D09920D9F7ADFCD9F718FD6878AF +:10AE9000401C6870D9F7A8F96878F021084202D000 +:10AEA0009920D9F79FFC6878401E6870C0B20028CE +:10AEB00001D1D9F7FEFC4FF40060DDF7EFFF002869 +:10AEC00007D04FF40060DDF7F5FFB1492020E5F72A +:10AED00031FC2078411E2170002802D19820D9F73A +:10AEE00081FC2878012804D16868002801D0D9F7AE +:10AEF000DCFC2878401E287031BD70B5A84C207845 +:10AF0000401C2070A74D2878401C2870DAF715FBEC +:10AF10006878F021084202D09920D9F763FCD9F76C +:10AF2000CEFC6878401C6870D9F75EF96878F0212B +:10AF3000084202D09920D9F755FC6878401E687005 +:10AF4000C0B2002801D1D9F7B4FC4FF48040DDF73E +:10AF500027FF00281DD08E4EEBF7ECFF00280CD009 +:10AF60000020EBF7F1FFDFF769FAC06FD7F7F6F9CA +:10AF700031460620E5F7DEFB03E031460220E5F727 +:10AF8000D9FB4FF48040DDF720FF4FF48000DDF760 +:10AF900091FF2078411E2170002802D19820D9F716 +:10AFA00021FC2878012804D16868002801D0D9F74D +:10AFB0007CFC2878401E287070BD38B5784C20780D +:10AFC000401C2070774D2878401C2870DAF7B5FABD +:10AFD0006878F021084202D09920D9F703FCD9F70C +:10AFE0006EFC6878401C6870D9F7FEF86878F0212C +:10AFF000084202D09920D9F7F5FB6878401E6870A6 +:10B00000C0B2002801D1D9F754FC4FF48050DDF7CD +:10B01000C7FE00280BD05E494020E5F78BFB4FF4BC +:10B020008050DDF7D2FE4FF40030DDF743FF20788B +:10B03000411E2170002802D19820D9F7D3FB28782F +:10B04000012804D16868002801D0D9F72EFC28789F +:10B05000401E287031BDF0B585B0514C2078401CA1 +:10B060002070504D2878401C2870DAF766FA0220CC +:10B07000DDF726F9002862D000210220DDF7FDF877 +:10B080000220DDF725F90020DDF760F800A9002097 +:10B09000DDF743FD0120DDF77DFC01214FF4802029 +:10B0A000DDF7A9F80F20DDF725FE06461020DDF7B5 +:10B0B00021FE07460120DDF79BF80020DDF798F818 +:10B0C00031460F20DDF709FE39461020DDF705FE79 +:10B0D00000214FF48020DDF78EF80120DDF726F8FF +:10B0E00001214FF08050DDF791F84FF48070DDF7CB +:10B0F00069F83F20029040F2FF1003900020019079 +:10B1000001A8DDF751FC00A90020DDF7B7FC012004 +:10B11000DDF76BF8DDF791FC0320DDF79CFD4FF4C4 +:10B120008040DDF752FE4FF48000DDF7C3FE0121C1 +:10B130004FF48040DDF70FFE0220DDF7C9F82078DC +:10B14000411E2170002802D19820D9F74BFB2878A6 +:10B15000012804D16868002801D0D9F7A6FB287817 +:10B16000401E287005B0F0BD0CED00E00400FA05AB +:10B1700000080020106402400030014074A6002046 +:10B1800080841E00886402402000001058A6002021 +:10B19000E8920020202A0120404B4C00000402408D +:10B1A000DA2E0120087C00206C7C00200000024088 +:10B1B00054785265747279005478444D4120256466 +:10B1C000202564202564000052785265747279004D +:10B1D0005278444D412025642025642025640000D8 +:10B1E0005075744D61696C0052454144590000002E +:10B1F000455854493000000038B504000D0013488C +:10B200000078401C1149087011480078002802D0CD +:10B21000A120D9F7E7FADAF76BF9607E662802D049 +:10B220008220D9F7DFFAD9F74AFB05E04021200058 +:10B23000EBF790FED9F743FBE0680028F6D0290031 +:10B240002000EBF7D3FEDAF794F931BD087C00203B +:10B25000DB2E012038B50C460E4D2968C90706D5EE +:10B2600029684908490029602968C907FCD40022D7 +:10B2700001462846DDF730FB07492846DDF749FB44 +:10B28000214628464160C04601212846BDE8344099 +:10B29000DDF717BB886402400008002038B50C4673 +:10B2A0000E4D2968C90706D5296849084900296053 +:10B2B0002968C907FCD4002201462846DDF70CFBAB +:10B2C00007492846DDF725FB214628464160C04650 +:10B2D00001212846BDE83440DDF7F3BA106402408E +:10B2E0002000001070B504000D000126607E662865 +:10B2F00002D08220D9F776FADAF7D2F8114800782E +:10B30000401C10490870D9F7DAFAE06821698842D0 +:10B3100004D229002000EBF73FFE002609484078C0 +:10B32000F021084202D09920D9F75CFA054840780C +:10B33000002801D1D9F7BDFADAF71BF93000C0B205 +:10B3400070BD00BF087C002030B40168DFF86C28B5 +:10B3500011614368536184689461C068D0610125BC +:10B3600095620825D5628B4201DA13615161A042D2 +:10B3700001DA9061D4614FF0FF3010630020107348 +:10B380001062506230BC704710B5DFF830084FF0E3 +:10B39000FF310163002101730162416241638163F6 +:10B3A000DFF820484FF496622046D6F757FF4FF457 +:10B3B0009662002104F59660D6F750FF4FF4617253 +:10B3C000002104F6E440D6F749FF4FF461720021F2 +:10B3D00004F51660BDE81040D6F740BF70B52DEDFE +:10B3E0000A8BB0EE618AF0EE428AB0EE629A0024D7 +:10B3F000F0EE609AB5EE400AF1EE10FA0AD1F5EEE1 +:10B40000409AF1EE10FA05D1B5EE401AF1EE10FABD +:10B4100000F02B81DFF8A45785ED000AC5ED019AF5 +:10B42000B0EE41AA85ED02AADFF89C67B0EE480AAB +:10B4300010EE100ADCF704FE21F000412246DFF88E +:10B440008C37D7F7EFFC02D21046306007E0B0EE41 +:10B45000480ADFED880A20EE200A86ED000AF0EEA9 +:10B4600068AA1AEE900ADCF7EBFD21F000412246B3 +:10B47000DFF85837D7F7D6FC02D21046706005E0E7 +:10B480009FED7C0A2AEE800A86ED010A19EE100A69 +:10B49000DCF7D6FD21F000412246DFF83037D7F740 +:10B4A000C1FC02D21046B06005E09FED720A29EEA1 +:10B4B000000A86ED020A95ED00BA2BEE0B0A09EEA2 +:10B4C000A90A0AEE0A0A10EE100ADCF7B9FD41ECEF +:10B4D000100BD7F773FE51EC100BDCF7D9FD0AEE19 +:10B4E000900A9FED65CB8BEE2A0A10EE100ADCF76E +:10B4F000A7FD41EC100B00F013FC53EC102B51ECAA +:10B500001C0BD7F7B1FBDCF7C3FD08EE100A89EE80 +:10B51000AA0A10EE100ADCF793FD41EC100B00F0C4 +:10B52000FFFB53EC102B51EC1C0BD7F79DFBDCF70A +:10B53000AFFD08EE900A8AEE2A0A10EE100ADCF738 +:10B540007FFD41EC100B00F0EBFB53EC102B51ECAA +:10B550001C0BD7F789FBDCF79BFD0AEE100A19EEEE +:10B56000900ADCF76DFD41EC110BB0EE419AF0EE64 +:10B57000619AB1EE4B0A10EE100ADCF761FD41EC66 +:10B58000100BB0EE491AF0EE691A00F041FC53ECD2 +:10B59000102B4FF00050DFF83816D7F765FBDCF7BB +:10B5A00077FD09EE100AF0EE491AB0EE4A1AF0EEF5 +:10B5B000680AB0EE480A00F037FAF0EE6A1A95EC25 +:10B5C000030A00F04AFA96EC030A00F060FA2E6BC8 +:10B5D0003146012000F072FADFF8E80500EB860042 +:10B5E00000F6106080ED000A95ED040AB8EEC00A7E +:10B5F000B4EE40AAF1EE10FA22DB95ED050AB8EEA2 +:10B60000C00AB4EE4A0AF1EE10FA19DB95ED060A0B +:10B61000B8EEC00AB4EE409AF1EE10FA10DB95EDE8 +:10B62000070AB8EEC00AB4EE490AF1EE10FA07DBD9 +:10B630000FF2A850D6F7B6FE286A401C286201E037 +:10B6400020462862286AA96A88420EDB20462862C2 +:10B6500000F096F9012808D10FF29050D6F7A2FE1B +:10B6600000F004F9012800D101242046BDEC0A8B2A +:10B6700070BD0000E12E654200000020DCA54C40BA +:10B6800070B52DED0A8B0024DFF8305585ED000AEA +:10B69000B0EE60AA85ED01AAF0EE419AC5ED029ADE +:10B6A00095ED00BA2BEE0B0A0AEE0A0A09EEA90A7A +:10B6B00010EE100ADCF7C4FC41EC100BD7F77EFD4E +:10B6C00051EC100BDCF7E4FC09EE100A9FEDA5CB62 +:10B6D0008BEE090A10EE100ADCF7B2FC41EC100BFD +:10B6E00000F01EFB53EC102B51EC1C0BD7F7BCFAEF +:10B6F000DCF7CEFC08EE100A8AEE090A10EE100AFA +:10B70000DCF79EFC41EC100B00F00AFB53EC102B15 +:10B7100051EC1C0BD7F7A8FADCF7BAFC08EE900A3C +:10B7200089EE890A10EE100ADCF78AFC41EC100B56 +:10B7300000F0F6FA53EC102B51EC1C0BD7F794FAEF +:10B74000DCF7A6FC09EE900A1AEE100ADCF778FC8A +:10B7500041EC110BB0EE41AAF0EE61AAB1EE4B0A3A +:10B7600010EE100ADCF76CFC41EC100BB0EE4A1A3C +:10B77000F0EE6A1A00F04CFB53EC102B4FF0005027 +:10B78000DFF84C14D7F770FADCF782FC0AEE100AE7 +:10B79000F0EE4A1AB0EE691AF0EE680AB0EE480A06 +:10B7A00000F042F9F0EE491A95EC030A00F055F961 +:10B7B0002E6B287B002801D1032E52DB314601205D +:10B7C00000F07CF9DFF8FC0300EB860000F6106067 +:10B7D00080ED000A9FED650AB4EE409AF1EE10FA92 +:10B7E0003FD49FED630AB4EE409AF1EE10FA38DAD6 +:10B7F00028691E3800EE100AB8EEC00AF4EE409A2E +:10B80000F1EE10FA20DB68691E3000EE100AB8EE87 +:10B81000C00AB4EE690AF1EE10FA15DBA8691E3809 +:10B8200000EE100AB8EEC00AB4EE40AAF1EE10FA2B +:10B830000ADBE8691E3000EE100AB8EEC00AB4EE6A +:10B840004A0AF1EE10FA03DA686A401C686201E005 +:10B8500020466862686AE96A884202DB0224FFF7D0 +:10B8600093FD2046BDEC0A8B70BD0000F8B52DEDB0 +:10B87000028B84B0002400A821460A460B460EC065 +:10B88000DFF83803017B012901D1182101E0016BA8 +:10B89000491EDFF830C31AE000AD4FF4967707FB7E +:10B8A00003C707EB8607D7F8607900EE107ADFED63 +:10B8B000310A05EB830797ED001A00EE201A05EB1D +:10B8C000830585ED001A5B1C032BE5DB521C8A42C5 +:10B8D0000ADA036B9B1A4B334B2593FBF5F54B268A +:10B8E00006FB15362346EFE700AD95ED018A9FED87 +:10B8F000220AB4EE408AF1EE10FA16D50098DCF771 +:10B900009FFB21F000412246DFF8C832D7F78AFAC0 +:10B910000BD2A868DCF794FB21F000412246DFF847 +:10B92000B432D7F77FFA00D201249FED140ADDED7F +:10B93000000A95ED021A70EEC10AF4EE400AF1EE2B +:10B9400010FA00DB0124DDED000A70EEC80AF4EE07 +:10B95000400AF1EE10FA00DB0124204604B0BDECF1 +:10B96000028BF2BD00000020DCA54C4041ABDB4067 +:10B9700074FA4B410AD7A33C00008CC2010070420C +:10B9800010B400208D49096B01F14B024B231C467A +:10B9900092FBF4F403FB14224A311C4691FBF4F4AD +:10B9A00003FB1411874B03EB8204D4F8604900EECB +:10B9B000104AB5EE400AF1EE10FA33D103EB8202E1 +:10B9C000D2F88C4A00EE104AB5EE400AF1EE10FAB9 +:10B9D00028D1D2F8B82B00EE102AB5EE400AF1EECD +:10B9E00010FA1FD103EB8102D2F8602900EE102A71 +:10B9F000B5EE400AF1EE10FA14D103EB8101D1F853 +:10BA00008C2A00EE102AB5EE400AF1EE10FA09D1A8 +:10BA1000D1F8B81B00EE101AB5EE400AF1EE10FA9C +:10BA200000D1012010BC70476448016B491C0163C0 +:10BA30004B2903DB012202734B390163006B61491F +:10BA400001EB800282ED000A01EB8000C0ED4B0AA1 +:10BA500080ED961AC0EDE11A70475848006B5949BD +:10BA600001EB800202F2B04282ED000A01EB80009D +:10BA700000F2DC51B0EE602A81ED002A00F208717C +:10BA800081ED001A00F63400C0ED001A70474B48F3 +:10BA9000006B4C4901EB800202F6601282ED000A55 +:10BAA00001EB800000F68C21F0EE601AC1ED001A67 +:10BAB00000F6B83080ED001A7047000030B49FEDFA +:10BAC000400ADFED3F0A00223E4D12E08B1A1BB206 +:10BAD000002B00D54B331BB24FF4967404FB00547B +:10BAE00004EB8303D3F8B03401EE103A30EE010AD0 +:10BAF000521C032AEADBB0EE081A80EE010A00228B +:10BB000014E08B1A1BB2002B01D54B331BB24FF440 +:10BB1000967404FB005404EB8303D3F8B03401EEB5 +:10BB2000103A31EE401A41EE010A521C032AE8DBBA +:10BB3000B0EE080A80EE800A30BC704738B52DEDB3 +:10BB4000048BF0EE608AB0EE419A1C4CA06B451C51 +:10BB5000A56310EE100ADCF773FA21F00041012210 +:10BB60001D4BE8F71BF919D9B0EE680A10EE100A60 +:10BB7000DCF766FA21F000410122174BE8F70EF9D5 +:10BB80000CD9B0EE490A10EE100ADCF759FA21F090 +:10BB900000410122104BE8F701F902D8606B401C0C +:10BBA0006063022D05D100206063FFF7EDFB0220EA +:10BBB00000E00020BDEC048B32BD00002C270120EA +:10BBC00000000000D89300205C2D01200000E03F21 +:10BBD000DCA54CC0000034400000F03F23534C2D46 +:10BBE0003E2054696C7420696E00000023534C2D74 +:10BBF0003E206465746563742073746F7020000068 +:10BC0000D0B52DED048B82B041EC180B8DED008B7F +:10BC1000DDE90023C3F30A5140F2FF72914213D0D1 +:10BC2000002904BF190350EA113011D051EC180B50 +:10BC300000220023D7F7F6F83DBF81F0004141EC28 +:10BC4000180B0824002407E0190350EA1130EDD046 +:10BC500002B051EC180B60E051EC180B274A284B4E +:10BC6000D7F7E0F81CD29FED239B51EC190B53EC56 +:10BC7000182BD6F739FF06460F4653EC182B51EC1C +:10BC8000190BD7F703F932463B46D6F7EDFFD7F746 +:10BC90009DFA41EC100B51EC180B53EC102B1EE0ED +:10BCA0000122184BD7F7BEF82ED29FED129B51EC14 +:10BCB000190B53EC182BD6F717FF06460F4653EC1B +:10BCC000182B51EC190BD7F7E1F832463B46D6F763 +:10BCD000CBFFD7F77BFA84F0020453EC182BD7F78D +:10BCE00049F902B02246BDEC048BBDE8D04000F01B +:10BCF000B3B800BF000000000000F03FCE3B7F66FD +:10BD00009EA0E63F0000F03FE7F7E6FF212101603B +:10BD100002B04FF0FF306FF00041BDEC048BD0BD9E +:10BD200080B551EC100BFFF76BFF41EC100B01BD20 +:10BD300038B50FB4DDE9020100F086F90546DDE90A +:10BD4000000100F081F9012DB8BF012830DA019817 +:10BD5000002807D5DDE9000181F00041CDE90001AF +:10BD6000082400E000240398002807D5DDE902013B +:10BD700081F00041CDE9020184F00604DDE9020111 +:10BD8000DDE90023D7F74EF804D2D7F7F3F841ECFA +:10BD9000100B29E0002D08D5DDE90001DDE90223C3 +:10BDA000D7F7E8F841EC100B20E09FED150B1DE0F4 +:10BDB000022808BFDDE9000120D0022D08BFDDE91F +:10BDC00002011BD085420CBF9FED0F0B9FED0C0BAA +:10BDD000019900294CBF082400240399002948BF79 +:10BDE00084F00604012801D184F00204224605B043 +:10BDF000BDE8304051EC100B00F02EB805B030BD5E +:10BE00000000000000000000000000000000F03F03 +:10BE100080B553EC112B51EC100BFFF789FF41EC6F +:10BE2000100B01BD47797243616C3D256400000031 +:10BE300041434343616C3D256400000044554D502F +:10BE4000534554202564000050443A20536574251E +:10BE50006420256400000000D0B514462DED048B4D +:10BE6000534A544BE7F79AFF41EC180B1DD89FED4E +:10BE7000529B53EC182B51EC190BD6F7F5FE002210 +:10BE80004F4BD7F703F806460F4653EC182B51ECEF +:10BE9000190BD6F7FBFF02460B4630463946D7F75B +:10BEA00069F841EC180B44F0010451EC180B002226 +:10BEB000444BD6F7B7FF05D301224FF07953E7F78C +:10BEC0006DFF51D853EC182BD6F7CEFE41EC190B71 +:10BED00053EC182BD6F7C8FE06460F4653EC192B29 +:10BEE00039483A49D6F7C0FE394A3A4BD6F7CEFF21 +:10BEF00053EC192BD6F7B8FE374A384BD6F7C6FFA6 +:10BF000032463B46D6F7B0FE53EC182BD6F7BEFFB1 +:10BF100006460F4653EC192B31483249D6F7A4FE9A +:10BF2000314A324BD6F7B2FF53EC192BD6F79CFEB1 +:10BF30002F4A304BD6F7AAFF53EC192BD6F794FEB5 +:10BF40002D4A2E4BD6F7A2FF53EC192BD6F78CFEB9 +:10BF50002B4B0022D6F79AFF02460B463046394655 +:10BF6000D7F708F841EC180BA00705D551EC180BD2 +:10BF700081F0004141EC180B14F007020BD00FF2D6 +:10BF8000880303EBC20251EC180B53681268D6F712 +:10BF90007DFF41EC180B200705D551EC180B81F003 +:10BFA000004141EC180B51EC180BBDEC048BD0BDDB +:10BFB00057CD9E5E1426D13FAA4C58E87AB6FB3F77 +:10BFC0000000F0BF000040BE845D57134B57B03FE8 +:10BFD000B2934C19ED5EE43FBEDE02B90240F83F79 +:10BFE000DE39028FC7C0743F8AAB1283000CC83F92 +:10BFF00024D7E508B6D8F03F0F34580E5895FD3FCA +:10C000000000F03F00000000000000000000000001 +:10C0100066732D3852C1E03F182D4454FB21F93F7F +:10C0200066732D3852C1F03F182D4454FB21F93F5F +:10C0300066732D3852C10040182D4454FB2109402D +:10C040003FD038C6A6F1044003B4DDE90023C3F3B2 +:10C050000A5140F2FF72914206D001B10CE019037F +:10C0600050EA113006D00BE0190350EA113014BF2A +:10C070000220012002B070474FF0FF3002B070473D +:10C080006FF0010002B0704710B5DFF8D8452062AC +:10C090000C220021201DD6F7E1F804F124002061D4 +:10C0A00004F13C00606104F15400A06104F16C00F3 +:10C0B000E06100202070FF206070A07010BD0000C3 +:10C0C0002DE9F0472DED068B86B00C464FF0000AA7 +:10C0D000DFF89055016869604168A9608068E86090 +:10C0E000D04640460190049003900290052205F14D +:10C0F0000C01286900F047FA052205F1080168697A +:10C1000000F041FA0522291DA86900F03CFA052338 +:10C1100001AA0321286900F04BFAB0EE408A0523FA +:10C1200004AA0321686900F043FAF0EE408A05236F +:10C1300003AA0321A86900F03BFAB0EE409A052259 +:10C140000321286900F070FAF0EE080AC0EE209A88 +:10C1500095ED02AAD5ED01AAF5EE40AAF1EE10FA8E +:10C160000FD1B5EE40AAF1EE10FA0AD195ED030A0F +:10C17000B5EE400AF1EE10FA03D100F000FA4FF0EC +:10C180000108564695F8019095ED030A6AEEAA0A51 +:10C190004AEE0A0A40EE000A10EE900ADBF750FF62 +:10C1A00041EC100BD7F70AF851EC100BDBF770FFDE +:10C1B0000090052200A9E86900F0E5F99DED000A6C +:10C1C000DFEDA30AB4EE600AF1EE10FA00F185800B +:10C1D000DFEDA00AB4EE600AF1EE10FA7DDA052375 +:10C1E00002AA0321E86900F0E3F9F0EE0C0AB4EECC +:10C1F000600AF1EE10FA70D59FED970AB4EE408A0E +:10C20000F1EE10FA69D59FED950AF4EE409AF1EE41 +:10C2100010FA10D59FED920AF4EE409AF1EE10FA62 +:10C2200009DB6878FF2858D0FF2068704FF0FF3096 +:10C2300020700120C3E019EE900ADBF701FF21F026 +:10C2400000413246DFF82034D6F7ECFD11D2B0EED3 +:10C25000000AF4EE408AF1EE10FA17D4F4EE408AA8 +:10C26000F1EE10FA39DAB4EE409AF1EE10FA0EDB84 +:10C2700033E0052301AA1946286900F099F9F7EE81 +:10C28000000AB4EE600AF1EE10FA26D5B04695ED3C +:10C29000030ADDED000A80EE200A10EE100ADBF73B +:10C2A000CFFE41EC100BFFF73BFD53EC102B4FF092 +:10C2B0000040DFF8B813D6F7D7FC41EC100B00F0C4 +:10C2C00019FA51EC100BD6F7F9FF0746B8F1000F39 +:10C2D00050D1E9F7F7F93D2803DB00F050F930467B +:10C2E0006DE0A868DBF7ACFE41EC110BB0EE418AC3 +:10C2F000F0EE618A95ED010AB1EE400A10EE100AE7 +:10C30000DBF79EFE41EC100BB0EE481AF0EE681A17 +:10C31000FFF77EFD53EC102B4FF00040D449D6F7C9 +:10C32000A3FC41EC100B00F0E5F951EC100BD6F733 +:10C33000C5FF060001D506F5B47606F12D005A2199 +:10C3400090FBF1F8B8F1040F00D1D046384600F068 +:10C350003BF8002806D03A463146404600F039F80E +:10C36000002802D100F00BF904E0A878404501D084 +:10C3700085F80280A878484502D1B9F1FF0F1DD198 +:10C3800095F8201011F0060F01D0012604E03A467E +:10C39000314600F067F806463846E9F793F93D283C +:10C3A0000CDA002E0AD0A8786978814206D068702D +:10C3B00020704FF0010AFF2800D02870504606B0C8 +:10C3C000BDEC068BBDE8F0873C3079288041C00F7A +:10C3D000704718B4A34C237894F8204014F0060F4B +:10C3E00001D018BC3EE02FD4984208D05A1C5410FB +:10C3F00002EB9474A410A2EB840290420ED15A2254 +:10C400004243283A002807D1B1F59D7F06DD02F5A9 +:10C41000B472914202DA15E0914213DB984208D0DF +:10C42000DA1C531002EB93739B10A2EB8302904231 +:10C430000AD15A2242432832002801D12E2903DA98 +:10C440008A4201DA002000E0012012BC704700009F +:10C45000DD0CFB40A7493C416766E63F3E1B30418F +:10C46000D7B409412DE9F04391B004460D469146F9 +:10C470007C4E96F8008000274846E9F723F900280B +:10C4800004D44846E9F71EF91E2822DB4846E9F79E +:10C4900019F91E2806DB4846E9F714F9282801DABD +:10C4A000012716E04846E9F70DF9282806DB48463B +:10C4B000E9F708F9322801DA02270AE04846E9F7E5 +:10C4C00001F932280ADB4846E9F7FCF83D2805DA8D +:10C4D0000327B8F1000F45D4002C01D5002042E01D +:10C4E000444509D008F10100411000EB9171891019 +:10C4F000A0EB8100844217D100A80FF278114022EE +:10C50000D6F7A6FA3801002C00A908D141588D426F +:10C510000ADA00A940184068A84205DA2BE0401862 +:10C5200050F82400854226DB444509D008F1030079 +:10C53000411000EB91718910A0EB8100844211D170 +:10C5400000A80FF270114022D6F782FA3801002CB1 +:10C5500000A90BD14158A94204DA00A94018C068CB +:10C56000854208DB012011B0BDE8F083401850F887 +:10C570002400A842F6DAFF20B0700020F3E7394823 +:10C58000FF21817070470388934201D30023038009 +:10C5900003885B1C03809BB2934201D3002202807C +:10C5A000028800EB820009684160012070470000AA +:10C5B0002DE9F8432DED028B04460D4616461F4625 +:10C5C0009FED278A4FF00008B4F9009000EE105A52 +:10C5D000F8EEC08A3A4600F027F880EE280A86ED89 +:10C5E000000A05E0A7F101090FFA89F908F101082D +:10C5F0000FFA88F8A84511DA04EB890090ED010ADA +:10C60000D6ED000A30EE600A00EE008AB9F1010FA3 +:10C61000E8DBA9F101090FFA89F9E7E788EE280AB2 +:10C62000BDEC028BBDE8F18330B49FED0D0A002311 +:10C63000B0F900400EE024B2250006D400EB8505D9 +:10C64000D5ED010A30EE200A641E24B2002C00D57C +:10C65000541E5B1C1BB28B42EDDB30BC70470000EC +:10C66000000000008015012000001040DCA54C40B7 +:10C67000DCA54CC04A0100003C0000009600000010 +:10C68000F00000004F010000410000009B0000008E +:10C69000F50000005401000046000000A00000006A +:10C6A000FA0000005E01000050000000AA00000037 +:10C6B000040100001E00000078000000D20000000D +:10C6C0002C0100001900000073000000CD000000E4 +:10C6D00027010000140000006E000000C8000000E8 +:10C6E000220100000A00000064000000BE000000FB +:10C6F0001801000000B583B001218DED000B00A8EA +:10C70000FDF7CAFF401E012811D9002100A8FDF73E +:10C71000C3FF60B10198DDE90023002847BF002076 +:10C72000054900200549D6F7B1FBCDE900019DED93 +:10C73000000B03B000BD00000000F0BF0000F03FA0 +:10C740002DE9F0412DED048B8CB006460F46904646 +:10C7500000A80FF2BC513022D6F77AF9DFF8644511 +:10C760000A20206207206062A0620520E062DFF8F4 +:10C770005805DFF85815CDE9000100A84FF0333215 +:10C78000DFF84C35C0E90223DFF83C25DFF84435FB +:10C79000C0E904234FF03332DFF83C35C0E906230B +:10C7A000DFF83835C0E90823DFF83435C0E90A235B +:10C7B000DFF830550A2129653168142291FBF2F126 +:10C7C000E965D8F80010022901D1052123E0396874 +:10C7D000102918D0B1F5807F06D0B1F5806F08D050 +:10C7E000B1F5006F0AD012E04FF48071216300218F +:10C7F00011E04FF48061216302210CE04FF40061ED +:10C800002163032107E010212163042103E04FF499 +:10C8100000712163012100EBC100D0E90023DFF8A2 +:10C82000C804DFF8C814D6F71FFA41EC180B53EC14 +:10C83000182B0020DFF8B814D6F716FA41EC100BCD +:10C8400085ED0A0B85ED080B53EC102BDFF8A404E3 +:10C85000DFF8A414D6F708FAC5E90C01202200215C +:10C860002046D5F7FBFC9FED319B206AD6F7F6FA00 +:10C8700053EC192BD6F7F8F953EC182BD6F7F4F93B +:10C88000C4E90001606AD6F7E9FA53EC192BD6F730 +:10C89000EBF953EC182BD6F7E7F9C4E90201A06ACB +:10C8A000D6F7DCFA53EC192BD6F7DEF953EC182B3C +:10C8B000D6F7DAF9C4E90401E06AD6F7CFFA53EC07 +:10C8C000192BD6F7D1F953EC182BD6F7CDF9C4E9CB +:10C8D00006010020A86501206866A86604F13400FE +:10C8E00028660020287068650146C5E90E019FEDA5 +:10C8F000110B85ED100B85ED120B0CB0BDEC048B0C +:10C90000BDE8F081DFF8DC030121416681669FED1F +:10C91000090B80ED100B80ED120B002101704165B9 +:10C920000A460B46C0E90E237047000000000000D5 +:10C930000000E03F2D431CEBE2361A3F2DE9F84F93 +:10C940002DED068B8AB005464FF000089FEDDB9B6E +:10C95000B0EE498AF0EE698A04A81821D7F704FFDF +:10C96000C1468DED010AF0EE601AF1EE611ACDEDCF +:10C97000021AB1EE410A8DED030ADA4C1E2201A91A +:10C98000206EF5F788FD2868022802D10220009069 +:10C9900001E003200090206E616E00290CD0002879 +:10C9A00000F085810088216D8842C0F28081404678 +:10C9B000606684ED0E9B7AE1A16E002939D01E22BB +:10C9C000216D09B2F5F790FD94ED149AF8EEC90ABD +:10C9D00080EE200A10EE100ADBF732FBC4E90201F8 +:10C9E0001E2219EE101A09B2206EF5F79BFD94ED88 +:10C9F000149AF8EEC90A80EE200A10EE100ADBF74E +:10CA00001FFBC4E904011E2219EE101A09B2206EA0 +:10CA1000F5F7A6FDD4ED140AF8EEE00A80EE200A40 +:10CA200010EE100ADBF70CFBC4E906014046A066D5 +:10CA300045E01E224146F5F747FD05461E22216DC1 +:10CA400009B2206EF5F740FD064694ED140AB8EEE3 +:10CA5000C09A95ED000AD6ED000A30EE600A80EE2D +:10CA6000090A10EE100ADBF7EBFAD4E90223D6F735 +:10CA70000DFAC4E9020195ED010AD6ED010A30EE86 +:10CA8000600A80EE090A10EE100ADBF7D9FAD4E941 +:10CA90000423D6F7FBF9C4E9040195ED020AD6EDAB +:10CAA000020A30EE600A80EE090A10EE100ADBF787 +:10CAB000C7FAD4E90623D6F7E9F9C4E90601182232 +:10CAC000414604A8D5F7CAFB454604AE40E01E2205 +:10CAD000294609B2206EF5F7F7FC07463868DBF700 +:10CAE000AFFAD4E90223D5F7FFFF41EC100B53EC6A +:10CAF000102BD6F7B9F8DDE90423D6F7C7F9CDE94D +:10CB000004017868DBF79CFAD4E90423D5F7ECFF3D +:10CB100041EC100B53EC102BD6F7A6F8D6E9022304 +:10CB2000D6F7B4F9C6E90201B868DBF789FAD4E9A7 +:10CB30000623D5F7D9FF41EC100B53EC102BD6F799 +:10CB400093F8D6E90423D6F7A1F9C6E904016D1CD0 +:10CB5000206D8542BBDBD6F781F941EC190BDDE98D +:10CB6000040153EC192BD6F705FACDE90401D6E9F7 +:10CB7000020153EC192BD6F7FDF941EC1A0B86EDA7 +:10CB800002ABD6E9040153EC192BD6F7F3F941ECCB +:10CB9000190B86ED049BDDE9040153EC1A2BD6F743 +:10CBA00075F9564A564BD6F73DF907D294ED100B5E +:10CBB0008DED040B94ED120B86ED020B9DED040B35 +:10CBC00084ED100B96ED02AB84ED12ABD4E90E01AF +:10CBD0004FF066324B4BD6F747F882468B46DDE97D +:10CBE000042351EC1A0BD6F751F902460B4651ECCF +:10CBF000190BD6F7BFF9344A434BD6F735F802463E +:10CC00000B4650465946D6F741F941EC100B84EDDE +:10CC10000E0B01223D4BE7F7C1F806D8904620786D +:10CC2000012802D1606D401C60654D460FE006EBA7 +:10CC3000C50090ED009B51EC180B53EC192BD6F767 +:10CC4000F1F803D2B0EE498AF0EE698A6D1C0098C3 +:10CC50008542ECDBD4E9080153EC182BE7F79EF88A +:10CC600002D9606D10280FDBE06DA16D884204DAF7 +:10CC70004846207060654FF001090020A06594EDE2 +:10CC80000A0B84ED080B12E0B8F1000F0FD1A06D74 +:10CC9000E16D814209DA01212170494661654FF059 +:10CCA000020994ED0C0B84ED080B401CA06548466E +:10CCB0000AB0BDEC068BBDE8F28F00BF000000009B +:10CCC00000000000B07600209A9999999999C93F7F +:10CCD0003333D33F9999E93F3333F33F3333034041 +:10CCE0003333E33F107A00201F85EB51B89E234079 +:10CCF000000014407B14AE47E17A843F2E431CEBC6 +:10CD0000E2362A3F6666EE3F9999A93F000034401B +:10CD10009A9999999999C93F333333333333E33F20 +:10CD20009A9999999999E93F333333333333F33FE0 +:10CD30003333333333330340333333333333E33F2A +:10CD40000FB400B587B0272200210846DAF77CFF30 +:10CD5000022805D10FF2F430D5F724FB02202AE097 +:10CD6000272201210020DAF76FFF022805D10FF2F8 +:10CD7000E830D5F717FB02201DE0BDF92200009036 +:10CD800000A8BDF924104160BDF926108160BDF9ED +:10CD9000280003909DF82A0004909DF82B00059030 +:10CDA000DFF894030121417000218170C17000A857 +:10CDB000FEF7CAFA012007B05DF814FB10B58AB07F +:10CDC000272200210120DAF73FFF032805D10FF2C7 +:10CDD0009830D5F7E7FA032039E0272201210846E9 +:10CDE000DAF732FF022805D10FF26C30D5F7DAFA04 +:10CDF00002202CE0D04C94F90300012823D100201C +:10CE0000A07000F04AFA00A82421D7F7ADFC012059 +:10CE10008DF800002A2001900A208DF808000020DB +:10CE2000ADF822008DF80900ADF80A008DF80C006D +:10CE300000A8DAF7DDFF002805D10FF23C30D5F766 +:10CE4000B1FA002003E00020A070E07001200AB0D9 +:10CE500010BD30B59DB012A8DAF755FF0025B64CCD +:10CE600094F90100012803D0042801D0052806D137 +:10CE700012A890EC030AFEF703FC05460AE002281C +:10CE800008D115A8D0EC031A12A890EC030AFEF7FB +:10CE9000A5FA0546002D35D094F90100854230D021 +:10CEA0002570012000F028F9012D02D10120A07089 +:10CEB00027E0022D25D10020A07094F9030001285D +:10CEC0001FD100F0EAF900A82421D7F74DFC01207A +:10CED0008DF800002A2001900A208DF8080000201B +:10CEE000ADF822008DF80900ADF80A008DF80C00AD +:10CEF00000A8DAF77DFF002800F0C2800020E07073 +:10CF0000A060657094F9030094F9021001292DD1F5 +:10CF100000282BD1606890F89006002801D00020EE +:10CF2000B9E000A82421D7F71FFC00208DF80000ED +:10CF30002A2001900A208DF808000020ADF8220078 +:10CF40008DF80900ADF80A008DF80C0000A8DAF79A +:10CF50004FFF002805D10FF23820D5F723FA002023 +:10CF600099E00120E0700020A06093E0012840F0EB +:10CF70009180A068401CA06005283ADA15A890ECC2 +:10CF8000030AFEF7DBFD01282BD10420607020701E +:10CF9000012000F0B1F80020A07094F903000128EE +:10CFA00027D100F07AF900A82421D7F7DDFB012072 +:10CFB0008DF800002A2001900A208DF8080000203A +:10CFC000ADF822008DF80900ADF80A008DF80C00CC +:10CFD00000A8DAF70DFF002852D00020E070A06012 +:10CFE00007E0022805D1052060702070012000F0C4 +:10CFF00083F800F04EF9012825D10320207001208C +:10D0000000F07AF80020A07000F047F900A8242171 +:10D01000D7F7AAFB01208DF800002A2001900A20F2 +:10D020008DF808000020ADF822008DF80900ADF859 +:10D030000A008DF80C0000A8DAF7DAFE00281FD0ED +:10D040000020E070A060A068FB2823DB09A8242151 +:10D05000D7F78AFB01208DF824002A200A900A20A5 +:10D060008DF82C000020ADF846008DF82D00ADF8AD +:10D070002E008DF8300009A8DAF7BAFE002805D195 +:10D080000FF2F400D5F78EF9002004E00020E070E4 +:10D09000A070A06001201DB030BD80B5DAF7D2FDD0 +:10D0A0002549486000220A702449C0F8281600F279 +:10D0B000286023494160234981600FF21101C1605A +:10D0C0000FF23D010161012002BD00001A484068D5 +:10D0D00090F81906002801D10020704708E080B5BB +:10D0E000154800210170084600F006F8012002BD35 +:10D0F000154890F900007047134908707047000008 +:10D1000018B440F221120B7812FB030301241C70A7 +:10D110000B7812FB03035C700B7812FB03032724CC +:10D120009C700B7812FB0300034A1278C2700878D7 +:10D13000401C087011BCD2E72C2D012041CD020803 +:10D14000BDCD020853CE0208D12E012053532041F9 +:10D150004343206661696C005353204759524F2066 +:10D160006661696C00000000535320414343322044 +:10D170006661696C00000000444F55424C455441C3 +:10D180005020436C6F7365206661696C000000007D +:10D19000444F55424C45544150204F70656E2066B7 +:10D1A00061696C000FB480B52A2200210846DAF7C5 +:10D1B0004BFD022805D10FF23810D5F7F3F8022005 +:10D1C00002E000F0A3F8012002BC5DF814FB80B57A +:10D1D0002A2200210120DAF737FD032805D10FF2BA +:10D1E0001C10D5F7DFF8032002BD012002BD10B5E9 +:10D1F0008CB000A8DAF787FD00A890EC030A00F0D5 +:10D20000ABF80446012C0ED100F080F833480470CE +:10D21000416891F89016002901D001214170012048 +:10D2200000F034F803E0022C01D100F06FF8012087 +:10D230000CB010BD80B5DAF705FD284948602849D3 +:10D24000C0F8A01600F2A06026494160264981601E +:10D250000FF20D01C1600FF24D010161012002BD0D +:10D260001E48406890F89106002801D100207047C0 +:10D2700008E080B5194800210170084600F006F862 +:10D28000012002BD194890F9000070471749087045 +:10D290007047124890F90100704710480021417012 +:10D2A0007047000018B440F221120B7812FB030300 +:10D2B00001241C700B7812FB03035C700B7812FBCB +:10D2C00003032A249C700B7812FB0300034A127894 +:10D2D000C2700878401C087011BCCAE7E02D01201C +:10D2E000A5D10208CFD10208EFD10208BC2E01203F +:10D2F000445420414343206661696C0044542041FA +:10D30000434332206661696C00000000DFF81404BA +:10D310000021016041608160C16001614161816102 +:10D32000C161016241628162C1620846024610E049 +:10D33000DFF8F41341F8202001EB80018A620A65CE +:10D34000DFF8E81341F8202001EB80018A620A65CA +:10D35000401C0A28ECDB70472DE9F8432DED028BC9 +:10D360004FF00009DFF8BC4320680A2806DB0A38C2 +:10D3700020606068002801D1012060602568DFF826 +:10D38000A86306EB850080ED000A06EB8507F0EE4A +:10D39000601AC7ED0A1A87ED141A606828430DD188 +:10D3A000691C2160DFF884034A4640F8212000EB25 +:10D3B00081001146816201650846A6E1691E00D51B +:10D3C0000A31DFF8680306EB850292ED000A06EBEE +:10D3D0008102D2ED000A30EE600A00EB850282ED98 +:10D3E000000A00EB850806EB810197ED0A0AD1EDF2 +:10D3F0000A0A30EE600A88ED0A0A97ED140AD1EDA8 +:10D40000140A30EE600A88ED140AA168002952D18E +:10D4100050F82500DAF714FE21F000414FF03332C6 +:10D42000DFF80C33D5F7FEFC3AD2D8F82800DAF74B +:10D4300007FE21F000414FF03332BD4BD5F7F2FC2F +:10D440002ED2D8F85000DAF7FBFD21F000414A4611 +:10D45000B84BD5F7E7FC23D206EB850090ED000A28 +:10D46000DFEDAC0AB4EE600AF1EE10FA18DBB86A30 +:10D47000DAF7E6FD21F000414A464FF08043D5F748 +:10D48000D1FC0DD2386DDAF7DBFD21F000414A46C0 +:10D49000A94BD5F7C7FC03D2E068401CE06001E06F +:10D4A0004846E060E0680428C0F2FA800120A060ED +:10D4B00048462062F4E0012940F0A380216A012956 +:10D4C00001DB491C21622169002924D150F8250083 +:10D4D00000EE100ADFED900AB4EE600AF1EE10FAE9 +:10D4E00009DB4FF0FF302061A069401CA061206A79 +:10D4F000401C206236E0DFED890AB4EE600AF1EEEE +:10D5000010FA2FD501202061A069401CA061206A7B +:10D51000401C206226E0012911D100EB850090ED2E +:10D52000000ADFED7D0AB4EE600AF1EE10FA19DBB5 +:10D530004FF0FF302061A069401CA06112E011F1A2 +:10D54000010F0FD100EB850090ED000ADFED730AAB +:10D55000B4EE600AF1EE10FA04D501202061A06952 +:10D56000401CA0616069002827D198ED140AF7EEED +:10D57000000AB4EE600AF1EE10FA0CDB4FF0FF3057 +:10D580006061E069401CE061206A002840F088800A +:10D590000120206284E0DFED620AB4EE600AF1EE61 +:10D5A00010FA7DD501206061E069401CE061206ACD +:10D5B000002875D10120206272E001280FD198ED7A +:10D5C000140AF7EE000AB4EE600AF1EE10FA67DB17 +:10D5D0004FF0FF306061E069401CE06160E010F1F5 +:10D5E000010F5DD198ED140ADFED4D0AB4EE600A2B +:10D5F000F1EE10FA54D501206061E069401CE06151 +:10D600004EE002294CD1216A481C206294ED090A9F +:10D6100006EB8501D1ED000A30EE200A84ED090AFF +:10D62000D4ED0A0A97ED0A1A70EE810AC4ED0A0ACF +:10D6300094ED0B1AD7ED141A31EE211A84ED0B1A62 +:10D640000A282DD1F2EE041A80EE210AC0EEA10ABA +:10D6500081EE218AB2EE081AB4EE410AF1EE10FA18 +:10D660001ED59FED2C1AB4EE410AF1EE10FA17DB2D +:10D6700010EE900ADAF7E4FC21F000414A462F4B05 +:10D68000D5F7D0FB0CD218EE100ADAF7D9FC21F04E +:10D6900000414A462A4BD5F7C5FB01D24FF001099C +:10D6A000216AB42923DAA069042802DAE269042A8B +:10D6B0001DDB03281BDB1F290ADB00202062A06181 +:10D6C000E0610220A06000206062A062E06218E0D9 +:10D6D0000FF27000D4F766FEA069042801DB801EFB +:10D6E000A061E06904280CDB801EE06109E0B42938 +:10D6F00007DB0020A060E06020616061A061E06164 +:10D7000020622068401C20604846BDEC028BBDE8CA +:10D71000F28300000100A0409A99193F999919BF1E +:10D72000FEFF7FBFDC280120F41801206C190120C6 +:10D730003333E33F0000F03F000014400000084096 +:10D7400000001840445450206661696C2025640034 +:10D75000CF490022CA630A6401F148024A6201F11A +:10D76000C4028A6201F5A072CA6201F5DE720A6320 +:10D7700001F50E724A6301F52D728A630B2802DAF5 +:10D780001E2048647047152802DA19204864704743 +:10D79000432802DA142048647047C92802DA0F20AF +:10D7A000486470470A20486470470000F8B52DEDC2 +:10D7B000068B84B004460026B54DE86B00286CD17A +:10D7C00085ED000AB0EE603A85ED013A85ED021A6A +:10D7D000B0EE610A85ED030AB0EE420A85ED050A56 +:10D7E000B0EE620A85ED040A304602900190009086 +:10D7F0001E222946E86A00F0DAF81E22291DA86ACE +:10D8000000F0D5F81E2205F10801686A00F0CFF893 +:10D810001E2205F10C01A86B00F0C9F81E2205F1CB +:10D820001001686B00F0C3F81E2205F11401286B8B +:10D8300000F0BDF8696C286C81422ADA1E2300AA28 +:10D8400009B2E86A00F0C8F8B0EE408A1E2301AAC7 +:10D85000696C09B2A86A00F0BFF8F0EE408A1E2396 +:10D8600002AA696C09B2686A00F0B6F8DFED860AB0 +:10D87000B4EE608AF1EE10FA0BD5F4EE608AF1EEA8 +:10D8800010FA06D5B4EE600AF1EE10FA01D50120C7 +:10D89000E863286C401C286484E0AE6B6F6C1E2229 +:10D8A000394609B2304600F0D3F8F0EE408A1E2225 +:10D8B000394609B2304600F0F1F8B0EE409A1E2227 +:10D8C000394609B2304600F00EF9B81E00EE900A53 +:10D8D000B8EEE08A78EEC90A30EEC00AC0EE088AD7 +:10D8E000C5ED068A6E6B1E22394609B2304600F03D +:10D8F000AFF8B0EE409A1E22394609B2304600F029 +:10D90000CDF8F0EE409A1E22394609B2304600F0BA +:10D91000EAF879EE690A30EEC00A80EE089A85EDE1 +:10D92000079A2E6B1E22394609B2304600F090F855 +:10D93000F0EE409A1E22394609B2304600F0AEF8A9 +:10D94000B0EE40AA1E22394609B2304600F0CBF8AC +:10D9500079EECA0A30EEC00A80EE088A85ED088AA0 +:10D9600018EE900ADAF76CFB4A4A4B4BD5F702FBEC +:10D97000D5F7A4FC208019EE100ADAF761FB454ABE +:10D98000454BD5F7F7FAD5F799FC608018EE100AE9 +:10D99000DAF756FB3F4A404BD5F7ECFAD5F78EFC49 +:10D9A000A0800126304604B0BDEC068BF2BD038892 +:10D9B000934201D30023038003885B1C03809BB246 +:10D9C000934201D300220280028800EB82000968A2 +:10D9D00041600120704700002DE9F8432DED028BD6 +:10D9E00004460D4616461F469FED288A4FF0000854 +:10D9F000B4F9009000EE105AF8EEC08A3A4600F0F2 +:10DA000027F880EE280A86ED000A05E0A7F1010953 +:10DA10000FFA89F908F101080FFA88F8A84511DA18 +:10DA200004EB890090ED010AD6ED000A30EE600AA1 +:10DA300000EE008AB9F1010FE8DBA9F101090FFA44 +:10DA400089F9E7E788EE280ABDEC028BBDE8F1838F +:10DA500030B49FED0E0A0023B0F900400EE024B26E +:10DA6000250006D400EB8505D5ED010A30EE200A2D +:10DA7000641E24B2002C00D5541E5B1C1BB28B42CA +:10DA8000EDDB30BC704700006F12033B000000006C +:10DA9000F4ED002089AD84FA0A74313F2DE9F0419C +:10DAA00004460D46164694ED010A0027B4F900809D +:10DAB00014E00FFA88F84046002807D404EB8000F1 +:10DAC000D0ED010A00F03CF8A8F101080FFA88F83F +:10DAD000B8F1000F01D5A6F101087F1C3FB2AF429B +:10DAE000E7DBBDE8F0812DE9F04104460D4616461E +:10DAF00094ED010A0027B4F9008014E00FFA88F8C9 +:10DB00004046002807D404EB8000D0ED010A00F065 +:10DB10000FF8A8F101080FFA88F8B8F1000F01D545 +:10DB2000A6F101087F1C3FB2AF42E7DBBDE8F08100 +:10DB3000B4EE600AF1EE10FA01D4B0EE600A70475C +:10DB4000F4EE400AF1EE10FA01D4B0EE600A70472C +:10DB50000020024609E0D04941F8202001EB800175 +:10DB6000C1F8F020C1F8E021401C3C28F3DBCB4891 +:10DB70001146016041608160704700002DE9F84F57 +:10DB80002DED0A8B86B000208DF80800C34C20686C +:10DB90003C2806DB3C3820606068002801D1012069 +:10DBA00060602568DFF8F09209EB850080ED000ADF +:10DBB00009EB8506F0EE601AC6ED3C1A86ED781A80 +:10DBC00059F82500DAF73CFA21F000410022B64B63 +:10DBD000D5F728F90AD359F82500DAF731FA21F0F8 +:10DBE00000410122AE4BE6F7D9F802D8002049F8EF +:10DBF0002500D6F8F000DAF723FA21F000410022E0 +:10DC0000A84BD5F70FF90AD3D6F8F000DAF718FACF +:10DC100021F000410122A54BE6F7C0F802D8002010 +:10DC2000C6F8F000D6F8E001DAF70AFA21F0004170 +:10DC300000229D4BD5F7F6F80AD3D6F8E001DAF7C3 +:10DC4000FFF921F000410122984BE6F7A7F802D82E +:10DC50000020C6F8E00159F82500DAF7F1F921F0C3 +:10DC6000004100221346D4F72FFF19D1D6F8F00057 +:10DC7000DAF7E6F921F0004100221346D4F724FF39 +:10DC80000ED1D6F8E001DAF7DBF921F000410022ED +:10DC90001346D4F719FF03D1A068401CA06001E02F +:10DCA0001046A060A0680528C0F2ED809FED808A34 +:10DCB0009FED7F9ADFED7E8A164610460490039012 +:10DCC000DFED7B9A9FED7ABA00E0761C372E80F26A +:10DCD00089806768002F01D1B24602E0701900F117 +:10DCE000010ABAF13C0F01DBAAF13C0A59F82A00FB +:10DCF00000EE100AF4EE409AF1EE10FA02D5F0EEC2 +:10DD0000409A049609EB8A0898ED780AB4EE40BA76 +:10DD1000F1EE10FA02D5B0EE40BA03969FED65AB76 +:10DD20009FED66CB18EE100ADAF78AF9CDE900010B +:10DD300059F82A00DAF784F953EC1C2BD4F794FF36 +:10DD400053EC1A2BD4F790FF00225E4BD5F712F953 +:10DD5000DDE90023D5F79AF8DAF79AF908EE100A08 +:10DD600019EE100ADAF76CF982468B46D8F8F00003 +:10DD7000DAF766F953EC1C2BD4F776FF53EC1A2B29 +:10DD8000D4F772FF00224F4BD5F7F4F852465B46AA +:10DD9000D5F77CF8DAF77CF909EE100A18EE900A4C +:10DDA000DAF74EF982468B46D8F8E001DAF748F9FF +:10DDB00053EC1C2BD4F758FF53EC1A2BD4F754FF19 +:10DDC0000022404BD5F7D6F852465B46D5F75EF8B1 +:10DDD000DAF75EF908EE900A002F7FF476AFAE42D4 +:10DDE0007FF473AF18EE100ADAF72AF941EC1A0B38 +:10DDF00021F000410122374BE5F7D0FF43D851EC29 +:10DE00001A0B21F0004100222F4BD5F70BF83AD224 +:10DE100019EE100ADAF714F941EC190B21F0004160 +:10DE200001222A4BE5F7BAFF2DD851EC190B21F04E +:10DE300000410022264BD4F7F5FF24D218EE900AB9 +:10DE4000DAF7FEF841EC190B21F000410122214BD9 +:10DE5000E5F7A4FF17D851EC190B21F0004100227F +:10DE60001D4BD4F7DFFF0ED203980499401AE7F751 +:10DE700029FC142807DAB5EE408AF1EE10FA02DD2B +:10DE800001208DF80800681C20609DF8080006B08D +:10DE9000BDEC0A8BBDE8F28FFCF30020CC2C0120F6 +:10DEA000000022400000E03F0000F03F000024405E +:10DEB000000000000000000000003440E6C1631ACA +:10DEC000DCA54C4000408F4000005E400000344024 +:10DED00000805B4000003E400040604070B52DED8A +:10DEE000028B82B00C46154608EE103A9C4E00217B +:10DEF000F1604FF47A7148433C2190FBF1F0D4F784 +:10DF0000ADFF41EC100BFEF7F5FB51EC100BD5F714 +:10DF1000D5F930617461B56106F12C00F06106F14C +:10DF20003C00306206F14C007062B8EEC80ADFEDCA +:10DF30008A0A80EE200A86ED0A0A10EE100ADAF745 +:10DF40007FF8CDE90001B369726931690FF21820D9 +:10DF5000D4F728FA02B0BDEC028B70BD38B52DEDB8 +:10DF6000028B84B000247E4D01682960416869609D +:10DF70008068A86020460290019000900322294604 +:10DF8000E86900F07DF80322291D286A00F078F87E +:10DF9000032205F10801686A00F072F895ED020AA3 +:10DFA000D5ED010A95ED001A21EE011A00EEA01A36 +:10DFB00000EE001A11EE100ADAF742F841EC100BED +:10DFC000D5F7FCF851EC100BDAF762F800EE100A06 +:10DFD000D5ED020A80EE800A10EE100ADAF730F86A +:10DFE00041EC100BFDF79CFE53EC102B4FF0004062 +:10DFF0005C49D4F739FE41EC100BFEF77BFB51EC8A +:10E00000100BD5F75BF9696988422DDBA96981425C +:10E010002ADB032300AA1946E86900F045F8B0EEB0 +:10E02000408A032301AA1946286A00F03DF8F0EE61 +:10E03000408A032302AA1946686A00F035F8D5ED34 +:10E040000A0AB4EE608AF1EE10FA0DD5F4EE608A99 +:10E05000F1EE10FA08D5B4EE600AF1EE10FA03D52D +:10E06000E868401CE86001E02046E860E86829694B +:10E07000884200DB0124204604B0BDEC028B32BD97 +:10E080000388934201D30023038003885B1C038031 +:10E090009BB2934201D300220280028800EB8200EF +:10E0A00009684160012070472DE9F8432DED028B8E +:10E0B00004460D4616461F469FED288A4FF000087D +:10E0C000B4F9009000EE105AF8EEC08A3A4600F01B +:10E0D00027F880EE280A86ED000A05E0A7F101097D +:10E0E0000FFA89F908F101080FFA88F8A84511DA42 +:10E0F00004EB890090ED010AD6ED000A30EE600ACB +:10E1000000EE008AB9F1010FE8DBA9F101090FFA6D +:10E1100089F9E7E788EE280ABDEC028BBDE8F183B8 +:10E1200030B49FED0E0A0023B0F900400EE024B297 +:10E13000250006D400EB8505D5ED010A30EE200A56 +:10E14000641E24B2002C00D5541E5B1C1BB28B42F3 +:10E15000EDDB30BC7047000000401C4600000000B2 +:10E1600008220120DCA54C4053504120696E69749F +:10E170003A2025642C2025642C2025642C2025663B +:10E18000000000000FB480B50FF23420D4F70AF974 +:10E190008348002181700121C1700171002141710A +:10E1A00081710170D4F77DF8007C000601D4012054 +:10E1B00000E0012002BC5DF814FB80B50FF20820DE +:10E1C000D4F7F0F8D4F76DF8007C000616D5744843 +:10E1D000002181700121C1700171002141718171A3 +:10E1E000417801290AD1002141700E220A21012023 +:10E1F000D9F72AFD032801D1032002BD012002BD69 +:10E2000038B568488169497AC069407A4518D4F7B9 +:10E2100048F8007C000631D5614CA078002802D176 +:10E220000120A07032BD6078EDB2002D06D001282B +:10E2300024D10120E070002060701FE0002811D17F +:10E24000E078012806D10E220A210120D9F7FCFC32 +:10E250000020E0700E220A210020D9F7F5FC0120F1 +:10E26000607032BD94F90000002802D0022803D06B +:10E2700004E000F005F801E000F034F8012032BDC0 +:10E2800038B5474CE06890F968502079012809D1E9 +:10E29000512D07DA00202071012000F07EF80020C7 +:10E2A00000F06EF8B4F90820954217DBA079401C05 +:10E2B000A07140B2022813DB022020700020A07160 +:10E2C00029460FF20C10D4F76DF878202081012038 +:10E2D00000F063F8012000F053F801E00020A07185 +:10E2E000012032BD38B52E4CE06890F96850502DB1 +:10E2F00016DA6079401C607140B2022812DB0020FF +:10E300002070012000F049F8002000F039F80020CA +:10E310006071502229460FF2C400D4F743F801E09F +:10E3200000206071012032BD10B50FF2BC00D4F79F +:10E3300039F81B4CD9F786FC2061DCF77FF8E060E8 +:10E340000020207020691849C0F8401200F51070B4 +:10E3500016494160164981600FF20D01C1601549EF +:10E360000161012010BD0000014600200C4A126925 +:10E3700092F83122002A02D0002900D109E070472A +:10E380000D49012802D10120087070470020087053 +:10E3900070470A4890F900007047084908707047B4 +:10E3A000587C00200840002085E10208BBE10208FB +:10E3B00001E202086B7F0008B82E0120B72E012071 +:10E3C000537461727400000053746F700000000099 +:10E3D000436C6F7365202564202564004F70656E63 +:10E3E0002025642025640000496E69740000000047 +:10E3F0009248002141608160C16001614161816199 +:10E40000017001214170704770B52DED068BF0EE63 +:10E41000608AB0EE419A0024884D2878012800F0E7 +:10E4200004816878002852D12E69002E00F0A28065 +:10E43000D5ED010A30EE600A10EE100AD9F700FEA1 +:10E4400021F00041D9F724FE09EE900AB0EE680AE7 +:10E45000D5ED020A30EE600A10EE100AD9F7F0FD91 +:10E4600021F00041D9F714FE0AEE100AB0EE490A75 +:10E47000D5ED030A30EE600A10EE100AD9F7E0FD80 +:10E4800021F00041D9F704FE00EE100ADFED690A21 +:10E49000F4EE609AF1EE10FA16D5B4EE60AAF1EE41 +:10E4A00010FA11D5B4EE600AF1EE10FA0CD5701C1A +:10E4B00028610728C0F2B98020466860A860E8603B +:10E4C000286101206870B0E020462861ADE06869ED +:10E4D000002846D1286900284CD0D5ED010A30EE3D +:10E4E000600A10EE100AD9F7ABFD21F00041D9F710 +:10E4F000CFFD09EE900AB0EE680AD5ED020A30EEC3 +:10E50000600A10EE100AD9F79BFD21F00041D9F7FF +:10E51000BFFD0AEE100AB0EE490AD5ED030A30EE4F +:10E52000600A10EE100AD9F78BFD21F00041D9F7EF +:10E53000AFFD00EE100ADFED400AF4EE609AF1EE56 +:10E5400010FA09DAB4EE60AAF1EE10FA04DAB4EEC9 +:10E55000600AF1EE10FA68DB01206861204628614C +:10E5600063E0012861D12E69322E02DA701C286125 +:10E570005BE00DD185ED010AB0EE680A85ED020A77 +:10E58000B0EE490A85ED030A2869401C28614CE079 +:10E59000AE69322E44DAD5ED010A30EE600A10EE93 +:10E5A000100AD9F74DFD21F00041D9F771FD09EEB0 +:10E5B000900AB0EE680AD5ED020A30EE600A10EE5D +:10E5C000100AD9F73DFD21F00041D9F761FD0AEEAF +:10E5D000100AB0EE490AD5ED030A30EE600A10EEDB +:10E5E000100AD9F72DFD21F00041D9F751FD00EEB9 +:10E5F000100A701CA861DFED100AF4EE609AF1EECB +:10E6000010FA09DAB4EE60AAF1EE10FA04DAB4EE08 +:10E61000600AF1EE10FA08DB01202870044604E0DD +:10E62000204628616861A86168702046BDEC068BB1 +:10E6300070BD00006666A63F6766A63FD02A01202F +:10E64000834800210160416081607047F8B52DED7D +:10E650000C8BB0EE408AF0EE608AB0EE419A002753 +:10E66000B0EE680A10EE100AD9F7EAFC41EC1A0B7A +:10E67000B0EE480A10EE100AD9F7E2FC41EC1C0B90 +:10E68000734E21F000413A46724BD4F7CBFB18D2BF +:10E6900051EC1A0B21F00041D4F7C4FB11D2B0EEBB +:10E6A000490A10EE100AD9F7CBFC21F000413A4696 +:10E6B000684BD4F7B7FB04D2104630607060B0608E +:10E6C000C3E09FED65BB9FED66DB3068D9F7B8FC12 +:10E6D00004460D4653EC1C2B51EC1D0BD4F7C4FA29 +:10E6E00053EC1B2BD4F7C0FA3A465F4BD4F742FCED +:10E6F00022462B46D4F7CAFBD9F7CAFC09EE900A8A +:10E70000C6ED009A7068D9F79BFC04460D4653ECA1 +:10E710001A2B51EC1D0BD4F7A7FA53EC1B2BD4F793 +:10E72000A3FA3A46504BD4F725FC22462B46D4F7A1 +:10E73000ADFBD9F7ADFC0AEE100A86ED01AAB06870 +:10E74000D9F77EFC04460D46B0EE490A10EE100AD9 +:10E75000D9F776FC53EC1D2BD4F786FA53EC1B2B20 +:10E76000D4F782FA3A46404BD4F704FC22462B46B3 +:10E77000D4F78CFBD9F78CFC09EE100A86ED029ACF +:10E7800019EE900AD9F75CFC21F0004141EC1B0B1B +:10E790001AEE100AD9F754FC41EC180B21F0004195 +:10E7A00041EC1C0B19EE100AD9F74AFC41EC1A0B8C +:10E7B00053EC1B2B51EC1C0BD4F768FB53EC1A2BBE +:10E7C00023F00043D4F762FBD9F762FC00EE100A95 +:10E7D000DFED260AB4EE600AF1EE10FA2EDB51EC02 +:10E7E0001A0B21F000410122214BE5F7D7FA25D879 +:10E7F000BBEE090AF4EE409AF1EE10FA0BD551EC9B +:10E80000180B21F0004153EC1A2B23F00043D4F7EE +:10E8100009FB00D201279FED170AF4EE409AF1EEB2 +:10E8200010FA0BDB51EC180B21F0004153EC1A2BC2 +:10E8300023F00043D4F7F6FA00D20227002F03D0CA +:10E84000002030607060B0603846BDEC0C8BF2BDCB +:10E85000442D01200000E03F0000000000004E4079 +:10E86000E6C1631ADCA54C4000408F4001004842DD +:10E87000000044400100C84110B582B000208DF86E +:10E880000000894C04F1100314220D2104F50670D8 +:10E8900000F00CF904F58A7314220D2104F50D70B3 +:10E8A00000F004F9E8F744FB002849D0D3F7F9FC5D +:10E8B000A060E0F72FFBE0F7FFFFA06801780029D8 +:10E8C00003D0217841F0010121700A21D3F753FDD3 +:10E8D000A068D3F72AFDA068C178002903D0217869 +:10E8E00041F0020121704179002903D0217841F0E3 +:10E8F000040121708179002903D0217841F00801B9 +:10E90000217021780F2902D15521817500E0817590 +:10E91000002201210846D3F737FFE1F739FE322103 +:10E92000A068D3F7AAFEA068D3F770FED3F720FF44 +:10E93000D3F724FFDBF782FD0021C0F8801016BD5D +:10E94000002016BD80B5FFF797FF5749486001BD0D +:10E9500080B5072000F0F6F8FBE77FB5D5F77CFD22 +:10E96000002801D0D8F7D6FA3E2000F0F5F8064688 +:10E97000D7F7BAFC4C4C04F51475B00710D5606895 +:10E98000D0F88000D3F777FFD7F704FC04F10C012F +:10E990002846D7F7F9FD04F10C012846D7F75EFEAB +:10E9A000F0060AD50020D3F7F1FE1020E1F73EFC77 +:10E9B00004F10C012846D7F751FEB0060CD504F13E +:10E9C0000C012846D7F708FE0420E1F72FFC04F1DC +:10E9D0000C012846D7F742FE700703D56068C06F68 +:10E9E000E0F74CFE04F10C012846D8F75DFA300739 +:10E9F0001FD4B9E7BDF80100001DDBF7F7FCCDF827 +:10EA0000090002220DF10301D5F770FF02220DF17A +:10EA10000101DDF80900801CD5F768FF04F10C0244 +:10EA2000294600A8D8F7D5FA00A904F50D70E0F73B +:10EA300091FE00A904F5067000F0D0F8002893D1EB +:10EA40009DF8030010F00300D4D00128F1D104F1A7 +:10EA50000C02294600A8D8F7D9FBBDF80100002810 +:10EA6000E7D0DDF809009DF80310490718D5042107 +:10EA7000ADF803100121ADF8011002220DF10301E0 +:10EA8000D5F734FF02220DF10101DDF80900801CE9 +:10EA9000D5F72CFF00A904F50D70E0F75BFEC8E781 +:10EAA000DBF7BCFCC5E7000040A400202DE9F041E5 +:10EAB00004000D0016001F00D5F701FF1F48D0F815 +:10EAC000008006E0A04502D1AC20D5F78BFED8F837 +:10EAD0000480B8F1000FF5D119484078F0210842C0 +:10EAE00002D09920D5F77EFE15484078002801D144 +:10EAF000D5F7DFFED6F7D4FC1C2200212000D3F787 +:10EB0000ADFBA7602661257666206076D5F7D7FE37 +:10EB10000A48006860600948046009484078F021AC +:10EB2000084202D09920D5F75DFE054840780028BC +:10EB300001D1D5F7BEFEBDE8F0810000902E012086 +:10EB4000087C002010B50446D3F7ABFB072C01D19D +:10EB5000D3F791FD012010BD10B504001D480078C9 +:10EB6000002802D0A120D5F73DFED6F7C1FC1A48F7 +:10EB70000078401C18490870D5F7A1FE1648806837 +:10EB80004069204209D11448806884611248806835 +:10EB9000082101741048D5F77CFE0F48806844694D +:10EBA0000D488068002141610B480078401E0A49E9 +:10EBB000087009484078F021084202D09920D5F722 +:10EBC00011FE05484078002801D1D5F772FE2000DB +:10EBD00010BD00BFDB2E0120087C002038B50400EA +:10EBE0000D00607E662802D08220D5F7FBFDD6F7A7 +:10EBF00057FCD5F764FEE06800280FD10E48407836 +:10EC0000F021084202D09920D5F7ECFD0A4840785F +:10EC1000002801D1D5F74DFE01200BE00648007811 +:10EC2000401C0549087029002000E8F7DFF9D6F7F5 +:10EC3000A0FC002032BD00BF087C002038B50C4687 +:10EC4000754D0C2200212846D3F708FB182200211D +:10EC500005F12400D3F702FB1422002105F10C007A +:10EC6000D3F7FCFA0020E8632C840FF2C410D3F72A +:10EC700099FB012032BD000070B5674C84ED000A9D +:10EC8000F0EE601AC4ED011A84ED021A0C25634EF1 +:10EC9000E06B05FB006080EC030A1822002104F100 +:10ECA0002400D3F7DBFA00201AE005FB00F18A19F3 +:10ECB000D2ED000A30EE200A84ED090A891994ED9C +:10ECC0000A0AD1ED010A30EE200A84ED0A0A94ED19 +:10ECD0000B0AD1ED020A30EE200A84ED0B0A401C2B +:10ECE00094ED090A6428E0DBDFED4A0A80EE200A91 +:10ECF00084ED090AD4ED0A0A9FED461AC0EE810A96 +:10ED0000C4ED0A0A94ED0B1ADFED421A81EE211AC6 +:10ED100084ED0B1A002020E005FB00F18A19D2EDEA +:10ED2000001A71EEC01A01EEA12A84ED0C2A89198D +:10ED3000D1ED011A71EEE01A94ED0D2A01EEA12A2F +:10ED400084ED0D2AD1ED021A71EEC11A94ED0E2A4E +:10ED500001EEA12A84ED0E2A401C94ED0C2A6428B1 +:10ED6000DADB9FED2C0A82EE000A84ED0C0AD4ED6A +:10ED70000D0A9FED281AC0EE810AC4ED0D0A94ED2C +:10ED80000E1ADFED241A81EE211A84ED0E1AF7EE29 +:10ED9000001AB4EE610AF1EE10FA2FD5B7EE000AB0 +:10EDA000F4EE400AF1EE10FA28D5B4EE401AF1EE76 +:10EDB00010FA23D56069401C606100EB40114800E7 +:10EDC0004EF65B2188421CD300206061208B411CE1 +:10EDD000218389B20FF26400D3F7E4FA208B218CEF +:10EDE00088420ED3E06900280BD10FF26400D3F7FC +:10EDF000D9FA0120E0610020208302E00020606158 +:10EE00002083E06B401CE063652801DB0020E063A9 +:10EE1000E06970BD0000C842EC260120A8DA00209D +:10EE200080B50FF23C00D3F7BDFA012002BD00000F +:10EE300023232320414D5F494E495400232323209F +:10EE4000414D202564202A20314D696E00000000CC +:10EE500023232320414D5F41425F445400000000C2 +:10EE600023232320414D5F46494E000080B50FF219 +:10EE70009010D3F797FA5D4800214180017001BDE1 +:10EE80000FB438B59DF81240BDF813502A462146FC +:10EE90000FF27810D3F786FA1E2200210846D8F721 +:10EEA000D3FE022805D10FF28410D3F77BFA02209B +:10EEB00010E04E48406890F8B014002909D190F84D +:10EEC000B104002805D1FFF7D1FF29462046FFF7FE +:10EED000B5FE012032BC5DF814FB80B50FF25C106A +:10EEE000D3F760FAFFF79CFF404800210170012032 +:10EEF00002BD30B58BB000A8D8F705FF00A890EC94 +:10EF0000030AFFF7B9FE0446012C0ED1374D95F9DF +:10EF10000000002809D1012028700FF22C10D3F72F +:10EF200041FA6C80012000F02FF801200BB030BDB9 +:10EF300080B50FF22810D3F735FAD8F783FE2B49A6 +:10EF4000486000224A802A49C0F8C01400F2C0403C +:10EF500028494160284981600FF20D01C1600FF21C +:10EF600041010161012002BD2048406890F8B014C1 +:10EF7000002905D190F8B104002801D10020704784 +:10EF80001E4890F9000070471C490870704780B512 +:10EF90001648002141800846FFF7F6FF012002BD18 +:10EFA00070B504460D46114E71880FF2BC00D3F7C0 +:10EFB000F9F940F22110297810FB014101220A7071 +:10EFC000297810FB01414A70297810FB01411E226B +:10EFD0008A70297810FB01407188A0F80310287806 +:10EFE000401C2870BDE87040D1E70000D02D012002 +:10EFF00081EE0208DBEE0208F3EE0208B92E0120D2 +:10F0000023232320434720494E4954002323232010 +:10F0100043472053464420535452203A2025642C21 +:10F02000204455203A202564000000002323234378 +:10F0300047204641494C20414343000023232343BA +:10F04000472053544F5000002323232043475F4160 +:10F05000424E4F524D414C20445400002323232064 +:10F060004347204D490000002323232043472041EC +:10F07000504D5347203A2025640000000FB400B5DE +:10F0800091B00020019000900D220146D8F7DCFDE0 +:10F09000022801D102204AE0754A01201060BDF823 +:10F0A0004B0001909DF84A000090012803D14FF4D5 +:10F0B0008070009015E0022803D14FF4007000909A +:10F0C0000FE0032803D14FF48060009009E004288A +:10F0D00003D14FF40060009003E0052801D1102017 +:10F0E000009000A901A8FDF72BFBAA208DF82E00A7 +:10F0F0003C208DF82F0001208DF8300000208DF885 +:10F100000800032003900DF111000BA91822D3F77A +:10F110008FFC0A208DF810000020ADF82A0002A80C +:10F12000D8F766FE002801D1022000E0012011B0CE +:10F130005DF814FB00B58FB0AA208DF802003C20CA +:10F140008DF8030001208DF804008DF818000320CD +:10F1500007900DF1210000A91822D3F769FC0A20BD +:10F160008DF820000020ADF83A0006A8D8F740FE40 +:10F17000002801D1032002E0FDF7C4FB01200FB0FD +:10F1800000BD30B597B000A8D8F7BDFD0BA8F0F7CB +:10F190007FFB374CBDF83A002071204600A991EC66 +:10F1A000030AFDF7CBFB0546607A85420ED0022D9F +:10F1B00005D1012000F03CF80120207206E0012D6D +:10F1C00004D1012000F034F8022020726572012081 +:10F1D00017B030BD80B5D8F735FD2549C86000228D +:10F1E0000A722449C0F8181200F5067022494160DD +:10F1F000224981600FF20D01C1600FF23D010161F2 +:10F20000012002BD1A48C06890F80902002801D107 +:10F210000020704708E080B51548002101720846BB +:10F2200000F006F8012002BD154890F90000704773 +:10F23000134908707047000018B440F221120B788F +:10F2400012FB030301241C700B7812FB03035C7098 +:10F250000B7812FB03030D249C700B7812FB030048 +:10F26000034A127AC2700878401C087011BCD2E7B9 +:10F27000482C01207DF0020835F1020883F10208D4 +:10F28000CD2E01200FB410B5A0B09DF88A005849CA +:10F29000087001208DF88C00AA208DF88A003C208F +:10F2A0008DF88B0000208DF80000032001900DF1F7 +:10F2B000090022A91822D3F7BBFB0A208DF8080009 +:10F2C00000A8D8F795FD002805D10FF27010D3F7EC +:10F2D00069F8022014E009A8E9F783FB454C58229D +:10F2E00000212046D2F7BAFF0021E16521665822AD +:10F2F00009A9D5F7FBFA0FF25810D3F753F80120FC +:10F3000020B010BC5DF814FB80B50A210320E0F7A3 +:10F3100010FD032801D1032002BD0FF24010D3F7E6 +:10F3200041F8012002BD80B5D8F78CFC31498865D1 +:10F330003149C0F8001100F58070304941600FF28A +:10F340006D0181600FF20D01C1600FF2B501016125 +:10F35000012002BD10B594B02649886D90F8F100E7 +:10F3600000281BD0224C2078002817D001201390B1 +:10F37000129084B068465822D3F76AFB0FBCE1F7BD +:10F380002BFFC0B22178884208DB01460FF2D8007B +:10F39000D3F708F800F005F8012000E0002014B0D1 +:10F3A00010BD1348002101700120704700B597B0CF +:10F3B00000A8E9F716FB0F48C16D491CC16501297A +:10F3C00002D1009901660FE033290DD30021C165F8 +:10F3D000016E009A914207D1582200A9D5F786FA0A +:10F3E0000FF29800D2F7DEFF012017B000BD000039 +:10F3F000D22E0120001C012085F2020809F3020828 +:10F4000010B50C4640F22111227811FB02020123B3 +:10F410001370227811FB02025370227811FB020252 +:10F4200006239370227811FB02000121C170FFF7BF +:10F43000B8FF2078401C207010BD000050443A20D6 +:10F440005065646F4F70656E4661696C2053530060 +:10F4500050443A20534320535441000050443A2032 +:10F4600053432053544F000050443A204469666689 +:10F47000537465704F7665722025640050443A20BD +:10F480005343205245534554000000003C0A560A9D +:10F49000700A8B0AA60AC10ADD0AF80A150B310B9D +:10F4A0004E0B6B0B880BA50BC30BE10B000C1E0C5A +:10F4B0003D0C5D0C7C0C9C0CBD0CDD0CFE0C1F0D82 +:10F4C000410D630D850DA80DCB0DEE0D120E360E00 +:10F4D0005A0E7F0EA40ECA0EEF0E160F3C0F630FCE +:10F4E0008B0FB30FDB0F03102C1056108010AA10D7 +:10F4F000D41000112B1157118311B011DE110B1212 +:10F50000391268129712C712F712271359138A1368 +:10F51000BC13EF13221455148914BE14F3142915C7 +:10F520005F159515CD1504163D167616AF16E9161E +:10F5300024175F179B17D817151852189118CF1852 +:10F540000F194F199019D119131A561A9A1ADE1A4F +:10F55000221B681BAE1BF51B3D1C851CCE1C181DF9 +:10F56000621DAD1DF91D461E941EE21E311F811F36 +:10F57000D11F23207520C8201C217121C7211D22E5 +:10F580007422CD2226238023DA2336249324F124E7 +:10F590004F25AF250F267126D32636279B27002817 +:10F5A0006728CE283629A0290B2A762AE32A512B50 +:10F5B000C02B302CA12C132D862DFB2D712EE82E67 +:10F5C000602FD92F5330CF304C31CA314A32CA3232 +:10F5D0004C33D0335434DA346235EA35743600377C +:10F5E0008D371B38AA383C39CE39623AF83A8F3B0E +:10F5F000273CC13C5D3DFA3D983E383FDA3F7E40B6 +:10F600002341CA4172421C43C84376442545D6452E +:10F6100089463D47F447AC486649224ADF4A9F4B3A +:10F62000614C244DEA4DB14E7B4F46501451E3518D +:10F63000B55289535E5436551156ED56CB57AC58DA +:10F640008F59745A5C5B465C325D215E125F0560C7 +:10F65000FB60F361EE62EB63EB64ED65F266FA6703 +:10F660000469116A206B336C486D5F6E7A6F977016 +:10F67000B871DB7201742A7556768577B778EC79A4 +:10F68000247B5F7C9D7DDF7E248000003D0A580A3C +:10F69000720A8D0AA80AC30ADF0AFB0A170B330B8A +:10F6A000500B6D0B8A0BA70BC50BE30B020C210C47 +:10F6B000400C5F0C7F0C9F0CBF0CE00C010D220D69 +:10F6C000430D650D880DAA0DCD0DF10D140E380EEC +:10F6D0005D0E820EA70ECC0EF20E180F3F0F660FB6 +:10F6E0008D0FB50FDD0F06102F1059108210AD10C1 +:10F6F000D71002112E115A118611B311E1110E12F9 +:10F700003D126B129A12CA12FA122B135C138D134C +:10F71000BF13F213251459148D14C114F6142C15AB +:10F7200062159915D015081640167916B316ED1600 +:10F73000281763179F17DB17181856189418D31833 +:10F74000131953199419D519181A5A1A9E1AE21A2C +:10F75000271B6C1BB31BF91B411C891CD21C1C1DD5 +:10F76000671DB21DFE1D4B1E981EE71E361F861F0D +:10F77000D61F28207A20CD2021217621CC212222BB +:10F780007A22D2222B238523E0233C249924F624B9 +:10F790005525B52515267726D9263C27A1270628E5 +:10F7A0006D28D4283D29A629112A7D2AE92A572B1C +:10F7B000C62B362CA82C1A2D8D2D022E782EEF2E2E +:10F7C000672FE02F5B30D6305331D2315132D232F5 +:10F7D0005433D8335C34E2346A35F2357D36083739 +:10F7E00095372338B3384439D7396B3A003B973BC8 +:10F7F000303CCA3C663D033EA23E423FE43F874068 +:10F800002D41D3417C422643D24380442F45E045DD +:10F8100093464847FE47B64871492D4AEB4AAA4BE2 +:10F820006C4C304DF54DBD4E864F52502051EF512E +:10F83000C15295536B5443551D56FA56D857B95873 +:10F840009C59825A695B535C405D2F5E205F136058 +:10F8500009610162FC62FA63FA64FC650167096888 +:10F860001369206A306B426C586D6F6E8A6FA87096 +:10F87000C871EB7212743B7567769677C878FD791C +:10F88000367B717CB07DF17E36807F810FB480B590 +:10F89000212200210846D8F7D7F9022801D10220F9 +:10F8A0000EE0212201210020D8F7CEF9022801D153 +:10F8B000022005E02120DFF7BFFFFDF749FF01200F +:10F8C00002BC5DF814FB80B5212200210120D8F78D +:10F8D000BBF9022801D1022002BD212201210846E4 +:10F8E000D8F7B2F9022801D1022002BD012002BDE1 +:10F8F000F0B58BB04948846BA069E16845180026D3 +:10F9000000A8D8F700FA0398D8F79AFB444A454B69 +:10F91000D3F730FBD3F7D2FC28800498D8F790FBBC +:10F920003F4A404BD3F726FBD3F7C8FC68800598C5 +:10F93000D8F786FB3A4A3B4BD3F71CFBD3F7BEFC08 +:10F94000A880394F3878002809D1381D03A9D1EC97 +:10F95000031A00A991EC030AFDF728FF0646012EC1 +:10F9600002D10120387006E03878002803D1002049 +:10F97000B880F8803881B888E880F888288138898C +:10F9800068810120A0770BB0F0BD80B5D8F75AF997 +:10F99000264908602649C0F8381500F23850254934 +:10F9A0004160254981600FF21101C1600FF23501FC +:10F9B0000161012002BD00001C48006890F8290583 +:10F9C000002801D10020704705E080B5002000F03C +:10F9D00006F8012002BD194890F900007047174948 +:10F9E0000870704718B440F221120B7812FB030321 +:10F9F00001241C700B7812FB03035C700B7812FB64 +:10FA0000030321249C700B7812FB03000022C270B8 +:10FA10000878401C087011BCD7E70000084000209F +:10FA200089AD84FA0A74313F082D0120682E012027 +:10FA30008DF80208C7F80208F1F80208C92E012063 +:10FA40000FB480B50FF21410D2F7ACFC11220921CB +:10FA50000020D8F7F9F8022805D10FF21410D2F7D8 +:10FA6000A1FC022000E0012002BC5DF814FB80B57F +:10FA70000FF20810D2F796FC112209210120D8F7C5 +:10FA8000E3F8032805D10FF20810D2F78BFC03200E +:10FA900002BD012002BD01207047000010B50FF229 +:10FAA000FC00D2F77FFC274CD8F7CCF82060DAF7BF +:10FAB000C5FC606020682449C0F8B81200F52E70BB +:10FAC00022494160224981600FF21101C1600FF2A9 +:10FAD0003D010161012010BD0000000019480068CF +:10FAE00090F8A902002801D10020704705E080B5F8 +:10FAF000002000F006F8012002BD174890F9000030 +:10FB000070471549087070470000000018B440F2B3 +:10FB100021120B7812FB030301241C700B7812FBDB +:10FB200003035C700B7812FB030311249C700B78A9 +:10FB300012FB0300074A1278C2700878401C087054 +:10FB400011BCD4E7D82D012041FA02086FFA02084F +:10FB500097FA0208BB2E0120BA2E0120537461725D +:10FB60007420436865636B4C696768744C757800F2 +:10FB70005374617274204661696C00004368656368 +:10FB80006B4C696768744C75782053746F70000013 +:10FB900053746F70204661696C00000043686563B0 +:10FBA0006B4C696768744C757820496E6974000005 +:10FBB0000FB480B5182208210020D8F745F8022894 +:10FBC00001D102200CE03C48002101709DF8091091 +:10FBD00041609DF80A1081609DF80B10C160012002 +:10FBE00002BC5DF814FB80B5334800210170182277 +:10FBF00008210120D8F728F8032801D1032002BDED +:10FC0000012002BD10B52C4C2078012801D1002024 +:10FC100010BD642061684143E268012A0FD10129C7 +:10FC20001CDAA1684843002818D4012000F041F8EC +:10FC3000012020700FF2D000D2F7B4FB0EE00129B2 +:10FC400003DAA1684843002808D5012000F031F804 +:10FC5000012020700FF2B800D2F7A4FB012010BDE4 +:10FC600080B5D7F7EFFF154908601549C0F8D013E4 +:10FC700000F5747013494160134981600FF20D0162 +:10FC8000C1600FF24D010161012002BD0B48006807 +:10FC900090F8C103002801D10020704705E080B52D +:10FCA000002000F006F8012002BD084890F900008D +:10FCB0007047064908707047682C0120702E01209B +:10FCC000B1FB0208E7FB020805FC0208D32E012065 +:10FCD00018B440F221120B7812FB030301241C70AC +:10FCE0000B7812FB03035C700B7812FB03031824E0 +:10FCF0009C700B7812FB03000122C2700878401C34 +:10FD0000087011BCCBE7000054656D7020496E008F +:10FD100054656D70204F7574000000000FB480B5FD +:10FD20000FF21810D2F73EFB0F2201210020D7F767 +:10FD30008BFF022805D10FF21410D2F733FB0220FB +:10FD400000E0012002BC5DF814FB80B50FF2081042 +:10FD5000D2F728FB0F2201210846D7F775FF0328A9 +:10FD600005D10FF20410D2F71DFB032002BD0120C4 +:10FD700002BD80B5012000F035F8002000F02BF81E +:10FD8000012002BD80B50FF2EC00D2F70BFBD7F7D4 +:10FD900059FF244908602449C0F8681200F51A7018 +:10FDA00022494160224981600FF20D01C1600FF2CA +:10FDB0003D010161012002BD1A48006890F8590216 +:10FDC000002801D10020704708E080B5002000F035 +:10FDD00009F8012002BD174908707047164890F9CC +:10FDE00000007047144908707047000018B440F2D2 +:10FDF00021120B7812FB030301241C700B7812FBF9 +:10FE000003035C700B7812FB03030F249C700B78C8 +:10FE100012FB0300074A1278C2700878401C087071 +:10FE200011BCD2E7582E01201DFD02084BFD02082F +:10FE300073FD0208C12E0120C02E0120537461728F +:10FE400074204779726F2054656D7000537461722D +:10FE500074204661696C00004779726F2054656DAB +:10FE6000702053746F70000053746F702046616986 +:10FE70006C0000004779726F2054656D7020496EE8 +:10FE80006974000052480021017041608160704730 +:10FE900070B5044600254E4E307800282CD12068DD +:10FEA000D8F7CEF821F000412A464A4BD2F7BAFFE4 +:10FEB00019D26068D8F7C4F821F000412A46454BB2 +:10FEC000D2F7B0FF0FD2A068D8F7BAF821F00041FE +:10FED0000122414BE3F762FF05D87068401C706057 +:10FEE0002846B06004E0B068401CB06028467060EE +:10FEF0007068052862DB28E0032837D12068D8F72E +:10FF00009FF821F000412A46324BD2F78BFF17D2DF +:10FF10006068D8F795F821F000412A462D4BD2F7BA +:10FF200081FF0DD2A068D8F78BF821F000410122A3 +:10FF3000294BE3F733FF03D87068401C706001E081 +:10FF4000284670607068052840DB94ED020AB5EE23 +:10FF5000400AF1EE10FA03DD01252846307002E078 +:10FF6000022528463070002070602FE0012801D063 +:10FF700002282BD12068D8F763F821F00041012234 +:10FF8000144BE3F70BFF13D96068D8F759F821F049 +:10FF9000004101220F4BE3F701FF09D9A068D8F710 +:10FFA0004FF821F000412A460B4BD2F73BFF03D21A +:10FFB000B068401CB06001E01046B060B068052831 +:10FFC00004DB0325284630700020B060284670BD51 +:10FFD000502D01200000F83F000021400FB480B5F3 +:10FFE000192200210846D7F72FFE022801D102204E +:10FFF0000DE0BDF80E309DF90D209DF90C10BDF8F7 +:020000023000CC +:100000000A00FDF76BFF3F4800214170012002BC50 +:100010005DF814FB80B5192200210120D7F714FEEA +:10002000032801D1032002BD012002BD38B5002400 +:10003000344D95F90100002803D16868FDF78EFF63 +:10004000044664B2002C07D0012000F039F82046A5 +:1000500000F039F801206870012032BD10B5294C3C +:10006000D7F7F0FDA060DAF7E9F9606000202070B2 +:10007000A0682549C0F8F81300F57E702349416057 +:10008000234981600FF20D01C1600FF2410101614E +:10009000012010BD1B48806890F8E903002801D1B9 +:1000A0000020704708E080B516480021017008461E +:1000B00000F006F8012002BD164890F900007047D4 +:1000C0001449087070470F490870704718B440F21F +:1000D00021120B7812FB030301241C700B7812FB16 +:1000E00003035C700B7812FB030319249C700B78DC +:1000F00012FB0300034A1278C2700878401C087093 +:1001000011BCD0E7202D0120DDFF020815000308F7 +:100110002D000308D02E01202DE9F84F04000D001A +:1001200016001F00DDF82880DDF82C90DDF830A0E7 +:1001300039480078002802D1A520D4F753FBD5F721 +:10014000D7F93648D0F80CB006E0A34502D1AA2072 +:10015000D4F748FBDBF800B0BBF1000FF5D150221B +:1001600000212000D2F77AF8642084F84C006674ED +:10017000207C2B4909780843207484F841A0002D85 +:1001800000D02562C4F82880C4F824904A46CD21C6 +:100190004046D2F763F819EB08085FEAD8085FEA2F +:1001A000C808B8F150080020C8F800005FF080705F +:1001B000C8F844001B48C8F84000C8F84C707FF0ED +:1001C0000200C8F824001848C8F82C001748C8F8DE +:1001D00030001748C8F834001648C8F8040016481C +:1001E000C8F808001548C8F80C001548C8F81000F1 +:1001F0001448C8F814001448C8F818001348C8F880 +:100200001C001348C8F82000C4F804802000D5F76B +:100210004BFABDE8F18F00BFDC2E0120087C0020E6 +:10022000D72E0120634800080100CCCC0200CCCCC2 +:100230000300CCCC0400CCCC0500CCCC0600CCCC4C +:100240000700CCCC0800CCCC0900CCCC0A00CCCC2C +:100250000B00CCCC4B48002101704160816070479D +:1002600070B506460024474D287800282BD1306809 +:10027000D7F7E6FE21F000412246434BD2F7D2FDEC +:1002800018D27068D7F7DCFE21F0004122463E4BC1 +:10029000D2F7C8FD0ED296ED020ADFED390AB4EEB0 +:1002A000600AF1EE10FA05DB6868401C68601046D1 +:1002B000A86004E0A868401CA860104668606868F0 +:1002C000052853DB27E002282BD13068D7F7B8FE8A +:1002D00021F0004122462C4BD2F7A4FD16D27068C3 +:1002E000D7F7AEFE21F000412246274BD2F79AFD08 +:1002F0000CD296ED020ADFED220AB4EE600AF1EEAE +:1003000010FA03DB6868401C686001E01046686012 +:100310006868052832DB0124204628701046686092 +:100320002CE001282AD13068D7F78AFE21F000415D +:100330000122154BE3F732FD12D97068D7F780FE22 +:1003400021F000410122104BE3F728FD08D996ED7A +:10035000020AF2EE020AB4EE600AF1EE10FA03D5D8 +:10036000A868401CA86001E02046A860A86805288D +:1003700004DB0224204628700020A860204670BDBF +:1003800001001041842C01200000E03F0FB480B533 +:10039000102201210020D7F757FC022801D10220AA +:1003A00002E0FEF74DF9012002BC5DF814FB80B5B8 +:1003B000102201210846D7F747FC032801D103206A +:1003C00002BD012002BD30B58BB000A8D7F79BFC61 +:1003D00003A890EC030AFEF739F90446324D287859 +:1003E000A0420FD0012C05D1012000F03DF80120E2 +:1003F000687006E0022C04D1012000F035F80220DC +:1004000068702C7001200BB030BD80B5D7F71AFC96 +:100410002549486000224A702449C0F8901200F52E +:10042000247023494160234981600FF21101C160AA +:100430000FF23D010161012002BD00001A48406831 +:1004400090F88102002801D10020704708E080B5B3 +:10045000154800214170084600F006F8012002BD51 +:10046000154890F900007047134908707047000064 +:1004700018B440F221120B7812FB030301241C7004 +:100480000B7812FB03035C700B7812FB0303102440 +:100490009C700B7812FB0300034A5278C2700878F4 +:1004A000401C087011BCD2E7082E01208D03030800 +:1004B000AF030308C7030308CA2E01200FB480B599 +:1004C000202200210846D7F7BFFB022801D10220D5 +:1004D00005E0FDF78DFF304800210170012002BCCE +:1004E0005DF814FB80B5202200210120D7F7ACFB7A +:1004F000022801D1022002BD2748002101700120FD +:1005000002BD70B58CB02548446BA069E168451800 +:1005100000A8D7F7F8FB204E3078012801D1002041 +:100520000BE000A890EC030AFDF76EFF012803D151 +:1005300028700120A077307001200CB070BD80B50C +:10054000D7F780FB164908601649C0F8101500F26D +:10055000105015494160154981600FF21101C160C9 +:100560000FF251010161012002BD00000C4800683A +:1005700090F80105002801D10020704705E080B502 +:10058000002000F006F8012002BD094890F90000A3 +:100590007047074908707047C42E012008400020AA +:1005A0005C2E0120BD040308E504030803050308CD +:1005B000C32E012018B440F221120B7812FB030362 +:1005C00001241C700B7812FB03035C700B7812FB88 +:1005D000030320249C700B7812FB03000022C270DE +:1005E0000878401C087011BCC9E700000FB480B542 +:1005F000072200210846D7F727FB022801D1022055 +:1006000004E09DF80800FBF73FFD012002BC5DF807 +:1006100014FB80B5072200210120D7F715FB032822 +:1006200001D1032002BD012002BD10B582B000201F +:100630008DF80000314C00A96068FBF741FD0028EF +:1006400006D0012000F03BF89DF80000207060709B +:10065000012016BD10B5294CD7F7F4FAA060D9F7E0 +:10066000EDFE606000202070A0682549C0F82811C8 +:1006700000F5947023494160234981600FF20D0118 +:10068000C1600FF241010161012010BD014600204F +:100690001A4A926892F81921002A02D0002900D142 +:1006A00009E0704780B5154800210170084600F048 +:1006B00006F8012002BD154890F900007047134963 +:1006C0000870704718B440F221120B7812FB030334 +:1006D00001241C700B7812FB03035C700B7812FB77 +:1006E000030307249C700B7812FB0300034A127863 +:1006F000C2700878401C087011BCD3E7D82C0120C8 +:10070000ED050308130603082B060308B62E012087 +:100710000FB480B5152200210846D7F795FA0228B4 +:1007200001D1022002E0FFF795FD012002BC5DF837 +:1007300014FB80B5152200210120D7F785FA032884 +:1007400001D1032002BD012002BD10B5314840682F +:10075000FFF786FD044664B2002C05D0012000F0AE +:1007600037F8204600F037F8012010BD10B5294CAD +:10077000D7F768FAA060D9F761FE606000202070AA +:10078000A0682549C0F8581300F556702349416008 +:10079000234981600FF20D01C1600FF24101016137 +:1007A000012010BD1B48806890F84903002801D142 +:1007B0000020704708E080B5164800210170084607 +:1007C00000F006F8012002BD164890F900007047BD +:1007D0001449087070470F490870704718B440F208 +:1007E00021120B7812FB030301241C700B7812FBFF +:1007F00003035C700B7812FB030315249C700B78C9 +:1008000012FB0300034A1278C2700878401C08707B +:1008100011BCD0E7F02C01201107030833070308AF +:100820004B070308BE2E01200FB480B529220121F9 +:100830000020D7F709FA022801D1022002E0FDF7D3 +:1008400087F9012002BC5DF814FB80B52922012143 +:100850000846D7F7F9F9032801D1032002BD01208A +:1008600002BD00B58BB000A8D7F74DFA03A890ECF5 +:10087000030AFDF783F9012807D12B4801210170F4 +:10088000084600F031F8FDF763F901200BB000BD18 +:1008900080B5D7F7D7F9254908602549C0F87816FB +:1008A00000F2786023494160234981600FF20D0115 +:1008B000C1600FF23D010161012002BD1B480068CB +:1008C00090F86906002801D10020704708E080B543 +:1008D000154800210170084600F006F8012002BD0D +:1008E000164890F9000070471449087070470000DE +:1008F00018B440F221120B7812FB030301241C7080 +:100900000B7812FB03035C700B7812FB03032924A2 +:100910009C700B7812FB0300034A1278C2700878AF +:10092000401C087011BCD2E7CC2E01206C2E012097 +:10093000290803084B08030863080308CB2E01208D +:100940000FB480B5172200210846D7F77DF9022899 +:1009500001D1022002E0FFF795FA012002BC5DF808 +:1009600014FB80B5172200210120D7F76DF9032869 +:1009700001D1032002BD012002BD10B531484068FD +:10098000FFF786FA044664B2002C05D0012000F07F +:1009900037F8204600F037F8012010BD10B5294C7B +:1009A000D7F750F9A060D9F749FD606000202070AA +:1009B000A0682549C0F8A81300F56A702349416072 +:1009C000234981600FF20D01C1600FF24101016105 +:1009D000012010BD1B48806890F89903002801D1C0 +:1009E0000020704708E080B51648002101700846D5 +:1009F00000F006F8012002BD164890F9000070478B +:100A00001449087070470F490870704718B440F2D5 +:100A100021120B7812FB030301241C700B7812FBCC +:100A200003035C700B7812FB030317249C700B7894 +:100A300012FB0300034A1278C2700878401C087049 +:100A400011BCD0E7142D01204109030863090308F4 +:100A50007B090308CF2E0120816807E00268116836 +:100A6000536889185B18C36008320260C2689142FB +:100A7000F4D04A1C8260087870472DE9FF4D00F1E0 +:100A80000801009100270168009A490802EBC101A2 +:100A90000191B8460021029103910168490800EBD9 +:100AA000C101406800F0010501F10804400804EBB1 +:100AB000C00631E000A8FFF7CFFF4FFA80FA0AE046 +:100AC0000098016808180099029049680818039076 +:100AD000009808300090029803998842F0D0401C9A +:100AE000029010F801BD47450CD1B44208BFEAF7A7 +:100AF0009DF9276805B14F44606800EB070808348A +:100B00004745F2D007F801BBBAF1000F0AD51AF138 +:100B1000010AE8D14745CDD1B442CBD1304604B02B +:100B2000BDE8F08DBAF1010AD5D5F3E710B584B070 +:100B3000D4F711FED9F7BEFBFDF704FF1B4C0220D2 +:100B400002904FF4806001900094194B64220FF2E0 +:100B5000700104F5B0505030FFF7DEFA0220029029 +:100B60004FF48050019004F580600090114B4B22AF +:100B70000FF2580104F5B050FFF7CEFA02200290B0 +:100B80004FF40070019004F5A05000900A4B0A2227 +:100B90000FF2440104F5B550FFF7BEFA07480121F2 +:100BA0000170D3F764FE002004B010BDE87C002083 +:100BB0006FA902085BE9020851E90208D62E01205C +:100BC000534820436F6D5461736B00005348204DB0 +:100BD00061696E5461736B00506F7765724D616E21 +:100BE00061676572205461736B00000078787878D3 +:100BF00030303031303031303131313131313131EB +:100C00003131313130307831787878780000000037 +:100C10007878787831303131787878787878787871 +:100C20007878787878787878787878787878787844 +:100C30000000000031313131313031787878787806 +:100C40007878787878787878787878787878787824 +:100C50007878787800000000303130303031313130 +:100C60003178787878303030000000003131313020 +:100C70003178787878787878787878300000000063 +:100C80003131313131787878787878787878787847 +:100C90000000000043F63001C4F202014FF09F0251 +:100CA0000A6040F20000C4F202004FF6FF73CAF679 +:100CB000FF3303604FF6BF63CFF6FF7300F580602C +:100CC00003604FF6FF73CFF6FF7300F5806003609B +:100CD00000F58060036000F58060036040F20F0360 +:100CE000C0F2000341F60040C4F2020003604FF07E +:100CF00000020A6001488047014800475D3F010843 +:100D00008D0E030810B5074979441831064C7C4410 +:100D1000163404E00A68081D511888470146A142AC +:100D2000F8D110BD74000000B80000000BB200083C +:100D300035B2000877B3000829B4000800000000AD +:100D40007DB40008000000001FB90008000000008A +:100D50000BB2000897B7000839B80008000000007F +:100D60000000000000000000000000000000000083 +:100D700000000000BDB90008E9B90008EBBA00089E +:100D800079BB000800000000CDBB00080000000097 +:100D900001C500082BC500080F1DFDFFF8B10000BC +:100DA000E87C002000000000D3FCFFFF02000000F0 +:100DB00002000000F40200000200000000400020D9 +:100DC00004000000B7FCFFFF02000000020000006A +:100DD000DA020000CE02000008400020E03C0000E3 +:100DE0005B494E564E5D616363655F736869667407 +:100DF000282564293A2025642025642025640000E4 +:100E00004EF68851CEF20001086840F47000086088 +:100E10004FF00070E1EE100A704700000120C0465C +:100E2000002801D0FFF76EFF0020C046C046FFF744 +:100E30007DFE00F000F800F001B8000007463846DB +:100E4000F2F74EF9FBE700000A5B494E564E5D4152 +:100E50004343454C5F4D474D5432203A20256400B2 +:100E600041434320446174612053616D650000007B +:100E700041522D25642C25642C25642C256400000A +:100E800047797243616C3D2564000000C046C0464E +:100E9000FFF7B6FFFFF7C2FF4148532D4532000070 +:100EA0004148532D453300004148532D453400003F +:100EB0004148532D453100005354302D320000007D +:100EC00041522D534C50000041522D5354420000CA +:100ED00041432D52463100004149532D534C50009F +:100EE00047522D534C50000047522D53544200009E +:100EF00047522D52463100004748532D45320000DD +:100F00004748532D453300004748532D45340000D2 +:100F10004748532D453500004748532D45360000BE +:100F20004748532D453700004748532D45380000AA +:100F3000FF7FFF7FFF7F000000000000F9F7CEBCBD +:100F4000F9F7D6BCF9F7DEBCF9F7E6BCF9F7EEBC69 +:100F5000F9F7F6BCF9F7FEBCD3F756BCD9F789B957 +:100F6000FFF7FEBFFFF7FEBFFFF7FEBFF9F7C5BFF4 +:100F7000FFF7FEBFFAF76FB8F9F718BEF9F7DEBE54 +:100F8000F9F722BFFFF7FEBFFFF7FEBFFFF7FEBF77 +:100F9000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF85 +:100FA000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF75 +:100FB000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF65 +:100FC000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF55 +:100FD000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF45 +:100FE000FFF7FEBFFFF7FEBFFFF7FEBFF9F7BEBC7E +:100FF000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF25 +:10100000F9F731BFF9F7D9BFFFF7FEBFFFF7FEBF12 +:10101000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF04 +:10102000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF4 +:10103000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFE4 +:10104000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD4 +:10105000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC4 +:10106000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB4 +:10107000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA4 +:10108000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF94 +:10109000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF84 +:1010A000FFF7FEBFFFF7FEBFFC009000077840008F +:1010B0002078400020810081008100810081008132 +:1010C0000081008100810081008100810081008118 +:1010D000008100810081008100FA0007744900202E +:1010E000744900208100810081008100810081001D +:1010F00081008100810081008100810081008100E8 +:1011000081008100810081008100810081008100D7 +:1011100081008100810081008100810081008100C7 +:1011200081008100810081008100810081008100B7 +:1011300081008100810081008100810081008100A7 +:101140008100810081008100810081008100810097 +:101150008100810081008100810081008100810087 +:101160008100810081008100810081008100810077 +:101170008100810081008100810081008100810067 +:101180008100810081008100810081008100810057 +:10119000B5000010DA00F8FFE0000001FB000301D9 +:1011A000009919EA000003F50005F5030000F503B6 +:1011B000FC00050100EC07FFFFE0000002DD00007D +:1011C00002DD000002DD000002FD0009E02A00004F +:1011D000C0550000E02AFC000701006771FFFF1AFC +:1011E0003ADE000003DD000003DD000003FD000522 +:1011F000BA9E0000BA9EFC00030100753DDE0000AF +:1012000002DD000002DD000002DD000002DD000062 +:101210000AFD000007FD000007FD000005FC0000BE +:10122000028100810081008100B300104000008035 +:101230003FFFCAA3BFF986F43EFBB54A3DFB000061 +:1012400002E6000001FD000002ED000047F1000091 +:1012500001FD000010E9000001FD0000C8FD0000D4 +:10126000048100D800102D431CEBE2361A3F2D43B9 +:101270001CEBE2361A3F14ED000001FD000001A551 +:1012800000FD66043FCDCC4C3FE4000001FD0000B2 +:1012900001FD000001E9000001FD000002E5000081 +:1012A00001FD000001AD00071006F03C6409802438 +:1012B000FA0020010001020304595A5B5C5D63647B +:1012C00065676869001005A05C440477044F7F0BD4 +:1012D000903C0014EF000001F90004EC0B0308043B +:1012E000FD0004100C030804FD0004340C03080482 +:1012F000FD0004580C030802FD00046C0C030802F6 +:10130000FD0004800C030802D8000040E100000545 +:10131000F300010101FD000078EE000003EC000A7B +:1013200001020304060708090024F4FB000B010274 +:1013300003040102030406070809FC000001FD0084 +:101340000001FD000001FD000C010203046364655F +:10135000676869000001FD000B01020500100261D1 +:101360000000540040FA000001FB0000FFFD0007F0 +:0813700001040101ACB3D60039 +:00000001FF diff --git a/firmware/ssp_stm_tasman.fw.ihex b/firmware/ssp_stm_tasman.fw.ihex new file mode 100755 index 000000000000..ece3d8f3d2fc --- /dev/null +++ b/firmware/ssp_stm_tasman.fw.ihex @@ -0,0 +1,21766 @@ +:1000000000200020951D030881BB020895BB020853 +:10001000A9BB0208BDBB0208D1BB0208000000005A +:10002000000000000000000000000000E5BB020826 +:10003000F9BB020800000000114800088FA2000868 +:10004000BD200308C1200308C52003089FC1020882 +:10005000C9200308FBC2020851BE0208E1BF020822 +:100060006DC00208CD200308D1200308D520030865 +:10007000D9200308DD200308E1200308E520030858 +:10008000E9200308ED200308F1200308F520030808 +:10009000F9200308FD2003080121030805210308B6 +:1000A000092103080D210308112103081521030864 +:1000B000192103081D210308212103082521030814 +:1000C000292103082D2103083121030811BC02084E +:1000D00035210308392103083D2103084121030884 +:1000E0000BC102085FC20208452103084921030829 +:1000F0004D21030851210308552103085921030804 +:100100005D210308612103086521030869210308B3 +:100110006D21030871210308752103087921030863 +:100120007D21030881210308852103088921030813 +:100130008D210308912103089521030899210308C3 +:100140009D210308A1210308A5210308A921030873 +:10015000AD210308B1210308B5210308B921030823 +:10016000BD210308C1210308C5210308C9210308D3 +:10017000CD210308D1210308D5210308D921030883 +:10018000DD210308E121030838B5DFF8CC4C00205D +:10019000E06120626062A062E062A081DFF8BC0CD6 +:1001A000E063DFF8BC0C206460643220E0824FF42E +:1001B00096702083DFF8AC5C4FF42072002105F1CB +:1001C000400002F04BF84FF42072002105F530702A +:1001D00002F044F89022002105F5B86002F03EF8E4 +:1001E00040220021284602F039F840220021DFF8A1 +:1001F0003C0D02F033F840220021DFF8340D02F00C +:100200002DF840220021DFF82C0D02F027F84022C3 +:10021000002105F5A86002F021F84022002105F533 +:10022000B06002F01BF840220021DFF80C0D02F054 +:1002300015F840220021DFF8040D02F00FF8052226 +:100240000021204602F00AF805220021DFF8F00C18 +:1002500002F004F805220021DFF8D40D01F0FEFFC2 +:100260000020A0822063A0632061A0606063E0643E +:100270000220A07331BD80B50FF2100002F092F899 +:10028000DFF8D40B0021017301BD00004C54205352 +:10029000746F70007047DFF8C01B4FF47A725043E0 +:1002A000C86301460FF2040002F07CB84C5420539E +:1002B0005044202564000000DFF89C2B4FF47A7135 +:1002C00048431064014651640FF2040002F06AB81A +:1002D0004C5420575044202564000000DFF8781B60 +:1002E000C88201460FF2040002F05CB84C5420535F +:1002F0005220256400000000DFF85C1B08830146E3 +:100300000FF2040002F04EB84C5420534152202505 +:10031000640000000EB410B587B0DFF8184DBDF8CA +:100320006E0000281ED1DFF8100DD0E90023CDE9C2 +:100330000223D4E90001CDE90001DDE9022300F048 +:1003400088FFDFF8141BC96B4FF47A724243914265 +:1003500006D201460FF2280002F024F801200AE03C +:10036000002008E004A802F0BAFA204604A90522F9 +:1003700002F05EFB002007B010BC5DF810FB00002F +:100380004C542053544F5020436865636B696E672B +:1003900020256400DFF8C00A01210162C16100214B +:1003A0008162C1627047DFF8B00A01214162C16118 +:1003B0007047DFF8A40AC0697047DFF89C0A002183 +:1003C000C1610FF2080001F0EDBF00004C54205253 +:1003D000455345545F434D4452440000DFF8780ACA +:1003E000002101620FF2040001F0DCBF4C542052E6 +:1003F000455345545F504F5352455100DFF8580A5A +:10040000002141620FF2040001F0CCBF4C54205295 +:10041000455345545F504F4941434B00DFF8380A7C +:10042000012181620021C16201727047DFF8280A50 +:100430000121C16270472DE9FC4106460F469046F6 +:10044000DFF8E84ADFF81C5A20462946402202F02D +:10045000FFFA85ED000B85ED021B85ED042B85F879 +:10046000296085F82A7085F82B80D4E904230020C0 +:10047000014602F029FB0ED1D4E9002302F024FB4F +:1004800009D1D4E9022302F01FFB04D120462946FA +:10049000402202F0DDFA95ED020B8DED000BD5E95F +:1004A00000230FF20C0001F07DFFBDE8F381000096 +:1004B0004C54205550504F5320256620256600008F +:1004C00030B583B0DFF89049A06A012815D1DFF874 +:1004D000605A2846DFF88C19402202F0B9FA95EDEF +:1004E000020B8DED000BD5E900230FF2140001F093 +:1004F00059FF0020A06201203EBD00203EBD00004B +:100500004C54203173742025662C20256600000091 +:1005100030B583B0DFF84049A06A012815D1DFF873 +:10052000145A2846DFF83C19402202F091FA95ED62 +:10053000020B8DED000BD5E900230FF2140001F042 +:1005400031FF0020A06201203EBD0020A0623EBD20 +:100550004C5420326E642025662C20256600000055 +:100560000020DFF8F418CA6A012A01D1C86201200C +:1005700070470FB400B59DB0DDE92E2302F0B4FA48 +:10058000CDE90C01DDE92001DDE9302302F0ACFA10 +:10059000CDE90E010CA984B06846402202F058FA59 +:1005A0000FBC00F05DFD53EC102B0020DFF81C1E8B +:1005B00002F05AFB41EC100B1DB05DF814FB00007B +:1005C0000FB470B52DED048B9CB0DFF88C58687AB1 +:1005D000002801D1002043E00A2801DB0A2600E0C0 +:1005E000AE7A9FED998B002422E0DFF8781801EBBA +:1005F000801000F530710CA8402202F029FA24A9DD +:1006000084B06846402202F023FA0FBCFFF7B1FF26 +:10061000B0EE409AF0EE609A51EC190B53EC182BA7 +:1006200002F000FC03D2B0EE498AF0EE698A641C45 +:10063000E4B22046B042D8DB288B02F019FC024617 +:100640000B4651EC180B02F0EDFB01D2002007E045 +:1006500053EC182B0FF2140001F0A4FE0120E86403 +:100660001CB0BDEC048B70BC5DF814FB4C542053E3 +:1006700041204F55542025660000000030B585B05C +:10068000DFF8E04794F969058DF8000004F269503D +:1006900090F901108DF8011090F902008DF8020018 +:1006A000B4F86C05ADF80300DFF88C59D5E900010A +:1006B000CDE90201DDE90223DDE9000100F0C9FD19 +:1006C000C4F87805DFF89007D5E90023C0E90023D6 +:1006D00005B030BD0FB42DE9F0412DED088B84B08D +:1006E000DFF87447DFF87C57A07A05EB80109DEDAA +:1006F000120B80EDA00B00F520709DED140B80ED2A +:10070000020B9DED160B80ED040B2099816394F88C +:100710000980B8F10A0F01DB4FF00A089FEDBF8B8B +:10072000B0EE489AF0EE689AB0EE48AAF0EE68AAE9 +:1007300000261DE005EB861753EC182BD7E9B00116 +:1007400002F0A4FB41EC180B07F5307753EC192BA2 +:10075000D7E9020102F09AFB41EC190B51EC1A0B9C +:10076000D7E9042302F092FB41EC1A0B761CF6B297 +:100770004645DFDB404602F07BFB41EC1B0B51ECB6 +:10078000180B53EC1B2B02F0F5FB05F5A862C2E930 +:10079000000105F2405651EC190B53EC1B2B02F0F3 +:1007A000E9FBC6E9020151EC1A0B53EC1B2B02F0DA +:1007B000E1FBC6E9040195F969058DF8000005F231 +:1007C000695797F901008DF8010097F902008DF83B +:1007D0000200B5F86C05ADF80300DFF85C88D8E9D5 +:1007E0000001CDE90201DDE90223DDE9000100F0AD +:1007F00030FD0246C5F87825D8E90001C4E90001BA +:100800000192B87800907B7895F86925617A0FF2AB +:10081000142001F0C7FD96ED020B8DED000B05F5E0 +:10082000A860D0E900230FF2606001F0BBFD032057 +:10083000A0730FF2044001F0B5FD04B0BDEC088BCD +:10084000BDE8F0015DF814FB00000000006AF8400C +:100850000FB42DE9F0472DED088B86B0DFF8D047B7 +:10086000DFF8D4A7DAE90001CDE90401D4E90001F9 +:10087000CDE90201DDE9042300F0EBFCDFF8D855F7 +:10088000A97ADFF8E06506EB81129DED160B82ED8B +:10089000B00B02F530739DED188B83ED028B9DED4F +:1008A0001A9B83ED049B237882F8E93202F2E92354 +:1008B00067785F70A7789F7000B2C2F8F802481C92 +:1008C000A872C0B20A2801D10020A872687A00F18B +:1008D000010885F809805FFA88F8A8F1010002F0A4 +:1008E000BDFA41EC1A0B06F2405953EC1A2BD9E928 +:1008F000020102F0B9F953EC182B02F0C7FA41ECEF +:10090000180B53EC1A2BD9E9040102F0ADF953ECA2 +:10091000192B02F0BBFA41EC190B404602F0A8FA81 +:1009200041EC1B0B53EC1A2B06F5A86041680068DC +:1009300002F09AF9DDE9162302F0A8FA53EC1B2B1A +:1009400002F018FB06F5A862C2E9000151EC180B91 +:1009500053EC1B2B02F00EFBC9E9020151EC190B01 +:1009600053EC1B2B02F006FBC9E9040106F26957A0 +:10097000B8F1010F0AD1207886F86905607878709F +:10098000A078B870B4F80300A6F86C0596F969056C +:100990008DF8000097F901008DF8010097F9020029 +:1009A0008DF80200B6F86C05ADF80300DAE9000135 +:1009B000CDE90201DDE90223DDE9000100F049FC97 +:1009C0000246C6F87825DAE90001C5E9000101927E +:1009D000B87800907B7896F86925697A0FF2440020 +:1009E00001F0E0FC99ED020B8DED000B06F5A8601F +:1009F000D0E900230FF2904001F0D4FC687A01287E +:100A000005D10120A8730FF28C4001F0CBFC06B099 +:100A1000BDEC088BBDE8F0075DF814FB000000009A +:100A2000000000004C542025642053502025643AD7 +:100A300025643A25642C2025640000000FB42DE9BC +:100A4000F0472DED0A8B86B0DFF8ECA5DAE900015E +:100A5000CDE90401DFF8E804D0E90023CDE9022361 +:100A6000DDE90423DDE9020100F0F3FB8046DFF855 +:100A7000E843A07A461E36B2002E01D50A3636B2B9 +:100A8000607A02F0F5F941EC180BF64D05EB86168D +:100A900053EC182B05F5A8604168006802F0E4F8F3 +:100AA000D6E9B02302F020F841EC190B06F53077B7 +:100AB00005F2405953EC182BD9E9020102F0D4F8A1 +:100AC000D7E9022302F010F841EC1A0B53EC182B73 +:100AD000D9E9040102F0C8F8D7E9042302F004F8C8 +:100AE00041EC1B0B9FEDE0CBD6E9B023DDE918010B +:100AF00002F0CCF953EC1C2B02F0B6F8C6E9B001B9 +:100B0000D7E90223DDE91A0102F0C0F953EC1C2BEE +:100B100002F0AAF8C7E90201D7E90423DDE91C01C4 +:100B200002F0B4F953EC1C2B02F09EF8C7E9040163 +:100B3000C7F8388053EC1A2BD7E9020102F0A6F966 +:100B400041EC1A0B51EC1B0BD7E9042302F09EF980 +:100B500041EC1B0B51EC190BD6E9B02302F096F9CE +:100B600053EC182B02F006FA05F5A862C2E9000161 +:100B700051EC1A0B53EC182B02F0FCF9C9E90201F5 +:100B800051EC1B0B53EC182B02F0F4F9C9E90401EA +:100B900095F969058DF8000005F2695696F901008E +:100BA0008DF8010096F902008DF80200B5F86C0589 +:100BB000ADF80300DAE90001CDE90201DDE9022325 +:100BC000DDE9000100F045FB0246C5F87825DAE9C9 +:100BD0000001C4E900010192B0780090737895F8A3 +:100BE0006925617A0FF2380001F0DCFB99ED020B08 +:100BF0008DED000B05F5A860D0E900230FF28820E9 +:100C000001F0D0FB0320A0730FF22C0001F0CAFB0F +:100C100006B0BDEC0A8BBDE8F0075DF814FB0000E0 +:100C20004C5420256420552D53502025643A2564CA +:100C30003A25642C202564004C5420415245412023 +:100C400053544159000000000FB42DE9F0472DED39 +:100C50000A8B86B09FED848BDDE91823DDE928013E +:100C600002F014F953EC182B01F0FEFF41EC190BC4 +:100C7000DDE91A23DDE92A0102F008F953EC182B0B +:100C800001F0F2FF41EC1A0BDDE91C23DDE92C0138 +:100C900002F0FCF853EC182B01F0E6FF41EC180BC6 +:100CA000A74CDFF894A3DAE90001CDE90401D4E907 +:100CB0000001CDE90201DDE9042300F0CAFA664D26 +:100CC000A97ADFF8AC6C06EB811282EDB09B02F5DD +:100CD000307383ED02AB83ED048B237882F8E93225 +:100CE00002F2E92367785F70A7789F70B4F8033049 +:100CF000A2F8EC32C2F8F802481CA872C0B20A2866 +:100D000001D10020A872687A00F1010885F80980F5 +:100D10005FFA88F8A8F1010002F0A0F841EC1B0B83 +:100D200006F2405953EC1B2BD9E9020101F09CFF5C +:100D300053EC1A2B02F0AAF841EC1A0B53EC1B2BC4 +:100D4000D9E9040101F090FF53EC182B02F09EF852 +:100D500041EC180B404602F08BF841EC1C0B53ECB5 +:100D60001B2B06F5A8604168006801F07DFF53EC7D +:100D7000192B02F08BF853EC1C2B02F0FBF806F554 +:100D8000A862C2E9000151EC1A0B53EC1C2B02F0D3 +:100D9000F1F8C9E9020151EC180B53EC1C2B02F0DD +:100DA000E9F8C9E9040106F26957B8F1010F0AD15F +:100DB000207886F8690560787870A078B870B4F803 +:100DC0000300A6F86C0596F969058DF8000097F9FF +:100DD00001008DF8010097F902008DF80200B6F8C5 +:100DE0006C05ADF80300DAE90001CDE90201DDE9A7 +:100DF0000223DDE9000100F02CFA0246C6F878254E +:100E0000DAE90001C5E900010192B87800907B7829 +:100E100096F86925697A0FF2580001F0C3FA99ED46 +:100E2000020B8DED000B06F5A860D0E900230FF250 +:100E3000580001F0B7FA687A012805D10120A8739B +:100E40000FF2500001F0AEFA06B0BDEC0A8BBDE81F +:100E5000F0075DF814FB0000D0210120E0930400AE +:100E600060E31600F8C20020000000000000E03F30 +:100E70004C5420256420532D53502025643A25647A +:100E80003A25642C202564004C54202566202566D4 +:100E9000000000004C54204152454120494E0000C2 +:100EA0000FB410B584B0DFF8CC0A016B01EBC102BE +:100EB000DFF8BC3A03EBC20202F5B8639DED060B06 +:100EC00083ED000B9DED080B83ED020B08AC94ED58 +:100ED000021B83ED041B9DF8413082F8E93502F2D4 +:100EE000E9530DF1410464785C700DF14104A4787C +:100EF0009C70BDF84430A2F8EC3502F2EC5211AB14 +:100F0000DB685361C48A1483048B5483002901D1A4 +:100F10000121016302938DED000BDDE906230FF241 +:100F2000240001F03FFA1FBC5DF814FBE822012009 +:100F30002823012068230120A8230120E823012081 +:100F4000482B01204C54205553412025662025660E +:100F5000202564000FB4F0B585B0DFF8184A4825A5 +:100F6000DFF80C6A206B05FB006000F5B8619DEDB1 +:100F70000A0B81ED000B9DED0C0B81ED020B0CAA11 +:100F800092ED020B81ED040B9DF8511080F8E915EC +:100F900000F2E9520DF151035B7853700DF15107E6 +:100FA000BF789770BDF95420A0F8EC258DF8041097 +:100FB0008DF805308DF80670ADF8072094F9000023 +:100FC0008DF80C0060788DF80D00A0788DF80E007B +:100FD000B4F80300ADF80F00DDE90323DDE90101FA +:100FE00000F037F9074600979DF906309DF9052076 +:100FF0009DF904100FF2440001F0D4F9206B05FBB9 +:101000000061C1F8007601F20061E28A8A80228BD9 +:10101000CA80022801D2401C20630220A0730FF274 +:10102000340001F0BFF905B0F0BC5DF814FB00001E +:10103000502B0120582B0120402B01204C542053D1 +:101040005341312025643A25643A25642C202564D7 +:10105000000000004C542041524541204F5554009F +:101060000FB438B52DED048B8CB006AA08A90AA8D8 +:101070009DED140B00F06EF8DDE90A230020DFF887 +:10108000F81801F0F1FD04460D46DDE90823DFF80C +:10109000EC08DFF8EC1801F0E7FD22462B4601F0E2 +:1010A000F5FE04460D46DDE90623DFF8D808DFF833 +:1010B000D81801F0D9FD22462B4601F0E7FE41EC9D +:1010C000180B00AA02A904A89DED160B00F042F827 +:1010D000DDE904234FF03330DFF8B01801F0C4FD30 +:1010E00004460D46DDE90223DFF8A408DFF8A41862 +:1010F00001F0BAFD22462B4601F0C8FE04460D461B +:10110000DDE90023DFF87408DFF88C1801F0ACFD8E +:1011100022462B4601F0BAFE41EC190B53EC182B7A +:1011200051EC180B01F0A0FD04460D4653EC192BB1 +:1011300051EC190B01F098FD22462B4601F0A6FE5A +:1011400041EC100B02F03AF80CB0BDEC048B31BC52 +:101150005DF814FB70B52DED048BB0EE408AF0EE17 +:10116000608A04460D46164651EC180B53EC182BBA +:1011700001F0BAFC41EC190B53EC192B0020DFF8FD +:101180001C1801F071FD41EC100B84ED008B85ED16 +:10119000000B0022DFF8043801F0ECFE02460B469B +:1011A00051EC190B01F0A0FC0022DFF8F43701F03C +:1011B0005BFDC6E90001BDEC048B70BDDFF8B40730 +:1011C000006A7047DFF8AC07406A704780B540227C +:1011D0000021DFF8D00701F041F840220021DFF8BC +:1011E000C80701F03BF8DFF8D40D0021417281728D +:1011F000016181820FF20C00BDE8024001F0D2B81B +:10120000000000004C542052455345545F41535058 +:1012100000000000DFF8A40D006B704780B5DFF818 +:10122000501701F5B06001F5A861402201F010FCF3 +:10123000DFF8880D0021016301BDC9B201EBC102D5 +:10124000DFF82C1701EBC20101F5B861482201F06B +:10125000FFBB3FB581B04FF47A704EF66022DFF8E5 +:10126000603D9DF904109DF90540544303FB014185 +:101270009DF9064014FB0011BDF9074001FA84F105 +:101280009DF90C409DF90D506A4303FB04229DF922 +:101290000E3013FB0020BDF90F2000FA82F0441A33 +:1012A00042F20F721319934205D200240FF23C0050 +:1012B00001F078F807E0DFF80C2D944203DADFF84C +:1012C000082D1018441ADFF8040D844200DB044690 +:1012D000204601F0C3FDDFF8F82CDFF8F83C01F000 +:1012E000C3FC05B0BDE8304001F0E8BF41542D4CCF +:1012F0005420646966662054696D65205265736583 +:10130000740000002DE9F64383B08146BDF90F401B +:101310004EF66025DFF8A86C9DF90C009DF90D10C4 +:10132000694306FB00109DF90E104FF47A7211FB11 +:10133000020000FA84F10C98412808D15F18DFF808 +:10134000980C87420BD3DFF8940CC71907E0994239 +:1013500004D2DFF8740C4018C71A00E0CF1A3846E0 +:1013600001F086FD0022DFF8783C01F003FE01F079 +:10137000A5FF80465FFA88F806FB1876304601F034 +:1013800077FD0022DFF85C3C01F0F4FD01F096FFF0 +:10139000C0B28DF8008001468DF8011005FB106089 +:1013A00001F066FDDFF8282CDFF8283C01F05CFC3A +:1013B00001F084FF8DF80200ADF80340484600A913 +:1013C000052201F035FB05B0BDE8F08300408F40F9 +:1013D00010B50024DFF89C05C16C012907D1012458 +:1013E0000021C1640FF2540000F0DCFF23E0DFF8BD +:1013F0008005D0F87815D0F8B825914216D190F82C +:10140000691590F8A925914210D100F2A95100F276 +:10141000695042784B789A4208D18078897888421E +:1014200004D10FF6EC3000F0BDFF04E001240FF60C +:10143000E83000F0B7FF204610BD00004C542046B5 +:101440005500000000B58DB0DFF82805407A00286F +:101450000AD0DFF8941B84B06846402201F0F8FA05 +:101460000FBCFFF71DFD06E00FF6B4300DB05DF8C0 +:1014700004EB00F097BF0DB000BD00001CB5DFF815 +:10148000F444217B61732073401E05284DD8DFE8AA +:1014900000F0034C16222C4100A801F020FADFF8DE +:1014A0004C0B00A9052201F0C3FA616C21640020F5 +:1014B000E0720FF67830BDE81C4000F073BF00A862 +:1014C00001F00DFADFF8240B00A9052201F0B0FAB3 +:1014D000A06BA06413BD00A801F001FADFF80C0BAB +:1014E00000A9052201F0A4FA13BD00202061A0820A +:1014F00040220146DFF8B00400F0B0FE00A801F081 +:10150000EEF9DFF8E80A00A9052201F091FAA06BD4 +:10151000A06413BD00A801F0E2F9DFF8D00A00A929 +:10152000052201F085FAA06BA06413BD0CB400B5D0 +:1015300083B09DF939108DF800100DF1390191F942 +:1015400001108DF801100DF1390191F902108DF89B +:1015500002100021ADF8031000A9052201F068FA7D +:101560000EBC5DF80CFB00002DE9F84F2DED0A8B49 +:101570009CB082469FED558BDFF8F883B8F81000D9 +:10158000B8F81290814502D25FFA89F901E0C0B241 +:101590008146B8F91400461E00D50A36DFF8D0B3EC +:1015A0000BEB861797ED109B97ED12AB97ED14BBE5 +:1015B00001243CE0301A00D50A300BEB801505F110 +:1015C00040010CA8402201F043FA07F1400184B029 +:1015D0006846402201F03CFA0FBCFEF7CAFFB0EEAD +:1015E00040CAF0EE60CA51EC180B53EC1C2B01F012 +:1015F00019FC03D2B0EE4C8AF0EE6C8A53EC1B2B34 +:10160000D5E9140101F042FC41EC1B0B53EC192B02 +:10161000D5E9100101F03AFC41EC190B51EC1A0B21 +:10162000D5E9122301F032FC41EC1A0B641CE4B240 +:1016300020464845BEDB484601F01AFC41EC1C0B35 +:1016400051EC1B0B53EC1C2B01F094FCCAE9040178 +:1016500051EC190B53EC1C2B01F08CFCCAE9000176 +:1016600051EC1A0B53EC1C2B01F084FCCAE902016B +:10167000B8F81000B8F8121088421ED207F14001E5 +:101680000CA8402201F0E4F9DFF8641984B0684640 +:10169000402201F0DDF90FBCFEF76BFFB0EE40CA4F +:1016A000F0EE60CA51EC180B53EC1C2B01F0BAFBA6 +:1016B00003D2B0EE4C8AF0EE6C8AB0EE480AF0EE3F +:1016C000680A1CB0BDEC0A8BBDE8F18F0000000079 +:1016D000000000000FB42DE9F0412DED068BA0B005 +:1016E0002CA984B06846402201F0B2F90FBCFEF785 +:1016F00067FFA04D68639E4E012812D100206863E9 +:1017000006F5A86184B06846402201F0A1F90FBC3B +:10171000FFF720FCFFF75AFD0FF6201000F042FE05 +:1017200019E1B5F9144006EB841040302CA9402291 +:1017300001F08EF9601CA88200B20A2801D10020B5 +:10174000A882288A0A2801DA401C2882688A401C5C +:101750006882314682B06846402201F079F90CBCBB +:101760000EA8FFF7E3FE288A0A2801DA002700E026 +:101770002F7D8D4CD4E900010022134601F0A4F91D +:101780002FD1D4E9020101F09FF92AD1D4E9040153 +:1017900001F09AF925D106EB8716DFF8588896F9FB +:1017A000690088F8000006F2690090F9011088F8D5 +:1017B000011090F9020088F80200B6F86C00A8F851 +:1017C0000300DFF82C0806F14001402201F040F947 +:1017D000204606F14001402201F03AF90020A063C2 +:1017E000B9E010A8FFF7C0FEB0EE408AF0EE608AC4 +:1017F000DFF80088288B400801F03AFB53EC182BE7 +:1018000001F010FB28D206EB871696F9690088F8DC +:10181000000006F2690090F9011088F8011090F9B3 +:10182000020088F80200B6F86C00A8F80300DFF8A0 +:10183000C00706F14001402201F00AF9204606F1F6 +:101840004001402201F004F90020A06368820FF2F9 +:10185000FC7000F0A7FD7EE0D8E90001CDE90001B1 +:10186000DDE90E23FFF7F5FC064631460FF2EC707A +:1018700000F098FD286C4FF47A71714388426AD267 +:101880006F8A3846042866DBA16B002916D19DEDCE +:10189000100B84ED000B9DED120B84ED020B9DED02 +:1018A000140B84ED040BA663214684B068464022E5 +:1018B00001F0CEF80FBCFEF7CBFF43E0401E01F075 +:1018C000CDFA41EC190B384601F0D2FA41EC1A0B73 +:1018D00051EC190BD4E9002301F0C6F9DDE92C2302 +:1018E00001F0D4FA53EC1A2B01F044FBC4E90001D7 +:1018F00051EC190BD4E9022301F0B6F9DDE92E23EE +:1019000001F0C4FA53EC1A2B01F034FBC4E90201D4 +:1019100051EC190BD4E9042301F0A6F9DDE93023D9 +:1019200001F0B4FA53EC1A2B01F024FBC4E90401D2 +:10193000A663214684B06846402201F089F80FBCB6 +:10194000FEF7C8FEA06B009053EC182B698A0FF2CB +:101950001C7000F027FD20B0BDEC068BBDE8F00147 +:101960005DF814FB7047DFF85406807B7047000079 +:10197000F8C20020D021012000C05B409A999999BB +:101980009999FD3F5839B4C876BE9F3F33335640CE +:10199000AE47E17A14AEF73F9999993F00004E4067 +:1019A0000020AC4038C80020A82301200EB478B530 +:1019B0002DED028B9EB00646DFF80046A06B08189E +:1019C000A06300A800F08BFFDFF82C56284600A982 +:1019D000052201F02DF8207B062800F2E782DFE8DF +:1019E00010F0070012007400C1006A011402C00266 +:1019F000FFF7ECFB0120FFF741FD217B0FF2846034 +:101A000000F0D0FCD2E225A983B06846582201F04C +:101A10001FF80EBC304680B2FEF77CFC002843D095 +:101A2000D5E90001CDE903014D200090E36BDDE92C +:101A300003010A46014601A8FFF764FCDFF8BC0574 +:101A400001A9052200F0F4FFDFF8B41582B0684662 +:101A5000402200F0FDFF0CBC1CA8FFF767FDD5E994 +:101A60000001CDE90001DDE90023DDE91C01FFF7FC +:101A7000F0FB05463D2D07DB29460FF2186000F00C +:101A800091FCFEF787FC06E00120A06229460FF2D8 +:101A9000146000F087FC0220FFF7F0FC217B0FF2BE +:101AA000146000F07FFC81E2A06A012840F07E8291 +:101AB0000020A062DFF8481584B06846402200F09C +:101AC000C7FF0FBCFFF706FE70E2FEF7F9FC002827 +:101AD00034D00320FFF7D2FC0FF2E85000F062FC94 +:101AE000607A00281FD0DFF81C55294684B068466C +:101AF000402200F0ADFF0FBCFEF762FD60630128DD +:101B000011D100206063DFF8E01484B06846402201 +:101B100000F09EFF0FBCFFF71DFAFFF757FB0FF217 +:101B2000B85000F03FFCDFF8D81484B0684640227B +:101B300000F08EFF0FBCFFF7CDFD37E2FEF710FD82 +:101B4000002800F03382207A401C2072C0B20328A3 +:101B500080F243810120FFF791FC0FF2985000F0D2 +:101B600021FC23E2A06A012851D10020A062DFF805 +:101B70009064607A00281DD0314684B068464022C7 +:101B800000F066FF0FBCFEF71BFD6063012811D15A +:101B90000020606306F5A86184B06846402200F02A +:101BA00057FF0FBCFFF7D6F9FFF710FB0FF25C50A1 +:101BB00000F0F8FB314684B06846402200F048FF50 +:101BC0000FBCFFF787FD31460CA8402200F040FF14 +:101BD000DFF8301484B06846402200F039FF0FBCB3 +:101BE000FEF7C7FCB0EE408AF0EE608AE08A01F0B2 +:101BF0003FF953EC182B01F015F908D20120FFF73B +:101C00003DFC53EC182B0FF2105000F0CBFBD5E944 +:101C10000001CDE90201DFF8D403D0E90023CDE9CA +:101C20000023DDE90223DDE90001FFF712FBA16BD0 +:101C3000A26C8E1A332E08D30120FFF71FFC314609 +:101C40000FF2EC4000F0AEFBB0E1216C4FF47A7281 +:101C50005043814280F0AA81DFF8A41382B0684625 +:101C6000402200F0F5FE0CBC1CA8FFF75FFCD5E994 +:101C70000001CDE90001DDE90023DDE91C01FFF7EA +:101C8000E8FA05463D2D07DBFEF784FB29460FF2F7 +:101C9000B84000F087FB06E00120A06229460FF261 +:101CA000044000F07FFB0420FFF7E8FB0FF2A840A0 +:101CB00000F078FB7AE1FEF72BFC002800F0828030 +:101CC000D14E314684B06846402200F0C1FE0FBCC0 +:101CD000FEF776FC6063012818D100206063C249DA +:101CE00084B06846402200F0B3FE0FBCFFF732F923 +:101CF000FFF76CFA0FF2704000F054FB607B052890 +:101D000040F054810120FFF7B9FB4FE1BD4D314652 +:101D10000CA8402200F09CFE294684B06846402270 +:101D200000F096FE0FBCFEF724FCB0EE408AF0EE09 +:101D3000608AE08A01F09CF802460B4651EC180BD1 +:101D400001F070F82BD2607B052831460CD184B0AD +:101D50006846402200F07CFE0FBCFEF76FFE0FF2DB +:101D6000144000F01FFB10E00CA8402200F070FEB1 +:101D7000294684B06846402200F06AFE0FBCFEF798 +:101D800063FF0FF2FC3000F00DFBFEF70CFB0520AB +:101D9000FFF774FB0FF2F03000F004FB06E10120C6 +:101DA000FFF76CFB53EC182B0FF2F03000F0FAFA4F +:101DB000934984B06846402200F04AFE0FBCFFF70A +:101DC00089FCF3E0FEF7CCFB002800F0EF80207ADE +:101DD000401C2072C0B2032807DB0620FFF74EFB31 +:101DE0000FF2003000F0DEFAE0E0884820640320C3 +:101DF000FFF744FB217A0FF2B83000F0D3FA216CE0 +:101E00000FF2282000F0CEFAD0E0A06A012846D1D7 +:101E10000020A0627A4E607A00281DD0314684B03E +:101E20006846402200F014FE0FBCFEF7C9FB606359 +:101E3000012811D10020606306F5A86184B06846CE +:101E4000402200F005FE0FBCFFF784F8FFF7BEF953 +:101E50000FF2743000F0A6FA31460CA8402200F0D0 +:101E6000F7FD684984B06846402200F0F1FD0FBCE0 +:101E7000FEF77FFBB0EE408AF0EE608AE08A00F069 +:101E8000F7FF53EC182B00F0CDFF08D20120FFF72D +:101E9000F5FA53EC182B0FF23C3000F083FAD5E939 +:101EA0000001CDE902015148D0E90023CDE900232A +:101EB000DDE90223DDE90001FFF7CBF9A16BA26C9C +:101EC0008E1A332E08D30120FFF7D8FA31460FF2CD +:101ED0001C3000F067FA69E0216C4FF47A725043CD +:101EE00081423BD2464E96F929008DF8700006F2E9 +:101EF000290090F901108DF8711090F902008DF809 +:101F00007200D5E90001CDE90001DDE90023DDE93A +:101F10001C01FFF79EF905463D2D07DBFEF73AFA57 +:101F200029460FF2E02000F03DFA06E00120A06211 +:101F300029460FF2E02000F035FA0420FFF79EFA60 +:101F4000E07A401CE072C0B203282FDB606C4100D5 +:101F500021640FF2D80000F025FA27E0FEF78EFB8F +:101F600024E0A06BA16C401A33280BD30120FFF7AB +:101F700085FA0FF2B42000F015FA0FF2C02000F03D +:101F800011FA13E0A06A01280BD10120FFF776FABD +:101F90000FF2B42000F006FA0FF2A02000F002FACF +:101FA00004E0607B042801D1FEF768FB207B1EB0B3 +:101FB000BDEC028B72BC5DF810FB0000D02101204B +:101FC00080EE3600F1D8FFFF005C2605C0E40A056C +:101FD000FCA9F1D24D62503F015C260500A4D9FA5C +:101FE00040774B41004CED4038C80020582B012071 +:101FF000E8230120502B0120402B0120482B0120F9 +:10200000F8C200202823012068230120E093040067 +:102010004C542053410000004C542044490000001F +:102020004C54204E6F20504F530000004C542D57FD +:1020300050204348414E4745202564004C542053CE +:10204000617665205341554D000000004C542052EC +:10205000455345545F474150000000004C54204711 +:1020600041204D546D202564000000004C54205345 +:102070005020534741522025642C2025662C2025D2 +:10208000640000004C542D434B5F53544F502025A7 +:10209000640000004C5420524551504F532D4620AF +:1020A000256400004C54204E2D524551504F532072 +:1020B000256400004C542D4745545F315F504F5309 +:1020C000202564004C542D434B5F555345525F4DC2 +:1020D0004F564554000000004C54205353412D46A8 +:1020E000500000004C542D53535F50415553455FF1 +:1020F000535300004C542053535F475053204E4FCE +:1021000054204F4B20317374000000004C54205376 +:1021100053412D554D0000004C542D434B5F5354FB +:102120004F502D554D2D64697374202566000000B5 +:102130004C542D434B5F53544F502D554D2D7374BC +:1021400065702025640000004C5420524551504FCA +:10215000532D5320256400004C542D4745545F32C5 +:102160005F504F53000000004C54205353412D53F7 +:10217000500000004C54205544542053500000009F +:102180004C542053535000004C542D434B5F555337 +:1021900045525F4C454156494E4700004C542D4333 +:1021A0004845434B5F53544F502D535020256600F4 +:1021B0004C542D475053204E4F54204F4B20326EDD +:1021C00064202564000000004C54205353412D55D9 +:1021D0004C0000004C542D434B5F53544F502D5531 +:1021E0004C20646973742025660000004C542D4314 +:1021F0004B5F53544F5020554C207374657020250D +:10220000640000004C5420524551504F532D554C02 +:10221000202564004C54204E2D524551504F532DD3 +:10222000554C2025640000004C5420535320414756 +:1022300041494E2042592053544550004C542D439F +:102240004B5F53544F5000004C5420535320414790 +:1022500041494E20425920504F53000010B50446CA +:1022600010460A460146204601F054F8204610BDAB +:10227000BFF34F8FDFF81C07016801F4E061DFF85E +:10228000442711430160BFF34F8FFEE710B5DFF81D +:1022900038474FF48E7200212046FFF7DFFF2046BB +:1022A00010BDDFF82407704710B5FFF7EFFF0446B5 +:1022B00000231A461146084600F06EFAC046C04692 +:1022C00001F05CF8204600F018F801F0AEFA204664 +:1022D00000F0CFF9204600F014F8204600F01EF878 +:1022E00000F092F900206072A072E0722073012069 +:1022F00060730020E075012010BD0021C1710172E2 +:1023000031E010B50446DFF8900601F0E3F8DFF89D +:10231000BC0601F0DFF80120607110BD10B5044665 +:1023200001F043F90120A07110BD38B50446012524 +:1023300001F0EEF9012804D12846E0700020A070D9 +:102340000AE0022804D10020E0702846A07003E0D3 +:102350000020E070A0700546284632BD80B501F02F +:1023600051FB012002BD10B50446E07901F078FC74 +:102370000121217010BD70B504460025E679E17198 +:10238000FFF7F1FF002807D02046FFF7BAFF2046ED +:10239000FFF7C4FF012503E0E6712046FFF7E3FFE6 +:1023A000284670BD0EB470B5C1B0054600A84FF404 +:1023B000807102F0DDF9FFF774FF044645AB2A4651 +:1023C0004FF4807100A802F0D7F900A802F0F2F9EA +:1023D000451C00A82818002100F8011CDFF8F06552 +:1023E0003078401C30707078F021084202D099207B +:1023F00002F0FCF902F067FA7078401C7070207EE1 +:102400002818FF2810DA207E002803D0207E00192B +:102410000A2101762A4600A9207E0019193002F00F +:1024200069FA207E2818207600A802F0BBFC70789C +:10243000F021084202D0992002F0D8F97078401EAD +:102440007070C0B2002801D102F037FA03F095F89D +:1024500041B070BC5DF810FB0428DFF8400503D8DC +:10246000DFF8341501607047DFF8601501607047D0 +:10247000DFF82C1551F82000007F002807D0DFF886 +:10248000540501784A1C0270032900DBF0E670470E +:102490002DE9F84305460E4617464FF00208DFF8CF +:1024A00030456078F021084202D0992002F09EF970 +:1024B00002F009FA6078401C60709DF80000401E30 +:1024C0008DF8000017F8019B2846FFF7C5FF00AB09 +:1024D0004A463946304601F0DBFC002810D06078CF +:1024E000F021084202D0992002F080F96078401E65 +:1024F0006070C0B2002801D102F0DFF901201FE0B6 +:102500005FFA88F8424629460FF2D440FFF74AFFA7 +:102510004046A0F101080028D9D16078F021084296 +:1025200002D0992002F062F96078401E6070C0B25B +:10253000002801D102F0C1F92846FFF799FF0020D9 +:10254000BDE8F2832DE9F04704460D4616461F46C6 +:10255000DFF85084089888F80000DFF8749499F840 +:102560000100F021084202D0992002F03FF902F068 +:10257000AAF999F80100401C89F801002046FFF7EC +:102580006BFF4FF0020A434632463946284601F0B7 +:102590002FFD002813D099F80100F021084202D045 +:1025A000992002F023F999F80100401E89F80100F2 +:1025B000C0B2002801D102F080F9012022E05FFAC8 +:1025C0008AFA524621460FF22440FFF7EBFE5046AE +:1025D000A0F1010A0028D6D199F80100F0210842A3 +:1025E00002D0992002F002F999F80100401E89F802 +:1025F0000100C0B2002801D102F05FF92046FFF7C8 +:1026000037FF0020BDE8F08703F0E9BCF8B50446C9 +:1026100002270025DFF888630DE039464F1EC9B256 +:1026200000290AD1002804D120690121A94088434A +:10263000206102276D1C162D10DA56F82500006E59 +:10264000006880470128E8D121690122AA4011438E +:10265000216156F8251001220A77E3E72069032853 +:1026600003D0022801D0012802D140F4805020611B +:10267000F1BD01F001BE01F05CBE81B00022ADF8F9 +:102680000220ADF80020C079042808D0062809D01F +:1026900008280AD009280BD00A280CD00EE04FF4E5 +:1026A000C8600DE04FF448600AE04FF4C85007E0FE +:1026B0004FF4FA5004E042F2107001E041F2707001 +:1026C000ADF802200DE0BDF80020521CADF800204E +:1026D000BDF800208242F6DBBDF80220521CADF8A6 +:1026E0000220BDF802208A4203D20022ADF8002069 +:1026F000EEE701B07047417230B589B003F032FDAA +:102700000446FFF7CEFD054600A8242102F030F86C +:102710000020ADF8220001900A208DF8080000206A +:102720008DF809008DF80A00687A00280DD0002C79 +:1027300018D000208DF80000052001900B208DF8A6 +:10274000080000A805F062FB0CE0002C0AD0012074 +:102750008DF80000052001900B208DF8080000A8DE +:1027600005F054FB09B030BD01F0FFBD01F007BE1C +:1027700001210846F8E701210846F7E70221012078 +:10278000F2E702210120F1E701F004BE10B5044692 +:10279000FFF787FD447510BD2DE9F04782B00C4668 +:1027A00015462F46264680464FF47A714FF03C0C72 +:1027B0004FF4616918FB09F216FB0C22BA1801FBF1 +:1027C0000232DFF8E4E19EF900A01AFB09F99EF954 +:1027D00001A01AFB0C9C9EF902904CFA89FCBEF9F0 +:1027E000039001FB0C919EF808C0BCF1000F22D1B0 +:1027F00044EA00012943194302D001218EF8081050 +:102800008EF80000B8F1000F04D59EF800001830D3 +:102810008EF800008EF801408EF80250AEF80330BA +:1028200000933B4632469EF900100FF2F010FFF77E +:10283000B9FDBDE8F38791420DD3A1EB020CACF2D8 +:10284000D17CDFF89491CC45DAD30FF2AC1002B012 +:10285000BDE8F047A6E5D3D2A2EB010CACF2D179EA +:10286000DFF874A1D145CBD363460FF29C1002B0C0 +:10287000BDE8F04796E510B504002FD003F027FD22 +:102880004949CA68002A00D0841AB1F80320A21866 +:10289000A1F8032012B2B2F57A7F06DBA2F57A72B4 +:1028A000A1F803208A78521C8A7091F902203C2AF0 +:1028B00004DB3C3A8A704A78521C4A7091F9012034 +:1028C0003C2A04DB3C3A4A700A78521C0A7091F99F +:1028D0000020182A01DB00220A70C86010BD3249AE +:1028E000052200F0A5B800000FB410B52DED028B45 +:1028F0002E4C104600F0BCFA2D4A2E4B00F0B4F9D5 +:10290000206161619FED2C8B049800F0B1FA53ECCB +:10291000182B00F0A9F920606160059800F0A8FA72 +:1029200053EC182B00F0A0F9A060E1609DF81C00AA +:10293000207604F118009DF81D1041709DF81E10BE +:1029400081709DF81F10C1709DF820100171BDF8B5 +:10295000210000EE100AB8EE400A10EE100A05F051 +:102960007DFB174A1D4B00F07FF905F09FFBC4F873 +:102970001D00BDF82300A4F821009DF8250084F86F +:102980002300BDEC028B10BC5DF814FB0749242228 +:1029900000F04EB80CED00E0005400409C7A00209E +:1029A00008400020E02B012060290120BC260120E6 +:1029B000FCA9F1D24D62503F8DEDB5A0F7C6B03EF7 +:1029C0003BDF4F8D0400FA05A407012000580040AA +:1029D000A0790020DF2B01205F4C2605976EA23FD7 +:1029E00049574520256420256400000049524520B0 +:1029F000256420256400000041542D536574545310 +:102A0000312025642025640041542D5365745453AE +:102A100032202564202564202564000041542D5374 +:102A20006574542025643A25643A25642E25640093 +:102A300062B38B0708D0521E11F8013B00F8013B2E +:102A400000F024808B07F6D1830740F0208000BF80 +:102A5000103A07D330B4B1E83810103AA0E8381073 +:102A6000F9D230BC530724BFB1E80810A0E8081021 +:102A700044BF51F8043B40F8043BD20724BF31F86F +:102A8000022B20F8022B44BF0B7803707047083AE2 +:102A900007D3B1E80810083A40F8043B40F804CBEB +:102AA000F7D25307E4E750F8041B61B150F8042B48 +:102AB000D30744BFA9F101039A18002342F8043B4D +:102AC000091FFAD1EFE7704790420CD141EA030C9D +:102AD00050EA4C0C07D0994205D14FF4001C1CEB76 +:102AE000410F38BF8942704770B44FF0004591EAFA +:102AF000030F44BF6B4000F0D3B900BF841A71EBE1 +:102B0000030604D26E40001BB141121973414FF409 +:102B1000001C1CEB410F34BF7CEB430684E00C0D22 +:102B2000A4EB1356362E7DDC012E43DC45EAC3238D +:102B300043EA525312BFD20292025B08240545EACF +:102B4000C12141EA5051D2EBC020994125D407D18F +:102B5000B0FA80F610FA06F164D00020203608E0C2 +:102B6000B1FA81F6B140C6F1200220FA02F2114317 +:102B7000B0404FEAF474B4EB465434F001064FEA27 +:102B800074040AD8D6F50016760D04F00044F0401F +:102B900061FA06F25040F1404840C00A40EA415014 +:102BA00021F0004128BF5FEA500550F1000044EBDE +:102BB000D12137E045EAC323DB0A45EAC121C90A2E +:102BC000B6F120050EDD42EA0242120CC5F12006E4 +:102BD00003FA06F6EB4042EA06056D42984161F1C0 +:102BE00000010DE062FA06F5F240554063FA06FC7A +:102BF00082EA0C02F3405A406D42904161EB0301BE +:102C000011F4801F05D1641E620502D06D004041A1 +:102C1000494121F48011430875F1004350F100004F +:102C200041EB045170BC70471CEB410F15D223F0EF +:102C3000004352EA43060BD04FEA4C0CBCEB410F69 +:102C400004D80C0D661E342EB7DDEBE7801A9941CF +:102C500050EA410608BF0021E4E708BF1CEB430F20 +:102C600028BF6FF00001DDE7B0B581EA030C0CF07E +:102C7000004C40F2FF7515EA11541DBF15EA1357B9 +:102C8000AC42AF4239E0E41923EA455343F48013E0 +:102C9000C90241F0004141EA505EC7021100A7FBA2 +:102CA000020200284FF00000EEFB01204FF000016F +:102CB000E3FB072118BF42F00102401800214941FF +:102CC000E3FB0E01A4F580640F0302D252004041E1 +:102CD000494154F101046CDD470872F1004250F1A2 +:102CE000000051EB0451A1F580115CBF41EA0C01D9 +:102CF000B0BD4CEA05510020B0BD05EA1357AC4207 +:102D000014BFAF4241E050EA410E1CBF52EA430EED +:102D100002E061460020B0BD24423C441BD15FEA82 +:102D2000070EF6D0090302BF01460020AEF1140ED3 +:102D3000B1FA81F7AEEB070401FA07FE0C37C7F1D1 +:102D4000200100FA07F7C8404EEA000E23EA455377 +:102D500043F48013A2E733F00043B3FA83F704BFD0 +:102D6000B2FA82FE77440B3FE41BB7F1200E2FBF6F +:102D700002FA0EF3BB40C7F1200E22FA0EFE38BF56 +:102D800043EA0E03BA40641C82E750EA410E14BFC6 +:102D900052EA430E6FF000014FF4001717EB430F98 +:102DA0008ABF194617EB410FB5E74CEA05510020E1 +:102DB000B0BDD4F10104B4F120070FDAC4F120074B +:102DC000520828BF42F0010210FA07F501FA07F78E +:102DD000E1BF2A43E0403843E1400FE0352C98DC66 +:102DE000C7F1200452EA400220FA07F218BF42F06D +:102DF000010231FA07F0A1400A43002172F10042BA +:102E000050F1000051EB0C01B0BD8268521C826091 +:102E1000426832B10268531C036011704168491E58 +:102E2000416070474FF4001C1CEB410F94BF1CEB3A +:102E3000430F09E041EA030C50EA4C0C52EA0C0C37 +:102E400003D2994208BF9042704714BF8B4282421E +:102E500070470268531C036011707047010040F115 +:102E60000980F446404200F005F851F00041604707 +:102E7000010000BF09D0B0FA80F18840C91CC1F53B +:102E80008461090501EBD0214005704770B44FF013 +:102E9000004591EA030C44BF6B40FFF72FBE00BF13 +:102EA000841A71EB030603D2001BB141121973415E +:102EB0004FF4001C1CEB410F34BF7CEB430443E098 +:102EC0000C0DA4EB1356352E50DC45EAC323DB0A68 +:102ED00045EAC121C912B6F120050DDD63FA05F6F8 +:102EE000EB4086EA0305124218BF45F00105C01801 +:102EF00051F100010CD213E062FA06F5F2405540A0 +:102F0000F3415A40B340F3405A408018594107D327 +:102F100049085FEA30005FEA350528BF45F0010542 +:102F200001F58011420875F1004250F1000041EBBB +:102F3000045170BC4FF4001C1CEB410F38BF7047AC +:102F40000020090D090570471CEB410F10D252EA11 +:102F500043060BD0BCEB410F05D80C0DAB43661EEE +:102F6000342EB5DD02E0AB438018594170BC704788 +:102F700070BC7047F0B540F2FF7581EA030C0CF0AD +:102F8000004C15EA11541DBF15EA1357AC42AF426D +:102F9000E5E0BC41C1F31301C3F31303801A994167 +:102FA00043F4801304D2641E400049418018594103 +:102FB000C90241EA5051B1FBF3F603FB1611A2FB23 +:102FC0000675D7EBC020A94102D2761E8018594160 +:102FD000C90241EA5051B1FBF3FE03FB1E11A2FBF3 +:102FE0000E75D7EBC020A94103D2AEF1010E8018B7 +:102FF0005941890241EA9051760546EA8E2EB1FB8D +:10300000F3F603FB1611A2FB0675D7EB8020A9414E +:1030100002D2761E80185941C90241EA50514EEA47 +:10302000060EB1FBF3F603FB1611A2FB0675D7EBF8 +:10303000C020A94102D2761E80185941C90241EA36 +:103040005051B1FBF3F703FB1711A2FB0735D3EB8C +:10305000C020A94167F100070CBF004247F00107FB +:1030600066F3D5274FEA1E31B80814F5806412DDE7 +:10307000BD0775F1004250EB0E5051EB045111F5B4 +:10308000801F5CBF41EA0C01F0BD4CF07F6141F054 +:10309000E0410020F0BDBD076D0840EA0E5041F44C +:1030A0008011D4F10104B4F120060ADAC4F120063B +:1030B0000200E04001FA06F3E1401843B240154334 +:1030C0000EE0342C13DCC6F1200445EA40056D08FF +:1030D00020FA06F2154321FA06F0A1400D43002123 +:1030E00075F1004250F1000051EB0C01F0BD0020E1 +:1030F0005FEA0C01F0BDCFB992185B41B3FA83F7D8 +:1031000004BFB2FA82F6BF190B3FB7F120062FBFFA +:1031100002FA06F3BB40C7F1200622FA06F638BFD2 +:103120003343BA401CB1E419641E33E77F4231F0E7 +:103130000041B1FA81F404BFB0FA80F6A4190B3C47 +:10314000B4F120062FBF00FA06F1A140C4F1200619 +:1031500020FA06F638BF3143A0403C1B1AE7AC42C8 +:103160001ABF05EA1357AF4212E050EA41061CBFEE +:1031700052EA4306BFE750EA4107304661461CBFAA +:1031800041EA0551F0BD52EA430C08BFC143F0BD0E +:1031900000204FF4001616EB410F98BF16EB430FBB +:1031A00008BF16EB410F24BFC14305E016EB430FE8 +:1031B0000CBF61464CEA0551F0BD000051EC100B0C +:1031C00000B500F003F841EC100B00BD40F2FF7CAD +:1031D0000B0D4DD0634566D230B421EA035141F462 +:1031E000801103F2FD3C5FEA5C0C01D300184941F9 +:1031F000890041EA907180004FF440140023E202FC +:10320000D50AB1F5100107D46D081DD2091B641948 +:1032100000184941491BF7D56D080AD20919641BEA +:1032200000184941491BEFD56D08F7D301E052085A +:1032300017D0C01861419B1AAC4100184941801A4F +:10324000A941F4D452080AD0C01AA1419B186C417C +:1032500000184941801AA941E9D45208F4D15B1CF5 +:103260006C4161084FEA330001EB0C5130BC7047F0 +:1032700050EA0103FBD030B4B1FA81F311B9B0FACE +:1032800080F41B190B3BB3F120042FBF00FA04F1AB +:103290009940C3F1200420FA04F438BF2143984038 +:1032A000D3F101039DE76345E1D011F5801FDED81E +:1032B00050EA4101DBD0D94304F040BFF446400D51 +:1032C00040EAC120490006D200F014F8004248BF8D +:1032D0006FF00040604700F00DF84FF00041884269 +:1032E0008CBF084640426047400D40EAC12049007B +:1032F00080F00D8040F00040490DA1F58061491C2F +:1033000005D4D1F11F0154BFC840C01770474FF01A +:103310000000704762F30F2262F31F42401810F062 +:10332000030308D0C91A1FD3DB0748BF00F8012DDB +:1033300028BF20F8022D130030B41446154610396A +:1033400028BF20E93C00FAD8490728BF20E90C0033 +:1033500048BF40F8042D890028BF20F8022D48BF3F +:1033600000F8012D30BC7047C91818BF00F8012DB6 +:10337000CB0728BF00F8012D7047000030B583B09F +:103380000121032004F045FFDFF8584C204604F0EB +:10339000D9FFDFF8545C284604F0D4FF01208DF8F3 +:1033A000040000208DF8050001208DF806000020A3 +:1033B0008DF80700012128460183C04601200090B6 +:1033C00000A9284605F01AF8022128460183C046C4 +:1033D0000220009000A9284605F010F801208DF881 +:1033E000040000208DF80500ADF806004FF4807051 +:1033F000009000A9284605F001F84FF48071284696 +:103400004183C04601208DF8040000208DF805009E +:1034100001208DF8060000208DF807004FF4805041 +:10342000009000A9204604F0E9FF4FF480512046A7 +:103430004183C04604220621284605F02DF80422C7 +:103440000721284605F028F802208DF80400012005 +:103450008DF805008DF8060000208DF8070040204B +:10346000009000A9284604F0C9FF8020009000A920 +:10347000284604F0C3FF04220A21284605F00CF870 +:1034800009220321284605F007F802208DF80400E0 +:1034900001208DF805008DF8060000208DF807004A +:1034A0004FF48060009000A9284604F0A7FF082090 +:1034B000009000A9284604F0A1FF286820F0300001 +:1034C00040F010002860206820F0300040F010002C +:1034D000206037BD1FB5DFF8144BA04230D1012169 +:1034E0004FF4001004F0A0FE0121022004F091FE30 +:1034F00001214FF4001004F0B8FE00214FF4001039 +:1035000004F0B3FE0020ADF804004BF6FF70ADF8F8 +:1035100006004FF48060ADF80A004FF48040ADF82B +:103520000C000A20ADF80800DFF8A40C009000A9F8 +:10353000204604F0F4FF0121204605F053F81FBD9A +:10354000DFF8904CA0422FD101214FF4800004F00D +:103550006BFE0121022004F05CFE01214FF480008B +:1035600004F083FE00214FF4800004F07EFE002072 +:10357000ADF804004BF6FF70ADF806004FF4806024 +:10358000ADF80A004FF48040ADF80C000A20ADF809 +:103590000800DFF83C0C009000A9204604F0BFFFB3 +:1035A0000121204605F01EF81FBD2DE9F04192B023 +:1035B00001214FF4805004F042FE0121084604F03E +:1035C00028FE01214FF4800004F023FEDFF8144AA6 +:1035D00005221146204604F05FFF05220721204600 +:1035E00004F05AFF05220621204604F055FF05226B +:1035F0000421204604F050FF02208DF80400012031 +:103600008DF805000020ADF806002020009000A9EC +:10361000204604F0F3FE8020009000A9204604F02C +:10362000EDFE4020009000A9204604F0E7FE1020A7 +:10363000009000A9204604F0E1FEDFF89C4B2046F4 +:1036400005F032F8DFF8945B0020288068600120E4 +:10365000288100206881E860072028820020688097 +:10366000DFF87C6B304605F08FF8DFF8787B384662 +:1036700005F08AF84FF48060069000210D91032137 +:103680000E9100210F910A910890DFF8140C03901D +:1036900008461090099007904FF400300C900846AF +:1036A0000B904FF0C068CDF8088040200590084688 +:1036B000049002A9304605F0EBF800200B90CDF8FD +:1036C0000880059005F11400049002A9384605F021 +:1036D000DFF8002068802946204605F014F8012212 +:1036E0000221204605F03EF801221146204605F051 +:1036F00039F80121204605F029F80021304605F06F +:10370000EEF80021384605F0EAF812B0BDE8F08185 +:1037100030B589B001214FF0805004F085FD0120C3 +:1037200005F046F901214FF4802004F072FD0F20CE +:1037300005F0EEFA0446102005F0EAFA05460120ED +:1037400004F064FD002004F061FD21460F2005F027 +:10375000D2FA2946102005F0CEFA00214FF480203D +:1037600004F057FD012004F0EFFC412004F09EFD21 +:103770000028FAD04FF4807004F032FD012004F0EC +:1037800042FD05F068F93F20069040F2FF100790D7 +:103790000020059005A805F015F90020029002A967 +:1037A00005F07AF900208DF8070001208DF804005B +:1037B0008DF805008DF8060001A9002005F0E5F957 +:1037C0004FF4800005F084FB4FF48000039000204C +:1037D0008DF8100008208DF8110001208DF81200DE +:1037E00003A805F033FB03208DF800000D208DF8B1 +:1037F000010000208DF8020001208DF8030000A8D0 +:1038000005F073FB032005F034FA4FF4804005F017 +:10381000EAFA4FF4800005F05BFB01214FF4804091 +:1038200005F0A7FA012009B030BD10B586B001211E +:10383000084604F0EEFC01214FF4804004F0FFFC48 +:1038400000208DF810008DF8130001200390DFF8A0 +:10385000944703A9204604F0D1FD0420039003A956 +:10386000204604F0CBFD0021084605F077FB02213D +:10387000002005F073FB00208DF8080001208DF872 +:103880000A0001900C208DF8090001A805F0DEFA6D +:10389000042001900C208DF8090001A805F0D6FA4B +:1038A000042005F015FB28208DF800000F208DF86E +:1038B000010000208DF8020001208DF8030000A80F +:1038C00005F013FB06B010BD10B586B00121084607 +:1038D00004F09FFC01214FF4804004F0B0FC002074 +:1038E0008DF810008DF813004FF40064039403A9C1 +:1038F000DFF8F00604F082FD0B21002005F02EFB1E +:1039000000208DF8080001208DF80A0001940C2099 +:103910008DF8090001A805F099FA204605F0D8FABB +:1039200028208DF800000F208DF8010000208DF870 +:10393000020001208DF8030000A805F0D6FA06B0B9 +:1039400010BD30B58DB0044601214FF4807004F0F5 +:1039500076FC00A804F08CFD0A20009003208DF86E +:10396000040000208DF8070000A9DFF8780604F0B5 +:1039700045FD05F007FB02A805F049FB4FF4803038 +:10398000039002A805F035FB06A805F028FBDFF838 +:103990006C5B06A9284605F002FB0723012221469D +:1039A000284605F045FB0121284605F084FB01214E +:1039B000284605F032FB0DB030BD38B5DFF83C4B82 +:1039C000204605F073FB4FF47A750221204605F07E +:1039D00089FB002803D12846451E0128F5DA204638 +:1039E000BDE8324005F072BB80B50021DFF80C0B5A +:1039F00005F013FB00214FF48070BDE8044004F093 +:103A00001EBC000038B5040039D0012004F0D0FFFE +:103A1000002005F048F94FF40055042005F0C4F9E2 +:103A2000012804D12846451E80B20028F5D100EEB9 +:103A3000104AB8EE400ADFED780A80EE800AF0EE18 +:103A4000000A20EE200ADFED750A80EE800ABDEE46 +:103A5000C00A10EE100A401E80B205F01AF94FF4A9 +:103A6000804005F0C0F94FF4800005F031FA0120E4 +:103A700005F019F9DFF87C0B0121416031BD01200F +:103A800004F096FF0020BDE8324005F00CB90000BC +:103A900030B4014601200023DFF8642A1C469460FC +:103AA000946814F00C0FFBD10C460B2C55D8DFE8B2 +:103AB00004F02054545406192031383F464D946880 +:103AC00044F080049460DFF83C4A4FF4C065256000 +:103AD000146824F080741460DFF8AC4ADFF8285AC8 +:103AE00025603BE00346DFF8A04ADFF8A05A2560D6 +:103AF00034E094689460DFF80C4A4FF4C0652560A8 +:103B0000146824F080741460DFF87C4ADFF8805A6F +:103B1000256023E00223DFF8704ADFF8785A256039 +:103B20001CE00323DFF8604ADFF86C5A256015E0DB +:103B30000423DFF8544ADFF8C05A25600EE005235D +:103B4000DFF8444ADFF8B45A256007E00623DFF8BF +:103B5000384ADFF8AC5A256000E01846002B4AD0FE +:103B600003EBC3030FF2B8041B1994689460146844 +:103B700024F080741460146824F0806414609C78CD +:103B80001D8844EA8514DD786D086D1E44EA0544FD +:103B90001D7944EA05645460DC881D7A2D0745EAE6 +:103BA0008414DFF8B85A2C60146844F080741460F0 +:103BB0001468A401FCD55B7943F4C063DFF8444981 +:103BC00023609368936093689360052904D191689A +:103BD00041F09001916005E00A2903D1916841F418 +:103BE00080519160916841F002019160916801F00B +:103BF0000C010829FAD1DFF890190968DFF8602A6A +:103C0000914207D2DFF8EC1A0A6822F4404242F4EB +:103C100080420A6030BC704700007A4400000047D0 +:103C2000200110040F03020103F00010060F01022F +:103C30000103C00010080F01020103C00010060FAD +:103C400001020103F00010060F01020103C8001079 +:103C5000040F02020103A80010020F030201030077 +:103C600016E7002800E0401EFDD170477CB507260E +:103C7000DE4988426BD101208DF804008DF80500E3 +:103C80008DF8060000208DF8070040200090DFF836 +:103C9000845A00A9284604F0B1FB8020009000A9B6 +:103CA000284604F0ABFB402128464183C0460F2044 +:103CB000FFF7D7FF402128460183C0460F20FFF7BA +:103CC000D0FF3046461E80B20028ECD18020009004 +:103CD00000A9284604F092FB402128464183C046B3 +:103CE0000520FFF7BEFF802128460183C04605203E +:103CF000FFF7B7FF402128460183C0460A20FFF79F +:103D0000B0FF402128464183C0460520FFF7A9FFA8 +:103D1000802128464183C0460520FFF7A2FF0220EC +:103D20008DF8040001208DF805008DF806000020B4 +:103D30008DF807004020009000A9284604F05EFBA3 +:103D40008020009000A9284604F058FB73BDDFF8DE +:103D5000841488426AD101208DF804008DF8050092 +:103D60008DF8060000208DF807004FF48064009461 +:103D7000DFF8A05900A9284604F040FB0820009075 +:103D800000A9284604F03AFB214628464183C04654 +:103D90000A20FFF766FF214628460183C0460A2015 +:103DA000FFF75FFF3046461E80B20028ECD10820A6 +:103DB000009000A9284604F021FB214628464183B3 +:103DC000C0460520FFF74DFF082128460183C04665 +:103DD0000520FFF746FF214628460183C0460A20FA +:103DE000FFF73FFF214628464183C0460520FFF7E5 +:103DF00038FF082128464183C0460520FFF731FFE0 +:103E000002208DF8040001208DF805008DF80600D1 +:103E100000208DF80700009400A9284604F0EEFA6F +:103E20000820009000A9284604F0E8FA73BD10B5F8 +:103E3000DFF8E4480121206804F00DFC206804F05C +:103E40003FFB2068FFF746FB05E02068FFF70EFF09 +:103E50002068FFF73FFB4FF40031206804F006FCB8 +:103E60000028F2D110BD30B40022838A008BDFF825 +:103E7000A848656843EA00400840000255EA10205F +:103E800060600840884200D10122104630BC704773 +:103E90002DE9F84F04460D4616464FF420491F7889 +:103EA000DFF874884FF40031D8F8000004F0DEFB2E +:103EB000002808D04846A0F101090028F2D1FFF7F8 +:103EC000B6FF00208CE0D8F8000001884FF6FF52C2 +:103ED000114001800121D8F8000004F08FFB4FF45D +:103EE000805AD1460020C8F80400D8F800B0DFF8A6 +:103EF0002C185846FFF7B7FF002805D14846A0F117 +:103F000001090028F1D163E0D1460022214658463C +:103F100004F08CFB0020C8F80400D8F80040DFF85B +:103F200000182046FFF79FFF002805D14846A0F162 +:103F300001090028F1D14BE03146C9B22046018287 +:103F4000C046D1460020C8F80400D8F80040DFF889 +:103F5000D4172046FFF787FF002805D14846A0F177 +:103F600001090028F1D133E0012F15D1297820462D +:103F70000182C046D1460020C8F80400DFF8A81727 +:103F8000D8F80000FFF76FFF002823D14846A0F1C2 +:103F900001090028F2D11BE03846471EC0B20028B4 +:103FA00018D015F8011BD8F800000182C046D14690 +:103FB0000020C8F80400DFF87017D8F80000FFF7F9 +:103FC00052FF0028E8D14846A0F101090028F2D1AB +:103FD000002005E00121D8F8000004F01BFB0120BF +:103FE000BDE8F28F0000024000040240005400408F +:103FF0002DE9F54F81B00D461E464FF42048377825 +:10400000DFF814474FF40031206804F02FFB00283C +:1040100008D04046A0F101080028F3D1FFF707FFC0 +:104020000020D3E0206801884FF6FF521140018044 +:104030000121206804F0E2FA4FF48059C8460020BC +:104040006060DFF8D8A6D4F800B051465846FFF7B4 +:104050000AFF002805D14046A0F101080028F2D14E +:1040600091E000229DF80410584604F0DFFAC8469B +:1040700000206060D4F800B0DFF8A4165846FFF7BF +:10408000F2FE002805D14046A0F101080028F1D138 +:1040900079E0BDF80810C9B258460182C046C8464A +:1040A000DFF88816206804F0E1FA002805D14046C0 +:1040B000A0F101080028F3D165E00121206804F097 +:1040C0009DFAC84600206060D4F800B051465846BA +:1040D000FFF7C9FE002805D14046A0F101080028DD +:1040E000F2D150E001229DF80410584604F09EFAE7 +:1040F000022FC84639DADFF83816206804F0B6FA1D +:10410000002805D14046A0F101080028F3D13AE08B +:104110000021206804F093FA2068018B012104F04B +:1041200079FAC846DFF80C16206804F09FFA0028D8 +:1041300005D14046A0F101080028F3D123E0206812 +:10414000008AC0B228703078401E3070C84620689F +:104150000188890505D54046A0F101080028F6D15F +:1041600011E0012104F06BFA2BE000206060DFF821 +:10417000C8152068FFF777FE002806D14046A0F159 +:1041800001080028F3D1002020E0012616E0012FCD +:104190000CD1012E0AD100263146206804F04FFAD6 +:1041A0002068818A018B012104F034FA2068818A19 +:1041B000490603D5008A05F8010B7F1EFFB2002FC8 +:1041C000E5D10121206804F03AFA0120BDE8FE8F14 +:1041D000801A060000580040003001409826012057 +:1041E0008864024010640240DFF850050168082925 +:1041F00033D1DFF80C130A6842F080720A6042681B +:10420000B2F1806F03D10A6842F080620A600A68E6 +:104210009201FCD58A6842F002028A608A6802F044 +:104220000C02082AFAD14268B2F1806F02D10A6802 +:104230001201FCD5DFF850130968DFF824249142FD +:1042400007D2DFF8B0140A6822F4404242F48042F8 +:104250000A6000210160416070474168B1F1806FE0 +:1042600009D1A7490A6842F080620A600A6812010F +:10427000FCD5002141607047DFF8C404016841F0BB +:1042800080510160DFF86C0401688908890041F001 +:1042900001010160DFF8AC040FF209010160704711 +:1042A0000C30014038B5DFF8A044208840F004000D +:1042B0002080FDF7F6FF807A012803D1012004F069 +:1042C0007AFB02E0002004F076FBDFF880548021C6 +:1042D000DFF87C0404F050FA002818D172B6884840 +:1042E000DFF85814826802F00C020A60006800F0DF +:1042F00080604860286840F00400286030BF62B6E3 +:10430000286820F004002860FFF76EFF0CE060884A +:1043100040F004006080286820F00400286030BF6E +:10432000286840F004002860608840F00400608045 +:1043300031BDDFF8100400680047DFF818140128C9 +:1043400006D010D3032809D005D3042809D00AE0E9 +:10435000DFF8C01307E0DFF8001404E0DFF8FC1317 +:1043600001E0DFF8FC130846704710B50C46FFF774 +:10437000E4FF214689B2BDE8104004F089B810B5C9 +:104380000C46FFF7DAFF214689B2BDE8104004F081 +:1043900081B80000E0B500238DF8083001238DF8C6 +:1043A0000A30002A03D10C228DF8092002E00822ED +:1043B0008DF8092004283CD8DFE800F00315212AF5 +:1043C0002A004FF40060019028208DF800000F2093 +:1043D0008DF8010000208DF80200012921D1184636 +:1043E0008DF803001FE01846019010208DF8090099 +:1043F00006208DF800000E208DF80100EAE702206B +:10440000019007208DF800000F208DF80100E1E7F2 +:104410000420019008208DF800000F208DF8010085 +:10442000D8E78DF8030001A804F010FD00A804F0FF +:104430005CFD07BD4FF40061C64804F022B810B51A +:10444000044601214FF4802003F0E3FE21461020B2 +:1044500004F051FC00214FF48020BDE8104003F02F +:10446000D8BE10B501214FF4802003F0D2FE1020F9 +:1044700004F04EFC044600214FF4802003F0C9FEF6 +:104480007B2003F013FF002802D09BA0FDF78AFFDA +:104490007A2003F00BFF002802D098A0FDF782FFDE +:1044A000792003F003FF002802D095A0FDF77AFFE2 +:1044B0007C2003F0FBFE002802D092A0FDF772FFE3 +:1044C0007D2003F0F3FE002802D08FA0FDF76AFFE5 +:1044D0007E2003F0EBFE002802D08CA0FDF762FFE7 +:1044E0007F2003F0E3FE002802D089A0FDF75AFFE9 +:1044F00003F0EEFE2046C0B210BD000000200140D7 +:1045000000380240003C024000127A003EB50C46E2 +:1045100015460422014602A800F0ECF904222146C7 +:1045200001A800F0E7F90422294600A800F0E2F90A +:1045300002A9002004F0B0FA01A9002004F025FB34 +:1045400004F01EFB0446874A002300981946101AFF +:1045500063EB0101490241EAD051400204F0ECFD55 +:104560000090844205D2011B4FF0004004F0DDFBB7 +:1045700037BDA04207D2C4F50070009909184FF06A +:10458000004004F0D2FB37BD3C7A002080969800B2 +:104590000024F40000366E010048E8012DE9704364 +:1045A00084B004460D46164602A9002004F0C3FA62 +:1045B00001A9002004F039FB04F0E2FA0090694AF6 +:1045C000A2FB00894FEA582848EAC958A2EB080024 +:1045D0000090042202A9204600F08CF9042201A9CF +:1045E000284600F087F9042200A9304600F082F93D +:1045F000BDE87F83DC2A0120005A620280F0FA02C3 +:1046000000BD010570B48C1E012C01DA0C34401E73 +:104610003C216425B0FBF5F5C5EB90054FF4C87659 +:10462000B0FBF6F6751940F26F1674430C26B4FB16 +:10463000F6F46419121940F26D1404FB00204A4A82 +:10464000101800EB400203EBC200039A01FB0020AC +:10465000049A01FB002070BC7047000084380240BF +:10466000018793031CB50C460168019141680091D4 +:104670008368C2680169491C406900F26C70FFF7E9 +:10468000C1FF2060002016BD10B58EB0374800680D +:10469000C405E40D01A9002004F04DFA00A9002092 +:1046A00004F0C3FA9DF8040006909DF805000590FB +:1046B0009DF8060004909DF80100401E08909DF8AA +:1046C000020007909DF803006430099002A904A835 +:1046D000FFF7C8FF4FF47A7010FB04F0400AC0F5F2 +:1046E0007A700390029A4FF47A73C117E3FB0201C8 +:1046F0000EB010BD00700040504F520050494E00A7 +:10470000424F520053465400495744005757440003 +:104710004C505700000402409C7A00200100030026 +:1047200082000700800007008400070004000010DA +:10473000020000104000001002000300E42A0120E3 +:1047400040380240DC2A01201800024010ED00E051 +:10475000003001400000024000080240000C02400E +:104760000010024000CA9A3B7505F5FF282800405A +:10477000002204F059BD000008B584B00023029364 +:1047800011B90093019302E00090481E019004AB20 +:1047900000A907487844183004F060FD009909B179 +:1047A00000220A70002858BF029805B000BD00BF63 +:1047B0005BE6FFFF00F10103810704D010F8011B45 +:1047C00089B18107FAD10268B2F10131914311F048 +:1047D000803F04BF50F8042FF6E710F8011B11B119 +:1047E00010F8011BFBE7C01A7047000000B585B048 +:1047F00002460FF2140100A805F0FCFB00A800F02F +:1048000099FB05B000BD00004F4525640000000085 +:1048100030488168002904BF08B008E0EFF309823E +:10482000A2F12802036882E8F84F83685A6000F01A +:104830004BFD816859B14A6892E8F84F036002F174 +:10484000280282F3098813F47F4F36D0704722483C +:1048500022490968401A80F308884FF08071C161CD +:104860001F4981617FF0060E704701BC2046DFF8CA +:1048700074E000BDFEE71C48006818490968401A4A +:10488000203820F0070080F308884FF0000181F302 +:10489000118862B600F00DF8FEE74FF0000181F3D9 +:1048A00011881249124A0A604FF0800181F3118881 +:1048B00070470E490E4A0A6070474FF0000181F3BD +:1048C0001188704700BF4FF0800181F31188704755 +:1048D00000BF0000A0790020E01F0020B8200308DE +:1048E0003DA30008754800080000000804ED00E042 +:1048F0000000001010B50446FEF79AF8204610BDDF +:10490000EFF303807047BFF34F8FDFF86C06016849 +:1049100001F4E061DFF8642611430160BFF34F8FBB +:10492000FEE770B582B006460C462046FFF742FF10 +:104930000546202D05D10422314600A8FFF7DAFFF5 +:1049400006E0102D16D10222314600A8FFF7D2FF53 +:10495000002000E0401CA8420EDA015D7829F9D061 +:10496000009A2B465B1E1B1ADA4002F00102303916 +:104970008A42EFD0002076BD012076BDDFF8001618 +:10498000016006207047A0F10060B0F53E3F01D8FD +:104990000120704700207047F8B504460D460020FE +:1049A00000902068FFF7EFFF00281AD000A8FFF75B +:1049B000E5FF0646002700E07F1CB74211D20098B1 +:1049C00050F8371000EBC700406840422268520898 +:1049D00010EB4200FFF7A5FF0028EDD02F6001206B +:1049E000F2BD0020F2BDF8B50C46DFF898150A6D4F +:1049F0004B6D002559082E465F1B062F11D3482703 +:104A000007FB01273F6C874200D20D46B84200D217 +:104A10000B46E918490837467E1C1F2FECD300E0EF +:104A20006D1C9D4211D2482707FB05210E6CB04238 +:104A3000F6D34E6C8642F3D34022204605F0F4FABA +:104A4000002084F840000120F2BD40220FF20061F6 +:104A5000204605F0E9FA0020F2BDF0B591B0044619 +:104A600000250EE032590FF2F45100A805F0C2FA09 +:104A700000A8FFF79FFE024600A9381D05F0D4FAF2 +:104A80006D1C05EBC500C600305900280BD0371946 +:104A900000A9FFF7A8FF0028E4D0402200A9381D94 +:104AA00005F0C2FAECE711B0F0BDF8B507460C46C8 +:104AB0001546002630460090002F1ED0002C09D14C +:104AC000F2BD06EBC600C00057F8041B49084900B8 +:104AD0004151761C0C2E0FD200A93846FFF75CFF1F +:104AE000002807D13868FFF74EFF002802D13F1D8C +:104AF000BC42F1D2BC42E4D23046F2BD70B5DFF820 +:104B000088140A460B68D21A1368DFF88044A3425F +:104B100001D0002070BDDFF86C44121D22650968C9 +:104B2000091F4822B1FBF2F1616510F1030F02D0B9 +:104B300010F1130F0AD1DFF85854A86805F0AAFA4B +:104B40000646A86805F0B2FA811905E005F0BCFA3E +:104B5000054605F0BBFA4119DFF83854A069286012 +:104B600005F14802A06AFFF7A0FF2846FFF775FF8E +:104B7000012070BD0EB430B5CCB0044600A84FF48F +:104B80009671FFF7F5FD00254FAB22464FF4967165 +:104B900000A8FFF7F1FD00A8FFF70CFE044609E0AE +:104BA000DFF8E013C86D421CCA6500A9695C05F016 +:104BB000F5FA6D1CA542F3D34CB030BC5DF810FB88 +:104BC00038B50024DFF8BC53E8650FF29840FFF7D2 +:104BD000D1FFDFF8C40301680FF2AC40FFF7CAFF52 +:104BE000A86C0090AB6B6A6B296B0FF2B440FFF7B7 +:104BF000C1FFE96C0FF2E040FFF7BCFF6A69A969E9 +:104C00000FF2E840FFF7B6FF0FF2F840FFF7B2FFF0 +:104C100006E01018021D0FF20450FFF7ABFF641CF2 +:104C200004EBC400C200DB4811580029F1D10FF297 +:104C3000F840FFF79FFFA86D441E002505E0091806 +:104C4000BBA0FFF797FF641E6D1C3C2D09D2002C02 +:104C500000D53B24322000FB04F1D0480A5C002A36 +:104C6000EDD131BDCE48CF490A6802604A68426042 +:104C70008A688260CA68C2600A6902614A694261E0 +:104C80000A7E8261097F8161C7490A7882614A6828 +:104C900042628A688262CA68C2620A6902634A69B9 +:104CA00042638A698263CA69C2638A6EC0F88820D7 +:104CB000BE4A9369C0F89830D368C0F88C30136945 +:104CC000C0F890305369C0F894300B6FC0F89C3036 +:104CD0004B6FC0F8A0308B6FC0F8A430C96FC0F81C +:104CE000A810B3490968C0F8AC10B2490B68C0F805 +:104CF000CC304B68C0F8D0308B68C0F8D430CB686B +:104D0000C0F8D8300969C0F8DC105168C0F8E81064 +:104D10001168C0F8E410704770B506460C46994D0E +:104D20006FF01E01401A14D0083812D0001F05D0B1 +:104D3000001F0ED008380CD0001F10D104F1200045 +:104D40002862EFF3148040F00200E862286AA8624B +:104D500005E004F120002862EFF31480E862EFF32D +:104D600008806862EFF305802863EFF300806863D2 +:104D7000FFF7C6FDA863EFF31080E863EFF311803F +:104D80002864EFF313806864F1EE100AA864EE64FF +:104D9000002004E054F8201045F82010401C08289A +:104DA000F8D370BD70B5774CA16D3C2901D30021BB +:104DB000A165A56D3221794A01FB05260A46014607 +:104DC0003046FFF797FD002086F83100681CA0658B +:104DD00070BD70B5014674462046FFF79DFFFFF792 +:104DE00041FF2046FFF78AFE00F09AF8002832D1F2 +:104DF00000F034F805F072F9F32005F0E9F96E4897 +:104E00004FF00054002505E02178641C05F0C6F938 +:104E100030466D1C461CB5F5C03FF5D3532105F057 +:104E2000BDF95221304605F0B9F9741C41212046E4 +:104E300005F0B4F9641C4D21204605F0AFF95F4838 +:104E4000C046C04604F10D00FFF7BAFE05F04FF969 +:104E50005B4800F01FF8BDE8704054E510B505F060 +:104E60003DF9F32005F0B4F9564C3820206002E0FB +:104E70002068083020602068402807D2002105F013 +:104E80003CF90928F4D0FFF73EFDFCE7BDE81040EF +:104E900005F02DB938B5044605F020F9F32005F0EA +:104EA00097F93D480168204605F05CF9241DFF2173 +:104EB000204605F073F9641C404D6979204605F0E1 +:104EC0006DF9641CE978204605F068F9641C2979BD +:104ED000204605F063F9641C2978204605F05EF948 +:104EE000641C6978204605F059F9641CA9782046AD +:104EF00005F054F9F521601C05F050F9BDE831408A +:104F000005F0F5B880B505F0E9F8F32005F060F993 +:104F1000AA212D4805F042F9BDE8014005F0E7B8A7 +:104F2000002029490978F52900D1012070470000A7 +:104F300025730A0010B50446FFF73CFCC0B21428E4 +:104F400000DB1320024621462048FFF7D3FC4FF038 +:104F5000AC30007810BD80B500F049F8BDE80140E4 +:104F6000D1E480B5FFF7CEFF4FF4C83212490020DC +:104F7000BDE8084001F0A6BF0CED00E00400FA0512 +:104F800070790020881B0120FC4F0508FECAFECA6C +:104F9000A079002064E80020B47A002060B00020EE +:104FA000BC09012000ED00E020ED00E004E000E09D +:104FB000A0ED00E034EF00E000000608D42A012054 +:104FC000F4FF0708702B0120FFFF07087428012059 +:104FD00010B500F01BF80FF270142046FFF7EAFB43 +:104FE000024621460020BDE8104001F06BBF80B5AD +:104FF00001214FF4802003F00CF9012003F0D8FCCC +:1050000094210F20BDE8044003F075BE80B5012156 +:105010004FF4802003F0FDF8012003F0C9FC0021CB +:105020000F20BDE8044003F066BE10B50024012146 +:105030004FF4802003F0EDF8012003F0B9FC0F20BD +:1050400003F066FE942800D10124204610BD000024 +:105050004E6F2053796D626F6C0000003078253000 +:10506000387800000A0A0A0A3D3D204372617368DD +:105070002044756D7020496E666F726D6174696F42 +:105080006E203D3D0A0000004669726D77617265D1 +:105090002056657273696F6E203A2025640A0000FD +:1050A0000A49505352203D20307825782C20415019 +:1050B0005352203D20307825782C207850535220B0 +:1050C0003D20307825782C205046534352203D20F7 +:1050D000307825780A0000000A6661756C74206DCE +:1050E0006F6465203D203078257800000A50432009 +:1050F0003D20307825782C204C52203D20307825DA +:10510000780A00000A3C43726173682043616C6C4A +:1051100020537461636B3E0A0000000030782578EC +:10512000202025730A0000000A0A3D3D20526563D5 +:10513000656E74204C6F67204D657373616765738E +:10514000203D3D0A00000000534E414D5900000033 +:105150000000000038B5FFF7B6FBDFF830068468C2 +:10516000DFF8280600210171FFF7A7FB002C2CD0E7 +:105170002068002829D0607C2168497CC0B2814227 +:1051800023D1256800E00D002968002903D04A7C5E +:10519000C0B28242F7D0FFF796FBDFF8F005006956 +:1051A000A04203D1DFF8E40521680161E0692168CC +:1051B0000160C861E56129682160002900D0CC61E7 +:1051C0002C6095F8410085F84000FFF776FB31BD73 +:1051D00010B5FFF778FBDFF8B8050468DFF8AC0519 +:1051E000006A201A012832DADFF8A005046A04E018 +:1051F000DFF898050462FFF760FBDFF89805007898 +:10520000C00722D5FFF75FFBDFF88805007880072D +:10521000EED5DFF88005007810F0FD00DFF874159A +:105220000870FFF74AFBDFF86405006A8442FAD091 +:10523000DFF858050462DFF858050068401CDFF805 +:1052400050150860DFF844154862FFF73CFB10BDBD +:1052500038B504000020A071206A10F57A60606201 +:10526000E069002802D02000E1698847FFF725FBAC +:10527000E56809E0E868616A401A002801D5E86835 +:105280006062FFF71AFB2D68002D1AD0FFF71BFB99 +:105290002069002804D0687C2169497C884212D3A7 +:1052A000287C4007EDD5E868216A401A0128E1DA38 +:1052B000280000F09EF9FFF706FB287C0028D9D1D2 +:1052C00001E0FFF700FB31BD70B504000020607005 +:1052D0000120207004F0F8FE0078C0B2CD2802D082 +:1052E0007D20FFF783FAA06800280CD0A068406CEE +:1052F000002808D0A068406C01680800002802D08F +:10530000A0684068884794F8290000280BD0A0685E +:1053100094F8281080F84010DFF870040079002815 +:1053200001D0FFF717FFDFF870040078002823D0C2 +:10533000DFF868040068DFF85414096A401A00288E +:1053400004D5DFF854040021017015E0FFF7BBFA23 +:1053500005F002F80500FFF7B0FAA068002808D0B1 +:10536000A068406B2818DFF838140968401AA16853 +:105370004863DFF82C040560A068002808D0A06806 +:10538000007C002804D1A068006B401CA168086361 +:10539000206900282BD003E030682061FFF78DFAE8 +:1053A000FFF791FA2669002E27D0357CEDB2002D4B +:1053B00023D0680710D5F068216A411A012906DA5E +:1053C000300000F016F9307C002805D10FE0616A4A +:1053D000411A002900D56062EDB215F0FB001028DB +:1053E000DAD1B06880684068007C0028D4D1FFF72B +:1053F0006AFA02E02000FFF72BFFA0790028F9D11C +:10540000DFF890030078C00701D5FFF7E1FE002028 +:1054100060712069002839D02069007C002805D0FF +:105420002069806880684068A06001E02069A06011 +:10543000A06890F84C00642802D08020FFF7D6F9CD +:10544000A068806A0078CD2802D07820FFF7CEF9D6 +:10545000A068406C002808D0A068406C4168080033 +:10546000002802D0A06840688847A06890F84000F3 +:1054700084F8280084F82900DFF810038068C06AE7 +:10548000401CDFF808138968C8620BE0002084F82C +:105490002900002084F828000020A060002020704F +:1054A000FFF70BFA200070BD80B504F083FFDFF832 +:1054B000F4120978002806D0022810D009D3042855 +:1054C00015D010D314E0002902D0A320FFF78EF9E5 +:1054D00011E0002902D1A420FFF788F90BE0A620F3 +:1054E000FFF784F907E0A720FFF780F903E002E067 +:1054F000A820FFF77BF901BD10B504F05BFF0400A5 +:10550000DFF8A0020078002802D0A020FFF76EF993 +:10551000002C05D0022C08D003D3032C09D00CE0BA +:105520000EE0A420FFF762F90AE0A620FFF75EF97B +:1055300006E0A720FFF75AF902E0A820FFF756F986 +:1055400010BD80B504F036FF002805D0022808D031 +:1055500006D3032809D00CE0A320FFF747F90BE09E +:105560000AE0A620FFF742F906E0A720FFF73EF980 +:1055700002E0A820FFF73AF901BD80B5DFF80C0280 +:105580000078002802D19720FFF730F9DFF8FC01FE +:105590000078401EDFF8F4110870C0B2002827D14F +:1055A000DFF8E8014068002822D0FFF78CF9DFF827 +:1055B000DC01406800280BD0DFF8D0010121017028 +:1055C000DFF8C801FFF769F9DFF8C00100210170B9 +:1055D000DFF8B8014078F021084202D09920FFF7A7 +:1055E00005F9DFF8A8014078002801D1FFF765F937 +:1055F00001BD10B5816800290CD0DFF89011096A4F +:10560000C16081680A684968002A00D051600A6058 +:1056100000218160017C11F003010174C9B20029ED +:1056200045D1DFF868110969002929D1DFF85C113B +:105630000861DFF85801007800280CD1DFF84C0130 +:1056400001210170DFF84401FFF727F9DFF83C0181 +:105650000021017003E0DFF8340101214171DFF81E +:105660002C014078F021084202D09920FFF7BEF8C3 +:10567000DFF818014078002801D1FFF71EF916E085 +:10568000427C4B7CD2B29342D0D38142D1D04B7C6E +:10569000D2B29A420BD10300FFE71B68002BDED089 +:1056A0005C7CD2B2A242DAD18B42F6D1BEE710BD09 +:1056B00010B50400627C35480078401C33490870FE +:1056C000394800E008000168002903D04B7CD2B2C1 +:1056D0009A42F7D32160E061046000290AD0CC61CE +:1056E000487CD2B2904202D194F8410000E0002000 +:1056F00084F84000207C002812D1FFF7E4F8200055 +:10570000FFF777FF21484078F021084202D0992026 +:10571000FFF76CF81D484078002801D1FFF7CDF85D +:10572000FFF72BFF10BD10B5184804781748007814 +:10573000401C164908701548FFF7AFF8134804706D +:1057400012484078F021084202D09920FFF74EF825 +:105750000E484078002801D1FFF7AFF810BD10B512 +:1057600004F02EFE09480121017004F0ADFC040094 +:105770006846C046021B203A012A03DBCD212000E7 +:10578000FCF76CFD09480121017010BDA0790020D3 +:10579000B02B0120022C0120032C0120C82B01205A +:1057A000B42B0120042C0120AC790020062C012010 +:1057B000506002604160086070470A68F8E748601E +:1057C0000160704701684068F9E7F8B50600DFF846 +:1057D0006C5802D505F15800F2BD05F158040020BF +:1057E000296F00E0096805F17002914204D00C466F +:1057F000A2689642F6D10120002840D1A86FD0F8C7 +:105800008070182004F000FE0446A660002F05D02A +:10581000B74203D2B6FBF7F0784300E03046E060D1 +:10582000002F02D0B74200D23E46266100202075EC +:10583000DFF80C683078401C30707078F021084236 +:1058400002D09920FEF7D2FFFFF73DF87078401C98 +:10585000707005F170012046FFF7AFFF7078F021FE +:10586000084202D09920FEF7C1FF7078401E707088 +:10587000C0B2002801D1FFF720F8FFF77EFE2046D6 +:10588000F2BD38B5044694F91400002829D1DFF898 +:10589000B0572878401C28706878F021084202D060 +:1058A0009920FEF7A3FFFFF70EF86878401C687098 +:1058B0002046FFF787FF204604F0BEFD6878F02100 +:1058C000084202D09920FEF791FF6878401E687068 +:1058D000C0B2002801D1FEF7F0FFBDE83140FFF76C +:1058E0004CBE31BDF8B5044608466FF00045FFF7E1 +:1058F0006CFF064694F9050094F90410814214D116 +:10590000C01C800004F080FD074694F905000128C2 +:1059100007DB820021683846FEF7ECFF206804F0C0 +:105920008BFD27606079C01C607194F90400411CF4 +:105930002171216841F82060DFF80807864202D013 +:10594000307D401C3075002008E0216851F820109F +:105950008A68954201DB1546A160401C94F9041049 +:105960008842F2DBF1BDF8B504466FF00046DFF87F +:10597000CC2602F1580502F158004FF0FF33002702 +:1059800004E0664501DB664675467F1C94F904C059 +:1059900067450DDAD4F800C05CF827E0DEF808C0EF +:1059A000002BEED58C45ECD170463B465BB2ECE764 +:1059B000002B11D4BCF1010F0EDB06E0216801EBD6 +:1059C0008306766841F823605B1C94F904104E1E30 +:1059D000B342F3DB491E217102F15801884204D021 +:1059E000017D491E0175FFF74CFFA560F1BD10B4A4 +:1059F000C26A836B406C9C68002C02D56FF0004338 +:105A000000E01B698468002C02D56FF0004000E0C4 +:105A10000069984200DD1846D2685143884201DB94 +:105A2000012000E0002010BC704738B5DFF80C16EC +:105A30008A6FD36E012490F90850AC402343D3669B +:105A400001F66C11FFF7B9FE012032BD10B5DFF889 +:105A5000EC15896FCA6E012390F90840A3409A4360 +:105A6000CA66FFF7AFFE012010BD01207047F8B5F0 +:105A7000044615461E4604F12400FFF733FF06EBEB +:105A8000460004EB8007294607F13000FFF72AFFA4 +:105A900097F9340000903346627A94F908100FF2B7 +:105AA000A850FCF77FFCF1BDF8B5044615461E462C +:105AB00004F12400FFF757FF06EB460004EB8007D4 +:105AC000294607F13000FFF74EFF97F934000090A8 +:105AD0003346627A94F908100FF27C50FCF762FCAE +:105AE000F1BDC16A8A68012A09DB0969012906DA60 +:105AF000006D002801D5002070470220704700206B +:105B0000704701EB410200EB8201896B8A68012A30 +:105B100009DB0969012906DA006D002801D500209A +:105B200070470220704700207047002900D5D8E751 +:105B3000E7E7012900DA012113460A4697E7012920 +:105B400000DA012113460A46AEE7DFF8F004C06A26 +:105B5000417A481E8041C00F704713464FF0FF3214 +:105B6000114684E713464FF0FF3211469CE780B59B +:105B7000DFF8C8040068417A002902D1006E40684D +:105B80008047012002BD80B5FFF760FFDFF8AC045D +:105B90000068417A002902D1006E806880470120A8 +:105BA00002BDB1F57A7F01DC4FF47A7113460A46E3 +:105BB0004FF4FA715BE7B1F57A7F01DC4FF47A714B +:105BC00013460A464FF4FA716EE710B504460029F1 +:105BD00022D5E06A816801291CDB0069012819DAF5 +:105BE00002212046FFF703FF002813D194F9540047 +:105BF00010F1010F04D1002084F85400012010BDE1 +:105C0000002807D1012060774FF0FF3084F854005E +:105C1000022010BD002010BDBDE8104071E74FF01C +:105C2000FF3280F8542000E7C92900DAC821134662 +:105C30000A4642211BE7C92900DAC82113460A4651 +:105C4000422131E710B50446002927D5E06A816872 +:105C5000012921DB006901281EDA03212046FFF714 +:105C6000C6FE002818D194F95400014611F1010F25 +:105C700004D1002084F85400012010BD002803D175 +:105C8000012084F8540010BD012905D14FF0FF30E8 +:105C900084F85400022010BD002010BDBDE8104063 +:105CA0002FE74FF0FF3280F85420DFF89023926FF7 +:105CB000D2F88020C83252420265B6E6DFF87C2373 +:105CC000926FD2F88020C83252420265ADE6134688 +:105CD0004FF0FF321146CAE613464FF0FF3211462D +:105CE000E2E680B5FFF7A1FEFCF7DBFA00210175C3 +:105CF000012002BD80B5FFF7A9FEFCF7D2FA002112 +:105D00000175012002BD00002DE9F0410C46CB4D8C +:105D100055F82060307206F154070FF24C313961AA +:105D2000152800F22281DFE810F01600260032006C +:105D30004A003E00560066007600A60086009600E7 +:105D4000B600C600D400E100ED00FB00080115011B +:105D500015011501150106F10800062141760A21F9 +:105D6000817605F67411416040F2DC5181600FF2DA +:105D700014303861F9E006F10800062141760A2165 +:105D8000817605F65071416064218160EDE006F195 +:105D900008000C2141761021817605F6C87141601A +:105DA00010218160E1E006F10800072141760B2116 +:105DB000817605F6BC7141600B218160D5E006F16A +:105DC0000800062141760A21817605F6D8714160E6 +:105DD0000A218160C9E006F10800062141760A2106 +:105DE000817605F6E47141604FF4FA7181600FF23B +:105DF000E8203861B9E006F1080014214176182145 +:105E0000817605F58851D8314160182181600FF203 +:105E100038303861A9E006F10800022141760621F8 +:105E2000817605F590510C314160062181600FF2B9 +:105E3000E020386199E006F108000A2141760E2140 +:105E4000817605F58851FC3141600E2181600FF2A9 +:105E5000A420386189E006F108000121417605217E +:105E6000817605F5905114314160052181600FF272 +:105E7000BC20386179E006F108000521417609214E +:105E8000817605F58851F0314160092181600FF27A +:105E90002C20386169E006F10800062141760A21CC +:105EA000817605F590511C3141600A2181600FF225 +:105EB000F010386159E006F1080001214176052112 +:105EC000817605F590512831416040F2866181600C +:105ED0004BE006F10800012141760521817605F5A8 +:105EE000C051B8314160052181603EE006F10800F3 +:105EF0000C2141761021817605F5C65141601021B3 +:105F0000816032E006F10800112141761521817689 +:105F100005F5C051D031416041F66631816024E021 +:105F200006F10800112141761521817605F55051C1 +:105F3000383141601521816017E006F10800042125 +:105F400041760821817605F5C051B03141600821C4 +:105F500081600AE006F10800012141760521817681 +:105F600005F6B47141600521816006F10800002149 +:105F70000175417581750176C1600161417006F15D +:105F800028080846C8F828004FF0FF3086F854006B +:105F90007880062206F15800FCF760F9002010E036 +:105FA00000EB400106EB8101002281F834203431FE +:105FB0004A7005F158024A6006EB800100228A64AB +:105FC000401C0228ECDB002086F8280088F801003D +:105FD00005F15800C8F80400FC60BDE8F08110B578 +:105FE000164C04F039FAA067002006E0682111FB86 +:105FF00000417C3144F82010401C1628F6DB4FF09D +:10600000FF30206660660020A06605F0B1FC06F057 +:106010000FFB06F0A0FF07F01BFF09F0B9F808F02E +:1060200029FA08F092FC09F01DF909F048FC09F082 +:106030001EF9BDE8104009F02BB90000084000200F +:10604000A079002060400020414420256420256480 +:106050002025642025640000524D202564202564FD +:1060600020256420256400006B5A00082B5A000884 +:106070006B5A00084D5A0008335B00083F5B00086C +:106080002B5B00084B5B00082B5A00084B5B000899 +:106090004D5A0008335B00083F5B00082B5B00088B +:1060A0006F5B00082B5A00086B5A0008875B0008DA +:1060B0005B5B0008655B00082B5B00086B5A0008FF +:1060C0001F5C00086B5A00084D5A0008A35B0008CB +:1060D000B75B0008CB5B00086B5A0008A35C0008A4 +:1060E0006B5A00084D5A0008295C0008375C00080C +:1060F000455C00086B5A0008BD5C00086B5A00083C +:106100004D5A0008335B00083F5B00082B5B00081A +:106110006B5A0008E35C00086B5A0008F55C000845 +:10612000CF5C0008D95C00082B5B00086B5A0008A4 +:106130002B5A00086B5A00084D5A0008335B0008C0 +:106140003F5B00082B5B00086B5A00082B5A0008C5 +:106150006B5A00084D5A0008CF5C0008D95C000853 +:106160002B5B0008DFF8300E007870472DE9F04116 +:106170008AB004F071F90446DFF8205E2E6842E030 +:1061800096F9080007283DD00B283BDA062839D0BD +:1061900006F10807B86C002803D5D4F88010081859 +:1061A000B8644FF0FF313046FA6D926990478046EF +:1061B000B8F1010F04D197F84C00B96D096988470F +:1061C000B8F1020F0BD1797E38697A688018BA6D00 +:1061D00052699047002802D0304609F08FFC002118 +:1061E0003046FA6D92699047022801D10120B875B6 +:1061F00001213046FA6D92699047022802D130465B +:1062000009F028FD3668AE42BAD1D4E91C01002954 +:1062100001D100280CD00A208DF8080002208DF84A +:106220000000D4F88000ADF8220000A801F0EEFDD7 +:1062300001200AB0BDE8F08130B585B004460D46B6 +:10624000CA208DF800002888ADF801000220ADF8C2 +:106250000300BDF80100001D04F0D6F8CDF80900D8 +:1062600002220DF10301FEF745FB02222946DDF86B +:106270000900801CFEF73EFB2A882146DDF8090054 +:10628000001DFEF737FB0020288000A9DFF8100D65 +:1062900009F090FF05B030BDC0F54060322801DA4A +:1062A000012070470020704780B5FBF7FAFF407B64 +:1062B000002804D009F0A8FBDFF8E81C086001BD45 +:1062C00080B509F0A1FBDFF8E01C086001BDDFF834 +:1062D000D80C0068704718B400F10C030422DFF8F2 +:1062E000C81C5C7DDB68C0681818201818BCFEF755 +:1062F00001BB30B41488651C1580052565541488CD +:10630000651C1580635413885C1C1480007A5854F3 +:1063100030BC7047F8B50E4614461D4629884A1C05 +:106320002A8037220A5529884A1C2A80027A0A556F +:1063300000F108077A7E7868311828880019FEF77E +:10634000D9FA2888797E40182880787E7968711873 +:106350004058DFF8501C0968401A0090042200A938 +:1063600028880019FEF7C6FA2888001D288080B208 +:10637000FFF792FF002803D029462046FFF75CFF75 +:10638000F1BD2DE9F04104460D4616461F46DDF8E5 +:10639000188008E043463A4629462046FFF7BAFFF0 +:1063A00094F822002D18B542F4DBBDE8F081F8B571 +:1063B000044615461E46069F00972269FFF7E1FF37 +:1063C0002069854206DA009733462A460021204696 +:1063D000FFF7D7FFF1BD00F110018A688B7CD2185E +:1063E0008A600069824201D10020886000208873A1 +:1063F000704770B582B000F1140674684569002DCD +:1064000007D500920B462246B17B6118FFF7CFFFFC +:1064100073BDAC4200920B462246294602DAFFF7D2 +:10642000C6FF73BDFFF7ADFF73BD70B504460D46E3 +:106430001646FFF7DEFF0123324629462046FFF7C6 +:1064400058FFA069606170BD2DE9F84304460D4610 +:10645000164604F001F88046FBF723FF81462046EC +:10646000FFF739FF04F10807386C012849DB99F878 +:106470000A00002821D0B87D002872D0002078645E +:10648000B87E3A69F9688B1A834205D0002910D189 +:10649000BB689B1A83420CD13B7E002B06D0009632 +:1064A0002B4682182046FFF782FF02E04FF0FF30B4 +:1064B000F8602046BDE8F2438DE7786CD8F880108C +:1064C000401A7864012815DA386C78643246294617 +:1064D0002046FFF78EFFB87D002808D033462A46B5 +:1064E00039692046FFF716FF2046FFF774FF386929 +:1064F000F86036E0B87D002833D02046BDE8F2438E +:1065000069E7B87D00282CD094F9080099F80A10A2 +:1065100000290FD007281FD133462A463969204663 +:10652000FFF7F8FE7A7894F908100FF23C00FBF7B9 +:1065300039FF11E0092809D194F85E10012905D12D +:106540000FF23400BDE8F443FBF72CBF33462A4674 +:1065500039692046FFF7DEFE2046FFF73CFF386929 +:10656000F860BDE8F1830000415020537573202589 +:106570006420256400000000233E6C75785F736121 +:106580007420256400000000F8B504460D46DFF8CD +:106590000C6A376805E02A4621463846FFF754FF63 +:1065A0003F68B742F7D1F1BD2DE9F04104460D46F1 +:1065B000DFF8346CF76907F10C0898F81510D8F873 +:1065C0000C00FA688018D8F85420526990470028C7 +:1065D0000AD0012088F81200787A002804D02A46D0 +:1065E00021463846FFF730FFB66906F10C07797D82 +:1065F000F868F26880187A6D52699047002809D0CF +:106600000120B874707A002804D02A46214630460A +:10661000FFF71AFF0120BDE8F0810288D21C02803A +:106620000A80704780B50B889B1AADF80030BDF822 +:106630000030002B09D01018012100F8031C0222A1 +:1066400000A9801EFEF756F901BD0888C01E08800B +:1066500001BD2DE9F04FADF64C1D04460D4603F08B +:10666000FBFE0746FBF71DFE804610A840F608110A +:10667000FEF77EF800208DF8020006A82821FEF71C +:1066800077F801A81421FEF773F80020ADF8000098 +:106690000646D7E91C01002902D1002800F07483C6 +:1066A00098F909000AF059FA002800F06D8300A952 +:1066B0002846FFF7B2FFB0461CE0D7E91C0142466E +:1066C0000AF05AFC00F0010011F0000101D100288D +:1066D0000ED008EB8800DFF8141B01EBC00292F922 +:1066E0000900012804D10DF1020110A8126A904797 +:1066F00008F10108B8F12C0FDFDB37461AE02888D3 +:10670000411C298099F8021001552888FFF7C4FD23 +:1067100000280DD0BDF8002029462046FFF782FF53 +:1067200029462046FFF788FD00A92846FFF775FF98 +:106730007F1C7FB29DF80200874280F21D8329886A +:10674000481C288040F2211010FB07F010AA825C40 +:106750000A5529884A1C2A8010AA00EB020898F8DA +:10676000010008552888411C298008F1010999F881 +:106770000110015599F8010003281ED0092800F0E6 +:1067800049810C2800F023811A2800F042821B283E +:1067900000F056811C2800F070821D2800F06381F3 +:1067A0001E2800F05A82252800F09982262800F041 +:1067B000D382282800F0AE82A1E798F801000328D0 +:1067C00005D12888411C298099F802100155288894 +:1067D000411C298099F80310015599F80300C0283D +:1067E0000DD1B8F83020D8F8321028880019FEF7FB +:1067F00081F82888B8F830100818288085E7711CBF +:1068000000064ED401A808F1040252783254C9B2ED +:1068100098F806200A54491CC9B200220A544A1C9E +:1068200008F20601D2B24B781354521CB8F80E305D +:10683000D2B21E0A1654521CD2B21354521C08F281 +:106840000E03D2B29E781654521CD2B2DB78135487 +:10685000521CD2B298F812301354521CD2B298F88B +:1068600013301354521CD2B28B781354521CD2B230 +:10687000C9781154511CC9B298F80A200A54491C0D +:10688000C9B298F80B200A544E1CF6B2324601A940 +:1068900028880019FEF72EF8288850FA86F02880FC +:1068A00033E7D8F8052006A8130C3354C9B2130AED +:1068B0000B54491CC9B20A54491CD8F80920C9B262 +:1068C000130C0B54491CC9B2130A0B54491CC9B20E +:1068D0000A54491CD8F80D20C9B2130C0B54491C9A +:1068E000C9B2130A0B54491CC9B20A54491CD8F83E +:1068F0001120C9B2130C0B54491CC9B2130A0B5412 +:10690000491CC9B20A54491CD8F82720C9B2130C33 +:106910000B54491CC9B2130A0B54491CC9B20A547E +:106920004A1C08F22701D2B20B791354521CD2B27E +:106930004B791354521CCB88D2B21E0A1654521CE7 +:10694000D2B21354521CD2B2097A1154511CD8F845 +:106950001520C9B2130C0B54491CC9B2130A0B54AD +:10696000491CC9B20A54491CD8F81920C9B2130CE1 +:106970000B54491CC9B2130A0B54491CC9B20A541E +:10698000491CD8F81D20C9B2130C0B54491CC9B2BC +:10699000130A0B54491CC9B20A54491CD8F82120C7 +:1069A000C9B2130C0B54491CC9B2130A0B54491C2D +:1069B000C9B20A544E1CF6B2324606A928880019FC +:1069C000FDF798FF288850FA86F028809DE608F1A8 +:1069D0000301B1F90300C0F3072242EA0020A1F845 +:1069E0000300B1F90700C0F3072242EA0020A1F832 +:1069F0000700B1F90500C0F3072242EA0020A1F820 +:106A00000500092228880019FDF774FF288809303D +:106A100028807AE62888034698F80110032909D1CE +:106A2000022208F103011819FDF764FF2888801C71 +:106A300028806AE6401C288099F80200185564E610 +:106A40002888411C298099F80210015598F8010006 +:106A500005287FF45AAE2888411C298008F10401DA +:106A60004978015551E608F1030998F80100012819 +:106A700040F0BF802888411C298099F804100155F6 +:106A80004FF0000A9CE01B2010FB0A9BDBF80C2057 +:106A9000DBF808100FF2F820FBF784FCDBF8180095 +:106AA000010221F0FF11000A00F0FF100843CBF8AB +:106AB00018004FEA3040CBF8180004220BF11801FF +:106AC00028880019FDF716FF2888001D2880DBF8AC +:106AD0000800010221F0FF11000A00F0FF10084336 +:106AE000CBF808004FEA3040CBF8080004220BF145 +:106AF000080128880019FDF7FDFE2888001D288060 +:106B0000DBF80C00010221F0FF11000A00F0FF1079 +:106B10000843CBF80C004FEA3040CBF80C000422BD +:106B20000BF10C0128880019FDF7E4FE2888001DF0 +:106B30002880DBF81000010221F0FF11000A00F0AC +:106B4000FF100843CBF810004FEA3040CBF810009C +:106B500004220BF1100128880019FDF7CBFE2888CC +:106B6000001D2880DBF81C00010221F0FF11000A43 +:106B700000F0FF100843CBF81C004FEA3040CBF880 +:106B80001C0004220BF11C0128880019FDF7B2FE3D +:106B90002888001D2880BBF81600010A41EA002061 +:106BA000ABF8160002220BF1160128880019FDF738 +:106BB000A1FE2888801C28800AF1010A5FFA8AFA5F +:106BC00099F804008245FFF65EAFB8F81B21D8F8AB +:106BD0001D1128880019FDF78DFE2888B8F81B11B3 +:106BE00008182880B8F81B110FF2B410FBF7DAFB75 +:106BF0008BE505287FF489AD2888411C298099F808 +:106C0000021001552888411C298099F8031001556C +:106C10007BE508F1030198F80100032805D12888D5 +:106C2000421C2A8098F80A200255D1F8010002027D +:106C300022F0FF12000A00F0FF101043C1F801001B +:106C40004FEA3040C1F80100072228880019FDF7FB +:106C500051FE2888C01D288057E508F103010888E7 +:106C6000020A42EA00200880022228880019FDF763 +:106C700041FE2888801C288047E508F1030098F829 +:106C8000011001297FF441AD99F80210012918D1B2 +:106C900029884A1C2A8000780855B8F80420D8F8BA +:106CA000061028880019FDF725FE2888B8F804107A +:106CB00008182880B8F804100FF2F800FBF772FBF0 +:106CC00023E502297FF421AD29884A1C2A80027815 +:106CD0000A5529884A1C2A80C079085515E5288854 +:106CE000411C2980B9F8021001552888411C2980CF +:106CF000B9F9021009120155B9F90220D8F80510A6 +:106D000028880019FDF7F6FD2888B9F9021008183F +:106D10002880FAE42888411C2980B9F8021001551E +:106D20002888411C2980B9F90210091201552888C8 +:106D3000411C298008F1040149780155B9F9022064 +:106D4000D8F8061028880019FDF7D4FD2888B9F96D +:106D5000021008182880D8E408F103010888020A04 +:106D600042EA00200880022228880019FDF7C2FDAF +:106D70002888801C2880C8E4BDF8002029462046C9 +:106D8000FFF750FC09F017FF0DF64C1DBDE8F08F22 +:106D90004C54204E4D4720256420256400000000FF +:106DA0004F4A483A20415442442073697A653A2058 +:106DB000256400004F4A483A2041504452207369EC +:106DC0007A653A20256400002DE9F04105460E461B +:106DD000FBF767FA0746DFF8BC4D2078401C2070AF +:106DE0006078F021084202D09920FDF7FFFCFDF702 +:106DF0006AFD6078401C607097F81880B8F1000F49 +:106E000026D03088404480B2FFF746FA002803D0ED +:106E100031462846FFF710FA3088411C31800321A3 +:106E200041553088411C318000F80580424607F109 +:106E3000190130884019FDF75DFD308840443080ED +:106E4000FF22002107F11900FBF708FA002038762D +:106E50006078F021084202D09920FDF7C7FC6078E5 +:106E6000401E6070C0B2002801D1FDF726FDBDE8CC +:106E7000F041FEF782BB38B504460D46FBF711FA28 +:106E8000817A002909D1417B002906D129884A1C31 +:106E90002A8006220A550121417331BD38B50446C6 +:106EA0000D46288800280CD02046FFF78DFF294684 +:106EB0002046FFF7E0FF29462046BDE83440FFF7B3 +:106EC000BBB931BD14B585B0049101A900221346A8 +:106ED00014461CC10A21ADF8001004218DF80410DD +:106EE0008DF805000A4605A90DF10600FDF702FD23 +:106EF000042204A90DF10A00FDF7FCFC00A901A879 +:106F0000FFF79AF906B010BD80B5FBF7CAF94FF448 +:106F10009671FBF7B2FB07208DF802000120ADF857 +:106F2000000000A90DF10200FFF786F901BD2DE96F +:106F3000F041DFF8644C6068002828D0218888423E +:106F40001FD003F061FA054666682788A6EB07089C +:106F50001FFA88F84246381900F108012846FDF763 +:106F6000C9FC3A4604F1080108EB0500FDF7C2FC34 +:106F70003246294604F10800FDF7BCFC284603F020 +:106F80005BFA626804F108010520FFF79BFF00200F +:106F900060602080BDE8F081FE2B01207449002054 +:106FA00044A40020A02B0120A42B01202DE9FC41AA +:106FB00005460F469046FBF774F90026D5F80910F0 +:106FC0000C1D2A781146012960D00F2933D03529AC +:106FD00035D0802900F08680812900F08D808229BB +:106FE00000F08A80852900F08780862900F084805F +:106FF000882900F081808A2900F086808B2900F0A2 +:107000009F808C2900F0AB808D2900F0B380DD29B2 +:1070100000F0BD80DF2900F0D380F02918D0F429DA +:1070200021D0F62927D0F82945D0F92933D0FF29D6 +:1070300000F0A5805DE0807D207001205AE00120F5 +:1070400007F007FE304607F008FE0120207051E0EF +:107050000422DFF8481B2046FDF74CFC0120FDF719 +:10706000EEF9012046E0042200F110012046FDF770 +:1070700041FC01203EE0032221463046DFF8203B60 +:107080009B681B6E1B6A9847012033E0204609F07D +:10709000A1FF01202EE0B5F80120B5F80300C010D3 +:1070A000C0EB0011D5F8050000EB81112046FDF77B +:1070B00021FC01201EE03046ADF804000120697972 +:1070C000012900D10320FCF73CFCFCF776FCADF86D +:1070D0000400FCF789FC022201A92046FDF70AFC06 +:1070E000012007E0D5F8050020702146304608F061 +:1070F0005FFE3046BDE8F68130462070214602F042 +:107100007F0008F055FEF4E701202070DFF8900AB8 +:1071100045683746287F002801D13046EAE7687A7B +:10712000002803D1286E4068804707462046296E14 +:10713000C9698847002FDCD0286E80688047D8E76F +:107140000120B5F80310C1F3C101091D884040F0CA +:10715000020020702146012008F02AFEC9E70178CC +:107160002170C17861704179A1708079E07001204F +:107170002071BFE7204609F041FF0646B9E704F158 +:107180000802211D2046FDF709FA0120B2E76879BF +:10719000DFF80C1A51F82050687A00280CD04246CB +:1071A00039462846FFF741F9DFF8F819082009F0B9 +:1071B000E7FF0120207001E030462070012099E7B0 +:1071C0006879DFF8DC1951F82050286995F8221009 +:1071D00090FBF1F0401E0090042200A92046FDF72C +:1071E00089FB012086E700000840002018BC002031 +:1071F000F0B593B00646FBF754F8054603F02CF9BA +:10720000D6F809100C1D3178002208924FF0FF3299 +:10721000099217460A46312A00F00C81322A00F002 +:107220001381332A00F01F81342A00F02681A12A1D +:1072300000F05081A22A00F06F81A42A00F07A8128 +:10724000B12A00F0EF82B22A00F06184B82A00F07F +:107250008C81C12A00F0B481CD2A7BD0CE2A00F0E7 +:107260009280D02A35D0D12A2BD0D22A36D0D32A18 +:107270003DD0D42A3FD0D62A49D0D72A47D0D82AC1 +:107280004DD0D92A4BD0DB2A00F00F81DC2A00F048 +:107290001381F12A4BD0F22A00F08E80F52A00F0FB +:1072A000A280F72A00F0B580FA2A00F05A84FB2A5F +:1072B00000F05984FD2A00F0A180FE2A00F06284CB +:1072C000B5E000212846FBF716FAFFF730FE012053 +:1072D000AEE00020FDF7B3F80120A9E00121284627 +:1072E000FBF709FA012009F09BFF0120A0E0002034 +:1072F000A87201209CE00120A87200206873E87A3F +:10730000002802D1012009F08BFF012090E0D6294E +:1073100001D1012000E00020E872012088E0D92995 +:1073200001D1012000E000202873012080E000212D +:107330000CE00A180B5D82F88430022905D10A5D41 +:1073400080F887200A5D80F88820491C0329F0DB3B +:1073500001206DE0002512E0DFF84408466806EBE6 +:107360004506022204EB450106F15800FDF7C2FA7A +:10737000B6F95810DFF83008FBF714F86D1C032D30 +:10738000EADB012054E0002512E0DFF8140806686B +:1073900006EB4506022204EB450106F15800FDF715 +:1073A000A9FAB6F95810DFF80408FAF7FBFF6D1CCC +:1073B000032DEADB01203BE0297C090601D40120F2 +:1073C00036E02178A0F88A106178A0F88C100221AC +:1073D0002046DFF8CC27D269126E926990470028C8 +:1073E00025D0012024E0032221460120DFF8B03718 +:1073F0009B681B6E1B6A9847012019E01B222146DF +:107400000720DFF89C379B681B6E1B6A984701209A +:107410000EE0DFF88C078669306E806880470028B0 +:1074200005D0012221460520336E1B6A98470020B3 +:1074300013B0F0BD07F015FC012801D10120F7E7DA +:10744000204607F037FBF2E707F00BFC012801D1DB +:107450000120EDE7204607F0B2FB20780028E6D0B7 +:1074600007F0E0FBE3E707F0FCFB012801D1012076 +:10747000DEE7207807F0DDFBD9E707F0F2FB012813 +:1074800001D10120D4E74FF480510020FBF76CF9C3 +:10749000012007F05FFA012007F0DFFB207807F0FA +:1074A000E3FB07F0CCFA0120C2E7D6F80510DFF8BD +:1074B0000007FAF777FFBAE7FDF732FD002802D0A0 +:1074C000FDF74FFDB3E7FDF7B0FD0028AFD0FDF7A6 +:1074D0007FFDACE794F900500422611C08A8FDF779 +:1074E00009FAB6F80100062806DB0422611D09A886 +:1074F000FDF700FA94F90970042D04D1DFF8A00615 +:107500000069A17A81720097099B00220899284698 +:1075100008F0A8FC20708AE794F900500422611C4E +:1075200008A8FDF7E7F900231A460899284608F04D +:10753000FEFC7DE794F900500422611C08A8FDF7C9 +:10754000D9F9B6F80100062806DB0422611D09A856 +:10755000FDF7D0F994F909700097099B002208996A +:10756000284608F027FD207061E7207801460329AE +:1075700006D01A2911D0252913D0282915D018E0B2 +:1075800060788DF80A00012805D1A0788DF80B00ED +:10759000204600F0F1FB01204AE7204600F0ECFB1A +:1075A000F9E7204600F0E8FBF5E7204600F0E4FBB1 +:1075B000F1E794F9011040B209F09FFBC0B237E740 +:1075C000207801460E3908D0091F03291CD9091F4C +:1075D00037D0491E00F09B800EE10E208DF8080088 +:1075E00060788DF80A00A1788DF80B10E2788DF89C +:1075F0000C200023ADF80D3052B249B240B2FBF777 +:10760000CBF800F0B0FBF7E08DF80800122802D1AB +:1076100061788DF80A10132802D161788DF80B106B +:10762000142802D161788DF80C10152802D16078E9 +:107630008DF80A0062782178DFF87805FAF7B2FE53 +:10764000DAE06078A178090401EB0060E17800EBF2 +:10765000012021794018CDF80A006079A179090448 +:1076600001EB0060E17900EB0120217A4018CDF8B0 +:107670000E00607AA17A090401EB0060E17A00EB68 +:107680000120217B4018CDF81200607B8DF8160098 +:10769000A07B8DF81700E07B8DF81800207C8DF81A +:1076A0001900607C8DF81A00A07CE17C11EB0020B1 +:1076B00000B20146ADF81B10217D00EB0120617D79 +:1076C0004018ADF81D00A07D8DF81F00DDF80A0000 +:1076D000002807D1DDF80E00002803D1DDF81200E4 +:1076E000002809D00DF10A0184B068461622FBF784 +:1076F0009FF90FBCFBF7F8F80DF10A0184B068465A +:107700001622FBF795F90FBC00F05AFB74E0607885 +:107710008DF809001D283ED1A0788DF81300A078BF +:1077200001280ED1E078217911EB0021ADF80A1083 +:1077300089B20A469DF809100FF28040FAF732FE2E +:107740005AE002280BD1E078217911EB0021ADF845 +:107750000C1089B20FF27440FAF724FE4CE00328B3 +:107760000BD1E078217911EB0021ADF8141089B22A +:107770000FF26440FAF716FE3EE004283CD1E078B0 +:10778000217911EB0021ADF8161089B20FF25440A7 +:10779000FAF708FE30E0262809D1A0788DF80E000F +:1077A000A078012828D1E0788DF80D0024E01C286D +:1077B00022D1A0788DF80D00A078012807D1E178BA +:1077C0008DF80A100FF22840FAF7ECFD14E00228B9 +:1077D00007D1E1788DF80B100FF22840FAF7E2FD9F +:1077E0000AE0032808D0052806D1E1788DF80C10AE +:1077F0000FF22440FAF7D6FD06208DF828002078F5 +:107800000B900DF1310002A91822FBF711F90B20A2 +:107810008DF830000020ADF84A000AA800F0F6FA12 +:10782000C0B205E694F9000008F00FFD012840F011 +:107830003F8120780146032924D0062961D00929F7 +:1078400027D00C2941D00D294DD019297DD01A29D6 +:1078500064D01B2900F08E801C2900F0C9801D29EE +:1078600000F0A1801E2900F0D080252900F0E980D9 +:10787000262900F0D880272900F0EA80282900F086 +:107880000E8110E10322611C0DF10A00FDF732F8B0 +:107890000EE10722611C0DF10A00FDF72BF8BDF87F +:1078A0000A00010A41EA0020ADF80A00BDF80C0008 +:1078B000010A41EA0020ADF80C00BDF80E00010AF3 +:1078C00041EA0020ADF80E00F2E00322611C0DF148 +:1078D0000A00FDF70FF8BDF80B00010A41EA00208D +:1078E000ADF80B00E4E00322611C0DF10A00FDF786 +:1078F00001F8BDF80B00010A41EA0020ADF80B00C9 +:10790000D6E00122611C0DF10A00FCF7F3FF9DF89F +:107910000A100FF21830FAF745FDC9E00822611C81 +:107920000DF10A00FCF7E6FFBDF80D00010A41EA7F +:107930000020ADF80D0000239DF911209DF91010D5 +:107940009DF90F00FAF728FFB2E00622611C0DF145 +:107950000A00FCF7CFFFBDF80A00010A41EA002047 +:10796000ADF80A00BDF80E00010A41EA0020ADF8AA +:107970000E009DE00422611C0DF10A00FCF7BAFF25 +:10798000BDF80A00010A41EA0020ADF80A00BDF87E +:107990000C00010A41EA0020ADF80C000FF298201B +:1079A000FAF700FD84E00922611C0DF10A00FCF7E2 +:1079B000A1FFBDF80A00010A41EA0020ADF80A0063 +:1079C000BDF80C00010A41EA0020ADF80C00BDF83A +:1079D0000E00010A41EA0020ADF80E0000239DF9D7 +:1079E00012209DF911109DF91000FAF7D5FE5FE005 +:1079F00060788DF80A00A0788DF80B00A278617885 +:107A00000FF24020FAF7CEFC52E00322611C0DF188 +:107A10000A00FCF76FFFBDF80B00010A41EA0020E5 +:107A2000ADF80B0044E00522611C0DF10A00FCF7E3 +:107A300061FFBDF80B00010A41EA0020ADF80B0020 +:107A400036E00922611C0DF10A00FCF753FF2FE01C +:107A50000A22611C0DF10A00FCF74CFFBDF90A0077 +:107A6000C0F3072141EA0020ADF80A00BDF90C007F +:107A7000C0F3072141EA0020ADF80C00BDF90E006B +:107A8000C0F3072141EA0020ADF80E00BDF9100057 +:107A9000C0F3072141EA0020ADF8100008E060784B +:107AA0008DF80A0004E08DF8080060788DF8090070 +:107AB00020780146052907D13F4801210170687AE5 +:107AC00000280ED10846B3E418290AD18DF8080021 +:107AD00060788DF80900A0788DF80A00E0788DF8BC +:107AE0000B0000208DF8280020780B900DF131005C +:107AF00002A91822FAF79CFF0B208DF83000002015 +:107B0000ADF84A000AA800F081F9C0B290E42078EC +:107B1000052804D1284800210170012088E41A2892 +:107B20000CD10522611C0DF10A00FCF7E3FEBDF843 +:107B30000D00010A41EA0020ADF80D0001208DF88A +:107B4000280020780B900DF1310002A91822FAF7D5 +:107B50006FFF0B208DF830000AA800F057F9C0B273 +:107B600066E4012064E42078002802D0052805D0CE +:107B700006E00FF2E000FDF7DDF901E0FFF7D7F9CD +:107B8000012055E404F10802211D2046FCF7BEFC4B +:107B900001204DE4A0790020F4EE0020B47A00200A +:107BA00008400020B8900020041E0308101E03089F +:107BB0001C1E0308281E0308FE2B01204C542053D2 +:107BC000502025642C202564000000004C542057D0 +:107BD00050202564000000004C542053522025649E +:107BE000000000004C542053415220256400000046 +:107BF0005B415044525D204E545F5357554E2025F3 +:107C0000640000005B415044525D204E545F545765 +:107C100055532025640000005B415044525D204EC6 +:107C2000545F4241544348202564000050443A20A8 +:107C300053432025640000004C54205353204144FA +:107C40004400000041504452204144442025642017 +:107C50002564000041505F52455155455354000082 +:107C600069487047F8B50C461646012500282BD107 +:107C700006EB8600644901EBC007F868E040C007E6 +:107C800008D52346FA6831460FF2FC20FAF78AFB42 +:107C90000220F2BD4FF0FF30009003462A4679687B +:107CA000204608F0DFF800280CD02346FA68314659 +:107CB0000FF2E420FAF776FBF8682946A140084362 +:107CC000F8602CE00220F2BD012828D106EB8600E6 +:107CD0004D4901EBC007F868E040C00708D42346CF +:107CE000FA6831460FF2C020FAF75CFB032516E074 +:107CF0004FF0FF332A467968204608F018F900282B +:107D000007D02346FA6831460FF2AC20FAF74AFB57 +:107D100000E00325F8680121A1408843F860284667 +:107D2000F2BD08F0F6BF02B58AB00021ADF822100E +:107D300001910A218DF8081000218DF809108DF8A5 +:107D40000A1005218DF80010019004220AA90DF1F6 +:107D50000900FCF7CFFD0020ADF8220000A800F0DC +:107D600055F80BB000BD80B509F0E4FF0FF25820C4 +:107D7000BDE80240FAF716BB38B54478857800783C +:107D8000032810D01A281AD1012C18D101200BF089 +:107D9000BAFB012322461A210FF2382001B0BDE8B8 +:107DA0003040FAF7FFBA012C09D1284609F0CDFF7F +:107DB00029460FF23020BDE83440FAF7F3BA31BD5E +:107DC0000FB480B5002805D10846002802D110461E +:107DD000002804D00CF055F9C046C04601E00CF074 +:107DE00039F901BC5DF814FB00222C2809D200EB04 +:107DF0008003054800EBC300C068C840C00700D539 +:107E0000012210467047000018BC002030B585B034 +:107E10000446012594F90000062800F2A180DFE85D +:107E200000F00428445F76979B0004F1090182B0BA +:107E300068461822FAF7FCFD0CBC94F9081060683B +:107E400040B208F09FFB02280AD1606800B208F037 +:107E50007EFD002561680FF29810FAF7A3FA85E01D +:107E6000032840F0838061680FF28C10FAF79AFAC9 +:107E70007CE060681A280AD104F1090008F0F5FFD7 +:107E8000637B227BE17A0FF27810FAF78BFA94F990 +:107E90000810606840B208F075FC032866D161687C +:107EA0000FF27410FAF77EFA60E0618C00A808F017 +:107EB00068FD9DF9040002280AD1009800B208F07C +:107EC00046FD002500990FF25810FAF76BFA4DE0C5 +:107ED00003284BD100990FF25010FAF763FA45E0EE +:107EE0000CF0ECF902280AD1606800B208F02FFD0E +:107EF000002561680FF23810FAF754FA36E00328CB +:107F000034D161680FF23010FAF74CFA2EE0606855 +:107F100005280CD128460CF098FA02280DD0032829 +:107F200024D161680FF22010FAF73CFA1EE0022813 +:107F30001CD10CF07BFB0228F1D1606800B208F084 +:107F400006FD002561680FF2F800FAF72BFA0DE044 +:107F5000204608F07BFD09E0204608F025FF05E0FB +:107F600061680FF2EC00FAF71DFA0025284605B00B +:107F700030BD012070470FB4022004B070470120CB +:107F80007047002070477047534D414320256420BF +:107F90002564202564000000534D412025642025E0 +:107FA0006420256400000000534D524320256420C6 +:107FB0002564202564000000534D522025642025AF +:107FC000642025640000000050442053657453541D +:107FD0000000000041542052492D256420256420D2 +:107FE0002564000050442055542D256400000000F5 +:107FF000414C4F4620256400414C434620256400F7 +:108000004F4A4820454C2030782578203078257814 +:108010002030782578000000524C4346202564002B +:10802000504C4F4620256400504C434620256400A8 +:1080300050414F46202564005041434620256400AE +:1080400050504F4620256400505043462025640080 +:108050004558204C4D454C20256400005FF0FF0C36 +:108060001CEAD05114BF614506E0C110400721F061 +:10807000E04101F16051704779B900F00041000220 +:108080000AD0B0FA80FC00FA0CF001F16051A1EBCB +:108090000C5101EBD0214005704741020CBF40F468 +:1080A000E0016FF000010020704700004FEAF17C12 +:1080B000BCF1E04C2CBFBCF5001F11E05FEA4C0C9A +:1080C00034BFBCF17F5F2EE05FEA9C0C4FEA0C1CD2 +:1080D0004FEA3C0CC10071F100414CEB507070470D +:1080E000C90241EA5051C00218BF41F0010141F0FC +:1080F00000414FEA6C50C0F10900212810D240EA3B +:10810000CC7CCCF1200C11FA0CF070F10040CCF1D9 +:10811000200C21FA0CF00CF0004C40EB0C007047E6 +:108120004FEACC707047490011F5001F04D84FEAA0 +:10813000CC10FF30C0057047C81770471FB50CF052 +:10814000D5FA212101601FBDDFF8AC1100220A70B1 +:108150000A70012802D0042803D07047012008705B +:10816000704705200870704764490860704710B474 +:1081700063494A6802F00C02082A13D10A680B68A6 +:1081800003F03F03604CB4FBF3F30A68C2F38812B8 +:108190005A430B68C3F301435B1C5B00B2FBF3F271 +:1081A000026001E0584A02604A6802F0F003574A50 +:1081B0001B099B5C046824FA03F343604C6804F4D5 +:1081C000E054A40AA45CE3408360496801F4604180 +:1081D000490B895C426822FA01F1C16010BC70470A +:1081E000484900F44072B2F5407F06D10A6822F493 +:1081F000F812474B03401A430A608A6E000552EAA0 +:1082000010508866704743490860704742490860CB +:108210007047424A0029116802D008431060704735 +:1082200021EA0000106070473D4A0029116802D021 +:1082300008431060704721EA000010607047394A17 +:108240000029116802D008431060704721EA00003D +:1082500010607047344A0029116802D0084310604A +:10826000704721EA000010607047304A0029116809 +:1082700002D008431060704721EA00001060704788 +:108280002B4A0029116802D008431060704721EA88 +:10829000000010607047274A0029117802D0084377 +:1082A0001070704721EA0000107070474109114AB0 +:1082B000012901D1116804E0022901D1116F00E008 +:1082C000516F00F01F0021FA00F000F0010070472C +:1082D0001948016841F08071016070470021174A18 +:1082E0001268024200D00121084670471449087004 +:1082F000704700000038024070380240800E47424C +:1083000004380240083802400024F400707A00204B +:10831000FFFCFF0F3C0E4742400E47423038024000 +:1083200040380240443802401038024020380240B1 +:10833000243802400D380240743802400C380240A4 +:108340000E38024080B52749884209D101210846EC +:10835000FFF780FF00210120BDE80440FFF77ABF4E +:108360002149884209D101210220FFF773FF002132 +:108370000220BDE80440FFF76DBF1C49884209D1C7 +:1083800001210420FFF766FF00210420BDE804401E +:10839000FFF760BF1649884209D101210820FFF785 +:1083A00059FF00210820BDE80440FFF753BF1149E1 +:1083B000884209D101211020FFF74CFF0021102035 +:1083C000BDE80440FFF746BF0B49884209D10121AF +:1083D0008020FFF73FFF00218020BDE80440FFF729 +:1083E00039BF01BD00000240000402400008024005 +:1083F000000C024000100240001C0240F0B40022B9 +:1084000032E0012393400C681C409C422BD1540065 +:108410000325A540ED4306682E40066006680F79E7 +:10842000A7403E4306600E79012E01D0022E11D1E5 +:1084300086682E40866086684F79A7403E438660F6 +:10844000466826EA0303436043688E799640B6B2D5 +:1084500033434360C3682B40C360C368CD7905FADA +:1084600004F42343C360521C102ACAD3F0BC7047E3 +:108470004FF6FF7101600021017141718171C1717D +:10848000704700220069084200D001221046704760 +:10849000018370474183704710B4CB1000EB830019 +:1084A00001F007018900036A0F248C40A343036293 +:1084B000036A02FA01F11943016210BC704700001F +:1084C00080B5434988420BD101214FF40010FFF7DA +:1084D000CCFE00214FF40010BDE80440FFF7C5BEFC +:1084E0003C4988420BD101214FF48000FFF7BDFECB +:1084F00000214FF48000BDE80440FFF7B6BE3649C6 +:1085000088420BD101214FF40000FFF7AEFE00219D +:108510004FF40000BDE80440FFF7A7BE01BD7FB5E2 +:1085200004460D46A68800A8FFF721FE02992B48B5 +:10853000B1FBF0F04FF6C07232400243A2802288B5 +:108540004FF6FE731A4022802A68254B9A420AD2BF +:108550005200B1FBF2F10A4692B2042A00DA042179 +:10856000401C208421E0EB884BF6FF76B34204D117 +:1085700002EB4202B1FBF2F106E019235A43B1FBD0 +:10858000F2F141F4804189B20A0502D141F00101C2 +:1085900089B241F4004180B24FF4967250434FF4D7 +:1085A0007A7290FBF2F0401C2084A183208840F076 +:1085B0000100208020884FF6F5310840A988084343 +:1085C000698908432080A8892989084320817FBDC3 +:1085D0000054004000580040005C004040420F0042 +:1085E000A18601000029018803D041F0010101802A +:1085F00070474FF6FE7211400180704700290188D4 +:1086000003D041F48071018070474FF6FF62114042 +:10861000018070470029018803D041F40071018076 +:1086200070474FF6FF52114001807047002A02D078 +:1086300041F0010101E001F0FE01018270470029D3 +:10864000018803D041F48061018070474FF6FF320A +:108650001140018070470029018803D041F4004196 +:10866000018070474904490C0180704782B002467E +:10867000002003460193009300920A0F0192090221 +:10868000090A019A002A03D0009A1432009203E0EA +:10869000090C009A18320092009A12680A4200D01F +:1086A000012002B07047000080B5254988420BD1F7 +:1086B00001214FF48050FFF7E3FD00214FF480507B +:1086C000BDE80440FFF7DCBD1E4988420BD1012103 +:1086D0004FF48040FFF7C9FD00214FF48040BDE812 +:1086E0000440FFF7C2BD184988420BD101214FF465 +:1086F0000040FFF7BAFD00214FF40040BDE8044000 +:10870000FFF7B3BD01BD028802F441520B881A4342 +:108710004B881A438B881A43CB881A430B891A4318 +:108720004B891A438B891A43CB891A430280828B67 +:108730004FF2FF731A408283098A0182704700005A +:108740000030014000380040003C00400029018812 +:1087500003D041F04001018070474FF6BF721140D5 +:1087600001807047002A828802D0114381807047BF +:1087700022EA01018180704700220089084200D06E +:108780000122104670470000016849084900016055 +:108790000021016041608160C1600161212141616E +:1087A0006A49884203D16A483D210160704769499E +:1087B000884204D166484FF474610160704766498D +:1087C000884204D162484FF47411016070476349D4 +:1087D000884204D15E484FF074610160704760497F +:1087E000884203D15A485F49416070475E498842D8 +:1087F00003D157485D49416070475D49884203D1C4 +:1088000053485C49416070475B49884204D15048F5 +:108810004FF03D51416070475849884203D1584854 +:108820003D21016070475749884204D154484FF4B4 +:108830007461016070475449884204D150484FF434 +:108840007411016070475149884204D14C484FF07F +:108850007461016070474E49884203D148484149DC +:10886000416070474B49884203D145483F494160C8 +:1088700070474949884203D141483E4941607047A9 +:108880004649884203D13E484FF03D514160704710 +:108890000268434B1A400B681A43CB681A434B6972 +:1088A0001A438B691A43CB691A430B6A1A434B6A02 +:1088B0001A438B6A1A434B6B1A438B6B1A43026041 +:1088C0004269D208CB6A53EAC2020B6B1A43426177 +:1088D0000A6942604A6882608968C16070470029FD +:1088E000016803D041F00101016070474908490067 +:1088F00001607047002A01D001617047C160704774 +:10890000006800F00100704700221C4B984201D221 +:10891000244800E024488B0001D5406800E000684E +:1089200008402249084200D0012210467047134AED +:10893000904201D21B4800E01B481C4A0A408900B3 +:1089400001D5C2607047826070470000106002402D +:1089500008600240286002404060024058600240C7 +:10896000706002403D00002088600240400F0020FF +:10897000A060024000003D20B86002401064024048 +:108980000864024028640240406402405864024087 +:108990007064024088640240A0640240B8640240EF +:1089A0003F801CF000600240006402407D0F7D0F9C +:1089B00002490860704702490860704720000E4273 +:1089C00024000E4270B504460026DFF83854CA2051 +:1089D000E8615320E86100F018F8002811D02868F9 +:1089E00020F0400028602868216808432860A068BB +:1089F000A860A868616840EA0140A86000F024F817 +:108A00000126FF20E861304670BD81B00020009053 +:108A1000DFF8F4030168490613D44FF0FF31016019 +:108A2000016801F04001009A521C0092009AB2F5D0 +:108A3000803F01D00029F3D00068800900F00100D8 +:108A400000E0012001B07047DFF8BC03016821F0AD +:108A500080010160704781B000200090DFF8A8130A +:108A6000CA20886153208861086820F0A00008604F +:108A7000086800F02000009A521C0092009AB2F59B +:108A8000003F01D00028F3D00868400900F0010041 +:108A9000FF228A6101B07047F8B507460E460024F0 +:108AA000DFF85C53002FA86804D140060AD42046A2 +:108AB000F07007E0400603D5307800F0BEF901E021 +:108AC0002046F0703078002F09D07178090241EA11 +:108AD0000040B1780843F17840EA01460FE000F029 +:108AE000A1F90746707800F09DF9000240EA0747B7 +:108AF000B07800F097F93843F17840EA0146CA208F +:108B0000686253206862FFF780FF00280FD0DFF80B +:108B1000FC0230402860FFF797FFA868800605D464 +:108B2000FFF799FF002802D0012400E00124FF2074 +:108B300068622046F2BD10B50C46DFF8C412096821 +:108B4000DFF8C82211400A0C02F03F0323700B0A21 +:108B500003F07F03637001F07F01A17002F0400118 +:108B6000E17000280BD1207800F067F92070607860 +:108B700000F063F96070A07800F05FF9A07010BD9C +:108B8000DFF88C12486A0968704770B506460D46D2 +:108B90000024002E06D16878C10603D500F0EF004E +:108BA0000A306870002E05D0687800F046F9A87881 +:108BB00000F043F9E878002E09D06978090241EA0B +:108BC0000040A9780843297840EA41360FE000F0D8 +:108BD00029F90646687800F025F9000240EA0646C1 +:108BE000A87800F01FF93043297840EA4136DFF8D1 +:108BF0002052CA20286253202862FFF706FF00286F +:108C00000FD0DFF8100230402860FFF71DFF6868C2 +:108C1000800605D4FFF71FFF002802D0012400E0E2 +:108C20000124FF202862204670BD10B50C46DFF8F5 +:108C3000E0110968DFF8DC2111400A0CE2700A0A31 +:108C400002F01F02627001F03F02A270490B01F0B6 +:108C50000701217000280BD1E07800F0EEF8E070F9 +:108C6000607800F0EAF86070A07800F0E6F8A07094 +:108C700010BDDFF89011CA22CA615322CA610A6886 +:108C8000D208D2000A600A6810430860FF20C86159 +:108C90007047DFF88411CA220A6153220A61086012 +:108CA000FF200861704781B000210091DFF8541166 +:108CB000CA22CA615322CA610028086804D040F45D +:108CC00080600860012012E020F48060086048683D +:108CD00000F00400009A521C0092009AB2F5803F06 +:108CE00001D00028F3D04868800800F00100FF227E +:108CF000CA6101B0704781B000220092474A0092D9 +:108D0000009A02EB800000900098016001B070476B +:108D100081B00021009141490091009901EB800050 +:108D200000900098006801B0704738B500242246D2 +:108D3000344DCA23EB615323EB616B681B0701D4ED +:108D400006E0521C6B681B0702D5B2F5805FF8D1B4 +:108D50006A68120709D42A68D20606D408436862F2 +:108D6000FFF779FE002800D00124FF20E8612046AB +:108D700032BD244ACA23D3615323D36100F00403D4 +:108D800020F004000029116805D008431060906BA2 +:108D90001843906305E021EA00001060906B98434F +:108DA0009063FF20D06170470021174A12681C4B66 +:108DB0001A40024200D001210846704710B4002139 +:108DC000104A936B03F004031468044003EAD033A1 +:108DD0002343526802EA101002D0000400D001219F +:108DE000084610BC704708490003000C40F08000A2 +:108DF0000A6802F0800262EA000008607047000022 +:108E000000280040082800400C2800407F7F7F0099 +:108E1000042800403FFFFF00142800405028004075 +:108E20007F3F0100002101E0491C0A38C0B20A2836 +:108E3000FADA40EA0110C0B27047010901EB810281 +:108E400000F00F0000EB4200C0B2704730B4016880 +:108E5000CB4321498279002A27D00A46146823404F +:108E6000136053680468A34353600379CC182368E4 +:108E700005682B43236093680468A3439360D36819 +:108E80000468A343D36043790568102B07D1916828 +:108E900029439160D16800680843D0600AE051FA24 +:108EA00083F420682843206004E000790C182068CF +:108EB0001840206030BC70470021074A1368034007 +:108EC0005269024202D0002B00D0012108467047AF +:108ED0000249086070470000003C0140143C01401A +:108EE0001949084319490860704770B403781A4655 +:108EF0000121C478002C1DD0144B1B6803F4E063DF +:108F0000C3F5E0631B0A4478C3F10405AC408578DF +:108F10000F2646FA03F32B4023431B010C4C135539 +:108F2000007842110B4B00F01F0001FA00F043F8EB +:108F3000220006E05011084A03F01F03994042F84E +:108F4000201070BC704700000000FA050CED00E036 +:108F500000E400E000E100E080E100E030B401F076 +:108F60000302920021F00301054BCC580F259540D8 +:108F7000AC43CC50CC5890402043C85030BC7047D4 +:108F80000838014080B501214FF48070FFF778F96F +:108F900000214FF48070BDE80440FFF771B94268CA +:108FA0004C4B1A400B7942EA03220B681A43426089 +:108FB0008268494B1A400B691A43CB681A438B6885 +:108FC0001A434B7942EA43028260C26A22F4700279 +:108FD000097D491EC9B242EA0151C16270470021B0 +:108FE0000160017141718160C16001610121017500 +:108FF00070473A490A683A4B1A4003681A43436873 +:109000001A4383681A43C068104308607047002100 +:10901000016041608160C16070470029816803D0B0 +:1090200041F0010181607047490849008160704743 +:1090300070B407240A290BDBC568A1F10A0606EB08 +:109040004606B44025EA0404B3402343C36008E065 +:10905000056901EB4106B44025EA0404B34023430B +:10906000036113461F24072B09DA436B521E02EBE0 +:1090700082029440A34391401943416314E00D2BB5 +:1090800009DA036BD21F02EB82029440A3439140A2 +:109090001943016308E0C36A0D3A02EB820294406F +:1090A000A34391401943C16270BC7047816841F08D +:1090B0008041816070470029816803D041F480615C +:1090C0008160704721F4806181607047C06C80B21C +:1090D00070470000FFFEFFFCFDF7FFC004230140C6 +:1090E000E030FCFF00220068084200D00122104658 +:1090F0007047000013F0004C03D55B42524263F10D +:1091000000039CEA210C00F0178010B5644603D3DD +:109110004942404261F1000100F00EF8640004D3BE +:109120004942404261F10001244203D55B42524270 +:1091300063F1000310BD00001B4213D1094236D178 +:109140002AB18446B0FBF2F002FB10C270470BF06C +:10915000D3BAFCD30022002370470B000200002189 +:1091600000207047904271EB030CF6D370B5B1FA52 +:1091700081F4B3FA83F52C1BA340C4F1200532FA25 +:1091800005F63343A2405FF00046E64002E05B088C +:109190005FEA3202841A71EB030524BF2046294698 +:1091A0007641F4D302000B003000002170BD012A8B +:1091B000CFD970B5140C20D0B1FA81F4B2FA82F58F +:1091C000C4F120046419B4F12006D6D3B2405FF094 +:1091D0000044F440002502E052085FEA3303C61A57 +:1091E00071EB020E24BF3046714664416D41F3D3EA +:1091F00002000B002000290070BD0C46B1FBF2F10B +:1092000002FB11452D0445EA1045B5FBF2F402FBC3 +:10921000145580B240EA0545B5FBF2F002FB10524E +:1092200040EA044070BD000000B500BF1300964640 +:109230009446103928BFA0E80C50FAD85FEA417C68 +:1092400028BF0CC048BF40F8042BC90728BF20F82E +:10925000022B48BF00F8012B00BD00002DE9F04FA4 +:10926000A1B0824602AE002017461D4602917062F0 +:109270000DF144080AE017F8011B0298D04702904C +:10928000002800F0DA82706A401C7062387808B9F1 +:10929000706AD4E22528EED10020F0603061706160 +:1092A000B061F061306201E040F0010017F8011F89 +:1092B0002029F9D023290DD02B2904D02D2906D01F +:1092C00030290AD00CE040F0020080B2EEE740F016 +:1092D0000400FAE740F00800F7E740F01000F4E778 +:1092E0002A290DD129680A1D2A600968F16200291E +:1092F00004D5494240F00400F16280B27F1C13E0C3 +:109300000021F1620BE0F16A6FF00043994205D051 +:1093100001EB810302EB43013039F1627F1C3A78A3 +:10932000A2F130010A29EED339782E2903D04FF06B +:10933000FF31B1621EE017F8011F2A2906D1296802 +:109340000A1D2A607F1C0968B16213E00021B16226 +:109350000BE0B16A6FF00043994205D001EB810345 +:1093600002EB43013039B1627F1C3A78A2F130013F +:109370000A29EED330860FF6604039780BF0BEF93B +:1093800008B117F8010B8DF83A009DF83A006828EB +:1093900002BF39786829622005D06C2804BF38786C +:1093A0006C2803D171208DF83A007F1C11A8B060A1 +:1093B0003978B1F1250029D01C3800F0C080001F99 +:1093C000022840F2BC80133800F0E480093800F035 +:1093D000B680801E00F07781401E00F02081401E84 +:1093E000022840F2AC80001F00F01981401F7BD0A2 +:1093F000401E00F0CF80401E22D0C01E0BD0801E29 +:1094000000F0C880C01E00F0C58064E1F068411C17 +:10941000F160252169E12868011D29600068B26AB0 +:109420007060002A02D5FBF7C5F907E000210BF0B8 +:1094300071F900281ABF7168401AB06A306156E1AC +:109440002868011D296000210068CDE900014FF066 +:109450003C0E11A87060DDE9000111B908B9B26ACB +:10946000CAB10206120FA0EB02123032AEF10103B4 +:10947000D2B29E463A2AA8BF2732000903F8082034 +:1094800040EA0170090908BF002804D0726811ABD6 +:1094900073449A42E5D311A971447160CEF13C0046 +:1094A000B16A3061884207DA081AB0614FF6EF718D +:1094B000308E084030861AE1002940F1188196F874 +:1094C000301001F01401102940F01181F16AF268A6 +:1094D000891AB269891AA1EB000EBEF1010FC0F220 +:1094E0000681C6F818E002E19DF83A00622818D01B +:1094F000682806D06A280BD06C2819D0712807D0AC +:1095000016E02868011D29600068716A0180EEE09C +:109510002A68101D28601268706AC117C2E900012C +:10952000E5E02868011D29600068716A0170DEE0CD +:109530002868011D29600068716A0160D7E0286809 +:10954000C01D20F00700286000F108022A60D0E961 +:109550000023CDE90023002B04D5F068421CF26003 +:109560002D220DE0308E820704D5F068421CF26097 +:109570002B2205E0C00705D5F068421CF2602022CE +:1095800000F80820F06811AA8018706000A800F0A8 +:10959000E3F9ACE09DF83A006C2808BF2A6811D0C6 +:1095A000712808BF2A6802D02A686A280AD1D21D09 +:1095B00022F007022A60144604F108022A60D4E966 +:1095C000002303E0131D2B6000231268CDE9002364 +:1095D000682808BF92B207D0622808BFD2B203D071 +:1095E000742818BF7A2802D10023CDE9002396F809 +:1095F000300000075FD5DDE90023002B08BF002AFB +:1096000059D041F02000782855D1F068302200F878 +:109610000820401C421CF26000F808104BE09DF846 +:109620003A0062280CD0682810D06A281AD06C281A +:1096300023D0712816D074281FD07A280CD01CE0B3 +:109640002868021D2A6090F900201AE02868021D8F +:109650002A60B0F9002014E02868021D2A60002367 +:1096600002680FE02868C01D20F00700286000F1A4 +:1096700008022A60D0E9002304E02868021D2A605D +:109680000268D317CDE90023002B04DAF068421CEE +:10969000F2602D220DE0308E820704D5F068421C66 +:1096A000F2602B2205E0C00705D5F068421CF2608D +:1096B000202200F80820F06811AA8018706000A825 +:1096C00000F0C0F813E0F068411CF16029680A1D41 +:1096D0002A60096809E0F068421CF260252200F85F +:1096E000082021B1F068421CF26000F80810F06A0E +:1096F000F168401AB169401A3169401AF169401A9B +:109700007169401A316AA0EB010996F830007F1C9C +:10971000400710D420208DF84000002409E00123E8 +:1097200010AA00A9504600F040FC002840F08580B7 +:10973000641C4C45F3DBF4680DF1440B0AE01BF8A4 +:10974000011B0298D0470290002876D0706A401C16 +:109750007062641E002CF2D130208DF840004FF072 +:10976000000BB46909E0012310AA00A9504600F0DB +:109770001CFC002861D10BF1010BA345F3DB34691C +:10978000D6F804B00AE01BF8011B0298D0470290FB +:10979000002852D0706A401C7062641E002CF2D106 +:1097A00030208DF840004FF0000BF46909E00123F0 +:1097B00010AA00A9504600F0F8FB00283DD10BF19B +:1097C000010BA345F3DB30697168746900EB010B91 +:1097D00009E01BF8011B0298D047029068B3706A39 +:1097E000401C7062641E002CF3D130208DF84000C4 +:1097F0004FF0000B346A08E0012310AA00A950467C +:1098000000F0D3FBC8B90BF1010BA345F4DB96F8CC +:10981000300040077FF53AAD20208DF8400000244D +:1098200000E0641C4C45BFF631AD012310AA00A92D +:10983000504600F0BAFB0028F3D04FF0FF3021B0C3 +:10984000BDE8F08F2DE9FA47064682B035690A4631 +:109850006F2A08BF082705D041F02000782814BFE0 +:109860000A271027D6E900013C2480468946642A4D +:1098700018BF692A05D1002903DAD8F1000869EB7D +:109880004909B9F1000F08BFB8F1000F0CD1306BD6 +:1098900050B9082F3BD196F83800000737D5302053 +:1098A0003B2485F83B0032E0CDE90089FB174046B8 +:1098B00049463A46FFF740FCB846A8FB0023DDE9DD +:1098C0000089A8EB02023032A4F1010AD2B2544658 +:1098D0003A2A03DB9DF80830513B9A180AF8052014 +:1098E00080465FEA010908BFB8F1000F03D0F068B5 +:1098F00061198842D8D3082F09D196F8380000079B +:1099000005D5605D302802D0641E30206055C4F15A +:109910003C00B0616119F160316B884207DA081AC6 +:1099200030624FF6EF71308F0840308710E0002929 +:109930000ED596F8381001F01401102908D1716B7A +:109940007269891A326A891A081A0128A8BF306216 +:1099500004B0BDE8F08700002DE9F24F04468EB058 +:10996000D4E90001CDE9020104AE9DF8380040F0D1 +:109970002000009061280AD0206B002848BF0620F4 +:1099800004D404BF0098672801D1012020636168D6 +:10999000C1F30A5040F2FF7290421CD1080304BF89 +:1099A0002068002809D10320A0619DF838006138A3 +:1099B0001A2836D30FF2346108E00320A0619DF825 +:1099C000380061381A2829D30FF21861E0680322A1 +:1099D000F9F72EF8B5E1012816DA20460AF0C6FE9E +:1099E000012811DB002700200099612920D1E168BE +:1099F000302201F8012B4A1CE2609DF83820612AD0 +:109A00000CBF782258220FE0626840F2FE3161F309 +:109A10001E52471A62604FF0FF30E5E70FF2C05167 +:109A2000D4E70FF2C451D1E70A706169891C616102 +:109A300010B9002500277BE10098612840F096804E +:109A4000206B00284CBF2125451CDDE902012DB209 +:109A50006E1CD4E9008900220023F9F7E3F93ABF2C +:109A600089F00040CDE90280CDE902893F1F8DF8E1 +:109A700010200DF1110801E000F20708012E32DB81 +:109A8000DDE90201002200230AF092FE2BD21C2104 +:109A900002A80AF0A5FEDDE90201F9F70FFCF61FA6 +:109AA0008146012E09DBF9F7D9F902460B46DDE9BB +:109AB0000201F9F719F8CDE9020108F207000721C0 +:109AC00005E009F00F0200F8012D4FEA2919B9F15C +:109AD000010F01DB491EF4D5491E5CBF002200F8CE +:109AE000012DF9D5C8E70DF11100A8EB00010DF12A +:109AF0001106A942B8BF0D462DB228002FD48842C6 +:109B000006DA04A9411849780829A8BF0F2100DA0C +:109B1000002104AA821800E06D1E12F80139401ECF +:109B20008B42F9D00F2904D104A941184A78521C5C +:109B30004A70002802D504AE6D1C3F1D2DB2681E70 +:109B40000DD481190A783032D2B23A2A03DB9DF85B +:109B500038303A3B9A1801F80129401EF2D5206BA3 +:109B6000002840F1E580681E2063E1E0DDE90201A4 +:109B700000220023F9F756F93CBF81F00041CDE9FE +:109B800002013FB247F2975078434849DFF820B1CD +:109B900090FBF1F73FB2C7F107069246012E19DBA1 +:109BA000DDE90289F00707D552465B464046494643 +:109BB000F9F75AF88046894676105046594652467B +:109BC0005B46F9F751F882468B46002EEAD1CDE983 +:109BD000028921E076429046DFF8D89012E0F00743 +:109BE00007D552465B4640464946F9F73DF8804660 +:109BF000894676105046594652465B46F9F734F886 +:109C000082468B46002EEAD1DDE9020142464B46F0 +:109C1000F9F7B0F9CDE90201009866280CBF07F109 +:109C20000A000620216B4518142DA8BF13253020EB +:109C30008DF810000DF11106DFF87C90012D3DDB51 +:109C4000DDE90201F9F750FB06F1080104220A23BD +:109C5000B0FBF3F303EB8306A0EB4600303001F8D2 +:109C6000010D0A20B3FBF0F000EB8006A3EB4603E6 +:109C7000303301F8013D521EE9D1083D01F10806DB +:109C8000012DDBDBDDE90201F9F72EFBF9F7F0F836 +:109C900002460B46DDE90201F8F726FF00224B469B +:109CA000F8F7E2FFCDE90201CAE700BFA086010094 +:109CB000000024400000F03F84D797410DF11100CF +:109CC000301A0DF1110602E0401E7F1E761C31781D +:109CD0003029F9D00099662902D13FB2791C03E0FE +:109CE00065290CBF01210021226B8D182DB2A842DD +:109CF000B8BF05462DB229001AD4814204DA885D26 +:109D00003528A8BF392000DA30208A19521E00E019 +:109D10006D1E12F80139491E8342F9D0392802D14B +:109D2000885D401C8855002902D5761E6D1C7F1C5D +:109D30003FB29DF8381000972BB23246204600F013 +:109D400003F80FB0BDE8F08F2DE9F043054685B06C +:109D50001E46D5F8308089461746012E02DA0126C4 +:109D60000FF28C2749F02000BDF93040662808BF6B +:109D7000641C17D0672840F0818014F1040FC0F2F2 +:109D80008380444580F2808095F83800641C000789 +:109D900002D44645B8BFB04624B2B8EB040848BF69 +:109DA0004FF00008E868A96924B2012C25DA3023B5 +:109DB0004A1C0B54B8F1010F03DA95F83810090763 +:109DC00002D52E211154521CAA6118EB040FB8BF02 +:109DD000C8F1000424B26142A0446962B045B8BF32 +:109DE000464636B2EE613246AB6939461818F8F786 +:109DF0001FFEA8EB0600A862C0E00818A64218DA09 +:109E000032463946F8F714FEA9697118A961A01BFA +:109E10006862B8F1010F03DA95F83800000705D53C +:109E2000E8682E220A54E869401CE861C5F82880D9 +:109E3000A4E022463946F8F7FBFDA8692018361B36 +:109E4000B8F1010F03DA95F83810090703D5E9686E +:109E50002E224254401C36B2A861B045B8BF4646D7 +:109E6000EB6836B23246E119C018F8F7E1FDA8698F +:109E70003018A861A8EB060068627FE0B9F1610FB5 +:109E800016D14FF0700918E0464504DA95F83810FD +:109E9000090758BFB046B8F1010848BF4FF00008A5 +:109EA000B9F1670F14BF4FF045094FF0650904E0A1 +:109EB000B9F1410F08BF4FF05009A969E86817F8D8 +:109EC000013B0B544A1CB8F1010F05DA95F8381024 +:109ED000090758BFAA6117D52E211154531CAB6135 +:109EE000B8F1010F10DB761E36B2B045B8BF46465A +:109EF00036B2324639461818F8F79AFDA869301874 +:109F0000A861A8EB06006862A869E9684718200004 +:109F100007F8019B03D42B2007F8010B03E02D2148 +:109F200007F8011B644200260DF1080808E00A2228 +:109F300000A80AF0DFFC019808F8010B761C009CD1 +:109F400021B20129F3DA022E06DA49F02000652851 +:109F500004BF302007F8010B4EB9302007F8010B81 +:109F600007E0761E02A8305C303007F8010B012EA6 +:109F7000F7DAA869E9684018381AE86195F83800F6 +:109F800000F0140010280DD16869A9690818696AE1 +:109F90000818E9690818A96A0818696B8842BCBFE3 +:109FA000081A286205B0BDE8F083F8B504460D46EE +:109FB00016461F46002004E0E86A401CE8627F1E47 +:109FC000002047B116F8011BA868A047A860002828 +:109FD000F2D14FF0FF30F2BD686A6C747A4C000029 +:109FE0006E616E004E414E00696E6600494E46003D +:109FF000300000000CB41CB5044604A801900A46C9 +:10A00000009401AB00A9074878441830FFF726F9FF +:10A01000009900220A7000285CBF0098001B16BC43 +:10A020005DF80CFB2F8EFFFF01B58B0718D1121FB7 +:10A0300021D351F8043BA3F1013C2CEA030C1CF0A2 +:10A04000803C04BF40F8043BF1E79CFA8CFCBCFA6E +:10A050008CF1C1F118018B40CB4040F8043B13E078 +:10A06000042A09D311F8013B521E00F8013B5BB1F1 +:10A070008B07F7D1DBE7121D5AB111F8013B521ED5 +:10A0800000F8013B03B1F8D111001CBF0022F9F721 +:10A0900045F901BD002801D10A48806890F84C10AC +:10A0A000642901D0002000E0806A7047002801D1B7 +:10A0B0000448806890F84C10642901D0002000E02A +:10A0C000406A7047A0790020024870470248014961 +:10A0D000401A704700000020002000204C48C16852 +:10A0E000002903D54B4901604B49016070474B483B +:10A0F000016841F000410160704770B504460026D8 +:10A1000000290BD0012902D14FF4807606E0022904 +:10A1100002D14FF4007601E04FF4407600F082F86F +:10A1200009281ED13D4D286820F440702860286819 +:10A1300030432860286820F0F8002860286844F040 +:10A14000020108432860286840F48030286000F04D +:10A1500069F8296821F002012960296821F0F801D5 +:10A16000296070BD70B504460D4600F05BF8092803 +:10A1700013D12A4E306820F440703060306840F4CB +:10A1800000703060306840F001003060256000F001 +:10A1900049F8316849084900316070BD70B505461D +:10A1A0000E4600F03FF8092811D11C4C206820F41D +:10A1B0004070206020682060206840F0010020602E +:10A1C0002E7000F02FF8216849084900216070BD09 +:10A1D000134908607047092011490A68D20301D564 +:10A1E000012070470A68D20601D5062070470A6828 +:10A1F000D20501D5022070470A6812F0EF0F01D096 +:10A20000072070470968890700D5082070470000BB +:10A21000043C024023016745AB89EFCD103C02406E +:10A220000C3C024080B509208DF80000FFF7D3FFF9 +:10A230008DF8000003E0FFF7CEFF8DF800009DF8D9 +:10A2400000000128F7D09DF8000002BD0901002898 +:10A2500006D500F00F004C4A801800F8041C704727 +:10A260004A4A8154704710B5401EB0F1807F01D337 +:10A27000012010BD464C60600F214FF0FF30FFF70A +:10A28000E5FF0020A06007202060002010BD38B549 +:10A29000404D2878401C28703F4C2078401C20708E +:10A2A000FBF74FF90AF02EFB2878411E2970002891 +:10A2B00002D19820FAF79AFA2078012804D1606830 +:10A2C000002801D0FAF7F5FA2078401E207031BD41 +:10A2D00010B5314C6078F021084202D09920FAF78D +:10A2E00085FAFAF7F0FA6078401C60700AF064FBB7 +:10A2F0002A4800684FF47A71B0FBF1F0FFF7B3FF22 +:10A30000002800D0FEE72648264901600E214FF0C4 +:10A31000FF30FFF79BFF6078F021084202D09920C0 +:10A32000FAF764FA6078401E6070C0B2002803D16A +:10A33000BDE81040FAF7C1BA10BD000010B51A4CC4 +:10A340004FF4005120464183C04630BF4FF40051C6 +:10A350002046FEF79DF8F3E710B40F48006A0F4956 +:10A3600009684FF47A72B1FBF2F1104A1368CB1A04 +:10A370000F4C2468640102D512688B1A401C00FB44 +:10A38000013010BC7047000018ED00E000E400E070 +:10A3900010E000E0042C0120A07900203C7A00208D +:10A3A00008ED00E0000000080010024018E000E0A6 +:10A3B00004ED00E0EFF3058000284AF05D8370476C +:10A3C00080B5EFF3108072B60B49096851F47F0134 +:10A3D000094A116080F310880848006810F4700F73 +:10A3E00002D1A720FAF702FA05485FF00071016078 +:10A3F00004480021016001BD20ED00E088ED00E08F +:10A400003CEF00E034EF00E010B5040010480078A5 +:10A41000002805D10F480AF06EFB0D48012101709C +:10A420000C480AF09EFB20000BF06EFA040009486D +:10A430000AF0CBFB200010BD10B5040005480AF05F +:10A4400090FB20000BF0BAFB02480AF0BEFB10BDE7 +:10A45000072C0120D8280120004870472012012035 +:10A46000BFF34F8FDFF8C00C006810F4E060DFF836 +:10A47000BC1C0843DFF8B01C0860BFF34F8FFEE739 +:10A4800000B583B00020ADF8040000208DF8060070 +:10A4900000208DF80700012000900DF106037622C0 +:10A4A000D0210020F8F74EF8002801D1002044E028 +:10A4B00076208DF804009DF8060050F020008DF8FD +:10A4C0000500022301AAD0210020F7F7E1FF0028B0 +:10A4D00001D1002031E0012000900DF10703492255 +:10A4E000D0210020F8F72EF8002801D1002024E028 +:10A4F00049208DF804009DF8070050F001008DF808 +:10A500000500022301AAD0210020F7F7C1FF00288F +:10A5100001D1002011E076208DF804009DF806009E +:10A520008DF80500022301AAD0210020F7F7B0FF23 +:10A53000002801D1002000E001200EBD38B5040044 +:10A54000F7F7AFFE0500DFF8100D0078401CDFF8CC +:10A55000081D0870DFF8000D4078F021084202D095 +:10A560009920FAF743F9FAF7AEF9DFF8EC0C4078E6 +:10A57000401CDFF8E41C4870210089B22800F8F77D +:10A580007CF8DFF8D40C4078F021084202D0992002 +:10A59000FAF72CF9DFF8C00C4078401EDFF8B81C41 +:10A5A0004870C0B2002801D1FAF787F9FAF7E5FF41 +:10A5B00031BD10B582B00020ADF80000F7F771FE94 +:10A5C00004006B208DF8000080208DF8010002232C +:10A5D00000AAD0210020F7F75BFF002801D100205E +:10A5E00094E064212000F8F748F8FFF749FF0028BD +:10A5F00001D100208AE06B208DF8000000208DF84A +:10A600000100022300AAD0210020F7F741FF002813 +:10A6100001D100207AE028212000F8F72EF8192037 +:10A620008DF8000004208DF80100022300AAD0213B +:10A630000020F7F72DFF002801D1002066E01A2046 +:10A640008DF8000003208DF80100022300AAD0211C +:10A650000020F7F71DFF002801D1002056E01B2045 +:10A660008DF8000008208DF80100022300AAD021F7 +:10A670000020F7F70DFF002801D1002046E01D2043 +:10A680008DF8000003208DF80100022300AAD021DC +:10A690000020F7F7FDFE002801D1002036E06A20F7 +:10A6A0008DF8000000208DF80100022300AAD021BF +:10A6B0000020F7F7EDFE002801D1002026E06C20F5 +:10A6C0008DF800003F208DF801009DF80110DFF8A3 +:10A6D0005C0DF7F767FE022300AAD0210020F7F7F0 +:10A6E000D7FE002801D1002010E06B208DF800007B +:10A6F00040208DF80100022300AAD0210020F7F7A6 +:10A70000C7FE002801D1002000E0012016BD01781D +:10A71000407850EA012000B2704780B502200090D6 +:10A72000DFF80C3D6B22D0210020F7F70BFF00284B +:10A7300001D100205BE001200090DFF8F83C1A22F4 +:10A74000D0210020F7F7FEFE002801D100204EE0C6 +:10A7500001200090DFF8E03C1B22D0210020F7F719 +:10A76000F1FE002801D1002041E001200090DFF837 +:10A77000CC3C1C22D0210020F7F7E4FE002801D1B8 +:10A78000002034E001200090DFF8B43C1D22D021ED +:10A790000020F7F7D7FE002801D1002027E0012094 +:10A7A0000090DFF8A03C6A22D0210020F7F7CAFE13 +:10A7B000002801D100201AE001200090DFF8883C39 +:10A7C0003822D0210020F7F7BDFE002801D100205B +:10A7D0000DE001200090DFF8743C1922D021002008 +:10A7E000F7F7B0FE002801D1002000E0012002BDF3 +:10A7F00080B50020ADF800001A208DF80000DFF8C9 +:10A80000300C00798DF80100022300AAD02100202D +:10A81000F7F73EFE002801D1002090E01B208DF8C4 +:10A820000000DFF80C0C40798DF80100022300AA2B +:10A83000D0210020F7F72CFE002801D100207EE077 +:10A840001C208DF80000DFF8E80B80798DF80100FE +:10A85000022300AAD0210020F7F71AFE002801D118 +:10A8600000206CE01D208DF80000DFF8C40BC079DB +:10A870008DF80100022300AAD0210020F7F708FE7E +:10A88000002801D100205AE06A208DF80000DFF88E +:10A89000A00BC0788DF80100022300AAD02100206F +:10A8A000F7F7F6FD002801D1002048E019208DF8C7 +:10A8B0000000DFF87C0B80788DF80100022300AAED +:10A8C000D0210020F7F7E4FD002801D1002036E078 +:10A8D00038208DF80000DFF8580B007A8DF8010061 +:10A8E000022300AAD0210020F7F7D2FD002801D1D1 +:10A8F000002024E06B208DF80000DFF8340B007896 +:10A900008DF80100022300AAD0210020F7F7C0FD36 +:10A91000002801D1002012E06C208DF80000DFF843 +:10A92000100B40788DF80100022300AAD0210020EE +:10A93000F7F7AEFD002801D1002000E0012002BDA4 +:10A9400010B582B00020ADF80000DFF8E40A00780E +:10A95000400612D56B208DF8000000208DF8010014 +:10A96000022300AAD0210020F7F792FD002801D190 +:10A970000020C9E03220FFF7E1FD6C208DF80000D7 +:10A98000DFF8AC0A407810F0F8008DF801000223DF +:10A9900000AAD0210020F7F77BFD002801D100207C +:10A9A000B2E06A208DF8000000208DF8010002233B +:10A9B00000AAD0210020F7F76BFD002801D100206C +:10A9C000A2E0002400E0641C062C10DA14F113004D +:10A9D0008DF8000000208DF80100022300AAD0218C +:10A9E0000020F7F755FD0028EDD100208CE019205C +:10A9F0008DF8000000208DF80100022300AAD0216C +:10AA00000020F7F745FD002801D100207CE01A2046 +:10AA10008DF8000003208DF801004FF4FA64200047 +:10AA2000FA281DD0B0F5FA7F13D0B0F57A7F09D09F +:10AA3000B0F5FA6F19D19DF8010050F018008DF8AB +:10AA4000010016E09DF8010050F010008DF80100A3 +:10AA50000FE09DF8010050F008008DF8010008E0BB +:10AA60009DF801008DF8010003E09DF801008DF8CC +:10AA70000100022300AAD0210020F7F709FD0028D9 +:10AA800001D1002040E0FA2C14D0B4F5FA7F0DD0AB +:10AA9000B4F57A7F06D0B4F5FA6F0FD103208DF8A4 +:10AAA00001000EE002208DF801000AE001208DF87F +:10AAB000010006E000208DF8010002E000208DF882 +:10AAC00001001B208DF800009DF80100C0008DF8EA +:10AAD0000100022300AAD0210020F7F7D9FC0028AA +:10AAE00001D1002010E038208DF8000000208DF802 +:10AAF0000100022300AAD0210020F7F7C9FC00289A +:10AB000001D1002000E0012016BD00B583B0002077 +:10AB1000ADF8060000208DF804006B208DF80600CB +:10AB200001208DF8070002230DF10602D02101203B +:10AB3000F7F7AEFC002801D1002023E02820FFF722 +:10AB4000FDFC0120009001AB6C22D0210120F7F721 +:10AB5000F9FC002801D1002014E06C208DF80600DB +:10AB60009DF8040010F0C0008DF8070002230DF1DD +:10AB70000602D0210120F7F78BFC002801D100202C +:10AB800000E001200EBD2DE9F04F85B080460C009D +:10AB900015001E000020ADF8040002A800210022CC +:10ABA00006C00838062738208DF8040000208DF8EC +:10ABB0000500022301AAD0210120F7F769FC002833 +:10ABC00002D15FF0FF3079E123208DF804000020EE +:10ABD0008DF80500022301AAD0210120F7F758FCC7 +:10ABE000002802D15FF0FF3068E16A208DF8040090 +:10ABF00000208DF80500022301AAD0210120F7F7DB +:10AC000047FC002802D15FF0FF3057E16A208DF841 +:10AC1000040004208DF80500022301AAD0210120A0 +:10AC2000F7F736FC002802D15FF0FF3046E11A202A +:10AC30008DF8040001208DF80500022301AAD0211F +:10AC40000120F7F725FC002802D15FF0FF3035E145 +:10AC500019208DF8040000208DF80500022301AAB8 +:10AC6000D0210120F7F714FC002802D15FF0FF305B +:10AC700024E11B208DF804008DF80580022301AA31 +:10AC8000D0210120F7F704FC002802D15FF0FF304B +:10AC900014E1F6B2002E0FD01C208DF804008DF8C0 +:10ACA0000580022301AAD0210120F7F7F1FB00283B +:10ACB00002D15FF0FF3001E14FFA88F8B8F1000FE0 +:10ACC00002D0C820FFF73AFC6A208DF80400442027 +:10ACD0008DF80500022301AAD0210120F7F7D8FB47 +:10ACE000002802D15FF0FF30E8E023208DF8040057 +:10ACF000F6B2002E03D008208DF8050002E0702087 +:10AD00008DF80500022301AAD0210120F7F7C0FB2E +:10AD1000002802D15FF0FF30D0E00A20FFF70EFCE0 +:10AD20005FF0000A0BE05FFA8AFA002044F82A007C +:10AD30005FFA8AFA002045F82A001AF1010A5FFA40 +:10AD40008AFABAF1030FEEDB5FF00009B9F1320FB6 +:10AD50006FDA0A20FFF7F2FB0220009002AB7222AA +:10AD6000D0210120F7F7EEFB002802D15FF0FF3081 +:10AD7000A4E002A8FFF7CBFCFFB290FBF7F8B8F114 +:10AD8000070F02DA7FF0010098E05FF0000A1BE095 +:10AD90005FFA8BFB02A810EB4B00FFF7B8FC5FFAE1 +:10ADA0008BFB54F82B1001FA80F05FFA8BFB44F810 +:10ADB0002B001BF1010B5FFA8BFBBBF1030FE7DBF1 +:10ADC00019F101091AF1010A5FFA8AFAC245BDDADE +:10ADD000B9F1320FBADAFFB2009702AB7422D02178 +:10ADE0000120F7F7AFFB002802D15FF0FF3065E0EC +:10ADF000F6B2002E1AD05FF0000B5FFA8BFBBBF1AE +:10AE0000030FDDDA5FFA8BFB02A810EB4B00FFF7B4 +:10AE10007EFC5FFA8BFB55F82B1001FA80F05FFA8D +:10AE20008BFB45F82B001BF1010BE6E75FF0000BF5 +:10AE3000C1E723208DF8040000208DF805000223CF +:10AE400001AAD0210120F7F723FB002802D15FF0EF +:10AE5000FF3033E05FF0000B0FE05FFA8BFB54F83C +:10AE60002B004FF47A714843322190FBF1F05FFAE6 +:10AE70008BFB44F82B001BF1010B5FFA8BFBBBF142 +:10AE8000030FEADBF6B2002E17D05FF0000B0FE0E5 +:10AE90005FFA8BFB55F82B004FF47A71484332214F +:10AEA00090FBF1F05FFA8BFB45F82B001BF1010BD7 +:10AEB0005FFA8BFBBBF1030FEADB012005B0BDE8B5 +:10AEC000F08F2DE9F04389B004000D001600002733 +:10AED0005FF0010801A8002101605FF00009032074 +:10AEE000009001AB0D22D0210120F7F72BFB0028A9 +:10AEF00001D15FF0FF385FF0000905E005A80021EF +:10AF000040F8291019F10109B9F1030F11DA01A86C +:10AF100019F800000028F1D001A819F80000DFF8A6 +:10AF2000641A11EB400030F8020C05A941F8290021 +:10AF3000E8E75FF000091FE002A850F82900DFF8F9 +:10AF4000481A884207DADFF8440AF7F72BFA01209B +:10AF500010FA09F0074302A850F82900DFF8301A68 +:10AF6000884207DBDFF82C0AF7F71CFA012010FAF9 +:10AF700009F0074319F10109B9F1030F2ADA55F86D +:10AF8000290056F82910401A0BF0A6F802A941F83A +:10AF9000290005A850F829000028CDD002A850F8B3 +:10AFA000290005A951F8291090FBF1F0B0F57A704D +:10AFB0000BF092F824F8190034F91900B0F5FA7F73 +:10AFC000D8DDDFF8D409F7F7EDF9012010FA09F020 +:10AFD0000743CFE7B4F904000090B4F90230B4F9A4 +:10AFE00000203900DFF8B409F7F7DCF9002F05D0AD +:10AFF000DFF8AC09F7F7D6F97FF00208404640B217 +:10B0000009B0BDE8F08338B505000020ADF80000B8 +:10B010000020ADF80200F7F744F9040038208DF85D +:10B02000000000208DF80100022300AAD02100209A +:10B03000F7F72EFA002801D1002074E000F01AFB87 +:10B04000002801D100206EE01F208DF800004B2069 +:10B050008DF80100022300AAD0210020F7F718FA8A +:10B06000002801D100205EE01E208DF8000006209F +:10B070008DF80100022300AAD0210020F7F708FA7A +:10B08000002801D100204EE069208DF80000C0208A +:10B090008DF80100022300AAD0210020F7F7F8F96B +:10B0A000002801D100203EE0012201210320F7F712 +:10B0B0006BFB0020F7F76AFB38208DF8000040207A +:10B0C0008DF80100022300AAD0210020F7F7E0F953 +:10B0D000002801D1002026E0012028702000407DBA +:10B0E000C046012810D001212000F7F7C6FABDF8AC +:10B0F0000200401CADF80200BDF802003228EDDB72 +:10B10000DFF8A008F7F74EF9012200210320F7F736 +:10B110003BFB0020F7F73AFB00F0A2FB002801D12F +:10B12000002000E0012032BD0CED00E00400FA0533 +:10B1300070B58EB0040000A80021002206C00838B7 +:10B14000012500260BA80021002200230EC00C3888 +:10B1500008A80021002200230EC00C3805A80021F9 +:10B16000002200230EC00C3802A800210022002378 +:10B170000EC00C38FFF7D1FA002801D1002056E0AC +:10B18000FFF7DEFB002806D00126FFF7BEFC0028F3 +:10B1900003D100204BE0002049E0012302AA08A9C6 +:10B1A0000020FFF7F0FC05006DB2012D04D0DFF8A0 +:10B1B000F007F7F7F7F81CE0012305AA0BA97FF0C9 +:10B1C0001F00FFF7E0FC05006DB2012D04D0DFF891 +:10B1D000C807F7F7E7F80CE005AA02A900A8FFF7EF +:10B1E00070FE05006DB2012D03D0DFF8A007F7F760 +:10B1F000D9F82670BDF800006070BDF9000000129B +:10B20000A070BDF80200E070BDF9020000122071CC +:10B21000BDF804006071BDF904000012A071E57171 +:10B22000FFF7E6FA002801D1002000E001200EB06F +:10B2300070BD80B5DFF870070078002809D1FFF7EE +:10B24000B8F9002801D1002004E0DFF85C070121F3 +:10B250000170012002BD0000A07900201CB5002073 +:10B260008DF806000020ADF80400F7F71AF8040086 +:10B27000012000900DF106036B22D0210020F7F78A +:10B2800061F9002801D1002088E09DF806006021C6 +:10B29000084216D06B208DF804009DF8060010F0CF +:10B2A0009F008DF80500022301AAD0210020F7F7A6 +:10B2B000EFF8002801D1002070E014212000F7F7FA +:10B2C000DCF9012000900DF106036C22D021002052 +:10B2D000F7F738F9002801D100205FE06C208DF8E5 +:10B2E00004009DF8060010F0C7008DF80500022349 +:10B2F00001AAD0210020F7F7CBF8002801D10020C7 +:10B300004CE00A212000F7F7B8F91D208DF8040061 +:10B3100043208DF80500022301AAD0210020F7F771 +:10B32000B7F8002801D1002038E01C208DF8040077 +:10B3300000208DF80500022301AAD0210020F7F794 +:10B34000A7F8002801D1002028E020208DF8040073 +:10B3500080208DF80500022301AAD0210020F7F7F4 +:10B3600097F8002801D1002018E01F208DF8040074 +:10B3700080208DF80500022301AAD0210020F7F7D4 +:10B3800087F8002801D1002008E0DFF820060078C7 +:10B3900050F00100DFF814160870012016BD00B54A +:10B3A00083B000208DF806000020ADF804000120D5 +:10B3B00000900DF106036C22D0210020F7F7C2F8AF +:10B3C000002801D1002030E06C208DF804009DF8A9 +:10B3D000060050F038008DF80500022301AAD021A4 +:10B3E0000020F7F755F8002801D100201DE0DFF814 +:10B3F000BC05007880070FD46B208DF80400402036 +:10B400008DF80500022301AAD0210020F7F740F8AB +:10B41000002801D1002008E0DFF89005007810F046 +:10B42000FE00DFF88815087001200EBD981F030884 +:10B43000A0290120A4290120A5290120A629012055 +:10B44000A7290120A3290120A8290120A229012040 +:10B4500000B583B000208DF804000020ADF8060090 +:10B460000120009001AB6C22D0210020F7F76AF890 +:10B47000002801D1002014E06C208DF806009DF812 +:10B48000040050F038008DF8070002230DF1060289 +:10B49000D0210020F6F7FCFF002801D1002000E0B9 +:10B4A00001200EBDF0B585B004000E0002A80021F9 +:10B4B000002206C008380020ADF804000125F6F788 +:10B4C000F0FE0700DFF8E8040068401CDFF8E01435 +:10B4D00008600120009002AB6B22D0210020F7F71A +:10B4E00031F8002801D10020C2E09DF80800400694 +:10B4F0001AD56B208DF804009DF8080010F0BF00ED +:10B500008DF80500022301AAD0210020F6F7C0FF24 +:10B51000002801D10020ABE014213800F7F7ADF886 +:10B52000DFF89004F6F73EFF0120009002AB6C229A +:10B53000D0210020F7F706F8002801D1002097E07D +:10B540009DF80800382108421ED06C208DF80400B8 +:10B550009DF8080010F0C7008DF80500022301AA2D +:10B56000D0210020F6F794FF002801D100207FE0D1 +:10B5700005213800F7F781F8DFF83C04F6F712FFF1 +:10B58000DFF8380401210160F6B2009602AB3B22DD +:10B59000D0210020F6F7D6FF002805D1DFF82004DF +:10B5A000F6F700FF002063E09DF8090020709DF889 +:10B5B000080060709DF80B00A0709DF80A00E07014 +:10B5C0009DF80D0020719DF80C006071002000E0D6 +:10B5D000401C062806D2015DDFF8E823825C914218 +:10B5E000F6D00025EDB2012D18D1DFF8DC0300689C +:10B5F000401CDFF8D4130860DFF8CC030068132880 +:10B6000004D1DFF8C803F6F7CDFE0BE0DFF8B8038E +:10B610000068142806D1FEF723FF03E0DFF8A80333 +:10B620000021016006222100DFF89803F9F762F992 +:10B63000DFF87C030068C82190FBF1F201FB1200E7 +:10B64000002814D1B4F904000090B4F90230B4F920 +:10B650000020DA480168DFF87803F6F7A3FED44843 +:10B660000068DC49884202DBD148002101600120EA +:10B6700005B0F0BD30B583B001240020ADF8060060 +:10B6800000208DF80400F6F70CFE05000120009064 +:10B6900001AB6B22D0210020F6F754FF002801D126 +:10B6A00000208BE09DF8040040061AD56B208DF831 +:10B6B00006009DF8040010F0BF008DF8070002237B +:10B6C0000DF10602D0210020F6F7E2FE002801D19C +:10B6D000002073E014212800F6F7CFFFBE48F6F7EC +:10B6E00061FE1D208DF8060008208DF8070002235A +:10B6F0000DF10602D0210020F6F7CAFE002801D184 +:10B7000000205BE00120009001AB6C22D0210020E2 +:10B71000F6F718FF002801D100204FE06C208DF8CB +:10B7200006009DF8040050F080008DF804009DF89C +:10B73000040050F007008DF804009DF8040010F09C +:10B74000C7008DF804009DF804008DF8070002235F +:10B750000DF10602D0210020F6F79AFE002801D153 +:10B7600000202BE00120009001AB6B22D0210020B3 +:10B77000F6F7E8FE002801D100201FE06B208DF8CD +:10B7800006009DF8040010F0BF008DF804009DF83D +:10B79000040050F020008DF804009DF804008DF89E +:10B7A000070002230DF10602D0210020F6F770FEFB +:10B7B000002801D1002001E02000C0B23EBD80B5CC +:10B7C0000020ADF80000FFF755FF002801D1002050 +:10B7D00045E01F208DF800004B208DF8010002236A +:10B7E00000AAD0210020F6F753FE002801D1002046 +:10B7F00035E01E208DF8000006208DF801000223A0 +:10B8000000AAD0210020F6F743FE002801D1002035 +:10B8100025E069208DF80000C0208DF8010002238A +:10B8200000AAD0210020F6F733FE002801D1002025 +:10B8300015E0012201210320F6F7A6FF38208DF83C +:10B84000000040208DF80100022300AAD021002032 +:10B85000F6F71EFE002801D1002000E0012002BD05 +:10B8600080B50020ADF80000012200210320F6F78A +:10B870008BFF38208DF8000000208DF80100022396 +:10B8800000AAD0210020F6F703FE002801D10020F5 +:10B8900058E06B208DF8000000208DF80100022395 +:10B8A00000AAD0210020F6F7F3FD002801D10020E6 +:10B8B00048E01D208DF8000000208DF801000223D3 +:10B8C00000AAD0210020F6F7E3FD002801D10020D6 +:10B8D00038E06C208DF8000034480078032803D14C +:10B8E00000208DF8010012E030480078022803D1D2 +:10B8F00038208DF801000AE02C480078012803D197 +:10B9000007208DF8010002E03F208DF8010002239E +:10B9100000AAD0210020F6F7BBFD002801D10020AD +:10B9200010E069208DF8000000208DF8010002234E +:10B9300000AAD0210020F6F7ABFD002801D100209D +:10B9400000E0012002BD80B50178012905D1FFF793 +:10B950005AFB00280AD1002009E00178022905D10C +:10B96000FFF7E6FB002801D1002000E0012002BD26 +:10B9700080B51A490020FAF7C7F919490B20FAF7E0 +:10B98000C3F901BDFC060308003E4900202003085E +:10B9900001EFE7002820030818200308141F0308FC +:10B9A0003020030838200308FF280120DC2B012069 +:10B9B0009C2A01204020030848200308F42A012083 +:10B9C00050200308CC2A0120602B0120DC1F030833 +:10B9D000EC1F0308A186010058200308601E03081D +:10B9E000841E030810B50024DFF8500C00780028EE +:10B9F0000AD1FEF7DEFD002801D1002007E0DFF8C4 +:10BA00003C0C0121017000E001242000C0B210BDF7 +:10BA10001CB500208DF806000020ADF80400F6F7F4 +:10BA200040FC0400012000900DF106036B22D021A0 +:10BA30000120F6F787FD002801D1002068E09DF87D +:10BA400006006021084216D06B208DF804009DF896 +:10BA5000060010F09F008DF80500022301AAD021F6 +:10BA60000120F6F715FD002801D1002050E0322119 +:10BA70002000F6F702FE012000900DF106036C2273 +:10BA8000D0210120F6F75EFD002801D100203FE023 +:10BA90006C208DF804009DF8060010F0F8008DF879 +:10BAA0000500022301AAD0210120F6F7F1FC0028AD +:10BAB00001D100202CE00A212000F6F7DEFD1B203A +:10BAC0008DF8040008208DF80500022301AAD0217A +:10BAD0000120F6F7DDFC002801D1002018E01A2033 +:10BAE0008DF8040003208DF80500022301AAD0215F +:10BAF0000120F6F7CDFC002801D1002008E0DFF896 +:10BB0000400B007850F00200DFF8341B0870012071 +:10BB100016BD00B583B000208DF806000020ADF8FA +:10BB20000400012000900DF106036C22D0210120B9 +:10BB3000F6F708FD002801D1002030E06C208DF8D8 +:10BB400004009DF8060050F007008DF80500022360 +:10BB500001AAD0210120F6F79BFC002801D100208A +:10BB60001DE0DFF8DC0A0078C0070FD46B208DF8E9 +:10BB7000040040208DF80500022301AAD0210120F5 +:10BB8000F6F786FC002801D1002008E0DFF8B00AB3 +:10BB9000007810F0FD00DFF8A81A087001200EBD33 +:10BBA00000B583B000208DF804000020ADF8060039 +:10BBB0000120009001AB6C22D0210120F6F7C2FCDD +:10BBC000002801D1002014E06C208DF806009DF8BB +:10BBD000040050F007008DF8070002230DF1060263 +:10BBE000D0210120F6F754FC002801D1002000E00C +:10BBF00001200EBD7FB5040002A80021002206C06E +:10BC0000083800260020ADF80400F6F74AFB0500CE +:10BC10000120009002AB6B22D0210120F6F792FCAC +:10BC2000002801D1002083E09DF80800400625D5BA +:10BC30006B208DF804009DF8080010F0BF008DF80F +:10BC40000500022301AAD0210120F6F721FC0028DB +:10BC500001D100206CE032212800F6F70EFDDFF85C +:10BC6000E409F6F79FFB002603E0F6B2002030550A +:10BC7000761CF6B2062EF8DB012059E00120009078 +:10BC800002AB6C22D0210120F6F75CFC002801D128 +:10BC900000204DE09DF808000721084225D06C20C7 +:10BCA0008DF804009DF8080010F0F8008DF80500EC +:10BCB000022301AAD0210120F6F7EAFB002801D1D6 +:10BCC000002035E00A212800F6F7D7FCDFF87809D4 +:10BCD000F6F768FB002603E0F6B200203055761C2C +:10BCE000F6B2062EF8DB012022E00620009002AB1F +:10BCF0004322D0210120F6F725FC002805D1DFF8EA +:10BD00004C09F6F74FFB002012E09DF80900207067 +:10BD10009DF8080060709DF80B00A0709DF80A0067 +:10BD2000E0709DF80D0020719DF80C0060710120FD +:10BD300004B070BD2DE9F64FADF63C6D0500002056 +:10BD4000ADF8080003A81421F8F712FD002608A892 +:10BD50000021002200230EC00C385FF0000940F6DD +:10BD60008C1068444FF49661F8F702FDFFA8E030AC +:10BD70004FF49661F8F7FCFC0BA84FF49661F8F7C6 +:10BD8000F7FC5FF00008002700240020070000E017 +:10BD90007F1C032F80F2BA806B208DF80800781C7E +:10BDA0008DF80900022302AAD0210120F6F770FBCA +:10BDB000002801D1002099E13220FEF7BFFB6A2064 +:10BDC0008DF8080044208DF80900022302AAD02132 +:10BDD0000120F6F75DFB002801D1002086E1012457 +:10BDE00009E019EB060608A850F8270019EB000037 +:10BDF00008A941F827002000441E012875DB2320F4 +:10BE00008DF8080070208DF80900022302AAD021C5 +:10BE10000120F6F73DFB002801D1002066E14B2010 +:10BE2000FEF78CFB23208DF8080000208DF8090018 +:10BE3000022302AAD0210120F6F72AFB002801D113 +:10BE4000002053E10220009003AB7222D021012098 +:10BE5000F6F778FB002801D1002047E103A8FEF7A0 +:10BE600056FC00EE100AB8EEC00A10EE100AFCF7FD +:10BE7000F5F8DFF8DC27DFF8DC37F6F7F5FEF7F743 +:10BE80001DFA8146B9F148000128B4DB5FF00008D3 +:10BE90001DE003A8FEF73BFC18EB060140F68C12F0 +:10BEA0006A4422F811000DF10E00FEF730FC18EB89 +:10BEB0000601FFAAE03222F8110004A8FEF727FCD1 +:10BEC00018EB06010BAA22F8110018F10108C84569 +:10BED00087DA0620009003AB7422D0210120F6F708 +:10BEE00031FB0028D5D1002000E123208DF8080087 +:10BEF00000208DF80900022302AAD0210120F6F7C4 +:10BF0000C7FA00287FF444AF0020EFE0002E01D0F4 +:10BF1000340000E001245FF0000800200021C5E9A2 +:10BF2000000100200021C5E9020100200021C5E92F +:10BF3000040122E0D5E9000140F68C126A4432F98E +:10BF40001820D31780185941C5E90001D5E902012D +:10BF5000FFAAE03232F91820D31780185941C5E9F9 +:10BF60000201D5E904010BAA32F91820D317801871 +:10BF70005941C5E9040118F10108B045DADBD5E9FA +:10BF800000012200E317FDF7B5F8C5E90001D5E986 +:10BF900002012200E317FDF7ADF8C5E90201D5E97A +:10BFA00004012200E317FDF7A5F8C5E904015FF0DD +:10BFB0000008DDF83C0E00220023C0E90023DDF874 +:10BFC0003C0E00220023C0E90223DDF83C0E0022D3 +:10BFD0000023C0E9042382E0DDF83C2ED2E9000111 +:10BFE000CDE9000140F68C10684430F91800C11703 +:10BFF000D5E90023801A994140F68C126A4432F93F +:10C0000018A05FEAEA7BD5E90023BAEB02027BEBDA +:10C010000303A2FB00AB02FB01BB03FB00BBDDE99A +:10C02000000110EB0A0051EB0B01DDF83C2EC2E9D8 +:10C030000001DDF83C2ED2E90201CDE90001FFA8A4 +:10C04000E03030F91800C117D5E90223801A994170 +:10C05000FFAAE03232F918A05FEAEA7BD5E90223B1 +:10C06000BAEB02027BEB0303A2FB00AB02FB01BBBA +:10C0700003FB00BBDDE9000110EB0A0051EB0B01F3 +:10C08000DDF83C2EC2E90201DDF83C2ED2E90401C4 +:10C09000CDE900010BA830F91800C117D5E9042338 +:10C0A000801A99410BAA32F918A05FEAEA7BD5E918 +:10C0B0000423BAEB02027BEB0303A2FB00AB02FBFF +:10C0C00001BB03FB00BBDDE9000110EB0A0051EBF3 +:10C0D0000B01DDF83C2EC2E9040118F10108B0455E +:10C0E000FFF67AAFDDF8400E066001200DF6446DD4 +:10C0F000BDE8F08F2DE9F04389B004000D00160073 +:10C1000001275FF0000801A80021016003200090D2 +:10C1100001AB0022D0210120F6F714FA002801D14A +:10C120005FF0FF375FF0000907E04FFA89F905A8D3 +:10C13000002140F8291019F101094FFA89F9B9F1E4 +:10C14000030F17DA4FFA89F901A819F8000000283F +:10C15000EBD04FFA89F901A819F80000DFF8F814BC +:10C1600011EB400030F8020C4FFA89F905A941F8AB +:10C170002900E0E75FF0000925E04FFA89F902A8FD +:10C1800050F82900DFF8D414884208DADFF8D00428 +:10C19000F6F708F9012010FA09F050EA08084FFAFA +:10C1A00089F902A850F82900DFF8B814884208DBA2 +:10C1B000DFF8B404F6F7F6F8012010FA09F050EAB7 +:10C1C000080819F101094FFA89F9B9F1030F3BDAAF +:10C1D0004FFA89F955F829004FFA89F956F82910CC +:10C1E000401A09F079FF4FFA89F902A941F82900AC +:10C1F0004FFA89F905A850F829000028BDD04FFA58 +:10C2000089F902A850F829004FFA89F905A951F8CF +:10C21000291090FBF1F0B0F57A7009F05DFF4FFA4C +:10C2200089F924F819004FFA89F934F91900B0F5A1 +:10C23000FA7FC6DDDFF83404F6F7B4F8012010FA0F +:10C2400009F050EA0808BCE74FFA88F8B8F1000F87 +:10C2500005D0DFF81C04F6F7A5F87FF002073800D8 +:10C2600040B209B0BDE8F0832DE9F0479CB004006E +:10C270005FF0010801250CA81821F8F779FA06A843 +:10C280001821F8F775FA02A80021016000A8002122 +:10C29000002206C008385FF0000A18A8002100221A +:10C2A00000230EC00C3815A80021002200230EC068 +:10C2B0000C3812A80021002200230EC00C3803A85D +:10C2C0000021002200230EC00C380026DFF8A40352 +:10C2D000D0F80490FEF721FA002801D1002049E1AE +:10C2E000FEF72EFB80465FFA88F8B8F1010F0AD1FD +:10C2F0005FF0010A02AA06A90CA8FFF71BFD00289F +:10C3000005D1002036E1FEF773FA002032E1FEF796 +:10C31000FCFB002801D100202CE1002303AA15A971 +:10C320000020FEF730FC05006DB2012D03D0761C15 +:10C33000D148F6F737F8002312AA18A97FF01F009A +:10C34000FEF721FC05006DB2012D03D0B61CCB48D1 +:10C35000F6F728F818AA15A900A8FFF7CBFE0500E4 +:10C360006DB2012D03D0361DC548F6F71BF8DDE987 +:10C370000601002901D100280BD0DDE908010029C0 +:10C3800001D1002805D0DDE90A01002905D10028E6 +:10C3900003D1BC48F6F706F8083600273AE0FFB2AA +:10C3A0000CA810EBC700D0E9002340F24110002197 +:10C3B0008B420FDB01DC82420CD31036FFB20CA89B +:10C3C00010EBC702D2E900010200FFB23900AE480B +:10C3D000F5F7E8FFFFB206A810EBC702D2E90001AB +:10C3E000029AD317FCF786FE002912DB02DCB0F5B7 +:10C3F000C85F0ED34036FFB206A810EBC702D2E9E1 +:10C400000001029990FBF1F2FFB239009F48F5F765 +:10C41000C9FF7F1CFFB2032FC1DB36B2002E1AD139 +:10C4200000220CE0D2B219EB4203D2B20CA810EBFE +:10C43000C206D6E900018000A3F85800521CD2B20F +:10C44000032AEFDBB9F95C30B9F95A20B9F9581071 +:10C450008F48F5F7A7FF84F800A0BDF800006070D2 +:10C46000BDF900000012A070BDF80200E070BDF937 +:10C47000020000122071BDF804006071BDF90400D3 +:10C480000012A071E5710298207202980012607289 +:10C4900002980014A07202980016E072DDE90C0107 +:10C4A0002073DDE90C0100B200126073DDE90C01BC +:10C4B0000014A073DDE90C010016E073DDE90E0144 +:10C4C0002074DDE90E0100B200126074DDE90E0196 +:10C4D0000014A074DDE90E010016E074DDE910011E +:10C4E0002075DDE9100100B200126075DDE9100170 +:10C4F0000014A075DDE910010016E075DDE9060104 +:10C500002076DDE9060100B200126076DDE9060161 +:10C510000014A076DDE906010016E076DDE90801E9 +:10C520002077DDE9080100B200126077DDE908013B +:10C530000014A077DDE908010016E077DDE90A01C3 +:10C5400084F82000DDE90A0100B2001284F821001D +:10C55000DDE90A01001484F82200DDE90A01001671 +:10C5600084F82300FEF744F9002801D1002001E0FF +:10C570004046C0B21CB0BDE8F08730B583B00400BF +:10C580000020ADF8040000203A494D68697A00297E +:10C5900007D1286E40688047F5F783FE0A21F6F739 +:10C5A0006CF80220009001AB4122D0210120F5F768 +:10C5B000C9FF002801D1002017E09DF805009DF873 +:10C5C000041050EA0120032110FB01F04FF47A71AE +:10C5D00090FBF1F01530207000206070687A002820 +:10C5E00002D1286E8068804701203EBD80B5017869 +:10C5F000002905D1FFF738FE00280AD1002009E004 +:10C600000178012905D1FFF7B8FF002801D10020EA +:10C6100000E0012002BD80B5C0B2062806D10800A6 +:10C62000FFF7ABFF002801D1002000E0012002BD90 +:10C6300080B518490120F9F767FB01BDFF280120EB +:10C64000DC2B012060200308682003087020030809 +:10C650002D211FF46C56C53FFC08030830FD130064 +:10C660008020030879E2D10088200308782003089D +:10C67000902003080840002098200308A020030809 +:10C68000A8200308FC1F0308341F0308B01F030879 +:10C69000C81F0308A81E0308DFF88005704730B5DF +:10C6A00083B00020ADF806008DF804000120009052 +:10C6B00001AB002218210220F5F744FF04469DF843 +:10C6C000040048281FD131208DF806000DF1060521 +:10C6D0000120687002230DF1060218211846F5F7B3 +:10C6E000D7FE00280DD031208DF80600002068709C +:10C6F00002230DF1060218211846F5F7C9FE00289D +:10C7000002D100203EBD002418220021DFF80C05D4 +:10C71000F5F7A4FD20463EBD70B582B00020ADF80F +:10C72000000009F0E2FC0446DFF8F4048168497A6D +:10C73000C268527A51180069407A0818012801DB52 +:10C74000012076BDDFF8DC54687801281CD0322047 +:10C750008DF8000000AE01207070022300AA18219D +:10C760001846F5F795FE00280CD031208DF8000012 +:10C7700001207070022300AA18211846F5F788FEE0 +:10C78000002803D1002076BD01202870281D616992 +:10C790008847012076BD38B50020ADF8000009F0CB +:10C7A000A4FC0446DFF878048168497AC268527AAA +:10C7B00051180069407A0818022801DB012032BDB7 +:10C7C000DFF860542878012812D031208DF800005D +:10C7D00000208DF80100022300AA18211846F5F761 +:10C7E00057FE002801D1002032BD0020687001E012 +:10C7F00000202870281D21698847012032BD80B59E +:10C800000020ADF8000031208DF8000000208DF8E8 +:10C810000100022300AA18211846F5F739FE002866 +:10C8200001D1002002BD012002BD7CB504460020DC +:10C83000ADF806008DF804000120009001AB002245 +:10C8400018210220F5F77EFE05469DF804004828D1 +:10C8500029D131208DF806000DF106061F207070D9 +:10C8600002230DF1060218211846F5F711FE0028E3 +:10C8700017D0032000902346602218210220F5F7EC +:10C8800061FE00280DD031208DF806000020707068 +:10C8900002230DF1060218211846F5F7F9FD0028CC +:10C8A00002D1002076BD0025284676BD0021DE4A53 +:10C8B00002E00B5C8B54491C1B29FADBDB48C0F8F7 +:10C8C000D423012070472DE9F04387B004460D467C +:10C8D00016461F464FF000084046ADF8040002A877 +:10C8E00041460A460B460EC04FF0050906C001201E +:10C8F000009002AB102218210220F5F723FE9DF8CC +:10C900000810C9070ED501280CD1082000900DF1A0 +:10C910000903112218210220F5F714FE002807D17F +:10C9200040467BE04846A0F1010980B20028DED1F4 +:10C93000BF489DF80810017002A90A7A4270CA79AE +:10C9400082704A78C2708A780271CA7842710A7914 +:10C9500082714A79C271897901720AE002A800EBFA +:10C9600048008178407810EB012024F8180008F185 +:10C970000108B8F1030FF1DBA948D0F80C8008F1E9 +:10C980000C0999F815202146D9F80C00D8F80C307C +:10C99000C018F7F7AFFF404603F0B0F899F815203C +:10C9A000D9F80C00D8F80C1041182046F7F7A2FF70 +:10C9B000DFF8788205AA2146404609F0EBFD98F998 +:10C9C000F4023860B8F8EE00288008F2EE004188E2 +:10C9D00069808188A98081892180C1896180008ADC +:10C9E000A08020882988401A308060886988401A91 +:10C9F0007080A088A988401AB08031208DF804008A +:10CA000001208DF80500022301AA18211846F5F728 +:10CA10003FFD002801D1002000E0012007B0BDE863 +:10CA2000F08330B585B004460020ADF8040002A8BC +:10CA300000210A460B460EC005250120009002ABDE +:10CA4000102218210220F5F77DFD9DF80810C90776 +:10CA50000ED501280CD1082000900DF109031122F8 +:10CA600018210220F5F76EFD002806D1002029E0EC +:10CA70002846451E80B20028DFD16D489DF8081079 +:10CA8000017002A90A7A4270487820708878607034 +:10CA9000C878A0700879E070487920719DF80E0080 +:10CAA000607131208DF8040001208DF8050002230B +:10CAB00001AA18211846F5F7EBFC002801D1002047 +:10CAC00000E0012005B030BD2DE9F041044600250D +:10CAD000FDF7C2FC0746FFF7DFFD06465048D0F8D9 +:10CAE0001080F86E40070BD406F1140306F10C0217 +:10CAF000B11D3046FFF7E7FE002801D1284651E07E +:10CB000098F80A00012848D14948017821704178F5 +:10CB10006170C178A1700179E170417921718179E9 +:10CB20006171C179A171007AE0714048818D2172F3 +:10CB3000B0F92C100912617200F12C014A88A2721E +:10CB4000B1F902201212E2728A882273B1F904103C +:10CB500009126173B0F8F410A173B0F9F41009125E +:10CB6000E173F43041882174B0F902100912617444 +:10CB70008188A174B0F904000012E0742846207581 +:10CB80000FE006EB4500C18804F8151004EB4501E1 +:10CB9000B0F90600001248706D1C032DF1DB7069BE +:10CBA000A0710120BDE8F081F8B504460025FDF72D +:10CBB00053FC0746FFF770FD0646F86E000705D5E3 +:10CBC0002046FFF72EFF002826D109E006F11403C6 +:10CBD00006F10C02B11D3046FFF775FE002814D196 +:10CBE0002846F2BD36F8150004F8150004EB4500A0 +:10CBF00036F915100912417006EB45018A898271D8 +:10CC0000B1F90C100912C1716D1C032DEADB182259 +:10CC100031460248F7F76EFE0120F2BD942701204D +:10CC2000084000208828012040270120B0D30020A0 +:10CC3000C42901207CB504460020ADF806008DF81B +:10CC40000400F5F72EFB05460120009001AB002201 +:10CC500018210220F5F776FC9DF80410482932D1FE +:10CC600031208DF806000DF106061F20707002239A +:10CC70000DF1060218211846F5F70AFC00281BD012 +:10CC800031208DF806000020707002230DF106029D +:10CC900018211846F5F7FCFB00280DD00121284685 +:10CCA000F5F7EBFC0120009001AB312218210220A6 +:10CCB000F5F748FC002801D1002076BD9DF804005E +:10CCC0002070012076BDFF21217076BD2DE9F04353 +:10CCD00087B0044604A800210A460B460EC0084649 +:10CCE000ADF80C004FF00509F5F7DBFA0546022018 +:10CCF000009004AB00221821F5F724FC06469DF8AD +:10CD00001000482840F00B819DF81000207004AFFF +:10CD10007878607031208DF80C000DF10C081F2020 +:10CD200088F80100022303AA18211846F5F7B0FB82 +:10CD3000002800F0F5800320009004AB6022182149 +:10CD40000220F5F7FFFB002800F0EA809DF81000B4 +:10CD5000A0707878E070B878207131208DF80C00E0 +:10CD6000002088F80100022303AA18211846F5F7CD +:10CD70008FFB002800F0D4800120009004AB31220A +:10CD800018210220F5F7DEFB002800F0C9809DF88D +:10CD90001000607531208DF80C00012088F801002A +:10CDA000022303AA18211846F5F772FB002800F0A9 +:10CDB000B7801E212846F5F760FC0120009004ABE7 +:10CDC000102218210220F5F7BDFB06469DF8100041 +:10CDD000C0070DD5012E0BD1082000900DF11103D5 +:10CDE000112218210220F5F7ADFB002806D160E0E2 +:10CDF0004846A0F1010980B20028DED1B87902903E +:10CE00007879019038790090FB78BA7879780FF2C8 +:10CE10006C10F5F7C7FAB878797811EB00203979FA +:10CE2000FA7812EB0121BA797B7913EB02220346DF +:10CE30001BB21B126371A071084600B20012E071B0 +:10CE40002172104600B200126072A2729DF81000AA +:10CE5000E072387A207331208DF80C00102088F8A9 +:10CE60000100022303AA18211846F5F711FB002838 +:10CE700056D01E212846F5F700FC4FF00509012089 +:10CE8000009004AB102218210220F5F75BFB064648 +:10CE90009DF81000C0070ED5012E0CD1082000907F +:10CEA0000DF11103112218210220F5F74BFB002888 +:10CEB00007D1002035E04846A0F1010980B20028E2 +:10CEC000DDD1B87902907879019038790090FB78BB +:10CED000BA7879780FF2C000F5F764FAB878797803 +:10CEE00011EB00203979FA7812EB0121BA797B79BC +:10CEF00013EB022203461BB21B126373A073084696 +:10CF000000B20012E0732174104600B20012607487 +:10CF1000A2749DF81000E074387A207500E00026B5 +:10CF2000304607B0BDE8F08318B404460B461146FE +:10CF30000020032C04D0042C05D0072C06D008E0D8 +:10CF4000184614BC71E4184612BC73E6184612BCAD +:10CF5000ACE412BC704710B50FF258042146022011 +:10CF6000F8F7D2FE0FF270010420F8F7CDFE21464B +:10CF70000320BDE81040F8F7C7BE0000474D53310D +:10CF80002D25642C2025642C2025642C2025642C40 +:10CF90002025642C20256400474D53322D25642C18 +:10CFA0002025642C2025642C2025642C2025642C2D +:10CFB000202564009FC6000819C7000897C700080D +:10CFC000FFC7000800000000A9CB00080000000017 +:10CFD000CDCC000829CF00089FC6000819C700085B +:10CFE00097C70008FFC7000800000000C9CA000872 +:10CFF00000000000CDCC000829CF000838B5002083 +:10D00000ADF800000446F5F74CF905464FF48051A1 +:10D010002046F5F7A9FB0A212846F5F72EFB00E08C +:10D02000641C062C12D2DFF8080D215C8DF800106C +:10D030002018007A8DF80100022300AA722107202F +:10D04000F5F726FA0028EBD1002032BD012032BDD1 +:10D050002DE9FC4107468846FDF7FEF9044600200D +:10D06000ADF80400DFF8CC5CA88D0646B8F1000FDF +:10D0700002D03843A88501E0B843A885012000907C +:10D080000DF10603AB2272210620F5F75BFA0028AA +:10D0900001D10020C5E1A88D0E2800F2A681DFE8AD +:10D0A00010F00F00A4011C00A4013F00A4013F00E8 +:10D0B000A401B700A401B700A401B700A401B70000 +:10D0C00080208DF8040000208DF805009DF80600F2 +:10D0D00000F0FD008DF8060087E116F00C0F01D07E +:10D0E0000120687581208DF8040001AEEE2070707B +:10D0F000022301AA72210920F5F7CAF9002801D1FB +:10D1000000208EE17078E87080208DF80400032004 +:10D1100070709DF8060000F0FD008DF8060064E1D7 +:10D120003046000701D4022E01D1012068759D20F0 +:10D130008DF8040001AE0C207070022301AA722148 +:10D140000920F5F7A5F9002801D1002069E19E200A +:10D150008DF804000C207070022301AA72210920AE +:10D16000F5F796F9002801D100205AE181208DF8C9 +:10D170000400FD207070022301AA72210920F5F736 +:10D1800087F9002801D100204BE17078E8708E20EB +:10D190008DF80400287A002812D00C218F2009F085 +:10D1A00014FD04218F2009F0E6FC3021902009F0C5 +:10D1B0000CFD3021902009F0DEFC4520707011E05C +:10D1C0000C218F2009F001FD08218F2009F0D3FCEC +:10D1D0003021902009F0F9FC1021902009F0CBFCBF +:10D1E00082207070022301AA72210920F5F750F9FC +:10D1F000002801D1002014E180208DF804002720B0 +:10D2000070709DF8060000F0FD008DF80600ECE05F +:10D2100016F0080701AE4FD109F0E0FD0120687556 +:10D22000A4208DF8040000207070DFF80C0D0021A0 +:10D230000170022301AA72210920F5F729F90028BB +:10D2400001D10020EDE0A5208DF8040000207070D1 +:10D25000DFF8A00D00210170022301AA722109202C +:10D26000F5F716F9002801D10020DAE0A7208DF8A3 +:10D27000040000207070DFF8800D0021017002238F +:10D2800001AA72210920F5F703F9002801D1002035 +:10D29000C7E0A9208DF8040000207070DFF8D00DE1 +:10D2A00000210170022301AA72210920F5F7F0F88C +:10D2B000002801D10020B4E081208DF80400FE2078 +:10D2C0007070022301AA72210920F5F7E1F8002805 +:10D2D00001D10020A5E07078E8708E208DF8040060 +:10D2E000287A002812D00C218F2009F06EFC04212E +:10D2F0008F2009F040FC3021902009F066FC30219D +:10D30000902009F038FC4F20707011E00C218F2024 +:10D3100009F05BFC08218F2009F02DFC30219020C2 +:10D3200009F053FC2121902009F025FC8420707025 +:10D33000022301AA72210920F5F7AAF8002801D1D9 +:10D3400000206EE0002F20D1B4F88A00B4F88C10D1 +:10D35000401A6885B4F88A108900298589B2FF29A6 +:10D3600001DBFE21298580B28100652902DB642072 +:10D37000688501E080006885298D688D0A1A6A85B4 +:10D3800092B20FF2A400F5F70DF8A6208DF8040074 +:10D39000287A00280AD06021A32009F016FC412138 +:10D3A000A32009F0E8FB5720707009E06021A3205A +:10D3B00009F00BFC4121A32009F0DDFB8B207070EC +:10D3C000022301AA72210920F5F762F8002801D191 +:10D3D000002026E080208DF80400672070709DF802 +:10D3E000060040F002008DF80600022301AA722117 +:10D3F0000920F5F74DF8002801D1002011E0AB20FD +:10D400008DF804009DF806008DF80500022301AA9E +:10D4100072210920F5F73CF8002801D1002000E036 +:10D420000120BDE8F6810000233E6755703D25646C +:10D430002C674C6F3D25640010B534220021DFF8C5 +:10D44000D80CF4F70BFFDFF8EC480120A0710AF0CC +:10D4500057F809F0E5FB01202073DFF8C00C00212C +:10D46000017010BD10B582B00FF25C00F4F79AFFA6 +:10D470000020ADF8000080208DF8000000AC0320F3 +:10D480006070022300AA72210620F5F701F8002837 +:10D4900018D0DFF8A008817A00290DD08C218DF8F2 +:10D4A0000010002161708170022300AA7221062001 +:10D4B000F4F7EEFF002805D0FFF7BEFF01210020A2 +:10D4C000FFF7C6FD13BD0000233E484C530000008B +:10D4D00010B582B00FF24000F4F764FF0020ADF801 +:10D4E0000000044600E0641C052C12D2DFF8A40DF5 +:10D4F000215C8DF800102018007A8DF801000223BD +:10D5000000AA72210720F4F7C3FF0028EBD1002006 +:10D5100016BD012016BD0000233E505250000000F1 +:10D5200030B583B00FF28800F4F73CFF0020ADF86F +:10D5300004008DF80600DFF8FC47607180208DF84C +:10D54000040001AD03206870022301AA72210720A4 +:10D55000F4F79EFF002801D100203EBD8C208DF8FD +:10D56000040000206870A070022301AA7221072025 +:10D57000F4F78EFF002801D100203EBD012060722B +:10D5800001460420FFF764FD002801D100203EBDC4 +:10D59000012000900DF10603E52272210720F4F727 +:10D5A000D1FF002801D100203EBD01203EBD00007A +:10D5B000233E50524F00000000B583B00FF26400CC +:10D5C000F4F7F0FE0020ADF806008DF8040080208E +:10D5D0008DF8060003208DF8070002230DF10602E6 +:10D5E00072210720F4F754FF002801D100200EBD5E +:10D5F000DFF84007002141720420FFF729FD0028D1 +:10D6000001D100200EBD0120009001ABE522722166 +:10D610000720F4F797FF002801D100200EBD01205C +:10D620000EBD0000233E5052430000000120704711 +:10D6300030B583B004460020ADF80400DFF8F4569E +:10D64000A87B00282CD1A87A002802D0287C207042 +:10D6500031E0012000900DF1050393227221072093 +:10D66000F4F770FF00280DD09DF80500800722D543 +:10D670000120009001AB9C2272210720F4F762FF89 +:10D68000002801D100203EBD9DF80400697951FABF +:10D6900080F080B2400820709DF8040068710AE0B4 +:10D6A000012808D1DFF8700A41696A7989184910A0 +:10D6B00021704069687101203EBD2DE9F04391B0B1 +:10D6C0000446FCF7C9FE0546F4F7EBFD06460020CC +:10D6D000ADF80800ADF80C008DF80A0001200090AC +:10D6E0000DF10A03932272210720F4F72BFF002883 +:10D6F00001D1002025E20220009003AB9422722188 +:10D700000720F4F71FFF002801D1002019E2DFF8FD +:10D7100024769DF80D009DF80C1041EA0020DFF8FA +:10D720004C1D4843F978C1F580713A79DFF8403DE6 +:10D73000D25C12FB01F140F24232514390FBF1F016 +:10D74000797B002902D0B97A002901D1386308E039 +:10D75000386B397E4A1C3A76062902DB0021797340 +:10D760003976397A00290CD141F6593188422DDBBE +:10D7700001213972786300207876FFF773FE01206B +:10D78000DFE1796B411A44F62162914215DA40F6E5 +:10D79000B831884218DA9DF80A20920614D57A7EAC +:10D7A000531C7B76C92A04DABA7A002A0ED1884241 +:10D7B0000CDA884201DA0021397278630020787629 +:10D7C000FFF750FE0120BCE1002078769DF80A00AA +:10D7D000800640F1B5810020B873012000900DF162 +:10D7E0000A03932272210720F4F7ACFE002801D12E +:10D7F0000020A6E19DF80A0080071BD501200090BB +:10D8000003AB9C2272210720F4F79CFE002801D173 +:10D81000002096E19DF80C00797951FA80F080B2F1 +:10D82000400860709DF80C00F8739DF80C0078714A +:10D8300060783874387B002802D00020387371E19A +:10D84000DFF8208D607888F80000B87900280AD0C9 +:10D8500009F0F0F9002806D1B87A002803D06078E2 +:10D8600009F0FAF97AE0787A002839D0B87AB978EC +:10D87000084335D1002030758C208DF808000DF15B +:10D880000809202089F80100B870022302AA722139 +:10D890000720F4F7FDFD002801D1002051E1892087 +:10D8A0008DF80800002089F80100022302AA7221E5 +:10D8B0000720F4F7EDFD002801D1002041E18B2085 +:10D8C0008DF80800B5F88A0089F80100022302AA41 +:10D8D00072210720F4F7DCFD002801D1002030E19F +:10D8E000B87A00280ED105F18A004288B5F88A106E +:10D8F0000FF25420F4F756FD61780FF25C20F4F734 +:10D9000051FD2BE0414684B068461822F5F7A0F897 +:10D910000FBC09F006FE04A809F069FEDFF8C89CF8 +:10D92000484604A93422F5F793F899F81C0000281A +:10D9300007D034224946DFF8E007F6F7DBFF012085 +:10D94000787009F11C00417D88F81410817D88F8F9 +:10D950001510007D002801D0FFF76EFD787A0028B1 +:10D9600000F0E080B87A002840F0DC806078B5F8FC +:10D970008A10884231D3307D00282ED10120F871E1 +:10D9800020702078307589208DF808000DF1080985 +:10D9900005F18A00408889F80100022302AA722159 +:10D9A0000720F4F775FD002801D10020C9E08B2085 +:10D9B0008DF80800FF2089F80100022302AA7221D5 +:10D9C0000720F4F765FD002801D10020B9E0617857 +:10D9D0000FF29010F4F7E6FCA4E005F28A0041880B +:10D9E0006278914231D3317D01292ED10120F87125 +:10D9F000002020702078307589208DF808000DF106 +:10DA00000809002089F80100022302AA72210720D8 +:10DA1000F4F73EFD002801D1002092E08B208DF824 +:10DA20000800B5F88A0089F80100022302AA7221D1 +:10DA30000720F4F72DFD002801D1002081E0617856 +:10DA40000FF22810F4F7AEFC6CE0B5F88A1062789B +:10DA5000914235D3317D002932D1797C01292FD1F2 +:10DA60000120F87100202070207830750020787433 +:10DA700089208DF808000DF10809002089F80100BF +:10DA8000022302AA72210720F4F702FD002801D127 +:10DA9000002056E08B208DF80800B5F88A0089F840 +:10DAA0000100022302AA72210720F4F7F1FC0028EA +:10DAB00001D1002045E00FF2BC00F4F773FC31E027 +:10DAC0006178428891422DD3317D01292AD1797C18 +:10DAD000012927D10021797489218DF808100DF1D1 +:10DAE0000809408889F80100022302AA7221072050 +:10DAF000F4F7CEFC002801D1002022E08B208DF825 +:10DB00000800FF2089F80100022302AA72210720E1 +:10DB1000F4F7BEFC002801D1002012E00FF25C00F7 +:10DB2000F4F740FC0120009003ABE52272210720AE +:10DB3000F4F708FD002801D1002002E0012000E0F8 +:10DB4000002011B0BDE8F083233E55703D25642CC4 +:10DB50004C6F3D2564000000233E50524157202564 +:10DB600064000000233E503120256400233E5032E3 +:10DB700020256400233E526554483100233E5265FF +:10DB8000544832002DE9F84304460D46694EB07CF6 +:10DB9000002805D000F01EFF0020F0743075C5E0AD +:10DBA000FCF75AFC804600273846ADF80000207884 +:10DBB000072823D16078FF2820D12946601CFFF771 +:10DBC00037FD6078B8F88A10884208D301202070A9 +:10DBD000627821780FF26010F4F7E4FB0CE0B8F8FB +:10DBE0008C006178884207D33846207062782178AB +:10DBF0000FF24410F4F7D6FB012097E00020F074F8 +:10DC0000307529462046FFF758FD00280DD0707A60 +:10DC100000280AD0F079002807D00FF23010F4F76E +:10DC2000C1FB0020F07101203075B07A002877D058 +:10DC3000DFF8648DD8F8189009F10C00417DC068B8 +:10DC4000D9F80C20801800F06BFA002868D0DFF8B3 +:10DC5000CC040078411E8941C90FF1747078002806 +:10DC600001D000207070707A002857D0D9F80C00CD +:10DC700040780DF1000989F80100318D814218D2F8 +:10DC8000F4F70FFB007D002813D1B07E401CB07666 +:10DC9000C0B202282DD10020B0760127F4F701FB95 +:10DCA0003946017599F801100FF2A800F4F77AFBD4 +:10DCB0001FE099F80100718D884218D2F4F7F1FA4B +:10DCC000007D012813D1B07E401CB076C0B202287E +:10DCD0000FD10020B0760127F4F7E3FA0021017597 +:10DCE00099F801100FF27800F4F75CFB01E00020D6 +:10DCF000B076002F12D0D8F81C80F4F7D2FA007D4D +:10DD00008DF8000008F10C00427D00A9C068D8F829 +:10DD10000C30C018F6F7EEFD012030750020307091 +:10DD2000F6F788FB00283FF469AF307DBDE8F28349 +:10DD3000407A002038790020233E536C65657020BE +:10DD4000414443202564202564000000233E5055B3 +:10DD500050000000233E67757031202564000000EC +:10DD6000233E67757032202564000000F8B5074631 +:10DD70000020ADF80000FCF76FFB0546DFF8304DE2 +:10DD8000012060743878A5F88A0005F28A06787850 +:10DD90007080B5F88A00002802D07088002808D169 +:10DDA0000FF29400F4F7FEFA7820A5F88A0000201C +:10DDB000708089208DF8000000AF70887870022391 +:10DDC00000AA72210720F4F763FB00280DD08B20F6 +:10DDD0008DF80000B5F88A007870022300AA72213D +:10DDE0000720F4F755FB002801D10020F2BD72880E +:10DDF000B5F88A100FF24800F4F7D4FAB5F88A00A3 +:10DE00007188401A6085B5F88A108900218589B229 +:10DE1000FF2901DBFE21218580B28100652902DB1B +:10DE20006420608501E080006085208D618D401A4E +:10DE300060850120F2BD0000233E5054483D300073 +:10DE4000233E544853455420256420256400000097 +:10DE500080B50FF218010720F7F756FF0FF23001D7 +:10DE60000A20BDE80440F7F74FBF0000D1D40008F6 +:10DE700021D50008B9D500082DD600080000000003 +:10DE800085DB00086DDD00080000000000000000D8 +:10DE9000D1D4000821D50008B9D500082DD6000836 +:10DEA0000000000031D600086DDD00080000000011 +:10DEB0000000000030B583B00FF28000F4F772FA72 +:10DEC0000020ADF80400FFF799F8002803D10FF205 +:10DED0007400F4F767FA0024DFF8D45B00E0641CF8 +:10DEE0000B2C12D26019007F8DF80400DFF8940D1E +:10DEF000205C8DF80500022301AA72210620F4F7A8 +:10DF0000C7FA0028EBD100203EBDF5F7DDFC01206B +:10DF1000009005F11703912272210620F4F712FBFD +:10DF2000002801D100203EBDE97D0FF22400F4F766 +:10DF300039FA01203EBD00006F280120233E4745ED +:10DF400050000000233E47504641494C000000006D +:10DF5000233E3E4348495020307825780000000099 +:10DF600038B50FF29800F4F71DFA0020ADF8000064 +:10DF700080208DF8000000AC03206070022300AA0E +:10DF800072210620F4F784FA002801D1002032BD66 +:10DF90008C208DF8000000206070DFF8145BA87002 +:10DFA000022300AA72210620F4F772FA002801D198 +:10DFB000002032BDA3208DF80000DFF8C80CC07827 +:10DFC0006070022300AA72210620F4F761FA00288B +:10DFD00001D1002032BD0120A872FFF72DFA0121E6 +:10DFE0000820FFF735F8002801D1002032BD0120BC +:10DFF00032BD00007028012071280120233E4745D2 +:10E000004F00000010B582B00FF26800F4F7CAF9B3 +:10E010000020ADF8000080208DF8000000AC032047 +:10E020006070022300AA72210620F4F731FA00285A +:10E0300001D1002016BDDFF8E80B00218172082015 +:10E04000FFF706F8002801D1002016BD9F208DF8AB +:10E05000000000206070022300AA72210620F4F75D +:10E0600017FA002801D1002016BD012016BD0000BE +:10E0700072280120233E47454300000001207047DD +:10E0800030B58DB0DFF8285AA879002814D008F0F0 +:10E09000D1FD002810D0DFF8CC44201D0FC808F0B7 +:10E0A000C5FE08F0D0FD002832D00020A871012064 +:10E0B00060752075A0752BE0A879002828D1DFF8BD +:10E0C000A444214684B068461822F4F7C1FC0FBC72 +:10E0D00009F05AFA00A809F08AFADFF80C55284628 +:10E0E00000A93422F4F7B4FC05F11C00417D217530 +:10E0F000817D6175007D002801D0FFF79DF9287FA3 +:10E10000002805D034222946DFF8E40CF6F7F2FBAC +:10E1100001200DB030BD0000002501208422012027 +:10E1200010B584B0044602A8002101600846ADF88D +:10E1300004000120009001AB932272210620F4F725 +:10E1400001FA002800F088809DF8040010F0040017 +:10E1500004D1DFF85C19497800297DD0002806D069 +:10E16000DFF84C094178002901D101218173012098 +:10E1700000900DF10503AE2272210620F4F7E2F9BA +:10E18000002869D09DF80500002817D004200090D1 +:10E1900002ABFC2272210620F4F7D4F900285BD0F0 +:10E1A000DFF8C0039DF80810416002A94A78826038 +:10E1B0008A78C260C9780161FFF762FFDFF8301C1E +:10E1C0000A78DFF8EC084378002B227007D0002291 +:10E1D0006270A270E27022716271A2710BE04A69F2 +:10E1E00062708A69A2704A68E2708A682271CA689D +:10E1F00062710A69A2710A6AE2714A6A22728A6AC3 +:10E200006272CA6AA2724A7FE272DFF8E82B127861 +:10E210002273DFF8E42B12786273DFF8E02B1278B8 +:10E22000A273DFF8DC2B1278E273DFF8D82B1278B8 +:10E230002274DFF8D42B12786274DFF8D02B1278B6 +:10E24000A274C27BE274002202700878042801D113 +:10E2500010460870012000E0002004B010BDDFF877 +:10E26000C009C07C704780B5052802D1084600F07F +:10E2700002F8012002BD80B5017841F04103DFF8CA +:10E28000901BCB70027801780FF6A430F4F78AF86F +:10E29000012002BD507A002070B584B004460020F1 +:10E2A000019002A8002101600E460FF69830F4F7A5 +:10E2B00079F801210820FEF7CBFEA0208DF804009C +:10E2C00001AD30466870022301AA72210620F4F7DE +:10E2D000DFF8002801D13046C5E0A1208DF8040008 +:10E2E000FF206870022301AA72210620F4F7D0F8FB +:10E2F000002801D13046B6E0AB208DF804000120A3 +:10E300006870022301AA72210620F4F7C1F80028E0 +:10E3100001D13046A7E0012000900DF106038022D4 +:10E3200072210620F4F70EF9002801D130469AE058 +:10E3300080208DF804009DF8060040F045006870CC +:10E34000022301AA72210620F4F7A2F8002801D1C5 +:10E35000304688E0A3208DF80400DFF82809C07853 +:10E360006870022301AA72210620F4F791F80028B0 +:10E3700001D1304677E0012000900DF10703AF2274 +:10E3800072210620F4F7DEF8002801D100206AE0AF +:10E390009DF80700C0070BD50420009002ABFC22BB +:10E3A00072210620F4F7CEF800280CD100205AE0A4 +:10E3B0003046461CB0F57A7FDDDB0FF69020F3F790 +:10E3C000F1FF00204FE09DF80800207002A841787E +:10E3D00061708178A170C078E070012000900DF12B +:10E3E0000603802272210620F4F7ACF8002801D140 +:10E3F000002038E080208DF80400DFF82408417AFE +:10E40000002905D09DF8060000F0BF0068700CE000 +:10E410009DF8061001F0BB016970C07A002804D194 +:10E420009DF8060000F0BA006870022301AA72216C +:10E430000620F4F72DF8002801D1002013E0AB20CE +:10E440008DF8040000206870022301AA72210620C2 +:10E45000F4F71EF8002801D1002004E00021082074 +:10E46000FEF7F6FD012004B070BD0000D8D0010019 +:10E47000D8EE00080FF664210620F7F745BC10B56A +:10E4800082B00FF6D410F3F78DFF0020ADF8000036 +:10E49000044600E0641C052C12DADFF87809215CE0 +:10E4A0008DF800102018007A8DF80100022300AAD0 +:10E4B00072210920F3F7ECFF0028EBD1002016BDF4 +:10E4C000012016BD30B583B0DFF85447E07D0A283F +:10E4D00004D10FF68C10F3F765FF05E0022803D195 +:10E4E0000FF68410F3F75EFF0020ADF804008020E3 +:10E4F0008DF8040001AD03206870022301AA722187 +:10E500000920F3F7C5FF002801D100203EBD8F2070 +:10E510008DF804000B206870022301AA72210920E3 +:10E52000F3F7B6FF002801D100203EBD0320207183 +:10E530000120A075E07201460220FEF789FD002847 +:10E5400001D100203EBD012000900DF10603E6221E +:10E5500072210920F3F7F6FF002801D100203EBD0B +:10E5600001203EBDC427012000B583B00FF6001086 +:10E57000F3F718FF0020ADF8060080208DF80600A4 +:10E5800003208DF8070002230DF1060272210920F5 +:10E59000F3F77EFF002801D100200EBD012000907E +:10E5A00001AB8F2272210920F3F7CCFF002801D1A3 +:10E5B00000200EBDDFF868060021C1720220FEF7C0 +:10E5C00047FD002801D100200EBD0120009001ABC5 +:10E5D000E62272210920F3F7B5FF002801D10020BF +:10E5E0000EBD01200EBD00006424012001207047F3 +:10E5F0002DE9F04184B004460020ADF804000290FB +:10E60000DFF89403456A002085F85E00DFF81066A5 +:10E61000B07D012803D0707D002840F08E8002205C +:10E62000009001AB942272210920F3F78BFF0028A0 +:10E630002DD09DF80400A07101AF7878E071022020 +:10E64000009001AB962272210920F3F77BFF00288E +:10E650001DD09DF804002070787860700220009032 +:10E6600001AB982272210920F3F76CFF00280ED02D +:10E670009DF80400A0707878E0700220009001AB53 +:10E680009A2272210920F3F75DFF002801D10020B2 +:10E6900095E09DF80400207178786071F078207220 +:10E6A000307960726078217841EA0020E178A278C0 +:10E6B00042EA01216279237943EA0222E379A779C8 +:10E6C00047EA032302AF009700F0CAF800281BD1E5 +:10E6D000B07D012832D10020B075DFF83C075B2106 +:10E6E000017000214170852181700021C170AE212F +:10E6F000017100214171702181710121C171EE21EF +:10E7000001720021417219E00020B075DFF808079E +:10E710002178017061784170A1788170E178C170D1 +:10E720002179017161794171A1798171E179C171B9 +:10E73000217A0172617A417238E037D0DFF8D80669 +:10E7400001782170417861708178A170C178E170A1 +:10E7500001792171417961718179A171C179E17189 +:10E76000017A2172407A6072002070756078217899 +:10E7700041EA0020E178A27842EA01216279237916 +:10E7800043EA0222E379A77947EA0323F77894F86A +:10E7900008C086F803C096F80480647A347102AC2D +:10E7A000009400F05DF8F77086F80480029840F657 +:10E7B0008451884202D1012085F85E00012004B016 +:10E7C000BDE8F0811CB504460020ADF806008DF8C8 +:10E7D00004000120009001AB8F2272210920F3F781 +:10E7E000B1FE002801D1002016BD9DF8040000F004 +:10E7F000FC008DF80400012C0AD0042C04D0102C4D +:10E800001FD0402C22D026E040F001008DF80400FB +:10E810008F208DF806009DF804008DF80700DFF8C2 +:10E8200000449DF8040000F00300207102230DF164 +:10E83000060272210920F3F72BFE00280DD10020DB +:10E8400016BD40F002008DF80400E1E740F003003F +:10E850008DF80400DCE7002016BD0120607316BDB2 +:10E860002DE9F0419C4614460D460646A81920188D +:10E87000A0EB0C00401C47103FB2002F00D5002732 +:10E88000DFF89C1308790FF25062805CC978C1F5FB +:10E89000807110FB01F240F6DC2E0EFB02F88902BB +:10E8A000B1F5803F01D34FF6FF71C9000A22B1FBD9 +:10E8B000F2F110282DD18B422BD30120FFF782FFDC +:10E8C000002840D1E91B0698B74206DA0268F31B1C +:10E8D0004FF4B47606FB03220260AF4205DA026809 +:10E8E0004FF47A7303FB01210160A74201DA01684A +:10E8F00001600168002901D50021016040F2A641B4 +:10E90000B8FBF1F10268B2FBF1F101600120BDE852 +:10E91000F081102808D1BCF1640F05DA4020FFF720 +:10E9200051FF00280FD1CDE7402802D164398B4236 +:10E9300004D20128C6D1BCF1640FC3DA1020FFF75E +:10E9400041FF0028BED00020E1E70FF2B4510920BA +:10E95000F7F7DAB9B24988740120704710B5DFF8CB +:10E96000BC4420202070002060700A20A07000208D +:10E97000E0700A202071002060713220A071002018 +:10E98000E07207222146DFF89804F5F7B3FF002074 +:10E990006072012010BD00000840002000B583B067 +:10E9A00000A800210A4606C00722DFF870140DF106 +:10E9B0000100F5F79FFFA0208DF80000082300AAB2 +:10E9C00072210720F3F764FD002801D100200EBD5D +:10E9D00001200EBD00B583B000208DF80400DFF8E3 +:10E9E0003C04417B012903D100F0AFF901200EBDA9 +:10E9F000418AFF290CD000290DD0C27A521CC27264 +:10EA0000491E4182417AD2B2914201D20021C172A3 +:10EA100000F015F805E0818A41820021C17200F002 +:10EA20000EF80120009001ABE32272210720F3F7DA +:10EA300089FD002801D100200EBD01200EBD38B592 +:10EA40000020ADF80000DFF8D443608A002801D12F +:10EA5000A07A60720722E07AC0EBC000DFF8C01332 +:10EA600041182046F5F746FFFFF798FF80208DF804 +:10EA7000000000AD81206870022300AA72210720E7 +:10EA8000F3F706FD002801D1002032BDA7208DF844 +:10EA90000000208A6870022300AA72210720F3F781 +:10EAA000F7FC002801D1002032BD012032BD00005A +:10EAB0003879002030B585B0044600208DF80C0070 +:10EAC000ADF80E006079029020790190E078009016 +:10EAD000A378627821780FF2A030F3F763FC01206D +:10EAE000009003AB802272210720F3F72BFD002852 +:10EAF00001D1002061E0C94D9DF80C002872012071 +:10EB0000009003AB8F2272210720F3F71BFD002832 +:10EB100001D1002051E09DF80C00A8730120009065 +:10EB200003AB902272210720F3F70CFD002801D1DE +:10EB3000002042E09DF80C00E87300F0A5F88F205B +:10EB40008DF80E000DF10E050B20687002230DF1FB +:10EB50000E0272210720F3F79BFC002801D1002050 +:10EB60002BE090208DF80E000120687002230DF13B +:10EB70000E0272210720F3F78BFC002801D1002040 +:10EB80001BE0A84D8122FF212846F3F767FB802276 +:10EB90002146681CF5F7AEFE0020287081232A4626 +:10EBA00072210720F3F774FC002805D10FF2E02052 +:10EBB000F3F7F8FB002000E0012005B030BD80B580 +:10EBC00001780F2904DA954A527A521C8A4205DAF2 +:10EBD0000FF2C820F3F7E6FB002002BD4278202A9E +:10EBE00001DB202242700022C2704271C1EBC101E0 +:10EBF0008B4A20238B54891800224A704278002ABD +:10EC000001D1002201E05200521E8A7182788A707E +:10EC1000C278CA7002790A7140794871012002BD38 +:10EC2000387900207D48417A491C41728172012067 +:10EC3000704738B50446794D6C82FFF78FFE002C83 +:10EC400000D0AC8221460FF26420F3F7ABFB012029 +:10EC500032BD724948730120704773490870012022 +:10EC6000704771480078704780B56C4908730A7B1B +:10EC700052000A8201460FF24420F3F793FB012071 +:10EC800002BD0000907A002000B583B00020ADF8EE +:10EC900006008DF8040080208DF8060001208DF814 +:10ECA000070002230DF1060272210720F3F7F0FBA3 +:10ECB000002801D100200EBD102000905B4BA02247 +:10ECC00072210720F3F73EFC002801D100200EBD81 +:10ECD0000120009001AB802272210720F3F732FC63 +:10ECE000002801D100200EBD01200EBD00B587B067 +:10ECF0000020ADF8000001A81421F5F739FD8020AF +:10ED00008DF8000001208DF80100022300AA722175 +:10ED10000720F3F7BDFB002801D1002013E01022EB +:10ED200042490DF10500F5F7E5FDA0208DF804003E +:10ED3000112301AA72210720F3F7AAFB002801D1B1 +:10ED4000002000E0012007B000BD30B583B00020F6 +:10ED5000ADF804008DF80600304C217A0FF26C10EB +:10ED6000F3F720FB0020FFF7F5FD002060736072D1 +:10ED7000FFF7BCFF8F208DF8040001ADA07B687009 +:10ED8000022301AA72210720F3F782FB002801D198 +:10ED900000203EBD90208DF80400E07B68700223C7 +:10EDA00001AA72210720F3F773FB002801D100208C +:10EDB0003EBD80208DF80400207A6870022301AAED +:10EDC00072210720F3F764FB002801D100203EBD2B +:10EDD000012000900DF10603E32272210720F3F7D2 +:10EDE000B1FB002801D100203EBD01203EBD000046 +:10EDF00000250120FC2801206F2801207028012017 +:10EE00007128012072280120FD280120FE28012000 +:10EE1000907A0020607A0020D02901205428012017 +:10EE20001C190120D4130120DD2B012050290120C1 +:10EE3000233E4745204355202578202578202578F6 +:10EE400000000000233E4753454C4600233E4753F5 +:10EE50005445525200000000233E4C4947500000E8 +:10EE6000233E3E4C49474F00233E4C49474F00004C +:10EE7000233E4C49474300004D4244202564202551 +:10EE8000642025642025642025642025640000007A +:10EE90004D6F6265616D2057460000004D6F6265E1 +:10EEA000616D20486F70204661696C004D422048BA +:10EEB0006F70436F756E7420256400004D6F62653E +:10EEC000616D204C656E3D25640000004D4220437D +:10EED0006C6F73652025640001041040B5DE0008E6 +:10EEE00061DF000805E000087DE000080000000088 +:10EEF0005FE200080000000099E2000867E20008F5 +:10EF00007FE40008C5E4000869E50008EDE50008B5 +:10EF100000000000F1E50008000000000000000013 +:10EF2000000000007CB500242046ADF80400F3F793 +:10EF3000B8F9054620208DF8040001AE2046707017 +:10EF4000022301AABA210520F3F7A2FA002801D171 +:10EF5000204676BD01212846F3F78FFB641C012073 +:10EF6000009001AB2122BA210520F3F7EBFA00282B +:10EF700001D1002076BDA4B2B4F5FA7F05DD0FF211 +:10EF80001C20F3F70FFA002076BD9DF80400000660 +:10EF9000E0D420208DF8040002207070034601AAFE +:10EFA000BA210520F3F774FA002801D1002076BDBC +:10EFB000012076BD1CB504460020ADF804000120F8 +:10EFC000009001AB0F22BA210520F3F7BBFA00280D +:10EFD00001D1002016BD9DF80400BD2834D100F0F9 +:10EFE00035F8002801D1002016BD032001E0401EA5 +:10EFF00040B2002807D40FF2BC1151F830108C42F7 +:10F0000001D20028F3D120208DF8040001ACA42007 +:10F010006070022301AABA210520F3F739FA00280B +:10F0200001D1002016BD10208DF804007F206070F3 +:10F03000022301AABA210520F3F72AFA002801D1F8 +:10F04000002016BD012016BD002016BD80B5002091 +:10F05000ADF8000020208DF8000000208DF80100A0 +:10F06000022300AABA210520F3F712FA002805D1DD +:10F070000FF23010F3F796F9002002BD012002BD17 +:10F0800080B58F20FFF796FF002801D1002002BD38 +:10F09000012002BD80B5FFF745FF002805D10FF222 +:10F0A0000C10F3F77FF9002002BD012002BD80B5EE +:10F0B000FFF7E6FF002801D1002002BD012002BDBC +:10F0C00080B5FFF7C3FF002801D1002002BD012059 +:10F0D00002BD01207047012070471FB5044601A8FA +:10F0E00000210A460B460EC00120009001AB0F2202 +:10F0F000BA210520F3F726FA002821D09DF8040054 +:10F10000BD281DD10520009001ABA822BA21F3F73C +:10F1100019FA002801D1002013E09DF804002070A6 +:10F1200001A8417861708178A1700021E170C178F7 +:10F13000217100796071E01C00F006F8012000E008 +:10F14000002004B010BD00004178007840EA0120A2 +:10F150004FF4F07190FBF1F000EE100AB8EEC00A27 +:10F16000DFED070A30EE200ABDEEC00A10EE100AED +:10F1700080B204490870000A4870012070470000FE +:10F1800000002A42D82B012001207047012070473F +:10F190000FF240010520F6F7B7BD000042522D5294 +:10F1A0004600000042522D434600000042522D50BE +:10F1B0004600000028000000700000005000000021 +:10F1C000600000008F00000050000000E803000015 +:10F1D0001000000095F00008AFF00008C1F0000832 +:10F1E000D3F00008D7F00008DBF0000800000000B2 +:10F1F00089F100088DF10008002070470120704758 +:10F200000120704738B504460D46F3F74AF805214A +:10F21000F3F733FA0020104904E00A680255521C43 +:10F220000A60401CA842F8DB012032BD0120704773 +:10F2300001207047094802680A704A70511C016039 +:10F240000120704706490A6802704270501C08602D +:10F250000120704700000000AC7A0020682B0120DC +:10F260006C2B01200FF234010820F6F74DBD10B5CC +:10F270000FF2280421461220F6F746FD21461320FE +:10F28000F6F742FD21461420BDE81040F6F73CBDDC +:10F290000FF208011520F6F737BD0000F9F100085C +:10F2A000FDF1000801F2000801F2000831F2000847 +:10F2B00005F200082DF2000845F2000835F20008BA +:10F2C00010B50024F2F7EDFF007CC00700D5012443 +:10F2D000204610BD00B589B000A82421F5F748FAF2 +:10F2E0000020ADF822000A208DF8080000208DF8DB +:10F2F00009008DF80A008DF800001F20019000A879 +:10F30000F8F784FD012009B000BD00B589B000A860 +:10F310002421F5F72DFA0020ADF822000A208DF8FF +:10F32000080000208DF809008DF80A0001208DF8F2 +:10F3300000001F20019000A8F8F768FD012009B027 +:10F3400000BD00B589B000A82421F5F711FA00200E +:10F35000ADF822000A208DF8080000208DF8090081 +:10F360008DF80A0001208DF800001F20019000A8F0 +:10F37000F8F74CFD012009B000BD0120704710B521 +:10F380000024F2F78EFF007CC00700D50124204640 +:10F3900010BD00B589B000A82421F5F7E9F90020D7 +:10F3A000ADF822000A208DF8080000208DF8090031 +:10F3B0008DF80A008DF800002020019000A8F8F7D1 +:10F3C00025FD012009B000BD00B589B000A82421A9 +:10F3D000F5F7CEF90020ADF822000A208DF80800DC +:10F3E00000208DF809008DF80A0001208DF800003A +:10F3F0002020019000A8F8F709FD012009B000BD08 +:10F4000000B589B000A82421F5F7B2F90020ADF8C5 +:10F4100022000A208DF8080000208DF809008DF8E0 +:10F420000A0001208DF800002020019000A8F8F7C4 +:10F43000EDFC012009B000BD0120704710B500248B +:10F44000F2F72FFF007C800700D50124204610BD75 +:10F4500000B589B000A82421F5F78AF90020ADF89D +:10F4600022000A208DF8080000208DF809008DF890 +:10F470000A008DF800002120019000A8F8F7C6FCD2 +:10F48000012009B000BD00B589B000A82421F5F71E +:10F490006FF90020ADF822000A208DF80800002046 +:10F4A0008DF809008DF80A0001208DF80000212058 +:10F4B000019000A8F8F7AAFC012009B000BD00B532 +:10F4C00089B000A82421F5F753F90020ADF82200F7 +:10F4D0000A208DF8080000208DF809008DF80A0038 +:10F4E00001208DF800002120019000A8F8F78EFC83 +:10F4F000012009B000BD0120704710B50024F2F7CB +:10F50000D0FE007C00F00300032800D10124204637 +:10F5100010BD00B589B000A82421F5F729F9DFF85E +:10F520002403017841F0020101700020ADF82200AF +:10F530000A208DF8080001208DF809008DF80A10C6 +:10F5400000208DF800002220019000A8F8F75EFC52 +:10F55000012009B000BD00B589B000A82421F5F74D +:10F5600007F9DFF8E012087810F0FD00087014D1F8 +:10F570000020ADF822000A208DF8080001208DF847 +:10F58000090000208DF80A0001208DF800002220DB +:10F59000019000A8F8F73AFC02E040B208F0C2FD82 +:10F5A000012009B000BD012070470120704710B54F +:10F5B0000024F2F776FE007C00F00700072800D157 +:10F5C0000124204610BD00B589B000A82421F5F71C +:10F5D000CFF89C49087840F001000870032805D155 +:10F5E00040B208F09FFD08F0B9FD12E00021ADF82F +:10F5F00022100A218DF8081000218DF809108DF8CD +:10F600000A0008468DF800002220019000A8F8F7B3 +:10F61000FDFB012009B000BD00B589B000A8242180 +:10F62000F5F7A6F88749087810F0FE00087013D1A6 +:10F630000020ADF822000A208DF8080000208DF887 +:10F6400009008DF80A0001208DF8000022200190A9 +:10F6500000A8F8F7DBFB04E040B208F063FD08F017 +:10F6600082FD012009B000BD0120704701207047D4 +:10F6700010B50024F2F715FE007CC00700D5012468 +:10F68000204610BD00B589B000A82421F5F770F818 +:10F690000020ADF822000A208DF8080000208DF827 +:10F6A00009008DF80A008DF800002320019000A8C1 +:10F6B000F8F7ACFB012009B000BD00B589B000A887 +:10F6C0002421F5F755F80020ADF822000A208DF826 +:10F6D000080000208DF809008DF80A0001208DF83F +:10F6E00000002320019000A8F8F790FB012009B04A +:10F6F00000BD00B589B000A82421F5F739F8002035 +:10F70000ADF822000A208DF8080000208DF80900CD +:10F710008DF80A0001208DF800002320019000A838 +:10F72000F8F774FB012009B000BD0120704700000C +:10F7300070B58AB006460D46F8F792FA04460020E6 +:10F7400000900422314600A8F5F7D4F801A824213E +:10F75000F5F70EF8009A29460FF2A410F2F722FEF0 +:10F7600028460C38092840D8DFE800F0050F1419A6 +:10F77000300B3F3F3F3B1420C4F8DC0401200AB0AB +:10F7800070BD1420C4F87C05F8E704F2DC40422187 +:10F790008162F3E704F2DC4000990165EEE7294855 +:10F7A0000078C10712D50021ADF826100A218DF886 +:10F7B0000C1000218DF80D108DF80E0001208DF831 +:10F7C00004002220029001A8F8F720FB00992846A7 +:10F7D00040B200F010F8009004F2DC40009981671C +:10F7E000CCE71420C4F8BC06C8E70FF22410F2F7E7 +:10F7F000D9FD0020C3E710B4134AD36B126C114C2F +:10F800002478002C1AD00F2802D010280BD015E035 +:10F81000507A002812D0906B806800280ED488425D +:10F820000DDD08460BE0587A002807D0986B8068F9 +:10F83000002803D4884202DD084600E0084610BCD8 +:10F8400070470000DE2B01200840002012B589B06F +:10F8500001460C3909292CD8DFE801F0051F2123C6 +:10F86000231D2B2B2B291F240020ADF822000190F3 +:10F870000A208DF8080005208DF80000019404226C +:10F8800009A90DF10900F5F735F800A8F8F7BEFA57 +:10F8900001200AB010BD2324E6E72024E4E7212458 +:10F8A000E2E722240999FFF7A6FF0990DCE72B2461 +:10F8B000DAE70FF26400F2F775FD0020E9E780B5A2 +:10F8C0000FF25C010C20F6F71FFA0FF278011120FD +:10F8D000F6F71AFA0FF290010D20F6F715FA0FF26B +:10F8E000AC010E20F6F710FA0FF2C4010F20F6F764 +:10F8F0000BFA0FF2E0011020BDE80440F6F704BA5D +:10F900004D52322044523D25642C256400000000F5 +:10F910004D523220534446004D523220524346004D +:10F92000C1F20008D5F200080BF3000843F3000809 +:10F93000000000007BF3000831F700080000000021 +:10F940000000000071F6000885F60008BBF600080C +:10F95000F3F60008000000002BF7000831F700085C +:10F9600000000000000000007FF3000893F300088F +:10F97000C9F3000801F400080000000039F4000891 +:10F9800031F7000800000000000000003DF400080E +:10F9900051F4000887F40008BFF4000800000000DC +:10F9A000F7F4000831F70008000000000000000034 +:10F9B000FBF4000813F5000857F50008A7F5000848 +:10F9C00000000000ABF5000831F70008000000005F +:10F9D00000000000AFF50008C7F5000819F60008A0 +:10F9E00069F60008000000006DF6000831F7000815 +:10F9F000000000000000000080B5FAF72DFDDFF8E0 +:10FA000064170860012002BD80B5F4F73DFEDFF801 +:10FA10005817D1E90023801A02BDF8B50446A06941 +:10FA2000E1684518B5F90000B5F90270B5F9046050 +:10FA3000B4F85810411A2980B4F85A10791A69801C +:10FA4000B4F85C10711AA980B5F90010C913B1EBB4 +:10FA5000E03F13D0B4F95810C913B1EBE03F0DD01B +:10FA60000FF22070F2F79EFCB5F90000012802DBCE +:10FA7000DFF8F80601E047F6FF702880B5F90210BC +:10FA8000C913B1EBE73F13D0B4F95A10C913B1EB66 +:10FA9000E73F0DD00FF2F860F2F784FCB5F90200F1 +:10FAA000012802DBDFF8C40601E047F6FF7068803A +:10FAB000B5F90410C913B1EBE63F13D0B4F95C10EB +:10FAC000C913B1EBE63F0DD00FF2D060F2F76AFC3C +:10FAD000B5F90400012802DBDFF8900601E047F6E3 +:10FAE000FF70A88094F90800002804D1002000E0ED +:10FAF000401C0328FCDBF1BD00000000FEB50446FD +:10FB000000A800210A460B460EC0A069E16845180E +:10FB1000174694F90860052E80F09A80012E02D1D4 +:10FB20002046FFF77AFF3046012802D9C01E40F078 +:10FB30008A80002E01D14FF6FF77DFF82806006893 +:10FB4000301890F88400401E06285ED8DFE800F0E8 +:10FB500004101D2936424F00B5F90200009000A89C +:10FB6000B5F90010791A4160B5F90410816056E0CA +:10FB7000B5F90000381A009000A8B5F90210791AFA +:10FB80004160B5F90410816049E0B5F90200381A06 +:10FB9000009000A8B5F900104160B5F9041081602B +:10FBA0003DE0B5F90000381A009000A8B5F9021040 +:10FBB0004160B5F90410791A816030E0B5F90200AE +:10FBC000009000A8B5F900104160B5F90410791A49 +:10FBD000816024E0B5F90000009000A8B5F902109A +:10FBE000791A4160B5F90410791A816017E0B5F906 +:10FBF0000200381A009000A8B5F90010791A416087 +:10FC0000B5F90410791A816009E0B5F90000009097 +:10FC100000A8B5F902104160B5F904108160012E09 +:10FC20000AD1002106E050F8212002F30F0240F82B +:10FC30002120491C0329F6DB0098288000A8416890 +:10FC400069808068A880002E02D12046FFF7E5FE7B +:10FC50000120FEBD70B52DED028B82B08169C268B6 +:10FC60008A1890F9081008460A2800F29880DFE800 +:10FC700000F0062B73969665969696808E00B2F9E4 +:10FC80000240B2F90450DFF8DC0400689FEDC60AB8 +:10FC9000B2F9001000EE901AF8EEE00A60EE800A69 +:10FCA000C0ED000A00EE904AF8EEE00A60EE800A2D +:10FCB000C0ED010A00EE905AF8EEE00A20EE800A4C +:10FCC000001D80ED010A6EE0B2F90240B2F9045065 +:10FCD000DFF890040068061D9FEDB48BB2F90000B8 +:10FCE00000EE100AB8EEC00A10EE100AF8F7B6F9E6 +:10FCF00053EC182BF2F7B8FFF8F7D8F9B06000EE24 +:10FD0000104AB8EEC00A10EE100AF8F7A7F953EC43 +:10FD1000182BF2F7A9FFF8F7C9F9F06000EE105AB6 +:10FD2000B8EEC00A10EE100AF8F798F953EC182B49 +:10FD3000F2F79AFFF8F7BAF9306134E0002000904A +:10FD4000106800909DED000ABAEECA0ADFF81404AC +:10FD5000006880ED0C0A26E0DFF8080400681188CE +:10FD6000A0F85A1000F25A00518841809188818091 +:10FD700019E0DFF8F003006800F25A001188C18032 +:10FD80005188018191884181D18881810BE0DFF820 +:10FD9000D403006892F9001080F8681003E00FF2B5 +:10FDA0000840F2F7FFFA012002B0BDEC028B70BDF3 +:10FDB00070B50D46DFF8B81351F820400026207FBB +:10FDC000002801D1304670BD607A002803D0206E33 +:10FDD0008068804706462846216EC96988470546DF +:10FDE000002E02D0206E40688047284670BD9B07D9 +:10FDF00001D542F2107292FBF1F190F822205143AA +:10FE00000069814201DA0120704700207047002913 +:10FE100001D48164C164002A03D4910701D580F81C +:10FE200020207047002903D4002181644161816151 +:10FE30007047042815D101F10C008A7A012A08D0F4 +:10FE4000072242750B228275CA4ACA600B214160A3 +:10FE500070471522427519228275C74ACA60192156 +:10FE6000416070472DE9F243054614461946A846FD +:10FE7000B8F1160F44D2A946BD4850F829600227B0 +:10FE8000307F00283CD09DF92020002A08D4D007DC +:10FE900006D513460A4600993046FFF7A8FF44E00E +:10FEA0003046FFF7B4FFA8F10C0006280DD2294612 +:10FEB000C9B200A8326E92699047B9F10C0F02D016 +:10FEC000B9F1110F01D11420009031462846FFF7F7 +:10FED000B0FF707A00281BD1214649B23046726EBD +:10FEE0001268904700280DD0306E40688047002887 +:10FEF00004D139464F1EC9B20029F5D1002801D1DD +:10FF0000002012E0214649B23046726E5268904796 +:10FF1000707A401C7072224652B200993046736E5D +:10FF20001B69984700F093F80120BDE8F283F8B50B +:10FF30000C4615461946162806D28D4A52F82060FE +:10FF40000227307F002801D10020F2BD3046FFF7A4 +:10FF500069FF707A012817D1294649B23046726E7E +:10FF600092689047002809D0306E8068804700284A +:10FF700004D13846471EC0B20028F5D1294649B2FF +:10FF80003046726ED2689047707A002801D0401EC9 +:10FF900070722A4652B221463046736E5B699847AA +:10FFA00000F055F80120F2BD60F61C3A89AD84FAE4 +:10FFB0000A74313F2DE9F84304460D4616461946AA +:10FFC0002746162F1DD26A4850F8248098F81C0046 +:10FFD000002816D09DF92020002A09D4D00707D583 +:10FFE00013460A462946404601B0BDE8F043FEE606 +:10FFF00006EB460008EB8009D9F838008068002835 +:020000021000EC +:1000000001D5002021E04046FFF701FF324652B201 +:10001000D9F8380081684046D8F864305B69984761 +:10002000324652B229464046D8F864301B69984798 +:10003000A7F10C00062805D229462046FFF706FC4A +:10004000012002E000F003F80120BDE8F28370B562 +:100050006FF000452C464948016804E08A68A242D6 +:1000600000DA144609688142F8D1454E3078401CC8 +:1000700030707078F021084202D09920F4F7B6FB76 +:10008000F4F721FC7078401C7070AC4200D1002461 +:1000900034480168CC67D1F88020204682420BD0DA +:1000A000002801D0002A04D1C1F88000F2F756F9E7 +:1000B00002E0012008F09AF87078F021084202D09E +:1000C0009920F4F793FB7078401E7070C0B200283E +:1000D00001D1F4F7F2FBF5F750FA012070BD38B505 +:1000E0000546274C2078401C20706078F02108429B +:1000F00002D09920F4F77AFBF4F7E5FB6078401C16 +:10010000607018480068C0F880501C48016805E01D +:100110008A68B2FBF5F26A43CA6009688142F7D186 +:100120006078F021084202D09920F4F75FFB6078F4 +:10013000401E6070C0B2002801D1F4F7BEFBBDE8DC +:100140003140F5F71ABA0D490A6808E01369012B26 +:1001500001DAD368136113691B1A136112688A42AA +:10016000F4D170477C2B0120F82A01200080FFFF8A +:1001700008400020C44F002078270120784000204C +:10018000A079002058206973206F76657200000006 +:1001900059206973206F7665720000005A206973D8 +:1001A000206F76657200000055435354282564295A +:1001B0004E53000038B504000D0014480078401C70 +:1001C0001249087012480078002802D0A120F4F7E4 +:1001D0000DFBF5F791F9607E662802D08220F4F7D6 +:1001E00005FBF4F770FB05E03821200008F004F867 +:1001F000F4F769FBE06821698842F5D02900200006 +:1002000008F01CF8F5F7B9F931BD00BFA07900205E +:10021000052C01204FF0FF31801E012812D9C01E8D +:1002200004280FD9801F05280CD908380AD0801E51 +:10023000042807D9401F03D0401E102802D902E02D +:10024000072100E001210846704780B501460020E3 +:10025000C91E18D0C91E16D0C91E14D0C91E012926 +:1002600011D90D3903290ED9091F05D0491E0AD00D +:10027000C91F032907D902BD1D210FF21000F2F793 +:1002800091F8012002BD012002BD000050443A2037 +:100290004C4C53202564000038B504464FF0FF3520 +:1002A000F7F7DEFC2B2C35D8DFE804F02F34332FA2 +:1002B0002F332F2F3333342F183316162F34343374 +:1002C000342F2F2F182F332F332F2F1B1E22262A88 +:1002D0002D33333333333133C8251BE04FF47A7574 +:1002E00018E0D0F8DC5415E000F2DC40856A11E03B +:1002F00000F2DC40056D0DE000F2DC40856F09E0A6 +:10030000D0F87C5506E00A2504E0422502E00525E8 +:1003100000E01425284632BD38B5DFF8004AFAF768 +:100320009BF8E06207F0F2FFF7F79AFC20630025E4 +:1003300012E0DFF8EC190161DFF8E8194161DFF83C +:10034000E8298261DFF8E429C261DFF8E42902626A +:100350004162406A80476D1C2C2D80F21181216B17 +:1003600005EB8500C00000224254401842704FF057 +:10037000FF32426000220272C2604272032D04D139 +:100380007431DFF8B0298A62E3E7022D03D1DFF888 +:10039000A8294A67DDE7002DCBD0042D04D17431A4 +:1003A000DFF898290A65D4E7052D04D17431DFF808 +:1003B00090298A67CDE7062D04D1DFF88829C1F896 +:1003C0001421C6E7072D05D101F58A71DFF87829D8 +:1003D0008A62BEE7082D05D101F58A71DFF86C2924 +:1003E0000A65B6E7092D05D101F58A71DFF86029A4 +:1003F0008A67AEE70A2D9CD00B2D9AD0012D98D09C +:100400000C2D04D1DFF84C29C1F80422A1E70D2DF1 +:1004100005D101F50171DFF840298A6299E70E2DB7 +:1004200005D101F50171DFF834290A6591E70F2D37 +:1004300005D101F50171DFF828298A6789E7102DB8 +:1004400004D1DFF82029C1F8A42282E7122D3FF45D +:1004500070AF142D3FF46DAF132D3FF46AAF162D1E +:100460003FF467AF2B2D3FF464AF152D04D1DFF8B7 +:10047000082AC1F86C236CE7172D05D101F55B71D3 +:10048000DFF8F8290A6564E7182D05D101F55B71DD +:10049000DFF8EC298A675CE71A2D05D101F20C41DF +:1004A000DFF8E0298A6254E71E2D05D101F2AC4144 +:1004B000DFF8D4298A624CE7192D04D1DFF8CC2962 +:1004C000C1F80C2445E71F2D05D101F2AC41DFF83E +:1004D000C0290A653DE7202D05D101F2AC41DFF8C6 +:1004E000B4298A6735E7212D04D1DFF8AC29C1F89A +:1004F0004C252EE7222D05D101F24C51DFF89C2925 +:100500008A6226E7232D05D101F24C51DFF89029AC +:100510000A651EE71B2D05D101F20C41DFF8842985 +:100520000A6516E71C2D05D101F20C41DFF8782988 +:100530008A670EE71D2D04D1DFF87029C1F8AC24BD +:1005400007E7262D04D1DFF86829C1F8142600E753 +:10055000272D05D101F21461DFF858298A62F8E6E7 +:10056000292D05D101F21461DFF84C298A67F0E6E4 +:100570002A2D7FF4DEAEDFF84429C1F8B426E8E680 +:10058000012032BD0CB42DE9FF4705468846012401 +:1005900047462E461A2E48D006EB86004FEAC00882 +:1005A000DFF878970B2F20D1D9F8300008EB000A3C +:1005B0009AF80100002818D02846FFF72BFE0128E2 +:1005C00013DB2846FFF726FE9AF8011081420CDB68 +:1005D000284600F086F90446D9F83000404400214E +:1005E00041700FF6E400F1F7DDFED9F8300018F89D +:1005F0000010002947D108EB00014A78002A42D1B7 +:10060000002208F80020104648700CA983B0684604 +:100610001822F2F71DFA0EBC284600F07CF80228DA +:100620002CD003282FD103242DE00B2F16D1FFF758 +:10063000F1FD012812DB2846FFF7ECFD06EB8601F1 +:10064000DFF8D826126B02EBC1014978814205DB45 +:100650000FF67C00F1F7A6FE022057E04046C0B23C +:1006600002F042F80CA983B068461822F2F7F0F9BC +:100670000EBC284600F04FF8022801D1022045E0C8 +:10068000032800D103240A2F0DD1DFF89096D9F862 +:10069000300006EB86014FEAC10818F80010491C2B +:1006A00008F8001017E00B2F15D1DFF87096032E15 +:1006B00007D1D9F8300090F87900002801D101F075 +:1006C00085FA06EB86004FEAC008D9F830004044AE +:1006D0004178491C4170DFF84496D9F83000D9F8C8 +:1006E0002C1006EB86024FEAC208D1E91C23CDE9A3 +:1006F0000223C96E009108EB00014B7818F8002026 +:1007000031460FF2D870F1F74DFE204604B0BDE837 +:10071000F0075DF80CFB0EB42DE9F04183B00546FF +:100720000124C0B2FFF7B8FDDFF8F06505EB8501E5 +:10073000326B02EBC107786000203872F86009A9BB +:1007400084B068461822F2F783F90FBC3F69B847B6 +:10075000022801D1022011E0032801D103240CE07A +:10076000D6F82C80D8E91C67204600212A4607F0DD +:1007700071FE30433943C8E91C012046BDE8FE0143 +:100780005DF810FB2DE9FF4704460D46012627467C +:1007900007EB87004FEAC008DFF88095D9F83000F2 +:1007A0001A2F57D008EB000A9AF80100022814DB30 +:1007B0002046FFF72FFD01280FDB2046FFF72AFD1B +:1007C0009AF80110814208DB2046FFF723FD8AF8E2 +:1007D00001000FF21C70F1F7E5FDD9F8300018F8B0 +:1007E0000010002904D108EB00025278002A60D0E2 +:1007F0002A460A2A09D1002903D0491E08F8001008 +:1008000017E0002108F8001013E00B2A11D108EBC3 +:1008100000014A78002A02D0521E4A7001E00022EC +:100820004A70032F05D190F87900002801D101F01A +:10083000DCF9D9F8300018F80010002939D140440B +:100840004078002835D1204600F04BF8032830D1FD +:1008500003262EE018F80010002904D108EB00024E +:100860005278002A25D02A460A2A09D1002903D025 +:10087000491E08F8001012E0002108F800100EE0F0 +:100880000B2A0CD108EB000A9AF80100002803D0CB +:10089000401E8AF8010002E000208AF80100284684 +:1008A000C0B201F021FF204600F01BF8032800D160 +:1008B0000326D9F83000D9F82C10D1E91C23CDE952 +:1008C0000223C96E009108EB00014B7818F8002054 +:1008D00039460FF22460F1F765FD304604B0BDE8FB +:1008E000F0872DE9F0410746012607EB8700C50098 +:1008F000DFF82844206B281840698047032800D17E +:100900000326384640B200F080F9032800D10326C0 +:10091000206B295C002917D128184178002913D1B0 +:100920004FF0FF31416000210172C160D4F82C808A +:10093000D8E91C4501203A4607F08CFD24EA000066 +:1009400025EA0101C8E91C013046BDE8F08138B54F +:10095000044604EB8400C000DFF8C053296B00227A +:1009600042544018114641702046FFF7BAFFE86A2A +:10097000D0E91C2321460FF29450F1F713FD01201A +:1009800032BD2DE9F041B6B004460E46B6B20120A4 +:100990008DF86400DFF884531AA8E96A6C22F2F734 +:1009A00057F817951AA984B068466C22F2F750F8E8 +:1009B0000FBC00F0D9F900270BE0032803D11897EA +:1009C00003208DF86400286B4044002101727F1CD5 +:1009D0007FB22C2F2ADAEA6AD2E91C013A4600F0EB +:1009E000CBFA00F0010011F0000101D10028EED097 +:1009F00007EB87004FEAC008286B40444168002994 +:100A0000E5D4027A521C0272D2B2724389B28A428F +:100A1000DDDB806980470228CFD1189702208DF84E +:100A20006400DDE91801C4E9000103E0DDE9180113 +:100A3000C4E9000136B0BDE8F08100210A3842F275 +:100A40000772904200D20121084670472DE9F04319 +:100A500083B0044600200190042204F1090101A89A +:100A6000F3F748FF6168DFF8B462376B282505FBB0 +:100A700001704068019A904204D10FF2A040F1F752 +:100A800091FC68E01046FFF7D8FF002809D16168A3 +:100A9000019B05FB017042680FF28C40F1F782FC6C +:100AA00059E0DFF81C743868D0F8008025E090F930 +:100AB00008906068316B05FB0010C06820FA09F0EF +:100AC000C00717D54FF0FF3000900346012201996F +:100AD0004846FFF7C7F940B200280BD1616801987A +:100AE0000090306B05FB010043684A460FF24C4012 +:100AF000F1F758FC4046D0F80080B842D7D13868AA +:100B0000D0F800801FE090F90890C86820FA09F03A +:100B1000C00715D54FF0FF33012249684846FFF75B +:100B200006FA40B200280BD1616801980090306B42 +:100B300005FB010043684A460FF21840F1F732FC0A +:100B40004046D0F800806168326B05FB0121B84255 +:100B5000D9D101984860BDE8F7832DE9F843814673 +:100B6000002425466D4F21E005EB8500C600386B5B +:100B700006EB0008002088F80900FA6AD2E91C0197 +:100B80002A4600F0F9F900F0010011F0000101D14E +:100B900000280AD04846D8F81C108847002804D0FE +:100BA000386B3018012141720C466D1C2C2DDBDB9B +:100BB0002046BDE8F2835948C16AD1E91C23002BC5 +:100BC00001D1002A0DD0002107E002EB8203026B65 +:100BD00002EBC30200235372491C49B20A462C2A75 +:100BE000F3DB704700B502464C48C36AD3E91C01E9 +:100BF00000F0C2F900F0010011F0000101D100285D +:100C000001D0012000BD084600BD2DE9F047814616 +:100C1000012409EB8900C500404E306B2818C068DC +:100C2000002829D0DFF898723868D0F8008003E0F7 +:100C300003244046D0F80080B8421DD090F908A0A7 +:100C4000306B2818C168012202FA0AF2114021FA19 +:100C50000AF149B20129ECD14FF0FF33012241687A +:100C60005046FFF764F90028E2D0524649460FF299 +:100C7000FC20F1F797FBDCE72046BDE8F08710B5D4 +:100C80008AB004460020ADF8220001900A208DF8B9 +:100C9000080000208DF809008DF80A00ADF8220048 +:100CA000600719D50520FFF79DFF002807D0042015 +:100CB0008DF800000520019000A8F7F7A7F80220A2 +:100CC000FFF790FF002807D004208DF800000220D5 +:100CD000019000A8F7F79AF8E0060CD50820FFF776 +:100CE00081FF002807D003208DF800000820019024 +:100CF00000A8F7F78BF80AB010BD02460020092AB9 +:100D000000D0704780B5012902D107F059FC0120BD +:100D100002BD02492C22F1F79BBE000034250120C0 +:100D2000777F0008737F00087F7F0008837F0008BB +:100D3000877F0008D5150108FF450108990F0108B4 +:100D4000E9430108970503085517030821420108E4 +:100D50000F850108AD1201084504030899F5020842 +:100D6000850E03080B1503080FB41B98009901604A +:100D700001994160029981600399C1600499016100 +:100D800005994161BDF85A100183BDF85C1041839B +:100D9000BDF85E1081830C99016213994162149928 +:100DA000816204B0704700004168122903D1C17A02 +:100DB000002000F0C8BF132903D1017B012000F0FF +:100DC000C2BF142903D1417B022000F0BCBF15290A +:100DD00002D1C07A00F0C8BF172945D1817A1B29FA +:100DE00006D01C2930D01D290FD0262926D07047C7 +:100DF000C17B012903D1B0F80B0003F02FB9022900 +:100E000032D1B0F80D0003F027B9017D012903D1DB +:100E1000B0F80B0007F0B4BE022903D1B0F80D0002 +:100E200007F0A2BE042903D1B0F8170007F0B4BE42 +:100E3000032919D1B0F8150007F0BABEC17B01290A +:100E400012D1807B07F0EDBF817B012902D1C07AEE +:100E500008F0EFB9022902D1007B08F0F4B90529A6 +:100E600002D1407B08F0CFB970471649086070473F +:100E700014480068704700006D1803089D1A0308A5 +:100E8000610D03087B320108A10103085D1103080D +:100E9000D1A601083F160308FB0B0308C780010811 +:100EA00045A80108FD3F010881900108078B010852 +:100EB000678D01080BE3020891190308A5E40208F5 +:100EC00074490020802B0120414C2045580000002F +:100ED000414C2045582D415400000000414C2564F0 +:100EE00020256420256420256420256C6C75000075 +:100EF000524C204558000000524C256420256420A7 +:100F0000256420256420256C6C7500005445524DE5 +:100F100020256420256C6C75000000004558204C8D +:100F20004D435231202564004558204C4D435232E8 +:100F30002025642025642025640000004558204CAD +:100F40004D435233202564202564202564202564E8 +:100F5000000000004558204C4D43523420256420A9 +:100F6000256420256420256400000000534D524173 +:100F70002025642025640000D2B2203A22BF21FA45 +:100F800002F0002170472032D141D04048409140CA +:100F9000D14048407047000038B5F6F761FE04467E +:100FA000104DF9F759FA286005F09AF805F09DF808 +:100FB000686005F0D5F90C48C4F8B00004F1B00041 +:100FC0000A4941600A4981600A49C1600A490161D0 +:100FD000012032BD034949688968084701484068D3 +:100FE00000680047202B0120777F0008737F0008EE +:100FF0007F7F0008837F0008877F00082DE9F04786 +:1010000086B0044601A81421F3F7B2FBF1F749F9C1 +:1010100005464FF00208002601E0761C76B20A2E43 +:1010200080F29E80022EF8D0032EF6D0062EF4D049 +:10103000524850F82670787A002806D107F10C0043 +:10104000406D406880470028E7D008F8046008F148 +:1010500001084FFA88F8304609284FD8DFE800F039 +:10106000050A4E4E10204E154E49C8212846F1F76C +:1010700004FB43E04FF448712846F1F7FEFA3DE0E7 +:1010800032212846F1F7F9FA38E007208DF80400FC +:10109000FF208DF8050032212846F1F7EEFA2DE009 +:1010A0003C212846F1F7E9FA4FF0000A07F10C0954 +:1010B000BAF1030F22DA0020D9F8541009698847E1 +:1010C00014212846F1F7D9FA0120D9F854100969FA +:1010D000884714212846F1F7D0FABAF1020F05DA51 +:1010E000062101A8D9F85420526990470AF1010A53 +:1010F000DEE74FF416712846F1F7BFFA07F10C0945 +:1011000099F8151001A8D9F8542052699047002881 +:1011100019D0D9F80C00F96800EB010A99F81520EC +:1011200001A95046F3F7E6FB3846FEF7E7FC99F8CD +:101130001520514608EB0400F3F7DCFB99F9150084 +:1011400080444FFA88F8787A00287FF466AFD9F89F +:1011500054008068804700287FF45FAF002009E0DA +:10116000A8F10200ADF80000022200A92046F3F722 +:10117000C1FB002006B0BDE8F08700000840002059 +:1011800038B505000C0094F84C00642802D080208B +:10119000F3F72CFBF4F788F9F3F795FB6069284324 +:1011A0006061207C10F0F800082806D1A069616910 +:1011B000084202D02000F4F71CFA07484078F021DA +:1011C000084202D09920F3F711FB03484078002829 +:1011D00001D1F3F772FB31BDA07900200FB480B5C7 +:1011E000BDF80B0064494880022802DB801E08809D +:1011F00001E0002008800C229DF90A100020F6F77B +:1012000031FD032801D1022000E0012002BC5DF87D +:1012100014FB5948012141800021018001207047C1 +:10122000564908707047000030B58DB002A8F6F737 +:1012300078FD514C2088401C2080618880B2884213 +:1012400031D300202080054627E06068D0F8EC010B +:10125000E840C00720D5284607F0AAF800281BD48C +:1012600000EB80009FED430ADDED0B0A60EE800A83 +:10127000FDEEE00A10EE901A00AA8152DDED0C0A94 +:1012800020EE800ABDEEC00A10EE101A82185180BE +:1012900000A94018012101716D1C172DD5DBDDE976 +:1012A000000107F08EF801200DB030BD80B5F6F7D3 +:1012B000D7FC314948603249C0F8F01100F5F870A8 +:1012C00030494160304981600FF20D01C1600FF279 +:1012D00025010161012002BD10B50024274890F9C5 +:1012E0000000002804D107F08CF8002800D0012469 +:1012F000204610BDF8B504460D4640F22116287868 +:1013000016FB004001210170287816FB0040417057 +:10131000287816FB00400C218170287816FB0040CD +:10132000164991F90010002902D00221C17001E094 +:101330000121C170287816FB004001210171287835 +:1013400016FB0040C180287816FB0047002006F0FD +:10135000F9FF3881287816FB0044002006F0F7FFDB +:1013600060812878401C28700C20BDE8F24007F00E +:1013700007B800000000C842A47A0020E72B012033 +:10138000DD11010813120108291201080FB410B56C +:10139000032200210846F6F765FC022801D102204D +:1013A0001BE00FF23C00F0F7FDFFDFF8704C00206F +:1013B0006073608220629DF80C209DF80B109DF8F0 +:1013C0000A0008F0C7FC58220021DFF8540CF0F79F +:1013D00045FF00202074A073012010BC5DF814FBB1 +:1013E00050443A2053746172745065646F2D3032EA +:1013F000323500000120704730B58BB000A8F6F7F9 +:1014000090FC05210320F6F7EFFC002802D1DFF85D +:10141000140C0890DFF8044CA069C56F08F02FFC8D +:10142000207294F90800022806D1422D04D114211B +:101430000320F6F778FC07E0012805D1142D03D12D +:1014400042210320F6F76FFC284680B2DDED081A32 +:1014500000A991EC030A08F0E2FAE0692818E061BB +:1014600001200BB030BD10B5DFF8B04B94F900008F +:1014700000283AD494F90A0094F90110814228D145 +:10148000217B0818A07240B23D2801DB3C38A072D5 +:1014900094F90A100FF26C00F0F784FF0020E0616D +:1014A000DFF8880B90F9010010F1010F01D1012044 +:1014B00010BD94F90110081AF1F7D0FC21F0004199 +:1014C000F1F7FCFE40B2012801DB012010BD002035 +:1014D00010BDDFF85C0B90F90120914203D0D4E9F4 +:1014E0000023C0E90023002010BDE069DFF8441BA1 +:1014F000884205DB0FF21800F0F754FF012010BD01 +:10150000002010BD50443A204E54202564000000B5 +:1015100050443A204E6F54696D650000F8B52DEDCA +:10152000028B0024DFF8F45A07E0BA19AA7252B20B +:1015300021460FF26C00F0F735FF95F90A60002C98 +:101540001FD46878841B64B295F90C70002CECD51C +:101550002046F1F783FC21F0004141EC180B38469E +:10156000F1F77CFC53EC182BF1F75CFCE5D2F21B95 +:10157000AA72002452B221460FF23800F0F712FF8F +:10158000DBE73C2E02DBA6F13C00A87295F90A10BD +:101590000FF23400BDEC028BBDE8F440F0F702BF5F +:1015A00050443A20636F6D70312025642C202564EF +:1015B0000000000050443A20636F6D7032202564B3 +:1015C0002C2025640000000050443A20435554204C +:1015D0002564000010B5DFF8444A0020A073012004 +:1015E0002072002060724FF0FF3020700F20E072F8 +:1015F0001420207300206073608220626074A062F7 +:10160000E06228220146DFF8300AF0F727FEF6F7FD +:1016100027FBA061DFF8241AC0F888108830DFF8B3 +:10162000201A4160DFF81C1A81600FF28D21C16021 +:101630000FF615210161012010BD10B582B04FF4E5 +:101640006163C1EB0114A40013FB0043D3184FF4F2 +:101650007A746343DFF8E0492360DFF8C0391B7C0C +:10166000009313460A4601460FF20800F0F79AFE6F +:1016700013BD0000504420425420256420256420DE +:1016800025642025640000002DE9F0412DED028B3A +:10169000AAB0DFF88C69314684B068465822F1F769 +:1016A000D7F90FBC00F072FC10EE100AF6F7D6FC6A +:1016B00041EC100B9FED7E8BDFF87C49656853ECA5 +:1016C000102B51EC180BF1F7CFFAF1F7F7FD15FAE3 +:1016D00080F060604FF6FF75A84200D36560314628 +:1016E00084B068465822F1F7B3F90FBC00F006FC4D +:1016F00010EE100AF6F7B2FC41EC100BA76853ECA1 +:10170000102B51EC180BF1F7AFFAF1F7D7FD17FAE0 +:1017100080F0A060A84200D3A560002013900220B2 +:101720001290314684B068465822F1F791F90FBC07 +:1017300000F078FAA1894018A08180B2FF2801DB6F +:10174000FF20A0810020139003201290314684B026 +:1017500068465822F1F77CF90FBC00F063FA216962 +:1017600040182061A84200D3256100201390062074 +:101770001290314684B068465822F1F769F90FBCDF +:1017800000F050FAA18A4018A08280B2FF2801DB45 +:10179000FF20A0820020139007201290314684B0D1 +:1017A00068465822F1F754F90FBC00F03BFAE18A81 +:1017B0004018E08280B2FF2801DBFF20E082002099 +:1017C000139008201290314684B068465822F1F7F1 +:1017D0003FF90FBC00F026FAA1694018A061A842A9 +:1017E00000D3A5610020139009201290314684B0E7 +:1017F00068465822F1F72CF90FBC00F013FAE169A2 +:101800004018E061A84200D3E56114A808F03BFA53 +:10181000DFF8187DD7F828802398F6F71FFC002200 +:10182000DFF8EC3CF1F720FAF1F748FD58FA80F0C8 +:10183000B862F96A491CF962B0FBF1F084F8200043 +:101840000020139001201290314684B0684658223F +:10185000F1F7FEF80FBC00F0E5F9616A401860622C +:10186000A84200D36562F87B00F0C7FA2AB0BDEC4D +:10187000028BBDE8F081DFF8C0078189002914D10F +:101880000169002911D1818A00290ED1C18A00295C +:101890000BD18169002908D1C169002905D1406AAD +:1018A000401E8041C043C00F7047012070470000B8 +:1018B00000000000000059402DE9F04FABB0824617 +:1018C000002414A808F0DFF9DFF8545720461390DD +:1018D00001201290294684B068465822F1F7B8F8E2 +:1018E0000FBC00F09FF906469DED230AD5ED0F0AC7 +:1018F00030EE600A10EE100AF6F7B0FB2246DFF871 +:10190000103CF1F7B1F9F1F7D9FC0746BFB2BDF8C9 +:101910009A00B5F84A10401AC0B20090DFF80C8C5B +:10192000BAF1000F44D1002E01D1384315D0012463 +:10193000002E12D0DFF80C9CD9F81000B0420CD069 +:10194000204608F0E4FE204608F09BFFD9F810007E +:10195000301AC8F82400C9F81060DFF8E89BC9F80D +:1019600010600020C8F81C004FF0FF3088F800001D +:10197000DFF8BC26D8E90001C2E90001C9E900018D +:10198000DFF8A826C2E9000198F80B0088F80A00E1 +:1019900098F80E00002846D0002088F80E0098F82D +:1019A000100000283FD0012088F8110004463AE0DA +:1019B00000F0C5F900281CD001A8F0F790FF4046C0 +:1019C00001A90522F1F734F8204688F80900DFF86C +:1019D0006026D8E90001C2E9000198F9023098F9BF +:1019E000012098F900100FF67030F0F7DBFCFFF7DC +:1019F00095FD01A8F0F773FF404601A90522F1F714 +:101A000017F8FFF730FD00280DD0DFF82026D8E9C1 +:101A10000001C2E9000198F81000002802D001205E +:101A200088F811000124D346BBF1010F08D198F8C2 +:101A30000E005146884203D000F04EFA88F80EA0FE +:101A4000BBF1010F69D1002E67D0DFF8F89A98F842 +:101A50000F0098F81010084310D1012088F81000EA +:101A60000522414609F10800F2F744FF98F80220E8 +:101A700098F8011098F80000FFF7DFFD98F90100D1 +:101A800099F90910401A411E222901D2012005E0CE +:101A900010F1230F01DA012000E00020012835D1E8 +:101AA0000020C8F82800C8F82C00FFF7E4FE002842 +:101AB0002CD028220021DFF88005F0F7CFFB98F822 +:101AC0000F00401C88F80F00C0B215280BD10FF68C +:101AD000A020F0F767FC012088F81100002088F8AA +:101AE0000F00012412E098F81000401C88F8100044 +:101AF00098F8022098F8011098F80000FFF79DFD73 +:101B00000522414609F10800F2F7F4FEFFF7BCFD9B +:101B1000582214A92846F2F7EDFE98F80D00012886 +:101B20003CD1B8F81200002805D10FF65420F0F788 +:101B300039FC012428E0D8F82010814219D2002E67 +:101B400002D10098384300D00124DFF8F89999F9C0 +:101B5000020098F90220904216D0491CC8F82010C3 +:101B60000FF63020F0F71EFCD8E90001C9E90001AA +:101B70000AE0002088F80D00A8F81200C8F820003C +:101B80000FF62020F0F70EFCBBF1010F06D198F8FC +:101B90001000002802D0012088F8110020460128FA +:101BA00002D10021C8F81C10D8F8181091F879104B +:101BB000002907D10021C8F81C10012801D100F02C +:101BC0008BF9002420462BB0BDE8F08F10B5DFF86C +:101BD0005C090021C161032205210020F6F742F8CB +:101BE000044600F007F8204610BD0322052101201D +:101BF000F6F738B800B597B000A808F044F85822B6 +:101C000000A9DFF82C09F2F775FE012017B000BD1E +:101C1000DFF81809406A7047DFF8100900214162B7 +:101C2000704700000FB410B596B000249DF9BC00B9 +:101C300001280BD108F021F91899884202D3441ADF +:101C4000E4B272E08038441AE4B26EE000A808F012 +:101C50001AF89DF9B800401E082866D8DFE800F0A1 +:101C60002905111D2936424E5A00019819998842BA +:101C700001D3441A59E0DFF8D0281018401A441C48 +:101C800053E002981A99884201D3441A4DE0DFF8D4 +:101C9000B8281018401A441C47E003981B99884242 +:101CA00001D3441A41E0DFF8A0281018401A441C60 +:101CB0003BE000981899884201D3441A35E0DFF8D8 +:101CC000881808181899401A441C2EE004981C998A +:101CD000884201D3441A28E0DFF86C281018401A13 +:101CE000441C22E005981D99884201D3441A1CE047 +:101CF000DFF854281018401A441C16E006981E9964 +:101D0000884201D3441A10E0DFF83C281018401A2A +:101D1000441C0AE007981F99884201D3441A04E042 +:101D2000DFF824281018401A441C204616B010BCB6 +:101D30005DF814FBDFF8F407012141727047DFF80A +:101D4000EC07407A704707F0B1BF0146DFF8DC27A7 +:101D5000792902DB7820508200E050820120507304 +:101D60000FF65400F0F71EBB10B5040001D101249A +:101D700002E0072C00DB062421460FF65000F0F7A6 +:101D800011FB641E052C2DD8DFE804F0030A11189E +:101D90001F26DFF898073721C1723C21017321E02B +:101DA000DFF888071921C1721E2101731AE0DFF8DC +:101DB0007C070F21C1721421017313E0DFF86C0757 +:101DC0000A21C1720F2101730CE0DFF860070721BF +:101DD000C1720C21017305E0DFF850070521C172C3 +:101DE0000A210173DFF84407C17A8172BDE810400F +:101DF000FFF794BBDFF81C07704700EB80018800F9 +:101E0000421CDFF810078C4992B20B681B0E13546A +:101E1000521C92B20B681B0C1354521C92B20B68EA +:101E20001B0A1354521C92B20B681354521C92B2E8 +:101E30004B681B0A1354521C92B24B681354521C29 +:101E400092B28B681B0A1354521C92B28B681354C3 +:101E5000521C92B28B891354521C92B20B691B0A0A +:101E60001354521C92B20B691354521C92B28B8AB7 +:101E70001354521C92B2CB8A1354521C92B28B69E7 +:101E80001B0A1354521C92B28B691354521C92B207 +:101E9000CB691B0A1354521C92B2CB691354521CC7 +:101EA00092B291F820301354521C92B24B6A1B0A22 +:101EB0001354521C92B2496A1154DFF87006511C37 +:101EC0008182704710B5DFF86446A18A0FF208706E +:101ED000F0F768FAA08A10BD80B528220021564884 +:101EE000F0F7BCF9DFF844060021C17301218182BB +:101EF000002101748162C16201BD00000FB400B510 +:101F000097B000A807F0BFFE9DED090ADDED210A9C +:101F1000B4EE600AF1EE10FA02DB30EE600A05E082 +:101F20009FED411A71EE600A30EE800A10EE100A41 +:101F3000F6F794F8DFF8E025DFF8E035F0F7A6FFD4 +:101F4000F6F7B4F8F6F78AF80022DFF8D435F0F7A0 +:101F50008BFEF1F7B3F900EE100AB8EEC00A10EEEE +:101F6000100AF6F77BF8DFF8B025DFF8B835F0F7A0 +:101F70007BFEDFF8B425DFF8D435F0F787FFF6F7FE +:101F800095F800EE100A17B05DF814FB0FB400B519 +:101F900097B000A807F077FE9DED0E0ADDED260A4A +:101FA000B4EE600AF1EE10FA02DB30EE600A05E0F2 +:101FB0009FED1D1A71EE600A30EE800A10EE100AD5 +:101FC000F6F74CF8DFF85025DFF85035F0F75EFFF4 +:101FD000F6F76CF8F6F742F80022DFF84435F0F730 +:101FE00043FEF1F76BF900EE100AB8EEC00A10EEEE +:101FF000100AF6F733F8DFF82025DFF82835F0F778 +:1020000033FEDFF82425DFF84435F0F73FFFF6F71D +:102010004DF800EE100A17B05DF814FB982501206A +:10202000DC1F012000007A4400247449302B012079 +:10203000282B012040771B00702601208D130108FA +:10204000F5130108F91301082DE9F8432DED068B6E +:10205000AAB006460D4614A807F015FE40F221145A +:10206000287814FB006001210170287814FB0060BF +:10207000DFF8B874797B01290ED1032242702878E9 +:1020800014FB00600122C270012907D1788A002860 +:1020900004D10020787301E001214170287814FBFD +:1020A000006003218170787C01281FD1387C0028D2 +:1020B0001CD0297814FB0161C0220A71DFF8541486 +:1020C0000870FFF7FFFE297814FB01610886287865 +:1020D00014FB0064FFF78EFEC4F832002878401C21 +:1020E0002870FFF7F9FE002078740CE20DF18C08DF +:1020F0009FED818B9FED829BDFF83474002013905D +:1021000001201290394684B068465822F0F7A0FCAE +:102110000FBCFFF787FD0A28287814FB006080F0C9 +:10212000F380002101710846139002201290394675 +:1021300084B068465822F0F78BFC0FBCFFF772FDA5 +:10214000297814FB01610A7910430871002013906B +:1021500003201290394684B068465822F0F778FC84 +:102160000FBCFFF75FFD297814FB01614871002067 +:10217000139004201290394684B068465822F0F734 +:1021800067FC0FBCFFF74EFD297814FB01618871D5 +:102190000020139005201290394684B068465822DA +:1021A000F0F756FC0FBCFFF73DFD297814FB0161E9 +:1021B000C871394684B068465822F0F749FC0FBC14 +:1021C000FFF7E4FE10EE100AF5F748FF41EC100BA4 +:1021D000287814FB006953EC102B51EC190BF0F725 +:1021E00043FDF1F76BF8A9F80E00287814FB00699D +:1021F0002398F5F733FF53EC182BF0F735FDF1F783 +:102200005DF889F81000287814FB0060B8F80E100B +:102210004174394684B068465822F0F719FC0FBC67 +:10222000FFF76CFE10EE100AF5F718FF41EC1A0BE1 +:10223000287814FB006953EC1A2B51EC190BF0F7BA +:1022400013FDF1F73BF889F81200287814FB0069B8 +:10225000D8F80800F5F702FF53EC182BF0F704FD4F +:10226000F1F72CF889F81300002013900620129043 +:10227000394684B068465822F0F7EAFB0FBCFFF7F6 +:10228000D1FC297814FB016108720020139007200B +:102290001290394684B068465822F0F7D9FB0FBC3B +:1022A000FFF7C0FC297814FB0161487200201390ED +:1022B00008201290394684B068465822F0F7C8FBCF +:1022C0000FBCFFF7AFFC297814FB01618872002076 +:1022D000139009201290394684B068465822F0F7CE +:1022E000B7FB0FBCFFF79EFC297814FB0161C87295 +:1022F0002878401C287004E1000000000000244001 +:10230000000000000000594080210171002013905E +:1023100002201290394684B068465822F0F798FBA4 +:102320000FBCFFF77FFC297814FB0161C1F80500A1 +:102330000020139003201290394684B0684658223A +:10234000F0F786FB0FBCFFF76DFC297814FB0161E9 +:10235000C1F809000020139004201290394684B07F +:1023600068465822F0F774FB0FBCFFF75BFC297836 +:1023700014FB0161C1F80D0000201390052012909C +:10238000394684B068465822F0F762FB0FBCFFF76D +:1023900049FC297814FB0161C1F81100394684B069 +:1023A00068465822F0F754FB0FBCFFF7EFFD10EE24 +:1023B000100AF5F753FE41EC100B287814FB006966 +:1023C00053EC102B51EC190BF0F74EFCF0F78CFF8F +:1023D000C9F82700287814FB00692398F5F73EFE1A +:1023E00053EC182BF0F740FCF0F768FF89F82B004E +:1023F000287814FB0060B8F80E1080F82C103946CD +:1024000084B068465822F0F723FB0FBCFFF776FD37 +:1024100010EE100AF5F722FE41EC1A0B454A464B26 +:1024200002F0C6F906D8454A454BF0F7FBFC01D24D +:102430009FED47AB287814FB006953EC1A2B51EC45 +:10244000180BF0F711FCF0F739FFA9F82D002878E8 +:1024500014FB0069D8F80800F5F700FE53EC182BC0 +:10246000F0F702FCF0F72AFF89F82F000020139004 +:1024700006201290394684B068465822F0F7E8FAF0 +:102480000FBCFFF7CFFB297814FB0161C1F81500E1 +:102490000020139007201290394684B068465822D5 +:1024A000F0F7D6FA0FBCFFF7BDFB297814FB0161EA +:1024B000C1F819000020139008201290394684B00A +:1024C00068465822F0F7C4FA0FBCFFF7ABFB297837 +:1024D00014FB0161C1F81D00002013900920129027 +:1024E000394684B068465822F0F7B2FA0FBCFFF7BD +:1024F00099FB297814FB0161C1F821002878401C60 +:102500002870FFF777FB2AB0BDEC068BBDE8F1839E +:1025100000002440A0FD00207B14AE47E17A743F08 +:1025200000005940E17A843F2D431CEB982501209F +:10253000DC1F0120B81E85EB51B89E3F9A999999EE +:102540009999B93FC428012080969800E2361A3F35 +:102550009A9999999999B93F50443A54696D654E41 +:102560006F74692025642025642025640000000024 +:1025700050442042542042462046554C4C00000016 +:1025800050443A20526571205065646F496E666F01 +:102590003100000050443A207574696D6572202541 +:1025A0006400000050443A20526571205065646F09 +:1025B000496E666F3200000050443A2053746172D5 +:1025C00074204461746120256400000050443A2066 +:1025D000555420256400000050443A204241544C98 +:1025E000454E4754482025640000000010B5DFF830 +:1025F000444D40F2972200212046EFF72FFEFF20A6 +:102600002070E07284F85A02DFF8FC0D002141705E +:1026100010BD70B501240B2831D1012918D1DFF884 +:10262000141D511891F94E321D46DFF8E06D965D8C +:10263000B54203DA581C81F84E0243E0002381F8CA +:102640004E321C4601460FF28000EFF7ABFE39E038 +:10265000022937D1DFF8DC1C511891F94E32012BD9 +:1026600003DB581E81F84E022CE0002381F84E3225 +:102670001C4601460FF26000EFF794FE22E00A28A4 +:1026800020D1012908D1DFF8AC0C111801F24E213C +:102690000879401C087115E0022913D1DFF8941C59 +:1026A000511801F24E2191F90430012B02DB581E22 +:1026B000087107E000230B711C4601460FF2180059 +:1026C000EFF770FE204670BD41542D414C20455817 +:1026D000202564202564000041542D524C2045588B +:1026E0002025642025640000DFF8481C81F856028C +:1026F00070470FB4F0B5ABB00124DFF80C5DE868AB +:10270000DFF8306C90F81014002957D190F81104BC +:10271000002853D10FF22C20EFF744FEB4208DF89F +:10272000020046208DF8030020468DF804000020AA +:102730008DF82C0003200C900DF1350000A9182213 +:10274000F0F776F90A208DF834000BA8F5F75EFB58 +:10275000002801D10220F0E014A807F094FA00A8A4 +:10276000F0F7BDF89DF80000F0769DF90100307794 +:102770009DF902107177BDF90320F2839DF90030B5 +:102780004FF46167C0EB001C4FEA8C0017FB03009D +:1027900040FA81F04FF47A7101FB0020C6F8020084 +:1027A000C6F80D000020A861E8702870A870687055 +:1027B0002422014606F52670EFF750FD9DF8C27001 +:1027C0003846012825D19DF8C3000246202A0ED0A4 +:1027D000F17D4118F175C9B2202912DB091AF17592 +:1027E000C9B20FF27010EFF7DDFD0220A5E0204620 +:1027F00005E0F17D224682401143F175401C052819 +:10280000F7DB307E21469DF9C420914008433076A5 +:1028100049E0811991F94E22002A44D191F95212CE +:10282000002940D102282ED100A8F0F758F89DF9D0 +:1028300000004FF461619DF90120C2EB02139A0080 +:1028400011FB00209DF9021040FA81F04FF47A71DB +:10285000BDF9032001FB0020C6F88B02C6F88702F1 +:1028600006F1250006F11B010522F0F7E1F84FF40F +:102870009660A6F81900DFF8680DC6F87F02002000 +:10288000686128610FE003280DD19DF8C30086F828 +:102890002000BDF8C5004FF47A714843C6F8210006 +:1028A0000020C6F89302204600FA07F1B07D0843E5 +:1028B000B0753278002A0DD09DF8C300012804D1EC +:1028C000824202D1002086F8590296F8610208433C +:1028D00086F861023A46214696F85602FFF799FEBD +:1028E000002800D10224E86896F955120A9196F959 +:1028F0005412099196F95312089196F952120791C0 +:1029000096F95112069196F95012059196F94F12C7 +:10291000049196F94E12039190F81114029190F8D7 +:1029200010040190B6F819000090337EF27DB17D5D +:102930000FF23400EFF736FD20462BB0F0BC5DF807 +:1029400014FB000041542D5245563134303330349D +:102950000000000041542D414C204578494E542040 +:10296000256420256400000041542D414C2025643D +:102970002025642025642025642C415420256420D2 +:102980002564202564256425642564202564256448 +:1029900025642564000000002DE9F04194B0FEF7A5 +:1029A00067FA06460124002E00F08680DFF884597D +:1029B00005F24E28B278022198F80800FFF729FEA8 +:1029C000002800D10324B07801282CD1F0780246E9 +:1029D00005F21607202A14D07978814209D3081A03 +:1029E0007870B878012196F9042091408843B87036 +:1029F0000AE00FF25C10EFF7D5FC00207870B87099 +:102A000002E000207870B870787800282AD1A87D7C +:102A1000012196F9022091408843A8750FF24410D5 +:102A2000EFF7C0FC1EE0401990F94E02002819D1C2 +:102A3000B078401990F95202002813D1B0780328D9 +:102A400009D105F219000021C17181600846C5F85D +:102A50009302A8F81600A87D012196F90220914062 +:102A60008843A875A87D002813D10FF20410EFF752 +:102A700099FCFFF7BBFD01208DF82C0003200C9082 +:102A80000A208DF834000BA8F5F7C0F9002829D1E9 +:102A900025E0DFF87409C06890F87810002921D18A +:102AA000002180F8101480F81114FFF79FFD0FF239 +:102AB000D000EFF777FC15E00FF2D800EFF772FCCB +:102AC000FFF794FD20468DF82C0003200C900A207F +:102AD0008DF834000BA8F5F799F9002801D10320EF +:102AE00032E00324DFF82009C068DFF8485805F217 +:102AF0004E2805F2160798F907100A9198F9061062 +:102B0000099198F90510089198F90410079198F91E +:102B10000310069198F90210059198F9011004919B +:102B200095F94E12039190F81114029190F8100447 +:102B30000190B5F819000090BB787A78A97D0FF262 +:102B40006000EFF72FFC204614B0BDE8F0810000D4 +:102B500041542D524D204578494E5420256420255E +:102B60006400000041542D524D2D494E5400000088 +:102B700041542D414C4C52454D4F564544000000A8 +:102B800041542D464F5243454452454D4F564544BE +:102B90000000000041542D524C204E756C6C00001A +:102BA00041542D524C202564202564202564202585 +:102BB000642C415420256420256420256425642547 +:102BC00064256420256425642564256400000000D4 +:102BD0002DE9F04F89B003A8EFF781FE01A807F0B7 +:102BE0005BF80027B84638460290DFF848479DF862 +:102BF0000C00A0719DF80D00E0719DF80E00207290 +:102C0000BDF80F00A4F80900A0794FF46161E279E2 +:102C1000C2EB02139A0011FB0020217A40184FF4F6 +:102C20007A71B4F8092001FB0020C4F80200BDF855 +:102C30000450EDB2BDF806A000F084FDD4F80D10EC +:102C4000D4F8020000F0E4FB060001D0C92E0CD33A +:102C5000DFF8E097D9F80C00C26F31460FF23C4024 +:102C6000EFF7A0FBD9F80C00C66FA07D400722D576 +:102C7000DFF8C097D9F810003018C9F8100047F2F3 +:102C80003051884217D3D9F814104118C9F81410DC +:102C90000FF21840D4F87F228A4205D3EFF782FB67 +:102CA0003846C9F8100006E0EFF77CFB3846C9F853 +:102CB0001400C9F8100094F80B90A94500F08D801D +:102CC00084F801A025703846C4F88302A07D40072F +:102CD00077D5D4F88712D4F8020000F099FB834628 +:102CE000D4F88F0244F62067BB4513D25844C4F889 +:102CF0008F0204EB8900D0F86B125944C0F86B12B4 +:102D0000E07A0019217B90F866228A4212D280F87C +:102D100066120FE083444046C4F88F021422014635 +:102D200004F26B20EFF79AFA0522414604F266207E +:102D3000EFF794FAD4F88F22BA4234D34046D4F84D +:102D40006F12D4F86B32994200D3012002210BE0BC +:102D500004EB8303D3F86B3204EB8707D7F86B726D +:102D6000BB4200D20846491C0346C9B20F46052F94 +:102D7000EEDB8DF81400181990F866028DF8150036 +:102D800005A905A800F0D6FB1422414604F26B20E9 +:102D9000EFF764FA0522414604F26620EFF75EFA87 +:102DA0004046C4F88F0294F85702002809D05A46CA +:102DB00004F10B0104F10B0000F0BCFB404684F869 +:102DC0005702D4F80200C4F88702404684F859023A +:102DD00084F85EA20127B84628E0D4F883023018B0 +:102DE000C4F8830294F85E125FFA8AFA514505D05E +:102DF00084F801A084F85EA20127B846217B62789E +:102E0000914213D12178894510D144F62067B84208 +:102E10000BD3A07D400706D594F85702002802D1B5 +:102E2000012084F85702C4F88372002794F86112D5 +:102E3000002909D0002F07D10127C80700D5B846BF +:102E40000FF27420EFF7AEFAA07D40070FD5D4F84B +:102E50000290D4F88B12484600F0DAFAD4F87F12C8 +:102E6000884204D3012738460290C4F88B92002F81 +:102E700000F0D58000270DE00FF24820EFF792FA1E +:102E8000002084F85D0204F12500A11D0522EFF762 +:102E9000CFFD7F1C032F80F2C280A07D3841C00788 +:102EA000F7D594F8610240FA07F1C90701D4002868 +:102EB000EFD1002F03D0022F21D00ED3E9E7DFF8A6 +:102EC00074058068407A0028E3D1B8F1000FE0D0A3 +:102ED0000021012000F00FFADBE7E07D2841C00768 +:102EE000D7D560780028D4D094F859020028D0D1E2 +:102EF000012084F85902014600F0FDF9C9E7029863 +:102F00000028C6D0D4F80290D4F88712484600F0C2 +:102F10007FFAD4F88F1201EB000B44F62060834552 +:102F200006D35A4604F10B01204600F003FB09E0EA +:102F3000A9EB0B0103A800F07FFAA01D03A905224D +:102F4000EFF776FDB4F862020938EFF787FFDFF894 +:102F50002C2DDFF89037EFF787FEF0F7AFF98146B9 +:102F60001FFA89F994F85D22914506D049460FF67B +:102F70008050EFF717FA84F85D9294F85D1284F8A8 +:102F80003210012084F858024FF0000A0FF67050FA +:102F9000EFF708FA4FF009091BE00AF1010A09EB03 +:102FA000040000F22A018A78CB781B0203EB02426C +:102FB0000B79D21800924B7890F82A205FFA8AFA9F +:102FC00051460FF64850EFF7EDF909F105091FFAE0 +:102FD00089F9B4F8622210468145DEDBDFF85494AB +:102FE000D9F80C1091F8111400293FF449AF94F965 +:102FF00050120129FFF644AF94F85D1200293FF406 +:103000003BAF002A3FF438AF04F12A010120F3F767 +:1030100059FF0020C9F81000C9F8140030E7A07D5E +:1030200000072DD594F820002841C00728D594F832 +:103030006402002894F865021BD1A84215D0D4F888 +:1030400093023018C4F89302D4F82110884217D3A1 +:103050000321012000F04FF90020C4F89302012061 +:1030600084F8640284F865520AE00020C4F89302F0 +:1030700006E0A84204D0002084F86402C4F8930259 +:1030800004F10B0021460B22EFF7D2FC002084F85C +:103090006102012009B0BDE8F08F000041542D43CA +:1030A000757253543A2564202564000041542D4321 +:1030B0007572543A2564000041542D434845434BF2 +:1030C0002025640041542D455820256420256400A6 +:1030D0002DE9FE4305460E4691464FF0000801A833 +:1030E00041460A4606C0DFF8A04B04F5167794F86F +:1030F0005802002807D0084684F8580278810FF655 +:103100002440EFF74FF97889002827D104F22500F1 +:1031100094F825104FF461624378C3EB031C4FEA27 +:103120008C0312FB0131807808184FF47A71228DDC +:1031300001FB002004F1280101228A70CA701A22C2 +:103140000A7104224A71020E8A71020CCA71020AC3 +:103150000A7248727879887209207881B9F1000F73 +:1031600003D0B9F1020F2ED051D228788DF8040087 +:103170000DF10409687889F80100300C89F8020023 +:10318000300A8DF8070089F80460052201A97889C2 +:1031900000192A30F1F7AEFB7889411D7981287832 +:1031A000B8706878F8707879401C78714FF0010831 +:1031B000009699F801309DF8042089B20FF6783016 +:1031C000EFF7F0F823E07889001900F2270190F872 +:1031D00027204B781B0203EB0242897851187218A2 +:1031E000110C80F8271078890019110A80F828102E +:1031F0007889001980F8292079890819009290F8B7 +:10320000263090F825200FF64830EFF7CBF8D4F8A9 +:103210000200C4F887020020C4F88F024046BDE8CF +:10322000FE83DFF8640A90F85812002904D00021C8 +:1032300080F858120120704700207047DFF8480AD4 +:103240000021A0F862127047DFF83C1A01F22E004C +:10325000B1F86222002A04D10022CA8511464180B9 +:1032600001717047DFF8200AB0F86202002802D02E +:10327000001F80B270470520704710B5624CF4F70C +:10328000EFFCE060EFF70DF8A060E068DFF8FC19F4 +:10329000C0F8201400F22040DFF8F4194160DFF894 +:1032A000F41981600FF20D01C1600FF29D010161FF +:1032B000012010BD00205449C96891F8111400295B +:1032C00013D00146DFF8C03900E0491CC9B20A46F4 +:1032D000042A05DAD21892F94E22012AF5DB0120E0 +:1032E000002801D10020704700E07047DFF89809FE +:1032F00090F95F027047DFF8902902F24E2358746C +:10330000002813D00846042805DA801890F94E02E8 +:1033100001280DDB03E092F94E02012808DB987BBF +:10332000012202FA01F10843987370470020987354 +:10333000704700009CF4002080B500210846FFF78C +:10334000DAFF012002BD00007CB5002340F221120B +:103350000C7812FB0404012525700C7812FB040480 +:103360001A25A570DFF8204994F85C520B263542E7 +:1033700014D00B7812FB030301255D7094F85C32C6 +:10338000DD0603D503F0EF0384F85C320B7812FB03 +:10339000030394F85C52DD70012313E0ED0611D5B0 +:1033A0000B7812FB030303255D700B7812FB0303FC +:1033B00001259D720B7812FB0303DD70002384F856 +:1033C00060322B46002B12D00B7812FB0303D4F88B +:1033D00002505D600B7812FB030325781D720B7899 +:1033E00012FB0300627842720878401C0870FFF7F5 +:1033F000A3FF94F86002012804D104210120BDE854 +:103400007C4078E773BD000048260120B07A002098 +:1034100010B40022884201D3421A08E00B1ADFF8E8 +:103420007848A34203D3DFF874281018421A1046D4 +:1034300010BC7047482601202DE9F0412DED028B8C +:1034400082B007460E463046EFF712FD41EC180BEE +:1034500053EC182BDFF84808DFF84818EFF704FCA6 +:10346000EFF72CFF8DF800004FF4616853EC182B38 +:10347000DFF83408DFF83418EFF7F6FB04460D46A2 +:103480009DF8000018FB00F0EFF7E8FC02460B4641 +:1034900020462946EFF728FB41EC180B53EC182B7C +:1034A0004FF01130DFF80818EFF7DEFBEFF706FFFB +:1034B00004468DF801403C25E4B215FB04F0EFF71B +:1034C000CDFC02460B4651EC180BEFF70DFBEFF766 +:1034D000F5FE8DF802009DF8001011FB08F114FBB9 +:1034E000051151FA80F04FF47A7101FB1060ADF8CC +:1034F0000300384600A90522EFF79AFA02B0BDECA6 +:10350000028BBDE8F081DFF8801781F86002887DCA +:10351000C00709D591F86002012802D104210120D9 +:10352000E9E6002081F860027047DFF85C170B22A3 +:10353000EFF77EBA3CB40B461146DFF84C2702F297 +:103540005A24E478002C04D0D57A92F85A22AA4260 +:1035500003D0002202B030BCBAE5002C06D0AA424B +:1035600004D10222184602B030BCB1E533BC70472A +:1035700070B52DED048BB0EE408AF0EE608A044603 +:103580000D46164651EC180B53EC182BEFF7ACFA1E +:1035900041EC190B53EC192B0020DFF81817EFF74B +:1035A00063FB41EC100B84ED008B85ED000B53ECBD +:1035B000102B4FF01130DFF8F816EFF755FB0246ED +:1035C0000B4651EC190BEFF78FFA0022DFF8E836C3 +:1035D000EFF74AFBC6E90001BDEC048B70BD0000AB +:1035E000804F12000FB438B52DED048B8CB014A8A9 +:1035F0000268436843EC102B06AA08A90AA8FFF743 +:10360000B7FFDDE90A230020DFF8B016EFF72CFB47 +:1036100004460D46DDE90823DFF86006DFF8A01652 +:10362000EFF722FB22462B46EFF730FC04460D460F +:10363000DDE90623DFF88C06DFF88C16EFF714FBC4 +:1036400022462B46EFF722FC41EC180B16A8026825 +:10365000436843EC102B00AA02A904A8FFF788FFD7 +:10366000DDE904234FF03330DFF86016EFF7FCFAA2 +:1036700004460D46DDE90223DFF85406DFF8541650 +:10368000EFF7F2FA22462B46EFF700FC04460D4610 +:10369000DDE90023DFF8E405DFF83C16EFF7E4FA94 +:1036A00022462B46EFF7F2FB41EC190B53EC182B9B +:1036B00051EC180BEFF7D8FA04460D4653EC192BD2 +:1036C00051EC190BEFF7D0FA22462B46EFF7DEFB51 +:1036D00041EC100BEFF772FD0CB0BDEC048B31BC6C +:1036E0005DF814FB9999C93F0FB410B58EB010A8BE +:1036F0000268436843EC102B19A80268436805ACC4 +:1037000051EC100BEFF7F0F92060616012A802682D +:10371000436843EC102B1BA80268436807AC51ECCC +:10372000100BEFF7E1F92060616005A984B06846ED +:103730002422EFF78DF90FBCFFF754FF0EB010BC39 +:103740005DF814FB2DE9F84F2DED068BB0B0DFEDE1 +:10375000E08A00259FEDDE8A00A8EFF7C0F80EA8EA +:10376000EFF714F917A8FFF7E0FE14AF4FF47A70E3 +:103770003C214FF461627B78BC7811FB04F412FBAE +:103780000343FC781B1900FB03F89DF9003013FB81 +:1037900002F29DF9013013FB01219DF9022041FA4B +:1037A00082F1BDF9032000FB01261AA806F06BFA8E +:1037B000DFF828459DED290AB5EE400AF1EE10FA32 +:1037C00004DD0320E0702846A07001E02846E07088 +:1037D000F87ADFF8B49499F8BB12012940F03A81E5 +:1037E000012840F03781A069404500F0188109F5B3 +:1037F000267105A82422EFF72BF90EA984B068469C +:103800002422EFF725F90FBCFFF76EFFB0EE409AC8 +:10381000F0EE609AA1694046FFF7FAFD074651ECC9 +:10382000190B2A46134600F0C3FF18D23846EFF7AB +:103830001FFBDFF87424DFF87434EFF715FADFF8B4 +:10384000A024DFF8A034EFF70FFA02460B4651EC44 +:10385000190BEFF78FFBF4F729FC08EE900A9DEDAA +:10386000280AD4ED090A30EE600A84ED080AB5EEA4 +:10387000400AF1EE10FA01D52846206242F210709B +:103880008742C0F0998053EC192B2846DFF8581472 +:10389000EFF7EAF941EC190B53EC192BDFF8DC03D5 +:1038A000DFF84814EFF7E0F902460B4692469B46D4 +:1038B000206AF4F7D3FB52465B46EFF7B3FA2AD2FD +:1038C0009FED840AF4EE408AF1EE10FA0EDB0DF162 +:1038D0005500016800EE101ADFED7F0AB4EE600AB1 +:1038E000F1EE10FA02DB0A20207014E0B3EE080AB1 +:1038F000F4EE408AF1EE10FA03DB2078401D2070D0 +:1039000009E0B3EE020AF4EE408AF1EE10FA02DBAF +:103910002078C01C20700DF1550001680AEE101AC5 +:1039200094F900000690206AF4F798FBCDE90401B1 +:103930008DED029B1AEE100AF4F790FBCDE9000121 +:1039400018EE900AF4F78AFB02460B460FF2184075 +:10395000EEF728FD284620629DF85000312880F2BD +:103960001781B3EE080AB4EE408AF1EE10FA40F186 +:103970000F819FEDC00A0DF15500016800EE901A0D +:10398000F4EE400AF1EE10FA76DB9DF850002128A3 +:1039900080F210810DF15500016800EE101ADFED84 +:1039A0004E0AB4EE600AF1EE10FA63DB94F90000FF +:1039B00005285DDB0A25FDE00DF15500016800EEEC +:1039C000101A00EE907AF8EE600A09F2B5209FED29 +:1039D000AA1A016801EE901AB4EE610AF1EE10FA2B +:1039E0000EDB0DF155010A6800EE102A016801EEA8 +:1039F000901A30EE610A80EE200A20EE018AABE7D1 +:103A0000016800EE101A0DF15500016801EE901AE0 +:103A100030EE610A80EE200A20EE018A9CE7E1691F +:103A20003046FFF7F5FCB0F57A7F1FD394F900001C +:103A300000281BD09DED290AB5EE400AF1EE10FAE0 +:103A400014D0E661FF208DF850000DF15500294695 +:103A5000016081E7012809D109F526700EA9242209 +:103A6000EEF7F6FFC4F81880E66175E76078FBE0D2 +:103A700003259FE002259DE0016800EE901AB3EE59 +:103A8000021AF4EE410AF1EE10FA0EDB016800EEC4 +:103A9000901AF4EE400AF1EE10FA06D59DF85000A7 +:103AA000212880F28780022584E09FED750A016855 +:103AB00000EE901AF4EE400AF1EE10FA0EDB9DF8DB +:103AC0005C00012801D0042874D1022572E000BFF7 +:103AD000000000000000104200004042016800EEBB +:103AE000901A9FED681AF4EE410AF1EE10FA31DBFC +:103AF000016800EE901AF4EE400AF1EE10FA29D5B2 +:103B00009DF85C00012803D19DF85D10022901D0C9 +:103B1000042805D19DF8500021284BDA012549E001 +:103B20009DED290AB5EE400AF1EE10FA42DD0DF1E5 +:103B30005500016800EE101AB5EE400AF1EE10FAD9 +:103B400038DD6078002802D16FF0010532E06FF0B7 +:103B500002052FE09DED290AB5EE400AF1EE10FABC +:103B60000BDD6078002802D16FF0020522E0E078DA +:103B700003281FDB6FF002051CE0A078401CA0703A +:103B8000C0B23C2816DB6FF001050020A07011E0E8 +:103B90009DED290AB5EE400AF1EE10FA0ADD6078D3 +:103BA000002802D16FF0020504E0E078032801DB71 +:103BB0006FF0020520782818207040B2002801D547 +:103BC0000020207094F900000A2804DB0A202070ED +:103BD0000120607003E0002801D10020607094F99A +:103BE000040094F90010884230D018EE100AF4F75F +:103BF00035FA41EC100B607800280DF15500016892 +:103C000008EE101A94F9000004908DED020B29982B +:103C10000ED0F4F723FACDE9000118EE100AF4F7FC +:103C20001DFA02460B460FF25810EEF7BBFB0DE0F3 +:103C3000F4F714FACDE9000118EE100AF4F70EFAC1 +:103C400002460B460FF25810EEF7ACFB09F5267052 +:103C50000EA92422EEF7FCFEC4F81880E66128982D +:103C6000606220782071607830B0BDEC068BBDE8D2 +:103C7000F28F00000100104200007A449A9999994D +:103C8000010040416766E6409CF40020F3260108ED +:103C900099290108D12B0108A1780F05005C2605A0 +:103CA000B9791F962FA4923EFCA9F1D24D62503FE4 +:103CB0001111913F00004E400020AC4000C05B401D +:103CC0009999FD3F5839B4C876BE9F3F333356406B +:103CD000AE47E17A14AEF73F9999993F4826012003 +:103CE000DFBC9A785634323F00408F409999C93FE3 +:103CF00041542D434620574243202564202564002B +:103D000041542D54433A25640000000041542D4E87 +:103D10006F256420543A256420413A256420443AB2 +:103D20002564000041542D436C65617242617463E7 +:103D3000684461746100000041542D4241543220B6 +:103D400053503A2564202564202564202564000012 +:103D500041542D424154342053503A256420256467 +:103D6000202564202564000041542D503120256613 +:103D70002025662025662025662025640000000099 +:103D800041542D503220473A256620503A2566206E +:103D9000443A25662056656869636C652D25640084 +:103DA00041542D503220473A256620503A2566204E +:103DB000443A2566204E6F747965742D25640000A1 +:103DC00080B5B248816891F83914002901D10020EA +:103DD00002BD01218170ECF7ECFA00280AD0EDF762 +:103DE000EDF901460FF2EC20EEF7DCFAECF7E5FA1C +:103DF000012002BD002002BD0FB430B589B0A34C34 +:103E0000A06890F83814002940D190F839040028AF +:103E10003CD1ECF7B9F9002020706070A0706061AF +:103E2000BDF83240204600F019F9BDF8345028465C +:103E300000F012F90FF2B020EEF7B4FA2A4621464C +:103E40000FF2B020EEF7AEFA01208DF83400AA2070 +:103E50008DF832003C208DF8330000208DF80000F2 +:103E6000032001900DF109000CA91822EEF7E0FDE6 +:103E70000A208DF8080000A8F3F7C8FF002805D134 +:103E80000FF28020EEF78EFA022000E0012009B048 +:103E900030BC5DF814FB00B589B0ECF7ECF90120FB +:103EA0008DF80000032001900A208DF8080000A87A +:103EB000F3F7ACFF002801D1032000E0012009B096 +:103EC00000BD70B504460D4640F22116287816FB59 +:103ED000004001210170EDF771F901281AD128780D +:103EE00016FB004005214170287816FB00401B217D +:103EF00081700FF22420EEF755FA287816FB004067 +:103F00000221C170287816FB00401E214171ECF798 +:103F100065FA18E0EDF756F9012814D1287816FB58 +:103F2000004001214170287816FB00401B21817060 +:103F30000FF2F410EEF736FA287816FB0040012154 +:103F4000C170ECF75BFA2878401C2870BDE870401F +:103F5000ECF733BA70B59CB04D4E304605F093FE89 +:103F600030684A4CE168411A89B2002904D12269BB +:103F7000B6F84A309A4203D0E060B6F84A002061B1 +:103F8000A068D0F83C5431606068807AC046C04672 +:103F9000314683B068465822EEF75AFD0EBCADB2EA +:103FA0002846EDF703FD6061207801281CD113A895 +:103FB000EEF7ECFC17A80268436843EC122B15A837 +:103FC0000268436843EC112B13A80268436843EC72 +:103FD000102B9DF867209DF866109DF8650000F095 +:103FE0002FF80020207006E06078012803D100F04F +:103FF00031F80020607001201CB070BD10B50FF2C8 +:104000003810EEF7CFF9214CEEF74BF96060F3F77B +:1040100027FEA060EEF745F960600020E0602061B7 +:10402000A0681C49C0F8481400F248401A49416091 +:104030001A4981601A49C1601A490161012010BD05 +:1040400080B5D2B2C9B2C0B2ECF7F5F9BDE8014013 +:10405000ECF7E4B9ECF7EAB9ECF72EB9ECF71BB9D9 +:10406000ECF73CB9ECF748B980B5EDF7A7F80028B4 +:1040700005D006488078002801D1012002BD00202B +:1040800002BD024801210170704700000C28012088 +:1040900034200120F93D0108973E0108553F0108F1 +:1040A000C13D0108C33E0108EDF7B4B8EDF7B6B85D +:1040B000C9B2EDF7C2B8ECF791B9ECF7EBB8EDF790 +:1040C000C1B980B5EDF784F9C0B202BDEDF74ABCC5 +:1040D000EDF749BC4C5420436D6452656164795FCF +:1040E00053532025640000004C54205374617274B3 +:1040F000205353004C542053542025642C205754F3 +:10410000202564004C54205065646F4F70656E46E6 +:1041100061696C20535300004C5420524551554561 +:10412000535420504F5300004C5420524551554594 +:1041300053542041434B00004C5420496E69535363 +:10414000000000000FB480B5082200210846F3F7F4 +:1041500089FD022801D1022004E069480021017094 +:104160004180012002BC5DF814FB6548002101700C +:104170000120704738B501240020ADF80000604DE3 +:1041800095F90000002809D1204628700020A88059 +:10419000A86806F0B3FB06F029FD29E0012829D123 +:1041A0006888401C68800DF10101A86806F0CAFD0E +:1041B000002815D0082200212046F3F753FD0328DC +:1041C00000D1032408220B210020F3F74BFD022825 +:1041D00001D1022032BD0220287006F085FF07E0E1 +:1041E000B5F90200962803DB0520287000F057F887 +:1041F000204632BD0328FBD1A888401CA88000B20D +:10420000FB28F1DA00A9A86806F0B4FB0028EFD07B +:1042100004202870204600F033F800F040F8E7E76B +:1042200010B5374CF3F71CFDE060F6F715F9A06008 +:10423000E0683449C0F8501100F5A8703249416077 +:10424000324981600FF20D01C1600FF2C9010161B5 +:10425000012010BD01460020294AD26892F8412170 +:10426000002A02D0012900D106E0704780B5002065 +:1042700000F006F8012002BD254890F900007047C3 +:1042800023490870704780B5082200210846F3F7DB +:10429000E9FC022801D1022002BD012002BD80B547 +:1042A000174800218180418008220120F3F7DAFCC1 +:1042B000032801D1032002BD012002BD38B501242D +:1042C0000F4D95F90000022815D108220B21204638 +:1042D000F3F7C8FC032800D10324FFF7D4FF02281A +:1042E00001D1022032BD032800D10324032028700D +:1042F00002A0EEF757F8204632BD000053414900B6 +:1043000080290120454101086B41010875410108E0 +:10431000F82B012018B440F221120B7812FB030392 +:1043200001241C700B7812FB03035C700B7812FBEA +:10433000030308249C700B7812FB03000122C27057 +:104340000878401C087011BC90E700000FB480B5DD +:104350007E4801210170052200210846F3F782FC06 +:10436000022801D102200DE0052207210020F3F7E9 +:1043700079FC022801D1022004E000F0DFF806F009 +:10438000DBFE012002BC5DF814FB38B501240522D8 +:1043900007212046F3F766FC032800D103246B4D68 +:1043A00095F90000032801D0012807D1052200213A +:1043B0000120F3F757FC032800D1032400202870C4 +:1043C00000F0BCF806F05BFF204632BD80B500204F +:1043D00000F03BF8022801D1022002BD032801D1E0 +:1043E000032002BD012002BD10B5584CF3F738FC84 +:1043F0002061F6F731F8A060EDF753FFE060206927 +:104400005349C0F8D810D8305249416052498160B0 +:104410000FF20D01C1600FF249110161012010BDC1 +:1044200001460020494A126992F8C920002A02D0A8 +:10443000012900D102E07047002003E0474890F9CD +:104440000000704745490870704770B582B0064655 +:1044500001253E4C94F90000012823D1A088401C7E +:10446000A08000B24C280BDB0020A080022020702E +:10447000052200212846F3F7F5FB032800D1032588 +:10448000012E59D1E068007D012807D1B4F904005C +:104490001F2851DB6078401C60704DE0A078401C04 +:1044A000A07049E002281CD1012E0AD1E068007DED +:1044B000012803D16078401C607002E0A078401CA5 +:1044C000A07094F90100012836DB0522002108467E +:1044D000F3F7C8FB022801D1022076BD032020702B +:1044E0002AE0032828D100208DF8000000A9A06848 +:1044F00006F046FEC0B202280DD105220021284652 +:10450000F3F7B0FB032800D103250120FFF79AFF42 +:104510000420207010E003280ED105220021284637 +:10452000F3F7A0FB032800D1032500206070A070E2 +:104530000220207006F000FE284676BD03480021C8 +:104540008180417081707047000000009C2801202C +:104550004D4301088B430108CD430108E92B01209D +:1045600010B50C4640F22111227811FB0202012302 +:104570001370227811FB02025370227811FB0202A1 +:1045800005239370227811FB02000121C170FFF70F +:1045900053FF2078401C207010BD00000FB480B580 +:1045A000022201210020F3F75DFB022801D1022045 +:1045B0000EE0022207210020F3F754FB022801D16C +:1045C000022005E006F066FE41480021017001204E +:1045D00002BC5DF814FB3E480021017001207047C9 +:1045E00000B58BB000A8F3F79CFB03A890EC030A7E +:1045F00006F086FE3649087001200BB000BD10B5EC +:10460000334CF3F72DFBA060EDF74BFE6060A06824 +:104610003049016630494166304981660FF21D011B +:10462000C1660FF269010167012010BD80B52848FD +:104630004068007D06F05DFE012002BD0020244997 +:104640008A6892F85120002A04D091F900100029BC +:1046500000D0012070471E480021017001207047E2 +:1046600010B50024012804D007D303280BD002D3AF +:1046700003E0012407E0022405E0032401460FF2D1 +:104680006000EDF78FFE204610BD000070B50446B7 +:104690000D4640F22116287816FB004001210170DA +:1046A000287816FB00404170287816FB0040022154 +:1046B0008170074890F90000FFF7D2FF297816FBB8 +:1046C0000141C8702878401C2870BDE87040C2E7DE +:1046D000182A01209D450108D7450108E145010838 +:1046E0004C4D43505320312025640000014807F011 +:1046F000C3BC000000400020704700000278C9B22F +:104700008A421AB11CBF10F8012FF9E718BF002028 +:1047100070470000C9B2830706D0521E22D310F89A +:10472000013B9942F7D11FE0083A13D302F104028A +:1047300041EA012141EA014150F8043B121F21BF27 +:104740004B40A3F1013C2CEA030C1CF0803FF3D05A +:10475000C9B2001F083210F8013B521E28BF91EA6F +:10476000030FF8D818BF0120401E704730B44368CB +:1047700003F0004201211B031B0B436004BF0368CD +:10478000002B08D10DE00368DD0F45EA44044460C6 +:104790005B000360491E4468E302F4D523031B0B4E +:1047A000436043681A434260084630BC70470000CB +:1047B0004FF4001C1CEB410F94BF1CEB430F09E0AE +:1047C00041EA030C50EA4C0C52EA0C0C03D28B4227 +:1047D00008BF8242704714BF994290427047000060 +:1047E00070B504460D466068C0F30A5040F2FF7190 +:1047F000884207D16068000304BF2068002817D0F2 +:10480000022070BD20B92046FFF7B0FF012867DA0B +:10481000012D0FDB40F2FF71091A8D420AD3606847 +:1048200000284CBF9FED2F0B9FED300B84ED000B4C +:10483000012070BD4142A942616806DA6FF31E5142 +:10484000401941EA0050606041E0401E6368012267 +:10485000451962F31F5305F1350001F00041636013 +:10486000352803D361600020206070BD002215F15F +:104870001F0F04DA22682360002020356060684240 +:1048800013D0521E25689241C0F12003D2439D40AF +:1048900045EAD27225686668C54006FA03F32B43E1 +:1048A0002360636823FA00F060606068084360601A +:1048B000B2F1004F03D80DD12078C0070AD5206887 +:1048C000401C2060206828B96068401C60604FF080 +:1048D000FF3070BD6068884204BF20680028F6D1B0 +:1048E000002070BD000000000000F0FF000000008C +:1048F0000000F07F91FBF2F303FB1211C0E90031DD +:104900007047000010B517480078002802D1A22097 +:10491000EFF76CFF1448006A401C13490862124903 +:10492000496A401A002802D40F48012181710E48BB +:1049300090F8280000280CD00B4890F82800401E62 +:10494000094981F82800C0B2002802D10648012197 +:1049500001710648046802E0606880472468002C02 +:10496000FAD110BD042C0120A0790020C02B012019 +:1049700080B54FF44070F4F7B3FA3348016841F45E +:10498000700101603148016841F0010101600021BE +:10499000816001682E4A114001602E494160016822 +:1049A00021F4802101600021C16000F02DF82A4827 +:1049B0004FF00061016001BD2848416801F00C0121 +:1049C000082914D10168026802F03F02244BB3FBAE +:1049D000F2F20168C1F3881151430268C2F3014247 +:1049E000521C5200B1FBF2F11E4A116102E01D4956 +:1049F0001B4A0A611B494068C0F30310405C0A6906 +:104A000022FA00F0086170471448C16B41F08051F0 +:104A1000C16341684160416841604168416008216B +:104A2000016011494FF4C0620A60416821F400013D +:104A300041600E480E4901600E48016821F4404172 +:104A400041F480410160704788ED00E00038024089 +:104A5000FFFFF6FE1030002408ED00E004380240AD +:104A60000024F4002C7A0020003C024084380240EC +:104A700040310040007000400021102806DB103853 +:104A800000F1604111F56441097806E00E2801D17A +:104A9000042007E00449001F415C802901DA02205C +:104AA00000E00120704700BF18ED00E080B55849D4 +:104AB0000978491C564A1170017A491E0172C9B21F +:104AC000002901D107F0E6FAF0F757FD01BD38B52E +:104AD0000400504805680BE0287A002807D0686871 +:104AE000A04204D1012028722800FFF7DFFFED6803 +:104AF000002DF1D131BD38B50400474800780028B9 +:104B000002D0A120EFF772FEF0F7F6FC41480568ED +:104B100005E0A54202D1AF20EFF768FEED68002D59 +:104B2000F7D13E483E490160142200212000EDF7F4 +:104B300095FB69202074EFF7C6FE36480068E060F8 +:104B40003448046032484078F021084202D099206D +:104B5000EFF74CFE2E484078002801D1EFF7ADFE6C +:104B600031BD38B504002C480078002802D0A120BF +:104B7000EFF73CFEF0F7C0FC207C692802D08520CE +:104B8000EFF734FE22480078401C21490870207A53 +:104B9000002804D11E4880686060012510E060682C +:104BA0001B498968884209D01021200003F024FBAA +:104BB000207A0028F8D1164880686060207A451C69 +:104BC0002572F0F7DAFC280032BD10B50400124857 +:104BD0000078002802D0A120EFF708FEF0F78CFC47 +:104BE000207C692802D08520EFF700FE207A00287B +:104BF00002D19620EFF7FAFD60680549896888427E +:104C000002D09C20EFF7F2FD2000FFF74FFF10BD10 +:104C1000A0790020B82B0120052C0120D02B0120E9 +:104C2000CF4A010800F5E0700268914203D343685F +:104C30009A18914202D380680028F5D17047DFF8B6 +:104C40002007016899B94FF48031816004224FF444 +:104C5000805141604FF0FF31C16001610421416129 +:104C6000DFF80017C1F8BC21DFF8FC160160012055 +:104C7000704701F1080313F0070305D001F10803A1 +:104C8000C3F1080303F007035918D21A8161C26007 +:104C900042F001034B60511828224A60DFF8C01629 +:104CA0000969C16170472DE9F84F044601F1080018 +:104CB00010F0070005D001F10800C0F1080000F075 +:104CC000070000EB010B02F1080010F0070005D00F +:104CD00002F10800C0F1080000F007008618A6EBFA +:104CE0000B00A0EB030803EB0B0743F00300CBF82A +:104CF0000400B74228BF07F0EBF93079C00758BF6E +:104D000007F0E6F9B8F1100F38BF07F0E1F9A06934 +:104D1000864207D1E0684044E060A76140F00100AE +:104D200078605AE16069864208D1A0684044A0607A +:104D3000676140F001017960C0514EE1706800F098 +:104D40000301012940F0AD80C0084FEAC0092028C6 +:104D50003BD2D6F808A0F5680090AE4208BF07F035 +:104D6000B7F9564508BF07F0B3F970680099C00855 +:104D7000C000B0EBC10F18BF07F0AAF9009804EB10 +:104D8000C00000F128018A4508D021698A45C0F099 +:104D90008480DAF80C10B14240F07F80554506D18E +:104DA000009A2068012191408843206077E02830F4 +:104DB000854205D0206985426FD3A868B0426CD186 +:104DC000CAF80C50C5F808A069E0F568D6F818A034 +:104DD000B5420CD0B0682169884223D3C168B14282 +:104DE00004BFA968B1421DD1C560A8601CE006F1EE +:104DF0001400056835B906F110000568A5B101E099 +:104E00000846056805F114010A68002A02BF05F189 +:104E100010010A68002AF3D12169884202D30021D7 +:104E2000016001E007F054F9BAF1000F37D0F069E2 +:104E300004EB800000F5987001688E4209D105608E +:104E4000280014D1F26960680121914088436060B4 +:104E500025E02069824508D3DAF81000B04214BF7B +:104E6000CAF81450CAF8105001E007F031F9B5B192 +:104E70002069854211D3C5F818A0316929B1814252 +:104E800026BF29618D6107F023F9706938B1216966 +:104E9000884202D36861856101E007F019F94E4448 +:104EA000C84470684008400070604FEAD80548F078 +:104EB0000100786048F80780202D21D204EBC5005E +:104EC00000F12806B146B8F1100F38BF07F000F91D +:104ED000206820FA05F1C90704D40121A94008433C +:104EE000206006E0B068216988422CBF814607F047 +:104EF000EFF8B760C9F80C70C7F80890FE606CE076 +:104F00005FEA182008BF002123D0B0F5803F28BFFA +:104F10001F211ED2A0F58071090C01F00801884004 +:104F2000A0F58052120C02F004029040A0F58043DC +:104F30001B0CC1F10E0103F00203891AC91A984033 +:104F400001EBD030C11D28FA01F101F0010101EBA4 +:104F50004001F96100227A613A6104EB81006268E4 +:104F600022FA01F300F59870DB0706D4012303FA57 +:104F700001F11143616007601CE01F2900680EBF4A +:104F800000214908C1F1190108FA01F100E01046B9 +:104F90004268D208D200424510D0CA0F00EB82020C +:104FA00002F1100349001A68002AF0D121698B42EE +:104FB00011D31F60B861FF60BF600EE02269816895 +:104FC000904228BF914206D3CF608760B960F860F5 +:104FD0000020B86101E007F07BF80BF10800BDE8A4 +:104FE000F28F2DE9F04F0546DFF87403006883B0B7 +:104FF000884608B9FFF723FEDFF86403806800EBFA +:1050000008012F31401E21EA0000804580F0A58173 +:10501000D5F8B81141B1D5F8B0218018824280F09E +:105020009C818142C0F0998107F056F800281EBF8C +:105030000446076814F1010F00F08F81D5F8B00124 +:105040003818C5F8B001D5F8B411814238BF01460F +:10505000C5F8B411A86968BB286908B1844200D2B8 +:105060002C61C5F8C041C5F8C4710020C5F8CC0159 +:105070002021BB48006868624FF0FF302862284654 +:1050800000F128020830D2609260491EF8D1B5487C +:10509000854203D1A7F12802214625E055F8040CEA +:1050A000C00805EBC000A0F108013819401AA0F1B2 +:1050B000280219E005F5E071084600E08068B8B103 +:1050C00042680368D2189442F8D1027B12070FD4C9 +:1050D000AA699A420CD3466833449A4208D2B91955 +:1050E0004160E868A9693A182846FFF7C2FD1FE148 +:1050F0002869844238BF2C610846391900E080686D +:1051000080B102688A42FAD1017B09070AD404609F +:1051100043464168791841602846214603B0BDE8FE +:10512000F04FC0E5AE6931462846FFF77BFD416888 +:105130000068081801902F3800F1080111F00701EC +:1051400005D000F10801C1F1080101F0070101EBF0 +:10515000000906F11000814538BFB14609F1080089 +:10516000009004F1080109F1180A4FF0000BA7F1B3 +:10517000280011F0070105D004F10801C1F1080170 +:1051800001F007010A19401AAA61E86040F0010124 +:10519000516080182821416071480069E8610098D9 +:1051A00010F0070018BF06F093FF1B20C9F8040099 +:1051B00005F5E071B1E80C500098A0E80C50C5F876 +:1051C000C041C5F8C471C5F8CCB10098C5F8C80194 +:1051D000019800E08A460722CAF804200AF1040177 +:1051E0000A1D0BF1010B8242F4D3BBF1020FB8BFD1 +:1051F00006F06EFFB14500F09B80A9EB0600811917 +:105200004FEAD0094A68520852004A6040F0010152 +:1052100071608051B9F1200F1FD205EBC90101F176 +:1052200028042746102838BF06F052FF286820FAC5 +:1052300009F1C90705D4012101FA09F108432860E1 +:1052400006E0A068296988422CBF074606F040FFA7 +:10525000A660FE60B760F4606AE0010A08BF002241 +:1052600023D0B1F5803F28BF1F221ED2A1F5807246 +:10527000120C02F008029140A1F580531B0C03F0C0 +:1052800004039940A1F58044240CC2F10E0204F0FD +:105290000204D21A121BA14002EBD131CA1D20FA1E +:1052A00002F202F0010202EB4102F261002373619B +:1052B000336105EB82016B6823FA02F401F5987102 +:1052C000E40705D401209040184368600E601CE09C +:1052D0001F2A09680EBF00225208C2F1190200FA03 +:1052E00002F200E019464B68DB08DB00834210D075 +:1052F000D30F01EB830303F1100452002368002B4A +:10530000F0D12869844211D32660B161F660B6609D +:105310000EE02A698868914228BF904206D3C66091 +:105320008E60B060F1600020B06101E006F0D0FE58 +:10533000E868804511D2A0EB0800E86040F0010069 +:10534000A96908EB0102AA61506048F003004860B7 +:1053500003B001F10800BDE8F08F002000F02BBC85 +:105360003C280120C8FB00206859883C2DE9F84FF3 +:10537000044688460026C8F1000B5FEA182008BFE3 +:10538000002123D0B0F5803F28BF1F211ED2A0F5F9 +:105390008071090C01F008018840A0F58052120CC0 +:1053A00002F004029040A0F580431B0CC1F10E01F5 +:1053B00003F00203891AC91A984001EBD030C11DCD +:1053C00028FA01F101F0010101EB400104EB810039 +:1053D000D0F8300130B31F290EBF00224A08C2F1B5 +:1053E000190208FA02F2002300E052004568ED08B5 +:1053F000ED00A5EB08055D4503D206465FEA050B07 +:105400000CD045694FEAD27E00EB8E00002D00697A +:105410001CBF85422B460028E7D1184600283AD108 +:10542000002E3AD101208840400041420843616883 +:10543000084000F05F8141420840411E080B00F027 +:10544000100021FA00F2510901F00801CA40930846 +:1054500003F00403DA40550805F002050818EA4095 +:105460001818C2F3400E2844704422FA0EF10818AE +:1054700004EB8000D0F830010DE008464168C9080F +:10548000C900A1EB080159453CBF8B46064601699E +:105490000029F2D140690028F0D1002E00F02A81C5 +:1054A000A068A0EB0800834580F024812069864233 +:1054B000C0F01E817068C00808EB0B09C00008EB43 +:1054C0000605484518BF06F003FEAE4280F0108185 +:1054D000F768D6F818A0B7420CD0B06821698842A6 +:1054E00023D3C168B14204BFB968B1421DD1C760BE +:1054F000B8601CE006F11400076837B906F1100027 +:105500000768A7B101E00846076807F114010A68B7 +:10551000002A02BF07F110010A68002AF3D12169AD +:10552000884202D30021016001E006F0D1FDBAF10A +:10553000000F38D0F06904EB800000F59870016826 +:105540008E4209D10760380014D1F26960680121E8 +:1055500091408843606026E02069824508D3DAF8EC +:105560001000B04214BFCAF81470CAF8107001E0FD +:1055700006F0AEFDBFB12069874212D3C7F818A06C +:10558000306930B12169884226BF3861876106F0F1 +:105590009FFD706938B12169884202D378618761C3 +:1055A00001E006F095FDBBF1100F09D249F00300B0 +:1055B000706009EB0600416841F00101416096E02E +:1055C00048F0030070604BF0010068604BF805B0D4 +:1055D0004FEADB0020281DD204EBC00101F12807AF +:1055E000216821FA00F2BB46D20705D4012202FA53 +:1055F00000F00843206006E0B868216988422CBFAB +:10560000834606F065FDBD60CBF80C50C5F808B0C8 +:10561000EF606CE05FEA1B2008BF002123D0B0F5EB +:10562000803F28BF1F211ED2A0F58071090C01F018 +:1056300008018840A0F58052120C02F0040290404C +:10564000A0F580431B0CC1F10E0103F00203891A7F +:10565000C91A984001EBD030C11D2BFA01F101F0BD +:10566000010101EB4001E96100226A612A6104EB5A +:105670008100626822FA01F300F59870DB0706D416 +:10568000012303FA01F11143616005601CE01F2949 +:1056900000680EBF00214908C1F119010BFA01F1A0 +:1056A00000E010464268D208D2005A4510D0CA0F16 +:1056B00000EB820202F1100349001A68002AF0D1BF +:1056C00021698B4211D31D60A861ED60AD600EE0D1 +:1056D00022698168904228BF914206D3CD608560DF +:1056E000A960E8600020A86101E006F0F1FC07E194 +:1056F00006F0EEFC01E12DE9F84F044688466068AB +:1057000041420840411E080B00F01000C1404A0908 +:1057100002F00802D1408B0803F00403D9404D0881 +:1057200005F002051018E9401818C1F34006284496 +:105730003018F140081804EB8000D0F830014168BF +:10574000C908C9000646A1EB080A09E008464168F5 +:10575000C908C900A1EB080151453CBF8A4606466D +:1057600001690029F2D140690028F0D12069864200 +:10577000C0F0C1807068C00808EB0A09C00008EBDF +:10578000060B484518BF06F0A3FC5E4580F0B380C9 +:10579000F768B569B7420CD0B0682169884223D355 +:1057A000C168B14204BFB968B1421DD1C760B860D9 +:1057B0001CE006F11400076837B906F1100007680D +:1057C000A7B101E00846076807F114010A68002A3A +:1057D00002BF07F110010A68002AF3D1216988424B +:1057E00002D30021016001E006F072FC002D34D0EC +:1057F000F06904EB800000F5987001688E4209D1D1 +:105800000760380011D1F269606801219140884336 +:10581000606022E02069854205D32869B04214BF48 +:105820006F612F6101E006F053FCB7B12069874238 +:1058300011D3BD61306930B12169884226BF38611A +:10584000876106F045FC706938B12169884202D34E +:105850007861876101E006F03BFCBAF1100F09D2D4 +:1058600049F00300706009EB0600416841F0010156 +:1058700041603FE048F0030070604AF00100CBF85F +:1058800004004AF80BA0D4F808804FEAD805202D70 +:1058900028BF06F01DFCB8F1000F27D0D4F81490F3 +:1058A000009504EBC50000F128052F46B8F1100F54 +:1058B00038BF06F00DFC2068009920FA01F1C907F5 +:1058C00005D4009A012191400843206006E0A868B1 +:1058D000216988422CBF074606F0FAFBC5F80890FC +:1058E000C7F80C90C9F80870C9F80C50C4F808A0A3 +:1058F000C4F814B004E006F0EBFB0020BDE8F28F22 +:1059000006F10800BDE8F28F2DE9F04F83B005469F +:10591000C046C046DFF8B847F52D80F001810B2D59 +:1059200031BF102705F10B00C008C7002068FE0832 +:10593000F04010F0030F42D0C04300F00100861980 +:1059400004EBC60000F12808F700D8F80850686892 +:10595000C008C000B84218BF06F0BAFBD5F80890DE +:10596000454508BF06F0B4FB4D4508BF06F0B0FB47 +:105970006868C008C000B84218BF06F0A9FBC84557 +:1059800005D120680121B140884320600DE02069E5 +:10599000814508D3D9F80C00A84204D1C8F8089072 +:1059A000C9F80C8001E006F093FB47F00300686043 +:1059B00078190835416841F001014160F8E0A168BB +:1059C000B94280F0BF80002800F0A180012505FACF +:1059D00006F149004A42B0401143084041420840A4 +:1059E000411E080B00F01000C1404A0902F00802F5 +:1059F000D1408B0803F00403D9404E0806F002069C +:105A00001018F1401818C1F340083018404421FA2A +:105A100008F101EB000804EBC80000F128094FEA87 +:105A2000C80AD9F808607068C008C000504518BF9F +:105A300006F04EFBD6F808B04E4508BF06F048FB0E +:105A40005E4508BF06F044FB7068C008C0005045C2 +:105A500018BF06F03DFBD94505D1206805FA08F1CD +:105A6000884320600DE02069834508D3DBF80C00F3 +:105A7000B04204D1C9F808B0CBF80C9001E006F0B0 +:105A800027FB47F003007060AAEB0708B8190190E4 +:105A900048F001014160019848F80080A7684FEA8A +:105AA000D70ABAF1200F28BF06F012FB47B3CDF892 +:105AB00000A004EBCA00D4F8149000F1280AD346E1 +:105AC000102F38BF06F004FB2068009920FA01F17E +:105AD000C90705D4009905FA01F10843206007E0E1 +:105AE000DAF80800216988422CBF834606F0F0FAF4 +:105AF000CAF80890CBF80C90C9F808B0C9F80CA007 +:105B0000C4F8088006F108050198606150E06068FB +:105B1000C0B339462046FFF7EEFD050012D047E03E +:105B200015F1400F28BF4FF0FF370BD205F10B00E6 +:105B3000C008C700606828B139462046FFF716FC48 +:105B4000050035D1A168B9421CD3CA1B6069102A6F +:105B50000AD339186161A26042F001034B605250D0 +:105B600047F0030141600AE00022A260626141F057 +:105B70000302426009184A6842F001024A6000F1DB +:105B8000080515E0E06887420DD2C01BA169E060FE +:105B90007A18A26140F00100506001F1080547F059 +:105BA0000300486004E039462046FFF71AFA05462C +:105BB000C046C046284603B0BDE8F08F00B9704724 +:105BC0002DE9F047A0F10804C046C046DFF80055B3 +:105BD00028698442C0F07582616801F00302012ADD +:105BE00000F06F82CA084FEAC20808EB0409CA072E +:105BF00037D4226811F0030F00F0658251420C196E +:105C000090448442C0F05D8269698C4200F0D88083 +:105C1000D608202E70D2D4F80CA0A768544508BF2F +:105C200006F056FABC4208BF06F052FA6068C00897 +:105C3000C000B0EBC60F18BF06F04AFA05EBC6006D +:105C400000F128018F4205D029698F4251D3F968AC +:105C5000A1424ED1BA453DD128680121B1408843C7 +:105C600028604C4580F02D82D9F80400C10740F12E +:105C70002882810700F17A81A969894540F0B580C1 +:105C8000E868AC614044E86040F001016160696926 +:105C90008C4202D100216961A960E969814280F0EA +:105CA0001282DFF83004006808B9FEF7C8FFA9695E +:105CB000002900F00882E868292824BF2846FEF75A +:105CC000B1FFE869E968884280F0FD814FF0FF305C +:105CD000E861F8E12830824506D02869824508D37A +:105CE000DAF80800A04204D1C7F80CA0CAF808707E +:105CF000B7E706F0EDF9B4E7E768A669A7420BD06D +:105D0000A168814222D3C868A04204BFB868A042FB +:105D10001CD1CF60B9601BE004F114010F6837B9E2 +:105D200004F110010F689FB101E011460F6807F1FF +:105D300014021368002B02BF07F110021368002B36 +:105D4000F3D1814202D30020086001E006F0C0F9DF +:105D5000002E86D0E06905EB800000F598700168A0 +:105D60008C4209D10760380011D1E26968680121CD +:105D700091408843686074E72869864205D330699A +:105D8000A04214BF7761376101E006F0A1F9002F4E +:105D90003FF467AF28698742ABD3BE61216929B15F +:105DA000814226BF39618F6106F092F9606900284F +:105DB0003FF457AF296988429BD37861876150E7E8 +:105DC00099F8040000F0030003287FF44AAFC5F8F7 +:105DD0000880D9F8040040084000C9F8040048F0E1 +:105DE0000100606048F804806DE16969894508D167 +:105DF000A8686C614044A86040F0010161600051F6 +:105E000061E1C008C0004FEAD00A8044BAF1200F17 +:105E100036D2D9F80C70D9F80860B94508BF06F039 +:105E200057F9B14508BF06F053F9D9F80400C00886 +:105E3000C000B0EBCA0F18BF06F04AF905EBCA0064 +:105E400000F128018E4206D029698E42C0F081807F +:105E5000F16849457DD1B74206D12868012101FA90 +:105E60000AF18843286076E02830874205D0286907 +:105E700087426ED3B86848456BD1F760BE606AE070 +:105E8000D9F80C70D9F818604F450DD0D9F8080032 +:105E90002969884223D3C168494504BFB968494587 +:105EA0001DD1C760B8601CE009F11400076837B95C +:105EB00009F110000768A7B101E00846076807F17B +:105EC00014010A68002A02BF07F110010A68002ABB +:105ED000F3D12969884202D30021016001E006F074 +:105EE000F7F8002E37D0D9F81C0005EB800000F53C +:105EF0009870016889450AD10760380012D1D9F835 +:105F00001C206868012191408843686023E028696B +:105F1000864205D33069484514BF7761376101E097 +:105F200006F0D6F8BFB12869874212D3BE61D9F80E +:105F3000101029B1814226BF39618F6106F0C8F87F +:105F4000D9F8140038B12969884202D37861876191 +:105F500001E006F0BDF848F00100606048F80480F8 +:105F6000686984420BD1C5F80880ACE04008400065 +:105F7000C9F8040048F00100606048F804804FEA66 +:105F8000D807202F22D205EBC70000F128094E4682 +:105F9000B8F1100F38BF06F09BF8286820FA07F117 +:105FA000C90704D40121B9400843286007E0D9F8A3 +:105FB0000800296988422CBF064606F089F8C9F80E +:105FC0000840F460A660C4F80C907CE05FEA1820FA +:105FD00008BF002123D0B0F5803F28BF1F211ED26B +:105FE000A0F58071090C01F008018840A0F58052ED +:105FF000120C02F004029040A0F580431B0CC1F18A +:106000000E0103F00203891AC91A984001EBD0303F +:10601000C11D28FA01F101F0010101EB4001E1612C +:1060200000226261226105EB81006A6822FA01F3B5 +:1060300000F59870DB0706D4012303FA01F1114340 +:10604000696004601CE01F2900680EBF0021490838 +:10605000C1F1190108FA01F100E010464268D208C6 +:10606000D200424510D0CA0F00EB820202F11003A9 +:1060700049001A68002AF0D129698B4211D31C60AB +:10608000A061E460A4600EE02A698168904228BFA4 +:10609000914206D3CC608460A160E0600020A061E2 +:1060A00001E006F015F8286A401E28620BD1D5F8E9 +:1060B000C80100E080680028FCD14FF0FF30286262 +:1060C00001E006F005F8C046C046BDE8F0870000D4 +:1060D000C8FB00203C280120002848BF40427047F0 +:1060E000182200210248ECF7B9B8014870470000B7 +:1060F000AC27012010B504464FF499620021ECF75B +:10610000ADF840F24130208304F1180148808880C6 +:10611000002084F8F40204F53D70002181801021F4 +:106120000181002141818181C1810846A4F83603A3 +:1061300004F2363001214180002181804FF0FF318F +:10614000C1800021018141818181C18101210182C0 +:10615000418200218182C18201830121418300218A +:106160008183C18301840121418410BD00210B463C +:1061700018E00A1882F8F53201EB410200EB420206 +:10618000D38013815381D3831384538401EB410261 +:1061900000EB8202C2F8AC3302F56B72536093607D +:1061A000491C09B20129E4DB704738B504460322D3 +:1061B00000A91046DFF854389B681B6E1B6A98478D +:1061C000002828D09DF80000A4F8F40004F27E35E1 +:1061D0009DF80000A88004F1F40000A94A784280EC +:1061E0004A78EA808A7882808878288142F2B7608B +:1061F000A4F87E034FF4A960688010220FF61C01FA +:1062000004F55770F3F710FF10220FF61C0104F28B +:106210006D30F3F709FF31BDF0B583B004460020BF +:10622000C046014604F53D7569800626204611FBEF +:106230000641891D3246ECF7FBFBB5F9020010FB65 +:106240000640B0F90600E06004F10C00B5F9021058 +:1062500011FB0641B1F908104160B5F9021011FBBC +:106260000641B1F90A108160B5F90200001990F8F1 +:10627000F50284F8F40204F56870B5F9021001EB38 +:10628000410204EB820101F56B718CC98CC004F5ED +:10629000936204F5767104F12C0006F09CFA94F8F0 +:1062A000F4020190009401230022114604F580704D +:1062B00006F0DCFC40F6C412B5F9020010FB064003 +:1062C00000F11E0104F1240007F034F90020A88039 +:1062D000A4F85A030120FEBD7CB504460020C04648 +:1062E000014604F53D7569800626204611FB0641EE +:1062F000891D3246ECF79CFBB5F90200001990F8B5 +:10630000F50284F8F40204F5936204F5767104F161 +:106310002C0006F060FA94F8F40201900094012336 +:106320000022114604F5807006F0A0FC40F6C4126D +:10633000B5F9020010FB064000F11E0104F1240033 +:1063400007F0F8F80020A4F85A03012076BD0322D4 +:1063500001461046DFF8B4369B681B6E1B6A18476F +:1063600080B5FFF7C2FEDFF8841608600FF2E9017E +:1063700001600FF215114160DFF8941681600FF291 +:106380001911C1600FF2350101610FF26101416124 +:1063900001BD00200DE000EB4002DFF85C3603EBAE +:1063A000420247F6FF7322F81130491C0329F2DB41 +:1063B000401C042801DA0021F8E7704780B5DFF8B7 +:1063C000300690F8F41280F8F5120188C1804188F7 +:1063D000018181884181818CC183C18C0184018DBF +:1063E0004184FFF7D6FF002002BD000010B5002455 +:1063F000DFF8FC1591F8F5220270B1F906201212AF +:106400004270CA88827001F20602B2F902301B1291 +:10641000C37053880371B2F904301B12437193881F +:106420008371B2F918301B12C371138B0372B2F966 +:106430001A301B124372538B8372B2F91C301B1239 +:10644000C372928B02730846FFF7E6FE002800D065 +:106450000124204610BD000010B5DFF89445204609 +:10646000FFF748FE204600F0F6F9002802D120464A +:10647000FFF77CFE2046FFF798FE2046FFF7CCFE94 +:10648000BDE8104085E7000080B5DFF8640500F046 +:10649000EFF9BDE801407CE733B585B0144602A8AA +:1064A00000210A4606C000A806C0BDF81400ADF8D9 +:1064B000080002A8BDF816104180BDF818108180B0 +:1064C000FDEEC01A11EE900AADF8000000A8F0EE43 +:1064D000601AFDEEE11A11EE901A4180BDEEC10A7C +:1064E00010EE101A8180DFF8085500AA02A928468C +:1064F00000F050F895F9F402207005F53D709FED1D +:10650000580AB0F9101000EE901AF8EEE00A60EEAA +:10651000800AC4ED030AB0F91A1000EE901AF8EEE2 +:10652000E00A20EE800A84ED020AB0F9200000EEB5 +:10653000100AB8EEC00ADFED4B0A20EE200A84ED07 +:10654000010A9FED490AB5F9EE0000EE900AF8EE57 +:10655000E00A60EE800AC4ED040A05F2EE00B0F92C +:10656000021000EE901AF8EEE00A60EE800AC4ED28 +:10657000050AB0F9040000EE900AF8EEE00A20EEF9 +:10658000800A84ED060A284600F072F9012007B05F +:1065900030BD000030B589B00446DFF85854287883 +:1065A000ADF8040001A80B784380B1F90030C3F3C3 +:1065B000072383808B78ADF80A30B1F90230C3F33A +:1065C000072303810879ADF80E00B1F90400C0F388 +:1065D0000720ADF810000020ADF812006878ADF883 +:1065E000140006A9104600F06DF99FEDB40A06A844 +:1065F000D0ED010A60EE800AFDEEE00A10EE901A7E +:10660000A4F8301304F54C71DDED060A9FEDAC1AC9 +:1066100060EE810AFDEEE00A10EE902A4A80D0ED8D +:10662000020A20EE800ABDEEC00A10EE100A888031 +:106630002878012810D10020C046082100910123AC +:106640000246214601A800F011F8002804D00128D4 +:1066500002D12046FFF740FE012009B030BD000006 +:106660000000803C000080BC8FC2753DF0B593B047 +:1066700004460D4616461F460020ADF848000E9011 +:106680000F90ADF84000119042F2B7600DF14A0151 +:106690000D910DF146010C910EA90B910DF13A01EE +:1066A0000A9112A9099111A908910FA9079105F161 +:1066B000EC01069105F56871059105F5936104916A +:1066C00005F57671039105F12C01029102210191EA +:1066D000D5F8D413009105F1F403B5F9FC22214655 +:1066E00006F09EF8D5F8A003BDF83C100818A5F8F0 +:1066F000FA00D5F8A403BDF83E100818A5F8FC0070 +:10670000D5F8A803BDF840100818A5F8FE00B5F9A3 +:10671000F602B04206D01898A5F8F802A5F8F6627D +:10672000012096E0BDF93A00012801D1022090E055 +:10673000B5F9F802012803DB401EA5F8F8027CE059 +:1067400005F12C0105F1240006F001FFBDF9381018 +:1067500001290BD101230022294605F5807006F09E +:106760000AFC002085F8F402042072E001280BD115 +:1067700001230022294605F5807006F0FCFB00206D +:1067800085F8F402202064E0B5F85A03401EA5F80D +:106790005A0300B2012850DA05F53D7005900495C2 +:1067A0000120039000200290B5F9EC00019005F162 +:1067B0002C00009005F5807305F27E3205F26D31F4 +:1067C00005F5577006F06AFA10F5004F01D18020E8 +:1067D0003FE001282FDB0624B5F9F60210FB045038 +:1067E000801D29462246ECF723F9B5F90000E86040 +:1067F000B5F902002861B5F904006861B5F9F6023F +:10680000401995F8F41280F8F512B5F9F60210FB6C +:1068100004501E3005F124012246ECF709F9B5F9C0 +:10682000F60200EB400105EB810000F56B7005F509 +:1068300068711CC91CC0A5F85A7305F1EE000090E0 +:1068400040F2413305F1180229460FA806F096FEE2 +:10685000002013B0F0BD002180F8F512C18000F2D5 +:10686000060041808180018341838183084670470F +:1068700070B4B0F9061090F8F522664B1C7894427B +:1068800011D1B3F904408C420DD100F20604B3F9E2 +:106890000650B4F90260B54205D1B3F90850B4F915 +:1068A0000440A54207D01A70998000F2060460885F +:1068B000D880A0881881002070BC7047000034C4C4 +:1068C0000000344470B52DED068B0C46002109E024 +:1068D00030F91120B2F5006F03DDA2F5805220F8E7 +:1068E0001120491C0329F3DB03210DE00622424B52 +:1068F00002FB013202EB450333F8063C22F8153067 +:106900006D1C032DF2DB491E012901DB0025F8E790 +:106910000021394B04E030F8112023F81120491CE4 +:106920000329F8DBDFED358A9FED340A9FED338ACA +:10693000002047F6FF7517E0C95E00EE901AF8EEEA +:10694000E00A70EEA88AB2F9021000EE901AF8EE92 +:10695000E00A30EE800AB2F9041000EE901AF8EE68 +:10696000E00A30EE888A401C04280EDA062202FB78 +:1069700000F1CA18CE5EAE42DED1B2F90260AE427C +:10698000DAD1B2F90460AE42D6D100EE900AB8EE88 +:10699000E0AA9FED1B9B80EE0A0A10EE100AF1F7A9 +:1069A0005DFB53EC192BECF75FF9F1F77FFB2060EF +:1069B00088EE8A0A10EE100AF1F750FB124A164BC5 +:1069C000ECF752F9F1F772FB606088EE0A0A10EEFC +:1069D000100AF1F743FB53EC192BECF745F9F1F7EB +:1069E00065FBA060BDEC068B70BD0000742B012020 +:1069F000B0D30020C4290120DC27012000000000C2 +:106A000051FA42C879FF4F3F51FA42C8084000206E +:106A10004F630108DC29012079FF4FBF41534148F2 +:106A2000494B4153454900005345433039393131D1 +:106A30004E5346535400000000214FF0804200E0C6 +:106A400092089042FCD3002A09D05318984203D3ED +:106A5000401A801A01EB420149089208F3E7084600 +:106A60007047002802D400F07F0002E0404240F06E +:106A70008000C0B2704700F07F01802800DB4942EF +:106A80000846704730B404460D46A54200DA2C464D +:106A90001546A54200DA2C46A34200DA1C462046E1 +:106AA00030BC704730B404460D46AC4200DA2C4688 +:106AB0001546AC4200DA2C469C4200DA1C462046C1 +:106AC00030BC7047184900224A608A600861C8607B +:106AD000704770B50546144CA06821696268236848 +:106AE0009A4214DB91FBF3F6266190FBF3F0FFF77B +:106AF000A3FFA060072804DB2846FFF7E3FF002080 +:106B000070BDE660256100216160A16070BD521C0E +:106B1000626069182161E168491B01FB0100A06006 +:106B2000002070BD00000000F07900200EB4F0B528 +:106B30000999059A4A430092069A4A430192089A93 +:106B40004A4303921A465143029100A91022EBF7DF +:106B50007FFF04B05DF810FB10B40C181C1910195D +:106B600010BC70470A7822EA0000087070470A7863 +:106B700010430870704730B583B004460D460020BE +:106B8000ADF806000120009001AB224672210720DB +:106B9000EBF7D8FC002801D100203EBD01A9284612 +:106BA000FFF7E5FF8DF806409DF804008DF807001B +:106BB00002230DF1060272210720EBF769FC002881 +:106BC00001D100203EBD01203EBD30B583B004465A +:106BD0000D460020ADF806000120009001AB2246D2 +:106BE00072210720EBF7AEFC002801D100203EBD4A +:106BF00001A92846FFF7B6FF8DF806409DF804006E +:106C00008DF8070002230DF1060272210720EBF731 +:106C10003FFC002801D100203EBD01203EBD000008 +:106C2000DFF8D40800210170C17008214170817023 +:106C300000F00BBDDFF8C0080078032801D1012067 +:106C4000704700207047DFF8B0080078042801D1B1 +:106C5000012070470020704710B5DFF89C4821786C +:106C600000290FD10F219F20FFF7AFFF06219F20A2 +:106C7000FFF781FF012020700020E07020710120CB +:106C8000607210BD012950D1617A002952D1217959 +:106C900000291AD1E17802290AD06278520882428A +:106CA00006D30120E07000F021F9002862D010BD69 +:106CB00001295FD0A178490881425BD20220E070AF +:106CC00000F038F9002855D010BD01291ED1E17817 +:106CD00002290AD062785208824206D30120E0706D +:106CE00000F092F900280CD010BD012909D0A1783C +:106CF0004908814205D20220E07000F0A9F900287D +:106D00006BD1E078012859D000202071022020703A +:106D10000020E0700F219F20FFF757FF09219F20DF +:106D2000FFF729FF0120607210BD022955D1617A59 +:106D3000002902D00020607210BD217900291ED1E7 +:106D4000E17802290AD062785208824206D30120F3 +:106D5000E07000F012F900280CD010BD012909D014 +:106D6000A1784908814205D20220E07000F029F99B +:106D7000002832D10020E0700120207110BD0129CF +:106D800021D1E17802290AD062785208824206D3E2 +:106D90000120E07000F07FF900280CD010BD01291F +:106DA00009D0A1784908814205D20220E07000F0A4 +:106DB00096F9002811D1E078012802D10020E07076 +:106DC00010BD002020710F219F20FFF7FEFE032041 +:106DD00020700020E0700120607210BD38B50020E6 +:106DE000ADF80000DFF814472078FFF744FE9D213E +:106DF0008DF8001000ADFFF734FE6870022300AA82 +:106E000072210720EBF744FB00280ED06078FFF7D3 +:106E100032FE9E218DF80010FFF723FE68700223DA +:106E200000AA72210720EBF733FB31BD3FB581B0DB +:106E3000DFF8C4462078032856D101A80FC8FFF711 +:106E400021FE054601A80FC8FFF72CFE2179002975 +:106E500020D1E17802290BD06278AA4208DB012018 +:106E6000E07001A80FC800F05DF900280DD03BE0EC +:106E700001290AD0A178814207DA0220E07001A836 +:106E80000FC800F0CCF900282ED10020E0700120BE +:106E9000207129E0012923D1E17802290BD0627801 +:106EA000AA4208DB0120E07001A80FC800F02FFA09 +:106EB00000280DD018E001290AD0A178814207DA14 +:106EC0000220E07001A80FC800F09DFA00280BD145 +:106ED00000202071E078012802D10020E07003E05A +:106EE000042020700020E07005B030BD10B582B0E5 +:106EF0000020ADF80000DFF804462078FFF7BBFD66 +:106F000010F17B0F01DA002016BD9D218DF80010D5 +:106F1000001FFFF7A6FD8DF801002070022300AAD4 +:106F200072210720EBF7B4FA002801D1002016BD2A +:106F3000012016BD10B582B00020ADF80000DFF8CA +:106F4000BC452078FFF797FD7C2801DB002016BDAB +:106F50009D218DF80010001DFFF783FD8DF80100C5 +:106F60002070022300AA72210720EBF791FA002873 +:106F700001D1002016BD012016BD10B582B0002041 +:106F8000ADF80000DFF874456078FFF774FD10F18C +:106F90007B0F01DA002016BD9E218DF80010001F26 +:106FA000FFF75FFD8DF801006070022300AA7221D7 +:106FB0000720EBF76DFA002801D1002016BD012053 +:106FC00016BD10B582B00020ADF80000DFF82C45EA +:106FD0006078FFF750FD7C2801DB002016BD9E2164 +:106FE0008DF80010001DFFF73CFD8DF8010060706A +:106FF000022300AA72210720EBF74AFA002801D1E8 +:10700000002016BD012016BD10B582B00020ADF8DD +:107010000000DFF8E8442078FFF72DFD10F17F0F26 +:1070200001D1002016BD9D218DF80010401EFFF7F4 +:1070300018FD8DF801002070022300AA722107209C +:10704000EBF726FA002801D1002016BD012016BD5D +:1070500010B582B00020ADF80000DFF8A044207821 +:10706000FFF709FD7F2801D1002016BD9D218DF875 +:107070000010401CFFF7F5FC8DF801002070022382 +:1070800000AA72210720EBF703FA002801D10020A3 +:1070900016BD012016BD10B582B00020ADF800006D +:1070A000DFF858446078FFF7E6FC10F17F0F01D15C +:1070B000002016BD9E218DF80010401EFFF7D1FC68 +:1070C0008DF801006070022300AA72210720EBF7FF +:1070D000DFF9002801D1002016BD012016BD10B532 +:1070E00082B00020ADF80000DFF810446078FFF7B0 +:1070F000C2FC7F2801D1002016BD9E218DF8001012 +:10710000401CFFF7AEFC8DF801006070022300AA5E +:1071100072210720EBF7BCF9002801D1002016BD31 +:10712000012016BD3FB581B000252846ADF800000E +:10713000DFF8C44301986178884217DA6079FFF775 +:107140009AFC10F17A0F11DBA4218DF80010001FBA +:10715000FFF787FC00A948706071022300AA722122 +:107160000720EBF795F9002853D0012502986178A4 +:10717000884217DAA079FFF77EFC10F17A0F11DB55 +:10718000A5218DF80010001FFFF76BFC00A94870C7 +:10719000A071022300AA72210720EBF779F90028D9 +:1071A00037D0012503986178884217DAE079FFF734 +:1071B00062FC10F17A0F11DBA7218DF80010001F7F +:1071C000FFF74FFC00A94870E071022300AA72216A +:1071D0000720EBF75DF900281BD0012504986178A2 +:1071E000884219DA207AFFF746FC10F17A0F13DB98 +:1071F000A9218DF80010001FFFF733FC00A948708B +:107200002072022300AA72210720EBF741F900281F +:1072100001D1002001E00125284605B030BD3FB571 +:1072200081B000252846ADF80000B34CA078019944 +:10723000884216DA6079FFF71EFC7B2811DAA42158 +:107240008DF80010001DFFF70CFC00A9487060715C +:10725000022300AA72210720EBF71AF9002850D068 +:107260000125A0780299884216DAA079FFF703FC7D +:107270007B2811DAA5218DF80010001DFFF7F1FB26 +:1072800000A94870A071022300AA72210720EBF721 +:10729000FFF8002835D00125A0780399884216DA36 +:1072A000E079FFF7E8FB7B2811DAA7218DF80010C1 +:1072B000001DFFF7D6FB00A94870E071022300AA69 +:1072C00072210720EBF7E4F800281AD00125A078F6 +:1072D0000499884218DA207AFFF7CDFB7B2813DA6D +:1072E000A9218DF80010001DFFF7BBFB00A9487015 +:1072F0002072022300AA72210720EBF7C9F80028A8 +:1073000001D1002001E00125284605B030BD3FB580 +:1073100081B000252846ADF80000774C01986178CF +:10732000884217DA6079FFF7A6FB10F17F0F11D0C2 +:10733000A4218DF80010401EFFF793FB00A94870B0 +:107340006071022300AA72210720EBF7A1F8002840 +:1073500053D0012502986178884217DAA079FFF7A7 +:107360008AFB10F17F0F11D0A5218DF80010401E6F +:10737000FFF777FB00A94870A071022300AA7221D1 +:107380000720EBF785F8002837D0012503986178AE +:10739000884217DAE079FFF76EFB10F17F0F11D00A +:1073A000A7218DF80010401EFFF75BFB00A9487075 +:1073B000E071022300AA72210720EBF769F8002888 +:1073C0001BD0012504986178884219DA207AFFF7EA +:1073D00052FB10F17F0F13D0A9218DF80010401E31 +:1073E000FFF73FFB00A948702072022300AA722118 +:1073F0000720EBF74DF8002801D1002001E001251E +:10740000284605B030BD3FB581B000252846ADF80F +:107410000000394CA0780199884216DA6079FFF7AC +:107420002AFB7F2811D0A4218DF80010401CFFF703 +:1074300018FB00A948706071022300AA722107207E +:10744000EBF726F8002850D00125A0780299884251 +:1074500016DAA079FFF70FFB7F2811D0A5218DF850 +:107460000010401CFFF7FDFA00A94870A07102232C +:1074700000AA72210720EBF70BF8002835D0012570 +:10748000A0780399884216DAE079FFF7F4FA7F28AA +:1074900011D0A7218DF80010401CFFF7E2FA00A9D7 +:1074A0004870E071022300AA72210720EAF7F0FF7A +:1074B00000281AD00125A0780499884218DA207A89 +:1074C000FFF7D9FA7F2813D0A9218DF80010401CAE +:1074D000FFF7C7FA00A948702072022300AA7221A0 +:1074E0000720EAF7D5FF002801D1002001E001259F +:1074F000284605B030BD00006A280120FD28012083 +:10750000DFF860070021C161DFF85C1700220A770D +:1075100001224A7700221046086381F82000C877CC +:1075200070470FB410B5DFF83C479DF81D00411EB1 +:107530008941C90F6177201D03A91022EBF788FA52 +:10754000DFF824079DF81E104177002180F82010F5 +:1075500001779DF80810002907D1217F4A1C227766 +:1075600006290EDB012101770BE000202077607FE8 +:1075700000289DF8080002D100F031F901E000F088 +:107580009DF810BC5DF814FB0FB438B5DFF8D44695 +:107590009DF82400411E8941C90FE177201D05A9EE +:1075A0001022EBF755FADFF8C0569DF826006877F1 +:1075B00005A80FC8FFF776FA60616861002085F8BA +:1075C00020002877E07F002804D105A80FC800F02C +:1075D000AEF909E0A07F002805A80FC802D000F08E +:1075E000DFF901E000F018FA31BC5DF814FBF8B5E2 +:1075F0000446DFF8785605F11C06DFF86806C17FFF +:107600004A1E9241D20F7275407F411E8941C90FB7 +:10761000B175DFF85476387F307597F820002877F9 +:10762000284639461C22EBF713FAB87F707005F133 +:107630002000DFF83C161022EBF70AFA2046294614 +:107640003422BDE8F840EBF703BA10B582B0002051 +:10765000ADF80000A0208DF8000000AC00206070A4 +:10766000DFF80C0600210174022300AA7221072012 +:10767000EAF70EFF002801D1002016BDA1208DF8E9 +:107680000000FF206070022300AA72210720EAF7A1 +:10769000FFFE002801D1002016BD8021A320FFF7A6 +:1076A0006AFA3C21A220FFF766FADFF8B80500214C +:1076B0008177DFF8B4050163012016BD10B50446DB +:1076C000DFF8A005807F0028204602D0BDE81040EA +:1076D0000BE000F03AF8DFF89005C07F002803D1F6 +:1076E0002046BDE8104054E010BD38B5DFF87845BD +:1076F000E07F012828D1DFF86C55201D291D1022BC +:10770000EBF7A6F904202070A069C7280FD1201D2F +:107710000FC8FFF7C7F9A17F814208DA012085F879 +:10772000200001460FF25C50EAF73CFE07E0002023 +:1077300085F8200001460FF26450EAF733FE01207D +:1077400084F820000020E07731BD10B5DFF818453F +:10775000E17F012909D100F0CBF8002802D00420F4 +:10776000E07710BD0020E06210BD002909D100F0D3 +:10777000B6F8002802D00220E07710BD0020E062B9 +:1077800010BDE06A411CE1620B2801DB0020E062D1 +:1077900010BD10B5044600F055F8204600F05DF825 +:1077A000204600F065F8204600F06DF8DFF8B404DC +:1077B000816A01EB8102D100642291FBF2F1C26B7C +:1077C000836B9A4204DA006B052290FBF2F003E02F +:1077D000C06A142290FBF2F0BDE8104090E038B58A +:1077E000044600F014F8204600F01AF8DFF874544C +:1077F000A86A00EB8001C800642190FBF1F104EB62 +:107800008400400000F07CF80120687731BDDFF88B +:1078100054144FF4FA624A62C8228A62FFF752B9DE +:10782000DFF84014C82212FB00F2CA62322212FBB7 +:1078300000F20A6300EB800252004A638863C86367 +:107840000864704710B50146DFF8184404F13402AB +:107850000A2000F025F8206410BD10B50146DFF8BD +:10786000044404F13002322000F01AF8E06310BD45 +:1078700010B50146DFF8EC4304F12C02C82000F0FB +:107880000FF8A06310BD10B5FFF723F9642101FBC9 +:1078900000F4002C02D0204600F013F8204610BD62 +:1078A00010B400EBD0735B101468091900FB0131B0 +:1078B000441C91FBF4F11160591891FBF0F010BCDD +:1078C000704710B50146C82900DAC821DFF8944393 +:1078D00004F124020A20FFF7E3FFA06210BDDFF8E5 +:1078E0008813496A814201DA0120704700207047FD +:1078F000DD49896A884201DA01207047002070471B +:1079000040F2DD52904201DB40F2DC500A2901DAFC +:107910000A2102E0652900DB64210818401D0A21C4 +:1079200090FBF1F0C0B2D04948628862704780B5E0 +:1079300000F004F8CB480121C17701BD0FB587B035 +:10794000C820019007A883B069460CC80CC10CC8B8 +:107950000CC10EBC02A8FFF7E9F8C64802A9102224 +:10796000EBF776F80A20019007A883B069460CC8A7 +:107970000CC10CC80CC10EBC02A8FFF7D7F8BE485A +:1079800002A91022EBF764F8BC4807A91022EBF714 +:107990005FF8BB4807A91022EBF75AF80BB000BDFF +:1079A00000BF1FB5B04CE07F002802D001280ED0E8 +:1079B0001FBD0020A061201D00A91022EBF748F890 +:1079C00002202070012084F82000E0771FBD201DD8 +:1079D00000A91022EBF73CF801202070A069401CA0 +:1079E000A061C72807D10121AB20FFF7EEF80021E5 +:1079F000AB20FFF7C0F8A069C82809DB0020A06110 +:107A00000121AB20FFF7E1F80021AB20FFF7B3F82D +:107A1000012084F820001FBD1FB5934CE07F002893 +:107A200003D0012084F8200003E000A80FC800F074 +:107A300037F800A80FC800F00AF8607F002805D0CA +:107A4000206B292802DBBDE81F40C9E01FBD1FB520 +:107A5000854CE07F012804D002280DD0042817D0DF +:107A60001FBD201D00A91022EAF7F2FF012020709F +:107A7000A069401CA0611FBD0020A061201D00A9BD +:107A80001022EAF7E5FF022020700120E0771FBDF9 +:107A9000042020700020E077012084F820001FBD22 +:107AA000FFB585B07048016B491C016305A883B020 +:107AB00069460CC80CC10CC80CC10EBC01A800F072 +:107AC00025F805A883B069460CC80CC10CC80CC1C8 +:107AD0000EBC01A800F03BF8694C94E80F00FFF7DA +:107AE0003BF80546624E654F97E80F00FFF734F804 +:107AF0008542304604DA21461022EAF7A9FF03E066 +:107B000039461022EAF7A4FF09B0F0BD0EB430B533 +:107B100088B00446574802900BA882B069460CC84A +:107B20000CC10CC80CC10CBCC82103A800F030F873 +:107B3000524D284603A91022EAF78AFF204629461B +:107B40001022EAF785FF08B030BC5DF810FB0EB4D8 +:107B500030B588B00446484802900BA882B0694608 +:107B60000CC80CC10CC80CC10CBC0A2103A800F045 +:107B70000FF8434D284603A91022EAF769FF204673 +:107B800029461022EAF764FF08B030BC5DF810FB0C +:107B90000CB47FB504460D460C9E32460899284623 +:107BA000FFF77EFE0090321D09992846FFF778FE08 +:107BB000019006F10C020B992846FFF771FE039025 +:107BC00006F108020A992846FFF76AFE029020464D +:107BD00000A91022EAF73CFF04B070BC5DF80CFB72 +:107BE00070B582B00020ADF80000214C94E80F0081 +:107BF000FEF758FF401D1C4DFF2802DDFF20A8772F +:107C000000E0A877A0208DF8000000AE686A7070D0 +:107C100070782074022300AA72210720EAF738FC4A +:107C2000002801D1002076BDA1208DF80000A87F9A +:107C30007070022300AA72210720EAF729FC0028AD +:107C400001D1002076BD8021A320FEF7BEFF3C219C +:107C5000A220FEF7BAFF03480121817700202863A4 +:107C6000084676BD6422012098240120CC240120FE +:107C7000EC28012010290120302901202029012091 +:107C800040290120233E445F6C6F6E675F67657318 +:107C900074757265203A202564000000233E525F0F +:107CA0006C6F6E675F67657374757265203A202527 +:107CB0006400000038B50446F2F7CEFB90F984501A +:107CC000002C02D14FF0FF3032BD092200212046A6 +:107CD000EAF7C4FA6D1E062D36D8DFE805F0040C6D +:107CE000131A21282F00012060704FF0FF30E07040 +:107CF000012020722CE04FF0FF3020702071012015 +:107D0000207225E04FF0FF3060700120E07020729B +:107D10001EE04FF0FF30207001212171207217E02A +:107D200001206070E0704FF0FF30207210E0012001 +:107D300020704FF0FF302071207209E04FF0FF30CB +:107D40006070E070207203E00120207020712072CA +:107D5000002032BD0FB42DE9FE4300A80FF24841C8 +:107D60001CC91CC000A805F091FD06469DF82970AD +:107D7000DFF8C80307700069D0F85405C117052261 +:107D80000023F1F7B7F90522A2FB004502FB0155DC +:107D9000384600F040F8DFF8A803A0FB048900FB98 +:107DA00005994046494605F0CBFC4046494605F05A +:107DB000D8FC4FF47A01304605F06AFD4FF480316B +:107DC000304605F067FD05F04DFD05F050FD05F06E +:107DD00053FD05F056FD00A8FFF76CFF00A806F064 +:107DE00032F9002804D001460FF2C830EAF7DAFA77 +:107DF000214689B2012006F06DF90120BDE8FE039D +:107E00005DF814FB80B500F026F8C821002006F0CC +:107E100061F9012002BD80B5C00710D522220021E2 +:107E20000846EFF71FFF222201210020EFF71AFF7B +:107E3000222202210020BDE80840EFF713BF2222D2 +:107E400000210846EFF70EFF222201210020BDE8A5 +:107E50000840EFF707BF80B5222200210120EFF78D +:107E600001FF222201210846EFF7FCFE2222022117 +:107E70000120BDE80840EFF7F5BE00002DE9F0470E +:107E8000A4B000200146CDE90A0120A80A460B460D +:107E90000EC01CA81021ECF76BFC18A81021ECF701 +:107EA00067FC13A81421ECF763FC08A800210A461C +:107EB00006C006A806C00FA81021ECF759FC002048 +:107EC0000590ADF80E008DF80C0006460CA8314662 +:107ED0000A460B460EC008468DF80D00F2F7BCFAB4 +:107EE0000490F4F7D9FB0746DFF850A2DAF8100047 +:107EF000D0F85405C11705223346F1F7FBF80522E7 +:107F0000A2FB004502FB015503A801900DF10E00F4 +:107F1000009005AB0FAA06A908A805F09CFF002851 +:107F200042D1DAE90201864AA2FB048902FB0599E3 +:107F300010EB080041EB0901CAE902019AF80020A0 +:107F4000D20727D54FF0000816E007EB4802B2F938 +:107F5000062000EE102AB8EEC00ADFED760A20EE09 +:107F6000200ADFED750A20EE200A20AA02EB880223 +:107F700082ED000A08F10108B8F1030FE5DB7A6928 +:107F80000292CDE900010FAB20AA06A908A805F0CE +:107F9000F3FB08E000220292CDE900010FAB06A935 +:107FA00008A805F0E9FB761CF6B230469DF80C10E7 +:107FB000002901D00528A7DB042803DB0FF20020ED +:107FC000EAF7F0F99AF80000C00743D50AA91CA8FF +:107FD00005F037FC4FF0000811E01CA850F828000D +:107FE000F0F73CF802460B4600205649EAF73CFE03 +:107FF000EBF764F918A941F8280008F10108B8F175 +:10800000040FEADB102218A913A8ECF773FC7869B7 +:108010008DF85C004C48006C00F10C04627D13A9E3 +:10802000E368C0681818ECF765FC0120A0740AAA80 +:108030000DF10D010CA805F010FC0C220CA9049800 +:108040003C30ECF757FC97ED050AB8EEC00A0498EF +:1080500080ED120A9AF80000800730D50AA91CA802 +:1080600005F0F5FB4FF0000811E01CA850F82800BF +:10807000EFF7F4FF02460B4600203249EAF7F4FD21 +:10808000EBF71CF918A941F8280008F10108B8F12C +:10809000040FEADB102218A913A8ECF72BFC002030 +:1080A0008DF85C002848C06B00F10C04627D13A9B8 +:1080B000E368C0681818ECF71DFC0120A0740120CB +:1080C00024B0BDE8F08780B5EFF7CAFD1B49086111 +:1080D0001E49C0F8601500F260501D4941601D49FD +:1080E00081600FF21501C1600FF28501016101206D +:1080F00005F0ADFA012002BD1048006990F8510565 +:10810000002801D10020704705E080B5002000F074 +:1081100006F8012002BD104890F9000070470E4992 +:10812000087070470549087001460FF29C00EAF795 +:1081300039B900008FC2753D00008047B02801208A +:1081400040420F0080842E4108400020557D0108E8 +:10815000057E01087D7E0108EC2B012022220221F0 +:108160000020EFF77FBD222202210120EFF77ABD28 +:1081700018B440F221120B7812FB030301241C7087 +:108180000B7812FB03035C700B7812FB03032224B1 +:108190009C700B7812FB03000022C2700878401C10 +:1081A000087011BCB1E700000100000001000000F0 +:1081B00001000000444D5020494628256429000054 +:1081C000444D502052464600525620666C6167204E +:1081D0002564000006F0AABD80B5F2F73DF9D0F89D +:1081E0008000F7F7B0FF0348007802BD014908702E +:1081F00070470000FF2B012030B585B004000D0052 +:10820000029401940C4880680390ECF75CFB2068B2 +:10821000009000A820600098002802D0009800A9D3 +:1082200041600548806800A9816003488068057442 +:10823000EDF779FA05B030BDA079002038B5027E9F +:10824000C3684469E3180469A34201D304691B1B92 +:10825000534384680D781D55491C5B1C521E002A2F +:10826000F7D1C168491CC160012902D103F012FF96 +:108270000DE025484078F021084202D09920ECF723 +:10828000B5FA21484078002801D1ECF716FB31BD42 +:1082900010B50400207E62694243A368D35C0B7072 +:1082A000521C491C401E0028F7D16069401C6061C7 +:1082B0002169884201D300206061E068411EE160CD +:1082C0002169884211D110484078F021084202D03B +:1082D0009920ECF78BFA0C484078002801D1ECF794 +:1082E000ECFA200003F0D6FE0DE007484078F021BC +:1082F000084202D09920ECF779FA03484078002828 +:1083000001D1ECF7DAFA10BDA079002000BF10B45B +:108310004148002101800846404C0DE001EB8101FD +:1083200000EB80031B19C91800230B71521C52B2B9 +:1083300011460129F2DB401C142801DA0022F6E77D +:1083400010BC704700EB80003449405E704700EB82 +:10835000800032494018B0F90200704710B54FF064 +:10836000FF3401460C2903D01C2903D1002405E069 +:10837000012403E00FF2AC00EAF714F8204610BD28 +:1083800038B504460125FFF7E9FF20460C2804D044 +:108390001C2805D100F038F808E0FFF7B8FF05E029 +:1083A00021460FF29000E9F7FDFF0025284632BD77 +:1083B00080B501460FF28C00E9F7F4FF4FF0FF3073 +:1083C00002BDF3B581B0144C25882E46701C1528CB +:1083D00001DB0020FEBD00270DE007EB870106EB67 +:1083E00086000E4A8018081801AA89180522EAF7A3 +:1083F0001FFB7F1C7FB2012FEFDB681C2080012058 +:10840000FEBD0548008870470548002141800121D4 +:108410000170084670470000DA2B0120241B012060 +:10842000E47800204558205044524D4D20433120DF +:10843000256400004558205044524D4D20433320C0 +:10844000256400004558205044524D4D20433220B1 +:1084500025640000D2B2203A22BF00FA02F10020C7 +:1084600070475242D041D2F1200291404140D04069 +:1084700090404140704700000FB480B506F060FCAA +:10848000D2480521417600210176818302A9182274 +:10849000EAF7DEFA092200210846EFF7E3FB02289B +:1084A00001D1022000E0012002BC5DF814FB48E18C +:1084B00010B5C64C94F9190005280AD100F0E3F86C +:1084C000002822D00420607606F03AFCBDE8104077 +:1084D000F8E0042819D100F0B7F8002808D00320EC +:1084E00020760520607606F02BFCBDE8104028E1E0 +:1084F00000F051F9002808D002202076052060768F +:1085000006F01EFCBDE810401BE1012010BD80B547 +:10851000EFF7A6FBAD490862AD49C0F8781100F548 +:10852000BC70AC494160AC4981600FF21101C1607F +:108530000FF295010161012002BD00000020A34956 +:108540000246CA760A6A92F86921002A0FD091F988 +:108550001820002A02D00220C876012091F91C20A0 +:10856000012A04D1C87E40F00400C876012070477B +:10857000964800210176C17601770120704710B539 +:108580008CB0044600A808F0C3FA0198A04204D3B6 +:10859000001BC0B200EE100A04E08038001BC0B21D +:1085A00000EE100AB8EE400ADDED070A20EE200AC0 +:1085B00010EE100AEFF752FD41EC100B0CB010BD9D +:1085C000824801210177704778B4804A92F91B30C4 +:1085D0009C0717D540F221140D7814FB05050126E0 +:1085E0002E700D7814FB05056E700D7814FB0505D3 +:1085F0000926AE700D7814FB0504157EE5700C7825 +:10860000641C0C705B071DD540F221140B7814FB21 +:10861000030301251D700B7814FB030303255D7014 +:108620000B7814FB030309259D700B7814FB0303DF +:108630000125DD700B7814FB0300527E027108786F +:10864000401C087071BC93E730B58DB00024204603 +:108650008DF8000001A8EFF764FB4FF47A705B4DD2 +:1086600000ABE98800FB01F2A98841436D886843AB +:1086700001AD95EC030A06F0A5FB022800D1012408 +:1086800020460DB030BD30B58DB0002420468DF8A9 +:10869000000001A8EFF745FB4FF47A704B4D00AB9B +:1086A000E98800FB01F2A98841436D88684301AD68 +:1086B00095EC030A06F086FB012800D10124204630 +:1086C0000DB030BD30B59BB001240020ADF82200C4 +:1086D00001900A208DF8080000208DF809008DF81F +:1086E0000A003A4D95F91D00002827D1AA208DF8DF +:1086F00026003C208DF8270020468DF82800002019 +:108700008DF80000032001900DF1090009A918223D +:10871000EAF78EF90A208DF808000020ADF8220053 +:1087200000A8EFF773FB002801D1022406E00FA890 +:1087300008F0EEF91098A8762046687720461BB01E +:1087400030BD30B589B00124204D95F91D000128B8 +:108750001ED10020ADF8220001900A208DF80800FB +:1087600000208DF809008DF80A0020468DF80000E1 +:10877000032001900A208DF808000020ADF82200A7 +:1087800000A8EFF743FB002800D1032400206877FE +:10879000204609B030BD38B52DED028B00240B4DBD +:1087A000A87EFFF7ECFEB0EE408AF0EE608A287AF1 +:1087B000EAF75EFB02460B4651EC180BFBF7F8FF9D +:1087C00000D801242046BDEC028B32BDCC790020BC +:1087D00079840108AF840108B184010870B5FBF702 +:1087E00063FC0446FAF71DFD0546D74EFBF73CFC3B +:1087F000002801D0012018E096F90000A04205D21F +:108800000FF2C430E9F7CEFD01200EE0EDB2002DED +:108810000AD0FBF754FCFBF747FC04460FF2B430D8 +:10882000E9F7C0FD012000E00020716891F889148B +:10883000002900D10020347070BD0FB410B58AB08B +:10884000C14C002020700FF29830E9F7ABFD606852 +:1088500090F88814002944D190F88904002840D168 +:1088600000208DF800001B2001900DF109000CA9DB +:108870001822EAF7DDF80A208DF8080000A8EFF7C3 +:10888000C5FA002805D10FF26430E9F78BFD02200C +:1088900028E002208DF832004FF49660ADF83500E4 +:1088A00000208DF833008DF834008DF800001A2078 +:1088B00001900DF109000CA91822EAF7B9F80A2075 +:1088C0008DF8080000A8EFF7A1FA002805D10FF2F3 +:1088D0002C30E9F767FD022004E04FF49660FBF7C7 +:1088E000ECFB01200AB010BC5DF814FB00B589B0A8 +:1088F0000FF21830E9F756FD01208DF800001B201B +:1089000001900A208DF8080000A8EFF77FFA0028F0 +:1089100001D1032014E001208DF800001A200190FD +:108920000A208DF8080002208DF80B00002003902B +:1089300000A8EFF76BFA002801D1032000E0012026 +:1089400009B000BD2DE9F0472DED028B92B0044631 +:108950000D46FBF789FB40F22116297816FB0141F1 +:1089600001220A70297816FB0141002840F09E8000 +:1089700010464870287816FB00401D218170287829 +:1089800016FB004000214171FBF79BFB002805D03E +:10899000FBF78AFB81465FFA89F901E04FF0000995 +:1089A000287816FB004080F807904FF0000868E038 +:1089B000414600A8FBF77CFB1B2010FB08F728783A +:1089C00016FB004038189DF829104FF461620DF134 +:1089D00029035B78C3EB031C4FEA8C0312FB0131C4 +:1089E0000DF12902927851FA82F14FF47A72BDF9B1 +:1089F0002C3002FB0131C0F81B109FED518B287801 +:108A000016FB004007EB000ADDE9002351EC180BD0 +:108A1000EAF72AF9EAF768FCCAF80B00287816FB8F +:108A2000004007EB000ADDE9022351EC180BEAF7DE +:108A30001BF9EAF759FCCAF80F00287816FB00402A +:108A400007EB000A02A8D0E9022300204349EAF715 +:108A50000BF9EAF749FCCAF81300287816FB004026 +:108A600038180BA94969C0F81F10287816FB004078 +:108A700038180BA9498BA0F8191008F101085FFA02 +:108A800088F8C84594DBFBF711FB287816FB0047F4 +:108A9000FAF7E8FBA7F81B01287816FB0044FAF761 +:108AA000D3FBC4F81D01FAF7C9FB12E0052048709A +:108AB000287816FB00401D218170287816FB0040A5 +:108AC00011464171287816FB00400F218171FBF798 +:108AD000F2FA2878401C287012B0BDEC028BBDE879 +:108AE000F08710B584B000A8FAF71FFD1C4C204693 +:108AF00000A90B22E9F79CFF61782078FBF7E6FAE2 +:108B0000012004B010BD80B50FF20810E9F74AFC4F +:108B10000FF20C10E9F746FCEFF7A2F80A4948609B +:108B20000A49C0F8981400F298400949416009497F +:108B300081600949C1600B490161012002BD00004B +:108B40000000000080842E41182B01203B88010882 +:108B5000ED880108E38A0108DD87010800408F40A5 +:108B6000302A01204589010810B5044621460FF23C +:108B7000BC00E9F717FC2046BDE81040FBF76CBAD3 +:108B800010B5044621460FF2B000E9F70BFC204671 +:108B9000BDE81040FBF762BA10B5044621460FF25B +:108BA000A400E9F7FFFB2046BDE81040FBF75ABAE6 +:108BB00010B5044621460FF29C00E9F7F3FB20466E +:108BC000BDE81040FBF74CBA4C5420436D644C5444 +:108BD000530000004C5420436D6441544400000095 +:108BE0004C542D5331343031313600004C54204F29 +:108BF00070656E206661696C000000004C54204175 +:108C000054204F70656E206661696C004C5420538F +:108C1000544F50004C5420496E694C54530000008E +:108C20004C54204931343031313600004C542053FB +:108C300065745754202564004C5420536574535474 +:108C4000202564004C542053657453415220256400 +:108C5000000000004C5420536574535220256400DA +:108C600080B50FF2E810E9F79DFB734800214180C1 +:108C700001BD0FB470B5704C002020709DF81250EB +:108C8000BDF81360324629460FF2CC10E9F78AFB93 +:108C9000262200210846EEF7E5FF022805D10FF253 +:108CA000D410E9F77FFB02200FE0606890F8F01520 +:108CB000002909D190F8F105002805D1FFF7D0FF70 +:108CC0003146284607F0F4FF012070BC5DF814FB24 +:108CD00080B50FF2B010E9F765FB5748002101702D +:108CE00008F01CF8012002BD10B58EB000A80021CC +:108CF0000A460B460EC0EFF714F80398009000A840 +:108D000004994160059981604B4C94F9001089B237 +:108D100007F0E0FF00212170042804D006280CD0C1 +:108D2000072814D01CE00FF26810E9F73BFB042081 +:108D30006080012000F044F812E00FF25C10E9F7C7 +:108D400031FB06206080012000F03AF808E00FF2C5 +:108D50005410E9F727FB07206080012000F030F86D +:108D600001200EB010BD80B50FF24810E9F71AFBD4 +:108D7000EEF776FF3049486000224A802F49C0F85C +:108D8000001600F200602E4941602E4981600FF20A +:108D90001101C1600FF241010161012002BD00001B +:108DA0002548406890F8F015002905D190F8F105A4 +:108DB000002801D100207047234890F90000704737 +:108DC00021490870704780B51B4800214180084642 +:108DD000FFF7F6FF012002BD70B504460D46164EA2 +:108DE00071880FF2D800E9F7DDFA40F221102978F6 +:108DF00010FB014101220A70297810FB01414A70E1 +:108E0000297810FB014126228A70297810FB014045 +:108E10007188A0F803102878401C2870BDE87040C5 +:108E2000D1E710B5044621460FF2A000E9F7BAFADF +:108E30000148047010BD0000002B0120738C010854 +:108E4000D18C0108E98C0108E12B0120234153203A +:108E5000494E49540000000023415320534644200A +:108E6000535452203A2025642C204455203A202582 +:108E700064000000234153204641494C20414343B4 +:108E8000000000002341532053544F5000000000C5 +:108E900023415320445400002341532041535F4E4B +:108EA0004D5300002341532041535F43414E4345FE +:108EB0004C000000234153204D4900002341532022 +:108EC00041504D5347203A20256400002341532050 +:108ED000555352414354203A202564000FB400B545 +:108EE00089B0DFF8980701210177406A90F8601493 +:108EF00000293AD190F86104002836D100208DF87D +:108F00000000032001900DF109000AA91822E9F7D9 +:108F10008FFD0A208DF8080000A8EEF777FF0028E3 +:108F200021D000208DF82A00ADF82D008DF82B00FF +:108F30008DF82C008DF800001A2001900DF1090029 +:108F40000AA91822E9F774FD0A208DF8080000A884 +:108F5000EEF75CFF002806D01C2200210846EEF741 +:108F600081FE022801D1022000E0012009B05DF855 +:108F700014FB00B589B01C2200210120EEF772FE1F +:108F8000022801D1022022E001208DF800000320F8 +:108F900001900A208DF8080000A8EEF737FF00289E +:108FA00001D1032013E001208DF800001A20019068 +:108FB0000A208DF8080000208DF80B00039000A80F +:108FC000EEF724FF002801D1032000E0012009B0C2 +:108FD00000BD70B586B0DFF8A846206800280DD126 +:108FE000DFF8A0663068002808D1204600F04BFE6C +:108FF000304621465822E9F72BFD02E0204600F0DA +:1090000042FEDFF8846606F10C000ECE0EC00C3E68 +:1090100002A8FAF78AFA304602A90B22E9F708FDFE +:10902000DFF85856707868763178307B814204D00A +:1090300029760FF26C60E9F7B5F900A8E9F74FFC63 +:109040009DF8000028739DF8010068739DF80200E8 +:10905000A873BDF80300A5F80F00DFF82866E86CD8 +:1090600021683268891A10FA81F0E86400F02AF960 +:10907000304621465822E9F7EBFC012006B070BDCE +:1090800010B5DFF8F845EEF7EBFD60620020607583 +:109090000120A0750320E0754FF4FA70A062DFF89C +:1090A000EC05E0624EF6602020630FF20C60E9F7F9 +:1090B00079F900202077E06320646064A064208355 +:1090C000E076A06358220146DFF8B805E9F7C6F854 +:1090D00058220021DFF8A805E9F7C0F8E9F7E1F820 +:1090E00020620020A0760120E0770020A077606A4F +:1090F000DFF89C15C0F8701400F27040DFF894158A +:109100004160DFF8941581600FF20D01C1600FF22C +:1091100041010161012010BD80B5DFF86005416AA1 +:1091200091F86114002901D1002002BD90F91400CA +:10913000012801D1012001E000F09FF840B202BDFA +:10914000DFF83805002141630175012070470000F8 +:1091500070B5DFF8283593F91420012A2BD15A6B0A +:10916000002A20D040F221140D7814FB05050126B9 +:109170002E700D7814FB05056E700D7814FB050537 +:109180001C26AE700D7814FB05050126EE700D78D7 +:1091900014FB0505AA800D7814FB0500C0F8063005 +:1091A0000878401C087011460FF22450E9F7FAF8CD +:1091B000BDE87040C4E7DA7F012A23D140F22114D0 +:1091C0000A7814FB0202012515700A7814FB0202CA +:1091D00055700A7814FB02021C2595700A7814FB5E +:1091E00002020225D5705A7F0B7814FB03008272AD +:1091F0000878401C087011460FF2EC40BDE8704042 +:10920000E9F7D0B870BD0146891E012903D9891E2E +:10921000012905D908E0DFF8641401224A7503E04A +:10922000DFF8581400224A7501460FF2D440E9F7DE +:10923000B9B8DFF8481400EB80028A6201460FF2E9 +:10924000D840E9F7AFB838B50446DFF8305441F2FA +:10925000883010FB04F0E862E9F70AFE0022DFF82C +:109260003C34E9F701FDEAF73FF8286321460FF2A5 +:10927000BC40BDE83440E9F795B838B50024DFF8C4 +:10928000FC53686A90F83814002903D190F8390427 +:10929000002813D00120E877FAF71AFF6877A97F32 +:1092A000002900D1A877A97F884209D00146012969 +:1092B00001D0022900D10124A87701E02046E877F7 +:1092C000204632BDF0B583B0002500A829460A46E5 +:1092D00006C0DFF8A843E06B10F1100F01D2143084 +:1092E000E063E07E002800F0C580022801D06BD347 +:1092F0000BE1217E042934D1607D002813D1606CFC +:1093000014306064E26A9042C0F0FF80E26B206B30 +:109310008242C0F0FA800125002060640FF22040F4 +:10932000E9F740F8F1E010466064206A827AA37E93 +:109330001A430FD1E26B206B824204D301250FF256 +:109340001840E9F72FF80FF22840E9F72BF8012031 +:10935000A076DAE0807A012840F0D7802846A0760F +:10936000D3E0022901D0032915D1206C14302064E8 +:1093700042F211729042C0F0C880E26B206B9042C2 +:1093800080F0C38001250020206403460FF2F430F2 +:10939000E9F708F8B9E0012940F0B780A06C00F1C6 +:1093A0001403A3644EF661208342C0F0AE80E26BEA +:1093B000206B904280F0A98001250020E0760FF21A +:1093C000E030E8F7EFFFA0E0217E022901D0032979 +:1093D0000FD1E36CA06A8342C0F09780E26B206BF0 +:1093E0008242C0F0928001250FF2D030E8F7DAFF18 +:1093F0008BE0042928D1606C14306064627E002AFE +:1094000013D142F211729042C0F07F80E26B206B68 +:1094100090427AD201250220E07600206064034663 +:109420000FF2B430E8F7BEFF6FE0E26B206B9042C2 +:109430006BD201250220E0760020606403460FF223 +:10944000B430E8F7AFFF60E001295ED1A06C00F115 +:109450001403A3644EF66120834256D3E26B206B63 +:10946000904252D201250020E0760FF2A430E8F7B6 +:1094700099FF4AE0217E022916D1206C1430206425 +:10948000626441F2893290423FD3206BE26B90429A +:109490003BD20120E07628462064012502460FF2E7 +:1094A0008C30E8F77FFF30E0042916D1606C14306F +:1094B0006064226441F28932904226D3206BE26BD1 +:1094C000904222D20220E0762846606401250246BE +:1094D0000FF27030E8F766FF17E0032915D1206C12 +:1094E00014302064626441F2893290420DD3206BC3 +:1094F000E26B904209D20120E076284620640125E3 +:1095000002460FF25830E8F74DFF207F012809D1BD +:109510000020207701252846207601460FF254309E +:10952000E8F740FF012D40F0A780257E042D36D1BD +:10953000A06B461CA663606B002809D1207B60707D +:10954000607BA070A07BE07000202071052060632C +:1095500004208DF8000000A8042141708170617D15 +:10956000012902D10121C17001E00021C170042153 +:1095700001712670676B052200A93819EBF7BAF95B +:10958000781D6063002E6DD0012020750020A0633F +:10959000E26B29460FF2F020E8F704FF62E0022DAB +:1095A00001D0032D2ED1A06B461CA663606B002852 +:1095B00009D1207B6070607BA070A07BE0700020F0 +:1095C00020710520606302208DF8000000A80221B0 +:1095D00041708170C17001712670676B052200A90E +:1095E0003819EBF787F9781D6063002E3AD0012017 +:1095F00020750020A063E26B29460FF2A820E8F74F +:10960000D1FE2FE0012D2DD1A06B461CA663606B0F +:10961000002809D1207B6070607BA070A07BE07087 +:10962000002020710520606301208DF8000000A853 +:10963000012141708170C17001712670676B052234 +:1096400000A93819EBF756F9781D6063002E09D090 +:10965000012020750020A063E26B29460FF25C20F8 +:10966000E8F7A0FE0020E06320646064A064E0648A +:109670000FF26420E8F796FEF7BD0000802101207C +:10968000841F01202C1F0120F427012020BF02008D +:10969000DD8E0108738F0108D38F01080000E03FC1 +:1096A0005B41504452204C545D205472616E7320D3 +:1096B0004D6F6465202564005B41504452204C543A +:1096C0005D20494E495420303231372D330000009F +:1096D0005B41504452204C545D2042756666657271 +:1096E00053697A653A2564005B41504452204C54DA +:1096F0005D2053746179496E666F3A2564000000FD +:109700005B41504452204C545D2067707320537469 +:1097100061202564000000004150445220536574CC +:109720005F5357554E2025640000000041504452BD +:10973000205365745F545755532025640000000082 +:109740005B41504452204C545D205245512D5631BE +:1097500020256420256400005B41504452204C5475 +:109760005D205245512D563220256420256400008D +:109770005B41504452204C545D2041505F4E4F5449 +:10978000534C50005B41504452204C545D20524594 +:10979000512D5633202564202564202564000000C7 +:1097A0005B41504452204C545D205245512D56345B +:1097B0002025642025642025640000005B4150447E +:1097C00052204C545D205245512D573120256420A4 +:1097D00025642025640000005B41504452204C5415 +:1097E0005D205245512D57322025642025642025C7 +:1097F000640000005B41504452204C545D205245AF +:10980000512D573320256420256420256400000055 +:109810005B41504452204C545D205245512D5734E9 +:109820002025642025642025640000005B4150440D +:1098300052204C545D205245512D53312025642037 +:10984000256400005B41504452204C545D20524539 +:10985000512D533220256420256400005B41504483 +:1098600052204C545D205245512D53332025642005 +:10987000256400005B41504452204C545D2041500F +:109880004453542C202564005B41504452204C54D6 +:109890005D2056656869636C653A202564202564FF +:1098A000000000005B41504452204C545D20576141 +:1098B0006C6B3A2025642025640000005B41504415 +:1098C00052204C545D2053746174696F6E617279DB +:1098D0003A202564202564005B41504452204C54BA +:1098E0005D20526573657400DFF8E40B417A00EB8C +:1098F000810282ED090ADFF8DC2B02EB8103F0EE36 +:10990000601AC3ED001A02EB810282ED101A827A0E +:10991000102A01DA521C8272491C4172C9B2102904 +:1099200001D10021417270472DE9F8432DED028BE2 +:109930000024DFF89C5BA87A022801DA20466AE05E +:109940002646DFF8909B01E00024761CA87A864228 +:109950005BDA687A002803D10F274FF00E0805E084 +:10996000471EB7F1010801D508F1100805EB870083 +:1099700090ED090A05EB8800D0ED090A30EE600A87 +:1099800010EE100AEEF76AFB21F00041EEF78EFBB5 +:1099900008EE100A09EB870090ED000A09EB880039 +:1099A000D0ED000A30EE600A10EE100AEEF756FB1A +:1099B00021F00041EEF77AFB08EE900A09EB8700F0 +:1099C00090ED100A09EB8800D0ED100A30EE600A25 +:1099D00010EE100AEEF742FB21F00041EEF766FBB5 +:1099E00000EE100ADFEDB00AB4EE608AF1EE10FA74 +:1099F00009DAF4EE608AF1EE10FA04DAB4EE600AE5 +:109A0000F1EE10FAA0DB641C9FE7E4B2042C01DB4A +:109A1000012000E00020BDEC028BBDE8F2832DE9BF +:109A2000F8432DED068B88B0B0EE408AF0EE608AE8 +:109A3000B0EE419AF0EE619A0646DFF89C7A87ED27 +:109A4000000AB0EE68AA87ED01AAF0EE49AAC7EDB8 +:109A500002AA4FF00A08DFF8845AB5F90E0010FB8D +:109A600008F0B5F91010A0EB0109314689B238466B +:109A700008F0CAF9DFF8584A201D07F0CAFC20791F +:109A800010FB08F0A17900EB01081FFA88F8B8F183 +:109A90002A0F12D10FFA89F9B9F1000F0DD5606EB6 +:109AA000002807D107F0D3F8012060660FF6982050 +:109AB000E8F778FC0120A06623E0606E012807D15A +:109AC00007F0D1F8002060660FF68820E8F76AFCFE +:109AD000A06EB8F1280F0CDB002804D10C210FF682 +:109AE0008020E8F75FFC0120A0660C2007F09CF8BE +:109AF00007E0012803D10FF67C20E8F753FC002093 +:109B0000A06694ED040AF0EE480AB4EE600AF1EEA5 +:109B100010FA1ED194ED050AB4EE4A0AF1EE10FADD +:109B200017D194ED060AB4EE6A0AF1EE10FA10D1DC +:109B3000E06E401CE066152815D32069EEF78EFA1A +:109B400002460B460FF63820E8F72CFC0020E066B2 +:109B500009E0B0EE480A84ED040A84ED05AAC4EDDC +:109B600006AA0020E06697EC030AFFF7BDFE207A04 +:109B700002283DD1304680B2B0EE690A08F038FFC5 +:109B8000314689B2384606F02BFB284606F0C0FF66 +:109B9000286801280FD105F03BFC284606F0B8FFE5 +:109BA0002C222946DFF84809EAF7A4FE0FF6DC105C +:109BB000E8F7F8FB28E0294684B068462C22E8F74D +:109BC00047FF0FBC00F066F900F0E6FA00281BD052 +:109BD000A889002818D10FF6C010E8F7E3FB012090 +:109BE000207206F0ABFF01202080022060800BE095 +:109BF000012809D1FFF798FE002805D00FF6A01024 +:109C0000E8F7D0FB0220207200F006F8002008B030 +:109C1000BDEC068BBDE8F283DFF8B40801880029AB +:109C200010D1418800290DD1417B491C4173C9B233 +:109C3000072923DB01210180016A098C4180002171 +:109C400041737047016A01F12002528D002A09D048 +:109C5000032A02D10222028001E003220280098C41 +:109C6000418070470279042A04D10421018081795E +:109C70004180704701220280098C41807047DFF8E3 +:109C80005008007A7047002805D0DFF84418096AA8 +:109C90005822E8F7DDBE7047002803D0DFF83018FF +:109CA00009680160704700000100803F10B500287E +:109CB00014D1DFF82C4800EE101AB8EE400A84EDFB +:109CC000010A204606F050FF6068EEF7C7F9024629 +:109CD0000B460FF6D400E8F765FB24E0012814D109 +:109CE000DFF8FC4700EE101AB8EE400A84ED000AD7 +:109CF000204606F039FF2068EEF7B0F902460B4621 +:109D00000FF6B400E8F74EFB0DE002280BD1DFF8A8 +:109D1000D0472181204606F027FFB4F908100FF63E +:109D2000A800E8F73FFB0FF6B000E8F73BFB42F274 +:109D3000247001460FF6B000E8F734FB40F2D6700D +:109D4000DFF88C17C88101460FF6AC00BDE8104063 +:109D5000E8F728BB2DE9F0470746884691460FF6FD +:109D60007800E8F71FFB42F2247001460FF67800F6 +:109D7000E8F718FB40F2D6700146DFF85447E1815E +:109D80000FF67400E8F70EFBDFF858575822002151 +:109D90002846E8F763FADFF850675822002130467A +:109DA000E8F75CFA58220021DFF84007E8F756FA96 +:109DB0002662DFF82CA7582200210AF10C00E8F7F0 +:109DC0004DFA0C2200215046E8F748FA2C220021D7 +:109DD000DFF80807E8F742FA2C220021DFF8100725 +:109DE000E8F73CFA00EE107AB8EE400A8AED010A74 +:109DF00000EE108AB8EE400A8AED000AAAF8089030 +:109E00004B46424639460FF60400E8F7CBFA05F018 +:109E10001FFA504606F0A8FE05F1200042F210712C +:109E2000C185018600218162022028842C222946D6 +:109E30003046EAF75FFD0120207200206072A072B8 +:109E4000E06108F093FD0020E07201202073002003 +:109E500020616061A061DFF880060021016041603F +:109E600081600846206007F073FA201D07F0D1FAE0 +:109E700000206066A066BDE8F08710B596B006F0D9 +:109E80004FFE044600A8FFF7FEFE0098001916B02A +:109E900010BD00000FB42DE9F0412DED028B8AB00A +:109EA000DFF84C86D8F80400DFF83C66814206D122 +:109EB000BDF85620B8F80E309A4200F097800C1A80 +:109EC00002D5DFF8700604199DED1C0AD8ED0A0AC8 +:109ED00070EE608AF5EE408AF1EE10FA03D59FED40 +:109EE000AC0A78EE808A9DED1A0AD8ED080A30EEA9 +:109EF000608AB5EE408AF1EE10FA03D59FEDA40A10 +:109F000038EE008ABDF85600C0B29DED1B0A08F07D +:109F1000F7FEB0EE401ADFF8B855287B012802D0D2 +:109F2000022837D047E0DFF8C475089712A983B03C +:109F300068462C22E8F78CFD0EBC9FED961AF0EED9 +:109F4000480AB0EE680A204600F060F8E87A201867 +:109F5000E872C0B206282EDBDFF88805089012A947 +:109F600083B068462C22E8F773FD0EBC9FED891A7A +:109F7000D7ED0E0A97ED090A386800F047F8E87A3D +:109F8000401CE872582200213846E8F767F90220A1 +:109F9000287310E0DFF84C05089012A983B06846DA +:109FA0002C22E8F755FD0EBCF0EE480AB0EE680A28 +:109FB000204600F02BF8BDF85600002809D15822A1 +:109FC0000021DFF82805E8F749F90020E8720120B0 +:109FD00028732C2212A94046EAF78CFCDFF80415FE +:109FE000296258223046EAF785FC2E62BDF85800F7 +:109FF000318C884203D0DFF8EC14088430840AB036 +:10A00000BDEC028BBDE8F0015DF814FB0EB4F0B5B9 +:10A010002DED048B8AB0B0EE409AB0EE608AF0EE7F +:10A02000418A1E9D05F12004BDF85A60A685294687 +:10A03000B0EE680A00F0EAF8DFF89404C06900287E +:10A040001AD194ED010A30EE090A84ED010A00F0FC +:10A050002DFA84ED010A6685BDF8580020851A980E +:10A06000606194ED060A30EE080A84ED060A00F0FD +:10A0700011FA84ED060A5BE0DFF8640407AA0AC857 +:10A080000AC20368136013A984B068462C22E8F75B +:10A09000DFFC0FBCB0EE680A00F054F9D4ED010A01 +:10A0A00030EE800A84ED010A00F000FA84ED010A26 +:10A0B000F5EE408AF1EE10FA0BDD032E03D10620F7 +:10A0C0006085208510E0042E0ED108206085208553 +:10A0D0000AE0032E03D107206085208504E0042ECA +:10A0E00002D10920608520859DED1A0AF6EE000A4E +:10A0F00020EE200A84ED050AA069EDF7AFFF0646C1 +:10A100000F4618EE100AEDF7A9FF0022DFF8E4333E +:10A11000E8F7AAFD32463B46E8F7B8FEEDF7C6FF82 +:10A1200000EE100A84ED060A00F0B4F984ED060A88 +:10A130001C98EDF793FFDFF8C023DFF8C033E8F792 +:10A1400093FDEDF7B3FF00EE100A84ED070ADFED93 +:10A150007C0AB4EE600AF1EE10FA02DBDFF8D803F5 +:10A16000E06115986062608D002801D10020606276 +:10A170000020206218986063BDF866002086BDF854 +:10A180005C0028840AB0BDEC048BF0BC5DF810FBC9 +:10A19000002474490000000080B506F0F3FC40F68E +:10A1A000B931884201D3012002BD002002BD38B57B +:10A1B0000D4605F11004A18F032912D1B5EE400A16 +:10A1C000F1EE10FA06DD29694018286100F07AF9ED +:10A1D000286131BD61684018606000F073F960600B +:10A1E00031BD042911D1B5EE400AF1EE10FA06DDB9 +:10A1F000A1684018A06000F065F9A06031BDE16879 +:10A200004018E06000F05EF9E06031BDF8B52DED7A +:10A21000028B0546B0EE408A0C4620682818206064 +:10A2200000F050F9206018EE100AEDF717FF21F04A +:10A23000004100221346FAF7BBFA44D2A84EB06997 +:10A24000092831D2A24FF96900292DD108281CD143 +:10A25000E1684018E06000F035F9E0602146B0EEBA +:10A26000480AB069FFF7A3FFE0682818E06000F033 +:10A2700029F9E0602146B0EE480A2846FFF797FF2B +:10A2800000F04CF80120F8610AE0B4F84A00042814 +:10A2900003D170692818706102E0306928183061B4 +:10A2A000B0692818B06136E0E0682818E06000F076 +:10A2B00009F9E0602146B0EE480A2846BDEC028B61 +:10A2C000BDE8F44073E7B4F84A00032802D004283C +:10A2D00007D00DE060682818606000F0F3F8606057 +:10A2E0000CE0A0682818A06000F0ECF8A06005E081 +:10A2F00060682818606000F0E5F86060784EB0692A +:10A30000092803D2002801D000F00EF800F006F86A +:10A310006F480021C161BDEC028BF1BD7048002186 +:10A3200001614161816170476D486E494A68036906 +:10A330009A184A608A6840698018886070470000EF +:10A340000100C8410FB438B52DED088BB0EE408A3E +:10A35000DFED6B8A9FED6A9ADDED159A19EE900A92 +:10A36000EDF77CFE41EC1A0B9FED66BBBDF83E009D +:10A37000042853EC1A2B654824D16549E8F774FC8E +:10A3800053EC1B2BE8F782FDEDF790FE0BEE100A65 +:10A39000B5EE408AF1EE10FA38D453EC1A2B5F4830 +:10A3A0005C49E8F761FC04460D4618EE100AEDF72B +:10A3B00055FE22462B46E8F757FCEDF777FE09EEEF +:10A3C000100A23E05449E8F74FFC53EC1B2BE8F745 +:10A3D0005DFDEDF76BFE0BEE100AB5EE408AF1EE77 +:10A3E00010FA13D453EC1A2B4C484D49E8F73CFCB7 +:10A3F00004460D4618EE100AEDF730FE22462B46B5 +:10A40000E8F732FCEDF752FE09EE100AF5EE409A3D +:10A41000F1EE10FA18D09DED0E0AB5EE400AF1EEFD +:10A4200010FA11D010EE100AEDF718FE00223D4B85 +:10A43000E8F71AFC02460B4600203B49E8F79AFD74 +:10A44000EDF734FE08EE900A3BEE090A10EE100A12 +:10A45000EDF704FE354A394BE8F706FC04460D4695 +:10A460001798EDF7FBFD22462B46E8F7FDFB044667 +:10A470000D4618EE900AEDF7F1FD22462B46E8F75F +:10A48000F3FBEDF713FE00EE100ABDEC088B31BCB8 +:10A490005DF814FBDFED260AB4EE600AF1EE10FA67 +:10A4A00003DBDFED270A30EE200A7047DFED200ADC +:10A4B000B4EE600AF1EE10FA03DBDFED210A30EEB4 +:10A4C000200A70471B49884201D31E49081870476B +:10A4D0003C180120DC140120E8290120C8250120B6 +:10A4E0005C1A0120241E01207C1E0120D41E0120A4 +:10A4F000F42501200000E03FB81E85EB51B8AE3FC7 +:10A50000000000000000000000000C409A9999999A +:10A510009999C93FCCCCEC3F9999B93FCDCCCCCCE3 +:10A52000CCCCFC3F00004E400000F03F7B14AE4717 +:10A5300001247449819698000000C841E17A743F73 +:10A54000002474C9806967FF50443A204250204F6C +:10A550004E00000050443A204250204F4646000032 +:10A5600050443A20494E545F53544550282564299D +:10A570000000000050443A204558495420564800F5 +:10A580005044204E41432025660000005044202DB9 +:10A590003E204F46520000005044202D3E205700E0 +:10A5A0005044202D3E20520050443A536574486573 +:10A5B000696768742025660050443A53657457658E +:10A5C000696768742025660050443A53657447658E +:10A5D0006E646572202564005044203A203138466C +:10A5E00045423134000000005B4D5F50445D205611 +:10A5F00065723A20256400005B5052495F50445D0B +:10A60000205665723A2025640000000050443A202C +:10A610002564202564202564000000000FB400B5E7 +:10A620008FB001208DF80400AA208DF802003C2094 +:10A630008DF803000020ADF83A000A208DF82000C4 +:10A640000DF1210000A91822E8F7F2F900208DF899 +:10A6500018000320079006A8EDF7D8FB01200FB0E3 +:10A660005DF814FB00B589B00020ADF822000A2087 +:10A670008DF8080000208DF809008DF80A000120EF +:10A680008DF800000320019000A8EDF7BFFB01202A +:10A6900009B000BD38B52748046B00F03BF801282D +:10A6A00014D101208DF800000FF2DC00E7F77AFEEC +:10A6B00004F10C056A7D00A9E868E368C018EAF7B0 +:10A6C00019F90120A874002000F021F8012032BD02 +:10A6D00080B5EDF7C5FA184908601849C0F8E814C4 +:10A6E00000F2E84016494160164981600FF20D0101 +:10A6F000C1600FF25D010161012002BD0E480068DA +:10A7000090F8D904002801D1002070470BE00E49D1 +:10A71000087070470C480078704780B5002000F042 +:10A7200006F8012002BD094890F90000704707496A +:10A730000870704708400020902B01201DA60108DA +:10A7400065A6010895A60108F22B0120F12B012036 +:10A7500018B440F221120B7812FB030301241C7081 +:10A760000B7812FB03035C700B7812FB03031F24AE +:10A770009C700B7812FB03000022C2700878401C0A +:10A78000087011BCC9E7000053442D4500000000CB +:10A790000FB400B58FB001208DF80400AA208DF809 +:10A7A00002003C208DF803000020ADF83A000A209A +:10A7B0008DF820000DF1210000A91822E8F738F9E2 +:10A7C00000208DF818000320079006A8EDF71EFB67 +:10A7D00001200FB05DF814FB00B589B00020ADF882 +:10A7E00022000A208DF8080000208DF809008DF85D +:10A7F0000A0001208DF800000320019000A8EDF769 +:10A8000005FB012009B000BD38B5002000902648A6 +:10A81000446C00F039F8012812D1F7F7F9F90090EB +:10A8200004F10C056A7D00A9E868E368C018EAF73E +:10A8300061F80120A874002000F023F8F7F7ECF984 +:10A84000012032BD80B5EDF70BFA184908601849B0 +:10A85000C0F8881500F28850164941601649816099 +:10A860000FF20D01C1600FF25D010161012002BD17 +:10A870000E48006890F87905002801D10020704743 +:10A880000BE00E49087070470C480078704780B59F +:10A89000002000F006F8012002BD094890F90000F0 +:10A8A0007047074908707047084000208C2B012032 +:10A8B00091A70108D9A7010809A80108F02B0120D8 +:10A8C000EF2B012018B440F221120B7812FB030386 +:10A8D00001241C700B7812FB03035C700B7812FBD5 +:10A8E000030323249C700B7812FB03000022C27028 +:10A8F0000878401C087011BCC9E7000038B5044650 +:10A90000DFF8E452002028650520686500202864EF +:10A910006864A864E8649FEDB20B85ED040B85EDD7 +:10A92000060B85ED080B85ED0A0B85ED0C0B85ED0F +:10A930000E0B6866A86605F16C00A8654FF4B67248 +:10A940000021E7F78BFC0C2200212846E7F786FC64 +:10A9500094ED020AB1EE401A94ED010AF1EE400ABC +:10A9600094ED000A05F1440105F1400008F0CEFC29 +:10A97000012032BD2DE9F04D2DED068B0E46DFF89E +:10A9800068720168396090ED010AB1EE400A87ED06 +:10A99000010A90ED020AB1EE400A87ED020A1E227A +:10A9A0003946B86D08F0B7FE796D4A1EB86D3B6D3B +:10A9B000934227DA1E22591C09B208F0D5FE10EE88 +:10A9C000100AEDF74BFBC7E90A011E22386D411C46 +:10A9D00009B2B86D08F0E6FE10EE100AEDF73EFB86 +:10A9E000C7E90C011E22386D411C09B2B86D08F090 +:10A9F000F7FE10EE100AEDF731FBC7E90E01386DD6 +:10AA0000401C72E023D11E2209B208F0ADFE10EE08 +:10AA1000100AEDF723FBC7E90A011E22796D09B27E +:10AA2000B86D08F0BFFE10EE100AEDF717FBC7E98E +:10AA30000C011E22796D09B2B86D08F0D1FE10EE3E +:10AA4000100AEDF70BFBC7E90E01786D4DE01E22F1 +:10AA500009B208F079FEF8651E220021B86D08F0F1 +:10AA600073FE8046C7F86080FC6D2068EDF7F6FA4B +:10AA700002460B46D7E90A01E8F736F882468B46CC +:10AA8000D8F80000EDF7EAFA52465B46E8F7FEF91F +:10AA9000C7E90A016068EDF7E1FA02460B46D7E91B +:10AAA0000C01E8F721F882468B46D8F80400EDF750 +:10AAB000D5FA52465B46E8F7E9F9C7E90C01A06808 +:10AAC000EDF7CCFA02460B46D7E90E01E8F70CF891 +:10AAD00004460D46D8F80800EDF7C0FA22462B468A +:10AAE000E8F7D4F9C7E90E01786DE8F7B7F941EC5A +:10AAF000180BD7E90A0153EC182BE8F73BFA41ECA5 +:10AB0000190B87ED049BD7E90C0153EC182BE8F7E0 +:10AB100031FA41EC1A0B87ED08ABD7E90E0153EC83 +:10AB2000182BE8F727FA41EC100B87ED060BEDF731 +:10AB3000BDFA01EE100AB0EE418A51EC1A0BEDF7A6 +:10AB4000B5FA00EE900AB0EE481AB0EE608AF0EE68 +:10AB5000418A51EC190BEDF7A9FA00EE100AB0EE9C +:10AB6000681AF0EE480A07F14C0107F1480008F0B6 +:10AB7000CDFB386D401C38659FED190B87ED040B3C +:10AB800087ED080B87ED060B396CB86C00F017F8F1 +:10AB900004467C66796CF86C00F011F8B86604F134 +:10ABA0002801512902D22830512802D301203070C7 +:10ABB00001E000203070BDEC068BBDE8F08D421A3C +:10ABC000B52A04DB081A00F5B470424205E012F120 +:10ABD000B40F02DA00F5B470421A10467047000054 +:10ABE0000000000000000000F0F9002038B5DFF898 +:10ABF0002C4594F82000012801D1002032BD2046C8 +:10AC000009F093FB204608F0FDFE0020E08309F0E8 +:10AC10008FFBDFF80C55E5640020606514220146C7 +:10AC200004F13000E7F71AFB20220021DFF8F404DA +:10AC3000E7F714FB20220021DFF8EC04E7F70EFB16 +:10AC40000020A065024605E0D42101FB00510A71F5 +:10AC50008A71401C0128F7DB0120606400F011F8C4 +:10AC6000DFF8C804012180F83D10084609F0DCFA3D +:10AC70000020A064207709F0FFFA012084F820006A +:10AC800032BD70B401460023DFF8902411E0D425D2 +:10AC900004EB8304A46805FB040401262671D66D29 +:10ACA00005FB0300807904EB8000006A3043D06527 +:10ACB0005B1CDFF8780400EB4114DFF864042579AD +:10ACC000AB42E4DB29465177237F1376002903D07A +:10ACD000DFF850345971D06470BC7047DFF83C1411 +:10ACE0004A6D01EB82031863501C4865052803D3A5 +:10ACF000401E486500207047012070470020DFF8A3 +:10AD00001C1402468A654A6D002A0BD00B6B8B65BA +:10AD1000521E4A6504E001EB8002536B1363401C32 +:10AD20000428F8DB704738B50024DFF8F053287F9B +:10AD300009F0AEFA02E000F03CF8641C287E844280 +:10AD4000F9D331BD70B50C460025DFF8D063F17F33 +:10AD50004A1CF277332901DB2946F177B17F0329B9 +:10AD600015DB016871624168B1628068F062284653 +:10AD700009F08BFA307F401C3077317EC0B28842B8 +:10AD800003D328463077FFF7CEFFFFF7B7FFB07F3A +:10AD9000411CB177652801DB3220B077B06D002807 +:10ADA00005D0207001250A2801D10A2020702846EC +:10ADB00070BD2DE9F84300200146DFF864430BE045 +:10ADC000D42202FB01421379002B04D0937902EBC9 +:10ADD0008302126A1043491C0129F1DB09F071FA60 +:10ADE000CE4D09F094FA28650020A86506463FE09C +:10ADF000D42202FB06F707EB040898F804000028A9 +:10AE000035D0304600F049F8D5F8509098F8060053 +:10AE100008EB8000006AD9F8001008421ED098F8AC +:10AE2000060008EB8000406B002806D098F806006A +:10AE300008EB8000406BFFF751FF98F80600401CBC +:10AE400088F8060098F80510C0B2884206D3B548C5 +:10AE5000395940F82610002088F80600D9F840003B +:10AE6000002804D0D9F800100843C9F80000761C67 +:10AE7000012EBDDB286D006809F04BFAA86C411C5F +:10AE8000A964B0F57A7F01D90020A864A648A54935 +:10AE90002022BDE8F843E7F7DBBDF8B59F4C256DF0 +:10AEA00000212964D4219E4A01FB00208179C1EB55 +:10AEB000C10200EB820600EB8107386A022846D106 +:10AEC000B06C012843D1306D022808D1686B03288B +:10AED00003DAF06D401CF06501E00020F065306D94 +:10AEE000042808D1686B052803DAF06D401CF06572 +:10AEF00001E00020F065306D082808D1686B082853 +:10AF000003DBF06D401CF06501E00020F065306D62 +:10AF1000102808D1686B102803DBF06D401CF06529 +:10AF200001E00020F065F06C142190FBF1F0F16D70 +:10AF3000814206DA2868396A88432860386A2864BA +:10AF400005E00020F0652868396A08432860386AFF +:10AF5000012861D196F84800C0075DD5F06C410723 +:10AF60001ED594ED0B0AF9EE000AB4EE600AF1EE7C +:10AF700010FA09D540F22310A9699131814203D317 +:10AF8000E969913181423DD20020F065F06D0528DC +:10AF90003CDA2868396A88432860386A2864F1BD39 +:10AFA00081070FD594ED0B0AB5EE400AF1EE10FAC9 +:10AFB000EADDA8695A30B528E6D2E8695A30B528E2 +:10AFC00020D3E1E7C006E1D5E06AEDF747F821F0CC +:10AFD00000410122564BF9F7EBFBD5D8606AEDF73B +:10AFE0003DF821F000410022524BE7F71BFFCBD286 +:10AFF000A06AEDF733F821F0004100224D4BE7F74E +:10B0000011FFC1D2F06D401CF065BFE70020F06574 +:10B010002868396A08432860F1BD000010B43F4930 +:10B02000CA68002A04D14FF48062CA600A614A618A +:10B0300091ED040AB8EE400AD1ED0A0A20EE200A8A +:10B04000DFED350A80EE200AD1ED010AF8EE600A44 +:10B0500030EE200ABDEEC00A10EE102A91ED050A6E +:10B06000B8EE400AD1ED0B0A20EE200ADFED2A0AE5 +:10B0700080EE200AD1ED020AF8EE600A30EE200AD6 +:10B08000BDEEC00A10EE103AB0F9024000EB4404E5 +:10B0900091ED030AB8EE400AD1ED090A20EE200A2C +:10B0A000DFED1D0A80EE200AD1ED000AF8EE600AFD +:10B0B00030EE200ABDEEC00A10EE101AA180B0F9E1 +:10B0C000021000EB4101CA80B0F9021000EB41010F +:10B0D0000B814188491C418009B21E2901DB1D21D9 +:10B0E0004180012010BC704710B5002006E0D4213B +:10B0F0000B4A01FB002100220A71401C0128F6DBEB +:10B10000064C00206064607709F0B8F80020E06524 +:10B1100084F8200010BD0000C3F51C41A81C0120CC +:10B12000E4760020002701202027012084780020D9 +:10B13000000021400000F83F10B5554C0020206071 +:10B140006060A0602062052060620020A061E06174 +:10B15000A062E06220636063A063E0636064A06457 +:10B1600004F14C0020644FF4B6720021E7F776F842 +:10B170000C22002104F10C00BDE81040E7F76EB886 +:10B1800070B50C46424DA96C4E1CAE6400F017F829 +:10B19000002803D0686C401C686401E000206864EB +:10B1A0000F2E0ADA686C0B2803DB012020700220C6 +:10B1B00070BD00202070012070BD032070BD0021F3 +:10B1C000334A92ED000AB5EE400AF1EE10FA15D1BD +:10B1D000D2ED010AF5EE400AF1EE10FA0ED1D2EDF1 +:10B1E000020AF5EE400AF1EE10FA07D1016811608B +:10B1F000416851608068906000207047D0ED000A7F +:10B2000030EEC00A90ED011AD2ED011A31EE611A4A +:10B21000D0ED021A92ED022A71EEC21AB5EE400A82 +:10B22000F1EE10FA01DAB1EE400AB5EE002AB4EE02 +:10B23000420AF1EE10FA1AD5B5EE401AF1EE10FA04 +:10B2400001DAB1EE411AB5EE000AB4EE401AF1EEA1 +:10B2500010FA0CD5F5EE401AF1EE10FA01DAF1EE23 +:10B26000611AF4EE401AF1EE10FA00D50121C2ED98 +:10B27000000A43685360806890600846704704483D +:10B280000021016041608160416481647047000079 +:10B2900064FF002010B500F032FB00F098FB0024A2 +:10B2A0000DE020469FED151ADFED140A9FED130AFD +:10B2B00000F0B4FE2146052000F0BDFE641C1E2CEB +:10B2C000EFDBDFF8540D00210170016341638163FE +:10B2D000C163016441648164052141710A210171E6 +:10B2E000002141708170C1620A2181710021C17009 +:10B2F00010BDDFF8241DC87070470000000000007A +:10B300002DE9F0472DED048BB0EE408AF0EE608A17 +:10B31000B0EE419ADFF8244DE078012801D10025F4 +:10B3200000E0052526781E2E09DA304600F076FE6C +:10B330003146284600F07FFE701C207027E0002672 +:10B3400016E0DFF8FC1C01EB8602304692ED3D1A58 +:10B35000D2ED1F0A01EB860191ED010A00F05EFEBD +:10B360003146DFF8E00C3018407800F064FE761CBF +:10B370001D2EE6DB1D20B0EE491AF0EE680AB0EE95 +:10B38000480A00F04BFE1D21284600F054FEDFF86D +:10B39000B89C032D08DA606B401C606348450BD3F2 +:10B3A000DFF8A80C606307E0206B401C2063484571 +:10B3B00002D3DFF8980C206300F0B2FDB0EE408AB3 +:10B3C00000F076FDF0EE408A00F010FBD4F83080FB +:10B3D0009FEDA09B4046E7F74BFD53EC192BE7F799 +:10B3E00043FCE7F781FF0646E76B3846E7F740FD89 +:10B3F00053EC192BE7F738FCE7F776FF8246207904 +:10B400000A2802D0142846D05CE09FED940AB4EEDE +:10B41000408AF1EE10FA0CD5F4EE408AF1EE10FA03 +:10B4200007D5032D05DA14202071780800F0F0FB11 +:10B4300048E0781CE063484502D3DFF8100CE06375 +:10B44000042D3FDB00F064FAE06A01283AD1B6F53A +:10B450007A7F37D994ED090AB5EE400AF1EE10FA79 +:10B4600001DCB1EE400ADFED7E0AB4EE600AF1EED7 +:10B4700010FA0DDA94ED0A0AB5EE400AF1EE10FA70 +:10B4800001DCB1EE400AB4EE600AF1EE10FA19DB0D +:10B490000020E06216E09FED710AB4EE408AF1EE02 +:10B4A00010FA04DAF4EE408AF1EE10FA02DB0A2018 +:10B4B000207107E0A06B401CA063484502D3DFF871 +:10B4C0008C0BA06300206070607902280AD0C0F065 +:10B4D0005B8104281BD074D3062800F00381C0F0E0 +:10B4E000E68051E1032D0FDA606B012802D120794B +:10B4F000A07149E10A2840F047810420607100F002 +:10B50000F5FB002020633FE1002060633CE1E06A3E +:10B51000012832D1207900F049F901282DD140F2DB +:10B52000E930864201D2002E22D1824502D2BAF100 +:10B53000000F1DD194ED090AB5EE400AF1EE10FAA4 +:10B5400001DCB1EE400ADFED460AB4EE600AF1EE2E +:10B5500010FA10D594ED0A0AB5EE400AF1EE10FA91 +:10B5600001DCB1EE400AB4EE600AF1EE10FA02D549 +:10B57000A078607001E00020E062E06A002814D149 +:10B58000B6F5C87F01D8002E08D1A078002808D0D1 +:10B59000BAF1FB0F05D2BAF1000F02D0A0786070AB +:10B5A00003E0207900F046F9607003206071607854 +:10B5B000A070002020636063A063E06300F01DFBC7 +:10B5C000E2E0042D17DBB8F1010F02D100F0FFF922 +:10B5D000DAE0B8F1060FC0F0D7800021404600F055 +:10B5E000D3FAA078032802D10020E06262E000F0E4 +:10B5F000D9FCE0625EE00020206320790A2853D164 +:10B60000E06B0A28C0F0C080002100F0BDFAA078ED +:10B6100000F0C8FCE06294ED130AB5EE400AF1EECA +:10B6200010FA02DDF0EE400A01E0F1EE400A9FED73 +:10B63000B71AF4EE410AF1EE10FAC0F2A580D4ED8B +:10B64000140AF5EE400AF1EE10FA0BDDF0EE601A86 +:10B650000AE000BF00000000000034409A99193F42 +:10B6600000002042F1EE601AF4EE411AF1EE10FAF9 +:10B67000C0F28A80F5EE400AF1EE10FA01DCF1EE3C +:10B68000600AB5EE400AF1EE10FA01DCB1EE400AB4 +:10B69000F4EE400AF1EE10FA76D50520607100F064 +:10B6A00096F90020A0636FE00020E0636CE0B8F141 +:10B6B000060F04D3022060710020606364E0A06B79 +:10B6C000012805D1E06B00F0A3FA2079A0715BE0BE +:10B6D000052859D3606B052856D3062060710020D9 +:10B6E000206351E0207914284ED1E06A01282DD141 +:10B6F00040F2E930864201D2002E22D1824502D2A8 +:10B70000BAF1000F1DD194ED090AB5EE400AF1EE31 +:10B7100010FA01DCB1EE400ADFEDB20AB4EE600AC5 +:10B72000F1EE10FA10D594ED0A0AB5EE400AF1EEEA +:10B7300010FA01DCB1EE400AB4EE600AF1EE10FA44 +:10B7400002D5A078607001E00020E062E06A002885 +:10B7500011D140F29110864201D2002E04D18245CF +:10B7600005D2BAF1000F02D0A078607003E0A07992 +:10B7700000F060F86070032060716078A0700020B5 +:10B7800020636063E063A0636078012801D1012039 +:10B7900008E0022801D1022004E0032801D103209F +:10B7A00000E00020BDEC048BBDE8F08780B52DEDF6 +:10B7B000048B00210A2808D1DFF85C0890ED100AFC +:10B7C00090ED118AD0ED128A11E0142808D1DFF82B +:10B7D000480890ED150A90ED168AD0ED178A06E01C +:10B7E0009FED810A9FED808ADFED7F8A0321032987 +:10B7F0001CDA9FEDD59A00F035FCB4EE490AF1EE63 +:10B8000010FA11D5B0EE480A00F02CFCB4EE490A4B +:10B81000F1EE10FA08D5B0EE680A00F023FCB4EEA1 +:10B82000490AF1EE10FA01D4012000E00020BDEC3D +:10B83000048B02BD00210A280AD1DFF8DC07D0ED15 +:10B84000100A90ED111AD0ED121A9FED670A13E05D +:10B8500014280AD1DFF8C007D0ED150A90ED161AAA +:10B86000D0ED171A9FEDC50A06E0DFED5F0A9FEDE8 +:10B870005E1ADFED5D1A032103293EDAB4EE600A99 +:10B88000F1EE10FA0BD59FEDBE2AB4EE421AF1EE9E +:10B8900010FA04D5F4EE421AF1EE10FA2AD4B4EEFE +:10B8A000600AF1EE10FA0BD59FEDB62AB4EE421AFB +:10B8B000F1EE10FA04DBF4EE421AF1EE10FA0BDAB4 +:10B8C000B4EE600AF1EE10FA08D59FEDCF1AF4EE4F +:10B8D000411AF1EE10FA01DB01210EE0B4EE600A2C +:10B8E000F1EE10FA08D59FEDC90AF4EE401AF1EE18 +:10B8F00010FA01D5022100E0032108467047DFF865 +:10B90000180700218160C160016170470100C03FDC +:10B9100010B52DED068BDFF8004794ED050AB5EE66 +:10B92000400AF1EE10FA13D194ED060AB5EE400A82 +:10B93000F1EE10FA0CD194ED070AB5EE400AF1EEE3 +:10B9400010FA05D1A0686061E068A0612069E0613B +:10B9500094ED028A94ED050A38EE400A00F0F6F8FC +:10B96000F0EE408A94ED039A94ED060A39EE400A0F +:10B9700000F0ECF8F0EE409A94ED04AA94ED070A7A +:10B980003AEE400A00F0E2F8F0EE40AA94ED080A20 +:10B9900030EE280A00F0DAF884ED080A94ED090A7E +:10B9A00030EE290A00F0D2F884ED090A94ED0A0A73 +:10B9B00030EE2A0A00F0CAF884ED0A0A84ED058AFE +:10B9C00084ED069A84ED07AABDEC068B10BDDFF866 +:10B9D0004806002101624162816241618161C16169 +:10B9E000704700000000204200000000F8B52DED77 +:10B9F000048B84B01D2100A800F000FB9DED000A1F +:10BA0000B5EE400AF1EE10FA01DCB1EE400ADFEDCE +:10BA1000AF0AB4EE600AF1EE10FA01D500200090F2 +:10BA200000AE96ED010AB5EE400AF1EE10FA01DC27 +:10BA3000B1EE400AB4EE600AF1EE10FA01D5002032 +:10BA4000706096ED020AB5EE400AF1EE10FA01DCE4 +:10BA5000B1EE400AB4EE600AF1EE10FA01D5002012 +:10BA6000B0609FED9B8B9FED9C9BDFF8D075B86815 +:10BA7000ECF7F4FA04460D460098ECF7EFFA53ECB5 +:10BA8000192BE7F7F1F80022DFF8D435E7F772FA5F +:10BA900053EC182BE7F7E8F822462B46E7F7F6F9C0 +:10BAA000ECF704FB00EE100A87ED020A00F04EF8F6 +:10BAB00087ED020AF868ECF7D1FA04460D46706883 +:10BAC000ECF7CCFA53EC192BE7F7CEF80022DFF8AD +:10BAD0009035E7F74FFA53EC182BE7F7C5F82246F5 +:10BAE0002B46E7F7D3F9ECF7E1FA00EE100A87ED01 +:10BAF000030A00F02BF887ED030A3869ECF7AEFA79 +:10BB000004460D46B068ECF7A9FA53EC192BE7F799 +:10BB1000ABF80022DFF84835E7F72CFA53EC182B86 +:10BB2000E7F7A2F822462B46E7F7B0F9ECF7BEFAA2 +:10BB300000EE100A87ED040A00F008F887ED040A09 +:10BB400004B0BDEC048BF1BD9A99993EDFED640A17 +:10BB5000B4EE600AF1EE10FA04DBDFED620A30EEBB +:10BB6000200A7047DFED600AB4EE600AF1EE10FAC9 +:10BB700003D5DFEDCD0A30EE200A70479A9999BEC1 +:10BB8000CCCCCCBDCDCCCC3D10B49FEDC80ADFED04 +:10BB9000C70A1F2801D31E2000E0C0B20022DFF830 +:10BBA000A0440EE0C2F11D03DBB204EB830393ED6E +:10BBB0001E1A30EE010A93ED3C1A70EE810A521CF7 +:10BBC000D2B2824209DA002902D1C2F11D03EBE7A9 +:10BBD0000129E7D1C2F11803E6E701EE100AB8EE39 +:10BBE000411ADFF8580480EE010A80ED130A80EE56 +:10BBF000810A80ED140A10BC7047DFF84004002170 +:10BC000041658165C1657047CDCCCC3ECCCCCCBE06 +:10BC100030B49FEDA60ADFEDA50A9FEDA41A1F28F8 +:10BC200001D31D2001E0401EC0B200210DE030EE26 +:10BC3000210A02EB8302D2ED1E1A70EEA10AD2EDA8 +:10BC40003C1A31EE211A491C89B2DFF8CC438142FB +:10BC50002ADA22781E2A03DA521A531EDBB202E0D5 +:10BC6000C1F11D03DBB2DFF8D82352F8235001EEF7 +:10BC7000905A02EB830555F8045C02EE105A71EEFF +:10BC8000C22A9FEDC73AF4EE432AF1EE10FACEDB5A +:10BC9000F5EE401AF1EE10FAC9DDB5EE402AF1EEEC +:10BCA00010FAC4D50B29C2DB01EE901AF8EE611A26 +:10BCB00080EE210A84ED150A80EEA10A84ED160AB1 +:10BCC00081EE210A84ED170A30BC70470BD7233D63 +:10BCD000F8C1631ADCA54C400000000000003440AD +:10BCE000010034430000B4C3000034C3F0B4DFEDFE +:10BCF000C92AB0EE620AB0EE622ADFED6C0A9FED4F +:10BD00006B1ADFED6A1ACD4801781E2900DB1E216F +:10BD1000026B914204D201EBD1725210D2B201E017 +:10BD20005208D2B200230DE0B1EE633AB4EE443AC9 +:10BD3000F1EE10FA05DB71EEA31AB7EE003A32EE1F +:10BD4000032A5B1CDBB2934280F29F80CC1A641EF4 +:10BD5000E4B225466E1EF6B2B94D55F8267003EED4 +:10BD6000107A05EB8407D7ED003A05EB860797EDCF +:10BD7000004A73EEC43AF5EE403AF1EE10FA05EBE4 +:10BD80008407D7ED003A02DD33EEC33A01E033EE2B +:10BD9000633A05EB8606D6ED1E3A97ED1E4AD6EDC0 +:10BDA0001E4A34EE644AB5EE404AF1EE10FA97EDC1 +:10BDB0001E4A02DD74EE633A01E073EEC43A06F106 +:10BDC000780C9CED1E4A07F17806D6ED1E4A9CEDD4 +:10BDD0001E5A74EEC54AF5EE404AF1EE10FAD6ED61 +:10BDE0001E4A02DD34EEC44A01E034EE644ADFED5F +:10BDF000984AB4EE643AF1EE10FA09DBF4EE643AD4 +:10BE0000F1EE10FA04DBB4EE644AF1EE10FA3CDA1B +:10BE100055F8244003EE104AB5EE403AF1EE10FA20 +:10BE200002DDF0EE433A01E0F1EE433A9FED894A3C +:10BE3000F4EE443AF1EE10FA05DB70EE830AB7EE49 +:10BE4000003A30EE030A97ED1E3AB5EE403AF1EEB5 +:10BE500010FA02DDF0EE433A01E0F1EE433AF4EE7F +:10BE6000443AF1EE10FA05DB31EE031AB7EE003A70 +:10BE700072EE832AD6ED1E3AF5EE403AF1EE10FA54 +:10BE80007FF752AFB0EE633A50E780EE800A80ED64 +:10BE9000100A81EE220A80ED110A81EE820A80EDFD +:10BEA000120AF0BC704700000000B443000000001C +:10BEB00010B52DED028B9FED688A002426E0C4F1B9 +:10BEC0001D00C0B25E4901EB800202F1780393EDE0 +:10BED0001E0AD2ED1E0A51F8200001EE100A21EED2 +:10BEE000011A00EEA01A00EE001A11EE100AECF78B +:10BEF000B5F841EC100BE7F761F951EC100BECF7DA +:10BF0000D5F800EE100A38EE008A641C062CD6DB49 +:10BF1000B1EE080A88EE000ABDEC028B10BD0000ED +:10BF200010B52DED028B9FED4C8ADFED4B8A00247E +:10BF300028E0C4F11D00C0B2414901EB800202F1CA +:10BF4000780393ED1E0AD2ED1E0A51F8200001EE8F +:10BF5000100A21EE011A00EEA01A00EE001A11EEEE +:10BF6000100AECF77BF841EC100BE7F727F951ECDE +:10BF7000100BECF79BF800EE100A38EE008A40EE4A +:10BF8000008A641C062CD4DBB1EE080AC8EE000A55 +:10BF900088EE800A00EEE00ABDEC028B10BD0000C6 +:10BFA0009A99993E0121022812D19FED2C0A23482B +:10BFB000D0ED130AF4EE400AF1EE10FA1CDBD0EDDE +:10BFC000140AF4EE400AF1EE10FA15DB002113E03A +:10BFD000012811D1194890ED130AFEEE000AB4EEC3 +:10BFE000600AF1EE10FA07D590ED140AB4EE600A7B +:10BFF000F1EE10FA00D5002108467047104A52F8B9 +:10C000002130036002EB81018A6F4260D1F8F010A9 +:10C0100081607047BD378635E81B0120C0B20849F2 +:10C0200001EB800282ED000A01EB8000C0ED1E0AE8 +:10C0300080ED3C1A7047034A88547047E81B012082 +:10C040003C060120E026012041420F0040420F0043 +:10C050000100A040CDCC4C3D000000000100003F9D +:10C0600000408F40B5EE400AF1EE10FA03D5FFEE26 +:10C07000000A20EE200A704704490968002900D10F +:10C080000349034A801A411808007047C42B012055 +:10C090000040002010B5040003E02068C068E9F704 +:10C0A000A8FAE8F710FC20680028F6D10748407885 +:10C0B000F021084202D09920E8F798FB0348407825 +:10C0C000002801D1E8F7F9FB10BD00BFA0790020DE +:10C0D000012008F045B900000749086808B10020B0 +:10C0E00070470648C008C00008600549C908C90073 +:10C0F000091A0160704700BFD42B012007200020DF +:10C100000040002070B504460025DFF808670620CF +:10C1100015FB004000F080FB6D1C202DF7DB70BD8F +:10C1200000B970472DE9F0434379027DDB43D243E8 +:10C13000DBB243EA02220A80437C427DDB43121DCC +:10C14000DBB243EA02224A80C47C437A6634373B3E +:10C15000E4B244EA03238B80057B4478263D523CBD +:10C16000EDB245EA0424CC800678057A203E6A3593 +:10C17000F6B246EA05250D81877D8679FF43F643B1 +:10C18000FFB247EA06264E8190F804C0877BACF1E7 +:10C19000310CFF435FFA8CFC4CEA07278F8190F843 +:10C1A00012E090F810C0AEF17F0E6FEA0C0C5FFA4F +:10C1B0008EFE4EEA0C2CA1F80EC090F80B8090F881 +:10C1C00018E0A8F155080EF1370E5FFA88F848EA32 +:10C1D0000E2EA1F810E0098890F81A8090F81790B8 +:10C1E00051185918611869187118791861446FEA63 +:10C1F000090971445FFA89F3C9B26FEA08088B42F2 +:10C200000FD180780CEB070146307144C0B2C9B23F +:10C21000884206D1A81860445FFA88F1C0B2814212 +:10C2200001D0002000E00120BDE8F083F0B588B027 +:10C23000002200AB002423F8124003234FF4804473 +:10C240009C4051F8225001269E406742AF4207DBD6 +:10C25000641941F8224000AC34F91240A41B09E0F3 +:10C26000A5420ADB2C1B41F8224000AC34F91240F5 +:10C2700006FA84F400AD25F812405B1EDED500AB53 +:10C2800033F91230DB1D9BB20F2B01D3002043E0AA +:10C29000521C032ACDDB002202AB002443F82240CB +:10C2A00005AB43F822400023062404FB020434F9C2 +:10C2B000135051F8236002AC00AF54F8224006FB43 +:10C2C000054402AEAD0346F8224005AE37F91370BF +:10C2D00056F822602D1107FB056505AE5B1C46F87C +:10C2E0002250032BE0DBC4F3C00303EB241302ACA6 +:10C2F000EB1844F8223002AB53F82230C3F3402449 +:10C3000004EBA32302AC44F82230521C032AC3DB03 +:10C3100002A81CC81CC1012008B0F0BD2DE9F14FD6 +:10C3200080B20B46212819D2BDF900000025012159 +:10C33000A940884205D06D1C062DF8DBBDF9000030 +:10C3400060B9B3F9000047F6FF7840451FBFB3F965 +:10C3500002004045B3F90400404501D1002040E00F +:10C3600000244FF0000C27460126254606E08146B2 +:10C370008E46CC447444DA4657446D1CBDF9000027 +:10C38000854226DA36B2B54208BF76004DB933F998 +:10C390000590B3F902E0B3F904A0CC4674465746C1 +:10C3A000EBE7062000FB05F1C85E40451EBF01EB30 +:10C3B000030BBBF9021041451CBFBBF904B0C345D8 +:10C3C000D5D1CC447444D7E74FEA6C0C64107F108D +:10C3D000761036B2022EF7DAA2F800C054809780A9 +:10C3E0000120BDE8F28F30B5B0F90440B0F9025039 +:10C3F000240485B0240A14FA85F4ADF80040B0F99D +:10C400000840B0F906502404240A14FA85F4ADF863 +:10C410000240B0F90C40B0F90A002404240A14FACE +:10C4200080F0ADF804000020188000AC31F8103026 +:10C4300034F91040803313FB04F302AC03EB8303A5 +:10C4400044F820301B1242F82030401C0328ECDB5B +:10C4500005B030BD30B5B0F90440B0F90250240445 +:10C4600085B0240A14FA85F4ADF80040B0F908400C +:10C47000B0F906502404240A14FA85F4ADF80240F9 +:10C48000B0F90C40B0F90A002404240A14FA80F030 +:10C49000ADF804000020188000AC31F8103034F9F9 +:10C4A0001040803313FB04F30A24634302AC44F8C6 +:10C4B00020301B1242F82030401C0328ECDB05B072 +:10C4C00030BD70B5B0F90450B0F902602D0485B0EC +:10C4D0002D0A15FA86F5ADF80050B0F90850B0F9FC +:10C4E0000660099C2D042D0A15FA86F5ADF8025058 +:10C4F000B0F90C50B0F90A002D042D0A15FA80F09D +:10C50000ADF804000020208000AD31F8104035F96E +:10C510001050803414FB05F40A256C4302AD002A48 +:10C5200045F8204014BFA412241243F82040401CB8 +:10C530000328E9DB05B070BD30B5B0F90440B0F9AF +:10C540000250240485B0240A14FA85F4ADF80040A2 +:10C55000B0F90840B0F906502404240A14FA85F40E +:10C56000ADF80240B0F90C40B0F90A502404240A96 +:10C5700014FA85F4ADF80440B0F90E0000EB800029 +:10C58000C0F55C70C0101880002000AC31F810308D +:10C5900034F91040803313FB04F30A24634302ACE4 +:10C5A00044F820309B1242F82030401C0328ECDB7A +:10C5B00005B030BD30B5B0F90440B0F902502404E4 +:10C5C00085B0240A14FA85F4ADF80040B0F90840AB +:10C5D000B0F906502404240A14FA85F4ADF8024098 +:10C5E000B0F90C40B0F90A002404240A14FA80F0CF +:10C5F000ADF804000020188011F8103000AC03F0F2 +:10C600003F035B0034F9104003F5807313FB04F320 +:10C610000A24634302AC44F820301B1242F8203055 +:10C62000401C0328E8DB05B030BD30B586B00446B9 +:10C630000D4600A80FF2D8311822E6F709FA012CAE +:10C64000B8BF012402DB042CA8BF032400A901EB1E +:10C65000C401284608390822E6F7EAF906B030BDD9 +:10C66000F0B580B285B00C4615461E46042828BF9A +:10C67000002080F0AE8000B2002807D0002147F6ED +:10C68000FF7304EB4102B2F906209A4200F0A08049 +:10C69000491C0329F5DB03A9FFF7C7FF01276FF04A +:10C6A000050017FB006101F130002A310622E6F790 +:10C6B000BFF97F1C082FF2DB0020002135F9112083 +:10C6C00034F911309A42B4BF4FF0FF32012226F8FC +:10C6D000112004EB410335F91120B3F9063000AF06 +:10C6E000D31A47F8213044BF5B4247F8213000ABF2 +:10C6F00053F8213003EB430347F82130C3F34007DD +:10C7000007EBA30300AF47F8213000AB53F821300B +:10C710009842B8BF184634F91130D21A00AB43F82A +:10C72000212044BF524243F8212000AA52F8212080 +:10C730009042B8BF1046491C0329BFDBBDF90C105D +:10C74000401ABDF80E1040FA01F1081848BF002049 +:10C7500004D4B0F5A07FC8BF4FF4A07000EB400137 +:10C7600001EB001101EB4010C011401C0021002220 +:10C77000002706EB410C062317FB03C37F1CB3F90C +:10C78000003002FA83F2082FF5DB13B2002B48BF0A +:10C790005242BDF912705210012302FA87F203FAD5 +:10C7A00002F2BDF810309A1812B28242B8BF0246A7 +:10C7B00000AF57F8217034F911307A4336F911700F +:10C7C000D2117A43D21825F81120491C0329CEDB57 +:10C7D000012005B0F0BD70B50C461546FFF792FC80 +:10C7E0002046FFF78FFC0B4E284600F015F8A81DD9 +:10C7F00000F012F8002000230021062202FB004274 +:10C8000022F81130491C0329F7DB401C0828F3DB10 +:10C8100070BD0000B020030831460622E6F708B9D3 +:10C820002DE9F04F814695B208462DB28FB01946DA +:10C83000212D2DD242F20F3842F2033A42F20C3E41 +:10C84000C14518BFF14505D0D1451CBF42F2B662C3 +:10C8500091450DD1B0F90030B0F90E200026012429 +:10C86000B440A54216D0761C062EF8DB95B10FE039 +:10C8700042F2B86291451FBF40F6BB32914542F289 +:10C88000B762914504D1B0F90030B0F91020E5E766 +:10C890000020BAE01E9E1E96012434800024249EAF +:10C8A000249634800026DDF884C04FF0000BACF8ED +:10C8B00000609B07229C2680239F3E80259EA6F831 +:10C8C00000B044BF0123ACF80030530744BF01233C +:10C8D0002380130702D50120388007E0B4F9003027 +:10C8E000012B1CBFB7F90030012B01D101208CE0D6 +:10C8F000209BC14503D103AAFFF775FD25E0F14553 +:10C9000003D103AAFFF7A6FD1FE0D1451CBF42F2E9 +:10C91000B664A14506D1009303AB02F01002FFF705 +:10C92000D0FD12E042F2B86291451CBF40F6BB3226 +:10C93000914503D103AAFFF7FFFD06E042F2B7627B +:10C94000914504BF03AAFFF735FE189809A9FFF720 +:10C95000E7FB3080012805D103A909A8FFF766FC91 +:10C96000002852D0DDF874A0002603A806A950F8CC +:10C97000260041F826005AF82610401A03A941F86B +:10C98000260000F5EA402F304EF65F21884202D3A0 +:10C99000249801210180761C032EE6DB24981A9C42 +:10C9A000B0F90000012809D12046FFF7ABFB06A82B +:10C9B0000EC8AAE80E000020019006E00398ADF82A +:10C9C00004000498ADF806000598ADF80800234669 +:10C9D0001E982021B0F9002001A807F0CBFC1B9C79 +:10C9E0001C9BBDF9640001AA2146FFF739FE60B126 +:10C9F0001E982346B0F90020202101A807F0BAFCB8 +:10CA00001F9A21462846FFF789FC0FB0BDE8F08F3A +:10CA10002800000000000300500000000000020099 +:10CA200050000100FEFF02002DE9F04F93B00446D4 +:10CA30000D4690460FA80FF6A4110B22E6F708F852 +:10CA40000BA80FF6A4110E22E6F702F808A80FF6BD +:10CA5000A8110B22E5F7FCFF04A80FF6A8110E227F +:10CA6000E5F7F6FF0020ADF802000120ADF8000068 +:10CA70004FF0080900F0EFF8B9F10109FAD10026EA +:10CA80000DF13C0916F8097057B100F0E4F8BDF853 +:10CA90000000381A543006F80900761C102EF1DB1D +:10CAA000102E04DA00F0D7F8701C06B2F8E7002761 +:10CAB0000BAE17F806A0BAF1000F0AD000F0CBF8C1 +:10CAC000BDF80000AAEB00002A38B8557F1C102FD3 +:10CAD000EFDB102F00A804DA00F0BFF8781C07B2D3 +:10CAE000F7E700F0BAF8BDF8001043F2EF20401A63 +:10CAF000ADF80E0000F0AFF8BDF80010DFF8040547 +:10CB0000401AADF80C0000F0A6F8BDF80010DFF8F0 +:10CB1000F804401AADF80A0000F09DF8BDF80000D6 +:10CB2000C0F57F5700F097F8BDF80010DFF8DC047F +:10CB3000401AADF8080000F08EF8BDF8001042F27F +:10CB40001F50A0EB010A00F086F8BDF8001040F677 +:10CB50004120A0EB010B00F07EF8BDF8001042F67A +:10CB60005F70401A002111F80920002A04BF0B5DF4 +:10CB7000002B05D00B5D934266D1491C1029F2DBD6 +:10CB8000102902D1217C00295ED100218A5D002A72 +:10CB900004BF4B5D002B05D04B5D934254D1491C23 +:10CBA0001029F3DB102902D1297C00294CD1002166 +:10CBB00008AA8A5C002A04BF0B5D002B05D00B5D20 +:10CBC000934241D1491C1029F2DB102902D1217C6A +:10CBD000002939D1002104AA8A5C002A04BF4B5DD8 +:10CBE000002B05D04B5D93422ED1491C1029F2DB5E +:10CBF000102901D1297C39BBB8F90010BDF90E20EC +:10CC0000914202BFB8F90210BDF90C2091421BD12C +:10CC1000B8F90410BDF90A209142A4BF3AB28A4281 +:10CC200012DBB8F90610BDF908209142A4BF0FFA33 +:10CC30008AF28A4208DBB8F908100FFA8BF29142A7 +:10CC4000A4BF00B2884202DADFF8C40300E001208A +:10CC500013B0BDE8F08F00A8FFE7B0F902108180A3 +:10CC6000B0F90020428051180180704770B5054628 +:10CC7000049C05982960C5F88C211E4602460123B4 +:10CC80002146284600F077F90020A5F88801A5F88C +:10CC90008A61A5F8F001A5F8F20170BD2DE9F04F09 +:10CCA000D5B005460E4617461C462AA80FF26471F9 +:10CCB000A822E5F7CDFE15A80FF600015422E5F7EE +:10CCC000C7FE0EA80FF648011C22E5F7C1FEDFF8EB +:10CCD00040833A4631462846FFF7A6FE404508BF46 +:10CCE000404615D0BDF97C01411E89B220293EBFC6 +:10CCF000B4F98A1189B2022909D2B4F9841189B22E +:10CD000011293EBFB4F9861189B2032901D300204D +:10CD10002EE10021ADF818100591461E5E985E9038 +:10CD200000256098ADF8800136B26198ADF88401B5 +:10CD30004FF0060B6298629034E00BFB0142491CF5 +:10CD4000B2F9243102F592729844B2F90230B2F984 +:10CD5000042099449244B7F916209142EDDB629A7F +:10CD600000FB08F1C913118000FB09F1629AC91395 +:10CD7000518000FB0AF06299C0138880B4F98401E5 +:10CD8000B7F9141088420BDBB4F98601022807DAE0 +:10CD90000020A4F88401B4F88601401CA4F88601A0 +:10CDA000761E36B2002E00F1D980B4F986012368D0 +:10CDB000B4F98A111C2212FB00F2002B03BF54238A +:10CDC0002AAF13FB017353F8213002EB0308BDF9BE +:10CDD0008021B8F90070B8F9049002B90021BDF9BA +:10CDE000842102B90020D4F88C311C2212FB00F2FD +:10CDF000002B07A803BF54230DF1540C13FB01C1F2 +:10CE000053F8211051181C22E5F712FE5E98ADF878 +:10CE10001C70ADF820901BFB06090020039004A8AD +:10CE2000029004F5F870019005A8009004F5C8730D +:10CE3000221D07A9484600F0F3F801281DD1B4F9D6 +:10CE40008A0101280ADAB8F91810002906D4B4F9C1 +:10CE5000F0218A42A4BF401CA4F88A01B4F98A01D7 +:10CE600001280ADBB8F91A10002906D4B4F9F02118 +:10CE70009142A4BF401EA4F88A01B4F98611B4F906 +:10CE80008A0123681C2212FB01F25BB9B4F98431D8 +:10CE9000002B04BF00290EAF07D054212AAB11FB91 +:10CEA000003001E053F820001718BDF910000128E8 +:10CEB0000FD1039004A8029004F5C470019005A856 +:10CEC000009004F1C403221D3946484600F0A8F83A +:10CED00001287FF465AFB4F984016D1C1028B4BF3C +:10CEE000401C1020A4F8840104F592730122102143 +:10CEF00005A807F03FFAB4F984010228A4BFB7F9E6 +:10CF00001610022905DA629805A90622E5F790FDB8 +:10CF100034E74FF0000AD146C846884219DA014684 +:10CF2000012007F09FFA0021B4F984219142BFF655 +:10CF300016AF1BFB0142491CB2F9243102F5927273 +:10CF40009844B2F90230B2F904209944924409B2EB +:10CF5000EAE7012007F086FA0021FCE6B4F9840133 +:10CF60000028B4F8860118BF401C6399087028B2E5 +:10CF700055B0BDE8F08F2DE9F84F82468B46164636 +:10CF80003BB30AF1C4070AF1040400254FF0060878 +:10CF9000DFF8809015FB084000F03EF86D1C202D56 +:10CFA000F8DB002414FB087000F036F8641C102C29 +:10CFB000F8DB002708FB07A404F5927000F02CF8BA +:10CFC00004F5C87049464246E5F732FD7F1C102F34 +:10CFD000F0DB0AF5C277012E03DA0020AAF88401FB +:10CFE0000DE00120AAF884010AF5927301221021B4 +:10CFF000584607F0BFF9042EB4BF701E0220788097 +:10D00000BDE8F18FED9EFFFFDEA5FFFF60E5FFFFAE +:10D010000080FFFFB020030849460622E5F708BD5F +:10D020002DE9F04316460FF2045204468846D2E931 +:10D03000000191B09946CDE90001B8F9000001283E +:10D0400045DB1A9D00202880BDF96C7097B93088A7 +:10D05000218800F087F8ADF800007088618800F042 +:10D0600081F8ADF80200B088A18800F07BF8ADF837 +:10D07000040001E0012F16D0B8F90400BDF900103A +:10D080008142A1BFBDF902108142BDF90410814265 +:10D0900063DB47B9B8F9001033460122204607F098 +:10D0A00069F9012028800620B8F9001011FB006002 +:10D0B00047F6FF7230F9063C934202BF801FB0F979 +:10D0C0000230934204BFB0F90400904201D1002025 +:10D0D00045E006A8019004A8009008AB0AAA3046D3 +:10D0E00007F06FF9B8F900104FF0FF3304AA30468B +:10D0F00000F05CF9199D189C03A8019000950CABF9 +:10D10000B8F900102246304600F030F807460123F7 +:10D1100004AA0121204600F049F9B8F902104B4653 +:10D120000122204607F026F90FB900240DE0BDF9D1 +:10D130000C0002900CABB5F900000190009742463C +:10D140004946304600F064F80446B8F9001001235F +:10D1500004AA304600F02AF900E00024204611B06D +:10D16000BDE8F083401A00B207F0B6B92DE9F041EE +:10D1700090B016461D46179F0446884608AB2A46BF +:10D1800007F0D6F90021062300224B4303EB050CE0 +:10D190000DF1280E3CF812C09E442EF812C0521C0D +:10D1A000032AF3DB491C0329EDDB169D042827D154 +:10D1B00004AB06AA03210AA807F009FC08B302A8D9 +:10D1C000019008A8009004AB06AA03210AA807F062 +:10D1D0004FFCBDF908008010308002A80423B0F98C +:10D1E0000210891071803246B0F904008010B080BE +:10D1F000019700954146204600F074F8042004E0B1 +:10D200000020B08070803080288010B0BDE8F081B0 +:10D21000F0B58FB00446084615461499BDF958205C +:10D220001E4604295BD1BDF95410B5F910308B426C +:10D23000BCBFB5F90E309942BFBFD202B5F912306A +:10D2400013FB01F18A424ADA05A9019107A900916D +:10D2500009ABB5F902100BAA07F0B3F8B5F90A004B +:10D26000BDF914108142BFBFBDF916108142BDF94E +:10D270001810814233DA03A8019007A8009009AB87 +:10D28000B5F900100BAA204607F09BF8BDF90E1067 +:10D29000BDF90C20BDF91000B5F90630BDF90C70D0 +:10D2A00001FA82F202FA80F2BB42BCBF8B42834297 +:10D2B00015DAB5F90800824211DB02A800900DAB27 +:10D2C000B5F900103246204607F06CFA38B1B5F9CE +:10D2D0000C00BDF908108842B8BF012000DB002017 +:10D2E0000FB0F0BD2DE9F84F0B9F04468B46164654 +:10D2F000042B3AD1E05EF15EB6F90220B6F90030B7 +:10D30000401AB4F90210891AB4F90020D21A49431C +:10D3100002FB021100FB0018404607F011FC814699 +:10D32000CA4601255D4524DA062068430219B6F98C +:10D330000430B2F90410B2F90220005FC91AB6F93C +:10D340000230D21AB6F90030C01A524300FB002056 +:10D3500001FB0100804407F0F3FB8145B8BF814623 +:10D360005045D8BF82466D1CDCE74FF00008C2462E +:10D37000C1465946012007F075F80146C0F3C000C8 +:10D3800000EB2110C8F380110A9C01EBE81148431F +:10D3900007F0D6FB20808110C0F3400001FA80F036 +:10D3A0002080A9EB0A003880BDE8F18FF0B5002499 +:10D3B00011E00626002506FB040636F9157032F941 +:10D3C00015C013FB0C7707F30F0726F815706D1CBB +:10D3D000032DF2DB641C8C42EBDBF0BD24587DDDB9 +:10D3E0006E59C83C094A0000AEB1E00F8B40603D69 +:10D3F0005F4620F6A700000041534148494B415386 +:10D400004549000053454330393931314E53465375 +:10D41000540000001000030010009000A003500012 +:10D4200040008F042C01F401030003008002FFFF81 +:10D43000140006003000B00080044000900041035A +:10D440002C01CC01030003008002FFFF180008003C +:10D450003000D000E0042800E00041032C01A401CA +:10D46000030003008002FFFF100003001000900083 +:10D47000A003500040008F042C01F40103000300BE +:10D48000FFFFE001140006003000400120085000BA +:10D49000F0008F04A101180103000300FFFFE00169 +:10D4A0001800080030008001C008300090018F048F +:10D4B000F401180103000300FFFFE0011000030066 +:10D4C00010009000A003500040008F042C01F401D4 +:10D4D000FF000300FFFFFFFF140003003000900077 +:10D4E000A003500040008F042C01F401FF00030052 +:10D4F000FFFFFFFF1800030030009000A003500062 +:10D5000040008F042C01F401FF000300FFFFFFFF28 +:10D510000800020010009000A003500040008F049B +:10D520002C01F401FF000100FFFFFFFF00000000DD +:10D530000000000030B5154604460622E5F778FAEB +:10D54000002D47BF0020E080E580012030BD10B5F0 +:10D55000002231F9123030F912401B1B48BF5B42E8 +:10D56000B0F90640A34204DB0622E5F761FA012088 +:10D5700010BD521C032AECDB002010BD2DE9F04742 +:10D580001F4682B0804689469246012F25DB0A9DC0 +:10D5900000243AF9141001291FDB38F9140039F975 +:10D5A0001420861A00AA384606F0A6FFBDF900101E +:10D5B00070430F3101290BDBBDF80010BDF80020CE +:10D5C0000F3140FA01F10E32104100F00100401815 +:10D5D00000F50041B1F5803F01D3002005E025F8BA +:10D5E0001400641C032CD4DB0120BDE8F687000086 +:10D5F000704780B5022808D0042806D0082804D037 +:10D60000102802D04FF4803104E04007411300EBB2 +:10D6100091408113882007F021FC002002BD80B5D5 +:10D62000B0F5FA6F0DD0B0F57A7F0AD0B0F5FA7F79 +:10D6300007D0FA2805D04FF07A71882007F06DFBEB +:10D6400003E0C103882007F068FB002002BD80B51D +:10D6500007F047FF08F0D0FD00280CD008F0CCFD03 +:10D6600059230FF234220FF24821FFF7C1FFBDE822 +:10D67000014008F0C1BD09F027FB00280CD009F0DB +:10D6800023FB5A230FF210220FF22421FFF7B0FFE1 +:10D69000BDE8014009F018BB09F0A6FD00280CD038 +:10D6A00009F0A2FD5B230FF2F0120FF20421FFF745 +:10D6B0009FFFBDE8014009F097BD0AF053FA00282A +:10D6C0000CD00AF04FFA5F230FF2CC120FF2E011E8 +:10D6D000FFF78EFFBDE801400AF044BA0AF0F0FC03 +:10D6E00000280CD00AF0ECFC60230FF2AC120FF211 +:10D6F000C011FFF77DFFBDE801400AF0E1BC0BF06F +:10D70000EAFA00280CD00BF0E6FA61230FF2881237 +:10D710000FF29C11FFF76CFFBDE801400BF0DBBA84 +:10D720000220FFF766FF4FF4FA70FFF778FF4FF023 +:10D730000071882007F097FBBDE8014007F00CBF9F +:10D7400010B54FF47A720023EBF7D4FC044607F0CF +:10D75000E9FA204607F0F7FA204607F019FB002007 +:10D7600010BD80B54FF47A720023EBF7C3FC07F0CD +:10D77000FCFA002002BD00002DE9F04784B00E46FF +:10D7800017469A46DDF838804FF00009DDE90C4570 +:10D79000002803D022462B4607F053FC002E0ED063 +:10D7A000B6F90000009000A8B6F902104160B6F981 +:10D7B0000410816022462B46494607F00DFC002FDD +:10D7C00024D09FED270AD7ED000A60EE800AFDEE17 +:10D7D000E00ACDED000A00A8D7ED010A60EE800A4C +:10D7E000FDEEE00AC0ED010AD7ED020A20EE800A44 +:10D7F000BDEEC00A80ED020A22462B4648F0200109 +:10D8000007F03AFC002801D04FF02009BAF1000FD0 +:10D810000DD022462B460021504607F069FC002817 +:10D8200001D1012004E04FF02009002000E0002099 +:10D83000002802D007F006FD8146484604B0BDE846 +:10D84000F08780B50A4600A909F064FA02BD80B5E8 +:10D850000A4600A909F0BCFA02BD09F0BABB0000F3 +:10D860000000004280B507F099FC002002BD80B5A1 +:10D8700007F082FC002002BD80B507F083FC002089 +:10D8800002BD80B507F084FC002002BD0BF09BBDFB +:10D8900007F043BA07F0E2BA696E765F696E6974A1 +:10D8A0005F696E76656E73656E73655F6170690042 +:10D8B000433A5C50726F6A6563745C4E6F74653393 +:10D8C0005F466972655C4E6F7465335F4669726569 +:10D8D0005C496E76656E53656E73655C6D706C5CED +:10D8E000696E76656E73656E73655F6170692E63D0 +:10D8F0000000000038B50C461546010A8DF80010EE +:10D9000000A9487048782018B0F5807F02DD4FF0FC +:10D91000FF3032BD00AB02226D2168200BF00EFFFC +:10D92000002802D04FF0FF3032BD2B4622466F2137 +:10D9300068200BF003FF002802D04FF0FF3032BD0B +:10D94000002032BD38B50C461546010A8DF800108E +:10D9500000A9487048782018B0F5807F02DD4FF0AC +:10D96000FF3032BD00AB02226D2168200BF0E6FED5 +:10D97000002802D04FF0FF3032BD2B4622466F21E7 +:10D9800068200BF0F3FE002802D04FF0FF3032BDCC +:10D99000002032BD2DE9F04F93B005460E461446E7 +:10D9A000002E02D14FF0FF3065E00027A8460AE0C4 +:10D9B000B9F1010F05DB4A4639460FF258700BF0FA +:10D9C000E4FE5744BFB2474544DA4FF0000907EB85 +:10D9D000060BA8EB0700412802DB4FF0400A01E0EC +:10D9E000A5EB070A5A46514689B23846FFF782FF2F +:10D9F000002802D06FF001003DE002AA514689B232 +:10DA00003846FFF79FFF002802D06FF0020032E097 +:10DA10001FFA8AFA524602A958460BF0C3FE0028A4 +:10DA200004D009F1010964200BF0B3FEA9F1010053 +:10DA30000328CED3B9F1040FBADB9DF8080000909B +:10DA4000BB5D524639460FF2B0600BF09EFE6FF0A0 +:10DA5000030010E0200A8DF804008DF8054001ABAA +:10DA60000222702168200BF069FE002802D06FF0BE +:10DA7000040000E0002013B0BDE8F08F90F9001022 +:10DA8000012901DB00207047002901D504207047DF +:10DA900090F90110012901DB01207047002901D50F +:10DAA0000520704790F90200012801DB0220704731 +:10DAB000002801D5062070470720704738B5044676 +:10DAC000FFF7DCFF0546E01CFFF7D8FF45EAC0057D +:10DAD000A01DFFF7D3FF45EA801080B232BD70B5BC +:10DAE00086B0044605A80FF244610A68026004A8E3 +:10DAF0000FF23C610A68026003A80FF238610A68FD +:10DB0000026002A80FF230610A68026004F00300AC +:10DB100005A9425C8DF8042001ADC4F3C102525C3A +:10DB20006A70C4F38112515CA97004A9405C8DF83D +:10DB3000000000AEC4F3C100405C7070C4F38110FB +:10DB4000405CB07001AA032140F22640FFF7D2FEEC +:10DB5000002802D04FF0FF304DE000AA032140F230 +:10DB60002A40FFF7C7FE002802D04FF0FF3042E006 +:10DB7000032203A901A8E6F7BDFE032202A900A81B +:10DB8000E6F7B8FE60070BD59DF8040040F00100F1 +:10DB90008DF804009DF8000040F001008DF80000B1 +:10DBA000A00607D5687840F001006870707840F0F2 +:10DBB00001007070E00507D5A87840F00100A8705A +:10DBC000B07840F00100B07001AA032140F23F405C +:10DBD000FFF790FE002802D04FF0FF300BE000AAC4 +:10DBE000032140F23140FFF785FE002802D04FF0BC +:10DBF000FF3000E0002006B070BD10B504460022E2 +:10DC0000382168200BF088FD002824D10022232130 +:10DC100068200BF081FD00281DD100226A216820B8 +:10DC20000BF07AFD002816D1002C17D00C226A21A7 +:10DC300068200BF071FD00280DD1C0226A216820F8 +:10DC40000BF06AFD002806D10022232168200BF08A +:10DC500063FD002802D04FF0FF3010BD002010BD42 +:10DC600010B582B004000CD0C0208DF80000C22096 +:10DC70008DF80100C4208DF80200C6208DF8030045 +:10DC800004E004228B2100A8E4F7E8FA00AA0421AA +:10DC900040F6C410FFF72EFE2046401E8041C043D0 +:10DCA000C00FFFF7AAFF16BD10B582B004000CD05C +:10DCB00020208DF8000028208DF8010030208DF8FC +:10DCC000020038208DF8030004E00422A32100A8FC +:10DCD000E4F7C4FA00AA042140F6CA10FFF70AFECE +:10DCE0002046401E8041C043C00FFFF786FF16BD8F +:10DCF00030B585B002A90FF2444238CA38C10528B0 +:10DD000002D24FF0FF3021E0052190FBF1F0401EE0 +:10DD100080B20146090A8DF800108DF8010000AAB2 +:10DD2000022140F21620FFF7E5FD002802D04FF057 +:10DD3000FF300BE002AA0C2140F6ED10FFF7DAFDF0 +:10DD4000002802D04FF0FF3000E0002005B030BDC9 +:10DD500080B5002801D0022200E00022382168208E +:10DD60000BF0DAFC002802D04FF0FF3002BD00209B +:10DD700002BD70B584B0044625466D1EAD41ED432D +:10DD8000ED0F00208DF8000000AEB2207070B820BA +:10DD9000B070C220F07000AA04216820FFF7AAFD2D +:10DDA000A3208DF80000600606D5C0207070C82042 +:10DDB000B070C220F07003E0A3207070B070F070FB +:10DDC000200606D5C4203071CC207071C620B071F9 +:10DDD00003E0A32030717071B071A3208DF80700AB +:10DDE0008DF808008DF8090000AA0A2140F6D3102A +:10DDF000FFF780FD0320044203D020208DF80000AF +:10DE000002E0D8208DF8000000AA012140F6E210BF +:10DE1000FFF770FDD8208DF8000000AA012140F620 +:10DE20000200FFF767FD600703D50120FFF718FF29 +:10DE300002E00020FFF714FFE00603D50120FFF702 +:10DE400033FF02E00020FFF72FFF2846FFF7D5FE43 +:10DE5000002004B070BD2DE9F0418CB004460D46A1 +:10DE6000164600AB0222722168200BF07FFC0028CE +:10DE700002D04FF0FF30E3E09DF800009DF8011064 +:10DE800041EA0028139FB8F11C0F04D2002038701B +:10DE90004FF0FF30D4E0B8F5007F19DD01AB02226E +:10DEA0003A2168200BF062FC002803D00FF2982082 +:10DEB0000BF06BFC9DF80400C00609D50120FFF7AC +:10DEC0009CFE0FF2A0200BF060FC6FF00100B7E0A9 +:10DED00001AB1C22742168200BF048FC002806D0FE +:10DEE0000FF2A0200BF051FC4FF0FF30A8E01C20F7 +:10DEF00098FBF0F0401E387001A89DF8041042789D +:10DF0000120442EA0161827841EA0221C278114397 +:10DF1000316001794279120442EA0161827941EA71 +:10DF200002219DF80B2011437160017A9DF80D20AC +:10DF3000120442EA01619DF80E2041EA02219DF897 +:10DF40000F201143B160017B9DF81120120442EAB9 +:10DF500001619DF8122041EA02219DF8132011432E +:10DF6000F160017C9DF8152042EA012129809DF88D +:10DF700016109DF8172042EA012169809DF81810BB +:10DF80009DF8192042EA0121A9809DF81A109DF8F8 +:10DF90001B2042EA01212180007E9DF81D1041EAEC +:10DFA000002060809DF81E009DF81F1041EA0020AF +:10DFB000A080002032E000EB4001454A8B1893F925 +:10DFC000061093F9052093F90430B4F9006013FBAF +:10DFD00006F6B4F9027012FB0766B4F9047011FB7F +:10DFE0000766B5F9007013FB07F3B5F9027012FB71 +:10DFF0000732B5F9043011FB0321B6F5004F01DB00 +:10E0000047F6FF76B1F5004F01DB47F6FF7108AA2E +:10E0100022F810600AAA22F81010401C0328CADB5C +:10E0200000200AE008A931F8101024F810100AA9FD +:10E0300031F8101025F81010401C0328F2DB0020E6 +:10E040000CB0BDE8F08138B5040002D14FF0FF30CC +:10E0500032BD1F4D2878002801D0002032BD092292 +:10E060002146281DE6F746FC00AB02226B21682002 +:10E070000BF07CFB9DF80000400604D500226B21CC +:10E0800068200BF049FBC8234FF480620FF238116F +:10E0900040F66130FFF77EFC002818D12046FFF7DC +:10E0A0000DFDFFF71CFD002802D06FF0060032BD09 +:10E0B0000020FFF74DFE002802D06FF0070032BDB0 +:10E0C000012028700FF2D8000BF05FFB002032BD5A +:10E0D000807A002010B50C460021002800D0C42111 +:10E0E0000846FFF746FE002805D12046FFF700FE50 +:10E0F000002800D1002010BD0A444D505F45525207 +:10E1000028256429282564292825642928256429A7 +:10E11000200A00000A444D505F545249414C2825C2 +:10E12000642928256429200A000000004CCD6C00D9 +:10E130000CC92C003656760026466600FEF2ABC4AB +:10E14000AAF1DFDFBBAFDFDF0A5B444D505D204645 +:10E1500049464F20737461747573206572726F72D3 +:10E160000A0000000A5B444D505D202D20464946C0 +:10E170004F206F766572666C6F77206572726F7272 +:10E180000A0000000A5B444D505D202D20464946A0 +:10E190004F2072656164206572726F720A00000020 +:10E1A0005B444D505D4669726D77617265206C6F9E +:10E1B00061646564207375636365737366756C6C05 +:10E1C00079212121210A00000000700000000024B4 +:10E1D000000000020003000000650054FFEF000093 +:10E1E000FA80000B12820001200030C30E8C8CE9F3 +:10E1F00014D5400213710F8E3883F8833000F883F2 +:10E20000258EF8833000F883FFFFFFFF0FFEA9D6AD +:10E21000240004001A8279A10000003CFFFF0000E6 +:10E220000010000038836FA2003E03304000000061 +:10E2300000B2BAC23E8000002000000000000000D2 +:10E240004000000060000000000C0000000C186E90 +:10E25000000006920A16C0DF000000000000000265 +:10E26000000000040000000700000000FFFF0B2B6F +:10E2700000001657000003590000000000001DFABE +:10E2800000026C1D000000004000000000000000C3 +:10E29000000000000000000000000000001942B56E +:10E2A000000039A20000B365D90E9FC91DCF4C34C0 +:10E2B00030000000500000003BB67AE80064000027 +:10E2C00000C8000000000000000000000000000086 +:10E2D000000000000000000000000000000000003E +:10E2E000000000000000000000010000000000002D +:10E2F000000000000000000000001072000000405C +:10E30000000000000000000005DC0000000000002C +:10E3100000000000000000000000000000000258A3 +:10E3200000000000000000C8000000000000000025 +:10E3300000010000000200000000000000000000DA +:10E3400000000000000000000000000000000000CD +:10E3500000000000000000000000000000000000BD +:10E3600000000000000000000000000000000000AD +:10E370000000000000001000400000000000000647 +:10E380000000B26A00000000000000000000000071 +:10E39000000000000000000000000000000000007D +:10E3A0000000000000000000000000250000000048 +:10E3B00016A000000000100000001000002F000058 +:10E3C000000001F40000100000280000FFFF45815C +:10E3D000FFFFFA720000000000000000004400058A +:10E3E0000005BAC6004778A2000000010000000046 +:10E3F00000000600000000140000254D002F706D85 +:10E40000000005AE000C02D000000000000000007B +:10E410000000000000000000001B000000000000E1 +:10E420000000000000000000006400000008000080 +:10E4300000000000000000000000000000000000DC +:10E4400000000000000000000000000000000000CC +:10E4500000000000000000000000000000000000BC +:10E4600000000000000000000000000000000000AC +:10E47000000000000000000000000000000000009C +:10E480000000000000000000001B00000000000071 +:10E4900000000000000E000E00000AC7000400008B +:10E4A00000000032FFFFFF9C00000B2B0000000269 +:10E4B0000000000100000064FFE500000000000013 +:10E4C000000000000000000000000001000000004B +:10E4D0000001000000000000000180000001800039 +:10E4E00000018000002426D300000000000000008E +:10E4F000000600100096003C000000000000000034 +:10E5000000000000000000000C0A4E68CDCF770923 +:10E5100050166759C619CE820000000000000000A6 +:10E5200000000000000000000000000000000000EB +:10E5300017D7840003000000000000000000000066 +:10E54000C7938F9D1E1B1C190000000000000000D7 +:10E5500000000000000000000000000000000000BB +:10E5600002031885000040000000000300000003C3 +:10E57000000000000000000040000000000000005B +:10E58000000000000000000000000000000000008B +:10E59000000000000000000000000000000000007B +:10E5A000000000000000000000000000677DDF7E2A +:10E5B00072902E554CF6E688000000000000000026 +:10E5C0000000000000000000D8DCB4B8B0D8B9AB3F +:10E5D000F3F8FAB3B7BB8E9EAEF132F51BF1B4B8C7 +:10E5E000B08097F1A9DFDFDFAADFDFDFF2AAC5CDB8 +:10E5F000C7A90CC92C97F1A989264666B28999A9A1 +:10E600002D557DB08AA896365676F1BAA3B4B2805D +:10E61000C0B8A89711B28398BAA3F0240844106434 +:10E6200018B2B9B49883F1A329557DBAB5B1A383C3 +:10E6300093F0002850F5B2B6AA839328547CF1B920 +:10E64000A3829361BAA2DADEDFDB819AB9AEF5600C +:10E650006870F1DABAA2DFD9BAA2FAB9A38292DB62 +:10E6600031BAA2D9BAA2F8DFB9A3A3A3A3A3B8A2CF +:10E67000DFDFDFBAA0DFDFDFD8F1B9A1B280C0B041 +:10E6800089A0C3C5C7B181B497A011B590A1F024EA +:10E690000844106418F19081A02D553DF2A5D0F8E2 +:10E6A000F9D1D9F8F180A2C3C5C7D8F3A2DEF182AF +:10E6B00090A42D557D8494F5A120D9F3A2F8D8F526 +:10E6C000A140D9F3A2F8D8F5A160D9F3A2F8D8F205 +:10E6D000B9A2F8F9D1D9A6DEA5D0DEF41AD8F2860F +:10E6E00096A109D1DBF411D8F211D1DBF41CD8F2D8 +:10E6F00019D1DBF414D8F410D8F3A2F8F9D1DAF276 +:10E70000A6F8F1A5DED8F4A11616D8F1A5F8A185D2 +:10E710009509D9F1A5DEF2A5D0DEA6F8D8F4A109B5 +:10E72000D8F3A2F8F9D1F4D90819DA42F2A2DEF44A +:10E730000BD8F1A5F8A1859519DAF407D8F2A6DE71 +:10E74000A5D0DED8F1B8AAB38DB4980D355DB2B6B8 +:10E75000BAAF8C96198F9FA70E161EB49AB8AA87C7 +:10E760002C547CBAA4B08AB691325676B28494A462 +:10E77000C808CDD8B8B4B0F19982A82D557D98A815 +:10E780000E161EA22C547C92A4F02C5078F184A872 +:10E7900098C4CDFCD80DDBA8FC2DF3D9BAA6F8DAC5 +:10E7A000BAA6DED8BAB2B68696A6D0F3C841DAA623 +:10E7B000C8F8D8B0B4B882A892F52C548898F1352E +:10E7C000D9F418D8F1A2D0F8F9A884D9C7DFF8F89D +:10E7D00083C5DADF69DF83C1D8F40114F1A8824E62 +:10E7E000A884F311D182F5D992289788F109F41CF5 +:10E7F0001CD884A8F3C0F9D1D99782F129F40DD897 +:10E80000F3F9F9D1D982F4C203D8DEDF1AD8F1A224 +:10E81000FAF9A88498D9C7DFF8F8F883C7DADF696E +:10E82000DFF883C3D8F40114F198A8822EA884F3EA +:10E8300011D182F5D992509788F109F41CD884A897 +:10E84000F3C0F8F9D1D99782F149F40DD8F3F9F969 +:10E85000D1D982F4C403D8DEDFD8F1AD8898CCA832 +:10E8600009F9D98292A8F57CF1883ACF944A6E983A +:10E87000DB6931DAADF2DEF9D88795A8F221D1DA79 +:10E88000A5F9F417D9F1AE8ED0C0C3AE82C684C349 +:10E89000A88595C8A588F2C0F1F4010EF18E9EA856 +:10E8A000C63E56F554F18872F40115F19845856E0F +:10E8B000F58E9E0488F142985A8E9E068869F4016E +:10E8C0001CF1981E1108D0F504F11E97020298362B +:10E8D00025DBF9D985A5F3C1DA85A5F3DFD88595C0 +:10E8E000A8F309DAA5FAD88292A8F578F1881A84F3 +:10E8F0009F26889821DAF41DF3D8879F39D1AFD9A4 +:10E90000DFDFFBF9F40CF3D8FAD0F8DAF9F9D0DF4D +:10E91000D9F9D8F40BD8F3879F39D1AFD9DFDFF419 +:10E920001DF3D8FAFCA869F9F9AFD0DADEFAD9F804 +:10E930008F9FA8F1CCF398DB45D9AFDFD0F8D8F1A1 +:10E940008F9FA8CAF38809DAAF8FCBF8D8F2AD97BA +:10E950008D0CD9A5DFF9BAA6F3FAF412F2D8950D09 +:10E96000D1D9BAA6F3FADAA5F2C1BAA6F3DFD8F183 +:10E97000BAB2B68696A6D0CAF349DAA6CBF8D8B012 +:10E98000B4B8D8AD84F2C0DFF18FCBC3A8B2B686DD +:10E9900096C8C1CBC3F3B0B48898A821DB718D9D14 +:10E9A00071859521D9ADF2FAD88597A828D9F408B0 +:10E9B000D8F28D29DAF405D9F285A4C2F2D8A88D4F +:10E9C0009401D1D9F411F2D88721D8F40AD8F2846D +:10E9D00098A8C801D1D9F411D8F3A4C8BBAFD0F21C +:10E9E000DEF8F8F8F8F8F8F8F8D8F1D8B8B4B09735 +:10E9F00086A8319B069907AB9728889BF00C2014BA +:10EA000040B0B4B8F0A88A9A285078B79BA829518A +:10EA100079247059446938644831F1BBAB88002CC3 +:10EA2000547CF0B38BB8A804285078F1B088B49720 +:10EA300026A85998BBABB38B02264666B0B8F08ABD +:10EA40009CA82951798B2951798A2470598B205897 +:10EA5000718A4469388B3940688A6448318B3049FF +:10EA60006088F1AC002C547CF08CA804285078F11C +:10EA7000889726A85998AC8C02264666F0899CA8EF +:10EA8000295179247059446938644831A98809208A +:10EA90005970AB11384069A8193148608CA83C41C5 +:10EAA0005C207C00F187981986A86E767EA99988EB +:10EAB0002D557DD8B1B5B9A3DFDFDFAED0DFAAD049 +:10EAC000DEF2ABF8F9D9B087C4AAF1DFDFBBAFDF64 +:10EAD000DFB9D8B1F1A38EC6DFB084F2C8F8F9D996 +:10EAE000DED89385F14AB183A308B5839A0810B79D +:10EAF0009F10D8F1B0BAAEB08AC2B2B68E9EF1FB0A +:10EB0000D9F41DD8F9D90CF1D8F8F8AD61D9AEFB1C +:10EB1000D8F40CF1D8F8F8AD19D9AEFBDFD8F4165B +:10EB2000F1D8F8AD8D61D9F4F4ACF59C9C8DDF2B58 +:10EB3000BAB6AEFAF8F40BD8F1AED0F8AD51DAAE01 +:10EB4000FAF8F1D8B9B1B6A3839C08B9B1839AB5E4 +:10EB5000AAC0FD3083B79F10B58B93F20202D1ABF0 +:10EB6000DADED8F1B080BAABC0C3B284C1C3D8F387 +:10EB7000B9ACDED8B1B9F38BA391B609B4D9B9ACAD +:10EB8000F8ABDEB0879CB9A3DDF1B38B8B8B8B8B9D +:10EB9000B087A3A3A3A3B080B490F2A3A3A3A3A31D +:10EBA000A3A3A3A3A3F1B087B59AA3F39BA3A3DC6C +:10EBB000BAACDFB9A3A3A3A3A3A3A3A3A3A3A3A3B3 +:10EBC000A3A3A3D8F3B9ACF8F9D1D9F41BD8F3FABD +:10EBD000F9D1D9F41BD8F2B1B5B98CACF8F9D1D9C7 +:10EBE000C2D8F2F9D9DEF40913DAF2DDC6DCF43169 +:10EBF00011D8F2ABFA8B9BA349D9F40706DAF2B924 +:10EC0000ABDFFED8F1BBB3B7AAF9DAFFD9809AAA75 +:10EC100028B48098A720B79787A86688F07951F123 +:10EC2000902C870CA781976293F071716085940195 +:10EC300029517990A5F1284C6C870C95188578A3FB +:10EC40008390284C6C886CD8F3A28200F210A892B2 +:10EC50001980A2F2D926D8F188A84DD948D896A80B +:10EC60003980D93CD89580A839A68698D92CDA87DE +:10EC7000A72CD8A8899519A980D938D8A88939A9E5 +:10EC800080DA3CD8A82EA83990D90CD8A89531980C +:10EC9000D90CD8A809D9FFD801DAFFD89539A9DA53 +:10ECA00026FFD890A80D8999A810809821DA2ED82F +:10ECB0008999A83180DA2ED8A886963180DA2ED8A4 +:10ECC000A8873180DA2ED8A88292F34180F1D92E1C +:10ECD000D8A882F31980F1D92ED882ACF3C0A280D3 +:10ECE00022F1A62EA72EA92298A829DAACDEFFD8F9 +:10ECF000A2F22AF1A92E8292A8F23180A696F1D929 +:10ED000000F1F1F1AC8C9C0C30ACDED0DEFFD88C85 +:10ED10009CACD010ACDE8092A2F24C82A8F1CAF278 +:10ED200035F19688A6D900D8FF00000010B5002460 +:10ED3000E3F7BAFA002800D00124204610BD0000F5 +:10ED400038B500200246DFF8A44403E004EB80015C +:10ED50008A63401C0928F9DB1046E066A06664203F +:10ED600020606060DFF88804A060B5EE000A84EDE2 +:10ED7000030A84ED040A84ED050A84ED060A84ED95 +:10ED8000070ADFF87004206205206062A062104666 +:10ED900003E004EB80018A63401C0928F9DB10467C +:10EDA0006067A067E06704F180057C220146284681 +:10EDB000E3F754FA0C22002104F12C00E3F74EFA99 +:10EDC000256731BD2DE9F04106460F4690461C46A9 +:10EDD000DFF8185485ED0B0AF0EE601AF1EE611AB7 +:10EDE000C5ED0C1AB1EE410A85ED0D0A0A2205F1B6 +:10EDF0002C01286F00F004FA00F040F8022801D03E +:10EE000004280ED1A86F401CA867142198FBF1F1CB +:10EE1000884202DB0020E8670CE0E86F401CE867EE +:10EE200008E0082801D0102804D1E86F401CE867EA +:10EE30000020A867142096FBF0F0A96F814201DB47 +:10EE400001206867142097FBF0F0E96F814201DB35 +:10EE500002206867686F012803D0022801D00020D3 +:10EE60006867696F080005D021700021A967E9670C +:10EE7000696701E000212170BDE8F0812DE9F843C8 +:10EE80002DED048B9FED9F8AD84C00202066606694 +:10EE9000E06E461CE666A76ED74D0A2F36DAD4F828 +:10EEA00070900A220021484600F0C3F980460A22E9 +:10EEB0000121484600F0BDF904EB870106EB86020C +:10EEC00092008A63012F1FDB98ED000AD0ED000A43 +:10EED00030EE600AD8ED010A90ED011A70EEC10A19 +:10EEE00098ED021AD0ED021A31EE611A05EB870097 +:10EEF00020EE000A00EEA00A01EE010A80ED060AEB +:10EF00008A6B496B511AC163781CA0660A2E01DA1C +:10EF100003202867A06E0A28C0F2DD80401EA0668C +:10EF20000A221146206F04F01FFC85ED040A0A2214 +:10EF30001146206F04F036FC85ED050A0A221146C1 +:10EF4000206F04F04DFC85ED060A002006E005EB7D +:10EF50008001D1ED070A38EE208A401C0928F6DB33 +:10EF6000D5ED040AB2EE041AC0EE818AD5ED050A89 +:10EF700080EE819AF2EE040AC0EE209AE06E0A2832 +:10EF800005DBC5ED018A85ED029AC5ED039A0026E1 +:10EF90000FE00A22C6F1090109B2206F00F049F919 +:10EFA00095ED031AD5ED020A95ED010A00F0ACF8D3 +:10EFB000761C0A2EEDDB606A216E88423ADAA06B7D +:10EFC0002978002908D1686601212970C5ED018AD8 +:10EFD00085ED029AC5ED039AA16A626E91420CDA40 +:10EFE000697800290BD1A86601216970C5ED018AF5 +:10EFF00085ED029AC5ED039A01E000216970216850 +:10F00000AA6E821A914208D26A78002A05D000209E +:10F01000A870E870012028674CE06A6E801A81426F +:10F0200046D22878002843D00020A870E87002203B +:10F0300028673FE0C5ED018A85ED029AC5ED039A88 +:10F04000002028706870A878002801D10120A870DD +:10F050009FED640A28EE000AB5EE400AF1EE10FAC0 +:10F0600003DC9FED610A28EE000AD4ED020AB3EE3C +:10F07000041A60EE810AF4EE400AF1EE10FA07D5A8 +:10F08000E878002806D1A06BE8660120E87001E06E +:10F090000020E8706068A0F5FA70A16BEA6E891A2A +:10F0A000884205D2E878002802D00420286701E0D1 +:10F0B0000320286700200CE004EB8001CA6B8A6300 +:10F0C000082805DA05EB80010A6ACA614A6C0A64FD +:10F0D000401C0928F0DB286F012806D00DD3032837 +:10F0E00007D004D3042806D007E0022006E004205D +:10F0F00004E0082002E0102000E00020BDEC048BBA +:10F10000BDE8F28300000000D0ED001A31EEC00A25 +:10F110003A4981ED000AD0ED011A71EEE00AC1ED25 +:10F12000010AD0ED021A31EEC11A81ED021AB5EED4 +:10F13000400AF1EE10FA03D5B1EE400A81ED000A63 +:10F14000F5EE400AF1EE10FA03D5B1EE600A81ED5A +:10F15000010AB5EE401AF1EE10FA03D5B1EE410AFC +:10F1600081ED020A91ED000A2048D0ED030AB4EEC9 +:10F17000600AF1EE10FA13D5D1ED010A90ED041AF0 +:10F18000F4EE410AF1EE10FA0AD5D1ED020A90ED43 +:10F19000051AF4EE410AF1EE10FA01D5012200E061 +:10F1A0000022D0ED060AB4EE600AF1EE10FA14D592 +:10F1B00091ED010AD0ED070AB4EE600AF1EE10FA03 +:10F1C0000BD591ED020AD0ED080AB4EE600AF1EE1B +:10F1D00010FA02D5416E491C4166016E5118016654 +:10F1E0007047000000007A4400007AC4C008012083 +:10F1F000000040413333B33E1C010120B8290120F7 +:10F200000388934201D30023038003885B1C03809F +:10F210009BB2934201D300220280028802EB420398 +:10F2200000EB8300001D91EC030A80EC030A01202F +:10F230007047B0F90030591A09B2002901D511FA06 +:10F2400082F109B201EB410200EB8200001D704720 +:10F250002DE9F041DFF8B86B542200213046E2F787 +:10F26000FDFFDFF8B04B0C2200212046E2F7F6FF4D +:10F27000DFF8A45B1C22002105F11800E2F7EEFF85 +:10F280001C22002106F15400E2F7E8FF0020E061B3 +:10F290004FF47A720146DFF8840BE2F7DFFF4FF498 +:10F2A0007A720021DFF8780BE2F7D8FF00202062A5 +:10F2B0006062DFF8706B7064B064A062E062F0645A +:10F2C0002063DFF8647BB8616063A063E0630120C2 +:10F2D00020640020306570654FF0FF306064A064EA +:10F2E0000020E064B065F861F065386230667066F1 +:10F2F000B0661C22014605F13400E2F7AFFF0020A2 +:10F30000F0667063082201463046E2F7A7FF2C2220 +:10F31000002106F10800E2F7A1FF42F210703084EC +:10F32000708400207061022030830020B06038803B +:10F330000C2201462846E2F791FFDFF8600C686076 +:10F34000DFF85C0C28604FF0FF302881002020732C +:10F350002065B063E0813C22014607F12400E2F71A +:10F360007DFF00203866306778807866F063B0678C +:10F370007067606506F184082C2206F1080140469A +:10F38000E5F7B8FAC4F858800020E06520663867D1 +:10F3900060667867B867E066A066A0676067206708 +:10F3A0000120A86568652865002068662866E8650C +:10F3B00028220146DFF8EC0BE2F750FF0020F86747 +:10F3C0000C22014604F11000E2F748FF0C22002154 +:10F3D00005F10C00E2F742FF1022002107F10800BE +:10F3E000E2F73CFF1022002106F1B000E2F736FF01 +:10F3F0000620A6F840000020F880C6F88000F067DC +:10F40000E067DFF8A80DB8660020F866BDE8F08177 +:10F4100010B584B0DFF8004A0C22214600A8E5F7B9 +:10F4200069FAFFF715FF0C2200A92046E5F762FAFA +:10F430001FBD00002DE9F84F2DED0C8B84B000208E +:10F44000029082460446DFF8E05995ED1E8AD5ED1C +:10F45000078AC5ED1E8ADFF8CC69D6ED169AC5ED90 +:10F46000079ADFF8B07997ED139AB8EE490ADFED05 +:10F47000DC0A80EE80AA86ED16AAD7F834B0786C44 +:10F48000ABEB0000FA30FA21B0FBF1F1FA2202FBFB +:10F4900011081FFA88F8B8F14C0F02DA386C01280D +:10F4A00004D12046F0630220A88091E1D6F8549060 +:10F4B000B9F1040F30D3F4EE698AF1EE10FA2BD5CE +:10F4C000F4EE4A9AF1EE10FA26D51AEE100AE8F791 +:10F4D000C5FD02460B46CDE9002318EE900AE8F779 +:10F4E000BDFDDFF8C82ADFF8C83AE3F7BDFBDDE968 +:10F4F0000023E3F797FC0FD29FEDBA0AB4EE40AABF +:10F50000F1EE10FA08DBC6ED169AC5ED078A85ED17 +:10F510001E8A0320A880B7E1D6ED11AAC6ED12AA73 +:10F5200096ED13BA87ED0CBA404600EE100AB8EE1D +:10F53000400AD7ED090AC0EE800A97ED0B1A81EE5A +:10F54000001A20467064F064786C214621E0401C6B +:10F5500080B2FA2800D12046DFF8C02802EB8002F2 +:10F56000D2ED001A71EEE01A96ED112A01EEA12AF1 +:10F5700086ED112ADFF8A82802EB8002D2ED001AEE +:10F5800071EEC11A96ED132A01EEA12A86ED132A17 +:10F59000491C89B24145DADBD6ED110AC0EE80BACA +:10F5A000C6ED11BAD6ED130A80EE80CA86ED13CAF5 +:10F5B000D5ED1DCAC5ED1CCA97ED170AD7ED180A7F +:10F5C00030EE60DA85ED1DDA404600F037FC0128A8 +:10F5D00002D12046F063FBE0B9F1000F05D1B08FF6 +:10F5E000052802DB04465046B087B9F1000F05D16B +:10F5F000F08F052802DB04195046F08719FA84F0D1 +:10F60000002830D19FEDC08B3CEE0B0A10EE100AA3 +:10F61000E8F724FD53EC182BE3F726FB5246DFF8FE +:10F62000B43BE3F7FFFB16D33BEEAA0A10EE100A39 +:10F63000E8F714FD53EC182BE3F716FB5246DFF8FE +:10F64000983BE3F7EFFB06D3B3EE040AB4EE40DADF +:10F65000F1EE10FA07D5B08F401CB087C7F848B05C +:10F660000620A880B4E0B08F002802D004195046CC +:10F67000B08719FA84F0002819D1B7EE000AB4EE69 +:10F6800040AAF1EE10FA02D50720A880A0E09FED75 +:10F69000A00AB4EE40AAF1EE10FA05DBF08F401C90 +:10F6A000F0870820A88093E05046F08703E0F08FB1 +:10F6B00004195046F087B0EE6B1AF0EE4C0AB0EE2B +:10F6C0004A0A4146A4B2204600F074FC012808D141 +:10F6D000C6ED169A86ED13BAC5ED1DCAC6ED11AA80 +:10F6E00076E09FED8C0AB4EE40AAF1EE10FA02DB50 +:10F6F000DFF8E80AB0655046B087B9F1000F0ED1C7 +:10F7000096ED160A86ED170A85ED080AC7ED0ABAC6 +:10F7100085ED06CA87ED19DA00F012FB4DE0B6EE72 +:10F72000008A484600F00CFB012818D196ED160A15 +:10F73000F0EE000A20EE200A86ED160A4FF0010ACC +:10F740006BEE880AC6ED110A2CEE081A86ED131A24 +:10F75000C6ED120A87ED0C1A85ED070A641C96EDBA +:10F76000160AD5ED070A70EE200A60EE880AC6ED8B +:10F77000170A96ED111AD6ED121A31EE211A21EE62 +:10F78000081A87ED0A1A96ED131AD7ED0C1A31EE06 +:10F79000211A21EE081A85ED061AB4EE600AF1EE80 +:10F7A00010FA02D4BAF1010F01D185ED080A3CEE3E +:10F7B0008D0A20EE080A87ED190A204680B200F073 +:10F7C000ABF800F067F8C7F848B001200290786500 +:10F7D000DFF8D0070299012906D10121018005E057 +:10F7E00000007A4401004040A9880180A4B244602E +:10F7F00080ED029AA0F80C80718FC181716C01615B +:10F80000F16C4161B16D8161B96AC161A96901623F +:10F81000F16D4162C7F844B00020F8647862F86284 +:10F8200038641022014605F10800E2F717FD0C22AA +:10F83000002107F11000E2F711FD0020E867F08ACF +:10F8400000281CD1D6F8800000280DD0306DF1685A +:10F85000401AB6F84010B0EB510F02DB00203083A5 +:10F860000DE0012030830AE0B08FF18F11FA80F0B3 +:10F87000032802DB0120308301E002203083DFF81F +:10F880002C09A8660020E866029804B0BDEC0C8B39 +:10F89000BDE8F28F38B50025DFF888450120C4F8AF +:10F8A000800000F069FCA060606DB4F840108842F0 +:10F8B00015D3206DE060206E6062606EA062A06E65 +:10F8C000E062E06D2061606F2063A08EA082E08E18 +:10F8D000E0820120E06705460020C4F88000284649 +:10F8E00032BDDFF84005C168016500214165416115 +:10F8F0000221018300214163816A4166016B8167B6 +:10F900000021C0F880107047000000000000E03FB8 +:10F91000676616400100A0402DE9F14F2DED088BE0 +:10F920004FF0000C60460146DFF8EC44DFF8F46469 +:10F93000BDF82020002A1ED0376D7A1E02F0070283 +:10F9400007F007039B5D9355D6F85480A8F1010298 +:10F950000723B2FBF3F3C3EBC303D21A04EB820217 +:10F960000723B8FBF3F3C3EBC303A8EB030304EBD8 +:10F9700083035B6B536396ED178AB0EE040AB4EE13 +:10F98000408AF1EE10FA08D496ED1C0AF0EE080A4F +:10F99000B4EE600AF1EE10FA02D50322B28601E05D +:10F9A0000422B286376D07F0070EB6F834800EF8E1 +:10F9B00006800825724607E0042B01D10CF1010CEA +:10F9C000521E00D508326D1E0ED09357032B01D165 +:10F9D000491C02E0042B00D1401C062DF0DB032B58 +:10F9E000EAD1ACF1010CEBE7F28EDFF83C341A807F +:10F9F00080B2814689B209EB010303EBD37A4FEA67 +:10FA00006A0A8A4509DBCA4504DA4FF0040CA6F8F5 +:10FA100036C013E0BCF1000F04D54FF0030CA6F87C +:10FA200036C00BE0BCF1010F04DB4FF0040CA6F86C +:10FA300036C003E01EF906C0A6F836C0B6F8369008 +:10FA4000B9F1040F00D008464A450AD0002030839F +:10FA5000F08A00281DD1706D04281AD3012030834C +:10FA600017E0052B10DB00EE100AB8EE400A00EE9E +:10FA7000903AF8EEE00A80EE200AF6EE080AB4EEBC +:10FA8000600AF1EE10FA02D50120308301E0022075 +:10FA90003083F0EE488AB7EE080AB4EE408AF1EE01 +:10FAA00010FA02D5F7EE088A08E09FEDA20AB4EE3C +:10FAB000408AF1EE10FA01DBF1EE028A6068E8F7A5 +:10FAC000CDFA41EC190B18EE900AE8F7C7FA41ECB1 +:10FAD0001A0B9FED99BBB8F1030F53EC1A2B2BD1E6 +:10FAE000DFF8F80ADFF8F81AE3F7BEF8DFF8F42ACF +:10FAF000DFF8F43AE3F7CAF982468B4653EC1A2B47 +:10FB0000DFF8E80ADFF8E81AE3F7AEF853EC1A2B4F +:10FB1000E3F7AAF802460B4650465946E2F7E4FFDF +:10FB200053EC192BE3F7A0F853EC1B2BE3F79CF8ED +:10FB3000E8F7BCFA306628E0DFF8B80ADFF8B81A50 +:10FB4000E3F792F8DFF8B42ADFF8B43AE3F79EF966 +:10FB500082468B4653EC1A2BDFF8A80ADFF8A81A66 +:10FB6000E3F782F853EC1A2BE3F77EF852465B4634 +:10FB7000E3F78CF953EC192BE3F776F853EC1B2BD6 +:10FB8000E3F772F8E8F792FA3066B4F90800022851 +:10FB900007D196ED180ADFEDA50A20EE200A86EDC2 +:10FBA000180A96ED189A96ED190A70EE099AC6EDA4 +:10FBB000199A29EE280ADFED9E0A20EE200A86ED2A +:10FBC0001A0AD6F854800720B8FBF0F0C0EBC0004A +:10FBD000A8EB000004EB800080ED0D0A0020F06629 +:10FBE000B8F1070F20D208E004EB850090ED0D1A64 +:10FBF00070EE810AC6ED1B0A6D1CD6ED1B0AADB274 +:10FC0000A845F1D201EE105AB8EE411AC0EE810AB1 +:10FC1000C6ED1B0A14E004EB800090ED0D1A70EEA7 +:10FC2000810AC6ED1B0A6D1CD6ED1B0AADB2284633 +:10FC30000728F0DBB1EE0C1AC0EE810AC6ED1B0AF4 +:10FC400010EE100AE8F70AFA41EC100B9FED79ABC1 +:10FC5000B9F1040F53EC102BDFF8600C0BD1DFF877 +:10FC6000601CE3F701F853EC1A2BE3F70FF9E8F700 +:10FC70001DFAB0670AE0DFF84C1CE2F7F5FF53EC21 +:10FC80001A2BE3F703F9E8F711FAB067B06FE8F75A +:10FC9000E5F9DFF8342CDFF8343CE2F7E5FF824683 +:10FCA0008B462068E8F7DAF952465B46E2F7DCFF5C +:10FCB00004460D4618EE100AE8F7D0F90022DFF8E6 +:10FCC000103CE2F7D1FF02460B460020DFF8041C8F +:10FCD000E3F750F922462B46E2F7C6FFE8F7E6F9CC +:10FCE00000EE100A86ED1E0AD6ED1D0A70EE800A9F +:10FCF000C6ED1D0A781C306508F101017165BDF87B +:10FD00002020002A11D01018306550187065BDF8F9 +:10FD1000200001EE100AB8EE411A41EE099AC6ED34 +:10FD2000199A41EE000AC6ED1D0ABDEC088BBDE82C +:10FD3000F18F000001009040B8ED221C1818783FA8 +:10FD4000F8B52DED028B0027002857D0354E96EDE3 +:10FD5000168AF06DE8F782F94FF06632DFF8783BEB +:10FD6000E2F782FF02460B4614461D4618EE100AC3 +:10FD7000E8F774F922462B46E3F754F804D2708F63 +:10FD8000022801DB012718E09FED7F0AB4EE408ACC +:10FD9000F1EE10FA11D5244890ED050ADFED7B0A4B +:10FDA000B4EE600AF1EE10FA07DBDFED790AB4EE8B +:10FDB000600AF1EE10FA00D50127012F1ED196ED51 +:10FDC0001C0AF0EE000AB4EE600AF1EE10FA0AD551 +:10FDD0009FED700AB4EE408AF1EE10FA03DB708FEB +:10FDE000022800DB0027104890ED1A0ADFED6A0AAE +:10FDF000B4EE600AF1EE10FA00D500270A48406917 +:10FE0000DFF8881D08603846BDEC028BF2BD0000AB +:10FE1000AC180120DC150120F419012028DD002098 +:10FE200010E10020780B01205C1601201EC47E3FEB +:10FE3000000070420000000000000C40F8B52DEDFD +:10FE4000048B06460024DFF8C07CDFF8C05CE88E37 +:10FE500003281DDA95ED160ADFED4E0AB4EE600AAE +:10FE6000F1EE10FA14DB95ED110AF2EE040AB4EE8D +:10FE7000600AF1EE10FA0BD595ED130ADFED4A0A90 +:10FE8000B4EE600AF1EE10FA02D50420B880012425 +:10FE900095ED138A9FEDB69BDFF89C0C90ED0C0A54 +:10FEA00038EE000A10EE100AE8F7D8F853EC192BD8 +:10FEB000E2F7DAFE0022DFF8AC3CE2F7B3FF21D331 +:10FEC000D5ED118A95ED120A38EE800A10EE100A6F +:10FED000E8F7C4F853EC192BE2F7C6FE0022DFF86E +:10FEE0009C3CE2F79FFF0DD3B3EE040AB4EE408AC8 +:10FEF000F1EE10FA06D4B1EE040AF4EE408AF1EE07 +:10FF000010FA02D50520B880012495ED160ADFED20 +:10FF1000A80AB4EE600AF1EE10FA29DB97ED040AA4 +:10FF2000D7ED050A80EE200ADFEDA20AB4EE600AE2 +:10FF3000F1EE10FA1CDB00EE106AB8EE400AD7EDC5 +:10FF4000020AC0EE800AB6EE001AF4EE410AF1EEA3 +:10FF500010FA0DD5D7ED030A80EE800AF6EE000AFE +:10FF6000B4EE600AF1EE10FA02D51520B880012433 +:10FF7000102207F1080105F1B000E4F7BBFC2046B0 +:10FF8000BDEC048BF2BD00009A99993F010020421C +:10FF90000000C84201000040CDCC4C3F000035437A +:10FFA000000090422026012000002042CDCCCCCC85 +:10FFB000CCCCFC3F2DE9F8432DED028B08EE101A56 +:10FFC0000026DFF8484B616D4018DFF86C5B0228B3 +:10FFD0001AD394ED160ADFED780AB4EE600AF1EE5A +:10FFE00010FA11DB95ED0C0AD4ED130A80EE200A0D +:10FFF000DFED720AB4EE600AF1EE10FA04DBDFF80E +:020000022000DC +:10000000081B09228A80012602281CD39FED6C0A56 +:10001000D5ED0C0A94ED131AC0EE810AF4EE400AF5 +:10002000F1EE10FA0FDBD4ED120A94ED111AC0EEC6 +:10003000810AF4EE400AF1EE10FA04DBDFF8C81A88 +:100040000A228A800126002819D0DFF8BC7A686E5F +:10005000E8F704F84FF03332DFF8183CE2F704FE1B +:1000600002460B4690469946786FE7F7F7FF4246FF +:100070004B46E2F7D7FE02D20B20B880012694ED62 +:10008000160ADFED500AB4EE600AF1EE10FA08DA53 +:1000900094ED170ADFED4C0AB4EE600AF1EE10FAA7 +:1000A0001CDB94ED130ADFED490AB4EE600AF1EEB1 +:1000B00010FA0BD494ED110ADFED450AB4EE600A94 +:1000C000F1EE10FA02D4608F022807DBE08E0328DD +:1000D00004DBDFF8340A0C218180012695ED0A0A41 +:1000E000DFED3A0AB4EE600AF1EE10FA08D494EDAE +:1000F0001C0AF1EE040AB4EE600AF1EE10FA14D50F +:10010000A86EE96E0818E2F7A9FE0022DFF8683B46 +:10011000E2F7AAFD0122DFF8643BF4F749FB04D8BB +:10012000DFF8E4090D2181801646B8EEC80ADFF831 +:10013000500BD5ED040AC0EE800AC0ED030AD5EDE0 +:10014000050AC0EE800AC0ED040AD5ED060A80EE6D +:10015000800A80ED050A0C2200F10C0104F1C000B8 +:10016000E4F7C8FB3046BDEC028BBDE8F28300002B +:10017000000000000000E03F0020DFF890190A6D49 +:1001800012F10A0F0FD29FEDD10AD1ED190AF4EE48 +:10019000400AF1EE10FA06DAD1ED1D0AF4EE400A3B +:1001A000F1EE10FA00DB01207047000000007A44F5 +:1001B000010040403433333F010060400100A04063 +:1001C0000100704101009040010080400000C843E0 +:1001D0000000164300C06240000054400000A040F0 +:1001E0002DE9F24F0446002500F08BFCDFF8946AFD +:1001F00028467065F0653066DFF80C092946818075 +:10020000204600F065F9DFF80479307B052805D138 +:1002100001203064284630733887F081F06CBDF8D7 +:10022000001010FA81F0F064D6F83480706C8045CC +:1002300001D101203064D6F8389009EB49004FEA2B +:10024000800ADFF8440A21684AF800100AEB000B24 +:100250006068CBF80400A068CBF80800BDF8001077 +:10026000204600F0D3F9F8619BED020ADBED010AAC +:10027000DFF8140A5AF8000001EE100A21EE011A04 +:1002800000EEA01A00EE001A11EE100AE7F7E6FEE3 +:1002900041EC100BE2F792FF51EC100BE7F706FF71 +:1002A00000EE100AD6F83CA0BAF1000F12D1284691 +:1002B000DFF8CC2904E002EB810181ED060A401C45 +:1002C00080B201460729F6DBF1EE0C0A60EE200A47 +:1002D000C6ED070ADFF8A80900EB8900D0ED060A91 +:1002E00070EE600A96ED071A30EE811A86ED071A55 +:1002F00080ED060ADFF8940900EB880080ED001A13 +:1003000096ED090A30EE010A86ED090ADFF8780950 +:1003100000EB890090ED150A71EE400ADFF87019C4 +:1003200001EB8801C1ED000A80ED151A96ED0B0A6C +:1003300030EE200A86ED0B0A94EC031A86EC031AC1 +:10034000F06F012806D101203064284630733887C9 +:10035000F08166E0306D401C3065317B012901D0B1 +:1003600003292FD1022822D2F98E04291FDA786DB1 +:10037000002856D196ED080A9FED971AB4EE410A6F +:10038000F1EE10FA04D5F4EE410AF1EE10FA0BDAB0 +:10039000B9EE0C1AB4EE410AF1EE10FA41DBF4EEBC +:1003A000410AF1EE10FA3CD50120306439E02728EB +:1003B00008D3398F002903D010FA81F04B2801D3DC +:1003C0000120306496ED080A00F088FA307B01289D +:1003D00027D1388F002824D0F189002921D0032289 +:1003E00011FA80F03D2801DB01203064F88E0428EA +:1003F00000DB0222788F824201D201203064B06E8D +:10040000F066306F716F0818B16F0818B066284633 +:10041000B06770673067FFF70DF805460020F08180 +:100420007887B06CA8EB000000F1FA04FA20B4FB66 +:10043000F0F0FA2101FB104BBBF1960F03D100F055 +:10044000A9FB01207065BBF1640F03D100F0CCFB68 +:1004500001207065F88A00280AD0BBF1320F0DD058 +:10046000BBF14B0F0DD1002038830120706508E0EF +:10047000B88A002805D0BBF17D0F02D10120388356 +:100480007065DFF80C0850F82800306208F10100B0 +:100490007063FA2801D10020706309F10100B06394 +:1004A000072801D10020B0630AF10100F063706DEC +:1004B000002808D007F184042C2207F10801204607 +:1004C000E4F718FAB4652846BDE8F28F8096184B19 +:1004D000F8B50446DFF8A8572F6DDFF85C6696ED97 +:1004E000000AD4ED000A70EEC00A01EE107AB8EEF0 +:1004F000C11A60EE810AF5EE400AF1EE10FA17D546 +:10050000D5ED170A30EE600A10EE100AE7F7A6FDE7 +:1005100021F00041DFF87C27DFF8A433F4F748F935 +:1005200002D8306F401C30673068E8657842286533 +:100530006F6D96ED010AD4ED010A70EEC00A01EE6E +:10054000107AB8EEC11A60EE810AF5EE400AF1EEBB +:1005500010FA16D5D5ED180A30EE600A10EE100A22 +:10056000E7F77CFD21F00041DFF82827D44BF4F7B2 +:100570001FF902D8706F401C706770682866784257 +:100580006865AF6D96ED020AD4ED020A70EEC00AFE +:1005900001EE107AB8EEC11A60EE810AF5EE400A5B +:1005A000F1EE10FA16D5D5ED190A30EE600A10EE0C +:1005B000100AE7F753FD21F00041DFF8D826C04BC1 +:1005C000F4F7F6F802D8B06F401CB067B068686600 +:1005D0007842A865F1BD00000100E040F0164850E7 +:1005E000FC18E93F3411363CBD52DABFBBB88D066A +:1005F000F016B83F6891ED7C3F35CE3FB29DEFA736 +:10060000C64BC73F0DE02D90A0F8A13FDFF828357D +:1006100090ED000AD3ED000A30EE600AD0ED010A39 +:1006200093ED011A70EEC10A90ED021AD3ED021A91 +:1006300031EE611AB5EE400AF1EE10FA02DDF0EE8D +:10064000401A01E0F1EE401AF5EE400AF1EE10FA20 +:1006500002DDB0EE602A01E0B1EE602AB5EE401A8C +:10066000F1EE10FA02DDF0EE412A01E0F1EE412A4E +:1006700071EE821A71EEA21AB5EE400AF1EE10FA8E +:1006800002DDB0EE402A01E0B1EE402ADFF8782426 +:10069000D2ED022A32EE822A82ED022AF5EE400ADB +:1006A000F1EE10FA02DDB0EE602A01E0B1EE602A50 +:1006B000D2ED032A32EE822A82ED032AB5EE401AE9 +:1006C000F1EE10FA02DDB0EE412A01E0B1EE412A6E +:1006D000D2ED042A32EE822A82ED042A92ED052A16 +:1006E00032EE212A82ED052A93ED042AD0ED002A6C +:1006F00032EE222A83ED042A93ED052AD0ED012A59 +:1007000032EE222A83ED052A93ED062AD0ED022A45 +:1007100032EE222A83ED062AD86B002810D1002061 +:1007200004E002EB8303C3ED091A401C80B20346C8 +:100730000F2BF6DBB2EE0E2A21EE822A82ED182A6A +:10074000508802EB800393ED092A31EEC22AD2EDE4 +:10075000182A32EE222A82ED182AC3ED091AF2EE87 +:100760000E1AC2EE211ADFF8A433C3ED1C1ADFF80B +:10077000283593ED012A22EE202AD3ED002A62EEDD +:10078000802AF5EE402AF1EE10FA0DD4B5EE402A9B +:10079000F1EE10FA08D493ED023A23EE013AB5EEE9 +:1007A000403AF1EE10FA5AD593ED023A23EE013AAF +:1007B000F4EE422AF1EE10FA0AD5F4EE432AF1EEF5 +:1007C00010FA02D5F0EE623A0CE0F0EE433A09E09E +:1007D000B4EE432AF1EE10FA02D5F0EE423A01E00F +:1007E000F0EE433AF5EE403AF1EE10FAF4EE422A1A +:1007F00015DDF1EE10FA0AD5F4EE432AF1EE10FA07 +:1008000002D5B0EE622A21E0B0EE432A1EE0B4EE3B +:10081000432AF1EE10FA19D4B0EE432A16E0F1EEB5 +:1008200010FA0AD5F4EE432AF1EE10FA02D5B0EE32 +:10083000622A09E0B0EE432A06E0B4EE432AF1EE64 +:1008400010FA01D4B0EE432AB1EE422AD2ED1F2AAB +:10085000F4EE422AF1EE10FA01D582ED1F2A83ED63 +:10086000000AC3ED010A83ED021A92ED1A0AF4EEB2 +:10087000401AF1EE10FA01D5C2ED1A1A92ED1B0AD8 +:10088000B4EE610AF1EE10FA01D5C2ED1B1A9FED2C +:10089000BC0AF4EE401AF1EE10FA04D5536E13FAC6 +:1008A00081F1516601E000215166401C508080B208 +:1008B0000F2801D100205080506E70479A99999965 +:1008C0009999C93F9999B93F7B14AE47E17A743F32 +:1008D00000004E400000F03F6666E63F70B52DED2B +:1008E000048BB0EE408AF0EE608A9FEDA99A8748AB +:1008F000C18E042901DBB0EE009AB5EE408AF1EE1C +:1009000010FA07DBF5EE408AF1EE10FA02D5418FBE +:10091000491C4187884E317B002907D0022900F00D +:100920007F8041D3032900F0A480E6E019EE100A8D +:10093000E7F794FB41EC100B53EC102B0020DFF891 +:100940005C13E2F7A3FA41EC190B18EE100AE7F773 +:1009500085FB02460B4651EC190BF3F729FF11D822 +:1009600018EE900AE7F77AFB02460B4651EC190B9A +:10097000E2F758FA06D2306D1028C0F0AF800020A0 +:100980003065ABE0716BC24A52F8210000EE100AEC +:10099000C349D1ED010AB4EE600AF1EE10FA40F15C +:1009A000AC8081ED010AA8E0716BB94A52F82110C0 +:1009B00000EE101ABA49D1ED000AF4EE400AF1EE49 +:1009C00010FA01D581ED000AB7EE000AB4EE408AB4 +:1009D000F1EE10FAC0F29180F4EE408AF1EE10FAD6 +:1009E00040F18B80316D01870020306519EE100ACF +:1009F000E7F734FB02460B460020AA49E2F774F8F9 +:100A000002460B4614461D4618EE900AE7F726FBF1 +:100A100022462B46E2F706FA22D3022030736CE01E +:100A200019EE100AE7F71AFB41EC100B00209D4964 +:100A300053EC102BE2F758F841EC190B18EE100AA2 +:100A4000E7F70CFB53EC192BF3F7B2FE55D818EE71 +:100A5000900AE7F703FB53EC192BE2F7E3F94CD2CA +:100A600003203073706B8A4951F820008C4948602C +:100A700043E0716B864A52F8210000EE100A884963 +:100A8000D1ED010AB4EE600AF1EE10FA01D581ED64 +:100A9000010A9FED770AB4EE408AF1EE10FA2CD5E8 +:100AA000F4EE408AF1EE10FA27DB306DF081002081 +:100AB000306518EE900AE7F7D1FA02460B46144665 +:100AC0001D4619EE100AE7F7C9FA0022734BE2F748 +:100AD000DDF922462B46E2F7A5F90CD2012030734E +:100AE0006F490868F06548683066706B684A52F86C +:100AF0002000086001E000203073307BBDEC048BE7 +:100B000070BD6048007B70475C160120780B0120A7 +:100B1000002804D05B49896D2C22E1F799BF70470A +:100B20006148416D002904D1818FC08F10FA81F096 +:100B30007047002070470000DC150120514900205B +:100B4000C8635948002242610222028305220A73C7 +:100B500000214165C165C166C1620161C163416334 +:100B60007047000000003E40002806D0444942681B +:100B70004A6002680A6000890881704700002440CA +:100B8000EC51383E4948406E70470000782B0120F8 +:100B90000000000010B5444CA08E002802D00220B6 +:100BA000208301E00220208300206065E065E0668C +:100BB000E0622061A082A086E063D4F88000012872 +:100BC00001D1FEF78EFE3948C188002905D0A4F86E +:100BD00040100021C1800846E067E06F012802D183 +:100BE0000620A4F8400010BD10B52F4CE08E002860 +:100BF00002D00020208301E0022020830020E06258 +:100C00002061082201462046E1F728FB0020E0860B +:100C1000E0822061E063D4F88000012803D1BDE8C0 +:100C20001040FEF75EBE10BD1F49B1F84020824261 +:100C30000CD2CB8A002B02D04B6D934204D2A1F888 +:100C400040000020C86770471849C880704780B5C9 +:100C50000C480121C167FFF7C7FFFFF79BFF0C207E +:100C6000BDE80240E0E707480021C1677047000087 +:100C7000FEFF7FBF3333D33F0000E03F00804B4097 +:100C8000F4190120DC150120AC18012028DD00201A +:100C900010E100209B999999F429012000001C4043 +:100CA000EC2A012000001CC0780B01205C160120FA +:100CB00010B50C460FF2F050E1F774FBDFF8A40515 +:100CC0000480001D00F033F800F064F800F012FA20 +:100CD000012010BD30B583B004460D4600F05BF92D +:100CE000214600F05AF9002D12D00FF2C850E1F75A +:100CF00059FB00F050F900F03BF800F04CF900F01F +:100D00003DF800A800F082F8DDE9000100F075F878 +:100D1000DFF854058068BDE83E40004780B500F02C +:100D200071F80FF2A050E1F73DFB012002BD002158 +:100D30000B4607E001EB410292001350121853607A +:100D40009360491C6429F5DB194604E000EB81023D +:100D5000C2F8B034491C3229F8DB194680F87815FE +:100D600000F27850418081808160C16001617047EC +:100D70000021C0F88015C0F8841570470021C0F824 +:100D800088157047002190F87805012800D10121CD +:100D90000846704730B583B000A800F069F8DFF866 +:100DA000C84400982060019D656000A800F085F8A7 +:100DB000DFF8B804009901600199416000A800F0D3 +:100DC000ABF8DFF8AC04009901600199416000A81C +:100DD00000F0CDF8DFF89C040099016001994160B2 +:100DE00000A800F0D1F8DFF89004009901600199A3 +:100DF00041602068A060E56037BDDFF86C2490603A +:100E0000D1600847DFF86004C0680047DFF85C1471 +:100E1000D1E90023C0E900237047DFF85414D1E979 +:100E20000023C0E900237047DFF84814D1E900230C +:100E3000C0E900237047DFF84014D1E90023C0E97E +:100E4000002370471CB5002400F0A5F8FFF79AFFB7 +:100E5000002807D0082400A8FFF7D8FFDDE900012B +:100E6000FFF7CBFF204616BD0FF26440E1F79ABAB8 +:100E7000DFF808140A46DFF808140B46C0E900231F +:100E800070471CB5002400F0CFF800280FD00FF2F7 +:100E90004C40E1F787FA012400F07DF8FFF76EFF80 +:100EA00000A8FFF7BAFFDDE90001FFF7A6FF204623 +:100EB00016BD0FF23440E1F775BADFF8C8130A46E1 +:100EC000DFF8C4130B46C0E9002370471CB500F0DF +:100ED000ABF8002805D0012400F05DF8FFF74EFFC5 +:100EE00014E0022400F010F900280FD00FF20440A3 +:100EF000E1F758FA062400F04EF8FFF739FF00A892 +:100F0000FFF792FFDDE90001FFF777FF204616BDEE +:100F10000FF2EC30E1F746BADC490A46DC490B46F1 +:100F2000C0E9002370471CB500F000F9012808D182 +:100F3000042400A8FFF77FFFDDE90001FFF75DFF54 +:100F40000FE002280CD1072400F025F8FFF710FF6E +:100F500000A8FFF75BFFDDE90001FFF74EFF00E0AF +:100F60000324204616BD0FF2A430E1F71BBAC9498D +:100F70000A46C9490B46C0E9002370470020704764 +:100F80000FF29830E1F70EBAC4490A46C4490B463D +:100F9000C0E900237047C348704770B5044604F2A7 +:100FA00078550C20AA8800FB02420B681360AA88BF +:100FB00000FB02424B685360AA8800FB02408A682B +:100FC000826091ED020AD1ED010A91ED001A688864 +:100FD00004EB800621EE011A00EEA01A00EE001AC2 +:100FE00011EE100AE7F73AF841EC100BE2F7E6F8D9 +:100FF00051EC100BE7F75AF8C6F8B004A888401C6B +:10100000A8806888401C6880A888642801DB0020CC +:10101000A8806888322804DB00206880012084F8DA +:10102000780570BD0000000070B52DED028B002426 +:101030009FED888ADFED878A2546FFF7ACFF0646DD +:10104000B6F87A05322806D10FF2E020E1F7AAF9C6 +:101050002046A6F87A053046FFF794FE002845D0D2 +:10106000204610E006EB8001D1F8B01400EE101A13 +:1010700038EE008ADFED780AB4EE600AF1EE10FA7D +:1010800000DB6D1C401C3228ECDB9FED740A88EEFF +:10109000008A20460AE006EB8001D1F8B01400EE89 +:1010A000101A30EE480A40EE008A401C3228F2DB6B +:1010B000B6F87A0506EB8000D0F8B00400EE100A0E +:1010C000F3EE020AB4EE600AF1EE10FA0EDB9FEDC9 +:1010D000630A88EE800AF1EE040AB4EE600AF1EECB +:1010E00010FA03DBADB2032D00DB01242046BDEC7A +:1010F000028B70BD80B5FFF74EFFFFF739FEFFF79B +:101100004AFFBDE8024039E610B50024FFF743FF6F +:10111000D0F88815491CC0F88815B1F5FA7F03DDB1 +:101120002146C0F888150124204610BD38B500249A +:10113000FFF731FF05469FED470ADFED460A9FEDB9 +:10114000451ADFED441A9FED432ADFED422A20467F +:1011500010E00C2141434A1992ED003A30EE030AA7 +:10116000491991ED013A70EE830A91ED023A31EEA0 +:10117000031A401C6428ECDB9FED393A80EE030A29 +:10118000C0EE830A81EE031A204616E00C2141438B +:101190004A1992ED003A33EE403A43EE031A4919E8 +:1011A00091ED013A33EE603A03EE032A91ED023AF3 +:1011B00033EE413A43EE032A401C6428E6DB9FED00 +:1011C000280A82EE800ADFED260AC1EEA00AB7EEF9 +:1011D000001AF4EE410AF1EE10FA2DD5DFED200AE7 +:1011E000C2EE200AF4EE410AF1EE10FA24D5F7EE31 +:1011F000000AB4EE600AF1EE10FA1DD5D5F88005AC +:10120000401CC5F8800500EB8001880042F2117196 +:1012100088421DDB2046C5F8800505F280504168F4 +:10122000491C41600F480088814211DB0FF2081011 +:10123000E1F7B8F801240BE00FF20C10E1F7B2F877 +:101240002046C5F8800505F5B060214641600224BE +:10125000204632BD0000000001006041000048420D +:101260000000C84248C9002000290120AC2A012002 +:10127000B42A0120BC2A0120C42A0120450E0208FC +:10128000690E0208830E0208B30E0208CD0E020892 +:10129000110F0208270F0208670F02087D0F0208CE +:1012A000810F02084CC900202341532041535F495C +:1012B0006E69740023415320555352494E50555482 +:1012C000000000002341532041535F46696E200017 +:1012D0002341532053545F53530A000023415320AA +:1012E00044545F53484B00002341532053545F53F1 +:1012F00044530A002341532041535F54454E00009C +:101300002341532053545F534F530A00234153202A +:1013100053545F4E4D53530A0000000023415320A5 +:1013200053545F41534E4D4F530A00002341532005 +:1013300041535F4F460000002341532041535F411A +:10134000425F445400000000234153204343000007 +:1013500010B5DFF8AC4A03220021201DE0F77EFF24 +:10136000042200212046E0F779FF04220021DFF863 +:10137000940AE0F773FF0822002104F11400E0F75B +:101380006DFF0822002104F11C00E0F767FF08222E +:10139000002104F12400E0F761FF201DE0632464D4 +:1013A0000020A060E06220636064A064E0642065C7 +:1013B0006065A065E06520666066A066E066E06046 +:1013C000606320742087C8220146DFF8B80CE0F77C +:1013D00045FFC8220021DFF8B00CE0F73FFFC8222C +:1013E0000021DFF8A80CE0F739FFC8220021DFF860 +:1013F000A00CE0F733FFC8220021DFF8980CE0F7DB +:101400002DFFC8220021DFF8900CBDE81040E0F766 +:1014100025BF002805D0DFF8E819C96B0322E1F7E2 +:1014200007BB704770B584B0DFF8D4291378DFF8B4 +:10143000D449D578E678B54218D12578AB4215D194 +:1014400055786678B54211D19578A478A5420DD12A +:1014500014790578A54203D0042D07D0042C05D0BB +:101460000C789679B4420DD0042D0BD19478029467 +:10147000547801940093537B0A7801780FF20800A6 +:10148000E0F790FF7FBD00004D5F50443A41435666 +:1014900020256420256420256420256420256420DF +:1014A00025640A0010B5C8220121DFF8E40BE0F73B +:1014B000D5FEDFF84C49C820E0820020A082A06160 +:1014C000C8220121DFF8CC0BE0F7C8FEC820E0837A +:1014D0000020A0832062C8220121DFF8BC0BE0F7C6 +:1014E000BDFEC820E0840020A084A06210BD2DE9CC +:1014F000F841068844888588B0F806E00027384619 +:10150000F0468DF80280F446BCF18D0F03D34FF006 +:10151000010C81F800C0DB89032B04D0042B02D01E +:10152000D2B2012A01D102460A70652E31D2744529 +:1015300016DB0978AC4209DB01291FD001272146BF +:101540008D2921D2652C24D3384622E0012915D0DB +:10155000022729468D2917D2652D1AD3012018E0BC +:10156000754508DA042771468D290DD2BEF1650F45 +:101570000FD301200DE00978012901D1042708E0EB +:10158000022729468D2901D3022002E0652D00D3D0 +:1015900001208DF800708DF801000098BDE8F281FF +:1015A0002DE970432DED108B82B0B0EE40AAB0EE65 +:1015B000608AF0EE418ADFF84868707A0146D6ED1D +:1015C00016AA96ED15BAD6ED14BA96ED13CAD6ED55 +:1015D00012CA96ED111A28EEA8DA68EE08DA2AEE99 +:1015E0000AEADFF8A82ADFF8A03ADFF8984A357A45 +:1015F000002D40F0AB8004EB810484ED00AA03EBE6 +:10160000810383ED008A02EB8101C1ED008A31EE96 +:101610000A0A86ED110A3CEE888A86ED128A7CEE73 +:10162000288AC6ED138A3EEE2BAA86ED14AA3DEE5B +:101630008BBA86ED15BA7DEE2AAAC6ED16AA401C15 +:101640007072C0B2322840F07F80012030720020DA +:1016500070729FEDB89B10EE100AE6F7FFFC53EC9A +:10166000192BE1F701FBE6F721FD0BEE900AC6ED21 +:1016700011BA18EE100AE6F7F1FC53EC192BE1F75A +:10168000F3FAE6F713FD08EE100A86ED128A18EE5B +:10169000900AE6F7E3FC53EC192BE1F7E5FAE6F7DD +:1016A00005FD08EE900AC6ED138A1AEE100AE6F759 +:1016B000D5FC53EC192BE1F7D7FA04460D462BEE77 +:1016C000AB0A10EE100AE6F7C9FC02460B462046AC +:1016D0002946E1F709FAE6F7E9FC30651BEE100A46 +:1016E000E6F7BCFC53EC192BE1F7BEFA04460D46B5 +:1016F00028EE080A10EE100AE6F7B0FC02460B4688 +:1017000020462946E1F7F0F9E6F7D0FC70651AEEBD +:10171000900AE6F7A3FC53EC192BE1F7A5FA04466F +:101720000D4628EEA80A10EE100AE6F797FC0246CE +:101730000B4620462946E1F7D7F9E6F7B7FCB06536 +:10174000C820B082B083B0840020EDE08DED001A97 +:1017500054F821000EEE900A53F821000FEE100A03 +:1017600052F821000FEE900A9FED729B11EE100AC5 +:10177000E6F774FC04460D463AEE6E0A10EE100AC7 +:10178000E6F76CFC53EC192BE1F76EFA22462B4678 +:10179000E1F77CFBE6F78AFC0AEE100A86ED11AA57 +:1017A0001CEE900AE6F75AFC04460D4638EE4F0A46 +:1017B00010EE100AE6F752FC53EC192BE1F754FA3D +:1017C00022462B46E1F762FBE6F770FC08EE100AB2 +:1017D00086ED128A1CEE100AE6F740FC04460D4620 +:1017E00038EEEF0A10EE100AE6F738FC53EC192B2E +:1017F000E1F73AFA22462B46E1F748FBE6F756FCBA +:1018000008EE900AC6ED138A1BEE900AE6F726FC56 +:10181000804689469DED000ADDED000A20EE200A93 +:101820000AEE4A0A10EE100AE6F718FC04460D46C6 +:101830000EEEEEEA1EEE100AE6F710FC53EC192B42 +:10184000E1F712FA22462B46E1F720FB42464B46CF +:10185000E1F71CFBE6F72AFC0AEE100A86ED14AA53 +:101860001BEE100AE6F7FAFB804689462CEEAC0A1E +:1018700008EE480A10EE100AE6F7F0FB04460D46A3 +:101880004FEE4FDA1DEE900AE6F7E8FB53EC192B0A +:10189000E1F7EAF922462B46E1F7F8FA42464B46D1 +:1018A000E1F7F4FAE6F702FC08EE100A86ED158A75 +:1018B0001AEE900AE6F7D2FB804689462CEE0C0A17 +:1018C00008EEE80A10EE100AE6F7C8FB04460D46DB +:1018D0000FEEEFDA1DEE100AE6F7C0FB53EC192B02 +:1018E000E1F7C2F922462B46E1F7D0FA42464B46D1 +:1018F000E1F7CCFAE6F7DAFB00EE100A86ED160AFD +:101900006AEE0A0A48EE080A40EE000A10EE900A53 +:10191000E6F7A4FB41EC100BE1F750FC51EC100B87 +:10192000E6F7C4FBF065012002B0BDEC108BBDE80A +:10193000708300007B14AE47E17A943FF8B5002431 +:1019400025462646DFF8B874797ADFF8380750F86C +:10195000212000EE102ADFF8302752F8213000EE67 +:10196000903ADFF8283753F821C001EE10CAF0EEA4 +:10197000401AB0EE602AF0EE412A97ED113AD7ED09 +:10198000123A97ED134AF0EE404AB0EE605AF0EE8C +:10199000415AB0EE406AF0EE606AB0EE417A4FF024 +:1019A000010C2CE0B4EE414AF1EE10FA04D5F4EE4D +:1019B000442AF1EE10FA09D4B4EE441AF1EE10FA0A +:1019C00015D5B4EE624AF1EE10FA10D5641C9FED05 +:1019D000C02AF4EE421AF1EE10FA08DB6D1C9FEDFE +:1019E000CA2AF4EE421AF1EE10FA00DB761CF0EE91 +:1019F000401AB0EE602AF0EE412A0CF1010CBCF165 +:101A0000320F80F0A580491CC9B2322900D10021D3 +:101A100050F821E000EE10EA52F821E000EE90EAE2 +:101A200053F821E001EE10EAF4EE404AF1EE10FA2C +:101A300002D5F0EE404A06E0B4EE460AF1EE10FAA6 +:101A400001D5B0EE406AB4EE605AF1EE10FA02D55C +:101A5000B0EE605A06E0F4EE660AF1EE10FA01D537 +:101A6000F0EE606AF4EE415AF1EE10FA02D5F0EEB3 +:101A7000415A06E0B4EE471AF1EE10FA01D5B0EE85 +:101A8000417A70EE617AF5EE407AF1EE10FA01D506 +:101A900071EEC07AB4EE403AF1EE10FA04D5F4EEED +:101AA000431AF1EE10FA09D4B4EE430AF1EE10FA3B +:101AB00015D5B4EE613AF1EE10FA10D5641CDFEDE5 +:101AC000841AF4EE617AF1EE10FA08DB6D1CDFED9A +:101AD0008E1AF4EE617AF1EE10FA00DB761C70EEED +:101AE000C21AF5EE401AF1EE10FA01D572EE601A44 +:101AF000F4EE603AF1EE10FA04D5B4EE632AF1EE9A +:101B000010FA09D4F4EE630AF1EE10FA15D5F4EEEA +:101B1000423AF1EE10FA10D5641C9FED6D2AF4EEF6 +:101B2000421AF1EE10FA08DB6D1C9FED772AF4EEF5 +:101B3000421AF1EE10FA00DB761C71EE621AF5EE35 +:101B4000401AF1EE10FA7FF52DAF72EEC11A29E7B7 +:101B500034EEC60A87ED180A75EE660AC7ED190A53 +:101B600035EEC71A87ED1A1A20EE000A00EEA00A19 +:101B700001EE010A10EE100AE6F770FA41EC100BC4 +:101B8000E1F71CFB51EC100BE6F790FAF866BC8508 +:101B9000FD853E86F1BD000010B501460020984C41 +:101BA00042290ED194ED1B0ADFED8F0AB4EE600AD4 +:101BB000F1EE10FA05D5A18E142904DA491CA1868C +:101BC00001E00146A186A18E142907DB607B012874 +:101BD00001D1FFF767FC012000216173207010BD67 +:101BE00038B50024864D95ED170ADFED800AB4EE76 +:101BF000600AF1EE10FA08DA95ED1B0ADFED7C0AB7 +:101C0000B4EE600AF1EE10FA05DBA87B142807D2C7 +:101C1000401CA87304E0A87B002801D0401EA873D4 +:101C2000A87B002805D00124687B002801D1FFF79C +:101C300039FC6C70204632BD38B50024704D95EDEE +:101C4000140AD5ED150A30EE200AD5ED160A80EEFD +:101C5000800ADFED680AB4EE600AF1EE10FA17DBD5 +:101C6000D5ED1A0A9FED641AF4EE410AF1EE10FA6E +:101C70000EDBB2EE041AF4EE410AF1EE10FA07D5CB +:101C8000002805D1E87B1E2816DA401CE87313E013 +:101C9000DFED5A0AB4EE600AF1EE10FA07DB002815 +:101CA00005D1E87B1E2807DA401CE87304E0E87BD6 +:101CB000002801D0401EE873E87B1F2805DB0124C3 +:101CC000687B002801D1FFF7EDFBAC70204632BDE8 +:101CD0009A99993EDFF8241C0078042811D1487B9A +:101CE00000280ED1488EB0F5AF7F02DA401C48863E +:101CF0007047B0F5AF7F06DB0120487300204886AF +:101D000070470020488670470100003F0278042A8F +:101D10000CD1DFF8E82B537B002B07D1528EB2F5A4 +:101D2000AF7F03D201220270002008707047DFF8F5 +:101D3000CC2B138F007804281DD10878002803D0FD +:101D4000022814D00AD317E0180003D04C2801DA77 +:101D50005B1E11E04C280FDB4B230DE018464B288F +:101D600001DA5B1C08E04C2806DB4B2304E0AF2BB8 +:101D700002D25B1C00E000239BB21846322802DA34 +:101D80000020087006E0962802DA0120087001E0C1 +:101D90000220087013877047DFF8603B0078042842 +:101DA00012D1087800280FD1587B01280CD1D88E89 +:101DB00042F22831884207DA422A02D1C01CD88672 +:101DC00004E0401CD88601E00020D886D88E42F27C +:101DD0002831884206DB00205873D8860FF6783009 +:101DE000E0F7E0BA704700007F8CB93E010048433D +:101DF0000100F041010080409A9939400100A04162 +:101E0000CC170120642B01202DE9F24F90B005463C +:101E100095ED021AD5ED010A95ED000AFFF7C0FB1A +:101E2000002800F02B81DFF8D44A607A95492A68AF +:101E300041F8202094496A6841F820209349AA6813 +:101E400041F82020401C6072C0B2322801D100202D +:101E50006072FFF773FDBDF84000FFF79DFE054679 +:101E6000FFF7BEFE0646FFF7E7FE07464FF0000805 +:101E7000C146012D04D14FF001084FF00209B5E031 +:101E800057EA060040F09E8004A8FEF741FE94F851 +:101E90000AA0DFF8FCB11AF80B008DF8000000F082 +:101EA0002BF90AF80B0004F1140201469DF800001A +:101EB00000F0F4F804AB2A4604F10B0104F114001D +:101EC000FFF715FB039094F80AA0DFF8C8B11AF8E1 +:101ED0000B008DF8000000F0ABF901460AF80B107A +:101EE00004F11C029DF8000000F0D8F804AB2A466B +:101EF00004F10C0104F11C00FFF7F9FA029094F8C8 +:101F00000AA0DFF894B11AF80B008DF8000000F079 +:101F100055FB0AF80B0004F1240201469DF800006D +:101F200000F0BCF804AB2A4604F10D0104F12400D2 +:101F3000FFF7DDFA0190A07A401CA072C0B2C82859 +:101F400001D14046A0729DF80400002832D09DF8CF +:101F50000C0004280CD19DF80810042908D19DF824 +:101F60000410042904D04FF004084FF0010921E0C7 +:101F70009DF80410042904D14FF004089DF8059041 +:101F800018E0012809D19DF80820012A05D101296E +:101F900003D14FF00108C1460CE0012805D09DF89F +:101FA0000800012801D0012902D14FF0010801E009 +:101FB0004FF00208607B002802D10021E1722173FA +:101FC000E07013E0607B012802D1042020740DE052 +:101FD000A07ADFF8C4B000EB0B01643803D591F8A8 +:101FE0006400207402E011F8640C207400208DF865 +:101FF0000000607B01280CD146EA0500384308D177 +:1020000004208DF80100B8F1040F0ED18DF8009076 +:102010000BE0012E01D0012F03D1207C8DF80100AF +:1020200003E08DF801808DF800900DF10100FFF7BD +:1020300051FE00A90DF10100FFF768FEBDF8402038 +:1020400000A90DF10100FFF7A7FE00A90DF10100A5 +:10205000FFF76DFE00A90DF10100FFF7E3F99DF810 +:1020600001002071012060719DF80000A071201D09 +:10207000E0632464DFF8DC082168016011B0BDE88A +:10208000F08F0000440C01200C0D0120D40D012024 +:102090009C0E0120640F01202C100120042913D86C +:1020A000DFE801F003070B120F001188491C1180B3 +:1020B0000AE05188491C518006E09188491C9180B2 +:1020C00002E0D188491CD180042813D8DFE800F051 +:1020D00003070B120F001088401E108070475088B5 +:1020E000401E508070479088401E90807047D08876 +:1020F000401ED08070470000DFF80008018E1029D4 +:102100003EDB828D2F2A01DB0420704790ED160AFA +:10211000DFED3E0AB4EE600AF1EE10FA25DB21296C +:1021200001DB04207047202A01DB01207047DFED2E +:10213000380AB4EE600AF1EE10FA10DB1D2A0CDB4F +:1021400090ED150ADFED330AB4EE600AF1EE10FAF5 +:1021500001DB0120704702207047022070471B2AD4 +:1021600001DB0120704702207047DFED2B0AB4EE3F +:10217000600AF1EE10FA01DB04207047012070477D +:1021800090ED150ADFED250AB4EE600AF1EE10FAC3 +:102190003ADB90ED160ADFED220AB4EE600AF1EEAA +:1021A00010FA2BDB828D1B2A0EDBDFED1E0AB4EE4C +:1021B000600AF1EE10FA05DB222A01DB01207047EC +:1021C0000220704701207047172A15DBDFED160A41 +:1021D000B4EE600AF1EE10FA01DB0220704790EDD8 +:1021E000140ADFED120AB4EE600AF1EE10FA01DB18 +:1021F000022070470120704702207047092901DB47 +:1022000002207047022070470120704724622A3E56 +:10221000D3DF1B3FE981EF3D90C2F53C37C5833DDD +:102220002E3AB93D170F1B3F431E193F75B04E3E66 +:10223000DFF8C806818D90ED150A2029C0F21F81B4 +:10224000DFEDBD0AB4EE600AF1EE10FAC0F2FD80D7 +:102250002F2932DBC18D162901DB04207047D0ED18 +:102260001A0A9FEDB61AF4EE410AF1EE10FA0EDBEF +:10227000DFEDB30AB4EE600AF1EE10FA05DB1429C3 +:1022800001DB042070470120704701207047D0ED2A +:10229000180A9FEDAC1AF4EE410AF1EE10FA0ADBCF +:1022A000DFEDA90AB4EE600AF1EE10FA01DB0420BA +:1022B00070470120704704207047D0ED180A9FED49 +:1022C000A31AF4EE410AF1EE10FA79DB90ED191A37 +:1022D000DFED9F1AB4EE611AF1EE10FA19DB028EEF +:1022E0000F2A05DB242901DB0420704702207047F8 +:1022F00090ED140ADFED970AB4EE600AF1EE10FAE1 +:1023000001DB01207047082A01DB0420704701200F +:1023100070479FED911AF4EE410AF1EE10FA27DBB7 +:1023200090ED141ADFED8D1AB4EE611AF1EE10FA89 +:102330000ADB9FED8B0AF4EE400AF1EE10FA01DBA6 +:1023400004207047012070479FED861AB4EE410AC1 +:10235000F1EE10FA0ADB9FED840AF4EE400AF1EE8A +:1023600010FA01DB012070470220704701207047FE +:102370009FED7E1AB4EE410AF1EE10FA01DB042063 +:10238000704790ED160A9FED7A1AB4EE410AF1EE0D +:1023900010FA0ADB2C2906DB008E072801DB04205B +:1023A000704701207047012070479FED720AF4EEDC +:1023B000400AF1EE10FA01DB04207047012070475B +:1023C0009FED6D1AB4EE410AF1EE10FA01DB042024 +:1023D00070479FED6A1AF4EE410AF1EE10FA01DB44 +:1023E0000120704790ED1A1ADFED651AB4EE611AFC +:1023F000F1EE10FA01DB012070479FED621AB4EE96 +:10240000410AF1EE10FA01DB042070479FED5E0AED +:10241000F4EE400AF1EE10FA01DB0120704790ED76 +:10242000190ADFED5A0AB4EE600AF1EE10FA01DB88 +:1024300004207047DFED560AB4EE600AF1EE10FAA0 +:1024400001DB0120704704207047DFED520AB4EE33 +:10245000600AF1EE10FA10DB2F2901DB042070472F +:1024600090ED140ADFED4C0AB4EE600AF1EE10FABA +:1024700001DB012070470420704701207047DFED29 +:10248000470AB4EE600AF1EE10FA2ADB172926DBC0 +:1024900090ED160ADFED420AB4EE600AF1EE10FA92 +:1024A00001DB0220704790ED140ADFED3E0AB4EE26 +:1024B000600AF1EE10FA01DB02207047192901DBF6 +:1024C0000120704790ED1A0ADFED370AB4EE600A7A +:1024D000F1EE10FA01DB0120704702207047022064 +:1024E0007047DFED320AB4EE600AF1EE10FA20DB3D +:1024F00090ED180ADFED2E0AB4EE600AF1EE10FA44 +:1025000015DB90ED190ADFED2B0AB4EE600AF1EE4F +:1025100010FA0ADBDFED280AB4EE600AF1EE10FAD9 +:1025200001DB012070470420704701207047042020 +:1025300070470120704700BFCA8AE13BB58C1F403D +:1025400012A53D3DA7B2503FD9D04D3D15053A3FAC +:10255000DB56DD3FF33C383D7179823F91DAD43E62 +:10256000E5D54940AEDB203E42F01440910F3A3DA4 +:102570006687F83C60CB4B3F6631B13CF0C6163FF6 +:1025800050701E40CD04433C4089BF3E8770C43E1E +:10259000D89DBE3E7864AC3B3A24353BB6A1823D23 +:1025A00099BA1B3F172D503EEC531D40371A403C43 +:1025B000C5210B3FA43B983F446F9F3FCF48C18D3F +:1025C0002329C0F2C0802F2930DB332901DB04200E +:1025D000704790ED1A0ADFEDBD0AB4EE600AF1EE25 +:1025E00010FA11DB018E08290CDB90ED180ADFEDE3 +:1025F000B80AB4EE600AF1EE10FA01DB0120704770 +:10260000042070470120704790ED180ADFEDB10AF1 +:10261000B4EE600AF1EE10FA06DB008E0D2801DB45 +:1026200004207047012070470420704790ED190A7C +:10263000D0ED180A9FEDA81AF4EE410AF1EE10FA57 +:1026400042DB9FEDA61AB4EE410AF1EE10FA11DB5F +:10265000018E0F2901DB0420704790ED140ADFED95 +:10266000A00AB4EE600AF1EE10FA01DB0120704717 +:102670000420704790ED140A9FED9A1AF4EE410A77 +:10268000F1EE10FA15DBDFED980AB4EE600AF1EE18 +:1026900010FA0CDB90ED1A0ADFED940AB4EE600A32 +:1026A000F1EE10FA01DB0120704704207047012091 +:1026B0007047DFED8F0AB4EE600AF1EE10FA01DB2D +:1026C00004207047012070479FED8A1AB4EE410A3A +:1026D000F1EE10FA31DB90ED1A1ADFED871AB4EE45 +:1026E000611AF1EE10FA06DB008E092801DB0420E6 +:1026F0007047012070479FED821AB4EE410AF1EE57 +:1027000010FA01DB042070479FED7E1AF4EE410AB7 +:10271000F1EE10FA01DB01207047808D2A2801DBE1 +:1027200004207047DFED780AB4EE600AF1EE10FA8B +:1027300001DB0420704701207047282901DB0420B9 +:1027400070470120704790ED150ADFED700AB4EE76 +:10275000600AF1EE10FA5CDBD0ED1B0A9FED6C1AFB +:10276000F4EE410AF1EE10FA2FDB17292BDB90ED86 +:10277000140AD0ED160A9FED671AF4EE410AF1EE45 +:1027800010FA15DBDFED640AB4EE600AF1EE10FA20 +:102790000CDB90ED180ADFED610AB4EE600AF1EE91 +:1027A00010FA01DB012070470220704702207047B9 +:1027B000DFED5B0AB4EE600AF1EE10FA01DB0220F5 +:1027C000704701207047022070479FED561AF4EEC3 +:1027D000410AF1EE10FA1ADB818D19290CDB90ED1C +:1027E000160ADFED510AB4EE600AF1EE10FA01DBD1 +:1027F0000220704701207047DFED4C0AB4EE600AFA +:10280000F1EE10FA01DB022070470120704704202E +:102810007047DFED470AB4EE600AF1EE10FA53DBC1 +:10282000D0ED180A9FED431AF4EE410AF1EE10FACA +:102830001EDB9FED411AB4EE410AF1EE10FA15DBF2 +:1028400090ED1B0A9FED3D1AB4EE410AF1EE10FA2D +:1028500001DB012070479FED3A0AF4EE400AF1EEE9 +:1028600010FA01DB012070470420704701207047F7 +:10287000DFED340AB4EE600AF1EE10FA17DB90EDEA +:10288000190ADFED310AB4EE600AF1EE10FA01DB4D +:102890000420704790ED140ADFED2C0AB4EE600AB4 +:1028A000F1EE10FA01DB012070470420704790ED33 +:1028B000160ADFED270AB4EE600AF1EE10FA01DB2A +:1028C0000420704701207047012070478BC71F40CC +:1028D00036054D40F9A78E3F55A85A3FDB56DD3FE0 +:1028E0003886403D7179823F9E48D83E7997744042 +:1028F000753E3C3D3BAEAE3E350D1F40CC17012032 +:1029000082742D3FA43C173F9BAEE73EB6A1823DAB +:10291000878C6F4099BA1B3F6F69453ECC9E2A4019 +:102920008DBA663E8C5044409948D13E81B6953D63 +:102930007313B53B63D5083FDCF93E3DCDED254033 +:10294000D064833F21CB023CD274E63EDF57E53BA7 +:102950007B6A753D642B01205B4D5F50443A4143D7 +:10296000565D204C6F636B204F66660038B5DFF80C +:10297000B0475022002104F13000DFF76FFC5022F5 +:102980000021DFF76BFCDFF89C575022002105F196 +:102990002800DFF763FC50220021DFF88C07DFF707 +:1029A0005DFC50220021DFF88407DFF757FC50223E +:1029B0000021DFF87C07DFF751FC002020706070F9 +:1029C00020716071A070E070A07120816081DFF8DB +:1029D0006407C4F880009FEDC80B84ED040B84ED00 +:1029E000060B84ED080B84ED0A0B0020A86731BDAF +:1029F0002DE9F84F2DED048B84B0B0EE408ADFF85E +:102A00002047218900EB010BA4F808B06189451823 +:102A10006581A079192803DA401CA07184ED208A11 +:102A20009FEDB20AB4EE408AF1EE10FAC0F21781BF +:102A3000D4ED200AF4EE400AF1EE10FAC0F20F8154 +:102A4000A0791928C0F20B811FFA8BFBBBF1C30FD1 +:102A5000C0F2058194F800A05646DFF8CC7607EB6B +:102A6000860080ED008A84ED208A94F80190B9F107 +:102A7000000F04D187ED148A87ED158A52E0D7ED57 +:102A8000168A9FED9B9B97ED140A28EE800A10EEA4 +:102A9000100AE5F7E3FACDE9020118EE900AE5F72E +:102AA000DDFA02460B4651EC190BE0F71DF8CDE9B3 +:102AB000000118EE100AE5F7D1FADDE90023E0F78E +:102AC000D3F8DDE90223E0F7E1F9E5F7EFFA08EEE4 +:102AD000100A87ED148AD7ED178A97ED150A28EEAC +:102AE000800A10EE100AE5F7B9FACDE9020118EEF6 +:102AF000900AE5F7B3FA02460B4651EC190BDFF7E3 +:102B0000F3FFCDE9000118EE100AE5F7A7FADDE9B9 +:102B10000023E0F7A9F8DDE90223E0F7B7F9E5F7CC +:102B2000C5FA7865ADB2B5F57A7F13DDA078DFF828 +:102B300000167A6D41F82020401CA070C0B2142805 +:102B400001D10020A070E078142801DA401CE07068 +:102B5000002060814D46142D30D106F10108B8F1F6 +:102B6000140F01D14FF0000857F8280008EE100AA2 +:102B7000E5F774FA02460B46D4E90401DFF7B4FF27 +:102B8000C4E9040128EE080A10EE100AE5F766FA17 +:102B900002460B46D4E90601DFF7A6FFC4E90601A9 +:102BA000DFF8880550F82800E5F758FA02460B468A +:102BB000D4E90801DFF798FFC4E9080157F82600B7 +:102BC00008EE100AE5F74AFAD4E90423E0F75EF9C3 +:102BD000C4E9040128EE080A10EE100AE5F73EFAEF +:102BE000D4E90623E0F752F9C4E906015246494602 +:102BF000384600F0ADF9DFF8340500EB860080EDD3 +:102C0000000A10EE100AE5F729FAD4E90823E0F7E4 +:102C10003DF941EC180B84ED088B04EB8600796DCF +:102C20000163DFF8000520F816B0142D02DA09F16F +:102C3000010060706078E0F71BF902460B4651EC2A +:102C4000180BE0F797F9C4E90A010AF101002070B6 +:102C5000C0B2142801D1002020700020208104B0CF +:102C6000BDEC048BBDE8F18F80B5DFF8B40480784B +:102C7000411E00D51431801F00D51430DFF8B02478 +:102C800002EB810191ED000A02EB8000D0ED000A19 +:102C900030EE600A10EE100AE5F7E0F921F000418D +:102CA000E5F704FA00EE100A01BD80B5DFF8700404 +:102CB0008078411E00D51431801F00D51430DFF814 +:102CC0006C2402EB810191ED000A02EB8000D0ED53 +:102CD000000A30EE600A10EE100AE5F7BFF921F0A5 +:102CE0000041E5F7E3F900EE100A01BD0100FA43E7 +:102CF000000000000000F03F0000000000000000A5 +:102D00002DE9F8432DED0A8BB0EE409A81468846B6 +:102D100000242546DFEDBA8A9FEDB98ADFEDB89A27 +:102D20005FFA89F9B9F1040F04D19FEDB6AADFED7E +:102D3000B6AA03E09FEDB5AADFEDB5AADFF8E06320 +:102D40007078142840F0FE80F0780728C0F2FA80EE +:102D5000B5EE409AF1EE10FA40F3F480FFF784FFED +:102D6000B0EE40BAFFF7A1FFF0EE40BADFF8B4735F +:102D7000B4EE4BAAF1EE10FA32D596ED0ACB1AEE6C +:102D8000900AE5F76BF953EC1C2B23F00043E0F7B6 +:102D900049F825D251EC1C0B21F00041DFF89823B3 +:102DA000DFF89833E0F73EF81AD29FED9A0AF4EE76 +:102DB00040BAF1EE10FA13D597ED1E0AB5EE400AAF +:102DC000F1EE10FA01D1224602E0F86FA8EB000202 +:102DD0004B4671783078401E00F01EF9044602E040 +:102DE0002046B867F867002C00F0A68097ED1E0A11 +:102DF000B5EE400AF1EE10FA04D1C7F87C804FF02E +:102E00007E50B867284604E037F811104D19ADB26E +:102E1000401C80B201461429F6DB2846E0F728F86A +:102E2000DFF81C23DFF81C33DFF71EFFE5F73EF960 +:102E300009EE900A19EE100AE5F710F9C24AC34BE1 +:102E4000DFF712FFE5F732F900EE100A29EE809A5B +:102E50003078411E00D514317278801A00D51430B4 +:102E600006EB810191ED0C0A06EB8000D0ED0C0A17 +:102E700030EE600AFFEE000A20EE200A10EE100A83 +:102E8000E5F7ECF8B24AB34BE0F774F8E5F70EF962 +:102E900009EE900AF4EE499AF1EE10FA02DBDFED4A +:102EA000589A11E029EE090A09EEE90A10EE100A13 +:102EB000E5F7D4F841EC100BE0F780F951EC100B7A +:102EC000E5F7F4F808EE900A307989EEA80A07EBE6 +:102ED000800181ED0A0A401C3071C0B2142801D172 +:102EE000002030717079142801DA401C70710020C4 +:102EF00006E007EB800191ED0A0A38EE008A401CDB +:102F000071790A4680B29042F3D3B2EE040A28EEF9 +:102F1000000A00EE901AF8EE600A80EE200A10EE29 +:102F2000100AE5F79BF88C4A8C4BDFF79DFEE5F71E +:102F3000BDF809EE900A02E0284630717071B0EEDB +:102F4000690A01E09FED2E0ABDEC0A8BBDE8F18312 +:102F500038B52DED048B9FED2A8A9FED290ADFED10 +:102F6000280ADFED278A00231AE0142C00DB143C2A +:102F700001EE103AB8EEC11A31EE088A50F824403A +:102F800001EE904A30EE210A41EE210A13FB03F4D0 +:102F900001EE104AB8EEC11A71EE288A5B1CDBB252 +:102FA0000C46A34205DA141B1C19641CDDD514342D +:102FB000DEE701EE101AB8EE419A69EE200A48EEFB +:102FC000400A10EE900AE5F749F804460D4629EE4E +:102FD000280A08EE480A10EE100AE5F73FF8604AA2 +:102FE000604BDFF753FF02460B4620462946DFF7CA +:102FF000C1FFE5F75BF800EE100ABDEC048B31BDB4 +:1030000000000000CDCC4C3EA69B443B8FC2753DDA +:103010006F12033B0BD7A33C2DE9F24F2DED028B32 +:10302000044691464FF00008002C01D5143402E00C +:10303000142C00DB143C45462E46042B02D19FED98 +:10304000348A01E09FED338A2F460EE09FED320A6D +:10305000F4EE408AF1EE10FA06DBF4EE488AF1EE67 +:1030600010FA01D5761CB6B27F1C9DF80800FFB29D +:103070003946421E914236DA201A0818401C01D502 +:10308000143002E0142800DB1438411C142900DB42 +:103090001439234A02EB810191ED0C0A02EB800006 +:1030A000D0ED0C0A70EE608A9FED1C0AF4EE408AA7 +:1030B000F1EE10FACAD518EE900AE4F7CFFF0246F7 +:1030C0000B4692469B4618EE100AE4F7C7FF4246AD +:1030D000254BDFF7C9FD52465B46DFF7A3FEB5D2AD +:1030E0006D1CADB2C0E7B9F1090F01D20E2000E0AE +:1030F0000A20B04202D24FF0010803E0A84201D2F8 +:103100004FF002084046BDEC028BBDE8F28F000094 +:103110008FC2F53C8FC2753C7012033B6F1203BB2C +:10312000581401205C15012024780020E0200120A3 +:103130003021012000407E447B14AE47E17A843F79 +:10314000FCA9F1D24D62503F0492B06F2711913F1C +:10315000B81E85EB51B8BE3F9A9999999999B93F94 +:103160008DEDB5A0F7C6B03E0000F0BF10B5DFF89A +:10317000F8440020206001F0D6F86061052060600E +:10318000012010BDDFF8E00400210160012070473C +:1031900070B52DED048B84B00C4600210391029193 +:1031A00001910091DFF8C054012C07D1296090ED06 +:1031B000008AD0ED018A90ED029A7BE069684A1E90 +:1031C00068692B6893421DDA1E22591C09B200F06F +:1031D000CBFA85ED020A1E222868411C09B26869F3 +:1031E00000F0E0FA85ED040A1E222868411C09B2AD +:1031F000686900F0F5FA85ED030A2868401C00EEC6 +:10320000100A49E018D11E2209B200F0ADFA85ED8E +:10321000020A1E22696809B2686900F0C3FA85EDE6 +:10322000040A1E22696809B2686900F0D9FA85EDBE +:10323000030A95ED010A2FE01E2209B200F084FA7C +:1032400006461E220021686900F07EFA95ED020A0A +:10325000D6ED000A30EE600AD0ED000A30EE200A0A +:1032600085ED020A95ED040AD6ED010A30EE600AFA +:10327000D0ED010A30EE200A85ED040A95ED030A2F +:10328000D6ED020A30EE600AD0ED020A30EE200AD6 +:1032900085ED030A95ED010AB8EEC00AD5ED020AE4 +:1032A00080EE808AD5ED040AC0EE808AD5ED030A4F +:1032B00080EE809AB0EE491AF0EE680AB0EE480A45 +:1032C00001A903A800F022F80022B0EE491AF0EE9E +:1032D000680AB0EE480A00A902A800F0BCF8286805 +:1032E000401C286001F013F8039981610199C161C4 +:1032F0000299016200994162022C02D0012101F081 +:103300000EF8012004B0BDEC048B70BD38B52DED76 +:10331000068B04460D46B0EE40AAF0EE608AB0EE91 +:10332000418AB5EE408AF1EE10FA40D5F1EE480A36 +:1033300000F01EFB9FEDBF9B10EE100AE4F78EFE1F +:1033400053EC192BDFF790FCE4F7B0FE00EE100A07 +:1033500000F02AF9BDEEC00A84ED000A2AEE0A0A3E +:1033600008EE080A10EE100AE4F778FE41EC100BA4 +:10337000DFF724FF51EC100BE4F798FE00EE900A03 +:10338000B1EE680A00F0F4FA10EE100AE4F766FEF7 +:1033900053EC192BDFF768FCE4F788FE00EE100A07 +:1033A00000F002F9BDEEC00A85ED000A50E0B5EE6E +:1033B000408AF1EE10FA4BDDF0EE480AB1EE4A0A0F +:1033C00000F0D6FA9FED9B9B10EE100AE4F746FE44 +:1033D00053EC192BDFF748FC0022984BDFF756FD22 +:1033E000E4F764FE00EE100A00F0DEF8BDEEC00A5D +:1033F00084ED000A2AEE0A0A08EE080A10EE100A06 +:10340000E4F72CFE41EC100BDFF7D8FE51EC100B6B +:10341000E4F74CFE00EE900AB1EE680A00F0A8FA5C +:1034200010EE100AE4F71AFE53EC192BDFF71CFC20 +:103430000022834BDFF72AFDE4F738FE00EE100A86 +:1034400000F0B2F8B1EE400ABDEEC00A85ED000A08 +:10345000BDEC068B31BD38B52DED048B04460D4611 +:10346000F0EE408AB0EE609AB0EE418AB5EE409A36 +:10347000F1EE10FA18D5F1EE490A00F079FA10EEE3 +:10348000100AE4F7EBFD6F4A784BDFF7EDFBE4F74A +:103490000DFE00EE100A00F087F8B1EE400ABDEE16 +:1034A000C00A84ED000A20E0B5EE409AF1EE10FA71 +:1034B0001BDBB1EE680A00F05BFA10EE100AE4F7CD +:1034C000CDFD604A694BDFF7CFFB00225C4BDFF795 +:1034D000DDFCE4F7EBFD00EE100A00F065F8B1EE5C +:1034E000400ABDEEC00A84ED000AB5EE408AF1EE56 +:1034F00010FA28D528EEA80A09EE090A10EE100ADB +:10350000E4F7ACFD41EC100BDFF758FE51EC100B6B +:10351000E4F7CCFD00EE900AB0EE480A00F028FA7D +:1035200010EE100AE4F79AFD464A504BDFF79CFB79 +:10353000E4F7BCFD00EE100A00F036F8BDEEC00A5C +:1035400085ED000A2CE0B5EE408AF1EE10FA27DD99 +:1035500028EEA80A09EE090A10EE100AE4F77EFD2B +:1035600041EC100BDFF72AFE51EC100BE4F79EFD47 +:1035700000EE900AB0EE480A00F0FAF910EE100AD8 +:10358000E4F76CFD2F4A394BDFF76EFBE4F78EFD55 +:1035900000EE100A00F008F8BDEEC00A85ED000A42 +:1035A000BDEC048B31BD0000DFED270A9FED271A2B +:1035B000B4EE410AF1EE10FA09DBB4EE600AF1EE66 +:1035C00010FA04D5DFED220A30EE200A7047B4EE7F +:1035D000600AF1EE10FA0BDBDFED1E0AB4EE600AB2 +:1035E000F1EE10FA04D5DFED1C0A30EE200A704728 +:1035F000DFED1A0ADFED1A1AB4EE610AF1EE10FAE5 +:1036000009DBB4EE600AF1EE10FA04D5DFED150A1D +:1036100030EE200A7047B4EE600AF1EE10FA08DBD3 +:10362000DFED130AB4EE600AF1EE10FA01D530EEC8 +:10363000010A7047E6C1631ADCA54C400080664071 +:10364000008066C0E6C1631AFFFF06C4000034C4F0 +:1036500000003444FFFF33C30000B44301000744BB +:10366000010034430000B4C324280120DCA54C40F1 +:1036700001003444E54A12689FEDBC0A038800EB60 +:103680004303B3F9043000EE903AF8EEE00A92ED0D +:10369000001AB8EE411A70EEC10A92ED031AB8EEA4 +:1036A000411AC0EE810A60EE800AC1ED000AD2ED37 +:1036B000010AF8EE600A038800EB4303B3F9063011 +:1036C00001EE103AB8EEC11A70EEC10A92ED041A7A +:1036D000B8EE411AC0EE810A60EE800AC1ED010A1F +:1036E000D2ED020AF8EE600A038800EB4300B0F95D +:1036F000080001EE100AB8EEC11A70EEC10A92ED90 +:10370000051AB8EE411AC0EE810A20EE800A81ED5A +:10371000020A012070470388934201D300230380EB +:1037200003885B1C03809BB2934201D3002202807A +:10373000028802EB420300EB8300001D91EC030AB8 +:1037400080EC030A01207047B0F90030591A09B221 +:10375000002901D511FA82F109B201EB410200EB17 +:103760008200001D7047000070B49FEDB80A00236E +:10377000B0F9004010E024B2250008D405EB45065E +:1037800000EB8605D5ED010A30EE200A641E24B256 +:10379000002C00D5541E5B1C1BB28B42EBDB70BCB3 +:1037A0007047000070B49FEDA90A0023B0F90040F3 +:1037B00010E024B2250008D405EB450600EB860591 +:1037C000D5ED020A30EE200A641E24B2002C00D58A +:1037D000541E5B1C1BB28B42EBDB70BC70470000BD +:1037E00070B49FED9A0A0023B0F9004010E024B2B3 +:1037F000250008D405EB450600EB8605D5ED030A48 +:1038000030EE200A641E24B2002C00D5541E5B1C2E +:103810001BB28B42EBDB70BC7047000010B52DED86 +:10382000068BADF5FB6D00A80FF2282140F2D47293 +:10383000DFF70EF99FED768B9FED779B00ACB5EE31 +:10384000400AF1EE10FA48DB9FED75ABDFED760A2A +:10385000B4EE600AF1EE10FA1AD510EE100AE4F791 +:10386000FDFB53EC192BDFF7FFF953EC182BDFF7B7 +:103870000DFBDFF723FD54F82000DFF7EFFA53ECE0 +:103880001A2BDFF7F1F9E4F711FC00EE100A68E0FB +:10389000F7EE000A80EE800A10EE100AE4F7DEFB75 +:1038A00053EC192BDFF7E0F953EC182BDFF7EEFAA6 +:1038B000DFF704FD54F82000DFF7D0FA53EC1A2BA1 +:1038C000DFF7D2F902460B465B485849DFF70CF99F +:1038D000E4F7ECFB00EE100A43E0FFEE000AB4EE62 +:1038E000600AF1EE10FA1CDBB1EE400A10EE100A8D +:1038F000E4F7B4FB53EC192BDFF7B6F953EC182BB4 +:10390000DFF7C4FADFF7DAFC54F82000DFF7A6FA95 +:103910000022474BDFF7A8F9E4F7C8FB00EE100AD6 +:103920001FE080EE800A10EE100AE4F797FB53ECDC +:10393000192BDFF799F953EC182BDFF7A7FADFF70C +:10394000BDFC54F82000DFF789FA0022394BDFF77D +:103950008BF9394A3E4BDFF799FAE4F7A7FB00EE03 +:10396000100A0DF5FB6DBDEC068B10BDC3F51C41B7 +:1039700080B5B0EE401AF5EE400AF1EE10FA04DD23 +:1039800081EE200ABDE8014048E7F5EE400AF1EE7D +:1039900010FA24D581EE200AB5EE401AF1EE10FAA5 +:1039A0000EDBFFF73BFF10EE100AE4F757FB224A4D +:1039B000224BDFF76BFAE4F779FB00EE100A01BD4A +:1039C000FFF72CFF10EE100AE4F748FB1A4A1C4BD5 +:1039D000DFF75CFAE4F76AFB00EE100A01BDB5EE12 +:1039E000401AF1EE10FA02DD9FED160A01BDB5EEA8 +:1039F000401AF1EE10FA02D59FED130A01BD9FEDBA +:103A0000130A01BD0149086070470000A82B01207E +:103A1000000000000000E03F0000000000407F4088 +:103A2000000000000000503F0100803FFB21F93FF3 +:103A3000000050BF0000503F182D4454FB210940A6 +:103A4000FB2109C0DB0FC93FDB0FC9BF000000002D +:103A5000FB21F9BF0000000002000000040000008C +:103A600006000000080000000A0000000C00000032 +:103A70000E00000010000000120000001400000002 +:103A800017000000190000001B0000001D000000CE +:103A90001F0000002100000023000000250000009E +:103AA00027000000290000002B0000002D0000006E +:103AB0002F0000003100000033000000350000003E +:103AC00037000000390000003B0000003D0000000E +:103AD0003F000000410000004300000046000000DD +:103AE000480000004A0000004C0000004E000000AA +:103AF000500000005200000054000000560000007A +:103B0000580000005A0000005C0000005E00000049 +:103B10006000000062000000640000006600000019 +:103B2000680000006A0000006C0000006E000000E9 +:103B300070000000720000007400000076000000B9 +:103B4000780000007A0000007C0000007E00000089 +:103B50008000000082000000840000008600000059 +:103B6000880000008A0000008C0000008E00000029 +:103B700090000000920000009400000096000000F9 +:103B8000980000009A0000009C0000009E000000C9 +:103B9000A0000000A2000000A4000000A600000099 +:103BA000A8000000AA000000AC000000AE00000069 +:103BB000B0000000B2000000B4000000B600000039 +:103BC000B8000000BA000000BC000000BE00000009 +:103BD000C0000000C2000000C4000000C6000000D9 +:103BE000C8000000CA000000CC000000CE000000A9 +:103BF000D0000000D2000000D4000000D600000079 +:103C0000D8000000DA000000DC000000DE00000048 +:103C1000E0000000E2000000E4000000E600000018 +:103C2000E7000000E9000000EB000000ED000000EC +:103C3000EF000000F1000000F3000000F5000000BC +:103C4000F7000000F9000000FB000000FD0000008C +:103C5000FF0000000101000003010000040100005A +:103C600006010000080100000A0100000C0100002C +:103C70000E010000100100001201000014010000FC +:103C80001601000018010000190100001B010000CE +:103C90001D0100001F0100002101000023010000A0 +:103CA0002501000027010000290100002A01000071 +:103CB0002C0100002E010000300100003201000044 +:103CC0003401000036010000380100003901000015 +:103CD0003B0100003D0100003F01000041010000E8 +:103CE00043010000450100004601000048010000BA +:103CF0004A0100004C0100004E010000500100008C +:103D0000510100005301000055010000570100005F +:103D1000590100005B0100005C0100005E01000031 +:103D20006001000062010000640100006501000004 +:103D300067010000690100006B0100006D010000D7 +:103D40006E010000700100007201000074010000AB +:103D50007601000077010000790100007B0100007E +:103D60007D0100007F010000800100008201000051 +:103D70008401000086010000870100008901000025 +:103D80008B0100008D0100008E01000090010000F9 +:103D900092010000940100009501000097010000CD +:103DA000990100009B0100009C0100009E010000A1 +:103DB000A0010000A2010000A3010000A501000075 +:103DC000A7010000A8010000AA010000AC0100004A +:103DD000AE010000AF010000B1010000B30100001E +:103DE000B4010000B6010000B8010000B9010000F4 +:103DF000BB010000BD010000BF010000C0010000C8 +:103E0000C2010000C4010000C5010000C70100009C +:103E1000C9010000CA010000CC010000CE01000071 +:103E2000CF010000D1010000D3010000D401000047 +:103E3000D6010000D7010000D9010000DB0100001D +:103E4000DC010000DE010000E0010000E1010000F3 +:103E5000E3010000E5010000E6010000E8010000C8 +:103E6000E9010000EB010000ED010000EE0100009F +:103E7000F0010000F1010000F3010000F501000075 +:103E8000F6010000F8010000F9010000FB0100004C +:103E9000FD010000FE010000000200000102000020 +:103EA00003020000040200000602000008020000F5 +:103EB000090200000B0200000C0200000E020000CC +:103EC0000F020000110200001302000014020000A3 +:103ED0001602000017020000190200001A0200007A +:103EE0001C0200001D0200001F0200002002000052 +:103EF000220200002302000025020000260200002A +:103F000028020000290200002B0200002C02000001 +:103F10002E0200002F0200003102000032020000D9 +:103F200034020000350200003702000038020000B1 +:103F30003A0200003B0200003D0200003E02000089 +:103F40004002000041020000430200004402000061 +:103F50004602000047020000480200004A0200003A +:103F60004B0200004D0200004E0200005002000013 +:103F700051020000530200005402000055020000EC +:103F800057020000580200005A0200005B020000C5 +:103F90005C0200005E0200005F020000610200009F +:103FA0006202000064020000650200006602000078 +:103FB00068020000690200006A0200006C02000052 +:103FC0006D0200006F02000070020000710200002C +:103FD0007302000074020000750200007702000006 +:103FE000780200007A0200007B0200007C020000E0 +:103FF0007E0200007F0200008002000082020000BA +:104000008302000084020000860200008702000094 +:10401000880200008A0200008B0200008C0200006F +:104020008E0200008F020000900200009202000049 +:104030009302000094020000960200009702000024 +:1040400098020000990200009B0200009C02000000 +:104050009D0200009F020000A0020000A1020000DB +:10406000A2020000A4020000A5020000A6020000B7 +:10407000A8020000A9020000AA020000AB02000092 +:10408000AD020000AE020000AF020000B00200006E +:10409000B2020000B3020000B4020000B50200004A +:1040A000B7020000B8020000B9020000BA02000026 +:1040B000BC020000BD020000BE020000BF02000002 +:1040C000C1020000C2020000C3020000C4020000DE +:1040D000C5020000C7020000C8020000C9020000BB +:1040E000CA020000CB020000CD020000CE02000098 +:1040F000CF020000D0020000D1020000D302000075 +:10410000D4020000D5020000D6020000D702000051 +:10411000D8020000DA020000DB020000DC0200002E +:10412000DD020000DE020000E0020000E10200000B +:10413000E2020000E3020000E4020000E5020000E9 +:10414000E6020000E8020000E9020000EA020000C6 +:10415000EB020000EC020000ED020000EE020000A5 +:10416000F0020000F1020000F2020000F302000081 +:10417000F4020000F5020000F6020000F702000061 +:10418000F8020000FA020000FB020000FC0200003E +:10419000FD020000FE020000FF020000000300001C +:1041A00001030000020300000303000005030000F8 +:1041B00006030000070300000803000009030000D5 +:1041C0000A0300000B0300000C0300000D030000B5 +:1041D0000E0300000F030000100300001103000095 +:1041E0001303000014030000150300001603000071 +:1041F0001703000018030000190300001A03000051 +:104200001B0300001C0300001D0300001E03000030 +:104210001F03000020030000210300002203000010 +:10422000230300002403000010B500F081F805F01E +:10423000EBFAFEF79BFF454C4422002104F10C00F1 +:10424000DEF70CF80A2200212046DEF707F80A22E2 +:1042500000213F48DEF702F80C22002104F154004F +:10426000DDF7FCFF3B4C4FF4B67200212046DDF732 +:10427000F5FF1E20208010BD05F0C6BA80B505F000 +:10428000F7FABDE80140FEF77DBF3148F6F7C6BE3C +:1042900010B42F482D491CC81CC10C380021418086 +:1042A00010BC704710B50446FFF7E4F92088401CA5 +:1042B0002080B4F9021080B2884200DB2180012006 +:1042C00010BD38B5214C256D04F154012046FFF78F +:1042D000E9FF1E2204F154011E48FFF71CFA0121D8 +:1042E00004F15400FEF754FFA80705D5002104F19E +:1042F000540005F0BFFA04E0012104F1540005F078 +:10430000B9FA002104F10C00BDE8344007E012487E +:1043100070470E49CA6822EA0000C8607047026808 +:104320001143016070470B4870470C4908607047A3 +:104330000A48006800210160416081604FF480619B +:10434000C16001614161012101767047481C012073 +:104350006C2A0120D0040120541C0120AC2B012028 +:1043600080B5C046C046024A11001820ABBEFBE72C +:10437000260002002DE9F841174680461D46012F10 +:10438000A8BFB9421BDB481E04B2062609E0E11BA8 +:1043900016FB045006FB01510622DEF749FB601EA6 +:1043A00004B2BC42F3DA06E016FB07F148194144B7 +:1043B0000622DEF73DFB7F1E3FB2002FF4D5BDE89D +:1043C000F1812DE9F043079D089E002430F8147018 +:1043D00023F8147030F8147022F81470012716E0D6 +:1043E0004FF0060E00EB440C0EFB07FE33F9149061 +:1043F0003EF90C80C845B8BF23F814803EF90CC0C4 +:1044000032F914E0E645B8BF22F814C07F1C8F4291 +:10441000E6DB33F914C032F914704FEA6C0C0CEB84 +:10442000670725F8147012F81470FF0703D413F807 +:104430001470FF0704D535F814707F1C25F814702C +:1044400032F8147033F814C0A7EB0C073FB2002FFA +:1044500048BF47F6FF7726F81470641C032CB5DBC1 +:10446000BDE8F08300220F23520040008842A4BF21 +:10447000401A521C5B1EF7D110B27047012808DBAE +:10448000002100B2B0F5804FBCBF4000491CF8DBF2 +:104490000AE008B90F2070470021154A01E04000EA +:1044A000491C00B29042FADA08B27047012807DBD3 +:1044B0000021B0F1804FBCBF4000491CF9DB09E08E +:1044C00008B91F207047002101E04000491C10F18D +:1044D000804FFADA08B270470649884208BF47F6AB +:1044E000FF7002D0002848BF404200B27047000071 +:1044F00000C0FFFF0080FFFF70B504460D46164662 +:10450000FFF7BCFF30802846FFF7B8FFB6F9003050 +:1045100004FA03F205FA00F1181A09B212B2914234 +:10452000BCBF5210401E30801046BDE8704099E775 +:104530002DE9F84F8846CEB081461646B8F1210FD6 +:1045400080F22C810120FFF78DFF0022002394468A +:10455000174606210FE001FB07FE7F1C3EF90940CC +:10456000CE4414FB00CCBEF9024014FB0033BEF96C +:10457000044014FB00224745EDDB4FEAEC30ADF878 +:104580000000D813ADF80200D013ADF804000020ED +:1045900014E001FB00F202EB0903B3F9047032F9F5 +:1045A0000920B3F9023012FB02F213FB032217FBBE +:1045B00007220EABD21223F81020401C4045E8DB46 +:1045C00000221EA815E001FB02F7BDF8004037F8F5 +:1045D00009301B1B3B521EABFB184F44BDF8025069 +:1045E0007C88641B5C80BF88BDF804403F1B9F80B3 +:1045F000521C4245E7DB02AF002205ACBA607A608C +:104600000292226222610592E2606260A261A2606F +:10461000E261626150E001FB02F3DDF814C033F99E +:1046200009E01D5ED4F810A01EFB05CECDF814E005 +:104630000DF1780E03EB090C9E44BCF90250BEF953 +:1046400002B015FB0BAAC4F810A0BCF904C0D4F842 +:1046500020A0BEF904B01CFB0BAAC4F820A033F9BB +:1046600000A0D4F80CB015FB0AB5E5606560A5693B +:104670001CFB0A55A561A560E569BEF902A01CFBFB +:104680000A5CC4F81CC0C4F814C00DF1380C3CF925 +:104690001250DDF808C01B5E13FB05C302937B6854 +:1046A000BEF902C01CFB05337B60BB68BEF904C0C9 +:1046B0001CFB0533BB60521C4245ACDB2025029835 +:1046C000401002904FF0000A78684FEA6008B8681E +:1046D000C7F804804FEA6009C7F808904FF0000B54 +:1046E0000C2005A900FB0A1050F82B00FFF7DEFE96 +:1046F000A842B8BF05460BF1010BBBF1030FEFDB7E +:104700000AF1010ABAF1030FE8DB4FF0000A57F88B +:104710002A00FFF7CBFEA842B8BF05460AF1010AFE +:10472000BAF1030FF3DB6068A8408014F080F088D2 +:104730007080A068A8408014B081B089B0806069A2 +:10474000A8408014F081F08970810598A8408014F9 +:1047500030802069A84080143081206AA8408014ED +:10476000308202984E99A8408014088008FA05F01B +:104770004E998014488009FA05F04E99801488807B +:10478000B6F900000628A4BFB6F90800062805DB24 +:10479000B6F910000628A8BF042000DA00204FB0A8 +:1047A000BDE8F08F2DE9F04F804693B08946B2F90D +:1047B00010A0B2F90800B2F90A101C9D1F4610FBA8 +:1047C0000AF301FB1131109110ABB2F900E0B2F91C +:1047D0000C101AFB0EF401FB114159601EFB00F492 +:1047E000B2F9021001FB114199604FF0000C109CCE +:1047F000012153F82160B442BCBF34468C46491CA9 +:104800000329F6DB012CC0F2A3800FFA8CFC4FF4D5 +:1048100000640BA903AE05ABBCF1000F55D1ADF898 +:104820002C005089C880B2F902004042ADF8140053 +:1048300050894880108A08810221B2F90C0000F0EA +:10484000B7F8002857D000F0B9F83C80BDF90C004B +:1048500080107880B6F902008010B88002A9B7F9FC +:104860000030B7F90220B7F9040013FB03F312FB81 +:10487000023210FB002000F07BF90002B7F90010B3 +:1048800000144143C9123980B7F902104143C912DB +:104890007980B7F9041010FB01F0C012B880B7F9A5 +:1048A00000C0B8F90000B7F90230B8F90210B7F942 +:1048B00004201CFB00F013FB0100B8F9041012FBEC +:1048C000010E7446704601215DE0BCF1010F1DD15F +:1048D000ADF82CA090894880B2F90A004042ADF8AA +:1048E00014009089C880108808810221B2F9020062 +:1048F00000F05EF800282BD000F060F8B6F9020056 +:10490000801038807C80BDF90C00A5E7BCF1020F57 +:104910001ED1ADF82CE050884880B2F90C0040421E +:10492000ADF81400D088C880108908810221B2F93E +:104930000A0000F03DF858B100F040F8BDF90C0055 +:1049400080103880B6F9020080107880BC8085E73E +:1049500000202AE0062606FB01FA0AEB08063AF9CF +:1049600008A0B6F902B0B6F904601CFB0AFA13FB02 +:104970000BAA12FB06A6B645B8BFB6468642D8BFFC +:1049800030463419491C4945E4DBAEEB0000C01247 +:10499000288049460120FFF765FDE11210FB01F078 +:1049A000400000144042F880012013B0BDE8F08FB1 +:1049B0004042588007AB09AA0BA808E003A8019061 +:1049C00005A8009007AB09AA02210BA850E02DE929 +:1049D000F84F804691469A4600250C46062618E078 +:1049E0003AF915C039F91530021412FB0CFC4FEAE4 +:1049F000EC3CC0F34E0013FB02C210FB03F002EBD1 +:104A0000E03008EB4502400088527F1CA74205DBDE +:104A10006D1CA54229DA2F4606FB058B3BF91700D2 +:104A20006A1EC00312B206FB07F10BE001EB080C93 +:104A30003BF912303CF912C013FB0CF3521EA0EBF1 +:104A4000830012B2002AF1D5BD42C9D1012801DA92 +:104A500000200BE000A900F08BF8011429F81510D4 +:104A6000C0F34E002AF81500CFE70120BDE8F28F11 +:104A70002DE9F047DDF820E0099E4FF0000C884654 +:104A8000062526E005FB0C0936F914A039F9149027 +:104A900019FB0A77641E24B2002CF3D53EF91C40A2 +:104AA00032F91C9033F91CA0E403A4EB87073C14F3 +:104AB00014FB0AFA4FEAEA3AC7F34E0719FB04A4BB +:104AC00017FB09F704EBE7377F0026F81C700CF1A1 +:104AD000010CC44529DA0027ACF10104DBE700EB47 +:104AE000410C15FB04CC36F914E0BCF900C01CFBEA +:104AF0000EFCA7EB8C07641C24B2A8F1010CA445A2 +:104B0000EDDA33F911E032F911C03C1414FB0EFE5A +:104B10004FEAEE3EC7F34E071CFB04EE17FB0CF703 +:104B20000EEBE7377F0026F81170491E09B2002905 +:104B300004D436F91170FF034C1CDDE7BDE8F087A3 +:104B400010B500210022002801D5002010BD10233F +:104B5000840F520004EB81018000521C914226BF59 +:104B6000891A521C521E5B1EF2D1D003001410BDD4 +:104B700038B505460C46012D04DA002020804FF0A0 +:104B8000804032BDFFF792FC208005FA00F1C0F1B1 +:104B90001E002080C20758BF491000044014401C6A +:104BA0002080481610380FF2240200B232F910307B +:104BB00002EB4000C9014088181A490C10FB01F0B3 +:104BC000C0EBC33021884000084132BDFF7F2E7CFE +:104BD000AE7876757D72BA6F296DC26A8368666633 +:104BE00069648962C260135F7A5DF55B825A2159FC +:104BF000CF578B5655552C540F53FC51F450F64F4C +:104C0000014F144E304D534C7E4BAF4AE749254976 +:104C10006848B24700475446AD450A456B44D14306 +:104C20003B43A84219428E410641824000400000A9 +:104C300010B5DFF860484822014604F54570DFF7FB +:104C400059FED4F85003606304F554704168C4F809 +:104C500084108068C4F8D400032802D1012005F034 +:104C60003DF9002010BD80B54822DFF83818DFF785 +:104C700041FE002002BD80B50C220146DFF8280865 +:104C8000DFF738FE002002BD80B50C22DFF81818CF +:104C9000DFF730FE002002BD10B5DFF810484FF4FA +:104CA000A672002104F50870DDF7D8FA4FF40872F7 +:104CB00000212046DDF7D2FA00F0C7FB4DF2940345 +:104CC0004822DFF8EC17DFF8EC0705F062F904463C +:104CD0004CF251330C22DFF8E017DFF8E00705F063 +:104CE00058F9204310BD0023002A01D14FF480322F +:104CF000426201F00302032A00D1012301F01802ED +:104D0000182A00D1012301F0C002C02A00D10123DA +:104D1000002B00D08821016070470A460146DFF869 +:104D20008C07E0E7DFF86C1788624FF47A7290FB2B +:104D3000F2F2CA628A6C002A04D1DFF8842792FB5F +:104D4000F0F088647047DFF84C17886778314FF4CB +:104D50007A7290FBF2F24A600A6A002A04D1DFF804 +:104D6000602792FBF0F008627047DFF82817C1F85F +:104D7000C800C8314FF47A7290FBF2F24A600A6AB6 +:104D8000002A04D1DFF8382792FBF0F00862704760 +:104D9000DFF81817C1F860014FF47A7290FBF2F057 +:104DA000C1F864017047DFF80407D0F8D0000012A2 +:104DB00000F001007047DFF8F406006B001200F00D +:104DC00001007047DFF8E406D0F88000001200F020 +:104DD0000100704730B400200146DFF8D02602F110 +:104DE00030031C6DE40501D5D3E91601146BE4050D +:104DF00008D5D3E90245A94204DC01DBA04201D277 +:104E00002046294602F1D003D2F8D040E40508D567 +:104E1000D3E90245A94204DC01DBA04201D22046CD +:104E200029461C6DE40508D5D3E91645A94204DCE2 +:104E300001DBA04201D220462946D2F85031DB05E1 +:104E40000AD502F5A874D4E90223994204DC01DBF7 +:104E5000904201D21046194630BC70470A460146BE +:104E6000DFF860063FE70A460146DFF85C063AE7EE +:104E700070B584B004460D46B4F90400C003009038 +:104E800000AEB4F90600C0037060B4F90800C003B6 +:104E9000B06004F10C0300AA606A4100206880B28F +:104EA00004F0A2FA00982968A0EB610000907068F5 +:104EB0006968A0EB61007060B068A968A0EB610050 +:104EC000B06004F1180300AA606A4100206880B253 +:104ED00004F08AFA206B40F0200020637FBDDFF8E9 +:104EE000CC15C1F88400C1F85403704738B50C469E +:104EF000002818D0DFF8B435D10702D50168C3F80F +:104F00003413910703D503F54D7145684D60510782 +:104F100003D503F54D718068886003F54D7103F189 +:104F20005000FFF7A5FF2046FFF7D9FF0022102110 +:104F30000846BDE8384005F061B8F8B504460D46AE +:104F4000DFF86865002C12D006F557770C22214651 +:104F5000384604F027FC002809D00C2221463846A8 +:104F6000DFF7C8FC06F557713046FFF781FF756320 +:104F700006F54B746562D6F80801002802D0C6F821 +:104F80002C0303E04FF4D810C6F82C0300220421B0 +:104F9000084605F033F801206060F1BDDFF80C151C +:104FA000D1F83003012801D1012000E000200022C7 +:104FB000C1F83023704710B50C46002804D00C22ED +:104FC000DFF8E414DFF796FC002C04D0DFF8DC04F3 +:104FD000D0F82C03206010BDF8B514461D46DFF84C +:104FE000CC6406F1540702688B0610D4A6F854204E +:104FF000416879808068B880F86A40F08000F86283 +:1050000006F54D7106F15000FFF732FF0DE07A61B1 +:105010004268BA618068F861F86A40F02000F8627E +:1050200001F003003863C6F85403F86A40F4A07036 +:10503000F862D6E92201C6E92401C6E9224500202A +:10504000F2BD70B514461D46DFF8606406220146C5 +:10505000301DDFF74FFC306B40F4E0703063D6E971 +:105060000E01C6E91001C6E90E4506F55771304636 +:10507000FFF7FEFE002070BDFEB514461D46DFF8AA +:105080002C6406F1A4078A0617D400F0B8F900A82A +:1050900000F0A8F90098A6F8A40000A8416879805B +:1050A0008068B88006F5457106F1A000FFF7E0FEC4 +:1050B000F86A40F08000F8620EE002687A614268A7 +:1050C000BA618068F861F86A40F02000F86201F087 +:1050D00003003863C6F85803D6E93601C6E938013B +:1050E000C6E93645F86A40F4A070F8620020FEBDBB +:1050F0002DE9F04385B006460F4614461D46DFF8FD +:10510000AC8308F5A079F80409D500A9304604F06D +:10511000E2FA102200A94846DFF7ECFB04E0102277 +:1051200031464846DFF7E6FBC8E95645D8F8500156 +:1051300007F4385141F4E0710843C8F85001D8F839 +:10514000500110F4406F04D022462B46304604F044 +:10515000D3FDD8F8500100050AD500A80FF2703130 +:105160001022DDF775FC22462B4600A804F0D8FD7E +:10517000002005B0BDE8F083DFF830030021C0F85F +:1051800080107047DFF824030021C0F8D01070476A +:10519000DFF818030021C0F850117047DFF80C0346 +:1051A0000021016370472DE9F04300231C4600E015 +:1051B000641CDFF8F852D5F82062B4420DDA0C27EF +:1051C00007FB0455D5F824620746BE4203D0D5F844 +:1051D00028528D42ECD1162032E0142E2EDA1C46D5 +:1051E000002E01D11BE0641CB44207DA04EB440733 +:1051F00005EB8707D7F828728F42F4DBB4420ED054 +:105200000BE00C2707FB065707F5097C07F5067727 +:10521000B7E80043ACE80043761EB442F1DB0C274C +:1052200007FB0454C4F8240204F50970416082604D +:10523000D5F82002401CC5F8200200E00C231846D7 +:10524000BDE8F083F8B50025DFF8604294F830003F +:10525000400600D5022594F88000400601D545F0AF +:10526000010594F8D000400601D545F0040594F8F6 +:105270002001400601D545F0080594F85001C0060C +:1052800001D545F0100594F89801400601D545F088 +:1052900020050026374611E007EB470004EB8001AC +:1052A000D1F82C02054208D02046D1F824128847B4 +:1052B000002802D0002E00D106467F1CD4F8200220 +:1052C0008742E9DB00F002F83046F2BD10B47748BF +:1052D000016B4A0602D541F01001016300F1300173 +:1052E0000A6D530602D542F010020A65D0F8D020AC +:1052F000530603D542F01002C0F8D02000F1D002CE +:10530000136D5C0602D543F010031365D0F85031DD +:105310005C0603D543F01003C0F85031036B23F053 +:10532000400303630B6D23F040030B65D0F8D010EE +:1053300021F04001C0F8D010116D21F0400111653D +:10534000D0F8501121F04001C0F8501100F5A870BC +:10535000816C21F04001816410BC704738B50C4667 +:105360001546002803D00C225849DFF7C3FA002D58 +:1053700004D04E48D0E92223C5E90023002C03D0F5 +:105380004A48D0F88400207031BD70B50C461546EF +:10539000464E0C2206F1B801DFF7ACFA002D03D01F +:1053A000D6E93601C5E90001002C09D0D6F868031A +:1053B000002802D00020207070BDD6F8D4002070E4 +:1053C00070BD3A48406B70473848D0F868130029E0 +:1053D00001D000207047D0F8D40070473348D0F88F +:1053E00084007047002107E0304A02EB8102D2F8C6 +:1053F000C42140F82120491C0329F5DB704718B46B +:10540000002106E003EB810250F82130C2F8B831E8 +:10541000491C264B0329F5DBD3F81812012907D1C3 +:1054200003F5E272014603F5E87018BC04F05EB8BB +:10543000002106E003EB810250F82140C2F8C4418C +:10544000491C0329F6DB11BC704710B50020024649 +:10545000104C04E004EB8001C1F8F421401C092841 +:10546000F8DB2422002104F5E870DCF7F7FE0020C9 +:105470000AE004EB00114FF07E52C1F8F4214FF026 +:105480008042C1F8D021401C0328F2DBBDE8104067 +:1054900002E00000F8E4002004480021C0F81812DF +:1054A000704700000CE8002054E80020F8E40020D9 +:1054B000674C0208314C0208894C0208774C0208FC +:1054C00040420F0048E5002098E5002060E50020FC +:1054D000000000400000000000000000000000008C +:1054E000704780B504F04AFD04F09CFD00280CD004 +:1054F00004F098FD23230FF28C020FF29801FFF7BE +:10550000EFFFBDE8014004F08DBDFFF7C5FB0028AB +:105510000CD0FFF7C1FB26230FF268020FF27401D3 +:10552000FFF7DEFFBDE80140FFF7B6BB04F0C7FCA4 +:1055300000280CD004F0C3FC28230FF248020FF21D +:105540005401FFF7CDFFBDE8014004F0B8BC0120D5 +:1055500004F05DFD002002BD80B504F079FD002857 +:105560000CD004F075FD47230FF264020FF2240102 +:10557000FFF7B6FFBDE8014004F06ABD002002BDA0 +:1055800000000000696E765F696E69745F6D706C13 +:1055900000000000433A5C50726F6A6563745C4EB1 +:1055A0006F7465335F466972655C4E6F7465335F17 +:1055B000466972655C496E76656E53656E73655CAF +:1055C0006D6C6C6974655C6D706C2E63000000001E +:1055D000696E765F73746172745F6D706C00000049 +:1055E0007047000000B510EE100AE2F737FD002208 +:1055F000DFF8443CDDF738FB04F040FDDFF8F42B26 +:10560000C2E9140100BDDFF8EC2BD2E912017047AA +:10561000DFF8E01BD0E90E23C1E9122301208865E1 +:105620007047C1070CD5DFF8501C4FF040420A67A5 +:1056300070314A608A604FF08042CA600A614A61F4 +:1056400081070ED5DFF8301C4FF04042C1F8182119 +:1056500001F58C714A608A604FF08042CA600A612D +:105660004A6140070ED5DFF8101C4FF04042C1F8E8 +:10567000C02101F5E070426082604FF08042C2605C +:1056800002614261704700000021401000D0491CB7 +:105690000128FADA481C70472DE9F14F88B0002044 +:1056A0000146CDE904010898806F002801D1084621 +:1056B000BEE0FFF7E9FF81464FF000088BE000EB0A +:1056C000C802D2E900014A4604F016FD04460D4620 +:1056D000089800EBC80002900246D2E906014A464B +:1056E00004F00AFD06460F46A4FB042304FB053321 +:1056F00005FB0433A4FB020104FB031105FB0211AB +:10570000CDE90601029AD2E912014A4604F0F4FCFE +:10571000CDE90001A6FB062306FB073307FB063392 +:105720000320A0FB02AB00FB03BBDDE90001B0EBF3 +:105730000A0061EB0B01DDE90623A4FB02AB04FBCD +:1057400003BB05FB02BB4FEA4B0B4BEADA7B10EBCA +:105750004A0A41EB0B0BA4FB040104FB051105FBFA +:105760000411301A67EB0101A4FB002304FB013391 +:1057700005FB00330320A0FB026700FB0377DDE994 +:10578000060136184F41029AD2E90C014A4604F04C +:10579000B3FC321A67EB0103A4FB020104FB031103 +:1057A00005FB0211890041EA9071BAEB80006BEBB6 +:1057B0000101002904DC00DB02D2404261EB41011F +:1057C000DDE904238B4204DC01DB824201D2CDE916 +:1057D000040108F10108B8F1030F0898FFF66FAF54 +:1057E000806F0899C96F884210D000EE100AB8EE99 +:1057F000C00A04F093FCF7EE000A80EE800A0898D5 +:1058000080ED200A08980146896FC167DDE904012F +:1058100004F092FC00EE100A0898D0ED200A20EE69 +:10582000200A10EE100A09B0BDE8F04F04F0B6BC33 +:1058300009B0BDE8F08F2DE9F04F85B0814600201A +:105840000146CDE90201D9F87800002801D10846C7 +:1058500079E0FFF719FF00904FF0000849E009EBED +:10586000C802D2E90001009A04F046FC04460D4645 +:10587000A4FB046704FB057705FB047709EBC8006C +:1058800001900246D2E90601009A04F035FC801B23 +:10589000B941A4FB002304FB013305FB00330320C3 +:1058A000A0FB02AB00FB03BBA4FB060104FB07113A +:1058B00005FB06111AEB00044BEB0105019AD2E936 +:1058C0000C01009A04F018FC201A65EB0101002974 +:1058D00004DC00DB02D2404261EB4101DDE902233E +:1058E0008B4204DC01DB824201D2CDE9020108F1E6 +:1058F0000108B8F1030FB2DBD9F87800D9F87C10B1 +:1059000088420FD000EE100AB8EEC00A04F006FC80 +:10591000F7EE000A80EE800A89ED200AD9F87800B7 +:10592000C9F87C00DDE9020104F006FC00EE100A73 +:10593000D9ED200A20EE200A10EE100A05B0BDE8CD +:10594000F04F04F02BBC05B0BDE8F08F10B401217E +:10595000026BD20513D5DFF82029D2F888301468FD +:10596000A3420CDBD0F88000C00505D5D2F8D801E1 +:105970005168884203DB0521084610BC70470020AF +:10598000FBE72DE9F04184B00446002600ADDFF8C6 +:10599000E87812E007EBC602D2E9040107F50872C5 +:1059A000926AF2F757FD07EB8602D2F894201204B0 +:1059B000D317801845F82600761C032EEADBA822B0 +:1059C000002107F11000DCF749FC0120FFF729FE58 +:1059D0006868002801D4014600E04142009A002A8C +:1059E00000D55242914201DA104602E0002800D56B +:1059F0004042A968002901D40A4600E04A42824296 +:105A000004DB002901D4084600E04842B4F906202E +:105A1000110001D40B4600E04B42B4F904C06646C5 +:105A2000BCF1000F01D4B64601E0C6F1000E73458B +:105A300004DABCF1000F06D5764204E0002A01D456 +:105A40000E4600E04E42B4F908100A0001D4134695 +:105A500000E05342B34204DB002901D4164600E0C3 +:105A60005642616A03F045FA616A300403F041FA74 +:105A7000B0F5201F03DD052087F820024BE0DFF89A +:105A80007467F16A6A68501A01D4034600E08B1A01 +:105A9000D6F828C0DDF800E0BEEB0C0E01D4F046CD +:105AA00003E0DDF80080ACEB0808434508DABEF1FE +:105AB000000F01D4704606E00098ACEB000002E055 +:105AC000002800D5881A316BAA68531A01D49C4665 +:105AD00001E0A1EB020C844504DB002B01D4184645 +:105AE00000E0881A616A03F004FA8046022004F09C +:105AF00033F907F50870C06A804506DA032100A86B +:105B0000FFF71BFA2046FFF783FD0098B062686834 +:105B1000F062A8683063BDE8FF812DE9FE4186464A +:105B20000E4600271CE0D317A2FB004502FB0155DF +:105B300003FB0055204629460CEB4C0306EBC30340 +:105B400003EBC708D8E9004524184D4103EBC70310 +:105B5000C3E900450CF1010CBCF1040FE3DB7F1C31 +:105B6000B06F032F1BDA06EB870101F160030028F9 +:105B700002D13EF9170058623EF917005A6A821A9C +:105B800000A840F82720086E904200DA0A66D8681C +:105B9000824200DADA60012000218C46DCE7401CFA +:105BA000B0670120C6F8A000BDE8F7812DE9F041FB +:105BB00004460025069E05E006EB850054F82510F6 +:105BC000C1666D1C032DF7DB06F17807C7E90623D4 +:105BD000B06F002814D0002510E006EB850854F8BB +:105BE0002500D8F88410401AF0F776FAD8F860103B +:105BF000814200DA0146C8F860106D1C032DECDB11 +:105C0000B06F401CB0670120B862BDE8F08110B4ED +:105C1000002108E000EB810202F16003DC685C62B5 +:105C200000231366491C0329F4DB00F17801D1E954 +:105C30000623C1E90823002282671046886210BC4F +:105C4000704730B4D0E92423D0E92645101B63EB1C +:105C5000050130BC7047016E426E8A4200DA0A4686 +:105C6000816E914200DA114608467047016EC26E9D +:105C7000891A426E036FD21A8A4200DB1146826E85 +:105C8000406F101A884200DB01460846704710B585 +:105C9000DFF8E4451022002104F51670DCF7DEFA87 +:105CA0001022002104F51E70DCF7D8FA1022002122 +:105CB00004F51A70DCF7D2FA1022002104F52270E4 +:105CC000BDE81040DCF7CABA10B5DFF8AC45A82231 +:105CD000002104F11000DCF7C1FAA822002104F52C +:105CE000B070DCF7BBFA0520BDE8104099E4D0B4F1 +:105CF000DFF8842502F51E739C68002C02D1C2E9EE +:105D00009E0108E0D2E99E678F4204DC01DB8642F7 +:105D100001D2C2E99E01601C9860D0BC7047D0B42B +:105D2000DFF8542502F522739C68002C02D1C2E9E9 +:105D3000A20108E0D2E9A2678F4204DC01DB8642BF +:105D400001D2C2E9A201601C9860D0BC7047D0B4F7 +:105D5000DFF8242502F516739C68002C02D1C2E9F5 +:105D6000960108E0D2E99667B94204DC01DBB04253 +:105D700001D2C2E99601601C9860D0BC7047D0B4D3 +:105D8000DFF8F42402F51A739C68002C02D1C2E9F2 +:105D90009A0108E0D2E99A67B94204DC01DBB0421B +:105DA00001D2C2E99A01601C9860D0BC7047F8B576 +:105DB00007460124DFF8C05405F11000FFF756FF35 +:105DC000DFF83064316C814203DAFFF77DFF002099 +:105DD000F2BD3846FFF7BAFD070001D10220F2BD3F +:105DE00078071ED505F5B070FFF756FC000D40EAA8 +:105DF00001300915C5E98401D5E98401D6E90423F8 +:105E00008B4205DC01DB824202D20024FFF7B7FFA0 +:105E1000A822002105F5B070DCF720FA0420FFF776 +:105E200000FCF80711D505F11000FFF735FC05F56A +:105E30000472C2E90601D6E906238B4205DC01DBC8 +:105E4000824202D20024FFF782FF2046F2BD1FB536 +:105E5000044694F8300000F0C000C02804D1DFF8F8 +:105E60002014201DFFF759FE94F8800000F0C000B8 +:105E7000C02805D1DFF80C1404F15400FFF74DFEE3 +:105E8000D4F8D00000F0C001C0290BD1002001AA35 +:105E9000032818DA04EB4001B1F9A41042F82010ED +:105EA000401CF5E700F06000602814D1002001AA32 +:105EB00007E004EB8001D1F8B810891342F82010F4 +:105EC000401C0328F5DBDFF8C0030090D4E936233B +:105ED00001A8FFF76BFE1FBDF8B50446002004F1D2 +:105EE0002C077968CA0540F1278101F0500140294B +:105EF00000D1012097F8541001F05001402900D141 +:105F0000012094F8D01001F05001402900D1012067 +:105F1000DFF86453002809D0FFF7D6FE0020C5F84B +:105F2000180285F820022046FFF772FBE06AD5F8D8 +:105F3000401281421ED0C5F84002AE4E716B0A2855 +:105F400006DA48002860B06B401CC5F8440203E044 +:105F50002960B06BC5F84402D5F84402C0F11000C6 +:105F6000C5F848024FF48040C5F84C021920B16BC7 +:105F700088403064386DD5F85012814210D0C5F891 +:105F800050029C4E716B0A2806DA48006860B06BBC +:105F9000401CC5F8540203E06960B06BC5F85402B8 +:105FA0002046FFF754FF95F82002062800F2C4802F +:105FB000DFE800F004122C3574A4B100D5F8180203 +:105FC000411CC5F818120A28C0F2B680FFF77CFE03 +:105FD000012085F82002AFE0D5F8B000012840F09C +:105FE000AB802046FFF7E3FE002803D1052085F8AB +:105FF000200204E0012802D1022085F8200205F1E8 +:10600000B800FFF704FEFFF742FE95E0032085F895 +:1060100020022046FFF7B5FCFFF756FE8CE0204635 +:10602000FFF7C5FE002857D0012840F08580D4F83E +:10603000D000C00523D504F003F900281FD105F1D5 +:10604000B8073846FFF707FEC117C5E98201694E58 +:10605000D6E90201D5E98223994206DC01DB9042B0 +:1060600003D2052085F820020FE03846FFF7E9FD4E +:10607000D6E90823994208DB01DC904205D30420CD +:1060800085F820022046FFF77CFCD5E98401FFF764 +:1060900046FED5E98A01FFF72AFE4DE0D4F8D0008C +:1060A000C00514D504F0CCF8002810D105F1B800D3 +:1060B000FFF7D1FDC117C5E982014E48D0E902239F +:1060C000D5E982018B4207DB01DC824204D3204602 +:1060D000FFF76DFE002803D1052085F820022BE094 +:1060E000012829D12046FFF74CFCD5E98401FFF7B0 +:1060F00016FED5E98A01FFF7FAFD1DE0062085F8B6 +:106100002002012003F028FEFFF7DEFD05F1B800B4 +:10611000FFF77DFD10E02046FFF749FE012803D17F +:10612000022085F8200207E0002805D1FFF7CCFD0A +:1061300005F1B800FFF76BFD0020F2BD0021401013 +:1061400000D0491C0128FADA2A4801224B1C9A4047 +:106150004263491C8163192202FA01F1016470470C +:1061600038B5454C4FF4267200212046DCF776F80E +:10617000204D602200212846DCF770F80720FFF749 +:1061800050FA45F6C0500021C5E906011E20C5E9B8 +:1061900002016420C5E904013C48C5E90801012069 +:1061A000C4F81C021920FFF7C9FF0020C4F8400200 +:1061B0009FED320AFFF716FA0020A86532BD10B530 +:1061C0002D4C4FF4267200212046DCF747F80720BB +:1061D000FFF727FA0120C4F81C0284F820020022ED +:1061E000032103F00BFF072264212948BDE810407A +:1061F000FEF7D9BF081D012010B5FFF7B1FF04005D +:1062000009D040F225330FF294020FF2A801FFF7F4 +:10621000E7F9204610BD1F4803F00CFF040009D029 +:106220004FF44A730FF274020FF28801FFF7D8F9A6 +:10623000204610BD002010BD65CDCD41F8B500262B +:10624000154FB96D012915D1016BC90512D5D0E9DA +:106250000E45FFF7D8F9201A65EB0101002909DB8B +:1062600000DC07D3D7E91423994203DC01DB904219 +:1062700000D201263046F2BD58F7002000009644B7 +:1062800068F70020B8F8002010F800200008AF2FB1 +:10629000D95E0208BF610208081D0120696E765FA1 +:1062A000656E61626C655F666173745F6E6F6D6F62 +:1062B00074000000433A5C50726F6A6563745C4E10 +:1062C0006F7465335F466972655C4E6F7465335FEA +:1062D000466972655C496E76656E53656E73655C82 +:1062E0006D706C5C666173745F6E6F5F6D6F746907 +:1062F0006F6E2E630000000070B52DED028B98B01C +:1063000005460E4608EE102A1C4695ED020AF8EEE8 +:10631000C00A95ED010AB8EEC01A95ED000AB8EE74 +:10632000C00A20EE000A01EE010A00EEA00A03F006 +:10633000F5FEF0EE408A18EE900AE1F78FFE21F0AC +:1063400000410122DFF8A839EEF732FA00F2B980F5 +:106350009FEDD70AD6ED000AF8EEE00A60EE800A5B +:10636000CDED040A04A8D6ED010AF8EEE00A60EECD +:10637000800AC0ED010AD6ED020AF8EEE00A60EEEE +:10638000800AC0ED020AD6ED030AF8EEE00A20EE1C +:10639000800A80ED030A0020089008A895ED000A05 +:1063A000B8EEC00A80EE280A80ED010A95ED010AD8 +:1063B000B8EEC00A80EE280A80ED020A95ED020AC6 +:1063C000B8EEC00A80EE280A80ED030A14AA08A9D4 +:1063D00004A802F038FE10A904A802F052FF00AA97 +:1063E00010A914A802F02FFE00AD95ED010AD5ED1D +:1063F000020A20EEA01A00EE001ADFEDAE1AB4EE8B +:10640000611AF1EE10FA02D59FEDAB1A15E0DFED3F +:10641000AB1AB4EE611AF1EE10FA02D59FEDA81A8C +:106420000BE0DFEDA81AB4EE611AF1EE10FA02D516 +:106430009FEDA51A01E0B6EE001AF8EEC81A9FED1E +:10644000A32AC1EE821A21EE811A00200C900CA81A +:1064500060EE810AC0ED010A20EE410A80ED020AD9 +:106460000021C16000AA04A902F0EDFD00AA04A960 +:1064700000A802F051FE00A802F0C9FE9FEDDA0A62 +:10648000DDED000A60EE800AFDEEE00AC4ED000AD0 +:10649000D5ED010A60EE800AFDEEE00AC4ED010AC6 +:1064A000D5ED020A60EE800AFDEEE00AC4ED020AB4 +:1064B000D5ED030A20EE800ABDEEC00A84ED030A82 +:1064C00004E0102231462046DEF714FA18B0BDEC85 +:1064D000028B70BD30B52DED048B81B004460D46A6 +:1064E00094ED020AF8EEC00A94ED010AB8EEC01A63 +:1064F00094ED000AB8EEC00A20EE000A01EE010A8F +:1065000000EEA00A03F00AFE9FEDB88AB4EE480A36 +:10651000F1EE10FA3CD4D4ED020AF8EEE00A80EE77 +:10652000809AB7EE000A30EE490AB5EE400AF1EE65 +:1065300010FA01DC9FEDAE0AF6EE009A20EE290A71 +:1065400003F0ECFDF0EE408AB7EE000A39EE000AE7 +:10655000B5EE400AF1EE10FA01DC9FEDA50A20EE3F +:10656000290A03F0DBFDB0EE409A94ED010AF8EE43 +:10657000C00A94ED000AB8EEC00A20EE000A00EE50 +:10658000A00A03F0CBFDB4EE480AF1EE10FA07D5ED +:106590004FF08040286000206860A860E86027E035 +:1065A000DFED910A29EE201ABDEEC11A85ED001A21 +:1065B00094ED011AB8EEC11A81EE001A21EE281AE4 +:1065C00061EE200AFDEEE00AC5ED010AD4ED000AF5 +:1065D000F8EEE00A80EE800A20EE280ADFED850A58 +:1065E00020EE200ABDEEC00A85ED020A0020E86018 +:1065F00001B0BDEC048B30BD38B504460D4694EDBA +:10660000030AF8EEC00A94ED020AB8EEC01A94ED3F +:10661000010AF8EEC01A94ED000AB8EEC00A20EEA6 +:10662000000A01EEA10A01EE010A00EEA00AB5EE91 +:10663000400AF1EE10FA07D84FF0804028600020A1 +:106640006860A860E86031BD03F068FDF7EE000AFD +:1066500080EE800ADFED640A20EE200AD4ED000A05 +:10666000F8EEE00A60EE800AFDEEE00AC5ED000AF1 +:10667000D4ED010AF8EEE00A60EE800AFDEEE00AD1 +:10668000C5ED010AD4ED020AF8EEE00A60EE800AD8 +:10669000FDEEE00AC5ED020AD4ED030AF8EEE00AC9 +:1066A00020EE800ABDEEC00A85ED030A31BD000070 +:1066B0000000803017B75139A69BC43B0AD7233C52 +:1066C000CDCCCC3DCDCC4C3E9A99993E0014CD47D3 +:1066D00070B588B0054695F83000400640F18180DD +:1066E000A869002800D54042B0F5803F0DDAE9697D +:1066F000002900D54942B1F5803F06DA296A002910 +:1067000000D54942B1F5803F67DBDFF8E815DFF8D7 +:10671000E84588420BDAE869002800D54042884203 +:1067200005DA286A002800D54042884202DB0320AF +:10673000A06301E00220A063A86A616B81421ED0C1 +:10674000606395ED0A0AB8EEC00ADFEDA00A80EE9C +:10675000200ADFED9F0A20EE200A10EE100AE1F772 +:106760007DFCDFF89825DFF89835DCF77DFA00220C +:10677000DFF89035DCF7FEFBDCF7A0FD206300209E +:10678000049004AE216BA86902F0B3FB7060216B2A +:10679000E86902F0AEFBB060216B286A02F0A9FB49 +:1067A000F06000AA04A9204602F0A9FB009880012D +:1067B000009000A841688901416081688901816079 +:1067C000C1688901C160224600A9204602F0FAFB97 +:1067D00021462046FFF710FF03E0DFF81C050021EB +:1067E000816308B070BD00000000804E0100803F52 +:1067F00000000000000080CE70B52DED048B8EB03F +:10680000044694F85001400640F1DC80DFF8E8547B +:10681000D4F840012968401A00D54042D4F86411E8 +:10682000DFF8E4245143814202DA0320A86301E047 +:106830000220A863D4F85001810505D5294604F546 +:10684000A070FFF7D9FEBDE0800407D54FF080406F +:10685000A8640020E8642865686597E0002103A823 +:10686000FEF7A9FB0C2205F13C0103A802F09AFFF8 +:10687000002805D1D4F86001A96D884200F0868017 +:1068800000AB03AA616A206880B202F0ADFD00AEE1 +:1068900096ED020AF8EEC00A96ED010AB8EEC01AAB +:1068A0009DED000AB8EEC00A20EE000A01EE010AD2 +:1068B00000EEA00A03F032FCB0EE408A9FED450ADC +:1068C00028EE000ADFED440A80EE200AD4ED580AD3 +:1068D000F8EEE00A20EE200ADFED400AC0EE208A42 +:1068E000B0EE680A03F0B4FCB0EE409AB0EE680A6D +:1068F00003F0B1FCF0EE000AB4EE608AF1EE10FA9B +:1069000007D54FF08040A8640020E86428656865DA +:1069100033E0DFEDCB0A29EE201ABDEEC11A85ED7A +:10692000121A20EE200ADDED000AF8EEE00A60EE11 +:10693000200AC0EE880AF1EE600AFDEEE00AC5ED1D +:10694000130AD6ED010AF8EEE00A60EE200AC0EE66 +:10695000880AF1EE600AFDEEE00AC5ED140AD6EDF4 +:10696000020AF8EEE00A20EE200A80EE080AB1EEF4 +:10697000400ABDEEC00A85ED150A0C2203A905F1F7 +:106980003C00DDF7B7FFD4F86001A86504F5A074FA +:1069900006AA05F14801204602F0B1FA0AAA06A9A2 +:1069A00005F15C0002F0ABFA05F15C01204602F053 +:1069B0001CFB06AA0AA9284602F0A1FA294606A845 +:1069C000FFF71AFE0EB0BDEC048B70BD00247449B5 +:1069D0000000004EDB0F49400000344B0024F44916 +:1069E0002DE9F04F93B00746012407F13005286DDB +:1069F000C14E00F05001402904D0F16E002912D0A0 +:106A0000400610D506F1100107F16800FFF762FD9E +:106A1000D7F85001C00519D506F15C0107F5A07043 +:106A200002F0E3FA12E0D7F8500100F05002402AD9 +:106A300003D0002915D0400613D506F15C0107F5F7 +:106A4000A07002F0D2FA286DC0050AD500A9304620 +:106A500002F0CBFA06F1200200A906F1100002F0C4 +:106A60004EFA386BC005384602D5FFF731FE01E01B +:106A7000FFF7C2FE06F11002314606F1200002F0D7 +:106A80003EFA95F85000400640F1D580386BD7F8B3 +:106A900050110843C00540F1BA8004AA07F168010B +:106AA00006F1100002F0B0FAD5F840A04FEAEA7BF8 +:106AB000E86BC117AA6BD317A2FB028902FB0399EB +:106AC00003FB0299A0FB002300FB013301FB003311 +:106AD00018EB020049EB0301AAFB0A230AFB0B3364 +:106AE0000BFB0A338018594102292FDB02DCB0F17D +:106AF000804F2BD307A803F0F5F907A8D0F808A01A +:106B00004FEAEA7B4068C117079AD317A2FB0289B4 +:106B100002FB039903FB0299A0FB002300FB013356 +:106B200001FB003318EB020049EB0301AAFB0A2327 +:106B30000AFB0B330BFB0A3380185941022905DB92 +:106B400002DCB0F1804F01D30420B063B06B0428A5 +:106B500004D100244FF49661316722E0022801D06D +:106B600003280BD1A96C41F2883291FBF2F4012C7D +:106B700000DA0124316F012913DB0FE0012801D075 +:106B800000280ED1A96C41F2883291FBF2F1012963 +:106B900000DA21464C00316F012902DB091B316705 +:106BA000A400032800D0A4005848444300200A90C1 +:106BB0000AAD21460598800202F09BF968602146E3 +:106BC00004984042800202F094F9A86000200D90E1 +:106BD0000EAA06F110010AA802F091F906F11002BE +:106BE0000EA906F1100002F0EDF906F1100106F110 +:106BF0001000FFF701FD00A9304602F0F6F906F19A +:106C0000200200A906F1100002F079F913E006F164 +:106C10001003AA6C06F1100107F16800FFF76CFB86 +:106C200000A9304602F0E1F906F1200200A906F1C0 +:106C3000100002F064F9002013B0BDE8F08F0000EE +:106C40000000804E38B50446206BC0050AD404F11C +:106C50003000006DC00505D4D4F85001C00501D442 +:106C6000002032BD244DD4F8500100F4A060B0F5EE +:106C7000A06F09D1102204F5A07105F11000DDF715 +:106C800039FE0120E86604E02046FFF7A9FE002057 +:106C9000E86604F13000D0E9022305F1100003F0AA +:106CA0002BF8002032BD10B5134C74220021204671 +:106CB000DBF7D4FA4FF08040206120602062E0636F +:106CC000E0650020206710BD80B5FFF7ECFF0028CD +:106CD00005D10FF21100BDE8024003F0ABB902BDCF +:106CE000000000001322C8210948FEF75CBA00002A +:106CF0000000D04001006400F4100120112D445424 +:106D0000FB2189400080664071981C00A69BC4004E +:106D1000456C020838B50446DFF8E054686808702E +:106D2000D5E90201C2E90001686A9FED600A296A9B +:106D3000002920D400EE900AF8EEE00A60EE800A06 +:106D4000C4ED000AD5ED0A0AF8EEE00A60EE800A0A +:106D5000C4ED010AD5ED0B0AF8EEE00A60EE800AF8 +:106D6000C4ED020AD5ED080AF8EEE00A20EE800A2A +:106D700084ED030A26E0404200EE900AF8EEE00AB5 +:106D800060EE800AC4ED000AA86A404200EE900A54 +:106D9000F8EEE00A60EE800AC4ED010AE86A4042BB +:106DA00000EE900AF8EEE00A60EE800AC4ED020AF6 +:106DB000286A404200EE900AF8EEE00A20EE800ACF +:106DC00084ED030A03F0AEF884ED040AE86B32BDEB +:106DD00070B588B00446164604A8FEF7BFFADFF87F +:106DE0001C54D5E90201C5E90401C6E9000100A867 +:106DF00002F0F8FF00A841689FED2C0A009A002AD3 +:106E000020D400EE901AF8EEE00A60EE800AC4ED9D +:106E1000000AD0ED020AF8EEE00A60EE800AC4ED46 +:106E2000010AD0ED030AF8EEE00A60EE800AC4ED34 +:106E3000020ADDED000AF8EEE00A20EE800A84ED99 +:106E4000030A26E0494200EE901AF8EEE00A60EEEE +:106E5000800AC4ED000A8168494200EE901AF8EEFB +:106E6000E00A60EE800AC4ED010AC068404200EE0C +:106E7000900AF8EEE00A60EE800AC4ED020A00987B +:106E8000404200EE900AF8EEE00A20EE800A84ED1F +:106E9000030A00202061686B801100F00100296C5A +:106EA000891101F00101084308B070BD0000803075 +:106EB00010B58AB0044600A9DFF8440302F0F6F9E1 +:106EC0009FEDBD0ADDED000AF8EEE00A60EE800AF3 +:106ED000C4ED000A00A8D0ED010AF8EEE00A60EE69 +:106EE000800AC4ED010AD0ED020AF8EEE00A60EE75 +:106EF000800AC4ED020AD0ED030AF8EEE00A60EE63 +:106F0000800AC4ED030AD0ED040AF8EEE00A60EE50 +:106F1000800AC4ED040AD0ED050AF8EEE00A60EE3E +:106F2000800AC4ED050AD0ED060AF8EEE00A60EE2C +:106F3000800AC4ED060AD0ED070AF8EEE00A60EE1A +:106F4000800AC4ED070AD0ED080AF8EEE00A20EE48 +:106F5000800A84ED080A0AB010BD000010B52DEDBE +:106F6000028B8AB0044600A8FFF7A2FF9FED1F8A9C +:106F7000DDED000A9DED030AB1EE400A03F06EF963 +:106F800020EE080A84ED000ADDED080A9DED070AEF +:106F9000B1EE400A03F062F920EE080A84ED010A1E +:106FA0009DED060A03F092F920EE080A84ED020A2C +:106FB00094ED000AB5EE400AF1EE10FA05D5DFEDCA +:106FC0000C0A30EE200A84ED000A0AB0BDEC028BF8 +:106FD00010BDD0B5894C63680B70D4E90267C2E973 +:106FE0000067FFF7BBFFE06BD0BD0000E12E6542FC +:106FF0000000B4432DE9FF41044600254FF47A78A0 +:107000007E4E06F10802311D06F1200002F00DFF50 +:1070100004F12C025068306304F13800816C716314 +:1070200004F1CC077968B16304F1D8018B6F336444 +:107030005268D30501D5D4F82C80836C5FEAC35C19 +:1070400005D5D0F844C0C44501DAE0460125D7F89B +:1070500004C05FEACC5E05D5D4F8CCE0C64501DAC1 +:10706000F0460225896F5FEAC15E04D5D4F864E179 +:10707000C64500DA03255FEAC15E07D50CEA030EB8 +:107080005FEACE5E0BD44FF0FF3508E003EA020E54 +:107090000CEA0E0E5FEACE5E01D44FF0FF35002DF4 +:1070A00005D0022D1BD00ED3032D24D02FE002F0EB +:1070B0004000401E8041C043C00FF063D4E90E0180 +:1070C000C6E9020125E003F04001491E8941C94398 +:1070D000C90FF163D0E91423C6E9022319E00CF0CB +:1070E0004000401E8041C043C00FF063D4E9360128 +:1070F000C6E902010DE001F04000401E8041C0439E +:10710000C00FF063D4E95601C6E9020101E0002096 +:10711000F06306F1180200A901A8FEF736F99DF9FF +:107120000000306000240DE040060AD501A850F8A8 +:10713000240000EE100ABAEEC80A06EB840080EDC7 +:10714000320A641C032C2CDA387900F050004028F5 +:107150000CD101A850F8240000EE100AB8EEC00AC5 +:107160002C2000FB0460443002F084F9786800F0C1 +:10717000C001C029D8D101A850F8240000EE100A9F +:10718000B8EEC00A2C2000FB0460443002F087F9FE +:10719000DFED190A20EE200A06EB840080ED320AAA +:1071A000CFE7002004B0BDE8F08137224FF46171D1 +:1071B0001448FDF7F8BF00000000803038B50F4CD0 +:1071C000D82200212046DBF749F8002508E004F129 +:1071D000D8012C2000FB0540443002F03CF96D1C26 +:1071E000032DF4DB002032BD80B5FFF7E7FF064832 +:1071F000BDE8024002F01EBF00008037F875002095 +:1072000018760020F56F0208AB7102082DE9F041F5 +:107210002DED048B84B004460F4690461D46DFF8E2 +:1072200064693C2206F10C01304603F07FF85022DD +:1072300006F1580106F1480003F078F80C224146A7 +:1072400006F13C00DDF756FB1022394606F19800A6 +:10725000DDF750FB9FEDA39AD6F85C01401CC6F801 +:107260005C01072802DB0620C6F85C01D6F85C0149 +:10727000C0F1060722E000AA06EB071000F1480162 +:10728000284601F0E0FE00AA07EB470006EB80016C +:1072900004F1B80001F0AAFDF0EE409A19EE900A50 +:1072A000E0F7DCFE21F0004153EC182B23F0004303 +:1072B000DBF7B8FD01D2B0EE699A7F1C19EE100A17 +:1072C000E0F7CCFE41EC180B062FD4DBB0EE480AF9 +:1072D000F0EE680A04B0BDEC048BBDE8F08100005C +:1072E0002DE9F04F2DED0A8B81B0B0EE409AF0EE13 +:1072F000609A0C46914600259FED76ABB0EE4A8A27 +:10730000F0EE6A8A406B002800D40125DFF874682B +:10731000482206F1C80106F1C00003F007F806F1A3 +:10732000B80888ED149B00270CE053EC182B06EBF3 +:10733000C700D0F8C410D0F8C000DBF7A7FD41ECBF +:10734000180B7F1C0A2FF0DB51EC180B0022DFF822 +:107350003838DBF70FFE41EC1B0B88ED16BB322CE7 +:107360002FDBC820C6F854014846DBF777FD41EC17 +:107370001A0B9FED5ACB51EC190B0022DFF80C3899 +:10738000DBF7F8FD53EC1A2BDBF76EFC53EC1C2BF0 +:10739000DBF7F0FD41EC180BB4F57A7F44DB51ECE0 +:1073A000190B0022DFF8E837DBF7E4FD53EC1A2B6A +:1073B000DBF75AFC53EC1C2BDBF7DCFD41EC180B24 +:1073C00032E0D6F8540141F2883199FBF1F101EB3A +:1073D0008101401AC6F8540102D50020C6F85401B4 +:1073E00051EC190B0022DFF8AC37DBF7C3FD824606 +:1073F0008B464846DBF732FD52465B46DBF734FCF2 +:107400000022DFF8D037DBF7B5FD41EC180BD6F8DA +:107410005401002808D106F5AA70C068012803D1DC +:10742000B0EE4A8AF0EE6A8A06F5AA704068002833 +:1074300003D0B0EE498AF0EE698ADFF85C07814537 +:1074400003D1B0EE498AF0EE698A53EC182B002084 +:107450000146DBF739FB01D088ED18BBD8E91801EC +:10746000D8E91623DBF740FB21F00041DFF82C2799 +:10747000DFF82C37EDF79CF922D8D6E92E2300202F +:107480000146DBF721FB1BD1012D19D1C820C6F81D +:10749000540151EC190B0022DFF80837DBF76AFDC5 +:1074A00004460D464846DBF7D9FC22462B46DBF75F +:1074B000DBFB0022DFF81C37DBF75CFD41EC180B2F +:1074C000B0EE480AF0EE680A01B0BDEC0A8BBDE8E8 +:1074D000F08F00000000000000000000000000002D +:1074E0000088B340002474492DE9F04F2DED0A8B3C +:1074F000B1B0044619A800210A460B460EC0DFF8B9 +:10750000845605F5AC76706C00051FD5D4F8500193 +:1075100000051BD420A80FF2D8611022DBF798FADF +:10752000D4E9362305F59A7002F0E6FBD4E9362358 +:1075300020A802F0F5FB1022002105F1A800DAF7DF +:107540008DFE4FF08040C5F8A80062E208460DE0CD +:1075500005EB800191ED2A0AB8EEC00A20EE090A77 +:1075600012A901EB800181ED000A401C9FEDE69A13 +:107570000428EDDB06A802F035FC9DED060AB8EE06 +:10758000C00A20EE090A8DED1C0A06A81CA990ED80 +:10759000010AB8EEC00A20EE090A81ED010A90ED59 +:1075A000020AB8EEC00A20EE090A81ED020A90ED47 +:1075B000030AB8EEC00A20EE090A81ED030A02A808 +:1075C00002F010FC02AFF968786801F08CFC80468C +:1075D0000299B86801F087FCA8EB00001690F968E2 +:1075E000B86801F080FC81460DF15808029978686E +:1075F00001F079FC4844C8F80400F868014601F03D +:1076000072FC07460299084601F06DFCC019A0F112 +:107610008040C8F8080012AB16AA1CA92046FFF744 +:10762000F5FDB0EE408AF0EE608A9FEDB3AB002727 +:1076300023E004EB87008069DBF710FC41EC1B0BB7 +:107640009FEDAFCB53EC1B2B51EC1C0BDBF70CFB72 +:1076500002460B4651EC1B0BDBF706FB02460B46C2 +:1076600051EC1C0BDBF700FB02460B4651EC1A0BEE +:10767000DBF70CFC41EC1A0B7F1C032FD9DB51EC20 +:107680001A0BE0F713FD00EE100A02F047FD10EEB2 +:10769000100AE0F7E3FC96ED08AB53EC1A2BDBF78E +:1076A00023FA41EC1B0B86ED0ABBDFF8FC24DFF864 +:1076B000FC34DBF7D9FA41EC1C0B86ED0CCB51EC1A +:1076C0001A0B53EC1C2BDBF7E1FBC6E9080151EC6C +:1076D0001B0B53EC1C2BDBF7C7FAD6E90E23DBF7A9 +:1076E000D5FBDFF8CC24DFF8CC34DBF7BDFA41EC76 +:1076F000100B86ED0E0B0027DFF8BC84DFF8BC24EE +:10770000DFF8BC34DBF78EFB1FD2D8F80800002866 +:1077100006D10120C8F80800D4E90E01C8E900012B +:10772000D8F80800012813D1D4E90E23D8E90001C4 +:10773000101A63EB0101DFF88C243B46994207DB0A +:1077400001DC904204D3012702E03846C8F8080063 +:107750004FF0000802F074FD38430ED0D5F8580100 +:1077600000280AD1D4F8D400022806DA2046FEF711 +:1077700065FD012801D14FF0010804F1180001F066 +:10778000A5FB81093269DFF81004824200DB024662 +:10779000B0EE480AF0EE680A2046FFF7A1FD05F1B9 +:1077A000A80787ED040B53EC102BD7E91E01DBF77C +:1077B0005BFAC7E9040128A902A801F077FD05F5E5 +:1077C0009A7906AA02A9484601F099FB494602A8FF +:1077D00001F00BFC002218E002EB420C9C440DF17E +:1077E000A00E5EF82CC00DF1180E0EEB830EDEF825 +:1077F00004E0CEFB0C015B1C032BEDDB19AB800F0F +:1078000040EA810043F82200521C032A03DA0020D8 +:1078100001460346F0E70DF16409D5F85801002848 +:1078200002D00020C9F80800D9F808B0CBF1000058 +:1078300000EE100AB8EEC00A20EE098AB0EE480A3F +:1078400002F006FD8DED0E0A0DF1380A0020CAF88F +:107850000400CAF80800B0EE480A02F0FCFC8AED09 +:10786000030A306941F2883190FBF1F000EE100A12 +:10787000B8EEC00ADFEDC20A01EE10BAB8EEC11AC6 +:1078800081EE201A81EE001AF0EE001A81EE211A24 +:10789000BDEEC11A11EE100A400001EE100AB8EE5A +:1078A000C11A61EE200A20EE800ABDEEC00A89ED01 +:1078B000020AB8EEC00A20EE098AB0EE480A02F0C9 +:1078C000C7FC8DED0A0A0DF128090020C9F8040053 +:1078D000C9F80800B0EE480A02F0BDFC89ED030AC1 +:1078E00024AA0EA912A801F0AEFB0EAA0AA924A888 +:1078F00001F0A9FB002019E00000000000000000DA +:10790000000000000000F03E000080305AF8201017 +:1079100000EE101A12A901EB800181ED000ABEEE03 +:10792000C10A05EB800181ED2A0A401C0428EDDB29 +:10793000D5F85801002803D097ED040B86ED060B0F +:10794000D6E906234FF033309F49DBF78DF9CDE9B7 +:107950000001D7E904239D489D49DBF785F9DDE95E +:107960000023DBF793FA41EC100B87ED040B86ED57 +:10797000060BB8F1000F03D0D5F8580100283FD00E +:107980009FED958B53EC102B51EC180BDBF76CF93A +:10799000E0F78CFB00EE100A02F05AFC8DED0A0AAB +:1079A0000020C9F80400C9F80800D7E9042351EC05 +:1079B000180BDBF759F9E0F779FB00EE100A02F03B +:1079C0004AFC89ED030A0EAA0AA912A801F03BFBA2 +:1079D0000EA801F0C2FB00200AE00AEB800191ED45 +:1079E000000ABEEEC10A05EB800181ED2A0A401CA7 +:1079F0000428F2DBD4E9362305F1A80002F090F95F +:107A0000D5F85801002804D000217160401EC5F847 +:107A1000580131B0BDEC0A8BBDE8F08FF8B50446D3 +:107A2000584800F5AC75D4F8501101F41061B1F567 +:107A3000106F0BD1102204F5A07100F59A70DCF7DD +:107A400059FFD4F8500168640020F2BD04F1C80168 +:107A50000A7AD20604D40322C0F8582100226A60B0 +:107A60008A68D2050AD5D4F85021D2050CD4226BED +:107A7000D20503D5D4F88020D20505D40321C0F85F +:107A8000581100206860F2BD6A69002A0DD0D1E962 +:107A90000423D1E90667901B63EB07014FF47A7268 +:107AA0000023E1F727FB286115E0D4F8C81044F65D +:107AB0002062914201DB29610DE0EB68C918E960A1 +:107AC000914205DAD0F85801002801D10020F2BD1A +:107AD00029610020E8602046FFF706FDD4F8500138 +:107AE00068640020F2BD000010B5264C4FF4D4723B +:107AF00000212046DAF7B2FB4FF08040C4F8340191 +:107B0000C4F8A8000022134604F1A80002F008F906 +:107B10004FF47A70C4F8540100204FF08041C4E95A +:107B200048019FED2F0B84ED5C0B04F5B87080EDE0 +:107B3000020B80ED040B80ED060B80ED080B00219D +:107B4000016310BD0F49C1F86001002070470D4965 +:107B5000C1F86C010020704704224FF416712248CE +:107B6000FDF721BB80B5FFF7BFFF0020FFF7EAFF5D +:107B70000020FFF7ECFF1D48BDE8024002F05ABAB2 +:107B8000E1023747900101200000244000005940E5 +:107B90000000394000C0624040420F001383C0CA59 +:107BA000A145B63F00007940989999999999B93FB4 +:107BB000CDCCCCCCCCCCEC3FA02A01207B14AE4762 +:107BC000E17A843F012F68593333E33F9A999999B9 +:107BD0009999D93F0088B340000000000000E03FC1 +:107BE00000000000000000001D7A0208597B020816 +:107BF0000000004000000000000000000000000045 +:107C000080B5B8220146DFF8F004DCF773FE0020EF +:107C100002BD80B5B822DFF8E014DCF76BFE00206F +:107C200002BDF0B585B0044600A902A8FDF7C3F96E +:107C300001A802F089F802283FD0D4F80801009981 +:107C4000461ADFF8B44494F8B000002848D0002E5B +:107C500046D0F717029D2268D317A2FB060102FB4C +:107C6000071103FB0611000C40EA01404019029085 +:107C700002ADD5F804C06268D317A2FB060102FB6F +:107C8000071103FB0611000C40EA014060446860E4 +:107C9000D5F808C0A068C117A0FB062300FB073376 +:107CA00001FB0633120C42EA034202EB0C00A8600F +:107CB000032102A8FDF741F912E0606B03280FD100 +:107CC000FDF76CF900280BD0DFF82C440C2202A938 +:107CD00004F10C00DCF70EFE0098A06100F003F840 +:107CE000002005B0F0BD2DE9F04F87B0DFF80804A3 +:107CF0008069DFF80864B168884200DAB060F16832 +:107D0000814200DAF060F168B268891A3269914202 +:107D100001DA0020BBE14FEA204A4FEAEA7B7068B3 +:107D2000401C7060AAFB0A010AFB0B110BFB0A1135 +:107D3000CDE90201AAFB00230AFB01330BFB003350 +:107D4000CDE90023D6E90E0110EB0A0041EB0B014F +:107D5000C6E90E01D6E90C01DDE90223801859417C +:107D6000C6E90C01D6E91C01DDE900238018594160 +:107D7000C6E91C01DFF88003D0E92A23DDE9000110 +:107D8000AAFB00450AFB01550BFB0055101943EBFC +:107D90000501DFF86423C2E92A01002746E0DFF885 +:107DA000580300EB870E00EBC70CDCE90C01DEF892 +:107DB0000C20D317A2FB0A4502FB0B5513FB0A55F7 +:107DC00000196941CCE90C010CF1300CDCE90A0125 +:107DD000DDE90245DEF80C20D317A2FB048902FB83 +:107DE000059903FB049910EB080041EB0901CCE96C +:107DF0000A01DCE91023DEF80C00C1171018594104 +:107E0000CCE91001DCE91889DDE90001DEF80C207D +:107E1000D317A2FB004502FB015503FB005518EBED +:107E2000040049EB0501CCE918017F1C032FB6DBE8 +:107E30007068B0F57A7FC0F2968000EBC000093020 +:107E40000A2190FBF1F070608A464FF0000B092484 +:107E5000D6E90E01A4FB002304FB013312F1090053 +:107E600043F1000152465B46E1F744F9C6E90E01D1 +:107E7000D6E90C01A4FB002304FB013312F1090035 +:107E800043F1000152465B46E1F734F9C6E90C01C3 +:107E9000D6E91C01A4FB002304FB013312F1090005 +:107EA00043F1000152465B46E1F724F9C6E91C01A3 +:107EB0009148D0E92A23A4FB020104FB03110930F5 +:107EC00041F1000152465B46E1F714F98A4AC2E9E2 +:107ED0002A015F4645E0884800EBC708D8E90C0155 +:107EE000A4FB002304FB013312F1090043F100015C +:107EF00052465B46E1F7FEF8C8E90C0108F130088C +:107F0000D8E90A01A4FB002304FB013312F10900A4 +:107F100043F1000152465B46E1F7ECF8C8E90A017B +:107F2000D8E91001A4FB002304FB013312F109007E +:107F300043F1000152465B46E1F7DCF8C8E9100165 +:107F4000D8E91801A4FB002304FB013312F1090056 +:107F500043F1000152465B46E1F7CCF8C8E918014D +:107F60007F1C032FB7DBD6E90C01A0FB002300FB2D +:107F7000013301FB00330320A0FB024500FB035546 +:107F8000CDE90245D6E90E01D6E91C23A2FB004546 +:107F900002FB015503FB0055AD0045EA947570687E +:107FA000C117554AD2E92A89A8FB002308FB0133EF +:107FB00009FB0033CDE90423002761E0DDE902017C +:107FC000B0EB8400A941DDE9042380185941CDE9D3 +:107FD000000101D1002852D0474800EBC70000F152 +:107FE000300CD0E90C23D6E90C01A0FB02AB00FB5E +:107FF00003BB01FB02BBD6E90E23DCE90A01A0FBAF +:10800000028900FB039901FB0299BAEB08026BEBB2 +:1080100009030320A0FB02AB00FB03BBDCE9102338 +:10802000D6E91C01A0FB028900FB039901FB029920 +:10803000BAEB080A6BEB090B7268D317DCE918017D +:10804000A0FB028900FB039901FB02991AEB0800CF +:108050004BEB0901DDE9022380185941B0EB8400A4 +:10806000A941DDE9042380185941401E61F1000156 +:10807000DDE90023E1F73EF81F4941F827007F1CA6 +:10808000032F9BDB1C48012180F8B010002007B0B3 +:10809000BDE8F08F10B5184CB82200212046DAF761 +:1080A000DDF8174820624FF4AA0060624FF4A02068 +:1080B000A062002010BD082296211248FDF773B877 +:1080C00080B5FFF7E7FF40F2D163B8220E490F48B1 +:1080D00001F05FFF002801D0012002BD0C4801F033 +:1080E000A9FF002801D0012002BD0348012180F82A +:1080F000B110002002BD0000681101208011012094 +:108100000000D8FF237C0208137C0208017C0208CF +:10811000B7800208704700200AE0DFF8101C01EB6E +:108120008001DFF80C2C0A62DFF8FC2BCA62401CCD +:108130000328F2DB704700201BE0DFF8F01B01EBA7 +:10814000800191ED2D0AD1ED080AF4EE400AF1EE1E +:1081500010FA01D581ED080A01F12002D2ED030ADF +:10816000B4EE600AF1EE10FA02D5D1F8B410D16085 +:10817000401C0328E1DB7047FEB5B0F9542012041F +:108180000092B0F95620130400AA5360B0F9584089 +:1081900024049460DFF8945B009E6F6EF61B0096DB +:1081A000AE6E9B1B5360EB6EE31A93600B46416F00 +:1081B000006D80B201F018F9F7BDF0B58DB003A9DC +:1081C0000022134614461CC1DFF8604BD4F894100B +:1081D000012902D11146C4F8941006A9FFF7CCFF7B +:1081E00009A801F0D7FD06980999A0EBA1300690E7 +:1081F00009A806A94A684368A2EBA3324A608A68C4 +:108200008068A2EBA0308860602204F5587104F504 +:10821000577002F08BF80C2206A904F55D70DCF7AC +:1082200069FB00A801F05EFE602204F5737104F59D +:10823000727002F07BF80C2200A904F57870DCF76C +:1082400059FB002200A838E004F234439D686D1CFD +:108250009D6002EB420304EB83050923039ED5F8DE +:108260005C7397FBF3F7BE19039602EB420604EB2F +:1082700086064F68D6F860C39CFBF3FC67444F60EA +:1082800006F558768F68D6F804C09CFBF3FC67446B +:108290008F600099D5F8C85395FBF3F569180091E4 +:1082A0004168F56E95FBF3F5691841608168356F9B +:1082B00095FBF3F359188160521C03A9092AC3DB0B +:1082C000039A002A00D5524203924A68002A01D537 +:1082D00052424A608A68002A01D552428A60009A56 +:1082E000002A00D5524200924268002A01D552422B +:1082F00042608268002A01D5524282600022039BBC +:10830000009DAB4200DA01224B684568AB4200DABF +:10831000521C89688068814200DA521C04F234439E +:108320009868092800DB521C042A0FD194F8340401 +:108330000146032808D35A6804F16400FCF7D6FD0F +:10834000012001F0C7FD01E0FCF7C9FD0DB0F0BD53 +:108350002DE9F0410446DFF8D459002085F83404B3 +:1083600005F234467060074605F1080825E005EB84 +:10837000870090ED330AD8ED0D0AB4EE600AF1EEF5 +:1083800010FA19DBD8E912230020DFF8AC19DAF76C +:108390007DFD21F00041DFF8A429DFF8A439DAF7E8 +:1083A00041FD09D295F83404401C85F83404706806 +:1083B0000121B940084370607F1C032FD7DB95F87B +:1083C0003404002815D0002709E004EBC7004168F9 +:1083D0000068DAF773FF05EB870148667F1C032FFF +:1083E000F3DB0020B060A868042802DA95F83404B2 +:1083F000A86095F8340403281DD198ED010ADFED3B +:10840000BD0AB4EE600AF1EE10FA14D5D8E91223D1 +:108410000020DFF82419DAF739FD21F00041DFF8F8 +:108420001C29DFF81C39DAF7FDFC04D2A868032800 +:1084300001D10420A86098ED020ADFEDAF0AB4EE86 +:10844000600AF1EE10FA1DD598ED010ADFEDAB0AD6 +:10845000B4EE600AF1EE10FA14D5D8E91223002028 +:10846000DFF8D418DAF712FD21F00041DFF8D42844 +:10847000DFF8D438DAF7D6FC04D2A868042801D192 +:108480000520A860BDE8F0812DE9F0410446DFF841 +:108490009C78D7F8B404012850D107F1E005F7EE35 +:1084A000000AB7EE000A07F5E471284601F044FF20 +:1084B00007F1500207F5D471284602F047F906008B +:1084C0003DD07868401C7860616F0C46D7E9140194 +:1084D000DAF7F4FE214600F00CFD00EE100ABAEEC9 +:1084E000C80A10EE100ADFF7B9FDC7E9140107F555 +:1084F000D07407F15008D4E90201DAF7DFFEC8F8BA +:108500000800D4E90401DAF7D9FEC8F80C00D4E970 +:108510000601DAF7D3FEC8F81000D7E96801012296 +:10852000DFF82838ECF744F909D89FED750AF0EE2A +:10853000400A2946284601F0FFFE00E000263046AA +:10854000BDE8F08190ED030AD0ED040AF4EE400A94 +:10855000F1EE10FA1BD590ED051AB4EE401AF1EECB +:1085600010FA14D50021016490ED040AD0ED050A3B +:10857000B4EE600AF1EE10FA04DB0121416402213D +:108580008164704702214164012181647047B4EE27 +:10859000600AF1EE10FA1BD590ED050AB4EE600A00 +:1085A000F1EE10FA14D50121016490ED030AD0ED2B +:1085B000050AB4EE600AF1EE10FA04DB0021416412 +:1085C0000221816470470221416400218164704767 +:1085D0000221016490ED030AB4EE600AF1EE10FA94 +:1085E00004DB002141640121816470470121416461 +:1085F0000021816470470021C1640B4606E01A46E1 +:1086000040F8212000EB81025362491C0329F6DB6C +:108610000121416719468167704710B5044604F18E +:108620005400142141600A21C160002101772046D5 +:10863000FFF7E1FF0020606510BD000030B52DEDB3 +:10864000028B87B003A9FFF797FD9FEDB18B002444 +:1086500018E003A850F8240000EE100ABAEEC80A89 +:1086600000A800EB840080ED000A20EE000A10EE66 +:10867000100ADFF7F3FC53EC182BDAF707FC41EC98 +:10868000180B641C032CE4DBB0EE480AF0EE680A19 +:10869000DAF794FDB0EE408AF0EE608A002419E02B +:1086A00000EB840500A850F82400DFF7D7FC53EC5A +:1086B000182BDAF75FFCDFF7F9FC00EE100AD5F8AB +:1086C000400400EE900A30EE200A05F2404080EDB2 +:1086D000000A641CDFF85406032CE1DBD0F8941484 +:1086E000491CC0F894140121C0F8BC1407B0BDECBB +:1086F000028B30BDAF47E13D00007A43BD74933C2F +:10870000CDCCCC3E38B50446002004F13C0507E052 +:10871000B1EE400A81ED030A002144F82010401C0C +:10872000032838DA95ED050AB8EEC00A04EB80019B +:10873000D1ED000A80EE800AF0EE400AF5EE400A24 +:10874000F1EE10FA02DBB0EE601A01E0B1EE601A51 +:10875000D1ED061AF5EE401AF1EE10FA01DAF1EE5B +:10876000611A31EE611A81ED0C1AC1ED060AD4EDE1 +:108770000F0ABFEE001A30EE811AD1ED091A01EE90 +:10878000210A80EE200A81ED090AB5EE400AF1EED9 +:1087900010FABDDBBEE72046FFF7D4FE2869B0F52E +:1087A0007A7F01DA401C2861686894F87010052906 +:1087B00000F28380DFE801F0030E192C6C4004F115 +:1087C000700001214160816000202861084684F822 +:1087D000700031BD04F17000C16801296DD1022122 +:1087E00084F870100021816031BD04EB800090EDB1 +:1087F000030AD5ED0A0AB4EE600AF1EE10FA12DAB5 +:10880000D5ED0B0AF4EE400AF1EE10FA4BDB2BE04B +:1088100004EB800090ED030AD5ED0A0AB4EE600A7D +:10882000F1EE10FA49DB042084F8700004F17000C6 +:1088300000214160816031BD04EB800095ED0B0AA1 +:10884000D0ED030AB4EE600AF1EE10FA0CDA90ED06 +:108850000C0ADFED330AB4EE600AF1EE10FA0CD523 +:108860002869696A884228DB032084F8700004F1D3 +:10887000700001214160816031BD042084F87000E6 +:108880000020286104F1700000214160816031BD49 +:1088900095ED0C0A04EB8000D0ED030AB4EE600AFB +:1088A000F1EE10FA09DB052084F870000020286141 +:1088B00004F1700001214160816031BD10B52DEDE2 +:1088C000028B08EE100ADFF86444B8EEC80ADFED48 +:1088D000120A20EE200ADFED110A80EE200A10EEC7 +:1088E000100ADFF7BBFB41EC100B02F0BDFA53ECB2 +:1088F000102B0020DFF85814DAF7B6F9DAF7DEFCAF +:10890000C4F8840084ED208ABDEC028B10BD000009 +:108910000000000000000000368D27400024F449CC +:10892000CCCC4CBD2DE9F0472DED028B90B0044628 +:1089300002A800210A460B460EC004F13006B06CB6 +:10894000DFF8E85344F62061884206DBD5F8801052 +:10895000884212D0FFF7B2FF0FE0D5F858238018F5 +:10896000C5F858038842C0F26781B16C814201D0DA +:10897000FFF7A4FF0020C5F85803206BC5F8C0041A +:108980002046FFF75BFED5F89404D5F89014884292 +:1089900006DB05F58860FFF7B5FE0020C5F89404F6 +:1089A000D5F8B804012802D12046FFF706FCD5F817 +:1089B000B404012840F0408102A801F0C1FA02A8E5 +:1089C000D0ED020A90ED011A9DED020ADDED021ACA +:1089D00020EE210A01EE010A00EEA00A01F09EFB42 +:1089E00085ED030ABEEE410A10EE100AADF8000054 +:1089F00000A800214180818005F52C773946FDF7DC +:108A00008CF808A801F0EEF9296F089800F071FAC7 +:108A100081460DF12008696FD8F8040000F069FA6A +:108A20008246A96FD8F8080000F063FA0AEB090142 +:108A300000EB0109E96FD8F80C0000F05AFA00EBDE +:108A40000908102208A905F17000DBF753FF4FF069 +:108A500000091CE004EB490A716CBAF954000004E7 +:108A600000F047FA00EE100A0CA800EB890080ED38 +:108A7000000ABAEEC80A05EB890080ED050A05A8D0 +:108A8000BAF95410090440F8291009F10109B9F1A3 +:108A9000030FDFDB05A905F5E47001F0ECFCD5F868 +:108AA000280329688842C0F2C78094ED428ABAEE52 +:108AB000C88A95ED360AB5EE400AF1EE10FA0BD0F1 +:108AC00038EE400A10EE100ADFF7C8FA21F0004134 +:108AD000DFF7ECFAC5F8DC0085ED368AA8680328D4 +:108AE00004D9001F0AD0401E0FD014E09948A86393 +:108AF0004FF07E50E863C82028640CE09648A863D5 +:108B00009648E8636420286405E09548A863954882 +:108B1000E863322028643846FCF78DFE01F00CFB38 +:108B200000EE100ADFED800A80EE200A85ED040ACF +:108B3000A822002105F52C70D9F790FBD5F8840008 +:108B4000404549DA95ED040AB5EE400AF1EE10FA17 +:108B500042DDD5ED0E0AB4EE600AF1EE10FA3BD517 +:108B60006868296C884205DA2046FFF78DFC0028EA +:108B700010D161E095ED2C0ADFED6E0AB4EE600ACB +:108B8000F1EE10FA06DB2046FFF77EFC002853D0FA +:108B900000206860002005E005EB80014A69C1F80B +:108BA000B420401C0328F7DBFFF7C5FA4FF000099B +:108BB0000BE005EB890090ED080AD0ED0B0A30EED2 +:108BC000600A80ED330A09F10109B9F1030FF0DB06 +:108BD00005F5D470FFF7BCFB00200CE005EB80012D +:108BE00091ED260AD1ED050A30EE600AB0EEC00A1A +:108BF00081ED290A401C0328F0DB95ED290AD5ED0B +:108C00002A0A30EE200AD5ED2B0A30EE200A85ED37 +:108C10002C0A4FF0000906E005EB89004169C0F815 +:108C2000981009F10109B9F1030FF5DBE8220021E1 +:108C300005F5E470D9F712FB002010B0BDEC028BF3 +:108C4000BDE8F08710B5394C4FF49B6200212046F7 +:108C5000D9F704FB102020604FF080402067FFF719 +:108C60005AFA04F58860FFF7D8FC2068C4F890042D +:108C70004FF08440C4F87C041E20C4F89C043A4899 +:108C8000C4F8A8043948C4F8A4043948C4F8AC04AA +:108C90001920FDF753FA002010BD012240F2523195 +:108CA0003448FCF780BA10B5204C4FF49B62014663 +:108CB0002046DBF71FFE0120C4F89400002010BD01 +:108CC00080B51A490022C1F894204FF49B62DBF76B +:108CD00011FE002002BD10B5FFF7B4FF040009D05B +:108CE0004FF437730FF29C020FF2BC01FFF712FA38 +:108CF000204610BD204801F09DF9040009D040F243 +:108D0000DF230FF280020FF2A001FFF703FA2046E3 +:108D100010BD42F226034FF49B6218491848BDE883 +:108D2000104001F036B9000000401C46D8CE0020AB +:108D300000401CC6CDCC4C3D0000F0BF9A999999DB +:108D40009999B93F9CC420B07268913F0070A740C8 +:108D50000000D0410080BB44000096439A99993F9F +:108D6000000070423333B33FCDCCCC3ECDCC4C3F32 +:108D70003333333F258902089B8C0208C18C0208DB +:108D8000A78C0208696E765F656E61626C655F69CB +:108D90006E5F7573655F6175746F5F63616C696247 +:108DA000726174696F6E0000433A5C50726F6A655D +:108DB00063745C4E6F7465335F466972655C4E6FB9 +:108DC0007465335F466972655C496E76656E53659E +:108DD0006E73655C6D706C5C616363656C5F61751F +:108DE000746F5F63616C2E630000000010B590B07B +:108DF00014460022009200AA90ED010AB8EEC00AC3 +:108E0000D1ED020AF8EEE00A20EE200AD0ED020AC7 +:108E1000F8EEE00A91ED011AB8EEC11A00EEC10AAF +:108E200082ED010A90ED020AB8EEC00AD1ED000A07 +:108E3000F8EEE00A20EE200AD0ED000AF8EEE00A93 +:108E400091ED021AB8EEC11A00EEC10A82ED020AD3 +:108E500090ED000AB8EEC00AD1ED010AF8EEE00A82 +:108E600020EE200AD0ED010AF8EEE00A91ED001A9A +:108E7000B8EEC11A00EEC10A8DED030A0CAA00A9D2 +:108E8000204600F0E0F804A9204600F0FAF908AA0C +:108E900004A90CA800F0D7F808A890ED020AB5EED6 +:108EA000400AF1EE10FA09D1D0ED010AF5EE400AC0 +:108EB000F1EE10FA02D19FED530A05E0D0ED010A60 +:108EC00001F0CCF9B1EE400A10B010BD00210A4605 +:108ED00005E050F822305B1303FB0311521C032AF8 +:108EE000F7DB0846704781FB0001400F40EAC100F4 +:108EF000704781FB0001800F40EA810070472DE937 +:108F0000F04104460D46164629682068FFF7F1FF38 +:108F1000074669686068FFF7ECFF8046A968A068AB +:108F2000FFF7E7FFA7EB08010F1AE968E068FFF712 +:108F3000E0FF381A306069682068FFF7DAFF0746FB +:108F400029686068FFF7D5FF8046E968A068FFF7E9 +:108F5000D0FF08EB07014718A968E068FFF7C9FFD1 +:108F6000381A7060A9682068FFF7C3FF0746E968F0 +:108F70006068FFF7BEFF80462968A068FFF7B9FF69 +:108F8000A7EB080147186968E068FFF7B2FFC0194E +:108F9000B060E9682068FFF7ACFF0746A968606821 +:108FA000FFF7A7FF80466968A068FFF7A2FF08EBFC +:108FB00007010F1A2968E068FFF79BFFC019F060EE +:108FC000BDE8F08110B403680C68E31813604368CF +:108FD0004C68E318536083688C68E3189360C0683A +:108FE000C9680818D06010BC704702680A604268FF +:108FF00052424A60826852428A60C0684042C860F9 +:10900000704700000000000030B591B004461546DE +:10901000002000900C2201A8DBF76CFC0CAA00A930 +:109020002046FFF76CFF08A92046FFF7DEFF04AAE1 +:1090300008A90CA8FFF763FF0C2205A92846DBF757 +:1090400059FC11B030BD90ED000AD1ED000A20EEC0 +:10905000200AD0ED010A91ED011A00EEC10AD0ED0F +:10906000020A91ED021A00EEC10AD0ED030A91ED59 +:10907000031A00EEC10A82ED000A90ED000AD1ED5C +:10908000010A20EE200AD0ED010A91ED001A00EE4F +:10909000810AD0ED020A91ED031A00EE810AD0EDAB +:1090A000030A91ED021A00EEC10A82ED010A90ED69 +:1090B000000AD1ED020A20EE200AD0ED010A91ED5E +:1090C000031A00EEC10AD0ED020A91ED001A00EE7B +:1090D000810AD0ED030A91ED011A00EE810A82EDBA +:1090E000020A90ED000AD1ED030A20EE200AD0ED2D +:1090F000010A91ED021A00EE810AD0ED020A91ED0B +:10910000011A00EEC10AD0ED030A91ED001A00EE3B +:10911000810A82ED030A704790ED000AD1ED000A42 +:1091200030EE200A82ED000A90ED010AD1ED010A2D +:1091300030EE200A82ED010A90ED020AD1ED020A1A +:1091400030EE200A82ED020A90ED030AD1ED030A07 +:1091500030EE200A82ED030A704790ED030AD0ED4D +:10916000020A90ED011AD0ED001A21EEA12A01EEBB +:10917000012A00EEA02A00EE002AB0EE000AB4EEAA +:10918000402AF1EE10FA3AD5B6EE000A22EE000AB5 +:1091900060EE020AB7EE081A00EEC21A61EE020A89 +:1091A00020EE201AB7EE082A01EE602A62EE200AAD +:1091B00020EE201AB7EE082A01EE602A62EE200A9D +:1091C00020EE200AB7EE081A00EE601A21EE202ADF +:1091D00021EE820A80ED000A90ED010A20EE020ADB +:1091E00080ED010A90ED020A20EE020A80ED020AEB +:1091F00090ED030A20EE020A80ED030A70474FF05B +:109200007E510160002141608160C160704710B5EE +:109210000446D4ED030A94ED021AD4ED011A94ED3C +:10922000000A20EE000A01EEA10A01EE010A00EE9A +:10923000A00A00F073FFB5EE400AF1EE10FA18D064 +:10924000D4ED000AC0EE800AC4ED000AD4ED010A94 +:10925000C0EE800AC4ED010AD4ED020AC0EE800A15 +:10926000C4ED020AD4ED030A80EE800A84ED030AFD +:1092700010BD4FF07E50206000206060A060E06074 +:1092800010BD02680A6090ED010AB1EE400A81ED5E +:10929000010A90ED020AB1EE400A81ED020A90ED5A +:1092A000030AB1EE400A81ED030A704770B5054626 +:1092B0000C4668680146FFF716FE06462968084610 +:1092C000FFF711FE8019A0F180402060A96868684E +:1092D000FFF709FE06462968E868FFF704FE301A22 +:1092E0006060E9686868FFF7FEFD06462968A868BF +:1092F000FFF7F9FD8019A060A9686868FFF7F3FD22 +:1093000006462968E868FFF7EEFD8019E060A86866 +:109310000146FFF7E8FD064628680146FFF7E3FD32 +:109320008019A0F180402061E968A868FFF7DBFDA3 +:10933000064629686868FFF7D6FD301A6061E9685B +:109340006868FFF7D0FD06462968A868FFF7CBFDDF +:10935000301AA061E968A868FFF7C5FD06462968CC +:109360006868FFF7C0FD8019E061E8680146FFF713 +:10937000BAFD064628680146FFF7B5FD8019A0F141 +:109380008040206270BD90F90010012901DB0020AF +:109390007047002901D50420704790F90110012978 +:1093A00001DB01207047002901D50520704790F9A5 +:1093B0000200012801DB02207047002801D50620A9 +:1093C00070470720704738B50446FFF7DCFF0546B5 +:1093D000E01CFFF7D8FF45EAC005A01DFFF7D3FF4B +:1093E00045EA801080B232BD2DE9F04107460C46B7 +:1093F00015461E46780702D54FF0FF3000E00120E9 +:10940000B84608F0030255F822205043FFF771FDDB +:109410003060B80602D54FF0FF3000E00120214651 +:109420004FEA680202F00C0252595043FFF761FD07 +:109430007060F80502D54FF0FF3000E001202146B2 +:109440004FEA281202F00C0252595043FFF751FD27 +:10945000B060BDE8F08110B400220260426005E017 +:1094600000EB820351F822401C61521C052AF7DBF5 +:1094700010BC704780ED090A80ED0A0AD0ED060A9B +:10948000B7EE001A70EE810A90ED071A70EE810AAD +:1094900080EE200A80ED000A80ED010A704780ED21 +:1094A000090A90ED010AD0ED000AD0ED061A90ED00 +:1094B000091A01EEE01AD0ED071A01EEC01A90ED7C +:1094C000042AF0EE411A42EE201AD0ED050A40EED1 +:1094D000801AC0ED0A1A90ED080A21EE800A80ED8C +:1094E0000A0A0168416080ED001A70472DE9F843CF +:1094F00004460D461646002711E055F8291009EBE1 +:109500004900C01954F82000FFF7F3FC804409F12A +:109510000109B9F1030FF0DB46F827807F1C032F08 +:1095200003DA4FF00008C146F3E7BDE8F183F1B577 +:1095300082B0012801DA0020FEBD00A902A800F0D7 +:1095400055F8044600250098012806DB014602462E +:1095500002EBD1714910A0EB4105401B009002982D +:10956000A0F1804706463946FFF7C3FCA6EB60062C +:10957000022C23DB7810A0F1C0413846FFF7B9FC7C +:1095800001463846FFF7B5FC471039463046FFF72D +:10959000B0FCA6EB6006032C10D17810A0F1C041FE +:1095A0003846FFF7A6FC01463846FFF7A2FC4710F5 +:1095B00039463046FFF79DFCA6EB6006002D04D02F +:1095C00027493046FFF795FC06460098012802DB44 +:1095D0004010064107E010F1010F04D12149304647 +:1095E000FFF787FC06463046FEBD000070B5044616 +:1095F0000D4620681C49884205DB401020604FF072 +:10960000FF3028601AE0194EB04215DA204600F00B +:1096100039F8286020681649884205DB4010206030 +:109620002868401E286009E0B04207DA4000206048 +:109630002868401C286001E00020286020680D494F +:1096400009180D4A914201D3032070BD0B49081837 +:109650000B49884201D3022070BD012070BD00007B +:10966000CD3C412D9A79825AFD0BB958FE855C2C70 +:10967000FC0BB958666666C6CDCCCC0C0AD7A3C025 +:1096800015AE470100210268002A01D10846704743 +:10969000130C1B0402D1102112040260026812F0A4 +:1096A0007F4F02D1083112020260026812F0704F3F +:1096B00002D1091D12010260026812F0404F02D16E +:1096C000891C920002600268002A02D5491E5208D5 +:1096D000026008467047F8B504460D46206801460A +:1096E000FFF707FC064661680846FFF702FC0746DD +:1096F000A0680146FFF7FDFBC6F18041C91B081AAF +:10970000FFF715FF2860206868606068A860A0689F +:10971000E8600020F2BD000080B58DF800108DF8E3 +:109720000120022300AAD0210020D8F7B1FE012891 +:1097300001D1002002BD4FF0FF3002BD38B5144604 +:10974000094D29701946681CDBF7D4F8631CDBB29D +:109750002A46D0210020D8F79BFE012801D1002005 +:1097600032BD4FF0FF3032BD2022012080B5D2B291 +:1097700000920A46D0210020D8F7E4FE012801D14A +:10978000002002BD4FF0FF3002BD0EB4002003B038 +:10979000704780B5D8F785FD6421D8F76EFF0020AB +:1097A00002BD00000300002013F0030F09D0521E79 +:1097B00022BF13F8010B11F801CBB0EB0C00F3D072 +:1097C0007047121F22BF53F8040B51F804CB6045B9 +:1097D000F7D0121D0AD200BA9CFA8CFCB0EB0C0038 +:1097E00038BF6FF0000088BF01207047521E22BFB3 +:1097F00013F8010B11F801CBB0EB0C00F6D0521CA2 +:1098000008BF10467047000010B5DFF8DC44FAF7D7 +:109810008AFD60660020024603E004EB8001CA6214 +:10982000401C0928F9DB10462066E065FAF76FFD59 +:10983000A0664FF4FA7020606060DFF8B004A060AA +:109840009FED0A0A84ED030A84ED040A84ED050AFB +:10985000B5EE000A84ED060A84ED070ADFF89004ED +:10986000206207206062A06210BD00009A99193F33 +:1098700070470000F8B52DED048B0C469FED3D8A36 +:10988000DFF8646400207065B065306E401C30669F +:10989000DFF86054012C02D1002068672867F06D62 +:1098A0000A2839DA1E220021706EF9F74DFFC5F83B +:1098B0008C001E220121706EF9F746FFF16D06EB58 +:1098C0008102336E03EB8307BB00D362012921DBE6 +:1098D000D5F88C3093ED000AD0ED000A30EE600A26 +:1098E000D3ED010A90ED011A70EEC10A93ED021A50 +:1098F000D0ED021A31EE611A05EB810020EE000A6C +:1099000000EEA00A01EE010A80ED050AD36A926A10 +:109910009A1A8263481CF065316E0A2902DA032024 +:10992000C5F88800F06D0A28C0F23781401EF06546 +:10993000706E0A2920D11E220A21F9F715FF85ED44 +:10994000030A1E220A21706EF9F72CFF85ED040A26 +:109950001E220A21706EF9F743FF85ED050A0020EB +:10996000092844DA05EB800191ED060A38EE008AF9 +:10997000401CF5E7000000001E220A21F9F7E4FE72 +:10998000D5F88C1095ED030AD0ED000A30EE600A90 +:10999000D1ED000A30EE200A85ED030A95ED040AA8 +:1099A000D0ED010A30EE600AD1ED010A30EE200A56 +:1099B00085ED040A95ED050AD0ED020A30EE600A45 +:1099C000D1ED020A30EE200A85ED050AF06D05EBB7 +:1099D000800090ED050AD0ED040A30EE200AD0EDAB +:1099E000030A30EE200AF0EE080A20EE208A95EDF8 +:1099F000030AF2EE040AC0EE208A95ED040A80EE16 +:109A0000209A95ED050AC0EE209A306E0A2805D1FD +:109A1000C5ED008A85ED019AC5ED029A00270FE099 +:109A20001E22C7F1090109B2706EF9F78DFE95ED9E +:109A3000021AD5ED010A95ED000A00F0FBF87F1C33 +:109A40000A2FEDDBF06A716A726D914249DAA96FF3 +:109A5000002908D128660121A967C5ED008A85ED96 +:109A6000019AC5ED029AB16AB26D91420CDAE96FC2 +:109A700000290BD168660121E967C5ED008A85EDF3 +:109A8000019AC5ED029A01E00021E967296E411AA9 +:109A9000296732686B6EC31A9A420CD2EB6F012BA6 +:109AA00009D10020C5F88000C5F88400686701204E +:109AB000C5F8880060E08A420CD2A96F012909D15B +:109AC0000020C5F88000C5F8840068670220C5F84A +:109AD000880051E0A96E401A68670320C5F8880025 +:109AE0004AE0C5ED008A85ED019AC5ED029A002194 +:109AF000A967E9672967D5F88010002903D1A8660E +:109B00000121C5F88010A96E411A69679FED740A9A +:109B100028EE000AB5EE400AF1EE10FA03DC9FEDE4 +:109B2000710A28EE000AD6ED020AB3EE041A60EEBE +:109B3000810AF4EE400AF1EE10FA08D5D5F8841047 +:109B4000002907D1E8660121C5F8841002E0002150 +:109B5000C5F884107168A1F5FA71EA6E801A814225 +:109B600007D2D5F88400012803D10420C5F8880065 +:109B700002E00320C5F8880000200CE006EB80011D +:109B80000A6BCA62082805DA05EB8001CA698A6196 +:109B90000A6CCA63401C0928F0DBD5F8880001284C +:109BA00006D044D3032822D011D304282FD03EE07E +:109BB000B06E0121C162296F016302214163002C53 +:109BC00035D1BDEC048BBDE8F440FAF7A8BBB06E0C +:109BD0000121C162296F016304214163002C26D158 +:109BE0000221BDEC048BBDE8F440FAF798BBB06EDF +:109BF0000121C162696F016308214163002C16D104 +:109C00000221BDEC048BBDE8F440FAF788BBB06ECE +:109C10000121C162696F016310214163002C06D1EB +:109C20000221BDEC048BBDE8F440FAF778BBBDEC33 +:109C3000048BF1BDD0ED001A31EEC00AD0ED011A4F +:109C400071EEE00AD0ED021A31EEC11AB5EE400A0B +:109C5000F1EE10FA01D5B1EE400AF5EE400AF1EE50 +:109C600010FA01D5F1EE600AB5EE401AF1EE10FAE5 +:109C700001D5B1EE411A1C48D0ED031AB4EE610AC9 +:109C8000F1EE10FA0FD5D0ED041AF4EE610AF1EE00 +:109C900010FA08D5D0ED051AB4EE611AF1EE10FAFB +:109CA00001D5012100E00021D0ED061AB4EE610AD1 +:109CB000F1EE10FA10D590ED070AF4EE400AF1EE3D +:109CC00010FA09D590ED080AB4EE401AF1EE10FA38 +:109CD00002D5826D521C8265426D891841657047BC +:109CE00000007A4400007AC4881901200000404135 +:109CF0003333B33EC012012070B514461D46DFF861 +:109D00002C6206F148014A6F42F002024A671022B3 +:109D1000014606F11000DAF7EDFDC6E9124570BD07 +:109D200070B514461D46DFF8046206F14001CA6FA3 +:109D300042F00102CA671022014606F17000DAF70C +:109D4000D9FDC6E9104570BDDFF8E011D1F8A820B3 +:109D5000026091F8A4007047DFF8D01101F1A4026D +:109D600091F8A430984208D1022803D15068401CD1 +:109D7000506070470020506070470023536081F8A6 +:109D8000A400012801D1012000E002201A4603218D +:109D900000F034B970B50446644DE9686868FFF7AF +:109DA000A2F806462968A868FFF79DF8301A2060D7 +:109DB000E968A868FFF797F8064629686868FFF71A +:109DC00092F880196060E8680146FFF78CF8064653 +:109DD00029680846FFF787F88019A0F18040A06045 +:109DE000002070BD80B510225149DAF783FD0020B4 +:109DF00002BD38B504464D4D95F8BC0010F0030F78 +:109E00000CD02A4605F1100105F17000FFF777F834 +:109E1000D5F8BC0020F00300C5F8BC00102229468C +:109E20002046DAF767FD002032BD38B50C461546EE +:109E3000FFF7DFFFFAF7CEFFC5E90001FAF7B3FF3E +:109E4000002803D0FBF7C0FA206031BDFAF7B3FF5A +:109E5000002803D0FBF7B5FA206031BDFAF7B2FF56 +:109E6000002803D0FBF7BAFA206031BD0020206043 +:109E700031BD2E49C1F8C0000020704780B50722CF +:109E80004FF448712B48FBF78EF9002002BD10B546 +:109E9000264CD02200212046D8F7E0F94FF0804030 +:109EA0006066A066E0662067206120602062206313 +:109EB000C4F880002048C4F8C400002010BD80B55C +:109EC000FFF7E5FF002804D11C48BDE8024000F080 +:109ED000B1B802BD1549C1F8940070471349C1F8E3 +:109EE000B000704710B584B0040018D000221146AD +:109EF000FBF734FA00A8FFF74DFF20680099A0EBAC +:109F0000A130206000A861684268A1EBA2316160C5 +:109F1000A1688068A1EBA030A060002000E01620BE +:109F200004B010BD014890ED310A7047A80A012025 +:109F3000B80A0120739E0208DB0F49407D9E02088B +:109F400010B584B0040016D000A8FFF7CBFF00289E +:109F500011D100200BE000A951F8201000EE101ADA +:109F6000BAEEC80A04EB800181ED000A401C032808 +:109F7000F1DB002000E0162004B010BD10B51E4C2F +:109F80004FF4CC7200212046D8F768F90C206060AD +:109F900010BD70B4002500E06D1C174C2668B5425A +:109FA00009DA05EB450604EB8604D4F8B040A34279 +:109FB000F2D116201EE0142E01DB16201AE00C252B +:109FC00005FB0646C6F8B030236805FB0343C3F81B +:109FD000A820236804EB83039860206804EB8000CA +:109FE0008165606802F10C01081860602068401CFF +:109FF0002060002070BC704738030120002A05D182 +:10A00000074A136823EA0101084310607047044AB5 +:10A010001168002801D00020106008467047000039 +:10A02000CC2B012080B5542200211348D8F716F913 +:10A03000002002BD10490A68142A01DB162070476F +:10A0400001EB820250600868401C086000207047E5 +:10A0500038B50024254609E000EB850040688047BC +:10A06000002802D0002C00D104466D1C0248016873 +:10A070008D42F1DB204632BD8C200120F4464900A0 +:10A0800006D200F011F809420DD5C8174108604703 +:10A0900000F00AF807D04942404271F1000102D4B1 +:10A0A00000205FF0004160474A0DA2F580621E3A31 +:10A0B0000ADC5242202A18DA890241F0004141EAC2 +:10A0C00050500021D0407047D2F1200210D48902B4 +:10A0D00041F0004141EA5051C002D04061FA02F320 +:10A0E0005840D14080EA01007047002000217047AD +:10A0F000D017010070470000D2B2203A22BF41FAC7 +:10A1000002F0C91770472032D141D04048409140F9 +:10A11000D14048409140114170470000B5EEC00A5F +:10A12000F1EE10FA02D4B1EEC00A70476FF0004CA5 +:10A1300000EE10CADEF702B8002940F10B80F446A9 +:10A140004942404271F1000100F00AF850F000402D +:10A150006047000050EA010200F00E80094200BF93 +:10A160000BD1B0FA80F18840C1F19D01C90502060A +:10A1700072F1004241EB10207047B1FA81F2414088 +:10A180009040C2F1200261FA02F181EA000018BF9A +:10A1900040F0010002F19D01E8E70000C0F3C75163 +:10A1A0007F392CD420290DDAC1F11F0C41004FEA70 +:10A1B000C11141F0004121FA0CF0894128BF404211 +:10A1C000C9437047D1F13F0C1CD441004FEAC11183 +:10A1D00041F0004161FA0CF021FA0CF180EA010033 +:10A1E000094244BF4FF00041002004D3494240429D +:10A1F00071F10001704701D5401E491E70470020D3 +:10A200000021704709424FF0004158BFC943002068 +:10A210007047000080B500F00DF8B5EE400AF1EE91 +:10A2200010FA02D00548406C02BD012002BD03486F +:10A23000C06C7047014890ED160A7047681D0120F8 +:10A2400010B5FFF7E7FF0446FFF7F1FF204310BD0D +:10A25000012000F013BE002000F010BE10EE101A16 +:10A2600010EE902AB0EEC00AC80F49005200F0EE7E +:10A27000E00A28BF0C3011F1807F38BF12F1807FD7 +:10A280000CD28A4238BF80F00400124214D034BF8E +:10A2900080EE800A80EE200A00F0A6BE11F1807FD9 +:10A2A00008BF80F0040098BF12F1807F08D88A426E +:10A2B00014BF00224FF07E5200EE102A00F094BE30 +:10A2C0006FF0004100EE101A7047000010EE101AF7 +:10A2D0004FF07E5C01EE90CAC80F31F0004122D0F1 +:10A2E00000EE101AB1F17E5F13D871EEC00ADFF8EC +:10A2F00038C031EE801A61EE200AF1EEE00A6145C5 +:10A3000086BF80F0040080EE800A80EE200A00F014 +:10A310006BBE490011F1807F9CBF6FF0004100EEE1 +:10A32000101A5DF60BAF7047F404353F10B50446C4 +:10A3300000F0ACFE204610BD2DE9F0432DED048B5E +:10A3400006468946B0EE408A10EE900ADDF786FE9A +:10A3500041EC190B18EE100ADDF780FE41EC180BEA +:10A3600053EC182BD6E93001D8F77EFC04460D4695 +:10A3700053EC192BD9E93001D8F776FC22462B464D +:10A38000D8F784FDC6E93001002734E051EC180B02 +:10A3900006EBC70253681268D8F766FC04460D4600 +:10A3A00051EC190B09EBC70253681268D8F75CFC33 +:10A3B00022462B46D8F76AFD06EBC702C2E9000128 +:10A3C00006EBC70851EC180BD8E92423D8F74CFC4E +:10A3D00004460D4653EC192B09EBC700D0F8941036 +:10A3E000D0F89000D8F740FC22462B46D8F74EFD17 +:10A3F000C8E924017F1C062FC8DB002718E006EB04 +:10A40000C70851EC180BD8E91223D8F72DFC0446E5 +:10A410000D4653EC192B09EBC700C16C806CD8F7C3 +:10A4200023FC22462B46D8F731FDC8E912017F1CD8 +:10A43000092FE4DB002718E006EBC70851EC180BE6 +:10A44000D8E90C23D8F710FC04460D4653EC192B21 +:10A4500009EBC700416B006BD8F706FC22462B4680 +:10A46000D8F714FDC8E90C017F1C032FE4DBBDEC19 +:10A47000048BBDE8F08370B52DED108B88B00546D8 +:10A480000C462068D8F7EAFCCDE900016068D8F7EF +:10A49000E5FC41EC180B00AE86ED028BA068D8F706 +:10A4A000DDFC41EC190B86ED049BD5E9302300203F +:10A4B000DFF8AC19D8F7EAFCC5E93001D5E90C237F +:10A4C000DDE90001D8F7E2FCC5E90C01D5E90E236E +:10A4D00051EC180BD8F7DAFCC5E90E01D5E91023C9 +:10A4E00051EC190BD8F7D2FCC5E91001DDE90023C6 +:10A4F000DDE90001D8F7B8FB41EC1A0B53EC1A2B3D +:10A50000D5E90001D8F7C2FCC5E90001DDE9002367 +:10A5100051EC180BD8F7A8FB41EC1F0B53EC1F2B89 +:10A52000D5E90201D8F7B2FCC5E90201DDE9002353 +:10A5300051EC190BD8F798FB41EC1B0B53EC1B2B80 +:10A54000D5E90401D8F7A2FCC5E9040153EC182BA6 +:10A5500051EC180BD8F788FB41EC1C0B53EC1C2B6F +:10A56000D5E90601D8F792FCC5E9060153EC182B92 +:10A5700051EC190BD8F778FB41EC1D0B53EC1D2B5C +:10A58000D5E90801D8F782FCC5E9080153EC192B7D +:10A5900051EC190BD8F768FBCDE90601DDE906237C +:10A5A000D5E90A01D8F772FCC5E90A0153EC1A2B68 +:10A5B000DDE90001D8F758FB41EC1E0B53EC1E2BD4 +:10A5C000D5E91201D8F762FCC5E9120153EC1F2B43 +:10A5D00051EC180BD8F748FBD5E91423D8F756FCF3 +:10A5E000C5E9140153EC1B2B51EC190BD8F73CFBBC +:10A5F000D5E91623D8F74AFCC5E9160153EC1F2B01 +:10A60000DDE90001D8F730FBD5E91823D8F73EFC87 +:10A61000C5E9180153EC1C2B51EC180BD8F724FB9F +:10A6200041EC1F0B53EC1F2BD5E91A01D8F72EFC78 +:10A63000C5E91A0153EC1D2B51EC190BD8F714FB8B +:10A64000D5E91C23D8F722FCC5E91C0153EC1B2BD0 +:10A65000DDE90001D8F708FBD5E91E23D8F716FC81 +:10A66000C5E91E0153EC1D2B51EC180BD8F7FCFA71 +:10A67000D5E92023D8F70AFCC5E92001DDE9062346 +:10A6800051EC190BD8F7F0FA41EC1B0B53EC1B2BD8 +:10A69000D5E92201D8F7FAFBC5E9220153EC1E2BBC +:10A6A000DDE90001D8F7E0FAD5E92423D8F7EEFB7D +:10A6B000C5E9240153EC1F2B51EC180BD8F7D4FA41 +:10A6C000D5E92623D8F7E2FBC5E9260153EC1B2B7D +:10A6D00051EC190BD8F7C8FAD5E92823D8F7D6FBDF +:10A6E000C5E9280153EC1A2B51EC180BD8F7BCFA2A +:10A6F00053EC182BD8F7B8FAD5E92A23D8F7C6FBBC +:10A70000C5E92A0153EC1A2B51EC190BD8F7ACFA16 +:10A7100053EC192BD8F7A8FAD5E92C23D8F7B6FBB8 +:10A72000C5E92C0153EC1C2B51EC190BD8F79CFA02 +:10A7300053EC192BD8F798FAD5E92E23D8F7A6FBB6 +:10A74000C5E92E0108B0BDEC108B70BD2DE9F04FAE +:10A750002DED108B8DB080460C46914698ED0CEB9C +:10A7600098ED308B98ED000B8DED000B53EC182B12 +:10A77000DDE90001D8F778FA06460F4653EC1E2BA8 +:10A7800051EC1E0BD8F770FA02460B46304639469C +:10A79000D8F7AAF9CDE9040198ED0EFB98ED060B68 +:10A7A0008DED020B53EC182BDDE90201D8F75CFAB2 +:10A7B00006460F4653EC1F2B51EC1F0BD8F754FAEB +:10A7C00002460B4630463946D8F78EF9CDE90801E6 +:10A7D00098ED109B98ED0AAB53EC182B51EC1A0B2B +:10A7E000D8F742FA06460F4653EC192B51EC190BD9 +:10A7F000D8F73AFA02460B4630463946D8F774F98C +:10A80000CDE9060153EC182BD8E90201D8F72CFA50 +:10A8100006460F4653EC1E2B51EC1F0BD8F724FABB +:10A8200002460B4630463946D8F75EF941EC1B0B21 +:10A8300053EC182BD8E90401D8F716FA06460F4650 +:10A8400053EC1E2B51EC190BD8F70EFA02460B46AF +:10A8500030463946D8F748F941EC1C0B53EC182B1D +:10A86000D8E90801D8F700FA06460F4653EC1F2B2B +:10A8700051EC190BD8F7F8F902460B463046394629 +:10A88000D8F732F941EC1D0B53EC182BD8E9120123 +:10A89000D8F7EAF906460F4653EC1E2BDDE9000116 +:10A8A000D8F7E2F902460B4630463946D8F71CF98C +:10A8B00006460F4653EC182BD8E91401D8F7D4F903 +:10A8C00032463B46D8F7E2FA06460F4653EC1E2BBB +:10A8D000DDE90201D8F7C8F902460B463046394691 +:10A8E000D8F702F906460F4653EC182BD8E91601A3 +:10A8F000D8F7BAF932463B46D8F7C8FA06460F46AB +:10A9000053EC1E2B51EC1A0BD8F7AEF902460B464E +:10A9100030463946D8F7E8F80022DFF84835D8F74E +:10A92000A3F941EC1E0B53EC182BD8E91801D8F70A +:10A930009BF906460F4653EC1F2BDDE90001D8F7C3 +:10A9400093F902460B4630463946D8F7CDF806460D +:10A950000F4653EC182BD8E91A01D8F785F932467F +:10A960003B46D8F793FA06460F4653EC1F2BDDE91A +:10A970000201D8F779F902460B4630463946D8F736 +:10A98000B3F806460F4653EC182BD8E91C01D8F74C +:10A990006BF932463B46D8F779FA06460F4653EC38 +:10A9A0001F2B51EC1A0BD8F75FF902460B463046C5 +:10A9B0003946D8F799F80022DFF8A834D8F754F9C7 +:10A9C00041EC1F0B53EC182BD8E91E01D8F74CF9BA +:10A9D00006460F4653EC192BDDE90001D8F744F980 +:10A9E00002460B4630463946D8F77EF806460F46F3 +:10A9F00053EC182BD8E92001D8F736F932463B46FC +:10AA0000D8F744FA06460F4653EC192BDDE902014C +:10AA1000D8F72AF902460B4630463946D8F764F88B +:10AA200006460F4653EC182BD8E92201D8F71CF93B +:10AA300032463B46D8F72AFA06460F4653EC192B06 +:10AA400051EC1A0BD8F710F902460B46304639463E +:10AA5000D8F74AF80022DFF80C34D8F705F941ECB2 +:10AA6000190BDDE90423DDE90801D8F7FDF8CDE98C +:10AA70000201DDE9082351EC1C0BD8F7F5F8CDE90C +:10AA80000001DDE9062351EC1B0BD8F7EDF8CDE909 +:10AA90000A019FEDF18BDDE90A2351EC1B0BD8F77E +:10AAA000E3F806460F4653EC1B2B51EC180BD8F776 +:10AAB000DBF853EC1C2BD8F7D7F853EC1D2BD8F749 +:10AAC000D3F802460B4630463946D8F70DF806460D +:10AAD0000F46DDE9002351EC1C0BD8F7C5F83246D0 +:10AAE0003B46D8F7D3F906460F46DDE9042351EC7F +:10AAF0001D0BD8F7B9F853EC1D2BD8F7B5F8324633 +:10AB00003B46D8F7C3F906460F46DDE90223DDE9E7 +:10AB10000601D8F7A9F802460B4630463946D7F762 +:10AB2000E3FF41EC1A0B53EC1A2B00200146D7F738 +:10AB3000CBFF00F08B81DDE9082351EC190BD8F72E +:10AB400093F806460F4653EC1D2B51EC1F0BD8F71C +:10AB50008BF802460B4630463946D7F7C5FF53EC13 +:10AB60001C2BD8F781F806460F4653EC1D2B51ECF1 +:10AB70001D0BD8F779F853EC1E2BD8F775F8324631 +:10AB80003B46D8F783F906460F46DDE90823DDE9A1 +:10AB90000601D8F769F853EC1E2BD8F765F8024682 +:10ABA0000B4630463946D7F79FFF06460F46DDE98C +:10ABB0000A2351EC1F0BD8F757F832463B46D8F71B +:10ABC00065F906460F4653EC1B2B51EC1D0BD8F7CD +:10ABD0004BF853EC192BD8F747F802460B46304692 +:10ABE0003946D7F781FFC4E90001DDE9042351ECC0 +:10ABF000190BD8F739F806460F4653EC1C2B51ECCD +:10AC00001E0BD8F731F802460B4630463946D7F7C7 +:10AC10006BFF53EC1D2BD8F727F806460F4653EC75 +:10AC20001C2B51EC1C0BD8F71FF853EC1F2BD8F73B +:10AC30001BF832463B46D8F729F906460F46DDE9B0 +:10AC40000423DDE90601D8F70FF853EC1F2BD8F7E2 +:10AC50000BF802460B4630463946D7F745FF064605 +:10AC60000F46DDE90A2351EC1E0BD7F7FDFF3246F4 +:10AC70003B46D8F70BF906460F4653EC1B2B51EC1D +:10AC80001C0BD7F7F1FF53EC192BD7F7EDFF02465A +:10AC90000B4630463946D7F727FFC4E90201DDE904 +:10ACA000042351EC1F0BD7F7DFFF06460F4653EC8A +:10ACB0001B2B51EC1E0BD7F7D7FF02460B46304635 +:10ACC0003946D7F711FF53EC1D2BD7F7CDFF0646BA +:10ACD0000F4653EC1B2B51EC1B0BD7F7C5FF53EC66 +:10ACE000192BD7F7C1FF32463B46D8F7CFF80646B7 +:10ACF0000F46DDE9022351EC190BD7F7B5FF0246E9 +:10AD00000B4630463946D7F7EFFE06460F46DDE9DB +:10AD1000002351EC1E0BD7F7A7FF32463B46D8F76E +:10AD2000B5F806460F4653EC1B2B51EC1C0BD7F71E +:10AD30009BFF53EC1F2BD7F797FF02460B4630467D +:10AD40003946D7F7D1FEC4E90401D4E9000153EC38 +:10AD50001A2BD8F70FF9C4E90001D4E9020153EC2A +:10AD60001A2BD8F707F9C4E90201D4E9040153EC1E +:10AD70001A2BD8F7FFF841EC190B84ED049B94EDE6 +:10AD800002AB94ED00BB53EC1B2B51EC1B0BD7F724 +:10AD90006BFF04460D4653EC1A2B51EC1A0BD7F7F8 +:10ADA00063FF22462B46D8F771F804460D4653EC54 +:10ADB000192B51EC190BD7F757FF22462B46D8F722 +:10ADC00065F804460D46D8E90023D8E90601D8F70E +:10ADD0005DF8D8E90A23D8F759F882468B4653EC38 +:10ADE0001B2BD8E90C01D7F73FFF06460F4653EC63 +:10ADF0001A2BD8E90E01D7F737FF32463B46D8F772 +:10AE000045F806460F4653EC192BD8E91001D7F741 +:10AE10002BFF32463B46D8F739F853EC182BD7F7BF +:10AE200023FF02460B4650465946D7F75DFED8E948 +:10AE30003023D8F79FF822462B46D8F727F841EC65 +:10AE4000100BD8F7BBF989ED000B01200DB0BDEC5C +:10AE5000108BBDE8F08F00BF000000000000004034 +:10AE60000000F03F0000E03F80B5012251EC100BE4 +:10AE700000F048F941EC100B01BD0000DFED4A0A7B +:10AE800010B560EE200AB0EEE01ADFED481AB4EE1D +:10AE9000611A82B00446F1EE10FA29D5F5EE400AA7 +:10AEA000F1EE10FAACBFB6EE001ABEEE001A70EE6C +:10AEB000810AFDEEE00A10EE900AA8B1FAEEC90A86 +:10AEC0009FED3B1A00EEC10A9FED3A1A00EEC10A4F +:10AED0009FED391A00EEC10A9FED381A00EEC10A43 +:10AEE0009FED371A00EEC10A00F00300041921E0BB +:10AEF0008DED000A0098C0F3C750FF2808D088B92C +:10AF0000009840020ED1E00748D5B7EE000A45E0B0 +:10AF10000098400246D1E9F7E9FB212101609FED4D +:10AF2000290A13BD8DED000A00A800F017FB0419D3 +:10AF30009DED000ADFED240AB4EE600AF1EE10FA8E +:10AF40000BDBDFED220AB4EE600AF1EE10FA04D555 +:10AF5000E00723D5B7EE000A20E060EE000AE00724 +:10AF60000ED59FED1B0A9FED1B1A00EE801ADFED38 +:10AF70001A1A41EE201AB7EE000A01EEA00A0DE0FF +:10AF8000DFED161A9FED162A00EEA12ADFED151A45 +:10AF900020EE201A42EE201A01EE210AA00748BF37 +:10AFA000B1EE400A13BD000083F9223F0000004FBC +:10AFB0000000C94600A0FD400020A23A0000343342 +:10AFC0000030C22EFFFFFF7FFEFF7FB900008039F7 +:10AFD0009349B2BA36A02A3DDFFFFFBE6E8C4CB952 +:10AFE0004283083CA1AA2ABE1AA210EE101ADFF86A +:10AFF00060C0F2EC060A614509DB00EE803A70EEB3 +:10B00000800A83EE200A40F0020010EE101A21F0B0 +:10B01000004CDCF1665C0BD860EE000A20EE203AB2 +:10B0200003EE010A01EEA02A42EE202A80EE220A57 +:10B03000400810F0020F18BFB1EE400A02EB800288 +:10B04000D2ED000A30EE200A28BFB1EE400A704768 +:10B05000A430893ED7B3DD3F6AD5033F2B94A93D89 +:10B06000B82A593F0000803F000080BF0000000068 +:10B07000920A063FDB0FC93F920A863FDB0FC93FAA +:10B08000920A0640DB0F4940368D274081423ABF85 +:10B0900053189842D7F7CCBC8018990707D0521E96 +:10B0A00024BF13F8011D00F8011DF6D87047810771 +:10B0B0001CD1103A07D330B433E93210103A20E9EA +:10B0C0003210F9D230BC1032121F24BF53F8041DC5 +:10B0D00040F8041DF8D838BF121D521E24BF13F8C3 +:10B0E000011D00F8011DF8D8704700BF083A07D3CA +:10B0F00033E90210083A40F804CD40F8041DF7D2B5 +:10B100000832EAE7F8B52DED048B154641EC180B33 +:10B1100082B053EC182BC448C449D7F7A5FDC44AE4 +:10B12000C44B41EC190B21F00041D7F77BFE80F0B6 +:10B13000F38051EC190B00220023E9F739FB53ECA3 +:10B14000192B99BF0020BC490020BC49D7F79EFEAF +:10B15000D8F7B4F8040051D0D7F780FE0022B84BDE +:10B16000D7F782FD41EC190B53EC192B4FF0A0409F +:10B17000B449D7F779FD02460B4651EC180BD7F7C7 +:10B18000B3FC06460F4653EC192B4FF0C040AE49B6 +:10B19000D7F76AFD02460B4630463946D7F7A4FC7E +:10B1A00006460F4653EC192B4FF00050A749D7F72E +:10B1B0005BFD02460B4630463946D7F795FC0646FE +:10B1C0000F4653EC192B0020A149D7F74DFD02463D +:10B1D0000B4630463946D7F787FC06460F4653ECF8 +:10B1E000192B4FF000509B49D7F73EFD02460B4606 +:10B1F00030463946D7F778FC41EC180B04F00300D1 +:10B20000451951EC180B6FF00102944BE9F7D0FA95 +:10B210000BD800224FF07953D7F704FE05D2E80788 +:10B2200040F18E819FED8E8B8AE153EC182BD7F77E +:10B230001BFD41EC190BE80731D553EC192B8A485B +:10B240008A49D7F711FD8A4A8A4BD7F71FFE53EC7C +:10B25000192BD7F709FD884A884BD7F717FE53EC0F +:10B26000192BD7F701FD864A864BD7F70FFE53EC13 +:10B27000192BD7F7F9FC844A844BD7F707FE53EC18 +:10B28000192BD7F7F1FC824B6FF05102D7F7FEFD77 +:10B2900053EC192BD7F7E8FC0022624B37E053EC54 +:10B2A000182B51EC190BD7F7DFFC06460F4653EC71 +:10B2B000192B91489149D7F7D7FC914A914BD7F771 +:10B2C000E5FD53EC192BD7F7CFFC8F4A8F4BD7F7FF +:10B2D000DDFD53EC192BD7F7C7FC8D4A8D4BD7F703 +:10B2E000D5FD53EC192BD7F7BFFC8B4A8B4BD7F707 +:10B2F000CDFD53EC192BD7F7B7FC894A564BD7F73E +:10B30000C5FD32463B46D7F7AFFC53EC182BD7F7B9 +:10B31000BDFD41EC180B13E18DED008BDDE9000163 +:10B32000DDE90023C3F30A5140F2FF72914213D0CA +:10B33000002904BF190350EA11301CD1E80748BFA7 +:10B340009FED478BA80740F1038151EC180B81F06A +:10B35000004141EC180BFBE0190350EA113040F0BA +:10B36000F780E9F7C3F92121016002B04FF0FF3007 +:10B370006FF00041EFE08DED008B00A800F064F964 +:10B3800045199DED008B354B51EC180B6FF0010208 +:10B39000E9F70EFA0BD800224FF07953D7F742FDA8 +:10B3A00005D2E80740F1CC809FED2D8BC8E053EC2F +:10B3B000182BD7F759FC41EC190BE8076AD553EC69 +:10B3C000192B29482949D7F74FFC294A294BD7F788 +:10B3D0005DFD53EC192BD7F747FC274A274BD7F7CE +:10B3E00055FD53EC192BD7F73FFC254A254BD7F7D2 +:10B3F0004DFD53EC192BD7F737FC234A234BD7F7D6 +:10B4000045FD53EC192BD7F72FFC214B6FF0510260 +:10B41000D7F73CFD53EC192BD7F726FC0022014B44 +:10B420008AE000BF0000F03F83C8C96D305FE43F91 +:10B430000000A0FFFFFFDF410000E03F0000E0BF91 +:10B440000000303EFB21B941B410114026A6513E08 +:10B450005C14D33C9A833B3B5555C5BFFFFF3FBEB1 +:10B46000000000000000F03F09260A1039BA213E12 +:10B470003BA861C6F97D92BE63AC30909F01FA3E55 +:10B48000F6FB51166CC156BFB10255555555A53F37 +:10B49000FFFFDFBF53EC182B51EC190BD7F7E4FB80 +:10B4A00006460F4653EC192B13481449D7F7DCFB1B +:10B4B000134A144BD7F7EAFC53EC192BD7F7D4FBFC +:10B4C000114A124BD7F7E2FC53EC192BD7F7CCFB00 +:10B4D0000F4A104BD7F7DAFC53EC192BD7F7C4FB04 +:10B4E0000D4A0E4BD7F7D2FC53EC192BD7F7BCFB08 +:10B4F0000B4A0C4B18E000BFB08F2FC310D8E53DAE +:10B500008F0C73A1E1E55ABE4DADE44FE31DC73E7C +:10B510003EE3B519A0012ABFFAF010111111813FC5 +:10B52000425555555555C5BFD7F7B0FC32463B4639 +:10B53000D7F79AFB53EC182BD7F7A8FC41EC180B64 +:10B54000A80705D551EC180B81F0004141EC180B10 +:10B5500002B051EC180BBDEC048BF4BD10B52DED11 +:10B56000028B044682B094ED008A9FED2D0A28EEEE +:10B57000000AB5EE400A8DED000AF1EE10FAACBFFC +:10B58000F6EE000AFEEE000A30EE200A8DED000A0B +:10B59000002100A800F00CF99DED000AB5EE400A6C +:10B5A000F1EE10FA17D0DFED1F0A20EE200ADFEDD2 +:10B5B0001E0A00EE608ADFED1D0A00EE608ADFEDF4 +:10B5C0001C0A00EE608ADFED1B0A00EE608ADFEDE8 +:10B5D0001A0A00EE608A84ED008ADFED180A9DEDFC +:10B5E000000AB4EE600AF1EE10FA06D4DFED140A98 +:10B5F000B4EE600AF1EE10FA05DBDFED120A00F09E +:10B60000FFF88DED000A9DED000ABDEEC00A02B004 +:10B6100010EE100A00F00300BDEC028B10BD00001C +:10B6200083F9223F000080380000C94600A0FD4099 +:10B630000020A23A000034330030C22E000000CFB8 +:10B640000100004F0000004FD0B52DED048B0446E3 +:10B6500082B094ED008B4748474953EC182BD7F73D +:10B6600003FBCDE9000100220023E9F7A1F8DDE9A1 +:10B67000002399BF0020414900204149D7F706FC2B +:10B68000CDE90001002100A800F058F9DDE9002310 +:10B6900000200021D7F718FA4ED03A49D7F7E4FA3C +:10B6A00041EC190B53EC192B4FF0A0403649D7F75A +:10B6B000DBFA02460B4651EC180BD7F715FA064693 +:10B6C0000F4653EC192B4FF0C0403049D7F7CCFA56 +:10B6D00002460B4630463946D7F706FA06460F466D +:10B6E00053EC192B4FF000502949D7F7BDFA024609 +:10B6F0000B4630463946D7F7F7F906460F4653EC66 +:10B70000192B00202349D7F7AFFA02460B463046E3 +:10B710003946D7F7E9F906460F4653EC192B4FF097 +:10B7200000501D49D7F7A0FA02460B46304639466D +:10B73000D7F7DAF941EC180B84ED008BDDE9000155 +:10B74000164A174BD7F76EFB04D3164A164BE9F788 +:10B750002FF805D80022154B00F030F9CDE9000193 +:10B76000DDE90001D7F7AAFD02B000F00300BDEC4F +:10B77000048BD0BD83C8C96D305FE43F0000E03F5B +:10B780000000E0BF0000303EFB21B941B410114081 +:10B7900026A6513E5C14D33C9A833B3B0000C0FF7D +:10B7A000FFFFDFC10100C0FFFFFFDF410000E041FC +:10B7B0000268C2F3C752FF2A06D10068400201D1D5 +:10B7C000012070470220704703685B0016D0C2F169 +:10B7D0009602521A012A11DB182A04DB016801F0D3 +:10B7E0000041016007E0012191400268491E1140BB +:10B7F0004A40026011B14FF0FF307047002070479F +:10B8000010EE100A10EE901AA4464FF0FF034FEA14 +:10B81000410103EAD0540A0E1CBF94EA030F92EAD6 +:10B82000030F55D0B1EB400F2ED24FEAC11141F0BA +:10B83000004100F000434FEA002040F000404FEA92 +:10B840009000890864EB0204401A38BF01EB400005 +:10B8500018BF54F1000407D0D1EB400038BF0818DE +:10B8600018BFB4F10104F7D140002CD0B0FA80F138 +:10B8700000FA01F0521A0EDB43EA102000EBC2502E +:10B8800000EE100A6446704708BF00F0004000EE6A +:10B89000100A6446704743EA102000EE100A02F1D5 +:10B8A0007F024FEAC25100EE901AF1EE100A20F426 +:10B8B000F851E1EE101A20EE200AE1EE100A10EE27 +:10B8C000100A64467047184600EE100A6446704736 +:10B8D00009421CBF94EA030F92EA030F1CD04FF0F9 +:10B8E000984201EE102A60EE810AB1EB400FCBD2F4 +:10B8F000244208BF20EE010A10EE901A03EAD1524A +:10B90000A2F119024FEA012191D110EE100A03EAC7 +:10B91000D054A4F119048CE74FF0807212EB400F61 +:10B920002CBF6FF0004011F1807F644618BF6FF0AC +:10B93000004000EE100ADCF401AC70474268C2F32C +:10B940000A5240F2FF739A4209D14168090304BFC9 +:10B950000068002801D10120704702207047436829 +:10B960005B0004BF0368002B25D040F233439A1AD2 +:10B97000521A012A1FDB352A06DB416801F000411B +:10B9800041600021016013E0012102F01F03994092 +:10B99000491E920607D5426811404A40426002683B +:10B9A0001143002202E0026811404A40026011B1D6 +:10B9B0004FF0FF30704700207047000070B540F234 +:10B9C000FF7601F0004C5B0006EA11545D0D1ABFD2 +:10B9D000B442B54278E0B3EB410F08BF82424BD28C +:10B9E000C3F3530343F48013C1F3130141F48011F3 +:10B9F000641B0B3C13D9C90241EA5051B1FBF3FE61 +:10BA000003FB1E11A2FB0EE6DEEBC020B14101D20A +:10BA10008018594150EA010653D00B3CEBD80B3447 +:10BA2000C4F12006A14020FA06F6A0403143B1FB44 +:10BA3000F3FE03FB1E11A2FB0EE6B0EB0E00B141BC +:10BA400001D28018594102BF0146203D0020C1B3F8 +:10BA5000B1FA81F39940C3F1200220FA02F21143B6 +:10BA60009840ED1A0A3509DBC00A40EA41504CEA19 +:10BA7000D12101EB055170BD23D070BDD5F10B056F +:10BA8000B5F120020DDAC5F120020300E84001FA09 +:10BA900002F6E940934073F10043704151EB0C0111 +:10BAA00070BD402D0DDC430821FA02F0C2F12005E3 +:10BAB00011FA05F6334373F1004370415CF1000164 +:10BAC00070BD6146002070BD53EA020E1ABFB44239 +:10BAD000B54237E0B3EB410F08BF8242CCD25B08DE +:10BAE000B3FA83F504BFB2FA82F6AD190B3DB5F196 +:10BAF000200624BF02FA06F305E0AB40C5F120069C +:10BB000022FA06F63343AA40D5F1010524427FF418 +:10BB10006BAF31F00041B1FA81F404BFB0FA80F6A6 +:10BB2000A4190B3CB4F1200624BF00FA06F105E08D +:10BB3000A140C4F1200620FA06F63143A040D4F11A +:10BB4000010455E74FF4001515EB410F2CBF6FF0C2 +:10BB50000041EB4218BF6FF00041BDE87040DCF4DB +:10BB6000EDAA7047BFF34F8FDFF8A008016801F41A +:10BB7000E061DFF89C2811430160BFF34F8FFEE7BF +:10BB80001EF0040F0CBFEFF30880EFF3098000F004 +:10BB90003DB870471EF0040F0CBFEFF30880EFF3C1 +:10BBA000098000F033B8FEE71EF0040F0CBFEFF37E +:10BBB0000880EFF3098000F029B870471EF0040FE9 +:10BBC0000CBFEFF30880EFF3098000F01FB8704757 +:10BBD0001EF0040F0CBFEFF30880EFF3098000F0B4 +:10BBE00015B870471EF0040F0CBFEFF30880EFF399 +:10BBF000098000F00BB870471EF0040F0CBFEFF384 +:10BC00000880EFF3098000F001B87047D9F7E1B878 +:10BC100070472DE9F04186B059E02646D6F7A8FDD9 +:10BC2000D6F73FFB0521D6F728FD0FF62800D6F7FB +:10BC3000B9FBD6F7A0FDDFF8DC173846DCF764FE69 +:10BC400000281AD13046461E0028F4D16D1EE4D5D6 +:10BC500000213846DCF743FE0021DFF8BC07DCF7A3 +:10BC60003EFEBDF80330BDF801209DF800100FF234 +:10BC7000EC70D6F797FBFFF775FFB8F1020F01D113 +:10BC8000DAF712FBDDF80900002804D0DEF7D4FB58 +:10BC90000020CDF8090049F64044DFF88057022122 +:10BCA0002846DCF769FD002803D12046441E002801 +:10BCB000F5D142F2107680212846DCF75DFD01289F +:10BCC00003D13046461E0028F5D1D6F751FD00A914 +:10BCD000DFF84C0700F0E2FB9DF8030010F00308CA +:10BCE00008D0B8F1020F05D015D3B8F1030F00F05A +:10BCF0008780ECE7BDF80100011D89B2DDF809007D +:10BD000000F0FAFBDFF81C4726460125D6F733FD85 +:10BD1000DFF814778FE7DFF804078089C04604A8AE +:10BD20000021016002220DF10301D8F7E3FD022298 +:10BD30000DF101010DF11200D8F7DCFD042104A87A +:10BD400000F0DAFBBDF80100001DDEF75DFBCDF869 +:10BD50000900BDF80100011D89B2DDF8090000F0FD +:10BD6000EFFBDFF8C04626460125D6F704FDDFF8D5 +:10BD7000A8760DE02646D6F7FBFCD6F792FA052109 +:10BD8000D6F77BFC0FF2E460D6F70CFBD6F7F3FC9A +:10BD9000DFF898163846DCF7B7FD00281AD1304690 +:10BDA000461E0028F4D16D1EE4D50021DFF8780688 +:10BDB000DCF795FD00213846DCF791FDBDF8033036 +:10BDC000BDF801209DF800100FF2A860D6F7EAFA3E +:10BDD000FFF7C8FED6F7CCFC002E3FF478AF00A9E1 +:10BDE000DFF84C0600F0D0FB002803D00FF294607F +:10BDF000D9F7A0F8DFF83C160820E5F7C1F966E7A7 +:10BE0000DFF818068089C0460921DFF82C0600F00B +:10BE100097FBD6F7B6FCDFF824660221DFF8200690 +:10BE2000DCF72FFB00287FF452AF3046461E002877 +:10BE3000F3D10021DFF8F005DCF751FD0021DFF838 +:10BE4000D805DCF74CFD0FF24460D6F7ABFA3EE7BD +:10BE50002DE9F041DFF8EC452078401C2070DFF838 +:10BE6000E8552878401C2870D9F76BFB6878F021DA +:10BE7000084202D09920D8F7B9FCD8F724FD687899 +:10BE8000401C6870D8F7B0F96878F021084202D0F9 +:10BE90009920D8F7ABFC6878401E6870C0B20028C3 +:10BEA00001D1D8F70AFD0120DDF706F8012840F09E +:10BEB00082800120DDF70CF80026DFF89075012163 +:10BEC000DFF88C05DCF7DDFA002868D03878002828 +:10BED0002ED030463870DFF84C75DFF83C85404690 +:10BEE000DCF70EFD002823D03846471E0028F6D187 +:10BEF0003146DFF83405DCF7F2FC31464046DCF72A +:10BF0000EEFC0FF29050D6F74DFAD6F737FC2078BA +:10BF1000411E2170002802D19820D8F767FC2878AC +:10BF2000012858D16868002855D0D8F7C2FC52E0E3 +:10BF30000221DFF80C05DCF7A4FA002810D02078E5 +:10BF4000411E2170002802D19820D8F74FFC287894 +:10BF5000012840D1686800283DD0D8F7AAFC3AE013 +:10BF6000DFF8D414C87810F003000BD0012813D1E7 +:10BF7000B1F80100002805D0DFF8A40400F004FBAC +:10BF8000064609E0DFF8A80400F0FEFA0646DFF8EE +:10BF9000A4140820E5F7F4F8D6F7F0FB07E0012039 +:10BFA0003870391DDFF8780400F0EEFA0646002EEE +:10BFB00001D0D8F7D0FF2078411E2170002802D18F +:10BFC0009820D8F713FC2878012804D16868002845 +:10BFD00001D0D8F76EFC2878401E2870BDE8F081AB +:10BFE00038B5DFF860442078401C2070DFF85854E2 +:10BFF0002878401C2870D9F7A4FA6878F021084204 +:10C0000002D09920D8F7F2FBD8F75DFC6878401C85 +:10C010006870D8F7E9F86878F021084202D09920D2 +:10C02000D8F7E4FB6878401E6870C0B2002801D1E0 +:10C03000D8F743FC0220DCF73FFF002802D00220A3 +:10C04000DCF746FF2078411E2170002802D198209D +:10C05000D8F7CCFB2878012804D16868002801D0E3 +:10C06000D8F727FC2878401E287031BD38B5DFF896 +:10C07000D4432078401C2070DFF8CC532878401C33 +:10C080002870D9F75EFA6878F021084202D099202A +:10C09000D8F7ACFBD8F717FC6878401C6870D8F765 +:10C0A000A3F86878F021084202D09920D8F79EFBC7 +:10C0B0006878401E6870C0B2002801D1D8F7FDFB37 +:10C0C0000420DCF7F9FE00280BD00420DCF700FF89 +:10C0D000012200210320D6F757FBD6491020E5F7AF +:10C0E0004FF82078411E2170002802D19820D8F7FF +:10C0F0007DFB2878012804D16868002801D0D8F792 +:10C10000D8FB2878401E287031BD38B5CD4C20783A +:10C11000401C2070CC4D2878401C2870D9F711FAAB +:10C120006878F021084202D09920D8F75FFBD8F751 +:10C13000CAFB6878401C6870D8F756F86878F02118 +:10C14000084202D09920D8F751FB6878401E6870E9 +:10C15000C0B2002801D1D8F7B0FB4FF40060DCF783 +:10C16000ABFE002807D04FF40060DCF7B1FEB14908 +:10C170002020E5F705F82078411E2170002802D123 +:10C180009820D8F733FB2878012804D16868002864 +:10C1900001D0D8F78EFB2878401E287031BD70B5CD +:10C1A000A84C2078401C2070A74D2878401C28708F +:10C1B000D9F7C7F96878F021084202D09920D8F75A +:10C1C00015FBD8F780FB6878401C6870D8F70CF82E +:10C1D0006878F021084202D09920D8F707FB6878E8 +:10C1E000401E6870C0B2002801D1D8F766FB4FF43A +:10C1F0008040DCF7E3FD00281DD08E4EEBF7ECFF0E +:10C2000000280CD00020EBF7F1FFDEF725F9C06F16 +:10C21000D6F7A4F831460620E4F7B2FF03E0314632 +:10C220000220E4F7ADFF4FF48040DCF7DCFD4FF473 +:10C230008000DCF74DFE2078411E2170002802D1DD +:10C240009820D8F7D3FA2878012804D16868002804 +:10C2500001D0D8F72EFB2878401E287070BD38B565 +:10C26000784C2078401C2070774D2878401C28702E +:10C27000D9F767F96878F021084202D09920D8F7F9 +:10C28000B5FAD8F720FB6878401C6870D7F7ACFF88 +:10C290006878F021084202D09920D8F7A7FA687888 +:10C2A000401E6870C0B2002801D1D8F706FB4FF4D9 +:10C2B0008050DCF783FD00280BD05E494020E4F776 +:10C2C0005FFF4FF48050DCF78EFD4FF40030DCF759 +:10C2D000FFFD2078411E2170002802D19820D8F758 +:10C2E00085FA2878012804D16868002801D0D8F799 +:10C2F000E0FA2878401E287031BDF0B585B0514C69 +:10C300002078401C2070504D2878401C2870D9F7A8 +:10C3100018F90220DBF7E2FF002862D0002102209A +:10C32000DBF7B9FF0220DBF7E1FF0020DBF71CFFA2 +:10C3300000A90020DCF7FFFB0120DCF739FB01211D +:10C340004FF48020DBF765FF0F20DCF7E1FC0646A9 +:10C350001020DCF7DDFC07460120DBF757FF00204B +:10C36000DBF754FF31460F20DCF7C5FC39461020BF +:10C37000DCF7C1FC00214FF48020DBF74AFF0120ED +:10C38000DBF7E2FE01214FF08050DBF74DFF4FF469 +:10C390008070DBF725FF3F20029040F2FF100390F2 +:10C3A0000020019001A8DCF70DFB00A90020DCF7BC +:10C3B00073FB0120DBF727FFDCF74DFB0320DCF7E5 +:10C3C00058FC4FF48040DCF70EFD4FF48000DCF7A2 +:10C3D0007FFD01214FF48040DCF7CBFC0220DBF72E +:10C3E00085FF2078411E2170002802D19820D8F7BF +:10C3F000FDF92878012804D16868002801D0D8F711 +:10C4000058FA2878401E287005B0F0BD0CED00E009 +:10C410000400FA05000800201064024000300140CA +:10C4200044A4002080841E00886402402000001084 +:10C4300028A40020B8900020AC260120404B4C00DE +:10C4400000040240042C0120A0790020187A00206A +:10C450000000024054785265747279005478444D5B +:10C46000412025642025642025640000527852650F +:10C47000747279005278444D41202564202564204F +:10C48000256400005075744D61696C00524541444B +:10C4900059000000455854493000000038B50400E8 +:10C4A0000D0013480078401C1149087011480078AD +:10C4B000002802D0A120D8F799F9D9F71DF8607E9D +:10C4C000662802D08220D8F791F9D8F7FCF905E068 +:10C4D00040212000EBF790FED8F7F5F9E06800283E +:10C4E000F6D029002000EBF7D3FED9F746F831BD8E +:10C4F000A0790020052C012038B50C460E4D296886 +:10C50000C90706D529684908490029602968C9076B +:10C51000FCD4002201462846DCF7ECF907492846FE +:10C52000DCF705FA214628464160C046012128462D +:10C53000BDE83440DCF7D3B988640240000800202D +:10C5400038B50C460E4D2968C90706D52968490833 +:10C55000490029602968C907FCD400220146284601 +:10C56000DCF7C8F907492846DCF7E1F921462846F7 +:10C570004160C04601212846BDE83440DCF7AFB930 +:10C58000106402402000001070B504000D00012668 +:10C59000607E662802D08220D8F728F9D8F784FF79 +:10C5A00011480078401C10490870D8F78CF9E068F1 +:10C5B0002169884204D229002000EBF73FFE0026C3 +:10C5C00009484078F021084202D09920D8F70EF9A6 +:10C5D00005484078002801D1D8F76FF9D8F7CDFF8A +:10C5E0003000C0B270BD00BFA079002030B4016837 +:10C5F000DFF86C2811614368536184689461C068F6 +:10C60000D061012595620825D5628B4201DA13615C +:10C610005161A04201DA9061D4614FF0FF301063A4 +:10C62000002010731062506230BC704710B5DFF804 +:10C6300030084FF0FF310163002101730162416254 +:10C6400041638163DFF820484FF496622046D5F7B6 +:10C6500005FE4FF49662002104F59660D5F7FEFDC5 +:10C660004FF46172002104F6E440D5F7F7FD4FF472 +:10C670006172002104F51660BDE81040D5F7EEBDEB +:10C6800070B52DED0A8BB0EE618AF0EE428AB0EE05 +:10C69000629A0024F0EE609AB5EE400AF1EE10FACC +:10C6A0000AD1F5EE409AF1EE10FA05D1B5EE401A36 +:10C6B000F1EE10FA00F02B81DFF8A45785ED000AA7 +:10C6C000C5ED019AB0EE41AA85ED02AADFF89C679C +:10C6D000B0EE480A10EE100ADBF7C0FC21F0004172 +:10C6E0002246DFF88C37D6F79DFB02D21046306029 +:10C6F00007E0B0EE480ADFED880A20EE200A86ED5A +:10C70000000AF0EE68AA1AEE900ADBF7A7FC21F007 +:10C7100000412246DFF85837D6F784FB02D2104694 +:10C72000706005E09FED7C0A2AEE800A86ED010A22 +:10C7300019EE100ADBF792FC21F000412246DFF8E7 +:10C740003037D6F76FFB02D21046B06005E09FEDA0 +:10C75000720A29EE000A86ED020A95ED00BA2BEE68 +:10C760000B0A09EEA90A0AEE0A0A10EE100ADBF714 +:10C7700075FC41EC100BD6F721FD51EC100BDBF7EB +:10C7800095FC0AEE900A9FED65CB8BEE2A0A10EE1F +:10C79000100ADBF763FC41EC100B00F013FC53ECC8 +:10C7A000102B51EC1C0BD6F75FFADBF77FFC08EE81 +:10C7B000100A89EEAA0A10EE100ADBF74FFC41ECD2 +:10C7C000100B00F0FFFB53EC102B51EC1C0BD6F7B9 +:10C7D0004BFADBF76BFC08EE900A8AEE2A0A10EEA1 +:10C7E000100ADBF73BFC41EC100B00F0EBFB53ECC9 +:10C7F000102B51EC1C0BD6F737FADBF757FC0AEE7F +:10C80000100A19EE900ADBF729FC41EC110BB0EE8F +:10C81000419AF0EE619AB1EE4B0A10EE100ADBF786 +:10C820001DFC41EC100BB0EE491AF0EE691A00F055 +:10C8300041FC53EC102B4FF00050DFF83816D6F7C0 +:10C8400013FADBF733FC09EE100AF0EE491AB0EEEA +:10C850004A1AF0EE680AB0EE480A00F037FAF0EE35 +:10C860006A1A95EC030A00F04AFA96EC030A00F003 +:10C8700060FA2E6B3146012000F072FADFF8E8050D +:10C8800000EB860000F6106080ED000A95ED040ACA +:10C89000B8EEC00AB4EE40AAF1EE10FA22DB95ED34 +:10C8A000050AB8EEC00AB4EE4A0AF1EE10FA19DB36 +:10C8B00095ED060AB8EEC00AB4EE409AF1EE10FA11 +:10C8C00010DB95ED070AB8EEC00AB4EE490AF1EEA6 +:10C8D00010FA07DB0FF2A850D5F764FD286A401C58 +:10C8E000286201E020462862286AA96A88420EDB95 +:10C8F0002046286200F096F9012808D10FF29050E6 +:10C90000D5F750FD00F004F9012800D1012420469C +:10C91000BDEC0A8B70BD0000E12E654200000020D6 +:10C92000DCA54C4070B52DED0A8B0024DFF83055A6 +:10C9300085ED000AB0EE60AA85ED01AAF0EE419AFD +:10C94000C5ED029A95ED00BA2BEE0B0A0AEE0A0A23 +:10C9500009EEA90A10EE100ADBF780FB41EC100B80 +:10C96000D6F72CFC51EC100BDBF7A0FB09EE100AFC +:10C970009FEDA5CB8BEE090A10EE100ADBF76EFBDC +:10C9800041EC100B00F01EFB53EC102B51EC1C0B78 +:10C99000D6F76AF9DBF78AFB08EE100A8AEE090A75 +:10C9A00010EE100ADBF75AFB41EC100B00F00AFB0B +:10C9B00053EC102B51EC1C0BD6F756F9DBF776FB3A +:10C9C00008EE900A89EE890A10EE100ADBF746FBA2 +:10C9D00041EC100B00F0F6FA53EC102B51EC1C0B51 +:10C9E000D6F742F9DBF762FB09EE900A1AEE100A5D +:10C9F000DBF734FB41EC110BB0EE41AAF0EE61AA7B +:10CA0000B1EE4B0A10EE100ADBF728FB41EC100BDD +:10CA1000B0EE4A1AF0EE6A1A00F04CFB53EC102B01 +:10CA20004FF00050DFF84C14D6F71EF9DBF73EFB51 +:10CA30000AEE100AF0EE4A1AB0EE691AF0EE680A31 +:10CA4000B0EE480A00F042F9F0EE491A95EC030AFC +:10CA500000F055F92E6B287B002801D1032E52DB04 +:10CA60003146012000F07CF9DFF8FC0300EB860082 +:10CA700000F6106080ED000A9FED650AB4EE409A62 +:10CA8000F1EE10FA3FD49FED630AB4EE409AF1EE56 +:10CA900010FA38DA28691E3800EE100AB8EEC00A1B +:10CAA000F4EE409AF1EE10FA20DB68691E3000EED9 +:10CAB000100AB8EEC00AB4EE690AF1EE10FA15DBFE +:10CAC000A8691E3800EE100AB8EEC00AB4EE40AAFB +:10CAD000F1EE10FA0ADBE8691E3000EE100AB8EE3B +:10CAE000C00AB4EE4A0AF1EE10FA03DA686A401C92 +:10CAF000686201E020466862686AE96A884202DB8F +:10CB00000224FFF793FD2046BDEC0A8B70BD0000A8 +:10CB1000F8B52DED028B84B0002400A821460A460A +:10CB20000B460EC0DFF83803017B012901D1182123 +:10CB300001E0016B491EDFF830C31AE000AD4FF48D +:10CB4000967707FB03C707EB8607D7F8607900EEF7 +:10CB5000107ADFED310A05EB830797ED001A00EE3E +:10CB6000201A05EB830585ED001A5B1C032BE5DB22 +:10CB7000521C8A420ADA036B9B1A4B334B2593FBF8 +:10CB8000F5F54B2606FB15362346EFE700AD95ED90 +:10CB9000018A9FED220AB4EE408AF1EE10FA16D512 +:10CBA0000098DBF75BFA21F000412246DFF8C8323B +:10CBB000D6F738F90BD2A868DBF750FA21F000411C +:10CBC0002246DFF8B432D6F72DF900D201249FEDCA +:10CBD000140ADDED000A95ED021A70EEC10AF4EEBA +:10CBE000400AF1EE10FA00DB0124DDED000A70EEE0 +:10CBF000C80AF4EE400AF1EE10FA00DB01242046E8 +:10CC000004B0BDEC028BF2BD00000020DCA54C405E +:10CC100041ABDB4074FA4B410AD7A33C00008CC205 +:10CC20000100704210B400208D49096B01F14B02E4 +:10CC30004B231C4692FBF4F403FB14224A311C469E +:10CC400091FBF4F403FB1411874B03EB8204D4F83B +:10CC5000604900EE104AB5EE400AF1EE10FA33D109 +:10CC600003EB8202D2F88C4A00EE104AB5EE400A7D +:10CC7000F1EE10FA28D1D2F8B82B00EE102AB5EE5A +:10CC8000400AF1EE10FA1FD103EB8102D2F86029BD +:10CC900000EE102AB5EE400AF1EE10FA14D103EBC3 +:10CCA0008101D1F88C2A00EE102AB5EE400AF1EE8F +:10CCB00010FA09D1D1F8B81B00EE101AB5EE400AEF +:10CCC000F1EE10FA00D1012010BC70476448016BEE +:10CCD000491C01634B2903DB012202734B390163B9 +:10CCE000006B614901EB800282ED000A01EB8000DC +:10CCF000C0ED4B0A80ED961AC0EDE11A7047584816 +:10CD0000006B594901EB800202F2B04282ED000A49 +:10CD100001EB800000F2DC51B0EE602A81ED002AC8 +:10CD200000F2087181ED001A00F63400C0ED001A1F +:10CD300070474B48006B4C4901EB800202F66012D1 +:10CD400082ED000A01EB800000F68C21F0EE601A03 +:10CD5000C1ED001A00F6B83080ED001A70470000EF +:10CD600030B49FED400ADFED3F0A00223E4D12E055 +:10CD70008B1A1BB2002B00D54B331BB24FF49674A9 +:10CD800004FB005404EB8303D3F8B03401EE103AF3 +:10CD900030EE010A521C032AEADBB0EE081A80EEDC +:10CDA000010A002214E08B1A1BB2002B01D54B3371 +:10CDB0001BB24FF4967404FB005404EB8303D3F8C6 +:10CDC000B03401EE103A31EE401A41EE010A521C25 +:10CDD000032AE8DBB0EE080A80EE800A30BC704718 +:10CDE00038B52DED048BF0EE608AB0EE419A1C4C04 +:10CDF000A06B451CA56310EE100ADBF72FF921F09C +:10CE0000004101221D4BE7F7D3FC19D9B0EE680AA7 +:10CE100010EE100ADBF722F921F000410122174B36 +:10CE2000E7F7C6FC0CD9B0EE490A10EE100ADBF7A2 +:10CE300015F921F000410122104BE7F7B9FC02D8A7 +:10CE4000606B401C6063022D05D100206063FFF71A +:10CE5000EDFB022000E00020BDEC048B32BD0000A1 +:10CE60002824012000000000A8910020902A012021 +:10CE70000000E03FDCA54CC0000034400000F03F63 +:10CE800023534C2D3E2054696C7420696E000000C1 +:10CE900023534C2D3E206465746563742073746F56 +:10CEA00070200000D0B52DED048B82B041EC180B42 +:10CEB0008DED008BDDE90023C3F30A5140F2FF72D0 +:10CEC000914213D0002904BF190350EA113011D048 +:10CED00051EC180B00220023D5F7A4FF3DBF81F0D1 +:10CEE000004141EC180B0824002407E0190350EA24 +:10CEF0001130EDD002B051EC180B60E051EC180B82 +:10CF0000274A284BD5F78EFF1CD29FED239B51EC6F +:10CF1000190B53EC182BD5F7E7FD06460F4653ECDB +:10CF2000182B51EC190BD5F7B1FF32463B46D5F71C +:10CF30009BFED6F74BF941EC100B51EC180B53EC60 +:10CF4000102B1EE00122184BD5F76CFF2ED29FED5F +:10CF5000129B51EC190B53EC182BD5F7C5FD064667 +:10CF60000F4653EC182B51EC190BD5F78FFF3246B7 +:10CF70003B46D5F779FED6F729F984F0020453EC45 +:10CF8000182BD5F7F7FF02B02246BDEC048BBDE8A5 +:10CF9000D04000F099B800BF000000000000F03F52 +:10CFA000CE3B7F669EA0E63F0000F03FE7F79EFB8A +:10CFB0002121016002B04FF0FF306FF00041BDEC65 +:10CFC000048BD0BD80B551EC100BFFF76BFF41EC2B +:10CFD000100B01BD38B50FB4DDE9020100F06CF9AA +:10CFE0000546DDE9000100F067F9012DB8BF012811 +:10CFF00030DA0198002807D5DDE9000181F0004111 +:10D00000CDE90001082400E000240398002807D59A +:10D01000DDE9020181F00041CDE9020184F006045E +:10D02000DDE90201DDE90023D5F7FCFE04D2D5F7E6 +:10D03000A1FF41EC100B29E0002D08D5DDE900012E +:10D04000DDE90223D5F796FF41EC100B20E09FEDC0 +:10D05000150B1DE0022808BFDDE9000120D0022DDC +:10D0600008BFDDE902011BD085420CBF9FED0F0B0D +:10D070009FED0C0B019900294CBF08240024039953 +:10D08000002948BF84F00604012801D184F002047D +:10D09000224605B0BDE8304051EC100B00F014B84A +:10D0A00005B030BD000000000000000000000000DE +:10D0B0000000F03F80B553EC112B51EC100BFFF743 +:10D0C00089FF41EC100B01BDD0B514462DED048B4A +:10D0D000534A544BE7F76CFB41EC180B1DD89FEDFE +:10D0E000529B53EC182B51EC190BD5F7BDFD0022C8 +:10D0F0004F4BD5F7CBFE06460F4653EC182B51ECA1 +:10D10000190BD5F7C3FE02460B4630463946D5F714 +:10D1100031FF41EC180B44F0010451EC180B0022D4 +:10D12000444BD5F77FFE05D301224FF07953E7F743 +:10D130003FFB51D853EC182BD5F796FD41EC190B5A +:10D1400053EC182BD5F790FD06460F4653EC192BE0 +:10D1500039483A49D5F788FD394A3A4BD5F796FE12 +:10D1600053EC192BD5F780FD374A384BD5F78EFE97 +:10D1700032463B46D5F778FD53EC182BD5F786FEA3 +:10D1800006460F4653EC192B31483249D5F76CFD52 +:10D19000314A324BD5F77AFE53EC192BD5F764FDA3 +:10D1A0002F4A304BD5F772FE53EC192BD5F75CFDA7 +:10D1B0002D4A2E4BD5F76AFE53EC192BD5F754FDAB +:10D1C0002B4B0022D5F762FE02460B46304639460D +:10D1D000D5F7D0FE41EC180BA00705D551EC180B84 +:10D1E00081F0004141EC180B14F007020BD00FF254 +:10D1F000880303EBC20251EC180B53681268D5F791 +:10D2000045FE41EC180B200705D551EC180B81F0B9 +:10D21000004141EC180B51EC180BBDEC048BD0BD58 +:10D2200057CD9E5E1426D13FAA4C58E87AB6FB3FF4 +:10D230000000F0BF000040BE845D57134B57B03F65 +:10D24000B2934C19ED5EE43FBEDE02B90240F83FF6 +:10D25000DE39028FC7C0743F8AAB1283000CC83F0F +:10D2600024D7E508B6D8F03F0F34580E5895FD3F47 +:10D270000000F03F0000000000000000000000007F +:10D2800066732D3852C1E03F182D4454FB21F93FFD +:10D2900066732D3852C1F03F182D4454FB21F93FDD +:10D2A00066732D3852C10040182D4454FB210940AB +:10D2B0003FD038C6A6F1044003B4DDE90023C3F330 +:10D2C0000A5140F2FF72914206D001B10CE01903FD +:10D2D00050EA113006D00BE0190350EA113014BFA8 +:10D2E0000220012002B070474FF0FF3002B07047BB +:10D2F0006FF0010002B0704710B5DFF8D84520622A +:10D300000C220021201DD4F7A9FF04F12400206184 +:10D3100004F13C00606104F15400A06104F16C0070 +:10D32000E06100202070FF206070A07010BD000040 +:10D330002DE9F0472DED068B86B00C464FF0000A24 +:10D34000DFF89055016869604168A9608068E8600D +:10D35000D04640460190049003900290052205F1CA +:10D360000C01286900F047FA052205F108016869F7 +:10D3700000F041FA0522291DA86900F03CFA0523B6 +:10D3800001AA0321286900F04BFAB0EE408A052378 +:10D3900004AA0321686900F043FAF0EE408A0523ED +:10D3A00003AA0321A86900F03BFAB0EE409A0522D7 +:10D3B0000321286900F070FAF0EE080AC0EE209A06 +:10D3C00095ED02AAD5ED01AAF5EE40AAF1EE10FA0C +:10D3D0000FD1B5EE40AAF1EE10FA0AD195ED030A8D +:10D3E000B5EE400AF1EE10FA03D100F000FA4FF06A +:10D3F0000108564695F8019095ED030A6AEEAA0ACF +:10D400004AEE0A0A40EE000A10EE900ADAF726FE0B +:10D4100041EC100BD5F7D2FE51EC100BDAF746FEBB +:10D420000090052200A9E86900F0E5F99DED000AE9 +:10D43000DFEDA30AB4EE600AF1EE10FA00F1858088 +:10D44000DFEDA00AB4EE600AF1EE10FA7DDA0523F2 +:10D4500002AA0321E86900F0E3F9F0EE0C0AB4EE49 +:10D46000600AF1EE10FA70D59FED970AB4EE408A8B +:10D47000F1EE10FA69D59FED950AF4EE409AF1EEBF +:10D4800010FA10D59FED920AF4EE409AF1EE10FAE0 +:10D4900009DB6878FF2858D0FF2068704FF0FF3014 +:10D4A00020700120C3E019EE900ADAF7D7FD21F0D1 +:10D4B00000413246DFF82034D5F7B4FC11D2B0EE8B +:10D4C000000AF4EE408AF1EE10FA17D4F4EE408A26 +:10D4D000F1EE10FA39DAB4EE409AF1EE10FA0EDB02 +:10D4E00033E0052301AA1946286900F099F9F7EEFF +:10D4F000000AB4EE600AF1EE10FA26D5B04695EDBA +:10D50000030ADDED000A80EE200A10EE100ADAF7B9 +:10D51000A5FD41EC100BFFF755FD53EC102B4FF020 +:10D520000040DFF8B813D5F79FFB41EC100B00F07B +:10D5300019FA51EC100BD5F7C1FE0746B8F1000FF0 +:10D5400050D1E8F7C9FD3D2803DB00F050F9304623 +:10D550006DE0A868DAF782FD41EC110BB0EE418A6C +:10D56000F0EE618A95ED010AB1EE400A10EE100A64 +:10D57000DAF774FD41EC100BB0EE481AF0EE681AC1 +:10D58000FFF798FD53EC102B4FF00040D449D5F72E +:10D590006BFB41EC100B00F0E5F951EC100BD5F7EB +:10D5A0008DFE060001D506F5B47606F12D005A2150 +:10D5B00090FBF1F8B8F1040F00D1D046384600F0E6 +:10D5C0003BF8002806D03A463146404600F039F88C +:10D5D000002802D100F00BF904E0A878404501D002 +:10D5E00085F80280A878484502D1B9F1FF0F1DD116 +:10D5F00095F8201011F0060F01D0012604E03A46FC +:10D60000314600F067F806463846E8F765FD3D28E4 +:10D610000CDA002E0AD0A8786978814206D06870AA +:10D6200020704FF0010AFF2800D02870504606B045 +:10D63000BDEC068BBDE8F0873C3079288041C00FF7 +:10D64000704718B4A34C237894F8204014F0060FC8 +:10D6500001D018BC3EE02FD4984208D05A1C541078 +:10D6600002EB9474A410A2EB840290420ED15A22D1 +:10D670004243283A002807D1B1F59D7F06DD02F527 +:10D68000B472914202DA15E0914213DB984208D05D +:10D69000DA1C531002EB93739B10A2EB83029042AF +:10D6A0000AD15A2242432832002801D12E2903DA16 +:10D6B0008A4201DA002000E0012012BC704700001D +:10D6C000DD0CFB40A7493C416766E63F3E1B30410D +:10D6D000D7B409412DE9F04391B004460D46914677 +:10D6E0007C4E96F8008000274846E8F7F5FC0028B5 +:10D6F00004D44846E8F7F0FC1E2822DB4846E8F749 +:10D70000EBFC1E2806DB4846E8F7E6FC282801DA91 +:10D71000012716E04846E8F7DFFC282806DB4846E4 +:10D72000E8F7DAFC322801DA02270AE04846E8F78F +:10D73000D3FC32280ADB4846E8F7CEFC3D2805DA60 +:10D740000327B8F1000F45D4002C01D5002042E09A +:10D75000444509D008F10100411000EB9171891096 +:10D76000A0EB8100844217D100A80FF2781140226B +:10D77000D5F76EF93801002C00A908D141588D4227 +:10D780000ADA00A940184068A84205DA2BE04018E0 +:10D7900050F82400854226DB444509D008F10300F7 +:10D7A000411000EB91718910A0EB8100844211D1EE +:10D7B00000A80FF270114022D5F74AF93801002C69 +:10D7C00000A90BD14158A94204DA00A94018C06849 +:10D7D000854208DB012011B0BDE8F083401850F805 +:10D7E0002400A842F6DAFF20B0700020F3E73948A1 +:10D7F000FF21817070470388934201D30023038087 +:10D8000003885B1C03809BB2934201D300220280F9 +:10D81000028800EB82000968416001207047000027 +:10D820002DE9F8432DED028B04460D4616461F46A2 +:10D830009FED278A4FF00008B4F9009000EE105ACF +:10D84000F8EEC08A3A4600F027F880EE280A86ED06 +:10D85000000A05E0A7F101090FFA89F908F10108AA +:10D860000FFA88F8A84511DA04EB890090ED010A57 +:10D87000D6ED000A30EE600A00EE008AB9F1010F21 +:10D88000E8DBA9F101090FFA89F9E7E788EE280A30 +:10D89000BDEC028BBDE8F18330B49FED0D0A00238F +:10D8A000B0F900400EE024B2250006D400EB850557 +:10D8B000D5ED010A30EE200A641E24B2002C00D5FA +:10D8C000541E5B1C1BB28B42EDDB30BC704700006A +:10D8D000000000005013012000001040DCA54C4067 +:10D8E000DCA54CC04A0100003C000000960000008E +:10D8F000F00000004F010000410000009B0000000C +:10D90000F50000005401000046000000A0000000E7 +:10D91000FA0000005E01000050000000AA000000B4 +:10D92000040100001E00000078000000D20000008A +:10D930002C0100001900000073000000CD00000061 +:10D9400027010000140000006E000000C800000065 +:10D95000220100000A00000064000000BE00000078 +:10D960001801000000B583B001218DED000B00A867 +:10D97000FDF7E4FF401E012811D9002100A8FDF7A2 +:10D98000DDFF60B10198DDE90023002847BF0020DA +:10D99000054900200549D5F779FACDE900019DED4B +:10D9A000000B03B000BD00000000F0BF0000F03F1E +:10D9B0002DE9F0412DED048B8CB006460F469046C4 +:10D9C00000A80FF2BC513022D5F742F8DFF86445C9 +:10D9D0000A20206207206062A0620520E062DFF872 +:10D9E0005805DFF85815CDE9000100A84FF0333293 +:10D9F000DFF84C35C0E90223DFF83C25DFF8443579 +:10DA0000C0E904234FF03332DFF83C35C0E9062388 +:10DA1000DFF83835C0E90823DFF83435C0E90A23D8 +:10DA2000DFF830550A2129653168142291FBF2F1A3 +:10DA3000E965D8F80010022901D1052123E03968F1 +:10DA4000102918D0B1F5807F06D0B1F5806F08D0CD +:10DA5000B1F5006F0AD012E04FF48071216300210C +:10DA600011E04FF48061216302210CE04FF400616A +:10DA70002163032107E010212163042103E04FF417 +:10DA800000712163012100EBC100D0E90023DFF820 +:10DA9000C804DFF8C814D5F7E7F841EC180B53ECCD +:10DAA000182B0020DFF8B814D5F7DEF841EC100B86 +:10DAB00085ED0A0B85ED080B53EC102BDFF8A40461 +:10DAC000DFF8A414D5F7D0F8C5E90C012022002115 +:10DAD0002046D4F7C3FB9FED319B206AD5F7BEF9F2 +:10DAE00053EC192BD5F7C0F853EC182BD5F7BCF82D +:10DAF000C4E90001606AD5F7B1F953EC192BD5F7E9 +:10DB0000B3F853EC182BD5F7AFF8C4E90201A06ABB +:10DB1000D5F7A4F953EC192BD5F7A6F853EC182B2D +:10DB2000D5F7A2F8C4E90401E06AD5F797F953ECF8 +:10DB3000192BD5F799F853EC182BD5F795F8C4E9BC +:10DB400006010020A86501206866A86604F134007B +:10DB500028660020287068650146C5E90E019FED22 +:10DB6000110B85ED100B85ED120B0CB0BDEC048B89 +:10DB7000BDE8F081DFF8DC030121416681669FED9D +:10DB8000090B80ED100B80ED120B00210170416537 +:10DB90000A460B46C0E90E23704700000000000053 +:10DBA0000000E03F2D431CEBE2361A3F2DE9F84F11 +:10DBB0002DED068B8AB005464FF000089FEDDB9BEC +:10DBC000B0EE498AF0EE698A04A81821D6F7D0FD94 +:10DBD000C1468DED010AF0EE601AF1EE611ACDED4D +:10DBE000021AB1EE410A8DED030ADA4C1E2201A998 +:10DBF000206EF5F790FD2868022802D102200090DF +:10DC000001E003200090206E616E00290CD00028F6 +:10DC100000F085810088216D8842C0F280814046F5 +:10DC2000606684ED0E9B7AE1A16E002939D01E2238 +:10DC3000216D09B2F5F798FD94ED149AF8EEC90A32 +:10DC400080EE200A10EE100ADAF708FAC4E90201A1 +:10DC50001E2219EE101A09B2206EF5F7A3FD94EDFD +:10DC6000149AF8EEC90A80EE200A10EE100ADAF7CC +:10DC7000F5F9C4E904011E2219EE101A09B2206E4A +:10DC8000F5F7AEFDD4ED140AF8EEE00A80EE200AB6 +:10DC900010EE100ADAF7E2F9C4E906014046A06680 +:10DCA00045E01E224146F5F74FFD05461E22216D37 +:10DCB00009B2206EF5F748FD064694ED140AB8EE59 +:10DCC000C09A95ED000AD6ED000A30EE600A80EEAB +:10DCD000090A10EE100ADAF7C1F9D4E90223D5F7E0 +:10DCE000D5F8C4E9020195ED010AD6ED010A30EE3E +:10DCF000600A80EE090A10EE100ADAF7AFF9D4E9EB +:10DD00000423D5F7C3F8C4E9040195ED020AD6ED62 +:10DD1000020A30EE600A80EE090A10EE100ADAF705 +:10DD20009DF9D4E90623D5F7B1F8C4E90601182214 +:10DD3000414604A8D4F792FA454604AE40E01E22BC +:10DD4000294609B2206EF5F7FFFC07463868DAF776 +:10DD500085F9D4E90223D4F7C7FE41EC100B53EC4C +:10DD6000102BD4F781FFDDE90423D5F78FF8CDE937 +:10DD700004017868DAF772F9D4E90423D4F7B4FE21 +:10DD800041EC100B53EC102BD4F76EFFD6E90223B5 +:10DD9000D5F77CF8C6E90201B868DAF75FF9D4E98B +:10DDA0000623D4F7A1FE41EC100B53EC102BD4F753 +:10DDB0005BFFD6E90423D5F769F8C6E904016D1CB9 +:10DDC000206D8542BBDBD5F749F841EC190BDDE945 +:10DDD000040153EC192BD5F7CDF8CDE90401D6E9B0 +:10DDE000020153EC192BD5F7C5F841EC1A0B86ED5F +:10DDF00002ABD6E9040153EC192BD5F7BBF841EC83 +:10DE0000190B86ED049BDDE9040153EC1A2BD5F7C1 +:10DE10003DF8564A564BD5F705F807D294ED100B4E +:10DE20008DED040B94ED120B86ED020B9DED040BB2 +:10DE300084ED100B96ED02AB84ED12ABD4E90E012C +:10DE40004FF066324B4BD4F70FFF82468B46DDE92D +:10DE5000042351EC1A0BD5F719F802460B4651EC86 +:10DE6000190BD5F787F8344A434BD4F7FDFE024629 +:10DE70000B4650465946D5F709F841EC100B84ED96 +:10DE80000E0B01223D4BE6F793FC06D89046207816 +:10DE9000012802D1606D401C60654D460FE006EB25 +:10DEA000C50090ED009B51EC180B53EC192BD4F7E7 +:10DEB000B9FF03D2B0EE498AF0EE698A6D1C009872 +:10DEC0008542ECDBD4E9080153EC182BE6F770FC33 +:10DED00002D9606D10280FDBE06DA16D884204DA75 +:10DEE0004846207060654FF001090020A06594ED60 +:10DEF0000A0B84ED080B12E0B8F1000F0FD1A06DF2 +:10DF0000E16D814209DA01212170494661654FF0D6 +:10DF1000020994ED0C0B84ED080B401CA0654846EB +:10DF20000AB0BDEC068BBDE8F28F00BF0000000018 +:10DF300000000000587400209A9999999999C93F56 +:10DF40003333D33F9999E93F3333F33F33330340BE +:10DF50003333E33FB87700201F85EB51B89E234051 +:10DF6000000014407B14AE47E17A843F2E431CEB43 +:10DF7000E2362A3F6666EE3F9999A93F0000344099 +:10DF80009A9999999999C93F333333333333E33F9E +:10DF90009A9999999999E93F333333333333F33F5E +:10DFA0003333333333330340333333333333E33FA8 +:10DFB0000FB400B587B0272200210846D9F752FEDA +:10DFC000022805D10FF2F430D4F7ECF902202AE050 +:10DFD000272201210020D9F745FE022805D10FF2A2 +:10DFE000E830D4F7DFF902201DE0BDF922000090EF +:10DFF00000A8BDF924104160BDF926108160BDF96B +:10E00000280003909DF82A0004909DF82B000590AD +:10E01000DFF894030121417000218170C17000A8D4 +:10E02000FEF7E4FA012007B05DF814FB10B58AB0E2 +:10E03000272200210120D9F715FE032805D10FF270 +:10E040009830D4F7AFF9032039E0272201210846A0 +:10E05000D9F708FE022805D10FF26C30D4F7A2F9E7 +:10E0600002202CE0D04C94F90300012823D1002099 +:10E07000A07000F04AFA00A82421D6F779FB01200D +:10E080008DF800002A2001900A208DF80800002059 +:10E09000ADF822008DF80900ADF80A008DF80C00EB +:10E0A00000A8D9F7B3FE002805D10FF23C30D4F711 +:10E0B00079F9002003E00020A070E07001200AB090 +:10E0C00010BD30B59DB012A8D9F72BFE0025B64C77 +:10E0D00094F90100012803D0042801D0052806D1B5 +:10E0E00012A890EC030AFEF71DFC05460AE0022880 +:10E0F00008D115A8D0EC031A12A890EC030AFEF779 +:10E10000BFFA0546002D35D094F90100854230D084 +:10E110002570012000F028F9012D02D10120A07006 +:10E1200027E0022D25D10020A07094F903000128DA +:10E130001FD100F0EAF900A82421D6F719FB01202D +:10E140008DF800002A2001900A208DF80800002098 +:10E15000ADF822008DF80900ADF80A008DF80C002A +:10E1600000A8D9F753FE002800F0C2800020E0701C +:10E17000A060657094F9030094F9021001292DD173 +:10E1800000282BD1606890F89006002801D000206C +:10E19000B9E000A82421D6F7EBFA00208DF80000A2 +:10E1A0002A2001900A208DF808000020ADF82200F6 +:10E1B0008DF80900ADF80A008DF80C0000A8D9F719 +:10E1C00025FE002805D10FF23820D4F7EBF8002007 +:10E1D00099E00120E0700020A06093E0012840F069 +:10E1E0009180A068401CA06005283ADA15A890EC40 +:10E1F000030AFEF7F5FD01282BD104206070207082 +:10E20000012000F0B1F80020A07094F9030001286B +:10E2100027D100F07AF900A82421D6F7A9FA012025 +:10E220008DF800002A2001900A208DF808000020B7 +:10E23000ADF822008DF80900ADF80A008DF80C0049 +:10E2400000A8D9F7E3FD002852D00020E070A060BC +:10E2500007E0022805D1052060702070012000F041 +:10E2600083F800F04EF9012825D103202070012009 +:10E2700000F07AF80020A07000F047F900A82421EF +:10E28000D6F776FA01208DF800002A2001900A20A6 +:10E290008DF808000020ADF822008DF80900ADF8D7 +:10E2A0000A008DF80C0000A8D9F7B0FD00281FD097 +:10E2B0000020E070A060A068FB2823DB09A82421CF +:10E2C000D6F756FA01208DF824002A200A900A2059 +:10E2D0008DF82C000020ADF846008DF82D00ADF82B +:10E2E0002E008DF8300009A8D9F790FD002805D13F +:10E2F0000FF2F400D4F756F8002004E00020E0709C +:10E30000A070A06001201DB030BD80B5D9F7A8FC79 +:10E310002549486000220A702449C0F8281600F2F6 +:10E32000286023494160234981600FF21101C160D7 +:10E330000FF23D010161012002BD00001A48406852 +:10E3400090F81906002801D10020704708E080B538 +:10E35000154800210170084600F006F8012002BDB2 +:10E36000154890F900007047134908707047000085 +:10E3700018B440F221120B7812FB030301241C7025 +:10E380000B7812FB03035C700B7812FB030327244A +:10E390009C700B7812FB0300034A1278C270087855 +:10E3A000401C087011BCD2E7602A0120B1DF0208CE +:10E3B0002DE00208C3E00208FB2B0120535320414B +:10E3C0004343206661696C005353204759524F20E4 +:10E3D0006661696C000000005353204143433220C2 +:10E3E0006661696C00000000444F55424C45544141 +:10E3F0005020436C6F7365206661696C00000000FB +:10E40000444F55424C45544150204F70656E206634 +:10E4100061696C000FB480B52A2200210846D9F743 +:10E4200021FC022805D10FF23810D3F7BBFF0220E0 +:10E4300002E000F0A3F8012002BC5DF814FB80B5F7 +:10E440002A2200210120D9F70DFC032805D10FF263 +:10E450001C10D3F7A7FF032002BD012002BD10B599 +:10E460008CB000A8D9F75DFC00A890EC030A00F07E +:10E47000ABF80446012C0ED100F080F8334804704C +:10E48000416891F89016002901D0012141700120C6 +:10E4900000F034F803E0022C01D100F06FF8012005 +:10E4A0000CB010BD80B5D9F7DBFB2849486028497E +:10E4B000C0F8A01600F2A06026494160264981609C +:10E4C0000FF20D01C1600FF24D010161012002BD8B +:10E4D0001E48406890F89106002801D1002070473E +:10E4E00008E080B5194800210170084600F006F8E0 +:10E4F000012002BD194890F90000704717490870C3 +:10E500007047124890F9010070471048002141708F +:10E510007047000018B440F221120B7812FB03037D +:10E5200001241C700B7812FB03035C700B7812FB48 +:10E5300003032A249C700B7812FB0300034A127811 +:10E54000C2700878401C087011BCCAE7102B01206B +:10E5500015E402083FE402085FE40208E62B01200C +:10E56000445420414343206661696C004454204177 +:10E57000434332206661696C00000000DFF8140438 +:10E580000021016041608160C16001614161816180 +:10E59000C161016241628162C1620846024610E0C7 +:10E5A000DFF8F41341F8202001EB80018A620A654C +:10E5B000DFF8E81341F8202001EB80018A620A6548 +:10E5C000401C0A28ECDB70472DE9F8432DED028B47 +:10E5D0004FF00009DFF8BC4320680A2806DB0A3840 +:10E5E00020606068002801D1012060602568DFF8A4 +:10E5F000A86306EB850080ED000A06EB8507F0EEC8 +:10E60000601AC7ED0A1A87ED141A606828430DD105 +:10E61000691C2160DFF884034A4640F8212000EBA2 +:10E6200081001146816201650846A6E1691E00D598 +:10E630000A31DFF8680306EB850292ED000A06EB6B +:10E640008102D2ED000A30EE600A00EB850282ED15 +:10E65000000A00EB850806EB810197ED0A0AD1ED6F +:10E660000A0A30EE600A88ED0A0A97ED140AD1ED25 +:10E67000140A30EE600A88ED140AA168002952D10C +:10E6800050F82500D9F7EAFC21F000414FF0333271 +:10E69000DFF80C33D4F7C6FB3AD2D8F82800D9F704 +:10E6A000DDFC21F000414FF03332BD4BD4F7BAFB13 +:10E6B0002ED2D8F85000D9F7D1FC21F000414A46BB +:10E6C000B84BD4F7AFFB23D206EB850090ED000AE0 +:10E6D000DFEDAC0AB4EE600AF1EE10FA18DBB86AAE +:10E6E000D9F7BCFC21F000414A464FF08043D4F7F3 +:10E6F00099FB0DD2386DD9F7B1FC21F000414A46A3 +:10E70000A94BD4F78FFB03D2E068401CE06001E026 +:10E710004846E060E0680428C0F2FA800120A0606A +:10E7200048462062F4E0012940F0A380216A0129D3 +:10E7300001DB491C21622169002924D150F8250000 +:10E7400000EE100ADFED900AB4EE600AF1EE10FA66 +:10E7500009DB4FF0FF302061A069401CA061206AF6 +:10E76000401C206236E0DFED890AB4EE600AF1EE6B +:10E7700010FA2FD501202061A069401CA061206AF9 +:10E78000401C206226E0012911D100EB850090EDAC +:10E79000000ADFED7D0AB4EE600AF1EE10FA19DB33 +:10E7A0004FF0FF302061A069401CA06112E011F120 +:10E7B000010F0FD100EB850090ED000ADFED730A29 +:10E7C000B4EE600AF1EE10FA04D501202061A069D0 +:10E7D000401CA0616069002827D198ED140AF7EE6B +:10E7E000000AB4EE600AF1EE10FA0CDB4FF0FF30D5 +:10E7F0006061E069401CE061206A002840F0888088 +:10E800000120206284E0DFED620AB4EE600AF1EEDE +:10E8100010FA7DD501206061E069401CE061206A4A +:10E82000002875D10120206272E001280FD198EDF7 +:10E83000140AF7EE000AB4EE600AF1EE10FA67DB94 +:10E840004FF0FF306061E069401CE06160E010F172 +:10E85000010F5DD198ED140ADFED4D0AB4EE600AA8 +:10E86000F1EE10FA54D501206061E069401CE061CE +:10E870004EE002294CD1216A481C206294ED090A1D +:10E8800006EB8501D1ED000A30EE200A84ED090A7D +:10E89000D4ED0A0A97ED0A1A70EE810AC4ED0A0A4D +:10E8A00094ED0B1AD7ED141A31EE211A84ED0B1AE0 +:10E8B0000A282DD1F2EE041A80EE210AC0EEA10A38 +:10E8C00081EE218AB2EE081AB4EE410AF1EE10FA96 +:10E8D0001ED59FED2C1AB4EE410AF1EE10FA17DBAB +:10E8E00010EE900AD9F7BAFB21F000414A462F4BAF +:10E8F000D4F798FA0CD218EE100AD9F7AFFB21F032 +:10E9000000414A462A4BD4F78DFA01D24FF0010953 +:10E91000216AB42923DAA069042802DAE269042A08 +:10E920001DDB03281BDB1F290ADB00202062A061FE +:10E93000E0610220A06000206062A062E06218E056 +:10E940000FF27000D3F72EFDA069042801DB801EB2 +:10E95000A061E06904280CDB801EE06109E0B429B5 +:10E9600007DB0020A060E06020616061A061E061E1 +:10E9700020622068401C20604846BDEC028BBDE848 +:10E98000F28300000100A0409A99193F999919BF9C +:10E99000FEFF7FBF68250120DC16012054170120EF +:10E9A0003333E33F0000F03F000014400000084014 +:10E9B00000001840445450206661696C20256400B2 +:10E9C000CF490022CA630A6401F148024A6201F198 +:10E9D000C4028A6201F5A072CA6201F5DE720A639E +:10E9E00001F50E724A6301F52D728A630B2802DA73 +:10E9F0001E2048647047152802DA192048647047C1 +:10EA0000432802DA142048647047C92802DA0F202C +:10EA1000486470470A20486470470000F8B52DED3F +:10EA2000068B84B004460026B54DE86B00286CD1F7 +:10EA300085ED000AB0EE603A85ED013A85ED021AE7 +:10EA4000B0EE610A85ED030AB0EE420A85ED050AD3 +:10EA5000B0EE620A85ED040A304602900190009003 +:10EA60001E222946E86A00F0DAF81E22291DA86A4B +:10EA700000F0D5F81E2205F10801686A00F0CFF811 +:10EA80001E2205F10C01A86B00F0C9F81E2205F149 +:10EA90001001686B00F0C3F81E2205F11401286B09 +:10EAA00000F0BDF8696C286C81422ADA1E2300AAA6 +:10EAB00009B2E86A00F0C8F8B0EE408A1E2301AA45 +:10EAC000696C09B2A86A00F0BFF8F0EE408A1E2314 +:10EAD00002AA696C09B2686A00F0B6F8DFED860A2E +:10EAE000B4EE608AF1EE10FA0BD5F4EE608AF1EE26 +:10EAF00010FA06D5B4EE600AF1EE10FA01D5012045 +:10EB0000E863286C401C286484E0AE6B6F6C1E22A6 +:10EB1000394609B2304600F0D3F8F0EE408A1E22A2 +:10EB2000394609B2304600F0F1F8B0EE409A1E22A4 +:10EB3000394609B2304600F00EF9B81E00EE900AD0 +:10EB4000B8EEE08A78EEC90A30EEC00AC0EE088A54 +:10EB5000C5ED068A6E6B1E22394609B2304600F0BA +:10EB6000AFF8B0EE409A1E22394609B2304600F0A6 +:10EB7000CDF8F0EE409A1E22394609B2304600F038 +:10EB8000EAF879EE690A30EEC00A80EE089A85ED5F +:10EB9000079A2E6B1E22394609B2304600F090F8D3 +:10EBA000F0EE409A1E22394609B2304600F0AEF827 +:10EBB000B0EE40AA1E22394609B2304600F0CBF82A +:10EBC00079EECA0A30EEC00A80EE088A85ED088A1E +:10EBD00018EE900AD9F742FA4A4A4B4BD4F7CAF9D1 +:10EBE000D4F76CFB208019EE100AD9F737FA454AA2 +:10EBF000454BD4F7BFF9D4F761FB608018EE100ADB +:10EC0000D9F72CFA3F4A404BD4F7B4F9D4F756FB66 +:10EC1000A0800126304604B0BDEC068BF2BD03880F +:10EC2000934201D30023038003885B1C03809BB2C3 +:10EC3000934201D300220280028800EB820009681F +:10EC400041600120704700002DE9F8432DED028B53 +:10EC500004460D4616461F469FED288A4FF00008D1 +:10EC6000B4F9009000EE105AF8EEC08A3A4600F06F +:10EC700027F880EE280A86ED000A05E0A7F10109D1 +:10EC80000FFA89F908F101080FFA88F8A84511DA96 +:10EC900004EB890090ED010AD6ED000A30EE600A1F +:10ECA00000EE008AB9F1010FE8DBA9F101090FFAC2 +:10ECB00089F9E7E788EE280ABDEC028BBDE8F1830D +:10ECC00030B49FED0E0A0023B0F900400EE024B2EC +:10ECD000250006D400EB8505D5ED010A30EE200AAB +:10ECE000641E24B2002C00D5541E5B1C1BB28B4248 +:10ECF000EDDB30BC704700006F12033B00000000EA +:10ED0000C4EB002089AD84FA0A74313F2DE9F0414B +:10ED100004460D46164694ED010A0027B4F900801A +:10ED200014E00FFA88F84046002807D404EB80006E +:10ED3000D0ED010A00F03CF8A8F101080FFA88F8BC +:10ED4000B8F1000F01D5A6F101087F1C3FB2AF4218 +:10ED5000E7DBBDE8F0812DE9F04104460D4616469B +:10ED600094ED010A0027B4F9008014E00FFA88F846 +:10ED70004046002807D404EB8000D0ED010A00F0E3 +:10ED80000FF8A8F101080FFA88F8B8F1000F01D5C3 +:10ED9000A6F101087F1C3FB2AF42E7DBBDE8F0817E +:10EDA000B4EE600AF1EE10FA01D4B0EE600A7047DA +:10EDB000F4EE400AF1EE10FA01D4B0EE600A7047AA +:10EDC0000020024609E0D04941F8202001EB8001F3 +:10EDD000C1F8F020C1F8E021401C3C28F3DBCB480F +:10EDE0001146016041608160704700002DE9F84FD5 +:10EDF0002DED0A8B86B000208DF80800C34C2068EA +:10EE00003C2806DB3C3820606068002801D10120E6 +:10EE100060602568DFF8F09209EB850080ED000A5C +:10EE200009EB8506F0EE601AC6ED3C1A86ED781AFD +:10EE300059F82500D9F712F921F000410022B64B0C +:10EE4000D3F7F0FF0AD359F82500D9F707F921F0D5 +:10EE500000410122AE4BE5F7ABFC02D8002049F897 +:10EE60002500D6F8F000D9F7F9F821F0004100228A +:10EE7000A84BD3F7D7FF0AD3D6F8F000D9F7EEF8AE +:10EE800021F000410122A54BE5F792FC02D80020B9 +:10EE9000C6F8F000D6F8E001D9F7E0F821F000411B +:10EEA00000229D4BD3F7BEFF0AD3D6F8E001D9F775 +:10EEB000D5F821F000410122984BE5F779FC02D802 +:10EEC0000020C6F8E00159F82500D9F7C7F821F06D +:10EED000004100221346D3F7F7FD19D1D6F8F00010 +:10EEE000D9F7BCF821F0004100221346D3F7ECFD1E +:10EEF0000ED1D6F8E001D9F7B1F821F00041002297 +:10EF00001346D3F7E1FD03D1A068401CA06001E0E7 +:10EF10001046A060A0680528C0F2ED809FED808AB1 +:10EF20009FED7F9ADFED7E8A16461046049003908F +:10EF3000DFED7B9A9FED7ABA00E0761C372E80F2E7 +:10EF400089806768002F01D1B24602E0701900F194 +:10EF5000010ABAF13C0F01DBAAF13C0A59F82A0078 +:10EF600000EE100AF4EE409AF1EE10FA02D5F0EE3F +:10EF7000409A049609EB8A0898ED780AB4EE40BAF4 +:10EF8000F1EE10FA02D5B0EE40BA03969FED65ABF4 +:10EF90009FED66CB18EE100AD9F760F8CDE90001B5 +:10EFA00059F82A00D9F75AF853EC1C2BD3F75CFE1A +:10EFB00053EC1A2BD3F758FE00225E4BD3F7DAFF3F +:10EFC000DDE90023D3F762FFD9F770F808EE100AE5 +:10EFD00019EE100AD9F742F882468B46D8F8F000AD +:10EFE000D9F73CF853EC1C2BD3F73EFE53EC1A2B0D +:10EFF000D3F73AFE00224F4BD3F7BCFF52465B4695 +:10F00000D3F744FFD9F752F809EE100A18EE900A28 +:10F01000D9F724F882468B46D8F8E001D9F71EF8D4 +:10F0200053EC1C2BD3F720FE53EC1A2BD3F71CFE0A +:10F030000022404BD3F79EFF52465B46D3F726FF94 +:10F04000D9F734F808EE900A002F7FF476AFAE427D +:10F050007FF473AF18EE100AD9F700F841EC1A0BE1 +:10F0600021F000410122374BE5F7A2FB43D851ECD8 +:10F070001A0B21F0004100222F4BD3F7D3FE3AD2D6 +:10F0800019EE100AD8F7EAFF41EC190B21F0004104 +:10F0900001222A4BE5F78CFB2DD851EC190B21F0FE +:10F0A00000410022264BD3F7BDFE24D218EE900A71 +:10F0B000D8F7D4FF41EC190B21F000410122214B7C +:10F0C000E5F776FB17D851EC190B21F0004100222F +:10F0D0001D4BD3F7A7FE0ED203980499401AE6F70A +:10F0E000FBFF142807DAB5EE408AF1EE10FA02DDD4 +:10F0F00001208DF80800681C20609DF8080006B00B +:10F10000BDEC0A8BBDE8F28FCCF10020002A012073 +:10F11000000022400000E03F0000F03F00002440DB +:10F12000000000000000000000003440E6C1631A47 +:10F13000DCA54C4000408F4000005E4000003440A1 +:10F1400000805B4000003E400040604070B52DED07 +:10F15000028B82B00C46154608EE103A9C4E0021F8 +:10F16000F1604FF47A7148433C2190FBF1F0D3F702 +:10F1700075FE41EC100BFEF7F5FB51EC100BD4F7CC +:10F180009DF830617461B56106F12C00F06106F103 +:10F190003C00306206F14C007062B8EEC80ADFED48 +:10F1A0008A0A80EE200A86ED0A0A10EE100AD8F7C5 +:10F1B00055FFCDE90001B369726931690FF218207A +:10F1C000D3F7F0F802B0BDEC028B70BD38B52DED71 +:10F1D000028B84B000247E4D01682960416869601B +:10F1E0008068A86020460290019000900322294682 +:10F1F000E86900F07DF80322291D286A00F078F8FC +:10F20000032205F10801686A00F072F895ED020A20 +:10F21000D5ED010A95ED001A21EE011A00EEA01AB3 +:10F2200000EE001A11EE100AD8F718FF41EC100B8F +:10F23000D3F7C4FF51EC100BD8F738FF00EE100ADB +:10F24000D5ED020A80EE800A10EE100AD8F706FF0C +:10F2500041EC100BFDF7B6FE53EC102B4FF00040C5 +:10F260005C49D3F701FD41EC100BFEF77BFB51EC41 +:10F27000100BD4F723F8696988422DDBA969814214 +:10F280002ADB032300AA1946E86900F045F8B0EE2E +:10F29000408A032301AA1946286A00F03DF8F0EEDF +:10F2A000408A032302AA1946686A00F035F8D5EDB2 +:10F2B0000A0AB4EE608AF1EE10FA0DD5F4EE608A17 +:10F2C000F1EE10FA08D5B4EE600AF1EE10FA03D5AB +:10F2D000E868401CE86001E02046E860E8682969C9 +:10F2E000884200DB0124204604B0BDEC028B32BD15 +:10F2F0000388934201D30023038003885B1C0380AF +:10F300009BB2934201D300220280028800EB82006C +:10F3100009684160012070472DE9F8432DED028B0B +:10F3200004460D4616461F469FED288A4FF00008FA +:10F33000B4F9009000EE105AF8EEC08A3A4600F098 +:10F3400027F880EE280A86ED000A05E0A7F10109FA +:10F350000FFA89F908F101080FFA88F8A84511DABF +:10F3600004EB890090ED010AD6ED000A30EE600A48 +:10F3700000EE008AB9F1010FE8DBA9F101090FFAEB +:10F3800089F9E7E788EE280ABDEC028BBDE8F18336 +:10F3900030B49FED0E0A0023B0F900400EE024B215 +:10F3A000250006D400EB8505D5ED010A30EE200AD4 +:10F3B000641E24B2002C00D5541E5B1C1BB28B4271 +:10F3C000EDDB30BC7047000000401C460000000030 +:10F3D000C81D0120DCA54C4053504120696E697462 +:10F3E0003A2025642C2025642C2025642C202566B9 +:10F3F000000000000FB480B50FF23420D2F7D2FF26 +:10F400008348002181700121C17001710021417187 +:10F4100081710170D2F745FF007C000601D4012004 +:10F4200000E0012002BC5DF814FB80B50FF208205B +:10F43000D2F7B8FFD2F735FF007C000616D5744826 +:10F44000002181700121C170017100214171817120 +:10F45000417801290AD1002141700E220A210120A0 +:10F46000D8F700FC032801D1032002BD012002BD12 +:10F4700038B568488169497AC069407A4518D2F739 +:10F4800010FF007C000631D5614CA078002802D125 +:10F490000120A07032BD6078EDB2002D06D00128A9 +:10F4A00024D10120E070002060701FE0002811D1FD +:10F4B000E078012806D10E220A210120D8F7D2FBDC +:10F4C0000020E0700E220A210020D8F7CBFB01209B +:10F4D000607032BD94F90000002802D0022803D0E9 +:10F4E00004E000F005F801E000F034F8012032BD3E +:10F4F00038B5474CE06890F968502079012809D167 +:10F50000512D07DA00202071012000F07EF8002044 +:10F5100000F06EF8B4F90820954217DBA079401C82 +:10F52000A07140B2022813DB022020700020A071DD +:10F5300029460FF20C10D2F735FF782020810120E8 +:10F5400000F063F8012000F053F801E00020A07102 +:10F55000012032BD38B52E4CE06890F96850502D2E +:10F5600016DA6079401C607140B2022812DB00207C +:10F570002070012000F049F8002000F039F8002048 +:10F580006071502229460FF2C400D2F70BFF01E050 +:10F5900000206071012032BD10B50FF2BC00D2F71F +:10F5A00001FF1B4CD8F75CFB2061DAF755FFE060E8 +:10F5B0000020207020691849C0F8401200F5107032 +:10F5C00016494160164981600FF20D01C16015496D +:10F5D0000161012010BD0000014600200C4A1269A3 +:10F5E00092F83122002A02D0002900D109E07047A8 +:10F5F0000D49012802D101200870704700200870D1 +:10F6000070470A4890F90000704708490870704731 +:10F61000047A002008400020F5F302082BF40208C9 +:10F6200071F40208877F0008E42B0120E32B0120FE +:10F63000537461727400000053746F700000000016 +:10F64000436C6F7365202564202564004F70656EE0 +:10F650002025642025640000496E697400000000C4 +:10F660009248002141608160C16001614161816116 +:10F67000017001214170704770B52DED068BF0EEE1 +:10F68000608AB0EE419A0024884D2878012800F065 +:10F6900004816878002852D12E69002E00F0A280E3 +:10F6A000D5ED010A30EE600A10EE100AD8F7D6FC4C +:10F6B00021F00041D8F7FAFC09EE900AB0EE680A92 +:10F6C000D5ED020A30EE600A10EE100AD8F7C6FC3B +:10F6D00021F00041D8F7EAFC0AEE100AB0EE490A20 +:10F6E000D5ED030A30EE600A10EE100AD8F7B6FC2A +:10F6F00021F00041D8F7DAFC00EE100ADFED690ACC +:10F70000F4EE609AF1EE10FA16D5B4EE60AAF1EEBE +:10F7100010FA11D5B4EE600AF1EE10FA0CD5701C97 +:10F7200028610728C0F2B98020466860A860E860B8 +:10F73000286101206870B0E020462861ADE068696A +:10F74000002846D1286900284CD0D5ED010A30EEBA +:10F75000600A10EE100AD8F781FC21F00041D8F7BA +:10F76000A5FC09EE900AB0EE680AD5ED020A30EE6B +:10F77000600A10EE100AD8F771FC21F00041D8F7AA +:10F7800095FC0AEE100AB0EE490AD5ED030A30EEF8 +:10F79000600A10EE100AD8F761FC21F00041D8F79A +:10F7A00085FC00EE100ADFED400AF4EE609AF1EEFF +:10F7B00010FA09DAB4EE60AAF1EE10FA04DAB4EE47 +:10F7C000600AF1EE10FA68DB0120686120462861CA +:10F7D00063E0012861D12E69322E02DA701C2861A3 +:10F7E0005BE00DD185ED010AB0EE680A85ED020AF5 +:10F7F000B0EE490A85ED030A2869401C28614CE0F7 +:10F80000AE69322E44DAD5ED010A30EE600A10EE10 +:10F81000100AD8F723FC21F00041D8F747FC09EE85 +:10F82000900AB0EE680AD5ED020A30EE600A10EEDA +:10F83000100AD8F713FC21F00041D8F737FC0AEE84 +:10F84000100AB0EE490AD5ED030A30EE600A10EE58 +:10F85000100AD8F703FC21F00041D8F727FC00EE8E +:10F86000100A701CA861DFED100AF4EE609AF1EE48 +:10F8700010FA09DAB4EE60AAF1EE10FA04DAB4EE86 +:10F88000600AF1EE10FA08DB01202870044604E05B +:10F89000204628616861A86168702046BDEC068B2F +:10F8A00070BD00006666A63F6766A63F5C27012024 +:10F8B000834800210160416081607047F8B52DEDFB +:10F8C0000C8BB0EE408AF0EE608AB0EE419A0027D1 +:10F8D000B0EE680A10EE100AD8F7C0FB41EC1A0B24 +:10F8E000B0EE480A10EE100AD8F7B8FB41EC1C0B3A +:10F8F000734E21F000413A46724BD3F793FA18D277 +:10F9000051EC1A0B21F00041D3F78CFA11D2B0EE72 +:10F91000490A10EE100AD8F7A1FB21F000413A463F +:10F92000684BD3F77FFA04D2104630607060B06045 +:10F93000C3E09FED65BB9FED66DB3068D8F78EFBBB +:10F9400004460D4653EC1C2B51EC1D0BD3F78CF9E0 +:10F9500053EC1B2BD3F788F93A465F4BD3F70AFBDE +:10F9600022462B46D3F792FAD8F7A0FB09EE900A6D +:10F97000C6ED009A7068D8F771FB04460D4653EC4B +:10F980001A2B51EC1D0BD3F76FF953EC1B2BD3F74C +:10F990006BF93A46504BD3F7EDFA22462B46D3F794 +:10F9A00075FAD8F783FB0AEE100A86ED01AAB06853 +:10F9B000D8F754FB04460D46B0EE490A10EE100A83 +:10F9C000D8F74CFB53EC1D2BD3F74EF953EC1B2B04 +:10F9D000D3F74AF93A46404BD3F7CCFA22462B46A6 +:10F9E000D3F754FAD8F762FB09EE100A86ED029AB3 +:10F9F00019EE900AD8F732FB21F0004141EC1B0BC5 +:10FA00001AEE100AD8F72AFB41EC180B21F000413E +:10FA100041EC1C0B19EE100AD8F720FB41EC1A0B35 +:10FA200053EC1B2B51EC1C0BD3F730FA53EC1A2B75 +:10FA300023F00043D3F72AFAD8F738FB00EE100A78 +:10FA4000DFED260AB4EE600AF1EE10FA2EDB51EC7F +:10FA50001A0B21F000410122214BE4F7A9FE25D821 +:10FA6000BBEE090AF4EE409AF1EE10FA0BD551EC18 +:10FA7000180B21F0004153EC1A2B23F00043D3F76D +:10FA8000D1F900D201279FED170AF4EE409AF1EE6A +:10FA900010FA0BDB51EC180B21F0004153EC1A2B40 +:10FAA00023F00043D3F7BEF900D20227002F03D082 +:10FAB000002030607060B0603846BDEC0C8BF2BD49 +:10FAC000782A01200000E03F0000000000004E40C6 +:10FAD000E6C1631ADCA54C4000408F40010048425B +:10FAE000000044400100C84110B582B000208DF8EC +:10FAF0000000894C04F1100314220D2104F5067056 +:10FB000000F00CF904F58A7314220D2104F50D7030 +:10FB100000F004F9E8F75EFB002849D0D2F7C1FBFA +:10FB2000A060DFF769FFE0F7F7FBA0680178002924 +:10FB300003D0217841F0010121700A21D2F71BFC8A +:10FB4000A068D2F7F2FBA068C178002903D0217821 +:10FB500041F0020121704179002903D0217841F060 +:10FB6000040121708179002903D0217841F0080136 +:10FB7000217021780F2902D15521817500E081750E +:10FB8000002201210846D2F7FFFDE1F727FA3221D2 +:10FB9000A068D2F772FDA068D2F738FDD2F7E8FD71 +:10FBA000D2F7ECFDDAF758FC0021C0F8801016BD42 +:10FBB000002016BD80B5FFF797FF5749486001BD8B +:10FBC00080B5072000F0F6F8FBE77FB5D4F749FCD5 +:10FBD000002801D0D7F798F93E2000F0F5F8064646 +:10FBE000D6F76EFB4C4C04F51475B00710D5606861 +:10FBF000D0F88000D2F73FFED6F7B8FA04F10C0136 +:10FC00002846D6F7C1FC04F10C012846D6F721FDA1 +:10FC1000F0060AD50020D2F7B9FD1020E1F72FF841 +:10FC200004F10C012846D6F714FDB0060CD504F1FA +:10FC30000C012846D6F7B8FC0420E1F720F804F1BF +:10FC40000C012846D6F705FD700703D56068C06F24 +:10FC5000E0F745FA04F10C012846D7F71FF9300701 +:10FC60001FD4B9E7BDF80100001DDAF7CDFBCDF8D0 +:10FC7000090002220DF10301D4F73CFE02220DF12E +:10FC80000101DDF80900801CD4F734FE04F10C02F8 +:10FC9000294600A8D7F78AF900A904F50D70E0F706 +:10FCA00089FA00A904F5067000F0D0F8002893D175 +:10FCB0009DF8030010F00300D4D00128F1D104F125 +:10FCC0000C02294600A8D7F793FABDF801000028D6 +:10FCD000E7D0DDF809009DF80310490718D5042185 +:10FCE000ADF803100121ADF8011002220DF103015E +:10FCF000D4F700FE02220DF10101DDF80900801C9D +:10FD0000D4F7F8FD00A904F50D70E0F753FAC8E741 +:10FD1000DAF792FBC5E7000010A200202DE9F041C0 +:10FD200004000D0016001F00D4F7CDFD1F48D0F8C9 +:10FD3000008006E0A04502D1AC20D4F757FDD8F8EA +:10FD40000480B8F1000FF5D119484078F02108423D +:10FD500002D09920D4F74AFD15484078002801D1F7 +:10FD6000D4F7ABFDD5F7A0FB1C2200212000D2F771 +:10FD700075FAA7602661257666206076D4F7A3FD24 +:10FD80000A48006860600948046009484078F0212A +:10FD9000084202D09920D4F729FD05484078002870 +:10FDA00001D1D4F78AFDBDE8F0810000BC2B012011 +:10FDB000A079002010B50446D2F773FA072C01D1C0 +:10FDC000D2F759FC012010BD10B504001D48007881 +:10FDD000002802D0A120D4F709FDD5F78DFB1A48E1 +:10FDE0000078401C18490870D4F76DFD16488068EB +:10FDF0004069204209D114488068846112488068B3 +:10FE0000082101741048D4F748FD0F488068446900 +:10FE10000D488068002141610B480078401E0A4966 +:10FE2000087009484078F021084202D09920D4F7A0 +:10FE3000DDFC05484078002801D1D4F73EFD2000C4 +:10FE400010BD00BF052C0120A079002038B50400AA +:10FE50000D00607E662802D08220D4F7C7FCD5F75B +:10FE600023FBD4F730FDE06800280FD10E4840781E +:10FE7000F021084202D09920D4F7B8FC0A48407813 +:10FE8000002801D1D4F719FD01200BE006480078C5 +:10FE9000401C0549087029002000E8F7F9F9D5F75A +:10FEA0006CFB002032BD00BFA079002038B50C46A5 +:10FEB000754D0C2200212846D2F7D0F918220021D6 +:10FEC00005F12400D2F7CAF91422002105F10C0033 +:10FED000D2F7C4F90020E8632C840FF2C410D2F7E3 +:10FEE00061FA012032BD000070B5674C84ED000A54 +:10FEF000F0EE601AC4ED011A84ED021A0C25634E6F +:10FF0000E06B05FB006080EC030A1822002104F17D +:10FF10002400D2F7A3F900201AE005FB00F18A19AA +:10FF2000D2ED000A30EE200A84ED090A891994ED19 +:10FF30000A0AD1ED010A30EE200A84ED0A0A94ED96 +:10FF40000B0AD1ED020A30EE200A84ED0B0A401CA8 +:10FF500094ED090A6428E0DBDFED4A0A80EE200A0E +:10FF600084ED090AD4ED0A0A9FED461AC0EE810A13 +:10FF7000C4ED0A0A94ED0B1ADFED421A81EE211A44 +:10FF800084ED0B1A002020E005FB00F18A19D2ED68 +:10FF9000001A71EEC01A01EEA12A84ED0C2A89190B +:10FFA000D1ED011A71EEE01A94ED0D2A01EEA12AAD +:10FFB00084ED0D2AD1ED021A71EEC11A94ED0E2ACC +:10FFC00001EEA12A84ED0E2A401C94ED0C2A64282F +:10FFD000DADB9FED2C0A82EE000A84ED0C0AD4EDE8 +:10FFE0000D0A9FED281AC0EE810AC4ED0D0A94EDAA +:10FFF0000E1ADFED241A81EE211A84ED0E1AF7EEA7 +:020000023000CC +:10000000001AB4EE610AF1EE10FA2FD5B7EE000A2D +:10001000F4EE400AF1EE10FA28D5B4EE401AF1EEF3 +:1000200010FA23D56069401C606100EB4011480064 +:100030004EF65B2188421CD300206061208B411C5E +:10004000218389B20FF26400D2F7ACF9208B218CA6 +:1000500088420ED3E06900280BD10FF26400D2F77A +:10006000A1F90120E0610020208302E0002060610E +:100070002083E06B401CE063652801DB0020E06327 +:10008000E06970BD0000C842A822012078D8002095 +:1000900080B50FF23C00D2F785F9012002BD0000C7 +:1000A00023232320414D5F494E495400232323201D +:1000B000414D202564202A20314D696E000000004A +:1000C00023232320414D5F41425F44540000000040 +:1000D00023232320414D5F46494E000080B50FF297 +:1000E0009010D2F75FF95D4800214180017001BD99 +:1000F0000FB438B59DF81240BDF813502A4621467A +:100100000FF27810D2F74EF91E2200210846D7F7D9 +:10011000A9FD022805D10FF28410D2F743F902207D +:1001200010E04E48406890F8B014002909D190F8CA +:10013000B104002805D1FFF7D1FF29462046FFF77B +:10014000B5FE012032BC5DF814FB80B50FF25C10E7 +:10015000D2F728F9FFF79CFF4048002101700120E9 +:1001600002BD30B58BB000A8D7F7DBFD00A890EC3E +:10017000030AFFF7B9FE0446012C0ED1374D95F95D +:100180000000002809D1012028700FF22C10D2F7AE +:1001900009F96C80012000F02FF801200BB030BD70 +:1001A00080B50FF22810D2F7FDF8D7F759FD2B498B +:1001B000486000224A802A49C0F8C01400F2C040BA +:1001C00028494160284981600FF20D01C1600FF29A +:1001D00041010161012002BD2048406890F8B0143F +:1001E000002905D190F8B104002801D10020704702 +:1001F0001E4890F9000070471C490870704780B590 +:100200001648002141800846FFF7F6FF012002BD95 +:1002100070B504460D46114E71880FF2BC00D2F73E +:10022000C1F840F22110297810FB014101220A7027 +:10023000297810FB01414A70297810FB01411E22E8 +:100240008A70297810FB01407188A0F80310287883 +:10025000401C2870BDE87040D1E70000082B012049 +:10026000F10003084B01030863010308E52B01209B +:1002700023232320434720494E495400232323208E +:1002800043472053464420535452203A2025642C9F +:10029000204455203A2025640000000023232343F6 +:1002A00047204641494C2041434300002323234338 +:1002B000472053544F5000002323232043475F41DE +:1002C000424E4F524D414C204454000023232320E2 +:1002D0004347204D4900000023232320434720416A +:1002E000504D5347203A2025640000000FB400B55C +:1002F00091B00020019000900D220146D7F7B2FC8A +:10030000022801D102204AE0754A01201060BDF8A0 +:100310004B0001909DF84A000090012803D14FF452 +:100320008070009015E0022803D14FF40070009017 +:100330000FE0032803D14FF48060009009E0042807 +:1003400003D14FF40060009003E0052801D1102094 +:10035000009000A901A8FDF72BFBAA208DF82E0024 +:100360003C208DF82F0001208DF8300000208DF802 +:100370000800032003900DF111000BA91822D2F7F9 +:1003800057FB0A208DF810000020ADF82A0002A8C3 +:10039000D7F73CFD002801D1022000E0012011B078 +:1003A0005DF814FB00B58FB0AA208DF802003C2048 +:1003B0008DF8030001208DF804008DF8180003204B +:1003C00007900DF1210000A91822D2F731FB0A2075 +:1003D0008DF820000020ADF83A0006A8D7F716FDEA +:1003E000002801D1032002E0FDF7C4FB01200FB07B +:1003F00000BD30B597B000A8D7F793FC0BA8F0F775 +:1004000087FB374CBDF83A002071204600A991ECDB +:10041000030AFDF7CBFB0546607A85420ED0022D1C +:1004200005D1012000F03CF80120207206E0012DEA +:1004300004D1012000F034F80220207265720120FE +:1004400017B030BD80B5D7F70BFC2549C860002236 +:100450000A722449C0F8181200F50670224941605A +:10046000224981600FF20D01C1600FF23D0101616F +:10047000012002BD1A48C06890F80902002801D185 +:100480000020704708E080B5154800210172084639 +:1004900000F006F8012002BD154890F900007047F1 +:1004A000134908707047000018B440F221120B780D +:1004B00012FB030301241C700B7812FB03035C7016 +:1004C0000B7812FB03030D249C700B7812FB0300C6 +:1004D000034A127AC2700878401C087011BCD2E737 +:1004E00070290120ED020308A5030308F3030308A4 +:1004F000F72B01200FB410B5A0B09DF88A00584921 +:10050000087001208DF88C00AA208DF88A003C200C +:100510008DF88B0000208DF80000032001900DF174 +:10052000090022A91822D2F783FA0A208DF80800C0 +:1005300000A8D7F76BFC002805D10FF27010D1F797 +:1005400031FF022014E009A8E9F79DFB454C582231 +:1005500000212046D1F782FE0021E1652166582264 +:1005600009A9D4F7C7F90FF25810D1F71BFF0120E2 +:1005700020B010BC5DF814FB80B50A210320E0F721 +:1005800001F9032801D1032002BD0FF24010D1F779 +:1005900009FF012002BD80B5D7F762FB31498865AC +:1005A0003149C0F8001100F58070304941600FF208 +:1005B0006D0181600FF20D01C1600FF2B5010161A3 +:1005C000012002BD10B594B02649886D90F8F10065 +:1005D00000281BD0224C2078002817D0012013902F +:1005E000129084B068465822D2F732FA0FBCE1F775 +:1005F00019FBC0B22178884208DB01460FF2D8000F +:10060000D1F7D0FE00F005F8012000E0002014B082 +:1006100010BD1348002101700120704700B597B04C +:1006200000A8E9F730FB0F48C16D491CC1650129DD +:1006300002D1009901660FE033290DD30021C16575 +:10064000016E009A914207D1582200A9D4F752F9BD +:100650000FF29800D1F7A6FE012017B000BD0000F0 +:10066000FC2B0120C01A0120F504030879050308BA +:1006700010B50C4640F22111227811FB0202012331 +:100680001370227811FB02025370227811FB0202D0 +:1006900006239370227811FB02000121C170FFF73D +:1006A000B8FF2078401C207010BD000050443A2054 +:1006B0005065646F4F70656E4661696C20535300DE +:1006C00050443A20534320535441000050443A20B0 +:1006D00053432053544F000050443A204469666607 +:1006E000537465704F7665722025640050443A203B +:1006F0005343205245534554000000003C0A560A1B +:10070000700A8B0AA60AC10ADD0AF80A150B310B1A +:100710004E0B6B0B880BA50BC30BE10B000C1E0CD7 +:100720003D0C5D0C7C0C9C0CBD0CDD0CFE0C1F0DFF +:10073000410D630D850DA80DCB0DEE0D120E360E7D +:100740005A0E7F0EA40ECA0EEF0E160F3C0F630F4B +:100750008B0FB30FDB0F03102C1056108010AA1054 +:10076000D41000112B1157118311B011DE110B128F +:10077000391268129712C712F712271359138A13E6 +:10078000BC13EF13221455148914BE14F314291545 +:100790005F159515CD1504163D167616AF16E9169C +:1007A00024175F179B17D817151852189118CF18D0 +:1007B0000F194F199019D119131A561A9A1ADE1ACD +:1007C000221B681BAE1BF51B3D1C851CCE1C181D77 +:1007D000621DAD1DF91D461E941EE21E311F811FB4 +:1007E000D11F23207520C8201C217121C7211D2263 +:1007F0007422CD2226238023DA2336249324F12465 +:100800004F25AF250F267126D32636279B27002894 +:100810006728CE283629A0290B2A762AE32A512BCD +:10082000C02B302CA12C132D862DFB2D712EE82EE4 +:10083000602FD92F5330CF304C31CA314A32CA32AF +:100840004C33D0335434DA346235EA3574360037F9 +:100850008D371B38AA383C39CE39623AF83A8F3B8B +:10086000273CC13C5D3DFA3D983E383FDA3F7E4033 +:100870002341CA4172421C43C84376442545D645AC +:1008800089463D47F447AC486649224ADF4A9F4BB8 +:10089000614C244DEA4DB14E7B4F46501451E3510B +:1008A000B55289535E5436551156ED56CB57AC5858 +:1008B0008F59745A5C5B465C325D215E125F056045 +:1008C000FB60F361EE62EB63EB64ED65F266FA6781 +:1008D0000469116A206B336C486D5F6E7A6F977094 +:1008E000B871DB7201742A7556768577B778EC7922 +:1008F000247B5F7C9D7DDF7E248000003D0A580ABA +:10090000720A8D0AA80AC30ADF0AFB0A170B330B07 +:10091000500B6D0B8A0BA70BC50BE30B020C210CC4 +:10092000400C5F0C7F0C9F0CBF0CE00C010D220DE6 +:10093000430D650D880DAA0DCD0DF10D140E380E69 +:100940005D0E820EA70ECC0EF20E180F3F0F660F33 +:100950008D0FB50FDD0F06102F1059108210AD103E +:10096000D71002112E115A118611B311E1110E1276 +:100970003D126B129A12CA12FA122B135C138D13CA +:10098000BF13F213251459148D14C114F6142C1529 +:1009900062159915D015081640167916B316ED167E +:1009A000281763179F17DB17181856189418D318B1 +:1009B000131953199419D519181A5A1A9E1AE21AAA +:1009C000271B6C1BB31BF91B411C891CD21C1C1D53 +:1009D000671DB21DFE1D4B1E981EE71E361F861F8B +:1009E000D61F28207A20CD2021217621CC21222239 +:1009F0007A22D2222B238523E0233C249924F62437 +:100A00005525B52515267726D9263C27A127062862 +:100A10006D28D4283D29A629112A7D2AE92A572B99 +:100A2000C62B362CA82C1A2D8D2D022E782EEF2EAB +:100A3000672FE02F5B30D6305331D2315132D23272 +:100A40005433D8335C34E2346A35F2357D360837B6 +:100A500095372338B3384439D7396B3A003B973B45 +:100A6000303CCA3C663D033EA23E423FE43F8740E5 +:100A70002D41D3417C422643D24380442F45E0455B +:100A800093464847FE47B64871492D4AEB4AAA4B60 +:100A90006C4C304DF54DBD4E864F52502051EF51AC +:100AA000C15295536B5443551D56FA56D857B958F1 +:100AB0009C59825A695B535C405D2F5E205F1360D6 +:100AC00009610162FC62FA63FA64FC650167096806 +:100AD0001369206A306B426C586D6F6E8A6FA87014 +:100AE000C871EB7212743B7567769677C878FD799A +:100AF000367B717CB07DF17E36807F810FB480B50E +:100B0000212200210846D7F7ADF8022801D10220A2 +:100B10000EE0212201210020D7F7A4F8022801D1FC +:100B2000022005E02120DFF7B7FBFDF749FF012098 +:100B300002BC5DF814FB80B5212200210120D7F70B +:100B400091F8022801D1022002BD2122012108468C +:100B5000D7F788F8022801D1022002BD012002BD8A +:100B6000F0B58BB04948846BA069E1684518002650 +:100B700000A8D7F7D6F80398D7F770FA444A454B40 +:100B8000D2F7F8F9D2F79AFB28800498D7F766FADB +:100B90003F4A404BD2F7EEF9D2F790FB68800598B8 +:100BA000D7F75CFA3A4A3B4BD2F7E4F9D2F786FB27 +:100BB000A880394F3878002809D1381D03A9D1EC15 +:100BC000031A00A991EC030AFDF728FF0646012E3F +:100BD00002D10120387006E03878002803D10020C7 +:100BE000B880F8803881B888E880F888288138890A +:100BF00068810120A0770BB0F0BD80B5D7F730F841 +:100C0000264908602649C0F8381500F238502549B1 +:100C10004160254981600FF21101C1600FF2350179 +:100C20000161012002BD00001C48006890F8290500 +:100C3000002801D10020704705E080B5002000F0B9 +:100C400006F8012002BD194890F9000070471749C5 +:100C50000870704718B440F221120B7812FB03039E +:100C600001241C700B7812FB03035C700B7812FBE1 +:100C7000030321249C700B7812FB03000022C27036 +:100C80000878401C087011BCD7E70000084000201D +:100C900089AD84FA0A74313F3C2A0120942B01204B +:100CA000FD0A0308370B0308610B0308F32B01202F +:100CB0000FB480B5182208210020D6F7D3FF0228F0 +:100CC00001D102200CE03C48002101709DF8091080 +:100CD00041609DF80A1081609DF80B10C1600120F1 +:100CE00002BC5DF814FB80B5334800210170182266 +:100CF00008210120D6F7B6FF032801D1032002BD49 +:100D0000012002BD10B52C4C2078012801D1002013 +:100D100010BD642061684143E268012A0FD10129B6 +:100D20001CDAA1684843002818D4012000F041F8DB +:100D3000012020700FF2D000D1F734FB0EE0012922 +:100D400003DAA1684843002808D5012000F031F8F3 +:100D5000012020700FF2B800D1F724FB012010BD54 +:100D600080B5D6F77DFF154908601549C0F8D01346 +:100D700000F5747013494160134981600FF20D0151 +:100D8000C1600FF24D010161012002BD0B480068F6 +:100D900090F8C103002801D10020704705E080B51C +:100DA000002000F006F8012002BD084890F900007C +:100DB0007047064908707047902901209C2B01203C +:100DC000B10C0308E70C0308050D0308FD2B0120F7 +:100DD00018B440F221120B7812FB030301241C709B +:100DE0000B7812FB03035C700B7812FB03031824CF +:100DF0009C700B7812FB03000122C2700878401C23 +:100E0000087011BCCBE7000054656D7020496E007E +:100E100054656D70204F7574000000000FB480B5EC +:100E20000FF21810D1F7BEFA0F2201210020D6F7D9 +:100E300019FF022805D10FF21410D1F7B3FA0220DE +:100E400000E0012002BC5DF814FB80B50FF2081031 +:100E5000D1F7A8FA0F2201210846D6F703FF03288D +:100E600005D10FF20410D1F79DFA032002BD012035 +:100E700002BD80B5012000F035F8002000F02BF80D +:100E8000012002BD80B50FF2EC00D1F78BFAD6F746 +:100E9000E7FE244908602449C0F8681200F51A707A +:100EA00022494160224981600FF20D01C1600FF2B9 +:100EB0003D010161012002BD1A48006890F8590205 +:100EC000002801D10020704708E080B5002000F024 +:100ED00009F8012002BD174908707047164890F9BB +:100EE00000007047144908707047000018B440F2C1 +:100EF00021120B7812FB030301241C700B7812FBE8 +:100F000003035C700B7812FB03030F249C700B78B7 +:100F100012FB0300074A1278C2700878401C087060 +:100F200011BCD2E7842B01201D0E03084B0E0308D1 +:100F3000730E0308EB2B0120EA2B0120537461721E +:100F400074204779726F2054656D7000537461721C +:100F500074204661696C00004779726F2054656D9A +:100F6000702053746F70000053746F702046616975 +:100F70006C0000004779726F2054656D7020496ED7 +:100F8000697400005248002101704160816070471F +:100F900070B5044600254E4E307800282CD12068CC +:100FA000D7F75CF821F000412A464A4BD1F73AFFC7 +:100FB00019D26068D7F752F821F000412A46454B14 +:100FC000D1F730FF0FD2A068D7F748F821F00041E1 +:100FD0000122414BE3F7ECFB05D87068401C7060C0 +:100FE0002846B06004E0B068401CB06028467060DD +:100FF0007068052862DB28E0032837D12068D7F71E +:101000002DF821F000412A46324BD1F70BFF17D2C1 +:101010006068D7F723F821F000412A462D4BD1F71D +:1010200001FF0DD2A068D7F719F821F00041012285 +:10103000294BE3F7BDFB03D87068401C706001E0EA +:10104000284670607068052840DB94ED020AB5EE12 +:10105000400AF1EE10FA03DD01252846307002E067 +:10106000022528463070002070602FE0012801D052 +:1010700002282BD12068D6F7F1FF21F00041012290 +:10108000144BE3F795FB13D96068D6F7E7FF21F01F +:10109000004101220F4BE3F78BFB09D9A068D6F77B +:1010A000DDFF21F000412A460B4BD1F7BBFE03D2F6 +:1010B000B068401CB06001E01046B060B068052820 +:1010C00004DB0325284630700020B060284670BD40 +:1010D000842A01200000F83F000021400FB480B5B1 +:1010E000192200210846D6F7BDFD022801D10220B1 +:1010F0000DE0BDF80E309DF90D209DF90C10BDF8E6 +:101100000A00FEF723F83F4800214170012002BC8D +:101110005DF814FB80B5192200210120D6F7A2FD4D +:10112000032801D1032002BD012002BD38B50024EF +:10113000344D95F90100002803D16868FEF746F8A0 +:10114000044664B2002C07D0012000F039F8204694 +:1011500000F039F801206870012032BD10B5294C2B +:10116000D6F77EFDA060D9F777F960600020207087 +:10117000A0682549C0F8F81300F57E702349416046 +:10118000234981600FF20D01C1600FF2410101613D +:10119000012010BD1B48806890F8E903002801D1A8 +:1011A0000020704708E080B516480021017008460D +:1011B00000F006F8012002BD164890F900007047C3 +:1011C0001449087070470F490870704718B440F20E +:1011D00021120B7812FB030301241C700B7812FB05 +:1011E00003035C700B7812FB030319249C700B78CB +:1011F00012FB0300034A1278C2700878401C087082 +:1012000011BCD0E7542A0120DD1003081511030892 +:101210002D110308FA2B01202DE9F84F04000D00D1 +:1012200016001F00DDF82880DDF82C90DDF830A0D6 +:1012300039480078002802D1A520D3F7D7FAD4F78F +:101240005BF93648D0F80CB006E0A34502D1AA20DD +:10125000D3F7CCFADBF800B0BBF1000FF5D1502288 +:1012600000212000D0F7FAFF642084F84C00667457 +:10127000207C2B4909780843207484F841A0002D74 +:1012800000D02562C4F82880C4F824904A46CD21B5 +:101290004046D0F7E3FF19EB08085FEAD8085FEA99 +:1012A000C808B8F150080020C8F800005FF080704E +:1012B000C8F844001B48C8F84000C8F84C707FF0DC +:1012C0000200C8F824001848C8F82C001748C8F8CD +:1012D00030001748C8F834001648C8F8040016480B +:1012E000C8F808001548C8F80C001548C8F81000E0 +:1012F0001448C8F814001448C8F818001348C8F86F +:101300001C001348C8F82000C4F804802000D4F75B +:10131000CFF9BDE8F18F00BF062C0120A079002095 +:10132000012C01206B4800080100CCCC0200CCCC81 +:101330000300CCCC0400CCCC0500CCCC0600CCCC3B +:101340000700CCCC0800CCCC0900CCCC0A00CCCC1B +:101350000B00CCCC4B48002101704160816070478C +:1013600070B506460024474D287800282BD13068F8 +:10137000D6F774FE21F000412246434BD1F752FDCF +:1013800018D27068D6F76AFE21F0004122463E4B23 +:10139000D1F748FD0ED296ED020ADFED390AB4EE20 +:1013A000600AF1EE10FA05DB6868401C68601046C0 +:1013B000A86004E0A868401CA860104668606868DF +:1013C000052853DB27E002282BD13068D6F746FEEC +:1013D00021F0004122462C4BD1F724FD16D2706833 +:1013E000D6F73CFE21F000412246274BD1F71AFDEB +:1013F0000CD296ED020ADFED220AB4EE600AF1EE9D +:1014000010FA03DB6868401C686001E01046686001 +:101410006868052832DB0124204628701046686081 +:101420002CE001282AD13068D6F718FE21F00041BF +:101430000122154BE3F7BCF912D97068D6F70EFEFE +:1014400021F000410122104BE3F7B2F908D996EDE3 +:10145000020AF2EE020AB4EE600AF1EE10FA03D5C7 +:10146000A868401CA86001E02046A860A86805287C +:1014700004DB0224204628700020A860204670BDAE +:1014800001001041AC2901200000E03F0FB480B5FD +:10149000102201210020D6F7E5FB022801D102200D +:1014A00002E0FEF705FA012002BC5DF814FB80B5EE +:1014B000102201210846D6F7D5FB032801D10320CD +:1014C00002BD012002BD30B58BB000A8D6F729FCC3 +:1014D00003A890EC030AFEF7F1F90446324D287890 +:1014E000A0420FD0012C05D1012000F03DF80120D1 +:1014F000687006E0022C04D1012000F035F80220CB +:1015000068702C7001200BB030BD80B5D6F7A8FBF9 +:101510002549486000224A702449C0F8901200F51D +:10152000247023494160234981600FF21101C16099 +:101530000FF23D010161012002BD00001A48406820 +:1015400090F88102002801D10020704708E080B5A2 +:10155000154800214170084600F006F8012002BD40 +:10156000154890F900007047134908707047000053 +:1015700018B440F221120B7812FB030301241C70F3 +:101580000B7812FB03035C700B7812FB030310242F +:101590009C700B7812FB0300034A5278C2700878E3 +:1015A000401C087011BCD2E7382B01208D140308B1 +:1015B000AF140308C7140308F42B01200FB480B53F +:1015C000202200210846D6F74DFB022801D1022037 +:1015D00005E0FEF745F8304800210170012002BC0B +:1015E0005DF814FB80B5202200210120D6F73AFBDC +:1015F000022801D1022002BD2748002101700120EC +:1016000002BD70B58CB02548446BA069E1684518EF +:1016100000A8D6F786FB204E3078012801D10020A3 +:101620000BE000A890EC030AFEF726F8012803D18E +:1016300028700120A077307001200CB070BD80B5FB +:10164000D6F70EFB164908601649C0F8101500F2CF +:10165000105015494160154981600FF21101C160B8 +:101660000FF251010161012002BD00000C48006829 +:1016700090F80105002801D10020704705E080B5F1 +:10168000002000F006F8012002BD094890F9000092 +:101690007047074908707047EE2B01200840002072 +:1016A000882B0120BD150308E51503080316030860 +:1016B000ED2B012018B440F221120B7812FB03032A +:1016C00001241C700B7812FB03035C700B7812FB77 +:1016D000030320249C700B7812FB03000022C270CD +:1016E0000878401C087011BCC9E700000FB480B531 +:1016F000072200210846D6F7B5FA022801D10220B8 +:1017000004E09DF80800FBF7F7FD012002BC5DF83E +:1017100014FB80B5072200210120D6F7A3FA032885 +:1017200001D1032002BD012002BD10B582B000200E +:101730008DF80000314C00A96068FBF7F9FD002826 +:1017400006D0012000F03BF89DF80000207060708A +:10175000012016BD10B5294CD6F782FAA060D8F743 +:101760007BFE606000202070A0682549C0F8281129 +:1017700000F5947023494160234981600FF20D0107 +:10178000C1600FF241010161012010BD014600203E +:101790001A4A926892F81921002A02D0002900D131 +:1017A00009E0704780B5154800210170084600F037 +:1017B00006F8012002BD154890F900007047134952 +:1017C0000870704718B440F221120B7812FB030323 +:1017D00001241C700B7812FB03035C700B7812FB66 +:1017E000030307249C700B7812FB0300034A127852 +:1017F000C2700878401C087011BCD3E70C2A012085 +:10180000ED160308131703082B170308E22B01201A +:101810000FB480B5152200210846D6F723FA022816 +:1018200001D1022002E0FFF795FD012002BC5DF826 +:1018300014FB80B5152200210120D6F713FA0328E6 +:1018400001D1032002BD012002BD10B5314840681E +:10185000FFF786FD044664B2002C05D0012000F09D +:1018600037F8204600F037F8012010BD10B5294C9C +:10187000D6F7F6F9A060D8F7EFFD60600020207081 +:10188000A0682549C0F8581300F5567023494160F7 +:10189000234981600FF20D01C1600FF24101016126 +:1018A000012010BD1B48806890F84903002801D131 +:1018B0000020704708E080B51648002101700846F6 +:1018C00000F006F8012002BD164890F900007047AC +:1018D0001449087070470F490870704718B440F2F7 +:1018E00021120B7812FB030301241C700B7812FBEE +:1018F00003035C700B7812FB030315249C700B78B8 +:1019000012FB0300034A1278C2700878401C08706A +:1019100011BCD0E7242A012011180308331803084A +:101920004B180308E82B01200FB480B529220121B0 +:101930000020D6F797F9022801D1022002E0FDF736 +:101940003FFA012002BC5DF814FB80B52922012179 +:101950000846D6F787F9032801D1032002BD0120EC +:1019600002BD00B58BB000A8D6F7DBF903A890EC58 +:10197000030AFDF73BFA012807D12B48012101702A +:10198000084600F031F8FDF71BFA01200BB000BD4E +:1019900080B5D6F765F9254908602549C0F878165D +:1019A00000F2786023494160234981600FF20D0104 +:1019B000C1600FF23D010161012002BD1B480068BA +:1019C00090F86906002801D10020704708E080B532 +:1019D000154800210170084600F006F8012002BDFC +:1019E000164890F9000070471449087070470000CD +:1019F00018B440F221120B7812FB030301241C706F +:101A00000B7812FB03035C700B7812FB0303292491 +:101A10009C700B7812FB0300034A1278C27008789E +:101A2000401C087011BCD2E7F62B0120982B012036 +:101A3000291903084B19030863190308F52B012022 +:101A40000FB480B5172200210846D6F70BF90228FB +:101A500001D1022002E0FFF795FA012002BC5DF8F7 +:101A600014FB80B5172200210120D6F7FBF80328CC +:101A700001D1032002BD012002BD10B531484068EC +:101A8000FFF786FA044664B2002C05D0012000F06E +:101A900037F8204600F037F8012010BD10B5294C6A +:101AA000D6F7DEF8A060D8F7D7FC60600020207081 +:101AB000A0682549C0F8A81300F56A702349416061 +:101AC000234981600FF20D01C1600FF241010161F4 +:101AD000012010BD1B48806890F89903002801D1AF +:101AE0000020704708E080B51648002101700846C4 +:101AF00000F006F8012002BD164890F9000070477A +:101B00001449087070470F490870704718B440F2C4 +:101B100021120B7812FB030301241C700B7812FBBB +:101B200003035C700B7812FB030317249C700B7883 +:101B300012FB0300034A1278C2700878401C087038 +:101B400011BCD0E7482A0120411A0308631A030890 +:101B50007B1A0308F92B0120816807E002681168ED +:101B6000536889185B18C36008320260C2689142EA +:101B7000F4D04A1C8260087870472DE9FF4D00F1CF +:101B80000801009100270168009A490802EBC10191 +:101B90000191B8460021029103910168490800EBC8 +:101BA000C101406800F0010501F10804400804EBA0 +:101BB000C00631E000A8FFF7CFFF4FFA80FA0AE035 +:101BC0000098016808180099029049680818039065 +:101BD000009808300090029803998842F0D0401C89 +:101BE000029010F801BD47450CD1B44208BFEAF796 +:101BF0006FFA276805B14F44606800EB07080834A6 +:101C00004745F2D007F801BBBAF1000F0AD51AF127 +:101C1000010AE8D14745CDD1B442CBD1304604B01A +:101C2000BDE8F08DBAF1010AD5D5F3E710B584B05F +:101C3000D3F795FDD8F74CFBFDF7BCFF1B4C0220FA +:101C400002904FF4806001900094194B64220FF2CF +:101C5000700104F5B0505030FFF7DEFA0220029018 +:101C60004FF48050019004F580600090114B4B229E +:101C70000FF2580104F5B050FFF7CEFA022002909F +:101C80004FF40070019004F5A05000900A4B0A2216 +:101C90000FF2440104F5B550FFF7BEFA07480121E1 +:101CA0000170D2F7E8FD002004B010BDB87A002022 +:101CB00013BC0208CBFB0208C1FB0208002C012068 +:101CC000534820436F6D5461736B00005348204D9F +:101CD00061696E5461736B00506F7765724D616E10 +:101CE00061676572205461736B00000078787878C2 +:101CF00030303031303031303131313131313131DA +:101D00003131313130307831787878780000000026 +:101D10007878787831303131787878787878787860 +:101D20007878787878787878787878787878787833 +:101D300000000000313131313130317878787878F5 +:101D40007878787878787878787878787878787813 +:101D5000787878780000000030313030303131311F +:101D6000317878787830303000000000313131300F +:101D70003178787878787878787878300000000052 +:101D80003131313131787878787878787878787836 +:101D90000000000043F63001C4F202014FF09F0240 +:101DA0000A6040F20000C4F202004FF6FF73CAF668 +:101DB000FF3303604FF6BF63CFF6FF7300F580601B +:101DC00003604FF6FF73CFF6FF7300F5806003608A +:101DD00000F58060036000F58060036040F20F034F +:101DE000C0F2000341F60040C4F2020003604FF06D +:101DF00000020A6001488047014800477149010814 +:101E00000D20030847797243616C3D256400000092 +:101E100041434343616C3D256400000044554D50EF +:101E2000534554202564000050443A2053657425DE +:101E3000642025640000000010B50749794418317A +:101E4000064C7C44163404E00A68081D5118884783 +:101E50000146A142F8D110BD74000000B800000096 +:101E600033B200085DB200089FB3000851B4000807 +:101E700000000000A5B400080000000047B90008F9 +:101E80000000000033B20008BFB7000861B80008C6 +:101E90000000000000000000000000000000000042 +:101EA0000000000000000000E5B9000811BA0008B9 +:101EB00013BB0008A1BB000800000000F5BB000830 +:101EC00000000000EDC5000817C60008DB0BFDFF91 +:101ED00050B10000B87A0020000000009FFCFFFF16 +:101EE0000200000002000000FC02000002000000EE +:101EF000004000200400000083FCFFFF02000000FF +:101F000002000000E20200004D0200000840002034 +:101F1000B03A00005B494E564E5D616363655F7386 +:101F200068696674282564293A2025642025642080 +:101F300025640000475943616C4552522042696153 +:101F400073205B25645D203A20256C64000000004E +:101F50004EF68851CEF20001086840F47000086027 +:101F60004FF00070E1EE100A704700000120C046FB +:101F7000002801D0FFF760FF0020C046C046FFF7F1 +:101F800055FE00F000F800F001B8000007463846A2 +:101F9000F2F7E6F9FBE700000A5B494E564E5D4159 +:101FA0004343454C5F4D474D5432203A2025640051 +:101FB000475943616C45525220524D53205B256472 +:101FC0005D203A20256C640047797243616C3D20A6 +:101FD000256420256420256400000000414343203F +:101FE000446174612053616D6500000041522D25EC +:101FF000642C25642C25642C25640000475943611A +:102000006C45525220524D5320300000C046C0460D +:10201000FFF79EFFFFF7AAFF4148532D453200000E +:102020004148532D453300004148532D45340000AD +:102030004148532D453100005354302D32000000EB +:1020400041522D534C50000041522D535442000038 +:1020500041432D52463100004149532D534C50000D +:1020600047522D534C50000047522D53544200000C +:1020700047522D52463100004748532D453200004B +:102080004748532D453300004748532D4534000041 +:102090004748532D453500004748532D453600002D +:1020A0004748532D453700004748532D4538000019 +:1020B000FF7FFF7FFF7F000000000000FFF7FEBFF3 +:1020C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF44 +:1020D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF34 +:1020E000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF24 +:1020F000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF14 +:10210000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF03 +:10211000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFF3 +:10212000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFE3 +:10213000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFD3 +:10214000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFC3 +:10215000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFB3 +:10216000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBFA3 +:10217000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF93 +:10218000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF83 +:10219000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF73 +:1021A000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF63 +:1021B000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF53 +:1021C000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF43 +:1021D000FFF7FEBFFFF7FEBFFFF7FEBFFFF7FEBF33 +:1021E000FFF7FEBFFC009000077840002078400019 +:1021F00020810081008100810081008100810081B7 +:1022000000810081008100810081008100810081C6 +:102210000081008100FA0007744900207449002001 +:1022200081008100810081008100810081008100A6 +:102230008100810081008100810081008100810096 +:102240008100810081008100810081008100810086 +:102250008100810081008100810081008100810076 +:102260008100810081008100810081008100810066 +:102270008100810081008100810081008100810056 +:102280008100810081008100810081008100810046 +:102290008100810081008100810081008100810036 +:1022A0008100810081008100810081008100810026 +:1022B0008100810081008100810081008100810016 +:1022C000810081008100810081008100AE00000A50 +:1022D000FD000007FD000007FD000005FC000002F6 +:1022E0008100810081008100B30010400000803F28 +:1022F000FFCAA3BFF986F43EFBB54A3DFB000002CE +:10230000E6000001FD000002ED000047F1000001C1 +:10231000FD000010E9000001FD0000C8FD00000400 +:102320008100D800102D431CEBE2361A3F2D431CD0 +:10233000EBE2361A3F14ED000001FD000001A5009C +:10234000FD66043FCDCC4C3FE4000001FD000001E0 +:10235000FD000001E9000001FD000002E5000001B0 +:10236000FD000001A9000003E9000AA0A1A2A3AAA0 +:10237000ABA4A5A9A7A6EF0004EC1C030804FD006C +:1023800004101D030804FD0004341D030804FD00AF +:1023900004581D030802FD00046C1D030802FD0023 +:1023A00004801D030802D8000040E1000005F6008B +:1023B0000027EA00010101FD000078EE000003ECB7 +:1023C000001101020304060708090024F4008083B9 +:1023D0008C8D8F90FD000BFF00600B110000898B2E +:1023E0009D9E9FFD00015078FA00048485868781B8 +:1023F000FB0002FFFFFEF9000B01020304010203D0 +:102400000406070809FC000001FD000001FD0000B2 +:1024100001FC0002FF3C41FA00058B000054004023 +:10242000FA000001FB0000FFFD000701040101C8E4 +:102430008DD60000FFFFFFFFFFFFFFFFFFFFFFFF45 +:10244000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10245000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10246000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10247000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10248000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10249000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:1024A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:1024B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1024C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1024D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1024E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1024F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:10250000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10251000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10252000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10253000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10254000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10255000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10256000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10257000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10258000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10259000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:1025A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:1025B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1025C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1025D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1025E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1025F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:10260000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10261000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10262000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10263000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10264000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10265000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10266000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10267000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10268000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10269000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:1026A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1026B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1026C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1026D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1026E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1026F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:10270000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10271000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10272000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10273000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10274000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10275000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10276000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10277000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10278000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10279000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:1027A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1027B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1027C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1027D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1027E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1027F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:10280000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10281000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10282000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10283000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10284000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10285000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10286000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10287000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10288000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10289000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:1028A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1028B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1028C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1028D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1028E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1028F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:10290000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:10291000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10292000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10293000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10294000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10295000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10296000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10297000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10298000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10299000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:1029A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1029B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1029C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1029D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1029E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1029F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:102A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:102A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:102A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:102A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:102A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:102A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:102A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:102A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:102A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:102A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:102AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:102AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:102AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:102AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:102AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:102AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:102B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:102B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:102B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:102B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:102B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:102B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:102B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:102B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:102B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:102B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:102BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:102BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:102BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:102BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:102BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:102BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:102C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:102C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:102C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:102C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:102C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:102C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:102C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:102C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:102C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:102C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:102CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:102CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:102CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:102CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:102CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:102CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:102D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:102D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:102D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:102D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:102D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:102D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:102D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:102D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:102D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:102D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:102DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:102DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:102DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:102DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:102DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:102DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:102E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:102E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:102E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:102E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:102E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:102E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:102E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:102E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:102E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:102E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:102EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:102EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:102EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:102ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:102EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:102EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:102F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:102F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:102F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:102F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:102F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:102F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:102F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:102F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:102F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:102F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:102FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:102FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:102FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:102FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:102FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:102FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:10300000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10301000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10302000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10303000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10304000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10305000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10306000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10307000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10308000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10309000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:1030A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1030B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1030C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1030D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1030E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1030F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:10310000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10311000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10312000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10313000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10314000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10315000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10316000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10317000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10318000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10319000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:1031A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1031B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1031C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1031D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1031E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1031F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:10320000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10321000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10322000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10323000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10324000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10325000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10326000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10327000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10328000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10329000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:1032A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1032B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1032C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1032D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1032E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1032F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:10330000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10331000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10332000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10333000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10334000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10335000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10336000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10337000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10338000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10339000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:1033A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1033B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1033C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1033D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1033E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1033F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:10340000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10341000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10342000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10343000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10344000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10345000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10346000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10347000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10348000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10349000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:1034A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1034B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1034C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1034D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1034E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1034F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:10350000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10351000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10352000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10353000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10354000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10355000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10356000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10357000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10358000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10359000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:1035A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1035B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1035C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1035D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1035E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1035F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:10360000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10361000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10362000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10363000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10364000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10365000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10366000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10367000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10368000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10369000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:1036A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1036B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1036C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1036D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1036E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1036F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:10370000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10371000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10372000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10373000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10374000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10375000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10376000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10377000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10378000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10379000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:1037A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1037B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1037C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1037D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1037E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1037F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:10380000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10381000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10382000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10383000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10384000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10385000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10386000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10387000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10388000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10389000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:1038A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1038B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1038C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1038D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1038E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1038F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:10390000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:10391000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10392000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10393000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10394000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10395000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10396000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10397000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10398000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10399000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:1039A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1039B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1039C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1039D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1039E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1039F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:103A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:103A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:103A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:103A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:103A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:103A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:103A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:103A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:103A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:103A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:103AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:103AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:103AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:103AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:103AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:103AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:103B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:103B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:103B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:103B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:103B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:103B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:103B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:103B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:103B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:103B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:103BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:103BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:103BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:103BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:103BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:103BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:103C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:103C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:103C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:103C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:103C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:103C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:103C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:103C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:103C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:103C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:103CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:103CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:103CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:103CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:103CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:103CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:103D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:103D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:103D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:103D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:103D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:103D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:103D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:103D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:103D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:103D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:103DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:103DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:103DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:103DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:103DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:103DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:103E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:103E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:103E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:103E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:103E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:103E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:103E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:103E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:103E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:103E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:103EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:103EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:103EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:103ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:103EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:103EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:103F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:103F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:103F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:103F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:103F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:103F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:103F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:103F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:103F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:103F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:103FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:103FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:103FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:103FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:103FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:103FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:10400000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10401000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10402000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10403000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10404000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10405000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10406000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10407000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10408000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10409000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:1040A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1040B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1040C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1040D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1040E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1040F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:10410000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10411000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10412000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10413000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10414000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10415000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10416000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10417000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10418000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10419000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:1041A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1041B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1041C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1041D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1041E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1041F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:10420000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10421000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10422000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10423000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10424000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10425000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10426000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10427000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10428000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10429000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:1042A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1042B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1042C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1042D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1042E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1042F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:10430000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10431000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10432000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10433000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10434000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10435000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10436000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10437000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10438000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10439000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:1043A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1043B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1043C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1043D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1043E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1043F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:10440000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10441000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10442000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10443000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10444000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10445000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10446000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10447000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10448000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10449000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:1044A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1044B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1044C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1044D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1044E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1044F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:10450000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10451000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10452000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10453000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10454000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10455000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10456000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10457000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10458000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10459000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:1045A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1045B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1045C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1045D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1045E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1045F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:10460000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10461000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10462000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10463000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10464000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10465000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10466000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10467000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10468000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10469000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:1046A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1046B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1046C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1046D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1046E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1046F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:10470000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10471000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10472000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10473000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10474000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10475000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10476000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10477000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10478000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10479000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:1047A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1047B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1047C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1047D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1047E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1047F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:10480000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10481000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10482000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10483000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10484000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10485000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10486000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10487000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10488000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10489000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:1048A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1048B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1048C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1048D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1048E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1048F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:10490000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:10491000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10492000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10493000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10494000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10495000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10496000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10497000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10498000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10499000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:1049A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1049B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1049C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1049D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1049E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1049F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:104A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:104A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:104A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:104A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:104A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:104A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:104A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:104A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:104A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:104A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:104AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:104AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:104AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:104AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:104AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:104AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:104B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:104B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:104B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:104B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:104B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:104B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:104B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:104B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:104B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:104B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:104BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:104BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:104BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:104BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:104BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:104BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:104C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:104C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:104C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:104C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:104C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:104C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:104C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:104C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:104C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:104C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:104CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:104CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:104CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:104CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:104CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:104CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:104D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:104D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:104D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:104D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:104D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:104D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:104D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:104D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:104D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:104D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:104DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:104DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:104DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:104DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:104DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:104DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:104E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:104E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:104E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:104E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:104E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:104E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:104E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:104E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:104E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:104E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:104EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:104EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:104EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:104ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:104EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:104EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:104F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:104F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:104F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:104F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:104F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:104F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:104F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:104F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:104F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:104F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:104FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:104FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:104FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:104FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:104FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:104FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:10500000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10501000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10502000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10503000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10504000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10505000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10506000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10507000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10508000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:10509000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:1050A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1050B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1050C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1050D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1050E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:1050F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:10510000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10511000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10512000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10513000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10514000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10515000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10516000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10517000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10518000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:10519000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:1051A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1051B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1051C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1051D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1051E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:1051F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:10520000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10521000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10522000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10523000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10524000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10525000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10526000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10527000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10528000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:10529000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:1052A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1052B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1052C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1052D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1052E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:1052F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:10530000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD +:10531000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10532000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10533000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10534000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10535000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10536000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10537000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10538000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:10539000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D +:1053A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D +:1053B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD +:1053C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED +:1053D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD +:1053E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD +:1053F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD +:10540000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC +:10541000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C +:10542000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C +:10543000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C +:10544000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C +:10545000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C +:10546000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C +:10547000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C +:10548000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C +:10549000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C +:1054A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C +:1054B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC +:1054C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC +:1054D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC +:1054E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC +:1054F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC +:10550000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB +:10551000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B +:10552000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B +:10553000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B +:10554000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B +:10555000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B +:10556000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B +:10557000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B +:10558000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B +:10559000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B +:1055A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B +:1055B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB +:1055C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB +:1055D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB +:1055E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB +:1055F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB +:10560000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA +:10561000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A +:10562000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A +:10563000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A +:10564000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A +:10565000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A +:10566000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A +:10567000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A +:10568000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A +:10569000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A +:1056A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A +:1056B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA +:1056C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA +:1056D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA +:1056E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA +:1056F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA +:10570000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9 +:10571000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99 +:10572000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89 +:10573000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79 +:10574000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69 +:10575000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59 +:10576000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49 +:10577000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39 +:10578000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29 +:10579000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19 +:1057A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09 +:1057B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9 +:1057C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9 +:1057D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9 +:1057E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9 +:1057F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9 +:10580000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8 +:10581000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98 +:10582000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88 +:10583000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78 +:10584000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68 +:10585000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58 +:10586000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48 +:10587000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38 +:10588000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28 +:10589000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18 +:1058A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08 +:1058B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8 +:1058C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8 +:1058D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8 +:1058E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8 +:1058F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8 +:10590000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7 +:10591000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97 +:10592000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87 +:10593000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77 +:10594000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67 +:10595000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57 +:10596000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47 +:10597000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37 +:10598000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27 +:10599000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17 +:1059A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07 +:1059B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7 +:1059C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7 +:1059D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7 +:1059E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7 +:1059F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7 +:105A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6 +:105A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96 +:105A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86 +:105A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76 +:105A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66 +:105A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56 +:105A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46 +:105A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36 +:105A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26 +:105A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16 +:105AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06 +:105AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6 +:105AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6 +:105AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6 +:105AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6 +:105AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6 +:105B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5 +:105B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95 +:105B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85 +:105B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75 +:105B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65 +:105B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55 +:105B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45 +:105B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35 +:105B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25 +:105B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15 +:105BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05 +:105BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5 +:105BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5 +:105BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5 +:105BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5 +:105BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5 +:105C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4 +:105C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94 +:105C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84 +:105C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74 +:105C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64 +:105C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54 +:105C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44 +:105C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34 +:105C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24 +:105C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14 +:105CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04 +:105CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4 +:105CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4 +:105CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4 +:105CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4 +:105CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4 +:105D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3 +:105D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93 +:105D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83 +:105D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73 +:105D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63 +:105D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53 +:105D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43 +:105D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33 +:105D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23 +:105D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13 +:105DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03 +:105DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3 +:105DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3 +:105DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3 +:105DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3 +:105DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3 +:105E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2 +:105E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92 +:105E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82 +:105E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72 +:105E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62 +:105E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52 +:105E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42 +:105E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32 +:105E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22 +:105E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12 +:105EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02 +:105EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2 +:105EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2 +:105ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2 +:105EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2 +:105EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2 +:105F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1 +:105F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91 +:105F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81 +:105F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71 +:105F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61 +:105F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51 +:105F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41 +:105F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31 +:105F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21 +:105F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11 +:105FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01 +:105FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1 +:105FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1 +:105FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1 +:105FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1 +:105FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1 +:10600000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0 +:10601000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90 +:10602000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 +:10603000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70 +:10604000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60 +:10605000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50 +:10606000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40 +:10607000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30 +:10608000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20 +:10609000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10 +:1060A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 +:1060B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 +:1060C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0 +:1060D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0 +:1060E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0 +:1060F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0 +:10610000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F +:10611000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F +:10612000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F +:10613000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F +:10614000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F +:10615000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F +:10616000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F +:10617000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F +:10618000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F +:10619000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F +:1061A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +:1061B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF +:1061C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF +:1061D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF +:1061E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF +:1061F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF +:10620000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E +:10621000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E +:10622000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E +:10623000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E +:10624000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E +:10625000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E +:10626000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E +:10627000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E +:10628000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E +:10629000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E +:1062A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +:1062B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE +:1062C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE +:1062D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE +:1062E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE +:1062F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE +:10630000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D +:10631000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D +:10632000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D +:10633000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D +:10634000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D +:10635000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D +:10636000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D +:10637000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D +:10638000FECAFECA53746179696E6753656E73699C +:106390006E675F53535F496E697469616C697A65B2 +:1063A00000000000000000000000000000000000ED +:1063B00000000000000000000000000000000000DD +:1063C000000000008901000876020008537461791A +:1063D000696E6753656E73696E675F53535F53747D +:1063E0006F700000000000000000000000000000CE +:1063F000000000000000000000000000000000009D +:10640000000000000000000000000000770200080B +:106410009402000853746179696E6753656E7369FD +:106420006E675F53657453746179696E6753656E07 +:1064300073696E67436865636B696E6754696D6500 +:10644000000000000000000000000000000000004C +:10645000000000009502000896020008537461795C +:10646000696E6753656E73696E675F5365745573C4 +:10647000657253746F70436865636B696E675469C6 +:106480006D6500000000000000000000000000003A +:10649000000000000000000000000000970200085B +:1064A000B802000853746179696E6753656E736949 +:1064B0006E675F536574557365724D6F766543689B +:1064C00065636B696E6754696D65000000000000CC +:1064D00000000000000000000000000000000000BC +:1064E00000000000B9020008DC0200085374617962 +:1064F000696E6753656E73696E675F536574557334 +:10650000657253746179696E67526164697573006D +:10651000000000000000000000000000000000007B +:10652000000000000000000000000000DD02000884 +:10653000F802000853746179696E6753656E736978 +:106540006E675F5365745573657253746179696ED4 +:1065500067417265615261646975730000000000F3 +:10656000000000000000000000000000000000002B +:1065700000000000F9020008140300085374617958 +:10658000696E6753656E73696E675F436865636BB9 +:106590005573657253746F7054696D650000000027 +:1065A00000000000000000000000000000000000EB +:1065B00000000000000000000000000015030008BB +:1065C0009403000853746179696E6753656E73694B +:1065D0006E675F5265717565737443757272656E2F +:1065E00074506F7300000000000000000000000005 +:1065F000000000000000000000000000000000009B +:106600000000000095030008A60300085374617998 +:10661000696E6753656E73696E675F53656E64502C +:106620004F4941636B436F6D6D616E640000000004 +:10663000000000000000000000000000000000005A +:10664000000000000000000000000000A703000898 +:10665000B203000853746179696E6753656E73699C +:106660006E675F436865636B436F6D6D616E645405 +:106670006F434145526561647900000000000000ED +:10668000000000000000000000000000000000000A +:1066900000000000B3030008BA03000853746179D6 +:1066A000696E6753656E73696E675F526573657473 +:1066B000436F6D6D616E645265616479466C6167AC +:1066C00000000000000000000000000000000000CA +:1066D000000000000000000000000000BB030008F4 +:1066E000DC03000853746179696E6753656E7369E2 +:1066F0006E675F526573657452657175657374502A +:106700006F73466C6167000000000000000000002D +:106710000000000000000000000000000000000079 +:1067200000000000DD030008FC03000853746179D9 +:10673000696E6753656E73696E675F5265736574E2 +:10674000506F6941636B436F6D6D616E64466C6140 +:1067500067000000000000000000000000000000D2 +:10676000000000000000000000000000FD03000821 +:106770001C04000853746179696E6753656E736910 +:106780006E675F536574506F736974696F6E4172A1 +:1067900072697665466C61670000000000000000C9 +:1067A00000000000000000000000000000000000E9 +:1067B000000000001D0400082C04000853746179D7 +:1067C000696E6753656E73696E675F536574506F6A +:1067D000736974696F6E49734E6F74526561647941 +:1067E000466C61670000000000000000000000002F +:1067F0000000000000000000000000002D04000860 +:106800003604000853746179696E6753656E736965 +:106810006E675F53657443757272656E74506F7303 +:106820006974696F6E000000000000000000000045 +:106830000000000000000000000000000000000058 +:106840000000000037040008C00400085374617998 +:10685000696E6753656E73696E675F436865636BE6 +:106860004669727374506F736974696F6E417272A6 +:1068700069766500000000000000000000000000D4 +:10688000000000000000000000000000C10400083B +:106890001005000853746179696E6753656E7369FA +:1068A0006E675F436865636B5365636F6E64506FBB +:1068B000736974696F6E41727269766500000000D9 +:1068C00000000000000000000000000000000000C8 +:1068D000000000001105000860050008537461798C +:1068E000696E6753656E73696E675F436865636B56 +:1068F000506F736974696F6E49734E6F745265613E +:1069000064790000000000000000000000000000AA +:106910000000000000000000000000006105000809 +:106920007205000853746179696E6753656E736907 +:106930006E675F436865636B557365724D6F76690B +:106940006E6744697374616E636500000000000047 +:106950000000000000000000000000000000000037 +:106960000000000073050008C00500085374617939 +:10697000696E6753656E73696E675F436865636BC5 +:106980005573657247657474696E674F75745261AB +:106990006E676500000000000000000000000000BD +:1069A000000000000000000000000000C105000819 +:1069B0007C06000853746179696E6753656E73696C +:1069C0006E675F55706461746553746179696E6751 +:1069D000506F730000000000000000000000000085 +:1069E00000000000000000000000000000000000A7 +:1069F000000000007D060008D40600085374617989 +:106A0000696E6753656E73696E675F557064617414 +:106A10006553746179696E67506F73427953746519 +:106A200070000000000000000000000000000000F6 +:106A3000000000000000000000000000D506000873 +:106A40005008000853746179696E6753656E736905 +:106A50006E675F5361766553746179696E67506FD5 +:106A6000734279537465700000000000000000005C +:106A70000000000000000000000000000000000016 +:106A800000000000510800083C0A000853746179B6 +:106A9000696E6753656E73696E675F557064617484 +:106AA0006553746179696E67506F7332000000003E +:106AB00000000000000000000000000000000000D6 +:106AC0000000000000000000000000003D0A000877 +:106AD000480C000853746179696E6753656E736979 +:106AE0006E675F5361766553746179696E67506F45 +:106AF0007300000000000000000000000000000023 +:106B00000000000000000000000000000000000085 +:106B100000000000490C0008A00E000853746179C1 +:106B2000696E6753656E73696E675F5570646174F3 +:106B30006553746179696E67417265610000000098 +:106B40000000000000000000000000000000000045 +:106B5000000000000000000000000000A10E00087E +:106B6000540F000853746179696E6753656E7369D9 +:106B70006E675F5361766553746179696E674172C0 +:106B8000656100000000000000000000000000003F +:106B900000000000000000000000000000000000F5 +:106BA00000000000550F0008601000085374617960 +:106BB000696E6753656E73696E675F475053324BFA +:106BC000696C6F6D65746572000000000000000064 +:106BD00000000000000000000000000000000000B5 +:106BE000000000000000000000000000611000082C +:106BF0005411000853746179696E6753656E736947 +:106C00006E675F646567326465676D696E7365633F +:106C10000000000000000000000000000000000074 +:106C20000000000000000000000000000000000064 +:106C30000000000055110008BC1100085374617970 +:106C4000696E6753656E73696E675F497343686504 +:106C5000636B5265717565737443757272656E749A +:106C6000506F7300000000000000000000000000F2 +:106C7000000000000000000000000000BD1100083E +:106C8000C411000853746179696E6753656E736946 +:106C90006E675F4973436865636B53656E64506FDD +:106CA0006941636B436F6D6D616E640000000000AD +:106CB00000000000000000000000000000000000D4 +:106CC00000000000C5110008CC1100085374617960 +:106CD000696E6753656E73696E675F52657365743D +:106CE00041766753746179696E67506F7300000075 +:106CF0000000000000000000000000000000000094 +:106D0000000000000000000000000000CD1100089D +:106D10001412000853746179696E6753656E736964 +:106D20006E675F4765744E756D53746179696E6700 +:106D300041726561000000000000000000000000DA +:106D40000000000000000000000000000000000043 +:106D500000000000151200081C120008537461792D +:106D6000696E6753656E73696E675F5265736574AC +:106D70004E756D53746179696E674172656100008B +:106D80000000000000000000000000000000000003 +:106D90000000000000000000000000001D120008BC +:106DA0003A12000853746179696E6753656E7369AE +:106DB0006E675F47657453746179696E6741726588 +:106DC00061496E666F0000000000000000000000D6 +:106DD00000000000000000000000000000000000B3 +:106DE000000000003B120008521200085374617941 +:106DF000696E6753656E73696E675F436F6D70751B +:106E0000746554696D65446966666572656E63652F +:106E10000000000000000000000000000000000072 +:106E200000000000000000000000000053120008F5 +:106E30000413000853746179696E6753656E736952 +:106E40006E675F436F6D707570746554696D650032 +:106E50000000000000000000000000000000000032 +:106E60000000000000000000000000000000000022 +:106E70000000000005130008D01300085374617966 +:106E8000696E6753656E73696E675F436865636BB0 +:106E9000446966666572656E6365417453746179B1 +:106EA000696E67506F730000000000000000000072 +:106EB000000000000000000000000000D1130008E6 +:106EC0004414000853746179696E6753656E736981 +:106ED0006E675F466F726365645361766553746174 +:106EE00079696E6741726561000000000000000072 +:106EF0000000000000000000000000000000000092 +:106F000000000000451400087C14000853746179E7 +:106F1000696E6753656E73696E675F53657453740A +:106F20006179696E675374617475730000000000C5 +:106F30000000000000000000000000000000000051 +:106F40000000000000000000000000007D140008A8 +:106F50002C15000853746179696E6753656E736907 +:106F60006E675F506F736974696F6E54696D6532D7 +:106F700053797374656D54696D65000000000000FD +:106F80000000000000000000000000000000000001 +:106F9000000000002D150008681500085374617981 +:106FA000696E6753656E73696E675F436F6D707569 +:106FB00074654D6178474144697374616E6365001F +:106FC00000000000000000000000000000000000C1 +:106FD000000000000000000000000000691500082B +:106FE000D416000853746179696E6753656E7369CE +:106FF0006E675F436865636B55736572476F417277 +:107000006F756E64000000000000000000000000CA +:107010000000000000000000000000000000000070 +:1070200000000000D5160008641900085374617947 +:10703000696E6753656E73696E675F5365744375F8 +:1070400072416374697669747954797065000000DF +:107050000000000000000000000000000000000030 +:10706000000000000000000000000000651900089A +:107070006619000853746179696E6753656E7369A8 +:107080006E675F47657453746179696E67417265B5 +:1070900061496E4F7574537461746500000000009F +:1070A00000000000000000000000000000000000E0 +:1070B0000000000067190008AC19000853746179DA +:1070C000696E6753656E73696E675F53535F4D6199 +:1070D000696E0000000000000000000000000000D9 +:1070E00000000000000000000000000000000000A0 +:1070F000000000000000000000000000AD190008C2 +:107100005C2200086D656D7365740000000000006E +:10711000000000000000000000000000000000006F +:10712000000000000000000000000000000000005F +:10713000000000000000000000000000000000004F +:10714000000000005D220008702200084E564943EE +:107150005F53797374656D52657365740000000048 +:10716000000000000000000000000000000000001F +:10717000000000000000000000000000000000000F +:107180000000000000000000000000007122000864 +:107190008C22000853485F48415F496E69746961F9 +:1071A0006C697A6553656E736F7248756248414CBD +:1071B00000000000000000000000000000000000CF +:1071C00000000000000000000000000000000000BF +:1071D000000000008D220008A222000853485F48EA +:1071E000415F47657453656E736F724875624841BD +:1071F0004C506F696E746572000000000000000062 +:10720000000000000000000000000000000000007E +:10721000000000000000000000000000A3220008A1 +:10722000A822000853485F48415F496E697469614C +:107230006C697A6553656E736F7248756200000001 +:10724000000000000000000000000000000000003E +:10725000000000000000000000000000000000002E +:1072600000000000A9220008FA22000853485F48E5 +:10727000415F496E697469616C697A6553797374A9 +:10728000656D436C6F636B00000000000000000040 +:1072900000000000000000000000000000000000EE +:1072A000000000000000000000000000FB220008B9 +:1072B0000223000853485F48415F496E6974696161 +:1072C0006C697A654932435F4D6173746572000081 +:1072D00000000000000000000000000000000000AE +:1072E000000000000000000000000000000000009E +:1072F00000000000032300081C23000853485F48D7 +:10730000415F496E697469616C697A654932435FAE +:10731000536C617665000000000000000000000072 +:10732000000000000000000000000000000000005D +:107330000000000000000000000000001D23000805 +:107340002A23000853485F48415F496E69746961A8 +:107350006C697A6552544300000000000000000090 +:10736000000000000000000000000000000000001D +:10737000000000000000000000000000000000000D +:10738000000000002B2300085C23000853485F48DE +:10739000415F536574525443000000000000000038 +:1073A00000000000000000000000000000000000DD +:1073B00000000000000000000000000000000000CD +:1073C0000000000000000000000000005D23000835 +:1073D0006623000853485F48415F536574537973CF +:1073E00074656D436C6F636B00000000000000006B +:1073F000000000000000000000000000000000008D +:10740000000000000000000000000000000000007C +:1074100000000000672300087623000853485F48F7 +:10742000415F4368616E676544796D616E6963466B +:1074300072657175656E63790000000000000000E0 +:10744000000000000000000000000000000000003C +:10745000000000000000000000000000772300088A +:10746000A423000853485F48415F44656275675034 +:1074700072696E74660000000000000000000000E9 +:1074800000000000000000000000000000000000FC +:1074900000000000000000000000000000000000EC +:1074A00000000000A52300085824000853485F4846 +:1074B000415F53656C6563745F49324300000000AF +:1074C00000000000000000000000000000000000BC +:1074D00000000000000000000000000000000000AC +:1074E0000000000000000000000000005924000817 +:1074F0007024000873616E6974795F636865636BFB +:10750000000000000000000000000000000000007B +:10751000000000000000000000000000000000006B +:10752000000000000000000000000000000000005B +:1075300000000000712400089024000853485F48B0 +:10754000415F4932435F4D61737465725F57726981 +:107550007465000000000000000000000000000052 +:10756000000000000000000000000000000000001B +:10757000000000000000000000000000912400084E +:107580004425000853485F48415F4932435F4D61DD +:10759000737465725F526561640000000000000052 +:1075A00000000000000000000000000000000000DB +:1075B00000000000000000000000000000000000CB +:1075C00000000000452500080826000853485F48D1 +:1075D000415F53656E736F724472697665725F497D +:1075E0006E69740000000000000000000000000050 +:1075F000000000000000000000000000000000008B +:107600000000000000000000000000000926000843 +:107610000C26000853485F48415F436865636B531D +:10762000656E736F7243616E4265576F726B696E00 +:1076300067000000000000000000000000000000E3 +:10764000000000000000000000000000000000003A +:10765000000000000D2600087226000853485F480D +:10766000415F496E697469616C697A654C6F7750E6 +:107670006F7765724D6F64650000000000000000C8 +:1076800000000000000000000000000000000000FA +:107690000000000000000000000000007326000849 +:1076A0007626000853485F48415F456E7465724C0A +:1076B0006F77506F7765724D6F6465000000000052 +:1076C00000000000000000000000000000000000BA +:1076D00000000000000000000000000000000000AA +:1076E00000000000772600087A26000853485F480B +:1076F000415F44656C61795F6D73000000000000BC +:107700000000000000000000000000000000000079 +:107710000000000000000000000000000000000069 +:107720000000000000000000000000007B260008B0 +:10773000F626000853485F48415F53657441505333 +:107740006C6565705374617475730000000000000F +:107750000000000000000000000000000000000029 +:107760000000000000000000000000000000000019 +:1077700000000000F7260008F826000853485F487C +:10778000415F446F536C65657057616B65546173FD +:107790006B0000000000000000000000000000007E +:1077A00000000000000000000000000000000000D9 +:1077B000000000000000000000000000F9260008A2 +:1077C0006827000853485F48415F5365745F4770FE +:1077D000696F50696E0000000000000000000000AA +:1077E0000000000000000000000000000000000099 +:1077F0000000000000000000000000000000000089 +:1078000000000000692700086C27000853485F4803 +:10781000415F436C6561725F4770696F50696E00CC +:107820000000000000000000000000000000000058 +:107830000000000000000000000000000000000048 +:107840000000000000000000000000006D2700089C +:107850007027000853485F48415F5365744578744A +:1078600065726E616C494E543100000000000000EA +:107870000000000000000000000000000000000008 +:1078800000000000000000000000000000000000F8 +:1078900000000000712700087627000853485F4861 +:1078A000415F436C65617245787465726E616C49C5 +:1078B0004E543100000000000000000000000000F5 +:1078C00000000000000000000000000000000000B8 +:1078D0000000000000000000000000007727000802 +:1078E0007C27000853485F48415F536574457874AE +:1078F00065726E616C494E54320000000000000059 +:107900000000000000000000000000000000000077 +:107910000000000000000000000000000000000067 +:10792000000000007D2700088227000853485F48B8 +:10793000415F436C65617245787465726E616C4934 +:107940004E54320000000000000000000000000063 +:107950000000000000000000000000000000000027 +:107960000000000000000000000000008327000865 +:107970008827000853485F48415F45787465726EF8 +:10798000616C5F494E545F436F6E6669670000002B +:1079900000000000000000000000000000000000E7 +:1079A00000000000000000000000000000000000D7 +:1079B00000000000892700088C27000853485F4812 +:1079C000415F536574416363656C65726F6D657487 +:1079D0006572494E54537461747573000000000061 +:1079E0000000000000000000000000000000000097 +:1079F0000000000000000000000000008D270008CB +:107A00009827000853485F48415F53657453797362 +:107A100074656D54696D6500000000000000000091 +:107A20000000000000000000000000000000000056 +:107A30000000000000000000000000000000000046 +:107A400000000000992700087628000853485F4886 +:107A5000415F417070656E6453797374656D5469EC +:107A60006D655469636B00000000000000000000B9 +:107A70000000000000000000000000000000000006 +:107A8000000000000000000000000000772800084F +:107A9000DE28000853485F48415F47657453797397 +:107AA00074656D54696D6500000000000000000001 +:107AB00000000000000000000000000000000000C6 +:107AC00000000000000000000000000000000000B6 +:107AD00000000000DF280008E828000853485F483D +:107AE000415F53657453797374656D506F73697436 +:107AF000696F6E0000000000000000000000000040 +:107B00000000000000000000000000000000000075 +:107B1000000000000000000000000000E92800084C +:107B20008C29000853485F48415F47657453797357 +:107B300074656D506F736974696F6E0000000000AA +:107B40000000000000000000000000000000000035 +:107B50000000000000000000000000000000000025 +:107B6000000000008D290008302A00085F5F69616D +:107B7000725F756E616C69676E65645F5F5F61659A +:107B80006162695F6D656D637079000000000000DF +:107B900000000000000000000000000000000000E5 +:107BA000000000000000000000000000312A000872 +:107BB000502A00085F5F6961725F756E616C69676A +:107BC0006E65645F5F5F61656162695F6D656D636E +:107BD0007079380000000000000000000000000084 +:107BE0000000000000000000000000000000000095 +:107BF00000000000512A0008512A00085F5F6961F7 +:107C0000725F756E616C69676E65645F5F5F616509 +:107C10006162695F6D656D6370793400000000001A +:107C20000000000000000000000000000000000054 +:107C3000000000000000000000000000512A0008C1 +:107C4000A62A00085F5F6961725F7A65726F5F697B +:107C50006E697433000000000000000000000000A6 +:107C60000000000000000000000000000000000014 +:107C70000000000000000000000000000000000004 +:107C800000000000A72A0008C82A00085F5F61659D +:107C90006162695F6364636D70657100000000007C +:107CA00000000000000000000000000000000000D4 +:107CB00000000000000000000000000000000000C4 +:107CC000000000000000000000000000C92A0008B9 +:107CD000E82A00085F5F61656162695F64737562CD +:107CE0000000000000000000000000000000000094 +:107CF0000000000000000000000000000000000084 +:107D00000000000000000000000000000000000073 +:107D100000000000E92A0008FC2A00085F5F696192 +:107D2000725F6473756200000000000000000000D4 +:107D30000000000000000000000000000000000043 +:107D40000000000000000000000000000000000033 +:107D5000000000000000000000000000FD2A0008F4 +:107D60000E2B00085F5F6961725F64737562537404 +:107D700061727400000000000000000000000000BC +:107D800000000000000000000000000000000000F3 +:107D900000000000000000000000000000000000E3 +:107DA000000000000F2B0008682C00085F5F616571 +:107DB0006162695F646D756C000000000000000086 +:107DC00000000000000000000000000000000000B3 +:107DD00000000000000000000000000000000000A3 +:107DE000000000000000000000000000692C0008F6 +:107DF0000A2E00085F534E50726F75740000000029 +:107E00000000000000000000000000000000000072 +:107E10000000000000000000000000000000000062 +:107E20000000000000000000000000000000000052 +:107E3000000000000B2E0008242E00085F5F616523 +:107E40006162695F6364636D706C650000000000CF +:107E50000000000000000000000000000000000022 +:107E60000000000000000000000000000000000012 +:107E7000000000000000000000000000252E0008A7 +:107E8000522E00085F5350726F757400000000009E +:107E900000000000000000000000000000000000E2 +:107EA00000000000000000000000000000000000D2 +:107EB00000000000000000000000000000000000C2 +:107EC00000000000532E00085C2E00085F5F616513 +:107ED0006162695F69326400000000000000000018 +:107EE0000000000000000000000000000000000092 +:107EF0000000000000000000000000000000000082 +:107F00000000000000000000000000005D2E0008DE +:107F1000702E00085F5F61656162695F7569326438 +:107F20000000000000000000000000000000000051 +:107F30000000000000000000000000000000000041 +:107F40000000000000000000000000000000000031 +:107F500000000000712E0008742E00085F5F696148 +:107F6000725F7569326400000000000000000000CC +:107F70000000000000000000000000000000000001 +:107F800000000000000000000000000000000000F1 +:107F9000000000000000000000000000752E000836 +:107FA0008C2E00085F5F61656162695F6461646473 +:107FB00000000000000000000000000000000000C1 +:107FC00000000000000000000000000000000000B1 +:107FD00000000000000000000000000000000000A1 +:107FE000000000008D2E0008A02E00085F5F696170 +:107FF000725F646164640000000000000000000023 +:108000000000000000000000000000000000000070 +:108010000000000000000000000000000000000060 +:10802000000000000000000000000000A12E000879 +:10803000742F00085F5F61656162695F64646976DF +:108040000000000000000000000000000000000030 +:108050000000000000000000000000000000000020 +:108060000000000000000000000000000000000010 +:1080700000000000752F0008BC3100085F5F6961D7 +:10808000725F7666705F73717274000000000000AA +:1080900000000000000000000000000000000000E0 +:1080A00000000000000000000000000000000000D0 +:1080B000000000000000000000000000BD310008CA +:1080C000BD3100085F5F6961725F7666705F7371D2 +:1080D00072746C000000000000000000000000004E +:1080E0000000000000000000000000000000000090 +:1080F0000000000000000000000000000000000080 +:1081000000000000BD310008CC31000873717274AA +:10811000000000000000000000000000000000005F +:10812000000000000000000000000000000000004F +:10813000000000000000000000000000000000003F +:10814000000000000000000000000000CD31000829 +:10815000CD3100085F5F6961725F737172740000F6 +:10816000000000000000000000000000000000000F +:1081700000000000000000000000000000000000FF +:1081800000000000000000000000000000000000EF +:1081900000000000CD310008CD3100087371727409 +:1081A0006C00000000000000000000000000000063 +:1081B00000000000000000000000000000000000BF +:1081C00000000000000000000000000000000000AF +:1081D000000000000000000000000000CD31000899 +:1081E000BC3200085F5F61656162695F6432697A11 +:1081F000000000000000000000000000000000007F +:10820000000000000000000000000000000000006E +:10821000000000000000000000000000000000005E +:1082200000000000BD320008E83200085F5F6165B1 +:108230006162695F643275697A00000000000000C5 +:10824000000000000000000000000000000000002E +:10825000000000000000000000000000000000001E +:10826000000000000000000000000000E9320008EB +:10827000F43200085F5F6961725F643275697A0089 +:1082800000000000000000000000000000000000EE +:1082900000000000000000000000000000000000DE +:1082A00000000000000000000000000000000000CE +:1082B00000000000F5320008143300085F5F6961B8 +:1082C000725F4D656D736574000000000000000072 +:1082D000000000000000000000000000000000009E +:1082E000000000000000000000000000000000008E +:1082F000000000000000000000000000153300082E +:10830000153300085F5F61656162695F6D656D735C +:108310006574000000000000000000000000000084 +:10832000000000000000000000000000000000004D +:10833000000000000000000000000000000000003D +:1083400000000000153300081C3300085F5F6961FE +:10835000725F4D656D7365745F776F7264000000C6 +:10836000000000000000000000000000000000000D +:1083700000000000000000000000000000000000FD +:108380000000000000000000000000001D33000895 +:108390007C3300084D43555F496E697469616C69AF +:1083A0007A654750494F00000000000000000000BF +:1083B00000000000000000000000000000000000BD +:1083C00000000000000000000000000000000000AD +:1083D000000000007D330008D43400084D43555F91 +:1083E000496E697469616C697A65434F4D5F536585 +:1083F0006E736F72000000000000000000000000BB +:10840000000000000000000000000000000000006C +:10841000000000000000000000000000D53400084B +:10842000AA3500084D43555F496E697469616C69EE +:108430007A65434F4D5F415000000000000000008E +:10844000000000000000000000000000000000002C +:10845000000000000000000000000000000000001C +:1084600000000000AB350008103700084D43555F91 +:10847000496E697469616C697A6552544300000001 +:1084800000000000000000000000000000000000EC +:1084900000000000000000000000000000000000DC +:1084A000000000000000000000000000113700087C +:1084B0002A3800084D43555F496E697469616C69DB +:1084C0007A65455854490000000000000000000093 +:1084D000000000000000000000000000000000009C +:1084E000000000000000000000000000000000008C +:1084F000000000002B380008C83800084D43555FC5 +:10850000496E697469616C697A655F4765737475F2 +:10851000726545585449000000000000000000004A +:10852000000000000000000000000000000000004B +:10853000000000000000000000000000C938000832 +:10854000423900084D43555F496E697469616C6931 +:108550007A655F4144430000000000000000000015 +:10856000000000000000000000000000000000000B +:1085700000000000000000000000000000000000FB +:108580000000000043390008BA3900084D43555F28 +:108590004144435F52656164000000000000000038 +:1085A00000000000000000000000000000000000CB +:1085B00000000000000000000000000000000000BB +:1085C000000000000000000000000000BB390008AF +:1085D000E83900084D43555F4144435F436C6F7376 +:1085E0006500000000000000000000000000000026 +:1085F000000000000000000000000000000000007B +:10860000000000000000000000000000000000006A +:1086100000000000E9390008043A00084D43555FA6 +:108620005365745254430000000000000000000035 +:10863000000000000000000000000000000000003A +:10864000000000000000000000000000000000002A +:10865000000000000000000000000000053A0008D3 +:10866000903A00084D43555F4368616E67654479F1 +:108670006D616E69634672657175656E6379000040 +:1086800000000000000000000000000000000000EA +:1086900000000000000000000000000000000000DA +:1086A00000000000913A0008603C00084D43555F0F +:1086B00053657453797374656D436C6F636B00001D +:1086C00000000000000000000000000000000000AA +:1086D000000000000000000000000000000000009A +:1086E000000000000000000000000000613C0008E5 +:1086F000623C00084932435F44656C6179000000C8 +:108700000000000000000000000000000000000069 +:108710000000000000000000000000000000000059 +:108720000000000000000000000000000000000049 +:1087300000000000633C00086C3C00084932435FC5 +:1087400070726F766964655F65787472615F636C7F +:108750006F636B7300000000000000000000000069 +:108760000000000000000000000000000000000009 +:108770000000000000000000000000006D3C000848 +:108780002E3E00084932435F54494D454F55545FD2 +:108790005573657243616C6C6261636B000000002D +:1087A00000000000000000000000000000000000C9 +:1087B00000000000000000000000000000000000B9 +:1087C000000000002F3E0008663E00084932435F6B +:1087D00053756D4576656E74000000000000000062 +:1087E0000000000000000000000000000000000089 +:1087F0000000000000000000000000000000000079 +:10880000000000000000000000000000673E0008BB +:10881000903E00084D43555F434F4D5F53656E7367 +:108820006F725F57726974650000000000000000FD +:108830000000000000000000000000000000000038 +:108840000000000000000000000000000000000028 +:1088500000000000913E0008F03F00084D43555FC6 +:10886000434F4D5F53656E736F725F526561640075 +:1088700000000000000000000000000000000000F8 +:1088800000000000000000000000000000000000E8 +:10889000000000000000000000000000F13F0008A0 +:1088A000E84100084D43555F526573746F7265531C +:1088B000797374656D46726F6D4C6F77506F776525 +:1088C0007200000000000000000000000000000036 +:1088D0000000000000000000000000000000000098 +:1088E00000000000E9410008784200084D43555F50 +:1088F000496E697469616C697A654C6F77506F77FE +:1089000065724D6F6465000000000000000000000B +:108910000000000000000000000000000000000057 +:108920000000000000000000000000007942000884 +:10893000A44200084D43555F53746F704C6F7750DD +:108940006F7765724D6F64650000000000000000E5 +:108950000000000000000000000000000000000017 +:108960000000000000000000000000000000000007 +:1089700000000000A5420008324300084D43555F47 +:10898000456E7465724C6F77506F7765724D6F648A +:108990006500000000000000000000000000000072 +:1089A00000000000000000000000000000000000C7 +:1089B0000000000000000000000000003343000839 +:1089C0003A4300084D43555F5365745F4770696FC4 +:1089D000506F7274000000000000000000000000F2 +:1089E0000000000000000000000000000000000087 +:1089F0000000000000000000000000000000000077 +:108A0000000000003B4300086A4300084D43555FE7 +:108A10005365745F4770696F50696E000000000015 +:108A20000000000000000000000000000000000046 +:108A30000000000000000000000000000000000036 +:108A40000000000000000000000000006B43000870 +:108A50007E4300084D43555F436C6561725F47700C +:108A6000696F50696E000000000000000000000007 +:108A700000000000000000000000000000000000F6 +:108A800000000000000000000000000000000000E6 +:108A9000000000007F430008944300084D43555FE9 +:108AA00045787465726E616C5F494E545F436F6EBA +:108AB0006669670000000000000000000000000080 +:108AC00000000000000000000000000000000000A6 +:108AD00000000000000000000000000095430008B6 +:108AE000344400084D43555F436865636B50726FB3 +:108AF0007879494E54494F00000000000000000002 +:108B00000000000000000000000000000000000065 +:108B10000000000000000000000000000000000055 +:108B200000000000354400083E4400084D43555FF6 +:108B30004163746976617465000000000000000004 +:108B40000000000000000000000000000000000025 +:108B50000000000000000000000000000000000015 +:108B60000000000000000000000000003F4400087A +:108B7000624400084D43555F436865636B526573FB +:108B8000657400000000000000000000000000000C +:108B900000000000000000000000000000000000D5 +:108BA00000000000000000000000000000000000C5 +:108BB00000000000634400080C4500084D43555F69 +:108BC00053657452544354696D6500000000000001 +:108BD0000000000000000000000000000000000095 +:108BE0000000000000000000000000000000000085 +:108BF0000000000000000000000000000D4500081B +:108C00009C4500084D43555F476574525443546971 +:108C10006D65000000000000000000000000000082 +:108C20000000000000000000000000000000000044 +:108C30000000000000000000000000000000000034 +:108C4000000000009D450008044600086D6B746933 +:108C50006D65000000000000000000000000000042 +:108C60000000000000000000000000000000000004 +:108C700000000000000000000000000000000000F4 +:108C80000000000000000000000000000546000891 +:108C9000644600087274635F746D5F746F5F74691B +:108CA0006D650000000000000000000000000000F2 +:108CB00000000000000000000000000000000000B4 +:108CC00000000000000000000000000000000000A4 +:108CD0000000000065460008884600084D43555FC7 +:108CE00047657454696D655374616D7000000000D0 +:108CF0000000000000000000000000000000000074 +:108D00000000000000000000000000000000000063 +:108D1000000000000000000000000000894600087C +:108D2000704700085F5F61656162695F6D656D63D3 +:108D30006C72340000000000000000000000000021 +:108D40000000000000000000000000000000000023 +:108D50000000000000000000000000000000000013 +:108D600000000000714700087847000876736E70B5 +:108D700072696E74660000000000000000000000D0 +:108D800000000000000000000000000000000000E3 +:108D900000000000000000000000000000000000D3 +:108DA00000000000000000000000000079470008FB +:108DB000B44700087374726C656E00000000000018 +:108DC00000000000000000000000000000000000A3 +:108DD0000000000000000000000000000000000093 +:108DE0000000000000000000000000000000000083 +:108DF00000000000B5470008EC4700084F535F45EE +:108E000072726F720000000000000000000000009D +:108E10000000000000000000000000000000000052 +:108E20000000000000000000000000000000000042 +:108E3000000000000000000000000000ED470008F6 +:108E4000104800084F535F457863657074696F6E12 +:108E50000000000000000000000000000000000012 +:108E60000000000000000000000000000000000002 +:108E700000000000000000000000000000000000F2 +:108E800000000000114800081148000850656E6499 +:108E900053565F48616E646C65720000000000000C +:108EA00000000000000000000000000000000000C2 +:108EB00000000000000000000000000000000000B2 +:108EC0000000000000000000000000001148000841 +:108ED0006A4800084F535F53746172745461736B36 +:108EE0000000000000000000000000000000000082 +:108EF0000000000000000000000000000000000072 +:108F00000000000000000000000000000000000061 +:108F1000000000006B480008744800084F535F547D +:108F200061736B456E6473556E65787065637465C7 +:108F3000646C7900000000000000000000000000E8 +:108F40000000000000000000000000000000000021 +:108F5000000000000000000000000000754800084C +:108F6000764800084F535F537461727441534D004B +:108F700000000000000000000000000000000000F1 +:108F800000000000000000000000000000000000E1 +:108F900000000000000000000000000000000000D1 +:108FA00000000000774800089A4800084F535F53BC +:108FB0007769746368000000000000000000000092 +:108FC00000000000000000000000000000000000A1 +:108FD0000000000000000000000000000000000091 +:108FE0000000000000000000000000009B48000896 +:108FF000A84800084F535F537769746368416674EB +:1090000065724953525F436F727465784D34460000 +:109010000000000000000000000000000000000050 +:109020000000000000000000000000000000000040 +:1090300000000000A9480008B24800084F535F53E1 +:10904000776974636846726F6D496E740000000042 +:109050000000000000000000000000000000000010 +:109060000000000000000000000000000000000000 +:10907000000000000000000000000000B3480008ED +:10908000BA4800084F535F456E61626C65496E7463 +:1090900000000000000000000000000000000000D0 +:1090A00000000000000000000000000000000000C0 +:1090B00000000000000000000000000000000000B0 +:1090C00000000000BB480008C64800084F535F443A +:1090D000697361626C65496E7400000000000000F5 +:1090E0000000000000000000000000000000000080 +:1090F0000000000000000000000000000000000070 +:10910000000000000000000000000000C748000848 +:10911000F44800086D656D63707900000000000080 +:10912000000000000000000000000000000000003F +:10913000000000000000000000000000000000002F +:10914000000000000000000000000000000000001F +:1091500000000000F5480008004900085F5F6765EF +:10916000745F7850535200000000000000000000BF +:1091700000000000000000000000000000000000EF +:1091800000000000000000000000000000000000DF +:10919000000000000000000000000000014900087D +:1091A000064900084E5649435F53797374656D5202 +:1091B00065736574000000000000000000000000FE +:1091C000000000000000000000000000000000009F +:1091D000000000000000000000000000000000008F +:1091E0000000000007490008224900085F5F49733A +:1091F0004D61746368656442697473000000000027 +:10920000000000000000000000000000000000005E +:10921000000000000000000000000000000000004E +:1092200000000000000000000000000023490008CA +:109230007C4900085F5F4765744272616E636849EC +:109240006E737472756374696F6E50617474657255 +:109250006E000000000000000000000000000000A0 +:1092600000000000000000000000000000000000FE +:10927000000000007D490008864900085F5F4368E0 +:1092800065636B436F64655661696C6452616E67B8 +:109290006500000000000000000000000000000069 +:1092A00000000000000000000000000000000000BE +:1092B00000000000000000000000000087490008D6 +:1092C000984900085F5F4973507265764272616E1B +:1092D0006368496E737472756374696F6E00000021 +:1092E000000000000000000000000000000000007E +:1092F000000000000000000000000000000000006E +:109300000000000099490008E64900085F5F436FCC +:109310006E7665727441646472546F53796D626FD6 +:109320006C000000000000000000000000000000D1 +:10933000000000000000000000000000000000002D +:10934000000000000000000000000000E7490008E5 +:109350005A4A00085F5F46696C6C53796D626F6CA6 +:109360004E616D650000000000000000000000007C +:1093700000000000000000000000000000000000ED +:1093800000000000000000000000000000000000DD +:10939000000000005B4A0008AA4A00085F5F4765BA +:1093A0007443616C6C537461636B496E666F00004B +:1093B00000000000000000000000000000000000AD +:1093C000000000000000000000000000000000009D +:1093D000000000000000000000000000AB4A000890 +:1093E000FC4A00085F5F4D616B654661756C7443B4 +:1093F000616C6C537461636B496E666F00000000B2 +:10940000000000000000000000000000000000005C +:10941000000000000000000000000000000000004C +:1094200000000000FD4A0008744B00085F5F57729F +:109430006974654D756C746942797465000000004B +:10944000000000000000000000000000000000001C +:10945000000000000000000000000000000000000C +:10946000000000000000000000000000754B000834 +:10947000C04B00085F5F577269746543616C6C5341 +:109480007461636B496E666F0000000000000000AD +:1094900000000000000000000000000000000000CC +:1094A00000000000000000000000000000000000BC +:1094B00000000000C14B0008644C00085F5F53616E +:1094C00076654661756C7450657269436F6E74653C +:1094D00078740000000000000000000000000000A0 +:1094E000000000000000000000000000000000007C +:1094F000000000000000000000000000654C0008B3 +:10950000184D00085F5F536176654661756C744362 +:109510006F7265436F6E7465787400000000000020 +:10952000000000000000000000000000000000003B +:10953000000000000000000000000000000000002B +:1095400000000000194D0008A44D0008437261732B +:10955000685F44756D705F536176655F4C6F67003F +:1095600000000000000000000000000000000000FB +:1095700000000000000000000000000000000000EB +:10958000000000000000000000000000A54D0008E1 +:10959000D24D000843726173685F44756D705F530C +:1095A000746F72655F50726F6365737300000000C3 +:1095B00000000000000000000000000000000000AB +:1095C000000000000000000000000000000000009B +:1095D00000000000D34D00085C4E00084372617328 +:1095E000685F44756D705F464C4153485F4552411A +:1095F00053450000000000000000000000000000D3 +:10960000000000000000000000000000000000005A +:109610000000000000000000000000005D4E000897 +:10962000944E000843726173685F44756D705F53B8 +:1096300065745F464C4147000000000000000000D8 +:10964000000000000000000000000000000000001A +:10965000000000000000000000000000000000000A +:1096600000000000954E0008044F0008437261732B +:10967000685F44756D705F436C6561725F464C4115 +:109680004700000000000000000000000000000093 +:1096900000000000000000000000000000000000CA +:1096A000000000000000000000000000054F00085E +:1096B000204F000843726173685F44756D705F43AB +:1096C0006865636B5F464C41470000000000000086 +:1096D000000000000000000000000000000000008A +:1096E000000000000000000000000000000000007A +:1096F00000000000214F0008344F000843726173DE +:10970000685F44756D705F457863657074696F6EEE +:109710005F47656E657261746F7200000000000043 +:109720000000000000000000000000000000000039 +:10973000000000000000000000000000354F00089D +:10974000564F000843726173685F44756D705F45E2 +:109750007863657074696F6E5F47656E657261747A +:109760006F723200000000000000000000000000E6 +:1097700000000000000000000000000000000000E9 +:1097800000000000574F0008624F000843726173E9 +:10979000685F44756D705F53544152545F50524F2F +:1097A000434553530000000000000000000000008B +:1097B00000000000000000000000000000000000A9 +:1097C000000000000000000000000000634F0008DF +:1097D000D04F000843726173685F44756D705F44D9 +:1097E000554D4D595F50524F4345535300000000B3 +:1097F0000000000000000000000000000000000069 +:109800000000000000000000000000000000000058 +:1098100000000000D14F0008EE4F00084372617352 +:10982000685F44756D705F456E61626C654261632F +:109830006B557052656769737465720000000000B3 +:109840000000000000000000000000000000000018 +:10985000000000000000000000000000EF4F0008C2 +:109860000C50000843726173685F44756D705F440B +:10987000697361626C654261636B557052656769BB +:10988000737465720000000000000000000000001A +:1098900000000000000000000000000000000000C8 +:1098A000000000000D5000082A5000084372617348 +:1098B000685F44756D705F436865636B4261636B9D +:1098C000557052656769737465720000000000008E +:1098D0000000000000000000000000000000000088 +:1098E0000000000000000000000000002B500008F5 +:1098F000545100085F4F535F446F52520000000004 +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:109920000000000000000000000000000000000037 +:109930000000000055510008D05100085F546963D1 +:109940006B53746570000000000000000000000010 +:109950000000000000000000000000000000000007 +:1099600000000000000000000000000000000000F7 +:10997000000000000000000000000000D1510008BD +:10998000505200085F436865636B44656C6179738E +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B00000000000000000000000000000000000A7 +:1099C0000000000051520008C85200084F535F4386 +:1099D00068616E67655461736B5F564650000000A6 +:1099E0000000000000000000000000000000000077 +:1099F0000000000000000000000000000000000067 +:109A0000000000000000000000000000C952000833 +:109A1000A85400084F535F417373657274495352E1 +:109A20004F725461736B00000000000000000000E2 +:109A30000000000000000000000000000000000026 +:109A40000000000000000000000000000000000016 +:109A500000000000A9540008F85400084F535F416B +:109A600073736572745461736B4D6F6465000000AD +:109A700000000000000000000000000000000000E6 +:109A800000000000000000000000000000000000D6 +:109A9000000000000000000000000000F954000871 +:109AA000425500084F535F417373657274435055BC +:109AB000496E4953524D6F6465000000000000007C +:109AC0000000000000000000000000000000000096 +:109AD0000000000000000000000000000000000086 +:109AE00000000000435500087A5500084F535F4CB2 +:109AF00065617665526567696F6E00000000000061 +:109B00000000000000000000000000000000000055 +:109B10000000000000000000000000000000000045 +:109B20000000000000000000000000007B5500085D +:109B3000F25500084F535F4D616B655461736B5272 +:109B40006561647900000000000000000000000072 +:109B50000000000000000000000000000000000005 +:109B600000000000000000000000000000000000F5 +:109B700000000000F3550008B05600084F535F493D +:109B80006E736572745461736B0000000000000016 +:109B900000000000000000000000000000000000C5 +:109BA00000000000000000000000000000000000B5 +:109BB000000000000000000000000000B156000896 +:109BC000265700084F535F4465616374697661747A +:109BD00065640000000000000000000000000000BC +:109BE0000000000000000000000000000000000075 +:109BF0000000000000000000000000000000000065 +:109C000000000000275700085E5700084F535F49C7 +:109C10006E69744B65726E5F56465000000000001E +:109C20000000000000000000000000000000000034 +:109C30000000000000000000000000000000000024 +:109C40000000000000000000000000005F57000856 +:109C5000B05700085F5F6C6973745F6164640000F3 +:109C600000000000000000000000000000000000F4 +:109C700000000000000000000000000000000000E4 +:109C800000000000000000000000000000000000D4 +:109C900000000000B1570008BA5700086C697374DF +:109CA0005F6164640000000000000000000000002C +:109CB00000000000000000000000000000000000A4 +:109CC0000000000000000000000000000000000094 +:109CD000000000000000000000000000BB5700086A +:109CE000BE5700085F5F6C6973745F64656C000049 +:109CF0000000000000000000000000000000000064 +:109D00000000000000000000000000000000000053 +:109D10000000000000000000000000000000000043 +:109D200000000000BF570008C45700086C69737436 +:109D30005F64656C0000000000000000000000008F +:109D40000000000000000000000000000000000013 +:109D50000000000000000000000000000000000003 +:109D6000000000000000000000000000C5570008CF +:109D7000CA57000866696E645F667265715F636CDE +:109D800069656E7400000000000000000000000023 +:109D900000000000000000000000000000000000C3 +:109DA00000000000000000000000000000000000B3 +:109DB00000000000CB5700088258000864656C5F03 +:109DC000667265715F636C69656E74000000000007 +:109DD0000000000000000000000000000000000083 +:109DE0000000000000000000000000000000000073 +:109DF0000000000000000000000000008358000880 +:109E0000E45800086164645F667265715F636C6941 +:109E1000656E7400000000000000000000000000FB +:109E20000000000000000000000000000000000032 +:109E30000000000000000000000000000000000022 +:109E400000000000E55800086659000872656D6F53 +:109E500076655F667265715F636C69656E7400003C +:109E600000000000000000000000000000000000F2 +:109E700000000000000000000000000000000000E2 +:109E8000000000000000000000000000675900080A +:109E9000EE59000873686F756C645F736B697000CE +:109EA00000000000000000000000000000000000B2 +:109EB00000000000000000000000000000000000A2 +:109EC0000000000000000000000000000000000092 +:109ED00000000000EF5900082A5A00086166746506 +:109EE000725F6F70656E5F64656661756C740000AB +:109EF0000000000000000000000000000000000062 +:109F00000000000000000000000000000000000051 +:109F10000000000000000000000000002B5A0008B4 +:109F20004C5A000861667465725F636C6F73655F9D +:109F300064656661756C740000000000000000003C +:109F40000000000000000000000000000000000011 +:109F50000000000000000000000000000000000001 +:109F6000000000004D5A00086A5A00086E756C6CBB +:109F70005F6F7065726174696F6E000000000000B1 +:109F800000000000000000000000000000000000D1 +:109F900000000000000000000000000000000000C1 +:109FA0000000000000000000000000006B5A0008E4 +:109FB0006E5A0008646F5F6164645F72617465006B +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE0000000000000000000000000000000000071 +:109FF000000000006F5A0008A85A0008646F5F72E2 +:10A00000656D6F76655F7261746500000000000029 +:10A010000000000000000000000000000000000040 +:10A020000000000000000000000000000000000030 +:10A03000000000000000000000000000A95A000815 +:10A04000E25A00085F73656C6563745F73616D70DD +:10A050006C696E6700000000000000000000000056 +:10A0600000000000000000000000000000000000F0 +:10A0700000000000000000000000000000000000E0 +:10A0800000000000E35A0008025B00085F73656C83 +:10A090006563745F73656E64696E6700000000003D +:10A0A00000000000000000000000000000000000B0 +:10A0B00000000000000000000000000000000000A0 +:10A0C000000000000000000000000000035B00082A +:10A0D0002A5B000873656C6563745F64656661750F +:10A0E0006C74000000000000000000000000000090 +:10A0F0000000000000000000000000000000000060 +:10A10000000000000000000000000000000000004F +:10A11000000000002B5B0008325B00086164645F94 +:10A12000726174655F64656661756C74000000003F +:10A13000000000000000000000000000000000001F +:10A14000000000000000000000000000000000000F +:10A15000000000000000000000000000335B000869 +:10A160003E5B000872656D6F76655F726174655F56 +:10A1700064656661756C74000000000000000000FA +:10A1800000000000000000000000000000000000CF +:10A1900000000000000000000000000000000000BF +:10A1A000000000003F5B00084A5B00086265666FC4 +:10A1B00072655F6F70656E5F636C6F73655F61631F +:10A1C000630000000000000000000000000000002C +:10A1D000000000000000000000000000000000007F +:10A1E0000000000000000000000000004B5B0008C1 +:10A1F0005A5B00086164645F726174655F616363E8 +:10A200005F696E74000000000000000000000000A4 +:10A21000000000000000000000000000000000003E +:10A22000000000000000000000000000000000002E +:10A23000000000005B5B0008645B000872656D6FE6 +:10A2400076655F726174655F6163635F696E7400F8 +:10A2500000000000000000000000000000000000FE +:10A2600000000000000000000000000000000000EE +:10A27000000000000000000000000000655B000816 +:10A280006E5B00086265666F72655F6F70656E5F1A +:10A290006163745F696E74000000000000000000DC +:10A2A00000000000000000000000000000000000AE +:10A2B000000000000000000000000000000000009E +:10A2C000000000006F5B0008865B00086166746533 +:10A2D000725F636C6F73655F6163745F696E740056 +:10A2E000000000000000000000000000000000006E +:10A2F000000000000000000000000000000000005E +:10A30000000000000000000000000000875B000863 +:10A31000A25B00086164645F726174655F74656D5F +:10A3200070000000000000000000000000000000BD +:10A33000000000000000000000000000000000001D +:10A34000000000000000000000000000000000000D +:10A3500000000000A35B0008B65B000872656D6F2B +:10A3600076655F726174655F74656D7000000000F2 +:10A3700000000000000000000000000000000000DD +:10A3800000000000000000000000000000000000CD +:10A39000000000000000000000000000B75B0008A3 +:10A3A000CA5B000873656C6563745F74656D7000EB +:10A3B000000000000000000000000000000000009D +:10A3C000000000000000000000000000000000008D +:10A3D000000000000000000000000000000000007D +:10A3E00000000000CB5B00081E5C0008616674651D +:10A3F000725F6F70656E5F74656D700000000000C5 +:10A40000000000000000000000000000000000004C +:10A41000000000000000000000000000000000003C +:10A420000000000000000000000000001F5C0008A9 +:10A43000285C00086164645F726174655F626172C8 +:10A440006F0000000000000000000000000000009D +:10A4500000000000000000000000000000000000FC +:10A4600000000000000000000000000000000000EC +:10A4700000000000295C0008365C000872656D6F02 +:10A4800076655F726174655F6261726F00000000E3 +:10A4900000000000000000000000000000000000BC +:10A4A00000000000000000000000000000000000AC +:10A4B000000000000000000000000000375C000801 +:10A4C000445C000873656C6563745F6261726F0061 +:10A4D000000000000000000000000000000000007C +:10A4E000000000000000000000000000000000006C +:10A4F000000000000000000000000000000000005C +:10A5000000000000455C0008A25C000861667465FC +:10A51000725F6F70656E5F6261726F0000000000B5 +:10A52000000000000000000000000000000000002B +:10A53000000000000000000000000000000000001B +:10A54000000000000000000000000000A35C000804 +:10A55000BC5C000861667465725F6F70656E5F6CED +:10A56000696768740000000000000000000000003F +:10A5700000000000000000000000000000000000DB +:10A5800000000000000000000000000000000000CB +:10A5900000000000BD5C0008CE5C00086164645FE0 +:10A5A000726174655F70726F78790000000000005E +:10A5B000000000000000000000000000000000009B +:10A5C000000000000000000000000000000000008B +:10A5D000000000000000000000000000CF5C000848 +:10A5E000D85C000872656D6F76655F726174655F37 +:10A5F00070726F7879000000000000000000000019 +:10A60000000000000000000000000000000000004A +:10A61000000000000000000000000000000000003A +:10A6200000000000D95C0008E25C00086166746507 +:10A63000725F6F70656E5F70726F787900000000F6 +:10A64000000000000000000000000000000000000A +:10A6500000000000000000000000000000000000FA +:10A66000000000000000000000000000E35C0008A3 +:10A67000F45C000861667465725F636C6F73655F9C +:10A6800070726F7879000000000000000000000088 +:10A6900000000000000000000000000000000000BA +:10A6A00000000000000000000000000000000000AA +:10A6B00000000000F55C0008085D0008726567692D +:10A6C000737465725F73656E736F720000000000D3 +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000000000006A +:10A6F000000000000000000000000000095D0008EC +:10A70000DE5F000853485F53435F447269766572A9 +:10A710005F46756E6374696F6E5F496E69740000A1 +:10A720000000000000000000000000000000000029 +:10A730000000000000000000000000000000000019 +:10A7400000000000DF5F00086461000853485F53A9 +:10A7500053504E4D5F476574476C616E6365566933 +:10A760006577537461747573000000000000000089 +:10A7700000000000000000000000000000000000D9 +:10A7800000000000000000000000000065610008FB +:10A790006C61000853485F53455F47657453656EAD +:10A7A000736F7273000000000000000000000000E2 +:10A7B0000000000000000000000000000000000099 +:10A7C0000000000000000000000000000000000089 +:10A7D000000000006D610008386200087369676E50 +:10A7E000616C5F6576656E7400000000000000001B +:10A7F0000000000000000000000000000000000059 +:10A800000000000000000000000000000000000048 +:10A810000000000000000000000000003962000895 +:10A820009862000874785F6275666665725F6F761D +:10A830006572666C6F770000000000000000000089 +:10A840000000000000000000000000000000000008 +:10A8500000000000000000000000000000000000F8 +:10A860000000000099620008A86200087374616D1E +:10A87000705F61705F73796E635F74696D65737427 +:10A88000616D70000000000000000000000000008A +:10A8900000000000000000000000000000000000B8 +:10A8A000000000000000000000000000A962000895 +:10A8B000C06200087374616D705F74696D65737454 +:10A8C000616D70000000000000000000000000004A +:10A8D0000000000000000000000000000000000078 +:10A8E0000000000000000000000000000000000068 +:10A8F00000000000C1620008CE6200086765745F56 +:10A9000063757272656E745F74696D657374616D81 +:10A9100070000000000000000000000000000000C7 +:10A920000000000000000000000000000000000027 +:10A93000000000000000000000000000CF620008DE +:10A94000D6620008617070656E645F74696D6573CE +:10A9500074616D7000000000000000000000000045 +:10A9600000000000000000000000000000000000E7 +:10A9700000000000000000000000000000000000D7 +:10A9800000000000D7620008F26200086170706584 +:10A990006E645F6D6574615F6461746100000000E6 +:10A9A00000000000000000000000000000000000A7 +:10A9B0000000000000000000000000000000000097 +:10A9C000000000000000000000000000F36200082A +:10A9D00014630008617070656E645F627970617302 +:10A9E000735F6461746100000000000000000000FB +:10A9F0000000000000000000000000000000000057 +:10AA00000000000000000000000000000000000046 +:10AA10000000000015630008826300086170706523 +:10AA20006E645F6279706173735F646174615F7398 +:10AA3000657269616C000000000000000000000009 +:10AA40000000000000000000000000000000000006 +:10AA50000000000000000000000000008363000808 +:10AA6000AE630008617070656E645F6279706173D7 +:10AA7000735F646174615F726F756E6400000000E3 +:10AA800000000000000000000000000000000000C6 +:10AA900000000000000000000000000000000000B6 +:10AAA00000000000AF630008D663000870726F6397 +:10AAB0006565645F746F5F6E657874000000000008 +:10AAC0000000000000000000000000000000000086 +:10AAD0000000000000000000000000000000000076 +:10AAE000000000000000000000000000D763000824 +:10AAF000F26300087061636B5F62617463685F6436 +:10AB0000617461000000000000000000000000000F +:10AB10000000000000000000000000000000000035 +:10AB20000000000000000000000000000000000025 +:10AB300000000000F36300082A640008666C757367 +:10AB4000685F62617463685F646174610000000043 +:10AB500000000000000000000000000000000000F5 +:10AB600000000000000000000000000000000000E5 +:10AB70000000000000000000000000002B6400083E +:10AB800048640008636F6C6C6563745F73656E7313 +:10AB90006F725F64617461000000000000000000DB +:10ABA00000000000000000000000000000000000A5 +:10ABB0000000000000000000000000000000000095 +:10ABC000000000004964000888650008636F6C6C31 +:10ABD0006563745F6279706173735F64617461004F +:10ABE0000000000000000000000000000000000065 +:10ABF0000000000000000000000000000000000055 +:10AC0000000000000000000000000000896500084E +:10AC1000A865000853485F48415F557064617465DA +:10AC200050726F78696D69747953656E736F72498C +:10AC30004E544461746100000000000000000000F8 +:10AC40000000000000000000000000000000000004 +:10AC500000000000A96500081A660008696E6974A2 +:10AC600069616C697A655F6C69625F68656164657A +:10AC70007200000000000000000000000000000062 +:10AC800000000000000000000000000000000000C4 +:10AC90000000000000000000000000001B6600082B +:10ACA00024660008696E736572745F6C69625F6820 +:10ACB0006561646572000000000000000000000093 +:10ACC0000000000000000000000000000000000084 +:10ACD0000000000000000000000000000000000074 +:10ACE000000000002566000852660008636F6C6C67 +:10ACF0006563745F6C6962726172795F64617461CB +:10AD00000000000000000000000000000000000043 +:10AD10000000000000000000000000000000000033 +:10AD20000000000000000000000000005366000862 +:10AD3000C86D0008636F6C6C6563745F64656275F1 +:10AD4000675F6461746100000000000000000000A3 +:10AD500000000000000000000000000000000000F3 +:10AD600000000000000000000000000000000000E3 +:10AD700000000000C96D0008766E00086368656316 +:10AD80006B5F74696D655F73796E6300000000002E +:10AD900000000000000000000000000000000000B3 +:10ADA00000000000000000000000000000000000A3 +:10ADB000000000000000000000000000776E0008A6 +:10ADC0009C6E0008666C7573685F74785F62756668 +:10ADD0006665720000000000000000000000000036 +:10ADE0000000000000000000000000000000000063 +:10ADF0000000000000000000000000000000000053 +:10AE0000000000009D6E0008C46E000873656E644B +:10AE10005F6269675F72656164790000000000002D +:10AE20000000000000000000000000000000000022 +:10AE30000000000000000000000000000000000012 +:10AE4000000000000000000000000000C56E0008C7 +:10AE5000086F000873656E645F72657365745F7375 +:10AE600069676E616C0000000000000000000000D7 +:10AE700000000000000000000000000000000000D2 +:10AE800000000000000000000000000000000000C2 +:10AE900000000000096F00082E6F000873656E64E3 +:10AEA0005F74656D705F6C6F677300000000000079 +:10AEB0000000000000000000000000000000000092 +:10AEC0000000000000000000000000000000000082 +:10AED0000000000000000000000000002F6F0008CC +:10AEE000AC6F000870726F636573735F777269741B +:10AEF000655F636F6D6D616E6400000000000000AF +:10AF00000000000000000000000000000000000041 +:10AF10000000000000000000000000000000000031 +:10AF200000000000AD6F0008F071000870726F63E0 +:10AF30006573735F726561645F636F6D6D616E648D +:10AF40000000000000000000000000000000000001 +:10AF500000000000000000000000000000000000F1 +:10AF6000000000000000000000000000F171000877 +:10AF7000607C000853485F4C4D5F436F6D6D6F6E92 +:10AF800046756E6374696F6E5F4765744C69627273 +:10AF90006172794D6574686F64416E64566172695F +:10AFA00061626C65496E666F5461626C6500000099 +:10AFB00000000000617C0008647C000853485F4C7E +:10AFC0004D5F53656E736F724D616E6167657200A0 +:10AFD0000000000000000000000000000000000071 +:10AFE0000000000000000000000000000000000061 +:10AFF000000000000000000000000000657C000868 +:10B00000227D000853485F4C4D5F436F6D6D6F6E3E +:10B0100046756E6374696F6E5F47657443757272CF +:10B02000656E7453656E736F7244617461000000E5 +:10B030000000000000000000000000000000000010 +:10B0400000000000237D0008267D000853485F4C67 +:10B050004D5F436F6D6D6F6E46756E6374696F6E95 +:10B060005F4368616E67654C6962726172795261B3 +:10B0700074650000000000000000000000000000F7 +:10B08000000000000000000000000000277D000814 +:10B09000667D000853485F4C4D5F436F6D6D6F6E6A +:10B0A00046756E6374696F6E5F4E6F74696679532F +:10B0B000797374656D54696D65536574546F50652B +:10B0C000646F4D65746572000000000000000000B0 +:10B0D00000000000677D0008787D000853485F4C41 +:10B0E0004D5F436F6D6D6F6E46756E6374696F6E05 +:10B0F0005F5265717565737443757272656E7449DC +:10B100006E666F00000000000000000000000000FC +:10B11000000000000000000000000000797D000831 +:10B12000C07D000853485F4C4D5F436F6D6D6F6E7F +:10B1300046756E6374696F6E5F4E6F74696679539E +:10B14000797374656D506F736974696F6E00000078 +:10B1500000000000000000000000000000000000EF +:10B1600000000000C17D0008E87D000853485F4CE6 +:10B170004D5F436F6D6D6F6E46756E6374696F6E74 +:10B180005F436865636B4C69627261727953656E87 +:10B19000736F724F6E00000000000000000000009E +:10B1A000000000000000000000000000E97D000831 +:10B1B0000C7E000853485F4C4D5F4578656375749D +:10B1C000654C696272617279000000000000000045 +:10B1D000000000000000000000000000000000006F +:10B1E000000000000000000000000000000000005F +:10B1F000000000000D7E0008727F000853485F4C7D +:10B200004D5F456D70747946756E6374696F6E003D +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000000000001E +:10B23000000000000000000000000000737F000814 +:10B24000767F000853485F4C4D5F456D7074795FA1 +:10B2500054656D706C6174655F53746172745F46A0 +:10B26000756E6374696F6E000000000000000000DE +:10B2700000000000000000000000000000000000CE +:10B2800000000000777F00087E7F000853485F4C75 +:10B290004D5F456D7074795F54656D706C61746558 +:10B2A0005F50726F636573735F46756E6374696F29 +:10B2B0006E00000000000000000000000000000020 +:10B2C0000000000000000000000000007F7F000878 +:10B2D000827F000853485F4C4D5F456D7074795F05 +:10B2E00054656D706C6174655F436865636B5F4640 +:10B2F000756E6374696F6E0000000000000000004E +:10B30000000000000000000000000000000000003D +:10B3100000000000837F0008867F000853485F4CD0 +:10B320004D5F456D7074795F54656D706C617465C7 +:10B330005F417070656E644D53475F46756E637410 +:10B34000696F6E00000000000000000000000000B7 +:10B35000000000000000000000000000877F0008DF +:10B360005C8000085F5F61656162695F66326400EE +:10B3700000000000000000000000000000000000CD +:10B3800000000000000000000000000000000000BD +:10B3900000000000000000000000000000000000AD +:10B3A000000000005D800008AC8000085F5F616500 +:10B3B0006162695F64326600000000000000000006 +:10B3C000000000000000000000000000000000007D +:10B3D000000000000000000000000000000000006D +:10B3E000000000000000000000000000AD80000828 +:10B3F0003C8100085F5F6961725F65646F6D00008A +:10B40000000000000000000000000000000000003C +:10B41000000000000000000000000000000000002C +:10B42000000000000000000000000000000000001C +:10B43000000000003D810008488100085243435F3E +:10B440004C5345436F6E66696700000000000000C2 +:10B4500000000000000000000000000000000000EC +:10B4600000000000000000000000000000000000DC +:10B4700000000000000000000000000049810008FA +:10B48000688100085243435F4C5349436D64000098 +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B000000000000000000000000000000000008C +:10B4C00000000000698100086E8100085243435F5C +:10B4D000476574436C6F636B73467265710000005F +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000000000004C +:10B500000000000000000000000000006F81000843 +:10B51000E08100085243435F525443434C4B436F16 +:10B520006E66696700000000000000000000000077 +:10B53000000000000000000000000000000000000B +:10B5400000000000000000000000000000000000FB +:10B5500000000000E1810008068200085243435FBA +:10B56000525443434C4B436D640000000000000004 +:10B5700000000000000000000000000000000000CB +:10B5800000000000000000000000000000000000BB +:10B59000000000000000000000000000078200081A +:10B5A0000C8200085243435F4261636B75705265C1 +:10B5B000736574436D64000000000000000000002B +:10B5C000000000000000000000000000000000007B +:10B5D000000000000000000000000000000000006B +:10B5E000000000000D820008128200085243435FF1 +:10B5F00041484231506572697068436C6F636B43B8 +:10B600006D64000000000000000000000000000069 +:10B61000000000000000000000000000000000002A +:10B62000000000000000000000000000138200087D +:10B63000288200085243435F41504231506572698D +:10B640007068436C6F636B436D6400000000000022 +:10B6500000000000000000000000000000000000EA +:10B6600000000000000000000000000000000000DA +:10B6700000000000298200083E8200085243435F18 +:10B6800041504232506572697068436C6F636B431E +:10B690006D640000000000000000000000000000D9 +:10B6A000000000000000000000000000000000009A +:10B6B0000000000000000000000000003F820008C1 +:10B6C000548200085243435F4148423150657269D9 +:10B6D00070685265736574436D640000000000007B +:10B6E000000000000000000000000000000000005A +:10B6F000000000000000000000000000000000004A +:10B7000000000000558200086A8200085243435F2F +:10B710004150423150657269706852657365744377 +:10B720006D64000000000000000000000000000048 +:10B730000000000000000000000000000000000009 +:10B740000000000000000000000000006B82000804 +:10B75000808200085243435F415042325065726913 +:10B7600070685265736574436D64000000000000EA +:10B7700000000000000000000000000000000000C9 +:10B7800000000000000000000000000000000000B9 +:10B790000000000081820008968200085243435F47 +:10B7A0004954436F6E6669670000000000000000A6 +:10B7B0000000000000000000000000000000000089 +:10B7C0000000000000000000000000000000000079 +:10B7D0000000000000000000000000009782000848 +:10B7E000AC8200085243435F476574466C616753FF +:10B7F0007461747573000000000000000000000018 +:10B800000000000000000000000000000000000038 +:10B810000000000000000000000000000000000028 +:10B8200000000000AD820008D08200085243435F50 +:10B83000436C656172466C616700000000000000A7 +:10B8400000000000000000000000000000000000F8 +:10B8500000000000000000000000000000000000E8 +:10B86000000000000000000000000000D18200087D +:10B87000DC8200085243435F476574495453746146 +:10B88000747573000000000000000000000000005C +:10B8900000000000000000000000000000000000A8 +:10B8A0000000000000000000000000000000000098 +:10B8B00000000000DD820008EC8200085243435F74 +:10B8C000436C656172495450656E64696E67426984 +:10B8D00074000000000000000000000000000000F4 +:10B8E0000000000000000000000000000000000058 +:10B8F000000000000000000000000000ED820008D1 +:10B90000448300084750494F5F4465496E6974009D +:10B910000000000000000000000000000000000027 +:10B920000000000000000000000000000000000017 +:10B930000000000000000000000000000000000007 +:10B940000000000045830008FC8300084750494F71 +:10B950005F496E69740000000000000000000000F4 +:10B9600000000000000000000000000000000000D7 +:10B9700000000000000000000000000000000000C7 +:10B98000000000000000000000000000FD8300082F +:10B99000708400084750494F5F537472756374494F +:10B9A0006E6974000000000000000000000000004C +:10B9B0000000000000000000000000000000000087 +:10B9C0000000000000000000000000000000000077 +:10B9D0000000000071840008828400084750494F2D +:10B9E0005F52656164496E70757444617461426947 +:10B9F00074000000000000000000000000000000D3 +:10BA00000000000000000000000000000000000036 +:10BA10000000000000000000000000008384000817 +:10BA2000908400084750494F5F53657442697473AE +:10BA30000000000000000000000000000000000006 +:10BA400000000000000000000000000000000000F6 +:10BA500000000000000000000000000000000000E6 +:10BA60000000000091840008948400084750494F6A +:10BA70005F526573657442697473000000000000D2 +:10BA800000000000000000000000000000000000B6 +:10BA900000000000000000000000000000000000A6 +:10BAA0000000000000000000000000009584000875 +:10BAB000988400084750494F5F50696E4146436F74 +:10BAC0006E666967000000000000000000000000D2 +:10BAD0000000000000000000000000000000000066 +:10BAE0000000000000000000000000000000000056 +:10BAF0000000000099840008C08400084932435FB8 +:10BB00004465496E697400000000000000000000F8 +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000000000000015 +:10BB3000000000000000000000000000C1840008B8 +:10BB40001E8500084932435F496E69740000000099 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB700000000000000000000000000000000000C5 +:10BB8000000000001F850008E48500084932435F7B +:10BB9000436D640000000000000000000000000091 +:10BBA0000000000000000000000000000000000095 +:10BBB0000000000000000000000000000000000085 +:10BBC000000000000000000000000000E585000803 +:10BBD000FC8500084932435F47656E657261746594 +:10BBE00053544152540000000000000000000000C7 +:10BBF0000000000000000000000000000000000045 +:10BC00000000000000000000000000000000000034 +:10BC100000000000FD850008148600084932435FDB +:10BC200047656E657261746553544F5000000000A3 +:10BC30000000000000000000000000000000000004 +:10BC400000000000000000000000000000000000F4 +:10BC50000000000000000000000000001586000841 +:10BC60002C8600084932435F53656E6437626974FD +:10BC700041646472657373000000000000000000FE +:10BC800000000000000000000000000000000000B4 +:10BC900000000000000000000000000000000000A4 +:10BCA000000000002D8600083E8600084932435FF0 +:10BCB00041636B6E6F776C65646765436F6E666931 +:10BCC000670000000000000000000000000000000D +:10BCD0000000000000000000000000000000000064 +:10BCE0000000000000000000000000003F86000887 +:10BCF000568600084932435F536F667477617265F8 +:10BD00005265736574436D6400000000000000001C +:10BD10000000000000000000000000000000000023 +:10BD20000000000000000000000000000000000013 +:10BD300000000000578600086C8600084932435F07 +:10BD4000476574466C6167537461747573000000D5 +:10BD500000000000000000000000000000000000E3 +:10BD600000000000000000000000000000000000D3 +:10BD70000000000000000000000000006D860008C8 +:10BD8000A88600085350495F4932535F4465496EA5 +:10BD900069740000000000000000000000000000C6 +:10BDA0000000000000000000000000000000000093 +:10BDB0000000000000000000000000000000000083 +:10BDC00000000000A9860008068700085350495F5C +:10BDD000496E6974000000000000000000000000CF +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000000000000043 +:10BE0000000000000000000000000000078700089C +:10BE10004C8700085350495F436D640000000000E8 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE400000000000000000000000000000000000F2 +:10BE5000000000004D870008648700085350495FC8 +:10BE60004932535F444D41436D64000000000000BF +:10BE700000000000000000000000000000000000C2 +:10BE800000000000000000000000000000000000B2 +:10BE900000000000000000000000000065870008AE +:10BEA000788700085350495F4932535F47657446AD +:10BEB0006C616753746174757300000000000000CA +:10BEC0000000000000000000000000000000000072 +:10BED0000000000000000000000000000000000062 +:10BEE000000000007987000888870008444D415F02 +:10BEF0004465496E69740000000000000000000005 +:10BF00000000000000000000000000000000000031 +:10BF10000000000000000000000000000000000021 +:10BF200000000000000000000000000089870008F9 +:10BF300090880008444D415F496E6974000000001C +:10BF400000000000000000000000000000000000F1 +:10BF500000000000000000000000000000000000E1 +:10BF600000000000000000000000000000000000D1 +:10BF70000000000091880008DE880008444D415F01 +:10BF8000436D64000000000000000000000000009D +:10BF900000000000000000000000000000000000A1 +:10BFA0000000000000000000000000000000000091 +:10BFB000000000000000000000000000DF88000812 +:10BFC000F4880008444D415F4D656D6F727954618E +:10BFD00072676574436F6E66696700000000000059 +:10BFE0000000000000000000000000000000000051 +:10BFF0000000000000000000000000000000000041 +:10C0000000000000F588000800890008444D415FE9 +:10C01000476574436D645374617475730000000068 +:10C020000000000000000000000000000000000010 +:10C030000000000000000000000000000000000000 +:10C04000000000000000000000000000018900085E +:10C0500008890008444D415F476574466C61675329 +:10C06000746174757300000000000000000000009F +:10C0700000000000000000000000000000000000C0 +:10C0800000000000000000000000000000000000B0 +:10C0900000000000098900082E890008444D415F16 +:10C0A000436C656172466C6167000000000000002F +:10C0B0000000000000000000000000000000000080 +:10C0C0000000000000000000000000000000000070 +:10C0D0000000000000000000000000002F890008A0 +:10C0E000B08900085057525F4261636B75704163BD +:10C0F00063657373436D640000000000000000007E +:10C10000000000000000000000000000000000002F +:10C11000000000000000000000000000000000001F +:10C1200000000000B1890008B68900085057525F2E +:10C13000466C617368506F776572446F776E436DBC +:10C14000640000000000000000000000000000008B +:10C1500000000000000000000000000000000000DF +:10C16000000000000000000000000000B789000887 +:10C17000C48900085254435F496E6974000000008E +:10C1800000000000000000000000000000000000AF +:10C19000000000000000000000000000000000009F +:10C1A000000000000000000000000000000000008F +:10C1B00000000000C58900080A8A00085254435F45 +:10C1C000456E746572496E69744D6F646500000058 +:10C1D000000000000000000000000000000000005F +:10C1E000000000000000000000000000000000004F +:10C1F0000000000000000000000000000B8A0008A2 +:10C20000488A00085254435F45786974496E6974DE +:10C210004D6F646500000000000000000000000099 +:10C22000000000000000000000000000000000000E +:10C2300000000000000000000000000000000000FE +:10C2400000000000498A0008568A00085254435FE3 +:10C2500057616974466F7253796E6368726F00003C +:10C2600000000000000000000000000000000000CE +:10C2700000000000000000000000000000000000BE +:10C28000000000000000000000000000578A0008C5 +:10C29000988A00085254435F53657454696D650071 +:10C2A000000000000000000000000000000000008E +:10C2B000000000000000000000000000000000007E +:10C2C000000000000000000000000000000000006E +:10C2D00000000000998A0008368B00085254435F22 +:10C2E00047657454696D650000000000000000009F +:10C2F000000000000000000000000000000000003E +:10C30000000000000000000000000000000000002D +:10C31000000000000000000000000000378B000853 +:10C32000808B00085254435F4765745375625365B0 +:10C33000636F6E6400000000000000000000000059 +:10C3400000000000000000000000000000000000ED +:10C3500000000000000000000000000000000000DD +:10C3600000000000818B00088A8B00085254435F54 +:10C370005365744461746500000000000000000013 +:10C3800000000000000000000000000000000000AD +:10C39000000000000000000000000000000000009D +:10C3A0000000000000000000000000008B8B00086F +:10C3B0002A8C00085254435F4765744461746500D9 +:10C3C000000000000000000000000000000000006D +:10C3D000000000000000000000000000000000005D +:10C3E000000000000000000000000000000000004D +:10C3F000000000002B8C0008728C00085254435F30 +:10C4000057616B655570436C6F636B436F6E666904 +:10C4100067000000000000000000000000000000B5 +:10C42000000000000000000000000000000000000C +:10C43000000000000000000000000000738C0008F5 +:10C44000928C00085254435F53657457616B655575 +:10C4500070436F756E74657200000000000000008C +:10C4600000000000000000000000000000000000CC +:10C4700000000000000000000000000000000000BC +:10C4800000000000938C0008A68C00085254435F03 +:10C4900057616B655570436D64000000000000003B +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000000000007C +:10C4C000000000000000000000000000A78C000831 +:10C4D000F68C00085254435F577269746542616379 +:10C4E0006B757052656769737465720000000000B7 +:10C4F000000000000000000000000000000000003C +:10C50000000000000000000000000000000000002B +:10C5100000000000F78C0008108D00085254435FA3 +:10C52000526561644261636B7570526567697374CB +:10C530006572000000000000000000000000000024 +:10C5400000000000000000000000000000000000EB +:10C55000000000000000000000000000118D000835 +:10C560002A8D00085254435F53796E6368726F538B +:10C5700068696674436F6E666967000000000000BA +:10C5800000000000000000000000000000000000AB +:10C59000000000000000000000000000000000009B +:10C5A000000000002B8D0008728D00085254435F7C +:10C5B0004954436F6E666967000000000000000088 +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000000000005B +:10C5E000000000000000000000000000738D000843 +:10C5F000A88D00085254435F476574466C616753C9 +:10C6000074617475730000000000000000000000F9 +:10C61000000000000000000000000000000000001A +:10C62000000000000000000000000000000000000A +:10C6300000000000A98D0008BC8D00085254435F23 +:10C6400047657449545374617475730000000000A9 +:10C6500000000000000000000000000000000000DA +:10C6600000000000000000000000000000000000CA +:10C67000000000000000000000000000BD8D000868 +:10C68000E68D00085254435F436C65617249545013 +:10C69000656E64696E674269740000000000000006 +:10C6A000000000000000000000000000000000008A +:10C6B000000000000000000000000000000000007A +:10C6C00000000000E78D0008248E00085254435FEC +:10C6D00042797465546F42636432000000000000C8 +:10C6E000000000000000000000000000000000004A +:10C6F000000000000000000000000000000000003A +:10C70000000000000000000000000000258E00086E +:10C710003A8E00085254435F42636432546F427948 +:10C720007465000000000000000000000000000030 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000000000000000000000000000E9 +:10C75000000000003B8E00084C8E000845585449EC +:10C760005F496E69740000000000000000000000D6 +:10C7700000000000000000000000000000000000B9 +:10C7800000000000000000000000000000000000A9 +:10C790000000000000000000000000004D8E0008B6 +:10C7A000B88E0008455854495F476574495453741E +:10C7B00061747573000000000000000000000000BC +:10C7C0000000000000000000000000000000000069 +:10C7D0000000000000000000000000000000000059 +:10C7E00000000000B98E0008D08E0008455854495A +:10C7F0005F436C656172495450656E64696E67424F +:10C80000697400000000000000000000000000004B +:10C810000000000000000000000000000000000018 +:10C82000000000000000000000000000D18E0008A1 +:10C83000E08E00084E5649435F5072696F7269740A +:10C840007947726F7570436F6E666967000000000C +:10C8500000000000000000000000000000000000D8 +:10C8600000000000000000000000000000000000C8 +:10C8700000000000E18E0008EA8E00084E56494391 +:10C880005F496E69740000000000000000000000B5 +:10C890000000000000000000000000000000000098 +:10C8A0000000000000000000000000000000000088 +:10C8B000000000000000000000000000EB8E0008F7 +:10C8C0005C8F00085359534346475F455854494CC1 +:10C8D000696E65436F6E66696700000000000000C6 +:10C8E0000000000000000000000000000000000048 +:10C8F0000000000000000000000000000000000038 +:10C90000000000005D8F0008848F00084144435FF1 +:10C910004465496E697400000000000000000000DA +:10C920000000000000000000000000000000000007 +:10C9300000000000000000000000000000000000F7 +:10C94000000000000000000000000000858F0008CB +:10C950009E8F00084144435F496E697400000000E7 +:10C9600000000000000000000000000000000000C7 +:10C9700000000000000000000000000000000000B7 +:10C9800000000000000000000000000000000000A7 +:10C99000000000009F8F0008DE8F00084144435FC5 +:10C9A000537472756374496E69740000000000006E +:10C9B0000000000000000000000000000000000077 +:10C9C0000000000000000000000000000000000067 +:10C9D000000000000000000000000000DF8F0008E1 +:10C9E000F28F00084144435F436F6D6D6F6E496E77 +:10C9F000697400000000000000000000000000005A +:10CA00000000000000000000000000000000000026 +:10CA10000000000000000000000000000000000016 +:10CA200000000000F38F00080E9000084144435FAF +:10CA3000436F6D6D6F6E537472756374496E697474 +:10CA400000000000000000000000000000000000E6 +:10CA500000000000000000000000000000000000D6 +:10CA60000000000000000000000000000F9000081F +:10CA70001A9000084144435F436D640000000000C9 +:10CA800000000000000000000000000000000000A6 +:10CA90000000000000000000000000000000000096 +:10CAA0000000000000000000000000000000000086 +:10CAB000000000001B900008309000084144435FD4 +:10CAC000526567756C61724368616E6E656C436F29 +:10CAD0006E666967000000000000000000000000B2 +:10CAE0000000000000000000000000000000000046 +:10CAF000000000000000000000000000319000086D +:10CB0000AC9000084144435F536F6674776172656F +:10CB10005374617274436F6E760000000000000071 +:10CB20000000000000000000000000000000000005 +:10CB300000000000000000000000000000000000F5 +:10CB400000000000AD900008B69000084144435F2B +:10CB5000454F434F6E45616368526567756C6172FE +:10CB60004368616E6E656C436D64000000000000F8 +:10CB700000000000000000000000000000000000B5 +:10CB8000000000000000000000000000B790000856 +:10CB9000CC9000084144435F476574436F6E7665EF +:10CBA0007273696F6E56616C75650000000000005D +:10CBB0000000000000000000000000000000000075 +:10CBC0000000000000000000000000000000000065 +:10CBD00000000000CD900008E49000084144435F4D +:10CBE000476574466C616753746174757300000027 +:10CBF0000000000000000000000000000000000035 +:10CC00000000000000000000000000000000000024 +:10CC1000000000000000000000000000E590000897 +:10CC2000F49000085F5F61656162695F6C646976BA +:10CC30006D6F6400000000000000000000000000B4 +:10CC400000000000000000000000000000000000E4 +:10CC500000000000000000000000000000000000D4 +:10CC600000000000F5900008389100085F5F6165E2 +:10CC70006162695F756C6469766D6F6400000000C5 +:10CC800000000000000000000000000000000000A4 +:10CC90000000000000000000000000000000000094 +:10CCA00000000000000000000000000039910008B2 +:10CCB000289200085F5F6961725F4D656D736574EE +:10CCC000345F776F72640000000000000000000015 +:10CCD0000000000000000000000000000000000054 +:10CCE0000000000000000000000000000000000044 +:10CCF0000000000029920008299200085F5F696126 +:10CD0000725F4D656D736574385F776F7264000094 +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000000000000003 +:10CD30000000000000000000000000002992000830 +:10CD40002C920008456E74657238000000000000E7 +:10CD500000000000000000000000000000000000D3 +:10CD600000000000000000000000000000000000C3 +:10CD700000000000000000000000000000000000B3 +:10CD8000000000002D9200085C9200085F5072695C +:10CD90006E746646756C6C000000000000000000B8 +:10CDA0000000000000000000000000000000000083 +:10CDB0000000000000000000000000000000000073 +:10CDC0000000000000000000000000005D9200086C +:10CDD000449800085F4C69746F6246756C6C000083 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE00000000000000000000000000000000000022 +:10CE10000000000045980008589900085F4C6474B1 +:10CE20006F6246756C6C000000000000000000009E +:10CE300000000000000000000000000000000000F2 +:10CE400000000000000000000000000000000000E2 +:10CE500000000000000000000000000059990008D8 +:10CE6000489D00085F47656E6C6446756C6C0000F9 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000000000A2 +:10CE90000000000000000000000000000000000092 +:10CEA00000000000499D0008AA9F00085F507574AB +:10CEB000636861727346756C6C00000000000000CE +:10CEC0000000000000000000000000000000000062 +:10CED0000000000000000000000000000000000052 +:10CEE000000000000000000000000000AB9F0008F0 +:10CEF000F49F0008737072696E7466000000000091 +:10CF00000000000000000000000000000000000021 +:10CF10000000000000000000000000000000000011 +:10CF20000000000000000000000000000000000001 +:10CF300000000000F59F000828A000085F5F6961FD +:10CF4000725F756E616C69676E65645F7374726E33 +:10CF50006370790000000000000000000000000085 +:10CF600000000000000000000000000000000000C1 +:10CF700000000000000000000000000029A00008E0 +:10CF800094A000084F535F476574537461636B420C +:10CF90006173650000000000000000000000000058 +:10CFA0000000000000000000000000000000000081 +:10CFB0000000000000000000000000000000000071 +:10CFC0000000000095A00008ACA000084F535F4788 +:10CFD0006574537461636B53697A650000000000E7 +:10CFE0000000000000000000000000000000000041 +:10CFF0000000000000000000000000000000000031 +:10D00000000000000000000000000000ADA00008CB +:10D01000C8A000084F535F47657453797353746118 +:10D02000636B4261736500000000000000000000B7 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000000000000000000000000000E0 +:10D0500000000000C9A00008CCA000084F535F47A3 +:10D060006574537973537461636B53697A65000017 +:10D0700000000000000000000000000000000000B0 +:10D0800000000000000000000000000000000000A0 +:10D09000000000000000000000000000CDA000081B +:10D0A000DCA00008464C4153485F556E6C6F636BC3 +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D0000000000000000000000000000000000050 +:10D0E00000000000DDA00008EEA00008464C4153FF +:10D0F000485F4C6F636B0000000000000000000000 +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000000000000F +:10D12000000000000000000000000000EFA0000868 +:10D13000FAA00008464C4153485F4572617365533D +:10D140006563746F720000000000000000000000C2 +:10D1500000000000000000000000000000000000CF +:10D1600000000000000000000000000000000000BF +:10D1700000000000FBA0000864A10008464C4153D9 +:10D18000485F50726F6772616D576F726400000084 +:10D19000000000000000000000000000000000008F +:10D1A000000000000000000000000000000000007F +:10D1B00000000000000000000000000065A1000861 +:10D1C0009CA10008464C4153485F50726F677261E2 +:10D1D0006D4279746500000000000000000000004E +:10D1E000000000000000000000000000000000003F +:10D1F000000000000000000000000000000000002F +:10D20000000000009DA10008D0A10008464C415339 +:10D21000485F436C656172466C6167000000000006 +:10D2200000000000000000000000000000000000FE +:10D2300000000000000000000000000000000000EE +:10D24000000000000000000000000000D1A1000864 +:10D25000D6A10008464C4153485F4765745374613A +:10D260007475730000000000000000000000000062 +:10D2700000000000000000000000000000000000AE +:10D28000000000000000000000000000000000009E +:10D2900000000000D7A1000824A20008464C41531A +:10D2A000485F57616974466F724C6173744F706563 +:10D2B000726174696F6E00000000000000000000E1 +:10D2C000000000000000000000000000000000005E +:10D2D00000000000000000000000000025A200087F +:10D2E0004CA200084E5649435F5365745072696FF3 +:10D2F0007269747900000000000000000000000066 +:10D30000000000000000000000000000000000001D +:10D31000000000000000000000000000000000000D +:10D32000000000004DA2000866A200085379735463 +:10D3300069636B5F436F6E66696700000000000001 +:10D3400000000000000000000000000000000000DD +:10D3500000000000000000000000000000000000CD +:10D3600000000000000000000000000067A20008AC +:10D370008EA200085379735469636B5F48616E64D1 +:10D380006C6572000000000000000000000000005A +:10D39000000000000000000000000000000000008D +:10D3A000000000000000000000000000000000007D +:10D3B000000000008FA20008D0A200084F535F4970 +:10D3C0006E69744857000000000000000000000073 +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000000000003D +:10D3F000000000000000000000000000D1A20008B2 +:10D400003CA300084F535F49646C650000000000B6 +:10D41000000000000000000000000000000000000C +:10D4200000000000000000000000000000000000FC +:10D4300000000000000000000000000000000000EC +:10D44000000000003DA3000858A300084F535F47A9 +:10D45000657454696D655F4379636C6573000000A2 +:10D4600000000000000000000000000000000000BC +:10D4700000000000000000000000000000000000AC +:10D4800000000000000000000000000059A3000898 +:10D49000B4A300084F535F476574435055537461FC +:10D4A00074650000000000000000000000000000A3 +:10D4B000000000000000000000000000000000006C +:10D4C000000000000000000000000000000000005C +:10D4D00000000000B5A30008C0A300084F535F4937 +:10D4E0006E69744D6F64650000000000000000006C +:10D4F000000000000000000000000000000000002C +:10D50000000000000000000000000000000000001B +:10D51000000000000000000000000000C1A300089F +:10D5200008A400084F535F6D616C6C6F63000000CE +:10D5300000000000000000000000000000000000EB +:10D5400000000000000000000000000000000000DB +:10D5500000000000000000000000000000000000CB +:10D560000000000009A4000838A400084F535F66BB +:10D57000726565000000000000000000000000006F +:10D58000000000000000000000000000000000009B +:10D59000000000000000000000000000000000008B +:10D5A00000000000000000000000000039A4000896 +:10D5B00058A4000853485F47657453656E736F72D3 +:10D5C000487562506F696E7465720000000000005B +:10D5D000000000000000000000000000000000004B +:10D5E000000000000000000000000000000000003B +:10D5F0000000000059A4000860A400084E564943EA +:10D600005F53797374656D52657365740000000033 +:10D61000000000000000000000000000000000000A +:10D6200000000000000000000000000000000000FA +:10D6300000000000000000000000000061A40008DD +:10D6400080A400084D5055363530305F7365745FE7 +:10D65000363558585F6779726F5F636F6E666967BA +:10D6600000000000000000000000000000000000BA +:10D6700000000000000000000000000000000000AA +:10D680000000000081A400083CA500084D5055365C +:10D6900035303053656C665465737454696D6553E9 +:10D6A000657474696E6700000000000000000000EF +:10D6B000000000000000000000000000000000006A +:10D6C0000000000000000000000000003DA5000870 +:10D6D000B2A500084D5055363530305F4465766947 +:10D6E00063655F50726F626500000000000000001B +:10D6F000000000000000000000000000000000002A +:10D700000000000000000000000000000000000019 +:10D7100000000000B3A500080EA700086D70753664 +:10D720003530305F626967385F746F5F696E74317E +:10D7300036000000000000000000000000000000B3 +:10D7400000000000000000000000000000000000D9 +:10D750000000000000000000000000000FA700080B +:10D760001AA700086D7075363530305F6261636BE3 +:10D7700075705F7265676973746572000000000000 +:10D780000000000000000000000000000000000099 +:10D790000000000000000000000000000000000089 +:10D7A000000000001BA70008F0A700086D70753688 +:10D7B0003530305F7265636F7665725F7265676979 +:10D7C000737465720000000000000000000000009B +:10D7D0000000000000000000000000000000000049 +:10D7E000000000000000000000000000F1A7000899 +:10D7F00040A900086D7075363530305F7365745F11 +:10D8000072656769737465720000000000000000B3 +:10D810000000000000000000000000000000000008 +:10D8200000000000000000000000000000000000F8 +:10D830000000000041A900080AAB0008696E765F8D +:10D84000706F7765725F75705F73656C665F746526 +:10D8500073740000000000000000000000000000E1 +:10D8600000000000000000000000000000000000B8 +:10D870000000000000000000000000000BAB0008EA +:10D8800086AB0008696E765F646F5F7465737400C1 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B0000000000000000000000000000000000068 +:10D8C0000000000087AB0008C2AE0008696E765FFA +:10D8D000636865636B5F363530305F616363656CC9 +:10D8E0005F68775F73656C665F74657374000000D2 +:10D8F0000000000000000000000000000000000028 +:10D90000000000000000000000000000C3AE00089E +:10D9100006B00008616363656C5F696E746572725E +:10D920007570745F73656C665F7465737400000076 +:10D9300000000000000000000000000000000000E7 +:10D9400000000000000000000000000000000000D7 +:10D950000000000007B0000830B100086163636593 +:10D960006C5F68775F73656C66746573745F6E6F08 +:10D97000726D616C000000000000000000000000FB +:10D980000000000000000000000000000000000097 +:10D9900000000000000000000000000031B100089D +:10D9A00032B20008416363656C5F4D5055363530C7 +:10D9B000305F50726F6265000000000000000000E0 +:10D9C0000000000000000000000000000000000057 +:10D9D0000000000000000000000000000000000047 +:10D9E0000000000033B200085CB2000841636365C8 +:10D9F0006C5F4D5055363530305F4F70656E0000AE +:10DA00000000000000000000000000000000000016 +:10DA10000000000000000000000000000000000006 +:10DA20000000000000000000000000005DB20008DF +:10DA30009EB30008416363656C5F4D5055363530C9 +:10DA4000305F436C6F736500000000000000000051 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000000000000000000000000000B6 +:10DA7000000000009FB3000850B4000841636365D4 +:10DA80006C5F4D5055363530305F536C65657000B6 +:10DA90000000000000000000000000000000000086 +:10DAA0000000000000000000000000000000000076 +:10DAB00000000000000000000000000051B4000859 +:10DAC000A4B40008416363656C5F4D505536353032 +:10DAD000305F52656164000000000000000000003B +:10DAE0000000000000000000000000000000000036 +:10DAF0000000000000000000000000000000000026 +:10DB000000000000A5B4000874B600084163636516 +:10DB10006C5F4D5055363530305F496E745F5365DC +:10DB20007474696E670000000000000000000000CF +:10DB300000000000000000000000000000000000E5 +:10DB400000000000000000000000000075B60008A2 +:10DB5000BEB70008416363656C5F4D505536353084 +:10DB6000305F496E740000000000000000000000FB +:10DB700000000000000000000000000000000000A5 +:10DB80000000000000000000000000000000000095 +:10DB900000000000BFB7000860B80008416363657B +:10DBA0006C5F4D5055363530305F436C6F73655F39 +:10DBB000496E74000000000000000000000000003A +:10DBC0000000000000000000000000000000000055 +:10DBD00000000000000000000000000061B8000824 +:10DBE00046B90008416363656C5F4D50553635306A +:10DBF000305F53656C66746573740000000000004C +:10DC00000000000000000000000000000000000014 +:10DC10000000000000000000000000000000000004 +:10DC20000000000047B9000870B90008416363654F +:10DC30006C5F66756E6374696F6E5F696E697400A0 +:10DC400000000000000000000000000000000000D4 +:10DC500000000000000000000000000000000000C4 +:10DC600000000000000000000000000071B9000882 +:10DC7000E4B900084779726F73636F70655F4D5048 +:10DC800055363530305F50726F626500000000001D +:10DC90000000000000000000000000000000000084 +:10DCA0000000000000000000000000000000000074 +:10DCB00000000000E5B9000810BA00084779726F4B +:10DCC00073636F70655F4D5055363530305F4F7000 +:10DCD000656E000000000000000000000000000071 +:10DCE0000000000000000000000000000000000034 +:10DCF00000000000000000000000000011BA000851 +:10DD000012BB00084779726F73636F70655F4D5087 +:10DD100055363530305F436C6F736500000000008E +:10DD200000000000000000000000000000000000F3 +:10DD300000000000000000000000000000000000E3 +:10DD40000000000013BB0008A0BB00084779726FF9 +:10DD500073636F70655F4D5055363530305F536C6F +:10DD60006565700000000000000000000000000079 +:10DD700000000000000000000000000000000000A3 +:10DD8000000000000000000000000000A1BB00082F +:10DD9000F4BB00084779726F73636F70655F4D5015 +:10DDA00055363530305F5265616400000000000078 +:10DDB0000000000000000000000000000000000063 +:10DDC0000000000000000000000000000000000053 +:10DDD00000000000F5BB000834BD00086D7075360A +:10DDE0003530305F73656C66746573745F72756E21 +:10DDF0000000000000000000000000000000000023 +:10DE00000000000000000000000000000000000012 +:10DE100000000000000000000000000035BD000808 +:10DE2000F4C00008696E765F636865636B5F3635C2 +:10DE300030305F6779726F5F68775F73656C665FBC +:10DE40007465737400000000000000000000000012 +:10DE500000000000000000000000000000000000C2 +:10DE600000000000F5C0000868C200084779726F22 +:10DE700073636F70655F4D5055363530305F536555 +:10DE80006C66746573745F4E6F726D616C00000038 +:10DE90000000000000000000000000000000000082 +:10DEA00000000000000000000000000069C200083F +:10DEB0007AC500084779726F73636F70655F4D5064 +:10DEC00055363530305F53656C66746573745F47E3 +:10DED000657454656D7065726174757265000000DB +:10DEE0000000000000000000000000000000000032 +:10DEF000000000007BC50008ECC500084779726F80 +:10DF000073636F70655F4D5055363530305F5365C4 +:10DF10006C6674657374000000000000000000006F +:10DF200000000000000000000000000000000000F1 +:10DF3000000000000000000000000000EDC5000827 +:10DF400016C600084779726F73636F70655F4D5036 +:10DF500055363530305F496F63746C000000000047 +:10DF600000000000000000000000000000000000B1 +:10DF700000000000000000000000000000000000A1 +:10DF80000000000017C6000830C600084779726F0D +:10DF90005F66756E6374696F6E5F696E69740000A9 +:10DFA0000000000000000000000000000000000071 +:10DFB0000000000000000000000000000000000061 +:10DFC00000000000000000000000000031C6000852 +:10DFD00098C6000847656F4D61676E657469635F39 +:10DFE0004765744D616744617461506F696E746513 +:10DFF00072000000000000000000000000000000AF +:10E000000000000000000000000000000000000010 +:10E010000000000099C600089EC6000847656F4DC5 +:10E0200061676E657469635F414B30393931315FC7 +:10E0300050726F62650000000000000000000000E8 +:10E0400000000000000000000000000000000000D0 +:10E050000000000000000000000000009FC6000853 +:10E0600018C7000847656F4D61676E657469635F27 +:10E07000414B30393931315F4F70656E000000001F +:10E080000000000000000000000000000000000090 +:10E090000000000000000000000000000000000080 +:10E0A0000000000019C7000896C7000847656F4DBB +:10E0B00061676E657469635F414B30393931315F37 +:10E0C000436C6F736500000000000000000000005A +:10E0D0000000000000000000000000000000000040 +:10E0E00000000000000000000000000097C70008CA +:10E0F000FEC7000847656F4D61676E657469635FB1 +:10E10000414B30393931315F536C65657000000027 +:10E1100000000000000000000000000000000000FF +:10E1200000000000000000000000000000000000EF +:10E1300000000000FFC700082AC8000847656F4DAF +:10E1400061676E657469635F414B30393931315FA6 +:10E15000526561645F467573650000000000000051 +:10E1600000000000000000000000000000000000AF +:10E170000000000000000000000000002BC80008A4 +:10E18000ACC8000847656F4D61676E657469635F71 +:10E19000414B30393931315F5365745F5044436CC2 +:10E1A000000000000000000000000000000000006F +:10E1B000000000000000000000000000000000005F +:10E1C00000000000ADC80008C6C8000847656F4DD4 +:10E1D00061676E657469635F414B30393931315F16 +:10E1E00043616C63756C6174655F446174610000C8 +:10E1F000000000000000000000000000000000001F +:10E20000000000000000000000000000C7C8000877 +:10E2100022CA000847656F4D61676E657469635F68 +:10E22000414B30393931315F526561645F506F77EE +:10E2300065724E6F69736500000000000000000009 +:10E2400000000000000000000000000000000000CE +:10E250000000000023CA0008C8CA000847656F4DC7 +:10E2600061676E657469635F414B30393931315F85 +:10E27000526561645F43616C0000000000000000B3 +:10E28000000000000000000000000000000000008E +:10E29000000000000000000000000000C9CA0008E3 +:10E2A000A8CB000847656F4D61676E657469635F51 +:10E2B000414B30393931315F5265616400000000F3 +:10E2C000000000000000000000000000000000004E +:10E2D000000000000000000000000000000000003E +:10E2E00000000000A9CB000834CC000847656F4D42 +:10E2F00061676E657469635F414B30393931315FF5 +:10E3000053656C66546573745F436865636B5F4304 +:10E3100074726C00000000000000000000000000AB +:10E3200000000000000000000000000035CC0008E4 +:10E33000CCCC000847656F4D61676E657469635F9B +:10E34000414B30393931315F53656C6654657374B4 +:10E3500000000000000000000000000000000000BD +:10E3600000000000000000000000000000000000AD +:10E3700000000000CDCC000828CF000847656F4D95 +:10E3800061676E657469635F414B30393931315F64 +:10E39000496F63746C000000000000000000000082 +:10E3A000000000000000000000000000000000006D +:10E3B00000000000000000000000000029CF00085D +:10E3C00056CF000847656F5F66756E6374696F6E40 +:10E3D0005F696E697400000000000000000000002A +:10E3E000000000000000000000000000000000002D +:10E3F000000000000000000000000000000000001D +:10E400000000000057CF0008FCCF0008546D6733B0 +:10E410003939325F496E6974000000000000000065 +:10E4200000000000000000000000000000000000EC +:10E4300000000000000000000000000000000000DC +:10E44000000000000000000000000000FDCF0008F8 +:10E4500050D00008746D67333939785F7365745F25 +:10E460006F705F6D6F6465000000000000000000C9 +:10E47000000000000000000000000000000000009C +:10E48000000000000000000000000000000000008C +:10E490000000000051D0000838D40008746D6733C4 +:10E4A0003939785F6F66667365745F63616C696242 +:10E4B000726174696F6E5F696E69740000000000BC +:10E4C000000000000000000000000000000000004C +:10E4D00000000000000000000000000039D4000827 +:10E4E00064D40008746D67333939785F68696C6982 +:10E4F0006768745F737769746368000000000000E8 +:10E50000000000000000000000000000000000000B +:10E5100000000000000000000000000000000000FB +:10E520000000000065D40008D0D4000850726F7855 +:10E53000696D6974795F546D67333939325F507230 +:10E540006F62650000000000000000000000000095 +:10E5500000000000000000000000000000000000BB +:10E56000000000000000000000000000D1D40008FE +:10E5700020D5000850726F78696D6974795F546DA9 +:10E5800067333939325F4F70656E0000000000005C +:10E59000000000000000000000000000000000007B +:10E5A000000000000000000000000000000000006B +:10E5B0000000000021D50008B8D5000850726F781F +:10E5C000696D6974795F546D67333939325F436CB3 +:10E5D0006F736500000000000000000000000000F4 +:10E5E000000000000000000000000000000000002B +:10E5F000000000000000000000000000B9D5000885 +:10E600002CD6000850726F78696D6974795F546D0B +:10E6100067333939325F536C656570000000000064 +:10E6200000000000000000000000000000000000EA +:10E6300000000000000000000000000000000000DA +:10E64000000000002DD6000830D6000850726F7808 +:10E65000696D6974795F546D67333939325F52651A +:10E6600061645F526177000000000000000000005C +:10E67000000000000000000000000000000000009A +:10E6800000000000000000000000000031D600087B +:10E69000BAD600085F5F50726F78696D6974795FF0 +:10E6A000546D67333939325F526561640000000090 +:10E6B000000000000000000000000000000000005A +:10E6C000000000000000000000000000000000004A +:10E6D00000000000BBD6000884DB000850726F7891 +:10E6E000696D6974795F546D67333939325F52658A +:10E6F0006164000000000000000000000000000055 +:10E700000000000000000000000000000000000009 +:10E7100000000000000000000000000085DB000891 +:10E720006CDD000850726F78696D6974795F546DA3 +:10E7300067333939325F57726974654F666673653E +:10E7400074416E645468726573686F6C6400000095 +:10E7500000000000000000000000000000000000B9 +:10E76000000000006DDD000850DE000850726F7878 +:10E77000695F66756E6374696F6E5F696E69740058 +:10E780000000000000000000000000000000000089 +:10E790000000000000000000000000000000000079 +:10E7A00000000000000000000000000051DE000832 +:10E7B000B4DE0008476573747572655F546D673326 +:10E7C0003939325F50726F6265000000000000004E +:10E7D0000000000000000000000000000000000039 +:10E7E0000000000000000000000000000000000029 +:10E7F00000000000B5DE000860DF000847657374A4 +:10E800007572655F546D67333939325F4F70656E6D +:10E8100000000000000000000000000000000000F8 +:10E8200000000000000000000000000000000000E8 +:10E8300000000000000000000000000061DF000890 +:10E8400004E00008476573747572655F546D673343 +:10E850003939325F436C6F736500000000000000BF +:10E8600000000000000000000000000000000000A8 +:10E870000000000000000000000000000000000098 +:10E880000000000005E000087CE0000847657374A4 +:10E890007572655F546D67333939325F536C6565E6 +:10E8A00070000000000000000000000000000000F8 +:10E8B0000000000000000000000000000000000058 +:10E8C0000000000000000000000000007DE00008E3 +:10E8D00080E00008476573747572655F546D673337 +:10E8E0003939325F4F666673657463616C416E647B +:10E8F00046696C74657200000000000000000000B2 +:10E900000000000000000000000000000000000007 +:10E910000000000081E0000820E100085F5F47651B +:10E9200073747572655F546D67333939325F526540 +:10E930006164000000000000000000000000000012 +:10E9400000000000000000000000000000000000C7 +:10E9500000000000000000000000000021E10008AD +:10E960005EE20008476573747572655F546D6733C6 +:10E970003939325F52656164000000000000000018 +:10E980000000000000000000000000000000000087 +:10E990000000000000000000000000000000000077 +:10E9A000000000005FE2000866E20008476573743B +:10E9B0007572655F546D67333939325F496F6374BF +:10E9C0006C000000000000000000000000000000DB +:10E9D0000000000000000000000000000000000037 +:10E9E00000000000000000000000000067E20008D6 +:10E9F00076E200084765737475726553656E736FD0 +:10EA0000725F546D67333939325F5365745F437594 +:10EA10007272656E740000000000000000000000CB +:10EA200000000000000000000000000000000000E6 +:10EA30000000000077E2000898E200084765737460 +:10EA40007572655F546D67333939325F53656C6633 +:10EA500074657374000000000000000000000000F6 +:10EA600000000000000000000000000000000000A6 +:10EA700000000000000000000000000099E2000813 +:10EA800074E40008476573747572655F66756E633C +:10EA900074696F6E5F696E697400000000000000A9 +:10EAA0000000000000000000000000000000000066 +:10EAB0000000000000000000000000000000000056 +:10EAC0000000000075E400087EE400084C696768F7 +:10EAD000745F546D67333939325F416D6269656EB9 +:10EAE000745F50726F62650000000000000000005B +:10EAF0000000000000000000000000000000000016 +:10EB00000000000000000000000000007FE400089A +:10EB1000C4E400084C696768745F546D6733393921 +:10EB2000325F416D6269656E745F4F70656E0000A3 +:10EB300000000000000000000000000000000000D5 +:10EB400000000000000000000000000000000000C5 +:10EB500000000000C5E4000868E500084C6967682B +:10EB6000745F546D67333939325F416D6269656E28 +:10EB7000745F436C6F7365000000000000000000CC +:10EB80000000000000000000000000000000000085 +:10EB900000000000000000000000000069E500081F +:10EBA000ECE500084C696768745F546D6733393968 +:10EBB000325F416D6269656E745F536C65657000AC +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000000000000000000000000000035 +:10EBE00000000000EDE50008F0E500084C696768EA +:10EBF000745F546D67333939325F416D6269656E98 +:10EC0000745F5265616400000000000000000000B5 +:10EC100000000000000000000000000000000000F4 +:10EC2000000000000000000000000000F1E5000806 +:10EC3000C4E70008746D67333939785F7365745FB2 +:10EC4000616C735F6761696E000000000000000086 +:10EC500000000000000000000000000000000000B4 +:10EC600000000000000000000000000000000000A4 +:10EC700000000000C5E7000860E800084C6967680C +:10EC8000745F636F6D70757465466F724C75785FF5 +:10EC9000546D673339393200000000000000000075 +:10ECA0000000000000000000000000000000000064 +:10ECB00000000000000000000000000061E8000803 +:10ECC0004AE900084C696768745F416D6269656E66 +:10ECD000745F66756E6374696F6E5F696E697400E8 +:10ECE0000000000000000000000000000000000024 +:10ECF0000000000000000000000000000000000014 +:10ED0000000000004BE9000854E900084D6F42651F +:10ED1000616D5F546D67333939325F536574426199 +:10ED200072636F6465537461747573000000000052 +:10ED300000000000000000000000000000000000D3 +:10ED400000000000000000000000000055E900087D +:10ED50005CE900084D6F4265616D5F546D67333942 +:10ED600039325F50726F62650000000000000000E1 +:10ED70000000000000000000000000000000000093 +:10ED80000000000000000000000000000000000083 +:10ED9000000000005DE900089CE900084D6F426535 +:10EDA000616D5F546D67333939325F6265616D5FE4 +:10EDB000696E69740000000000000000000000009F +:10EDC0000000000000000000000000000000000043 +:10EDD0000000000000000000000000009DE90008A5 +:10EDE000D4E900084D6F4265616D5F546D6733393A +:10EDF00039325F50726F636573730000000000006A +:10EE00000000000000000000000000000000000002 +:10EE100000000000000000000000000000000000F2 +:10EE200000000000D5E900083EEA00084D6F426589 +:10EE3000616D5F546D67333939325F6265616D5F53 +:10EE4000786D697400000000000000000000000000 +:10EE500000000000000000000000000000000000B2 +:10EE60000000000000000000000000003FEA000871 +:10EE7000B4EA00084D6F4265616D5F546D673339C8 +:10EE800039325F5365745F446174610000000000B3 +:10EE90000000000000000000000000000000000072 +:10EEA0000000000000000000000000000000000062 +:10EEB00000000000B5EA0008BEEB00084D6F426597 +:10EEC000616D5F546D67333939325F5365745F48E4 +:10EED0006F70000000000000000000000000000053 +:10EEE0000000000000000000000000000000000022 +:10EEF000000000000000000000000000BFEB000860 +:10EF000024EC00084D6F4265616D5F546D673339C5 +:10EF100039325F536C6F74436F756E745F496E6303 +:10EF200072656173650000000000000000000000D1 +:10EF300000000000000000000000000000000000D1 +:10EF40000000000025EC000832EC00084D6F42651F +:10EF5000616D5F546D67333939325F5365745F4853 +:10EF60006F70436F756E74000000000000000000B9 +:10EF70000000000000000000000000000000000091 +:10EF800000000000000000000000000033EC00085A +:10EF900052EC00084D6F4265616D5F546D67333907 +:10EFA00039325F5365745F53746F70466C616700EC +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000000000000000000000000000041 +:10EFD0000000000053EC00085AEC00084D6F426539 +:10EFE000616D5F546D67333939325F5365745F52B9 +:10EFF000756E6E696E67466C616700000000000008 +:10F000000000000000000000000000000000000000 +:10F010000000000000000000000000005BEC0008A1 +:10F0200062EC00084D6F4265616D5F546D67333966 +:10F0300039325F4765745F52756E6E696E67466CF4 +:10F0400061670000000000000000000000000000F8 +:10F0500000000000000000000000000000000000B0 +:10F060000000000063EC000868EC00084D6F42658A +:10F07000616D5F546D67333939325F5365745F4436 +:10F080006174614C656E67746800000000000000E8 +:10F090000000000000000000000000000000000070 +:10F0A00000000000000000000000000069EC000803 +:10F0B00088EC00084D6F4265616D5F546D673339B0 +:10F0C00039325F736176655F7368617265645F6230 +:10F0D00065616D00000000000000000000000000FD +:10F0E0000000000000000000000000000000000020 +:10F0F0000000000089EC0008ECEC00084D6F426550 +:10F10000616D5F546D67333939325F726573746F47 +:10F1100072655F7368617265645F6265616D00004E +:10F1200000000000000000000000000000000000DF +:10F13000000000000000000000000000EDEC0008EE +:10F140004AED00084D6F4265616D5F546D6733395C +:10F1500039325F436C6F73650000000000000000EF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000004BED000824EF00084C50533203 +:10F1900035485F496E6974000000000000000000FF +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C00000000000000000000000000025EF000823 +:10F1D000B4EF00084C50533235485F557064617489 +:10F1E000654F4452000000000000000000000000D5 +:10F1F000000000000000000000000000000000000F +:10F2000000000000000000000000000000000000FE +:10F2100000000000B5EF00084CF000084C505332DD +:10F2200035485F506F776572446F776E000000005D +:10F2300000000000000000000000000000000000CE +:10F2400000000000000000000000000000000000BE +:10F250000000000000000000000000004DF0000869 +:10F2600080F000084C50533235485F506F7765721C +:10F270004F6E0000000000000000000000000000D1 +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A0000000000081F0000894F000084261726FD5 +:10F2B0006D657465725F4C50533235485F50726FA4 +:10F2C0006265000000000000000000000000000077 +:10F2D000000000000000000000000000000000002E +:10F2E00000000000000000000000000095F0000891 +:10F2F000AEF000084261726F6D657465725F4C50CC +:10F30000533235485F4F70656E000000000000000A +:10F3100000000000000000000000000000000000ED +:10F3200000000000000000000000000000000000DD +:10F3300000000000AFF00008C0F000084261726FEA +:10F340006D657465725F4C5053323548505F436C45 +:10F350006F73650000000000000000000000000066 +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000C1F00008D4 +:10F38000D2F000084261726F6D657465725F4C5017 +:10F39000533235485F536C65657000000000000013 +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C00000000000D3F00008D6F000084261726F20 +:10F3D0006D657465725F4C50533235485F4D6561A1 +:10F3E000737572650000000000000000000000005E +:10F3F000000000000000000000000000000000000D +:10F40000000000000000000000000000D7F000082D +:10F41000DAF000084261726F6D657465725F4C507E +:10F42000533235485F5265616400000000000000FF +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000DBF0000848F100084261726F14 +:10F460006D657465725F4C50533235485F536176F9 +:10F470006554656D70000000000000000000000091 +:10F48000000000000000000000000000000000007C +:10F4900000000000000000000000000049F100082A +:10F4A00088F100084261726F6D657465725F4C503F +:10F4B000533235485F53656C6674657374000000A1 +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E0000000000089F100088CF100084261726F91 +:10F4F0006D657465725F4C50533235485F496F6378 +:10F50000746C00000000000000000000000000001B +:10F5100000000000000000000000000000000000EB +:10F520000000000000000000000000008DF1000855 +:10F5300090F100084261726F5F66756E6374696F67 +:10F540006E5F696E6974000000000000000000003A +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F570000000000091F10008F8F1000842756C6B82 +:10F5800053656E736F725F50726F626500000000AA +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000F9F1000859 +:10F5C000FCF1000842756C6B53656E736F725F4F90 +:10F5D00070656E00000000000000000000000000E8 +:10F5E000000000000000000000000000000000001B +:10F5F000000000000000000000000000000000000B +:10F6000000000000FDF1000800F2000842756C6B7C +:10F6100053656E736F725F436C6F7365000000001B +:10F6200000000000000000000000000000000000DA +:10F6300000000000000000000000000000000000CA +:10F6400000000000000000000000000001F20008BF +:10F6500004F2000842756C6B53656E736F725F52F3 +:10F660006561640000000000000000000000000070 +:10F67000000000000000000000000000000000008A +:10F68000000000000000000000000000000000007A +:10F690000000000005F200082CF2000842756C6BB7 +:10F6A00053656E736F725F57726974650000000076 +:10F6B000000000000000000000000000000000004A +:10F6C000000000000000000000000000000000003A +:10F6D0000000000000000000000000002DF2000803 +:10F6E00030F2000842756C6B53656E736F725F4D3C +:10F6F0006561737572650000000000000000000085 +:10F7000000000000000000000000000000000000F9 +:10F7100000000000000000000000000000000000E9 +:10F720000000000031F2000834F2000842756C6BF2 +:10F7300053656E736F725F496F63746C00000000F5 +:10F7400000000000000000000000000000000000B9 +:10F7500000000000000000000000000000000000A9 +:10F7600000000000000000000000000035F200086A +:10F7700044F2000842756C6B53656E736F725F5391 +:10F78000656C667465737400000000000000000082 +:10F790000000000000000000000000000000000069 +:10F7A0000000000000000000000000000000000059 +:10F7B0000000000045F2000864F2000854656D7016 +:10F7C0005F66756E6374696F6E5F696E69745F42C0 +:10F7D000756C6B00000000000000000000000000DD +:10F7E0000000000000000000000000000000000019 +:10F7F00000000000000000000000000065F20008AA +:10F800006EF2000853656E736F725F42696F5F69D5 +:10F810006E69745F42756C6B0000000000000000B0 +:10F8200000000000000000000000000000000000D8 +:10F8300000000000000000000000000000000000C8 +:10F84000000000006FF2000890F2000854696C7428 +:10F850004D6F74696F6E5F53656E736F725F66751F +:10F860006E6374696F6E5F42756C6B000000000020 +:10F870000000000000000000000000000000000088 +:10F8800000000000000000000000000091F20008ED +:10F89000C0F20008537465704465746563746F72D8 +:10F8A0005F50726F62650000000000000000000001 +:10F8B0000000000000000000000000000000000048 +:10F8C0000000000000000000000000000000000038 +:10F8D00000000000C1F20008D4F200085374657003 +:10F8E0004465746563746F725F4F70656E000000ED +:10F8F0000000000000000000000000000000000008 +:10F9000000000000000000000000000000000000F7 +:10F91000000000000000000000000000D5F2000818 +:10F920000AF30008537465704465746563746F72FC +:10F930005F436C6F73650000000000000000000072 +:10F9400000000000000000000000000000000000B7 +:10F9500000000000000000000000000000000000A7 +:10F96000000000000BF3000842F3000853746570B8 +:10F970004465746563746F725F536C6565700000F5 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000000000000067 +:10F9A00000000000000000000000000043F3000819 +:10F9B0007AF30008537465704465746563746F72FC +:10F9C0005F5265616400000000000000000000005C +:10F9D0000000000000000000000000000000000027 +:10F9E0000000000000000000000000000000000017 +:10F9F000000000007BF300087EF300085369676E87 +:10FA000069666963616E744D6F74696F6E5F507281 +:10FA10006F626500000000000000000000000000B0 +:10FA200000000000000000000000000000000000D6 +:10FA30000000000000000000000000007FF300084C +:10FA400092F300085369676E69666963616E744D6D +:10FA50006F74696F6E5F4F70656E0000000000008C +:10FA60000000000000000000000000000000000096 +:10FA70000000000000000000000000000000000086 +:10FA80000000000093F30008C8F300085369676E94 +:10FA900069666963616E744D6F74696F6E5F436C04 +:10FAA0006F7365000000000000000000000000000F +:10FAB0000000000000000000000000000000000046 +:10FAC000000000000000000000000000C9F3000872 +:10FAD00000F400085369676E69666963616E744D6E +:10FAE0006F74696F6E5F536C656570000000000095 +:10FAF0000000000000000000000000000000000006 +:10FB000000000000000000000000000000000000F5 +:10FB10000000000001F4000838F400085369676E23 +:10FB200069666963616E744D6F74696F6E5F52656B +:10FB30006164000000000000000000000000000000 +:10FB400000000000000000000000000000000000B5 +:10FB500000000000000000000000000039F4000870 +:10FB60003CF40008556E63616C69627261746547AC +:10FB700079726F5F50726F626500000000000000D4 +:10FB80000000000000000000000000000000000075 +:10FB90000000000000000000000000000000000065 +:10FBA000000000003DF4000850F40008556E636149 +:10FBB0006C6962726174654779726F5F4F70656ED0 +:10FBC0000000000000000000000000000000000035 +:10FBD0000000000000000000000000000000000025 +:10FBE00000000000000000000000000051F40008C8 +:10FBF00086F40008556E63616C69627261746547D2 +:10FC000079726F5F436C6F73650000000000000045 +:10FC100000000000000000000000000000000000E4 +:10FC200000000000000000000000000000000000D4 +:10FC30000000000087F40008BEF40008556E636100 +:10FC40006C6962726174654779726F5F536C656548 +:10FC50007000000000000000000000000000000034 +:10FC60000000000000000000000000000000000094 +:10FC7000000000000000000000000000BFF40008C9 +:10FC8000F6F40008556E63616C69627261746547D1 +:10FC900079726F5F5265616400000000000000002F +:10FCA0000000000000000000000000000000000054 +:10FCB0000000000000000000000000000000000044 +:10FCC00000000000F7F40008FAF4000847616D65D1 +:10FCD000526F746174696F6E566563746F725F50B2 +:10FCE000726F62650000000000000000000000006C +:10FCF0000000000000000000000000000000000004 +:10FD0000000000000000000000000000FBF40008FC +:10FD100012F5000847616D65526F746174696F6E0A +:10FD2000566563746F725F4F70656E00000000006F +:10FD300000000000000000000000000000000000C3 +:10FD400000000000000000000000000000000000B3 +:10FD50000000000013F5000856F5000847616D65C6 +:10FD6000526F746174696F6E566563746F725F432E +:10FD70006C6F7365000000000000000000000000D0 +:10FD80000000000000000000000000000000000073 +:10FD900000000000000000000000000057F500080F +:10FDA000A6F5000847616D65526F746174696F6EE6 +:10FDB000566563746F725F536C6565700000000078 +:10FDC0000000000000000000000000000000000033 +:10FDD0000000000000000000000000000000000023 +:10FDE00000000000A7F50008AAF5000847616D654E +:10FDF000526F746174696F6E566563746F725F528F +:10FE000065616400000000000000000000000000C8 +:10FE100000000000000000000000000000000000E2 +:10FE2000000000000000000000000000ABF500082A +:10FE3000AEF50008526F746174696F6E5665637435 +:10FE40006F725F50726F626500000000000000007A +:10FE500000000000000000000000000000000000A2 +:10FE60000000000000000000000000000000000092 +:10FE700000000000AFF50008C6F50008526F74617D +:10FE800074696F6E566563746F725F4F70656E0054 +:10FE90000000000000000000000000000000000062 +:10FEA0000000000000000000000000000000000052 +:10FEB000000000000000000000000000C7F500087E +:10FEC00018F60008526F746174696F6E566563743A +:10FED0006F725F436C6F73650000000000000000EC +:10FEE0000000000000000000000000000000000012 +:10FEF0000000000000000000000000000000000002 +:10FF00000000000019F6000868F60008526F7461DE +:10FF100074696F6E566563746F725F536C6565705C +:10FF200000000000000000000000000000000000D1 +:10FF300000000000000000000000000000000000C1 +:10FF400000000000000000000000000069F600084A +:10FF50006CF60008526F746174696F6E5665637455 +:10FF60006F725F52656164000000000000000000D5 +:10FF70000000000000000000000000000000000081 +:10FF80000000000000000000000000000000000071 +:10FF9000000000006DF6000870F6000853746570EC +:10FFA000436F756E7465725F50726F62650000001A +:10FFB0000000000000000000000000000000000041 +:10FFC0000000000000000000000000000000000031 +:10FFD00000000000000000000000000071F60008B2 +:10FFE00084F6000853746570436F756E7465725FB4 +:10FFF0004F70656E0000000000000000000000006F +:020000024000BC +:1000000000000000000000000000000000000000F0 +:1000100000000000000000000000000000000000E0 +:100020000000000085F60008BAF6000853746570F9 +:10003000436F756E7465725F436C6F73650000008B +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:10006000000000000000000000000000BBF60008D7 +:10007000F2F6000853746570436F756E7465725FB5 +:10008000536C656570000000000000000000000077 +:100090000000000000000000000000000000000060 +:1000A0000000000000000000000000000000000050 +:1000B00000000000F3F600082AF70008537465708A +:1000C000436F756E7465725F526561640000000075 +:1000D0000000000000000000000000000000000020 +:1000E0000000000000000000000000000000000010 +:1000F0000000000000000000000000002BF70008D6 +:1001000030F700084D52325F53656E736F725F5364 +:100110006574446174615261746500000000000000 +:1001200000000000000000000000000000000000CF +:1001300000000000000000000000000000000000BF +:100140000000000031F70008F6F700084765745218 +:100150006F746174696F6E566563746F7252617407 +:10016000650000000000000000000000000000002A +:10017000000000000000000000000000000000007F +:10018000000000000000000000000000F7F7000879 +:100190004CF800084D52325F53656E736F725F43C7 +:1001A00068616E6765446174615261746500000046 +:1001B000000000000000000000000000000000003F +:1001C000000000000000000000000000000000002F +:1001D000000000004DF80008BEF800084D52325FE4 +:1001E00053656E736F725F66756E6374696F6E5F71 +:1001F000696E69740000000000000000000000004B +:1002000000000000000000000000000000000000EE +:10021000000000000000000000000000BFF800081F +:10022000F8F9000853485F53455F496E6974696186 +:100230006C697A6553656E736F724D616E61676547 +:10024000720000000000000000000000000000003C +:10025000000000000000000000000000000000009E +:1002600000000000F9F9000808FA00086765745FEB +:1002700074696D657374616D7000000000000000AA +:10028000000000000000000000000000000000006E +:10029000000000000000000000000000000000005E +:1002A00000000000000000000000000009FA000843 +:1002B0001AFA00086170706C795F63616C5F646149 +:1002C0007461000000000000000000000000000059 +:1002D000000000000000000000000000000000001E +:1002E000000000000000000000000000000000000E +:1002F000000000001BFA0008FCFA000853485F5396 +:10030000455F41786973436F6E76657274657200FC +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:10033000000000000000000000000000FDFA0008BE +:1003400054FC000853485F53455F556E6974436F12 +:100350006E76657274657200000000000000000097 +:10036000000000000000000000000000000000008D +:10037000000000000000000000000000000000007D +:100380000000000055FC0008B0FD000853485F5312 +:10039000455F53656C66546573740000000000008F +:1003A000000000000000000000000000000000004D +:1003B000000000000000000000000000000000003D +:1003C000000000000000000000000000B1FD000877 +:1003D000EEFD000863616C63756C6174655F62615A +:1003E0007463685F6F7074696F6E73000000000063 +:1003F00000000000000000000000000000000000FD +:1004000000000000000000000000000000000000EC +:1004100000000000EFFD00080EFE0008757064612A +:1004200074655F62617463685F6F7074696F6E7327 +:1004300000000000000000000000000000000000BC +:1004400000000000000000000000000000000000AC +:100450000000000000000000000000000FFE000887 +:1004600024FE000872657365745F62617463685F7F +:100470006F7074696F6E7300000000000000000070 +:10048000000000000000000000000000000000006C +:10049000000000000000000000000000000000005C +:1004A0000000000025FE000832FE000873656C6540 +:1004B00063745F64696D656E73696F6E5F6D6F64A1 +:1004C00065000000000000000000000000000000C7 +:1004D000000000000000000000000000000000001C +:1004E00000000000000000000000000033FE0008D3 +:1004F00064FE000853485F53455F41646453656E72 +:10050000736F720000000000000000000000000097 +:1005100000000000000000000000000000000000DB +:1005200000000000000000000000000000000000CB +:100530000000000065FE00082EFF000853485F53CE +:10054000455F52656D6F766553656E736F7200001F +:10055000000000000000000000000000000000009B +:10056000000000000000000000000000000000008B +:100570000000000000000000000000002FFF000845 +:10058000B4FF000853485F44505F4368616E67657D +:1005900053656E736F725261746500000000000055 +:1005A000000000000000000000000000000000004B +:1005B000000000000000000000000000000000003B +:1005C00000000000B5FF00084E00010853485F44DA +:1005D000505F55706461746153656E736F72496EDC +:1005E000666F000000000000000000000000000036 +:1005F00000000000000000000000000000000000FB +:100600000000000000000000000000004F00010892 +:10061000DE0001087570646174655F73616D706CF4 +:10062000696E675F72617465000000000000000081 +:1006300000000000000000000000000000000000BA +:1006400000000000000000000000000000000000AA +:1006500000000000DF00010846010108696E635FC9 +:10066000667265715F636C69656E7473000000008B +:10067000000000000000000000000000000000007A +:10068000000000000000000000000000000000006A +:100690000000000000000000000000004701010809 +:1006A000B40101084F535F5075744D61696C0000CF +:1006B000000000000000000000000000000000003A +:1006C000000000000000000000000000000000002A +:1006D000000000000000000000000000000000001A +:1006E00000000000B50101081402010853485F4CE6 +:1006F0004D5F4765744C6962726172795265664DEF +:100700006178436F756E7400000000000000000007 +:1007100000000000000000000000000000000000D9 +:1007200000000000000000000000000015020108A9 +:100730004A02010853485F4C4D5F49734C6962722D +:100740006172795573696E674D6F7265496E666F38 +:100750000000000000000000000000000000000099 +:100760000000000000000000000000000000000089 +:10077000000000004B0201089802010853485F4C3A +:100780004D5F4765744C696272617279526174653C +:100790000000000000000000000000000000000059 +:1007A0000000000000000000000000000000000049 +:1007B0000000000000000000000000009902010895 +:1007C0001803010853485F4C4D5F496E69746961B5 +:1007D0006C697A654C6962726172794D616E6167AC +:1007E0006572000000000000000000000000000032 +:1007F00000000000000000000000000000000000F9 +:1008000000000000190301088405010853485F4CEB +:100810004D5F4164644C696272617279000000004E +:1008200000000000000000000000000000000000C8 +:1008300000000000000000000000000000000000B8 +:100840000000000000000000000000008505010815 +:100850001607010853485F4C4D5F53746172744C26 +:1008600069627261727900000000000000000000FF +:100870000000000000000000000000000000000078 +:100880000000000000000000000000000000000068 +:1008900000000000170701088407010853485F4C57 +:1008A0004D5F52656D6F76654C6962726172790059 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000000000000028 +:1008D0000000000000000000000000008507010883 +:1008E000E208010853485F4C4D5F53746F704C69C8 +:1008F00062726172790000000000000000000000D8 +:1009000000000000000000000000000000000000E7 +:1009100000000000000000000000000000000000D7 +:1009200000000000E30801084E09010853485F4C2D +:100930004D5F5465726D696E6174654C6962726178 +:1009400072790000000000000000000000000000BC +:100950000000000000000000000000000000000097 +:100960000000000000000000000000004F09010826 +:100970008209010853485F4C4D5F50726F63657385 +:10098000734C69627261727900000000000000001F +:100990000000000000000000000000000000000057 +:1009A0000000000000000000000000000000000047 +:1009B00000000000830901083A0A010853485F4C0F +:1009C0004D5F56616C69646174655F4C6962726108 +:1009D00072795261746500000000000000000000A0 +:1009E0000000000000000000000000000000000007 +:1009F0000000000000000000000000003B0A0108A9 +:100A00004C0A010853485F4C4D5F4368616E67654F +:100A10004C69627261727952617465000000000075 +:100A200000000000000000000000000000000000C6 +:100A300000000000000000000000000000000000B6 +:100A4000000000004D0A01085A0B010853485F4C92 +:100A50004D5F5365744C6962726172794275665478 +:100A60006F5472616E7366657200000000000000D2 +:100A70000000000000000000000000000000000076 +:100A80000000000000000000000000005B0B0108F7 +:100A9000B60B010853485F4C4D5F496E697469613C +:100AA0006C697A654C696272617279427566546FDD +:100AB0005472616E736665720000000000000000F1 +:100AC0000000000000000000000000000000000026 +:100AD00000000000B70B0108E40B010853485F4C0D +:100AE0004D5F4765744C6962726172794F6E5374E1 +:100AF0006174757300000000000000000000000039 +:100B000000000000000000000000000000000000E5 +:100B1000000000000000000000000000E50B0108DC +:100B20000A0C010853485F4C4D5F52656D6F766546 +:100B3000416C6C416464656453656E736F724F6E93 +:100B40004C696272617279000000000000000000D0 +:100B50000000000000000000000000000000000095 +:100B6000000000000B0C01087E0C010853485F4C8C +:100B70004D5F47657453656E736F72496E7465722D +:100B8000727570744F6363757265640000000000D5 +:100B90000000000000000000000000000000000055 +:100BA0000000000000000000000000007F0C0108B1 +:100BB000FA0C010853485F4C4D5F5365745F4765FD +:100BC0007456616C756553657276696365000000E3 +:100BD0000000000000000000000000000000000015 +:100BE0000000000000000000000000000000000005 +:100BF00000000000FB0C0108120D010853485F4C77 +:100C00004D5F47657443757272656E7453656E739C +:100C10006F72446174610000000000000000000079 +:100C200000000000000000000000000000000000C4 +:100C3000000000000000000000000000130D01088B +:100C4000680D010853485F4C4D5F436F70794375E1 +:100C50007272656E7453656E736F72446174610075 +:100C60000000000000000000000000000000000084 +:100C70000000000000000000000000000000000074 +:100C800000000000690D0108A80D010853485F4CE1 +:100C90004D5F5365744C69627261727950726F7006 +:100CA0006572747900000000000000000000000080 +:100CB0000000000000000000000000000000000034 +:100CC000000000000000000000000000A90D010865 +:100CD0006A0E010853485F4C4D5F5365745F416471 +:100CE000646974696F6E616C44617461466F724CC3 +:100CF00069627261727952656D6F766500000000FD +:100D000000000000000000000000000000000000E3 +:100D1000000000006B0E0108700E010853485F4C84 +:100D20004D5F4765744164646974696F6E616C44BA +:100D3000617461466F724C69627261727952656D5D +:100D40006F76650000000000000000000000000059 +:100D5000000000000000000000000000710E01080B +:100D6000780F01085F5F61656162695F6C6C737227 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D90000000000000000000000000000000000053 +:100DA00000000000790F0108980F010853485F4CBC +:100DB0004D5F54656D706C6174655F4D6574686FEF +:100DC00064496E697469616C697A655F4F726965BF +:100DD0006E746174696F6E43616C630000000000A3 +:100DE000000000000000000000000000990F010852 +:100DF000D40F010853485F4C4D5F476574474D4F12 +:100E00006666736574446174610000000000000050 +:100E100000000000000000000000000000000000D2 +:100E200000000000000000000000000000000000C2 +:100E300000000000D50F0108DC0F010853485F4C8B +:100E40004D5F496E697469616C697A65474D4C699B +:100E50006200000000000000000000000000000030 +:100E60000000000000000000000000000000000082 +:100E7000000000000000000000000000DD0F01087D +:100E8000FC0F010853485F53544D5F476574536529 +:100E90006E736F7244617461466F7253656E736FE7 +:100EA0007248756253656C66546573740000000087 +:100EB0000000000000000000000000000000000032 +:100EC00000000000FD0F0108801101084F535F531F +:100ED00069676E616C4576656E7400000000000005 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000000000000F2 +:100F00000000000000000000000000008111010846 +:100F1000DC11010853485F4C4D5F54656D706C6186 +:100F200074655F53746172745F456E7669726F6E3B +:100F30006D656E7453656E736F7200000000000083 +:100F400000000000000000000000000000000000A1 +:100F500000000000DD1101081212010853485F4C27 +:100F60004D5F54656D706C6174655F53746F705F35 +:100F7000456E7669726F6E6D656E7453656E736FD4 +:100F800072000000000000000000000000000000EF +:100F90000000000000000000000000001312010823 +:100FA0002012010853485F4C4D5F456E7669726FA1 +:100FB0006D656E7453656E736F725F5365744C6FBD +:100FC0006767696E67537461747573000000000091 +:100FD0000000000000000000000000000000000011 +:100FE00000000000211201082812010853485F4C3C +:100FF0004D5F54656D706C6174655F50726F6365B1 +:1010000073735F456E7669726F6E6D656E7453654E +:101010006E736F720000000000000000000000000E +:10102000000000000000000000000000291201087C +:10103000AC12010853485F4C4D5F54656D706C6194 +:1010400074655F4D6574686F64496E697469616C3D +:10105000697A655F456E7669726F6E6D656E745301 +:10106000656E736F72000000000000000000000059 +:1010700000000000AD120108D812010853485F4C6F +:101080004D5F54656D706C6174655F436865636B3B +:101090005F456E7669726F6E6D656E7453656E73C3 +:1010A0006F7200000000000000000000000000005F +:1010B000000000000000000000000000D91201083C +:1010C000F412010853485F4C4D5F456E7669726FAC +:1010D0006E6D656E7453656E736F725F417070658F +:1010E0006E644C6962726172794D53470000000072 +:1010F00000000000000000000000000000000000F0 +:1011000000000000F51201088C13010853485F4CE1 +:101110004D5F54656D706C6174655F53746172747A +:101120005F5065646F0000000000000000000000D8 +:1011300000000000000000000000000000000000AF +:101140000000000000000000000000008D130108F6 +:10115000F413010853485F4C4D5F54656D706C612A +:1011600074655F53746F705F5065646F00000000BA +:10117000000000000000000000000000000000006F +:10118000000000000000000000000000000000005F +:1011900000000000F5130108F813010853485F4CE4 +:1011A0004D5F54656D706C6174655F50726F6365FF +:1011B00073735F5065646F00000000000000000062 +:1011C000000000000000000000000000000000001F +:1011D000000000000000000000000000F9130108FA +:1011E0006614010853485F4C4D5F5065646F6D6530 +:1011F0007465725F436865636B55706461746554B0 +:10120000696D6500000000000000000000000000A3 +:1012100000000000000000000000000000000000CE +:1012200000000000671401081C15010853485F4CBA +:101230004D5F5065646F6D657465725F436F6D706F +:1012400075746555706461746554696D650000005E +:10125000000000000000000000000000000000008E +:101260000000000000000000000000001D15010843 +:10127000D415010853485F4C4D5F54656D706C6127 +:1012800074655F4D6574686F64496E697469616CFB +:10129000697A655F5065646F00000000000000001F +:1012A000000000000000000000000000000000003E +:1012B00000000000D51501083A16010853485F4C9C +:1012C0004D5F5065646F6D657465725F53617665DF +:1012D0004261746368696E6754696D65000000005F +:1012E00000000000000000000000000000000000FE +:1012F0000000000000000000000000003B16010894 +:101300008816010853485F4C4D5F5065646F6D65EA +:101310007465725F536176654261746368696E6774 +:101320004461746100000000000000000000000043 +:1013300000000000000000000000000000000000AD +:1013400000000000891601087618010853485F4C18 +:101350004D5F5065646F6D657465725F436865636A +:101360006B42617463684172726179000000000031 +:10137000000000000000000000000000000000006D +:1013800000000000000000000000000077180108C5 +:10139000B818010853485F4C4D5F436865636B5054 +:1013A00065646F6D657465724275660000000000CB +:1013B000000000000000000000000000000000002D +:1013C000000000000000000000000000000000001D +:1013D00000000000B9180108CC1B010853485F4CFD +:1013E0004D5F5065646F6D657465725F41646445FF +:1013F000787465726E616C4D6F646500000000006A +:1014000000000000000000000000000000000000DC +:10141000000000000000000000000000CD1B0108DB +:10142000EA1B010853485F4C4D5F5065646F6D6562 +:101430007465725F52656D6F766545787465726E1E +:10144000616C4D6F6465000000000000000000004A +:10145000000000000000000000000000000000008C +:1014600000000000EB1B0108F41B010853485F4C0F +:101470004D5F5570646174655065646F6D6574652A +:101480007244617461000000000000000000000070 +:10149000000000000000000000000000000000004C +:1014A000000000000000000000000000F51B010823 +:1014B000101C010853485F4C4D5F5065646F6D65AB +:1014C0007465725F4765744469666656616C7565DC +:1014D000000000000000000000000000000000000C +:1014E00000000000000000000000000000000000FC +:1014F00000000000111C0108181C010853485F4C33 +:101500004D5F5065646F6D657465725F526573659C +:10151000744469666656616C7565000000000000E1 +:1015200000000000000000000000000000000000BB +:10153000000000000000000000000000191C01086D +:10154000241C010853485F4C4D5F4765744469662D +:101550006653746570436F756E7400000000000080 +:10156000000000000000000000000000000000007B +:10157000000000000000000000000000000000006B +:1015800000000000251C0108341D010853485F4C71 +:101590004D5F5065646F6D657465725F536574531C +:1015A000797374656D54696D654E6F7469000000E0 +:1015B000000000000000000000000000000000002B +:1015C000000000000000000000000000351D0108C0 +:1015D0003E1D010853485F4C4D5F5065646F6D655B +:1015E0007465725F436865636B53797374656D549A +:1015F000696D654E6F746900000000000000000016 +:1016000000000000000000000000000000000000DA +:10161000000000003F1D0108461D010853485F4CB3 +:101620004D5F5065646F6D657465725F5365745589 +:10163000736572496E666F000000000000000000D4 +:10164000000000000000000000000000000000009A +:10165000000000000000000000000000471D01081D +:101660004A1D010853485F4C4D5F5065646F6D65BE +:101670007465725F53657453746570496E666F521A +:1016800065717565737400000000000000000000C3 +:10169000000000000000000000000000000000004A +:1016A000000000004B1D0108681D010853485F4CF5 +:1016B0004D5F5065646F6D657465725F5365744905 +:1016C0006E666F55706461746554696D65000000E5 +:1016D000000000000000000000000000000000000A +:1016E000000000000000000000000000691D01086B +:1016F000F41D010853485F4C4D5F5065646F6D6584 +:101700007465725F476574426174636844617461B3 +:10171000427566666572000000000000000000006F +:1017200000000000000000000000000000000000B9 +:1017300000000000F51D0108FA1D010853485F4C28 +:101740004D5F5065646F6D657465725F4D616B656B +:10175000426174636844617461000000000000002D +:101760000000000000000000000000000000000079 +:10177000000000000000000000000000FB1D010848 +:10178000C41E010853485F4C4D5F5065646F6D6522 +:101790007465725F47657442617463684461746123 +:1017A0004C656E67746800000000000000000000D7 +:1017B0000000000000000000000000000000000029 +:1017C00000000000C51E0108D81E010853485F4CE8 +:1017D0004D5F5065646F6D657465725F436C6561E4 +:1017E000724261746368446174610000000000002B +:1017F00000000000000000000000000000000000E9 +:10180000000000000000000000000000D91E0108D8 +:10181000FC1E010853485F4C4D5F47657444696680 +:1018200066546F74616C43616C6F7269650000008F +:1018300000000000000000000000000000000000A8 +:101840000000000000000000000000000000000098 +:1018500000000000FD1E01088C1F010853485F4C6A +:101860004D5F47657444696666546F74616C446982 +:101870007374616E636500000000000000000000EA +:101880000000000000000000000000000000000058 +:101890000000000000000000000000008D1F010893 +:1018A0004820010853485F4C4D5F5065646F6D657B +:1018B0007465725F417070656E644C6962726172CA +:1018C000794D5347000000000000000000000000B8 +:1018D0000000000000000000000000000000000008 +:1018E0000000000049200108EC25010853485F4C26 +:1018F0004D5F496E697469616C697A6541637469A9 +:1019000076697479547261636B657200000000003F +:1019100000000000000000000000000000000000C7 +:10192000000000000000000000000000ED2501089C +:101930001226010853485F4C4D5F55706461746511 +:101940004163746976697479547261636B65724D31 +:10195000616E616765720000000000000000000019 +:101960000000000000000000000000000000000077 +:101970000000000013260108E826010853485F4CC8 +:101980004D5F4163746976697479547261636B6504 +:10199000725F536574436F6E74726F6C4D6F6465E4 +:1019A0000000000000000000000000000000000037 +:1019B000000000000000000000000000E92601080F +:1019C000F226010853485F4C4D5F54656D706C61A1 +:1019D00074655F53746172745F416374697669748E +:1019E00079547261636B65720000000000000000B2 +:1019F00000000000000000000000000000000000E7 +:101A000000000000F32601089829010853485F4CA4 +:101A10004D5F54656D706C6174655F53746F705F7A +:101A20004163746976697479547261636B6572009D +:101A300000000000000000000000000000000000A6 +:101A400000000000000000000000000099290108CB +:101A5000D02B010853485F4C4D5F54656D706C612D +:101A600074655F50726F636573735F416374697609 +:101A7000697479547261636B657200000000000044 +:101A80000000000000000000000000000000000056 +:101A900000000000D12B0108D030010853485F4CF2 +:101AA0004D5F4163746976697479547261636B65E3 +:101AB000725F4261746368696E67416374697669D5 +:101AC00074794461746100000000000000000000AF +:101AD000000000000000000000000000D1300108FC +:101AE0002232010853485F4C4D5F41637469766947 +:101AF0007479547261636B65725F436865636B42AE +:101B000061746368446174615265616479000000C6 +:101B100000000000000000000000000000000000C5 +:101B200000000000233201083C32010853485F4C9A +:101B30004D5F4163746976697479547261636B6552 +:101B4000725F436C65617242617463684461746181 +:101B50000000000000000000000000000000000085 +:101B60000000000000000000000000003D320108FD +:101B70004832010853485F4C4D5F41637469766990 +:101B80007479547261636B65725F47657442617406 +:101B900063684461746142756666657200000000A6 +:101BA0000000000000000000000000000000000035 +:101BB00000000000493201086432010853485F4CBC +:101BC0004D5F4163746976697479547261636B65C2 +:101BD000725F4765744261746368446174614C6507 +:101BE0006E67746800000000000000000000000044 +:101BF0000000000000000000000000006532010845 +:101C00007A32010853485F4C4D5F54656D706C61CA +:101C100074655F4D6574686F64496E697469616C61 +:101C2000697A655F41637469766974795472616336 +:101C30006B65720000000000000000000000000062 +:101C4000000000007B320108B432010853485F4CA9 +:101C50004D5F436865636B41637469766974795459 +:101C60007261636B657242756600000000000000DF +:101C70000000000000000000000000000000000064 +:101C8000000000000000000000000000B532010864 +:101C9000EC32010853485F4C4D5F476574416374F3 +:101CA0006976697479547261636B65725265636FAA +:101CB000676E697A656400000000000000000000A3 +:101CC0000000000000000000000000000000000014 +:101CD00000000000ED320108F632010853485F4C65 +:101CE0004D5F5365744163746976697479547261A8 +:101CF000636B65725265636F676E697A6564000035 +:101D000000000000000000000000000000000000D3 +:101D1000000000000000000000000000F732010891 +:101D20003833010853485F4C4D5F557064617465EA +:101D30004163746976697479547261636B65724446 +:101D4000617461000000000000000000000000005D +:101D50000000000000000000000000000000000083 +:101D600000000000393301084833010853485F4C34 +:101D70004D5F4163746976697479547261636B6510 +:101D8000725F417070656E644C6962726172794D08 +:101D900053470000000000000000000000000000A9 +:101DA00000000000000000000000000049330108AE +:101DB0001034010853485F4C4D5F43616C63756C90 +:101DC00061746554696D654475726174696F6E0004 +:101DD0000000000000000000000000000000000003 +:101DE00000000000000000000000000000000000F3 +:101DF00000000000113401083834010853485F4CDA +:101E00004D5F43616C63756C6174656455544374D4 +:101E1000696D6546726F6D54696D657374616D703F +:101E200000000000000000000000000000000000B2 +:101E3000000000000000000000000000393401082C +:101E40000635010853485F4C4D5F526571756573E7 +:101E50007443757272656E744163746976697479DE +:101E6000547261636B6572496E666F00000000001A +:101E70000000000000000000000000000000000062 +:101E800000000000073501082A35010853485F4C5F +:101E90004D5F4163746976697479547261636B65EF +:101EA000725F47657443757272656E7444617461E4 +:101EB0000000000000000000000000000000000022 +:101EC0000000000000000000000000002B350108A9 +:101ED0003435010853485F4C4D5F4163746976693E +:101EE0007479547261636B65725F53656C6563747A +:101EF0004261746368696E674D6F6465000000003D +:101F000000000000000000000000000000000000D1 +:101F100000000000353501087035010853485F4C5A +:101F20004D5F646567326465676D696E73656300F4 +:101F300000000000000000000000000000000000A1 +:101F40000000000000000000000000000000000091 +:101F500000000000000000000000000071350108D2 +:101F6000E435010853485F4C4D5F475053324B698D +:101F70006C6F6D6574657200000000000000000069 +:101F80000000000000000000000000000000000051 +:101F90000000000000000000000000000000000041 +:101FA00000000000E5350108E836010853485F4CA1 +:101FB0004D5F43616C63756C6174654D6F76696EDE +:101FC0006744697374616E6365000000000000007F +:101FD0000000000000000000000000000000000001 +:101FE000000000000000000000000000E9360108C9 +:101FF0004437010853485F4C4D5F436865636B5637 +:10200000656869636C654D6F646557697468506F86 +:10201000736974696F6E44617461000000000000B0 +:1020200000000000000000000000000000000000B0 +:102030000000000045370108C03D010853485F4CCF +:102040004D5F54656D706C6174655F436865636B6B +:102050005F53746179696E6753656E73696E67006B +:102060000000000000000000000000000000000070 +:10207000000000000000000000000000C13D010859 +:10208000F83D010853485F4C4D5F54656D706C61BD +:1020900074655F53746172745F53746179696E67BC +:1020A00053656E73696E6700000000000000000059 +:1020B0000000000000000000000000000000000020 +:1020C00000000000F93D0108963E010853485F4CAE +:1020D0004D5F54656D706C6174655F53746F705FB4 +:1020E00053746179696E6753656E73696E6700003A +:1020F00000000000000000000000000000000000E0 +:10210000000000000000000000000000973E0108F1 +:10211000C23E010853485F4C4D5F54656D706C6161 +:1021200074655F417070656E644D53475F537461B1 +:1021300079696E6753656E73696E67000000000011 +:10214000000000000000000000000000000000008F +:1021500000000000C33E0108543F010853485F4C93 +:102160004D5F54656D706C6174655F50726F63652F +:1021700073735F53746179696E6753656E73696ECB +:1021800067000000000000000000000000000000E8 +:10219000000000000000000000000000553F0108A2 +:1021A000FC3F010853485F4C4D5F54656D706C6196 +:1021B00074655F4D6574686F64496E697469616CBC +:1021C000697A655F53746179696E6753656E736987 +:1021D0006E6700000000000000000000000000002A +:1021E00000000000FD3F01084040010853485F4CDB +:1021F0004D5F53746179696E6753656E73696E677D +:102200005F53657443757272656E74506F73697451 +:10221000696F6E0000000000000000000000000078 +:102220000000000000000000000000004140010824 +:102230005440010853485F4C4D5F53746179696E97 +:102240006753656E73696E675F536574506F73692A +:1022500074696F6E49734E6F745265616479466C30 +:1022600061670000000000000000000000000000A6 +:1022700000000000554001085840010853485F4CD9 +:102280004D5F53746179696E6753656E73696E67EC +:102290005F536574557365725761697454696D65F0 +:1022A000000000000000000000000000000000002E +:1022B000000000000000000000000000594001087C +:1022C0005C40010853485F4C4D5F53746179696EFF +:1022D0006753656E73696E675F5365745573657296 +:1022E00053746F7054696D650000000000000000B9 +:1022F00000000000000000000000000000000000DE +:10230000000000005D4001086040010853485F4C38 +:102310004D5F53746179696E6753656E73696E675B +:102320005F53657453746179696E6752616469754E +:10233000730000000000000000000000000000002A +:1023400000000000000000000000000061400108E3 +:102350006440010853485F4C4D5F53746179696E66 +:102360006753656E73696E675F5365745374617903 +:10237000696E67417265615261646975730000003E +:10238000000000000000000000000000000000004D +:1023900000000000654001086840010853485F4C98 +:1023A0004D5F53746179696E6753656E73696E67CB +:1023B0005F436865636B52657175657374506F73C5 +:1023C0006974696F6E496E666F000000000000005E +:1023D000000000000000000000000000694001084B +:1023E0008240010853485F4C4D5F53746179696EB8 +:1023F0006753656E73696E675F5365745379737461 +:10240000656D506F736974696F6E4E6F746900000B +:1024100000000000000000000000000000000000BC +:102420000000000083400108A840010853485F4CA9 +:102430004D5F53746179696E6753656E73696E673A +:102440005F4765744E756D53746179696E6741724B +:1024500065610000000000000000000000000000B6 +:10246000000000000000000000000000A94001087A +:10247000AC40010853485F4C4D5F53746179696EFD +:102480006753656E73696E675F52657365745374E5 +:102490006179696E674172656100000000000000AB +:1024A000000000000000000000000000000000002C +:1024B00000000000AD400108B040010853485F4CE7 +:1024C0004D5F53746179696E6753656E73696E67AA +:1024D0005F47657453746179696E674172656149DC +:1024E0006E666F00000000000000000000000000A9 +:1024F000000000000000000000000000B1400108E2 +:10250000B640010853485F4C4D5F53746179696E62 +:102510006753656E73696E675F5265736574526564 +:102520007175657374506F73466C616700000000CD +:10253000000000000000000000000000000000009B +:1025400000000000B7400108BA40010853485F4C42 +:102550004D5F53746179696E6753656E73696E6719 +:102560005F5365744261746368696E675065726930 +:102570006F64000000000000000000000000000088 +:10258000000000000000000000000000BB40010847 +:10259000BE40010853485F4C4D5F53746179696ECA +:1025A0006753656E73696E675F53617665537461D7 +:1025B00079696E6741726561496E666F000000005F +:1025C000000000000000000000000000000000000B +:1025D00000000000BF400108C240010853485F4CA2 +:1025E0004D5F53746179696E6753656E73696E6789 +:1025F0005F436865636B53746179696E67417265A7 +:1026000061446966666572656E636500000000007E +:10261000000000000000000000000000C3400108AE +:10262000CC40010853485F4C4D5F53746179696E2B +:102630006753656E73696E675F5365744375724166 +:1026400063746976697479547970650000000000DC +:10265000000000000000000000000000000000007A +:1026600000000000CD400108D040010853485F4CF5 +:102670004D5F53746179696E6753656E73696E67F8 +:102680005F47657453746179696E6741726561492A +:102690006E4F757453746174650000000000000093 +:1026A000000000000000000000000000D140010810 +:1026B0004441010853485F4C4D5F54656D706C6137 +:1026C00074655F53746172745F536D6172745F41BE +:1026D0006C65727400000000000000000000000043 +:1026E00000000000000000000000000000000000EA +:1026F00000000000454101086A41010853485F4C51 +:102700004D5F54656D706C6174655F53746F705F7D +:10271000536D6172745F416C65727400000000005B +:1027200000000000000000000000000000000000A9 +:102730000000000000000000000000006B410108E4 +:102740007441010853485F4C4D5F54656D706C6176 +:1027500074655F50726F636573735F536D617274FC +:102760005F416C6572740000000000000000000012 +:102770000000000000000000000000000000000059 +:1027800000000000754101082042010853485F4CD9 +:102790004D5F54656D706C6174655F4D6574686FF5 +:1027A00064496E697469616C697A655F536D6172C1 +:1027B000745F416C6572740000000000000000004E +:1027C000000000000000000000000000214201089D +:1027D0005442010853485F4C4D5F436865636B5337 +:1027E0006D617274416C6572744275660000000020 +:1027F00000000000000000000000000000000000D9 +:1028000000000000000000000000000000000000C8 +:1028100000000000554201086C42010853485F4C1B +:102820004D5F557064617465536D617274416C6580 +:102830007274446174610000000000000000000038 +:102840000000000000000000000000000000000088 +:102850000000000000000000000000006D420108C0 +:102860007842010853485F4C4D5F476574536D6172 +:102870007274416C6572745265636F676E697A65D4 +:1028800064000000000000000000000000000000E4 +:102890000000000000000000000000000000000038 +:1028A00000000000794201088042010853485F4C53 +:1028B0004D5F536574536D617274416C65727452EF +:1028C00065636F676E697A65640000000000000050 +:1028D00000000000000000000000000000000000F8 +:1028E000000000000000000000000000814201081C +:1028F0008642010853485F4C4D5F537461727454B3 +:102900006F4465746563744D6F76656D656E74466E +:102910006F72536D617274416C65727400000000D7 +:1029200000000000000000000000000000000000A7 +:1029300000000000874201089E42010853485F4C96 +:102940004D5F53746F70546F4465746563744D6F5D +:1029500076656D656E74466F72536D617274416C0D +:10296000657274000000000000000000000000001C +:102970000000000000000000000000009F4201086D +:10298000BC42010853485F4C4D5F50726F636573E2 +:1029900073536D617274416C6572744166746572D3 +:1029A000416363496E744F63637572656400000030 +:1029B0000000000000000000000000000000000017 +:1029C00000000000BD4201081443010853485F4C59 +:1029D0004D5F536D617274416C6572745F417070CC +:1029E000656E644C6962726172794D5347000000F4 +:1029F00000000000000000000000000000000000D7 +:102A00000000000000000000000000001543010865 +:102A10004C43010853485F4C4D5F54656D706C61C9 +:102A200074655F53746172745F476C616E63655661 +:102A30006965770000000000000000000000000051 +:102A40000000000000000000000000000000000086 +:102A5000000000004D4301088A43010853485F4CC1 +:102A60004D5F54656D706C6174655F53746F705F1A +:102A7000476C616E63655669657700000000000071 +:102A80000000000000000000000000000000000046 +:102A90000000000000000000000000008B4301085F +:102AA000CC43010853485F4C4D5F54656D706C61B9 +:102AB00074655F50726F636573735F476C616E63BB +:102AC0006556696577000000000000000000000006 +:102AD00000000000000000000000000000000000F6 +:102AE00000000000CD430108E843010853485F4C53 +:102AF0004D5F54656D706C6174655F4D6574686F92 +:102B000064496E697469616C697A655F476C616E6E +:102B10006365566965770000000000000000000052 +:102B2000000000000000000000000000E943010870 +:102B30002044010853485F4C4D5F436865636B4711 +:102B40006C616E63655669657742756600000000CA +:102B50000000000000000000000000000000000075 +:102B60000000000000000000000000000000000065 +:102B700000000000214401083844010853485F4C1C +:102B80004D5F557064617465476C616E636556692D +:102B900065774461746100000000000000000000DF +:102BA0000000000000000000000000000000000025 +:102BB000000000000000000000000000394401088F +:102BC0003C44010853485F4C4D5F476574476C6156 +:102BD0006E6365566965775265636F676E697A657E +:102BE0006400000000000000000000000000000081 +:102BF00000000000000000000000000000000000D5 +:102C0000000000003D4401084444010853485F4C63 +:102C10004D5F536574476C616E63655669657752A5 +:102C200065636F676E697A656400000000000000EC +:102C30000000000000000000000000000000000094 +:102C400000000000000000000000000045440108F2 +:102C50004A44010853485F4C4D5F50726F6365737F +:102C600073476C616E63655669657700000000000C +:102C70000000000000000000000000000000000054 +:102C80000000000000000000000000000000000044 +:102C9000000000004B4401083C45010853485F4CCC +:102CA0004D5F496E697469616C697A65476C616EE4 +:102CB00063655669657700000000000000000000B1 +:102CC0000000000000000000000000000000000004 +:102CD0000000000000000000000000003D45010869 +:102CE0006045010853485F4C4D5F476C616E6365FA +:102CF000566965775F417070656E644C6962726198 +:102D000072794D53470000000000000000000000F1 +:102D100000000000000000000000000000000000B3 +:102D200000000000614501089C45010853485F4CC4 +:102D30004D5F54656D706C6174655F53746172743E +:102D40005F43616C6C506F73655365727669636540 +:102D50000000000000000000000000000000000073 +:102D60000000000000000000000000009D45010878 +:102D7000D645010853485F4C4D5F54656D706C61DA +:102D800074655F53746F705F43616C6C506F7365F3 +:102D90005365727669636500000000000000000062 +:102DA0000000000000000000000000000000000023 +:102DB00000000000D7450108E045010853485F4C7A +:102DC0004D5F54656D706C6174655F50726F6365C3 +:102DD00073735F43616C6C506F7365536572766992 +:102DE000636500000000000000000000000000001B +:102DF000000000000000000000000000E1450108A4 +:102E0000FE45010853485F4C4D5F54656D706C6121 +:102E100074655F4D6574686F64496E697469616C4F +:102E2000697A655F43616C6C506F73655365727648 +:102E30006963650000000000000000000000000061 +:102E400000000000FF4501082C46010853485F4C74 +:102E50004D5F43616C6C506F736553657276696347 +:102E6000655F47657453656E736F72496E74657202 +:102E7000727570744F6363757265640000000000C2 +:102E80000000000000000000000000002D460108C6 +:102E90003C46010853485F4C4D5F436865636B4394 +:102EA000616C6C506F7365536572766963654275CA +:102EB00066000000000000000000000000000000AC +:102EC0000000000000000000000000000000000002 +:102ED000000000003D4601085646010853485F4C7B +:102EE0004D5F55706461746543616C6C506F7365C0 +:102EF0005365727669636544617461000000000087 +:102F000000000000000000000000000000000000C1 +:102F1000000000000000000000000000574601080B +:102F20006046010853485F4C4D5F43616C6C506FC5 +:102F3000736553657276696365446174615F436F5D +:102F40006E766572744576656E7456616C75650053 +:102F50000000000000000000000000000000000071 +:102F600000000000614601088C46010853485F4C90 +:102F70004D5F43616C6C506F736553657276696326 +:102F8000655F417070656E644C6962726172794D03 +:102F90005347000000000000000000000000000097 +:102FA0000000000000000000000000008D46010845 +:102FB000EC4601085F5F61656162695F6572726E10 +:102FC0006F5F616464720000000000000000000098 +:102FD00000000000000000000000000000000000F1 +:102FE00000000000000000000000000000000000E1 +:102FF00000000000ED460108F84601085F5F6165CA +:103000006162695F6C646976300000000000000056 +:1030100000000000000000000000000000000000B0 +:1030200000000000000000000000000000000000A0 +:10303000000000000000000000000000F946010848 +:10304000FC4601085F5F6961725F53747263687266 +:103050000000000000000000000000000000000070 +:103060000000000000000000000000000000000060 +:103070000000000000000000000000000000000050 +:1030800000000000FD460108FD46010873747263EC +:103090006872000000000000000000000000000056 +:1030A0000000000000000000000000000000000020 +:1030B0000000000000000000000000000000000010 +:1030C000000000000000000000000000FD460108B4 +:1030D000144701086D656D63687200000000000010 +:1030E00000000000000000000000000000000000E0 +:1030F00000000000000000000000000000000000D0 +:1031000000000000000000000000000000000000BF +:103110000000000015470108154701085F5F69615D +:10312000725F4D656D636872000000000000000072 +:10313000000000000000000000000000000000008F +:10314000000000000000000000000000000000007F +:10315000000000000000000000000000154701080A +:103160006C4701085F5F6961725F446E6F726D004A +:10317000000000000000000000000000000000004F +:10318000000000000000000000000000000000003F +:10319000000000000000000000000000000000002F +:1031A000000000006D470108B04701085F5F6165DE +:1031B0006162695F636472636D706C65000000003A +:1031C00000000000000000000000000000000000FF +:1031D00000000000000000000000000000000000EF +:1031E000000000000000000000000000B1470108DE +:1031F000E04701085F5F6961725F447363616C65FA +:1032000000000000000000000000000000000000BE +:1032100000000000000000000000000000000000AE +:10322000000000000000000000000000000000009E +:1032300000000000E1470108F448010864697600D5 +:10324000000000000000000000000000000000007E +:10325000000000000000000000000000000000006E +:10326000000000000000000000000000000000005E +:10327000000000000000000000000000F548010808 +:10328000044901084F535F5449434B5F48616E64E2 +:103290006C6500000000000000000000000000005D +:1032A000000000000000000000000000000000001E +:1032B000000000000000000000000000000000000E +:1032C0000000000005490108704901085379737432 +:1032D000656D496E69740000000000000000000088 +:1032E00000000000000000000000000000000000DE +:1032F00000000000000000000000000000000000CE +:1033000000000000000000000000000071490108FA +:10331000B849010853797374656D436F7265436CE6 +:103320006F636B55706461746500000000000000FD +:10333000000000000000000000000000000000008D +:10334000000000000000000000000000000000007D +:1033500000000000B9490108084A01085365745388 +:103360007973436C6F636B00000000000000000085 +:10337000000000000000000000000000000000004D +:10338000000000000000000000000000000000003D +:10339000000000000000000000000000094A0108D1 +:1033A000784A01084F535F41524D5F495352436879 +:1033B00065636B5072696F00000000000000000040 +:1033C00000000000000000000000000000000000FD +:1033D00000000000000000000000000000000000ED +:1033E00000000000794A0108AC4A01085F556E757B +:1033F00073650000000000000000000000000000F5 +:1034000000000000000000000000000000000000BC +:1034100000000000000000000000000000000000AC +:10342000000000000000000000000000AD4A01089C +:10343000CE4A01085F4F535F5253656D615F4F6E17 +:103440005465726D696E61746500000000000000D3 +:10345000000000000000000000000000000000006C +:10346000000000000000000000000000000000005C +:1034700000000000CF4A0108F64A01084F535F439D +:1034800072656174655253656D6100000000000053 +:10349000000000000000000000000000000000002C +:1034A000000000000000000000000000000000001C +:1034B000000000000000000000000000F74A0108C2 +:1034C000624B01084F535F55736500000000000018 +:1034D00000000000000000000000000000000000EC +:1034E00000000000000000000000000000000000DC +:1034F00000000000000000000000000000000000CC +:1035000000000000634B0108CA4B01084F535F5590 +:103510006E757365000000000000000000000000F0 +:10352000000000000000000000000000000000009B +:10353000000000000000000000000000000000008B +:10354000000000000000000000000000CB4B01085C +:10355000244C01087365676D656E745F686F6C64F9 +:10356000696E67000000000000000000000000001D +:10357000000000000000000000000000000000004B +:10358000000000000000000000000000000000003B +:1035900000000000254C01083E4C0108696E69746A +:1035A0005F6D706172616D730000000000000000CB +:1035B000000000000000000000000000000000000B +:1035C00000000000000000000000000000000000FB +:1035D0000000000000000000000000003F4C010857 +:1035E000724C0108696E69745F746F7000000000AE +:1035F00000000000000000000000000000000000CB +:1036000000000000000000000000000000000000BA +:1036100000000000000000000000000000000000AA +:1036200000000000734C0108A64C01087072657020 +:10363000656E645F616C6C6F6300000000000000E9 +:10364000000000000000000000000000000000007A +:10365000000000000000000000000000000000006A +:10366000000000000000000000000000A74C01085E +:10367000E24F01087379735F616C6C6F6300000047 +:10368000000000000000000000000000000000003A +:10369000000000000000000000000000000000002A +:1036A000000000000000000000000000000000001A +:1036B00000000000E34F01086C530108746D616C59 +:1036C0006C6F635F6C617267650000000000000052 +:1036D00000000000000000000000000000000000EA +:1036E00000000000000000000000000000000000DA +:1036F0000000000000000000000000006D53010801 +:10370000F6560108746D616C6C6F635F736D616C6C +:103710006C0000000000000000000000000000003D +:103720000000000000000000000000000000000099 +:103730000000000000000000000000000000000089 +:1037400000000000F7560108085901085F5F696131 +:10375000725F646C6D616C6C6F6300000000000050 +:103760000000000000000000000000000000000059 +:103770000000000000000000000000000000000049 +:1037800000000000000000000000000009590108CE +:10379000BC5B01085F5F6961725F646C667265653E +:1037A0000000000000000000000000000000000019 +:1037B0000000000000000000000000000000000009 +:1037C00000000000000000000000000000000000F9 +:1037D00000000000BD5B0108D86001086162730051 +:1037E00000000000000000000000000000000000D9 +:1037F00000000000000000000000000000000000C9 +:1038000000000000000000000000000000000000B8 +:10381000000000000000000000000000D960010866 +:10382000E060010853485F4C4D5F496E69746961FF +:103830006C697A65474D4C69627261727944617452 +:103840006100000000000000000000000000000017 +:103850000000000000000000000000000000000068 +:1038600000000000E1600108EA60010853485F4C75 +:103870004D5F476574474D4C696272617279506F54 +:10388000696E746572000000000000000000000016 +:103890000000000000000000000000000000000028 +:1038A000000000000000000000000000EB600108C4 +:1038B000F4600108496E6974414B30393931315037 +:1038C000524D530000000000000000000000000006 +:1038D00000000000000000000000000000000000E8 +:1038E00000000000000000000000000000000000D8 +:1038F00000000000F56001086C6101085365744424 +:10390000656661756C7450524D53000000000000F4 +:1039100000000000000000000000000000000000A7 +:103920000000000000000000000000000000000097 +:103930000000000000000000000000006D610108B0 +:10394000AA61010852656164414B30393931314611 +:10395000555345524F4D000000000000000000008C +:103960000000000000000000000000000000000057 +:103970000000000000000000000000000000000047 +:1039800000000000AB61010818620108496E69740B +:10399000414B30393931315F4D6561737572650066 +:1039A0000000000000000000000000000000000017 +:1039B0000000000000000000000000000000000007 +:1039C0000000000000000000000000001962010873 +:1039D000D8620108537769746368466F726D6174C9 +:1039E000696F6E0000000000000000000000000091 +:1039F00000000000000000000000000000000000C7 +:103A000000000000000000000000000000000000B6 +:103A100000000000D96201084E63010853485F4767 +:103A20004D5F4765744F66667365744461746100E9 +:103A30000000000000000000000000000000000086 +:103A40000000000000000000000000000000000076 +:103A50000000000000000000000000004F630108AB +:103A60006063010853485F474D5F496E697469613F +:103A70006C697A65474D4C69627261727900000029 +:103A80000000000000000000000000000000000036 +:103A90000000000000000000000000000000000026 +:103AA000000000006163010892630108696E697497 +:103AB00069616C697A655F675F61727241636342D5 +:103AC00075666665720000000000000000000000DE +:103AD00000000000000000000000000000000000E6 +:103AE00000000000000000000000000093630108D7 +:103AF000BC63010853485F474D5F53657443616C75 +:103B00006962726174696F6E506172616D6574652E +:103B100072730000000000000000000000000000C0 +:103B20000000000000000000000000000000000095 +:103B300000000000BD630108EC63010853485F47C3 +:103B40004D5F47657443616C6962726174696F6E41 +:103B5000506172616D657465727300000000000051 +:103B60000000000000000000000000000000000055 +:103B7000000000000000000000000000ED630108EC +:103B80005864010853485F474D5F496E6974696125 +:103B90006C697A6542656172696E6743616C6375D1 +:103BA0006C6174696F6E000000000000000000008E +:103BB0000000000000000000000000000000000005 +:103BC00000000000596401088864010853485F47F9 +:103BD0004D5F46696E616C697A6542656172696EB6 +:103BE0006743616C63756C6174696F6E00000000FF +:103BF00000000000000000000000000000000000C5 +:103C000000000000000000000000000089640108BE +:103C10009864010853485F474D5F4D656173757245 +:103C2000654F7065726174696F6E0000000000007E +:103C30000000000000000000000000000000000084 +:103C40000000000000000000000000000000000074 +:103C500000000000996401089465010853485F471B +:103C60004D5F4D656173757265526F7574696E65F0 +:103C70000000000000000000000000000000000044 +:103C80000000000000000000000000000000000034 +:103C90000000000000000000000000009565010821 +:103CA0006C6601084765744D61676E65746963569B +:103CB0006563746F720000000000000000000000E7 +:103CC00000000000000000000000000000000000F4 +:103CD00000000000000000000000000000000000E4 +:103CE000000000006D660108566801084C6F6164B1 +:103CF000506172616D6574657273000000000000B0 +:103D000000000000000000000000000000000000B3 +:103D100000000000000000000000000000000000A3 +:103D200000000000000000000000000057680108CB +:103D300070680108536574506172616D65746572D5 +:103D40007300000000000000000000000000000000 +:103D50000000000000000000000000000000000063 +:103D60000000000000000000000000000000000053 +:103D70000000000071680108C468010847657441CB +:103D8000636356656300000000000000000000004F +:103D90000000000000000000000000000000000023 +:103DA0000000000000000000000000000000000013 +:103DB000000000000000000000000000C5680108CD +:103DC000386A010874616F735F69737172740000FF +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000000000D3 +:103DF00000000000000000000000000000000000C3 +:103E000000000000396A0108626A0108496E745FA7 +:103E1000746F5F466C616767656442797465000022 +:103E20000000000000000000000000000000000092 +:103E30000000000000000000000000000000000082 +:103E4000000000000000000000000000636A01089C +:103E5000766A0108466C6167676564427974655FDC +:103E6000746F5F496E7400000000000000000000E5 +:103E70000000000000000000000000000000000042 +:103E80000000000000000000000000000000000032 +:103E900000000000776A0108846A01084765745FC2 +:103EA0004E5357455F4D696E000000000000000052 +:103EB0000000000000000000000000000000000002 +:103EC00000000000000000000000000000000000F2 +:103ED000000000000000000000000000856A0108EA +:103EE000A46A01084765745F4E5357455F4D61787A +:103EF00000000000000000000000000000000000C2 +:103F000000000000000000000000000000000000B1 +:103F100000000000000000000000000000000000A1 +:103F200000000000A56A0108C46A010852657365B3 +:103F3000745F5374646576000000000000000000A8 +:103F40000000000000000000000000000000000071 +:103F50000000000000000000000000000000000061 +:103F6000000000000000000000000000C56A010819 +:103F7000D26A01084D6F76696E675F537464657627 +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA0000000000000000000000000000000000011 +:103FB00000000000D36A01082C6B01084D70795F86 +:103FC0004E5345575F4461746100000000000000DB +:103FD00000000000000000000000000000000000E1 +:103FE00000000000000000000000000000000000D1 +:103FF0000000000000000000000000002D6B010820 +:10400000586B010853756D5F4E5345575F4461749B +:10401000610000000000000000000000000000003F +:104020000000000000000000000000000000000090 +:104030000000000000000000000000000000000080 +:1040400000000000596B0108646B0108636C724248 +:104050006974735F6D000000000000000000000044 +:104060000000000000000000000000000000000050 +:104070000000000000000000000000000000000040 +:10408000000000000000000000000000656B010857 +:104090006E6B0108736574426974735F6D00000094 +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C00000000000000000000000000000000000F0 +:1040D000000000006F6B0108766B01087365744285 +:1040E0006974735265670000000000000000000062 +:1040F00000000000000000000000000000000000C0 +:1041000000000000000000000000000000000000AF +:10411000000000000000000000000000776B0108B4 +:10412000CA6B0108636C7242697473526567000060 +:10413000000000000000000000000000000000007F +:10414000000000000000000000000000000000006F +:10415000000000000000000000000000000000005F +:1041600000000000CB6B0108206C010863616C4902 +:104170006E697469616C697A650000000000000076 +:10418000000000000000000000000000000000002F +:10419000000000000000000000000000000000001F +:1041A000000000000000000000000000216C010879 +:1041B000346C010863616C497350726F7846696EA4 +:1041C00069736865640000000000000000000000E2 +:1041D00000000000000000000000000000000000DF +:1041E00000000000000000000000000000000000CF +:1041F00000000000356C0108466C010863616C49E1 +:10420000734765737475726546696E697368656432 +:10421000000000000000000000000000000000009E +:10422000000000000000000000000000000000008E +:10423000000000000000000000000000476C0108C2 +:10424000586C010863616C4F6666736574526567EC +:10425000697374657250726F78000000000000008E +:10426000000000000000000000000000000000004E +:10427000000000000000000000000000000000003E +:1042800000000000596C0108DC6D01087265737450 +:104290006F72654F6666736574526567697374659E +:1042A0007250726F780000000000000000000000F3 +:1042B00000000000000000000000000000000000FE +:1042C000000000000000000000000000DD6D01089B +:1042D0002C6E010863616C4F666673657452656786 +:1042E00069737465724765737475726500000000C8 +:1042F00000000000000000000000000000000000BE +:1043000000000000000000000000000000000000AD +:10431000000000002D6E0108EC6E01084465633456 +:104320005F5A65726F5F50726F785F4F6666736534 +:10433000744E455F526567697374657200000000D2 +:10434000000000000000000000000000000000006D +:10435000000000000000000000000000ED6E0108F9 +:10436000346F0108496E63345F5A65726F5F507233 +:104370006F785F4F66667365744E455F5265676917 +:10438000737465720000000000000000000000006F +:10439000000000000000000000000000000000001D +:1043A00000000000356F01087A6F0108446563342E +:1043B0005F5A65726F5F50726F785F4F66667365A4 +:1043C0007453575F5265676973746572000000002B +:1043D00000000000000000000000000000000000DD +:1043E0000000000000000000000000007B6F0108DA +:1043F000C26F0108496E63345F5A65726F5F507215 +:104400006F785F4F666673657453575F526567696F +:1044100073746572000000000000000000000000DE +:10442000000000000000000000000000000000008C +:1044300000000000C36F0108087001084465633183 +:104440005F5A65726F5F50726F785F4F6666736513 +:10445000744E455F526567697374657200000000B1 +:10446000000000000000000000000000000000004C +:1044700000000000000000000000000009700108BA +:1044800050700108496E63315F5A65726F5F5072F8 +:104490006F785F4F66667365744E455F52656769F6 +:1044A000737465720000000000000000000000004E +:1044B00000000000000000000000000000000000FC +:1044C00000000000517001089670010844656331D6 +:1044D0005F5A65726F5F50726F785F4F6666736583 +:1044E0007453575F5265676973746572000000000A +:1044F00000000000000000000000000000000000BC +:10450000000000000000000000000000977001089B +:10451000DE700108496E63315F5A65726F5F5072D9 +:104520006F785F4F666673657453575F526567694E +:1045300073746572000000000000000000000000BD +:10454000000000000000000000000000000000006B +:1045500000000000DF700108247101084465633425 +:104560005F5A65726F5F474F66667365745F526529 +:1045700067697374657200000000000000000000AD +:10458000000000000000000000000000000000002B +:10459000000000000000000000000000257101087C +:1045A0001E720108496E63345F5A65726F5F474F30 +:1045B00066667365745F526567697374657200003F +:1045C00000000000000000000000000000000000EB +:1045D00000000000000000000000000000000000DB +:1045E000000000001F7201080E730108446563316A +:1045F0005F5A65726F5F474F66667365745F526599 +:10460000676973746572000000000000000000001C +:10461000000000000000000000000000000000009A +:104620000000000000000000000000000F730108FF +:1046300006740108496E63315F5A65726F5F474FB8 +:1046400066667365745F52656769737465720000AE +:10465000000000000000000000000000000000005A +:10466000000000000000000000000000000000004A +:10467000000000000774010800750108616C6741C3 +:1046800064617074697665496E697469616C697A90 +:1046900065000000000000000000000000000000B5 +:1046A000000000000000000000000000000000000A +:1046B000000000000000000000000000017501087B +:1046C00022750108616C6741646170746976655098 +:1046D000726F780000000000000000000000000081 +:1046E00000000000000000000000000000000000CA +:1046F00000000000000000000000000000000000BA +:10470000000000002375010888750108616C67418D +:1047100064617074697665476573747572650000CD +:104720000000000000000000000000000000000089 +:104730000000000000000000000000000000000079 +:104740000000000000000000000000008975010862 +:10475000EE750108616C6741646170746976654744 +:1047600065744461746100000000000000000000F6 +:104770000000000000000000000000000000000039 +:104780000000000000000000000000000000000029 +:1047900000000000EF7501084A760108616C67535C +:1047A000657456697369626C65446174614D6F64C8 +:1047B0006500000000000000000000000000000094 +:1047C00000000000000000000000000000000000E9 +:1047D0000000000000000000000000004B7601080F +:1047E000BC760108616C6750726F785468726573AB +:1047F00068537461746573000000000000000000DD +:1048000000000000000000000000000000000000A8 +:104810000000000000000000000000000000000098 +:1048200000000000BD760108EA760108616C67505F +:10483000726F7848696464656E5468726573685312 +:104840007461746573000000000000000000000047 +:104850000000000000000000000000000000000058 +:10486000000000000000000000000000EB760108DE +:104870004A770108616C6750726F78566973696294 +:104880006C65546872657368537461746573000075 +:104890000000000000000000000000000000000018 +:1048A0000000000000000000000000000000000008 +:1048B000000000004B77010892770108616C675097 +:1048C000726F7846696C74657254687265736800BB +:1048D00000000000000000000000000000000000D8 +:1048E00000000000000000000000000000000000C8 +:1048F00000000000000000000000000093770108A5 +:10490000DE770108616C67496E697450726F784494 +:104910006356616C756573000000000000000000C4 +:104920000000000000000000000000000000000087 +:104930000000000000000000000000000000000077 +:1049400000000000DF7701080E780108616C6749FC +:104950006E6974537464657646696C74657273002D +:104960000000000000000000000000000000000047 +:104970000000000000000000000000000000000037 +:104980000000000000000000000000000F78010897 +:1049900020780108616C67496E69745468726573A8 +:1049A0006846696C746572730000000000000000C6 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000000000000000000000000000E7 +:1049D000000000002178010844780108616C6746F6 +:1049E00061737454687265736846696C74657200AB +:1049F00000000000000000000000000000000000B7 +:104A000000000000000000000000000000000000A6 +:104A100000000000000000000000000045780108D0 +:104A20005A780108616C674D6564546872657368F3 +:104A300046696C7465720000000000000000000010 +:104A40000000000000000000000000000000000066 +:104A50000000000000000000000000000000000056 +:104A6000000000005B78010870780108616C6753F2 +:104A70006C6F7754687265736846696C7465720010 +:104A80000000000000000000000000000000000026 +:104A90000000000000000000000000000000000016 +:104AA0000000000000000000000000007178010814 +:104AB00086780108616C675570646174655374642D +:104AC000657646696C7465720000000000000000A5 +:104AD00000000000000000000000000000000000D6 +:104AE00000000000000000000000000000000000C6 +:104AF0000000000087780108A0780108616C674712 +:104B0000656E6572696346696C74657200000000C9 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000000000000085 +:104B3000000000000000000000000000A178010853 +:104B4000C2780108616C67537464657646696C7459 +:104B500065723130300000000000000000000000ED +:104B60000000000000000000000000000000000045 +:104B70000000000000000000000000000000000035 +:104B800000000000C3780108DE780108616C67430B +:104B90006865636B47657374757265456E74727989 +:104BA0004C6576656C00000000000000000000000D +:104BB00000000000000000000000000000000000F5 +:104BC000000000000000000000000000DF78010885 +:104BD000F0780108616C67436865636B47657374BF +:104BE000757265457869744C6576656C00000000E7 +:104BF00000000000000000000000000000000000B5 +:104C000000000000000000000000000000000000A4 +:104C100000000000F178010800790108616C675319 +:104C200065745468726573686F6C6473000000008B +:104C30000000000000000000000000000000000074 +:104C40000000000000000000000000000000000064 +:104C500000000000000000000000000001790108D1 +:104C60002E790108616C67496E69744765737475C4 +:104C70007265446356616C75657300000000000046 +:104C80000000000000000000000000000000000024 +:104C90000000000000000000000000000000000014 +:104CA000000000002F7901083C790108616C674918 +:104CB0006E69744E53574544634F66667365744618 +:104CC000696C746572730000000000000000000051 +:104CD00000000000000000000000000000000000D4 +:104CE0000000000000000000000000003D79010805 +:104CF000A0790108616C67476573747572654869CE +:104D00006464656E00000000000000000000000008 +:104D10000000000000000000000000000000000093 +:104D20000000000000000000000000000000000083 +:104D300000000000A1790108A2790108616C6747B1 +:104D400065737475726548696464656E53746174E3 +:104D5000657300000000000000000000000000007B +:104D60000000000000000000000000000000000043 +:104D7000000000000000000000000000A37901080E +:104D8000187A0108616C67476573747572655669B6 +:104D90007369626C65000000000000000000000004 +:104DA0000000000000000000000000000000000003 +:104DB00000000000000000000000000000000000F3 +:104DC00000000000197A01084E7A0108616C6747FB +:104DD00065737475726556697369626C6553746145 +:104DE0007465730000000000000000000000000077 +:104DF00000000000000000000000000000000000B3 +:104E00000000000000000000000000004F7A0108D0 +:104E1000A07A0108616C67476573747572654669AD +:104E20006C74657244634F666673657446726F6D29 +:104E300042670000000000000000000000000000C9 +:104E40000000000000000000000000000000000062 +:104E500000000000A17A01080C7B0108616C674723 +:104E6000657374757265536C6F7746696C7465729F +:104E70000000000000000000000000000000000032 +:104E80000000000000000000000000000000000022 +:104E90000000000000000000000000000D7B010881 +:104EA0004E7B0108616C6747657374757265466176 +:104EB000737446696C7465720000000000000000A5 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000000000000000000000000000D2 +:104EE000000000004F7B0108907B0108616C674760 +:104EF00065737475726546696C74657200000000B4 +:104F000000000000000000000000000000000000A1 +:104F10000000000000000000000000000000000091 +:104F2000000000000000000000000000917B01086C +:104F3000E07B0108616C6753657448696464656E61 +:104F4000446174614D6F6465000000000000000062 +:104F50000000000000000000000000000000000051 +:104F60000000000000000000000000000000000041 +:104F700000000000E17B0108B47C010853485F4C4D +:104F80004D5F6765745F4D6F756E74696E674D61D7 +:104F9000747269780000000000000000000000004A +:104FA0000000000000000000000000000000000001 +:104FB000000000000000000000000000B57C0108B7 +:104FC000547D010853485F4C4D5F54656D706C61B2 +:104FD00074655F53746172745F526F746174696F4A +:104FE0006E566563746F72000000000000000000E0 +:104FF00000000000000000000000000000000000B1 +:1050000000000000557D0108047E010853485F4CF4 +:105010004D5F54656D706C6174655F53746F705F44 +:10502000526F746174696F6E566563746F720000BD +:105030000000000000000000000000000000000070 +:10504000000000000000000000000000057E0108D4 +:10505000167E010853485F4C4D5F436865636B5F84 +:10506000576869636853656E736F7253686F756CC8 +:105070006442654F6E000000000000000000000068 +:105080000000000000000000000000000000000020 +:1050900000000000177E0108567E010853485F4C4F +:1050A0004D5F436865636B5F576869636853656EFE +:1050B000736F7253686F756C6442654F666600006B +:1050C00000000000000000000000000000000000E0 +:1050D000000000000000000000000000577E0108F2 +:1050E0007C7E010853485F4C4D5F54656D706C6168 +:1050F00074655F50726F636573735F526F74617430 +:10510000696F6E566563746F7200000000000000E6 +:10511000000000000000000000000000000000008F +:10512000000000007D7E0108C680010853485F4CE6 +:105130004D5F54656D706C6174655F4D6574686F2B +:1051400064496E697469616C697A655F526F7461F4 +:1051500074696F6E566563746F7200000000000022 +:10516000000000000000000000000000C7800108EF +:10517000F880010853485F4C4D5F436865636B528C +:105180006F746174696F6E566563746F7242756691 +:10519000000000000000000000000000000000000F +:1051A00000000000000000000000000000000000FF +:1051B00000000000F98001080A81010853485F4C93 +:1051C0004D5F557064617465526F746174696F6E80 +:1051D000566563746F7244617461000000000000E2 +:1051E00000000000000000000000000000000000BF +:1051F0000000000000000000000000000B8101081A +:105200001681010853485F4C4D5F476574526F74B7 +:105210006174696F6E566563746F725265636F6710 +:105220006E697A6564000000000000000000000064 +:10523000000000000000000000000000000000006E +:1052400000000000178101081E81010853485F4CCF +:105250004D5F536574526F746174696F6E56656308 +:10526000746F725265636F676E697A6564000000DF +:10527000000000000000000000000000000000002E +:105280000000000000000000000000001F81010875 +:105290002481010853485F4C4D5F536574526F740D +:1052A0006174696F6E566563746F72466C616700F6 +:1052B00000000000000000000000000000000000EE +:1052C00000000000000000000000000000000000DE +:1052D00000000000258101085C81010853485F4CF3 +:1052E0004D5F4F6E5F47656F4D61676E65746963B3 +:1052F00000000000000000000000000000000000AE +:10530000000000000000000000000000000000009D +:105310000000000000000000000000005D810108A6 +:105320006681010853485F4C4D5F4F66665F476575 +:105330006F4D61676E6574696300000000000000D6 +:10534000000000000000000000000000000000005D +:10535000000000000000000000000000000000004D +:1053600000000000678101087081010853485F4C0C +:105370004D5F526F746174696F6E566563746F72BE +:105380005F417070656E644C6962726172794D53F1 +:1053900047000000000000000000000000000000C6 +:1053A0000000000000000000000000007181010802 +:1053B000D481010853485F534D5F496E6974696138 +:1053C0006C697A6553656E736F7248756200000090 +:1053D00000000000000000000000000000000000CD +:1053E00000000000000000000000000000000000BD +:1053F00000000000D5810108D881010853485F539F +:105400004D5F476574537461747573466F7253656D +:105410006E736F72526174654368616E67650000F8 +:10542000000000000000000000000000000000007C +:10543000000000000000000000000000D981010809 +:10544000EC81010853485F534D5F53657453746199 +:10545000747573466F7253656E736F7252617465C3 +:105460004368616E676500000000000000000000F6 +:10547000000000000000000000000000000000002C +:1054800000000000ED810108F88101084F535F44DE +:105490006561637469766174655000000000000006 +:1054A00000000000000000000000000000000000FC +:1054B00000000000000000000000000000000000EC +:1054C000000000000000000000000000F981010859 +:1054D0003C8201085F5075744D61696C00000000EA +:1054E00000000000000000000000000000000000BC +:1054F00000000000000000000000000000000000AC +:10550000000000000000000000000000000000009B +:10551000000000003D820108908201085F47657429 +:105520004D61696C000000000000000000000000F8 +:10553000000000000000000000000000000000006B +:10554000000000000000000000000000000000005B +:10555000000000000000000000000000918201082F +:105560000C83010853485F5044524D4D5F496E69AA +:105570007469616C697A654D617373446174614DDE +:10558000616E6167657200000000000000000000AD +:10559000000000000000000000000000000000000B +:1055A000000000000D8301080E83010853485F507E +:1055B00044524D4D5F496E697469616C697A654505 +:1055C0006E7669726F6E6D656E740000000000008B +:1055D00000000000000000000000000000000000CB +:1055E0000000000000000000000000000F83010820 +:1055F0004483010853485F5044524D4D5F456E76D9 +:1056000069726F6E6D656E745F47657454656D7019 +:105610006572617475726500000000000000000092 +:10562000000000000000000000000000000000007A +:1056300000000000458301084E83010853485F5075 +:1056400044524D4D5F456E7669726F6E6D656E7436 +:105650005F47657448756D6964697479000000007E +:10566000000000000000000000000000000000003A +:105670000000000000000000000000004F8301084F +:105680005C83010853485F5044524D4D5F436F6E39 +:10569000766572745F4C4D4C696272617279546FB9 +:1056A0005044524D4D4C69627261727900000000A5 +:1056B00000000000000000000000000000000000EA +:1056C000000000005D8301088083010853485F509B +:1056D00044524D4D5F526566726573684D617373D8 +:1056E0004461746100000000000000000000000040 +:1056F00000000000000000000000000000000000AA +:10570000000000000000000000000000818301088C +:10571000B083010853485F5044524D4D5F47657454 +:1057200053656E736F72436F6E7465787444617401 +:1057300061496E6465780000000000000000000010 +:105740000000000000000000000000000000000059 +:1057500000000000B1830108C283010853485F5074 +:1057600044524D4D5F417070656E64456E7669724E +:105770006F6E6D656E74446174610000000000001E +:105780000000000000000000000000000000000019 +:10579000000000000000000000000000C3830108BA +:1057A0000284010853485F5044524D4D5F47657471 +:1057B00043757272656E74456E7669726F6E6D6553 +:1057C0006E74436E740000000000000000000000D2 +:1057D00000000000000000000000000000000000C9 +:1057E00000000000038401080884010853485F504A +:1057F00044524D4D5F526566726573685044524421 +:105800006174610000000000000000000000000062 +:105810000000000000000000000000000000000088 +:1058200000000000000000000000000009840108E2 +:10583000548401085F5F61656162695F6C6C736CC1 +:105840000000000000000000000000000000000058 +:105850000000000000000000000000000000000048 +:105860000000000000000000000000000000000038 +:1058700000000000558401087884010853485F4CFB +:105880004D5F54656D706C6174655F5374617274C3 +:105890005F47656F46656E63696E670000000000D4 +:1058A00000000000000000000000000000000000F8 +:1058B00000000000000000000000000079840108E2 +:1058C000AE84010853485F4C4D5F54656D706C6148 +:1058D00074655F53746F705F47656F46656E63698B +:1058E0006E670000000000000000000000000000E3 +:1058F00000000000000000000000000000000000A8 +:1059000000000000AF840108B084010853485F4CD8 +:105910004D5F54656D706C6174655F50726F636547 +:1059200073735F47656F46656E63696E670000005D +:105930000000000000000000000000000000000067 +:10594000000000000000000000000000B184010819 +:105950000E85010853485F4C4D5F54656D706C6156 +:1059600074655F4D6574686F64496E697469616CD4 +:10597000697A655F47656F46656E63696E670000AB +:105980000000000000000000000000000000000017 +:10599000000000000F8501083C85010853485F4C5A +:1059A0004D5F436865636B47656F46656E63696EFF +:1059B0006742756600000000000000000000000063 +:1059C00000000000000000000000000000000000D7 +:1059D0000000000000000000000000003D850108FC +:1059E0007085010853485F4C4D5F55706461746564 +:1059F00047656F46656E63696E6744617461000058 +:105A00000000000000000000000000000000000096 +:105A10000000000000000000000000000000000086 +:105A200000000000718501087E85010853485F4C25 +:105A30004D5F4765744469666653746570436F755E +:105A40006E74466F7247656F46656E63696E670078 +:105A50000000000000000000000000000000000046 +:105A60000000000000000000000000007F85010829 +:105A7000C085010853485F4C4D5F47656F46656EB2 +:105A800063696E675F5365745F47657456616C75D3 +:105A900065536572766963650000000000000000D0 +:105AA00000000000000000000000000000000000F6 +:105AB00000000000C1850108C885010853485F4CFB +:105AC0004D5F47656F46656E63696E675F417070D5 +:105AD000656E644C6962726172794D5347000000D3 +:105AE00000000000000000000000000000000000B6 +:105AF000000000000000000000000000C98501084F +:105B00004886010853485F4C4D5F47656F46656E98 +:105B100063696E675F4465746563745F4D6F766536 +:105B20004475726174696F6E00000000000000002F +:105B30000000000000000000000000000000000065 +:105B400000000000498601088686010853485F4C22 +:105B50004D5F47656F46656E63696E675F44657448 +:105B60006563745F4E6F4D6F766500000000000046 +:105B70000000000000000000000000000000000025 +:105B800000000000000000000000000087860108FF +:105B9000C486010853485F4C4D5F47656F46656E8C +:105BA00063696E675F53746172745F5065646F6D93 +:105BB0006574657200000000000000000000000035 +:105BC00000000000000000000000000000000000D5 +:105BD00000000000C58601084287010853485F4C59 +:105BE0004D5F47656F46656E63696E675F53746F9F +:105BF000705F5065646F6D65746572000000000031 +:105C00000000000000000000000000000000000094 +:105C100000000000000000000000000043870108B1 +:105C20009687010853485F4C4D5F47656F46656E28 +:105C300063696E675F4465746563745F4D6F766515 +:105C400044697374616E6365000000000000000029 +:105C50000000000000000000000000000000000044 +:105C60000000000097870108DC87010853485F4C5B +:105C70004D5F54656D706C6174655F436865636BFF +:105C80005F4C69666554696D6573536572766963C7 +:105C9000650000000000000000000000000000009F +:105CA000000000000000000000000000DD87010887 +:105CB0003A88010853485F4C4D5F54656D706C61C4 +:105CC00074655F53746172745F4C69666554696D85 +:105CD000657353657276696365000000000000001B +:105CE00000000000000000000000000000000000B4 +:105CF000000000003B880108EC88010853485F4C15 +:105D00004D5F54656D706C6174655F53746F705F47 +:105D10004C69666554696D65735365727669636530 +:105D20000000000000000000000000000000000073 +:105D3000000000000000000000000000ED880108E5 +:105D40004489010853485F4C4D5F54656D706C6128 +:105D500074655F417070656E644D53475F4C696652 +:105D60006554696D657353657276696365000000FB +:105D70000000000000000000000000000000000023 +:105D80000000000045890108E28A010853485F4C81 +:105D90004D5F54656D706C6174655F50726F6365C3 +:105DA00073735F4C69666554696D6573536572768C +:105DB00069636500000000000000000000000000B2 +:105DC000000000000000000000000000E38A01085D +:105DD000068B010853485F4C4D5F54656D706C61D4 +:105DE00074655F4D6574686F64496E697469616C50 +:105DF000697A655F4C69666554696D657353657250 +:105E000076696365000000000000000000000000EB +:105E100000000000078B0108688B010853485F4CA5 +:105E20004D5F4C69666554696D657353657276693B +:105E300063655F536574557365725761697454691E +:105E40006D65000000000000000000000000000080 +:105E5000000000000000000000000000698B010845 +:105E6000808B010853485F4C4D5F4C6966655469EF +:105E70006D6573536572766963655F5365745573B9 +:105E8000657253746F7054696D6500000000000006 +:105E90000000000000000000000000000000000002 +:105EA00000000000818B0108988B010853485F4C6B +:105EB0004D5F4C69666554696D65735365727669AB +:105EC00063655F53657453746179696E6741726588 +:105ED00061526164697573000000000000000000F9 +:105EE000000000000000000000000000998B010885 +:105EF000B08B010853485F4C4D5F4C69666554692F +:105F00006D6573536572766963655F536574537429 +:105F10006179696E67526164697573000000000001 +:105F20000000000000000000000000000000000071 +:105F300000000000B18B0108608C010853485F4CE1 +:105F40004D5F496E697469616C697A6541626E6F13 +:105F5000726D616C53686F636B000000000000009D +:105F60000000000000000000000000000000000031 +:105F7000000000000000000000000000618C01082B +:105F8000728C010853485F4C4D5F54656D706C61B5 +:105F900074655F53746172745F41626E6F726D619C +:105FA0006C53686F636B000000000000000000008D +:105FB00000000000000000000000000000000000E1 +:105FC00000000000738C0108D08C010853485F4C1E +:105FD0004D5F54656D706C6174655F53746F705F75 +:105FE00041626E6F726D616C53686F636B0000008D +:105FF00000000000000000000000000000000000A1 +:10600000000000000000000000000000D18C01082A +:10601000E88C010853485F4C4D5F54656D706C61AE +:1060200074655F50726F636573735F41626E6F7208 +:106030006D616C53686F636B00000000000000002E +:106040000000000000000000000000000000000050 +:1060500000000000E98C0108668D010853485F4C80 +:106060004D5F54656D706C6174655F4D6574686FEC +:1060700064496E697469616C697A655F41626E6FCB +:10608000726D616C53686F636B000000000000006C +:10609000000000000000000000000000678D010803 +:1060A000A08D010853485F4C4D5F436865636B41A9 +:1060B000626E6F726D616C53686F636B42756600E0 +:1060C00000000000000000000000000000000000D0 +:1060D00000000000000000000000000000000000C0 +:1060E00000000000A18D0108B88D010853485F4CE5 +:1060F0004D5F47657441626E6F726D616C53686F7E +:10610000636B5265636F676E697A656400000000B7 +:10611000000000000000000000000000000000007F +:10612000000000000000000000000000B98D010820 +:10613000C08D010853485F4C4D5F53657441626EDA +:106140006F726D616C53686F636B5265636F676EDE +:10615000697A656400000000000000000000000093 +:10616000000000000000000000000000000000002F +:1061700000000000C18D0108C68D010853485F4C26 +:106180004D5F55706461746541626E6F726D616CD4 +:1061900053686F636B44617461000000000000008D +:1061A00000000000000000000000000000000000EF +:1061B000000000000000000000000000C78D010882 +:1061C000D88D010853485F4C4D5F41626E6F726D10 +:1061D000616C53686F636B5F417070656E644C698E +:1061E00062726172794D53470000000000000000A8 +:1061F000000000000000000000000000000000009F +:1062000000000000D98D0108228E010853485F4C20 +:106210004D5F41626E6F726D616C53686F636B5F4F +:1062200053657455736572416374696F6E00000045 +:10623000000000000000000000000000000000005E +:10624000000000000000000000000000238E010894 +:10625000DC8E010853485F4C4D5F54656D706C6176 +:1062600074655F53746172745F4170647200000002 +:10627000000000000000000000000000000000001E +:10628000000000000000000000000000000000000E +:1062900000000000DD8E0108728F010853485F4C3A +:1062A0004D5F54656D706C6174655F53746F705FA2 +:1062B0004170647200000000000000000000000057 +:1062C00000000000000000000000000000000000CE +:1062D000000000000000000000000000738F0108B3 +:1062E000D28F010853485F4C4D5F54656D706C61EF +:1062F00074655F50726F636573735F4170647200A1 +:10630000000000000000000000000000000000008D +:10631000000000000000000000000000000000007D +:1063200000000000D38F01088090010853485F4CA3 +:106330004D5F54656D706C6174655F4D6574686F19 +:1063400064496E697469616C697A655F41706472F1 +:10635000000000000000000000000000000000003D +:106360000000000000000000000000008190010813 +:106370001891010853485F4C4D5F436865636B415A +:1063800070647242756600000000000000000000AA +:1063900000000000000000000000000000000000FD +:1063A00000000000000000000000000000000000ED +:1063B00000000000199101084091010853485F4C0A +:1063C0004D5F5570646174654170647244617461BD +:1063D00000000000000000000000000000000000BD +:1063E00000000000000000000000000000000000AD +:1063F00000000000000000000000000041910108C2 +:106400005091010853485F4C4D5F417064725F4189 +:106410007070656E644C6962726172794D534700A9 +:10642000000000000000000000000000000000006C +:10643000000000000000000000000000000000005C +:1064400000000000519101080692010853485F4C7A +:106450004D5F415044525F536574475053537461CC +:1064600074757300000000000000000000000000D0 +:10647000000000000000000000000000000000001C +:10648000000000000000000000000000079201086A +:106490003292010853485F4C4D5F415044525F5364 +:1064A00065745374657057616B6555704E756D6298 +:1064B0006572000000000000000000000000000005 +:1064C00000000000000000000000000000000000CC +:1064D00000000000339201084692010853485F4CC7 +:1064E0004D5F415044525F53657454696D65576107 +:1064F0006B6555705365636F6E64000000000000AB +:10650000000000000000000000000000000000008B +:106510000000000000000000000000004792010899 +:106520007A92010853485F4C4D5F415044525F439B +:106530006865636B53746179696E6753656E7369DF +:106540006E674F7065726174696F6E0000000000C5 +:10655000000000000000000000000000000000003B +:10656000000000007B920108C492010853485F4C70 +:106570004D5F415044525F436865636B4C6F63618C +:1065800074696F6E52657175657374000000000068 +:1065900000000000000000000000000000000000FB +:1065A000000000000000000000000000C59201088B +:1065B000E89801084D5F5065646F6D657465725FA2 +:1065C0004D616B654465766963654D6F74696F6E87 +:1065D0004275666665720000000000000000000061 +:1065E00000000000000000000000000000000000AB +:1065F00000000000E9980108289901084D5F5065E6 +:10660000646F6D657465725F436865636B4465763E +:106610006963654D6F7665000000000000000000B2 +:10662000000000000000000000000000000000006A +:10663000000000000000000000000000299901088F +:106640001E9A01084D5F5065646F6D657465725FD9 +:106650004465746563745374657000000000000045 +:10666000000000000000000000000000000000002A +:10667000000000000000000000000000000000001A +:10668000000000001F9A0108189C01084D5F50652A +:10669000646F6D657465725F536574416374697688 +:1066A0006974795374617475730000000000000010 +:1066B00000000000000000000000000000000000DA +:1066C000000000000000000000000000199C01080C +:1066D0007E9C01084D5F5065646F6D657465725FE7 +:1066E00047657453616D706C696E6753746174654E +:1066F000000000000000000000000000000000009A +:106700000000000000000000000000000000000089 +:10671000000000007F9C0108869C01084D5F5065C9 +:10672000646F6D657465725F476574537465704915 +:106730006E666F0000000000000000000000000016 +:106740000000000000000000000000000000000049 +:10675000000000000000000000000000879C01080D +:10676000989C01084D5F5065646F6D657465725F3C +:106770004765744163746976697479496E666F0020 +:106780000000000000000000000000000000000009 +:1067900000000000000000000000000000000000F9 +:1067A00000000000999C0108AC9C01084D5F5065F9 +:1067B000646F6D657465725F536574557365724976 +:1067C0006E666F5F53696E676C65000000000000C5 +:1067D00000000000000000000000000000000000B9 +:1067E000000000000000000000000000AD9C010857 +:1067F000549D01084D5F5065646F6D657465725FEF +:10680000496E6974000000000000000000000000F4 +:106810000000000000000000000000000000000078 +:106820000000000000000000000000000000000068 +:1068300000000000559D01087A9E01084D5F5065DB +:10684000646F6D657465725F4765745374657049F4 +:106850006E666F466F725350656E00000000000058 +:106860000000000000000000000000000000000028 +:106870000000000000000000000000007B9E0108F6 +:10688000949E01084D5F5065646F6D657465725F1D +:10689000536574436F726553746570496E666F32E9 +:1068A00053746570496E666F0000000000000000C0 +:1068B00000000000000000000000000000000000D8 +:1068C00000000000959E01080CA001084D5F506576 +:1068D000646F6D657465725F75706461746553741F +:1068E0006570496E666F0000000000000000000047 +:1068F0000000000000000000000000000000000098 +:106900000000000000000000000000000DA00108D1 +:1069100098A101084D5F5065646F6D657465725F85 +:10692000436865636B44657669636553746F700093 +:106930000000000000000000000000000000000057 +:106940000000000000000000000000000000000047 +:106950000000000099A10108AEA101085570646112 +:1069600074655570446E5374657044657461696CE8 +:106970000000000000000000000000000000000017 +:106980000000000000000000000000000000000007 +:10699000000000000000000000000000AFA101089E +:1069A0000CA201084D5F5065646F6D657465725F80 +:1069B000636F6D7075746553746570446574616957 +:1069C0006C0000000000000000000000000000005B +:1069D00000000000000000000000000000000000B7 +:1069E000000000000DA201081CA301084D5F5065C6 +:1069F000646F6D657465725F7265736574526573FB +:106A000065727665645374657000000000000000D4 +:106A10000000000000000000000000000000000076 +:106A20000000000000000000000000001DA301089D +:106A300028A301084D5F5065646F6D657465725FD2 +:106A400075706461746552657665727365645570BE +:106A5000646E000000000000000000000000000064 +:106A60000000000000000000000000000000000026 +:106A70000000000029A3010844A301084D5F5065F0 +:106A8000646F6D657465725F636F6D707574654377 +:106A9000616C6F726965345570646E0000000000AF +:106AA00000000000000000000000000000000000E6 +:106AB00000000000000000000000000045A30108E5 +:106AC00094A401084D5F5065646F6D657465725FD5 +:106AD000636865636B44697374616E63654F766563 +:106AE00072466C6F7700000000000000000000009C +:106AF0000000000000000000000000000000000096 +:106B00000000000095A40108ACA401084D5F506589 +:106B1000646F6D657465725F636865636B43616C18 +:106B20006F7269654F766572466C6F770000000082 +:106B30000000000000000000000000000000000055 +:106B4000000000000000000000000000ADA40108EB +:106B5000C4A401084D5F5065646F6D657465725F14 +:106B6000636865636B537465704F766572466C6FCE +:106B7000770000000000000000000000000000009E +:106B80000000000000000000000000000000000005 +:106B900000000000C5A401081CA6010853485F4C72 +:106BA0004D5F54656D706C6174655F537461727490 +:106BB0005F537465704465746563746F72000000A0 +:106BC00000000000000000000000000000000000C5 +:106BD0000000000000000000000000001DA60108E9 +:106BE00064A6010853485F4C4D5F54656D706C613D +:106BF00074655F53746F705F53746570446574653A +:106C000063746F72000000000000000000000000CC +:106C10000000000000000000000000000000000074 +:106C20000000000065A6010894A6010853485F4CC7 +:106C30004D5F54656D706C6174655F50726F636514 +:106C400073735F537465704465746563746F720029 +:106C50000000000000000000000000000000000034 +:106C600000000000000000000000000095A60108E0 +:106C7000D0A6010853485F4C4D5F54656D706C6140 +:106C800074655F4D6574686F64496E697469616CA1 +:106C9000697A655F537465704465746563746F7277 +:106CA00000000000000000000000000000000000E4 +:106CB00000000000D1A60108FCA6010853485F4C63 +:106CC0004D5F436865636B537465704465746563B9 +:106CD000746F724275660000000000000000000042 +:106CE00000000000000000000000000000000000A4 +:106CF000000000000000000000000000FDA60108E8 +:106D00000EA7010853485F4C4D5F5365745374657B +:106D1000704576656E740000000000000000000001 +:106D20000000000000000000000000000000000063 +:106D30000000000000000000000000000000000053 +:106D4000000000000FA7010814A7010853485F4C7A +:106D50004D5F476574537465704576656E740000C9 +:106D60000000000000000000000000000000000023 +:106D70000000000000000000000000000000000013 +:106D800000000000000000000000000015A701083E +:106D90001AA7010853485F4C4D5F557064617465D4 +:106DA000537465704465746563746F724461746193 +:106DB00000000000000000000000000000000000D3 +:106DC00000000000000000000000000000000000C3 +:106DD000000000001BA7010826A7010853485F4CCC +:106DE0004D5F476574537465704465746563746F73 +:106DF000725265636F676E697A6564000000000017 +:106E00000000000000000000000000000000000082 +:106E100000000000000000000000000027A701089B +:106E20002EA7010853485F4C4D5F5365745374653A +:106E3000704465746563746F725265636F676E69E1 +:106E40007A656400000000000000000000000000FF +:106E50000000000000000000000000000000000032 +:106E6000000000002FA7010850A7010853485F4CFD +:106E70004D5F537465704465746563746F725F41F0 +:106E80007070656E644C6962726172794D5347002F +:106E900000000000000000000000000000000000F2 +:106EA00000000000000000000000000051A70108E1 +:106EB00090A7010853485F4C4D5F54656D706C613D +:106EC00074655F53746172745F53746570436F755A +:106ED0006E746572000000000000000000000000F9 +:106EE00000000000000000000000000000000000A2 +:106EF0000000000091A70108D8A7010853485F4C83 +:106F00004D5F54656D706C6174655F53746F705F35 +:106F100053746570436F756E7465720000000000F5 +:106F20000000000000000000000000000000000061 +:106F3000000000000000000000000000D9A70108C8 +:106F400008A8010853485F4C4D5F54656D706C6133 +:106F500074655F50726F636573735F5374657043DC +:106F60006F756E7465720000000000000000000084 +:106F70000000000000000000000000000000000011 +:106F80000000000009A8010844A8010853485F4C0C +:106F90004D5F54656D706C6174655F4D6574686FAD +:106FA00064496E697469616C697A655F5374657070 +:106FB000436F756E746572000000000000000000F1 +:106FC00000000000000000000000000045A80108CB +:106FD00070A8010853485F4C4D5F436865636B536D +:106FE000746570436F756E7465724275660000005B +:106FF0000000000000000000000000000000000091 +:107000000000000000000000000000000000000080 +:107010000000000071A8010882A8010853485F4CD5 +:107020004D5F53657453746570436F756E7465720C +:107030004576656E7400000000000000000000004E +:107040000000000000000000000000000000000040 +:1070500000000000000000000000000083A80108FC +:1070600088A8010853485F4C4D5F476574537465A9 +:1070700070436F756E7465724576656E74000000BE +:107080000000000000000000000000000000000000 +:1070900000000000000000000000000000000000F0 +:1070A0000000000089A801088EA8010853485F4C21 +:1070B0004D5F55706461746553746570436F756E90 +:1070C00074657244617461000000000000000000FB +:1070D00000000000000000000000000000000000B0 +:1070E0000000000000000000000000008FA8010860 +:1070F0009AA8010853485F4C4D5F47657453746507 +:1071000070436F756E7465725265636F676E697AEE +:1071100065640000000000000000000000000000A6 +:10712000000000000000000000000000000000005F +:10713000000000009BA80108A2A8010853485F4C6A +:107140004D5F53657453746570436F756E746572EB +:107150005265636F676E697A656400000000000025 +:10716000000000000000000000000000000000001F +:10717000000000000000000000000000A3A80108BB +:10718000C4A8010853485F4C4D5F53746570436F4A +:10719000756E7465725F417070656E644C69627281 +:1071A0006172794D534700000000000000000000AC +:1071B00000000000000000000000000000000000CF +:1071C00000000000C5A80108FCA801084D445F4963 +:1071D0006E69740000000000000000000000000064 +:1071E000000000000000000000000000000000009F +:1071F000000000000000000000000000000000008F +:10720000000000000000000000000000FDA80108D0 +:1072100074A901084D445F53656E736F72436861D2 +:107220006E676564000000000000000000000000C0 +:10723000000000000000000000000000000000004E +:10724000000000000000000000000000000000003E +:107250000000000075A90108BEAB01084D445F475E +:10726000657444656C7461416E676C650000000074 +:10727000000000000000000000000000000000000E +:1072800000000000000000000000000000000000FE +:10729000000000000000000000000000BFAB01087B +:1072A000ECAB01084D525F496E697469616C697A93 +:1072B000654D6F74696F6E4D616E61676572000038 +:1072C00000000000000000000000000000000000BE +:1072D00000000000000000000000000000000000AE +:1072E00000000000EDAB010882AC010853656C653D +:1072F00063745363656E6172696F00000000000083 +:10730000000000000000000000000000000000007D +:10731000000000000000000000000000000000006D +:1073200000000000000000000000000083AC010825 +:10733000DCAC0108416464324D6F74696F6E457650 +:10734000656E7451756575650000000000000000F1 +:10735000000000000000000000000000000000002D +:10736000000000000000000000000000000000001D +:1073700000000000DDAC0108FCAC01085365744D51 +:107380006F74696F6E4576656E7446726F6D517578 +:1073900065756500000000000000000000000000AE +:1073A00000000000000000000000000000000000DD +:1073B000000000000000000000000000FDAC01081B +:1073C00026AD01084D6F74696F6E5265636F676E0D +:1073D0006974696F6E456E67696E65546872656140 +:1073E0006400000000000000000000000000000039 +:1073F000000000000000000000000000000000008D +:107400000000000027AD010844AD01084D525F4760 +:1074100065744D6F74696F6E5363656E6172696FE9 +:1074200049640000000000000000000000000000AF +:10743000000000000000000000000000000000004C +:1074400000000000000000000000000045AD010841 +:10745000B2AD01084D525F4D616E6167654D6F744D +:10746000696F6E5363656E6172696F0000000000A2 +:10747000000000000000000000000000000000000C +:1074800000000000000000000000000000000000FC +:1074900000000000B3AD01089AAE01084D525F50E4 +:1074A00072696D69746976655374617475734D6141 +:1074B0006E616765720000000000000000000000BF +:1074C00000000000000000000000000000000000BC +:1074D0000000000000000000000000009BAE01085A +:1074E0001CB001084765745261774163634461745D +:1074F000610000000000000000000000000000002B +:10750000000000000000000000000000000000007B +:10751000000000000000000000000000000000006B +:10752000000000001DB00108E8B001084D525F46A0 +:10753000696E616C697A654D6F74696F6E4D616ECD +:10754000616765720000000000000000000000009C +:10755000000000000000000000000000000000002B +:10756000000000000000000000000000E9B0010879 +:1075700038B1010847565F496E6974000000000089 +:1075800000000000000000000000000000000000FB +:1075900000000000000000000000000000000000EB +:1075A00000000000000000000000000000000000DB +:1075B0000000000039B1010880B1010847565F534F +:1075C000656E736F724368616E67656400000000EA +:1075D00000000000000000000000000000000000AB +:1075E000000000000000000000000000000000009B +:1075F00000000000000000000000000081B1010850 +:10760000BEB1010847565F4465746563744D6F767B +:10761000656D656E74000000000000000000000051 +:10762000000000000000000000000000000000005A +:10763000000000000000000000000000000000004A +:1076400000000000BFB101087EB2010847565F4646 +:10765000696E616C00000000000000000000000086 +:10766000000000000000000000000000000000001A +:10767000000000000000000000000000000000000A +:107680000000000000000000000000007FB20108C0 +:1076900094B20108534D43616C6C506F7365526531 +:1076A000636F675F696E697469616C697A6543616C +:1076B0006C6C506F73655265636F6700000000006B +:1076C00000000000000000000000000000000000BA +:1076D0000000000095B20108F2B20108534D436169 +:1076E0006C6C506F73655265636F675F7365745040 +:1076F000726F78696D69747956616C756500000008 +:107700000000000000000000000000000000000079 +:10771000000000000000000000000000F3B20108BB +:1077200000B30108534D43616C6C506F7365526533 +:10773000636F675F63616C6C506F73655265636FF5 +:10774000676E697A657200000000000000000000AA +:107750000000000000000000000000000000000029 +:107760000000000001B30108ACB70108534D4361AC +:107770006C6C506F73655265636F675F63686563B8 +:107780006B43616C6C506F73655F72657665727385 +:107790006500000000000000000000000000000084 +:1077A000000000000000000000000000ADB701086C +:1077B00034B80108534D43616C6C506F736552656A +:1077C000636F675F636865636B43616C6C506F7375 +:1077D0006500000000000000000000000000000044 +:1077E0000000000000000000000000000000000099 +:1077F0000000000035B80108FEB80108534D436190 +:107800006C6C506F73655265636F675F726573650B +:1078100074526F74617465416E670000000000006F +:107820000000000000000000000000000000000058 +:10783000000000000000000000000000FFB8010888 +:1078400010B90108534D43616C6C506F73655265FC +:10785000636F675F636F6D707574654D6F74696F8B +:107860006E416E676C6500000000000000000000C3 +:107870000000000000000000000000000000000008 +:107880000000000011B90108CEB90108534D436151 +:107890006C6C506F73655265636F675F726573657B +:1078A000744D6F74696F6E416E676C650000000007 +:1078B00000000000000000000000000000000000C8 +:1078C000000000000000000000000000CFB9010827 +:1078D000ECB90108534D43616C6C506F7365526590 +:1078E000636F675F636F6D70757465526F746174F9 +:1078F00065416E676C65000000000000000000003C +:107900000000000000000000000000000000000077 +:1079100000000000EDB901084CBB0108534D436164 +:107920006C6C506F73655265636F675F706932701E +:1079300069000000000000000000000000000000DE +:107940000000000000000000000000000000000037 +:107950000000000000000000000000004DBB010816 +:1079600088BB0108534D43616C6C506F7365526561 +:10797000636F675F636F6D707574654779726F4190 +:1079800076675F50726F78696D6974794F666600CB +:1079900000000000000000000000000000000000E7 +:1079A0000000000089BB0108FABB0108534D436188 +:1079B0006C6C506F73655265636F675F726573655A +:1079C000744779726F4176675F4465766963655382 +:1079D000746F700000000000000000000000000054 +:1079E000000000000000000000000000FBBB0108D8 +:1079F00010BC0108534D43616C6C506F7365526548 +:107A0000636F675F636F6D707574654779726F41FF +:107A100076675F44657669636553746F7000000034 +:107A20000000000000000000000000000000000056 +:107A30000000000011BC0108ECBC0108534D43617B +:107A40006C6C506F73655265636F675F636F6D70C9 +:107A50007574654779726F4176675F50726F7869A8 +:107A60006D6974794F6E0000000000000000000096 +:107A7000000000000000000000000000EDBC010854 +:107A8000B0BE0108534D43616C6C506F7365526515 +:107A9000636F675F636F6D707574654D65616E5F71 +:107AA0006779726F00000000000000000000000015 +:107AB00000000000000000000000000000000000C6 +:107AC00000000000B1BE010820BF0108534D436112 +:107AD0006C6C506F73655265636F675F636F6D7039 +:107AE0007574655661725F6779726F0000000000FF +:107AF0000000000000000000000000000000000086 +:107B000000000000000000000000000021BF01088C +:107B1000A4BF0108534D43616C6C506F736552658F +:107B2000636F675F636865636B52657665727365E3 +:107B30004D6F74696F6E00000000000000000000CF +:107B40000000000000000000000000000000000035 +:107B500000000000A5BF0108FCBF0108534D4361B0 +:107B60006C6C506F73655265636F675F67657447D0 +:107B700079726F4275666665720000000000000051 +:107B800000000000000000000000000000000000F5 +:107B9000000000000000000000000000FDBF010820 +:107BA0001CC00108534D43616C6C506F7365526586 +:107BB000636F675F7365744779726F427566666558 +:107BC0007200000000000000000000000000000043 +:107BD00000000000000000000000000000000000A5 +:107BE000000000001DC0010836C00108534D43616C +:107BF0006C6C506F73655265636F675F736574502B +:107C0000726F7842756666657200000000000000C1 +:107C10000000000000000000000000000000000064 +:107C200000000000000000000000000037C0010854 +:107C300064C00108534D43616C6C506F73655265AD +:107C4000636F675F61627300000000000000000066 +:107C50000000000000000000000000000000000024 +:107C60000000000000000000000000000000000014 +:107C70000000000065C0010878C001085F5F69610D +:107C8000725F646C69625F7065727468726561646A +:107C90005F61636365737300000000000000000013 +:107CA00000000000000000000000000000000000D4 +:107CB00000000000000000000000000079C0010882 +:107CC00094C001084F535F436C65617257616974DA +:107CD0004F626A0000000000000000000000000089 +:107CE0000000000000000000000000000000000094 +:107CF0000000000000000000000000000000000084 +:107D00000000000095C00108D0C0010861626F72D8 +:107D100074000000000000000000000000000000EF +:107D20000000000000000000000000000000000053 +:107D30000000000000000000000000000000000043 +:107D4000000000000000000000000000D1C0010899 +:107D5000D8C001085F5F646174615F4765744D65F9 +:107D60006D4368756E6B00000000000000000000AD +:107D70000000000000000000000000000000000003 +:107D800000000000000000000000000000000000F3 +:107D900000000000D9C0010804C10108414B534351 +:107DA0005F496E69744465636F6D70000000000088 +:107DB00000000000000000000000000000000000C3 +:107DC00000000000000000000000000000000000B3 +:107DD00000000000000000000000000005C10108D4 +:107DE00020C10108436865636B44697374436F6D18 +:107DF00070656E0000000000000000000000000040 +:107E00000000000000000000000000000000000072 +:107E10000000000000000000000000000000000062 +:107E20000000000021C101082CC2010845786563EB +:107E300044697374436F6D70656E0000000000004C +:107E40000000000000000000000000000000000032 +:107E50000000000000000000000000000000000022 +:107E60000000000000000000000000002DC201081A +:107E70001CC3010843616C634176657261676500EC +:107E800000000000000000000000000000000000F2 +:107E900000000000000000000000000000000000E2 +:107EA00000000000000000000000000000000000D2 +:107EB000000000001DC30108E6C3010853656E738E +:107EC00065436F72726563745F383937350000003F +:107ED00000000000000000000000000000000000A2 +:107EE0000000000000000000000000000000000092 +:107EF000000000000000000000000000E7C30108CF +:107F000054C4010853656E7365436F727265637480 +:107F10005F38393732000000000000000000000028 +:107F20000000000000000000000000000000000051 +:107F30000000000000000000000000000000000041 +:107F40000000000055C40108C2C4010853656E73E7 +:107F500065436F72726563745F38393633000000B1 +:107F60000000000000000000000000000000000011 +:107F70000000000000000000000000000000000001 +:107F8000000000000000000000000000C3C4010861 +:107F900038C5010853656E7365436F72726563740B +:107FA0005F3039393132000000000000000000006D +:107FB00000000000000000000000000000000000C1 +:107FC00000000000000000000000000000000000B1 +:107FD0000000000039C50108B4C5010853656E737F +:107FE00065436F72726563745F30393931310000F7 +:107FF0000000000000000000000000000000000081 +:108000000000000000000000000000000000000070 +:10801000000000000000000000000000B5C50108DD +:108020002AC601084E53465F476574436F6E64006D +:108030000000000000000000000000000000000040 +:108040000000000000000000000000000000000030 +:108050000000000000000000000000000000000020 +:10806000000000002BC6010860C60108414B5343C5 +:108070005F4E5346000000000000000000000000BA +:1080800000000000000000000000000000000000F0 +:1080900000000000000000000000000000000000E0 +:1080A00000000000000000000000000061C60108A0 +:1080B000D6C70108414B53435F496E6974446563F9 +:1080C0006F6D705F4E53460000000000000000001E +:1080D00000000000000000000000000000000000A0 +:1080E0000000000000000000000000000000000090 +:1080F00000000000D7C7010820C80108414B5343C6 +:108100005F4465636F6D7053335F4E5346000000EC +:10811000000000000000000000000000000000005F +:10812000000000000000000000000000000000004F +:1081300000000000000000000000000021C801084D +:1081400028CA010853335F436572746966696361C5 +:1081500074696F6E00000000000000000000000065 +:10816000000000000000000000000000000000000F +:1081700000000000000000000000000000000000FF +:108180000000000029CA01085ACC0108746D70660D +:10819000756E633200000000000000000000000067 +:1081A00000000000000000000000000000000000CF +:1081B00000000000000000000000000000000000BF +:1081C0000000000000000000000000005BCC01087F +:1081D0006CCC01087A7A414B53435F496E6974480D +:1081E000444F4550726F6350726D735333000000FB +:1081F000000000000000000000000000000000007F +:10820000000000000000000000000000000000006E +:10821000000000006DCC01089CCC01087A7A414B2B +:1082200053435F48444F4550726F636573735333D4 +:10823000000000000000000000000000000000003E +:10824000000000000000000000000000000000002E +:108250000000000000000000000000009DCC0108AC +:1082600076CF0108414B53435F53657448444F45F3 +:108270004C6576656C000000000000000000000006 +:1082800000000000000000000000000000000000EE +:1082900000000000000000000000000000000000DE +:1082A0000000000077CF010820D0010848444F4566 +:1082B00000000000000000000000000000000000BE +:1082C00000000000000000000000000000000000AE +:1082D000000000000000000000000000000000009E +:1082E00000000000000000000000000021D0010894 +:1082F0006CD101084669744F6E53706865726500F1 +:10830000000000000000000000000000000000006D +:10831000000000000000000000000000000000005D +:10832000000000000000000000000000000000004D +:10833000000000006DD1010810D2010848446563B7 +:108340006973696F6E00000000000000000000000B +:10835000000000000000000000000000000000001D +:10836000000000000000000000000000000000000D +:1083700000000000000000000000000011D2010811 +:10838000E4D20108476574526164697573000000A6 +:1083900000000000000000000000000000000000DD +:1083A00000000000000000000000000000000000CD +:1083B00000000000000000000000000000000000BD +:1083C00000000000E5D20108ACD301084164645309 +:1083D000756242756666657200000000000000006C +:1083E000000000000000000000000000000000008D +:1083F000000000000000000000000000000000007D +:10840000000000000000000000000000ADD30108E3 +:1084100034D50108414B53435F496E697448466C3B +:108420007563436865636B00000000000000000096 +:10843000000000000000000000000000000000003C +:10844000000000000000000000000000000000002C +:108450000000000035D501084ED50108414B5343BB +:108460005F48466C7563436865636B0000000000FD +:1084700000000000000000000000000000000000FC +:1084800000000000000000000000000000000000EC +:108490000000000000000000000000004FD50108AF +:1084A0007CD50108414B53435F564E6F726D0000FF +:1084B00000000000000000000000000000000000BC +:1084C00000000000000000000000000000000000AC +:1084D000000000000000000000000000000000009C +:1084E000000000007DD50108F0D501085F5F7072C3 +:1084F000696E745F726573756C745F6C6F636174C1 +:10850000696F6E0000000000000000000000000025 +:10851000000000000000000000000000000000005B +:10852000000000000000000000000000F1D501087C +:10853000F2D50108696E765F7365745F6163636588 +:108540006C5F66756C6C5F7363616C655F72616EA6 +:10855000676500000000000000000000000000004F +:10856000000000000000000000000000000000000B +:1085700000000000F3D501081ED60108696E765F81 +:108580007365745F6779726F5F66756C6C5F736338 +:10859000616C655F72616E6765000000000000003D +:1085A00000000000000000000000000000000000CB +:1085B0000000000000000000000000001FD60108BD +:1085C0004ED60108696E765F696E69745F696E7672 +:1085D000656E73656E73655F617069000000000011 +:1085E000000000000000000000000000000000008B +:1085F000000000000000000000000000000000007B +:10860000000000004FD6010840D70108696E765F70 +:108610007365745F6779726F5F616363656C5F64D4 +:108620006174615F72617465730000000000000096 +:10863000000000000000000000000000000000003A +:1086400000000000000000000000000041D7010809 +:1086500062D70108696E765F7365745F636F6D70D2 +:108660006173735F646174615F72617465000000BF +:1086700000000000000000000000000000000000FA +:1086800000000000000000000000000000000000EA +:108690000000000063D7010878D70108696E765F93 +:1086A0007365745F6669666F5F6461746100000082 +:1086B00000000000000000000000000000000000BA +:1086C00000000000000000000000000000000000AA +:1086D00000000000000000000000000079D7010841 +:1086E00042D80108696E765F6765745F395F6178AB +:1086F000697300000000000000000000000000009E +:108700000000000000000000000000000000000069 +:108710000000000000000000000000000000000059 +:108720000000000043D801084ED80108696E765F4A +:108730006765745F365F617869735F67616D650057 +:108740000000000000000000000000000000000029 +:108750000000000000000000000000000000000019 +:108760000000000000000000000000004FD80108D9 +:108770005AD80108696E765F6765745F65756C65C8 +:10878000725F395F617869730000000000000000CB +:1087900000000000000000000000000000000000D9 +:1087A00000000000000000000000000000000000C9 +:1087B000000000005BD8010864D80108696E765F8C +:1087C0006779726F5F7475726E65645F6F6666005D +:1087D0000000000000000000000000000000000099 +:1087E0000000000000000000000000000000000089 +:1087F00000000000000000000000000065D8010833 +:108800006ED80108696E765F616363656C5F74752D +:10881000726E65645F6F6666000000000000000015 +:108820000000000000000000000000000000000048 +:108830000000000000000000000000000000000038 +:10884000000000006FD8010878D80108696E765FD3 +:10885000636F6D706173735F7475726E65645F6F63 +:10886000666600000000000000000000000000003C +:1088700000000000000000000000000000000000F8 +:1088800000000000000000000000000079D801088E +:1088900082D80108696E765F6C70715F7475726E54 +:1088A00065645F6F66660000000000000000000065 +:1088B00000000000000000000000000000000000B8 +:1088C00000000000000000000000000000000000A8 +:1088D0000000000083D801088CD80108696E765F1B +:1088E0007365745F6D61747269785F746F5F7363D1 +:1088F000616C6172000000000000000000000000D8 +:108900000000000000000000000000000000000067 +:108910000000000000000000000000008DD80108E9 +:1089200090D80108696E765F7365745F6779726FBE +:108930005F6F7269656E745F776974685F73636196 +:108940006C65000000000000000000000000000056 +:108950000000000000000000000000000000000017 +:108960000000000091D8010894D80108696E765F74 +:108970007365745F616363656C5F6F7269656E7464 +:108980005F776974685F7363616C65000000000065 +:1089900000000000000000000000000000000000D7 +:1089A00000000000000000000000000095D8010851 +:1089B000F4D801086D70755F77726974655F6D65D5 +:1089C0006D0000000000000000000000000000003A +:1089D0000000000000000000000000000000000097 +:1089E0000000000000000000000000000000000087 +:1089F00000000000F5D8010844D901086D70755FCA +:108A0000726561645F6D656D00000000000000002C +:108A10000000000000000000000000000000000056 +:108A20000000000000000000000000000000000046 +:108A300000000000000000000000000045D901080F +:108A400094D901086D70755F6C6F61645F666972BF +:108A50006D776172650000000000000000000000FA +:108A60000000000000000000000000000000000006 +:108A700000000000000000000000000000000000F6 +:108A80000000000095D901087CDA0108646D705F70 +:108A9000726F775F325F7363616C65000000000086 +:108AA00000000000000000000000000000000000C6 +:108AB00000000000000000000000000000000000B6 +:108AC0000000000000000000000000007DDA010846 +:108AD000BCDA0108646D705F6F7269656E746174F1 +:108AE000696F6E5F6D61747269785F746F5F7363D5 +:108AF000616C6172000000000000000000000000D6 +:108B00000000000000000000000000000000000065 +:108B100000000000BDDA0108DEDA0108646D705F54 +:108B20007365745F6F7269656E746174696F6E00EE +:108B30000000000000000000000000000000000035 +:108B40000000000000000000000000000000000025 +:108B5000000000000000000000000000DFDA010853 +:108B6000FADB0108646D705F72657365745F666936 +:108B7000666F000000000000000000000000000020 +:108B800000000000000000000000000000000000E5 +:108B900000000000000000000000000000000000D5 +:108BA00000000000FBDB010860DC0108646D705F01 +:108BB000656E61626C655F6C705F717561740000F9 +:108BC00000000000000000000000000000000000A5 +:108BD0000000000000000000000000000000000095 +:108BE00000000000000000000000000061DC01083F +:108BF000A8DC0108646D705F656E61626C655F364C +:108C0000785F6C705F717561740000000000000097 +:108C10000000000000000000000000000000000054 +:108C20000000000000000000000000000000000044 +:108C300000000000A9DC0108F0DC0108646D705F31 +:108C40007365745F6669666F5F72617465000000CA +:108C50000000000000000000000000000000000014 +:108C60000000000000000000000000000000000004 +:108C7000000000000000000000000000F1DC01081E +:108C800050DD0108646D705F7365745F73746174A7 +:108C9000650000000000000000000000000000006F +:108CA00000000000000000000000000000000000C4 +:108CB00000000000000000000000000000000000B4 +:108CC0000000000051DD010872DD0108646D705F75 +:108CD000656E61626C655F666561747572650000E2 +:108CE0000000000000000000000000000000000084 +:108CF0000000000000000000000000000000000074 +:108D000000000000000000000000000073DD01080A +:108D100056DE0108696E765F646D705F726561642E +:108D20005F6669666F000000000000000000000040 +:108D30000000000000000000000000000000000033 +:108D40000000000000000000000000000000000023 +:108D50000000000057DE010846E00108696E765FFA +:108D6000646D705F696E69740000000000000000AF +:108D700000000000000000000000000000000000F3 +:108D800000000000000000000000000000000000E3 +:108D900000000000000000000000000047E00108A3 +:108DA000D4E00108696E765F646D705F656E616224 +:108DB0006C655F6C70710000000000000000000036 +:108DC00000000000000000000000000000000000A3 +:108DD0000000000000000000000000000000000093 +:108DE00000000000D5E001082CED010853485F5059 +:108DF0004D5F496E697469616C697A6553656E731C +:108E00006F72487562000000000000000000000062 +:108E10000000000000000000000000000000000052 +:108E20000000000000000000000000002DED01081F +:108E300040ED010847464D5F496E6974000000002F +:108E40000000000000000000000000000000000022 +:108E50000000000000000000000000000000000012 +:108E60000000000000000000000000000000000002 +:108E70000000000041ED0108C4ED010847464D5FC8 +:108E800053656E736F724368616E676564000000BE +:108E900000000000000000000000000000000000D2 +:108EA00000000000000000000000000000000000C2 +:108EB000000000000000000000000000C5ED0108F7 +:108EC0007CEE010847464D5F4D6F766544657465DD +:108ED00063740000000000000000000000000000BB +:108EE0000000000000000000000000000000000082 +:108EF0000000000000000000000000000000000072 +:108F0000000000007DEE010808F1010847464D5FB2 +:108F1000476574566172526573756C740000000089 +:108F20000000000000000000000000000000000041 +:108F30000000000000000000000000000000000031 +:108F400000000000000000000000000009F101081E +:108F500000F2010847464D5F53746F636B58797A8E +:108F60004461746100000000000000000000000087 +:108F700000000000000000000000000000000000F1 +:108F800000000000000000000000000000000000E1 +:108F90000000000001F2010832F2010847464D5F6F +:108FA0005069636B58797A44617461000000000075 +:108FB00000000000000000000000000000000000B1 +:108FC00000000000000000000000000000000000A1 +:108FD00000000000000000000000000033F2010863 +:108FE00050F201085052495F5065646F6D657465B9 +:108FF000725F496E6974000000000000000000000C +:109000000000000000000000000000000000000060 +:109010000000000000000000000000000000000050 +:109020000000000051F2010810F401085052495F9D +:109030005065646F6D657465725F52657365740029 +:109040000000000000000000000000000000000020 +:109050000000000000000000000000000000000010 +:1090600000000000000000000000000011F40108F2 +:1090700034F401085052495F5065646F6D65746542 +:10908000725F416E616C797A65537465700000009F +:1090900000000000000000000000000000000000D0 +:1090A00000000000000000000000000000000000C0 +:1090B0000000000035F4010894F801085052495F9F +:1090C0005065646F6D657465725F466C7573685347 +:1090D00074657044617461546F45787465726E6133 +:1090E0006C00000000000000000000000000000014 +:1090F00000000000000000000000000095F80108DA +:10910000E2F801085052495F5065646F6D657465FF +:10911000725F556E646F5374657044617461546F0F +:1091200045787465726E616C0000000000000000FC +:10913000000000000000000000000000000000002F +:1091400000000000E3F8010818F901085052495FD7 +:109150005065646F6D657465725F557064617465A8 +:1091600053746570496E666F0000000000000000D7 +:1091700000000000000000000000000000000000EF +:1091800000000000000000000000000019F90108C4 +:1091900040FD01085052495F5065646F6D6574650C +:1091A000725F436865636B4D69737365645374657F +:1091B000700000000000000000000000000000003F +:1091C000000000000000000000000000000000009F +:1091D0000000000041FD01083CFE01085052495FBB +:1091E0005065646F6D657465725F465F4368656363 +:1091F0006B53656E736F72446174615F3100000080 +:10920000000000000000000000000000000000005E +:109210000000000000000000000000003DFE01080A +:10922000B4FF01085052495F5065646F6D65746505 +:10923000725F465F436865636B53656E736F72441C +:109240006174615F32000000000000000000000057 +:10925000000000000000000000000000000000000E +:1092600000000000B5FF0108780102085052495F74 +:109270005065646F6D657465725F4F766572666C7C +:109280006F775F5761726E696E67000000000000C3 +:1092900000000000000000000000000000000000CE +:1092A000000000000000000000000000790102083A +:1092B000E00102085052495F5065646F6D65746546 +:1092C000725F4465746563745374657000000000D8 +:1092D000000000000000000000000000000000008E +:1092E000000000000000000000000000000000007E +:1092F00000000000E1010208D004020863616C6311 +:109300005365617263685065616B506F696E74007C +:10931000000000000000000000000000000000004D +:10932000000000000000000000000000000000003D +:10933000000000000000000000000000D10402084E +:109340000C0602085052495F5065646F6D65746584 +:10935000725F436865636B53656E736F72526177BA +:10936000446174614D6F76656D656E740000000038 +:1093700000000000000000000000000000000000ED +:10938000000000000D060208DC0802085052495F88 +:109390005065646F6D657465725F52756E5374616C +:1093A00074654D616368696E65000000000000002F +:1093B00000000000000000000000000000000000AD +:1093C000000000000000000000000000DD080208AE +:1093D000020B02085052495F5065646F6D657465F9 +:1093E000725F476574446574656374537465705344 +:1093F00074617465000000000000000000000000BF +:10940000000000000000000000000000000000005C +:1094100000000000030B0208100B02085052495FC5 +:109420005065646F6D657465725F476574537465EC +:1094300070496E666F000000000000000000000030 +:10944000000000000000000000000000000000001C +:10945000000000000000000000000000110B0208E6 +:10946000200B02085052495F5065646F6D6574654A +:10947000725F47657453746570496E666F466F72AC +:109480005350656E00000000000000000000000066 +:1094900000000000000000000000000000000000CC +:1094A00000000000210B02083C0B02085052495FEB +:1094B0005065646F6D657465725F456E746572505A +:1094C00061757365000000000000000000000000EE +:1094D000000000000000000000000000000000008C +:1094E0000000000000000000000000003D0B02082A +:1094F000680B02085052495F5065646F6D65746572 +:10950000725F53657455736572496E666F00000033 +:10951000000000000000000000000000000000004B +:10952000000000000000000000000000000000003B +:1095300000000000690B0208840B02085052495FCA +:109540005065646F6D657465725F4765744E6F4DED +:109550006F766554696D6500000000000000000032 +:1095600000000000000000000000000000000000FB +:10957000000000000000000000000000850B020851 +:10958000940B02085052495F5065646F6D657465B5 +:10959000725F536574496E7465726E616C53746565 +:1095A0007053746174757353746F70000000000021 +:1095B00000000000000000000000000000000000AB +:1095C00000000000950B0208E80B02085052495FAA +:1095D0005065646F6D657465725F5365744578742A +:1095E00065726E616C5374657053746174757353F6 +:1095F000746F700000000000000000000000000018 +:10960000000000000000000000000000E90B02085C +:10961000280C02085052495F5065646F6D6574658F +:10962000725F5365744669727374537465705570D4 +:1096300064617465436F6E646974696F6E000000E5 +:10964000000000000000000000000000000000001A +:1096500000000000290C02084E0C02085052495F1D +:109660005065646F6D657465725F427950617373A4 +:109670004D6F64654F6E00000000000000000000A8 +:1096800000000000000000000000000000000000DA +:109690000000000000000000000000004F0C020865 +:1096A000660C02085052495F5065646F6D657465C1 +:1096B000725F4279506173734D6F64654F666600E7 +:1096C000000000000000000000000000000000009A +:1096D000000000000000000000000000000000008A +:1096E00000000000670C0208B00C020841535F49FB +:1096F0006E6974000000000000000000000000001F +:109700000000000000000000000000000000000059 +:109710000000000000000000000000000000000049 +:10972000000000000000000000000000B10C020872 +:10973000D40C020841535F5265636F676E697A65A6 +:109740000000000000000000000000000000000019 +:109750000000000000000000000000000000000009 +:1097600000000000000000000000000000000000F9 +:1097700000000000D50C02081C0D020841535F4692 +:10978000696E000000000000000000000000000002 +:1097900000000000000000000000000000000000C9 +:1097A00000000000000000000000000000000000B9 +:1097B0000000000000000000000000001D0D020875 +:1097C0002E0D02086D41535F5344435F496E697427 +:1097D00069616C697A654461746100000000000091 +:1097E0000000000000000000000000000000000079 +:1097F0000000000000000000000000000000000069 +:10980000000000002F0D0208700D02086D41535F2B +:109810005344435F52657365744E6F4D6F76655464 +:10982000696D65720000000000000000000000008B +:109830000000000000000000000000000000000028 +:10984000000000000000000000000000710D020890 +:109850007C0D02086D41535F5344435F526573654D +:109860007454656E53656354696D65720000000041 +:1098700000000000000000000000000000000000E8 +:1098800000000000000000000000000000000000D8 +:10989000000000007D0D0208840D02086D41535F39 +:1098A0005344435F436865636B42756646756C6CF1 +:1098B00000000000000000000000000000000000A8 +:1098C0000000000000000000000000000000000098 +:1098D000000000000000000000000000850D0208EC +:1098E000940D02086D41535F53544D5F496E697486 +:1098F00069616C697A6500000000000000000000EA +:109900000000000000000000000000000000000057 +:109910000000000000000000000000000000000047 +:1099200000000000950D0208FA0D02086D41535F1A +:1099300053544D5F536574537461746500000000A7 +:109940000000000000000000000000000000000017 +:109950000000000000000000000000000000000007 +:10996000000000000000000000000000FB0D0208E5 +:10997000040E02086D41535F53544D5F46696E6992 +:1099800073680000000000000000000000000000FC +:1099900000000000000000000000000000000000C7 +:1099A00000000000000000000000000000000000B7 +:1099B00000000000050E02080C0E02086D41535F06 +:1099C00053544D5F47657453686F636B44657465AA +:1099D00063745374617465000000000000000000AF +:1099E0000000000000000000000000000000000077 +:1099F0000000000000000000000000000D0E020842 +:109A00001A0E02086D41535F53544D5F47657453FE +:109A1000686F636B4F6363757265645374617465DB +:109A20000000000000000000000000000000000036 +:109A30000000000000000000000000000000000026 +:109A4000000000001B0E0208280E02086D41535F43 +:109A500053544D5F4765744E6F4D6F76656D656EFF +:109A60007453656E73696E675374617465000000AA +:109A700000000000000000000000000000000000E6 +:109A8000000000000000000000000000290E020895 +:109A9000360E02086D41535F53544D5F4765744E57 +:109AA0006F4D6F76656D656E744F63637572656437 +:109AB00053746174650000000000000000000000A5 +:109AC0000000000000000000000000000000000096 +:109AD00000000000370E0208440E02086D41535F7B +:109AE000537461727453746174655F5265636F6718 +:109AF0006E697A65000000000000000000000000B0 +:109B00000000000000000000000000000000000055 +:109B1000000000000000000000000000450E0208E8 +:109B2000680E02086D41535F53746172745374611F +:109B300074655F5072696E745374617465000000DF +:109B40000000000000000000000000000000000015 +:109B50000000000000000000000000000000000005 +:109B600000000000690E0208700E02086D41535F8C +:109B7000537461727453746174655F476574496EA0 +:109B80007374616E63650000000000000000000057 +:109B900000000000000000000000000000000000C5 +:109BA000000000000000000000000000710E02082C +:109BB000820E02086D41535F53686F636B44657496 +:109BC00065637453746174655F5265636F676E6932 +:109BD0007A650000000000000000000000000000A6 +:109BE0000000000000000000000000000000000075 +:109BF00000000000830E0208B20E02086D41535FA0 +:109C000053686F636B446574656374537461746502 +:109C10005F5072696E7453746174650000000000D7 +:109C20000000000000000000000000000000000034 +:109C3000000000000000000000000000B30E020859 +:109C4000BA0E02086D41535F53686F636B446574CD +:109C500065637453746174655F476574496E7374AA +:109C6000616E63650000000000000000000000005D +:109C700000000000000000000000000000000000E4 +:109C800000000000BB0E0208CC0E02086D41535FBD +:109C900053686F636B4F636375726564537461746B +:109CA000655F5265636F676E697A6500000000004A +:109CB00000000000000000000000000000000000A4 +:109CC000000000000000000000000000CD0E0208AF +:109CD000100F02086D41535F53686F636B4F6363EE +:109CE0007572656453746174655F5072696E745304 +:109CF00074617465000000000000000000000000B6 +:109D00000000000000000000000000000000000053 +:109D100000000000110F0208180F02086D41535F88 +:109D200053686F636B4F63637572656453746174DA +:109D3000655F476574496E7374616E63650000000A +:109D40000000000000000000000000000000000013 +:109D5000000000000000000000000000190F0208D1 +:109D6000260F02086D41535F4E6F4D6F76656D652E +:109D70006E7453656E73696E6753746174655F5278 +:109D800065636F676E697A6500000000000000007F +:109D900000000000000000000000000000000000C3 +:109DA00000000000270F0208660F02086D41535F94 +:109DB0004E6F4D6F76656D656E7453656E73696E2B +:109DC0006753746174655F5072696E745374617423 +:109DD000650000000000000000000000000000001E +:109DE000000000000000000000000000670F0208F3 +:109DF0006E0F02086D41535F4E6F4D6F76656D6556 +:109E00006E7453656E73696E6753746174655F47F2 +:109E10006574496E7374616E636500000000000034 +:109E20000000000000000000000000000000000032 +:109E3000000000006F0F02087C0F02086D41535FA5 +:109E40004E6F4D6F76656D656E744F6363757265A9 +:109E50006453746174655F5265636F676E697A6598 +:109E600000000000000000000000000000000000F2 +:109E70000000000000000000000000007D0F02084C +:109E8000800F02086D41535F4E6F4D6F76656D65B3 +:109E90006E744F63637572656453746174655F506B +:109EA00072696E74537461746500000000000000F4 +:109EB00000000000000000000000000000000000A2 +:109EC00000000000810F0208880F02086D41535FF7 +:109ED0004E6F4D6F76656D656E744F636375726519 +:109EE0006453746174655F476574496E7374616E21 +:109EF000636500000000000000000000000000009A +:109F0000000000000000000000000000890F0208AF +:109F1000960F02086D41535F5344435F4765744198 +:109F200063634461746100000000000000000000F1 +:109F30000000000000000000000000000000000021 +:109F40000000000000000000000000000000000011 +:109F500000000000970F02089A0F02086D41535F3E +:109F60005344435F707574446174610000000000E5 +:109F700000000000000000000000000000000000E1 +:109F800000000000000000000000000000000000D1 +:109F90000000000000000000000000009B0F02080D +:109FA000281002086D41535F45524D5F446574654A +:109FB000637453686F636B000000000000000000D2 +:109FC0000000000000000000000000000000000091 +:109FD0000000000000000000000000000000000081 +:109FE0000000000029100208F41002086D41535FC0 +:109FF00045524D5F496E697469616C697A6500000C +:10A000000000000000000000000000000000000050 +:10A010000000000000000000000000000000000040 +:10A02000000000000000000000000000F510020821 +:10A03000081102086D41535F45524D5F43686563E7 +:10A040006B54656E536563416674657253686F63E4 +:10A050006B00000000000000000000000000000095 +:10A0600000000000000000000000000000000000F0 +:10A0700000000000091102082C1102086D41535F15 +:10A0800045524D5F4E6F4D6F76656D656E744465DC +:10A0900074656374696F6E000000000000000000CA +:10A0A00000000000000000000000000000000000B0 +:10A0B0000000000000000000000000002D11020858 +:10A0C0005013020841637469766974795F56656854 +:10A0D00069636C655F496E697400000000000000F0 +:10A0E0000000000000000000000000000000000070 +:10A0F0000000000000000000000000000000000060 +:10A100000000000051130208121402084163746930 +:10A11000766974795F56656869636C655F476574D5 +:10A1200056656869636C65496E666F0000000000E3 +:10A13000000000000000000000000000000000001F +:10A1400000000000000000000000000013140208DE +:10A150002414020841637469766974795F566568EE +:10A1600069636C655F44656275674D7367000000E5 +:10A1700000000000000000000000000000000000DF +:10A1800000000000000000000000000000000000CF +:10A190000000000025140208A41402084163746939 +:10A1A000766974795F56656869636C655F5374613D +:10A1B00074654275666665725265737365740000F6 +:10A1C000000000000000000000000000000000008F +:10A1D000000000000000000000000000A5140208BC +:10A1E000EE14020841637469766974795F56656894 +:10A1F00069636C655F66696E644672657175656EEC +:10A20000744163746976697479000000000000008D +:10A21000000000000000000000000000000000003E +:10A2200000000000EF140208A015020841637469E1 +:10A23000766974795F56656869636C655F4D6561C1 +:10A240006E000000000000000000000000000000A0 +:10A2500000000000000000000000000000000000FE +:10A26000000000000000000000000000A11502082E +:10A270003C19020841637469766974795F566568B0 +:10A2800069636C655F466561747572654578747263 +:10A29000616374696F6E0000000000000000000040 +:10A2A00000000000000000000000000000000000AE +:10A2B000000000003D190208981B02084163746900 +:10A2C000766974795F56656869636C655F44657427 +:10A2D0006563745F4E6F4D6F76650000000000008F +:10A2E000000000000000000000000000000000006E +:10A2F000000000000000000000000000991B0208A0 +:10A30000E01B020841637469766974795F56656879 +:10A3100069636C655F4465746563745F5368616B02 +:10A32000696E674D6F74696F6E0000000000000079 +:10A33000000000000000000000000000000000001D +:10A3400000000000E11B0208381C02084163746928 +:10A35000766974795F56656869636C655F44657496 +:10A360006563745F566962726174696F6E000000A4 +:10A3700000000000000000000000000000000000DD +:10A38000000000000000000000000000391C02086E +:10A39000D41C020841637469766974795F566568F4 +:10A3A00069636C655F4374726C56656869636C655C +:10A3B0004C6F636B00000000000000000000000014 +:10A3C000000000000000000000000000000000008D +:10A3D00000000000D51C02080C1D020841637469CE +:10A3E000766974795F56656869636C655F52656408 +:10A3F00075636553746174654572726F7200000015 +:10A40000000000000000000000000000000000004C +:10A410000000000000000000000000000D1D020808 +:10A420002E1D020841637469766974795F56656808 +:10A4300069636C655F436F6E666964656E63655FD3 +:10A440004465636973696F6E0000000000000000DE +:10A4500000000000000000000000000000000000FC +:10A46000000000002F1D0208981D02084163746956 +:10A47000766974795F56656869636C655F54757257 +:10A480006E6F666656656869636C654C6F636B00DA +:10A4900000000000000000000000000000000000BC +:10A4A000000000000000000000000000991D0208EC +:10A4B000081E020841637469766974795F5665689D +:10A4C00069636C655F446574656374000000000037 +:10A4D000000000000000000000000000000000007C +:10A4E000000000000000000000000000000000006C +:10A4F00000000000091E02089C20020841637469E4 +:10A50000766974795F56656869636C655F557064D8 +:10A510006174655F5374617465496E666F00000015 +:10A52000000000000000000000000000000000002B +:10A530000000000000000000000000009D20020854 +:10A54000F820020841637469766974795F5665681A +:10A5500069636C655F72756E436C6173736966697C +:10A56000616374696F6E5F3133313231307631003F +:10A5700000000000000000000000000000000000DB +:10A5800000000000F92002083022020841637469CB +:10A59000766974795F56656869636C655F72756E1C +:10A5A000436C617373696669616374696F6E5F316F +:10A5B00033313231367632000000000000000000F6 +:10A5C000000000000000000000000000312202082E +:10A5D000BC25020841637469766974795F566568C1 +:10A5E00069636C655F72756E436C617373696669EC +:10A5F000616374696F6E5F313331323136763300A7 +:10A60000000000000000000000000000000000004A +:10A6100000000000BD2502086C2902085052495F65 +:10A620005065646F6D657465725F5570646E5265D8 +:10A63000636F676E697A65725F496E6974000000C6 +:10A64000000000000000000000000000000000000A +:10A650000000000000000000000000006D2902085A +:10A66000F02902085052495F5065646F6D6574654A +:10A67000725F5570646E44617461436F6C6C6563A6 +:10A680007400000000000000000000000000000056 +:10A6900000000000000000000000000000000000BA +:10A6A00000000000F1290208682C02084368656375 +:10A6B0006B507265737375726553656E736F724418 +:10A6C0006966666572656E636500000000000000E3 +:10A6D000000000000000000000000000000000007A +:10A6E000000000000000000000000000692C0208CB +:10A6F000AA2C0208436865636B536C6F7065416EEA +:10A70000676C65446966666572656E636500000026 +:10A710000000000000000000000000000000000039 +:10A720000000000000000000000000000000000029 +:10A7300000000000AB2C0208002D02085052495FB7 +:10A740005065646F6D657465725F64657465726D84 +:10A75000696E655570446E00000000000000000046 +:10A7600000000000000000000000000000000000E9 +:10A77000000000000000000000000000012D0208A1 +:10A78000502F02085052495F5065646F6D657465C3 +:10A79000725F636F6D70757465536C6F7065416E39 +:10A7A000676C650000000000000000000000000071 +:10A7B0000000000000000000000000000000000099 +:10A7C00000000000512F0208183002085052495F63 +:10A7D0005065646F6D657465725F636865636B5522 +:10A7E00070446E446972656374696F6E6279566114 +:10A7F0006C000000000000000000000000000000ED +:10A8000000000000000000000000000019300208F5 +:10A810006C3102084174746974756465496E6974B9 +:10A8200069616C697A6500000000000000000000AA +:10A830000000000000000000000000000000000018 +:10A840000000000000000000000000000000000008 +:10A85000000000006D3102088431020841747469FF +:10A860007475646546696E616C697A650000000004 +:10A8700000000000000000000000000000000000D8 +:10A8800000000000000000000000000000000000C8 +:10A8900000000000000000000000000085310208F8 +:10A8A0009031020841747469747564654465746517 +:10A8B0006374696F6E00000000000000000000007B +:10A8C0000000000000000000000000000000000088 +:10A8D0000000000000000000000000000000000078 +:10A8E00000000000913102080C33020847657441F2 +:10A8F0006E676C65735F486F72697A6F6E74616CB6 +:10A900000000000000000000000000000000000047 +:10A910000000000000000000000000000000000037 +:10A920000000000000000000000000000D330208DD +:10A9300056340208476574416E676C65735F5665EF +:10A9400072746963616C0000000000000000000088 +:10A9500000000000000000000000000000000000F7 +:10A9600000000000000000000000000000000000E7 +:10A970000000000057340208A83502084D6F64310A +:10A9800038305F41747469747564650000000000BC +:10A9900000000000000000000000000000000000B7 +:10A9A00000000000000000000000000000000000A7 +:10A9B000000000000000000000000000A9350208AF +:10A9C00074360208436F6E7665727453656E736FEA +:10A9D00072556E6974000000000000000000000065 +:10A9E0000000000000000000000000000000000067 +:10A9F0000000000000000000000000000000000057 +:10AA000000000000753602081637020853746F63A1 +:10AA10006B58797A44617461000000000000000006 +:10AA20000000000000000000000000000000000026 +:10AA30000000000000000000000000000000000016 +:10AA400000000000000000000000000017370208AE +:10AA5000483702085069636B58797A446174610021 +:10AA600000000000000000000000000000000000E6 +:10AA700000000000000000000000000000000000D6 +:10AA800000000000000000000000000000000000C6 +:10AA90000000000049370208683702084765745310 +:10AAA000756D4F66580000000000000000000000B7 +:10AAB0000000000000000000000000000000000096 +:10AAC0000000000000000000000000000000000086 +:10AAD00000000000000000000000000069370208CC +:10AAE000A437020847657453756D4F66590000001E +:10AAF0000000000000000000000000000000000056 +:10AB00000000000000000000000000000000000045 +:10AB10000000000000000000000000000000000035 +:10AB200000000000A5370208E037020847657453AB +:10AB3000756D4F665A000000000000000000000024 +:10AB40000000000000000000000000000000000005 +:10AB500000000000000000000000000000000000F5 +:10AB6000000000000000000000000000E1370208C3 +:10AB70001C380208666174616E000000000000006D +:10AB800000000000000000000000000000000000C5 +:10AB900000000000000000000000000000000000B5 +:10ABA00000000000000000000000000000000000A5 +:10ABB000000000001D3802087039020866617461E7 +:10ABC0006E320000000000000000000000000000E5 +:10ABD0000000000000000000000000000000000075 +:10ABE0000000000000000000000000000000000065 +:10ABF00000000000000000000000000071390208A1 +:10AC0000043A02085365744D7265506172616D506B +:10AC10006F696E7465724461746150726F63000095 +:10AC20000000000000000000000000000000000024 +:10AC30000000000000000000000000000000000014 +:10AC400000000000053A020828420208496E6974B3 +:10AC500069616C697A655072696D69746976654578 +:10AC60006E67696E650000000000000000000000D3 +:10AC700000000000000000000000000000000000D4 +:10AC8000000000000000000000000000294202084F +:10AC900078420208496E69745072696D6974697608 +:10ACA00065730000000000000000000000000000CC +:10ACB0000000000000000000000000000000000094 +:10ACC0000000000000000000000000000000000084 +:10ACD00000000000794202087C42020846696E6169 +:10ACE0006C697A655072696D6974697665456E67DD +:10ACF000696E650000000000000000000000000018 +:10AD00000000000000000000000000000000000043 +:10AD10000000000000000000000000007D4202086A +:10AD20008A42020847657453656E736F724461749A +:10AD300061000000000000000000000000000000B2 +:10AD40000000000000000000000000000000000003 +:10AD500000000000000000000000000000000000F3 +:10AD6000000000008B42020890420208436F707995 +:10AD700053656E736F7244617461000000000000DF +:10AD800000000000000000000000000000000000C3 +:10AD900000000000000000000000000000000000B3 +:10ADA00000000000000000000000000091420208C6 +:10ADB000A44202085069636B41636344617461009B +:10ADC0000000000000000000000000000000000083 +:10ADD0000000000000000000000000000000000073 +:10ADE0000000000000000000000000000000000063 +:10ADF00000000000A5420208C242020845786563CF +:10AE00007574654D6F74696F6E456E67696E650028 +:10AE10000000000000000000000000000000000032 +:10AE20000000000000000000000000000000000022 +:10AE3000000000000000000000000000C342020803 +:10AE40000E4302084765745072696D6974697665CE +:10AE5000537461747573000000000000000000006E +:10AE600000000000000000000000000000000000E2 +:10AE700000000000000000000000000000000000D2 +:10AE8000000000000F43020812430208436C656192 +:10AE9000725072696D697469766553746174757303 +:10AEA00000000000000000000000000000000000A2 +:10AEB0000000000000000000000000000000000092 +:10AEC0000000000000000000000000001343020822 +:10AED0001E4302085365745072696D697469766522 +:10AEE00053746174757300000000000000000000DE +:10AEF0000000000000000000000000000000000052 +:10AF00000000000000000000000000000000000041 +:10AF1000000000001F4302082643020847657441F1 +:10AF20006363446174614172726179506F696E74D8 +:10AF3000657200000000000000000000000000003A +:10AF40000000000000000000000000000000000001 +:10AF5000000000000000000000000000274302087D +:10AF60002A4302085365744D7265506172616D50D9 +:10AF70006F696E7465720000000000000000000040 +:10AF800000000000000000000000000000000000C1 +:10AF900000000000000000000000000000000000B1 +:10AFA000000000002B430208304302084765744D3F +:10AFB0006F74696F6E456E67696E65506172616D21 +:10AFC00065746572000000000000000000000000D1 +:10AFD0000000000000000000000000000000000071 +:10AFE00000000000000000000000000031430208E3 +:10AFF000604302085F5F657869740000000000002C +:10B000000000000000000000000000000000000040 +:10B010000000000000000000000000000000000030 +:10B020000000000000000000000000000000000020 +:10B03000000000006143020874430208414B53437F +:10B040005F62756666657200000000000000000027 +:10B0500000000000000000000000000000000000F0 +:10B0600000000000000000000000000000000000E0 +:10B07000000000000000000000000000754302080E +:10B08000C2430208414B53435F766563746F72435A +:10B09000616C630000000000000000000000000080 +:10B0A00000000000000000000000000000000000A0 +:10B0B0000000000000000000000000000000000090 +:10B0C00000000000C343020864440208414B53439C +:10B0D0005F64697631360000000000000000000067 +:10B0E0000000000000000000000000000000000060 +:10B0F0000000000000000000000000000000000050 +:10B10000000000000000000000000000654402088C +:10B110007C440208414B53435F6E6F726D313600C1 +:10B12000000000000000000000000000000000001F +:10B13000000000000000000000000000000000000F +:10B1400000000000000000000000000000000000FF +:10B15000000000007D440208AC440208414B534308 +:10B160005F6E6F726D33320000000000000000005F +:10B1700000000000000000000000000000000000CF +:10B1800000000000000000000000000000000000BF +:10B19000000000000000000000000000AD440208B4 +:10B1A000D8440208414B53435F616273313600005B +:10B1B000000000000000000000000000000000008F +:10B1C000000000000000000000000000000000007F +:10B1D000000000000000000000000000000000006F +:10B1E00000000000D9440208F8440208414B5343D0 +:10B1F0005F646976313666000000000000000000E0 +:10B20000000000000000000000000000000000003E +:10B21000000000000000000000000000000000002E +:10B22000000000000000000000000000F9440208D7 +:10B2300030450208414B53435F676574436F656651 +:10B240006600000000000000000000000000000098 +:10B2500000000000000000000000000000000000EE +:10B2600000000000000000000000000000000000DE +:10B270000000000031450208A4470208414B534337 +:10B280005F6669744F6E506C616E6500000000006F +:10B2900000000000000000000000000000000000AE +:10B2A000000000000000000000000000000000009E +:10B2B000000000000000000000000000A547020898 +:10B2C000CE490208414B53435F63686F6C4463008F +:10B2D000000000000000000000000000000000006E +:10B2E000000000000000000000000000000000005E +:10B2F000000000000000000000000000000000004E +:10B3000000000000CF490208704A0208414B534335 +:10B310005F63686F6C536C00000000000000000069 +:10B32000000000000000000000000000000000001D +:10B33000000000000000000000000000000000000D +:10B34000000000000000000000000000714A020838 +:10B35000404B0208414B53435F73717274333200A8 +:10B3600000000000000000000000000000000000DD +:10B3700000000000000000000000000000000000CD +:10B3800000000000000000000000000000000000BD +:10B3900000000000414B0208704B0208414B534330 +:10B3A0005F696E7653717274000000000000000047 +:10B3B000000000000000000000000000000000008D +:10B3C000000000000000000000000000000000007D +:10B3D000000000000000000000000000714B0208A7 +:10B3E000304C0208696E765F64625F6C6F61645F07 +:10B3F00066756E63000000000000000000000000A1 +:10B40000000000000000000000000000000000003C +:10B41000000000000000000000000000000000002C +:10B4200000000000314C0208664C0208696E765F2D +:10B4300064625F736176655F66756E63000000002D +:10B4400000000000000000000000000000000000FC +:10B4500000000000000000000000000000000000EC +:10B46000000000000000000000000000674C02081F +:10B47000764C0208696E765F64625F6C6F61645F30 +:10B480006D706C5F66756E63000000000000000068 +:10B4900000000000000000000000000000000000AC +:10B4A000000000000000000000000000000000009C +:10B4B00000000000774C0208884C0208696E765F35 +:10B4C00064625F736176655F6D706C5F66756E63F5 +:10B4D000000000000000000000000000000000006C +:10B4E000000000000000000000000000000000005C +:10B4F000000000000000000000000000894C02086D +:10B50000984C0208696E765F696E69745F64617455 +:10B51000615F6275696C6465720000000000000084 +:10B52000000000000000000000000000000000001B +:10B53000000000000000000000000000000000000B +:10B5400000000000994C0208E64C02087365745F25 +:10B5500073656E736F725F6F7269656E7461746923 +:10B560006F6E5F616E645F7363616C650000000005 +:10B5700000000000000000000000000000000000CB +:10B58000000000000000000000000000E74C02087E +:10B590001A4D0208696E765F7365745F6779726F22 +:10B5A0005F6F7269656E746174696F6E5F616E64FE +:10B5B0005F7363616C650000000000000000000024 +:10B5C000000000000000000000000000000000007B +:10B5D000000000001B4D0208244D0208696E765FD2 +:10B5E0007365745F6779726F5F73616D706C655FAF +:10B5F000726174650000000000000000000000009F +:10B60000000000000000000000000000000000003A +:10B61000000000000000000000000000254D0208AE +:10B62000464D0208696E765F7365745F616363659A +:10B630006C5F73616D706C655F72617465000000B2 +:10B6400000000000000000000000000000000000FA +:10B6500000000000000000000000000000000000EA +:10B6600000000000474D02086A4D0208696E765FCF +:10B670007365745F636F6D706173735F73616D7019 +:10B680006C655F72617465000000000000000000DE +:10B6900000000000000000000000000000000000AA +:10B6A0000000000000000000000000006B4D0208D8 +:10B6B000904D0208696E765F7365745F7175617491 +:10B6C0005F73616D706C655F72617465000000008E +:10B6D000000000000000000000000000000000006A +:10B6E000000000000000000000000000000000005A +:10B6F00000000000914D0208A64D0208696E765FB9 +:10B700006765745F636F6D706173735F6F6E000068 +:10B710000000000000000000000000000000000029 +:10B720000000000000000000000000000000000019 +:10B73000000000000000000000000000A74D02080B +:10B74000B64D0208696E765F6765745F6779726FE0 +:10B750005F6F6E00000000000000000000000000AD +:10B7600000000000000000000000000000000000D9 +:10B7700000000000000000000000000000000000C9 +:10B7800000000000B74D0208C44D0208696E765FE4 +:10B790006765745F616363656C5F6F6E00000000D6 +:10B7A0000000000000000000000000000000000099 +:10B7B0000000000000000000000000000000000089 +:10B7C000000000000000000000000000C54D02085D +:10B7D000D44D0208696E765F6765745F6C6173743F +:10B7E0005F74696D657374616D7000000000000026 +:10B7F0000000000000000000000000000000000049 +:10B800000000000000000000000000000000000038 +:10B8100000000000D54D02085C4E0208696E765F9C +:10B820007365745F616363656C5F6F7269656E7485 +:10B830006174696F6E5F616E645F7363616C6500F4 +:10B8400000000000000000000000000000000000F8 +:10B850000000000000000000000000005D4E020833 +:10B86000664E0208696E765F7365745F636F6D7014 +:10B870006173735F6F7269656E746174696F6E5F17 +:10B88000616E645F7363616C65000000000000001E +:10B8900000000000000000000000000000000000A8 +:10B8A00000000000674E0208704E0208696E765F65 +:10B8B0006170706C795F63616C6962726174696FE9 +:10B8C0006E0000000000000000000000000000000A +:10B8D0000000000000000000000000000000000068 +:10B8E000000000000000000000000000714E02088F +:10B8F000DE4E0208696E765F7365745F616363652F +:10B900006C5F616363757261637900000000000021 +:10B910000000000000000000000000000000000027 +:10B920000000000000000000000000000000000017 +:10B9300000000000DF4E0208EC4E0208696E765FE0 +:10B940007365745F616363656C5F626961735F6D8A +:10B9500061736B00000000000000000000000000A8 +:10B9600000000000000000000000000000000000D7 +:10B97000000000000000000000000000ED4E020882 +:10B980003A4F0208696E765F7365745F6D706C5F25 +:10B990006779726F5F6269617300000000000000E8 +:10B9A0000000000000000000000000000000000097 +:10B9B0000000000000000000000000000000000087 +:10B9C000000000003B4F02089C4F0208696E765F42 +:10B9D0006765745F6779726F5F626961735F7463D3 +:10B9E0005F736574000000000000000000000000AC +:10B9F0000000000000000000000000000000000047 +:10BA00000000000000000000000000009D4F020840 +:10BA1000B64F0208696E765F6765745F6D706C5F24 +:10BA20006779726F5F626961730000000000000057 +:10BA30000000000000000000000000000000000006 +:10BA400000000000000000000000000000000000F6 +:10BA500000000000B74F0208D84F0208696E765FF9 +:10BA60006275696C645F616363656C00000000006F +:10BA700000000000000000000000000000000000C6 +:10BA800000000000000000000000000000000000B6 +:10BA9000000000000000000000000000D94F020874 +:10BAA00042500208696E765F6275696C645F6779FF +:10BAB000726F0000000000000000000000000000A5 +:10BAC0000000000000000000000000000000000076 +:10BAD0000000000000000000000000000000000066 +:10BAE000000000004350020878500208696E765F3B +:10BAF0006275696C645F636F6D70617373000000E1 +:10BB00000000000000000000000000000000000035 +:10BB10000000000000000000000000000000000025 +:10BB20000000000000000000000000007950020842 +:10BB3000F0500208696E765F6275696C645F7175BA +:10BB40006174000000000000000000000000000020 +:10BB500000000000000000000000000000000000E5 +:10BB600000000000000000000000000000000000D5 +:10BB700000000000F150020878510208696E765FFB +:10BB8000616363656C5F7761735F7475726E656422 +:10BB90005F6F66660000000000000000000000000B +:10BBA0000000000000000000000000000000000095 +:10BBB00000000000000000000000000079510208B1 +:10BBC00084510208696E765F636F6D706173735F95 +:10BBD0007761735F7475726E65645F6F666600008F +:10BBE0000000000000000000000000000000000055 +:10BBF0000000000000000000000000000000000045 +:10BC0000000000008551020890510208696E765FBD +:10BC10007175617465726E696F6E5F73656E736F57 +:10BC2000725F7761735F7475726E65645F6F66666D +:10BC30000000000000000000000000000000000004 +:10BC40000000000000000000000000009151020808 +:10BC50009C510208696E765F6779726F5F776173D6 +:10BC60005F7475726E65645F6F6666000000000049 +:10BC700000000000000000000000000000000000C4 +:10BC800000000000000000000000000000000000B4 +:10BC9000000000009D510208A6510208696E765FFF +:10BCA00072656769737465725F646174615F636212 +:10BCB0000000000000000000000000000000000084 +:10BCC0000000000000000000000000000000000074 +:10BCD000000000000000000000000000A751020862 +:10BCE00044520208696E765F657865637574655FB6 +:10BCF0006F6E5F646174610000000000000000006E +:10BD00000000000000000000000000000000000033 +:10BD10000000000000000000000000000000000023 +:10BD20000000000045520208CC520208696E765F9E +:10BD30007365745F636F6E746967756F7573000008 +:10BD400000000000000000000000000000000000F3 +:10BD500000000000000000000000000000000000E3 +:10BD6000000000000000000000000000CD520208AA +:10BD70005C530208696E765F6765745F6163636533 +:10BD80006C5F73657400000000000000000000009C +:10BD900000000000000000000000000000000000A3 +:10BDA0000000000000000000000000000000000093 +:10BDB000000000005D5302088A530208696E765F36 +:10BDC0006765745F636F6D706173735F7365740033 +:10BDD0000000000000000000000000000000000063 +:10BDE0000000000000000000000000000000000053 +:10BDF0000000000000000000000000008B5302085B +:10BE0000C2530208696E765F6765745F6779726F07 +:10BE10005F61636375726163790000000000000078 +:10BE20000000000000000000000000000000000012 +:10BE30000000000000000000000000000000000002 +:10BE400000000000C3530208C8530208696E765F01 +:10BE50006765745F6D61675F616363757261637964 +:10BE600000000000000000000000000000000000D2 +:10BE700000000000000000000000000000000000C2 +:10BE8000000000000000000000000000C95302088C +:10BE9000DC530208696E765F6765745F6163636592 +:10BEA0006C5F61636375726163790000000000007C +:10BEB0000000000000000000000000000000000082 +:10BEC0000000000000000000000000000000000072 +:10BED00000000000DD530208E4530208696E765F3B +:10BEE0006765745F636F6D706173735F736F6674A2 +:10BEF0005F69726F6E5F6F75747075745F64617483 +:10BF000061000000000000000000000000000000D0 +:10BF1000000000000000000000000000E5530208DF +:10BF2000FE530208696E765F7365745F636F6D70B0 +:10BF30006173735F736F66745F69726F6E5F696E52 +:10BF40007075745F6461746100000000000000009F +:10BF500000000000000000000000000000000000E1 +:10BF600000000000FF5302084A540208696E765F21 +:10BF700072657365745F636F6D706173735F736F08 +:10BF800066745F69726F6E5F6D61747269780000CC +:10BF900000000000000000000000000000000000A1 +:10BFA0000000000000000000000000004B540208E8 +:10BFB00098540208696E765F64697361626C655FAC +:10BFC000636F6D706173735F736F66745F69726FB7 +:10BFD0006E5F6D61747269780000000000000000FF +:10BFE0000000000000000000000000000000000051 +:10BFF0000000000099540208E05402085F5F70726C +:10C00000696E745F726573756C745F6C6F63617475 +:10C01000696F6E00000000000000000000000000DA +:10C020000000000000000000000000000000000010 +:10C03000000000000000000000000000E1540208C1 +:10C04000E2540208696E765F696E69745F6D706CA8 +:10C0500000000000000000000000000000000000E0 +:10C0600000000000000000000000000000000000D0 +:10C0700000000000000000000000000000000000C0 +:10C0800000000000E354020858550208696E765F0C +:10C0900073746172745F6D706C00000000000000CA +:10C0A0000000000000000000000000000000000090 +:10C0B0000000000000000000000000000000000080 +:10C0C00000000000000000000000000059550208B8 +:10C0D000E05502085F5F7072696E745F7265737518 +:10C0E0006C745F6C6F636174696F6E0000000000B8 +:10C0F0000000000000000000000000000000000040 +:10C10000000000000000000000000000000000002F +:10C1100000000000E1550208E455020866617374EE +:10C120005F6E6F6D6F745F7365745F6779726F5F59 +:10C1300063616C6962726174696F6E5F636F6E6672 +:10C140006964656E63655F6C6576656C5F74696D67 +:10C15000655F7468726573686F6C6400E55502080A +:10C1600006560208666173745F6E6F6D6F745F6769 +:10C1700065745F6779726F5F626961735F75706420 +:10C180006174655F74696D65000000000000000067 +:10C19000000000000000000000000000000000009F +:10C1A000000000000756020810560208666173740A +:10C1B0005F6E6F6D6F745F7365745F6779726F5FC9 +:10C1C000626961735F7570646174655F74696D65E0 +:10C1D000000000000000000000000000000000005F +:10C1E00000000000000000000000000011560208DE +:10C1F00022560208696E765F696E69745F6D6178B8 +:10C200006D696E00000000000000000000000000EA +:10C21000000000000000000000000000000000001E +:10C22000000000000000000000000000000000000E +:10C230000000000023560208885602086765745FF4 +:10C240007468655F706F7765725F76616C756500A5 +:10C2500000000000000000000000000000000000DE +:10C2600000000000000000000000000000000000CE +:10C2700000000000000000000000000089560208D5 +:10C2800098560208696E765F666173745F6E6F6DB3 +:10C290006F745F706172616D65746572000000009B +:10C2A000000000000000000000000000000000008E +:10C2B000000000000000000000000000000000007E +:10C2C000000000009956020836580208696E765F31 +:10C2D000666173745F6E6F6D6F745F706172616DB4 +:10C2E000657465725F337264000000000000000036 +:10C2F000000000000000000000000000000000003E +:10C300000000000000000000000000003758020894 +:10C310004C590208696E765F69665F656E6F756776 +:10C32000685F6461746100000000000000000000AC +:10C3300000000000000000000000000000000000FD +:10C3400000000000000000000000000000000000ED +:10C35000000000004D59020882590208696E765F9C +:10C36000666173745F6E6F6D6F745F7365745F6722 +:10C3700079726F5F62696173000000000000000065 +:10C3800000000000000000000000000000000000AD +:10C3900000000000000000000000000083590208B7 +:10C3A0001A5B0208696E765F666173745F6E6F6D0B +:10C3B0006F745F73746F72655F6461746100000015 +:10C3C000000000000000000000000000000000006D +:10C3D000000000000000000000000000000000005D +:10C3E000000000001B5B0208AC5B0208696E765F10 +:10C3F000666173745F6E6F6D6F745F73746F726577 +:10C400005F646174615F636F6D70617373000000DE +:10C41000000000000000000000000000000000001C +:10C42000000000000000000000000000AD5B0208FA +:10C430000E5C0208696E765F666173745F6E6F6D85 +:10C440006F745F72657365745F646174615F636F5D +:10C450006D706173730000000000000000000000B8 +:10C4600000000000000000000000000000000000CC +:10C47000000000000F5C0208425C0208696E765FF3 +:10C48000666173745F6E6F6D6F745F6765745F7400 +:10C49000696D655F656C61707300000000000000ED +:10C4A000000000000000000000000000000000008C +:10C4B000000000000000000000000000435C0208D3 +:10C4C000565C0208696E765F666173745F6E6F6DAD +:10C4D0006F745F706172616D657465725F636F6DBB +:10C4E0007061737300000000000000000000000095 +:10C4F000000000000000000000000000000000003C +:10C5000000000000575C02086C5C0208696E765FF0 +:10C510006D61785F6368616E676500000000000010 +:10C52000000000000000000000000000000000000B +:10C5300000000000000000000000000000000000FB +:10C540000000000000000000000000006D5C020818 +:10C550008E5C0208696E765F72657365745F6D69E3 +:10C560006E5F6D61785F6779726F5F616363656C41 +:10C570005F73746174697374696373000000000011 +:10C5800000000000000000000000000000000000AB +:10C59000000000008F5C0208C85C0208696E765FCC +:10C5A00072657365745F7061636B65740000000091 +:10C5B000000000000000000000000000000000007B +:10C5C000000000000000000000000000000000006B +:10C5D000000000000000000000000000C95C02082C +:10C5E000EE5C0208696E765F7265636F72645F6D00 +:10C5F00061785F6D6F6D656E745F696E5F6E6F5FA2 +:10C600006D6F74696F6E5F6779726F000000000074 +:10C61000000000000000000000000000000000001A +:10C6200000000000EF5C02081E5D0208696E765F84 +:10C630007265636F72645F6D61785F6D6F6D656E5B +:10C64000745F696E5F6E6F5F6D6F74696F6E5F614F +:10C650006363656C00000000000000000000000043 +:10C660000000000000000000000000001F5D020844 +:10C670004E5D0208696E765F7265636F72645F6D0E +:10C68000696E5F6D6F6D656E745F696E5F6D6F74FF +:10C69000696F6E5F6779726F000000000000000034 +:10C6A000000000000000000000000000000000008A +:10C6B000000000004F5D02087E5D0208696E765F33 +:10C6C0007265636F72645F6D696E5F6D6F6D656ECD +:10C6D000745F696E5F6D6F74696F6E5F61636365D0 +:10C6E0006C000000000000000000000000000000DE +:10C6F0000000000000000000000000007F5D020854 +:10C70000AE5D0208696E765F6465746563745F6D23 +:10C710006F74696F6E5F62795F6779726F5F616373 +:10C7200063656C00000000000000000000000000D5 +:10C7300000000000000000000000000000000000F9 +:10C7400000000000AF5D02084E5E0208696E765F71 +:10C7500073656E736F725F646174615F7072657030 +:10C76000726F63657373000000000000000000003A +:10C7700000000000000000000000000000000000B9 +:10C780000000000000000000000000004F5E0208F2 +:10C79000D85E0208696E765F67656E657261746562 +:10C7A0005F666173745F6E6F6D6F740000000000F0 +:10C7B0000000000000000000000000000000000079 +:10C7C0000000000000000000000000000000000069 +:10C7D00000000000D95E02083C610208696E765FC5 +:10C7E0007365745F64656661756C745F6E756D62A8 +:10C7F00065725F6F665F73616D706C6573000000DA +:10C800000000000000000000000000000000000028 +:10C810000000000000000000000000003D61020870 +:10C8200060610208696E765F696E69745F66617344 +:10C83000745F6E6F6D6F74000000000000000000F8 +:10C8400000000000000000000000000000000000E8 +:10C8500000000000000000000000000000000000D8 +:10C860000000000061610208BE610208696E765F27 +:10C8700073746172745F666173745F6E6F6D6F74F1 +:10C8800000000000000000000000000000000000A8 +:10C890000000000000000000000000000000000098 +:10C8A000000000000000000000000000BF6102085E +:10C8B000F8610208696E765F656E61626C655F663D +:10C8C0006173745F6E6F6D6F740000000000000094 +:10C8D0000000000000000000000000000000000058 +:10C8E0000000000000000000000000000000000048 +:10C8F00000000000F96102083C620208666173747E +:10C900005F6E6F6D6F745F6765745F6779726F5F7D +:10C9100063616C6962726174696F6E5F636F6E668A +:10C920006964656E63655F6C6576656C0000000028 +:10C930000000000000000000000000003D6202084E +:10C94000F8620208616363656C5F667573696F6E98 +:10C9500000000000000000000000000000000000D7 +:10C9600000000000000000000000000000000000C7 +:10C9700000000000000000000000000000000000B7 +:10C9800000000000F9620208D4640208696E765F54 +:10C99000636F6D707574655F717561745F66726FDA +:10C9A0006D5F616363656C000000000000000000C3 +:10C9B0000000000000000000000000000000000077 +:10C9C000000000000000000000000000D564020824 +:10C9D000F8650208696E765F6E6F726D616C697AD8 +:10C9E000655F7175617400000000000000000000C8 +:10C9F0000000000000000000000000000000000037 +:10CA00000000000000000000000000000000000026 +:10CA100000000000F9650208D0660208696E765FC2 +:10CA200067656E65726174655F6779726F5F717556 +:10CA3000617465726E696F6E000000000000000096 +:10CA400000000000000000000000000000000000E6 +:10CA5000000000000000000000000000D166020895 +:10CA6000F8670208696E765F70726F636573735F53 +:10CA7000646D705F7175617465726E696F6E0000D0 +:10CA800000000000000000000000000000000000A6 +:10CA90000000000000000000000000000000000096 +:10CAA00000000000F9670208E0690208696E765F1D +:10CAB00067656E65726174655F616363656C5F670E +:10CAC00079726F5F7175617465726E696F6E000067 +:10CAD0000000000000000000000000000000000056 +:10CAE000000000000000000000000000E1690208F2 +:10CAF000446C0208696E765F67656E657261746585 +:10CB00005F7175617465726E696F6E000000000080 +:10CB10000000000000000000000000000000000015 +:10CB20000000000000000000000000000000000005 +:10CB300000000000456C0208A66C0208696E765F72 +:10CB4000696E69745F7175617465726E696F6E008C +:10CB500000000000000000000000000000000000D5 +:10CB600000000000000000000000000000000000C5 +:10CB7000000000000000000000000000A76C020898 +:10CB8000C86C0208696E765F656E61626C655F7184 +:10CB900075617465726E696F6E00000000000000C0 +:10CBA0000000000000000000000000000000000085 +:10CBB0000000000000000000000000000000000075 +:10CBC00000000000C96C0208E46C0208696E765F20 +:10CBD00073746172745F7175617465726E696F6E82 +:10CBE0000000000000000000000000000000000045 +:10CBF0000000000000000000000000000000000035 +:10CC0000000000000000000000000000E56C0208C9 +:10CC1000146D0208696E765F6765745F73656E7385 +:10CC20006F725F747970655F726F746174696F6E33 +:10CC30005F766563746F7200000000000000000002 +:10CC400000000000000000000000000000000000E4 +:10CC500000000000156D0208D06D0208696E765F55 +:10CC60006765745F73656E736F725F747970655F0B +:10CC7000726F746174696F6E5F766563746F725FF3 +:10CC8000365F61786973000000000000000000005A +:10CC9000000000000000000000000000D16D02084C +:10CCA000B06E0208696E765F6765745F726F74615B +:10CCB00074696F6E000000000000000000000000BA +:10CCC0000000000000000000000000000000000064 +:10CCD0000000000000000000000000000000000054 +:10CCE00000000000B16E02085C6F0208676F6F679A +:10CCF0006C655F6F7269656E746174696F6E000058 +:10CD00000000000000000000000000000000000023 +:10CD10000000000000000000000000000000000013 +:10CD20000000000000000000000000005D6F02082D +:10CD3000D26F0208696E765F6765745F73656E73A4 +:10CD40006F725F747970655F6F7269656E7461741C +:10CD5000696F6E000000000000000000000000008D +:10CD600000000000000000000000000000000000C3 +:10CD700000000000D36F0208F46F0208696E765F4E +:10CD800067656E65726174655F68616C5F6F75740D +:10CD900070757473000000000000000000000000C7 +:10CDA0000000000000000000000000000000000083 +:10CDB000000000000000000000000000F56F020805 +:10CDC000AA710208696E765F73746172745F68613C +:10CDD0006C5F6F7574707574730000000000000064 +:10CDE0000000000000000000000000000000000043 +:10CDF0000000000000000000000000000000000033 +:10CE000000000000AB710208BC710208696E765F19 +:10CE1000696E69745F68616C5F6F75747075747347 +:10CE20000000000000000000000000000000000002 +:10CE300000000000000000000000000000000000F2 +:10CE4000000000000000000000000000BD710208AA +:10CE5000E8710208696E765F656E61626C655F6895 +:10CE6000616C5F6F75747075747300000000000072 +:10CE700000000000000000000000000000000000B2 +:10CE800000000000000000000000000000000000A2 +:10CE900000000000E97102080C720208696E765FFA +:10CEA00066696E645F73796E6368726F6E697A65C6 +:10CEB000645F636F6D706173735F616E676C650053 +:10CEC0000000000000000000000000000000000062 +:10CED0000000000000000000000000000D720208C9 +:10CEE000E0720208696E765F66696C7465725F63F2 +:10CEF0006F7272656374696F6E5F616E676C6500F7 +:10CF00000000000000000000000000000000000021 +:10CF10000000000000000000000000000000000011 +:10CF200000000000E1720208E8740208696E765F92 +:10CF3000706572666F726D5F39785F667573696F61 +:10CF40006E00000000000000000000000000000073 +:10CF500000000000000000000000000000000000D1 +:10CF6000000000000000000000000000E97402085A +:10CF70001C7A0208696E765F70726F636573735F07 +:10CF800039785F73656E736F725F667573696F6E04 +:10CF90005F6362000000000000000000000000006D +:10CFA0000000000000000000000000000000000081 +:10CFB000000000001D7A0208E87A0208696E765FB8 +:10CFC000696E69745F39785F667573696F6E0000AA +:10CFD0000000000000000000000000000000000051 +:10CFE0000000000000000000000000000000000041 +:10CFF000000000000000000000000000E97A0208C4 +:10D00000447B0208696E765F39785F667573696F75 +:10D010006E5F656E61626C655F6A69747465725F8C +:10D02000726564756374696F6E0000000000000033 +:10D0300000000000000000000000000000000000F0 +:10D0400000000000457B02084E7B0208696E765F97 +:10D0500039785F667573696F6E5F7573655F746944 +:10D060006D657374616D7073000000000000000056 +:10D0700000000000000000000000000000000000B0 +:10D080000000000000000000000000004F7B0208CC +:10D09000587B0208696E765F73746172745F3978C9 +:10D0A0005F73656E736F725F667573696F6E000094 +:10D0B0000000000000000000000000000000000070 +:10D0C0000000000000000000000000000000000060 +:10D0D00000000000597B0208647B0208696E765FDD +:10D0E000656E61626C655F39785F73656E736F72D0 +:10D0F0005F667573696F6E0000000000000000003D +:10D10000000000000000000000000000000000001F +:10D11000000000000000000000000000657B020825 +:10D12000007C0208696E765F666173745F67746382 +:10D130005F6C6F61640000000000000000000000F0 +:10D1400000000000000000000000000000000000DF +:10D1500000000000000000000000000000000000CF +:10D1600000000000017C0208127C0208696E765FF4 +:10D17000666173745F6774635F73746F72650000D8 +:10D18000000000000000000000000000000000009F +:10D19000000000000000000000000000000000008F +:10D1A000000000000000000000000000137C0208E6 +:10D1B000227C0208696E765F666173745F677463D0 +:10D1C0005F646174615F6362000000000000000042 +:10D1D000000000000000000000000000000000004F +:10D1E000000000000000000000000000000000003F +:10D1F00000000000237C0208E67C0208696E765F6E +:10D20000666173745F6774635F636F6D7075746577 +:10D210005F736C6F7065000000000000000000008C +:10D2200000000000000000000000000000000000FE +:10D23000000000000000000000000000E77C020881 +:10D2400094800208696E765F696E69745F666173C7 +:10D25000745F6779726F5F747300000000000000F4 +:10D2600000000000000000000000000000000000BE +:10D2700000000000000000000000000000000000AE +:10D280000000000095800208B6800208696E765F93 +:10D2900073746172745F666173745F6779726F5FD4 +:10D2A00074630000000000000000000000000000A7 +:10D2B000000000000000000000000000000000006E +:10D2C000000000000000000000000000B78002081D +:10D2D000C0800208696E765F656E61626C655F662C +:10D2E0006173745F6779726F5F74630000000000A0 +:10D2F000000000000000000000000000000000002E +:10D30000000000000000000000000000000000001D +:10D3100000000000C1800208148102085F5F707283 +:10D32000696E745F726573756C745F6C6F63617442 +:10D33000696F6E00000000000000000000000000A7 +:10D3400000000000000000000000000000000000DD +:10D35000000000000000000000000000158102082D +:10D3600016810208696E765F696E69745F61636336 +:10D37000656C5F6D61786D696E00000000000000F3 +:10D38000000000000000000000000000000000009D +:10D39000000000000000000000000000000000008D +:10D3A000000000001781020836810208696E765F6E +:10D3B0007265636F72645F676F6F645F61636365FB +:10D3C0006C5F6D61786D696E000000000000000008 +:10D3D000000000000000000000000000000000004D +:10D3E000000000000000000000000000378102087B +:10D3F00078810208696E765F6765745F6375727223 +:10D40000656E745F63616C696272617465645F61AB +:10D410006363656C00000000000000000000000075 +:10D4200000000000000000000000000000000000FC +:10D430000000000079810208BA810208696E765FF7 +:10D44000636865636B5F70757368000000000000BF +:10D4500000000000000000000000000000000000CC +:10D4600000000000000000000000000000000000BC +:10D47000000000000000000000000000BB81020866 +:10D4800050830208696E765F636865636B5F636FE4 +:10D490007665726167655F7365745F626961730069 +:10D4A000000000000000000000000000000000007C +:10D4B000000000000000000000000000000000006C +:10D4C000000000005183020888840208696E765FBC +:10D4D000636F6D62696E655F646174615F63616CE7 +:10D4E00063756C6174655F626961730000000000C0 +:10D4F000000000000000000000000000000000002C +:10D500000000000000000000000000008984020804 +:10D5100044850208696E765F736F72745F6F726420 +:10D5200065725F345F5400000000000000000000DE +:10D5300000000000000000000000000000000000EB +:10D5400000000000000000000000000000000000DB +:10D550000000000045850208F6850208696E765FC6 +:10D56000696E69745F636865636B5F73616D706C2E +:10D57000655F62616C616E63650000000000000021 +:10D58000000000000000000000000000000000009B +:10D59000000000000000000000000000F785020805 +:10D5A0001A860208696E765F696E69745F636865E2 +:10D5B000636B5F73616D706C655F62616C616E63FC +:10D5C000655F706172616D657465720000000000D6 +:10D5D000000000000000000000000000000000004B +:10D5E000000000001B8602083C860208696E765F18 +:10D5F0006164645F616363656C5F626C6F636B5FE2 +:10D600006461746100000000000000000000000080 +:10D61000000000000000000000000000000000000A +:10D620000000000000000000000000003D8602082D +:10D6300004870208696E765F636865636B5F736178 +:10D640006D706C655F62616C616E63650000000007 +:10D6500000000000000000000000000000000000CA +:10D6600000000000000000000000000000000000BA +:10D670000000000005870208BC8802087365745F1B +:10D6800073616D706C655F7261746500000000000D +:10D69000000000000000000000000000000000008A +:10D6A000000000000000000000000000000000007A +:10D6B000000000000000000000000000BD8802081B +:10D6C00024890208696E765F6175746F5F63616CAF +:10D6D00069627261746500000000000000000000D3 +:10D6E000000000000000000000000000000000003A +:10D6F000000000000000000000000000000000002A +:10D700000000000025890208448C0208696E765FDB +:10D71000696E69745F696E5F7573655F6175746F5B +:10D720005F63616C6962726174696F6E0000000012 +:10D7300000000000000000000000000000000000E9 +:10D74000000000000000000000000000458C0208FE +:10D750009A8C0208696E765F73746172745F696E89 +:10D760005F7573655F6175746F5F63616C69627229 +:10D770006174696F6E00000000000000000000008E +:10D780000000000000000000000000000000000099 +:10D79000000000009B8C0208A68C0208696E765F70 +:10D7A00064625F6C6F61645F66756E6300000000A9 +:10D7B0000000000000000000000000000000000069 +:10D7C0000000000000000000000000000000000059 +:10D7D000000000000000000000000000A78C02080C +:10D7E000C08C0208696E765F64625F736176655F04 +:10D7F00066756E630000000000000000000000007D +:10D800000000000000000000000000000000000018 +:10D810000000000000000000000000000000000008 +:10D8200000000000C18C0208D68C0208696E765F89 +:10D83000656E61626C655F696E5F7573655F61756A +:10D84000746F5F63616C6962726174696F6E00000E +:10D8500000000000000000000000000000000000C8 +:10D86000000000000000000000000000D78C02084B +:10D87000EC8D0208696E765F636F6D706173735F24 +:10D88000616E676C65000000000000000000000091 +:10D890000000000000000000000000000000000088 +:10D8A0000000000000000000000000000000000078 +:10D8B00000000000ED8D0208CC8E0208696E765FD4 +:10D8C0006765745F6779726F5F73756D5F6F665FB1 +:10D8D00073717200000000000000000000000000F2 +:10D8E0000000000000000000000000000000000038 +:10D8F000000000000000000000000000CD8E0208C3 +:10D90000E68E0208696E765F7132395F6D756C74F0 +:10D910000000000000000000000000000000000007 +:10D9200000000000000000000000000000000000F7 +:10D9300000000000000000000000000000000000E7 +:10D9400000000000E78E0208F28E0208696E765F22 +:10D950007133305F6D756C740000000000000000D2 +:10D9600000000000000000000000000000000000B7 +:10D9700000000000000000000000000000000000A7 +:10D98000000000000000000000000000F38E02080C +:10D99000FE8E0208696E765F715F6D756C740000B3 +:10D9A0000000000000000000000000000000000077 +:10D9B0000000000000000000000000000000000067 +:10D9C0000000000000000000000000000000000057 +:10D9D00000000000FF8E0208C48F0208696E765FA7 +:10D9E000715F61646400000000000000000000003E +:10D9F0000000000000000000000000000000000027 +:10DA00000000000000000000000000000000000016 +:10DA1000000000000000000000000000C58F0208A8 +:10DA2000EA8F0208696E765F715F696E766572745F +:10DA300000000000000000000000000000000000E6 +:10DA400000000000000000000000000000000000D6 +:10DA500000000000000000000000000000000000C6 +:10DA600000000000EB8F020808900208696E765FE4 +:10DA7000715F726F74617465000000000000000047 +:10DA80000000000000000000000000000000000096 +:10DA90000000000000000000000000000000000086 +:10DAA00000000000000000000000000009900208D3 +:10DAB00046900208696E765F715F6D756C746600E2 +:10DAC0000000000000000000000000000000000056 +:10DAD0000000000000000000000000000000000046 +:10DAE0000000000000000000000000000000000036 +:10DAF000000000004790020818910208696E765FE6 +:10DB0000715F6164646600000000000000000000B6 +:10DB10000000000000000000000000000000000005 +:10DB200000000000000000000000000000000000F5 +:10DB30000000000000000000000000001991020831 +:10DB40005A910208696E765F715F6E6F726D616CDB +:10DB5000697A656600000000000000000000000017 +:10DB600000000000000000000000000000000000B5 +:10DB700000000000000000000000000000000000A5 +:10DB8000000000005B9102080E920208696E765F49 +:10DB9000715F6E6F726D34000000000000000000C5 +:10DBA0000000000000000000000000000000000075 +:10DBB0000000000000000000000000000000000065 +:10DBC0000000000000000000000000000F920208AA +:10DBD00082920208696E765F715F696E7665727413 +:10DBE00066000000000000000000000000000000CF +:10DBF0000000000000000000000000000000000025 +:10DC00000000000000000000000000000000000014 +:10DC10000000000083920208AC920208696E765FF1 +:10DC20007175617465726E696F6E5F746F5F726F2C +:10DC3000746174696F6E0000000000000000000055 +:10DC400000000000000000000000000000000000D4 +:10DC5000000000000000000000000000AD9202087B +:10DC600086930208696E765F726F775F325F7363C7 +:10DC7000616C650000000000000000000000000072 +:10DC80000000000000000000000000000000000094 +:10DC90000000000000000000000000000000000084 +:10DCA0000000000087930208C6930208696E765F41 +:10DCB0006F7269656E746174696F6E5F6D617472A5 +:10DCC00069785F746F5F7363616C6172000000005C +:10DCD0000000000000000000000000000000000044 +:10DCE000000000000000000000000000C7930208D0 +:10DCF000E8930208696E765F636F6E766572745F93 +:10DD0000746F5F626F64795F776974685F73636172 +:10DD10006C65000000000000000000000000000032 +:10DD200000000000000000000000000000000000F3 +:10DD300000000000E993020856940208696E765FBD +:10DD4000696E69745F6269717561645F66696C743C +:10DD500065720000000000000000000000000000EC +:10DD600000000000000000000000000000000000B3 +:10DD700000000000000000000000000057940208AE +:10DD800074940208696E765F63616C635F7374619B +:10DD900074655F746F5F6D617463685F6F757470D5 +:10DDA000757400000000000000000000000000008A +:10DDB0000000000000000000000000000000000063 +:10DDC00000000000759402089E940208696E765F58 +:10DDD0006269717561645F66696C7465725F7072A7 +:10DDE0006F63657373000000000000000000000016 +:10DDF0000000000000000000000000000000000023 +:10DE00000000000000000000000000009F940208D5 +:10DE1000EC9402086D6C4D61747269785665637498 +:10DE20006F724D756C74000000000000000000006F +:10DE300000000000000000000000000000000000E2 +:10DE400000000000000000000000000000000000D2 +:10DE500000000000ED9402082E950208696E765FBE +:10DE6000666173745F7371727400000000000000DB +:10DE700000000000000000000000000000000000A2 +:10DE80000000000000000000000000000000000092 +:10DE90000000000000000000000000002F950208B4 +:10DEA000EC950208746573745F6C696D6974735FD7 +:10DEB000616E645F7363616C6500000000000000C8 +:10DEC0000000000000000000000000000000000052 +:10DED0000000000000000000000000000000000042 +:10DEE00000000000ED950208849602086765745FE3 +:10DEF000686967686573745F6269745F706F73697E +:10DF000074696F6E00000000000000000000000057 +:10DF10000000000000000000000000000000000001 +:10DF200000000000000000000000000085960208CC +:10DF3000D6960208696E765F636F6D707574655F63 +:10DF40007363616C61725F70617274000000000045 +:10DF500000000000000000000000000000000000C1 +:10DF600000000000000000000000000000000000B1 +:10DF700000000000D796020818970208494F454D47 +:10DF80005F577269746553696E676C6552656700A7 +:10DF90000000000000000000000000000000000081 +:10DFA0000000000000000000000000000000000071 +:10DFB00000000000000000000000000019970208A7 +:10DFC0003C970208494F454D5F5772697465526529 +:10DFD00067000000000000000000000000000000DA +:10DFE0000000000000000000000000000000000031 +:10DFF0000000000000000000000000000000000021 +:10E00000000000003D9702086C970208494F454DFB +:10E010005F52656164526567000000000000000007 +:10E0200000000000000000000000000000000000F0 +:10E0300000000000000000000000000000000000E0 +:10E040000000000000000000000000006D970208C2 +:10E050008A970208494F454D5F5072696E74660099 +:10E0600000000000000000000000000000000000B0 +:10E0700000000000000000000000000000000000A0 +:10E080000000000000000000000000000000000090 +:10E09000000000008B97020892970208494F454DF7 +:10E0A0005F44656C61794D73000000000000000062 +:10E0B0000000000000000000000000000000000060 +:10E0C0000000000000000000000000000000000050 +:10E0D000000000000000000000000000939702080C +:10E0E000A49702085F5F6961725F756E616C696712 +:10E0F0006E65645F6D656D636D700000000000000B +:10E10000000000000000000000000000000000000F +:10E1100000000000000000000000000000000000FF +:10E1200000000000A5970208089802084E6F4D6F86 +:10E130007665496E6974697469616C697A65000015 +:10E1400000000000000000000000000000000000CF +:10E1500000000000000000000000000000000000BF +:10E160000000000000000000000000000998020804 +:10E17000709802084E6F4D6F766546696E616C69E6 +:10E180007A650000000000000000000000000000B0 +:10E19000000000000000000000000000000000007F +:10E1A000000000000000000000000000000000006F +:10E1B0000000000071980208749802084E6F4D6FBD +:10E1C0007665446574656374696F6E0000000000D5 +:10E1D000000000000000000000000000000000003F +:10E1E000000000000000000000000000000000002F +:10E1F0000000000000000000000000007598020808 +:10E20000349C0208476574566172526573756C746C +:10E2100000000000000000000000000000000000FE +:10E2200000000000000000000000000000000000EE +:10E2300000000000000000000000000000000000DE +:10E2400000000000359C0208F89C0208696E765FA9 +:10E2500073746F72655F67616D696E675F71756119 +:10E260007465726E696F6E000000000000000000AF +:10E27000000000000000000000000000000000009E +:10E28000000000000000000000000000F99C0208EF +:10E29000209D0208696E765F7365745F636F6D70B1 +:10E2A0006173735F636F7272656374696F6E000090 +:10E2B000000000000000000000000000000000005E +:10E2C000000000000000000000000000000000004E +:10E2D00000000000219D0208489D0208696E765FDB +:10E2E0006765745F6D6F74696F6E5F737461746579 +:10E2F000000000000000000000000000000000001E +:10E30000000000000000000000000000000000000D +:10E31000000000000000000000000000499D02080D +:10E32000589D0208696E765F7365745F6D6F7469DE +:10E330006F6E5F7374617465000000000000000080 +:10E3400000000000000000000000000000000000CD +:10E3500000000000000000000000000000000000BD +:10E3600000000000599D0208949D0208696E765FC6 +:10E370006765745F677261766974790000000000F8 +:10E38000000000000000000000000000000000008D +:10E39000000000000000000000000000000000007D +:10E3A000000000000000000000000000959D020831 +:10E3B000E49D0208696E765F6765745F366178690F +:10E3C000735F7175617465726E696F6E0000000035 +:10E3D000000000000000000000000000000000003D +:10E3E000000000000000000000000000000000002D +:10E3F00000000000E59D0208F29D0208696E765F4C +:10E400006765745F7175617465726E696F6E000027 +:10E4100000000000000000000000000000000000FC +:10E4200000000000000000000000000000000000EC +:10E43000000000000000000000000000F39D020842 +:10E440002A9E0208696E765F6765745F71756174F4 +:10E4500065726E696F6E5F73657400000000000086 +:10E4600000000000000000000000000000000000AC +:10E47000000000000000000000000000000000009C +:10E48000000000002B9E0208729E0208696E765FF3 +:10E4900067656E65726174655F726573756C7473C0 +:10E4A000000000000000000000000000000000006C +:10E4B000000000000000000000000000000000005C +:10E4C000000000000000000000000000739E020831 +:10E4D0007C9E0208696E765F73746172745F726508 +:10E4E00073756C74735F686F6C6465720000000014 +:10E4F000000000000000000000000000000000001C +:10E50000000000000000000000000000000000000B +:10E51000000000007D9E02088E9E0208696E765FF4 +:10E52000696E69745F726573756C74735F686F6C24 +:10E5300064657200000000000000000000000000A0 +:10E5400000000000000000000000000000000000CB +:10E550000000000000000000000000008F9E020884 +:10E56000BE9E0208696E765F656E61626C655F7261 +:10E570006573756C74735F686F6C6465720000001E +:10E58000000000000000000000000000000000008B +:10E59000000000000000000000000000000000007B +:10E5A00000000000BF9E0208D49E0208696E765FDC +:10E5B0007365745F616363656C5F626961735F66F5 +:10E5C0006F756E6400000000000000000000000095 +:10E5D000000000000000000000000000000000003B +:10E5E000000000000000000000000000D59E0208AE +:10E5F000DC9E0208696E765F7365745F636F6D7091 +:10E600006173735F626961735F666F756E6400004A +:10E6100000000000000000000000000000000000FA +:10E6200000000000000000000000000000000000EA +:10E6300000000000DD9E0208E49E0208696E765F1D +:10E640006765745F6C696E6561725F616363656C59 +:10E6500000000000000000000000000000000000BA +:10E6600000000000000000000000000000000000AA +:10E67000000000000000000000000000E59E02080D +:10E68000249F0208696E765F6765745F68656164E0 +:10E69000696E675F636F6E666964656E63655F6907 +:10E6A0006E74657276616C0000000000000000006E +:10E6B000000000000000000000000000000000005A +:10E6C00000000000259F0208409F0208696E765FE7 +:10E6D0006765745F6C696E6561725F616363656CC9 +:10E6E0005F666C6F617400000000000000000000B5 +:10E6F000000000000000000000000000000000001A +:10E70000000000000000000000000000419F02081F +:10E710007C9F0208696E765F696E69745F73746FBF +:10E72000726167655F6D616E616765720000000010 +:10E7300000000000000000000000000000000000D9 +:10E7400000000000000000000000000000000000C9 +:10E75000000000007D9F0208929F0208696E765FAC +:10E7600072656769737465725F6C6F61645F7374FF +:10E770006F72650000000000000000000000000053 +:10E780000000000000000000000000000000000089 +:10E79000000000000000000000000000939F02083D +:10E7A000FC9F0208696E765F7365745F6D657373B5 +:10E7B000616765000000000000000000000000002C +:10E7C0000000000000000000000000000000000049 +:10E7D0000000000000000000000000000000000039 +:10E7E00000000000FD9F02080EA00208696E765F1F +:10E7F0006765745F6D6573736167655F6C6576658A +:10E800006C5F30000000000000000000000000000D +:10E8100000000000000000000000000000000000F8 +:10E820000000000000000000000000000FA002082F +:10E8300024A00208696E765F696E69745F73746103 +:10E8400072745F6D616E61676572000000000000A8 +:10E8500000000000000000000000000000000000B8 +:10E8600000000000000000000000000000000000A8 +:10E870000000000025A0020834A00208696E765F3F +:10E8800072656769737465725F6D706C5F737461D4 +:10E8900072745F6E6F74696669636174696F6E002C +:10E8A0000000000000000000000000000000000068 +:10E8B00000000000000000000000000035A0020879 +:10E8C00050A00208696E765F657865637574655F50 +:10E8D0006D706C5F73746172745F6E6F746966697A +:10E8E000636174696F6E00000000000000000000AA +:10E8F0000000000000000000000000000000000018 +:10E900000000000051A002087CA002085F5F616562 +:10E910006162695F64326C7A0000000000000000F0 +:10E9200000000000000000000000000000000000E7 +:10E9300000000000000000000000000000000000D7 +:10E940000000000000000000000000007DA00208A0 +:10E95000A8A002085F5F6961725F6432756C7A001B +:10E9600000000000000000000000000000000000A7 +:10E970000000000000000000000000000000000097 +:10E980000000000000000000000000000000000087 +:10E9900000000000A9A00208F8A002085F5F6165FE +:10E9A0006162695F6C61737200000000000000002A +:10E9B0000000000000000000000000000000000057 +:10E9C0000000000000000000000000000000000047 +:10E9D000000000000000000000000000F9A0020894 +:10E9E0001CA102085F7371727466000000000000D1 +:10E9F0000000000000000000000000000000000017 +:10EA00000000000000000000000000000000000006 +:10EA100000000000000000000000000000000000F6 +:10EA2000000000001DA102081DA10208737172748C +:10EA30006600000000000000000000000000000070 +:10EA400000000000000000000000000000000000C6 +:10EA500000000000000000000000000000000000B6 +:10EA60000000000000000000000000001DA10208DE +:10EA700038A102085F5F61656162695F6C326600A0 +:10EA80000000000000000000000000000000000086 +:10EA90000000000000000000000000000000000076 +:10EAA0000000000000000000000000000000000066 +:10EAB0000000000039A1020854A102085F5F6165EF +:10EAC0006162695F756C3266000000000000000042 +:10EAD0000000000000000000000000000000000036 +:10EAE0000000000000000000000000000000000026 +:10EAF00000000000000000000000000055A1020816 +:10EB000060A102085F5F6961725F756C3266000028 +:10EB100000000000000000000000000000000000F5 +:10EB200000000000000000000000000000000000E5 +:10EB300000000000000000000000000000000000D5 +:10EB40000000000061A102089CA102085F5F6165EE +:10EB50006162695F66326C7A0000000000000000AC +:10EB600000000000000000000000000000000000A5 +:10EB70000000000000000000000000000000000095 +:10EB80000000000000000000000000009DA102083D +:10EB900014A20208696E765F6D61675F64697374C1 +:10EBA0007572625F6765745F6465746563745F73D3 +:10EBB0007461747573000000000000000000000024 +:10EBC0000000000000000000000000000000000045 +:10EBD0000000000015A202082EA20208696E765FEE +:10EBE0006D61675F646973747572625F6765745F96 +:10EBF00064726F705F68656164696E675F616363AB +:10EC000075726163795F73746174757300000000DD +:10EC10000000000000000000000000002FA2020819 +:10EC200034A20208696E765F6D61675F6469737410 +:10EC30007572625F6765745F766563746F725F7229 +:10EC400061646975730000000000000000000000AE +:10EC500000000000000000000000000000000000B4 +:10EC60000000000035A2020840A20208696E765F2B +:10EC70006765745F6D61676E657469635F6469730E +:10EC800074757262616E63655F73746174650000B0 +:10EC90000000000000000000000000000000000074 +:10ECA00000000000000000000000000041A2020877 +:10ECB00050A20208636F73660000000000000000AD +:10ECC0000000000000000000000000000000000044 +:10ECD0000000000000000000000000000000000034 +:10ECE0000000000000000000000000000000000024 +:10ECF0000000000051A2020856A2020873696E6665 +:10ED00000000000000000000000000000000000003 +:10ED100000000000000000000000000000000000F3 +:10ED200000000000000000000000000000000000E3 +:10ED300000000000000000000000000057A20208D0 +:10ED40005CA202086174616E32660000000000007F +:10ED500000000000000000000000000000000000B3 +:10ED600000000000000000000000000000000000A3 +:10ED70000000000000000000000000000000000093 +:10ED8000000000005DA202085DA202085F617461DC +:10ED90006E3266000000000000000000000000006D +:10EDA0000000000000000000000000000000000063 +:10EDB0000000000000000000000000000000000053 +:10EDC0000000000000000000000000005DA202083A +:10EDD000CCA202086173696E6600000000000000AA +:10EDE0000000000000000000000000000000000023 +:10EDF0000000000000000000000000000000000013 +:10EE00000000000000000000000000000000000002 +:10EE100000000000CDA20208CDA202085F61736964 +:10EE20006E6600000000000000000000000000000E +:10EE300000000000000000000000000000000000D2 +:10EE400000000000000000000000000000000000C2 +:10EE5000000000000000000000000000CDA2020839 +:10EE60002CA302086D656D6D6F76650000000000D3 +:10EE70000000000000000000000000000000000092 +:10EE80000000000000000000000000000000000082 +:10EE90000000000000000000000000000000000072 +:10EEA000000000002DA3020838A30208696E765FF7 +:10EEB000636F6D62696E655F636F6D706173735FC1 +:10EEC00064617461000000000000000000000000A8 +:10EED0000000000000000000000000000000000032 +:10EEE00000000000000000000000000039A302083C +:10EEF00076A40208696E765F7365745F7465726DDF +:10EF0000730000000000000000000000000000008E +:10EF100000000000000000000000000000000000F1 +:10EF200000000000000000000000000000000000E1 +:10EF30000000000077A402084CA70208696E765F03 +:10EF4000636F6D707574655F6269617300000000C6 +:10EF500000000000000000000000000000000000B1 +:10EF600000000000000000000000000000000000A1 +:10EF70000000000000000000000000004DA7020893 +:10EF800068AE02085F5F6961725F7666705F636F8B +:10EF900073000000000000000000000000000000FE +:10EFA0000000000000000000000000000000000061 +:10EFB0000000000000000000000000000000000051 +:10EFC0000000000069AE02087CAE02085F5F696164 +:10EFD000725F4653696E00000000000000000000F0 +:10EFE0000000000000000000000000000000000021 +:10EFF0000000000000000000000000000000000011 +:10F000000000000000000000000000007DAE0208CB +:10F01000E8AF02085F5F6961725F786174616E6674 +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000E9AF02088CB002085F5F696140 +:10F06000725F756E616C69676E65645F5F5F616535 +:10F070006162695F6D656D6D6F766500000000000F +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000008DB0020829 +:10F0A0008DB002085F5F6961725F756E616C696740 +:10F0B0006E65645F5F5F61656162695F6D656D6DFF +:10F0C0006F766538000000000000000000000000BE +:10F0D0000000000000000000000000000000000030 +:10F0E000000000008DB002088DB002085F5F69610A +:10F0F000725F756E616C69676E65645F5F5F6165A5 +:10F100006162695F6D656D6D6F766534000000004A +:10F1100000000000000000000000000000000000EF +:10F120000000000000000000000000008DB0020898 +:10F1300004B102085F5F6961725F53696E0000008D +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F170000000000005B102085CB502085F5F69612C +:10F18000725F4651756164000000000000000000DD +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B0000000000000000000000000005DB5020833 +:10F1C00048B602085F5F6961725F51756164000053 +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F200000000000049B60208B0B702085F5F6961FC +:10F21000725F4644696E7400000000000000000048 +:10F2200000000000000000000000000000000000DE +:10F2300000000000000000000000000000000000CE +:10F24000000000000000000000000000B1B702084C +:10F2500000B802085F5F6961725F7666705F666D15 +:10F260006F64660000000000000000000000000065 +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F290000000000001B8020808B80208666D6F643B +:10F2A00066000000000000000000000000000000F8 +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D00000000000000000000000000009B8020863 +:10F2E0003CB902085F5F6961725F44696E74000037 +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000000000FD +:10F3100000000000000000000000000000000000ED +:10F32000000000003DB90208BCB90208666D6F64B8 +:10F330006C00000000000000000000000000000061 +:10F3400000000000000000000000000000000000BD +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000BDB902081D +:10F37000BDB902085F5F6961725F666D6F646C00A2 +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B00000000000BDB90208BDB90208666D6F64A7 +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E000000000000000000000000000000000001D +:10F3F000000000000000000000000000BDB902088D +:10F40000BDB902085F5F6961725F666D6F6400007D +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000BDB9020864BB02084E564943E3 +:10F450005F53797374656D526573657400000000C5 +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F4800000000000000000000000000065BB020852 +:10F4900080BB02084E4D495F48616E646C65720026 +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D0000000000081BB020894BB0208486172640E +:10F4E0004661756C745F48616E646C657200000003 +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000000000000FB +:10F5100000000000000000000000000095BB020891 +:10F52000A8BB02084D656D4D616E6167655F4861FE +:10F530006E646C65720000000000000000000000B6 +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F5600000000000A9BB0208BCBB0208427573463C +:10F5700061756C745F48616E646C657200000000B8 +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000BDBB0208D9 +:10F5B000D0BB020855736167654661756C745F481E +:10F5C000616E646C657200000000000000000000C5 +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000000000000000001B +:10F5F00000000000D1BB0208E4BB02085356435F81 +:10F6000048616E646C65720000000000000000003C +:10F6100000000000000000000000000000000000EA +:10F6200000000000000000000000000000000000DA +:10F63000000000000000000000000000E5BB020820 +:10F64000F8BB020844656275674D6F6E5F48616E76 +:10F65000646C657200000000000000000000000003 +:10F66000000000000000000000000000000000009A +:10F67000000000000000000000000000000000008A +:10F6800000000000F9BB02080CBC02084372617361 +:10F69000685F44756D705F68616E646C65725F630E +:10F6A000000000000000000000000000000000005A +:10F6B000000000000000000000000000000000004A +:10F6C0000000000000000000000000000DBC020867 +:10F6D00010BC0208535049315F49525148616E6471 +:10F6E0006C657200000000000000000000000000D7 +:10F6F000000000000000000000000000000000000A +:10F7000000000000000000000000000000000000F9 +:10F710000000000011BC020812BC020853485F53ED +:10F72000656E736F72436F6D5461736B0000000000 +:10F7300000000000000000000000000000000000C9 +:10F7400000000000000000000000000000000000B9 +:10F7500000000000000000000000000013BC0208D0 +:10F7600050BE020845585449305F49525148616EB5 +:10F77000646C6572000000000000000000000000E2 +:10F780000000000000000000000000000000000079 +:10F790000000000000000000000000000000000069 +:10F7A0000000000051BE0208E0BF0208455854495D +:10F7B000315F49525148616E646C6572000000000F +:10F7C0000000000000000000000000000000000039 +:10F7D0000000000000000000000000000000000029 +:10F7E000000000000000000000000000E1BF02086F +:10F7F0006CC0020845585449325F49525148616E05 +:10F80000646C657200000000000000000000000051 +:10F8100000000000000000000000000000000000E8 +:10F8200000000000000000000000000000000000D8 +:10F83000000000006DC002080AC102084558544982 +:10F8400031355F31305F49525148616E646C657289 +:10F8500000000000000000000000000000000000A8 +:10F860000000000000000000000000000000000098 +:10F870000000000000000000000000000BC10208B2 +:10F880009EC102085254435F574B55505F49525135 +:10F8900048616E646C6572000000000000000000AA +:10F8A0000000000000000000000000000000000058 +:10F8B0000000000000000000000000000000000048 +:10F8C000000000009FC102085EC202085254435F5C +:10F8D000416C61726D5F49525148616E646C657232 +:10F8E0000000000000000000000000000000000018 +:10F8F0000000000000000000000000000000000008 +:10F900000000000000000000000000005FC20208CC +:10F91000FAC202085243435F49525148616E646C17 +:10F920006572000000000000000000000000000000 +:10F9300000000000000000000000000000000000C7 +:10F9400000000000000000000000000000000000B7 +:10F9500000000000FBC202089CC402084F535F472E +:10F9600065744D61696C000000000000000000003B +:10F970000000000000000000000000000000000087 +:10F980000000000000000000000000000000000077 +:10F990000000000000000000000000009DC40208FC +:10F9A000F8C40208707265706172655F74785F6494 +:10F9B0006D61000000000000000000000000000079 +:10F9C0000000000000000000000000000000000037 +:10F9D0000000000000000000000000000000000027 +:10F9E00000000000F9C4020840C50208707265708A +:10F9F0006172655F72785F646D61000000000000F5 +:10FA000000000000000000000000000000000000F6 +:10FA100000000000000000000000000000000000E6 +:10FA200000000000000000000000000041C50208C6 +:10FA300088C502084F535F5075744D61696C436F00 +:10FA40006E640000000000000000000000000000E4 +:10FA500000000000000000000000000000000000A6 +:10FA60000000000000000000000000000000000096 +:10FA70000000000089C50208ECC502085374616EDD +:10FA8000644C616E6473636170655F496E69740094 +:10FA90000000000000000000000000000000000066 +:10FAA0000000000000000000000000000000000056 +:10FAB000000000000000000000000000EDC502088A +:10FAC0002CC60208496E697456617200000000007D +:10FAD0000000000000000000000000000000000026 +:10FAE0000000000000000000000000000000000016 +:10FAF0000000000000000000000000000000000006 +:10FB0000000000002DC6020880C602084368656335 +:10FB10006B496E5F5374616E644C616E64736361B4 +:10FB20007065000000000000000000000000000000 +:10FB300000000000000000000000000000000000C5 +:10FB400000000000000000000000000081C6020864 +:10FB500024C90208436865636B4F75745F53746111 +:10FB60006E644C616E647363617065000000000038 +:10FB70000000000000000000000000000000000085 +:10FB80000000000000000000000000000000000075 +:10FB90000000000025C9020810CB02084465746506 +:10FBA00063744779726F4D6F7665546F4C616E6404 +:10FBB0007363617065000000000000000000000039 +:10FBC0000000000000000000000000000000000035 +:10FBD00000000000000000000000000011CB02083F +:10FBE00024CC02084465746563744779726F53745A +:10FBF0006F70000000000000000000000000000026 +:10FC000000000000000000000000000000000000F4 +:10FC100000000000000000000000000000000000E4 +:10FC20000000000025CC0208CCCC0208534C5F53E6 +:10FC3000746F636B416E676C6544617461000000B2 +:10FC400000000000000000000000000000000000B4 +:10FC500000000000000000000000000000000000A4 +:10FC6000000000000000000000000000CDCC0208F1 +:10FC7000FECC0208534C5F53746F636B4163634463 +:10FC8000617461000000000000000000000000003E +:10FC90000000000000000000000000000000000064 +:10FCA0000000000000000000000000000000000054 +:10FCB00000000000FFCC020832CD0208534C5F5315 +:10FCC000746F636B4779726F446174610000000068 +:10FCD0000000000000000000000000000000000024 +:10FCE0000000000000000000000000000000000014 +:10FCF00000000000000000000000000033CD0208FA +:10FD000060CD02084765745661725F5374616E641A +:10FD10004C616E6473636170655F416363000000F2 +:10FD200000000000000000000000000000000000D3 +:10FD300000000000000000000000000000000000C3 +:10FD40000000000061CD0208E0CD02084465746542 +:10FD50006374537461626C65537461746500000070 +:10FD60000000000000000000000000000000000093 +:10FD70000000000000000000000000000000000083 +:10FD8000000000000000000000000000E1CD0208BB +:10FD9000A4CE02086173696E00000000000000003C +:10FDA0000000000000000000000000000000000053 +:10FDB0000000000000000000000000000000000043 +:10FDC0000000000000000000000000000000000033 +:10FDD00000000000A5CE0208C4CF02085F5F696181 +:10FDE000725F7666705F6173696E000000000000EC +:10FDF0000000000000000000000000000000000003 +:10FE000000000000000000000000000000000000F2 +:10FE1000000000000000000000000000C5CF020844 +:10FE2000D4CF02086174616E32000000000000004F +:10FE300000000000000000000000000000000000C2 +:10FE400000000000000000000000000000000000B2 +:10FE500000000000000000000000000000000000A2 +:10FE600000000000D5CF0208B4D002085F5F6961CE +:10FE7000725F7666705F6174616E32000000000030 +:10FE80000000000000000000000000000000000072 +:10FE90000000000000000000000000000000000062 +:10FEA000000000000000000000000000B5D00208C3 +:10FEB000C8D002085F5F6961725F4174616E0000C3 +:10FEC0000000000000000000000000000000000032 +:10FED0000000000000000000000000000000000022 +:10FEE0000000000000000000000000000000000012 +:10FEF00000000000C9D00208B8D202085F5F696143 +:10FF0000725F44746573740000000000000000001C +:10FF100000000000000000000000000000000000E1 +:10FF200000000000000000000000000000000000D1 +:10FF3000000000000000000000000000B9D202082C +:10FF4000F8D2020841525F496E6974000000000057 +:10FF500000000000000000000000000000000000A1 +:10FF60000000000000000000000000000000000091 +:10FF70000000000000000000000000000000000081 +:10FF800000000000F9D2020830D3020841525F534A +:10FF9000656E736F724368616E6765640000000090 +:10FFA0000000000000000000000000000000000051 +:10FFB0000000000000000000000000000000000041 +:10FFC00000000000000000000000000031D3020823 +:10FFD00038D60208697354696C74416E676C654168 +:10FFE000636365707461626C65000000000000006E +:10FFF0000000000000000000000000000000000001 +:020000025000AC +:1000000000000000000000000000000000000000F0 +:100010000000000039D6020842D6020869734F7208 +:1000200069656E746174696F6E416E676C6541637A +:100030006365707461626C65000000000000000080 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000043D602087D +:10006000D4D60208697350726F706F73616C4F72EF +:1000700069656E746174696F6E416E676C6541632A +:100080006365707461626C65000000000000000030 +:100090000000000000000000000000000000000060 +:1000A00000000000D5D60208EED70208636C656137 +:1000B0007250726F706F73616C000000000000007E +:1000C0000000000000000000000000000000000030 +:1000D0000000000000000000000000000000000020 +:1000E000000000000000000000000000EFD7020840 +:1000F000F6D7020841525F53746F636B44617461B9 +:1001000000000000000000000000000000000000EF +:1001100000000000000000000000000000000000DF +:1001200000000000000000000000000000000000CF +:1001300000000000F7D7020820D8020841525F47AC +:1001400065745661720000000000000000000000AD +:10015000000000000000000000000000000000009F +:10016000000000000000000000000000000000008F +:1001700000000000000000000000000021D802087C +:1001800098D8020841525F47657453756D000000AE +:10019000000000000000000000000000000000005F +:1001A000000000000000000000000000000000004F +:1001B000000000000000000000000000000000003F +:1001C0000000000099D8020864D902085F5F6961E5 +:1001D000725F7666705F726F756E6400000000007B +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000000000000FF +:1002000000000000000000000000000065D90208A6 +:10021000B0D90208496E69745368616B654578000E +:1002200000000000000000000000000000000000CE +:1002300000000000000000000000000000000000BE +:1002400000000000000000000000000000000000AE +:1002500000000000B1D9020874DB020846696E6133 +:100260006C5368616B650000000000000000000036 +:10027000000000000000000000000000000000007E +:10028000000000000000000000000000000000006E +:1002900000000000000000000000000075DB020804 +:1002A000ACDB02084465746563745368616B650078 +:1002B000000000000000000000000000000000003E +:1002C000000000000000000000000000000000002E +:1002D000000000000000000000000000000000001E +:1002E00000000000ADDB0208B0DF020853485F4C9D +:1002F0004D5F54656D706C6174655F5374617274A9 +:100300005F5374616E644C616E6473636170650009 +:1003100000000000000000000000000000000000DD +:10032000000000000000000000000000B1DF020833 +:100330002CE0020853485F4C4D5F54656D706C6152 +:1003400074655F53746F705F5374616E644C616E5B +:10035000647363617065000000000000000000002D +:10036000000000000000000000000000000000008D +:10037000000000002DE00208C2E0020853485F4C74 +:100380004D5F54656D706C6174655F50726F63652D +:1003900073735F5374616E644C616E6473636170F8 +:1003A00065000000000000000000000000000000E8 +:1003B000000000000000000000000000C3E0020890 +:1003C0000AE3020853485F4C4D5F54656D706C61E1 +:1003D00074655F4D6574686F64496E697469616CBA +:1003E000697A655F5374616E644C616E64736361B6 +:1003F0007065000000000000000000000000000028 +:10040000000000000BE302083CE3020853485F4C85 +:100410004D5F436865636B5374616E644C616E64D9 +:1004200073636170654275660000000000000000A3 +:1004300000000000000000000000000000000000BC +:100440000000000000000000000000003DE3020882 +:100450004EE3020853485F4C4D5F5570646174650C +:100460005374616E644C616E647363617065446162 +:1004700074610000000000000000000000000000A7 +:10048000000000000000000000000000000000006C +:10049000000000004FE3020860E3020853485F4C8D +:1004A0004D5F4765745374616E644C616E64736331 +:1004B0006170655265636F676E697A6564000000FC +:1004C000000000000000000000000000000000002C +:1004D00000000000000000000000000061E30208CE +:1004E00068E3020853485F4C4D5F53657453746171 +:1004F0006E644C616E6473636170655265636F67AF +:100500006E697A65640000000000000000000000D1 +:1005100000000000000000000000000000000000DB +:100520000000000069E3020870E3020853485F4CD2 +:100530004D5F5374616E644C616E6473636170658A +:100540005F417070656E644C6962726172794D537F +:100550004700000000000000000000000000000054 +:1005600000000000000000000000000071E302082D +:1005700014E4020853485F4C4D5F54656D706C6124 +:1005800074655F53746172745F446F75626C655417 +:10059000617000000000000000000000000000008A +:1005A000000000000000000000000000000000004B +:1005B0000000000015E402083EE4020853485F4CC6 +:1005C0004D5F54656D706C6174655F53746F705FDF +:1005D000446F75626C65546170000000000000009B +:1005E000000000000000000000000000000000000B +:1005F0000000000000000000000000003FE40208CE +:100600005EE4020853485F4C4D5F54656D706C6149 +:1006100074655F50726F636573735F446F75626C6E +:100620006554617000000000000000000000000040 +:1006300000000000000000000000000000000000BA +:10064000000000005FE40208A4E4020853485F4C85 +:100650004D5F54656D706C6174655F4D6574686F56 +:1006600064496E697469616C697A655F446F75622B +:100670006C65546170000000000000000000000084 +:10068000000000000000000000000000A5E40208D7 +:10069000D0E4020853485F4C4D5F436865636B4488 +:1006A0006F75626C655461704275660000000000F1 +:1006B000000000000000000000000000000000003A +:1006C000000000000000000000000000000000002A +:1006D00000000000D1E40208E2E4020853485F4C45 +:1006E0004D5F557064617465446F75626C655461EB +:1006F0007044617461000000000000000000000010 +:1007000000000000000000000000000000000000E9 +:10071000000000000000000000000000E3E4020808 +:10072000F4E4020853485F4C4D5F476574446F75AD +:10073000626C655461705265636F676E697A656457 +:1007400000000000000000000000000000000000A9 +:100750000000000000000000000000000000000099 +:1007600000000000F5E40208FCE4020853485F4C76 +:100770004D5F536574446F75626C6554617052656A +:10078000636F676E697A6564000000000000000016 +:100790000000000000000000000000000000000059 +:1007A000000000000000000000000000FDE402085E +:1007B00002E5020853485F4C4D5F476574446F750E +:1007C000626C655461705F496E7465726E616C4DE8 +:1007D0006F646500000000000000000000000000E1 +:1007E0000000000000000000000000000000000009 +:1007F0000000000003E502080AE5020853485F4CC8 +:100800004D5F5265736574446F75626C65546170B9 +:100810005F496E7465726E616C4D6F6465000000B7 +:1008200000000000000000000000000000000000C8 +:100830000000000000000000000000000BE50208BE +:1008400014E5020853485F4C4D5F446F75626C6558 +:100850005461705F417070656E644C696272617260 +:10086000794D534700000000000000000000000028 +:100870000000000000000000000000000000000078 +:100880000000000015E502087CE50208446F75626F +:100890006C655461705F496E69740000000000006F +:1008A0000000000000000000000000000000000048 +:1008B0000000000000000000000000000000000038 +:1008C0000000000000000000000000007DE50208BC +:1008D000C8E502086465746563745F446F75626C93 +:1008E000655461700000000000000000000000007E +:1008F00000000000000000000000000000000000F8 +:1009000000000000000000000000000000000000E7 +:1009100000000000C9E50208C0E902085543477914 +:10092000726F5F496E6974000000000000000000F3 +:1009300000000000000000000000000000000000B7 +:1009400000000000000000000000000000000000A7 +:10095000000000000000000000000000C1E90208E3 +:100960001CEA020844657465637455434779726FE5 +:100970005F42696173000000000000000000000099 +:100980000000000000000000000000000000000067 +:100990000000000000000000000000000000000057 +:1009A000000000001DEA02081EEC020855434779CA +:1009B000726F5F53746F636B446174610000000079 +:1009C0000000000000000000000000000000000027 +:1009D0000000000000000000000000000000000017 +:1009E0000000000000000000000000001FEC0208F2 +:1009F00048EC020855434779726F5F47657456614A +:100A00007200000000000000000000000000000074 +:100A100000000000000000000000000000000000D6 +:100A200000000000000000000000000000000000C6 +:100A30000000000049EC0208C0EC02085543477969 +:100A4000726F5F47657453756D0000000000000011 +:100A50000000000000000000000000000000000096 +:100A60000000000000000000000000000000000086 +:100A7000000000000000000000000000C1EC0208BF +:100A80000CED020855434779726F5F4D61780000A5 +:100A90000000000000000000000000000000000056 +:100AA0000000000000000000000000000000000046 +:100AB0000000000000000000000000000000000036 +:100AC000000000000DED020856ED0208554347797D +:100AD000726F5F4D696E00000000000000000000B2 +:100AE0000000000000000000000000000000000006 +:100AF00000000000000000000000000000000000F6 +:100B000000000000000000000000000057ED020897 +:100B1000A0ED02086D696E000000000000000000FA +:100B200000000000000000000000000000000000C5 +:100B300000000000000000000000000000000000B5 +:100B400000000000000000000000000000000000A5 +:100B500000000000A1ED0208B0ED02086D61780010 +:100B60000000000000000000000000000000000085 +:100B70000000000000000000000000000000000075 +:100B80000000000000000000000000000000000065 +:100B9000000000000000000000000000B1ED0208AD +:100BA000C0ED020852504D6F74696F6E5F496E69F7 +:100BB00074000000000000000000000000000000C1 +:100BC0000000000000000000000000000000000025 +:100BD0000000000000000000000000000000000015 +:100BE00000000000C1ED0208ECED020844657465E8 +:100BF000637452504D6F74696F6E00000000000006 +:100C000000000000000000000000000000000000E4 +:100C100000000000000000000000000000000000D4 +:100C2000000000000000000000000000EDED0208E0 +:100C30004CF102085350416C6572745F496E6974DF +:100C400000000000000000000000000000000000A4 +:100C50000000000000000000000000000000000094 +:100C60000000000000000000000000000000000084 +:100C7000000000004DF10208CCF102085350416C15 +:100C80006572745F646574656374696F6E000000FB +:100C90000000000000000000000000000000000054 +:100CA0000000000000000000000000000000000044 +:100CB000000000000000000000000000CDF102086C +:100CC000F0F202085350416C6572745F53746F63A5 +:100CD0006B4461746100000000000000000000002F +:100CE0000000000000000000000000000000000004 +:100CF00000000000000000000000000000000000F4 +:100D000000000000F1F2020818F302085350416C91 +:100D10006572745F476574566172000000000000E0 +:100D200000000000000000000000000000000000C3 +:100D300000000000000000000000000000000000B3 +:100D400000000000000000000000000019F302088D +:100D500090F302085350416C6572745F4765745399 +:100D6000756D0000000000000000000000000000A1 +:100D70000000000000000000000000000000000073 +:100D80000000000000000000000000000000000063 +:100D90000000000091F30208F4F3020853485F4C8E +:100DA0004D5F54656D706C6174655F5374617274EE +:100DB0005F43616C63466C6970436F7665720000D7 +:100DC0000000000000000000000000000000000023 +:100DD000000000000000000000000000F5F3020821 +:100DE0002AF4020853485F4C4D5F54656D706C6186 +:100DF00074655F53746F705F43616C63466C6970B8 +:100E0000436F7665720000000000000000000000E3 +:100E100000000000000000000000000000000000D2 +:100E2000000000002BF4020870F4020853485F4CE5 +:100E30004D5F54656D706C6174655F50726F636572 +:100E400073735F43616C63466C6970436F76657260 +:100E50000000000000000000000000000000000092 +:100E600000000000000000000000000071F4020813 +:100E7000F0F4020853485F4C4D5F50726F63657326 +:100E800073496E49646C6553746174757300000036 +:100E90000000000000000000000000000000000052 +:100EA0000000000000000000000000000000000042 +:100EB00000000000F1F4020854F5020853485F4CAA +:100EC0004D5F50726F63657373496E436F766572E1 +:100ED000696E675374617475730000000000000050 +:100EE0000000000000000000000000000000000002 +:100EF00000000000000000000000000055F502089E +:100F000098F5020853485F4C4D5F54656D706C61F5 +:100F100074655F4D6574686F64496E697469616C6E +:100F2000697A655F43616C63466C6970436F76658F +:100F3000720000000000000000000000000000003F +:100F40000000000099F50208D8F5020853485F4CEC +:100F50004D5F436865636B43616C63466C697043C6 +:100F60006F766572427566000000000000000000A8 +:100F70000000000000000000000000000000000071 +:100F8000000000000000000000000000D9F5020889 +:100F9000F0F5020853485F4C4D5F53657445766524 +:100FA0006E745479706500000000000000000000BD +:100FB0000000000000000000000000000000000031 +:100FC0000000000000000000000000000000000021 +:100FD00000000000F1F5020802F6020853485F4CD9 +:100FE0004D5F47657443616C63466C6970436F760F +:100FF00065725265636F676E697A65640000000010 +:1010000000000000000000000000000000000000E0 +:1010100000000000000000000000000003F60208CD +:101020000AF6020853485F4C4D5F53657443616C88 +:1010300063466C6970436F7665725265636F676E65 +:10104000697A6564000000000000000000000000F4 +:101050000000000000000000000000000000000090 +:10106000000000000BF6020860F6020853464D6FC0 +:1010700074696F6E5F496E697400000000000000C3 +:101080000000000000000000000000000000000060 +:101090000000000000000000000000000000000050 +:1010A00000000000000000000000000061F60208DF +:1010B00078F6020844657465637453464D6F74692D +:1010C0006F6E000000000000000000000000000043 +:1010D0000000000000000000000000000000000010 +:1010E0000000000000000000000000000000000000 +:1010F0000000000079F60208B0F802085075744448 +:101100006F776E5F496E6974000000000000000098 +:1011100000000000000000000000000000000000CF +:1011200000000000000000000000000000000000BF +:10113000000000000000000000000000B1F80208FC +:10114000BCF80208446574656374507574446F7725 +:101150006E00000000000000000000000000000021 +:10116000000000000000000000000000000000007F +:10117000000000000000000000000000000000006F +:1011800000000000BDF80208E8FA020853485F4971 +:101190006E69745F526F7574696E650000000000BF +:1011A000000000000000000000000000000000003F +:1011B000000000000000000000000000000000002F +:1011C000000000000000000000000000E9FA020832 +:1011D000B4FB0208534853797374656D496E6974A2 +:1011E00000000000000000000000000000000000FF +:1011F00000000000000000000000000000000000EF +:1012000000000000000000000000000000000000DE +:1012100000000000B5FB0208C0FB020853485F5005 +:101220006F7765724D616E616765725461736B00B3 +:1012300000000000000000000000000000000000AE +:10124000000000000000000000000000000000009E +:10125000000000000000000000000000C1FB0208C8 +:10126000CAFB020853485F53656E736F724D616924 +:101270006E5461736B00000000000000000000006D +:10128000000000000000000000000000000000005E +:10129000000000000000000000000000000000004E +:1012A00000000000CBFB02081CFD02084F535F4307 +:1012B00072656174654D420000000000000000008E +:1012C000000000000000000000000000000000001E +:1012D000000000000000000000000000000000000E +:1012E0000000000000000000000000001DFD0208DA +:1012F000B4FD020853485F50435F456E7465724CFD +:101300006F77506F7765724D6F6465000000000065 +:1013100000000000000000000000000000000000CD +:1013200000000000000000000000000000000000BD +:1013300000000000B5FD0208C8FD02084F535F57CA +:101340006169744576656E7400000000000000005D +:10135000000000000000000000000000000000008D +:10136000000000000000000000000000000000007D +:10137000000000000000000000000000C9FD02089D +:101380004CFE02084F535F4765744D61696C436FB3 +:101390006E6400000000000000000000000000007B +:1013A000000000000000000000000000000000003D +:1013B000000000000000000000000000000000002D +:1013C000000000004DFE0208ACFE0208414D5F49DE +:1013D0006E697469616C697A65436F7265000000BB +:1013E00000000000000000000000000000000000FD +:1013F00000000000000000000000000000000000ED +:10140000000000000000000000000000ADFE020827 +:10141000E8FE0208414D5F50726F63657373436F5E +:1014200072650000000000000000000000000000E5 +:1014300000000000000000000000000000000000AC +:10144000000000000000000000000000000000009C +:1014500000000000E9FE020890000308414D5F46CD +:10146000696E616C697A6541706472436F72650080 +:10147000000000000000000000000000000000006C +:10148000000000000000000000000000000000005C +:1014900000000000000000000000000091000308B0 +:1014A000DC00030853485F4C4D5F496E6974696105 +:1014B0006C697A6543617265476976657200000000 +:1014C000000000000000000000000000000000001C +:1014D000000000000000000000000000000000000C +:1014E00000000000DD000308F000030853485F4CD3 +:1014F0004D5F54656D706C6174655F537461727497 +:101500005F43617265476976657200000000000004 +:1015100000000000000000000000000000000000CB +:10152000000000000000000000000000F1000308BF +:101530004A01030853485F4C4D5F54656D706C6100 +:1015400074655F53746F705F436172654769766558 +:101550007200000000000000000000000000000019 +:10156000000000000000000000000000000000007B +:10157000000000004B0103086201030853485F4C60 +:101580004D5F54656D706C6174655F50726F63651B +:1015900073735F436172654769766572000000008E +:1015A000000000000000000000000000000000003B +:1015B00000000000000000000000000063010308BC +:1015C000A001030853485F4C4D5F54656D706C611A +:1015D00074655F4D6574686F64496E697469616CA8 +:1015E000697A655F436172654769766572000000DC +:1015F00000000000000000000000000000000000EB +:1016000000000000A1010308D801030853485F4C03 +:101610004D5F436865636B436172654769766572C8 +:10162000427566000000000000000000000000009D +:1016300000000000000000000000000000000000AA +:10164000000000000000000000000000D9010308B5 +:10165000F001030853485F4C4D5F47657443617266 +:101660006547697665725265636F676E697A65640E +:10167000000000000000000000000000000000006A +:10168000000000000000000000000000000000005A +:1016900000000000F1010308F801030853485F4C03 +:1016A0004D5F536574436172654769766572526533 +:1016B000636F676E697A65640000000000000000D7 +:1016C000000000000000000000000000000000001A +:1016D000000000000000000000000000F901030805 +:1016E000FE01030853485F4C4D5F5570646174659B +:1016F00043617265476976657244617461000000F8 +:1017000000000000000000000000000000000000D9 +:1017100000000000000000000000000000000000C9 +:1017200000000000FF0103081002030853485F4C4B +:101730004D5F4361726547697665725F41707065A0 +:101740006E644C6962726172794D5347000000000B +:101750000000000000000000000000000000000089 +:10176000000000000000000000000000110203085B +:10177000EC02030853485F4C4D5F54656D706C611B +:1017800074655F53746172745F5368616B650000C8 +:101790000000000000000000000000000000000049 +:1017A0000000000000000000000000000000000039 +:1017B00000000000ED020308A403030853485F4C37 +:1017C0004D5F54656D706C6174655F53746F705FCD +:1017D0005368616B6500000000000000000000001D +:1017E00000000000000000000000000000000000F9 +:1017F000000000000000000000000000A503030836 +:10180000F203030853485F4C4D5F54656D706C6183 +:1018100074655F50726F636573735F5368616B6566 +:1018200000000000000000000000000000000000B8 +:1018300000000000000000000000000000000000A8 +:1018400000000000F30303084404030853485F4CFE +:101850004D5F54656D706C6174655F4D6574686F44 +:1018600064496E697469616C697A655F5368616B1C +:101870006500000000000000000000000000000003 +:101880000000000000000000000000004504030804 +:101890007404030853485F4C4D5F436865636B53A2 +:1018A00068616B6542756600000000000000000082 +:1018B0000000000000000000000000000000000028 +:1018C0000000000000000000000000000000000018 +:1018D00000000000750403088604030853485F4CA9 +:1018E0004D5F5570646174655368616B65446174E4 +:1018F0006100000000000000000000000000000087 +:1019000000000000000000000000000000000000D7 +:101910000000000000000000000000008704030831 +:101920009804030853485F4C4D5F476574536861E2 +:101930006B655265636F676E697A656400000000CD +:101940000000000000000000000000000000000097 +:101950000000000000000000000000000000000087 +:101960000000000099040308A004030853485F4CDA +:101970004D5F5365745368616B655265636F676E45 +:10198000697A6564000000000000000000000000AB +:101990000000000000000000000000000000000047 +:1019A000000000000000000000000000A104030887 +:1019B000A804030853485F4C4D5F5368616B655F33 +:1019C000417070656E644C6962726172794D534703 +:1019D0000000000000000000000000000000000007 +:1019E00000000000000000000000000000000000F7 +:1019F00000000000A9040308F404030853485F4CE6 +:101A00004D5F54656D706C6174655F537461727481 +:101A10005F53746570436F756E74416C65727400CA +:101A200000000000000000000000000000000000B6 +:101A3000000000000000000000000000F5040308A2 +:101A40007805030853485F4C4D5F54656D706C61B9 +:101A500074655F53746F705F53746570436F756E18 +:101A600074416C657274000000000000000000000A +:101A70000000000000000000000000000000000066 +:101A800000000000790503089605030853485F4CE1 +:101A90004D5F54656D706C6174655F4D6574686F02 +:101AA00064496E697469616C697A655F53746570C5 +:101AB000436F756E74416C65727400000000000025 +:101AC000000000000000000000000000970503086F +:101AD000C405030853485F4C4D5F436865636B530F +:101AE000746570436F756E74416C6572744275668F +:101AF00000000000000000000000000000000000E6 +:101B000000000000000000000000000000000000D5 +:101B100000000000C50503081206030853485F4C87 +:101B20004D5F55706461746553746570436F756E75 +:101B300074416C65727444617461000000000000BF +:101B40000000000000000000000000000000000095 +:101B50000000000000000000000000001306030861 +:101B60001C06030853485F4C4D5F54656D706C61F3 +:101B700074655F50726F636573735F537465704310 +:101B80006F756E74416C6572740000000000000097 +:101B90000000000000000000000000000000000045 +:101BA000000000001D0603087006030853485F4C40 +:101BB0004D5F53746570436F756E74416C657274DC +:101BC0005F417070656E644C6962726172794D53E9 +:101BD00047000000000000000000000000000000BE +:101BE0000000000000000000000000007106030873 +:101BF000FC0A030853485F4C4D5F54656D706C617F +:101C000074655F53746172745F556E63616C696271 +:101C1000726174654779726F000000000000000077 +:101C200000000000000000000000000000000000B4 +:101C300000000000FD0A0308360B030853485F4C00 +:101C40004D5F54656D706C6174655F53746F705F48 +:101C5000556E63616C6962726174654779726F0079 +:101C60000000000000000000000000000000000074 +:101C7000000000000000000000000000370B030817 +:101C8000600B030853485F4C4D5F54656D706C6189 +:101C900074655F50726F636573735F556E63616CDB +:101CA0006962726174654779726F0000000000001C +:101CB0000000000000000000000000000000000024 +:101CC00000000000610B0308FA0B030853485F4C47 +:101CD0004D5F54656D706C6174655F4D6574686FC0 +:101CE00064496E697469616C697A655F556E636198 +:101CF0006C6962726174654779726F000000000060 +:101D0000000000000000000000000000FB0B0308C2 +:101D1000280C030853485F4C4D5F436865636B555F +:101D20006E63616C6962726174654779726F427546 +:101D3000660000000000000000000000000000003D +:101D40000000000000000000000000000000000093 +:101D500000000000290C03083A0C030853485F4CAC +:101D60004D5F557064617465556E63616C69627234 +:101D70006174654779726F4461746100000000000E +:101D80000000000000000000000000000000000053 +:101D90000000000000000000000000003B0C0308F1 +:101DA000460C030853485F4C4D5F476574556E639E +:101DB000616C6962726174654779726F5265636FB5 +:101DC000676E697A65640000000000000000000092 +:101DD0000000000000000000000000000000000003 +:101DE00000000000470C03084E0C030853485F4CEA +:101DF0004D5F536574556E63616C696272617465A1 +:101E00004779726F5265636F676E697A6564000027 +:101E100000000000000000000000000000000000C2 +:101E20000000000000000000000000004F0C03084C +:101E3000540C030853485F4C4D5F556E63616C69E9 +:101E400062726174654779726F5F417070656E642C +:101E50004C6962726172794D5347000000000000C6 +:101E60000000000000000000000000000000000072 +:101E700000000000550C0308B00C030853485F4CE9 +:101E80004D5F54656D706C6174655F5374617274FD +:101E90005F54656D7065726174757265416C6572D1 +:101EA00074000000000000000000000000000000BE +:101EB000000000000000000000000000B10C03085A +:101EC000E60C030853485F4C4D5F54656D706C61C0 +:101ED00074655F53746F705F54656D706572617483 +:101EE000757265416C6572740000000000000000AE +:101EF00000000000000000000000000000000000E2 +:101F000000000000E70C0308040D030853485F4C71 +:101F10004D5F54656D706C6174655F50726F636581 +:101F200073735F54656D7065726174757265416C31 +:101F30006572740000000000000000000000000056 +:101F4000000000000000000000000000050D030874 +:101F5000600D030853485F4C4D5F54656D706C61B4 +:101F600074655F4D6574686F64496E697469616C0E +:101F7000697A655F54656D706572617475726541EB +:101F80006C6572740000000000000000000000009A +:101F900000000000610D03088C0D030853485F4CDE +:101FA0004D5F436865636B54656D706572617475F0 +:101FB0007265416C65727442756600000000000035 +:101FC0000000000000000000000000000000000011 +:101FD0000000000000000000000000008D0D03085C +:101FE0009E0D030853485F4C4D5F557064617465E6 +:101FF00054656D7065726174757265416C6572745B +:102000004461746100000000000000000000000056 +:1020100000000000000000000000000000000000C0 +:10202000000000009F0D0308AA0D030853485F4CF1 +:102030004D5F47657454656D706572617475726546 +:10204000416C6572745265636F676E697A6564008E +:102050000000000000000000000000000000000080 +:10206000000000000000000000000000AB0D0308AD +:10207000B20D030853485F4C4D5F53657454656D52 +:102080007065726174757265416C657274526563D6 +:102090006F676E697A656400000000000000000050 +:1020A0000000000000000000000000000000000030 +:1020B00000000000B30D0308D00D030853485F4C27 +:1020C0004D5F54656D7065726174757265416C65C4 +:1020D00072745F417070656E644C6962726172798E +:1020E0004D53470000000000000000000000000009 +:1020F000000000000000000000000000D10D0308F7 +:102100001C0E030853485F4C4D5F54656D706C6145 +:1021100074655F53746172745F4779726F54656D53 +:102120007065726174757265000000000000000047 +:10213000000000000000000000000000000000009F +:10214000000000001D0E03084A0E030853485F4CB0 +:102150004D5F54656D706C6174655F53746F705F33 +:102160004779726F54656D70657261747572650040 +:10217000000000000000000000000000000000005F +:102180000000000000000000000000004B0E0308EB +:10219000720E030853485F4C4D5F54656D706C615F +:1021A00074655F50726F636573735F4779726F54C4 +:1021B000656D7065726174757265000000000000E5 +:1021C000000000000000000000000000000000000F +:1021D00000000000730E0308840E030853485F4C90 +:1021E0004D5F54656D706C6174655F4D6574686FAB +:1021F00064496E697469616C697A655F4779726F69 +:1022000054656D7065726174757265000000000040 +:10221000000000000000000000000000850E030820 +:10222000B80E030853485F4C4D5F436865636B47C6 +:1022300079726F54656D70657261747572654275FF +:102240006600000000000000000000000000000028 +:10225000000000000000000000000000000000007E +:1022600000000000B90E0308CA0E030853485F4C73 +:102270004D5F5570646174654779726F54656D7018 +:1022800065726174757265446174610000000000DC +:10229000000000000000000000000000000000003E +:1022A000000000000000000000000000CB0E03084A +:1022B000D60E030853485F4C4D5F536574477972DF +:1022C0006F54656D70657261747572650000000011 +:1022D00000000000000000000000000000000000FE +:1022E00000000000000000000000000000000000EE +:1022F00000000000D70E0308DC0E030853485F4CB3 +:102300004D5F4765744779726F54656D7065726192 +:10231000747572655265636F676E697A65640000F3 +:1023200000000000000000000000000000000000AD +:10233000000000000000000000000000DD0E0308A7 +:10234000E40E030853485F4C4D5F53657447797240 +:102350006F54656D70657261747572655265636FF7 +:10236000676E697A656400000000000000000000EC +:10237000000000000000000000000000000000005D +:1023800000000000E50E0308EC0E030853485F4C04 +:102390004D5F4779726F54656D70657261747572C7 +:1023A000655F417070656E644C6962726172794DEF +:1023B0005347000000000000000000000000000083 +:1023C000000000000000000000000000ED0E030807 +:1023D000840F0308534D5341525F496E69740000E6 +:1023E00000000000000000000000000000000000ED +:1023F00000000000000000000000000000000000DD +:1024000000000000000000000000000000000000CC +:1024100000000000850F0308900F0308534D53413F +:10242000525F646574656374696F6E00000000003C +:10243000000000000000000000000000000000009C +:10244000000000000000000000000000000000008C +:10245000000000000000000000000000910F0308D1 +:10246000DC10030853485F4C4D5F54656D706C6120 +:1024700074655F53746172745F5350416C6572741C +:10248000000000000000000000000000000000004C +:10249000000000000000000000000000000000003C +:1024A00000000000DD1003081411030853485F4CBE +:1024B0004D5F54656D706C6174655F53746F705FD0 +:1024C0005350416C65727400000000000000000071 +:1024D00000000000000000000000000000000000FC +:1024E00000000000000000000000000015110308BB +:1024F0002C11030853485F4C4D5F54656D706C613F +:1025000074655F50726F636573735F5350416C65A0 +:1025100072740000000000000000000000000000D5 +:1025200000000000000000000000000000000000AB +:10253000000000002D1103085C11030853485F4C94 +:102540004D5F54656D706C6174655F4D6574686F47 +:1025500064496E697469616C697A655F5350416C56 +:102560006572740000000000000000000000000020 +:102570000000000000000000000000005D110308E2 +:102580009411030853485F4C4D5F436865636B5378 +:1025900050416C65727442756600000000000000D6 +:1025A000000000000000000000000000000000002B +:1025B000000000000000000000000000000000001B +:1025C0000000000095110308A611030853485F4C52 +:1025D0004D5F5570646174655350416C657274440D +:1025E00061746100000000000000000000000000B5 +:1025F00000000000000000000000000000000000DB +:10260000000000000000000000000000A711030807 +:10261000B811030853485F4C4D5F476574535041F0 +:102620006C6572745265636F676E697A65640000E9 +:10263000000000000000000000000000000000009A +:10264000000000000000000000000000000000008A +:1026500000000000B9110308C011030853485F4C83 +:102660004D5F5365745350416C6572745265636F6E +:10267000676E697A656400000000000000000000D9 +:10268000000000000000000000000000000000004A +:10269000000000000000000000000000C11103085D +:1026A000C611030853485F4C4D5F53657453504146 +:1026B0006C657274547970650000000000000000C1 +:1026C000000000000000000000000000000000000A +:1026D00000000000000000000000000000000000FA +:1026E00000000000C7110308CC11030853485F4CD9 +:1026F0004D5F5350416C6572745F417070656E64DC +:102700004C6962726172794D53470000000000000D +:1027100000000000000000000000000000000000B9 +:10272000000000000000000000000000CD110308C0 +:10273000181203084F535F437265617465546173E7 +:102740006B5F44500000000000000000000000002B +:102750000000000000000000000000000000000079 +:102760000000000000000000000000000000000069 +:10277000000000001912030854130308466C61742A +:10278000436865636B5F496E697400000000000078 +:102790000000000000000000000000000000000039 +:1027A0000000000000000000000000000000000029 +:1027B00000000000000000000000000055130308A6 +:1027C00060130308466C6174436865636B5F6465FE +:1027D00074656374696F6E00000000000000000003 +:1027E00000000000000000000000000000000000E9 +:1027F00000000000000000000000000000000000D9 +:1028000000000000611303088C14030853485F4C58 +:102810004D5F54656D706C6174655F537461727463 +:102820005F507574446F776E000000000000000078 +:102830000000000000000000000000000000000098 +:102840000000000000000000000000008D140308DC +:10285000AE14030853485F4C4D5F54656D706C6156 +:1028600074655F53746F705F507574446F776E005A +:102870000000000000000000000000000000000058 +:102880000000000000000000000000000000000048 +:1028900000000000AF140308C614030853485F4C3F +:1028A0004D5F54656D706C6174655F50726F6365E8 +:1028B00073735F507574446F776E00000000000002 +:1028C0000000000000000000000000000000000008 +:1028D000000000000000000000000000C714030812 +:1028E0000A15030853485F4C4D5F54656D706C6169 +:1028F00074655F4D6574686F64496E697469616C75 +:10290000697A655F507574446F776E00000000004F +:1029100000000000000000000000000000000000B7 +:10292000000000000B1503083C15030853485F4CDA +:102930004D5F436865636B507574446F776E427585 +:102940006600000000000000000000000000000021 +:102950000000000000000000000000000000000077 +:102960000000000000000000000000003D1503080A +:102970004E15030853485F4C4D5F55706461746594 +:10298000507574446F776E446174610000000000FC +:102990000000000000000000000000000000000037 +:1029A0000000000000000000000000000000000027 +:1029B000000000004F1503086015030853485F4CE2 +:1029C0004D5F476574507574446F776E5265636FE1 +:1029D000676E697A65640000000000000000000076 +:1029E00000000000000000000000000000000000E7 +:1029F0000000000000000000000000006115030856 +:102A00006815030853485F4C4D5F536574507574E7 +:102A1000446F776E5265636F676E697A6564000014 +:102A200000000000000000000000000000000000A6 +:102A30000000000000000000000000000000000096 +:102A400000000000691503087015030853485F4C27 +:102A50004D5F507574446F776E5F417070656E6442 +:102A60004C6962726172794D5347000000000000AA +:102A70000000000000000000000000000000000056 +:102A800000000000000000000000000071150308B5 +:102A9000BC15030853485F4C4D5F54656D706C6105 +:102AA00074655F53746172745F5369676E696669B8 +:102AB00063616E744D6F74696F6E000000000000FA +:102AC0000000000000000000000000000000000006 +:102AD00000000000BD150308E415030853485F4CCF +:102AE0004D5F54656D706C6174655F53746F705F9A +:102AF0005369676E69666963616E744D6F74696F5F +:102B00006E00000000000000000000000000000057 +:102B1000000000000000000000000000E5150308B0 +:102B20000216030853485F4C4D5F54656D706C612D +:102B300074655F50726F636573735F5369676E6925 +:102B4000666963616E744D6F74696F6E000000009A +:102B50000000000000000000000000000000000075 +:102B600000000000031603083E16030853485F4C9C +:102B70004D5F54656D706C6174655F4D6574686F11 +:102B800064496E697469616C697A655F5369676EDF +:102B900069666963616E744D6F74696F6E000000E1 +:102BA0000000000000000000000000003F160308C5 +:102BB0006C16030853485F4C4D5F436865636B5365 +:102BC00069676E69666963616E744D6F74696F6E73 +:102BD00042756600000000000000000000000000D8 +:102BE00000000000000000000000000000000000E5 +:102BF000000000006D1603087E16030853485F4C62 +:102C00004D5F5570646174655369676E6966696389 +:102C1000616E744D6F74696F6E4461746100000081 +:102C200000000000000000000000000000000000A4 +:102C30000000000000000000000000007F160308F4 +:102C40008A16030853485F4C4D5F476574536967A4 +:102C50006E69666963616E744D6F74696F6E5265FB +:102C6000636F676E697A6564000000000000000011 +:102C70000000000000000000000000000000000054 +:102C8000000000008B1603089216030853485F4C9F +:102C90004D5F5365745369676E69666963616E74ED +:102CA0004D6F74696F6E5265636F676E697A6564A4 +:102CB0000000000000000000000000000000000014 +:102CC0000000000000000000000000009316030850 +:102CD000B416030853485F4C4D5F5369676E6966CD +:102CE0006963616E744D6F74696F6E5F417070657A +:102CF0006E644C6962726172794D53470000000046 +:102D000000000000000000000000000000000000C3 +:102D100000000000B5160308EC16030853485F4C8A +:102D20004D5F54656D706C6174655F53746172744E +:102D30005F4175746F526F746174696F6E0000004B +:102D40000000000000000000000000000000000083 +:102D5000000000000000000000000000ED16030865 +:102D60001217030853485F4C4D5F54656D706C61DA +:102D700074655F53746F705F4175746F526F7461E7 +:102D800074696F6E00000000000000000000000089 +:102D90000000000000000000000000000000000033 +:102DA00000000000131703082A17030853485F4C5C +:102DB0004D5F54656D706C6174655F50726F6365D3 +:102DC00073735F4175746F526F746174696F6E00D5 +:102DD00000000000000000000000000000000000F3 +:102DE0000000000000000000000000002B17030896 +:102DF0005417030853485F4C4D5F54656D706C6108 +:102E000074655F4D6574686F64496E697469616C5F +:102E1000697A655F4175746F526F746174696F6E22 +:102E200000000000000000000000000000000000A2 +:102E300000000000551703088C17030853485F4C27 +:102E40004D5F436865636B4175746F526F74617455 +:102E5000696F6E427566000000000000000000000F +:102E60000000000000000000000000000000000062 +:102E70000000000000000000000000008D170308A3 +:102E8000A417030853485F4C4D5F55706461746527 +:102E90004175746F526F746174696F6E44617461CF +:102EA0000000000000000000000000000000000022 +:102EB0000000000000000000000000000000000012 +:102EC00000000000A5170308B617030853485F4C1D +:102ED0004D5F4765744175746F526F746174696FAB +:102EE0006E5265636F676E697A656400000000006A +:102EF00000000000000000000000000000000000D2 +:102F0000000000000000000000000000B7170308E8 +:102F1000BE17030853485F4C4D5F53657441757489 +:102F20006F526F746174696F6E5265636F676E691B +:102F30007A6564000000000000000000000000004E +:102F40000000000000000000000000000000000081 +:102F500000000000BF170308C417030853485F4C64 +:102F60004D5F4175746F526F746174696F6E5F412C +:102F70007070656E644C6962726172794D5347007E +:102F80000000000000000000000000000000000041 +:102F9000000000000000000000000000C51703084A +:102FA0001018030853485F4C4D5F54656D706C6199 +:102FB00074655F53746172745F466C6174436865D5 +:102FC000636B000000000000000000000000000033 +:102FD00000000000000000000000000000000000F1 +:102FE00000000000111803083218030853485F4C12 +:102FF0004D5F54656D706C6174655F53746F705F85 +:10300000466C6174436865636B000000000000005B +:1030100000000000000000000000000000000000B0 +:10302000000000000000000000000000331803084A +:103030004A18030853485F4C4D5F54656D706C61CE +:1030400074655F50726F636573735F466C61744340 +:103050006865636B000000000000000000000000D5 +:103060000000000000000000000000000000000060 +:10307000000000004B1803086C18030853485F4C0D +:103080004D5F54656D706C6174655F4D6574686FFC +:1030900064496E697469616C697A655F466C6174D4 +:1030A000436865636B000000000000000000000042 +:1030B0000000000000000000000000006D18030880 +:1030C000A418030853485F4C4D5F436865636B4623 +:1030D0006C6174436865636B4275660000000000B4 +:1030E00000000000000000000000000000000000E0 +:1030F00000000000000000000000000000000000D0 +:1031000000000000A5180308B618030853485F4CD8 +:103110004D5F557064617465466C617443686563A6 +:103120006B446174610000000000000000000000BA +:10313000000000000000000000000000000000008F +:10314000000000000000000000000000B7180308A5 +:10315000C818030853485F4C4D5F476574466C615F +:1031600074436865636B5265636F676E697A656403 +:10317000000000000000000000000000000000004F +:10318000000000000000000000000000000000003F +:1031900000000000C9180308D018030853485F4C0A +:1031A0004D5F536574466C6174436865636B52652B +:1031B000636F676E697A65640000000000000000BC +:1031C00000000000000000000000000000000000FF +:1031D000000000000000000000000000D1180308FB +:1031E000D618030853485F4C4D5F536574466C61B5 +:1031F00074436865636B54797065000000000000DB +:1032000000000000000000000000000000000000BE +:1032100000000000000000000000000000000000AE +:1032200000000000D7180308DC18030853485F4C5F +:103230004D5F466C6174436865636B5F4170706598 +:103240006E644C6962726172794D534700000000F0 +:10325000000000000000000000000000000000006E +:10326000000000000000000000000000DD1803085E +:103270002819030853485F4C4D5F54656D706C61AD +:1032800074655F53746172745F52504D6F74696FEF +:103290006E000000000000000000000000000000C0 +:1032A000000000000000000000000000000000001E +:1032B00000000000291903084A19030853485F4C0D +:1032C0004D5F54656D706C6174655F53746F705FB2 +:1032D00052504D6F74696F6E0000000000000000D6 +:1032E00000000000000000000000000000000000DE +:1032F0000000000000000000000000004B1903085F +:103300006219030853485F4C4D5F54656D706C61E2 +:1033100074655F50726F636573735F52504D6F7465 +:10332000696F6E0000000000000000000000000057 +:10333000000000000000000000000000000000008D +:1033400000000000631903089019030853485F4CFC +:103350004D5F54656D706C6174655F4D6574686F29 +:1033600064496E697469616C697A655F52504D6F2A +:1033700074696F6E00000000000000000000000093 +:103380000000000000000000000000009119030888 +:10339000BC19030853485F4C4D5F436865636B522B +:1033A000504D6F74696F6E4275660000000000003A +:1033B000000000000000000000000000000000000D +:1033C00000000000000000000000000000000000FD +:1033D00000000000BD190308CE19030853485F4CD4 +:1033E0004D5F55706461746552504D6F74696F6EB6 +:1033F0004461746100000000000000000000000053 +:1034000000000000000000000000000000000000BC +:10341000000000000000000000000000CF190308B9 +:10342000E019030853485F4C4D5F47657452504D97 +:103430006F74696F6E5265636F676E697A65640059 +:10344000000000000000000000000000000000007C +:10345000000000000000000000000000000000006C +:1034600000000000E1190308E819030853485F4C05 +:103470004D5F53657452504D6F74696F6E52656342 +:103480006F676E697A65640000000000000000004C +:10349000000000000000000000000000000000002C +:1034A000000000000000000000000000E91903080F +:1034B000F019030853485F4C4D5F52504D6F7469CB +:1034C0006F6E5F417070656E644C69627261727993 +:1034D0004D53470000000000000000000000000005 +:1034E00000000000000000000000000000000000DC +:1034F00000000000F1190308401A030853485F4C0C +:103500004D5F54656D706C6174655F537461727466 +:103510005F534D53415200000000000000000000C6 +:10352000000000000000000000000000000000009B +:10353000000000000000000000000000411A030825 +:10354000621A030853485F4C4D5F54656D706C619F +:1035500074655F53746F705F534D534152000000A8 +:10356000000000000000000000000000000000005B +:10357000000000000000000000000000000000004B +:1035800000000000631A03087A1A030853485F4CCE +:103590004D5F54656D706C6174655F50726F6365EB +:1035A00073735F534D534152000000000000000050 +:1035B000000000000000000000000000000000000B +:1035C0000000000000000000000000007B1A03085B +:1035D0009C1A030853485F4C4D5F54656D706C61D5 +:1035E00074655F4D6574686F64496E697469616C78 +:1035F000697A655F534D534152000000000000009E +:1036000000000000000000000000000000000000BA +:10361000000000009D1A0308D41A030853485F4CA9 +:103620004D5F436865636B534D534152427566006D +:10363000000000000000000000000000000000008A +:10364000000000000000000000000000000000007A +:10365000000000000000000000000000D51A030870 +:10366000E61A030853485F4C4D5F557064617465FA +:10367000534D53415244617461000000000000004A +:10368000000000000000000000000000000000003A +:10369000000000000000000000000000000000002A +:1036A00000000000E71A0308F81A030853485F4CAB +:1036B0004D5F476574534D5341525265636F676E5A +:1036C000697A65640000000000000000000000004E +:1036D00000000000000000000000000000000000EA +:1036E000000000000000000000000000F91A0308BC +:1036F000001B030853485F4C4D5F536574534D5393 +:1037000041525265636F676E697A6564000000001C +:1037100000000000000000000000000000000000A9 +:103720000000000000000000000000000000000099 +:1037300000000000011B0308061B030853485F4CF0 +:103740004D5F536574534D53415254797065000079 +:103750000000000000000000000000000000000069 +:103760000000000000000000000000000000000059 +:10377000000000000000000000000000071B03081C +:103780000C1B030853485F4C4D5F534D5341525F30 +:10379000417070656E644C6962726172794D534715 +:1037A0000000000000000000000000000000000019 +:1037B0000000000000000000000000000000000009 +:1037C000000000000D1B0308581B0308496E5374CA +:1037D0007265616D5F526561640000000000000069 +:1037E00000000000000000000000000000000000D9 +:1037F00000000000000000000000000000000000C9 +:10380000000000000000000000000000591B030839 +:103810007A1B03085F5F6961725F7061636B626945 +:1038200074735F696E69743300000000000000006B +:103830000000000000000000000000000000000088 +:103840000000000000000000000000000000000078 +:10385000000000007B1B03082C1C03086D61696ECF +:103860000000000000000000000000000000000058 +:103870000000000000000000000000000000000048 +:103880000000000000000000000000000000000038 +:103890000000000000000000000000002D1C0308D4 +:1038A000941D030852657365745F48616E646C65AE +:1038B0007200000000000000000000000000000096 +:1038C00000000000000000000000000000000000F8 +:1038D00000000000000000000000000000000000E8 +:1038E00000000000951D0308381E03085F5F696132 +:1038F000725F646174615F696E6974330000000017 +:1039000000000000000000000000000000000000B7 +:1039100000000000000000000000000000000000A7 +:10392000000000000000000000000000391E030835 +:10393000501F03085F5F6961725F696E69745F762B +:1039400066700000000000000000000000000000A1 +:103950000000000000000000000000000000000067 +:103960000000000000000000000000000000000057 +:1039700000000000511F03086C1F03085F5F636DA8 +:1039800061696E00000000000000000000000000FF +:103990000000000000000000000000000000000027 +:1039A0000000000000000000000000000000000017 +:1039B0000000000000000000000000006D1F030870 +:1039C000781F03085F63616C6C5F6D61696E000056 +:1039D00000000000000000000000000000000000E7 +:1039E00000000000000000000000000000000000D7 +:1039F00000000000000000000000000000000000C7 +:103A000000000000791F0308821F03085F6D6169D1 +:103A10006E00000000000000000000000000000038 +:103A20000000000000000000000000000000000096 +:103A30000000000000000000000000000000000086 +:103A4000000000000000000000000000831F0308C9 +:103A5000861F0308657869740000000000000000FC +:103A60000000000000000000000000000000000056 +:103A70000000000000000000000000000000000046 +:103A80000000000000000000000000000000000036 +:103A900000000000871F03088C1F03085F6578691A +:103AA00074000000000000000000000000000000A2 +:103AB0000000000000000000000000000000000006 +:103AC00000000000000000000000000000000000F6 +:103AD0000000000000000000000000008D1F03082F +:103AE0000C2003085F5F6961725F70726F677261BB +:103AF0006D5F7374617274000000000000000000CC +:103B000000000000000000000000000000000000B5 +:103B100000000000000000000000000000000000A5 +:103B2000000000000D200308BC200308575744473D +:103B30005F49525148616E646C657200000000007C +:103B40000000000000000000000000000000000075 +:103B50000000000000000000000000000000000065 +:103B6000000000000000000000000000BD2003086D +:103B7000C02003085056445F49525148616E646C3E +:103B8000657200000000000000000000000000005E +:103B90000000000000000000000000000000000025 +:103BA0000000000000000000000000000000000015 +:103BB00000000000C1200308C420030854414D50F8 +:103BC0005F5354414D505F49525148616E646C657A +:103BD0007200000000000000000000000000000073 +:103BE00000000000000000000000000000000000D5 +:103BF000000000000000000000000000C5200308D5 +:103C0000C8200308464C4153485F49525148616EF1 +:103C1000646C6572000000000000000000000000FD +:103C20000000000000000000000000000000000094 +:103C30000000000000000000000000000000000084 +:103C400000000000C9200308CC200308455854494F +:103C5000335F49525148616E646C65720000000028 +:103C60000000000000000000000000000000000054 +:103C70000000000000000000000000000000000044 +:103C8000000000000000000000000000CD2003083C +:103C9000D020030845585449345F49525148616E59 +:103CA000646C65720000000000000000000000006D +:103CB0000000000000000000000000000000000004 +:103CC00000000000000000000000000000000000F4 +:103CD00000000000D1200308D4200308444D4131E6 +:103CE0005F53747265616D305F49525148616E6413 +:103CF0006C65720000000000000000000000000081 +:103D000000000000000000000000000000000000B3 +:103D1000000000000000000000000000D5200308A3 +:103D2000D8200308444D41315F53747265616D3191 +:103D30005F49525148616E646C657200000000007A +:103D40000000000000000000000000000000000073 +:103D50000000000000000000000000000000000063 +:103D600000000000D9200308DC200308444D413145 +:103D70005F53747265616D325F49525148616E6480 +:103D80006C657200000000000000000000000000F0 +:103D90000000000000000000000000000000000023 +:103DA000000000000000000000000000DD2003080B +:103DB000E0200308444D41315F53747265616D33F7 +:103DC0005F49525148616E646C65720000000000EA +:103DD00000000000000000000000000000000000E3 +:103DE00000000000000000000000000000000000D3 +:103DF00000000000E1200308E4200308444D4131A5 +:103E00005F53747265616D345F49525148616E64ED +:103E10006C6572000000000000000000000000005F +:103E20000000000000000000000000000000000092 +:103E3000000000000000000000000000E520030872 +:103E4000E8200308444D41315F53747265616D355C +:103E50005F49525148616E646C6572000000000059 +:103E60000000000000000000000000000000000052 +:103E70000000000000000000000000000000000042 +:103E800000000000E9200308EC200308444D413104 +:103E90005F53747265616D365F49525148616E645B +:103EA0006C657200000000000000000000000000CF +:103EB0000000000000000000000000000000000002 +:103EC000000000000000000000000000ED200308DA +:103ED000F02003084144435F49525148616E646CCD +:103EE00065720000000000000000000000000000FB +:103EF00000000000000000000000000000000000C2 +:103F000000000000000000000000000000000000B1 +:103F100000000000F1200308F420030843414E3163 +:103F20005F54585F49525148616E646C657200007D +:103F30000000000000000000000000000000000081 +:103F40000000000000000000000000000000000071 +:103F5000000000000000000000000000F520030841 +:103F6000F820030843414E315F5258305F495251A7 +:103F700048616E646C657200000000000000000083 +:103F80000000000000000000000000000000000031 +:103F90000000000000000000000000000000000021 +:103FA00000000000F9200308FC20030843414E31C3 +:103FB0005F5258315F49525148616E646C657200BE +:103FC00000000000000000000000000000000000F1 +:103FD00000000000000000000000000000000000E1 +:103FE000000000000000000000000000FD200308A9 +:103FF0000021030843414E315F5343455F4952510D +:1040000048616E646C6572000000000000000000F2 +:1040100000000000000000000000000000000000A0 +:104020000000000000000000000000000000000090 +:1040300000000000012103080421030845585449E9 +:10404000395F355F49525148616E646C657200009A +:104050000000000000000000000000000000000060 +:104060000000000000000000000000000000000050 +:10407000000000000000000000000000052103080F +:104080000821030854494D315F42524B5F54494D5A +:10409000395F49525148616E646C657200000000DE +:1040A0000000000000000000000000000000000010 +:1040B0000000000000000000000000000000000000 +:1040C00000000000092103080C21030854494D3168 +:1040D0005F55505F54494D31305F49525148616ED0 +:1040E000646C657200000000000000000000000029 +:1040F00000000000000000000000000000000000C0 +:104100000000000000000000000000000D21030876 +:104110001021030854494D315F5452475F434F4DBE +:104120005F54494D31315F49525148616E646C654D +:10413000720000000000000000000000000000000D +:10414000000000000000000000000000000000006F +:1041500000000000112103081421030854494D31C7 +:104160005F43435F49525148616E646C6572000061 +:10417000000000000000000000000000000000003F +:10418000000000000000000000000000000000002F +:1041900000000000000000000000000015210308DE +:1041A0001821030854494D325F49525148616E64E9 +:1041B0006C657200000000000000000000000000BC +:1041C00000000000000000000000000000000000EF +:1041D00000000000000000000000000000000000DF +:1041E00000000000192103081C21030854494D3325 +:1041F0005F49525148616E646C65720000000000B6 +:1042000000000000000000000000000000000000AE +:10421000000000000000000000000000000000009E +:104220000000000000000000000000001D21030845 +:104230002021030854494D345F49525148616E644E +:104240006C6572000000000000000000000000002B +:10425000000000000000000000000000000000005E +:10426000000000000000000000000000000000004E +:1042700000000000212103082421030849324331B2 +:104280005F45565F49525148616E646C657200002B +:10429000000000000000000000000000000000001E +:1042A000000000000000000000000000000000000E +:1042B00000000000000000000000000025210308AD +:1042C00028210308493243315F45525F4952514822 +:1042D000616E646C65720000000000000000000068 +:1042E00000000000000000000000000000000000CE +:1042F00000000000000000000000000000000000BE +:1043000000000000292103082C2103084932433210 +:104310005F45565F49525148616E646C657200009A +:10432000000000000000000000000000000000008D +:10433000000000000000000000000000000000007D +:104340000000000000000000000000002D21030814 +:1043500030210308493243325F45525F4952514888 +:10436000616E646C657200000000000000000000D7 +:10437000000000000000000000000000000000003D +:10438000000000000000000000000000000000002D +:104390000000000031210308342103085350493242 +:1043A0005F49525148616E646C6572000000000004 +:1043B00000000000000000000000000000000000FD +:1043C00000000000000000000000000000000000ED +:1043D000000000000000000000000000352103087C +:1043E000382103085553415254315F4952514861B5 +:1043F0006E646C65720000000000000000000000A8 +:1044000000000000000000000000000000000000AC +:10441000000000000000000000000000000000009C +:1044200000000000392103083C2103085553415284 +:1044300054325F49525148616E646C6572000000ED +:10444000000000000000000000000000000000006C +:10445000000000000000000000000000000000005C +:104460000000000000000000000000003D210308E3 +:10447000402103085553415254335F49525148611A +:104480006E646C6572000000000000000000000017 +:10449000000000000000000000000000000000001C +:1044A000000000000000000000000000000000000C +:1044B0000000000041210308442103084F54475FD6 +:1044C00046535F574B55505F49525148616E646C7B +:1044D0006572000000000000000000000000000005 +:1044E00000000000000000000000000000000000CC +:1044F000000000000000000000000000452103084B +:104500004821030854494D385F42524B5F54494D8E +:1045100031325F49525148616E646C65720000002F +:10452000000000000000000000000000000000008B +:10453000000000000000000000000000000000007B +:1045400000000000492103084C21030854494D385C +:104550005F55505F54494D31335F49525148616E48 +:10456000646C6572000000000000000000000000A4 +:10457000000000000000000000000000000000003B +:104580000000000000000000000000004D210308B2 +:104590005021030854494D385F5452475F434F4DF3 +:1045A0005F54494D31345F49525148616E646C65C6 +:1045B0007200000000000000000000000000000089 +:1045C00000000000000000000000000000000000EB +:1045D00000000000512103085421030854494D38BC +:1045E0005F43435F49525148616E646C65720000DD +:1045F00000000000000000000000000000000000BB +:1046000000000000000000000000000000000000AA +:104610000000000000000000000000005521030819 +:1046200058210308444D41315F53747265616D3701 +:104630005F49525148616E646C6572000000000071 +:10464000000000000000000000000000000000006A +:10465000000000000000000000000000000000005A +:1046600000000000592103085C21030846534D4314 +:104670005F49525148616E646C6572000000000031 +:10468000000000000000000000000000000000002A +:10469000000000000000000000000000000000001A +:1046A0000000000000000000000000005D21030881 +:1046B000602103085344494F5F49525148616E6479 +:1046C0006C657200000000000000000000000000A7 +:1046D00000000000000000000000000000000000DA +:1046E00000000000000000000000000000000000CA +:1046F00000000000612103086421030854494D357E +:104700005F49525148616E646C65720000000000A0 +:104710000000000000000000000000000000000099 +:104720000000000000000000000000000000000089 +:1047300000000000000000000000000065210308E8 +:1047400068210308535049335F49525148616E64F0 +:104750006C65720000000000000000000000000016 +:104760000000000000000000000000000000000049 +:104770000000000000000000000000000000000039 +:1047800000000000692103086C21030855415254C0 +:10479000345F49525148616E646C657200000000DC +:1047A0000000000000000000000000000000000009 +:1047B00000000000000000000000000000000000F9 +:1047C0000000000000000000000000006D21030850 +:1047D0007021030855415254355F49525148616E6A +:1047E000646C657200000000000000000000000022 +:1047F00000000000000000000000000000000000B9 +:1048000000000000000000000000000000000000A8 +:1048100000000000712103087421030854494D363B +:104820005F4441435F49525148616E646C65720058 +:104830000000000000000000000000000000000078 +:104840000000000000000000000000000000000068 +:1048500000000000000000000000000075210308B7 +:104860007821030854494D375F49525148616E64BD +:104870006C657200000000000000000000000000F5 +:104880000000000000000000000000000000000028 +:104890000000000000000000000000000000000018 +:1048A00000000000792103087C210308444D4132B7 +:1048B0005F53747265616D305F49525148616E6437 +:1048C0006C657200000000000000000000000000A5 +:1048D00000000000000000000000000000000000D8 +:1048E0000000000000000000000000007D2103081F +:1048F00080210308444D41325F53747265616D310C +:104900005F49525148616E646C657200000000009E +:104910000000000000000000000000000000000097 +:104920000000000000000000000000000000000087 +:10493000000000008121030884210308444D413216 +:104940005F53747265616D325F49525148616E64A4 +:104950006C65720000000000000000000000000014 +:104960000000000000000000000000000000000047 +:104970000000000000000000000000008521030886 +:1049800088210308444D41325F53747265616D3371 +:104990005F49525148616E646C657200000000000E +:1049A0000000000000000000000000000000000007 +:1049B00000000000000000000000000000000000F7 +:1049C00000000000892103088C210308444D413276 +:1049D0005F53747265616D345F49525148616E6412 +:1049E0006C65720000000000000000000000000084 +:1049F00000000000000000000000000000000000B7 +:104A00000000000000000000000000008D210308ED +:104A1000902103084554485F49525148616E646CC7 +:104A200065720000000000000000000000000000AF +:104A30000000000000000000000000000000000076 +:104A40000000000000000000000000000000000066 +:104A50000000000091210308942103084554485F99 +:104A6000574B55505F49525148616E646C657200F6 +:104A70000000000000000000000000000000000036 +:104A80000000000000000000000000000000000026 +:104A90000000000000000000000000009521030855 +:104AA0009821030843414E325F54585F49525148A0 +:104AB000616E646C65720000000000000000000080 +:104AC00000000000000000000000000000000000E6 +:104AD00000000000000000000000000000000000D6 +:104AE00000000000992103089C21030843414E3235 +:104AF0005F5258305F49525148616E646C65720074 +:104B000000000000000000000000000000000000A5 +:104B10000000000000000000000000000000000095 +:104B20000000000000000000000000009D210308BC +:104B3000A021030843414E325F5258315F49525120 +:104B400048616E646C6572000000000000000000A7 +:104B50000000000000000000000000000000000055 +:104B60000000000000000000000000000000000045 +:104B700000000000A1210308A421030843414E3294 +:104B80005F5343455F49525148616E646C657200E2 +:104B90000000000000000000000000000000000015 +:104BA0000000000000000000000000000000000005 +:104BB000000000000000000000000000A521030824 +:104BC000A82103084F54475F46535F49525148613B +:104BD0006E646C65720000000000000000000000C0 +:104BE00000000000000000000000000000000000C5 +:104BF00000000000000000000000000000000000B5 +:104C000000000000A9210308AC210308444D4132F3 +:104C10005F53747265616D355F49525148616E64CE +:104C20006C65720000000000000000000000000041 +:104C30000000000000000000000000000000000074 +:104C4000000000000000000000000000AD2103088B +:104C5000B0210308444D41325F53747265616D3673 +:104C60005F49525148616E646C657200000000003B +:104C70000000000000000000000000000000000034 +:104C80000000000000000000000000000000000024 +:104C900000000000B1210308B4210308444D413253 +:104CA0005F53747265616D375F49525148616E643C +:104CB0006C657200000000000000000000000000B1 +:104CC00000000000000000000000000000000000E4 +:104CD000000000000000000000000000B5210308F3 +:104CE000B82103085553415254365F495251486127 +:104CF0006E646C657200000000000000000000009F +:104D000000000000000000000000000000000000A3 +:104D10000000000000000000000000000000000093 +:104D200000000000B9210308BC21030849324333C5 +:104D30005F45565F49525148616E646C6572000070 +:104D40000000000000000000000000000000000063 +:104D50000000000000000000000000000000000053 +:104D6000000000000000000000000000BD2103085A +:104D7000C0210308493243335F45525F49525148CD +:104D8000616E646C657200000000000000000000AD +:104D90000000000000000000000000000000000013 +:104DA0000000000000000000000000000000000003 +:104DB00000000000C1210308C42103084F54475FCD +:104DC00048535F4550315F4F55545F4952514861D8 +:104DD0006E646C65720000000000000000000000BE +:104DE00000000000000000000000000000000000C3 +:104DF000000000000000000000000000C5210308C2 +:104E0000C82103084F54475F48535F4550315F49FD +:104E10004E5F49525148616E646C6572000000003B +:104E20000000000000000000000000000000000082 +:104E30000000000000000000000000000000000072 +:104E400000000000C9210308CC2103084F54475F2C +:104E500048535F574B55505F49525148616E646CDF +:104E6000657200000000000000000000000000006B +:104E70000000000000000000000000000000000032 +:104E8000000000000000000000000000CD21030829 +:104E9000D02103084F54475F48535F49525148613E +:104EA0006E646C65720000000000000000000000ED +:104EB00000000000000000000000000000000000F2 +:104EC00000000000000000000000000000000000E2 +:104ED00000000000D1210308D421030844434D49B8 +:104EE0005F49525148616E646C65720000000000B9 +:104EF00000000000000000000000000000000000B2 +:104F000000000000000000000000000000000000A1 +:104F1000000000000000000000000000D521030890 +:104F2000D8210308435259505F49525148616E6479 +:104F30006C6572000000000000000000000000002E +:104F40000000000000000000000000000000000061 +:104F50000000000000000000000000000000000051 +:104F600000000000D9210308DC2103084841534810 +:104F70005F524E475F49525148616E646C657200E2 +:104F80000000000000000000000000000000000021 +:104F90000000000000000000000000000000000011 +:104FA000000000000000000000000000DD210308F8 +:104FB000E02103084650555F49525148616E646CC8 +:104FC000657200000000000000000000000000000A +:104FD00000000000000000000000000000000000D1 +:104FE00000000000000000000000000000000000C1 +:104FF00000000000E12103080C2003087CEC010004 +:00000001FF diff --git a/firmware/tsp_synaptics/synaptics_js_b0_5_1.fw.ihex b/firmware/tsp_synaptics/synaptics_js_b0_5_1.fw.ihex new file mode 100644 index 000000000000..c9d3fd78e2a3 --- /dev/null +++ b/firmware/tsp_synaptics/synaptics_js_b0_5_1.fw.ihex @@ -0,0 +1,3937 @@ +:100000002AE55A790000000600EE00000002000018 +:100010005335303030420000000000000000000086 +:1000200000000000000000000000000000000000D0 +:100030004453352052312E302E3000000000000095 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:10009000493243000500FF000C0D20000000000065 +:1000A000493243000500FF000C0D20000000000055 +:1000B00012B4C61CEBC5DDBCB2FFA500A106B5C1DC +:1000C00043F5E04A742634893ADFD10918EC5632F8 +:1000D000C78B51A04FCEC9A42BFA103558A31DF3DE +:1000E000DFF4C560070817A397265F0D938035449A +:1000F000B3D68C338DFF9DAD07874F6BC6B5788D1A +:10010000C3CF203D53CB8AB4CFCF2A507287DB2593 +:10011000CE46143E9C4C57C3ABB6C3A5E1536419FD +:1001200060796D42FCED1D79E5F9D0D05B22D86D88 +:10013000E108A8AEE9079231B3258F491DB1924776 +:10014000661BB53C8AA929632A109F6BF8354FCCF2 +:10015000837C665F7F6BB5DF4C1C7455E96B0BF7D6 +:100160007464A4C6819E2024E91E0726606AE66F97 +:1001700070FF95745F48398EB524F80C1287B7B4B8 +:10018000AE74EE3DDDCC84B860D58362E4144B657B +:10019000C053ABDD3931AD66AD9940A82B3E14D5C7 +:1001A000DF626E5416AC1D109678606CE04156BA52 +:1001B000DF8D6301C0376A4E68F9380DDF2549F7D6 +:1001C000AA078A08F3181142D22785465702EB6E18 +:1001D000A5C4D79979998F65765D75D3D7D7FDFB7F +:1001E0006FDC958042C2754548A748B53BC4AD3E1B +:1001F000C13F5E1F0211E098D7ED36E06334FE1771 +:10020000D26D56605E328964656B52DCA2F1015298 +:100210000CA4E657A31FCE4C6735B2CA70601433E6 +:100220002B6D1988C267D67D74B89A81DA542C3F39 +:10023000491ED90B00D17B5EDE74B1B17E29F1C1BC +:10024000728FB8F354530ACA68DE310937696E7A7F +:10025000016B4F2D6A0EB775AD335DF3CCBFDAB1CC +:100260009FC365EDE3B1C88933A010A42E2A77FFA0 +:10027000941CDFC7C46DBC3168C5D507FC1325A726 +:1002800059788952BA53E27CB1FD52977DC40682F7 +:1002900007299A27888E6956712197069BB7E94CE2 +:1002A000BC43110C106717D4B3E026CABC2193D508 +:1002B000691165E7D7F351B98F092A9B21B55DCA4A +:1002C0008F37050FD741C227608E05483CEBC046EB +:1002D0005C20277D9FC42CDB31D3037C089EA59036 +:1002E0007C892D8FB26EE2CF18D13B306AAADB42F7 +:1002F00016A19A55F3B9C30B60CC7AEAF7E4BE15A0 +:10030000FF010CE10DF9265FB36DC5CDBB6EDB1FA0 +:1003100094BE9A1463CECB6A00FB34E6E624B6E1C1 +:1003200014EAC05A5C6D1A6D7A30E1F76AC288EC43 +:10033000D0ECA644C1C6B2612710D6415E065C422D +:100340003848CD56E7E153B8687EA2AA8D3EA2DBBD +:10035000060FB745D8E7B2092C190F176D8D684104 +:1003600062C106CE4562FE34DDD61B820C32B42C4F +:100370002B40712C607821CDC14E643E91CCF92088 +:100380009AE6778AEBB1A763325720CB861699F5A8 +:1003900030222A723AE86D118ABD7DA135428D93D3 +:1003A0009F9EFECC988D1AC007C006F83F1BAC8FED +:1003B0009F22C5972B1F6E4CD95F76BA3676DC3BF1 +:1003C000AAF331EE8C1512796A9C9CABA374A1B18F +:1003D00092151D32C4BDA03D3AAEC7C00E2D62D3EA +:1003E00049195E178500AC1822148603D933EE999B +:1003F0008E6FD156F1CC00CF4970B3A342B87EB80E +:10040000C4D76C02D907A46328C1903196FDCC45AE +:10041000FC1FE9E66637288E9DC2AF3579B26F21A1 +:1004200003B2BC4DC83C23AACB532B021121B98C7B +:10043000ADB912555B2BC16DC9206B10F5CF8D186E +:10044000201D7274E22FC26C54C736F52E371BB1D3 +:100450003C88DAE4352A5389F024E1F8A7B3B6A939 +:10046000CE95BE64EAB2E5B4F813F8E77E2D5A994A +:10047000982A6150D9759DCBB334DBE1CD2AFA2F90 +:100480000F2E0585AE28FD9C3FA56C56B4924DE518 +:100490004FAA5D681B9EF57380A21B2478D10F576D +:1004A000C3524FBF1A65CDA7CE456C3B45572E7A38 +:1004B0003BF553C9C7E90DAAFB66AE40C8417FA80A +:1004C00064179F1E2925B7912371F8E91374B5802D +:1004D00042A931A89BD602B0628BF5532A3EAE8A60 +:1004E000D3CE8FB67734B588DD8E2154ADE66E203D +:1004F000E609623F5BA25D11665CB1561AABE1E5AD +:1005000095047FF66D4413AB53F9FEAEE714D6891C +:10051000B7455B668A8EB791AF908492898DE0FF74 +:100520001679A72F1DFCC8217DACFE9587783BED81 +:10053000297F4FEC45E14B4C4A8C26F4D400311D09 +:10054000404967EE03305BBC2C7EF64CE9E88467DB +:100550002A47ECCCEAC82856A3818844141C0D58BD +:100560009C39641260C22AF9EF6993AA267A2A3765 +:100570006D162F725B0D4AF64DDA25343A2B826ADE +:10058000419CC3B1521A82E3D7E5E24BB6F9FDDED6 +:100590009D5BA6B12DD9E57BDFC5377E8F0F5A3421 +:1005A0006D31A3AE25E7D2EA10345F06AF391AF9F0 +:1005B0002DE5D82A310269D5DCC4BFD05949C9B06C +:1005C0000B321786AA5A4E148B0180B00595799884 +:1005D00012AA814641287C552675501B1F392AAA2C +:1005E000A624D056138E9F0CD79FC8A388F21B7EDB +:1005F000F6D7556AB53C14751755837B8441E1A243 +:10060000D38CE1EDAE79CB729F87BF1D1346A8F264 +:10061000DC0E3515F3E603D59AE28A1A1947A94686 +:10062000D1612D9C7276E5796FD487C5404A7513E8 +:100630006B4824AA46C08AF28BDE7815E00ADC28D3 +:10064000258510D3B96E94629EA7C3C0FDA29511F3 +:1006500048E935A3ED14D242A3AD16CA3EDCFFF93A +:10066000C0E8FA06B6301287394D4668C5C566EB54 +:10067000032326F754396D73215867B3FC17F13DF6 +:100680000E632AB809288F522E52A694DDEF39B98D +:10069000B19FA8CF37B82A5BB748F776DE4595C635 +:1006A000463B52968FFC3FD516B7EC23DC9C04F7F3 +:1006B000E852FE121FA1BDF85E580CC56D9C603655 +:1006C000958F1ADC86FDE8DDA13224B1810D794ECB +:1006D0007D421207C3078D8E4825FA170A3B65A095 +:1006E000DFDC14D63E242E053608913A04ACD36CD8 +:1006F000BE21A61F41D8A99CAC8D55AE85C4FA5227 +:10070000A2AC35EA2D017BCAD09C43204B253FF299 +:10071000F5524918817D688357A696EC2E23A21FB7 +:10072000F4F302671BAB7C7CE2DA463D7D1270631A +:10073000DFF7EE6C0A9A7A3B1C4F2A7159B86EE1CA +:10074000A434BBF460FF0EE220E8A3B77B428A89A1 +:100750005DE3FF1EED37BB4425295B7BC010CFEB6B +:1007600092818BA212CA39B496273943F91982C4EF +:10077000F69D815436635F67D422C97EA015CA8F67 +:10078000DBEFD8C4F536D10543EC618E28214C8AC5 +:1007900015351F78C6CB47040CA158DED1ACBDACD3 +:1007A000CB5D11CD7268ABFF2B823696F52C95CBC5 +:1007B000B7D9AF4E8186559901AA1FA7A57B16E32D +:1007C000D58B868669DC0D0EE266F684301E23EC3E +:1007D0006A8C9F7F5D7730E3BA27DCDCAB233B2C50 +:1007E000777A2F2855F860AB34C24FA33868385257 +:1007F000F32FA859CD288047C1F9FD35A6F549EC5E +:1008000069A9688659F5B807528DFF225D768B90ED +:10081000B0B7C2D57790DF3C8358B5BBA881ED0354 +:10082000A75AB13B850EF8854F0B60F90D7FA5DD0A +:1008300076036360EDDA0D800D8009E284C9D24948 +:10084000AE874D73DD0A8E65C7B137438ABBBD02E3 +:10085000FC5BBA98F883819B773675CBD4C96A67FD +:1008600065141C72E5CD0AC9828E18944108639AFA +:10087000FA14B02BAB359D779C65DBF2891288D2D8 +:10088000DCB4819C7F3F64C204C07E31D300ED2084 +:10089000DB49D5A647F8E4A9B7D3A0C3941F031535 +:1008A00040FE31F9059A3C69078E3D825C77F4C8B9 +:1008B00075517D26B30BE1B285B1E7516DF99EC448 +:1008C000F43B84DC2D7EE23B7D37E6A39F4F9BB15A +:1008D000993F423C399754A60789219842AA25B3EB +:1008E000438A583DE68A695FD9DADFAA531D502F43 +:1008F00033EBF220127C566CDAAB9A3C009FB38249 +:10090000E4455BA36E183655A6C021090F3679BBA6 +:10091000DC55B1259A1E4288C8AB8C542947C1CA00 +:10092000A8BB7594A375ED7CD4D0C0DDB64414711A +:10093000069D2820BBB5105E8F54C3A3F4BC66523D +:1009400008E3C955F43FEDF4964076C4CAC124B615 +:10095000DD9EE615C3EFD527C89172FD6AD2F74C2C +:10096000D3B26112197E38594987BBBE31A1AB653C +:10097000AB88383D2341E4F33FBED0608EE6554A54 +:1009800064E0ED34AED1DE9B2F3EF3F863EE3A71B6 +:100990008647993A402ACF47EF176B5F0839B6ACC4 +:1009A0009F1C14C62730EE634C1D6F612A66855E5E +:1009B0009130092D911B1F9C564113444AD69B72BE +:1009C000D3D4B428D7D193A9E21E0A109978F17E26 +:1009D0000FE9609F5806F417CCFD6FEDC6F696DE62 +:1009E0005CB45642CFA68686EA565303DD36C8531A +:1009F000194F7752CBB4424D3F5D3636D337BDD019 +:100A000076E7E0C1A646862FB428A64302F6F99001 +:100A100001890C10EBBB24209B1A11152226A5146A +:100A2000BBBF4986BFDD559B723C7446FAEA8D8791 +:100A3000A4561F3B782E61A8D8ADBDECD4308C985D +:100A4000BDF5EAA6FDE131AADBA9E7252AED30656F +:100A500068FB074C5B2663A559015379C3942E624A +:100A6000F11BCEA6C64DD722A426340443DC0BD2FC +:100A7000391E7959C66BB7FC37AB8A75D40939363C +:100A80004B81F0190F33DB166F17D90436CB8E6507 +:100A9000E9BC6CFB9817C48A8C94DF3144979F03A0 +:100AA000501756F97F3E60F73957E0554B1BC5DEAE +:100AB00082FBDD36ACE2243ED61607690AA3BFFAF4 +:100AC000143CEAD490265958DD05028FC5A5139B26 +:100AD00024A9E5B94A63B61CC540EC595029F41560 +:100AE000AC31884A5445AEC87F1AF794EB8B459DCC +:100AF00088E2B40BFCC49236AD38FAAB5EB94769F4 +:100B00004D4196B14F010802881EDA4162253E76BA +:100B100080E23338B3B0D62007FCF58F965078FBCF +:100B2000F575872911522BC15EDB0BC91871FD8A3F +:100B3000217960D73A36A71A46151F12230DB682BF +:100B40000795915827AFEAA21FB53E2D3A52CD76B0 +:100B500067D185B6BE8DDBB0214660FC7714C0B886 +:100B6000FB60FFCB15749286C0328929264A7D73BB +:100B700082FD829C824FAC9E7E7C23498322388EEC +:100B8000CD339D5A3792C80D27E51DBC91EA5C987C +:100B900054DFD95B7C67C20C05BFA0D3A4F22B81C4 +:100BA0002B7538B1729CBE348B0BCB43663758A380 +:100BB000CA42538C751A03885AB759AA2C19990935 +:100BC0009F35512EF945E76C4EF17613B4D640DAD5 +:100BD000DE786127BE324F57C24EA190ED3CE079DE +:100BE00012A2873F8602FC38A5FE0B3463D8D8ECEE +:100BF00058567E1080F41F44B2C05513FCC90BA692 +:100C0000889BBDD6ED27A89E3EC48AA75EC235C488 +:100C100045B24BABCE81827D86A1768DF175B864ED +:100C20008764B800BC03C1A690AF6AED77C0B2B1CB +:100C30006073736C34B77B6C9927E7895AB29CDE7A +:100C4000783407836DA28A287FECE4289556808645 +:100C50002DCF4B32D257616AC328C77C38D33A9F15 +:100C6000C73040344455D2D1302123017B8417F959 +:100C7000DAB72D72B0E145F767EC4D1394C3E64C3B +:100C800093E453523D59D955AF14882BB2ECD95443 +:100C9000DF80215667BFCB5762B1482892CEE20A67 +:100CA00026B625FF0EB68FD9A0D436F092C5F0E156 +:100CB000FED67221B034DFFD61442D7C1BA8CFA687 +:100CC00028F97AF12960CEFB0C1D008B1C2AA45157 +:100CD0008B286E41C8BB5FA5951366441F74A69E02 +:100CE000046F82A42AAFEB4EF77291E1183DC8EB76 +:100CF00039CD52A4162024A6BAB336A102F44D4F22 +:100D0000207E5275EFFB2512489E5D9EF760D15AFA +:100D10004FEAC274C70CB1A1022F4FDDA55F10CFFF +:100D2000B3BEF041BB42A820929808125221CAF0EB +:100D30007B7D4C11E8BC973CC9DA79420CB7216D38 +:100D4000EDD82B7E56B044A8DD47D94799CCD33493 +:100D5000EF9A98A97177987C3DEF118A3FC8B44704 +:100D60004233025570115BC9515A41C719D9501EFF +:100D7000463534D3B3E8DBA22DAEAC0512B8AE3A9B +:100D8000F18333BA6F463720556AD5E740348BA3D9 +:100D900024443A39C1DED4971F681ABC8A273BDC49 +:100DA000326DD8DF796CFEF10431EF9E55A326F247 +:100DB000E3B61FFDE4FF37078ED3DA4FB997899268 +:100DC000211CEC038E5BFFF088848AF4170E9BB61F +:100DD000D381D731FE8CFD40070615E1DA4DCCE812 +:100DE00016D088441710B97CE3641442EE9B741843 +:100DF00005E80E885025CC5DEFE82B6458AEF67EF2 +:100E0000EEB67ABE0D36B61D61718B8964DA7FF756 +:100E10007A2974448232321EE76DE90FFB9FC34981 +:100E20008F5A9C379C609170BEB23DB28AB2BD1899 +:100E3000033922508D3885E98D5D3458A8F2382861 +:100E40007EDAD04972235843B33AD820801436B0A2 +:100E5000FBBCD7736E294355E4502F4D494C0A65AE +:100E60007F9D1F9D6000147D366D47BC45E04A4A5A +:100E700098476B2F051E3846945818AF981740C5F1 +:100E8000CDD3F94D946544CE13B088781E30F54D1E +:100E9000F5C173749C70576AB76558BF2F0B093C36 +:100EA00093A0A4B68EC0D10A7A99B5951A5F012392 +:100EB000B7C660CA281BD4FF299A3F94F5AD36F215 +:100EC0007490E855261DD56973C284BC75CA2697EF +:100ED0001362270050342FBD3BC3F2A0A9A63EF1F8 +:100EE0009FF29F1BD07589C82663F55FD71587FED3 +:100EF00002948BD61C2452EDABB4E894C89C520CDF +:100F000025C288634BFC0041111EA68D6EC10E6286 +:100F100020D0770862929D36F8F2206745CE892E60 +:100F200099AB38958CEFC04161766E3CB09FC9C7D4 +:100F3000500C184420A17F6D68FC3B21F9A96E304C +:100F4000FEBC988A442EC6BA926569F3D861A46D36 +:100F50000C51F6092D1A78DC2027E20AB28900C666 +:100F6000F491C088B909B9935CB23EFAD4E2175F34 +:100F7000DC5F7A72440E112B3378703DA5A5778D16 +:100F8000D3F9245851469E526D27B18E0D568923B0 +:100F9000F7E2108AA08F477C51D25E5CB1ED5F66AC +:100FA000D7D31FC5B23FAE09B12719F805015824A0 +:100FB000FE2C43E015BCA3684FC86C05BAA97DA000 +:100FC00049F66E811F999526344B0B9C8EC22B32AD +:100FD00071E24FA469038C34FEC75AAAD78CC1882A +:100FE000821D61300CED4A36560735F2E6FD4D5F45 +:100FF00024B8AFF2E61E49FEB25B0CA82CCD6F7A86 +:10100000852C60EF29947983BDA7685062E87F73CF +:1010100049C7034A323556E1B1B7C7EECB99162C12 +:10102000B12EEB3C22D0338730EAE62D2959E999DD +:10103000A5275959CA4AA66C83A6A35C1268590C05 +:10104000693D7511E131055EE6C942DC5B32D8EBE2 +:10105000AD43E1EF06142E7F8D6696DAC552D3A715 +:10106000A121837CCFBACDCCC60FA99618C75094C6 +:101070009CA36AEFA6A9EFC0F9B3B0514B95D93C38 +:101080001DC6E089905F1757A3588B2730CA1EBD35 +:101090006A994F4C674FFDDB87F18A74B0B34E29D4 +:1010A000EA1D9C38FE6EF257F4B08A93B25561BBCC +:1010B00035D035D98BAEE1A91F5FBFB14EB947B668 +:1010C000853E6E4048E0A6610CFC6FCDDD9560DB8F +:1010D000B62E2EFAED812935D4DDFCE6885B735FF0 +:1010E00088A1DC8C5D16BDCCFB0DFDFEA2F4CE7B91 +:1010F00002DC8268A857CD5B1B815E4F3828FA9DC1 +:10110000F611C156B721341D8BA90225865E97BE04 +:10111000364045E2C6F610BA77EC6B440777EA3002 +:1011200016E2E04EAEE2ACD994697DF3B788863022 +:1011300022CB44656BFD9F8613FAD3D9C73F0D3F81 +:101140008C00112E44BEF57E54CAAD07027C314797 +:101150006084F3955018CDAE612BD4B3D97E1B6E4D +:101160006A771EBB043FFD30ABA2CA87A68DDD3671 +:101170006C18EEA063C66DCDBD4DCD7018E3FE9228 +:1011800096CAC29EA76DAEAF590D64B4BB2567DC8D +:1011900029B1AEC457BE426421321A9B182A8FA9C6 +:1011A00092F15A15B7F4D5E273A45BFE0161245E97 +:1011B000E795CE15788853C1B37D64BD194016BF3D +:1011C000CFA994D6760A4B9159F653E9BE4BAB1B87 +:1011D000016B2A2187300B8C863724B2D2A2E8A477 +:1011E00063F4F4703ACCE332DF4737BE046B0B7F15 +:1011F000A8BE089D0C3944092FFD74C62E2309F999 +:10120000A3E42534C5DE958700BBE98AAEDE87DE20 +:1012100099E4F6DE6BBF5207F26532EB524A17BC17 +:10122000701A231C880427448E30D0BD5B379998F0 +:101230001DE8386F30F36349C2DD262F5B89DE97E6 +:10124000799DC2E3572D8D0E247A40C629A0080C43 +:1012500065ED7E5E41F14521D1A7995213024CF410 +:101260009F7EA4F9E53EBA63F751B14064346686C7 +:1012700052326B1C68AE08D8711D0A2A3DFCC2F4BC +:101280003A4AF51778A5460F82231B8AC1B2443B20 +:10129000FA3B7B5EE453CD30FD5B43BA7153548B14 +:1012A000EFEDA51E49FAC53B12B48AD40C2B5C960F +:1012B0007C9B733B5013FE7AF4ACFCB4BD980A0FD0 +:1012C0005266C5C57893CC3FAD4B6E92DD12CE858C +:1012D000D21068B7052A73459FC6D17E874F338CDD +:1012E0007F3ABBC54D4FB34EA76FF9D5E78E2CF2B1 +:1012F000652F03710ED4B96E17C2143BD42D322062 +:10130000DCEBF15A3D8223651D1CF2EE1D9FB39D5F +:10131000C48CF27B1DFC2001331D636BED8B29E136 +:101320009886C4CCCE0AE11DBB6C28FD765A09B064 +:10133000E8D8113A07A2C265E1F3AFC27E4941BACB +:101340009B1CD9005BA097EE0A0E2421A24A236AB7 +:10135000081260C2E1D3F9FAF4CF1A526B718CE42F +:101360006A5ABBB84562D2C8CE19E4CE5905D13409 +:1013700091182E55DBB964C1AB94F517CA428D584C +:10138000215516E398CDCCA095D1850B233C1B8E1F +:10139000537F47F7337DB2E0848E614D3E03825622 +:1013A000247888243D558D6907B11C22D7AF939DC1 +:1013B0003F4D08DBC01BD832AF1346ADCF42B59EC0 +:1013C0007EAAA47A4F30A0270F098795F773338739 +:1013D000829AE0C1572EAAD2313E75861AD225A82C +:1013E00032EF9AE58AC86077DC1845A51DE7EA3F29 +:1013F00082CA4C4BE40B14387172942C1FE15201D9 +:1014000057F2CF545C5C82B97DCE30ED79BB3F1D85 +:10141000885F721116BC07DD7C738FA1BF5F2B8FB5 +:101420007BE23BE2D10BDD84E8125E048191BE0CCD +:1014300051CF70ED3B0FA5A2F39EB203270B7C3179 +:10144000C9195B47C7933EE0E15DD39D0AA1260D14 +:10145000D10AC6DFEE7BFADC359929C9D6B5F10F82 +:101460000A947D18F0607F92DF0E6573C30D50CD36 +:1014700048DA08E24FB8EBB55EACA8B812E3BA00A0 +:10148000E6A4CCCB3B5EB09FC48963ED8F5492DB66 +:101490005AAD4C12C3C80D22507ABE0CFC310C6BF5 +:1014A000E5A3EFCB3CC98CD222B19AB27DA56E10D8 +:1014B000D3A8FAF0BC703D92B3D1B76EC744E5A98A +:1014C0009488B9ADD7CB9C075C26D08B6BB0CF315D +:1014D000F216855E3EDA12605103160E3B8BE4B4C1 +:1014E000A3684AF4A89BD984649FBBE68F46DA318F +:1014F0004C46896672D3453D42756CDBDD6EFE2E2F +:101500008B5F12266B1C4340A1DC25425C562C7F6E +:1015100034D1092D4F69A44FC40553D002690C98EA +:1015200020DAF6241B6F0E478437552D6CCC09DD6D +:101530002E47EC0EBDF3F1290270EA8B003203193D +:10154000A664C2CC8A22A0EB23B11F80E55FD5231D +:101550001B7B96FC3D477CCCD8BC9EBE3F6CDB63BE +:1015600052503D4816F0AA037E34D309D0E99209BF +:10157000FBB3C31A5BA5AFA7DCBE684C41EB142DCF +:101580000A9943F35DFA1FA908FC25F9F8C1B8C60A +:101590009E749AB3841755700D3E4C83B0D81D5F6E +:1015A000D0B804198BEED0465D43FEBDC35025B1C3 +:1015B000042F64581FB2F8C3BE4EE08FFB3E69068D +:1015C000C5FFD3B989E6F8FFC0A76968EC0D77AE0F +:1015D000D6AADD5B2229E3009369C17C1999902B7F +:1015E00087A142AFAAB45BB532AB5F8036781EC02C +:1015F000B4B37DBD8AA6B9CF577DD291ED18FEED6B +:10160000D9CBA4EFD8E652DEBCD5F8446F5B0335E6 +:101610009B323BF511BE736A63F2EA93F1DBC5D3EB +:101620006ADB6D6C5290E74CB5786092B443338EB0 +:101630006512DB61057AA31A55789A9BCA13B24FDB +:10164000861BFED7045B2BF965BCFD7D8F891E8947 +:10165000638A238A3142925D3CA1119F328711C176 +:101660007F5CEACB26423123BD18A57197C9E5C539 +:10167000B0CFED38A5887BEE88E499C648C4D9A2DE +:1016800043BEA3E464A61E277A3381AE1AD92ABBCF +:101690000C254322F469B9319668FE37C715CA3361 +:1016A000A4646DCCBA84CE57E81C0D10CE09DC7250 +:1016B00090665921AB9CC63DE313DC03C2AA4819CE +:1016C0009B8F330F0004F2A5F894425F18BD82632C +:1016D0009223E937763AAEFE63E03C153A31BD011C +:1016E000F290B04689579A2AA92739A65B3CF2871F +:1016F0008B2A1420EBAC6F4FE7D1E49D0998842727 +:101700009EC0D69D743B8D5399EDE796C7C093FE5E +:1017100013EA8C27F9D4A172651AA6B8373C823136 +:101720000F1503DF3DFB6AE018F77461C32F46080D +:1017300063291B520D3263A61423F15436145D81C4 +:101740001DC972474080F2E2BB27E420F28E298453 +:10175000098DCFE8DA05B124EC15BF86B65E1D1EF3 +:101760001CF0416ADA93A2EE2A3573EA067D8A6D8F +:1017700082FBD23A5888F7011B3183765D5F7B8B01 +:101780004FC1B28D9FF0914A855BAAE7217CD84476 +:10179000581D277738BB02EF7B888F15F44D9C19B5 +:1017A000C869C7D5B7FEBFDE9235E1C78966BF629B +:1017B00093A2E7E0EA8AEBE239F293DA4E1770ABD4 +:1017C00015FFEB7FC3221C28F81701D268A0FA5E30 +:1017D000D4C341691EB5E8CB3521A8BDAB9A17D259 +:1017E000CFEB440582F8165E333E3CF55806C151F6 +:1017F000B3829F61A5BA64FB776ECEE6D95AD34413 +:101800000EA47C1D0D5A31B73129D7F0EE7F94A478 +:10181000363EA47A023A56FAA6D8D1C7B73C445B02 +:10182000C7A6B5B06492A7FBF05269E9AA2C18A02C +:101830003E7D50751601AC37401CCE2A1AE3988CB9 +:1018400049CDF436B588D0172B679C405E1CFF6DE0 +:101850004A6FE0411B93C1E255A01F82B36126ABE2 +:101860004A8D13BC31F2865AA2A38EFDDBAECCAFFB +:10187000B4BB86CB49B80F1B015B1A342E5A49A959 +:1018800048F24691EAECC70459879ADEBDB5693E35 +:101890005219F111F57418C2846642BAC907751558 +:1018A000C6B7E9598D25730ADF6B9B3926F1E4C26F +:1018B000A8653590C24F77BF9F62EB9F986D5DB072 +:1018C000CEA10505E942014F82DF4AA40AF357B1D0 +:1018D0006B3198E176DE761E30B27ACA70E9F06537 +:1018E0000AD2B1DAE9328A1597835C496F9025886C +:1018F0005EA6E6193BCB217C6514AD9DD6A70B9E59 +:10190000BCFD3ACC16856FA99836C557458A56F462 +:1019100028DEC12E19CA36924D35E8DDD35A6293BE +:10192000304F121648722704DD8CBFA4D8C7FAFACC +:10193000E7FACCBBE7BA603787850CC68532E0355D +:101940009BFF3DF0F768AB154D0706B7B2FD89CE9A +:10195000C16D20E6E4A57B7F0372E2D69D1224F3DD +:101960008531ED5DD495E5700E3D613FE41DDFEFFF +:10197000BDE3899477A502586E0F030DF9B837CFF0 +:101980008E8CF89095D245CA12D61359DC2732F3C3 +:10199000BC9B0670EA8E6B039F8DD2879C4929877A +:1019A0008E1B2777C305BC36BAAFEB117ED5AF6867 +:1019B00027F5F91B1FF2C07AB808BE9E414C3A4881 +:1019C000BE69BCBC5F5FC1499FCF557D16175408E7 +:1019D000FEFB92FC5558189078108492C8B046FBD4 +:1019E0005ECA51F5D8EEFE462C66B79EA3521F2163 +:1019F0006DD9560AB3B5624CA3A727B81144647BCE +:101A0000B1FDDD2E1FAFCE3C9DFD3DCA278424D302 +:101A10008CFB6050011D98E4F9DA0474D66B657E86 +:101A200038E48CC9C590EA7AD04792D882AE7DC39B +:101A30009794B17ED7056B4BA1308BD6C9A3981D67 +:101A40008DC907367DCF7C41F6E31B19F3E8A6204C +:101A500004B02F33405744CF865EB970E4A770D3EB +:101A6000CCA0BC67E5693A6E741FAEE025E5C6AD53 +:101A70009D047B34301EE9F43406EF5B02EAB8EAD9 +:101A8000AB316149F6FD9EF9B693FAFFCC251B46B2 +:101A9000068B928AD9A7857983510CF9B2760638DC +:101AA000F518454EAC8AEAB46243BF9F7C9091A280 +:101AB0005F1F6870171A0B045EF1C38C9E86821B31 +:101AC00036D1198AB70FF2DB93F3F98DBB5B227124 +:101AD000F194172DEC443F6FC39157F30EFAAC9776 +:101AE0008D5C8D1CDAD8B4C004D29DFE710943858B +:101AF0007E18B20B2B9DB90BCDD87F1900E3A9241A +:101B0000AEDAD5A7D5D9AFB09B2013BCAA991DF3E7 +:101B10007D0E0ED96BD91F8FB8FE114E6365C2774B +:101B2000084B87DE3F176EAA480B4BEDC36D845FF1 +:101B300060870F699C332F6B9100BA071CBD7763D8 +:101B4000FA7C524819A5D0B2E621F3D475BC8E12A6 +:101B5000B0D20E1BF72B655D2A9696F516AF7F4D1A +:101B600023596CD01BFE20D7F655905992EF3D2E8D +:101B70001E6D203116FB27F073F31B93C0C921D9CA +:101B8000D5D70E579FEBB6A36828315A9883FF83A9 +:101B900079738A360D99025BC2D67528FB6EB5043F +:101BA000926FB6BA66F6E283BCF73A728E4EA00A1E +:101BB000BA9B2C26FF7244D86449DF878640468D45 +:101BC000044834F2E78E5596D5539A46AF9FE555B3 +:101BD0003AA5979C9DF9C7BB6090F1B7B752933C6B +:101BE000D617D4935741940F0DBA216869BF787AFC +:101BF00087FC3CA809E6E05F244665DD552829A955 +:101C0000A86ADC5FBE1BF7DBC9FFC11E5D1B29DEB6 +:101C1000E8C072A1519801BACB4CA97D1988806E99 +:101C200042ECD2B6C58CC464120D193A4B145B0C4D +:101C3000E1FB9C53117812A67744157330021E8085 +:101C40003270EC4345C93FB83A03ACF53BB56A4C3A +:101C5000A1F670219CEFBBA84862E42ACACA543797 +:101C60009D7DEFD02408B803211F2D827447859EE7 +:101C70004B7AC6B7A841D1681CDB07B30A2865D5E3 +:101C8000BAFA57AE3DBADAA0641B6A10112A35764B +:101C90000B462B57176231D0ECD2B44EACB154D1B5 +:101CA00087CA77AAE2B90F3AB8BB764F1BCCD3AD3F +:101CB000F6A9EEB0E511B30E0E59A7DDFAD0367ACB +:101CC000093AB4294D04119A383FDEA12A86BC474F +:101CD0003BAC7E40E2BF295C774C3AA72C611510E3 +:101CE0007D10E06D4BB4E71B5CF6FEAEC6DB999849 +:101CF000838CE0260D23BBDF49E5CE7777409F8FAD +:101D0000B0F0A4CC03D5A927214E171E1F929456DC +:101D1000CFC26F8843240D90FF48D12F21B1071FF8 +:101D20004D523B95310A74C274F35E2CC5956AB767 +:101D3000E5D88C518E9E3FBB6BA436E8AAFA2918D1 +:101D40001430CAB79E174F5C57B9914AF0DE63242E +:101D500054EDB4E0C038660E17947F34266CCCCCBA +:101D6000C9E72CA54E784D4FC6761EE4DE909E63E3 +:101D7000D5C6B13EFA7F719FA0DB25151349A87225 +:101D8000C93BAB3F4C2817123A5EE7B161DA08E96C +:101D9000548EEF4B063370BC1DA3FCEAA9BD76E858 +:101DA0009ACF82F85F5851FF00D21C3A298A38F442 +:101DB000C2DE58BBD274D812A489D91BB2A70B704B +:101DC00042AC8E4909546451C4C7D9A7445220DF9C +:101DD00049FA978DE76BE30503C970E8C14CC46706 +:101DE000908D3FF97FD3CB995F1F489A13D9ED4867 +:101DF000B85E6F061F564CB021EA49D04C4785A506 +:101E000091D0E0849D6EEE4431353FEF8F41441E0A +:101E10002F8ADDB6D8EF87120B7621B29DF87C6948 +:101E20005E5D6EBA54307CAC9FD4CCCD13B30F56EC +:101E300053F8AA363DC71B58A453CA6B5ACF0C544B +:101E40003C23F8B1295AD073AF745A189B1DBFA414 +:101E5000B303DCB81954B0F67A70AE22BB8E397F6A +:101E6000EE4D49B7F2B83D9A530436580A8B65BE19 +:101E7000B1D1CCE26B559EE72A8991157EBFDDFF7B +:101E8000BE7E7073A33E7749D187989D32376980B3 +:101E90005A3600A03C1B46808FA3C573531360269F +:101EA00098FE5E5EC0EE2BFF9AAC17B10CF1B5EF59 +:101EB0008F0ABF4FD85FE48D23786CF28768B20D2C +:101EC0009EB6FD47213AC52BC50FB20CB63569E861 +:101ED000602645FEA01F94998C0E803D2EA6366F7D +:101EE000B453B538ABE2A6CFCFF47FBD7A8FC188AB +:101EF0002C76CBAD51F58FA518515C2DD4D9A5F812 +:101F00002DC0812FEED9DE131B216D65C61DE9386A +:101F1000958985D8C8B2425B23CC8AA69C1B8A3F90 +:101F2000A00433ADDB9B63694FA0AF276EFFC41ADB +:101F3000B28DB7A9A7BCA40D7EA9DA450E1E730900 +:101F4000A063DD48304B121D46157A83F237DBC49F +:101F500077025FEEE6EFDBDC71A5DE2BDA38D86FB7 +:101F60002FD6B0936C3AF3766E183E49802AD7820A +:101F7000C2354FBE2ADB432A98D9A14D3B1080A918 +:101F8000F53D6BE89E703CFD2D08D96E32C89DA4CE +:101F90005345CD8371E22C059EB00D1CB05B6EFCE9 +:101FA000EABD2007B156AFA9A68BE2DC1507D2D156 +:101FB0007AD7F8F59B47A84BB3D5DA9FB3D1507DBC +:101FC0005230A2FC646850A731080985B286A93F47 +:101FD00061A6104114011464A8D3CF9A01C0877C74 +:101FE000F7697F6A23DEF5C766845DBA4B4478E300 +:101FF000E79CB0FAE3DD21777F2876EB3E170DBF33 +:10200000A7F9CCCF771DF94C66F3D28F1F22357B11 +:102010000E21CBFFA550E7E1CEDD8AFFD2A11B3A0E +:1020200001A98B43F13D7ADA4A4AB6628A38880CB4 +:10203000273353E46035B725AE417575B5945E20FE +:102040004A050567FA9A7AA5C108C33599C3F738D6 +:10205000D13BCA0ACDDF13D7BD47C4FE054062FBA2 +:10206000688B8FF38EA3019561EE2BD2770AB05F58 +:102070001F8FE40BCDA216E85208A19001AC63BB00 +:10208000301B0D3744F1A23353F899FC27FC8D47E0 +:10209000FE2A7E9FE24FEC1158227ADA86AEFCFDD2 +:1020A00047B24F946D263770EE139A57319E30CE5B +:1020B000A31792EF166329B7152D197F204558698C +:1020C000E6534770507EBF569774BC8320AF98DDAF +:1020D00075750C62EE7A4A922876FD69114E12559A +:1020E000A55C2341BED611256A47418BA1710288A8 +:1020F00054ED9C350F1A83F1B5D894961867F90DF5 +:1021000071631ED791D3680F7A8422313E887E7D19 +:10211000F4990CAC2A7EB2CC6BA40203F906B88207 +:10212000478282EF17FDA97FAE24BFCC8018A7E6B7 +:10213000465FACFF0889FED5A929BAA076F03C26F7 +:102140001E9C5CB04C18610127B93A2D541AABB0F3 +:10215000B94AE2DD8B853C164CFCB6FF9122965DB8 +:1021600052A34B456632B6F7A650E5FA9AEE76AA28 +:10217000631FB1F21088353B29DB5518B1E8923066 +:10218000C6B4FE66091FD5D655A7715FFD67D2207C +:10219000BD73585783A03B516261A3CACF5B2D55D5 +:1021A000DF3654974FCFB1CB98E048FA707A025798 +:1021B0003FE117008264D3AE93E99627C0C35BE684 +:1021C000011F06F21EFB7886A7328A2C6EFCB577BB +:1021D0004CFDF6401418CFC69E3AE4BD6086C65545 +:1021E00057699960EFCD5A7F49242297F4A2454B55 +:1021F000E61407BDE4CE9634EED4C99680E3CF3919 +:1022000090808B6D74F024AFD709A4EA0D92123C34 +:102210007291A1CFE7001005952EE388430CDA1FD9 +:102220007EC3E83E7AB0FE5B06F6C03841AB134988 +:102230003D4D6A3BCA0E6040D0E9F3A17F95AC31B9 +:10224000420E1192F5BE5CA7597BFB7FDCCB587820 +:10225000C929B04CE9904C913F83A682C90B6DB15E +:102260000AB67191E397722B8433CEF941FE8CC686 +:102270001F1E363990FBF668876CF0C4F097A28772 +:10228000DDCDF40C3799612414955D4D2D9E238787 +:10229000ECEE2287C9BC20EE01C2E284C847526638 +:1022A000162E7B2A3B91253B7DFCED9F069CE3503F +:1022B000E4CEB8054F07DE0B3DCB38A349FAFAFD53 +:1022C00004B2CC4B14D032B2812FF4842A6AD09D50 +:1022D00012FA866D1771D8E2A887861A81FEF20776 +:1022E0002346101AB86EF1D5FBC5C4F97A0DBB8729 +:1022F000CA118B7EF3AEA105A520184678DBB3A7E3 +:10230000FD47B3DFE7AB81B90B968D709AA22B2600 +:1023100028773BD1CB65A1D49F6BF2449C80ADC79D +:10232000913FC810D0631FB6FAF458BF31A62302FC +:102330006C675144AA594FE085E5A543051FBA755E +:10234000C4B152B49CD10A6A480B139EC62E26997A +:10235000FB497E5E2B95585AD2E6A79CE2D092B6F6 +:10236000518B27A127104610869D1D2297CAD02386 +:102370007EC47E9B4D0BECE38A9C3F5EC75C9369F9 +:10238000C23C672AA95DAFAA869242856EC86FE6F5 +:10239000D596719891FE35065E3958FAE3C653E733 +:1023A00056E3BD1EE61E187E667F41FD8CAD9DF393 +:1023B000A07718225865C953DCB95F01A67552AEE3 +:1023C00067993747FB46F8426739A238EB50D9F492 +:1023D00007DC16B253F3FA071FD0EF4DE11A598C00 +:1023E000658735FE6CCCF90C2BAE564482387D6285 +:1023F00073568EFC4FAF9540E2E8C051C09201E3A6 +:10240000B0D1FABD123C51AACBDE4DFB4BCF2B9184 +:10241000465797A10329F1D64513F14957C2C4F194 +:1024200067CD78C4E73C21DB74B1ABD3A658779273 +:10243000290D4AC7F34061BE27EB7EA86804ECA3D0 +:10244000A19BAF9ABDF2BCA3D67BA24E05AF85BFC0 +:10245000E1E61EFF147212C4DAFD7B235280DD3EDA +:10246000292D33504E189450B8E5C5F9E527EA40B8 +:1024700059693027819840B5D05FDC6D7FE55E7388 +:102480008B1D878DB98F173D27C2A9EAC0D877DB8E +:10249000AB5F1F8F331508208BDC009E369B73CB00 +:1024A0007675755A38B40BCA6929D88F2293AFDE76 +:1024B0003DC0C633756BE20288682AEF6EBBE890B8 +:1024C000F7408B6D855C9D675047CF298306811748 +:1024D000A89AD53C577CE645FB43ED9F69D0452E35 +:1024E000719CF757780434D86BB2D498709AFE8AEE +:1024F000855AA644575DEEDB394BCE9342D6B63DA6 +:102500008FBA2616CC4F15C095EE25E368C84ADB76 +:10251000921102F08088AB9ACFB2C46721E41647CB +:102520001AD57BB70CDF99125F08FCBB8BDA5ADE39 +:1025300050801EE49A5B3F9C94E11A42CB2801A58F +:10254000F408B7DC2ABFD43B67333005CDC1AF5E9A +:10255000EF95DEF43F5DC89F578E8BE3F58D3EDA35 +:1025600019429E32D79F3461E8F1E5BE20D4ACDE3B +:10257000BD71E1DBA5601AE48797724E77EA601DB2 +:102580006D6E39FEA5DA68BF2F8EE755C78B984C64 +:10259000E68E0E589D8246286BD856785C60C01D2A +:1025A000504C26F5DFEDBF880BE673FB08683BB2A5 +:1025B000ABB7F5AF6FB9213BDAA15B379D3DDEB01C +:1025C0000BA8762422F18286C32319268FED83502F +:1025D000F0FDFE5D27A59D15A7841A72A29E3D936E +:1025E00015392E19D4E3FF3068B332AFAA86869826 +:1025F000DEE091D89FDD5C03126E68E96E174D9D99 +:102600001CDB45C1492A1EFB67D568FC3F1A1DEA41 +:10261000D176277978BCE21D49B28D3961CE6456F6 +:1026200013314BA4A83AEFAFE318A82B9E1823113F +:102630000D5F72F67FD88651CF8E22CE32041E8473 +:102640008A85F591E638901801B21661C2ECF25E07 +:102650003CD087E16A1851320CADADAA18E9405957 +:102660006DBBC5494F8B4DEB0DC937D3D1A61AE3CE +:10267000A8270B9BE27F5F300BB43718AC64E2A74E +:10268000E77AF122CD6C5AFB354A74A333F5A1B138 +:10269000E3FF8A1244E8E93F8B33F34C2039FF9F74 +:1026A00036C1F248837B8EF46AE2F557F89702D47C +:1026B00056BF8FAAC58B1DD8F3A046ACB64EFFA05F +:1026C0000FCC8B3CAFEE9F69ABBECB980060D71EA2 +:1026D000BEC76222ADB8C37A87A009E5503741EE84 +:1026E000FD04CD2725888239024FE18F10C6F57E83 +:1026F000F6C25B527D4A43BD8021BDE13997FF366A +:102700003F27455E41DCB76B2B2F3565C1920889A9 +:10271000FCBD02ED5BE97CDEF45ED6920415CD656E +:10272000611966BCB2EDF755DE486E7F8948D0A2CC +:102730004C24108A9A8BE412FE2128ED6233929881 +:102740005B89D6293141020A0BCB4C1177320E5EE0 +:1027500004594BF4D07D50E353A1EDBD10A615C52F +:10276000B44B1165864E83ED23657FF1611E0367CF +:10277000EDEF668A92957438484EDB99D28AAEB2F4 +:10278000F3FDAA65993D7443AD55EF1476DFB0189B +:1027900026F7D25DC8BC6EE0C40336CEB487404392 +:1027A000BB16C6948DD192DFBAD51BFCD23FEE7D0D +:1027B000D9B5E4144E99786DE9B19164C03965D109 +:1027C0008129DFA68605B80FA82BCDBB73EF184C67 +:1027D000C3C052035CF045F106C3FAE7FB13873729 +:1027E00014295AA1439462C2BC36A05E3802F3C8D1 +:1027F000FC39F80B2164DCC10B97D9C27F8077814B +:102800000563015E840933CF765F7447C3C53945DC +:102810004475517B3995116508814727FB6DB3528B +:102820005268FD29835A1EB20B97E832D4C8027F42 +:10283000F9D35A708FA23E59735DC2660164478313 +:1028400009AC90E40AAE01EDECACB65A3FE3971444 +:1028500092C0977324C6B3E40F8245E509F566BAC2 +:1028600043D7BEFBE53169AF57CCC06B92FF333025 +:1028700069705249A3C89776EF12AE231E1C548E7E +:102880000A824862C68F290BB692D43F657D3255C5 +:102890000F587DBE6A8DD58D1B51F6466DC6E30877 +:1028A0009347397776D240C01105A6F7C372DA3F55 +:1028B00037210FC60BA70E8E001FDA75319A87736A +:1028C0008B720E993CE120E09C733D179AA3EABC01 +:1028D000075BAD602391999980018277531FD8627D +:1028E00038C9A6CF3920AA0DAC9A26DF5E190E632F +:1028F00021C7BAAF5188255635632FF2128FC220F7 +:102900000D6878DAD1089DD90C7E3F3DB2FCE37B9F +:102910001D2FBF0EE49DEA0CDC7B1FA7416EB51591 +:102920001E95F32C2A121B5D39B22425303C1EA2C1 +:1029300073552E5A54D30A60528E0032F4B53A5E63 +:1029400056B0EA3820E87E2B94B547EAB87D8CEC87 +:1029500015872745EADB463F9EF5D8A9A090FC6184 +:10296000AC203297FAF2013F7DB9DAB03A3C2CA59F +:102970003DD0D6DE86A20D7399D6CD2AA85C6D3ADD +:102980003A3F299B4E2A0F09C8D8CAFCE76827702E +:1029900016DB0F5BE3424A194B16A93261DCC7CB49 +:1029A000FA6E219560B094E7EA21B8B6D735E9B25E +:1029B00040C89F97D08FD91E5E0CEFD1BD9E0AA153 +:1029C000FDA42429E0E63E87C543FCAEAE6E4EF181 +:1029D0007B3321D4840702651D68501D4F1B326B69 +:1029E000CA0F88461EA672C6460B6221C53AA2517E +:1029F000051D2497D90E5BF95D26ABD685DF3765BB +:102A000040B9C7763525256153676DA6CF1075B4DB +:102A100023574B03EB3DA2207B3161DE1459169FF7 +:102A20000EFC4D589FD11CDA01A4C8CB222F9F8DDC +:102A30002439CF9268F3943D2CCBA9A415CE071C62 +:102A40004779E83909C1A7A89DE4D9D73747125E6D +:102A5000EA38182D81B7A79B42720AE3BE1340D310 +:102A60003CF72264745D9D3E56C19032170B3FA81F +:102A70007AC7CBA3813E30F3A01E0BEE9BCCD7834D +:102A80009BF25C33861E12AEB48C606E387354C3F6 +:102A9000E11052654BAFF38B9F783E94B1EAC84882 +:102AA000EE30F4CC176AEB5F7EA13DA301A374ACBA +:102AB00038E513E49EB76564F2BC83D2226F05DA71 +:102AC00086A9066AD3D5DF46223353E710B91DDF46 +:102AD00008DEA90C77C72CE8702907830E22C943AA +:102AE000B5DE6AC8DBC17F3C92C6E9E708F50DD5C3 +:102AF000FC60EE2D47CA4DA148FF92999048F64FD1 +:102B0000449E3595B2D47E4DCEAF4890E9A6F6FEF0 +:102B1000BD11087CCC2F3D5FDE49EF1CAFA8809B28 +:102B2000712C669418B461F30DCD97B876C17F1EF1 +:102B30008A759641E4E6BD15C6319FCDC71A7D91D1 +:102B4000A477D3D7A609829A8DCBE50916C0248F26 +:102B5000DD547C519B5A21AECA8ECA73162DB7F72D +:102B60007EBCFBA0F5753C823860803335A38D6D4B +:102B7000733A9322A6D23E7E69E275E5A94B01998C +:102B8000C202AEA82B9CB4CBE36AA179355117A23F +:102B90001A8BE3FFC5514DC78A72E93168C59DD0D4 +:102BA000FC6958AED1B30A08843FFB46AA5EE888A8 +:102BB000C52B664F6B26696448BB93481BDCF77BCB +:102BC000FF57B649A9D4F4688C85F01DB26523116E +:102BD000998F296BA08B959B47685530779173929D +:102BE00093600F8A9189178A957B7DF1F43A66503C +:102BF000BFC994D723DE0C825D1B0C85791D6B2E1B +:102C000040446A84819A2AEFFEEA07F5D36FB33D08 +:102C10005CCC71A83960E74541CFB48A21B1BBCB08 +:102C20000A6CBF1CD251F990A51D1BD1F8B73A4FC1 +:102C3000CE0786FEF7F30B3A63D24E4F4255078A12 +:102C40006F543292BC866B15CCC320E5736E8861DD +:102C5000C5391C7A57A6F94CB29AF74E57FAE29F3B +:102C600002323E952FAC4BD2B5E5A076E725CBA03E +:102C7000697447B03989BE6E741B1228875CBA2EFE +:102C8000F72301F63E7BD9EA183CC5DE0765D3DBA6 +:102C90006DB619689C34AB4BB73D34F3313AAD9EF9 +:102CA000055BBCC0B0376923A5F6755144D6C5781D +:102CB00092AAA5339648DAE2B87F6E9B2FE641CD03 +:102CC000C6C34C237F5BE7E9B6C5C1627DBE9C6D80 +:102CD000364211CF7234AF7F418116D8362B44DB98 +:102CE0006F6E780058A2B6777F00D97CA335C6C333 +:102CF00041846E5AB8E082F623F88509DF794749A6 +:102D00001856D0188A3A1606CF706CB06E675FFFFF +:102D10003D46F5B67931C251DB889CECD405EDC84F +:102D2000B93C18BF407DA9B9D175932C2A891B1ACB +:102D30008A3803B07D0EE3D984BD8F221DF3023A99 +:102D4000EAD0B9F7A730C22589D14BD1ED9D31A387 +:102D50008A8AE2B8C29D647D578523BE196E8FCCE6 +:102D60006B06738BE99277E1E606473C9F587DFE40 +:102D7000D2B9ECC7980A76DF09330D912B7DABCE23 +:102D8000F14CE28E5AD5D9AB0095FDD4EE1B5282A0 +:102D90001822F3A4A9685D35DB1F7E904AC6B8D31C +:102DA0001CAE2460B34148499361D0EC273529DE3D +:102DB00091B492B626BA81FC4DD18603F78DFE9769 +:102DC000B73AE5990F198E8CF7231160CA9A4C1DFA +:102DD00094F853D29BB3D31A3208B5C7E07AEDEF1B +:102DE0007F11887F90DEFF1DBB28C156394B1A73B7 +:102DF0001A921FF5E9DFFA36F87CE8CC48E232494E +:102E00000F81B051E1EAA00C5E71EC955240FC0ECE +:102E1000888CDA57E8F92606F4A8C0062495A73F5F +:102E2000ABE6897425166A24CF2A8363C5EDD49D49 +:102E3000E5A7C3DC3249AA728CA7736C22D654145E +:102E400072A5CB17BB478CFE21D96F4539961DCA99 +:102E5000F13C3C8356B0C4BB509AFC5989514C5547 +:102E6000515513C594A4A1602EF4BDE07265F2041F +:102E7000D18921405783E787A78FAB51FF577766EA +:102E8000E5B3F4F401D79EE75C116D575F77310B22 +:102E900090B7004A91386DEB933912D5F9119AB277 +:102EA000891BD40C1B882D00809906E4E960263428 +:102EB00023C254817E3CDE230820431CEB6F164D59 +:102EC0002DD23807045B36DEAC0D0487A27D9BB49F +:102ED000FCE8C3CF37DB98987C98DAD4FE6509F814 +:102EE000BB6F04F19AB96269A2EC92D97267005F74 +:102EF0001D58FCD7C3A510254DF6368E422BAD5B71 +:102F0000149DAD9839A72AFEB01A9B3047911987B6 +:102F1000AF288452B8C5D30BF015F2BF099728E942 +:102F200086A3E88AF773C876CA1C78F62EDC5B277E +:102F30008D34E641B43B3906B1FF582E7914C413E1 +:102F4000DF51C796EB99F54F840124B82CDE23A4FA +:102F50008496AD9E4D21A17424A8ED25675AF5FCF9 +:102F600055099083F4892ECC949EB8905541AD8339 +:102F7000DDB316D053E0EE7F6FF8E1F618D3A47DF1 +:102F8000E4E25B8F3AF1F82F6BEAFD18CE41CE8870 +:102F90004C8D1FFECC92CBB0006918901223EE36F8 +:102FA000418E6DE044DFAB2EE0BB1434F924B877DA +:102FB000F5FC42442FC50A88E7E002EF1F39B40E42 +:102FC0005F39245CFBB17EE8FB09AA91125AFF4EDF +:102FD000A8F396F0A65690D9C128E8CB581CFA342D +:102FE0006A5B89265934BEB6DE3E244DF95A524EEC +:102FF00043D1BEDCAAC029D2BE7B443CBC4C1AE4FF +:103000000D6568E5CBD6EF1F8DFA077A68F457D0C7 +:103010003177F75452A2AEFCA0E970DC82611DE763 +:10302000E393BC0DB81BD73867CA2E2055D72EF1B5 +:1030300070C007149D7E6CFAB88171ACDA437733A7 +:1030400069506641BE391EA4AC516E42D75BD0298F +:1030500058E145DC74508AF307BAACAC33F6046A25 +:103060002A7F877EC922001C8CC91817D8390250C4 +:103070005C7067F63CC95D7E17C5C20036ED65A37E +:1030800091AA18F070DF89BDA76CF5C600C6E56A85 +:10309000A0A2EC4B93A0AB0CB9C7B7526AE022DBFD +:1030A000D11D8F06EDC8A180D23320BE282C20640C +:1030B00039113EFEB7DDAA60532A746DCC8D4CA049 +:1030C0007504FC8CFE8CAA61A9E7E24B825BFECE04 +:1030D0006B8545428381869B20DA5383A0223F5E25 +:1030E000A09C5CE1B661C15CBAA5B64AF3EBF29D67 +:1030F000FB8E3C9D86F4AA8A7D6A968594935E5EDB +:10310000BDD581F04E3897710095579C81E1A29A08 +:103110001F507EDCE7036E38F26645CC31997A5356 +:103120002A9607F175CFB0AACF5DEB2D6FDED7AB36 +:10313000F6D10F84761E4E49944C5CD35CA940E5D1 +:103140002D9818377EF3870680516A8183E403EA5D +:10315000D5965BA1C126D5845E45D09F31F28DFC0A +:10316000B50B1EBFC9D62E2B7FB8DE16B5A7DBCD9B +:10317000BA852BA0FFC6D4595600CF1089403E1CFB +:10318000364EF2811ED8AB84E7F7BE1B7B26B120FA +:10319000ADEB8A0E6BFE472A4BBA6DDC94640FB61A +:1031A000666E315F4ED2853310B6759CD6A05A300C +:1031B0008FACAB254AFD53D0B1A617EF9D83FA0A19 +:1031C000BD5CA9757B1B62FD9E0217A8B8E02A9A18 +:1031D0001C7E7D29927DD0C3BC5055D4722684C0FC +:1031E0007A6FE403E041E3F3905B2C1AD1D4F51439 +:1031F0002470B9D171229ECF157C98675ACFC43FF5 +:10320000572BD17171FCEC86635EB9E9CCD7C6A4AB +:103210003928314B3F69CE824D12500643FF801151 +:10322000E32FA7ACCC5203561727C1E686FCFE312C +:10323000CD4B19DFB16B82784645F32EE5DC777A0A +:10324000E2BB67CECE656DD138E3DF1E9B05E4544B +:10325000505BA4B5724B7DA1D61FC5B6970AB32AA1 +:103260000B18444A7DE2C5668CEA3D048D58BC1DAE +:10327000D8A0C39F8B7993FF26E7095CD17D0A48CC +:103280009E52F4679D6BE7B9671F0A7245F13A8455 +:10329000B358D02D855336B33C45A96FBA6BB750A0 +:1032A000D85687A372EE22AF611FC473C1A4AD1EAE +:1032B000FADD1143DB7180B5A80D9E522893C348F7 +:1032C000E661732C8533347E0695B75B926488F68D +:1032D000EEA0B0B85094AE3C1C477A89D35F293237 +:1032E0007BE000958755A30C454292DDE2BE5EB3BC +:1032F000670B9A991C2ABA525CE8A0654E1BF676B9 +:10330000B0FDEFEF1613A20713E5DB3D1885A68984 +:103310003B1928871FE5633AB531842411DF8353B5 +:103320001671E4070E20760D37E26338127B97386A +:10333000F180A2590326E00FA640F42937C10638D0 +:10334000E55D3A5CA6FEA6E87225F8026503A414C2 +:10335000BCF3072D5C03E820A8151F59A152C2A099 +:103360001610DA9C34C3036C8A384F21CF38A7A1DA +:1033700063D6E6199EB4576414BD53B50C01F86BBF +:1033800063F401572C87E7CE73EFD263E179A7C1CD +:10339000F7E8D25DF7FB6A0074D711FC45A5F06F22 +:1033A0002713D8866D3BE8332E0AAA2B0EAF0E5397 +:1033B00087823DFDF0893520A8B34AEDAAB3E762C4 +:1033C0000BAC16079FC4562A36FB78068B0164F0B7 +:1033D000157421822F9FEC1AA722D2732D283FFF4C +:1033E000C43F78879BE4DB06F38B28F9B3B2A9C10D +:1033F000DC23C0F53A948F9F161F10FA71D4549DA8 +:103400001306FB089D646ED8605B6F44B2A147A7AA +:10341000D85E4BAD215960E43056B4A529FEAEF418 +:10342000384422F1E4C00C22E0B0E2CF33844EC233 +:10343000CD1CFAA3832F1BC3DD1C7F76C30558A1C7 +:10344000E1F751BE975DEB99647D0023F95D7683CA +:10345000723444E8AFE5A19CB95B9F447E91AF789C +:1034600008D729C8E2E115CE249828670F440199AE +:103470005E1148DA001B57A0DBB4B542732D62FB26 +:103480004547A30186371B1758A09B44A7821E45BA +:103490009C28C2EE6EFB8DB47E826F9D52AACF61D6 +:1034A000828AA692905FB5FF01C827D6AD81E42E2F +:1034B00056D3F1B12B950D91F652AFD60371385812 +:1034C000F4A54856A0BB32B2A277012A4DDE944142 +:1034D000D7BC7BB83349F1B2E4DBD09D0310297A25 +:1034E000DE9A99D5EF81D59B3917131E86EEC32C32 +:1034F000C223AE0228B674FAA608CC03F948FEBD72 +:10350000E4A44ADA39A233A63AF1A60FF6DBECBA04 +:10351000E3A993677BDAEC878016150D3E8C878FC5 +:1035200085D90434137162CDAE675B9290EE85BE8F +:1035300062A9DD5FD7719E45BBF3D0354BDDE30457 +:1035400021057990E57379C13DB0F45BD5B8D18B95 +:10355000941F40906FB596BE983BA068346ADA5FBE +:1035600059ADB6C904CAA8185C8FF2540CD167E1F2 +:10357000724429F9B116A3ED8FA1646BB48F145A6C +:1035800031E95D4E0BB5ACB38E91EC7D3FD8BBDF1E +:103590007C50979032BCBD15C4F5AE9CB016E52D9D +:1035A000B30EC8C250EEF4C1F10AFF8D0DB5501F25 +:1035B000CA4A3A152AF2EC475C79179B5AB66BF85F +:1035C000ADAB4E735DD2B8E76825AAA14C4D3A2B3E +:1035D00008E95B09B86F0AB074B4BA1C371C8BDDFC +:1035E000D18BE374550A5A272CE38766D97A69EDA3 +:1035F000FB9EA7B44170F04003DA06E1994B3261BB +:103600006E6FC1B3E6F9529FB1BEDE6564C0D5CD21 +:10361000D8D326DC979F82AEAC2E49CC2C05C5D5DD +:1036200002F0ECB97ED48AFF8C93ED49B0A73BE25F +:103630001EDCEBC4D873797FCA93DEEB8612D243CB +:10364000F6DA5DBE9F9E250CB0D4032CA736446CE1 +:10365000222C0CA4C24A4EAECDB8C920275A8AD516 +:10366000B70DC838A958B26EF089AAE6BAB828D9F9 +:10367000806297711662A80E1DEF651FF0E56C2B36 +:103680005771C8682F3D1B81A196B5C9048760A8F2 +:10369000E54EBAF0196BB6015F6C752221CCAAF524 +:1036A000253278F822B0CEDC0C70DC0EF808503AE7 +:1036B000EFE38CAC73DE329435F395E0E5DCB48552 +:1036C000472059A2F02BBB45BF9C2B8BCFF19F17F6 +:1036D000D1D6C42AA71CB8E34DB1178FBF90C34EF3 +:1036E000A73315FD750003FBB72A4AE57B8E3388A7 +:1036F0001F391E31F8137D4F19D46992A815F6D5DC +:10370000C59330ADABF8D68C6313C96D166E5B7A7A +:103710005DC2B56FDAD03B7B59FA7F4C0B0FF68850 +:1037200062F07F6A912209F2C3432686FE3079B2A5 +:103730004DA6AAE5FD3E781D0E163BC54493D4CA9E +:10374000D306E6ABF8E4EDD5F200671F6D1C5F1100 +:10375000F2497729C3D856B376316531E70B6DA2AC +:10376000A90CA9FFB9DDF50083F6138802FF2B0829 +:1037700062858B0450ED40DA359B19F6E2BE18D80D +:10378000AF7F4D3E5E2228A45E10EFA5913A2F8AAE +:1037900087D9C188C289FE3F12AF14C8DE9446891A +:1037A0002729C4C50166CD3A1919BDEBB04DB387C1 +:1037B00052E9E7C86E7D269AF5237A9E6D92F44908 +:1037C000CF1B4937CFCF6EEB8D187A22727FF7CBA4 +:1037D000D14C3B57FE1150A8E57AE79D5A3ADD25BA +:1037E00074DA7B07B0B5262DEF85EA8D31B2BDB016 +:1037F0004002A88E9E3AEB1606CA9F466D3C460FC5 +:10380000DF556692A845A7548DC42111DE22132EE0 +:10381000CAA2BC8F24BA543156F19529D3E409D0F9 +:10382000C315E64BD02ABFAE19B1E95D09ABF5A9C6 +:103830000C8367D3AEFC1A010237775D184E971FD1 +:10384000ACA4F18A203E8F1C8691837B866E1A88F9 +:10385000D8F21A8637F653E3C2A6DFAE5994A962AE +:103860000B3BF1DEAE0CE343762E041F94BCC9A9DA +:10387000D391171444B21BC16BFA7DC909517D3530 +:10388000222A0E0E1B454D9074E0B6E6648A760D32 +:10389000F9F6B7BF66AFA0B7DBEF3794019D24FF01 +:1038A0004D25DA3B2A0AAAF17844DA3C3BD191A3B0 +:1038B0009D035E1A988C57176B6927EC26B73E3C20 +:1038C000B76ABE7018286E8C52B770A2567F580A1D +:1038D00027CAC78E8A85473B582242F2496A170990 +:1038E000F4DA4B331E45270D617ABF641178B7DFD8 +:1038F000F8A3956E2D7A6C798050377935D3B1C1A4 +:10390000DD5AB21CE9A24666A3E8F6D28FF58E1303 +:103910001B96CFDC50A3428DB9109FCC11CA678192 +:103920001B26B01E57C971FC88B301C381D1C720C3 +:1039300041EE057F2AA62067C04DE1C136C72A3374 +:10394000CF0D6455FF74EE53EEEE70A8AC56AB8A03 +:1039500041D18A1EAAB7B86CF31A2ED758581AA7A5 +:10396000281C9F08E2CC8D216A609DD0BE396E7BF9 +:103970004037E5683DAC2C1CA6A26F1CC88ABF91DD +:10398000548FB9970421372C59EA4B4DFF5F4D797D +:10399000193D8C3D7B3A064435F90060C1CF92E871 +:1039A000507C45FF81F9F55A7BA437ED4E692E987E +:1039B0001EDD8125D5FA5FCA4C9533935DDA47B495 +:1039C000B417E216246E0744155C3DD2C6FE37FFDD +:1039D0008B330CCE6894344C44AABEABFAE5584005 +:1039E0003EB0FE81E81796F1C51F1BB46A5B3D57D8 +:1039F00048CA1065423BFD0CC840902B1C2AD9DEFA +:103A0000D2FE6DD47BE4CF6DE784FC7AD1A8DEF6DC +:103A1000073667123CC529E5EEF6277B1E6C8DE75D +:103A200005873DD7CF9A6AAAF5590E2AC0085B5C74 +:103A30003AC5EDEA4B92A1AA3BE3E33F75A69F721C +:103A4000628034DC44FF56AB829209AB16E35140EE +:103A50000ACF5C9B3CE49A106F5D6EFFB6F20346A2 +:103A6000E1D679AFA0F9A14090623E5E224C1925C3 +:103A70001FF9FB2F1469B3887164F333B308C6C808 +:103A8000B23737B7707CFE2F0F93B6762AB387E92B +:103A9000788726971F6F27CCFE6DAB723EE3514EA1 +:103AA00020647D46C44F49A283023EEAB5D747CF82 +:103AB000E91887B2552E64A239BEED58BE94FCAC0D +:103AC000D42084B36DB555FEC4806C9CE7D8570DE7 +:103AD0009FAC466DFFE69F1B2E674F663A2C08E9A8 +:103AE00081ED6AF53A35B5981B2762E92B34A01DA4 +:103AF000EA386901DF6A2D3C71B48C10BFF0D57CC7 +:103B0000070ECEA63397A8E8C0EE9B76390CA278B4 +:103B1000DC6B6F57F0912729936AA9E38B778D515E +:103B2000193DA3AE4F359975BF6AE749C9AF79EC26 +:103B30000F0219A4E0050C0987FBB22B2A9C0FDDAC +:103B400011515FBA003D69C15AD21A375CB0375182 +:103B50003E1960CB0A8DEF02861F7EB8BE68CDDEAF +:103B6000E44C062BF8DF8901702E6D0C469F9A35C8 +:103B700043CD35C05A8428B18DF7235C575842D0C5 +:103B800023BA73B80A59755AE27FDD54C1B0813F38 +:103B90009BA84AA4195539BAF55FEBA6E3029379BD +:103BA000E0C5DCC8936A8473BFF6CCAB309B52D4BB +:103BB0009CCC3C8332B89016BF5656E511E94222A0 +:103BC00066A26B61A9FA598D32D274549489861E0B +:103BD000C6916C12793552E52899023BB47E5A435E +:103BE000558711E838B5999FD60CAE301D0ECEA77B +:103BF000E634DA3D516304DDCC1C293113D918D7E2 +:103C0000C95B4D6AA02664ABCD8CAC5CEEB5681088 +:103C1000EC336EA3C59D585DC7D47566BEE7402BD7 +:103C2000440D6F9B9E22D303E7BC8C0E98422ECA94 +:103C30003DF2514FBFED19313DF45F3A7D31974E62 +:103C40000D4135295EF6213004960D66F3802C5621 +:103C5000BED159F8F94ACB225C8D6B2446B18AACAF +:103C60008AAF2C8C9AF00818469A93BD624A1BD5ED +:103C7000FE5A984387951A3AD57C62086A9FA31426 +:103C8000AABD89E271DB97528104E66B35953F0945 +:103C9000AA45E1E852B0D0AA2BBF30061A187530F9 +:103CA00021E638A54E72C002D170B979E7CBE8F5AC +:103CB0005B911A79B6A31A2FDD118E9D40B971D789 +:103CC000E0C3797A9629FF7ED93841C18158AC2B5F +:103CD00058529BEAD1DCECF908F8156290C662F5FF +:103CE000A456E9ABDA7B6039BA8F386C5B5112812C +:103CF000AC8DD275A305BE3790EEF1708FAE9BC030 +:103D0000E9F100DFE9CA6085B2B1400068A288D855 +:103D10009E08E2ED9FCB33C1CA9CBF4092BE0EE12C +:103D20006FE8D565DAB1C0D7D2FD5DA14F169DD63B +:103D3000372BA2D974F7408F5ACC09CC038A51A6ED +:103D4000F9F1D85B99A4059D85961449E6DFD1FE6B +:103D500081434F6D7F71214C374C5F0830939E2D0E +:103D600095663199A37F0AC0258081DCE870AEA0FA +:103D7000781CC82C5771BFA2C4D9F5E344C918DF19 +:103D8000F75E20018FA92B760D49CC461243645B68 +:103D90008D3E1C74764F6B705576816F273DD1290F +:103DA000D8CCA381605C70D51445E15042322CCE52 +:103DB00047BFBC6DC78371EF2153FF9376A099D89D +:103DC00065C8C32D120A10814A721B4121E06E3A68 +:103DD0006EF076A3C98871129122C202A7424AC32B +:103DE000C6B36237F4EC1693AB3618A49CD7817D2A +:103DF00007052049FA2C1FA79B2C03875CC8F2DA21 +:103E00009B4ED6884583F0A039519D35732C25EC07 +:103E100046039CC3BAC6D98A65C308D2BD373D776D +:103E20003763F3842528AA8D60D8733BE5082CB945 +:103E3000DF70DD4F5A6602AD36507C0142210E66BE +:103E4000A3066F99B1FB6FEFB8A9054B4D33D35A59 +:103E50009FFAD1A06E3FAC6EBA820DF8248FF51494 +:103E60002A1E9B727693E2099FA0CB3349099B6B74 +:103E70004AF5E494DE9B4B45860FC89E70BED53B49 +:103E800035ECA7353D553A449F7CE5359FCE99DF0B +:103E90002E3A3748D707E7C7930E116C00A97387EE +:103EA0001C057F4F903684D368C7F6F4B35F023A9F +:103EB00038B9854F63CA31C91844DCE520D5EF987D +:103EC000FFAD6E246A8BDC5A0B491F47E0EA4E7047 +:103ED000BCA5377A6015B36BA253A0699E6D37728B +:103EE000D04C28C5B0311D03FEE21175E18575691E +:103EF00073680F0C7165A99A6DE78331CF28CE11D5 +:103F000025CD8E3CE9B5877030D2F995D01B0F3C9A +:103F10008EB087D53F8F958C48234040FF9EC3725B +:103F2000198FF44B24EBC192D89CA2FEA75F635B70 +:103F3000F3EA884F917FAE921734A42BD18FA05F04 +:103F4000AE28BD01568B3E5FD6763A3343B49074AB +:103F5000E8C4E0267829F4768EEBD69AAF3E6A9FC5 +:103F600089605729A909B3FC5299A8A014164A568A +:103F700058FF95560582636A0C66C7F20CABB3E82E +:103F80004181AEA107B924B2017A3BCFEB11829BEC +:103F90005B4AF3E6A09F08D97F20805520CD5EFACA +:103FA00041CA8F35FCB38848C66E769C086E494E70 +:103FB00089BF08F39DEF9FDC5DB47EE6D94219739B +:103FC0007DEE171F193A4DBADE477785DA180204DD +:103FD000ECC207F1AAFEC6C7E67F971FB5BF8C25C6 +:103FE000DB7F36AFC12D1CE68B786E36B77DF31CB8 +:103FF00008511FE4916E5F4EEF347E297CD8F76C38 +:10400000ED86D8ECE3EE1D31121C97006BCC7DCE13 +:10401000203233254B6E9FE8C87699A896244B82B0 +:10402000683F4B3B40B37878FC02016947E7FDAA43 +:10403000BA300DF85551DAEEF7386026CFF76B8BB2 +:10404000D67E21BC6CC7FC09C89E6DB9064EDA0746 +:10405000C501947F9A5D68DD2F571F6601C1134724 +:10406000C8E14608E1A45699BE44041B36E639AAC5 +:104070001096BA19FC2836151587781489ACC298A1 +:10408000AE90FA50FE304DC96DE2F7DD0680069C19 +:104090005433C9282933DBDA638E5F00654D1AB5C6 +:1040A0008D9FD553A1D85F5ABEF3497B0BEC0B749F +:1040B000D127A57E1ADEAF87D781003DAA565D576E +:1040C0002F5C31A1380949CBF8B3807DD3B34106C9 +:1040D00053BE50F7430B7E5E92D89E3AA15C0D48CA +:1040E000015ECCE216B7373801C6B68B93F3F7986A +:1040F00015A6807EDCA72A882D3163B3CC75C9B3A1 +:10410000187F61FF2A577B8F38926EEDD609568152 +:104110002EDB9F8912375B531250ADC610D0763517 +:104120007D52B94BFE5B8B44D1D8A90DBB50F27ABE +:104130006A01F32E13AABC40120633192B2C1B4420 +:1041400032F7F65D540D35749B940AB4AAED71B143 +:10415000B91C41B3A1666FF62BED8933FCA749402A +:10416000EC88AE9E0A316427976A04559A951A1115 +:104170003808A646C6421E2C3275F03FA305E866F5 +:10418000444F9A3FC479E5C4C4D70EBAFB957B1758 +:10419000E46237CC214BBB341F5589EE622B4B7741 +:1041A000A9AD272DB6F5614C9E37BCBCB79EA0B615 +:1041B0007B889C38D6AD54A43CE6D42B8C981A1D31 +:1041C000AD4B5E6ABB109325122F4B7E8D0FEBC05B +:1041D000DF317ABEE0D57599916A45F07370D3EE00 +:1041E000259BF6B96B2BBE3945626F882DF12FAD3B +:1041F00023A8A6DD1C0E1F3CFAAE8C7074813BBB5D +:104200001F97023C019DC418EE7C53DF924AA8BF61 +:104210006F91FB01EF1F06CD198E9E4FD787472266 +:1042200068097E044AF77B55CA6E05609BE39B34A0 +:10423000FB7299D62D532808DE52D18E950A1009AB +:104240007A61F999A51E1E37AFE431A0C79E6B7E37 +:10425000449FCA845E35FA6C27D7A37118FDC22B20 +:10426000747557A974477A9F02B9F4CDB162B01C36 +:10427000F90EEA2F05AC203B39010A3C4DD0AA6F5C +:10428000C4B58E5A101588CCD3AB3B16774C2A8315 +:10429000AA51BA7D1D1F260F1DFE8054EE37570F01 +:1042A0005925656A458893306C34561D5693442AC7 +:1042B0009512E0C2639DB4CCA243AE7BF8DE798A4E +:1042C00093C7287CC67D250810323A6CF29D5FBFEB +:1042D00065212001EFF09D0FEF51CE333E4F20447A +:1042E0001066393D418611B1B8AF4B0AFC9A0D2FCB +:1042F0008EC21FD6396751B485B8CF7542F8A95A16 +:10430000FEF924ACDEAC98ED924D811E9212160A95 +:10431000DC70D5CC9DA85F3C017A62A3F5D45E47E2 +:104320002669BFE273F4C209DA3CE139AA58142BBA +:10433000A49EB5BC9E74369876AA7AC5079B37E5CD +:10434000D79EB52C04AFA41B49F8DC1BED4BA2E8AB +:10435000FA387D942C5B25246489FAF5290370686A +:104360008B87338296E5C07D2F9FF4E30E9F07195C +:10437000DC608B852DE9A2A0728B4352D1D00F3B1C +:10438000A3638E408C08C832A215AD3095846A06AE +:10439000EBC18422F3F92B1A8FEAE747D7F1762293 +:1043A000536D8A64E9D5ED5E3094488F3BA3A578C0 +:1043B0000E73C361ED727DE91EF59147B7232D366B +:1043C000CAE4CBF04E63DA550F2FE2D7DD54987F65 +:1043D0006EFB349CA17BF9848624FE5130995838B9 +:1043E0009538744ECAA1F070493DA403F300EC5413 +:1043F000DB3811FACD6A5DF4ABF71D7F685243BE1E +:10440000DD35943CBF6F44CAA08B1E9A2A0B3270D4 +:1044100069044C8DF729418E08C0A3DAAAF2FC90FA +:10442000BAA9F60E3E77879DA493AA46C06EC1C076 +:104430001F19263731EC24FED772857276A7D1D4A6 +:104440008D39D53C93BD1AADCDFEF572790AC068A1 +:10445000208BA9E22FB4AA7C43A1CEA0DC5F243537 +:1044600053B55E60F43741F85D3AE22AA86EC4089D +:1044700065CF03880C6694FFCAE41C90199C17DE74 +:10448000F6236ADABD49B6D79CDFBDD4DA2503BC72 +:104490003F78E796218898C692CBAE196AE9D0A6F4 +:1044A000EC213C716530BD829555E3A61093F72E43 +:1044B000F39AF8A3250188A1C4BBCACC012C41EA18 +:1044C00038D0177C3A1BE58650B688028E27C6572F +:1044D000CB041B79C11D0C8D353F9371A86E688E7E +:1044E00010CC1D278794AEBA9D2AAB993505D626E8 +:1044F000C9FAAE5906DC039757CDEC08B18D99CFB8 +:10450000BD26392A2183AEFB0508168317854ED1B7 +:1045100040A7BABE3A1B3A0DA152BDCA81A18BED8C +:10452000E9C47935BF53F4A6B691202437045C9CC6 +:104530005C0BEF35F64638C3DDCCA1CC90AD137ED5 +:10454000AF31ED8DCA048F940C728B948AE0FC8796 +:104550005620F8F3A2150AD82C97781AA750AF4C1A +:10456000CAEA2646DE52E0636BF0760BC71FC91617 +:10457000476FED36D35B3BD2F05A42D7E4C6D7A49F +:10458000E9F16FA7F93086626320B25EE5D21C7054 +:104590006A8C6BEC78318F17B86253DCF66D60FD76 +:1045A0006B1911CB1A4474EA4BEA1D74902B6C2DD5 +:1045B0008FEBC755C5DCFF78112D7DFCA375896293 +:1045C000AFE4D410509E267081E128FB73BC4F519C +:1045D00037ECA0A5A14C62CE1D0A1DDF5106517C0F +:1045E00074540B84A0489ECEE6F9C95238623CF759 +:1045F000C5FB22704DC32336161BDAE7A47D49DDC7 +:1046000002DF04E6824EA9D8E45323711E2D13362F +:1046100003B4A5337ADB60E82CF60488DDC36C555F +:1046200029EB28ABFEF810AE2B2C62FF1DB223BD88 +:10463000ADAEB488F1897B046D50E7A879A6E64455 +:1046400096856A511E4E1ABD9823A55260528B3F23 +:10465000027EC9EA75A4440944C562797142BAAAC6 +:10466000D649656CA135932747A7C7C428555D1F58 +:1046700017ACAEF0D1C0CCF0DB93E5D8674E91F12A +:10468000D967196485BC6D805837CE52336F4C673B +:104690000D4EB59AE9E302A41DDA9885CA7D568BC2 +:1046A000F311938D6F2A190E362B557AA924F4E451 +:1046B00060B71121EBA44892D143C94078109CEB1C +:1046C000C9933F2C65B5E6E66B7059FC8C434DE908 +:1046D000F0C85D22289B3810BC5B309022FEB96484 +:1046E000AA3D2BD3027BFADC7657741F0DB3F6D3A9 +:1046F0009C0C871868F25AA552F5877551AB5A572A +:10470000FD7CFE063E4EBD3937D927DBDA12A73DC8 +:10471000E0C4A2DCC139189427F48EF097B98874EC +:10472000AA0733C1C1F5B34416FC735A008C676104 +:10473000423AC16763A348692B407612C08490FD5A +:10474000D062348451A981C074AA269886A5E03B22 +:104750003EAB6D3003F4AF11ABF726AA9F5ADD6272 +:10476000A82C358C967A26D71930BAA5A9E8C48228 +:104770003082E25F28BE1E2F78378C1551B82A513F +:104780009F7AA6724A67AB71F574BE4A0FDD184670 +:104790006755149AE5F2EBA436DEE38B9E5040F9A0 +:1047A000037A00AD6EE1346EB300DEE972A28112CD +:1047B00014D65B3F0C0E0E76E8755AE2D9968DF151 +:1047C0003977B357C96ECFCE66C404DE7CD0021BE6 +:1047D000E3255C7476345943DEC29030A53D649B7A +:1047E000CA0D7C4F151742A0C302D03944EEF42CF9 +:1047F0001DBDF5933D041656A3FDB1DA076E18D81A +:10480000E1290DDF61C60042F8DCC576218F7247D1 +:10481000EEE866157EE2E1714842AEBBEAE3192894 +:10482000FFA688588CD17A81F7FD38DAFC683AA166 +:1048300069490CDDFFF4AFDF1AC8E6F579D1DF4630 +:104840002AC49D8E6F342C500E8B04008B1374DFA2 +:1048500010D0B2AE3B0772CCE6E21CFE59E26258C1 +:1048600070F261B1974C45F4FB791511B6AE7A043C +:10487000A6C438A4834ED1517B74C6CC536CE036A9 +:104880008A7280E1E25307884EA36945B4A5C84601 +:10489000D582A370F0FB34C477B8A5489DBA2289AD +:1048A000A0C98D081AF6E037C3ADCFB6E98AA2CD0C +:1048B0002AC50D8A7DE6AEDEC01DEDBEEF7DD9DED8 +:1048C000A7F2A66AF57BFD8F89B193EBB6028AC881 +:1048D000A470072476CDAB1626BCEB9E2A31FE4889 +:1048E000884C5834C6767C3B0031430CC3429D074C +:1048F00063052F60ED411EA27A0E92E40B1E5260FA +:1049000025457E3727AF26CA9D6C606AD8C4DF2B49 +:1049100013A3891A2EB352B5481DB2C3715E295034 +:104920001ED94686C0A3D43FB6437975B69246D207 +:104930000333AE4DE8FE3A604B9590015CE24AB518 +:104940002ECAEAA2414CE5F6E42D1E2EB37DA3D576 +:1049500084DAE3262A11BE9FACC482753F149E1CE4 +:1049600092F6034A776046789B723892250DAD68BF +:1049700001771782C55B5620D6CCB5480B7DA0A623 +:104980000B5BBE5D2E3E050FD0FE3DD28A3C3AAE9B +:10499000D69DD4C65D88026B279321E51BA3E00258 +:1049A000B1F87D70B3FA52EAF4A64EE756E4DE455C +:1049B000B29385C2C442E1EDD743F89482F325ACAB +:1049C0005B3C6549952F4171D3797C8E1DF6355F2F +:1049D000E97B93937E443A40F1AFE46C4E085A6B06 +:1049E00074F24B93A7A5560C6E62448E628CD5F67A +:1049F00068578B0D1935B1841725D72E45E6508A97 +:104A000010E721D45238713FF4B9E2F481E1C62DA8 +:104A1000B1D286EE0C8433ECBA139FA2C5A15C31EF +:104A20009C1B314C2154B08CA391C81DFACC8C85B1 +:104A3000967259F732E3D779BFE77553715A377BCE +:104A4000C24444AE9FDE80E67152844936B06BF5B5 +:104A50003449D9F036053E47A930CF01353DD088DD +:104A600063F42A3E54A05E88668192423D8E19DB33 +:104A7000126A6B10E91E05865C04E4CA570A42D22A +:104A8000965019F493003650A9CBA4C9987ADFE167 +:104A90006C34DE60A03DF5B135ADC044A576D3DE03 +:104AA0006BF498F0A7A35B1AAA9F50E2B2FE86149B +:104AB000A42BCDB86FCF7EAA990E44BA94919DB421 +:104AC0000728AA9DF681E01058A3EF77D89E2AE028 +:104AD000DC4B4F2D2C1902749C795070D78EC8B1C5 +:104AE0004873FA180BD4BA25EB05938F6679FCC28C +:104AF000CFCAEC47107B0E2534B6E4A44CE9D7BAF4 +:104B0000A157C437579C7AF5F32445D5A9F7D3C6E6 +:104B10007D6BA7728C639DD7D8D8968DFFFC4F8E86 +:104B2000BCAE8C4524D7E6737BD340CA3139EDAA9D +:104B3000A2952880FB8AF3B6DC50C0259DB0288959 +:104B4000DAF1DA921F9F1E4460788B8D12DA34D727 +:104B50000B7A0F91189DECADB682113D8CC0F68A90 +:104B6000320BFBE117CE30D2C966E407CF05218EA8 +:104B7000ABA5D526CFA14FCBA0DE802F0A767CC770 +:104B800081271AAF3EDFBA6FB8BCAACE073D0BF73C +:104B9000F1DC0582B45E1318AE66257683D8089DD5 +:104BA0008FFB7E3A2DF79EA920CBE7DF74F055DB13 +:104BB00091BD856B779B4215B17A1012587FF5290C +:104BC000CF7200A7F7A3D94C379C912FB24B29D1B4 +:104BD0002F5129C58996BB04F5FD7854E929FEE2D9 +:104BE000E72142551CA112B6EB60A1A674406A6C85 +:104BF000CF7DF1A1767FDB661C338D9B25D57BB302 +:104C0000DAB8D4B45501BF0AFEBA32FB0540C64F2C +:104C1000AC4393D8BFF049CF77A3A4E8DD55DDB608 +:104C20009269CC44BFBEB2B3CE31FE5AA1C017EDDB +:104C3000EFE22A98376FA63D435C2DDA3E5DF1CF57 +:104C40004524E0C5243BEAB8FBB654272344BA59AF +:104C5000BC21A714FB01B7C5DC459F68CBDE2CC780 +:104C6000904A28C502D5E2C67637A5511EFE15F337 +:104C7000568EABDCE295CF820BDF7FB4CD6433AED2 +:104C8000453EEF2398E2CDB311B62DB16AD4B5E716 +:104C90001CD226F3277C28EB862F14131F5C89ABCC +:104CA0005B02603D0B48B9B06C5BEAD772B10CCDCA +:104CB000EAC4F3D383AB720F4B57B8AC2E78C3F36F +:104CC000559F00FCB82975F5E9AD308CBD9F60C7D4 +:104CD0005FAAD3388185576AC441595C2DB6A5AC0B +:104CE000E5637CB173AE73C42D526C2B9664AB2C10 +:104CF000D90416A258948AD50DC5FDF0613E99B726 +:104D00000B971C25552907483A4BC8F6D91743027B +:104D1000CC2E8EA537DD1312D47A004268C6591501 +:104D2000248765C2F0863E357AE4C0F13FCC255E2B +:104D30008B8A2FC7742A116F6453877657F9E0F571 +:104D4000C2DB1322B576D3DFBAC020F7E475C2BF49 +:104D5000119DC6F724D8DE509D9F6BF902AFFA8CE7 +:104D60009B5A4D6FCED18D72050266978CBF22285B +:104D7000F833482FF046636684BBC5A07A829776E5 +:104D8000C28C993EC5F071268C1597D41BAA7B3531 +:104D9000DDFBFFEC6C3DDA29F697F986E3812DC542 +:104DA000DEAD583E54AE33D2D62E00ECE8B7F9A3B0 +:104DB0005515213F1D72528178B3C9ECB9A9B3E5ED +:104DC000AC9C45CA9CA52370626AD4BDE8BA4CD09D +:104DD0002CBE7A0986D881ECD1D315FADDFC15AB4F +:104DE000FA8599F00C82F35AD73D0EA9C09C028D2A +:104DF0002B1D254A842741ADA9A35CC2ED7ABE557F +:104E0000E85418571B8E99606AC6DD88D7A22535ED +:104E10009E975D55A341565419987EF86B1E000667 +:104E2000978623B24B48F71423C23D16A80A0ED426 +:104E3000DA7D9EC65747B1E34577392C63F73EC00C +:104E40004680F603B528022E2AD0F4AB3E5DCCC3D3 +:104E5000BE7D53E2AF38AFDB03BBD34AD864E72350 +:104E60009C1F72F4E378532EDB090A67A4382036BE +:104E70006C1BE2BDF5DECB310BF5C9F6A285AB0D9F +:104E8000DBEC7D5A501253734404AEC62AE813B3C8 +:104E9000EE5375CF0C5753FE26EE9C2A28EA6D463A +:104EA0005219EE0FBE56D738E33CE5ADACAB0382EA +:104EB0005447AD1AFD11B4D43906B2BB5656B027CB +:104EC0008EEFAFD030051DB8DDB46F4E3F3576B3F1 +:104ED000696D23FAE205AF67C8BB2095591F628050 +:104EE0002BCE42726EEE9D248A18BCF91FB54FA7D7 +:104EF000A93F4DB2866DFDADA068A3F1DDAA9ABFB2 +:104F000011018125C8B8358515FA4F875AA6B862B0 +:104F1000030BD613256D6BE201D31556FF83592F72 +:104F20006FA94076D9BBAD61022651E6CAA57F0EB6 +:104F300093168A45510F83C6AC1F4DC5B51B66B38A +:104F4000E6CEDEC92006F7FD87A245FCA063D31D8F +:104F5000BF45A22D6196B9BD0908089D1454699FEB +:104F6000ABB35DA24267ECBA7C54FE4483C6CE0369 +:104F7000243088C375A19F191E3E1BA2FC3A0C1554 +:104F80003496F57A6CA8C93E8E0B6F9A17711F552F +:104F9000C9734436806E4F98EE9499102F714679FC +:104FA000E8A4B9EDAB66CE7892157FE7C40EDCB409 +:104FB00079BDA9CA0ACDCC188C818CEB4483C2413F +:104FC000BCBD63B3C25BF5D16E151839ACD164F5C5 +:104FD0003D07396AD72D5CDE66DCF472F2C5E1DE8E +:104FE000A56E9B88210B135860D4E9A5FF48A5BF87 +:104FF000ED8F8AC7D4CFD060F2972529FD572A4C70 +:10500000761601566BBF727B99BBFFCF0E98753633 +:1050100034CD13EAA704ADF854530B7029C19B5D3E +:10502000A8F0671AF79250F77C4B62304C44892FF6 +:10503000507D73733EAD8BF11CF5D88ABD30F1887D +:1050400093860EA2BB8D4A2898D2221C70E3F53EAF +:10505000A032BA0134FD1EBC9FFEB7A4A74039BDE3 +:10506000DD51C20789105E401F39A573A952B0A651 +:10507000BD3F37A6AC7DC2051EE795C9B25F149F40 +:105080007E7103E61ADF57D7E86A3E113A545C4551 +:105090001576F5E04F99640C5F9938256E0B240E58 +:1050A0005125B6BFF3340630A32D27A0FC8FC7DDF2 +:1050B0007135C50D40CA23FAC7F6626691540A8954 +:1050C000943124A61C4FA691A5A810303A32CB3EAD +:1050D0000878FF2FAA2B4B2A91731BE989B013F98B +:1050E000A2C1A01E783A486407013D88F1BC1D6D3D +:1050F0006FB1BA23D14D4645996345D68A27F02032 +:105100008DB35D98D0711E312F166E3FEA2B7174EE +:10511000F2FB7AD210C89A6B4886C9A2F33C659C10 +:10512000034B1F7AB16124E06D9B4DB1013D939417 +:10513000143F883E8C09443F33C4C7CB18462D1D0D +:105140001774C8639579F9F0B629F81BB982473608 +:10515000783AEE03E7458D63277C52023DD025A9BE +:10516000ECF011B31D5AED398F989D7E129E3DDDF6 +:10517000A5D4DF64121B5C1B6A4BDECAE24564E205 +:10518000092342FF7E59D70AA9672A6815552F5768 +:10519000DF42732E2DD41DAEFF7B6405D7D340C7ED +:1051A0001ACA125C0C2504ADDB779CFF5E1F34F13C +:1051B000F712F245AE1345CBAD734A7AD578AEE718 +:1051C000165918D924E4AE4C55DC20C1F4AFD84BA5 +:1051D000BC0A687C0BCA4074665F2F72DADFF41A6F +:1051E000864E7E810CAB7D1B751D45384BECB4E1C2 +:1051F000157FCF2EC9EB7A56B3EA2FF7BB3D0E4091 +:105200002624065EC95982BB00D2F975303D1B6267 +:105210006C07354BEE4911DC617A19F91437F368E4 +:105220001BF9474CF04636F49FD01AFC3C25AC0BDA +:10523000F3893527CDD5F2D825984B78B6A4AE544E +:1052400058F4049CD4402EC6AC5B38C4387620C0D9 +:1052500092F9B810C735F16DA115A82ADB396C9801 +:10526000EBD22DD44FD160E5E60C0A32AC784DA1DB +:10527000865927EC56D3BBDE0BB42A9C496733C250 +:105280003844D2C76231A6C961979E8F4773DBB19C +:105290003217D79B008EE64C62B147B2476B722340 +:1052A000DC1B039615DA5CCF0745BA7517DBB6220F +:1052B0004C80F5663FBBDA85F9A46A179DDECBA367 +:1052C000C07A5BDCE2ABD10C722D785EB8AC340EE8 +:1052D000A902DC0347D4235B32FEA649D4EA9D59D8 +:1052E000A99F2B731F0C97976BD16A6D1731F162D1 +:1052F000372E27626D55B037858D038E32E833B671 +:105300008C2DAC1AF2AFC3144A7E5E48877D30FD07 +:105310009B76FD911E0F00C0A66B38228A0D9E5C05 +:10532000F410193DDF5DDC63CD9E6D2670C9744DB0 +:105330006C16E67416BC45DC251AAEC100B776F6CD +:105340007C39BD56948228B82C0B72E022C4EC57ED +:10535000F1C6B2AB9480A23050397A7ACADAA1335E +:10536000DF91369C89631553427B87734BEECD8169 +:1053700037A052DFB9A559AA68F7BA196FB57A678D +:105380007D6D6C3C5A5A6C928B625CA0AFAE1AB6C3 +:1053900049B56C191ED71867FC062B5BBED77DB1CB +:1053A0000ACA4314026ABEEB98B446C472D89E8FF0 +:1053B00012048AC3739F48A7245903C6B6125132F8 +:1053C0001795F64777A2F121DD9CE3DDEFED9541DE +:1053D00013A78866262F1D6B9168E335430DE66B96 +:1053E0004B982C4AFBC542AAD6D41FB09B006048FC +:1053F0006D2AF459C542FA1DB3CCC87DDD0F6E4944 +:1054000006DCBAADAD4DB960E76CED7143D7FEDF98 +:10541000E81F2368302E05E8E06A24AA88CF88AA0E +:1054200058BE9782A5058B1D4011F3EFE96000EE91 +:105430004F7267A3949127373EEC6577EC9C62F43A +:10544000477CAF18E31F8CD40EC7680F4C4C44093F +:10545000BA9740090DF599962FC42A4FA901A63194 +:105460009122A3E9B669C63335820DD3BE5E4FC81B +:10547000A04803920EEB91ACC80CE8ED3776CC6AED +:10548000AFF0F69B634C07D92C332918CD745C1B05 +:1054900059A71D9406D998DF262BE10494ECD9D79F +:1054A000DB51D5EB1AC6AEAAD8962872C19A4953D9 +:1054B000A43CF564C7FA488C1A21E6185BD82DA8DD +:1054C00040E3C47846976EFD93DC9D4E33A96B4351 +:1054D000B9D9782242DC5BDFA54F7D0C9323EDC95F +:1054E00055A613F1FAE0B3C42A64DDA39E055DC29C +:1054F0004756C0B1DABDAC5E289768272F26060054 +:10550000FD7D6761896CCD8A19461838F56A2E2DA4 +:105510002D2CFCE265ED319518970FAB9082C2F807 +:10552000AD1C9AF7CD13A0E5A8112D34EBFB89CF64 +:10553000E1B59599045FE5C345FFC6A1677D10A954 +:10554000947158F9A1BA58F597A3997A2C1C698AD5 +:10555000300AC2C771F694848F13BD0D7F25A0A5B4 +:10556000EB1F7F98CC268AF1AE399F72219907A351 +:10557000C3CC4E6080A5A96EA3F7A301B952957361 +:10558000CD93210F2C78BCD4A4CEA52C51A9BEE07C +:105590002EC5F0341923E05C81EB108D486C437C00 +:1055A000991E90B20E252047D430AD6324D7844C89 +:1055B000889AB8E5F02EACC97B78F696385719185A +:1055C000D27DCABA6C4347676591D3CA05E3C6A0CA +:1055D0007E426E66653B628E2FF0F5D48A7EA5957D +:1055E0005777E5F72FCDEA26919A4E7A8D537C7640 +:1055F000205A4915E788FC1C464D24F296FBC97FCA +:10560000B79F2FAF6518945F924D6D15499C0E2082 +:1056100001C27A39304D01FE452A18276D044977B9 +:10562000EB8E5EF1DCC9BF40A18437D643B591CE85 +:105630000DB868B94640EA7766194C042DF28D1A08 +:10564000DC617E20F05A366BD5254CF186024E592E +:10565000AAF5882F86C6255DDE896DC49B6F141B55 +:1056600063AAE9A8BCC5D7CF3FE1246D3B985CCACB +:1056700032169DC0C5F33D5D2564B96D46EC2944E5 +:10568000F47A270F9C4ADC143843566DE0E599699B +:105690002F975AAAAE24AACAD1ECB62817FDECF56A +:1056A00084FCDF420943500598F94C9A73432D2A34 +:1056B0002E197DB3CCEE676EAF9CAA9503FDCDF796 +:1056C000C54A845D705FABCDD902DB919C131B3D55 +:1056D00028A526F4D40C35F6B149D2917B5419EDA6 +:1056E0000BACC841F19057B4E62FC64A5405EB28DD +:1056F000293DC9B3336D43B1F02687CDD4B842B448 +:1057000001D66CB5FBD3FE6BCF5C0DF09DC0ABE852 +:10571000CF06CA9E27CD75B0F16A698228D8FC22CF +:10572000DF31698AB3A6C3DE5C460DDDFB267FAEA2 +:105730003BADB557ADBDE5F6E6E487D8563CAB9139 +:105740000C2AA0DF1CD40988F0543A708AF6B7CD31 +:1057500052FC3F0D9D95ACA70EA5B135B40259166C +:10576000D29AFDE8C0BAF5CCD1D9F8E2992E774E9D +:10577000C63F17BC5CD3E70A7319562F9A23FEEA7B +:105780008390D5131A9CA2D2BAA5443700D7AAA6F3 +:105790005235622D5EF9F8EA44B567758FC302068B +:1057A000AC668269528F5780CFF61F4B85F36C6DC4 +:1057B00051EE8BAEEC56B5AD6AD586294285A57DF6 +:1057C0009F5143534F1701C75A8F56AACE03264AFB +:1057D000789D18FC735C1DF37D8B2A976ED50E9017 +:1057E000B9F5D240321E430B3C9AAA519A2A5D6801 +:1057F000574C83D27C1120CE6C7F646B332A645A61 +:1058000039CD42974274E6EB27ED390D5110042F44 +:10581000EB7CD4E143340F6165AA384573D7939D7F +:1058200012ADD1824BD04E29B8B9FD99045E8E934A +:105830007C22FDBE266F8A3C7A708B7F932DC7AC8D +:1058400035F294F9BD94F2CFD8FECA5A0DF176C064 +:105850006DDEBE4691569346A8DF4B6221A471D7F8 +:1058600090206EF3174C3B91C6EEC62BEF051DC57D +:10587000C948041140822E463DCC37566F28C41AC1 +:105880008F84E1BF4021BC249CC7C870D22741E16E +:105890007E77EB51D673C1CCEBBAFDB6A5D6089A8C +:1058A0001F242D7BA1F036FEAA315BDEF8FD692CAA +:1058B00088F9ED7F9557693DBA7CC23EE9A68678A6 +:1058C0009CEA907EC2E899A0227A12BD65DDE225AD +:1058D0009DE170C799D94A8C9A5305C93C9CAB8409 +:1058E0001B78DE0420B5A6E4E029C1DA24DF42E615 +:1058F000C62B4A4F424B0EC707E76410B6C1F5618D +:105900007081D81C9B829A2367D5C7A0946B0BB17A +:10591000F59D5E4EAFE7FC3B04142C5C1B842925EF +:10592000D7E52049D7D3796929F85BFD3830B8C16C +:1059300038A37AE09C07DD1B8A006B94A75CF10812 +:105940005CD01DF2D4F5B33586069786F96B044D0D +:10595000BE0976CF56811E9619072638DE1A2EEA22 +:10596000A4F20C24D25333159CF26181A583B77C39 +:10597000A48D84433A2420A056D0AC245046E2871C +:1059800096ACE1B542ADDEA30212F2E3E6FEF2E22E +:1059900085524A2006EC72D17FA0B948F5332CE934 +:1059A000C35D409DB9F2B2C26AF676E3331CDF2EC6 +:1059B00051737E785BD4A4316D840CE908E7B16241 +:1059C0008CE60B524F2CDBE65145AC66E60336887D +:1059D00090D96FDBB18A6719A2B40D2F62D32C6FF7 +:1059E000A675E242401A2D54A97B975A6B2FB5C178 +:1059F0001C401B60858A187211A1EA1042EF79C819 +:105A000010A8025A493A911487B979FFE21AE4E4DE +:105A10004CB6F1EFA0A0AC07E4F234F1BFBA29FA1A +:105A20005913C52C4B453797979A7B57BE216BC3AB +:105A300028E8C30A392CDD20D4E2A5B8971C68D029 +:105A40006A7A92683985455E3E302D007A4CCC6486 +:105A5000A06F709E09D08945D9E5461123CC01B7C6 +:105A6000AACB969B933E1CD0CE3F10C1357CF0F65E +:105A7000FCB56EB53F76AEE7457C9F59134EBED060 +:105A800052FE625240D84748EBCEBC84F19A9493C0 +:105A90000128D2B8A7EE9B14DA7B87692530F01C69 +:105AA00018907C6CFF4F90EFFC7B3C7D4DF5B2175E +:105AB00011823246955346162E87CFCA42D9584F87 +:105AC000289E748CB6FA73BA9C35A4980A7BE88237 +:105AD00091C8CF01DFCA02534119B59F1F3C3BC992 +:105AE00033DABF816C0FB29330594328AC34A99498 +:105AF000D5087418ADD53D7997AA6D4E1C6ACF9E16 +:105B0000D9A78612DF0D482CF8AA17EB53FBE7E361 +:105B100065D19DDD6F3701B3CC70851FE7820251DF +:105B20007AE1E321EBDC3F3FD9054E7DA933069AAC +:105B30005946AD68C4B083F8830E20C9E5FDD3F2A1 +:105B4000AE26DC886512952028A660E219EEE729CA +:105B5000937B183B44B9B70CCE4CF9E7058E1DC6B4 +:105B600086EF7DF1A84768BB734CED24BBC44800A9 +:105B7000B5308F394A099CBED7AAF47F7B262B60AB +:105B80008FCCD596C2158D7D999A477297E7B8C884 +:105B9000C8D84385B32EE627E4B7DF3CE7FBD26ADB +:105BA00097EABD822FD2463BFD19BA77345E045A7C +:105BB00097BEDBF38D65606EE872B82E69403D4498 +:105BC0007421221501B3CBCCDFB6D69D7FA2748A97 +:105BD000C9B60EA9978CC6EF061BCDB705DC4A5B8C +:105BE0004914EA3326045C88A7F2C4A4D1612FE3E8 +:105BF000BD23DBD8CD632E40C53C3C7D1E01EF1795 +:105C0000C11872622D9C2F00B419D2871F7BA85F28 +:105C1000C79F419F8DCA7D6850CEF373B2A4F8C56B +:105C2000AE62417C8435A35CD32A73EA6856698BE3 +:105C300040B7633CCA7F22666B44BAE1ACB4D24041 +:105C4000C44AC007286701A4B86287273F9DF215A0 +:105C500087894BD4A012D8AA4CC9C6C6A5818DCBC2 +:105C6000E12019B6829FDF2CBF860F582831B2E0A1 +:105C70005232FDEB8F200486AF008C7CC75609F7AB +:105C8000813BF4AB917A5CB75C13B18FC1FEA10983 +:105C9000A3467F2FB66CCFEEDF108886AAD58E285C +:105CA0006942EEF78B48349200367875D4566D0B06 +:105CB000A1B0A7966D05342F42F2731C28ECCE4B91 +:105CC00082C34A83E26BEA1DCBD3279F928DBFA983 +:105CD000B68DF6582FAA17289BC58EAFA0DE9F6DF4 +:105CE00008736157618746FFEA138950EBE30F435E +:105CF00046ABC2B4E293D5D96833524CFAC34FB025 +:105D0000FD6539C68A42476168231E98D5070FEDA5 +:105D10003345D9E310B8D561A0D325788B9ED5E162 +:105D20003B8F89353591508F0F1290C52997CB66DF +:105D30004AFAE4E0C6D77D66ABEC950957DDEAA3E5 +:105D4000C5A777C45717A001C2337C4FD9D6B1DBA2 +:105D5000DD884AA43BD9B0E45821393028B7D9CBE3 +:105D60009D202DBC039C3C1C7379BBDF8355E57ED5 +:105D70002395A3748ED6C4DEEA156559932E09D7F0 +:105D80005043270C2AD2616F34E92B4FD35727D6C3 +:105D90003617CECB4C89322C53DFE1FA11C265584D +:105DA0005314E92F827DDD1DE778DD9AB8CE54D3F8 +:105DB000C62188EA687C633FD7055947F345070049 +:105DC000B7D4610482689B8FDA5065648AAF16ABE2 +:105DD000DD8800FFD3F26CD4093C58E4091391B874 +:105DE00016C33B45496C106AA49228C6E2717348F9 +:105DF0009BF9CAAB2542FF1F050CE381CC63A57A52 +:105E00000925B4977ADC8AC90903002BBD2B588178 +:105E10003B053536880ABCAE440027B58282294846 +:105E200024BD8EAB2A2C58366B3289AD7ABB847870 +:105E3000C876840D1362449A384A08181D9C14656C +:105E400030E8CFC0F6C48EF7BBF3A72057CC2FD3D2 +:105E5000C12C2B244645F080A0F5A9AD04063C09D1 +:105E600015D504C0416A18F13CED1FC901783844CA +:105E70009413FE338AC2671E7940F77577285EFB5C +:105E8000C17C6625A02F74DA4FCAD8CEB30563E073 +:105E9000AAEC7E4963824C0CF8FD8C17A583695BE4 +:105EA000CC0BF58C8AA303E43EE05AB74DA47D14D5 +:105EB0005AC03BE0A992A5059EBF6B961F05349C76 +:105EC0008151A5BE4FCF44F747996568B0AE4CE508 +:105ED000F394B19E23F5BFCB309A747666AE8209F7 +:105EE000CC51DE6861474DD8E62BD1B43AD63B465B +:105EF000F1476C720231C3BFA97D3D5CD479E0D01B +:105F00001ABA1373BB6D064A43ECD60CC202A70D36 +:105F10009CA2AB166AA80CE11DB747668B212C44E6 +:105F2000D2C60B9FBAC2914182C46B1B20C0914A5A +:105F3000886F15F88BF253BF64024E4B988FE45272 +:105F4000AACDCCD7A31322B7611EAE22B701D2418E +:105F5000A5A2A8224CB62E49214B50E57701B5C425 +:105F6000D4B87ABF92653B71D1A19FCDEAE751F1D8 +:105F70005A4DA6936B15BDE91652A030EBE4F91CFF +:105F8000A29DF1DEE83AE4A5277CAEA5C0BADF51B8 +:105F9000A460D79362392C612BC9EFD143E63EF060 +:105FA00029DBB9C20F5E7CC9FC41A1E11F519306F8 +:105FB000B8D72C1A1C8A29B258FCF468C35B8476C3 +:105FC00026497442CA714CD352D8D321305DD38153 +:105FD000AE3FEB7597A8DB025B1CEE30A3B636D163 +:105FE0004EA73623AB7525E06478FDF23761A645F0 +:105FF000F1D5691272E440B4622BA478BC34650513 +:10600000D4C041C47BA45E9D88E12D399B01ED681D +:106010005CBB74BDE0039FBD2B4EE6FEB3B8290DFB +:106020006E8D37DBFBA02DA9F2FAA0A5942E443982 +:10603000E67C4E9E608B1840C1A9E7D0EF28F4BCE7 +:10604000C3089863FD8EFA6F8B3EF627BB6F4374CF +:10605000A34B10D9CFE785F3E01B43DCD9A3A76599 +:106060006F80CEC52868091DA255D6E8553D894EDA +:10607000DE6E6A5BCE2F6234B7639A405DF24E915A +:106080008C6FCCF54ADD740B973E48DF591987D6E3 +:1060900000BD1D34674D16C19771CC8456E7EFA340 +:1060A0002E62C21E062555CE88966F4CDD1F4ADE35 +:1060B0003208F15DA54F2D05646774BA6C6CB7B1F9 +:1060C000A2D8656825DB64737B5002ADC6B91F9505 +:1060D000C2952096044A626571AB1021455B5F371B +:1060E000DAE2091CE878E8D1FF231FDA7D3EB67BAF +:1060F000706EFCA571278E4783BBEFC22712025E2C +:10610000A563F76CCB7B679C7EF8340C2E8A7E6788 +:1061100093E01C70BA5B05306C991AF1F1DA1BA898 +:10612000EB49E0D8590622DC51A3B4C787A59C4CA3 +:1061300017E92B0AB01EB5C905F912F0A2CBD2039C +:10614000EBBBDC7A4A12DB56B9C71AF5045AECE706 +:106150008A7146236EFCE097F920413B2756D226F0 +:106160008BCBF6526E017AD9E5FBC8CD220B05B573 +:10617000E898E8B380E7E57F04D0C82387E352CBF3 +:10618000FE1EDA9FBE77680692766F6FCB57331686 +:1061900080E2FF1AB549D6057300985F9B4B89547E +:1061A000643B81379851F96A34C89E46CFF16F330A +:1061B000D17E16FF317819590F8DE2C4D43FDFDB51 +:1061C000437E349B28DFD5B70B253DDD3195547FC9 +:1061D00021EFAC0BEBF2F145974F37C0E8272EBD0E +:1061E0001CD7B2E0EE59CEA18952D038BF66056007 +:1061F0005EAABD14F20F93E75C3D324002571D7357 +:10620000ED49015775476BB0322629A41D0049B9E5 +:1062100070D8AA707D1C888385A603C07466E35E6F +:1062200017B4BCFA8DC7B84AB1E65ACE26C8E5E71E +:1062300039D87091E147283D81F31B4D4DB540346D +:10624000BB1352D3EE1875FCC8BA7E7D0C8A5AD5A2 +:10625000E9FECD2EB59609968B5C0AD62B412FCA46 +:10626000D87B54D0DBEB379D19C3569E0C64BA44DF +:1062700088690AD371D1030E5CA671D8BA351808A3 +:106280004008C9ECC0097F4DC67FC0ABD08B927669 +:106290005DD5BE4B05083A79E54FC59894260E5852 +:1062A00005598168551457CE6AA2A25304D285BFFE +:1062B000678EA6510171DA9DE7293B0DD23B45144B +:1062C000449026D91298775CA1B7118FB94EB85F68 +:1062D000FBC053EE27CACE1F663DC3D8C4E8E341D6 +:1062E0006189E92181B99E719E62AC7A64BEE7073B +:1062F00057498C7C2F0134ADFBE6EF2A7565FA0116 +:10630000E104DA671F087252A0419012492E3263ED +:1063100090D11A1E331D9DAEA13873F61482541EFF +:10632000059DDEC4AAC69AA6A156A1CB7AAE38C9ED +:10633000FA428A561F1DE9A35B8BD0E642A290A4C5 +:10634000889451ED61AFC659BE1F773A8A4592CD08 +:10635000ACE1211FD0D955364197C2C073E61D2448 +:106360004999E81A94A715E4FE91F083782885519D +:10637000490FE8E81FA7012CE3D245966F23C168B7 +:1063800059CAF01A7A9E3C66BE91B3EBCDE40AA6D8 +:10639000C06855060A1B0FE5D070C783B3D385F5D7 +:1063A0008D7C6754B15C215E5AC2B423519A872A0E +:1063B000A4E015B4053C7BC22D10241BDAF11BC4EC +:1063C0008831F1341581A86517DCC45CD94DB470EF +:1063D00064039FAA6304BC44313F62931C3F9BF358 +:1063E0009CCB0018F2EF6C27382EF23C7098F3E447 +:1063F000771548DC739FC84AF7DFE8B1CD07B1F4E1 +:10640000DC9CFA88116818B4F02C1A9E8350315D18 +:10641000923CAB297759BAEB93CEB845EB65BEF603 +:10642000F80B4BBD5D6A5887B30B563A805E0CAAD9 +:10643000F12C08017525E2775F30D8ADC2685BBDED +:10644000D3F8A146E3ECF6766F50A3E20F400F6855 +:10645000062DEBAB6F0B74AF943C6F703508408525 +:1064600001B205351BD0FB2DCBFEFCD0F43DBEC8E0 +:106470009E73EB1092DF0990B9DB0823226B297F12 +:106480009393D33029E3C845499DD9EE7E11F81F77 +:1064900070930715AC4C5531E24ED421F182584827 +:1064A000EA874581A9B653F6FEA945C63F4B2405A8 +:1064B0005C86766281AF62642EB1B97F21C788A7FE +:1064C0008F109868976A2D2BF9ABA8BB6CDA963FB2 +:1064D000D097DB2026F1030CB5A243B070FEF2A8E2 +:1064E000B81F64171AFDD745D1D374B57C5CF92366 +:1064F00024FAE9322075686C746352C40456196139 +:106500007CA66273612B72763DC157079DD1D69EE2 +:106510001F9CED11DDF9CAC3A33B7165FA5159D631 +:10652000BB43E59B488D208FC875F320131DD172A6 +:106530002499A2E0C5B6BADF0F18B959BCC35BFBFA +:1065400041E4D81B034ACB18C0BA98060AD4A22843 +:10655000BFC99794C83AB5CC2551704B30E1E6C518 +:10656000AAF793C91FDC664940D367CA71A6D78EC4 +:10657000CD08F948AC4989056CF13BDA1823BBB268 +:10658000020A99F8D50E924D04C7C70C40854F5B9F +:10659000689D6FC4CA68583B3E296ADB85960DAE7C +:1065A000E272D0000104365CA6A687013FFC39499F +:1065B0002569AD5BA67EF201E92755CD3A0792FC2D +:1065C000418E33865BFC2AD842703288377FEDF6E5 +:1065D000B0CB3DF66756E6AA95D33ABC5D76718896 +:1065E000FAC98E06444816EB46E5BD2B147B4605DA +:1065F00032F524B40AE49B6DC17E0652756E5D507F +:106600001EB4AEAF83D26A3B4ED6F6B81CB83D7A04 +:1066100076188D51E9E596EEEBE381F15B0061E8D8 +:1066200067DF2E2F6C79488BEB47A0DFB2FC1B8411 +:1066300061B9F76A361D4432EC3BBCFFEB6E7B64FC +:1066400098821C8F29618AEE38F6EFA00937285806 +:106650007BEAA390D64F11D08A0A36A1FBBCCEF8B4 +:10666000B12DB199E182A33F602B58C49AB92FECA8 +:10667000B21F48F31BD35F2AC88EBE54C307D794FA +:10668000935AF021B9127D73A4218130DB51AB16EE +:106690007E7D131322C83603B5D02F0AB0E73939EF +:1066A00061063F6ABEE7636B97324B5E89A3DFD317 +:1066B0003942675F85B3E7199DC8190B2E915002C7 +:1066C0007ECE471D105C0C8316D0A9558564B72675 +:1066D0006F7883D2F67F2AD24CD705DC08E8F82DF4 +:1066E000ABB7888DB15E58F8DFB4820E905195E457 +:1066F000148AE2F1FDDE7AC72D200A585788025C21 +:106700003E9F095B0AA249FE408EF1D75AEF6EB256 +:10671000BB6479F39BFE0386EF540AE5801C32FDCF +:10672000964B231F92E9CE07E83FED97C89C03964E +:106730009ACA64F253A2C695F4AD07E855E668A17B +:1067400076905146B962DF10AFBC393CCBECA23E2B +:1067500092086CEA700479140E8D49BE37F306A2D4 +:106760008240455004F51320BE324D0670BB4B7974 +:106770001E2C91E197D357BEE69ED5587DEDAB62B6 +:106780002B25D4A86C976C5803F7E49A754FE9C58C +:106790008B75C11C221860E60D596FD6B252929DBE +:1067A00046D3F645E52FC59EE93A5237CDE9C849AB +:1067B000C5809556981EEB5535BDC4C2E4AD25F68F +:1067C00087F6564526E49C6061837FCBA4A77BB700 +:1067D0009A9D0832FAE7F1BDC8FA58423FBEC73168 +:1067E0006DB4ABA1FE93B0967C4FCC0253B4B90903 +:1067F00013CA48E67A8D4C344C15F0FF48660E3AC1 +:106800002740777366CD26FF0CF66503B6D73E2486 +:10681000D9548A461D3C4E49C496094A4A74A71465 +:10682000139A58339884254CBDFC72B2051DC1F4EF +:106830003BCA75933D1CF41916D7F104D3C009FE69 +:106840007CF5317D1D09D0AD5C7F434B1BED9EE097 +:10685000655FB3DD3A6AF0AD563F95C6931581ACDE +:1068600036AE86C3ED469F6F465A7AD8421694C11B +:1068700049D9B7EB8B0134FD7E99A9D202D56B675C +:10688000F2C4AFBBA57A04300E7377812C20E240AE +:10689000C9A8155045130BEF09FC0E326B7F4974E4 +:1068A000AE43F8396E336351F16D303404CAECB63F +:1068B000343DDC74D61077752B50C138B1729D24ED +:1068C000D9FEE4615F1D8431988D8A784A0D6DADE3 +:1068D0005DE9DED6371F57266AD1153AE19434CFE9 +:1068E000DE3FC073F5ECE4E2F303BC450ADF1D9222 +:1068F00003BE1F9F16FFDACB91E76BFCC5722FD149 +:1069000046A67167BA73A3FE0A1CF43039B8EF913A +:106910003CCE4A61940BEDBFA5B4199212F270C738 +:10692000196B499C7FDCBA9EECCDEA55C1D2726CE2 +:1069300098C0B2914F5710600245C9868E21DE9FE4 +:10694000A775D969B34676E487E7996ACEE679C434 +:10695000552A4A5DF0E6E711F4BFFC91159B746C73 +:10696000C544AD29AF4C9F9F83E6D849EADA73B39B +:106970001233DF3613B40293659DAEB8B57CEFFFDA +:106980008A6E4446C321F55700B9823CD3DFBA5919 +:10699000C1254BE985618E11FF767B3A5AB6269167 +:1069A000468157F78A4397A214F1F616A36CCD01DE +:1069B0001390FB9A980D2A8F6779EB78F28185D036 +:1069C000B7C9CBEE62EF05F41A5B47C0A2036B9B1D +:1069D000D03B4D1341C2E45FC89D3DF5D05527CA59 +:1069E0001B999D55AF0F89B7DA2CF90B90827185F1 +:1069F000AEACA060E2467D7FCB3D5981B2DF74FB37 +:106A0000CB1A2BCA489E8A8693CD7A11F229A8DD2B +:106A1000AEBD8FF701C82F3E278613C5EEE33224A3 +:106A2000CAEA97A7680A3A0393DF65A72C04E149ED +:106A3000A41DB4CB7765D18952DB813851811EF119 +:106A40008096579826165137A4A0D7984DCED7EFE9 +:106A50005109A100EDA61CDCA68B21A8A0EE9BEAA3 +:106A6000F563FEBC67B0437C7B1C1BBB346D274EBB +:106A70005F36CBBE3795E5574768631E0876D19CD5 +:106A800096F864F026D6DE5A39E871542B2963064D +:106A90007F08C9B5CA5A5D229072ECF83B603C6928 +:106AA000781D69A867875F6A7B6D628B538A7EA7B2 +:106AB00047A5878A7E10E5BAA662CDDAD500C63E24 +:106AC00011182E7529F050D0874DE200776FA6017E +:106AD00012A7F9C37D3858F86B019E4457A8BF53DD +:106AE000E62D1D3DE5926CBA21F6794DF632067021 +:106AF000A578FAD42A9A3CBAC96F94E1D13330FE12 +:106B000090C4D7B63026AC3393AB8C3123198204B2 +:106B10003C6A6D88E12EEF55604AAB0DBBF642CE64 +:106B20006CD59CE669572823B6E8015CD24524A8B9 +:106B30007F3DF68FA50CB425E39C9377D28957ED62 +:106B4000372EDB6E0DD8CA97427539F428B5B7C910 +:106B50008AB95CEF9B9855455668D855DED5F58CBB +:106B60002C9484436A0A4E5374E6CC30577508F36C +:106B70006B99BD51C6E6674E69621AA696BDD5EA05 +:106B8000DF2619EBD80CA2ED33DEC6D95F1F2C2609 +:106B90001539421177AF2AC1F18C2167CB430459D3 +:106BA00083AA83AEA571FB8526628C575530C2F04F +:106BB0007BD6D64FDB49B5FFE20FE246E930A9AC00 +:106BC000DA27D8924E96B05658CFC43D77774845CD +:106BD0001BF549D6C74A6C7A8DB3D98C2EC77EE394 +:106BE000E901EAC27C9528635C04BE30C714C93849 +:106BF000BB766EB23C2798883DD8065DD32A60F7F5 +:106C0000A57AEA71BC9D29A71C69C994D29D7FFA17 +:106C1000677013DBC522780E29151A2D1DDE099F1A +:106C2000FD0D486AEC800F9D57AFB9DF9004DD5A27 +:106C3000051B6F524BA78CA3B5AA5355BCFA17BAC4 +:106C400041FE4139717895DA5389E5E9559FA521CF +:106C5000C52C2A5D4D3441CEC1180119B6D3F6B901 +:106C60006F04B24505A42AC8283A68FBA1B6015AA8 +:106C70001884E033C8F7C43C9E0E17227752C28BAB +:106C8000BEF184F2A273F067D6E54006363ADB7DAA +:106C900064E04DEC618FE2A4BBCE71769360B67672 +:106CA00049AF36598A9454D5B3CC9D6CFA328CA82E +:106CB00065536B2E4FC96DE505E828A46835F2D3FE +:106CC000E6A6A1B2288CB351967AE2F1D798170CB8 +:106CD000A3EA66341E54BA845D3A636C8E38B3D529 +:106CE0006797E49FFB2A1CEA12C7CFA378C2C76448 +:106CF000DB875F85BAF562A677FE67DA8CA259F367 +:106D0000448A07D1567C6A86E4DCA10108C08CDC89 +:106D1000F797480B07698CAD66FFE957617A6A26D9 +:106D200073D78C0355E7471D21CFAEE084AF757F45 +:106D3000E4738B03EAED4F3FF4D0674B5194EE5868 +:106D4000E4980337CB078AEC04F777F6698E0C06D4 +:106D500018959DEDA03521459CFFF386CBF7F6DC19 +:106D60007E290316900FE711B3890DEEFF9DA1DD7B +:106D70007A7D5F3740E8FAAB05433EF5F7E98BB91A +:106D80005D8AF253821818C40345122ED4E97E821C +:106D900083B0E8C9085EA23B3118AF03608628843F +:106DA00092B7197DDB61FC45DF1F2A3F0D70506AE9 +:106DB0009CB94B8DFED5B72DF8DD82096F407A2244 +:106DC0000776CC4F1788880446F10A06E7767BC31E +:106DD000E3513906752DF4C72A13E76F80BD95B4CA +:106DE000CA05E065109A6C23217D99EC8AF1F6EFD3 +:106DF000BBE9AA9D8AB8964BE679436FE724DBADE1 +:106E0000E79CCEE0B40088CCECEC242E165EFF525A +:106E10008857B56AB7F4A850AA1445336FE8803F85 +:106E200014A0E2A7DC4F2F057DC7E7C94A8BAA67EC +:106E3000C7E25B5823D8E0600AF3058734220E5A74 +:106E40006BDFFD3550DB54E28DD720BD19A719F754 +:106E500001EBAC7D786796D9BAAA37F44E628DAD56 +:106E600006E03179AE79E50CF1AF1669BE8A29D317 +:106E7000D6BA5A34005F24F13541684FBBB96A284D +:106E8000BA8ACDF5B84B884CB2E86D9D18F2E20392 +:106E900002C965C27CE58E5BDB4A166AC2BD747BA3 +:106EA0001C3F0D19F9655062D35C6D2433EEC65159 +:106EB00080E952ABF353A6F4B679DAC6EB7C36C858 +:106EC0007BE9343EAC37BE0BB0211C339F1C99E9E3 +:106ED00046FD062C5356F1727C889CBD854E4E6F44 +:106EE000201B517A9262EAF8E23DCCFBE347B416EC +:106EF0006C346A7C1BC70528F0CE81424FD6CF2F59 +:106F000053062D2B0286AC81BD431ABF228FE44568 +:106F1000B0CAE487D7C38B0A9817D7D9CF725DB0B0 +:106F2000C9399F999D106563B44ECFEDAEE4AE2F85 +:106F3000E4234F4CC24F6C262A2F07CB304C94CA07 +:106F4000CE0BB36F7B3B3BF8CC0255A671DD26918F +:106F500052043E79F08996DA7E12E5B106E9445989 +:106F600008B9294549990906C92BAAA7793B269D45 +:106F7000ECD1C01624086E60AB4D7846B7A25528F8 +:106F8000D5208EDAB0BAF88256DDAF0DB8810DCAC1 +:106F90008D87139749FD1A3F4BE055D56627B4DC22 +:106FA000A9DCF51E935C4E28AA93513257A6C25510 +:106FB00000464F7A2A7617C8ED27D60C6345ED3A7E +:106FC000FAE4618A8DE154CE94052EDBE753960FE7 +:106FD0007F92CF7BC994E31CC5D3C5FA283AC1037D +:106FE0006B210C853CF81309599C5A6F95C41B0EF4 +:106FF000D551A505E420B8AD99F717E0B674A166A0 +:10700000BEB5F7EBE14C5EA341CF4CF64EEA8FA63E +:1070100037E4B2815C6716EE909A218ED19B70D0D6 +:107020005FA8ECDE205E053EECA3AB912CF5B662CA +:10703000827BC11E5A3D35D0BD6E3BD65E508AC2A2 +:10704000DBB4975370A6F7B7C0F391559C36A019DF +:107050005B7A5F41BAAF97555816A821E52B2CEB08 +:107060005A60AFC8D71D2A6E3FFEC0622AF01B17B8 +:107070007B3450D56A0BC0510C5E5C8E34D99BB802 +:10708000EE0E5074ED7BA7230533F333FB923B2CBC +:107090002EC8E07200A14E63FADEF5E8D18F6202DD +:1070A00077799316F3FDCFFD92E8A64D904F54C12A +:1070B0005D99B7876608913F9C4BF5ED91330A1CAB +:1070C000518C437ABFB5C9CAB501F8685A0A5470E1 +:1070D000815B7DA557704078863A9069C0E76FB3B1 +:1070E000A325018F67F852F24030DAF14EBB685C9D +:1070F00001124CCD5733CF81EEF6BF555ADE8C26A8 +:10710000523DF9C1BB1469F4779FB2069BAC8D9DCB +:10711000AF52D8C2D050A8D46428D3EF2E86D64F11 +:10712000A572118C3C23A77051C154786CDD4DC4FD +:10713000ADCBA0615D6E35D1E7D1B6D261C1797EAC +:107140008610B4D73ACEA699C6D166667F6D391837 +:107150008B8594970EB3972C42B84D44F2DFB8BCA0 +:10716000AE02C2546394B76DE1BC90F41CF9C50F34 +:107170003C06FEAF070DF7A8E2143288320C5952D4 +:107180001E5D9DFC1673238D6C4BBB0C328784D81F +:107190006BBB018ECEB7BBA2E0231A6DB0EB4DF4F2 +:1071A000D0E506053F27801298A94A3F2569AE25FC +:1071B000249F63E3775F486376109FB5DA6834F005 +:1071C0007588AF3CEA41F71BA6AC64DA533CE4DFB8 +:1071D000D3D13107E0D04F33A3C5ADA12AC7442F87 +:1071E0008179AED9BFF7C19F26F57502FF02E03C59 +:1071F00080870EA60A0DC95CCE465D0F2668CED2EA +:10720000E3A67DD5738B14D925B6260F53BF1DC5B4 +:107210006657F1126C17E9AB7C83EB30C4C5661A74 +:10722000C80A694B19C67AA3115E039A685C43AF1A +:10723000B901F8AA7F491BF56DE5F44F70C21E75C0 +:107240009AE8124D7F66C6997F5660CF71439F2C96 +:10725000632EFEE2328578A34162D0337D967C4472 +:10726000A1EC4DCC3F030A7B329B6FAECE702D71EB +:1072700017A1ADA25C2FA4B239442DD8983B20169B +:10728000D9DB7450097EFFBF605E9382CEBEE6E01C +:10729000EFE0666563206C2E0E40D7842DAC01FFB5 +:1072A000940A600F8513D475792583452167B58EBF +:1072B00036AA0B18200DF3E5A5EBCF783A084EED72 +:1072C0000D89D438B1AC2B8D4AD6D8F987CDC07191 +:1072D000F9E60A1F1047E03807BAE678F6E03D8F76 +:1072E0002CD529B8A366AE5723D8D2F870F0BD5577 +:1072F00024B5C7574B21023AE1AC81260595560EBD +:10730000CD579E36A0BE1A6B1821FBD55505B9FD89 +:10731000A23A666426D7EF234D46C34E94398CA714 +:1073200038C31CB54E6672E3C4D803E056DC85D979 +:10733000BBCAB8A75B7D26F3447611DD517E81ED93 +:107340000ED7490685DCBD50E8131058EAED6826D3 +:1073500018D51834C8CECA60C5AF9E7F79BFF70272 +:10736000838B53562512918588DD5526A1AA15D405 +:107370004E8638A776E149D275F87ED285CBAC949B +:1073800088E5674CC84C96EB072AF81C5B94567945 +:107390001C4D9011C9C6C36B8D631476E53D501921 +:1073A000F16D4485006DBCE832B9CB00180CA13FEB +:1073B000BD532786F6B2C5D18010ED16CD4D2226DD +:1073C000E6762FA9C2345C1BD1BF4A42166302B6CF +:1073D000C80D16851F6568034CC4DA6C6029C45A51 +:1073E000451068477D4F4525DE105BF21B743D8AD2 +:1073F0003E2112FFB1BAAB571D015F5BAAF24E03EB +:10740000AB0AC04B7B0FF9ACA303F8E5E77A3EFE6D +:107410009A931BC582605DA66922C17C77AEFBAEE4 +:107420008F2A42BE52CC5E0B8519C62251D3FB4334 +:10743000253EC0228601C477255311144065CEF144 +:107440000119952943AEC6FEDBD851126C1503A66F +:107450002F9D16EDEF62F394FF8B3AA5EF06847132 +:1074600024949C8CC918D9E5F28C34E943E1497E17 +:107470001454FC1E1304A39A7859535A8E7195E53F +:1074800043EA7557296AF79E3001FEB71EF7E303FA +:10749000708C48F17D0A1687ACC9728EE2BA23223D +:1074A00025990B6A04283D7B409C4EEB7FA6230D5B +:1074B0000988A5C2C00C5DB5E4145388898632B032 +:1074C000AED934A12CAC2EFB98B6D04106DB6D9121 +:1074D000DDBCF0C98556A2302E5CF437C2866D9FA4 +:1074E000E9D08F7C124081131948CCB176805F6C53 +:1074F000D4A4E5553C4590EE4D4BFB2C5857E63552 +:107500008A1DD11376766702E6E05A45271FD66FAB +:10751000B34C598AF56E75CFCD81BDBA58A116C44A +:10752000B0AAA9D680B636439C4537BB626795B8EA +:107530004AECFA2315F2AD570BD23658744429B1F0 +:107540008116FC312CD02D480ED6BDEAC0A86E574E +:10755000D0337C08054A9E9FC9F755C51FECF797A5 +:10756000B1C43DA51E871C99E5C68E04FD101348C5 +:10757000F7718165FC4E90BAF9E3220733DCFB34E6 +:10758000783F5B3DBCDEFC796DA51EFBCE8B5E5863 +:1075900084FC31236C4F497B40285C2088E9D51F4F +:1075A000AEC045D71E9293D317F6FF0E645C5F0BF7 +:1075B0001FC19E3E27C14B80D6D97E41CC4E4DCABD +:1075C000D76F205F5C3229F66DC34C8B127EC0D41E +:1075D0000B8C984C0759C02FE53CC564A4CB9DD7B4 +:1075E000887C2B214510D8A28F494D3EC8EAE84738 +:1075F00006CC110CE46EDCEAF4D7359A610058D061 +:1076000002FE881ACCECC0E0DBE9F0CBE4082B1DCD +:1076100085B4CB6C5D9EA1BA1F2870E228EA7A6916 +:10762000779A69E50CF88D120C30180C017A28DF76 +:10763000CD94E0BB4647BAA95B5BBCA329E4671DB8 +:10764000334A7041CBDC719ED92C469DFFA93B6625 +:10765000A90BAFFEE26477AD2DF0FD52DD4145C2CE +:10766000E077FD8FB90CBEC338DAD337BC342E0DAA +:107670001CCA731F4B2C95191EF6B13EBCCC1F21A2 +:1076800074AB5C16172420F14E08F9541A39CCE477 +:10769000FDBFE5FEF4BA4FF29D8A83DC078D369973 +:1076A000AD615F4E0E070CA634C0AAAF82BDC0BD4F +:1076B0003F6CB58288EA91DD7379BC8407E32A6068 +:1076C000F0C0EFD7848E6C09D4177C55510A259AE7 +:1076D000FD65B081E4C4CCF46A44AA4762AE74D0BC +:1076E000D8745931B3FB3E666A7F2D6E18BD0FF614 +:1076F0000255A31CBFCC20B7D1F5436B26BA379FE8 +:107700000818A176FCEE3E1CABEEFF3E0D41C339DE +:10771000BBB57A189B305994167309614571EF1304 +:1077200020A704173461EDDB9DA96E34BD131F4DF6 +:107730005C7EE15A847BF2D9C893221E3C30EF5024 +:10774000066BCB9645462A441A6149314579D4BC2B +:10775000B71C0744007323EDAFFAD3567850163D9B +:107760003516DDEADFF9FDC63DC071F5DC4915FDD2 +:10777000CA51C562E3594A41730D70B0EF8A146B68 +:1077800006510E8C8F38F8ECFD2F8BB85CBEEF8A5B +:10779000FA60DC50CEC60277263D348BDBDB0C4F23 +:1077A000994AE6E45489598CF7CA1AE843B010E0C4 +:1077B000562D4DDD494E7EF774F8D830409C252C6F +:1077C000EB5E54E667B1E67BFB3EF3624AA921CD4E +:1077D000222784A27AFA258F7B1D5D81F4ADE4DC3B +:1077E000C62E762180B97DFCC27DB77671BFF1BF10 +:1077F00071674C3FDE4AAD572F569D65C3FEAE61A3 +:10780000213F6E3636EDF57DFFD08C2BE195D227EA +:10781000021437649FC88F7E78F2B627F0ACD1B3DC +:10782000EDA90EFC14D1D567F31E4E979230E4BB40 +:10783000537C793468A1ACB2D339128FED62E3DAAC +:10784000C87BD3B77C392266110A2302EA8BC9DED2 +:107850000EEA5BA557A38A9573915DB9191E129C18 +:10786000B4009B9B1BDC57A3EE1B0ACC1439D73307 +:1078700037C1CD8DB9016A7FEB8FACC94692843C8C +:10788000CBF184B36A2BA87CBFDA0AD438E5A3E431 +:10789000D1D50E8ABE52BFE84F920CAE2166248D20 +:1078A000AE0719AF99B5EBFD2090B57FB61E502AF3 +:1078B000ECE003689B51DF4A1781D3591EFA94D03C +:1078C000DC959D9CB845C5A15CEA25E5151A80CEDE +:1078D0002B67D25A381EE2FC19C3D9F972E355E579 +:1078E0002ACC5237CEA3A8FE71170F5EACC88F18F2 +:1078F000E94274C45DE9E4A8888C0B8B8FD2400FF9 +:1079000011CC021821ADF5BBD3EF76D229F8480B84 +:1079100021E59C9F11EF6C86F2F55E9AFB1C0E3DF3 +:10792000C78481BD83F5BD80F57E7EDE7CF2F0C725 +:1079300048DA8B37EDC18C6D5571B279C295193C1F +:107940006179DC299ABC98A5566045EC7D957C96BA +:10795000D2C773C4330D4A5629E0095A9B74E3AA6F +:10796000B8B5DA559243BFB4DC3383609D6AC44E28 +:107970000A1313A09870D447D12F308326A2B141A7 +:107980003F6018347309E48089E4FCFB11CD5AB9D7 +:10799000DFB6A94D223D57DF5DCF9F38941FCDB68E +:1079A0001F1C99490E73E501A69FD609FF52A1E25B +:1079B000EDB5B60647DC8B929149AA4E2374192285 +:1079C000E4693B01D30A750170DA1E6848C8BBE25E +:1079D000155554ED56EAAB8ACFD755A9F00FE726D7 +:1079E0005D682F6D67FE3922AD2E283968434DFA48 +:1079F000616D28F42D4D0F0737487EFE9110AC7451 +:107A000052D9A10B57833BD3390251CA4B49B637E0 +:107A1000132F3AC24C387B934D943768EDCAD495F6 +:107A20002D662B4144CCA422788C96DD3399C8EC8A +:107A3000856389FB1C71953A7F8BD9AF038B7A954F +:107A40001A189A28C70D9564C8D8713D43E6524864 +:107A5000776F721C6658222DCDB580A183E1DFF5CA +:107A6000FAD3A2ADA1D7F8B67FB35CDDE03731A081 +:107A7000F8622446B2C57AC861BEA312A19F4CF435 +:107A80008F2F2DDE84664B23C32F05D20E3082AF9D +:107A900058F861A7F1FB50DA3A32E419DDB8173F24 +:107AA000AB8FEF2022ECC39111BB25170C25CDFF26 +:107AB000AC38BA7297A25C78219234C2CFED64C61A +:107AC0005B365092C291D8CAE96B88DA65AEC3D4EE +:107AD000319947FF1F22DAEBFEEDC1ECD102BBDE8C +:107AE000E19DFB84E1EAF6AE4C9661E11F357C9A9C +:107AF0008152512F4F5B717FD5B1CCEFB092419F36 +:107B00008307398BCE0618D540178CF816D9D6CDF9 +:107B1000989E632D6689B453A107F21BAFA2333937 +:107B2000D2DC1B6A42E91C027D6951855252630E08 +:107B3000A07351B0993324C08798F6AC5B2C137AAC +:107B4000CA9AD9EB3AEC9EF27E20521E42E79CF292 +:107B5000A38B9866A4195C8C904EF7B773C3F38718 +:107B6000ABBB8935C1FF1F3EA47710B8655FA99FE5 +:107B70001B1C7DD3B2C4E9DF53993EB36BEFA9F56B +:107B8000E2F7049D537BDEC60A4B3B6983FFE8FEA8 +:107B900035F0304E780E2411C2B0BAAF56E52D5FE5 +:107BA000DBE6792BE65107445C8E02FCA4375BA52B +:107BB000E6B8E490B9F504A863223A925266E11E51 +:107BC000B04D8256DE9EB1C27F269299F84AC80413 +:107BD000DD48D25C1F02AF117C6D78196568CABAA6 +:107BE0002247ACF1D578F96ACCD994C43008D3D502 +:107BF0007E067BF43880428A6DD97EFFD5354CFAFB +:107C0000DEEBD306C2E3BD9691E7A966627D490F1C +:107C10000B9EFA8FD41BD6958BD302C5F18FEE70D5 +:107C20004293AB1BB8500AA40A1C56781AD62256A7 +:107C300045413A56D9A0E484E939130A7B42B70991 +:107C400070C8A07B6BBDF121A3F7796C8ABF4CFB98 +:107C5000F89982ACB167DF5F98A60CD2ACFBA9FDA6 +:107C6000C9720F3DDE2DE9E64FE4742828633D23F9 +:107C7000355A701C92478AA0DAC6323F9D4589C8A2 +:107C80000505AA12B30BBB2662F3EE9B17956A9308 +:107C9000483899676B99C36B0DDAB35FE240DDB684 +:107CA0007D630A80C2C99383EBDAFEA57B1D803A0F +:107CB000A40F0CA4DB606C790D5DA286FF3B17FD61 +:107CC000EFD9F336E863FF2AFD8EA0C3CB4E3B12FB +:107CD000B4C52D344ABA8141E30B4EE46BE12079FF +:107CE000C3D4DE897F979DC367CEA23FCE935D3418 +:107CF000969CD51DA24A728D860A69BE0E0F02534C +:107D0000F5463A8F5E4EEF4539065295AC58A3D3EF +:107D1000D8E0749CD29055E50D6022006CA7727A71 +:107D200015E84A4AE5860B1EAF464B8F6B7D667998 +:107D30000C7C96EEA7700A59E2056E8CA710E263E0 +:107D40003ADB4BD21DD3BE4D5AD1BB3F403320DE70 +:107D50000FA81F3898614955C44590D58309E5336C +:107D600045CC5BEB1CD6AF39AED465C916F8D073E1 +:107D700036E8B6CFAC652ED617E61B23F57B74ED3F +:107D8000F756F3DFFE11B9F5761DEB2050EF838E29 +:107D9000163A5CB3B5837E83ECA73A8F60A2DBDE34 +:107DA000BA44D707B5F9A1E2EFC68A43A383F648E0 +:107DB000C3FC7D95E43B50573746C9A40071A10F21 +:107DC000E02F0827FED892DE1B737AC07959A62BC4 +:107DD0005AE1BB3B35E767AE0929193C72301FC435 +:107DE0007D3424A84465FC6CD890DA1C16AAAECB6E +:107DF0009186BB07B115846EAE4B71837464BB2949 +:107E000028D52596040C7651A0D64E23C6767E340E +:107E1000C47F2CA8A0CF89F55E6FB72CCECE186298 +:107E20004BCC99703480B4797ADEDA66AECF41BA41 +:107E3000404FF46423733637003AB079B946B93C01 +:107E40000BCC84C16B792A7336A408A55764C9B6D4 +:107E50006059A936A63FDD84B85DE98F725545CAE1 +:107E6000C3F9E0B800075629D9C4CADCEE8591638E +:107E70002CE2DE0A4213406021F7A916B55FF152E9 +:107E80002484FB8A7C6B5C0235BBEFEC1BA87F84EF +:107E900036CC1FB6F648F02F32A58BFAC43D1C8BAA +:107EA000D8608F6114964D0B28E0482977BD4C8E21 +:107EB0003C38FCDDFDDC78D7281DD01F0896A64F86 +:107EC000449B7430705717EB3A45F3CF5894FBA29C +:107ED000738345AD41FBDFE48F9A37E4C552B2733B +:107EE00000207FF89C212B3F21111F7BDF23748111 +:107EF000B7B1C72B48F7D99EF5F9C55A909A37887C +:107F00001751444E815461F0428B806BCE006C223D +:107F1000CD5725180358E6043A87D97A52CB7230E8 +:107F20005AF3ECEC0C8C964664BEF4EFCD5EFB6429 +:107F300098A687109F856AE7A4C3154067B33FDB07 +:107F400066377FEAA5A2E178378CED617E99B8406B +:107F500077EE66BA9C7C5783112684C36628B56188 +:107F6000553E91414317274CF68E0EACE695403DA9 +:107F7000199A5370485B4A641018B8F38FB5E558E6 +:107F80001A7DBBCEC554A09A5682D575A20795041A +:107F9000AA5927A3C381C749399BF0B76402511D71 +:107FA000D4CE04D5A3642FF530D0A7D9951C439B1C +:107FB000870DF9D72AFB75FDC1E16449B1C049DCE1 +:107FC000B9DBB4DC12F01C8FA841A94DE885AA2BBF +:107FD00041DA2E34A3D96566649356D0FE5A55AD66 +:107FE00081A6A3ED0E9F48B8329DEE14A057979836 +:107FF000E013F86146A2D0D5ED1FC29BE25EB20F3E +:108000009416FCDA4B2C3468EFD8240695663E179C +:10801000EA2D2FB14C39A59F1CD568FAF30A616689 +:10802000FE503196FAC1B24BB8ADBBD355BD70AA64 +:108030006EE84307C53CC16E4950ACF9F5B95269C9 +:108040000BD9D6B89F87CC85EF9F771696F20D593E +:108050008FA392880F594080D69469A71E0E1CCC1E +:1080600077978A39800FEE4E3E771DFE78558DA8A2 +:1080700054DA1CD3601BA4EC1C66948333A18232B7 +:1080800075822420D339AF69D4C9360881F12B2CED +:1080900024629A0856AF2ED1F89E8869B34DF42217 +:1080A000A0DB4DBC2D872DE921E012E0175BFC869B +:1080B0004A5E3A199067B0C90CF98C8CFD7633B0E2 +:1080C000FC57EA288DF58A3AB38862CAD9B3655558 +:1080D0006056404E35D721FB2D04559618E03EAA38 +:1080E00086866BEE603EB28DF84C1385FE47B02657 +:1080F00016084FA59E2C853B077F8EAEA609436EC2 +:1081000057BACC24529899D200D565DC9992050BC8 +:10811000DC7E15E89925058062FB8CF69150B375DD +:10812000C8D34A5AB2B7604389795AD0C2CA84F8D0 +:10813000B231AA277EA15A3D496AFDC1D652558A5D +:10814000C06753F7407D005944C9C7EA849EE6B42E +:10815000A8CC9185F888BB8944B862753D000507B5 +:10816000E060F790F1AB69CC85265DD5A67A32F94F +:10817000BB035ECBBEEE9D25897E70EA5C69E1841F +:10818000D1CC575A65E829E729520AA75867F24720 +:1081900091ABACCF9B7002794B6AE37200C948D3B4 +:1081A000C50324C8D063DF9F4BE77D4D7FF550C7E3 +:1081B0000F1C11CD38322753CC0A7E13E648A3B2E8 +:1081C0000949FD2B64CB56396B982731108A82DE22 +:1081D00015C368C69D91E0625AC273A048F266E575 +:1081E0002D76E3A5683C1EDB989F513A5A9C87493F +:1081F0005BC6AD14C7CA6E7CE28C8719C0AEC76C73 +:1082000059E04D2247AFA0DED42C593C5866054AB0 +:10821000217B32DF0E895F3117DB508EC066E18132 +:10822000A8E3F77B538560DAADE863A150C9C83194 +:10823000794FF0663ECC41D80F0588776EF8CDD3E4 +:108240003F94C46E08265A81DD12BC8CFFDF1DEB03 +:10825000BE14CEFD5999EA1BEBE6A3841B39F4D476 +:10826000164B45B689F694DF9A7E5E71F7581C125C +:10827000FA3715BE5E2D456F306D7799E4507D6FEE +:10828000C66FA9C0FFFB91F4BF8DD086621DFB199C +:10829000B58EE04DCEE75F27AF61FFB08A1A664D1D +:1082A00039231D70EB1B1F2D5F2B465197F1185280 +:1082B00057B2210578064BA9957B1935BDEC0E7197 +:1082C0006DEC319A2F8118C3D2FB49EAF4700D9FEF +:1082D000ADD1E7DBF6A7B7A45D9C5B0AFE2555A1EF +:1082E000D0D484439A73CE8C8F4D1C32FB628B6149 +:1082F000E4980AFF545D2ADFF0B746E724A5E97247 +:108300001973749D1D7EB72D505CC9B54D56A38958 +:108310006CDCFE85251D61B985670A84BEB3679D47 +:10832000E82FF5EAFB3EF731C7DC079D2E6ED0D370 +:10833000F6D66328DD68C9907EE053242B4D31AF1B +:1083400041102C81D1E5A3970C029E12F27F3EB51D +:108350006C32E6F5A38E180578E358BED619B4BC86 +:10836000A96A887CA2915522873D359703CA23BC10 +:10837000A72C72CA1CFC8E5A1EC127353EFC6A7C93 +:108380007683570075814D03B0C306B1FEB9FCB7C3 +:108390006DD3301EE1F5804128D21B3DD70D5FC45F +:1083A0007AA9B244C6AE804F500ADFD1F6AF868FAD +:1083B00097AF3F7DBBAC4C3CDD2297C23E1A9F136A +:1083C0004A5F5358B1EA40CE312AD62C211E5CCEEA +:1083D000B199CA19BD6B788EC51A3E00CF4D38735E +:1083E0001AAD69149F8E776745696FC14068ACED1F +:1083F0007998388D75FF79F69F1AA5500B53E5FCD7 +:108400006DAD9137B48D3C0655FC2445EBB4B449B1 +:108410001617E027CF9BA264E97DA470D1A3298F12 +:1084200008B3FC8674D904643E3244089AE48ACEC8 +:10843000A97063E33847D71CC39BC737ECD8D8C0B3 +:10844000867EC3F836367CEC19B262F90EDF4254F0 +:10845000D7B7A0A0FE32E555C68E4D2C7768FAAB93 +:10846000F0C4750BD868CB8EBAB55BE369B04CD459 +:1084700036C77B9E8C616BDC1F92ACF33048D38B8C +:10848000A80E12952711174EAE4F473D23AB6C88AF +:10849000452EC41D6325EE5A134378E6E1D1FB93C4 +:1084A0003343AB29F62464CBC685DA975EF80571B1 +:1084B000696ABA4D3FCA8A0FF674324269C0B35333 +:1084C0004758750A1F86829F81931E71701F457ED3 +:1084D000F332D24E21AE7A748918F832F31DB4EC1F +:1084E00008EBD50DAC1C4771E874F9DD0B434EC0A9 +:1084F00057578E3ABA1397FA5FF628C3CC91E5A97D +:10850000ACE990021ADCD2731D34897080BB222C36 +:1085100083D788D2F1EA4ED13EFF1A86874F07995A +:108520003BD7CE2B4EDAB4BC17205895D4EFF6A427 +:108530001B15FCF0B83713DAB15E5ECAAA815CCDB8 +:108540008692BF6AF4A215C9D36CFAB64B8768AAA3 +:1085500024C152C1D574993AB55D027D1D7F3E108C +:10856000668BE6C34A89FC48D6BFE6883BBD8324B8 +:10857000340E6129E9A3A1545F32269BC01C0886F2 +:108580008FBE150BF86B90CCE25A70E234673D0554 +:10859000A4FC6FC0F4160C0BEF7FE2BE4C2985FCE7 +:1085A0002FF3A3E32148BBEE5096A9EB77F7619D2B +:1085B000909B8549DD00A21307F28281FB899FE32E +:1085C000B57D4F92EFA2CE0F6CF887CC856DD10EA2 +:1085D000693525A6C6731D95D9AC7DC10188E1B862 +:1085E00007CAFE1FE632F16E20F0B67F27B9AD6EE6 +:1085F0002B4DB62364921B5181147673EF40FACB56 +:1086000013818A79B4B8BC723E60F4F1B50EB7300C +:10861000D10C95DB5F50C8768793DE2C477F536182 +:108620000668F1DFDF4086ECD5E324A7F7129AADA8 +:108630000915C8806024B593933DB47E03795DFB32 +:1086400048E859ECB8D6C0BD84D6C799EB326C7AED +:108650001D4DC8DE9D51C9FF2BF3828B53AE277E83 +:10866000F8754622330FCAB1A912CFB3B43ED8EB86 +:10867000FEDFC5F71CE6FA34427294AC45B2A38F14 +:10868000969A6985051D3554C8E027475C36C21E99 +:10869000A04B2C9CD325002B6A08BB54AF6B04D392 +:1086A0003D2F9CC93D972F9BAA27F553BE621DA362 +:1086B00060502FB83FC956B3C0D5C9409345065046 +:1086C000EC1554DB5F1D204AE846878AD432913C82 +:1086D00072C2F6713C75A486D77CD779AD5D7EEE0B +:1086E000155AD67016C17709891C356A5E05A63100 +:1086F000E248C263E59D8F8301F5643CE5116B3070 +:108700004DA45887E549D68BA694AED5A479A26D21 +:10871000D42FB5D19D2956D896D7BB708660B54168 +:1087200002E05B1D67D3E82F08402F603C390680CC +:10873000F09AB66C7E8C211E6C9A5B9F4C8057829F +:1087400042BD82D772E988F58B3FF0E5CEE32B0B73 +:10875000BA8D64D9D29C4D270D59FAC18FAD5759A6 +:108760000EECC096074D901EC832CF448B0D73ADF2 +:10877000DEB41C2860FE265A292D15D28F9E651F57 +:10878000573665465FFBD60AD42352BEBE4AF5D3A0 +:10879000442207289FE228D8CC83E1E467F5C0E6AD +:1087A000958F0BCB28A23EF4559AD41F3E6797DED7 +:1087B00027CB67F8239988FE8E1D9C29FAF557551B +:1087C000224FF7BD5B0EB3B19F8775F27B2EB33698 +:1087D00083572C8D6DEB073DCBC39A720A915C4297 +:1087E000D0AE96FE71A4BB871B919742A75F98B845 +:1087F00081C3BEE4BA94ED2D792F478B707888EF52 +:10880000795FDAAF444C0801FC8868EA2B9949EF9C +:10881000D0B0F7343FB3B38742496EE51806727E95 +:10882000F45FA06FA4C6D31B3E4462928FCCA553C5 +:1088300024BBC640305FBB458D87F2DC9E2A69E1D0 +:10884000C428711C4A877594122B062EF1462E51AE +:10885000B84D533942BD8C76534397984D8E025094 +:108860004E3058E885C675A9EC85B544013C74E3E3 +:108870000EAFD6F70574A0A95BED9649BFFAFABC16 +:10888000D01533D724C3F7E049234C937396CCF625 +:108890006AF2BDE661557451588519C4D2AB5D6D5D +:1088A000034C0F045E0D64243D0F0DCE6AB12C9F66 +:1088B000C123050316ABEDD6A0B7A13CE64A05E5FA +:1088C000517455E86FFCE4C5999ED41316879B1A22 +:1088D0007849876366BD4161E5F3D3F0A4E83EC5FE +:1088E000FBE633005EABF80F4E9EAF74DBABB322FA +:1088F00084E3008F3CC8A8E27E71256DD4FB02E6BC +:108900002CB6D58FB24A2675EB9442B0AADA42DF74 +:10891000A8A53629E2D9514079DCCD7A492356F50C +:108920001D71F9F5A99E324A026D43F4F6351D7AA0 +:10893000EA2C2FACBAE8A738C2B53DDE19887FA271 +:108940004A22175367C2B200B833EA1C3B0157A64C +:108950008419D1803AEDDED8BB859539948BD39AB2 +:108960002C049178A7C0F8EEDF89D79ABDC710789C +:108970002E163B3C518358683EA5DEEEA9385CA616 +:1089800041FDB0BA436BB5D3261FE5EE4F798E7F1C +:10899000193C92D12ADC1BF034ABB52E8203D00CEB +:1089A0007FAAC3BC2E536A932364162954C82C8D06 +:1089B000330684BEA125E54FF86D2A07B77BA2A830 +:1089C000767C7C0613FC03D4C3808ACA3E6819B047 +:1089D00093DD0935DF909F2EB4D814222E748BE6D8 +:1089E000D208775AC5F662C8AD7C1CC482EFCD8F21 +:1089F00042460E2DD7BBE0BAD346D02F56F8D05AF8 +:108A0000E11A297947DA1747A909660FE256392191 +:108A1000749D6141B6127834049EC3D74ED511AB14 +:108A20009490FCD1F98E4805C44B94D85F50D86817 +:108A3000FC96F0564E5B9EFB75FAF249B4FEDBBD28 +:108A4000D394EB9ED04307F6377CFBC050CC4D2629 +:108A500015EB6AE8F0DFD647122792D34B490E6137 +:108A60000ADFBD3C0B040344823F5C64669662925D +:108A70006FCB4A516A2C32A7B24CC0781E72698CF7 +:108A80009087C727DC9BE944F171F0E7A0C858B78D +:108A9000B03145A7D38C4050E2A355D401E0CDD6E8 +:108AA0004FA107F8ACD8499211B39AA52647E4F034 +:108AB000951E790CB9B546667BDF8C1B49F7BF65FF +:108AC000BE9683DEB4C70472028CF61FDE9E894B0D +:108AD00086E7BC71954C835D124A9F14ECBF9D9B49 +:108AE000EB0873C0B36E5D7D9C0F75A6311B39CF4B +:108AF000475475D21C8EC418BAA7CA5EEE798C95FD +:108B00001CF7FA0CC005C37E7E7517355E64299785 +:108B10005452300ED1ED6B3044D8CBC3E15CBBB9BD +:108B20003426E8FCDD27359A3165EAA103F8F39A8B +:108B30000F95B00866893729A269B761BE6EA3C9CF +:108B400015B38B07975D2A11FDB9848AA9E7126FC7 +:108B5000C5CADC31177EEA2C616B9FFB279FB85B8F +:108B600024AE3749129DD98185E6A4C585875B2847 +:108B7000E85E10CB38B2B3DC26DEB559F55086E797 +:108B80003664DC8C070A9B1852AA65C5AA3463C6F2 +:108B9000FA7CB45F555F66D4B48B5F0677CE254E02 +:108BA0007F1839275D91C6B8C9DCF80B6F9B373841 +:108BB000AA365CE5F8AA0AAD14A53F0B1D2069A1F1 +:108BC000543B2FB38CEBA9DCA081B42CBFD1DDB515 +:108BD000FD881DFF989F9254AC6B82CD519B7CCF3A +:108BE0001208242CC03084E54D9F4AA5C687B4CA1C +:108BF00019071D346C69339EC5BC4B70525907F779 +:108C0000EE2EDE768662B6D78E20C6D9B964854D43 +:108C100034E522C53452BE35A67867836192F69A50 +:108C20000C13406107BF5B399EA50D314A362D8478 +:108C30001B6FF5F50D9F2559372E971BDE802E688B +:108C40003BC50624FCC3283EE96125CAE4DA5B6221 +:108C50002EAA8043FE23672C4D428077C1E04D9DB4 +:108C6000DEA2424D042D927D0ECD5C8353F7ED0EB6 +:108C70002EF8C4C82604E0FEBDBDE30C06D3D85EC2 +:108C80002FC3B8547755482E1338E78BE7B4F576E1 +:108C9000A05AEA69F3057023E22D3ECCBFED0842ED +:108CA000A53FA7096D9F5B893CBF8B6CF9B29D7492 +:108CB000454C7DAD9CF0C31E539D7590AD43A1A75F +:108CC0005F984ED8EBADF6E5D67F0EB9C32E44FDC6 +:108CD000DE126199ABE3804F1656CFE4A1533CF509 +:108CE00025AA9808E041A6791BF74864BE3C57BA0C +:108CF00029AB1478EEAFD09105D6F256CA77CF07DC +:108D00008DE9116C7CAD42151573923BDCAAB6A1BE +:108D10008BFA3FAAB4CDC132D82384D13E32F62E8D +:108D200034AC118926D39D0684BA60D4C9DC5DA613 +:108D300034449EC9CA15376568F79280D58367D0D9 +:108D400002BB7846440B1AA5FC346B7B38EB557C90 +:108D50008F81CF15DB4393C4D814EB15D5BC200607 +:108D600022A60BD3A9E9D8A2EC9B95FA71F4FE4395 +:108D700025FBD9B1DF8D7F24ED0AF1A434CDFA4F64 +:108D8000C21A9A203757CFE400B864F89893517903 +:108D90001D5CD7B266717CF21B87EB47F3446F2FE3 +:108DA00084F644F6BECDA2D7F35198FDE00C861DA3 +:108DB0009DA8ABC6CF5E5920AC4C0209CD5CF062D9 +:108DC00060CD7B1CB14E1A9B2CE645C411F3E14CDF +:108DD000B45E0F3023484393C6A6B19A82D302A251 +:108DE000F59D8A16A44A26CB1D39B5265EC94DC409 +:108DF0004CA3570526CAB8933EAB6217C93BB40CC7 +:108E000057C60CC0852ACD94BD82FA60B94755E596 +:108E10006DC7F7B49FE9A97F9DD088078DD8AF585B +:108E200021BEAC5522F6505362FFD82206B8F2EEAE +:108E30000F081BB38DB3A565C688E91D2991323093 +:108E4000E3F7EECC3778FD07E70663D7A9CE9A1B88 +:108E50000472F534055A64DC3E39EEA5B329497A2B +:108E60006466312ED958D7A6D228B91F9EF0B633E2 +:108E700022A18418B702137696232B054DACA56B5F +:108E8000939CFD1482AA4840E4B14CCAF9623CB3F9 +:108E900022FAB749A79837CBF0D771BD8034C359B0 +:108EA00041F9EF3B3636B27C40DE2ADA75A7C1AA1B +:108EB000546DE1A6FF65893AC38C628777BF78EC71 +:108EC000D70A2842C928F70CDE63E5F97DDF805612 +:108ED0005A00FEE2BEC2A47AA976A0EFA2700723D0 +:108EE000F7B60F0BAC15D6D8791F6A0E30831C6508 +:108EF000A4ADBFA648C380649AC182783ABA6EF026 +:108F0000013843FF1F43BEB003704091E31FD78970 +:108F1000B863B78710061211DFD2ADAD870C3B02E4 +:108F200055C327DD16B1441C9072C79705309818B9 +:108F30001BF110386439BB0134C526FB19E5189BB9 +:108F40000B6CBB02D8520E0413CC41FD80FEAE2543 +:108F5000632584F92A98E62FA728C96D5366F1A4E2 +:108F60006158409BEFCFEE9C6E1D1EEF7317C89E9D +:108F70008D0F5054F7616489D584A706BD79F1DE61 +:108F800019DEEB93BFF10FED3B719D9327601DA29E +:108F900098C5F8D86B5C4343B3E54A0D44A29E865E +:108FA000ACBDFDE51AC397E08C12487EA436D3CB46 +:108FB0008C93CC4755040608180294F24535F14EBF +:108FC000CEA55B417561D80AFC4E67054E4E588BA5 +:108FD0003CEEEE6C3FDBE58C14760404568CAD530E +:108FE000F79CAC5E7A62F46F5B71515EA9594DB328 +:108FF00008A5BE7732EA980C5BFF6C4A85FADA0D59 +:10900000F81FF9D372EEB2B7EFFCC4236527ECD991 +:10901000289667E2B7FAF19D98B1EAD47426FE91DA +:109020003E748521E7E7331BFF7140F1B485BF1122 +:109030006E037BA1253029BB705DB8EC0FB5ADF296 +:109040007DCB4531E9F779784176B5C722FC04C478 +:109050000D021473C9D56AD86395E0278F43FA6669 +:109060006F0894DF1D0489E7D9FF8719D031EB2AF7 +:10907000AA5831F7AE78572B81758B696487E88ED3 +:10908000805EC244710830D1000FE9F72AF94D5AC9 +:1090900021FE153BDF969B3A189855D3308E9124CC +:1090A0004AD379B5DBDB783DDC86E162E7D0AD4EB3 +:1090B000E5457C81C0EE1AD19C782F625745A88E79 +:1090C00031E4ACB9CAE84B5D10499588971FA28F6F +:1090D000E8DC0915FDE7A76B66527B6AAAA4F1C01C +:1090E000F5CC908ADCF0036D54DF8B44041AA17533 +:1090F000123E790E46D88089ECAF4BC6BCF51CDF1A +:10910000CCFFE132E8C4EF4748AC787137F6DBE4D6 +:109110009D2C2BED53BA502D2AB4A0B14A78A9E466 +:109120000B74D07CF44CE0283F19087A96C5675040 +:10913000C63A63703293B2C6599B07E211B4F34A40 +:109140004397E01DEDAD63EEF83ADCD482EEA38DDB +:10915000C19F32ED2EBDB6A05F8E02F12234728B1C +:10916000186B61ADF0466A120F1E3967CF83557ACE +:10917000ADF1201845497020D46C1692FC2BD83CD8 +:109180006961751336E583F8CF4732A3DC4BA0B88D +:1091900070692C92355A3E66DC7F2DCC025337CF56 +:1091A000D1EA6B2663C067FD21E4B125BD68BCD060 +:1091B000E4FB0CFD5775E953437A3037C1CF1B44AC +:1091C0004D71445125FCD8AFD59E534FB43D6F042B +:1091D000724DBB845E88B96317F25CB70588E17E87 +:1091E00030738F95E85A066AFDE947E86690FBD52B +:1091F00095DED994B60C9335DB69E74FAD780BE17A +:109200001A880706EB4443EF3DB2E02BBCAB590B89 +:10921000C92D2A34C2634B3C566A611E26666DBA5C +:1092200067A81030BB2611AB230E856CA861F82F00 +:10923000364BD298A905036A1EAB79DE160556EDAA +:109240006B7CB1E3B286077D96ED78F7A65E266C5F +:10925000CD47EB4499786CFA799A26EA4744A77B84 +:10926000A3D6B08F70DE1B94029D9C420433D0972E +:1092700073392B537E323142435D4E7CE205DFD899 +:10928000782542FA3CF34A469B0E0127E80CCE5E55 +:10929000E6137CFCB5E97218A804D5A5AAC7F83670 +:1092A00008E33384D4710A50D06CF21858303C5F14 +:1092B0005DD529C64CFF5C8B1642FBAFAFD5338A18 +:1092C0001787847332A3EB86FF5CE75A6FD14A6B32 +:1092D0000742B7DA56071609913803CF102013A2B8 +:1092E000FD46B7177FA358B2CD28464F54AF2E1E68 +:1092F000E986E6B31E86019109ABF61DD7CB4D7703 +:10930000D1880655DC0DE9A2283C91A0CEDBC386AE +:10931000172CA40123707CF47B5B733C89C14CEE59 +:109320002841E89EDF13B188F12E1034CE0F0004DF +:109330005F1150442AD93C7A47E34963EF0CDBD4F0 +:10934000DB29663BFB2A73DBF4BC00C34C9C11C8D1 +:109350000807B37C8E83E32606AD60331D80652944 +:109360000BA1721DFDA8D7132D439B676DD28B8374 +:109370006F2440E4184AB8F2710AE8BCBE46684758 +:109380002654435B6D068103B890B8748AB214F119 +:10939000E32E320C4CEDC69D99AF9396E3048233D5 +:1093A0000FCAB3C939B46264F054E64D8C2CFE7D0B +:1093B0003E31EAACAF4A0A4A38F3A6C3984406479E +:1093C000B26329A6F88CDE750D818A9B3BEC7AB1DD +:1093D0004609A8A325BA67E195A6385FEC07DAE449 +:1093E00021D31C4472D7EA0F5339435C55F5980ECC +:1093F0001F1FE1036B0151B2BB7289982F3A03CA58 +:10940000F1C5A075A6A668339D7A279EA0AD11ED83 +:10941000EC8EB06C85A111321597D19E1E4664C0AA +:1094200062E2463CCC93431F0BCF6CCE68D58C4D8B +:10943000367592D77E6FEE40E375752E780B2070EF +:109440000320834572B216BA6381ED92CFBA37CC4E +:10945000917A032EB627F373B91BA577EE5841898D +:1094600098D04D83D2781411F476DC5D785442ACF8 +:109470000B6416D45ADCBD3BECFBFA6194A885E57D +:10948000C0C905E10863BE5BD0D26A050EDF9CC58A +:10949000F20B2CD11E874C207224908C0BD9111901 +:1094A0002C6F3C31A1F3EFBD1368650156B41EC6A5 +:1094B000A4FBFD013EBC6451D4DB57C247D4930DDD +:1094C0007C15BA9AA537BDC1156ED8CCA73E3C33E2 +:1094D0002D4411AFB5EA056B2E74FD3E113F2F9B55 +:1094E00030A54C8AB92348D1AEFBFFE0252A5D3276 +:1094F00024769D7F872DF8D8EFE6D7A861EF2CD88A +:1095000022E6CE0ABE1DE89D77B0589D4DF2AE8C86 +:10951000A473BE30EEFF6784CEEB48974DD7053776 +:1095200013C542A4388D81D28EF0DEC1CC09B16062 +:109530003FD3B0481B19E170D94621F236B2E0574B +:10954000652A373A5101008E32FD3DB211FC8A0F77 +:10955000D920635FAF74199202629E825ED20D556C +:10956000F572E15E4DEB78E3077E6DD1F01CFEFCF9 +:10957000506DF428E9BA2688D6A54765CCF0EEC22E +:109580007EB3AD6379FC07899E32E9F5CED78F941F +:109590005C3C0DBC35184C2058344C653BEECA1170 +:1095A000283F5FBA4E32126B3E6C3D03A2EFAFDD37 +:1095B00070557CFB5A5729C69A5E785A6BED047A2F +:1095C0000C473B05BFEE0860F33DAA052C12A0AE88 +:1095D00043900326CD6B43EC3C43C48717BF7D917A +:1095E000D7BD8E165038D144B23AD328191C2FD487 +:1095F000E6991F06616B485CC71F9151B5A9A19EF2 +:10960000103CB35DA5A8741B6C00D5DD4C5103164E +:109610009EFFAF821003C6371FB4E710B56FC3FDBE +:109620004CB1CAAAE440063CD3F0E0B370383C6FBA +:10963000935E784AB1B22787471E3DFE66A8EDF4D7 +:109640005474BE8693DCE0C0D953D16BCBE6060BD5 +:1096500014DF523D50C5FAA5ABBBC74DD9048C8B66 +:109660000572512EACC3D5C3F5B4B5F6E6A5F15ECF +:10967000A7E6D6862BC15C9F1B80C36784C9AE2D2D +:10968000FB1E7BE7C07880A047810519CAC476031A +:109690005668F6F1A55A2F3A098F09D52AA5D33B6A +:1096A00012F6C718AAABCA36693A53E31F60F2D55F +:1096B000AA19FF6D90ED1EADBE0FE1FB341ED26402 +:1096C00035CF3DEF3286A15C7D997018C53CED0B1E +:1096D00003847C42152EB859D4B8CA9C3D22A700F9 +:1096E000E54AC0CACF5224290A46EDE91DDCE8BF8D +:1096F000BDD369AFBE89C633ED5320A35690D9922E +:109700000EA698FF5F3E49D527A9C84439A89BD328 +:109710005D690A4B57ED37CC6FA2D625779314CEEF +:10972000C2711F0EF9B979480DD643A88AC0FFFA55 +:10973000E6F1B3382967474D31E9A98ED9E7CF1B48 +:1097400076CFE240D3B3527499E4F0B47A730266F0 +:109750000892ACA040E6448FF3C414BA4484154583 +:1097600014D23A69249710E9D1DFB576C569AF1EE6 +:10977000C14460AC1DCD11527DAB3DEF975357F402 +:10978000744323A97E13E993CD32F11847498B84A2 +:109790005A1DD57824BCBE172064E0BC6C18D54196 +:1097A0007AA91707A51DF185DC3A2AE44928A69A6B +:1097B000FE81939AE201D74A6A206648CFA9C96E12 +:1097C0009D62C6BD8F5989C6240720FEB5D0ABDC8B +:1097D0004383496A5AD8D71DFCC7EF0E421CD1F209 +:1097E00085E80F15F5A6F508DBB2ADDD355C14F3A1 +:1097F0009CD564B1C3AD01F25584E3260ACA2B0A95 +:1098000071FCA001E68D49D55C144A3B9A2AC27EC0 +:109810000CA2F5C652D0BE66E88E7BB7A02576EFC7 +:10982000127B19C4A479E04AA697724A4BF432C459 +:1098300053A0DBD71984B6975F4081D338952B723C +:109840008DA9EAF006D2F99D65A6A215E04B137B1F +:10985000FE1B5402A860B2AFBC0361ED32A09FC1F1 +:10986000463CB9BC7CD3C6066A4EDC9C80EA90DAE2 +:10987000CB3445D45AAED102E431635FDC99B19D5B +:109880001F044D7BD75E6B66AF7307C161A595A3BF +:10989000294B9805158F82266A819AF2B9DB7C7D67 +:1098A00083BB416031D142365F801DCAD0C0032ED8 +:1098B000F8F55055240BEC5127733A063FF64A9AB7 +:1098C00090D7421A120F4DD14E558F65703602E473 +:1098D0006EF803A14828FF981EC9E4D532A22E1ABB +:1098E000B891635C1BD1C78B8F9DE82A1DB3ECCC6C +:1098F000457358155610E7B487CAA17451D7D88A52 +:10990000D487EF1403630CADDE20C3FD7653D5631B +:10991000FB427F4A7BD19CC6014C35BD7A4995F00C +:109920005330DA53B338195FEEC6E1A0636C996C1B +:1099300063A60B94BC843551FDCECE4EB66DD10ED0 +:10994000FA735CF3C3D9E95F284962373B198E98F3 +:10995000722DF1046657ED2257BC5C691E95525872 +:109960009B701D11AD789E43445FE228C8F6687C69 +:10997000A68964CC42B60955EA147F9067B1676046 +:10998000EF019010A22FC2602636B75EF110721759 +:1099900010D8EA962136A99E1236141462B1644298 +:1099A000456BE5CF298FD7A0C9B14C244190DE2962 +:1099B0003DB8AB9F9DFE4252220AACAD785105B82E +:1099C000FB3614A7353DCB089B244B375B3F05275F +:1099D000EC05436723BBD8DAFECFF5830760DEF6DC +:1099E0009865892F6CCDA99E81CA2922B6B66BF7DE +:1099F000A3FBCF5841FFFC3298C789DC1AA1FE2A8D +:109A0000115F3BBEA6847DC3BE0E505D776D8F3166 +:109A1000CC375C8966BDB5DF83594D636003E5CC07 +:109A20007F50EBFD729717ED7EE98FE3B591B65746 +:109A300045CFEE04E8E1212996D8DF3B4120F287AB +:109A400035A45EE806FD1E82220922FE068A4A0D22 +:109A5000394A5E25BBEB7C8B79A8531FCC8D9F3D8B +:109A600015F282C5FADFF59F3DFD898C652661AD53 +:109A7000D9D4DBFF2A821186243A8C350102395E63 +:109A80004D46F78709445F4AF05715F937629A3F08 +:109A9000DC7A8BC63143FE9C2CB0721A64DCA311B5 +:109AA0003F25AB5F20D4BC09575F91A2FC15016F25 +:109AB0005E63C291B31099F25331362A92C46C504E +:109AC000B75520A644E7515A3DBAD2CC7DEF62A0EB +:109AD0008C45429A9DB1EB36B958A4D5C30F0D768B +:109AE000AD45A24E6EC92000B3FE299E0DCB412A82 +:109AF00097AFFE184C7096E92F72E4DBFF6CADD285 +:109B000012C4F7CEB285C05C1F20D30F9D441DA1A7 +:109B10007ED39C7365BC01B2BAD274385AA85484FF +:109B2000499B1A434FEAF724C1F84D000ED5EBDEEE +:109B3000BF91B3706AE2A418D5B30398A7FCFB8960 +:109B4000C87622E4ED5AB27772DB0214B48D0B8131 +:109B5000149CAA8E246642564E77831589AFA93C81 +:109B6000C428A34DAF3398925C8B8F8F0EE456AF11 +:109B70001669E69A5D9E560E85A90BF117FC3F2AE1 +:109B8000D84C24631A6AEEED3238FACC369903A623 +:109B9000313EEB013FCD7FE3209612F80332849FE4 +:109BA0001A0C480EE2E5132E837BB6D880CCE56410 +:109BB0001195E7847871AB1CA92279257948189111 +:109BC000B53A97FB7ED08DD46EDF3C606C9D427FB2 +:109BD00044FB3AF90389E783955A71A84991C9B4BE +:109BE0002530F068BC1C10F132A37A08FBE3AB8F80 +:109BF000858C79744A3D5EBB80D49545FCA357742F +:109C00000FF8E32F00A67DDFE02F49FDB8EC71D3FC +:109C10007666AEB09E8C63630A11914B176E2FF877 +:109C200080501485368B55F59FF6EFB2CCE8E9B33A +:109C300014953399A54A05E80C9E3A56A60560BDD1 +:109C4000ACBDBD7D5903A5CA9C06C113A8F5C3B818 +:109C5000F61EB05659886CB489209CCA98F25B6194 +:109C6000BE35D760C844729D807C45FD0A600652AF +:109C7000C89C2DF28BBBC0EDCC02E04EA2D6B7D271 +:109C800046CE9F5A2E5121C8299F8558D44D683EF3 +:109C9000F404478F5C0D7FEBE09EEC4CF7E3CC22A5 +:109CA000D54E11BD272593F758F822ABCD2F035978 +:109CB0007B2315399A24EFF238A0EE8CF20774EE6C +:109CC0006E2356301B4CE80958F7C6DE996544A848 +:109CD0006CBC72B3CC2D11882FDDFE30FF9CBF3CD5 +:109CE0000267D330DA6EE3F5A4405836C5EFB8C248 +:109CF00051152DE94791A592BE77EA1045C06993A9 +:109D000016CE4F7FA329DE2405BC31EA6BC66F9DBA +:109D1000C26118BA657AEB69C3D666C95C590C2A68 +:109D200075BFAE0BFECA7C0643F018FCCEA069EEF0 +:109D30008E1E3A8C571D05F2B0EA92CA4B8B043F37 +:109D4000DF7041BAE9835F7D42D8FC8BA3CC92D807 +:109D5000267396796FE1D432DF153DF49C057228A5 +:109D6000E915665683EBDF398F0EFBC1688ED78EFF +:109D7000DCA43810592A630C74E29C3315E3D483B5 +:109D8000ED6FFA7AB2255BD6318E514CC7F5AEED48 +:109D90005A5888E583DDF09E1AC5AE20FB074D4A70 +:109DA0008317AF99D5D55A3D81A778B475EC27FBB9 +:109DB000E8351A6C831B12EF0AD11D285C8A0162F8 +:109DC000C25EDEC7AA5276AD971BFFA09984D83F2A +:109DD000BC4CB5A9B26CC0F3D252ACC21C4FDFA0D0 +:109DE00076ACA9327CF2092CE94D4A5BDD810D96F7 +:109DF000E38B7D1C764EB75700CD60AAE5BBE842E9 +:109E000085FB10BBECCB3450226DC5576AEA932C0E +:109E10001F45F1121240FD0EDF7D558FF0B37EC954 +:109E2000F2643969089DD27092069901445A9AB534 +:109E30001232991CB600832961EC7137796545248B +:109E40006CE09A28DA305BC4CC7728E98AB700390D +:109E50003FF7529FFB3B4CE498B78D52868BDB61FA +:109E600053A7E4F30BCAC6B0975CA0ED91ACDE6AD1 +:109E7000FEE9D5734363D6F6D2B10939AD18E317BD +:109E8000C1E86529496EAD73EC33B4DF0EDA4AA23E +:109E9000890C26F530A19C65AC38D8296E3B111F82 +:109EA000FA5366A66ABD2023EE467E738824A284F8 +:109EB000847A3296337EE43249FF0481111D57586B +:109EC00058BE7523FD2F0BF9DA403110DAB3EDCE11 +:109ED0004897220868463FB787FD894E508B820815 +:109EE0009BAF2FE7A77CBC8BC46300DDF761F92B28 +:109EF0008F336D7CFDD9707D7A5B82D7AAD0C93053 +:109F0000813666D731EDD0F4C88637097D7423FDDC +:109F1000267E49A1105CFD8EFAE21E5CB4FE6B54F5 +:109F20003F540240273BF8F706C0EC610ACF6A4A6B +:109F3000F1E68E3BB95D02473E1E33EDCE76D90287 +:109F400071FC59633140E1D6377B7402EFB219EAF4 +:109F50008E104757447761E07108EFD945B87BAE62 +:109F6000584E491E03EF2907A90145A728B24E5AAA +:109F70008029CD3E529A2A8C474FF6B6D32037C15E +:109F8000160831A087220B0ED90253CAFB58D9A359 +:109F90000B0AD9FBA6C00C684A2CA6FB6759B05F18 +:109FA00095396C534A0EA5FDA9E1B7B17B2412BFC8 +:109FB000270D10BD16E5BE96DF1EA04DFE127008DF +:109FC0007F6B96A8FC2DB322DBBBF2425A76041EAF +:109FD000E6253CF63D27B3BE6274286E59FE2CB7C9 +:109FE0003971B3B0644AB2937129D926130CE2FED9 +:109FF0007FAE3409ADA81E3C9C90CFB230D7E6812D +:10A00000C65DEE9BD7FC1F24803F25444F3E3E2873 +:10A01000F2544532D1D33F2ABEBBFA8DBC074C0A5D +:10A020008FA51CCFC8644301E88CB2A00F8EDF76E9 +:10A03000EAAAE5F2C0DDA12F0A46B68606FF62FA5B +:10A040004C8676E763D8F8D4E786AEB83257E45248 +:10A05000BC6F3F4A0BCCD87D8746B9CB0491CD99D4 +:10A06000FEBA10BCE52ACBC39E6DB47AD535926E8C +:10A07000ECA04C5C0919C87D338D9D5667E988F9C1 +:10A080002F8D273AC2ADA9EF402186D094769567EF +:10A0900067A88F825E701105BEE0A217D921531FF9 +:10A0A000F007C77B1351D8818469F7259B6AC244A6 +:10A0B0005858DF98915E2E925DEED56EFC20036DB0 +:10A0C000322DA1F6FE295CFAFC9C212C5C8A05C984 +:10A0D000516FCDF518E43CAD304AE554FD4FE9250C +:10A0E000D4D1CFE5F7E0A7E4BE0EE7747BA8AEBA03 +:10A0F000D2C8ED9D1B82F8BAC3906BF4CEF85226FD +:10A100008963AED812019A218B6117F3BB48E38AA9 +:10A11000D3956586AFC5DCB6D5B201208B8EBC4524 +:10A12000B77783FF062DB16B7996CFDB4845F311E6 +:10A130007ACEC11E54F2B43245419C11D3692B58DA +:10A14000922A09D2125ECFFA9D8227D9E8B7EF98FA +:10A15000941BF2525C07C819FD43A69933CE5DDC0F +:10A16000CB5062F15751F1E071B64A18E80E269AC9 +:10A1700078AD82CF20B05F00E489C34B608FEB8D58 +:10A18000986127D82D6FCE7F8C29C946CDE165D641 +:10A190001E9FD3FC37EB9E585794A865941A9E993E +:10A1A0002F2403749D96FD39BFEED5459DB7743DB0 +:10A1B0009F8073216B1FD12052C523B49074350149 +:10A1C000E2EF011381A4FA12BE3B44A0B2AC02DC60 +:10A1D00083169C473D28A1EB22055DE94A265529B7 +:10A1E000C44C8AE5C9B4A6B8730EBC663FD66E21CE +:10A1F000AFC830014444BF6ACD5901EB81C2B6EC0F +:10A20000F72CA39F54AA6B3B78B1EFC9D6FED84D6B +:10A210006321498098E5269ACB169452D580225224 +:10A220006420B5A03BD8BD9F96AC7C17C315704D7C +:10A23000562B3B05AF66AC2ECED91C201D8EE7FEFB +:10A24000A7F927FF9FEAB05A25DF65E8BB177F3AD9 +:10A250003E45BDB857BE52840B6A24D44FDA291A42 +:10A26000E96B761179445614612B8AC8D6079B0690 +:10A270008BBD17AE0AC206C89A96B4A1AA62B91DD0 +:10A280003D37ECAFABB6B588512A76CFF46918BD2F +:10A29000CBC41B3B2AB6F7B2A85CBC3752A440BD66 +:10A2A000A4465705F88BBFB5191AED9204AC4DB50D +:10A2B000E9935E64862A74828BCCF2EA9FC7A1AED2 +:10A2C0009D90FCDF71A5D26AFC1F8416018076295F +:10A2D00014B05699E5EFC55E428D74391C23F6C75C +:10A2E000199CF4252E17FD586366016924C588A0C2 +:10A2F0006DB6E5873ED1E7E1C4FAB97D02CA6F07C2 +:10A30000F7D4863572AD5DE7386A83DA645D90F91B +:10A31000511DE98757A7FEDA9F6879085ECB8997B8 +:10A3200096173EE080F89087B036DAF2418414B197 +:10A33000BBE4D7926F76E395255A9E11C0491B5F07 +:10A340003CC6586E1B7C72BFB904A0CCCF15F7FD7C +:10A35000E1810437BC394685062C41F301EA79399D +:10A36000B090167216A793E3A75F12BB3B12B79487 +:10A3700031C297A853247EE42C553EBF69BC36B841 +:10A3800059E4F919FEB7B84E83C5A3F47D0B03E475 +:10A39000ECA0A4678392DD51792A618F52F9A7223C +:10A3A000BADAA91BB308994E3F9C37A20B041CAF25 +:10A3B000ECDB0F78444FB7CDC3F417C5130FC72498 +:10A3C000B15580FF6ABD505E35115C12875EB518CD +:10A3D0007708DB1DD183CF86384866976F7BB66FD1 +:10A3E00096EFFF3367AA574722B9D1B7DEDEA9A699 +:10A3F000027575FFE3B16D67BFFF9D759CC30D4D81 +:10A40000E8ED1E5CBACED7088863D004E9F399AEB4 +:10A41000BE3508B8655A540A1B227D33CC0EFFCFD7 +:10A42000AC64F5DDB6749A75EE1FEF995811A98EDC +:10A43000A80AE7D5D61040DE31C8E0EE5E5EACD6A5 +:10A4400075296B72EBB0F185DED958E29435BD8A7F +:10A450004E13DCDEAAD95A988A4DBBAE83BEC06AC1 +:10A460002736FE309B81CCB32B8F857EDA843874FF +:10A47000E7B3F2A52E4B1884F935D2035B8C15296E +:10A48000570BDF1BB35B8D305990F9126149E90D11 +:10A49000B4372616E6090C00085E71AD1CBEADB8D7 +:10A4A000015F2CF9D80A4A467F5E4E9058867FE2BB +:10A4B0008448A7AA53019684953C29504ABFE57A5F +:10A4C000E001BDBBAEE5B198B0B419AE1CC2EE3828 +:10A4D000C82E3DAD1F12E9AAAE4CDDED927D486A53 +:10A4E000222D9640D4023FA03339DAE2E2C5B2B75A +:10A4F000C8DDFDD860E73A10EFF0DCEA12E808FCAE +:10A5000018482B5F42E95C175981BDDD270E17F211 +:10A51000576209DD4E761BCDE19922E84CD321EC40 +:10A52000B5C21F8118E97C49ADECE5B9A115F0AEC3 +:10A530002CF692134E359902BDAD42A5C902133BCC +:10A54000CC4E7AC6EAC6F860D0EC6C9FEDB985B601 +:10A5500065E448BBF2EDE207E18489278398609BBC +:10A56000FE77BD3974D20761941888F83489D2FA1D +:10A570004D25CEB2671ACE72DEC39B1CAF67D143A6 +:10A580006694629E6CBDB704BF19E367F1FE0BBD14 +:10A59000BA8CF277A136E57CF5B9A515595DF8E3DB +:10A5A000E1B67EA5CF917663F4AC38CD2D99FBA4AE +:10A5B000EF72415544DBD12D93EDBE40C90D87FEAE +:10A5C00027FF207DBD663430F06410240C61DD97D8 +:10A5D000B28E5C980BF8A37872D476D070EA3D24E2 +:10A5E000F8C587C70A7EC0FE366550DD6D181F4668 +:10A5F00083CFDEA45DBBE001806B8B78D619373545 +:10A600006392DC146424CA7DD61CD1A5D7B8EE5A57 +:10A6100071066B259BEA1C50B61C99DDA90AF0C691 +:10A6200027C2111406A277990A9F89C759182AC907 +:10A63000F1B362CBED174EC5449F3434D568CE8E4E +:10A64000ED2BD5BD98A6F1F9783F0EB7708BC9DD1B +:10A650006179A482CBA60060D23792699AA8A26ED3 +:10A66000B98D16580CFFA97EECD885259C9E3A42E0 +:10A67000D4A6DD0C0379EE54E1BBB3F16408D1CD6F +:10A680002DF1CE7FAE83B4C7494315B6C30D5C2808 +:10A690003B0EEE0C4FDFDA08057DA7427907D6D5D1 +:10A6A000313170A73131619A366DDA49E960E06A7B +:10A6B0001932D1F83EB0F40A8CC4DAB64C5A8E7C0A +:10A6C000CC9EDCE64212FEF0BA9907B7F81E5DCFC9 +:10A6D000D043D1A7144051949C56FEE8276E25F72D +:10A6E0003BF7DEBB1F003A18E4D20F2F35E2187B90 +:10A6F00083A82574B7C91EF0E83DABA2440D3D7F89 +:10A70000CE4803BE58D510720308486089FBFDB8D7 +:10A710006064319D4A2CB6996FD8C9E495A5D54D92 +:10A720001683070F29AC0118325C196AFAEFFE2B69 +:10A730008FD76981B2357A3CF7405B5A7A08DAD410 +:10A740002969802467F66EB3F98E043015DD8A928C +:10A75000AB2D91941D186F8DDC60B0A6EB3AACB2B6 +:10A7600012E880DF8ABC891204C930DD9FE2219F94 +:10A7700080BDA41276F23B009BEF41375D436C989D +:10A7800008430454C7621EB61D0A185D15A643E9A6 +:10A790000E90D937AE023C2529DEDB3FCE5D217D10 +:10A7A000E9199DC5257DAE2187FC7DD330FD9788B5 +:10A7B000D39CCD947A83DD1513246E437F9E261996 +:10A7C000586FA589D4AA2A57BE05C4C17A71D81278 +:10A7D00040FF98D6394B8375BA92FFFAA2F8B46657 +:10A7E000FF2530E2414FAD2ABDE92CA18D5EB4AE0C +:10A7F000961EEA6E77B61C031DE26CB8C669D4ECEF +:10A8000072B0940C0A7B2980E967CE460334A28E8D +:10A81000336E42BC3BDFA5EBC7CFAA8C6DBC42BEFA +:10A82000B2D3DDB7E132F2FD799C8C47B4375C8D51 +:10A830002658612D2223D70575787A80C7FB8D1B9A +:10A84000387A0074CE10D6C3E6A1C45C510854D047 +:10A8500063092237095B7534417204EF68353FC2E2 +:10A86000FC0CF4BCA642CC071D267FC8EAE05401CC +:10A8700028EBD18F66C315D66C32062F8480D54B5A +:10A8800044E6F431573F86B9649C15B7251D5544FD +:10A890007FE89992AA848D8C2C740210CD3B508E47 +:10A8A00068B7EE4B0AD61E5BE45BAE34DA0CF9D225 +:10A8B000D2EFC119530457C506203B7C1D60151209 +:10A8C000B48889229999B10FD4ACE1348415ADAF25 +:10A8D000A541E0F23B25878CD3944B331980597BFB +:10A8E000E1CC05250D6D9C6CA477094B549132CCBD +:10A8F000E5E0962113548173C3F51531D3872713EF +:10A9000016126ACA4F516B2F5D7574076BDE778024 +:10A910008907290438A2387049EFE2283E52E64AF6 +:10A92000BCBF364DFD820C4737AF1C54A88532287A +:10A93000CD736CD18EB021FF19D021AFDC7B6404C4 +:10A9400008A8F0FCA701FCDDC9D64272AFD533449C +:10A950006306BDA301C5F70A58454A8E9B7B1ADEE4 +:10A96000A3F296907BBA66A4239D5D1381E5BB1A82 +:10A9700057BF9F8C99834B0310417A9ED2702DA2B2 +:10A980005C05636F73FB3F4CBF2FB6D95EC57BA4DC +:10A990003D264E88CF1635B45278E12E0B4608D9A5 +:10A9A0002A93FD6FA32A6DAD44295E0A864D275276 +:10A9B000EDF1C2BC6D0344F89CC5149DE8A5E145CA +:10A9C0002390EF77D4E5C97EF8930DA7896533F31B +:10A9D0001EA8A2EF542CCB99CC5732241F1A0C99E5 +:10A9E000C87C28BBF6254C0526AEC29F519ADCBA1E +:10A9F0006245A30765F33B9DD8C62C04E10F0C0FFD +:10AA0000A5858EADDA3ED7F2F71375327C65E54346 +:10AA1000CAD73108DC661B04FDFDD5199557FAD855 +:10AA20009889571D22CF6F455D378ADCF72F4B433E +:10AA300049415618CB373D45A01193E0A2FA43EAAD +:10AA4000BB9808FF339D38337C3BB728CA81327CE2 +:10AA5000FBD468C5389C081F189D529008F3E4D6B3 +:10AA6000E2FD7AB536CCB47618CA87E26BE92D647C +:10AA700027443806E62E5F980386181C6D252F079D +:10AA80008900F036F1A7F2A8153CA2512F132A38FD +:10AA90000B1CE7111850BE70D15292A183B3DAB3E8 +:10AAA000F499AC953ED93EA04475D02908C098DFF2 +:10AAB000D806FB07066BE2F37A2DA7931790AC2E0E +:10AAC000E59EB231741A27B2134F01393A7D4B1209 +:10AAD0008F8EBAF78223165EA20386AE3597065E86 +:10AAE00043ED192AF6908F531CDE2DA28A6C011AB1 +:10AAF000756B4571F96E9BB93CA9CA6671D5CA7967 +:10AB000006ED51990BC577FAFB5A9665FB2AAD8E77 +:10AB1000F8AB2AB89F61E718BAADCC662D94F81F40 +:10AB20009D0DC680EC051F023158C782953147E65E +:10AB30006D183180734829CF2B4F83EF05B2A404E1 +:10AB4000C644245C45DC8D0926E98AA94E1570D7D8 +:10AB5000ECBBABAA7264080E83E917B7EC3DDC735B +:10AB6000FAE10FF3C6A53123E52A94047D76FC01B2 +:10AB700035570B5C15AF13459101C6B7B07FE07632 +:10AB80002383D406DDB28524285781C1483314CCF1 +:10AB9000D8FADB91B0903EA5C31454E1AA6ABDE98E +:10ABA00080CAA267B8639D5124A8E6038A56BB5C9D +:10ABB0007DE93F1E3B63FBBB67F738EDCD203317C4 +:10ABC00073307FA20A36A48D7149AAD799D03FE38A +:10ABD00026E0B8F8892CF9724A288EE8C33B666BE8 +:10ABE00094EA0BB331AA15A2BD3737CA98C4223BE9 +:10ABF000CB4ACC442A92015332AF9906D7A56D5166 +:10AC00003AF2976F70B5530A4344A3C27E88D56D5C +:10AC100036013C98C93C9A74FE8D29D7AB3E5B0047 +:10AC200069A7B82F88E71C7D86F6AB034620A0B93C +:10AC300091F04B726B46C04D93B8A18C51AEA839C0 +:10AC4000E87563F9874BEEB9D3F6146E8925F627BC +:10AC50004865FD5722994CC9E3F185AD96A71DF0D3 +:10AC600081F0FDCA79621AD53A0BF79ED65BCF7296 +:10AC7000F9F9B43C8D2EF267969C1E90C65DA748EC +:10AC80009AA1D8F17C83E5244118F1BD8F40479407 +:10AC900045AB342A1459A93E79F835F4333FD380B3 +:10ACA000DC9FE78459C21151C36838B6BA2BEF5FF5 +:10ACB00093626C92C6634DE806AA1B223EFA5303C8 +:10ACC000EA2F6FBC65902B51D4852EEA9F8CD7C19B +:10ACD00086DD459B2798918D9958A341D582FB220B +:10ACE0002FE71D29141B612E45A304BBF12BFD5832 +:10ACF000D9C4F66D0B6DB27BCD136CD92FACD79345 +:10AD000002AC61D3872611D50E914AC105ABA80CC0 +:10AD10003C45CDE7B28B45CE02D957227C4077B671 +:10AD200060C3B31CDAAEC8AA0F1CD1021024E126FE +:10AD30009A5AA0443BD79F812BEDCDDAE900A8FABF +:10AD4000C2DDB5666D9BE6F476BEFFE25155BDA04F +:10AD5000106926066C6484287A37A9AF02DEDFBB4F +:10AD6000068D69B7CB8F5B652B916D94F55BF21DFA +:10AD70004F77D14284C76E8F7AF10187CA694D51EE +:10AD80007279CC35D269243AFDC8A89B9B445357AD +:10AD9000E58F44C5A7BA54E7019556C26DC17A58EC +:10ADA000D763AE6DD2AED00B3ABACC436390EDF818 +:10ADB0007AE7BF1CE0FDE8B9A17B9B004493E8342F +:10ADC000E52870491F02DB729B8F832A399A46D887 +:10ADD000818FD2B07BC28ED09CDF6607CB89EFE338 +:10ADE00048F4D31007F2CD92DA506B1A8602E58A46 +:10ADF000BB3D8E92014ABE25426E1E1953DB0D2AC1 +:10AE0000C97DB839FE33CAD60904A223F2E24095BF +:10AE1000FFCD0F9A6EB6C899F311460F2B0A97E82B +:10AE200006142019A8E53FBFE510416334DD73B473 +:10AE3000AA55D2A166F57E9BE8F287C1E7A746A591 +:10AE40007BE17DC2656339FEC5593E46D7DC86414C +:10AE50009C8E5E0104520B18249F5E64070C23092C +:10AE60005A8F362EA8277AC9F760FF6F1E41BAEBBA +:10AE70006F96A361B459FED0315FD120BB15746ABF +:10AE80001168D145C68C9CFE4B5DC27AA8223578EC +:10AE900057691A622719BAD378DEE96E7CAA5DAFCA +:10AEA0006E45F42C350A067C20D2E5A9E8E06F72E5 +:10AEB000599F588D39CBBED2E344B7037902ACB168 +:10AEC00011E1BEE62982F13886576A8BE657CE9D9E +:10AED00097C106E2F7895DC3FD983564F0B9BAF908 +:10AEE000E2FFF11EC525B7B1B1876245A5B813854C +:10AEF0006313FEC7DE774D330B3715B2281441E1DB +:10AF000051D10AAE85DB2960610EF0B1B709BAD024 +:10AF10005A238BB0B3E8BBB6F37C83B891B2E74B4E +:10AF20006F39DD094582D0906D6CF2599C0605831E +:10AF3000DD4054E426B16F418A1D1C096E9FF5D790 +:10AF400001FA7E27A25372883F8DB4532CEA6FDA40 +:10AF50007E75858E58275B957DB76F3128B9F00BCC +:10AF6000C0F06EE0B4D40C51269A9CC97209E47BFF +:10AF7000C935D2E630D63878263608736E660FC6E5 +:10AF8000284F2A7263B556EEB34E69F915CCDE88A8 +:10AF9000111DE73EA4F171DB46E860C4A9ADF9904C +:10AFA000FFD4E215B7BFEDF3942988B78164FC495B +:10AFB000F30E83B58CA009BB290F444BDABFA1B6B1 +:10AFC0008D7C23F107510A0356B72DDB8EAA10069C +:10AFD0009BE8C25B2B1E5FBEEA6684A14FDAAB2AF8 +:10AFE000A2F9968BCC1A5FAA7E7BB8FCF8CBBDA0E9 +:10AFF0008FDA4DA594F0F2667D2BB504B754356A0F +:10B0000004A22487DFECC9EBE01C0915E160BFE76F +:10B01000BC433FCDCF0483DD43E4AED071BDB60069 +:10B02000EF32EFAB93FD4AD6A192587963E45E67A5 +:10B030009A27FABA4DC40FF263DAF9B1B48EC8791F +:10B04000345C67CF828E83ED40B2F1EDAFABE7C5E4 +:10B05000AA3E7D30E01C13C21CB2625D88C5541D3F +:10B0600013F3BA527123F73FC577C979D914EC7439 +:10B07000493342FA2497A6CD719757469AE1C8C240 +:10B08000F7AC4E8D3DFE2FDF454C92AB2A658B8988 +:10B09000020DBFC6B4A1782E1E4C26FB8FC4FA5CED +:10B0A00067495AC3EBCD19806277A45F5F4985BEBB +:10B0B00087790458D22F663242B52AD34E1288C1FE +:10B0C000D34E92C503CDC88E30CD4DC461832F1DA4 +:10B0D00037E5F18295506720A2BC048EE9F9F6D8D5 +:10B0E00075C407C44700A1D41C0944E43F6BD6E0F3 +:10B0F000A057947B53543D86F51487D93B95444D16 +:10B10000966F3F97229FC919B7358F1EC6DFE6F2AB +:10B110000B22DACEED274486F33E8D4A3A72136055 +:10B12000B6A0C12E05BA22A0B2F82BCD2CDD99789D +:10B1300096AC8D7DAE907D11A4C4C3CA4D145A0E39 +:10B14000E27AD3EBAA6AFD705248EE86430212A956 +:10B150005DD0AA93D55F459E84E7F6CF8DCE1B18B0 +:10B160005398B6A426875117F6A29A44AF32876344 +:10B17000FC01B2F042E9F04D12ED8ED4B44141E74A +:10B1800076113DB937A2F12D047C022B8E59BBE814 +:10B1900006259EF12BADC97161D4B0B420576FF074 +:10B1A000873F92C19E87B5610BA045F5518951C576 +:10B1B000C97F9A7C35C265BBA64F1585BC897D8B3E +:10B1C0006A356A62769CB359252C82C304093D0610 +:10B1D000901F6A9DCF1CEF4E0BC428D9743D1B9D58 +:10B1E0001E4432580CB598D4B1BF411F1FB4F4B3FC +:10B1F00084ACF14C4EAC2415495402E0B4A920971C +:10B200007D03051E606AF9781E119C52814D06C0AF +:10B21000CFD37E403171C17FEAAEBC9FA01A2A70A5 +:10B22000C7ECB445C9CDA5B2011E58F40B004DBD05 +:10B23000C4D01588323F3360F7160B4E483378A0E0 +:10B240002160BF4D26B740BDDF0002235CEB85D1F6 +:10B250005C1589A047EE1032503EE23941F43ED3EE +:10B2600053DF6CCCE5B4E2199D9FBD42B04D97E52C +:10B27000A318AA3BA047D8EF9BC77B5FD721C999EA +:10B280003C45D3F0BC6A6A74128FE8BBC4B7EBB517 +:10B29000BEB58897A78F42E4B76E0FDCDE13C832C5 +:10B2A00056598F5A170102B1D37D40D46BAF351A6E +:10B2B00042883AD23FF5D586C4A2FB07781017869C +:10B2C000B06CE790F5E61823AA1CBC0A5B69DD4860 +:10B2D000D14E99816A76954D4CA7E961317F482717 +:10B2E000F208B075A12F5683782C946AD0B4A216B8 +:10B2F000FDEA6C3F22284AE4001D5843198E9A59F2 +:10B30000E4A162A6313158554608647EAC573B83B0 +:10B31000A7519ACDD490D145159EA5D81C4922FF9E +:10B32000654A6975567B2928D8B1B3AD1AC61CFD8C +:10B3300027278A8241B2B017BD9C93A25AB5BB6F32 +:10B34000C39EC79F2D0A48D44303C2DDCA89EC249B +:10B350009C6E1E713F578D738DF6893F473885BCB3 +:10B360000CDD4EF9A8C280E7DEE173C527890A2902 +:10B37000378844FB25D2A2E72DB6C9890845824803 +:10B380005A958CAB3CFBE6ED84836B6D47435B5970 +:10B3900054678D8CAE90267E7D364314A7F84F55AA +:10B3A00093CC4B622CB1700B571CDF16DAC6B64338 +:10B3B0007E6235A797415028E60F902625CD62CFB3 +:10B3C00042B40E154D1C9F971D0F981F5A76881971 +:10B3D0004FF702A69A3E167EE828144840B9C49B4F +:10B3E00063CDE1C035DDEE446810EDA29EF40FEAB6 +:10B3F000E4FAE76A5B240BF9BA05FC7E48728DFA21 +:10B4000051A1A255E6483CB0C0DB48FA0B2C0FE432 +:10B410002CE1AD8CCD8CEE3EFD44F66F24AF0AE1FD +:10B42000C428AE0329DF730524F32141A38AF6491A +:10B43000F2AF6D37BD2E4A2628294D1FDA2A79EF43 +:10B44000A3BFED86796818BD7F476E2A5C20C54B87 +:10B4500072E9F95DAEE5151C47DB696A96730796DC +:10B4600015DA56F9EE1AD00D990009FEC478DFB34B +:10B4700047DC1A647767207ADC7885325CB78742CC +:10B48000252985A94C65AB0D5BCF6D889B1F2B15BE +:10B4900045E0DFF9F9B7AFDA2B7FBA779595BFBFF3 +:10B4A000988C95F0135A63598A2918128FB0F9476E +:10B4B000D59DB1B62B158E05F3AE559868E84C3383 +:10B4C0009E20104E69B7E4FF6F46B272A69E367C8E +:10B4D000701EA1F5617B7C76CE708D2CFC85C23D03 +:10B4E00057DA48AFD6F69BEF33A9E16822DC93E147 +:10B4F000BE5E815362CCC6BBE7C7E66061F9EDC8AA +:10B500004B076A86EC0EAD340A7DB7EAFCBA9E940E +:10B5100069FF8CB8B163B704D9B0FF2AD517BA6CEC +:10B52000829FEBCC7D34C878D4DAA668327C7280F6 +:10B530007CA6DAA190878B395191413EC0E3369DBC +:10B54000B1DB965C02B716E1B35C9D9BD463ACA003 +:10B550003C6D6078DD32C876C7CEB3489B86D7DFB6 +:10B56000652A2666192D0A2B3EF074A63D61B4B3F8 +:10B57000C8FFA420FFDB493BA96984F94FBAA000AA +:10B580003769E440C76E3541DB0B241FA214A5A820 +:10B590006FA17C4E36F8779853E62BE41C95DB2F91 +:10B5A0005DAFEDC15249165108BB7342331A102CDE +:10B5B0004C3AE3E7F4620FD61A5B0791126D9506D9 +:10B5C0009BD96195542AFF178FDD49764D98E22A61 +:10B5D00080FA47715FE487EADAB6DE0AB74F6F9FF9 +:10B5E000F33890C40847CBF4FE09F7EC39F70C7731 +:10B5F0009C7DA1EBE1E4A8C1F4A1B65BAC8873EF3C +:10B60000F174B5C3C136D297DC1DFBE0B88903ECF9 +:10B610002DC62EEC29C505E27176291274E0EDE9FC +:10B620001EE7A1F84603432104F67D65DF685F7ECF +:10B63000EF0C76A859AEC7DF23BD568558CD99DCEF +:10B64000C3CF658590D2D9A703B161CEC9FEA81F2B +:10B65000D3680EB3BBEAE5AD0EF10E2E3C146EE5D9 +:10B660000A98B54CB8B6084C187B04088C69388722 +:10B6700047AB8DCF141D9CA770BB09ECFB8D67B742 +:10B680001047D28144C22CF35A39FDAC78F25C7376 +:10B69000962855FB6C392169F90C8DA1FD74FDDCF0 +:10B6A000B6B14BF86BE442F8365AFA2827DF736DCF +:10B6B000ECDA90189458B52FCF5DF39686926051CE +:10B6C00066E84AB72DB6557920CE8BBB2BA4CCC4E7 +:10B6D000492D25DA179E04609A51061E06B0458D45 +:10B6E0005AF20512D610122EDD704E936B449F292C +:10B6F0002F33633CF1BEF106E481AB8310E54A07CA +:10B7000092799128CF309D06F074E082C53BD642F5 +:10B71000F461AA3A98D835BF3C64F3AA18559D54F1 +:10B72000FF15BC7CAB57742B1AB37E86FA117E9A38 +:10B73000904F2A7AE30245F6E8D68CC752AB997E41 +:10B740002CBA5098D371ABD4840F16611D68AED05B +:10B750009EFD9495BFE855F4511BD470F653316BA0 +:10B76000722201DD6AA63D0A4415D6EC3ED758F791 +:10B7700077184378B3AD3BFD2B1DE96AD00F348EAB +:10B78000C3D3C680A4F4405CDEEDA22EF0AFEE6B16 +:10B790001E1ED6532F93FB27DD9081F76BD24928CD +:10B7A000FFBEAD413378C0601CEC5D08C7A3C4E99F +:10B7B000D1867CED00B04D86F0C7114A961657A988 +:10B7C0008ED66EBDCB7B1439CA8BCD2E8E73BB86C5 +:10B7D0000A8CC49952BDE3EE9A9C29783751B8245B +:10B7E0001470611EDE5BC490AFE459B83D0549108A +:10B7F000B483570775D9D95C4D45A514CA59209112 +:10B8000059CD694BE5C2FB77A1F40E91E500797340 +:10B8100068C95A9D940FDAE284F642CBE4DAAE535B +:10B82000A0822BB9E5B41BE4F15FFD7AE348A85888 +:10B8300076A6CB54052B1710B458FD4848A6B96519 +:10B8400054C6C66BE2D6B0FFAAF2F69271038746E1 +:10B85000829A0DB87139EE2A5A8813C3C4AE5E7F3E +:10B8600021736E607095FB036C080FF80F07EF2AC9 +:10B87000AF4BC911236C8952520803E8070CC88DDD +:10B880002D02C86C9C0F0CB34EC2D250897E7396A9 +:10B89000CE935BABD4AC5D245C9AD4342F7B33382D +:10B8A000F853A815D5B6EB4A91E8101B109ABDEBDA +:10B8B000D67DBD41F0DEF7137DBA7FDAEA0E398F0F +:10B8C000F0193AAB46973F08FC51C7BDEE9A302FAE +:10B8D000EA8C7AE2DDE74D77FE916217BB91043581 +:10B8E000E64A5F534B77AD383179D85155AA7C1968 +:10B8F00008523370CC2FC47454D788F4BA26E81198 +:10B900008CF4EB7956E4F9C2091E702D9EBBA34658 +:10B91000548FC707A237DF0DF84303F65EC1975572 +:10B92000105ABF6BF3B1E2BAB2D03EC4BDE04E7361 +:10B93000DC6E06EAD22F5E92D7B784B672F25F2031 +:10B94000E4E2FE657C2FA93A9ED3774AF3081B3DBB +:10B95000A84E9B356DB70DBBF69178993068FD9870 +:10B960009C671C5FD651479436D229F6EBC2066C11 +:10B9700029453AA8C9FCEC1CACC34906062DA09683 +:10B980003ACB5DDD9B5DDBB3612FCDE4E2D4614555 +:10B99000B8D5AB33F1B92DA2EEB90DCAFE380E48B9 +:10B9A000ED939630BC438D149EF39609083B3120ED +:10B9B0000F7D350DD56BEDB70A52F1C8F18E136EC0 +:10B9C00075EEF20A32F7B54803957EB11FF1CB5FF1 +:10B9D0001F059C425C36079472C053758CD7ABCE62 +:10B9E000B37D3497C57B1ACFBDFAF889D6EF6233A1 +:10B9F0005880404027539523D679DC643A9D7DF6E4 +:10BA0000C7F795DDB6AA2EE40D865564FDAB74AC80 +:10BA1000631EA7EACD0B32D34188BC2B4C5BC60C0E +:10BA20007131FDCF9B81A4A9D2146EA27B43DE8C21 +:10BA30000987A7AA5B2753F0D82F6271ED98EA57C0 +:10BA400059CF7C341740F59ECDB7150589ECB6BFAC +:10BA5000DA12BD3F93A1570CE80DB50EA90D314C7C +:10BA60006F36770E4B6EC644452884405A41F89E87 +:10BA70001F9073E2E14AD589DDC676190051B045C1 +:10BA80004686761A35F6A8EC77A55782859E32DF72 +:10BA9000450EFEC675E38809A5494505EBCC82062F +:10BAA00018CC092AC471B3147EBC0D537E6015DD19 +:10BAB000652033533FAC12E831F7D7ABDD6FF5FDAE +:10BAC00081F4B1259BFE4FD2FC895D65F29AF79215 +:10BAD000C58BCAED2B3CE05A6E9C6BB6C4036AAEB4 +:10BAE000DAB82D03D4B4BC28A79AC83B92403D24B1 +:10BAF000F81405AA9C8EF1288517368EA09C672025 +:10BB00005E6F66475CB3CC5D411433BF3B6D2B6EFB +:10BB1000D0F72B82C584605B1CD917B9A0BC153B3C +:10BB20007702CBA03423A3BF0A4A49664B54EFCA1D +:10BB30008FC9F1A3DC0E66C51CC69FFF6D4C3A97FA +:10BB400046B4711D65192FC75EECDC9814BF523CDA +:10BB500075E7934F92B7F0C91327143A1B8B6931DD +:10BB600024D93D8FC998113721CB8B70B7070B6E45 +:10BB70009C853821B0A271EA6A907F57AF21145694 +:10BB80005E4496A1E2316E34A62434E4277522691E +:10BB9000956679F8F2CCB5F9F15970FA55BBBD4FFD +:10BBA0000E7759DB52A3B39D3A2854B1311AFBDD0D +:10BBB00089519774208584B201CCEA1E4A066C42F2 +:10BBC000FE7F07242233F72F4F2FD8BA92216541E9 +:10BBD000598C8E88C3F4275AC3EC5DE92B31FA885F +:10BBE000597E0B867F8EB40DBDD8825D5F0691773E +:10BBF000D82A7FDF89A973FE7101ABF93C2C8AF743 +:10BC0000BC33A07B8BA1EC81CFC8CB52D080165423 +:10BC1000610943E509005FDD6062A8880079ED13E2 +:10BC200067014AEF6B5F1960F31085DFAD12102ECC +:10BC30003D8CDC79BA66873C36FD6A668D786B830D +:10BC4000DDE851D57D4274956F4499D8CB193831D0 +:10BC50006583BB30B1EEB2002FF7C087D2F8CB823C +:10BC6000AEC3D2717882088C95F5EC2DFA40B522DE +:10BC700085BC32094E4C59B41CAB7381CB4020A714 +:10BC800026FF0FF5704F643A746D633D5C8404DBEE +:10BC9000C7CC07C29E9D32159D980972CC5EA1F15A +:10BCA00091CA0037F2032D293F443B7C54FBE38FBC +:10BCB0005E31D39D0BC052C2D7937C02B3576C6BDD +:10BCC0000948C7274A6545DB7A551E5DA6175047C8 +:10BCD000FF94863D4A522CAA66583D57E04D48D6FF +:10BCE0000E359C7A50C198F1EEFB753E26F8AC6992 +:10BCF000C2D65988FB488215F0BDBBD00A76D095D4 +:10BD000068A8693060800B8DD79214C2437CA05222 +:10BD1000B8FAE475D0003B2B6695A0D355FAB16410 +:10BD200095211FA6B9F00065C9245BBCB9E496F55E +:10BD3000C8B2ACDD58E7581238EFE9CCE9E527BACC +:10BD4000CBCCA19F10C9ADFDBBAFA308CB264AAD9C +:10BD5000839A92E54ED0FC041D13FB71A7756664AF +:10BD6000C857F0AE8061B92502861E526A1CC00910 +:10BD70006C69010C08704D21E46F6BF7F159712B60 +:10BD8000B18D337077A9BF97D2C047C644621F50A8 +:10BD9000CB874F76FBBC252E6AC17D4A22EF97A345 +:10BDA00051B499F92AA73B3673D8C139D6BCAEB580 +:10BDB0001515CB08789A5EB09825699B90692FDE9F +:10BDC0007338636D60D47F1203D81CDD7F7A26AC94 +:10BDD0001A84D2CEF8D33DC8B82C69AA7A51B3C61A +:10BDE0006275DE26D5F995FD4695DFD9A1372E1F60 +:10BDF0009134FAEBA6EC61D3EC8434753AB5875CE8 +:10BE000065AFC259948EBEF55979F413B921BBA41C +:10BE100054E719F85152032D5E327706A7935C75EB +:10BE200067BA607206037999628CF83BE73F04D4E5 +:10BE30004FB6B3E1CE1657E9832667F58ED043B1EE +:10BE400098150D91F59289F2E154749A6C45BDA351 +:10BE5000F98989B943038FB3C7EA945563BB206658 +:10BE6000F804E4147B65625BA4630F21BFADF4A00A +:10BE7000D23EF232E89839708CD351277B4C587EF1 +:10BE8000E81E26F26F25317F76F61032046C2349C6 +:10BE9000AD2EEC1F4D295D7A049696D75745ACE63A +:10BEA00078DE2F3640323B30F45C1B783D561F6104 +:10BEB000310413CAFCD96ECC9356A10B2F9C114FA1 +:10BEC00081632F49A18602AEEDF6F0BC594C999FD3 +:10BED000C6DB81AC47FC9D54F478631AF0DED81BB6 +:10BEE000D81508ACA7ED3E126624AB46AA83D4460B +:10BEF0006B885C6DC3546E44DDE3830F0DBEA4BC40 +:10BF00001423F20B3C469385598CAB02FD8621BF6E +:10BF10001E6AEDB418C14FA2EC0471C5FD28A484BB +:10BF2000B457E768CA1FBA3C3B0AE49181BEDF5FA1 +:10BF3000EE96A825A7F2A20172BC92B5DD2EBC60D8 +:10BF40006287D7BBE27662FC10D259682023323276 +:10BF50006E66BC2E432AE0BFCC6EA83D98C45B5EE3 +:10BF60006B4A6051E42D1C1B503F6FE83904B0D779 +:10BF70005CE09BB79DEB015F51D3F6ECF2E5D25349 +:10BF8000EAFAC22D10F8852EAC4BD0FE0BE2F45726 +:10BF900089064FC140719D0495D57838BD93773897 +:10BFA0004195AE03ED016D948B785759C687E242F7 +:10BFB000AF399435E0278F94A051BE286E182D6EAE +:10BFC0003687D7B1DDE32CC7B185B68357DD437D16 +:10BFD00075C5E16CA0738831A7B0DC3106A986B6BF +:10BFE000C7B77AAC05D48A068A75A7DC783B458D3D +:10BFF000BACE54D11D5A6497F819797707ED41529A +:10C00000CC3A5D185D2C3D2AED4BD2AD980FB504AE +:10C01000A82B70E42FDA4925124482208E982FD560 +:10C02000FCF536EE3635901722B6F24C636D408F34 +:10C03000BBF6D551AA84606D5C255BAB220767BC5B +:10C04000633BC8D99E7DD1DAD697B5026963F6B94C +:10C050001EB25DC975409400EC54BE9FFE070F638D +:10C06000C74E245815F8916F7D22D4E53FB2D5AE66 +:10C0700085F586653754B5A0396BC6CC06D8A4645F +:10C080000B316F3BFF0CA1B785F68FFA2781295A38 +:10C090002CE765A71253299E87BA40F313A6E8D66A +:10C0A0004D7DDD67B07370513A489EA848D96C3415 +:10C0B000742F9B69C6F08FA4D454B11DFBAB459C73 +:10C0C000230248669BFFF7E91A1584C0611989F9B4 +:10C0D0002154D75E8F04078CCB2847D209E4012A6C +:10C0E00069FBCEB82FB9F2D123141031C2FE995D8D +:10C0F0007F22C6B5F4C25841097B874FEDE1DB7D55 +:10C1000059A90E755B739FA5FC5877DA796ECD0A35 +:10C1100089A854639FA6E220EC8A78E38266891896 +:10C12000E3D013FF0E3E2CF1C532E9413347AAB6E6 +:10C13000BF791DA3C37F47C8CC9C91B6DF1988E89F +:10C14000EEFC1EC0854655E863978A8DD577616FF2 +:10C15000405B713B7BE9634F6B0773D5CC5EE39F1C +:10C16000F4D24ABE97364CF5F0243E073D3F9F720D +:10C17000B4FE8CF8F9635990AD6E5666C52997CD1B +:10C18000BE820AAB96BA7D53C01C12878F5AFF79C4 +:10C19000262864C3A19C11D8E006FAF7966E2AE21D +:10C1A00057B01BA1BC9B787B808A43AE0E24E7ABC3 +:10C1B0003CED69FCCEF9A174E7DF5DD36319801A09 +:10C1C00027C68AB71A4C6507C94E286ED2F0185F89 +:10C1D000F899D30F1467B502F7EE80DB5E27FC7584 +:10C1E000FDA250E076A7CD803C70DE750D8801067B +:10C1F00061E59630FB030E294BA9BC1E0D4800815A +:10C20000209E4FDA5B7C49DEE5F6CE418F19D7C818 +:10C21000DE7D4D64CAA7F63286D7387BC2E0905BDC +:10C2200024C223F3829F85DA006ACEDF277FCB2FDB +:10C2300037AEAC48A47618485CD848908AC183626F +:10C24000B0D037B456CAC67D13F278B87C34EF75D7 +:10C25000D9FF274B40F15CA1F2129446D34162848E +:10C2600007C45B8246CC34CEBE985049412261C897 +:10C2700064281A68CE4942FF113D908FB6C5D68416 +:10C28000140DEEAEE033C58CEE713DEB07F326CB1B +:10C2900050DBBE979E3F86D111C0D792782158209F +:10C2A0002541DAA270144FC01E3885956CF407B48E +:10C2B0008BC86A151A8B28B05FCD858B3E46528697 +:10C2C0001962D34CB1FD5E96F33E9CF19CC55F7E36 +:10C2D000D20442F0763635086F7347AFE52ED74269 +:10C2E000A95257DC73065DEFF552A37F1D5592D11D +:10C2F000AADBBE5743D2F5AB97F916CCD3A12822BF +:10C30000A67C8F99FED950E6A436CA8FDCDEDC838A +:10C310006590C956D1B8E57BBE7FA9A15070C8BF52 +:10C320007C0E6BFC262769690A1C99960F486FBA28 +:10C330008C5E5F7A26D686E805F45428AD61B31B7F +:10C3400051098AA33349413891A5E63D6A2C9F5E85 +:10C35000782C5E2B9954BD4E0749487BCED4431EA2 +:10C360006E316AB8C964930B5ABC03435CEE5C9EA1 +:10C37000963509135820A809B33205ED16DA5298FC +:10C380009C96FB8AFB077836437291953C1FC053FD +:10C39000D05B08C633A324E8A1C4B4B7D3532ADBC7 +:10C3A000ED3EA5DFF56E4B748629A1F1280DCD80F9 +:10C3B0005A0D4ADD26112C6850392FA37C45AC93C9 +:10C3C00079D0FA06D350309A191473422B3D0E9D42 +:10C3D0006208E220EBF0CACBFAD0A552768911C8E8 +:10C3E0000223F9A48DE56D8ADBDBC9FC45F215F269 +:10C3F000E35279999BD4AA82D2A5B8387FFDE40F85 +:10C40000C33D194996111291AC598834AB98F1513A +:10C41000DFF92AE88B26F838244F35652DA010A2C5 +:10C4200003E1816D5EADB5529D74142123644FB854 +:10C43000CDC4319D2FFBF754C95DF559CD6E674DC5 +:10C44000FA577ADB6321CCB4EF2016CC135B48C8D3 +:10C45000F6C60C7F8971321DB58CCD0D9706EB4E5B +:10C46000BE05935F10B5E9ED86A88C270C5263D802 +:10C4700075850974277D5D703295482D6A72BAE61C +:10C48000735248D5D8D6724FD09570FF8D33DD9C4E +:10C4900059CCFE1B812FFBD8584AC07D3265C4059C +:10C4A000D70D6A5A1F70DF3346763AF3CF2A1073DE +:10C4B000C81F5BA1E9C10754E8DB8E23A4AABA34E4 +:10C4C0009F114384888F96A59780C1FCB2DA79408A +:10C4D000B39C003C9ACC626F17529B740F05F2001C +:10C4E000B4FB88F10331F955C92170FCFCDA1A61FB +:10C4F000741DA1FE0880CDFD71D230F52AD9123508 +:10C50000FED34D138DB0F64E0228072A2A23D4B14C +:10C51000D6C783D8E6953FCA38512A695AEB42C339 +:10C52000EBE1C77CCCF670B8E61F7FE5CF7E61CF2C +:10C53000A1E82F69CAE513701C5F1D31A570EB1DC2 +:10C5400094B696FBF6E50D842DB01FBB5F5DFE92A1 +:10C55000092054DE0064236F1C93ECCEA07E389E2D +:10C56000A9FD2953612673851332A12071477B29C8 +:10C5700084D2C9AF5027CD4DA244A40A6DC9EDAEF7 +:10C580000CDC88FABED63AD203EF77A0F9507CBB18 +:10C590005094AAF45DDBD3A41A5E510265B5B4F5DC +:10C5A000CDCDCFEB33E9E37F5C8E06E1F209F7DC1A +:10C5B0002E5E4B934135CD77BDF6B6B3BE2551F215 +:10C5C000A373A2E3CC23AD828E2A47741F0592F990 +:10C5D0000BDA1056B36AEF51100D9A486726CA75E8 +:10C5E0003755C6100A1E1C3EFCEF0455A5829F1746 +:10C5F000A75460220006795A577EEAE7B1991ED8FF +:10C60000D82C392213C75ECCB6AE2D32A4A90C5259 +:10C61000B57A3BEA4B44C93DF2A76B7D796EE8D50C +:10C620007913CFE56B86D9C50E7FF174CDEB4D0242 +:10C63000A24B5A5F9E1B7AC73691FF243F858369C0 +:10C640005E80590B40A326F213E96C6ED8C30CE14F +:10C65000912F7AC8B62C73DAE0E70AB2DA05E24124 +:10C660002E16328BD38D0788FE837EE37B95A8AC94 +:10C67000FC12DB39A345728E205B73908F56A7B2F4 +:10C68000470D62500E1D16842F66EBECEC12D36042 +:10C690003BFB70C8EFA264FD0EBD18A60CC4718EE2 +:10C6A00002DCA6ACA47F43BADE86C31CD976D75E73 +:10C6B00092FEB68BEEA851AFFFA68E58D4D8D79075 +:10C6C000FFCD3A5FD79E2FF1B547D4DE3E9302D21D +:10C6D0000EDA82C769A66F98D8D440E7DFCCFE99FE +:10C6E000A32800E4490E49EA887A3755F4D14F8AE5 +:10C6F0001CAF6810455C24E2E6FAE75A54D49C0863 +:10C700000BDC7B05D0AB3971B70DAF86C4D738EEE3 +:10C710009659B0218C93830DA8AF05674E3D958542 +:10C72000E17C1D816F3A66347E8ED4E61112D1DA37 +:10C7300033EB06C7715560BCF03C9B12E2164D5EB0 +:10C7400062DDB1DF14EA53D0000DC31C8BF8A4A442 +:10C75000A042AC0310C2B2D6FDA581C6A666267C57 +:10C76000E2547F2F2BC18F4F628E55A0B5B4C8C342 +:10C77000F7DA630E4FC11C900429B414B80A6EE8AE +:10C7800098A917FD242D727F7B1AC791B8385334AE +:10C79000B2D553E41B8B8F9935FB849F6A6A91F164 +:10C7A0009A5A84B7B916EE6739403CCA8C9FC16C5F +:10C7B0002DE6BD5428F3F983256C2F8D92470ADBB3 +:10C7C000E96F8C112181DE5B7823620FB3B9FB1016 +:10C7D00000E476A5F693C4E65E0650A04436C94947 +:10C7E000E6DBDB619D41AC991DCFD2DB10106116F9 +:10C7F00024999FFCE5E9D3EA830ECDB3AD3ED5463F +:10C8000034D5D4847A097BF4731799E540C908516B +:10C810008A54ABC41F3D7EC52ED2E07CF456916491 +:10C82000CF83757F89BC55C4A3548B113A731764A9 +:10C8300060C924FDE0E1E3B8306EA33EF60FFB7B58 +:10C84000627AF6BF90DC2A2C3EF402786F3A943577 +:10C85000E73CF473BEA14639B81E6754D43D177F38 +:10C86000535A6994B519A960BCF75DE71CFA1D9489 +:10C87000A9670642ECD89E5A0F1B6AFFAAAC8189B1 +:10C880004527FAB2AC0F2EEE8E96F47788E52D4C44 +:10C89000C74DF6B2A7F1F504A296A4EF8C95C83C5B +:10C8A000F1BAFB377204AA754E22B917D30AA469EC +:10C8B000437E20ED4FA8D4DE153EC3623F9BF413A8 +:10C8C0004B663DEF0AF8724D3B382AAF3D12327786 +:10C8D0002F3D21DBD2FA80C37E49ED809CCE41E919 +:10C8E000D7D7F0C818D3DC0C41C0CA842450EB570A +:10C8F00034CC77755A5E3CA240D96ADB7B1D10C7E9 +:10C90000ED74BE0F45C68196E08251CC70B03C3AC2 +:10C9100002514D500C31889EAD9FB94CA83C074147 +:10C92000381EF8BDFA3A1B9C9D16D8DDFE9DACC1A1 +:10C9300058F57BDD06D125D4638082DB1112B9CB9B +:10C940001B9ECCBE7CFB3CADA88C2BE611483F5B0C +:10C9500004F20B2FAE5000DE1446E4F85E73EBCF0A +:10C9600024D4231E08AE69D96FD1A014705E5590EF +:10C97000F366F2A567FFEC4606F4D1850589300C15 +:10C980006A3F5C7EEEE74DFF7DEBE7544A36A85CDC +:10C9900066B5FD7C3F8150B0ACDD7C59F4985EE813 +:10C9A0005E89697A00E8809293FC91EC7C412CB11D +:10C9B000585B7FE71363ED021F0397046D681A4706 +:10C9C00067E3C5C008AB841D68760716C0828E1168 +:10C9D0004506BE90CCD4EA8C91F325A1EF709ACC99 +:10C9E000A8EE34E82F98B45E93E8F2A2F546D3CBD4 +:10C9F0000D1323B82D126EA08D554129E958B0DAD8 +:10CA0000FD710A5ECDA4977E53D81D07F2BC8575D3 +:10CA10002BD0379F19E88C15128857FB0221A07084 +:10CA20004174F173D38F30CFF0B28CAAC6010ACC17 +:10CA3000DA4687CF039738DD257AB698104DED9A00 +:10CA400020CBE9434C7410AB9D120CC66837B56619 +:10CA500063B0B921E16D1D8C985A68B10ECDA5B4B3 +:10CA600039FCD52903737A2A27C71AFB7925E206F0 +:10CA70007F92D099384D6B45B2A177538766318D3F +:10CA80004D7EB749DC8CF2E2C7E7E7BAD67E6E137B +:10CA90005170D4FA2C23C6B7155A153CD22A09C6B0 +:10CAA00071B388AB1F9285235335AF160AF7C60BB7 +:10CAB000B8802F08565695C779C510DF3EC5166F4A +:10CAC000D0560E8969A5BC2DDB61DD622AAFA25864 +:10CAD000EC5B933E10092062AD0598841969E9204A +:10CAE00002055F01A1EDFB8C27C1051C1799BE6FE4 +:10CAF00048D2416076641E1DB2B764EEA128F636B6 +:10CB00002B57A63A84F6B06C6735293D3EFBC3220D +:10CB100070E77A688AC604ABFC58932BF293C2B2D2 +:10CB200035B3F63D7CE5592C636141400C58B31593 +:10CB3000AEA863DBF61C4E2BECA6F38E1FE966D97C +:10CB400078240F4C3157937C9EA4CAAFB8905FA154 +:10CB5000CB126BE1FD13FF53904A0DDB78CC957B34 +:10CB6000DE3B8ACAD205725193004160110620143F +:10CB7000A6118FB5186C07ECD3A32277760AD7C617 +:10CB8000A19C7D40893BCCBC0602367ADF601B0845 +:10CB900020BD3036F37355C56D2FD2CCEFEA185E49 +:10CBA000DC3694D4A1A114234D25AAF0DD4B2467D3 +:10CBB0000E3DD549D98CA9D02FE49C20955E4F1904 +:10CBC000AC1D1C6DCC027414A566A3BB37EC8CFCA9 +:10CBD0009CF908A15849C42587BAA0EE4E55493F93 +:10CBE000089F18B42A220742F779A637C1F47BB907 +:10CBF0000A20D48A28E776D2C44B9D0FE9322269F5 +:10CC0000A8B0C9743D911DDCDEDED2728C395D0B9B +:10CC1000CFA16E86BA9081267DD0C48A720C9120F5 +:10CC20008DE6AFCECD3B0B1FAE8515CB6370557532 +:10CC30006C71F946EB6CF33D7083F0845CB57BCD91 +:10CC4000B1075CED309274B347FAE18013E649FF17 +:10CC5000F6EB031FC3DEB2DDCF0A665E52D2561674 +:10CC600081D12C7C0F4A582A1011FF7DEA99EBB92B +:10CC700063896D78EC88B39B81FFA3235DBD5F9BC7 +:10CC800046DFBFCF500D918A77C621B3FDC2ECCDF0 +:10CC9000BEFB187AB2F4989FD2253EDDAE7803D958 +:10CCA00019950B91306E5C01C49DEE31EB15D9D511 +:10CCB0007C77E4F3793BF24437EEF4F7E884EEC690 +:10CCC0004278E746F6573C6CA2E82DF59F19CBE079 +:10CCD00027202BA587BCC4111E84CAF816735539AA +:10CCE000DA0328CF369B7B2A857CFC299610F41B1F +:10CCF0007B27D8C20D22A1968E31408CE04AF6885F +:10CD0000485347E43FBF2906516AD27743C8EFD75B +:10CD1000CF218E72AAD1FB1FB4BD3159FEAD718AED +:10CD20005F3C266DAAE9608A01BCC8DB47A8283BA6 +:10CD30008B3C301C4D78A716397F2A3F79166B4102 +:10CD4000F9773666A10795961A5FBE1FB3329F6FBB +:10CD5000C9DB2864ED286B7AC73ABB3A2B826D1E7B +:10CD6000A68C3BCFD56428C92C43F6BC1B089FBDBD +:10CD7000668091F599428BBDCC1E653ECFCE5E9408 +:10CD80008CC59223F015BBD9EC5820048BAABEF5B4 +:10CD9000AB0D5856C13A10CD5E44AB8125EFC2AE03 +:10CDA00073655B66593F0C6344213D8E9F28BF8E9F +:10CDB0009E519F1CF673B63A1BAD9F89D1AF444775 +:10CDC000F64401F4EE905FACAB9994B4AFBC147030 +:10CDD0006E77FD2E24203AF23764B751EDA311A7E8 +:10CDE000A726745033FD6555735CD733EE40712030 +:10CDF0003B8291AE1ACDD113DBEBA77C5AE2C5F989 +:10CE00006154C8B38B404F0ABF3C6791FAB1E7EA5F +:10CE10007E4CD562BA3C9FF46D7C5A2860971835D9 +:10CE2000DAC0D2603AFF0C1AFB082C719B9DDC36ED +:10CE30004E71B290F0F62F908C0207DE5B64F0C961 +:10CE4000F9282554E6A5CAAE127CF67562D5792A72 +:10CE50000AD769B07E966EDC5D191997B9B5FE7D6B +:10CE6000E8C325787AC532ED5DBFF44B62AB18BDDF +:10CE70000011804B36158E841C3F7F2BE07C0F9475 +:10CE80002F9EFFAC8CB47411F6060AFA9ECD7E502C +:10CE9000BC12F26FE3F4B3D934CF5D0513CF22EEA9 +:10CEA000CBF527133692C5903D6B897B0C4DFBF279 +:10CEB00067DDC7CAF5B0C5545BC67AF69E23EB4E54 +:10CEC0004E76306C2959C739DD1B12F6E57ECCFE53 +:10CED00065F0E48F5EDCE4337AAE6482F803FE979B +:10CEE000FD210042D59209615C541C1D1C1851BCE7 +:10CEF000F6138487239116096201181F09DBDE5A95 +:10CF0000C9EECDCCC04B389BF47117B41C24E75D3F +:10CF10006AD0FFB62ED353F1F2D0E1B1BED0DA39E8 +:10CF20009E719C23186D3FA960F7348923109AA540 +:10CF3000A7637D2B61DCFDEC821624E88FC85BBD06 +:10CF4000E8F840DCF1ED76DB336BE3FD73FD9FFF2A +:10CF50001962CFD1D7E0723C0559EB03901781409D +:10CF6000B52E2066BEE26C77F9AFDFAC28F2A401E3 +:10CF700052A64B2E510BA07CB4C29AB2E6855C90AF +:10CF800086763117D2C38B2CE95CA9885F9596C948 +:10CF9000705BAF00D2A7C61B1E3D4ADDE4AA118814 +:10CFA0009C529410DD31790C02965DA5B335919BAE +:10CFB0003E50EBEBCC63E90FD30EF9361BC07ABCC5 +:10CFC000C3DA4BBA0FB5729694FE162266ECAE9C8D +:10CFD000864FE537E00797CA5E7CD5A26BA83CC8B0 +:10CFE000274D631BC501C6ECFFA13C659A40C78273 +:10CFF0005BC35281FD7153ABC5C910343C7058A955 +:10D00000E19B2C4D3D90F9C23CF9D83EAF253576D9 +:10D010008539324024A29B95890AB98CE2FDD1D989 +:10D02000D4864D425490B8C6A285515515794ABB55 +:10D0300077D982DA645478A859D8C91B299E183345 +:10D0400077203A1A7D5E14A35910FDA7B0F5454F1D +:10D0500003122A095DEAEEDC1012DF578EFBCE7553 +:10D060004C9EE62DF6114B29563D3CBAA2EC5608D3 +:10D0700053CE5A96934ACA2B4DACE0CAD25FE173A5 +:10D08000FF5DB6FB4087C247320F06F393581A93F1 +:10D090000582539B56966783570B607CDE6B29F99C +:10D0A000F184CB064764A154B52D9FACAF92427575 +:10D0B0008D923F23371E29BF1E54CE4E916C30D027 +:10D0C00033B75C0599A62B821E2651C8641E398091 +:10D0D000999341D6F89E24FC81999D7C31B2EB2D29 +:10D0E0006BCDB093D49B5F0F140BB497E5960C4FA8 +:10D0F0004C475D9AB2112C9EA0FD823017B641B903 +:10D10000655D254C4BF32D536A052F319DBD75DBB5 +:10D11000922B6FE0B6730D1AEFA678D682019F6F3F +:10D120000572B642307DCF530429A179CC7575FBC9 +:10D130008042726BEC95D8F4581D61FFD179432C75 +:10D14000E8C11514843953F9DAFF7BD4E3A7EA2C3C +:10D150007DFA59D3529720CDA084447C77CCC7E484 +:10D160004CAA047F20C800079F37D07D9237F25128 +:10D17000C46CC6CC6677355D707ABC610D93F99648 +:10D18000E30F11AA816B7CFCFD2B07AB9580C828AF +:10D19000241AB39512621CDA634A86B7872219CE25 +:10D1A00074FEE7F2A37C61792F162D976A48D2228C +:10D1B00095995B2411A9DC8FD361A98362127B4FFF +:10D1C000C8FC5D8940BD72E401ECB43AE02C16ED78 +:10D1D000C0ED8538D0331AABDC090A58BCC2113E09 +:10D1E0009A711B9331E4DB2533427AEB1AC4E5884C +:10D1F000AD15EFC9DB3F9E1EB6224B08680A586A80 +:10D20000E7DAD2ED96504888C40133D995024BB481 +:10D21000E3DCE7AE7013B644A24BAE2C9A568032D4 +:10D22000B056D405AFB4129C3B2E726B3A6E0E24EE +:10D230004F93E9BBEC7EB9BD85AC838AEDBB620A36 +:10D24000288BF1581E5821368794F621591FCE019C +:10D25000C99B5504E0C658CF48A239D94EE604DB35 +:10D26000D3D5028269E0CD05B884C4565DC09A2347 +:10D27000C5C7D6C67865678C034765FD8AA5632A4E +:10D2800051EEF484F245802B6FB32882DFBCF48426 +:10D2900055F657010A0A46E7D03BB2E8BB1F59DAF8 +:10D2A000857E4B1A1C6017E7762548F8C4286D4523 +:10D2B000B5B394D64F73168BEACDAD5C8DD8D71D20 +:10D2C000C8C625B7BDEEC757A7B52393B74ED32A17 +:10D2D000BBB14870D8C18F2BA9F243EDA04A1146CB +:10D2E0008A5CB6D17D8AE98294A941683B682CC4E6 +:10D2F000A52008737C53BCAE991C600FDF6052CE32 +:10D30000C34A473B51510DB0698700924BF767CF35 +:10D310005A05D78C656094891B6460D44A6A433887 +:10D320001A8B63FAD4E5BE5AD37ADC8FE285FEC24B +:10D3300078AABD49EE934EC3E5AD7EC854F62226C9 +:10D34000CC0FE6E3CD582642F7971A66D199C0A2D2 +:10D3500086EEF999B9A9B0ADD897C48D9F590BD76E +:10D36000F0041B54FD823E015726740B87A7E5DCB1 +:10D3700096C3DDE24258A6C21F58BDD6DCF97F5ED7 +:10D38000B37546C8513A009621BB6CB3E1902A8E22 +:10D3900095520F8A2E7BA68CA06696B7171BDA666D +:10D3A0006CF27893D7AD5D7DB76198F75CA7445078 +:10D3B000DD4C9EBC25932A4534E4A325ECA0B3188C +:10D3C0003D6D633423B2C98296F7BCE1538F1FFCD5 +:10D3D00051F13C0A68BA7B10D920571766C108F092 +:10D3E000E7E228CCCF27BD6065D12E0710BCB9AFCE +:10D3F0000D53328B32D1565F27475DF142C1045342 +:10D40000B854191F45629A2B00515C61D29C84C5A7 +:10D41000FE467DB73D61754FCEB9620B6C55E6B5E2 +:10D4200064FAE82A18B1E1E790EDF671A121926162 +:10D43000438E58BC8C81A90D7A965EF41E89F4B98E +:10D4400039DF39631609490D338ED1E202789CB673 +:10D450007EE849580061DC78E7F2770DDD921678B6 +:10D4600063A473697020ECDF56BEE9F318798097E6 +:10D47000A31DCAE0E0615AE3015A0755679A7CEEA2 +:10D48000F4450366DE8A2E4B31156E6A81BFEB7858 +:10D49000AD98717523E8C7ABC30C8F31949596D0C6 +:10D4A000D15C4613E62D9CF9AF2C9BF6E10461415B +:10D4B00047C19A978FE60F0396429D99FC8B947F04 +:10D4C0003BD76096E3A2F6DF80D7148AB9D7F2572C +:10D4D00043936D21C6FCC1FE8820A8AC665CE4ECD9 +:10D4E000B7F29B8D5879EA505A3732F8E4ACB34C16 +:10D4F00084F484217D0A3182182CD64C71E5ABFD71 +:10D50000733DF44CAC5448AA4BF4B8C0115B342BB7 +:10D51000512EEBFE74C74E97DEE655A679EE3BAA78 +:10D52000BA126FC2F0B86729E2D160B1A01658C430 +:10D5300035D2EC05CC1FC42EAB1B55B0D6F4AB8F47 +:10D540005BAEF6144B951A2FF629EB0384E91FB452 +:10D55000BCB336A099FEED520685A8443A1ADE50B7 +:10D56000C320BCABB0BB1D0D38414524353C534DE9 +:10D57000675AD9BC9F22C8E14B7E4A2DE6051A6640 +:10D580002CB75864FB27466F88DF4834FE54EBAD58 +:10D59000965618DEEC08092560B06B46742BFBE24A +:10D5A000F53ED548E3EB2413E9DD081EE2346D7047 +:10D5B000ED9DFE846FE6A17D8000D2B4310F5EF850 +:10D5C0008644B855EB02D448BBA2FEDE9805B29D56 +:10D5D00024F08D3D8BD24D1BB61F9E023789E60687 +:10D5E0009D10E9AA70D6C43EB8425F440823DB5AB6 +:10D5F000B606C8A5B9068D5AFB64AA55529E2C0AD8 +:10D6000000EBF8572C330A81BBFCF371E52482BE92 +:10D6100048D917371A64CB56613A050307D4CD9B16 +:10D620005F6941BD231E3E1EC4310401630FE8BF84 +:10D6300042D4E6891902E7DCE0D162F8E5480C1E25 +:10D64000481FA8DFBAFE9245A39EB5EA4EF05244A9 +:10D650009ADA4A151309C189C1CACD291FE3179661 +:10D6600081A5C98AD718D00A8C5F65DD48FCB869E6 +:10D67000233CFB9A21747946496B77DB70F7F703FB +:10D680009FF36E3041BE3919DA70F7C24DA08AB0EF +:10D6900010C838C53E100406722CBD20A1504D9A0A +:10D6A0007DC8C28532A338BF6B378017CD76035D46 +:10D6B00061BD4CA21B38E9433E8F285CF631889847 +:10D6C00094FD8EF96443CFA8B2BFA1D8CA9C705D07 +:10D6D0005DB449483C289D3266C60899692DE443EB +:10D6E000238C0AB0E381466BAF55E4951B9723E585 +:10D6F0008D5D51D31474ADE7EEA9466F3AC9D0EFF2 +:10D700005CAB07AD8C6667C90D99589ABDADE894BE +:10D71000DF0640DB479C893A72F48910E68AD650CE +:10D72000DD088663A48A5E2BEF785652E396ECFD03 +:10D73000C1E81326CFDA0BABD1B038FEA298230F85 +:10D7400039B6CF8F859F60936C78C93993EF914A32 +:10D75000EDB11ABCE5F6A05D830E92731C96ACD0B9 +:10D76000602DD73AAD1653263C37B90C19BAADD552 +:10D7700077405951295F00A2A02D2F6B9B167C8703 +:10D78000F8B0E14985CD4D46B29BF4EA1EE698A279 +:10D790005FEA1DBFEB3861117A504158C3B1C8DF51 +:10D7A0002CA12E6DACEF7014AC3F5CDBB2744CBEA0 +:10D7B000FF9F8C65107846BB7814208AB3A3DF2DB9 +:10D7C000CB58F56010C9E5D73C298DE5B630527DC0 +:10D7D0002AF473FCCD595E0773BFE94E8DBA274D0D +:10D7E00001A0DF195DE3DCA07853E39A191D679669 +:10D7F0004EFE219E43AD9DFEB5B77652B67B482BBB +:10D80000B74CD2B427F2CF123F9533A155A4EA709A +:10D810003834046B862A99BFCE2D2787385E29605D +:10D82000BD5C217E8092D7C5363CF1948E530A733D +:10D830008F0695DE605E5E19B90E58339E81D3095E +:10D84000D686645463369682C68AD5F0392028423B +:10D8500089493D489F4E8C3100F4721675B38EB8DD +:10D8600024A98418F0D7CDBDDE01D71F28D1BE1161 +:10D87000B418992E5B9117709E2A1C9AEEE3098EBC +:10D880003082F45CDEBCF18754004F673B8DB39768 +:10D890000D8EAF270380732668564592707B88BE35 +:10D8A00090BFDB0AFE50CC98EFE2165D869096346E +:10D8B00077A8E41580689790AAD1F04F388EE2DC03 +:10D8C000B93F4B36442FDD98B2984C5B3AD71D7662 +:10D8D000F7832A8FF35FF106828EF47D6F96F173E2 +:10D8E0006C66687F2AC5E5326DD34C86999F5DA230 +:10D8F00022CCEC3B1899714BC901A5BFA5A1B19BE6 +:10D90000418838EEA3528304371DC2E07E43CA64C7 +:10D910000BC4D4F0284D42C0463EE79A1277547AA1 +:10D920003A9F8E8511CA22D073F213F0541A817176 +:10D93000F9433AA0F3325C06F7B41D0BF50B87866A +:10D9400051CEF80AD05F2A43802294753B2F702F66 +:10D95000E6225C2486EB26E002AAB6450FB42B68CB +:10D9600087FC564124C398C732212219BFB006292B +:10D970002EDB6C30341803CADBAECCCAC76B76A37F +:10D98000D767FD7C8268A7A9FF8E954BBB5EBC2044 +:10D9900019611291E8B326577E764CEC60F47FC98A +:10D9A000A2351D4D9CFA7D0D8015770F649664C5D8 +:10D9B0009C3C14D40263991E4268DF50DF923FB54D +:10D9C00066F5F4BB008626D0C33DC13C994619914B +:10D9D000AE409C3C7A51FE2930A1ACD3F92789EAAC +:10D9E000D44CCBF145DFCDFE00C6E7EFF2DBF1F61C +:10D9F0002004C8272E0805DAB9BB894E3524477B99 +:10DA00009CBA881F23A0BDF8564C16A07C6F64D228 +:10DA10000C4A3039EBE33E7506FFDC574DF845E81C +:10DA20009D39B77D5A46F702AF2997ADD65BFDF514 +:10DA30004E4556A864392512AEC67332529F2CF754 +:10DA40000EE904513C7B399BDC778124E428BC3F00 +:10DA5000C640DC14C05BFAA9B6E9FBE8DED966551E +:10DA60007C9E3655CB3A12E10083E3C851C4B6D14F +:10DA700059B5A65FD884E0F43EFC9B27EF586BA312 +:10DA80005C9293CD4664B4022481EF6F573100A0BD +:10DA9000FE8A6D9B2B1D21019347E16E9954AF27A0 +:10DAA00005ADA27984C36C632CE2F2840773093755 +:10DAB000D7166BAE917C8B25E752FCF882689646B0 +:10DAC00063DA87D293DEA8242F84527B986BBAAF97 +:10DAD0004D3620D6AA0FFB42CC039A22BD14621EFB +:10DAE00062C83EB0873CA305B5060F823443977BDE +:10DAF000B024F021BE5074EE02FB0A085086E4A860 +:10DB0000878F1145080F379469CEE81D0D87030FE5 +:10DB100005536FDE57A367488B0C667E98BF0A1FBC +:10DB2000EE190E5BC6F21BF090B5517283286B1490 +:10DB30002DF53E88EBF2D1ACAE0A60C671BBD7774B +:10DB4000A7AAA21C8CF21ED3288C22A12BCEF3D71D +:10DB5000E6B9425F8A5963E8AB1D9FF3D7CF47937D +:10DB600011C31E6A21C82A9CD8B3DCD33664BD8990 +:10DB70002BE7A2F9316495FF78DE91B124371EDBE3 +:10DB800097B7C78D06C4722ECA3ACCEB47073D5EE5 +:10DB90000291F538CE6B6BD5414EC8C6846A11949C +:10DBA000CE711C076AA97FDCA32D34408D597A0BF6 +:10DBB0001161610E99C2AE4A7518E94D1304A97836 +:10DBC000A933905022D3B8B6F340B0701716AE34D4 +:10DBD00031811D3D8FC65BEEAA1DB47CF571E3DA81 +:10DBE000266BA5414D0AAE7D5E3A8F1273038C6899 +:10DBF00006E382C89D63D94510A6ACE46664A924F7 +:10DC00006DD56EBC2490A6CBEE646022220D94E705 +:10DC100075AE6574D38B80C318B8F91B3B948CF137 +:10DC200014588CA03A5C1D53692492D2A6DA499705 +:10DC30004ED4070FBA9D61BEB55EB1C70BC3D4F613 +:10DC4000E4B84618CE95B98E00029BA673F16C938A +:10DC500027949DE16271ECD64F1D02C3A6378AC995 +:10DC6000AF8A6CA53C8D3881A1AB624CCA8BC9B61A +:10DC7000892CCC0BCE73A3B0DBE131ACE422F87B72 +:10DC80002FB1EE467F689655CC11BC196AA35AD3C2 +:10DC900088469BE842E0917F3F9E988224B89F424D +:10DCA000617D622BEB60AA69046112FB345D74072D +:10DCB000C39DBEDD0048EBE09975AAC4DF44B2E223 +:10DCC000C0D7F3FA6AF7E3787A7C4403F86A3C6FCA +:10DCD0003C8F78A011BB8EF945DD76EBA9C9AD105C +:10DCE0007974523CD937E8439F3F950280811E0FDB +:10DCF000644C14E50042664518F761F578BDAC6CDC +:10DD00008753926E37568724A09113A5515A445ECB +:10DD1000E4A41663FBB419CDB508A5CC463CFB378B +:10DD2000F36044165CD384F2E63F6D5C529C05E3DD +:10DD300025A44252CDA9739C4A45740DF6B4DF92D6 +:10DD40002498A97667A7CD6106308EF356CC67F18B +:10DD5000C6BA537FBCCD44A80B80450EB079EE26E1 +:10DD6000E86B3E3E71B750914130DBC17F6603DF07 +:10DD70007D0A859ED72AE3D5CA89EA88B1D6F6E519 +:10DD80003897F0AB9FE2981F15754BA2C6D91F3B81 +:10DD9000F2982562702E760AB4F362758352DC39EC +:10DDA00097BBE41A81DEDD849410485A364C9537CF +:10DDB0001B85882610E3BE6CE33029010718950BFC +:10DDC000F49B2A00A8B0A1D39C733F2865D7CE95B9 +:10DDD000D5CA3C8203846463571ADAC804A26FBFB1 +:10DDE0005889130A5CC84FB55EAEB659D60593453F +:10DDF000C0DEF4926E1E5C227928011EB6E59B6C93 +:10DE00009BE7CCE410C689C97FB07918ED3DC0CA44 +:10DE10009340BD154FD0FB9FBFF66EB807CF701073 +:10DE2000886411F7C205FC9C63C06575343711FD29 +:10DE3000131264FC69AA902FBC8D4C8862AEB25D4F +:10DE400070003D9CA02AF6EDB75808A50839502B64 +:10DE5000ADB7AB4623A566F33C32C1C4FBEB1FD97B +:10DE600042A18FCCD90652FD6A8D05496DA0EBE722 +:10DE700081193E05C47E792717E60D610A1423A196 +:10DE8000F41D5624DCB771748CCEEBFB4C92ACA71E +:10DE9000753DF43159B399E9DFB492BA0530EBD549 +:10DEA0000800158AD3D00C9764FA986445E44D6F46 +:10DEB000735143954E7E9D44EEF6E15A5C17A0CB1C +:10DEC00007CEB184F60DC702834A014F02836CADC1 +:10DED000F8F53DFFB997533608ACC7CE0F798321CB +:10DEE000FE77035C1972674B4AA383CD262331E288 +:10DEF0006C8A421B3CF1E523D93D47A5ADBBB74435 +:10DF00004DF39530EDEAE4C640FBE0A8E0ACE592C5 +:10DF10009CDFDC66360DBDDC99CCF3C7200D25F304 +:10DF2000CEE81321865EDE0902546B5371E15C1565 +:10DF30003E3A469A3BE757D2D7154703AFE35C7D9D +:10DF40008924B49ED8EA429EA773C336EAEEEE6DEA +:10DF50008BEE66CDB4E56AB520A4382F7A5B70D11C +:10DF60003D7FFF22874F1B1B1C9AC888CCEDB9EC64 +:10DF70004EC6E59268B72444AFC675A9B65B17DEF6 +:10DF8000E502671B3D9405AFC33ADF864E3C449ED5 +:10DF90003F4BF43132E7E5D9263FAA489A04E3CE55 +:10DFA0002DD081362B52B757DC70C18280377F6805 +:10DFB000E8722FC59B8A74AC302579E5279DAA9419 +:10DFC0005FF5430795F5DBDFFDA63993AE4E19E209 +:10DFD000AF834E189CB57139EB4BCC54F307C3D9C2 +:10DFE00091B0940890A96CA3E7E65BCE4E19C6E306 +:10DFF000B532A3DD033F97FED8011C7AE17D9D4237 +:10E000000499DEB687C673EE8418BEFADC86A06E6D +:10E01000204BB700829A12A413346ED88063E68531 +:10E02000BA6841A9097F360951BABC254CB3795B5E +:10E030002314B4B9F4EC82C7F066E81E5FD56761BB +:10E04000C1744C6CFF0A4F9235AF2405F28F2673D2 +:10E05000FFD777D71E62EB84F02B89AD222B868207 +:10E06000289C020185630B9410C39D84AD5B2FDA5D +:10E07000C7CA07D85961EB6F31FE32AA420CDBD216 +:10E080006336ACBE4D4B30B975FF3D4F0EBB4048BB +:10E09000743C5CD2B5C80158B0E12607F09F494EE8 +:10E0A00036152D378C7C71493EAEB9A74AEF7F7E7D +:10E0B00073B87F74EB888C3FA9F91405C19927BD0B +:10E0C0000D2DAAE3AF17C7A2A5B5B4FC88252A1A5F +:10E0D000804A4A004FCCE4349E67D69F744E051A9E +:10E0E000488072FF90F046B80DE5A2AABE6975C8D7 +:10E0F00079108D568138A29480740FAA5A64ACF4BA +:10E100000666A75FBB17B488C5BD69531F15DE94AB +:10E110007C793747A2FEF36F19AF94C9BA340BCE9E +:10E1200037B68D51717E55FD5981EA8D3C9DBFFBFF +:10E13000DED3DF53E19208AD9666B36092A5214A23 +:10E14000836C41F12F6BAF104555C1A3D64B290508 +:10E15000960CBDD5393BF82FD387EDD33C0DD8E3D2 +:10E160003AB0A275305C3767DFDB68869802A6F1AB +:10E17000AD918DD07F87DE25DED3548B9F3641B4A1 +:10E18000BC7C807DBEEB9689A507C5957C42F126B7 +:10E19000B377FAE0CE72998427E9D711A10F47BE71 +:10E1A000BCCA54ED5148DCF4FC94B082DE6C1B9088 +:10E1B000896777DE2A388EC0DC9C077436FDE497C9 +:10E1C0003D503765D034B246889883941A7C0C56FB +:10E1D0008C364AE825EB4AA057D3CA3321CC6D5A76 +:10E1E000557DAE730B4B4D6F940510960B05A941F1 +:10E1F00047A61F8B7CF1009F227810402B6E399729 +:10E20000E346E65C2B79B6EED4A95FD469286EEEBE +:10E21000B4DEB906396B03F35503ADF8B0ED9B9846 +:10E2200095CEF4D3172C43B19BE4BB49C9DCA1269E +:10E23000D0BAA3F982BC3C8F77381888DFACE101F3 +:10E240001A5A5C11FA220EAC3105B0D7BC77763A77 +:10E250000505596EE53935CAA3016427929D070566 +:10E260009CD5C6D0266FEDBA7138F2114F6AD12015 +:10E270002C3DAABAEBBEBBBC2BD15B71758F72155E +:10E280003A9F31F1F6313BBCCF01D872F3EC89A54E +:10E29000F1D2FD5CFC2F419D0DAC08276A506A61EC +:10E2A000DAC6D49F577C904FCDC4F399EA15EF2975 +:10E2B000E2827B5D1EB7A0BE9D5CBEB0C3D2F29170 +:10E2C0005EAFD61CE9A89F3118F21CD37A2B9ADED8 +:10E2D000B669B0ECEDB7B35931280BE0DD936BCFE5 +:10E2E000CED52A2E13C22229D9985055EFA8ABE7D4 +:10E2F0009719E3FE5FC6C2C62442EFC74FEC5BE846 +:10E300008B9D2B6B81E1C997E560CB4BEFA04CB99E +:10E31000ADC9938DEB53E8CF4B005E03D63E52B7A9 +:10E32000568AC7DF0831017A200E589004C360CBAB +:10E33000D93CFBA4A7276FE2D3CEAF764B7306225E +:10E34000382F0A9926D074AF1AC5D3399CFE729221 +:10E350001AC5780CC3EA1F8BD53F4D868EFBF38D13 +:10E360009B2587144E315C9D5A9F3E54A67C05DB4D +:10E370006CE9298A583BB83CAD63DA872B5BAD0664 +:10E38000A374D81AE6133074FF5AB260ACDB40367F +:10E3900093DAE8CE09763D8503891D7A022EE022C4 +:10E3A000784C8B9AC212CDF6B5CFF4E36A12587747 +:10E3B000CBE2AB5781686EEA30673C9491059A9C3A +:10E3C000FB480BF14B1621A1CD8AF471C20CB0347D +:10E3D0002D36EBC59F7EE5149333B69E6F73B55211 +:10E3E000EBBE7D44833ED71310134926A2CAB21E4A +:10E3F000AE8A82C21B1C5AFE9E783EFF639EB0808E +:10E400004B2CE0639F8A8844F6D694F6ED246CBFCB +:10E4100092C14DEA51A80D8B8F56AFBA889279E917 +:10E42000AC3CCB0E3A84911AA10867B3CD0151DC04 +:10E430001AF93297C6A52EF3BC66F3DB0B8B766018 +:10E440002D347E2C300AD46A2197FDB33C6BF794AF +:10E4500032EE3EC15D8E8DFAF9195286655C9F8C55 +:10E460007D318C9A1663297D7AC87C63C26DDF8DFD +:10E4700069D3CE2BFB3B3AD65A6174ED8D2BA9F3B1 +:10E48000F13080AEE9BDA6AAF2A08665657A0EA23B +:10E49000EC58685D158F2CB4D278623476EA59E571 +:10E4A0006485CF8116037AE5A8D350CF7712ABA14C +:10E4B000467098246E0D20F0FD4DD7DBCD1B98C81B +:10E4C000E2231EC0852286274BAAD4E08D2A29B6D6 +:10E4D0001C960A27F23F9830F6C41D990A8EF3EB7A +:10E4E000255BFDA63F0A41D912411FFEB3034C5ADA +:10E4F0000E7359C7B323CD6A51CDC7495AD4EBE443 +:10E500006193EB77A7BFCBF2D2DFF169ED61F846FB +:10E51000FACBF79529D2BCBBAAD3986F87B8991DBF +:10E5200020F77CCE5E96315F12FD5C2D8299964A73 +:10E5300062ABDF4418BA73E4BE74F5932EBB374860 +:10E5400064B5E05BB24840DF468B1B77B7F0678F5E +:10E550001CAF7D513B188D257DBD9D3AF22718CD0E +:10E56000A6912D1BB27916B834E6177DF0F306A4F8 +:10E570000DDB9C59AC6969C6979AC4E758D5F8F683 +:10E58000D3BAF53F0213C940ADB44D044ECE93FB50 +:10E59000BEEDC5B8760E94F81DCA6F27731B67E8E9 +:10E5A0005B3B2ACBB8B4521D23315C11EB86596D0D +:10E5B000BF9A767F1EBAA931D242D4F8C513AAF009 +:10E5C000D5D6EBEE928B82AC2255875C3DA5895265 +:10E5D000A59037BFB7BC414F21D2B7FB63E41FC73B +:10E5E00056B1AA41D050578CC9F3DD2CE5C61BCAE1 +:10E5F000D2B53EEEDFA4205CF25FC50102A6DF814A +:10E60000945B2C6C8DF6DF2700FE06C7CC4D2E9C4C +:10E61000AD7ECD9B7949307FEFAAB930CAB358217E +:10E6200006CCFCE74215F167EDD5AFB30159C77BC6 +:10E630007290C87742DD1BC8632DF70CC78CCB1CCA +:10E6400070F7A32465B32F49ADEF0425D686FC32BD +:10E65000F134A51956594B56F031AF6BEE8E4A4640 +:10E66000288AEB02EC9B674BB58250F2710FB80C15 +:10E670009DBA4F045C6EEEFDB08A23CABD00152A18 +:10E680004877304580B4DA883781AEE40F976EE280 +:10E690009A8D6A6C7B668D5C79DDE602C4F68458DF +:10E6A00059750BD8BF4C57DD2CA883DD1BE9D9BBAE +:10E6B0001F7FF42B702DF9FEE7918D77E554BC2F69 +:10E6C000E28A322687D035468C102E4CE31CAB896B +:10E6D000FB56359B5E04A3BAEB849AA21AFB8543D2 +:10E6E000B44E8532971A4E7D69D168EBD373856D30 +:10E6F000B40A6EF75F50B9518950FB96797275E292 +:10E70000B9FBCD66C25EA08F350738D5119C404A53 +:10E710001F57567BDBB3F1735219D5F3EDF13EDB96 +:10E72000C2D411AF7B41725B2EB80170E62FB0AC42 +:10E7300032EF54FF075AB17CE37D6B222F4DB5B801 +:10E74000212CF97B40C17844E55554E6F99715240E +:10E750007ED2D7050ECF0C203F31CCAA6B47457E29 +:10E7600030C8B78BAA69A4FF3CFC4663DB51B18774 +:10E77000F2E957903DB08E6B4643545949068001EB +:10E78000486165368F203794CBD4E7705C978D5FF6 +:10E790005EE62322AC2C5014D25BEB3FEBF72EDA73 +:10E7A000306803A42A71A62A2633D78D46F3993CF4 +:10E7B000E1E1CD5156CD63673D48E99278FD1D906A +:10E7C000C11A2696602E204B5F94773DB38EB646D5 +:10E7D000414D5BE2CCEF7DE395248B0B19AD81F2CB +:10E7E000CFFDBA7148BCA82676D0F942722E003807 +:10E7F000AA522F8E364CE56DC33C094E1709E3BC77 +:10E800000BE2B1AE16140DC4F615572425C7BC0F84 +:10E81000C1289256550A4AB80B65BB0242E3F1780B +:10E820007298F8AEB2F62BFBDE1706B81090C9113D +:10E83000086709C76BD89D40A4A9C1F35031DFEA2E +:10E84000C383E4A072229B8DDCF33809E5378A3F4D +:10E85000BBF709542EFC8F4B850323184F00C725A7 +:10E860004A6C32BA296B69879DA94040FCB542D0F9 +:10E8700057606C6CFAEA514BDD8FF6A62899F72E9B +:10E880003CA260EC07C4E59E80FF32927C619A2135 +:10E890000EFB14C5DBE3084DAC8A4A354550010434 +:10E8A00033CF30263ACCBBDC1158E2AF6BBC3B3DDA +:10E8B000F767B47B404E8F1FDE7029E25E46D15F62 +:10E8C000F1FA0A831129ACB49CBE017B94DFC754D2 +:10E8D0003FD297074A29DD8051D95812F5C527C282 +:10E8E00089C142FEC6549E30FF88408F28C1C2AB0A +:10E8F0005070426209743EB145A067A80D7D824008 +:10E90000EF8E4F449BE70280B980350F6E3BB38E8C +:10E910006A1B9A90D595F75F96DE9267B4DE02BCCB +:10E92000EE18F1510ECB3C5FC102D2E96C4BFBF10A +:10E9300033A70D50865B9FB027F17963200D77C612 +:10E94000D79404B51EE9898A84A48720720B83BA00 +:10E950002DDCECD62449E772ABF6061D842D65C488 +:10E96000503C16C0704DE53AE49C75EE3C280FCE45 +:10E97000F804FE096EB6E434B15595B5218FCCE1AB +:10E9800039EFB81355209208C8947C1B4C7DF93D93 +:10E990007E81D30F6E21BDD78E3DB079E7495EF6FB +:10E9A000B5DDA99E0FE30AED322A50C8B88D00A745 +:10E9B00040F00AD741C34B3EA670D65CAC8F3D8F6A +:10E9C00094E8BEFA0798FFB583E9CA96017C9B2FAD +:10E9D0000FE39623715173EA031073170446AB01DA +:10E9E000F45B9DA7521C80BF30D4BE561867D91463 +:10E9F000B37E2C374BE9471B6CE581603008A07A69 +:10EA0000D6114911B64586C61D3AFEB3CB66AC5D3C +:10EA1000C33651AA81C0DC144B9F252891E48BC5D5 +:10EA20007A04B898F33EF907A212793F73B360896C +:10EA3000E33BF5BB8A0BB87EB9ACE5C0A4A79563F0 +:10EA4000E68BFB98E547206738E09A9959C3BD44A7 +:10EA50005410CD20E5F4EB34EA8AC1286D0E490E3E +:10EA6000121D0407EE5F98FDD270A21227354247AF +:10EA7000844589A449E5ECAB3508954622FAF5337F +:10EA80005694A36E79703E28F2DBA81D2396583D5C +:10EA9000A43176631B9292EAE807FD4C2E1726EC10 +:10EAA000A102EF6484A43A0D9BC2A4F1D4AC2A1154 +:10EAB000C6C2074F8124DE9A303BF031E6312AF995 +:10EAC000DB6B6C19D8B05D3E1DDFD8DB04265E3CE5 +:10EAD000E3876F512E932D731A725F894871020775 +:10EAE0003FD7010844739416157047A3CFA7AAA86F +:10EAF000D8186E8AC519FC7C43D949292AB30669FE +:10EB0000D113FE048AB208D1CFBCC5647E29250486 +:10EB1000FE7FAC49DA052B989F3D6E1E9FA657BA23 +:10EB2000227218D5930AE0C66F661F096C4EA45274 +:10EB3000A879A51726A0613F49E6B9BB13ECC97AAD +:10EB400056D907287AB5D570B792B6D8FD8D9B19DE +:10EB50004A14C5AB7FEC64D27EE6924FC372EEBB23 +:10EB6000B92778C00D46167857C4FF2D503C156D57 +:10EB7000FB0FD4F77B555C903AAA387214650836BF +:10EB8000BB8DF8A870BD5BFF8CFE70E588D6254C68 +:10EB9000F30C8541202898B20BC04B1BF79F4E54B5 +:10EBA0000214F1D0CC7EE9ED208F7FD3768F8DB328 +:10EBB0006AFE7067D4B42C429B2DBCD78363B07DB2 +:10EBC000677BFD413395AA86E3CBAC36483A3D32AC +:10EBD0001811EFF227725FD6827B190CF2B18417FD +:10EBE0005AD7E57B3CD8086AE7B29F972ED8A38D09 +:10EBF00073A95A2F4A9D15968DBD26138B0B70D184 +:10EC00002A99A3C4CE8A04177FD4B3A2641ACCF580 +:10EC100046CBADB5AAF3757D5041488E2CC51C9AE4 +:10EC20000C6812844793EDF3A384832F3CABD37518 +:10EC300001F8B7CA96D8D66DAFFFAC3299E50CAFE4 +:10EC4000660563D2164D988A6EAA9AF244294C330F +:10EC5000906DE3458AAAC8E66DCD214884B69766D3 +:10EC6000EF10C4EEE8534363CB5EA04CCB822E1270 +:10EC70003487AF1B78546E14AFF7EE4D038B619A57 +:10EC80003E74844E256CD4BF9BF9BDD418FC0E7223 +:10EC9000C13A1A6E5BC96B8D20E64D6AEF7FCDF9E4 +:10ECA000BE61F92C76F0B92C9F2F5F13476C9855F5 +:10ECB000992F12E075AEE775EA3E5B270F3BF43AF9 +:10ECC000CD804B2296413D044C3DCAFD840146ACAB +:10ECD000C2CFAB29E95D9D41DDD0DBAD155DABF366 +:10ECE000A9BF4EA126E00FAB1D17F32E82CDD9D1BF +:10ECF000D23A6F41BFC2E65B07CBB6E1F8632BBDEA +:10ED0000191377E4BB40C4E50E464257764ABE303D +:10ED1000439761A9A6DD12124F36F63830A2FFE6FE +:10ED200014D1B36F70759D6AFDB51D110B3352A5DB +:10ED300098BDC9C739D636FFE6CB39A6E4B7A6BB1E +:10ED4000C1240542D86DB01ED2D8EE29CF4E116B2A +:10ED5000272D2BAE4012FD2E2369EED7494533C82F +:10ED600056D2B563230524530398086F13B5AD99A4 +:10ED7000894813C14B67759E6486829D4A03CFC93B +:10ED8000C5693A39A2A7E839917BB92691F27A2769 +:10ED9000890F322C565D8883735A74A17C3AE098AF +:10EDA0002E6431BD6E33D21786D64A7F90657BDEE6 +:10EDB0006E0E9C5E52A4563F71BB502D4EBFB63BAB +:10EDC000CE547184A9D3D306166DDCE7AEC50D2AE7 +:10EDD00087481DA17E589096D6B59F4A83FA7EA09B +:10EDE00012CB80C37B274E78FCADF77AA5F1C468BF +:10EDF00089FDFE1EBA627A84CB40E922237E080890 +:10EE00001A3F8E8E1F6545BFE30D5FB2716A068F94 +:10EE10001AB74CD657FA284BF8980D6E6E0B361D64 +:10EE2000CCAE66CAF9150D0D3761AD59C1F5C27189 +:10EE300093729DE43E8583014A8B0CAA7914B8CA6B +:10EE4000B671AD0F96938A1B7C441C514962BB433B +:10EE50005009F86C25D939AE7DF4918896FE7995E4 +:10EE6000DD34981D12F830CBA54C9667951EB93C41 +:10EE700060861B1CA25E5DB7A3B44039FF9F7B83F5 +:10EE80004A60AA12175BF475CC648F61C6B08450D7 +:10EE900030A16C60DEA3050FF96D7BC7A278C39328 +:10EEA0006F106809FB27475C6BBE7C8E2AE89416BE +:10EEB000396D6BB9CECE6D3DD66BE036E4184B5F45 +:10EEC0007F2E9D9700673CFC73F5DC66A09969A1D5 +:10EED000F2E219E01CB00E8411C45A75A7B1E938EA +:10EEE00070B9A045F7D01615B03A6E586B56977C9E +:10EEF00015D6E64BD71B3635A9DE13761CEDE6F2A8 +:10EF00000A12B06F003F01320537047F07503F7F80 +:10EF10003E000000001C101E05F5281E05283000CC +:10EF20003000F0D2F0D2F90A1080080A01015442F0 +:10EF30000080332803030000070A00FF0001870058 +:10EF40008004110118190005041B00700A0000B0AC +:10EF500004FFFFBF96307500C080004040010600EE +:10EF6000002C010500A00F08100104054B003F0014 +:10EF7000000000000000054B003F00000200000000 +:10EF800000054B003F00000600000000054B003F5D +:10EF900000000800000000054B003F00000A0000D0 +:10EFA0000000054B003F00000C00000000000000C6 +:10EFB0000000000000000000000000000000000051 +:10EFC000000000001E1D1C1B1A191817161514131B +:10EFD000110F0E0D0C0B0A090807060504030201A8 +:10EFE000333231302F2E2D2C2B2A29282726252469 +:10EFF00001240023CD2C3300002D0030080000CC6C +:10F000001C0023CD2C3300002D0030080000CC1C48 +:10F01000041A0014003003000C3003000C0210002E +:10F020002D1E000000000000000000000000000095 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000000000000070 +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F000000000000000000000000000F566B5B050 +:10F1000001010001010000000000000000000000FB +:10F1100000000000000000000000000000000000EF +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F20000000000000000000000000000003F01328C +:10F2100005371E0A015403000700FF00561D10E0C9 +:10F2200001E00000000000000000005335303030E5 +:10F23000420000000009030F000300000005000069 +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000000000000000000000000000009E +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A000000000000000000000000000000000005E +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000003D0011E0 +:10F2E000060112201B0C0401011C0008002134003F +:10F2F000000000000000000000000000000000000E +:10F300000000000000000000000000000001870075 +:10F310008007110118190005041B00700A0000B0D5 +:10F3200004FFFFBF96307500C08000404001A00878 +:10F3300005001C104410270101BA001C05C088609C +:10F34000483B080F580000000000000000000000CB +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000000000008D +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E00000000000000000000032310C0001540059 +:10F3F000000000000000000000000000000000000D +:10F40000001E33001C10010000000000000000007E +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E00000000000000000000004030000015500BF +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000000000000FB +:10F51000000000000001240023CD2C3300002D004A +:10F5200030080000CC1C0023CD2C3300002D00300F +:10F53000080000CC1C041A0014003003000C300337 +:10F54000000C0210002D1E051532005100000000B5 +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F57000000000000000000000000000000000008B +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E000000000000000000000470015004151002D +:10F5F000000000000000000000000000000000000B +:00000001FF diff --git a/firmware/tsp_synaptics/synaptics_js_b0_5_1_fac.fw.ihex b/firmware/tsp_synaptics/synaptics_js_b0_5_1_fac.fw.ihex new file mode 100644 index 000000000000..9d7a65888902 --- /dev/null +++ b/firmware/tsp_synaptics/synaptics_js_b0_5_1_fac.fw.ihex @@ -0,0 +1,3937 @@ +:10000000E3C680E20000000600EE000000020000EF +:100010005335303030420000000000000000000086 +:1000200000000000000000000000000000000000D0 +:100030004453352052312E302E3000000000000095 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:10009000493243000500FF000C0D20000000000065 +:1000A000493243000500FF000C0D20000000000055 +:1000B000DD4AE051D443765357064FC136F4AF3092 +:1000C00043F5E04A742634893ADFD10918EC5632F8 +:1000D000C78B51A04FCEC9A42BFA103558A31DF3DE +:1000E000DFF4C560070817A397265F0D938035449A +:1000F000E86668B3354701872903BF97950B8F766C +:10010000142E335706DE665C69CD12FCE1EBE5BCCC +:10011000CE46143E9C4C57C3ABB6C3A5E1536419FD +:1001200060796D42FCED1D79E5F9D0D05B22D86D88 +:10013000110A593248CEEF6F95BF868AD429559E51 +:10014000661BB53C8AA929632A109F6BF8354FCCF2 +:100150005D2BE885DB6DE2DB26282ADE9F06F5E7CE +:100160007464A4C6819E2024E91E0726606AE66F97 +:1001700070FF95745F48398EB524F80C1287B7B4B8 +:10018000AE74EE3DDDCC84B860D58362E4144B657B +:10019000C053ABDD3931AD66AD9940A82B3E14D5C7 +:1001A000DF626E5416AC1D109678606CE04156BA52 +:1001B000DF8D6301C0376A4E68F9380DDF2549F7D6 +:1001C000AA078A08F3181142D22785465702EB6E18 +:1001D000A5C4D79979998F65765D75D3D7D7FDFB7F +:1001E0006FDC958042C2754548A748B53BC4AD3E1B +:1001F000C13F5E1F0211E098D7ED36E06334FE1771 +:10020000D26D56605E328964656B52DCA2F1015298 +:100210000CA4E657A31FCE4C6735B2CA70601433E6 +:100220002B6D1988C267D67D74B89A81DA542C3F39 +:10023000491ED90B00D17B5EDE74B1B17E29F1C1BC +:10024000728FB8F354530ACA68DE310937696E7A7F +:10025000016B4F2D6A0EB775AD335DF3CCBFDAB1CC +:100260009FC365EDE3B1C88933A010A42E2A77FFA0 +:10027000941CDFC7C46DBC3168C5D507FC1325A726 +:1002800059788952BA53E27CB1FD52977DC40682F7 +:1002900007299A27888E6956712197069BB7E94CE2 +:1002A000BC43110C106717D4B3E026CABC2193D508 +:1002B000691165E7D7F351B98F092A9B21B55DCA4A +:1002C0008F37050FD741C227608E05483CEBC046EB +:1002D0005C20277D9FC42CDB31D3037C089EA59036 +:1002E0007C892D8FB26EE2CF18D13B306AAADB42F7 +:1002F00016A19A55F3B9C30B60CC7AEAF7E4BE15A0 +:10030000FF010CE10DF9265FB36DC5CDBB6EDB1FA0 +:1003100094BE9A1463CECB6A00FB34E6E624B6E1C1 +:1003200014EAC05A5C6D1A6D7A30E1F76AC288EC43 +:10033000D0ECA644C1C6B2612710D6415E065C422D +:100340003848CD56E7E153B8687EA2AA8D3EA2DBBD +:10035000060FB745D8E7B2092C190F176D8D684104 +:1003600062C106CE4562FE34DDD61B820C32B42C4F +:100370002B40712C607821CDC14E643E91CCF92088 +:100380009AE6778AEBB1A763325720CB861699F5A8 +:1003900030222A723AE86D118ABD7DA135428D93D3 +:1003A0009F9EFECC988D1AC007C006F83F1BAC8FED +:1003B0009F22C5972B1F6E4CD95F76BA3676DC3BF1 +:1003C000AAF331EE8C1512796A9C9CABA374A1B18F +:1003D00092151D32C4BDA03D3AAEC7C00E2D62D3EA +:1003E00049195E178500AC1822148603D933EE999B +:1003F0008E6FD156F1CC00CF4970B3A342B87EB80E +:10040000C4D76C02D907A46328C1903196FDCC45AE +:10041000FC1FE9E66637288E9DC2AF3579B26F21A1 +:10042000D08CCE938E8D10CB56D450B444C4E1AD55 +:10043000F7086D26FAAB27351DDB8052258EF8783C +:1004400095F8879B3FCF72B743B6DE6410E276F330 +:10045000EED9CA937311AA1CEFB40D7CAA58815E21 +:100460003FF3CDA235F9E88C5AD2EDBB61F91FF20A +:10047000C3F73FBFFDE1DD665D8BABBAEB5C20C32C +:10048000E2C973C154CF6443ECBDFBB7F24A027AB0 +:100490007917C86EC03E2905DAE88BB26C036C0789 +:1004A000D38C2FBA906416A1BFB4F2252321B7CE06 +:1004B0007776FB5F328A96C6FB7A3B0B7F52774199 +:1004C000886E5EC5973FECB5B8490D6A9467A7750D +:1004D000DC2E637B3158E76A32E34F8DDB62AA166C +:1004E0002C2232672A967C01490B52CB02841D5C78 +:1004F00016C1EADECE03085146469A6CA9EBBE440B +:100500000C74B4878B171F1E91086D059D8F4DB716 +:100510001F074D8D46C433C0E0514CA965CE6E75A2 +:100520004363AE5848F935DCEC11A61787F7477FCF +:10053000729C6A149755DB8834231AB84B26998528 +:10054000EA33D0FB959467038A5D55A5C2551FA178 +:1005500041163CED54F0DF8CD663366E9B6974A671 +:10056000B747BD30F8B80762033C564AD562C51A92 +:10057000BDDF04DF2F9682663DF0B51AE0F9928365 +:10058000F8271F5D744D1096238ADD68991AB2F919 +:10059000857CE11098F6BF5027DD279585A075E58D +:1005A0000A1E13D102A9D5E996AF5186D73AD9C907 +:1005B000EED265B635444F52D4682DC6A20072C241 +:1005C00068916D940B28B16A537C8611F8C2FE18AD +:1005D000F5A1FADE4908E483618680F0E0FA93B081 +:1005E0002D31BB7FE2BFEB0378B06F56DB7B0C3F56 +:1005F00092E0A5810A404CF363F7AAE0C041E74FBF +:1006000071105D4A61102A3C3A5AEDA8FD6456A16A +:100610004DBDEDE762317E0B73C2299F90E37E0DE5 +:100620001600961EBB20B898BF89509213D2F9309D +:1006300038BAAEC7AD0CD7B20920B56452A629ECC2 +:10064000F8A2FFF1EF3A1F62BBBEDC6D2EE9485CF9 +:1006500030701EEBFC0B1942C19FA16FCF4D76721B +:100660004E408B5DABD52305B0C591CDB163BBB614 +:10067000916D3EF9E97CC429518F27959825601525 +:10068000D0CC93D37A6FE50322F1DC1C280D92596C +:1006900018D8075D4473DA2D35A931DE53907F7089 +:1006A000A6595737A5EA79B8FDA34067E517E48353 +:1006B000F13BE4C71E044C61E42642FC80E43AB5F9 +:1006C000B14476B6AA8D841BBCB072577782E4A77A +:1006D000BF59A10C5A2A171CA2060B7D930851ED95 +:1006E0000C0FCC7021B7018EB387DAD497CEB251FC +:1006F000CDA0340D3A501046EA2548FBF8F91D20EC +:10070000AEF6EDE8010B688F906FF62975872ECC59 +:10071000952E9B759898B1A38AE4BADBD8A5C375CA +:10072000AC4EBD47F0BD424B98E2F558AFEE276A9C +:10073000E77378A70B1801E8D5DE4D9D27EE0C8CEA +:10074000D5F7873172B28198A4C567FF060D24FCE6 +:100750005987D057E6DBC0F48E3EE1B885EEAD8513 +:1007600045FCCDDCED5718EFB2B8A57715831252D2 +:1007700074B2382CB26974929231D392FAE4B613FF +:10078000ED76C8FADC7B26B7771EAD982E5A15DABF +:1007900005895DBD1CC5B5B7C8A70609CD90B4A82D +:1007A0008FAF21674DA4817345BF36EFBCC99F63EE +:1007B00015DC7CBEE0F0FFF33308E40A5DBBC4E463 +:1007C0008794BA2EB73A1DB39334C2E867C2F23F9A +:1007D0009D262C0B689761ED12367D3B76F21E3D0F +:1007E000DF93E0B444587245E572EFAC98958211FE +:1007F000EAAF9EF6288AFDD6DF14925EEEA61802B6 +:100800004D147B38B4ACA7D54F013B3C322E6DB4B0 +:100810001316066F77994DAAFC9B35DD5EF2D85909 +:10082000EB22CD621832E61D96307DBEEDE61D034B +:10083000D6EECF9EF579119A7433910EFB7973D66B +:10084000FC2C9465469699D9E0F29E81D843DB84CE +:100850002B5FED33FBCF1353CF53D0AE0F391D10A9 +:100860009D04C76A4735C6A53CF80501D440202938 +:10087000C10407B9F8BEF83BCF9BE441B887811BA0 +:10088000FC33A8F444B82A5862F00898A93EEACF8D +:100890004DAFB88F7C85054BEBF62027CC66AD7845 +:1008A000457B3148902044F77C3A8BC33AD186F39C +:1008B000A24EC79B6C5F43C16B0A844D48265E2CD9 +:1008C000A998713086640A8CF526AE69186DC63019 +:1008D000CC448C5EA3A0969AE0DFE48FA18CC9F192 +:1008E0005BB78E0B741B64124F36F5E22D954F6685 +:1008F0009B2CECA4F9B91F3C30F9273052AAE1F245 +:10090000E66AAF52B2B39DA88AA8E3A49E68BF006E +:10091000E7D212C7A70CDBD36F3BD3B9FDC0F338C6 +:1009200065961BC2744357CC6E9BCABF8BA9CB2A5A +:10093000B9F5721B864E222A54A2B8F97F3E08628E +:100940003C3CE730A1D60216DCDF965F5AD8FC9A11 +:1009500033833F8CAF3A0172AAE6B026D224558683 +:1009600020B4B36A267DDA3630D843A65D33D1B5DC +:1009700092149D1A8D947764773B348FE0DDFA47AB +:100980005336F826FFB66CAB0EBA95744D5AB27753 +:1009900042D98D4CD1C8FD5A6F563F4F91577BAE0F +:1009A0008FB157DEFB81E1C371FE77221C91BEF04F +:1009B0003382CF2EF6DC03807AC7126FCEC59E9F9E +:1009C00086000009DDDB3ABB7CD5F29AAF5700B256 +:1009D000C1CA7F49652B6EF0C5963CA2C11A03239C +:1009E00002C0EED3C9931CD833335E0D6E72A2578A +:1009F000F12D1C73BB02F56E2752693F92FA707F8E +:100A00008B91A8FD09D38A233B585827750E774A46 +:100A1000E85B6347C5EBA856F1D3D83CADFCBC6698 +:100A20009A3088F4579E25D28F3952445DEE8B62FE +:100A3000C6271FAAF317EF28272DE924CDB17F4938 +:100A4000883F7D1F1575555DC9C6AC62FCBACCBD2B +:100A5000FB94BC41E8CD112930B56DCD47E5BE0111 +:100A600068C6FAC77A17B8A86FA3DE3091EA22F1F8 +:100A7000EB554C66D6F99D2B9CFBEDF9AF2B334B18 +:100A800030A1C68190CF90AEA8EB13A1B57FF3F152 +:100A90006F5D84214AD5D9D57759B52194D2DD66C9 +:100AA000A808C85BE12FC7CB9BA2D7D0AB8E70D470 +:100AB00044B17492A9DB23B60F98E2BF0E701EE119 +:100AC000E74FF0267996EE0EBD011AF1D80A16D13D +:100AD0006DA07BF5F5AA437B11E5AFF1B1B53BA85D +:100AE000BE6F839988579746883038D9CBAA593436 +:100AF0002DA6BD1EEF126ACBF7639F90A10F2D9715 +:100B00003E6C202F6C70A22246A36D85D02CED5D2B +:100B10007EB78A578915E9389C536E2F5391F0D4CC +:100B2000B5C0ABA7D8CB956D021AC829D855A1700E +:100B3000A5C6FB8775BF6E425F11366A5597517027 +:100B400058EE597C90395B892B81A54609F7232BF8 +:100B500085E2292501B680BEE59B08E55CDAA26D39 +:100B6000DF7B639B82A8B3702E8F51D2652C6918EE +:100B70002892E39C64EBFFB59038EAB6A14DDD9670 +:100B8000737BF3F3B373D8C2073D33D407D47B0927 +:100B90004AB03ED21DF6D4564F2AD03529A0A7C55B +:100BA000A71D0C4600A3C5A9DDB59034FF54ADB216 +:100BB000C3A2B6EE185F474028938428558154FAA3 +:100BC000D0B35D6312DD76F697701E939E1C504A7B +:100BD0007BD1C87E342F5C8804DD8C1184CE1E143A +:100BE000737CB10421EB5D7A6E909CF64D90783465 +:100BF0002860BA4352EBE2873E4EE527214688CF74 +:100C00001FEA9A86BBA72AB4C8A1DCFC342D356C38 +:100C1000E395C71600C30354F2221B0D47A7D40661 +:100C2000BE1F29359ADECA95C169E208345F0413F4 +:100C30004CCE38C69CFDA5E38D5EDFFDC99400CE89 +:100C40001655BA3FF800C76EF0CC8ED2A1CED8EEC2 +:100C5000C74DBF24E39C64B306E631A1E5CD052A68 +:100C6000909E1820BA222D2D76C1826F46021B1548 +:100C7000DBA3B116285A8D4FA540C27354CC44C390 +:100C800000EBFE33550BC7F04B7C856D030024C190 +:100C90008981B748F1F3B2D2C402BC9E90E2CFC0C2 +:100CA0007DA536D977497271201E5F3272F819D945 +:100CB000FED092B11AAFB3F2FF7E8D311DB94A9CBE +:100CC000B753DEBA90AD8E6318B3FFDA802FF2ED22 +:100CD0001E26E5976D20816251E8646B5B54FE1C13 +:100CE000853BA8CDE99701A7332CC38BFE96DD0C7D +:100CF00068E0780D77C8BEDE769AE03188310D293C +:100D0000569676DF7440E35EF102630333D7F7074C +:100D1000B644142227F4CC0CA069E18AB764F651DA +:100D200088673843B52990F063E3C9D9BF98262D69 +:100D3000F137ED564602FC465561CDDD87D1A390D3 +:100D4000E9AE71E3B4FB643A82CB0EF3352ABD44BD +:100D5000ECF4EBA4763DA3228646874B70A82129AC +:100D6000F46AFC7566ECC3366EA97F21BB27C263AB +:100D7000D9F95C3248966AEB1D795D612A0C4F0601 +:100D80002C843F7EB6B809BB89086EEB81DDCDC9E6 +:100D900066580F0751E2C6CCF6D5EF3FE181C21588 +:100DA000BCAFB19B22942D5A0E3DAD41B6EF94A03D +:100DB0000BE38824E259413527022F7A1B356D69F0 +:100DC000DC00EEC09A9BE2DD682210AA023D5801C9 +:100DD000476BDF4EEF3E71779A29C39E10503491D6 +:100DE0001B6E7C730472547A53282C4A00EE413DEA +:100DF0006B159935B8845CE4E92EBD0B03531F4F86 +:100E00009402906F003C3DE63AA9D29C9E0062C9D4 +:100E100093C58AB46C363DA8DDA574C13E3ED8F6B4 +:100E200040F647714CC5FC3863214EBB1870533DEA +:100E300033152F01A79A14C3E4CF9FA24FC9915D28 +:100E4000E9A92704AFD5CB3904C7BB6CFF94BD1209 +:100E5000A74BAD4F0AC13843E4917EF2E4AFAFDC5B +:100E6000B6A0EE73FDB72257CEE323AB993E7817B9 +:100E7000EBF25C90A4132F6778EFD8FA5E9122957D +:100E800017928E94E825674689EE49F9F98B1BE69F +:100E9000FEAA201BAA4B4CF844162383A526503CDF +:100EA00011BC85A96857AC4E794E73B672DA2FA97A +:100EB0007B61125DA798E4271C0589F6226C9635A4 +:100EC0008A3545139DB6F9423A800A9282B35F9201 +:100ED00009546D4C9E79F711019318F818D825AE76 +:100EE00041991C63A3056FA4C1BE12E0B7A81BB54E +:100EF000D8D629F5E4BC6152E2F247AA0DA27D35AD +:100F0000254ABA7A4048D4C142F5EF26B7D55AAB44 +:100F10005BBCA94BF646828058EFCB55BD721EFCD8 +:100F20009B20E8DD336731FA672644F4E1E6F2D826 +:100F3000DAA3ECC20C04F395B26A044098AEA40D97 +:100F4000F82047E79C73D19757669E15E3F6E7C5EF +:100F500056105CF61AA1F22CEA65E2413570EFC832 +:100F600050D41A9BAC586F4B088DBBAB7F74D647DF +:100F7000E7DB194BD57EA22FDE3ABF1B44F846248F +:100F80006AE858DAF37C5F9A1ECE7919199D8B3482 +:100F900000BED98553CC6B3A4EC528139CEB5CA49C +:100FA0009E366C9C0F876955D8E44925F2282BDEC4 +:100FB000AC1EBDE46B6A6C288D6F6F582F901710B4 +:100FC000BBB3BF01258002784368B7B9DFD3D979B5 +:100FD000CA91C359BA58A622624213AFA924314B11 +:100FE0009F1625F095E290434E2C3EF53260763701 +:100FF000A9FD2A271DC48EC1226534242EC9EA1FEB +:101000007201C2D1D67E4CD8D21996666258EAA730 +:101010005970B450173B7CEDB43628272C92A5B6F6 +:101020005CBA2F2915E9EAB695587DA0038307A677 +:10103000B3419ADE71B8D4012A012042AD3485460D +:101040005AFC4BDC9C82CB0C4084224201BA208D9E +:1010500039262425B89C3B07EF19F4E4ED3931D14A +:10106000EFFF3EB1269A57E67B82540DC6F3C54486 +:10107000D44E6E1DCB4690915D80B6B3292E62533F +:1010800024AF0714C1DDA7D7F8A417F3B9AE5F27C3 +:10109000AB8D2120FEDC0031E318C337D873993CB7 +:1010A000CD4936BCEC5C4A1151E9C49AD7DDB7B0E2 +:1010B000189108F50D563102D91474A389377B9223 +:1010C000D9218D149D70466CD0907637FFBBEB15FF +:1010D000D9F7D1ADCB3892947C53F35F945C29E679 +:1010E0004EC1445B6F45B83037C3D21A507A3011C5 +:1010F0005F5A4460F0F76EC3A8602160658F4612A6 +:10110000D93DF1BA66510EC923E00C132713694388 +:10111000E8A12B8515AEDC31F19563CD77C402884B +:101120009754D7CF78DB2308BB8D6249FE09BCA951 +:10113000E4E76B28E701B42E9EC1E2D06C87958F5F +:1011400040A06E9D8140944989C09A8FA384378ABC +:10115000EB0512ED4A761B956D5BC7FC84AC73B64C +:101160002E1DE7260349E04AA1EBF3EADCBAF53B82 +:101170001177CECEB47473024908D9023F87CF7B72 +:1011800090B9611FEC1604A65651E7D81E5680127E +:101190002581DAB71487E86FEA6B25FDE628BE0CD7 +:1011A000D51D2FF1F60A4F6398DAE6545EE2ECF6AD +:1011B000AC2D8A10B13D7CFF1BAC11CE3069300ADA +:1011C0000328E0C6164E951D09E1319637E8AF4970 +:1011D000D9A7A769BAB148C7D4B5FE3F2930ABFA41 +:1011E0006964F53DD5C592F1C0E755FFBEA41D6207 +:1011F00081C028B7AB603C25F8A0280CC35D6D8D7D +:10120000D4B59892CAC6A663B621F81A6CB53F3A0F +:10121000370915C9C2438B8560CF5996468BBC5A96 +:101220002A958FA18619176BEEDF56E4C801DD9B66 +:10123000B9CB5C00717BD4A5754C9D3650F23DA9AD +:101240003352769D79C034FB7AE5E922A6903E566A +:101250001F29402E63C4EA6EF49789E99603266835 +:10126000441ACAFD640222D7B336DF8480BED9F3A4 +:10127000D9D88336B29DF230BE5720B0FCF59A2FF4 +:10128000E43E5CB33F7F5D959181F6B44FE088D832 +:10129000C16398814EE3F318E035574150BC38B72D +:1012A00074F792C14946EDBD19CD5A9CD0FB6756E3 +:1012B000C31F0320EAC7C08B4AE1DC758639DBE235 +:1012C000D5FA38851E7532F424A638591EFC592EDD +:1012D0004D6F8F3C0DF49913FED8D4173D4C26BCAE +:1012E000A5F1653439A5EBB763DE157D068DB543F1 +:1012F000A9FA4B79EE46AD487CA45B4F5B98CF2EA4 +:10130000A8CA4A2705AFA088F341A23A8647DF540E +:10131000DE89F1DE9016001AB2BC59B5C373487A63 +:101320006F4E2D7D9A5BCA49C267925207FD618A52 +:1013300072C1C67330592BA51411E6AB6DFE4D2555 +:10134000E9200C461D208112A3CAF36E4B405DFDBF +:1013500011BC5472D1F1BF90563ADB6DAE01491FFA +:1013600041B10CC2F683B7D6865DEFD806CA453FB9 +:101370007FFD6CE6C7F5C84336C7228688C7525240 +:10138000D4D72365E7796B6FE67F8DF71DAB639745 +:10139000FCB8D44FD3C4EB43DB307603B0BB71341D +:1013A000C609F219AA39D39D0E02EC5C1CDDDD439F +:1013B000D8C5FFD19D4B1F13D60E4B46247AE4BFF0 +:1013C0005EEEBC477ECFA14A507D4ADB65A7660B27 +:1013D0008F477D70327D61D970AAEE96FFF71A2390 +:1013E00040FCA9B7E2D22868EF962B545228AB0BE9 +:1013F0009EBD638A332CF9BCB56ABE12E41D98BC4D +:101400008C7691D8EE3BF49739CFBBA6A353211429 +:10141000DE1068584D1BA4BF9AF01F6C507148E253 +:1014200060BC0BF8D6BB571EE3C1A9C4FDE0AB718D +:10143000CC42FC0AFEDC4B406E9575FE43EC93807B +:1014400066792DD761B08F1EE0C9FE23BC6F4E7741 +:1014500001B17C4C74A596927CD724399E91ECD432 +:101460005B235BD8EABBE449E03ACF0EF4B5C55440 +:10147000CED7F66A37587B599C0677926CB013DF4B +:10148000537381E8A39DB929B14765778AE44C037A +:10149000D9BAEA2C48B196A6BA6176A88E3A40E944 +:1014A00046A2A629FB3F4F41525855D145601A42EA +:1014B00066A17BF507BE1ABBF8EECCDDCE9285693E +:1014C0009B75B39C3F86F37737A8576E4B9813CB29 +:1014D000D6F940F8DA06EFFBB061AF0D8D6B8E8B5D +:1014E00085ADB4D4177CD389C9150EDF9D61714CCD +:1014F000EBF8D06529732D8EC97ACBC293EBE8CF78 +:101500002DB4D50AAACBA5D423E4EFAE75358D7AD8 +:10151000E116013D7B999FFB611625A6BED60659B3 +:10152000CCD3E64CCD0CAAB769E2E9BDA00B833C55 +:10153000CA2B6F34D92118D5FEA40F0017DB809079 +:10154000924F3FB003594A4B5D7B1FC7D2D7B79A22 +:101550006779DDC2F07246002C3DACACF124109DE1 +:101560007F0EDEC15CB7B6F7948051B6A5A9F1A392 +:10157000C1C911DE17AD3A7461EEB321B9BD0B9F3D +:10158000854E6086DE947BF1857E6E6CEAC9727B47 +:10159000A72DA761404B4E631F48538EF2519B937A +:1015A000C9E33D4E4A47D85FECA9AD370C573648E2 +:1015B000FFF37C098C8EF72EEEA3E86B4724E1C382 +:1015C000A9F009D55BC7CEEDB76657DA68C2A605A4 +:1015D000B38B9B483A587BE7BD2036C67A9C137084 +:1015E00078EAFF277F5B5CBCB9E16070407FEC1458 +:1015F00092AAE6A9575C0C1847DE2512E8CBCF8DDE +:101600009ABFDCD2C149D39AAA3A169C54680D36C7 +:10161000DE84795D91AC53992D163270A2355CEF62 +:101620001C6156D41B5684476C646B05B9F1FDFEF2 +:10163000B87A1CE7C5CE424D0244C7864011237AD2 +:1016400092ED734F1D2AF4B3200883B84CC9F3D12F +:1016500071B3E3B0ADC9824BC0D09DD67867926EAE +:1016600053439C9462FE38609CC19D5240E3202508 +:10167000EA6A31B0B67322114BE2A72BE6BF523AA9 +:10168000AA13813A71725C1D0D3B9B300CB8038D1F +:101690006769AE2CCBF3B6ABC8C40B09B4A6FCC1CA +:1016A000E04A3FDEC0033930EB6CBD30EBBE665024 +:1016B000F5C483385BC7E995638C7C38A409CAA755 +:1016C000150B85087A5FFE0026A65C1E008B497C00 +:1016D0007951F66CC5822C30399000B09EE35C9550 +:1016E0004287C4DC67FAF4C333428706AF44A5ECF3 +:1016F0009515DEF2B3DAA0F5FC5E4663D896F604E3 +:101700006DABBC7BFAB4CE41E57A9248084E4DAE43 +:10171000FF275A3A0086B34AAB526D8DC4EA0EB029 +:10172000A29EE6EA501BD079E52796C8A879925C7C +:101730004F1C133D81FC780614808BD30283AF418C +:1017400059D90199FE53D55250C56236445AD4EC4A +:101750003073BA5955DD2BFF9667DA32F1C60D307A +:10176000F881C1634CA3FD2C6A49FEE71B1E5E8C09 +:10177000B0A10F06B3719093C1DBBFE61C78FC0BE0 +:10178000C09913AB44388D849745C42CAF74C6966A +:101790006C8B7290055BAC1F5B962DA2EB55EF52E4 +:1017A0004E25C9316A630957BA869697179CD45952 +:1017B000A313F4A22F78E52A102454884DB53619C6 +:1017C000E6ECFD248DDDD6A41623D5FAECB0323B31 +:1017D00099A4F788BBAF7572CB25F8BA03D4F492FD +:1017E000D82D2AD01BE78511FE092CF465FFA2DE57 +:1017F000AEABEB7B852608CAFDEA915502A26F1BB2 +:10180000EDAB94C72ED2EC0EA4DFB2ED6426C90076 +:1018100067CB64980DE742587788ECC617A7F9BEE6 +:1018200014B002852150CD4F6D49F5C81F234A0BD6 +:10183000FDF59318E525BD3CA433EC6E4D8BC9CD69 +:1018400005F03CAA6FAB73BD1077BC342453E57F21 +:10185000BCFC0F979C4C3FA5F02B14EC0B9C6A57DB +:101860003BA60E88612C0B193751EF14FEF2FE993E +:101870008961CDC5D1661EF2B03EB59CC67A33757E +:10188000031F0715D1A8D746A5E4ED68899030F06D +:101890008A2284914F6F7D6AE9A150A8CE8B6AF2AB +:1018A00001A583E88267F3500BCACBC93AD9B3BE0E +:1018B00011A7B8324E0F27B30099E0789E81330EFE +:1018C000F964785F928B132B487FF9A3B5CD7751DC +:1018D000E961578464FEB4CDC44186DBB36BF5E4A3 +:1018E0007705C904CF3BBD8F137BCEA9048D3AA4E5 +:1018F0004F807E3075FCBE4D67BC1DCE2B1CA002F8 +:1019000022C65E6D365D54C375B910F805B87CA863 +:1019100020A069F180D20931608042435F10ED5F01 +:10192000F8C9ECED7AE5B0C395E4021E3B1D0C65E9 +:10193000B79A576F8B9223EB0137557C75F8ECB152 +:10194000B8A9ECE4E34165F5157C225BD55F414C19 +:1019500091857325B06B206AA8637E78ECA58670AC +:1019600014B903D520687EB020AFF0EF19CB6BB669 +:10197000E89994369FF1C9F81CF8CCF3F9A749EE21 +:1019800013BEDE5199C39FA4222E16A05B38D30D3F +:10199000B4BAC4E646F93A889124095F45C8687C20 +:1019A0009DCA275D3E72B069B1B39549377EF7BED7 +:1019B000424724876D6BC9ED01A1661FD0EA4774C9 +:1019C0000E7DF1CB07D9544D6A5F0AB24A842ED5F9 +:1019D000D74F053E6A3316418426EF3F65F3A5567F +:1019E000448BB61B14588AC67232B0477ED1163D5E +:1019F000F799281E5F667738F1F5A88C34772CEDBF +:101A0000E01F76FCEE0F7E86E14D92F4FF2742A1A7 +:101A1000062D4E031809A1429918896BC08703F758 +:101A2000D4E4C31B5C6878DB19EC88A99C204EA029 +:101A30002DFF1324584DF6D7E540C5E185AC0CEEDB +:101A4000F1C5F78F01988F4179755DC79A3CC54CF8 +:101A50005FE1162D38FC1459295770C7A5D6E967E0 +:101A6000B1B84358ED40D89FEB1F69AAE30285FE49 +:101A7000E503FF763AAC22A1B5D37BDBD6272DF167 +:101A800031003757CBA1E835431B4F0827E04EF70D +:101A90006F1C82B1F6367DD341BFA1AFA9B8986063 +:101AA000B4D139ED819F70594E4D3BA5C73F9CBCC9 +:101AB0006BAE4614857499487B39AF07573127C5FB +:101AC000ECCC7683E88EC96160D95F47D64EB1020F +:101AD000B2BD52BAB0F69744F5CA817076A4C2304E +:101AE000A5FB4993F66FFC89AA313AA4181D03009F +:101AF000B0A345ED0BCF21A861662C537F0497FF5F +:101B000085F0BC4F61CA4A4FE5AF7F036B306EA4CE +:101B100083FD8F3199F9744B53824ED4F9FA0F102B +:101B20006C6A89D5437687532175E1087133174A6A +:101B30009D0F8F34E015755EF7E129AB9FF8AA3849 +:101B4000CAD5F26059368F14CF2D62411B6B61A646 +:101B5000D5777E16E0789861875164A67888133B24 +:101B600035CBB206521B1358EDA5E875FA26084C82 +:101B7000655516E7D956D2684E9417A4A121AD1C1D +:101B8000D6F24CD0F2EC67463C02C807601BDA1C68 +:101B9000EC62D9363F70463CCEC4F06B598C1A6566 +:101BA0008C65DA6D501BE377BC7DC8E5D68D22339A +:101BB000E1791EA879A511C765C676BE0C8C4C2BA1 +:101BC000A79A97FF43B565FFFA58B5233EA14E0982 +:101BD0002EE970FDA6B3F2B76EB6E8008B24199C0F +:101BE00035E1EFEDB83070EFF2FD85BBC0AD57AD1C +:101BF0008EFE4DF9333CDA66A273CC0D47F42AD938 +:101C000090F9FBFBEE665A0C707AC08942F0C91A53 +:101C1000304FE687403F0F004E11BED4004A81CCC2 +:101C20006CA87B3471BCEE981C61B23D41A615F4E2 +:101C3000CF6AE4A1C64FE4757E2503DA0E5A3E8CC6 +:101C4000ABD44B7AD4F64C0C9314A40CBA46C035E2 +:101C5000E89DEDEBFB65A42EF5B941BFFDEA8A676F +:101C600059D3FA2CBDEDCAFC3185B6F5FE0CDD3A30 +:101C7000833950B9381FD8727CAEFE2148B5A55AB9 +:101C80009FEE098CB9FA0318619C9211606B497D33 +:101C900069E0EBB885EE46B009462453EF6CABB073 +:101CA0005F51B2AD685A5F288207AD50C16B9C1E70 +:101CB000B2D5BC8E70323C9443D2EC80FC14449874 +:101CC000DAE321CB92305E3B966A3D4A827D6BDA45 +:101CD000AD63FCD73792D7DABDC24FC9FA6F6DD06A +:101CE000E77AC2773DF558905AF680A3EB460F1974 +:101CF000ED82B02B8DABB04192DB20D7D98240EE84 +:101D00005AC401A8FE2F6E2634701AAF0E541A5C06 +:101D1000E70A6C0D76CC6729F23DBBCE8A49479025 +:101D20006A7BD4CE0A0AA5E788DE12F5D64F080EE4 +:101D3000C7B45C08C2CB62B8071FB318A437B6C8D3 +:101D40003D751CC42F20F7827E0B4D11328F5EB87B +:101D50009B55BA0198837D6D89A416AD6A8989DB8C +:101D6000467E063252B243BB6BEA6C09B15671D261 +:101D7000B458FCB40D1FBDE85C17965C3F236B1193 +:101D800095CA6CB9DD2C1F641941771C44189E75E7 +:101D900055D7582A6544D6FCBAE8BE4272BD9BA40A +:101DA0003C94D4A8272B8379C31EF0BC70032C6904 +:101DB000F4FCAAD60DFD8B5F54D6B8ED5D7B742A7A +:101DC0009813F361582823DBF2C7008C7295C04842 +:101DD000A31E1081ED04FF10E8F5FD136C10AA4E50 +:101DE0003329E8CDD88D4BA71D200A49A38A22FCB0 +:101DF000DB6345E3CBD763C13181950B5C8CFCC3BE +:101E000084A64396467D8D8198731C7A5115FA619C +:101E10001B5E0BDD505FD11123F9EFA4F3D81F79BE +:101E2000CDE1D8884B53E08258B06B9196F7E8EB40 +:101E30007B1E50DAAC7D12AA73A8242DC7FACCA160 +:101E40000A49F2B67F1F4D43883DCD15263E32AC80 +:101E50002DF52D8C43882B478560382BC43CB31758 +:101E60008374F4C30262E43CAA8C45701209DF2536 +:101E7000D1B3899B35F800A3E723194F36FF8B8D2B +:101E80009C5F294BDDB01C0E1D9E0341BC6DE9F823 +:101E90006AC10E726D7DB234F90CEE54CC106D60D7 +:101EA0008C77722EDA7D58D0261BAD25EB644CE979 +:101EB0008143A83D1C7B140C3BDDF7F90B619F525D +:101EC0009592223EF2D5EFE37FAAE5B1DBF5229CA5 +:101ED000C8B589FDCB70A5466C47402B6052AA3C23 +:101EE000635BC4DF7C3B138FD7AAC603610CB4B518 +:101EF000B0784C6440B7A5908C8DEB465ED2951CB3 +:101F00000AFF85BA768A53D6D01715C16045A0A9B5 +:101F10005B68D89906AC14E3FE86AA5BEE6D4F941D +:101F20007650D08D72342FB59508D32042BD4335FD +:101F300022B0EC8EA5DC37C7E311D250165D7E7E51 +:101F40003E54DA7A3B6341D9EE8C092F52707411FA +:101F50007B506D36AB495301E34F9D1D4161901598 +:101F6000C6C9698F391FE09CA9686D629705D7DDE6 +:101F70002D952591B8AF1A156D65F151A141BCB8E9 +:101F800027A7CA4D35D1879603F49EAC4209E80BCA +:101F9000E742988E2F065B89C8991B25E6B04C2F27 +:101FA0000D3D29E1551027FD23E0C4540744D48D8D +:101FB0001FC87BBA21C9308277304F3AFE5F954700 +:101FC0007AE6EF37335219017DCC26EAF6D94689F5 +:101FD0007B9FA43597674E3200EF15A0D859FA15AC +:101FE000160F8FB1E3AD872A03C20086E7034F5E69 +:101FF000DC17D2EF71694CBEB8F13CC4E0425B28FB +:10200000B940008209B166D9555DF7E4EF05DD26D8 +:10201000775ED94E4684E854AD75D52DBD9AFDCA7C +:1020200062C763CCF6F1C459469E209B586CEA53B4 +:10203000D8A98EC9D7B51A5719AF51E040F5832BEF +:102040007556FC3A5E4CA3F1734C8431ABECC75E21 +:102050009D92A546AA6AFF0BC9E22605F14D9DBADD +:102060005804E1A98EA671F772E23D681F29531347 +:1020700036F7AA9693B50CEA1BAE37A88D8A951849 +:10208000ACC417B671FF4FC518EE3898A35F6E87C2 +:10209000390C6BD30B4122BD97E093A6651861D331 +:1020A0002F0636AD8939B17950BF6A8F4477A1BA0E +:1020B0007CC8909480E7D4AE9870F70CF255AE25AA +:1020C000AC7A091317967FBD6230113FCCB95277B5 +:1020D000B11DAF38E71E886AC13FFE789250BEBF7F +:1020E00049BEFDBBDC2779022CE0584A3BB7150DF1 +:1020F0007D39BC98C0778646303B74B0A2F5832DFD +:1021000007A51BB11508C1C022EF01C480B46EC978 +:1021100010D70ED15BA8A7D5107FD756069FAB74FA +:102120007D3B49CB8CD0D9DFC75B39199AA3DD96AB +:1021300000178BE62A6DD3BAF67E690350ADAE1F49 +:1021400090612E710A446D8A3D71DA164FCA30D8FB +:10215000CE4E27A8BD96C0A609A606331DD64AAF07 +:102160002981DDE53393A4C288F8FC98F120DE2DA7 +:10217000935FD960ED783A0139108A5E7DF3CA0623 +:10218000F968F23FBE4CFD96D2F0F21BA5AC8E98DA +:10219000A0D48FAE2DDE68B2316C084E3376FD2EA2 +:1021A000323513025C398364E9415F7EA17D66802C +:1021B000C29FC5ED96A88CDF0F44B55D43DAE5A458 +:1021C0005B75D8FCCE76294493547985649E80A5AE +:1021D0009B2BAA694943ED6ED8F8381982C0EA5A98 +:1021E00028098E6D8CAF23DC71BA12692A7331E62F +:1021F00061DD8F265232EE43FBA0A982F9AEDD48A5 +:10220000D9FE4EA6BA87DD271B3D2AE64568CD8953 +:102210002F2A4F1ECB215763123D25287BE9A201AF +:10222000CDFE28E3663E43752756278B270E238471 +:102230005F5E23A514746CF01D3FDBB0D71295FBD5 +:102240007367DED3D7CA5912AB024925A5BC66F322 +:1022500054C47A1241D853FBA001A06AF425ED14AE +:10226000FFC1E43B89069681A1ED329C7D27AEA992 +:10227000CB981FC870DE20532164414A1076D828BD +:1022800042E8D89239D7E950551215CFED9CF7DDC9 +:10229000BB5E56D58F75F82B1FFF1B4F52ED3B854C +:1022A00064289890EA0F280FFA06629A4CFBFEF118 +:1022B000DCCAFECA8A1A9CD4D206EDC26FD5CCEE17 +:1022C0001E0F949F595642F2CF9F8EF9F034F51BA2 +:1022D000CF7881E7E57A8796C74679FC8F4B77D828 +:1022E000958C46F560A2E4026DF077CD468EAD0385 +:1022F000E3F1F6325FC399116712A9974FB50A2E21 +:10230000EB9A3E942A20D61A26DB4AD4B742E289B9 +:10231000F3725087F32DD29FFB41509953BB55A8C0 +:10232000B526ED3D5E19BDEEFF35C0E8562202959B +:10233000A8F553BE50CE7D0EC70CF2AEEDABE69DB8 +:10234000728430977FEBC05A257ACD90FF84DD717F +:1023500018A37A7A5939BB5C9CA46C95CA3AF15E91 +:102360004A199EF121DD96B09F83FED3CFF7AB2EA5 +:10237000982F395C1BAE42D5D6C65ADDEC997B75D9 +:10238000A1DAD31B350E2C84D089143974CBBBEC65 +:10239000256BECE8CBFDBA47CCDC70BF4D8EBAE7BD +:1023A000A6FD7021E9CD933D93504592FB8ABF83F2 +:1023B000C50C4DDF0E75A8D89C81C8EB290DAC80EB +:1023C000914112EF29EF92920C64A5B1E7A40A168D +:1023D000419BC8E0C6129B1534B9C9334834512219 +:1023E0005631E713F3E7C3A21C5287248A9A8BD095 +:1023F0003E0E8B7B3863405C315B1A7153146BC6A5 +:10240000A5452F4231DDDC8AB5018920751862AE01 +:10241000DFDF22632A12FF438C23ABD45ECCCDDBFB +:10242000017BAA4BA4FDB930C7CC879A5448404DD4 +:1024300053CC58FDC53450FC5F59866B01424B3A72 +:1024400034E9069246379B9D3DF2FA6091808253B3 +:10245000042B5291B455E7175B68E54EC6E1212E77 +:1024600098C3C0575E748D408D2CB0FCCE4568E19A +:102470006265D5B1B53AEDE391AFA88467A5AC8BA1 +:102480001C22306AD166257F5B47E06E6FBC3D8EB3 +:1024900050D8EB7241AF3BA7A1DEABED781A5509DE +:1024A000C164E8D06837C5E2B2F38292CD70829EF3 +:1024B00044E1BF467C9C44D1E01FEFDF1E55599696 +:1024C00024D58BB607046C1BB71407959249DD869B +:1024D0003DDFD09AB75E9088476EFC51A16E6110C7 +:1024E00073C8C7566ABD5B988F02626F7CEE6095B9 +:1024F00037BDD7CB23B3E8B142A9103DCC40342D32 +:1025000000C5B0CA6468CD0B631D811C59EA52EC4A +:10251000C3ECBDA540CF58B0C79CE758940A6BB533 +:1025200006831D101B42EBD57C7B8551417B04311A +:10253000BD0BC482C3E271978B6ACA645BECCB5457 +:1025400056E52D48DD68F458BCDD7AC0403B1C865A +:10255000FABE706A791C64CC174EC77E31FC58E114 +:102560002DCEE135E9351C738E264234F203D95D58 +:10257000CC88B32B733265338D9190720DEA977CC2 +:102580007B9D57DC6789F27E2CC27F449448D35CE4 +:10259000C707C9CD5036663048A5FB2F1ABBFC8B48 +:1025A0005C4D20509C5352A789D221FD327F279049 +:1025B0002473973C9BCCE19649E6E45E26E571885E +:1025C00011053156B3711E2CF4D81740F31137A101 +:1025D00076A5D68C3DB453C4829F734D716EB2E71D +:1025E000106B14C7283CAF53B4E0A8B9F1CD229BBF +:1025F000B55A8340D44C976225F71FF80B4995B51F +:1026000020870D29F2C704E8F2990F654ACDA19100 +:10261000A0C24F59820400181451F0D4C30393FF91 +:1026200070C28AA17F14ECD07D10C1E798DA74D70C +:102630000A9359F929F055DE7888B4F55EF27EEEFA +:102640009089F572BE7A1E90D0776C5314E3B198DE +:10265000B11903E3B741308359A5705BECC9628DB2 +:10266000DB316EBC5E619CC17EAD13F134CF44D1D1 +:102670007A7E2C0350CC756DC6F7E1B4CA312F05B4 +:102680004ABF1DD8B8CF1E47D601E51AB760E8EBA0 +:10269000B9EF195A7273035327A6E52D3390FEE65E +:1026A000A58A3D224B2BD42A38D8AFF9E3D16D75DA +:1026B000B7E8EFD36B5EFEA4603F4BDB79FB934141 +:1026C0006C3B443B17321125AE27AACEC1E7243616 +:1026D00046C09D116E266FD1420058C5CBE9C93264 +:1026E000B5A34145787D5188C15922C4177918296D +:1026F000E6CC7146F6F9E8FFD15E4C0AA938B0364F +:1027000002CEB2265FD49FD670C8E3A9827A8DD05C +:10271000C8ABA2553DA8C71E334D3262621FFE37BB +:10272000E56668C83B993E67F745C8CB42965C7B37 +:10273000ACFD1155FA30CFFBCAC3E16D4015CF6B2C +:10274000FD897709C15025A9F9551110BAA8C25CB5 +:102750009B87AA7F0CFA2F169D1402A8F2FF405502 +:1027600013E685CCC302B9DD7ADA714183A38DA467 +:10277000F16D3F72FA1569F67562E20498265A53B4 +:10278000018289EB307D41A0F32EFDE3976F9A9D86 +:10279000EDB42A4AB5100B7FD48EDCF882884D9CAC +:1027A0007E6B3E63EE86757FCC587964CB4E77E0C6 +:1027B000F1A61FA7D08D16D10B9BFE88949EE01228 +:1027C00018AD0B65864831CCE22DD8987BA5EA2E52 +:1027D000A79919A609509222B2F1FE4DAEF74A14FC +:1027E00044C698421FD3999A4371F7E182338DBF53 +:1027F000DD8AA96DB250E0C05EED50819B127AAFC8 +:1028000025104BF627C2D3B67D02AFA1A8BA07DCCC +:102810000D16AEE642C0B40A1E81CD75355E369304 +:10282000F2063A8C4E78E3DD84C4C1E648B55C23F9 +:1028300055511DC8B0649E9803ABAFBFE78379C301 +:102840005A9FD69E47FE9B206A566F7AA8C6087983 +:1028500023BE11E74FF7AA9C7633415EBAAF450815 +:102860008412ED68BE20E7735742148F6798BCDB73 +:102870008E658A79641ED6CFD82D33FCE7E41049E3 +:10288000274202863BD46B29E545ED67F24A697A17 +:1028900021614349A1C631DA80667ED4D49E414D80 +:1028A000FBB36586CA432EEBD24DDED2A6AD79A826 +:1028B0006C8022B53F2A5872F28CFE26E3C014C504 +:1028C0007A954FDCD55C608E694FDB5ADD042EDAD9 +:1028D000F155EEA8192C49CBAEB333C9F9BE1F0F81 +:1028E0001AF11E34F82A1CF049729184B1FCE53AC1 +:1028F000CDBF7A5FDE30AA2D0F9F94ED7E9A2C39E2 +:102900008CA5D7C2BB271546839563086C81F55407 +:102910002276A7A873EA700DA0D5338B2D1E83D223 +:1029200075236C05C4B9D4BE3314E17DDEA93574BA +:10293000EA790AD66F90F5A6F7ACFD20DCFDE91C1C +:10294000287616185287068E74635856803B54A911 +:102950003E2C0E971CC025EF7A805C37A57B3798FC +:102960005CCB74F22845C6A8F284C3545F033FA130 +:10297000F67C40D6780D53B2EEFD90EA73071AB399 +:10298000203CC0E02AA275D9D4812433D4762B937D +:1029900059572B1F093427C386A7F4912AB4F98B02 +:1029A0007A8005A76581DD8F76AB1C802C49F61BEC +:1029B000FB7D0069BBA0461B6981C7745F06AA92B4 +:1029C0009E38F0308146B92C234DB08AFBBD16C32A +:1029D0009D2AC2AC6897853D677D3464A0BCD662F1 +:1029E0002ECEC3DA1C7C45D7FBAEEF7580BFAFEBB4 +:1029F00064CB6E4638AB8B43DDE4FAEFB1D3F0CF56 +:102A00002D589276923C260B7EEEA75F63F5F0443C +:102A10009B3589EBFA35883AA1D67A1696BBB70C66 +:102A20008877A3BD1936080D4A1931733F2EE30686 +:102A3000CABD24CA0ECCCFE8B50FC047A88981CA49 +:102A4000CBB2E4537FD3005B913D33C749AAF9630E +:102A5000A3BE88EE40AC17164F1335DB27F0F94EB6 +:102A6000197F1F7693588205E09C45F8E949811546 +:102A7000365DEDA13702B0FB1B6F3E96543D914C85 +:102A80008CBF1C4F2F6FCF4D55C962B210328E3A9A +:102A900004781E90BE8F5242EE8D0CCAD76C211066 +:102AA0006438CD8EE4BFC933279AF4B32D47FBE9D0 +:102AB000D996884762A51C728B18092FD435260930 +:102AC000A92360DB65590493B1558B6BB887074E1A +:102AD0003CEFCDF077B7E6B1B7018F241D7B78B21C +:102AE000A81642C8412205E1F90BC52CC0DAB2BDD7 +:102AF0002EC687FA45E9CC816EE50D6F125FC4A939 +:102B0000098A7A96DC2E851E0D52B4296AB33C12CE +:102B1000FABFAE5D1FF6441320E7154720D1B04F32 +:102B2000A114731FA3638ADEDDB953C06721CAC134 +:102B3000336FC2D4E29BF1C661A208DC0631198C66 +:102B4000027CEC675067A494D7F17A5F5754809A5F +:102B50004A1A47C92DE8961877ED13E7C584A0AF48 +:102B6000AC292F26A8487D0817448930ECAE2929C6 +:102B70001615AD8A248026CB4EF6A486172D49B3B0 +:102B80003C2A62512520513360D8E3820C521D4506 +:102B90005760E47AAB156F846CAF197B0DB4386F56 +:102BA000CC66C8AD90EA402AB08BFD18FF7CD39F5D +:102BB0008F7AC6F09CD0C3E52D9FA55E792189BC94 +:102BC00089EBE10761586629B0EB7EB1504D52FFA9 +:102BD00046BB2DDD4FB9363474DF4DA53451E85274 +:102BE00007C854598C02717DC96431919F95F9428F +:102BF000CFA067BCDEE2F12E57488775C0B5D6EA94 +:102C0000A7D41616D40D67304E6C02D0271E5C2850 +:102C1000D103F8A2899FD7B3143913420919B81BFD +:102C2000E78BCDDF43374DFF46CFB0C4D8FF6D07EC +:102C300001DB1870842C0E4FFB172FD5C3C31FCB9D +:102C40003FA48B537A89ED8E4F0D2E7746640F2566 +:102C500086BF1579D8893331C02DBD4ACEB88A0BCD +:102C60008B5BB1D465BFDC5D6147EF24B07241D2AC +:102C70005AF27F6C4E42D7EE03E7BC8E6713A7B0C3 +:102C8000AFA8D2114C27C0D238381A72A1FAAF1DA2 +:102C9000791D89EB675CCA2903B6E14BDC0198E535 +:102CA000B589922F3698606BD612657DA56FA0C648 +:102CB000E0B212DBC494E76318EA0CD82A17059532 +:102CC000717169B51C468A402180F2948F6ACEAE3C +:102CD000304D384A5E0AF82EBC2C492399825C2676 +:102CE00042F77AB22034AB19795F67929821F3E604 +:102CF000DA54EF7B3CEB75E33B0FF62FB3555E03E5 +:102D000056E9AB7D9B98EBF825613B66BD90CAFF09 +:102D100072B8FBCADE809EA378B0D3114B4623FD68 +:102D20001805E060E890D92F424073193613DDB4DE +:102D30008FFB3B3C0DFC423721AEF3E9D35A3F5E9B +:102D4000936A09B787ECBD2183334052A166BC3337 +:102D5000A453E9CDB89C039ABA2EB581FEC15C9507 +:102D6000F5770B11DE51151D475BBF211048D220AE +:102D7000EDE5A9649D553BEC9DD7D67BE826CBE0DD +:102D80001547FD80A3518930D85B3E64973D5E2393 +:102D900071A25BDDD67C18F6D68AF7C657AF74F2FF +:102DA000C4235B780D0BEC92861F2E0BADC080F414 +:102DB000B842B958FCE7A47DE8F5A34397E0DACA26 +:102DC000B8BDE6FC0DAFC51C04C05D3B4C326E02C5 +:102DD000124EE1FB8EDB7A4510FE15C12FD9A353AD +:102DE000C33D0D83F85B48AA090BD55A316405EB46 +:102DF000FACD429942C8CDF2F43CF30D86AFDA6EBB +:102E00009626209692DB185A10F38BF82DBB5CA403 +:102E1000D2D6CF82D860DA47A4B6BB7B6ECCEA8A22 +:102E20008A0A095C0751DC4B80327078CBB135E6F9 +:102E30001574C073A4ABFCE916117D1B8C8A772C2A +:102E4000DDEAA64322EDE9CC5B01EE674EF8E95ED0 +:102E500028A4D9ECFA26B81FEA955B45A7961996DF +:102E600083FF78ED5F00F36D21A1E190B31E116245 +:102E7000C31F1F651259D6C763957CF93B63D612F1 +:102E8000A60490668669253611479B29F4CF6AC34C +:102E9000CB513600E03EBDB368161F543DDCE9530C +:102EA0003C90C156F2A7FD1BE95FB75B65CD71CCC5 +:102EB0009D6DD63F5220285DFB6F07FABDC2797524 +:102EC0009D2E33E9275D6132ED8B55D6E63D7B2B98 +:102ED0004AAF84CC0396208418DFA49771531B2239 +:102EE0006B9A75A3FF8EDE5F61C350F5B14E33411F +:102EF0005FCACEA2386873DE8A145CEC95F921357E +:102F0000858ABC7253BD4FED97505611EF76ADB325 +:102F100056F56391D249C14639AE40506309A2A12A +:102F20005D6EE49C651782E28F9DE6AF63B5704AE3 +:102F3000C8EEAB5A0417286009255A08FA70586180 +:102F4000035F8B23BA3159C9F0FEE73BF7067F10C8 +:102F5000A23635DE68F29EFD137A204D3DB37B81AB +:102F60001A54BC98CF6CB58AC29C11F36E89C7CA3B +:102F70002244C8CB46E5EC2BE3EB20D08620250B82 +:102F80004B8A0C80F187AA828F7DF37DEB36B4E803 +:102F9000DC61A62E8CE66B199860E1AB3A56B60858 +:102FA00025B6BE254CF471023A30D80FB495A02452 +:102FB000063987A5D58D882C024E00635B98610881 +:102FC0000BEC17865B0D091DDC9A7B4AD524244146 +:102FD00002EB684259B9502B111B2C021FDB5B8698 +:102FE000B877D7DAF5EC30F39D08F16326DBDF79AB +:102FF000F5AB8A1B11D6E64D4A2D90D1A652105141 +:10300000AF342664978234892D49E6565F320B34FB +:10301000FE107EF6943E7B5ECB6910C4C33490E311 +:10302000F2BC5102B0C37B2668A596E458D5BEE435 +:10303000A164392AA72E472C2F459ECC354DE5E5B6 +:10304000A2CD9AC533C662B9F1CC42F94B056626CA +:10305000EAD675386E6AA9559B176E68173B841AB5 +:10306000C1A9DAF5510C3C9274F12431DCBD85BA6A +:103070008CF68BC0039F59D685F5962AD69E527C36 +:1030800091B30C7BD0EA4DBC6DA671D71279C9B84B +:1030900044138A45A3CA590944D3815FBB3403EF63 +:1030A000F2547DAD73AFE24662303955CA8B197662 +:1030B0001321764075275C93EECD9EBB503ECCCC61 +:1030C0003B54A9A4B5B592FBCC8C9F4D2692CE6003 +:1030D0008A8C53467D48D0BAC2B5BCDF7A3945F7F1 +:1030E000702FAA6299C4D2E922F2C70A1815E9B76B +:1030F0008DFD29CCFFCB1AF4A9A89E335FEE76F4A0 +:103100003130302C1653F9CDD7AA61E6B7A5117727 +:103110008CD5AE7D8AE5B208A214456D05C7055B66 +:103120009972D0F11660C93DF9BC316C4DE18DDD6D +:103130003E1576C0DB87E4ECB286E3EDA41E1118E1 +:1031400003F6A926E21318129768EB18C850839764 +:1031500069F192F3DB008D3662BF84F3804518EE8F +:10316000B53460A3CCE1775941FE39A2EE8B6F7381 +:103170000D824CD493B904A005595520B3A92AEF68 +:103180006E0D6BB436DF57E26081F9B57D5751C8DB +:10319000306F8DC1093CE6B9461EB7E52759194184 +:1031A0000F01E7D79DD39418C1D75AD3AB34EA6F38 +:1031B0002E6CE0C069B5D2EB64FECE4DE7C7CF7B85 +:1031C0003E6865BA38136260FC49466CCCF03CC37B +:1031D000F392FCDBC4412388B045AA2FC5F5929039 +:1031E0007D757892318950DA913EF05B4FD7AB8A8A +:1031F0000CE25C054303D8675771DCF10F14F2B49D +:103200003DFCE2209F239D5AA5521613ECB5107B7E +:1032100045DCA16D4B05DBCEEC653A85DB64407D7A +:1032200087C0E89519CCA1F6F8299786463B11622C +:10323000A6B3AFA38E242C53981F7BFE2E20962876 +:1032400022F0DC01A26BD5C447DEF7C3F0E5905E47 +:103250008EFCA95C3E7C1FA45FF7CE0BE3A6E18544 +:10326000D5F16BC742C2230F32DBA8014C92D56166 +:10327000AA5CA73E9BBFCD1C2B6566D97DCBD70929 +:10328000E5BCB71024236924A6E5FA204827CD2CF5 +:103290009DC266D0CCE5997E1E481D28CAA206F5BF +:1032A000C4CA9E1D53DD3FCC95FA547371B6B90262 +:1032B000E86C9E1A654391C92EB634500A45E5550F +:1032C000679C39B8CB8A0A88C81A3C4BA26A3087F7 +:1032D0009419293359D924B6ABC184D078609F3B67 +:1032E000B9C8AD0C61ED250A8F9C40E4C1235E1680 +:1032F000F9837AA79A49E35E0EA22614A7F3A7E101 +:1033000025624E4F182C6DFDB526D532F37F0B3755 +:1033100085D44988F8788B91D494912D7C1C8E901B +:10332000A88AD0638B0E84D109BA3DB04DF8E35A18 +:10333000F54A3AD24A5CC213787065E6FC083A381E +:103340008E0726FF1995F92202F81ED06E77782D88 +:103350006E4E42B80CADEA5CA49218B7C678321F24 +:103360009DCA131945FD5D80444F757DE56DD85AA2 +:1033700036C2C11E2F0A6866CE6C28CA55443AF57B +:103380009B8FE12972F606D0B1625A6AAAAEF9584B +:1033900076CE24D46161C4FC12816319DD963B832F +:1033A0000F0A87D33F2B6579653B706EF2A6BBC2CF +:1033B000B55F89E6160A05CC5CB6C88A6AB6CA3A11 +:1033C00000BAE8769740C344E25EE287E8F7E0FAA5 +:1033D00029DE91302A16FA1D84B35BB9EE6BD0C199 +:1033E00034C4DAFB041336CFCF1C2B5613B9C0C03C +:1033F000D756CA325FFB6373D193607058E2B861ED +:10340000DE0665063CCE7F8CCC5FC1717A0B2181D4 +:1034100033F8B5D6F84DFFAE3279F7A0DD2C1AD8C7 +:103420005EA322E865672E070F6FCCF8533EE9FADA +:103430009D8FD56DF867EDD532AAFFFD1B6F2E9CD1 +:10344000B1B5DC9E96DE45B721DB31A64604517648 +:10345000C8E34E28EC97737E8E50D1B7B7622C66C6 +:10346000C04F8C9AD69E80C9A5175C34FFC6D8CEB3 +:10347000D4C634D15E046ACB668A929CFCA6B3594A +:10348000E0035911603D32DBFED030730C8AD71B4C +:10349000A9BB11FD9723D0EF300224760BC4C5DB06 +:1034A0003636B8BFD990D0FD63EBF3F45CFA0BF974 +:1034B000AEB77C5AD45F3082202606622AB1169FAE +:1034C000D07993BDE389F85C181E4ED428B076CA33 +:1034D000235671F0C71EC1C4BAA0EB9FAAF67FEEB7 +:1034E00091ED41788A10982FFAA922B08C3B477C45 +:1034F00020FFC5EB015FE907B6D29CD790C15E857E +:1035000092132F89F63B6D466625CB7B1C53D3481F +:103510007A2811551F9647F28278A02B58404419FB +:103520004A7959B017F8223EA013896F451C1ADA60 +:1035300004DA3054CEE495369465BBF26C4BECB8AB +:10354000EC76F9956FD8CDA95BCAC8A0A24D9E159F +:10355000BB99148EA7A8862FDF7E48E88723B37D0A +:103560003C0A643DB293D155D19C5C000C4641B9F4 +:103570007BC288082E313C0A740BD5E4C24E106120 +:103580002BCBFE84D766BCAD176EA460B2C2F235F9 +:10359000A9367A98F84DEF7EE4198743864E8D510F +:1035A000AFD7249CA332DBEC7EEEE89DE82BD2E67D +:1035B0008699432A69596AD7B6EB1F981DB645D735 +:1035C000D520617BDE2FFBF62209FDABFB3D0F43CF +:1035D0007E95078AF1A23BBD1AA7B14875C507437E +:1035E000C1197D87F8C5D9B33914A401D46D96CD1E +:1035F00004EA929768A6A1428743FBAE6E5BA17175 +:1036000045AAA583213B60C20D16E3AECDAF45A60A +:1036100043A85AAB1467261231590682BA273EE6F0 +:10362000114260F85FB952F8B39FD79842383FA56E +:10363000CE40C4D0E255349C54D1C6789D0DAC0721 +:103640004DE91D7018224A570CAE9D88B18E204D51 +:10365000FB218D43B60BDE558C2675385B39786EB1 +:10366000295748DCDEA6C63806CE669D392EEFE027 +:103670006E40D3260763237A895DE372A515293A44 +:103680006E44D6C335556710AC6114E7283ECDFAB9 +:103690009597725B6391BCD7CF1E624F5301AC9973 +:1036A000F5C8CB471C1C9510EEFF0A3C95F8A32BE0 +:1036B000C067FDDE1F18CE494D4FE78BB2A95FD220 +:1036C000CBC89BF0B5BAEE35D724BC0507C5229B05 +:1036D000C89D101168187ADD5E66C409AFEDD53E4D +:1036E000B32E661D1AE06690F9B4C5FFD96CC8E325 +:1036F000C2A466BDD6C06B24CC363A424CB71A2160 +:103700007972C1266B22857BA87F1CF5DE75393462 +:1037100075D66A41EDF0D86BF6E2983F90F11DD076 +:10372000620BE78E434B30A259ABA7E6B2125CCDD9 +:10373000457249A5BE0292F9AFC02D76C4426BA175 +:10374000DD996F312A10C9AF7C7184070425353C9F +:1037500021FD0BF236EDE3351FCA997311CD3657B3 +:10376000DADD84B459D6DEA090B1AEE4BBB9A6EBE5 +:10377000D0158492A26F8AB58563D8FB734966E140 +:10378000BFE7C4B6ED044639DD2DECFB99C170737B +:10379000E9EBF072241ECEFA5AE8027A5EB3C9B998 +:1037A0008556C7A20AD5FA36D0E695BACAEBF42AEE +:1037B00023437AF4BD78B7006B5A6C805A19F174C0 +:1037C000CBAB4BEDA912CEBFFB57CCAD810DE710B3 +:1037D000056DD070CD38E4BCE06826DC9D71120325 +:1037E000D13895EBE39F5D58A88CB5BCF0A64C8C06 +:1037F0006B184F23B5BA94896E6DBA543738FE31C1 +:10380000D7732565038E0219DEE8FDBE4C9E3F6628 +:1038100030CB23ACA7C2FE66D092CFCF92D6E06C5D +:10382000CD7169B7E6364E7788EDD8014A28AB26C8 +:103830003472F5803EF96E5620742C1E141FC42875 +:10384000BA5DCB1FB57F77E54730FBE4C197E195C3 +:10385000133BE4847B4CFD6E5EE2CB6CD25520DCE6 +:10386000480069F400EE0320AFA58423203220EE47 +:10387000CE5A52BF9DCA6EFA1BE407B30F879CEE67 +:10388000EAE6561FCACB9FDBB418151993AD6DD766 +:10389000ECE64906ABADF6D40076BDDBF00256731C +:1038A0004949EAA8ACD9DB37C127ACF7F910C10206 +:1038B0000F1751FAD15609462C7B8CC45A298637EA +:1038C00009A861140E1D8CA0253BB932416846E35E +:1038D0003ADADB33CDDD857A1D4DDA858D88284BCC +:1038E00065ADD993BA7628D386993CFF70BA2E92EB +:1038F00030315EC81959F84F72210C1F00F60FF0D5 +:10390000F9CE7940F15DCF8CAD916CDBD2B2AC24B5 +:103910008E62A051643AE4A35A0A389765E9A32459 +:10392000D5F26FDEF136D7AEC8A2B0080D410EC891 +:103930008F9CA556BD44522FB369BE4AD3F35FDCBA +:103940000986FF737440D96921F8EB736DBE285660 +:10395000C0C3C92FD7245632BDAE9C1896EB14ECC9 +:103960007605970B353A4991D532DDDDEBDD019CCB +:10397000F24F4BDC1D502FD78FA83DDA9CDA6DC378 +:10398000FF8AF8AB4D455F30B6260ACC92D69D1B18 +:103990004D92961683EAFBABF6EE77A2593D0F0BDC +:1039A00067746D782A101B90830547C11CC65D168D +:1039B0004488A97735606C194BEF59ED7AE4356D81 +:1039C0003F70F926BD893F019D3BF1740BC3AA02EC +:1039D000E1BB2D7AB4DDEA24905188B69E44AC67F1 +:1039E000814BB95AE604E551D00BB8EEBE343343EF +:1039F000370594BD2FA56E6A06F6B339468F0E358E +:103A000012FCA384BD3E26B57A8211AAB10B34DB29 +:103A1000494251B639EC666B73867CA67C28260435 +:103A20000CEE0924F433373F10A0CF1D0C90EA1E92 +:103A300047001E346139E81A22FE9DF00CDB2D6927 +:103A40004E5B3A73ACA4072600894B2A61277A9B08 +:103A5000C19CDD88F480AB552A2DE957CD4247172C +:103A600066F156A32D169827F9DE498455AC05DF7B +:103A70008E2EB9B5BA82B4836FD0865ED77DB5B4C9 +:103A8000FB9D3EF6495C0411A1ACAEF9A725653F4C +:103A90000E0EAB56C7D5086696DACCFC615F0BE715 +:103AA000D060F23B2C3E764C22BC2A0AB6552BFC49 +:103AB000DBBEA4AFCE484FBA0F51560454622096D5 +:103AC000FA2348EAD0C1840DE171883ED504D417A9 +:103AD0004B0D727F1CCD0EDCC3126498262EE2784B +:103AE0006BF12C975C641A8D479225116B43879874 +:103AF0008E5C42BE8E5C78FAC2DB5F0F1FE385CF1F +:103B0000DE924EF230571BD882161A7173A38BB512 +:103B10008AB2C9069D0C2B73336E5AAD34C8F74474 +:103B20008A526F1ED6135160D4D79DA886FC117996 +:103B300007572592194296F3AC5812BBFABCD874B9 +:103B40007FE5F093C6CD83615DF7A8B5D075C90D4B +:103B500064F4A3D5A9152FF2528C4515A822BE3CBA +:103B6000457B9B5725AEECA626D5F457318A3EF30C +:103B7000765D301194B1D38720EFF53586E8A36CDC +:103B800027DCC320CD13E1C6DCFD60DCAE09608913 +:103B9000B53CC9042EC9F5DBE53C5D064F26F7367A +:103BA00033003E7CD1E548E5CC23D040BC8E0ECD21 +:103BB000C48524EB95F0BE051F616A9B0C9885C2F5 +:103BC000D6790F6CCDB23302A14B4415DCC622620C +:103BD000BCA70F1EB81F3C20C6687280696109A08F +:103BE000447EE37D6538754D6F05F159881B0E7B6A +:103BF000AE1F251BB327906A12607B9F465E23FD94 +:103C000056C19CB78C25786B2945D2DA03A8A9A6A2 +:103C1000F6278A5FD010F2029E0D07D394EA481E61 +:103C2000CB16837F57BB38997992B0329C79DB24CD +:103C30000B3287820F8B1EF269FA077650D765AF79 +:103C4000D71638B53650B9AFBE2B704236E03EC2FB +:103C50009806664E7C963823B718E4CDCF29ED87B9 +:103C6000DE983F354476B8DE13429CE390FC2DE0AD +:103C70001AE04287254D27878A983EB8361EDBC05A +:103C80009EF7BB599350AE30EE663AE4C3A9355364 +:103C9000DF5615ED2F590DDAE3C055BE6342D9BF8B +:103CA0007DFC7FCA4231DD1AFE54327639611F55E0 +:103CB000FD0A7C391597133BFF6887A027A426F4DB +:103CC0004D1B412E0CE6F722FA4AA05D5A0DCA3070 +:103CD0002C7C8E9A1C710FA393D323232C5F64F248 +:103CE00092DD780577567A72D528FA8DB7854A76AF +:103CF000584586CC618BD4D442B597DD878DC3FA05 +:103D00006F551B4E5888A135E51A1D34C3F4C84BB6 +:103D1000DD3A078358E131C3BABC9CE32E939AB3D2 +:103D2000F4F64CB415590B56ECD7E12AFBDE40549F +:103D3000F706837BD19513A1AA7CB805980713B425 +:103D4000EF3FF9754977EA6067718E10FBAC2BD1B4 +:103D5000FAF6DD58976BC4F7A4D0A312598DAC3690 +:103D60004E23D8CC8CB4E60A1FFA33456C1A797608 +:103D70004AF7E733BA6C8B1D3C7436C3B76BDFAFC1 +:103D80006E77CF7D859A3F8583C9F346C15334AAA8 +:103D900012651680712C2E1D206594D070BDE92A05 +:103DA0008DD2F097F7A2E414A2DA14EA889482EE96 +:103DB000572DA6B5DCC21FE5EA5657D531F2FF7480 +:103DC000B101A040E834DEB46BE4902705BAFAFAFA +:103DD000061B6C9247DB73B51E6FAAA0AF2F7A72D9 +:103DE0004D47F52E9B83BE78961C0EE8B481D9D63C +:103DF00029502484DFDF185F5A4458FAC2E8860548 +:103E0000E128CFC19AF3DF0FBAA37D86704E2D2231 +:103E10007DA5A255431D95DCA08ADF762195A324BC +:103E200089C9C19A812C0673ADC776DC7C2734B46E +:103E3000C69985546823C6C0370DFC552DD001A600 +:103E4000CE991E1AFD4FB2DA1A6FA4B7928694D794 +:103E500069546C85D75EF174C1D12261952F1D41E3 +:103E6000898CD7C2D55514544F83DC086799C73C59 +:103E70002A786E9B85124731A3CDE63151F56692C3 +:103E8000E971155745E0A01DDB77BF397E75295CC8 +:103E9000177D805F65D1B01552085DD14DC52DF1FC +:103EA0009EDAE83800C1C779B71664302B66F74947 +:103EB000D3C68031CD82F8450CBA8BBFBEB9E5FEC2 +:103EC000504C66B58116BDF29694E6477446339F12 +:103ED000D58CFC667277CCE8EF292F530C997A29A0 +:103EE00045032D45A4201EC46FF5A9A549165844C5 +:103EF000F6ED14864AD304A9D194AC0C785DE8E8B9 +:103F00003EDA68EF7D1FFB2E1C191BC44E757DA980 +:103F10006B9793C0CF2BEB7059E1DC8C51F95907AB +:103F20007DDCD2BEF26409B95C91CFEE663AB7305F +:103F3000AED280600080921DD5ABFF633319B67995 +:103F40008BEE07D2FCE04E18DC3EC5ED1F6F60FB28 +:103F5000697A34E7060DD9B7EB315FF85CDD28717B +:103F6000FD148E342B4EAEBA6CA6DBDA43CBD50FE4 +:103F7000D183A1E640082F5586311E0797BA29B193 +:103F80000369B8DDA50B3448E8C4A8E32D4CFA2634 +:103F90008C8FE9357490274EADC5C20E1A23FEB43E +:103FA0006FA8CA4F906F7D5F19883F8455037E329A +:103FB000C3E70D48DDCF285A191C9118E72E7BEB7B +:103FC000231C7681447D13DEA10E06F956214F1184 +:103FD0004CF56CCC5F283CA2A4026502535F3CE325 +:103FE000CBD6979458D9A048E836E94CE2128526FA +:103FF00061F09766AE15116D14F669C582D4B8E705 +:1040000069B149D1091E0B4B1B9BCC987D8FBC34E9 +:1040100007E88C26223208C359C3F31682938C8397 +:10402000A285FD9BBF93E871574D83EE6810F89B06 +:104030009864D0829F7EB383743F3314DCBF4BDD22 +:104040003E3BCEC32D3F0C0D2A061B44CF8A9864FD +:10405000D6833F0A7F205ED132EEBF3BDEA3E088ED +:10406000F153A7A89A03B95AA026B8CE0E16AB3CB6 +:10407000868B8174A6D9843C9BA8C59173516A72C2 +:10408000C48248416944C0BBF43B9C480E2FFB5797 +:1040900063B19C645F90BD9BC03333501707665279 +:1040A000DECEADF1CC4FCF27E7E07A264962F8EEBD +:1040B000B26E2B7EF26531046F5F58352985A9C930 +:1040C0008DD3069A27FB0581C5C7A0E3B4DED2DDF8 +:1040D0004C6AEE1446541EE93C982E02EE28AA368D +:1040E000716D3D456BCFBDC036550AF3EDECFB5409 +:1040F00018996D9A8005C2755100AD9DCFA2630ECF +:10410000EE3C895EB4103CAFBB1B7A9286ED59D76A +:10411000974CBB708B061566068DA0206D13F7C3F8 +:10412000C6BA67BC1789EBD1C56E0D43A9B588A681 +:10413000819C6223D8BB350FA78394A87587106E26 +:10414000B9F2E671FF1FFC7BF54573207549483CC9 +:10415000CED70D57A989AD317A1846E57E7E12106B +:104160004C6CC8C813E4F4B0C1BDF534397396E0A3 +:10417000CEB60D26BEB3CFA1DA24B268BBF1AE4FE6 +:10418000AA1BE71C9A925A66CC0DCDD6E1629BC160 +:1041900062B31DC218D12DFD8AA987CE5EAECDA90E +:1041A000233D83747850E0B95E97E9985EFBADE7F4 +:1041B000E63CC7855E8E0085E83AB0005635A331EF +:1041C00058FCD0C3967F2BBECE27BEF158070BF705 +:1041D000D6D8A5CCAF735ECA08F0F93AC4FF8A5AA4 +:1041E000098AD57A8EF58D76AA48DDC7DD30631C45 +:1041F0002B274CEC7F02032116F282C2ACC311A71D +:104200003006C5ACAAAED8D8D0C8C0F76ED47C17DB +:10421000448D257D5BB3E09A102FF60565B6350316 +:10422000E4AD44E6D748B67A974F80944A03854375 +:10423000649A2B752D13F3F2DE094BE8C3A11366C4 +:10424000664190D65C238622C19EEA2E5F204C49AF +:10425000F87FB048439EAC56B345771DB6DAE92CDB +:104260005039C167518ECC1E19668F252E0F3CF92F +:10427000C80CFDAC22299BBFE421FE49D2356D3C20 +:10428000871C4C28ADD9AEFD33E6DD2B2C9CE18795 +:10429000046EE4B73C3FCE42B7F1B2E35CF4C1D464 +:1042A00076DB54F33C0A7D8C9898F77D75A6F1690E +:1042B000A20F80497364CFC633B21F7187AB0C8ADB +:1042C000742AAA3BD1CBF12EAFC1A1DCD3A56E39A4 +:1042D0009F84AAD7D3A0C7D85F4A6C7150B5FCBEE3 +:1042E000AFFA7F713C6CEE4887613F6F9AB155978A +:1042F000A27F06D42B9E7527957C82ACB5489D3352 +:10430000CAB3B79D65E94A610480083EED0916AD60 +:10431000FBA404350602D672FE6B4944AF1022B9E5 +:10432000A5D8B8600C3B7A16AC88D77E157EFB0307 +:10433000083542A69052D1F7257060918E3E8500D7 +:10434000FBB21C8035653DB2CBDE7B0E301DF6D650 +:104350003A1C6B3C3DFC6ED37F09E838A3F39E2EDC +:104360002468B410A1EE54D2BB6832FB54AFB60639 +:104370005180398B67029B8AEDA8A87FB0A65ABFEF +:104380003D5D551E9D9B9B40C7204B23CE9082F2E6 +:1043900081C4499ACD290EC638C0F422DC3B0227DD +:1043A00075250A17F47B0FBE6192F8BEA226FC1198 +:1043B00027C93B0AA4F757B8A7C2E37691C9722967 +:1043C000EEA694F8D285002DD0C5C0B48BAB6C1688 +:1043D00014D3BDEAAC2A845AF1BA295065F494D5B5 +:1043E00032142CF7DBF91029E6423FCE025939D3BB +:1043F0000CDFA6CEE5F3D0F409BE26111DF04C5A11 +:10440000D76B061082047200B1319274B003C0DD24 +:1044100015E75CE4B2771DC3DED8B21C408C338F45 +:10442000E99032C02E74E0C7DC8B648FB0F40F8645 +:1044300037D12A6CC0B3F2690D59D10D13F8E44F8E +:10444000FA91FD1533BBDC5973F94B16E9FF2021B6 +:104450006849E87907851569EDF8BF602025C75DD3 +:10446000265672755E826F83238B01FE95D82BD8FA +:1044700010FDDCACAE9C152A1337AD4A01A0CD6D02 +:1044800079FD96E536F02FDDA97F6890997C8291C1 +:10449000D8CE0785B4B9ACB2B6C572CA478691D733 +:1044A0004184F203ABFFEE6D0EA5BDE1670E919B5B +:1044B0002762A623E8F58089642C9CA4E79626D57C +:1044C000165E0171D3D8C4BCF8A0751E80B02A0551 +:1044D000C05B57712CE8C046A82DB877C9F5A6680F +:1044E0008FD46F13A1DD8E278C8F0B817EFC19D1A9 +:1044F0004F402A26ED4DF19C6AFEFD3A547D0B3665 +:1045000038535E56FCB56B2C2534B463B7EE37D206 +:10451000B204F820EDE8CEE121DAC9A2816A628214 +:10452000FE967D2D3B0179D5D2EEB97C50BE93FC31 +:1045300043B7E4F3A544F9E50EFA24DBF0C4C1D295 +:1045400008FB02EB9D6611BF2947721B3DB385A88E +:104550006F283BBD12F182011AE6943BABD2ABF35C +:10456000CBBF87C96C00950BD4F50DC5F3A7FC0A2A +:104570003B5F641BEDDC09014CCEF41DE27C9144F1 +:1045800005FCC66F9CA308A0F4FDE4E6F064584562 +:10459000E323B2E00AE98C7541EB951B94517E014F +:1045A0008A3D181732AF98DBCDDB4BADD01996287A +:1045B00048CE2971242AD61C2FE8450282C48728B8 +:1045C000A83A1D1AA938066E30448C62091106E615 +:1045D0008AB7BA63841E4FC7E008F7EA4F0DAE2CC6 +:1045E00038797D65200083391EC50C9CEE173E0F7F +:1045F000E3B327FBF2BA86506FBE4FC4257F5AB390 +:104600004F0DA9168FC39AF90354142B6F92D0083B +:104610003B94FD6801808B211A5ABC9ED9068660A6 +:10462000DE0447916D656BF61D440DCC31C06338D7 +:10463000D0F54D3785291E199E8B3BF3CC157DC9CE +:10464000A4510425B76DA3DC11572877475D767810 +:10465000F2FD91D906035680B07360428C664C8B94 +:10466000B41AFCA223EFB2E421E85C37377EA350F2 +:10467000FD22BF0B0D7504AEEB4C45EBF403A8C750 +:1046800070CCEFA8711CCD760C484C847E7E07421E +:104690005A47DD4CFCA834CF5DB6E116A01663394D +:1046A000E87ACDF85E35366A0C935876378076898D +:1046B000091C85306F0C868E8AB3B56843055E7A17 +:1046C000F715A1A19990D202A4F69CF73728297C6E +:1046D00068AA3F85AC83A5931D21143132ED95DB8B +:1046E0006DB73DAA50913B90519B226E89805A67CD +:1046F00024C1828C2EC2038C7C6E0ADC104F76ADF6 +:1047000055C847FD7FA785F853F23C818BF3ACAFCA +:1047100080ECEED2487244FF18C4B6559048877DAD +:10472000D8F5284C056F0AE479D551D7515FE7B920 +:104730001273E8432A92E6DE2AF19126AC219B3BD4 +:1047400055C5D09E0D5EBBF6433B0B44017DC72192 +:10475000A911AABDB243D2BA6D86541C3BDCF256F5 +:104760004E89DB42ADA4DCD0C020543FE50EA772D9 +:1047700071FD04CA1C87977B15688336B0A202F4CA +:10478000C7EF4D0F49E0B3FA8E4FC83337AFFBCFB9 +:10479000DF637A0921366ED54A09D7A2B4F0B38E09 +:1047A0000A6BD6392BB6FCEC2958EB38D11FB4B3C1 +:1047B000A8E0D1EF7BFE528C3723335B83FF69F295 +:1047C0007F2265F2D78428D531004209CA936FC78A +:1047D0006F7DC0D2ABE398145CEBDEA0E4712A0AD3 +:1047E0004A59CC41AD57DF2E0863A9AB14F90861D3 +:1047F000F806EE6D754937AA42D368C34E77823BFF +:104800007DC71B8504E069D4C47A9768F914D7F989 +:10481000322F4568617B16607C38AA0410E69568E3 +:1048200013D015D174A5D5BE4CA83CA6B653786F4D +:10483000F69996CC8469F385BA6E6B7D0B3A3D612F +:1048400005D992ACEE4AC1449353C9897FB33180F4 +:10485000CD398684E443EE3579F1C31A5CE0A3A830 +:104860001B7AD5A89CEB20560EF45E07CD982BDD65 +:1048700030F623A7C0B5FAFE299D13D4D7F2ECCBAE +:10488000B59B0B371AE8B125B7FCA7F33C3B9B73EC +:10489000B189DF2D6010C1858E6F2F785CDFF697B0 +:1048A000B02CD5A39017B1BEDBF817F01430B34489 +:1048B000C377BA13C3934C3BDD1246AEBBFBF3F098 +:1048C0008D4473E37891F2158410ACB5441E95E5E0 +:1048D0009E038EB09A222FABF7875214EE61BAF77F +:1048E000A2BB50D4F01282B5B727EDF41B8D8A9E7F +:1048F00068449146DC4F4D7A0510208494DD5CAC11 +:1049000054F6C52D86B29C1FE76B4B7C5C74B7D206 +:104910009FF16D68A3358E781BCE9AC88668BC63FC +:104920008C896CA08D989269398535AD04E7C01EDD +:10493000C4FB35A1F8ECD7D24BC6C68180CA2ED6AF +:104940005FDD925DEB1211BEBE8E9EE848AA2FEA93 +:104950006BC64602E144647A54AC3374E39C54E081 +:1049600016A1503E6CDF11F37974B5D5C16DE3FA31 +:10497000F8853CFB5F4EE3664C81F865EAD6432040 +:10498000085F94E028A71BB22FE4F8B1EA2FCD44CA +:1049900057BDB05F3D8BA4D079506A7892CE5C2130 +:1049A000895DC6D0F17FF4984A1F451F8B7F25F99A +:1049B0000E7875B5E8B75448EC7661CB8B35732625 +:1049C000116FFB46653B3B65A674850420E2C083FE +:1049D000CC494ACF20EDA3924C67ABE1DC31B673F2 +:1049E000E073936CA3211C300C065EA984883212FC +:1049F00096A606A583264367EAD07D1DCFA0757CC9 +:104A0000C693D65FC6C600EFC1530434FAFC6714E0 +:104A1000DB933F88D6CB26553B057A3D4D42299204 +:104A2000DC4E77EC85ACB0B151ED950B2936132BEC +:104A3000E40289863DE455642C48BED0E9D855E6A9 +:104A400032CF05B1F8A26D3CED3EF0ABF6CB654838 +:104A50006433AAA2F7E407376FFD88D841C3E09911 +:104A6000833FB3013726011BDD25A33FD98E47B411 +:104A7000B0A9AE13C2D42D1EE4B86FFEEF39B75102 +:104A80001240E987038F16294D949CA8FDA59B69C8 +:104A90003225BDC66DBE0F2A9FD0E8B64BE8C6FDD5 +:104AA0000C15C24D32D84F24CBDCD1CDB93022A663 +:104AB0009D2E68CB5A89611C70EE7BCD9555114FA8 +:104AC0001C0B22F09E94FCDA18BBEE9690A899CAB3 +:104AD000388F5202450DB1EBBB06D2C8A95B842FBB +:104AE00021D11684B24C0B4A25AED1DA64B245937B +:104AF00056C872CB4D392BDE4052D82652846F27D0 +:104B0000AFC4D9A28250913CF9A3E47A198EC62B86 +:104B100095E87FC4E872582FC46B7E0F4545871B0C +:104B2000FBE8C7F37FDC119E059D53FDA587C421DB +:104B30004283E152500E49EC973512936060748CB9 +:104B4000E400FCBC6291328A2857F0632C4D8C271C +:104B5000A434D6FEC7F9747327D3598E61EED639C3 +:104B6000F9FEA5A61A5806CFA0A2D900478E4EA1DD +:104B700080AEEB37B955059F016ED35E51C72B85CB +:104B800026BD6FDC08DB29F5A1A2151CFD548F6E34 +:104B90008E00934F9E4DE74F718E821F349E17B843 +:104BA0002B38AF53614B6F08BC744A35DB3E3FD5A1 +:104BB000D2F1012A91EC3B71EAA0DFD10CA59D6CEA +:104BC0002C95F3CADC3B9F237359719FEDB9E2A981 +:104BD000C7E7F006D797C415EE9F141824BE916559 +:104BE000E4236604514C3DE8B5B9CC5C9CCC2D7FE8 +:104BF000421ADC6ABB9BB6DF3EF1094B536D29C5F7 +:104C000085C0B4D8B8016655CE173C76EDC22DDC10 +:104C100094C285D0B833052BE504C18EB71598E151 +:104C2000AAA276E8A929D2946A87B5E7913BBBABE3 +:104C3000F175E136F48339DCFD5C30FC52E8232663 +:104C400095355F43F484055AA1B6FEAA3C2CA254C4 +:104C500003769B7FB201AC54130BAA3A45D79C7BD9 +:104C6000DE614483AE3AA6B0498CF1ED768167EB04 +:104C7000A8BB61993936E11F8F2E1BDDFA3AE3D5C7 +:104C8000BC4F9F3860C530298F4A58764939E16852 +:104C9000EACC6B4DAB349376463564D7BA45E77CA6 +:104CA00069BA2597D7CD0B11D5A990B92826D62A50 +:104CB0004E6508A53D913B729910E8E11F8E5AC5DB +:104CC000D33FDB5ED46BDDD48B0BC47F183953BA72 +:104CD000DAFA9DCD79C9A2555523598E9AA30CA90C +:104CE000A44AEC70B23E569CCB16099322A4F583DD +:104CF0001C98DDEC8BBCD5A9F2823C47BB8ECB9DCA +:104D0000366B20F7B91B9C6EB9A8BBEEED8FC5B012 +:104D10004DC6E02D66505CC82670BD6B284444EB40 +:104D20009B077074D58F84B049CD2161DAF12F874C +:104D30007E9A583D428B194E98AB73BF0C94A16874 +:104D4000296A810C1B248DF855D51BF54EB60E73C0 +:104D5000B54669D1D62CB1E2D89125D1F5E8D28BF0 +:104D6000388ED3366749E44796D6844912F349E52D +:104D7000336C027710B32477C1EFBD842C46F34B1C +:104D8000A90DDF6E7470479CB71A4CFB8659C21B85 +:104D90007B55D7852E7258568709720D7B81053851 +:104DA0002A78A7A1ABBEB37C0528971DCFDAC1BD79 +:104DB000F8B8688AB0CAAFE18B26E5BC34ED2D5A4D +:104DC000AC3842C17BD8FFE63215A038B1BC36C73B +:104DD0003E6B21AA7C035FD0EF18CC8021DF3D64BD +:104DE0004A731F0A3D2A1A30D28B82518D67EF54C5 +:104DF00054832E636A24E02AAC25B8C9ADF045C6B9 +:104E0000C3503C499A6C8C25F49371B042451C0503 +:104E10004566A5CA34CF914BF99DE952436BA884EE +:104E20001FF24415F09326821D2912AD754E327380 +:104E3000B9E89C2B17495084DEBD1523618D9FD2A4 +:104E4000CE49AD140BD1894AC1FEF79505E41BC6C6 +:104E50009ED46D4A411F384CDE5FDD9EB0080B309A +:104E60002F83B9F65789EA80F539C56EAB5EE91B29 +:104E7000C19FE4895977F4E8BFD1DDDCA95517F566 +:104E800086E2E77D7DAA4336EA80471ACE4D82F658 +:104E90000BC55F4B5A5F45A1893C55E9B30FEC2226 +:104EA000F5E68A61A6C50AFC7D125AB8BEB8B9BE3D +:104EB000900B37BE7D9F77E654760409F66C34CEAE +:104EC000ECD4060210A2D66CE36CA1C4B7C6DD997F +:104ED00088934C0B52221E6A68D22CC82413CDE84A +:104EE000595E4FEFDB5F303A95DCC7428721C685BC +:104EF000F9494CDC944A4FDEA1E42ED9F0085E5A01 +:104F0000736227DEC9F750FD27C42080CFC2D9CAFB +:104F100012110D259789E971A502D7F5099420682A +:104F20005D5ABE0221B578C176B4DA1B68B4C0CB35 +:104F300047672A55EDE1813F66C02032FCF1C7DCAE +:104F40004D42BE03D348D2A483FA8AC4ED27A3E915 +:104F500013CD7B34BBDEE01AD93301BFF2022E0140 +:104F6000D9CC73E314A2B60EEB2F8D52D260A027DA +:104F7000DC0596A74BBB04801725842BE1BEB4CB80 +:104F8000576C9A035498531EB1319547A0BBC64F36 +:104F9000417226A3845FC2122DCD67784C34BC5277 +:104FA000F7785A094817CF8A300890A59D5EB392CA +:104FB00028C1F25612900B1C981D9D47E87329CD0D +:104FC0008023A1FF08CC31C497F96F2457CF4570D7 +:104FD00041633F5A8B14AC38500D496729626871A0 +:104FE00029F0201A1C87C99BF46801EA1FF950E5D3 +:104FF000A5FE91F39E854A8895133665DAC6C536B7 +:10500000C088414111428B5B1D9C6964661909FC93 +:10501000836035C6FEDCEF1489D43983A7E2A09DF6 +:105020003E9166C6758FD60BD78EDE545DC9DAB653 +:1050300072F2E706D65D938F014C9082EAF8C55074 +:10504000EB9936FBF5EF8BD57DC3B33095D47FD488 +:105050005782F3AB28C06FC3AE89D201F8F22A326F +:1050600096BA255BA58DA64A154FF23DDB67E65142 +:10507000CF91B1FB3F3E86D0D9D653C432627E7BFE +:10508000FB2AF23AD51BF1326996056FA54FDDD5A3 +:10509000E516A6617199D1A9DBBFACABFB14997180 +:1050A000763D01A792C553C776BB04A6D00A1EBCA5 +:1050B000944D036A246929E0CF5F0505EFED64365E +:1050C0007D80B7D01B53F655C9091BC1474AFFA2C3 +:1050D0006629CD953A13D2B528D5C1045CC0A47514 +:1050E0003A1BA8D9B2F62B81FA4EFD3A6B84B799D8 +:1050F000C3B0A4FDE5288F06416B2B9DA674219AB1 +:1051000037799283F7AEB86A181FE9E6CAB18FDB28 +:10511000EA13D4E49F0A8608CDE6CD0975E8664E09 +:105120001FDF6F01222E4D918B6361007BC9DBE095 +:10513000AC9753041155589606AC32B8227722B179 +:10514000DA91C6D862ECF2F1874F1895DFB8790191 +:1051500031E788A8EBBED062C4B8EB7AA742E193EE +:1051600081E19A9F3D0CC7B7E82A5040980F0A9DED +:1051700001051C1F7895893DF503A9F026D0B8D20A +:10518000AB3CFA06CA14FA58F02178159AD247ECCB +:10519000B0D49F69223ADC644747C7554EE1701589 +:1051A00089D791DF9F4A59428A720B18774480D081 +:1051B0006C1541C0EC1E6747079F94DDA3AAFDE76D +:1051C00047755786499D7FC70FECBE1996B7BB77C9 +:1051D00033DF031EC1D38CDCF8BDCB3EBBD1870AC5 +:1051E000A22F465FB76C6171FCC6A9EAC664663E31 +:1051F0005730D1B803B6E825DA817A9852B2395CD3 +:10520000FB7D6D4A3DA6D89BC22CA412A74B05324C +:10521000DABAE67CBD99139E98F7E05F7AEDF4FC6C +:105220007AF91D082E03381CE4B0A02762269518D1 +:10523000B01D30DBFB4CFE984D24D584FDF47A7B09 +:105240007D1366D9E612A54F99DCDF4B0DFE36279C +:10525000C2E4CA8F81E18755DCE120161AD3DF5EF4 +:10526000911A031E896F53D24356673A1ED74909D4 +:1052700083A49C13296815C3766239CDEDF4723985 +:10528000512DCE1A076034AC17D4A49119DB9406C3 +:1052900074EE849C28AE18DBCE2C49BD2056B7C4D2 +:1052A0005900573D44355BF0133F7DE9F4BBC529F8 +:1052B000ACD5708B7A88FAE267E847303FAB8976E5 +:1052C000088EF0D7B694F98EBBF47C26B0C6C3A77F +:1052D00075E62E210CDF34925E929B0CE02D9450EB +:1052E0002492F362AD6BCAB41C2411F5D4F999F47D +:1052F000F9E19DF399873EE44551BD71E28E85E960 +:10530000EAB4FDF86368A7FBF95A17EF681FA060BD +:1053100050BC34242711E3C0BDFE33B4582C5B9835 +:105320003B4186EE5FA1D9C9358D8F42344C8F61E8 +:10533000970E977650E6A5D5E1AA744C14CB0A04D3 +:105340005A6CBA5B0FBEBAB42EDCBBCEF68231DE2D +:105350006C922FCA33E5D88FA1382E4BB210C117EB +:105360001884E86AAC7A00831F3DC461D4843B850D +:105370009187D6BC5E18624DFB612BACF13FD429FE +:1053800078B346403D6988CFE7880D6DD72EA5914B +:1053900013A63EEB52AAD4ADF509E64C311CF4033A +:1053A0004F5568491BFAD412EC10F34508BA5A9EBF +:1053B0008870A85EABBA2C22C9E45711D0F42DD066 +:1053C0001403340DDCBE3A03FD96A0F5D5DA5AE09D +:1053D00008B755C57CA89DB1220682BE6893726A43 +:1053E000BB3B6A4CA7BEFDDBEF3E1697784A9AAAF4 +:1053F00096DB83AAA3BAF1A89064889B777F5BDED3 +:105400000F1BAB6F71D857BAC4C19C6E9ADB1A0FD1 +:10541000850B0516C89635145E7FDF768E0A69BF48 +:10542000E7052770019F14A33E3CDF213245333B43 +:10543000A986FBB5BC7F3F07CB3CCD1333EA9A501E +:10544000B30CB7156CC2FFADD1677D45872FC16224 +:1054500011D808E21D73DBDDCAD831CD8F4A9927F8 +:105460000FB7E71428A817D33637C17AC7D29F5988 +:10547000335D5DFF8A82D9229C310B3DA75BCF3023 +:105480009C2774CD8BA18C37AA7955F351CEE710A8 +:10549000F6A0EE3162A88A7C35C8BDB830DE6F4D0B +:1054A000B0E598C5A7B8FCC495EAD3768D08615ECF +:1054B000A21352BBFFF28D94CB1BD395091063B09E +:1054C000F06B6C6123D386E79552E66ACA2861F2D5 +:1054D000929264F4C9E709BF22A5C43B159A08500B +:1054E00030B03BAF7CB446F0D10B0605B57C9A0AD0 +:1054F000790834E533D5EA40EB25D4CD40562FA3C7 +:10550000BDD81BA38419CCCE7976AC2DB557F97CC8 +:1055100030128E9BBB73D50119A15350D29B3D8D88 +:105520001FA1A132FC5ADF31EFEA4C457722DF7A26 +:1055300070B9D5C1B7D520F056D43CAB80745CEBC4 +:10554000B6E43213F99C85DCE9F5F319848E1AE987 +:10555000FF5FBD86C75E4468260723118D338CBB71 +:10556000187960DF177D35BE398EC5EA69A98EDDF1 +:10557000D6EDC05C86F626C506813EC8508C1C92CE +:105580002BEFCA765B84EDACF720375E2CA3BD3ED3 +:10559000D48A44DB4C1D100DC9ED05E28B76C003A7 +:1055A000AEBCEA38E4FFBC059628D0465F019828D7 +:1055B0008045C88675A8B8C18F28A0A87575C7BCD6 +:1055C0004DCBE474535D488C78240969023108B8E6 +:1055D000D10407D0CF3EB04B9D82DF8FCD51C7198C +:1055E000411DED03C4D1D8FE2AD0A706B1A3358D45 +:1055F000FBB0A9DC0227D72D85F19210AD669EC3C2 +:10560000B35105D3FB83758D7D23120C67DBCD3B36 +:10561000595B541182F55370EF8946ABCAA4AF6948 +:10562000F9834105CCD64F7E3CBF6F87E607DF93F9 +:1056300023B48B00F3A7F2E5F2AF8D02F063362FAF +:105640003464D8282FEFFE92B93620D47DE060FD77 +:1056500061FEC31A7C66C003EBE3145E5792B7DAAF +:10566000DF5A45DBD9BD99EF9D09AF0136C3A211C1 +:10567000C8CF17CE84C95F20AE7278371C38855FDB +:105680004DF8EFA944D61A5A7CB4FFCF7C82FE8233 +:10569000F123B35EBC4EC7AF24FCBB9561C2E3BC33 +:1056A000249DCD99A1C60D667FAE3C1D5FB8AF9B12 +:1056B000A0DE841536D7C8AC9FDB85EE6B30651352 +:1056C000A393A158ADBAE4F4DCBEF9AD0A4F9E68CD +:1056D0003CD0516E88FD1F5669A17AB2EEE7310EBB +:1056E0001702EF74604972FB1B7BB7C92546DE9534 +:1056F00063B57CC50CF6D499232DDCB0436F175AE3 +:105700004F43D4442B5512B1F89829B71B64653028 +:105710002FC4FBB1CC7EA9E295E95BFBC85BB44228 +:105720009B793F8EA11F5036FC0F89EFE1ECCC0135 +:105730008F198E069E4B64786448DB41C8FF904FFA +:10574000CD2871009C1022AF078063417E6508CE92 +:10575000BB8FBF3D1D726E3FC78127A10C36F7B4CA +:1057600077F1FB485B46F02420D36C7971FE2DE481 +:105770005E8BF588729F605E5299A14A6EB2764840 +:1057800052C8E325C4D1F326987C88E84598EA906E +:10579000277BD8C89AE190873577BBCFC00E01AB85 +:1057A000ACC4970FCF18DD25104911A1A8355B4B6C +:1057B00070C104F59A0099936D0CE42044361C7D69 +:1057C000D1395D46B67F98B7E6395173553D3FA74D +:1057D000425FC66105DA2CA405282B615F6C3F1E71 +:1057E000F6DE01EA497179A4338146DFB8B195123A +:1057F000C60DA624DFF5E95DED10F6C5FB46D8DA47 +:10580000FABA05F838E45CBED82B51ACA617322D95 +:105810006560554C6746B185E7BC4C222355DB1DBE +:10582000ED21DF1BA8DC6DE4EA40E6557AC0936AFF +:10583000D4720AFF0282C294094BC0C5A8710E79C6 +:1058400038BAD9934A9579701A1785E54CEA6640BB +:10585000AB252D5981D01F6E58B71D31D29DD42153 +:10586000879D8FAD6D103998041CB09FAC1618BE83 +:105870009E1EFBC56523C6EBB613078F50127BA592 +:10588000DEB367068291940233EE64CEF03212B436 +:10589000CDC6F6FD914FAD18E76D9F35C0AFCA3547 +:1058A0003B10FB3D6228EF2A0145F6B019B8D5E957 +:1058B000DDCC875C10546ABFC2EF7650756BDB9B02 +:1058C000165521EFF6D6B6B5D601ED77EEA4A03584 +:1058D0007483301568BC136721D1924843C693DCAA +:1058E000213ADB32D02DDF926FE997153E4D88B417 +:1058F000FBE0EAC6DBF6A882072E29292B90746EFE +:10590000DCA5E0EFD4582F3D56350412993E8F3A6E +:105910006F721EF307342DFFF23823D4654DD85132 +:10592000E57BAF531C09916C54996623C7F8B70CFB +:105930008315100ABCCE8E442CD35D744FB01695DF +:10594000F397D4DDDC21A7082EAA3183788E49A1F4 +:1059500022ACAA153790E836E6EDE911231102B51D +:1059600044556A29DA3841B22A85C58E92928872E6 +:10597000E3824DEEAAD1BEE0DAF9BAD8BCEFDD3C45 +:1059800005DEA68887BDFB4D179D1539B5B175C6D7 +:1059900032908D1F70B6E33B2882709A54F91A61D9 +:1059A000FF16EDF540E532BF8835B2D3978C4A80BB +:1059B00005C01B12397E452DB8DF1E9D2D0A2E9184 +:1059C0005B007806D7F9279C1F5CB31AE41829629C +:1059D000A94C9B0E89D74988C2F9C46617B8C5443B +:1059E000BDE1738F7DE59E8922D92B030C81C0B464 +:1059F00093CBD9384BC77939E73AD0018153C104E9 +:105A0000C93252B3E4FD140A8D53D0E17780830E7E +:105A1000A06302C38589CE9E559C09F25987E7EFA2 +:105A20005E71863DF8E36064A80C52627FD3D5BAFC +:105A30008AA21E20CE6873C6BF9F1A55E839421548 +:105A4000C9B63E91B42DEDD2FD112186A9D80A2305 +:105A50004F572A587955D827E227BC446B832D9A93 +:105A6000A282F90CF88BB604733D662BDFA3645F4A +:105A70003CA2599D963B1A638AEE8410BA33D1C773 +:105A8000A17F3260C325B0EDBF977DF5A14F27748C +:105A900020238D41C8F67F3994D87785346846260F +:105AA000B7CCF867B6EABF6ADAB1DAD4156B17E497 +:105AB0004E976CD17733766EA1B188FB781CBD6FA1 +:105AC00099D342966CCFAC3CF05CCF6AE43B87EE56 +:105AD0001818CB06A6EE8F8C35126E0C29E1602BC0 +:105AE000A1E2DECEE9F50F8C94FAD1E1078FD06EFA +:105AF000F68304CACE8EA33A26D0780874C753FE24 +:105B00002E728928BFF641C5FE4FB017160772F6F0 +:105B10007B217897DAFA67B5408F6592ADE1E9B5F8 +:105B2000E96BB67AA1CC52AAEC6DBDC073D1AD259C +:105B30000998423EC52F7FD4C566DC9299A038579C +:105B400003AAED32789DB75C8F0412290BD3440D64 +:105B5000161D29DE76834D8754DC562BD6B672DAB5 +:105B6000FF95CFF0A57CAF7F71525521FDE3ACB519 +:105B70006C145EA7FD88C65956FDC5FB1724324933 +:105B80008C942000C28A6EC4CC50C002B4BBCB64DB +:105B9000124D5FFB1E9C9B14500A9080922E197A26 +:105BA000C4A1607F9B12BBE4C8F347329FFAF67E24 +:105BB0009A49E4F125A300D11A488679C9E287A859 +:105BC000B791B4112B549354458C58F7BBF8E59614 +:105BD000E92F1D9B793E0F078DC073FA63B9D7A5D6 +:105BE0007819748AED0E3AB462C24606BD5365EC6C +:105BF000ED41B02981B4D0B5BE432E0D4E0C0454F6 +:105C00009949AE844930068C23371CF96E6973D1EB +:105C100045F50877E19586B79B907E5DDAE5DC3641 +:105C2000EA0B3D309C2D00BB89ACDD519FF169CA68 +:105C30004AD20EC1255C5AE6E470FAC0781FA190E2 +:105C4000BCBE6B3B699EA8376CE55775028C8B0216 +:105C50005ED536543485C1ACFFD5A20B41244465D2 +:105C60009029586F69DD2BA118A6245725A90696FF +:105C70005161E549963271005474CD914DA1A5D77B +:105C80009392B4F09D31093F453D4B3BB6B6FE378C +:105C900051985A163EB8AC3F143411CD467202DE0C +:105CA0006E72C5AD5AD9342BCBCFE8752DC03B6A87 +:105CB000A5FA58A1FDFEAE2CB54AF14A053A711C71 +:105CC000609A6C5F76754F363D3D04F02AEBF1EB40 +:105CD000F9D5252B230AD2B0BA5E5E06D02AAE3F94 +:105CE000417D9CDC3CFEFF5BEB22739B05DB3C4C67 +:105CF000D21E67BEEE449282493507C929C73FF0DC +:105D00007F60F5D8E21DBA12C5C188AAB2DF351E80 +:105D1000B10525FDBA9873CE66F5A62A07882FCD62 +:105D200059B11FE9F67779812087752723429E6C48 +:105D300061E40631BB4FD044A75D59AFF17400B3A5 +:105D400039DC943CDBC1CF5B70FAB05FB38180A0DB +:105D5000259E1F3D4A48C7E771A0DB8946A595A748 +:105D60006DBE39DB0209B2342F7BC75635B309D17A +:105D70007AE0DCF436C6F0B15F979DF3265F25C666 +:105D8000EFBFA8BA8C7143D9FEA275A33E369C9D85 +:105D900067D3C39EAD2774F821CC0F6C7188687FE0 +:105DA0003BA9AB6348B3FDDAD906D7067E8B402505 +:105DB000E07973100AD642F309D21D882009AB9A04 +:105DC0006615B410537037D590FBF2148F288605F2 +:105DD00010537DE9C19D0C0C132872A4B61B628A76 +:105DE00002C9EA566EBBF98AECA564E32DCB44D315 +:105DF000D6F852AE89584107BFC6A724EDA4E615D0 +:105E00002CCC8F5D1E7262D240D794DDD2B5432573 +:105E1000EC8107035A481945E4B7C3A0E4ABDBE7BC +:105E2000989807562353A6D231CB6F3DF548E37DB2 +:105E30001E008426796DBF6828DB620CEA43F50CEE +:105E400085DF219D59C09789D380DD96B2EE342736 +:105E50003FFB51E5D1C615B2FAF5918EA4B247AA1F +:105E6000A740F2D3AB6B55B7DBFF54EFFA57866D03 +:105E7000EE5DA5CE889E2326F34C9FAD34DAA1A11A +:105E8000C95B0FFC6CA0A1C9E1655383A1CA42772D +:105E90000223B896C85A03FA21C9970120ED146766 +:105EA000599BA24FAEF860495FFCB00C042B4DCD5E +:105EB000272F6D48E0BB030F4ACFDF1DB459E7CF52 +:105EC000905AE32ED5DC254B53FD5EC38BBD8E75FA +:105ED000B349E67F1013BF59015A55CC1130FADA95 +:105EE0009208CFE4D1B754DCDFB9F510FDB7F65016 +:105EF0005B4A654945F42071FE3CB6CCCA2028892E +:105F0000063BE7F01930E1C10DB909FBBE52F0C202 +:105F1000B688AED2E2FADA5F6150408B7FFA301376 +:105F200098D3BE348B99DAE97CC684A59D038BA2F5 +:105F30006C0096AB1F2856DDB0BB0453F14055E210 +:105F400064A6EA532E2C6D04095D73AC805DFEBA25 +:105F500057340E5075F6A3B6BAA90AB138ADE82188 +:105F60005C02D052C3527372F07C7B126221E7470D +:105F7000F51C3ED347A8A40A8F5EDC737849311C18 +:105F800007B86574347600E4981D2C470DA0EE0226 +:105F9000E4248A2C81187E5162B585B52585C29A84 +:105FA000A88F9B5008CD884D1CF46CB5B007E9084C +:105FB0004483EB580DAFD5E1F25F9D29851A067138 +:105FC00050CD7DD78C1A846167386312F1CCED63B4 +:105FD00034234A63E475AA2B7E2E849DB6CD2F6EA2 +:105FE000DB8BE74C33678C862386AA330574278BBB +:105FF000B03C16BF19C54918D9E8361B0C7999BEB3 +:10600000D3E3F2AD8E00ACE547563BFEF6608194DB +:106010003D8716BA8430404426D4F0715EBEFDEB55 +:106020005D99CF31A3CD47C4A2BB554AE97E05D0C7 +:10603000A643CEE20DBC1ADDE7A066B444584BD8A7 +:106040008A124374355BA281A7EA2BF6D34B377CC7 +:10605000F253BD6CDC54D1B6BA8B5A86B1A920A2DA +:10606000948BAC48D29D64F6F00D0E7E9722B762F9 +:1060700039834D4A2D6DB1F55414010074775B05D9 +:106080003237D6601533213A6A70DEFA6E28A5875A +:106090001AA549960A5CC75CA7FB9A19395F59EFA4 +:1060A0001AAAD3877ECAB9DACCE1D857436BAE803F +:1060B00027ADDF820596F68E2AD7CFECE5F0701477 +:1060C0003BABD1471A1F958E153275A67891753066 +:1060D0006A7E52F3767817F8E263BE04FEA545D0D7 +:1060E0004C3091C1C29F29CA3651FDAF2F84296A15 +:1060F000D0580CEAC92143FB0E3D67AD13BDEF74C8 +:10610000A014B86AB879E1217D85BDD005A96CBB22 +:10611000C190AEB687EFA488DCBCEE0E7F52C2F110 +:10612000715AE628BF2618343E24DF6D2170AF3C3B +:106130000AD90D0EA2B5F74081FB51F1D181A0C85B +:1061400000CE20B181664E717C96796FDB470448A2 +:10615000C2142836E150969F0A128EB3537F59B964 +:10616000065DBAD5E32FFFF64000F951651D789F13 +:10617000A6CD25EE264160937ADA17163A7B536D49 +:10618000475F71F4B82DB29B1F76D85A44164CCC99 +:10619000E3BA6137915CDC0640D9E4C13C1EFD5591 +:1061A00013302AD928C33B2DD763527A4BA0994785 +:1061B000E2DB7A2511B9E7E26F85C723F2C4906468 +:1061C00023869FD9EA88B8917B26B97554A0DAC78F +:1061D00048807ADFFEFA986FFD3F568B9079D4FFA6 +:1061E000C38DED6C4CECDD74A92033A6F8B515A673 +:1061F0006876FD303C5F44D7EE25F5D8203896C24E +:1062000088A5336DE08991321BB742C32440AE05A7 +:1062100034A9DD3F0855875FF85BC223A5008930AC +:106220007456BE247670A4767415CD3AEE635CA3E2 +:10623000219FC5A1F179BCBBECDB2B7F165F5EF81B +:10624000CCB741FC323DE85E66E48B27CCF68DF995 +:10625000720E6898B366210E5EE898D5E5EBE70804 +:106260006FAE52B2CB5C5CB5AB8144726310E63C5E +:10627000CE06D5F5D8A31ABEA0B6536106F37F4B60 +:1062800005BC757558E8D0634DDB5B3EFA6630DCC3 +:10629000B92975335D7DB4AF0A2F6D05D9F2C7A852 +:1062A000A847C770EDD8EBA10E754056C51A14CF9C +:1062B0004DD9DADBE990B998D815308F2765546A43 +:1062C00048C71D03CA597D51F0108C4070934FF799 +:1062D00031B0E6A1E30A8383A277A7AEC297EE7E30 +:1062E000FA3DA8AFA98EF41DF2BE8A740A92D912A3 +:1062F000244B3CFEF53DEE2A968D9E3C08EBE35D7B +:106300004B350493037ACD7344B888F43DC2F4CA84 +:10631000AF28D3BED75714169CF8EF810D704E727C +:10632000459217E77227FDF4B82E3081ED19F58DEF +:10633000338694588C4268F8BA0C363AA4EDEFC212 +:10634000B7FD0E726485C35DDA3DA1062C94B52CB1 +:1063500079DEC9DB7FC8C4B84C258E3A43150123CA +:106360003C9AE1A1A1CF22CE290F0DA9FD4AA45C40 +:10637000B0436491394D8B308FA47107FA35A64C28 +:10638000FC47B6CC3E6D73DB9B5FACB4AEEDE93041 +:1063900057EF01B88CF95C629E5AB9FC9F7840A116 +:1063A0005461FAA42F8D30B2AC9298E9B1F556C57C +:1063B0007FEEC6D5B5A1060E5D071C4834FBCDC7E0 +:1063C000BF42076A5922E1132B2D4B2CED1192BAD3 +:1063D000E8C7B946B9E23D390654898B8E8B7F5C9C +:1063E000955C14A9549B09E36136578BC3DC6C3967 +:1063F000A86785A725F1147761B97511659112F425 +:1064000097FA2D2734B982930BA4AE844B34569758 +:10641000C069AED6DB4861E349434EADD00092512E +:10642000EB39697F89798C3B58DAA99A03D122AB81 +:10643000F3C7209D59C9041A564502F341CD820E77 +:106440002E2EE359B60EDC237898D5D7F409F5E162 +:10645000619CFBEB2D0D483107E52A72B55ADA44F1 +:1064600009503394A878EFCE1D706DC954815F47F1 +:1064700075DBB04C5BA49DDB1686301C1932809D09 +:10648000A04796A69CA0B1EC4B81D2E4E7BD027771 +:106490000724BBFA54035733DB7D0281AEDA8C9DAF +:1064A000C1FC15199B8C31F118A2C6C135E1738767 +:1064B0003A8D3E3B6E0BE772A7D56E9A369ED8C7D3 +:1064C0004E28BDB539B8A6143E84A6BBED8B10EBA3 +:1064D00092A5777ACA13DA7253D2FA426E41CFF894 +:1064E00055F4157B282F499786C957BD9EE3184C54 +:1064F00057C979504548506CA4AB810C49815399D8 +:10650000965E49115EBCC443BE9FD37CF22901262E +:106510002C98D3141FE1493D4E884BAEEBEF6B67CF +:10652000AB2E91A5802C98FC643ED0EB6008F4F370 +:10653000E7119BB58A19F60068CA7723E9B736FADE +:106540000883DFC6FB88A23B0C448EC50FC60371CF +:10655000CA5D24936A3F921F7FCB65CF5E0EC9DC74 +:10656000E8C1B61F2C82A7EEEF1B35A3E5BE94044D +:10657000DA7C5952DF7863FD24604BA4365CE986EF +:10658000050567547F4F604A8899578772362D8872 +:1065900017858D6432F7C8FA1BFE1DB2173AC51570 +:1065A000DFF26C30FF96D325C249BD9529C61EE6A1 +:1065B00066DF741676D2BC9A34259B28BF159EFCE4 +:1065C000FF8C0CA132BC210A3C6C831AB12FECCF9A +:1065D000E5DAD309C02319F76C0F1C41761CF1943E +:1065E00003F312DAC9122C28294D1DB42E729BEE2A +:1065F000BF144D73C4107A3259DB534974CB818573 +:106600001AA862B073182DD71694F80237AB3C94D1 +:10661000252578164B8B505268E7929E24D78B4DD8 +:106620002D09B78A800C84916F5F9D0D56DA64C581 +:106630002E2AC7D0A916BFFA6BB8AF41FCD21E00F4 +:10664000E89C28F0BB773A591E8356E407E80F61AF +:10665000BB7BE92EF0BE4EACE4838C7C4BFF8D2DD2 +:10666000580F52CAAF21B9E7B603AA16A5C1B87D23 +:1066700041878368B0BFB890345A4A97AD553E4CB5 +:1066800086E191E47AF7F7D8D5FC4D94198775A087 +:10669000C3275D8A8C9E1844C07BB1A047A45FBE0F +:1066A0004A68E9D982124443E646501E469468F788 +:1066B0008486E18A1A065B9C6B17D10EF9A0FC86D2 +:1066C000CB87610DEF662DB4C1AEA54F0938E597B4 +:1066D00062C9E4833340DA5E2D5C281D4B0F43E032 +:1066E000170C885C391D69A745A59487AB0AA80DCE +:1066F0004DD2C01FD22E1CD668F2B5D78BC2161F42 +:10670000C0BA184FBDAB657F4E5CA1CC332CB7CB64 +:1067100094B9172C68ACEF081BD205667F0E26EAE9 +:106720002AC78E96F31BCA1ACB7E35C92F3D1B2E66 +:10673000F7C043294402BBB31F6FBAC7BCA51442BC +:10674000652D326A52289D40D96B6C2C07EF67206B +:1067500094D956AADCFD4E9D32AAD8E4B9823F0AEC +:1067600083C5C6BE695542D1FCED81C1A91187AC74 +:1067700065A14D266A135799E26A8FE3BE76F17FD1 +:10678000A2852AA2221E806F7CAEF0CD6C43D788F2 +:10679000DBBC1F935117BA7C08A96BED9F57BD9DB9 +:1067A000DAAB991841413F6B03C67C7FD1788FCB20 +:1067B0007E5D10F4523E577392FC6A84EF730ECFE5 +:1067C0003B6F9DECB634FB1A107D05BDEE43048291 +:1067D0004FB656A5669C796323ECE19D172A28C91C +:1067E00094003357733DEDDC9F9BC4A9532006559D +:1067F000626A42661673E9872B6D68F69D476AECFC +:106800003997D9CE0E0B850D6E87ACAB777EF5929E +:10681000E6241DF274A02C6AF1DC8F8628776AD5F5 +:106820002032E8FE5DAEF6B6F729748F27768557DD +:106830004B40339D795969EF10896615170DF801A2 +:10684000A8CC93DB03008F5F803F9523200248583C +:106850004FFDD2F8B9307775DF0D32A8D9F825EFA2 +:106860003990BBB51E6559229068D90B39A001FC3F +:106870006F9A2105295870ED78D29BB8E09B05727C +:10688000369E696FF46010502EBAB42B665C0E729F +:10689000E64C267856FE2BC0E450EA52914F33EA7C +:1068A000B7238E0EE65AFC5FBD41C78E3EAEA501F2 +:1068B000F0E347583932322655229323E26DE3F64E +:1068C00049FF69CCD5F3046AEFA9F5B95EE39D2FC2 +:1068D0002849F92021371D5EF7FE4342E5EFD25EDD +:1068E000B177359D937ED341D8001205240939DC58 +:1068F0005D08CBD94C9BCE51FDE46A5B5243CD2D54 +:10690000D11804D237F4E61B8C1C952D2FACABE3C9 +:10691000045AC3FAB0CF7F1D0655B8A760BCB3A90F +:106920007B47ADF10F14568156A272B1C4949364A3 +:10693000EE134AF1180B3B82BA6AA67ADFA9383DFA +:10694000B5DF1147A7841F03584E5E6516CA72084B +:10695000F6CDA331FE52A95B5AB718796EA3086F22 +:106960005D6C27D2D54D5A0E88FAFFF1E4F951F04B +:106970005A8C9A8EA934BCBE24A0A33D31F354CEC8 +:1069800061006452C67552F1C971C800F558457A64 +:10699000CC03348CEC9769943C8550EFD046476625 +:1069A000698D2DA9DBF45498258AA698A706AE1503 +:1069B0007675AB8A237CABC9D9E1091CC6D5EBFB44 +:1069C000993F8FAE377902D3F8D11AAB934317BEF4 +:1069D000BEF3E8BA3628BB63AFDEBC5BB84D82B706 +:1069E0005994E6BF3A31FE124B98647DA711A76215 +:1069F000BEBCED1CE7EBFFAD4A319C8A33951BB55D +:106A00009949486E00F00E878C87D6F226D66E4FD5 +:106A1000E94529C610ECE7BFFBCB6290D459715908 +:106A2000EE183A447736D26F546F1A55E60DCD44BE +:106A30008EEA8A6F964C2D59B16F876A8CE685AFC6 +:106A400037B3D9F8979FB09AF7B23CF80D0858B50C +:106A500028F62A66919AA5BD6B237EE02EEBB1390C +:106A6000B7626F1444702CE9A4C9B80DAECD7E197D +:106A7000641A996698C5B3EA475377C5907ABF51AF +:106A80003058712D2904657B0504C06F23083ED35F +:106A9000329BA3755B6C6938D8973F6BF49CCE270B +:106AA00044642962E5635FB22581724E7C2AD40278 +:106AB00011474834CF8CD89850828FBBF50166DAE5 +:106AC000A57686E8BE22FB494B954F65571D2223CC +:106AD000A3849A4DB7531EBA8384E9850C477E4040 +:106AE00083708B9219EF90E3308804FC013E32FBF7 +:106AF0009F27340E1F735AEFCA50C2ED88B2EF348D +:106B0000C99B71C2222F4FEA6D81ED9F16AD1D32D8 +:106B10005995C6B8EEE87473F4D70264C262CEEC3D +:106B200048023798D5CC97B912FF1D79D9E2DDC755 +:106B300081D9E922D08F3F2AA53B0CF603B8AAA23F +:106B400044EF46D93DE6600699D410A715608EF54E +:106B500002DD9154B0252830B2B95925D4981E05CC +:106B60003E138906E39270FB1EDE2030B69AA8F52C +:106B7000CF05B9EEB81AE0FD6D8C2C6EBEF98C23F2 +:106B80000311C696FD99F9D0C9AD0B381B1094CBF3 +:106B9000F39F8D59700FDFD2A9A39418490A0EBA3A +:106BA0000A1F26052FA4BF6E0EBE2665C0F92FE072 +:106BB0004F719B819447059719EEBC963E1D7DE26F +:106BC0006CCC9DCDF7C975608605CC20D818AB502C +:106BD000DE2DD8F0290BC6939FE6AAF5CEFF662BD3 +:106BE000DAC5F38213E647924FC8C35826D4E4852A +:106BF000A6B81D27C4CE41FB1091F3DA15731F9E72 +:106C00002201F5B1F5941A3C39C1BF7D4B863D0E8A +:106C10002E9A826C939368AFC223597FB5943E1F1E +:106C2000BF4FEC883508AEED82AC3C52882B2A8BE6 +:106C3000D7C83C9C2C82A4647BC6DE0B1F167D3714 +:106C40004878E013744409847659100999B1EF2506 +:106C50003173FCB1685DC8699372E0CCE5B4F8EBC0 +:106C6000F5B40725421FD3F756461049655D2B172B +:106C7000CFAA74CB5610C0F97E08BE796D1CBAC479 +:106C80006BBA86DE99489CD12E97DA4284E24C6E2C +:106C900015C3491968815ABA453371670612BB5A40 +:106CA0005375053259EF4166F77009F22A550639D6 +:106CB000436908CFD9683080493F43CF596907FEFF +:106CC00050EC2B57D599FCA0203FB3E30C25EC9357 +:106CD00014F1DA5149C1DC171AE05E396F3B8FB805 +:106CE00030D6C2BC70064ED2DA9285036FA98732C5 +:106CF00000CDD2D546B6831E1FBF9017C1AF7F7E91 +:106D0000E2BB31CA8E3626E153F76A3B3502A18DCC +:106D10003CBD1F03F758ADEC5BBACFD88102028EA1 +:106D2000E36DBA94D3A0CE0D0BBECA4FA91C7AABAB +:106D3000F6DB77730FB8A1C8C24C724FDCBDFE51B1 +:106D40000458C51602AD2FA52479996D7FA4E7DDFF +:106D5000AA08F2AE349FF3DD041DC01507ABAC6288 +:106D60001FE3FF9AB72D1239E4CEC7C3065176430D +:106D700021B3525F1B70FF47A6DA5D0CBEE7177A9E +:106D80007E2D3C581B0F59291C6344E5CBFAC1B03A +:106D9000D72F0C88D5D1FCBF63D607C9363896BF2C +:106DA00082A9EF2957973CB566602843AB0EF84996 +:106DB000AE5255BDDA581F4AD3E80644C2C27D6AB6 +:106DC000ABA946B3A2AB6BF184E1813348284AB149 +:106DD000F885E9C631CD8E322FF50463B00A3475DB +:106DE0001304997E933B5EA6FD6079FEAB25259446 +:106DF000274AC11BE6D35F890BB1DBE8EB6D560C6C +:106E0000B6C4DA9F2D873A7FFA6675B16D9BF7336A +:106E1000A96CB36D667EBBB3F84449D627B893E23C +:106E20001C4C028CB407B7254E6A6BA89C5A9A6E0C +:106E300088FF7BF47FBE4C8DCD499CC9E233A34FC4 +:106E40001E7A2F6E759DEEB2F01C53E5AF7ABA1E16 +:106E5000853F98772717609705ACA4FDF4B3863D6E +:106E6000E9A9D68165934C9155AACA9F1BBCFCFE2B +:106E700016D10CF0CDB0E8FF7EAC1FB0DE06304975 +:106E80001AA2C059067F54469349FB1B98AF7FB6A0 +:106E900096D05D8B7450F67EB7977976ADDBCD9842 +:106EA000D5AF870C2EFEC4FBDB18D4B247CA7131B4 +:106EB00091E9BD971812E7E4DFEB285DD25059FF46 +:106EC000CC03E040428B2595F58FCFBB6B080BA719 +:106ED0000DD20D69A5670815F98232B65151E42F1C +:106EE000DADDD1A9580A5A646E83CC395907E3FF19 +:106EF000296AF473744B28BFD845A554D4AB8BDDF5 +:106F0000D0097E792AD72139DA1D78730CE8378DBC +:106F10005A87C46EFC87862A570DC7927DE854C8ED +:106F2000BE36A05B5F378ABF5473FE6E23D008DD88 +:106F3000499484C7E07D004B017DBE3CC35C670182 +:106F4000762E17DDD54D81BDF329AA8A59E25A8ED6 +:106F500098D9A66A69B516AF50A61BB7AB46D999A2 +:106F6000A3E2E91A61DE9D51FEA1CF14B823F1BF5F +:106F700010215A8BF9DAB6FA21779686E73BDCBD09 +:106F80003259AD4F71DECC8F92E7D47B4FF57FB491 +:106F90004C3284D83D44F8660BF9E7B343E49F4094 +:106FA0009EB4CBF28180693C4718F8907799782A93 +:106FB000B499EEBA96468CC3B81B7A0ABC60B67018 +:106FC00028EFD3FF9B7C65F4D05535DCE4340D2EDF +:106FD0006198E2488867C74D9C0B0142D16F2CF540 +:106FE0002AADF8BFB5FF3FDB1A143F88EDBAB706EC +:106FF0007FF48D1D0B2B642E8CD2B7FB5109A0782A +:107000006F026EE56181C940BB50861EB557EAC666 +:10701000A9E62658F819237330074F99B8A602BA83 +:1070200054D3007067F29880CC3BA94FFF8A289315 +:10703000FA22614DCA13BCA267F555E42533F7BCAB +:10704000725E90331AC546ADD56086312147310155 +:107050003F68C867F7A6AD9BFFD94BD17540493053 +:10706000DF918A1E70106A4D8E1EA787B47BCEE317 +:10707000EA7438DACC6C64E1695A358E33A44A710B +:10708000461B1D3DCD4E3E4E076FEBC8690EBBFD46 +:10709000C4696F88C71DEB94ED6FE9B278971B4BFD +:1070A000EBFDD2AC079C219A23B71B5ED7FA112ABD +:1070B000873D94C1B6BA9CA2AC1D22D217A7D6F8C0 +:1070C000D35D8613F97655B4AD3296A227CF4FF72C +:1070D000A5F47E6A5D9D3B5ED9605D92FC00F27E08 +:1070E00028286F8BCC6BCDC60FE71B39D7DDBE6C64 +:1070F00013043757A51941828940DC9AD56A645F29 +:10710000B209FE12496A6EBF9A6A7DD7D246E7B8C5 +:107110003C5D2CE76B3BBAA4B040A8F7E8C0C208BE +:10712000EA324F93BF3B2C1CE78F310E36B437F257 +:107130002777EE9E48263886F150A8D927DD9DF5A1 +:107140002FA66C1FD70848F1AF0C7605F42777A758 +:10715000FE100505C9A18DA3FBD29DC0A0EA520572 +:10716000AAF953AF298E24E41882C0A11589E795A6 +:107170002257E846AFB94611863881041EE7231E20 +:10718000ED7F144AA128C43D77CB884BBA926A6B35 +:10719000496BCFB9EC9EBB288FBBD155C7E19F632C +:1071A0004BDCEFBF2625EB7ECF3027B871618EE335 +:1071B000C9F7F9CF12A9F5AEDDD670AE200AA0A6A8 +:1071C0008E9C3A271A68096AE2CCA276DC9EF268A5 +:1071D00009D735546A71B977A1812DDD5C645FD11F +:1071E00025AF36D89E43F5D0B448500ADF669C27B9 +:1071F000403F8A048D42A94775FEF37F12E4CC6BB1 +:107200007410E2E4287B34E68741BD97EC3A1DDE3A +:107210006513BF3F42E858251DDEAF66BC935B0097 +:1072200055810569E3231BF49928146EE98A0559F1 +:1072300050FE8B5B4F3CAC48A8DF761470AB04006B +:107240000F0926A1E7FA6792448461275E8A2BBA68 +:1072500027EA3D26B2269949A6DE7DAF2CDF5EB631 +:107260001AB9D4172CFA4FDF754BC6B8C860341C56 +:10727000516634F8BFB36BAA2E2F7BACC274E4D036 +:107280002F96BA732DB73859D1BFD14C3BCF764D1D +:10729000D2A85BC8FEAA29A71CC13E00E58A9ADDD8 +:1072A000F68268C131362187BEA798E97F0DFD16A9 +:1072B000AA2AF211874C46B736FBFDA71D540FB61C +:1072C000654E4F564819ABB9BAC4A5C494F1BB3545 +:1072D0001B4D71A11EE8F0FF73373EEE55C300D37E +:1072E000E3FCC9CA3F226A535B82768381811A58C4 +:1072F00067850A4A05D3CDCC683B0CC78219C2FC0E +:107300003430A6D8BB4596C22D9C9E41BBCD4509C5 +:10731000AF0FAC785408018D553D5FF0695728D701 +:10732000CFFACDEB66FEA3D99D9257190C5F738DF2 +:10733000586235EC24687DE6D2BBC33BF95B9716F7 +:10734000B30F1603361E30FEED4BD190E4403CBA2D +:10735000F7E91417D9346FEDD7238D89F842B95165 +:107360001B20A1B1F084115009D4B2D67F4396906E +:1073700028E00063EE19072A092132E4D5642D4480 +:107380006042958C41608D2EFA2CF49AE13C3F10BE +:10739000C8B7403092CB0A3F79D882FBB1B95AA422 +:1073A0007B31081416FCF4A7A549AA69A35CF22C4A +:1073B0000861E71BB8DC07EA9CF71D00EF915B0A48 +:1073C000D93C422880B9781A0A8BA89F483C685655 +:1073D00076B6F5422D5210916B622357ADA0F5DEC3 +:1073E0003AA5766FC4EA37E1B59CE8CE51D0598909 +:1073F000530BC65DCB27C7D0535374C251471AB73E +:107400002F2CA66138A0DE64287A1102AA1788D32F +:107410002CEDD082F1F2DCD68D7693C31F97331B0F +:107420003F8BBAF182F2F9046BCC34F946F468FC74 +:107430001902190FEC668405B0BFEF985913F1D506 +:10744000D84E3D45075739AB97C355669D1DD02F84 +:10745000EE51F05FAF6F3C87BDD4712312304564AD +:10746000159B99F0FC85E11AF2E1AFBDF4F8268A8C +:107470007EB68A39C775BD4591BEEF63B4E5FC455C +:10748000163C8D1031C63F24FF913CF0A50C37C14E +:107490004FEE1A872D7CFCBCF6529AEA28359C5E8A +:1074A00055BE64FC81F39296CF7DD7A44E0C5AF161 +:1074B000522F87D0B820F7CF5DCFAFFACD8A57DDF6 +:1074C000FB12DE7089776A34BFBDFFE40B0FCC7D01 +:1074D0003A0EBB97DD9BF8F521AAF200F8B1EC0A51 +:1074E0004F406EC4B2F5D4EF915E047CF694379BA6 +:1074F0008F20DE54C5DEA42B0C0B9E93FB02F907F4 +:107500004C07E2C174B3369B3CD77CF0B2AC141488 +:10751000A331271691AE7379A1948800CA1B015339 +:107520006C38E36E9DDF9718EFA2F3B00DE4BA0F4D +:10753000F2E87CD73D4581065E966DF14DD899986D +:10754000AEBD933EA8AA32CF27E0528568EB0DA5C9 +:10755000009173995E85185ADA4A3D8F18E34DB948 +:10756000D20A54B7B88F4387E62439FB852EE2EF61 +:10757000162DDC86D0C50E19FDD092880865DABBC1 +:10758000F1A06DCE78601506CEAC3AE3201D1B73DA +:10759000814D27109073CB2AB421B6469DD67FC566 +:1075A0005E00D383B6D86245DA4739A1273F00543D +:1075B000C927641A74F4FE60E4164D6806D99A620D +:1075C00036603B3CD18D663139C12692B646F28396 +:1075D0004FB295D14874E69638C4A6856BF6E71B82 +:1075E0008CA9DFE6C87B292983E7D91F3104F0770E +:1075F000BA64EA1521937D8F0D6992F78EDD99AA01 +:107600007F0B881A8792883D3792CA7CD3CC22FBA5 +:10761000866DA227C0A79965FD77D877E6EB23BDD5 +:10762000A2FC29E0600C518F52CE6BC82D2690131E +:107630006390868E2DEE5FA487123702C4EB5FB98C +:10764000B5552F1AA4CA0EF8EB0A2DC7163DABF993 +:10765000EF937A71E3E18649DA1C0BB65106DFA994 +:10766000B65A52C380A6637502C8A348C39D59C1C8 +:107670004BE4516F4DBAC2F9A6A9826CCFF19E7A44 +:107680005C08226BBD6FDDE36DB6C370F46E1D9EAA +:10769000AC56BA50E7A7F07213E05793ECD2CCC9BE +:1076A000A46BF6A81EEC97A97EDFE0ABFA05EB49C8 +:1076B000F8B49822C9A8B6CF545639275C884887B1 +:1076C000C2DC864490CD6E7FF058C2F045C3FF5CAB +:1076D000D1ECC2A931EF38B96C2C5078BC21F9DB60 +:1076E000C547FEF0720C98301DF4EC1F962A19075E +:1076F00029F29F73D838DD5647A04011C1B3017CF1 +:107700009216EA0CBCC5E250532600EC0B6C8E6D51 +:1077100042D0EEB658B9EF89437E65DB842556DA50 +:10772000B38482335806703B0679E2E8C50EFBA1AC +:10773000FC51B5579F0C59C0E1B1172D5FD5286397 +:10774000E50E5ADA72691228AE4A3056F77F0B1AE4 +:10775000E769C8BC63CE52F19997BA4E69DACF9403 +:10776000D86AE43C99D5C4376ECDF2607ABCAFEAF2 +:1077700009EEC4B9834D936B7657CE2BB8F716E359 +:107780008510C3CC51092A0134A75D343B178EEE16 +:107790002EA4A23F06B196FA40EB5B4891842B9D44 +:1077A000F4E3AD4B650E10A6EFF9392ED0D21FE2EF +:1077B00064A89BFA06A0ABED60F2C7F56CBB3B3446 +:1077C00021AD933D068159C251F7C757B65D4AFCBA +:1077D000219DB1E1CA0D2CF89F4B8BECB17508715E +:1077E0001E0D4417C7202BB9FCE72955D2006C1C8D +:1077F0004B077F82739AB331E507366DE8D1458533 +:1078000095C27C70884DCECAC6E22D4BD35F189DC1 +:1078100015FE0619AE45684BA23F841235DFD7141A +:107820001F12C445C9BBD1D09B319AD1B5CFB10786 +:1078300058BC81A081F9BC676AEEDB574E117E12FD +:1078400034DA913B997BC6A06EC8902A10B24EC420 +:107850007F622DEF6B7C9ABC10042D80F88F5A71DB +:10786000244D8D7A7BF7DDB000ABFA9F81DE766820 +:107870000BC27715346AF0A18DC49CF5876CF7B103 +:107880005EE0D5B6A6A2379487ABE5E479ACED0708 +:107890007341B3CB8CB6AC4568883E1D63C288E3A8 +:1078A0005C34ECC3A7E6B69C7569D709143F68053C +:1078B0009B3287321B9FA8F61CFAD71BCB11A5520F +:1078C000E031DA912AD570855B10D86E9DFB04DD1E +:1078D000FA4FEB24B0A229B2343AFC8CA1805E7D31 +:1078E0007A86767878C63CE1C728E8F2BFD72B6560 +:1078F000A68A248B24A790FB88726040E6236667E3 +:1079000098E71EE2912994E1E0969228C85C1E65F2 +:10791000E8C1FE4988B7BA017BD58D40627CBA4B7D +:10792000D8F3C7FE7A821C5B89F398D4E8B9B0B16A +:10793000F2817D39A9237594EC626D2A34EA777F50 +:107940009B1D345EC4D661861E431E416A6B1DF8C2 +:10795000CDE7539071536CCA5F3F925266362EEC5E +:1079600029F0475C285DD69DE19904C45B27E53387 +:107970002EE56C589DF2E7A1D3204A63385A2206BF +:107980009F44F4863A711C3D746727D266231E21FA +:107990005222580F0E2179CD04A984C23479F9F20C +:1079A00036CEF6EA1E1DC48BD62395C1B2DAA39D4E +:1079B00037169FA7C0E98220C3C8A9BD381C792DFE +:1079C0007B6D90D42D2570A6AB88A6F0D7996867FB +:1079D000D22049C4E127264400F16DCA2361258ED7 +:1079E000A595D7356530AEEEA7EBF0AE06503E7AE2 +:1079F0009FFAB3906BAB1331CDDCA4BFD5175AD827 +:107A000054B68288446EDCB86970F7C7323B86BCD6 +:107A1000B9E3F9A6B481449FAC72B3A5E43E60CD4E +:107A20002E8D764E2828C8A5CEC9D26DCD32DC4029 +:107A3000C8C3B342D9E7E5C2C2F2B7D8F5AFE796FB +:107A4000AA9F52DF3CBE85CA57A34928DA3D91F16F +:107A50002CE3D20436C45CEA2575A30ACCB9934161 +:107A6000838C07C526E039070E3D5E1E220DB62227 +:107A7000D8D0B888C462A4E7E5EED0869C947C1583 +:107A800095C90D8869601FE593B48F919FF462B723 +:107A9000378C6C0F54BDBCC17671EB39D173057650 +:107AA0008E158245649F40FD8A89D633E3D3166ADA +:107AB000E350C433531988E11114D5D523487AC94A +:107AC000C6A54A14E670A90EF45081B416FAE9D49A +:107AD000A5A1A4BDB59FB6D2AB26381B57345770AD +:107AE00022A6EF079198F020E72AF8B7A55DD67493 +:107AF0009E35B48C7CF1A25A75A31728A3EA7D5752 +:107B0000F4E7B0114A4F2F1CDFA168655417CDA0D0 +:107B1000A7093E6D36957A58C425BAA74394F473E5 +:107B200045E18A27FD6E6F90C04CD21F436B6D24D8 +:107B30002883C5A7C9061A0CD0BFE9F2A7BEE1C1C8 +:107B400049E7CCDB9596649BFD2CB876C43CDBE919 +:107B5000327D8B3D1D2AC4D0B59F6EFE08191DA530 +:107B6000408A344AE9ECB2AE2AE511FC804210DFCB +:107B70000623AE95EA725A3106D239299589B0D2D8 +:107B80006F50BFF39FC58300633CE29CBA7A476D98 +:107B9000B92E3B2931F729EE0AF8DDE8206DD6DA57 +:107BA000AD0446C2D97F99F39748C1D47A61554A4A +:107BB000A63BA23BAE1D6A7CF99CE976DBD59E37DD +:107BC000E41DB52E2A4785DABB7B48021347B0B1C6 +:107BD0003A00429D26AE01670031D6B673BEFBAFB8 +:107BE000816FACFA1770653163A65FDE1A28C9434E +:107BF00019D23BD6B0E2D1E3ACF58901D270291B92 +:107C00003607E4EE5EC8060D65EA06BAF4161AF306 +:107C10003808AD43C42274F32BC9FAD759716647AB +:107C20003B3C348F92F4D4CF69A2184F90F2784D38 +:107C30003B605C86AAC52473D23BFF2EA84866BA77 +:107C4000FAC582244DF4E68A3788D1D6988E8016FC +:107C5000E85BC50E1BA3DFF0748260EED069A4CA96 +:107C6000ADB9E83910F0C6F12D796B898086D2F371 +:107C700041E189F909E327FC44E513B17FC6F59298 +:107C8000C4746E52B0F44098BE47844AC98161FF03 +:107C9000665432A44CAFE5F551E70DB69E7C84E8FE +:107CA00065CBD8904FF49BC3A0975D6454E356E92D +:107CB000A1322F5718EB3425BE2A63319D852E99AA +:107CC00010E61D10B99BD085DA30CFEFE885DD9C3A +:107CD000583A2B7AEAC1F9DE3DF5E82FFF89BE6CF0 +:107CE000E996B8923C65AE93BBACDDAD276EA1477B +:107CF0003E7E0358B4F82E3ABB7ED6C7CFF6FA2E96 +:107D0000DA2D37068D8E3786C953F5F75A657BBC59 +:107D1000E2C6EF08DDAA7612C14EBCDC66F1DA0BD2 +:107D2000EED5F3888F02BFE78C74710C3A23B3D67B +:107D3000368786E78519FD786AF9538EC4DE7D3A69 +:107D4000F4459CD48EB7C64C5BC288D81BD09C78B7 +:107D50003EF6DD22654C1F5990CEA90022ED98B960 +:107D6000E9C7BA7D873BFD485669AF5D912EAC9D52 +:107D70009F6A81FB6282436B657BC42A9118D41F82 +:107D800062A73E70688BA229BFC3D632965D275D7D +:107D90007F8121D19E6EF6744735931302B70E6929 +:107DA0002F5B45676DAB10D8D5883F502D9BFC7875 +:107DB000B69ABBCCE6D3BACBDF89A39143883E7E8B +:107DC000D10F0254EAA13A6548D1A79F7CC4A64BC3 +:107DD000E72BAFFDA1AD264F6BAE10571A9426DCF2 +:107DE0004EB91571F99FEA69F1E5F7E55E0591A1D4 +:107DF000B2FBB2471CDC1664C8548271B05F023A11 +:107E0000DA0F43B672FEBFA2AEE6B350BA27D49ED5 +:107E1000B153AE97D66C608E6A92C5D5DF258ED9E8 +:107E2000D44E9D2F6A99D6D648A779B4B0BC234DBD +:107E30006E5A918EF101B2A0130756FDA2313E0297 +:107E400034C9E1E70C35CCE1E382597E061FF62404 +:107E500091C688748A3B82D70AC5777F03CABA3530 +:107E600042BC47FBDDECDE062F6D80208D9029DEC5 +:107E7000FD7F3540979D51889AB4C1E2E6CE39998D +:107E800008DEC13BD7AA735CF817D6EBD32EE8F90E +:107E90004D86BEEC24CD657A7A15ECF19D12B8F9C9 +:107EA0008FB76AC0E7408535570BA9B322270C81ED +:107EB000A1D5C8D2941F72743980929FD8F0829A4B +:107EC000D6BB9CC04FD2021008CB3CE685E7888920 +:107ED00047326F94E5F068613C9B46782A0E8A2B06 +:107EE00057CA4C7B5F7BF298864B598A7E872AE47F +:107EF000C4C0CFD37F93C07ADC3A4AD36C8254C7D4 +:107F0000F36632A4C8963154C5B53CDAAAAE6F9D6B +:107F1000AA634D39FED3D19F2DD262C6B8A4124DAB +:107F20002AC48A40E4116EFD9C7135149802E45312 +:107F30009642E8966B70A753A4A90C4A81FC073AB5 +:107F4000FA7F6477A4057E8AF126F3362E1CA2AC54 +:107F500051A11BCA17B91D9EAADACD468BFEB58169 +:107F60000FA2B0EBA1192D16DF79477F693CADB5A3 +:107F70006F125F53717DB70289B751A72BBB2D7765 +:107F8000B456886E5328F707FB4ABCB5E7F010E1FA +:107F9000EE1F40E8F6D59C72EF037996A8EC17C85F +:107FA000F3B84457BF8F66004910926FFF2058E91D +:107FB0004C817AF931AE300517B794B56B82865390 +:107FC000D184EF1300E0492D53BFB66A28B120E3F6 +:107FD000DD0EC257EAEEA74D1E3056EB8EA5FEA170 +:107FE00040CB768A46B4F73CDF418BF1ADE992A3F2 +:107FF000023927FFA43B06E651CF383CCF576DA589 +:108000001ACC3F574D127662A4F337716D0FEB20F7 +:1080100096455AC423A6D9A17305126547E7753F53 +:108020003306FF7F66FAA511A74DE715D64ACE3A6B +:108030006B4435FC4C994F3B15DFFDD08DF3E8B612 +:1080400041F06B676CB70672DCD3DBB9F89815A00A +:10805000ACCAFD61049CF4537DB845D9EEE6AEBED2 +:108060006650840E844DF2D34A089DFF623500E2CB +:10807000D8B69F5BF3EC3DD6CDF9408B5AD455CBA7 +:1080800025AD0857A61A3848BFFD227F6D00A59E72 +:108090003F3A4A494AF255C7F00880672979ABC28E +:1080A000CA878EB67F7F8B343981E0A0F4696C2358 +:1080B0006774E93C7F4910AB539958830B254312F1 +:1080C000B0FAB0E6AE5C99165DA18AAEB0F66C145B +:1080D0005C8EF9E9C9DF5F069F6D3FD6DD7DEAFC66 +:1080E00083C1CDEC6818677F4F2AFF4230D10B6007 +:1080F000977FADCA3B7D96EA156CDAB5EF36FE4444 +:10810000E7EEA8A09D25F194AD36A740E0E3279ABD +:1081100030B2216782141672B3F96A9E578921EA38 +:108120007AEEEAE32B890CEFCF84D8F1AD1EB87953 +:108130005C7D7138A07060A0E877ECEF0F01663EBF +:10814000D1B9428F8625249BADB4405E387E87BB73 +:10815000780FE20D4444FE9833102D35698377A4DF +:108160001C53ED7308DBBD830D15EE3C96A304088C +:10817000E62CF8EB4A2E9CE2B0501013F6AAABC4E2 +:108180007C3EBA833375026D1E489025A350E15E94 +:1081900008429C7DEF80CC2D5C2D7E7E72179F1651 +:1081A000CA7A78FAC5361F009A3665E94A4726B179 +:1081B000B5C5B6855B7179019824AC6FA1C707542A +:1081C00088366D1507EE70A01C62428B5B55E593F7 +:1081D000439E3C2667067E6F8C74B55857B2FB747D +:1081E0003523704F923132CFAC091B0CD90DBD969F +:1081F0004C1B65F96E4BE1D402F21E645CE760042F +:108200008C507A986FFD005BDEF20AE53E31943FB8 +:108210003390392C4A8C0D3B10D6261C02A4B8434F +:108220005E7B57BAC505A1D8337018F5F603A07167 +:10823000D162AB8A0002905F925BCC38D036C8CD59 +:10824000445479D54337B8B845D4EC6C20B1C53A1D +:10825000604FFF4E17C5031B9427C7BDF995E0C0BB +:1082600001043CAAE20EC57DDCCE24BC1385A9C95D +:108270002A891A7469E07497C6357D2134F284DD49 +:1082800062DDA25C32482D0C509097CDAD753FBB9E +:1082900086B667D8ADEC439E152632230AF747A26F +:1082A000652A46069BCC76971A312609BA242714EC +:1082B0009D648FD5EA3361F2FCC36914C9BF0C1DFC +:1082C0002AC67FF4C551AA43C326CE8BECBABC554F +:1082D00054B3B2DE929CE94C49D87AE4CF0939B65E +:1082E0004BBF8F5B9C4E5C5B354F9C9BE99F1DEAAF +:1082F0002F402B74F593DFD5FAB47FB1066539A012 +:108300000DBBDD8FBE7FA046A4ED666784746BD184 +:10831000DFB896157E59047D491BF8978E835E8ED3 +:108320002CEBDBEEE2592DB513AC99C30BE163A541 +:108330009088F8DE7D12F42396FBCCA8328CE40200 +:1083400078F5407BAF1BE235EE762C2DAA7EE0302F +:108350002D3ED1597D8FD36EA43B984D1B7437FEB3 +:10836000495AD7366C406252B3D18F8E3FC830B075 +:1083700064831F90DF89DCDB49B58EEDB613A8E47A +:108380009D5A8A768BFE2F1D092651543E39297538 +:10839000272F1F4CB3589BD58F6D0BA642D18262FD +:1083A000A7F2B3244FB46186EC07804A47FC2C9FA8 +:1083B000FFFE37223E2F0F473A14BDB58D7FD7FB06 +:1083C000A4A2CD373A86B4691E72ACA1E857FD6C01 +:1083D000E65CD5CB473AFA49C1F58F7647E87B058D +:1083E00057245B816F2B7A355BC29B144F7467A354 +:1083F000FD089A3776076A88E3266897F16FA70B1E +:1084000071950DA8B256C6D589B5C6637C09C6015B +:108410006995728D4CD0998CFC7A2449E0A5F93588 +:10842000C6D6D49AE455943FF830474A5F021F04F9 +:1084300082E0BFE8F873E42E1D1D6E77B463BA9531 +:1084400042BF519F32402F5E37EF4DC8ED8DABECF0 +:108450000CADDCE26A11F1D9CCB05C769CC57DFC38 +:10846000EFA9C3CE981248DD3504629C616FA55A0E +:108470008F869828E29151633C9162B78B0FB52F9C +:1084800037E2F5B4831842AED639E3B2459A0D5DB2 +:108490009B8293EC26644C24CFE66B1951D8AB7FBA +:1084A0007BFC198DE960871540D555B00FC3DB4DB6 +:1084B000790EC698B2A319D95A851B79864A4723E3 +:1084C000E74608EBC9F796298FDA0BB93A55005001 +:1084D000A0745047B8DC7C0EB139FC59B73FD07D51 +:1084E000914821630729104D33F141DBA5DBBC0D19 +:1084F0007DA5B1F8F2F12787842626077D5D8EF4ED +:108500008F1BCBC35432D571AFBEE3435ED2E11CA7 +:1085100033A9C2FEC4E7FAFAA3AF0A73CC9A0435B2 +:10852000124B35492CFABB8D10CC2C63FCA67581FF +:108530004F0AB4D8014D2032CEC9B6A3C11084C6AB +:10854000757E9AAFFD41C1E6CC37E70704B4D1D6BA +:1085500052B81A925679C4FAD19377AD973F2F96B5 +:108560009C2960BDEB248922E9F5E3B6FA94125107 +:10857000A9EBA42EE3FADD6BB083E488CCA270CD26 +:10858000B05CAC95D8CC58F14D8E109ABC7E11EDF4 +:108590006387D4A6F528142CEF01859A1BC773199D +:1085A000A48C30BAEBE751ACAC2D89DC0E9F90FB6C +:1085B000DD33656323628A05B837DDBE9A3DE1C5C8 +:1085C000A703C3C5F34BE9F5166C5ACEAB28204A76 +:1085D0002F2AACA4FD3AE8A7914D62409973C331AC +:1085E00007704D2B2D672991E486318D220E6F93F4 +:1085F000F34826AA0A674358C33F7D980FC119ADB7 +:10860000965AA1C584799B24A3EE10D1684CEBF453 +:1086100093E5517AB1234650969104280172A7BD83 +:10862000779D04248DD2164B66CB2B2E5B9C440C7D +:108630003597500EBD3893F5365366191EEFFFFB84 +:10864000816D00A62B4763E3A4A8111B0E35158589 +:10865000C7CF0AB34A8D627213FDEF0F8CAFD20100 +:108660004C089E881D51F1AD44A7AF6C16C70A6433 +:1086700028249578298165703926711C3D98505FB2 +:1086800022B2B2BF6024C583FF9A7BCD9289C6B95E +:108690002E7F8A6B4702919AB10EDF3A5976F31317 +:1086A000CD066F9EA350FC36AD2BC87CD845EFFDA0 +:1086B000DD41ADE420AEB38DF21A49DAD7557BCD5A +:1086C00088452CECC63C14A4B1E1904AFD069D49B6 +:1086D000E987DA42FDC080206669C259B3D25F28BB +:1086E0005C05BEBBA93F04871367E18137F1306B9E +:1086F000735B5A78203D3C8980DC8E942C96D98F10 +:10870000952B8F4E3B5E9C60BC68019C8229245F48 +:10871000B4E49BA79232B46A12CF5DF87060FBBBE1 +:10872000DF3000182E2EE0EC44FB03FC2093B3EB6B +:10873000B55826B36AD8553C6BFA178016A0386C2A +:10874000D3E220DC170CC1EEBACAE1D2023D9FBCD5 +:108750007EC7759BFDD6AB97891203BF7260F85830 +:10876000A5025496B965C75B81DBE0414AE9B0D602 +:10877000C8C9801530F0982A67146AAC5B4B50B9B1 +:1087800027D0F1969EAC10B5C8511F74CF9DEF470E +:10879000365FCB06B2A47F6970E4BC5E950ED8400C +:1087A000377B3134D6F79DC3D1350D64774515E35A +:1087B0007B6721894C497D59E5C8B3B2C702B09A9D +:1087C000ED90B051BDDFEB1C93125E00FBF5681E0F +:1087D000785D50D24C4CAC184FA72E5626EB5EDE7F +:1087E000E775491D847AF771F83A6CFC59DCC802C8 +:1087F00030E89A4958F680E9C670E4F7B17FB0FFD7 +:10880000AF2F067E8789A55480BE6A5B4D58D50878 +:1088100084227F213E971B534CA729A8F58A4B251C +:1088200040B644B92B074D8ACC4A66F2A3551822AC +:10883000F8947E54BD755D8299D435747077A09894 +:108840005E30E2C17721B67C3E69E008AE8A1ACA82 +:10885000A8B88A9D7D99C1EFCD9D24D81FB5AF835F +:108860008A22EBE803151C3728353214A523C2678A +:1088700090A7DD89DE1D34D1B346B0D1F61BB4D745 +:108880003CBBD93AC327A227DD06E209C854619A46 +:1088900084A5AA9C2CBC6852E1C33DC18B2226044E +:1088A000551DE9346DA28735AACE2765106BB280BD +:1088B000DFA10BAAFAE006D344B30FD0B1C3C317AC +:1088C00003DEAD33EBB729FC73D11EB28A46C0C5B7 +:1088D0000C9AF0DC57266C75322F495EB6A42ABC80 +:1088E000202EA95563208CDF59CEF4F7FC90D75C7D +:1088F0006DC26CE4314BE04439E30B22AA2542C03F +:10890000943EFA0D330C7E4A0EE41CBEC9B1A65447 +:108910009CBD708E801BED42D7B8B65C3881BCC55B +:108920007EDC7586570B9F779783BB8AE21274654E +:10893000A37063151D2C85B74A49D979DFAABFB446 +:10894000D75EAFA405965704D0A71F7B17B2276B3D +:1089500000C6AE6F34BAEAB5E9B33B39DBAB41C60A +:108960009E931F6516BAB6A2723C4E4EA776A432ED +:10897000C4236B425B0ADA7AC8E91701A991A2EF16 +:10898000D0D76768A03436E041DC6D5B4D0F3E20E8 +:10899000F1EEDC676CB1EA0EED94BDCEEFA5DCE242 +:1089A000732CDC8E5146F35AEB7C42FCCE18ED0A58 +:1089B000DABC5389D3F72FFE37C99EBCE1C48D7F43 +:1089C00044A19F40726A972A7167E5EE6187C79D4F +:1089D00081927042379B9B29B1FD2938A1BF8152FA +:1089E00098EC46E6BC5B295616B7BA6416AD120A77 +:1089F000654AA896E26115CD22264B3A42A57981B7 +:108A0000E65AF6B236007153DDF9A281A94363A993 +:108A100058C683B61642E1742CA367005E83A3F3A5 +:108A2000E203D9D39DC263A0EC464107A821B0FF61 +:108A3000F3FA3B507AD02403E2283ED9EE51B0D568 +:108A40006B6F1F84A5F1DAA90F85E96C1B1C1C262E +:108A50002A73E1B3DA3CA67D3A5A3F3C88602D0187 +:108A6000A4B12F9925CF16516CA7F8FEA96D2756F2 +:108A7000434D8972685B1C51FDA828D5AD7A17D685 +:108A800072CE4195709691A1560E7DEBB303E25ADA +:108A9000992C6270FDCECA1431082E2F4D799AF2AE +:108AA00004C117F20FE7252324EDF3148E9D4245F0 +:108AB000CA09D9401F565E968658CBE7D2E3C5094E +:108AC000D420EBE2DB2656E39D772A59B937CB5009 +:108AD000264F69B9E44933D36E2FC1D10F3655E41F +:108AE000E9EAB3929A0B7087C937616546E432C4EC +:108AF000B3421AF9D2CED6F9F5F44B58921FA946D3 +:108B0000B838DE4D9C8F099AF2B4380D3760E3FF18 +:108B10005497B66644F3F69B283EAEA0633C65A826 +:108B2000B925C02EEFFB1CF49CB944EDD884B7E501 +:108B3000D20EC00F6CDE2D923BBFC898831DC43B84 +:108B4000515037F4EDE9B48128E4D9E0ECC626971A +:108B5000C93C69E1ED06A853FC76547B1838E73030 +:108B6000527EFA02CC37C43EBA08C5BF82FC807D73 +:108B700042027DB83FD843869ED577B30DE9C3DB6B +:108B8000A76A34C217AD120A089B5328A9F599DECB +:108B90007B884FBAEEBFDA9B71AB2FEAB76F82CBFF +:108BA0007C5878424CD17A92AD3D2526FC16DCFEED +:108BB0009727A24855654E99935673C1B3DD135656 +:108BC000B8214363565057DFC27292C27A200970AF +:108BD0009EC6DB8FBF05F43B849451F17E425C89D5 +:108BE0009877961907A216FCC538AE95716FD59681 +:108BF000E5A29028E1C49A07551FF05B809A78504F +:108C000056269A3E4C2C5A70FF3ACA888F7EA3098A +:108C1000AC2DD6DBF5809E0CC8E46249A853D2B6D1 +:108C2000D71079A2B43A8BD635B1FDDA9B2EFEE689 +:108C3000179D5A833539647D64A377A2D73EE574C6 +:108C400074D98376B9E2969F72D567FEE55E3D10D2 +:108C5000529D8B67478E35D15D1C4C15C18A20E62D +:108C600050F07F821884C46F6EA0513EA605563B1B +:108C7000F76FC2D9C60E80ADFCF8061F578B85C0B2 +:108C8000A377A7D8E2C5576D1374C0700CDAAAC2D7 +:108C9000141D3EFD8758E7E5C2DF8C548EF52A3E51 +:108CA000F4E55CDF5579D21B623545336770396175 +:108CB0008F563694016A1927CD7D25B0A961877A30 +:108CC00096580D123DF787813B66F1554D45EA0BED +:108CD0005F2CABCA8553BB200EDF13A2AA1C5C6DB0 +:108CE000D0EB32FF89B9E196167678040759B71BA5 +:108CF000994F768B363CAA708D63E3196CCCD00CFF +:108D0000335AF08EC9616741D57219ACBB2D929D63 +:108D10003FAF21686FC1E351EB2A704AC0B746519B +:108D20008102E7177F9FDDEBB39D461112C197C506 +:108D30008695E347026259ECFDF2687F98CE15F103 +:108D4000D90C59E920CB7F45332F27FA1D391F163F +:108D50006C896991F907EFE564B0D63F5B565EB068 +:108D6000EE0B8B13A19F13732DAC347DA36CE180AC +:108D7000882BF1BF99B58096DB1870BFC5EAF6BAAB +:108D8000F28E908598672926A29332F3E0E64D276C +:108D9000A7BF87091955450EB4E186C94CE39D95D7 +:108DA0007EC09ACF7B5229A71A9D9F2DD1CAE591EB +:108DB000CB4064B1F62D5396BE430699EE6684BB54 +:108DC000F35F387A408219BCA262779734714BAE58 +:108DD00074357FB013FC74182B7638016351A1767B +:108DE000771DA547E94852245247BA22FD667A4FBB +:108DF000B2818866F87DB4A9C1D050232361467240 +:108E0000FCF4AE7AF397A9092733E845EEBE025B7E +:108E10008F484985BEDF873F1D1504BA05E0176DF1 +:108E200094C1DBC5645F6F3B8056803DC9D7939B7F +:108E30003164FE498686AA29B5674CE87806012682 +:108E4000A1DF5E543E2B93025964B025E649F750EA +:108E500057650A09376062ED07D278FAD866A6919D +:108E6000020D3D3606358562CDFBF3CFE11E63BAB8 +:108E7000CE227C3C654CE24CFC6AFD3C96FA1C30F0 +:108E8000CDCEDE5D2EEA89753854FDFCAD666029D5 +:108E90008EE5D614AF775F815E9F7AFC7005D1BEF8 +:108EA0005670250AEA4A42EEF167FAD1FC6740F9AA +:108EB0003E2923B09EFB2B911F844D6DD9A7FEE068 +:108EC00037095C00F0688A8FF2116099F43D011B4C +:108ED000CDA6BA0ABAD109233B1A178A86714F2D3B +:108EE0007BBBBEF216B6A3A9332D8311C31F312F4E +:108EF0000F3A929E280CAD76CFC17EDC567F442679 +:108F00000A0F6DB6793640E401D35E34394A040362 +:108F1000986C580EC33FDE824F147E980994DE5839 +:108F20005EEA241E8F3A73223260EF84F5BB8AE931 +:108F3000A8EF5F583918DF3160C477183F8CE6EE30 +:108F4000BA6D9D017D67A43C60D3EC493AF69F84DD +:108F5000E0A01F0CA1A0B784BAB66496D6826E6753 +:108F6000354366FE1E907FB78D1F77311D122B1281 +:108F700006F7FA22BA7AC409EAD8030A64B49EB999 +:108F8000F03B69A8A9F9450628BABDA1165E53971A +:108F9000D09374029D9B7CF93B6097BE3D0ED2AE90 +:108FA000900E774713272E3DE6642C338DEB1C3053 +:108FB0002AEA5114BE185F8CDDAB673C651807F4D4 +:108FC000F9B38BC594C2135D701328472353404FE8 +:108FD000873E010087CD4DA562CF1358FE7E84AE3B +:108FE0000856641CBD4E2D930DC43261D49ADC9793 +:108FF000D0BF568A0B1BC2ABE4EAA7590A88900C73 +:10900000D9690AA8A442EF8C13B5FC43AB32EE7ABF +:10901000FF64B0F68F2F7E5D477297F876C2FEFC34 +:10902000E74662BCC300BE90FD27B964244B81E3D0 +:10903000A4723C7E0F4532844557B58E653D396B31 +:10904000E2A58545EED7BA6816CC5565AB974F3E7D +:109050007463E1346062CEB22756DBD871B39915E0 +:109060008EA37554D8CBD3ED0A5DCA5514DC14B267 +:10907000407349360654409B9F144A275BCA1FD64B +:10908000910CEB541A7C2D24C63A6C3E76172FE0D7 +:109090003678676E36FBC416D6478485C8532EC013 +:1090A00074F84DB0B6644B70597AC1D07FD6EB5E80 +:1090B00000686195CA6ABB9F0A0611977481A73E32 +:1090C0008F5EABB3CF3DEAE28752CE1A90FAABA3E4 +:1090D00083F6A7F5612700A7BC61D52C797D9DD4C7 +:1090E000E65F8553DCBF6AEDEC449F0850F62DF433 +:1090F0005D8387D7AFF53C22A1555D1A61F8C5B5F0 +:10910000C1DB3A5205044D3C9DB152D48B430FF163 +:10911000CF118D7A758783BC54F495745894B5A299 +:109120005875E59FAB270FB91010F34594F5950BD3 +:109130003A336ACE54323E76BA1B4BED2BBCF0D993 +:1091400007DE781F9F0B0CFD0B5F73010BB68D962E +:109150000F1A88A1D0DEC9D03E265C367034D20DFD +:10916000A528B38698D032E116CEBE35A9BB180A21 +:109170003A5D34DBD6DACFFF74F088727213CA5CC2 +:109180000FCAD092A17ECAFCC484835392D77413B1 +:1091900015F6741B11FD09C0E7E0286DCBEAFF95B9 +:1091A00052E85F16D79D5365D83F4A385FB14FF4F8 +:1091B000D825FEC50B8907E5EA286A7F421AEAC16D +:1091C000ACCE62CD48240F910B7F9227D47711E467 +:1091D00052C72BB8EEB3591D5E054DAE730468EF50 +:1091E000E881DA273B2366F6267ECBE6C02478B9F1 +:1091F0008A022B45261A9B48F2F6B9D2B1AAF13A57 +:10920000D971ED4BBAD9632980007A102DF93B85CD +:10921000AD37CBBECF022A85483C5C80F670CC6D62 +:109220003F5D071274733DC102B5A4C469677E9D9A +:109230000E87E5563E4FF0DF49011FE54D22FDB692 +:10924000344982A1B080BB8622A795CD7CB4282E5C +:1092500087A74AAB638BDD8941E9D6A72113AFB15C +:109260006F54148105B90B3FF4B8BAF755BA349767 +:10927000D0BF75C3A42C9661445AC5C016E60972C6 +:1092800048CD2E675EEA8DDB18C353066B45E4D5E7 +:10929000291AAA8744B8AB86A976BAD388F32ACA12 +:1092A00044838CF0D7439C8E2DF73E6FC58B9B7B00 +:1092B000C8383DE08982C0B1B9333765F07477585A +:1092C00013ADCD387A47CEC02D11C15F2E3E15D5D6 +:1092D0004F1A88C12408456933550CD2F95B45DB28 +:1092E00003038E3DCFB4792B0F35AA9CF67DD6644F +:1092F000407244076401280FEE6E82746DB3F3AEC2 +:109300007EC41330CFD55E1ADEBE6E16205EE0F44A +:10931000502E23F76BB53A9E83757957B050EE4FB8 +:10932000714C89410347DDC085D470E11DA0E5A9DA +:10933000FE9DA5B7B22C78441F8A5B5A12855577DB +:10934000BA88EA5552A38F8D34946DF9C90A2E322A +:109350001A46BB4AE8AC9507B0563790E61FADEF0A +:10936000E66D95982B08A4FCDD43DC02C82B4B5C12 +:1093700087FE49BEEBC80101363989A46FE6A61104 +:109380005B7D155190BD7BC918FD73E0A941AAE52D +:109390006F1486D6D16749D8DEEC92FB3859C5D018 +:1093A00038F278FE4D0B5C0AC01132FB3054DC7889 +:1093B0003D0B7205BF88ACA836D7E8719C17894D64 +:1093C000B26F5E4CD2512090FBC24309FD268AD871 +:1093D00097FBD4EE05DFBA228DDC78D0084ED0C6DC +:1093E00022BEE48BBDD58F45EEA8E31A08B22758FC +:1093F0008A8361FD7870394557F565937AC43FF6E5 +:109400000D152582F5986464241EEE15AE2ED3A3A7 +:10941000593E1561D57A89ABA9C04024EFB1B83760 +:10942000ED03BBB79B5D52097522237C395E86270D +:109430000653FF06FF6FD3D6377559A71BBA91287D +:1094400047179363DCEF561EA05AF8CF62DBC2F1D8 +:109450006FBD2F1B010349DE130A03A3108FD8A48D +:10946000D95FA44C021D9CAFF7C8A79E165AF829D5 +:1094700067E7A0A70BF79DBB889CE689DB6B7CE6C2 +:10948000BE7BC9CDC5C08242A5151D1AEF7B7CE805 +:1094900008A6D48D4001FAB5F89D44EF15FE2F992A +:1094A000A30D4EDAFD8AEFCB63831EDA696EC03DF1 +:1094B00040F35CF5DFE75BB2877487F17CAF512343 +:1094C0003254D13DDCBBA2168CC8649DCD2281797B +:1094D000604C758C6ACA895F52A14EB5D6AD5A618F +:1094E0004866E6AB5A464C14B921AC40D24A3926FC +:1094F00053B7761D8EB9CA61617E10383C6B44F259 +:10950000153EB7216EF4E72609C8A834376F56A375 +:10951000DAF1541D69FDA4E0B1F37DDE3293406CB5 +:109520005B9037199199FFF6B338E9D7412380CD85 +:1095300047D0ED40F27BAF0EA9A15CC7F3AC5FB59D +:109540008D8B818C13AE082037DFCDA6DAC0630285 +:10955000CA5E1CDB6CDE618A65A2FB9619C736DC2D +:10956000E1A8CB8CD47C70A8B6AE4532BE321DCEFD +:1095700095996F8B3BE28A4EE9ED4DD2B1F78E7033 +:10958000C5A157BFDB91E7E7DF886CF48D648EBA25 +:1095900071051A1B0C0A4E7B97D51AC049E4DEAB45 +:1095A0002547F01069C5E0F3549867002FD607A54A +:1095B0009CC0AED23C3784152C4435828F49FD07C0 +:1095C0000B4D98E7459A77B9CB788F94FAB76578C1 +:1095D000E170CFC2FE4C79FC0C780D0847C4BA8507 +:1095E000D77C6D72C8521362776AEA819F833950C3 +:1095F00008A195D2700BE961CED316057FB86497A8 +:10960000382DAFCEE81AB336142D584400506047B9 +:1096100059961CA7070F1D2AA31538C0E45E069FA4 +:1096200070F76AAB9AF8E9EBD155AAB0E6411FEBA7 +:109630000F24A1984967815CD6E11852AA0F7E5485 +:1096400042454669AB131860637BB64D329B8BEF86 +:10965000E311D43D8C74F1E8C4AFFB23F8789A820F +:10966000410C8E6F9034BE62FCF5B48E5799EEF2C9 +:10967000A913CFBB95D87D93DBEB837AE5DEB608E3 +:109680009F7708D7B98D8D6FC8E012FDACA13D4F13 +:109690005BCA46ABC91667CECDAB0EED468B1FE558 +:1096A0004D39D29BF62564D2C95C2BF9A684454B73 +:1096B000ECEAAC9176263DC64D7B3E33832BE170C0 +:1096C0000FB46E6165D10C09FDAA94E7751ACE97A7 +:1096D000833EC7EF5E692EEB1DAD0B9653613FBA1B +:1096E000FFF98210CC6EE8804ACF9C6672ABD1EB5A +:1096F00030A1F3EDE79C12174F518E5899D39B99E7 +:10970000B2458A2F53C7DBF111DDF4995D8E23DF5B +:1097100033CB50EEA9C4340DE63EB7EE93B9079BA8 +:109720008EE52D8B02783AADF38DDFBEFB03E25D53 +:10973000C1542DBEA62CF21B650D3D1C8C169CD170 +:10974000F81A4AD2AD2043B9BE6184C4DDAD754A72 +:109750003193EAF14E6889ADEE60775C2C26CE7BC2 +:109760005AE86DBA1C1C92C019DDD7C6F2F573A574 +:109770007CA1E72F49D314957174C094518EEEF3F8 +:1097800039B3C90E90DFDB40CE2F8D4F6B8558D893 +:109790003EB217EAE7C9D3BD72B8B0B1726F877035 +:1097A000C4416A9F5CE436447BF099E69A523B2FB1 +:1097B000855AEF92DFA56A5459A92E385D3BFAE02D +:1097C00001D40DFD8EFAA2F2EB33E79C146B63ED2E +:1097D000E641255DA6D19FF3FA6AE999C00B5009CD +:1097E000D40241D77B4FF3F6DBD525034E45570511 +:1097F000898F16AD2C32746141AA7FE31967A6C325 +:10980000B3074504125710C43485FCF71C078B744A +:109810005F1F946D4F928F7448DB8E38C4FD5FAE2E +:1098200037BD86AC22CA2A875A08F6FA117B3D5703 +:109830000656FD07F84B407D51CB1FAA90F03C57D0 +:10984000467729553C6E30FD1018B46CC4EB10D827 +:109850003B5149FE942E9C3C7584B72D8F4F8A0D49 +:10986000F4E996AEFDFD2F68278EC97B034B32A627 +:10987000653BB3FB976BF4F471AA0276345E66D64F +:10988000AB69BE41E5202988F1F760FD9AA1FE771A +:109890002BFCBE175CB457D422AC522448E1A69EE0 +:1098A000C4E0653B4007A9ECE15BE4233D979B2DB9 +:1098B00018AD0832E74C763325A526618B07F9846D +:1098C00014A8A4DE268D64D008518D0AD00CAB5F9D +:1098D00048F8E6905D6D7B31C6289A564761E2668E +:1098E000C87B96A33A5C09C72F5A7C7FE3BDB76C4F +:1098F000DC22B348A742B268A7D8AB80035B577C91 +:1099000003A4E80AADEAEB5B1870C2C396F60494B0 +:109910005364D18D29F66D50738080F8FFAA0E151F +:1099200040DBB0C18A19E2FC84B8A99CA2A0615EA8 +:10993000460A6F493BB2F35F643A42321EC632A315 +:1099400051D568D323E287C088723D9C8A5FF79621 +:109950000D885B377C87B1C461551E364DFBABEE7D +:1099600053E2B9E2FCAC6B4D2BD8C2CE61EE9C7DCC +:109970001620330B0013E67D4EDB61D2BB1DB653C0 +:1099800098BA6CE7C32CCCB11EB8B2BC8DD0888D10 +:1099900016B83FCA75BB60BFF3C1B3A8FDC195F946 +:1099A000DD686825AA3FF16C1F76DA75DDB9445B86 +:1099B0002D8206E8FF83E6B38A767CB1F9A05A537C +:1099C00038094DB7D0945DE323B897C2FA5DAE2550 +:1099D000EB648434300B19F35B54F622DD8F25449D +:1099E000A9E04AD7DB919139C5E9604D9B48E37105 +:1099F0005F549DA4C2A1459F03D608FB431A2BB513 +:109A0000573821556143C1897ADA92E828516D4966 +:109A100026B0F48EA2558F24D531B4E0E5892467B1 +:109A2000794B83D69D49371D055C79CC324015DDD5 +:109A300034F41FA4E1DEC9D2CA9A501BA9736CE4A6 +:109A4000E483A21DBBBB3DA1C523168D86F60FC9BD +:109A5000471385142922E09FC8005C67E98BAE3567 +:109A6000674C1527B80ED14FC4EEEE3F1C99E3D3D7 +:109A70007D270390B2AE8097558DFF3358F67AE676 +:109A8000FA63A7176245686526CA9A196A9C09C6CF +:109A9000A7AF5F5CA442A34DCC16BE3A71930110F0 +:109AA000977135883B89E5C443E6499BF24B634196 +:109AB00053F3166A420E167DD3AB71014726E97B3C +:109AC000BB53F2F19D42A3D5701DDB9E2539411E8B +:109AD000C057A0004A2EEB18697ED8C6622D900BA5 +:109AE000A90CA4496E97169339642D7343194B55ED +:109AF0000EB5DCD8F90C757E9DCB14CEDD525DFF22 +:109B0000EB6BE7C7BD2FE083D5760819224B978111 +:109B10003E553230E481A2C84B759B7AD368CFC7DB +:109B20005AB6B5967C384C1EB3B7B8CEA7A24C80B7 +:109B30008C17EB03F6ED24FFA4FDBB8646C32B0573 +:109B4000C4D0A1C27C70371F34D9D73FB8015BE7BE +:109B50007EF20726D30AE9B476264A4229ABE945C4 +:109B60000E022D17382717D83D4F80DDAEB35EFFAC +:109B7000AE0F9727814DC1091C6D623A3049F40F31 +:109B800090DB7F369D39F0E04632DC35CD1DB80DD7 +:109B90004A017F40F0BD26E60F3BBE76AED6D82503 +:109BA00055F761399D7AE87504C9732C6BE9BC746B +:109BB0003A6208CC2F297201DD163DA6FE25C4FCB1 +:109BC00028B56F6C656748F26E8A18DC5453C94635 +:109BD000EC5E4898290D56D94BDDC96D52D494D509 +:109BE000781A47E7B7794745BAA03119613BFE7A41 +:109BF000B3172A0ADE7148CE8ECA7A2327E022DC08 +:109C00002D17D0DEFB188F18461A326DDE9AB21C63 +:109C1000D3E57FBDBD8D1E33A9C69EA24478428088 +:109C20008F9D599CE40D82CDD42BBE235D2BC16545 +:109C3000CA3A9AE6061E31FBA40B56CA5973655000 +:109C4000BADC37A311B02CC85909207BF9987118D8 +:109C500006AA9228AFDBD9161B9763960DF2D7CCD4 +:109C600063E7192AC96F8056CE78EB6128124E71CE +:109C7000EED0D991964A9772A87CA0D3AC074DD666 +:109C80003E7FA17A6FAE0CBDC7CC139CA4EC2C8593 +:109C9000822BAC15FD9FF36686241460CE1FDF086F +:109CA0000AC8F829ACECDFB74E8009A46D3D62E02C +:109CB00030AF9DD4901459F54B95F5A1AEFF8D654D +:109CC00024058699572661D5475AAAF65F9E02D089 +:109CD00003C9C33F4EDCBF67EE463C8007FB0DCB9C +:109CE000A1519F12D6117A866E8285BDFED6EA4CAE +:109CF00011C4810681D5CB28A224F25509944B3199 +:109D000090657DDD65235F382CEAA7664A07BAAE09 +:109D1000F5DA8500C05087BBCB8D74F278F8EB681C +:109D2000213A54044CE1AAE5F7470F004868900433 +:109D30008CA114F29866AFA7A30462E92B5A916232 +:109D400079AB760A73535DAB676C78EBB007F5DCE3 +:109D50003FB114AF9B1326B7BAD9F808D704420015 +:109D6000C4337CA65D3802C9AE502DDE186D71A7D4 +:109D70007A41F3E7BDF6A930BD6732C380BE37B084 +:109D8000A7E20B11B06ACB93600D4AF4527E958620 +:109D9000B4BF26946BF9F17B18688E382C5AB1CE7B +:109DA000828B2E64EEB0E62D2D83FD3575CA0FDC57 +:109DB000200DDB21FEA996C7DD6FF4BD143D165FB3 +:109DC000EE2C2A972790CCEE0032D5308219C4DAD7 +:109DD000F987EE5986F8F7743B6DD979832CE576CF +:109DE000C8751A73CDAB4EB91535BFC007E833FA45 +:109DF0002CA558FC7B19E0A5BCD1160E137CE162A2 +:109E000086CA3358249F5C98D4117BCE02A3EB47BB +:109E10003E5DC73083FD0FAC38E7971C78A46BE438 +:109E20003B35A868CBD60B8AF7A476EDCFAFE7B861 +:109E30006A520E4D1E49D4DFF87C8CB14368036131 +:109E400096F162FA124F51B1DE4437D83873D44ECE +:109E50009F66F5DBFEF7898627F48A3BF2074112FD +:109E6000EAB74FA3B27E66D715F72A2955E844769C +:109E7000C6B9C0D8E532DC298FF02D78AFF37C115C +:109E8000CF9B41B0B1EF0B41DB66CF765C52ABA804 +:109E9000E7CB007C29EB63363725F4004F8647EE8D +:109EA0003FF756FF5152DE4E81B2CDF589BBF8E641 +:109EB00002A0B50B82D4895FC6E478B7935DC5A2D2 +:109EC000329D1C32ACBC213A282D74DF3C111B653D +:109ED0006A905BC71072B28DECA3A6FB1B7CE7DC1B +:109EE00089F7D8C237DCE4CC94CE35B4E478B07DC1 +:109EF000B9BB5B97785226F0C4478EDF2367AD1756 +:109F0000196F771FBC3BAFBDF2181333FA9870037B +:109F10005A3AC4B1DCF3492DFF21C6B0C2D650A0D5 +:109F2000F3792BD6642CEA913E3E652EF0371BD395 +:109F30008A30DC0F740AF4F53019835DCB271138B1 +:109F4000935ED387A003A6AB568B9593CB21AB4DE5 +:109F5000D54B25F744940621D33A7C47AFB95FE847 +:109F6000811B5D4B8D04AF545B9062C200BF5EF7F6 +:109F700076C1A77A68C41B1E78C261BF17E0AD6DB9 +:109F8000068BD570F66E25CEF0519AB6827989D2BD +:109F900048BE8D5DF1F069177E004FFFD9876730AD +:109FA00000AB91CEEC3A4A9091E58A5CB88E2BF7E3 +:109FB000206C24590F533F4A40C3F7A2FAAD69B948 +:109FC0004028F059AD9E8DD4D1E5D599983B745C6D +:109FD000C75BC8CA72358BEA1BCCDA447C47CB59C5 +:109FE00027FA9160B2953FA9566692263484B958F3 +:109FF00056E360DEC23CA44B2B23CC647A3C8ECE6D +:10A000005AAF69EC3F0623A6AB60F011DD2E166156 +:10A01000714B2F3D190084F7162DE395BA7307A4F1 +:10A020005DC459715D7101D3F3E581D3F88D9D163F +:10A030000BA202FE78968BCBFE9716C10035A9B114 +:10A04000FF908E1E8EB6BD1D46381984587E64B1B1 +:10A0500002B8662FD7F01043D5929A665B3702CAD2 +:10A0600041499B26BA34BED4E6AA3B2346309AF82F +:10A070009E438A87CBA8C6518B1129DEFD5ADAB6DA +:10A0800095C9A17A590D1B58C42C2D9708525850C8 +:10A0900082AE89086220FC474AE1D47A1720BAD4FC +:10A0A0007116EF58EE204D9DD24E001855092BEC3D +:10A0B000311713602E499C4B9EE885F02E0BCC0681 +:10A0C0009F4F2AFD470BBDD2C5F040ECFA9B6301C0 +:10A0D000C8EAFF0EA293EA82EFDA70DEFAE6B0B0C9 +:10A0E0004EF59A7E98A177420249CFFECFAF0C3F42 +:10A0F00009DE184242BE9451902AEC33EB1F20082F +:10A10000CE88380E4CFC04DCE3E58291A1CEA0425F +:10A110002DEDB764A79C837ECFBE5BAC2017313E8C +:10A1200090C5F9D67F1608D113DB21914CAF7DD2B3 +:10A13000C2D0923D854C31D0AD6E7895E78CFD2A2A +:10A140007338257E4238373F7F72E08AD4DEF7A22B +:10A150000F3AD2FFCCD40F6B6E9FDCB71346E43AB4 +:10A160008BC2A668EC0081FAC9D8C3B01B0239EFD4 +:10A17000E12F96A4F2A4FA186CAA24DC23A0E48FA1 +:10A180001331FD11840FFE69C5E4524381985300D9 +:10A1900067CA0D60E3B258480C8163952E8103E7CE +:10A1A000CDCEC3D625269F57FDB545522A63CD8D0A +:10A1B00052FA168DD893CDF631C78D94C73D27D46A +:10A1C0005B8B7905331D75CA0C6340F23FED0A784D +:10A1D000F0E811DC03578C64BDE43759835C9B5471 +:10A1E0003F193D9E8FD821AE3B5A60EA70DB0EE0EE +:10A1F000F5C0137570E1A7C6093AA259F63529F4DE +:10A20000B68AEF57F58C937226CAE2A19944BF34FF +:10A210008898E070E781A2FB84948267E871540C0F +:10A220007E57460445B89A461B76B67789722B73DB +:10A230005C08BFE7398E8303C5B714EE0F8B7C3EF5 +:10A240009265B756DB135CD0E58C438430EAC9F1E4 +:10A25000567A63F357203B5509D8AD416B514230D4 +:10A26000916353EC086B52832A0683316EC27E22BF +:10A270005D63C3BB8EF88F31C0EED14E06C8BCDD26 +:10A2800059683F05B386902DF7C985A9C7896271C2 +:10A2900081505D482684904A16D2F1D5A373E04FD1 +:10A2A0008B7FFD206E2B168E692556DC353595D3B8 +:10A2B0009416476C14EF15175276A8D7C2B0FEB8A3 +:10A2C000046213A5D1EC6DBB6168920472B41AC725 +:10A2D000F68A6FBDED616E3E3657BE4A25134FD1EB +:10A2E000E65A8B4DA9C5A2CD603955AA57C63EF393 +:10A2F0002CC4A72A92CE381E323D2B3A14A7EF5811 +:10A300001605D875973887318398DCB5D12FD65587 +:10A31000A629B6D183BE8B7230DC12F4F03EF2C7B0 +:10A32000F2C558500B02CEF688EB374D69136C73AB +:10A3300010160EE3CC9F76E15F82AEEFB99A371824 +:10A34000FB5F0D28F70FC42F0A9C53074703DD66F8 +:10A35000CD2E463B71BE125FEB0EAFD07C09524250 +:10A360004491DBA24E679FB14B2FA5CD70D41B78D3 +:10A370003806516F98350C983E035CB1F60E1453B5 +:10A38000F82C0FB61775A79C49C5B388CCD9B31F55 +:10A39000DE36053D01A8D42D7D91C564810FD7A976 +:10A3A000C177AB1E1306BD91F71AE3EC39A65C3CEE +:10A3B00062154AE52DB0C946ACB6F804D874AAD5E2 +:10A3C000AE4E81E48CEE8FDC2484F546A1AAA54331 +:10A3D0006C5E1B55592DDA145AB99F4EE5F318D40B +:10A3E0008D40BE3D49FA6C08F8166CA0A55A5A7605 +:10A3F0003CEDFDED07B4AFE8D071CA42AB821F9EC1 +:10A40000C6EC789E0B9F104092ECB37974EB363B10 +:10A41000ECD6A7CABFB056E8F5CA0F720D6F07EDAC +:10A42000E4399B11C8D9AE7F4B89D5C204BCFF6FFC +:10A4300030EF3C1900E0DCFC184C7B45B16C8EF42D +:10A4400071868B785AAB91657CB0FA342457E8A2B8 +:10A450007A3338120E45F636F70F4F4384FA182D2B +:10A460008FCCE26F3DE6107EE4C47D0BA08B9BF4A5 +:10A47000638FC9A7C3A9F009018656FB5E2AD907D5 +:10A48000F8BE626CC79164F1BF799666512E685A26 +:10A490003F7AE3FC117977501316E7DDFA6D4EA988 +:10A4A000D7DDE269A7E31D51E427FE2BFE2AC5C6CE +:10A4B000292BB0EF23ADC2BADF9124F006392E1C50 +:10A4C000BB6589530F271811F2B7E432146150B3FA +:10A4D0002EC0D84F1013C505AA5AC0A320FE125390 +:10A4E0008E4030818ACBE288972A7C612BDADCF5BA +:10A4F0006085286736D4B4FD444F898DE75E00CA75 +:10A500003147954F3FE2FA5A706CD2CD86D26C91AA +:10A5100069E00F7F9E7B6F95DAC2BBDE47CF23E9F0 +:10A520004EEC403D95F18DF59ABDA5B18CE94D7786 +:10A530003A71269E5B0DA1DA2ACEE8812C068803AB +:10A54000A5501F1B54DC8B1327A1D9D7FBD71CAAFE +:10A55000664C2A867038E999AF094E5C6318DB9324 +:10A56000E8001F1E5E177BF29866FFFFF89576E6FF +:10A570004C472CE8843CC475E80F91EF6CFD8218C1 +:10A58000DD5AB75999052077CFB9FEA64EDBC94DE4 +:10A590005710E0E1B10F7612BE6A33CE85E912ACF6 +:10A5A0008B387DE5AAE79E5D1B128F9DE53C0F83EE +:10A5B0006F4A56D9D3F0400E047CF341BA9B869281 +:10A5C000ABABC8F608649CD1E26F283AA11236D32F +:10A5D00073A35EA4EDF0CE95582B2B24F4E9F0ACD8 +:10A5E0000C65663367C417EA6FA1A528C7BCA242F1 +:10A5F0006CC9631AD4D062F0FCDDEABE8B5B84BD0B +:10A6000090EF04B050BF029D29EE069CE7AC96CABD +:10A610005AFAE71BAB900964DEF4357A1FCA52A3DD +:10A620007D1DE3AF0310F32B2BCAAA051DE6530AC9 +:10A63000B521BF55D9E1559A86CFD9288FE18AA691 +:10A640001E0B31C676D4776B34747B7D9EFF4C9A9B +:10A650002F22AD946D153DA03054E7249AA77FA911 +:10A6600099A1FA2C196F455413D6DCE9BDA20894C0 +:10A67000296FBD80460DDBF2244B50F92A205CDFA8 +:10A68000914B66E17F5405729A209E530195F75FC6 +:10A69000446DAF24B983E51C40CF700031208AF7A8 +:10A6A000B54CCBAF36A4C4678F7F3BF5925C86E197 +:10A6B000E8BC1434EB64A9702961D3C815E9525D74 +:10A6C000B84CC2C4530BE9799EA7DBBB8C7963FC01 +:10A6D00037C3BE7D51A3AE98AB1D56A0D209FD86EF +:10A6E000406108D3123C34C0B0B0FF2AC02AE7F062 +:10A6F000E43185BE3C43FFD6E5FA8B388D6BDDC671 +:10A7000073EBAE879CEE03A9205BF94751B005B708 +:10A71000ABA3300211C4FA886CE139D8A2EA40FB3D +:10A720005B11724A78827DE0B723139C515E18DB7F +:10A73000E83497DB6B18677F6480A0667E6AF96AED +:10A74000E9638B403A81ABD23CDF3A62E257AABD63 +:10A750001CC17C68AEA3B64C18A0B371E33FA870CF +:10A76000837A64D848FBC1A83E424050872F30F41A +:10A77000918B1170CE278DD9397A43FB40FE036847 +:10A78000BDEC5411828034DECE7F2705042000F416 +:10A790001ABE0CAAD814A6E76DFDA82214D4544EF4 +:10A7A0002B7AB80E86EE252C7D475BA08852AE44EE +:10A7B0001532CCDA6D0455BF4D29C775D59A289C42 +:10A7C0003587EEA0176AC24B51B49397E1E8A00712 +:10A7D000E7A2159ABDF146D6F8FC425DA95DE3F407 +:10A7E000DCA9D434D0E638DEECAFB63EC9CE18389A +:10A7F000AB98FB216C9097E3D207889C31F828F343 +:10A80000477BC6BD08FFA57CBA62E0B5605D7CC72A +:10A81000EC5719C5704C002B7F505B7E31EBD3A4F5 +:10A82000717AA4C618C5E6C89D462BA42B76557F21 +:10A83000887BEE8F68548AFF7BDAB357E14DE4FBE7 +:10A84000BB2CC7BA2C3A3B0E967B2594BEE80CEE87 +:10A850005C36FE8FC0F4DD9D74A914578ADAB80403 +:10A86000E777005AC0B4AA04E648AD84FD97A8F281 +:10A87000E09E187487165CAAB871A1A10C4BEADFA0 +:10A88000462039775F5F2861E3C03680B64766B0FF +:10A89000DE4D4890D1B6F5D8E4AEFF615A67EFF2CD +:10A8A000CE585A4CCA51E31D54442A7B287CC9A96E +:10A8B0003B1AC6F8E12EF049D98E126A2582701D26 +:10A8C000C163F6BBA8D2C586E495F0A0172DA7E812 +:10A8D000681A7CE9F80455ED587DE6244474E7F5E0 +:10A8E000FBA4539B44F3695C59D3C309F45DE6862A +:10A8F000A2149167E3408E8A8CAFF3AAC39F4D499F +:10A90000FB7C1E0BE96D8F4AEF3BFD34925067C212 +:10A91000086A2E6AB9ADB23EA15E3434364AC671B9 +:10A9200033CBA9F05957E435647091BBE9BC96B6B6 +:10A93000D8879961B0148EA46E55EA243FFF724700 +:10A94000A2BEAA4D9CDC6E67D51D6385A76361AA74 +:10A95000830C66508512E421CFBC17783154F9ABD3 +:10A9600022137AC37F904402BA92F40944BE44A9E8 +:10A970005DB260DCF8E9837C8B6159620B3DC51DDB +:10A98000851CC5D845A24D2B598DFA8442F70E97E8 +:10A990001B34AE7C352013A57CD2199267259B0110 +:10A9A000BB30E938532B38206E308451F9799A172F +:10A9B000C80658104579EE46F4AC64A625F2C5FDEC +:10A9C000702815024D2DE45F7D9CB9305340296BF2 +:10A9D0006B31915FEF8E334A0E2E56FEE8CD51DE7D +:10A9E00011A148A4E3B942EED125E07428F238332E +:10A9F000D0E8156998512B28CDC3E6FD735911365F +:10AA00007052F213FBAF594C44E66B4FE7E05169CB +:10AA10003E0FF721666C0A1BB0DB6B6C5B10AE1E41 +:10AA20008589A2DB71E6B9F7AE9D7126E7CFA63521 +:10AA3000B3278FC92B1B8B3391837C7529221CBABA +:10AA4000FC768A82CD53B95C597AF0209B31256817 +:10AA5000AF377CCF403CED1C2B6C4BC939953CB2D9 +:10AA6000904F93925FFFD334E81534F29ED58AA8B5 +:10AA7000B40028FE81D00FA11C8AFC1B148FF4D9CE +:10AA8000A3752E2D38748F2A5883A64A1848F8B318 +:10AA9000CA4CE78E9E747E85B0719D8EB60DF06AAD +:10AAA000C784E1AE176EA6087CB52BEA060DCCA8CC +:10AAB0009A0457C6DF64BDAC6E214B650409B07DB6 +:10AAC00009ED257D2D49A5ECA7A57EA200F3190966 +:10AAD000F4E34356049D42A7679CBF8D5448D66E4D +:10AAE000524950DFDA231B828C214FC7BBF041371C +:10AAF0003A5259A397BC89C52F397498402CDE501F +:10AB00007595BE7B471E3887610B12BE00C74C93FC +:10AB1000010A4B3C71B3BB75F60302F514AE7C38E9 +:10AB2000A4E5635390CC7492835B9DF03C3A484318 +:10AB30000EA13A2FB40D2F8C40FE3A2D83E373C241 +:10AB40007A008C5AE139A9C1749730FDA91CB6B0BE +:10AB5000A5793F0E17AAC71581DF1BB58FEF350DFD +:10AB6000A392D0F5E8F26999F628C9A4F93F4D32CD +:10AB7000B46B713F98EA1B657974932AD73E1AD457 +:10AB800005862B6B7144756434B31ABCF764DD37EA +:10AB90006A835E1E0CB5F827095D83674413291587 +:10ABA00019F34041ADC17442537976EDAF6C5EF755 +:10ABB000D130E4BEDE8E89D3B2A706AD6A5C6BC12C +:10ABC0003E71D401A9304E737C8F1126122C443F64 +:10ABD000F70B11023B25F5106ECB9606336810E992 +:10ABE00027135A1EFB9B95249B913CDFEB7EE9D3F8 +:10ABF00061A6F670080CD7328C9FD16FC3BD8F054C +:10AC000062D70B10689D41ACDA01F8FA97FF36D78E +:10AC1000F227FF514A61757EEE6F297EE1C74A38FF +:10AC20005AF9BAA70EDEDB65EC23D8E597826A51A4 +:10AC3000E431C3AD80E15128F7F74EF16051C4A073 +:10AC4000722EC56DE75023562936CAADB7F210D221 +:10AC50009A5032C9A6EF11AF318D5BBF0129CEF5F5 +:10AC600017F9C3C5512B698759B14C2D69ED2E20B9 +:10AC7000B4A21EB8B9375C7C5B5B5C28FE54FC3E1A +:10AC8000A979130994674A5900558A001BE798A1CE +:10AC900092F9275A6149D213DF1ABEC5778C3D71EC +:10ACA000D6D24F9234407BFC04F642402A57675478 +:10ACB000B08361D622461C2A5461D0FA606150CD1F +:10ACC0000218D58DF9F68BC77101BECBEC1EC554A9 +:10ACD00023FD31E33825460E9B9B8C58CDD079203F +:10ACE0004E46747DDDE4594D0A6FFCAA552377B4B6 +:10ACF0005BD9B125C45A31CE41F16137F7C4009018 +:10AD00002FDDE46BC5DAD843EA7536D742DBAFEC0A +:10AD1000EE940E7480701F4F317995AD8CA037750D +:10AD20007C83080B8F4E15B7D3E47DB0795B3FABC6 +:10AD30002CEC5B904C2D93A88CAFB95B10F14003C9 +:10AD4000ED5040CD73C25EBF46DD99F10317CFEFE2 +:10AD50009E03D498E7115C95F3F19B70E1F19C5A46 +:10AD6000403F5A6A3C6F60B7C0D97B7B4995674DBD +:10AD700088AAE68EEB3921E46821336D9AD21B183C +:10AD8000294A6D7256441BDBB31030F35F96596B42 +:10AD9000DA1998D44743A8AEAA6FDF8191292D43D1 +:10ADA00060C083B5731D4017BB7486DC03CD8E95E0 +:10ADB000A6A2A28F8E95B465CFD6FF9DCE9D1E0E06 +:10ADC000AB3599DFF6936589F51A8C0FE759F69E36 +:10ADD0000023D04899A4640C9727C40A37B7CE81C2 +:10ADE000066DDAACF7765BE749F2AB7882BE1C2BD6 +:10ADF0000BDB0F3FB21901D447D4DC05635B44136E +:10AE0000F0A884BB4DEBF0A2B640BC02B09E9A3BCA +:10AE100028D19983725317392297FAFFA3B73F5964 +:10AE2000E4861441F77402D7E5609806F2F8B05D45 +:10AE3000CAA85AF8466B9FAF539611CA3916006AD2 +:10AE4000846FA7AD3F6BF3A82C3EF135074A43153D +:10AE5000D53AD66CCEF5CE21D272F129D461CB8011 +:10AE6000B90EAE1EF06A0274748A86D9129855F033 +:10AE7000993160AD34A816A951CB316DB59D2064D0 +:10AE80009A646409EF26E8EA6993C910FC7D555974 +:10AE9000A179CB949538D704F8601893CD38853CC8 +:10AEA000947D0B136957E8E5D1CFDD6E5B42FF1D42 +:10AEB000C892C73FAB923FE546FAC21B547F34A30A +:10AEC00036D650551C7AD402E049F0DAE338161928 +:10AED0001AD734C2D1042C6645B4F0CB5D0207B456 +:10AEE00028D3BC67495C6C4B4881183E05CF85DE92 +:10AEF0003F6458054CF464E94D209DB5B4689FD873 +:10AF00005330F99A30421FDCF3BA5244FFC760FC59 +:10AF10002AC7CF5DBAD75471BDAE4E1C6E6DFDF61B +:10AF200076C6CFF00E21229E1EB7EB13948376F9DE +:10AF30009427AB83C82833ADB75C9500BA51BF1ACC +:10AF4000828DE23F64A7817A4E822F481DC33D80E7 +:10AF50009779B08FB766226AEB22A573654154D00A +:10AF6000DC8CD4549A1F070475F2CDE809C024463E +:10AF700012B6844A4CAE76117A716CB671D392389F +:10AF8000532D8B3E1E2A395459C24D987F689B2BF6 +:10AF90008200CC05D78AD4403B981F86E982AA71EB +:10AFA000D11633401329B40BFA4CA0DD31B075E54E +:10AFB0001F743312EAF14A404D5438D2C0E7950766 +:10AFC000C10888872FFDBB0BD051532F3E1D61A4B4 +:10AFD000773CAD7DF76D28C5CE470F887863DEB02E +:10AFE000282D4229CDD3E36729DBCD66A5B5DC99B1 +:10AFF000FD5CD8C677B530E7F7677D6716923C8A67 +:10B00000D51EA736FE15DF6725884BDF55A418D55A +:10B01000B4DE019C92043C7A9D5FE9844248F63D8F +:10B020009169AF3B7D74731C106093B405C22CE42E +:10B0300033A556247CEFEBA2D3E881A779B7F0DDE6 +:10B04000C052ADC5E23F69DCF16CEAFCD75BC6E6F5 +:10B0500074A82A88062CE6D5F60AC95F9CB67B75CB +:10B06000A471A5295536733593FB3980A02CE913BB +:10B07000E6DF1E1162593CF5416F760AFE1ED5FCD3 +:10B080003117B452A7503AF1B52271CAB4890A886F +:10B090005FE458566C1FC5E60B5184C4E2FF13D21F +:10B0A000A3616ACBA21E6F365C1A5A1DFAC0F2A0C9 +:10B0B0001D3C207FFDA9BC70EE7F4BAAEFC5170396 +:10B0C000C67DE9675E756EE2788E0A9C64D1E1E028 +:10B0D0001486C6A7D9A6DBDA3328E1D5308AE88AF8 +:10B0E00024AFEFDD9B5F9B8AE57AFD3AB7B0C94597 +:10B0F000952AA630BC174C52D13C11B0D31F58E151 +:10B100002659577D44FC992817AFB1206840371560 +:10B11000E7B494569ACAB0F5618112DE3AC9F7DDF8 +:10B120003D88CACC07ED5A24D659915E74A821A94E +:10B13000E1BA43FAF86FF2C93F6E47B944BA68BD45 +:10B14000AE9FA1525D2DD2F32B82D1D3C658F537D5 +:10B15000448987F89C7B219E752CD8C8FAB4A269D3 +:10B160000B64A67E7388233835004472F741695D0D +:10B1700029E688AFFE941D6D4DAE833AD7EDB71525 +:10B18000C58D0FAF90224374E465E2E9EFD05BDF39 +:10B19000A5601849EA88221210094A547B177FAD2E +:10B1A000CDCBAFEBCDF8D450653E82A86CD7A4C709 +:10B1B0004FC60D87C86C47D61423EB1FE9E906B5C7 +:10B1C0009A32EFB4204468D9E4B6799121601778B7 +:10B1D000901F6A9DCF1CEF4E0BC428D9743D1B9D58 +:10B1E0001E4432580CB598D4B1BF411F1FB4F4B3FC +:10B1F00084ACF14C4EAC2415495402E0B4A920971C +:10B200007D03051E606AF9781E119C52814D06C0AF +:10B21000CFD37E403171C17FEAAEBC9FA01A2A70A5 +:10B22000C7ECB445C9CDA5B2011E58F40B004DBD05 +:10B23000C4D01588323F3360F7160B4E483378A0E0 +:10B240002160BF4D26B740BDDF0002235CEB85D1F6 +:10B250005C1589A047EE1032503EE23941F43ED3EE +:10B2600053DF6CCCE5B4E2199D9FBD42B04D97E52C +:10B27000A318AA3BA047D8EF9BC77B5FD721C999EA +:10B280003C45D3F0BC6A6A74128FE8BBC4B7EBB517 +:10B29000BEB58897A78F42E4B76E0FDCDE13C832C5 +:10B2A00056598F5A170102B1D37D40D46BAF351A6E +:10B2B00042883AD23FF5D586C4A2FB07781017869C +:10B2C000B06CE790F5E61823AA1CBC0A5B69DD4860 +:10B2D000D14E99816A76954D4CA7E961317F482717 +:10B2E000F208B075A12F5683782C946AD0B4A216B8 +:10B2F000FDEA6C3F22284AE4001D5843198E9A59F2 +:10B30000E4A162A6313158554608647EAC573B83B0 +:10B31000A7519ACDD490D145159EA5D81C4922FF9E +:10B32000654A6975567B2928D8B1B3AD1AC61CFD8C +:10B3300027278A8241B2B017BD9C93A25AB5BB6F32 +:10B34000C39EC79F2D0A48D44303C2DDCA89EC249B +:10B350009C6E1E713F578D738DF6893F473885BCB3 +:10B360000CDD4EF9A8C280E7DEE173C527890A2902 +:10B37000378844FB25D2A2E72DB6C9890845824803 +:10B380005A958CAB3CFBE6ED84836B6D47435B5970 +:10B3900054678D8CAE90267E7D364314A7F84F55AA +:10B3A00093CC4B622CB1700B571CDF16DAC6B64338 +:10B3B0007E6235A797415028E60F902625CD62CFB3 +:10B3C00042B40E154D1C9F971D0F981F5A76881971 +:10B3D0004FF702A69A3E167EE828144840B9C49B4F +:10B3E00063CDE1C035DDEE446810EDA29EF40FEAB6 +:10B3F000E4FAE76A5B240BF9BA05FC7E48728DFA21 +:10B4000051A1A255E6483CB0C0DB48FA0B2C0FE432 +:10B410002CE1AD8CCD8CEE3EFD44F66F24AF0AE1FD +:10B42000C428AE0329DF730524F32141A38AF6491A +:10B43000F2AF6D37BD2E4A2628294D1FDA2A79EF43 +:10B44000A3BFED86796818BD7F476E2A5C20C54B87 +:10B4500072E9F95DAEE5151C47DB696A96730796DC +:10B4600015DA56F9EE1AD00D990009FEC478DFB34B +:10B4700047DC1A647767207ADC7885325CB78742CC +:10B48000252985A94C65AB0D5BCF6D889B1F2B15BE +:10B4900045E0DFF9F9B7AFDA2B7FBA779595BFBFF3 +:10B4A000988C95F0135A63598A2918128FB0F9476E +:10B4B000D59DB1B62B158E05F3AE559868E84C3383 +:10B4C0009E20104E69B7E4FF6F46B272A69E367C8E +:10B4D000701EA1F5617B7C76CE708D2CFC85C23D03 +:10B4E00057DA48AFD6F69BEF33A9E16822DC93E147 +:10B4F000BE5E815362CCC6BBE7C7E66061F9EDC8AA +:10B500004B076A86EC0EAD340A7DB7EAFCBA9E940E +:10B5100069FF8CB8B163B704D9B0FF2AD517BA6CEC +:10B5200059D1E60FD942C329C648829E430552BE6F +:10B530007CA6DAA190878B395191413EC0E3369DBC +:10B54000B1DB965C02B716E1B35C9D9BD463ACA003 +:10B550003C6D6078DD32C876C7CEB3489B86D7DFB6 +:10B56000652A2666192D0A2B3EF074A63D61B4B3F8 +:10B57000C8FFA420FFDB493BA96984F94FBAA000AA +:10B580003769E440C76E3541DB0B241FA214A5A820 +:10B590006FA17C4E36F8779853E62BE41C95DB2F91 +:10B5A0005DAFEDC15249165108BB7342331A102CDE +:10B5B0004C3AE3E7F4620FD61A5B0791126D9506D9 +:10B5C0009BD96195542AFF178FDD49764D98E22A61 +:10B5D00080FA47715FE487EADAB6DE0AB74F6F9FF9 +:10B5E000F33890C40847CBF4FE09F7EC39F70C7731 +:10B5F0009C7DA1EBE1E4A8C1F4A1B65BAC8873EF3C +:10B60000F174B5C3C136D297DC1DFBE0B88903ECF9 +:10B610002DC62EEC29C505E27176291274E0EDE9FC +:10B620001EE7A1F84603432104F67D65DF685F7ECF +:10B63000EF0C76A859AEC7DF23BD568558CD99DCEF +:10B64000C3CF658590D2D9A703B161CEC9FEA81F2B +:10B65000D3680EB3BBEAE5AD0EF10E2E3C146EE5D9 +:10B660000A98B54CB8B6084C187B04088C69388722 +:10B6700047AB8DCF141D9CA770BB09ECFB8D67B742 +:10B680001047D28144C22CF35A39FDAC78F25C7376 +:10B69000962855FB6C392169F90C8DA1FD74FDDCF0 +:10B6A000B6B14BF86BE442F8365AFA2827DF736DCF +:10B6B000ECDA90189458B52FCF5DF39686926051CE +:10B6C00066E84AB72DB6557920CE8BBB2BA4CCC4E7 +:10B6D000492D25DA179E04609A51061E06B0458D45 +:10B6E0005AF20512D610122EDD704E936B449F292C +:10B6F0002F33633CF1BEF106E481AB8310E54A07CA +:10B7000092799128CF309D06F074E082C53BD642F5 +:10B71000F461AA3A98D835BF3C64F3AA18559D54F1 +:10B72000FF15BC7CAB57742B1AB37E86FA117E9A38 +:10B73000904F2A7AE30245F6E8D68CC752AB997E41 +:10B740002CBA5098D371ABD4840F16611D68AED05B +:10B750009EFD9495BFE855F4511BD470F653316BA0 +:10B76000722201DD6AA63D0A4415D6EC3ED758F791 +:10B7700077184378B3AD3BFD2B1DE96AD00F348EAB +:10B78000C3D3C680A4F4405CDEEDA22EF0AFEE6B16 +:10B790001E1ED6532F93FB27DD9081F76BD24928CD +:10B7A000FFBEAD413378C0601CEC5D08C7A3C4E99F +:10B7B00024B8B67DE2A4056AC7FA2A029E32F98A45 +:10B7C00065820C0EB3798D7126663661485C95B33F +:10B7D0002944C310C7A684A59F5E28C26AD2E5ACDF +:10B7E000EEFC0C7C6450A1FD5E51420B36D8136E0A +:10B7F0005AFDCEB4923888CCEAEDC6D71ECA4E1098 +:10B80000DFCEAAA3D17D2B2BD9175A9512D9DF31C0 +:10B810004085EA25C0739D86CC2B2B5F663DE81AD8 +:10B820006C03389815AE08D42D948E7085FA4D1A95 +:10B83000AE061625E2885BF17C54FC50337B2F9AD0 +:10B84000065324672362B4DE749023F174D42492E7 +:10B85000B2A82DF0578CF8C026B77F4144502EC4B3 +:10B86000973B7759169D6F374BDC60F66178C3982C +:10B87000145BD03D9673CEBB3E38AE6CC1BFF9377A +:10B88000AF49AE33816FAB05ADABAE99F669FF3F03 +:10B89000E911B98FEB16FB441AB9BEE6711EFD34EF +:10B8A0002418B8464F1FFA96C5D3AEAB79E8FCBD55 +:10B8B0005E9022240F1D0B05F0C5E4B419536104FA +:10B8C0001D0990A674AF780A5CAC374DF72434DCC0 +:10B8D0009FE09C0910A2F1A12FA15BC8A4D8192E4A +:10B8E000D1818E89EF7E19A12E7A029D1B1B3463B4 +:10B8F0003488A088F18638D9A019CFB335CD9560AA +:10B90000DFD2F1599DF3CC3CDBD1C44947C9015783 +:10B91000064EB9E7B9E0DA5BAF448E55B1DE61ABF4 +:10B920005A12A6CE5BBA2ED78A9F2656999BF875D7 +:10B93000DF58A3C1A22F2BD24DBE1B4E6ACA432093 +:10B940002F83AFA6AF82A966AC25A6DEC822C4812C +:10B9500064519CC2501B6B901285E73582506A235C +:10B960001DD1E7A48CFB276E3860534D819628D0FB +:10B97000DF1D720CE41E2665D78096582C96B1C048 +:10B980002C92BBDC24C3B589E8246CC75258F2FE64 +:10B9900022DEDC1BFD04051DFC06A67135D7417FA8 +:10B9A000A0F81BC770EE52543395DC9A3CE73F0673 +:10B9B000D9A185929A6133EDFFA8C89512B29698E5 +:10B9C000A3E0C2C6ECC6B8AD6F723F9119F3585DE3 +:10B9D000CB1F34E18DD274186DA703AFE490B9AEDC +:10B9E0005A6B3FBF7CD5C75611C6A449B64288C022 +:10B9F00074F4DA0D4A6429F68830890D2D2C025131 +:10BA0000A7524FF7CDE49A9BBB802D0786FB4FEAE8 +:10BA1000993510153844374C70BBA466A776A065DD +:10BA200089FA2EDB60CA9966516D7378CDB6281FEE +:10BA3000813300DE54EC1898F8A968DBE3EF1A13A1 +:10BA40005D61B46DB3E3F27C473FCA465BD3B8C3D4 +:10BA5000B17EA8AC270992EDE7FE1DA8C244549D13 +:10BA6000F72059F527EB2A9C9C3EF9C45AF8BD777C +:10BA700003DB494D25B7587A45502A6F41158FDAB7 +:10BA800044D03CC3984697BD4B60602A3628CC7A98 +:10BA9000C4F3E30D716ED2B427D156F31D26F8E23C +:10BAA0008DAA77079998355BFA8BF26890455BC948 +:10BAB00015961984303E9128A22142B16653272A57 +:10BAC00055C80DDEDF7CD2A64A4E720C25D2F14954 +:10BAD000684EDE70AD7B2838423A827AA0B7D5AF87 +:10BAE000A65D026D2EB1A907EFD57B5EC42A5F3635 +:10BAF0008D46072D94B5C6CE8E15DD75778770CD32 +:10BB00004E6365C08FB22940C992A6D8917006369F +:10BB10003BAC7CF99E79C4ADB0D96BC8BF3E96DC16 +:10BB2000AA21838B60F51AE5CAAA35419441478161 +:10BB30003163159A97B8FEB91EC6C301ADE4465AE3 +:10BB400010C1B84A07FE8D50299531422635E5735C +:10BB5000907EBBF79EE2CBFE69AB0FAA536908AE9D +:10BB60004A56CB7D7380C8FD14B618A0242266689F +:10BB7000D256D803152FD66D3223E85EE9B2318153 +:10BB80003BE216E2212C13214A7BA68DBDD2AC8E5E +:10BB9000897DD1FF8BD0110512B30CEAB313BACA59 +:10BBA0004EAB6EF51B365F119876BA75D64897ABDB +:10BBB000DD482DFE95EB7BBE3AB702316D18FEDEF7 +:10BBC000A4CA280C64E06AF43D73F6CE1F320B352C +:10BBD000CE43C96A683768ECAEC28C1204FD19F412 +:10BBE000966ACAD27BAABF4C1870164A5FCE21E073 +:10BBF0008868C54D0C6D6F952D1FCE0520029C1CCD +:10BC00004F300C07DC8F9F57C1FB4E0AD132931087 +:10BC1000904489C97FB2AE5BF3EE67F0DBF6F59F27 +:10BC20005154F6F95A8AD8282C3245AB02D3C2D4E3 +:10BC3000714A9FB8A415D1DA9BE665BB52B324EDD7 +:10BC400027A767B15CF0CBAE8AF95DC3A155AD8A79 +:10BC5000E05C02E32C0036F31754C23DD6455F2961 +:10BC6000D6E7A10F3F7ACA73F4566764658E8009E0 +:10BC7000F59B437944100B2997ACD71BF352E21381 +:10BC80008F3661C228AF1AA0BF19E1F9D0C756801C +:10BC9000090A90396D254DADBD4A570CD2AFCF532F +:10BCA00019B602C9E7D113DBBAEAD5D4CFEC1DE946 +:10BCB0003556E563CA416446EE69B3B56B0C079E21 +:10BCC000226F5A7D4A6B926D5FA6D10F1AB7A94BAE +:10BCD0000B0F8BAC503645D1A9FE7F5685C5678EBC +:10BCE00019F5F53184577BB526858CE526AC9EDCAD +:10BCF000937B2CB9B76E2719ED9E5DEF336DA92E9E +:10BD00007307256B1DEDEB90A894658FD1A80CFAF5 +:10BD100087769C588C60BBF49889D22C08762EBC10 +:10BD2000B81F9AEA9BD1E235F9A8AD1753F824ABB6 +:10BD3000850093EDBF78817546328292B7C657056C +:10BD4000B390CF9E3E3BA0E7845285DD248C2E3EEF +:10BD50009A3018AEDCCEE70191EE8CD1456DABE6A2 +:10BD6000B446C73B87E5DE85C5C7E126E38F945E11 +:10BD700094F894B14C6B8DFEFFEFD413CCCBB5E1AE +:10BD80006FA0B74C3882A2C743ADF05DF57863D899 +:10BD900001D59016730CFDFC09E6166DB71D244203 +:10BDA0002D475A66B93A7C5DD9CDE25C5BA3E9F9CF +:10BDB0006073337223A0FE74C00D201292B5DF5061 +:10BDC000BCC78716B468BAE747056EEA4F1D56D858 +:10BDD0004B9FC3614F34C48463DD830852F1475FD6 +:10BDE000F7AABB18B100AF9B9B25483BD8AD143ACE +:10BDF00033717E63E8F3C1176DA24A3A84B549B343 +:10BE0000FF06B459F32E7D24F28198447B698C6C33 +:10BE100045486936C875B5C28D70D966759A8BE587 +:10BE200075AD6A7A487D2062BA431AF4C0B62938E3 +:10BE3000F7147B5B5A18AD25156842F366B6566158 +:10BE40006ECF1C13905B6871990960A56E94AFFD6D +:10BE5000CE1B5EEC9936F7358B99E1EB6BDD20025A +:10BE600079417E0F28A8285FAE50C3562B0B5D5436 +:10BE70000873537BD62693E24A1CCB79B7C0D19C7A +:10BE800098FF27518C8A9CF450E11CFEE4250E0C8F +:10BE9000188A7A7EE610088434E6FF97EBA6214DD7 +:10BEA000587ED84DB91A3EE3CE721AE4D067DE89C7 +:10BEB00004E07A71945FD81E75B6DAC63D8F42648D +:10BEC00091E324F1A1BB8EF11B6FF55EEB762B7035 +:10BED00029AF381E01872CA50118BDEC083BF7F2ED +:10BEE0004D74F3CBB41C919D3D956656895F6D955D +:10BEF00002BB86B5F9B7975EC33A7ED39D0D462542 +:10BF00004D74C779D490D92EA8B7A03796A9D8E98F +:10BF10009C3BFF11AD5FA0EE142B224CFAF13D4586 +:10BF200014081F8BC25985DEE218CFC558862C2A0B +:10BF3000D7BE69B64F697247C3F984935FE8797ACF +:10BF4000417CCF60414E1F6E4BE9C7D5CA16FAF24D +:10BF50005FEBBAEB7AB68FDB6937FEB85011ABCB2B +:10BF6000E8BDA03554FDA1DA5D45E8AA2483373841 +:10BF70005E00B80C981E3590E1EFC21BD2A7C471C9 +:10BF8000D8DADB3A971E4DF7E4850573254823037D +:10BF90000D71B6664C787AEDBE15912F321276256A +:10BFA00041339D8932C38124BFBA3F05AA3FAE8C7D +:10BFB000727B73D0CA0A8781B3FCFD4B5952284A61 +:10BFC00047F8B02C4F39CA361AF98C81726865115E +:10BFD000EFB67D5C966328F04AAF351D81FB903447 +:10BFE000A2BB54BAD534658E2687F1C3206BB60E3A +:10BFF00086402FBF61289A2473B0992BBAA4CD5BD9 +:10C000002ECD68E07C60E9A1317A87EEC487A1B0CB +:10C01000DB9BD0BBFFA6B50C7F9CD7A06F2EDF5259 +:10C02000E5DAFA2137649EDFDF3E830BAB00F6FAD8 +:10C03000F1ED66B4A1A60E783FBB73D6065B4B400C +:10C04000EE5BEEDC9B75E379BB7BDAFB189200E1DB +:10C05000A10CCB13DA936D6EC6E9CA82252D31FC93 +:10C06000BD899F6222BBB8E27A0FA21DB382041879 +:10C07000DA166068E5F4AEE0C7F0D552758A7B51F8 +:10C08000919FC43EA5C4D9D572C262BD1FC235DF1F +:10C09000996021201343D6F3B151C6E04B7160E99A +:10C0A0009B6D294630D3FACC40B0F4ED3A2D19807F +:10C0B0001AB917848B8C6C77021C5C1238AA7B2609 +:10C0C0007C05A2467B2A815B1F8AE15EDC77EF64F8 +:10C0D00064F0F7E8D153629E9DF121A2736A9853F0 +:10C0E000AF0349E5DF086775B1CA272F90762B406B +:10C0F000450A03CA8CD0191CEE09D6DD04E0BECD7A +:10C10000516EFCDC0BF67C52030B9C5DDC7C3439FD +:10C1100093858C6A683512DD063863A1814A7761A0 +:10C120004E6990FB177268A03BB01C46BE2F547D31 +:10C130007E84C9E7D8470088033F569278B06EE303 +:10C14000567D1F8D0A4D0F450D1345355C23194053 +:10C15000C2EEBFDF290D61461B9D1E4D41C0B75584 +:10C16000C02E3157D722C73B184D3566AB648021AE +:10C1700065B081125AE00CD8E7BCD41774528F0B0B +:10C18000EFCAE9B7818993B337BD3FCE81903B5F5A +:10C190006C19A5B3E230EB5147FD236FD584440100 +:10C1A0002207166204FDD6E20280A31D85041DC489 +:10C1B000F547B680538C5DADF9F2472111183497DD +:10C1C00098A974E64D9C52E7566462F3FC590899AD +:10C1D000AB9D1D7C8F6678CF12C33E0FC4D46183A4 +:10C1E0005417EFDEAD75EA5D8964D605A63A35A130 +:10C1F000151182A2EE6B45E308AA17075431574484 +:10C200001188AF6186B7D5D1E7507F6BF1D48CE14F +:10C2100024CF2001867184E4A6264D245AA1A84883 +:10C220002749817D9AC7C34C3843D4029BC9549E89 +:10C2300037C2AD2CC604DC41B75F16C16127A5FB30 +:10C24000DE6CC4E7529CD4DCFF81CC23CF515A89E9 +:10C2500014F4B924A8462A38339F4802CADB8B0C51 +:10C26000DCE24958CFD693F09484F48F86788972B3 +:10C270009775BD48D0E78BBA770C06D299BDC742F7 +:10C2800012A45F3FCE8CB0E85E30CDF1C16EE7D630 +:10C2900052575DE31A94F78FE56ECA3F6768CFB8CF +:10C2A000FAB651C75AFF6E5E557B9B4D04DEF05FB8 +:10C2B000328FA621A7A961023C627359F30959C9BB +:10C2C000577FFEB996C0903A37C672EB1B49A3233D +:10C2D00001B71DC8D7C17D880F44BD657D4C147959 +:10C2E0004DDF0BC3F8CA5087D06554608DF5BCACE8 +:10C2F000BA0B977A44C596EB82C28FB12717208A72 +:10C300008D401E05209DC3C36A6DE8FB597046161B +:10C3100056296D4D3B0E7D3C16485A802B2A2F44E2 +:10C32000052162629D66900E81426698B74ECFBB32 +:10C33000BA76D3BFE3D018A82376CCA542A8BFB362 +:10C340008D951C52D1A2CBB8E0124951AC1F59882F +:10C350001349D53F45BF6CE058D2E71E946C9868EE +:10C3600047F8DEE11D6706D114F903C3390E5C50AE +:10C370004F8B661D46A3CAC1172B76B7C98DE178CE +:10C380007821814D42B13E1126008382ED517A35EC +:10C390001E313AA0592C3FEA3BAB25B6C831E351D8 +:10C3A00042D901F7714DA395F60829EFCC04638CAF +:10C3B000D9323DF874FDD419DDD5ABF7F8775409BF +:10C3C0006F4CFFC56155F32BD9AACFCAF9A22BBD7B +:10C3D000C3C8EBEC9DD59CE6BA4D34FC2F68C7D59D +:10C3E0004633CE11BAE7E65C31C35548C7219DE616 +:10C3F00024DC91A05D9734DACC7B2D81B130AC96F2 +:10C40000DEA9BF046003E1147BA9885FF33BEB2C3A +:10C41000480D2F2957014E70B0677E77EE537F008D +:10C420008C528EB10D149D660188F7DDD6ACD41800 +:10C4300013834A70D32CEB43B04238C92119E787E4 +:10C44000525CB6EC389247C51BF1789E2483B1A8A4 +:10C45000CB945FE63A04519716F90E9D17CDC87D2F +:10C4600015900F45AD9643D01B871C2493E54C32A5 +:10C47000B2EC534083C453C2C5EA0785D875D1AA2C +:10C48000A1186BEE14F574AEECA7C4D9BC4E54E4FD +:10C4900054690B996B92C78F8275EE83EFA7F14DAC +:10C4A000EE2A208C2F07FBAD2A2470EABC1A499291 +:10C4B000B5E718F29530DB0E12D8D542E661B5B774 +:10C4C00014665D3666F876CFE3CBE0C00DDD1A600A +:10C4D000280CBC255B86423651FA5DFAD1C8C8A645 +:10C4E00035ADD8FFBC8CEF5E21C43E3A49A3E1B71D +:10C4F000A2420F7B0CEFA31B70B7669797CDE2D2D9 +:10C50000C9E33EBABD923672E9E7794DA0A97A56E1 +:10C510003EE32B86DA4EE6543796C4FD37A490A945 +:10C52000DDAD483829881C7EE6F22270AD00A2619C +:10C53000B375D25557551E67C9ED1684ACF9810EF7 +:10C5400031510A45ED8208621C19AF7BC267131E88 +:10C55000BDB3E58B4473D58A6007F2342B50B455D4 +:10C56000ACA8B71B7AA67C6185E42D15F79055CE53 +:10C570006FD5946CE9738E77594B157A5F939F72E0 +:10C580007A0C070EC3D835634F227CB753A9DB95CD +:10C590002A4D0B92D78833DB1709A6B5D65CADF3CD +:10C5A000E2F23AB089E5601F7278C0C595B03AB240 +:10C5B000E4D8F1FA8553808EAAFC384AED78E1631D +:10C5C000CC62ACCE6E209569D862617FD19C8749E0 +:10C5D000C461904A3D9FC6BAC55E23C5DACA1C59DC +:10C5E0006D5D285EB35A297FFDD0581D72BD046D64 +:10C5F0002A5FA242CF102472F7E0AED9F2344ADAB1 +:10C60000DBCBEB1FA04C88715E4633FB2FEB417AEE +:10C61000DC8D6005D899327038782AB0CE17E8DB07 +:10C62000F4616D3D506AF6702E7E4D993DFB7D465E +:10C6300005797B7D6E0FD0C0AB279C728755D06289 +:10C640004E5E07C9099FCB1EDFAC5D68B427B4E618 +:10C65000E4010D895539AFEF5FD9B7E9815F7419EE +:10C66000C62E70E5BFD6DD86E5E1742E3427385C32 +:10C67000DA19C095C1FEC474A98A01A9F53FBC1F8F +:10C6800085C73AE7D6C43E0DCB47CA230D7046BED8 +:10C69000714AD575CB5F72910B9B243D93C12ABE25 +:10C6A000B38E158C929CF932D46652BDBB1A2D966E +:10C6B000BD5FC4245E439AC18CBAAC599F56C07505 +:10C6C00023A3D0B2C131594C47B8131C4B7B1AD4A9 +:10C6D0009918BFE3A0A6981350874101A468C075BC +:10C6E0004ED07F3F7A92C970BFB9BB6FA9D0C87BCB +:10C6F000FBC2691E49218567606D91CE20EB4B62BC +:10C7000006AA7E7782B1228AD03DAC24AB07439340 +:10C7100092394CF486AE3A18B88D550586A2F32F9F +:10C7200059EB36AC655FFEAC94D9412B96A092F7DD +:10C730001418577374BE5B25DBC3CDD10A84DA8627 +:10C740000598D4BC68F071F1AC94806039FD3E96D8 +:10C75000A53C655EFAFFC22742B57DB84A93E14821 +:10C760004E3063FC8A18BA0572A9A294F4143D55A0 +:10C770008837A1F40C64C0493582BD92431DAC1AC0 +:10C7800008B3331B699A944BFAD58FEF3521E662D3 +:10C790007768267563695863F4AA29838791C17BFA +:10C7A0007004DC99FEB8695E8AC3F91812598EDDEF +:10C7B0006AA308E6259AFBDA30235C8F3AC574A198 +:10C7C000C894D5EF345B8A2BBA33F3490A4893DF18 +:10C7D0004F9E9709E9D26EEAF8DBCCFCAE772D319B +:10C7E00048A363586B4AB5BF74016445997762B238 +:10C7F000CD9D8147C6274B07FF623406A41D6C956B +:10C8000073F1AF055F9218E41C4B62DC404E7CA7CD +:10C81000BA6EA0057E73713EC1C15A7A9446829465 +:10C82000FFCF5C2FCC0090F8982F0C36FEE645C564 +:10C83000753FE8493ECBFC62AF7DB4C1040626FDDE +:10C8400086C66731A7BF6265F66DB08012BC2A212B +:10C8500087B702EC51E53CDB0881339C379CD17AE9 +:10C86000495B35E6C038B6E9E8BBD514B320651F8F +:10C870002877C5C66D768000E0A30C51D4A7385D3B +:10C880001B3F802D8CD087B731D5585DABC6A5DE58 +:10C89000F87CE6890143177684BD61FB0841FA8E76 +:10C8A000514EFE247AEA83E0626FBBC0789D8A4DC8 +:10C8B0005A81CC2292DCAE427A54318C3A478818A5 +:10C8C000DF1EFD53C0CCC202C49EF51B55AED2B7CD +:10C8D0007B5C21DA9A90ED54AB0364DBF53E6C4748 +:10C8E00008C79860FFDEE9C781582E91CE3662D224 +:10C8F000233C08FDF244866E05F61CE44F3F3529C3 +:10C9000082E9A6CA08156859C9DB8D08ACDB8BBD66 +:10C910004AA00AFE71837B45EDD4C5AE95FE93C453 +:10C9200028735CBD82ACCB89898135B603CCA7D690 +:10C930009D6668A5291B73EB18C107F27D0E91F760 +:10C94000302E19EFD521FE0F4FBDE25FC7E4B1E2F3 +:10C95000C1DAEBE4A038DDC545CCF8D2B894E36386 +:10C96000BE2D2F27D55C0EA7200A4620670610CFC4 +:10C970006852649476C5DFF024C789A2A35039A019 +:10C9800006B0D097F3124F2BECB9204D56FE049110 +:10C9900074A88FF8BED26794CF4A8E79DC0E8B26AE +:10C9A000187AAF843F6FAA268780772AF668BBCAB9 +:10C9B0008A92CB8CF22760F5CEF7D95B32DF93B049 +:10C9C00094DF45A6E8C22BEF95EABAF8B18AB6FC27 +:10C9D00089C7589634D8D8D9198C56A04D8223814E +:10C9E000C787184AAE3268B40A1CBCD50333F58633 +:10C9F00024E74905943BAD8ED947275BCC006713EC +:10CA0000914E6CBC16DD4D85F8BEFD10BF7E254EE7 +:10CA1000847C8CA2A1507DE76B07C7BF32FB5AF91B +:10CA20002988A84AC1F36CD5FB92455A2EF9416E6C +:10CA3000B4D3F0E55D93C5A614411150CECC09FDE9 +:10CA4000287DA6A9495DDE468AF501CA475303DE63 +:10CA5000CFFE198B7C64E710B42DC57104105A68A1 +:10CA60001A999FF520825ED8764627FA9FC1F993DE +:10CA7000C53C34E3A52B4152D78984A7AE418C3104 +:10CA80001A9ABC5F6B289FA87823F323BD23462FF7 +:10CA9000ED3952CCF3CD0FA41339763A9E1D5CCDFF +:10CAA000F70A9F3580C153832493A75A14AC3AA543 +:10CAB000AB55A7E69C2E121B3462962E3B4209A76B +:10CAC000630F4472280EB8F65C461122842ECC37D0 +:10CAD000CD6B730A70E9A9F54658E52DDA5CF46C64 +:10CAE000CE503033EA366FD3FFC03BFCBC4A41D056 +:10CAF0006F2FA7A247B7F5FDB2FF6B6FA6931D7B03 +:10CB000062CEAB164A2488415F6716661256BB4C4C +:10CB10007E400EF4A4E1282FE1FAF77F609C41BE2D +:10CB2000FAC997B3FFFE55B3D33B2B552B574D5640 +:10CB3000760817F7084FBB21DF468852291E169347 +:10CB4000C9EF5E8183D3EF8F97A0D6B31341F497DB +:10CB5000D10075DB2C29A2FF5F505A9BE7ED1F2700 +:10CB600032CEA1502A3E0ED415B39B05D495C1F008 +:10CB7000A46271709555183A0E0F5F07E8C2533ED4 +:10CB800058D52771463D7BE080FB30E2ABD9DF26EC +:10CB9000B20B239B0A7E3C6481F9156C98630F6B82 +:10CBA000CD5F0415574644825A4D8DACDEA10DC6AB +:10CBB0005AC928AE8900F998D5CA5DC42634ACB1EB +:10CBC0006EAA25961D7D25C4F40EA092EBEA621B89 +:10CBD000BCB8DD1AD19D22617EED7D428A8D411562 +:10CBE000B2C7942157B57E983CB1E555DAE91EBB32 +:10CBF0005AEE6D55273BDE1104537B290596E3C49D +:10CC000002A2FC4F3E22CDF162756B057F403ED5FE +:10CC10007BBF222C9BE73F34D07C0167D0B1E37708 +:10CC2000AB87050F1A4F07D2DCCAAC4E6E0E51A669 +:10CC30009981297EDD88DCC722A48FF56121F5D892 +:10CC4000EA8E626446F1A0AF6870B2EBFCFA4DBFA9 +:10CC500002CB6F8FBA71DDDAEF3D0491EFAE1200B7 +:10CC6000399AE5E601E020FF798692650B7BAADF21 +:10CC70000B1B1B48CB5862C9E77876C1BAF28DAE60 +:10CC800058BB24E8DF518325E0DC52A54EDB53C7B7 +:10CC9000954D113BBD089E52C5EA1B3C43DE46BB89 +:10CCA000DACDC3277DA5CA40FC24BA966F98A3CBE2 +:10CCB00049A8F223A11FFF2FD05784B64AD3C76AD1 +:10CCC000E76A9498D59D03663332BDC43409DBE628 +:10CCD0004D2DCE4B9427FEB820CE3594FB2BC93278 +:10CCE000126B8E7079D38FB8E01A3B687AABA86A62 +:10CCF00067D78DBF8288599391912E720D06F51DCD +:10CD0000A9D3964D3F04E2D5B6FCC13243D13D0EC6 +:10CD1000421510F19151F2920F081AEC64C00FB94C +:10CD2000C25A61B5CCF0219A616CD9DF6C2EE18CCE +:10CD3000F585346F0FFB9B057F295312A3188E03D3 +:10CD4000682FF4A26319AF6E159134AE423C051DF5 +:10CD500083D56E0B54DFBBC37A2CF313778E281860 +:10CD6000F930E799EA3EABC898319A585134260C0D +:10CD70003698484049468ADD1839A62EF980D2C037 +:10CD800095B4E882C6FAB817D6C97B74A273216D30 +:10CD90004DF5C331ED689283C0A8FB049044911A0D +:10CDA000CA318DA9020FAE391CB4BBF10F02FB844E +:10CDB0008068D8EAEC1ACF83326933C94F7804D837 +:10CDC000AA56BF10BCF92F6DA828FB8C5DEC9CB94E +:10CDD000EDE31BB0B8D057B5F96C1A90AA6F639AFF +:10CDE000940C71F622F7C82115310357EC20FA791B +:10CDF000C07FCBEBFE1EFEBC048CCA8E0C0DD33262 +:10CE00001434F9830128FCF9703C43A3987CB2D315 +:10CE1000D4C76B133BB082E0BD68F210E3E28BDB5A +:10CE2000F005C6FA555463868A8B9C14EB59161F7D +:10CE300007D1552B029981FF114B760F22A9A6A885 +:10CE4000A2C646424CDD11124A685821CC965D3389 +:10CE5000A2100FFDC35AADB1FB35F2DA34B0BD9E5E +:10CE60007CDBC6673073D13E831AA7FC91A7B666F8 +:10CE700014FEF054EDC3176E8336C21CDD9218B653 +:10CE8000DB697ECC1BD1BEB7A2794B16E51C367A86 +:10CE9000502AD630778A01C445FB7B4DD75A5E4C69 +:10CEA000178259BC45358C6A94AA26A2060BFA3122 +:10CEB0002D5C077E1BE6BA1C9BE1F7DA34F0838613 +:10CEC000ACCAAADBF970AA7511C4194B2436610DDE +:10CED0005B762F7FBCA2BBC20ABCD450FD91333F0E +:10CEE0004965D9DAE76C9D09778E955D1DB9CD0648 +:10CEF0004421B5A107D598D931537161B82C3B2095 +:10CF00009506B9841A2D3B25A3683C2A438B9A5A6F +:10CF100011DE3A1DDA2F32F995686FBA5564FCD2EA +:10CF20002B22A88F6AA310E657BD4C2B94F32E73C7 +:10CF30006494C5AF0CC6864429D5081D7ECEECCCC2 +:10CF40004DEBF9F42CCA14EBA709C642ABB08458D8 +:10CF5000F265688C517C038F9EBDAC8D6C8A0DC6CA +:10CF6000F7E5E95BF3E5814968FF6E3C12F2B566CF +:10CF7000B8475ADE2C4A7CA5E079BD47BFF658AECB +:10CF8000AA22C05570AB43030606101189BCBBA68C +:10CF90006B7AD33CA3B55FD70DECDFC36A32F96778 +:10CFA000C0FF776C1269298A18C87F8BD7B3FCA1A0 +:10CFB000BC665AB3CF405A83D770F514689A0BAE4B +:10CFC0005C5FDEF3B1F07E5F363783EC25FA285ADA +:10CFD000AC277C869773D9E345A91493005F8151F0 +:10CFE000B592CA7B38AF8B127871C111163856F6DC +:10CFF0001D626CDA8459054189E12BB9EE0839D0FC +:10D00000AB84F45442756756757282E734F3F2EAE2 +:10D0100099B6DC2F03AD6ECEC63F6887B8330037B4 +:10D02000C1537A7754E15692A9FF4823284BF6FE64 +:10D03000D1747E40463C9DB22236D41518228429F4 +:10D040001BAE50FEBC76DB028995D961A1AABB3C20 +:10D05000490F4A26181DC32C4F1BCC99C1AD3DD496 +:10D06000066F3A3F32387A66B4DD629B9A2D2C8582 +:10D07000CD2E07DB38BA09E0A64DF7A54785936C9E +:10D0800008D589CCE4970ECF97A1D4FDDEB72478DC +:10D09000EEA73B152737E048F676F237A20932F9BA +:10D0A000DFFEF8815EFCEDABDF17E0CCC13F859F72 +:10D0B00055C36F3F50813C9FD0637B9B39EBDD951F +:10D0C00057D536B15155C2799146CF5D995BEB8DFD +:10D0D000C2498B18631C373DAB4F61337EE863BD9B +:10D0E000B8DFC40E288DA90904C786F9C006D39BF2 +:10D0F000E5CFA8EC7BA90F87F54C5880B03B118C8D +:10D100005992343E884C4EF4C4D3034C360BB5A52B +:10D110008C806D64AF3F8AD6D97276E56B99378281 +:10D120000FCE1994EDE525A6F4D1A215D5FC20CBA0 +:10D130005FF3A349FE22D8BB2561513B11D7A181E2 +:10D140007EB5418177F41CD445A76AF00344FA09FF +:10D1500043CFE2CABFC2AFB86A31BEDFE99F6F9664 +:10D1600084A6B5C227842D6722E9BE9F191C5FA142 +:10D170004854DE8270D26BD08DF0375E3758F7B5E9 +:10D18000248F92D0F8F8D01A79F90120FFA19830B5 +:10D19000FE07A4558C2521954A7EE2FE0B9762EA94 +:10D1A000C69405F18700ABFF7CB2BF0240D7B13215 +:10D1B000FAF64993BFAB90F52AD49EDC1449497422 +:10D1C000FE7FF98CE2D1E5CD75D08BA8230659629C +:10D1D0007A112B3588B7A42E39B539643CE13C2E41 +:10D1E0003E2BC5BC21F8D09267367473F829321CE7 +:10D1F00066BFC94E9E7E9440DF089C4E2AB928F82F +:10D20000EC71EB06C1B7F88692476BECC0A730A46F +:10D210001B1460FDDF2F7418E2915FED524033B4B0 +:10D22000C459671AAB39307562444C850E52A1A8B7 +:10D230004ACB1C1EB7ED539862E06DB2689DBC539B +:10D24000952127907D0775AA41DA19746A2FE9485C +:10D250004323480520FA2843471CD1037E4F2E0064 +:10D26000B7CCD946B5ECF79536BFD4E5BE99152DA8 +:10D270006E16D939225DD31BEFE3590D3F3BEE2FDC +:10D28000CCCE3C2B400A63CD3B5C04AF3574509F41 +:10D2900090ACFB60D03F934225D2F0D260B1080A37 +:10D2A000451127DB7B4FF895B9295031A445DD8323 +:10D2B0008A11EEE4B9DB18902EBF63E26A076B7C3B +:10D2C0008812B9179E2BA85F97FC8B63B9164A5C2E +:10D2D0008CB9BC5B460365A070011091F47F626459 +:10D2E000AFD2373E1EE14CAF63A116BA9D64770CF6 +:10D2F00054247F462EB49768075B5A7DF4C8A39EDA +:10D30000CFDD80720A7275FEFDAC13608971B05F6B +:10D31000C617FB3E415A8347A1FDBE94B4273A98F5 +:10D3200073CED874FACDA204D27FDD24CAA5335BB4 +:10D33000FAAD400939C179CD4459238D983F4F7CCE +:10D340009E3E6E3FBFD946A2A69167A6451BDCAAAA +:10D35000AA0888584B2EBB89297EB574DB91DC2D39 +:10D360000B179B17504E80CCA7A46F887894DB00D6 +:10D37000C824C68EF13316B4B5D2433F6A6F5079D4 +:10D38000CA45E4135FD42D451DCC1CF41B30388AEC +:10D39000D06E33292A39FAA79019FDA21FCF4482F3 +:10D3A0009EFFCD51B310866418E88C37283AFFEF02 +:10D3B000B4C0D13F5E772B0D0A24871D375FD62777 +:10D3C000ABF4E8C8CC9FD49B185A7153503ACD6A3D +:10D3D000991D350815EE0732E24D3E5D97A90824E8 +:10D3E00010CBC9CCC046C02663C8026F22439E3D05 +:10D3F0006C7E5704B10C7013A10E109A5C3D6F0740 +:10D400008A7887E51BBE2D5FB3042F13D47D027489 +:10D410003CE633828E93951FA75C63B09977F1C485 +:10D4200032D0FCBC7FF7698FE961530068FFCA7591 +:10D43000FAEBF7E9A1A7E834819163D2998D4A16F6 +:10D4400063C532FAFE088DDE6980895BDEB0602537 +:10D450008FB72A13367EEFDC3EB707E925CBD768B6 +:10D46000550EA423FF9697A0B287A1DAF03F1D289E +:10D470003CB78C9F3871D655AA8EB9330CCDE8C90C +:10D480002495EC9AC9A4D9D1137980F4CFEA918C70 +:10D490003D487FCB626E1E4564427BE8F963823A69 +:10D4A000BEB48C82E53D9B84B8CDE62410B0D43761 +:10D4B00014B272B256DDE890CD4CE839494C540BA9 +:10D4C000EA99B218DAA5D60256A1098686D78778D6 +:10D4D000A410F37C0AFC93263E4DB039403321C49E +:10D4E000F515CA744C715BD7E8972E4BDE41AF310E +:10D4F0001F841216FC68B107E2927D1E7AA5C97ED0 +:10D500008B3BAE9FE5633332C92A8B4FED350A98CA +:10D51000297D2AC0A27D1633177EE79D01BC79FCC8 +:10D5200050EF461F6F08E1C1C4073FDCDDFD644DCD +:10D530006FEF38928D8046DFF203CDBA1E70AE26B3 +:10D5400004836CD8F605F89EE1BB23C368D880BA83 +:10D5500083510BCD921AE7D828D4EF44B2A1D3ACB3 +:10D56000B6E7A3BE9AF7B4EDA578B51615F9D54080 +:10D57000C7B47C832A8644270203D642C4EE600DDA +:10D5800004728FE0354147FE5FE8BEBE3B1C9C54F1 +:10D590003CFEDB308389C99E9F4C0B306D6DAE0124 +:10D5A0001169D6B824893FE9E96C25E1542C483C3F +:10D5B000165EA7720A1ED45BD083534B74CA7A815D +:10D5C0002FEF168F7F82E33EF69C56EEB82F13FBAB +:10D5D0001FA34C8F8EF8628ACA74E84D2D2336CD76 +:10D5E0003C368D1D408321190F3C9B8DEA242A680F +:10D5F0005FF93B46824E5937AE2604608016C8500C +:10D600008314E3003A7B310798846CE607B8E53C65 +:10D6100038B56B0160D689B3B9212BD5430817897A +:10D620009E17D47502B884FDA2A116BDA1B5F71F3F +:10D63000BC6570E6719F30308432DDA7A47C3C1855 +:10D6400029B727BB74DC2D341734669561513F86AA +:10D6500085CF1DCFFE480FF72785CBF691ABC0FED7 +:10D66000B8386277571AA7B2807DD145C72A7005AE +:10D670008A07041E2DBBE732CAAEDD622A7DDE9426 +:10D68000C5D44FA405C2E5297686F4BE9E485CDB6E +:10D69000A9DA52A0EF25E04375950FABD5687FCA94 +:10D6A00093AAF42E381B9D2A2E1685D9214D46ADFE +:10D6B0004CA251761EFD774CB6FF90104173662444 +:10D6C0007BFA2C66CC67C62D52BB07C6C076C2D883 +:10D6D000C83712BADC6F71BCE00A904B1C42D639D5 +:10D6E000A36F12DAC6BF59FFD709130810BFBB1FBB +:10D6F0005E7E4945DE200646582C51232F1360A933 +:10D70000D93CD58FEE5CA35A0F7DE0C771B4A16AF6 +:10D71000A578E4F3C01521FF863088BEBA5F5B248C +:10D72000DBBB678A91834CB43A26B3D1BFA3A0EC8C +:10D730003494CDE65C78796F26420A08F400C4DFA1 +:10D7400096DDFB032869DDEF10E24C9CEF7867D390 +:10D75000D012BE89529B3DD78535EFD40F5F90BE66 +:10D7600048DB0DE9C02B55175A1BD06406978F254F +:10D770001D342DE0D3C03AFCE3007F37E4D2940897 +:10D78000059C0E82E9497E7BAD7111BD47B379FFDF +:10D7900000FC7F3ED91200374EFFE73647478CAE7C +:10D7A00058664FA60A87E1007F35A259451C433AC7 +:10D7B0007A391A38E9C607A3E5E5B650201A1314DA +:10D7C0003F9624420777D3AC3381EDB6E9D4863255 +:10D7D00036557B798D966561EDABDDBCDBD255DBD3 +:10D7E00064508CAD525499EB8B6E80180020727D82 +:10D7F000E32D2FA7DA7E2BB529E8E6A87C5B3C3326 +:10D8000056B874D8AE5D7C342DA0E8E5392DB891BA +:10D81000122C1F2DE7B482783C71FD311750126332 +:10D8200009A643804FA989B8EC8710C174A40AEDFA +:10D8300061FE2CDFB0F99F2B0B2A3EF9FE291BED70 +:10D840008BD754197B071AF9E092281C719944541C +:10D85000CB402BCFF4AC7B03B0CB075CFF2502B4ED +:10D86000DB6F142C27101EFAC3C804587F3CA8DCB9 +:10D870008892D06AC9E896131D9D2797DDC02A3C7F +:10D88000649BA70F2917EA06D1473B2CA786B25FF6 +:10D890003E7837C4F23457AE9C4843ABA25FE56094 +:10D8A000CF70ECF16DA5ED1A345050E21380ACA5A9 +:10D8B00096F72C841165142C837E0150BCDBE7C9DC +:10D8C000E2DBCC3665C37A0CDBA2E1BF645E952156 +:10D8D000C655647DC868B919B4047597FFE5FF495A +:10D8E0009BFB2FCD60615A59FDCF2CB61E44B80763 +:10D8F000F2562D75B187003D6073AA07E59341ECA0 +:10D900003B1F42791D21524B0D637698C7243F88F7 +:10D91000F23A8176F33ACA97D9768CB1BBC901BB8A +:10D92000A0683DA24D51F5E29CDC59B205D9D6BDA7 +:10D9300069B040851284F8DEA3B2EA7DE1876CEA23 +:10D94000B4603C67948F68EBEEFE752403BC2DED4C +:10D95000E30A21C1E3E5386E9A6E64458DFD8AFFC6 +:10D96000B19DA79BD44C31F1992A6AEF38012C9BC9 +:10D9700012EDF734EF18EAEAEF2E51F5AE28DE1477 +:10D98000BF8A9801182412EFD66BB3369CC4B92E07 +:10D99000B72E6A993C75BBFB26B3D400FBD009C9EE +:10D9A0008B016D49853E5247741E39298381894E0A +:10D9B00006833DC14E2154F954FB98BF94427FF237 +:10D9C0005881D1D7D8B3C1F33FF01CB8D8CD5EF39E +:10D9D0009A2A3C36A3EB8CB0DA656750287F126B2D +:10D9E0001B6C7F46EA668DA00A1222DBC084EF28FA +:10D9F0008A9775A211F598F5EFEB923C7B77310A87 +:10DA0000467322FCA26371075327205EE82E476706 +:10DA10005278073D539068206CC8CFD90233DFF2AB +:10DA2000E48824D0E89EA40E03CA998770A43574B4 +:10DA3000E5B480691EEF3C0F51BEB8B41BF66077A9 +:10DA400012485C4577164274641A88D801842A5DAE +:10DA5000C01C4162FCF73D6CCB56E85170BA7DACFE +:10DA60005760419C2F034BBAB20E02D8CA61997B12 +:10DA70006743B7BD854312EC9BE9D48ADB75988A6E +:10DA8000E08524A96C1EB10CCD9C225ABFCF391160 +:10DA900092CFB586D3299514F7F7A7A66096967707 +:10DAA0004A9C57AA8BE7B3638639855675665786B5 +:10DAB0001836C9F3A78047A899ADEAAA5356417909 +:10DAC0002E4252E086889CA9879DC9CEF1DC3D4B51 +:10DAD0002C202E824FAE388B1713C8CF6400A1FCC8 +:10DAE0006F7FBBD0C47DEB15D5F3AB5A4B944CBCC8 +:10DAF0001573DCFBD1623465098EED48244DDE29B7 +:10DB00007504F1AF671A8F023611BD9F0EAAC912B4 +:10DB10001D15A1AC34CD217A041CBCC55F6D616BB1 +:10DB20009A1275B01FF9A81C98AE545705015B25D1 +:10DB3000453765546491F12BE382491B79783BDDCD +:10DB40005EE4B8DF6F1AB39A8220420E6EEF96172A +:10DB5000ED688CFBEEFA2127A0525C908E3204C651 +:10DB6000AAF795171700654F37B908678DDA392678 +:10DB7000BE2AF60734914A0E250D4F9F87D30D0814 +:10DB8000CD7A098C1300EB782CC2C44623C6D6BDCF +:10DB9000F0741F8860F5FFD08A822EFA013519F8DB +:10DBA000C2B24239A23B6C8B8BAF52C5895B326DDE +:10DBB0003D1729C27EBD5904E9B5952658CC1D01F3 +:10DBC000F8C03978B3F06179151AB2583C689DAB4A +:10DBD000E97D16B09310D98354CAD0F6D2CB982CD5 +:10DBE000993F0BA3E1A997F14B789B8E94C6BAF2AB +:10DBF00086F55FB430BDAC5855101EE43FCD412DC5 +:10DC00000BEE577469F5B473882067B6F0E99E0B84 +:10DC100054915E87BF0A782452D602343D5A586F19 +:10DC200040CA0C797B33043B73DEBC013B9597F112 +:10DC300077267A5F72FEE976E7126D0E82CB89F560 +:10DC4000D5F1E733BF2A908A4C5E829C100BBC3A18 +:10DC500089CA42C8F79BF7D89A755C0BD9EBE332B7 +:10DC600007015F0ECB2DDAF17049E64B26E7E8B0ED +:10DC7000168489799332B2043CA53DDDEBA771FF90 +:10DC8000676226E1F537E2EF7F881321E6674B6094 +:10DC9000847EA78B6F910024C189582A2AC12D0147 +:10DCA0005BC3AD363DAFCF523A1C9C446A7A8DF0CF +:10DCB000F912EE6B523CB051D164D428CD7A2C11BC +:10DCC0003A8CBE5FCEF4176D04299CB51411CCAD0F +:10DCD000FBCB4F7AA55EA686D947C23D09D2BB23AE +:10DCE00077EB6102C90DC263074F6FB2CD9A603501 +:10DCF00097E6A70E9B06E9C2F97828F0F0C5886F71 +:10DD000080B6DBF2F421D501A86420A3EE655F970D +:10DD1000667093D05DFD767DFF2FBDE182FD8D5352 +:10DD2000D5C9873FF46ED913099650A3039AE55AD3 +:10DD3000101BE2D6784C2A94033F9AB9DA19F014F2 +:10DD4000B104A9B60B894A8DC4E5C5F2B007B93054 +:10DD50006F6581B4EE0AE564AC82DAC575B1CF1F98 +:10DD600022286B609A9B5BF824679A14C85E788BB4 +:10DD7000D80ABAF3894CB314F3E0AC7FF7C918EDB5 +:10DD8000AF634E9DBD03AA781A57302D2421B5BA32 +:10DD9000F4658E2C61535B8D6815A0DCB231187967 +:10DDA000D225B8D1A1CDFFC3E387AD930AB06E3DB4 +:10DDB000E7733F97DC7E99F53BBF3428D097980AEC +:10DDC000109A823AD437AF450F9C6EA13023BD35EF +:10DDD000D9208CC0AAF6EF9D7E6DE6F63810C69A63 +:10DDE000113A85CE85E7A934CF507872D7EDFF1B65 +:10DDF0009BBB39E4D14DC99F25AA9D0D5126DA2A36 +:10DE0000C8C415333F553235D0927F3EE14F4F5253 +:10DE1000F4A6C24B3097E64CBECA7C02B167D36D04 +:10DE2000B2986AA47F5DA867B7C12966DBD940AB09 +:10DE300025AB4A81FB94A36DD7C6D34AADC0B700CA +:10DE40005DB5F3D5CB5844FFC480E08BC20048EEEB +:10DE50003CE016BFC4C24FDFAA61F5F77C6E7B2998 +:10DE60009F8ABB11CCA18119D4D2338DE563948FE5 +:10DE7000592C7175582A7EBD3CBFCAC3A587141E94 +:10DE800078FBE39CD44F64FF264B598940BB713B20 +:10DE900010DC5AA630AFEA42DA0A16BD46B6F2C81E +:10DEA000E700ECAA3B6078409E4AFF3B418BFF4174 +:10DEB000C79418F7E659D86A089A93EF0B1007F938 +:10DEC00059C34FD813A221DFC2EAAD366B763CD0DE +:10DED0008BFBE12C6820A935D6C325D8FC923FD115 +:10DEE0002F65E3FA8B06BC10CDC28238867FD862DC +:10DEF000FE213EC37C179F6963370D8CCEB66798B1 +:10DF00001BA2C9C2C83EDD870C9AE678ECF0A87E59 +:10DF1000B7763EE651E69C73920ED430F475C81C79 +:10DF2000899A64B5724874BB14A1BDA20053490319 +:10DF3000AC76A785F6F1C144097B3DC47F4FDFA1D4 +:10DF4000092D5ED11A6DC1BBBE8F56C0845264A527 +:10DF500095961E113A70DA7DC0919CD17E3A5B6035 +:10DF600019360D4FC97BA5B8BBA9237B601448EDBA +:10DF700085A07B3D274DC50B33EC3333A9403D11C4 +:10DF8000111EBC35C44038BADF7D6828E6308F24C6 +:10DF900083B1159684D1946D5120E9F073D7747FC5 +:10DFA000858C7B79D4D5208E56B12536F1E91E13A8 +:10DFB000206482A2D301C44FF04C303052E0B3133E +:10DFC0005D55AA1BE7343D1E6B265B6D04F76C3074 +:10DFD000F66C125DCAA7B676BAB843721888552691 +:10DFE0005E8E806985D4EFC2798E3E93CB326C47CA +:10DFF000A15F1875F5688BDDB30F520CB4747E0DFC +:10E0000026534375B61C54EA52D2E4A5288E47B66F +:10E010003D57848F3B2BA60E70AF0ADF192FE32DDF +:10E020003B51B34A728F84E9AA51BE7AC97F8BE60D +:10E030004323A0CEC03A206F11C9015E9D194B5FEA +:10E0400054AAC1C14D33992F193ECA91D1E658CA7D +:10E0500053AEF303775115D3B0CBFED8D0318A6DD0 +:10E060009C756B3E54B0F12A7AEE4EEAA92AF0195B +:10E07000F1A3F7F5902187F4B290669FC1A208A89A +:10E08000367990CEEFC1BAB54F7F62E304CB7DC93C +:10E0900088A3EC2BE48A51D72ACEB9A4BE830145CC +:10E0A000E6CE7608D5E7BC0E36C49019704030E84D +:10E0B000CFCB43F75EB45D34A6EB5C891DC5839F6F +:10E0C000E1AD06A083B22D1E7DA090B66CD4A6163D +:10E0D0003663F9CD7992AEA60D787264AB347A9C32 +:10E0E000DC68829BF4B5F4F9A72CC398E1997F0B07 +:10E0F00048664F11433B81A8DD9680076841F5488B +:10E10000C2EBE317BDD626CB5975246661AB00562A +:10E11000C39820EEB7119339E5470AAB5C0F3FCBAC +:10E120007EF3A6DB473C88886FCB63117B97C6598B +:10E130005CEF2F9CBC98623564FB12E76DAF5E11FB +:10E140001423BB32925F807A4CB2F3EA982EB5F278 +:10E15000BE8F67C8852443DF23697BA10EB0A53736 +:10E160006440EE7B918C850FFC1AADF0FC245714B3 +:10E170007A085BFA49EF4BC08F06F6005006AF14E1 +:10E180001ADFC4745B3E96C48CB1E9D5B498FF50D5 +:10E190001E87D9405648EEEC2AF7F5BD7DDCB54F19 +:10E1A000B36E03EBB989139F0C695F26F49AF8AE3E +:10E1B000AA85182D79C1D7F2D4C37BF815173F1261 +:10E1C000B9DE4589667E411C554A53532E607EAAAE +:10E1D000BDB783C7AA24C2A90DE22B56AF41568B07 +:10E1E000F419BDBA38B0E24C699447BE15646CBBF3 +:10E1F0001BE3095FA5A2AD294DA7BD59F49DF07F92 +:10E200003CA1461CA675EC74B3D1BB07BF6628C6FB +:10E21000C6A3E0D0BD253BC7FF3F5654488DFB7CCD +:10E2200057929E2B2512721EFC769D83FF194689FC +:10E230007CD22F21A074790299E06FEFE20C5D9BF4 +:10E240006327E6C285DAE6D1F89B2776C3D0C2936E +:10E250000C49FFCBA9E801A955E24948BCCD3BDDFB +:10E26000C247A97620FB1F64FFBA8BC51B6D3524FE +:10E27000EE9C70B8E725154D475886593311BBD829 +:10E28000EFBF0911213FBEDF5F433A69B8F497C879 +:10E290003E584056F8F42088190C571D3E5A24DC8D +:10E2A0004EB57566DE5A301ED63972C3D0C0CD1752 +:10E2B000C7C62B9AD0AFB4FFCD747946B069A79288 +:10E2C000B4E1A071E826006B8D64A50D205AA43D31 +:10E2D000496B75A9A7080CDA8ABBBDD132C86E4656 +:10E2E000E72EE946709E6D66F1A3ED9D4435921FC1 +:10E2F000AC530AC53E869999ECC5AD2BF0A5F461E7 +:10E300002B17E3A955B77D2E2A03FBAF08169E14E1 +:10E31000131FD694D14726262BE1A24FC51569932A +:10E3200083CB64BA0636251D25CF8D4F672BED5F55 +:10E33000475D82B75FD306E9B2AF03E068A2D5D1EB +:10E3400059D35306F94E15B9B267628C3AFFDAD148 +:10E350007402E31C0876F8B658B3D88B2EC96DA8A2 +:10E360009DBE12ED2A89BAB65F98224EDDB1017BBF +:10E37000B1C5EB36A15B29E0CC05F8CE204475BDD4 +:10E380001284F9B2954D626742814FD15420FEF953 +:10E39000D19D0E158131CA7F7ED15FACCDBF572B89 +:10E3A0000C883F8E736E99B7446F9376A3DC0C2173 +:10E3B000E5C7695C8EFF5E65074B2027DBCB1AB48F +:10E3C000E99347C0D01CF6F24F9D5B76AED4EC3E8D +:10E3D0007DC5C64E0EE916B12E8108E8AC6EF1413E +:10E3E000A41348B9DF009F04824F84A06923E03959 +:10E3F0008B6409F67BC637493DBE8597BAE634AED5 +:10E40000435CFA2378AFBEF72509D2F17A976867A3 +:10E4100076536A875A46FF90D9CE7960DE124E0B4A +:10E420006B1249E860A5AAA76F43B7444A11AEE74B +:10E43000AFA02C215CC78EAFD3EAC69F2D9307F700 +:10E44000D9C141590A157654E40B062A04B8EF6C79 +:10E45000E441E17D9326685EFAFAD918C2604B1256 +:10E4600012117037C8D09E016509AD1D7BDBB44524 +:10E470001AE4358FD3EF70214517FF902C396F6B5D +:10E48000A000483F7778EEA982A962B8B284C45F41 +:10E490002CC84C6D969E017BEF1B24E17F7300BF5F +:10E4A000398912B3A171D8D7B9CEEF37054BF1E155 +:10E4B000AE059331EA6381B976C26FC84C25285501 +:10E4C0006629A9F24A15AF1D7E2F31C217439882E3 +:10E4D0005637D53692A0F73F0BB2EFE77195CECD08 +:10E4E000B14B45450AC6DB0471577AE981746C3C2F +:10E4F00059E7CD99DCABC9E039466BDBEA9E34F3D2 +:10E50000907E21E3CED0B4E1CEF768BA4E8FC4E35B +:10E510009BC418182BDD50007DDE744245A3629D1C +:10E520008FA5DA02B1EDF5AE8E9C331EE662C1E135 +:10E53000D382DD5C5F5270C0FAB49D724458368855 +:10E54000D708B065665B209AF9ADC2672C554FAC11 +:10E55000D66EFAC66E31CC33B42033262145C8942A +:10E56000A01CC4C749E468FD770914BAA55DB1AF22 +:10E570005C449DA19F81812E6E4000D210C1A57C7C +:10E5800083732C9F8275F63B00D32C42E888EE33D0 +:10E5900074C72BC3C6DBE161A53074F095E36B0C47 +:10E5A0004BC5A48E8B2B7842C25CECF78FC7A75F5C +:10E5B0000A09B2F999D58A1481EB85D2CC1F514949 +:10E5C00024732671BEE88FDC930B583889239CD2C4 +:10E5D0008AF5389C52A20197D6B77EF644526D3C1C +:10E5E000D1B8F1BD2294B861EBD4AF26D7EE4C0F71 +:10E5F0003FE06CF5DB83C9871D215F044DEC861A73 +:10E6000034C086B94FF4EDAAE65E50250028AEE985 +:10E61000C29D76FC31FBEBB9946D6E1AB3C04BCB47 +:10E6200048AAB508F8A182E7512E020FAFB55EE304 +:10E63000615199D28938D3F2DD4F126D4E6D681356 +:10E640006E5A7624DB901EF942EF915EEDF4C3AC76 +:10E650004E0DC3A1BE981231ED37AD7C1D25DBF701 +:10E66000B0F1BE7578E2BE2E18AAA7D6CB2A76D80E +:10E67000498AB361054E0C6B4A817BE608ED5BE588 +:10E6800002FB3E1947D9E968F70EF5FEF98ADC501E +:10E6900058838992FE567C9C86BCADC31E841F4E57 +:10E6A00068E444D05B01693521E966263BA43CC29D +:10E6B00043CBD2AC77D9EE0E67AE967CF5FFA8E1DE +:10E6C00071F65880A831ED416D8A846B5B80D5F27C +:10E6D0004D3FC6941C024EE7E876A00FEE58BB34BF +:10E6E000E501067ED85220E7ADE58EC74662E2DB43 +:10E6F0000EEAE5E6DA5E594EE911305BC986C8D20A +:10E70000B221FA19CFB3024F9C0AE8E1769DB5E633 +:10E71000BD09BEA6BCB8425C065194D3FD6E4C3513 +:10E720002A50A88CA192FB1673005060696938ECDE +:10E73000EEA885FEB9C13C3BD4062AB8845FEA6DD9 +:10E740002619EE0DB7BA21C0820D628B468FDB67AA +:10E75000F420CA38EEAE891EC080516A29B96C2BEC +:10E760002CA418EBC614CEB15EFF6BDF5B393E62A2 +:10E7700064072ADEC30F8E3C67D7FD31A6840EA93D +:10E780005B560A774D3FB99A22763CC0D314820B70 +:10E79000236E769C3E49FF85945E7675EB8B5749D8 +:10E7A000B4BE21EF939131373446A9B84FB2F1CDC1 +:10E7B000B881E4AEB0E4935787AAC548D9147A7CEF +:10E7C000664F21E16E1EB6315B5866E93FCEFDC64D +:10E7D00041487DFECB84F0B8C68F3F4E7133E521B2 +:10E7E00063DF4CE0C856C05CA59FE56029F1742248 +:10E7F000F582A444C67A634E09406E554F5EA70F5A +:10E80000B7DD978A2562DA5E0C147BB1A105159FEE +:10E81000F80B102D9832EEFDC8C991727527EB21C7 +:10E82000995D9402DB5CF0FBE95DAE3A33C1BE9EBC +:10E83000F40B5C52E16C5A80E3E6CD28B2870B9B67 +:10E840006776C2CBEFF3955DE7B855188AC7F8D065 +:10E85000EEAE37ABA3DBAE319EF79E9E4A0088DD5D +:10E8600000CD3290217705E34D78D4F2235E762EE9 +:10E870000D4F3CE13871AD2D54DD67C6E832F92DFE +:10E880005DC0082EAE8E5A8BBF11069E3A8697D970 +:10E890000B0BA34D4DF518F61BA302D59D0DA945F5 +:10E8A0006E4210E6F6953AEE2A454087EDAD07B286 +:10E8B0003376C63BD2AE0166BC23DE656901F770D4 +:10E8C000CD84E39F6D65DACB0803F0CE5E30A0A562 +:10E8D000DFF257CC5EA4AF3A738C6DAFB948D8D095 +:10E8E00001F355C002E0C7470EB63C4EEB27F56D6D +:10E8F000B5DF1AF69131F5A72B33D200D801BEABA4 +:10E90000FF7DD91EDBECC7FC31AC896D758409969F +:10E91000C5F637B23EAD3960F698883B72F6F9E934 +:10E92000FCECA186C124A8C8517D70D38FCFB33F22 +:10E93000C1F57338E90DD43F5B1593B6994BBBB75E +:10E94000252C89ADE1FE58A50BDB9BA544681B0077 +:10E950001BF1EF66ECFD12DAA97B3E54B4A63AB681 +:10E96000810EA503E1EF6FFDC6B0CA54F2A0774D4A +:10E9700042038C96B9A5B5FD782F2FCD46715F69FE +:10E980009E904453300C4541C88E3E668F50B34D27 +:10E990001CFAC24A3CC8E12B51114B7338463BDC90 +:10E9A000915A3C2159ED5A2C27A0D9CAF954724EDC +:10E9B0000A607BC8B7E35952B22A9C01CB88568AB9 +:10E9C000BAA5C543AC4C0E0990FE71D7C855647406 +:10E9D0002CC7ECD962FF41915A1A30D505CD330FBF +:10E9E0005992CDE28C1C834F6B739843D7D7FBCAE7 +:10E9F000DF4832FC48E1B86BD537AADAFE2EBF8675 +:10EA00003E4B7A0A109802E5D5BE1A56D0857C385E +:10EA1000C8C9E5BEFAF579BDA52421D3732924E040 +:10EA2000674CD94505E050322B00C7FA4F88E56F97 +:10EA300097051DF1C10251670E7624F0BE689E5DF8 +:10EA40009C7965A8E58FEC72C7AA3FF94CEDC073BD +:10EA5000FEB42A3D4F6302637203E522D603B70B6F +:10EA60004A3D4F6B8F257E30DE56ABD674A1651ABA +:10EA700076B7C64917BD33797F8DB16AA4DF91F4AB +:10EA8000705906BAB49EB6DC2BDC8200A30FED945D +:10EA90006C43C71A515D18EE683E7E320310516A0E +:10EAA00052939107E8A65363BB4AC892FAB6A2E90B +:10EAB0006CD48E6B12D5D05045C2E66B43B4AC5CBF +:10EAC00037C72B06AC6E94076B9C2BDBC5260D65F8 +:10EAD00016F0B438D179213869883F3CBB00320444 +:10EAE000694D0D86A38791D182C50CA3761407E7E3 +:10EAF0005C6F0914B1FF0E44B2FDF1D074A776A784 +:10EB0000C4D0C1D097F76AFD63511A2B7A084BC164 +:10EB100041309F0757F1114F5E40DBB727133B830E +:10EB20004ECD5A03513216CF0B98380AB71B8C15AD +:10EB3000F1DB8B6E75B3BEB7E82E52D02418DC5FC4 +:10EB40002A6F24DB163742BA12DC2821C726B16DA2 +:10EB5000BE22B8CBAB42D4E8D4AC62003700FAF4A2 +:10EB60001FB720A3B6D428E789337D0FDB90346C20 +:10EB7000B50E7642491E8A241D32DB66966AEE0C7B +:10EB80005354029F115287AEAC0F98F33D3806BF25 +:10EB9000207B761D4811A641FB8BDB3EC49C8E89F1 +:10EBA00014A89B9C07C156CB100E4BBFED46E374D7 +:10EBB000678B8B2F56ECA737BB64098F5CAC1DDFCE +:10EBC000BC5B326040FE99D21C812835C82D5BE6C3 +:10EBD0004C777C528B3701EBC20D3C3CC54A34313B +:10EBE000E12B7E40C86F52EB58EF54EDF6BADB4C88 +:10EBF00077184B1FFAD2B1CFFF0CEDC9AE71324975 +:10EC00004F5DAEC3295674F3F8CF47C3D0E33F0F2F +:10EC10001BC968A87571ABC179A97989E2600F2E0B +:10EC20005011314571D2741E57929D08BB8B3E0620 +:10EC300039C1B0BFA106427E316C826B709E031158 +:10EC4000BA6A21A8F03DDB256377C64B777E4E720A +:10EC50007EAD72E0F7C5566A83E6A8A9258B71568A +:10EC600037A302B9FF3712FF7B4BFF067407782CDE +:10EC7000EFFA2835E1C94D3ACB88D55B02D9663623 +:10EC80004918DB0F4A6F3DB2D22F3661987E5B295F +:10EC90004C0431B462963BB027BB7AB816114801D8 +:10ECA000BD617A37A4A4A812C551DE02CA41D3AC13 +:10ECB0009CEDBC7A05E2E4AA041225272B8D533F74 +:10ECC0002DEC65D0D161DAB2156DF418BE68BACFFB +:10ECD00015BD0D037F7A35B9B02BAC4CAB95469979 +:10ECE000C90D3FECE771C2B6E88EE72F302228ED60 +:10ECF000EE1C2F0A2482C061EE4BA7E2D0C6795CDD +:10ED00007C85E7980E4C85229BE2F10A2B18D26392 +:10ED10006E9C3BB297C3F03263523AB5A2B224F56F +:10ED2000F144A97524EA9C54D4E9C1735A7E6BFD61 +:10ED30003863FFF8C3A25A01FDD2A5D8D5C9E8812E +:10ED4000E31067ECEB25B169B46320D9DD9083F360 +:10ED50007F48AF87912107ADC48642FC069F377B71 +:10ED6000FE0D6FE6C52AF472E3A41DA1616EC931E0 +:10ED700073D2456BF54BCCB3D91D2E11C3DAFB23EF +:10ED800062EB61DB4DCE47B151909F5E92DCE36058 +:10ED9000D192A44681880ADC046E4AFEA9C09C8BED +:10EDA0000678596B15B1A0D65E65321113B1186B98 +:10EDB000BEF5B3B48404D26626567C290F5ABF46EA +:10EDC000583C50018C2C85ABAB85DD9A93B33885CC +:10EDD000118DE0175BDBD8F5CC2BF569824A895D94 +:10EDE000906D801373474A813230F769F6F79AEDD8 +:10EDF0005F7FF936C3189DA8C15107760FAA9D12EF +:10EE0000058A43029967AC0BB5362BBF372E18B075 +:10EE1000C4287C5C3BE0DDE8E02C989E2A3437D3A4 +:10EE200093D4B06ECFDB2A854241302AB502907868 +:10EE3000F24485664B3920736BC4C93D92602C0740 +:10EE40005220DF0C41BC58D018BF79A749F2CC4AF8 +:10EE5000C96E43CBE4F4070B76FA592EF9E5B2F408 +:10EE6000775147A663AD9CF810B08D0FC96691E449 +:10EE7000AF572995D3B30D0B448077E35653CCD0CD +:10EE8000F5D55671541398608FDE810CCB0EC01DE2 +:10EE9000E566963464DE25D9383956E805E7176EFD +:10EEA0004C20492F9DAC9373933687B0663B733BE0 +:10EEB0005C594B9FBEC3A36929F28431BAA70C42A7 +:10EEC000969193FFFD261B3FA34B7F0E6AB01BDA82 +:10EED00067ED6EFBF13563E26423E13030EA8C7755 +:10EEE000ECC64C46622AB9087FFC3FC61A21E9B03D +:10EEF00040569136FFB90B85BBEBBC095F448921B5 +:10EF00000A12BF6F003F01320537047F07503F7F71 +:10EF10003E000000001C101E05F5281E05283000CC +:10EF20003000F0D2F0D2F90A1080080A01015442F0 +:10EF30000080332803030000070A00FF0001870058 +:10EF40008004110118190005041B00700A0000B0AC +:10EF500004FFFFBF96307500C080004040010600EE +:10EF6000002C010500A00F08100104054B003F0014 +:10EF7000000000000000054B003F00000200000000 +:10EF800000054B003F00000600000000054B003F5D +:10EF900000000800000000054B003F00000A0000D0 +:10EFA0000000054B003F00000C00000000000000C6 +:10EFB0000000000000000000000000000000000051 +:10EFC000000000001E1D1C1B1A191817161514131B +:10EFD000110F0E0D0C0B0A090807060504030201A8 +:10EFE000333231302F2E2D2C2B2A29282726252469 +:10EFF00001240023CD2C3300002D0030080000CC6C +:10F000001C0023CD2C3300002D0030080000CC1C48 +:10F01000041A0014003003000C3003000C0210002E +:10F0200028000000000000000000000000000000B8 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000000000000070 +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F000000000000000000000000000FF4855D99B +:10F1000001010001010000000000000000000000FB +:10F1100000000000000000000000000000000000EF +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F20000000000000000000000000000003F01328C +:10F2100005371E0A015403000700FF00561D10E0C9 +:10F2200001E00000000000000000005335303030E5 +:10F23000420000000009030F000300000005000069 +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000000000000000000000000000009E +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A000000000000000000000000000000000005E +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000003D0011E0 +:10F2E000060112201B0C0401011C0008002134003F +:10F2F000000000000000000000000000000000000E +:10F300000000000000000000000000000001870075 +:10F310008007110118190005041B00700A0000B0D5 +:10F3200004FFFFBF96307500C08000404001A00878 +:10F3300005001C104410270101BA001C05C088609C +:10F34000483B080F580000000000000000000000CB +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000000000008D +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E00000000000000000000032310C0001540059 +:10F3F000000000000000000000000000000000000D +:10F40000001E33001C10010000000000000000007E +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E00000000000000000000004030000015500BF +:10F4F000000000000000000000000000000000000C +:10F5000000000000000000000000000001240023B3 +:10F51000CD2C3300002D0030080000CC1C0023CD82 +:10F520002C3300002D0030080000CC1C041A0014FD +:10F53000003003000C3003000C0210002800050C02 +:10F540003200410000000000000000000000000048 +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F57000000000000000000000000000000000008B +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E0000000000000000000003E000C004151003F +:10F5F000000000000000000000000000000000000B +:00000001FF diff --git a/firmware/tsp_synaptics/synaptics_s5000.fw.ihex b/firmware/tsp_synaptics/synaptics_s5000.fw.ihex new file mode 100644 index 000000000000..b3d7e5426fa7 --- /dev/null +++ b/firmware/tsp_synaptics/synaptics_s5000.fw.ihex @@ -0,0 +1,3937 @@ +:10000000C40D740E0000000600EE000000020000A7 +:100010005335303030420000000000000000000086 +:1000200000000000000000000000000000000000D0 +:100030004453352052312E302E3000000000000095 +:1000400000000000000000000000000000000000B0 +:1000500000000000000000000000000000000000A0 +:100060000000000000000000000000000000000090 +:100070000000000000000000000000000000000080 +:100080000000000000000000000000000000000070 +:10009000493243000500FF000C0D20000000000065 +:1000A000493243000500FF000C0D20000000000055 +:1000B0004FF4BBAA0CEBCA447DBDC1452027C090BC +:1000C00043F5E04A742634893ADFD10918EC5632F8 +:1000D000C78B51A04FCEC9A42BFA103558A31DF3DE +:1000E000DFF4C560070817A397265F0D938035449A +:1000F0001C45094EE5C41857A64CBFFD5A18824C42 +:10010000D624292AC37E3C7D1A0FC456AB5EF1CAA1 +:10011000CE46143E9C4C57C3ABB6C3A5E1536419FD +:10012000EB40D380BB5EB81AEBADBA47BF354F7B0F +:10013000CD6BEAE620AD0A1BD52315ECBE77F32A7A +:10014000661BB53C8AA929632A109F6BF8354FCCF2 +:10015000D8A7DEAA766FF481B7210E1621241CF5EC +:100160007464A4C6819E2024E91E0726606AE66F97 +:1001700070FF95745F48398EB524F80C1287B7B4B8 +:10018000AE74EE3DDDCC84B860D58362E4144B657B +:10019000C053ABDD3931AD66AD9940A82B3E14D5C7 +:1001A000DF626E5416AC1D109678606CE04156BA52 +:1001B000DF8D6301C0376A4E68F9380DDF2549F7D6 +:1001C000AA078A08F3181142D22785465702EB6E18 +:1001D000A5C4D79979998F65765D75D3D7D7FDFB7F +:1001E0006FDC958042C2754548A748B53BC4AD3E1B +:1001F000C13F5E1F0211E098D7ED36E06334FE1771 +:10020000D26D56605E328964656B52DCA2F1015298 +:100210000CA4E657A31FCE4C6735B2CA70601433E6 +:100220002B6D1988C267D67D74B89A81DA542C3F39 +:10023000491ED90B00D17B5EDE74B1B17E29F1C1BC +:10024000F4DFFFC32E2E4B03A4A73D0B638D79185B +:10025000016B4F2D6A0EB775AD335DF3CCBFDAB1CC +:10026000FE25699BA29D0AC7B6787B1CD59E89D8BE +:100270006B50CE1085C1922FB10C2BEC9B92252F89 +:10028000BE9C94A5FE7A1CAAC1B13FDBB421E35603 +:10029000DA3A2933D0BD9FD2B7541A18E1F07B3433 +:1002A00046A0E1890048AE15EE3A48431E556DFE62 +:1002B000691165E7D7F351B98F092A9B21B55DCA4A +:1002C0008F37050FD741C227608E05483CEBC046EB +:1002D0005C20277D9FC42CDB31D3037C089EA59036 +:1002E0007C892D8FB26EE2CF18D13B306AAADB42F7 +:1002F00016A19A55F3B9C30B60CC7AEAF7E4BE15A0 +:10030000FF010CE10DF9265FB36DC5CDBB6EDB1FA0 +:1003100094BE9A1463CECB6A00FB34E6E624B6E1C1 +:1003200014EAC05A5C6D1A6D7A30E1F76AC288EC43 +:10033000D0ECA644C1C6B2612710D6415E065C422D +:100340003848CD56E7E153B8687EA2AA8D3EA2DBBD +:10035000060FB745D8E7B2092C190F176D8D684104 +:1003600062C106CE4562FE34DDD61B820C32B42C4F +:100370002B40712C607821CDC14E643E91CCF92088 +:100380009AE6778AEBB1A763325720CB861699F5A8 +:1003900030222A723AE86D118ABD7DA135428D93D3 +:1003A0009F9EFECC988D1AC007C006F83F1BAC8FED +:1003B0009F22C5972B1F6E4CD95F76BA3676DC3BF1 +:1003C000AAF331EE8C1512796A9C9CABA374A1B18F +:1003D00092151D32C4BDA03D3AAEC7C00E2D62D3EA +:1003E00049195E178500AC1822148603D933EE999B +:1003F0008E6FD156F1CC00CF4970B3A342B87EB80E +:100400000D92C97E00956D7001179B501196A3BC8B +:100410008D51F1DB8C540573D1FFD3A46A4631E5CD +:100420006522CC66BFE83C99AC5E304DB392F1CE0C +:100430002A5CB8726EDCCC7BBA70384CCA7222AFC0 +:10044000FC69EEE84BA67B136568CE573318EFB016 +:10045000A2996032FEB3F6B6EC8C12D61301239546 +:1004600058A806672570C4726DFCC382C66D630F01 +:100470002E902B8B5F994AE09443E2C3DDEE3EFB66 +:100480007151B89EEF340368B0584ADC69990CA4E6 +:1004900028A852B9641CB55ECA7AFBCECEF17B1E89 +:1004A00016A6AD19F9957E88FCFC11E09E7D1AEF29 +:1004B000D05E3607F3F60559BC1258420EFD96A8D9 +:1004C00095211C89DA30C15875E804BB3E018A9831 +:1004D00032495397C84A7998FE0B1C26F7E99D5676 +:1004E000313B1FD4B7D6048C916B42FCC31CF27015 +:1004F000AD317969977FF056106004310846FF0BE3 +:10050000EAAA89B29FFA678B77C57210E80358CFC1 +:10051000240CBAAA7518BB7B1CA68BF9FB77802824 +:10052000BC4E0DE0EDF9A5165266BE89506B9FDEFC +:100530007A5AB71CBCE69DD7B9B6E50593AD32082B +:10054000E870379767A1662AE5653EB30355929A2E +:1005500064F397AD7D59078B010DB0FC4F80D1340A +:10056000797BD7F09A8751EF61CC02C738BCA37E64 +:100570007C2E836E123ADB827519A8CE78C5E717F8 +:100580002329093C5665851E2900621AEC0170F486 +:10059000D11BB291F24730BB0E236EEA115A65A807 +:1005A000A1C9BCC2F7692AF17BF5364871AB2F5C53 +:1005B0007AFAD2AC9121D9A24E5F86459979F81684 +:1005C0006A6DE3D5D9218AEB1CD420B6FA85C7A081 +:1005D000C3B24E0828C880CC97B19E3457A8D732F2 +:1005E00093F890CA53A29A2B18674B1B1727802E9B +:1005F00013AB6B30EA1CE62DC677B0B5D9CF515698 +:100600009F5EB9F9F45BFCAD97FFBCBE217806AEE6 +:10061000DAF5D2CB3479B23668EAEB463952FFA428 +:1006200032FDD3EAC1FAB8B30310D2A8634373A072 +:100630008D1BE86B0838DD732635CCD2F0E2D06D27 +:10064000009231184FB833D8713D336F945D01A8D3 +:10065000D2A722F34132E8A77A7EE3BB04C951EC6A +:1006600093B106C0108988D24CDA82E8F5324FA2E5 +:10067000ED9BFDAEC50B546039A3401CEE460F8FB9 +:1006800060D19031B3FE6309EA815DEE7E7C7C959A +:10069000E83C75668496C0A46778D7289889469206 +:1006A000B443D7FDA4F6B387BAE64BB8E8452FE2CA +:1006B000BF40F239B8AE472416FF63FA096EB36F34 +:1006C0008027964421B1B3478594E2E2D276534F16 +:1006D0008C39EFE2E0D168B8F4B3948C120B383661 +:1006E0005C9361C0A408A0EB6BA6392C4EF70A2ED0 +:1006F0001AD291FAEDD99E6587645669AFDF30F85A +:10070000B923560B23B4E163E1AFA5F9E438110036 +:1007100066A7C5510BEA29C9529A5F4C3832392075 +:10072000007F02AC29660A43B209DA6FF094E9B996 +:10073000BA9BCE1DD844EAEB7830DBDB48B99E2E5D +:100740007E2C225FA3BD3987C01364218FEF93C332 +:1007500074CA9E0699B9DD940F59F11FBEE1A60A2D +:1007600059228FCBCA51E442E12986E445DCA03905 +:100770006B66A71EE960AAC01C602660448485B928 +:10078000EE5BD31D46DE81FEC78ED34C517094AF15 +:1007900057AA6F7796661D4A3FA91809DAD7C12371 +:1007A0002E03EA70EDF10DAEC01998C80FE8B46CD5 +:1007B000A2F65D3A9D68FC34231B82C9E8A92D1D71 +:1007C000C7D165572A435C1B7DF48DB67EE32FA409 +:1007D0009E4418872D5116BBED201CFBA3A1B2032C +:1007E0005FAB70672AD4F26C1C5BC12DD16C6107C2 +:1007F0000DDE8A63F882C5560463DF4039BF518736 +:10080000F675A573B2395ED7A5E283E33084506CE8 +:10081000E0491901FF46552EA59B3D037FAAA9F08B +:100820008AAD273F85DBCB5E6023BE3B289B9DECDA +:10083000BC768224C5664317EDE36E07CCAECACD05 +:10084000665A6332C6EDB5FA07F25131EDCB302767 +:10085000299EC453CA0CC5F3D0CFB9B7577F01B690 +:10086000FF4E76B971B3E8B1C3F91E5A4FC2542A8C +:10087000F9AFA9437DD068D35048F4591167FF06FA +:10088000C1B3D64B4DBB179CDEAC7B7D3BE54E51D7 +:1008900095FD39BD236927F83D12C1D2B5BA5C93E5 +:1008A0004CEB881FD1355702BAF60CBCB67B695D9C +:1008B000B86F2D774181134D7369B2B9BE12131A07 +:1008C000D7694241466062026F32CD5D63B8EDADDB +:1008D000D819DEBD30476C4C131DA5E69C051ACC1B +:1008E000B742FD83D1A7F7EE133CED5E731DF59B78 +:1008F0007A21F6CFCAE789FC994A4BC380218F8CB5 +:10090000353AC2208FEB5D6A09C7F4681909AB223A +:100910002A4ED75BBAC334EDAC6F5D4D5824006AE4 +:100920004AB6B41CCEE7930CEAE54C6104A0937C74 +:100930005496713B8628015DDA109D6A489B81AE12 +:100940009ACD06DA70278F871D767F93F5A2074D23 +:10095000CF1DA586A7E82A21041CF9BFB344C26AAB +:10096000DB6898C1BF76EB3D695518B1BD0969993F +:10097000133C6D6EDCF4101916AB4D5952F760073D +:10098000F67BEF77CFF0F1D269A2320CD0E6737329 +:10099000469295D6027C769CA43848CC7CD452FCF6 +:1009A0007E4D02A7400A6159DA3D69BACD175E371C +:1009B000AB3E37F965759C90244CA3C2129A5B9AA2 +:1009C00096F8EB391A7CAB6411C9571A0806B9E8D6 +:1009D00062DC3B5CB00650B7A8B470C970C4F9B70C +:1009E00093F3675CCCD2CC84C30EAC066E083DE5B5 +:1009F000B6B747A5E6DDFAE0FB72FDF465E4BB2F70 +:100A0000EAF2AD91E8E0194EC978BC5C4BC1E09FB9 +:100A1000E0DA5C4C0AED089E56481D1F89F1BA9B2E +:100A200067657A73BCB8798FC8F719CA3CD56C87EB +:100A300028DC5B364D01465DB49B7A1D24520321B0 +:100A4000C4C5ECD34B0652A0E297031CA7A5A12D69 +:100A50008BE9B8A173293A4312EBDE5544F8F2ADA5 +:100A6000D0CA29C87243E03F1F47CBE39BCB9A23F0 +:100A700045236B17F72953D96A9893E2D5197CAEB1 +:100A8000DF10ADBB2B98FCFAF675B984A39987D912 +:100A9000D133C272C750096A1FE8B22976D1C71391 +:100AA00079B0330B6DDB8DB8FEA7EDA3F359B8B960 +:100AB000FD050363FC745F831688D56225AAA2D85E +:100AC000A8001FDFFF70221AA3961E0FE12B9D3393 +:100AD000983A3487F50A432EFD0DA4D6681482E5B2 +:100AE000D53E338B1798DC990084992E0773BC731D +:100AF0009DFEE6AE46619B2022E28407AFC9100747 +:100B0000AB0B743E8BC697272C1BD579892B24A75A +:100B10008420BFFAAA4E50FBB81AD0F0AAA283EDE7 +:100B20009E6B33C8B023E22E1486CCC0825E99EC53 +:100B3000BAA812A496301DC7B652689757C696F643 +:100B40004F40EDCBE5A2FC6B815FBC2A755827D4E2 +:100B50003CE2BC7BBA931A7F2D937145DA872D5501 +:100B6000BFCC90C22EB01A38EAB7293E5E3B870050 +:100B7000CA59DDBA8447D5DBEDD040FF07CEC84166 +:100B8000A7D768EE304BC72491C743926723C75C51 +:100B90000E54EC993AC27143D305BB2D04D3EC0437 +:100BA000DA22A0E40D652729FC652099C7319BC98D +:100BB000C04AC7A27EFC9B10EBDA2461C79FD869AC +:100BC000071A14BF4DFA11B55ECF63504B9BCD325F +:100BD0003C585D496750416EFD586ED5C1F78D8612 +:100BE0006CE8B5B4963B74A133A3E5E106748CC000 +:100BF000DF10CB821DF5CB2E27DFB0F591F5EE8F00 +:100C0000CF5103658DAC2BCD87ECB00C639AF25DB0 +:100C1000CF74FCB8CE9B1645840FDA03ABFAE4B16F +:100C200056011836A5109E4AB331823D5942ED1245 +:100C3000503E0FAC8EFBF43AB436FADECB219BA8C3 +:100C400075E435032F80078978CC6D68F40C946EB9 +:100C5000AC937ED7F952A3BE007C41E5008E8C9305 +:100C60006A7241A9DE35B9E92A43E8884C63D2DDCE +:100C7000B90145750A580AE9E9EFE558861EB952E7 +:100C8000F3B890B158E3A29F515303EFC34BA14671 +:100C9000002B9F5CAB915634287F41CDF9A5FF1FF7 +:100CA000C007C17A09E75601C15D15F617F4BB31DB +:100CB0009F6C52AC8BF3A0C5CAE6720C5CF60CDDDF +:100CC000469CEBBFBCC7A5ADE4C711E2A5B6432F58 +:100CD000EB40C19B14CE3B3E1DB57BCD34C3BB095D +:100CE000C6AB79DBD6092ECE3BE959675DD88EA518 +:100CF000B25FDF0522348E703E11577D8D84CC4269 +:100D000040A557B533C8270BF01AFB49480383C3E6 +:100D100072A202E3837A49958428A5B2985DABB1AB +:100D20009B5FF57FE31AC0D50F594E38E8014AC2E0 +:100D30002CC28BB171A322FC7210ABEE6045BA934A +:100D4000ABAE5ED610227EC96D0A0EA0F88D33437D +:100D500036B67C72A3209729E8478B3854EE892752 +:100D600004A78AE3BBBF372ED1C3F600F0F19C95F0 +:100D700085E28A57BBE17031F5E7D7179077DA95AE +:100D8000EE2899E74306BF1F53E3E2E3B2BAE7FD5B +:100D900060EAAE29AABDF957966A3BE4F1DDDDE4CD +:100DA00002B5A916101123BEC69A3FF1687F45C946 +:100DB00055E660054D4BFAAC77C52C73538E1A3B44 +:100DC000B2D82EDC4C72A90FA5E80DCD85D1E30475 +:100DD000AC5AD6993724A9C8DDCED19F6977F1BF27 +:100DE0006362D2FC99293377BFC1B7BE30D2E153D9 +:100DF000E9F96CAF3B07D89515AC0890A6C3C19034 +:100E00007F41A7BC4396DADC28140E79F13ED7DE89 +:100E1000227A8DBB863E8D07DF7FCB98D2BC29FB23 +:100E2000B379E0363CFF4A20DCAA5C03742B3AA37A +:100E30008B87B9F497165ABD36FD93159FD2AA8EAB +:100E4000EE299B86F0517BFC2EAB226D58BB94188B +:100E500000554ADDF0E3524989B2C73117C50B3757 +:100E6000A105358390576C0BEDFF6F5EED4F90370A +:100E7000C669A2E7DB9ADA7712704028619D00808C +:100E800027F80C84DDC97D96A16F379C93700BDD2C +:100E9000330CDBC164BFCD37963A4A09319E33CA61 +:100EA000A9AF287B85A7D2D17E3494A41BE8A07873 +:100EB000107B3C4E2F8C784B649D88855D3F5ECCCB +:100EC000EB62A994428BF0B77818CF5AE7E0FCF9AF +:100ED0001519EC6CFAE136DD98D238B4685D63958B +:100EE000338EBC83EA979E19043E1DB46561752F4D +:100EF00022007C252F08A0C52D7612C3E117D86CDF +:100F0000E9CB5AB3DD330F5A4E58171AF19CB7FA92 +:100F1000C4E2EDAED5AF6F5A8FA4C3B9160FB6A910 +:100F200060825AA5E89949E1C44BDB6A67A9AC42E3 +:100F3000B4BF290DEBB96D1B6837FE3CD6600921A3 +:100F40006553D495D24847FAC1AAAE4C04591CF057 +:100F5000BB6CE9626E95C681F288455174E559EC27 +:100F600078FD82929266F2D75AF0932FA14D714D7F +:100F70005AA3E1E04CD8F16EC179152CD76CFD99DC +:100F80003B09324878EC017CF645ED760801C35206 +:100F90002282AA6EED7697F69825436C6A0F545616 +:100FA0008C2F1640563E2E693F406659F3B15DAF17 +:100FB0000491D4EAB01CA4FFE1740661C689EA7CFE +:100FC000721C7685B740FD9E337D4631608C92520F +:100FD000B4CB605B39C38A39AF4D920112ED27C89B +:100FE0003BAD0A4CD0CC17B502DF52ACB97F2C8395 +:100FF00050327B186238DD63CA7B8C20CA1DF6C76D +:10100000E95DE63959E5B7FF20A4B8E3D3C96D0619 +:10101000C3D1D65B64F87179A0A10AAF4B925ABDD7 +:101020001A6C8E0773780621924E394150F17BA6D7 +:101030001DB3FA5136E25588D524DD9B7A83287D8D +:101040002639DF3BFDE83FDC918590B277BE3EDD7F +:10105000D31976C522FC4D9697C8B45251A14A7A4D +:10106000E647F3976B341FE3D61C25CA796DB0753C +:10107000D91DA457BB0E457A35A92DAFBFE77C9685 +:1010800047413420C1CAF095BB71D60EE9095323FC +:101090001A49D4093041C33111E2CE616130B01335 +:1010A00074F8BF749DCF6D3359BCA62CAA21F7F1FB +:1010B0004CF6FE148BC13030372129125B3A80E4A4 +:1010C000C2450266EAD6EA0FABAA79CB4F4D355B33 +:1010D00055B56A8E446F1AB18D0B9E30996CC0F174 +:1010E000F927C0591A3CC92F1EC5D8C3C1C22EA0AA +:1010F000ABE1E9C99B354B1D67D644539233294672 +:1011000000EECF774C2536F0F6C0CF34F3AB3B5A28 +:1011100013B31D97B23AB567FD9794F12F70D306BC +:101120001A361061AFDEE2F47C8A031FB176BC4C44 +:10113000CE0B587F3F1FC721B335759DB39E105707 +:101140006F99049901A68C2A6C2654933095509778 +:101150007B53DE6376FDCB0B8CD0BDC0F38CB4A685 +:101160007D7C2A6669BE601C06C2EA08F7730948DE +:101170007F60ECF9FE5FC4D29E05D86D1F3080679A +:101180000D6A4220FA59037B4581A9F2F7D12CA2BE +:10119000DF208B50A8C8552928164201DCBD0E550A +:1011A00022BBC94A9DA8E230E1F1B10D5F12F923DB +:1011B00027267E5F5F59F90BDB352533685DC8391B +:1011C0008A33DA6D8EBC5A815AA5AC79117D1D5BCC +:1011D0005FA0E1D190154C00DA9BCCE1E2EDDFA9F4 +:1011E00046003D89D447407A2BE2C5C03139DF7DC6 +:1011F00006B464E3C0CA31A032E1E1E548C467AF98 +:10120000C7B7D5A86A072F2AFFE030B054A535210B +:10121000C8307FE7362BFEF9AD1420E5AD78614488 +:1012200070C4774A0027B49A664443B622E25B430F +:101230006C7D973AD137C1461A43BEF05D3BA0FAA8 +:10124000C9103B5B4943BAE934ABC0881EECEE13CE +:10125000ED76C228306C3ABA1AA1CB5F810044CA3D +:10126000170C0FDFF57481F755CD1DDF45069BD9AF +:1012700013FD101452DF9DEB3C61680A67D997C4D7 +:101280007428496FEFA924DEAB270BD10E5EC7008F +:101290007153C9DCA51718DB325AC23A28F942F952 +:1012A0009ED6E5C428D320029F1DA7A26BEACA8A56 +:1012B00007C9A7050031782984B654DE8147501D3F +:1012C00085404A74865CE2CC654CB451ADE2309BFB +:1012D000351220D9AF15AC761AE4658A56FC1BE9A5 +:1012E0006C8B86EE3B75B400A28C1727C2B51986AD +:1012F0005ACE941C2A7F9E1109C8EC958D8EC9D8B0 +:1013000078C0FDD382CB498A4E402C2E5955B8A9BE +:10131000D28DD0CDE741A85609495FBBEF5908925D +:101320009854EECDB4E555F17E94CF8D2E72198B85 +:10133000D9536458CE2A8959729DFE059DB2A5B530 +:10134000C02C0EF2496470F02DD59A22567C80E8AC +:10135000D364E8490550F87F43E62C32CA635B84C6 +:101360007B9AC20A8348426895CD225B2FB3AA615B +:1013700023A42C4F8D287F65A42F889094B925B085 +:10138000ED262A6F0C0CB553EEBD12EC9FED2675C1 +:10139000290A7F195477AFC511945B2C437CC60290 +:1013A0008F9543043DB8F52F205C69136B634E3174 +:1013B000612BE635383ED9CBE154ACFFFA1A9D0DCE +:1013C0007BD600910C450204DE86CE88EAD86D7388 +:1013D000050E6ADD85536A39D1B74952378BE279F8 +:1013E000A53C334F6D7F46301BA2B86E33D6BEA9E5 +:1013F000721B0C8F009CDE913D3CC3BE43E260FB40 +:10140000DCB09051DCD541F64636BF9D18CE5E412A +:1014100012A55A617309410ED0C5A4E4B88B663B8E +:1014200062C40EEBCD343D9A35ADD75F2786A3EE6F +:10143000B9AF4910BF1633C470181FCEF4DDB2D453 +:1014400008A7E3D83A1AEF1024FCCF136E3E7501BB +:101450002AD0D6B94725CD00FAB1B1129AC290254B +:1014600001E2BDC04A296E7D663FFAC4A99F07A567 +:10147000AB939E35BC861AA59B7C7D040C2FA420C3 +:1014800073C244C5C279F7A99E2FBBDC6E5589157E +:10149000B9913BACEBBD6FE715DFC7C02351BBD1A2 +:1014A000E963DFFB4C04F8E4DF6628FA4A082DF50F +:1014B000302A8E5CDC1FB239A93F660FAD17EB29CD +:1014C000C9E5C31D87AE7BA2F06C396F44AE4BF902 +:1014D000376082547F71897E292F992FD66CB21480 +:1014E0004D1D1DCCCB2E50CB63CE5F694F68C3D84A +:1014F000448D28CDD55607EA06347248AC26FA2921 +:101500002BAEF5A545D5A18F2A74C0E3C460A73CD6 +:10151000A4962CD495FEEF0C57595C97EADC3967FA +:10152000035FA430872D2FEF7C49B5EA94E45E9EDB +:1015300002ECB8A8C7CF6E173C1E202D9013A1B4A3 +:10154000C6B083990B5499ED427867926752AEEC1E +:1015500032FE97E46A8CC44C7DFE86B09803D3D4E7 +:101560005F9457149B792D612C67368A2F22823D18 +:1015700029447E9AA9AEDBCA816323BD80BED344D1 +:10158000E5653B9FE1EA833E6A8992AC590DEDC463 +:101590002E32B37D47687C359B1A9401697D6D724C +:1015A000E7CAC878959504B3E6C43E3DD1B4C9AB4B +:1015B000AFB8BE3DA502CF1FAD73F04EB162B08192 +:1015C0003899F2DCEFBC74B3515385302A36866209 +:1015D000A78AED0864D30E4B42099C86A602A3425B +:1015E00015D84D9D0E5A11403BC85A8EC7161E6124 +:1015F000C3B9F59CB8D63A7C2ED8698F8806D394A7 +:101600001BEFCD25B3681590263F3B3DA71B0C2D46 +:10161000F7C9DCFFBC50BE6F1B1526F1428408865B +:10162000FEDC0003381AFCB157A479A0FE0938EAA1 +:101630006ED60C9923AF4719C90530E0ABE9236A90 +:101640002D17A5811911553A9EB8B07BBA8CD123BC +:10165000860853DFFB6BCCB2690D3DDE9A7F774184 +:10166000FD2EFAF6CB310DFB059F1CB4C265261486 +:10167000883EE379A3A506DF553C98F72662FF82F2 +:101680004B2C9B47D5C81A58DD093903E96ABCD8E9 +:101690007FF69FD01B493ABA7DEE59898B83268805 +:1016A0007BECFF7ED6582FE79F10B52857C5FC026C +:1016B000A5EB129BFCDC691FC66AD1AC9AA531353B +:1016C000B4A845375752BBF41E7E25C2C42698AE37 +:1016D000A8786C853C54EC6407119F0DFE8D8458EE +:1016E00097B7CFECC261E3EBF4B342FC1ECCC62F3C +:1016F000B5C07C9ED30796E1C3B80A65A4ACF11BC4 +:10170000073B0BDDB16CC85BBAD04F7F37E7501396 +:1017100049CB150534F1DD72E4642E676D1FB82CDA +:1017200074FBE7337A9C286CD9E14C87B74D68B1DC +:10173000E1358B7214C8075CA0845ADE6FAB588900 +:10174000267318BE7BA67E41F73ADFB3D252A6BA03 +:10175000F7B66FD7ADCC4C5777627D6479465A5354 +:1017600023851C4FF8FA9D3B876F3DF760897B4EC0 +:10177000C60DB086600C03832FC9C46B76D3125498 +:101780001A26C9D6BA0A6394966E029C61B905847A +:10179000B57B0AF9945F0F48E2DDFBB98B8B47F309 +:1017A000408F3D3AE08E72561174598ACFDC3F0863 +:1017B000F03AE5D05CF2E7C3186F0F1BA3D40BF827 +:1017C000EDE759E0DD5046ED584613D9C59CDA32B5 +:1017D000D009AC9DA603EDF831DD74E0C328EBEB36 +:1017E00069FE3A947A63724A8049AB2E3908FE4604 +:1017F0005B47BA477E5929FD45BE22FEAFC49B39DF +:10180000F6847FD1E5C546CF5E1CF06181FFAA3426 +:10181000E1FC9439B13FC37BB1C1B1CCD664D9905E +:1018200094BE9C71611994BC2D89601F0EEB589475 +:101830004A61D55F603248C9847423C87B89514F9F +:101840006BAE786E1F63AFDF339FA7B3FAC33FD48D +:10185000460F7374CB3EAC313C958F7898A5281613 +:10186000B2971CEBDBDCD3154924642C5639A8EE67 +:10187000C6E1F0EF19A92B6753DB48D70507495696 +:101880007F1A5039E135AAC01B90892A766896954F +:10189000A0B267781968901559320B3B344367152D +:1018A0000D65623CA2B9F29CCFD80644F2DB7AE720 +:1018B0008097B9EBA2C202ECD273192677EA3C41B9 +:1018C0001061B172189DA36EF36C32E0D5F7EDABE9 +:1018D000D3404FBBA0557873BF470A2764877C5C11 +:1018E00020EE66DB06D85F14BF1A5F865B9C20CAB9 +:1018F0008EB3E12523C878E2DB5D43D0D480437208 +:10190000D86EE557CC3E145B320A39570DD176E3D9 +:10191000E90DDC4228F1B18F731007F8F7B4C04429 +:1019200070630924BD8BCBE3AB86C856D45C75E6E7 +:10193000E2711F7D1FD7C35F4E7623BEB7F13824F7 +:10194000253AE42E913D7A016CF37EB9888EF3A29C +:10195000CF11BE3721ED3F14532EA1C2AE97E3D96C +:10196000CC0E0C4FF9724898463E41BB65960AE48E +:1019700018EE83E781B990E6FA2F2ED2668C3DE708 +:10198000B839356F01C903FD537AFA4A785153E3E8 +:10199000323A67D137F9AE644383A93E8815DF76C2 +:1019A0008FA05FE3B005FDFC8EFA334AF0D57810C6 +:1019B000EC3F963142A965FE0AFBC28B4378257D38 +:1019C00047BFB4DBA60EAA1A9FCBFA733D5DE903AD +:1019D000D78930A813ECA63BEF877E44030E9D41C8 +:1019E000423310AED05D175615440BD096BB3885E8 +:1019F0001B27DAA920BE7BBF4B0A3AB5433F0F290C +:101A000093C722ACBDC87CA7829188C9A43C84300E +:101A1000064B4161720074AA621E99C55D89328BC2 +:101A2000A2FA41302FEA5B5ABEE9101ED97F4FA9B6 +:101A300077938E62FB5E4215AC1D6E8DEBE6DC8CFF +:101A4000102D23AA623F7C7FDAFA743802E4E2594F +:101A5000A5A9BD6A648D830AD9A1907242336FA98A +:101A6000912EF06BD0D0DA0F29FB95A91145FE32EB +:101A7000D174237B1EFAE2F5743EB5C689B8B8DA94 +:101A800013F182E6F60E354AF335A77AC4A4151988 +:101A900093A1257AB056A5371A33CC9550200E72F3 +:101AA000BC0358C5961BD43CC5D8BAAD551E8DC1D4 +:101AB0009D738164AEA74657F2E8A63C7E06EB0A0A +:101AC000ED57620A1F357E83B18E53ABC69A2C88C0 +:101AD00003C6E80CB90AD3BD2C9EB5C0F4B75D109F +:101AE000A8C209F216192F92FF690DA8D92A69E731 +:101AF00011DEE201B2C9F90C7D6E573FB2137914C1 +:101B00006B85A6A50A23C45B04AFB5F20855CE04C5 +:101B100020757C7DBE2646468ED4920CD4CD3C7D6D +:101B200097CC583DFB544B72BF5C073F4441148C2B +:101B300005191DE3AAC5214E73A8FEFB64DEF94F0B +:101B4000F09A8A3FBF9A6B56BA08B5010D73736657 +:101B50000ADBD3F4454C9B8D1372D041F8E59B987A +:101B6000ADA2EEFBD9662A11CFD590D38BF2AF2E62 +:101B7000B95602F3D10D08D14EFAE30D8C3BD96D65 +:101B800099761FB4A16C661E0AEE7B803821C41EB4 +:101B9000EB4F08B986A734A54A7535D9A6826DF7EB +:101BA000208A5F4474B8F1B41847765750E607B5F9 +:101BB000BBFB04894D8A86A09DB6499020C827307A +:101BC0002F015EA467AD625651A9608153E6980F5C +:101BD000058826B0C1FBD18016CB88EC5FBE62B50C +:101BE00004AD245DB93D16F4E9B791770AB9571FE2 +:101BF0005C07EFA2AC16DE189168257062E5948F41 +:101C000067E290D9701C6A417B5D8E35BF88220FD8 +:101C1000FBF6E2D9110F7E263FA45B73665EB71315 +:101C2000E1EB62C20AA5097C127A8C559CD36E3412 +:101C3000E4CF799916EE2113F17ECACE45859E60D8 +:101C4000613090896C70D6183F7CA7EBB7AEEF532C +:101C500045CB7A95CB765620E27B552D09FF102493 +:101C6000C0A145287DBAB8FAB20B93032343A74617 +:101C7000284477E011B2631FAB07E7A26731FB127C +:101C8000D501B28663004E00AE9456018A2078D406 +:101C90001E1A3A9C8A5B52FF0D4A05FA9E141DC417 +:101CA0001587D50315CFA666F1C72E45ED5B829843 +:101CB0003D5B2AF64EA8C5EA41D8F71035BC3BE497 +:101CC000AD160203F0808D482B45367940506BE409 +:101CD0001D511F5E1032E91A084206479486806E35 +:101CE00059BC43B72AC31335AA38716B693179B42B +:101CF00065602D59B5E8B77FA53167E1E9CAD10B19 +:101D0000D630A7315586204C779921A9D57CD75C50 +:101D100097ED2BA29EFA91CA6E06021D92DF2E78D5 +:101D2000633D01BEB01F07C3D1DFBEAB2219D3751F +:101D30007178D061D2A0D8AA95B56366BC968C8F15 +:101D40000EAF831658C6FFAC4BCE0BA8EFFC7FB28C +:101D50002BF1A7E0A2BB28C1D94691DC455BFB6310 +:101D6000F9B1AAF69FA508725165434CD817CB4E1E +:101D70004BF4927FBCAA597F51894C2D8731DD5796 +:101D80000DA68E1E15BE2827624FE0888F54854F02 +:101D900001833D90DB2A9E6C2268E2DF671FEBEF38 +:101DA0003C717E72624E339E112FE78EE79325358C +:101DB000D1763752DBAAD07EA113073B50D82EA490 +:101DC000E3485FF032FDF1DE1C7C4F1E2944933462 +:101DD0004BA2CFB9314A223C0746833DA2EBEEAC81 +:101DE000082D958284A410BE8C4C2E48F17FA8F358 +:101DF0002C1B2A5AD0F3D1E5F3E493A84F9156E176 +:101E00006AE86139946DF301BEF75CEB4EE7F15778 +:101E1000032069CE45F33B5942330BFD754233F342 +:101E20004E3D6449FCB40932882DF592EA62653171 +:101E3000D95D42908A51A341ADFE64FACB9A6163A9 +:101E4000FFAE30EBAD0C86C8CE2851B1F071BFE2C9 +:101E5000B5B7CC3722162DF5C3F2E5D3E618CE126E +:101E60000260026025405F8ABC2472F63AF0F7E512 +:101E70000D178928C04A765B5B5170B2F46D781EED +:101E800048C6657A183976BABEDB18B9BBE47F0C50 +:101E9000396E7FA80837EFFE059A945D86251D1BD5 +:101EA0003A71D0CE615ADE4F27EDADA7422F900D8B +:101EB0003C2DF5E40FA3B6D7D01E89A7BF508FD510 +:101EC00011DF1A3F382251B141782A942E85B5C6C8 +:101ED0002B732A7CBB74815FBCBB99A71A06BBEB32 +:101EE000B17E0DB6136722C5EB8D370701C5F6220B +:101EF000470AA8C1559F47C78727E7AF3D5586C406 +:101F0000623262053D432067ED46FF720A3DE4A65A +:101F10009DE99D5DD57C24EE59DCCF105B21414DC0 +:101F2000BA9911964ADE8134F2280884959B9C5117 +:101F3000BA4B937EFED8808011F0690F8967ACBFE1 +:101F400004301D4F58252A80D0C74AA8507F2350FF +:101F500015521F9BABF91DFF142EF8D9AD3DA96298 +:101F6000E892007A4E6031E590CC270E656DC33A59 +:101F700024C8AC13D44C23A68B2D7767C38DE616EB +:101F8000F323C063AD76E6EFF25D3FF3E5FFB2AB5E +:101F9000DB87A4B8A0B56F5E3CAB7FF91090996168 +:101FA0007DAC359CDF7377F8A0A18EDD38B7AA1B16 +:101FB00033A2B0A7A16B9E4679B20C2FF7E78C51E4 +:101FC000A81D168487542EC52D1D7774A770007127 +:101FD0004872981C373A0E6B913B712C77106E70DB +:101FE0009EF654948964658C1A6FAB379DB84C8FFC +:101FF000FC732D5D2F18E9E0FA63BEF49313A2BCC5 +:10200000538A843E225E97D488BC68F5D451971DCC +:102010004C561AC2D5E48BCC6393DD87FD57CCDFD9 +:102020004BDFF30DCCC6EE7099AAF1EE8383154910 +:10203000576F347669159AC8954C7ADB0E712B9CD4 +:10204000207670AED4FDBE84FFAFA1192B11D4163B +:102050009EEC900649E65881BFE539A422324A2316 +:10206000C40A57FBA85764412C6620B51AEAAD2470 +:10207000213C1D4D2318F657C5D2A19F9A343D1916 +:10208000060490A9871D8C956E7E2253F1A8DBC7AC +:1020900020AE0385A3F9AD9F973DAD235D1B12B123 +:1020A000FD7FCE6DDC9C85A70B3B5B907C7F64BB8A +:1020B000F0FCBB5EE2C32D1516C7460A3E9F17070C +:1020C0008E62452C45E9553852357248F1368DCC33 +:1020D00019F28F9000F87784D85582FA0E3D1B6371 +:1020E0008FB911CA0C3FCB92DD2FFBFC56FD9F38F8 +:1020F000F1519E3B9C0B859A62CE991F40F42C4770 +:10210000EE70173E92CF3DE4F40FFFAB41DCC1BE51 +:10211000CAA318A493B9021ACEC6583E3FD7B4C971 +:1021200013A2A31E28AA03C1F34DC0B5C1DDAAE4C2 +:10213000D5FED7FD1D585EB71A3773FA10C7BE1704 +:10214000F002ADA55395DF21EEC3D4B3EDB676A270 +:10215000DE4AF67A8F5E5D7EA6C4ED8E41ED23E207 +:102160004C6676CCFA7DB13E53EC3E12EC83C42132 +:10217000BFFEB68624D239CC45B7A21ECAAB87D6DD +:10218000E6206B2CE504A7E1AAAD97EC7D6DD85154 +:102190008F39CFAFE274665F4E1FBBD5993CAB4A17 +:1021A0002F1810A0A76431A12345A0158C566E45A9 +:1021B000C22AEC649E51081D295376A18B8F894A4F +:1021C000C5C5FFDC3B11213008F3F435D14D2AE1C0 +:1021D000703B6FDE13FF3C61F7C8DF85FB197F485A +:1021E000629BBEAD4217BE2A078BC310D32DB072BF +:1021F00081594AA5FC5FD3FDB2A82EEA577C3F4F18 +:10220000E117B8B4C3AEAD864F7D42CE89761AAA27 +:102210008E1C57C6F86C39F9C689838CCCCE8831B0 +:10222000B1E47AED4558840F6AB09EE86976C868D3 +:102230001B53146115E1590DD774BF37901F489691 +:1022400087ED566547F1893D4563DC0CCE5AFD1E8E +:1022500069C003E2CE2C0040AE14501C5EC8670576 +:1022600078C87DA39F90985EA7C34BE0C8921A3FA1 +:102270005E539BC32F674D00B70410FA6BF21978B9 +:10228000BD8C8B6090881386111701323334C28D58 +:10229000EDC26258845583031D206F23E47A38EF22 +:1022A0007F90BA371789A256F3AD455B7CB55721AD +:1022B000CF29DF8C96267C1CAF32BED2CACCDD0083 +:1022C000810B45440AC2C2257CDBAF4F051458AAD6 +:1022D000FB705E087554CABC82979032D412524982 +:1022E00009CEA406876CA970DB24544E38025CC664 +:1022F0002DB187274FAB9BBC8D7D010DE331BFE531 +:10230000EC9E092F844B4C223B70201CCE65F4D8E8 +:10231000CC47B5E3CC39CEDC2BE60BEE015C9A99C9 +:1023200047056C640C4EF9E39ACE5228E1184A2313 +:102330003059A634D0FFE5B54B9F02C5E36E5D0E64 +:102340007F48AC27D2C14B542FAB8B29C940DD98B5 +:102350001AF3C83B09F815925EAEA46D636152682A +:10236000A396DFFF963315F98DA61B1972C53E346F +:102370001E52117B10C42EE29EA47C341B6AB66BE5 +:10238000F772410EEDFD1B5507DFE8701C96C05E2D +:10239000817F5481430DB33FB8C358FC0436928704 +:1023A0005B0C3CF65422024DD6318057640E9BA440 +:1023B0008144EF5982DCD85FF669534F1C7E475F3A +:1023C000FEF2EC5E8CD033BE8ECEA797D880005440 +:1023D000BEE2481E8EADAF9871A3B126482AED69C2 +:1023E0002195F1EED7E35D5297B1FA618A9D346A87 +:1023F00061A7171BF44682439699602148F0B7B352 +:102400008707954027EE32068EAE2D7FF9712BB6E9 +:10241000F6F1B8C6A2D83AC915142D9371A5644235 +:10242000432741B96C643E15594A7F435221AB0B97 +:10243000F40EBAFBB6899DE7A09ABD45A4184E7E5E +:1024400066A6FCE99BDCAB92AF121CACB2FA63EC63 +:1024500010BF33B264DDB47442DC18B3E56EB80764 +:10246000ADBD1610CE1A91AFD2845AC42DB8647285 +:10247000255E50C4A6C4056D728E70501BEB59F2D8 +:1024800099A8EC3A45043B96136FD2C0C6DB906224 +:102490000E79AC808FDCD19FFABC81AEADA224ADA9 +:1024A0002751D96F5BD5ECB6B345CE5EBA484955D6 +:1024B0007FEC731C1D86E5C479D72E6AAB93B5CF2C +:1024C0001C55516CC1F12BBDA7113CE60FE6AA5E6D +:1024D000B66CBB31FB1C47A91356179BC6B78C06BD +:1024E000F2E665C86EA4F19FD357DC5EFE19AF0A11 +:1024F0002DE56600E0DC6D9154EE2D5C5F65DAB190 +:10250000125180AF50A1B5FCA7016C7EEA087A3B5E +:10251000942C3204FABD77B8C100EFF1C31E232218 +:1025200065022CAF9BC32EFFB5D15291EDA95E96EB +:102530009745F8F97349F2700B57DD6BB37C96FB46 +:102540001720BD854D312D0AC50B14604DD4860A68 +:10255000D74D1EA8AD09EBC5CD85F882CCF2D8F7D2 +:1025600068F2E3027CB7A424018816E2437FA05EF0 +:1025700031B1EF4193A65EBFF789837F8474CB1698 +:102580000F96610642CC5818923741C2ACC4F2ECA7 +:1025900090AAF550BEF37BFA3A1C858D2B21FF994A +:1025A0006E30BFF826DCAC83D744783F0A1A1E0091 +:1025B000DF434AA2A1AA6C6CE4543997D1208CD78E +:1025C000DA0B3FEADEEC48473785EBA4B2074F3C15 +:1025D0005754F1FFBA6645DAEB70AD030E67847DA0 +:1025E00066ED4392ADABB9DA8D3A0BF53F13940229 +:1025F000025D7EC7CF4D72BE89839EB42A64501C93 +:10260000424B0D24192D66DD5C4D252ACF22D10DBC +:1026100095A5A1D2CBF51FD72C6C86C598D6F17B9A +:1026200000279E92B043FB323E2D57C778A0E0753D +:10263000806FA95DA12C17D31317628532664B10EA +:102640002EBAC7244E3505283C69C39AA12A716168 +:10265000D1DBE2C75B1100F47F9E218FF0B4ACF5B3 +:10266000EBB55F625BA82D3C50025C6ED57BAC6322 +:10267000CE4BECC98DFE42178B88D2053780A96DF1 +:10268000F08F7FA05EF3C463CA6E2841B8ABFCA78D +:10269000ADF38BBA2C7705FD13F8CC4E739991C12D +:1026A00060134242FF587DBE94C8F5E6C8B3C0200F +:1026B000E7F034C45A660CAB5E9D4D8DDDD5FEAEA1 +:1026C000BA0C1B8EF66415BD553E43E40CB5BBC277 +:1026D000E5F2A0FF3D042557279F45E1C547E39359 +:1026E000C33F934E9247BA33678E52365B891F3D84 +:1026F0000B02B7B53F15ADA2A165D9189BB90AF970 +:102700002E2C6F3CFD7CEF14E8E761FEFFC13C829C +:1027100023D79E41A69C9B7C77877477A4E5E3EF43 +:10272000090753E47DB8F228B0949981BE35BAC93F +:1027300025E75C3AEB728DB9AFC69E896F0651BA38 +:10274000C8E339A948015ECF15DA53205F596318F1 +:10275000693ADE5874C108BE981E1F4F1DFA830BDC +:10276000FE346DDA631A8EFF8F89042C6D33F1C14C +:102770008EA987E184A856102CF2006CD97B919A1F +:10278000BB4C50E79A0B7CDA2F9C1B107A5C5CF8F0 +:10279000277BCCFCE2EDF83EABF85988E983EC826C +:1027A000E943374E20A43C378097E36F128D3424E1 +:1027B0003DF759A010185AC24CFE632215022D177E +:1027C0009BE855EA292FC30D564F8733E694223BE9 +:1027D0001A1330C6E50C7A89226FC419FADED9B310 +:1027E0004BAD5E96F0AC3C07572D51F11F61F8726E +:1027F000B48816E1478E06EFFB2966CA1BD6E9BFEF +:1028000083E9CBDA5D1F0193CD5811F9C4BDC789A7 +:102810004B2B5D43275D0A9FD37082EB73FB0D7DCD +:102820004103513725074000354F4BD02AF433FC84 +:10283000E10FA645C716E8BD51353B01B945461421 +:10284000F0A5AE8D674C97A524FCB90BF45ABCD902 +:10285000D922B1873ABF73003807B03614DDF0B41F +:102860005C65A25D021A2526464CF05322412C27B6 +:102870004CC32E9B92D13B44B58F2CBAAE1D4EB1AA +:10288000BE80C1AB6780E7CEE4F660504A1AC6EB63 +:102890005135DDE7FBC2EAF8791999E9C58285224D +:1028A00021A8D640740C6212AA2479D0BEE9883FD0 +:1028B0004267CB076F1FD5B7BF1ACE21B1833680D1 +:1028C000192D340DBD4D6646B511DDD2FA80F014D8 +:1028D000269C8D4EBA458166F1C19B0ABF0ED4730A +:1028E000D891F3595330375400ABF38C9CFFF2234B +:1028F00045184355E50390AF00C1D38FD1630C87D2 +:1029000081D7EA394035519452D70A58A5D334AB10 +:1029100078BEBE792A5CEC4452E3249E3C02A806B1 +:102920002C94E14A3AA9B75CCC8641EC8312FFC5EE +:102930006D85D17A3B2483A12DF50419BE75E57E02 +:102940009EB0CD26F7EF71113FF6BDCCEA46612B64 +:102950005A36EE4B6802EFA11F367EEC16E3582381 +:102960006FB5C689EC56978A34978B0B17EABCA3D0 +:1029700012CB3B57C2636104C3A7BD99A2923E38F4 +:102980004A74ACAC9017980B6203318DA2190659AA +:1029900097F99B8B781B5CF82CAE5F68FC1E12E5E8 +:1029A000C2D94660B9067164FAB42E5D97F32592D8 +:1029B0009B67117C3EF18352E7D8DE2F5DF4DF7F09 +:1029C0008D1B9709EAC768B9BAC73AC0F771855B2A +:1029D000E2D08B1180402B7F5AD2BB8EAAB076EF0B +:1029E000A1B8E9A0A5F27847E94827A191ECEEE962 +:1029F000741784205DE86FC8B9CEB387A58468F7E3 +:102A0000070C271A18FE9DA60A403C1890A178DCF6 +:102A10007352A00BEE7AF2B84C54C8A7CEB2AACB30 +:102A20003C929930A0C2D095029FE28C2392E78C11 +:102A30008669517A3341645160DA1EBE2A2CD7A2CE +:102A40004FC7116C28B8734FBBE29EECC45963ABFF +:102A5000637B6832BDA8E9691F2ACBD474BDB82B4B +:102A60003FF3FD49DC3B060FA12529B17CEDEDB01C +:102A70000AB82AFDE1B759FF5BD715DB6AE8C07FCA +:102A80001337A1FA74CE1423CB47D0DC9493DD1D09 +:102A90007381F10D53979E6EBF6F57627493E43D3F +:102AA000EAC60EDF2F92BB678858BC425B8E2E08A9 +:102AB0000644A78DB762508634A7B1A8A0BC76089B +:102AC000D1EE645EBBFBB82E42A1E97F4D9CB232D1 +:102AD0005E2981F690CA2FCBAF1B757436F899B575 +:102AE0002EBC2748A9B00F93493272ACC46F8A5CE0 +:102AF000E5DA031A430498C33264CED942E47F7105 +:102B00007C4F7FC074F1B6A239484E8E385B3E3C94 +:102B1000AAF27A9EE5B6715B82E12957F0CA1B07DB +:102B200075525A0E363BEE120FD4096DC1C14B6A75 +:102B300034213B736E59DED9B0C0B6D0C1C3F0A703 +:102B40009BAA04DF27722819CFA88C94FB216E2E34 +:102B50001AEB73259A41666B835D2BD4FF6FECB93A +:102B60002BC22854F0F3A57AF9118B9AF7786E37B7 +:102B70001753C9DCECE41481C194205352FA2D1789 +:102B80007DE1C4EA9EEAFD6A5D487DD41415754670 +:102B90006FD61847A50A9AD9CBF32B77C6E6D22C65 +:102BA000AA87F55A5D9069505E0EBDCB2288FB5F07 +:102BB0001046B82F33B51A200834DEB8EB2D7F004D +:102BC000D0D6E6917522301E6728FBBB80ACED3A6B +:102BD00055E86749F69615DDA9CF1D5EF69B8F4334 +:102BE00097CF6C58FF6A2DC058E4B06E6FC0C5D740 +:102BF000B857AF0384469EE9D68FD642DD38728639 +:102C0000C24708C4CCAA5CBC42BA8FF8B6A03959F6 +:102C1000981CD5A0888CF60029C0F5F655743F7E27 +:102C2000339B8A757634757282B20EB022B5015D1F +:102C3000C397389D20147C02E3F3C619FD65D7A322 +:102C40001BF0BF0A15016B1985DA12C2A7BBDB1F87 +:102C5000FFA6F88575F0C75FD0DFF8BED9D0D2AB3C +:102C6000224F75BEDC7F8C192B3A9F2BE6E680F055 +:102C70001106754A508F67DC74F6896B766039846B +:102C80009A82F87A17F5B32D62AAF2782203A81C6B +:102C900088AEDACCA72099A2F6ACD3CC96E4F3E0C8 +:102CA000785F6F1AC457EBBD19A85B170559825D91 +:102CB0007CF6A54BD3018A1FA675CA8DB220A462EB +:102CC00015CFBAB954EB20363DD6641747A7FBDAC7 +:102CD00008C918F619374291385FD30CF6AC6AF27E +:102CE0007F238E40EB2DDA93E8545494CDFC4C7640 +:102CF0005C1764E631F1A99BF1B5EEC103AB108618 +:102D000043148E15EFA92C47B1E302BEC3C47EBFA6 +:102D10001884577C263C225FF1D55E126A0B6ABF8D +:102D200038FC9D850A5D8674BF8EB909DA72DAFEB9 +:102D300054DAABFA1373924CE678BA704A63AF195F +:102D4000E7E951F18B0CF64D3B78AA21E547CDD050 +:102D5000924FD2E95AF98B402A07EF5A1F823EB3AD +:102D60007F26688A05ACCAFEAD618EF3EBF6D30D03 +:102D70006669EC6DE11E90F2F69F6DD4E1533A283E +:102D80009E55DC8D9D566C19EE2CCF7C732ADD3759 +:102D900078DF42997B4C74EFF6EBEDF43DFF5CF489 +:102DA000DB3B56F157312C2D4321257FE7E4A73635 +:102DB000485921F5014050223372DB5A40F465C274 +:102DC000BC8D5EB0C93030813EBB90BCB436BED83D +:102DD000DFB1EADE2C950E29188C20881A39C6F648 +:102DE0006A4E8896504D70BBE5EF7C67779AC39D1D +:102DF000F62BD7AB542DABD432BECD7C7F00E4751F +:102E000089437412679CB09FEBAEB335A652D88944 +:102E1000E20C4680883A90A874A6820ABDAE0035BE +:102E2000520B056D307335AE73196D440CE5707E31 +:102E3000AF45ADAA7697EF1B0655C78F378E7DED50 +:102E4000CC3D64A41BF2141EAD5C921FCF84970A84 +:102E500036FFD42472EB3B09C2D016DEF25902A928 +:102E6000B381D3C320C8131D0D81C849AF9BE98A24 +:102E7000E4BBD8D7EE8D6062E1DFACA4F54AE6D5BD +:102E80001DB48C5B613ED6387E0A1840B76FBC7E9D +:102E900094ABECE4722C732F017C37A60CAA787CDF +:102EA000B2D391BFF0D664A28594797A8BC2A2CFB7 +:102EB00055130CAE5C08816DDE1C71B91A9D38ADDE +:102EC00034C85FB3F659AD7122A5F4D5DBF9FB091F +:102ED000080FFD191C4ACF52CD7EEA48EEE5EC55AD +:102EE0001814131973F32B1A00260D360A81E49A6D +:102EF000455A16E5D067C6320231ABB7BA6892457B +:102F00006FC1B3FF5159A4491D930C91B7BA79CB46 +:102F1000159525852E63ECCAE2733A7174DFBD0006 +:102F20008B85E2C201BE2B175E6ADE83DFB7C90460 +:102F3000785D76A3E48EBD9CD8E4BC3E3BD8892561 +:102F40007C33E6B7417A4BA3D5587A92AEFD72A096 +:102F50007B4EF2DFAEA2E585C6A03DBBDC4859CB77 +:102F6000D2BCF9B2F3807FA051A2BACFD6AA80EE2C +:102F7000CCF3F85722640D317DD27DF9E886BB632E +:102F8000F608D773C273965EC367D3E8FE51E87E36 +:102F9000CE10E822B31D8EA767DB3C6EC47BA7BEB4 +:102FA000717F5DA1A14B499CA4BCB458C2049FF998 +:102FB0009BA73B629043BAC502AF8B1428ACDF4A93 +:102FC000CD9D4E5F1622C3CCDD4DF76FDAA4762E71 +:102FD00011E1E79FE34ABC461656362AE8DDD6D310 +:102FE000D394B969FE3353EF945FBDEDEED2607CAC +:102FF000F4C67CFA65DEB3CA9CC696D8816FD6C388 +:103000000CE06B19EE3B5728B2F4FF124158A31C99 +:1030100021BC0A315533F4FB028EF4BE4E00B47469 +:1030200020B015467360A2EA0A76B7750205D7FE8E +:1030300002291AAE4E2C240233707F3FF2AD748306 +:1030400060B6BB72611C120F2CC0FCA050B4C1AFA3 +:10305000D60461699F72D0FF2F4B6DF960A080711B +:10306000FFC51214213E43147A2FEEF1CA75D3E73F +:10307000A34D62AF1DDB33970B54671753B908217B +:10308000BCE7808AEE012EF9CCDE3156D02A37AB70 +:10309000310D57B7B405C7C2570C845E4894CEA310 +:1030A0008A45A2C4213DB4A4DE3913DD97500471D2 +:1030B00013C2D141AD0A71CCECADEC621B23770495 +:1030C0003D17632D6F204F24735F3F61E55C206BDC +:1030D000B1E63E3B85DEDF7A758407060CE1B7AAD0 +:1030E000339BF860A4B4B283E73A58869536F0363D +:1030F000460FF2E84E3BD844C4E7B9FA8B04565069 +:10310000400A647ADC63A14DC27FEB8E4BA76A3024 +:10311000E1848E666ABE242DDDD35A351136F6FA67 +:1031200057E1A3C78840959DCD14B2460E028998F9 +:10313000232A3B1B265F6A5D8403F48F25A990D860 +:1031400036C44C555BE918883724F00EF54EA4932D +:103150004BD03F3770B812716078C5246ED97EC4E9 +:10316000E4B4CBB3EE5747A996E56B90918163E049 +:103170006BB18EA42D39A9DB70B59BCE7CC08BD5ED +:1031800070B774F306E8AAC076EB0E055DFFE91090 +:103190007E2218087C21D43B6BA2B798411A994231 +:1031A00002023D89781778488E274432E7141E962C +:1031B000603CAB3CFBF7E02A543E8381BCB7F7BAD6 +:1031C00005E1EABA441BF20AB5BDF8879158B91D6A +:1031D000DBAD6172650916904E11EA6E964617CD09 +:1031E000A0CF9CFBF8951ADE8F158DE94307844F1D +:1031F00033D166E2130833F6A34BBD6BA37FCAF14C +:103200007A58ADE0383A74ECF0CAEA9D9E3DDCA7EE +:10321000355DB91ACE3C8269DCEC00DF53B82C4A2C +:1032200099152F1E2DA6276850865C3B8D86F9A226 +:10323000552B0A1DEFB0847C13F5256E866B60CD8F +:103240004A44691AC91A93B73EC9358A3C13D30C4C +:10325000B928EC3CB5F2395EBEAFFD8CF1F09F6150 +:103260004920AAE3B68E72C0512E2687695E363C8D +:10327000F8E7D68C781B9C7BF3AF8A15D507B07B1B +:10328000209ED594838B13D09B712BEFB6DE4041EB +:10329000673B45F4FA467D38AC14915EE01904E5CD +:1032A00079A5E30740CD8023BA1C3F301F4C2E3157 +:1032B0008D252B132C7EDEED7DE151CC6A1A240086 +:1032C0001FE5CE81A5C9E7AF31C312E893043CF4F2 +:1032D000909A5D331AD891249597649464D0FC3306 +:1032E000E0712B2CDA4EAA9ED713B34FDAC4B36524 +:1032F000D4570B914C1430366B7F080FB2F5ABA846 +:10330000DF78809CDC3A80A98FF0C8CBAAE9AF3D7A +:10331000F4748DD10FA2931D091FD14BC050E3DF70 +:10332000FC5F82F85720622CB2CF30FEF4BDD6DEAF +:10333000165EF583A5B6673F8AB32FF7BB460E1C12 +:10334000544A7A3AE4BA6F3C2CC81945D3F7486618 +:1033500050E527F18D2C634AD72C89A3D3A454EBD5 +:1033600009E6EE0F8466E422A07D4988193C7126A7 +:103370006C84FB2075DCE10B2DB0C8E94E680110B0 +:103380001EAA84423B53643D39C26B16686FE2EE5D +:103390008466B6B0B37B03D2D6DB735080DA0FC23B +:1033A000B6183B9ECD077716BF4E832C43897A64AF +:1033B000A29FE39DE5CFF048D09514D2EE78545FFC +:1033C0005C47886E2A3224DBD25974FD34F0B4068F +:1033D0007FB32F2E014C1988FDA114B723CAFFCF4C +:1033E0000B67AFCC5852A8B9DA37FC79B6E25BA9C3 +:1033F00016F0B4445CDA508F1C8E3A8FEFAA32C9B3 +:10340000338DCB40A02A5B8CAF4374B7F927A83328 +:10341000DE485C1E11F6CCCB43833A61028560C066 +:103420004D5BD275D9FE973889D3C19F74399936CF +:103430005175B372118C19A22DA98AE16F66675577 +:10344000FEB9208A604608622A31D345D1384B76CE +:10345000FBC1E6A75C661EAEEF6F3E4C72CBBD743F +:10346000CAE4D83312ADF1797C98E43EA8735D3D8F +:10347000A6DD09965FA34CEBEE35F882159B4096CE +:10348000D80E3985BAF44565283A601387B5A63851 +:1034900008B470C5CB472EBE33245AF9DC57D1BAD5 +:1034A0001AFF59560053410517F4BEA25B77A19548 +:1034B000AC5B4B9C319527E3B0A27059CD20F98DC0 +:1034C0008FADCF272FA30F6FCCD0F5387CE0DD3741 +:1034D0009D7573B4A3EED75C9122613997626A83BC +:1034E00030F2ADEA0092C93A8BFD054406DF625125 +:1034F000003AAC28CA9A613824862845CF850E60E8 +:103500009C8ED02873BF2BD9838EDBA5593A362DDC +:103510003731E5E647346E0C24DFCEBAE18D193041 +:103520002C3C5D2B24ABB8216C889A3940F8BE63E3 +:103530009C494A87FC9CC42D6C16A4AC5A774194D4 +:10354000D8D5FC2B397F09AE52C463A40EE0A8F590 +:10355000B0B0879E4343FD2F6669AA05000A031297 +:10356000651E0D5B00189C977E5A235D2B881110F9 +:10357000086C94432CBCF0BDBDA94689C955F8D64A +:1035800028CB9A43F6C955F334E027CD32A7669E7F +:10359000BC4513751AFAF62FEF557DAC3A687F02D9 +:1035A0004BE5F4B22757B8AC7714E2DBE31CD951F2 +:1035B000D21C1E7D19E3AC60657FD780064410766F +:1035C000D349CC9FF1BA64CD396A6E820815834025 +:1035D000CE247C0F68D759FCBFD92AFFCE15069D93 +:1035E0000A958DBEFCB6B8ED90D424761ECDD826B3 +:1035F000D5EB841E47595DE2C3D0DF14EDA0ACA229 +:10360000A319CD3A06B28C7D730F06517069122E44 +:10361000D8412243408088B2ED8CE64C14EDB49240 +:10362000EA452EA4A64F6AFD552BF260FC5CAE0065 +:103630007FE7730A696A908FEC871966F6C697BAB6 +:103640008359741A5C76CAB0840106D17EE0868103 +:10365000FAA325B9ACF88801ED6B9B94EDC07F19F6 +:1036600077F8141B426C1AF47AB9B73D968ADC904D +:10367000AC2745366BFEAB243D739DEED2D64FDCB6 +:103680002921B22F9CD1AAF40E693873F3DDB51548 +:1036900020CB9011357D40B5E81945C81C64ED1567 +:1036A00017891D02AE3208DA09E6C3165EECBFD7F1 +:1036B0007EE9BDEB1236E9ACF27E11428300823125 +:1036C000D0815D76626AF9C886828CCDDF94A605CA +:1036D000FFDF29B37FCB5832E22C7D9043B3ED5707 +:1036E000FC0D15B190DDC6E82E57A5975AC1AEB8AE +:1036F0002FCA1C84F498BEFCD0566099CBD65EA32A +:1037000002DF8ED93541535E86AC496A1E17FD40F3 +:103710001E4B8445700A2EFB129B9C2D57D0E083D4 +:103720002AEF7785B21DB5FC942700D68047E18E3D +:103730009ECA455822CD9056D04CEF9AC3CA8E16D9 +:1037400062A00C72F8AECBF8085EEAF207CE74D72E +:10375000DC782B94EC6E47ECD50F70E616AEEA3DA4 +:1037600067C8E8214FBDE68852C6E90C46754F048C +:1037700085E2CD1FAB4AB772AECDC9F4415CE9C456 +:1037800035C2DDAE5C3160727C1B1FB93438285104 +:1037900055DF821E42B3D6D55DA1F3CC41F15590E1 +:1037A0007EB17E4D933B7F1B6A5F76167E882A3EF4 +:1037B00068E06FAABBC514F861D46043195A055379 +:1037C000D53F443CFD687A175535501767C3325FC3 +:1037D000E56BD558C253A7C5DBC7804BAFE9C2051F +:1037E0000D21A460C8A65D61A469EF01924403FDA8 +:1037F0002420B9F0E0E576A8C4681FE93D7F025FA8 +:103800001D4584FFE17F54F5B93F5BD78CB94790E4 +:10381000F720C9E577BB03D16DEF6FC3A7DE138136 +:103820001B47A736B03FB733E3EA83CADE72A089ED +:1038300077D27967336B84A0436F37BEA085EF39A9 +:103840009D20879970FC87B87D1B49317725B1DDB4 +:1038500076E4FAFC63C3CA23069AD724C94960E414 +:10386000778ECF060B25A2744BC17686CE97563E37 +:10387000CB0D1A2C0EF4D1F0FF555E47507934EA87 +:103880005A12E75804792E6A36B58A0C1676AADAE7 +:10389000DD5494E6FAFE198A105999BBB47DF255AD +:1038A000478E5B2C9B65570E04E1DD400C1B1EA769 +:1038B000AC76FFAFCECFDB7914D8323A9D5A1EA832 +:1038C000AB02A0B65CB7AA559F76BCA3D93DE13840 +:1038D0005B09530649A5643594FC733DB539C8614D +:1038E0003121A4231BB9614412C941CC733575DC65 +:1038F000C701B4911F1712B2091DE9166E470CD407 +:10390000BD5A6B439835190DA20C4D985A291A9C33 +:103910001ABDB1F7FA7BC2C8708C3A88936E8631B3 +:103920003349F9C0622FD7FC86D65FCBB4BEAD94C5 +:103930003F77851F8DD7B8B2A8B6C1CCEEC69E75AD +:10394000E92BB67089A31A2366205055F14A700FEF +:10395000E365CBDA9417BD4AA8AD36B805B20CA121 +:10396000314EEC177800305D964605A1AB70908320 +:10397000979A82773549652F4AA72C901E9B176529 +:10398000D7D063EA5EFF2E4D4556F0E514B058B827 +:103990008D272191041A8DF0879428CEBF52815033 +:1039A00008B695D7E00C4D30854EC49596E7103F8C +:1039B00074B5A72F636AB2FD2875556EB1F5D4565C +:1039C000A2D1A680E79EA2C3963683DFE290E9D01B +:1039D000362997E0B4DADE4D94CA3E7F889371D3DE +:1039E0003FE1AB1CFBC439704EFD4B1A926EB9E837 +:1039F000C85A0A3074D9B1F01B9A8D05A8E41C513D +:103A00007ED4C2B1236A3F878871A03C6A7EB978B0 +:103A1000CCDFF72D35B8B86D6B02A3A5BAD35780AC +:103A20009844B0E8FFD7C49F4662C8BC2FE3F16852 +:103A3000A35E710838316A01519AFE671712BF34CC +:103A4000DA4F65FDE8078DAB250F909535F4FB65E2 +:103A500064147AA13C37427ABBA2DC0CFDDF0687F6 +:103A60008AD26C8809D6C88CE82BC44DD00E79DD7B +:103A7000BFB81E8EA4A893958A89B49673B3CC85DB +:103A8000A51C1C71E63C91549FEDC73A67E7BF99AE +:103A900016F6AF352488773A0CA06558FF3FFD969F +:103AA000B746C1C08BBD673432525037F05309E975 +:103AB000EDBD4CA47A94D819E92CEE27647405590D +:103AC00064D4A5531CE712EF27218E10C39E21D684 +:103AD0007F3310FD3E20DA9E7801D1D3EC33D77CC2 +:103AE00074F0169E830B16756D5F2E614117E25BB5 +:103AF0002645A3EDEEDC220C930ABB2C3A946F0909 +:103B0000BEB19C9DDD7EAA61C459BBDFA3622A873A +:103B1000C03077AEBBEB77387B667E64B875A4D7D0 +:103B2000EAB575D23573C004F47A80ED8ED5522B88 +:103B3000BF64ACA52BB668BC5B0328DB18F7B811D3 +:103B4000294045FA50AD22DC783A2E48757FD64F91 +:103B5000C5EE7B9CD78E4794DBDE1FD32FAB82EE66 +:103B6000FA485C9AC816FECB9830F8A2F03B16E4EF +:103B7000C130CAC157E03E3DC75410734953AACE65 +:103B800099AF43C5589A92A27A68492E7393725995 +:103B9000DE7EC9E5CE5B21699036E48AACF1E51E94 +:103BA00071705D01600FF2E8EF7411EFE742E91107 +:103BB000A22EEC8416C5898A2796FFABE3A1E58C7B +:103BC0009AEF77334E82E6D6CFC41F3707E462669A +:103BD0003F07A7A46BE3069C44BD97FACE1A8BC897 +:103BE00007F0027C84F37CBFB6ACA6E9C0AF197EB7 +:103BF000A68A3F35F8DC3EAD975BB9921F5692A17D +:103C0000C61B8B4741ED278E6D8DF972AE159D67F2 +:103C100025F6B0003034CC41A15CCA3168A13EB277 +:103C2000EE6CF7E1B6AF2390195D320FB73A3F9FC4 +:103C30005C416154E4CF690873B36D8CFE4F93F619 +:103C4000609EF9F0DF5C613B476FD3A12DD96EF028 +:103C5000F0280A10BD362471DA9AB7FF200AA2C7ED +:103C6000B4DA65EA89166E3FD0159A960209141ED9 +:103C700002168BC99F886BF8C167F4675AD85A47F8 +:103C8000C3BF1BF8F5054F07830032F793C7B7365C +:103C9000693F9B8490C357175713CEDC62E42146DB +:103CA000020DDF966E30CA3CC367FA51311908B471 +:103CB000E0DD45B2F8ACC227B566B256D9093D93EE +:103CC0007839049BB218E067786021FA7F77E27D4B +:103CD00056C42BB6E09EDD5C301CD0D39CBBA668DE +:103CE0005F32C9B93B0D842A46A427277B569D9194 +:103CF000ECFDF6E75CC2FDB4A2C5258D501D5E311A +:103D000025494C381D2BFC18B1A2A16CDB26B97BD0 +:103D1000664E4D958D973E444087350FF81C2CF22A +:103D2000707774EBB98FBC9C44EFE0B20784221427 +:103D3000008AC69E551E68BA101D919EA56F382137 +:103D4000F09B85B5CB025A8E4A36B240100BCEE4BA +:103D5000BCBBA8D8B7F06EB8642B4DE36A53C8A0BB +:103D60003AEB4856A3722A464BC81CBFC702B84A52 +:103D70007763E3D2C07BB7DEA614A8AC4101B22BB7 +:103D80002B66B2D9E7C1AFD2DD6B99026DCB9E57DE +:103D90003324BDBFAAC42CFF5DB8062DCE32036408 +:103DA000ABD57AE26E77ACB2C5931F232418F49694 +:103DB0007CCD6EF865860716DFF5F2E95D561EFAD2 +:103DC000545355F186B10FBC7D3CF77D60DCD67E47 +:103DD00011403F6F5123FE2F97C88A4DFA1BB20343 +:103DE00055DCAE5A9763B7FA28521FAEF7E767E380 +:103DF00083983F63316DDE0B12B106BB8E749D1448 +:103E00005AA872F79AFCF12A0086120475F6321845 +:103E1000D7186F96B036ED10F74B940F38A053B209 +:103E2000E754B7512DF172D1AD23869378FADAC4F5 +:103E30006C2FDC3E2BA2FFDFFB297465BE2F0B1E0F +:103E4000555969CB9803E723F8E10DA8C5D1D741AF +:103E500022DA84AB555A7B5AD4656AEE603557AC8A +:103E6000FB26840FAA0698F83B041C6F448475F760 +:103E7000E82D114E7AA9F1C211EAB57D8A8DB154AF +:103E80005F9260199A921B3449EEDABAEF01E2B5FB +:103E900046B15CD64A4A32121D48ED0E0194133CDD +:103EA0003128C7DD632CEF18537715FE49C29E8E6B +:103EB000384F2D1044A8FC25B1AC10596242DBDC10 +:103EC000451B2A483858F91758FBC4FD5F14B4AB9A +:103ED00071C78F0A09FDDC8B8CFA8A918A060697D6 +:103EE0006FE795BDD4D8C35D831ADF3AC7497253D3 +:103EF000B372CFFC7313557623FF5119C99864210F +:103F00002696FF1FF104ACCB145166ECB21E545838 +:103F1000F3EECD6432003A75E5B95DC42CFBAA3EE0 +:103F2000EFAAACA51A7981EAC3C9B0606258DBA5D3 +:103F3000B926314A30AB0B72F1C090AEF82486AA94 +:103F400049B272CFBDF946566229C7A8AC41A6EF67 +:103F5000278B2650F6776AD738CC221D29DCAC6136 +:103F60000102FE5CA2C64053E89725989AB7BEF9B5 +:103F7000F51D8FC8AADBFFFC195512105BDF829D6F +:103F80008238AA2E3BF19FC1387C1A2F3605394A58 +:103F90001A055A6ACF5270722765523B380D3F247A +:103FA00017271F866E2A064A837589585B1AB066E2 +:103FB0009A765179BC916AB73066C67C6A432232E0 +:103FC000554893B00E67970C0800522B243AC9C38A +:103FD00071DB42ACB529A4BE9F6D5D35D39A48C252 +:103FE000CD942D3B232ADBBB20013848CC70560CE6 +:103FF0004B9CF92744805E25878B6DCEC526109D8E +:10400000E65837E9446743DCAC465F56D334E5B93C +:10401000CEE76B174E40A7A1D5631D9611B1880B53 +:104020003B36C5BF759F1D2393EDF736062EB7F3BC +:1040300096841D111685AD3870D55A88BEEB7F5415 +:10404000905B9376AE8E88C7DFB78F288CCE2C0915 +:104050007E1B9B6054EF4A0B571224D4A71723A64C +:104060001BEB2C01BC748AE5C6E849308FE60039A9 +:10407000A2E687F94D608C05A55B10CF333004D7DD +:1040800038E48373CFC9049D546D9A5FB09AC8F623 +:10409000F588CBB0888A15353C3B096B17290BE2B4 +:1040A0006C014BBDB2A1FA7DF8441C8C1106CC7B8F +:1040B000F9A6B1971CB987134D1FE7D058D100E47A +:1040C000E71CA4A9C1C0570A4C0FA67A3BB1DAFC81 +:1040D00045C9C8CE8C09A6F6EBC53DE704AFFBB6D3 +:1040E00052974A0831993F454ADFEE5133AE904B23 +:1040F000E4A78C4E99B0A46CC2CEA59A6FCF47D7D7 +:104100007FBD578010822AB9C4B80EA500CBFB56DC +:10411000CB012D9B9D7712ED87FEDD1BAB99A9444A +:10412000CBA3AE3D1A9C6255084574531DB463C5BC +:104130001512C77B667BB333CC00748C49183DF1F4 +:10414000BD5F2F37C1D154BCB7A3BB7122932B4A9B +:1041500041A0E26C7E2020E514F8CE682644ACE94C +:1041600003026A8D28881041D234B545E6D1BF3AA2 +:104170005FB489AD6CF20CCD2C793455601A8D6327 +:1041800047A7B705C290005AE1AC01AEEC5820DF5A +:10419000BB223D8A4EA7CC3F1C77B70063E8A575CC +:1041A000871015A941A0AF4BDBABD2E39B12C9B678 +:1041B00024E3A149741EDFAE15B6D5CE3D527F79FA +:1041C0002C023BE25015A68C8F2D9EAF0EF0D361D2 +:1041D00098544A0C50B6427E0B37418CDDC22647BC +:1041E00083CF885F8C1EFBD21F279AC250D5B60C96 +:1041F0004D7B5E04973D217140EFEDE3B838EE86CC +:10420000333CA0B22CFFCB29FB0AC02DD5F9B8B6A0 +:1042100081805CF45AD84B098D86A44F1ABA32AD0E +:1042200011570405E296987872694B53F71BD9270A +:104230000C3E72FC4F28F85D290C618A92812A9409 +:1042400050EC5C3A91DB34A93FFDF69554035A9546 +:1042500065E347EB2701AFBB9C859A53CD316C4397 +:104260002107807AB88B698CBA1469B0B443B2B6AE +:1042700042C188B416247706A6562446E1F6126C8D +:10428000BA59263600C2F3F797B29A2B7B0E7DAD52 +:10429000BF928AB66BDC3FA86F900F2551BCE8082F +:1042A000C68C5ECA3D586CC859E997307DEDA17D3A +:1042B000B62DC63E0D6A5C2B3DF2A6D7500745CC05 +:1042C000464980BD6086A20017F17E04793D2A89A7 +:1042D000034E13FD6430AE7836B15FCCAC19D18596 +:1042E000D696AA4EF385475D491980AF5D73DB60B2 +:1042F000532F2A5E7EBD8931EADDA4006009641473 +:104300002B43E1C866E60D8ABF9524E384C9FCAE61 +:10431000026D0AFE359984416AA883CE9F96A33127 +:104320003E78FD855A6C5A0AF562B4FDD563DC2AE5 +:10433000E8BE242CED34E328785182D3CFFA7EAB4B +:104340008E78007DDB318882C6E998766DEB6A064F +:10435000771BC204581F539CD2D1CDA0A6B65A29B0 +:10436000910FE37FF06F09E08B1E71EFA22D8B0B95 +:10437000770651E682CB00E580E71C2E5303BB4A4B +:104380008764C81C2DECE1BE687A3A0424ABDF5385 +:104390001DEAC3BBBFFEF21F1F118F2D218AE396BA +:1043A0004EC0EE177EBF9E98F05B6B0E91BE8D10D7 +:1043B0002FD43AA67114DFAE32C905FA71551381B4 +:1043C000C954F3613FC79C9B2120896EB5493D9636 +:1043D000CDF3CECD278158D0D61261909AB68B1BE3 +:1043E000FA564CB560C8F096E2FB25491F2E3D57A2 +:1043F0001173B12C011237478EFEE4929875112289 +:104400001DD0BC61EDAD94D27204BEB9C2E8AEB6A7 +:10441000720605DA8D6A15C791F108F0400DDACE03 +:104420002D5A8B03B737757BE8E50AC3B2F36AF4FC +:104430000E6B474AB0A80B97C38C0D2560A53B5A5D +:104440000BAC4CB04010D38FEA1E872FDFF6BCC0F8 +:104450009EFEA178C33C740FCED3931F709BD6E30E +:104460005909E6EA2840FB45DF925B1F3C8CA079A6 +:104470001608A08BE281571ECBF56D9ACE1998DBFA +:104480000DD95129911E0F24DA3AA0AFF669E8AD93 +:10449000892F76239385C9B3F35A0811583A3138D6 +:1044A0002E587CE75BC582049E89B4A18A713D5178 +:1044B000D8C57004D4345B2BF826DA1519B7E2E0BE +:1044C000FDCF85B14F9C73C7E21E0E974EBD29D913 +:1044D000785C8195AE4A18821F96A7189A210CED38 +:1044E000490B3C01718983A9173454B7308CA3C69A +:1044F000F22A2137484F5FE487675973958EB9EEEA +:104500004A53C601E68114A5F376745CF8DB005FBC +:10451000BABD1627461F0ED57D792099ED53886CBC +:1045200062AD8929152ACC9710227FF3F2C43E9DF3 +:104530000F0E7CB73D3F15EA2F853A2A6BD8138AB8 +:10454000B2ADAFA3B6B104C1CD62C87CB7BDC05493 +:104550009149BB20735F446379E01C76489232B97D +:104560003CBABB2CC55E53452289E057D4ADFFA6AB +:10457000136962042266CB243A8B09E3BFB95B8ED0 +:104580002E2DA94147D09C7506CA8B49E5E7466F99 +:10459000DC75818A5312E0BE1FE19F52B28C6043EA +:1045A000D2BCD9F5BFCB9B6DB3DC873563640D946A +:1045B000CC50FA4AAC85FE3951AA3427FBB460E7E7 +:1045C000F7F819E5E9A6FD3D5E8A6AD03FC2D0AB97 +:1045D0007F7A8E7CFAF8B3F15CE285A95C699A9ED9 +:1045E0005795CEDC246BD35A7AEE4A59AAEAB8968C +:1045F000A4EEFE16DA87A618A3D2941084A6208E05 +:104600006A2B31442C4DADFE34E328C929517A5F21 +:10461000B60B3E9156BF49B6DA502C0AA168C42D9C +:104620000293BEF9179893BEAF4FDD0BCD7241696F +:10463000D820ADA5BC77931E1894B3EB650AB0B52E +:104640002710051D52ADD1919EFC24E937B4AF6E01 +:10465000803282D72C0C3C863901FFE55D9A26E03A +:10466000078BA1B15CD218FAA6A20BBBD9914B6AF9 +:104670008A8ECE8755536D604A1B03059ACD765EB0 +:104680004EC3797D34F0216A0F4075DE15CF178453 +:1046900033EA22DD067AF93EE1C1095A7FF33DD5BE +:1046A0008B051DF88EBE66CC8BA0A39A63FD1C9C67 +:1046B0002CFAF47CDED5E0BF8A73F3079EEA59B981 +:1046C00075046DD42282A6B762F2451D9E1601279D +:1046D000F3DF890BB076871EE6A80B883231137D95 +:1046E00077F989AD2E47478B0C08E6C7140884B1CB +:1046F000DD349FC15D1E2A2BD7F387138D95D076AD +:10470000182D6D23F63B43EE116A424EEDC6716DD6 +:10471000E6D7BAD77F97591FFB1FBEE512F27DC6B9 +:10472000B6DFCFFB7391BC180F8D8BD2EE1D3C19F9 +:104730009AAC78F6BE7A7F1CE00DF0B89F6FC0315E +:10474000628FA4C8297B75EB735501FD428503F385 +:104750005FE318297A786772AEF8612C8E770EE1E4 +:104760006DD63E046D279613D01972B2826EDE119B +:10477000DBF5B4D245AEA20536A7557B3C2168FED9 +:104780000E17E5062039D1EE4F4AF5C78F70181B7A +:10479000FC096C99E1BD718FD16199CDB66077202C +:1047A000A9B04AB4A4A0D4B1C5CF9A380137E9ABB7 +:1047B0009BA473063A06784FD0B3C3FD443A925691 +:1047C0007AEE345FF3F9EDE951D0988646310FB4B3 +:1047D0005DDD70874CB8915CA031AAA39AD1386F87 +:1047E0009BA7ABC3CB5860145E6E627DA5D45ACC38 +:1047F000973CCDC163B4C8EBB9634BC49F586752B3 +:10480000BC2325A5CE217A48701C79CB53F97BEDCA +:104810008D3B9BE0C869A071E26AE6D56DA6523077 +:10482000DFB3F73B2490EA5647519D98232DBCA255 +:10483000BF77FD6FFE96E6687BA6238238E8FD20F1 +:1048400057CF6C4CBECC8FC12A9FF749FA84738E28 +:10485000FD5EC453679339F09580081268FD1D9E74 +:10486000E437ECB77BF410C4C071803CB83E031B46 +:104870005C648B3728560C826168069B7666FB2C3D +:10488000483D9AB9FB78D3E637E9FB602F7F995909 +:104890004A4C0115E5446F1CB2AA98B261A092C2BD +:1048A000C1411FA68B73A0A1B29CBD86BA0EA416EF +:1048B00014DB3B147021407AF9BA284BEECD17A9CE +:1048C000870A48CE98E154FE172EDBE8AED8C148DF +:1048D000C8F8A8D5E3C565C102A9741180191B1CCD +:1048E000568FADDEAB218A1DFD8DD47EDB8D368AE1 +:1048F000126115A3E2743EC1D21B1B60C8E3246D94 +:1049000089D3772CEDC244F2DBFCFB32AE8850CB6E +:10491000C92E40F2B7E071BDD11E13FA0BEF0A7B2E +:104920005C462B436FAAB2ECA36806C95D7E1033C8 +:10493000A947F907BE6B5B3D324C8DA3386167D543 +:10494000A5FC6CF990CF1DD0F5600A5EB2C047D4CB +:10495000DC31DE7C8D15B2DE9795493DC65956C9CE +:10496000C6CD3B0B7A222685EFB78DBB112BC373C7 +:1049700087367BCE7E75F67FF9C9F8BF0FC402F586 +:104980008E862D01D92107CFB7FA1E8D9E41789DC5 +:10499000E35832BBC39B3472095259D6D3F7128500 +:1049A000E0102511A25EA8C9E29F7FFE48D6A27C36 +:1049B000A7123A54C340F50BC9F25EC019C9751B62 +:1049C000DC08638938EEF5A14CA049605B3E724873 +:1049D000E74BBE428FCFBA65EB05D221136AFEFCCE +:1049E00022EA841B9732E5D2B575B4702E47CEFA11 +:1049F000860DDFA413AE19441F273128C04DF8DC03 +:104A0000F4883E7880D10C25D6DABEBA72834C6722 +:104A10003E0B5A2D024828D3449305D40221059B0E +:104A20008EB0818866E8D716687194F7312F30BE52 +:104A3000E5A7E4017A68883DAE1B0AF38453BB699D +:104A4000CAACB81B0AF50B6938F301215B76E1FFAC +:104A500048FB2C752084C1B17AEA55C57E1E28100A +:104A6000F696B6A55A0C3F6DC95F780DB88635D756 +:104A70003FEFC40DB6969BCAC106A659B0C6089EA4 +:104A8000F19C68257F1D346D27121ABA5504DE8605 +:104A90008888C582FD5557D51DAD5C840969B80469 +:104AA0008E35F0DA44F2038152440314118723B99E +:104AB0003358F2814F7268FA9CBAE2EE13CC9762D7 +:104AC0003A042CCE3189CA8E1EBB8D7B85916346FC +:104AD00067CB7A99794266C78166B398539C1D610A +:104AE00009AEEFBC6FBC570510B6E197FDBADC0B01 +:104AF000C071A25BE38A4645D82D881CC78A7F8B8C +:104B00007321C4D2B76F3FCE423AEC9BFE2CCA89C8 +:104B10007D99175085A2C598124DF715F892BD8B57 +:104B2000AF14A2D55F54D658DAB81511A30CD1230F +:104B3000F0492E85441E617D694BC84D79136AD7B3 +:104B4000481DC2A67B0C474FFBFAA0884212D842F0 +:104B5000E972C0AC2A1AF38FA91F3A4B662E0DCB0F +:104B6000151EA2E7DA0F545384C38F7873E59A8930 +:104B7000BB359253F4162ED85FE0EC6AAA435C581A +:104B8000A93818FE7B9F5A76B238DB12D35C594C99 +:104B9000F78B34266C1558E7F79B13DC61C734BDDF +:104BA0005377D0728FD2E038757C4D09A55A2C9A74 +:104BB00020D1A34E5B89CF5FF4FD8AD3B61321FECB +:104BC00047EE160D9BE2D8C7D9B14BF250EE6718ED +:104BD000999D7370A8E55A3FA0EFA5CBD6662571C5 +:104BE000C57BB4AE165D0178769CDA2306612A98FF +:104BF000B36E2EC5201A7814F2297C25E994ECA80E +:104C0000F39C71EE2681E5CF33CD7EBAD7C40B631A +:104C1000977AFAB5381D5EB8DBA604E6E5522E0E8B +:104C20002AA58778719A3C6E4F2FE3CD4882BB2D21 +:104C3000C5231CE651A89EC9E6942B6DBA4DDF3200 +:104C40009FBA681E83DE1D59096F8B062396AD2817 +:104C5000AC1D756AE6B17519393B4FB4E81813FA03 +:104C60006FCD072A82911EF8872FB7D43605DB1443 +:104C7000E28F977922D7E8F0A1EBBB7EE49637C2AA +:104C800048E95C407514AB95B11D0017EF469AC614 +:104C9000C196590B54F8A3E91C75232017BBA5CD69 +:104CA0007E854C73D55DBC9F0648239549BCAAB848 +:104CB00067C1FF196703BD4B561CBD9E8B4DDA10B3 +:104CC0000E7590F28986B69D72DE1787E36342DE29 +:104CD000DC85F22B1682EB804587A83186CBD7F096 +:104CE0000D001F6D9097334A9FBDCE079159E7B0D5 +:104CF0004E6B8299F121EA1C01B9663ADAB56F5917 +:104D000007B9531A6ABB1C092BAA6F8DE1AAA47FAD +:104D1000C7B82C6E86212343B6CD4F5B82CFDCBA59 +:104D20004F9FBE0C89BD18887DC8B67B6210E49584 +:104D30006D4E40941FDA2178DA637140474E28B8EF +:104D4000B61ACCB9BEF6008C5076005E58CD70F025 +:104D500086236DEA6AD8249A3AB09ADA00B6D191DD +:104D60000678A1E2083859AA3C1B9F9C35106E2B8F +:104D7000647CDD1EA48C1EAA5420F880AA94325DA7 +:104D80002B891C80EC7945499A0E820203616323CA +:104D9000B7E7777BFF1EFD5AC6C447CA4B043013E2 +:104DA00061FF17D058C0BAB190C06A703408530C74 +:104DB000C887CF4F449262CE9F3A790916692B8DEE +:104DC0001EE1E07F8C9D4AE35131BAABDB624C12AD +:104DD00053802454F72345EF0BBBD5122456F75CC0 +:104DE000509CB42B892B3BD6AD961E6549B95EBD50 +:104DF000A33D1BE46C3B1491F61265FF5C4C73F110 +:104E0000DAF72604C47D8DEEC4ACB6756D751298C4 +:104E1000C8C4B9352C047472D9AE9248647C81ED53 +:104E20009A5E14950B3A4621CE1296D92570E2BCB3 +:104E30007FE2577E5D13A55FA76DB59753DDF2A3A3 +:104E40000D574587EFEC2C8D8599E8DC200570CA5D +:104E50008E597EA0774D01E9BF01891C4CE4F2CC4C +:104E6000BB7EB6EE15739D080C9316DCF85E1194AC +:104E70005118435DB81B85CEB5F6B17E882AC8327D +:104E80001FEF0F50816072813C32863F982A79B0C3 +:104E9000F3CC652F3DD1D5FA6F8C575EB532430305 +:104EA00032716BC607BF2461FF5D43958549ED9262 +:104EB00005C4790A1C18CAD0C908472A7FC6D6502B +:104EC000A074A58DD7C724E67A73149B507A5749EE +:104ED0008A548AD661D684A742CFA2D7E5627AA047 +:104EE0004B4736683F3F2276511A4BABF73AC1AE7B +:104EF0003FED9178C4B8A1DEBCA44834B4B4ED163B +:104F000079456020BAAFFE9EF896CFBB747B86DAF7 +:104F1000AF396BD19058E753E9597EBBD4E633E5FE +:104F2000242E765C7DDC2EB19BBB296B71AFE21E1B +:104F30002383E63292AFA37BFB2218045C310C4A38 +:104F4000406376EEA8CC4448486EFE84F437FF9662 +:104F500014C9D34AD339214CC4EF00E09D6F9A7A2B +:104F6000A2A4EC72B9B8EA2651563F37ADA2DD8D46 +:104F7000F6D6121E7C323B3BC85A730F917B395FC9 +:104F8000DA87B807B595F7E4604BC8430177CB5D86 +:104F900010878885596AE3A0EF5649FCF61BFF2865 +:104FA000610F4E3BD0C052EB48DBCB5035203A422C +:104FB00064E278415A289B71035CE89AA30CB58C93 +:104FC0001F8BC708B8A62CE0F1457F5221FCF3F6F1 +:104FD0007FFD3DE0BE54A574108DF667FECFD12253 +:104FE0004452C1B8642132FC8412BFF6ECA74E567D +:104FF00017FF20B77307CBEF67D98E23632EF376A5 +:10500000C3A9896107F3FEAA6F0C486A857A4FE746 +:10501000982A525718F8478A4EC61120F28DAE983A +:10502000EC1028621CBB7B737CEBA39DD60CBBE40D +:105030004713D505F25E02DD69A214298B2F6F9606 +:1050400075E3A49420EAA722743510970D4FF6A6B5 +:10505000596619760E3DB1FD9503FFD47452D9AD52 +:10506000D64EFB5B4758C84FBDD23C4185847C7B04 +:10507000A115E4AD459AD5C62F7EB7527663C0819F +:10508000F0A4C3EA7181E99511CE582F809A2906C0 +:10509000E815A043CD1F81B31541F410AA91B76163 +:1050A0008B5DD1995D64518CEF0506F44C2EA4F90B +:1050B00095D1F9EB2824BC8E4F81A140953E43AF9A +:1050C00066F4756CB87E6403F51BBB86F604524328 +:1050D00035ECD642648954D3487A80F47AED4AFD9F +:1050E0003549875168ACC58BCCB355B053EA590CE0 +:1050F000A69D8510B009E68120A1572B36376D9704 +:10510000F6EF67201C80E654404D8859C6336C7416 +:10511000F2370CAD1ECBFF2EE9A7237605FA863DAC +:10512000D29CC8D54FC81534C96296EFB2616148A8 +:105130001B930082356590B4197651A0B1BB8DF7F1 +:10514000A6D68235DE153CD64C569471E5641E34E5 +:1051500013BDAF9854809675766F06FE4CFBD6C68D +:105160006CC128391B2817CF9F59CCA7D30FFF0E2E +:1051700096A88A689BA937781DA841F01CB32A918C +:1051800045BD2E84500434BE9EB585AD4D90F800CB +:105190009DC6E8F2C3D466BFB49E461372A1986E52 +:1051A000CBD08E6BD9E2CE586232DD11E26F5091D6 +:1051B000A752C0E2D4AAC1C2C605FFFA49127A9228 +:1051C000AD9B65F806D690FB5405C33B63F583BDE4 +:1051D000F58F30BFC78F44F9BCABA2CF6F957E5A15 +:1051E000F530E46FC95D9E2394BF2CBA12E520BA56 +:1051F00059485FE83390D3AAC7F76E3A37FB55E4B6 +:1052000043FBC3597B74C0A9B351C8756DAB8C7394 +:105210009A74424030379F60B364253810C6C59AEF +:10522000BCB6B7F76FF83D3E98E1E056184442E04F +:10523000EB2435D009FA1DF42016ABBC46C650FC51 +:105240001D599F550BC94F7693E7CC268C1EC4EC95 +:105250009DF85FB6D1B382264CD83A8D6E0E311BC5 +:10526000270B42E7E51AB3E0D605BD12F4AD76563A +:10527000056CF50D8A90C4F89A20367E922FEAAA22 +:10528000E1B4264EBC4111575497504CC6D70B225F +:105290004857ED7E18EB275FA8BD4E0B3A961816BF +:1052A0007B9F0120B11558E2D06594BB14AFD5485F +:1052B000A09704037DE954AC042130CEDFC5965C91 +:1052C000E484E1CFF8139A16FD218A402D9CE9C8A9 +:1052D000437558213502871E553063070DF104D5FB +:1052E000A02E2ED00B907E785CDF5F1D69E04B0313 +:1052F000DADB818528F555AAEA293FAB59F6714DCD +:10530000F7D5FE14F9C61639EF83075DBD93387DD6 +:10531000521A2C960B2B91D6F6C4BCE3F50021490A +:10532000EBBEB1C52A797668461BF8ECC9033C91FF +:10533000BAAE8B055E12F1F0CB2352783F8B9E768E +:1053400075DD8587E848088F52E6F20AA1AAA372A4 +:105350002A300EDEBA78F3E3B9401304E9D1B293F0 +:10536000928429F8D9C17223DCD31C5B1A92FF38CE +:10537000A490EBDC6DFFC24A4915FAA8A55FE6B917 +:10538000D8FF6AB137D63A75CC18783001CBF774AC +:105390003CABEF1DA30C7C81DBE9EAF2464F4AD817 +:1053A000AF89618CD195C410C3FEF65E22FCDE98F5 +:1053B000DBA59DAB80ADA6330B82E571F3B2BE7465 +:1053C000CFBAF40E5F8C394920BC5B4684545FA78A +:1053D0009618E14BF4CA44330177D6333CB0FA4A0D +:1053E000CEA62C2BDA6282A258B01B5871DEB27D99 +:1053F000D8AB1CECB446C1B5110F9651FAFD4EE680 +:10540000DE402D5466E4B4546680D49576C3DBF94F +:10541000B30A2F114C29AEAD88BF9710C072F27637 +:10542000108089118CABE57D47888E27D65085A9E1 +:10543000F93C3185AD385E06347D409537E81A6F0A +:10544000683B2BC184679C5818B43495FF0E024A00 +:1054500031B8C70043942AD73687F191535085A7B6 +:105460003809D19441C65C2C3D3D43DBCD5F20D053 +:105470002DA4604CC45E61E8674D574371914FF5B0 +:105480004B671A9F7B794FCF59A87BCA452CACC577 +:1054900047429B9CF8ACA84524C0B58CF03A08560E +:1054A00055F0325B974BB31994D99A76B36FBEE43B +:1054B000C0F3FBE1A6459F5F6D0F1E3AF99F8D5E1D +:1054C00099777949DF193B78FDDBB67C72B4C74523 +:1054D00082372FA0A9BC4A5538A37729544461CEFE +:1054E000B47C6EEB250430CEB1F7D37B469C5A6476 +:1054F000F95B4A6F3654C1379C4167462039100F1B +:10550000505C0B7F13E82F4AA1FF794ECB87882B85 +:105510008FC6C80D95E4A768CD94514ACABCD50D75 +:10552000AAE886A17B45D9C9461CEE761605660316 +:105530005E6698D3F3CA873352FADF91BE4D072CCB +:1055400061E20061686C3A995F2196064FB5AADD69 +:10555000AFC6A3A133075433C8A860460ED2432B6D +:105560003F0A216032F320A11F7F9EDB806D89906E +:1055700081957A733D61EA99FED0FD6F90E46E6784 +:10558000255A5C57836075CCAA109D03EEC011BBF1 +:105590004C80FE20FD9C42E00ECF9600BEBDE2A7EF +:1055A0004E26D72432B711571D4086E4FE45435995 +:1055B0005341A14B79D3986116BD0EC5B362116CEE +:1055C000894DBC9067DEE3ECB5A8D2BFAA68696CD0 +:1055D0007D14CAEB563E8A1C70C2BFABB456B28370 +:1055E00029425A2C09C1B0733C2BF131E0896FBFBD +:1055F0006EE811B06714CEE9939B0764757FE4D61B +:10560000F7DAFC4E75AE18BC8ABFCB94973901828D +:105610009957993DF03808C5D1F7D846001AE830B7 +:10562000BA42EE353EF4A42CEFFCEAEC7BDA2AF326 +:1056300063B635168FD87D17E7469300282E95ABB5 +:10564000E89115D94E19604C0503337725E74E7163 +:105650009476C3EBC5B99CD90972E247C634D51913 +:10566000ACA39CDEACC7854137BE9CBB3C14A6FDF9 +:105670005FFF1B7AC43E84B400665A052D61BF5C8F +:10568000B6041E1891839F3416D444486A6EC1260E +:10569000CE7BD9633E5D6BCEA2D826C5C98F5F7124 +:1056A0005BD31D08FC0A8D611CCDCA4B5685A382B5 +:1056B000880535B9B90F887F272F12D5E570F3F922 +:1056C000FECD569528C7DC9D4D4BB9D539CE87DA2E +:1056D0001A840C5E2C0D0BA0D5D7BB6E5DD6A8B07E +:1056E000D6B70397974BA3AF2A1CC509B7DD6B7DCF +:1056F000B0F034677C8AD91C7D8FC515E6D2993706 +:10570000BD670B37A12C271071485F151EF91CC40B +:105710005C9C1731A9A3B6BCEF77363DBAEBB71046 +:1057200005939D52799653186D335CDF00BFFA687C +:1057300055220D3E024E5B97B9E4C214E0CF77814B +:105740005C36953747AF317A00367A9C9208EDFA8D +:10575000DCC08A65751FC104C4AAC5873F620463A3 +:105760007D83CA706939EFA4E747F5F17BE2B70F93 +:10577000FE44B79EB356667E1D993EFD56469F0673 +:10578000154A69BC2B2EF2D376E308EF9E784F6E54 +:105790009EDDD7EB1F5A56A1F4302252939A5D1129 +:1057A00032CBDF553332196B53FD500E03DDE75416 +:1057B000D0AAF0853B943D00E2F6645413CE5EC758 +:1057C000FE82384B5298F6D8F3EFCCC7F2576AF8FE +:1057D000EE4E628912C28AC98B9D8C23E30AF7338D +:1057E000F0A6AFB0EE2BC0589BF904388AB94886B2 +:1057F00028A4FA336FB608344C3E53D21FED3D2334 +:10580000497F9E651F04BFFB7295962C77DCE939B2 +:10581000710F92F1FA80188AAE5DD45A654C0D98DA +:10582000860C27EB9EA957BCBBD1117A0E6A2EA31A +:105830000AB50CF869A228BE7398A96DA8FD73017A +:10584000CA00767B1DB19A346EC0039B2213A1A1BE +:10585000A69B65068BB2ED2904819834E2A6AB695C +:10586000E2DBD11A70CDFDEEF1F8F4787BB402E6FC +:10587000799D2B7D5ABB94542006A839CB922EBA21 +:10588000AB5AE06E00E8A160574A2C46E1FA988BCB +:105890007956CDC02C4BCC9DBB48A1472265E1DD9C +:1058A00022411FDCAE9B71D233920B5E01C6ED0C20 +:1058B000BB18EA14D30BFF2420A2BB002948332BCA +:1058C0000DB54392E5CABE49D60CFC40EE9A974A04 +:1058D0006AB6AACA0E461FE8BD6FD224F37C81B80F +:1058E000615C2A52EAFA161ACADC732A6BEE3CD5BE +:1058F0009F34EE382704E1754183FE1188361B7012 +:10590000A7D7B6BC3C29931B7A658A2640AD5125A2 +:10591000E6672CE26CDAA3E2DC2B21306E2757A17C +:105920008853C16EA4308C5D31F851895C2E479844 +:10593000615B98F97C401ED65BD2390143FA7F6DDA +:10594000C200483373799EB810C81E55714BBB53C3 +:10595000DF3AB3371484CFEB67E2767CC1791E3728 +:105960007CF77B20D4DA60FA81EDEFC59D36D5E374 +:10597000336935DFE05CDA319C480C5D86E8046809 +:10598000B8D764CF5E6C50DE7FDD02C453D0CC87C5 +:10599000A6589FE6581A083434089B86EF92521A8C +:1059A000F3353E3145F6C52F205D19353ABAF1A0E1 +:1059B000227DC39D923D4591EF0C8A6E4515CDCD5C +:1059C0007B0C122F6B7E6F97EC859745F1E19A1A4D +:1059D000384890B0DDACE10699BDC65754844FBC41 +:1059E00094EAE22F626246E736555511074BED5EA9 +:1059F000CEA661A5032951D46AB84F04883FF4EEBE +:105A0000CDD492FC22551FD0DCE6A352350600E22D +:105A1000B26B95C43D0EBBA4BA521810806A7BF4D9 +:105A200066A33DBCD2DF9B10D2A8911484AFB8CE40 +:105A30006EAFCAA288B73ECBE12491F57D173DD366 +:105A400075A792112F2FD066D0E8BFCF4A3A995A46 +:105A50004A82D422CAE205610F0122DCF5A45D4826 +:105A6000AE52408F34F06D0A65B2098EFBBB2CEE4E +:105A7000C04B2F0E46E26A8524D6B6C5AEA5300FC0 +:105A8000043156ED1A386037775EBD0097F4EF9E0B +:105A900040D6784F88E576D1FA97AC39ED0629B72C +:105AA000EEB6DB9D9929B0DD5F0A5315A20968CBDC +:105AB000CE9231CC9EFCA0EDDD7C534B61ED5C9829 +:105AC00082FB8BDBA326FCC0F292A425BE0FAA8327 +:105AD00023A1F003DD79107E14993406CF93D73FCC +:105AE000363266480C6C6150A50EF15DEABFDD1AD6 +:105AF000B62988EB99F7603A51D5BCEF6D5DFF6927 +:105B0000FFB33047C5CEC80474C1267C0B23BC8FBD +:105B10009A55378376513A531E1DE7FE4FB1F50271 +:105B20004172B8D97E7BE43763284045294F3F62F4 +:105B300026BCFD828C0E4E30010080602CA8DF0355 +:105B4000E5232B8564F43B8B51E98AEB68EC743FC9 +:105B5000415BC3C1C036435F58015357D908D55E76 +:105B600015197AB186756A879819DCD25A455C3E58 +:105B7000997ACE585D66807263D006759EDFD41127 +:105B8000FCF20014D22778F5A77BD95907325826A2 +:105B9000E8767CA9B6BDE5042E9D0C0D53FB57CCD1 +:105BA0007E64A9226A5A590B0CEFC0F326956C2526 +:105BB0006CA564E585E329F62692EBA5A6BBE46B0C +:105BC0004128414C28597690115B9157598C870197 +:105BD0002CEAB134DAAAFC3000E3EABA892D6CF879 +:105BE000E3E1DBB94AE03F21BBEDD158E752B89B76 +:105BF000FEE6DCF7CF80F40543306A0DF4E2109F37 +:105C000021D31D7FB490064C7B1C4BEE9DBC030042 +:105C100035B6DD9792525C0B990186C9275794C817 +:105C200028371F65606154D115BFFF204992C61DFA +:105C30002773F87DDEAE64196121F39157FAC088AD +:105C400059E0652C40503C19950E271D4FE5F5A4F1 +:105C5000BC52BDDABF9FA970DA7E812C04AF6AA363 +:105C60007E27C3849BBCEFC3E9F41997FADC26E8CE +:105C7000552BA97B5A6C8C5060C2FED1574A9B7C35 +:105C8000ABE819A8F342C725399AAB5C3957882A83 +:105C900002170458D347DF5E730B5332B0EEC114C2 +:105CA000BB6CDB20A5ABAAAF49BAC4528C01E97228 +:105CB000480F765F651E796D0C7A7A3C1252139408 +:105CC000379DC34D76C38FD52E115C2261C633AC90 +:105CD000F20B1AFC3A1F7B484A90FFD3811705BC90 +:105CE00052EA7E4E97FE5F3CE1AF7548099E86CD35 +:105CF000A5DFF3BFD62E5CFD1018EE51296EFD51C5 +:105D0000A1F728537949E313FFCEC8F431C126E542 +:105D1000FC7379B821EB37B5B56EE1EEEB061F7E6B +:105D20008000DE8699586F511CEE92476B47A6148F +:105D30002A9B06015F042A7123D246296D4D17E381 +:105D4000C5F3B04BBBB3E7A0CB46BE0BA47EB58D6D +:105D5000725A2072F823AB69BD246F1D7694B42566 +:105D60007C9530F6BE6A2249F93C8B34B123D3745A +:105D7000AF9B06F9CC55ADD1A758198CDBDDE37389 +:105D8000A08B596186231FC5AB6E641213A5B3D8CF +:105D900037C882AC9DE3D4DB95A17B914803F53FE6 +:105DA000E495E3B40E4C734F735BDADFED18D33038 +:105DB000B08ECA948CF779126E4200B6092AF2812D +:105DC000F4501A034B575E6D3C28DA162F34CE1E62 +:105DD000F3F8A27CA3F5CC00B127501C4C8F0B8D9F +:105DE0003402036996E18BEBEEBB3EF4C9AF4A98EF +:105DF0003EB0FE05B3330EEAD48C966ECA263292BC +:105E0000BDF7831EB274E00011363EE9C1F3805E37 +:105E10008FCB484A235185517F8DA3166253557409 +:105E2000038A8E0949562925C51CA19874180C505F +:105E3000BF551C8C1E99CE99934C9B6BFB727DCAEF +:105E4000B064F577CD20D392E73C5265079953E7CC +:105E5000C3CE8057CACDCE0476729B911348C9CC6D +:105E600013C19B53AAA0E3C1A8462992121A57A8AE +:105E7000B9C2C530B3632DF9611488CF9F52552440 +:105E8000871416379818F52E0E17BB0734368BF289 +:105E9000DB0939F3D7D1DCF7E3263ECC84A37F427C +:105EA0007818FDBC10B30DA927FFDB8664BB2E5FFD +:105EB0005C93BD286BA07E5E3B481E6C9D52FB44EC +:105EC000C0B5598CCAA5E23865A75BCC991D6EAFE9 +:105ED000A54F02B6EC5EA1C33A9C33734BEB612D28 +:105EE000529290EEB7D9B2F1AA8E0E2AA93942F693 +:105EF00092E8F365B713ADE1EFAF5BCBD9272B6B1E +:105F0000114666DB32C14EA67F5306EDF70A879F26 +:105F1000C1B8F2CE4E8E37531B63CF05C455E8B8D7 +:105F2000F130BB67CBD2B79AFFA9EE4F06CCF3375F +:105F30005405A239D0258EA4E8A05AB00CBEE025A5 +:105F40003E09D93F7031F6EDC6BCC4F1A938D84B33 +:105F5000E3846AF362A5A5100EF0A0C32E5BA4EB48 +:105F6000E948386A439F8D9B341FE4ECC6E89312DE +:105F70002F6467E33DD3E0E54C251A7DBC3E88CA1B +:105F800048C02A43A1CF95C63AB2F3F18D1A8A13BD +:105F9000A094A19EDF88068132D5AAC855BF778A12 +:105FA00017E90501733E2E4ECADF9BB3E0F56F9FE4 +:105FB0006E3A1AB3689E00356D301D517CB31EA930 +:105FC00058CEFFB47A2DF3FBC3C583CC227BAF9DA3 +:105FD000A824527DF31BF0BBE69FF1888B6A6D8786 +:105FE0009D67D96F8C86590F95A9D3854374FB7D26 +:105FF00045B3C807DA1B152B3E6B664BA80A80F326 +:10600000A57323AABF6C4581DD292271630C8347E8 +:10601000702E0B88ACE019F095B33BEA5EB007EF49 +:10602000F2B5F3EA44D125C0BD013B8FDB6E18E029 +:10603000664B37FF2E4128D996CEE827F7F326FD89 +:10604000648CDDD66BE65745A87C5AB3E148380E20 +:106050000BCD2872FD498DED3EF41B6C4EC139EF1E +:106060009FD4C44B14A65D1716594D6891E399C48B +:106070003969F038DBB0B7603AFC9560FCCC086059 +:106080008D1567491FEFE7B97CA11266E3D81B574E +:10609000819A55744DF5A409BBE207F02508E41474 +:1060A000A5B5A6E2CB7ED640F27970EF19B78AE6A5 +:1060B0000E0BA514C28A64985C841E0ADC8B03C490 +:1060C00015B8A940851B9A39F97C061E0A699C2CD3 +:1060D000CDE2E1C027AF0D4F3783AD828400E404E9 +:1060E00068F7FCD284CEC543D10C3662FD15956E9F +:1060F0005D08746D039329B740D7E265483041CC01 +:106100006D70F3EBBA611D6F136EB7001588013423 +:10611000C0EE1A37BCFD1EB9D71C805674732441DB +:1061200024EC5F048CAE54231AF7E274F5C46A3889 +:10613000890C9BEE57CC9CB14F98DA55C3606E70BA +:10614000FAA51BBB8C007DA671A013958E21182388 +:10615000242FAE068A3B565B91A0970A4847C21D82 +:106160006A243D6B43F120F57222F30956D17C710C +:10617000B9CA284023482259506C0216E9F1AC9361 +:106180001CFDA357C231B2A61CCF51A8F9E9FF1ECE +:106190002EF4EAED2D9046C3AA1EF531D265556363 +:1061A0000AFA19CFD65CBF417916805CFF00069EC3 +:1061B000CA08A8786B2128F5E24DF94706C6492898 +:1061C0004D417775618B4E36B48639E0A91D493E45 +:1061D000653E2BAEDE6F9C266C6260335473235D8C +:1061E000C0275145AED6C10B32A14AD848612A9288 +:1061F00071174C3438DB1A70AD1CFDE0B920E46631 +:106200006DB966DCD59BAF4CDE9CD9EEA0A385CDE5 +:10621000B6FF522E4F4EC96DD8AB3EBD825966BEF9 +:1062200084E4B8B0D536C9EA398F1DCF6B0ED7F8E4 +:10623000458173BE42436592DA3B793509A327E471 +:10624000F69F7AE89290F1D90DF18D5A0CDE05DCBB +:10625000E07D0ADFA5FEF860A4FC499C5289117616 +:106260009AF61F838A659C97BC16654200FD0C4B0D +:106270000017CED465442B83FFE50AF75C39C04B89 +:10628000CECE1FD9C9933D6FBCADEFF778949DB7C3 +:10629000811E9F13157C5255033D37ECAA6DA51F37 +:1062A00087D75E2EC5566A4A4522AA416B21DA2558 +:1062B0006B3A21D5061DD35390866E7A55865C497C +:1062C000677FC89F708C703502E5878A31B890A3CC +:1062D000FB6A9F51506CD60DB77FE92D80B691E2D5 +:1062E000A9E49473DF2CA027DD535619FEDE844504 +:1062F0009172E8DE0726B00BBEBCCC894A55C55169 +:10630000FD188E8D6D3FAFE7850D8EFA6EFC85EB27 +:106310006470E3788EF1C1D12B9E129508415D5CCB +:10632000BA74E54546F4E88B5809595F43C94413EC +:1063300078D25537B088441638CC83A1A60C5C744B +:10634000ABCA19375E90150C594ACFD83E0821893F +:10635000281C1A93417875C8FB234A773E5D8B2C25 +:1063600079510D83142F961A4C68C4F0E5B73AC8DA +:106370003015EE415D2CE7205A6E7FD0D4CF0671E8 +:106380005606B63623AA79C5617D18B559FC47DE95 +:1063900048C89E4766BF44C7FBE1D5F6D2452ADD13 +:1063A0007F37750A4851316AD0E01120FAA30F51A6 +:1063B000CF419A3869A70647F211AA8A90EAB3A496 +:1063C00020771FD805FD50707A180BE7CB13B478EF +:1063D0001C68C14EAC5920016FBF6CFFFD8F86CB8E +:1063E000F9FFA747575ED465FEB74F9C7B7F910CA2 +:1063F000DA5554D1AC065E0D9640CB4D3F4641FA7E +:1064000001F57FFD7BE2164CDF8FE0E2765BDC8AF4 +:10641000748F4BAF4DF51564050A0BF4F1397758BD +:106420006EC5F87AB4CF398521C3A40234C3C0EC59 +:10643000C0FB1F7ABF5AE5A5FAA306B83F26F2EEC5 +:10644000128E8A7B32DB6FCB79B97B3B68A4DEBBD3 +:106450007F3E6500E65A0E0C276829FD3582997B40 +:106460005C3F2AC2B049CBE578413542D779A36C6D +:10647000E9B2FE3BB0B43CD5737685A0B341C1030D +:106480007259DCE2E5953B95A8EEA464AF7818C498 +:106490002B81C9E61A9F6A75688D85C1828436474B +:1064A000C3DE4DBEDA1AC27B5D029D6802910617FB +:1064B000B91E0BCFF901486CF0B3ED23F67B380F12 +:1064C000E086E30F20525278C5C076D117C12DFC6B +:1064D0006D77EC9223887D6ADB4CD6703B9F8B9E58 +:1064E00013789E1067E63669E3AD4859CE3801C48B +:1064F0003FF994181136328CA679C7D2D346767FED +:10650000F24964C6C3C053D4E41991AC2BEEF839F8 +:10651000643637BB12C82B3FB477A86D54960A5225 +:10652000ACC619567E2ACFF9714AD54946AFF3FC5D +:1065300088E28E10B7239DD92D97436FA98F3BE238 +:10654000F5E609AFA074546E59FF7DC9B617A3BF15 +:106550002D8EC974F3ED6581E6DA5A2A94F520612F +:10656000A4547543A5862577F6046608B5820F8185 +:10657000CED9ED8496F079238AC9FB4700A51AFF8E +:106580004F9F74114172B640140E3F1951053BB92B +:106590008230EBBE18A5B12BA4EF854EA73A86E258 +:1065A000EFD2C12104853950BC3ED67D69586CB309 +:1065B0006B38B7792B9269A59F5C0BE2660983D88B +:1065C000A233F9B94379FAF6F0DDBD84BD7762955F +:1065D00064E550BC178A3C7A8B9D87158FED5F422E +:1065E000207666705713023C2A29852CDAA2F46DB6 +:1065F00007EDA32488C0E7188C2A1CB2AB0B6752A6 +:10660000B28E73161615951B3BEFC036E684B13C6F +:10661000E11DAD8EA43A955BD5927A9FA4B4198AF8 +:10662000E812F6F6D6C11002D84340DA2CC9B0679A +:10663000C856A7BDBDB95CCA96B7A3F26D025C256A +:1066400017DEEF4EF32F95FBEC8C111F1E4711E167 +:1066500064AF1A7D0130AF6C01CA0109DD4DED2731 +:106660006FEA925ECB180FDA4DF3A25FF88DB5C3D7 +:1066700062E348E7E86F502D8793474580DAFE953F +:10668000316F2DD5BD68F7F1728B42F1E174CFC245 +:106690009A5698F5F78692A722D6C83B8ADE3BF633 +:1066A00097D38FAA4A96EF6935B031257FACF613A0 +:1066B0000249EC2C5ED1528EEEA34392956889CEAE +:1066C0008C8D093BA1D0D57751F28ABEEF1E06F61C +:1066D000FFFC5E3AA7B1EB6D916D4548E4AC66E016 +:1066E000A77486075F4F6A3D1427D9474900ABB4AA +:1066F000754FD1D8F9E379B21C88020D19A8981604 +:10670000FA740378E1DEEDC6DB8A549C59F9764BC6 +:1067100091C0EBC8B31D97B9C052FB83AF922B83D6 +:10672000B8318105A0166C886D97EE7E62B84C5723 +:106730004CFF4AE669709A66CE2C12AAB00BCA4783 +:10674000BAB48C0BA8064C8771A00637441380A3FB +:1067500008CA57D315FEB0263E7ED0898315E2982D +:10676000E593EDCEB98F8DFDB661D80B93BDABC768 +:106770008503ADF3CBB236EF259F94CF731BA1A950 +:10678000B70D9C76E86C188DFD33BC287C01DFDAF0 +:10679000AF6FE94EF7DD569EF745CA96CEEB5FE444 +:1067A000B3C6D5D7F1DC74EFF1045C121F496780E2 +:1067B00087CD9308BB285315D5EB56A33D9A137D7F +:1067C000530D00F6723E824C3155E8DE516E174A89 +:1067D000E48893480859D47B7FF8B36A875F83774E +:1067E00053E2C658B2B905454F68D37F9970EF5B45 +:1067F000CD0686AA1D5580A7209C78F55E55100C05 +:106800002FB2D8D48CA9BFCD6C6574EEDCA35C1913 +:106810003B360F6772AF29A18B29EE8EA64EEA2078 +:106820007C9E9F8FE05FE24B8A3CDFB6078D099C20 +:10683000A47ECCAB85BE667F667B0C61B225C4E4CA +:10684000EEE702B76F84328FA925FA539C6127AB1C +:106850005F867670A3C30B3E82B97D97B0620679DE +:106860009876D2FF2308279C073066B8328AAAB6EA +:106870001D1BB704967F792C8326EE772774183773 +:10688000B36D76931D5E5B9ADA08880B4409395C18 +:106890007AFDC7F9E896B6F48A63114FFB61DF31E0 +:1068A0003BEBB19027B5B8CD018C396677F6569899 +:1068B000DEC6656126AE6351B08A435F5180D1D692 +:1068C000B00DCFC7BD0236C06A170AFC915CA87D27 +:1068D00061555961DD44C965983BCB251E1D5F6A32 +:1068E0007C68CA46657B16393D4CCD9CF77B63ECD2 +:1068F000589F9F592E771920CDAC80A4DF139ED3CB +:106900003E74745E5A01AB6BA47CBD4465B49DD5E6 +:1069100097058204AAD3C1C238CE33DE01523C5C53 +:10692000E660A0CE7E3BBC24DB84961A8CD1FC7F33 +:1069300041226CF3535FB95D1D4FF4B132D7C74CA0 +:106940003E511DB6B5060E3FE12F27AF32135BDE79 +:10695000BB462AA52C2712A9EC38C9E1BD4FF33458 +:106960003A3DCCC828115634E3B4EC8BCF2788AF1E +:10697000E79B38EBB483F5CA34508A4527FDD1AB89 +:10698000E8FF9151E2E2689036F3FC392E6D068003 +:1069900033A9D06E8435EC79116EA2CB94CC159DC1 +:1069A000440D77ED546E9245656FE1A6F16BA19BA6 +:1069B00089DDADC8E0052185A11B02B178BDD5D028 +:1069C0003276440B254D1B1D5EAFAF36EF3980A1EB +:1069D0007B608D011C86044E3443E3FBDE8CB8D112 +:1069E00034E301D61F1CFD62FD0DBB3C000FAF64FC +:1069F0002D908C5103E895C7ED52E09B95E64F4BE7 +:106A0000435B8B9F2EC07B5339BF3EF225A0FB5AC0 +:106A1000A587164EB2E8B3CAC18AE2772487C64E6C +:106A20005675A747A0B44747DA907D0460BD09F3C7 +:106A300056F3FD42B43CD059054BE4918AC172AF84 +:106A40002237CAFB98AF6715EED8BA8AED4506FF24 +:106A5000A316D16581522F141F3933F65923DA5A00 +:106A6000E4F0806A894F207F33B3E399BCC6CCEA57 +:106A70004780659F13C3568D719D726DA33DEB2FAB +:106A8000D0127D387A780A28263503CD8FFDDE9125 +:106A9000519603F8D3E056FAB28438DC8CDE8C6C65 +:106AA0002F07DA96924ABF8A9BABA670FF92D16BF2 +:106AB0001620EA4DC8581ADEC90DDD60400C881654 +:106AC000FE0E9A9015BBE7CDC164590A0448E854FC +:106AD000609F18ACA813CB1039B1ECAA2DCC495744 +:106AE00085E03E12A61DE3A3C26CB0D16227CD5152 +:106AF0004F45EAADC2D9AD9593F82EADA0B685321B +:106B0000F659D9BBEA7C22A852BC7D3E1A46EC322B +:106B1000E26196D2C1E54A273DFA8FD6B8E66DB05C +:106B200066368AE2581DB1F35B0B2610029005957C +:106B3000F951047D1B6B36706149A9A74741DC20E0 +:106B4000E73C34C29DFB34DA969E9E85F480D309DF +:106B50007428B9054BC457881EE17115B098397770 +:106B600039DDECE396FB4FFC1315EAA276F23DC843 +:106B7000799AC909BA993567299B3343995BE47BB4 +:106B8000B698B328896A2EB874F1600D658E2B22F1 +:106B900052458DE5A68665FB0CC9B7C6FA1B342A9B +:106BA0001B29453F625066AC7AE243B7721D2BFB4E +:106BB0003EBB99780999811EF45775A16CB6B856F9 +:106BC00094895BF0815764DF169BD52AE6AC1F9A47 +:106BD0003A8D81963983AADFCD6287274901BFC8E4 +:106BE000F10090BDCCC3BB78FECD2813B14ADCA622 +:106BF000562D58728027551695E7A95173825588EE +:106C00007C5DD3CEAACF983A8B8374D7A2C13D1EA8 +:106C1000BF283EEC7EEB145FFF5594C6F0B0B81B66 +:106C200071DAA700EFB57ACDBE7A7674B79C4D9332 +:106C30002122B2736B0EDA836A93C3594A5AE75919 +:106C4000357E43B7013CDDD18072051CA28533E05F +:106C5000E9AF19B2092E30DA3237E2B437A552C2A1 +:106C6000800AE47DAA89E4EB1553B3E9F7415C8D12 +:106C7000CC7B5931051995960CB5253A12BCF31405 +:106C800075B27BE3CA5A4B0DE1D1476C7C2FD6C35A +:106C9000BD1F4BBD110801A7FEE8E20DA0D18D027A +:106CA00012DBB8EAACE13006FDAE43A2B9A945DC7F +:106CB000191C7945C7B2886AFAF33B4BF69770B254 +:106CC0001FF7A1D36F60F787D74E2F2C7745DBC90D +:106CD0001ECC02232D562B599E69087AF816199757 +:106CE00086786111C53AD0307996FDE8C717BFFBA9 +:106CF0003DDEACC40D32F7EA5A16547EF1877A466F +:106D00005B61433D16A6CF051C4E2A2D8A00D02F6D +:106D1000DB375F180F0CCC55BEBA401C90504D9E0F +:106D200098DD9923EF0D21775391D811CD3656E98F +:106D3000EC9DE36A0D6B354366CE04319CC4DF2FB6 +:106D4000E76B7D493CA97D67719197569720D4B038 +:106D50005497F285FD6BEA7C3D5D68614BF3E13B46 +:106D600028A1903B84ADEA1AF39D13D325676C0BE1 +:106D700091B069152960410E76A3090A4CA207B3A8 +:106D800039AE0412F4D6EBD6DBE1370E5A41888DCA +:106D9000A7B8D163D313CE018D2C1675547DDFBFF8 +:106DA000C04895D6092AA8219E3343EF4FCADE7406 +:106DB0003C85983E3DF7FA2C201C3F3D4A7B7E2ABD +:106DC000F2CE9091A2760BB0AB28C2F3580BBEF96D +:106DD000E26CE25199925BF5E6E93145723859BBB4 +:106DE000423BBFBAE56BD7236DA578591779DBE431 +:106DF000B78DA91C6D8C1C3EC87050E3FE38A5FAF7 +:106E00004D3611713FE2FBECF75B528884047DD272 +:106E1000E9001B7CEA669FFEC83B882648AF0466F3 +:106E20009C672946AA726B2E651460816B51AD91E7 +:106E300078F413B8E916A483829067F0C2EF149A2D +:106E40008A3AEE6C753B954BCC91BE556653B85B58 +:106E5000CEDE30C42193EDB57EBF12FD2F269822E1 +:106E6000BA0EF7E699CAA5247F08094F5B69AFB54A +:106E7000398289B2DD0188F14C821F35908EEE8116 +:106E80002DDC7E868058411ED13B8775CB55355B06 +:106E9000EC46233344AFE40983F57147453DE7D41D +:106EA0000159BCE1B0BD63474E05D404DF504677BD +:106EB0009CAF496F5AA8F6E8368B62A9E0443712B6 +:106EC0009CC648EBA970972B803730BBCDD7663670 +:106ED000F0222691968B43A99BF0B74D05748CB296 +:106EE00015AC470D1B24650FA655E0C52EF862971B +:106EF00096EDA637D6ADA52B303F5681DB819403A6 +:106F000062287F61DD43BD06E6484A3C43E48B9638 +:106F1000229CC369C22D3D303A50841894FE91C022 +:106F2000663ECBE6EE37FB5DB3E31B0ED4BAD6DA92 +:106F30008621EE3C66F3C16A5404F70BB3AF6ECA08 +:106F4000EA6800D5A4047F9DE594FC2EC35E377DDE +:106F500049D711F39D8A522163D3A1D11F66FDE465 +:106F6000BC7DE1E79A9B1B33FF7324D379B2E377AF +:106F7000A9DA7D03F9CAA58AAF47F90214C0B5DDC5 +:106F8000E432327F6B8F014C0A52183BD27B0DC129 +:106F9000BB8B4B093E1D778F47FF86AB4788461852 +:106FA000066B925085DE11F9BBEC17A14521588E76 +:106FB000E2C1D99281003BDB09B507F8FA6BC3AF98 +:106FC000800CF1A6BE6A2D5505F63CDBF1B5A82371 +:106FD00040ED9ABEE3D928456F5065362DCCA27D91 +:106FE00022A84395F27789C81275112562BADB6928 +:106FF0005CEC638B9D3C633C1AF8FF41BE49A82EB4 +:10700000DD867B18DEC46B51AB35C08E8A36202FEF +:1070100089214A433BA770B5289A15121946D6DD37 +:1070200017F346DF9C037A7CA37FF822BE19004247 +:107030006714491454172083D1FFBF38B8C2D390C6 +:10704000D6EEE054274723AE0ED6AE10C47463D0FC +:10705000E135E0E298CBF2A3B083DD5C6F9A99272B +:10706000DA0E1FF9401074407B487A10C5AC433CDF +:107070006D3B9544288D1C0DE4FB7ABD47F4B2B3FB +:10708000F683E944E7FC23F4C684F8B1912A61C889 +:1070900050D0F27C7B011DEAACC713335971F6FD69 +:1070A000B8B8C55ADFCE92027657CE275A68529D9D +:1070B0004F281CF71DC10A23F71EAB7C56B736B705 +:1070C000A34E6D3E64887F21EB47033DEB996E5BD9 +:1070D000EBC392996BB5E5ABC1C5E5F51831E58019 +:1070E0000EC023D52271761973D7027BEAA36A24D6 +:1070F0009914723CC64BD8E838615AEE7F26F1C528 +:10710000D246A8423B1D8D1A42AD4F7F54AA435A26 +:10711000A79EA80AFFC0E7F06A9EBFC3A43E985985 +:1071200052107CE5B11B0D62C20AD5869C6B1D9185 +:10713000CB9509B3A49EA01A295DE5CEE7E1347B87 +:10714000D207FF5708B28EB237D9025A8B65C47086 +:107150008A9A964A185369AECDFD39F363739A3E05 +:107160007E1408F310B4C544A66438AD57E8E51E94 +:107170009919EC58CE976985816093EE13D59E7D61 +:10718000D7E2C22B04E859C51DD43F2F4A7F0865BA +:10719000D010145061B592C100EB0C488AA2257B37 +:1071A00071C8995903C76C70B78B882873025C81CA +:1071B000C3B31A6C754817B200365EE9C673AE8E5B +:1071C0005146B816D2FF34FE47D4E2AE6D98D9D3FB +:1071D0000166831A2C669C44DFFE78AEC614C40D8B +:1071E0008FBDD8D1145030C90B873B0D31373EDDF0 +:1071F00008A6D60C82307BD9FEE455C2852F282FF5 +:107200006FCD0209CBE6F3ECBE6899882EA1876AA0 +:10721000504F28F8072263A4B750E7058AD2CBE77E +:10722000E8756E2DC8033DA766A437C279FF0AFC36 +:10723000A0A76E2A94C9F769EA08B528BC85909D75 +:107240001CA1ADBA20BAEB7A868CAC03B42A8AAC06 +:10725000AD3B2158D41C2DA5287BDB18927FA5AC13 +:1072600033F6A215D90F65D7C8EF007E105EE83659 +:10727000E6A681EFBD9595045EAC055C9DD93371A2 +:1072800044161FB5FB0760EB6093E7640D954D2F27 +:10729000DDA00C826AD03613F75C30D30192F6E899 +:1072A000262B984FB360E5EDC5C66CBB26783FEB47 +:1072B000D11A7F8607A58F10BCDC2FED808CBF6BA9 +:1072C0004D39D63E012F1B138F3F36B927D3237775 +:1072D000E9725A06AFB6E6156140F116FC74FE6617 +:1072E00019CBA376A3478B09F96ED10C71EE0DD2A1 +:1072F000417F8E8E1AD39164360EB3B0B068C2A2AD +:107300002B1F5EC6809639AE637115EDE3A8FDC1F3 +:1073100007575C9D86E679A46DACED5E82166F0121 +:107320002C4A8B67BC3E440F3E5DBCA60075ABEAA1 +:107330003341708BCE1BF35D9A09428FA18F403C85 +:10734000106A182C1CDCD1489AF032D1A9F9A3316B +:10735000C87D6754EEE2FE0358930E781E553B2716 +:107360005A73C5A46E4E358DAEE3D688A4A49D3E57 +:107370008CC34240B06157BDD4DDFDDD6D24DB55CB +:10738000E9D54AE35D9128F7BE04D7002B7448780D +:10739000AB6E89C8FC048570D8C82AA86B294D1D1E +:1073A0002008F845FA503F1848BE59306D8B973D7C +:1073B0008CC84080612CE0A728248A53F7CB85AD88 +:1073C000F9C8A49AF0828D6ED46C51096056901D54 +:1073D000D3F9821A74972A223A8F734D4B4CFA2FA5 +:1073E00027ADDDC6F4C519F4F009A1484175CC6795 +:1073F000AA3788191CCA3BBBCFC0496B2B5943D253 +:10740000DD15E1E39567A4C597B8F6C8E6FAE7F19C +:10741000670425EE3801EC771B02B0B3D82D4091FC +:10742000C4AC295B3D91C1F9F3F70003EA4F1E1686 +:10743000BF8B0A25806C419C053616D52A8966BD0E +:107440008BAAA1B3D80C923C913E177785E286B403 +:10745000EF7A4DE20CFD2DE272EB8964963938E744 +:10746000443FCD6218DC054D9968F096583CBF85C5 +:107470004151663274E74609A34DB1CF2068CD353E +:1074800052778907E989BECF1F264DBCD333A09E12 +:1074900090158CDAC5F47CC335A87C584CCC6D4D66 +:1074A0009C9E702D8D4E6EAA50D36414218CEA2CB4 +:1074B00060A2EDB3B21A705245E5ED14CA7822739A +:1074C000F184DF53DFB282B33D0023F1E6A8809F51 +:1074D0003DDE726AFFA2CFE49567A4D7B27E2D2C61 +:1074E000AA337485140F6B873BCEC9620611D13C59 +:1074F00070E8A4021BD92F34BC70808A9DCD627ABB +:1075000095013F278463418C1DD969211D37359230 +:107510006453429C630E905B9F9106A7C5679DBD17 +:1075200048572091F624AD899CF4C43B37C5A3CCC1 +:10753000EA92D4051F69BBA7154287383EF3852B15 +:1075400085D8EBC8B37D46F5AA460914CCA111B87D +:1075500055EB333B7310B81907ECFD2EAC611DA23F +:107560001AF2E0CA31751D439FB487876D7F64842A +:107570007965A0D3C2C0F79B485541D8774D477471 +:10758000B7A079ADE5587BA3462A258485871FEBF4 +:10759000D2A2A3686282CEDC9681A6CB959DCD78DF +:1075A000B2131EBE556F057A1A6983D1384B78E342 +:1075B00062935AE3FA786679088B92BC84D02E2ABB +:1075C000CFF50537A1D52224259D54A5B13D3BDA41 +:1075D00089EAC11BC4C53A9682F98D4C0ED40F8C32 +:1075E000E98467641AA40720CA2B2B03A4B89F86DA +:1075F00081F70C4DBF649E72FD4B093129EF731664 +:10760000D4AE9CAE4143311BC7E4A2695C84EF62F7 +:1076100055F52EC62AFD9ACC28FD05229AF44B8EEC +:10762000C449B68935BD077849E85712AA6DF748AD +:10763000CF3C9CE8E3BA3F5F8E7D3E694D6BFC3CDE +:10764000517CBE2E2CD3B409D72E026F62ACE21D42 +:10765000F287FFE241D2962123237C19C7B488D553 +:107660009F74EE3ABCDB9619F3DD63A0E470075A11 +:1076700094BCAEE56AD9666BC583696402B60D4EEB +:107680003E0EC44F35014EB68DCBF646CC2AE4BE35 +:107690007A7FF1793BDEA527BD538099B8E36E1D53 +:1076A0002D6524C1DB74435BFE8D6D0C478F059FF8 +:1076B000FD922FE6073D00569F7F636DB38639E349 +:1076C0009FFF54D7007A9999D39B388D4FF4DFDA16 +:1076D0003ECBC1E1EDC99A1E04190B11A99850695E +:1076E000E5DB379E31495806F5615DFCF580DD30FC +:1076F0007C96BF5AD81BACF8FF9367C6E62086F885 +:10770000CDD0BD01BCE0EA33AB0E82D260C52724E8 +:10771000C222D2C9FD5D99DE61D60281001866DD04 +:107720001943A90722A28CDEE008F1CBB6B62046A9 +:10773000E7F22A2D9DC4993F25603B456F23E23F28 +:10774000A1A4A3FBFB2AC63E6C001637C435125E0B +:10775000AF3D5EB528488FD29729A41F5831B73E58 +:10776000903214ECBE8376D474645DDF56ADAD9078 +:107770007ECE5544B26E82BB7D092F21CD0C7ACFCF +:107780008E814111992025A99C224870A016076678 +:10779000657295C24034C335A1C6F4FB8F9900874A +:1077A000006174ECE95448E1A37CD32B498CDF10D1 +:1077B00092D003A1A653E213705175979C87391597 +:1077C000CE890C0C255ECA613C3286FB6D0172E7E6 +:1077D0000BE7B408925F9E6E0849EFAE4B1B210881 +:1077E000A60A0687E71EFD86CB6B568C83A812BFC0 +:1077F000C555A6A1FCE9F54FA3BB748C3BA1C0976E +:10780000CABA0AF144F47DD03467CA32D78135AAA6 +:10781000BDE670A0FAD1199DD3F859E4B38B9D94BD +:107820009E2D649400291BD328B7D7F24C357BB426 +:107830008DACD580FFDC0A531C0B732F8B65289C05 +:1078400047F99B07EAB74FD20503FF0D0E00883CAE +:1078500057A40B277F44CA5A37D5DF9F6406976524 +:107860006D47A21F1F864944791D0849661A96A0D4 +:10787000D088F938BEB3153D1079D30C0ABDED7927 +:107880004CF6123AB41F23FEB63EA5532D7625764C +:107890008043BDD4ADFC7076B171B37FB0D525EA1D +:1078A000FD1919EF6FCE6001D6087FD6F8DB6B2487 +:1078B0005F5F1CF757D9745F55E3AF9FBDA22320CC +:1078C000DD98E9AF5466231A1D6556A333794C6FD2 +:1078D000EF7349412A9BEC4696228ED36090959592 +:1078E000489E62F839043B2764C15469BF12420CB8 +:1078F000BE9F54B9F7AA4140C052F2D24032CE32B4 +:10790000FF66D6811D934D748BB6E7D46D6052D15E +:10791000104007376A843CD7FC96515DB20AB165C6 +:107920008D13AB7EC2092E59CED7371D872BF12779 +:107930007B525859E80E896F1CBA94C305C731377A +:10794000B9F526C42EF246A8E56FD8B9E1F1550481 +:10795000FD34ECBA9845C228897454E31F397392F8 +:10796000511DDAC3EF64D89CE0B0E1175FD10BE999 +:10797000615DE14DC4A3037710D2F6B877DE5701FD +:1079800018F3A029F09863662FC38D1D50AD32E225 +:1079900017ACDCEB025EF7713121EC91751CC02154 +:1079A0008C41ECE208ED4176B1F5EF5D84B1EA0A75 +:1079B00045853986DD34E186BEA44014CBB0FCF1A8 +:1079C000D57254F540EFEC711059EEA02C64F157CC +:1079D00086F396474488251DCB5773DFEFBDB4FC73 +:1079E0007DEA2C2C0EB834398F5EAF4B4EF31A7BE8 +:1079F0008DAE2F39426BA963D90DF53B020C071BE5 +:107A0000CC5B56A5E971310490F6E9FB7049A54CB1 +:107A1000D1E8A655EAC31860DD60960FDD944FEFFC +:107A20007B09E6F02003DE5F506C9ECB0F93484C41 +:107A30009DEBF43397C6DFD52454546460E7A5E882 +:107A40006C24A3BC743D2E7494F2DD1E2AE50F1243 +:107A5000EB0AABF6EE81C5C2310228F79B1DBDF0E3 +:107A60005DAB5FAB2BD6FE9BBFF4867E8FDCA0B6F2 +:107A7000319F51578AC73D4957D6996BE417452C1A +:107A8000D21FFC0D4140EE341C0735F627E5499A1C +:107A900099DC904F5A879D2DE8394E52AFA2269619 +:107AA000491890078E9260D5DC79174A2BAF119A4E +:107AB0004B4A4AFAD8BBFFDA1FBADB83C1FC7B888A +:107AC0000CC35AEBAC7C5CC15163C66F4422ECEE34 +:107AD000F5CBE671DA88E18574D988EA83C0D0599C +:107AE000E4482BDA62564B26F0121A4DAD3E6A3A44 +:107AF000AFFBC268C147A8A20C6F70DE0DF690B94B +:107B00000FA2B66DCD73A46AECADFA0AA220383686 +:107B1000601F9FCDA6260C0ABC4FDE3D67E94D498C +:107B20002D86C0E25F3369E150134EE349FC58777C +:107B300062D968DEE80A193BBD5424F25607A4E175 +:107B4000DB48A126AE6B9400223E9F362D446FD1B8 +:107B5000D9D8B2857DEBCAF400C536DB1EAE03F57D +:107B6000CBDA52973C1C3C8931843A779379B2D373 +:107B7000110181644172157DE369BE384D33274D93 +:107B800006D3C1F3227D1B319C34FF3077921789D5 +:107B9000A8525A99E4A6B57AE17576E1022B0BE377 +:107BA000DB16C795ABA05BF665E30C6F185A97EE32 +:107BB000B0D2D9F478120C13E78DAF4368750BE59A +:107BC00028C03C7337F1326EC2CD0EB1B632ABF67F +:107BD00050CC8CB200726E2D1A0ABD2AE934B14D18 +:107BE00058C84F6130559079D69CA8F8BA4DC56FEA +:107BF0003605AE2E5A8C292989E3495F9F22824D92 +:107C0000BE08CA3D86D47DF76B1B834D0D489F3758 +:107C10002AF1C84D66F59DD14A474462A4BEF96E6B +:107C20000D526001826BB32350E0652D615C4F6B98 +:107C3000BFF0D6B7A9E5C4A14603C8A84A87EE0F8E +:107C400000FCE94FBCC40E444F8666D3DE9981CF59 +:107C50000B4DECFE4014673CE230B15429AA162EBD +:107C6000D829E789918FFF51C5757EF22C42DD2717 +:107C7000B837189263C6B54DA15E07499879BF46DB +:107C80005196EB67EA20376BF07CC497062A895E31 +:107C9000CB1BDF80E1E023CF1892140E4DF4C7AA6E +:107CA000A35AB398514B6CDC48C84E22E7DB38F935 +:107CB00082A537059017E25A46D6FE7DC58E8BCA3F +:107CC000C8CF6E8E2FAB918DDD4AD0BE6F16CFE739 +:107CD000F06FE5CBFAF9F4628E904DC7E0C540DC59 +:107CE000B5FD1FF616BF50AC1E99A5EFD2111B347F +:107CF0009B4B29E1618154728FCCBE285AC29E22CF +:107D0000D7D7F9D5DA73030AA6BC78D59148BEA4B3 +:107D10000F40A85E3F5D7AA43D44846E766C2C13C0 +:107D2000793B466F5EF8E25C7C0AECE6A91BE01347 +:107D3000EF81E9050DA172EE14BD0A73894CBE8A6C +:107D40001B2420DE1983EA612546EE5ADC3FD53735 +:107D5000A5C4C496A6A6EF31E70461666421882D08 +:107D60009789F5EF1606CC580B84E7A391A8B41EAB +:107D7000F3ED17A9D654C2B335DEF7BDCC1DDEAC8A +:107D800060AC42C851A69800A2180DE71EC4D83BAB +:107D9000C2A2632738110BEA6A734DBFA8E485B409 +:107DA000B18693F30CAB612F71772A872C6DF503A5 +:107DB00030381064EB0A4315F0B453F49CFFFE977F +:107DC0006C70330FE5D31861F330FD531004B4CD5C +:107DD0005881FD2A1FCBEBF29C70E4B582D8011FBD +:107DE00097D11FE491D7B9F0BF8AB52ECFACFEBFB3 +:107DF000262941846EEA46166B8EBBF91F146DE28C +:107E00007E74CCA43FAF27DE4E57E56C2BC671B015 +:107E1000CB43E9AC7F0902CD9508683B4C0B56D2A9 +:107E20007C00DBCFB9596C9368D6537336EBAC93B7 +:107E3000E862AAFA32AF82353EAF807F8C85BBD82C +:107E40003E5FAC32D66ABD77FEAEC7C01EDA913255 +:107E50001179E0D011A7262D231B760B20B4D384F3 +:107E60004887AF2360A7A3BD4F918BC575FAAF7B41 +:107E7000CB99E1E422A5DE4A53E823F3E1A69AE197 +:107E8000D3E2C8656729E50161BD4F87FAE96C094E +:107E9000E3BFE1FE26AA9B6FCC09E0BD8E0260E83D +:107EA0006E4105769829A1905EDC5D94453E7E6B1F +:107EB000968544E283A70B1CBC0602BAF1F8BD30DC +:107EC000DABFA170EAE569F4D66642535B63DE8FE0 +:107ED000D1AA4D2615BD71C00098826DD6B6CC24AE +:107EE000D2338332BD509B6919D7137CA56000C182 +:107EF00042316D87CF9AAA57CFBD3C4F85170A19DB +:107F0000498A93F69464DB33FE78923F827C235453 +:107F1000FAA455467358BEA559E49583F4DFA57EAF +:107F2000356A6EFAD632220EE7C1549AB0E47BD29B +:107F3000082D95472219AA250413CCBF7EB5ABDDC9 +:107F4000292004EBF3C2161E5A749DC8BD524C1C66 +:107F50006F6D247652B22A093B93E3306514DDFF3E +:107F60003A80091C7066DB19C4F687610A76FB0249 +:107F7000C33A1257D53BEDFCA432D96A0F4AF5DF5C +:107F800058308DB3CF308FC55682CA879976787AAC +:107F900089CC1F57404FC5D493E1D8A88B125DA25E +:107FA000AD3D95CC5937D8BA79582AC952B9BCA930 +:107FB0007B265C163AB7898F10C6F5A2CC2FC2C7B4 +:107FC0007576F0DF18DD9F8A6D17E9504674350C21 +:107FD00085CDD4898812B9B38EA665C8FFD9258E00 +:107FE00051053186EFF354D4DC19E0B690AF2A3551 +:107FF000DC512C24455D4EEBE8CEBB2250A500732E +:108000008350CB7C89FEF9E5FCEC3F28AF30195456 +:108010001DFE79F58EC2F0198F6C4B2DD0808E3FEE +:1080200057B3CFEA0A7AF8F5065BC0C6F74740EFC8 +:1080300019FD091FDC5CD7123EF936C13B3FD3C6A0 +:10804000EEA6BA981CE66D4C5B1A3388DB1C781BD5 +:108050009BC1FED7CB8C1F5E67F23EB4FF37281B57 +:108060007EE0FC5B882B2A6A26E8A9E72C50665E36 +:10807000C45C1240569BA3E3F982B8D99F4C655764 +:10808000F91A894E94AE9E02109440EC53F35F624D +:10809000FDB035AB0DCE16B419D44B5C3215C4CA45 +:1080A000C6C77E1283B7C88E91C9C2C75CB8BC056B +:1080B0007A3BE1BE713E126CA3F7B23E94A386CF29 +:1080C000300D3622C757F28FACEE9C580041161B7C +:1080D00026B237F01EE02A19140E57B7816E1C31F4 +:1080E000D27E5F991C8E9CFCCE2124EFC97D35AFDA +:1080F0008D23A98C43721311057BF4E3708181D623 +:10810000AC2E3DCBFC724F383AD542F2D619E4631F +:10811000347D6F59F60F4A3EB3FA5FEE785E5E5AD1 +:1081200052FAE728AB2BFA7CE3F879B52F75501E8D +:10813000CF9E60F72B32F3CAC8379B7DCC04114A1F +:10814000715EA91EF579AA7741D75AA32B544D1217 +:10815000C706DBDFACAEF0F229C1F459ADE4D6704E +:10816000E7D290566294D4087D23E1AA28B3572021 +:10817000305DCB727F48AD63C3433923DEFE19F710 +:10818000C8198391472EF12B2146CB15D8532E3198 +:108190004B9ED66FD7D95DC4418302463AD58DC177 +:1081A0007789905A6EBE9A700F41D4B6E24D5F0B3C +:1081B000E8170A384325EB3D3C36690B4DAD1AC62E +:1081C000069799094B063B889664210DDAFE859740 +:1081D000A4E5CEFAD669D5BEE01DF42BFF55E9C261 +:1081E000801E02C77E9414CA332BD88E1E74568B01 +:1081F000C78B0014F058B26BB8BCBA1584EAD1E052 +:10820000812E7B78CA29A844C9DDCB39171F03FC0E +:108210001542641698443CBC5AB698BB99485671AE +:10822000CE1089A23117D883942FCB99DB57ADB0EC +:10823000943C6B7230FAEB8AAD015C385085CC13FC +:10824000A4BC16213636434440AEF9F7FAC65F990E +:1082500059731791297DF39562910A25816F936275 +:108260001B1FB9996BCECC5B1B0156A8610145362B +:108270006243F04D138620A7A667B80874FA090C6C +:108280008D30223A20A1ECCD27B688DA0D470D0EAD +:1082900080BB8E1FD5D219F5EA56860A0A393229D3 +:1082A0001520F83562D9C2E1EB5308278C427B06D2 +:1082B000ABE820ABE0B9543EDEE943C284BD738B2A +:1082C00034EC204A005FA454CC577CF05DE2A087D8 +:1082D0005D1B606C8F992E313D95158663FEBACA81 +:1082E0007405C6C491541FFE52E73ADA980AFBF7A8 +:1082F000DFE4163D3B8C849074772484DE5A6BD87F +:10830000A67AEB7641AE3668DA73D78BDCA971E0DA +:1083100065F68CB1442020DA56E9060FADE1C8B00D +:1083200067CF90D4EBED5C82D0CB543B0E115BB3A6 +:1083300043C3F383EA079C77749100E81187F7F44D +:108340005D2B9B7C81504FC15167F4E72B09733D36 +:1083500046D0F9268E5047C488EFA75C6EEFAEFC7E +:10836000863A6BA25F3AB4D67DA82BCCBBF6C95235 +:1083700045C93462DAC5F782F6C17FDC2D8468AF67 +:1083800051FFC44DA68767C91062B87CBE6A1A48FF +:10839000EB88424B5903F04879EE6421904B6176AB +:1083A000B1BF0F6327F497FB936DF777A4776E87C0 +:1083B000119507D9AD9BA998ADC5E3428ADE550852 +:1083C00075B384F2AE3C8029929C0A1FFFEAE31742 +:1083D000CFA746B91266BFF791FF90E44BE1C9C63B +:1083E0003505A2DE7ACAA8CD7236A571CDCE00744D +:1083F000F94A849239626A9641C9C5FAD1BEF3E15D +:1084000004C0CDD0B1AFEC2C5D25FD28713296595A +:1084100025396130E557F4136D2DC08F99ED1B8020 +:10842000FFB313A722A0606A25C694A75B15384F37 +:10843000B2FA6C087439CC50FC067001EB24962318 +:10844000BAD081B8EDBA6163C124FC790890B470E8 +:1084500020F149269D71D4873303F1E4BB2D151912 +:108460003C9CAACAACD98A878A3C7E3457C5F5653C +:10847000B8AA910D978CE695AA955A5CAA3E8CA352 +:10848000442CAE1716A3D71E788829F7A8551BFAD7 +:1084900005A7BDECFD14AC073CC1D9F52F311B0677 +:1084A0001E37D6D4BFD5C91727F422F3E76803EAED +:1084B000BB8A24C6634C67F655D847AC67E429D617 +:1084C000B0E14235720EF83787099F7CADC25A7A07 +:1084D000C705B07495E66D0501BC4BD16D609CC1BC +:1084E0007D2D0EC628CB2A25F1AB1E91B2E7827EE8 +:1084F0003AA9254757BF35F728EB2605F9BF9763FB +:1085000091BAED9AF6E5FCF5C2C76544DEF4E2AF38 +:1085100099FF9B7F189C523EC1A40587FB4A0073BC +:10852000F5B92DC4D1C745BB721BE76127EDD1F862 +:108530005D2A9C5003F8FDA423C2D2A198BC9FEDF4 +:108540003756DD895C164D50AB55EBA172B64537F9 +:10855000739E63286AB53A3BAE8C6725AF9159F894 +:108560003B8204C1428DCE9534E23D441A827A901A +:108570006B568DA2BCFBCB3E4B2AA6B77CBCFA0D3A +:10858000C431A732C44DC604FDDD5FF3A4831D4F83 +:10859000EAEF524D7F77EA77FD31554CEDEE0F282B +:1085A000DBEE773AA1AE19DF038A62F575BFB9C178 +:1085B00074304E692FADF675D84A083A11ABEE16F5 +:1085C0002771EA7EC017D1581B4995644DB8BAC7C8 +:1085D000A68C2CECDF34280CEDBCC65B1D53664E1C +:1085E000AECAF3E0E6DFD712F6DA94F43F0AF25CA3 +:1085F000CB523E5F792C3FB490DC855C8A517E0C77 +:10860000F5F5401AE26157DB6BB23F824CE7E7CAEF +:10861000077B505E3497275E02F30AC80FD808B371 +:1086200016E60D972F2141321AD752A4A19889DE60 +:1086300041D56A8D37E6363116713DA1EFACB62AC9 +:108640006D34B31A7ADC10D76C34E010905DEE21F3 +:1086500066C43FF08449534B27600C2516D3DB9941 +:108660001A514114EE821DEADAE84CB3A2DB1599E7 +:10867000EC94ABDFCEC2E01406D2519D5E6E3C6836 +:108680009090FAFE72319B5083C473C470BDAF0AE0 +:10869000856DB25E19D1DDA71E2668138B7B4396CC +:1086A000BEBC216FEAD55155EC3FE77596A3EBF2BE +:1086B0009243F9142E4D05D89EB5DF7210FC7CF55F +:1086C00016E10362E768FBF71990B83C3D2BD383B2 +:1086D000C9856D47F66BB87594396B1BBCA1F77BE8 +:1086E0001141039F10A1CFABF12A88CAF5FC1C05EC +:1086F00002BD5CFC818A1DBC7FBCAEEF6D12006FB9 +:108700007760B828FBC58DD957D8669B32D4335EC5 +:108710003B9374C778F10123268965DC75EA809D57 +:10872000A402B11AE766EA29BB9ADC806E9BD2816B +:108730002F6A41E82019A9464188BA41E152320026 +:1087400052412DB648C48B2A6C0E7E957FEBE426F1 +:10875000A402219836A1EC20C7E0A8A78E3F1DF601 +:1087600008885C6DC96F3EA57AA88EAF3C0B6ECFB2 +:1087700004292CD4A1796547AC5DA2A4FB020C218D +:10878000ADACF0EA78A6F211E576873E184C739A04 +:10879000E1C03941E5953196414846BF4213875AB9 +:1087A00078869D745A0873F508197E076890CA8107 +:1087B000CE8A39EA52AF78565F24961CF0622D6C4F +:1087C000F95374DA63993EE653FE1B9F7431CF145C +:1087D000EA572DCC94876E815D7D92969AD1974908 +:1087E000BE23AEBB24B8BC20424C4E5C0A1AA7592B +:1087F000E0611DFED71F11B0775101813588AE971A +:108800006DBB6E2DFF109317D2FFB20178FF40278A +:10881000C390F13E7CBB014956001ACE6871C9C2B3 +:1088200059C52A9631366F587E6259A3DAB55FF280 +:10883000C2CC75BD36EB665822A97A2CF4ED8C5D5E +:10884000E63D60A08B10BD807765EE64BE7B271C83 +:10885000B2ADB50F306174000B6D00E0A8335D3927 +:1088600016262ECCB1296E020EFD180100F5DED1C0 +:10887000C75B819A13A0AC45208014460F3381EB6F +:10888000CB5FA2A8A86A55C25E748C46C8779618BA +:1088900003E0D0189F6C859BCDB782E2448345EFFF +:1088A000C4825445A7A3A0FF54243514A4B8A0142F +:1088B0004D0363C010D530E864179A45816B8FA7CC +:1088C000D4FC9AD321AECC36A4915465AC1A475748 +:1088D000CB121C6EB0312B1310BE18ACE15F2A8690 +:1088E000BE115866F6785CF198D3D6EB0A3B2BE8BC +:1088F000080F4B8482705603E326C0214B92D42C80 +:1089000011C5BEEA783B8D949DBD0F22792CEAE01B +:108910007A0BB6FAA536648815F7BB57453CDCBA26 +:1089200028FB53636D51BBAD050C3333E05B7E40D8 +:10893000C2A3BD851EE5424ABEB94B42267375B53A +:10894000FEE5D06DF9179E6FC62AB22BC3A0DC9B43 +:108950005510920EFD96C7D8BC4FD72E692FEC2A22 +:10896000AB4F80CCCD9C5A8A94432C4D2866822AEA +:108970001EF2A69BBDFB7C2FCF80B32FF6D06239B1 +:10898000D82895EA0B0E4AED69C26049350A8DDF99 +:1089900057BF901285470C196BAC0798E6620074BC +:1089A000C500C75E4CBB6EC9DED38B88C755413945 +:1089B000098D365A2979279292A489D008CCF71DBF +:1089C0004638D01892C2C4264C6F73F91FD8ED7781 +:1089D0003E3403D91952159B7754432CB32E07E12B +:1089E000D89CD8D8179FC2C92313C50B613336163C +:1089F0008222D74AF4EDC40D15B38957F399981024 +:108A0000413C4FD9BF75FD53889F1A6998F4096B93 +:108A100015655CF02B842F93897613AF3D8CDE5F58 +:108A20000846257F7E7F8D149B0B48521F6541E4CD +:108A300074E9D546FA26A8A73C720C82820C65928E +:108A400056964215D2D4ECA2D4F9022A3E1D694BA7 +:108A5000E9E393CB5BCDD6E0CEE1E9E56C496D511E +:108A6000285D7843262CA80C4816BDEAEC72E2A1DA +:108A7000348A981D7B725FD4A6A770640CE3F3035D +:108A800017A9173F4AD6C46A8F20D1C9DEA10A822E +:108A9000D3A4A0AC78A8CDFA8495F4D8EE8DB20B0F +:108AA0002E7340DD64C22D0FE56D257382A212FA8C +:108AB000636009BBFA837F1DEFDB72837CFAB951D7 +:108AC000AF7DE53D841CF5FA0F3967E5EE14A62964 +:108AD0001A17F2F65F50524B57CDC148C1AF597BC0 +:108AE0000C89A7CA9882A885ECC5152647A7A4B407 +:108AF000D319331123CE2B084A812A27B24325BC30 +:108B000053D8251A5CFE50AFDBC3CB00B6C9849B9B +:108B10004E0A350B911F4EFBA259A1A4883A0C8C2A +:108B2000D42E39BE8BC335B009E8F87DB707C639F6 +:108B3000E5AFB756C27A81CCA6CF4E3855C361EAAD +:108B4000E0B2288E7AAD6B6921ABC79EBF92F277F7 +:108B500047F685A80C92BC9B39FE43A3D8E349B9DC +:108B6000749C637D2DA0F0E814871C61537202A7EA +:108B7000D2CC0D4DE0F30229D22C1EC496FEBC2DA2 +:108B800086D791DDEEF689D8FC3E303B6257D69B06 +:108B9000EAB08B2287E6444C7C96064BF281D28A5F +:108BA000E45FBD733CD8D77C427CE784283AEF0968 +:108BB00001D77252A1F91D5589B3B2AD8709ED678E +:108BC000727FAE55A599C7D0E747CA8BB8DCFF477F +:108BD0009DF64ED492602B0C5CA2DFF526CE284980 +:108BE00085473B1A69E189456C2A7094B72550483E +:108BF000BC3DC787CB9DF16269B68DC88C13F099D7 +:108C00004D2A537E822B02A4377A18C4C808780FE5 +:108C10007D6B7B97F95619E3E626DE46F4D36EF5B5 +:108C2000E4E62AAA97E4C45C7B247B2DE312FFAE22 +:108C3000235CCB1603E5C6ACEAC04820D9AE6DB7BD +:108C40005168F7B24590C2476CDA831D1FEB67F796 +:108C500080906AAA5FA10CD5B688183C8BE9A5075D +:108C6000D7BAD2A3E9A9718B0B955D79BCC3CC713E +:108C7000AC296080C26EABBFFD2EC1575B4AE5EFE9 +:108C8000D4077CC407CB1188BED33DA68F554FB304 +:108C9000398E989ACFA3E5CFEC880F71C41B494158 +:108CA0004AE40080D4A017A54AE99DFDF2EDF5E461 +:108CB0001BCCCBA42C0F69FD1C15EAB7355FAC0C9F +:108CC000F2EE04EAA84BA44E9DAA57AD8BA707C4A9 +:108CD00080DCD74FA715DC2555218B38BD4A40F0E5 +:108CE0003E0F80630EBF455212EEBBC741BFF56910 +:108CF0008FD2E4A3B5B137B4252B5DC2DA96AAA60C +:108D0000BCF5145DFAAA7250428BD2B801FC101E59 +:108D1000F6CA6D501CA3325A0E426DD5DA04B40E59 +:108D2000BD2427439578AA8FB96794B3AF4CD1047B +:108D3000117DC45F4225F112369ACBE0DEF65E2C3F +:108D400048E7D1057C8366E8FD00FDDFA9D229A3B1 +:108D500078723CB60932FF4FF3D334E016C5A591C3 +:108D60000A2DF519F4D7039B356393737E950BCFCA +:108D700072BE5798799ECFA20D8B564E9871304F88 +:108D8000E2DC4513D148C619A0759F7BD587B09802 +:108D90007B4ADFF40EBC7660C43FF12334DE5D1EF7 +:108DA0006C8F6B20F9715A6F164F6008ECEE3C1413 +:108DB000455D0C8BEBAF2E60966313F797007374D1 +:108DC000607D7732BFDC9C52459D0B3EE83CACE9B0 +:108DD0004B12BB10A471E3530ED5C3712B5C2D89CC +:108DE000F7BA0C384667661AE62E8388E169C070C8 +:108DF0006B858BA8C8BAE727671CC1764EF526E1BC +:108E0000DA262565D8A305A7E7E446F62998433571 +:108E100054CA418EC077E69655E99DD9129F428D7E +:108E200095C91A6645B5D033384AA8563877E16DEA +:108E3000B3645A9A994E6FBA52456F2450F345392C +:108E40008496B70E11A7CD8BCE171F9077275A5354 +:108E50006EB7115E7DFE5BEFD7ED2937DF414C4DDC +:108E600034EC7AE9E27ECEB1D5B67D636259F3691E +:108E7000B4D441EB0D696D441FD4CC12CF60A5AAC8 +:108E80000FAD6934873C2276B6267EFD5C5F8B226F +:108E90000E3795BF778FB77866AB4791215142D196 +:108EA0009760E504EF424772493D86B11E925D1915 +:108EB000940F9A5AAFAA5D29450CCDFE002C02955D +:108EC0003115D333CCA8CCADF69B4FB5CC46A375AA +:108ED0001E9CE6A2D1A8AF4195023D52023371B764 +:108EE00062735CF89DBA4988E1DE17594E4A9E13B9 +:108EF0007041A40FC8488D1FF5F55C157A0FD8CFC7 +:108F0000BBBADAA7A07D153E5A2C3709D50D4A7792 +:108F1000AB314C67EA74386DCE1DAD3F47590AC07E +:108F20005740C9C4F3B4D9F938AFCC327B8087D16C +:108F3000CA280533F6F0CB322D690CD90AECF3F1CF +:108F4000474322C3046E1E44E3FFD302FB18B4C898 +:108F5000A6ABFCADFDA1CB74C4AB73FE68FF7AA1D8 +:108F60005B08691013FCB3A57F69089766D1366E5C +:108F70007ACEF48AF38DA18E7F1F35ACCC46CD32EC +:108F80007BE2F67A0CA1F7AD9F43C153D814E9F206 +:108F9000EC8E4BA8F0CA5417741B7E8022143F2518 +:108FA0000BC6012C45A2B4EEC2A5D284CD3FE92068 +:108FB000B04593178CDD27241ABB7B59D6D7CA201E +:108FC000F295B48446A90716E4791AC0B413650B68 +:108FD0009EBFF9B9AB969E962F313E433734BEFA09 +:108FE000000012AD3A524BC703F22D2C3F172CA4B0 +:108FF00070A9634D823816889021F52832E9E4087B +:10900000BE324EFC9D6D4C10CBC84762A2B3E65EEB +:1090100087F01010CFFA0A752BF04D795413F172C6 +:1090200035FD1E6D78976BE37F6A1362BD7BF4D8C4 +:1090300021277DFFBE801D1AF70EAC6CC19BB8D5F1 +:109040009A558761F282F0E3CDA253B8BAC50510F4 +:10905000B21E35D9CEB9D23793AC1AB3E4C89B440B +:1090600070E39EB6F15BF399398540A82506376E0B +:109070000F30DDD656B1D3C4B8A16A3F3417269558 +:1090800085F6DC66E8E90B751FEB0F69AB48CEA8E7 +:1090900013F3887FCC37EE43FBA9B298BDED86A7CA +:1090A000B4E529547F0D2B45AA7159EEC4AD19784A +:1090B000FE487F875A202783DE231B942C749B272E +:1090C0001E78727FBFDA20BFD7AAE0AF591DA6ACC9 +:1090D000D9DC7C16ACF1BD3BD9EDDE4953F49AAC3A +:1090E000406754F43DF9FFF6CE825C6D4F07219442 +:1090F000435AEBC2E7900B58CA51F85A9303035DE9 +:10910000E8B6D3E511D409DAB71B2603475CDC7A4D +:10911000C1BE7983893C960C2A146CDDE8E465CEE7 +:1091200022704D1E59062B37A85BBE4F1C82670F5D +:10913000B0C3495479692D21D3CC13CD4EFF91F999 +:1091400027D0CB4B826D539D8FF00D56171AF1E44B +:10915000E26C28BD400D92E0341E0E5F5B9112DA86 +:10916000B7A7E412CADE62D0D7B6963BD1118EB84B +:10917000AA702351CB9EC05FEC5E0EC44CB74D303D +:109180004CF54E1964C3FF4CC96141508360A14640 +:109190003A10C9DC90A0B1BF94458DDFD2F9E886C2 +:1091A0001940598AA7931FEB2924B8CA1F1C691CB0 +:1091B000ADAB405A71EFBB936898E31E743548021B +:1091C000451D27F785052A1CEC019E741CC1711AE8 +:1091D000DC6E5B6C46B62C2847278A5A96BABA17BB +:1091E00016E750ADC5855E3901D72EB657C4F1E1FB +:1091F0008493C623C3175B649691D13FB4A214D75E +:109200005A71FF2AC27A5F8D80D261A98F6DCCC559 +:1092100080DC052ADBA87D0C909A57E634E02224F6 +:10922000CCBE07B8ED997A0806296ECD488D6ED769 +:109230007150D71B5CFE83714862EDEBCED1672283 +:10924000640480373A9CAC175389EC38490BA6CD9F +:10925000AE226B1C1BE0AE704DC550AA00AA96331F +:109260007084C37E5769CD4DB34C6322B6FF4F76F1 +:10927000E27B31481FB2159275CC32BEDACAC9BB47 +:10928000CB1C7582C9D77366449765A0302D7A07C9 +:109290007EFA47DED478D6158EACA64018AD71D7CD +:1092A00065DA575ADA7A18D607882C1B2345C61375 +:1092B00058982087DA85EDE1935AB7B95400FF0139 +:1092C000092E10B3C93C57CC120403F8BF8F12DD2E +:1092D000F5409B841DAA3FF52800C700B45FD092DB +:1092E000E6FB8FDB673B9025803AC07FA122A62951 +:1092F000DFA1D85FD6F088A82E7CBFB5D29ECD74F2 +:109300002A1947FDA46DA1BA646046194A362D7129 +:10931000377F8E6857961E4B89817EFCEB483075EF +:10932000333C6DC17B3EC98D441ACC9A75526AA4F8 +:10933000EF64036C7B8ABEC632FC11FD0293EE75AE +:109340005D73E9B6F897DB0E3DAC09F219F3ADF1A8 +:109350003762462388D1541D9904B787EF0C94696E +:1093600082ACAA73C331D1DCD0BFDEFB2D90B92211 +:10937000BDBE7500EE561AFE44BC02B7FCCBEE62D1 +:10938000911333FB22CBCB9A32BDB888DFDF8AED55 +:10939000A30E32E0CEDCF3C88FE888BC6C3B607F64 +:1093A0003462FCB33DA58E2CC4285FD7BBC6EDAE9E +:1093B00099F3F4210F17E113498314068FCFF1F4C9 +:1093C0007662BBA04DF78A1288C09C8494018ADB28 +:1093D000B8F5E7C9B89336A2C00C1683748E508CCA +:1093E00099BF8AD2EDB563507D537A715CB62A91EC +:1093F000D93B3A26E1CBCF45738CCE3F0417D5023B +:10940000209DF521B540BE824EA6936CC2319E8E42 +:1094100032E48FDD5AC1D1F6D9BC79C6C193ACF71D +:109420005D5ECF0EBA1649A4B70D7C19231319A49B +:10943000C6E4709B2270C63A7813667318995ED1A1 +:10944000923345DADA767B5085629B7DC7FE2FBE6C +:1094500010B77DA890D734300B105FB45B0128F7AC +:1094600033B5903B3FD832C9D489479468B8F7BC2C +:109470006AC311D859C525C5AEEC0856063C207202 +:10948000329024FACA9A144D6257D94CD653E8F553 +:109490005934C4B23EE31720283210555C7E04C80C +:1094A0002B60658598908FB174A0B99159E9ABDBB9 +:1094B000CD9919EE2FDB5A2C53619B07EBD20AC6CC +:1094C000F3701DE31B7DBEE61C04A9937C509BB882 +:1094D000ACE3FD1580E2A08A4C634F1B943D2FD571 +:1094E000AE4A5D0033614255B29E5692C03BAC1805 +:1094F0005E3EB505ED0FAEFA3047619389BBB11101 +:109500006D685A9BEE79B53BF207875A51BBF069FB +:1095100008A22AE2871A63CDB52E2B4A208BD0F4FD +:109520007897ABDE8724B137A7663400DCAFA74459 +:10953000542E3683B8C06D580287718867E7C9AE6C +:1095400066B9DAA80C8CC354D1BB4B29EA9DC30E73 +:10955000DE0A2C5BABA0031FD83EC41013425AA3F3 +:109560000EA7A16F3838E88DC1D870648EFA636495 +:109570000C1930AE73BECB008486367C6D45C8CEE8 +:10958000CBA2B7DC91C5E0C1FC986A2A6AB722E594 +:1095900080FB580CFE8C547D24736B0F7C7876D145 +:1095A0001952B1B0133854ECB39FE390B0C7495B84 +:1095B000547A6295ABF3D24D6F7838F9C93A99BEB7 +:1095C000025ACEA69BBF43945BB4CB2BA7B8A2F59F +:1095D000CD30F716DE4F350354E0F5452A4200F64C +:1095E0000730A12056D6C296040F77E70AB629EBBA +:1095F000157BF982C9A20D9C0FD6FD8C07234EA4C2 +:10960000A8DC4780A88F0CAC6BC3A22397235BEE2A +:1096100097C3437CC8E2BA0235852BDC3B45EFEEAD +:10962000069C212223CCE3A142B91739EFE9C1D826 +:10963000F5CBB16C0CC3BA78CEC1899C0382C7B795 +:109640004FC5F1DC63CABA618AE294F5037C215C00 +:1096500073ADE2334B27359336E091BCAFF34F94B3 +:10966000BC69237001DB0ED09C4AF4BF2B9165FBD3 +:109670006B98EE43AE74DC40CB505BF5B65DEEA16B +:10968000D8D7C7A0AD1152A8043212092DB4516E1B +:10969000BF1D84A881C971B9EA9ABA7F942BF1B928 +:1096A000FE7EFA4CDCCBB7E89BA4BE1EFA9589730C +:1096B0002C266CAD9E1BBC2A97E678296B57FC9A2A +:1096C0009E6B449A58655F5E1D9F60813562F8F518 +:1096D0004EB04A3C62E38778A98C9874BF653E1B04 +:1096E0009259B3B2920051202FBAE9B6D16E032B32 +:1096F0004925543EE2169E5664BB6DBF4DE28BB3C6 +:1097000082F9CE6E84ED6F740337EA4E11BB828E00 +:109710003A35FB0D682378C3D4ACFCE122E90B2A6F +:109720000EC485F92FDB4DC21AE680FA3DB2E08AFD +:1097300018472566487A75CC008FAC7AE554519A63 +:1097400035645694B4921CC30B7558D13E5A0EC55D +:1097500099CF93C91259C53A39CF20B90C75383B06 +:1097600043A70A03A19245C97849466B2C96D0239A +:10977000ADB041E5E6BF8A0FBDA77CB3E83C333806 +:109780006FE2CF22081B3A53BADAEA430A9EA105D8 +:109790002F91D4DFFDC136A4817A94A66B70DB3B98 +:1097A000B1794F02A6AF2AD9EC9DAA097D8524F094 +:1097B000D036A56EE30724C12BA4242A21379AE7CB +:1097C000117969CF68D516A4250DB2E09151A43F57 +:1097D000A093700825E981B2C0B19617BC9895494D +:1097E0003DCDFE0551495D54E3F3E2C1E786D47FE8 +:1097F0008CC7FF02973E79B5709438268D9DDB2C7F +:1098000040E2992169FDD43E4EE505DF79DC5C8CB0 +:10981000A7EB7AFFB8DABD54C52C8723DF152F7D5F +:10982000C544E165E0E93D1FFFF0976884FEB7E2BB +:10983000E62D7DD5F24267AF84D74FD855BE97EF5E +:1098400045021CCA8F3E4EF94A9FBA4A5BB0D356B6 +:109850000EC50FCB125BA2A111B95EDC5C41DA250B +:1098600001E5CB7F27CF6869AE802629B9DCA0F857 +:109870009D195818C8A9BEBBC6846AE462E103C535 +:1098800017D01065CC581E0E03310AABC1C86E3C10 +:10989000B3039C9DDE8B63BF0F6A33CE86C5DE5556 +:1098A000EDE8851138E33A210F30570889B21723C4 +:1098B000F44166409E68DA640A97784E43A8535E86 +:1098C000B5EE73D1255ED50EB7A8B6826C5DD8F221 +:1098D0007FE9E4F3C5AC8DEC6C899A023AC677084F +:1098E0000A0D85C74BD1906BD4F9C90E69DD3ACB0F +:1098F0003A87EAE65B1A97611E89E655F4828CDFA7 +:10990000077525D3CC3D8FED74B74574220664A648 +:10991000C7E3DE0F32890421D3187CA9EE5565DC3C +:1099200000B9E134BD4A6FF4A64244C2FB662CE69E +:109930006C7A6706708F19A406B21B8165DFB27C52 +:109940007ED7B3805F0FA4A8416B42D2E1518579E5 +:109950005C133C95301CE36D4AD3856290134090B4 +:109960000B5C19D982DC7759CA9611F2ED15856E18 +:10997000227D7D420858B2E87439ED17569328DFEE +:10998000D4B03053B466BF6A62B3C53E1D2C005BD1 +:10999000FD3BB5ED4BA0BDCF39D3C0A36C568D3D7B +:1099A0006A3B463F81A1A9225E8A30FEC4F5CA4FB8 +:1099B000A9C1348A76442196836A3321C722643947 +:1099C0002B29EFFE83569BCFDE0C6983BCEACC1BB0 +:1099D0002456D6B96F918CF8A6A5FEC152688F00A7 +:1099E0001CDFD76C1887F23EC74EDA3D71055C6804 +:1099F000BF1D7CDABD939959675ED42569994B8167 +:109A0000E87BD9F09F752C288A5E1AF4F72D4DE873 +:109A10004C5F6A95508A80D760FD2AB34107C7889A +:109A20000A607EB22FA72B156A21B9D307D8968179 +:109A30006EFF75BA62CEAF37630837C0CB8A724605 +:109A400025574AAEE09792EDE6C5A3199A54EA7AF3 +:109A5000648354AB51C49D42DEBEACD20BDB09F72C +:109A600028A32EF7FA7C2DB85F8C66FE24672A9116 +:109A700011E5E68477DA0B06F91F61A8844F7F08A9 +:109A8000CD6279C728A90FF0DB110732A1C9D6B979 +:109A9000506F7FEC891EF4D24C93D37FAFA404ECBB +:109AA000D63A415CCD4BB2CB2AB2E218D58A73E2EA +:109AB0008F1EEEF08D9D54F096F6D3D350E1882999 +:109AC00098CDE8D8EC4C693C608C7FF4E3377FF6A6 +:109AD0001CA93A00CBD91B6D85E51759F0DA668BC6 +:109AE000D049500C7896069EB061D86B98346E1BA6 +:109AF000421F1CAE170111CC7C5DE2689D02C7B508 +:109B000030A8A513AACE559D3DD2494B61721AE9E2 +:109B10003CF9A0EFD2301D611CF3BAAF3DC9763AD3 +:109B20001A6EB683A81B08A49436D458F0900D9CE6 +:109B3000271A51F9D3D2122F5F98FC79813B7F15F8 +:109B4000D6DA028DD97C86EE9E5A203405CADFAA69 +:109B500006BBC49C44CB4A864D2216A08C53B6C487 +:109B60002A234A7B005035B2728C42E977FBD62318 +:109B7000E3045FB4F0021989F6B28268E59D26B766 +:109B8000048CE1CC9C85363BD8EAA8D89BDBBEF997 +:109B900017775B0FBEFAC72EF4D00ADA1994472A5A +:109BA0000B3BB2DE708C8C40FFA5E5176E50D48D58 +:109BB000D6CCD933E80908E2EA3081D46B8BDE9F3A +:109BC000B04C43B1127719E4636441C42F1DAB4616 +:109BD0002F7DD628C4305376AD9CF055AACC9D88F5 +:109BE0009933F198F47718F6180CC0FC4B58A8FC80 +:109BF0009B46CFAA57A38C6C585E2458244A43B680 +:109C00007D09029476F5C53AE16F7871DA357EAA5E +:109C1000098AD6AE260264C9965E8D1523BF79DE09 +:109C2000D3EABEB55616ACC37B70C65804B2B67242 +:109C300014FC264333929AFE2ADD568CEB3909EA4E +:109C4000970CB3E1D9E0AE327F9FED15583739C399 +:109C50001979707FAD13F696EAC9C1E688F47F1CC6 +:109C60005CA71F654E990EE11DF4497B1A394456D5 +:109C70000E2212F7135994071DD9B82E4C4F8E9E01 +:109C8000CAE3388E22A6D71E03895F4EB3F153F57F +:109C9000996FE600522F3069EB5A63EBDF74BC8892 +:109CA000488C1992D176D2EC29F586739A6391DCAF +:109CB000CBC2B84D10C5AEA2B43562812F2B0ACCF1 +:109CC0006FF1B26629870FA99C415442EBB73282EB +:109CD00040EC88838521DE83C119749A72D2AEA6C6 +:109CE000DD6BCCE1118FDCB77BF5B3B92A2B2B49A7 +:109CF000BEDD8697DCEF1155919536FBBE832E991C +:109D00002D7B8ECD960E0A16209CFAFE6B87655130 +:109D1000218CCB99ACD18A2B358F12C323D679B441 +:109D200098703ECFA1374032ED12E87B297F337C1B +:109D3000A6570747002263F853D1973AFC6AECC84C +:109D40006D8CBC24579C90B5C23BD95C9FD1C3FF9E +:109D50007FD0A7010C32A9AF9A67B967B68DD60C30 +:109D60001B8D297C2329F40F61E02A172F8B26DE17 +:109D70003F5A344353E815E37212CDF934FFC6F568 +:109D8000B8C2C8356CEF8A753C6EFEA3FB2C9741B8 +:109D90005145EB466EF225A7B860B5C7A201F1FAAE +:109DA000BBAB90D98C7D34F7391BC0AB045D324F0F +:109DB000D2BF8E2039DCFEF89C3B6D18D4373DD5E0 +:109DC0008719A287136592F9C8D79715E5663D10E4 +:109DD000D83C5184FD764BEF3D486CE2AB684A06B7 +:109DE000F32ED5B77C7FC71E69349E0C836A53FA65 +:109DF0001E9C630F0C459409C10378D3747D0FBC7E +:109E00009AEB730F8F23C8F47EA4EA35BCE4DCAB75 +:109E100013ABE796FEB028788A945A201CA726092F +:109E200007F3D1B339354F020A3AA86999213D1D8C +:109E3000394617F1E2F67CBFE83FDFDF05EAC2F200 +:109E4000176595C57A9915E79B6A3909939CEC6566 +:109E500068A2401C847C0448847AB19E0BBAA57029 +:109E6000D10D9205AD15C2527D382C6DF6AAB0A069 +:109E70007FC5E636D2038EF2D4DDC2947B54995F5F +:109E800006E04CAAD689095B71FD1056287E984AD7 +:109E9000F9ED263FE0F40F2A3D611517398059B5D9 +:109EA0000D4CF59AC4224FBA634F276FA90590282D +:109EB000FEDF93FB66532FC6E459BD9313287D5AEA +:109EC0006B7B177ED97505FC1077BE4F2FCBF677CD +:109ED0005E5C1AB04C10AD86C2B5E57F038EBECC79 +:109EE000BEED09E8D83EEF1CECB309C373BB566066 +:109EF000E8E5BBCD5DA5383F013050FCC4AA8046E3 +:109F0000B032DE9E4BD2953C7F12FE24CD3BDAFC74 +:109F1000E36BAFD9E0DA67A5F913BF6340137E4F57 +:109F2000536C1619129A4CF744C1E54D59A8D6E264 +:109F300091086FC8775388E71103AF907CAFDA6957 +:109F400089A333A210E53DDC8200CBEF51396D3F90 +:109F5000CAD80455ADC7095D017833C9B69CFB4426 +:109F6000CFB1A9C917B509EA83A3DD9C00C8C1A375 +:109F7000F9F37D2FB07D67C7D569B63F22DCE3BF1B +:109F800019079F054A82FEF6A3665CC2F20336F407 +:109F9000C05EFFBC0A139AA0EA82D4DAD143E195ED +:109FA00090579CE3FC7493DC49B5D676086E078223 +:109FB0001645F1A8C1A5488CD097CF2F7C7F85A4EA +:109FC000CB63A0B5A1FCBF1EF33D70F0AE59B9A4A0 +:109FD000ED6B37C77B9425919F13EC4C3499C0C728 +:109FE0008753C015FAAC36867AD13F5D6DA4ACAE0E +:109FF000117F73D8FBB87ACCF43AEC1FCD4214240D +:10A000002E333531E2DC7A0F39442E196C5079A7A2 +:10A0100085812B1E9FA3C41A0F0BBDD4AF8D1CF6D8 +:10A02000E425334B7A56A0220A753FBBC02D68C485 +:10A0300002ABE05AC9461898CBB37992C762350A89 +:10A0400030D8DE7401D6B3781D96E1EC0944C962BC +:10A05000510AA8EA9170B1CF5C00767D5EAE7BA418 +:10A06000442D9E2715B9D03E73F1301000D35E5CAD +:10A0700096F9AD2AA5EFAD9CA10E34FAD11ACD7791 +:10A08000454B7CE842F0619E89E3E11E226B9D7A9C +:10A09000D698F208F60430B4BD89108397B17F03D7 +:10A0A000681A24A86DA30F92ECE71355D45220F33D +:10A0B0008A6DB94C6ADD12B396B58E392EB18B7CA0 +:10A0C000C992559B20F31184A9F37A04C7EC746BF1 +:10A0D0007FB373144251AEA140567EDFD37F927F8F +:10A0E0009912DD144E4E513E7998A20FD4845F8EA2 +:10A0F000F926D6D311B530B12E46517D3E948F0747 +:10A10000A1D2E8E907B630EE20D4CE5DB1649DFE61 +:10A1100093FF929C616F84CBE3554220315570F5DB +:10A120001DBE31EC040FAC73498E6A4D7A34455D27 +:10A1300045C6B2B379EA48A05EEC02E1A00757F148 +:10A1400045B04AF005E62F63585E6D470735C9F5FF +:10A1500091D7B6584146CEB1032FFFBFA0C22ED52E +:10A160008D5B57B64C6A314188150A6955CC3B75F1 +:10A17000E7C17973F1643719785B7E7C103FCF9427 +:10A18000FABB39336A4006DD37441E7412EE196596 +:10A1900038435F71F57D3C45EAD3B2994376970821 +:10A1A000F687DD1108A6104DF88D3CF1B9031EA20B +:10A1B000F7C4A3E09B132D0405293B2C540E64EF38 +:10A1C0009D13A3935D8ECCB6B7D6B5FDF1B86437B9 +:10A1D000867A2B6E4052315CE58352B8222D47754A +:10A1E000DDCE69BDBA52D37AC01D20D33CBAEA5540 +:10A1F0006101776473D210E94354EF12D8FD1B4913 +:10A200004A4BF1FB38AC00AA4401DAC13B1A20A248 +:10A210002F1A7B73C915B543C83DDA8E5F1775F9E0 +:10A2200050157ACE260993B4ACC700B035D9B42600 +:10A23000A249D90FD83169FA2BE0871A9A8E66FFA6 +:10A2400033297411175DBF1334839EDD90659CA183 +:10A25000B3F7EA2E0E126110B68985C005DE69C714 +:10A260001DEE4AE2E7081C9DC7264F1E2D558BC8E0 +:10A27000E5081A3BC45486FA0B68A771903FD9E7EA +:10A280006E1BEB8E03CC640B875B8513E67427FB98 +:10A29000766A53E2A638193728CD6394F6FAEEAD04 +:10A2A000139DB3D8C1AE2824EC35877ECA8EC6155F +:10A2B000A98218242CC17813EC07F8BF5731B38555 +:10A2C0006E7A26D5BEDBA1D9E0E1F409EABF9B5A3C +:10A2D0003267BF313805ABC3A8DCB091E4E199FB2C +:10A2E0007AF9566887F5F7164F218C9F91608CDBC1 +:10A2F000CDC7AA1FA95F00E243DB5D724E63D23572 +:10A300003D6D716F568B5EDE655904028CE486F0FC +:10A31000B6BA5C2D5A4D4751BFBE4B97BAEAD51914 +:10A32000BBB61EFDD8CEC5F206466F510EABCE6051 +:10A330007D3EA061738A3ED9C5A86F26BD9245E4D3 +:10A340008C54E4CD89A087505B154C6E1AE5838050 +:10A350000884F8432DC6F1EACAFC5C8337A714BA17 +:10A3600089EEA2295B19E2B250A9A1BC323CEF9C54 +:10A37000F01E18454D1F5EFB4B997FD5D3457523C5 +:10A380006E77F7DC239B43B2FDCE14326112834C0F +:10A39000F3067178F22BDAF39B6F9D847BAB6B2C09 +:10A3A0002DEF1A9829054EB4E8AF1A7CEB5E38748D +:10A3B00038618DA98631702B2475066B9F244C273C +:10A3C000891B5BD1F0E1B56879F49C7C8BA0F5AB7F +:10A3D000A41E199EE1EFEA8BD78D6D5E788EE8742E +:10A3E000F069395EB0548F76695EDF58C09145C020 +:10A3F000137425356DA77DD5EDA5FA4271AB703488 +:10A4000029645A7F74DE48D0C97C369C9E94E7B894 +:10A41000F42D2D303D1E7E6BCBDD18341F73BBE950 +:10A420007477B377028F48D3C710497F9113D796BB +:10A43000DA4405BEE644D05BA3FBB60FC31FDD2B99 +:10A4400048073EF9C7424C40D1A99AD9B49DD3C020 +:10A450003CA5FA31835912419D6891F4B2B7892421 +:10A46000AFA71B574EF9B5777B26E4CC9FA66FFAB2 +:10A470007A83BAB724E51AD53867595E6B63782EAC +:10A4800005997A448A7258CC7A44D68E752A62C36A +:10A490002BEE1C92583328C240A236E243F23D7A9A +:10A4A000C09D35DA5C6EE01FE50951FE5CF7670B75 +:10A4B00072C9259FCE6EF9E2D9400AF785AFBA1965 +:10A4C000E8E2AA31CBC3E04340B8B26CACB224A5F9 +:10A4D0005F2C637F1C43402F1EB07035901F7F5E42 +:10A4E000D8A832540CC136531C01C1BD72FD9682EE +:10A4F00011AB1665ADB3FA40B6AF6D20B269DA5351 +:10A500005FB12C5269A808693D0F406162E0C22327 +:10A51000F448073B71F532158F1596C15C0D532039 +:10A520006209ACC4B12108893D529AA1DE83FBF6D1 +:10A53000DCCF9B8EF31F48A194D5EE5B42AC1F90FD +:10A540000E81378919CD73F4847E382B245474E03E +:10A5500078BB3C0502EF848F0E650BA64BD194DED1 +:10A56000F3E48110800069D354118EE8E26E3E1C42 +:10A57000648B17E766CF9B26FF5891583B51EFD16C +:10A58000305A0FDDE161D29B249DD93C18E74EEA99 +:10A590001EA50D16EA750CB73C25760ADF5AACFFEE +:10A5A0009A26B0B34F2DEFF5C1600FCC304CCD3FA4 +:10A5B000BCF72ABF313CD3999B7B4C7BD6C9B28771 +:10A5C0000914EAA3FCB3CC20B0B2359AF602A37FFB +:10A5D0009C2D463E0E2924C2ECFA1EC3D6A1937EC2 +:10A5E0008B787E5BCD78F93152C535F26B1363DB26 +:10A5F000AA20BAB69BE14DF1BA6C934F2629F230EE +:10A60000E2C87062B18B1BC3BAEC824A8FE2B3B668 +:10A6100039FD06150E4BF6B8E825DBCA19F9B281EB +:10A62000B0ABB6B6D269D035B9DF2EF19569AEBE02 +:10A6300045DEF5C982A0E5B09DC872B7AF8D6AA9A5 +:10A6400055FD19B5A4B16065B23185C42385758FF8 +:10A650008E98CCD0AA9DF6A825B67B14148D46649E +:10A66000EE0B89AE19DC0D63E9F77A4BEB3397F605 +:10A67000591B0586030422D0DF23FB7EDACB16DAD2 +:10A680004C8B17D06B4E5E899262B8500D61E17BA6 +:10A690008F13CF913A7B76D813C0814579876D515E +:10A6A000D599E839BE8B85B3D8F594B5A019C72ED6 +:10A6B000035A3A24C5578CE97D2CD801FE04779FB4 +:10A6C00078C8B1ADE8FEF9A4CCFF975BC7CBC8D280 +:10A6D000C8D68C25270BF9744C9EA19CAAFBC728D1 +:10A6E000D33AFBF12A2D0A2246C1A54991A64184FD +:10A6F0002CD68638C134F71374DAC48C73129B914C +:10A700006CFD3157AEB5AAEA9D9B7E88D63FD980B5 +:10A71000E88E84896FAC84F8516ACCF2DE70EEA6C4 +:10A720000D37AF8FDA040A2BC41C0620918353EB3C +:10A730007826D344AAD0829D7EDAC15F74A8759032 +:10A74000E70D353F42E39B1122503D6D0A3D433AF0 +:10A75000F77F96D1A032D6A6DEA32511B25301060B +:10A760007C2440EC511D7119CF892580C2C8C18A53 +:10A77000C9BB18D9A046E81D6F37FBACAEFD9E4B98 +:10A780000CAB4380966AC675AA2DE5AB6DD5B57F37 +:10A79000A8A94076AE1D9A27057F83F5B7FA6E13F8 +:10A7A000F91AAEB1AE01AAB2C0C3A8A1C414013156 +:10A7B00061ACCE78EF7E0A961511AAEE99141F436C +:10A7C00004D99818A8005F505B307AA73071D47B09 +:10A7D00006CE1019010EE4708EA5A2E18D03154975 +:10A7E000CDDB07832018174F0D2EF70AD697A9F156 +:10A7F0007B824E8A8986A83F65BCFFEA91041019C6 +:10A800006E2F76D1E56C93D3BB88B19DB4A88A6BCB +:10A810008146A3E6D4D773C8E3C4CA96A879AD3BF2 +:10A82000C7DB9175182B1F5B41156E97B7A5700A92 +:10A83000C014925EDF7FDD7AA0E14E42EB246A3FD6 +:10A840008513ED3FA4C4D56902694463D11CCF1AB6 +:10A85000C703448AB580E6A4DE03797BB62B932D2B +:10A86000A3444A5A385F85A117F3AEC193F6713CF1 +:10A8700046EB02E121CA624716F5540542814D4775 +:10A880008106B8B7D290C60A8ADE01AB6624F40905 +:10A89000E641524A8919876AFE98F75E7F2730475A +:10A8A000B4D64467AEDD5390D3888C776998C1786D +:10A8B000856C580710612E7F6C5DEF9F54282B1C10 +:10A8C0001DD2181E692FA825C1514C6D29C544F809 +:10A8D0003DAE81AA503DA1659A6C4B8D79A885FF4C +:10A8E000694EBFFED2C79B78F2FE09C2AE1CEA7168 +:10A8F000D1D242B3516CFB79ABAE3F093D8726CC38 +:10A9000073F96F50A796D6E549D0743DE1965AAFDA +:10A910005D39960DE81C3783312CDC41B8C0EA2C38 +:10A920004839F5C039F39576ACDC0A3A0F3ED3507E +:10A93000D75EEDF3427C9379C0866B137DE65A189F +:10A94000D5158130BADD8FF721710B7818CBDAA4D9 +:10A95000BF969192BBB60B2E658D70462C58CDE3F9 +:10A960003235CF39333235D61DDC48790DF2F1104E +:10A97000C9F7744C7B9C36053F12E820D610C66F91 +:10A980004BC0A9CC13BEC98F00D3D41BAC0A6E1523 +:10A99000ECE208D56C95B7C02EA584DAC6953808C8 +:10A9A00085D115211F8BFFA5ED82837A03445C5D61 +:10A9B0005259C2C1467742B67785DA4EBA25218907 +:10A9C000340A267F652A0E39A52FEC3149FCAA46A8 +:10A9D000FDE388A4191DAB2748E754DBDE6A1BE8BA +:10A9E000E5C1E36D885AB4DDF4075B548DCC43FDBB +:10A9F00095F73748AC09FBFAA3C66A7E6795A2C9EA +:10AA000004D80DF8247CC70CEA8AD86E868D207E87 +:10AA1000A39277DF7F91A1ED772F2DC8A52F2BCEA5 +:10AA20006282241DCA2D2B45D2F2FED2AC2B38DE19 +:10AA3000A4EB609C51A8D00CC5DEFA6FB16818B1C8 +:10AA4000B95C32072FA3392F95D62AE7DECC66846E +:10AA5000D0E71D8E6C57226031FC130C10CC903661 +:10AA6000E5858A75381544C20FA06F766736DEC15A +:10AA7000A39D4FDE752218750EC25C7A7BD6F758FF +:10AA8000C9F4ADA495B4D0C54BFB584D3223F87F23 +:10AA9000DDD46515082B402B4F27EB6FB9EC7FF108 +:10AAA000F9208D4775D1FF411F56A0604A27DB3E34 +:10AAB000AA7496B5E47A63EB0ED1BC153BE4DC9B3B +:10AAC000F868F048B455400877064F0B076786438F +:10AAD000C10C670747E212E9323D725CA422328D55 +:10AAE00091FD8B02927898EE33FA0C8F17BACB3C1B +:10AAF0004D45613A81170D7695A478D86686E38E28 +:10AB0000500E0863080D70A0E503DAB82C0945263D +:10AB100031C1F356D67BCDB7E765A91EFAAE5CBF4F +:10AB2000135B95EDDD1E842EC277C5375A51AA04FA +:10AB30004CC757205FE8975ECC8978889E8DA9F135 +:10AB40006C4C10A50D1B74CF12290C509E2C4A4D35 +:10AB50001494900D1AD0FC4404BE340E0C880FEFF0 +:10AB60002EAC80DEB3ABE856D73FDB65CD51323B30 +:10AB700015715D19EA637F4D8285C327A6DBAE445C +:10AB8000D6E86E5DD4554D27609E4FEA6F977A27C1 +:10AB900081521890F96B7110EE46BAE38CA3668B64 +:10ABA000DD5F740F625E15A2FD025DC162C3725962 +:10ABB000B4C9A38AF55D1F9BECA39CCC4D054DFF4A +:10ABC000FA38CCCA4B6A6E9A4495C78991FEF32A2B +:10ABD000EFC46020BF671B3A8341F89F2582892D0F +:10ABE0006917BD5BCBAFBF7C8D71500BF55C2E91AF +:10ABF000BCCE87887EB0A8044E467CF90F1ED22EAC +:10AC0000E07DAE054645FA0787A515E44D4CAC340A +:10AC10004B5A3144072743F2A2EC2AECCE93436708 +:10AC20002FD416EFEDA049B5418791D8584D9562C4 +:10AC3000995BE0EBA8FDE699F2C64E18E08D48035B +:10AC4000170E0E508F0EF52348341B6785ABB312D9 +:10AC500086527E6E8ABB9BB8A07F1CA6C12AC5C641 +:10AC6000DB891510E4B9B260C989CE33AE93865C36 +:10AC7000F98051BE734212D75A95A9C0A81082E03C +:10AC80003E1B8F5F1FEB0250BF93E8D32A254CEF8A +:10AC9000D4939ACF4A396FED008EE945BB27E6F68B +:10ACA0004B44A72B5BDDABA095D3729258E1EA0F22 +:10ACB0007E64AE0FB8802B8370CE3F53BBC8DC7070 +:10ACC000D54C71D419569E56ACD973F121DB3FAFE8 +:10ACD000BA8F519E04F3336BB4C77958491050A210 +:10ACE00072FD18AB50B9E729B97EEE4D361B001244 +:10ACF0008D31254A5CC0729829151BD412F340F699 +:10AD0000C5587EBBFA36672FDD0D70D3B0A47181B4 +:10AD10000967BC71F77B0073AAE59AC372CCB3755F +:10AD20000CB06C5F9ADE46175598171931B6188A21 +:10AD3000688C438329E87CB13364EE4D4D68B79845 +:10AD40007200E13C8656FCB1A75F5A4011711ABCF3 +:10AD5000476B7B1935B2CC46DC9187DCD1F2C3D688 +:10AD6000FE8582AA90E0C168ACC692158DE014FA07 +:10AD7000C64CB9420FBA1BDC500336AFC36C47E078 +:10AD80003082BAF30AEBD5571623E4B460098DC0BC +:10AD900087730E79184093A5B8B633124F9DA83427 +:10ADA0000C1C39FF2C00679B60A1760C6A5A67FF68 +:10ADB00066F5369A3B8E8C9A75485E9EC413FF0CDE +:10ADC0008A01F08E12B319AC9FC57F62D43EC9EAE6 +:10ADD0004B2A687B7102371D55DA50EA585C2F21E7 +:10ADE000CBB1ADBF2281981B5422FD41736DB4F8E5 +:10ADF000467521DF41C24D3CEFA62AA681D491358C +:10AE0000B4C1B901211C435C99CEA08FE7F7A81506 +:10AE100034A79E57097D3E6768967E426E2FA13B00 +:10AE20003C001EA3D71724B0B833F3AA8CD5E94150 +:10AE30008CAB9E7E987C56D8E7ACD3CBCB29BB2E6F +:10AE40009B2BEB14CBE2C80CFA98C1015D858C8179 +:10AE50007CE610E90D939DA971231F0B40967BDBC7 +:10AE60006F3AD88B93DB9F9077FA21169EDFE34BE6 +:10AE700067805A1E606D302D1E3947F18C5902C310 +:10AE8000A67C0307E5FD9B58EEE048BF58C2ECDF07 +:10AE900088EA5977CD76EDB4FE5A9FB677E8630D10 +:10AEA000E843D67F187E9870F25DD9A1103181D227 +:10AEB0004418FC7C1231DE5EA591F961AED75AD8F8 +:10AEC00095DB03ED4B2FC69BC0F30E4543765276C0 +:10AED00093C71AC8A1054B3E95000ACC268E346F45 +:10AEE000D5ABD85703E9D44CC7FEE82C7212F276E2 +:10AEF000E91EB3B07E2D7ED47D548AACD8B1C55D39 +:10AF000003CDC7F851D786F9CD0250293888217D65 +:10AF100090618943B7D5E7136F3FB7060F9ECD5BAE +:10AF2000B8318E5697DBE5A6A1657C6787B343E809 +:10AF3000F2C933E73D78C1F79CA2DC9CDB124CE1FF +:10AF40004F5CFA0B3A00C114293F6FE523693EBFFD +:10AF5000AD05985AF05B4ACD56DBD696FF9B81A88B +:10AF60003896F8B2A0E06DA1BDF50CB33AA72D9AC2 +:10AF7000D65CDE2B520AAA50E5A9EBC9E3606A53FE +:10AF80003688E0541832864BB2FDAD6B14EDEC4FB1 +:10AF90005DFAF75798984BD0CC365BCDCDC7FE867F +:10AFA00085784205E63EAC16948694E0500A0E5130 +:10AFB000DC64AAEC8ED6953FA49BD13293DACF3FC6 +:10AFC0001B15FAD6A46834069F5AC574702D6649BD +:10AFD000EE8A379A04464C9E29F7EFCD7748271121 +:10AFE000FA1050C6ED584444A49D2BCB9C6A187BA4 +:10AFF000DA18F3566FEE3B5D7195F14E6912C03C65 +:10B0000047033499276FF0561CB69A5CF22B3DF338 +:10B010006D5245892F7232DCC5D2BC62490BFF8F5D +:10B02000AD6B072B9F9BD8D63539405C379B68B8F2 +:10B0300069512447120A587DDA10438917EE5CF9EA +:10B040000A0896B3EE52C2D83B65A412DDE41C1484 +:10B050004DDCB7CEA0A14A65D32A832FD8C010F00B +:10B06000B0F88DCB0AD40DEC5513375A4E73867C4D +:10B07000DDC54A7ED8C3B7EB20069606DCE6D89538 +:10B08000553798367F6E9A0766CDD25FBAE0EEE00C +:10B09000151C8379897386620C582FFCA2C3FDCFDF +:10B0A000A80F12BDCAE9E3CA7C04137BA35D74BC7C +:10B0B000EDE609671C2F8790B4FF65D848E97A9BB5 +:10B0C000D083CE2F59A8F2F635CDE509C69F47EAC1 +:10B0D000C5B4483EED1A7F6966EB2659F98C0FAC72 +:10B0E0006083CF36A72A2D866DB62F0367EAEF5E01 +:10B0F00012F8409937FF0F1FD045BB6B81D1E2F3A7 +:10B10000CAF265ED480F320A4566C867B43D4E3F46 +:10B1100056A554C3C21DDCBD8DF86D7E2EB2F67BE4 +:10B120008380F5EB789EB6890DB47CE47B1D8E4E52 +:10B1300042DF85B40C5A01D2414C72A4AAD71E0436 +:10B1400051B3428EC8F5FAEEF7D3E820B8DA973E4D +:10B150003C8D0384680B9D02868CE24A64D589E1AC +:10B160006083F36BE9F4C9549C50EFE501D20C49BC +:10B1700029E688AFFE941D6D4DAE833AD7EDB71525 +:10B18000C58D0FAF90224374E465E2E9EFD05BDF39 +:10B19000A5601849EA88221210094A547B177FAD2E +:10B1A000CDCBAFEBCDF8D450653E82A86CD7A4C709 +:10B1B0004FC60D87C86C47D61423EB1FE9E906B5C7 +:10B1C0009A32EFB4204468D9E4B6799121601778B7 +:10B1D000901F6A9DCF1CEF4E0BC428D9743D1B9D58 +:10B1E0001E4432580CB598D4B1BF411F1FB4F4B3FC +:10B1F00084ACF14C4EAC2415495402E0B4A920971C +:10B20000084313E591F0DEC741B3B74B1AEDFFB227 +:10B21000EABDABC64CC7412A2E65BF0AEC52A59EBB +:10B22000593F1EA923001B77E5FC248FA1C102A46E +:10B230004A415337FC7A249CA885A7E88BE866FD31 +:10B2400004897CFEDCDCEDAE09DBE64B1A5A60F2C9 +:10B25000BE87ED45F9E0CD67C35DFD2AFBCF4940D0 +:10B26000FCB30A89BF3D87B07C5058EE144DD4B36F +:10B27000546E861B506E15C8A59BCD28CF46C23391 +:10B280004577B0FC86AF2945B1E62424ACE39DECBC +:10B29000B17624368B447B196EC0FF3C3F11BEBB98 +:10B2A00000E32A4F0A3D97D4CCC4FDBADD8AE14CB5 +:10B2B000CCC2ED4551AC9E7EA09F03E89DF3DE38E5 +:10B2C0008CE11D7C848E542A89093EFC00A5DB1E7E +:10B2D000778F4F68B35657374CF3FFF52BD29E4C00 +:10B2E000443527D3355C824825C5A80B8F9C6B0954 +:10B2F00054E15F40FDC951CBD483F8B3C516642631 +:10B30000637536B062842700CF51B53859A57BF1FB +:10B310001959014E1D5E6F764732801DA49F2DB9CD +:10B32000C31A9B7AF8C274E37A8983BF95EF4C46BF +:10B330003ACAD522B6B754732782CFAE5AC0840E0C +:10B34000E00AE67DA3D546D09897434F28C4290C40 +:10B350003C6E8212786CEB4D30F0645D0BE41A2386 +:10B3600085F0FE293C6F2B55AF194C498B4114C712 +:10B37000A32D45B66E52320D7B085A04EF6DBF0BFC +:10B380005AB8817AE08A5D65E68C947F3AB1A9A5C6 +:10B390001FCEB9238671F6635229DD7F4F5504987D +:10B3A0000BBCDB78A17A3C1EFA30855FE1A3A26575 +:10B3B000F65E68E41AA6FBFBB6674E5E2027BB96D6 +:10B3C00084BB57C119025B0BD2611273F645DD20B5 +:10B3D0006132D972C9CF1D4FB6F979218788158C92 +:10B3E0002115ED00225ED37442B99806D539A88F95 +:10B3F000EC7D18BBD958E6FB22F46F5233862068E7 +:10B40000C223004DFE0B6E2A4C8964C270CAF0CD77 +:10B410006DDBB801E7DE84A1E9CC6881BBDE706535 +:10B420005FA7BDF3356EF88B1F3F94D0DA2C006B0D +:10B43000098F7EC3441C6DB0249CADB2713ABD74BB +:10B440003942F610012B26CC37DF3EF2D0CC1EADB0 +:10B4500023FFA5D32AEA1DCC33C6124A4A7BDDDA84 +:10B460008731B046280D5C3AE5E8E6C08BF0C9CCE0 +:10B470002B1CA3582CA1DCF0B95E1F9B2604453C75 +:10B4800099BA892DB4B9F66ABE9E73262FA369D6E0 +:10B49000BC793E6EE2D84C79EC2161912302465092 +:10B4A0003CF6C885AE9F0EB41058D54E56F10B72BF +:10B4B0006A205194BCEB7B6AA4865C04F23FA7D857 +:10B4C000B28AA7CC1D8DE2B6EF8A891DD0E8CA5793 +:10B4D0000914BD77F98F08C07EF7A31AC7FBDC37C4 +:10B4E0001230FBC2BCFA8E20FAD2C904AAAB859BEB +:10B4F00054BD4A524B6A131846D96967AE82E93780 +:10B50000D662CA48BE7F89D65BD990434D471A861A +:10B51000E76930EAE38B355B710D0CB9F777381AC0 +:10B5200099EDF4B593FEA35B97229CAAF2F7A003D2 +:10B530005DB12CCD21889F47D5296717B0E011A3B5 +:10B5400088542954C7B978307D64CDB71A5BC25985 +:10B55000318C1A5B902F5F80E097F85B05954FFD6B +:10B5600057DDF29232D5D8D0583E51D5FBD9C0E044 +:10B5700066D926C418930DFE8421F71BAEE290E62F +:10B58000148A6D3AB3C67804B258F5897A67A23442 +:10B590004C1C4A5E62911DD1AF8D5A64715C3C8235 +:10B5A000848FAB19A8128FC88C46193C12FD6DFE12 +:10B5B000B0225A4903587B0CDB498708D0F7E8F1E1 +:10B5C0008A8D5200402938B77DBD12B97E5F7E5802 +:10B5D000A8B2A847AFE2158DBCEE2016CF9CA119EA +:10B5E000BB85D29D5E1F0CD6314D68623712333356 +:10B5F0001E7379678F42F369755B99B802F123195D +:10B600004E7B578C3E3CC1BA9F0FF1F838584AB573 +:10B61000527B8DA826CE9DAD0079896942F179D6FD +:10B62000BB26741C2D7513EC4F2CDF4DE319EC5C1D +:10B63000D2DB301A0FE22E11FF017BD5533FC61526 +:10B640008A764DB503AD8C7503204051A441DF1EB1 +:10B65000307F7F6EE562404225CFC34532460E1AE9 +:10B660007520B049728F55E0BBAEBB6A6878A6F50D +:10B67000CA609B674E2FCAB604977E4FE1C5FA2673 +:10B6800068D9744CD6DA98B63E2EBD828E58AAF18F +:10B6900019732DBB5FC247C2DD5E8F246264EBE588 +:10B6A000324CA3805403750A0F7F518425C5AE78B0 +:10B6B00008B0B1E5708828C324E6BA430E927ADD5B +:10B6C0006081436AB236AE9C1E4F45E8C5B47AF03D +:10B6D000A7C53CEFE9E5844860291A4D0CE0A89421 +:10B6E000F4794C40A88C47EA1E35571A9D2A99D503 +:10B6F00068CD454F2EFEADBC6EC0A77DCA77B59E06 +:10B700001208A05C9477321B1B790443C6040F44D3 +:10B71000A0E463BFE98BD865EAD336ADC974F355AD +:10B72000BEF93EE57E11DF848B16C6DF55820571BA +:10B7300063F6038A48E9D633361938F13C66DFFBF5 +:10B740002DA8E0B5947DB8A1502177F100C4D26452 +:10B75000FBF323FF8E9202BC583566AC44C890A020 +:10B760002943A8E2AC35386B2CACC7612EE7E98FD2 +:10B77000C36BD69A2F04F4EE13FC26A2CAA126515D +:10B78000E28AA892D634F92D7E21C7A9F57B1D4304 +:10B79000F5E391758018B4A3360C65DE06A8D5A72D +:10B7A0003497310B9C7682097C45EEDDD737698072 +:10B7B0008D3EA8291EE4C69E6C4C71F607A016F1BA +:10B7C000D12B8C8A8423B3A32F4A327DC54C12E936 +:10B7D000409730AA5D936C5EF41B3078A33D7D47A3 +:10B7E000F712CE5321C52DF91AAD4F9F08E0C6FAC6 +:10B7F0005C0295A55EEA39BB82414E9A38FCDB9922 +:10B80000EA660B244858DF6327644D596568537F07 +:10B810000370B54430C819F064D33A3F11B06B8B54 +:10B82000DB8BFE005663DE37A4BA44059A74B12060 +:10B83000AA04F66C52EB73AAD240E5C3A23E0913E8 +:10B84000828B47887BCEEA2A8053B7E28FA0603193 +:10B850001DA4839D380099EAE27B00887BFCC3D35A +:10B8600025ED98A00D23109BBE9F810C009BE6D870 +:10B870009B6C1BB1EED6E3659C40F4C14A93AA8A47 +:10B8800070959FE9170DDBBF0B692F89B6140EA2C7 +:10B890000F8080A35B461C2AA8629D05185A325C63 +:10B8A000136AA9433C49B059EBE82F058033704730 +:10B8B000B431A151E5FCD3A633752B9F2B3803E19E +:10B8C00060645316CC6B91E63E8F4905145D24E00D +:10B8D0004A5C4D576AC8BB1407FA04860A23E6FC83 +:10B8E000A736BF8ABA7E5F6C12639CDEDEDF5CA186 +:10B8F00090147CB9DCFEC6CF95AEFAD3D5A32392C3 +:10B90000FFFE052CB1A7D82697F98BC08F976F63E0 +:10B910004E39A6FEAAA0142C1CCB785DEB1E6E0639 +:10B920000D73F78ED71D88086291C7F88E567E3842 +:10B930004C3F302400D3B7FD982E98BB53DA9D744A +:10B94000F3064A9EC6CBDF2A18BAFB98538A83298E +:10B95000AB455203BF60D8BEBF036E7220C47333C1 +:10B96000A298A248FA1EEDC773937FE7DFEF5A371C +:10B970006522D615D4A3A036543223B25F7F47BCCC +:10B980006F2255168615C7C70C27F293396F6ED3F1 +:10B99000944CEFC7AC542A926F2A86241AFC65B0E7 +:10B9A0004CE7EF089A0486797508EDEC779996DAFA +:10B9B000B1B9C228CFD8EDF226ED8FEF143496043A +:10B9C00040EF0DEF2CFA85C63F916696BDD0D97138 +:10B9D0006B27E9F18E51068AAE60C7615351D0D60C +:10B9E000260C4A3EE8EB503E989E99219E6DBA89FE +:10B9F000457CA441CE4C7FB2810DB63C26065FCC7F +:10BA0000AEAD264B8B42BA695D2FEEC8E6310E848F +:10BA100050BF751DB3DE40365A83B25786B1C84B4E +:10BA20000280CAB6194085C5A36F6AA500C374A376 +:10BA3000319A5EF55ECDEABC72A1367F293B51B0EA +:10BA400099294AEB086E16619210C2E482CFF45134 +:10BA50009B26B06C820C5D1A2CD14760C2091E6611 +:10BA6000E20FB0604772953C843E71829E928605DB +:10BA7000BEBBC8B31266D93FEFF6D21CA3EF2F7836 +:10BA80006DEB98A50A51477ED54F0060612D541487 +:10BA90003244B165937A90AAC3EEF7910A079540B4 +:10BAA000EA933552750CFE6439243CBA74C5A51767 +:10BAB000E7B80C8A468429B7E639113B48926E34C0 +:10BAC0000EAC2E8B4FA938E242FEAD0452AF99F472 +:10BAD000671E6362A726480730FEFA17C7A92D54D0 +:10BAE0003EB198A08ADC8C80AD7ACEBD1ADE38B526 +:10BAF00027AB0BA5E3B494F98F5CF83FE61208235B +:10BB0000308CC731D80259EF7000033360DE67CE46 +:10BB100015AEBAF74F6527077B7EFA1D7FE60CAAA4 +:10BB20000B1F60CC3267C8CB58AF7B387920A4B0EC +:10BB30001EFFF026DD27E1896D479C20B146F8A75E +:10BB400060A1489BCD942E97047E67466B9A098B23 +:10BB5000A3E4197A4A0ADE92C794D56AADBB40AF16 +:10BB60008176A4CA7078A10223863CB3C3CFDA04DD +:10BB7000F6EF93468B626726CCAEAACAFA3E1A3419 +:10BB8000796124742ECBDD89E31C9EC7AAABDB0E42 +:10BB9000446CC42984737FE3A1042A7B89A51EE138 +:10BBA000927955A52494B0F46F27C995DF4CFE6BAC +:10BBB0004C1EC8E13287617715694F12B40DF03819 +:10BBC000CBD2434C32B15318F62888E4E33D4C2CD9 +:10BBD00035E8144B2FDDCF6B94E68D6F8C8FA7D596 +:10BBE0003B451B86DE672CD4BE12334BBAB666C407 +:10BBF0000CFF51522C1BF4E70EBA6D8162D97BE326 +:10BC00004901CD933103AE568530C50AD6C041CF28 +:10BC1000D50F16736971A9FA6CDF860E45DCAF701B +:10BC20000B446DE5EC0A6BEDA76165DAA21E646B4F +:10BC300088F7706BA0E65788CB71BF757A01D21C6C +:10BC400015CB15D4D2404DC22132E34F2955903A3D +:10BC500074C7A131726AD204F61C7164A191117D7E +:10BC6000958F7FDC31E3A7290C212459906BF36871 +:10BC7000F9033C8D1BCFAF2152A2150A05336A533D +:10BC8000CE5ABA193E79062EEB778E93787C5E7C7D +:10BC90009A53DA027CF802CBFCDE48342B7A2F115F +:10BCA000BA8C9281FAD1C7265AB6A2DBA058CC1220 +:10BCB000E1D65615554EF7B90AC44AA238D0C79AEC +:10BCC0009FF62C5DF58550441BD6629948065E01AF +:10BCD000EA17349382224A396CA0D1C08887B25BBC +:10BCE00010FEB409C2EF11474EEE93EDBC2920902F +:10BCF00060CE95BC532A0B3FC421C7352E70C9E5D1 +:10BD00002416196ECEEA936E7523BDEE0AC51C9CEF +:10BD100009CB6E00A9BCC698E30C6BBF99ED137DEF +:10BD2000FFDB80BC5559B2D25B931D0455808891CE +:10BD30005EDD3D340444177F46562139F09DE7B15E +:10BD4000F5B917E031C546FD60ED9C643B8C73EF9F +:10BD5000468EE59CD39CF1DA12CFB8DEF45513B8C9 +:10BD60007480CAA316CF0695B846DBF2444ECA606B +:10BD7000C27A1E6A60EF1571426237415B3986AE46 +:10BD800002803CF72BE59849002F580E6698150164 +:10BD90006B9908766F7F569AC440F651912E083EF3 +:10BDA000C6003C75AA64703D02B939CC26B7BD63A4 +:10BDB000D6AF1AA0F0F8F9F98D2638BEE89BFAD371 +:10BDC000E7DFAEA87FA6DCACD4FFE1B1ABBA74FA72 +:10BDD000C09E973D391908497F2ECDC7B933174901 +:10BDE0003FBFAF18ED1EAFC5B5FEBC315849A3CD5E +:10BDF0005433637CAF2F11426C36BA854D27FFFB5D +:10BE0000D4CBFF71026C1D3F827D7694AB35BBC0F5 +:10BE1000E365AF83E751FB5ABDFE36A7B2201FA9E9 +:10BE2000B3817117F711D1AFC73ED9F2C942A9D476 +:10BE3000E5E1D88B025598A2720A0F59FA2EBCFD83 +:10BE400067BF5A5D334098EAB03FF6CB9205257044 +:10BE5000D21323643315B60A02ECCDD9D286AC0EC8 +:10BE60003C6354EB9B40B12E525835AD058BB377F4 +:10BE7000FC7A0030933C2A5F00C7A38348A9CC0317 +:10BE80008688053279562A1CF6EFFE8C474E7CD404 +:10BE9000A3683E596ECB4BF98C37B64E95728A9695 +:10BEA0007AD100758D98E6827A1D48D9FE12BC229F +:10BEB000FD9363C53EE73A5FE69F40809C9E01CEBE +:10BEC00098562C6FBFE87F8A9C951E9A7A2146D49B +:10BED0003E2D364A9086EC6D00E8021C79257F21C4 +:10BEE000A0F301A22F5D16BFD17615143054DC7B70 +:10BEF000433FBBD10CE3AB0B32E5874039AD8A1130 +:10BF000053882526564CC9C18A90B333C815E8E337 +:10BF1000342B4C8C6FA8883DCE0C90B43A0F7CD655 +:10BF20001C3037AEC1F607835601662C35547C139E +:10BF3000232ADDE968D62FC27503511FA47AEA8A45 +:10BF400095D24E6E1382A3385E28783087C09BE866 +:10BF5000D9C3AF498AF6571F93AD799C30EBCADA43 +:10BF600060A6896F966099B35FA82394CFC7A0D5C8 +:10BF70000D313E8397F5A886A4E8E0E3F87BCC2A50 +:10BF80000881BC7B28D1926FDE4DF9E6B7A59014ED +:10BF900010AB9F05641E6989AC1DE2485506FD8FF4 +:10BFA0005F04AC1B9AC81EF020847CDD67A938BFF3 +:10BFB0003CAAD5B549A4670A33A4A95A1D3581BA4C +:10BFC000CB64A4AC3E462A73BA42263FA5E393EB6A +:10BFD00037D11EEB0D29B74EC51E85262D7D692F45 +:10BFE000E444B6B0CF5AEF1E8EFEAE4793195FDC25 +:10BFF000854B02785857BDA5DB35D4AA1D55CEBD5B +:10C0000085FE9A0CBADB8E1DBD1058819EFDEFA5F2 +:10C010003940FCF29A0EEA3721426F28EACD21021C +:10C02000634B120C2885D1C328A190FE08751071AE +:10C0300077738E5A55653DF7E1374F8D1761AA9397 +:10C04000A30AFEF8E05D8AD48B52067D7748FEF1A4 +:10C050006DEEFCA6E39E084C722ECAB3524A58AF4E +:10C0600050AFE91DA08794B31430FEABE24FD5C5A5 +:10C070003E9A48BAF4F26B22A2F5624B6D2FD001C2 +:10C08000E3833FEA70BFC8867D5B6DC11AF3501928 +:10C09000412CB288C8CD63B50ACF6EBC14F05E23C4 +:10C0A000C3D279DD6293838022E6BAA4DB86AF82B5 +:10C0B0003CAD32447BF3BC12CAFE4F398B1682FD75 +:10C0C000846106D325D8FEE8F9A37175A7D511B60A +:10C0D0003C229D6D7E93F88E0D8C4235089CF75F57 +:10C0E000DE434AD537D90D1369D310980656890C0B +:10C0F000E3F8E9F9501374E7DE6D80E9F48F1B5C17 +:10C100009F02305F8D42837294EE2A4CCF37A89302 +:10C1100009608EC14A70CC2D19B837A351BC0DED02 +:10C12000E3CEDFC2D6958B350B4D35519D57CFFEF3 +:10C13000571309791345BF79938E577EE47174C103 +:10C14000A9C8725C8745DEFA8CDDCDC3C4E6BABFF0 +:10C150004982AA7E23C358B90CCBC0E3F1578B3E6A +:10C16000BB774268AD17DA1C83FFFCF5ED9BA24557 +:10C17000424FB5E525F1B35683A80DB190C5A6E4AD +:10C18000B990A0A87B5A5F9DF4A83BAA9E21981263 +:10C19000A45AAB249B7E9377DE14EC0BFE77F45607 +:10C1A00023C4434C8424C4457F5857374337C2E3E4 +:10C1B000DB148B86B01A126FF4ED93E841B3360DA1 +:10C1C000985953263AE8FF850FA091ADC588AB9FDB +:10C1D000A638C1034A1BCFFC7EF19BC02B414854BB +:10C1E000CF06790729F9C667CBEE4F6EE3128B0BAA +:10C1F000148BC02F555A7483711E4B346BD5B4BF4A +:10C200007A3869BEEDAFBF1306FFC176EDFD72B09F +:10C21000B9AEFFC9E32131C48D0B57811D529CA6D5 +:10C2200023379A180557A098FB7F08A2991722D3A5 +:10C23000B25B80298B51603727929EEE5A60890B42 +:10C24000E9E54FFCD05A9C45474306B03E4796D59A +:10C2500016CAD1C2EC7B1C0DB919A75FF35DBB7583 +:10C260005FBD5DC2A78C928AD294D5EB771C8C2AD5 +:10C270000DE842150435FC3D5BE06B051E942E82F3 +:10C28000E3AA99AE6EF3C4E391867BC81C6D4DE6BC +:10C290007E2BED7E41E56DCBE20498C92568EE83E7 +:10C2A000866C4766EF9FCF23196C7DE6EDF7C9A931 +:10C2B0003D2C4B9ECAC0A64CD1E1FD9946186C247A +:10C2C000076968FF9D9C094DB7F851387ED2F47C10 +:10C2D00036B710D285B879499136511D07B4E84573 +:10C2E0003669F6FE8A24C06F0EE2409036DC9B80F1 +:10C2F0007055B1A99001D493F4AC56965517ABF391 +:10C3000092D958C112977EEB66DF31090C7673E53E +:10C31000ACFEC910BF7E92000EEADFA648147594E9 +:10C320003D09FC05DFDCAB5250EF4CBBDFDD6CF5AB +:10C330006D021181AB12ECA80FCDB8DC62DBD04DE1 +:10C34000AC5B1BB6A4E984A058B9DC66EC5A03AF19 +:10C35000CAA345A94F326AEFC841B3DABF6AC91E02 +:10C36000A71797D012C0405A1F2FE65C20D2480D65 +:10C37000F9DF48385D38903C46CBD082A1A96B9458 +:10C38000CC627E283B5F97C0D56E453B10EC1ADD32 +:10C39000DB5C0BE728C51A480C12054403F5605E08 +:10C3A0009A473EBC5A66B5674BB958ABAC12671C8E +:10C3B000364905219625ECD365338DAF83AFF469FB +:10C3C0008A3646984C1679B49800FA2378D236F714 +:10C3D0001270FAA8AA608D692FE8C8D307744D0DB2 +:10C3E000F1658F5FB5EEE7F95B01593A96FAB279DC +:10C3F00095391EFBC2178F2B25625F4E9F880D66F5 +:10C4000099233D6A5485A994E479856F0C58623468 +:10C4100021DF575DAA891F7BB376F52BF7743E1D8C +:10C420003B08D58D3740C736D8D6364B7A59CFCE54 +:10C43000D818D97A7BCBE6F1FAD3855C752F5C45A9 +:10C44000C70FC727BA009C5950F2C133F681962412 +:10C4500005933D2BA1BD049BA6503B1C857AC85A71 +:10C46000F75A679E0EEB5C8A76A36EC9EB2C0A889E +:10C47000ABC885BAC41189B4CE7FC84AD132DCCDED +:10C48000F80E7B8AF9F5886F38D5794D4F4093E9DE +:10C4900008DF1989BBA57661684F5C10A7E763794F +:10C4A000336B1712F5E9BB0042DE49269003A77BE8 +:10C4B000D0AE04090E772C633B698D87CDCD3D57F7 +:10C4C000C1BB6E77EA2261FC503F63F95C2F062CFA +:10C4D000DD4F9C43AEA92607D227955126D525F5D9 +:10C4E000608802C792EF36FAF515EEA7CD2E6B00E5 +:10C4F000FBF4A8E7CB70F51BBAE44CE1C77A1E0D3C +:10C500005A11FB015F08EBD91AE67C320B0BF0BE27 +:10C51000ABD03C9E05BEFDE588ECBC997A04FC23BB +:10C52000EDCF8ACA1E0DF17B4A3ECA067B06430741 +:10C53000E6F06157F725FA6867EABD885F0AC95ACD +:10C540009AB0968C8D2A8475D056976536EC8955AD +:10C550006405CE6E831E286D5511D934608672EC49 +:10C56000F7A338CAC8A364B06E08951578C4AAA109 +:10C57000F6F2826B8BDB4F2557C3737A77F25350F9 +:10C5800045591AC20C52767C193599D42F4964BE8C +:10C59000F6169ECDA0C8350900D3A323E0BB094EF3 +:10C5A00079A1A488DB01F63EB39414078D66CD3CD7 +:10C5B0009E5A079D5D5EECC37CEE05B2C275019587 +:10C5C00026C97CD08D7219EFE52CAAA95B4552E7EC +:10C5D000024F260311BA22FB321100DB8A28FD6BC1 +:10C5E000AFA32B065A860B8DB9AF6849560938EFB1 +:10C5F000A445B95164D97FEFD446FB1C89EE28EDE0 +:10C60000EF4E614C239EFBEC797237963C07238FEB +:10C6100000F9B71ED45590CBB6D868BCBF192C4EC4 +:10C6200001AF9028BDCABF492940EC6B2FE6893B7A +:10C630003AB80C352768E2664B4DD282D64F566227 +:10C64000A79F58B25E27BBFCF6FF5F205FB226951E +:10C65000768F790EC6B465403D38878EB74345F670 +:10C660006B3D9F71F69353F5CE7151B76839DA413E +:10C670000D9DBB2CEF8C341AA58E00EB806CD3FC87 +:10C68000A0FCF7CE67068A83070716DC820F7218B4 +:10C690007E7890F28ED808197872FD895E52532800 +:10C6A0006A6C7D3FE0D5FCFF295442795A15A1DF21 +:10C6B000F83999424FECC6069AAED089D3B8DD63FB +:10C6C0009B8EB930595C714EFE8079E3069E3DA287 +:10C6D000D64AACF754E5CB43399B971408966A13B6 +:10C6E00087E4AF0414C1EA575508CAA60F2AB0BBA5 +:10C6F000D4122FA8E0E57F189978EBE7201059B302 +:10C70000B14E966DB21A8456C0BB0E000C758F32B6 +:10C71000783D10E0F6CF52E300C9C1E36432C3961E +:10C72000DE6321CC3639B664D967995CD4E7E83A40 +:10C730003E582BF5076A41DB82C21EC1D140A4AF2F +:10C740002085673F2FE0E68CC5EDF7C16525840A9B +:10C7500025471F56A8DE743044C2F6C39863CF281D +:10C7600044FB6C626C7389548D2D0861CF7B83947C +:10C77000985B161CD336EC10BDF0AC3C6DA796331D +:10C78000D71C072BD3FB5CB8641386F8D573D41D74 +:10C79000EF2736893D824F893E5846E5DEBB9F6ACA +:10C7A0003A23C826ABD7EF7EC2CE87CE45F880515C +:10C7B000B5CD503FD4E9F69CE39AA3E2034E33791A +:10C7C000EA34045A770082EC8640719EBC625DE1D7 +:10C7D00042AC2BA69E963C89DE4A82DE533A1EB2BC +:10C7E000DBBB8CDFC9508FD811B379E5A33C236044 +:10C7F000434C1768819FB3D9AF986459F51F6958A6 +:10C800000D7EAFBB37E6C26F46DE75F3021C9D039B +:10C810003D9A5D127E0577D7A435022911914D40CE +:10C82000EB54387EF9C5606A85C6AD823B3914E7A2 +:10C83000E717AE577DB9E33F5B8AD8B81023BA7BC0 +:10C84000CD35EC33FFDEE827676D5E6AA5AC34CEEC +:10C85000F924AF100109956111BC3CA08BFDB86BA8 +:10C860007CAEFDEB8F8F0863349CD2171CB8DA9C2A +:10C87000AF3355440340C119F4FF8C036225AF4622 +:10C88000DF6C4D4208D86134DA999BA2B693718669 +:10C890003437D3101E353C3069874D06C44BEF83C7 +:10C8A000E5C9A1DE8298C0593A0468EEB5F520E4E6 +:10C8B000E6BCC924216511AD0AC2752C026C49A1E0 +:10C8C000A281D695EFEF7E90006A191F67925E8A6B +:10C8D00047774BDF2A1F895AA079B2E65E4706EFF9 +:10C8E00007451205A38B5FBE242C180BC520F678D4 +:10C8F000828A37358280E90AA642A18688CA9A22AE +:10C9000065F2427F6F9E99F74898FAD91C8381FEA1 +:10C91000C19AF863323F587E204909A324FA56038E +:10C92000D12D98AE32204571FE68174FD3169C5614 +:10C930009211775F9509A32EA449C01D24D4C35F2B +:10C9400088EED05926AE164FF408ADB3555571F6A2 +:10C950004BAF57CB0E3423B0C76F0EE2D64B7B0CD8 +:10C96000A264D4098FCE55E1138C6E5872F02569FC +:10C9700030E5669803678F856E9C451B79314608C4 +:10C980004DE19325CF5584E35304DE0DF1E3972F5A +:10C990001402474B9D07A826807D2178966AABB686 +:10C9A000133162F7CA38F95C6629B8F2F895D400F9 +:10C9B00092F25F4C72E86FCF5D86DD7EC306233A4C +:10C9C000AB6BE7403E7DBFDEDD9360DEFA67C5B44A +:10C9D000C355C095967FD5AE529977CF90C50BB809 +:10C9E0008C33720E5011BA8DC630835B886B43AFA7 +:10C9F000BFF7143A44CC85E470D4DDC3187B1CC760 +:10CA0000B69C082FAFF334E3943B8E8B0C02E88185 +:10CA100071F176B6D5C78288EBAD6CB8A9D4719F99 +:10CA2000167588CE0A1C2E6E5B562669FABC2BA1A1 +:10CA3000EAFFEEE3BE802E0228036F06D8E8F23448 +:10CA400075F497EF8AE8191D47919D6E3C0159DDF9 +:10CA50003CF3747F57638ABF5BC31AC020A99280DE +:10CA6000A2CF517DADD0B49D5C6E264F5498B24498 +:10CA7000273F7CE9455DC467AD2B4F5CB19FFA173A +:10CA8000D11B9EB3ADFAFBE9D24EB14C5CB2CEF9EC +:10CA9000B551A8F895809F602EEC779CC9A323F52B +:10CAA0006998C8C18C00D65B0BE2DD1EBD555F03E3 +:10CAB0002CFEDE906ADEE54103DC8A117F49716558 +:10CAC000B869B61E14148E7CD79F0BF823681C9E81 +:10CAD0008AF5D9B79A55B7A000975673B5E8AC4117 +:10CAE0006D2DE72D2BA6F5C4B65FF86F63F9776F50 +:10CAF000B01798AF43E4852D9B9F3C914D53A3C342 +:10CB000043A3DA2D118358376FEF17A0F2864D54E7 +:10CB10006481819E4079D0690D260C343096D66DA3 +:10CB2000A1F036DFEE90E4E470D2B67376DA014C11 +:10CB30000A3D17FFF486450F1B3476FEFA67FB5556 +:10CB400071E3456DF91F5D83E17796BDA2D1A247E0 +:10CB50009116751F5623F08FF4E794E93424A3A5AA +:10CB6000EA304520B46C99641A4FDA26D8813C60CB +:10CB70005768AED4A649A8BA5E800EEF2F393C5054 +:10CB8000C89856B4BAB6316D3E2EF25F18F92B6DC7 +:10CB90002B1319C8F02BBCB6933A060DD2E2EDBBAD +:10CBA0003F2C66230801C6C1BCB390ECA0B382E45D +:10CBB000D2C025DB8E2BF4A5D24D68F3370B2DD9CF +:10CBC000E7D26FE22245D6652E5606C0EFC8A7FC15 +:10CBD000F148F65A587FDB03E42877134A6BF28A50 +:10CBE000D3CE62ED3B6592EDD20F79B01940AA1F0A +:10CBF0002499C16160EECCFED314DC45449B3A9B82 +:10CC00005CEAF3A0DA6AE61BED6C216524DF1F48BD +:10CC10002071428E527DABC636785586324D841EC9 +:10CC20003EC55B70CB520A36E3512780D415BF75E1 +:10CC3000530FA6CC7C727CDF9AA091C95A0DC4B464 +:10CC40000FCD0E5DEE655B049833C01E4B41431C57 +:10CC50007239347E81861D5196D7164E3961D21AAB +:10CC6000AE8B51CF6F5CEFE34A3C9846019FB96FA2 +:10CC70008E78914A4501A9CF830BDFFDB19BD1F896 +:10CC80000C3F966BD748ED1AF1A97237D2E3CC91DD +:10CC9000FC487C88691DC4E3830EE1E7B08317C4B8 +:10CCA000D8E327073F8638081ADDF0F077E0E31A6B +:10CCB00099D4C44D1AAA4D818D9E80F4349B1E8850 +:10CCC000148F705F5A2F57A58767F4F20AF1DCFDC5 +:10CCD0004C7E92C87677523E49E5D64D149C171883 +:10CCE000911D7C938C2B3DC2E3D3BA1A5C3FD511C6 +:10CCF00064722C29003E1A42547E419C3D3DF5E869 +:10CD00005B58B8F771EBE96867FC98D7F583AA9E82 +:10CD10009E595A634A99842EEAB17A93858A7D2571 +:10CD20009E159F7438D146E2DB051E7FC81B019714 +:10CD300064E64EF61E07587F8961AFE2AFB4B828AB +:10CD40003120882287628DE93B7D3F94DB5BCE6595 +:10CD500063A56600530A6B1BE74838483CE487A587 +:10CD6000821C818712068F70A4BBAE499F9FA19F32 +:10CD7000743B19166215C89E941AEC40766BE01F3E +:10CD8000DFBA95E0EF11B324D8FB46205B70FF3E7D +:10CD900010A771F6572F84BE16E5FE36C4D661F093 +:10CDA000BC22406BC0D1560F9EA790D4B484EF81B3 +:10CDB000555A37959EEE4969DFBEBDF9500C01D733 +:10CDC000DBA90A15235914B30449E169AC012535DF +:10CDD000775A2BA931C048E0E626D5F8CE9B42D839 +:10CDE00091BC79D759FF449D158A330FFD9DC4FF2F +:10CDF000A062F1EE2D59E252C190CC539E5E0CD749 +:10CE00008451942AAD63B09A474585250AC2F559E5 +:10CE100024550AC7BA7CD69B95951E9827A491469F +:10CE20001C09E123C83FBD19689136256B8DBB9065 +:10CE3000D4D74DD905BDE68DF06818CDEAC76897FF +:10CE4000B8C88928C7C8690854D2E71275C08321B9 +:10CE50004C960C38147BDABFECA547D5E19BCAA4ED +:10CE600093031F3301908D126F5E43944C771334FC +:10CE700077EC2E8BC76D2BBA221A9044B44C8131BB +:10CE8000BDE415FD47C1E840533535E22544A6E829 +:10CE9000EE07F028E273254B3621F0CB78767471DB +:10CEA000ACB037E688E87DBF1F0BB55A78AC548C20 +:10CEB000F51F5BDDE9CE4F3B10CA34C8CA5A090ED4 +:10CEC000825474D022FDC0EFE8C09B01775F2FFC35 +:10CED000784990D9EDAE2A7DAF61DBCCD37F65B9BF +:10CEE0003F05BD8EA9C84E3532183EC0BBED0D13AF +:10CEF0009EE6F83545DD5BB4B38CDB1BE1DB933795 +:10CF000026FE3540E87382DFAA291A33F23B8507F3 +:10CF10003F0FFFE59EEA887DA04A3634290D8C221A +:10CF2000EB74262766E657CB05F5726F613DBA1D97 +:10CF3000E1C56ECAAADE31C447A2964A8995829994 +:10CF400067C34C1832FC072F37BB11911C689BD369 +:10CF5000992C5E03DD84D7DCF8B35A5C506B88DE15 +:10CF6000EC1EDF5B2FBACBD48D30870393DA4D43B1 +:10CF70000D0322D779BBF3351C660629EE1388E82A +:10CF8000CF236B177D367D858F8332705520399086 +:10CF90004B8F8C81A3299F0588D4410592894678BF +:10CFA000308BE7BA64231C6E1F8CC6F8856FA315FF +:10CFB000BE3BFEA0663D65C25475B53C012759CA0B +:10CFC0000AECBF1F4BB8D536F857F2BA6D68CA5293 +:10CFD00008DED40D2CCDBD927BC4CDA209CBD920C7 +:10CFE0003E78D70B1A62FD8FBF3FC7652D5863256A +:10CFF00099F7FC96A662C83518D5EACB3C5236BBE9 +:10D00000A39A67FEC4C3840F3E8E3DCA6D2F68CAC3 +:10D01000641287FEDAF5B339B77E2791BD7B360EF1 +:10D020001379ED2CA75F874935A25C9BD5F5B39C9E +:10D030002CDA3BD7CEAA6DDAC05C01F64709099B12 +:10D040001B6E4F4EE9C1D39DFC415FC310D27A9352 +:10D05000BB7088683805983B6D5973E218C8FA0AA6 +:10D06000647245B0B2B935B5D3F5ADC13D500D735D +:10D07000232522803C915060F0FFB2C048A27D9BE6 +:10D080009673C7277A7591BEDE7A5FA177247DF308 +:10D09000C787AAB69DD4EABE440161298C355440A5 +:10D0A00020512D1E6435BBA6D89E5DAF97376C010D +:10D0B0003A3D43F7DE89B93130B442CFA1C3F23AE9 +:10D0C000AA778ABBA2F81FBAC025972C44B8E8AA51 +:10D0D00085B936C4D592FCD53775EF84EF104B5E19 +:10D0E0005F6C78D36E6BD57E6CD140E48CCFE3C49B +:10D0F000A488884C4481BB2036792CA14D76E3F37B +:10D10000149367CAFF962FA36F106D52E0F19A6ACD +:10D110008ACEF431E3C43F28BEEF4BB70F32F85448 +:10D120001B5DF5A18515A325DB9A709EEA1DF522EE +:10D130001493C559E8BD000ED445A8F65A8CC0FB1F +:10D14000F388E77F8E005249F595308C20879DFA51 +:10D15000263B665CD9624C9820BB70F20839D8DF58 +:10D16000B42A439A2B300EFF7F8C98F5751E91EFF1 +:10D17000CA9627A1AA7767EB7380F87FF577BBDBA8 +:10D18000973401BA6B00B5A687685B454C63734062 +:10D19000BFED2EBE6F64C9D1E107B0EDC5D5054A1C +:10D1A0000CCD995E07BD5C759B6EE5B7A642B59A3E +:10D1B00032EB6AA3F6850BEB4EB3D134C83E3B404D +:10D1C00037458F924E4D2CB1A6617D3EF87619D130 +:10D1D0009498D3618429BD0A8F89B1B29E0D84EFE2 +:10D1E000DEDA8BC675D387B09900C76A87714304AE +:10D1F00036F047CC1784EDB70A7C320C3469D26F15 +:10D200001A46A3FF1D9DE5C7C9CDD8CC64AB3E9699 +:10D21000626C199A196DFAF69FB78955A5331ABF32 +:10D220001568B96D7B338BDF1059F84318600DC852 +:10D230001ED9372E2DACA29F69ACFBDA75F00766BC +:10D24000A7573AE1619D0A38C6F5033BAE7C78FDED +:10D25000FE83D558D4E3762018DC4A77EF158E7C10 +:10D26000D02F2C0EA4626ADC47DB583DE979EFBF72 +:10D270007C085BE5DBA6D9221B4B82FAE4FD672321 +:10D280001EEF9CBA710890110C3FAABA4E0C5A0CB2 +:10D2900087AE5B52D9E9298277DC8D25FE6AF36976 +:10D2A000174319171B1F879AFDB52B5871D1CA71E7 +:10D2B0005DD836541D2A80742C6563EA0C349AD0EC +:10D2C000FD366303A52A49D18AC38DB107AD4E113E +:10D2D000F471362E3ABC2D3AEF759FCBC8D20704B5 +:10D2E0007FC4D5C78138AD95F717A4688293A1A4F0 +:10D2F000E2D0924CFCDFD176505FB87D85CF960CA2 +:10D30000F3BF70B99922ACE028080F50B6FE85B380 +:10D31000C6686F2394E456FC047295F1C8D8F631C0 +:10D320001DC049DFB9613FD42D6238826875FD3177 +:10D330001DCAEB491EAA61EF7A94C03546122CB77C +:10D340008887673A48BD10EC105466FA1B940F5555 +:10D3500030DA6AA8F4CD6A854DF6966DCB1F29C0E8 +:10D36000E00639B2595BEFD9B615B3BDCF2FF8E15E +:10D370005027D3429EC934FCD983ABC2D781402EFB +:10D380001F05A3EECA35BB55FC29DE1A48359B9A0A +:10D390007460C6050857C4D19D877697779D52273C +:10D3A000CAB911565B956FF0808AC458A9E9E0BFED +:10D3B00075AC8354D024D3DEBB5F97EDB000B95A6F +:10D3C000F295E18027F4D5F0F723F2A5F4A4F30158 +:10D3D00004313E1993B56414AD8FF76BDF6A8C2668 +:10D3E000871FF8BCBD98116D8697EAF83FF2654C2F +:10D3F0006915E4AC22725E4A11B8F8674268848C01 +:10D40000C57CC6A7E30C1835A3254FD16CD05DD8D9 +:10D410001A081F1F3D87D34C2E73E77FF0CE562B83 +:10D4200031198051A9DAEBED0E15D8C9A3FD07B269 +:10D43000E2D3B5106DACE146FA791927EBDA2D99F4 +:10D440009B4E372DCB5E87D6A9409EBE40142DAC97 +:10D450004BC57336540D042FB8ECD99D7730FB5271 +:10D460000568145769BC61AD121AAB38BD9994A216 +:10D47000356C56F935557A9C97BB1C7EAA57AAF095 +:10D4800006FE429A19A844F30E84D19AE187C37C20 +:10D490006D1A772658893D626C8BCF2868B4AF82AD +:10D4A000F977C61DA7E1B682CB2AC411177EE3C463 +:10D4B0004FB0127F094C1217FF6C4BB460D8D3E603 +:10D4C0003C035D225793FBF10626B16166AB5E6AB1 +:10D4D00091EEA0ECBD0B05A0A1E81604C54A587357 +:10D4E0009A61D7E0B3661EF9000984B0C5CB0D760A +:10D4F0004CD9BF6B0EEB2018C18D99AF20BF627263 +:10D50000DBE7DE6DD55B5953799F77B15334461411 +:10D51000A229614D014E9D5FB63C5D2E7D70EF18D6 +:10D52000207BEE3339BE80AA657D9B1041A734264F +:10D53000126F86443187B10B4DD52657DFD0652D4C +:10D54000023B2C426DF2ECEB37EF1E9872CE3B4360 +:10D550008E92A1EFBCD2E2F1A7C50517F8D702EA77 +:10D5600095ADA51A2297BDB0E8B380CBA788AFAC24 +:10D57000D68E2F308394DD5B273390B39556B4C39A +:10D580004E4FCFD75851A90ECB1D878546AF4A24A1 +:10D5900027B295846F2DFA36660A9FAA5613022F7A +:10D5A000BB55E7A023C8F1F170D84CFF98B7173CE2 +:10D5B0003A7439CE2D2070843E3D8811457B745BD2 +:10D5C0006FD1114C008ED921E770537CB942F3E73B +:10D5D0000A16ADA88ACE3D320DBED25135207C3719 +:10D5E0004BB931542A17A320BD612FF039DDB39A0E +:10D5F00051949258C3210D7B18169F573115ADD306 +:10D60000CD1F4866CD5417C043C5B86FA96C8AC7F3 +:10D61000E09378F1331CB89AC5223814289E2DD493 +:10D620000CCE5B78E311DC46754AE4516CAA2C32CF +:10D63000221BBB0776989836C6EF932C697B91071F +:10D64000BC6A9F08AFCBFDD483E2F6ECABDEACF84E +:10D650006BA0ACB94082B1066F01242DE7DEC7098B +:10D66000801BE6CCE317801D182E31D832406F6442 +:10D670000C35E36AD99993165F50456F25D108415F +:10D680003ED76310B9654C1FDB4FF8464C9DE90F40 +:10D6900068DF2D6E5C7C5116ADEF5DEDB0B06EA80D +:10D6A000D1217F1F6FB067A272831A52F0EF2AB7A1 +:10D6B000881F7955C1C554D8B5F653159281990D77 +:10D6C0002374E75A127DE33760D928495E0ABEC544 +:10D6D0008E5ECC068B0788FC129E3082BEE878A94D +:10D6E000CEA6FA890AE51E41121BEA311BEC22661E +:10D6F000B8C6ABE8E2D864C422497EE3F580A24113 +:10D70000DBADED1A0FF3732094A43EF37469E83394 +:10D71000318462EC07CA80993BE81D66175C55C5E9 +:10D72000C994593AF44BCD9759F41B1A3CF651E081 +:10D7300063466A0A9608FD4C17693741C273ACFC10 +:10D74000D9B9A7BA748A68062838A049B8EA400F40 +:10D75000C8B59C46B988B03CAB318161B83FBD5279 +:10D76000BF30AEA7AD8F81A9032DCCFDEF074C10C4 +:10D7700058352B0B2EF5192380223EBBA4457D3551 +:10D78000FC0314D8DFE00A424FD625D3E600C202DC +:10D7900041BA24C8366611084D9A9A35B2751EC82A +:10D7A000B6FA6CC059428A15AB95A86E55352FE371 +:10D7B000DDAAEC5C4ABA71B8CFDA0C87DCB4C3E3FB +:10D7C0005229513FACBF6135E1539FB2321AF50582 +:10D7D000C7173EF87E38D7E5BDC6BF76B1D29F8663 +:10D7E00002400E353E1E94A2A71FC39CB17520D3E4 +:10D7F0005291E199AF7DBDC826F5CCD41E65E99D57 +:10D80000D96C5912C4A02B225F0C264001A6BCDCA7 +:10D81000B82BACD0F6AE42A380B9C0A38EA8C08806 +:10D820003E59E058D470744EC8E498434823FF3200 +:10D8300015E1D87A503DAF248981379BE8F00B0B76 +:10D8400060D736AB594044A08B54638AC60BDCB713 +:10D85000F80E603EE232282EA049199318D92ABA50 +:10D86000CBACA641133F891C511310FCDC2D4D3568 +:10D870009E2B1B65CAB25AD742FDFCB90A2B3180D8 +:10D88000D0D4D139CF7F0694177B859008DF7B53A6 +:10D8900002EACDCFBF3D5E9AE2D224D1B13CDE4553 +:10D8A00010E8FA461B14BD2D52614CEE8173DF91D6 +:10D8B000D2E680B45585BF40D5C3DD1538349AEB28 +:10D8C00058ACC5867B11A7D217F7EC005AA6399C35 +:10D8D0000A4CC5AF420B8B40E89DBE859C5F403B28 +:10D8E000844F0AB3DCCF08923A2C0E80722736653B +:10D8F0005631C590E2ECB5C09E78A7FC915AA68E31 +:10D90000238BAFC7CBD4AC877EE2490B7BC5D0D489 +:10D910005A4EEC870382F397D71F837A49B2299A2C +:10D920000CD67267656E8E82AE5EF294F83A1491F0 +:10D93000593D656027D7F7822007265A321F3E756A +:10D9400065269183FF8824EA55AB3D5003F8EB5ED2 +:10D9500044DE44A8A055C9BC4DF54F0B5EDA619773 +:10D9600026E0DFF6FB2F2DBEE1550DC85D6FC7CA5F +:10D9700022E28E86B51C73E08529BE6B5D0792EAB4 +:10D980005CF6ABB21580DBD32035AC631BE5AE7122 +:10D9900019B8A72C7AC195B59AE935A1C599E58E34 +:10D9A000C016F05357D62B17E544685489F82EAFAC +:10D9B0003B8DDC4E115309127C75F892FD010B1C56 +:10D9C0002752FEC3BDFDA62F78FEF1F7554FF8553F +:10D9D00095DEBF3216B22CA4A602ED2FF4765F8E30 +:10D9E000716B605C7884B62FF79F76CB9F61DEAA5F +:10D9F0004992C0D6D1BDB9A41D970DE053B70B0411 +:10DA0000DA7DC9D5D34EAE44B9BFFCED7B5A2F6841 +:10DA1000C4A70CE59D6323DBE32247EEC317F67929 +:10DA200049C553B06C1452EC305EED36423AA983CE +:10DA3000FA1BC2457A3C53B62FFA840A80D07A6822 +:10DA4000C328D7445D7D7756381B58FCF34A6E07D0 +:10DA50000EF13874DCBB8833BB83F41943BC7DA959 +:10DA6000BFD09B34F27331B7DDFDD76D31374061E4 +:10DA700055450A3740F70978C5A4A0238196046F5D +:10DA8000C0E345AC64DCB480261E01FA340080316A +:10DA90002F235E8E0614034242D3B7E6A34520EF40 +:10DAA000D917E233672EBF90ADF3FC6A046AEE002B +:10DAB000603A346A52E26B631A84CE039D23C71422 +:10DAC000652C39A03577C31822A85978B0A103591D +:10DAD000796AFF17720A679E896595D01273CC4BDD +:10DAE000CBFF748E683A8E11AE72F5B481E087EE8A +:10DAF0005E13F262A89440B385AF2AF0894E336971 +:10DB0000AD6AE2047AD4A946E4C6D36C7D55E4B587 +:10DB10002D2E495CFA2A7DA15B49EC99967BD1298F +:10DB20008BCEF798DAA06F635702BC3B2A5C2E16A7 +:10DB30003FF3E9A587555271DD60A98E83729CBEC3 +:10DB40007BBD8980C0FE805DB9CBE27D0AAAAB1D9A +:10DB5000CD3EEB7E0789A98D7C12E64B191780BB61 +:10DB60001130FD4D4641308F43D3F3528AEA1A9E5D +:10DB70003C3B2CC5D8ABB9052233CF58D7331F381F +:10DB800062D2E023E048A28DAD888B19D575D9DF2C +:10DB9000BFD9CF0CC3D3712534C2E69D419A84E32B +:10DBA000027B1B8B3A9101047A8329B67BE2305BBE +:10DBB000C1A62AA2A75B6324D6A4F5B9E8D3C7AE51 +:10DBC000A6AF7689D6FD8390DC4B79B9D28F4AAA6D +:10DBD0007B9AF08DA961856715C0C773A73B84C781 +:10DBE00088D797C4DFC03E554DF64A9831F2AEA6AD +:10DBF0005789888FCF812133056B2F05DA6DDD6260 +:10DC0000F971EB75D97ECD770E49A5660D9DF04B68 +:10DC1000FB234212CC0CCCB45548939A8E8A3D0417 +:10DC200010B53B97D2017036A27041606C8DB00682 +:10DC30006F07F536B67719569908C197933E8F420C +:10DC4000718154937E83BC8AAB6F668033011580EB +:10DC5000FADE0D0FE8CE35FFC00B99E81C09619A7A +:10DC600047AC8E24015C1824D46F024FDE9E8A6676 +:10DC7000B4C73BC4EEC10FED169FDE38B1257C65FD +:10DC8000EFD9E6DCF8E98DA12A6C813515A90CA441 +:10DC9000FF74C87BF868C1F80DA4405C2F0693326E +:10DCA0005DBFC281431685AC8E4CD0895BDD05BA61 +:10DCB0009529C89B474DE8E1147993623DF4AC5D2A +:10DCC000B5B608F38A0B38F019330883706EC43682 +:10DCD00043A4CCB6BD7131B1141104430608F4BF9E +:10DCE000D70BF9AB3738371C355318FA2687D411C0 +:10DCF000815BD817E2C62BD9C02E60AC32BDFED8EE +:10DD0000A35A9BA1531CC66CEFE04DE1F6D2A706C7 +:10DD1000AC7E127BC0E135E4EE7A9BA0F7DDE0F645 +:10DD20003AC0F9D889007FD942F1EC8B5D851B544C +:10DD3000678CF37A653E52FA5A62C15DC444120E92 +:10DD4000B65C9EC5E34BBE1494FA8DB939E152A579 +:10DD5000CC96187F88582966CC32D785C83E2D4589 +:10DD600018531128C5763DC16F48278167D95D33A7 +:10DD7000BAFFD9269E4813F70D68925455B5D8C7F7 +:10DD80002381B01184DAB38423B76B004D7EB78052 +:10DD9000CBE8B56BAC39F5BDD67A8986494362E2EA +:10DDA000EE2EA8701CC8A93B732D90CC41244E893F +:10DDB000EC50D55C3D32F64CE2A8EDA49233550808 +:10DDC00086768F7E2EC02BDAD98309736F4B9D2305 +:10DDD0008DE4B1ADACF33EA2D9FE0190BE707E25BC +:10DDE00029517993993CE8C1E8543665C2908AA2DA +:10DDF0005022D6E447044EA4B92B2F2B2E4A11896A +:10DE0000E7BF39CEF772450B5A6F3A0400C76CADC5 +:10DE1000D77A2D4376E8D403B91DE4B3AA860ECE93 +:10DE200088E1C96D4008A7E0D1F2714804869E429E +:10DE30001CC166ADCF4E22313803B8E389E5A2128A +:10DE4000E41369A135CA91E88E3B3E0FB3A4DCB759 +:10DE5000E3402D6761F53B20E8A96BD6771687393B +:10DE6000C998CE5CCDD4A51FF13D3FE5BD367861A4 +:10DE70003D03E7B25F7FA9C248A7303A122C5FBDCD +:10DE8000997A86462B2E0D2CE349C93822491D79F3 +:10DE90000315D5F7F7229DC973787BEBDD4CFFEDB9 +:10DEA000A08D2337DB409385292519489E2DC1F984 +:10DEB000B62A96A0B0718029950A465E61C627826F +:10DEC000729C9656D70E64F09D20469C1A46CF6BE6 +:10DED000C18AF4C5F8DFBBF4FEF0C4C9553E2DF08D +:10DEE0005888FDF98A7AC25ED87C557CA6D990FB09 +:10DEF0009C6C5439A6CD86F713B6E518293CCAC8E0 +:10DF0000159E1E317F21B5FB65C4F93D42E159B72D +:10DF100055BCB2F731FA1FA16A3C6F52903F6905B8 +:10DF2000C4C9588469581512CEFD7D2F339C9723A0 +:10DF300081FE2E058C5CB9862EE6FAF33499515B8E +:10DF4000E9727C558B52768435AECF74A918A94EF0 +:10DF50003F1C3696531F270AEC6956D24EC6454AD7 +:10DF600028C52155EBBCE3B092F7997E9EE9C951D3 +:10DF70007192E5615365D719EFA77C75B9CBD49A37 +:10DF800099BE2A171C636529219C0AFD6073A5941C +:10DF9000197017EF86DB247CE65A1756DAF508630A +:10DFA000E49166751F4771F3BBDEB775C7D9C533FA +:10DFB0002AB57CF0E9525187BC28CDD2474F9591C4 +:10DFC0001B400942BCA2B0068FED89E5D0F6F1D620 +:10DFD000EE37C45571D9D8052A019AA6D972932370 +:10DFE000C06FE5373859C1A5BECEB2D53C098DC446 +:10DFF00028FA7D3FAA97AC88E6085EFEAADAD0C16F +:10E000004CFB17ED511754184E0C18DA83834B73E1 +:10E01000DF77F0E976130288506475BDE90A8BD882 +:10E0200048E074B2A6109E775A834D6ADF7EF87E70 +:10E030001E65621FBBCD3C388A4C7850F12E8F286C +:10E04000999BFE10C6526884A57E4F3F6D1627022D +:10E050000664580DF93B6F0627395D238F04507D08 +:10E06000AB8AD38C583551AE1C643A7369354299EA +:10E0700038E797EFF2C5B015CA54639EAEF1BB8284 +:10E08000FC9D544F0E6B3A9078BFAD16B490CDBB4B +:10E09000172B500F61C3F5434C3E349C6D680B83C6 +:10E0A0001128E93B9F156DFAAB1F0D7F468539ECB2 +:10E0B000EB5DF400C1BA3C3338AB8A0DCD269291AA +:10E0C00078B409518360EE79A3C2EE721E1367978C +:10E0D000082D0D8FD41F174FB9C732686C1DFA9FDA +:10E0E00038E8E17CEE4C0C30918C00ED5400F86582 +:10E0F0001DA4D2C7AC28E2B73B623DA755D25DAAAA +:10E10000D436B58CB727D926E4413F4DEE030376CC +:10E11000CC1506478941FBF979C490E16AA9CA9FE9 +:10E120005EDDAD0ACEDD22AC027193EB0B53BE1364 +:10E13000585B2D303A30413C434582E7DE95384408 +:10E14000D439DF5134827E8F8F3496104DF6E27CC5 +:10E15000F3BC55BF5004461D9E42DA9EC71472E3BD +:10E16000D356B0C7ADD451E5F368405C9A13C24DA5 +:10E1700012372F21B0DBA34553249311DFC0C559BB +:10E18000C9278DEA01077B369CEC318AFF311723C2 +:10E19000D12D8977D290247DC066CAB200387656D8 +:10E1A000F8538E4BB429274395F045F2E45AB3BD9A +:10E1B00087D29B7517F74F6357F478FC8DC1012DFB +:10E1C0008474104535F6CDC23C297089899C5EF275 +:10E1D0001060F1CCD6E7D11AEE73F4ABF52A916852 +:10E1E0004C8CCFBD858D42BA77258293DACF10C58E +:10E1F0007846CA693F0083A6E8FA664A3B60D6A61D +:10E20000945CED20721DCBA8D5B6ABE55139F76211 +:10E21000DC94E5C68C94DDAE5814DEFD04D9FC28F0 +:10E220004A258B82E92FAB0094AFE23449BAF81F3C +:10E230009CA3F339CF28AFB230BBF79BFC143CF55D +:10E240002F7322B9C25CCC191860CCC3D603D0742A +:10E250001316A3FB07417A56191B8B9FDAC34C5147 +:10E26000E32A7D50EC2B89031DCE535EACF972D5A9 +:10E27000BA0443F636155C0B7A418CADA29A7163F1 +:10E28000891615F6E783DA7EC816CC435EA4B8BCBF +:10E29000353EFAC3B2467024B9D99B65EDFA8A853A +:10E2A0008BC7C6897B1E49E56ABE9149131F894900 +:10E2B0005BD280044F32E2EC3B64CBC73C97F4E680 +:10E2C000A25837D85015E3D879CA69AC1765A0FCB5 +:10E2D000A07A51B8FE7743658DFDFB3323831BCEB7 +:10E2E000E5F83EDEDDB06B2CD38D9B14E464A41501 +:10E2F000F9E8E030722469F52DAE0DC3463B3D14BC +:10E30000B2C62DAAAB11198170ED72C3376F793384 +:10E310006783AD9BF6D0620CE190E8DA22C127AFAB +:10E32000A1F93B16060221F1BF33448EC04BFE78A3 +:10E330006A4055FE39802FC7D51C25640818EB317B +:10E340002332DBE7E8EA6D2DF52F6FC7328CD95405 +:10E35000FDB788594320607DF190EC61093DE511DE +:10E36000919F0B43355A8D26DEF68779BEB7D87557 +:10E370001B2AB15529DD74CC6F90D9B4B546D90AA2 +:10E38000630D6DB950507B2B5A107C0811D6A356E3 +:10E39000C2C8D2F5872EE5BC736FBE20AE9B561265 +:10E3A000CAC02BED61E80384F4D146E0D65735BBF3 +:10E3B00016BE1467379EF0FD76F6D8A7D1E9D41BB8 +:10E3C000CA55532C8F2FE27740EB3E703CD0E1F3DF +:10E3D00082718AACD8785006601D18F55008A7A93C +:10E3E000FB397CC034D22800F247065108DA8F6628 +:10E3F000DB35FF9E9E7A4368AAB0F707BE3665BA42 +:10E40000E364FF20389C59E5FD5901A93B15831BA6 +:10E41000668F548C2117F074B57F2095FFB969D8A9 +:10E42000415FEE8445D497B8C15F325309B47E484A +:10E43000496E35307877CD45B3891754CA61B12C10 +:10E440007D825AF7E3F76F054F7E230EFA7EE42AAA +:10E45000FA067B88EF64706F7BB8690CCC9FD82775 +:10E460002F2E4CD70668B5AA95766690667A01FC81 +:10E4700005E58921A13C5C8494644F4C6ADCD92C6D +:10E480004CA4BAF960E89ED4DD1BD513F2F54062C6 +:10E490002E0D246F112E68E4C0E66F67678BAEDA2D +:10E4A0000A1FE7A62E7813830242BED59536DF9762 +:10E4B0003045D0D6CFE0630337500A3ABBBCEDA954 +:10E4C000234BD0FFD4D5E86A55FCA81B54DD7DE66C +:10E4D000F6DC6C4844E8B25B3C4FF2CC6675B01A8F +:10E4E000A5DD3B2A49A4D67FBEDBE690EB25A745F8 +:10E4F000C4270F6F0FB2D68EDECC2C4268D81F9582 +:10E50000662AFC52014EBA37904773F32FC274AE9D +:10E51000D0CDBA481DF421B62D6ACF6F1AEFB72FB0 +:10E520006856F7E65FF0D35909C9B9DA8A33748BB4 +:10E530001C1B3E213E0B9E52454610CC20EEAF895F +:10E5400065030352CF99E8255F9BE660F7EACAD9D5 +:10E55000C1BD53EF0BD788757AC343E133B590B48F +:10E56000BF497F110AAA8C328465CF01DDDDC73C2B +:10E570004B2E30D2145A75D0202D5DCBA22FA1BEC8 +:10E5800060057F548D4A19C9DF0E141CDE89617045 +:10E5900045CBB03F939DFB9E2E46B7B473A0DDBF25 +:10E5A0009F17B412743215E3D4523684DA0B812CDF +:10E5B000F78B1D1B71D7984F1FD0BA923320A28EB4 +:10E5C000B4D799F25581F481361781E5D68B9C2D0D +:10E5D00005F06D99F5C3587726B3BFCEA093564F7B +:10E5E000FE0BD3921A9D0CFC0C1D84E8D10859C176 +:10E5F00070F01CCF3185B8F59CB70ECE4B11639CE3 +:10E60000CAE83787DA680EA96DAFFCAE854D73FF97 +:10E61000E703523FE6A0702CAD21A5AD829251E0F8 +:10E620008DC785D03E1679DC196BD490B5DDD1D776 +:10E630005D06EA6F90A900713654857D1EA100A089 +:10E640008ECE8CF3AFDD451F7405B73896C64D45A9 +:10E65000B31E30E30A7114D577829034ADB9666287 +:10E66000942D4766669A314587EF7070511446D8ED +:10E670003438D1C170D1F9A923491EA3CD93FA61D1 +:10E68000DBF8C051E223638AB30FE2427D1FAC473F +:10E690005DAEFE2317A34C55E68F940B4730479091 +:10E6A000A70892E32A348D33FC2F2BD1B75A578A0F +:10E6B0008CC53135E1E884BEE8A9C527D32D9DC6B8 +:10E6C00009E00D27A30817404E4E1918BBCCD6C938 +:10E6D000861A96FADEBB2D24FD9A02B4222EA4B22D +:10E6E0004947487BBFFD02ECD7F3ED098739800D20 +:10E6F000A1606F1331F2B9B4478CD59CEC27EF15AC +:10E70000A91E6D77F97017E13FE67D07A1EDD04FA7 +:10E71000C1E07CE4766D8D0C537588722AFFEDA202 +:10E720007B8037C0D13EC661DE708912AFE69B1D8B +:10E73000E62C3587BE39385A17FEC1BB6AF6F54A52 +:10E7400023A576118887C62B86CD90A99911C26C16 +:10E750000223BE89AFC4E9DBAAF7B0B978520167DA +:10E760006A103B32B6B961F4019A024D53261BEC94 +:10E7700046E81698ECE1CB1356C1CCD0B4F1D2AB3D +:10E7800073F37DEF0D435A2C53F2D1A040F916FAE2 +:10E79000789DD8A515C899AFFB30FDBC8AB56186B8 +:10E7A00040072E9929EDECA7495A6828795F9A37D6 +:10E7B00043D9EFA8A66986AB18D30CC1B4FF3F3389 +:10E7C000A0801C3424191B5D61967ECB805875ADEA +:10E7D00012FD92147FC5ED682FE2973C548E43736F +:10E7E000F27C9B8235943F07B75E39AB7671149803 +:10E7F000D54D491C73A5AB391DB4E21B73BC75CF55 +:10E8000026D524DBD3A3B765760B3DB2C02F79FDA7 +:10E81000295AA237B9FAAACCB2CD2AAC5A1F8BA773 +:10E820006DC164EB9A42EB80F0A102748E1E731EE0 +:10E83000F3228F4E82E5AC990754B5B8DE741963A4 +:10E840008633298A6AAAE1667271A74AA4D2662C25 +:10E85000D83F767C7B5D7C7FE9F8B8C21A6EB787BB +:10E860001D1031F380F8DA052FF18438429351DB23 +:10E870001A59D327E1F004A4EFA4B40D298D9CEF1D +:10E88000E85737A1583B4D171CAAD97E504688F24D +:10E89000D732B35FAA3F80F2BAE368D619E63011E7 +:10E8A00000DF7E2374EE4D40895797862BABF58DA4 +:10E8B000745B760C1993A5AFDDD0DDEC61D40FF25B +:10E8C000C707D4206DA939E27C3E1E24EC080B4317 +:10E8D0008A1890BAD5CFAD220EAB1927D82FA54BE9 +:10E8E0009A0193147D44D7D0865DA9C6FD1E26D912 +:10E8F00053C8B045B846DA0B3BB37E3DB42947F266 +:10E900006526BB0EE6B4FBC5AEF35292F5ACA2CDC4 +:10E91000C1F98412CBA8D2D92B7BAFD2AE1231A7CA +:10E92000206E4C6E4CC95976C9CE5419BC01C8E052 +:10E93000A800751AEAD9887FA19B51D9E7DB84FA30 +:10E940008933624E426B5C793651A6593A78118010 +:10E950004AF7B640F5B6D9AA60F945530CA7AC7A88 +:10E9600021009FFAD75DEA97FABEBED306E7D650DC +:10E97000A129FE60434BCFA0805DFAC9A60F39A63E +:10E98000E16C48C3428A7660FC1E6AF29372F6AE6E +:10E990009C06D451101B5293BC2306E01807101795 +:10E9A0005B17E963E8B9AD8DB64CA5F66A49106A04 +:10E9B000ABD4A095A79B86534E43A1368BD138008C +:10E9C000148D60D39DEC5E53A1E122F3FE128E10F4 +:10E9D000B6A9E1D3CD289D2886294511CABAC71EFC +:10E9E000A4C7A6676ABECCCB2C67F922C543F0D674 +:10E9F0005D22D7151A404D9CEB6ABAAD95491FBBF5 +:10EA0000AF3D5AEB71A7AFE4B8BC49BC70105E5B78 +:10EA1000EE722053F5E5018647E1AA2292EEF164F9 +:10EA2000CE15BA53F1344E454CA1ED2AA15ED12149 +:10EA30008FCD7F615AF20C0A28F0362FD5CCEFF239 +:10EA4000FA0E1F3AC2EF188441A4C639A03B191B25 +:10EA500006889A10F01D730FF49957BF6AF1B82316 +:10EA6000E4706B59621CF1E8446378DE6330EA4578 +:10EA700038FE9ECE7909351916DC778DD4B9DB5472 +:10EA80003DF97BDBA1B6B793F1C5D0F275F1ADC707 +:10EA90004A5B9B4DC32A7CA61FD0EB8E27AA73F737 +:10EAA000FFE3FF1958D843A2312F450D66A5CDD9F4 +:10EAB0007C6944C3C90989DFC2EF3376DC88F3A9D6 +:10EAC0000ADEC9361EC9D9FAED76A802859F97B429 +:10EAD00062598DD02AEDDB716F7392E69BB00D7198 +:10EAE000FA66B1D9B45826E812D5FA81BDFBCDCE6D +:10EAF0008205B0E53B6E99AAC696F5BE92B70E3375 +:10EB0000C9C857C8C6E5DBCE15B174D0347C858141 +:10EB100060367F388A0BD5CE4654806968648C4352 +:10EB20002D6988381261B453702E83ECAC718074F7 +:10EB30003D4927844B99FBE14ACEAEB571FF78FB86 +:10EB4000196C9C996FB1BC42116C0B31A7B6EDB931 +:10EB5000A8636E4C14EB15DBAB31C6192FF8C42E2D +:10EB60007B7F1F5732F7B3607EC57D0D4E26D407DD +:10EB7000E3599B77F49F9E3ABF993CBDE46FB5BAC9 +:10EB8000CC7C23B646BA5CBF8CF16CBEDA12DF21B6 +:10EB9000666AB6C7ECC1A751D21A7A2F1BB4DCF84B +:10EBA00030A258BA5359C9A2C93ACBD7C5E8F1C364 +:10EBB00020C9AE7E14FF132801F1305D3FC9806A81 +:10EBC000E3C7A8B9574F3F15B20692B99CAE3AC6F3 +:10EBD0000D8D97BB745DBACB756EE88B2DCDAB6296 +:10EBE000EA55453B913DB66EDE489DA2826E61813D +:10EBF0001887308354B441D8661E10C3E03E2BB54D +:10EC00000056B1F681235E9D7C4B11C37BBB1CDC9F +:10EC100069A530AE99F2CF386F818773D3C01D6478 +:10EC2000DD467EDB03F15F32CD9A86440035114329 +:10EC30002873BA91610A7C5572F435A10448B1E693 +:10EC400014F3C1BECA2DA1FFBC5A06E4351E10390B +:10EC50004A98F0DE8EF2F05B8A069D782724BE90FB +:10EC6000AA247A906F0DCE98CD3C41B0535EA1AAF4 +:10EC70001C41829533449E9F3FB42F42F40EA1A3C2 +:10EC800050A7FF6524AA5201D088F95E4DAB66FCFF +:10EC9000C7A16B3990F33D616AE3FD91931AC17787 +:10ECA0007A7E5D9D1460BD0796699451454D585F0D +:10ECB0009A41D7D246B5016B1435C459661AD79517 +:10ECC0009F7A24ADA335E5AD72A3ACC3F6CA60B795 +:10ECD0006248D3FF31C4EC8507B2255E63FC6EFF4A +:10ECE00070B10C0617E1E0EB84EF5288B2DE46FA11 +:10ECF0007D6A1CCBCC192A46BBB8885317EEFE5749 +:10ED0000DF6803A19010B6EC653033D68E1CF01985 +:10ED10002C4FC0835D2F6709417E89AEA8810045D5 +:10ED2000E0D5BF0F8F6DB86462B869AE15C2DA84E2 +:10ED3000738F9A7D1A1374EEC27154449A43C33A86 +:10ED4000E150356D0F4194FAFE49CC5E54EBA112AF +:10ED5000A7540ABC26B3CC6F7F9B26BD62D65B4905 +:10ED6000329BF636D230E7771D352A9C707705B78F +:10ED70005C50A7B719D0BDA12165F6143C90D67997 +:10ED8000587D595C24EC5A90DB32250276EA799E54 +:10ED9000303C70F88A2846210B48EB022B2A3CF1C4 +:10EDA000D7C0E8552CDDB5EF0F20C62866403114DA +:10EDB000255E4E786026BB7120334B8AA70823FE60 +:10EDC00078FD02BEB45691B753893334F3E4AD28CD +:10EDD0004C7D64C719A72480DDD78307026EF242F9 +:10EDE0004E7D7B1A884D830D88F814E2BD39CB70B7 +:10EDF000A11D5CC1380D05BA5F0E7DEEC4BF0310C6 +:10EE0000F444B1EC3350BE3BD7F8F833500122251F +:10EE1000CFA5978B63AA17DD3762F72BE9E799BD7A +:10EE200000235EFF9CE76B0BE7F18DEA9A8CFE777F +:10EE30008C1117EB844729DA4B1474007352345B3E +:10EE4000A09692824B6CF7DC1DDC7AEF253370853F +:10EE50001368FFA0F139741C213E3483D2349CB274 +:10EE6000CC2C693EA2AC42F461BD270F35D8FC56CC +:10EE7000F7949FB53619F6D3D1DFFE48CC139A929A +:10EE8000DDC1C4265AA83F259344736C3ED7B06BAE +:10EE9000BDDF9C3C304E31059BB8885E880ACF713F +:10EEA000BC5782E77246555F19EB8FB3254A18B8F5 +:10EEB00069F1A5981CF8FCC195D7229560096602F6 +:10EEC000DAE9E7D3B1704D4670E8222D323C2732A3 +:10EED0001D95F44871DB3CDE1548A5CA097CCC0BB6 +:10EEE000808F2CCC265E4B56E24B6D824EA2827BED +:10EEF000856778D33309561781EC789211DE0D3D82 +:10EF0000040FB001003F011E2837047F073C3F1566 +:10EF10003F0000000020121E053D0A1E052830009B +:10EF20003000F0D2F0D20A1080080A0101804001BE +:10EF300040403200000000070AFF0002820080000B +:10EF4000120518220004041B00100A0000B004FF80 +:10EF5000FFBF96307500C080004040010600002CC5 +:10EF6000010500DC050204064B003E000000000025 +:10EF70000000064B003E00000000000000064B00B1 +:10EF80003E00000000000000064B003E00000000B4 +:10EF9000000000064B003E00000000000000064B91 +:10EFA000003E00000000000000064B003E00000094 +:10EFB00000000000064B003E0000000000000000C2 +:10EFC0001F1E1D1C1B1A19181716151413121110C9 +:10EFD0000F0E0D0C0B0A09080706050403020100B9 +:10EFE0003534333231302F2E2D2C2B2A2928272649 +:10EFF00025240000000000000000000000000000C8 +:10F000000000000000000000000000000000000000 +:10F0100000000000000000000000000000000000F0 +:10F0200000000000000000000000000000000000E0 +:10F0300000000000000000000000000000000000D0 +:10F0400000000000000000000000000000000000C0 +:10F0500000000000000000000000000000000000B0 +:10F0600000000000000000000000000000000000A0 +:10F070000000000000000000000000000000000090 +:10F080000000000000000000000000000000000080 +:10F090000000000000000000000000000000000070 +:10F0A0000000000000000000000000000000000060 +:10F0B0000000000000000000000000000000000050 +:10F0C0000000000000000000000000000000000040 +:10F0D0000000000000000000000000000000000030 +:10F0E0000000000000000000000000000000000020 +:10F0F00000000000000000000000000055450A2349 +:10F1000001010001010000000000000000000000FB +:10F1100000000000000000000000000000000000EF +:10F1200000000000000000000000000000000000DF +:10F1300000000000000000000000000000000000CF +:10F1400000000000000000000000000000000000BF +:10F1500000000000000000000000000000000000AF +:10F16000000000000000000000000000000000009F +:10F17000000000000000000000000000000000008F +:10F18000000000000000000000000000000000007F +:10F19000000000000000000000000000000000006F +:10F1A000000000000000000000000000000000005F +:10F1B000000000000000000000000000000000004F +:10F1C000000000000000000000000000000000003F +:10F1D000000000000000000000000000000000002F +:10F1E000000000000000000000000000000000001F +:10F1F000000000000000000000000000000000000F +:10F20000000000000000000000000000003F011EA0 +:10F2100028371E0A0180000007FF00561D10E0017C +:10F22000E0000000000000000000533530303042A4 +:10F230000000000009030F000300000001000000AF +:10F2400000000000000000000000000000000000BE +:10F2500000000000000000000000000000000000AE +:10F26000000000000000000000000000000000009E +:10F27000000000000000000000000000000000008E +:10F28000000000000000000000000000000000007E +:10F29000000000000000000000000000000000006E +:10F2A000000000000000000000000000000000005E +:10F2B000000000000000000000000000000000004E +:10F2C000000000000000000000000000000000003E +:10F2D000000000000000000000000000003C0011E1 +:10F2E0000601121F1A0C0401011B00080021340042 +:10F2F000000000000000000000000000000000000E +:10F3000000000000000000000000000000021801E2 +:10F310008003120518220004041B00100A0000B02C +:10F3200004FFFFBF96307500C08000404001DC0242 +:10F33000060020124410270101BA001C05C0886095 +:10F34000483B080C580000000000000000000000CE +:10F3500000000000000000000000000000000000AD +:10F36000000000000000000000000000000000009D +:10F37000000000000000000000000000000000008D +:10F38000000000000000000000000000000000007D +:10F39000000000000000000000000000000000006D +:10F3A000000000000000000000000000000000005D +:10F3B000000000000000000000000000000000004D +:10F3C000000000000000000000000000000000003D +:10F3D000000000000000000000000000000000002D +:10F3E00000000000000000000032310C0001540059 +:10F3F000000000000000000000000000000000000D +:10F4000000002400201201000000000000000000A5 +:10F4100000000000000000000000000000000000EC +:10F4200000000000000000000000000000000000DC +:10F4300000000000000000000000000000000000CC +:10F4400000000000000000000000000000000000BC +:10F4500000000000000000000000000000000000AC +:10F46000000000000000000000000000000000009C +:10F47000000000000000000000000000000000008C +:10F48000000000000000000000000000000000007C +:10F49000000000000000000000000000000000006C +:10F4A000000000000000000000000000000000005C +:10F4B000000000000000000000000000000000004C +:10F4C000000000000000000000000000000000003C +:10F4D000000000000000000000000000000000002C +:10F4E00000000000000000000004030000015500BF +:10F4F000000000000000000000000000000000000C +:10F5000000000005030000000000000000000000F3 +:10F5100000000000000000000000000000000000EB +:10F5200000000000000000000000000000000000DB +:10F5300000000000000000000000000000000000CB +:10F5400000000000000000000000000000000000BB +:10F5500000000000000000000000000000000000AB +:10F56000000000000000000000000000000000009B +:10F57000000000000000000000000000000000008B +:10F58000000000000000000000000000000000007B +:10F59000000000000000000000000000000000006B +:10F5A000000000000000000000000000000000005B +:10F5B000000000000000000000000000000000004B +:10F5C000000000000000000000000000000000003B +:10F5D000000000000000000000000000000000002B +:10F5E0000000000000000000000300000041510086 +:10F5F000000000000000000000000000000000000B +:00000001FF diff --git a/fs/buffer.c b/fs/buffer.c index 35ac651f1937..bc750c3dc39e 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -914,7 +914,7 @@ link_dev_buffers(struct page *page, struct buffer_head *head) /* * Initialise the state of a blockdev page's buffers. */ -static void +static sector_t init_page_buffers(struct page *page, struct block_device *bdev, sector_t block, int size) { @@ -936,33 +936,41 @@ init_page_buffers(struct page *page, struct block_device *bdev, block++; bh = bh->b_this_page; } while (bh != head); + + /* + * Caller needs to validate requested block against end of device. + */ + return end_block; } /* * Create the page-cache page that contains the requested block. * - * This is user purely for blockdev mappings. + * This is used purely for blockdev mappings. */ -static struct page * +static int grow_dev_page(struct block_device *bdev, sector_t block, - pgoff_t index, int size) + pgoff_t index, int size, int sizebits) { struct inode *inode = bdev->bd_inode; struct page *page; struct buffer_head *bh; + sector_t end_block; + int ret = 0; /* Will call free_more_memory() */ page = find_or_create_page(inode->i_mapping, index, (mapping_gfp_mask(inode->i_mapping) & ~__GFP_FS)|__GFP_MOVABLE); if (!page) - return NULL; + return ret; BUG_ON(!PageLocked(page)); if (page_has_buffers(page)) { bh = page_buffers(page); if (bh->b_size == size) { - init_page_buffers(page, bdev, block, size); - return page; + end_block = init_page_buffers(page, bdev, + index << sizebits, size); + goto done; } if (!try_to_free_buffers(page)) goto failed; @@ -982,14 +990,15 @@ grow_dev_page(struct block_device *bdev, sector_t block, */ spin_lock(&inode->i_mapping->private_lock); link_dev_buffers(page, bh); - init_page_buffers(page, bdev, block, size); + end_block = init_page_buffers(page, bdev, index << sizebits, size); spin_unlock(&inode->i_mapping->private_lock); - return page; +done: + ret = (block < end_block) ? 1 : -ENXIO; failed: unlock_page(page); page_cache_release(page); - return NULL; + return ret; } /* @@ -999,7 +1008,6 @@ grow_dev_page(struct block_device *bdev, sector_t block, static int grow_buffers(struct block_device *bdev, sector_t block, int size) { - struct page *page; pgoff_t index; int sizebits; @@ -1023,14 +1031,9 @@ grow_buffers(struct block_device *bdev, sector_t block, int size) bdevname(bdev, b)); return -EIO; } - block = index << sizebits; + /* Create a page with the proper size buffers.. */ - page = grow_dev_page(bdev, block, index, size); - if (!page) - return 0; - unlock_page(page); - page_cache_release(page); - return 1; + return grow_dev_page(bdev, block, index, size, sizebits); } static struct buffer_head * @@ -1317,10 +1320,6 @@ EXPORT_SYMBOL(__find_get_block); * which corresponds to the passed block_device, block and size. The * returned buffer has its reference count incremented. * - * __getblk() cannot fail - it just keeps trying. If you pass it an - * illegal block number, __getblk() will happily return a buffer_head - * which represents the non-existent block. Very weird. - * * __getblk() will lock up the machine if grow_dev_page's try_to_free_buffers() * attempt is failing. FIXME, perhaps? */ diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c index 20736b73bc2f..4f880192b967 100644 --- a/fs/ecryptfs/crypto.c +++ b/fs/ecryptfs/crypto.c @@ -40,7 +40,6 @@ #ifdef CONFIG_CRYPTO_FIPS #include #define SEED_LEN 32 -static int cc_mode; #endif static int @@ -55,11 +54,6 @@ ecryptfs_encrypt_page_offset(struct ecryptfs_crypt_stat *crypt_stat, unsigned char *iv); #ifdef CONFIG_CRYPTO_FIPS -void ecryptfs_cc_mode_set(int mode) -{ - cc_mode = mode; -} - static int crypto_cc_reset_rng(struct crypto_rng *tfm) { char *seed = NULL; @@ -365,7 +359,7 @@ int ecryptfs_derive_iv(char *iv, struct ecryptfs_crypt_stat *crypt_stat, ecryptfs_dump_hex(src, (crypt_stat->iv_bytes + 16)); } #ifdef CONFIG_CRYPTO_FIPS - if (cc_mode) + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) rc = ecryptfs_calculate_sha256(dst, crypt_stat, src, (crypt_stat->iv_bytes + 16)); else #endif @@ -997,7 +991,7 @@ int ecryptfs_compute_root_iv(struct ecryptfs_crypt_stat *crypt_stat) goto out; } #ifdef CONFIG_CRYPTO_FIPS - if (cc_mode) + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) rc = ecryptfs_calculate_sha256(dst, crypt_stat, crypt_stat->key, crypt_stat->key_size); else #endif @@ -1904,9 +1898,15 @@ static int ecryptfs_copy_filename(char **copied_name, size_t *copied_name_size, * should be released by other functions, such as on a superblock put * event, regardless of whether this function succeeds for fails. */ +#ifdef CONFIG_CRYPTO_FIPS +static int +ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm, + char *cipher_name, size_t *key_size, u32 mount_flags) +#else static int ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm, char *cipher_name, size_t *key_size) +#endif { char dummy_key[ECRYPTFS_MAX_KEY_BYTES]; char *full_alg_name = NULL; @@ -1921,7 +1921,7 @@ ecryptfs_process_key_cipher(struct crypto_blkcipher **key_tfm, } #ifdef CONFIG_CRYPTO_FIPS - if (cc_mode) + if (mount_flags & ECRYPTFS_ENABLE_CC) rc = ecryptfs_crypto_api_algify_cipher_name(&full_alg_name, cipher_name, "cbc"); else @@ -1993,9 +1993,15 @@ int ecryptfs_destroy_crypto(void) return 0; } +#ifdef CONFIG_CRYPTO_FIPS +int +ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name, + size_t key_size, u32 mount_flags) +#else int ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name, size_t key_size) +#endif { struct ecryptfs_key_tfm *tmp_tfm; int rc = 0; @@ -2016,9 +2022,16 @@ ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name, ECRYPTFS_MAX_CIPHER_NAME_SIZE); tmp_tfm->cipher_name[ECRYPTFS_MAX_CIPHER_NAME_SIZE] = '\0'; tmp_tfm->key_size = key_size; +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_process_key_cipher(&tmp_tfm->key_tfm, + tmp_tfm->cipher_name, + &tmp_tfm->key_size, + mount_flags); +#else rc = ecryptfs_process_key_cipher(&tmp_tfm->key_tfm, tmp_tfm->cipher_name, &tmp_tfm->key_size); +#endif if (rc) { printk(KERN_ERR "Error attempting to initialize key TFM " "cipher with name = [%s]; rc = [%d]\n", @@ -2072,9 +2085,15 @@ int ecryptfs_tfm_exists(char *cipher_name, struct ecryptfs_key_tfm **key_tfm) * Searches for cached item first, and creates new if not found. * Returns 0 on success, non-zero if adding new cipher failed */ +#ifdef CONFIG_CRYPTO_FIPS +int ecryptfs_get_tfm_and_mutex_for_cipher_name(struct crypto_blkcipher **tfm, + struct mutex **tfm_mutex, + char *cipher_name, u32 mount_flags) +#else int ecryptfs_get_tfm_and_mutex_for_cipher_name(struct crypto_blkcipher **tfm, struct mutex **tfm_mutex, char *cipher_name) +#endif { struct ecryptfs_key_tfm *key_tfm; int rc = 0; @@ -2084,7 +2103,11 @@ int ecryptfs_get_tfm_and_mutex_for_cipher_name(struct crypto_blkcipher **tfm, mutex_lock(&key_tfm_list_mutex); if (!ecryptfs_tfm_exists(cipher_name, &key_tfm)) { +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_add_new_key_tfm(&key_tfm, cipher_name, 0, mount_flags); +#else rc = ecryptfs_add_new_key_tfm(&key_tfm, cipher_name, 0); +#endif if (rc) { printk(KERN_ERR "Error adding new key_tfm to list; " "rc = [%d]\n", rc); @@ -2457,8 +2480,13 @@ int ecryptfs_set_f_namelen(long *namelen, long lower_namelen, return 0; } +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, + mount_crypt_stat->global_default_fn_cipher_name, mount_crypt_stat->flags); +#else rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, mount_crypt_stat->global_default_fn_cipher_name); +#endif if (unlikely(rc)) { (*namelen) = 0; return rc; diff --git a/fs/ecryptfs/ecryptfs_kernel.h b/fs/ecryptfs/ecryptfs_kernel.h index 28725742e8f4..524abb069a78 100644 --- a/fs/ecryptfs/ecryptfs_kernel.h +++ b/fs/ecryptfs/ecryptfs_kernel.h @@ -62,10 +62,6 @@ void ecryptfs_dump_auth_tok(struct ecryptfs_auth_tok *auth_tok); extern void ecryptfs_to_hex(char *dst, char *src, size_t src_size); extern void ecryptfs_from_hex(char *dst, char *src, int dst_size); -#ifdef CONFIG_CRYPTO_FIPS -extern void ecryptfs_cc_mode_set(int mode); -#endif - struct ecryptfs_key_record { unsigned char type; size_t enc_key_size; @@ -343,6 +339,10 @@ struct ecryptfs_mount_crypt_stat { #define ECRYPTFS_ENABLE_FILTERING 0x00000100 #define ECRYPTFS_ENABLE_NEW_PASSTHROUGH 0x00000200 #endif +#ifdef CONFIG_CRYPTO_FIPS +#define ECRYPTFS_ENABLE_CC 0x00000400 +#endif + u32 flags; struct list_head global_auth_tok_list; struct mutex global_auth_tok_list_mutex; @@ -681,15 +681,28 @@ ecryptfs_add_global_auth_tok(struct ecryptfs_mount_crypt_stat *mount_crypt_stat, int ecryptfs_get_global_auth_tok_for_sig( struct ecryptfs_global_auth_tok **global_auth_tok, struct ecryptfs_mount_crypt_stat *mount_crypt_stat, char *sig); +#ifdef CONFIG_CRYPTO_FIPS +int +ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name, + size_t key_size, u32 mount_flags); +#else int ecryptfs_add_new_key_tfm(struct ecryptfs_key_tfm **key_tfm, char *cipher_name, size_t key_size); +#endif int ecryptfs_init_crypto(void); int ecryptfs_destroy_crypto(void); int ecryptfs_tfm_exists(char *cipher_name, struct ecryptfs_key_tfm **key_tfm); +#ifdef CONFIG_CRYPTO_FIPS +int ecryptfs_get_tfm_and_mutex_for_cipher_name(struct crypto_blkcipher **tfm, + struct mutex **tfm_mutex, + char *cipher_name, + u32 mount_flags); +#else int ecryptfs_get_tfm_and_mutex_for_cipher_name(struct crypto_blkcipher **tfm, struct mutex **tfm_mutex, char *cipher_name); +#endif int ecryptfs_keyring_auth_tok_for_sig(struct key **auth_tok_key, struct ecryptfs_auth_tok **auth_tok, char *sig); diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c index 6a50923a5177..ceb140994475 100644 --- a/fs/ecryptfs/keystore.c +++ b/fs/ecryptfs/keystore.c @@ -649,9 +649,15 @@ ecryptfs_write_tag_70_packet(char *dest, size_t *remaining_bytes, mount_crypt_stat->global_default_fnek_sig, rc); goto out; } +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_get_tfm_and_mutex_for_cipher_name( + &s->desc.tfm, + &s->tfm_mutex, mount_crypt_stat->global_default_fn_cipher_name, mount_crypt_stat->flags); +#else rc = ecryptfs_get_tfm_and_mutex_for_cipher_name( &s->desc.tfm, &s->tfm_mutex, mount_crypt_stat->global_default_fn_cipher_name); +#endif if (unlikely(rc)) { printk(KERN_ERR "Internal error whilst attempting to get " "tfm and mutex for cipher name [%s]; rc = [%d]\n", @@ -993,9 +999,15 @@ ecryptfs_parse_tag_70_packet(char **filename, size_t *filename_size, rc); goto out; } +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&s->desc.tfm, + &s->tfm_mutex, + s->cipher_string, mount_crypt_stat->flags); +#else rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&s->desc.tfm, &s->tfm_mutex, s->cipher_string); +#endif if (unlikely(rc)) { printk(KERN_ERR "Internal error whilst attempting to get " "tfm and mutex for cipher name [%s]; rc = [%d]\n", @@ -1676,7 +1688,9 @@ decrypt_passphrase_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok, .flags = CRYPTO_TFM_REQ_MAY_SLEEP }; int rc = 0; +#ifdef CONFIG_CRYPTO_FIPS char iv[ECRYPTFS_DEFAULT_IV_BYTES]; +#endif if (unlikely(ecryptfs_verbosity > 0)) { ecryptfs_printk( @@ -1686,8 +1700,13 @@ decrypt_passphrase_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok, auth_tok->token.password.session_key_encryption_key, auth_tok->token.password.session_key_encryption_key_bytes); } +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, + crypt_stat->cipher, crypt_stat->mount_crypt_stat->flags); +#else rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, crypt_stat->cipher); +#endif if (unlikely(rc)) { printk(KERN_ERR "Internal error whilst attempting to get " "tfm and mutex for cipher name [%s]; rc = [%d]\n", @@ -1726,10 +1745,16 @@ decrypt_passphrase_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok, rc = -EINVAL; goto out; } - crypto_blkcipher_get_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#ifdef CONFIG_CRYPTO_FIPS + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) + crypto_blkcipher_get_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#endif rc = crypto_blkcipher_decrypt(&desc, dst_sg, src_sg, auth_tok->session_key.encrypted_key_size); - crypto_blkcipher_set_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#ifdef CONFIG_CRYPTO_FIPS + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) + crypto_blkcipher_set_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#endif mutex_unlock(tfm_mutex); if (unlikely(rc)) { printk(KERN_ERR "Error decrypting; rc = [%d]\n", rc); @@ -2205,13 +2230,20 @@ write_tag_3_packet(char *dest, size_t *remaining_bytes, .flags = CRYPTO_TFM_REQ_MAY_SLEEP }; int rc = 0; +#ifdef CONFIG_CRYPTO_FIPS char iv[ECRYPTFS_DEFAULT_IV_BYTES]; +#endif (*packet_size) = 0; ecryptfs_from_hex(key_rec->sig, auth_tok->token.password.signature, ECRYPTFS_SIG_SIZE); +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, + crypt_stat->cipher, crypt_stat->mount_crypt_stat->flags); +#else rc = ecryptfs_get_tfm_and_mutex_for_cipher_name(&desc.tfm, &tfm_mutex, crypt_stat->cipher); +#endif if (unlikely(rc)) { printk(KERN_ERR "Internal error whilst attempting to get " "tfm and mutex for cipher name [%s]; rc = [%d]\n", @@ -2305,10 +2337,16 @@ write_tag_3_packet(char *dest, size_t *remaining_bytes, rc = 0; ecryptfs_printk(KERN_DEBUG, "Encrypting [%zd] bytes of the key\n", crypt_stat->key_size); - crypto_blkcipher_get_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#ifdef CONFIG_CRYPTO_FIPS + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) + crypto_blkcipher_get_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#endif rc = crypto_blkcipher_encrypt(&desc, dst_sg, src_sg, (*key_rec).enc_key_size); - crypto_blkcipher_set_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#ifdef CONFIG_CRYPTO_FIPS + if (crypt_stat->mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) + crypto_blkcipher_set_iv(desc.tfm, iv, ECRYPTFS_DEFAULT_IV_BYTES); +#endif mutex_unlock(tfm_mutex); if (rc) { printk(KERN_ERR "Error encrypting; rc = [%d]\n", rc); diff --git a/fs/ecryptfs/main.c b/fs/ecryptfs/main.c index e41b9f95dc90..9fcc63239102 100644 --- a/fs/ecryptfs/main.c +++ b/fs/ecryptfs/main.c @@ -210,7 +210,7 @@ static const match_table_t tokens = { {ecryptfs_opt_enable_filtering, "ecryptfs_enable_filtering=%s"}, #endif #ifdef CONFIG_CRYPTO_FIPS - {ecryptfs_opt_enable_cc, "ecryptfs_enable_cc=%s"}, + {ecryptfs_opt_enable_cc, "ecryptfs_enable_cc"}, #endif {ecryptfs_opt_err, NULL} }; @@ -349,9 +349,6 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, char *cipher_key_bytes_src; char *fn_cipher_key_bytes_src; u8 cipher_code; -#ifdef CONFIG_CRYPTO_FIPS - char *cc_mode_src; -#endif *check_ruid = 0; @@ -477,9 +474,7 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, #endif #ifdef CONFIG_CRYPTO_FIPS case ecryptfs_opt_enable_cc: - cc_mode_src = args[0].from; - ecryptfs_cc_mode_set((int)simple_strtol(cc_mode_src, - &cc_mode_src, 0)); + mount_crypt_stat->flags |= ECRYPTFS_ENABLE_CC; break; #endif case ecryptfs_opt_err: @@ -528,9 +523,16 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, mutex_lock(&key_tfm_list_mutex); if (!ecryptfs_tfm_exists(mount_crypt_stat->global_default_cipher_name, NULL)) { +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_add_new_key_tfm( + NULL, mount_crypt_stat->global_default_cipher_name, + mount_crypt_stat->global_default_cipher_key_size, + mount_crypt_stat->flags); +#else rc = ecryptfs_add_new_key_tfm( NULL, mount_crypt_stat->global_default_cipher_name, mount_crypt_stat->global_default_cipher_key_size); +#endif if (rc) { printk(KERN_ERR "Error attempting to initialize " "cipher with name = [%s] and key size = [%td]; " @@ -546,9 +548,16 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, if ((mount_crypt_stat->flags & ECRYPTFS_GLOBAL_ENCRYPT_FILENAMES) && !ecryptfs_tfm_exists( mount_crypt_stat->global_default_fn_cipher_name, NULL)) { +#ifdef CONFIG_CRYPTO_FIPS + rc = ecryptfs_add_new_key_tfm( + NULL, mount_crypt_stat->global_default_fn_cipher_name, + mount_crypt_stat->global_default_fn_cipher_key_bytes, + mount_crypt_stat->flags); +#else rc = ecryptfs_add_new_key_tfm( NULL, mount_crypt_stat->global_default_fn_cipher_name, mount_crypt_stat->global_default_fn_cipher_key_bytes); +#endif if (rc) { printk(KERN_ERR "Error attempting to initialize " "cipher with name = [%s] and key size = [%td]; " diff --git a/fs/ecryptfs/super.c b/fs/ecryptfs/super.c index 637877aea096..4dc5aaec99d1 100644 --- a/fs/ecryptfs/super.c +++ b/fs/ecryptfs/super.c @@ -170,6 +170,10 @@ static int ecryptfs_show_options(struct seq_file *m, struct dentry *root) #ifdef CONFIG_WTL_ENCRYPTION_FILTER if (mount_crypt_stat->flags & ECRYPTFS_ENABLE_FILTERING) seq_printf(m, ",ecryptfs_enable_filtering"); +#endif +#ifdef CONFIG_CRYPTO_FIPS + if (mount_crypt_stat->flags & ECRYPTFS_ENABLE_CC) + seq_printf(m, ",ecryptfs_enable_cc"); #endif if (mount_crypt_stat->flags & ECRYPTFS_PLAINTEXT_PASSTHROUGH_ENABLED) seq_printf(m, ",ecryptfs_passthrough"); diff --git a/fs/exfat/exfat.c b/fs/exfat/exfat.c index db46dd658cb1..abba2c584341 100644 --- a/fs/exfat/exfat.c +++ b/fs/exfat/exfat.c @@ -535,6 +535,7 @@ INT32 ffsWriteFile(struct inode *inode, FILE_ID_T *fid, void *buffer, UINT64 cou struct super_block *sb = inode->i_sb; FS_INFO_T *p_fs = &(EXFAT_SB(sb)->fs_info); BD_INFO_T *p_bd = &(EXFAT_SB(sb)->bd_info); + UINT8 tz_utc = EXFAT_SB(sb)->options.tz_utc; if (fid->type != TYPE_FILE) return FFS_PERMISSIONERR; @@ -680,7 +681,7 @@ INT32 ffsWriteFile(struct inode *inode, FILE_ID_T *fid, void *buffer, UINT64 cou ep2 = ep; } - p_fs->fs_func->set_entry_time(ep, tm_current(&tm), TM_MODIFY); + p_fs->fs_func->set_entry_time(ep, tm_current(&tm, tz_utc), TM_MODIFY); p_fs->fs_func->set_entry_attr(ep, fid->attr); if (p_fs->vol_type != EXFAT) @@ -734,6 +735,7 @@ INT32 ffsTruncateFile(struct inode *inode, UINT64 old_size, UINT64 new_size) FS_INFO_T *p_fs = &(EXFAT_SB(sb)->fs_info); FILE_ID_T *fid = &(EXFAT_I(inode)->fid); ENTRY_SET_CACHE_T *es=NULL; + UINT8 tz_utc = EXFAT_SB(sb)->options.tz_utc; if (fid->type != TYPE_FILE) return FFS_PERMISSIONERR; @@ -789,7 +791,7 @@ INT32 ffsTruncateFile(struct inode *inode, UINT64 old_size, UINT64 new_size) ep2 = ep; } - p_fs->fs_func->set_entry_time(ep, tm_current(&tm), TM_MODIFY); + p_fs->fs_func->set_entry_time(ep, tm_current(&tm, tz_utc), TM_MODIFY); p_fs->fs_func->set_entry_attr(ep, fid->attr); p_fs->fs_func->set_entry_size(ep2, new_size); @@ -2757,12 +2759,13 @@ INT32 fat_init_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, UI { UINT32 sector; DOS_DENTRY_T *dos_ep; + UINT8 tz_utc = EXFAT_SB(sb)->options.tz_utc; dos_ep = (DOS_DENTRY_T *) get_entry_in_dir(sb, p_dir, entry, §or); if (!dos_ep) return FFS_MEDIAERR; - init_dos_entry(dos_ep, type, start_clu); + init_dos_entry(dos_ep, type, start_clu, tz_utc); buf_modify(sb, sector); return FFS_SUCCESS; @@ -2775,6 +2778,7 @@ INT32 exfat_init_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, UINT8 flags; FILE_DENTRY_T *file_ep; STRM_DENTRY_T *strm_ep; + UINT8 tz_utc = EXFAT_SB(sb)->options.tz_utc; flags = (type == TYPE_FILE) ? 0x01 : 0x03; @@ -2786,7 +2790,7 @@ INT32 exfat_init_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, if (!strm_ep) return FFS_MEDIAERR; - init_file_entry(file_ep, type); + init_file_entry(file_ep, type, tz_utc); buf_modify(sb, sector); init_strm_entry(strm_ep, flags, start_clu, size); @@ -2877,7 +2881,7 @@ INT32 exfat_init_ext_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, return FFS_SUCCESS; } -void init_dos_entry(DOS_DENTRY_T *ep, UINT32 type, UINT32 start_clu) +void init_dos_entry(DOS_DENTRY_T *ep, UINT32 type, UINT32 start_clu, UINT8 tz_utc) { TIMESTAMP_T tm, *tp; @@ -2886,7 +2890,7 @@ void init_dos_entry(DOS_DENTRY_T *ep, UINT32 type, UINT32 start_clu) SET16_A(ep->start_clu_hi, CLUSTER_16(start_clu >> 16)); SET32_A(ep->size, 0); - tp = tm_current(&tm); + tp = tm_current(&tm, tz_utc); fat_set_entry_time((DENTRY_T *) ep, tp, TM_CREATE); fat_set_entry_time((DENTRY_T *) ep, tp, TM_MODIFY); SET16_A(ep->access_date, 0); @@ -2941,13 +2945,13 @@ void init_ext_entry(EXT_DENTRY_T *ep, INT32 order, UINT8 chksum, UINT16 *uniname } } -void init_file_entry(FILE_DENTRY_T *ep, UINT32 type) +void init_file_entry(FILE_DENTRY_T *ep, UINT32 type, UINT8 tz_utc) { TIMESTAMP_T tm, *tp; exfat_set_entry_type((DENTRY_T *) ep, type); - tp = tm_current(&tm); + tp = tm_current(&tm, tz_utc); exfat_set_entry_time((DENTRY_T *) ep, tp, TM_CREATE); exfat_set_entry_time((DENTRY_T *) ep, tp, TM_MODIFY); exfat_set_entry_time((DENTRY_T *) ep, tp, TM_ACCESS); diff --git a/fs/exfat/exfat.h b/fs/exfat/exfat.h index a10f48948333..22bd7283e085 100644 --- a/fs/exfat/exfat.h +++ b/fs/exfat/exfat.h @@ -534,9 +534,9 @@ extern "C" { INT32 exfat_init_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, UINT32 type, UINT32 start_clu, UINT64 size); INT32 fat_init_ext_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, INT32 num_entries, UNI_NAME_T *p_uniname, DOS_NAME_T *p_dosname); INT32 exfat_init_ext_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, INT32 num_entries, UNI_NAME_T *p_uniname, DOS_NAME_T *p_dosname); - void init_dos_entry(DOS_DENTRY_T *ep, UINT32 type, UINT32 start_clu); + void init_dos_entry(DOS_DENTRY_T *ep, UINT32 type, UINT32 start_clu, UINT8 tz_utc); void init_ext_entry(EXT_DENTRY_T *ep, INT32 order, UINT8 chksum, UINT16 *uniname); - void init_file_entry(FILE_DENTRY_T *ep, UINT32 type); + void init_file_entry(FILE_DENTRY_T *ep, UINT32 type, UINT8 tz_utc); void init_strm_entry(STRM_DENTRY_T *ep, UINT8 flags, UINT32 start_clu, UINT64 size); void init_name_entry(NAME_DENTRY_T *ep, UINT16 *uniname); void fat_delete_dir_entry(struct super_block *sb, CHAIN_T *p_dir, INT32 entry, INT32 order, INT32 num_entries); diff --git a/fs/exfat/exfat_oal.c b/fs/exfat/exfat_oal.c index 717e4bf8565d..b2172b50d148 100644 --- a/fs/exfat/exfat_oal.c +++ b/fs/exfat/exfat_oal.c @@ -83,13 +83,14 @@ static time_t accum_days_in_year[] = { }; -TIMESTAMP_T *tm_current(TIMESTAMP_T *tp) +TIMESTAMP_T *tm_current(TIMESTAMP_T *tp, UINT8 tz_utc) { struct timespec ts = CURRENT_TIME_SEC; time_t second = ts.tv_sec; time_t day, leap_day, month, year; - second -= sys_tz.tz_minuteswest * SECS_PER_MIN; + if (!tz_utc) + second -= sys_tz.tz_minuteswest * SECS_PER_MIN; if (second < UNIX_SECS_1980) { tp->sec = 0; diff --git a/fs/exfat/exfat_oal.h b/fs/exfat/exfat_oal.h index 4c7d95b20e27..642ef00821b9 100644 --- a/fs/exfat/exfat_oal.h +++ b/fs/exfat/exfat_oal.h @@ -44,7 +44,7 @@ extern "C" { INT32 sm_P(struct semaphore *sm); void sm_V(struct semaphore *sm); - TIMESTAMP_T *tm_current(TIMESTAMP_T *tm); + TIMESTAMP_T *tm_current(TIMESTAMP_T *tm, UINT8 tz_utc); #ifdef __cplusplus } diff --git a/fs/exfat/exfat_super.c b/fs/exfat/exfat_super.c index 63c19b5c6f6e..149620e9251d 100644 --- a/fs/exfat/exfat_super.c +++ b/fs/exfat/exfat_super.c @@ -27,6 +27,23 @@ * and date_dos2unix for date==0 by Igor Zhbanov(bsg@uniyar.ac.ru) */ +/* + * linux/fs/vfat/namei.c + * + * Written 1992,1993 by Werner Almesberger + * + * Windows95/Windows NT compatible extended MSDOS filesystem + * by Gordon Chaffee Copyright (C) 1995. Send bug reports for the + * VFAT filesystem to . Specify + * what file operation caused you trouble and if you can duplicate + * the problem, send a script that demonstrates it. + * + * Short name translation 1999, 2001 by Wolfram Pienkoss + * + * Support Multibyte characters and cleanup by + * OGAWA Hirofumi + */ + /* * Copyright (C) 2012-2013 Samsung Electronics Co., Ltd. * @@ -158,9 +175,13 @@ void exfat_time_fat2unix(struct exfat_sb_info *sbi, struct timespec *ts, ld++; ts->tv_sec = tp->Second + tp->Minute * SECS_PER_MIN - + tp->Hour * SECS_PER_HOUR - + (year * 365 + ld + accum_days_in_year[(tp->Month)] + (tp->Day - 1) + DAYS_DELTA_DECADE) * SECS_PER_DAY - + sys_tz.tz_minuteswest * SECS_PER_MIN; + + tp->Hour * SECS_PER_HOUR + + (year * 365 + ld + accum_days_in_year[(tp->Month)] + + (tp->Day - 1) + DAYS_DELTA_DECADE) * SECS_PER_DAY; + + if(!sbi->options.tz_utc) + ts->tv_sec += sys_tz.tz_minuteswest * SECS_PER_MIN; + ts->tv_nsec = 0; } @@ -171,7 +192,8 @@ void exfat_time_unix2fat(struct exfat_sb_info *sbi, struct timespec *ts, time_t day, month, year; time_t ld; - second -= sys_tz.tz_minuteswest * SECS_PER_MIN; + if (!sbi->options.tz_utc) + second -= sys_tz.tz_minuteswest * SECS_PER_MIN; if (second < UNIX_SECS_1980) { tp->Second = 0; @@ -276,6 +298,150 @@ static void __set_sb_clean(struct super_block *sb) #endif } +static int __exfat_revalidate(struct dentry *dentry) +{ + return 0; +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,00) +static int exfat_revalidate(struct dentry *dentry, unsigned int flags) +#else +static int exfat_revalidate(struct dentry *dentry, struct nameidata *nd) +#endif +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,00) + if (flags & LOOKUP_RCU) + return -ECHILD; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,00) + if (nd && nd->flags & LOOKUP_RCU) + return -ECHILD; +#endif + + if (dentry->d_inode) + return 1; + return __exfat_revalidate(dentry); +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,00) +static int exfat_revalidate_ci(struct dentry *dentry, unsigned int flags) +#else +static int exfat_revalidate_ci(struct dentry *dentry, struct nameidata *nd) +#endif +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,00) + if (flags & LOOKUP_RCU) + return -ECHILD; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,00) + unsigned int flags; + + if (nd && nd->flags & LOOKUP_RCU) + return -ECHILD; + + flags = nd ? nd->flags : 0; +#else + flags = nd ? nd->flags : 0; +#endif + + if (dentry->d_inode) + return 1; + + if (!flags) + return 0; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,00) + if (flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET)) + return 0; +#else + if (!(nd->flags & (LOOKUP_CONTINUE | LOOKUP_PARENT))) { + if (nd->flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET)) + return 0; + } +#endif + + return __exfat_revalidate(dentry); +} + +static unsigned int __exfat_striptail_len(unsigned int len, const char *name) +{ + while (len && name[len - 1] == '.') + len--; + return len; +} + +static unsigned int exfat_striptail_len(const struct qstr *qstr) +{ + return __exfat_striptail_len(qstr->len, qstr->name); +} + +static int exfat_d_hash(const struct dentry *dentry, const struct inode *inode, + struct qstr *qstr) +{ + qstr->hash = full_name_hash(qstr->name, exfat_striptail_len(qstr)); + return 0; +} + +static int exfat_d_hashi(const struct dentry *dentry, const struct inode *inode, + struct qstr *qstr) +{ + struct nls_table *t = EXFAT_SB(dentry->d_sb)->nls_io; + const unsigned char *name; + unsigned int len; + unsigned long hash; + + name = qstr->name; + len = exfat_striptail_len(qstr); + + hash = init_name_hash(); + while (len--) + hash = partial_name_hash(nls_tolower(t, *name++), hash); + qstr->hash = end_name_hash(hash); + + return 0; +} + +static int exfat_cmpi(const struct dentry *parent, const struct inode *pinode, + const struct dentry *dentry, const struct inode *inode, + unsigned int len, const char *str, const struct qstr *name) +{ + struct nls_table *t = EXFAT_SB(parent->d_sb)->nls_io; + unsigned int alen, blen; + + alen = exfat_striptail_len(name); + blen = __exfat_striptail_len(len, str); + if (alen == blen) { + if (nls_strnicmp(t, name->name, str, alen) == 0) + return 0; + } + return 1; +} + +static int exfat_cmp(const struct dentry *parent, const struct inode *pinode, + const struct dentry *dentry, const struct inode *inode, + unsigned int len, const char *str, const struct qstr *name) +{ + unsigned int alen, blen; + + alen = exfat_striptail_len(name); + blen = __exfat_striptail_len(len, str); + if (alen == blen) { + if (strncmp(name->name, str, alen) == 0) + return 0; + } + return 1; +} + +static const struct dentry_operations exfat_ci_dentry_ops = { + .d_revalidate = exfat_revalidate_ci, + .d_hash = exfat_d_hashi, + .d_compare = exfat_cmpi, +}; + +static const struct dentry_operations exfat_dentry_ops = { + .d_revalidate = exfat_revalidate, + .d_hash = exfat_d_hash, + .d_compare = exfat_cmp, +}; + static int exfat_readdir(struct file *filp, void *dirent, filldir_t filldir) { struct inode *inode = filp->f_path.dentry->d_inode; @@ -1718,6 +1884,7 @@ static int exfat_show_options(struct seq_file *m, struct vfsmount *mnt) struct exfat_sb_info *sbi = EXFAT_SB(mnt->mnt_sb); #endif struct exfat_mount_options *opts = &sbi->options; + FS_INFO_T *p_fs = &(sbi->fs_info); if (opts->fs_uid != 0) seq_printf(m, ",uid=%u", opts->fs_uid); @@ -1732,6 +1899,8 @@ static int exfat_show_options(struct seq_file *m, struct vfsmount *mnt) if (sbi->nls_io) seq_printf(m, ",iocharset=%s", sbi->nls_io->charset); seq_printf(m, ",namecase=%u", opts->casesensitive); + if (opts->tz_utc) + seq_puts(m, ",tz=UTC"); if (opts->errors == EXFAT_ERRORS_CONT) seq_puts(m, ",errors=continue"); else if (opts->errors == EXFAT_ERRORS_PANIC) @@ -1742,6 +1911,8 @@ static int exfat_show_options(struct seq_file *m, struct vfsmount *mnt) if (opts->discard) seq_printf(m, ",discard"); #endif + if (p_fs->dev_ejected) + seq_puts(m, ",ejected"); return 0; } @@ -1776,6 +1947,7 @@ enum { Opt_charset, Opt_namecase, Opt_debug, + Opt_tz_utc, Opt_err_cont, Opt_err_panic, Opt_err_ro, @@ -1796,6 +1968,7 @@ static const match_table_t exfat_tokens = { {Opt_charset, "iocharset=%s"}, {Opt_namecase, "namecase=%u"}, {Opt_debug, "debug"}, + {Opt_tz_utc, "tz=UTC"}, {Opt_err_cont, "errors=continue"}, {Opt_err_panic, "errors=panic"}, {Opt_err_ro, "errors=remount-ro"}, @@ -1820,6 +1993,7 @@ static int parse_options(char *options, int silent, int *debug, opts->codepage = exfat_default_codepage; opts->iocharset = exfat_default_iocharset; opts->casesensitive = 0; + opts->tz_utc = 0; opts->errors = EXFAT_ERRORS_RO; #if EXFAT_CONFIG_DISCARD opts->discard = 0; @@ -1879,6 +2053,9 @@ static int parse_options(char *options, int silent, int *debug, return 0; opts->casesensitive = option; break; + case Opt_tz_utc: + opts->tz_utc = 1; + break; case Opt_err_cont: opts->errors = EXFAT_ERRORS_CONT; break; @@ -1969,6 +2146,14 @@ static int exfat_read_root(struct inode *inode) return 0; } +static void setup_dops(struct super_block *sb) +{ + if (EXFAT_SB(sb)->options.casesensitive == 0) + sb->s_d_op = &exfat_ci_dentry_ops; + else + sb->s_d_op = &exfat_dentry_ops; +} + static int exfat_fill_super(struct super_block *sb, void *data, int silent) { struct inode *root_inode = NULL; @@ -1993,6 +2178,8 @@ static int exfat_fill_super(struct super_block *sb, void *data, int silent) if (error) goto out_fail; + setup_dops(sb); + error = -EIO; sb_min_blocksize(sb, 512); sb->s_maxbytes = 0x7fffffffffffffffLL; diff --git a/fs/exfat/exfat_super.h b/fs/exfat/exfat_super.h index 22f4ee26aecc..c85e3c84fac0 100644 --- a/fs/exfat/exfat_super.h +++ b/fs/exfat/exfat_super.h @@ -55,6 +55,7 @@ struct exfat_mount_options { unsigned short codepage; char *iocharset; unsigned char casesensitive; + unsigned char tz_utc; unsigned char errors; #if EXFAT_CONFIG_DISCARD unsigned char discard; diff --git a/fs/exfat/exfat_version.h b/fs/exfat/exfat_version.h index 36076f13e0b4..3a2281a553b1 100644 --- a/fs/exfat/exfat_version.h +++ b/fs/exfat/exfat_version.h @@ -1 +1 @@ -#define EXFAT_VERSION "1.2.5" +#define EXFAT_VERSION "1.2.7" diff --git a/fs/fat/inode.c b/fs/fat/inode.c index f78a093998a9..a9b3189bbe98 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c @@ -554,6 +554,8 @@ static void fat_put_super(struct super_block *sb) { struct msdos_sb_info *sbi = MSDOS_SB(sb); + fat_msg(sb, KERN_INFO, "trying to unmount..."); + if (sb->s_dirt) fat_write_super(sb); @@ -567,6 +569,8 @@ static void fat_put_super(struct super_block *sb) sb->s_fs_info = NULL; kfree(sbi); + + fat_msg(sb, KERN_INFO, "unmounted successfully!"); } static struct kmem_cache *fat_inode_cachep; @@ -1322,6 +1326,7 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat, long error; char buf[50]; + fat_msg(sb, KERN_INFO, "trying to mount..."); /* * GFP_KERNEL is ok here, because while we do hold the * supeblock lock, memory pressure can't call back into @@ -1329,8 +1334,10 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat, * it and have no inodes etc active! */ sbi = kzalloc(sizeof(struct msdos_sb_info), GFP_KERNEL); - if (!sbi) + if (!sbi) { + fat_msg(sb, KERN_ERR, "failed to mount! (ENOMEM)"); return -ENOMEM; + } sb->s_fs_info = sbi; sb->s_flags |= MS_NODIRATIME; @@ -1584,6 +1591,7 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat, goto out_fail; } + fat_msg(sb, KERN_INFO, "mounted successfully!"); return 0; out_invalid: @@ -1592,6 +1600,7 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat, fat_msg(sb, KERN_INFO, "Can't find a valid FAT filesystem"); out_fail: + fat_msg(sb, KERN_ERR, "failed to mount!"); if (fat_inode) iput(fat_inode); unload_nls(sbi->nls_io); diff --git a/fs/fat/misc.c b/fs/fat/misc.c index 063966665e97..316fdc20f799 100644 --- a/fs/fat/misc.c +++ b/fs/fat/misc.c @@ -25,21 +25,26 @@ void __fat_fs_error(struct super_block *sb, int report, const char *fmt, ...) struct fat_mount_options *opts = &MSDOS_SB(sb)->options; va_list args; struct va_format vaf; + struct block_device *bdev = sb->s_bdev; + dev_t bd_dev = bdev ? bdev->bd_dev : 0; if (report) { va_start(args, fmt); vaf.fmt = fmt; vaf.va = &args; - printk(KERN_ERR "FAT-fs (%s): error, %pV\n", sb->s_id, &vaf); + printk(KERN_ERR "FAT-fs (%s[%d:%d]): error, %pV\n", + sb->s_id, MAJOR(bd_dev), MINOR(bd_dev), &vaf); va_end(args); } if (opts->errors == FAT_ERRORS_PANIC) - panic("FAT-fs (%s): fs panic from previous error\n", sb->s_id); + panic("FAT-fs (%s[%d:%d]): fs panic from previous error\n", + sb->s_id, MAJOR(bd_dev), MINOR(bd_dev)); else if (opts->errors == FAT_ERRORS_RO && !(sb->s_flags & MS_RDONLY)) { sb->s_flags |= MS_RDONLY; - printk(KERN_ERR "FAT-fs (%s): Filesystem has been " - "set read-only\n", sb->s_id); + printk(KERN_ERR "FAT-fs (%s[%d:%d]): Filesystem has been " + "set read-only\n", + sb->s_id, MAJOR(bd_dev), MINOR(bd_dev)); } } EXPORT_SYMBOL_GPL(__fat_fs_error); @@ -52,15 +57,18 @@ void fat_msg(struct super_block *sb, const char *level, const char *fmt, ...) { struct va_format vaf; va_list args; + struct block_device *bdev = sb->s_bdev; + dev_t bd_dev = bdev ? bdev->bd_dev : 0; va_start(args, fmt); vaf.fmt = fmt; vaf.va = &args; if (!strncmp(level, KERN_ERR, sizeof(KERN_ERR))) - printk_ratelimited("%sFAT-fs (%s): %pV\n", level, - sb->s_id, &vaf); + printk_ratelimited("%sFAT-fs (%s[%d:%d]): %pV\n", level, + sb->s_id, MAJOR(bd_dev), MINOR(bd_dev), &vaf); else - printk("%sFAT-fs (%s): %pV\n", level, sb->s_id, &vaf); + printk("%sFAT-fs (%s[%d:%d]): %pV\n", level, + sb->s_id, MAJOR(bd_dev), MINOR(bd_dev), &vaf); va_end(args); } diff --git a/fs/fcntl.c b/fs/fcntl.c index 75e7c1f3a080..23f7bd75000a 100644 --- a/fs/fcntl.c +++ b/fs/fcntl.c @@ -25,6 +25,10 @@ #include #include +#ifdef CONFIG_SEC_FILE_LEAK_DEBUG +extern void sec_debug_EMFILE_error_proc(void); +#endif + void set_close_on_exec(unsigned int fd, int flag) { struct files_struct *files = current->files; @@ -63,6 +67,13 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags) if (unlikely(oldfd == newfd)) return -EINVAL; + if (newfd >= rlimit(RLIMIT_NOFILE)) { +#ifdef CONFIG_SEC_FILE_LEAK_DEBUG + sec_debug_EMFILE_error_proc(); +#endif + return -EMFILE; + } + spin_lock(&files->file_lock); err = expand_files(files, newfd); file = fcheck(oldfd); diff --git a/fs/file.c b/fs/file.c index cf1cc9bb5628..7b05e62d9046 100644 --- a/fs/file.c +++ b/fs/file.c @@ -259,18 +259,6 @@ int expand_files(struct files_struct *files, int nr) fdt = files_fdtable(files); - /* - * N.B. For clone tasks sharing a files structure, this test - * will limit the total number of files that can be opened. - */ - if (nr >= rlimit(RLIMIT_NOFILE)) { - -#ifdef CONFIG_SEC_FILE_LEAK_DEBUG - sec_debug_EMFILE_error_proc(); -#endif - return -EMFILE; - } - /* Do we need to expand? */ if (nr < fdt->max_fds) return 0; @@ -453,6 +441,7 @@ int alloc_fd(unsigned start, unsigned flags) { struct files_struct *files = current->files; unsigned int fd; + unsigned end = rlimit(RLIMIT_NOFILE); int error; struct fdtable *fdt; @@ -466,6 +455,18 @@ int alloc_fd(unsigned start, unsigned flags) if (fd < fdt->max_fds) fd = find_next_zero_bit(fdt->open_fds, fdt->max_fds, fd); + /* + * N.B. For clone tasks sharing a files structure, this test + * will limit the total number of files that can be opened. + */ + error = -EMFILE; + if (fd >= end) { +#ifdef CONFIG_SEC_FILE_LEAK_DEBUG + sec_debug_EMFILE_error_proc(); +#endif + goto out; + } + error = expand_files(files, fd); if (error < 0) goto out; diff --git a/fs/namespace.c b/fs/namespace.c index e6081996c9a2..4e465397e456 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -1073,8 +1073,9 @@ void umount_tree(struct mount *mnt, int propagate, struct list_head *kill) list_del_init(&p->mnt_expire); list_del_init(&p->mnt_list); __touch_mnt_namespace(p->mnt_ns); + if (p->mnt_ns) + __mnt_make_shortterm(p); p->mnt_ns = NULL; - __mnt_make_shortterm(p); list_del_init(&p->mnt_child); if (mnt_has_parent(p)) { p->mnt_parent->mnt_ghosts++; diff --git a/fs/sdcardfs/mmap.c b/fs/sdcardfs/mmap.c index bdf18fcaba4f..b0eca5119da1 100644 --- a/fs/sdcardfs/mmap.c +++ b/fs/sdcardfs/mmap.c @@ -48,6 +48,25 @@ static int sdcardfs_fault(struct vm_area_struct *vma, struct vm_fault *vmf) return err; } +static ssize_t sdcardfs_direct_IO(int rw, struct kiocb *iocb, + const struct iovec *iov, loff_t offset, + unsigned long nr_segs) +{ + /* + * This function returns zero on purpose in order to support direct IO. + * __dentry_open checks a_ops->direct_IO and returns EINVAL if it is null. + * + * However, this function won't be called by certain file operations + * including generic fs functions. * reads and writes are delivered to + * the lower file systems and the direct IOs will be handled by them. + * + * NOTE: exceptionally, on the recent kernels (since Linux 3.8.x), + * swap_writepage invokes this function directly. + */ + printk(KERN_INFO "%s, operation is not supported\n", __func__); + return 0; +} + /* * XXX: the default address_space_ops for sdcardfs is empty. We cannot set * our inode->i_mapping->a_ops to NULL because too many code paths expect @@ -55,6 +74,7 @@ static int sdcardfs_fault(struct vm_area_struct *vma, struct vm_fault *vmf) */ const struct address_space_operations sdcardfs_aops = { /* empty on purpose */ + .direct_IO = sdcardfs_direct_IO, }; const struct vm_operations_struct sdcardfs_vm_ops = { diff --git a/include/linux/Kbuild b/include/linux/Kbuild index 6d18d0ff7610..cc29cacc7823 100755 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild @@ -20,6 +20,7 @@ header-y += netfilter_ipv6/ header-y += usb/ header-y += wimax/ header-y += mfd/ +header-y += nfc/ objhdr-y += version.h diff --git a/include/linux/battery/sec_battery.h b/include/linux/battery/sec_battery.h index a075635d80c3..8574ee317972 100644 --- a/include/linux/battery/sec_battery.h +++ b/include/linux/battery/sec_battery.h @@ -150,6 +150,7 @@ struct sec_battery_info { /* wearable charging */ int ps_enable; int ps_status; + int ps_changed; /* test mode */ int test_mode; @@ -161,8 +162,6 @@ struct sec_battery_info { int stability_test; int eng_not_full_status; #endif - - bool ps_changed; }; ssize_t sec_bat_show_attrs(struct device *dev, diff --git a/include/linux/fib_rules.h b/include/linux/fib_rules.h index 51da65b68b85..9dcdb6251cb8 100644 --- a/include/linux/fib_rules.h +++ b/include/linux/fib_rules.h @@ -49,6 +49,8 @@ enum { FRA_TABLE, /* Extended table id */ FRA_FWMASK, /* mask for netfilter mark */ FRA_OIFNAME, + FRA_UID_START, /* UID range */ + FRA_UID_END, __FRA_MAX }; diff --git a/include/linux/gpio_keys.h b/include/linux/gpio_keys.h index 797390c71bed..e6f16c9e1ce1 100644 --- a/include/linux/gpio_keys.h +++ b/include/linux/gpio_keys.h @@ -1,6 +1,12 @@ #ifndef _GPIO_KEYS_H #define _GPIO_KEYS_H - +/* DVFS feature : HOME_KEY BOOSTER */ +#define KEY_BOOSTER +#ifdef KEY_BOOSTER +#include +#define KEY_BOOSTER_OFF_TIME 500 +#define KEY_BOOSTER_CHG_TIME 130 +#endif extern struct class *sec_class; struct device; @@ -28,10 +34,12 @@ struct gpio_keys_platform_data { int (*enable)(struct device *dev); void (*disable)(struct device *dev); const char *name; /* input device name */ +#ifdef CONFIG_SENSORS_HALL_DEBOUNCE + bool debounce_set; +#endif #ifdef CONFIG_SENSORS_HALL int gpio_flip_cover; #endif - bool debounce_set; }; #endif diff --git a/include/linux/i2c/touchkey_i2c.h b/include/linux/i2c/touchkey_i2c.h index 8912ae8eff8d..18b3db06afa8 100755 --- a/include/linux/i2c/touchkey_i2c.h +++ b/include/linux/i2c/touchkey_i2c.h @@ -287,6 +287,7 @@ struct cypress_touchkey_info { #endif u8 touchkeyid; bool support_fw_update; + atomic_t keypad_enable; }; #ifdef TK_INFORM_CHARGER diff --git a/include/linux/if_pppox.h b/include/linux/if_pppox.h index b360a1960be0..342179ad545c 100644 --- a/include/linux/if_pppox.h +++ b/include/linux/if_pppox.h @@ -205,6 +205,8 @@ struct pppox_sock { struct pppolac_opt lac; struct pppopns_opt pns; } proto; + struct timer_list recv_queue_timer; + spinlock_t recv_queue_lock; __be16 num; }; #define pppoe_dev proto.pppoe.dev diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index 4effce6889d9..2674891c88c6 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h @@ -161,10 +161,12 @@ struct ipv6_devconf { __s32 accept_ra_rt_info_max_plen; #endif #endif + __s32 accept_ra_rt_table; __s32 proxy_ndp; __s32 accept_source_route; #ifdef CONFIG_IPV6_OPTIMISTIC_DAD __s32 optimistic_dad; + __s32 use_optimistic; #endif #ifdef CONFIG_IPV6_MROUTE __s32 mc_forwarding; @@ -215,6 +217,8 @@ enum { DEVCONF_ACCEPT_DAD, DEVCONF_FORCE_TLLAO, DEVCONF_ACCEPT_RA_PREFIX_ROUTE, + DEVCONF_ACCEPT_RA_RT_TABLE, + DEVCONF_USE_OPTIMISTIC, DEVCONF_MAX }; diff --git a/include/linux/mfd/max77803-private.h b/include/linux/mfd/max77803-private.h index d6f414995d64..413a25ff33e1 100755 --- a/include/linux/mfd/max77803-private.h +++ b/include/linux/mfd/max77803-private.h @@ -408,11 +408,11 @@ enum cable_type_muic { CABLE_TYPE_AUDIODOCK_MUIC, /* 16 */ CABLE_TYPE_INCOMPATIBLE_MUIC, /* 17 */ CABLE_TYPE_CDP_MUIC, /* 18 */ + CABLE_TYPE_CHARGING_CABLE_MUIC, /* 19 */ #if defined(CONFIG_MUIC_DET_JACK) - CABLE_TYPE_EARJACK_MUIC, /* 19 */ + CABLE_TYPE_EARJACK_MUIC, /* 20 */ #endif - CABLE_TYPE_CHARGING_CABLE_MUIC, - CABLE_TYPE_UNKNOWN_MUIC /* 20 */ + CABLE_TYPE_UNKNOWN_MUIC /* 21 */ }; enum { diff --git a/include/linux/mm.h b/include/linux/mm.h index c9f535eb74dd..7ff7528f9f48 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -252,6 +252,18 @@ struct inode; #define page_private(page) ((page)->private) #define set_page_private(page, v) ((page)->private = (v)) +/* It's valid only if the page is free path or free_list */ +static inline void set_freepage_migratetype(struct page *page, int migratetype) +{ + page->index = migratetype; +} + +/* It's valid only if the page is free path or free_list */ +static inline int get_freepage_migratetype(struct page *page) +{ + return page->index; +} + /* * FIXME: take this include out, include page-flags.h in * files which need it (119 of them) diff --git a/include/linux/msm_ion.h b/include/linux/msm_ion.h index c2cd19cd8f6a..b78216f3ac46 100644 --- a/include/linux/msm_ion.h +++ b/include/linux/msm_ion.h @@ -406,6 +406,22 @@ struct ion_prefetch_data { unsigned long len; }; +#if defined(CONFIG_MACH_KLTE_JPN) || defined(CONFIG_MACH_HLTEDCM) || defined(CONFIG_MACH_HLTEKDI) || defined(CONFIG_MACH_JS01LTEDCM) +/* struct ion_buffer_data + * + * @handle: handle for the buffer being queried + * @paddr: The physical address of the buffer referenced by the handle + * @length: The length of the buffer referenced by the handle + * + * Gets the physicial address of the given handle + */ +struct ion_buffer_data { + struct ion_handle *handle; + unsigned long paddr; + unsigned int length; +}; +#endif + #define ION_IOC_MSM_MAGIC 'M' /** @@ -436,4 +452,16 @@ struct ion_prefetch_data { #define ION_IOC_DRAIN _IOWR(ION_IOC_MSM_MAGIC, 4, \ struct ion_prefetch_data) +#if defined(CONFIG_MACH_KLTE_JPN) || defined(CONFIG_MACH_HLTEDCM) || defined(CONFIG_MACH_HLTEKDI) || defined(CONFIG_MACH_JS01LTEDCM) +/** + * DOC: ION_IOC_GET_PHYS - get the physical address of the handle + * + * Gets the physicial address of the given handle + */ +#define ION_IOC_GET_PHYS _IOWR(ION_IOC_MSM_MAGIC, 5, \ + struct ion_buffer_data) + + +#endif + #endif diff --git a/include/linux/msm_kgsl.h b/include/linux/msm_kgsl.h index 17986b507255..bc80bda19ca7 100644 --- a/include/linux/msm_kgsl.h +++ b/include/linux/msm_kgsl.h @@ -692,7 +692,8 @@ struct kgsl_gpumem_sync_cache { * struct kgsl_perfcounter_get - argument to IOCTL_KGSL_PERFCOUNTER_GET * @groupid: Performance counter group ID * @countable: Countable to select within the group - * @offset: Return offset of the reserved counter + * @offset: Return offset of the reserved LO counter + * @offset_hi: Return offset of the reserved HI counter * * Get an available performance counter from a specified groupid. The offset * of the performance counter will be returned after successfully assigning @@ -707,8 +708,9 @@ struct kgsl_perfcounter_get { unsigned int groupid; unsigned int countable; unsigned int offset; + unsigned int offset_hi; /* private: reserved for future use */ - unsigned int __pad[2]; /* For future binary compatibility */ + unsigned int __pad; /* For future binary compatibility */ }; #define IOCTL_KGSL_PERFCOUNTER_GET \ diff --git a/include/linux/msm_mdp.h b/include/linux/msm_mdp.h index 52222bf6285e..7fe9ae5a551f 100644 --- a/include/linux/msm_mdp.h +++ b/include/linux/msm_mdp.h @@ -85,6 +85,30 @@ #define MDP_IMGTYPE2_START 0x10000 #define MSMFB_DRIVER_VERSION 0xF9E8D701 +/* HW Revisions for different MDSS targets */ +#define MDSS_GET_MAJOR(rev) ((rev) >> 28) +#define MDSS_GET_MINOR(rev) (((rev) >> 16) & 0xFFF) +#define MDSS_GET_STEP(rev) ((rev) & 0xFFFF) +#define MDSS_GET_MAJOR_MINOR(rev) ((rev) >> 16) + +#define IS_MDSS_MAJOR_MINOR_SAME(rev1, rev2) \ + (MDSS_GET_MAJOR_MINOR((rev1)) == MDSS_GET_MAJOR_MINOR((rev2))) + +#define MDSS_MDP_REV(major, minor, step) \ + ((((major) & 0x000F) << 28) | \ + (((minor) & 0x0FFF) << 16) | \ + ((step) & 0xFFFF)) + +#define MDSS_MDP_HW_REV_100 MDSS_MDP_REV(1, 0, 0) /* 8974 v1.0 */ +#define MDSS_MDP_HW_REV_101 MDSS_MDP_REV(1, 1, 0) /* 8x26 v1.0 */ +#define MDSS_MDP_HW_REV_101_1 MDSS_MDP_REV(1, 1, 1) /* 8x26 v2.0, 8926 v1.0 */ +#define MDSS_MDP_HW_REV_101_2 MDSS_MDP_REV(1, 1, 2) /* 8926 v2.0 */ +#define MDSS_MDP_HW_REV_102 MDSS_MDP_REV(1, 2, 0) /* 8974 v2.0 */ +#define MDSS_MDP_HW_REV_102_1 MDSS_MDP_REV(1, 2, 1) /* 8974 v3.0 (Pro) */ +#define MDSS_MDP_HW_REV_103 MDSS_MDP_REV(1, 3, 0) /* 8084 v1.0 */ +#define MDSS_MDP_HW_REV_103_1 MDSS_MDP_REV(1, 3, 1) /* 8084 v1.1 */ +#define MDSS_MDP_HW_REV_200 MDSS_MDP_REV(2, 0, 0) /* 8092 v1.0 */ + enum { NOTIFY_UPDATE_START, NOTIFY_UPDATE_STOP, @@ -196,6 +220,7 @@ enum { #define MDP_MEMORY_ID_TYPE_FB 0x00001000 #define MDP_BWC_EN 0x00000400 #define MDP_DECIMATION_EN 0x00000800 +#define MDP_SMP_FORCE_ALLOC 0x00200000 #define MDP_TRANSP_NOP 0xffffffff #define MDP_ALPHA_NOP 0xff @@ -974,6 +999,7 @@ enum { metadata_op_wb_secure, metadata_op_get_caps, metadata_op_crc, + metadata_op_get_ion_fd, metadata_op_max }; @@ -1007,6 +1033,7 @@ struct msmfb_metadata { uint32_t video_info_code; struct mdss_hw_caps caps; uint8_t secure_en; + int fbmem_ionfd; } data; }; diff --git a/include/linux/msm_vidc_dec.h b/include/linux/msm_vidc_dec.h index 35279bfc970c..1c3337cb2f8e 100644 --- a/include/linux/msm_vidc_dec.h +++ b/include/linux/msm_vidc_dec.h @@ -58,6 +58,8 @@ #define VDEC_MSG_EVT_HW_ERROR (VDEC_MSG_BASE + 14) #define VDEC_MSG_EVT_INFO_CONFIG_CHANGED (VDEC_MSG_BASE + 15) #define VDEC_MSG_EVT_INFO_FIELD_DROPPED (VDEC_MSG_BASE + 16) +#define VDEC_MSG_EVT_HW_OVERLOAD (VDEC_MSG_BASE + 17) +#define VDEC_MSG_EVT_MAX_CLIENTS (VDEC_MSG_BASE + 18) /*Buffer flags bits masks.*/ #define VDEC_BUFFERFLAG_EOS 0x00000001 @@ -549,6 +551,7 @@ struct vdec_output_frameinfo { enum vdec_picture pic_type; void *client_data; void *input_frame_clientdata; + struct vdec_picsize picsize; struct vdec_framesize framesize; enum vdec_interlaced_format interlaced_format; struct vdec_aspectratioinfo aspect_ratio_info; diff --git a/include/linux/msm_vidc_enc.h b/include/linux/msm_vidc_enc.h index 4ce3db188399..36625a70cb1c 100644 --- a/include/linux/msm_vidc_enc.h +++ b/include/linux/msm_vidc_enc.h @@ -45,7 +45,8 @@ #define VEN_MSG_RESUME 9 #define VEN_MSG_STOP_READING_MSG 10 #define VEN_MSG_LTRUSE_FAILED 11 - +#define VEN_MSG_HW_OVERLOAD 12 +#define VEN_MSG_MAX_CLIENTS 13 /*Buffer flags bits masks*/ #define VEN_BUFFLAG_EOS 0x00000001 diff --git a/include/linux/nfc/Kbuild b/include/linux/nfc/Kbuild new file mode 100644 index 000000000000..afc6be24b20b --- /dev/null +++ b/include/linux/nfc/Kbuild @@ -0,0 +1 @@ +header-y += pn544.h diff --git a/include/linux/nfc/pn544.h b/include/linux/nfc/pn544.h index 7ab8521f2347..18fc699f1b74 100644 --- a/include/linux/nfc/pn544.h +++ b/include/linux/nfc/pn544.h @@ -1,97 +1,53 @@ /* - * Driver include for the PN544 NFC chip. + * Copyright (C) 2010 Trusted Logic S.A. * - * Copyright (C) Nokia Corporation - * - * Author: Jari Vanhala - * Contact: Matti Aaltoenn - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#ifndef _PN544_H_ -#define _PN544_H_ - -#include - -#define PN544_DRIVER_NAME "pn544" -#define PN544_MAXWINDOW_SIZE 7 -#define PN544_WINDOW_SIZE 4 -#define PN544_RETRIES 10 -#define PN544_MAX_I2C_TRANSFER 0x0400 -#define PN544_MSG_MAX_SIZE 0x21 /* at normal HCI mode */ - -/* ioctl */ -#define PN544_CHAR_BASE 'P' -#define PN544_IOR(num, dtype) _IOR(PN544_CHAR_BASE, num, dtype) -#define PN544_IOW(num, dtype) _IOW(PN544_CHAR_BASE, num, dtype) -#define PN544_GET_FW_MODE PN544_IOW(1, unsigned int) -#define PN544_SET_FW_MODE PN544_IOW(2, unsigned int) -#define PN544_GET_DEBUG PN544_IOW(3, unsigned int) -#define PN544_SET_DEBUG PN544_IOW(4, unsigned int) - -/* Timing restrictions (ms) */ -#define PN544_RESETVEN_TIME 30 /* 7 */ -#define PN544_PVDDVEN_TIME 0 -#define PN544_VBATVEN_TIME 0 -#define PN544_GPIO4VEN_TIME 0 -#define PN544_WAKEUP_ACK 5 -#define PN544_WAKEUP_GUARD (PN544_WAKEUP_ACK + 1) -#define PN544_INACTIVITY_TIME 1000 -#define PN544_INTERFRAME_DELAY 200 /* us */ -#define PN544_BAUDRATE_CHANGE 150 /* us */ - -/* Debug bits */ -#define PN544_DEBUG_BUF 0x01 -#define PN544_DEBUG_READ 0x02 -#define PN544_DEBUG_WRITE 0x04 -#define PN544_DEBUG_IRQ 0x08 -#define PN544_DEBUG_CALLS 0x10 -#define PN544_DEBUG_MODE 0x20 +#ifndef _PN547_H_ +#define _PN547_H_ -/* Normal (HCI) mode */ -#define PN544_LLC_HCI_OVERHEAD 3 /* header + crc (to length) */ -#define PN544_LLC_MIN_SIZE (1 + PN544_LLC_HCI_OVERHEAD) /* length + */ -#define PN544_LLC_MAX_DATA (PN544_MSG_MAX_SIZE - 2) -#define PN544_LLC_MAX_HCI_SIZE (PN544_LLC_MAX_DATA - 2) +#define PN547_MAGIC 0xE9 -struct pn544_llc_packet { - unsigned char length; /* of rest of packet */ - unsigned char header; - unsigned char data[PN544_LLC_MAX_DATA]; /* includes crc-ccitt */ -}; - -/* Firmware upgrade mode */ -#define PN544_FW_HEADER_SIZE 3 -/* max fw transfer is 1024bytes, but I2C limits it to 0xC0 */ -#define PN544_MAX_FW_DATA (PN544_MAX_I2C_TRANSFER - PN544_FW_HEADER_SIZE) - -struct pn544_fw_packet { - unsigned char command; /* status in answer */ - unsigned char length[2]; /* big-endian order (msf) */ - unsigned char data[PN544_MAX_FW_DATA]; -}; +/* + * PN544 power control via ioctl + * PN544_SET_PWR(0): power off + * PN544_SET_PWR(1): power on + * PN544_SET_PWR(>1): power on with firmware download enabled + */ +#define PN544_SET_PWR _IOW(PN547_MAGIC, 0x01, unsigned int) #ifdef __KERNEL__ -/* board config */ -struct pn544_nfc_platform_data { - int (*request_resources) (struct i2c_client *client); - void (*free_resources) (void); - void (*enable) (int fw); - int (*test) (void); - void (*disable) (void); +struct pn547_i2c_platform_data { + void (*conf_gpio) (void); + int irq_gpio; + int ven_gpio; + int firm_gpio; +#ifdef CONFIG_NFC_PN547_CLOCK_REQUEST + int clk_req_gpio; + int clk_req_irq; +#endif +#ifdef CONFIG_NFC_PN547_8226_USE_BBCLK2 + int clk_req_gpio; +#endif +#ifdef CONFIG_OF + u32 irq_gpio_flags; + u32 ven_gpio_flags; + u32 firm_gpio_flags; +#endif }; -#endif /* __KERNEL__ */ +#endif -#endif /* _PN544_H_ */ +#endif diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h index 7be6cd2fccf1..1e62acf8e95d 100644 --- a/include/linux/nl80211.h +++ b/include/linux/nl80211.h @@ -615,6 +615,28 @@ * @NL80211_CMD_CRIT_PROTOCOL_STOP: Indicates the connection reliability can * return back to normal. * + * @NL80211_CMD_GET_COALESCE: Get currently supported coalesce rules. + * @NL80211_CMD_SET_COALESCE: Configure coalesce rules or clear existing rules. + * + * @NL80211_CMD_CHANNEL_SWITCH: Perform a channel switch by announcing the + * the new channel information (Channel Switch Announcement - CSA) + * in the beacon for some time (as defined in the + * %NL80211_ATTR_CH_SWITCH_COUNT parameter) and then change to the + * new channel. Userspace provides the new channel information (using + * %NL80211_ATTR_WIPHY_FREQ and the attributes determining channel + * width). %NL80211_ATTR_CH_SWITCH_BLOCK_TX may be supplied to inform + * other station that transmission must be blocked until the channel + * switch is complete. + * + * @NL80211_CMD_VENDOR: Vendor-specified command/event. The command is specified + * by the %NL80211_ATTR_VENDOR_ID attribute and a sub-command in + * %NL80211_ATTR_VENDOR_SUBCMD. Parameter(s) can be transported in + * %NL80211_ATTR_VENDOR_DATA. + * For feature advertisement, the %NL80211_ATTR_VENDOR_DATA attribute is + * used in the wiphy data as a nested attribute containing descriptions + * (&struct nl80211_vendor_cmd_info) of the supported vendor commands. + * This may also be sent as an event with the same attributes. + * * @NL80211_CMD_MAX: highest used command number * @__NL80211_CMD_AFTER_LAST: internal use */ @@ -778,6 +800,13 @@ enum nl80211_commands { NL80211_CMD_CRIT_PROTOCOL_START, NL80211_CMD_CRIT_PROTOCOL_STOP, + NL80211_CMD_GET_COALESCE, + NL80211_CMD_SET_COALESCE, + + NL80211_CMD_CHANNEL_SWITCH, + + NL80211_CMD_VENDOR, + /* add new commands above here */ /* used to define NL80211_CMD_MAX below */ @@ -1402,6 +1431,21 @@ enum nl80211_commands { * @NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES: array of supported * supported operating classes. * + * @NL80211_ATTR_HANDLE_DFS: A flag indicating whether user space + * controls DFS operation in IBSS mode. If the flag is included in + * %NL80211_CMD_JOIN_IBSS request, the driver will allow use of DFS + * channels and reports radar events to userspace. Userspace is required + * to react to radar events, e.g. initiate a channel switch or leave the + * IBSS network. + * + * @NL80211_ATTR_VENDOR_ID: The vendor ID, either a 24-bit OUI or, if + * %NL80211_VENDOR_ID_IS_LINUX is set, a special Linux ID (not used yet) + * @NL80211_ATTR_VENDOR_SUBCMD: vendor sub-command + * @NL80211_ATTR_VENDOR_DATA: data for the vendor command, if any; this + * attribute is also used for vendor command feature advertisement + * @NL80211_ATTR_VENDOR_EVENTS: used for event list advertising in the wiphy + * info, containing a nested array of possible events + * * @NL80211_ATTR_MAX: highest attribute number currently defined * @__NL80211_ATTR_AFTER_LAST: internal use */ @@ -1715,6 +1759,20 @@ enum nl80211_attrs { NL80211_ATTR_STA_SUPPORTED_CHANNELS, NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES, + + NL80211_ATTR_HANDLE_DFS, + + NL80211_ATTR_SUPPORT_5_MHZ, + NL80211_ATTR_SUPPORT_10_MHZ, + + NL80211_ATTR_OPMODE_NOTIF, + + NL80211_ATTR_VENDOR_ID, + NL80211_ATTR_VENDOR_SUBCMD, + NL80211_ATTR_VENDOR_DATA, + + NL80211_ATTR_VENDOR_EVENTS, + /* add attributes here, update the policy in nl80211.c */ __NL80211_ATTR_AFTER_LAST, @@ -1760,7 +1818,7 @@ enum nl80211_attrs { #define NL80211_HT_CAPABILITY_LEN 26 #define NL80211_VHT_CAPABILITY_LEN 12 -#define NL80211_MAX_NR_CIPHER_SUITES 5 +#define NL80211_MAX_NR_CIPHER_SUITES 6 #define NL80211_MAX_NR_AKM_SUITES 2 /** @@ -2641,6 +2699,7 @@ enum nl80211_mfp { enum nl80211_wpa_versions { NL80211_WPA_VERSION_1 = 1 << 0, NL80211_WPA_VERSION_2 = 1 << 1, + NL80211_WAPI_VERSION_1 = 1 << 2, }; /** @@ -3178,4 +3237,24 @@ enum nl80211_crit_proto_id { /* maximum duration for critical protocol measures */ #define NL80211_CRIT_PROTO_MAX_DURATION 5000 /* msec */ +/* + * If this flag is unset, the lower 24 bits are an OUI, if set + * a Linux nl80211 vendor ID is used (no such IDs are allocated + * yet, so that's not valid so far) + */ +#define NL80211_VENDOR_ID_IS_LINUX 0x80000000 + +/** + * struct nl80211_vendor_cmd_info - vendor command data + * @vendor_id: If the %NL80211_VENDOR_ID_IS_LINUX flag is clear, then the + * value is a 24-bit OUI; if it is set then a separately allocated ID + * may be used, but no such IDs are allocated yet. New IDs should be + * added to this file when needed. + * @subcmd: sub-command ID for the command + */ +struct nl80211_vendor_cmd_info { + __u32 vendor_id; + __u32 subcmd; +}; + #endif /* __LINUX_NL80211_H */ diff --git a/include/linux/page-isolation.h b/include/linux/page-isolation.h index 3bdcab30ca41..afddd2d731fd 100644 --- a/include/linux/page-isolation.h +++ b/include/linux/page-isolation.h @@ -1,6 +1,10 @@ #ifndef __LINUX_PAGEISOLATION_H #define __LINUX_PAGEISOLATION_H +int move_freepages(struct zone *zone, + struct page *start_page, struct page *end_page, + int migratetype); + /* * Changes migrate type in [start_pfn, end_pfn) to be MIGRATE_ISOLATE. * If specified range includes migrate types other than MOVABLE or CMA, diff --git a/include/linux/pn547.h b/include/linux/pn547.h index cce1bea2b4f4..ce81ce9d27a6 100755 --- a/include/linux/pn547.h +++ b/include/linux/pn547.h @@ -15,6 +15,8 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +#ifndef _PN547_H_ +#define _PN547_H_ #define PN547_MAGIC 0xE9 @@ -26,6 +28,7 @@ */ #define PN547_SET_PWR _IOW(PN547_MAGIC, 0x01, unsigned int) +#ifdef __KERNEL__ struct pn547_i2c_platform_data { void (*conf_gpio) (void); int irq_gpio; @@ -41,3 +44,6 @@ struct pn547_i2c_platform_data { u32 firm_gpio_flags; #endif }; +#endif + +#endif diff --git a/include/linux/rtc.h b/include/linux/rtc.h index fcabfb4873c8..9b602dc57599 100644 --- a/include/linux/rtc.h +++ b/include/linux/rtc.h @@ -148,6 +148,10 @@ struct rtc_class_ops { int (*set_time)(struct device *, struct rtc_time *); int (*read_alarm)(struct device *, struct rtc_wkalrm *); int (*set_alarm)(struct device *, struct rtc_wkalrm *); +#ifdef CONFIG_RTC_AUTO_PWRON + int (*read_bootalarm)(struct device *, struct rtc_wkalrm *); + int (*set_bootalarm)(struct device *, struct rtc_wkalrm *); +#endif int (*proc)(struct device *, struct seq_file *); int (*set_mmss)(struct device *, unsigned long secs); int (*read_callback)(struct device *, int data); diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h index 577592ea0ea0..5529245a4a10 100644 --- a/include/linux/rtnetlink.h +++ b/include/linux/rtnetlink.h @@ -283,6 +283,8 @@ enum rtattr_type_t { RTA_MP_ALGO, /* no longer used */ RTA_TABLE, RTA_MARK, + RTA_MFC_STATS, /* not used - backported from the future */ + RTA_UID, __RTA_MAX }; diff --git a/include/linux/sync.h b/include/linux/sync.h index f4ac10e4a873..7fdd6a74f557 100644 --- a/include/linux/sync.h +++ b/include/linux/sync.h @@ -84,6 +84,9 @@ struct sync_timeline_ops { /* optional */ void (*pt_value_str)(struct sync_pt *pt, char *str, int size); + + /* optional */ + void (*pt_log)(struct sync_pt *pt); }; /** @@ -342,6 +345,15 @@ int sync_fence_cancel_async(struct sync_fence *fence, */ int sync_fence_wait(struct sync_fence *fence, long timeout); +/** + * sync_fence_log() - log the details of the fence in the kernel log + * @fence: fence to log + * + * Log the details of the fence and the associated sync points in the kernel + * log. + */ +void sync_fence_log(struct sync_fence *fence); + #endif /* __KERNEL__ */ /** diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index f446f5168141..91c5f8106001 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h @@ -1824,29 +1824,30 @@ enum v4l2_mpeg_vidc_video_sync_frame_decode { #define V4L2_CID_MPEG_VIDC_VIDEO_EXTRADATA \ (V4L2_CID_MPEG_MSM_VIDC_BASE + 25) enum v4l2_mpeg_vidc_extradata { - V4L2_MPEG_VIDC_EXTRADATA_NONE, - V4L2_MPEG_VIDC_EXTRADATA_MB_QUANTIZATION, - V4L2_MPEG_VIDC_EXTRADATA_INTERLACE_VIDEO, - V4L2_MPEG_VIDC_EXTRADATA_VC1_FRAMEDISP, - V4L2_MPEG_VIDC_EXTRADATA_VC1_SEQDISP, - V4L2_MPEG_VIDC_EXTRADATA_TIMESTAMP, - V4L2_MPEG_VIDC_EXTRADATA_S3D_FRAME_PACKING, - V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE, - V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW, - V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI, - V4L2_MPEG_VIDC_EXTRADATA_CLOSED_CAPTION_UD, - V4L2_MPEG_VIDC_EXTRADATA_AFD_UD, - V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO, - V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB, - V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER, - V4L2_MPEG_VIDC_INDEX_EXTRADATA_INPUT_CROP, - V4L2_MPEG_VIDC_INDEX_EXTRADATA_DIGITAL_ZOOM, - V4L2_MPEG_VIDC_INDEX_EXTRADATA_ASPECT_RATIO, - V4L2_MPEG_VIDC_EXTRADATA_MPEG2_SEQDISP, - V4L2_MPEG_VIDC_EXTRADATA_FRAME_QP, - V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO, - V4L2_MPEG_VIDC_EXTRADATA_LTR, - V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI, + V4L2_MPEG_VIDC_EXTRADATA_NONE = 0, + V4L2_MPEG_VIDC_EXTRADATA_MB_QUANTIZATION = 1, + V4L2_MPEG_VIDC_EXTRADATA_INTERLACE_VIDEO = 2, + V4L2_MPEG_VIDC_EXTRADATA_VC1_FRAMEDISP = 3, + V4L2_MPEG_VIDC_EXTRADATA_VC1_SEQDISP = 4, + V4L2_MPEG_VIDC_EXTRADATA_TIMESTAMP = 5, + V4L2_MPEG_VIDC_EXTRADATA_S3D_FRAME_PACKING = 6, + V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE = 7, + V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW = 8, + V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI = 9, + V4L2_MPEG_VIDC_EXTRADATA_CLOSED_CAPTION_UD = 10, + V4L2_MPEG_VIDC_EXTRADATA_AFD_UD = 11, + V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO = 12, + V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB = 13, + V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER = 14, + V4L2_MPEG_VIDC_INDEX_EXTRADATA_INPUT_CROP = 15, + V4L2_MPEG_VIDC_INDEX_EXTRADATA_DIGITAL_ZOOM = 16, + V4L2_MPEG_VIDC_INDEX_EXTRADATA_ASPECT_RATIO = 17, + V4L2_MPEG_VIDC_EXTRADATA_MPEG2_SEQDISP = 18, + V4L2_MPEG_VIDC_EXTRADATA_FRAME_QP = 19, + V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO = 20, + V4L2_MPEG_VIDC_EXTRADATA_LTR = 21, + V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI = 22, + V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA = 23, }; #define V4L2_CID_MPEG_VIDC_SET_PERF_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 26) @@ -1935,6 +1936,21 @@ enum v4l2_mpeg_vidc_video_ltrmode { #define V4L2_CID_MPEG_VIDC_VIDEO_HIER_P_NUM_LAYERS \ (V4L2_CID_MPEG_MSM_VIDC_BASE + 43) +#define V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP \ + (V4L2_CID_MPEG_MSM_VIDC_BASE + 44) + +#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP \ + (V4L2_CID_MPEG_MSM_VIDC_BASE + 45) + +#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP \ + (V4L2_CID_MPEG_MSM_VIDC_BASE + 46) + +#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP \ + (V4L2_CID_MPEG_MSM_VIDC_BASE + 47) + +#define V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT \ + (V4L2_CID_MPEG_MSM_VIDC_BASE + 48) + /* Camera class control IDs */ #define V4L2_CID_CAMERA_CLASS_BASE (V4L2_CTRL_CLASS_CAMERA | 0x900) #define V4L2_CID_CAMERA_CLASS (V4L2_CTRL_CLASS_CAMERA | 1) @@ -2500,6 +2516,8 @@ struct v4l2_streamparm { (V4L2_EVENT_MSM_VIDC_START + 6) #define V4L2_EVENT_MSM_VIDC_RELEASE_UNQUEUED_BUFFER \ (V4L2_EVENT_MSM_VIDC_START + 7) +#define V4L2_EVENT_MSM_VIDC_HW_OVERLOAD (V4L2_EVENT_MSM_VIDC_START + 8) +#define V4L2_EVENT_MSM_VIDC_MAX_CLIENTS (V4L2_EVENT_MSM_VIDC_START + 9) /* Payload for V4L2_EVENT_VSYNC */ struct v4l2_event_vsync { diff --git a/include/linux/wakeup_reason.h b/include/linux/wakeup_reason.h new file mode 100644 index 000000000000..7ce50f0debc4 --- /dev/null +++ b/include/linux/wakeup_reason.h @@ -0,0 +1,23 @@ +/* + * include/linux/wakeup_reason.h + * + * Logs the reason which caused the kernel to resume + * from the suspend mode. + * + * Copyright (C) 2014 Google, Inc. + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef _LINUX_WAKEUP_REASON_H +#define _LINUX_WAKEUP_REASON_H + +void log_wakeup_reason(int irq); + +#endif /* _LINUX_WAKEUP_REASON_H */ diff --git a/include/media/msm_media_info.h b/include/media/msm_media_info.h index 65831dbff767..752594b79a17 100644 --- a/include/media/msm_media_info.h +++ b/include/media/msm_media_info.h @@ -10,6 +10,18 @@ enum color_fmts { COLOR_FMT_NV21, }; +static inline unsigned int VENUS_EXTRADATA_SIZE(int width, int height) +{ + (void)height; + (void)width; + + /* + * In the future, calculate the size based on the w/h but just + * hardcode it for now since 8K satisfies all current usecases. + */ + return 8 * 1024; +} + static inline unsigned int VENUS_Y_STRIDE(int color_fmt, int width) { unsigned int alignment, stride = 0; @@ -89,8 +101,8 @@ static inline unsigned int VENUS_UV_SCANLINES(int color_fmt, int height) static inline unsigned int VENUS_BUFFER_SIZE( int color_fmt, int width, int height) { - unsigned int uv_alignment; - unsigned int size = 0; + const unsigned int extra_size = VENUS_EXTRADATA_SIZE(width, height); + unsigned int uv_alignment = 0, size = 0; unsigned int y_plane, uv_plane, y_stride, uv_stride, y_sclines, uv_sclines; if (!width || !height) @@ -106,7 +118,7 @@ static inline unsigned int VENUS_BUFFER_SIZE( uv_alignment = 4096; y_plane = y_stride * y_sclines; uv_plane = uv_stride * uv_sclines + uv_alignment; - size = y_plane + uv_plane; + size = y_plane + uv_plane + extra_size; size = MSM_MEDIA_ALIGN(size, 4096); break; default: diff --git a/include/media/msm_vidc.h b/include/media/msm_vidc.h index 9028b1a9dbf9..99e92610c30f 100644 --- a/include/media/msm_vidc.h +++ b/include/media/msm_vidc.h @@ -55,6 +55,7 @@ enum smem_cache_ops { void *msm_vidc_open(int core_id, int session_type); int msm_vidc_close(void *instance); +int msm_vidc_suspend(int core_id); int msm_vidc_querycap(void *instance, struct v4l2_capability *cap); int msm_vidc_enum_fmt(void *instance, struct v4l2_fmtdesc *f); int msm_vidc_s_fmt(void *instance, struct v4l2_format *f); @@ -95,6 +96,7 @@ int msm_vidc_smem_get_domain_partition(void *instance, u32 flags, enum hal_buffer buffer_type, int *domain_num, int *partition_num); void *msm_vidc_smem_get_client(void *instance); +int msm_vidc_instance_open(void); #endif struct msm_vidc_extradata_header { @@ -179,6 +181,11 @@ struct msm_vidc_frame_bits_info_payload { unsigned int header_bits; }; +struct msm_vidc_stream_userdata_payload { + unsigned int type; + unsigned int data[1]; +}; + enum msm_vidc_extradata_type { EXTRADATA_NONE = 0x00000000, EXTRADATA_MB_QUANTIZATION = 0x00000001, @@ -191,6 +198,7 @@ enum msm_vidc_extradata_type { EXTRADATA_PANSCAN_WINDOW = 0x00000008, EXTRADATA_RECOVERY_POINT_SEI = 0x00000009, EXTRADATA_MPEG2_SEQDISP = 0x0000000D, + EXTRADATA_STREAM_USERDATA = 0x0000000E, EXTRADATA_FRAME_QP = 0x0000000F, EXTRADATA_FRAME_BITS_INFO = 0x00000010, EXTRADATA_MULTISLICE_INFO = 0x7F100000, @@ -214,4 +222,9 @@ enum msm_vidc_recovery_sei { FRAME_RECONSTRUCTION_APPROXIMATELY_CORRECT = 0x02, }; +enum msm_vidc_userdata_type { + MSM_VIDC_USERDATA_TYPE_FRAME = 0x1, + MSM_VIDC_USERDATA_TYPE_TOP_FIELD = 0x2, + MSM_VIDC_USERDATA_TYPE_BOTTOM_FIELD = 0x3, +}; #endif diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h index a15d1f1b319e..b0b6b04f61d9 100644 --- a/include/media/videobuf2-core.h +++ b/include/media/videobuf2-core.h @@ -17,6 +17,8 @@ #include #include +#define VB2_MAX_FRAME 64 + struct vb2_alloc_ctx; struct vb2_fileio_data; @@ -281,7 +283,7 @@ struct vb2_queue { /* private: internal use only */ enum v4l2_memory memory; - struct vb2_buffer *bufs[VIDEO_MAX_FRAME]; + struct vb2_buffer *bufs[VB2_MAX_FRAME]; unsigned int num_buffers; struct list_head queued_list; diff --git a/include/net/addrconf.h b/include/net/addrconf.h index 757a17638b1b..f08044178bce 100644 --- a/include/net/addrconf.h +++ b/include/net/addrconf.h @@ -166,6 +166,8 @@ extern int __ipv6_dev_ac_dec(struct inet6_dev *idev, const struct in6_addr *addr extern int ipv6_chk_acast_addr(struct net *net, struct net_device *dev, const struct in6_addr *addr); +u32 addrconf_rt_table(const struct net_device *dev, u32 default_table); + /* Device notifier */ extern int register_inet6addr_notifier(struct notifier_block *nb); diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 77084ed580a4..9f0d4860c93f 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h @@ -2045,6 +2045,34 @@ struct wiphy_wowlan_support { int pattern_min_len; }; +/** + * enum wiphy_vendor_command_flags - validation flags for vendor commands + * @WIPHY_VENDOR_CMD_NEED_WDEV: vendor command requires wdev + * @WIPHY_VENDOR_CMD_NEED_NETDEV: vendor command requires netdev + * @WIPHY_VENDOR_CMD_NEED_RUNNING: interface/wdev must be up & running + * (must be combined with %_WDEV or %_NETDEV) + */ +enum wiphy_vendor_command_flags { + WIPHY_VENDOR_CMD_NEED_WDEV = BIT(0), + WIPHY_VENDOR_CMD_NEED_NETDEV = BIT(1), + WIPHY_VENDOR_CMD_NEED_RUNNING = BIT(2), +}; + +/** + * struct wiphy_vendor_command - vendor command definition + * @info: vendor command identifying information, as used in nl80211 + * @flags: flags, see &enum wiphy_vendor_command_flags + * @doit: callback for the operation, note that wdev is %NULL if the + * flags didn't ask for a wdev and non-%NULL otherwise; the data + * pointer may be %NULL if userspace provided no data at all + */ +struct wiphy_vendor_command { + struct nl80211_vendor_cmd_info info; + u32 flags; + int (*doit)(struct wiphy *wiphy, struct wireless_dev *wdev, + void *data, int data_len); +}; + /** * struct wiphy - wireless hardware description * @reg_notifier: the driver's regulatory notification callback, @@ -2144,6 +2172,11 @@ struct wiphy_wowlan_support { * supports for ACL. * @country_ie_pref: country IE processing preferences specified * by enum nl80211_country_ie_pref + * + * @vendor_commands: array of vendor commands supported by the hardware + * @n_vendor_commands: number of vendor commands + * @vendor_events: array of vendor events supported by the hardware + * @n_vendor_events: number of vendor events */ struct wiphy { /* assign these fields before you register the wiphy */ @@ -2248,6 +2281,10 @@ struct wiphy { const struct iw_handler_def *wext; #endif + const struct wiphy_vendor_command *vendor_commands; + const struct nl80211_vendor_cmd_info *vendor_events; + int n_vendor_commands, n_vendor_events; + char priv[0] __attribute__((__aligned__(NETDEV_ALIGN))); }; @@ -3128,6 +3165,121 @@ void wiphy_rfkill_start_polling(struct wiphy *wiphy); */ void wiphy_rfkill_stop_polling(struct wiphy *wiphy); +/** + * DOC: Vendor commands + * + * Occasionally, there are special protocol or firmware features that + * can't be implemented very openly. For this and similar cases, the + * vendor command functionality allows implementing the features with + * (typically closed-source) userspace and firmware, using nl80211 as + * the configuration mechanism. + * + * A driver supporting vendor commands must register them as an array + * in struct wiphy, with handlers for each one, each command has an + * OUI and sub command ID to identify it. + * + * Note that this feature should not be (ab)used to implement protocol + * features that could openly be shared across drivers. In particular, + * it must never be required to use vendor commands to implement any + * "normal" functionality that higher-level userspace like connection + * managers etc. need. + */ + +struct sk_buff *__cfg80211_alloc_reply_skb(struct wiphy *wiphy, + enum nl80211_commands cmd, + enum nl80211_attrs attr, + int approxlen); + +struct sk_buff *__cfg80211_alloc_event_skb(struct wiphy *wiphy, + enum nl80211_commands cmd, + enum nl80211_attrs attr, + int vendor_event_idx, + int approxlen, gfp_t gfp); + +void __cfg80211_send_event_skb(struct sk_buff *skb, gfp_t gfp); + +/** + * cfg80211_vendor_cmd_alloc_reply_skb - allocate vendor command reply + * @wiphy: the wiphy + * @approxlen: an upper bound of the length of the data that will + * be put into the skb + * + * This function allocates and pre-fills an skb for a reply to + * a vendor command. Since it is intended for a reply, calling + * it outside of a vendor command's doit() operation is invalid. + * + * The returned skb is pre-filled with some identifying data in + * a way that any data that is put into the skb (with skb_put(), + * nla_put() or similar) will end up being within the + * %NL80211_ATTR_VENDOR_DATA attribute, so all that needs to be done + * with the skb is adding data for the corresponding userspace tool + * which can then read that data out of the testdata attribute. You + * must not modify the skb in any other way. + * + * When done, call cfg80211_vendor_cmd_reply() with the skb and return + * its error code as the result of the doit() operation. + * + * Return: An allocated and pre-filled skb. %NULL if any errors happen. + */ +static inline struct sk_buff * +cfg80211_vendor_cmd_alloc_reply_skb(struct wiphy *wiphy, int approxlen) +{ + return __cfg80211_alloc_reply_skb(wiphy, NL80211_CMD_TESTMODE, + NL80211_ATTR_TESTDATA, approxlen); +} + +/** + * cfg80211_vendor_cmd_reply - send the reply skb + * @skb: The skb, must have been allocated with + * cfg80211_vendor_cmd_alloc_reply_skb() + * + * Since calling this function will usually be the last thing + * before returning from the vendor command doit() you should + * return the error code. Note that this function consumes the + * skb regardless of the return value. + * + * Return: An error code or 0 on success. + */ +int cfg80211_vendor_cmd_reply(struct sk_buff *skb); + +/** + * cfg80211_vendor_event_alloc - allocate vendor-specific event skb + * @wiphy: the wiphy + * @event_idx: index of the vendor event in the wiphy's vendor_events + * @approxlen: an upper bound of the length of the data that will + * be put into the skb + * @gfp: allocation flags + * + * This function allocates and pre-fills an skb for an event on the + * vendor-specific multicast group. + * + * When done filling the skb, call cfg80211_vendor_event() with the + * skb to send the event. + * + * Return: An allocated and pre-filled skb. %NULL if any errors happen. + */ +static inline struct sk_buff * +cfg80211_vendor_event_alloc(struct wiphy *wiphy, int approxlen, + int event_idx, gfp_t gfp) +{ + return __cfg80211_alloc_event_skb(wiphy, NL80211_CMD_VENDOR, + NL80211_ATTR_VENDOR_DATA, + event_idx, approxlen, gfp); +} + +/** + * cfg80211_vendor_event - send the event + * @skb: The skb, must have been allocated with cfg80211_vendor_event_alloc() + * @gfp: allocation flags + * + * This function sends the given @skb, which must have been allocated + * by cfg80211_vendor_event_alloc(), as an event. It always consumes it. + */ +static inline void cfg80211_vendor_event(struct sk_buff *skb, gfp_t gfp) +{ + __cfg80211_send_event_skb(skb, gfp); +} + #ifdef CONFIG_NL80211_TESTMODE /** * DOC: Test mode @@ -3161,8 +3313,12 @@ void wiphy_rfkill_stop_polling(struct wiphy *wiphy); * When done, call cfg80211_testmode_reply() with the skb and return * its error code as the result of the @testmode_cmd operation. */ -struct sk_buff *cfg80211_testmode_alloc_reply_skb(struct wiphy *wiphy, - int approxlen); +static inline struct sk_buff * +cfg80211_testmode_alloc_reply_skb(struct wiphy *wiphy, int approxlen) +{ + return __cfg80211_alloc_reply_skb(wiphy, NL80211_CMD_TESTMODE, + NL80211_ATTR_TESTDATA, approxlen); +} /** * cfg80211_testmode_reply - send the reply skb @@ -3175,7 +3331,10 @@ struct sk_buff *cfg80211_testmode_alloc_reply_skb(struct wiphy *wiphy, * Note that this function consumes the skb regardless of the * return value. */ -int cfg80211_testmode_reply(struct sk_buff *skb); +static inline int cfg80211_testmode_reply(struct sk_buff *skb) +{ + return cfg80211_vendor_cmd_reply(skb); +} /** * cfg80211_testmode_alloc_event_skb - allocate testmode event @@ -3196,8 +3355,13 @@ int cfg80211_testmode_reply(struct sk_buff *skb); * When done filling the skb, call cfg80211_testmode_event() with the * skb to send the event. */ -struct sk_buff *cfg80211_testmode_alloc_event_skb(struct wiphy *wiphy, - int approxlen, gfp_t gfp); +static inline struct sk_buff * +cfg80211_testmode_alloc_event_skb(struct wiphy *wiphy, int approxlen, gfp_t gfp) +{ + return __cfg80211_alloc_event_skb(wiphy, NL80211_CMD_TESTMODE, + NL80211_ATTR_TESTDATA, -1, + approxlen, gfp); +} /** * cfg80211_testmode_event - send the event @@ -3209,7 +3373,10 @@ struct sk_buff *cfg80211_testmode_alloc_event_skb(struct wiphy *wiphy, * by cfg80211_testmode_alloc_event_skb(), as an event. It always * consumes it. */ -void cfg80211_testmode_event(struct sk_buff *skb, gfp_t gfp); +static inline void cfg80211_testmode_event(struct sk_buff *skb, gfp_t gfp) +{ + __cfg80211_send_event_skb(skb, gfp); +} #define CFG80211_TESTMODE_CMD(cmd) .testmode_cmd = (cmd), #define CFG80211_TESTMODE_DUMP(cmd) .testmode_dump = (cmd), diff --git a/include/net/fib_rules.h b/include/net/fib_rules.h index 075f1e3a0fed..52e77a366bfc 100644 --- a/include/net/fib_rules.h +++ b/include/net/fib_rules.h @@ -23,6 +23,8 @@ struct fib_rule { struct fib_rule __rcu *ctarget; char iifname[IFNAMSIZ]; char oifname[IFNAMSIZ]; + uid_t uid_start; + uid_t uid_end; struct rcu_head rcu; struct net * fr_net; }; @@ -79,7 +81,9 @@ struct fib_rules_ops { [FRA_FWMARK] = { .type = NLA_U32 }, \ [FRA_FWMASK] = { .type = NLA_U32 }, \ [FRA_TABLE] = { .type = NLA_U32 }, \ - [FRA_GOTO] = { .type = NLA_U32 } + [FRA_GOTO] = { .type = NLA_U32 }, \ + [FRA_UID_START] = { .type = NLA_U32 }, \ + [FRA_UID_END] = { .type = NLA_U32 } static inline void fib_rule_get(struct fib_rule *rule) { diff --git a/include/net/flow.h b/include/net/flow.h index 6c469dbdb917..3fe9261baacf 100644 --- a/include/net/flow.h +++ b/include/net/flow.h @@ -23,6 +23,7 @@ struct flowi_common { #define FLOWI_FLAG_PRECOW_METRICS 0x02 #define FLOWI_FLAG_CAN_SLEEP 0x04 __u32 flowic_secid; + uid_t flowic_uid; }; union flowi_uli { @@ -59,6 +60,7 @@ struct flowi4 { #define flowi4_proto __fl_common.flowic_proto #define flowi4_flags __fl_common.flowic_flags #define flowi4_secid __fl_common.flowic_secid +#define flowi4_uid __fl_common.flowic_uid /* (saddr,daddr) must be grouped, same order as in IP header */ __be32 saddr; @@ -78,7 +80,8 @@ static inline void flowi4_init_output(struct flowi4 *fl4, int oif, __u32 mark, __u8 tos, __u8 scope, __u8 proto, __u8 flags, __be32 daddr, __be32 saddr, - __be16 dport, __be16 sport) + __be16 dport, __be16 sport, + uid_t uid) { fl4->flowi4_oif = oif; fl4->flowi4_iif = 0; @@ -88,6 +91,7 @@ static inline void flowi4_init_output(struct flowi4 *fl4, int oif, fl4->flowi4_proto = proto; fl4->flowi4_flags = flags; fl4->flowi4_secid = 0; + fl4->flowi4_uid = uid; fl4->daddr = daddr; fl4->saddr = saddr; fl4->fl4_dport = dport; @@ -115,6 +119,7 @@ struct flowi6 { #define flowi6_proto __fl_common.flowic_proto #define flowi6_flags __fl_common.flowic_flags #define flowi6_secid __fl_common.flowic_secid +#define flowi6_uid __fl_common.flowic_uid struct in6_addr daddr; struct in6_addr saddr; __be32 flowlabel; @@ -158,6 +163,7 @@ struct flowi { #define flowi_proto u.__fl_common.flowic_proto #define flowi_flags u.__fl_common.flowic_flags #define flowi_secid u.__fl_common.flowic_secid +#define flowi_uid u.__fl_common.flowic_uid } __attribute__((__aligned__(BITS_PER_LONG/8))); static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4) diff --git a/include/net/inet_sock.h b/include/net/inet_sock.h index ae17e1352d7e..1eb18295f80b 100644 --- a/include/net/inet_sock.h +++ b/include/net/inet_sock.h @@ -89,6 +89,7 @@ struct inet_request_sock { no_srccheck: 1; kmemcheck_bitfield_end(flags); struct ip_options_rcu *opt; + u32 ir_mark; }; static inline struct inet_request_sock *inet_rsk(const struct request_sock *sk) @@ -96,6 +97,15 @@ static inline struct inet_request_sock *inet_rsk(const struct request_sock *sk) return (struct inet_request_sock *)sk; } +static inline u32 inet_request_mark(struct sock *sk, struct sk_buff *skb) +{ + if (!sk->sk_mark && sock_net(sk)->ipv4.sysctl_tcp_fwmark_accept) { + return skb->mark; + } else { + return sk->sk_mark; + } +} + struct inet_cork { unsigned int flags; __be32 addr; diff --git a/include/net/ip.h b/include/net/ip.h index b53d65f24f7b..e36ffa109b5f 100644 --- a/include/net/ip.h +++ b/include/net/ip.h @@ -166,6 +166,7 @@ struct ip_reply_arg { /* -1 if not needed */ int bound_dev_if; u8 tos; + uid_t uid; }; #define IP_REPLY_ARG_NOSRCCHECK 1 @@ -237,6 +238,9 @@ extern void ipfrag_init(void); extern void ip_static_sysctl_init(void); +#define IP4_REPLY_MARK(net, mark) \ + ((net)->ipv4.sysctl_fwmark_reflect ? (mark) : 0) + static inline bool ip_is_fragment(const struct iphdr *iph) { return (iph->frag_off & htons(IP_MF | IP_OFFSET)) != 0; diff --git a/include/net/ipv6.h b/include/net/ipv6.h index a5a9e4dfccbb..2161a393e0c6 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h @@ -109,6 +109,9 @@ struct frag_hdr { #define IP6_MF 0x0001 +#define IP6_REPLY_MARK(net, mark) \ + ((net)->ipv6.sysctl.fwmark_reflect ? (mark) : 0) + #include /* sysctls */ diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h index bbd023a1c9b9..886942628077 100644 --- a/include/net/netns/ipv4.h +++ b/include/net/netns/ipv4.h @@ -56,6 +56,8 @@ struct netns_ipv4 { unsigned int sysctl_ping_group_range[2]; long sysctl_tcp_mem[3]; + int sysctl_fwmark_reflect; + int sysctl_tcp_fwmark_accept; atomic_t rt_genid; atomic_t dev_addr_genid; diff --git a/include/net/netns/ipv6.h b/include/net/netns/ipv6.h index 81abfcb2eb4e..20b76abcb15e 100644 --- a/include/net/netns/ipv6.h +++ b/include/net/netns/ipv6.h @@ -25,6 +25,7 @@ struct netns_sysctl_ipv6 { int ip6_rt_mtu_expires; int ip6_rt_min_advmss; int icmpv6_time; + int fwmark_reflect; }; struct netns_ipv6 { diff --git a/include/net/route.h b/include/net/route.h index b1c0d5b564c2..7488c9ed1033 100644 --- a/include/net/route.h +++ b/include/net/route.h @@ -60,6 +60,7 @@ struct rtable { int rt_iif; int rt_oif; __u32 rt_mark; + uid_t rt_uid; /* Info on neighbour */ __be32 rt_gateway; @@ -146,7 +147,7 @@ static inline struct rtable *ip_route_output_ports(struct net *net, struct flowi flowi4_init_output(fl4, oif, sk ? sk->sk_mark : 0, tos, RT_SCOPE_UNIVERSE, proto, sk ? inet_sk_flowi_flags(sk) : 0, - daddr, saddr, dport, sport); + daddr, saddr, dport, sport, sk ? sock_i_uid(sk) : 0); if (sk) security_sk_classify_flow(sk, flowi4_to_flowi(fl4)); return ip_route_output_flow(net, fl4, sk); @@ -250,7 +251,8 @@ static inline void ip_route_connect_init(struct flowi4 *fl4, __be32 dst, __be32 flow_flags |= FLOWI_FLAG_CAN_SLEEP; flowi4_init_output(fl4, oif, sk->sk_mark, tos, RT_SCOPE_UNIVERSE, - protocol, flow_flags, dst, src, dport, sport); + protocol, flow_flags, dst, src, dport, sport, + sock_i_uid(sk)); } static inline struct rtable *ip_route_connect(struct flowi4 *fl4, diff --git a/include/net/tcp.h b/include/net/tcp.h index 50660b3e72b8..2a2e48457e01 100644 --- a/include/net/tcp.h +++ b/include/net/tcp.h @@ -123,7 +123,11 @@ extern void tcp_time_wait(struct sock *sk, int state, int timeo); #endif #define TCP_RTO_MAX ((unsigned)(120*HZ)) #define TCP_RTO_MIN ((unsigned)(HZ/5)) +#ifdef CONFIG_MACH_H3G_CHN_CMCC +#define TCP_TIMEOUT_INIT ((unsigned)(3*HZ)) /* RFC2988bis initial RTO value */ +#else #define TCP_TIMEOUT_INIT ((unsigned)(1*HZ)) /* RFC2988bis initial RTO value */ +#endif #define TCP_TIMEOUT_FALLBACK ((unsigned)(3*HZ)) /* RFC 1122 initial RTO value, now * used as a fallback RTO for the * initial data transmission if no @@ -131,6 +135,8 @@ extern void tcp_time_wait(struct sock *sk, int state, int timeo); * most likely due to retrans in 3WHS. */ +#define TCP_DELACK_SEG 1 /*Number of full MSS to receive before Acking RFC2581*/ + #define TCP_RESOURCE_PROBE_INTERVAL ((unsigned)(HZ/2U)) /* Maximal interval between probes * for local resources. */ @@ -253,6 +259,10 @@ extern int sysctl_tcp_cookie_size; extern int sysctl_tcp_thin_linear_timeouts; extern int sysctl_tcp_thin_dupack; +/* sysctl variables for controlling various tcp parameters */ +extern int sysctl_tcp_delack_seg; +extern int sysctl_tcp_use_userconfig; + extern atomic_long_t tcp_memory_allocated; extern struct percpu_counter tcp_sockets_allocated; extern int tcp_memory_pressure; @@ -346,6 +356,10 @@ extern ssize_t tcp_splice_read(struct socket *sk, loff_t *ppos, struct pipe_inode_info *pipe, size_t len, unsigned int flags); +extern int tcp_use_userconfig_sysctl_handler(struct ctl_table *, int, + void __user *, size_t *, loff_t *); +extern int tcp_proc_delayed_ack_control(struct ctl_table *, int, + void __user *, size_t *, loff_t *); static inline void tcp_dec_quickack_mode(struct sock *sk, const unsigned int pkts) { diff --git a/include/sound/Kbuild b/include/sound/Kbuild index 2de3dd7f8e66..74049b0514c1 100644 --- a/include/sound/Kbuild +++ b/include/sound/Kbuild @@ -14,3 +14,5 @@ header-y += compress_offload.h header-y += lsm_params.h header-y += voice_params.h header-y += audio_effects.h +header-y += voice_svc.h +header-y += msmcal-hwdep.h diff --git a/include/sound/apr_audio-v2.h b/include/sound/apr_audio-v2.h index 6ac796c59f63..91aa138f9929 100644 --- a/include/sound/apr_audio-v2.h +++ b/include/sound/apr_audio-v2.h @@ -7412,4 +7412,98 @@ struct adm_custom_topo_add{ #define DSM_ID_FILTER_PARAMS_RXINIT 0x00000006 #define DSM_ID_FILTER_PARAMS_TXINIT 0x00000007 #endif + +/* Command for Matrix or Stream Router */ +#define ASM_SESSION_CMD_SET_MTMX_STRTR_PARAMS_V2 0x00010DCE +/* Module for AVSYNC */ +#define ASM_SESSION_MTMX_STRTR_MODULE_ID_AVSYNC 0x00010DC6 + +/* Parameter used by #ASM_SESSION_MTMX_STRTR_MODULE_ID_AVSYNC to specify the + * render window start value. This parameter is supported only for a Set + * command (not a Get command) in the Rx direction + * (#ASM_SESSION_CMD_SET_MTMX_STRTR_PARAMS_V2). + * Render window start is a value (session time minus timestamp, or ST-TS) + * below which frames are held, and after which frames are immediately + * rendered. + */ +#define ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_START_V2 0x00010DD1 + +/* Parameter used by #ASM_SESSION_MTMX_STRTR_MODULE_ID_AVSYNC to specify the + * render window end value. This parameter is supported only for a Set + * command (not a Get command) in the Rx direction + * (#ASM_SESSION_CMD_SET_MTMX_STRTR_PARAMS_V2). Render window end is a value + * (session time minus timestamp) above which frames are dropped, and below + * which frames are immediately rendered. + */ +#define ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_END_V2 0x00010DD2 + +/* Generic payload of the window parameters in the + * #ASM_SESSION_MTMX_STRTR_MODULE_ID_AVSYNC module. + * This payload is supported only for a Set command + * (not a Get command) on the Rx path. + */ +struct asm_session_mtmx_strtr_param_window_v2_t { + u32 window_lsw; + /* Lower 32 bits of the render window start value. */ + + u32 window_msw; + /* Upper 32 bits of the render window start value. + + * The 64-bit number formed by window_lsw and window_msw specifies a + * signed 64-bit window value in microseconds. The sign extension is + * necessary. This value is used by the following parameter IDs: + * #ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_START_V2 + * #ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_END_V2 + * #ASM_SESSION_MTMX_STRTR_PARAM_STAT_WINDOW_START_V2 + * #ASM_SESSION_MTMX_STRTR_PARAM_STAT_WINDOW_END_V2 + * The value depends on which parameter ID is used. + * The aDSP honors the windows at a granularity of 1 ms. + */ +}; + +struct asm_session_cmd_set_mtmx_strstr_params_v2 { + uint32_t data_payload_addr_lsw; + /* Lower 32 bits of the 64-bit data payload address. */ + + uint32_t data_payload_addr_msw; + /* Upper 32 bits of the 64-bit data payload address. + * If the address is not sent (NULL), the message is in the payload. + * If the address is sent (non-NULL), the parameter data payloads + * begin at the specified address. + */ + + uint32_t mem_map_handle; + /* Unique identifier for an address. This memory map handle is returned + * by the aDSP through the #ASM_CMD_SHARED_MEM_MAP_REGIONS command. + * values + * - NULL -- Parameter data payloads are within the message payload + * (in-band). + * - Non-NULL -- Parameter data payloads begin at the address specified + * in the data_payload_addr_lsw and data_payload_addr_msw fields + * (out-of-band). + */ + + uint32_t data_payload_size; + /* Actual size of the variable payload accompanying the message, or in + * shared memory. This field is used for parsing the parameter payload. + * values > 0 bytes + */ + + uint32_t direction; + /* Direction of the entity (matrix mixer or stream router) on which + * the parameter is to be set. + * values + * - 0 -- Rx (for Rx stream router or Rx matrix mixer) + * - 1 -- Tx (for Tx stream router or Tx matrix mixer) + */ +}; + +struct asm_mtmx_strtr_params { + struct apr_hdr hdr; + struct asm_session_cmd_set_mtmx_strstr_params_v2 param; + struct asm_stream_param_data_v2 data; + u32 window_lsw; + u32 window_msw; +} __packed; + #endif /*_APR_AUDIO_V2_H_ */ diff --git a/include/sound/asound.h b/include/sound/asound.h index 7bf01b63d8a5..244bb30db7dc 100644 --- a/include/sound/asound.h +++ b/include/sound/asound.h @@ -95,9 +95,10 @@ enum { SNDRV_HWDEP_IFACE_SB_RC, /* SB Extigy/Audigy2NX remote control */ SNDRV_HWDEP_IFACE_HDA, /* HD-audio */ SNDRV_HWDEP_IFACE_USB_STREAM, /* direct access to usb stream */ + SNDRV_HWDEP_IFACE_AUDIO_CODEC, /* codec Audio Control */ /* Don't forget to change the following: */ - SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_USB_STREAM + SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_AUDIO_CODEC }; struct snd_hwdep_info { diff --git a/include/sound/msmcal-hwdep.h b/include/sound/msmcal-hwdep.h new file mode 100644 index 000000000000..324b497c1ba6 --- /dev/null +++ b/include/sound/msmcal-hwdep.h @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +#ifndef _CALIB_HWDEP_H +#define _CALIB_HWDEP_H + +#define WCD9XXX_CODEC_HWDEP_NODE 1000 +enum wcd_cal_type { + WCD9XXX_MIN_CAL, + WCD9XXX_ANC_CAL = WCD9XXX_MIN_CAL, + WCD9XXX_MAD_CAL, + WCD9XXX_MBHC_CAL, + WCD9XXX_MAX_CAL, +}; + +struct wcdcal_ioctl_buffer { + __u32 size; + __u8 __user *buffer; + enum wcd_cal_type cal_type; +}; + +#define SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE \ + _IOW('U', 0x1, struct wcdcal_ioctl_buffer) + +#endif /*_CALIB_HWDEP_H*/ diff --git a/include/sound/q6asm-v2.h b/include/sound/q6asm-v2.h index 3b1c077177e9..c7d0090fe527 100644 --- a/include/sound/q6asm-v2.h +++ b/include/sound/q6asm-v2.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -167,6 +167,7 @@ struct audio_client { /* Relative or absolute TS */ atomic_t time_flag; atomic_t nowait_cmd_cnt; + atomic_t mem_state; void *priv; uint32_t io_mode; uint64_t time_stamp; @@ -178,11 +179,13 @@ struct audio_client { struct audio_port_data port[2]; wait_queue_head_t cmd_wait; wait_queue_head_t time_wait; + wait_queue_head_t mem_wait; int perf_mode; int stream_id; /* audio cache operations fptr*/ int (*fptr_cache_ops)(struct audio_buffer *abuff, int cache_op); atomic_t unmap_cb_success; + atomic_t reset; }; void q6asm_audio_client_free(struct audio_client *ac); @@ -424,4 +427,9 @@ int q6asm_stream_send_meta_data(struct audio_client *ac, uint32_t stream_id, int q6asm_stream_send_meta_data(struct audio_client *ac, uint32_t stream_id, uint32_t initial_samples, uint32_t trailing_samples); +int q6asm_send_mtmx_strtr_window(struct audio_client *ac, + struct asm_session_mtmx_strtr_param_window_v2_t *window_param, + uint32_t param_id); + + #endif /* __Q6_ASM_H__ */ diff --git a/include/sound/q6audio-v2.h b/include/sound/q6audio-v2.h index 8ac835cf7639..e3e62c92cb3a 100644 --- a/include/sound/q6audio-v2.h +++ b/include/sound/q6audio-v2.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -32,4 +32,6 @@ int q6audio_is_digital_pcm_interface(u16 port_id); int q6audio_get_port_id(u16 port_id); +int q6audio_get_port_id_from_index(u16 port_idx); + #endif diff --git a/sound/soc/msm/qdsp6v2/q6core.h b/include/sound/q6core.h similarity index 100% rename from sound/soc/msm/qdsp6v2/q6core.h rename to include/sound/q6core.h diff --git a/include/sound/q6lsm.h b/include/sound/q6lsm.h index 34eba81f285c..8f06f20cff32 100644 --- a/include/sound/q6lsm.h +++ b/include/sound/q6lsm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Linux Foundation. All rights reserved. + * Copyright (c) 2013-2014, 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 @@ -47,6 +47,8 @@ struct lsm_client { uint16_t user_sensitivity; uint16_t kw_sensitivity; bool started; + dma_addr_t lsm_cal_phy_addr; + uint32_t lsm_cal_size; }; struct lsm_stream_cmd_open_tx { @@ -123,10 +125,9 @@ void q6lsm_client_free(struct lsm_client *client); int q6lsm_open(struct lsm_client *client); int q6lsm_start(struct lsm_client *client, bool wait); int q6lsm_stop(struct lsm_client *client, bool wait); -int q6lsm_snd_model_buf_alloc(struct lsm_client *client, uint32_t len); +int q6lsm_snd_model_buf_alloc(struct lsm_client *client, size_t len); int q6lsm_snd_model_buf_free(struct lsm_client *client); int q6lsm_close(struct lsm_client *client); -int q6lsm_unmap_cal_blocks(void); int q6lsm_register_sound_model(struct lsm_client *client, enum lsm_detection_mode mode, u16 minkeyword, u16 minuser, bool detectfailure); diff --git a/include/sound/voice_svc.h b/include/sound/voice_svc.h new file mode 100644 index 000000000000..704501878b21 --- /dev/null +++ b/include/sound/voice_svc.h @@ -0,0 +1,46 @@ +#ifndef __VOICE_SVC_H__ +#define __VOICE_SVC_H__ + +#include +#include + +#define VOICE_SVC_DRIVER_NAME "voice_svc" + +#define VOICE_SVC_MVM_STR "MVM" +#define VOICE_SVC_CVS_STR "CVS" +#define MAX_APR_SERVICE_NAME_LEN 64 + +struct voice_svc_register { + char svc_name[MAX_APR_SERVICE_NAME_LEN]; + __u32 src_port; + __u8 reg_flag; +}; + +struct voice_svc_cmd_response { + __u32 src_port; + __u32 dest_port; + __u32 token; + __u32 opcode; + __u32 payload_size; + __u8 payload[0]; +}; + +struct voice_svc_cmd_request { + char svc_name[MAX_APR_SERVICE_NAME_LEN]; + __u32 src_port; + __u32 dest_port; + __u32 token; + __u32 opcode; + __u32 payload_size; + __u8 payload[0]; +}; + +#define VOICE_SVC_MAGIC 'N' + +#define SNDRV_VOICE_SVC_REGISTER_SVC _IOWR(VOICE_SVC_MAGIC, \ + 0x01, struct voice_svc_register) +#define SNDRV_VOICE_SVC_CMD_RESPONSE _IOWR(VOICE_SVC_MAGIC, \ + 0x02, struct voice_svc_cmd_response) +#define SNDRV_VOICE_SVC_CMD_REQUEST _IOWR(VOICE_SVC_MAGIC, \ + 0x03, struct voice_svc_cmd_request) +#endif diff --git a/kernel/power/Makefile b/kernel/power/Makefile index 29472bff11ef..299f8a4d42f7 100644 --- a/kernel/power/Makefile +++ b/kernel/power/Makefile @@ -13,3 +13,5 @@ obj-$(CONFIG_PM_AUTOSLEEP) += autosleep.o obj-$(CONFIG_PM_WAKELOCKS) += wakelock.o obj-$(CONFIG_MAGIC_SYSRQ) += poweroff.o + +obj-$(CONFIG_SUSPEND) += wakeup_reason.o diff --git a/kernel/power/wakeup_reason.c b/kernel/power/wakeup_reason.c new file mode 100644 index 000000000000..1e1277369f10 --- /dev/null +++ b/kernel/power/wakeup_reason.c @@ -0,0 +1,139 @@ +/* + * kernel/power/wakeup_reason.c + * + * Logs the reasons which caused the kernel to resume from + * the suspend mode. + * + * Copyright (C) 2014 Google, Inc. + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define MAX_WAKEUP_REASON_IRQS 32 +static int irq_list[MAX_WAKEUP_REASON_IRQS]; +static int irq_count; +static struct kobject *wakeup_reason; +static spinlock_t resume_reason_lock; + +static ssize_t last_resume_reason_show(struct kobject *kobj, struct kobj_attribute *attr, + char *buf) +{ + int irq_no, buf_offset = 0; + struct irq_desc *desc; + spin_lock(&resume_reason_lock); + for (irq_no = 0; irq_no < irq_count; irq_no++) { + desc = irq_to_desc(irq_list[irq_no]); + if (desc && desc->action && desc->action->name) + buf_offset += sprintf(buf + buf_offset, "%d %s\n", + irq_list[irq_no], desc->action->name); + else + buf_offset += sprintf(buf + buf_offset, "%d\n", + irq_list[irq_no]); + } + spin_unlock(&resume_reason_lock); + return buf_offset; +} + +static struct kobj_attribute resume_reason = __ATTR_RO(last_resume_reason); + +static struct attribute *attrs[] = { + &resume_reason.attr, + NULL, +}; +static struct attribute_group attr_group = { + .attrs = attrs, +}; + +/* + * logs all the wake up reasons to the kernel + * stores the irqs to expose them to the userspace via sysfs + */ +void log_wakeup_reason(int irq) +{ + struct irq_desc *desc; + desc = irq_to_desc(irq); + if (desc && desc->action && desc->action->name) + printk(KERN_INFO "Resume caused by IRQ %d, %s\n", irq, + desc->action->name); + else + printk(KERN_INFO "Resume caused by IRQ %d\n", irq); + + spin_lock(&resume_reason_lock); + if (irq_count == MAX_WAKEUP_REASON_IRQS) { + spin_unlock(&resume_reason_lock); + printk(KERN_WARNING "Resume caused by more than %d IRQs\n", + MAX_WAKEUP_REASON_IRQS); + return; + } + + irq_list[irq_count++] = irq; + spin_unlock(&resume_reason_lock); +} + +/* Detects a suspend and clears all the previous wake up reasons*/ +static int wakeup_reason_pm_event(struct notifier_block *notifier, + unsigned long pm_event, void *unused) +{ + switch (pm_event) { + case PM_SUSPEND_PREPARE: + spin_lock(&resume_reason_lock); + irq_count = 0; + spin_unlock(&resume_reason_lock); + break; + default: + break; + } + return NOTIFY_DONE; +} + +static struct notifier_block wakeup_reason_pm_notifier_block = { + .notifier_call = wakeup_reason_pm_event, +}; + +/* Initializes the sysfs parameter + * registers the pm_event notifier + */ +int __init wakeup_reason_init(void) +{ + int retval; + spin_lock_init(&resume_reason_lock); + retval = register_pm_notifier(&wakeup_reason_pm_notifier_block); + if (retval) + printk(KERN_WARNING "[%s] failed to register PM notifier %d\n", + __func__, retval); + + wakeup_reason = kobject_create_and_add("wakeup_reasons", kernel_kobj); + if (!wakeup_reason) { + printk(KERN_WARNING "[%s] failed to create a sysfs kobject\n", + __func__); + return 1; + } + retval = sysfs_create_group(wakeup_reason, &attr_group); + if (retval) { + kobject_put(wakeup_reason); + printk(KERN_WARNING "[%s] failed to create a sysfs group %d\n", + __func__, retval); + } + return 0; +} + +late_initcall(wakeup_reason_init); diff --git a/kernel/sys.c b/kernel/sys.c index 923cdd82d4c7..6657467f40ab 100644 --- a/kernel/sys.c +++ b/kernel/sys.c @@ -1294,7 +1294,7 @@ static int override_release(char __user *release, size_t len) rest++; } v = ((LINUX_VERSION_CODE >> 8) & 0xff) + 40; - copy = min(sizeof(buf), max_t(size_t, 1, len)); + copy = clamp_t(size_t, len, 1, sizeof(buf)); copy = scnprintf(buf, copy, "2.6.%u%s", v, rest); ret = copy_to_user(release, buf, copy + 1); } diff --git a/mm/page-writeback.c b/mm/page-writeback.c index d012c75b6789..a5e8dc23190c 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -189,18 +189,6 @@ static unsigned long highmem_dirtyable_memory(unsigned long total) x += zone_page_state(z, NR_FREE_PAGES) + zone_reclaimable_pages(z) - z->dirty_balance_reserve; } - /* - * Unreclaimable memory (kernel memory or anonymous memory - * without swap) can bring down the dirtyable pages below - * the zone's dirty balance reserve and the above calculation - * will underflow. However we still want to add in nodes - * which are below threshold (negative values) to get a more - * accurate calculation but make sure that the total never - * underflows. - */ - if ((long)x < 0) - x = 0; - /* * Make sure that the number of highmem pages is never larger * than the number of the total dirtyable memory. This can only @@ -223,8 +211,8 @@ unsigned long global_dirtyable_memory(void) { unsigned long x; - x = global_page_state(NR_FREE_PAGES) + global_reclaimable_pages(); - x -= min(x, dirty_balance_reserve); + x = global_page_state(NR_FREE_PAGES) + global_reclaimable_pages() - + dirty_balance_reserve; if (!vm_highmem_is_dirtyable) x -= highmem_dirtyable_memory(x); @@ -291,12 +279,9 @@ static unsigned long zone_dirtyable_memory(struct zone *zone) * highmem zone can hold its share of dirty pages, so we don't * care about vm_highmem_is_dirtyable here. */ - unsigned long nr_pages = zone_page_state(zone, NR_FREE_PAGES) + - zone_reclaimable_pages(zone); - - /* don't allow this to underflow */ - nr_pages -= min(nr_pages, zone->dirty_balance_reserve); - return nr_pages; + return zone_page_state(zone, NR_FREE_PAGES) + + zone_reclaimable_pages(zone) - + zone->dirty_balance_reserve; } /** diff --git a/mm/page_alloc.c b/mm/page_alloc.c index e511515c228d..4024538e438a 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -657,7 +657,6 @@ static void free_pcppages_bulk(struct zone *zone, int count, int migratetype = 0; int batch_free = 0; int to_free = count; - int mt = 0; spin_lock(&zone->lock); zone->pages_scanned = 0; @@ -685,16 +684,17 @@ static void free_pcppages_bulk(struct zone *zone, int count, batch_free = to_free; do { + int mt; /* migratetype of the to-be-freed page */ + page = list_entry(list->prev, struct page, lru); - mt = get_pageblock_migratetype(page); /* must delete as __free_one_page list manipulates */ list_del(&page->lru); + mt = get_freepage_migratetype(page); /* MIGRATE_MOVABLE list may include MIGRATE_RESERVEs */ - __free_one_page(page, zone, 0, page_private(page)); - trace_mm_page_pcpu_drain(page, 0, page_private(page)); + __free_one_page(page, zone, 0, mt); + trace_mm_page_pcpu_drain(page, 0, mt); if (is_migrate_cma(mt)) - __mod_zone_page_state(zone, - NR_FREE_CMA_PAGES, 1); + __mod_zone_page_state(zone, NR_FREE_CMA_PAGES, 1); } while (--to_free && --batch_free && !list_empty(list)); } __mod_zone_page_state(zone, NR_FREE_PAGES, count); @@ -743,6 +743,7 @@ static void __free_pages_ok(struct page *page, unsigned int order) { unsigned long flags; int wasMlocked = __TestClearPageMlocked(page); + int migratetype; if (!free_pages_prepare(page, order)) return; @@ -751,8 +752,9 @@ static void __free_pages_ok(struct page *page, unsigned int order) if (unlikely(wasMlocked)) free_page_mlock(page); __count_vm_events(PGFREE, 1 << order); - free_one_page(page_zone(page), page, order, - get_pageblock_migratetype(page)); + migratetype = get_pageblock_migratetype(page); + set_freepage_migratetype(page, migratetype); + free_one_page(page_zone(page), page, order, migratetype); local_irq_restore(flags); } @@ -951,7 +953,7 @@ int *get_migratetype_fallbacks(int mtype) * Note that start_page and end_pages are not aligned on a pageblock * boundary. If alignment is required, use move_freepages_block() */ -static int move_freepages(struct zone *zone, +int move_freepages(struct zone *zone, struct page *start_page, struct page *end_page, int migratetype) { @@ -987,6 +989,7 @@ static int move_freepages(struct zone *zone, order = page_order(page); list_move(&page->lru, &zone->free_area[order].free_list[migratetype]); + set_freepage_migratetype(page, migratetype); page += 1 << order; pages_moved += 1 << order; } @@ -1206,7 +1209,7 @@ static int rmqueue_bulk(struct zone *zone, unsigned int order, if (!is_migrate_cma(mt) && mt != MIGRATE_ISOLATE) mt = migratetype; } - set_page_private(page, mt); + set_freepage_migratetype(page, mt); list = &page->lru; if (is_migrate_cma(mt)) __mod_zone_page_state(zone, NR_FREE_CMA_PAGES, @@ -1374,7 +1377,7 @@ void free_hot_cold_page(struct page *page, int cold) return; migratetype = get_pageblock_migratetype(page); - set_page_private(page, migratetype); + set_freepage_migratetype(page, migratetype); local_irq_save(flags); if (unlikely(wasMlocked)) free_page_mlock(page); diff --git a/mm/page_isolation.c b/mm/page_isolation.c index c9f04774f2b8..59c029821f70 100644 --- a/mm/page_isolation.c +++ b/mm/page_isolation.c @@ -100,10 +100,25 @@ __test_page_isolated_in_pageblock(unsigned long pfn, unsigned long end_pfn) continue; } page = pfn_to_page(pfn); - if (PageBuddy(page)) + if (PageBuddy(page)) { + /* + * If race between isolatation and allocation happens, + * some free pages could be in MIGRATE_MOVABLE list + * although pageblock's migratation type of the page + * is MIGRATE_ISOLATE. Catch it and move the page into + * MIGRATE_ISOLATE list. + */ + if (get_freepage_migratetype(page) != MIGRATE_ISOLATE) { + struct page *end_page; + + end_page = page + (1 << page_order(page)) - 1; + move_freepages(page_zone(page), page, end_page, + MIGRATE_ISOLATE); + } pfn += 1 << page_order(page); + } else if (page_count(page) == 0 && - page_private(page) == MIGRATE_ISOLATE) + get_freepage_migratetype(page) == MIGRATE_ISOLATE) pfn += 1; else break; diff --git a/net/bluetooth/hci_conn.c b/net/bluetooth/hci_conn.c index 9ffd0f1ab18f..4f02c09543b7 100644 --- a/net/bluetooth/hci_conn.c +++ b/net/bluetooth/hci_conn.c @@ -404,7 +404,7 @@ void hci_le_ltk_reply(struct hci_conn *conn, u8 ltk[16]) memset(&cp, 0, sizeof(cp)); cp.handle = cpu_to_le16(conn->handle); - memcpy(cp.ltk, ltk, sizeof(ltk)); + memcpy(cp.ltk, ltk, sizeof(*ltk)); hci_send_cmd(hdev, HCI_OP_LE_LTK_REPLY, sizeof(cp), &cp); } diff --git a/net/core/fib_rules.c b/net/core/fib_rules.c index c02e63c908da..b17985f87cf4 100644 --- a/net/core/fib_rules.c +++ b/net/core/fib_rules.c @@ -17,6 +17,12 @@ #include #include +#define INVALID_UID ((uid_t) -1) +#define uid_valid(uid) ((uid) != -1) +#define uid_lte(a, b) ((a) <= (b)) +#define uid_eq(a, b) ((a) == (b)) +#define uid_gte(a, b) ((a) >= (b)) + int fib_default_rule_add(struct fib_rules_ops *ops, u32 pref, u32 table, u32 flags) { @@ -31,6 +37,8 @@ int fib_default_rule_add(struct fib_rules_ops *ops, r->pref = pref; r->table = table; r->flags = flags; + r->uid_start = INVALID_UID; + r->uid_end = INVALID_UID; r->fr_net = hold_net(ops->fro_net); /* The lock is not required here, the list in unreacheable @@ -177,6 +185,23 @@ void fib_rules_unregister(struct fib_rules_ops *ops) } EXPORT_SYMBOL_GPL(fib_rules_unregister); +static inline uid_t fib_nl_uid(struct nlattr *nla) +{ + return nla_get_u32(nla); +} + +static int nla_put_uid(struct sk_buff *skb, int idx, uid_t uid) +{ + return nla_put_u32(skb, idx, uid); +} + +static int fib_uid_range_match(struct flowi *fl, struct fib_rule *rule) +{ + return (!uid_valid(rule->uid_start) && !uid_valid(rule->uid_end)) || + (uid_gte(fl->flowi_uid, rule->uid_start) && + uid_lte(fl->flowi_uid, rule->uid_end)); +} + static int fib_rule_match(struct fib_rule *rule, struct fib_rules_ops *ops, struct flowi *fl, int flags) { @@ -191,6 +216,9 @@ static int fib_rule_match(struct fib_rule *rule, struct fib_rules_ops *ops, if ((rule->mark ^ fl->flowi_mark) & rule->mark_mask) goto out; + if (!fib_uid_range_match(fl, rule)) + goto out; + ret = ops->match(rule, fl, flags); out: return (rule->flags & FIB_RULE_INVERT) ? !ret : ret; @@ -361,6 +389,19 @@ static int fib_nl_newrule(struct sk_buff *skb, struct nlmsghdr* nlh, void *arg) } else if (rule->action == FR_ACT_GOTO) goto errout_free; + /* UID start and end must either both be valid or both unspecified. */ + rule->uid_start = rule->uid_end = INVALID_UID; + if (tb[FRA_UID_START] || tb[FRA_UID_END]) { + if (tb[FRA_UID_START] && tb[FRA_UID_END]) { + rule->uid_start = fib_nl_uid(tb[FRA_UID_START]); + rule->uid_end = fib_nl_uid(tb[FRA_UID_END]); + } + if (!uid_valid(rule->uid_start) || + !uid_valid(rule->uid_end) || + !uid_lte(rule->uid_start, rule->uid_end)) + goto errout_free; + } + err = ops->configure(rule, skb, frh, tb); if (err < 0) goto errout_free; @@ -443,7 +484,8 @@ static int fib_nl_delrule(struct sk_buff *skb, struct nlmsghdr* nlh, void *arg) if (frh->action && (frh->action != rule->action)) continue; - if (frh->table && (frh_get_table(frh, tb) != rule->table)) + if (frh_get_table(frh, tb) && + (frh_get_table(frh, tb) != rule->table)) continue; if (tb[FRA_PRIORITY] && @@ -466,6 +508,14 @@ static int fib_nl_delrule(struct sk_buff *skb, struct nlmsghdr* nlh, void *arg) (rule->mark_mask != nla_get_u32(tb[FRA_FWMASK]))) continue; + if (tb[FRA_UID_START] && + !uid_eq(rule->uid_start, fib_nl_uid(tb[FRA_UID_START]))) + continue; + + if (tb[FRA_UID_END] && + !uid_eq(rule->uid_end, fib_nl_uid(tb[FRA_UID_END]))) + continue; + if (!ops->compare(rule, frh, tb)) continue; @@ -520,7 +570,9 @@ static inline size_t fib_rule_nlmsg_size(struct fib_rules_ops *ops, + nla_total_size(4) /* FRA_PRIORITY */ + nla_total_size(4) /* FRA_TABLE */ + nla_total_size(4) /* FRA_FWMARK */ - + nla_total_size(4); /* FRA_FWMASK */ + + nla_total_size(4) /* FRA_FWMASK */ + + nla_total_size(4) /* FRA_UID_START */ + + nla_total_size(4); /* FRA_UID_END */ if (ops->nlmsg_payload) payload += ops->nlmsg_payload(rule); @@ -578,6 +630,12 @@ static int fib_nl_fill_rule(struct sk_buff *skb, struct fib_rule *rule, if (rule->target) NLA_PUT_U32(skb, FRA_GOTO, rule->target); + if (uid_valid(rule->uid_start)) + nla_put_uid(skb, FRA_UID_START, rule->uid_start); + + if (uid_valid(rule->uid_end)) + nla_put_uid(skb, FRA_UID_END, rule->uid_end); + if (ops->fill(rule, skb, frh) < 0) goto nla_put_failure; diff --git a/net/core/sock.c b/net/core/sock.c index 0f8402ea434b..dca2a5a27609 100644 --- a/net/core/sock.c +++ b/net/core/sock.c @@ -644,7 +644,8 @@ int sock_setsockopt(struct socket *sock, int level, int optname, case SO_KEEPALIVE: #ifdef CONFIG_INET - if (sk->sk_protocol == IPPROTO_TCP) + if (sk->sk_protocol == IPPROTO_TCP && + sk->sk_type == SOCK_STREAM) tcp_set_keepalive(sk, valbool); #endif sock_valbool_flag(sk, SOCK_KEEPOPEN, valbool); diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c index cbe3a68507cf..0a24199ff848 100644 --- a/net/ipv4/fib_frontend.c +++ b/net/ipv4/fib_frontend.c @@ -481,6 +481,7 @@ const struct nla_policy rtm_ipv4_policy[RTA_MAX + 1] = { [RTA_METRICS] = { .type = NLA_NESTED }, [RTA_MULTIPATH] = { .len = sizeof(struct rtnexthop) }, [RTA_FLOW] = { .type = NLA_U32 }, + [RTA_UID] = { .type = NLA_U32 }, }; static int rtm_to_fib_config(struct net *net, struct sk_buff *skb, diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c index 2e109ff62ea3..ea63a5767fcf 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c @@ -335,6 +335,7 @@ static void icmp_reply(struct icmp_bxm *icmp_param, struct sk_buff *skb) struct sock *sk; struct inet_sock *inet; __be32 daddr; + u32 mark = IP4_REPLY_MARK(net, skb->mark); if (ip_options_echo(&icmp_param->replyopts.opt.opt, skb)) return; @@ -347,6 +348,7 @@ static void icmp_reply(struct icmp_bxm *icmp_param, struct sk_buff *skb) icmp_param->data.icmph.checksum = 0; inet->tos = ip_hdr(skb)->tos; + sk->sk_mark = mark; daddr = ipc.addr = ip_hdr(skb)->saddr; ipc.opt = NULL; ipc.tx_flags = 0; @@ -358,6 +360,7 @@ static void icmp_reply(struct icmp_bxm *icmp_param, struct sk_buff *skb) memset(&fl4, 0, sizeof(fl4)); fl4.daddr = daddr; fl4.saddr = rt->rt_spec_dst; + fl4.flowi4_mark = mark; fl4.flowi4_tos = RT_TOS(ip_hdr(skb)->tos); fl4.flowi4_proto = IPPROTO_ICMP; security_skb_classify_flow(skb, flowi4_to_flowi(&fl4)); @@ -376,7 +379,7 @@ static struct rtable *icmp_route_lookup(struct net *net, struct flowi4 *fl4, struct sk_buff *skb_in, const struct iphdr *iph, - __be32 saddr, u8 tos, + __be32 saddr, u8 tos, u32 mark, int type, int code, struct icmp_bxm *param) { @@ -388,6 +391,7 @@ static struct rtable *icmp_route_lookup(struct net *net, fl4->daddr = (param->replyopts.opt.opt.srr ? param->replyopts.opt.opt.faddr : iph->saddr); fl4->saddr = saddr; + fl4->flowi4_mark = mark; fl4->flowi4_tos = RT_TOS(tos); fl4->flowi4_proto = IPPROTO_ICMP; fl4->fl4_icmp_type = type; @@ -485,6 +489,7 @@ void icmp_send(struct sk_buff *skb_in, int type, int code, __be32 info) struct flowi4 fl4; __be32 saddr; u8 tos; + u32 mark; struct net *net; struct sock *sk; @@ -581,6 +586,7 @@ void icmp_send(struct sk_buff *skb_in, int type, int code, __be32 info) tos = icmp_pointers[type].error ? ((iph->tos & IPTOS_TOS_MASK) | IPTOS_PREC_INTERNETCONTROL) : iph->tos; + mark = IP4_REPLY_MARK(net, skb_in->mark); if (ip_options_echo(&icmp_param.replyopts.opt.opt, skb_in)) goto out_unlock; @@ -597,11 +603,12 @@ void icmp_send(struct sk_buff *skb_in, int type, int code, __be32 info) icmp_param.skb = skb_in; icmp_param.offset = skb_network_offset(skb_in); inet_sk(sk)->tos = tos; + sk->sk_mark = mark; ipc.addr = iph->saddr; ipc.opt = &icmp_param.replyopts.opt; ipc.tx_flags = 0; - rt = icmp_route_lookup(net, &fl4, skb_in, iph, saddr, tos, + rt = icmp_route_lookup(net, &fl4, skb_in, iph, saddr, tos, mark, type, code, &icmp_param); if (IS_ERR(rt)) goto out_unlock; diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index 19d66cefd7d3..fb10d5874f25 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -361,11 +361,12 @@ struct dst_entry *inet_csk_route_req(struct sock *sk, struct ip_options_rcu *opt = inet_rsk(req)->opt; struct net *net = sock_net(sk); - flowi4_init_output(fl4, sk->sk_bound_dev_if, sk->sk_mark, + flowi4_init_output(fl4, sk->sk_bound_dev_if, ireq->ir_mark, RT_CONN_FLAGS(sk), RT_SCOPE_UNIVERSE, sk->sk_protocol, inet_sk_flowi_flags(sk), (opt && opt->opt.srr) ? opt->opt.faddr : ireq->rmt_addr, - ireq->loc_addr, ireq->rmt_port, inet_sk(sk)->inet_sport); + ireq->loc_addr, ireq->rmt_port, inet_sk(sk)->inet_sport, + sock_i_uid(sk)); security_req_classify_flow(req, flowi4_to_flowi(fl4)); rt = ip_route_output_flow(net, fl4, sk); if (IS_ERR(rt)) @@ -394,11 +395,12 @@ struct dst_entry *inet_csk_route_child_sock(struct sock *sk, struct rtable *rt; fl4 = &newinet->cork.fl.u.ip4; - flowi4_init_output(fl4, sk->sk_bound_dev_if, sk->sk_mark, + flowi4_init_output(fl4, sk->sk_bound_dev_if, ireq->ir_mark, RT_CONN_FLAGS(sk), RT_SCOPE_UNIVERSE, sk->sk_protocol, inet_sk_flowi_flags(sk), (opt && opt->opt.srr) ? opt->opt.faddr : ireq->rmt_addr, - ireq->loc_addr, ireq->rmt_port, inet_sk(sk)->inet_sport); + ireq->loc_addr, ireq->rmt_port, inet_sk(sk)->inet_sport, + sock_i_uid(sk)); security_req_classify_flow(req, flowi4_to_flowi(fl4)); rt = ip_route_output_flow(net, fl4, sk); if (IS_ERR(rt)) @@ -616,6 +618,8 @@ struct sock *inet_csk_clone_lock(const struct sock *sk, inet_sk(newsk)->inet_sport = inet_rsk(req)->loc_port; newsk->sk_write_space = sk_stream_write_space; + newsk->sk_mark = inet_rsk(req)->ir_mark; + newicsk->icsk_retransmits = 0; newicsk->icsk_backoff = 0; newicsk->icsk_probes_out = 0; diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c index 4910176d24ed..6f72f395eb13 100644 --- a/net/ipv4/ip_output.c +++ b/net/ipv4/ip_output.c @@ -1500,12 +1500,14 @@ void ip_send_reply(struct sock *sk, struct sk_buff *skb, __be32 daddr, daddr = replyopts.opt.opt.faddr; } - flowi4_init_output(&fl4, arg->bound_dev_if, 0, + flowi4_init_output(&fl4, arg->bound_dev_if, + IP4_REPLY_MARK(sock_net(sk), skb->mark), RT_TOS(arg->tos), RT_SCOPE_UNIVERSE, sk->sk_protocol, ip_reply_arg_flowi_flags(arg), daddr, rt->rt_spec_dst, - tcp_hdr(skb)->source, tcp_hdr(skb)->dest); + tcp_hdr(skb)->source, tcp_hdr(skb)->dest, + arg->uid); security_skb_classify_flow(skb, flowi4_to_flowi(&fl4)); rt = ip_route_output_key(sock_net(sk), &fl4); if (IS_ERR(rt)) diff --git a/net/ipv4/ping.c b/net/ipv4/ping.c index 7f38d35c62f1..727ab32a2f17 100644 --- a/net/ipv4/ping.c +++ b/net/ipv4/ping.c @@ -248,26 +248,32 @@ int ping_init_sock(struct sock *sk) struct net *net = sock_net(sk); gid_t group = current_egid(); gid_t range[2]; - struct group_info *group_info = get_current_groups(); - int i, j, count = group_info->ngroups; + struct group_info *group_info; + int i, j, count; + int ret = 0; inet_get_ping_group_range_net(net, range, range+1); if (range[0] <= group && group <= range[1]) return 0; + group_info = get_current_groups(); + count = group_info->ngroups; for (i = 0; i < group_info->nblocks; i++) { int cp_count = min_t(int, NGROUPS_PER_BLOCK, count); for (j = 0; j < cp_count; j++) { group = group_info->blocks[i][j]; if (range[0] <= group && group <= range[1]) - return 0; + goto out_release_group; } count -= cp_count; } + ret = -EACCES; - return -EACCES; +out_release_group: + put_group_info(group_info); + return ret; } EXPORT_SYMBOL_GPL(ping_init_sock); @@ -765,7 +771,8 @@ int ping_v4_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, flowi4_init_output(&fl4, ipc.oif, sk->sk_mark, tos, RT_SCOPE_UNIVERSE, sk->sk_protocol, - inet_sk_flowi_flags(sk), faddr, saddr, 0, 0); + inet_sk_flowi_flags(sk), faddr, saddr, 0, 0, + sock_i_uid(sk)); security_sk_classify_flow(sk, flowi4_to_flowi(&fl4)); rt = ip_route_output_flow(net, &fl4, sk); @@ -879,10 +886,13 @@ int ping_recvmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, /* Copy the address and add cmsg data. */ if (family == AF_INET) { sin = (struct sockaddr_in *) msg->msg_name; - sin->sin_family = AF_INET; - sin->sin_port = 0 /* skb->h.uh->source */; - sin->sin_addr.s_addr = ip_hdr(skb)->saddr; - memset(sin->sin_zero, 0, sizeof(sin->sin_zero)); + + if (sin) { + sin->sin_family = AF_INET; + sin->sin_port = 0 /* skb->h.uh->source */; + sin->sin_addr.s_addr = ip_hdr(skb)->saddr; + memset(sin->sin_zero, 0, sizeof(sin->sin_zero)); + } if (isk->cmsg_flags) ip_cmsg_recv(msg, skb); @@ -892,17 +902,20 @@ int ping_recvmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, struct ipv6_pinfo *np = inet6_sk(sk); struct ipv6hdr *ip6 = ipv6_hdr(skb); sin6 = (struct sockaddr_in6 *) msg->msg_name; - sin6->sin6_family = AF_INET6; - sin6->sin6_port = 0; - sin6->sin6_addr = ip6->saddr; - if (np->sndflow) - sin6->sin6_flowinfo = - *(__be32 *)ip6 & IPV6_FLOWINFO_MASK; + if (sin6) { + sin6->sin6_family = AF_INET6; + sin6->sin6_port = 0; + sin6->sin6_addr = ip6->saddr; - if (__ipv6_addr_needs_scope_id( - ipv6_addr_type(&sin6->sin6_addr))) - sin6->sin6_scope_id = IP6CB(skb)->iif; + sin6->sin6_flowinfo = 0; + if (np->sndflow) + sin6->sin6_flowinfo = + *(__be32 *)ip6 & IPV6_FLOWINFO_MASK; + + sin6->sin6_scope_id = ipv6_iface_scope_id(&sin6->sin6_addr, + IP6CB(skb)->iif); + } if (inet6_sk(sk)->rxopt.all) pingv6_ops.datagram_recv_ctl(sk, msg, skb); diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c index bbd604c68e68..b5b563d10a37 100644 --- a/net/ipv4/raw.c +++ b/net/ipv4/raw.c @@ -567,7 +567,8 @@ static int raw_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, RT_SCOPE_UNIVERSE, inet->hdrincl ? IPPROTO_RAW : sk->sk_protocol, inet_sk_flowi_flags(sk) | FLOWI_FLAG_CAN_SLEEP, - daddr, saddr, 0, 0); + daddr, saddr, 0, 0, + sock_i_uid(sk)); if (!inet->hdrincl) { err = raw_probe_proto_opt(&fl4, msg); diff --git a/net/ipv4/route.c b/net/ipv4/route.c index d02a8da2365b..3ab9d27f5ab3 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -741,6 +741,7 @@ static inline int compare_keys(struct rtable *rt1, struct rtable *rt2) (rt1->rt_mark ^ rt2->rt_mark) | (rt1->rt_key_tos ^ rt2->rt_key_tos) | (rt1->rt_route_iif ^ rt2->rt_route_iif) | + (rt1->rt_uid ^ rt2->rt_uid) | (rt1->rt_oif ^ rt2->rt_oif)) == 0; } @@ -1881,6 +1882,7 @@ void ip_rt_get_source(u8 *addr, struct sk_buff *skb, struct rtable *rt) fl4.flowi4_oif = rt->dst.dev->ifindex; fl4.flowi4_iif = skb->dev->ifindex; fl4.flowi4_mark = skb->mark; + fl4.flowi4_uid = skb->sk ? sock_i_uid(skb->sk) : 0; rcu_read_lock(); if (fib_lookup(dev_net(rt->dst.dev), &fl4, &res) == 0) @@ -2064,6 +2066,7 @@ static int ip_route_input_mc(struct sk_buff *skb, __be32 daddr, __be32 saddr, rth->rt_iif = dev->ifindex; rth->rt_oif = 0; rth->rt_mark = skb->mark; + rth->rt_uid = 0; rth->rt_gateway = daddr; rth->rt_spec_dst= spec_dst; rth->rt_peer_genid = 0; @@ -2193,6 +2196,7 @@ static int __mkroute_input(struct sk_buff *skb, rth->rt_iif = in_dev->dev->ifindex; rth->rt_oif = 0; rth->rt_mark = skb->mark; + rth->rt_uid = 0; rth->rt_gateway = daddr; rth->rt_spec_dst= spec_dst; rth->rt_peer_genid = 0; @@ -2376,6 +2380,7 @@ out: return err; rth->rt_iif = dev->ifindex; rth->rt_oif = 0; rth->rt_mark = skb->mark; + rth->rt_uid = 0; rth->rt_gateway = daddr; rth->rt_spec_dst= spec_dst; rth->rt_peer_genid = 0; @@ -2580,6 +2585,7 @@ static struct rtable *__mkroute_output(const struct fib_result *res, rth->rt_iif = orig_oif ? : dev_out->ifindex; rth->rt_oif = orig_oif; rth->rt_mark = fl4->flowi4_mark; + rth->rt_uid = fl4->flowi4_uid; rth->rt_gateway = fl4->daddr; rth->rt_spec_dst= fl4->saddr; rth->rt_peer_genid = 0; @@ -2831,6 +2837,7 @@ struct rtable *__ip_route_output_key(struct net *net, struct flowi4 *flp4) rt_is_output_route(rth) && rth->rt_oif == flp4->flowi4_oif && rth->rt_mark == flp4->flowi4_mark && + rth->rt_uid == flp4->flowi4_uid && !((rth->rt_key_tos ^ flp4->flowi4_tos) & (IPTOS_RT_MASK | RTO_ONLINK)) && net_eq(dev_net(rth->dst.dev), net) && @@ -2912,6 +2919,7 @@ struct dst_entry *ipv4_blackhole_route(struct net *net, struct dst_entry *dst_or rt->rt_iif = ort->rt_iif; rt->rt_oif = ort->rt_oif; rt->rt_mark = ort->rt_mark; + rt->rt_uid = ort->rt_uid; rt->rt_genid = rt_genid(net); rt->rt_flags = ort->rt_flags; @@ -3007,6 +3015,9 @@ static int rt_fill_info(struct net *net, if (rt->rt_mark) NLA_PUT_BE32(skb, RTA_MARK, rt->rt_mark); + if (rt->rt_uid != (uid_t) -1) + NLA_PUT_BE32(skb, RTA_UID, rt->rt_uid); + error = rt->dst.error; if (peer) { inet_peer_refcheck(rt->peer); @@ -3126,6 +3137,7 @@ static int inet_rtm_getroute(struct sk_buff *in_skb, struct nlmsghdr* nlh, void .flowi4_tos = rtm->rtm_tos, .flowi4_oif = tb[RTA_OIF] ? nla_get_u32(tb[RTA_OIF]) : 0, .flowi4_mark = mark, + .flowi4_uid = tb[RTA_UID] ? nla_get_u32(tb[RTA_UID]) : current_uid(), }; rt = ip_route_output_key(net, &fl4); diff --git a/net/ipv4/syncookies.c b/net/ipv4/syncookies.c index eab2a7fb15d1..b93b6d370222 100644 --- a/net/ipv4/syncookies.c +++ b/net/ipv4/syncookies.c @@ -312,6 +312,7 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb, ireq->rmt_port = th->source; ireq->loc_addr = ip_hdr(skb)->daddr; ireq->rmt_addr = ip_hdr(skb)->saddr; + ireq->ir_mark = inet_request_mark(sk, skb); ireq->ecn_ok = ecn_ok; ireq->snd_wscale = tcp_opt.snd_wscale; ireq->sack_ok = tcp_opt.sack_ok; @@ -347,11 +348,12 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb, * hasn't changed since we received the original syn, but I see * no easy way to do this. */ - flowi4_init_output(&fl4, 0, sk->sk_mark, RT_CONN_FLAGS(sk), + flowi4_init_output(&fl4, 0, ireq->ir_mark, RT_CONN_FLAGS(sk), RT_SCOPE_UNIVERSE, IPPROTO_TCP, inet_sk_flowi_flags(sk), (opt && opt->srr) ? opt->faddr : ireq->rmt_addr, - ireq->loc_addr, th->source, th->dest); + ireq->loc_addr, th->source, th->dest, + sock_i_uid(sk)); security_req_classify_flow(req, flowi4_to_flowi(&fl4)); rt = ip_route_output_key(sock_net(sk), &fl4); if (IS_ERR(rt)) { diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c index 7a7724da9bff..7c81e3b98739 100644 --- a/net/ipv4/sysctl_net_ipv4.c +++ b/net/ipv4/sysctl_net_ipv4.c @@ -36,6 +36,10 @@ static int ip_ttl_min = 1; static int ip_ttl_max = 255; static int ip_ping_group_range_min[] = { 0, 0 }; static int ip_ping_group_range_max[] = { GID_T_MAX, GID_T_MAX }; +static int tcp_delack_seg_min = TCP_DELACK_MIN; +static int tcp_delack_seg_max = 60; +static int tcp_use_userconfig_min; +static int tcp_use_userconfig_max = 1; /* Update system visible IP port range */ static void set_local_port_range(int range[2]) @@ -699,6 +703,25 @@ static struct ctl_table ipv4_table[] = { .proc_handler = proc_dointvec_minmax, .extra1 = &zero }, + { + .procname = "tcp_delack_seg", + .data = &sysctl_tcp_delack_seg, + .maxlen = sizeof(sysctl_tcp_delack_seg), + .mode = 0644, + .proc_handler = tcp_proc_delayed_ack_control, + .extra1 = &tcp_delack_seg_min, + .extra2 = &tcp_delack_seg_max, + }, + { + .procname = "tcp_use_userconfig", + .data = &sysctl_tcp_use_userconfig, + .maxlen = sizeof(sysctl_tcp_use_userconfig), + .mode = 0644, + .proc_handler = tcp_use_userconfig_sysctl_handler, + .extra1 = &tcp_use_userconfig_min, + .extra2 = &tcp_use_userconfig_max, + }, + { } }; @@ -765,6 +788,20 @@ static struct ctl_table ipv4_net_table[] = { .mode = 0644, .proc_handler = ipv4_tcp_mem, }, + { + .procname = "fwmark_reflect", + .data = &init_net.ipv4.sysctl_fwmark_reflect, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, + { + .procname = "tcp_fwmark_accept", + .data = &init_net.ipv4.sysctl_tcp_fwmark_accept, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, { } }; diff --git a/net/ipv4/sysfs_net_ipv4.c b/net/ipv4/sysfs_net_ipv4.c index 0cbbf10026a6..699075a0cd5c 100644 --- a/net/ipv4/sysfs_net_ipv4.c +++ b/net/ipv4/sysfs_net_ipv4.c @@ -53,6 +53,9 @@ CREATE_IPV4_FILE(tcp_rmem_min, sysctl_tcp_rmem[0]); CREATE_IPV4_FILE(tcp_rmem_def, sysctl_tcp_rmem[1]); CREATE_IPV4_FILE(tcp_rmem_max, sysctl_tcp_rmem[2]); +CREATE_IPV4_FILE(tcp_delack_seg, sysctl_tcp_delack_seg); +CREATE_IPV4_FILE(tcp_use_userconfig, sysctl_tcp_use_userconfig); + static struct attribute *ipv4_attrs[] = { &tcp_wmem_min_attr.attr, &tcp_wmem_def_attr.attr, @@ -60,6 +63,8 @@ static struct attribute *ipv4_attrs[] = { &tcp_rmem_min_attr.attr, &tcp_rmem_def_attr.attr, &tcp_rmem_max_attr.attr, + &tcp_delack_seg_attr.attr, + &tcp_use_userconfig_attr.attr, NULL }; diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index f11d136be708..b43ad8b16618 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -294,6 +294,12 @@ int sysctl_tcp_rmem[3] __read_mostly; EXPORT_SYMBOL(sysctl_tcp_rmem); EXPORT_SYMBOL(sysctl_tcp_wmem); +int sysctl_tcp_delack_seg __read_mostly = TCP_DELACK_SEG; +EXPORT_SYMBOL(sysctl_tcp_delack_seg); + +int sysctl_tcp_use_userconfig __read_mostly; +EXPORT_SYMBOL(sysctl_tcp_use_userconfig); + atomic_long_t tcp_memory_allocated; /* Current allocated memory. */ EXPORT_SYMBOL(tcp_memory_allocated); @@ -1213,8 +1219,11 @@ void tcp_cleanup_rbuf(struct sock *sk, int copied) /* Delayed ACKs frequently hit locked sockets during bulk * receive. */ if (icsk->icsk_ack.blocked || - /* Once-per-two-segments ACK was not sent by tcp_input.c */ - tp->rcv_nxt - tp->rcv_wup > icsk->icsk_ack.rcv_mss || + /* Once-per-sysctl_tcp_delack_seg segments + * ACK was not sent by tcp_input.c + */ + tp->rcv_nxt - tp->rcv_wup > (icsk->icsk_ack.rcv_mss) * + sysctl_tcp_delack_seg || /* * If this read emptied read buffer, we send ACK, if * connection is not bidirectional, user drained diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 257b61789eeb..7c3612bf1613 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -5047,7 +5047,8 @@ static void __tcp_ack_snd_check(struct sock *sk, int ofo_possible) struct tcp_sock *tp = tcp_sk(sk); /* More than one full frame received... */ - if (((tp->rcv_nxt - tp->rcv_wup) > inet_csk(sk)->icsk_ack.rcv_mss && + if (((tp->rcv_nxt - tp->rcv_wup) > (inet_csk(sk)->icsk_ack.rcv_mss) * + sysctl_tcp_delack_seg && /* ... and right edge of window advances far enough. * (tcp_recvmsg() will send ACK otherwise). Or... */ diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index eaa4cd6c5df2..141973d81b70 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c @@ -1351,6 +1351,7 @@ int tcp_v4_conn_request(struct sock *sk, struct sk_buff *skb) ireq->rmt_addr = saddr; ireq->no_srccheck = inet_sk(sk)->transparent; ireq->opt = tcp_v4_save_options(sk, skb); + ireq->ir_mark = inet_request_mark(sk, skb); if (security_inet_conn_request(sk, skb, req)) goto drop_and_free; @@ -1669,7 +1670,9 @@ int tcp_v4_rcv(struct sk_buff *skb) struct sock *sk; int ret; struct net *net = dev_net(skb->dev); +#if !defined(CONFIG_SEC_LOCALE_CHN) struct in_device *in_dev; +#endif if (skb->pkt_type != PACKET_HOST) goto discard_it; @@ -1760,6 +1763,9 @@ int tcp_v4_rcv(struct sk_buff *skb) bad_packet: TCP_INC_STATS_BH(net, TCP_MIB_INERRS); } else { +#if defined(CONFIG_SEC_LOCALE_CHN) + tcp_v4_send_reset(NULL, skb); +#else in_dev = in_dev_get(skb->dev); if (in_dev) { if (!IN_DEV_FORWARD(in_dev)) @@ -1767,6 +1773,7 @@ int tcp_v4_rcv(struct sk_buff *skb) in_dev_put(in_dev); } else tcp_v4_send_reset(NULL, skb); +#endif } discard_it: diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c index 34d4a02c2f16..d1b479220543 100644 --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c @@ -34,7 +34,39 @@ int sysctl_tcp_thin_linear_timeouts __read_mostly; static void tcp_write_timer(unsigned long); static void tcp_delack_timer(unsigned long); -static void tcp_keepalive_timer (unsigned long data); +static void tcp_keepalive_timer(unsigned long data); + +/*Function to reset tcp_ack related sysctl on resetting master control */ +void set_tcp_default(void) +{ + sysctl_tcp_delack_seg = TCP_DELACK_SEG; +} + +/*sysctl handler for tcp_ack realted master control */ +int tcp_proc_delayed_ack_control(ctl_table *table, int write, + void __user *buffer, size_t *length, loff_t *ppos) +{ + int ret = proc_dointvec_minmax(table, write, buffer, length, ppos); + + /* The ret value will be 0 if the input validation is successful + * and the values are written to sysctl table. If not, the stack + * will continue to work with currently configured values + */ + return ret; +} + +/*sysctl handler for tcp_ack realted master control */ +int tcp_use_userconfig_sysctl_handler(ctl_table *table, int write, + void __user *buffer, size_t *length, loff_t *ppos) +{ + int ret = proc_dointvec_minmax(table, write, buffer, length, ppos); + + if (write && ret == 0) { + if (!sysctl_tcp_use_userconfig) + set_tcp_default(); + } + return ret; +} void tcp_init_xmit_timers(struct sock *sk) { diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index fe141052a1be..4d844344f262 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -931,7 +931,8 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, flowi4_init_output(fl4, ipc.oif, sk->sk_mark, tos, RT_SCOPE_UNIVERSE, sk->sk_protocol, inet_sk_flowi_flags(sk)|FLOWI_FLAG_CAN_SLEEP, - faddr, saddr, dport, inet->inet_sport); + faddr, saddr, dport, inet->inet_sport, + sock_i_uid(sk)); security_sk_classify_flow(sk, flowi4_to_flowi(fl4)); rt = ip_route_output_flow(net, fl4, sk); diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c index a0b4c5da8d43..e8ee4279fd22 100644 --- a/net/ipv4/xfrm4_policy.c +++ b/net/ipv4/xfrm4_policy.c @@ -86,6 +86,7 @@ static int xfrm4_fill_dst(struct xfrm_dst *xdst, struct net_device *dev, xdst->u.rt.rt_iif = fl4->flowi4_iif; xdst->u.rt.rt_oif = fl4->flowi4_oif; xdst->u.rt.rt_mark = fl4->flowi4_mark; + xdst->u.rt.rt_uid = fl4->flowi4_uid; xdst->u.dst.dev = dev; dev_hold(dev); diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 5bb2847707ab..252013d4032d 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -195,6 +195,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = { .accept_ra_rt_info_max_plen = 0, #endif #endif + .accept_ra_rt_table = 0, .proxy_ndp = 0, .accept_source_route = 0, /* we do not accept RH0 by default. */ .disable_ipv6 = 0, @@ -230,6 +231,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = { .accept_ra_rt_info_max_plen = 0, #endif #endif + .accept_ra_rt_table = 0, .proxy_ndp = 0, .accept_source_route = 0, /* we do not accept RH0 by default. */ .disable_ipv6 = 0, @@ -959,6 +961,9 @@ enum { #endif IPV6_SADDR_RULE_ORCHID, IPV6_SADDR_RULE_PREFIX, +#ifdef CONFIG_IPV6_OPTIMISTIC_DAD + IPV6_SADDR_RULE_NOT_OPTIMISTIC, +#endif IPV6_SADDR_RULE_MAX }; @@ -986,6 +991,15 @@ static inline int ipv6_saddr_preferred(int type) return 0; } +static inline bool ipv6_use_optimistic_addr(struct inet6_dev *idev) +{ +#ifdef CONFIG_IPV6_OPTIMISTIC_DAD + return idev && idev->cnf.optimistic_dad && idev->cnf.use_optimistic; +#else + return false; +#endif +} + static int ipv6_get_saddr_eval(struct net *net, struct ipv6_saddr_score *score, struct ipv6_saddr_dst *dst, @@ -1046,10 +1060,16 @@ static int ipv6_get_saddr_eval(struct net *net, score->scopedist = ret; break; case IPV6_SADDR_RULE_PREFERRED: + { /* Rule 3: Avoid deprecated and optimistic addresses */ + u8 avoid = IFA_F_DEPRECATED; + + if (!ipv6_use_optimistic_addr(score->ifa->idev)) + avoid |= IFA_F_OPTIMISTIC; ret = ipv6_saddr_preferred(score->addr_type) || - !(score->ifa->flags & (IFA_F_DEPRECATED|IFA_F_OPTIMISTIC)); + !(score->ifa->flags & avoid); break; + } #ifdef CONFIG_IPV6_MIP6 case IPV6_SADDR_RULE_HOA: { @@ -1095,6 +1115,14 @@ static int ipv6_get_saddr_eval(struct net *net, score->matchlen = ret = ipv6_addr_diff(&score->ifa->addr, dst->addr); break; +#ifdef CONFIG_IPV6_OPTIMISTIC_DAD + case IPV6_SADDR_RULE_NOT_OPTIMISTIC: + /* Optimistic addresses still have lower precedence than other + * preferred addresses. + */ + ret = !(score->ifa->flags & IFA_F_OPTIMISTIC); + break; +#endif default: ret = 0; } @@ -1283,7 +1311,9 @@ int ipv6_chk_addr(struct net *net, const struct in6_addr *addr, if (!net_eq(dev_net(ifp->idev->dev), net)) continue; if (ipv6_addr_equal(&ifp->addr, addr) && - !(ifp->flags&IFA_F_TENTATIVE) && + (!(ifp->flags&IFA_F_TENTATIVE) || + (ipv6_use_optimistic_addr(ifp->idev) && + ifp->flags&IFA_F_OPTIMISTIC)) && (dev == NULL || ifp->idev->dev == dev || !(ifp->scope&(IFA_LINK|IFA_HOST) || strict))) { rcu_read_unlock_bh(); @@ -1690,6 +1720,31 @@ static int __ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr *tmpad } #endif +u32 addrconf_rt_table(const struct net_device *dev, u32 default_table) { + /* Determines into what table to put autoconf PIO/RIO/default routes + * learned on this device. + * + * - If 0, use the same table for every device. This puts routes into + * one of RT_TABLE_{PREFIX,INFO,DFLT} depending on the type of route + * (but note that these three are currently all equal to + * RT6_TABLE_MAIN). + * - If > 0, use the specified table. + * - If < 0, put routes into table dev->ifindex + (-rt_table). + */ + struct inet6_dev *idev = in6_dev_get(dev); + u32 table; + int sysctl = idev->cnf.accept_ra_rt_table; + if (sysctl == 0) { + table = default_table; + } else if (sysctl > 0) { + table = (u32) sysctl; + } else { + table = (unsigned) dev->ifindex + (-sysctl); + } + in6_dev_put(idev); + return table; +} + /* * Add prefix route. */ @@ -1699,7 +1754,7 @@ addrconf_prefix_route(struct in6_addr *pfx, int plen, struct net_device *dev, unsigned long expires, u32 flags) { struct fib6_config cfg = { - .fc_table = RT6_TABLE_PREFIX, + .fc_table = addrconf_rt_table(dev, RT6_TABLE_PREFIX), .fc_metric = IP6_RT_PRIO_ADDRCONF, .fc_ifindex = dev->ifindex, .fc_expires = expires, @@ -1733,7 +1788,8 @@ static struct rt6_info *addrconf_get_prefix_route(const struct in6_addr *pfx, struct rt6_info *rt = NULL; struct fib6_table *table; - table = fib6_get_table(dev_net(dev), RT6_TABLE_PREFIX); + table = fib6_get_table(dev_net(dev), + addrconf_rt_table(dev, RT6_TABLE_PREFIX)); if (table == NULL) return NULL; @@ -2978,8 +3034,15 @@ static void addrconf_dad_start(struct inet6_ifaddr *ifp, u32 flags) * Optimistic nodes can start receiving * Frames right away */ - if (ifp->flags & IFA_F_OPTIMISTIC) + if (ifp->flags & IFA_F_OPTIMISTIC) { ip6_ins_rt(ifp->rt); + if (ipv6_use_optimistic_addr(idev)) { + /* Because optimistic nodes can use this address, + * notify listeners. If DAD fails, RTM_DELADDR is sent. + */ + ipv6_ifa_notify(RTM_NEWADDR, ifp); + } + } addrconf_dad_kick(ifp); out: @@ -3922,10 +3985,12 @@ static inline void ipv6_store_devconf(struct ipv6_devconf *cnf, array[DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN] = cnf->accept_ra_rt_info_max_plen; #endif #endif + array[DEVCONF_ACCEPT_RA_RT_TABLE] = cnf->accept_ra_rt_table; array[DEVCONF_PROXY_NDP] = cnf->proxy_ndp; array[DEVCONF_ACCEPT_SOURCE_ROUTE] = cnf->accept_source_route; #ifdef CONFIG_IPV6_OPTIMISTIC_DAD array[DEVCONF_OPTIMISTIC_DAD] = cnf->optimistic_dad; + array[DEVCONF_USE_OPTIMISTIC] = cnf->use_optimistic; #endif #ifdef CONFIG_IPV6_MROUTE array[DEVCONF_MC_FORWARDING] = cnf->mc_forwarding; @@ -4549,6 +4614,13 @@ static struct addrconf_sysctl_table }, #endif #endif + { + .procname = "accept_ra_rt_table", + .data = &ipv6_devconf.accept_ra_rt_table, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + }, { .procname = "proxy_ndp", .data = &ipv6_devconf.proxy_ndp, @@ -4572,6 +4644,14 @@ static struct addrconf_sysctl_table .proc_handler = proc_dointvec, }, + { + .procname = "use_optimistic", + .data = &ipv6_devconf.use_optimistic, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec, + + }, #endif #ifdef CONFIG_IPV6_MROUTE { diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c index 22ebbb972839..296886bff734 100644 --- a/net/ipv6/af_inet6.c +++ b/net/ipv6/af_inet6.c @@ -702,6 +702,7 @@ int inet6_sk_rebuild_header(struct sock *sk) fl6.flowi6_mark = sk->sk_mark; fl6.fl6_dport = inet->inet_dport; fl6.fl6_sport = inet->inet_sport; + fl6.flowi6_uid = sock_i_uid(sk); security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); final_p = fl6_update_dst(&fl6, np->opt, &final); diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c index 76832c8dc89d..ae4d713ac88d 100644 --- a/net/ipv6/datagram.c +++ b/net/ipv6/datagram.c @@ -160,6 +160,7 @@ int ip6_datagram_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len) fl6.flowi6_mark = sk->sk_mark; fl6.fl6_dport = inet->inet_dport; fl6.fl6_sport = inet->inet_sport; + fl6.flowi6_uid = sock_i_uid(sk); if (!fl6.flowi6_oif && (addr_type&IPV6_ADDR_MULTICAST)) fl6.flowi6_oif = np->mcast_oif; diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c index ba0c1479ba0f..b595aa69d016 100644 --- a/net/ipv6/icmp.c +++ b/net/ipv6/icmp.c @@ -396,6 +396,7 @@ void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info) int len; int hlimit; int err = 0; + u32 mark = IP6_REPLY_MARK(net, skb->mark); if ((u8 *)hdr < skb->head || (skb->network_header + sizeof(*hdr)) > skb->tail) @@ -461,6 +462,7 @@ void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info) fl6.daddr = hdr->saddr; if (saddr) fl6.saddr = *saddr; + fl6.flowi6_mark = mark; fl6.flowi6_oif = iif; fl6.fl6_icmp_type = type; fl6.fl6_icmp_code = code; @@ -469,6 +471,7 @@ void icmpv6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info) sk = icmpv6_xmit_lock(net); if (sk == NULL) return; + sk->sk_mark = mark; np = inet6_sk(sk); if (!icmpv6_xrlim_allow(sk, type, &fl6)) @@ -543,6 +546,7 @@ static void icmpv6_echo_reply(struct sk_buff *skb) struct dst_entry *dst; int err = 0; int hlimit; + u32 mark = IP6_REPLY_MARK(net, skb->mark); saddr = &ipv6_hdr(skb)->daddr; @@ -559,11 +563,13 @@ static void icmpv6_echo_reply(struct sk_buff *skb) fl6.saddr = *saddr; fl6.flowi6_oif = skb->dev->ifindex; fl6.fl6_icmp_type = ICMPV6_ECHO_REPLY; + fl6.flowi6_mark = mark; security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); sk = icmpv6_xmit_lock(net); if (sk == NULL) return; + sk->sk_mark = mark; np = inet6_sk(sk); if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) diff --git a/net/ipv6/inet6_connection_sock.c b/net/ipv6/inet6_connection_sock.c index 02dd203d9eac..aefc8b718095 100644 --- a/net/ipv6/inet6_connection_sock.c +++ b/net/ipv6/inet6_connection_sock.c @@ -69,9 +69,10 @@ struct dst_entry *inet6_csk_route_req(struct sock *sk, final_p = fl6_update_dst(&fl6, np->opt, &final); fl6.saddr = treq->loc_addr; fl6.flowi6_oif = sk->sk_bound_dev_if; - fl6.flowi6_mark = sk->sk_mark; + fl6.flowi6_mark = inet_rsk(req)->ir_mark; fl6.fl6_dport = inet_rsk(req)->rmt_port; fl6.fl6_sport = inet_rsk(req)->loc_port; + fl6.flowi6_uid = sock_i_uid(sk); security_req_classify_flow(req, flowi6_to_flowi(&fl6)); dst = ip6_dst_lookup_flow(sk, &fl6, final_p, false); @@ -223,6 +224,7 @@ int inet6_csk_xmit(struct sk_buff *skb, struct flowi *fl_unused) fl6.flowi6_mark = sk->sk_mark; fl6.fl6_sport = inet->inet_sport; fl6.fl6_dport = inet->inet_dport; + fl6.flowi6_uid = sock_i_uid(sk); security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); final_p = fl6_update_dst(&fl6, np->opt, &final); diff --git a/net/ipv6/ping.c b/net/ipv6/ping.c index f46e315bdebd..75599664f138 100755 --- a/net/ipv6/ping.c +++ b/net/ipv6/ping.c @@ -159,8 +159,10 @@ int ping_v6_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, fl6.flowi6_proto = IPPROTO_ICMPV6; fl6.saddr = np->saddr; fl6.daddr = *daddr; + fl6.flowi6_mark = sk->sk_mark; fl6.fl6_icmp_type = user_icmph.icmp6_type; fl6.fl6_icmp_code = user_icmph.icmp6_code; + fl6.flowi6_uid = sock_i_uid(sk); security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); if (!fl6.flowi6_oif && ipv6_addr_is_multicast(&fl6.daddr)) diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c index 5bddea778840..49ec3f8e7cea 100644 --- a/net/ipv6/raw.c +++ b/net/ipv6/raw.c @@ -761,6 +761,7 @@ static int rawv6_sendmsg(struct kiocb *iocb, struct sock *sk, memset(&fl6, 0, sizeof(fl6)); fl6.flowi6_mark = sk->sk_mark; + fl6.flowi6_uid = sock_i_uid(sk); if (sin6) { if (addr_len < SIN6_LEN_RFC2133) diff --git a/net/ipv6/route.c b/net/ipv6/route.c index bc4888d902b2..3e6b53b981a0 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -79,13 +79,13 @@ static void ip6_link_failure(struct sk_buff *skb); static void ip6_rt_update_pmtu(struct dst_entry *dst, u32 mtu); #ifdef CONFIG_IPV6_ROUTE_INFO -static struct rt6_info *rt6_add_route_info(struct net *net, +static struct rt6_info *rt6_add_route_info(struct net_device *dev, const struct in6_addr *prefix, int prefixlen, - const struct in6_addr *gwaddr, int ifindex, + const struct in6_addr *gwaddr, unsigned pref); -static struct rt6_info *rt6_get_route_info(struct net *net, +static struct rt6_info *rt6_get_route_info(struct net_device *dev, const struct in6_addr *prefix, int prefixlen, - const struct in6_addr *gwaddr, int ifindex); + const struct in6_addr *gwaddr); #endif static u32 *ipv6_cow_metrics(struct dst_entry *dst, unsigned long old) @@ -575,7 +575,6 @@ static struct rt6_info *rt6_select(struct fib6_node *fn, int oif, int strict) int rt6_route_rcv(struct net_device *dev, u8 *opt, int len, const struct in6_addr *gwaddr) { - struct net *net = dev_net(dev); struct route_info *rinfo = (struct route_info *) opt; struct in6_addr prefix_buf, *prefix; unsigned int pref; @@ -617,8 +616,7 @@ int rt6_route_rcv(struct net_device *dev, u8 *opt, int len, prefix = &prefix_buf; } - rt = rt6_get_route_info(net, prefix, rinfo->prefix_len, gwaddr, - dev->ifindex); + rt = rt6_get_route_info(dev, prefix, rinfo->prefix_len, gwaddr); if (rt && !lifetime) { ip6_del_rt(rt); @@ -626,8 +624,7 @@ int rt6_route_rcv(struct net_device *dev, u8 *opt, int len, } if (!rt && lifetime) - rt = rt6_add_route_info(net, prefix, rinfo->prefix_len, gwaddr, dev->ifindex, - pref); + rt = rt6_add_route_info(dev, prefix, rinfo->prefix_len, gwaddr, pref); else if (rt) rt->rt6i_flags = RTF_ROUTEINFO | (rt->rt6i_flags & ~RTF_PREF_MASK) | RTF_PREF(pref); @@ -1852,15 +1849,16 @@ static struct rt6_info *ip6_rt_copy(struct rt6_info *ort, } #ifdef CONFIG_IPV6_ROUTE_INFO -static struct rt6_info *rt6_get_route_info(struct net *net, +static struct rt6_info *rt6_get_route_info(struct net_device *dev, const struct in6_addr *prefix, int prefixlen, - const struct in6_addr *gwaddr, int ifindex) + const struct in6_addr *gwaddr) { struct fib6_node *fn; struct rt6_info *rt = NULL; struct fib6_table *table; - table = fib6_get_table(net, RT6_TABLE_INFO); + table = fib6_get_table(dev_net(dev), + addrconf_rt_table(dev, RT6_TABLE_INFO)); if (!table) return NULL; @@ -1870,7 +1868,7 @@ static struct rt6_info *rt6_get_route_info(struct net *net, goto out; for (rt = fn->leaf; rt; rt = rt->dst.rt6_next) { - if (rt->dst.dev->ifindex != ifindex) + if (rt->dst.dev->ifindex != dev->ifindex) continue; if ((rt->rt6i_flags & (RTF_ROUTEINFO|RTF_GATEWAY)) != (RTF_ROUTEINFO|RTF_GATEWAY)) continue; @@ -1884,21 +1882,21 @@ static struct rt6_info *rt6_get_route_info(struct net *net, return rt; } -static struct rt6_info *rt6_add_route_info(struct net *net, +static struct rt6_info *rt6_add_route_info(struct net_device *dev, const struct in6_addr *prefix, int prefixlen, - const struct in6_addr *gwaddr, int ifindex, + const struct in6_addr *gwaddr, unsigned pref) { struct fib6_config cfg = { - .fc_table = RT6_TABLE_INFO, + .fc_table = addrconf_rt_table(dev, RT6_TABLE_INFO), .fc_metric = IP6_RT_PRIO_USER, - .fc_ifindex = ifindex, + .fc_ifindex = dev->ifindex, .fc_dst_len = prefixlen, .fc_flags = RTF_GATEWAY | RTF_ADDRCONF | RTF_ROUTEINFO | RTF_UP | RTF_PREF(pref), .fc_nlinfo.pid = 0, .fc_nlinfo.nlh = NULL, - .fc_nlinfo.nl_net = net, + .fc_nlinfo.nl_net = dev_net(dev), }; cfg.fc_dst = *prefix; @@ -1910,7 +1908,7 @@ static struct rt6_info *rt6_add_route_info(struct net *net, ip6_route_add(&cfg); - return rt6_get_route_info(net, prefix, prefixlen, gwaddr, ifindex); + return rt6_get_route_info(dev, prefix, prefixlen, gwaddr); } #endif @@ -1919,7 +1917,8 @@ struct rt6_info *rt6_get_dflt_router(const struct in6_addr *addr, struct net_dev struct rt6_info *rt; struct fib6_table *table; - table = fib6_get_table(dev_net(dev), RT6_TABLE_DFLT); + table = fib6_get_table(dev_net(dev), + addrconf_rt_table(dev, RT6_TABLE_MAIN)); if (!table) return NULL; @@ -1941,7 +1940,7 @@ struct rt6_info *rt6_add_dflt_router(const struct in6_addr *gwaddr, unsigned int pref) { struct fib6_config cfg = { - .fc_table = RT6_TABLE_DFLT, + .fc_table = addrconf_rt_table(dev, RT6_TABLE_DFLT), .fc_metric = IP6_RT_PRIO_USER, .fc_ifindex = dev->ifindex, .fc_flags = RTF_GATEWAY | RTF_ADDRCONF | RTF_DEFAULT | @@ -1958,27 +1957,17 @@ struct rt6_info *rt6_add_dflt_router(const struct in6_addr *gwaddr, return rt6_get_dflt_router(gwaddr, dev); } -void rt6_purge_dflt_routers(struct net *net) -{ - struct rt6_info *rt; - struct fib6_table *table; - /* NOTE: Keep consistent with rt6_get_dflt_router */ - table = fib6_get_table(net, RT6_TABLE_DFLT); - if (!table) - return; +int rt6_addrconf_purge(struct rt6_info *rt, void *arg) { + if (rt->rt6i_flags & (RTF_DEFAULT | RTF_ADDRCONF) && + (!rt->rt6i_idev || rt->rt6i_idev->cnf.accept_ra != 2)) + return -1; + return 0; +} -restart: - read_lock_bh(&table->tb6_lock); - for (rt = table->tb6_root.leaf; rt; rt = rt->dst.rt6_next) { - if (rt->rt6i_flags & (RTF_DEFAULT | RTF_ADDRCONF)) { - dst_hold(&rt->dst); - read_unlock_bh(&table->tb6_lock); - ip6_del_rt(rt); - goto restart; - } - } - read_unlock_bh(&table->tb6_lock); +void rt6_purge_dflt_routers(struct net *net) +{ + fib6_clean_all(net, rt6_addrconf_purge, 0, NULL); } static void rtmsg_to_fib6_config(struct net *net, @@ -2278,6 +2267,7 @@ static const struct nla_policy rtm_ipv6_policy[RTA_MAX+1] = { [RTA_IIF] = { .type = NLA_U32 }, [RTA_PRIORITY] = { .type = NLA_U32 }, [RTA_METRICS] = { .type = NLA_NESTED }, + [RTA_UID] = { .type = NLA_U32 }, }; static int rtm_to_fib6_config(struct sk_buff *skb, struct nlmsghdr *nlh, @@ -2590,6 +2580,11 @@ static int inet6_rtm_getroute(struct sk_buff *in_skb, struct nlmsghdr* nlh, void if (tb[RTA_OIF]) oif = nla_get_u32(tb[RTA_OIF]); + if (tb[RTA_UID]) + fl6.flowi6_uid = nla_get_u32(tb[RTA_UID]); + else + fl6.flowi6_uid = (iif ? (uid_t) -1 : current_uid()); + if (iif) { struct net_device *dev; int flags = 0; diff --git a/net/ipv6/syncookies.c b/net/ipv6/syncookies.c index 8e951d8d3b81..af939afeae22 100644 --- a/net/ipv6/syncookies.c +++ b/net/ipv6/syncookies.c @@ -215,6 +215,8 @@ struct sock *cookie_v6_check(struct sock *sk, struct sk_buff *skb) ipv6_addr_type(&ireq6->rmt_addr) & IPV6_ADDR_LINKLOCAL) ireq6->iif = inet6_iif(skb); + ireq->ir_mark = inet_request_mark(sk, skb); + req->expires = 0UL; req->retrans = 0; ireq->ecn_ok = ecn_ok; @@ -241,9 +243,10 @@ struct sock *cookie_v6_check(struct sock *sk, struct sk_buff *skb) final_p = fl6_update_dst(&fl6, np->opt, &final); fl6.saddr = ireq6->loc_addr; fl6.flowi6_oif = sk->sk_bound_dev_if; - fl6.flowi6_mark = sk->sk_mark; + fl6.flowi6_mark = inet_rsk(req)->ir_mark; fl6.fl6_dport = inet_rsk(req)->rmt_port; fl6.fl6_sport = inet_sk(sk)->inet_sport; + fl6.flowi6_uid = sock_i_uid(sk); security_req_classify_flow(req, flowi6_to_flowi(&fl6)); dst = ip6_dst_lookup_flow(sk, &fl6, final_p, false); diff --git a/net/ipv6/sysctl_net_ipv6.c b/net/ipv6/sysctl_net_ipv6.c index 166a57c47d39..1f872c332fc0 100644 --- a/net/ipv6/sysctl_net_ipv6.c +++ b/net/ipv6/sysctl_net_ipv6.c @@ -48,6 +48,13 @@ static ctl_table ipv6_table_template[] = { .mode = 0644, .proc_handler = proc_dointvec }, + { + .procname = "fwmark_reflect", + .data = &init_net.ipv6.sysctl.fwmark_reflect, + .maxlen = sizeof(int), + .mode = 0644, + .proc_handler = proc_dointvec + }, { } }; diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 98256cf72f9d..a62ce5928890 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -251,6 +251,7 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr, fl6.flowi6_mark = sk->sk_mark; fl6.fl6_dport = usin->sin6_port; fl6.fl6_sport = inet->inet_sport; + fl6.flowi6_uid = sock_i_uid(sk); final_p = fl6_update_dst(&fl6, np->opt, &final); @@ -404,6 +405,7 @@ static void tcp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt, fl6.flowi6_mark = sk->sk_mark; fl6.fl6_dport = inet->inet_dport; fl6.fl6_sport = inet->inet_sport; + fl6.flowi6_uid = sock_i_uid(sk); security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); dst = ip6_dst_lookup_flow(sk, &fl6, NULL, false); @@ -493,9 +495,10 @@ static int tcp_v6_send_synack(struct sock *sk, struct request_sock *req, fl6.saddr = treq->loc_addr; fl6.flowlabel = 0; fl6.flowi6_oif = treq->iif; - fl6.flowi6_mark = sk->sk_mark; + fl6.flowi6_mark = inet_rsk(req)->ir_mark; fl6.fl6_dport = inet_rsk(req)->rmt_port; fl6.fl6_sport = inet_rsk(req)->loc_port; + fl6.flowi6_uid = sock_i_uid(sk); security_req_classify_flow(req, flowi6_to_flowi(&fl6)); opt = np->opt; @@ -897,6 +900,7 @@ static void tcp_v6_send_response(struct sk_buff *skb, u32 seq, u32 ack, u32 win, fl6.flowi6_proto = IPPROTO_TCP; fl6.flowi6_oif = inet6_iif(skb); + fl6.flowi6_mark = IP6_REPLY_MARK(net, skb->mark); fl6.fl6_dport = t1->dest; fl6.fl6_sport = t1->source; security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); @@ -1143,6 +1147,7 @@ static int tcp_v6_conn_request(struct sock *sk, struct sk_buff *skb) TCP_ECN_create_request(req, tcp_hdr(skb)); treq->iif = sk->sk_bound_dev_if; + inet_rsk(req)->ir_mark = inet_request_mark(sk, skb); /* So that link locals have meaning */ if (!sk->sk_bound_dev_if && diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 37b0699e95e5..a20d55dc9c2a 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -1087,6 +1087,7 @@ int udpv6_sendmsg(struct kiocb *iocb, struct sock *sk, fl6.flowi6_oif = np->sticky_pktinfo.ipi6_ifindex; fl6.flowi6_mark = sk->sk_mark; + fl6.flowi6_uid = sock_i_uid(sk); if (msg->msg_controllen) { opt = &opt_space; diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c index 8ea65e032733..7ee78421ddf1 100644 --- a/net/ipv6/xfrm6_policy.c +++ b/net/ipv6/xfrm6_policy.c @@ -128,6 +128,9 @@ _decode_session6(struct sk_buff *skb, struct flowi *fl, int reverse) struct ipv6_opt_hdr *exthdr; const unsigned char *nh = skb_network_header(skb); u8 nexthdr = nh[IP6CB(skb)->nhoff]; + if (IP6CB(skb)->nhoff == 0) { + nexthdr = ipv6_hdr(skb)->nexthdr; + } memset(fl6, 0, sizeof(struct flowi6)); fl6->flowi6_mark = skb->mark; diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c index 1addd9f3f40a..efb0138948b1 100644 --- a/net/l2tp/l2tp_ppp.c +++ b/net/l2tp/l2tp_ppp.c @@ -1348,7 +1348,7 @@ static int pppol2tp_setsockopt(struct socket *sock, int level, int optname, int err; if (level != SOL_PPPOL2TP) - return udp_prot.setsockopt(sk, level, optname, optval, optlen); + return -EINVAL; if (optlen < sizeof(int)) return -EINVAL; @@ -1474,7 +1474,7 @@ static int pppol2tp_getsockopt(struct socket *sock, int level, struct pppol2tp_session *ps; if (level != SOL_PPPOL2TP) - return udp_prot.getsockopt(sk, level, optname, optval, optlen); + return -EINVAL; if (get_user(len, (int __user *) optlen)) return -EFAULT; diff --git a/net/netfilter/interceptor/kernelspd_main.c b/net/netfilter/interceptor/kernelspd_main.c index 5ea51a4c2e90..4517812b24fb 100644 --- a/net/netfilter/interceptor/kernelspd_main.c +++ b/net/netfilter/interceptor/kernelspd_main.c @@ -11,18 +11,6 @@ #include "kernelspd_internal.h" #include "package_version.h" -#ifdef CONFIG_AUTHENTEC_VPNCLIENT_INTERCEPTOR -#if CONFIG_AUTHENTEC_VPNCLIENT_INTERCEPTOR != 'n' && CONFIG_AUTHENTEC_VPNCLIENT_INTERCEPTOR != 'N' -#warning "Disable config CONFIG_AUTHENTEC_VPNCLIENT_INTERCEPTOR" -#error "Interceptor for VpnClient 3 cannot be build to same kernel with older interceptor." -#endif -#endif - -#ifdef MODULE -#error "vpnclient can only be compiled as a built-in MODULE" -#endif /* MODULE */ - - MODULE_DESCRIPTION("Kernel IPsec SPD " PACKAGE_VERSION); static int init_called = 0; diff --git a/net/netfilter/interceptor/package_version.h b/net/netfilter/interceptor/package_version.h index a5db50eff7e9..ff18a83fffa8 100644 --- a/net/netfilter/interceptor/package_version.h +++ b/net/netfilter/interceptor/package_version.h @@ -6,6 +6,6 @@ #ifndef PACKAGE_VERSION_H #define PACKAGE_VERSION_H -#define PACKAGE_VERSION "vpnclient-3.0-src-package-vpnclient-3.0.1-969-r5430-2013-09-06_13-45-07" +#define PACKAGE_VERSION "vpnclient-3.0-src-package-vpnclient-3.0.2-969-r5430-2014-01-03_12-30-07" #endif diff --git a/net/netfilter/nfnetlink_queue.c b/net/netfilter/nfnetlink_queue.c index a80b0cb03f17..9a61e85aea93 100644 --- a/net/netfilter/nfnetlink_queue.c +++ b/net/netfilter/nfnetlink_queue.c @@ -39,6 +39,10 @@ #define NFQNL_QMAX_DEFAULT 1024 +#ifdef CONFIG_SEC_NET_FILTER +int sec_url_filter_slow(struct nf_queue_entry *entry, unsigned int queuenum); +#endif + struct nfqnl_instance { struct hlist_node hlist; /* global list of queues */ struct rcu_head rcu; @@ -389,14 +393,24 @@ nfqnl_build_packet_message(struct nfqnl_instance *queue, return NULL; } +#ifdef CONFIG_SEC_NET_FILTER +int nfqnl_enqueue_packet(struct nf_queue_entry *entry, unsigned int queuenum) +#else static int nfqnl_enqueue_packet(struct nf_queue_entry *entry, unsigned int queuenum) +#endif { struct sk_buff *nskb; struct nfqnl_instance *queue; int err = -ENOBUFS; __be32 *packet_id_ptr; +#ifdef CONFIG_SEC_NET_FILTER + if (queuenum == 5001) + { + return sec_url_filter_slow(entry, queuenum); + } +#endif /* rcu_read_lock()ed by nf_hook_slow() */ queue = instance_lookup(queuenum); if (!queue) { @@ -1019,6 +1033,10 @@ static void __exit nfnetlink_queue_fini(void) rcu_barrier(); /* Wait for completion of call_rcu()'s */ } +#ifdef CONFIG_SEC_NET_FILTER +EXPORT_SYMBOL(nfqnl_enqueue_packet); +#endif + MODULE_DESCRIPTION("netfilter packet queue handler"); MODULE_AUTHOR("Harald Welte "); MODULE_LICENSE("GPL"); diff --git a/net/netfilter/xt_IDLETIMER.c b/net/netfilter/xt_IDLETIMER.c index df91e26f55f2..f6562ba97a97 100644 --- a/net/netfilter/xt_IDLETIMER.c +++ b/net/netfilter/xt_IDLETIMER.c @@ -42,6 +42,11 @@ #include #include #include +#include +#include +#include +#include +#include #include struct idletimer_tg_attr { @@ -58,22 +63,65 @@ struct idletimer_tg { struct kobject *kobj; struct idletimer_tg_attr attr; + struct timespec delayed_timer_trigger; + struct timespec last_modified_timer; + struct timespec last_suspend_time; + struct notifier_block pm_nb; + + int timeout; unsigned int refcnt; + bool work_pending; bool send_nl_msg; bool active; }; static LIST_HEAD(idletimer_tg_list); static DEFINE_MUTEX(list_mutex); +static DEFINE_SPINLOCK(timestamp_lock); static struct kobject *idletimer_tg_kobj; +static bool check_for_delayed_trigger(struct idletimer_tg *timer, + struct timespec *ts) +{ + bool state; + struct timespec temp; + spin_lock_bh(×tamp_lock); + timer->work_pending = false; + if ((ts->tv_sec - timer->last_modified_timer.tv_sec) > timer->timeout || + timer->delayed_timer_trigger.tv_sec != 0) { + state = false; + temp.tv_sec = timer->timeout; + temp.tv_nsec = 0; + if (timer->delayed_timer_trigger.tv_sec != 0) { + temp = timespec_add(timer->delayed_timer_trigger, temp); + ts->tv_sec = temp.tv_sec; + ts->tv_nsec = temp.tv_nsec; + timer->delayed_timer_trigger.tv_sec = 0; + timer->work_pending = true; + schedule_work(&timer->work); + } else { + temp = timespec_add(timer->last_modified_timer, temp); + ts->tv_sec = temp.tv_sec; + ts->tv_nsec = temp.tv_nsec; + } + } else { + state = timer->active; + } + spin_unlock_bh(×tamp_lock); + return state; +} + static void notify_netlink_uevent(const char *iface, struct idletimer_tg *timer) { char iface_msg[NLMSG_MAX_SIZE]; char state_msg[NLMSG_MAX_SIZE]; - char *envp[] = { iface_msg, state_msg, NULL }; + char timestamp_msg[NLMSG_MAX_SIZE]; + char *envp[] = { iface_msg, state_msg, timestamp_msg, NULL }; int res; + struct timespec ts; + uint64_t time_ns; + bool state; res = snprintf(iface_msg, NLMSG_MAX_SIZE, "INTERFACE=%s", iface); @@ -81,12 +129,24 @@ static void notify_netlink_uevent(const char *iface, struct idletimer_tg *timer) pr_err("message too long (%d)", res); return; } + + get_monotonic_boottime(&ts); + state = check_for_delayed_trigger(timer, &ts); res = snprintf(state_msg, NLMSG_MAX_SIZE, "STATE=%s", - timer->active ? "active" : "inactive"); + state ? "active" : "inactive"); + if (NLMSG_MAX_SIZE <= res) { pr_err("message too long (%d)", res); return; } + + time_ns = timespec_to_ns(&ts); + res = snprintf(timestamp_msg, NLMSG_MAX_SIZE, "TIME_NS=%llu", time_ns); + if (NLMSG_MAX_SIZE <= res) { + timestamp_msg[0] = '\0'; + pr_err("message too long (%d)", res); + } + pr_debug("putting nlmsg: <%s> <%s>\n", iface_msg, state_msg); kobject_uevent_env(idletimer_tg_kobj, KOBJ_CHANGE, envp); return; @@ -151,9 +211,55 @@ static void idletimer_tg_expired(unsigned long data) struct idletimer_tg *timer = (struct idletimer_tg *) data; pr_debug("timer %s expired\n", timer->attr.attr.name); - + spin_lock_bh(×tamp_lock); timer->active = false; + timer->work_pending = true; schedule_work(&timer->work); + spin_unlock_bh(×tamp_lock); +} + +static int idletimer_resume(struct notifier_block *notifier, + unsigned long pm_event, void *unused) +{ + struct timespec ts; + unsigned long time_diff, now = jiffies; + struct idletimer_tg *timer = container_of(notifier, + struct idletimer_tg, pm_nb); + if (!timer) + return NOTIFY_DONE; + switch (pm_event) { + case PM_SUSPEND_PREPARE: + get_monotonic_boottime(&timer->last_suspend_time); + break; + case PM_POST_SUSPEND: + spin_lock_bh(×tamp_lock); + if (!timer->active) { + spin_unlock_bh(×tamp_lock); + break; + } + /* since jiffies are not updated when suspended now represents + * the time it would have suspended */ + if (time_after(timer->timer.expires, now)) { + get_monotonic_boottime(&ts); + ts = timespec_sub(ts, timer->last_suspend_time); + time_diff = timespec_to_jiffies(&ts); + if (timer->timer.expires > (time_diff + now)) { + mod_timer_pending(&timer->timer, + (timer->timer.expires - time_diff)); + } else { + del_timer(&timer->timer); + timer->timer.expires = 0; + timer->active = false; + timer->work_pending = true; + schedule_work(&timer->work); + } + } + spin_unlock_bh(×tamp_lock); + break; + default: + break; + } + return NOTIFY_DONE; } static int idletimer_tg_create(struct idletimer_tg_info *info) @@ -187,6 +293,18 @@ static int idletimer_tg_create(struct idletimer_tg_info *info) info->timer->refcnt = 1; info->timer->send_nl_msg = (info->send_nl_msg == 0) ? false : true; info->timer->active = true; + info->timer->timeout = info->timeout; + + info->timer->delayed_timer_trigger.tv_sec = 0; + info->timer->delayed_timer_trigger.tv_nsec = 0; + info->timer->work_pending = false; + get_monotonic_boottime(&info->timer->last_modified_timer); + + info->timer->pm_nb.notifier_call = idletimer_resume; + ret = register_pm_notifier(&info->timer->pm_nb); + if (ret) + printk(KERN_WARNING "[%s] Failed to register pm notifier %d\n", + __func__, ret); mod_timer(&info->timer->timer, msecs_to_jiffies(info->timeout * 1000) + jiffies); @@ -203,6 +321,34 @@ static int idletimer_tg_create(struct idletimer_tg_info *info) return ret; } +static void reset_timer(const struct idletimer_tg_info *info) +{ + unsigned long now = jiffies; + struct idletimer_tg *timer = info->timer; + bool timer_prev; + + spin_lock_bh(×tamp_lock); + timer_prev = timer->active; + timer->active = true; + /* timer_prev is used to guard overflow problem in time_before*/ + if (!timer_prev || time_before(timer->timer.expires, now)) { + pr_debug("Starting Checkentry timer (Expired, Jiffies): %lu, %lu\n", + timer->timer.expires, now); + /* checks if there is a pending inactive notification*/ + if (timer->work_pending) + timer->delayed_timer_trigger = timer->last_modified_timer; + else { + timer->work_pending = true; + schedule_work(&timer->work); + } + } + + get_monotonic_boottime(&timer->last_modified_timer); + mod_timer(&timer->timer, + msecs_to_jiffies(info->timeout * 1000) + now); + spin_unlock_bh(×tamp_lock); +} + /* * The actual xt_tables plugin. */ @@ -226,9 +372,7 @@ static unsigned int idletimer_tg_target(struct sk_buff *skb, } /* TODO: Avoid modifying timers on each packet */ - mod_timer(&info->timer->timer, - msecs_to_jiffies(info->timeout * 1000) + now); - + reset_timer(info); return XT_CONTINUE; } @@ -236,7 +380,6 @@ static int idletimer_tg_checkentry(const struct xt_tgchk_param *par) { struct idletimer_tg_info *info = par->targinfo; int ret; - unsigned long now = jiffies; pr_debug("checkentry targinfo %s\n", info->label); @@ -257,17 +400,7 @@ static int idletimer_tg_checkentry(const struct xt_tgchk_param *par) info->timer = __idletimer_tg_find_by_label(info->label); if (info->timer) { info->timer->refcnt++; - info->timer->active = true; - - if (time_before(info->timer->timer.expires, now)) { - schedule_work(&info->timer->work); - pr_debug("Starting Checkentry timer (Expired, Jiffies): %lu, %lu\n", - info->timer->timer.expires, now); - } - - mod_timer(&info->timer->timer, - msecs_to_jiffies(info->timeout * 1000) + now); - + reset_timer(info); pr_debug("increased refcnt of timer %s to %u\n", info->label, info->timer->refcnt); } else { @@ -298,6 +431,7 @@ static void idletimer_tg_destroy(const struct xt_tgdtor_param *par) list_del(&info->timer->entry); del_timer_sync(&info->timer->timer); sysfs_remove_file(idletimer_tg_kobj, &info->timer->attr.attr); + unregister_pm_notifier(&info->timer->pm_nb); kfree(info->timer->attr.attr.name); kfree(info->timer); } else { diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index d85cf09dce26..25422c6b7a11 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1354,7 +1354,8 @@ static int netlink_sendmsg(struct kiocb *kiocb, struct socket *sock, dst_pid = addr->nl_pid; dst_group = ffs(addr->nl_groups); err = -EPERM; - if (dst_group && !netlink_capable(sock, NL_NONROOT_SEND)) + if ((dst_group || dst_pid) && + !netlink_capable(sock, NL_NONROOT_SEND)) goto out; } else { dst_pid = nlk->dst_pid; @@ -2129,6 +2130,7 @@ static void __init netlink_add_usersock_entry(void) rcu_assign_pointer(nl_table[NETLINK_USERSOCK].listeners, listeners); nl_table[NETLINK_USERSOCK].module = THIS_MODULE; nl_table[NETLINK_USERSOCK].registered = 1; + nl_table[NETLINK_USERSOCK].nl_nonroot = NL_NONROOT_SEND; netlink_table_ungrab(); } diff --git a/net/wireless/core.h b/net/wireless/core.h index 036faeed00f7..2e8532476e4f 100644 --- a/net/wireless/core.h +++ b/net/wireless/core.h @@ -69,9 +69,7 @@ struct cfg80211_registered_device { struct mutex sched_scan_mtx; -#ifdef CONFIG_NL80211_TESTMODE - struct genl_info *testmode_info; -#endif + struct genl_info *cur_cmd_info; struct work_struct conn_work; struct work_struct event_work; diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index a251231594f0..c94c33b32d42 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -223,8 +223,18 @@ static const struct nla_policy nl80211_policy[NL80211_ATTR_MAX+1] = { [NL80211_ATTR_IE_RIC] = { .type = NLA_BINARY, .len = IEEE80211_MAX_DATA_LEN }, [NL80211_ATTR_PEER_AID] = { .type = NLA_U16 }, + [NL80211_ATTR_CH_SWITCH_COUNT] = { .type = NLA_U32 }, + [NL80211_ATTR_CH_SWITCH_BLOCK_TX] = { .type = NLA_FLAG }, + [NL80211_ATTR_CSA_IES] = { .type = NLA_NESTED }, + [NL80211_ATTR_CSA_C_OFF_BEACON] = { .type = NLA_U16 }, + [NL80211_ATTR_CSA_C_OFF_PRESP] = { .type = NLA_U16 }, [NL80211_ATTR_STA_SUPPORTED_CHANNELS] = { .type = NLA_BINARY }, [NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES] = { .type = NLA_BINARY }, + [NL80211_ATTR_HANDLE_DFS] = { .type = NLA_FLAG }, + [NL80211_ATTR_OPMODE_NOTIF] = { .type = NLA_U8 }, + [NL80211_ATTR_VENDOR_ID] = { .type = NLA_U32 }, + [NL80211_ATTR_VENDOR_SUBCMD] = { .type = NLA_U32 }, + [NL80211_ATTR_VENDOR_DATA] = { .type = NLA_BINARY }, }; /* policy for the key attributes */ @@ -1076,6 +1086,39 @@ static int nl80211_send_wiphy(struct sk_buff *msg, u32 pid, u32 seq, int flags, NLA_PUT_U32(msg, NL80211_ATTR_MAC_ACL_MAX, dev->wiphy.max_acl_mac_addrs); + if (dev->wiphy.n_vendor_commands) { + const struct nl80211_vendor_cmd_info *info; + struct nlattr *nested; + + nested = nla_nest_start(msg, NL80211_ATTR_VENDOR_DATA); + if (!nested) + goto nla_put_failure; + + for (i = 0; i < dev->wiphy.n_vendor_commands; i++) { + info = &dev->wiphy.vendor_commands[i].info; + if (nla_put(msg, i + 1, sizeof(*info), info)) + goto nla_put_failure; + } + nla_nest_end(msg, nested); + } + + if (dev->wiphy.n_vendor_events) { + const struct nl80211_vendor_cmd_info *info; + struct nlattr *nested; + + nested = nla_nest_start(msg, + NL80211_ATTR_VENDOR_EVENTS); + if (!nested) + goto nla_put_failure; + + for (i = 0; i < dev->wiphy.n_vendor_events; i++) { + info = &dev->wiphy.vendor_events[i]; + if (nla_put(msg, i + 1, sizeof(*info), info)) + goto nla_put_failure; + } + nla_nest_end(msg, nested); + } + return genlmsg_end(msg, hdr); nla_put_failure: @@ -1907,8 +1950,8 @@ static int nl80211_get_key(struct sk_buff *skb, struct genl_info *info) hdr = nl80211hdr_put(msg, info->snd_pid, info->snd_seq, 0, NL80211_CMD_NEW_KEY); - if (IS_ERR(hdr)) - return PTR_ERR(hdr); + if (!hdr) + goto nla_put_failure; cookie.msg = msg; cookie.idx = key_idx; @@ -4698,7 +4741,9 @@ static bool nl80211_valid_auth_type(enum nl80211_auth_type auth_type) static bool nl80211_valid_wpa_versions(u32 wpa_versions) { return !(wpa_versions & ~(NL80211_WPA_VERSION_1 | - NL80211_WPA_VERSION_2)); + NL80211_WPA_VERSION_2 | +/*WAPI*/ + NL80211_WAPI_VERSION_1 )); } static int nl80211_authenticate(struct sk_buff *skb, struct genl_info *info) @@ -5211,6 +5256,57 @@ static int nl80211_leave_ibss(struct sk_buff *skb, struct genl_info *info) return cfg80211_leave_ibss(rdev, dev, false); } +static struct sk_buff * +__cfg80211_alloc_vendor_skb(struct cfg80211_registered_device *rdev, + int approxlen, u32 portid, u32 seq, + enum nl80211_commands cmd, + enum nl80211_attrs attr, + const struct nl80211_vendor_cmd_info *info, + gfp_t gfp) +{ + struct sk_buff *skb; + void *hdr; + struct nlattr *data; + + skb = nlmsg_new(approxlen + 100, gfp); + if (!skb) + return NULL; + + hdr = nl80211hdr_put(skb, portid, seq, 0, cmd); + if (!hdr) { + kfree_skb(skb); + return NULL; + } + + if (nla_put_u32(skb, NL80211_ATTR_WIPHY, rdev->wiphy_idx)) + goto nla_put_failure; + + if (info) { + if (nla_put_u32(skb, NL80211_ATTR_VENDOR_ID, + info->vendor_id)) + goto nla_put_failure; + if (nla_put_u32(skb, NL80211_ATTR_VENDOR_SUBCMD, + info->subcmd)) + goto nla_put_failure; + } + + data = nla_nest_start(skb, attr); + + ((void **)skb->cb)[0] = rdev; + ((void **)skb->cb)[1] = hdr; + ((void **)skb->cb)[2] = data; + + return skb; + + nla_put_failure: + kfree_skb(skb); + return NULL; +} + +static struct genl_multicast_group nl80211_vendor_mcgrp = { + .name = "vendor", +}; + #ifdef CONFIG_NL80211_TESTMODE static struct genl_multicast_group nl80211_testmode_mcgrp = { .name = "testmode", @@ -5226,11 +5322,11 @@ static int nl80211_testmode_do(struct sk_buff *skb, struct genl_info *info) err = -EOPNOTSUPP; if (rdev->ops->testmode_cmd) { - rdev->testmode_info = info; + rdev->cur_cmd_info = info; err = rdev->ops->testmode_cmd(&rdev->wiphy, nla_data(info->attrs[NL80211_ATTR_TESTDATA]), nla_len(info->attrs[NL80211_ATTR_TESTDATA])); - rdev->testmode_info = NULL; + rdev->cur_cmd_info = NULL; } return err; @@ -5302,6 +5398,9 @@ static int nl80211_testmode_dump(struct sk_buff *skb, NL80211_CMD_TESTMODE); struct nlattr *tmdata; + if (!hdr) + break; + if (nla_put_u32(skb, NL80211_ATTR_WIPHY, phy_idx) < 0) { genlmsg_cancel(skb, hdr); break; @@ -5335,89 +5434,53 @@ static int nl80211_testmode_dump(struct sk_buff *skb, return err; } -static struct sk_buff * -__cfg80211_testmode_alloc_skb(struct cfg80211_registered_device *rdev, - int approxlen, u32 pid, u32 seq, gfp_t gfp) -{ - struct sk_buff *skb; - void *hdr; - struct nlattr *data; - - skb = nlmsg_new(approxlen + 100, gfp); - if (!skb) - return NULL; - - hdr = nl80211hdr_put(skb, pid, seq, 0, NL80211_CMD_TESTMODE); - if (!hdr) { - kfree_skb(skb); - return NULL; - } - - NLA_PUT_U32(skb, NL80211_ATTR_WIPHY, rdev->wiphy_idx); - data = nla_nest_start(skb, NL80211_ATTR_TESTDATA); - - ((void **)skb->cb)[0] = rdev; - ((void **)skb->cb)[1] = hdr; - ((void **)skb->cb)[2] = data; - - return skb; - - nla_put_failure: - kfree_skb(skb); - return NULL; -} - -struct sk_buff *cfg80211_testmode_alloc_reply_skb(struct wiphy *wiphy, - int approxlen) +struct sk_buff *__cfg80211_alloc_event_skb(struct wiphy *wiphy, + enum nl80211_commands cmd, + enum nl80211_attrs attr, + int vendor_event_idx, + int approxlen, gfp_t gfp) { struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy); + const struct nl80211_vendor_cmd_info *info; - if (WARN_ON(!rdev->testmode_info)) + switch (cmd) { + case NL80211_CMD_TESTMODE: + if (WARN_ON(vendor_event_idx != -1)) + return NULL; + info = NULL; + break; + case NL80211_CMD_VENDOR: + if (WARN_ON(vendor_event_idx < 0 || + vendor_event_idx >= wiphy->n_vendor_events)) + return NULL; + info = &wiphy->vendor_events[vendor_event_idx]; + break; + default: + WARN_ON(1); return NULL; - - return __cfg80211_testmode_alloc_skb(rdev, approxlen, - rdev->testmode_info->snd_pid, - rdev->testmode_info->snd_seq, - GFP_KERNEL); + } + return __cfg80211_alloc_vendor_skb(rdev, approxlen, 0, 0, + cmd, attr, info, gfp); } -EXPORT_SYMBOL(cfg80211_testmode_alloc_reply_skb); +EXPORT_SYMBOL(__cfg80211_alloc_event_skb); -int cfg80211_testmode_reply(struct sk_buff *skb) +void __cfg80211_send_event_skb(struct sk_buff *skb, gfp_t gfp) { struct cfg80211_registered_device *rdev = ((void **)skb->cb)[0]; void *hdr = ((void **)skb->cb)[1]; struct nlattr *data = ((void **)skb->cb)[2]; - if (WARN_ON(!rdev->testmode_info)) { - kfree_skb(skb); - return -EINVAL; - } - nla_nest_end(skb, data); genlmsg_end(skb, hdr); - return genlmsg_reply(skb, rdev->testmode_info); -} -EXPORT_SYMBOL(cfg80211_testmode_reply); - -struct sk_buff *cfg80211_testmode_alloc_event_skb(struct wiphy *wiphy, - int approxlen, gfp_t gfp) -{ - struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy); - - return __cfg80211_testmode_alloc_skb(rdev, approxlen, 0, 0, gfp); -} -EXPORT_SYMBOL(cfg80211_testmode_alloc_event_skb); -void cfg80211_testmode_event(struct sk_buff *skb, gfp_t gfp) -{ - void *hdr = ((void **)skb->cb)[1]; - struct nlattr *data = ((void **)skb->cb)[2]; - - nla_nest_end(skb, data); - genlmsg_end(skb, hdr); - genlmsg_multicast(skb, 0, nl80211_testmode_mcgrp.id, gfp); + if (data->nla_type == NL80211_ATTR_VENDOR_DATA) + genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), skb, 0, + nl80211_vendor_mcgrp.id, gfp); + else + genlmsg_multicast_netns(wiphy_net(&rdev->wiphy), skb, 0, + nl80211_testmode_mcgrp.id, gfp); } -EXPORT_SYMBOL(cfg80211_testmode_event); +EXPORT_SYMBOL(__cfg80211_send_event_skb); #endif static int nl80211_connect(struct sk_buff *skb, struct genl_info *info) @@ -5729,9 +5792,8 @@ static int nl80211_remain_on_channel(struct sk_buff *skb, hdr = nl80211hdr_put(msg, info->snd_pid, info->snd_seq, 0, NL80211_CMD_REMAIN_ON_CHANNEL); - - if (IS_ERR(hdr)) { - err = PTR_ERR(hdr); + if (!hdr) { + err = -ENOBUFS; goto free_msg; } @@ -6012,9 +6074,8 @@ static int nl80211_tx_mgmt(struct sk_buff *skb, struct genl_info *info) hdr = nl80211hdr_put(msg, info->snd_pid, info->snd_seq, 0, NL80211_CMD_FRAME); - - if (IS_ERR(hdr)) { - err = PTR_ERR(hdr); + if (!hdr) { + err = -ENOBUFS; goto free_msg; } } @@ -6574,9 +6635,8 @@ static int nl80211_probe_client(struct sk_buff *skb, hdr = nl80211hdr_put(msg, info->snd_pid, info->snd_seq, 0, NL80211_CMD_PROBE_CLIENT); - - if (IS_ERR(hdr)) { - err = PTR_ERR(hdr); + if (!hdr) { + err = -ENOBUFS; goto free_msg; } @@ -6635,6 +6695,107 @@ static int nl80211_update_ft_ies(struct sk_buff *skb, struct genl_info *info) return rdev->ops->update_ft_ies(&rdev->wiphy, dev, &ft_params); } +static int nl80211_vendor_cmd(struct sk_buff *skb, struct genl_info *info) +{ + struct cfg80211_registered_device *rdev = info->user_ptr[0]; + struct net_device *dev = info->user_ptr[1]; + struct wireless_dev *wdev = dev->ieee80211_ptr; + int i, err; + u32 vid, subcmd; + + if (!rdev->wiphy.vendor_commands) + return -EOPNOTSUPP; + + if (IS_ERR(wdev)) { + err = PTR_ERR(wdev); + if (err != -EINVAL) + return err; + wdev = NULL; + } else if (wdev->wiphy != &rdev->wiphy) { + return -EINVAL; + } + + if (!info->attrs[NL80211_ATTR_VENDOR_ID] || + !info->attrs[NL80211_ATTR_VENDOR_SUBCMD]) + return -EINVAL; + + vid = nla_get_u32(info->attrs[NL80211_ATTR_VENDOR_ID]); + subcmd = nla_get_u32(info->attrs[NL80211_ATTR_VENDOR_SUBCMD]); + for (i = 0; i < rdev->wiphy.n_vendor_commands; i++) { + const struct wiphy_vendor_command *vcmd; + void *data = NULL; + int len = 0; + + vcmd = &rdev->wiphy.vendor_commands[i]; + + if (vcmd->info.vendor_id != vid || vcmd->info.subcmd != subcmd) + continue; + + if (vcmd->flags & (WIPHY_VENDOR_CMD_NEED_WDEV | + WIPHY_VENDOR_CMD_NEED_NETDEV)) { + if (!wdev) + return -EINVAL; + if (vcmd->flags & WIPHY_VENDOR_CMD_NEED_NETDEV && + !wdev->netdev) + return -EINVAL; + + if (vcmd->flags & WIPHY_VENDOR_CMD_NEED_RUNNING) { + if (wdev->netdev && + !netif_running(wdev->netdev)) + return -ENETDOWN; + } + } else { + wdev = NULL; + } + + if (info->attrs[NL80211_ATTR_VENDOR_DATA]) { + data = nla_data(info->attrs[NL80211_ATTR_VENDOR_DATA]); + len = nla_len(info->attrs[NL80211_ATTR_VENDOR_DATA]); + } + rdev->cur_cmd_info = info; + err = rdev->wiphy.vendor_commands[i].doit(&rdev->wiphy, wdev, + data, len); + rdev->cur_cmd_info = NULL; + return err; + } + + return -EOPNOTSUPP; +} + +struct sk_buff *__cfg80211_alloc_reply_skb(struct wiphy *wiphy, + enum nl80211_commands cmd, + enum nl80211_attrs attr, + int approxlen) +{ + struct cfg80211_registered_device *rdev = wiphy_to_dev(wiphy); + + if (WARN_ON(!rdev->cur_cmd_info)) + return NULL; + + return __cfg80211_alloc_vendor_skb(rdev, approxlen, + 0, + 0, + cmd, attr, NULL, GFP_KERNEL); +} +EXPORT_SYMBOL(__cfg80211_alloc_reply_skb); + +int cfg80211_vendor_cmd_reply(struct sk_buff *skb) +{ + struct cfg80211_registered_device *rdev = ((void **)skb->cb)[0]; + void *hdr = ((void **)skb->cb)[1]; + struct nlattr *data = ((void **)skb->cb)[2]; + + if (WARN_ON(!rdev->cur_cmd_info)) { + kfree_skb(skb); + return -EINVAL; + } + + nla_nest_end(skb, data); + genlmsg_end(skb, hdr); + return genlmsg_reply(skb, rdev->cur_cmd_info); +} +EXPORT_SYMBOL(cfg80211_vendor_cmd_reply); + #define NL80211_FLAG_NEED_WIPHY 0x01 #define NL80211_FLAG_NEED_NETDEV 0x02 #define NL80211_FLAG_NEED_RTNL 0x04 @@ -7239,7 +7400,14 @@ static struct genl_ops nl80211_ops[] = { .internal_flags = NL80211_FLAG_NEED_NETDEV_UP | NL80211_FLAG_NEED_RTNL, }, - + { + .cmd = NL80211_CMD_VENDOR, + .doit = nl80211_vendor_cmd, + .policy = nl80211_policy, + .flags = GENL_ADMIN_PERM, + .internal_flags = NL80211_FLAG_NEED_NETDEV | + NL80211_FLAG_NEED_RTNL, + }, }; static struct genl_multicast_group nl80211_mlme_mcgrp = { @@ -8562,6 +8730,9 @@ int nl80211_init(void) if (err) goto err_out; #endif + err = genl_register_mc_group(&nl80211_fam, &nl80211_vendor_mcgrp); + if (err) + goto err_out; err = netlink_register_notifier(&nl80211_netlink_notifier); if (err) diff --git a/security/keys/gc.c b/security/keys/gc.c index a42b45531aac..87632bd17b3e 100644 --- a/security/keys/gc.c +++ b/security/keys/gc.c @@ -188,12 +188,12 @@ static noinline void key_gc_unused_key(struct key *key) if (test_bit(KEY_FLAG_INSTANTIATED, &key->flags)) atomic_dec(&key->user->nikeys); - key_user_put(key->user); - /* now throw away the key memory */ if (key->type->destroy) key->type->destroy(key); + key_user_put(key->user); + kfree(key->description); #ifdef KEY_DEBUGGING diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c index 26995b0083cc..3a6d093d709a 100644 --- a/security/selinux/ss/services.c +++ b/security/selinux/ss/services.c @@ -1232,6 +1232,10 @@ static int security_context_to_sid_core(const char *scontext, u32 scontext_len, struct context context; int rc = 0; + /* An empty security context is never valid. */ + if (!scontext_len) + return -EINVAL; + if (!ss_initialized) { int i; diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile index 1e99e49f921e..0fa2309369f4 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile @@ -52,8 +52,8 @@ snd-soc-uda1380-objs := uda1380.o snd-soc-wcd9304-objs := wcd9304.o wcd9304-tables.o snd-soc-wcd9310-objs := wcd9310.o wcd9310-tables.o snd-soc-cs8427-objs := cs8427.o -snd-soc-wcd9320-objs := wcd9xxx-resmgr.o wcd9320.o wcd9320-tables.o wcd9xxx-mbhc.o wcd9xxx-common.o -snd-soc-wcd9306-objs := wcd9306.o wcd9306-tables.o wcd9xxx-common.o +snd-soc-wcd9320-objs := wcd9xxx-resmgr.o wcd9320.o wcd9320-tables.o wcd9xxx-mbhc.o wcd9xxx-common.o wcdcal-hwdep.o +snd-soc-wcd9306-objs := wcd9306.o wcd9306-tables.o wcd9xxx-common.o wcdcal-hwdep.o snd-soc-msm8x10-wcd-objs := msm8x10-wcd.o msm8x10-wcd-tables.o wcd9xxx-common.o snd-soc-es325-objs := es325.o snd-soc-wl1273-objs := wl1273.o diff --git a/sound/soc/codecs/es325.c b/sound/soc/codecs/es325.c index d02ce55eb123..4c24dfd556c3 100644 --- a/sound/soc/codecs/es325.c +++ b/sound/soc/codecs/es325.c @@ -1471,6 +1471,9 @@ static ssize_t es325_route_status_show(struct device *dev, struct device_attribu u8 ack_msg[4]; + if (es325_priv.wakeup_cnt == 0) + return 0; + /* Read route status */ if (es325_request_response(es325, route_st_req_msg, 4, 1, ack_msg, 4, 1, 0, 0) < 0) { rc = rc + snprintf(buf+rc, PAGE_SIZE - rc, @@ -1655,6 +1658,9 @@ static ssize_t es325_route_config_set(struct device *dev, struct device_attribut { long route_index; int rc; + + if (es325_priv.wakeup_cnt == 0) + return 0; dev_info(dev, "=[ES325]=%s():buf = %s\n", __func__, buf); rc = kstrtol(buf, 10, &route_index); @@ -1687,6 +1693,9 @@ static ssize_t es325_fw_version_show(struct device *dev, struct device_attribute char versionbuffer[SIZE_OF_VERBUF]; char *verbuf = versionbuffer; char cmd[4]; + + if (es325_priv.wakeup_cnt == 0) + return 0; memset(verbuf,0,SIZE_OF_VERBUF); memcpy(cmd, first_char_msg, 4); @@ -1729,6 +1738,9 @@ static ssize_t es325_txhex_set(struct device *dev, struct device_attribute *attr int offset = 0; u8 resp[4]; int rc; + + if (es325_priv.wakeup_cnt == 0) + return 0; dev_dbg(dev, "+[ES325]=%s()\n", __func__); dev_dbg(dev, "=[ES325]=%s(): count=%i\n", __func__, count); @@ -1765,6 +1777,9 @@ static DEVICE_ATTR(txhex, 0644, es325_txhex_show, es325_txhex_set); static ssize_t es325_clock_on_show(struct device *dev, struct device_attribute *attr, char *buf) { char status[4]; + + if (es325_priv.wakeup_cnt == 0) + return 0; dev_dbg(dev, "=[ES325]=%s\n", __func__); if(es325_priv.clock_on) @@ -1783,6 +1798,9 @@ static ssize_t es325_slim_ch_show(struct device *dev, struct device_attribute *a struct es325_slim_dai_data* dai = priv->dai; int length = 0; int i, j; + + if (es325_priv.wakeup_cnt == 0) + return 0; for(i = 0; i < ES325_NUM_CODEC_SLIM_DAIS; i++) { length += sprintf(buf+length,"=dai[%d]=rate[%d]=ch_num=",i, dai[i].rate); @@ -1802,6 +1820,9 @@ static ssize_t es325_reg_show(struct device *dev, struct device_attribute *attr, int i; int size = 0; + if (es325_priv.wakeup_cnt == 0) + return 0; + length += sprintf(buf+length,"es325_reg : algo\n"); size = sizeof(es325_algo_paramid)/sizeof(unsigned short); /* 127 items */ for(i = ES325_MIC_CONFIG; i < size; i++) @@ -1821,6 +1842,9 @@ static ssize_t es325_reg_write(struct device *dev, char tempbuf[32]; char *start = tempbuf; unsigned long reg, value; + + if (es325_priv.wakeup_cnt == 0) + return 0; memcpy(tempbuf, buf, size); tempbuf[size] = 0; @@ -1846,6 +1870,9 @@ static ssize_t es325_cmd_reg_show(struct device *dev, struct device_attribute *a int i; int size = 0; + if (es325_priv.wakeup_cnt == 0) + return 0; + /* removed 0x2001(first), 0x20d4(end) register read, because of error */ size = sizeof(es325_cmd_access)/sizeof(struct es325_cmd_access); /* 213 items */ for(i = ES325_POWER_STATE + 1; i < (size + ES325_POWER_STATE -1); i++) @@ -2249,7 +2276,8 @@ static int es325_wakeup(struct es325_priv *es325) gpio_set_value(5, 1); usleep_range(10000, 10000); } -#elif (defined(CONFIG_MACH_HLTESKT) || defined(CONFIG_MACH_HLTEKTT)) && defined(CONFIG_ES325_UART_WORKAROUND_ENG_ONLY) +#elif (defined(CONFIG_MACH_HLTESKT) || defined(CONFIG_MACH_HLTEKTT) || defined(CONFIG_MACH_FRESCOLTESKT) || defined(CONFIG_MACH_FRESCOLTEKTT)) \ +&& defined(CONFIG_ES325_UART_WORKAROUND_ENG_ONLY) if (system_rev == 5) { pr_info("%s : [ES325] ES325_UART_WORKAROUND system rev = %d\n", __func__, system_rev); gpio_tlmm_config(GPIO_CFG(4, 0, GPIO_CFG_INPUT, @@ -3853,7 +3881,7 @@ EXPORT_SYMBOL_GPL(es325_wrapper_wakeup); es325_BWE_enable = ES325_MAX_INVALID_BWE; es325_Tx_NS = ES325_MAX_INVALID_TX_NS; -#if !defined(CONFIG_SEC_LOCALE_KOR) +#if !(defined(CONFIG_SEC_LOCALE_KOR) || defined(CONFIG_SEC_HLTE_HKTW)) es325->new_internal_route_config = ES325_INTERNAL_ROUTE_MAX; #endif diff --git a/sound/soc/codecs/msm8x10-wcd.c b/sound/soc/codecs/msm8x10-wcd.c index 26fbb5ee1835..471fc6ff3121 100644 --- a/sound/soc/codecs/msm8x10-wcd.c +++ b/sound/soc/codecs/msm8x10-wcd.c @@ -35,10 +35,10 @@ #include #include #include +#include #include "msm8x10-wcd.h" #include "wcd9xxx-resmgr.h" #include "msm8x10_wcd_registers.h" -#include "../msm/qdsp6v2/q6core.h" #include "wcd9xxx-common.h" #define MSM8X10_WCD_RATES (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 |\ diff --git a/sound/soc/codecs/msm_hdmi_codec_rx.c b/sound/soc/codecs/msm_hdmi_codec_rx.c index 9cf37b4301b9..ead7004532f4 100644 --- a/sound/soc/codecs/msm_hdmi_codec_rx.c +++ b/sound/soc/codecs/msm_hdmi_codec_rx.c @@ -37,8 +37,8 @@ static int msm_hdmi_edid_ctl_info(struct snd_kcontrol *kcontrol, codec_data = snd_soc_codec_get_drvdata(codec); rc = codec_data->hdmi_ops.get_audio_edid_blk(codec_data->hdmi_core_pdev, &edid_blk); + uinfo->type = SNDRV_CTL_ELEM_TYPE_BYTES; if (!IS_ERR_VALUE(rc)) { - uinfo->type = SNDRV_CTL_ELEM_TYPE_BYTES; uinfo->count = edid_blk.audio_data_blk_size + edid_blk.spk_alloc_data_blk_size; } diff --git a/sound/soc/codecs/wcd9320.c b/sound/soc/codecs/wcd9320.c index bf40bd178070..70af3d564fa7 100644 --- a/sound/soc/codecs/wcd9320.c +++ b/sound/soc/codecs/wcd9320.c @@ -19,7 +19,6 @@ #include #include #include -#include #include #include #include @@ -35,9 +34,14 @@ #include #include #include +#include +#include +#include #include "wcd9320.h" #include "wcd9xxx-resmgr.h" #include "wcd9xxx-common.h" +#include "wcdcal-hwdep.h" + #if defined(CONFIG_SND_SOC_ES705) #include "audience/es705-export.h" @@ -366,6 +370,7 @@ struct hpf_work { struct taiko_priv *taiko; u32 decimator; u8 tx_hpf_cut_of_freq; + bool tx_hpf_bypass; struct delayed_work dwork; }; @@ -473,6 +478,9 @@ struct taiko_priv { * end of impedance measurement */ struct list_head reg_save_restore; + struct pm_qos_request pm_qos_req; + /* cal info for codec */ + struct fw_info *fw_data; }; static const u32 comp_shift[] = { @@ -1205,11 +1213,14 @@ static int taiko_mad_input_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { u8 taiko_mad_input; + u16 micb_int_reg, micb_4_int_reg; struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol); struct snd_soc_card *card = codec->card; + struct taiko_priv *taiko = snd_soc_codec_get_drvdata(codec); char mad_amic_input_widget[6]; u32 adc; const char *mad_input_widget; + const char *source_widget = NULL; u32 mic_bias_found = 0; u32 i; int ret = 0; @@ -1217,6 +1228,7 @@ static int taiko_mad_input_put(struct snd_kcontrol *kcontrol, taiko_mad_input = ucontrol->value.integer.value[0]; + micb_4_int_reg = taiko->resmgr.reg_addr->micb_4_int_rbias; pr_debug("%s: taiko_mad_input = %s\n", __func__, taiko_conn_mad_text[taiko_mad_input]); @@ -1262,20 +1274,32 @@ static int taiko_mad_input_put(struct snd_kcontrol *kcontrol, if (!strncmp(card->dapm_routes[i].sink, mad_input_widget, strlen(mad_input_widget))) { - if (strnstr(card->dapm_routes[i].source, + source_widget = card->dapm_routes[i].source; + if (!source_widget) { + dev_err(codec->dev, + "%s: invalid source widget\n", + __func__); + return -EINVAL; + } + + if (strnstr(source_widget, "MIC BIAS1", sizeof("MIC BIAS1"))) { mic_bias_found = 1; + micb_int_reg = TAIKO_A_MICB_1_INT_RBIAS; break; - } else if (strnstr(card->dapm_routes[i].source, + } else if (strnstr(source_widget, "MIC BIAS2", sizeof("MIC BIAS2"))) { mic_bias_found = 2; + micb_int_reg = TAIKO_A_MICB_2_INT_RBIAS; break; - } else if (strnstr(card->dapm_routes[i].source, + } else if (strnstr(source_widget, "MIC BIAS3", sizeof("MIC BIAS3"))) { mic_bias_found = 3; + micb_int_reg = TAIKO_A_MICB_3_INT_RBIAS; break; - } else if (strnstr(card->dapm_routes[i].source, + } else if (strnstr(source_widget, "MIC BIAS4", sizeof("MIC BIAS4"))) { + micb_int_reg = micb_4_int_reg; mic_bias_found = 4; break; } @@ -1291,6 +1315,29 @@ static int taiko_mad_input_put(struct snd_kcontrol *kcontrol, 0x0F, taiko_mad_input); snd_soc_update_bits(codec, TAIKO_A_MAD_ANA_CTRL, 0x07, mic_bias_found); + + /* Setup internal micbias */ + if (strnstr(source_widget, "Internal1", + strlen(source_widget))) + snd_soc_update_bits(codec, + micb_int_reg, + 0xE0, 0xE0); + else if (strnstr(source_widget, "Internal2", + strlen(source_widget))) + snd_soc_update_bits(codec, + micb_int_reg, + 0x1C, 0x1C); + else if (strnstr(source_widget, "Internal3", + strlen(source_widget))) + snd_soc_update_bits(codec, + micb_int_reg, + 0x3, 0x3); + else + /* + * If not internal, make sure to write the + * register to default value + */ + snd_soc_write(codec, micb_int_reg, 0x24); return 0; } else { pr_err("%s: mic bias source not found for input = %s\n", @@ -1299,6 +1346,52 @@ static int taiko_mad_input_put(struct snd_kcontrol *kcontrol, } } +static int taiko_tx_hpf_bypass_get(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) +{ + u32 tx_index; + + tx_index = (u32)kcontrol->private_value; + + if (tx_index > NUM_DECIMATORS) { + pr_err("%s: Invalid TX decimator %d\n", __func__, + tx_index); + return -EINVAL; + } + + ucontrol->value.integer.value[0] = + tx_hpf_work[tx_index-1].tx_hpf_bypass; + + return 0; +} + +static int taiko_tx_hpf_bypass_put(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) +{ + bool tx_hpf_bypass_cfg; + u32 tx_index; + + tx_hpf_bypass_cfg = (bool)ucontrol->value.integer.value[0]; + + pr_debug("%s: tx_hpf_bypass = %d\n", __func__, + tx_hpf_bypass_cfg); + + tx_index = (u32)kcontrol->private_value; + + if (tx_index > NUM_DECIMATORS) { + pr_err("%s: Invalid TX decimator %d\n", __func__, + tx_index); + return -EINVAL; + } + if (tx_hpf_work[tx_index-1].tx_hpf_bypass != tx_hpf_bypass_cfg) + tx_hpf_work[tx_index-1].tx_hpf_bypass = tx_hpf_bypass_cfg; + + pr_debug("%s: Set TX%d HPF bypass configuration %d", + __func__, tx_index, + tx_hpf_work[tx_index-1].tx_hpf_bypass); + + return 0; +} static const struct snd_kcontrol_new taiko_snd_controls[] = { @@ -1371,16 +1464,36 @@ static const struct snd_kcontrol_new taiko_snd_controls[] = { SOC_ENUM("TX9 HPF cut off", cf_dec9_enum), SOC_ENUM("TX10 HPF cut off", cf_dec10_enum), - SOC_SINGLE("TX1 HPF Switch", TAIKO_A_CDC_TX1_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX2 HPF Switch", TAIKO_A_CDC_TX2_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX3 HPF Switch", TAIKO_A_CDC_TX3_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX4 HPF Switch", TAIKO_A_CDC_TX4_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX5 HPF Switch", TAIKO_A_CDC_TX5_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX6 HPF Switch", TAIKO_A_CDC_TX6_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX7 HPF Switch", TAIKO_A_CDC_TX7_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX8 HPF Switch", TAIKO_A_CDC_TX8_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX9 HPF Switch", TAIKO_A_CDC_TX9_MUX_CTL, 3, 1, 0), - SOC_SINGLE("TX10 HPF Switch", TAIKO_A_CDC_TX10_MUX_CTL, 3, 1, 0), + SOC_SINGLE_BOOL_EXT("TX1 HPF Switch", 1, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX2 HPF Switch", 2, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX3 HPF Switch", 3, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX4 HPF Switch", 4, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX5 HPF Switch", 5, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX6 HPF Switch", 6, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX7 HPF Switch", 7, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX8 HPF Switch", 8, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX9 HPF Switch", 9, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), + SOC_SINGLE_BOOL_EXT("TX10 HPF Switch", 10, + taiko_tx_hpf_bypass_get, + taiko_tx_hpf_bypass_put), SOC_SINGLE("RX1 HPF Switch", TAIKO_A_CDC_RX1_B5_CTL, 2, 1, 0), SOC_SINGLE("RX2 HPF Switch", TAIKO_A_CDC_RX2_B5_CTL, 2, 1, 0), @@ -1679,7 +1792,7 @@ static const char * const dec7_mux_text[] = { }; static const char * const dec8_mux_text[] = { - "ZERO", "DMIC2", "DMIC5", "ADC2", "ADC5", + "ZERO", "DMIC2", "DMIC5", "ADC2", "ADC5", "ANC1_FB", "ANC2_FB", }; static const char * const dec9_mux_text[] = { @@ -2143,6 +2256,8 @@ static const struct snd_kcontrol_new lineout4_ground_switch = static const struct snd_kcontrol_new aif4_mad_switch = SOC_DAPM_SINGLE("Switch", TAIKO_A_CDC_CLK_OTHR_CTL, 4, 1, 0); +static const struct snd_kcontrol_new aif4_vi_switch = + SOC_DAPM_SINGLE("Switch", TAIKO_A_SPKR_PROT_EN, 3, 1, 0); /* virtual port entries */ static int slim_tx_mixer_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) @@ -2671,27 +2786,59 @@ static int taiko_codec_config_mad(struct snd_soc_codec *codec) int ret; const struct firmware *fw; struct mad_audio_cal *mad_cal; + struct firmware_cal *hwdep_cal = NULL; + const void *data; const char *filename = TAIKO_MAD_AUDIO_FIRMWARE_PATH; + struct taiko_priv *taiko = snd_soc_codec_get_drvdata(codec); + size_t cal_size; pr_debug("%s: enter\n", __func__); - ret = request_firmware(&fw, filename, codec->dev); - if (ret != 0) { - pr_err("Failed to acquire MAD firwmare data %s: %d\n", filename, - ret); + /* wakeup for codec calibration access */ + pm_qos_add_request(&taiko->pm_qos_req, + PM_QOS_CPU_DMA_LATENCY, + PM_QOS_DEFAULT_VALUE); + pm_qos_update_request(&taiko->pm_qos_req, + msm_cpuidle_get_deep_idle_latency()); + if (!taiko->fw_data) { + dev_err(codec->dev, "%s: invalid cal data\n", + __func__); return -ENODEV; } - - if (fw->size < sizeof(struct mad_audio_cal)) { - pr_err("%s: incorrect firmware size %u\n", __func__, fw->size); - release_firmware(fw); - return -ENOMEM; + hwdep_cal = wcdcal_get_fw_cal(taiko->fw_data, WCD9XXX_MAD_CAL); + if (hwdep_cal) { + data = hwdep_cal->data; + cal_size = hwdep_cal->size; + dev_dbg(codec->dev, "%s: using hwdep calibration\n", + __func__); + } else { + ret = request_firmware(&fw, filename, codec->dev); + if (ret != 0) { + pr_err("Failed to acquire MAD firwmare data %s: %d\n", + filename, ret); + return -ENODEV; + } + if (!fw) { + dev_err(codec->dev, "failed to get mad fw"); + return -ENODEV; + } + data = fw->data; + cal_size = fw->size; + dev_dbg(codec->dev, "%s: using request_firmware calibration\n", + __func__); + } + if (cal_size < sizeof(struct mad_audio_cal)) { + pr_err("%s: incorrect hwdep cal size %zu\n", + __func__, cal_size); + ret = -ENOMEM; + goto err; } - mad_cal = (struct mad_audio_cal *)(fw->data); + mad_cal = (struct mad_audio_cal *)(data); if (!mad_cal) { - pr_err("%s: Invalid calibration data\n", __func__); - release_firmware(fw); - return -EINVAL; + dev_err(codec->dev, "%s: Invalid calibration data\n", + __func__); + ret = -EINVAL; + goto err; } snd_soc_write(codec, TAIKO_A_CDC_MAD_MAIN_CTL_2, @@ -2741,9 +2888,13 @@ static int taiko_codec_config_mad(struct snd_soc_codec *codec) snd_soc_write(codec, TAIKO_A_CDC_MAD_ULTR_CTL_6, mad_cal->ultrasound_info.rms_threshold_msb); - release_firmware(fw); pr_debug("%s: leave ret %d\n", __func__, ret); - + pm_qos_update_request(&taiko->pm_qos_req, + PM_QOS_DEFAULT_VALUE); + pm_qos_remove_request(&taiko->pm_qos_req); +err: + if (!hwdep_cal) + release_firmware(fw); return ret; } @@ -2826,6 +2977,12 @@ static int taiko_codec_enable_micbias(struct snd_soc_dapm_widget *w, snd_soc_update_bits(codec, micb_int_reg, 0x1C, 0x1C); else if (strnstr(w->name, internal3_text, 30)) snd_soc_update_bits(codec, micb_int_reg, 0x3, 0x3); + else + /* + * If not internal, make sure to write the + * register to default value + */ + snd_soc_write(codec, micb_int_reg, 0x24); if (taiko->mbhc_started && micb_ctl_reg == TAIKO_A_MICB_2_CTL) { if (++taiko->micb_2_users == 1) { @@ -3021,22 +3178,29 @@ static int taiko_codec_enable_dec(struct snd_soc_dapm_widget *w, 1 << w->shift); snd_soc_update_bits(codec, dec_reset_reg, 1 << w->shift, 0x0); - dec_hpf_cut_of_freq = snd_soc_read(codec, tx_mux_ctl_reg); + pr_debug("%s: decimator = %u, bypass = %d\n", __func__, + decimator, tx_hpf_work[decimator - 1].tx_hpf_bypass); + if (tx_hpf_work[decimator - 1].tx_hpf_bypass != true) { + dec_hpf_cut_of_freq = snd_soc_read(codec, + tx_mux_ctl_reg); - dec_hpf_cut_of_freq = (dec_hpf_cut_of_freq & 0x30) >> 4; + dec_hpf_cut_of_freq = (dec_hpf_cut_of_freq & 0x30) >> 4; - tx_hpf_work[decimator - 1].tx_hpf_cut_of_freq = - dec_hpf_cut_of_freq; + tx_hpf_work[decimator - 1].tx_hpf_cut_of_freq = + dec_hpf_cut_of_freq; - if ((dec_hpf_cut_of_freq != CF_MIN_3DB_150HZ)) { + if ((dec_hpf_cut_of_freq != CF_MIN_3DB_150HZ)) { - /* set cut of freq to CF_MIN_3DB_150HZ (0x1); */ - snd_soc_update_bits(codec, tx_mux_ctl_reg, 0x30, - CF_MIN_3DB_150HZ << 4); - } + /* set cut of freq to CF_MIN_3DB_150HZ (0x1); */ + snd_soc_update_bits(codec, tx_mux_ctl_reg, 0x30, + CF_MIN_3DB_150HZ << 4); + } - /* enable HPF */ - snd_soc_update_bits(codec, tx_mux_ctl_reg , 0x08, 0x00); + /* enable HPF */ + snd_soc_update_bits(codec, tx_mux_ctl_reg , 0x08, 0x00); + } else + /* bypass HPF */ + snd_soc_update_bits(codec, tx_mux_ctl_reg , 0x08, 0x08); break; @@ -3045,8 +3209,9 @@ static int taiko_codec_enable_dec(struct snd_soc_dapm_widget *w, /* Disable TX digital mute */ snd_soc_update_bits(codec, tx_vol_ctl_reg, 0x01, 0x00); - if (tx_hpf_work[decimator - 1].tx_hpf_cut_of_freq != - CF_MIN_3DB_150HZ) { + if ((tx_hpf_work[decimator - 1].tx_hpf_cut_of_freq != + CF_MIN_3DB_150HZ) && + (tx_hpf_work[decimator - 1].tx_hpf_bypass != true)) { schedule_delayed_work(&tx_hpf_work[decimator - 1].dwork, msecs_to_jiffies(300)); @@ -3273,6 +3438,14 @@ static int taiko_hphl_dac_event(struct snd_soc_dapm_widget *w, dev_err(codec->dev, "Failed to get mbhc impedance %d\n", ret); */ break; + case SND_SOC_DAPM_POST_PMU: + snd_soc_update_bits(codec, TAIKO_A_CDC_RX1_B3_CTL, 0xBC, 0x94); + snd_soc_update_bits(codec, TAIKO_A_CDC_RX1_B4_CTL, 0x30, 0x10); + break; + case SND_SOC_DAPM_PRE_PMD: + snd_soc_update_bits(codec, TAIKO_A_CDC_RX1_B3_CTL, 0xBC, 0x00); + snd_soc_update_bits(codec, TAIKO_A_CDC_RX1_B4_CTL, 0x30, 0x00); + break; case SND_SOC_DAPM_POST_PMD: snd_soc_update_bits(codec, TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL, 0x02, 0x00); @@ -3306,6 +3479,14 @@ static int taiko_hphr_dac_event(struct snd_soc_dapm_widget *w, WCD9XXX_CLSAB_REQ_ENABLE); } break; + case SND_SOC_DAPM_POST_PMU: + snd_soc_update_bits(codec, TAIKO_A_CDC_RX2_B3_CTL, 0xBC, 0x94); + snd_soc_update_bits(codec, TAIKO_A_CDC_RX2_B4_CTL, 0x30, 0x10); + break; + case SND_SOC_DAPM_PRE_PMD: + snd_soc_update_bits(codec, TAIKO_A_CDC_RX2_B3_CTL, 0xBC, 0x00); + snd_soc_update_bits(codec, TAIKO_A_CDC_RX2_B4_CTL, 0x30, 0x00); + break; case SND_SOC_DAPM_POST_PMD: snd_soc_update_bits(codec, TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL, 0x04, 0x00); @@ -3322,15 +3503,18 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, const char *filename; const struct firmware *fw; int i; - int ret; + int ret =0; int num_anc_slots; struct wcd9xxx_anc_header *anc_head; struct taiko_priv *taiko = snd_soc_codec_get_drvdata(codec); + struct firmware_cal *hwdep_cal = NULL; u32 anc_writes_size = 0; int anc_size_remaining; u32 *anc_ptr; u16 reg; u8 mask, val, old_val; + size_t cal_size; + const void *data; if (taiko->anc_func == 0) @@ -3339,38 +3523,53 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, switch (event) { case SND_SOC_DAPM_PRE_PMU: filename = "wcd9320/wcd9320_anc.bin"; + hwdep_cal = wcdcal_get_fw_cal(taiko->fw_data, WCD9XXX_ANC_CAL); + if (hwdep_cal) { + data = hwdep_cal->data; + cal_size = hwdep_cal->size; + dev_dbg(codec->dev, "%s: using hwdep calibration\n", + __func__); + } else { + ret = request_firmware(&fw, filename, codec->dev); + if (ret != 0) { + dev_err(codec->dev, "Failed to acquire ANC data: %d\n", + ret); + return -ENODEV; + } + if (!fw) { + dev_err(codec->dev, "failed to get anc fw"); + return -ENODEV; + } + data = fw->data; + cal_size = fw->size; + dev_dbg(codec->dev, "%s: using request_firmware calibration\n", + __func__); - ret = request_firmware(&fw, filename, codec->dev); - if (ret != 0) { - dev_err(codec->dev, "Failed to acquire ANC data: %d\n", - ret); - return -ENODEV; } - if (fw->size < sizeof(struct wcd9xxx_anc_header)) { + if (cal_size < sizeof(struct wcd9xxx_anc_header)) { dev_err(codec->dev, "Not enough data\n"); - release_firmware(fw); - return -ENOMEM; + goto err; } /* First number is the number of register writes */ - anc_head = (struct wcd9xxx_anc_header *)(fw->data); - anc_ptr = (u32 *)((u32)fw->data + + anc_head = (struct wcd9xxx_anc_header *)(data); + anc_ptr = (u32 *)(data + sizeof(struct wcd9xxx_anc_header)); - anc_size_remaining = fw->size - + anc_size_remaining = cal_size - sizeof(struct wcd9xxx_anc_header); num_anc_slots = anc_head->num_anc_slots; if (taiko->anc_slot >= num_anc_slots) { dev_err(codec->dev, "Invalid ANC slot selected\n"); - release_firmware(fw); - return -EINVAL; + ret = -EINVAL; + goto err; } for (i = 0; i < num_anc_slots; i++) { if (anc_size_remaining < TAIKO_PACKED_REG_SIZE) { dev_err(codec->dev, "Invalid register format\n"); - release_firmware(fw); - return -EINVAL; + ret = -EINVAL; + goto err; } anc_writes_size = (u32)(*anc_ptr); anc_size_remaining -= sizeof(u32); @@ -3379,8 +3578,8 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, if (anc_writes_size * TAIKO_PACKED_REG_SIZE > anc_size_remaining) { dev_err(codec->dev, "Invalid register format\n"); - release_firmware(fw); - return -ENOMEM; + ret = -EINVAL; + goto err; } if (taiko->anc_slot == i) @@ -3392,8 +3591,8 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, } if (i == num_anc_slots) { dev_err(codec->dev, "Selected ANC slot not present\n"); - release_firmware(fw); - return -ENOMEM; + ret = -EINVAL; + goto err; } for (i = 0; i < anc_writes_size; i++) { TAIKO_CODEC_UNPACK_ENTRY(anc_ptr[i], reg, @@ -3403,6 +3602,8 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, (val & mask)); } release_firmware(fw); + if (!hwdep_cal) + release_firmware(fw); break; case SND_SOC_DAPM_PRE_PMD: msleep(40); @@ -3415,6 +3616,11 @@ static int taiko_codec_enable_anc(struct snd_soc_dapm_widget *w, break; } return 0; +err: + if (!hwdep_cal) + release_firmware(fw); + return ret; + } static int taiko_hph_pa_event(struct snd_soc_dapm_widget *w, @@ -3591,7 +3797,9 @@ static const struct snd_soc_dapm_route audio_map[] = { {"AIF1 CAP", NULL, "AIF1_CAP Mixer"}, {"AIF2 CAP", NULL, "AIF2_CAP Mixer"}, {"AIF3 CAP", NULL, "AIF3_CAP Mixer"}, - {"AIF4 VI", NULL, "SPK_OUT"}, + /* VI Feedback */ + {"AIF4 VI", NULL, "VIONOFF"}, + {"VIONOFF", "Switch", "VIINPUT"}, /* MAD */ {"AIF4 MAD", NULL, "CDC_CONN"}, @@ -3752,6 +3960,12 @@ static const struct snd_soc_dapm_route audio_map[] = { {"ANC2 MUX", "ADC2", "ADC2"}, {"ANC2 MUX", "ADC3", "ADC3"}, {"ANC2 MUX", "ADC4", "ADC4"}, + {"ANC2 MUX", "DMIC1", "DMIC1"}, + {"ANC2 MUX", "DMIC2", "DMIC2"}, + {"ANC2 MUX", "DMIC3", "DMIC3"}, + {"ANC2 MUX", "DMIC4", "DMIC4"}, + {"ANC2 MUX", "DMIC5", "DMIC5"}, + {"ANC2 MUX", "DMIC6", "DMIC6"}, {"ANC HPHR", NULL, "CDC_CONN"}, @@ -4046,21 +4260,29 @@ static const struct snd_soc_dapm_route audio_map[] = { {"DEC7 MUX", "DMIC6", "DMIC6"}, {"DEC7 MUX", "ADC1", "ADC1"}, {"DEC7 MUX", "ADC6", "ADC6"}, + {"DEC7 MUX", "ANC1_FB", "ANC1 MUX"}, + {"DEC7 MUX", "ANC2_FB", "ANC2 MUX"}, {"DEC7 MUX", NULL, "CDC_CONN"}, {"DEC8 MUX", "DMIC2", "DMIC2"}, {"DEC8 MUX", "DMIC5", "DMIC5"}, {"DEC8 MUX", "ADC2", "ADC2"}, {"DEC8 MUX", "ADC5", "ADC5"}, + {"DEC8 MUX", "ANC1_FB", "ANC1 MUX"}, + {"DEC8 MUX", "ANC2_FB", "ANC2 MUX"}, {"DEC8 MUX", NULL, "CDC_CONN"}, {"DEC9 MUX", "DMIC4", "DMIC4"}, {"DEC9 MUX", "DMIC5", "DMIC5"}, {"DEC9 MUX", "ADC2", "ADC2"}, {"DEC9 MUX", "ADC3", "ADC3"}, + {"DEC9 MUX", "ANC1_FB", "ANC1 MUX"}, + {"DEC9 MUX", "ANC2_FB", "ANC2 MUX"}, {"DEC9 MUX", NULL, "CDC_CONN"}, {"DEC10 MUX", "DMIC3", "DMIC3"}, {"DEC10 MUX", "DMIC6", "DMIC6"}, {"DEC10 MUX", "ADC1", "ADC1"}, {"DEC10 MUX", "ADC4", "ADC4"}, + {"DEC10 MUX", "ANC1_FB", "ANC1 MUX"}, + {"DEC10 MUX", "ANC2_FB", "ANC2 MUX"}, {"DEC10 MUX", NULL, "CDC_CONN"}, /* ADC Connections */ @@ -5437,6 +5659,15 @@ static int taiko_codec_enable_slimvi_feedback(struct snd_soc_dapm_widget *w, if (ret) pr_err("%s error in close_slim_sch_tx %d\n", __func__, ret); + ret = taiko_codec_enable_slim_chmask(dai, false); + if (ret < 0) { + ret = wcd9xxx_disconnect_port(core, + &dai->wcd9xxx_ch_list, + dai->grph); + pr_debug("%s: Disconnect RX port, ret = %d\n", + __func__, ret); + } + snd_soc_update_bits(codec, TAIKO_A_CDC_CLK_TX_CLK_EN_B2_CTL, 0xC, 0x0); /*Disable V&I sensing*/ @@ -5673,7 +5904,8 @@ static const struct snd_soc_dapm_widget taiko_dapm_widgets[] = { SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD), SND_SOC_DAPM_MIXER_E("HPHL DAC", TAIKO_A_RX_HPH_L_DAC_CTL, 7, 0, hphl_switch, ARRAY_SIZE(hphl_switch), taiko_hphl_dac_event, - SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), + SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | + SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMD), SND_SOC_DAPM_PGA_E("HPHR", TAIKO_A_RX_HPH_CNP_EN, 4, 0, NULL, 0, taiko_hph_pa_event, SND_SOC_DAPM_PRE_PMU | @@ -5681,7 +5913,8 @@ static const struct snd_soc_dapm_widget taiko_dapm_widgets[] = { SND_SOC_DAPM_DAC_E("HPHR DAC", NULL, TAIKO_A_RX_HPH_R_DAC_CTL, 7, 0, taiko_hphr_dac_event, - SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD), + SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU | + SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMD), /* Speaker */ SND_SOC_DAPM_OUTPUT("LINEOUT1"), @@ -6101,6 +6334,10 @@ static const struct snd_soc_dapm_widget taiko_dapm_widgets[] = { SND_SOC_DAPM_MIXER("LINEOUT4_PA_MIXER", SND_SOC_NOPM, 0, 0, lineout4_pa_mix, ARRAY_SIZE(lineout4_pa_mix)), + SND_SOC_DAPM_SWITCH("VIONOFF", SND_SOC_NOPM, 0, 0, + &aif4_vi_switch), + SND_SOC_DAPM_INPUT("VIINPUT"), + }; static irqreturn_t taiko_slimbus_irq(int irq, void *data) @@ -6125,6 +6362,22 @@ static irqreturn_t taiko_slimbus_irq(int irq, void *data) port_id = (tx ? j - 16 : j); val = wcd9xxx_interface_reg_read(codec->control_data, TAIKO_SLIM_PGD_PORT_INT_RX_SOURCE0 + j); + if (val) { + if (!tx) + reg = TAIKO_SLIM_PGD_PORT_INT_EN0 + + (port_id / 8); + else + reg = TAIKO_SLIM_PGD_PORT_INT_TX_EN0 + + (port_id / 8); + int_val = wcd9xxx_interface_reg_read( + codec->control_data, reg); + /* + * Ignore interrupts for ports for which the + * interrupts are not specifically enabled. + */ + if (!(int_val & (1 << (port_id % 8)))) + continue; + } if (val & TAIKO_SLIM_IRQ_OVERFLOW) pr_err_ratelimited( "%s: overflow error on %s port %d, value %x\n", @@ -6417,7 +6670,8 @@ static int taiko_handle_pdata(struct taiko_priv *taiko) 0xE, dmic_b2_ctl_value); snd_soc_update_bits(codec, TAIKO_A_CDC_ANC1_B2_CTL, 0x1, anc_ctl_value); - + snd_soc_update_bits(codec, TAIKO_A_CDC_ANC2_B2_CTL, + 0x01, anc_ctl_value); done: return rc; } @@ -6739,6 +6993,27 @@ static void taiko_cleanup_irqs(struct taiko_priv *taiko) wcd9xxx_free_irq(core_res, WCD9XXX_IRQ_SLIMBUS, taiko); } +static +struct firmware_cal *taiko_get_hwdep_fw_cal(struct snd_soc_codec *codec, + enum wcd_cal_type type) +{ + struct taiko_priv *taiko; + struct firmware_cal *hwdep_cal; + + if (!codec) { + pr_err("%s: NULL codec pointer\n", __func__); + return NULL; + } + taiko = snd_soc_codec_get_drvdata(codec); + hwdep_cal = wcdcal_get_fw_cal(taiko->fw_data, type); + if (!hwdep_cal) { + dev_err(codec->dev, "%s: cal not sent by %d\n", + __func__, type); + return NULL; + } + + return hwdep_cal; +} int taiko_hs_detect(struct snd_soc_codec *codec, struct wcd9xxx_mbhc_config *mbhc_cfg) @@ -6959,21 +7234,26 @@ static int taiko_setup_zdet(struct wcd9xxx_mbhc *mbhc, static void taiko_compute_impedance(s16 *l, s16 *r, uint32_t *zl, uint32_t *zr) { - int64_t rl, rr = 0; /* milliohm */ + int64_t rl = 0, rr = 0; /* milliohm */ + int zld, zrd; const int alphal = 364; /* 0.005555 * 65536 = 364.05 */ const int alphar = 364; /* 0.005555 * 65536 = 364.05 */ const int beta = 3855; /* 0.011765 * 5 * 65536 = 3855.15 */ const int rref = 11333; /* not scaled up */ const int shift = 16; - rl = (int)(l[0] - l[1]) * 1000 / (l[0] - l[2]); + zld = l[0] - l[2]; + if (zld) + rl = (int)(l[0] - l[1]) * 1000 / zld; rl = rl * rref * alphal; rl = rl >> shift; rl = rl * beta; rl = rl >> shift; *zl = rl; - rr = (int)(r[0] - r[1]) * 1000 / (r[0] - r[2]); + zrd = r[0] - r[2]; + if (zrd) + rr = (int)(r[0] - r[1]) * 1000 / zrd; rr = rr * rref * alphar; rr = rr >> shift; rr = rr * beta; @@ -6990,6 +7270,7 @@ static const struct wcd9xxx_mbhc_cb mbhc_cb = { .get_cdc_type = taiko_get_cdc_type, .setup_zdet = taiko_setup_zdet, .compute_impedance = taiko_compute_impedance, + .get_hwdep_fw_cal = taiko_get_hwdep_fw_cal, }; static const struct wcd9xxx_mbhc_intr cdc_intr_ids = { @@ -7213,6 +7494,7 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) for (i = 0 ; i < NUM_DECIMATORS; i++) { tx_hpf_work[i].taiko = taiko; tx_hpf_work[i].decimator = i + 1; + tx_hpf_work[i].tx_hpf_bypass = false; INIT_DELAYED_WORK(&tx_hpf_work[i].dwork, tx_hpf_corner_freq_callback); } @@ -7228,7 +7510,7 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) WCD9XXX_CDC_TYPE_TAIKO); if (ret) { pr_err("%s: wcd9xxx init failed %d\n", __func__, ret); - goto err_init; + goto err_nomem_slimch; } taiko->clsh_d.buck_mv = taiko_codec_get_buck_mv(codec); @@ -7241,6 +7523,20 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) else rco_clk_rate = TAIKO_MCLK_CLK_9P6MHZ; + taiko->fw_data = kzalloc(sizeof(*(taiko->fw_data)), GFP_KERNEL); + if (!taiko->fw_data) { + dev_err(codec->dev, "Failed to allocate fw_data\n"); + goto err_nomem_slimch; + } + set_bit(WCD9XXX_ANC_CAL, taiko->fw_data->cal_bit); + set_bit(WCD9XXX_MAD_CAL, taiko->fw_data->cal_bit); + set_bit(WCD9XXX_MBHC_CAL, taiko->fw_data->cal_bit); + ret = wcd_cal_create_hwdep(taiko->fw_data, + WCD9XXX_CODEC_HWDEP_NODE, codec); + if (ret < 0) { + dev_err(codec->dev, "%s hwdep failed %d\n", __func__, ret); + goto err_hwdep; + } #if !defined(CONFIG_SAMSUNG_JACK) /* init and start mbhc */ ret = wcd9xxx_mbhc_init(&taiko->mbhc, &taiko->resmgr, codec, @@ -7249,7 +7545,7 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) rco_clk_rate, true); if (ret) { pr_err("%s: mbhc init failed %d\n", __func__, ret); - goto err_init; + goto err_hwdep; } #endif @@ -7274,7 +7570,7 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) ret = taiko_handle_pdata(taiko); if (IS_ERR_VALUE(ret)) { pr_err("%s: bad pdata\n", __func__); - goto err_pdata; + goto err_hwdep; } taiko->spkdrv_reg = taiko_codec_find_regulator(codec, @@ -7298,7 +7594,7 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) if (!ptr) { pr_err("%s: no mem for slim chan ctl data\n", __func__); ret = -ENOMEM; - goto err_nomem_slimch; + goto err_hwdep; } if (taiko->intf_type == WCD9XXX_INTERFACE_TYPE_I2C) { @@ -7376,11 +7672,11 @@ static int taiko_codec_probe(struct snd_soc_codec *codec) err_irq: taiko_cleanup_irqs(taiko); -err_pdata: - kfree(ptr); + kfree(ptr); +err_hwdep: + kfree(taiko->fw_data); err_nomem_slimch: kfree(taiko); -err_init: return ret; } static int taiko_codec_remove(struct snd_soc_codec *codec) @@ -7406,6 +7702,7 @@ static int taiko_codec_remove(struct snd_soc_codec *codec) taiko->spkdrv_reg = NULL; + kfree(taiko->fw_data); kfree(taiko); return 0; } diff --git a/sound/soc/codecs/wcd9xxx-mbhc.c b/sound/soc/codecs/wcd9xxx-mbhc.c index 70907d011d2d..492523a38329 100644 --- a/sound/soc/codecs/wcd9xxx-mbhc.c +++ b/sound/soc/codecs/wcd9xxx-mbhc.c @@ -36,6 +36,7 @@ #include #include #include +#include "wcdcal-hwdep.h" #include "wcd9320.h" #include "wcd9306.h" #include "wcd9xxx-mbhc.h" @@ -75,7 +76,7 @@ #define OCP_ATTEMPT 1 #define FW_READ_ATTEMPTS 15 -#define FW_READ_TIMEOUT 2000000 +#define FW_READ_TIMEOUT 4000000 #define BUTTON_POLLING_SUPPORTED true @@ -2810,35 +2811,39 @@ static void wcd9xxx_mbhc_insert_work(struct work_struct *work) wcd9xxx_unlock_sleep(core_res); } -static bool wcd9xxx_mbhc_fw_validate(const struct firmware *fw) +static bool wcd9xxx_mbhc_fw_validate(const void *data, size_t size) { u32 cfg_offset; struct wcd9xxx_mbhc_imped_detect_cfg *imped_cfg; struct wcd9xxx_mbhc_btn_detect_cfg *btn_cfg; + struct firmware_cal fw; - if (fw->size < WCD9XXX_MBHC_CAL_MIN_SIZE) + fw.data = (void *)data; + fw.size = size; + + if (fw.size < WCD9XXX_MBHC_CAL_MIN_SIZE) return false; /* * Previous check guarantees that there is enough fw data up * to num_btn */ - btn_cfg = WCD9XXX_MBHC_CAL_BTN_DET_PTR(fw->data); - cfg_offset = (u32) ((void *) btn_cfg - (void *) fw->data); - if (fw->size < (cfg_offset + WCD9XXX_MBHC_CAL_BTN_SZ(btn_cfg))) + btn_cfg = WCD9XXX_MBHC_CAL_BTN_DET_PTR(fw.data); + cfg_offset = (u32) ((void *) btn_cfg - (void *) fw.data); + if (fw.size < (cfg_offset + WCD9XXX_MBHC_CAL_BTN_SZ(btn_cfg))) return false; /* * Previous check guarantees that there is enough fw data up * to start of impedance detection configuration */ - imped_cfg = WCD9XXX_MBHC_CAL_IMPED_DET_PTR(fw->data); - cfg_offset = (u32) ((void *) imped_cfg - (void *) fw->data); + imped_cfg = WCD9XXX_MBHC_CAL_IMPED_DET_PTR(fw.data); + cfg_offset = (u32) ((void *) imped_cfg - (void *) fw.data); - if (fw->size < (cfg_offset + WCD9XXX_MBHC_CAL_IMPED_MIN_SZ)) + if (fw.size < (cfg_offset + WCD9XXX_MBHC_CAL_IMPED_MIN_SZ)) return false; - if (fw->size < (cfg_offset + WCD9XXX_MBHC_CAL_IMPED_SZ(imped_cfg))) + if (fw.size < (cfg_offset + WCD9XXX_MBHC_CAL_IMPED_SZ(imped_cfg))) return false; return true; @@ -4164,7 +4169,9 @@ static void wcd9xxx_mbhc_fw_read(struct work_struct *work) struct wcd9xxx_mbhc *mbhc; struct snd_soc_codec *codec; const struct firmware *fw; + struct firmware_cal *fw_data = NULL; int ret = -1, retry = 0; + bool use_default_cal = false; dwork = to_delayed_work(work); mbhc = container_of(dwork, struct wcd9xxx_mbhc, mbhc_firmware_dwork); @@ -4172,29 +4179,62 @@ static void wcd9xxx_mbhc_fw_read(struct work_struct *work) while (retry < FW_READ_ATTEMPTS) { retry++; - pr_info("%s:Attempt %d to request MBHC firmware\n", - __func__, retry); - ret = request_firmware(&fw, "wcd9320/wcd9320_mbhc.bin", - codec->dev); - - if (ret != 0) { + pr_debug("%s:Attempt %d to request MBHC firmware\n", + __func__, retry); + if (mbhc->mbhc_cb->get_hwdep_fw_cal) + fw_data = mbhc->mbhc_cb->get_hwdep_fw_cal(codec, + WCD9XXX_MBHC_CAL); + if (!fw_data) + ret = request_firmware(&fw, "wcd9320/wcd9320_mbhc.bin", + codec->dev); + /* + * if request_firmware and hwdep cal both fail then + * retry for few times before bailing out + */ + if ((ret != 0) && !fw_data) { usleep_range(FW_READ_TIMEOUT, FW_READ_TIMEOUT); } else { pr_info("%s: MBHC Firmware read succesful\n", __func__); break; } } - - if (ret != 0) { + if (!fw_data) + pr_debug("%s: using request_firmware\n", __func__); + else + pr_debug("%s: using hwdep cal\n", __func__); + if (ret != 0 && !fw_data) { pr_err("%s: Cannot load MBHC firmware use default cal\n", - __func__); - } else if (wcd9xxx_mbhc_fw_validate(fw) == false) { - pr_err("%s: Invalid MBHC cal data size use default cal\n", - __func__); - release_firmware(fw); - } else { - mbhc->mbhc_cfg->calibration = (void *)fw->data; - mbhc->mbhc_fw = fw; + __func__); + use_default_cal = true; + } + if (!use_default_cal) { + const void *data; + size_t size; + + if (fw_data) { + data = fw_data->data; + size = fw_data->size; + } else { + data = fw->data; + size = fw->size; + } + if (wcd9xxx_mbhc_fw_validate(data, size) == false) { + pr_err("%s: Invalid MBHC cal data size use default cal\n", + __func__); + if (!fw_data) + release_firmware(fw); + } else { + if (fw_data) { + mbhc->mbhc_cfg->calibration = + (void *)fw_data->data; + mbhc->mbhc_cal = fw_data; + } else { + mbhc->mbhc_cfg->calibration = + (void *)fw->data; + mbhc->mbhc_fw = fw; + } + } + } (void) wcd9xxx_init_and_calibrate(mbhc); @@ -4384,15 +4424,16 @@ int wcd9xxx_mbhc_start(struct wcd9xxx_mbhc *mbhc, mbhc->mbhc_cb->enable_clock_gate(mbhc->codec, true); if (!mbhc->mbhc_cfg->read_fw_bin || - (mbhc->mbhc_cfg->read_fw_bin && mbhc->mbhc_fw)) { + (mbhc->mbhc_cfg->read_fw_bin && mbhc->mbhc_fw) || + (mbhc->mbhc_cfg->read_fw_bin && mbhc->mbhc_cal)) { rc = wcd9xxx_init_and_calibrate(mbhc); } else { - if (!mbhc->mbhc_fw) + if (!mbhc->mbhc_fw || !mbhc->mbhc_cal) schedule_delayed_work(&mbhc->mbhc_firmware_dwork, usecs_to_jiffies(FW_READ_TIMEOUT)); else - pr_debug("%s: Skipping to read mbhc fw, 0x%p\n", - __func__, mbhc->mbhc_fw); + pr_debug("%s: Skipping to read mbhc fw, 0x%p 0x%p\n", + __func__, mbhc->mbhc_fw, mbhc->mbhc_cal); } pr_debug("%s: leave %d\n", __func__, rc); @@ -4402,10 +4443,12 @@ EXPORT_SYMBOL(wcd9xxx_mbhc_start); void wcd9xxx_mbhc_stop(struct wcd9xxx_mbhc *mbhc) { - if (mbhc->mbhc_fw) { + if (mbhc->mbhc_fw || mbhc->mbhc_cal) { cancel_delayed_work_sync(&mbhc->mbhc_firmware_dwork); - release_firmware(mbhc->mbhc_fw); + if (!mbhc->mbhc_cal) + release_firmware(mbhc->mbhc_fw); mbhc->mbhc_fw = NULL; + mbhc->mbhc_cal = NULL; } } EXPORT_SYMBOL(wcd9xxx_mbhc_stop); diff --git a/sound/soc/codecs/wcd9xxx-mbhc.h b/sound/soc/codecs/wcd9xxx-mbhc.h index cf2579808fc9..d1bc905309af 100644 --- a/sound/soc/codecs/wcd9xxx-mbhc.h +++ b/sound/soc/codecs/wcd9xxx-mbhc.h @@ -13,6 +13,7 @@ #define __WCD9XXX_MBHC_H__ #include "wcd9xxx-resmgr.h" +#include "wcdcal-hwdep.h" #define WCD9XXX_CFILT_FAST_MODE 0x00 #define WCD9XXX_CFILT_SLOW_MODE 0x40 @@ -285,6 +286,9 @@ struct wcd9xxx_mbhc_cb { int (*enable_mb_source) (struct snd_soc_codec *, bool, bool); void (*setup_int_rbias) (struct snd_soc_codec *, bool); void (*pull_mb_to_vddio) (struct snd_soc_codec *, bool); + struct firmware_cal * (*get_hwdep_fw_cal) (struct snd_soc_codec *, + enum wcd_cal_type); + }; struct wcd9xxx_mbhc { @@ -312,6 +316,7 @@ struct wcd9xxx_mbhc { const struct firmware *mbhc_fw; struct delayed_work mbhc_insert_dwork; + struct firmware_cal *mbhc_cal; u8 current_plug; struct work_struct correct_plug_swch; diff --git a/sound/soc/codecs/wcdcal-hwdep.c b/sound/soc/codecs/wcdcal-hwdep.c new file mode 100644 index 000000000000..1132a3c6eb2a --- /dev/null +++ b/sound/soc/codecs/wcdcal-hwdep.c @@ -0,0 +1,221 @@ +/* + * Copyright (c) 2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include "wcdcal-hwdep.h" + +const int cal_size_info[WCD9XXX_MAX_CAL] = { + [WCD9XXX_ANC_CAL] = 4096, + [WCD9XXX_MBHC_CAL] = 4096, + [WCD9XXX_MAD_CAL] = 4096, +}; + +const char *cal_name_info[WCD9XXX_MAX_CAL] = { + [WCD9XXX_ANC_CAL] = "anc", + [WCD9XXX_MBHC_CAL] = "mbhc", + [WCD9XXX_MAD_CAL] = "mad", +}; + +struct firmware_cal *wcdcal_get_fw_cal(struct fw_info *fw_data, + enum wcd_cal_type type) +{ + if (!fw_data) { + pr_err("%s: fw_data is NULL\n", __func__); + return NULL; + } + if (type >= WCD9XXX_MAX_CAL || + type < WCD9XXX_MIN_CAL) { + pr_err("%s: wrong cal type sent %d\n", __func__, type); + return NULL; + } + mutex_lock(&fw_data->lock); + if (!test_bit(WCDCAL_RECIEVED, + &fw_data->wcdcal_state[type])) { + pr_err("%s: cal not sent by userspace %d\n", + __func__, type); + mutex_unlock(&fw_data->lock); + return NULL; + } + mutex_unlock(&fw_data->lock); + return fw_data->fw[type]; +} +EXPORT_SYMBOL(wcdcal_get_fw_cal); + +static int wcdcal_hwdep_ioctl_shared(struct snd_hwdep *hw, + struct wcdcal_ioctl_buffer fw_user) +{ + struct fw_info *fw_data = hw->private_data; + struct firmware_cal **fw = fw_data->fw; + void *data; + + if (!test_bit(fw_user.cal_type, fw_data->cal_bit)) { + pr_err("%s: codec didn't set this %d!!\n", + __func__, fw_user.cal_type); + return -EFAULT; + } + if (fw_user.cal_type >= WCD9XXX_MAX_CAL || + fw_user.cal_type < WCD9XXX_MIN_CAL) { + pr_err("%s: wrong cal type sent %d\n", + __func__, fw_user.cal_type); + return -EFAULT; + } + if (fw_user.size > cal_size_info[fw_user.cal_type] || + fw_user.size <= 0) { + pr_err("%s: incorrect firmware size %d for %s\n", + __func__, fw_user.size, + cal_name_info[fw_user.cal_type]); + return -EFAULT; + } + data = fw[fw_user.cal_type]->data; + memcpy(data, fw_user.buffer, fw_user.size); + fw[fw_user.cal_type]->size = fw_user.size; + mutex_lock(&fw_data->lock); + set_bit(WCDCAL_RECIEVED, &fw_data->wcdcal_state[fw_user.cal_type]); + mutex_unlock(&fw_data->lock); + return 0; +} + +#ifdef CONFIG_COMPAT +struct wcdcal_ioctl_buffer32 { + u32 size; + compat_uptr_t buffer; + enum wcd_cal_type cal_type; +}; + +enum { + SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE32 = + _IOW('U', 0x1, struct wcdcal_ioctl_buffer32), +}; + +static int wcdcal_hwdep_ioctl_compat(struct snd_hwdep *hw, struct file *file, + unsigned int cmd, unsigned long arg) +{ + struct wcdcal_ioctl_buffer __user *argp = (void __user *)arg; + struct wcdcal_ioctl_buffer32 fw_user32; + struct wcdcal_ioctl_buffer fw_user_compat; + + if (cmd != SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE32) { + pr_err("%s: wrong ioctl command sent %u!\n", __func__, cmd); + return -ENOIOCTLCMD; + } + if (copy_from_user(&fw_user32, argp, sizeof(fw_user32))) { + pr_err("%s: failed to copy\n", __func__); + return -EFAULT; + } + fw_user_compat.size = fw_user32.size; + fw_user_compat.buffer = compat_ptr(fw_user32.buffer); + fw_user_compat.cal_type = fw_user32.cal_type; + return wcdcal_hwdep_ioctl_shared(hw, fw_user_compat); +} +#else +#define wcdcal_hwdep_ioctl_compat NULL +#endif + +static int wcdcal_hwdep_ioctl(struct snd_hwdep *hw, struct file *file, + unsigned int cmd, unsigned long arg) +{ + struct wcdcal_ioctl_buffer __user *argp = (void __user *)arg; + struct wcdcal_ioctl_buffer fw_user; + + if (cmd != SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE) { + pr_err("%s: wrong ioctl command sent %d!\n", __func__, cmd); + return -ENOIOCTLCMD; + } + if (copy_from_user(&fw_user, argp, sizeof(fw_user))) { + pr_err("%s: failed to copy\n", __func__); + return -EFAULT; + } + return wcdcal_hwdep_ioctl_shared(hw, fw_user); +} + +static int wcdcal_hwdep_release(struct snd_hwdep *hw, struct file *file) +{ + struct fw_info *fw_data = hw->private_data; + mutex_lock(&fw_data->lock); + /* clear all the calibrations */ + memset(fw_data->wcdcal_state, 0, + sizeof(fw_data->wcdcal_state)); + mutex_unlock(&fw_data->lock); + return 0; +} + +int wcd_cal_create_hwdep(void *data, int node, struct snd_soc_codec *codec) +{ + char hwname[40]; + struct snd_hwdep *hwdep; + struct firmware_cal **fw; + struct fw_info *fw_data = data; + int err, cal_bit; + + if (!fw_data || !codec) { + pr_err("%s: wrong arguments passed\n", __func__); + return -EINVAL; + } + + fw = fw_data->fw; + snprintf(hwname, strlen("Codec %s"), "Codec %s", codec->name); + err = snd_hwdep_new(codec->card->snd_card, hwname, node, &hwdep); + if (err < 0) { + dev_err(codec->dev, "%s: new hwdep failed %d\n", + __func__, err); + return err; + } + snprintf(hwdep->name, strlen("Codec %s"), "Codec %s", codec->name); + hwdep->iface = SNDRV_HWDEP_IFACE_AUDIO_CODEC; + hwdep->private_data = fw_data; + hwdep->ops.ioctl_compat = wcdcal_hwdep_ioctl_compat; + hwdep->ops.ioctl = wcdcal_hwdep_ioctl; + hwdep->ops.release = wcdcal_hwdep_release; + mutex_init(&fw_data->lock); + + for_each_set_bit(cal_bit, fw_data->cal_bit, WCD9XXX_MAX_CAL) { + set_bit(WCDCAL_UNINITIALISED, + &fw_data->wcdcal_state[cal_bit]); + fw[cal_bit] = kzalloc(sizeof *(fw[cal_bit]), GFP_KERNEL); + if (!fw[cal_bit]) { + dev_err(codec->dev, "%s: no memory for %s cal\n", + __func__, cal_name_info[cal_bit]); + goto end; + } + } + for_each_set_bit(cal_bit, fw_data->cal_bit, WCD9XXX_MAX_CAL) { + fw[cal_bit]->data = kzalloc(cal_size_info[cal_bit], + GFP_KERNEL); + if (!fw[cal_bit]->data) { + dev_err(codec->dev, "%s: no memory for %s cal data\n", + __func__, cal_name_info[cal_bit]); + goto exit; + } + set_bit(WCDCAL_INITIALISED, + &fw_data->wcdcal_state[cal_bit]); + } + return 0; +exit: + for_each_set_bit(cal_bit, fw_data->cal_bit, WCD9XXX_MAX_CAL) { + kfree(fw[cal_bit]->data); + fw[cal_bit]->data = NULL; + } +end: + for_each_set_bit(cal_bit, fw_data->cal_bit, WCD9XXX_MAX_CAL) { + kfree(fw[cal_bit]); + fw[cal_bit] = NULL; + } + return -ENOMEM; +} +EXPORT_SYMBOL(wcd_cal_create_hwdep); diff --git a/sound/soc/codecs/wcdcal-hwdep.h b/sound/soc/codecs/wcdcal-hwdep.h new file mode 100644 index 000000000000..632e2f11f323 --- /dev/null +++ b/sound/soc/codecs/wcdcal-hwdep.h @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2014, 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 + * only version 2 as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ +#ifndef __WCD9XXX_HWDEP_H__ +#define __WCD9XXX_HWDEP_H__ +#include + +enum wcd_cal_states { + WCDCAL_UNINITIALISED, + WCDCAL_INITIALISED, + WCDCAL_RECIEVED +}; + +struct fw_info { + struct firmware_cal *fw[WCD9XXX_MAX_CAL]; + DECLARE_BITMAP(cal_bit, WCD9XXX_MAX_CAL); + /* for calibration tracking */ + unsigned long wcdcal_state[WCD9XXX_MAX_CAL]; + struct mutex lock; +}; + +struct firmware_cal { + u8 *data; + size_t size; +}; + +struct snd_soc_codec; +int wcd_cal_create_hwdep(void *fw, int node, struct snd_soc_codec *codec); +struct firmware_cal *wcdcal_get_fw_cal(struct fw_info *fw_data, + enum wcd_cal_type type); +#endif /* __WCD9XXX_HWDEP_H__ */ diff --git a/sound/soc/msm/Kconfig b/sound/soc/msm/Kconfig index 3311603c2f58..3dd1126c32ce 100644 --- a/sound/soc/msm/Kconfig +++ b/sound/soc/msm/Kconfig @@ -183,6 +183,7 @@ config SND_SOC_MSM8974 select SND_DYNAMIC_MINORS select AUDIO_OCMEM select DOLBY_DAP + select SND_HWDEP help To add support for SoC audio on MSM8974. This will enable sound soc drivers which diff --git a/sound/soc/msm/apq8074.c b/sound/soc/msm/apq8074.c index 4e7910926674..9bd9fb166034 100644 --- a/sound/soc/msm/apq8074.c +++ b/sound/soc/msm/apq8074.c @@ -26,13 +26,13 @@ #include #include #include +#include #include #include #include #include #include "qdsp6v2/msm-pcm-routing-v2.h" -#include "qdsp6v2/q6core.h" #include "../codecs/wcd9xxx-common.h" #include "../codecs/wcd9320.h" diff --git a/sound/soc/msm/msm-dai-fe.c b/sound/soc/msm/msm-dai-fe.c index fd251ff8666c..aa0a05e3f155 100644 --- a/sound/soc/msm/msm-dai-fe.c +++ b/sound/soc/msm/msm-dai-fe.c @@ -688,20 +688,6 @@ static struct snd_soc_dai_driver msm_fe_dais[] = { .ops = &msm_fe_dai_ops, .name = "DTMF_RX_HOSTLESS", }, - { - .capture = { - .stream_name = "Listen Audio Service Capture", - .aif_name = "LSM_UL_HL", - .rates = SNDRV_PCM_RATE_16000, - .formats = SNDRV_PCM_FMTBIT_S16_LE, - .channels_min = 1, - .channels_max = 1, - .rate_min = 16000, - .rate_max = 16000, - }, - .ops = &msm_fe_dai_ops, - .name = "LSM", - }, { .playback = { .stream_name = "VoLTE Stub Playback", @@ -830,6 +816,142 @@ static struct snd_soc_dai_driver msm_fe_dais[] = { .ops = &msm_fe_dai_ops, .name = "QCHAT", }, + { + .capture = { + .stream_name = "Listen 1 Audio Service Capture", + .aif_name = "LSM1_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM1", + }, + { + .capture = { + .stream_name = "Listen 2 Audio Service Capture", + .aif_name = "LSM2_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM2", + }, + { + .capture = { + .stream_name = "Listen 3 Audio Service Capture", + .aif_name = "LSM3_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM3", + }, + { + .capture = { + .stream_name = "Listen 4 Audio Service Capture", + .aif_name = "LSM4_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM4", + }, + { + .capture = { + .stream_name = "Listen 5 Audio Service Capture", + .aif_name = "LSM5_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM5", + }, + { + .capture = { + .stream_name = "Listen 6 Audio Service Capture", + .aif_name = "LSM6_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM6", + }, + { + .capture = { + .stream_name = "Listen 7 Audio Service Capture", + .aif_name = "LSM7_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM7", + }, + { + .capture = { + .stream_name = "Listen 8 Audio Service Capture", + .aif_name = "LSM8_UL_HL", + .rates = SNDRV_PCM_RATE_16000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 1, + .rate_min = 16000, + .rate_max = 16000, + }, + .ops = &msm_fe_dai_ops, + .name = "LSM8", + }, + { + .playback = { + .stream_name = "VoWLAN Playback", + .aif_name = "VoWLAN_DL", + .rates = SNDRV_PCM_RATE_8000_48000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 2, + .rate_min = 8000, + .rate_max = 48000, + }, + .capture = { + .stream_name = "VoWLAN Capture", + .aif_name = "VoWLAN_UL", + .rates = SNDRV_PCM_RATE_8000_48000, + .formats = SNDRV_PCM_FMTBIT_S16_LE, + .channels_min = 1, + .channels_max = 2, + .rate_min = 8000, + .rate_max = 48000, + }, + .ops = &msm_fe_dai_ops, + .name = "VoWLAN", + }, }; static __devinit int msm_fe_dai_dev_probe(struct platform_device *pdev) diff --git a/sound/soc/msm/msm-pcm-loopback.c b/sound/soc/msm/msm-pcm-loopback.c index ecf839466e48..f2024d81592d 100644 --- a/sound/soc/msm/msm-pcm-loopback.c +++ b/sound/soc/msm/msm-pcm-loopback.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2013-2014, 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 @@ -200,19 +200,23 @@ static int msm_pcm_open(struct snd_pcm_substream *substream) static void stop_pcm(struct msm_pcm_loopback *pcm) { - struct snd_soc_pcm_runtime *soc_pcm_rx = - pcm->playback_substream->private_data; - struct snd_soc_pcm_runtime *soc_pcm_tx = - pcm->capture_substream->private_data; + struct snd_soc_pcm_runtime *soc_pcm_rx; + struct snd_soc_pcm_runtime *soc_pcm_tx; if (pcm->audio_client == NULL) return; q6asm_cmd(pcm->audio_client, CMD_CLOSE); - msm_pcm_routing_dereg_phy_stream(soc_pcm_rx->dai_link->be_id, - SNDRV_PCM_STREAM_PLAYBACK); - msm_pcm_routing_dereg_phy_stream(soc_pcm_tx->dai_link->be_id, - SNDRV_PCM_STREAM_CAPTURE); + if (pcm->playback_substream != NULL) { + soc_pcm_rx = pcm->playback_substream->private_data; + msm_pcm_routing_dereg_phy_stream(soc_pcm_rx->dai_link->be_id, + SNDRV_PCM_STREAM_PLAYBACK); + } + if (pcm->capture_substream != NULL) { + soc_pcm_tx = pcm->capture_substream->private_data; + msm_pcm_routing_dereg_phy_stream(soc_pcm_tx->dai_link->be_id, + SNDRV_PCM_STREAM_CAPTURE); + } q6asm_audio_client_free(pcm->audio_client); pcm->audio_client = NULL; } diff --git a/sound/soc/msm/msm8226.c b/sound/soc/msm/msm8226.c index 10ab8003ab60..3d8f27eac728 100644 --- a/sound/soc/msm/msm8226.c +++ b/sound/soc/msm/msm8226.c @@ -27,8 +27,9 @@ #include #include #include +#include + #include -#include "qdsp6v2/q6core.h" #include "../codecs/wcd9xxx-common.h" #include "../codecs/wcd9306.h" @@ -61,7 +62,7 @@ #define LO_1_SPK_AMP 0x1 #define LO_2_SPK_AMP 0x2 -#define ADSP_STATE_READY_TIMEOUT_MS 3000 +#define ADSP_STATE_READY_TIMEOUT_MS 50 static void *adsp_state_notifier; @@ -1655,9 +1656,9 @@ static struct snd_soc_dai_link msm8226_common_dai[] = { }, /* LSM FE */ { - .name = "Listen Audio Service", - .stream_name = "Listen Audio Service", - .cpu_dai_name = "LSM", + .name = "Listen 1 Audio Service", + .stream_name = "Listen 1 Audio Service", + .cpu_dai_name = "LSM1", .platform_name = "msm-lsm-client", .dynamic = 1, .trigger = {SND_SOC_DPCM_TRIGGER_POST, @@ -1684,6 +1685,142 @@ static struct snd_soc_dai_link msm8226_common_dai[] = { /* this dainlink has playback support */ .be_id = MSM_FRONTEND_DAI_MULTIMEDIA8, }, + { + .name = "Listen 2 Audio Service", + .stream_name = "Listen 2 Audio Service", + .cpu_dai_name = "LSM2", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM2, + }, + { + .name = "Listen 3 Audio Service", + .stream_name = "Listen 3 Audio Service", + .cpu_dai_name = "LSM3", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM3, + }, + { + .name = "Listen 4 Audio Service", + .stream_name = "Listen 4 Audio Service", + .cpu_dai_name = "LSM4", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM4, + }, + { + .name = "Listen 5 Audio Service", + .stream_name = "Listen 5 Audio Service", + .cpu_dai_name = "LSM5", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM5, + }, + { + .name = "Listen 6 Audio Service", + .stream_name = "Listen 6 Audio Service", + .cpu_dai_name = "LSM6", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM6, + }, + { + .name = "Listen 7 Audio Service", + .stream_name = "Listen 7 Audio Service", + .cpu_dai_name = "LSM7", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM7, + }, + { + .name = "Listen 8 Audio Service", + .stream_name = "Listen 8 Audio Service", + .cpu_dai_name = "LSM8", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM8, + }, + { + .name = "INT_HFP_BT Hostless", + .stream_name = "INT_HFP_BT Hostless", + .cpu_dai_name = "INT_HFP_BT_HOSTLESS", + .platform_name = "msm-pcm-hostless", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + /* this dai link has playback support */ + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + }, + { + .name = "MSM8226 HFP TX", + .stream_name = "MultiMedia6", + .cpu_dai_name = "MultiMedia6", + .platform_name = "msm-pcm-loopback", + .dynamic = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .ignore_suspend = 1, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + /* this dai link has playback support */ + .ignore_pmdown_time = 1, + .be_id = MSM_FRONTEND_DAI_MULTIMEDIA6, + }, /* Backend BT/FM DAI Links */ { .name = LPASS_BE_INT_BT_SCO_RX, diff --git a/sound/soc/msm/msm8974.c b/sound/soc/msm/msm8974.c index 9ee6b9363c91..7f6b42c3ae1e 100644 --- a/sound/soc/msm/msm8974.c +++ b/sound/soc/msm/msm8974.c @@ -26,11 +26,11 @@ #include #include #include +#include #include #include #include #include "qdsp6v2/msm-pcm-routing-v2.h" -#include "qdsp6v2/q6core.h" #include "../codecs/wcd9xxx-common.h" #include "../codecs/wcd9320.h" @@ -84,7 +84,7 @@ static int msm8974_auxpcm_rate = 8000; static void *adsp_state_notifier; -#define ADSP_STATE_READY_TIMEOUT_MS 3000 +#define ADSP_STATE_READY_TIMEOUT_MS 50 static inline int param_is_mask(int p) { @@ -171,21 +171,12 @@ static char *msm_prim_auxpcm_gpio_name[][2] = { {"PRIM_AUXPCM_DOUT", "qcom,prim-auxpcm-gpio-dout"}, }; -#ifdef CONFIG_PCM_ROUTE_VOICE_STUB -static char *msm_sec_auxpcm_gpio_name[][2] = { - {"SEC_AUXPCM_CLK", "qcom,sec-auxpcm-gpio-clk_duos"}, - {"SEC_AUXPCM_SYNC", "qcom,sec-auxpcm-gpio-sync_duos"}, - {"SEC_AUXPCM_DIN", "qcom,sec-auxpcm-gpio-din_duos"}, - {"SEC_AUXPCM_DOUT", "qcom,sec-auxpcm-gpio-dout_duos"}, -}; -#else static char *msm_sec_auxpcm_gpio_name[][2] = { {"SEC_AUXPCM_CLK", "qcom,sec-auxpcm-gpio-clk"}, {"SEC_AUXPCM_SYNC", "qcom,sec-auxpcm-gpio-sync"}, {"SEC_AUXPCM_DIN", "qcom,sec-auxpcm-gpio-din"}, {"SEC_AUXPCM_DOUT", "qcom,sec-auxpcm-gpio-dout"}, }; -#endif /* CONFIG_PCM_ROUTE_VOICE_STUB */ struct msm8974_liquid_dock_dev { int dock_plug_gpio; @@ -2310,9 +2301,9 @@ static struct snd_soc_dai_link msm8974_common_dai_links[] = { }, /* LSM FE */ { - .name = "Listen Audio Service", - .stream_name = "Listen Audio Service", - .cpu_dai_name = "LSM", + .name = "Listen 1 Audio Service", + .stream_name = "Listen 1 Audio Service", + .cpu_dai_name = "LSM1", .platform_name = "msm-lsm-client", .dynamic = 1, .async_ops = ASYNC_DPCM_SND_SOC_PREPARE, @@ -2458,6 +2449,111 @@ static struct snd_soc_dai_link msm8974_common_dai_links[] = { .ignore_pmdown_time = 1, .be_id = MSM_FRONTEND_DAI_MULTIMEDIA6, }, + { + .name = "Listen 2 Audio Service", + .stream_name = "Listen 2 Audio Service", + .cpu_dai_name = "LSM2", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM2, + }, + { + .name = "Listen 3 Audio Service", + .stream_name = "Listen 3 Audio Service", + .cpu_dai_name = "LSM3", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM3, + }, + { + .name = "Listen 4 Audio Service", + .stream_name = "Listen 4 Audio Service", + .cpu_dai_name = "LSM4", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM4, + }, + { + .name = "Listen 5 Audio Service", + .stream_name = "Listen 5 Audio Service", + .cpu_dai_name = "LSM5", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM5, + }, + { + .name = "Listen 6 Audio Service", + .stream_name = "Listen 6 Audio Service", + .cpu_dai_name = "LSM6", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM6, + }, + { + .name = "Listen 7 Audio Service", + .stream_name = "Listen 7 Audio Service", + .cpu_dai_name = "LSM7", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM7, + }, + { + .name = "Listen 8 Audio Service", + .stream_name = "Listen 8 Audio Service", + .cpu_dai_name = "LSM8", + .platform_name = "msm-lsm-client", + .dynamic = 1, + .trigger = { SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST }, + .no_host_mode = SND_SOC_DAI_LINK_NO_HOST, + .ignore_suspend = 1, + .ignore_pmdown_time = 1, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .be_id = MSM_FRONTEND_DAI_LSM8, + }, { .name = LPASS_BE_SLIMBUS_4_TX, .stream_name = "Slimbus4 Capture", @@ -2576,7 +2672,7 @@ static struct snd_soc_dai_link msm8974_common_dai_links[] = { .ignore_suspend = 1, }, #ifdef CONFIG_PCM_ROUTE_VOICE_STUB - { // 25 + { .name = "Voice Stub", .stream_name = "Voice Stub", .cpu_dai_name = "VOICE_STUB", @@ -3304,9 +3400,14 @@ static __devinit int msm8974_asoc_machine_probe(struct platform_device *pdev) goto err1; } } - +#ifdef CONFIG_PCM_ROUTE_VOICE_STUB + sec_muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, + "lpaif_quat_mode_muxsel"); +#else sec_muxsel = platform_get_resource_byname(pdev, IORESOURCE_MEM, "lpaif_sec_mode_muxsel"); +#endif /* CONFIG_PCM_ROUTE_VOICE_STUB */ + if (!sec_muxsel) { dev_err(&pdev->dev, "MUX addr invalid for secondary AUXPCM\n"); ret = -ENODEV; diff --git a/sound/soc/msm/msm8x10.c b/sound/soc/msm/msm8x10.c index 642953de6384..d02542f296c6 100644 --- a/sound/soc/msm/msm8x10.c +++ b/sound/soc/msm/msm8x10.c @@ -731,8 +731,8 @@ static void *def_msm8x10_wcd_mbhc_cal(void) btn_low[5] = 190; btn_high[5] = 228; btn_low[6] = 229; - btn_high[6] = 269; - btn_low[7] = 270; + btn_high[6] = 264; + btn_low[7] = 265; btn_high[7] = 500; n_ready = wcd9xxx_mbhc_cal_btn_det_mp(btn_cfg, MBHC_BTN_DET_N_READY); n_ready[0] = 80; @@ -1042,6 +1042,21 @@ static struct snd_soc_dai_link msm8x10_dai[] = { .codec_name = "snd-soc-dummy", .be_id = MSM_FRONTEND_DAI_QCHAT, }, + {/* hw:x,15 */ + .name = "MSM8X10 Media9", + .stream_name = "MultiMedia9", + .cpu_dai_name = "MultiMedia9", + .platform_name = "msm-pcm-dsp.0", + .dynamic = 1, + .trigger = {SND_SOC_DPCM_TRIGGER_POST, + SND_SOC_DPCM_TRIGGER_POST}, + .codec_dai_name = "snd-soc-dummy-dai", + .codec_name = "snd-soc-dummy", + .ignore_suspend = 1, + /* this dainlink has playback support */ + .ignore_pmdown_time = 1, + .be_id = MSM_FRONTEND_DAI_MULTIMEDIA9 + }, /* Backend I2S DAI Links */ { .name = LPASS_BE_SEC_MI2S_RX, diff --git a/sound/soc/msm/qdsp6/q6asm.c b/sound/soc/msm/qdsp6/q6asm.c index 659d5a2f64bf..8ecb1477775b 100644 --- a/sound/soc/msm/qdsp6/q6asm.c +++ b/sound/soc/msm/qdsp6/q6asm.c @@ -57,6 +57,7 @@ #define OUT_BUFFER_SIZE 56 #define IN_BUFFER_SIZE 24 #endif +#define FRAME_NUM (8) static DEFINE_MUTEX(session_lock); /* session id: 0 reserved */ @@ -509,6 +510,9 @@ int q6asm_audio_client_buf_alloc(unsigned int dir, pr_debug("%s: buffer already allocated\n", __func__); return 0; } + + if (bufcnt != FRAME_NUM) + goto fail; mutex_lock(&ac->cmd_lock); buf = kzalloc(((sizeof(struct audio_buffer))*bufcnt), GFP_KERNEL); diff --git a/sound/soc/msm/qdsp6v2/audio_acdb.c b/sound/soc/msm/qdsp6v2/audio_acdb.c index 4e04bef8ee49..df15c59fedc6 100644 --- a/sound/soc/msm/qdsp6v2/audio_acdb.c +++ b/sound/soc/msm/qdsp6v2/audio_acdb.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2010-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2010-2014, 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 @@ -1151,13 +1151,6 @@ static int unmap_cal_tables(void) result = result2; } - result2 = q6lsm_unmap_cal_blocks(); - if (result2 < 0) { - pr_err("%s: lsm_unmap_cal_blocks failed, err = %d\n", - __func__, result2); - result = result2; - } - result2 = q6asm_unmap_cal_blocks(); if (result2 < 0) { pr_err("%s: asm_unmap_cal_blocks failed, err = %d\n", diff --git a/sound/soc/msm/qdsp6v2/audio_ocmem.c b/sound/soc/msm/qdsp6v2/audio_ocmem.c index dd1eaddc5fed..6679e702bac5 100644 --- a/sound/soc/msm/qdsp6v2/audio_ocmem.c +++ b/sound/soc/msm/qdsp6v2/audio_ocmem.c @@ -31,7 +31,7 @@ #include #include #include -#include "q6core.h" +#include #include "audio_ocmem.h" diff --git a/sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c b/sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c index 43d45354f962..723f9015815f 100644 --- a/sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-compress-q6-v2.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2014, The Linux Foundation. All rights reserved. + /* Copyright (c) 2012-2014, 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 @@ -123,9 +123,16 @@ struct msm_compr_audio { uint32_t sample_rate; uint32_t num_channels; + /* + * convention - commands coming from the same thread + * can use the common cmd_ack var. Others (e.g drain/EOS) + * must use separate vars to track command status. + */ uint32_t cmd_ack; uint32_t cmd_interrupt; uint32_t drain_ready; + uint32_t eos_ack; + uint32_t stream_available; uint32_t next_stream; @@ -376,7 +383,7 @@ static void compr_event_handler(uint32_t opcode, if (atomic_read(&prtd->eos) && !prtd->gapless_state.set_next_stream_id) { pr_debug("ASM_DATA_CMDRSP_EOS wake up\n"); - prtd->cmd_ack = 1; + prtd->eos_ack = 1; wake_up(&prtd->eos_wait); } atomic_set(&prtd->eos, 0); @@ -429,8 +436,30 @@ static void compr_event_handler(uint32_t opcode, } else msm_compr_send_buffer(prtd); } - spin_unlock_irqrestore(&prtd->lock, flags); - break; + + /* + * The condition below ensures playback finishes in the + * follow cornercase + * WRITE(last buffer) + * WAIT_FOR_DRAIN + * PAUSE + * WRITE_DONE(X) + * RESUME + */ + if ((prtd->copied_total == prtd->bytes_sent) && + atomic_read(&prtd->drain)) { + pr_debug("RUN ack, wake up & continue pending drain\n"); + + if (prtd->last_buffer) + prtd->last_buffer = 0; + + prtd->drain_ready = 1; + wake_up(&prtd->drain_wait); + atomic_set(&prtd->drain, 0); + } + + spin_unlock_irqrestore(&prtd->lock, flags); + break; case ASM_STREAM_CMD_FLUSH: pr_debug("%s: ASM_STREAM_CMD_FLUSH:", __func__); pr_debug("token 0x%x, stream id %d\n", token, @@ -488,6 +517,12 @@ static void compr_event_handler(uint32_t opcode, snd_compr_fragment_elapsed(cstream); prtd->copied_total = prtd->bytes_received; atomic_set(&prtd->error, 1); + wake_up(&prtd->drain_wait); + if (atomic_read(&prtd->eos)) { + pr_debug("%s:unblock eos wait queues", __func__); + wake_up(&prtd->eos_wait); + atomic_set(&prtd->eos, 0); + } spin_unlock_irqrestore(&prtd->lock, flags); break; default: @@ -897,7 +932,7 @@ static int msm_compr_free(struct snd_compr_stream *cstream) } if (atomic_read(&prtd->eos)) { ret = wait_event_timeout(prtd->eos_wait, - prtd->cmd_ack, 5 * HZ); + prtd->eos_ack, 5 * HZ); if (!ret) pr_err("%s: CMD_EOS failed\n", __func__); } @@ -1101,14 +1136,19 @@ static int msm_compr_drain_buffer(struct msm_compr_audio *prtd, rc = wait_event_interruptible(prtd->drain_wait, prtd->drain_ready || prtd->cmd_interrupt || - atomic_read(&prtd->xrun)); - pr_debug("%s: out of buffer drain wait\n", __func__); + atomic_read(&prtd->xrun) || + atomic_read(&prtd->error)); + pr_debug("%s: out of buffer drain wait with ret %d\n", __func__, rc); spin_lock_irqsave(&prtd->lock, *flags); if (prtd->cmd_interrupt) { pr_debug("%s: buffer drain interrupted by flush)\n", __func__); rc = -EINTR; prtd->cmd_interrupt = 0; } + if (atomic_read(&prtd->error)) { + pr_err("%s: Got RESET EVENTS notification, return\n", __func__); + rc = -ENETRESET; + } return rc; } @@ -1321,7 +1361,7 @@ static int msm_compr_trigger(struct snd_compr_stream *cstream, int cmd) } /* send EOS */ - prtd->cmd_ack = 0; + prtd->eos_ack = 0; pr_debug("issue CMD_EOS stream_id %d\n", ac->stream_id); q6asm_stream_cmd_nowait(ac, CMD_EOS, ac->stream_id); pr_info("PARTIAL DRAIN, do not wait for EOS ack\n"); @@ -1393,7 +1433,7 @@ static int msm_compr_trigger(struct snd_compr_stream *cstream, int cmd) prtd->gapless_state.set_next_stream_id = false; pr_debug("%s:CMD_EOS stream_id %d\n", __func__, ac->stream_id); - prtd->cmd_ack = 0; + prtd->eos_ack = 0; atomic_set(&prtd->eos, 1); q6asm_stream_cmd_nowait(ac, CMD_EOS, ac->stream_id); @@ -1402,7 +1442,7 @@ static int msm_compr_trigger(struct snd_compr_stream *cstream, int cmd) /* Wait indefinitely for DRAIN. Flush can also signal this*/ rc = wait_event_interruptible(prtd->eos_wait, - (prtd->cmd_ack || prtd->cmd_interrupt)); + (prtd->eos_ack || prtd->cmd_interrupt)); if (rc < 0) pr_err("%s: EOS wait failed\n", __func__); @@ -1413,6 +1453,11 @@ static int msm_compr_trigger(struct snd_compr_stream *cstream, int cmd) if (prtd->cmd_interrupt) rc = -EINTR; + if (atomic_read(&prtd->error)) { + pr_err("%s: Got RESET EVENTS notification, return\n", __func__); + rc = -ENETRESET; + } + /*FIXME : what if a flush comes while PC is here */ if (rc == 0) { /* diff --git a/sound/soc/msm/qdsp6v2/msm-lsm-client.c b/sound/soc/msm/qdsp6v2/msm-lsm-client.c index ff822996e86c..e7b0cf04b737 100644 --- a/sound/soc/msm/qdsp6v2/msm-lsm-client.c +++ b/sound/soc/msm/qdsp6v2/msm-lsm-client.c @@ -284,8 +284,32 @@ static int msm_lsm_close(struct snd_pcm_substream *substream) unsigned long flags; struct snd_pcm_runtime *runtime = substream->runtime; struct lsm_priv *prtd = runtime->private_data; + int ret = 0; pr_debug("%s\n", __func__); + if (prtd->lsm_client->started) { + ret = q6lsm_stop(prtd->lsm_client, true); + if (ret) + pr_err("%s: session stop failed, err = %d\n", + __func__, ret); + else + pr_debug("%s: LSM client session stopped %d\n", + __func__, ret); + + /* + * Go Ahead and try de-register sound model, + * even if stop failed + */ + prtd->lsm_client->started = false; + + ret = q6lsm_deregister_sound_model(prtd->lsm_client); + if (ret) + pr_err("%s: dereg_snd_model failed, err = %d\n", + __func__, ret); + else + pr_debug("%s: dereg_snd_model succesful\n", + __func__); + } q6lsm_close(prtd->lsm_client); q6lsm_client_free(prtd->lsm_client); diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-afe-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-afe-v2.c index 35278cdfed9c..1eb5e841467c 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-afe-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-afe-v2.c @@ -34,12 +34,12 @@ #define MIN_PLAYBACK_PERIOD_SIZE (128 * 2) #define MAX_PLAYBACK_PERIOD_SIZE (128 * 2 * 2 * 6) -#define MIN_PLAYBACK_NUM_PERIODS (32) -#define MAX_PLAYBACK_NUM_PERIODS (384) +#define MIN_PLAYBACK_NUM_PERIODS (4) +#define MAX_PLAYBACK_NUM_PERIODS (768) #define MIN_CAPTURE_PERIOD_SIZE (128 * 2 * 4) #define MAX_CAPTURE_PERIOD_SIZE (128 * 2 * 2 * 6 * 4) -#define MIN_CAPTURE_NUM_PERIODS (32) +#define MIN_CAPTURE_NUM_PERIODS (4) #define MAX_CAPTURE_NUM_PERIODS (384) static struct snd_pcm_hardware msm_afe_hardware_playback = { @@ -57,7 +57,7 @@ static struct snd_pcm_hardware msm_afe_hardware_playback = { .channels_min = 1, .channels_max = 6, .buffer_bytes_max = MAX_PLAYBACK_PERIOD_SIZE * - MIN_PLAYBACK_NUM_PERIODS, + MAX_PLAYBACK_NUM_PERIODS, .period_bytes_min = MIN_PLAYBACK_PERIOD_SIZE, .period_bytes_max = MAX_PLAYBACK_PERIOD_SIZE, .periods_min = MIN_PLAYBACK_NUM_PERIODS, @@ -80,7 +80,7 @@ static struct snd_pcm_hardware msm_afe_hardware_capture = { .channels_min = 1, .channels_max = 6, .buffer_bytes_max = MAX_CAPTURE_PERIOD_SIZE * - MIN_CAPTURE_NUM_PERIODS, + MAX_CAPTURE_NUM_PERIODS, .period_bytes_min = MIN_CAPTURE_PERIOD_SIZE, .period_bytes_max = MAX_CAPTURE_PERIOD_SIZE, .periods_min = MIN_CAPTURE_NUM_PERIODS, diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-loopback-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-loopback-v2.c index 739d0d9d85ae..57cf28060da8 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-loopback-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-loopback-v2.c @@ -132,6 +132,8 @@ static int msm_pcm_open(struct snd_pcm_substream *substream) int ret = 0; uint16_t bits_per_sample = 16; struct msm_pcm_routing_evt event; + struct asm_session_mtmx_strtr_param_window_v2_t asm_mtmx_strtr_window; + uint32_t param_id; pcm = dev_get_drvdata(rtd->platform->dev); mutex_lock(&pcm->lock); @@ -190,6 +192,20 @@ static int msm_pcm_open(struct snd_pcm_substream *substream) dev_err(rtd->platform->dev, "Error %d setting volume", ret); } + /* Set to largest negative value */ + asm_mtmx_strtr_window.window_lsw = 0x00000000; + asm_mtmx_strtr_window.window_msw = 0x80000000; + param_id = ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_START_V2; + q6asm_send_mtmx_strtr_window(pcm->audio_client, + &asm_mtmx_strtr_window, + param_id); + /* Set to largest positive value */ + asm_mtmx_strtr_window.window_lsw = 0xffffffff; + asm_mtmx_strtr_window.window_msw = 0x7fffffff; + param_id = ASM_SESSION_MTMX_STRTR_PARAM_RENDER_WINDOW_END_V2; + q6asm_send_mtmx_strtr_window(pcm->audio_client, + &asm_mtmx_strtr_window, + param_id); } dev_info(rtd->platform->dev, "%s: Instance = %d, Stream ID = %s\n", __func__ , pcm->instance, substream->pcm->id); diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-q6-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-q6-v2.c index 08945d6e9304..fc30295802d4 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-q6-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-q6-v2.c @@ -199,7 +199,16 @@ static void event_handler(uint32_t opcode, pr_debug("%s: reclaim flushed buf in_count %x\n", __func__, atomic_read(&prtd->in_count)); prtd->pcm_irq_pos += prtd->pcm_count; - atomic_inc(&prtd->in_count); + if (prtd->mmap_flag) { + if (q6asm_is_cpu_buf_avail_nolock(OUT, + prtd->audio_client, + &size, &idx) && + (substream->runtime->status->state == + SNDRV_PCM_STATE_RUNNING)) + q6asm_read_nolock(prtd->audio_client); + } else { + atomic_inc(&prtd->in_count); + } if (atomic_read(&prtd->in_count) == prtd->periods) { pr_info("%s: reclaimed all bufs\n", __func__); if (atomic_read(&prtd->start)) diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c index 21316e780177..b22b4a7facb2 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.c @@ -30,12 +30,12 @@ #include #include #include +#include #include #include "msm-pcm-routing-v2.h" #include "msm-dolby-dap-config.h" #include "q6voice.h" -#include "q6core.h" extern u32 score; @@ -64,6 +64,7 @@ struct msm_pcm_routing_fdai_data { #define INVALID_SESSION -1 #define SESSION_TYPE_RX 0 #define SESSION_TYPE_TX 1 +#define MAX_LSM_SESSIONS 8 #define EC_PORT_ID_PRIMARY_MI2S_TX 1 #define EC_PORT_ID_SECONDARY_MI2S_TX 2 @@ -108,6 +109,10 @@ static int msm_route_fm_vol_control; static const DECLARE_TLV_DB_LINEAR(fm_rx_vol_gain, 0, INT_RX_VOL_MAX_STEPS); +static int msm_route_hfp_vol_control; +static const DECLARE_TLV_DB_LINEAR(hfp_rx_vol_gain, 0, + INT_RX_VOL_MAX_STEPS); + static int msm_route_multimedia2_vol_control; static const DECLARE_TLV_DB_LINEAR(multimedia2_rx_vol_gain, 0, INT_RX_VOL_MAX_STEPS); @@ -736,6 +741,8 @@ static void msm_pcm_routing_process_voice(u16 reg, u16 val, int set) session_id = voc_get_session_id(VOICE_SESSION_NAME); else if (val == MSM_FRONTEND_DAI_VOLTE) session_id = voc_get_session_id(VOLTE_SESSION_NAME); + else if (val == MSM_FRONTEND_DAI_VOWLAN) + session_id = voc_get_session_id(VOWLAN_SESSION_NAME); else if (val == MSM_FRONTEND_DAI_VOICE2) session_id = voc_get_session_id(VOICE2_SESSION_NAME); else if (val == MSM_FRONTEND_DAI_QCHAT) @@ -1141,6 +1148,23 @@ static int msm_routing_set_fm_vol_mixer(struct snd_kcontrol *kcontrol, return 0; } +static int msm_routing_get_hfp_vol_mixer(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) +{ + ucontrol->value.integer.value[0] = msm_route_hfp_vol_control; + return 0; +} + +static int msm_routing_set_hfp_vol_mixer(struct snd_kcontrol *kcontrol, + struct snd_ctl_elem_value *ucontrol) +{ + afe_loopback_gain(INT_BT_SCO_TX , ucontrol->value.integer.value[0]); + + msm_route_hfp_vol_control = ucontrol->value.integer.value[0]; + + return 0; +} + static int msm_routing_get_multimedia2_vol_mixer(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { @@ -2335,6 +2359,9 @@ static const struct snd_kcontrol_new pri_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_PRI_I2S_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_PRI_I2S_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_PRI_I2S_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2356,6 +2383,9 @@ static const struct snd_kcontrol_new sec_i2s_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_SEC_I2S_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_SEC_I2S_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_SEC_I2S_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2377,6 +2407,9 @@ static const struct snd_kcontrol_new sec_mi2s_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_SECONDARY_MI2S_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_SECONDARY_MI2S_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_SECONDARY_MI2S_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2403,6 +2436,9 @@ static const struct snd_kcontrol_new slimbus_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_SLIMBUS_0_RX , MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_SLIMBUS_0_RX , + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_SLIMBUS_0_RX , MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2427,6 +2463,9 @@ static const struct snd_kcontrol_new bt_sco_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_INT_BT_SCO_RX , MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_INT_BT_SCO_RX , + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_INT_BT_SCO_RX , MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2451,6 +2490,9 @@ static const struct snd_kcontrol_new mi2s_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_MI2S_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_MI2S_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_MI2S_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2475,6 +2517,9 @@ static const struct snd_kcontrol_new afe_pcm_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_AFE_PCM_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_AFE_PCM_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_AFE_PCM_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2499,6 +2544,9 @@ static const struct snd_kcontrol_new aux_pcm_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_AUXPCM_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_AUXPCM_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_AUXPCM_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2520,6 +2568,9 @@ static const struct snd_kcontrol_new sec_aux_pcm_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_SEC_AUXPCM_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_SEC_AUXPCM_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("DTMF", MSM_BACKEND_DAI_SEC_AUXPCM_RX, MSM_FRONTEND_DAI_DTMF_RX, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), @@ -2541,6 +2592,9 @@ static const struct snd_kcontrol_new hdmi_rx_voice_mixer_controls[] = { SOC_SINGLE_EXT("VoLTE", MSM_BACKEND_DAI_HDMI_RX, MSM_FRONTEND_DAI_VOLTE, 1, 0, msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("VoWLAN", MSM_BACKEND_DAI_HDMI_RX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), SOC_SINGLE_EXT("Voice Stub", MSM_BACKEND_DAI_HDMI_RX, MSM_FRONTEND_DAI_VOICE_STUB, 1, 0, msm_routing_get_voice_stub_mixer, msm_routing_put_voice_stub_mixer), @@ -2645,6 +2699,33 @@ static const struct snd_kcontrol_new tx_volte_mixer_controls[] = { msm_routing_put_voice_mixer), }; +static const struct snd_kcontrol_new tx_vowlan_mixer_controls[] = { + SOC_SINGLE_EXT("PRI_TX_VoWLAN", MSM_BACKEND_DAI_PRI_I2S_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("SLIM_0_TX_VoWLAN", MSM_BACKEND_DAI_SLIMBUS_0_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("INTERNAL_BT_SCO_TX_VoWLAN", + MSM_BACKEND_DAI_INT_BT_SCO_TX, MSM_FRONTEND_DAI_VOWLAN, 1, 0, + msm_routing_get_voice_mixer, msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("AFE_PCM_TX_VoWLAN", MSM_BACKEND_DAI_AFE_PCM_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("AUX_PCM_TX_VoWLAN", MSM_BACKEND_DAI_AUXPCM_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("SEC_AUX_PCM_TX_VoWLAN", MSM_BACKEND_DAI_SEC_AUXPCM_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("MI2S_TX_VoWLAN", MSM_BACKEND_DAI_MI2S_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), + SOC_SINGLE_EXT("PRI_MI2S_TX_VoWLAN", MSM_BACKEND_DAI_PRI_MI2S_TX, + MSM_FRONTEND_DAI_VOWLAN, 1, 0, msm_routing_get_voice_mixer, + msm_routing_put_voice_mixer), +}; + static const struct snd_kcontrol_new tx_voip_mixer_controls[] = { SOC_SINGLE_EXT("PRI_TX_Voip", MSM_BACKEND_DAI_PRI_I2S_TX, MSM_FRONTEND_DAI_VOIP, 1, 0, msm_routing_get_voice_mixer, @@ -2850,11 +2931,45 @@ static const struct snd_kcontrol_new pcm_rx_switch_mixer_controls = static const struct soc_enum lsm_mux_enum = SOC_ENUM_SINGLE_EXT(ARRAY_SIZE(mad_audio_mux_text), mad_audio_mux_text); -static const struct snd_kcontrol_new lsm_mux = + +static const struct snd_kcontrol_new lsm1_mux = SOC_DAPM_ENUM_EXT("LSM1 MUX", lsm_mux_enum, msm_routing_lsm_mux_get, msm_routing_lsm_mux_put); +static const struct snd_kcontrol_new lsm2_mux = + SOC_DAPM_ENUM_EXT("LSM2 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); +static const struct snd_kcontrol_new lsm3_mux = + SOC_DAPM_ENUM_EXT("LSM3 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); + +static const struct snd_kcontrol_new lsm4_mux = + SOC_DAPM_ENUM_EXT("LSM4 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); +static const struct snd_kcontrol_new lsm5_mux = + SOC_DAPM_ENUM_EXT("LSM5 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); + +static const struct snd_kcontrol_new lsm6_mux = + SOC_DAPM_ENUM_EXT("LSM6 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); +static const struct snd_kcontrol_new lsm7_mux = + SOC_DAPM_ENUM_EXT("LSM7 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); + +static const struct snd_kcontrol_new lsm8_mux = + SOC_DAPM_ENUM_EXT("LSM8 MUX", lsm_mux_enum, + msm_routing_lsm_mux_get, + msm_routing_lsm_mux_put); + + static const char * const lsm_func_text[] = { "None", "AUDIO", "BEACON", "ULTRASOUND", "SWAUDIO", }; @@ -2896,6 +3011,12 @@ static const struct snd_kcontrol_new int_fm_vol_mixer_controls[] = { msm_routing_set_fm_vol_mixer, fm_rx_vol_gain), }; +static const struct snd_kcontrol_new int_hfp_vol_mixer_controls[] = { + SOC_SINGLE_EXT_TLV("Internal HFP RX Volume", SND_SOC_NOPM, 0, + INT_RX_VOL_GAIN, 0, msm_routing_get_hfp_vol_mixer, + msm_routing_set_hfp_vol_mixer, hfp_rx_vol_gain), +}; + static const struct snd_kcontrol_new multimedia2_vol_mixer_controls[] = { SOC_SINGLE_EXT_TLV("HIFI2 RX Volume", SND_SOC_NOPM, 0, INT_RX_VOL_GAIN, 0, msm_routing_get_multimedia2_vol_mixer, @@ -3373,6 +3494,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { SND_SOC_DAPM_AIF_OUT("VOICE2_UL", "Voice2 Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("VoLTE_DL", "VoLTE Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("VoLTE_UL", "VoLTE Capture", 0, 0, 0, 0), + SND_SOC_DAPM_AIF_IN("VoWLAN_DL", "VoWLAN Playback", 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("VoWLAN_UL", "VoWLAN Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("VOIP_UL", "VoIP Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("SLIM0_DL_HL", "SLIMBUS0_HOSTLESS Playback", 0, 0, 0, 0), @@ -3420,7 +3543,21 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { SND_SOC_DAPM_AIF_IN("DTMF_DL_HL", "DTMF_RX_HOSTLESS Playback", 0, 0, 0, 0), /* LSM */ - SND_SOC_DAPM_AIF_OUT("LSM_UL_HL", "Listen Audio Service Capture", + SND_SOC_DAPM_AIF_OUT("LSM1_UL_HL", "Listen 1 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM2_UL_HL", "Listen 2 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM3_UL_HL", "Listen 3 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM4_UL_HL", "Listen 4 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM5_UL_HL", "Listen 5 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM6_UL_HL", "Listen 6 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM7_UL_HL", "Listen 7 Audio Service Capture", + 0, 0, 0, 0), + SND_SOC_DAPM_AIF_OUT("LSM8_UL_HL", "Listen 8 Audio Service Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("QCHAT_DL", "QCHAT Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("QCHAT_UL", "QCHAT Capture", 0, 0, 0, 0), @@ -3508,7 +3645,14 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { &pcm_rx_switch_mixer_controls), /* Mux Definitions */ - SND_SOC_DAPM_MUX("LSM1 MUX", SND_SOC_NOPM, 0, 0, &lsm_mux), + SND_SOC_DAPM_MUX("LSM1 MUX", SND_SOC_NOPM, 0, 0, &lsm1_mux), + SND_SOC_DAPM_MUX("LSM2 MUX", SND_SOC_NOPM, 0, 0, &lsm2_mux), + SND_SOC_DAPM_MUX("LSM3 MUX", SND_SOC_NOPM, 0, 0, &lsm3_mux), + SND_SOC_DAPM_MUX("LSM4 MUX", SND_SOC_NOPM, 0, 0, &lsm4_mux), + SND_SOC_DAPM_MUX("LSM5 MUX", SND_SOC_NOPM, 0, 0, &lsm5_mux), + SND_SOC_DAPM_MUX("LSM6 MUX", SND_SOC_NOPM, 0, 0, &lsm6_mux), + SND_SOC_DAPM_MUX("LSM7 MUX", SND_SOC_NOPM, 0, 0, &lsm7_mux), + SND_SOC_DAPM_MUX("LSM8 MUX", SND_SOC_NOPM, 0, 0, &lsm8_mux), SND_SOC_DAPM_MUX("SLIM_0_RX AANC MUX", SND_SOC_NOPM, 0, 0, aanc_slim_0_rx_mux), @@ -3620,6 +3764,9 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { SND_SOC_DAPM_MIXER("VoLTE_Tx Mixer", SND_SOC_NOPM, 0, 0, tx_volte_mixer_controls, ARRAY_SIZE(tx_volte_mixer_controls)), + SND_SOC_DAPM_MIXER("VoWLAN_Tx Mixer", + SND_SOC_NOPM, 0, 0, tx_vowlan_mixer_controls, + ARRAY_SIZE(tx_vowlan_mixer_controls)), SND_SOC_DAPM_MIXER("INTERNAL_BT_SCO_RX Audio Mixer", SND_SOC_NOPM, 0, 0, int_bt_sco_rx_mixer_controls, ARRAY_SIZE(int_bt_sco_rx_mixer_controls)), SND_SOC_DAPM_MIXER("INTERNAL_FM_RX Audio Mixer", SND_SOC_NOPM, 0, 0, @@ -3929,6 +4076,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"PRI_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"PRI_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"PRI_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"PRI_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"PRI_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"PRI_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"PRI_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -3937,6 +4085,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SEC_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"SEC_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"SEC_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"SEC_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"SEC_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"SEC_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"SEC_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -3945,6 +4094,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SEC_MI2S_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"SEC_MI2S_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"SEC_MI2S_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"SEC_MI2S_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"SEC_MI2S_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"SEC_MI2S_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"SEC_MI2S_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -3953,6 +4103,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIM_0_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"SLIM_0_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"SLIM_0_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"SLIM_0_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"SLIM_0_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"SLIM_0_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, #ifdef CONFIG_PCM_ROUTE_VOICE_STUB @@ -3964,6 +4115,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"INTERNAL_BT_SCO_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"INTERNAL_BT_SCO_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"INTERNAL_BT_SCO_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"INTERNAL_BT_SCO_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"INTERNAL_BT_SCO_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"INTERNAL_BT_SCO_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"INTERNAL_BT_SCO_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -3972,6 +4124,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"AFE_PCM_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"AFE_PCM_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"AFE_PCM_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"AFE_PCM_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"AFE_PCM_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"AFE_PCM_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"AFE_PCM_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -3980,6 +4133,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"AUX_PCM_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"AUX_PCM_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"AUX_PCM_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"AUX_PCM_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"AUX_PCM_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"AUX_PCM_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, #ifdef CONFIG_PCM_ROUTE_VOICE_STUB @@ -3990,6 +4144,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SEC_AUX_PCM_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"SEC_AUX_PCM_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"SEC_AUX_PCM_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"SEC_AUX_PCM_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"SEC_AUX_PCM_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, #ifdef CONFIG_PCM_ROUTE_VOICE_STUB @@ -4001,6 +4156,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"HDMI_RX_Voice Mixer", "CSVoice", "CS-VOICE_DL1"}, {"HDMI_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"HDMI_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"HDMI_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"HDMI_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"HDMI_RX_Voice Mixer", "DTMF", "DTMF_DL_HL"}, {"HDMI_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, @@ -4011,6 +4167,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"MI2S_RX_Voice Mixer", "Voice2", "VOICE2_DL"}, {"MI2S_RX_Voice Mixer", "Voip", "VOIP_DL"}, {"MI2S_RX_Voice Mixer", "VoLTE", "VoLTE_DL"}, + {"MI2S_RX_Voice Mixer", "VoWLAN", "VoWLAN_DL"}, {"MI2S_RX_Voice Mixer", "Voice Stub", "VOICE_STUB_DL"}, {"MI2S_RX_Voice Mixer", "QCHAT", "QCHAT_DL"}, {"MI2S_RX", NULL, "MI2S_RX_Voice Mixer"}, @@ -4091,6 +4248,16 @@ static const struct snd_soc_dapm_route intercon[] = { {"VoLTE_Tx Mixer", "SEC_AUX_PCM_TX_VoLTE", "SEC_AUX_PCM_TX"}, {"VoLTE_Tx Mixer", "MI2S_TX_VoLTE", "MI2S_TX"}, {"VoLTE_UL", NULL, "VoLTE_Tx Mixer"}, + + {"VoWLAN_Tx Mixer", "PRI_TX_VoWLAN", "PRI_I2S_TX"}, + {"VoWLAN_Tx Mixer", "SLIM_0_TX_VoWLAN", "SLIMBUS_0_TX"}, + {"VoWLAN_Tx Mixer", "INTERNAL_BT_SCO_TX_VoWLAN", "INT_BT_SCO_TX"}, + {"VoWLAN_Tx Mixer", "AFE_PCM_TX_VoWLAN", "PCM_TX"}, + {"VoWLAN_Tx Mixer", "AUX_PCM_TX_VoWLAN", "AUX_PCM_TX"}, + {"VoWLAN_Tx Mixer", "SEC_AUX_PCM_TX_VoWLAN", "SEC_AUX_PCM_TX"}, + {"VoWLAN_Tx Mixer", "MI2S_TX_VoWLAN", "MI2S_TX"}, + {"VoWLAN_UL", NULL, "VoWLAN_Tx Mixer"}, + {"Voip_Tx Mixer", "PRI_TX_Voip", "PRI_I2S_TX"}, {"Voip_Tx Mixer", "MI2S_TX_Voip", "MI2S_TX"}, {"Voip_Tx Mixer", "SLIM_0_TX_Voip", "SLIMBUS_0_TX"}, @@ -4119,7 +4286,62 @@ static const struct snd_soc_dapm_route intercon[] = { {"LSM1 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, {"LSM1 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, {"LSM1 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, - {"LSM_UL_HL", NULL, "LSM1 MUX"}, + {"LSM1_UL_HL", NULL, "LSM1 MUX"}, + + {"LSM2 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM2 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM2 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM2 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM2 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM2_UL_HL", NULL, "LSM2 MUX"}, + + + {"LSM3 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM3 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM3 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM3 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM3 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM3_UL_HL", NULL, "LSM3 MUX"}, + + + {"LSM4 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM4 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM4 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM4 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM4 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM4_UL_HL", NULL, "LSM4 MUX"}, + + {"LSM5 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM5 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM5 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM5 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM5 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM5_UL_HL", NULL, "LSM5 MUX"}, + + {"LSM6 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM6 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM6 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM6 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM6 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM6_UL_HL", NULL, "LSM6 MUX"}, + + + {"LSM7 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM7 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM7 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM7 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM7 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM7_UL_HL", NULL, "LSM7 MUX"}, + + + {"LSM8 MUX", "SLIMBUS_0_TX", "SLIMBUS_0_TX"}, + {"LSM8 MUX", "SLIMBUS_1_TX", "SLIMBUS_1_TX"}, + {"LSM8 MUX", "SLIMBUS_3_TX", "SLIMBUS_3_TX"}, + {"LSM8 MUX", "SLIMBUS_4_TX", "SLIMBUS_4_TX"}, + {"LSM8 MUX", "SLIMBUS_5_TX", "SLIMBUS_5_TX"}, + {"LSM8_UL_HL", NULL, "LSM8 MUX"}, + + {"QCHAT_Tx Mixer", "PRI_TX_QCHAT", "PRI_I2S_TX"}, {"QCHAT_Tx Mixer", "SLIM_0_TX_QCHAT", "SLIMBUS_0_TX"}, @@ -4469,6 +4691,10 @@ static int msm_routing_probe(struct snd_soc_platform *platform) int_fm_vol_mixer_controls, ARRAY_SIZE(int_fm_vol_mixer_controls)); + snd_soc_add_platform_controls(platform, + int_hfp_vol_mixer_controls, + ARRAY_SIZE(int_hfp_vol_mixer_controls)); + snd_soc_add_platform_controls(platform, eq_enable_mixer_controls, ARRAY_SIZE(eq_enable_mixer_controls)); diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.h b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.h index 3f988021a05c..8aebf4d11636 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.h +++ b/sound/soc/msm/qdsp6v2/msm-pcm-routing-v2.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -87,9 +87,17 @@ enum { MSM_FRONTEND_DAI_VOICE_STUB, MSM_FRONTEND_DAI_VOLTE, MSM_FRONTEND_DAI_DTMF_RX, - MSM_FRONTEND_DAI_LSM1, MSM_FRONTEND_DAI_VOICE2, MSM_FRONTEND_DAI_QCHAT, + MSM_FRONTEND_DAI_LSM1, + MSM_FRONTEND_DAI_LSM2, + MSM_FRONTEND_DAI_LSM3, + MSM_FRONTEND_DAI_LSM4, + MSM_FRONTEND_DAI_LSM5, + MSM_FRONTEND_DAI_LSM6, + MSM_FRONTEND_DAI_LSM7, + MSM_FRONTEND_DAI_LSM8, + MSM_FRONTEND_DAI_VOWLAN, MSM_FRONTEND_DAI_MAX, }; diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.c index 4da9553fb00f..418bfdb1fa7b 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.c @@ -75,6 +75,14 @@ static bool is_qchat(struct msm_voice *pqchat) return false; } +static bool is_vowlan(struct msm_voice *pvowlan) +{ + if (pvowlan == &voice_info[VOWLAN_SESSION_INDEX]) + return true; + else + return false; +} + static uint32_t get_session_id(struct msm_voice *pvoc) { uint32_t session_id = 0; @@ -85,6 +93,8 @@ static uint32_t get_session_id(struct msm_voice *pvoc) session_id = voc_get_session_id(VOICE2_SESSION_NAME); else if (is_qchat(pvoc)) session_id = voc_get_session_id(QCHAT_SESSION_NAME); + else if (is_vowlan(pvoc)) + session_id = voc_get_session_id(VOWLAN_SESSION_NAME); else session_id = voc_get_session_id(VOICE_SESSION_NAME); @@ -134,6 +144,10 @@ static int msm_pcm_open(struct snd_pcm_substream *substream) voice = &voice_info[QCHAT_SESSION_INDEX]; pr_debug("%s: Open QCHAT Substream Id=%s\n", __func__, substream->pcm->id); + } else if (!strncmp("VoWLAN", substream->pcm->id, 6)) { + voice = &voice_info[VOWLAN_SESSION_INDEX]; + pr_debug("%s: Open VoWLAN Substream Id=%s\n", + __func__, substream->pcm->id); } else { voice = &voice_info[VOICE_SESSION_INDEX]; pr_debug("%s: Open VOICE Substream Id=%s\n", @@ -523,6 +537,7 @@ static int msm_voice_tty_mode_put(struct snd_kcontrol *kcontrol, voc_set_tty_mode(voc_get_session_id(VOICE_SESSION_NAME), tty_mode); voc_set_tty_mode(voc_get_session_id(VOICE2_SESSION_NAME), tty_mode); voc_set_tty_mode(voc_get_session_id(VOLTE_SESSION_NAME), tty_mode); + voc_set_tty_mode(voc_get_session_id(VOWLAN_SESSION_NAME), tty_mode); return 0; } diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.h b/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.h index f199be606c74..62c5732499fc 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.h +++ b/sound/soc/msm/qdsp6v2/msm-pcm-voice-v2.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -18,6 +18,7 @@ enum { VOLTE_SESSION_INDEX, VOICE2_SESSION_INDEX, QCHAT_SESSION_INDEX, + VOWLAN_SESSION_INDEX, VOICE_SESSION_INDEX_MAX, }; diff --git a/sound/soc/msm/qdsp6v2/msm-pcm-voip-v2.c b/sound/soc/msm/qdsp6v2/msm-pcm-voip-v2.c index b5064848dc05..b615327a4ee1 100644 --- a/sound/soc/msm/qdsp6v2/msm-pcm-voip-v2.c +++ b/sound/soc/msm/qdsp6v2/msm-pcm-voip-v2.c @@ -33,7 +33,12 @@ #include "audio_ocmem.h" #define SHARED_MEM_BUF 2 +#if defined(CONFIG_SEC_H_PROJECT) +#define VOIP_MIN_Q_LEN 2 +#define VOIP_MAX_Q_LEN 10 +#else #define VOIP_MAX_Q_LEN 2 +#endif #define VOIP_MAX_VOC_PKT_SIZE 4096 #define VOIP_MIN_VOC_PKT_SIZE 320 @@ -144,6 +149,7 @@ struct voip_drv_info { spinlock_t dsp_lock; spinlock_t dsp_ul_lock; + bool voip_reset; uint32_t mode; uint32_t rate_type; uint32_t rate; @@ -204,11 +210,20 @@ static struct snd_pcm_hardware msm_pcm_hardware = { .rate_max = 16000, .channels_min = 1, .channels_max = 1, +#if defined(CONFIG_SEC_H_PROJECT) + .buffer_bytes_max = sizeof(struct voip_buf_node) * VOIP_MIN_Q_LEN, +#else .buffer_bytes_max = sizeof(struct voip_buf_node) * VOIP_MAX_Q_LEN, +#endif .period_bytes_min = VOIP_MIN_VOC_PKT_SIZE, .period_bytes_max = VOIP_MAX_VOC_PKT_SIZE, +#if defined(CONFIG_SEC_H_PROJECT) + .periods_min = VOIP_MIN_Q_LEN, + .periods_max = VOIP_MAX_Q_LEN, +#else .periods_min = VOIP_MAX_Q_LEN, .periods_max = VOIP_MAX_Q_LEN, +#endif .fifo_size = 0, }; @@ -317,6 +332,34 @@ static int msm_pcm_voip_probe(struct snd_soc_platform *platform) /* sample rate supported */ static unsigned int supported_sample_rates[] = {8000, 16000}; +static void voip_ssr_cb_fn(uint32_t opcode, void *private_data) +{ + + /* Notify ASoC to send next playback/Capture to unblock write/read */ + struct voip_drv_info *prtd = private_data; + + if (opcode == 0xFFFFFFFF) { + + prtd->voip_reset = true; + pr_debug("%s: Notify ASoC to send next playback/Capture\n", + __func__); + + prtd->pcm_playback_irq_pos += prtd->pcm_count; + if (prtd->state == VOIP_STARTED) + snd_pcm_period_elapsed(prtd->playback_substream); + wake_up(&prtd->out_wait); + + prtd->pcm_capture_irq_pos += prtd->pcm_capture_count; + if (prtd->state == VOIP_STARTED) + snd_pcm_period_elapsed(prtd->capture_substream); + wake_up(&prtd->in_wait); + + } else { + pr_err("%s: Invalid opcode during reset : %d\n", + __func__, opcode); + } +} + /* capture path */ static void voip_process_ul_pkt(uint8_t *voc_pkt, uint32_t pkt_len, @@ -754,10 +797,20 @@ static int msm_pcm_playback_copy(struct snd_pcm_substream *substream, int a, int count = frames_to_bytes(runtime, frames); pr_debug("%s: count = %d, frames=%d\n", __func__, count, (int)frames); + if (prtd->voip_reset) { + pr_debug("%s: RESET event happened during VoIP\n", __func__); + return -ENETRESET; + } + ret = wait_event_interruptible_timeout(prtd->in_wait, (!list_empty(&prtd->free_in_queue) || prtd->state == VOIP_STOPPED), 1 * HZ); + if (prtd->voip_reset) { + pr_debug("%s: RESET event happened during VoIP\n", __func__); + return -ENETRESET; + } + if (ret > 0) { if (count <= VOIP_MAX_VOC_PKT_SIZE) { spin_lock_irqsave(&prtd->dsp_lock, dsp_flags); @@ -807,11 +860,21 @@ static int msm_pcm_capture_copy(struct snd_pcm_substream *substream, pr_debug("%s: count = %d\n", __func__, count); + if (prtd->voip_reset) { + pr_debug("%s: RESET event happened during VoIP\n", __func__); + return -ENETRESET; + } + ret = wait_event_interruptible_timeout(prtd->out_wait, (!list_empty(&prtd->out_queue) || prtd->state == VOIP_STOPPED), 1 * HZ); + if (prtd->voip_reset) { + pr_debug("%s: RESET event happened during VoIP\n", __func__); + return -ENETRESET; + } + if (ret > 0) { if (count <= VOIP_MAX_VOC_PKT_SIZE) { @@ -842,7 +905,6 @@ static int msm_pcm_capture_copy(struct snd_pcm_substream *substream, list_add_tail(&buf_node->list, &prtd->free_out_queue); spin_unlock_irqrestore(&prtd->dsp_ul_lock, dsp_flags); - } else { pr_err("%s: Read count %d > VOIP_MAX_VOC_PKT_SIZE\n", __func__, count); @@ -902,10 +964,11 @@ static int msm_pcm_close(struct snd_pcm_substream *substream) if (!prtd->playback_instance && !prtd->capture_instance) { if (prtd->state == VOIP_STARTED) { + prtd->voip_reset = false; prtd->state = VOIP_STOPPED; voc_end_voice_call( voc_get_session_id(VOIP_SESSION_NAME)); - voc_register_mvs_cb(NULL, NULL, prtd); + voc_register_mvs_cb(NULL, NULL, NULL, prtd); } /* release all buffer */ /* release in_queue and free_in_queue */ @@ -1135,8 +1198,10 @@ static int msm_pcm_prepare(struct snd_pcm_substream *substream) goto done; } + /* Initialaizing cb variables */ voc_register_mvs_cb(voip_process_ul_pkt, - voip_process_dl_pkt, prtd); + voip_process_dl_pkt, + voip_ssr_cb_fn, prtd); ret = voc_start_voice_call( voc_get_session_id(VOIP_SESSION_NAME)); @@ -1209,11 +1274,18 @@ static int msm_pcm_hw_params(struct snd_pcm_substream *substream, struct snd_dma_buffer *dma_buf = &substream->dma_buffer; struct voip_buf_node *buf_node = NULL; int i = 0, offset = 0; - +#if defined(CONFIG_SEC_H_PROJECT) + int periods = VOIP_MIN_Q_LEN; +#endif pr_debug("%s: voip\n", __func__); mutex_lock(&voip_info.lock); +#if defined(CONFIG_SEC_H_PROJECT) + periods = params_periods(params); + pr_info("%s: periods = %d\n", __func__, periods); + runtime->hw.buffer_bytes_max = sizeof(struct voip_buf_node) * periods; +#endif dma_buf->dev.type = SNDRV_DMA_TYPE_DEV; dma_buf->dev.dev = substream->pcm->card->dev; dma_buf->private_data = NULL; @@ -1231,7 +1303,11 @@ static int msm_pcm_hw_params(struct snd_pcm_substream *substream, memset(dma_buf->area, 0, runtime->hw.buffer_bytes_max); if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { +#if defined(CONFIG_SEC_H_PROJECT) + for (i = 0; i < periods; i++) { +#else for (i = 0; i < VOIP_MAX_Q_LEN; i++) { +#endif buf_node = (void *)dma_buf->area + offset; list_add_tail(&buf_node->list, @@ -1239,7 +1315,11 @@ static int msm_pcm_hw_params(struct snd_pcm_substream *substream, offset = offset + sizeof(struct voip_buf_node); } } else { +#if defined(CONFIG_SEC_H_PROJECT) + for (i = 0; i < periods; i++) { +#else for (i = 0; i < VOIP_MAX_Q_LEN; i++) { +#endif buf_node = (void *) dma_buf->area + offset; list_add_tail(&buf_node->list, &voip_info.free_out_queue); diff --git a/sound/soc/msm/qdsp6v2/q6adm.c b/sound/soc/msm/qdsp6v2/q6adm.c index 824965f3a97c..7367a56cdcaa 100644 --- a/sound/soc/msm/qdsp6v2/q6adm.c +++ b/sound/soc/msm/qdsp6v2/q6adm.c @@ -457,9 +457,18 @@ int adm_get_params(int port_id, uint32_t module_id, uint32_t param_id, rc = -EINVAL; goto adm_get_param_return; } - if (params_data) { + if ((params_data) && (ARRAY_SIZE(adm_get_parameters) >= + (1+adm_get_parameters[0])) && + (params_length/sizeof(int) >= + adm_get_parameters[0])) { for (i = 0; i < adm_get_parameters[0]; i++) params_data[i] = adm_get_parameters[1+i]; + } else { + pr_err("%s: Get param data not copied! get_param array size %zd, index %d, params array size %zd, index %d\n", + __func__, ARRAY_SIZE(adm_get_parameters), + (1+adm_get_parameters[0]), + params_length/sizeof(int), + adm_get_parameters[0]); } rc = 0; adm_get_param_return: @@ -654,13 +663,24 @@ static int32_t adm_callback(struct apr_client_data *data, void *priv) data->payload_size)) break; - if (data->payload_size > (4 * sizeof(uint32_t))) { + /* payload[3] is the param size, check if payload */ + /* is big enough and has a valid param size */ + if ((payload[0] == 0) && (data->payload_size > + (4 * sizeof(*payload))) && + (data->payload_size/sizeof(*payload)-4 >= + payload[3]) && + (ARRAY_SIZE(adm_get_parameters)-1 >= + payload[3])) { adm_get_parameters[0] = payload[3]; - pr_debug("GET_PP PARAM:received parameter length: %x\n", - adm_get_parameters[0]); + pr_debug("%s: GET_PP PARAM:received parameter length: 0x%x\n", + __func__, adm_get_parameters[0]); /* storing param size then params */ for (i = 0; i < payload[3]; i++) adm_get_parameters[1+i] = payload[4+i]; + } else { + adm_get_parameters[0] = -1; + pr_err("%s: GET_PP_PARAMS failed, setting size to %d\n", + __func__, adm_get_parameters[0]); } atomic_set(&this_adm.copp_stat[index], 1); wake_up(&this_adm.wait[index]); diff --git a/sound/soc/msm/qdsp6v2/q6afe.c b/sound/soc/msm/qdsp6v2/q6afe.c index d1cdab51fbed..4c817d780198 100644 --- a/sound/soc/msm/qdsp6v2/q6afe.c +++ b/sound/soc/msm/qdsp6v2/q6afe.c @@ -53,6 +53,7 @@ struct afe_ctl { u16 dtmf_gen_rx_portid; struct afe_spkr_prot_calib_get_resp calib_data; int vi_tx_port; + int vi_rx_port; uint32_t afe_sample_rates[AFE_MAX_PORTS]; struct aanc_data aanc_info; struct mutex afe_cmd_lock; @@ -501,7 +502,7 @@ int afe_unmap_cal_blocks(void) return result; } -static int afe_spk_prot_prepare(int port, int param_id, +static int afe_spk_prot_prepare(int src_port, int dst_port, int param_id, union afe_spkr_prot_config *prot_config) { int ret = -EINVAL; @@ -513,17 +514,28 @@ static int afe_spk_prot_prepare(int port, int param_id, pr_err("%s Invalid params\n", __func__); goto fail_cmd; } - if ((q6audio_validate_port(port) < 0)) { - pr_err("%s invalid port %d", __func__, port); + ret = q6audio_validate_port(src_port); + if (ret < 0) { + pr_err("%s: Invalid src port 0x%x ret %d", + __func__, src_port, ret); + ret = -EINVAL; goto fail_cmd; } - index = q6audio_get_port_index(port); + ret = q6audio_validate_port(dst_port); + if (ret < 0) { + pr_err("%s: Invalid dst port 0x%x ret %d", __func__, + dst_port, ret); + ret = -EINVAL; + goto fail_cmd; + } + index = q6audio_get_port_index(src_port); switch (param_id) { case AFE_PARAM_ID_FBSP_MODE_RX_CFG: config.pdata.module_id = AFE_MODULE_FB_SPKR_PROT_RX; break; case AFE_PARAM_ID_FEEDBACK_PATH_CFG: - this_afe.vi_tx_port = port; + this_afe.vi_tx_port = src_port; + this_afe.vi_rx_port = dst_port; case AFE_PARAM_ID_SPKR_CALIB_VI_PROC_CFG: case AFE_PARAM_ID_MODE_VI_PROC_CFG: config.pdata.module_id = AFE_MODULE_FB_SPKR_PROT_VI_PROC; @@ -541,7 +553,7 @@ static int afe_spk_prot_prepare(int port, int param_id, config.hdr.token = index; config.hdr.opcode = AFE_PORT_CMD_SET_PARAM_V2; - config.param.port_id = q6audio_get_port_id(port); + config.param.port_id = q6audio_get_port_id(src_port); config.param.payload_size = sizeof(config) - sizeof(config.hdr) - sizeof(config.param); config.pdata.param_id = param_id; @@ -550,8 +562,8 @@ static int afe_spk_prot_prepare(int port, int param_id, atomic_set(&this_afe.state, 1); ret = apr_send_pkt(this_afe.apr, (uint32_t *) &config); if (ret < 0) { - pr_err("%s: Setting param for port %d param[0x%x]failed\n", - __func__, port, param_id); + pr_err("%s: port = 0x%x param = 0x%x failed %d\n", + __func__, src_port, param_id, ret); goto fail_cmd; } ret = wait_event_timeout(this_afe.wait[index], @@ -569,8 +581,8 @@ static int afe_spk_prot_prepare(int port, int param_id, } ret = 0; fail_cmd: - pr_debug("%s config.pdata.param_id %x status %d\n", - __func__, config.pdata.param_id, ret); + pr_debug("%s: config.pdata.param_id 0x%x status %d 0x%x\n", + __func__, config.pdata.param_id, ret, src_port); return ret; } @@ -591,7 +603,7 @@ static void afe_send_cal_spkr_prot_tx(int port_id) else afe_spk_config.mode_rx_cfg.mode = Q6AFE_MSM_SPKR_PROCESSING; - if (afe_spk_prot_prepare(port_id, + if (afe_spk_prot_prepare(port_id, 0, AFE_PARAM_ID_MODE_VI_PROC_CFG, &afe_spk_config)) pr_err("%s TX VI_PROC_CFG failed\n", __func__); @@ -601,7 +613,7 @@ static void afe_send_cal_spkr_prot_tx(int port_id) (uint32_t) prot_cfg.r0; afe_spk_config.vi_proc_cfg.t0_cali_q6 = (uint32_t) prot_cfg.t0; - if (afe_spk_prot_prepare(port_id, + if (afe_spk_prot_prepare(port_id, 0, AFE_PARAM_ID_SPKR_CALIB_VI_PROC_CFG, &afe_spk_config)) pr_err("%s SPKR_CALIB_VI_PROC_CFG failed\n", @@ -618,7 +630,8 @@ static void afe_send_cal_spkr_prot_rx(int port_id) /*Get spkr protection cfg data*/ get_spk_protection_cfg(&prot_cfg); - if (prot_cfg.mode != MSM_SPKR_PROT_DISABLED) { + if ((prot_cfg.mode != MSM_SPKR_PROT_DISABLED) && + (this_afe.vi_rx_port == port_id)) { if (prot_cfg.mode == MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS) afe_spk_config.mode_rx_cfg.mode = Q6AFE_MSM_SPKR_CALIBRATION; @@ -626,7 +639,7 @@ static void afe_send_cal_spkr_prot_rx(int port_id) afe_spk_config.mode_rx_cfg.mode = Q6AFE_MSM_SPKR_PROCESSING; afe_spk_config.mode_rx_cfg.minor_version = 1; - if (afe_spk_prot_prepare(port_id, + if (afe_spk_prot_prepare(port_id, 0, AFE_PARAM_ID_FBSP_MODE_RX_CFG, &afe_spk_config)) pr_err("%s RX MODE_VI_PROC_CFG failed\n", @@ -702,7 +715,7 @@ static int afe_send_hw_delay(u16 port_id, u32 rate) void afe_send_cal(u16 port_id) { - pr_debug("%s\n", __func__); + pr_debug("%s: port_id=0x%x\n", __func__, port_id); if (afe_get_port_type(port_id) == MSM_AFE_PORT_TYPE_TX) { afe_send_cal_spkr_prot_tx(port_id); @@ -1492,6 +1505,7 @@ int afe_get_port_index(u16 port_id) case SLIMBUS_2_RX: return IDX_SLIMBUS_2_RX; case SLIMBUS_2_TX: return IDX_SLIMBUS_2_TX; case SLIMBUS_3_RX: return IDX_SLIMBUS_3_RX; + case SLIMBUS_3_TX: return IDX_SLIMBUS_3_TX; case INT_BT_SCO_RX: return IDX_INT_BT_SCO_RX; case INT_BT_SCO_TX: return IDX_INT_BT_SCO_TX; case INT_BT_A2DP_RX: return IDX_INT_BT_A2DP_RX; @@ -2592,7 +2606,7 @@ static ssize_t afe_debug_write(struct file *filp, goto afe_error; } - if (param[1] < 0 || param[1] > 100) { + if (param[1] > 100) { pr_err("%s: Error, volume shoud be 0 to 100 percentage param = %lu\n", __func__, param[1]); rc = -EINVAL; @@ -2911,8 +2925,9 @@ int afe_close(int port_id) __func__, pcm_afe_instance[port_id & 0x1]); port_id = VIRTUAL_ID_TO_PORTID(port_id); pcm_afe_instance[port_id & 0x1]--; - if (!(pcm_afe_instance[port_id & 0x1] == 0 && - proxy_afe_instance[port_id & 0x1] == 0)) + if ((!(pcm_afe_instance[port_id & 0x1] == 0 && + proxy_afe_instance[port_id & 0x1] == 0)) || + afe_close_done[port_id & 0x1] == true) return 0; else afe_close_done[port_id & 0x1] = true; @@ -2924,8 +2939,9 @@ int afe_close(int port_id) __func__, proxy_afe_instance[port_id & 0x1]); port_id = VIRTUAL_ID_TO_PORTID(port_id); proxy_afe_instance[port_id & 0x1]--; - if (!(pcm_afe_instance[port_id & 0x1] == 0 && - proxy_afe_instance[port_id & 0x1] == 0)) + if ((!(pcm_afe_instance[port_id & 0x1] == 0 && + proxy_afe_instance[port_id & 0x1] == 0)) || + afe_close_done[port_id & 0x1] == true) return 0; else afe_close_done[port_id & 0x1] = true; @@ -3231,6 +3247,7 @@ int afe_spk_prot_feed_back_cfg(int src_port, int dst_port, if (!enable) { pr_debug("%s Disable Feedback tx path", __func__); this_afe.vi_tx_port = -1; + this_afe.vi_rx_port = -1; return 0; } @@ -3259,7 +3276,7 @@ int afe_spk_prot_feed_back_cfg(int src_port, int dst_port, } prot_config.feedback_path_cfg.num_channels = index; prot_config.feedback_path_cfg.minor_version = 1; - ret = afe_spk_prot_prepare(src_port, + ret = afe_spk_prot_prepare(src_port, dst_port, AFE_PARAM_ID_FEEDBACK_PATH_CFG, &prot_config); fail_cmd: return ret; @@ -3275,7 +3292,9 @@ static int __init afe_init(void) this_afe.dtmf_gen_rx_portid = -1; this_afe.mmap_handle = 0; this_afe.vi_tx_port = -1; + this_afe.vi_rx_port = -1; mutex_init(&this_afe.afe_cmd_lock); + for (i = 0; i < AFE_MAX_PORTS; i++) init_waitqueue_head(&this_afe.wait[i]); diff --git a/sound/soc/msm/qdsp6v2/q6asm.c b/sound/soc/msm/qdsp6v2/q6asm.c index 73b458e9d915..b656be7411da 100644 --- a/sound/soc/msm/qdsp6v2/q6asm.c +++ b/sound/soc/msm/qdsp6v2/q6asm.c @@ -444,7 +444,7 @@ void send_asm_custom_topology(struct audio_client *ac) q6asm_add_hdr_custom_topology(ac, &asm_top.hdr, APR_PKT_SIZE(APR_HDR_SIZE, sizeof(asm_top)), TRUE); - atomic_set(&ac->cmd_state, 1); + atomic_set(&ac->mem_state, 1); asm_top.hdr.opcode = ASM_CMD_ADD_TOPOLOGIES; asm_top.payload_addr_lsw = cal_block.cal_paddr; asm_top.payload_addr_msw = 0; @@ -462,8 +462,8 @@ void send_asm_custom_topology(struct audio_client *ac) goto err_unmap; } - result = wait_event_timeout(ac->cmd_wait, - (atomic_read(&ac->cmd_state) == 0), 5*HZ); + result = wait_event_timeout(ac->mem_wait, + (atomic_read(&ac->mem_state) == 0), 5*HZ); if (!result) { pr_err("%s: Set topologies failed after timedout payload = 0x%x\n", __func__, cal_block.cal_paddr); @@ -675,7 +675,7 @@ int q6asm_audio_client_buf_free(unsigned int dir, while (cnt >= 0) { if (port->buf[cnt].data) { - if (!rc) + if (!rc || atomic_read(&ac->reset)) msm_audio_ion_free( port->buf[cnt].client, port->buf[cnt].handle); @@ -725,7 +725,7 @@ int q6asm_audio_client_buf_free_contiguous(unsigned int dir, (void *)&port->buf[0].phys, (void *)port->buf[0].client, (void *)port->buf[0].handle); - if (!rc) + if (!rc || atomic_read(&ac->reset)) msm_audio_ion_free(port->buf[0].client, port->buf[0].handle); port->buf[0].client = NULL; @@ -883,7 +883,9 @@ struct audio_client *q6asm_audio_client_alloc(app_cb cb, void *priv) init_waitqueue_head(&ac->cmd_wait); init_waitqueue_head(&ac->time_wait); + init_waitqueue_head(&ac->mem_wait); atomic_set(&ac->time_flag, 1); + atomic_set(&ac->reset, 0); INIT_LIST_HEAD(&ac->port[0].mem_map_handle); INIT_LIST_HEAD(&ac->port[1].mem_map_handle); pr_debug("%s: mem_map_handle list init'ed\n", __func__); @@ -894,6 +896,7 @@ struct audio_client *q6asm_audio_client_alloc(app_cb cb, void *priv) } atomic_set(&ac->cmd_state, 0); atomic_set(&ac->nowait_cmd_cnt, 0); + atomic_set(&ac->mem_state, 0); send_asm_custom_topology(ac); @@ -1121,11 +1124,7 @@ static int32_t q6asm_srvc_callback(struct apr_client_data *data, void *priv) payload = data->payload; if (data->opcode == RESET_EVENTS) { - struct audio_client *ac_mmap = (struct audio_client *)priv; - if (ac_mmap == NULL) { - pr_err("%s ac or priv NULL\n", __func__); - return -EINVAL; - } + pr_debug("%s: Reset event is received: %d %d apr[%p]\n", __func__, data->reset_event, @@ -1148,7 +1147,6 @@ static int32_t q6asm_srvc_callback(struct apr_client_data *data, void *priv) pr_debug("%s:Clearing custom topology\n", __func__); } this_mmap.apr = NULL; - ac_mmap->mmap_apr = NULL; for (; i <= OUT; i++) { list_for_each_safe(ptr, next, &common_client.port[i].mem_map_handle) { @@ -1198,10 +1196,8 @@ static int32_t q6asm_srvc_callback(struct apr_client_data *data, void *priv) atomic_set(&ac->unmap_cb_success, 1); } - if (atomic_read(&ac->cmd_state)) { - atomic_set(&ac->cmd_state, 0); - wake_up(&ac->cmd_wait); - } + if (atomic_cmpxchg(&ac->mem_state, 1, 0)) + wake_up(&ac->mem_wait); pr_debug("%s:Payload = [0x%x] status[0x%x]\n", __func__, payload[0], payload[1]); break; @@ -1221,10 +1217,9 @@ static int32_t q6asm_srvc_callback(struct apr_client_data *data, void *priv) pr_debug("%s:PL#0[0x%x]PL#1 [0x%x] dir=%x s_id=%x\n", __func__, payload[0], payload[1], dir, sid); spin_lock_irqsave(&port->dsp_lock, dsp_flags); - if (atomic_read(&ac->cmd_state)) { + if (atomic_cmpxchg(&ac->mem_state, 1, 0)) { ac->port[dir].tmp_hdl = payload[0]; - atomic_set(&ac->cmd_state, 0); - wake_up(&ac->cmd_wait); + wake_up(&ac->mem_wait); } spin_unlock_irqrestore(&port->dsp_lock, dsp_flags); break; @@ -1233,10 +1228,8 @@ static int32_t q6asm_srvc_callback(struct apr_client_data *data, void *priv) pr_debug("%s:PL#0[0x%x]PL#1 [0x%x]\n", __func__, payload[0], payload[1]); spin_lock_irqsave(&port->dsp_lock, dsp_flags); - if (atomic_read(&ac->cmd_state)) { - atomic_set(&ac->cmd_state, 0); - wake_up(&ac->cmd_wait); - } + if (atomic_cmpxchg(&ac->mem_state, 1, 0)) + wake_up(&ac->mem_wait); spin_unlock_irqrestore(&port->dsp_lock, dsp_flags); break; @@ -1303,23 +1296,20 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv) } if (data->opcode == RESET_EVENTS) { - if(ac->apr == NULL) { - ac->apr = ac->apr2; - } + atomic_set(&ac->reset, 1); + if (ac->apr == NULL) + ac->apr = ac->apr2; pr_debug("q6asm_callback: Reset event is received: %d %d apr[%p]\n", data->reset_event, data->reset_proc, ac->apr); - if (ac->cb) - ac->cb(data->opcode, data->token, - (uint32_t *)data->payload, ac->priv); - apr_reset(ac->apr); if (ac->cb) ac->cb(data->opcode, data->token, - data->payload, ac->priv); + (uint32_t *)data->payload, ac->priv); + apr_reset(ac->apr); + ac->apr = NULL; atomic_set(&ac->time_flag, 0); atomic_set(&ac->cmd_state, 0); wake_up(&ac->time_wait); wake_up(&ac->cmd_wait); - ac->apr = NULL; return 0; } @@ -1356,14 +1346,13 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv) ret = q6asm_is_valid_session(data, priv); if (ret != 0) return ret; - + case ASM_SESSION_CMD_SET_MTMX_STRTR_PARAMS_V2: case ASM_STREAM_CMD_OPEN_READ_V3: case ASM_STREAM_CMD_OPEN_WRITE_V3: case ASM_STREAM_CMD_OPEN_READWRITE_V2: case ASM_STREAM_CMD_OPEN_LOOPBACK_V2: case ASM_DATA_CMD_MEDIA_FMT_UPDATE_V2: case ASM_STREAM_CMD_SET_ENCDEC_PARAM: - case ASM_CMD_ADD_TOPOLOGIES: case ASM_DATA_CMD_REMOVE_INITIAL_SILENCE: case ASM_DATA_CMD_REMOVE_TRAILING_SILENCE: case ASM_SESSION_CMD_REGISTER_FOR_RX_UNDERFLOW_EVENTS: @@ -1377,6 +1366,17 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv) ac->cb(data->opcode, data->token, (uint32_t *)data->payload, ac->priv); break; + case ASM_CMD_ADD_TOPOLOGIES: + pr_debug("%s:Payload = [0x%x]stat[0x%x]\n", + __func__, payload[0], payload[1]); + if (atomic_read(&ac->mem_state) && wakeup_flag) { + atomic_set(&ac->mem_state, 0); + wake_up(&ac->mem_wait); + } + if (ac->cb) + ac->cb(data->opcode, data->token, + (uint32_t *)data->payload, ac->priv); + break; case ASM_STREAM_CMD_GET_PP_PARAMS_V2: pr_debug("%s: ASM_STREAM_CMD_GET_PP_PARAMS_V2\n", __func__); @@ -3219,7 +3219,7 @@ int q6asm_memory_map(struct audio_client *ac, uint32_t buf_add, int dir, mmap_region_cmd; q6asm_add_mmaphdr(ac, &mmap_regions->hdr, cmd_size, TRUE, ((ac->session << 8) | dir)); - atomic_set(&ac->cmd_state, 1); + atomic_set(&ac->mem_state, 1); mmap_regions->hdr.opcode = ASM_CMD_SHARED_MEM_MAP_REGIONS; mmap_regions->mem_pool_id = ADSP_MEMORY_MAP_SHMEM8_4K_POOL; mmap_regions->num_regions = bufcnt & 0x00ff; @@ -3246,8 +3246,8 @@ int q6asm_memory_map(struct audio_client *ac, uint32_t buf_add, int dir, goto fail_cmd; } - rc = wait_event_timeout(ac->cmd_wait, - (atomic_read(&ac->cmd_state) == 0 && + rc = wait_event_timeout(ac->mem_wait, + (atomic_read(&ac->mem_state) == 0 && ac->port[dir].tmp_hdl), 5*HZ); if (!rc) { pr_err("timeout. waited for memory_map\n"); @@ -3283,7 +3283,7 @@ int q6asm_memory_unmap(struct audio_client *ac, uint32_t buf_add, int dir) q6asm_add_mmaphdr(ac, &mem_unmap.hdr, sizeof(struct avs_cmd_shared_mem_unmap_regions), TRUE, ((ac->session << 8) | dir)); - atomic_set(&ac->cmd_state, 1); + atomic_set(&ac->mem_state, 1); mem_unmap.hdr.opcode = ASM_CMD_SHARED_MEM_UNMAP_REGIONS; mem_unmap.mem_map_handle = 0; list_for_each_safe(ptr, next, &ac->port[dir].mem_map_handle) { @@ -3311,8 +3311,8 @@ int q6asm_memory_unmap(struct audio_client *ac, uint32_t buf_add, int dir) goto fail_cmd; } - rc = wait_event_timeout(ac->cmd_wait, - (atomic_read(&ac->cmd_state) == 0), 5 * HZ); + rc = wait_event_timeout(ac->mem_wait, + (atomic_read(&ac->mem_state) == 0), 5 * HZ); if (!rc) { pr_err("%s timeout. waited for memory_unmap of handle 0x%x\n", __func__, mem_unmap.mem_map_handle); @@ -3394,7 +3394,7 @@ static int q6asm_memory_map_regions(struct audio_client *ac, int dir, mmap_region_cmd; q6asm_add_mmaphdr(ac, &mmap_regions->hdr, cmd_size, TRUE, ((ac->session << 8) | dir)); - atomic_set(&ac->cmd_state, 1); + atomic_set(&ac->mem_state, 1); pr_debug("mmap_region=0x%p token=0x%x\n", mmap_regions, ((ac->session << 8) | dir)); @@ -3427,8 +3427,8 @@ static int q6asm_memory_map_regions(struct audio_client *ac, int dir, goto fail_cmd; } - rc = wait_event_timeout(ac->cmd_wait, - (atomic_read(&ac->cmd_state) == 0) + rc = wait_event_timeout(ac->mem_wait, + (atomic_read(&ac->mem_state) == 0) , 5*HZ); if (!rc) { pr_err("timeout. waited for memory_map\n"); @@ -3476,7 +3476,7 @@ static int q6asm_memory_unmap_regions(struct audio_client *ac, int dir) cmd_size = sizeof(struct avs_cmd_shared_mem_unmap_regions); q6asm_add_mmaphdr(ac, &mem_unmap.hdr, cmd_size, TRUE, ((ac->session << 8) | dir)); - atomic_set(&ac->cmd_state, 1); + atomic_set(&ac->mem_state, 1); port = &ac->port[dir]; buf_add = (uint32_t)port->buf->phys; mem_unmap.hdr.opcode = ASM_CMD_SHARED_MEM_UNMAP_REGIONS; @@ -3506,8 +3506,8 @@ static int q6asm_memory_unmap_regions(struct audio_client *ac, int dir) goto fail_cmd; } - rc = wait_event_timeout(ac->cmd_wait, - (atomic_read(&ac->cmd_state) == 0), 5*HZ); + rc = wait_event_timeout(ac->mem_wait, + (atomic_read(&ac->mem_state) == 0), 5*HZ); if (!rc) { pr_err("%s timeout. waited for memory_unmap of handle 0x%x\n", __func__, mem_unmap.mem_map_handle); @@ -4602,6 +4602,69 @@ int q6asm_send_audio_effects_params(struct audio_client *ac, char *params, return rc; } +int q6asm_send_mtmx_strtr_window(struct audio_client *ac, + struct asm_session_mtmx_strtr_param_window_v2_t *window_param, + uint32_t param_id) +{ + struct asm_mtmx_strtr_params matrix; + int sz = 0; + int rc = 0; + + pr_debug("%s: Window lsw is %d, window msw is %d\n", __func__, + window_param->window_lsw, window_param->window_msw); + + if (!ac) { + pr_err("%s: audio client handle is NULL\n", __func__); + rc = -EINVAL; + goto fail_cmd; + } + + if (ac->apr == NULL) { + pr_err("%s: ac->apr is NULL", __func__); + rc = -EINVAL; + goto fail_cmd; + } + + sz = sizeof(struct asm_mtmx_strtr_params); + q6asm_add_hdr(ac, &matrix.hdr, sz, TRUE); + atomic_set(&ac->cmd_state, 1); + matrix.hdr.opcode = ASM_SESSION_CMD_SET_MTMX_STRTR_PARAMS_V2; + + matrix.param.data_payload_addr_lsw = 0; + matrix.param.data_payload_addr_msw = 0; + matrix.param.mem_map_handle = 0; + matrix.param.data_payload_size = sizeof(matrix) - + sizeof(matrix.hdr) - sizeof(matrix.param); + matrix.param.direction = 0; /* RX */ + matrix.data.module_id = ASM_SESSION_MTMX_STRTR_MODULE_ID_AVSYNC; + matrix.data.param_id = param_id; + matrix.data.param_size = matrix.param.data_payload_size - + sizeof(matrix.data); + matrix.data.reserved = 0; + matrix.window_lsw = window_param->window_lsw; + matrix.window_msw = window_param->window_msw; + + rc = apr_send_pkt(ac->apr, (uint32_t *) &matrix); + if (rc < 0) { + pr_err("%s: Render window start send failed paramid [0x%x]\n", + __func__, matrix.data.param_id); + rc = -EINVAL; + goto fail_cmd; + } + + rc = wait_event_timeout(ac->cmd_wait, + (atomic_read(&ac->cmd_state) <= 0), 5*HZ); + if (!rc) { + pr_err("%s: timeout, Render window start paramid[0x%x]\n", + __func__, matrix.data.param_id); + rc = -EINVAL; + goto fail_cmd; + } + rc = 0; +fail_cmd: + return rc; +}; + static int __q6asm_cmd(struct audio_client *ac, int cmd, uint32_t stream_id) { struct apr_hdr hdr; @@ -4989,6 +5052,7 @@ static int __init q6asm_init(void) common_client.port[1].buf = &common_buf[1]; init_waitqueue_head(&common_client.cmd_wait); init_waitqueue_head(&common_client.time_wait); + init_waitqueue_head(&common_client.mem_wait); atomic_set(&common_client.time_flag, 1); INIT_LIST_HEAD(&common_client.port[0].mem_map_handle); INIT_LIST_HEAD(&common_client.port[1].mem_map_handle); @@ -4999,6 +5063,7 @@ static int __init q6asm_init(void) } atomic_set(&common_client.cmd_state, 0); atomic_set(&common_client.nowait_cmd_cnt, 0); + atomic_set(&common_client.mem_state, 0); config_debug_fs_init(); diff --git a/sound/soc/msm/qdsp6v2/q6audio-v2.c b/sound/soc/msm/qdsp6v2/q6audio-v2.c index ebf6eb2c6feb..1d12bc463beb 100644 --- a/sound/soc/msm/qdsp6v2/q6audio-v2.c +++ b/sound/soc/msm/qdsp6v2/q6audio-v2.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -80,6 +80,67 @@ int q6audio_get_port_index(u16 port_id) } } +int q6audio_get_port_id_from_index(u16 port_idx) +{ + switch (port_idx) { + case IDX_PRIMARY_I2S_RX: return PRIMARY_I2S_RX; + case IDX_PRIMARY_I2S_TX: return PRIMARY_I2S_TX; + case IDX_AFE_PORT_ID_PRIMARY_PCM_RX: + return AFE_PORT_ID_PRIMARY_PCM_RX; + case IDX_AFE_PORT_ID_PRIMARY_PCM_TX: + return AFE_PORT_ID_PRIMARY_PCM_TX; + case IDX_AFE_PORT_ID_SECONDARY_PCM_RX: + return AFE_PORT_ID_SECONDARY_PCM_RX; + case IDX_AFE_PORT_ID_SECONDARY_PCM_TX: + return AFE_PORT_ID_SECONDARY_PCM_TX; + case IDX_SECONDARY_I2S_RX: return SECONDARY_I2S_RX; + case IDX_SECONDARY_I2S_TX: return SECONDARY_I2S_TX; + case IDX_MI2S_RX: return MI2S_RX; + case IDX_MI2S_TX: return MI2S_TX; + case IDX_HDMI_RX: return HDMI_RX; + case IDX_RSVD_2: return RSVD_2; + case IDX_RSVD_3: return RSVD_3; + case IDX_DIGI_MIC_TX: return DIGI_MIC_TX; + case IDX_VOICE_RECORD_RX: return VOICE_RECORD_RX; + case IDX_VOICE_RECORD_TX: return VOICE_RECORD_TX; + case IDX_VOICE_PLAYBACK_TX: return VOICE_PLAYBACK_TX; + case IDX_VOICE2_PLAYBACK_TX: return VOICE2_PLAYBACK_TX; + case IDX_SLIMBUS_0_RX: return SLIMBUS_0_RX; + case IDX_SLIMBUS_0_TX: return SLIMBUS_0_TX; + case IDX_SLIMBUS_1_RX: return SLIMBUS_1_RX; + case IDX_SLIMBUS_1_TX: return SLIMBUS_1_TX; + case IDX_SLIMBUS_2_RX: return SLIMBUS_2_RX; + case IDX_SLIMBUS_2_TX: return SLIMBUS_2_TX; + case IDX_SLIMBUS_4_TX: return SLIMBUS_4_TX; + case IDX_SLIMBUS_5_TX: return SLIMBUS_5_TX; + case IDX_INT_BT_SCO_RX: return INT_BT_SCO_RX; + case IDX_INT_BT_SCO_TX: return INT_BT_SCO_TX; + case IDX_INT_BT_A2DP_RX: return INT_BT_A2DP_RX; + case IDX_INT_FM_RX: return INT_FM_RX; + case IDX_INT_FM_TX: return INT_FM_TX; + case IDX_RT_PROXY_PORT_001_RX: return RT_PROXY_PORT_001_RX; + case IDX_RT_PROXY_PORT_001_TX: return RT_PROXY_PORT_001_TX; + case IDX_AFE_PORT_ID_PRIMARY_MI2S_RX: + return AFE_PORT_ID_PRIMARY_MI2S_RX; + case IDX_AFE_PORT_ID_PRIMARY_MI2S_TX: + return AFE_PORT_ID_PRIMARY_MI2S_TX; + case IDX_AFE_PORT_ID_QUATERNARY_MI2S_RX: + return AFE_PORT_ID_QUATERNARY_MI2S_RX; + case IDX_AFE_PORT_ID_QUATERNARY_MI2S_TX: + return AFE_PORT_ID_QUATERNARY_MI2S_TX; + case IDX_AFE_PORT_ID_SECONDARY_MI2S_RX: + return AFE_PORT_ID_SECONDARY_MI2S_RX; + case IDX_AFE_PORT_ID_SECONDARY_MI2S_TX: + return AFE_PORT_ID_SECONDARY_MI2S_TX; + case IDX_AFE_PORT_ID_TERTIARY_MI2S_RX: + return AFE_PORT_ID_TERTIARY_MI2S_RX; + case IDX_AFE_PORT_ID_TERTIARY_MI2S_TX: + return AFE_PORT_ID_TERTIARY_MI2S_TX; + + default: return -EINVAL; + } +} + int q6audio_get_port_id(u16 port_id) { switch (port_id) { diff --git a/sound/soc/msm/qdsp6v2/q6core.c b/sound/soc/msm/qdsp6v2/q6core.c index 494745429169..7e55463b8405 100644 --- a/sound/soc/msm/qdsp6v2/q6core.c +++ b/sound/soc/msm/qdsp6v2/q6core.c @@ -20,8 +20,8 @@ #include #include #include -#include "q6core.h" #include +#include #define TIMEOUT_MS 1000 diff --git a/sound/soc/msm/qdsp6v2/q6lsm.c b/sound/soc/msm/qdsp6v2/q6lsm.c index 9e8a0b898d7c..ce8b6944d877 100644 --- a/sound/soc/msm/qdsp6v2/q6lsm.c +++ b/sound/soc/msm/qdsp6v2/q6lsm.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Linux Foundation. All rights reserved. + * Copyright (c) 2013-2014, 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 @@ -25,15 +25,16 @@ #include #include #include +#include #include #include #include #include #include "audio_acdb.h" -#include "q6core.h" #define APR_TIMEOUT (5 * HZ) #define LSM_CAL_SIZE 4096 +#define LSM_ALIGN_BOUNDARY 512 enum { CMD_STATE_CLEARED = 0, @@ -47,13 +48,11 @@ enum { LSM_CONTROL_SESSION = 0x0F, }; +#define CHECK_SESSION(x) (x < LSM_MIN_SESSION_ID || x > LSM_MAX_SESSION_ID) struct lsm_common { void *apr; atomic_t apr_users; - uint32_t lsm_cal_addr; - uint32_t lsm_cal_size; - uint32_t mmap_handle_for_cal; - struct lsm_client common_client; + struct lsm_client common_client[LSM_MAX_SESSION_ID + 1]; struct mutex apr_lock; }; @@ -92,9 +91,9 @@ static int q6lsm_callback(struct apr_client_data *data, void *priv) } payload = data->payload; - pr_debug("%s: Session %d opcode 0x%x token 0x%x payload size %d\n", - __func__, client->session, - data->opcode, data->token, data->payload_size); + pr_debug("%s: Session %d opcode 0x%x token 0x%x payload size %d\n" + "payload [0] = %x\n", __func__, client->session, + data->opcode, data->token, data->payload_size, payload[0]); if (data->opcode == APR_BASIC_RSP_RESULT) { token = data->token; @@ -149,13 +148,13 @@ static int q6lsm_session_alloc(struct lsm_client *client) } } spin_unlock_irqrestore(&lsm_session_lock, flags); + pr_debug("%s: Alloc Session %d", __func__, n); return ret; } static void q6lsm_session_free(struct lsm_client *client) { unsigned long flags; - pr_debug("%s: Freeing session ID %d\n", __func__, client->session); spin_lock_irqsave(&lsm_session_lock, flags); lsm_session[client->session] = LSM_INVALID_SESSION_ID; @@ -206,13 +205,18 @@ struct lsm_client *q6lsm_client_alloc(lsm_app_cb cb, void *priv) kfree(client); return NULL; } - - pr_debug("%s: New client session %d\n", __func__, client->session); client->session = n; client->cb = cb; client->priv = priv; + pr_debug("%s:Client session %d\n", __func__, client->session); + if (CHECK_SESSION(client->session)) { + kfree(client); + return NULL; + } + pr_debug("%s:Client Session %d\n", __func__, client->session); client->apr = apr_register("ADSP", "LSM", q6lsm_callback, - ((client->session) << 8 | 0x0001), client); + ((client->session) << 8 | client->session), + client); if (client->apr == NULL) { pr_err("%s: Registration with APR failed\n", __func__); @@ -238,9 +242,12 @@ struct lsm_client *q6lsm_client_alloc(lsm_app_cb cb, void *priv) void q6lsm_client_free(struct lsm_client *client) { - if (!client || !client->session) + if (!client) return; - + if (CHECK_SESSION(client->session)) { + pr_err("%s: Invalid Session %d", __func__, client->session); + return; + } apr_deregister(client->apr); client->mmap_apr = NULL; q6lsm_session_free(client); @@ -307,8 +314,8 @@ static void q6lsm_add_hdr(struct lsm_client *client, struct apr_hdr *hdr, hdr->src_domain = APR_DOMAIN_APPS; hdr->dest_svc = APR_SVC_LSM; hdr->dest_domain = APR_DOMAIN_ADSP; - hdr->src_port = ((client->session << 8) & 0xFF00) | 0x01; - hdr->dest_port = ((client->session << 8) & 0xFF00) | 0x01; + hdr->src_port = ((client->session << 8) & 0xFF00) | client->session; + hdr->dest_port = ((client->session << 8) & 0xFF00) | client->session; hdr->pkt_size = pkt_size; if (cmd_flg) hdr->token = client->session; @@ -330,7 +337,7 @@ int q6lsm_open(struct lsm_client *client) if (rc) pr_err("%s: Open failed opcode 0x%x, rc %d\n", __func__, open.hdr.opcode, rc); - + pr_debug("%s: leave %d\n", __func__, rc); return rc; } @@ -428,15 +435,15 @@ int q6lsm_register_sound_model(struct lsm_client *client, q6lsm_add_hdr(client, &cmd.hdr, sizeof(cmd), true); cmd.hdr.opcode = LSM_SESSION_CMD_REGISTER_SOUND_MODEL; - cmd.model_addr_lsw = client->sound_model.phys; - cmd.model_addr_msw = 0; + cmd.model_addr_lsw = lower_32_bits(client->sound_model.phys); + cmd.model_addr_msw = upper_32_bits(client->sound_model.phys); cmd.model_size = client->sound_model.size; /* read updated mem_map_handle by q6lsm_mmapcallback */ rmb(); cmd.mem_map_handle = client->sound_model.mem_map_handle; - pr_debug("%s: lsw %x, size %d, handle %x\n", __func__, - cmd.model_addr_lsw, cmd.model_size, cmd.mem_map_handle); + pr_debug("%s: addr %pa, size %d, handle %x\n", __func__, + &client->sound_model.phys, cmd.model_size, cmd.mem_map_handle); rc = q6lsm_apr_send_pkt(client, client->apr, &cmd, true, NULL); if (rc) pr_err("%s: Failed cmd op[0x%x]rc[%d]\n", __func__, @@ -457,6 +464,8 @@ int q6lsm_deregister_sound_model(struct lsm_client *client) return -EINVAL; } pr_debug("%s: session[%d]", __func__, client->session); + if (CHECK_SESSION(client->session)) + return -EINVAL; memset(&cmd, 0, sizeof(cmd)); q6lsm_add_hdr(client, &cmd.hdr, sizeof(cmd.hdr), false); @@ -491,7 +500,7 @@ static void q6lsm_add_mmaphdr(struct lsm_client *client, struct apr_hdr *hdr, } static int q6lsm_memory_map_regions(struct lsm_client *client, - uint32_t dma_addr_p, uint32_t dma_buf_sz, + dma_addr_t dma_addr_p, uint32_t dma_buf_sz, uint32_t *mmap_p) { struct avs_cmd_shared_mem_map_regions *mmap_regions = NULL; @@ -501,9 +510,11 @@ static int q6lsm_memory_map_regions(struct lsm_client *client, int rc; int cmd_size = 0; - pr_debug("%s: dma_addr_p 0x%x, dma_buf_sz %d, mmap_p 0x%p, session %d\n", - __func__, dma_addr_p, dma_buf_sz, mmap_p, client->session); - + pr_debug("%s: dma_addr_p 0x%pa, dma_buf_sz %d, mmap_p 0x%p, session %d\n", + __func__, &dma_addr_p, dma_buf_sz, mmap_p, + client->session); + if (CHECK_SESSION(client->session)) + return -EINVAL; cmd_size = sizeof(struct avs_cmd_shared_mem_map_regions) + sizeof(struct avs_shared_map_region_payload); @@ -523,8 +534,8 @@ static int q6lsm_memory_map_regions(struct lsm_client *client, sizeof(struct avs_cmd_shared_mem_map_regions)); mregions = (struct avs_shared_map_region_payload *)payload; - mregions->shm_addr_lsw = dma_addr_p; - mregions->shm_addr_msw = 0; + mregions->shm_addr_lsw = lower_32_bits(dma_addr_p); + mregions->shm_addr_msw = upper_32_bits(dma_addr_p); mregions->mem_size_bytes = dma_buf_sz; rc = q6lsm_apr_send_pkt(client, client->mmap_apr, mmap_region_cmd, @@ -544,7 +555,8 @@ static int q6lsm_memory_unmap_regions(struct lsm_client *client, struct avs_cmd_shared_mem_unmap_regions unmap; int rc = 0; int cmd_size = 0; - + if (CHECK_SESSION(client->session)) + return -EINVAL; cmd_size = sizeof(struct avs_cmd_shared_mem_unmap_regions); q6lsm_add_mmaphdr(client, &unmap.hdr, cmd_size, true, (client->session << 8)); @@ -568,107 +580,35 @@ static int q6lsm_send_cal(struct lsm_client *client) struct lsm_cmd_set_params params; struct acdb_cal_block lsm_cal; - pr_debug("%s: enter\n", __func__); - + pr_debug("%s: Session %d\n", __func__, client->session); + if (CHECK_SESSION(client->session)) + return -EINVAL; memset(&lsm_cal, 0, sizeof(lsm_cal)); get_lsm_cal(&lsm_cal); - if (!lsm_cal.cal_size) { - pr_err("%s: Could not get LSM calibration data\n", __func__); - rc = -EINVAL; - goto bail; - } - /* Cache mmap address, only map once or if new addr */ - if ((lsm_common.lsm_cal_addr != lsm_cal.cal_paddr) || - (lsm_cal.cal_size > lsm_common.lsm_cal_size)) { - if (lsm_common.lsm_cal_addr != 0) { - rc = q6lsm_memory_unmap_regions(client, - lsm_common.mmap_handle_for_cal); - if (rc) - pr_warn("%s: Unmapping %x failed, %d\n", - __func__, lsm_common.lsm_cal_addr, rc); - } - - rc = q6lsm_memory_map_regions(client, lsm_cal.cal_paddr, - LSM_CAL_SIZE, - &lsm_common.mmap_handle_for_cal); - if (rc < 0) { - pr_err("%s: Calibration data memory map failed, %d\n", - __func__, rc); - goto bail; - } - lsm_common.lsm_cal_addr = lsm_cal.cal_paddr; - lsm_common.lsm_cal_size = LSM_CAL_SIZE; - lsm_common.common_client.session = client->session; - } - + lsm_common.common_client[client->session].session = client->session; q6lsm_add_hdr(client, ¶ms.hdr, sizeof(params), true); params.hdr.opcode = LSM_SESSION_CMD_SET_PARAMS; - params.data_payload_addr_lsw = lsm_cal.cal_paddr; - params.data_payload_addr_msw = 0; - /* read updated mem_map_handle by q6lsm_mmapcallback */ - rmb(); - params.mem_map_handle = lsm_common.mmap_handle_for_cal; + params.data_payload_addr_lsw = lower_32_bits(client->lsm_cal_phy_addr); + params.data_payload_addr_msw = upper_32_bits(client->lsm_cal_phy_addr); + params.mem_map_handle = client->sound_model.mem_map_handle; params.data_payload_size = lsm_cal.cal_size; - + pr_debug("%s: Cal Size = %x", __func__, client->lsm_cal_size); rc = q6lsm_apr_send_pkt(client, client->apr, ¶ms, true, NULL); if (rc) pr_err("%s: Failed set_params opcode 0x%x, rc %d\n", __func__, params.hdr.opcode, rc); -bail: return rc; } -int q6lsm_unmap_cal_blocks(void) -{ - int result = 0; - int result2 = 0; - - if (lsm_common.mmap_handle_for_cal == 0) - goto done; - - if (lsm_common.common_client.mmap_apr == NULL) { - lsm_common.common_client.mmap_apr = q6lsm_mmap_apr_reg(); - if (lsm_common.common_client.mmap_apr == NULL) { - pr_err("%s: q6lsm_mmap_apr_reg failed\n", - __func__); - result = -EPERM; - goto done; - } - } - - result2 = q6lsm_memory_unmap_regions( - &lsm_common.common_client, - lsm_common.mmap_handle_for_cal); - if (result2 < 0) { - pr_err("%s: unmap failed, err %d\n", - __func__, result2); - result = result2; - } else { - lsm_common.mmap_handle_for_cal = 0; - } - - result2 = q6lsm_mmap_apr_dereg(); - if (result2 < 0) { - pr_err("%s: q6lsm_mmap_apr_dereg failed, err %d\n", - __func__, result2); - result = result2; - } else { - lsm_common.common_client.mmap_apr = NULL; - } - - lsm_common.lsm_cal_addr = 0; - lsm_common.lsm_cal_size = 0; - -done: - return result; -} - int q6lsm_snd_model_buf_free(struct lsm_client *client) { int rc; pr_debug("%s: Session id %d\n", __func__, client->session); + if (CHECK_SESSION(client->session)) + return -EINVAL; + mutex_lock(&client->cmd_lock); rc = q6lsm_memory_unmap_regions(client, client->sound_model.mem_map_handle); @@ -677,12 +617,16 @@ int q6lsm_snd_model_buf_free(struct lsm_client *client) if (client->sound_model.data) { ion_unmap_kernel(client->sound_model.client, - client->sound_model.handle); + client->sound_model.handle); ion_free(client->sound_model.client, - client->sound_model.handle); + client->sound_model.handle); ion_client_destroy(client->sound_model.client); + client->sound_model.client = NULL; + client->sound_model.handle = NULL; client->sound_model.data = NULL; client->sound_model.phys = 0; + client->lsm_cal_phy_addr = 0; + client->lsm_cal_size = 0; } mutex_unlock(&client->cmd_lock); return rc; @@ -694,7 +638,7 @@ static struct lsm_client *q6lsm_get_lsm_client(int session_id) struct lsm_client *client = NULL; if (session_id == LSM_CONTROL_SESSION) { - client = &lsm_common.common_client; + client = &lsm_common.common_client[session_id]; goto done; } @@ -723,19 +667,19 @@ static int q6lsm_mmapcallback(struct apr_client_data *data, void *priv) struct lsm_client *client = NULL; if (data->opcode == RESET_EVENTS) { - pr_debug("%s: SSR event received 0x%x, event 0x%x, proc 0x%x\n", - __func__, data->opcode, data->reset_event, - data->reset_proc); - lsm_common.lsm_cal_addr = 0; + sid = (data->token >> 8) & 0x0F; + pr_debug("%s: SSR event received 0x%x, event 0x%x,\n" + "proc 0x%x SID 0x%x\n", __func__, data->opcode, + data->reset_event, data->reset_proc, sid); + lsm_common.common_client[sid].lsm_cal_phy_addr = 0; return 0; } command = payload[0]; retcode = payload[1]; - pr_debug("%s: opcode 0x%x command 0x%x return code 0x%x\n", __func__, - data->opcode, command, retcode); - sid = (data->token >> 8) & 0x0F; + pr_debug("%s: opcode 0x%x command 0x%x return code 0x%x SID 0x%x\n", + __func__, data->opcode, command, retcode, sid); client = q6lsm_get_lsm_client(sid); if (!client) { pr_debug("%s: Session %d already freed\n", __func__, sid); @@ -773,15 +717,31 @@ static int q6lsm_mmapcallback(struct apr_client_data *data, void *priv) return 0; } -int q6lsm_snd_model_buf_alloc(struct lsm_client *client, uint32_t len) +int q6lsm_snd_model_buf_alloc(struct lsm_client *client, size_t len) { int rc = -EINVAL; + struct acdb_cal_block lsm_cal; + size_t pad_zero = 0, total_mem = 0; - if (!client) + if (!client || len <= LSM_ALIGN_BOUNDARY) return rc; - + memset(&lsm_cal, 0, sizeof(lsm_cal)); mutex_lock(&client->cmd_lock); + get_lsm_cal(&lsm_cal); + pr_debug("%s:Snd Model len = %d cal size %d", __func__, + len, lsm_cal.cal_size); + if (!lsm_cal.cal_paddr) { + pr_err("%s: No LSM calibration set for session", __func__); + mutex_unlock(&client->cmd_lock); + return -EINVAL; + } if (!client->sound_model.data) { + client->sound_model.size = len; + pad_zero = (LSM_ALIGN_BOUNDARY - + (len % LSM_ALIGN_BOUNDARY)); + total_mem = pad_zero + len + lsm_cal.cal_size; + pr_debug("%s: Pad zeros sound model %d Total mem %d\n", + __func__, pad_zero, total_mem); client->sound_model.client = msm_ion_client_create(UINT_MAX, "lsm_client"); if (IS_ERR_OR_NULL(client->sound_model.client)) { @@ -790,8 +750,8 @@ int q6lsm_snd_model_buf_alloc(struct lsm_client *client, uint32_t len) goto fail; } client->sound_model.handle = - ion_alloc(client->sound_model.client, - len, SZ_4K, (0x1 << ION_AUDIO_HEAP_ID), 0); + ion_alloc(client->sound_model.client, + total_mem, SZ_4K, (0x1 << ION_AUDIO_HEAP_ID), 0); if (IS_ERR_OR_NULL(client->sound_model.handle)) { pr_err("%s: ION memory allocation for AUDIO failed\n", __func__); @@ -816,7 +776,13 @@ int q6lsm_snd_model_buf_alloc(struct lsm_client *client, uint32_t len) goto fail; } memset(client->sound_model.data, 0, len); - client->sound_model.size = len; + client->lsm_cal_phy_addr = (pad_zero + + client->sound_model.phys + + client->sound_model.size); + client->lsm_cal_size = lsm_cal.cal_size; + memcpy((client->sound_model.data + pad_zero + + client->sound_model.size), + (uint32_t *)lsm_cal.cal_kvaddr, len); } else { rc = -EBUSY; goto fail; @@ -824,7 +790,7 @@ int q6lsm_snd_model_buf_alloc(struct lsm_client *client, uint32_t len) mutex_unlock(&client->cmd_lock); rc = q6lsm_memory_map_regions(client, client->sound_model.phys, - client->sound_model.size, + len, &client->sound_model.mem_map_handle); if (rc < 0) { pr_err("%s:CMD Memory_map_regions failed\n", __func__); @@ -881,16 +847,18 @@ int q6lsm_close(struct lsm_client *client) static int __init q6lsm_init(void) { + int i = 0; pr_debug("%s\n", __func__); spin_lock_init(&lsm_session_lock); spin_lock_init(&mmap_lock); mutex_init(&lsm_common.apr_lock); - - lsm_common.common_client.session = LSM_CONTROL_SESSION; - init_waitqueue_head(&lsm_common.common_client.cmd_wait); - mutex_init(&lsm_common.common_client.cmd_lock); - atomic_set(&lsm_common.common_client.cmd_state, CMD_STATE_CLEARED); - + for (; i <= LSM_MAX_SESSION_ID; i++) { + lsm_common.common_client[i].session = LSM_CONTROL_SESSION; + init_waitqueue_head(&lsm_common.common_client[i].cmd_wait); + mutex_init(&lsm_common.common_client[i].cmd_lock); + atomic_set(&lsm_common.common_client[i].cmd_state, + CMD_STATE_CLEARED); + } return 0; } diff --git a/sound/soc/msm/qdsp6v2/q6voice.c b/sound/soc/msm/qdsp6v2/q6voice.c index a9493fdac5dc..e514a931d4ad 100644 --- a/sound/soc/msm/qdsp6v2/q6voice.c +++ b/sound/soc/msm/qdsp6v2/q6voice.c @@ -29,7 +29,7 @@ #include "q6voice.h" -#define TIMEOUT_MS 300 +#define TIMEOUT_MS 500 #define CMD_STATUS_SUCCESS 0 @@ -161,6 +161,7 @@ static bool voice_is_valid_session_id(uint32_t session_id) case VOLTE_SESSION_VSID: case VOIP_SESSION_VSID: case QCHAT_SESSION_VSID: + case VOWLAN_SESSION_VSID: case ALL_SESSION_VSID: ret = true; break; @@ -254,6 +255,9 @@ char *voc_get_session_name(u32 session_id) } else if (session_id == common.voice[VOC_PATH_QCHAT_PASSIVE].session_id) { session_name = QCHAT_SESSION_NAME; + } else if (session_id == + common.voice[VOC_PATH_VOWLAN_PASSIVE].session_id) { + session_name = VOWLAN_SESSION_NAME; } else if (session_id == common.voice[VOC_PATH_FULL].session_id) { session_name = VOIP_SESSION_NAME; } @@ -276,6 +280,9 @@ uint32_t voc_get_session_id(char *name) else if (!strncmp(name, "QCHAT session", 13)) session_id = common.voice[VOC_PATH_QCHAT_PASSIVE].session_id; + else if (!strncmp(name, "VoWLAN session", 14)) + session_id = + common.voice[VOC_PATH_VOWLAN_PASSIVE].session_id; else session_id = common.voice[VOC_PATH_FULL].session_id; @@ -311,6 +318,10 @@ static struct voice_data *voice_get_session(u32 session_id) v = &common.voice[VOC_PATH_QCHAT_PASSIVE]; break; + case VOWLAN_SESSION_VSID: + v = &common.voice[VOC_PATH_VOWLAN_PASSIVE]; + break; + case ALL_SESSION_VSID: break; @@ -351,6 +362,10 @@ int voice_get_idx_for_session(u32 session_id) idx = VOC_PATH_QCHAT_PASSIVE; break; + case VOWLAN_SESSION_VSID: + idx = VOC_PATH_VOWLAN_PASSIVE; + break; + case ALL_SESSION_VSID: idx = MAX_VOC_SESSIONS - 1; break; @@ -395,6 +410,11 @@ static bool is_qchat_session(u32 session_id) return (session_id == common.voice[VOC_PATH_QCHAT_PASSIVE].session_id); } +static bool is_vowlan_session(u32 session_id) +{ + return (session_id == common.voice[VOC_PATH_VOWLAN_PASSIVE].session_id); +} + static bool is_voc_state_active(int voc_state) { if ((voc_state == VOC_RUN) || @@ -453,6 +473,7 @@ static void init_session_id(void) common.voice[VOC_PATH_VOICE2_PASSIVE].session_id = VOICE2_SESSION_VSID; common.voice[VOC_PATH_FULL].session_id = VOIP_SESSION_VSID; common.voice[VOC_PATH_QCHAT_PASSIVE].session_id = QCHAT_SESSION_VSID; + common.voice[VOC_PATH_VOWLAN_PASSIVE].session_id = VOWLAN_SESSION_VSID; } static int voice_apr_register(void) @@ -657,6 +678,8 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) /* send cmd to create mvm session and wait for response */ if (!mvm_handle) { + memset(mvm_session_cmd.mvm_session.name, 0, + sizeof(mvm_session_cmd.mvm_session.name)); if (!is_voip_session(v->session_id)) { mvm_session_cmd.hdr.hdr_field = APR_HDR_FIELD( APR_MSG_TYPE_SEQ_CMD, @@ -677,19 +700,23 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) if (is_volte_session(v->session_id)) { strlcpy(mvm_session_cmd.mvm_session.name, "default volte voice", - sizeof(mvm_session_cmd.mvm_session.name)); + strlen("default volte voice")+1); } else if (is_voice2_session(v->session_id)) { strlcpy(mvm_session_cmd.mvm_session.name, VOICE2_SESSION_VSID_STR, - sizeof(mvm_session_cmd.mvm_session.name)); + strlen(VOICE2_SESSION_VSID_STR)+1); } else if (is_qchat_session(v->session_id)) { strlcpy(mvm_session_cmd.mvm_session.name, QCHAT_SESSION_VSID_STR, - sizeof(mvm_session_cmd.mvm_session.name)); + strlen(QCHAT_SESSION_VSID_STR)+1); + } else if (is_vowlan_session(v->session_id)) { + strlcpy(mvm_session_cmd.mvm_session.name, + VOWLAN_SESSION_VSID_STR, + strlen(VOWLAN_SESSION_VSID_STR)+1); } else { strlcpy(mvm_session_cmd.mvm_session.name, "default modem voice", - sizeof(mvm_session_cmd.mvm_session.name)); + strlen("default modem voice")+1); } v->mvm_state = CMD_STATUS_FAIL; @@ -725,7 +752,7 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) VSS_IMVM_CMD_CREATE_FULL_CONTROL_SESSION; strlcpy(mvm_session_cmd.mvm_session.name, "default voip", - sizeof(mvm_session_cmd.mvm_session.name)); + strlen("default voip")+1); v->mvm_state = CMD_STATUS_FAIL; @@ -748,6 +775,8 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) } /* send cmd to create cvs session */ if (!cvs_handle) { + memset(cvs_session_cmd.cvs_session.name, 0, + sizeof(cvs_session_cmd.cvs_session.name)); if (!is_voip_session(v->session_id)) { pr_debug("%s: creating CVS passive session\n", __func__); @@ -769,19 +798,23 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) if (is_volte_session(v->session_id)) { strlcpy(cvs_session_cmd.cvs_session.name, "default volte voice", - sizeof(cvs_session_cmd.cvs_session.name)); + strlen("default volte voice")+1); } else if (is_voice2_session(v->session_id)) { strlcpy(cvs_session_cmd.cvs_session.name, VOICE2_SESSION_VSID_STR, - sizeof(cvs_session_cmd.cvs_session.name)); + strlen(VOICE2_SESSION_VSID_STR)+1); } else if (is_qchat_session(v->session_id)) { strlcpy(cvs_session_cmd.cvs_session.name, QCHAT_SESSION_VSID_STR, - sizeof(cvs_session_cmd.cvs_session.name)); + strlen(QCHAT_SESSION_VSID_STR)+1); + } else if (is_vowlan_session(v->session_id)) { + strlcpy(cvs_session_cmd.cvs_session.name, + VOWLAN_SESSION_VSID_STR, + strlen(VOWLAN_SESSION_VSID_STR)+1); } else { strlcpy(cvs_session_cmd.cvs_session.name, "default modem voice", - sizeof(cvs_session_cmd.cvs_session.name)); + strlen("default modem voice")+1); } v->cvs_state = CMD_STATUS_FAIL; @@ -829,7 +862,7 @@ static int voice_create_mvm_cvs_session(struct voice_data *v) common.mvs_info.network_type; strlcpy(cvs_full_ctl_cmd.cvs_session.name, "default q6 voice", - sizeof(cvs_full_ctl_cmd.cvs_session.name)); + strlen("default q6 voice")+1); v->cvs_state = CMD_STATUS_FAIL; @@ -5186,10 +5219,12 @@ int voc_set_ext_ec_ref(uint16_t port_id, bool state) void voc_register_mvs_cb(ul_cb_fn ul_cb, dl_cb_fn dl_cb, + voip_ssr_cb ssr_cb, void *private_data) { common.mvs_info.ul_cb = ul_cb; common.mvs_info.dl_cb = dl_cb; + common.mvs_info.ssr_cb = ssr_cb; common.mvs_info.private_data = private_data; } @@ -5359,6 +5394,14 @@ static int32_t qdsp_mvm_callback(struct apr_client_data *data, void *priv) } else { pr_debug("%s: Reset event received in Voice service\n", __func__); + + if (common.mvs_info.ssr_cb) { + pr_debug("%s: Informing reset event to VoIP\n", + __func__); + common.mvs_info.ssr_cb(data->opcode, + common.mvs_info.private_data); + } + apr_reset(c->apr_q6_mvm); c->apr_q6_mvm = NULL; diff --git a/sound/soc/msm/qdsp6v2/q6voice.h b/sound/soc/msm/qdsp6v2/q6voice.h index 403d5c844dc1..5c1b172700a1 100644 --- a/sound/soc/msm/qdsp6v2/q6voice.h +++ b/sound/soc/msm/qdsp6v2/q6voice.h @@ -1292,6 +1292,9 @@ typedef void (*dtmf_rx_det_cb_fn)(uint8_t *pkt, char *session, void *private_data); +typedef void (*voip_ssr_cb) (uint32_t opcode, + void *private_data); + struct mvs_driver_info { uint32_t media_type; uint32_t rate; @@ -1299,6 +1302,7 @@ struct mvs_driver_info { uint32_t dtx_mode; ul_cb_fn ul_cb; dl_cb_fn dl_cb; + voip_ssr_cb ssr_cb; void *private_data; uint32_t evrc_min_rate; uint32_t evrc_max_rate; @@ -1388,7 +1392,7 @@ struct cal_mem { void *buf; }; -#define MAX_VOC_SESSIONS 5 +#define MAX_VOC_SESSIONS 6 struct common_data { /* these default values are for all devices */ @@ -1434,6 +1438,7 @@ struct voice_session_itr { void voc_register_mvs_cb(ul_cb_fn ul_cb, dl_cb_fn dl_cb, + voip_ssr_cb ssr_cb, void *private_data); void voc_register_dtmf_rx_detection_cb(dtmf_rx_det_cb_fn dtmf_rx_ul_cb, @@ -1462,21 +1467,25 @@ enum { #define VOC_PATH_VOLTE_PASSIVE 2 #define VOC_PATH_VOICE2_PASSIVE 3 #define VOC_PATH_QCHAT_PASSIVE 4 +#define VOC_PATH_VOWLAN_PASSIVE 5 #define MAX_SESSION_NAME_LEN 32 -#define VOICE_SESSION_NAME "Voice session" -#define VOIP_SESSION_NAME "VoIP session" -#define VOLTE_SESSION_NAME "VoLTE session" -#define VOICE2_SESSION_NAME "Voice2 session" -#define QCHAT_SESSION_NAME "QCHAT session" +#define VOICE_SESSION_NAME "Voice session" +#define VOIP_SESSION_NAME "VoIP session" +#define VOLTE_SESSION_NAME "VoLTE session" +#define VOICE2_SESSION_NAME "Voice2 session" +#define QCHAT_SESSION_NAME "QCHAT session" +#define VOWLAN_SESSION_NAME "VoWLAN session" #define VOICE2_SESSION_VSID_STR "10DC1000" #define QCHAT_SESSION_VSID_STR "10803000" +#define VOWLAN_SESSION_VSID_STR "10002000" #define VOICE_SESSION_VSID 0x10C01000 #define VOICE2_SESSION_VSID 0x10DC1000 #define VOLTE_SESSION_VSID 0x10C02000 #define VOIP_SESSION_VSID 0x10004000 #define QCHAT_SESSION_VSID 0x10803000 +#define VOWLAN_SESSION_VSID 0x10002000 #define ALL_SESSION_VSID 0xFFFFFFFF #define VSID_MAX ALL_SESSION_VSID diff --git a/sound/soc/msm/qdsp6v2/rtac.c b/sound/soc/msm/qdsp6v2/rtac.c index 8d2e1d414683..f380fd3e6bd9 100644 --- a/sound/soc/msm/qdsp6v2/rtac.c +++ b/sound/soc/msm/qdsp6v2/rtac.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2014, 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 @@ -24,6 +24,7 @@ #include #include #include +#include #include #include "q6voice.h" #include "audio_acdb.h" @@ -822,6 +823,7 @@ u32 send_adm_apr(void *buf, u32 opcode) u32 bytes_returned = 0; u32 port_index = 0; u32 copp_id; + int port_id; u32 payload_size; u32 data_size = 0; struct apr_hdr adm_params; @@ -880,6 +882,13 @@ u32 send_adm_apr(void *buf, u32 opcode) __func__, copp_id); goto done; } + port_id = q6audio_get_port_id_from_index(port_index); + + if (port_id < 0) { + pr_err("%s: Could not find port id mapped for port_idx %d\n", + __func__, port_index); + goto done; + } mutex_lock(&rtac_adm_apr_mutex); if (rtac_adm_apr_data.apr_handle == NULL) { @@ -936,7 +945,7 @@ u32 send_adm_apr(void *buf, u32 opcode) adm_params.dest_svc = APR_SVC_ADM; adm_params.dest_domain = APR_DOMAIN_ADSP; adm_params.dest_port = copp_id; - adm_params.token = copp_id; + adm_params.token = port_id; adm_params.opcode = opcode; /* fill for out-of-band */